diff --git a/SSL/src/BusinessProcesses/Задание/Forms/ДействиеВыполнить/Form.form b/SSL/src/BusinessProcesses/Задание/Forms/ДействиеВыполнить/Form.form index 6d0b70908..c6dfba71d 100644 --- a/SSL/src/BusinessProcesses/Задание/Forms/ДействиеВыполнить/Form.form +++ b/SSL/src/BusinessProcesses/Задание/Forms/ДействиеВыполнить/Form.form @@ -1,58 +1,114 @@ - ГруппаСостояние - 131 - true - true - - true - - true - false - - ГруппаСостояниеExtendedTooltip - 172 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - - - Шапка - 154 + Документ + 207 - ГруппыШапки - 165 + Шапка + 154 - ГруппаАвторИсполнитель - 160 - - Автор - 161 + ГруппыШапки + 165 + + ГруппаАвторИсполнитель + 160 + + Автор + 161 + true + true + + true + + + Объект.Автор + + + АвторExtendedTooltip + 176 + Label + true + true + + Left + + + + АвторКонтекстноеМеню + 162 + true + + InputField + true + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + Исполнитель + 163 + true + true + + true + + + Исполнитель + + + ru + Исполнитель + + + ИсполнительExtendedTooltip + 177 + Label + true + true + + Left + + + + ИсполнительКонтекстноеМеню + 164 + true + + InputField + true + Enter + true + Left + true + Left + + true + true + true + true + true + true + Normal + + true true true - - Объект.Автор - - АвторExtendedTooltip - 176 + ГруппаАвторИсполнительExtendedTooltip + 175 Label true true @@ -60,46 +116,118 @@ Left - - АвторКонтекстноеМеню - 162 - true - - InputField - true - Enter - true - Left - true - - 35 - true - true - true - true - true - true - Normal + UsualGroup + + Vertical + Auto + true + true + Auto + Auto - - Исполнитель - 163 + + ГруппаДатаИСрок + 109 + + Дата + 152 + true + true + + true + + + Объект.Date + + + ДатаExtendedTooltip + 179 + Label + true + true + + Left + + + + ДатаКонтекстноеМеню + 153 + true + + InputField + true + Enter + true + Left + true + + true + true + false + true + true + true + true + Normal + + + + СрокИсполнения + 12 + true + true + + true + + + Объект.СрокИсполнения + + + ru + Срок исполнения + + + СрокИсполненияExtendedTooltip + 180 + Label + true + true + + Left + + + + СрокИсполненияКонтекстноеМеню + 13 + true + + InputField + true + Enter + true + Left + true + Left + + true + true + false + true + true + true + true + Normal + + true true true - - Исполнитель - - - ru - Исполнитель - - ИсполнительExtendedTooltip - 177 + ГруппаДатаИСрокExtendedTooltip + 178 Label true true @@ -107,27 +235,135 @@ Left - - ИсполнительКонтекстноеМеню - 164 - true - - InputField - true - Enter - true - Left - true - Left - - 35 + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаНомерИВажность + 28 + + Номер + 149 + true + true + + true + + + Объект.Number + + + НомерExtendedTooltip + 182 + Label + true + true + + Left + + + + НомерКонтекстноеМеню + 150 + true + + InputField + Enter + true + Left + true + + 14 + true + true + false + true + true + true + true + Normal + + + + Важность + 16 + true + true + + true + + + Объект.Важность + + + ВажностьExtendedTooltip + 183 + Label + true + true + + Left + + + + ВажностьКонтекстноеМеню + 17 + true + + InputField + Enter + true + Left + true + Left + + 14 + true + true + false + true + true + true + Normal + + + true + true + + true + + + System.DefaultGUIFont + true + false + false + false + + + ГруппаНомерИВажностьExtendedTooltip + 181 + Label true true - true - true - true - true - Normal + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto true @@ -135,13 +371,9 @@ true - - <key>ru</key> - <value>Автор и исполнитель</value> - - ГруппаАвторИсполнительExtendedTooltip - 175 + ГруппыШапкиExtendedTooltip + 174 Label true true @@ -151,7 +383,6 @@ UsualGroup - Vertical Auto true true @@ -160,69 +391,30 @@ - ГруппаДатаИСрок - 109 + ГруппаПриоритет + 155 - Дата - 152 + СрокНачалаИсполнения + 119 true true true - Объект.Date - - - ДатаExtendedTooltip - 179 - Label - true - true - - Left - - - - ДатаКонтекстноеМеню - 153 - true - - InputField - true - Enter - true - Left - true - - true - true - false - true - true - true - true - Normal - - - - СрокИсполнения - 12 - true - true - - true - - - Объект.СрокИсполнения + Объект.ДатаНачала ru - Срок исполнения + Срок начала исполнения + + OnChange + СрокНачалаИсполненияПриИзменении + - СрокИсполненияExtendedTooltip - 180 + СрокНачалаИсполненияExtendedTooltip + 185 Label true true @@ -231,84 +423,8 @@ - СрокИсполненияКонтекстноеМеню - 13 - true - - InputField - true - Enter - true - Left - true - Left - - true - true - false - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Дата и срок</value> - - - ГруппаДатаИСрокExtendedTooltip - 178 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаНомерИВажность - 28 - - Номер - 149 - true - true - - true - - - Объект.Number - - - НомерExtendedTooltip - 182 - Label - true - true - - Left - - - - НомерКонтекстноеМеню - 150 + СрокНачалаИсполненияКонтекстноеМеню + 120 true InputField @@ -316,54 +432,65 @@ true Left true - - true - true - false - true - true - true - true - Normal - - - - Важность - 16 - true - true - - true - - - Объект.Важность - - - ВажностьExtendedTooltip - 183 - Label - true - true - - Left - - - - ВажностьКонтекстноеМеню - 17 - true - - InputField - Enter - true - Left - true - Left 10 true true - false + + ru + ДЛФ=D + + true + true + true + Normal + + + + СрокНачалаИсполненияВремя + 135 + true + true + + true + + + Объект.ДатаНачала + + None + + ru + Срок начала исполнения + + + СрокНачалаИсполненияВремяExtendedTooltip + 186 + Label + true + true + + Left + + + + СрокНачалаИсполненияВремяКонтекстноеМеню + 136 + true + + InputField + Enter + true + Left + true + + 8 + true + true + false + + ru + ДЛФ=T + true true true @@ -375,21 +502,9 @@ true - - <key>ru</key> - <value>Номер и важность</value> - - - System.DefaultGUIFont - true - false - false - false - - true - ГруппаНомерИВажностьExtendedTooltip - 181 + ГруппаПриоритетExtendedTooltip + 184 Label true true @@ -399,7 +514,6 @@ UsualGroup - Vertical Auto true true @@ -414,11 +528,11 @@ <key>ru</key> - <value>Группы шапки</value> + <value>Шапка</value> - ГруппыШапкиExtendedTooltip - 174 + ШапкаExtendedTooltip + 173 Label true true @@ -428,7 +542,9 @@ UsualGroup + Vertical Auto + NormalSeparation true true Auto @@ -436,189 +552,164 @@ - ГруппаПриоритет - 155 - - СрокНачалаИсполнения - 119 - true - true - - true - - - Объект.ДатаНачала - - - ru - Срок начала исполнения - - - OnChange - СрокНачалаИсполненияПриИзменении - - - СрокНачалаИсполненияExtendedTooltip - 185 - Label - true - true - - Left - - - - СрокНачалаИсполненияКонтекстноеМеню - 120 - true - - InputField - Enter - true - Left - true - - 10 - true - true - - ru - ДЛФ=D - - true - true - true - Normal - - - - СрокНачалаИсполненияВремя - 135 - true - true - - true - - - Объект.ДатаНачала - - None - - ru - Срок начала исполнения - - - СрокНачалаИсполненияВремяExtendedTooltip - 186 - Label - true - true - - Left - - - - СрокНачалаИсполненияВремяКонтекстноеМеню - 136 - true - - InputField - Enter - true - Left - true - - 8 - true - true - false - - ru - ДЛФ=T - - true - true - true - Normal - - - true - true - - true - - - ГруппаПриоритетExtendedTooltip - 184 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Шапка</value> - - - ШапкаExtendedTooltip - 173 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - - - - Страницы - 201 - - Главное - 203 + Страницы + 201 - ГруппаСодержание - 94 - - Наименование - 156 + Главное + 203 + + ГруппаСодержание + 94 + + Наименование + 156 + true + true + + true + + + Объект.Description + + + НаименованиеExtendedTooltip + 188 + Label + true + true + + Left + + + + НаименованиеКонтекстноеМеню + 157 + true + + InputField + true + Enter + true + Left + true + + true + true + true + true + true + Normal + + + + Предмет + 129 + true + true + + true + + + ПредметСтрокой + + + ПредметExtendedTooltip + 189 + Label + true + true + + Left + + + + ПредметКонтекстноеМеню + 130 + true + + LabelField + Enter + true + Left + true + + + Click + ПредметНажатие + + 60 + true + true + true + + + + Содержание + 18 + true + true + + true + + + ЗаданиеСодержание + + None + + СодержаниеExtendedTooltip + 190 + Label + true + true + + Left + + + + СодержаниеКонтекстноеМеню + 19 + true + + InputField + true + Enter + true + Left + true + Left + + true + true + true + true + true + true + true + + Style.BorderColor + + Normal + + true true true - - Объект.Description - + + <key>ru</key> + <value>Содержание</value> + + + System.DefaultGUIFont + true + false + false + false + - НаименованиеExtendedTooltip - 188 + ГруппаСодержаниеExtendedTooltip + 187 Label true true @@ -626,83 +717,65 @@ Left - - НаименованиеКонтекстноеМеню - 157 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - Normal + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + Auto + Auto + true + true + + true + + + <key>ru</key> + <value>Главное</value> + + + ГлавноеРасширеннаяПодсказка + 204 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + ИсторияВыполнения + 205 - Предмет - 129 + РезультатВыполнения + 126 + + <key>ru</key> + <value>История выполнения</value> + true true true - ПредметСтрокой - - - ПредметExtendedTooltip - 189 - Label - true - true - - Left - - - - ПредметКонтекстноеМеню - 130 - true - - LabelField - Enter - true - Left - true - - - Click - ПредметНажатие - - true - true - true - - - - Содержание - 18 - true - true - - true - - - ЗаданиеСодержание + ЗаданиеРезультатВыполнения None - СодержаниеExtendedTooltip - 190 + РезультатВыполненияExtendedTooltip + 191 Label true true @@ -711,8 +784,8 @@ - СодержаниеКонтекстноеМеню - 19 + РезультатВыполненияКонтекстноеМеню + 127 true InputField @@ -721,10 +794,7 @@ true Left true - Left - true - 5 true true true @@ -732,9 +802,6 @@ true true true - - Style.BorderColor - Normal @@ -745,18 +812,332 @@ <key>ru</key> - <value>Содержание</value> + <value>История выполнения</value> - - System.DefaultGUIFont - true - false - false - false - - ГруппаСодержаниеExtendedTooltip - 187 + ИсторияВыполненияРасширеннаяПодсказка + 206 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Страницы</value> + + + СтраницыРасширеннаяПодсказка + 202 + Label + true + true + + Left + + + Pages + + TabsOnTop + Auto + + + + ГруппаСостояние + 131 + true + true + + true + + true + + ГруппаСостояниеExtendedTooltip + 172 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + + + ГруппаРезультат + 27 + + ОписаниеРезультата + 78 + true + true + + true + + + Объект.РезультатВыполнения + + true + None + + ru + Описание результата выполнения + + + ОписаниеРезультатаExtendedTooltip + 193 + Label + true + true + + Left + + + + ОписаниеРезультатаКонтекстноеМеню + 79 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + + ГруппаВыполненоДата + 54 + + Выполнено + 123 + true + true + + true + + false + + ВыполненоExtendedTooltip + 195 + Label + true + true + + Left + + + UsualButton + Form.Command.Выполнено + Normal + PictureAndText + true + 1 + true + UserCmds + Auto + + + Отклонено + 137 + true + true + + true + + false + + ОтклоненоExtendedTooltip + 196 + Label + true + true + + Left + + + UsualButton + Form.Command.Отменено + Normal + PictureAndText + true + 1 + true + UserCmds + + StdPicture.Stop + + Auto + + + ДатаИсполнения + 55 + + <key>ru</key> + <value>Дата</value> + + true + true + + true + + + Объект.ДатаИсполнения + + + OnChange + ДатаИсполненияПриИзменении + + + ДатаИсполненияExtendedTooltip + 197 + Label + true + true + + Left + + + + ДатаИсполненияКонтекстноеМеню + 56 + true + + InputField + Enter + true + Left + true + + 10 + true + true + false + + ru + ДЛФ=D + + true + true + true + Normal + + + + ДатаИсполненияВремя + 146 + true + true + + true + + + Объект.ДатаИсполнения + + None + + ru + Срок начала исполнения + + + ДатаИсполненияВремяExtendedTooltip + 198 + Label + true + true + + Left + + + + ДатаИсполненияВремяКонтекстноеМеню + 147 + true + + InputField + Enter + true + Left + true + + 8 + true + true + false + + ru + ДЛФ=T + + true + true + true + Normal + + + + ИзменитьЗадание + 199 + true + true + + true + + + ИзменитьЗаданиеРасширеннаяПодсказка + 200 + Label + true + true + + Left + + + Hyperlink + Form.Command.ИзменитьЗадание + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + ГруппаВыполненоДатаExtendedTooltip + 194 Label true true @@ -766,9 +1147,7 @@ UsualGroup - Vertical Auto - NormalSeparation true true Auto @@ -782,384 +1161,11 @@ <key>ru</key> - <value>Главное</value> + <value>Результат выполнения задания:</value> - ГлавноеРасширеннаяПодсказка - 204 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - ИсторияВыполнения - 205 - - РезультатВыполнения - 126 - - <key>ru</key> - <value>История выполнения</value> - - true - true - - true - - - ЗаданиеРезультатВыполнения - - None - - РезультатВыполненияExtendedTooltip - 191 - Label - true - true - - Left - - - - РезультатВыполненияКонтекстноеМеню - 127 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>История выполнения</value> - - - ИсторияВыполненияРасширеннаяПодсказка - 206 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Страницы</value> - - - СтраницыРасширеннаяПодсказка - 202 - Label - true - true - - Left - - - Pages - - TabsOnTop - Auto - - - - ГруппаРезультат - 27 - - ОписаниеРезультата - 78 - true - true - - true - - - Объект.РезультатВыполнения - - true - None - - ru - Описание результата выполнения - - - ОписаниеРезультатаExtendedTooltip - 193 - Label - true - true - - Left - - - - ОписаниеРезультатаКонтекстноеМеню - 79 - true - - InputField - Enter - true - Left - true - - true - 2 - true - false - true - true - true - true - Normal - - - - ГруппаВыполненоДата - 54 - - Выполнено - 123 - true - true - - true - - false - - ВыполненоExtendedTooltip - 195 - Label - true - true - - Left - - - UsualButton - Form.Command.Выполнено - Normal - PictureAndText - true - 1 - true - UserCmds - Auto - - - Отклонено - 137 - true - true - - true - - false - - ОтклоненоExtendedTooltip - 196 - Label - true - true - - Left - - - UsualButton - Form.Command.Отменено - Normal - PictureAndText - true - 1 - true - UserCmds - - StdPicture.Stop - - Auto - - - ДатаИсполнения - 55 - - <key>ru</key> - <value>Дата</value> - - true - true - - true - - - Объект.ДатаИсполнения - - - OnChange - ДатаИсполненияПриИзменении - - - ДатаИсполненияExtendedTooltip - 197 - Label - true - true - - Left - - - - ДатаИсполненияКонтекстноеМеню - 56 - true - - InputField - Enter - true - Left - true - - 10 - true - true - false - - ru - ДЛФ=D - - true - true - true - Normal - - - - ДатаИсполненияВремя - 146 - true - true - - true - - - Объект.ДатаИсполнения - - None - - ru - Срок начала исполнения - - - ДатаИсполненияВремяExtendedTooltip - 198 - Label - true - true - - Left - - - - ДатаИсполненияВремяКонтекстноеМеню - 147 - true - - InputField - Enter - true - Left - true - - 8 - true - true - false - - ru - ДЛФ=T - - true - true - true - Normal - - - - ИзменитьЗадание - 199 - true - true - - true - - - ИзменитьЗаданиеРасширеннаяПодсказка - 200 - Label - true - true - - Left - - - Hyperlink - Form.Command.ИзменитьЗадание - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - ГруппаВыполненоДатаExtendedTooltip - 194 + ГруппаРезультатExtendedTooltip + 192 Label true true @@ -1169,9 +1175,11 @@ UsualGroup + Vertical Auto true true + auto Auto Auto @@ -1183,11 +1191,16 @@ <key>ru</key> - <value>Результат выполнения задания:</value> + <value>Документ</value> + + ru + Документ + + false - ГруппаРезультатExtendedTooltip - 192 + ДокументРасширеннаяПодсказка + 208 Label true true @@ -1201,7 +1214,6 @@ Auto true true - auto Auto Auto @@ -1579,7 +1591,6 @@ ВыполненоВыполнить - true DontUse Auto @@ -1602,7 +1613,6 @@ Отменено - true DontUse Auto diff --git a/SSL/src/BusinessProcesses/Задание/Forms/ДействиеВыполнить/Module.bsl b/SSL/src/BusinessProcesses/Задание/Forms/ДействиеВыполнить/Module.bsl index cc4a05ac6..5095baf93 100644 --- a/SSL/src/BusinessProcesses/Задание/Forms/ДействиеВыполнить/Module.bsl +++ b/SSL/src/BusinessProcesses/Задание/Forms/ДействиеВыполнить/Module.bsl @@ -160,22 +160,30 @@ Процедура ИнициализацияФормы() НачальныйПризнакВыполнения = Объект.Выполнена; - ПрочитатьРеквизитыБизнесПроцесса(); + ПрочитатьРеквизитыБизнесПроцесса(); УстановитьСостояниеЭлементов(); - + ИспользоватьДатуИВремяВСрокахЗадач = ПолучитьФункциональнуюОпцию("ИспользоватьДатуИВремяВСрокахЗадач"); Элементы.СрокНачалаИсполненияВремя.Видимость = ИспользоватьДатуИВремяВСрокахЗадач; Элементы.ДатаИсполненияВремя.Видимость = ИспользоватьДатуИВремяВСрокахЗадач; БизнесПроцессыИЗадачиСервер.УстановитьФорматДаты(Элементы.СрокИсполнения); БизнесПроцессыИЗадачиСервер.УстановитьФорматДаты(Элементы.Дата); - БизнесПроцессыИЗадачиСервер.ФормаЗадачиПриСозданииНаСервере(ЭтотОбъект, Объект, + БизнесПроцессыИЗадачиСервер.ФормаЗадачиПриСозданииНаСервере(ЭтотОбъект, Объект, Элементы.ГруппаСостояние, Элементы.ДатаИсполнения); Элементы.ОписаниеРезультата.ТолькоПросмотр = Объект.Выполнена; Элементы.ИзменитьЗадание.Видимость = (Объект.Автор = Пользователи.ТекущийПользователь()); Исполнитель = ?(ЗначениеЗаполнено(Объект.Исполнитель), Объект.Исполнитель, Объект.РольИсполнителя); + Если ПравоДоступа("Изменение", Метаданные.БизнесПроцессы.Задание) Тогда + Элементы.Выполнено.Доступность = Истина; + Элементы.Отклонено.Доступность = Истина; + Иначе + Элементы.Выполнено.Доступность = Ложь; + Элементы.Отклонено.Доступность = Ложь; + КонецЕсли; + КонецПроцедуры &НаСервере diff --git a/SSL/src/BusinessProcesses/Задание/Forms/ДействиеПроверить/Form.form b/SSL/src/BusinessProcesses/Задание/Forms/ДействиеПроверить/Form.form index aef3c6034..1112b202d 100644 --- a/SSL/src/BusinessProcesses/Задание/Forms/ДействиеПроверить/Form.form +++ b/SSL/src/BusinessProcesses/Задание/Forms/ДействиеПроверить/Form.form @@ -1,58 +1,148 @@ - ГруппаСостояние - 134 - true - true - - true - - true - false - - ГруппаСостояниеExtendedTooltip - 193 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - - - Шапка - 165 + Документ + 234 - ГруппыШапки - 166 + ГруппаСостояние + 134 + true + true + + true + + + ГруппаСостояниеExtendedTooltip + 193 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + + + Шапка + 165 - ГруппаАвторИсполнитель - 167 - - Автор - 168 + ГруппыШапки + 166 + + ГруппаАвторИсполнитель + 167 + + Автор + 168 + true + true + + true + + + Объект.Автор + + + АвторExtendedTooltip + 197 + Label + true + true + + Left + + + + АвторКонтекстноеМеню + 169 + true + + InputField + true + Enter + true + Left + true + + 35 + true + true + true + true + true + true + Normal + + + + Исполнитель + 170 + + <key>ru</key> + <value>Проверяющий</value> + + true + true + + true + + + Исполнитель + + + ru + Исполнитель + + + ИсполнительExtendedTooltip + 198 + Label + true + true + + Left + + + + ИсполнительКонтекстноеМеню + 171 + true + + InputField + true + Enter + true + Left + true + Left + + 35 + true + true + true + true + true + true + Normal + + true true true - - Объект.Автор - - АвторExtendedTooltip - 197 + ГруппаАвторИсполнительExtendedTooltip + 196 Label true true @@ -60,50 +150,118 @@ Left - - АвторКонтекстноеМеню - 169 - true - - InputField - true - Enter - true - Left - true - - 35 - true - true - true - true - true - true - Normal + UsualGroup + + Vertical + Auto + true + true + Auto + Auto - - Исполнитель - 170 - - <key>ru</key> - <value>Проверяющий</value> - + + ГруппаДатаИСрок + 172 + + Дата + 173 + true + true + + true + + + Объект.Date + + + ДатаExtendedTooltip + 200 + Label + true + true + + Left + + + + ДатаКонтекстноеМеню + 174 + true + + InputField + true + Enter + true + Left + true + + true + true + false + true + true + true + true + Normal + + + + СрокИсполнения + 175 + true + true + + true + + + Объект.СрокИсполнения + + + ru + Срок исполнения + + + СрокИсполненияExtendedTooltip + 201 + Label + true + true + + Left + + + + СрокИсполненияКонтекстноеМеню + 176 + true + + InputField + true + Enter + true + Left + true + Left + + true + true + false + true + true + true + true + Normal + + true true true - - Исполнитель - - - ru - Исполнитель - - ИсполнительExtendedTooltip - 198 + ГруппаДатаИСрокExtendedTooltip + 199 Label true true @@ -111,27 +269,134 @@ Left - - ИсполнительКонтекстноеМеню - 171 - true - - InputField - true - Enter - true - Left - true - Left - - 35 + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаНомерИВажность + 177 + + Номер + 178 + true + true + + true + + + Объект.Number + + + НомерExtendedTooltip + 203 + Label + true + true + + Left + + + + НомерКонтекстноеМеню + 179 + true + + InputField + Enter + true + Left + true + + true + true + false + true + true + true + true + Normal + + + + Важность + 180 + true + true + + true + + + Объект.Важность + + + ВажностьExtendedTooltip + 204 + Label + true + true + + Left + + + + ВажностьКонтекстноеМеню + 181 + true + + InputField + Enter + true + Left + true + Left + + 14 + true + true + false + true + true + true + Normal + + + true + true + + true + + + System.DefaultGUIFont + true + false + false + false + + + ГруппаНомерИВажностьExtendedTooltip + 202 + Label true true - true - true - true - true - Normal + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto true @@ -139,13 +404,9 @@ true - - <key>ru</key> - <value>Автор и исполнитель</value> - - ГруппаАвторИсполнительExtendedTooltip - 196 + ГруппыШапкиExtendedTooltip + 195 Label true true @@ -155,7 +416,6 @@ UsualGroup - Vertical Auto true true @@ -164,69 +424,80 @@ - ГруппаДатаИСрок - 172 + ГруппаПриоритет + 182 - Дата - 173 + СрокНачалаИсполнения + 183 true true true - Объект.Date - - - ДатаExtendedTooltip - 200 - Label - true - true - - Left - - - - ДатаКонтекстноеМеню - 174 - true - - InputField - true - Enter - true - Left - true - - true - true - false - true - true - true - true - Normal - - - - СрокИсполнения - 175 - true - true - - true - - - Объект.СрокИсполнения + Объект.ДатаНачала ru - Срок исполнения + Срок начала исполнения + + + OnChange + СрокНачалаИсполненияПриИзменении + + + СрокНачалаИсполненияExtendedTooltip + 206 + Label + true + true + + Left + + + + СрокНачалаИсполненияКонтекстноеМеню + 184 + true + + InputField + Enter + true + Left + true + + 8 + true + true + + ru + ДЛФ=D + + true + true + true + Normal + + + + СрокНачалаИсполненияВремя + 185 + true + true + + true + + + Объект.ДатаНачала + + None + + ru + Срок начала исполнения - СрокИсполненияExtendedTooltip - 201 + СрокНачалаИсполненияВремяExtendedTooltip + 207 Label true true @@ -235,22 +506,24 @@ - СрокИсполненияКонтекстноеМеню - 176 + СрокНачалаИсполненияВремяКонтекстноеМеню + 186 true InputField - true Enter true Left true - Left + 4 true true - false - true + false + + ru + ДЛФ=T + true true true @@ -262,13 +535,9 @@ true - - <key>ru</key> - <value>Дата и срок</value> - - ГруппаДатаИСрокExtendedTooltip - 199 + ГруппаПриоритетExtendedTooltip + 205 Label true true @@ -278,132 +547,6 @@ UsualGroup - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаНомерИВажность - 177 - - Номер - 178 - true - true - - true - - - Объект.Number - - - НомерExtendedTooltip - 203 - Label - true - true - - Left - - - - НомерКонтекстноеМеню - 179 - true - - InputField - Enter - true - Left - true - - true - true - false - true - true - true - true - Normal - - - - Важность - 180 - true - true - - true - - - Объект.Важность - - - ВажностьExtendedTooltip - 204 - Label - true - true - - Left - - - - ВажностьКонтекстноеМеню - 181 - true - - InputField - Enter - true - Left - true - Left - - 10 - true - true - false - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Номер и важность</value> - - - System.DefaultGUIFont - true - false - false - false - - true - - ГруппаНомерИВажностьExtendedTooltip - 202 - Label - true - true - - Left - - - UsualGroup - - Vertical Auto true true @@ -416,13 +559,9 @@ true - - <key>ru</key> - <value>Группы шапки</value> - - ГруппыШапкиExtendedTooltip - 195 + ШапкаExtendedTooltip + 194 Label true true @@ -432,7 +571,9 @@ UsualGroup + Vertical Auto + NormalSeparation true true Auto @@ -440,277 +581,228 @@ - ГруппаПриоритет - 182 - - СрокНачалаИсполнения - 183 - true - true - - true - - - Объект.ДатаНачала - - - ru - Срок начала исполнения - - - OnChange - СрокНачалаИсполненияПриИзменении - - - СрокНачалаИсполненияExtendedTooltip - 206 - Label - true - true - - Left - - - - СрокНачалаИсполненияКонтекстноеМеню - 184 - true - - InputField - Enter - true - Left - true - - 10 - true - true - - ru - ДЛФ=D - - true - true - true - Normal - - - - СрокНачалаИсполненияВремя - 185 - true - true - - true - - - Объект.ДатаНачала - - None - - ru - Срок начала исполнения - - - СрокНачалаИсполненияВремяExtendedTooltip - 207 - Label - true - true - - Left - - - - СрокНачалаИсполненияВремяКонтекстноеМеню - 186 - true - - InputField - Enter - true - Left - true - - 8 - true - true - false - - ru - ДЛФ=T - - true - true - true - Normal - - - true - true - - true - - - ГруппаПриоритетExtendedTooltip - 205 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Шапка</value> - - - ШапкаExtendedTooltip - 194 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - - - - Страницы - 222 - - Главное - 224 + Страницы + 222 - ГруппаСодержание - 94 - - Наименование - 159 + Главное + 224 + + ГруппаСодержание + 94 + + Наименование + 159 + true + true + + true + + + Объект.Description + + + НаименованиеExtendedTooltip + 209 + Label + true + true + + Left + + + + НаименованиеКонтекстноеМеню + 160 + true + + InputField + true + Enter + true + Left + true + + true + true + true + true + true + Normal + + + + Предмет + 132 + true + true + + true + + + ПредметСтрокой + + + ПредметExtendedTooltip + 210 + Label + true + true + + Left + + + + ПредметКонтекстноеМеню + 133 + true + + LabelField + Enter + true + Left + true + + + Click + ПредметНажатие + + 60 + true + true + true + + + + Содержание + 18 + + <key>ru</key> + <value>Содержание</value> + + true + true + + true + + + ЗаданиеСодержание + + None + + СодержаниеExtendedTooltip + 211 + Label + true + true + + Left + + + + СодержаниеКонтекстноеМеню + 19 + true + + InputField + true + Enter + true + Left + true + Left + + 5 + true + true + true + true + true + true + true + + Style.BorderColor + + Normal + + true true true - - Объект.Description - - - НаименованиеExtendedTooltip - 209 - Label - true - true - - Left - - - - НаименованиеКонтекстноеМеню - 160 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - - Предмет - 132 - true - true - - true - - - ПредметСтрокой - - - ПредметExtendedTooltip - 210 - Label - true - true - - Left - - - - ПредметКонтекстноеМеню - 133 - true - - LabelField - Enter - true - Left - true - - - Click - ПредметНажатие - - true - true - true - - - - Содержание - 18 <key>ru</key> <value>Содержание</value> + + ГруппаСодержаниеExtendedTooltip + 208 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Главное</value> + + + ГлавноеРасширеннаяПодсказка + 225 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + ИсторияВыполнения + 226 + + РезультатВыполнения + 126 + + <key>ru</key> + <value>История выполнения</value> + true true true - ЗаданиеСодержание + ЗаданиеРезультатВыполнения None - СодержаниеExtendedTooltip - 211 + РезультатВыполненияExtendedTooltip + 212 Label true true @@ -719,8 +811,8 @@ - СодержаниеКонтекстноеМеню - 19 + РезультатВыполненияКонтекстноеМеню + 127 true InputField @@ -729,10 +821,7 @@ true Left true - Left - true - 5 true true true @@ -740,9 +829,6 @@ true true true - - Style.BorderColor - Normal @@ -753,12 +839,336 @@ <key>ru</key> - <value>Содержание</value> + <value>История выполнения</value> - true - ГруппаСодержаниеExtendedTooltip - 208 + ИсторияВыполненияРасширеннаяПодсказка + 227 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Страницы</value> + + + СтраницыРасширеннаяПодсказка + 223 + Label + true + true + + Left + + + Pages + + TabsOnTop + Auto + + + + ГруппаРезультат + 27 + + ОписаниеРезультата + 78 + true + true + + true + + + Объект.РезультатВыполнения + + true + None + + ru + Описание результата выполнения + + + ОписаниеРезультатаExtendedTooltip + 214 + Label + true + true + + Left + + + + ОписаниеРезультатаКонтекстноеМеню + 79 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + + ГруппаВыполненаДата + 54 + + Выполнено + 123 + true + true + + true + + false + + ВыполненоExtendedTooltip + 216 + Label + true + true + + Left + + + UsualButton + Form.Command.Выполнено + Normal + PictureAndText + true + 1 + true + UserCmds + Auto + + + Отменено + 147 + true + true + + true + + false + + ОтмененоExtendedTooltip + 217 + Label + true + true + + Left + + + UsualButton + Form.Command.Отменено + Normal + PictureAndText + true + 1 + true + UserCmds + + StdPicture.Stop + + Auto + + + Возвращено + 124 + true + true + + true + + false + + ВозвращеноExtendedTooltip + 218 + Label + true + true + + Left + + + UsualButton + Form.Command.Возвращено + Normal + PictureAndText + true + 1 + true + UserCmds + + CommonPicture.ЗаполнитьФорму + + Auto + + + ДатаИсполнения + 55 + + <key>ru</key> + <value>Дата проверки</value> + + true + true + + true + + + Объект.ДатаИсполнения + + + ДатаИсполненияExtendedTooltip + 219 + Label + true + true + + Left + + + + ДатаИсполненияКонтекстноеМеню + 56 + true + + InputField + Enter + true + Left + true + + 10 + true + true + false + + ru + ДЛФ=D + + true + true + true + Normal + + + + ДатаИсполненияВремя + 161 + true + true + + true + + + Объект.ДатаИсполнения + + None + + ДатаИсполненияВремяExtendedTooltip + 220 + Label + true + true + + Left + + + + ДатаИсполненияВремяКонтекстноеМеню + 162 + true + + InputField + Enter + true + Left + true + + 8 + true + true + false + + ru + ДЛФ=T + + true + true + true + Normal + + + + ИзменитьЗадание + 130 + true + true + + true + + false + + ИзменитьЗаданиеExtendedTooltip + 221 + Label + true + true + + Left + + + Hyperlink + Form.Command.ИзменитьЗадание + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Группа выполнена дата</value> + + + ru + Группа выполнена дата + + + ГруппаВыполненаДатаExtendedTooltip + 215 Label true true @@ -768,9 +1178,7 @@ UsualGroup - Vertical Auto - NormalSeparation true true Auto @@ -784,418 +1192,11 @@ <key>ru</key> - <value>Главное</value> + <value>Результат проверки задания:</value> - ГлавноеРасширеннаяПодсказка - 225 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - ИсторияВыполнения - 226 - - РезультатВыполнения - 126 - - <key>ru</key> - <value>История выполнения</value> - - true - true - - true - - - ЗаданиеРезультатВыполнения - - None - - РезультатВыполненияExtendedTooltip - 212 - Label - true - true - - Left - - - - РезультатВыполненияКонтекстноеМеню - 127 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>История выполнения</value> - - - ИсторияВыполненияРасширеннаяПодсказка - 227 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Страницы</value> - - - СтраницыРасширеннаяПодсказка - 223 - Label - true - true - - Left - - - Pages - - TabsOnTop - Auto - - - - ГруппаРезультат - 27 - - ОписаниеРезультата - 78 - true - true - - true - - - Объект.РезультатВыполнения - - true - None - - ru - Описание результата выполнения - - - ОписаниеРезультатаExtendedTooltip - 214 - Label - true - true - - Left - - - - ОписаниеРезультатаКонтекстноеМеню - 79 - true - - InputField - Enter - true - Left - true - - true - 2 - true - false - true - true - true - true - Normal - - - - ГруппаВыполненаДата - 54 - - Выполнено - 123 - true - true - - true - - false - - ВыполненоExtendedTooltip - 216 - Label - true - true - - Left - - - UsualButton - Form.Command.Выполнено - Normal - PictureAndText - true - 1 - true - UserCmds - Auto - - - Отменено - 147 - true - true - - true - - false - - ОтмененоExtendedTooltip - 217 - Label - true - true - - Left - - - UsualButton - Form.Command.Отменено - Normal - PictureAndText - true - 1 - true - UserCmds - - StdPicture.Stop - - Auto - - - Возвращено - 124 - true - true - - true - - false - - ВозвращеноExtendedTooltip - 218 - Label - true - true - - Left - - - UsualButton - Form.Command.Возвращено - Normal - PictureAndText - true - 1 - true - UserCmds - - CommonPicture.ЗаполнитьФорму - - Auto - - - ДатаИсполнения - 55 - - <key>ru</key> - <value>Дата проверки</value> - - true - true - - true - - - Объект.ДатаИсполнения - - - ДатаИсполненияExtendedTooltip - 219 - Label - true - true - - Left - - - - ДатаИсполненияКонтекстноеМеню - 56 - true - - InputField - Enter - true - Left - true - - 10 - true - true - false - - ru - ДЛФ=D - - true - true - true - Normal - - - - ДатаИсполненияВремя - 161 - true - true - - true - - - Объект.ДатаИсполнения - - None - - ДатаИсполненияВремяExtendedTooltip - 220 - Label - true - true - - Left - - - - ДатаИсполненияВремяКонтекстноеМеню - 162 - true - - InputField - Enter - true - Left - true - - 8 - true - true - false - - ru - ДЛФ=T - - true - true - true - Normal - - - - ИзменитьЗадание - 130 - true - true - - true - - false - - ИзменитьЗаданиеExtendedTooltip - 221 - Label - true - true - - Left - - - Hyperlink - Form.Command.ИзменитьЗадание - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Группа выполнена дата</value> - - - ru - Группа выполнена дата - - true - - ГруппаВыполненаДатаExtendedTooltip - 215 + ГруппаРезультатExtendedTooltip + 213 Label true true @@ -1205,9 +1206,12 @@ UsualGroup + Vertical Auto + NormalSeparation true true + auto Auto Auto @@ -1217,14 +1221,9 @@ true - - <key>ru</key> - <value>Результат проверки задания:</value> - - true - ГруппаРезультатExtendedTooltip - 213 + ДокументРасширеннаяПодсказка + 235 Label true true @@ -1236,10 +1235,8 @@ Vertical Auto - NormalSeparation true true - auto Auto Auto @@ -1274,17 +1271,17 @@ UserCmds Auto - - ОсновнаяКоманднаяПанель - 1 + + ФормаЗаписать + 228 true true true - ОсновнаяКоманднаяПанельExtendedTooltip - 188 + ФормаЗаписатьРасширеннаяПодсказка + 229 Label true true @@ -1292,9 +1289,68 @@ Left - - Form - + Form.StandardCommand.Write + Normal + Picture + true + true + UserCmds + Auto + + + ФормаВыполнено + 230 + true + true + + true + + + ФормаВыполненоРасширеннаяПодсказка + 231 + Label + true + true + + Left + + + Form.Command.Выполнено + Normal + Auto + true + true + UserCmds + Auto + + + ФормаЗадачаЗадачаИсполнителяПеренаправить + 232 + true + true + + true + + + Объект.Ref + + + ФормаЗадачаЗадачаИсполнителяПеренаправитьРасширеннаяПодсказка + 233 + Label + true + true + + Left + + + Task.ЗадачаИсполнителя.Command.Перенаправить + Normal + Picture + true + true + UserCmds + Auto ФормаПринятьКИсполнению @@ -1316,7 +1372,7 @@ Form.Command.ПринятьКИсполнению Normal - Auto + Picture true true UserCmds @@ -1342,7 +1398,7 @@ Form.Command.ОтменитьПринятиеКИсполнению Normal - Auto + Picture true true UserCmds @@ -1651,7 +1707,6 @@ Выполнено - true DontUse Auto @@ -1674,7 +1729,6 @@ Возвращено - true DontUse Auto @@ -1720,7 +1774,6 @@ Отменено - true DontUse Auto diff --git a/SSL/src/BusinessProcesses/Задание/Forms/ДействиеПроверить/Module.bsl b/SSL/src/BusinessProcesses/Задание/Forms/ДействиеПроверить/Module.bsl index 8e1b8d230..02d730d2b 100644 --- a/SSL/src/BusinessProcesses/Задание/Forms/ДействиеПроверить/Module.bsl +++ b/SSL/src/BusinessProcesses/Задание/Forms/ДействиеПроверить/Module.bsl @@ -184,7 +184,17 @@ Элементы.ОписаниеРезультата.ТолькоПросмотр = Объект.Выполнена; Исполнитель = ?(ЗначениеЗаполнено(Объект.Исполнитель), Объект.Исполнитель, Объект.РольИсполнителя); -КонецПроцедуры + Если ПравоДоступа("Изменение", Метаданные.БизнесПроцессы.Задание) Тогда + Элементы.Выполнено.Доступность = Истина; + Элементы.Отменено.Доступность = Истина; + Элементы.Возвращено.Доступность = Истина; + Иначе + Элементы.Выполнено.Доступность = Ложь; + Элементы.Отменено.Доступность = Ложь; + Элементы.Возвращено.Доступность = Ложь; + КонецЕсли; + +КонецПроцедуры &НаСервере Процедура ПрочитатьРеквизитыБизнесПроцесса() diff --git a/SSL/src/BusinessProcesses/Задание/Forms/ФормаБизнесПроцесса/Form.form b/SSL/src/BusinessProcesses/Задание/Forms/ФормаБизнесПроцесса/Form.form index d126347d3..9428a0bfc 100644 --- a/SSL/src/BusinessProcesses/Задание/Forms/ФормаБизнесПроцесса/Form.form +++ b/SSL/src/BusinessProcesses/Задание/Forms/ФормаБизнесПроцесса/Form.form @@ -1,164 +1,22 @@ - ГруппаСостояние - 92 - - ДекорацияЗначок - 93 - true - true - - true - - - ДекорацияЗначокExtendedTooltip - 108 - Label - true - true - - Left - - - - ДекорацияЗначокКонтекстноеМеню - 94 - true - - 2 - true - 1 - true - false - - - CommonPicture.Информация - - - - - ДекорацияТекст - 95 - - <key>ru</key> - <value>Задание выполнено</value> - - true - true - - true - - - ДекорацияТекстExtendedTooltip - 109 - Label - true - true - - Left - - - - ДекорацияТекстКонтекстноеМеню - 96 - true - - Label - true - true - true - false - false - - Left - - - true - true - - true - - true - - ГруппаСостояниеExtendedTooltip - 107 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - - - ГлавнаяЗадача - 99 - true - true - - true - - - ГлавнаяЗадачаСтрокой - - - ГлавнаяЗадачаExtendedTooltip - 110 - Label - true - true - - Left - - - - ГлавнаяЗадачаКонтекстноеМеню - 100 - true - - LabelField - Enter - true - Left - true - - - Click - ГлавнаяЗадачаНажатие - - true - true - true - - - - ГруппаСрокВажность - 27 + Документ + 151 - ЗаголовокЗадания - 19 + ГлавнаяЗадача + 99 true true true - Объект.Наименование + ГлавнаяЗадачаСтрокой - true - ЗаголовокЗаданияExtendedTooltip - 112 + ГлавнаяЗадачаExtendedTooltip + 110 Label true true @@ -167,379 +25,8 @@ - ЗаголовокЗаданияКонтекстноеМеню - 20 - true - - InputField - Enter - true - Left - true - Left - - 20 - true - true - true - true - true - - Style.BorderColor - - Normal - - - - Важность - 57 - true - true - - true - - - Объект.Важность - - - ВажностьExtendedTooltip - 113 - Label - true - true - - Left - - - - ВажностьКонтекстноеМеню - 58 - true - - InputField - Enter - true - Left - true - - 8 - true - true - false - true - true - true - Normal - - - - Номер - 103 - true - true - - - Объект.Number - - - НомерExtendedTooltip - 114 - Label - true - true - - Left - - - - НомерКонтекстноеМеню - 104 - true - - InputField - Enter - true - Left - true - - true - true - false - true - true - true - true - Normal - - - true - true - - true - - true - - ГруппаСрокВажностьExtendedTooltip - 111 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаИсполнение - 67 - - Исполнитель - 69 - true - true - - true - - - Объект.Исполнитель - - - OnChange - ИсполнительПриИзменении - - - ИсполнительExtendedTooltip - 116 - Label - true - true - - Left - - - - ИсполнительКонтекстноеМеню - 70 - true - - InputField - Enter - true - Left - true - - - AutoComplete - ИсполнительАвтоПодбор - - - StartChoice - ИсполнительНачалоВыбора - - - TextEditEnd - ИсполнительОкончаниеВводаТекста - - - ChoiceProcessing - ИсполнительОбработкаВыбора - - 35 - true - true - false - false - true - true - true - Normal - - - - СрокИсполнения - 21 - - <key>ru</key> - <value>Срок</value> - - true - true - - true - - - Объект.СрокИсполнения - - - ru - Срок исполнения - - - OnChange - СрокИсполненияПриИзменении - - - СрокИсполненияExtendedTooltip - 117 - Label - true - true - - Left - - - - СрокИсполненияКонтекстноеМеню - 22 - true - - InputField - Enter - true - Left - true - Left - - 10 - true - true - - ru - ДЛФ=D - - true - true - true - Normal - - - - СрокИсполненияВремя - 88 - - <key>ru</key> - <value>Срок</value> - - true - true - - true - - - Объект.СрокИсполнения - - None - - ru - Срок исполнения (время) - - - СрокИсполненияВремяExtendedTooltip - 118 - Label - true - true - - Left - - - - СрокИсполненияВремяКонтекстноеМеню - 89 - true - - InputField - Enter - true - Left - true - Left - - 8 - true - true - false - - ru - ДЛФ=T - - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Исполнение</value> - - - System.DefaultGUIFont - true - false - false - false - - true - - ГруппаИсполнениеExtendedTooltip - 115 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаСодержание - 75 - - Предмет - 86 - true - true - - true - - - ПредметСтрокой - - - ПредметExtendedTooltip - 120 - Label - true - true - - Left - - - - ПредметКонтекстноеМеню - 87 + ГлавнаяЗадачаКонтекстноеМеню + 100 true LabelField @@ -550,160 +37,27 @@ Click - ПредметНажатие + ГлавнаяЗадачаНажатие true true + true - - Содержание - 17 - - <key>ru</key> - <value>Содержание</value> - - true - true - - true - - - Объект.Содержание - - None - - СодержаниеExtendedTooltip - 121 - Label - true - true - - Left - - - - СодержаниеКонтекстноеМеню - 18 - true - - InputField - Enter - true - Left - true - Left - - true - 5 - true - true - true - true - true - - Style.BorderColor - - Normal - - - true - true - - true - - - <key>ru</key> - <value>Содержание</value> - - - ГруппаСодержаниеExtendedTooltip - 119 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - - - - ГруппаПроверка - 56 - - НаПроверке - 54 - - <key>ru</key> - <value>Проверить выполнение:</value> - - true - true - - true - - - Объект.НаПроверке - - Right - - OnChange - НаПроверкеПриИзменении - - - НаПроверкеExtendedTooltip - 123 - Label - true - true - - Left - - - - НаПроверкеКонтекстноеМеню - 55 - true - - CheckBoxField - Enter - true - Left - true - - - ГруппаПроверяющий - 28 - - Проверяющий - 14 + ГруппаСостояние + 92 + + ДекорацияЗначок + 93 true true true - - Объект.Проверяющий - - None - - OnChange - ПроверяющийПриИзменении - - ПроверяющийExtendedTooltip - 125 + ДекорацияЗначокExtendedTooltip + 108 Label true true @@ -712,55 +66,552 @@ - ПроверяющийКонтекстноеМеню - 15 + ДекорацияЗначокКонтекстноеМеню + 94 true - InputField - false + true + true + false + + + CommonPicture.Информация + + + + + ИнфоНадписьЗаголовок + 155 + true + true + + true + + + ИнфоНадписьЗаголовок + + None + + ИнфоНадписьЗаголовокРасширеннаяПодсказка + 157 + Label + true + true + + Left + + + + ИнфоНадписьЗаголовокКонтекстноеМеню + 156 + true + + LabelField Enter true Left true - Left - + - AutoComplete - ПроверяющийАвтоПодбор + URLProcessing + ИнфоНадписьЗаголовокОбработкаНавигационнойСсылки - - StartChoice - ПроверяющийНачалоВыбора - - - TextEditEnd - ПроверяющийОкончаниеВводаТекста - - - ChoiceProcessing - ПроверяющийОбработкаВыбора - - 34 + true + + + true + true + + true + + + ГруппаСостояниеExtendedTooltip + 107 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + + + Шапка + 145 + + ГруппаСрокВажность + 27 + + ЗаголовокЗадания + 19 + true + true + + true + + + Объект.Наименование + + true + + ЗаголовокЗаданияExtendedTooltip + 112 + Label + true + true + + Left + + + + ЗаголовокЗаданияКонтекстноеМеню + 20 + true + + InputField + Enter + true + Left + true + Left + + true + true + true + true + true + + Style.BorderColor + + Normal + + + + Важность + 57 + true + true + + true + + + Объект.Важность + + + ВажностьExtendedTooltip + 113 + Label + true + true + + Left + + + + ВажностьКонтекстноеМеню + 58 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + + Номер + 103 + true + true + + + Объект.Number + + + НомерExtendedTooltip + 114 + Label + true + true + + Left + + + + НомерКонтекстноеМеню + 104 + true + + InputField + Enter + true + Left + true + + true + true + false + true + true + true + true + Normal + + + true + true + + true + + + ГруппаСрокВажностьExtendedTooltip + 111 + Label true true - false - false - false - true - true - true - - Style.BorderColor - - Normal + + Left + + + UsualGroup + + Auto + true + Auto + Auto + + + + ГруппаИсполнение + 67 + + Исполнитель + 69 + true + true + + true + + + Объект.Исполнитель + + + OnChange + ИсполнительПриИзменении + + + ИсполнительExtendedTooltip + 116 + Label + true + true + + Left + + + + ИсполнительКонтекстноеМеню + 70 + true + + InputField + Enter + true + Left + true + + + AutoComplete + ИсполнительАвтоПодбор + + + StartChoice + ИсполнительНачалоВыбора + + + TextEditEnd + ИсполнительОкончаниеВводаТекста + + + ChoiceProcessing + ИсполнительОбработкаВыбора + + true + true + false + true + true + true + Normal + + + + ГруппаСрокИсполнения + 147 + + СрокИсполнения + 21 + + <key>ru</key> + <value>Срок</value> + + true + true + + true + + + Объект.СрокИсполнения + + + ru + Срок исполнения + + + OnChange + СрокИсполненияПриИзменении + + + СрокИсполненияExtendedTooltip + 117 + Label + true + true + + Left + + + + СрокИсполненияКонтекстноеМеню + 22 + true + + InputField + Enter + true + Left + true + Left + + 10 + true + true + + ru + ДЛФ=D + + true + true + true + Normal + + + + СрокИсполненияВремя + 88 + + <key>ru</key> + <value>Срок</value> + + true + true + + true + + + Объект.СрокИсполнения + + None + + ru + Срок исполнения (время) + + + СрокИсполненияВремяExtendedTooltip + 118 + Label + true + true + + Left + + + + СрокИсполненияВремяКонтекстноеМеню + 89 + true + + InputField + Enter + true + Left + true + Left + + 8 + true + true + false + + ru + ДЛФ=T + + true + true + true + Normal + + + true + true + + true + + + ГруппаСрокИсполненияРасширеннаяПодсказка + 148 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Исполнение</value> + + + System.DefaultGUIFont + true + false + false + false + + + ГруппаИсполнениеExtendedTooltip + 115 + Label + true + true + + Left + + + UsualGroup + + Auto + true + Auto + Auto + + + true + true + + true + + + ШапкаРасширеннаяПодсказка + 146 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаСодержание + 75 + + Предмет + 86 + true + true + + true + + + ПредметСтрокой + + + ПредметExtendedTooltip + 120 + Label + true + true + + Left + + + + ПредметКонтекстноеМеню + 87 + true + + LabelField + Enter + true + Left + true + + + Click + ПредметНажатие + + 60 + true + true - СрокПроверки - 23 + Содержание + 17 <key>ru</key> - <value>Срок</value> + <value>Содержание</value> true true @@ -768,77 +619,12 @@ true - Объект.СрокПроверки - - - ru - Срок проверки - - - OnChange - СрокПроверкиПриИзменении - - - СрокПроверкиExtendedTooltip - 126 - Label - true - true - - Left - - - - СрокПроверкиКонтекстноеМеню - 24 - true - - InputField - Enter - true - Left - true - Left - - 10 - true - true - - ru - ДЛФ=D - - true - true - true - - Style.BorderColor - - Normal - - - - СрокПроверкиВремя - 90 - - <key>ru</key> - <value>Срок</value> - - true - true - - true - - - Объект.СрокПроверки + Объект.Содержание None - - ru - Срок проверки (время) - - СрокПроверкиВремяExtendedTooltip - 127 + СодержаниеExtendedTooltip + 121 Label true true @@ -847,8 +633,8 @@ - СрокПроверкиВремяКонтекстноеМеню - 91 + СодержаниеКонтекстноеМеню + 18 true InputField @@ -858,14 +644,8 @@ true Left - 8 - true true - false - - ru - ДЛФ=T - + true true true true @@ -881,8 +661,321 @@ true - ГруппаПроверяющийExtendedTooltip - 124 + ГруппаСодержаниеExtendedTooltip + 119 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + Auto + Auto + + + + ГруппаПроверка + 56 + + НаПроверке + 54 + + <key>ru</key> + <value>Проверить выполнение:</value> + + true + true + + true + + + Объект.НаПроверке + + Right + + OnChange + НаПроверкеПриИзменении + + + НаПроверкеExtendedTooltip + 123 + Label + true + true + + Left + + + + НаПроверкеКонтекстноеМеню + 55 + true + + CheckBoxField + Enter + true + Left + true + + + + ГруппаПроверяющий + 28 + + Проверяющий + 14 + true + true + + true + + + Объект.Проверяющий + + None + + OnChange + ПроверяющийПриИзменении + + + ПроверяющийExtendedTooltip + 125 + Label + true + true + + Left + + + + ПроверяющийКонтекстноеМеню + 15 + true + + InputField + false + Enter + true + Left + true + Left + + + AutoComplete + ПроверяющийАвтоПодбор + + + StartChoice + ПроверяющийНачалоВыбора + + + TextEditEnd + ПроверяющийОкончаниеВводаТекста + + + ChoiceProcessing + ПроверяющийОбработкаВыбора + + 35 + true + true + false + false + true + true + true + + Style.BorderColor + + Normal + + + + ГруппаСрокПроверки + 149 + + СрокПроверки + 23 + + <key>ru</key> + <value>Срок</value> + + true + true + + true + + + Объект.СрокПроверки + + + ru + Срок проверки + + + OnChange + СрокПроверкиПриИзменении + + + СрокПроверкиExtendedTooltip + 126 + Label + true + true + + Left + + + + СрокПроверкиКонтекстноеМеню + 24 + true + + InputField + Enter + true + Left + true + Left + + 10 + true + true + + ru + ДЛФ=D + + true + true + true + + Style.BorderColor + + Normal + + + + СрокПроверкиВремя + 90 + + <key>ru</key> + <value>Срок</value> + + true + true + + true + + + Объект.СрокПроверки + + None + + ru + Срок проверки (время) + + + СрокПроверкиВремяExtendedTooltip + 127 + Label + true + true + + Left + + + + СрокПроверкиВремяКонтекстноеМеню + 91 + true + + InputField + Enter + true + Left + true + Left + + 8 + true + true + false + + ru + ДЛФ=T + + true + true + true + + Style.BorderColor + + Normal + + + true + true + + true + + + ГруппаСрокПроверкиРасширеннаяПодсказка + 150 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + ГруппаПроверяющийExtendedTooltip + 124 + Label + true + true + + Left + + + UsualGroup + + Auto + true + Auto + Auto + + + true + true + + true + + + ГруппаПроверкаExtendedTooltip + 122 Label true true @@ -899,101 +992,116 @@ Auto - true - true - - true - - - <key>ru</key> - <value>Проверка</value> - - true - - ГруппаПроверкаExtendedTooltip - 122 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - auto - Auto - Auto - - - - ГруппаОбщиеСведения - 81 - - Автор - 79 + + ГруппаОбщиеСведения + 81 + + Автор + 79 + true + true + + true + + + Объект.Автор + + + АвторExtendedTooltip + 129 + Label + true + true + + Left + + + + АвторКонтекстноеМеню + 80 + true + + InputField + Enter + true + Left + true + + 35 + true + true + false + true + true + true + Normal + + + + Дата + 97 + + <key>ru</key> + <value>Начато</value> + + true + true + + true + + + Объект.Date + + + ДатаExtendedTooltip + 130 + Label + true + true + + Left + + + + ДатаКонтекстноеМеню + 98 + true + + InputField + true + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + true true true - - Объект.Автор - - - АвторExtendedTooltip - 129 - Label - true - true - - Left - - - - АвторКонтекстноеМеню - 80 - true - - InputField - Enter - true - Left - true - - 35 - true - true - false - false - true - true - true - Normal - - - - Дата - 97 <key>ru</key> - <value>Начато</value> + <value>Автор</value> - true - true - - true - - - Объект.Date - + + System.DefaultGUIFont + true + false + false + false + - ДатаExtendedTooltip - 130 + ГруппаОбщиеСведенияExtendedTooltip + 128 Label true true @@ -1001,25 +1109,14 @@ Left - - ДатаКонтекстноеМеню - 98 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - Normal + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto true @@ -1027,25 +1124,10 @@ true - - <key>ru</key> - <value>Автор</value> - - - System.DefaultGUIFont - true - false - false - false - - - ru - Группа общие сведения - - true + false - ГруппаОбщиеСведенияExtendedTooltip - 128 + ДокументРасширеннаяПодсказка + 152 Label true true @@ -1055,8 +1137,8 @@ UsualGroup + Vertical Auto - NormalSeparation true true Auto @@ -1172,6 +1254,32 @@ UserCmds Auto + + ФормаНастроитьОтложенныйСтарт + 153 + true + true + + true + + + ФормаНастроитьОтложенныйСтартРасширеннаяПодсказка + 154 + Label + true + true + + Left + + + Form.Command.НастроитьОтложенныйСтарт + Normal + Auto + true + true + UserCmds + Auto + ФормаОстановить 101 @@ -1316,6 +1424,10 @@ ChoiceProcessing ОбработкаВыбора + + NotificationProcessing + ОбработкаОповещения + OnOpen ПриОткрытии @@ -1403,6 +1515,109 @@ true + + ИнфоНадписьЗаголовок + + <key>ru</key> + <value>Инфо надпись заголовок</value> + + 5 + + FormattedString + + + true + + + true + + + + Отложен + + <key>ru</key> + <value>Отложен</value> + + 6 + + Boolean + + + true + + + true + + + + ДатаОтложенногоСтарта + + <key>ru</key> + <value>Дата отложенного старта</value> + + 7 + + Date + + + + true + + + true + + + + ИспользоватьДатуИВремяВСрокахЗадач + + <key>ru</key> + <value>Использовать дату и время в сроках задач</value> + + 8 + + Boolean + + + true + + + true + + + + ИспользоватьПодчиненныеБизнесПроцессы + + <key>ru</key> + <value>Использовать подчиненные бизнес процессы</value> + + 9 + + Boolean + + + true + + + true + + + + ИзменятьЗаданияЗаднимЧислом + + <key>ru</key> + <value>Изменять задания задним числом</value> + + 10 + + Boolean + + + true + + + true + + Остановить @@ -1469,6 +1684,31 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> + <formCommands> + <name>НастроитьОтложенныйСтарт</name> + <title> + <key>ru</key> + <value>Настроить отложенный старт</value> + + 4 + + ru + Настроить отложенный старт + + + true + + + CommonPicture.ПроцессОтложен + + + + НастроитьОтложенныйСтарт + + + DontUse + Auto + @@ -1482,6 +1722,10 @@ OnReadAtServer ПриЧтенииНаСервере + + BeforeWriteAtServer + ПередЗаписьюНаСервере + OnWriteAtServer ПриЗаписиНаСервере diff --git a/SSL/src/BusinessProcesses/Задание/Forms/ФормаБизнесПроцесса/Help/ru.html b/SSL/src/BusinessProcesses/Задание/Forms/ФормаБизнесПроцесса/Help/ru.html index c4916e0b3..d7dfb41ba 100644 --- a/SSL/src/BusinessProcesses/Задание/Forms/ФормаБизнесПроцесса/Help/ru.html +++ b/SSL/src/BusinessProcesses/Задание/Forms/ФормаБизнесПроцесса/Help/ru.html @@ -5,9 +5,8 @@
  • Главная задача - заполняется программой автоматически, если бизнес-процесс является подчиненным. По ссылке в этом поле можно просмотреть данные о главном бизнес-процессе.
  • Задание - напишите заголовок задания, который будет показан в списках бизнес-процессов. Поле является обязательным для заполнения.
  • Важность - принимает значения Обычная (по умолчанию), Низкая, Высокая. Для того чтобы выделить бизнес-процесс из списка, или наоборот, указать, что выполнение этого бизнес-процесса может быть отложено, выберите соответствующее значение этого поля. -
      -
    • Исполнитель - выберите исполнителя из списка пользователей программы или из списка исполнителей. Поля является обязательным для заполнения.
    • -
    • Срок - укажите дату и время, когда нужно выполнить задание. +
    • Исполнитель - выберите исполнителя из списка пользователей программы или из списка исполнителей. Поля является обязательным для заполнения. +
    • Срок - укажите дату и время, когда нужно выполнить задание.
    • Предмет - автоматически проставляется документ программы, на основании которого создано задание.
    • В текстовом поле ниже можно при необходимости более подробно объяснить суть задания. Недоступно для подчиненных бизнес-процессов.
    • @@ -16,19 +15,33 @@
      назначить проверяющего из списка пользователей;
    • ввести Срок - дату и время, до которого надо проверить выполнение задания. Если срок не заполнен, то проверка не производится.
  • -

    Старт бизнес-процесса

    • После того как задание заполнено, нажмите кнопку Стартовать и закрыть, для того чтобы сохранить Задание, начать бизнес-процесс и вернуться в программу.
    • Для того чтобы начать бизнес-процесс, можно также воспользоваться командой Старт. В этом случае программа сохранит задание, начнет бизнес-процесс, но задание останется открытым.
    • Программа автоматически формирует  задачи, из которых состоит бизнес-процесс Задание: 
    • Для того чтобы записать черновик задания, но не стартовать его, нажмите Записать. Такое задание можно дозаполнить и стартовать позднее, в более подходящий момент времени из списка заданий или открыв задание.

    Управление движением бизнес-процесса

    -
    • Для того чтобы Остановить или Продолжить бизнес-процесс, воспользуйтесь соответствующими командами (активна одна из команд). Остановленный бизнес-процесс в списке выделяется значком .

    Просмотр карты маршрута

    +
    • после выполнения этой задачи в зависимости от настроек задание становится выполненным или формируется задача проверка выполнения.
  • Для того чтобы записать черновик задания, но не стартовать его, нажмите Записать. Такое задание можно дозаполнить и стартовать позднее, в более подходящий момент времени из списка заданий или открыв задание.
  • Отложенный старт бизнес-процесса

    +
    • +
      Имеется возможность начать бизнес-процесс не сразу, а отложить его старт на определенное время. Например, можно запланировать старт на завтра или через неделю.
      +
    • +
      Для настройки отложенного старта задания после заполнения всех необходимых полей нажмите кнопку .
      +
      • +
        В открывшемся окне включите флажок Отложенный старт задания.
        +
      • +
        Заполните поля Дата и Время - укажите, когда нужно начать бизнес-процесс. В нижней части окна отразится, через сколько дней и часов будет запущено задание.
        +
      • +
        Нажмите кнопку Готово.
    • +
      После этого в карточке бизнес-процесса выводится сообщение со ссылкой, в которой указывается дата и время отложенного старта.
      +
    • +
      Для запуска отложенных бизнес-процессов в нужное время необходимо настроить регламентное задание Старт отложенных бизнес-процессов.
      +
    • +
      После того как задание стартовано, кнопка отложенного старта становится неактивной.

    Управление движением бизнес-процесса

    +
    • Для того чтобы Остановить или Продолжить бизнес-процесс, воспользуйтесь соответствующими кнопками (активна одна из кнопок). Остановленный бизнес-процесс в некоторых списках выделяется значком .

    Просмотр карты маршрута

    • Нажмите кнопку  Открыть карту маршрута бизнес-процесса, для того чтобы посмотреть бизнес-процесс в наглядной форме.
    • Также можно воспользоваться командой Еще - Карта маршрута.
    • Карта маршрута описывает логику бизнес-процесса и весь его жизненный цикл в виде схематического изображения - последовательности прохождения точек маршрута.

    Просмотр задач

    • Для того чтобы просмотреть задачи, из которых состоит данный бизнес-процесс, выполните команду Задачи в панели навигации. Если задание не стартовано, то список задач пустой.

    См. также:

    \ No newline at end of file + \ No newline at end of file diff --git a/SSL/src/BusinessProcesses/Задание/Forms/ФормаБизнесПроцесса/Module.bsl b/SSL/src/BusinessProcesses/Задание/Forms/ФормаБизнесПроцесса/Module.bsl index fd6d21f86..2fe4e2e55 100644 --- a/SSL/src/BusinessProcesses/Задание/Forms/ФормаБизнесПроцесса/Module.bsl +++ b/SSL/src/BusinessProcesses/Задание/Forms/ФормаБизнесПроцесса/Module.bsl @@ -67,6 +67,22 @@ КонецПроцедуры +&НаКлиенте +Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) + + Если ИмяСобытия = "ИзмененаНастройкаОтложенногоСтарта" Тогда + Отложен = (Параметр.Отложен И Параметр.Состояние = ПредопределенноеЗначение("Перечисление.СостоянияПроцессовДляЗапуска.ГотовКСтарту")); + ДатаОтложенногоСтарта = Параметр.ДатаОтложенногоСтарта; + УстановитьСвойстваЭлементовФормы(ЭтаФорма); + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) + ПроверитьДатуЗавершенияОтложенногоПроцесса(ТекущийОбъект, Отказ); +КонецПроцедуры + &НаСервере Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) @@ -111,6 +127,12 @@ КонецПроцедуры +&НаКлиенте +Процедура ИнфоНадписьЗаголовокОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка) + СтандартнаяОбработка = Ложь; + ОткрытьНастройкуОтложенногоСтарта(); +КонецПроцедуры + &НаКлиенте Процедура ИсполнительНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) @@ -304,6 +326,11 @@ КонецПроцедуры +&НаКлиенте +Процедура НастроитьОтложенныйСтарт(Команда) + ОткрытьНастройкуОтложенногоСтарта(); +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -357,57 +384,22 @@ НачальныйПризнакСтарта = Объект.Стартован; + УстановитьРеквизитыОтложенногоСтарта(); + ИспользоватьДатуИВремяВСрокахЗадач = ПолучитьФункциональнуюОпцию("ИспользоватьДатуИВремяВСрокахЗадач"); - Элементы.СрокИсполненияВремя.Видимость = ИспользоватьДатуИВремяВСрокахЗадач; - Элементы.СрокПроверкиВремя.Видимость = ИспользоватьДатуИВремяВСрокахЗадач; - Элементы.Дата.Формат = ?(ИспользоватьДатуИВремяВСрокахЗадач, "ДЛФ=DT", "ДЛФ=D"); + ИзменятьЗаданияЗаднимЧислом = ПолучитьФункциональнуюОпцию("ИзменятьЗаданияЗаднимЧислом"); + ИспользоватьПодчиненныеБизнесПроцессы = ПолучитьФункциональнуюОпцию("ИспользоватьПодчиненныеБизнесПроцессы"); - Элементы.Предмет.Гиперссылка = Объект.Предмет <> Неопределено И НЕ Объект.Предмет.Пустая(); ПредметСтрокой = ОбщегоНазначения.ПредметСтрокой(Объект.Предмет); - Элементы.ГруппаСостояние.Видимость = Объект.Завершен Или Объект.Стартован; - Если Объект.Завершен Тогда - ДатаЗавершенияСтрокой = ?(ИспользоватьДатуИВремяВСрокахЗадач, - Формат(Объект.ДатаЗавершения, "ДЛФ=DT"), Формат(Объект.ДатаЗавершения, "ДЛФ=D")); - ТекстСостояния = ?(Объект.Выполнено, - НСтр("ru = 'Задание выполнено %1.'"), - НСтр("ru = 'Задание отменено %1.'")); - Элементы.ДекорацияТекст.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСостояния, ДатаЗавершенияСтрокой); - - Для каждого Элемент Из Элементы Цикл - Если ТипЗнч(Элемент) <> Тип("ПолеФормы") И ТипЗнч(Элемент) <> Тип("ГруппаФормы") Тогда - Продолжить; - КонецЕсли; - Элемент.ТолькоПросмотр = Истина; - КонецЦикла; - - Иначе - - ТекстСостояния = ?(ПолучитьФункциональнуюОпцию("ИзменятьЗаданияЗаднимЧислом"), - НСтр("ru = 'Изменения формулировки, важности, автора, а также перенос сроков исполнения и проверки задания - |вступят в силу немедленно для ранее выданной задачи.'"), - НСтр("ru = 'Изменения формулировки, важности, автора, а также перенос сроков исполнения и проверки задания - |не будут отражены в ранее выданной задаче.'")); - Элементы.ДекорацияТекст.Заголовок = ТекстСостояния; - КонецЕсли; - - Элементы.ФормаСтартИЗакрыть.Видимость = Не Объект.Стартован; - Элементы.ФормаСтартИЗакрыть.КнопкаПоУмолчанию = Не Объект.Стартован; - Элементы.ФормаСтарт.Видимость = Не Объект.Стартован; - Элементы.ФормаЗаписатьИЗакрыть.Видимость = Объект.Стартован; - Элементы.ФормаЗаписатьИЗакрыть.КнопкаПоУмолчанию = Объект.Стартован; Если Объект.ГлавнаяЗадача = Неопределено Или Объект.ГлавнаяЗадача.Пустая() Тогда - Элементы.ГлавнаяЗадача.Гиперссылка = Ложь; ГлавнаяЗадачаСтрокой = НСтр("ru = 'не задана'"); Иначе ГлавнаяЗадачаСтрокой = Строка(Объект.ГлавнаяЗадача); КонецЕсли; - Если Не ПолучитьФункциональнуюОпцию("ИспользоватьПодчиненныеБизнесПроцессы") Тогда - Элементы.ГлавнаяЗадача.Видимость = Ложь; - КонецЕсли; + УстановитьСвойстваЭлементовФормы(ЭтаФорма); - УстановитьДоступностьПроверяющего(ЭтотОбъект); КонецПроцедуры &НаКлиенте @@ -446,4 +438,173 @@ КонецФункции +&НаКлиентеНаСервереБезКонтекста +Процедура УстановитьСвойстваЭлементовФормы(Форма) + + Если Форма.ТолькоПросмотр Тогда + Форма.Элементы.ФормаОстановить.Видимость = Ложь; + Форма.Элементы.ФормаЗаписатьИЗакрыть.Видимость = Ложь; + Форма.Элементы.ФормаНастроитьОтложенныйСтарт.Видимость = Ложь; + Форма.Элементы.ФормаЗаписать.Видимость = Ложь; + Форма.Элементы.ФормаПродолжить.Видимость = Ложь; + Иначе + Форма.Элементы.СрокИсполненияВремя.Видимость = Форма.ИспользоватьДатуИВремяВСрокахЗадач; + Форма.Элементы.СрокПроверкиВремя.Видимость = Форма.ИспользоватьДатуИВремяВСрокахЗадач; + Форма.Элементы.Дата.Формат = ?(Форма.ИспользоватьДатуИВремяВСрокахЗадач, "ДЛФ=DT", "ДЛФ=D"); + + Форма.Элементы.Предмет.Гиперссылка = Форма.Объект.Предмет <> Неопределено И НЕ Форма.Объект.Предмет.Пустая(); + + Форма.Элементы.ФормаСтартИЗакрыть.Видимость = Не ОбъектСтартован(Форма); + Форма.Элементы.ФормаСтартИЗакрыть.КнопкаПоУмолчанию = Не ОбъектСтартован(Форма); + Форма.Элементы.ФормаСтарт.Видимость = Не ОбъектСтартован(Форма); + Форма.Элементы.ФормаЗаписатьИЗакрыть.Видимость = ОбъектСтартован(Форма); + Форма.Элементы.ФормаЗаписатьИЗакрыть.КнопкаПоУмолчанию = ОбъектСтартован(Форма); + + Форма.Элементы.ФормаНастроитьОтложенныйСтарт.Доступность = Не Форма.Объект.Стартован; + + Если Форма.Объект.ГлавнаяЗадача = Неопределено Или Форма.Объект.ГлавнаяЗадача.Пустая() Тогда + Форма.Элементы.ГлавнаяЗадача.Гиперссылка = Ложь; + КонецЕсли; + + Если Не Форма.ИспользоватьПодчиненныеБизнесПроцессы Тогда + Форма.Элементы.ГлавнаяЗадача.Видимость = Ложь; + КонецЕсли; + КонецЕсли; + + УстановитьСвойстваГруппеСостояний(Форма); + УстановитьДоступностьПроверяющего(Форма); + +КонецПроцедуры + +&НаКлиентеНаСервереБезКонтекста +Процедура УстановитьСвойстваГруппеСостояний(Форма) + + ОтображатьГруппу = Форма.Объект.Завершен Или ОбъектСтартован(Форма); + Форма.Элементы.ГруппаСостояние.Видимость = ОтображатьГруппу; + + Если НЕ ОтображатьГруппу Тогда + Возврат; + КонецЕсли; + + МассивСтрок = Новый Массив; + Высота = 1; + + Если Форма.Объект.Завершен Тогда + ДатаЗавершенияСтрокой = ?(Форма.ИспользоватьДатуИВремяВСрокахЗадач, + Формат(Форма.Объект.ДатаЗавершения, "ДЛФ=DT"), Формат(Форма.Объект.ДатаЗавершения, "ДЛФ=D")); + СтрокаТекста = ?(Форма.Объект.Выполнено, + НСтр("ru = 'Задание выполнено %1.'"), + НСтр("ru = 'Задание отменено %1.'")); + ТекстСостояния = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаТекста, ДатаЗавершенияСтрокой); + МассивСтрок.Добавить(ТекстСостояния); + + Для каждого Элемент Из Форма.Элементы Цикл + Если ТипЗнч(Элемент) <> Тип("ПолеФормы") И ТипЗнч(Элемент) <> Тип("ГруппаФормы") Тогда + Продолжить; + КонецЕсли; + Элемент.ТолькоПросмотр = Истина; + КонецЦикла; + + ИначеЕсли Форма.Объект.Стартован Тогда + ТекстСостояния = ?(Форма.ИзменятьЗаданияЗаднимЧислом, + НСтр("ru = 'Изменения формулировки, важности, автора, а также перенос сроков исполнения и проверки задания вступят в силу немедленно для ранее выданной задачи.'"), + НСтр("ru = 'Изменения формулировки, важности, автора, а также перенос сроков исполнения и проверки задания не будут отражены в ранее выданной задаче.'")); + МассивСтрок.Добавить(ТекстСостояния); + Высота = 2; + + ИначеЕсли Форма.Отложен Тогда + ДатаОтложенногоСтартаСтрокой = ?(Форма.ИспользоватьДатуИВремяВСрокахЗадач, + Формат(Форма.ДатаОтложенногоСтарта, "ДЛФ=DT"), Формат(Форма.ДатаОтложенногоСтарта, "ДЛФ=D")); + ТекстСостояния = НСтр("ru = 'Задание будет запущено'") + " "; + МассивСтрок.Добавить(ТекстСостояния); + МассивСтрок.Добавить(Новый ФорматированнаяСтрока(ДатаОтложенногоСтартаСтрокой,,,, "ОткрытьНастройкуОтложенногоСтарта")); + КонецЕсли; + + Форма.ИнфоНадписьЗаголовок = Новый ФорматированнаяСтрока(МассивСтрок); + Форма.Элементы.ИнфоНадписьЗаголовок.МаксимальнаяВысота = Высота; + +КонецПроцедуры + +&НаСервере +Процедура ПроверитьДатуЗавершенияОтложенногоПроцесса(ПроверяемыйОбъект, Отказ) + + Если Не ЗначениеЗаполнено(ПроверяемыйОбъект.СрокИсполнения) Тогда + Возврат; + КонецЕсли; + + ДатаОтложенногоСтарта = БизнесПроцессыИЗадачиСервер.ДатаОтложенногоСтартаПроцесса(ПроверяемыйОбъект.Ссылка); + + Если ПроверяемыйОбъект.СрокИсполнения < ДатаОтложенногоСтарта Тогда + Ошибки = Неопределено; + ОбщегоНазначенияКлиентСервер.ДобавитьОшибкуПользователю( + Ошибки, + "Объект.СрокИсполнения", + НСтр("ru = 'Срок исполнения задания не может быть меньше даты отложенного старта.'"), ""); + КонецЕсли; + + ОбщегоНазначенияКлиентСервер.СообщитьОшибкиПользователю(Ошибки, Отказ); + +КонецПроцедуры + +&НаКлиенте +Процедура ОткрытьНастройкуОтложенногоСтарта() + + Если КлючевыеРеквизитыФормыЗаполнены() Тогда + БизнесПроцессыИЗадачиКлиент.НастроитьОтложенныйСтарт(Объект.Ссылка, Объект.СрокИсполнения); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Функция КлючевыеРеквизитыФормыЗаполнены() + + Если Объект.Стартован Тогда + Возврат Истина; + КонецЕсли; + + ОшибкиПользователю = Неопределено; + ОчиститьСообщения(); + + Если НЕ ЗначениеЗаполнено(Объект.Исполнитель) Тогда + ОбщегоНазначенияКлиентСервер.ДобавитьОшибкуПользователю( + ОшибкиПользователю, + "Объект.Исполнитель", + НСтр("ru = 'Поле ""Исполнитель"" не заполнено.'"), + ""); + КонецЕсли; + Если НЕ ЗначениеЗаполнено(Объект.Наименование) Тогда + ОбщегоНазначенияКлиентСервер.ДобавитьОшибкуПользователю( + ОшибкиПользователю, + "Объект.Наименование", + НСтр("ru = 'Поле ""Задание"" не заполнено.'"), + ""); + КонецЕсли; + Если НЕ ЗначениеЗаполнено(Объект.СрокИсполнения) Тогда + ОбщегоНазначенияКлиентСервер.ДобавитьОшибкуПользователю( + ОшибкиПользователю, + "Объект.СрокИсполнения", + НСтр("ru = 'Поле ""Срок"" исполнения не заполнено.'"), + ""); + КонецЕсли; + + РеквизитыФормыНеЗаполнены = Ложь; + ОбщегоНазначенияКлиентСервер.СообщитьОшибкиПользователю(ОшибкиПользователю, РеквизитыФормыНеЗаполнены); + + Возврат Не РеквизитыФормыНеЗаполнены; + +КонецФункции + +&НаКлиентеНаСервереБезКонтекста +Функция ОбъектСтартован(Форма) + Возврат Форма.Объект.Стартован ИЛИ Форма.Отложен; +КонецФункции + +&НаСервере +Процедура УстановитьРеквизитыОтложенногоСтарта() + + ДатаОтложенногоСтарта = БизнесПроцессыИЗадачиСервер.ДатаОтложенногоСтартаПроцесса(Объект.Ссылка); + Отложен = (ДатаОтложенногоСтарта <> '00010101'); + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/BusinessProcesses/Задание/Forms/ФормаСписка/Form.form b/SSL/src/BusinessProcesses/Задание/Forms/ФормаСписка/Form.form index 46800e8b3..233f6370e 100644 --- a/SSL/src/BusinessProcesses/Задание/Forms/ФормаСписка/Form.form +++ b/SSL/src/BusinessProcesses/Задание/Forms/ФормаСписка/Form.form @@ -42,7 +42,6 @@ 35 true true - false true true false @@ -91,7 +90,6 @@ 35 true true - false true true false @@ -137,7 +135,6 @@ 35 true true - false true true false @@ -263,7 +260,6 @@ ru Флажки - true ФлажкиExtendedTooltip 63 @@ -295,7 +291,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 93 @@ -497,59 +492,6 @@
    - - Остановлен - 46 - true - true - - true - - - Список.Остановлен - - None - - ru - Бизнес-процесс остановлен - - - ОстановленExtendedTooltip - 71 - Label - true - true - - Left - - - - ОстановленКонтекстноеМеню - 47 - true - - PictureField - Enter - true - - CommonPicture.ЗнакСтопЧБ - - Left - true - - 2 - true - true - true - - CommonPicture.ЗнакСтоп - - - - 1 - - - Номер 4 @@ -831,37 +773,6 @@ false - - Стартован - 12 - true - true - - - Список.Started - - - СтартованExtendedTooltip - 80 - Label - true - true - - Left - - - - СтартованКонтекстноеМеню - 13 - true - - CheckBoxField - Enter - true - Left - true - - ДатаЗавершения 38 @@ -1309,8 +1220,11 @@ true true - Список.DefaultPicture + Список.КартинкаСтроки + + CommonPicture.СостоянияПроцессов + None None None @@ -1399,6 +1313,22 @@ БизнесПроцессЗадание.РезультатВыполнения, БизнесПроцессЗадание.СрокИсполнения, БизнесПроцессЗадание.СрокПроверки, + ВЫБОР + КОГДА БизнесПроцессЗадание.ПометкаУдаления + ТОГДА 6 + КОГДА БизнесПроцессЗадание.Завершен = ИСТИНА + ТОГДА 5 + КОГДА БизнесПроцессЗадание.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияБизнесПроцессов.Остановлен) + ТОГДА 4 + КОГДА БизнесПроцессЗадание.Стартован = ИСТИНА + ТОГДА 3 + КОГДА ПроцессыДляЗапуска.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияПроцессовДляЗапуска.ГотовКСтарту) + И ПроцессыДляЗапуска.ДатаОтложенногоСтарта <> ДАТАВРЕМЯ(1, 1, 1) + ТОГДА 1 + КОГДА ПроцессыДляЗапуска.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияПроцессовДляЗапуска.СтартОтменен) + ТОГДА 2 + ИНАЧЕ 0 + КОНЕЦ КАК КартинкаСтроки, ВЫБОР КОГДА БизнесПроцессЗадание.Важность = ЗНАЧЕНИЕ(Перечисление.ВариантыВажностиЗадачи.Низкая) ТОГДА 0 @@ -1411,9 +1341,16 @@ ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ КАК Остановлен, - БизнесПроцессЗадание.ЗадачаИсточник + БизнесПроцессЗадание.ЗадачаИсточник, + ВЫБОР + КОГДА ПроцессыДляЗапуска.Состояние ЕСТЬ NULL + ТОГДА ЛОЖЬ + ИНАЧЕ ИСТИНА + КОНЕЦ КАК Отложен ИЗ - БизнесПроцесс.Задание КАК БизнесПроцессЗадание + БизнесПроцесс.Задание КАК БизнесПроцессЗадание + ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПроцессыДляЗапуска КАК ПроцессыДляЗапуска + ПО БизнесПроцессЗадание.Ссылка = ПроцессыДляЗапуска.БизнесПроцесс BusinessProcess.Задание true true diff --git a/SSL/src/BusinessProcesses/Задание/Forms/ФормаСписка/Module.bsl b/SSL/src/BusinessProcesses/Задание/Forms/ФормаСписка/Module.bsl index aede6e8eb..26e009c70 100644 --- a/SSL/src/BusinessProcesses/Задание/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/BusinessProcesses/Задание/Forms/ФормаСписка/Module.bsl @@ -18,6 +18,8 @@ Элементы.СрокИсполнения.Формат = ?(ИспользоватьДатуИВремяВСрокахЗадач, "ДЛФ=DT", "ДЛФ=D"); Элементы.СрокПроверки.Формат = ?(ИспользоватьДатуИВремяВСрокахЗадач, "ДЛФ=DT", "ДЛФ=D"); БизнесПроцессыИЗадачиСервер.УстановитьОформлениеБизнесПроцессов(Список.УсловноеОформление); + Элементы.ФормаОстановить.Видимость = ПравоДоступа("Изменение", Метаданные.БизнесПроцессы.Задание); + КонецПроцедуры &НаСервере diff --git a/SSL/src/BusinessProcesses/Задание/Help/ru.html b/SSL/src/BusinessProcesses/Задание/Help/ru.html index c44dc2aed..0831fb917 100644 --- a/SSL/src/BusinessProcesses/Задание/Help/ru.html +++ b/SSL/src/BusinessProcesses/Задание/Help/ru.html @@ -5,8 +5,7 @@

    Открывается по команде Задания в разделе Бизнес-процессы и задачи.

    В списке выводится:

    •  - важность, принимает значения Обычная (по умолчанию), Низкая, Высокая. Для того чтобы выделить бизнес-процесс из списка, или наоборот, указать, что выполнение этого бизнес-процесса может быть отложено, выбираются соответствующие значения этого поля. -
    •  - остановленные бизнес-процессы в этой колонке обозначаются значком . Для того чтобы Остановить или Продолжить бизнес-процесс, воспользуйтесь соответствующими кнопками. -
    • Номер - номер проставляется программой автоматически, рядом с номером проставляется значок , обозначающий вид бизнес-процесса Задание. Если бизнес-процесс не стартован, значок будет неактивным (серым). +
    • Номер - номер проставляется программой автоматически, рядом с номером проставляется один из значков , обозначающий состояние бизнес-процесса Задание.
    • Дата - дата и время создания бизнес-процесса Задание.
    • Задание - полное наименование.
    • Срок исполнения - дата и время, к которому Задание должно быть выполнено. @@ -15,5 +14,7 @@
    • Программа автоматически отбирает задания по полю Автор для текущего пользователя. Можно отобрать задания по любому Автору, для этого выберите его из списка пользователей.
    • Для отбора по полю Исполнитель также можно выбрать нужного из списка пользователей, в случае ролевой адресации становится доступным список исполнителей роли.

    Просмотр всех заданий

    • Установите соответствующие флажки, для того чтобы Показывать завершенные и остановленные задания. По умолчанию флажки сняты.

    Ввод нового задания

    -
    • Нажмите Создать, заполните необходимые поля.

    См. также:

    +
    • Нажмите Создать, заполните необходимые поля.

    Управление движением бизнес-процесса

    +
    • С помощью кнопки можно Остановить начатый бизнес-процесс. +
    • С помощью кнопки Продолжить в любой момент можно возобновить выполнение остановленного бизнес-процесса.

    См. также:

    \ No newline at end of file diff --git a/SSL/src/BusinessProcesses/Задание/ManagerModule.bsl b/SSL/src/BusinessProcesses/Задание/ManagerModule.bsl index 0fff616a3..8bd6543d3 100644 --- a/SSL/src/BusinessProcesses/Задание/ManagerModule.bsl +++ b/SSL/src/BusinessProcesses/Задание/ManagerModule.bsl @@ -97,9 +97,121 @@ #КонецЕсли #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда - + #Область СлужебныеПроцедурыИФункции +//////////////////////////////////////////////////////////////////////////////// +// Обработчики обновления + +// Регистрирует на плане обмена ОбновлениеИнформационнойБазы объекты, +// которые необходимо обновить на новую версию. +// +Процедура ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию(Параметры) Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ТаблицаСНаборамиЗначенийДоступа.Ссылка + |ИЗ + | %1 КАК ТаблицаСНаборамиЗначенийДоступа + |УПОРЯДОЧИТЬ ПО + | ТаблицаСНаборамиЗначенийДоступа.Дата УБЫВ"; + + Запрос.Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Запрос.Текст, Метаданные.БизнесПроцессы.Задание.ПолноеИмя()); + МассивСсылок = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка"); + + ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры, МассивСсылок); + +КонецПроцедуры + +Процедура ОбработатьДанныеДляПереходаНаНовуюВерсию(Параметры) Экспорт + + БизнесПроцесс = Метаданные.БизнесПроцессы.Задание; + ИмяПроцедуры = "БизнесПроцессы.Задание.ОбработатьДанныеДляПереходаНаНовуюВерсию"; + + ПроблемныхОбъектов = 0; + ОбъектовОбработано = 0; + + Задание = ОбновлениеИнформационнойБазы.ВыбратьСсылкиДляОбработки(Параметры.Очередь, "БизнесПроцесс.Задание"); + + Пока Задание.Следующий() Цикл + Попытка + ОбновитьНаборыЗначенийДоступаЗадания(Параметры, Задание.Ссылка); + ОбъектовОбработано = ОбъектовОбработано + 1; + Исключение + // Если не удалось обработать задание, повторяем попытку снова. + ПроблемныхОбъектов = ПроблемныхОбъектов + 1; + + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось обновить права доступа для ""%1"" в обработчике ""%2"" по причине: + |%3'"), + Задание.Ссылка, ИмяПроцедуры, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение, + БизнесПроцесс, Задание.Ссылка, ТекстСообщения); + КонецПопытки; + КонецЦикла; + + Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(Параметры.Очередь, "БизнесПроцесс.Задание"); + Если ОбъектовОбработано = 0 И ПроблемныхОбъектов <> 0 Тогда + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Процедуре ""%1"" не удалось обновить права доступа для некоторых объектов (пропущены): %2'"), + ИмяПроцедуры, ПроблемныхОбъектов); + ВызватьИсключение ТекстСообщения; + КонецЕсли; + + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Информация, + БизнесПроцесс,, СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Процедура ""%1"" обновила права доступа для очередной порции объектов: %2'"), + ИмяПроцедуры, ОбъектовОбработано)); + +КонецПроцедуры + +Процедура ОбновитьНаборыЗначенийДоступаЗадания(Параметры, ЗаданиеСсылка) + + МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом"); + НачатьТранзакцию(); + + Попытка + // Блокируем объект от изменения другими сеансами. + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("БизнесПроцесс.Задание"); + ЭлементБлокировки.УстановитьЗначение("Ссылка", ЗаданиеСсылка); + Блокировка.Заблокировать(); + + ЗаданиеОбъект = ЗаданиеСсылка.ПолучитьОбъект(); + Если ЗаданиеОбъект = Неопределено + Или ЗаданиеОбъект.ГруппаИсполнителейЗадач <> Справочники.ГруппыИсполнителейЗадач.ПустаяСсылка() Тогда + ОтменитьТранзакцию(); + ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(ЗаданиеСсылка); + Возврат; + КонецЕсли; + + ЗаданиеОбъект.ГруппаИсполнителейЗадач = ?(ТипЗнч(ЗаданиеОбъект.Исполнитель) = Тип("СправочникСсылка.РолиИсполнителей"), + БизнесПроцессыИЗадачиСервер.ГруппаИсполнителейЗадач(ЗаданиеОбъект.Исполнитель, + ЗаданиеОбъект.ОсновнойОбъектАдресации, ЗаданиеОбъект.ДополнительныйОбъектАдресации), + ЗаданиеОбъект.Исполнитель); + ЗаданиеОбъект.ГруппаИсполнителейЗадачПроверяющий = ?(ТипЗнч(ЗаданиеОбъект.Проверяющий) = Тип("СправочникСсылка.РолиИсполнителей"), + БизнесПроцессыИЗадачиСервер.ГруппаИсполнителейЗадач(ЗаданиеОбъект.Проверяющий, + ЗаданиеОбъект.ОсновнойОбъектАдресацииПроверяющий, ЗаданиеОбъект.ДополнительныйОбъектАдресацииПроверяющий), + ЗаданиеОбъект.Проверяющий); + + МодульУправлениеДоступом.ОбновитьНаборыЗначенийДоступа(ЗаданиеОбъект); + Если ЗаданиеОбъект.Модифицированность() Тогда + ОбновлениеИнформационнойБазы.ЗаписатьДанные(ЗаданиеОбъект); + Иначе + ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(ЗаданиеСсылка); + КонецЕсли; + + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Прочие + // Устанавливает состояние элементов формы задачи. Процедура УстановитьСостояниеЭлементовФормыЗадачи(Форма) Экспорт diff --git a/SSL/src/BusinessProcesses/Задание/ObjectModule.bsl b/SSL/src/BusinessProcesses/Задание/ObjectModule.bsl index 9fc1ad5d9..a12aa3336 100644 --- a/SSL/src/BusinessProcesses/Задание/ObjectModule.bsl +++ b/SSL/src/BusinessProcesses/Задание/ObjectModule.bsl @@ -4,11 +4,18 @@ // СтандартныеПодсистемы.УправлениеДоступом -// См. описание в комментарии к одноименной процедуре в модуле УправлениеДоступом. +// Процедура ЗаполнитьНаборыЗначенийДоступа(Таблица) создается прикладным разработчиком +// в модулях объектов, тип которых задан в одной из подписок на событие. +// ЗаписатьНаборыЗначенийДоступа или ЗаписатьЗависимыеНаборыЗначенийДоступа. +// В процедуре выполняется заполнение наборов значений доступа по свойствам объекта. +// +// Параметры: +// Таблица - ТаблицаЗначений - возвращаемая функцией ТаблицаНаборыЗначенийДоступа. +// Процедура ЗаполнитьНаборыЗначенийДоступа(Таблица) Экспорт // Логика ограничения для - // - чтения: Автор ИЛИ Исполнитель (с учетом адресации) ИЛИ Проверяющий (с учетом адресации) ИЛИ Предмет + // - чтения: Автор ИЛИ Исполнитель (с учетом адресации) ИЛИ Проверяющий (с учетом адресации) // - изменения: Автор. // Если предмет не задан (т.е. бизнес-процесс без основания), @@ -33,35 +40,6 @@ Строка.Чтение = Истина; Строка.ЗначениеДоступа = ГруппаИсполнителейЗадачПроверяющий; - // Чтение: набор № 4. - МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом"); - Если ТипЗнч(Предмет) = Тип("СправочникСсылка.Пользователи") Тогда - - Строка = Таблица.Добавить(); - Строка.НомерНабора = 4; - Строка.Чтение = Истина; - Строка.ЗначениеДоступа = Предмет; - - ИначеЕсли ЗначениеЗаполнено(Предмет) И МодульУправлениеДоступом.ВозможноЗаполнитьНаборыЗначенийДоступа(Предмет) Тогда - - НаборыГруппыДоступаИсполнителей = МодульУправлениеДоступом.ТаблицаНаборыЗначенийДоступа(); - Строка = НаборыГруппыДоступаИсполнителей.Добавить(); - Строка.Чтение = Истина; - Строка.ЗначениеДоступа = ГруппаИсполнителейЗадач; - - Строка = НаборыГруппыДоступаИсполнителей.Добавить(); - Строка.Чтение = Истина; - Строка.ЗначениеДоступа = ГруппаИсполнителейЗадачПроверяющий; - - НаборыПредмета = МодульУправлениеДоступом.ТаблицаНаборыЗначенийДоступа(); - МодульУправлениеДоступом.ЗаполнитьНаборыЗначенийДоступа(Предмет, НаборыПредмета, Ссылка); - НаборыПредмета = НаборыПредмета.Скопировать(НаборыПредмета.НайтиСтроки(Новый Структура("Чтение", Истина))); - - МодульУправлениеДоступом.ДобавитьНаборыЗначенийДоступа(НаборыПредмета, НаборыГруппыДоступаИсполнителей, Истина); - МодульУправлениеДоступом.ДобавитьНаборыЗначенийДоступа(Таблица, НаборыПредмета); - - КонецЕсли; - КонецПроцедуры // Конец СтандартныеПодсистемы.УправлениеДоступом diff --git a/SSL/src/Catalogs/Валюты/Forms/ПодборВалютИзКлассификатора/Form.form b/SSL/src/Catalogs/Валюты/Forms/ПодборВалютИзКлассификатора/Form.form index 2d41d5b02..f2f737510 100644 --- a/SSL/src/Catalogs/Валюты/Forms/ПодборВалютИзКлассификатора/Form.form +++ b/SSL/src/Catalogs/Валюты/Forms/ПодборВалютИзКлассификатора/Form.form @@ -28,6 +28,10 @@ КодВалюты 4 + + <key>ru</key> + <value>Цифр. код</value> + true true @@ -57,7 +61,7 @@ Left true - 3 + 9 true true false @@ -70,6 +74,10 @@ КраткоеНаименование 6 + + <key>ru</key> + <value>Симв. код</value> + true true @@ -99,7 +107,7 @@ Left true - 3 + 9 true true false @@ -202,9 +210,10 @@ Валюты.Загружается + None ru - Валюта может быть загружена с сайта РБК + Валюта может быть загружена с сайта 1С ЗагружаетсяExtendedTooltip @@ -224,6 +233,9 @@ CheckBoxField Enter true + + StdPicture.Refresh + Left true @@ -549,8 +561,7 @@ OnCreateAtServer ПриСозданииНаСервере - 90 - DontBlock + LockOwner true true true diff --git a/SSL/src/Catalogs/Валюты/Forms/ПодборВалютИзКлассификатора/Help/ru.html b/SSL/src/Catalogs/Валюты/Forms/ПодборВалютИзКлассификатора/Help/ru.html index d712b189d..8091c906a 100644 --- a/SSL/src/Catalogs/Валюты/Forms/ПодборВалютИзКлассификатора/Help/ru.html +++ b/SSL/src/Catalogs/Валюты/Forms/ПодборВалютИзКлассификатора/Help/ru.html @@ -2,7 +2,7 @@

    Содержит общую информацию о валютах и предназначен для добавления новых валют (рекомендуется для корректного заполнения данных о валюте).

    В Общероссийском классификаторе валют выводится:

    • -
      Код числовой - уникальный числовой код, принят международным стандартом, служит для идентификации валюты при загрузке курсов из сети Интернет (с сайта РБК).
      +
      Код числовой - уникальный числовой код, принят международным стандартом, служит для идентификации валюты при загрузке курсов из сети Интернет (с сайта 1С).
    • Код символьный - принят международным стандартом, используется как краткое наименование и основное представление валюты.
    • @@ -10,7 +10,7 @@
    • Страны и территории - указываются страны или территории, в которых данная валюта используется в качестве основной.
    • -
      Загружается из сети Интернет - если флажок включен, то валюта может загружаться с сайта РБК.

    Добавление валюты из классификатора в список валют

    +
    Загружается из сети Интернет - если флажок включен, то валюта может загружаться с сайта 1С.

    Добавление валюты из классификатора в список валют

    • Выделив одну или несколько валют, нажмите кнопку Выбрать.
    • diff --git a/SSL/src/Catalogs/Валюты/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/Валюты/Forms/ФормаСписка/Form.form index aaee76728..5c3317946 100644 --- a/SSL/src/Catalogs/Валюты/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/Валюты/Forms/ФормаСписка/Form.form @@ -39,6 +39,124 @@ КоманднаяПанель 64 + + Создать + 77 + + ФормаПодборИзОКВ + 44 + true + true + + true + + + ФормаПодборИзОКВExtendedTooltip + 51 + Label + true + true + + Left + + + Form.Command.ПодборИзОКВ + Normal + Auto + true + true + UserCmds + Auto + + + СоздатьВалюту + 85 + + <key>ru</key> + <value>Новую</value> + + true + true + + true + + + СоздатьВалютуРасширеннаяПодсказка + 86 + Label + true + true + + Left + + + Form.StandardCommand.Create + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Создать</value> + + + ru + Создать + + + СоздатьРасширеннаяПодсказка + 78 + Label + true + true + + Left + + + Popup + + Auto + Normal + + + + КомандыФормы + 79 + true + true + + true + + + <key>ru</key> + <value>Команды формы</value> + + + ru + Команды формы + + + КомандыФормыРасширеннаяПодсказка + 80 + Label + true + true + + Left + + + + Form + + ФормаЗагрузитьКурсыВалют 43 @@ -66,16 +184,16 @@ Auto - ФормаПодборИзОКВ - 44 + Справка + 81 true true true - ФормаПодборИзОКВExtendedTooltip - 51 + СправкаРасширеннаяПодсказка + 82 Label true true @@ -83,7 +201,7 @@ Left - Form.Command.ПодборИзОКВ + Form.StandardCommand.Help Normal Auto true @@ -117,7 +235,6 @@ CommandBar Left - Form @@ -491,10 +608,6 @@ Left true - - BeforeAddRow - ВалютыПередНачаломДобавления - ВалютыСтрокаПоиска 68 @@ -700,7 +813,7 @@ ПодборИзОКВ <key>ru</key> - <value>Подобрать из классификатора...</value> + <value>По классификатору...</value> 1 @@ -727,7 +840,7 @@ 2 ru - Загрузить курсы валют с веб-сайта РБК + Загрузить курсы валют с веб-сайта 1С true diff --git a/SSL/src/Catalogs/Валюты/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/Валюты/Forms/ФормаСписка/Module.bsl index aee73f3c8..31a5a723d 100644 --- a/SSL/src/Catalogs/Валюты/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/Валюты/Forms/ФормаСписка/Module.bsl @@ -41,30 +41,11 @@ #КонецОбласти -#Область ОбработчикиСобытийЭлементовТаблицыФормыВалюты - -&НаКлиенте -Процедура ВалютыПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа) - Текст = НСтр("ru = 'Есть возможность подобрать валюту из классификатора. - |Подобрать?'"); - Оповещение = Новый ОписаниеОповещения("ВалютыПередНачаломДобавленияЗавершение", ЭтотОбъект); - КнопкиВыбора = Новый СписокЗначений(); - КнопкиВыбора.Добавить(КодВозвратаДиалога.Да, "Подобрать"); - КнопкиВыбора.Добавить(КодВозвратаДиалога.Нет, "Создать"); - КнопкиВыбора.Добавить(КодВозвратаДиалога.Отмена, "Отмена"); - ПоказатьВопрос(Оповещение, Текст,КнопкиВыбора, , КодВозвратаДиалога.Да); - Отказ = Истина; -КонецПроцедуры - -#КонецОбласти - #Область ОбработчикиКомандФормы &НаКлиенте Процедура ПодборИзОКВ(Команда) - - ОткрытьФорму("Справочник.Валюты.Форма.ПодборВалютИзКлассификатора",, ЭтотОбъект); - + ОткрытьФорму("Справочник.Валюты.Форма.ПодборВалютИзКлассификатора", , ЭтотОбъект); КонецПроцедуры &НаКлиенте @@ -74,18 +55,3 @@ КонецПроцедуры #КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -&НаКлиенте -Процедура ВалютыПередНачаломДобавленияЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт - - Если РезультатВопроса = КодВозвратаДиалога.Да Тогда - ОткрытьФорму("Справочник.Валюты.Форма.ПодборВалютИзКлассификатора", , ЭтотОбъект); - ИначеЕсли РезультатВопроса = КодВозвратаДиалога.Нет Тогда - ОткрытьФорму("Справочник.Валюты.ФормаОбъекта"); - КонецЕсли; - -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/Catalogs/Валюты/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/Валюты/Forms/ФормаЭлемента/Form.form index 26a9eab4e..7d27a5303 100644 --- a/SSL/src/Catalogs/Валюты/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/Валюты/Forms/ФормаЭлемента/Form.form @@ -143,16 +143,145 @@ ГруппаСпособУстановкиКурса 106 + + НадписьКурсВалюты + 142 + + <key>ru</key> + <value>Курс валюты:</value> + + true + true + + true + + + НадписьКурсВалютыРасширеннаяПодсказка + 144 + Label + true + true + + Left + + + + НадписьКурсВалютыКонтекстноеМеню + 143 + true + + Label + true + + Left + + + + КурсВалютыВводитсяВручную + 101 + true + true + + true + + + Объект.СпособУстановкиКурса + + None + + OnChange + КурсВалютыПриИзменении + + + КурсВалютыВводитсяВручнуюРасширеннаяПодсказка + 103 + Label + true + true + + Left + + + + КурсВалютыВводитсяВручнуюКонтекстноеМеню + 102 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + вводится вручную + + + Enum.СпособыУстановкиКурсаВалюты.EnumValue.РучнойВвод + + + Vertical + + + + КурсВалютыЗагружаетсяИзИнтернета + 129 + true + true + + true + + + Объект.СпособУстановкиКурса + + None + + OnChange + КурсВалютыПриИзменении + + + КурсВалютыЗагружаетсяИзИнтернетаРасширеннаяПодсказка + 131 + Label + true + true + + Left + + + + КурсВалютыЗагружаетсяИзИнтернетаКонтекстноеМеню + 130 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + загружается из Интернета + + + Enum.СпособыУстановкиКурсаВалюты.EnumValue.ЗагрузкаИзИнтернета + + + Vertical + + - ГруппаСпособУстановкиКурсаЛеваяКолонка - 104 + ГруппаКурсСвязанСДругойВалютой + 138 - КурсВалюты - 101 - - <key>ru</key> - <value>Курс валюты</value> - + КурсВалютыСвязанСКурсомДругойВалюты + 132 true true @@ -161,13 +290,14 @@ Объект.СпособУстановкиКурса + None OnChange КурсВалютыПриИзменении - КурсВалютыРасширеннаяПодсказка - 103 + КурсВалютыСвязанСКурсомДругойВалютыРасширеннаяПодсказка + 134 Label true true @@ -176,8 +306,8 @@ - КурсВалютыКонтекстноеМеню - 102 + КурсВалютыСвязанСКурсомДругойВалютыКонтекстноеМеню + 133 true RadioButtonField @@ -187,24 +317,6 @@ true 1 - - - ru - вводится вручную - - - Enum.СпособыУстановкиКурсаВалюты.EnumValue.РучнойВвод - - - - - ru - загружается из Интернета - - - Enum.СпособыУстановкиКурсаВалюты.EnumValue.ЗагрузкаИзИнтернета - - ru @@ -214,144 +326,9 @@ Enum.СпособыУстановкиКурсаВалюты.EnumValue.НаценкаНаКурсДругойВалюты - - - ru - рассчитывается по формуле: - - - Enum.СпособыУстановкиКурсаВалюты.EnumValue.РасчетПоФормуле - - Vertical - true - true - - true - - - <key>ru</key> - <value>Группа способ установки курса левая колонка</value> - - - ru - Группа способ установки курса левая колонка - - - ГруппаСпособУстановкиКурсаЛеваяКолонкаРасширеннаяПодсказка - 105 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаСпособУстановкиКурсаПраваяКолонка - 108 - - Отступ1 - 110 - true - true - - true - - - Отступ1РасширеннаяПодсказка - 112 - Label - true - true - - Left - - - - Отступ1КонтекстноеМеню - 111 - true - - Label - true - true - - Left - - - - Отступ2 - 113 - true - true - - true - - - Отступ2РасширеннаяПодсказка - 115 - Label - true - true - - Left - - - - Отступ2КонтекстноеМеню - 114 - true - - Label - true - true - - Left - - - - Отступ3 - 116 - true - true - - true - - - Отступ3РасширеннаяПодсказка - 118 - Label - true - true - - Left - - - - Отступ3КонтекстноеМеню - 117 - true - - Label - true - true - - Left - - ГруппаНаценкаНаКурсДругойВалюты 119 @@ -465,7 +442,7 @@ - Декорация1 + ТекстПроцент 126 <key>ru</key> @@ -477,7 +454,7 @@ <common>true</common> </userVisible> <extendedTooltip> - <name>Декорация1РасширеннаяПодсказка</name> + <name>ТекстПроцентРасширеннаяПодсказка</name> <id>128</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> @@ -487,12 +464,11 @@ </extInfo> </extendedTooltip> <contextMenu> - <name>Декорация1КонтекстноеМеню</name> + <name>ТекстПроцентКонтекстноеМеню</name> <id>127</id> <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -531,87 +507,6 @@ <currentRowUse>Auto</currentRowUse> </extInfo> </items> - <items xsi:type="form:FormGroup"> - <name>ГруппаФормулаРасчетаКурса</name> - <id>124</id> - <items xsi:type="form:FormField"> - <name>ФормулаРасчетаКурса</name> - <id>121</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <dataPath xsi:type="form:DataPath"> - <segments>Объект.ФормулаРасчетаКурса</segments> - </dataPath> - <titleLocation>None</titleLocation> - <toolTipRepresentation>Button</toolTipRepresentation> - <extendedTooltip> - <name>ФормулаРасчетаКурсаРасширеннаяПодсказка</name> - <id>123</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>ФормулаРасчетаКурсаКонтекстноеМеню</name> - <id>122</id> - <autoFill>true</autoFill> - </contextMenu> - <type>InputField</type> - <editMode>Enter</editMode> - <showInHeader>true</showInHeader> - <headerHorizontalAlign>Left</headerHorizontalAlign> - <showInFooter>true</showInFooter> - <extInfo xsi:type="form:InputFieldExtInfo"> - <width>33</width> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> - <wrap>true</wrap> - <chooseType>true</chooseType> - <typeDomainEnabled>true</typeDomainEnabled> - <textEdit>true</textEdit> - <textSize>Normal</textSize> - </extInfo> - </items> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <title> - <key>ru</key> - <value>Группа формула расчета курса</value> - - - ru - Группа формула расчета курса - - - ГруппаФормулаРасчетаКурсаРасширеннаяПодсказка - 125 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - true true @@ -619,15 +514,136 @@ <key>ru</key> - <value>Группа способ установки курса правая колонка</value> + <value>Группа курс связан с другой валютой</value> - - ru - Группа способ установки курса правая колонка - - ГруппаСпособУстановкиКурсаПраваяКолонкаРасширеннаяПодсказка - 109 + ГруппаКурсСвязанСДругойВалютойРасширеннаяПодсказка + 139 + Label + true + true + + Left + + + UsualGroup + + Auto + true + Auto + Auto + + + + ГруппаКурсРассчитываетсяПоФормуле + 140 + + КурсВалютыРассчитываетсяПоФормуле + 135 + true + true + + true + + + Объект.СпособУстановкиКурса + + None + + OnChange + КурсВалютыПриИзменении + + + КурсВалютыРассчитываетсяПоФормулеРасширеннаяПодсказка + 137 + Label + true + true + + Left + + + + КурсВалютыРассчитываетсяПоФормулеКонтекстноеМеню + 136 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + рассчитывается по формуле: + + + Enum.СпособыУстановкиКурсаВалюты.EnumValue.РасчетПоФормуле + + + Vertical + + + + ФормулаРасчетаКурса + 121 + true + true + + true + + + Объект.ФормулаРасчетаКурса + + None + Button + + ФормулаРасчетаКурсаРасширеннаяПодсказка + 123 + Label + true + true + + Left + + + + ФормулаРасчетаКурсаКонтекстноеМеню + 122 + true + + InputField + Enter + true + Left + true + + 32 + true + true + false + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа курс рассчитывается по формуле</value> + + + ГруппаКурсРассчитываетсяПоФормулеРасширеннаяПодсказка + 141 Label true true @@ -637,10 +653,8 @@ UsualGroup - Vertical Auto true - true Auto Auto @@ -670,6 +684,7 @@ UsualGroup + Vertical Auto true true @@ -763,7 +778,7 @@ ПолеПрописи4наРусскомОкончаниеВводаТекста 10 - true + 15 true false true @@ -843,7 +858,7 @@ Left 10 - true + 15 true true true @@ -896,7 +911,7 @@ Left 10 - true + 15 true true true @@ -949,7 +964,7 @@ Left 10 - true + 15 true true true @@ -1054,7 +1069,7 @@ ПолеПрописи8наРусскомОкончаниеВводаТекста 10 - true + 15 true false true @@ -1134,7 +1149,7 @@ Left 10 - true + 15 true true true @@ -1187,7 +1202,7 @@ Left 10 - true + 15 true true true @@ -1240,7 +1255,7 @@ Left 10 - true + 15 true true true @@ -1382,11 +1397,6 @@ ru Группа число разрядов дробной части - - ru - Группа число разрядов дробной части - - true ГруппаЧислоРазрядовДробнойЧастиExtendedTooltip 95 @@ -1605,11 +1615,6 @@ true - - ru - Странницы - - true СтранницыExtendedTooltip 73 diff --git a/SSL/src/Catalogs/Валюты/Forms/ФормаЭлемента/Help/ru.html b/SSL/src/Catalogs/Валюты/Forms/ФормаЭлемента/Help/ru.html index 54b3158d2..321427382 100644 --- a/SSL/src/Catalogs/Валюты/Forms/ФормаЭлемента/Help/ru.html +++ b/SSL/src/Catalogs/Валюты/Forms/ФормаЭлемента/Help/ru.html @@ -6,11 +6,11 @@
      • Наименование валюты - полное наименование валюты.
      • -
        Цифровой код - уникальный числовой код, принят международным стандартом, служит для идентификации валюты при загрузке курсов из сети Интернет (с сайта РБК).
        +
        Цифровой код - уникальный числовой код, принят международным стандартом, служит для идентификации валюты при загрузке курсов из сети Интернет (с сайта 1С).
      • Символьный код - принят международным стандартом, используется как краткое наименование и основное представление валюты.
      • -
        Курс валюты - переключатель установлен в положение загружается из интернета, если валюта может загружаться с сайта РБК.

      Особенности использования переключателя Курс валюты

      +
      Курс валюты - переключатель установлен в положение загружается из интернета, если валюта может загружаться с сайта 1С.

    Особенности использования переключателя Курс валюты

    • Положение переключателя Курс валюты загружается из интернета можно изменить в исключительных случаях:
      • @@ -36,7 +36,7 @@

        Просмотр курса валюты

        • Для перевода валютных сумм в рубли используется курс валюты.
        • Нажмите Курсы валют на панели навигации валюты. Можно установить интервал дат для удобства просмотра курсов.

        Ввод курса валюты вручную

        -
        • Курсы основных валют можно загрузить с сайта РБК. Если для валюты загрузка невозможна, то переключатель Курс валюты автоматически устанавливается в положение  вводится вручную. +
          • Курсы основных валют можно загрузить с сайта 1С. Если для валюты загрузка невозможна, то переключатель Курс валюты автоматически устанавливается в положение  вводится вручную.
          • Для того чтобы заполнить курс вручную:
            • Нажмите Курсы валют на панели навигации валюты.
            • Нажмите Создать, заполните курс валюты на нужную дату (по умолчанию установлена текущая дата).

          См. также:

          diff --git a/SSL/src/Catalogs/Валюты/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/Валюты/Forms/ФормаЭлемента/Module.bsl index 0475ab3ba..733c5e57a 100644 --- a/SSL/src/Catalogs/Валюты/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/Валюты/Forms/ФормаЭлемента/Module.bsl @@ -352,6 +352,6 @@ Элементы = Форма.Элементы; Объект = Форма.Объект; Элементы.ГруппаНаценкаНаКурсДругойВалюты.Доступность = Объект.СпособУстановкиКурса = ПредопределенноеЗначение("Перечисление.СпособыУстановкиКурсаВалюты.НаценкаНаКурсДругойВалюты"); - Элементы.ГруппаФормулаРасчетаКурса.Доступность = Объект.СпособУстановкиКурса = ПредопределенноеЗначение("Перечисление.СпособыУстановкиКурсаВалюты.РасчетПоФормуле"); + Элементы.ФормулаРасчетаКурса.Доступность = Объект.СпособУстановкиКурса = ПредопределенноеЗначение("Перечисление.СпособыУстановкиКурсаВалюты.РасчетПоФормуле"); КонецПроцедуры #КонецОбласти diff --git a/SSL/src/Catalogs/Валюты/Help/ru.html b/SSL/src/Catalogs/Валюты/Help/ru.html index 1a575161e..cfbf31080 100644 --- a/SSL/src/Catalogs/Валюты/Help/ru.html +++ b/SSL/src/Catalogs/Валюты/Help/ru.html @@ -20,18 +20,15 @@
        • Краткое наименование - указывается символьный код валюты

      Добавление валюты из Общероссийского классификатора валют (ОКВ)

      • -
        Нажмите Подобрать из классификатора (рекомендуется для корректного ввода валюты).
        +
        Нажмите Создать - По классификатору (рекомендуется для корректного ввода валюты).
      • -
        Следующие поля новой валюты будут заполнены из классификатора автоматически: Наименование, Символьный код, Цифровой код, положение переключателя Курс валюты (будет установлено положение загружается из интернета, если имеется возможность загружать курс этой валюты с сайта РБК).

      Ввод валюты не из классификатора (вручную)

      +
      Следующие поля новой валюты будут заполнены из классификатора автоматически: Наименование, Символьный код, Цифровой код, положение переключателя Курс валюты (будет установлено положение загружается из интернета, если имеется возможность загружать курс этой валюты с сайта 1С).

    Ввод валюты не из классификатора (вручную)

    • -
      Нажмите Создать.
      -
    • -
      В ответ на вопрос программы о подборе из ОКВ нажмите Нет.
      -
    • -

    Загрузка курсов валют

    +
    Нажмите Создать - Новую. Также можно нажать клавишу Ins.
    +
  • Заполните сведения о валюте.
  • Загрузка курсов валют

    См. также:

    +
    Также в программе предусмотрено регламентное задание Загрузка курсов валют для автоматической загрузки курсов валют с сайта 1С.

    См. также:

    \ No newline at end of file diff --git a/SSL/src/Catalogs/Валюты/ManagerModule.bsl b/SSL/src/Catalogs/Валюты/ManagerModule.bsl index 736816a8f..19fdfe8e6 100644 --- a/SSL/src/Catalogs/Валюты/ManagerModule.bsl +++ b/SSL/src/Catalogs/Валюты/ManagerModule.bsl @@ -35,8 +35,10 @@ #Область СлужебныйПрограммныйИнтерфейс -// Отключает у валюты 643 загрузку из интернета. -Процедура ОтключитьЗагрузкуКурсаВалюты643ИзИнтернета(Параметры) Экспорт +// Регистрирует на плане обмена ОбновлениеИнформационнойБазы объекты, +// которые необходимо обновить на новую версию. +// +Процедура ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию(Параметры) Экспорт ТекстЗапроса = "ВЫБРАТЬ @@ -48,16 +50,24 @@ | И Валюты.СпособУстановкиКурса = ЗНАЧЕНИЕ(Перечисление.СпособыУстановкиКурсаВалюты.ЗагрузкаИзИнтернета)"; Запрос = Новый Запрос(ТекстЗапроса); - Выборка = Запрос.Выполнить().Выбрать(); + Результат = Запрос.Выполнить().Выгрузить(); + МассивСсылок = Результат.ВыгрузитьКолонку("Ссылка"); + + ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры, МассивСсылок); + +КонецПроцедуры + +// Отключает у валюты 643 загрузку из интернета. +Процедура ОтключитьЗагрузкуКурсаВалюты643ИзИнтернета(Параметры) Экспорт + Выборка = ОбновлениеИнформационнойБазы.ВыбратьСсылкиДляОбработки(Параметры.Очередь, "Справочник.Валюты"); Пока Выборка.Следующий() Цикл Валюта = Выборка.Ссылка.ПолучитьОбъект(); Валюта.СпособУстановкиКурса = Перечисления.СпособыУстановкиКурсаВалюты.РучнойВвод; ОбновлениеИнформационнойБазы.ЗаписатьДанные(Валюта); КонецЦикла; - Параметры.ОбработкаЗавершена = Истина; - + Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(Параметры.Очередь, "Справочник.Валюты"); КонецПроцедуры #КонецОбласти diff --git a/SSL/src/Catalogs/Валюты/ObjectModule.bsl b/SSL/src/Catalogs/Валюты/ObjectModule.bsl index 0c198ac54..4858aa943 100644 --- a/SSL/src/Catalogs/Валюты/ObjectModule.bsl +++ b/SSL/src/Catalogs/Валюты/ObjectModule.bsl @@ -86,6 +86,8 @@ ПараметрыЗадания.Вставить("СпособУстановкиКурса", СпособУстановкиКурса); ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(Новый УникальныйИдентификатор()); + ПараметрыВыполнения.ОжидатьЗавершение = 0; + ПараметрыВыполнения.ЗапуститьНеВФоне = ОбновлениеИнформационнойБазы.НеобходимоОбновлениеИнформационнойБазы(); Блокировка = Новый БлокировкаДанных; ЭлементБлокировки = Блокировка.Добавить("Справочник.Валюты"); diff --git a/SSL/src/Catalogs/ВариантыОтчетов/Forms/РазмещениеВРазделах/Form.form b/SSL/src/Catalogs/ВариантыОтчетов/Forms/РазмещениеВРазделах/Form.form index 5cd64f397..64617b989 100644 --- a/SSL/src/Catalogs/ВариантыОтчетов/Forms/РазмещениеВРазделах/Form.form +++ b/SSL/src/Catalogs/ВариантыОтчетов/Forms/РазмещениеВРазделах/Form.form @@ -511,8 +511,6 @@ OnCreateAtServer ПриСозданииНаСервере - 70 - 14 LockOwner true true diff --git a/SSL/src/Catalogs/ВариантыОтчетов/Forms/СбросНастроекРазмещения/Form.form b/SSL/src/Catalogs/ВариантыОтчетов/Forms/СбросНастроекРазмещения/Form.form index 95038aeb4..53dffa1d9 100644 --- a/SSL/src/Catalogs/ВариантыОтчетов/Forms/СбросНастроекРазмещения/Form.form +++ b/SSL/src/Catalogs/ВариантыОтчетов/Forms/СбросНастроекРазмещения/Form.form @@ -30,7 +30,6 @@ true Label - true true Left @@ -65,7 +64,6 @@ true Label - true true Left diff --git a/SSL/src/Catalogs/ВариантыОтчетов/Forms/СбросПользовательскихНастроек/Form.form b/SSL/src/Catalogs/ВариантыОтчетов/Forms/СбросПользовательскихНастроек/Form.form index d22927c81..d32fa1775 100644 --- a/SSL/src/Catalogs/ВариантыОтчетов/Forms/СбросПользовательскихНастроек/Form.form +++ b/SSL/src/Catalogs/ВариантыОтчетов/Forms/СбросПользовательскихНастроек/Form.form @@ -30,7 +30,6 @@ true Label - true true Left @@ -65,7 +64,6 @@ true Label - true true Left diff --git a/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаСписка/Form.form index 5c632bfa7..44de0fa9f 100644 --- a/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаСписка/Form.form @@ -1866,7 +1866,7 @@ Варианты.Ссылка, Варианты.ВерсияДанных, Варианты.ПометкаУдаления, - Предопределенные.КлючЗамеров, + ЕСТЬNULL(ИзКонфигурации.КлючЗамеров, ИзРасширений.КлючЗамеров) КАК КлючЗамеров, Варианты.Пользовательский, НЕ Варианты.Пользовательский КАК Предопределенный, Варианты.Наименование, @@ -1877,17 +1877,17 @@ Варианты.Автор, ВЫБОР КОГДА ПОДСТРОКА(Варианты.НаименованияПараметровИОтборов, 1, 1) = "" - ТОГДА ВЫРАЗИТЬ(Предопределенные.НаименованияПараметровИОтборов КАК СТРОКА(1000)) + ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(ИзКонфигурации.НаименованияПараметровИОтборов, ИзРасширений.НаименованияПараметровИОтборов) КАК СТРОКА(1000)) ИНАЧЕ ВЫРАЗИТЬ(Варианты.НаименованияПараметровИОтборов КАК СТРОКА(1000)) КОНЕЦ КАК НаименованияПараметровИОтборов, ВЫБОР КОГДА ПОДСТРОКА(Варианты.НаименованияПолей, 1, 1) = "" - ТОГДА ВЫРАЗИТЬ(Предопределенные.НаименованияПолей КАК СТРОКА(1000)) + ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(ИзКонфигурации.НаименованияПолей, ИзРасширений.НаименованияПолей) КАК СТРОКА(1000)) ИНАЧЕ ВЫРАЗИТЬ(Варианты.НаименованияПолей КАК СТРОКА(1000)) КОНЕЦ КАК НаименованияПолей, ВЫБОР КОГДА ПОДСТРОКА(Варианты.Описание, 1, 1) = "" - ТОГДА ВЫРАЗИТЬ(Предопределенные.Описание КАК СТРОКА(1000)) + ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(ИзКонфигурации.Описание, ИзРасширений.Описание) КАК СТРОКА(1000)) ИНАЧЕ ВЫРАЗИТЬ(Варианты.Описание КАК СТРОКА(1000)) КОНЕЦ КАК Описание, ВЫБОР @@ -1908,12 +1908,14 @@ КОНЕЦ КАК ИндексКартинки ИЗ Справочник.ВариантыОтчетов КАК Варианты - ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетов КАК Предопределенные - ПО Варианты.ПредопределенныйВариант = Предопределенные.Ссылка + ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетов КАК ИзКонфигурации + ПО Варианты.ПредопределенныйВариант = ИзКонфигурации.Ссылка + ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПредопределенныеВариантыОтчетовРасширений КАК ИзРасширений + ПО Варианты.ПредопределенныйВариант = ИзРасширений.Ссылка ГДЕ Варианты.Отчет В(&ДоступныеОтчеты) И ВЫБОР - КОГДА &ВариантыПользователя ЕСТЬ NULL + КОГДА &ВариантыПользователя ЕСТЬ NULL ТОГДА НЕ Варианты.ПредопределенныйВариант В (&ОтключенныеВариантыПрограммы) ИНАЧЕ Варианты.Ссылка В (&ВариантыПользователя) КОНЕЦ @@ -2157,28 +2159,6 @@ ВключаяПодчиненные - - ОтчетыПользователя - - <key>ru</key> - <value>Отчеты пользователя</value> - - 10 - - - - - - ОтключенныеВариантыПрограммы - - <key>ru</key> - <value>Отключенные варианты программы</value> - - 11 - - - - ПараметрыКлиента diff --git a/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаСписка/Module.bsl index 6449d8cc2..f371e9d22 100644 --- a/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаСписка/Module.bsl @@ -20,6 +20,7 @@ Если Параметры.РежимВыбора = Истина Тогда РежимРаботыФормы = "Выбор"; РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; + Элементы.Список.Отображение = ОтображениеТаблицы.Список; ИначеЕсли Параметры.Свойство("РазделСсылка") Или Параметры.Свойство("РазделСсылка") Тогда РежимРаботыФормы = "ВсеОтчетыРаздела"; МассивОбхода = Новый Массив; @@ -348,10 +349,55 @@ КонецЕсли; РезультатВыполнения = РазместитьВариантыВПодсистеме(ПараметрыРазмещения); - ВариантыОтчетовКлиент.ОбновитьОткрытыеФормы(); - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ЭтотОбъект, РезультатВыполнения); + Если ПараметрыРазмещения.Варианты.Всего = РезультатВыполнения.Размещено Тогда + Если ПараметрыРазмещения.Варианты.Всего = 1 Тогда + Если ПараметрыРазмещения.Действие = "Перемещение" Тогда + Шаблон = НСтр("ru = 'Успешно перемещен в ""%1"".'"); + Иначе + Шаблон = НСтр("ru = 'Успешно размещен в ""%1"".'"); + КонецЕсли; + Текст = ПараметрыРазмещения.Варианты.Представление; + Ссылка = ПолучитьНавигационнуюСсылку(ПараметрыРазмещения.Варианты.Массив[0]); + Иначе + Если ПараметрыРазмещения.Действие = "Перемещение" Тогда + Шаблон = НСтр("ru = 'Успешно перемещены в ""%1"".'"); + Иначе + Шаблон = НСтр("ru = 'Успешно размещены в ""%1"".'"); + КонецЕсли; + Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Варианты отчетов (%1).'"), Формат(ПараметрыРазмещения.Варианты.Всего, "ЧН=0; ЧГ=0")); + Ссылка = Неопределено; + КонецЕсли; + Шаблон = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Шаблон, ПараметрыРазмещения.Приемник.ПолноеПредставление); + ПоказатьОповещениеПользователя(Шаблон, Ссылка, Текст); + Иначе + ТекстОшибок = ""; + Если Не ПустаяСтрока(РезультатВыполнения.НеМогутРазмещаться) Тогда + ТекстОшибок = ?(ТекстОшибок = "", "", ТекстОшибок + Символы.ПС + Символы.ПС) + + НСтр("ru = 'Не могут размещаться в командном интерфейсе:'") + + Символы.ПС + + РезультатВыполнения.НеМогутРазмещаться; + КонецЕсли; + Если Не ПустаяСтрока(РезультатВыполнения.УжеРазмещены) Тогда + ТекстОшибок = ?(ТекстОшибок = "", "", ТекстОшибок + Символы.ПС + Символы.ПС) + + НСтр("ru = 'Уже размещены в этом разделе:'") + + Символы.ПС + + РезультатВыполнения.УжеРазмещены; + КонецЕсли; + + Если ПараметрыРазмещения.Действие = "Перемещение" Тогда + Шаблон = НСтр("ru = 'Перемещено вариантов отчетов: %1 из %2.'"); + Иначе + Шаблон = НСтр("ru = 'Размещено вариантов отчетов: %1 из %2.'"); + КонецЕсли; + + ПараметрыПредупреждения = Новый Структура; + ПараметрыПредупреждения.Вставить("Текст", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + Шаблон, РезультатВыполнения.Размещено, ПараметрыРазмещения.Варианты.Всего)); + ПараметрыПредупреждения.Вставить("Подробно", ТекстОшибок); + СтандартныеПодсистемыКлиент.ВывестиПредупреждение(ЭтотОбъект, ПараметрыПредупреждения); + КонецЕсли; КонецПроцедуры @@ -547,59 +593,12 @@ ВызватьИсключение; КонецПопытки; - РезультатВыполнения = Новый Структура; - Если ПараметрыРазмещения.Варианты.Всего = Размещено Тогда - Если ПараметрыРазмещения.Варианты.Всего = 1 Тогда - Если ПараметрыРазмещения.Действие = "Перемещение" Тогда - Шаблон = НСтр("ru = 'Успешно перемещен в ""%1"".'"); - Иначе - Шаблон = НСтр("ru = 'Успешно размещен в ""%1"".'"); - КонецЕсли; - Текст = ПараметрыРазмещения.Варианты.Представление; - Ссылка = ПолучитьНавигационнуюСсылку(ПараметрыРазмещения.Варианты.Массив[0]); - Иначе - Если ПараметрыРазмещения.Действие = "Перемещение" Тогда - Шаблон = НСтр("ru = 'Успешно перемещены в ""%1"".'"); - Иначе - Шаблон = НСтр("ru = 'Успешно размещены в ""%1"".'"); - КонецЕсли; - Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Варианты отчетов (%1).'"), Формат(ПараметрыРазмещения.Варианты.Всего, "ЧН=0; ЧГ=0")); - Ссылка = Неопределено; - КонецЕсли; - Шаблон = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Шаблон, ПараметрыРазмещения.Приемник.ПолноеПредставление); - СтандартныеПодсистемыКлиентСервер.ВывестиОповещение(РезультатВыполнения, Шаблон, Текст, , Ссылка); - Иначе - ТекстОшибок = ""; - Если Не ПустаяСтрока(НеМогутРазмещаться) Тогда - ТекстОшибок = ?(ТекстОшибок = "", "", ТекстОшибок + Символы.ПС + Символы.ПС) - + НСтр("ru = 'Не могут размещаться в командном интерфейсе:'") - + Символы.ПС - + НеМогутРазмещаться; - КонецЕсли; - Если Не ПустаяСтрока(УжеРазмещены) Тогда - ТекстОшибок = ?(ТекстОшибок = "", "", ТекстОшибок + Символы.ПС + Символы.ПС) - + НСтр("ru = 'Уже размещены в этом разделе:'") - + Символы.ПС - + УжеРазмещены; - КонецЕсли; - - Если ПараметрыРазмещения.Действие = "Перемещение" Тогда - Шаблон = НСтр("ru = 'Перемещено вариантов отчетов: %1 из %2.'"); - Иначе - Шаблон = НСтр("ru = 'Размещено вариантов отчетов: %1 из %2.'"); - КонецЕсли; - - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение(РезультатВыполнения, - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Шаблон, Формат(Размещено, "ЧН=0; ЧГ=0"), Формат(ПараметрыРазмещения.Варианты.Всего, "ЧН=0; ЧГ=0")), - ТекстОшибок); - КонецЕсли; - Если ПараметрыРазмещения.Действие = "Перемещение" И Размещено > 0 Тогда Элементы.ДеревоПодсистем.ТекущаяСтрока = ПараметрыРазмещения.Приемник.Идентификатор; ОбновитьСодержимоеСписка(); КонецЕсли; - Возврат РезультатВыполнения; + Возврат Новый Структура("Размещено,УжеРазмещены,НеМогутРазмещаться", Размещено, УжеРазмещены, НеМогутРазмещаться); КонецФункции &НаКлиенте @@ -631,17 +630,17 @@ Комментарий = Комментарий + "; " + НСтр("ru = 'Без поиска'"); КонецЕсли; - Замер = Новый Структура("МодульОценкаПроизводительностиКлиентСервер, Идентификатор"); - Замер.Идентификатор = Новый УникальныйИдентификатор; - Замер.МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - Замер.МодульОценкаПроизводительностиКлиентСервер.НачатьРучнойЗамерВремени(Имя, Замер.Идентификатор, Комментарий); + Замер = Новый Структура("МодульОценкаПроизводительностиКлиент, Идентификатор"); + Замер.МодульОценкаПроизводительностиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиент"); + Замер.Идентификатор = Замер.МодульОценкаПроизводительностиКлиент.НачатьЗамерВремени(Ложь, Имя); + Замер.МодульОценкаПроизводительностиКлиент.УстановитьКомментарийЗамера(Замер.Идентификатор, Комментарий); Возврат Замер; КонецФункции &НаКлиенте Процедура ЗакончитьЗамер(Замер) Если Замер <> Неопределено Тогда - Замер.МодульОценкаПроизводительностиКлиентСервер.ЗакончитьРучнойЗамерВремени(Замер.Идентификатор); + Замер.МодульОценкаПроизводительностиКлиент.ЗавершитьЗамерВремени(Замер.Идентификатор); КонецЕсли; КонецПроцедуры diff --git a/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаЭлемента/Form.form index e584c17b1..234364f0d 100644 --- a/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаЭлемента/Form.form @@ -96,28 +96,123 @@ <textSize>Normal</textSize> </extInfo> </items> + <items xsi:type="form:FormField"> + <name>Автор</name> + <id>115</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <dataPath xsi:type="form:DataPath"> + <segments>Объект.Автор</segments> + </dataPath> + <extendedTooltip> + <name>АвторExtendedTooltip</name> + <id>167</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>АвторКонтекстноеМеню</name> + <id>116</id> + <autoFill>true</autoFill> + </contextMenu> + <type>InputField</type> + <editMode>Enter</editMode> + <showInHeader>true</showInHeader> + <headerHorizontalAlign>Left</headerHorizontalAlign> + <showInFooter>true</showInFooter> + <extInfo xsi:type="form:InputFieldExtInfo"> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <wrap>true</wrap> + <chooseType>true</chooseType> + <typeDomainEnabled>true</typeDomainEnabled> + <textEdit>true</textEdit> + <textSize>Normal</textSize> + </extInfo> + </items> + <items xsi:type="form:FormField"> + <name>Доступен</name> + <id>109</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <dataPath xsi:type="form:DataPath"> + <segments>Доступен</segments> + </dataPath> + <titleLocation>Left</titleLocation> + <handlers> + <event>OnChange</event> + <name>ДоступенПриИзменении</name> + </handlers> + <extendedTooltip> + <name>ДоступенExtendedTooltip</name> + <id>164</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>ДоступенКонтекстноеМеню</name> + <id>110</id> + <autoFill>true</autoFill> + </contextMenu> + <type>RadioButtonField</type> + <editMode>Enter</editMode> + <showInHeader>true</showInHeader> + <headerHorizontalAlign>Left</headerHorizontalAlign> + <showInFooter>true</showInFooter> + <extInfo xsi:type="form:RadioButtonsFieldExtInfo"> + <choiceList> + <presentation> + <key>ru</key> + <value>Только для автора</value> + </presentation> + <value xsi:type="core:StringValue"> + <value>1</value> + </value> + </choiceList> + <choiceList> + <presentation> + <key>ru</key> + <value>Всем пользователям</value> + </presentation> + <value xsi:type="core:StringValue"> + <value>2</value> + </value> + </choiceList> + <orientation>Vertical</orientation> + </extInfo> + </items> <items xsi:type="form:FormGroup"> - <name>ГруппаДоступен</name> - <id>106</id> - <items xsi:type="form:FormField"> - <name>Доступен</name> - <id>109</id> + <name>ДеревоПодсистемЗаголовокИВидимостьПоУмолчанию</name> + <id>236</id> + <items xsi:type="form:Decoration"> + <name>ДеревоПодсистемЗаголовок</name> + <id>238</id> + <title> + <key>ru</key> + <value>Размещение в панелях отчетов: </value> + true true true - - Доступен - - Left - - OnChange - ДоступенПриИзменении - - ДоступенExtendedTooltip - 164 + ДеревоПодсистемЗаголовокРасширеннаяПодсказка + 240 Label true true @@ -126,133 +221,32 @@
    - ДоступенКонтекстноеМеню - 110 + ДеревоПодсистемЗаголовокКонтекстноеМеню + 239 true - RadioButtonField - Enter - true - Left - true - - 1 - - - ru - Только для автора: - - - 1 - - - - - ru - Всем пользователям - - - 2 - - - Vertical + Label + true + Left + + Left
    - - ГруппаАвторИВидимостьПоУмолчанию - 108 - - Автор - 115 - true - true - - true - - - Объект.Автор - - None - - АвторExtendedTooltip - 167 - Label - true - true - - Left - - - - АвторКонтекстноеМеню - 116 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - - ВидимостьПоУмолчанию - 203 - true - true - - true - - - Объект.ВидимостьПоУмолчанию - - Right - - ВидимостьПоУмолчаниюРасширеннаяПодсказка - 205 - Label - true - true - - Left - - - - ВидимостьПоУмолчаниюКонтекстноеМеню - 204 - true - - CheckBoxField - Enter - true - Left - true - - + + ВидимостьПоУмолчанию + 203 true true true - - <key>ru</key> - <value>Группа автор и видимость по умолчанию</value> - - - ru - Группа автор и видимость по умолчанию - + + Объект.ВидимостьПоУмолчанию + + Right - ГруппаАвторИВидимостьПоУмолчаниюExtendedTooltip - 165 + ВидимостьПоУмолчаниюРасширеннаяПодсказка + 205 Label true true @@ -260,15 +254,17 @@ Left
    - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + + ВидимостьПоУмолчаниюКонтекстноеМеню + 204 + true + + CheckBoxField + Enter + true + Left + true +
    true true @@ -277,15 +273,15 @@ <key>ru</key> - <value>Группа доступен</value> + <value>Дерево подсистем заголовок и видимость по умолчанию</value> ru - Группа доступен + Дерево подсистем заголовок и видимость по умолчанию - ГруппаДоступенExtendedTooltip - 163 + ДеревоПодсистемЗаголовокИВидимостьПоУмолчаниюРасширеннаяПодсказка + 237 Label true true @@ -313,7 +309,7 @@ ДеревоПодсистем - Top + None Add Copy Delete @@ -781,7 +777,6 @@ ru Данные по размещению (без учета настроек предопределенного варианта) - true true true @@ -1579,24 +1574,6 @@ true - - ОшибкаОткрытия - - <key>ru</key> - <value>Ошибка открытия</value> - - 5 - - String - - - - true - - - true - - ДеревоПодсистем @@ -1828,8 +1805,12 @@ 10 - - + + true + + + true + ПараметрыОткрытияФормыОтчета @@ -1846,6 +1827,23 @@ true + + ДоступенВсемПользователям + + <key>ru</key> + <value>Доступен всем пользователям</value> + + 12 + + Boolean + + + true + + + true + + diff --git a/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаЭлемента/Module.bsl index 59e1a4947..6dbf128cf 100644 --- a/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/ВариантыОтчетов/Forms/ФормаЭлемента/Module.bsl @@ -5,10 +5,6 @@ Если Параметры.Свойство("АвтоТест") Тогда Возврат; КонецЕсли; - Если Объект.Ссылка.Пустая() Тогда - ОшибкаОткрытия = НСтр("ru = 'Новый вариант отчета можно создать только из формы отчета'"); - Возврат; - КонецЕсли; Если Параметры.Свойство("ПараметрыОткрытияФормыОтчета", ПараметрыОткрытияФормыОтчета) Тогда Возврат; КонецЕсли; @@ -44,6 +40,7 @@ Элементы.Доступен.ТолькоПросмотр = Не ПолныеПраваНаВарианты; Элементы.Автор.ТолькоПросмотр = Не ПолныеПраваНаВарианты; + Элементы.ВидимостьПоУмолчанию.ТолькоПросмотр = Не ПолныеПраваНаВарианты; Элементы.ТехническаяИнформация.Видимость = ПолныеПраваНаВарианты; // Заполнение имени отчета для команды "Просмотр". @@ -63,14 +60,7 @@ &НаКлиенте Процедура ПриОткрытии(Отказ) - Если Не ПустаяСтрока(ОшибкаОткрытия) Тогда - Если Объект.Ссылка.Пустая() Тогда - Отказ = Истина; - Иначе - ТолькоПросмотр = Истина; - КонецЕсли; - ПоказатьПредупреждение(, ОшибкаОткрытия); - ИначеЕсли ПараметрыОткрытияФормыОтчета <> Неопределено Тогда + Если ПараметрыОткрытияФормыОтчета <> Неопределено Тогда Отказ = Истина; ВариантыОтчетовКлиент.ОткрытьФормуОтчета(Неопределено, ПараметрыОткрытияФормыОтчета); КонецЕсли; @@ -113,11 +103,7 @@ ПараметрОповещения = Новый Структура("Ссылка, Наименование, Автор, Описание"); ЗаполнитьЗначенияСвойств(ПараметрОповещения, Объект); Оповестить(ВариантыОтчетовКлиентСервер.ИмяСобытияИзменениеВарианта(), ПараметрОповещения, ЭтотОбъект); - РазворачиваемыйУзел = Новый Структура("ИмяТаблицы, Идентификатор, СПодчиненными"); - РазворачиваемыйУзел.ИмяТаблицы = "ДеревоПодсистем"; - РазворачиваемыйУзел.Идентификатор = "*"; - РазворачиваемыйУзел.СПодчиненными = Истина; - СтандартныеПодсистемыКлиент.РазвернутьУзлыДерева(ЭтотОбъект, РазворачиваемыйУзел); + СтандартныеПодсистемыКлиент.РазвернутьУзлыДерева(ЭтотОбъект, "ДеревоПодсистем", "*", Истина); КонецПроцедуры #КонецОбласти diff --git a/SSL/src/Catalogs/ВариантыОтчетов/ManagerModule.bsl b/SSL/src/Catalogs/ВариантыОтчетов/ManagerModule.bsl index d37571ea0..b3d690e5d 100644 --- a/SSL/src/Catalogs/ВариантыОтчетов/ManagerModule.bsl +++ b/SSL/src/Catalogs/ВариантыОтчетов/ManagerModule.bsl @@ -27,14 +27,19 @@ Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка) #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда + // Переопределение для целей избранного - вместо карточки с настройками размещения отчета будет открываться его основная форма. Если ВидФормы = "ФормаОбъекта" Тогда + СсылкаВарианта = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "Ключ"); + Если Не ЗначениеЗаполнено(СсылкаВарианта) Тогда + ВызватьИсключение НСтр("ru = 'Новый вариант отчета можно создать только из формы отчета'"); + КонецЕсли; ПоказатьКарточку = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "ПоказатьКарточку"); Если ПоказатьКарточку = Истина Тогда Возврат; КонецЕсли; - ПараметрыОткрытия = ВариантыОтчетов.ПараметрыОткрытия(Параметры.Ключ); + ПараметрыОткрытия = ВариантыОтчетов.ПараметрыОткрытия(СсылкаВарианта); ВариантыОтчетовКлиентСервер.ДополнитьСтруктуруКлючом(ПараметрыОткрытия, "ВыполнятьЗамеры", Ложь); @@ -70,9 +75,9 @@ ВыбраннаяФорма = ПолноеИмяОтчета + ".Форма"; ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(Параметры, ПараметрыОткрытия); КонецЕсли; + #КонецЕсли КонецПроцедуры -#КонецОбласти - +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/Catalogs/ВариантыОтчетов/ВариантыОтчетов.mdo b/SSL/src/Catalogs/ВариантыОтчетов/ВариантыОтчетов.mdo index 5a1d29047..951c1c3d1 100644 --- a/SSL/src/Catalogs/ВариантыОтчетов/ВариантыОтчетов.mdo +++ b/SSL/src/Catalogs/ВариантыОтчетов/ВариантыОтчетов.mdo @@ -70,7 +70,7 @@ Parent ru - Родитель + Родитель, Основной вариант ru @@ -108,7 +108,7 @@ - Use + DontUse true diff --git a/SSL/src/Catalogs/ВерсииРасширений/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ВерсииРасширений/Forms/ФормаСписка/Form.form index 5bafe74f2..1a7053767 100644 --- a/SSL/src/Catalogs/ВерсииРасширений/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/ВерсииРасширений/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 2 @@ -322,8 +321,6 @@ OnCreateAtServer ПриСозданииНаСервере - 70 - 10 DontBlock true true diff --git a/SSL/src/Catalogs/ВерсииРасширений/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ВерсииРасширений/Forms/ФормаЭлемента/Form.form index ed94ef1ed..56e2cb91a 100644 --- a/SSL/src/Catalogs/ВерсииРасширений/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ВерсииРасширений/Forms/ФормаЭлемента/Form.form @@ -1,5 +1,47 @@ + + ОписаниеМетаданных + 4 + true + true + + true + + + Объект.ОписаниеМетаданных + + + ОписаниеМетаданныхРасширеннаяПодсказка + 6 + Label + true + true + + Left + + + + ОписаниеМетаданныхКонтекстноеМеню + 5 + true + + InputField + Auto + true + Left + true + + true + true + true + true + true + true + true + Normal + + Код 1 @@ -41,49 +83,6 @@ Normal - - ОписаниеМетаданных - 4 - true - true - - true - - - Объект.ОписаниеМетаданных - - - ОписаниеМетаданныхРасширеннаяПодсказка - 6 - Label - true - true - - Left - - - - ОписаниеМетаданныхКонтекстноеМеню - 5 - true - - InputField - Auto - true - Left - true - - true - true - true - true - true - true - true - true - Normal - - ПоследняяДатаДобавленияВторойВерсии 9 @@ -203,8 +202,6 @@ OnCreateAtServer ПриСозданииНаСервере - 50 - 7 LockOwner true true diff --git a/SSL/src/Catalogs/ВерсииРасширений/ManagerModule.bsl b/SSL/src/Catalogs/ВерсииРасширений/ManagerModule.bsl index a8f80a284..1a2773926 100644 --- a/SSL/src/Catalogs/ВерсииРасширений/ManagerModule.bsl +++ b/SSL/src/Catalogs/ВерсииРасширений/ManagerModule.bsl @@ -2,137 +2,112 @@ #Область СлужебныйПрограммныйИнтерфейс -// Возвращает текущую версию расширений. -// Для поиска версии используется описание установленных расширений, -// дополненное описанием конфигурации, которое обеспечивает соответствие уникального -// идентификатора "слепку" метаданных из конфигурации и подключенных расширений. -// -Функция ВерсияРасширений() Экспорт +// Вызывается при установке параметров сеанса. +Процедура УстановкаПараметровСеанса(ИменаПараметровСеанса, УстановленныеПараметры) Экспорт - Если Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() - И ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения) Тогда - ВызватьИсключение - НСтр("ru = 'Расширения недоступны в неразделенном режиме. - |Удалите все расширения через конфигуратор.'"); + Если ИменаПараметровСеанса = Неопределено + Или ИменаПараметровСеанса.Найти("УстановленныеРасширения") <> Неопределено Тогда + + ПараметрыСеанса.УстановленныеРасширения = КонтрольныеСуммыРасширений(); + УстановленныеПараметры.Добавить("УстановленныеРасширения"); КонецЕсли; - Если СтандартныеПодсистемыСервер.УстановленныеРасширенияНедоступны() Тогда - Возврат ПустаяСсылка(); + Если ИменаПараметровСеанса = Неопределено + Или ИменаПараметровСеанса.Найти("ПодключенныеРасширения") <> Неопределено Тогда + + Расширения = РасширенияКонфигурации.Получить(, ИсточникРасширенийКонфигурации.СеансАктивные); + ПараметрыСеанса.ПодключенныеРасширения = КонтрольныеСуммыРасширений(Расширения, Ложь); + УстановленныеПараметры.Добавить("ПодключенныеРасширения"); КонецЕсли; - Если Не ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения) Тогда - ЗарегистрироватьПервыйВходПослеУдаленияВсехРасширений(); - Возврат ПустаяСсылка(); + Если ИменаПараметровСеанса <> Неопределено + И ИменаПараметровСеанса.Найти("ВерсияРасширений") <> Неопределено Тогда + + ПараметрыСеанса.ВерсияРасширений = ВерсияРасширений(); + УстановленныеПараметры.Добавить("ВерсияРасширений"); КонецЕсли; - ВерсияРасширений = ВерсияРасширенийБезУчетаКонтрольнойСуммы(); - Если ЗначениеЗаполнено(ВерсияРасширений) Тогда - Возврат ВерсияРасширений; - КонецЕсли; + Если ИменаПараметровСеанса = Неопределено + И ТекущийРежимЗапуска() <> Неопределено Тогда - // Описание расширений включено описание метаданных конфигурации, - // так как состав подключенных расширений зависит от изменения конфигурации. - ОписаниеРасширений = ПараметрыСеанса.УстановленныеРасширения + Символы.ПС - + "#" + Метаданные.Имя + " (" + Метаданные.Версия + ")"; - - Запрос = Новый Запрос; - Запрос.УстановитьПараметр("ОписаниеРасширений", ОписаниеРасширений); - Запрос.Текст = - "ВЫБРАТЬ - | ВерсииРасширений.Ссылка КАК Ссылка - |ИЗ - | Справочник.ВерсииРасширений КАК ВерсииРасширений - |ГДЕ - | ВерсииРасширений.ОписаниеМетаданных ПОДОБНО &ОписаниеРасширений"; - - Блокировка = Новый БлокировкаДанных; - ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений"); - ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый; - НачатьТранзакцию(); - Попытка - Выборка = Запрос.Выполнить().Выбрать(); - ЗафиксироватьТранзакцию(); - Исключение - ОтменитьТранзакцию(); - ВызватьИсключение; - КонецПопытки; - - Если Выборка.Следующий() Тогда - ВерсияРасширений = Выборка.Ссылка; - Иначе - Блокировка = Новый БлокировкаДанных; - ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений"); - ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный; - НачатьТранзакцию(); - Попытка - Выборка = Запрос.Выполнить().Выбрать(); - Если Выборка.Следующий() Тогда - ВерсияРасширений = Выборка.Ссылка; - Иначе - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | ВерсииРасширений.Ссылка КАК Ссылка - |ИЗ - | Справочник.ВерсииРасширений КАК ВерсииРасширений"; - Выборка = Запрос.Выполнить().Выбрать(); - Если Выборка.Следующий() И Выборка.Количество() = 1 Тогда - Объект = Выборка.Ссылка.ПолучитьОбъект(); - // Тут должна быть именно ТекущаяДата(), так как - // именно она устанавливается в поле НачалоСеанса. - Объект.ПоследняяДатаДобавленияВторойВерсии = ТекущаяДата(); - Объект.Записать(); - ВключитьЗаданиеУдалениеУстаревшихПараметровРаботыВерсийРасширений(Истина); - КонецЕсли; - Объект = СоздатьЭлемент(); - Объект.ОписаниеМетаданных = ОписаниеРасширений; - Объект.Записать(); - ВерсияРасширений = Объект.Ссылка; - КонецЕсли; - ЗафиксироватьТранзакцию(); - Исключение - ОтменитьТранзакцию(); - ВызватьИсключение; - КонецПопытки; - КонецЕсли; - - Возврат ВерсияРасширений; - -КонецФункции - -// При запуске в режиме отладки без обновления информационной базы допустимо -// использовать старый кэш метаданных расширений. -// -Процедура ПеререгистрироватьВерсиюРасширенийВРежимеОтладки() Экспорт - - Если СтандартныеПодсистемыСервер.УстановленныеРасширенияНедоступны() Тогда - Возврат; - КонецЕсли; - - ВерсияРасширений = ВерсияРасширенийБезУчетаКонтрольнойСуммы(); - Если Не ЗначениеЗаполнено(ВерсияРасширений) Тогда - Возврат; - КонецЕсли; - - Если ПараметрыСеанса.ВерсияРасширений <> ВерсияРасширений Тогда - ПараметрыСеанса.ВерсияРасширений = ВерсияРасширений; ЗарегистрироватьИспользованиеВерсииРасширений(); КонецЕсли; КонецПроцедуры +// Расширения подключаются только в разделенном режиме, когда +// вход в область данных выполнен под разделенным пользователем, +// поэтому обновление кэшей недопустимо выполнять только в этом случае. +// +Функция УстановленныеРасширенияДоступны() Экспорт + + Возврат Не ОбщегоНазначенияПовтИсп.РазделениеВключено() + Или Не ОбщегоНазначенияПовтИсп.СеансЗапущенБезРазделителей(); + +КонецФункции + +// Возвращает контрольные суммы всех установленных расширений. +// +// Вызывается при запуске для установки параметра сеанса УстановленныеРасширения, +// который требуется для анализа наличия расширений и контроля динамического обновления, +// а также из формы установки расширений конфигурации в режиме 1С:Предприятия. +// +// Параметры: +// Расширения - Неопределено - получить контрольные суммы установленных расширений. +// - ДанныеФормыКоллекция - получить контрольные суммы из указанного списка. +// +// УчестьПорядокПодключения - Булево - если Ложь, строка описания контрольных сумм +// будет сформирована без учета порядка подключенных расширений. +// +// Возвращаемое значение: +// Строка - строки вида "<Имя расширения> (<Версия расширения>) <Контрольная сумма>". +// +Функция КонтрольныеСуммыРасширений(Расширения = Неопределено, УчестьПорядокПодключения = Истина) Экспорт + + Если Расширения = Неопределено Тогда + Расширения = РасширенияКонфигурации.Получить(); + КонецЕсли; + + Список = Новый СписокЗначений; + + Для Каждого Расширение Из Расширения Цикл + Если ТипЗнч(Расширение) = Тип("РасширениеКонфигурации") Тогда + КонтрольнаяСумма = Base64Строка(Расширение.ХешСумма); + Иначе + КонтрольнаяСумма = Расширение.КонтрольнаяСумма; + КонецЕсли; + Список.Добавить(Расширение.Имя + " (" + Расширение.Версия + ") " + КонтрольнаяСумма); + КонецЦикла; + + Если Не УчестьПорядокПодключения Тогда + Список.СортироватьПоЗначению(); + КонецЕсли; + + КонтрольныеСуммы = ""; + Для Каждого Элемент Из Список Цикл + КонтрольныеСуммы = КонтрольныеСуммы + Символы.ПС + Элемент.Значение; + КонецЦикла; + + Возврат СокрЛ(КонтрольныеСуммы); + +КонецФункции + +// Возвращает признак изменения состава расширений после запуска сеанса. +Функция РасширенияИзмененыДинамически() Экспорт + + УстановитьПривилегированныйРежим(Истина); + + Возврат ПараметрыСеанса.УстановленныеРасширения <> КонтрольныеСуммыРасширений(); + +КонецФункции + // Добавляет сведения, что сеанс начал использование версии метаданных. Процедура ЗарегистрироватьИспользованиеВерсииРасширений() Экспорт - Если СтандартныеПодсистемыСервер.УстановленныеРасширенияНедоступны() Тогда - ВерсияРасширений = ПараметрыСеанса.ВерсияРасширений; + Если Не УстановленныеРасширенияДоступны() Тогда Возврат; КонецЕсли; - // Тут должна быть именно ТекущаяДата(), так как - // именно она устанавливается в поле НачалоСеанса. - НачалоСеанса = ТекущаяДата(); - НомерСеанса = НомерСеансаИнформационнойБазы(); ВерсияРасширений = ПараметрыСеанса.ВерсияРасширений; Если Не ЗначениеЗаполнено(ВерсияРасширений) Тогда @@ -164,6 +139,10 @@ Возврат; КонецЕсли; + ТекущийСеанс = ПолучитьТекущийСеансИнформационнойБазы(); + НачалоСеанса = ТекущийСеанс.НачалоСеанса; + НомерСеанса = ТекущийСеанс.НомерСеанса; + НаборЗаписей = РегистрыСведений.СеансыВерсийРасширений.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.НомерСеанса.Установить(НомерСеанса); НаборЗаписей.Отбор.НачалоСеанса.Установить(НачалоСеанса); @@ -174,6 +153,7 @@ НоваяЗапись.НачалоСеанса = НачалоСеанса; НоваяЗапись.ВерсияРасширений = ВерсияРасширений; + НаборЗаписей.ОбменДанными.Загрузка = Истина; НаборЗаписей.Записать(); КонецПроцедуры @@ -377,65 +357,99 @@ #Область СлужебныеПроцедурыИФункции -// Для функции ВерсияРасширений и процедуры ПеререгистрироватьВерсиюРасширенийВРежимеОтладки. -Функция ВерсияРасширенийБезУчетаКонтрольнойСуммы() +// Возвращает текущую версию расширений. +// Для поиска версии используется описание подключенных расширений. +// +Функция ВерсияРасширений() + + Если Не УстановленныеРасширенияДоступны() Тогда + Возврат ПустаяСсылка(); + КонецЕсли; Если Не ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения) Тогда - Возврат Неопределено; + ЗарегистрироватьПервыйВходПослеУдаленияВсехРасширений(); КонецЕсли; - Если Не ОбщегоНазначенияКлиентСервер.РежимОтладки() - Или Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() - Или ОбновлениеИнформационнойБазы.НеобходимоОбновлениеИнформационнойБазы() Тогда - - Возврат Неопределено; + ОписаниеРасширений = ПараметрыСеанса.ПодключенныеРасширения; + Если Не ЗначениеЗаполнено(ОписаниеРасширений) Тогда + Возврат ПустаяСсылка(); КонецЕсли; - УстановленныеРасширения = ПараметрыСеанса.УстановленныеРасширения; - ОписаниеРасширений = Новый Массив; - ЧислоСтрок = СтрЧислоСтрок(УстановленныеРасширения); - Для НомерСтроки = 1 По ЧислоСтрок Цикл - ТекущаяСтрока = СтрПолучитьСтроку(УстановленныеРасширения, НомерСтроки); - Позиция = СтрНайти(ТекущаяСтрока, ")"); - ОписаниеРасширений.Добавить(Лев(ТекущаяСтрока, Позиция)); - КонецЦикла; - ОписаниеРасширений.Добавить("#" + Метаданные.Имя + " (" + Метаданные.Версия + ")"); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ВерсииРасширений.Ссылка КАК Ссылка, - | ВерсииРасширений.ОписаниеМетаданных + | ВерсииРасширений.ОписаниеМетаданных КАК ОписаниеРасширений |ИЗ - | Справочник.ВерсииРасширений КАК ВерсииРасширений - |ГДЕ - | ИСТИНА В - | (ВЫБРАТЬ ПЕРВЫЕ 1 - | ИСТИНА - | ИЗ - | РегистрСведений.ИдентификаторыОбъектовВерсийРасширений КАК ВерсииИдентификаторов - | ГДЕ - | ВерсииИдентификаторов.ВерсияРасширений = ВерсииРасширений.Ссылка) - | - |УПОРЯДОЧИТЬ ПО - | ВерсииРасширений.Код УБЫВ"; - Выборка = Запрос.Выполнить().Выбрать(); + | Справочник.ВерсииРасширений КАК ВерсииРасширений"; + + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений"); + ЭлементБлокировки.Режим = РежимБлокировкиДанных.Разделяемый; + НачатьТранзакцию(); + Попытка + Выборка = Запрос.Выполнить().Выбрать(); + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + + Если ВерсияНайдена(Выборка, ОписаниеРасширений) Тогда + ВерсияРасширений = Выборка.Ссылка; + Иначе + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("Справочник.ВерсииРасширений"); + ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный; + НачатьТранзакцию(); + Попытка + Выборка = Запрос.Выполнить().Выбрать(); + Если ВерсияНайдена(Выборка, ОписаниеРасширений) Тогда + ВерсияРасширений = Выборка.Ссылка; + Иначе + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ВерсииРасширений.Ссылка КАК Ссылка + |ИЗ + | Справочник.ВерсииРасширений КАК ВерсииРасширений"; + Выборка = Запрос.Выполнить().Выбрать(); + Если Выборка.Следующий() И Выборка.Количество() = 1 Тогда + Объект = Выборка.Ссылка.ПолучитьОбъект(); + // Тут должна быть именно ТекущаяДата(), так как + // именно она устанавливается в поле НачалоСеанса. + Объект.ПоследняяДатаДобавленияВторойВерсии = ТекущаяДата(); + Объект.ОбменДанными.Загрузка = Истина; + Объект.Записать(); + ВключитьЗаданиеУдалениеУстаревшихПараметровРаботыВерсийРасширений(Истина); + КонецЕсли; + Объект = СоздатьЭлемент(); + Объект.ОписаниеМетаданных = ОписаниеРасширений; + Объект.ОбменДанными.Загрузка = Истина; + Объект.Записать(); + ВерсияРасширений = Объект.Ссылка; + КонецЕсли; + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + КонецЕсли; + + Возврат ВерсияРасширений; + +КонецФункции + +// Для функции ВерсияРасширений. +Функция ВерсияНайдена(Выборка, ОписаниеРасширений) Пока Выборка.Следующий() Цикл - ВерсияРасширений = Выборка.Ссылка; - Для Каждого ОписаниеРасширения Из ОписаниеРасширений Цикл - НомерСтроки = ОписаниеРасширений.Найти(ОписаниеРасширения) + 1; - ТекущаяСтрока = СтрПолучитьСтроку(Выборка.ОписаниеМетаданных, НомерСтроки); - Если Не СтрНачинаетсяС(ТекущаяСтрока, ОписаниеРасширения) Тогда - ВерсияРасширений = Неопределено; - Прервать; - КонецЕсли; - КонецЦикла; - Если ЗначениеЗаполнено(ВерсияРасширений) Тогда - Прервать; + Если Выборка.ОписаниеРасширений = ОписаниеРасширений Тогда + Возврат Истина; КонецЕсли; КонецЦикла; - Возврат ВерсияРасширений; + Возврат Ложь; КонецФункции diff --git a/SSL/src/Catalogs/ВерсииРасширений/ВерсииРасширений.mdo b/SSL/src/Catalogs/ВерсииРасширений/ВерсииРасширений.mdo index d02d7f2c5..f81db7602 100644 --- a/SSL/src/Catalogs/ВерсииРасширений/ВерсииРасширений.mdo +++ b/SSL/src/Catalogs/ВерсииРасширений/ВерсииРасширений.mdo @@ -134,8 +134,7 @@ ru Строки вида: <Имя расширения> (<Версия расширения>) <Хеш расширения> -... -#<Имя конфигурации> (<Версия конфигурации>) +... diff --git a/SSL/src/Catalogs/ВерсииФайлов/Forms/ВерсииФайла/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/Catalogs/ВерсииФайлов/Forms/ВерсииФайла/Attributes/Список/ExtInfo/ListSettings.dcss new file mode 100644 index 000000000..08eee1813 --- /dev/null +++ b/SSL/src/Catalogs/ВерсииФайлов/Forms/ВерсииФайла/Attributes/Список/ExtInfo/ListSettings.dcss @@ -0,0 +1,24 @@ + + + + Normal + dfcece9d-5077-440b-b6b3-45a5cb4538eb + + + + ЭтоТекущая + Desc + + + НомерВерсии + Desc + + Normal + + + Normal + b75fecce-942b-4aed-abc9-e6a02e460fb3 + + Normal + 911b6018-f537-43e8-a417-da56b22f9aec + diff --git a/SSL/src/Catalogs/ВерсииФайлов/Forms/ВерсииФайла/Form.form b/SSL/src/Catalogs/ВерсииФайлов/Forms/ВерсииФайла/Form.form index 6b57f5ea0..3b4f4b2fc 100644 --- a/SSL/src/Catalogs/ВерсииФайлов/Forms/ВерсииФайла/Form.form +++ b/SSL/src/Catalogs/ВерсииФайлов/Forms/ВерсииФайла/Form.form @@ -14,15 +14,7 @@ true false None - Add Copy - HierarchicalList - List - MoveDown - MoveUp - SortListAsc - SortListDesc - Tree КартинкаИНаименование 67 @@ -266,6 +258,7 @@ true true + 1 true true true @@ -709,10 +702,9 @@ Tree true true - 40 true true - 10 + 7 true MultiRow
    true
    @@ -736,6 +728,16 @@ None None true + + 60 + + 0001-01-01T00:00:00 + 0001-01-01T00:00:00 + + + true + true +
    Top true @@ -987,7 +989,7 @@ 2 - ValueTree + DynamicList true @@ -995,241 +997,84 @@ true - - Владелец - - <key>ru</key> - <value>Владелец</value> - - 1 - - CatalogRef.Файлы - - - true - - - true - - - - Автор - - <key>ru</key> - <value>Автор</value> - - 2 - - CatalogRef.УчетныеЗаписиСинхронизацииФайлов - CatalogRef.Пользователи - - - true - - - true - - - - Комментарий - - <key>ru</key> - <value>Комментарий</value> - - 3 - - String - - - - true - - - true - - - - ДатаСоздания - - <key>ru</key> - <value>Дата создания</value> - - 4 - - Date - - - - true - - - true - - - - Размер - - <key>ru</key> - <value>Размер (байт)</value> - - 5 - - Number - - 10 - - - - true - - - true - - - - НомерВерсии - - <key>ru</key> - <value>Номер версии</value> - - 6 - - Number - - 5 - - - - true - - - true - - - - Ссылка - - <key>ru</key> - <value>Ссылка</value> - - 7 - - CatalogRef.ВерсииФайлов - - - true - - - true - - - - ИндексКартинкиТекущий - - <key>ru</key> - <value>Индекс картинки текущий</value> - - 8 - - Number - - - - true - - - true - - - - ЭтоТекущая - - <key>ru</key> - <value>Это текущая</value> - - 9 - - Boolean - - - true - - - true - - - - РодительскаяВерсия - - <key>ru</key> - <value>Родительская версия</value> - - 10 - - CatalogRef.ВерсииФайлов - - - true - - - true - - - - Расширение - - <key>ru</key> - <value>Расширение</value> - - 11 - - String - - 10 - - - - true - - - true - - - - ПометкаУдаления - - <key>ru</key> - <value>Пометка удаления</value> - - 12 - - Boolean - - - true - - - true - - - - ИндексКартинки - - <key>ru</key> - <value>Индекс картинки</value> - - 13 - - Number - - - - true - - - true - - + + Список.Владелец + + + Список.ДатаСоздания + + + Список.ИндексКартинки + + + Список.ИндексКартинкиТекущий + + + Список.Код + + + Список.Комментарий + + + Список.НомерВерсии + + + Список.ПолноеНаименование + + + Список.ПометкаУдаления + + + Список.Размер + + + Список.Расширение + + + Список.РодительскаяВерсия + + + Список.Ссылка + + + Список.ЭтоТекущая + + + ВЫБРАТЬ РАЗРЕШЕННЫЕ + ВерсииФайлов.Код КАК Код, + ВерсииФайлов.Размер КАК Размер, + ВерсииФайлов.Комментарий КАК Комментарий, + ВерсииФайлов.Автор КАК Автор, + ВерсииФайлов.ДатаСоздания КАК ДатаСоздания, + ВерсииФайлов.ПолноеНаименование КАК ПолноеНаименование, + ВерсииФайлов.РодительскаяВерсия КАК РодительскаяВерсия, + ВерсииФайлов.ИндексКартинки, + ВЫБОР + КОГДА ВерсииФайлов.ПометкаУдаления = ИСТИНА + ТОГДА 1 + ИНАЧЕ ВерсииФайлов.ИндексКартинки + КОНЕЦ КАК ИндексКартинкиТекущий, + ВерсииФайлов.ПометкаУдаления КАК ПометкаУдаления, + ВерсииФайлов.Владелец КАК Владелец, + ВерсииФайлов.Ссылка КАК Ссылка, + ВЫБОР + КОГДА ВерсииФайлов.Владелец.ТекущаяВерсия = ВерсииФайлов.Ссылка + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ КАК ЭтоТекущая, + ВерсииФайлов.Расширение КАК Расширение, + ВерсииФайлов.НомерВерсии КАК НомерВерсии +ИЗ + Справочник.ВерсииФайлов КАК ВерсииФайлов +ГДЕ + ВерсииФайлов.Владелец = &Владелец + Catalog.ВерсииФайлов + true + true + true + true + true + УникальныйИдентификаторКарточкиФайла @@ -1401,6 +1246,12 @@ true + + УникальныйИдентификаторКарточкиФайла + + UUID + + diff --git a/SSL/src/Catalogs/ВерсииФайлов/Forms/ВерсииФайла/Module.bsl b/SSL/src/Catalogs/ВерсииФайлов/Forms/ВерсииФайла/Module.bsl index 2e07596cb..102f2aa87 100644 --- a/SSL/src/Catalogs/ВерсииФайлов/Forms/ВерсииФайла/Module.bsl +++ b/SSL/src/Catalogs/ВерсииФайлов/Forms/ВерсииФайла/Module.bsl @@ -18,13 +18,13 @@ КонецЕсли; ВидимостьКомандыСравнить = - Не ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() И Не ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент(); + ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() И Не ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент(); Элементы.ФормаСравнить.Видимость = ВидимостьКомандыСравнить; Элементы.КонтекстноеМенюСписокСравнить.Видимость = ВидимостьКомандыСравнить; УникальныйИдентификаторКарточкиФайла = Параметры.УникальныйИдентификаторКарточкиФайла; - ЗаполнитьСписок(); + Список.Параметры.УстановитьЗначениеПараметра("Владелец", Параметры.Файл); КонецПроцедуры @@ -43,7 +43,6 @@ Если Не ЗначениеЗаполнено(ДанныеФайла.Редактирует) Тогда СменитьАктивнуюВерсиюФайла(ТекущиеДанные.Ссылка); - ЗаполнитьСписок(); Оповестить("Запись_Файл", Новый Структура("Событие", "АктивнаяВерсияИзменена"), Параметры.Файл); Иначе ПоказатьПредупреждение(, НСтр("ru = 'Смена активной версии разрешена только для незанятых файлов.'")); @@ -51,25 +50,6 @@ КонецПроцедуры -&НаКлиенте -Функция ОбойтиВсеУзлыДерева(Элементы, ТекущаяВерсия) - - Для Каждого Версия Из Элементы Цикл - - Если Версия.Ссылка = ТекущаяВерсия Тогда - Идентификатор = Версия.ПолучитьИдентификатор(); - Возврат Идентификатор; - КонецЕсли; - - КодВозврата = ОбойтиВсеУзлыДерева(Версия.ПолучитьЭлементы(), ТекущаяВерсия); - Если КодВозврата <> -1 Тогда - Возврат КодВозврата; - КонецЕсли; - КонецЦикла; - - Возврат -1; -КонецФункции - &НаКлиенте Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) @@ -77,13 +57,7 @@ Если Параметры.Файл = Источник Тогда - ТекущаяВерсия = Элементы.Список.ТекущиеДанные.Ссылка; - ЗаполнитьСписок(); - - КодВозврата = ОбойтиВсеУзлыДерева(Список.ПолучитьЭлементы(), ТекущаяВерсия); - Если КодВозврата <> -1 Тогда - Элементы.Список.ТекущаяСтрока = КодВозврата; - КонецЕсли; + Элементы.Список.Обновить(); КонецЕсли; @@ -116,7 +90,7 @@ ПараметрыОткрытияФормы = Новый Структура("Ключ", Версия); ОткрытьФорму("Справочник.ВерсииФайлов.ФормаОбъекта", ПараметрыОткрытияФормы); - КонецЕсли; + КонецЕсли; КонецПроцедуры @@ -160,8 +134,8 @@ Если ЧислоВыделенныхСтрок = 2 ИЛИ ЧислоВыделенныхСтрок = 1 Тогда Если ЧислоВыделенныхСтрок = 2 Тогда - Ссылка1 = Список.НайтиПоИдентификатору(Элементы.Список.ВыделенныеСтроки[0]).Ссылка; - Ссылка2 = Список.НайтиПоИдентификатору(Элементы.Список.ВыделенныеСтроки[1]).Ссылка; + Ссылка1 = Элементы.Список.ВыделенныеСтроки[0]; + Ссылка2 = Элементы.Список.ВыделенныеСтроки[1]; ИначеЕсли ЧислоВыделенныхСтрок = 1 Тогда Ссылка1 = Элементы.Список.ТекущиеДанные.Ссылка; @@ -289,96 +263,7 @@ ВерсияОбъект.Записать(); РазблокироватьДанныеДляРедактирования(Версия, УникальныйИдентификаторКарточкиФайла); -КонецПроцедуры - -&НаСервере -Процедура ЗаполнитьСписок() - - Запрос = Новый Запрос( - "ВЫБРАТЬ РАЗРЕШЕННЫЕ - | ВерсииФайлов.Код КАК Код, - | ВерсииФайлов.Размер КАК Размер, - | ВерсииФайлов.Комментарий КАК Комментарий, - | ВерсииФайлов.Автор КАК Автор, - | ВерсииФайлов.ДатаСоздания КАК ДатаСоздания, - | ВерсииФайлов.ПолноеНаименование КАК ПолноеНаименование, - | ВерсииФайлов.РодительскаяВерсия КАК РодительскаяВерсия, - | ВерсииФайлов.ИндексКартинки, - | ВЫБОР - | КОГДА ВерсииФайлов.ПометкаУдаления = ИСТИНА - | ТОГДА 1 - | ИНАЧЕ ВерсииФайлов.ИндексКартинки - | КОНЕЦ КАК ИндексКартинкиТекущий, - | ВерсииФайлов.ПометкаУдаления КАК ПометкаУдаления, - | ВерсииФайлов.Владелец КАК Владелец, - | ВерсииФайлов.Ссылка КАК Ссылка, - | ВЫБОР - | КОГДА ВерсииФайлов.Владелец.ТекущаяВерсия = ВерсииФайлов.Ссылка - | ТОГДА ИСТИНА - | ИНАЧЕ ЛОЖЬ - | КОНЕЦ КАК ЭтоТекущая, - | ВерсииФайлов.Расширение КАК Расширение, - | ВерсииФайлов.НомерВерсии КАК НомерВерсии - |ИЗ - | Справочник.ВерсииФайлов КАК ВерсииФайлов - |ГДЕ - | ВерсииФайлов.Владелец = &Владелец"); - - Запрос.УстановитьПараметр("Владелец", Параметры.Файл); - Данные = Запрос.Выполнить().Выгрузить(); - - Дерево = РеквизитФормыВЗначение("Список"); - Дерево.Строки.Очистить(); - - ДобавитьПредыдущуюВерсию(Неопределено, Дерево, Данные); - ЗначениеВРеквизитФормы(Дерево, "Список"); - -КонецПроцедуры - -&НаСервере -Процедура ДобавитьПредыдущуюВерсию(ТекущаяВетвь, Дерево, Данные) - - НайденнаяСтрока = Неопределено; - - Если ТекущаяВетвь = Неопределено Тогда - Для Каждого Строка Из Данные Цикл - Если Строка.ЭтоТекущая Тогда - НайденнаяСтрока = Строка; - Прервать; - КонецЕсли; - КонецЦикла; - Иначе - Для Каждого Строка Из Данные Цикл - Если Строка.Ссылка = ТекущаяВетвь.РодительскаяВерсия Тогда - НайденнаяСтрока = Строка; - Прервать; - КонецЕсли; - КонецЦикла; - КонецЕсли; - - Если НайденнаяСтрока <> Неопределено Тогда - Ветвь = Дерево.Строки.Добавить(); - ЗаполнитьЗначенияСвойств(Ветвь, НайденнаяСтрока); - Данные.Удалить(НайденнаяСтрока); - - ДобавитьПодчиненныеВерсии(Ветвь, Данные); - ДобавитьПредыдущуюВерсию(Ветвь, Дерево, Данные); - КонецЕсли; - -КонецПроцедуры - -&НаСервере -Процедура ДобавитьПодчиненныеВерсии(Ветвь, Данные) - - Для Каждого Строка Из Данные Цикл - Если Ветвь.Ссылка = Строка.РодительскаяВерсия Тогда - ЗаполнитьЗначенияСвойств(Ветвь.Строки.Добавить(), Строка); - КонецЕсли; - КонецЦикла; - - Для Каждого Веточка Из Ветвь.Строки Цикл - ДобавитьПодчиненныеВерсии(Веточка, Данные); - КонецЦикла; + Элементы.Список.Обновить(); КонецПроцедуры diff --git a/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаВыбора/Form.form b/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаВыбора/Form.form index 6d2fe70cf..8d3e1c3c9 100644 --- a/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаВыбора/Form.form +++ b/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаВыбора/Form.form @@ -16,7 +16,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 36 @@ -415,10 +414,9 @@ HierarchicalList true true - 40 true true - 10 + 7 true true
    true
    @@ -462,7 +460,6 @@ OnCreateAtServer ПриСозданииНаСервере - 80 LockOwner true true diff --git a/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаСписка/Form.form index 8eb1bfab9..823e11877 100644 --- a/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 52 @@ -762,7 +761,6 @@ Copy Create Delete - 70 DontBlock true true diff --git a/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаЭлемента/Form.form index 798a10dca..81e135e64 100644 --- a/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаЭлемента/Form.form @@ -1,75 +1,22 @@ - - Владелец - 6 - true - true - - true - - - Объект.Owner - - - ВладелецExtendedTooltip - 59 - Label - true - true - - Left - - - - ВладелецКонтекстноеМеню - 7 - true - - InputField - true - Enter - true - Left - true - Left - - true - true - true - true - true - - Style.BorderColor - - Normal - - - НаименованиеКод - 31 + Группа3 + 85 - ПолноеНаименование - 29 - - <key>ru</key> - <value>Наименование</value> - + Владелец + 6 true true true - Объект.ПолноеНаименование + Объект.Owner - - OnChange - ПолноеНаименованиеПриИзменении - - ПолноеНаименованиеExtendedTooltip - 61 + ВладелецExtendedTooltip + 59 Label true true @@ -78,61 +25,19 @@ - ПолноеНаименованиеКонтекстноеМеню - 30 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - - Style.BorderColor - - Normal - - - - Код - 2 - true - true - - true - - - Объект.Code - - - КодExtendedTooltip - 62 - Label - true - true - - Left - - - - КодКонтекстноеМеню - 3 + ВладелецКонтекстноеМеню + 7 true InputField + true Enter true Left true Left - true + 46 true true true @@ -143,18 +48,188 @@ Normal + + НаименованиеКод + 31 + + ПолноеНаименование + 29 + + <key>ru</key> + <value>Наименование</value> + + true + true + + true + + + Объект.ПолноеНаименование + + + OnChange + ПолноеНаименованиеПриИзменении + + + ПолноеНаименованиеExtendedTooltip + 61 + Label + true + true + + Left + + + + ПолноеНаименованиеКонтекстноеМеню + 30 + true + + InputField + Enter + true + Left + true + + 46 + true + true + true + true + + Style.BorderColor + + Normal + + + + Код + 2 + true + true + + true + + + Объект.Code + + + КодExtendedTooltip + 62 + Label + true + true + + Left + + + + КодКонтекстноеМеню + 3 + true + + InputField + Enter + true + Left + true + Left + + true + true + false + true + true + true + + Style.BorderColor + + Normal + + + true + true + + true + + + ru + Наименование код + + + НаименованиеКодExtendedTooltip + 60 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + РодительскаяВерсия + 33 + true + true + + true + + + Объект.РодительскаяВерсия + + + РодительскаяВерсияExtendedTooltip + 63 + Label + true + true + + Left + + + + РодительскаяВерсияКонтекстноеМеню + 34 + true + + InputField + true + Enter + true + Left + true + + 46 + true + true + true + true + + Отбор.Владелец + + Объект.Owner + + + Normal + + true true true - - ru - Наименование код - - НаименованиеКодExtendedTooltip - 60 + Группа3РасширеннаяПодсказка + 86 Label true true @@ -164,60 +239,13 @@ UsualGroup + Vertical Auto true true - Auto Auto - - РодительскаяВерсия - 33 - true - true - - true - - - Объект.РодительскаяВерсия - - - РодительскаяВерсияExtendedTooltip - 63 - Label - true - true - - Left - - - - РодительскаяВерсияКонтекстноеМеню - 34 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - - Отбор.Владелец - - Объект.Owner - - - Normal - - РасширениеКартинка 32 @@ -379,6 +407,7 @@ UsualGroup + Center Auto true true @@ -423,7 +452,6 @@ true Left - true 2 true true @@ -474,7 +502,7 @@ true Left - true + 46 true true true @@ -726,7 +754,6 @@ Left true - true true true true @@ -888,7 +915,6 @@ Left true - true true true true diff --git a/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаЭлемента/Module.bsl index 53318f58c..c6a73182a 100644 --- a/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/ВерсииФайлов/Forms/ФормаЭлемента/Module.bsl @@ -32,7 +32,7 @@ КодировкаЗначение = РаботаСФайламиСлужебныйВызовСервера.ПолучитьКодировкуВерсииФайла(Объект.Ссылка); - СписокКодировок = РаботаСФайламиСлужебный.ПолучитьСписокКодировок(); + СписокКодировок = РаботаСФайламиСлужебный.Кодировки(); ЭлементСписка = СписокКодировок.НайтиПоЗначению(КодировкаЗначение); Если ЭлементСписка = Неопределено Тогда Кодировка = КодировкаЗначение; diff --git a/SSL/src/Catalogs/ВерсииФайлов/ObjectModule.bsl b/SSL/src/Catalogs/ВерсииФайлов/ObjectModule.bsl index 77f09307b..e5f2ae39c 100644 --- a/SSL/src/Catalogs/ВерсииФайлов/ObjectModule.bsl +++ b/SSL/src/Catalogs/ВерсииФайлов/ObjectModule.bsl @@ -96,7 +96,7 @@ Процедура ПередУдалением(Отказ) Если ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске Тогда - Если НЕ Том.Пустая() Тогда + Если НЕ Том.Пустая() И ОбщегоНазначения.СсылкаСуществует(Том) Тогда ПолныйПуть = ФайловыеФункцииСлужебный.ПолныйПутьТома(Том) + ПутьКФайлу; Попытка Файл = Новый Файл(ПолныйПуть); @@ -110,7 +110,7 @@ КонецЕсли; Исключение - // Обработка исключения не требуется + // Обработка исключения не требуется. КонецПопытки; КонецЕсли; КонецЕсли; diff --git a/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаСписка/Module.bsl index 8a8e3e4d5..023d12ce8 100644 --- a/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаСписка/Module.bsl @@ -31,11 +31,6 @@ &НаКлиенте Процедура ПереместитьЭлементВверх() - Если Не ВозможноПеремещениеЭлемента(Элементы.Список.ТекущиеДанные.Ссылка, "Вверх") Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Перемещение данного вида контактной информации не предусмотрено'")); - Возврат; - КонецЕсли; - НастройкаПорядкаЭлементовКлиент.ПереместитьЭлементВверхВыполнить(Список, Элементы.Список); КонецПроцедуры @@ -43,11 +38,6 @@ &НаКлиенте Процедура ПереместитьЭлементВниз() - Если Не ВозможноПеремещениеЭлемента(Элементы.Список.ТекущиеДанные.Ссылка, "Вниз") Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Перемещение данного вида контактной информации не предусмотрено'")); - Возврат; - КонецЕсли; - НастройкаПорядкаЭлементовКлиент.ПереместитьЭлементВнизВыполнить(Список, Элементы.Список); КонецПроцедуры @@ -56,15 +46,6 @@ #Область СлужебныеПроцедурыИФункции -&НаСервере -Функция ВозможноПеремещениеЭлемента(ТекущийЭлемент, Направление) - - СоседнийЭлемент = НастройкаПорядкаЭлементовСлужебный.СоседнийЭлемент(ТекущийЭлемент, Список, Направление); - - Возврат СоседнийЭлемент = Неопределено Или Не (ТекущийЭлемент.ЗапретитьРедактированиеПользователем Или СоседнийЭлемент.ЗапретитьРедактированиеПользователем); - -КонецФункции - &НаСервере Процедура УстановитьУсловноеОформление() diff --git a/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаЭлемента/Form.form index 5e631a072..cf4d28f1a 100644 --- a/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаЭлемента/Form.form @@ -1,8 +1,8 @@ - ГруппаТипНаименование - 72 + ГруппаОсновнаяИнформация + 148 Тип 70 @@ -89,7 +89,6 @@ Left true - 20 true true true @@ -98,14 +97,63 @@ Normal + + Родитель + 11 + true + true + + true + + + Объект.Parent + + + РодительExtendedTooltip + 89 + Label + true + true + + Left + + + + РодительКонтекстноеМеню + 12 + true + + InputField + Enter + true + Left + true + + true + true + false + true + true + true + Normal + + true true true + + <key>ru</key> + <value>Группа основная информация</value> + + + ru + Группа основная информация + - ГруппаТипНаименованиеExtendedTooltip - 85 + ГруппаОсновнаяИнформацияРасширеннаяПодсказка + 149 Label true true @@ -115,6 +163,7 @@ UsualGroup + Vertical Auto true true @@ -122,91 +171,6 @@ Auto - - Подсказка - 73 - true - true - - true - - - Объект.Подсказка - - Left - - ПодсказкаExtendedTooltip - 88 - Label - true - true - - Left - - - - ПодсказкаКонтекстноеМеню - 74 - true - - InputField - Enter - true - Left - true - - true - 2 - true - true - true - true - true - true - Normal - - - - Родитель - 11 - true - true - - true - - - Объект.Parent - - - РодительExtendedTooltip - 89 - Label - true - true - - Left - - - - РодительКонтекстноеМеню - 12 - true - - InputField - Enter - true - Left - true - - true - true - false - true - true - true - Normal - - ГруппаТипКонтактнойИнформации 63 @@ -259,6 +223,10 @@ Объект.РедактированиеТолькоВДиалоге Right + + OnChange + РедактированиеТолькоВДиалогеПриИзменении + РедактированиеТолькоВДиалогеExtendedTooltip 93 @@ -281,6 +249,110 @@ true + + ГруппаХранитьИсториюИзменений + 153 + + ОтступХранитьИсториюИзменений + 155 + true + true + + true + + + ОтступХранитьИсториюИзмененийРасширеннаяПодсказка + 157 + Label + true + true + + Left + + + + ОтступХранитьИсториюИзмененийКонтекстноеМеню + 156 + true + + Label + 1 + true + true + + Left + + + + ХранитьИсториюИзменений + 158 + true + true + + true + + + Объект.ХранитьИсториюИзменений + + Right + + ru + Поле контактной информации хранит не только текущее значение, но и его историю изменений на указанную дату. Для просмотра истории необходимо в контекстном меню элемента контактной информации выбрать пункт «История изменений». + + Button + + ХранитьИсториюИзмененийРасширеннаяПодсказка + 160 + Label + true + true + + Left + + + + ХранитьИсториюИзмененийКонтекстноеМеню + 159 + true + + CheckBoxField + Enter + true + Left + true + + + true + + true + + + <key>ru</key> + <value>Группа хранить историю изменений</value> + + + ru + Группа хранить историю изменений + + + ГруппаХранитьИсториюИзмененийРасширеннаяПодсказка + 154 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + РазрешитьВводНесколькихЗначений 80 @@ -319,48 +391,6 @@ true - - ХранитИсториюИзменений - 145 - - <key>ru</key> - <value>Хранит историю изменений</value> - - true - true - - true - - - ru - Поле контактной информации хранит не только текущее значение, но и его историю изменений на указанную дату. Для просмотра истории необходимо в контекстном меню элемента контактной информации выбрать пункт «История изменений». - - Button - - ХранитИсториюИзмененийРасширеннаяПодсказка - 147 - Label - true - true - - Left - - - - ХранитИсториюИзмененийКонтекстноеМеню - 146 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -374,7 +404,6 @@ ru Группа тип общие для всех - true ГруппаТипОбщиеДляВсехExtendedTooltip 91 @@ -396,100 +425,71 @@ Auto
    - - ГруппаРазделительКолонок - 82 - - ДекорацияОтступВтораяКолонка - 83 - true - true - - true - - - ДекорацияОтступВтораяКолонкаРасширеннаяПодсказка - 96 - Label - true - true - - Left - - - - ДекорацияОтступВтораяКолонкаКонтекстноеМеню - 84 - true - - Label - 1 - true - true - - Left - - - true - true - - true - - - ГруппаРазделительКолонокРасширеннаяПодсказка - 95 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - ГруппаНаименованиеНастройкиПоТипам 65 - ГруппаВыравниваниеПоТипам - 66 + Проверки + 27 - Проверки - 27 + Адрес + 25 + + АдресТолькоРоссийский + 13 + + <key>ru</key> + <value>Только российский</value> + + true + true + + true + + + Объект.АдресТолькоРоссийский + + Right + + OnChange + АдресТолькоРоссийскийПриИзменении + + + АдресТолькоРоссийскийExtendedTooltip + 101 + Label + true + true + + Left + + + + АдресТолькоРоссийскийКонтекстноеМеню + 14 + true + + CheckBoxField + Enter + true + Left + true + + - Адрес - 25 - - АдресТолькоРоссийский - 13 - - <key>ru</key> - <value>Только российский</value> - + ГруппаПроверкаАдреса + 37 + + ДекорацияОтступ + 38 true true true - - Объект.АдресТолькоРоссийский - - Right - - OnChange - АдресТолькоРоссийскийПриИзменении - - АдресТолькоРоссийскийExtendedTooltip - 101 + ДекорацияОтступРасширеннаяПодсказка + 103 Label true true @@ -498,31 +498,40 @@ - АдресТолькоРоссийскийКонтекстноеМеню - 14 + ДекорацияОтступКонтекстноеМеню + 39 true - CheckBoxField - Enter - true - Left - true - + Label + 1 + true + true + + Left + - ГруппаПроверкаАдреса - 37 - - ДекорацияОтступ - 38 + ГруппаНастройкиПроверкаАдреса + 34 + + ПроверятьКорректностьАдреса + 118 true true true + + Объект.ПроверятьКорректность + + Right + + OnChange + ПроверятьКорректностьАдресаПриИзменении + - ДекорацияОтступРасширеннаяПодсказка - 103 + ПроверятьКорректностьАдресаРасширеннаяПодсказка + 120 Label true true @@ -531,210 +540,45 @@ - ДекорацияОтступКонтекстноеМеню - 39 + ПроверятьКорректностьАдресаКонтекстноеМеню + 119 true - Label - 1 - true - true - - Left - + CheckBoxField + Enter + true + Left + true + - - ГруппаНастройкиПроверкаАдреса - 34 - - ПроверятьКорректностьАдреса - 118 - true - true - - true - - - Объект.ПроверятьКорректность - - Right - - OnChange - ПроверятьКорректностьАдресаПриИзменении - - - ПроверятьКорректностьАдресаРасширеннаяПодсказка - 120 - Label - true - true - - Left - - - - ПроверятьКорректностьАдресаКонтекстноеМеню - 119 - true - - CheckBoxField - Enter - true - Left - true - - - - ПроверятьПоКлассификатору - 121 - - <key>ru</key> - <value>Проверять по</value> - - true - true - - true - - - ПроверятьПоКлассификатору - - Left - Button - - ПроверятьПоКлассификаторуРасширеннаяПодсказка - 123 - - <key>ru</key> - <value>При проверке адреса по классификатору ФИАС выполняются дополнительные проверки: -- "Округ" (между уровнями "Регион" и "Район"). -- "Внутригородской район" (между уровнями "Город" и "Населенный пункт") -- Уровни дополнительных территорий (между "Улица", и номером дома или владения) -- Дома, владения, корпуса, строения и т.п.</value> - - Label - true - true - - Left - - - - ПроверятьПоКлассификаторуКонтекстноеМеню - 122 - true - - RadioButtonField - Enter - true - Left - true - - - - ru - ФИАС - - - 0 - - - - - ru - КЛАДР - - - 1 - - - Vertical - - - - СкрыватьНеактуальныеАдреса - 61 - true - true - - true - - - Объект.СкрыватьНеактуальныеАдреса - - Right - - СкрыватьНеактуальныеАдресаExtendedTooltip - 106 - Label - true - true - - Left - - - - СкрыватьНеактуальныеАдресаКонтекстноеМеню - 62 - true - - CheckBoxField - Enter - true - Left - true - - - - УказыватьОКТМОВручную - 129 - true - true - - true - - - Объект.УказыватьОКТМО - - Right - - УказыватьОКТМОВручнуюРасширеннаяПодсказка - 131 - Label - true - true - - Left - - - - УказыватьОКТМОВручнуюКонтекстноеМеню - 130 - true - - CheckBoxField - Enter - true - Left - true - - + + ПроверятьПоКлассификатору + 121 + + <key>ru</key> + <value>Проверять по</value> + true true true - - <key>ru</key> - <value>Группа настройки проверка адреса</value> - - - ru - Группа настройки проверка адреса - + + ПроверятьПоКлассификатору + + Left + Button - ГруппаНастройкиПроверкаАдресаРасширеннаяПодсказка - 104 + ПроверятьПоКлассификаторуРасширеннаяПодсказка + 123 + + <key>ru</key> + <value>При проверке адреса по классификатору ФИАС выполняются дополнительные проверки: +- "Округ" (между уровнями "Регион" и "Район"). +- "Внутригородской район" (между уровнями "Город" и "Населенный пункт") +- Уровни дополнительных территорий (между "Улица", и номером дома или владения) +- Дома, владения, корпуса, строения и т.п.</value> + Label true true @@ -742,16 +586,106 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + ПроверятьПоКлассификаторуКонтекстноеМеню + 122 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + ФИАС + + + 0 + + + + + ru + КЛАДР + + + 1 + + + Vertical + + СкрыватьНеактуальныеАдреса + 61 + true + true + + true + + + Объект.СкрыватьНеактуальныеАдреса + + Right + + СкрыватьНеактуальныеАдресаExtendedTooltip + 106 + Label + true + true + + Left + + + + СкрыватьНеактуальныеАдресаКонтекстноеМеню + 62 + true + + CheckBoxField + Enter + true + Left + true + + + + УказыватьОКТМОВручную + 129 + true + true + + true + + + Объект.УказыватьОКТМО + + Right + + УказыватьОКТМОВручнуюРасширеннаяПодсказка + 131 + Label + true + true + + Left + + + + УказыватьОКТМОВручнуюКонтекстноеМеню + 130 + true + + CheckBoxField + Enter + true + Left + true + + true true @@ -759,15 +693,15 @@ <key>ru</key> - <value>Группа проверка адреса</value> + <value>Группа настройки проверка адреса</value> ru - Группа проверка адреса + Группа настройки проверка адреса - ГруппаПроверкаАдресаРасширеннаяПодсказка - 102 + ГруппаНастройкиПроверкаАдресаРасширеннаяПодсказка + 104 Label true true @@ -777,203 +711,13 @@ UsualGroup + Vertical Auto true - true Auto Auto - - ВключатьСтрануВПредставление - 16 - true - true - - true - - - Объект.ВключатьСтрануВПредставление - - Right - - ВключатьСтрануВПредставлениеExtendedTooltip - 107 - Label - true - true - - Left - - - - ВключатьСтрануВПредставлениеКонтекстноеМеню - 17 - true - - CheckBoxField - Enter - true - Left - true - - - true - true - - true - - - АдресExtendedTooltip - 100 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - АдресЭлектроннойПочты - 28 - - ПроверятьКорректность - 20 - - <key>ru</key> - <value>Запрещать ввод некорректных адресов</value> - - true - true - - true - - - Объект.ПроверятьКорректность - - Right - - ПроверятьКорректностьExtendedTooltip - 109 - Label - true - true - - Left - - - - ПроверятьКорректностьКонтекстноеМеню - 21 - true - - CheckBoxField - Enter - true - Left - true - - - true - true - - true - - - АдресЭлектроннойПочтыExtendedTooltip - 108 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - Телефон - 132 - - ТелефонCДобавочнымНомером - 134 - true - true - - true - - - Объект.ТелефонCДобавочнымНомером - - Right - - ТелефонCДобавочнымНомеромРасширеннаяПодсказка - 136 - Label - true - true - - Left - - - - ТелефонCДобавочнымНомеромКонтекстноеМеню - 135 - true - - CheckBoxField - Enter - true - Left - true - - - - ПроверятьКорректность1 - 137 - true - true - - true - - - Объект.ПроверятьКорректность - - Right - - ПроверятьКорректность1РасширеннаяПодсказка - 139 - Label - true - true - - Left - - - - ПроверятьКорректность1КонтекстноеМеню - 138 - true - - CheckBoxField - Enter - true - Left - true - - true true @@ -981,15 +725,15 @@ <key>ru</key> - <value>Телефон</value> + <value>Группа проверка адреса</value> ru - Телефон + Группа проверка адреса - ТелефонРасширеннаяПодсказка - 133 + ГруппаПроверкаАдресаРасширеннаяПодсказка + 102 Label true true @@ -997,62 +741,93 @@ Left - Page - - Vertical - auto - false + UsualGroup + + Auto + true + true + Auto + Auto - - Skype - 124 - - ДекорацияЗаглушкаSkype - 126 - true - true - - true - - - ДекорацияЗаглушкаSkypeРасширеннаяПодсказка - 128 - Label - true - true - - Left - - - - ДекорацияЗаглушкаSkypeКонтекстноеМеню - 127 - true - + + ВключатьСтрануВПредставление + 16 + true + true + + true + + + Объект.ВключатьСтрануВПредставление + + Right + + ВключатьСтрануВПредставлениеExtendedTooltip + 107 Label true true Left - - true - true - - true - + + + ВключатьСтрануВПредставлениеКонтекстноеМеню + 17 + true + + CheckBoxField + Enter + true + Left + true + + + true + true + + true + + + АдресExtendedTooltip + 100 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + АдресЭлектроннойПочты + 28 + + ПроверятьКорректность + 20 <key>ru</key> - <value>Skype</value> + <value>Запрещать ввод некорректных адресов</value> - - ru - Skype - + true + true + + true + + + Объект.ПроверятьКорректность + + Right - SkypeРасширеннаяПодсказка - 125 + ПроверятьКорректностьExtendedTooltip + 109 Label true true @@ -1060,58 +835,58 @@ Left - Page - - Vertical - auto - false - + + ПроверятьКорректностьКонтекстноеМеню + 21 + true + + CheckBoxField + Enter + true + Left + true + - - Другое - 51 - - МногострочноеПоле - 142 - true - true - - true - - - Объект.МногострочноеПоле - - Right - - МногострочноеПолеРасширеннаяПодсказка - 144 - Label - true - true - - Left - - - - МногострочноеПолеКонтекстноеМеню - 143 - true - - CheckBoxField - Enter - true - Left - true - - + true + true + + true + + + АдресЭлектроннойПочтыExtendedTooltip + 108 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + Телефон + 132 + + ТелефонCДобавочнымНомером + 134 true true true + + Объект.ТелефонCДобавочнымНомером + + Right - ДругоеExtendedTooltip - 110 + ТелефонCДобавочнымНомеромРасширеннаяПодсказка + 136 Label true true @@ -1119,62 +894,37 @@ Left - Page - - Vertical - auto - false - + + ТелефонCДобавочнымНомеромКонтекстноеМеню + 135 + true + + CheckBoxField + Enter + true + Left + true + - - Прочие - 140 - - ДекорацияЗаглушка - 54 - true - true - - true - - - ДекорацияЗаглушкаРасширеннаяПодсказка - 111 - Label - true - true - - Left - - - - ДекорацияЗаглушкаКонтекстноеМеню - 55 - true - - Label - true - true - - Left - - - true - true - - true - + + ПроверятьКорректностьТелефон + 137 <key>ru</key> - <value>Прочие</value> + <value>Запрещать ввод некорректных номеров</value> - - ru - Прочие - + true + true + + true + + + Объект.ПроверятьКорректность + + Right - ПрочиеРасширеннаяПодсказка - 141 + ПроверятьКорректностьТелефонРасширеннаяПодсказка + 139 Label true true @@ -1182,11 +932,79 @@ Left - Page - - Vertical - auto - false + + ПроверятьКорректностьТелефонКонтекстноеМеню + 138 + true + + CheckBoxField + Enter + true + Left + true + + + true + true + + true + + + <key>ru</key> + <value>Телефон</value> + + + ru + Телефон + + + ТелефонРасширеннаяПодсказка + 133 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + Skype + 124 + + ДекорацияЗаглушкаSkype + 126 + true + true + + true + + + ДекорацияЗаглушкаSkypeРасширеннаяПодсказка + 128 + Label + true + true + + Left + + + + ДекорацияЗаглушкаSkypeКонтекстноеМеню + 127 + true + + Label + true + true + + Left true @@ -1196,15 +1014,15 @@ <key>ru</key> - <value>Проверки</value> + <value>Skype</value> ru - Проверки + Skype - ПроверкиExtendedTooltip - 99 + SkypeРасширеннаяПодсказка + 125 Label true true @@ -1212,9 +1030,166 @@ Left - Pages - - Auto + Page + + Vertical + auto + false + + + + Другое + 51 + + ВидПоляДругое + 150 + + <key>ru</key> + <value>Вид поля</value> + + true + true + + true + + + Объект.ВидПоляДругое + + + ВидПоляДругоеРасширеннаяПодсказка + 152 + Label + true + true + + Left + + + + ВидПоляДругоеКонтекстноеМеню + 151 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Многострочное широкое + + + МногострочноеШирокое + + + + + ru + Однострочное широкое + + + ОднострочноеШирокое + + + + + ru + Однострочное узкое + + + ОднострочноеУзкое + + + Vertical + + + true + true + + true + + + ДругоеExtendedTooltip + 110 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + Прочие + 140 + + ДекорацияЗаглушка + 54 + true + true + + true + + + ДекорацияЗаглушкаРасширеннаяПодсказка + 111 + Label + true + true + + Left + + + + ДекорацияЗаглушкаКонтекстноеМеню + 55 + true + + Label + true + true + + Left + + + true + true + + true + + + <key>ru</key> + <value>Прочие</value> + + + ru + Прочие + + + ПрочиеРасширеннаяПодсказка + 141 + Label + true + true + + Left + + + Page + + Vertical + auto + false true @@ -1224,16 +1199,15 @@ <key>ru</key> - <value>Группа выравнивание по типам</value> + <value>Проверки</value> ru - Группа выравнивание по типам + Проверки - false - ГруппаВыравниваниеПоТипамExtendedTooltip - 98 + ПроверкиExtendedTooltip + 99 Label true true @@ -1241,13 +1215,8 @@ Left - UsualGroup - - Auto - NormalSeparation - true - true - Auto + Pages + Auto @@ -1264,7 +1233,6 @@ ru Группа наименование настройки по типам - false ГруппаНаименованиеНастройкиПоТипамExtendedTooltip 97 @@ -1279,6 +1247,7 @@ Vertical Auto + NormalSeparation true true Auto diff --git a/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаЭлемента/Help/ru.html b/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаЭлемента/Help/ru.html index b9910c55a..99eca9cf8 100644 --- a/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаЭлемента/Help/ru.html +++ b/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаЭлемента/Help/ru.html @@ -47,7 +47,13 @@
    Для некоторых типов телефонов (например, мобильный телефон) не предусмотрено добавочных номеров.

    Особенности настройки поля Адрес электронной почты

    • Если у поля установлен тип Адрес электронной почты, то программа проверяет правильность ввода адреса электронной почты. Включите флажок Запрещать ввод некорректных адресов, в этом случае ввести некорректный адрес электронной почты будет невозможно.

    Особенности настройки поля Другое

    • -
      С помощью флажка Многострочное поле можно указать, выводить эти поля как многострочные или однострочные. Такая возможность позволяет более точно расположить поле в окне объекта.

    См. также:

    -
    • Виды контактной информации; -
    • Ввод контактной информации; +
      С помощью переключателя можно указать Вид поля, для того чтобы более точно расположить поле в окне объекта:
      +
      • +
        Многострочное широкое - включает несколько строк;
        +
      • +
        Однострочное широкое - длинная строка;
        +
      • +
        Однострочное узкое - если вид контактной информации Другое используется для ввода текстовых данных небольшой длины, то размер поля ввода можно уменьшить.

    См. также:

    + \ No newline at end of file diff --git a/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаЭлемента/Module.bsl index a2b4da9b2..9dfdc7718 100644 --- a/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/ВидыКонтактнойИнформации/Forms/ФормаЭлемента/Module.bsl @@ -12,7 +12,6 @@ Элементы.Наименование.ТолькоПросмотр = Истина; Элементы.Родитель.ТолькоПросмотр = Истина; Элементы.Тип.ТолькоПросмотр = Истина; - Элементы.Подсказка.ТолькоПросмотр = Истина; Элементы.ГруппаТипОбщиеДляВсех.ТолькоПросмотр = Объект.ЗапретитьРедактированиеПользователем; Иначе // Обработчик подсистемы запрета редактирования реквизитов объектов. @@ -28,20 +27,39 @@ КонецЕсли; СсылкаРодителя = Объект.Родитель; + Элементы.ХранитьИсториюИзменений.Доступность = Объект.РедактированиеТолькоВДиалоге; Если Не Объект.МожноИзменятьСпособРедактирования Тогда Элементы.РедактированиеТолькоВДиалоге.Доступность = Ложь; Элементы.РазрешитьВводНесколькихЗначений.Доступность = Ложь; Элементы.ГруппаНаименованиеНастройкиПоТипам.Доступность = Ложь; - Иначе - Если Объект.ХранитьИсториюИзменений ИЛИ СсылкаРодителя.Пустая() ИЛИ СсылкаРодителя.Уровень() > 0 Тогда - Элементы.РазрешитьВводНесколькихЗначений.Доступность = Ложь; - Иначе - Элементы.РазрешитьВводНесколькихЗначений.Доступность = Истина; - КонецЕсли; + Элементы.ХранитьИсториюИзменений.Доступность = Ложь; КонецЕсли; - Элементы.ХранитИсториюИзменений.Видимость = Объект.ХранитьИсториюИзменений; + Если Объект.Тип <> Перечисления.ТипыКонтактнойИнформации.Адрес + ИЛИ СсылкаРодителя.Пустая() + ИЛИ СсылкаРодителя.Уровень() > 0 Тогда + Элементы.ГруппаХранитьИсториюИзменений.Видимость = Ложь; + Иначе + ТабличнаяЧасть = Неопределено; + Если СтрНачинаетсяС(СсылкаРодителя.ИмяПредопределенныхДанных, "Справочник") Тогда + ИмяОбъекта = Сред(СсылкаРодителя.ИмяПредопределенныхДанных, 11); + Если Метаданные.Справочники.Найти(ИмяОбъекта) <> Неопределено Тогда + ТабличнаяЧасть = Метаданные.Справочники[ИмяОбъекта].ТабличныеЧасти.Найти("КонтактнаяИнформация"); + КонецЕсли; + ИначеЕсли СтрНачинаетсяС(СсылкаРодителя.ИмяПредопределенныхДанных, "Документ") Тогда + ИмяОбъекта = Сред(СсылкаРодителя.ИмяПредопределенныхДанных, 9); + Если Метаданные.Документы.Найти(ИмяОбъекта) <> Неопределено Тогда + ТабличнаяЧасть = Метаданные.Документы[ИмяОбъекта].ТабличныеЧасти.Найти("КонтактнаяИнформация"); + КонецЕсли; + КонецЕсли; + + Если ТабличнаяЧасть <> Неопределено Тогда + Если ТабличнаяЧасть.Реквизиты.Найти("ДействуетС") <> Неопределено Тогда + Элементы.ГруппаХранитьИсториюИзменений.Видимость = Истина; + КонецЕсли; + КонецЕсли; + КонецЕсли; ПроверятьПоКлассификатору = ?(Объект.ПроверятьПоФИАС, 0, 1); @@ -116,6 +134,16 @@ ОтобразитьДоступностьВариантовПроверкиПоКлассификатору(); КонецПроцедуры +&НаКлиенте +Процедура РедактированиеТолькоВДиалогеПриИзменении(Элемент) + Если Объект.РедактированиеТолькоВДиалоге Тогда + Элементы.ХранитьИсториюИзменений.Доступность = Истина; + Иначе + Элементы.ХранитьИсториюИзменений.Доступность = Ложь; + Объект.ХранитьИсториюИзменений = Ложь; + КонецЕсли; +КонецПроцедуры + #КонецОбласти #Область ОбработчикиКомандФормы diff --git a/SSL/src/Catalogs/ВидыКонтактнойИнформации/ManagerModule.bsl b/SSL/src/Catalogs/ВидыКонтактнойИнформации/ManagerModule.bsl index bf9061c7e..a7df5d1aa 100644 --- a/SSL/src/Catalogs/ВидыКонтактнойИнформации/ManagerModule.bsl +++ b/SSL/src/Catalogs/ВидыКонтактнойИнформации/ManagerModule.bsl @@ -38,4 +38,76 @@ #КонецОбласти -#КонецЕсли \ No newline at end of file +#Область ОбработчикиОбновления + +// Регистрирует к обработке виды контактной информации другое у которых необходимо заполнить поле ВидПоляДругое. +// +Процедура ЗаполнитьВидыКонтактнойИнформацииСПолемДругоеКОбработке(Параметры) Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ + | ВидыКонтактнойИнформации.Ссылка, + | ВидыКонтактнойИнформации.УдалитьМногострочноеПоле + |ИЗ + | Справочник.ВидыКонтактнойИнформации КАК ВидыКонтактнойИнформации + |ГДЕ + | ВидыКонтактнойИнформации.Тип = &Тип"; + + Запрос.УстановитьПараметр("Тип", Перечисления.ТипыКонтактнойИнформации.Другое); + РезультатЗапроса = Запрос.Выполнить().Выгрузить(); + + ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры, + РезультатЗапроса.ВыгрузитьКолонку("Ссылка")); + +КонецПроцедуры + +Процедура ОбновитьВидПоляДругое(Параметры) Экспорт + + ВидКонтактнойИнформацииСсылка = ОбновлениеИнформационнойБазы.ВыбратьСсылкиДляОбработки(Параметры.Очередь, "Справочник.ВидыКонтактнойИнформации"); + + ПроблемныхОбъектов = 0; + ОбъектовОбработано = 0; + + Пока ВидКонтактнойИнформацииСсылка.Следующий() Цикл + Попытка + ВидКонтактнойИнформации = ВидКонтактнойИнформацииСсылка.Ссылка.ПолучитьОбъект(); + Если ВидКонтактнойИнформации.УдалитьМногострочноеПоле Тогда + ВидКонтактнойИнформации.ВидПоляДругое = "МногострочноеШирокое"; + Иначе + ВидКонтактнойИнформации.ВидПоляДругое = "ОднострочноеШирокое"; + КонецЕсли; + ОбновлениеИнформационнойБазы.ЗаписатьДанные(ВидКонтактнойИнформации); + ОбъектовОбработано = ОбъектовОбработано + 1; + + Исключение + // Если не удалось обработать какой-либо вид контактной информации, повторяем попытку снова. + ПроблемныхОбъектов = ПроблемныхОбъектов + 1; + + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось обработать вид контактной информации: %1 по причине: %2'"), + ВидКонтактнойИнформацииСсылка.Ссылка, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение, + Метаданные.Справочники.ВидыКонтактнойИнформации, ВидКонтактнойИнформацииСсылка.Ссылка, ТекстСообщения); + КонецПопытки; + КонецЦикла; + + Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(Параметры.Очередь, "Справочник.ВидыКонтактнойИнформации"); + + Если ОбъектовОбработано = 0 И ПроблемныхОбъектов <> 0 Тогда + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Процедуре ОбновитьВидПоляДругое не удалось обработать некоторые виды контактной информации (пропущены): %1'"), + ПроблемныхОбъектов); + ВызватьИсключение ТекстСообщения; + Иначе + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Информация, + Метаданные.Справочники.ВидыКонтактнойИнформации,, + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Процедура ОбновитьВидПоляДругое обработала очередную порцию видов контактной информации: %1'"), + ОбъектовОбработано)); + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#КонецЕсли + diff --git a/SSL/src/Catalogs/ВидыКонтактнойИнформации/ВидыКонтактнойИнформации.mdo b/SSL/src/Catalogs/ВидыКонтактнойИнформации/ВидыКонтактнойИнформации.mdo index 83e06921a..6d0de1e7b 100644 --- a/SSL/src/Catalogs/ВидыКонтактнойИнформации/ВидыКонтактнойИнформации.mdo +++ b/SSL/src/Catalogs/ВидыКонтактнойИнформации/ВидыКонтактнойИнформации.mdo @@ -125,63 +125,6 @@ String AsDescription - - СправочникОрганизации - Контактная информация справочника "Организации" - - - - true - - ДругаяИнформацияОрганизации - Другое - - - - - - ПочтовыйАдресОрганизации - Почтовый адрес - - - - - - ТелефонОрганизации - Телефон - - - - - - ФаксОрганизации - Факс - - - - - - ФактАдресОрганизации - Фактический адрес - - - - - - EmailОрганизации - Электронная почта - - - - - - ЮрАдресОрганизации - Юридический адрес - - - - - СправочникПользователи Контактная информация справочника "Пользователи" @@ -229,6 +172,28 @@ Use Use + + ВидПоляДругое + + ru + Вид поля другое + + + String + + 20 + + + + ru + Внешний вид поля другое на форме + + + + + Use + Use + ВключатьСтрануВПредставление @@ -330,26 +295,6 @@ Use Use - - Подсказка - - ru - Подсказка - - - String - - - - ru - Подсказка для вида контактной информации - - - - - Use - Use - ПроверятьКорректность @@ -417,7 +362,7 @@ ru - Редактировать контактную информацию только в диалоге (ручной ввод информации не возможен) + Редактировать контактную информацию только в диалоге (ручной ввод информации невозможен) @@ -510,6 +455,25 @@ Use Use + + УдалитьМногострочноеПоле + + ru + (не используется) Многострочное поле + + + Boolean + + + ru + Выводит многострочное поле + + + + + Use + Use + УказыватьОКТМО @@ -529,25 +493,6 @@ Use Use - - МногострочноеПоле - - ru - Многострочное поле - - - Boolean - - - ru - Выводит многострочное поле - - - - - Use - Use - ХранитьИсториюИзменений diff --git a/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаСписка/Form.form index 0b33ffc69..d447550cf 100644 --- a/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаСписка/Form.form @@ -294,6 +294,31 @@ КоманднаяПанельВнешниеПользователи 53 + + ФормаВыбрать + 227 + true + + true + + + ФормаВыбратьРасширеннаяПодсказка + 228 + Label + true + true + + Left + + + Form.StandardCommand.Choose + Normal + Auto + true + true + UserCmds + Auto + ФормаСкопировать 203 @@ -789,6 +814,7 @@ 10 true true + true MultiRow Row 1 @@ -829,36 +855,6 @@ ГруппаВыбратьГруппу 86 - - Отступ - 87 - true - true - - true - - - ОтступExtendedTooltip - 115 - Label - true - true - - Left - - - - ОтступКонтекстноеМеню - 88 - true - - Label - true - true - - Left - - ВыбратьГруппу 89 @@ -951,6 +947,7 @@ ru Группа выбрать группу + true ГруппаВыбратьГруппуExtendedTooltip 114 @@ -964,6 +961,7 @@ UsualGroup Vertical + Center Auto true true @@ -1388,6 +1386,7 @@ 10 true true + true MultiRow 1 1 @@ -1428,36 +1427,6 @@ ГруппаВыбратьПользователя 92 - - Отступ2 - 93 - true - true - - true - - - Отступ2ExtendedTooltip - 124 - Label - true - true - - Left - - - - Отступ2КонтекстноеМеню - 94 - true - - Label - true - true - - Left - - ВыбратьПользователяКоманда 95 @@ -1548,6 +1517,7 @@ ru Группа выбрать пользователя + true ГруппаВыбратьПользователяExtendedTooltip 123 @@ -1561,6 +1531,7 @@ UsualGroup Vertical + Center Auto true true @@ -2004,19 +1975,19 @@ 154 ГруппыВнешнихПользователейКомментарий - 141 + 224 true true true - Items.ГруппыВнешнихПользователей.CurrentData.DeletionMark + Items.ГруппыВнешнихПользователей.CurrentData.Комментарий - Top + Left ГруппыВнешнихПользователейКомментарийРасширеннаяПодсказка - 143 + 226 Label true true @@ -2026,18 +1997,15 @@ ГруппыВнешнихПользователейКомментарийКонтекстноеМеню - 142 + 225 true InputField - true Enter - true + true Left true - true - 3 true true true @@ -2120,7 +2088,7 @@ Items.ВнешниеПользователиСписок.CurrentData.Комментарий - Top + Left ВнешниеПользователиСписокКомментарийРасширеннаяПодсказка 140 @@ -2143,8 +2111,7 @@ Left true - true - 3 + 2 true true true @@ -2254,8 +2221,6 @@ ПередЗагрузкеДанныхИзНастроекНаСервере Create - 80 - 16 DontBlock Use true @@ -2318,12 +2283,13 @@ КОГДА ВнешниеПользователи.ИдентификаторПользователяИБ = &ПустойУникальныйИдентификатор ТОГДА ЛОЖЬ ИНАЧЕ ИСТИНА - КОНЕЦ КАК ВозможноСменитьПароль + КОНЕЦ КАК ВозможноСменитьПароль, + ВнешниеПользователи.ИдентификаторПользователяИБ ИЗ Справочник.ВнешниеПользователи КАК ВнешниеПользователи ГДЕ ВЫБОР - КОГДА &ВсеВнешниеПользователи + КОГДА &ВсеВнешниеПользователи ТОГДА ИСТИНА КОГДА &ВыбиратьИерархически ТОГДА ИСТИНА В diff --git a/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаСписка/Module.bsl index 78e0aa7a2..1e422ffbd 100644 --- a/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаСписка/Module.bsl @@ -97,7 +97,6 @@ Элементы.ПользователиИБ.Видимость = Ложь; КонецЕсли; Элементы.СведенияОВнешнихПользователях.Видимость = Ложь; - Элементы.ВнешниеПользователиСписок.РежимВыбора = Истина; Элементы.ГруппыВнешнихПользователей.РежимВыбора = ХранимыеПараметры.ВыборГруппВнешнихПользователей; @@ -126,6 +125,8 @@ КонецЕсли; КонецЕсли; Иначе + Элементы.ВнешниеПользователиСписок.РежимВыбора = Ложь; + Элементы.ГруппыВнешнихПользователей.РежимВыбора = Ложь; Элементы.Комментарии.Видимость = Ложь; Элементы.ВыбратьВнешнегоПользователя.Видимость = Ложь; Элементы.ВыбратьГруппуВнешнихПользователей.Видимость = Ложь; @@ -392,10 +393,10 @@ &НаКлиенте Процедура ВнешниеПользователиСписокПриАктивизацииСтроки(Элемент) - Если Элементы.ВнешниеПользователиСписок.ТекущиеДанные = Неопределено Тогда - ВозможноСменитьПароль = Ложь; - Иначе + Если СтандартныеПодсистемыКлиент.ЭтоЭлементДинамическогоСписка(Элементы.ВнешниеПользователиСписок) Тогда ВозможноСменитьПароль = Элементы.ВнешниеПользователиСписок.ТекущиеДанные.ВозможноСменитьПароль; + Иначе + ВозможноСменитьПароль = Ложь; КонецЕсли; Элементы.ФормаУстановитьПароль.Доступность = ВозможноСменитьПароль; @@ -488,7 +489,7 @@ Процедура СоздатьГруппуВнешнихПользователей(Команда) ТекущиеДанные = Элементы.ГруппыВнешнихПользователей.ТекущиеДанные; - Если ТекущиеДанные = Неопределено Тогда + Если Не СтандартныеПодсистемыКлиент.ЭтоЭлементДинамическогоСписка(ТекущиеДанные) Тогда Возврат; КонецЕсли; @@ -519,7 +520,8 @@ Процедура УстановитьПароль(Команда) ТекущиеДанные = Элементы.ВнешниеПользователиСписок.ТекущиеДанные; - Если ТекущиеДанные <> Неопределено Тогда + + Если СтандартныеПодсистемыКлиент.ЭтоЭлементДинамическогоСписка(ТекущиеДанные) Тогда ПользователиСлужебныйКлиент.ОткрытьФормуСменыПароля(ТекущиеДанные.Ссылка); КонецЕсли; @@ -785,13 +787,13 @@ Элементы.ГруппаВыбратьПользователя.Видимость = Истина; // Включение видимости списка выбранных пользователей. Элементы.ВыбранныеПользователиИГруппы.Видимость = Истина; - Если ПолучитьФункциональнуюОпцию("ИспользоватьГруппыПользователей") Тогда + ИспользоватьГруппыПользователей = ПолучитьФункциональнуюОпцию("ИспользоватьГруппыПользователей"); + Элементы.ГруппаВыбратьГруппу.Видимость = ИспользоватьГруппыПользователей; + Если ИспользоватьГруппыПользователей Тогда Элементы.ГруппыИПользователи.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Вертикальная; - Элементы.ГруппыИПользователи.ШиринаПодчиненныхЭлементов = ШиринаПодчиненныхЭлементовФормы.Одинаковая; Элементы.ВнешниеПользователиСписок.Высота = 5; Элементы.ГруппыВнешнихПользователей.Высота = 3; ЭтотОбъект.Высота = 17; - Элементы.ГруппаВыбратьГруппу.Видимость = Истина; // Включение отображения заголовков списков ПользователиСписок и ГруппыПользователей. Элементы.ГруппыВнешнихПользователей.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Верх; Элементы.ВнешниеПользователиСписок.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Верх; @@ -1032,6 +1034,7 @@ #КонецЕсли Если ТекущиеДанные <> Неопределено + И Не ТекущиеДанные.Свойство("ГруппировкаСтроки") И ТекущиеДанные.ВсеОбъектыАвторизации Тогда ОбновитьЗначениеПараметраКомпоновкиДанных(Форма.ВнешниеПользователиСписок, diff --git a/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаЭлемента/Form.form index 1a6e07a58..bf037bb7c 100644 --- a/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаЭлемента/Form.form @@ -30,11 +30,8 @@ 231 true - 5 true - 2 true - false false @@ -79,7 +76,6 @@ true Label - true true false @@ -96,7 +92,6 @@ ru Свойства пояснение и команды - false СвойстваПояснениеИКомандыРасширеннаяПодсказка 251 @@ -126,7 +121,6 @@ ru Свойства обработка несоответствия - true СвойстваОбработкаНесоответствияРасширеннаяПодсказка 229 @@ -177,11 +171,8 @@ 171 true - 5 true - 2 true - false false @@ -202,11 +193,6 @@ true - - ru - Пользователь информационной базы сопоставлен с этим внешним пользователем справочника, -однако его не удается найти по сохраненному идентификатору. - СопоставлениеПояснениеНесоответствияРасширеннаяПодсказка 201 @@ -223,12 +209,7 @@ true Label - 20 - true - 2 true - true - false false Left @@ -244,8 +225,6 @@ ru Сопоставление обработка несоответствия - true - false СопоставлениеОбработкаНесоответствияРасширеннаяПодсказка 199 @@ -552,7 +531,6 @@ true Label - true true Style.ПоясняющийТекст @@ -896,7 +874,6 @@ true Label - true true Style.ПоясняющийТекст @@ -1050,7 +1027,6 @@ ru Параметры аутентификации 1С:Предприятия - true ПараметрыАутентификации1СПредприятияРасширеннаяПодсказка 210 @@ -1118,6 +1094,7 @@ Vertical Auto + NormalSeparation true true Auto @@ -1280,8 +1257,6 @@ ru Основные свойства - 36 - true ОсновныеСвойстваExtendedTooltip 206 @@ -1590,6 +1565,7 @@ true UserCmds Auto + InAdditionalSubmenu РолиСтандартныеКоманды @@ -1804,7 +1780,6 @@ ru Свойства пользователя информационной базы - true СвойстваПользователяИБExtendedTooltip 205 @@ -1920,7 +1895,6 @@ StartChoice КомментарийНачалоВыбора - true true true true @@ -2525,7 +2499,7 @@ ПользовательИБПолноеИмя <key>ru</key> - <value>Пользователь ИБПолное имя</value> + <value>Полное имя</value> 25 @@ -2763,7 +2737,7 @@ ПользовательИБПароль <key>ru</key> - <value>Пользователь ИБПароль</value> + <value>Пароль</value> 38 @@ -2794,7 +2768,7 @@ ПоказатьТолькоВыбранныеРоли <key>ru</key> - <value>Только выбранные роли</value> + <value>Только выбранные</value> 3 diff --git a/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаЭлемента/Module.bsl index 810fd1cac..f385bc2c3 100644 --- a/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/ВнешниеПользователи/Forms/ФормаЭлемента/Module.bsl @@ -108,6 +108,12 @@ ОбщаяНастройкаФормы(Истина); + Если ОбщегоНазначенияПовтИсп.ЭтоАвтономноеРабочееМесто() Тогда + Элементы.ГруппаШапка.ТолькоПросмотр = Истина; + Элементы.СтраницаДополнительныеРеквизиты.ТолькоПросмотр = Истина; + Элементы.СтраницаКомментарий.ТолькоПросмотр = Истина; + КонецЕсли; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Свойства") Тогда ДополнительныеПараметры = Новый Структура; ДополнительныеПараметры.Вставить("ИмяЭлементаДляРазмещения", "СтраницаДополнительныеРеквизиты"); @@ -120,12 +126,6 @@ Элементы.ГруппаИзменитьОграничение.Видимость = Ложь; КонецЕсли; - Если ОбщегоНазначенияПовтИсп.ЭтоАвтономноеРабочееМесто() Тогда - Элементы.ГруппаШапка.ТолькоПросмотр = Истина; - Элементы.СтраницаДополнительныеРеквизиты.ТолькоПросмотр = Истина; - Элементы.СтраницаКомментарий.ТолькоПросмотр = Истина; - КонецЕсли; - КонецПроцедуры &НаКлиенте @@ -476,6 +476,7 @@ &НаКлиенте Процедура ПользовательИБИмяПриИзменении(Элемент) + ПользовательИБИмя = СокрЛП(ПользовательИБИмя); ПользовательИБИмяЗначениеПрямогоИзменения = ПользовательИБИмя; УстановитьДоступностьСвойств(); diff --git a/SSL/src/Catalogs/ВнешниеПользователи/ObjectModule.bsl b/SSL/src/Catalogs/ВнешниеПользователи/ObjectModule.bsl index da802259d..d290feff6 100644 --- a/SSL/src/Catalogs/ВнешниеПользователи/ObjectModule.bsl +++ b/SSL/src/Catalogs/ВнешниеПользователи/ObjectModule.bsl @@ -13,7 +13,7 @@ #КонецОбласти -// *Область ПрограммныйИнтерфейс +// *Область ПрограммныйИнтерфейс. // // Программный интерфейс объекта реализован через ДополнительныеСвойства: // diff --git a/SSL/src/Catalogs/ВопросыШаблонаАнкеты/ManagerModule.bsl b/SSL/src/Catalogs/ВопросыШаблонаАнкеты/ManagerModule.bsl index 7ae895054..ffa099128 100644 --- a/SSL/src/Catalogs/ВопросыШаблонаАнкеты/ManagerModule.bsl +++ b/SSL/src/Catalogs/ВопросыШаблонаАнкеты/ManagerModule.bsl @@ -21,4 +21,121 @@ #КонецОбласти +#Область СлужебныйПрограммныйИнтерфейс + +//////////////////////////////////////////////////////////////////////////////// +// Обработчики обновления. + +// Регистрирует на плане обмена ОбновлениеИнформационнойБазы объекты, +// которые необходимо обновить на новую версию. +// +Процедура ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию(Параметры) Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ВопросыШаблонаАнкеты.Ссылка + |ИЗ + | Справочник.ВопросыШаблонаАнкеты КАК ВопросыШаблонаАнкеты + |ГДЕ + | ВопросыШаблонаАнкеты.СпособОтображенияПодсказки = &ПустаяСсылка"; + Запрос.Параметры.Вставить("ПустаяСсылка", Перечисления.СпособыОтображенияПодсказок.ПустаяСсылка()); + + Результат = Запрос.Выполнить().Выгрузить(); + МассивСсылок = Результат.ВыгрузитьКолонку("Ссылка"); + + ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры, МассивСсылок); + +КонецПроцедуры + +// Заполнить значение нового реквизита СпособОтображенияПодсказки у справочника ВопросыШаблонаАнкеты. +// +Процедура ОбработатьДанныеДляПереходаНаНовуюВерсию(Параметры) Экспорт + + Выборка = ОбновлениеИнформационнойБазы.ВыбратьСсылкиДляОбработки(Параметры.Очередь, "Справочник.ВопросыШаблонаАнкеты"); + + ПроблемныхОбъектов = 0; + ОбъектовОбработано = 0; + + Пока Выборка.Следующий() Цикл + + Попытка + + ЗаполнитьРеквизитСпособОтображенияПодсказки(Выборка); + ОбъектовОбработано = ОбъектовОбработано + 1; + + Исключение + // Если не удалось обработать объект, повторяем попытку снова. + ПроблемныхОбъектов = ПроблемныхОбъектов + 1; + + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось обработать вопрос шаблона анкеты: %1 по причине: + |%2'"), + Выборка.Ссылка, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение, + Метаданные.Справочники.ВопросыШаблонаАнкеты, Выборка.Ссылка, ТекстСообщения); + КонецПопытки; + + КонецЦикла; + + Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(Параметры.Очередь, "Справочник.ВопросыШаблонаАнкеты"); + Если ОбъектовОбработано = 0 И ПроблемныхОбъектов <> 0 Тогда + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Процедуре ЗаполнитьРеквизитСпособОтображенияПодсказки не удалось обработать некоторые вопросы шаблона анкеты (пропущены): %1'"), + ПроблемныхОбъектов); + ВызватьИсключение ТекстСообщения; + Иначе + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Информация, + Метаданные.Справочники.ВопросыШаблонаАнкеты,, + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Процедура ЗаполнитьРеквизитСпособОтображенияПодсказки обработала очередную порцию вопросов шаблона анкеты: %1'"), + ОбъектовОбработано)); + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +// Заполняет значение нового реквизита СпособОтображенияПодсказки у переданного объекта. +// +Процедура ЗаполнитьРеквизитСпособОтображенияПодсказки(Выборка) + + НачатьТранзакцию(); + Попытка + + // Блокируем объект от изменения другими сеансами. + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("Справочник.ВопросыШаблонаАнкеты"); + ЭлементБлокировки.УстановитьЗначение("Ссылка", Выборка.Ссылка); + Блокировка.Заблокировать(); + + СправочникОбъект = Выборка.Ссылка.ПолучитьОбъект(); + + // Если объект ранее был удален или обработан другими сеансами, пропускаем его. + Если СправочникОбъект = Неопределено Тогда + ОтменитьТранзакцию(); + Возврат; + КонецЕсли; + Если СправочникОбъект.СпособОтображенияПодсказки <> Перечисления.СпособыОтображенияПодсказок.ПустаяСсылка() Тогда + ОтменитьТранзакцию(); + Возврат; + КонецЕсли; + + // Обработка объекта. + СправочникОбъект.СпособОтображенияПодсказки = Перечисления.СпособыОтображенияПодсказок.КонтекстнаяПодсказка; + + // Запись обработанного объекта. + ОбновлениеИнформационнойБазы.ЗаписатьДанные(СправочникОбъект); + + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + +КонецПроцедуры + +#КонецОбласти + #КонецЕсли diff --git a/SSL/src/Catalogs/ВопросыШаблонаАнкеты/ВопросыШаблонаАнкеты.mdo b/SSL/src/Catalogs/ВопросыШаблонаАнкеты/ВопросыШаблонаАнкеты.mdo index 2bd7cb0fd..3d45c9c65 100644 --- a/SSL/src/Catalogs/ВопросыШаблонаАнкеты/ВопросыШаблонаАнкеты.mdo +++ b/SSL/src/Catalogs/ВопросыШаблонаАнкеты/ВопросыШаблонаАнкеты.mdo @@ -148,9 +148,7 @@ String - - 300 - + ru @@ -285,6 +283,45 @@ ForFolderAndItem Use + + Подсказка + + ru + Подсказка + + + String + + + + ru + Текст подсказки + + + + + Use + Use + + + СпособОтображенияПодсказки + + ru + Способ отображения подсказки + + + EnumRef.СпособыОтображенияПодсказок + + + ru + Способ отображения подсказки в форме анкеты + + + + + Use + Use + @@ -377,4 +414,41 @@ Use + + + + + + СоставКомплексногоВопроса + + ru + Состав комплексного вопроса + + + Use + LineNumber + + Use + + + + + ЭлементарныйВопрос + + ru + Элементарный вопрос + + + ChartOfCharacteristicTypesRef.ВопросыДляАнкетирования + + + ru + Элементарный вопрос, являющийся составной частью комплексного вопроса + + + + Use + Use + + diff --git a/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаСписка/Form.form index c0641d3da..663e59a12 100644 --- a/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаСписка/Form.form @@ -283,6 +283,7 @@ true true true + true MultiRow
    true
    1 @@ -368,7 +369,6 @@ OnCreateAtServer ПриСозданииНаСервере - 65 DontBlock true true diff --git a/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаСписка/Module.bsl index fd1a997d3..a18fe2c62 100644 --- a/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаСписка/Module.bsl @@ -11,12 +11,9 @@ НастроитьПорядокГруппыВсеВнешниеПользователи(Список); Если Параметры.РежимВыбора Тогда - СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(ЭтотОбъект, "ВыборПодбор"); РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; - Элементы.Список.РежимВыбора = Истина; - // Исключение выбора группы Все внешние пользователи в качестве родителя. ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( Список, "Ссылка", Справочники.ГруппыВнешнихПользователей.ВсеВнешниеПользователи, @@ -30,6 +27,8 @@ Иначе Заголовок = НСтр("ru = 'Выбор группы внешних пользователей'"); КонецЕсли; + Иначе + Элементы.Список.РежимВыбора = Ложь; КонецЕсли; Если ОбщегоНазначенияПовтИсп.ЭтоАвтономноеРабочееМесто() Тогда diff --git a/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаЭлемента/Form.form index 8076e5c55..721bb07b5 100644 --- a/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаЭлемента/Form.form @@ -45,6 +45,59 @@ Normal
    + + Родитель + 40 + + <key>ru</key> + <value>В группе</value> + + true + true + + true + + + Объект.Parent + + + OnChange + РодительПриИзменении + + + РодительExtendedTooltip + 184 + Label + true + true + + Left + + + + РодительКонтекстноеМеню + 41 + true + + InputField + Enter + true + Left + true + + + StartChoice + РодительНачалоВыбора + + true + true + true + true + true + true + Normal + + СоставИРоли 9 @@ -158,7 +211,6 @@ true Label - true true Left @@ -595,36 +647,36 @@ UserCmds Auto - - ПоказыватьНедействительныхПользователей - 149 - true - true - - true - - - ПоказыватьНедействительныхПользователейExtendedTooltip - 152 - Label - true - true - - Left - - - Form.Command.ПоказыватьНедействительныхПользователей - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - СоставСтандартныеКоманды 194 + + ПоказыватьНедействительныхПользователей + 149 + true + true + + true + + + ПоказыватьНедействительныхПользователейExtendedTooltip + 152 + Label + true + true + + Left + + + Form.Command.ПоказыватьНедействительныхПользователей + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + true true @@ -961,7 +1013,6 @@ true true - 30 true true true @@ -991,59 +1042,6 @@ true - - Родитель - 40 - - <key>ru</key> - <value>В группе</value> - - true - true - - true - - - Объект.Parent - - - OnChange - РодительПриИзменении - - - РодительExtendedTooltip - 184 - Label - true - true - - Left - - - - РодительКонтекстноеМеню - 41 - true - - InputField - Enter - true - Left - true - - - StartChoice - РодительНачалоВыбора - - true - true - true - true - true - true - Normal - - true true @@ -1311,11 +1309,12 @@ Form.Command.ГруппировкаРолейПоПодсистемам Normal - Auto + Picture true true UserCmds Auto + InAdditionalSubmenu
    РолиСтандартныеКоманды @@ -1470,7 +1469,6 @@ ru Отображение ролей - 48 ОтображениеРолейExtendedTooltip 175 @@ -1561,7 +1559,6 @@ StartChoice КомментарийНачалоВыбора - true true true true @@ -1998,7 +1995,7 @@ ПоказатьТолькоВыбранныеРоли <key>ru</key> - <value>Только выбранные роли</value> + <value>Только выбранные</value> 2 diff --git a/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаЭлемента/Module.bsl index ff6192965..36392936f 100644 --- a/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/ГруппыВнешнихПользователей/Forms/ФормаЭлемента/Module.bsl @@ -253,9 +253,6 @@ &НаКлиенте Процедура СоставОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) - ОтборСтрок = Новый Структура(Элементы.Состав.ОтборСтрок); - Элементы.Состав.ОтборСтрок = Новый ФиксированнаяСтруктура; - Объект.Состав.Очистить(); Если ТипЗнч(ВыбранноеЗначение) = Тип("Массив") Тогда Для каждого Значение Из ВыбранноеЗначение Цикл @@ -265,10 +262,9 @@ ОбработкаВыбораВнешнегоПользователя(ВыбранноеЗначение); КонецЕсли; ЗаполнитьСтатусПользователей(); + Элементы.Состав.Обновить(); УстановитьДоступностьСвойств(ЭтотОбъект); - Элементы.Состав.ОтборСтрок = Новый ФиксированнаяСтруктура(ОтборСтрок); - КонецПроцедуры &НаКлиенте diff --git a/SSL/src/Catalogs/ГруппыВнешнихПользователей/ObjectModule.bsl b/SSL/src/Catalogs/ГруппыВнешнихПользователей/ObjectModule.bsl index 95973cf13..d0691be31 100644 --- a/SSL/src/Catalogs/ГруппыВнешнихПользователей/ObjectModule.bsl +++ b/SSL/src/Catalogs/ГруппыВнешнихПользователей/ObjectModule.bsl @@ -45,7 +45,7 @@ // Проверка незаполненных и повторяющихся внешних пользователей. ПроверенныеРеквизитыОбъекта.Добавить("Состав.ВнешнийПользователь"); - // Проверка заполнения назначения группы + // Проверка заполнения назначения группы. Если Назначение.Количество() = 0 Тогда ОбщегоНазначенияКлиентСервер.ДобавитьОшибкуПользователю(Ошибки, "Объект.Назначение", diff --git a/SSL/src/Catalogs/ГруппыДоступа/Forms/ВыборПоОтветственному/Form.form b/SSL/src/Catalogs/ГруппыДоступа/Forms/ВыборПоОтветственному/Form.form index a49656b17..53eab705e 100644 --- a/SSL/src/Catalogs/ГруппыДоступа/Forms/ВыборПоОтветственному/Form.form +++ b/SSL/src/Catalogs/ГруппыДоступа/Forms/ВыборПоОтветственному/Form.form @@ -66,6 +66,45 @@ true + + ГруппыДоступаСсылка + 22 + true + true + + + ГруппыДоступа.Ссылка + + + ГруппыДоступаСсылкаРасширеннаяПодсказка + 24 + Label + true + true + + Left + + + + ГруппыДоступаСсылкаКонтекстноеМеню + 23 + true + + InputField + Auto + true + Left + true + + true + true + true + true + true + true + Normal + + None ГруппыДоступаКоманднаяПанель @@ -191,6 +230,48 @@ None true
    + + ГруппыДоступаОписание + 19 + true + true + + true + + + Items.ГруппыДоступа.CurrentData.Описание + + Left + + ГруппыДоступаОписаниеРасширеннаяПодсказка + 21 + Label + true + true + + Left + + + + ГруппыДоступаОписаниеКонтекстноеМеню + 20 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + ФормаКоманднаяПанель -1 @@ -227,7 +308,6 @@ OnCreateAtServer ПриСозданииНаСервере - 50 LockOwner true true @@ -325,6 +405,24 @@ true + + Описание + + <key>ru</key> + <value>Описание</value> + + 5 + + String + + + + true + + + true + + Выбрать diff --git a/SSL/src/Catalogs/ГруппыДоступа/Forms/ВыборПоОтветственному/Module.bsl b/SSL/src/Catalogs/ГруппыДоступа/Forms/ВыборПоОтветственному/Module.bsl index 52ce7bcdd..71da9f552 100644 --- a/SSL/src/Catalogs/ГруппыДоступа/Forms/ВыборПоОтветственному/Module.bsl +++ b/SSL/src/Catalogs/ГруппыДоступа/Forms/ВыборПоОтветственному/Module.bsl @@ -32,7 +32,8 @@ | ТОГДА 3 | ИНАЧЕ 4 | КОНЕЦ КАК НомерКартинки, - | ЛОЖЬ КАК Пометка + | ЛОЖЬ КАК Пометка, + | ГруппыДоступа.Описание |ИЗ | Справочник.ГруппыДоступа КАК ГруппыДоступа |ГДЕ @@ -62,8 +63,8 @@ | КОНЕЦ | И ВЫБОР | КОГДА ТИПЗНАЧЕНИЯ(&ПользовательГрупп) = ТИП(Справочник.Пользователи) - | ИЛИ ТИПЗНАЧЕНИЯ(&ПользовательГрупп) = ТИП(Справочник.ГруппыПользователей) - | ТОГДА ИСТИНА В + | ИЛИ ТИПЗНАЧЕНИЯ(&ПользовательГрупп) = ТИП(Справочник.ГруппыПользователей) + | ТОГДА ИСТИНА В | (ВЫБРАТЬ ПЕРВЫЕ 1 | ИСТИНА | ИЗ @@ -72,7 +73,7 @@ | ПрофилиГруппДоступаНазначение.Ссылка = ГруппыДоступа.Профиль | И ТИПЗНАЧЕНИЯ(ПрофилиГруппДоступаНазначение.ТипПользователей) = ТИП(Справочник.Пользователи)) | КОГДА ТИПЗНАЧЕНИЯ(&ПользовательГрупп) = ТИП(Справочник.ВнешниеПользователи) - | ТОГДА ИСТИНА В + | ТОГДА ИСТИНА В | (ВЫБРАТЬ ПЕРВЫЕ 1 | ИСТИНА | ИЗ @@ -83,7 +84,7 @@ | И ПрофилиГруппДоступаНазначение.Ссылка = ГруппыДоступа.Профиль | И ТИПЗНАЧЕНИЯ(ПрофилиГруппДоступаНазначение.ТипПользователей) = ТИПЗНАЧЕНИЯ(ВнешниеПользователи.ОбъектАвторизации)) | КОГДА ТИПЗНАЧЕНИЯ(&ПользовательГрупп) = ТИП(Справочник.ГруппыВнешнихПользователей) - | ТОГДА ИСТИНА В + | ТОГДА ИСТИНА В | (ВЫБРАТЬ ПЕРВЫЕ 1 | ИСТИНА | ИЗ diff --git a/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаВыбораГруппы/Form.form b/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаВыбораГруппы/Form.form index b7ec26569..1a11f0668 100644 --- a/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаВыбораГруппы/Form.form +++ b/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаВыбораГруппы/Form.form @@ -51,6 +51,40 @@ true
    + + Ссылка + 20 + true + true + + + Список.Ref + + + СсылкаРасширеннаяПодсказка + 22 + Label + true + true + + Left + + + + СсылкаКонтекстноеМеню + 21 + true + + LabelField + Enter + true + Left + true + + true + true + + None СписокКоманднаяПанель @@ -187,6 +221,49 @@ true
    + + Описание + 17 + true + true + + true + + + Items.Список.CurrentData.Описание + + Left + + ОписаниеРасширеннаяПодсказка + 19 + Label + true + true + + Left + + + + ОписаниеКонтекстноеМеню + 18 + true + + InputField + Enter + true + Left + true + + 2 + true + true + true + true + true + true + Normal + + ФормаКоманднаяПанель -1 @@ -220,6 +297,9 @@ true + + Список.Ref +
    true
    Catalog.ГруппыДоступа diff --git a/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаГруппы/Form.form b/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаГруппы/Form.form index a20c74957..64311f9be 100644 --- a/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаГруппы/Form.form +++ b/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаГруппы/Form.form @@ -60,6 +60,7 @@ Объект.Parent + 2 ru Вышестоящая группа (папка), объединяющая группы (папки) для удобства поиска diff --git a/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаСписка/Form.form index 37072e22d..3af32abdd 100644 --- a/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 41 @@ -704,7 +703,6 @@ OnCreateAtServer ПриСозданииНаСервере - 80 DontBlock true true diff --git a/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаСписка/Module.bsl index 0d666ba7d..0d9b5d2d9 100644 --- a/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаСписка/Module.bsl @@ -10,10 +10,10 @@ Если Параметры.РежимВыбора Тогда СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(ЭтотОбъект, "ВыборПодбор"); + Иначе + Элементы.Список.РежимВыбора = Ложь; КонецЕсли; - Элементы.Список.РежимВыбора = Параметры.РежимВыбора; - РодительПерсональныхГруппДоступа = Справочники.ГруппыДоступа.РодительПерсональныхГруппДоступа(Истина); УпрощенныйИнтерфейсНастройкиПравДоступа = УправлениеДоступомСлужебный.УпрощенныйИнтерфейсНастройкиПравДоступа(); @@ -66,7 +66,6 @@ Если Параметры.РежимВыбора Тогда РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; - Элементы.Список.РежимВыбора = Истина; Элементы.Список.ВыборГруппИЭлементов = Параметры.ВыборГруппИЭлементов; АвтоЗаголовок = Ложь; @@ -78,7 +77,6 @@ Заголовок = НСтр("ru = 'Подбор групп доступа'"); Иначе Заголовок = НСтр("ru = 'Выбор группы доступа'"); - Элементы.ФормаВыбрать.КнопкаПоУмолчанию = Ложь; КонецЕсли; КонецЕсли; @@ -95,24 +93,23 @@ &НаКлиенте Процедура СписокПриАктивизацииСтроки(Элемент) - Если Элементы.Список.ТекущиеДанные <> Неопределено - И Элементы.Список.ТекущиеДанные.Свойство("Пользователь") - И Элементы.Список.ТекущиеДанные.Свойство("Ссылка") Тогда - - ПереносДопустим = НЕ ЗначениеЗаполнено(Элементы.Список.ТекущиеДанные.Пользователь) - И Элементы.Список.ТекущиеДанные.Ссылка <> РодительПерсональныхГруппДоступа; - - Если Элементы.Найти("ФормаПеренестиЭлемент") <> Неопределено Тогда - Элементы.ФормаПеренестиЭлемент.Доступность = ПереносДопустим; - КонецЕсли; - - Если Элементы.Найти("СписокКонтекстноеМенюПеренестиЭлемент") <> Неопределено Тогда - Элементы.СписокКонтекстноеМенюПеренестиЭлемент.Доступность = ПереносДопустим; - КонецЕсли; - - Если Элементы.Найти("СписокПеренестиЭлемент") <> Неопределено Тогда - Элементы.СписокПеренестиЭлемент.Доступность = ПереносДопустим; - КонецЕсли; + Если Не СтандартныеПодсистемыКлиент.ЭтоЭлементДинамическогоСписка(Элементы.Список) Тогда + Возврат; + КонецЕсли; + + ПереносДопустим = НЕ ЗначениеЗаполнено(Элементы.Список.ТекущиеДанные.Пользователь) + И Элементы.Список.ТекущиеДанные.Ссылка <> РодительПерсональныхГруппДоступа; + + Если Элементы.Найти("ФормаПеренестиЭлемент") <> Неопределено Тогда + Элементы.ФормаПеренестиЭлемент.Доступность = ПереносДопустим; + КонецЕсли; + + Если Элементы.Найти("СписокКонтекстноеМенюПеренестиЭлемент") <> Неопределено Тогда + Элементы.СписокКонтекстноеМенюПеренестиЭлемент.Доступность = ПереносДопустим; + КонецЕсли; + + Если Элементы.Найти("СписокПеренестиЭлемент") <> Неопределено Тогда + Элементы.СписокПеренестиЭлемент.Доступность = ПереносДопустим; КонецЕсли; КонецПроцедуры diff --git a/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаЭлемента/Form.form index 07ec118fa..c2d32380b 100644 --- a/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаЭлемента/Form.form @@ -128,48 +128,6 @@ Normal
    - - НазначениеПредставление - 440 - true - true - - true - - - НазначениеПредставление - - - НазначениеПредставлениеРасширеннаяПодсказка - 442 - Label - true - true - - Left - - - - НазначениеПредставлениеКонтекстноеМеню - 441 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - true true @@ -187,119 +145,7 @@ UsualGroup - Auto - true - true - Auto - Auto - -
    - - СвойстваПерсональнойГруппы - 292 - - ПользовательВладелец - 303 - true - true - - true - - - Объект.Пользователь - - - ПользовательВладелецExtendedTooltip - 341 - Label - true - true - - Left - - - - ПользовательВладелецКонтекстноеМеню - 304 - true - - InputField - Enter - true - Left - true - - - StartChoice - ПользовательВладелецНачалоВыбора - - true - true - true - false - true - true - true - true - true - Normal - - - - ИспользованиеПерсональногоДоступа - 296 - true - true - - true - - - ИспользованиеПерсональногоДоступа - - Right - - ИспользованиеПерсональногоДоступаExtendedTooltip - 342 - Label - true - true - - Left - - - - ИспользованиеПерсональногоДоступаКонтекстноеМеню - 297 - true - - CheckBoxField - Enter - true - Left - true - - - true - true - - true - - - <key>ru</key> - <value>Свойства персональной группы</value> - - - СвойстваПерсональнойГруппыExtendedTooltip - 340 - Label - true - true - - Left - - - UsualGroup - + Vertical Auto true true @@ -333,6 +179,11 @@ HierarchicalList List Tree + + ru + Допустимые участники: + + ShowBottom Пользователь 301 @@ -385,7 +236,7 @@ TextEditEnd ПользовательОкончаниеВводаТекста - true + 40 true true true @@ -452,6 +303,33 @@ Auto InAdditionalSubmenu + + Удалить + 440 + true + true + + true + + + УдалитьРасширеннаяПодсказка + 441 + Label + true + true + + Left + + + Form.Item.Пользователи.StandardCommand.Delete + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + ПользователиСтандартныеКоманды 405 @@ -690,48 +568,6 @@ None true - - Ответственный - 314 - true - true - - true - - - Объект.Ответственный - - - ОтветственныйExtendedTooltip - 361 - Label - true - true - - Left - - - - ОтветственныйКонтекстноеМеню - 315 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal - - true true @@ -739,7 +575,7 @@ <key>ru</key> - <value>Участники</value> + <value>Участники группы</value> System.DefaultGUIFont @@ -752,7 +588,6 @@ ru Пользователи группы - 25 ПользователиГруппыExtendedTooltip 344 @@ -836,8 +671,9 @@ Left true - true + 20 true + false true true true @@ -1152,7 +988,6 @@ true false false - false true Auto Auto @@ -1194,7 +1029,6 @@ true Label - true true Left @@ -1434,7 +1268,6 @@ AutoUse true true - false true Auto Auto @@ -1549,8 +1382,6 @@ Left true - true - 2 true true true @@ -1600,11 +1431,6 @@ ru Пользователи и доступ - - ru - Пользователи и доступ - - 12 ПользователиИДоступExtendedTooltip 343 @@ -1621,6 +1447,166 @@ Auto + + СвойстваПерсональнойГруппы + 292 + + ИспользованиеПерсональногоДоступа + 296 + + <key>ru</key> + <value>Персональный доступ для:</value> + + true + true + + true + + + ИспользованиеПерсональногоДоступа + + Right + + ИспользованиеПерсональногоДоступаExtendedTooltip + 342 + Label + true + true + + Left + + + + ИспользованиеПерсональногоДоступаКонтекстноеМеню + 297 + true + + CheckBoxField + Enter + true + Left + true + + + + ПользовательВладелец + 303 + true + true + + true + + + Объект.Пользователь + + None + + ПользовательВладелецExtendedTooltip + 341 + Label + true + true + + Left + + + + ПользовательВладелецКонтекстноеМеню + 304 + true + + InputField + Enter + true + Left + true + + + StartChoice + ПользовательВладелецНачалоВыбора + + true + true + true + false + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Свойства персональной группы</value> + + + СвойстваПерсональнойГруппыExtendedTooltip + 340 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + Ответственный + 314 + true + true + + true + + + Объект.Ответственный + + + ОтветственныйExtendedTooltip + 361 + Label + true + true + + Left + + + + ОтветственныйКонтекстноеМеню + 315 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + true + Normal + + ОтветственныйЗаПерсональнуюГруппу 316 @@ -2103,24 +2089,6 @@ true - - НазначениеПредставление - - <key>ru</key> - <value>Назначение</value> - - 28 - - String - - - - true - - - true - - Назначение diff --git a/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаЭлемента/Help/ru.html b/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаЭлемента/Help/ru.html index 38bdffcdb..f9ec43de0 100644 --- a/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаЭлемента/Help/ru.html +++ b/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаЭлемента/Help/ru.html @@ -7,30 +7,30 @@ <h3>Ввод группы доступа</h3> <p>Для группы доступа задается профиль (рекомендуется с него начать заполнение), список участников и ограничения доступа.</p> <ul><li>Выберите <strong>Профиль</strong>. Он определяет права (списком ролей) и возможности ограничения прав по "разрезам" (видам доступа), например, ограничения по видам <strong>Организации</strong>, <strong>Склады</strong> и т.д. Виды доступа из профиля будут добавлены в группу доступа автоматически. -</li><li>Исходя из целей использования и ограничений, настраиваемых по имеющимся видам доступа, следует ввести <strong>Наименование</strong> группы доступа (<a href="Catalog.ГруппыДоступа/Help">подробнее в назначении групп доступа</a>). +</li><li>Исходя из целей использования и ограничений, настраиваемых по имеющимся видам доступа, следует ввести <strong>Наименование</strong> группы доступа (<a href="Catalog.ГруппыДоступа/Help">подробнее о назначении групп доступа</a>). <ul><li>Рекомендуется называть группу доступа во множественном числе таким образом, чтобы ее имя содержало указание на используемый в ней профиль (в поле <strong>Профиль</strong>) и однозначно характеризовало определенный в ней состав настроек прав доступа. Например, на базе профиля<strong> Менеджеры по продажам</strong> могут быть введены группы доступа <strong>Менеджеры по продажам в ООО "Далекая перспектива"</strong> и <strong>Менеджеры по продажам в ЗАО "Новые технологии"</strong>.</li></ul></li><li>Группа доступа может входить в одну из <a href="Catalog.ГруппыДоступа.Form.ФормаГруппы/Help">папок</a> групп доступа. -<ul><li>В поле <strong>Группа (папка)</strong> выберите папку из <a href="Catalog.ГруппыДоступа.Form.ФормаВыбораГруппы/Help">списка</a>.  </li></ul></li><li>Поле <strong>Назначение</strong> заполняется программой автоматически из профиля групп доступа, например, <strong>Пользователи</strong>. Это определяет состав участников группы доступа. +<ul><li>В поле <strong>Группа (папка)</strong> выберите папку из <a href="Catalog.ГруппыДоступа.Form.ФормаВыбораГруппы/Help">списка</a>.  </li></ul></li><li>Допустимые участники группы доступа определяются в профиле в соответствии с выбранным назначением.  <ul><li>В зависимости от настроек профиля в группу доступа могут входить разные типы пользователей: <a href="Catalog.Пользователи/Help">пользователи</a> и <a href="Catalog.ГруппыПользователей/Help">группы пользователей</a>. В составе участников группы доступа могут быть также перечислены <a href="Catalog.ВнешниеПользователи/Help">внешние пользователи</a> и <a href="Catalog.ГруппыВнешнихПользователей/Help">группы внешних пользователей</a> (это может понадобиться для проведения анкетирования, например). </li></ul></li><li>На вкладке <a href="#1">Участники</a> заполните список участников группы доступа, укажите ответственного за группу доступа. </li><li>На вкладке <a href="#2">Ограничения доступа</a> необходимо произвести дополнительные настройки прав доступа. -</li><li>На вкладке <strong>Описание</strong> можно ввести подробную информацию о группе доступа.</li></ul><h3><a name="1">Участники</a></h3> +</li><li>На вкладке <strong>Описание</strong> можно ввести подробную информацию о группе доступа.</li></ul><h3><a name="1">Участники</a> группы</h3> <ul><li> -<div>В зависимости от указанного в поле <strong>Назначение</strong> состава группы доступа на этой вкладке будут доступны соответствующие списки пользователей для выбора участников группы доступа. </div> +<div>Перечислите список пользователей (и групп пользователей), на которых должны распространяться настройки прав доступа. Списки, из которых можно выбрать участников группы, перечислены в поле <strong>Допустимые участники</strong> в нижней части вкладки. </div> <ul><li> <div>Для добавления сразу нескольких участников нажмите <strong>Подобрать</strong>, для добавления одного участника нажмите <strong>Еще - Добавить</strong>. Выберите из предлагаемого списка нужных участников группы доступа. </div> </li><li> -<div>Для удаления одного или нескольких ненужных участников группы доступа выделите их, нажмите <strong>Еще - Удалить</strong>.</div></li></ul></li><li> +<div>Для удаления одного или нескольких ненужных участников группы доступа выделите их, нажмите <strong>Удалить</strong>.</div></li></ul></li><li> <div>Заполните поле <strong>Ответственный</strong> (выберите из списка <strong>Пользователи</strong>). Пользователь, указанный в группе доступа как <strong>Ответственный</strong>, может изменять состав участников данной группы. </div></li></ul><h3><a name="2">Ограничения доступа</a></h3> <ul><li>На вкладке <strong>Ограничения доступа</strong> необходимо указать дополнительные настройки прав доступа. В зависимости от настроек профиля, в группе доступа ограничения доступа только уточняются. Иногда ограничения доступа в профиле настроены так, что уточнений не требуется. В таких случаях вкладка <strong>Ограничения доступа</strong> становится недоступной. -</li><li>Состав видов доступа, перечисленных на этой вкладке, зависит от профиля, выбранного в поле <strong>Профиль</strong>. Кроме того, профиль также определяет, как именно действует настройка вида доступа: она разрешает только просмотр или также включает возможность редактирования данных.  Например, в случае если профиль групп доступа включает в себя роль для чтения документов <strong>Поступление товаров</strong>, то пользователи получают возможность просматривать документы по заданным организациям. Если же в профиле содержится роль для добавления и изменения, то появляется возможность редактировать такие документы. -</li><li>С помощью поля <strong>Вид доступа</strong> можно задать границы области данных, с которой разрешено работать участникам группы доступа. Вид доступа - это некоторое правило, по которому "разрешается" доступ к данным программы. Например, с помощью вида доступа <strong>Организации</strong> можно разрешить работать пользователям только с документами  по конкретным организациям, или наоборот, скрыть от них документы некоторых организаций. +</li><li>Состав видов доступа, перечисленных на этой вкладке, зависит от профиля, выбранного в поле <strong>Профиль</strong>. Кроме того, профиль также определяет, как именно действует настройка вида доступа: она разрешает только просмотр или также включает возможность редактирования данных.  Например, в случае если профиль групп доступа включает в себя роль для чтения документов <strong>Демо: Поступление товаров</strong>, то пользователи получают возможность просматривать документы по заданным организациям. Если же в профиле содержится роль для добавления и изменения, то появляется возможность редактировать такие документы. +</li><li>С помощью поля <strong>Вид доступа</strong> можно задать границы области данных, с которой разрешено работать участникам группы доступа. Вид доступа - это некоторое правило, по которому "разрешается" доступ к данным программы. Например, с помощью вида доступа <strong>Демо:</strong> <strong>Организации</strong> можно разрешить работать пользователям только с документами  по конкретным организациям, или наоборот, скрыть от них документы некоторых организаций. </li><li>Для того чтобы настроить ограничения, нужно для каждого вида доступа определить список значений. </li><li> <div>Для установки значений используйте двойной щелчок мыши (также можно выполнить команду <strong>Изменить</strong> контекстного меню по правой кнопке мыши). Для каждого <strong>Вида доступа</strong> установите <strong>Значения доступа</strong>. Для выбора предусмотрено два значения:  </div> <ul><li><strong>Все запрещены</strong>. Для вида доступа можно указать список разрешенных значений. Такой способ настройки подходит в тех случаях, когда стоит задача предоставить доступ только к определенной области данных. </li><li> -<div><strong>Все разрешены</strong>. Для вида доступа можно указать список тех значений, которые не должны быть доступны. Второй способ настройки удобен в случаях, когда требуется закрыть доступ к заранее известной области данных, а для всех новых значений, вводимых в программу, должны по умолчанию действовать разрешительные правила. Например, если с помощью вида доступа <strong>Организации</strong> задано правило, запрещающее работать с документами по организации "Далекая перспектива", то на новую организацию "Новые технологии", введенную в программу позднее, эти ограничения распространяться не будут. При этом следует учитывать, что разрешающие настройки имеют приоритет над запрещающими. Так, если в приведенном выше примере пользователю будет разрешен ввод документов по организации "Далекая перспектива" в какой-либо другой группе доступа с тем же профилем, то в итоге он получит доступ ко всем документам по этой организации</div></li></ul></li><li> +<div><strong>Все разрешены</strong>. Для вида доступа можно указать список тех значений, которые не должны быть доступны. Второй способ настройки удобен в случаях, когда требуется закрыть доступ к заранее известной области данных, а для всех новых значений, вводимых в программу, должны по умолчанию действовать разрешительные правила. Например, если с помощью вида доступа <strong>Демо:</strong> <strong>Организации</strong> задано правило, запрещающее работать с документами по организации "Далекая перспектива", то на новую организацию "Новые технологии", введенную в программу позднее, эти ограничения распространяться не будут. При этом следует учитывать, что разрешающие настройки имеют приоритет над запрещающими. Так, если в приведенном выше примере пользователю будет разрешен ввод документов по организации "Далекая перспектива" в какой-либо другой группе доступа с тем же профилем, то в итоге он получит доступ ко всем документам по этой организации</div></li></ul></li><li> <div>При необходимости для каждого <strong>Вида доступа</strong> можно задать список значений или групп значений, которые будут исключениями. Для этого в списке <strong>Разрешенные(Запрещенные) значения</strong> нажмите <strong>Добавить</strong>. Выберите исключения из предлагаемых программой списков.</div> -<ul><li>В ряде случаев для упрощения настройки прав доступа, в списке разрешенных или запрещенных значений можно указывать не отдельные элементы, а целые группы элементов. Например, для вида доступа <strong>Партнеры</strong> можно ограничить доступ в разрезе групп доступа партнеров, а не по каждому партнеру в отдельности. Для этого необходимо определить список групп доступа партнеров, и у каждого партнера задать принадлежность к той или иной группе. Эти действия могут быть выполнены не только администратором, но и любым пользователем с соответствующими правами на редактирование списка партнеров.</li></ul></li><li>В некоторых группах доступа предусмотрена настройка прав с помощью вида доступа <strong>Пользователи</strong> (аналогично, вид доступа <strong>Внешние пользователи</strong> для внешних пользователей). Настройка может учитываться только в тех документах (и других объектах программы), в полях которых могут быть указаны пользователи, получающие доступ к этим документам ("Ответственный", "Автор", "Исполнитель" и т.п.). +<ul><li>В ряде случаев для упрощения настройки прав доступа, в списке разрешенных или запрещенных значений можно указывать не отдельные элементы, а целые группы элементов. Например, для вида доступа <strong>Демо: Группы Партнеров</strong> можно ограничить доступ в разрезе групп доступа партнеров, а не по каждому партнеру в отдельности. Для этого необходимо определить список групп доступа партнеров, и у каждого партнера задать принадлежность к той или иной группе. Эти действия могут быть выполнены не только администратором, но и любым пользователем с соответствующими правами на редактирование списка партнеров.</li></ul></li><li>В некоторых группах доступа предусмотрена настройка прав с помощью вида доступа <strong>Пользователи</strong> (аналогично, вид доступа <strong>Внешние пользователи</strong> для внешних пользователей). Настройка может учитываться только в тех документах (и других объектах программы), в полях которых могут быть указаны пользователи, получающие доступ к этим документам ("Ответственный", "Автор", "Исполнитель" и т.п.). <ul><li>Для того чтобы дать участникам группы права доступа ко всем ограниченным данным, с которыми работает тот или иной пользователь, необходимо включить его в список разрешенных значений для вида доступа <strong>Пользователи</strong>. </li><li>Например, если доступ к документам <strong>Поступление товаров и услуг </strong>зависит от того, кто указан в поле <strong>Ответственный</strong>, тогда пользователь сможет записывать документы, у которых <strong>Ответственный</strong> совпадает с пользователем, или добавлен в список разрешенных для вида доступа <strong>Пользователи</strong>. Аналогично действует запрещающая настройка.</li></ul></li></ul><h3>См. также:</h3> <ul><li><a href="v8help://frame/form_common">Работа с формами</a>. </li></ul></body></html> \ No newline at end of file diff --git a/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаЭлемента/Module.bsl index df8b75adb..f9742860b 100644 --- a/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/ГруппыДоступа/Forms/ФормаЭлемента/Module.bsl @@ -997,6 +997,7 @@ ПредставлениеТипа, НазначениеПредставление + ", " + ПредставлениеТипа); КонецЕсли; КонецЦикла; + Элементы.Пользователи.Подсказка = НСтр("ru = 'Допустимые участники:'") + " " + НазначениеПредставление; КонецПроцедуры @@ -1198,7 +1199,7 @@ КонецЕсли; - Иначе // только для внешних пользователей + Иначе // только для внешних пользователей. ВыборИПодборВнешнихПользователей = Истина; diff --git a/SSL/src/Catalogs/ГруппыДоступа/ManagerModule.bsl b/SSL/src/Catalogs/ГруппыДоступа/ManagerModule.bsl index b36a56252..13c83b1e1 100644 --- a/SSL/src/Catalogs/ГруппыДоступа/ManagerModule.bsl +++ b/SSL/src/Catalogs/ГруппыДоступа/ManagerModule.bsl @@ -66,8 +66,9 @@ // удаляемому виду доступа. // // Параметры: -// Профиль - СправочникСсылка.ПрофилиГруппДоступа -// ОбновлятьГруппыДоступаСУстаревшимиНастройками - Булево. +// Профиль - СправочникСсылка.ПрофилиГруппДоступа - профиль групп доступа. +// +// ОбновлятьГруппыДоступаСУстаревшимиНастройками - Булево - обновлять группы доступа. // // Возвращаемое значение: // Булево - когда Истина, группа доступа была изменена, @@ -181,7 +182,7 @@ // а функция вернет Неопределено, если родитель не найден. // // Возвращаемое значение: -// СправочникСсылка.ГруппыДоступа. +// СправочникСсылка.ГруппыДоступа - ссылка на группу-родителя. // Функция РодительПерсональныхГруппДоступа(Знач НеСоздавать = Ложь, НаименованиеГруппыЭлементов = Неопределено) Экспорт diff --git a/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаСписка/Form.form index bd1e38ab4..d6e86ea10 100644 --- a/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаСписка/Form.form @@ -287,6 +287,7 @@ <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <autoMaxRowsCount>true</autoMaxRowsCount> + <choiceMode>true</choiceMode> <selectionMode>MultiRow</selectionMode> <header>true</header> <headerHeight>1</headerHeight> @@ -332,6 +333,7 @@ <dataPath xsi:type="form:DataPath"> <segments>Items.Список.CurrentData.Комментарий</segments> </dataPath> + <titleLocation>Left</titleLocation> <extendedTooltip> <name>ПолеКомментарийРасширеннаяПодсказка</name> <id>16</id> @@ -354,7 +356,6 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <wrap>true</wrap> <chooseType>true</chooseType> @@ -372,7 +373,6 @@ <event>OnCreateAtServer</event> <name>ПриСозданииНаСервере</name> </handlers> - <width>65</width> <windowOpeningMode>DontBlock</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoTitle>true</autoTitle> diff --git a/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаСписка/Module.bsl index 1a802084e..7ae13b1fc 100644 --- a/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаСписка/Module.bsl @@ -11,12 +11,9 @@ НастроитьПорядокГруппыВсеПользователи(Список); Если Параметры.РежимВыбора Тогда - СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(ЭтотОбъект, "ВыборПодбор"); РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; - Элементы.Список.РежимВыбора = Истина; - // Исключение выбора группы Все внешние пользователи в качестве родителя. ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( Список, "Ссылка", Справочники.ГруппыПользователей.ВсеПользователи, @@ -32,6 +29,8 @@ КонецЕсли; АвтоЗаголовок = Ложь; + Иначе + Элементы.Список.РежимВыбора = Ложь; КонецЕсли; Если ОбщегоНазначенияПовтИсп.ЭтоАвтономноеРабочееМесто() Тогда diff --git a/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаЭлемента/Form.form index a5da8b719..91a2662cd 100644 --- a/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаЭлемента/Form.form @@ -45,6 +45,51 @@ <textSize>Normal</textSize> </extInfo> </items> + <items xsi:type="form:FormField"> + <name>Родитель</name> + <id>40</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <dataPath xsi:type="form:DataPath"> + <segments>Объект.Parent</segments> + </dataPath> + <extendedTooltip> + <name>РодительExtendedTooltip</name> + <id>72</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>РодительКонтекстноеМеню</name> + <id>41</id> + <autoFill>true</autoFill> + </contextMenu> + <type>InputField</type> + <editMode>Enter</editMode> + <showInHeader>true</showInHeader> + <headerHorizontalAlign>Left</headerHorizontalAlign> + <showInFooter>true</showInFooter> + <extInfo xsi:type="form:InputFieldExtInfo"> + <handlers> + <event>StartChoice</event> + <name>РодительНачалоВыбора</name> + </handlers> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <wrap>true</wrap> + <chooseType>true</chooseType> + <typeDomainEnabled>true</typeDomainEnabled> + <textEdit>true</textEdit> + <textSize>Normal</textSize> + </extInfo> + </items> <items xsi:type="form:FormGroup"> <name>СтраницыУчастникиГруппыКомментарий</name> <id>78</id> @@ -756,7 +801,6 @@ </contextMenu> <changeRowSet>true</changeRowSet> <changeRowOrder>true</changeRowOrder> - <width>30</width> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <autoMaxRowsCount>true</autoMaxRowsCount> @@ -786,51 +830,6 @@ <autoMaxCardHeight>true</autoMaxCardHeight> <rowFilter xsi:type="core:UndefinedValue"/> </items> - <items xsi:type="form:FormField"> - <name>Родитель</name> - <id>40</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <dataPath xsi:type="form:DataPath"> - <segments>Объект.Parent</segments> - </dataPath> - <extendedTooltip> - <name>РодительExtendedTooltip</name> - <id>72</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>РодительКонтекстноеМеню</name> - <id>41</id> - <autoFill>true</autoFill> - </contextMenu> - <type>InputField</type> - <editMode>Enter</editMode> - <showInHeader>true</showInHeader> - <headerHorizontalAlign>Left</headerHorizontalAlign> - <showInFooter>true</showInFooter> - <extInfo xsi:type="form:InputFieldExtInfo"> - <handlers> - <event>StartChoice</event> - <name>РодительНачалоВыбора</name> - </handlers> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <wrap>true</wrap> - <chooseType>true</chooseType> - <typeDomainEnabled>true</typeDomainEnabled> - <textEdit>true</textEdit> - <textSize>Normal</textSize> - </extInfo> - </items> <visible>true</visible> <enabled>true</enabled> <userVisible> @@ -897,7 +896,6 @@ <event>StartChoice</event> <name>КомментарийНачалоВыбора</name> </handlers> - <autoMaxWidth>true</autoMaxWidth> <height>2</height> <autoMaxHeight>true</autoMaxHeight> <wrap>true</wrap> diff --git a/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаЭлемента/Module.bsl index 1055a1aab..27b87cf6f 100644 --- a/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/ГруппыПользователей/Forms/ФормаЭлемента/Module.bsl @@ -72,9 +72,6 @@ &НаКлиенте Процедура СоставОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) - ОтборСтрок = Новый Структура(Элементы.Состав.ОтборСтрок); - Элементы.Состав.ОтборСтрок = Новый ФиксированнаяСтруктура; - Объект.Состав.Очистить(); Если ТипЗнч(ВыбранноеЗначение) = Тип("Массив") Тогда Для каждого Значение Из ВыбранноеЗначение Цикл @@ -84,10 +81,9 @@ ОбработкаВыбораПользователя(ВыбранноеЗначение); КонецЕсли; ЗаполнитьСтатусПользователей(); + Элементы.Состав.Обновить(); УстановитьДоступностьСвойств(ЭтотОбъект); - Элементы.Состав.ОтборСтрок = Новый ФиксированнаяСтруктура(ОтборСтрок); - КонецПроцедуры &НаКлиенте diff --git a/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/БыстрыйДоступКДополнительнымОтчетамИОбработкам/Form.form b/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/БыстрыйДоступКДополнительнымОтчетамИОбработкам/Form.form index 0806ce435..7203591a7 100644 --- a/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/БыстрыйДоступКДополнительнымОтчетамИОбработкам/Form.form +++ b/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/БыстрыйДоступКДополнительнымОтчетамИОбработкам/Form.form @@ -251,36 +251,6 @@ <items xsi:type="form:FormGroup"> <name>КомандыУправленияСписком</name> <id>20</id> - <items xsi:type="form:Decoration"> - <name>ПустаяДекорация</name> - <id>25</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <extendedTooltip> - <name>ПустаяДекорацияExtendedTooltip</name> - <id>39</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>ПустаяДекорацияКонтекстноеМеню</name> - <id>26</id> - <autoFill>true</autoFill> - </contextMenu> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </items> <items xsi:type="form:Button"> <name>УстановитьКомандуДляВыделенныхПользователей</name> <id>28</id> @@ -399,6 +369,7 @@ <value>Команды управления списком</value> </toolTip> <enableContentChange>true</enableContentChange> + <groupVerticalAlign>Center</groupVerticalAlign> <extendedTooltip> <name>КомандыУправленияСпискомExtendedTooltip</name> <id>38</id> @@ -415,7 +386,6 @@ <behavior>Auto</behavior> <showLeftMargin>true</showLeftMargin> <united>true</united> - <showTitle>auto</showTitle> <throughAlign>Auto</throughAlign> <currentRowUse>Auto</currentRowUse> </extInfo> @@ -767,7 +737,6 @@ <event>OnCreateAtServer</event> <name>ПриСозданииНаСервере</name> </handlers> - <width>60</width> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoUrl>true</autoUrl> diff --git a/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ПроверкаДополнительныхОтчетовИОбработок/Form.form b/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ПроверкаДополнительныхОтчетовИОбработок/Form.form index 6dfe425ff..38b72c15c 100644 --- a/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ПроверкаДополнительныхОтчетовИОбработок/Form.form +++ b/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ПроверкаДополнительныхОтчетовИОбработок/Form.form @@ -30,10 +30,9 @@ <id>10</id> <autoFill>true</autoFill> </contextMenu> - <width>4</width> <autoMaxWidth>true</autoMaxWidth> - <height>2</height> <autoMaxHeight>true</autoMaxHeight> + <groupVerticalAlign>Center</groupVerticalAlign> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="core:PictureRef"> <picture>CommonPicture.Информация32</picture> @@ -45,10 +44,8 @@ <id>12</id> <title> <key>ru</key> - <value>Рекомендуется проверить совместимость дополнительных отчетов и -обработок с текущей версией программы. -Устаревшие дополнительные отчеты и обработки могут работать некорректно, -в этом случае их необходимо обновить (или временно отключить). </value> + <value>Рекомендуется проверить совместимость дополнительных отчетов и обработок с текущей версией программы. +Устаревшие дополнительные отчеты и обработки могут работать некорректно, в этом случае их необходимо обновить (или временно отключить). </value> true true @@ -71,7 +68,6 @@ true Label - true true Left @@ -187,7 +183,6 @@ Right - 60 LockOwner true true diff --git a/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаСписка/Form.form index 4f33ed8da..790e137a1 100644 --- a/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаСписка/Form.form @@ -281,6 +281,86 @@
    + + ГруппаЗагрузитьВыгрузить + 99 + + ЗагрузитьИзФайла + 56 + true + true + + true + + + ЗагрузитьИзФайлаРасширеннаяПодсказка + 57 + Label + true + true + + Left + + + Form.Command.ЗагрузитьИзФайла + Normal + Auto + true + true + UserCmds + Auto + + + ВыгрузитьВФайл + 58 + true + true + + true + + + ВыгрузитьВФайлРасширеннаяПодсказка + 59 + Label + true + true + + Left + + + Form.Command.ВыгрузитьВФайл + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Группа загрузить выгрузить</value> + + + ru + Группа загрузить выгрузить + + + ГруппаЗагрузитьВыгрузитьРасширеннаяПодсказка + 100 + Label + true + true + + Left + + + + ГруппаИзменить 103 @@ -527,86 +607,6 @@ Normal - - ГруппаЗагрузитьВыгрузить - 99 - - ЗагрузитьИзФайла - 56 - true - true - - true - - - ЗагрузитьИзФайлаРасширеннаяПодсказка - 57 - Label - true - true - - Left - - - Form.Command.ЗагрузитьИзФайла - Normal - Auto - true - true - UserCmds - Auto - - - ВыгрузитьВФайл - 58 - true - true - - true - - - ВыгрузитьВФайлРасширеннаяПодсказка - 59 - Label - true - true - - Left - - - Form.Command.ВыгрузитьВФайл - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Группа загрузить выгрузить</value> - - - ru - Группа загрузить выгрузить - - - ГруппаЗагрузитьВыгрузитьРасширеннаяПодсказка - 100 - Label - true - true - - Left - - - - Справка 31 @@ -1123,6 +1123,115 @@ + + ГруппаИзменениеПубликацииМеню + 119 + + ИспользуетсяМеню + 121 + true + true + + true + + + ИспользуетсяМенюРасширеннаяПодсказка + 122 + Label + true + true + + Left + + + Form.Command.ПубликацияИспользуется + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + РежимОтладкиМеню + 123 + true + true + + true + + + РежимОтладкиМенюРасширеннаяПодсказка + 124 + Label + true + true + + Left + + + Form.Command.ПубликацияРежимОтладки + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + ОтключенаМеню + 125 + true + true + + true + + + ОтключенаМенюРасширеннаяПодсказка + 126 + Label + true + true + + Left + + + Form.Command.ПубликацияОтключена + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + true + true + + true + + + <key>ru</key> + <value>Публикация</value> + + + ГруппаИзменениеПубликацииМенюРасширеннаяПодсказка + 120 + Label + true + true + + Left + + + Popup + + Auto + Normal + + ГруппаИзменитьМеню 107 @@ -1229,36 +1338,6 @@ - - КомандыФормыМеню - 97 - true - true - - true - - - <key>ru</key> - <value>Команды формы</value> - - - ru - Команды формы - - - КомандыФормыМенюРасширеннаяПодсказка - 98 - Label - true - true - - Left - - - - Form - - ГруппаЗагрузитьВыгрузитьМеню 101 @@ -1396,7 +1475,6 @@ ПриСозданииНаСервере SetDeletionMark - 100 DontBlock Use true @@ -1423,6 +1501,9 @@ Список.DeletionMark + + Список.Description + Список.IsFolder diff --git a/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаСписка/Module.bsl index 25dad4c69..cf24358e7 100644 --- a/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаСписка/Module.bsl @@ -240,44 +240,46 @@ Процедура ИзменитьПубликацию(ВариантПубликации) ОчиститьСообщения(); - Результат = ИзменениеПубликации(ВариантПубликации); - Если ТипЗнч(Результат) = Тип("Структура") Тогда - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ЭтотОбъект, Результат); + ВыделенныеСтроки = Элементы.Список.ВыделенныеСтроки; + КоличествоСтрок = ВыделенныеСтроки.Количество(); + Если КоличествоСтрок = 0 Тогда + ПоказатьПредупреждение(, НСтр("ru = 'Не выбран ни один дополнительный отчет (обработка)'")); + Возврат; КонецЕсли; + ИзменениеПубликации(ВариантПубликации); + + Если КоличествоСтрок = 1 Тогда + ТекстСообщения = НСтр("ru = 'Изменена публикация дополнительного отчета (обработки) ""%1""'"); + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, Строка(ВыделенныеСтроки[0])); + Иначе + ТекстСообщения = НСтр("ru = 'Изменена публикация у дополнительных отчетов (обработок): %1'"); + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, КоличествоСтрок); + КонецЕсли; + + ПоказатьОповещениеПользователя(НСтр("ru = 'Изменена публикация'"),, ТекстСообщения); + КонецПроцедуры &НаСервере -Функция ИзменениеПубликации(ВариантПубликации) - - РезультатВыполнения = Новый Структура; +Процедура ИзменениеПубликации(ВариантПубликации) ВыделенныеСтроки = Элементы.Список.ВыделенныеСтроки; - Если ВыделенныеСтроки.Количество() = 0 Тогда - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение(РезультатВыполнения, - НСтр("ru = 'Не выбран ни один дополнительный отчет (обработка)'")); - Возврат РезультатВыполнения; - КонецЕсли; - - Для Каждого ВыделеннаяСтрока Из ВыделенныеСтроки Цикл - ИнформацияОбОшибке = Неопределено; - Попытка - ЗаблокироватьДанныеДляРедактирования(ВыделеннаяСтрока); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КонецПопытки; - Если ИнформацияОбОшибке <> Неопределено Тогда - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение(РезультатВыполнения, - КраткоеПредставлениеОшибки(ИнформацияОбОшибке)); - Элементы.Список.Обновить(); - Возврат РезультатВыполнения; - КонецЕсли; + НачатьТранзакцию(); + Попытка + Для Каждого ДополнительныйОтчетИлиОбработка Из ВыделенныеСтроки Цикл + ЗаблокироватьДанныеДляРедактирования(ДополнительныйОтчетИлиОбработка); + + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("Справочник.ДополнительныеОтчетыИОбработки"); + ЭлементБлокировки.УстановитьЗначение("Ссылка", ДополнительныйОтчетИлиОбработка); + ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный; + Блокировка.Заблокировать(); + КонецЦикла; - НачатьТранзакцию(); - - Попытка - Объект = ВыделеннаяСтрока.ПолучитьОбъект(); + Для Каждого ДополнительныйОтчетИлиОбработка Из ВыделенныеСтроки Цикл + Объект = ДополнительныйОтчетИлиОбработка.ПолучитьОбъект(); Если ВариантПубликации = "Используется" Тогда Объект.Публикация = Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.Используется; ИначеЕсли ВариантПубликации = "РежимОтладки" Тогда @@ -288,49 +290,28 @@ Объект.ДополнительныеСвойства.Вставить("ПроверкаСписка"); Если Не Объект.ПроверитьЗаполнение() Тогда - ОтменитьТранзакцию(); - Элементы.Список.Обновить(); - ПредставлениеОшибки = ""; МассивСообщений = ПолучитьСообщенияПользователю(Истина); Для Каждого СообщениеПользователю Из МассивСообщений Цикл ПредставлениеОшибки = ПредставлениеОшибки + СообщениеПользователю.Текст + Символы.ПС; КонецЦикла; - РазблокироватьДанныеДляРедактирования(ВыделеннаяСтрока); - - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение(РезультатВыполнения, ПредставлениеОшибки); - Возврат РезультатВыполнения; + ВызватьИсключение ПредставлениеОшибки; КонецЕсли; Объект.Записать(); - - РазблокироватьДанныеДляРедактирования(ВыделеннаяСтрока); - ЗафиксироватьТранзакцию(); - Исключение - ОтменитьТранзакцию(); - ВызватьИсключение; - КонецПопытки; + КонецЦикла; - КонецЦикла; - + РазблокироватьДанныеДляРедактирования(); + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + РазблокироватьДанныеДляРедактирования(); + ВызватьИсключение; + КонецПопытки; Элементы.Список.Обновить(); - Если ВыделенныеСтроки.Количество() = 1 Тогда - ИмяОбъекта = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ВыделенныеСтроки[0], "Наименование"); - ТекстСообщения = НСтр("ru = 'Изменена публикация дополнительного отчета (обработки) ""%1""'"); - ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, ИмяОбъекта); - Иначе - ТекстСообщения = НСтр("ru = 'Изменена публикация у %1 дополнительных отчетов (обработок)'"); - ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, ВыделенныеСтроки.Количество()); - КонецЕсли; - - СтандартныеПодсистемыКлиентСервер.ВывестиОповещение(РезультатВыполнения, - НСтр("ru = 'Изменена публикация'"), - ТекстСообщения); - - Возврат РезультатВыполнения; -КонецФункции +КонецПроцедуры &НаКлиенте Процедура СписокИзменитьПометкуУдаления() diff --git a/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаЭлемента/Form.form index 5a28fdbbd..7f486dbff 100644 --- a/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаЭлемента/Form.form @@ -84,7 +84,6 @@ true Label - true true Left @@ -125,7 +124,6 @@ true Label - true true Left @@ -341,57 +339,17 @@ СтраницаКоманды 164 - - РазмещениеКоманд - 167 - - <key>ru</key> - <value>Размещение</value> - - true - true - - true - - - ПредставлениеНазначения - - - РазмещениеКомандExtendedTooltip - 210 - Label - true - true - - Left - - - - РазмещениеКомандКонтекстноеМеню - 168 - true - - LabelField - Enter - true - Left - true - - - Click - РазмещениеКомандНажатие - - true - true - true - - ГруппаРазмещение 389 - НазначениеКоманд - 391 + РазмещениеКоманд + 167 + + <key>ru</key> + <value>Размещение</value> + + true true true @@ -400,8 +358,8 @@ ПредставлениеНазначения - НазначениеКомандРасширеннаяПодсказка - 393 + РазмещениеКомандExtendedTooltip + 210 Label true true @@ -410,8 +368,8 @@ - НазначениеКомандКонтекстноеМеню - 392 + РазмещениеКомандКонтекстноеМеню + 168 true LabelField @@ -424,89 +382,10 @@ Click РазмещениеКомандНажатие - true true true - - НадписьРазместить - 394 - - <key>ru</key> - <value>Разместить в:</value> - - true - true - - true - - - НадписьРазместитьРасширеннаяПодсказка - 396 - Label - true - true - - Left - - - - НадписьРазместитьКонтекстноеМеню - 395 - true - - Label - true - true - false - false - - Left - - - - НадписьМестоРазмещения - 397 - - <key>ru</key> - <value>Счет на оплату покупателя</value> - - true - true - - true - - - НадписьМестоРазмещенияРасширеннаяПодсказка - 399 - Label - true - true - - Left - - - - НадписьМестоРазмещенияКонтекстноеМеню - 398 - true - - Label - true - 1 - true - true - false - - - Click - НадписьМестоРазмещенияНажатие - - true - Left - - НастроитьВидимость 400 @@ -543,12 +422,6 @@ ru Группа размещение - - ru - Группа размещение - - true - false ГруппаРазмещениеРасширеннаяПодсказка 390 @@ -576,7 +449,7 @@ 143 <key>ru</key> - <value>Показывать: </value> + <value>Показывать:</value> true true @@ -599,8 +472,6 @@ true Label - true - true Left @@ -719,10 +590,10 @@ КоманднаяПанельОбъектКоманды - 402 + 405 ВыполнитьКоманду - 404 + 407 true true @@ -730,7 +601,7 @@ ВыполнитьКомандуРасширеннаяПодсказка - 405 + 408 Label true true @@ -761,7 +632,7 @@ КоманднаяПанельОбъектКомандыРасширеннаяПодсказка - 403 + 406 Label true true @@ -1280,11 +1151,7 @@ true Label - true - 3 true - false - false Style.ПоясняющийТекст @@ -1987,11 +1854,9 @@ 268 true - 2 true - 2 true - false + true CommonPicture.ИнформацияПоНедоступнымПолям @@ -2033,7 +1898,6 @@ true Label - true true Style.FieldSelectionBackColor @@ -2106,7 +1970,6 @@ true Label - true true Style.SpecialTextColor @@ -2178,7 +2041,6 @@ true Label - true true Style.FieldSelectionBackColor @@ -2395,7 +2257,7 @@ Left true - 80 + 20 true 1 true @@ -2505,9 +2367,7 @@ true Label - true true - true URLProcessing @@ -2577,7 +2437,6 @@ true Label - true true Left @@ -3023,6 +2882,7 @@ Объект.Информация true + Left ИнформацияExtendedTooltip 236 @@ -3038,22 +2898,15 @@ 27 true - InputField + LabelField true Enter true Left true - - true - 3 - true - true - true - true - true - true - Normal + + 2 + 3 @@ -3162,63 +3015,6 @@ ОтветственныйИКомментарий 320 - - Комментарий - 29 - - <key>ru</key> - <value>Комментарий</value> - - true - true - - true - - - Объект.Комментарий - - Left - - КомментарийExtendedTooltip - 239 - Label - true - true - - Left - - - - КомментарийКонтекстноеМеню - 30 - true - - InputField - Enter - true - Left - true - - - StartChoice - КомментарийНачалоВыбора - - true - true - true - false - true - false - true - false - false - false - true - true - true - Normal - - Ответственный 31 @@ -3252,10 +3048,49 @@ Left true - 35 true true - false + true + true + true + true + Normal + + + + Комментарий + 402 + true + true + + true + + + Объект.Комментарий + + + КомментарийРасширеннаяПодсказка + 404 + Label + true + true + + Left + + + + КомментарийКонтекстноеМеню + 403 + true + + InputField + Enter + true + Left + true + + true + true true true true @@ -3741,7 +3576,9 @@ true - + + true + ВидДополнительныйОтчет diff --git a/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаЭлемента/Module.bsl index 1650e6620..cf384fbeb 100644 --- a/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/Forms/ФормаЭлемента/Module.bsl @@ -209,16 +209,6 @@ #Область ОбработчикиСобытийЭлементовШапкиФормы -&НаКлиенте -Процедура КомментарийНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) - СтандартнаяОбработка = Ложь; - ДополнительныеОтчетыИОбработкиКлиент.РедактироватьМногострочныйТекст( - ЭтотОбъект, - Элемент.ТекстРедактирования, - Объект, - "Комментарий"); -КонецПроцедуры - &НаКлиенте Процедура ВариантыДополнительногоОтчетаПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа) Отказ = Истина; @@ -289,11 +279,6 @@ &НаКлиенте Процедура РазмещениеКомандНажатие(Элемент, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; - НадписьМестоРазмещенияНажатие(Элемент); -КонецПроцедуры - -&НаКлиенте -Процедура НадписьМестоРазмещенияНажатие(Элемент) Если Объект.Вид = ВидДополнительныйОтчет ИЛИ Объект.Вид = ВидДополнительнаяОбработка Тогда // Выбор разделов Разделы = Новый СписокЗначений; @@ -569,7 +554,6 @@ КонецЕсли; СтандартныеПодсистемыКлиент.ПоказатьПомещениеФайла(Обработчик, УникальныйИдентификатор, Объект.ИмяФайла, ПараметрыДиалога); - КонецПроцедуры &НаКлиенте @@ -643,7 +627,16 @@ ОбновлениеИзФайлаПоказатьКонфликты(ПараметрыРегистрации); Иначе ОбработчикРезультата = Новый ОписаниеОповещения("ОбновлениеИзФайлаЗавершение", ЭтотОбъект, ПараметрыРегистрации); - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ЭтотОбъект, ПараметрыРегистрации, ОбработчикРезультата); + Если ПараметрыРегистрации.ЭтоОтчет Тогда + ЗаголовокОшибки = НСтр("ru = 'Отчет не подключен'"); + Иначе + ЗаголовокОшибки = НСтр("ru = 'Обработка не подключена'"); + КонецЕсли; + ПараметрыПредупреждения = Новый Структура; + ПараметрыПредупреждения.Вставить("Текст", ПараметрыРегистрации.ТекстОшибки); + ПараметрыПредупреждения.Вставить("Подробно", ПараметрыРегистрации.КраткоеПредставлениеОшибки); + ПараметрыПредупреждения.Вставить("Заголовок", ЗаголовокОшибки); + СтандартныеПодсистемыКлиент.ВывестиПредупреждение(ЭтотОбъект, ПараметрыПредупреждения, ОбработчикРезультата); КонецЕсли; КонецЕсли; КонецПроцедуры @@ -971,7 +964,7 @@ ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); ПараметрыОжидания.ТекстСообщения = ЗаголовокСостояния; - ПараметрыОжидания.ОповещениеПользователя.Показать = ВыполняемаяКоманда.ПоказыватьОповещение; + ПараметрыОжидания.ОповещениеПользователя.Показать = Истина; ПараметрыОжидания.ВыводитьОкноОжидания = Истина; ОповещениеОЗавершении = Новый ОписаниеОповещения("ПослеЗавершенияВыполненияСервернойКомандыВФоне", ЭтотОбъект, ВыполняемаяКоманда); @@ -986,14 +979,16 @@ Если Задание.Статус = "Ошибка" Тогда Результат = Новый Структура; ВводныйТекст = НСтр("ru = 'Не удалось выполнить команду.'"); - Кратко = ВводныйТекст + Символы.ПС + Задание.КраткоеПредставлениеОшибки; - Подробно = Задание.ПодробноеПредставлениеОшибки; - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение(Результат, Кратко, Подробно); + Предупреждение = Новый Структура; + Предупреждение.Вставить("Текст", ВводныйТекст + Символы.ПС + Задание.КраткоеПредставлениеОшибки); + Предупреждение.Вставить("Подробно", Задание.ПодробноеПредставлениеОшибки); + СтандартныеПодсистемыКлиент.ВывестиПредупреждение(ЭтотОбъект, Предупреждение); Иначе Результат = ПолучитьИзВременногоХранилища(Задание.АдресРезультата); - КонецЕсли; - Если Результат <> Неопределено Тогда - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ЭтотОбъект, Результат); + ОповеститьФормы = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Результат, "ОповеститьФормы"); + Если ОповеститьФормы <> Неопределено Тогда + СтандартныеПодсистемыКлиент.ОповеститьФормыОбИзменении(ОповеститьФормы); + КонецЕсли; КонецЕсли; КонецПроцедуры @@ -1070,17 +1065,6 @@ ПараметрыРегистрации.Вставить("ПредставлениеЗанявших", ПредставлениеЗанявших); // Количество занявших объектов. ПараметрыРегистрации.Вставить("КоличествоКонфликтующих", ПараметрыРегистрации.Конфликтующие.Количество()); - Иначе - Если ПараметрыРегистрации.ЭтоОтчет Тогда - ЗаголовокОшибки = НСтр("ru = 'Отчет не подключен'"); - Иначе - ЗаголовокОшибки = НСтр("ru = 'Обработка не подключена'"); - КонецЕсли; - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение( - ПараметрыРегистрации, - ПараметрыРегистрации.ТекстОшибки, - ПараметрыРегистрации.КраткоеПредставлениеОшибки, - ЗаголовокОшибки); КонецЕсли; УстановитьВидимостьДоступность(ПараметрыРегистрации.Успех); @@ -1149,7 +1133,7 @@ КоличествоКоманд = Объект.Команды.Количество(); КоличествоВидимыхЗакладок = 1; - Если ЭтоОтчет И Объект.ИспользуетХранилищеВариантов Тогда + Если Объект.Вид = ВидДополнительныйОтчет И Объект.ИспользуетХранилищеВариантов Тогда КоличествоВидимыхЗакладок = КоличествоВидимыхЗакладок + 1; Элементы.СтраницыВарианты.Видимость = Истина; @@ -1230,7 +1214,6 @@ КоличествоВидимыхЗакладок = КоличествоВидимыхЗакладок + 1; - Элементы.СтраницыВариантыКомандыРазрешения.ТекущаяСтраница = Элементы.СтраницаРазрешения; Элементы.СтраницаРазрешения.Видимость = Истина; Элементы.СтраницаРазрешения.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Разрешения (%1)'"), @@ -1303,18 +1286,18 @@ КонецЕсли; КонецЕсли; - Элементы.НадписьМестоРазмещения.Заголовок = ПредставлениеНазначения; - Элементы.ОбъектКомандыБыстрыйДоступПредставление.Видимость = ЭтоГлобальнаяОбработка; Элементы.ОбъектКомандыНастроитьБыстрыйДоступ.Видимость = ЭтоГлобальнаяОбработка; Элементы.ОбъектКомандыРегламентноеЗаданиеПредставление.Видимость = ЭтоГлобальнаяОбработка; Элементы.ОбъектКомандыРегламентноеЗаданиеИспользование.Видимость = ЭтоГлобальнаяОбработка; Элементы.ОбъектКомандыНастроитьРасписание.Видимость = ЭтоГлобальнаяОбработка; - Элементы.РазмещениеКоманд.Видимость = ЭтоГлобальнаяОбработка; - Элементы.ГруппаРазмещение.Видимость = НЕ ЭтоГлобальнаяОбработка; ЭтоПечатнаяФорма = Объект.Вид = Перечисления.ВидыДополнительныхОтчетовИОбработок.ПечатнаяФорма; Элементы.ТипыФорм.Видимость = Не ЭтоГлобальнаяОбработка И Не ЭтоПечатнаяФорма; + Если Не Элементы.ТипыФорм.Видимость Тогда + Объект.ИспользоватьДляФормыОбъекта = Истина; + Объект.ИспользоватьДляФормыСписка = Истина; + КонецЕсли; Элементы.НастроитьВидимость.Видимость = ЭтоПечатнаяФорма; Элементы.ОбъектКомандыКомментарий.Видимость = ЭтоПечатнаяФорма; @@ -1459,7 +1442,7 @@ Для Каждого ИдентификаторЗаменяемойКоманды Из ИдентификаторыЗаменяемых Цикл Фильтр.Идентификатор = СокрЛП(ИдентификаторЗаменяемойКоманды); СписокЗаменяемыхКоманд = КомандыПечатиОбъекта.НайтиСтроки(Фильтр); - // при неоднозначности в определении заменяемой команды замена не выполняется + // при неоднозначности в определении заменяемой команды замена не выполняется. Если СписокЗаменяемыхКоманд.Количество() = 1 Тогда ПредставлениеЗаменяемыхКоманд = ПредставлениеЗаменяемыхКоманд + ?(ПустаяСтрока(ПредставлениеЗаменяемыхКоманд), "", ", ") + """" + СписокЗаменяемыхКоманд[0].Представление + """"; КоличествоЗаменяемых = КоличествоЗаменяемых + 1; @@ -1488,7 +1471,7 @@ ВариантыДополнительногоОтчета.Очистить(); Попытка - ВнешнийОбъект = ДополнительныеОтчетыИОбработки.ПолучитьОбъектВнешнейОбработки(Объект.Ссылка); + ВнешнийОбъект = ДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(Объект.Ссылка); Исключение ТекстОшибки = НСтр("ru = 'Не удалось получить список вариантов отчета из-за ошибки, возникшей при подключении этого отчета:'"); ТекстСообщения = ТекстОшибки + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); diff --git a/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/ObjectModule.bsl b/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/ObjectModule.bsl index af42658dc..f5d882674 100644 --- a/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/ObjectModule.bsl +++ b/SSL/src/Catalogs/ДополнительныеОтчетыИОбработки/ObjectModule.bsl @@ -144,9 +144,11 @@ Возврат; КонецЕсли; - БыстрыйДоступ = Неопределено; - Если ДополнительныеСвойства.Свойство("БыстрыйДоступ", БыстрыйДоступ) Тогда - РегистрыСведений.ПользовательскиеНастройкиДоступаКОбработкам.ОбновитьДанныеПриЗаписиДополнительногоОбъекта(Ссылка, БыстрыйДоступ); + БыстрыйДоступ = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ДополнительныеСвойства, "БыстрыйДоступ"); + Если ТипЗнч(БыстрыйДоступ) = Тип("ТаблицаЗначений") Тогда + ЗначенияИзмерений = Новый Структура("ДополнительныйОтчетИлиОбработка", Ссылка); + ЗначенияРесурсов = Новый Структура("Доступно", Истина); + РегистрыСведений.ПользовательскиеНастройкиДоступаКОбработкам.ЗаписатьПакетНастроек(БыстрыйДоступ, ЗначенияИзмерений, ЗначенияРесурсов, Истина); КонецЕсли; Если ЭтоГлобальнаяОбработка() Тогда @@ -402,13 +404,13 @@ Если ЭтоНовый() Тогда ВнешнийОбъект = ВнешниеОтчеты.Создать(ИмяОбъекта); Иначе - ВнешнийОбъект = ДополнительныеОтчетыИОбработки.ПолучитьОбъектВнешнейОбработки(Ссылка); + ВнешнийОбъект = ДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(Ссылка); КонецЕсли; Исключение ТекстОшибки = НСтр("ru = 'Ошибка подключения:'") + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); ДополнительныеОтчетыИОбработки.ЗаписатьОшибку(Ссылка, ТекстОшибки); ДополнительныеСвойства.Вставить("ОшибкаПодключения", ТекстОшибки); - Возврат; + ВнешнийОбъект = Неопределено; КонецПопытки; ДополнительныеСвойства.Вставить("Глобальный", ЭтоГлобальнаяОбработка()); diff --git a/SSL/src/Catalogs/ЗакладкиВзаимодействий/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ЗакладкиВзаимодействий/Forms/ФормаЭлемента/Form.form index c23a91c43..168a3466a 100644 --- a/SSL/src/Catalogs/ЗакладкиВзаимодействий/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ЗакладкиВзаимодействий/Forms/ФормаЭлемента/Form.form @@ -49,6 +49,10 @@ Объект.Description + + OnChange + НаименованиеПриИзменении + НаименованиеExtendedTooltip 10 @@ -122,6 +126,10 @@ Left true + + OnChange + КомпоновщикНастроекНастройкиОтборПриИзменении + КомпоновщикНастроекНастройкиОтборSearchString 13 diff --git a/SSL/src/Catalogs/ЗакладкиВзаимодействий/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ЗакладкиВзаимодействий/Forms/ФормаЭлемента/Module.bsl index f3e1988f8..636c8c6b4 100644 --- a/SSL/src/Catalogs/ЗакладкиВзаимодействий/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/ЗакладкиВзаимодействий/Forms/ФормаЭлемента/Module.bsl @@ -14,6 +14,8 @@ КонецЕсли; + ЗаполнитьСписокВыбораНаименования(ЭтотОбъект); + КонецПроцедуры &НаСервере @@ -36,6 +38,24 @@ #КонецОбласти +#Область ОбработчикиСобытийЭлементовФормы + +&НаКлиенте +Процедура КомпоновщикНастроекНастройкиОтборПриИзменении(Элемент) + + ЗаполнитьСписокВыбораНаименования(ЭтотОбъект); + +КонецПроцедуры + +&НаКлиенте +Процедура НаименованиеПриИзменении(Элемент) + + ЗаполнитьСписокВыбораНаименования(ЭтотОбъект); + +КонецПроцедуры + +#КонецОбласти + #Область СлужебныеПроцедурыИФункции &НаСервере @@ -54,4 +74,20 @@ КонецПроцедуры +&НаКлиентеНаСервереБезКонтекста +Процедура ЗаполнитьСписокВыбораНаименования(Форма) + + СписокВыбора = Форма.Элементы.Наименование.СписокВыбора; + + СписокВыбора.Очистить(); + Если Не ПустаяСтрока(Форма.Объект.Наименование) Тогда + СписокВыбора.Добавить(Форма.Объект.Наименование); + КонецЕсли; + ПредставлениеОтбора = Строка(Форма.КомпоновщикНастроек.Настройки.Отбор); + Если Форма.Объект.Наименование <> ПредставлениеОтбора Тогда + СписокВыбора.Добавить(ПредставлениеОтбора); + КонецЕсли; + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/Catalogs/ЗакладкиВзаимодействий/Help/ru.html b/SSL/src/Catalogs/ЗакладкиВзаимодействий/Help/ru.html index e39b65778..c78f50b40 100644 --- a/SSL/src/Catalogs/ЗакладкиВзаимодействий/Help/ru.html +++ b/SSL/src/Catalogs/ЗакладкиВзаимодействий/Help/ru.html @@ -7,8 +7,8 @@
    • Закладки можно группировать.
    • Для этого выполните команду контекстного меню панели группировки Создать группу.
      • Введите Наименование группы. -
      • По умолчанию программа указывает в качестве Владельца текущего пользователя (выберите Владельца из списка Пользователи), при этом группа закладок вместе с содержимым видна только своему владельцу. -
      • Поле Родитель заполняется автоматически, если эта группа входит в вышестоящую группу. При этом группа и ее содержимое видно только владельцу. При необходимости выберите другую группу.
    • Введите или перетащите с помощью мыши необходимое количество закладок.

    Работа с закладками в списке взаимодействий

    +
  • Выберите Пользователя - владельца группы закладок (из списка Пользователи). По умолчанию программа указывает текущего пользователя, при этом группа закладок вместе с содержимым видна только своему владельцу. +
  • Поле Группа заполняется автоматически, если эта группа входит в вышестоящую группу. При этом группа и ее содержимое видно только владельцу. При необходимости выберите другую группу.
  • Введите или перетащите с помощью мыши необходимое количество закладок.
  • Работа с закладками в списке взаимодействий

    • С помощью команды контекстного меню по правой кнопке мыши Добавить в закладки списка Взаимодействия  можно выделить документы в отдельные закладки Избранные взаимодействия.
    • Затем такую закладку можно перетащить в одну из папок.

    Работа с закладками в карточке пользователя

    • Все действия с закладками пользователя можно произвести также в карточке пользователя. diff --git a/SSL/src/Catalogs/Заметки/Forms/ВсеЗаметки/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/Catalogs/Заметки/Forms/ВсеЗаметки/Attributes/Список/ExtInfo/ListSettings.dcss index dfff02937..e672b08ba 100644 --- a/SSL/src/Catalogs/Заметки/Forms/ВсеЗаметки/Attributes/Список/ExtInfo/ListSettings.dcss +++ b/SSL/src/Catalogs/Заметки/Forms/ВсеЗаметки/Attributes/Список/ExtInfo/ListSettings.dcss @@ -14,30 +14,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - - AndGroup - - ДляРабочегоСтола - Equal - true - - - ПометкаУдаления - Equal - false - - - - - - Шрифт - - - - Normal b75fecce-942b-4aed-abc9-e6a02e460fb3 diff --git a/SSL/src/Catalogs/Заметки/Forms/ВсеЗаметки/Module.bsl b/SSL/src/Catalogs/Заметки/Forms/ВсеЗаметки/Module.bsl index 887032370..c9d36f092 100644 --- a/SSL/src/Catalogs/Заметки/Forms/ВсеЗаметки/Module.bsl +++ b/SSL/src/Catalogs/Заметки/Forms/ВсеЗаметки/Module.bsl @@ -4,6 +4,8 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; @@ -89,4 +91,24 @@ КонецПроцедуры +&НаСервере +Процедура УстановитьУсловноеОформление() + + Список.УсловноеОформление.Элементы.Очистить(); + Элемент = Список.УсловноеОформление.Элементы.Добавить(); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДляРабочегоСтола"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ПометкаУдаления"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Ложь; + + Элемент.Оформление.УстановитьЗначениеПараметра("Шрифт", Новый Шрифт(,,Истина)); + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/Catalogs/Заметки/Forms/ЗаметкиПоПредмету/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/Catalogs/Заметки/Forms/ЗаметкиПоПредмету/Attributes/Список/ExtInfo/ListSettings.dcss index 2e8e87233..61e6fb4bb 100644 --- a/SSL/src/Catalogs/Заметки/Forms/ЗаметкиПоПредмету/Attributes/Список/ExtInfo/ListSettings.dcss +++ b/SSL/src/Catalogs/Заметки/Forms/ЗаметкиПоПредмету/Attributes/Список/ExtInfo/ListSettings.dcss @@ -9,30 +9,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - - AndGroup - - ДляРабочегоСтола - Equal - true - - - ПометкаУдаления - Equal - false - - - - - - Шрифт - - - - Normal b75fecce-942b-4aed-abc9-e6a02e460fb3 diff --git a/SSL/src/Catalogs/Заметки/Forms/ЗаметкиПоПредмету/Module.bsl b/SSL/src/Catalogs/Заметки/Forms/ЗаметкиПоПредмету/Module.bsl index 8fefb659f..6b486b165 100644 --- a/SSL/src/Catalogs/Заметки/Forms/ЗаметкиПоПредмету/Module.bsl +++ b/SSL/src/Catalogs/Заметки/Forms/ЗаметкиПоПредмету/Module.bsl @@ -4,6 +4,8 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; @@ -12,6 +14,7 @@ Предмет = Параметры.Предмет; Список.Параметры.УстановитьЗначениеПараметра("Предмет", Предмет); КонецЕсли; + Список.Параметры.УстановитьЗначениеПараметра("Пользователь", Пользователи.ТекущийПользователь()); Список.Параметры.УстановитьЗначениеПараметра("ПоказыватьЗаметкиДругихПользователей", Ложь); Список.Параметры.УстановитьЗначениеПараметра("ПоказыватьУдаленные", Ложь); @@ -46,6 +49,7 @@ #КонецОбласти #Область ОбработчикиСобытийТаблицыСписок + &НаКлиенте Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр) Отказ = Истина; @@ -54,3 +58,28 @@ КонецПроцедуры #КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Процедура УстановитьУсловноеОформление() + + Список.УсловноеОформление.Элементы.Очистить(); + Элемент = Список.УсловноеОформление.Элементы.Добавить(); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДляРабочегоСтола"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ПометкаУдаления"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Ложь; + + Элемент.Оформление.УстановитьЗначениеПараметра("Шрифт", Новый Шрифт(,,Истина)); + +КонецПроцедуры + +#КонецОбласти + diff --git a/SSL/src/Catalogs/Заметки/Forms/МоиЗаметки/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/Catalogs/Заметки/Forms/МоиЗаметки/Attributes/Список/ExtInfo/ListSettings.dcss index 1c3ed0ed1..4b01c50cf 100644 --- a/SSL/src/Catalogs/Заметки/Forms/МоиЗаметки/Attributes/Список/ExtInfo/ListSettings.dcss +++ b/SSL/src/Catalogs/Заметки/Forms/МоиЗаметки/Attributes/Список/ExtInfo/ListSettings.dcss @@ -13,26 +13,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - ПредставлениеПредмета - - - - - ПредставлениеПредмета - Equal - не задан - - - - - Текст - - - - Normal b75fecce-942b-4aed-abc9-e6a02e460fb3 diff --git a/SSL/src/Catalogs/Заметки/Forms/МоиЗаметки/Module.bsl b/SSL/src/Catalogs/Заметки/Forms/МоиЗаметки/Module.bsl index dd9dbe5be..9d0659961 100644 --- a/SSL/src/Catalogs/Заметки/Forms/МоиЗаметки/Module.bsl +++ b/SSL/src/Catalogs/Заметки/Forms/МоиЗаметки/Module.bsl @@ -4,15 +4,36 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; - Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка) Тогда - Возврат; - КонецЕсли; - Список.Параметры.УстановитьЗначениеПараметра("Пользователь", Пользователи.ТекущийПользователь()); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Процедура УстановитьУсловноеОформление() + + Список.УсловноеОформление.Элементы.Очистить(); + Элемент = Список.УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ПредставлениеПредмета.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ПредставлениеПредмета"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = НСтр("ru = 'не задан'"); + + Элемент.Оформление.УстановитьЗначениеПараметра("Текст", ""); + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/Catalogs/Заметки/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/Заметки/Forms/ФормаЭлемента/Form.form index ec0ed5155..5ad43ed12 100644 --- a/SSL/src/Catalogs/Заметки/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/Заметки/Forms/ФормаЭлемента/Form.form @@ -34,7 +34,6 @@ true Label - true true Left @@ -72,12 +71,8 @@ true Label - true true true - - Style.TextFont - Click @@ -190,9 +185,10 @@ Left true - 50 + 20 true 10 + true true true @@ -317,6 +313,7 @@ Left true + 20 true true true @@ -390,7 +387,6 @@ true Label - true true Left @@ -428,7 +424,6 @@ true Label - true true @@ -499,7 +494,6 @@ true Label - true true Style.ПоясняющийТекст @@ -548,7 +542,6 @@ OnCreateAtServer ПриСозданииНаСервере - 100 DontBlock true true diff --git a/SSL/src/Catalogs/Заметки/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/Заметки/Forms/ФормаЭлемента/Module.bsl index e62595f44..bb74676a8 100644 --- a/SSL/src/Catalogs/Заметки/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/Заметки/Forms/ФормаЭлемента/Module.bsl @@ -14,8 +14,7 @@ КонецЕсли; Элементы.Предмет.Заголовок = Объект.ПредставлениеПредмета; - - Элементы.Предмет.Гиперссылка = ЗначениеЗаполнено(Объект.Предмет); + Элементы.ГруппаПредмет.Видимость = ЗначениеЗаполнено(Объект.Предмет); Если Объект.Ссылка.Пустая() Тогда Объект.Автор = Пользователи.ТекущийПользователь(); diff --git a/SSL/src/Catalogs/ЗначенияСвойствОбъектов/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ЗначенияСвойствОбъектов/Forms/ФормаСписка/Form.form index 46ae8aee5..7aa319950 100644 --- a/SSL/src/Catalogs/ЗначенияСвойствОбъектов/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/ЗначенияСвойствОбъектов/Forms/ФормаСписка/Form.form @@ -645,7 +645,6 @@ OnCreateAtServer ПриСозданииНаСервере - 62 DontBlock true true diff --git a/SSL/src/Catalogs/ЗначенияСвойствОбъектов/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ЗначенияСвойствОбъектов/Forms/ФормаЭлемента/Form.form index 816f97834..59012d5cb 100644 --- a/SSL/src/Catalogs/ЗначенияСвойствОбъектов/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ЗначенияСвойствОбъектов/Forms/ФормаЭлемента/Form.form @@ -40,6 +40,48 @@ Normal + + ПолноеНаименование + 13 + true + true + + true + + + Объект.ПолноеНаименование + + Left + + ПолноеНаименованиеРасширеннаяПодсказка + 15 + Label + true + true + + Left + + + + ПолноеНаименованиеКонтекстноеМеню + 14 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + Родитель 5 @@ -181,7 +223,6 @@ OnCreateAtServer ПриСозданииНаСервере - 50 LockOwner true true diff --git a/SSL/src/Catalogs/ЗначенияСвойствОбъектов/ЗначенияСвойствОбъектов.mdo b/SSL/src/Catalogs/ЗначенияСвойствОбъектов/ЗначенияСвойствОбъектов.mdo index 49b440cec..04fa21839 100644 --- a/SSL/src/Catalogs/ЗначенияСвойствОбъектов/ЗначенияСвойствОбъектов.mdo +++ b/SSL/src/Catalogs/ЗначенияСвойствОбъектов/ЗначенияСвойствОбъектов.mdo @@ -169,6 +169,27 @@ Use Use + + ПолноеНаименование + + ru + Полное наименование + + + String + + + + ru + Подробное описание значения дополнительного реквизита + + true + + + + Use + Use + ФормаЭлемента diff --git a/SSL/src/Catalogs/ЗначенияСвойствОбъектовИерархия/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ЗначенияСвойствОбъектовИерархия/Forms/ФормаСписка/Form.form index 43464a886..e3eb9f74e 100644 --- a/SSL/src/Catalogs/ЗначенияСвойствОбъектовИерархия/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/ЗначенияСвойствОбъектовИерархия/Forms/ФормаСписка/Form.form @@ -607,7 +607,6 @@ OnCreateAtServer ПриСозданииНаСервере - 62 DontBlock true true @@ -636,6 +635,9 @@ Список.Ref + + Список.ПолноеНаименование +
      true
      Catalog.ЗначенияСвойствОбъектовИерархия diff --git a/SSL/src/Catalogs/ЗначенияСвойствОбъектовИерархия/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ЗначенияСвойствОбъектовИерархия/Forms/ФормаЭлемента/Form.form index a694816f6..00bb4e284 100644 --- a/SSL/src/Catalogs/ЗначенияСвойствОбъектовИерархия/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ЗначенияСвойствОбъектовИерархия/Forms/ФормаЭлемента/Form.form @@ -40,6 +40,48 @@ Normal
      + + ПолноеНаименование + 13 + true + true + + true + + + Объект.ПолноеНаименование + + Left + + ПолноеНаименованиеРасширеннаяПодсказка + 15 + Label + true + true + + Left + + + + ПолноеНаименованиеКонтекстноеМеню + 14 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + Родитель 5 @@ -175,7 +217,6 @@ OnCreateAtServer ПриСозданииНаСервере - 50 LockOwner true true diff --git a/SSL/src/Catalogs/ЗначенияСвойствОбъектовИерархия/ЗначенияСвойствОбъектовИерархия.mdo b/SSL/src/Catalogs/ЗначенияСвойствОбъектовИерархия/ЗначенияСвойствОбъектовИерархия.mdo index eb33d2839..366e342d0 100644 --- a/SSL/src/Catalogs/ЗначенияСвойствОбъектовИерархия/ЗначенияСвойствОбъектовИерархия.mdo +++ b/SSL/src/Catalogs/ЗначенияСвойствОбъектовИерархия/ЗначенияСвойствОбъектовИерархия.mdo @@ -168,6 +168,27 @@ Use Use + + ПолноеНаименование + + ru + Полное наименование + + + String + + + + ru + Подробное описание значения дополнительного реквизита + + true + + + + Use + Use + ФормаЭлемента diff --git a/SSL/src/Catalogs/ИдентификаторыОбъектовМетаданных/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ИдентификаторыОбъектовМетаданных/Forms/ФормаСписка/Form.form index cc0cc45c0..7778e1a25 100644 --- a/SSL/src/Catalogs/ИдентификаторыОбъектовМетаданных/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/ИдентификаторыОбъектовМетаданных/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 22 @@ -37,6 +36,32 @@ КоманднаяПанель 23 + + ФормаВыбрать + 72 + true + true + + true + + + ФормаВыбратьРасширеннаяПодсказка + 73 + Label + true + true + + Left + + + Form.StandardCommand.Choose + Auto + true + true + true + UserCmds + Auto + ФормаИзменить 34 @@ -684,6 +709,7 @@ true true true + true MultiRow 1 1 @@ -725,8 +751,6 @@ OnCreateAtServer ПриСозданииНаСервере - 50 - 10 DontBlock true true @@ -749,6 +773,9 @@ true + + Список.DeletionMark + Список.Description diff --git a/SSL/src/Catalogs/ИдентификаторыОбъектовМетаданных/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ИдентификаторыОбъектовМетаданных/Forms/ФормаЭлемента/Form.form index 603631dcd..bb3ae6b69 100644 --- a/SSL/src/Catalogs/ИдентификаторыОбъектовМетаданных/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ИдентификаторыОбъектовМетаданных/Forms/ФормаЭлемента/Form.form @@ -11,6 +11,7 @@ Объект.Description + true true НаименованиеExtendedTooltip @@ -34,8 +35,9 @@ Left true - true + 60 true + false true true true @@ -80,8 +82,9 @@ Left true - true + 60 true + false true true true @@ -123,8 +126,9 @@ Left true - true + 60 true + false true true true @@ -159,11 +163,9 @@ Vertical Auto - WeakSeparation + NormalSeparation true true - auto - Auto Auto @@ -206,8 +208,9 @@ Left true - true + 60 true + false true true true @@ -253,8 +256,9 @@ Left true - true + 60 true + false true true true @@ -289,11 +293,9 @@ Vertical Auto - WeakSeparation + NormalSeparation true true - auto - Auto Auto @@ -471,13 +473,8 @@ <key>ru</key> - <value>Прочие свойства</value> + <value>Прочее</value> - - ru - Прочие свойства - - true ПрочиеСвойстваExtendedTooltip 40 @@ -492,7 +489,7 @@ Vertical Auto - WeakSeparation + NormalSeparation true true auto @@ -719,8 +716,7 @@ ПриСозданииНаСервере Copy - 80 - LockOwner + DontBlock true true true diff --git a/SSL/src/Catalogs/ИдентификаторыОбъектовМетаданных/ManagerModule.bsl b/SSL/src/Catalogs/ИдентификаторыОбъектовМетаданных/ManagerModule.bsl index 8cbd063b2..3a0302418 100644 --- a/SSL/src/Catalogs/ИдентификаторыОбъектовМетаданных/ManagerModule.bsl +++ b/SSL/src/Catalogs/ИдентификаторыОбъектовМетаданных/ManagerModule.bsl @@ -143,8 +143,8 @@ КонецЕсли; Если ОбъектыРасширений - И ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения) - И Не СтандартныеПодсистемыСервер.УстановленныеРасширенияНедоступны() Тогда + И ЗначениеЗаполнено(ПараметрыСеанса.ПодключенныеРасширения) + И Справочники.ВерсииРасширений.УстановленныеРасширенияДоступны() Тогда Если Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда Если Сообщить Тогда @@ -154,17 +154,7 @@ КонецЕсли; КонецЕсли; - Запрос = Новый Запрос; - Запрос.УстановитьПараметр("ВерсияРасширений", ПараметрыСеанса.ВерсияРасширений); - Запрос.Текст = - "ВЫБРАТЬ ПЕРВЫЕ 1 - | ИСТИНА КАК ЗначениеИстина - |ИЗ - | РегистрСведений.ИдентификаторыОбъектовВерсийРасширений КАК ВерсииИдентификаторов - |ГДЕ - | ВерсииИдентификаторов.ВерсияРасширений = &ВерсияРасширений"; - - Если Запрос.Выполнить().Пустой() Тогда + Если Не ИдентификаторыОбъектовТекущейВерсииРасширенийЗаполнены() Тогда Справочники.ИдентификаторыОбъектовРасширений.ОбновитьДанныеСправочника(); КонецЕсли; КонецЕсли; @@ -173,6 +163,23 @@ КонецФункции +// Только для внутреннего использования. +Функция ИдентификаторыОбъектовТекущейВерсииРасширенийЗаполнены() Экспорт + + Запрос = Новый Запрос; + Запрос.УстановитьПараметр("ВерсияРасширений", ПараметрыСеанса.ВерсияРасширений); + Запрос.Текст = + "ВЫБРАТЬ ПЕРВЫЕ 1 + | ИСТИНА КАК ЗначениеИстина + |ИЗ + | РегистрСведений.ИдентификаторыОбъектовВерсийРасширений КАК ВерсииИдентификаторов + |ГДЕ + | ВерсииИдентификаторов.ВерсияРасширений = &ВерсияРасширений"; + + Возврат Не Запрос.Выполнить().Пустой(); + +КонецФункции + // Только для внутреннего использования. // // Параметры: @@ -342,49 +349,15 @@ Если Не Объект.ПометкаУдаления Тогда // Определение дублей среди существующих объектов метаданных по ключу. - Строки = Выгрузка.НайтиСтроки(Новый Структура("КлючОбъектаМетаданных", КлючОбъектаМетаданных)); - Для каждого Строка Из Строки Цикл - - Если Строка.Ссылка <> Ссылка - И ТаблицаЗагружаемых.Найти(Строка.Ссылка, "Ссылка") = Неопределено Тогда - - ОбновитьСвойстваПомеченногоНаУдаление(Строка); - Строка.НоваяСсылка = Ссылка; - Строка.ДубльОбновлен = Истина; - Объект.ДополнительныеСвойства.Вставить("ЭтоЗаменаДубля"); - // Замена новых ссылок на дубль на новую ссылку заданную для дубля (если есть). - СтарыеДубли = Выгрузка.НайтиСтроки(Новый Структура("НоваяСсылка", Строка.Ссылка)); - Для каждого СтарыйДубль Из СтарыеДубли Цикл - ОбновитьСвойстваПомеченногоНаУдаление(СтарыйДубль); - СтарыйДубль.НоваяСсылка = Ссылка; - СтарыйДубль.ДубльОбновлен = Истина; - КонецЦикла; - КонецЕсли; - КонецЦикла; + Отбор = Новый Структура("КлючОбъектаМетаданных", КлючОбъектаМетаданных); + ОпределитьДублиПриЗагрузкеВПодчиненныйУзел(Выгрузка, Отбор, Объект, Ссылка, ТаблицаЗагружаемых); КонецЕсли; КонецЕсли; Если Не Объект.ПометкаУдаления Тогда // Определение дублей среди существующих объектов метаданных по полному имени. - Строки = Выгрузка.НайтиСтроки(Новый Структура("ПолноеИмяНижнийРегистр", НРег(Объект.ПолноеИмя))); - Для каждого Строка Из Строки Цикл - - Если Строка.Ссылка <> Ссылка - И ТаблицаЗагружаемых.Найти(Строка.Ссылка, "Ссылка") = Неопределено Тогда - - ОбновитьСвойстваПомеченногоНаУдаление(Строка); - Строка.НоваяСсылка = Ссылка; - Строка.ДубльОбновлен = Истина; - Объект.ДополнительныеСвойства.Вставить("ЭтоЗаменаДубля"); - // Замена новых ссылок на дубль на новую ссылку заданную для дубля (если есть). - СтарыеДубли = Выгрузка.НайтиСтроки(Новый Структура("НоваяСсылка", Строка.Ссылка)); - Для каждого СтарыйДубль Из СтарыеДубли Цикл - ОбновитьСвойстваПомеченногоНаУдаление(СтарыйДубль); - СтарыйДубль.НоваяСсылка = Ссылка; - СтарыйДубль.ДубльОбновлен = Истина; - КонецЦикла; - КонецЕсли; - КонецЦикла; + Отбор = Новый Структура("ПолноеИмяНижнийРегистр", НРег(Объект.ПолноеИмя)); + ОпределитьДублиПриЗагрузкеВПодчиненныйУзел(Выгрузка, Отбор, Объект, Ссылка, ТаблицаЗагружаемых); КонецЕсли; ОбъектыДляЗаписи.Добавить(Объект); @@ -450,12 +423,13 @@ ЕстьКритичныеИзменения = Ложь, СписокКритичныхИзменений = "", ОбъектыРасширений = Ложь) Экспорт Если ОбъектыРасширений - И ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения) - И СтандартныеПодсистемыСервер.УстановленныеРасширенияНедоступны() Тогда + И ЗначениеЗаполнено(ПараметрыСеанса.ПодключенныеРасширения) + И Не Справочники.ВерсииРасширений.УстановленныеРасширенияДоступны() Тогда ТекстОшибки = - НСтр("ru = 'Невозможно обновить идентификаторы объектов расширений в сеансе - |неразделенного пользователя, т.к. расширения не подключены.'"); + НСтр("ru = 'Невозможно обновить идентификаторы объектов расширений + |в сеансе неразделенного пользователя, так как + |расширения для разделенных пользователей не подключены.'"); ВызватьИсключениеПоОшибке(Истина, ТекстОшибки); Возврат; @@ -470,11 +444,6 @@ КонецЕсли; ТолькоПроверка = (РежимОбновления = "ТолькоПроверка"); - СвойстваРасширений = ПолучитьИзВременногоХранилища(ПараметрыСеанса.АдресСвойствРасширений); - Если СвойстваРасширений.ИменаОбъектов.Индексы.Количество() = 0 Тогда - СвойстваРасширений.ИменаОбъектов.Индексы.Добавить("ПолноеИмя"); - КонецЕсли; - ЕстьТекущиеИзменения = Ложь; Если Не ОбъектыРасширений Тогда ЗаменитьДублиПодчиненногоУзлаНайденныеПриЗагрузке(ТолькоПроверка, ЕстьТекущиеИзменения); @@ -484,7 +453,7 @@ Или Не ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда ОбновитьДанные(ЕстьТекущиеИзменения, ЕстьУдаленные, РежимОбновления, - ЕстьКритичныеИзменения, СписокКритичныхИзменений, СвойстваРасширений, ОбъектыРасширений); + ЕстьКритичныеИзменения, СписокКритичныхИзменений, ОбъектыРасширений); Если ЕстьТекущиеИзменения Тогда ЕстьИзменения = Истина; @@ -493,7 +462,7 @@ Если Не ТолькоПроверка И Не (РежимОбновления <> "Полный" И ЕстьКритичныеИзменения) Тогда - + Если Не ОбъектыРасширений Тогда СтандартныеПодсистемыСервер.ПодтвердитьОбновлениеПараметраРаботыПрограммы( "ПараметрыБазовойФункциональности", "ИдентификаторыОбъектовМетаданных"); @@ -502,53 +471,135 @@ КонецПроцедуры -// Только для внутреннего использования. -Процедура УстановитьПараметрСеансаАдресСвойствРасширений(УстановленныеРасширения = Неопределено, - ХранилищеСвойствРасширений = Неопределено) Экспорт +// Возвращает объекты метаданных по переданным идентификаторам. +// +// Параметры: +// Идентификаторы - Массив - значения либо типа СправочникСсылка.ИдентификаторыОбъектовМетаданных, +// либо типа СправочникСсылка.ИдентификаторыОбъектовРасширений - идентификаторы +// объектов метаданных конфигурации или расширения. +// +// Возвращаемое значение: +// Соответствие - со свойствами: +// * Ключ - переданный идентификатор, +// * Значение - ОбъектМетаданных - для типа СправочникСсылка.ИдентификаторыОбъектовМетаданных. +// - ОбъектМетаданных, Неопределено - для типа СправочникСсылка.ИдентификаторыОбъектовРасширений. +// Если расширение не подключено, тогда объект метаданных невозможно вернуть и возвращается Неопределено. +// Неопределено означает, что в справочнике ИдентификаторыОбъектовРасширений найден действующий +// идентификатор, но объекта метаданных, который ему соответствует, найти не удалось. +// +Функция ОбъектыМетаданныхПоИдентификаторам(Идентификаторы) Экспорт + + ОбъектыРасширений = ЭтоОбъектРасширений(Идентификаторы[0]); + НазваниеСправочника = НазваниеСправочника(ОбъектыРасширений); + + СтандартныеПодсистемыПовтИсп.ИдентификаторыОбъектовМетаданныхПроверкаИспользования(Истина, ОбъектыРасширений); УстановитьПривилегированныйРежим(Истина); - Если УстановленныеРасширения <> Неопределено - И УстановленныеРасширения <> ПараметрыСеанса.УстановленныеРасширения Тогда - - ТекстОшибки = - НСтр("ru = 'Невозможно определить объекты метаданных расширений в фоновом задании - |без перезапуска сеанса, т.к. состав расширений был изменен.'"); - - ВызватьИсключениеПоОшибке(Ложь, ТекстОшибки); - КонецЕсли; - - Если СтандартныеПодсистемыСервер.УстановленныеРасширенияНедоступны() - И ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения) Тогда - - ТекстОшибки = - НСтр("ru = 'Невозможно определить объекты метаданных расширений в сеансе - |неразделенного пользователя, т.к. расширения не подключены.'"); - - ВызватьИсключениеПоОшибке(Истина, ТекстОшибки); - КонецЕсли; - - Если ХранилищеСвойствРасширений = Неопределено Тогда - СвойстваРасширений = СвойстваРасширений(); - Если СвойстваРасширений = Неопределено Тогда - ТекстОшибки = - НСтр("ru = 'Невозможно определить объекты метаданных расширений - |без перезапуска сеанса, т.к. состав расширений был изменен.'"); - ВызватьИсключениеПоОшибке(Ложь, ТекстОшибки); - КонецЕсли; + Запрос = Новый Запрос; + Запрос.УстановитьПараметр("Ссылки", Идентификаторы); + Если ОбъектыРасширений Тогда + Запрос.УстановитьПараметр("ВерсияРасширений", ПараметрыСеанса.ВерсияРасширений); + Запрос.Текст = + "ВЫБРАТЬ + | Идентификаторы.Ссылка КАК Ссылка, + | Идентификаторы.КлючОбъектаМетаданных, + | ЕСТЬNULL(ВерсииИдентификаторов.ПолноеИмяОбъекта, """") КАК ПолноеИмя, + | Идентификаторы.ПометкаУдаления + |ИЗ + | Справочник.ИдентификаторыОбъектовРасширений КАК Идентификаторы + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ИдентификаторыОбъектовВерсийРасширений КАК ВерсииИдентификаторов + | ПО (ВерсииИдентификаторов.Идентификатор = Идентификаторы.Ссылка) + |ГДЕ + | ВерсииИдентификаторов.ВерсияРасширений = &ВерсияРасширений + | И Идентификаторы.Ссылка В(&Ссылки)"; Иначе - СвойстваРасширений = ХранилищеСвойствРасширений.Получить(); + Запрос.Текст = + "ВЫБРАТЬ + | Идентификаторы.Ссылка КАК Ссылка, + | Идентификаторы.КлючОбъектаМетаданных, + | Идентификаторы.ПолноеИмя, + | Идентификаторы.ПометкаУдаления + |ИЗ + | Справочник.ИдентификаторыОбъектовМетаданных КАК Идентификаторы + |ГДЕ + | Идентификаторы.Ссылка В(&Ссылки)"; КонецЕсли; - ПараметрыСеанса.АдресСвойствРасширений = - ПоместитьВоВременноеХранилище(СвойстваРасширений, Новый УникальныйИдентификатор); + Выгрузка = Запрос.Выполнить().Выгрузить(); + ЗаголовокОшибки = НСтр("ru = 'Ошибка при выполнении функции ОбщегоНазначения.ОбъектМетаданныхПоИдентификатору().'"); -КонецПроцедуры - -// Только для внутреннего использования. -Функция ХранилищеСвойствРасширений() Экспорт + Если Выгрузка.Количество() < Идентификаторы.Количество() Тогда + Для Каждого Идентификатор Из Идентификаторы Цикл + Если Выгрузка.Найти(Идентификатор, "Ссылка") = Неопределено Тогда + Прервать; + КонецЕсли; + КонецЦикла; + ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Идентификатор ""%1"" + |не найден в справочнике ""%2"".'"), + Строка(Идентификатор), НазваниеСправочника); + + ВызватьИсключение ЗаголовокОшибки + Символы.ПС + Символы.ПС + ОписаниеОшибки + + СтандартныеПодсистемыСервер.УточнениеОшибкиПараметровРаботыПрограммыДляРазработчика(); + КонецЕсли; - Возврат Новый ХранилищеЗначения(ПолучитьИзВременногоХранилища(ПараметрыСеанса.АдресСвойствРасширений)); + ОбъектыМетаданныхИдентификаторов = Новый Соответствие; + + // Проверка соответствия ключа объекта метаданных полному имени объекта метаданных. + Для Каждого Свойства Из Выгрузка Цикл + РезультатПроверки = КлючОбъектаМетаданныхСоответствуетПолномуИмени(Свойства); + Если РезультатПроверки.НеСоответствует Тогда + + Если РезультатПроверки.ОбъектМетаданных = Неопределено Тогда + Если ОбъектыРасширений И Не Свойства.ПометкаУдаления Тогда + + // Возможно расширение не удалось подключить. + ОбъектыМетаданныхИдентификаторов.Вставить(Свойства.Ссылка, Неопределено); + + ИначеЕсли РезультатПроверки.КлючОбъектаМетаданных = Неопределено Тогда + ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Идентификатору ""%1"" + |найденному в справочнике ""%2"", + |соответствует несуществующий объект метаданных + |""%3"".'"), + Строка(Свойства.Ссылка), НазваниеСправочника, Свойства.ПолноеИмя); + Иначе + ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Идентификатору ""%1"" + |найденному в справочнике ""%2"", + |соответствует удаленный объект метаданных.'"), + Строка(Свойства.Ссылка), НазваниеСправочника); + КонецЕсли; + Иначе + ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Идентификатору ""%1"" + |найденному в справочнике ""%2"", + |соответствует объект метаданных ""%3"", + |полное имя которого отличается от заданного в идентификаторе.'"), + Строка(Свойства.Ссылка), НазваниеСправочника, РезультатПроверки.ОбъектМетаданных.ПолноеИмя()); + КонецЕсли; + + ВызватьИсключение ЗаголовокОшибки + Символы.ПС + Символы.ПС + ОписаниеОшибки + + СтандартныеПодсистемыСервер.УточнениеОшибкиПараметровРаботыПрограммыДляРазработчика(); + КонецЕсли; + + Если Не ОбъектыРасширений И Свойства.ПометкаУдаления Тогда + ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Идентификатор ""%1"" + |найден в справочнике ""%2"", + |но значение реквизита ""Пометка удаления"" установлено Истина.'"), + Строка(Свойства.Ссылка), НазваниеСправочника); + + ВызватьИсключение ЗаголовокОшибки + Символы.ПС + Символы.ПС + ОписаниеОшибки + + СтандартныеПодсистемыСервер.УточнениеОшибкиПараметровРаботыПрограммыДляРазработчика(); + КонецЕсли; + + ОбъектыМетаданныхИдентификаторов.Вставить(Свойства.Ссылка, РезультатПроверки.ОбъектМетаданных); + + КонецЦикла; + + Возврат ОбъектыМетаданныхИдентификаторов; КонецФункции @@ -596,8 +647,8 @@ УстановитьПривилегированныйРежим(Истина); ДоступныИдентификаторыОбъектовРасширений = - ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения) - И Не СтандартныеПодсистемыСервер.УстановленныеРасширенияНедоступны(); + ЗначениеЗаполнено(ПараметрыСеанса.ПодключенныеРасширения) + И Справочники.ВерсииРасширений.УстановленныеРасширенияДоступны(); Запрос = Новый Запрос; Запрос.УстановитьПараметр("ПолноеИмя", ПолноеИмяОбъектаМетаданных); @@ -728,105 +779,10 @@ // См. описание одноименной процедуры в общем модуле ОбщегоНазначения. Функция ОбъектМетаданныхПоИдентификатору(Идентификатор) Экспорт - ОбъектыРасширений = ЭтоОбъектРасширений(Идентификатор); - НазваниеСправочника = НазваниеСправочника(ОбъектыРасширений); + Идентификаторы = Новый Массив; + Идентификаторы.Добавить(Идентификатор); - СтандартныеПодсистемыПовтИсп.ИдентификаторыОбъектовМетаданныхПроверкаИспользования(Истина, ОбъектыРасширений); - - УстановитьПривилегированныйРежим(Истина); - - Запрос = Новый Запрос; - Запрос.УстановитьПараметр("Ссылка", Идентификатор); - Если ОбъектыРасширений Тогда - Запрос.УстановитьПараметр("ВерсияРасширений", ПараметрыСеанса.ВерсияРасширений); - Запрос.Текст = - "ВЫБРАТЬ - | Идентификаторы.Ссылка КАК Ссылка, - | Идентификаторы.КлючОбъектаМетаданных, - | ЕСТЬNULL(ВерсииИдентификаторов.ПолноеИмяОбъекта, """") КАК ПолноеИмя, - | Идентификаторы.ПометкаУдаления - |ИЗ - | Справочник.ИдентификаторыОбъектовРасширений КАК Идентификаторы - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ИдентификаторыОбъектовВерсийРасширений КАК ВерсииИдентификаторов - | ПО (ВерсииИдентификаторов.Идентификатор = Идентификаторы.Ссылка) - |ГДЕ - | ВерсииИдентификаторов.ВерсияРасширений = &ВерсияРасширений - | И Идентификаторы.Ссылка = &Ссылка"; - Иначе - Запрос.Текст = - "ВЫБРАТЬ - | Идентификаторы.Ссылка КАК Ссылка, - | Идентификаторы.КлючОбъектаМетаданных, - | Идентификаторы.ПолноеИмя, - | Идентификаторы.ПометкаУдаления - |ИЗ - | Справочник.ИдентификаторыОбъектовМетаданных КАК Идентификаторы - |ГДЕ - | Идентификаторы.Ссылка = &Ссылка"; - КонецЕсли; - - Выгрузка = Запрос.Выполнить().Выгрузить(); - ЗаголовокОшибки = НСтр("ru = 'Ошибка при выполнении функции ОбщегоНазначения.ОбъектМетаданныхПоИдентификатору().'"); - - Если Выгрузка.Количество() = 0 Тогда - ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Идентификатор ""%1"" - |не найден в справочнике ""%2"".'"), - Строка(Идентификатор), НазваниеСправочника); - - ВызватьИсключение ЗаголовокОшибки + Символы.ПС + Символы.ПС + ОписаниеОшибки - + СтандартныеПодсистемыСервер.УточнениеОшибкиПараметровРаботыПрограммыДляРазработчика(); - КонецЕсли; - - // Проверка соответствия ключа объекта метаданных полному имени объекта метаданных. - РезультатПроверки = КлючОбъектаМетаданныхСоответствуетПолномуИмени(Выгрузка[0]); - Если РезультатПроверки.НеСоответствует Тогда - - Если РезультатПроверки.ОбъектМетаданных = Неопределено Тогда - Если ОбъектыРасширений И Не Выгрузка[0].ПометкаУдаления Тогда - - // Возможно расширение не удалось подключить. - Возврат Неопределено; - - ИначеЕсли РезультатПроверки.КлючОбъектаМетаданных = Неопределено Тогда - ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Идентификатору ""%1"" - |найденному в справочнике ""%2"", - |соответствует несуществующий объект метаданных - |""%3"".'"), - Строка(Идентификатор), НазваниеСправочника, Выгрузка[0].ПолноеИмя); - Иначе - ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Идентификатору ""%1"" - |найденному в справочнике ""%2"", - |соответствует удаленный объект метаданных.'"), - Строка(Идентификатор), НазваниеСправочника); - КонецЕсли; - Иначе - ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Идентификатору ""%1"" - |найденному в справочнике ""%2"", - |соответствует объект метаданных ""%3"", - |полное имя которого отличается от заданного в идентификаторе.'"), - Строка(Идентификатор), НазваниеСправочника, РезультатПроверки.ОбъектМетаданных.ПолноеИмя()); - КонецЕсли; - - ВызватьИсключение ЗаголовокОшибки + Символы.ПС + Символы.ПС + ОписаниеОшибки - + СтандартныеПодсистемыСервер.УточнениеОшибкиПараметровРаботыПрограммыДляРазработчика(); - КонецЕсли; - - Если Выгрузка[0].ПометкаУдаления Тогда - ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Идентификатор ""%1"" - |найден в справочнике ""%2"", - |но значение реквизита ""Пометка удаления"" установлено Истина.'"), - Строка(Идентификатор), НазваниеСправочника); - - ВызватьИсключение ЗаголовокОшибки + Символы.ПС + Символы.ПС + ОписаниеОшибки - + СтандартныеПодсистемыСервер.УточнениеОшибкиПараметровРаботыПрограммыДляРазработчика(); - КонецЕсли; - - Возврат РезультатПроверки.ОбъектМетаданных; + Возврат ОбъектыМетаданныхПоИдентификаторам(Идентификаторы).Получить(Идентификатор); КонецФункции @@ -957,7 +913,8 @@ Объект.ЗначениеПустойСсылки = Неопределено; Если ОбъектыРасширений Тогда - Объект.ИмяРасширения = ВставитьЗнакВопроса(Объект.ИмяРасширения); + Объект.ИмяРасширения = ВставитьЗнакВопроса(Объект.ИмяРасширения); + Объект.ХешСуммаРасширения = ВставитьЗнакВопроса(Объект.ХешСуммаРасширения); КонецЕсли; Если ТипЗнч(Объект) <> Тип("ДанныеФормыСтруктура") Тогда @@ -974,7 +931,7 @@ Отбор = Новый Структура("ИмяВЕдЧисле", ИмяБазовогоТипа); Строки = СвойстваКоллекций.НайтиСтроки(Отбор); - СвойстваОбъектовМетаданных = СвойстваОбъектовМетаданных(ЭтоОбъектРасширений(Объект), , + СвойстваОбъектовМетаданных = СвойстваОбъектовМетаданных(ЭтоОбъектРасширений(Объект), СвойстваКоллекций.Скопировать(Строки)); СвойстваОбъекта = СвойстваОбъектовМетаданных.Найти(ПолноеИмя, "ПолноеИмя"); @@ -1290,7 +1247,8 @@ Если Параметры.РежимВыбора Тогда СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(Форма, "ВыборПодбор"); РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; - Элементы.Список.РежимВыбора = Истина; + Иначе + Элементы.Список.РежимВыбора = Ложь; КонецЕсли; Параметры.Свойство("ВыбиратьГруппыОбъектовМетаданных", Форма.ВыбиратьГруппыОбъектовМетаданных); @@ -1326,10 +1284,41 @@ //////////////////////////////////////////////////////////////////////////////// // Вспомогательные процедуры и функции. -Процедура ОбновитьДанные(ЕстьИзменения, ЕстьУдаленные, РежимОбновления, - ЕстьКритичныеИзменения, СписокКритичныхИзменений, СвойстваРасширений, ОбъектыРасширений) +// Для процедуры ЗагрузитьДанныеВПодчиненныйУзел. +Процедура ОпределитьДублиПриЗагрузкеВПодчиненныйУзел(Выгрузка, Отбор, ЗагружаемыйОбъект, СсылкаЗагружаемого, ТаблицаЗагружаемых) - СвойстваОбъектовМетаданных = СвойстваОбъектовМетаданных(ОбъектыРасширений, СвойстваРасширений.ИменаОбъектов); + Строки = Выгрузка.НайтиСтроки(Отбор); + Для Каждого Строка Из Строки Цикл + + Если Строка.Ссылка <> СсылкаЗагружаемого + И ТаблицаЗагружаемых.Найти(Строка.Ссылка, "Ссылка") = Неопределено Тогда + + ОбновитьСвойстваПомеченногоНаУдаление(Строка); + Строка.НоваяСсылка = СсылкаЗагружаемого; + Строка.ДубльОбновлен = Истина; + ЗагружаемыйОбъект.ДополнительныеСвойства.Вставить("ЭтоЗаменаДубля"); + // Замена новых ссылок на дубль на новую ссылку заданную для дубля (если есть). + СтарыеДубли = Выгрузка.НайтиСтроки(Новый Структура("НоваяСсылка", Строка.Ссылка)); + Для Каждого СтарыйДубль Из СтарыеДубли Цикл + ОбновитьСвойстваПомеченногоНаУдаление(СтарыйДубль); + СтарыйДубль.НоваяСсылка = СсылкаЗагружаемого; + СтарыйДубль.ДубльОбновлен = Истина; + КонецЦикла; + КонецЕсли; + КонецЦикла; + +КонецПроцедуры + +Процедура ОбновитьДанные(ЕстьИзменения, ЕстьУдаленные, РежимОбновления, + ЕстьКритичныеИзменения, СписокКритичныхИзменений, ОбъектыРасширений) + + СвойстваРасширений = Новый Структура; + СвойстваРасширений.Вставить("ИменаПодключенныхРасширений", + ИменаРасширений(ИсточникРасширенийКонфигурации.СеансАктивные)); + СвойстваРасширений.Вставить("ИменаНеподключенныхРасширений", + ИменаРасширений(ИсточникРасширенийКонфигурации.СеансОтключенные)); + + СвойстваОбъектовМетаданных = СвойстваОбъектовМетаданных(ОбъектыРасширений); СправочникМенеджер = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ИмяСправочника(ОбъектыРасширений)); // Найден - состояние, когда для объекта метаданных найден идентификатор. @@ -1355,7 +1344,13 @@ ЭлементБлокировки.УстановитьЗначение("ВерсияРасширений", ВерсияРасширений); КонецЕсли; - СнятьМонопольныйРежим = Ложь; + Если ОбъектыРасширений Или РежимОбновления <> "Полный" Или МонопольныйРежим() Тогда + СнятьМонопольныйРежим = Ложь; + Иначе + СнятьМонопольныйРежим = Истина; + УстановитьМонопольныйРежим(Истина); + КонецЕсли; + НачатьТранзакцию(); Попытка Блокировка.Заблокировать(); @@ -1365,144 +1360,20 @@ Выгрузка.Колонки.Добавить("ОбъектМетаданных"); Выгрузка.Колонки.Удалить("НоваяСсылка"); + СписокПереименованийОбъектовМетаданных = ""; Если НЕ ОбъектыРасширений И НЕ ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда // Переименование полных имен перед обработкой (для РИБ только в главном узле). // Для расширений не поддерживается. - ПереименоватьПолныеИмена(Выгрузка); + ПереименоватьПолныеИмена(Выгрузка, СписокПереименованийОбъектовМетаданных, ЕстьКритичныеИзменения); КонецЕсли; - СписокПереименованийОбъектовМетаданных = ""; - ЕстьТекущиеКритичныеИзменения = Ложь; - - // Обработка идентификаторов объектов метаданных. - Для каждого Свойства Из Выгрузка Цикл - - // Проверка и обновление свойств идентификаторов коллекций объектов метаданных. - Если Свойства.ЭтоКоллекция Тогда - ПроверитьОбновитьСвойстваКоллекции(Свойства, ОбъектыРасширений); - Продолжить; - КонецЕсли; - - Если ОбъектыРасширений - И СвойстваРасширений.ИменаНеподключенныхРасширений[Свойства.ИмяРасширения] <> Неопределено Тогда - // Элементы неподключенных расширений остаются неизменными для возможности - // использования после исправления ошибок в расширениях так, чтобы обработка - // удаления помеченных не удалила связанные данные. - Продолжить; - КонецЕсли; - - Если ОбъектыРасширений - И СвойстваРасширений.ИменаПодключенныхРасширений[Свойства.ИмяРасширения] = Неопределено Тогда - - СвойстваОбновлены = Ложь; - ОбновитьСвойстваПомеченногоНаУдаление(Свойства, СвойстваОбновлены, ЕстьУдаленные); - Если СвойстваОбновлены Тогда - Свойства.Обновлен = Истина; - КонецЕсли; - КонецЕсли; - - КлючОбъектаМетаданных = Свойства.КлючОбъектаМетаданных; - ОбъектМетаданных = ОбъектМетаданныхПоКлючу(КлючОбъектаМетаданных); - - Если ОбъектМетаданных = Неопределено Тогда - // Если объект метаданных без ключа, то его можно найти только по полному имени. - ОбъектМетаданных = МетаданныеНайтиПоПолномуИмени(Свойства.ПолноеИмя); - Иначе - // Если объект метаданных удалялся с целью реструктуризации, тогда - // старый идентификатор нужно использовать для нового объекта метаданных, - // а для старых объектов метаданных создать новые идентификаторы. - Если ВРег(Лев(ОбъектМетаданных.Имя, СтрДлина("Удалить"))) = ВРег("Удалить") - И ВРег(Лев(Свойства.Имя, СтрДлина("Удалить"))) <> ВРег("Удалить") Тогда - - НовыйОбъектМетаданных = МетаданныеНайтиПоПолномуИмени(Свойства.ПолноеИмя); - Если НовыйОбъектМетаданных <> Неопределено Тогда - ОбъектМетаданных = НовыйОбъектМетаданных; - КлючОбъектаМетаданных = Неопределено; // Чтобы выполнить обновление идентификатора. - КонецЕсли; - КонецЕсли; - КонецЕсли; - - // Если объект метаданных найден по ключу или полному имени, - // тогда нужно подготовить строку свойств объекта метаданных. - Если ОбъектМетаданных <> Неопределено Тогда - СвойстваОбъекта = СвойстваОбъектовМетаданных.Найти(ОбъектМетаданных.ПолноеИмя(), "ПолноеИмя"); - Если СвойстваОбъекта = Неопределено Тогда - ОбъектМетаданных = Неопределено; - Иначе - Свойства.ОбъектМетаданных = ОбъектМетаданных; - КонецЕсли; - КонецЕсли; - - Если ОбъектМетаданных = Неопределено ИЛИ СвойстваОбъекта.Найден Тогда - // Если объект метаданных не найден или найден повторно - // тогда идентификатор требуется пометить на удаление. - СвойстваОбновлены = Ложь; - ОбновитьСвойстваПомеченногоНаУдаление(Свойства, СвойстваОбновлены, ЕстьУдаленные); - Если СвойстваОбновлены Тогда - Свойства.Обновлен = Истина; - КонецЕсли; - Иначе - // Обновление свойств существующих объектов метаданных, если изменились. - СвойстваОбъекта.Найден = Истина; - Если Свойства.Наименование <> СвойстваОбъекта.Наименование - ИЛИ Свойства.ПорядокКоллекции <> СвойстваОбъекта.ПорядокКоллекции - ИЛИ Свойства.Имя <> СвойстваОбъекта.Имя - ИЛИ Свойства.Синоним <> СвойстваОбъекта.Синоним - ИЛИ Свойства.ПолноеИмя <> СвойстваОбъекта.ПолноеИмя - ИЛИ Свойства.ПолныйСиноним <> СвойстваОбъекта.ПолныйСиноним - ИЛИ Свойства.БезДанных <> СвойстваОбъекта.БезДанных - ИЛИ Свойства.ЗначениеПустойСсылки <> СвойстваОбъекта.ЗначениеПустойСсылки - ИЛИ Свойства.ИмяРасширения <> СвойстваОбъекта.ИмяРасширения - ИЛИ Свойства.ИмяПредопределенныхДанных <> "" - ИЛИ Свойства.ПометкаУдаления - ИЛИ КлючОбъектаМетаданных = Неопределено - ИЛИ СвойстваОбъекта.БезКлючаОбъектаМетаданных - И КлючОбъектаМетаданных <> Тип("Неопределено") Тогда - - Если ВРег(Свойства.ПолноеИмя) <> ВРег(СвойстваОбъекта.ПолноеИмя) Тогда - ЕстьТекущиеКритичныеИзменения = Истина; - ЕстьКритичныеИзменения = Истина; - СписокПереименованийОбъектовМетаданных = СписокПереименованийОбъектовМетаданных - + ?(ЗначениеЗаполнено(СписокПереименованийОбъектовМетаданных), "," + Символы.ПС, "") - + Свойства.ПолноеИмя + " -> " + СвойстваОбъекта.ПолноеИмя; - КонецЕсли; - - // Установка новых свойств идентификатора объекта метаданных. - ЗаполнитьЗначенияСвойств(Свойства, СвойстваОбъекта); - - Свойства.ИмяПредопределенныхДанных = ""; - - Если КлючОбъектаМетаданных = Неопределено - ИЛИ СвойстваОбъекта.БезКлючаОбъектаМетаданных - И КлючОбъектаМетаданных <> Тип("Неопределено") Тогда - - Свойства.КлючОбъектаМетаданных = КлючОбъектаМетаданных(СвойстваОбъекта.ПолноеИмя); - КонецЕсли; - - Свойства.ПометкаУдаления = Ложь; - Свойства.Обновлен = Истина; - КонецЕсли; - КонецЕсли; - КонецЦикла; + ОбработатьИдентификаторыОбъектовМетаданных(Выгрузка, СвойстваОбъектовМетаданных, ОбъектыРасширений, + СвойстваРасширений, ЕстьУдаленные, ЕстьКритичныеИзменения, СписокПереименованийОбъектовМетаданных); СписокНовыхОбъектовМетаданных = ""; - - // Добавление идентификаторов новых объектов метаданных. - Для каждого СвойстваОбъекта Из СвойстваОбъектовМетаданных.НайтиСтроки(Новый Структура("Найден", Ложь)) Цикл - Свойства = Выгрузка.Добавить(); - ЗаполнитьЗначенияСвойств(Свойства, СвойстваОбъекта); - Свойства.ЭтоНовый = Истина; - Свойства.Ссылка = НоваяСсылкаСправочника(ОбъектыРасширений); - Свойства.ПометкаУдаления = Ложь; - Свойства.ОбъектМетаданных = СвойстваОбъекта.ОбъектМетаданных; - Свойства.КлючОбъектаМетаданных = КлючОбъектаМетаданных(Свойства.ПолноеИмя); - ЕстьТекущиеКритичныеИзменения = Истина; - ЕстьКритичныеИзменения = Истина; - СписокНовыхОбъектовМетаданных = СписокНовыхОбъектовМетаданных - + ?(ЗначениеЗаполнено(СписокНовыхОбъектовМетаданных), "," + Символы.ПС, "") - + СвойстваОбъекта.ПолноеИмя; - КонецЦикла; + ДобавитьИдентификаторыНовыхОбъектовМетаданных(Выгрузка, СвойстваОбъектовМетаданных, ОбъектыРасширений, + ЕстьКритичныеИзменения, СписокНовыхОбъектовМетаданных); СписокКритичныхИзменений = ""; Если ЗначениеЗаполнено(СписокПереименованийОбъектовМетаданных) Тогда @@ -1515,145 +1386,29 @@ + Символы.ПС + СписокНовыхОбъектовМетаданных + Символы.ПС; КонецЕсли; - Если РежимОбновления = "Полный" - И Не МонопольныйРежим() - И Не ОбъектыРасширений - И ЕстьТекущиеКритичныеИзменения Тогда - - ЗафиксироватьТранзакцию(); - Попытка - УстановитьМонопольныйРежим(Истина); - Исключение - НачатьТранзакцию(); - ВызватьИсключение; - КонецПопытки; - СнятьМонопольныйРежим = Истина; - НачатьТранзакцию(); - КонецЕсли; + ТолькоПроверка = (РежимОбновления = "ТолькоПроверка") + Или Не ОбъектыРасширений И РежимОбновления <> "Полный" И ЕстьКритичныеИзменения; - Если ОбъектыРасширений Тогда - НаборЗаписей = РегистрыСведений.ИдентификаторыОбъектовВерсийРасширений.СоздатьНаборЗаписей(); - НаборЗаписей.Отбор.ВерсияРасширений.Установить(ВерсияРасширений); - НаборЗаписей.Прочитать(); - ТаблицаЗаписей = НаборЗаписей.Выгрузить(); - ТаблицаЗаписей.Колонки.Добавить("Удалить", Новый ОписаниеТипов("Булево")); - ТаблицаЗаписей.ЗаполнитьЗначения(Истина, "Удалить"); - ТаблицаЗаписей.Индексы.Добавить("Идентификатор, ПолноеИмяОбъекта, ВерсияРасширений"); - ОбновитьНаборЗаписей = Ложь; - КонецЕсли; + ОбновитьИдентификаторыОбъектовМетаданных(Выгрузка, СвойстваОбъектовМетаданных, ОбъектыРасширений, + СвойстваРасширений, ВерсияРасширений, ЕстьИзменения, ТолькоПроверка); - // Обновление родителей идентификаторов объектов метаданных. - Для каждого Свойства Из Выгрузка Цикл - - Если НЕ Свойства.ЭтоКоллекция Тогда - СвойстваОбъекта = СвойстваОбъектовМетаданных.Найти(Свойства.ПолноеИмя, "ПолноеИмя"); - НовыйРодитель = ПустаяСсылкаСправочника(ОбъектыРасширений); - - Если СвойстваОбъекта <> Неопределено Тогда - Если НЕ ЗначениеЗаполнено(СвойстваОбъекта.ПолноеИмяРодителя) Тогда - // Коллекция объектов метаданных. - НовыйРодитель = СвойстваОбъекта.Родитель; - Иначе - // Не коллекция объектов метаданных, например, подсистема. - ОписаниеРодителя = Выгрузка.Найти(СвойстваОбъекта.ПолноеИмяРодителя, "ПолноеИмя"); - Если ОписаниеРодителя <> Неопределено Тогда - НовыйРодитель = ОписаниеРодителя.Ссылка; - КонецЕсли; - КонецЕсли; - КонецЕсли; - - Если Свойства.Родитель <> НовыйРодитель Тогда - Свойства.Родитель = НовыйРодитель; - Свойства.Обновлен = Истина; - КонецЕсли; - - Если ОбъектыРасширений - И Свойства.ПометкаУдаления = Ложь - И СвойстваРасширений.ИменаНеподключенныхРасширений[Свойства.ИмяРасширения] = Неопределено Тогда - - Отбор = Новый Структура; - Отбор.Вставить("ВерсияРасширений", ВерсияРасширений); - Отбор.Вставить("Идентификатор", Свойства.Ссылка); - Отбор.Вставить("ПолноеИмяОбъекта", Свойства.ПолноеИмя); - Строки = ТаблицаЗаписей.НайтиСтроки(Отбор); - Если Строки.Количество() = 0 Тогда - ОбновитьНаборЗаписей = Истина; - ЗаполнитьЗначенияСвойств(ТаблицаЗаписей.Добавить(), Отбор); - Иначе - Строки[0].Удалить = Ложь; - КонецЕсли; - КонецЕсли; + Если Не ТолькоПроверка Тогда + Если ЗначениеЗаполнено(СписокКритичныхИзменений) Тогда + ЗаписьЖурналаРегистрации(?(ОбъектыРасширений, + НСтр("ru = 'Идентификаторы объектов расширений.Выполнены критичные изменения'", + ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + НСтр("ru = 'Идентификаторы объектов метаданных.Выполнены критичные изменения'", + ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка())), + УровеньЖурналаРегистрации.Информация, + , + , + СписокКритичныхИзменений, + РежимТранзакцииЗаписиЖурналаРегистрации.Транзакционная); КонецЕсли; - Если Свойства.ЭтоНовый Тогда - ТаблицаОбъект = СоздатьЭлементСправочника(ОбъектыРасширений); - ТаблицаОбъект.УстановитьСсылкуНового(Свойства.Ссылка); - - ИначеЕсли Свойства.Обновлен Тогда - ТаблицаОбъект = Свойства.Ссылка.ПолучитьОбъект(); - Иначе - Продолжить; + Если Не ОбъектыРасширений И ПланыОбмена.ГлавныйУзел() = Неопределено Тогда + ПодготовитьСписокНовыхПодсистемВГлавномУзле(Выгрузка); КонецЕсли; - - ЕстьТекущиеИзменения = Истина; - ЕстьИзменения = Истина; - Если РежимОбновления = "ТолькоПроверка" - Или РежимОбновления <> "Полный" И ЕстьКритичныеИзменения Тогда - ЗафиксироватьТранзакцию(); - Возврат; - КонецЕсли; - - ЗаполнитьЗначенияСвойств(ТаблицаОбъект, Свойства); - ТаблицаОбъект.КлючОбъектаМетаданных = Новый ХранилищеЗначения(Свойства.КлючОбъектаМетаданных); - ТаблицаОбъект.ОбменДанными.Загрузка = Истина; - ПроверитьОбъектПередЗаписью(ТаблицаОбъект, Истина); - ТаблицаОбъект.Записать(); - КонецЦикла; - - Если ОбъектыРасширений Тогда - ТаблицаЗаписей.Индексы.Добавить("Удалить"); - Строки = ТаблицаЗаписей.НайтиСтроки(Новый Структура("Удалить", Истина)); - Если Строки.Количество() > 0 Тогда - ОбновитьНаборЗаписей = Истина; - Для Каждого Строка Из Строки Цикл - ТаблицаЗаписей.Удалить(Строка); - КонецЦикла; - КонецЕсли; - Если ТаблицаЗаписей.Количество() = 0 - И ЗначениеЗаполнено(ВерсияРасширений) Тогда - // Добавление записи, если в расширении нет объектов метаданных, - // чтобы при проверке наличия кэша, получить значение Истина. - ТаблицаЗаписей.Добавить().ВерсияРасширений = ВерсияРасширений; - ОбновитьНаборЗаписей = Истина; - КонецЕсли; - Если ОбновитьНаборЗаписей Тогда - ЕстьКритичныеИзменения = Истина; - ЕстьТекущиеИзменения = Истина; - ЕстьИзменения = Истина; - Если РежимОбновления = "ТолькоПроверка" Тогда - ЗафиксироватьТранзакцию(); - Возврат; - КонецЕсли; - НаборЗаписей.Загрузить(ТаблицаЗаписей); - НаборЗаписей.Записать(); - КонецЕсли; - КонецЕсли; - - Если ЗначениеЗаполнено(СписокКритичныхИзменений) Тогда - ЗаписьЖурналаРегистрации(?(ОбъектыРасширений, - НСтр("ru = 'Идентификаторы объектов расширений.Выполнены критичные изменения'", - ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), - НСтр("ru = 'Идентификаторы объектов метаданных.Выполнены критичные изменения'", - ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка())), - УровеньЖурналаРегистрации.Информация, - , - , - СписокКритичныхИзменений, - РежимТранзакцииЗаписиЖурналаРегистрации.Транзакционная); - КонецЕсли; - - Если Не ОбъектыРасширений И ПланыОбмена.ГлавныйУзел() = Неопределено Тогда - ПодготовитьСписокНовыхПодсистемВГлавномУзле(Выгрузка); КонецЕсли; ЗафиксироватьТранзакцию(); @@ -1690,12 +1445,15 @@ | Идентификаторы.ЗначениеПустойСсылки, | Идентификаторы.КлючОбъектаМетаданных КАК ХранилищеКлюча, | Идентификаторы.НоваяСсылка, - | &ИмяРасширения КАК ИмяРасширения + | &ИмяРасширения КАК ИмяРасширения, + | &ХешСуммаРасширения КАК ХешСуммаРасширения |ИЗ | Справочник.ИдентификаторыОбъектовМетаданных КАК Идентификаторы"; УточнитьИмяСправочникаВТекстеЗапроса(Запрос.Текст, ОбъектыРасширений); Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ИмяРасширения", ?(ОбъектыРасширений, "Идентификаторы.ИмяРасширения", """""")); + Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ХешСуммаРасширения", + ?(ОбъектыРасширений, "Идентификаторы.ХешСуммаРасширения", """""")); Выгрузка = Запрос.Выполнить().Выгрузить(); Выгрузка.Колонки.Добавить("КлючОбъектаМетаданных"); @@ -1739,36 +1497,342 @@ КонецФункции -Процедура ПереименоватьПолныеИмена(Выгрузка) +Процедура ПереименоватьПолныеИмена(Выгрузка, СписокПереименованийОбъектовМетаданных = "", ЕстьКритичныеИзменения = Ложь) ТаблицаПереименования = СтандартныеПодсистемыПовтИсп.ТаблицаПереименованияДляТекущейВерсии(); + Переименованные = Новый Соответствие; - Для каждого ОписаниеПереименования Из ТаблицаПереименования Цикл + Для Каждого ОписаниеПереименования Из ТаблицаПереименования Цикл ДлинаСтарогоПолногоИмени = СтрДлина(ОписаниеПереименования.СтароеПолноеИмя); ЭтоПодсистема = ВРег(Лев(ОписаниеПереименования.СтароеПолноеИмя, 11)) = ВРег("Подсистема."); - Для каждого Строка Из Выгрузка Цикл - + Для Каждого Строка Из Выгрузка Цикл Если Строка.ЭтоКоллекция Тогда Продолжить; КонецЕсли; + НовоеПолноеИмя = ""; + Если ЭтоПодсистема Тогда Если ВРег(Лев(Строка.ПолноеИмя, ДлинаСтарогоПолногоИмени)) = ВРег(ОписаниеПереименования.СтароеПолноеИмя) Тогда - Строка.ПолноеИмя = ОписаниеПереименования.НовоеПолноеИмя + НовоеПолноеИмя = ОписаниеПереименования.НовоеПолноеИмя + Сред(Строка.ПолноеИмя, ДлинаСтарогоПолногоИмени + 1); КонецЕсли; Иначе Если ВРег(Строка.ПолноеИмя) = ВРег(ОписаниеПереименования.СтароеПолноеИмя) Тогда - Строка.ПолноеИмя = ОписаниеПереименования.НовоеПолноеИмя; + НовоеПолноеИмя = ОписаниеПереименования.НовоеПолноеИмя; КонецЕсли; КонецЕсли; + Если Не ЗначениеЗаполнено(НовоеПолноеИмя) Тогда + Продолжить; + КонецЕсли; + + Переименование = Переименованные.Получить(Строка); + Если Переименование = Неопределено Тогда + Переименование = Новый Структура; + Переименование.Вставить("СтароеПолноеИмя", Строка.ПолноеИмя); + Переименование.Вставить("НовоеПолноеИмя", НовоеПолноеИмя); + Переименованные.Вставить(Строка, Переименование); + Иначе + Переименование.НовоеПолноеИмя = НовоеПолноеИмя; + КонецЕсли; + Строка.ПолноеИмя = НовоеПолноеИмя; КонецЦикла; КонецЦикла; + Для Каждого Строка Из Выгрузка Цикл + Переименование = Переименованные.Получить(Строка); + Если Переименование = Неопределено Тогда + Продолжить; + КонецЕсли; + + ЕстьКритичныеИзменения = Истина; + СписокПереименованийОбъектовМетаданных = СписокПереименованийОбъектовМетаданных + + ?(ЗначениеЗаполнено(СписокПереименованийОбъектовМетаданных), "," + Символы.ПС, "") + + Переименование.СтароеПолноеИмя + " -> " + Переименование.НовоеПолноеИмя; + КонецЦикла; + +КонецПроцедуры + +Процедура ОбработатьИдентификаторыОбъектовМетаданных(Выгрузка, СвойстваОбъектовМетаданных, ОбъектыРасширений, + СвойстваРасширений, ЕстьУдаленные, ЕстьКритичныеИзменения, СписокПереименованийОбъектовМетаданных) + + // Обработка идентификаторов объектов метаданных. + Для Каждого Свойства Из Выгрузка Цикл + + // Проверка и обновление свойств идентификаторов коллекций объектов метаданных. + Если Свойства.ЭтоКоллекция Тогда + ПроверитьОбновитьСвойстваКоллекции(Свойства, ОбъектыРасширений); + Продолжить; + КонецЕсли; + + Если ОбъектыРасширений + И СвойстваРасширений.ИменаНеподключенныхРасширений[Свойства.ИмяРасширения] <> Неопределено Тогда + // Элементы неподключенных расширений остаются неизменными для возможности + // использования после исправления ошибок в расширениях так, чтобы обработка + // удаления помеченных не удалила связанные данные. + Продолжить; + КонецЕсли; + + Если ОбъектыРасширений + И СвойстваРасширений.ИменаПодключенныхРасширений[Свойства.ИмяРасширения] = Неопределено Тогда + + СвойстваОбновлены = Ложь; + ОбновитьСвойстваПомеченногоНаУдаление(Свойства, СвойстваОбновлены, ЕстьУдаленные); + Если СвойстваОбновлены Тогда + Свойства.Обновлен = Истина; + КонецЕсли; + КонецЕсли; + + КлючОбъектаМетаданных = Свойства.КлючОбъектаМетаданных; + ОбъектМетаданных = ОбъектМетаданныхПоКлючу(КлючОбъектаМетаданных); + + Если ОбъектМетаданных = Неопределено Тогда + // Если объект метаданных без ключа, то его можно найти только по полному имени. + ОбъектМетаданных = МетаданныеНайтиПоПолномуИмени(Свойства.ПолноеИмя); + Если ОбъектМетаданных = Неопределено И ОбъектыРасширений Тогда + ОбъектМетаданных = МетаданныеРасширенияНайтиПоПолномуИмени(Свойства); + КонецЕсли; + Иначе + // Если объект метаданных удалялся с целью реструктуризации, тогда + // старый идентификатор нужно использовать для нового объекта метаданных, + // а для старых объектов метаданных создать новые идентификаторы. + Если ВРег(Лев(ОбъектМетаданных.Имя, СтрДлина("Удалить"))) = ВРег("Удалить") + И ВРег(Лев(Свойства.Имя, СтрДлина("Удалить"))) <> ВРег("Удалить") Тогда + + НовыйОбъектМетаданных = МетаданныеНайтиПоПолномуИмени(Свойства.ПолноеИмя); + Если НовыйОбъектМетаданных <> Неопределено Тогда + ОбъектМетаданных = НовыйОбъектМетаданных; + КлючОбъектаМетаданных = Неопределено; // Чтобы выполнить обновление идентификатора. + КонецЕсли; + КонецЕсли; + КонецЕсли; + + // Если объект метаданных найден по ключу или полному имени, + // тогда нужно подготовить строку свойств объекта метаданных. + Если ОбъектМетаданных <> Неопределено Тогда + СвойстваОбъекта = СвойстваОбъектовМетаданных.Найти(ОбъектМетаданных.ПолноеИмя(), "ПолноеИмя"); + Если СвойстваОбъекта = Неопределено Тогда + ОбъектМетаданных = Неопределено; + Иначе + Свойства.ОбъектМетаданных = ОбъектМетаданных; + КонецЕсли; + КонецЕсли; + + Если ОбъектМетаданных = Неопределено ИЛИ СвойстваОбъекта.Найден Тогда + // Если объект метаданных не найден или найден повторно + // тогда идентификатор требуется пометить на удаление. + СвойстваОбновлены = Ложь; + ОбновитьСвойстваПомеченногоНаУдаление(Свойства, СвойстваОбновлены, ЕстьУдаленные); + Если СвойстваОбновлены Тогда + Свойства.Обновлен = Истина; + КонецЕсли; + Иначе + // Обновление свойств существующих объектов метаданных, если изменились. + СвойстваОбъекта.Найден = Истина; + Если Свойства.Наименование <> СвойстваОбъекта.Наименование + ИЛИ Свойства.ПорядокКоллекции <> СвойстваОбъекта.ПорядокКоллекции + ИЛИ Свойства.Имя <> СвойстваОбъекта.Имя + ИЛИ Свойства.Синоним <> СвойстваОбъекта.Синоним + ИЛИ Свойства.ПолноеИмя <> СвойстваОбъекта.ПолноеИмя + ИЛИ Свойства.ПолныйСиноним <> СвойстваОбъекта.ПолныйСиноним + ИЛИ Свойства.БезДанных <> СвойстваОбъекта.БезДанных + ИЛИ Свойства.ЗначениеПустойСсылки <> СвойстваОбъекта.ЗначениеПустойСсылки + ИЛИ Свойства.ИмяРасширения <> СвойстваОбъекта.ИмяРасширения + ИЛИ Свойства.ХешСуммаРасширения <> СвойстваОбъекта.ХешСуммаРасширения + ИЛИ Свойства.ИмяПредопределенныхДанных <> "" + ИЛИ Свойства.ПометкаУдаления + ИЛИ КлючОбъектаМетаданных = Неопределено + ИЛИ СвойстваОбъекта.БезКлючаОбъектаМетаданных + И КлючОбъектаМетаданных <> Тип("Неопределено") Тогда + + Если ВРег(Свойства.ПолноеИмя) <> ВРег(СвойстваОбъекта.ПолноеИмя) Тогда + ЕстьКритичныеИзменения = Истина; + СписокПереименованийОбъектовМетаданных = СписокПереименованийОбъектовМетаданных + + ?(ЗначениеЗаполнено(СписокПереименованийОбъектовМетаданных), "," + Символы.ПС, "") + + Свойства.ПолноеИмя + " -> " + СвойстваОбъекта.ПолноеИмя; + КонецЕсли; + + // Установка новых свойств идентификатора объекта метаданных. + ЗаполнитьЗначенияСвойств(Свойства, СвойстваОбъекта); + + Свойства.ИмяПредопределенныхДанных = ""; + + Если КлючОбъектаМетаданных = Неопределено + ИЛИ СвойстваОбъекта.БезКлючаОбъектаМетаданных + И КлючОбъектаМетаданных <> Тип("Неопределено") Тогда + + Свойства.КлючОбъектаМетаданных = КлючОбъектаМетаданных(СвойстваОбъекта.ПолноеИмя); + КонецЕсли; + + Свойства.ПометкаУдаления = Ложь; + Свойства.Обновлен = Истина; + КонецЕсли; + КонецЕсли; + КонецЦикла; + +КонецПроцедуры + +Функция МетаданныеРасширенияНайтиПоПолномуИмени(Свойства) + + Если Свойства.ИмяРасширения = "" + Или Не СтрНачинаетсяС(Свойства.ПолноеИмя, "?") Тогда + Возврат Неопределено; + КонецЕсли; + + // Восстановление связи с идентификатором объекта метаданных расширения, + // которое было временно удалено и восстанавливается. + ПозицияСкобки = СтрНайти(Свойства.ПолноеИмя, "("); + ИсходноеПолноеИмя = Сред(Свойства.ПолноеИмя, 3, ПозицияСкобки - 4); + ОбъектМетаданных = МетаданныеНайтиПоПолномуИмени(ИсходноеПолноеИмя); + + Если ОбъектМетаданных = Неопределено Тогда + Возврат Неопределено; + КонецЕсли; + + РасширениеОбъекта = ОбъектМетаданных.РасширениеКонфигурации(); + + Если РасширениеОбъекта = Неопределено + Или РасширениеОбъекта.Имя <> Сред(Свойства.ИмяРасширения, 3) + Или Base64Строка(РасширениеОбъекта.ХешСумма) <> Сред(Свойства.ХешСуммаРасширения, 3) Тогда + + Возврат Неопределено; + КонецЕсли; + + Возврат ОбъектМетаданных; + +КонецФункции + +Процедура ДобавитьИдентификаторыНовыхОбъектовМетаданных(Выгрузка, СвойстваОбъектовМетаданных, ОбъектыРасширений, + ЕстьКритичныеИзменения, СписокНовыхОбъектовМетаданных) + + СвойстваОбъектов = СвойстваОбъектовМетаданных.НайтиСтроки(Новый Структура("Найден", Ложь)); + + Для Каждого СвойстваОбъекта Из СвойстваОбъектов Цикл + Свойства = Выгрузка.Добавить(); + ЗаполнитьЗначенияСвойств(Свойства, СвойстваОбъекта); + Свойства.ЭтоНовый = Истина; + Свойства.Ссылка = НоваяСсылкаСправочника(ОбъектыРасширений); + Свойства.ПометкаУдаления = Ложь; + Свойства.ОбъектМетаданных = СвойстваОбъекта.ОбъектМетаданных; + Свойства.КлючОбъектаМетаданных = КлючОбъектаМетаданных(Свойства.ПолноеИмя); + ЕстьКритичныеИзменения = Истина; + СписокНовыхОбъектовМетаданных = СписокНовыхОбъектовМетаданных + + ?(ЗначениеЗаполнено(СписокНовыхОбъектовМетаданных), "," + Символы.ПС, "") + + СвойстваОбъекта.ПолноеИмя; + КонецЦикла; + +КонецПроцедуры + +Процедура ОбновитьИдентификаторыОбъектовМетаданных(Выгрузка, СвойстваОбъектовМетаданных, ОбъектыРасширений, + СвойстваРасширений, ВерсияРасширений, ЕстьИзменения, ТолькоПроверка) + + Если ОбъектыРасширений Тогда + НаборЗаписей = РегистрыСведений.ИдентификаторыОбъектовВерсийРасширений.СоздатьНаборЗаписей(); + НаборЗаписей.Отбор.ВерсияРасширений.Установить(ВерсияРасширений); + НаборЗаписей.Прочитать(); + ТаблицаЗаписей = НаборЗаписей.Выгрузить(); + ТаблицаЗаписей.Колонки.Добавить("Удалить", Новый ОписаниеТипов("Булево")); + ТаблицаЗаписей.ЗаполнитьЗначения(Истина, "Удалить"); + ТаблицаЗаписей.Индексы.Добавить("Идентификатор, ПолноеИмяОбъекта, ВерсияРасширений"); + ОбновитьНаборЗаписей = Ложь; + КонецЕсли; + + Для Каждого Свойства Из Выгрузка Цикл + + // Обновление родителей идентификаторов объектов метаданных. + Если Не Свойства.ЭтоКоллекция Тогда + СвойстваОбъекта = СвойстваОбъектовМетаданных.Найти(Свойства.ПолноеИмя, "ПолноеИмя"); + НовыйРодитель = ПустаяСсылкаСправочника(ОбъектыРасширений); + + Если СвойстваОбъекта <> Неопределено Тогда + Если Не ЗначениеЗаполнено(СвойстваОбъекта.ПолноеИмяРодителя) Тогда + // Коллекция объектов метаданных. + НовыйРодитель = СвойстваОбъекта.Родитель; + Иначе + // Не коллекция объектов метаданных, например, подсистема. + ОписаниеРодителя = Выгрузка.Найти(СвойстваОбъекта.ПолноеИмяРодителя, "ПолноеИмя"); + Если ОписаниеРодителя <> Неопределено Тогда + НовыйРодитель = ОписаниеРодителя.Ссылка; + КонецЕсли; + КонецЕсли; + КонецЕсли; + + Если Свойства.Родитель <> НовыйРодитель Тогда + Свойства.Родитель = НовыйРодитель; + Свойства.Обновлен = Истина; + КонецЕсли; + + Если ОбъектыРасширений + И Свойства.ПометкаУдаления = Ложь + И СвойстваРасширений.ИменаНеподключенныхРасширений[Свойства.ИмяРасширения] = Неопределено Тогда + + Отбор = Новый Структура; + Отбор.Вставить("ВерсияРасширений", ВерсияРасширений); + Отбор.Вставить("Идентификатор", Свойства.Ссылка); + Отбор.Вставить("ПолноеИмяОбъекта", Свойства.ПолноеИмя); + Строки = ТаблицаЗаписей.НайтиСтроки(Отбор); + Если Строки.Количество() = 0 Тогда + ОбновитьНаборЗаписей = Истина; + ЗаполнитьЗначенияСвойств(ТаблицаЗаписей.Добавить(), Отбор); + Иначе + Строки[0].Удалить = Ложь; + КонецЕсли; + КонецЕсли; + КонецЕсли; + + // Обновление идентификаторов объектов метаданных. + Если Свойства.ЭтоНовый Тогда + ТаблицаОбъект = СоздатьЭлементСправочника(ОбъектыРасширений); + ТаблицаОбъект.УстановитьСсылкуНового(Свойства.Ссылка); + + ИначеЕсли Свойства.Обновлен Тогда + ТаблицаОбъект = Свойства.Ссылка.ПолучитьОбъект(); + Иначе + Продолжить; + КонецЕсли; + + ЕстьИзменения = Истина; + Если ТолькоПроверка Тогда + Возврат; + КонецЕсли; + + ЗаполнитьЗначенияСвойств(ТаблицаОбъект, Свойства); + ТаблицаОбъект.КлючОбъектаМетаданных = Новый ХранилищеЗначения(Свойства.КлючОбъектаМетаданных); + ТаблицаОбъект.ОбменДанными.Загрузка = Истина; + ПроверитьОбъектПередЗаписью(ТаблицаОбъект, Истина); + ТаблицаОбъект.Записать(); + КонецЦикла; + + Если ОбъектыРасширений Тогда + ТаблицаЗаписей.Индексы.Добавить("Удалить"); + Строки = ТаблицаЗаписей.НайтиСтроки(Новый Структура("Удалить", Истина)); + Если Строки.Количество() > 0 Тогда + ОбновитьНаборЗаписей = Истина; + Для Каждого Строка Из Строки Цикл + ТаблицаЗаписей.Удалить(Строка); + КонецЦикла; + КонецЕсли; + Если ТаблицаЗаписей.Количество() = 0 + И ЗначениеЗаполнено(ВерсияРасширений) Тогда + // Добавление записи, если в расширении нет объектов метаданных, + // чтобы при проверке наличия кэша, получить значение Истина. + ТаблицаЗаписей.Добавить().ВерсияРасширений = ВерсияРасширений; + ОбновитьНаборЗаписей = Истина; + КонецЕсли; + Если ОбновитьНаборЗаписей Тогда + ЕстьИзменения = Истина; + Если ТолькоПроверка Тогда + Возврат; + КонецЕсли; + НаборЗаписей.Загрузить(ТаблицаЗаписей); + НаборЗаписей.Записать(); + КонецЕсли; + КонецЕсли; + КонецПроцедуры Процедура ОбновитьСвойстваПомеченногоНаУдаление(Свойства, СвойстваОбновлены = Ложь, ЕстьУдаленные = Ложь) @@ -1788,8 +1852,8 @@ ИЛИ Лев(Свойства.Синоним, 1) <> "?" ИЛИ Лев(Свойства.ПолноеИмя, 1) <> "?" ИЛИ Лев(Свойства.ПолныйСиноним, 1) <> "?" - ИЛИ ОбъектыРасширений - И Лев(Свойства.ИмяРасширения, 1) <> "?" + ИЛИ ОбъектыРасширений И Лев(Свойства.ИмяРасширения, 1) <> "?" + ИЛИ ОбъектыРасширений И Лев(Свойства.ХешСуммаРасширения, 1) <> "?" ИЛИ СтрНайти(Свойства.ПолноеИмя, "(") = 0 ИЛИ Свойства.ЗначениеПустойСсылки <> Неопределено ИЛИ КлючОбъектаМетаданных <> Неопределено Тогда @@ -1809,7 +1873,8 @@ Свойства.ЗначениеПустойСсылки = Неопределено; Если ОбъектыРасширений Тогда - Свойства.ИмяРасширения = ВставитьЗнакВопроса(Свойства.ИмяРасширения); + Свойства.ИмяРасширения = ВставитьЗнакВопроса(Свойства.ИмяРасширения); + Свойства.ХешСуммаРасширения = ВставитьЗнакВопроса(Свойства.ХешСуммаРасширения); КонецЕсли; Если ТипЗнч(Свойства.КлючОбъектаМетаданных) = Тип("ХранилищеЗначения") Тогда @@ -2002,7 +2067,7 @@ КонецФункции -Функция СвойстваОбъектовМетаданных(ОбъектыРасширений, ИменаОбъектовРасширений, СвойстваКоллекций = Неопределено) +Функция СвойстваОбъектовМетаданных(ОбъектыРасширений, СвойстваКоллекций = Неопределено) МассивТиповРодителя = Новый Массив; МассивТиповРодителя.Добавить(ТипЗнч(ПустаяСсылкаСправочника(ОбъектыРасширений))); @@ -2019,6 +2084,7 @@ СвойстваОбъектовМетаданных.Колонки.Добавить("БезДанных", Новый ОписаниеТипов("Булево")); СвойстваОбъектовМетаданных.Колонки.Добавить("БезКлючаОбъектаМетаданных", Новый ОписаниеТипов("Булево")); СвойстваОбъектовМетаданных.Колонки.Добавить("ИмяРасширения", Новый ОписаниеТипов("Строка",, Новый КвалификаторыСтроки(128))); + СвойстваОбъектовМетаданных.Колонки.Добавить("ХешСуммаРасширения", Новый ОписаниеТипов("Строка",, Новый КвалификаторыСтроки(30))); СвойстваОбъектовМетаданных.Колонки.Добавить("ЗначениеПустойСсылки"); СвойстваОбъектовМетаданных.Колонки.Добавить("ОбъектМетаданных"); @@ -2026,9 +2092,13 @@ СвойстваКоллекций = СтандартныеПодсистемыПовтИсп.СвойстваКоллекцийОбъектовМетаданных(ОбъектыРасширений); КонецЕсли; + Если ОбъектыРасширений И Не ЗначениеЗаполнено(ПараметрыСеанса.ПодключенныеРасширения) Тогда + Возврат СвойстваОбъектовМетаданных; + КонецЕсли; + Для каждого СвойстваКоллекции Из СвойстваКоллекций Цикл ДобавитьСвойстваОбъектовМетаданных(Метаданные[СвойстваКоллекции.Имя], СвойстваКоллекции, - СвойстваОбъектовМетаданных, ОбъектыРасширений, ИменаОбъектовРасширений); + СвойстваОбъектовМетаданных, ОбъектыРасширений); КонецЦикла; СвойстваОбъектовМетаданных.Индексы.Добавить("ПолноеИмя"); @@ -2041,19 +2111,17 @@ Знач СвойстваКоллекции, Знач СвойстваОбъектовМетаданных, Знач ОбъектыРасширений, - Знач ИменаОбъектовРасширений, Знач ПолноеИмяРодителя = "", Знач ПолныйСинонимРодителя = "") Для каждого ОбъектМетаданных Из КоллекцияОбъектовМетаданных Цикл ПолноеИмя = ОбъектМетаданных.ПолноеИмя(); - Если ИменаОбъектовРасширений <> Неопределено Тогда - Строка = ИменаОбъектовРасширений.Найти(ПолноеИмя, "ПолноеИмя"); - ИмяРасширения = ?(Строка = Неопределено, Неопределено, Строка.ИмяРасширения); - Если ЗначениеЗаполнено(ИмяРасширения) <> ОбъектыРасширений Тогда - Продолжить; - КонецЕсли; + Расширение = ОбъектМетаданных.РасширениеКонфигурации(); + ИмяРасширения = ?(Расширение = Неопределено, "", Расширение.Имя); + ХешСуммаРасширения = ?(Расширение = Неопределено, "", Base64Строка(Расширение.ХешСумма)); + Если ЗначениеЗаполнено(ИмяРасширения) <> ОбъектыРасширений Тогда + Продолжить; КонецЕсли; Если СтрНайти(СвойстваКоллекции.ИмяВЕдЧисле, "Подсистема") <> 0 Тогда @@ -2064,7 +2132,9 @@ И СтрНайти(СвойстваКоллекции.ИмяВЕдЧисле, "Регистр") = 0 И СтрНайти(СвойстваКоллекции.ИмяВЕдЧисле, "Константа") = 0 Тогда - ЗначениеПустойСсылки = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ПолноеИмя).ПустаяСсылка(); + ИмяТипаСсылки = СвойстваКоллекции.ИмяВЕдЧисле + "Ссылка." + ОбъектМетаданных.Имя; + ОписаниеТипа = Новый ОписаниеТипов(ИмяТипаСсылки); + ЗначениеПустойСсылки = ОписаниеТипа.ПривестиЗначение(Неопределено); Иначе ЗначениеПустойСсылки = Неопределено; КонецЕсли; @@ -2085,10 +2155,8 @@ НоваяСтрока.ЗначениеПустойСсылки = ЗначениеПустойСсылки; НоваяСтрока.ОбъектМетаданных = ОбъектМетаданных; - - Если ИменаОбъектовРасширений <> Неопределено И ОбъектыРасширений Тогда - НоваяСтрока.ИмяРасширения = ИмяРасширения; - КонецЕсли; + НоваяСтрока.ИмяРасширения = ИмяРасширения; + НоваяСтрока.ХешСуммаРасширения = ХешСуммаРасширения; Если СвойстваКоллекции.Имя = "Подсистемы" Тогда ДобавитьСвойстваОбъектовМетаданных( @@ -2096,7 +2164,6 @@ СвойстваКоллекции, СвойстваОбъектовМетаданных, ОбъектыРасширений, - ИменаОбъектовРасширений, ПолноеИмя, НоваяСтрока.ПолныйСиноним + ". "); КонецЕсли; @@ -2561,229 +2628,20 @@ КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// Процедуры и функции для определения принадлежности объекта метаданных расширению. - -// Возвращает таблицу, по которой можно получить полные имена -// объектов метаданных расширений. -// -// Возвращаемое значение: -// ТаблицаЗначений - с колонками: -// * ПолноеИмя - Строка - полное имя объекта метаданных. -// * Расширение - Строка - имя расширения. -// -Функция СвойстваРасширений() +// Для процедуры ОбновитьДанные. +Функция ИменаРасширений(ИсточникРасширений) - УстановитьПривилегированныйРежим(Истина); + ИменаРасширений = Новый Соответствие; + Расширения = РасширенияКонфигурации.Получить(, ИсточникРасширений); - ИменаОбъектов = Новый ТаблицаЗначений; - ИменаОбъектов.Колонки.Добавить("ПолноеИмя", Новый ОписаниеТипов("Строка")); - ИменаОбъектов.Колонки.Добавить("ИмяРасширения", Новый ОписаниеТипов("Строка")); - ИменаОбъектов.Индексы.Добавить("ПолноеИмя"); - - ИменаПодключенныхРасширений = Новый Соответствие; - ИменаНеподключенныхРасширений = Новый Соответствие; - - СвойстваРасширений = Новый Структура; - СвойстваРасширений.Вставить("ИменаОбъектов", ИменаОбъектов); - СвойстваРасширений.Вставить("ИменаПодключенныхРасширений", ИменаПодключенныхРасширений); - СвойстваРасширений.Вставить("ИменаНеподключенныхРасширений", ИменаНеподключенныхРасширений); - - Расширения = РасширенияКонфигурации.Получить(); - Если Не ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения) Тогда - Возврат СвойстваРасширений; - КонецЕсли; - - ПроверитьВозможностьЗапускаФоновогоЗадания(); - - ИменаОбъектовКонфигурации = ИменаОбъектовУстановленныхРасширений(0); - Если ИменаОбъектовКонфигурации = Неопределено Тогда - Возврат Неопределено; - КонецЕсли; - ИменаОбъектовКонфигурации.Индексы.Добавить("ПолноеИмя"); - - Для КоличествоУстановленных = 1 По Расширения.Количество() Цикл - ПоследнееРасширение = Расширения[КоличествоУстановленных-1]; - - ИменаОбъектовРасширений = ИменаОбъектовУстановленныхРасширений(КоличествоУстановленных); - Если ИменаОбъектовРасширений = Неопределено Тогда - Возврат Неопределено; - КонецЕсли; - - Подключено = Ложь; - Для Каждого Строка Из ИменаОбъектовРасширений Цикл - - Если ИменаОбъектовКонфигурации.Найти(Строка.ПолноеИмя, "ПолноеИмя") = Неопределено - И ИменаОбъектов.Найти(Строка.ПолноеИмя, "ПолноеИмя") = Неопределено Тогда - - НоваяСтрока = ИменаОбъектов.Добавить(); - НоваяСтрока.ПолноеИмя = Строка.ПолноеИмя; - НоваяСтрока.ИмяРасширения = ПоследнееРасширение.Имя; - Подключено = Истина; - КонецЕсли; - КонецЦикла; - Если Подключено Тогда - ИменаПодключенныхРасширений.Вставить(ПоследнееРасширение.Имя, Истина); - Иначе - ИменаНеподключенныхРасширений.Вставить(ПоследнееРасширение.Имя, Истина); - КонецЕсли; + Для Каждого Расширение Из Расширения Цикл + ИменаРасширений.Вставить(Расширение.Имя, Истина); КонецЦикла; - Возврат СвойстваРасширений; + Возврат ИменаРасширений; КонецФункции -// Для функции СвойстваРасширений. -Функция ИменаОбъектовУстановленныхРасширений(КоличествоУстановленных) - - ИдентификаторАдреса = Новый УникальныйИдентификатор; - АдресВременногоХранилища = ПоместитьВоВременноеХранилище(Неопределено, ИдентификаторАдреса); - - Параметры = Новый Массив; - Параметры.Добавить(АдресВременногоХранилища); - - КонтрольныеСуммы = СтандартныеПодсистемыСервер.КонтрольныеСуммыРасширений(); - Если ПараметрыСеанса.УстановленныеРасширения <> КонтрольныеСуммы Тогда - Возврат Неопределено; - КонецЕсли; - - УдаленныеРасширения = УдаленныеРасширения(КоличествоУстановленных); - Попытка - ФоновоеЗадание = ФоновыеЗадания.Выполнить( - "СтандартныеПодсистемыСервер.ЗаполнитьИменаОбъектовМетаданныхФоновоеЗадание", - Параметры); - - Попытка - ФоновоеЗадание.ОжидатьЗавершения(); - Исключение - ИнформацияОбОшибке = ФоновоеЗадание.ИнформацияОбОшибке; - КонецПопытки; - Отбор = Новый Структура("УникальныйИдентификатор", ФоновоеЗадание.УникальныйИдентификатор); - ФоновоеЗадание = ФоновыеЗадания.ПолучитьФоновыеЗадания(Отбор)[0]; - Если ИнформацияОбОшибке <> Неопределено Тогда - ИнформацияОбОшибке = ФоновоеЗадание.ИнформацияОбОшибке; - КонецЕсли; - Исключение - ВосстановитьРасширения(УдаленныеРасширения); - ВызватьИсключение; - КонецПопытки; - ВосстановитьРасширения(УдаленныеРасширения); - - КонтрольныеСуммы = СтандартныеПодсистемыСервер.КонтрольныеСуммыРасширений(); - Если ПараметрыСеанса.УстановленныеРасширения <> КонтрольныеСуммы Тогда - Возврат Неопределено; - КонецЕсли; - - Если ИнформацияОбОшибке <> Неопределено Тогда - ВызватьИсключение ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); - КонецЕсли; - - Возврат ПолучитьИзВременногоХранилища(АдресВременногоХранилища); - -КонецФункции - -// Для функции СвойстваРасширений. -// Заполняет объекты метаданных подключенных расширений. -// -Процедура ЗаполнитьИменаОбъектовМетаданныхФоновоеЗадание(АдресВременногоХранилища) Экспорт - - Таблица = Новый ТаблицаЗначений; - Таблица.Колонки.Добавить("ПолноеИмя", Новый ОписаниеТипов("Строка")); - - СвойстваКоллекцийРасширений = СвойстваКоллекцийОбъектовМетаданных(Истина); - - Для Каждого СвойстваКоллекции Из СвойстваКоллекцийРасширений Цикл - Для Каждого ОбъектМетаданных Из Метаданные[СвойстваКоллекции.Имя] Цикл - Таблица.Добавить().ПолноеИмя = ОбъектМетаданных.ПолноеИмя(); - КонецЦикла; - КонецЦикла; - - ПоместитьВоВременноеХранилище(Таблица, АдресВременногоХранилища); - -КонецПроцедуры - -// Для функции СвойстваРасширений. -// -// Вызывает исключение, если выполнение происходит в фоновом задании файловой ИБ, -// при котором запуск второго фонового задания невозможен. -// -Процедура ПроверитьВозможностьЗапускаФоновогоЗадания() - - Если Не ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда - Возврат; - КонецЕсли; - - Если ТекущийРежимЗапуска() <> Неопределено Тогда - Возврат; - КонецЕсли; - - Сеансы = ПолучитьСеансыИнформационнойБазы(); - Для Каждого Сеанс Из Сеансы Цикл - Если Сеанс.НомерСеанса = НомерСеансаИнформационнойБазы() Тогда - Если Сеанс.ИмяПриложения = "BackgroundJob" Тогда - ТекстОшибки = НСтр("ru = 'Невозможно запустить второе фоновое задание в файловой ИБ.'"); - ВызватьИсключение ТекстОшибки; - КонецЕсли; - Если Сеанс.ИмяПриложения = "COMConnection" Тогда - ТекстОшибки = НСтр("ru = 'Невозможно запустить фоновое задание во внешнем соединении с файловой ИБ.'"); - ВызватьИсключение ТекстОшибки; - КонецЕсли; - КонецЕсли; - КонецЦикла; - -КонецПроцедуры - -// Для функции СвойстваРасширений. -Функция УдаленныеРасширения(КоличествоУстановленных = 0) - - УдаленныеРасширения = Новый Структура; - - ВсеРасширения = РасширенияКонфигурации.Получить(); - Расширения = Новый Массив; - ДанныеРасширений = Новый Массив; - Индекс = ВсеРасширения.Количество()-1; - - НачатьТранзакцию(); - Попытка - Пока Индекс >= КоличествоУстановленных Цикл - Расширение = ВсеРасширения[Индекс]; - Расширения.Вставить(0, Расширение); - ДанныеРасширений.Вставить(0, Расширение.ПолучитьДанные()); - Попытка - Расширение.Удалить(); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'При выполнении операции над расширением ""%1"" возникла ошибка: - |%2 - | - |Убедитесь, что все расширения закрыты в конфигураторе.'"), - Расширение.Имя, - КраткоеПредставлениеОшибки(ИнформацияОбОшибке)); - ВызватьИсключение ТекстОшибки; - КонецПопытки; - Индекс = Индекс - 1; - КонецЦикла; - ЗафиксироватьТранзакцию(); - Исключение - ОтменитьТранзакцию(); - ВызватьИсключение; - КонецПопытки; - - Возврат Новый Структура("Расширения, ДанныеРасширений", Расширения, ДанныеРасширений); - -КонецФункции - -// Для функции СвойстваРасширений. -Процедура ВосстановитьРасширения(Удаленные) - - Для Каждого Расширение Из Удаленные.Расширения Цикл - Индекс = Удаленные.Расширения.Найти(Расширение); - Расширение.Записать(Удаленные.ДанныеРасширений[Индекс]); - КонецЦикла; - -КонецПроцедуры - //////////////////////////////////////////////////////////////////////////////// // Процедуры и функции замены идентификатора в базе данных. @@ -2882,12 +2740,12 @@ // Функция из универсальной обработки ПоискИЗаменаЗначений. // Изменения: -// - удалена работа с формой прогрессора -// - удалена процедура ОбработкаПрерыванияПользователя() -// - заменено РегистрыСведений[СтрокаТаблицы.Метаданные.Имя] на. -// ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(СтрокаТаблицы.Метаданные.ПолноеИмя()). +// - удалена работа с формой прогрессора; +// - удалена процедура ОбработкаПрерыванияПользователя; +// - заменено "РегистрыСведений[СтрокаТаблицы.Метаданные.Имя]" на +// "ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(СтрокаТаблицы.Метаданные.ПолноеИмя())". // -Функция ВыполнитьЗаменуЭлементов(Знач Заменяемые, Знач ТаблицаСсылок, Знач ОтключатьКонтрольЗаписи = Ложь, Знач ВыполнятьВТранзакции = Ложь, Знач ОбъектыРасширений = Ложь) +Функция ВыполнитьЗаменуЭлементов(Знач Заменяемые, Знач ТаблицаСсылок, Знач ОтключатьКонтрольЗаписи = Ложь, Знач ОбъектыРасширений = Ложь) Параметры = Новый Структура; @@ -2901,10 +2759,6 @@ ОбрабатываемаяСсылка = Неопределено; БылиИсключения = Ложь; - Если ВыполнятьВТранзакции Тогда - НачатьТранзакцию(); - КонецЕсли; - Попытка Для Каждого СтрокаТаблицы Из ТаблицаСсылок Цикл Если Не СтрокаТаблицы.Включено Тогда @@ -2933,7 +2787,7 @@ |%2'"), ПолучитьНавигационнуюСсылку(Параметры.Объект.Ссылка), ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); - Если ВыполнятьВТранзакции Тогда + Если ТранзакцияАктивна() Тогда ВызватьИсключение ТекстОшибки; КонецЕсли; СообщитьОбОшибке(ТекстОшибки, ОбъектыРасширений); @@ -3103,7 +2957,7 @@ ПолучитьНавигационнуюСсылку(Параметры.Объект.Ссылка), НаборЗаписей.Метаданные().ПолноеИмя(), ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); - Если ВыполнятьВТранзакции Тогда + Если ТранзакцияАктивна() Тогда ВызватьИсключение ТекстОшибки; КонецЕсли; СообщитьОбОшибке(ТекстОшибки, ОбъектыРасширений); @@ -3142,7 +2996,7 @@ ПолучитьНавигационнуюСсылку(СтрокаТаблицы.Данные), НаборЗаписи.Метаданные().ПолноеИмя(), ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); - Если ВыполнятьВТранзакции Тогда + Если ТранзакцияАктивна() Тогда ВызватьИсключение ТекстОшибки; КонецЕсли; СообщитьОбОшибке(ТекстОшибки, ОбъектыРасширений); @@ -3238,11 +3092,8 @@ ТаблицаНабора = НаборЗаписей.Выгрузить(); НаборЗаписей.Очистить(); - Если Не ВыполнятьВТранзакции Тогда - НачатьТранзакцию(); - КонецЕсли; - ТекстОшибки = ""; + НачатьТранзакцию(); Попытка Попытка Если ОтключатьКонтрольЗаписи Тогда @@ -3290,19 +3141,14 @@ ВызватьИсключение; КонецПопытки; - Если Не ВыполнятьВТранзакции Тогда - ЗафиксироватьТранзакцию(); - КонецЕсли; - + ЗафиксироватьТранзакцию(); Исключение + ОтменитьТранзакцию(); БылиИсключения = Истина; - Если Не ВыполнятьВТранзакции Тогда - ОтменитьТранзакцию(); - КонецЕсли; Если Не ЗначениеЗаполнено(ТекстОшибки) Тогда ВызватьИсключение; КонецЕсли; - Если ВыполнятьВТранзакции Тогда + Если ТранзакцияАктивна() Тогда ВызватьИсключение ТекстОшибки; КонецЕсли; СообщитьОбОшибке(ТекстОшибки, ОбъектыРасширений); @@ -3329,21 +3175,15 @@ |%2'"), ПолучитьНавигационнуюСсылку(Параметры.Объект.Ссылка), ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); - Если ВыполнятьВТранзакции Тогда + Если ТранзакцияАктивна() Тогда ВызватьИсключение ТекстОшибки; КонецЕсли; СообщитьОбОшибке(ТекстОшибки, ОбъектыРасширений); КонецПопытки; КонецЕсли; - Если ВыполнятьВТранзакции Тогда - ЗафиксироватьТранзакцию(); - КонецЕсли; Исключение БылиИсключения = Истина; - Если ВыполнятьВТранзакции Тогда - ОтменитьТранзакцию(); - КонецЕсли; ВызватьИсключение; КонецПопытки; diff --git a/SSL/src/Catalogs/ИдентификаторыОбъектовРасширений/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ИдентификаторыОбъектовРасширений/Forms/ФормаСписка/Form.form index f9c61e5fc..6280f9df6 100644 --- a/SSL/src/Catalogs/ИдентификаторыОбъектовРасширений/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/ИдентификаторыОбъектовРасширений/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 22 @@ -37,6 +36,32 @@ КоманднаяПанель 23 + + ФормаВыбрать + 72 + true + true + + true + + + ФормаВыбратьРасширеннаяПодсказка + 73 + Label + true + true + + Left + + + Form.StandardCommand.Choose + Auto + true + true + true + UserCmds + Auto + ФормаИзменить 34 @@ -684,6 +709,7 @@ true true true + true MultiRow 1 1 @@ -725,8 +751,6 @@ OnCreateAtServer ПриСозданииНаСервере - 50 - 10 DontBlock true true @@ -749,6 +773,9 @@ true + + Список.DeletionMark + Список.Description diff --git a/SSL/src/Catalogs/ИдентификаторыОбъектовРасширений/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ИдентификаторыОбъектовРасширений/Forms/ФормаЭлемента/Form.form index 2d94798bb..bbb19a72c 100644 --- a/SSL/src/Catalogs/ИдентификаторыОбъектовРасширений/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ИдентификаторыОбъектовРасширений/Forms/ФормаЭлемента/Form.form @@ -34,8 +34,9 @@ Left true - true + 60 true + false true true true @@ -73,8 +74,9 @@ Left true - true + 60 true + false true true true @@ -119,8 +121,9 @@ Left true - true + 60 true + false true true true @@ -162,8 +165,9 @@ Left true - true + 60 true + false true true true @@ -198,11 +202,9 @@ Vertical Auto - WeakSeparation + NormalSeparation true true - auto - Auto Auto @@ -245,8 +247,9 @@ Left true - true + 60 true + false true true true @@ -292,8 +295,9 @@ Left true - true + 60 true + false true true true @@ -328,10 +332,9 @@ Vertical Auto - WeakSeparation + NormalSeparation true true - auto Auto Auto @@ -510,13 +513,8 @@ <key>ru</key> - <value>Прочие свойства</value> + <value>Прочее</value> - - ru - Прочие свойства - - true ПрочиеСвойстваExtendedTooltip 40 @@ -531,7 +529,7 @@ Vertical Auto - WeakSeparation + NormalSeparation true true auto @@ -758,7 +756,6 @@ ПриСозданииНаСервере Copy - 80 LockOwner true true diff --git a/SSL/src/Catalogs/ИдентификаторыОбъектовРасширений/ИдентификаторыОбъектовРасширений.mdo b/SSL/src/Catalogs/ИдентификаторыОбъектовРасширений/ИдентификаторыОбъектовРасширений.mdo index 56acdadf4..f97f15223 100644 --- a/SSL/src/Catalogs/ИдентификаторыОбъектовРасширений/ИдентификаторыОбъектовРасширений.mdo +++ b/SSL/src/Catalogs/ИдентификаторыОбъектовРасширений/ИдентификаторыОбъектовРасширений.mdo @@ -366,6 +366,24 @@ Use Use + + ХешСуммаРасширения + + ru + Хеш сумма расширения + + + String + + 30 + + + + + + Use + Use + ФормаСписка diff --git a/SSL/src/Catalogs/Календари/Forms/РасписаниеРаботы/Form.form b/SSL/src/Catalogs/Календари/Forms/РасписаниеРаботы/Form.form index 9128eb407..b60330d5f 100644 --- a/SSL/src/Catalogs/Календари/Forms/РасписаниеРаботы/Form.form +++ b/SSL/src/Catalogs/Календари/Forms/РасписаниеРаботы/Form.form @@ -15,6 +15,10 @@ РасписаниеРаботыВремяНачала 6 + + <key>ru</key> + <value>Начало</value> + true true @@ -44,6 +48,7 @@ Left true + 10 true true true @@ -64,6 +69,10 @@ РасписаниеРаботыВремяОкончания 8 + + <key>ru</key> + <value>Окончание</value> + true true @@ -207,6 +216,7 @@ true true + 1 true true true diff --git a/SSL/src/Catalogs/Календари/Forms/РасписаниеРаботы/Module.bsl b/SSL/src/Catalogs/Календари/Forms/РасписаниеРаботы/Module.bsl index 4032a9946..3fcdc5d62 100644 --- a/SSL/src/Catalogs/Календари/Forms/РасписаниеРаботы/Module.bsl +++ b/SSL/src/Catalogs/Календари/Forms/РасписаниеРаботы/Module.bsl @@ -18,10 +18,25 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Оповещение = Новый ОписаниеОповещения("ВыбратьИЗакрыть", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы); + +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы + +&НаКлиенте +Процедура РасписаниеРаботыПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования) + + Если ОтменаРедактирования Тогда + Возврат; + КонецЕсли; + + ГрафикиРаботыКлиентСервер.ВосстановитьПорядокСтрокКоллекцииПослеРедактирования(РасписаниеРаботы, "ВремяНачала", Элемент.ТекущиеДанные); КонецПроцедуры @@ -44,20 +59,6 @@ КонецПроцедуры -/////////////////////////////////////////////////////////////////////////////// -// ОБРАБОТЧИКИ СОБЫТИЙ ЭЛЕМЕНТОВ ФОРМЫ - -&НаКлиенте -Процедура РасписаниеРаботыПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования) - - Если ОтменаРедактирования Тогда - Возврат; - КонецЕсли; - - ГрафикиРаботыКлиентСервер.ВосстановитьПорядокСтрокКоллекцииПослеРедактирования(РасписаниеРаботы, "ВремяНачала", Элемент.ТекущиеДанные); - -КонецПроцедуры - #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git a/SSL/src/Catalogs/Календари/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/Catalogs/Календари/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss index 9fb1acfdf..61e6fb4bb 100644 --- a/SSL/src/Catalogs/Календари/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss +++ b/SSL/src/Catalogs/Календари/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss @@ -9,22 +9,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - - ТребуетЗаполнения - Equal - true - - - - - ЦветТекста - style:ПросроченныеДанныеЦвет - - - Normal b75fecce-942b-4aed-abc9-e6a02e460fb3 diff --git a/SSL/src/Catalogs/Календари/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/Календари/Forms/ФормаСписка/Module.bsl index ecf6d9e8a..30a600229 100644 --- a/SSL/src/Catalogs/Календари/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/Календари/Forms/ФормаСписка/Module.bsl @@ -12,17 +12,10 @@ Элементы.Список.РежимВыбора = Истина; КонецЕсли; - Список.Параметры.УстановитьЗначениеПараметра("ТекущаяДата", ТекущаяДатаСеанса()); - - Список.Параметры.УстановитьЗначениеПараметра("КалендарьНеЗаполнен", НСтр("ru = 'Производственный календарь не заполнен'")); - Список.Параметры.УстановитьЗначениеПараметра("КалендарьНеЗаполненНаГод", НСтр("ru = 'Производственный календарь не заполнен на очередной календарный год'")); - Список.Параметры.УстановитьЗначениеПараметра("ГрафикНеЗаполнен", НСтр("ru = 'График не был заполнен на очередной календарный год'")); - Список.Параметры.УстановитьЗначениеПараметра("ПериодГрафикаОграничен", НСтр("ru = 'Период заполнения графика ограничен (см. поле «Дата окончания»)'")); - - ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( - Список, "ВладелецГрафика", , ВидСравненияКомпоновкиДанных.НеЗаполнено, , , - РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный); + УстановитьПараметрыСписка(); + ЗаполнитьУсловноеОформлениеСписка(); + КонецПроцедуры #КонецОбласти @@ -36,3 +29,36 @@ КонецПроцедуры #КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Процедура УстановитьПараметрыСписка() + + Список.Параметры.УстановитьЗначениеПараметра("ТекущаяДата", ТекущаяДатаСеанса()); + + Список.Параметры.УстановитьЗначениеПараметра("КалендарьНеЗаполнен", НСтр("ru = 'Производственный календарь не заполнен'")); + Список.Параметры.УстановитьЗначениеПараметра("КалендарьНеЗаполненНаГод", НСтр("ru = 'Производственный календарь не заполнен на очередной календарный год'")); + Список.Параметры.УстановитьЗначениеПараметра("ГрафикНеЗаполнен", НСтр("ru = 'График не был заполнен на очередной календарный год'")); + Список.Параметры.УстановитьЗначениеПараметра("ПериодГрафикаОграничен", НСтр("ru = 'Период заполнения графика ограничен (см. поле «Дата окончания»)'")); + + ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( + Список, "ВладелецГрафика", , ВидСравненияКомпоновкиДанных.НеЗаполнено, , , + РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный); + +КонецПроцедуры + +&НаСервере +Процедура ЗаполнитьУсловноеОформлениеСписка() + + НовыйЭлемент = Список.УсловноеОформление.Элементы.Добавить(); + + ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(НовыйЭлемент.Отбор, "ТребуетЗаполнения", Истина); + + Оформление = НовыйЭлемент.Оформление.Элементы.Найти("ЦветТекста"); + Оформление.Значение = ЦветаСтиля.ПросроченныеДанныеЦвет; + Оформление.Использование = Истина; + +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/Catalogs/Календари/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/Календари/Forms/ФормаЭлемента/Form.form index 2db114d55..9434fda14 100644 --- a/SSL/src/Catalogs/Календари/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/Календари/Forms/ФормаЭлемента/Form.form @@ -76,106 +76,142 @@ - НастройкиПроизводственногоКалендаряГруппа - 251 + НастройкиОбъединеннаяГруппа + 373 - ПериодЗаполненияГруппа - 178 + НастройкиПроизводственногоКалендаряГруппа + 251 - ПериодГруппа - 221 - - ДатаНачала - 171 - - <key>ru</key> - <value>Период заполнения графика с</value> - + ПериодЗаполненияГруппа + 178 + + ПериодГруппа + 221 + + ДатаНачала + 171 + + <key>ru</key> + <value>Период заполнения графика с</value> + + true + true + + true + + + Объект.ДатаНачала + + + OnChange + ДатаНачалаПриИзменении + + + ДатаНачалаExtendedTooltip + 306 + Label + true + true + + Left + + + + ДатаНачалаКонтекстноеМеню + 172 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + ДатаОкончания + 219 + + <key>ru</key> + <value>по</value> + + true + true + + true + + + Объект.ДатаОкончания + + + ДатаОкончанияExtendedTooltip + 307 + Label + true + true + + Left + + + + ДатаОкончанияКонтекстноеМеню + 220 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + true true true - - Объект.ДатаНачала - - - OnChange - ДатаНачалаПриИзменении - - - ДатаНачалаExtendedTooltip - 306 - Label - true - true - - Left - - - - ДатаНачалаКонтекстноеМеню - 172 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - - ДатаОкончания - 219 <key>ru</key> - <value>по</value> + <value>Период заполнения графика</value> - true - true - - true - - - Объект.ДатаОкончания - + + ru + Если дата «по» не заполнена, график будет заполняться +по указанному шаблону до конца года производственного календаря + + ShowBottom - ДатаОкончанияExtendedTooltip - 307 + ПериодГруппаExtendedTooltip + 305 Label - true true Left - - ДатаОкончанияКонтекстноеМеню - 220 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal + UsualGroup + + Auto + true + true + Auto + Auto true @@ -185,15 +221,15 @@ <key>ru</key> - <value>Период заполнения графика</value> + <value>Период заполнения группа</value> ru - Период группа + Период заполнения группа - ПериодГруппаExtendedTooltip - 305 + ПериодЗаполненияГруппаExtendedTooltip + 304 Label true true @@ -203,6 +239,7 @@ UsualGroup + Vertical Auto true true @@ -210,259 +247,27 @@ Auto - - ДатаНачалаИнформационныйТекст - 185 - - <key>ru</key> - <value>Если дата «по» не заполнена, график будет заполняться -по указанному шаблону до конца года производственного календаря</value> - - true - true - - true - - - ДатаНачалаИнформационныйТекстExtendedTooltip - 308 - Label - true - true - - Left - - - - ДатаНачалаИнформационныйТекстКонтекстноеМеню - 186 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Период заполнения группа</value> - - - ru - Период заполнения группа - - - ПериодЗаполненияГруппаExtendedTooltip - 304 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ПроизводственныйКалендарьГруппа - 175 - - ПроизводственныйКалендарь - 167 - true - true - - true - - - Объект.ПроизводственныйКалендарь - - - OnChange - ПроизводственныйКалендарьПриИзменении - - - ПроизводственныйКалендарьExtendedTooltip - 310 - Label - true - true - - Left - - - - ПроизводственныйКалендарьКонтекстноеМеню - 168 - true - - InputField - Enter - true - Left - true - - true - true - false - true - true - true - true - Normal - - - - ВыборПроизводственногоКалендаряПоясняющийТекст - 181 - - <key>ru</key> - <value>При изменении производственного календаря график работы -автоматически заполняется за указанный период</value> - - true - true - - true - - - ВыборПроизводственногоКалендаряПоясняющийТекстExtendedTooltip - 311 - Label - true - true - - Left - - - - ВыборПроизводственногоКалендаряПоясняющийТекстКонтекстноеМеню - 182 - true - - Label - true - 2 - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Производственный календарь группа</value> - - - ru - Производственный календарь группа - - - ПроизводственныйКалендарьГруппаExtendedTooltip - 309 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Настройки производственного календаря группа</value> - - - ru - Настройки производственного календаря группа - - - НастройкиПроизводственногоКалендаряГруппаExtendedTooltip - 303 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - - - НастройкаЗаполненияГруппа - 166 - - НастройкиГруппа - 218 - СпособЗаполненияГруппа - 176 + ПроизводственныйКалендарьГруппа + 175 - СпособЗаполненияПоНеделям - 169 + ПроизводственныйКалендарь + 167 true true true - Объект.СпособЗаполнения + Объект.ПроизводственныйКалендарь - Top OnChange - СпособЗаполненияПриИзменении + ПроизводственныйКалендарьПриИзменении - СпособЗаполненияПоНеделямExtendedTooltip - 315 + ПроизводственныйКалендарьExtendedTooltip + 310 Label true true @@ -471,35 +276,105 @@ - СпособЗаполненияПоНеделямКонтекстноеМеню - 170 + ПроизводственныйКалендарьКонтекстноеМеню + 168 true - RadioButtonField + InputField Enter true Left true - - 1 - - - ru - По неделям - - - Enum.СпособыЗаполненияГрафикаРаботы.EnumValue.ПоНеделям - - - Vertical + + true + true + false + true + true + true + true + Normal + true + true + + true + + + <key>ru</key> + <value>Производственный календарь группа</value> + + + ru + При изменении производственного календаря график работы +автоматически заполняется за указанный период + + ShowBottom + + ПроизводственныйКалендарьГруппаExtendedTooltip + 309 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Настройки производственного календаря группа</value> + + + ru + Настройки производственного календаря группа + + + НастройкиПроизводственногоКалендаряГруппаExtendedTooltip + 303 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + Auto + Auto + + + + НастройкаЗаполненияГруппа + 166 + + НастройкиГруппа + 218 - СпособЗаполненияПоЦикламПроизвольнойДлиныГруппа - 250 + СпособЗаполненияГруппа + 176 - СпособЗаполненияПоЦикламПроизвольнойДлины - 248 + СпособЗаполненияПоНеделям + 169 true true @@ -508,14 +383,14 @@ Объект.СпособЗаполнения - None + Top OnChange СпособЗаполненияПриИзменении - СпособЗаполненияПоЦикламПроизвольнойДлиныExtendedTooltip - 317 + СпособЗаполненияПоНеделямExtendedTooltip + 315 Label true true @@ -524,8 +399,8 @@
      - СпособЗаполненияПоЦикламПроизвольнойДлиныКонтекстноеМеню - 249 + СпособЗаполненияПоНеделямКонтекстноеМеню + 170 true RadioButtonField @@ -538,42 +413,37 @@ ru - По циклам длиной + По неделям - Enum.СпособыЗаполненияГрафикаРаботы.EnumValue.ПоЦикламПроизвольнойДлины + Enum.СпособыЗаполненияГрафикаРаботы.EnumValue.ПоНеделям Vertical - ГруппаДлинаЦиклаДней - 188 + СпособЗаполненияПоЦикламПроизвольнойДлиныГруппа + 250 - ДлинаЦикла - 189 + СпособЗаполненияПоЦикламПроизвольнойДлины + 248 true true true - ДлинаЦикла + Объект.СпособЗаполнения None - - ru - Количество дней, заполнение для которых будет -повторяться в течение всего года - OnChange - ДлинаЦиклаПриИзменении + СпособЗаполненияПриИзменении - ДлинаЦиклаExtendedTooltip - 319 + СпособЗаполненияПоЦикламПроизвольнойДлиныExtendedTooltip + 317 Label true true @@ -582,8 +452,188 @@ - ДлинаЦиклаКонтекстноеМеню - 190 + СпособЗаполненияПоЦикламПроизвольнойДлиныКонтекстноеМеню + 249 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + По циклам длиной + + + Enum.СпособыЗаполненияГрафикаРаботы.EnumValue.ПоЦикламПроизвольнойДлины + + + Vertical + + + + ГруппаДлинаЦиклаДней + 188 + + ДлинаЦикла + 189 + true + true + + true + + + ДлинаЦикла + + None + + ru + Количество дней, заполнение для которых будет +повторяться в течение всего года + + + OnChange + ДлинаЦиклаПриИзменении + + + ДлинаЦиклаExtendedTooltip + 319 + Label + true + true + + Left + + + + ДлинаЦиклаКонтекстноеМеню + 190 + true + + InputField + true + Enter + true + Left + true + + 6 + true + true + false + true + true + true + true + true + true + + 1 + + Normal + + + + ДлинаЦиклаЕдиницаИзмерения + 191 + + <key>ru</key> + <value>дней,</value> + + true + true + + true + + + ДлинаЦиклаЕдиницаИзмеренияExtendedTooltip + 320 + Label + true + true + + Left + + + + ДлинаЦиклаЕдиницаИзмеренияКонтекстноеМеню + 192 + true + + Label + true + + Left + + + true + true + + true + + + <key>ru</key> + <value>Длина цикла дней</value> + + + ru + Длина цикла дней + + + ГруппаДлинаЦиклаДнейExtendedTooltip + 318 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ДатаОтсчета + 229 + + <key>ru</key> + <value>начиная с</value> + + true + true + + true + + + Объект.ДатаОтсчета + + + OnChange + ДатаОтсчетаПриИзменении + + + ДатаОтсчетаExtendedTooltip + 321 + Label + true + true + + Left + + + + ДатаОтсчетаКонтекстноеМеню + 230 true InputField @@ -593,56 +643,16 @@ Left true - 6 true true - false true - true true true true true - - 1 - Normal - - ДлинаЦиклаЕдиницаИзмерения - 191 - - <key>ru</key> - <value>дней,</value> - - true - true - - true - - - ДлинаЦиклаЕдиницаИзмеренияExtendedTooltip - 320 - Label - true - true - - Left - - - - ДлинаЦиклаЕдиницаИзмеренияКонтекстноеМеню - 192 - true - - Label - true - true - - Left - - true true @@ -650,15 +660,11 @@ <key>ru</key> - <value>Длина цикла дней</value> + <value>Способ заполнения по циклам произвольной длины группа</value> - - ru - Длина цикла дней - - ГруппаДлинаЦиклаДнейExtendedTooltip - 318 + СпособЗаполненияПоЦикламПроизвольнойДлиныГруппаExtendedTooltip + 316 Label true true @@ -675,57 +681,6 @@ Auto - - ДатаОтсчета - 229 - - <key>ru</key> - <value>начиная с</value> - - true - true - - true - - - Объект.ДатаОтсчета - - - OnChange - ДатаОтсчетаПриИзменении - - - ДатаОтсчетаExtendedTooltip - 321 - Label - true - true - - Left - - - - ДатаОтсчетаКонтекстноеМеню - 230 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal - - true true @@ -733,11 +688,16 @@ <key>ru</key> - <value>Способ заполнения по циклам произвольной длины группа</value> + <value>Способ заполнения</value> + + ru + Выберите шаблон, по которому будет заполнен график работы + + ShowBottom - СпособЗаполненияПоЦикламПроизвольнойДлиныГруппаExtendedTooltip - 316 + СпособЗаполненияГруппаExtendedTooltip + 314 Label true true @@ -747,6 +707,7 @@ UsualGroup + Vertical Auto true true @@ -754,377 +715,34 @@ Auto - - ВыборСпособаЗаполненияПоясняющийТекст - 179 - - <key>ru</key> - <value>Выберите шаблон, по которому будет заполнен график работы</value> - - true - true - - true - - - ВыборСпособаЗаполненияПоясняющийТекстExtendedTooltip - 322 - Label - true - true - - Left - - - - ВыборСпособаЗаполненияПоясняющийТекстКонтекстноеМеню - 180 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Способ заполнения группа</value> - - - ru - Способ заполнения группа - - - СпособЗаполненияГруппаExtendedTooltip - 314 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - УчитыватьПраздникиГруппа - 177 - - УчитыватьПраздники - 173 - true - true - - true - - - Объект.УчитыватьПраздники - - Right - - OnChange - УчитыватьПраздникиПриИзменении - - - УчитыватьПраздникиExtendedTooltip - 324 - Label - true - true - - Left - - - - УчитыватьПраздникиКонтекстноеМеню - 174 - true - - CheckBoxField - Enter - true - Left - true - - - - УчитыватьПраздникиИнформационныйТекст - 183 - - <key>ru</key> - <value>Если установлено, то из состава рабочих дней -будут исключаться дни, выпадающие на праздники</value> - - true - true - - true - - - УчитыватьПраздникиИнформационныйТекстExtendedTooltip - 325 - Label - true - true - - Left - - - - УчитыватьПраздникиИнформационныйТекстКонтекстноеМеню - 184 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - - РасписаниеПредпраздничногоДня - 287 - true - true - - true - - - РасписаниеПредпраздничногоДня - - - РасписаниеПредпраздничногоДняExtendedTooltip - 326 - Label - true - true - - Left - - - - РасписаниеПредпраздничногоДняКонтекстноеМеню - 288 - true - - LabelField - Enter - true - Left - true - - - Click - РасписаниеПредпраздничногоДняНажатие - - true - true - false - true - - - true - true - - true - - - <key>ru</key> - <value>Учитывать праздники группа</value> - - - ru - Учитывать праздники группа - - - УчитыватьПраздникиГруппаExtendedTooltip - 323 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Настройки группа</value> - - - ru - Настройки группа - - - НастройкиГруппаExtendedTooltip - 313 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Equal - Auto - Auto - - - - ШаблонЗаполненияГруппа - 195 - - ШаблонЗаполнения - 196 - true - true - - true - - - Объект.ШаблонЗаполнения - - Top - ШаблонЗаполненияГруппаКолонок - 199 + УчитыватьПраздникиГруппа + 177 - ШаблонЗаполненияНомерСтроки - 208 + УчитыватьПраздники + 173 true true true - Объект.ШаблонЗаполнения.LineNumber - - - ШаблонЗаполненияНомерСтрокиExtendedTooltip - 330 - Label - true - true - - Left - - - - ШаблонЗаполненияНомерСтрокиКонтекстноеМеню - 209 - true - - LabelField - Auto - true - Left - true - - true - true - - - - ШаблонЗаполненияПредставлениеДня - 212 - true - true - - true - - - Объект.ШаблонЗаполнения.ПредставлениеДня - - - ШаблонЗаполненияПредставлениеДняExtendedTooltip - 331 - Label - true - true - - Left - - - - ШаблонЗаполненияПредставлениеДняКонтекстноеМеню - 213 - true - - LabelField - Auto - true - Left - true - - true - true - false - - - - ШаблонЗаполненияДеньВключенВГрафик - 233 - true - true - - true - - - Объект.ШаблонЗаполнения.ДеньВключенВГрафик + Объект.УчитыватьПраздники + Right ru - Признак того, что день включен в график + Если установлено, то из состава рабочих дней +будут исключаться дни, выпадающие на праздники + ShowBottom OnChange - ШаблонЗаполненияДеньВключенВГрафикПриИзменении + УчитыватьПраздникиПриИзменении - ШаблонЗаполненияДеньВключенВГрафикExtendedTooltip - 332 + УчитыватьПраздникиExtendedTooltip + 324 Label true true @@ -1133,31 +751,31 @@ - ШаблонЗаполненияДеньВключенВГрафикКонтекстноеМеню - 234 + УчитыватьПраздникиКонтекстноеМеню + 174 true CheckBoxField - Auto + Enter true Left true - ШаблонЗаполненияПредставлениеРасписания - 214 + РасписаниеПредпраздничногоДня + 287 true true true - Объект.ШаблонЗаполнения.ПредставлениеРасписания + РасписаниеПредпраздничногоДня - ШаблонЗаполненияПредставлениеРасписанияExtendedTooltip - 333 + РасписаниеПредпраздничногоДняExtendedTooltip + 326 Label true true @@ -1166,22 +784,24 @@ - ШаблонЗаполненияПредставлениеРасписанияКонтекстноеМеню - 215 + РасписаниеПредпраздничногоДняКонтекстноеМеню + 288 true LabelField - Auto - true + Enter true Left true - Show - Always + + Click + РасписаниеПредпраздничногоДняНажатие + true true false + true true @@ -1191,15 +811,15 @@ <key>ru</key> - <value>Шаблон заполнения группа колонок</value> + <value>Учитывать праздники группа</value> ru - Шаблон заполнения группа колонок + Учитывать праздники группа - ШаблонЗаполненияГруппаКолонокExtendedTooltip - 329 + УчитыватьПраздникиГруппаExtendedTooltip + 323 Label true true @@ -1207,147 +827,33 @@ Left - ColumnGroup - - auto - true + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + Auto + Auto - None - - ШаблонЗаполненияКоманднаяПанель - 198 - Left - true - - - Selection - ШаблонЗаполненияВыбор - - - ШаблонЗаполненияСтрокаПоиска - 364 - - ШаблонЗаполненияСтрокаПоискаРасширеннаяПодсказка - 366 - Label - true - true - - Left - - - - ШаблонЗаполненияСтрокаПоискаКонтекстноеМеню - 365 - true - - ШаблонЗаполнения - - true - - - - ШаблонЗаполненияСостояниеПросмотра - 367 - - ШаблонЗаполненияСостояниеПросмотраРасширеннаяПодсказка - 369 - Label - true - true - - Left - - - - ШаблонЗаполненияСостояниеПросмотраКонтекстноеМеню - 368 - true - - ViewStatusAddition - ШаблонЗаполнения - - true - - - - ШаблонЗаполненияУправлениеПоиском - 370 - - ШаблонЗаполненияУправлениеПоискомРасширеннаяПодсказка - 372 - Label - true - true - - Left - - - - ШаблонЗаполненияУправлениеПоискомКонтекстноеМеню - 371 - true - - SearchControlAddition - ШаблонЗаполнения - - true - - - - ШаблонЗаполненияExtendedTooltip - 328 - Label - true - true - - Left - - - - ШаблонЗаполненияКонтекстноеМеню - 197 - - true - 7 - true - true - MultiRow - 1 - 1 - AutoUse - true - true - false - false - false - true - Auto - Auto - true - true - None - None - None - true - - - - ШаблонЗаполненияИнформационныйТекст - 206 - - <key>ru</key> - <value>Отмеченные дни будут включены в график работы</value> - true true true + + <key>ru</key> + <value>Настройки группа</value> + + + ru + Настройки группа + - ШаблонЗаполненияИнформационныйТекстExtendedTooltip - 334 + НастройкиГруппаExtendedTooltip + 313 Label true true @@ -1355,19 +861,374 @@ Left - - ШаблонЗаполненияИнформационныйТекстКонтекстноеМеню - 207 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left + UsualGroup + + Vertical + Auto + true + true + Equal + Auto + Auto + + + + ШаблонЗаполненияГруппа + 195 + + ШаблонЗаполнения + 196 + true + true + + true + + + Объект.ШаблонЗаполнения + + Top + + ru + Отмеченные дни будут включены в график работы + + ShowBottom + + ШаблонЗаполненияГруппаКолонок + 199 + + ШаблонЗаполненияНомерСтроки + 208 + true + true + + true + + + Объект.ШаблонЗаполнения.LineNumber + + + ШаблонЗаполненияНомерСтрокиExtendedTooltip + 330 + Label + true + true + + Left + + + + ШаблонЗаполненияНомерСтрокиКонтекстноеМеню + 209 + true + + LabelField + Auto + true + Left + true + + true + true + + + + ШаблонЗаполненияПредставлениеДня + 212 + true + true + + true + + + Объект.ШаблонЗаполнения.ПредставлениеДня + + + ШаблонЗаполненияПредставлениеДняExtendedTooltip + 331 + Label + true + true + + Left + + + + ШаблонЗаполненияПредставлениеДняКонтекстноеМеню + 213 + true + + LabelField + Auto + true + Left + true + + true + true + false + + + + ШаблонЗаполненияДеньВключенВГрафик + 233 + true + true + + true + + + Объект.ШаблонЗаполнения.ДеньВключенВГрафик + + + ru + Признак того, что день включен в график + + + OnChange + ШаблонЗаполненияДеньВключенВГрафикПриИзменении + + + ШаблонЗаполненияДеньВключенВГрафикExtendedTooltip + 332 + Label + true + true + + Left + + + + ШаблонЗаполненияДеньВключенВГрафикКонтекстноеМеню + 234 + true + + CheckBoxField + Auto + true + Left + true + + + + ШаблонЗаполненияПредставлениеРасписания + 214 + true + true + + true + + + Объект.ШаблонЗаполнения.ПредставлениеРасписания + + + ШаблонЗаполненияПредставлениеРасписанияExtendedTooltip + 333 + Label + true + true + + Left + + + + ШаблонЗаполненияПредставлениеРасписанияКонтекстноеМеню + 215 + true + + LabelField + Auto + true + true + Left + true + Show + Always + + true + true + false + + + true + true + + true + + + <key>ru</key> + <value>Шаблон заполнения группа колонок</value> + + + ru + Шаблон заполнения группа колонок + + + ШаблонЗаполненияГруппаКолонокExtendedTooltip + 329 + Label + true + true + + Left + + + ColumnGroup + + auto + true + + + None + + ШаблонЗаполненияКоманднаяПанель + 198 + Left + true + + + Selection + ШаблонЗаполненияВыбор + + + ШаблонЗаполненияСтрокаПоиска + 364 + + ШаблонЗаполненияСтрокаПоискаРасширеннаяПодсказка + 366 + Label + true + true + + Left + + + + ШаблонЗаполненияСтрокаПоискаКонтекстноеМеню + 365 + true + + ШаблонЗаполнения + + true + + + + ШаблонЗаполненияСостояниеПросмотра + 367 + + ШаблонЗаполненияСостояниеПросмотраРасширеннаяПодсказка + 369 + Label + true + true + + Left + + + + ШаблонЗаполненияСостояниеПросмотраКонтекстноеМеню + 368 + true + + ViewStatusAddition + ШаблонЗаполнения + + true + + + + ШаблонЗаполненияУправлениеПоиском + 370 + + ШаблонЗаполненияУправлениеПоискомРасширеннаяПодсказка + 372 + Label + true + true + + Left + + + + ШаблонЗаполненияУправлениеПоискомКонтекстноеМеню + 371 + true + + SearchControlAddition + ШаблонЗаполнения + + true + + + + ШаблонЗаполненияExtendedTooltip + 328 + Label + true + true + + Left + + + + ШаблонЗаполненияКонтекстноеМеню + 197 + + true + 7 + true + true + MultiRow + 1 + 1 + AutoUse + true + true + false + false + false + true + Auto + Auto + true + true + None + None + None + true + + + true + true + + true + + + <key>ru</key> + <value>Шаблон заполнения</value> + + + ru + Шаблон заполнения + + + ШаблонЗаполненияГруппаExtendedTooltip + 327 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto true @@ -1377,15 +1238,15 @@ <key>ru</key> - <value>Шаблон заполнения</value> + <value>Настройка заполнения</value> ru - Шаблон заполнения + Настройка заполнения - ШаблонЗаполненияГруппаExtendedTooltip - 327 + НастройкаЗаполненияГруппаExtendedTooltip + 312 Label true true @@ -1395,10 +1256,9 @@ UsualGroup - Vertical Auto + WeakSeparation true - true Auto Auto @@ -1410,15 +1270,11 @@ <key>ru</key> - <value>Настройка заполнения</value> + <value>Настройки объединенная</value> - - ru - Настройка заполнения - - НастройкаЗаполненияГруппаExtendedTooltip - 312 + НастройкиОбъединеннаяГруппаРасширеннаяПодсказка + 374 Label true true @@ -1428,8 +1284,9 @@ UsualGroup + Vertical Auto - WeakSeparation + NormalSeparation true true Auto @@ -1456,6 +1313,11 @@ Объект.ГоризонтПланирования + + ru + мес. + + ShowRight OnChange ГоризонтПланированияПриИзменении @@ -1491,40 +1353,6 @@ Normal - - ГоризонтПланированияЕдиницаДекорация - 239 - - <key>ru</key> - <value>мес.</value> - - true - true - - true - - - ГоризонтПланированияЕдиницаДекорацияExtendedTooltip - 339 - Label - true - true - - Left - - - - ГоризонтПланированияЕдиницаДекорацияКонтекстноеМеню - 240 - true - - Label - true - true - - Left - - true true @@ -1536,14 +1364,13 @@ ru - Горизонт планирования единица группа + Период времени, на который график должен быть заполнен вперед - true + ShowRight ГоризонтПланированияЕдиницаГруппаExtendedTooltip 337 Label - true true Left @@ -1558,43 +1385,6 @@ Auto - - ГоризонтПланированияПоясняющийТекст - 241 - - <key>ru</key> - <value>Период времени, на который график должен быть заполнен вперед</value> - - true - true - - true - - - ГоризонтПланированияПоясняющийТекстExtendedTooltip - 340 - Label - true - true - - Left - - - - ГоризонтПланированияПоясняющийТекстКонтекстноеМеню - 242 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -1608,7 +1398,6 @@ ru Горизонт планирования группа - false ГоризонтПланированияГруппаExtendedTooltip 336 @@ -1697,7 +1486,6 @@ Left true - true true Style.ПоясняющийТекст @@ -1745,10 +1533,7 @@ ru Контроль заполнения - - ru - Контроль заполнения - + true КонтрольЗаполненияГруппаExtendedTooltip 335 @@ -1763,7 +1548,7 @@ Vertical Auto - WeakSeparation + NormalSeparation true true Auto @@ -1784,7 +1569,6 @@ Объект.Описание - Left ОписаниеExtendedTooltip 345 @@ -1810,8 +1594,6 @@ StartChoice КомментарийНачалоВыбора - true - true true true true @@ -1829,10 +1611,6 @@ ru Описание группа - - ru - Описание группа - ОписаниеГруппаExtendedTooltip 344 @@ -1930,8 +1708,9 @@ Left true - true + 1 true + false Style.ПросроченныеДанныеЦвет @@ -1993,6 +1772,8 @@ Auto true true + Right + Bottom UserCmds System.DefaultGUIFont @@ -2012,11 +1793,6 @@ ru Результат заполнения команда перехода группа - - ru - Результат заполнения команда перехода группа - - true РезультатЗаполненияКомандаПереходаГруппаExtendedTooltip 346 @@ -2160,7 +1936,6 @@ true Label - true true Left @@ -2241,11 +2016,15 @@ ГрафикРаботы None + + ru + Для редактирования рабочих и выходных дней календаря используйте двойной щелчок левой кнопкой мыши. + + ShowBottom ГрафикРаботыExtendedTooltip 358 Label - true true Left @@ -2270,9 +2049,9 @@ Selection ГрафикРаботыВыбор - 16 + 1 true - 9 + 1 true true true @@ -2281,46 +2060,6 @@ 1 - 1 - 1 - - - - УправлениеГрафикомИнформационныйТекст - 275 - - <key>ru</key> - <value>Для редактирования рабочих и выходных дней календаря используйте двойной щелчок левой кнопкой мыши.</value> - - true - true - - true - - - УправлениеГрафикомИнформационныйТекстExtendedTooltip - 359 - Label - true - true - - Left - - - - УправлениеГрафикомИнформационныйТекстКонтекстноеМеню - 276 - true - - Label - true - true - false - - Style.ПоясняющийТекст - - - Left true @@ -2458,8 +2197,8 @@ Left true - true true + true false Style.ПоясняющийТекст @@ -2479,6 +2218,7 @@ ru Результат заполнения информационный текст группа + true РезультатЗаполненияИнформационныйТекстГруппаExtendedTooltip 360 diff --git a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ЗагрузкаКлассификатора/Form.form b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ЗагрузкаКлассификатора/Form.form index 314613ab0..7730920d7 100644 --- a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ЗагрузкаКлассификатора/Form.form +++ b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ЗагрузкаКлассификатора/Form.form @@ -51,7 +51,7 @@ ru - с сайта агентства "РосБизнесКонсалтинг" + Из Интернета РБК @@ -60,7 +60,7 @@ ru - с диска "Информационно-технологическое сопровождение" + С диска "Информационно-технологическое сопровождение" ИТС @@ -153,7 +153,7 @@ 13 <key>ru</key> - <value>Загрузка классификатора банков РФ будет выполнена с сайта Российского информационного агентства РБК (http://www.rbc.ru). + <value>Загрузка классификатора банков РФ будет выполнена с сайта 1С. Для продолжения нажмите "Загрузить".</value> @@ -178,10 +178,10 @@ true Label - true true Left + 4 true @@ -191,11 +191,11 @@ <key>ru</key> - <value>Загрузка с сайта РБК</value> + <value>Загрузка с сайта 1С</value> ru - Загрузка с сайта РБК + Загрузка с сайта 1С ЗагрузкаССайтаРБКExtendedTooltip @@ -244,9 +244,7 @@ 17 true - 7 true - 3 true @@ -282,9 +280,8 @@ true Label - true - 3 true + Center Left @@ -349,12 +346,7 @@ true Label - 5 - true - 5 true - true - true Style.FormTextColor @@ -640,7 +632,6 @@ OnCreateAtServer ПриСозданииНаСервере - 55 LockOwner Use true @@ -672,24 +663,6 @@ ВариантЗагрузки - - АдресХранилища - - <key>ru</key> - <value>Адрес хранилища</value> - - 1 - - String - - - - true - - - true - - ИдентификаторЗадания diff --git a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ЗагрузкаКлассификатора/Help/ru.html b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ЗагрузкаКлассификатора/Help/ru.html index 32c6b3f22..4ecc0f630 100644 --- a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ЗагрузкаКлассификатора/Help/ru.html +++ b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ЗагрузкаКлассификатора/Help/ru.html @@ -1,11 +1,11 @@ <!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.18427"></meta></head><body> -<p style="MARGIN-LEFT: 0px">Программа позволяет загружать классификатор банков РФ с сайта агентства "РосБизнесКонсалтинг" (<a href="http://www.rbc.ru">www.rbc.ru</a>). При этом программа учитывает недействующие банки (в карточке такого <a href="Catalog.КлассификаторБанковРФ.Form.ФормаЭлемента/Help">банка</a> включен соответствующий флажок).</p> +<p style="MARGIN-LEFT: 0px">Программа позволяет загружать классификатор банков РФ с сайта 1С. При этом программа учитывает недействующие банки (в карточке такого <a href="Catalog.КлассификаторБанковРФ.Form.ФормаЭлемента/Help">банка</a> включен соответствующий флажок).</p> <h3 style="MARGIN-LEFT: 0px">Загрузка классификатора банков РФ</h3> <p style="MARGIN-LEFT: 0px">Производится с помощью кнопки <strong>Загрузить классификатор</strong> из <a href="Catalog.КлассификаторБанковРФ/Help">классификатора банков</a>.</p> <ul><li> <div style="MARGIN-LEFT: 0px">С помощью переключателя выберите <strong>Вариант загрузки</strong>:</div> <ul><li> -<p style="MARGIN-LEFT: 0px"><strong>с сайта агентства "РосбизнесКонсалтинг"</strong> (при работе в веб-клиенте возможна загрузка только с сайта РБК);</p> +<p style="MARGIN-LEFT: 0px"><strong>Из Интернета</strong> (при работе в веб-клиенте возможна загрузка только с сайта 1С);</p> </li><li style="MARGIN-LEFT: 0px"><strong>с диска "Информационно-технологическое сопровождение"</strong> - загрузка будет производиться из поставляемого на диске 1С:ИТС "Общероссийского классификатора банков" (ОКБ). <ul><li> <p style="MARGIN-LEFT: 0px">укажите <strong>Путь к диску ИТС</strong>.</p></li></ul></li></ul></li><li> @@ -17,7 +17,7 @@ </li><li> <div style="MARGIN-LEFT: 0px">При этом если был изменен БИК банка, то будет создана новая запись о банке. </div> </li><li> -<div style="MARGIN-LEFT: 0px">Если были изменены другие поля, то при повторной загрузке они будут перезаписаны (кроме полей <strong>Адрес</strong> и <strong>Телефоны</strong> в случае, когда классификатор перезагружается с сайта РБК).</div></li></ul><h3 style="MARGIN-LEFT: 0px">Особенности загрузки классификатора банков в веб-клиенте</h3> +<div style="MARGIN-LEFT: 0px">Если были изменены другие поля, то при повторной загрузке они будут перезаписаны (кроме полей <strong>Адрес</strong> и <strong>Телефоны</strong> в случае, когда классификатор перезагружается с сайта 1С).</div></li></ul><h3 style="MARGIN-LEFT: 0px">Особенности загрузки классификатора банков в веб-клиенте</h3> <ul><li> <div style="MARGIN-LEFT: 0px">В веб-клиенте также производится проверка актуальности классификатора банков и выводится сообщение с предложением его обновления. </div> </li><li> diff --git a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ЗагрузкаКлассификатора/Module.bsl b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ЗагрузкаКлассификатора/Module.bsl index c8aa27680..bde8ecc46 100644 --- a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ЗагрузкаКлассификатора/Module.bsl +++ b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ЗагрузкаКлассификатора/Module.bsl @@ -1,10 +1,3 @@ -#Область ОписаниеПеременных - -&НаКлиенте -Перем ПараметрыОбработчикаОжидания; - -#КонецОбласти - #Область ОбработчикиСобытийФормы &НаСервере @@ -96,10 +89,10 @@ Иначе ОчиститьСообщения(); Если ВариантЗагрузки = "ИТС" Тогда - Если НЕ ЗначениеЗаполнено(ПутьКДискуИТС) И ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда - // Под Linux - перебор букв дисков невозможен. + Если НЕ ЗначениеЗаполнено(ПутьКДискуИТС) И Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда + // Не в Windows перебор букв дисков невозможен. ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - НСтр("ru = 'При работе в ОС Linux необходимо явно указать путь к диску'"), + НСтр("ru = 'При работе не в ОС Windows необходимо явно указать путь к диску'"), , "ПутьКДискуИТС"); Возврат; @@ -107,7 +100,7 @@ Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.ВыполняетсяЗагрузка; УстановитьИзмененияВИнтерфейсе(); КонецЕсли; - ПодключитьОбработчикОжидания("ЗагрузитьКлассификатор", 0.1, Истина); + ПодключитьОбработчикОжидания("НачатьЗагрузкуКлассификатора", 0.1, Истина); КонецЕсли; КонецПроцедуры @@ -139,8 +132,63 @@ #Область СлужебныеПроцедурыИФункции -//////////////////////////////////////////////////////////////////////////////// -// Клиент +&НаКлиенте +Процедура НачатьЗагрузкуКлассификатора() + Если ВариантЗагрузки <> "ИТС" И ТребуетсяНастройкаАвторизацияИнтернетПоддержки() Тогда + ТекстВопроса = НСтр("ru='Для загрузки классификатора банков из Интернета + |необходимо подключиться к Интернет-поддержке пользователей. + |Подключиться сейчас?'"); + ОписаниеОповещения = Новый ОписаниеОповещения("ПриПодключенииИнтернетПоддержки", ЭтотОбъект); + Кнопки = Новый СписокЗначений; + Кнопки.Добавить(КодВозвратаДиалога.Да, НСтр("ru = 'Подключиться'")); + Кнопки.Добавить(КодВозвратаДиалога.Отмена); + + ПоказатьВопрос(ОписаниеОповещения, ТекстВопроса, Кнопки); + Иначе + ЗагрузитьКлассификатор(); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ПриПодключенииИнтернетПоддержки(РезультатВопроса, ДополнительныеПараметры) Экспорт + Если РезультатВопроса <> КодВозвратаДиалога.Да Тогда + Возврат; + КонецЕсли; + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + ОписаниеОповещения = Новый ОписаниеОповещения("ПослеПодключенияИнтернетПоддержки", ЭтотОбъект); + МодульИнтернетПоддержкаПользователейКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ИнтернетПоддержкаПользователейКлиент"); + МодульИнтернетПоддержкаПользователейКлиент.ПодключитьИнтернетПоддержкуПользователей(ОписаниеОповещения, ЭтотОбъект); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ПослеПодключенияИнтернетПоддержки(Результат, ДополнительныеПараметры) Экспорт + Если Не (ТипЗнч(Результат) = Тип("Структура") + И ЗначениеЗаполнено(Результат.Логин) + И ЗначениеЗаполнено(Результат.Пароль)) Тогда + Возврат; + КонецЕсли; + ЗагрузитьКлассификатор(); +КонецПроцедуры + +&НаСервере +Функция ТребуетсяНастройкаАвторизацияИнтернетПоддержки() + УстановитьПривилегированныйРежим(Истина); + ИспользоватьАльтернативныйСервер = Константы.ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков.Получить(); + УстановитьПривилегированныйРежим(Ложь); + + Если Не ИспользоватьАльтернативныйСервер Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + МодульИнтернетПоддержкаПользователей = ОбщегоНазначения.ОбщийМодуль("ИнтернетПоддержкаПользователей"); + ДанныеАутентификации = МодульИнтернетПоддержкаПользователей.ДанныеАутентификацииПользователяИнтернетПоддержки(); + Возврат Не (ДанныеАутентификации <> Неопределено + И ЗначениеЗаполнено(ДанныеАутентификации.Логин) + И ЗначениеЗаполнено(ДанныеАутентификации.Пароль)); + КонецЕсли; + КонецЕсли; + Возврат Ложь; +КонецФункции &НаКлиенте Процедура ЗагрузитьКлассификатор() @@ -158,41 +206,65 @@ Если ВариантЗагрузки = "ИТС" Тогда ПолучитьДанныеБИКРФДискИТС(ПараметрыЗагрузкиКлассификатора); - АдресХранилища = ПоместитьВоВременноеХранилище(Неопределено, УникальныйИдентификатор); - ПоместитьВоВременноеХранилище(ПараметрыЗагрузкиКлассификатора, АдресХранилища); - Результат = Новый Структура("ЗаданиеВыполнено, АдресХранилища", Истина, АдресХранилища); + АдресХранилища = ПоместитьВоВременноеХранилище(ПараметрыЗагрузкиКлассификатора, УникальныйИдентификатор); + ЗагрузитьРезультат(АдресХранилища); + Возврат; ИначеЕсли ВариантЗагрузки = "РБК" Тогда - Результат = ПолучитьДанныеРБКНаСервере(ПараметрыЗагрузкиКлассификатора); - КонецЕсли; - - АдресХранилища = Результат.АдресХранилища; - Если НЕ Результат.ЗаданиеВыполнено Тогда + ДлительнаяОперация = ПолучитьДанныеРБКНаСервере(ПараметрыЗагрузкиКлассификатора); + Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.ВыполняетсяЗагрузка; УстановитьИзмененияВИнтерфейсе(); - ИдентификаторЗадания = Результат.ИдентификаторЗадания; + ИдентификаторЗадания = ДлительнаяОперация.ИдентификаторЗадания; + + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; - ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания); - ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеЗадания", 1, Истина); - Иначе - ЗагрузитьРезультат(); + ОписаниеОповещения = Новый ОписаниеОповещения("ПриЗавершенииОперацииЗагрузки", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОписаниеОповещения, ПараметрыОжидания); КонецЕсли; - КонецПроцедуры + +КонецПроцедуры &НаКлиенте -Процедура ЗагрузитьРезультат() +Процедура ПриЗавершенииОперацииЗагрузки(Результат, ДополнительныеПараметры) Экспорт + + Если Результат = Неопределено Тогда + Возврат; + КонецЕсли; + + Если Результат.Статус = "Ошибка" Тогда + ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(НСтр("ru = 'Загрузка классификатора банков'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + "Ошибка", Результат.ПодробноеПредставлениеОшибки, , Истина); + + Элементы.ПоясняющийТекст.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Загрузка классификатора банков прервана по причине: + |%1 + |Подробности см. в журнале регистрации.'"), + Результат.КраткоеПредставлениеОшибки); + + Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаРезультат; + УстановитьИзмененияВИнтерфейсе(); + Возврат; + КонецЕсли; + + ЗагрузитьРезультат(Результат.АдресРезультата); +КонецПроцедуры + +&НаКлиенте +Процедура ЗагрузитьРезультат(АдресХранилища) // Отображает результат попытки загрузки классификатора банков РФ в журнале регистрации // и в форме загрузки. Если ВариантЗагрузки = "ИТС" Тогда Источник = НСтр("ru ='Диск ИТС'"); Иначе - Источник = НСтр("ru ='Сайт РБК'"); + Источник = НСтр("ru ='1С'"); КонецЕсли; ПараметрыЗагрузкиКлассификатора = ПолучитьИзВременногоХранилища(АдресХранилища); - ИмяСобытия = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru ='Загрузка классификатора банков. %1.'"), Источник); + ИмяСобытия = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru ='Загрузка классификатора банков.%1'"), Источник); Если ПараметрыЗагрузкиКлассификатора["ЗагрузкаВыполнена"] Тогда ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытия,, @@ -213,38 +285,6 @@ КонецПроцедуры -&НаКлиенте -Процедура Подключаемый_ПроверитьВыполнениеЗадания() - ЗаданиеВыполнено = Неопределено; - Попытка - ЗаданиеВыполнено = ЗаданиеВыполнено(ИдентификаторЗадания); - Исключение - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(НСтр("ru = 'Загрузка классификатора банков'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), - "Ошибка", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()), , Истина); - - Элементы.ПоясняющийТекст.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Загрузка классификатора банков прервана по причине: - |%1 - |Подробности см. в журнале регистрации.'"), - КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); - - Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаРезультат; - УстановитьИзмененияВИнтерфейсе(); - Возврат; - КонецПопытки; - - Если ЗаданиеВыполнено Тогда - ЗагрузитьРезультат(); - Иначе - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания); - ПодключитьОбработчикОжидания( - "Подключаемый_ПроверитьВыполнениеЗадания", - ПараметрыОбработчикаОжидания.ТекущийИнтервал, - Истина); - КонецЕсли; - -КонецПроцедуры - &НаКлиенте Процедура ПолучитьДанныеБИКРФДискИТС(ПараметрыЗагрузкиКлассификатора) // Получает, сортирует, записывает данные классификатора БИК РФ с диска ИТС. @@ -352,14 +392,6 @@ КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// Вызов сервера - -&НаСервереБезКонтекста -Функция ЗаданиеВыполнено(ИдентификаторЗадания) - Возврат ДлительныеОперации.ЗаданиеВыполнено(ИдентификаторЗадания); -КонецФункции - &НаСервере Процедура УстановитьИзмененияВИнтерфейсе() // В зависимости от текущей страницы устанавливает доступность тех или иных полей для пользователя. @@ -416,21 +448,15 @@ ВызватьИсключение ТекстЗагрузкаЗапрещена(); КонецЕсли; - НаименованиеЗадания = НСтр("ru = 'Загрузка классификатора банков РФ'"); + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Загрузка классификатора банков РФ'"); - Результат = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "РаботаСБанками.ПолучитьДанныеРБК", - ПараметрыЗагрузкиФайловРБК, - НаименованиеЗадания); + Результат = ДлительныеОперации.ВыполнитьВФоне("РаботаСБанками.ПолучитьДанныеРБК", ПараметрыЗагрузкиФайловРБК, ПараметрыВыполнения); Возврат Результат; КонецФункции -//////////////////////////////////////////////////////////////////////////////// -// Сервер - &НаСервере Функция ТекстЗагрузкаЗапрещена() Возврат НСтр("ru = 'Загрузка классификатора банков в разделенном режиме запрещена.'"); diff --git a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаВыбора/Help/ru.html b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаВыбора/Help/ru.html index 06754b176..938cb5686 100644 --- a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаВыбора/Help/ru.html +++ b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаВыбора/Help/ru.html @@ -2,7 +2,7 @@ <p style="MARGIN-LEFT: 0px">Предназначена для выбора сведений о банках, которые используются при заполнении реквизитов банковских счетов, в документах и других объектах программы. </p> <p style="MARGIN-LEFT: 0px">В списке выводится: </p> <ul><li> -<div style="MARGIN-LEFT: 0px"><strong>Наименование банка</strong> - полное наименование <a href="Catalog.КлассификаторБанковРФ.Form.ФормаЭлемента/Help">банка</a>;</div> +<div style="MARGIN-LEFT: 0px"><strong>Наименование</strong> - полное наименование <a href="Catalog.КлассификаторБанковРФ.Form.ФормаЭлемента/Help">банка</a>;</div> </li><li> <div style="MARGIN-LEFT: 0px"><strong>БИК</strong> - БИК банка;</div> </li><li> diff --git a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаСписка/Form.form index 9d5ccc065..3367d677c 100644 --- a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаСписка/Form.form @@ -39,6 +39,58 @@ <items xsi:type="form:FormGroup"> <name>КоманднаяПанель</name> <id>29</id> + <items xsi:type="form:Button"> + <name>ФормаСоздать</name> + <id>40</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <extendedTooltip> + <name>ФормаСоздатьРасширеннаяПодсказка</name> + <id>41</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <commandName>Form.StandardCommand.Create</commandName> + <buttonImportance>Normal</buttonImportance> + <representation>Auto</representation> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <placementArea>UserCmds</placementArea> + <representationInContextMenu>Auto</representationInContextMenu> + </items> + <items xsi:type="form:Button"> + <name>ФормаСоздатьГруппу</name> + <id>42</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <extendedTooltip> + <name>ФормаСоздатьГруппуРасширеннаяПодсказка</name> + <id>43</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <commandName>Form.StandardCommand.CreateFolder</commandName> + <buttonImportance>Normal</buttonImportance> + <representation>Auto</representation> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <placementArea>UserCmds</placementArea> + <representationInContextMenu>Auto</representationInContextMenu> + </items> <items xsi:type="form:Button"> <name>ФормаЗагрузитьКлассификатор</name> <id>16</id> @@ -65,6 +117,54 @@ <placementArea>UserCmds</placementArea> <representationInContextMenu>Auto</representationInContextMenu> </items> + <items xsi:type="form:FormGroup"> + <name>ФормаГруппа1</name> + <id>44</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <extendedTooltip> + <name>ФормаГруппа1РасширеннаяПодсказка</name> + <id>45</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <extInfo xsi:type="form:ButtonGroupExtInfo"> + <commandSource>Form</commandSource> + </extInfo> + </items> + <items xsi:type="form:Button"> + <name>Справка</name> + <id>46</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <extendedTooltip> + <name>СправкаРасширеннаяПодсказка</name> + <id>47</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <commandName>Form.StandardCommand.Help</commandName> + <buttonImportance>Normal</buttonImportance> + <representation>Auto</representation> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <placementArea>UserCmds</placementArea> + <representationInContextMenu>Auto</representationInContextMenu> + </items> <visible>true</visible> <enabled>true</enabled> <userVisible> @@ -91,7 +191,6 @@ <type>CommandBar</type> <extInfo xsi:type="form:CommandBarExtInfo"> <horizontalAlign>Left</horizontalAlign> - <commandSource>Form</commandSource> </extInfo> </items> <items xsi:type="form:Table"> diff --git a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаСписка/Module.bsl index 8144a49e6..5e743b33f 100644 --- a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаСписка/Module.bsl @@ -10,17 +10,17 @@ Возврат; КонецЕсли; - Если Не Пользователи.ЭтоПолноправныйПользователь() Тогда - ТолькоПросмотр = Истина; - КонецЕсли; - МожноОбновлятьКлассификатор = Не ОбщегоНазначенияПовтИсп.РазделениеВключено() // В модели сервиса обновляется автоматически. И Не ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() // В узле РИБ обновляется автоматически. И ПравоДоступа("Изменение", Метаданные.Справочники.КлассификаторБанковРФ); // Пользователь с необходимыми правами. Элементы.ФормаЗагрузитьКлассификатор.Видимость = МожноОбновлятьКлассификатор; - + + Если Не Пользователи.ЭтоПолноправныйПользователь() Или Не МожноОбновлятьКлассификатор Тогда + ТолькоПросмотр = Истина; + КонецЕсли; + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаЭлемента/Form.form index c71437432..bbf85b95f 100644 --- a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаЭлемента/Form.form @@ -137,7 +137,7 @@ <common>true</common> </userVisible> <extendedTooltip> - <name>НадписьДеятельностьБанкаПрекращенаExtendedTooltip</name> + <name>НадписьДеятельностьБанкаПрекращенаРасширеннаяПодсказка</name> <id>26</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> @@ -151,8 +151,8 @@ <id>20</id> <autoFill>true</autoFill> </contextMenu> + <formatted>true</formatted> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <textColor xsi:type="core:ColorRef"> <color>Style.ПросроченныеДанныеЦвет</color> @@ -195,7 +195,7 @@ <name>СтраницаФлажокДеятельностьПрекращена</name> <id>23</id> <items xsi:type="form:FormField"> - <name>ДеятельностьПрекращена</name> + <name>ДеятельностьБанкаПрекращена</name> <id>17</id> <title> <key>ru</key> @@ -211,7 +211,7 @@ </dataPath> <titleLocation>Right</titleLocation> <extendedTooltip> - <name>ДеятельностьПрекращенаExtendedTooltip</name> + <name>ДеятельностьБанкаПрекращенаРасширеннаяПодсказка</name> <id>28</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> @@ -221,7 +221,7 @@ </extInfo> </extendedTooltip> <contextMenu> - <name>ДеятельностьПрекращенаКонтекстноеМеню</name> + <name>ДеятельностьБанкаПрекращенаКонтекстноеМеню</name> <id>18</id> <autoFill>true</autoFill> </contextMenu> diff --git a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаЭлемента/Help/ru.html b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаЭлемента/Help/ru.html index 8e27ab3cf..3d4e6f203 100644 --- a/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаЭлемента/Help/ru.html +++ b/SSL/src/Catalogs/КлассификаторБанковРФ/Forms/ФормаЭлемента/Help/ru.html @@ -1,7 +1,10 @@ <!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.18427"></meta></head><body> <p style="MARGIN-LEFT: 0px">Описание свойств банка: </p> <ul><li> -<div style="MARGIN-LEFT: 0px"><strong>Наименование банка</strong> - полное наименование банка.</div> +<div style="MARGIN-LEFT: 0px"><strong>Наименование</strong> - полное наименование банка.</div> +</li><li> +<div style="MARGIN-LEFT: 0px"> +<div style="MARGIN-LEFT: 0px"><strong>Входит в группу</strong> - по умолчанию указывается регион, в котором находится банк. Можно включить банк в новую группу, для этого выберите из списка нужную группу, нажав <strong>Показать все</strong>, для ввода новой группы нажмите <strong>Создать</strong>. </div></div> </li><li> <div style="MARGIN-LEFT: 0px"><strong>Деятельность банка прекращена</strong> - программа учитывает недействующие <a href="Catalog.КлассификаторБанковРФ/Help">банки</a> и автоматически включает флажок для таких банков. Также можно его включить вручную, если получены сведения о закрытии банка. </div> </li><li> @@ -13,11 +16,7 @@ <div style="MARGIN-LEFT: 0px"><strong>ИНН</strong>.</div> </li><li><strong>Город</strong> - город, в котором находится банк. </li><li> -<div style="MARGIN-LEFT: 0px"> -<div style="MARGIN-LEFT: 0px"><strong>Группа банков</strong> - по умолчанию регион, в котором находится банк. Можно включить банк в новую группу, для этого выберите из списка нужную группу, нажав <strong>Показать все</strong>, для ввода новой группы нажмите <strong>Создать</strong>. </div></div> -</li><li> -<div style="MARGIN-LEFT: 0px"> -<div style="MARGIN-LEFT: 0px"><strong>Адрес</strong> - полный адрес банка.</div></div> +<div style="MARGIN-LEFT: 0px"><strong>Адрес</strong> - полный адрес банка.</div> </li><li> <div style="MARGIN-LEFT: 0px"><strong>Телефоны</strong> - адреса и телефоны банков можно <a href="Catalog.КлассификаторБанковРФ.Form.ЗагрузкаКлассификатора/Help">загрузить</a> только с диска 1С:ИТС или ввести вручную.</div></li></ul><h3 style="MARGIN-LEFT: 0px">См. также:</h3> <ul><li> diff --git a/SSL/src/Catalogs/КлассификаторБанковРФ/Help/ru.html b/SSL/src/Catalogs/КлассификаторБанковРФ/Help/ru.html index 8fdc94dbd..ca0397b22 100644 --- a/SSL/src/Catalogs/КлассификаторБанковРФ/Help/ru.html +++ b/SSL/src/Catalogs/КлассификаторБанковРФ/Help/ru.html @@ -34,11 +34,11 @@ <div style="MARGIN-LEFT: 0px"> <p style="MARGIN-LEFT: 0px">С помощью кнопки <strong>Загрузить классификатор</strong> можно <a href="Catalog.КлассификаторБанковРФ.Form.ЗагрузкаКлассификатора/Help">обновить</a> сведения о банках.  </p></div> </li><li> -<div style="MARGIN-LEFT: 0px">Также можно настроить обновление классификатора с сайта РБК автоматически по расписанию с помощью <a href="DataProcessor.РегламентныеИФоновыеЗадания/Help">регламентного задания</a> "Загрузка классификатора банков".</div> +<div style="MARGIN-LEFT: 0px">Также можно настроить обновление классификатора с сайта 1С автоматически по расписанию с помощью <a href="DataProcessor.РегламентныеИФоновыеЗадания/Help">регламентного задания</a> "Загрузка классификатора банков".</div> </li><li> -<div style="MARGIN-LEFT: 0px">В карточку банка может загружаться не вся информация. Поля <strong>Адрес</strong> и <strong>Телефоны</strong> не заполняются, если классификатор загружается с сайта РБК.</div> +<div style="MARGIN-LEFT: 0px">В карточку банка может загружаться не вся информация. Поля <strong>Адрес</strong> и <strong>Телефоны</strong> не заполняются, если классификатор загружается с сайта 1С.</div> </li><li> -<div style="MARGIN-LEFT: 0px">При повторной загрузке перезаписываются только измененные сведения классификатора. При этом если был изменен БИК банка, то будет создана новая запись о банке. Если были изменены другие поля, то они при повторной загрузке будут перезаписаны (кроме полей <strong>Адрес</strong> и <strong>Телефоны</strong> в случае, когда классификатор перезагружается с сайта РБК).</div></li></ul><h3 style="MARGIN-LEFT: 0px">Ввод банка</h3> +<div style="MARGIN-LEFT: 0px">При повторной загрузке перезаписываются только измененные сведения классификатора. При этом если был изменен БИК банка, то будет создана новая запись о банке. Если были изменены другие поля, то они при повторной загрузке будут перезаписаны (кроме полей <strong>Адрес</strong> и <strong>Телефоны</strong> в случае, когда классификатор перезагружается с сайта 1С).</div></li></ul><h3 style="MARGIN-LEFT: 0px">Ввод банка</h3> <ul><li> <div style="MARGIN-LEFT: 0px">При необходимости можно ввести банк, нажав <strong>Создать</strong>. Заполните необходимые <a href="Catalog.КлассификаторБанковРФ.Form.ФормаЭлемента/Help">параметры</a>.</div></li></ul><h3 style="MARGIN-LEFT: 0px">См. также:</h3> <ul><li> diff --git a/SSL/src/Catalogs/КлючевыеОперации/Forms/ФормаВыбора/Module.bsl b/SSL/src/Catalogs/КлючевыеОперации/Forms/ФормаВыбора/Module.bsl index c764065ca..afb417a4b 100644 --- a/SSL/src/Catalogs/КлючевыеОперации/Forms/ФормаВыбора/Module.bsl +++ b/SSL/src/Catalogs/КлючевыеОперации/Forms/ФормаВыбора/Module.bsl @@ -7,13 +7,13 @@ Возврат; КонецЕсли; - ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора( + ОценкаПроизводительностиКлиентСервер.УстановитьЭлементОтбора( Список.Отбор, "Ссылка", Параметры.Отбор, ВидСравненияКомпоновкиДанных.НеВСписке); - ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора( + ОценкаПроизводительностиКлиентСервер.УстановитьЭлементОтбора( Список.Отбор, "ПометкаУдаления", Ложь, diff --git a/SSL/src/Catalogs/КлючевыеОперации/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/КлючевыеОперации/Forms/ФормаСписка/Module.bsl index c1d3f5eeb..be15a3be0 100644 --- a/SSL/src/Catalogs/КлючевыеОперации/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/КлючевыеОперации/Forms/ФормаСписка/Module.bsl @@ -10,7 +10,7 @@ ЭлементОбщаяПроизводительность = ОценкаПроизводительностиСлужебный.ПолучитьЭлементОбщаяПроизводительностьСистемы(); Если ЗначениеЗаполнено(ЭлементОбщаяПроизводительность) Тогда - ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( + ОценкаПроизводительностиКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( Список, "Ссылка", ЭлементОбщаяПроизводительность, ВидСравненияКомпоновкиДанных.НеРавно, , , РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный); diff --git a/SSL/src/Catalogs/КлючевыеОперации/Forms/ФормаЭлемента/Help/ru.html b/SSL/src/Catalogs/КлючевыеОперации/Forms/ФормаЭлемента/Help/ru.html index c6fb590a9..40a50e93b 100644 --- a/SSL/src/Catalogs/КлючевыеОперации/Forms/ФормаЭлемента/Help/ru.html +++ b/SSL/src/Catalogs/КлючевыеОперации/Forms/ФормаЭлемента/Help/ru.html @@ -7,5 +7,5 @@ </li><li><strong>Целевое время</strong> - напишите время в секундах. Поле является обязательным; </li><li><strong>Минимально допустимый уровень</strong> - выберите из списка, например, <strong>Удовлетворительно</strong>.</li></ul><p>Выбранные параметры ключевых операций будут применены при замерах производительности.</p> <h3>Контроль замеров времени</h3> -<ul><li>В ходе <a href="DataProcessor.ОценкаПроизводительности/Help">оценки производительности</a> работы программы производятся <a href="InformationRegister.ЗамерыВремени/Help">замеры времени</a> по каждой ключевой операции. Для просмотра истории замеров по каждой ключевой операции нажмите <strong>Замеры времени</strong> на панели навигации.</li></ul><h3>См. также:</h3> +<ul><li>В ходе <a href="DataProcessor.ОценкаПроизводительности/Help">оценки производительности</a> работы программы производятся <a href="InformationRegister.УдалитьЗамерыВремени2/Help">замеры времени</a> по каждой ключевой операции. Для просмотра истории замеров по каждой ключевой операции нажмите <strong>Замеры времени</strong> на панели навигации.</li></ul><h3>См. также:</h3> <ul><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html> \ No newline at end of file diff --git a/SSL/src/Catalogs/КлючевыеОперации/Help/ru.html b/SSL/src/Catalogs/КлючевыеОперации/Help/ru.html index 37ad28175..c3496b010 100644 --- a/SSL/src/Catalogs/КлючевыеОперации/Help/ru.html +++ b/SSL/src/Catalogs/КлючевыеОперации/Help/ru.html @@ -6,7 +6,7 @@ <ul><li><strong>Наименование</strong> - полное наименование операции; </li><li><strong>Приоритет</strong> - целое число, при этом приоритет не должен повторяться; </li><li><strong>Целевое время</strong> - время, затраченное на операцию в секундах; -</li><li><strong>Минимально допустимый уровень</strong> - для сравнения взяты оценки по apdex в цифровом выражении, например, <strong>Удовлетворительно</strong> (<strong>apdex > = 0.75</strong>).</li></ul><p>Выбранные параметры ключевых операций будут применены при <a href="InformationRegister.ЗамерыВремени/Help">замерах</a> производительности.</p> +</li><li><strong>Минимально допустимый уровень</strong> - для сравнения взяты оценки по apdex в цифровом выражении, например, <strong>Удовлетворительно</strong> (<strong>apdex > = 0.75</strong>).</li></ul><p>Выбранные параметры ключевых операций будут применены при <a href="InformationRegister.УдалитьЗамерыВремени2/Help">замерах</a> производительности.</p> <h3>Заполнение сведений о ключевых операциях</h3> <ul><li>Выделите имеющиеся в списке ключевую операцию, нажмите <strong>Еще - Изменить</strong> и заполните необходимые <a href="Catalog.КлючевыеОперации.Form.ФормаЭлемента/Help">поля</a>. </li><li>Также можно воспользоваться двойным щелчком мыши.</li></ul><h3>Ввод новой ключевой операции</h3> diff --git a/SSL/src/Catalogs/КлючевыеОперации/ObjectModule.bsl b/SSL/src/Catalogs/КлючевыеОперации/ObjectModule.bsl index 1f8db00bb..b44c6848d 100644 --- a/SSL/src/Catalogs/КлючевыеОперации/ObjectModule.bsl +++ b/SSL/src/Catalogs/КлючевыеОперации/ObjectModule.bsl @@ -58,7 +58,7 @@ "Справочник.КлючевыеОперации.МодульОбъекта.ПередЗаписью", УровеньЖурналаРегистрации.Ошибка, ТекстСообщения); - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения); + ОценкаПроизводительностиКлиентСервер.СообщитьПользователю(ТекстСообщения); Отказ = Истина; КонецЕсли; diff --git a/SSL/src/Catalogs/КлючевыеОперации/КлючевыеОперации.mdo b/SSL/src/Catalogs/КлючевыеОперации/КлючевыеОперации.mdo index f02a42c76..5dae38b50 100644 --- a/SSL/src/Catalogs/КлючевыеОперации/КлючевыеОперации.mdo +++ b/SSL/src/Catalogs/КлючевыеОперации/КлючевыеОперации.mdo @@ -241,6 +241,25 @@ <fullTextSearch>Use</fullTextSearch> <dataHistory>Use</dataHistory> </attributes> + <attributes uuid="3f023afb-c02a-42ee-9afe-0f47ef3fe721"> + <name>ВыполненаСОшибкой</name> + <synonym> + <key>ru</key> + <value>Выполнена с ошибкой</value> + </synonym> + <type> + <types>Boolean</types> + </type> + <toolTip> + <key>ru</key> + <value>Свойство ключевой операции замера, служит для разделения выполнения замеров</value> + </toolTip> + <minValue xsi:type="core:UndefinedValue"/> + <maxValue xsi:type="core:UndefinedValue"/> + <fillValue xsi:type="core:UndefinedValue"/> + <indexing>Index</indexing> + <dataHistory>Use</dataHistory> + </attributes> <forms uuid="085a08f3-9d93-429d-9b1b-9065ab8363f7"> <name>ФормаЭлемента</name> <synonym> diff --git a/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Commands/ДополнительныеРеквизиты/CommandModule.bsl b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Commands/ДополнительныеРеквизиты/CommandModule.bsl new file mode 100644 index 000000000..ed33b7192 --- /dev/null +++ b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Commands/ДополнительныеРеквизиты/CommandModule.bsl @@ -0,0 +1,15 @@ +#Область ОбработчикиСобытий + +&НаКлиенте +Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("ПоказатьДополнительныеРеквизиты"); + ОткрытьФорму("Справочник.НаборыДополнительныхРеквизитовИСведений.ФормаСписка", + ПараметрыФормы, + ПараметрыВыполненияКоманды.Источник, + "ДополнительныеРеквизиты", + ПараметрыВыполненияКоманды.Окно, + ПараметрыВыполненияКоманды.НавигационнаяСсылка); +КонецПроцедуры + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Commands/ДополнительныеСведения/CommandModule.bsl b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Commands/ДополнительныеСведения/CommandModule.bsl new file mode 100644 index 000000000..b56eb164f --- /dev/null +++ b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Commands/ДополнительныеСведения/CommandModule.bsl @@ -0,0 +1,15 @@ +#Область ОбработчикиСобытий + +&НаКлиенте +Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("ПоказатьДополнительныеСведения"); + ОткрытьФорму("Справочник.НаборыДополнительныхРеквизитовИСведений.ФормаСписка", + ПараметрыФормы, + ПараметрыВыполненияКоманды.Источник, + "ДополнительныеСведения", + ПараметрыВыполненияКоманды.Окно, + ПараметрыВыполненияКоманды.НавигационнаяСсылка); +КонецПроцедуры + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаВыбора/Form.form b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаВыбора/Form.form index 4996136dc..d2386a8f8 100644 --- a/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаВыбора/Form.form +++ b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаВыбора/Form.form @@ -233,7 +233,6 @@ <id>-1</id> <horizontalAlign>Left</horizontalAlign> </autoCommandBar> - <width>50</width> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoTitle>true</autoTitle> diff --git a/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаСписка/Form.form index d88258a9e..bc83d2e29 100644 --- a/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаСписка/Form.form @@ -845,7 +845,6 @@ </contextMenu> <representation>Tree</representation> <readOnly>true</readOnly> - <width>30</width> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <autoMaxRowsCount>true</autoMaxRowsCount> @@ -1529,7 +1528,6 @@ </contextMenu> <changeRowSet>true</changeRowSet> <changeRowOrder>true</changeRowOrder> - <width>70</width> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <autoMaxRowsCount>true</autoMaxRowsCount> diff --git a/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаСписка/Module.bsl index e00c5fab4..8fb28b97b 100644 --- a/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаСписка/Module.bsl @@ -716,6 +716,9 @@ Элементы.СвойстваКонтекстноеМенюИзменить.Доступность = ДоступностьДляСтроки; Элементы.СвойстваКонтекстноеМенюПометитьНаУдаление.Доступность = ДоступностьДляСтроки; + Элементы.СвойстваКонтекстноеМенюКопироватьРеквизит.Доступность = ДоступностьДляСтроки; + Элементы.СвойстваКонтекстноеМенюВставитьРеквизит.Доступность = ДоступностьВставки; + КонецПроцедуры &НаСервере diff --git a/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаЭлемента/Form.form index bceae06bd..70e65e896 100644 --- a/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Forms/ФормаЭлемента/Form.form @@ -507,7 +507,6 @@ </handlers> <excludedCommands>Copy</excludedCommands> <excludedCommands>Delete</excludedCommands> - <width>80</width> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoUrl>true</autoUrl> diff --git a/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Help/ru.html b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Help/ru.html index 4e206ba10..d3431c3d9 100644 --- a/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Help/ru.html +++ b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/Help/ru.html @@ -9,7 +9,7 @@ <p>Список наборов дополнительных реквизитов можно также открыть из объектов программы, для которых они настроены, по команде <strong>Еще</strong> <strong>- Изменить состав дополнительных реквизитов</strong>. </p> <p>Список наборов дополнительных сведений можно также открыть по команде <strong>Еще</strong> - <strong>Изменить состав дополнительных </strong><strong>сведений</strong> из окна <a href="CommonForm.РедактированиеДополнительныхСведений/Help">Дополнительные сведения</a> объекта программы.  </p> <p>Список <strong>Дополнительные реквизиты</strong> (<strong>сведения</strong>) представляет собой таблицу из двух частей: </p> -<ul><li>В левой части располагаются наборы дополнительных реквизитов и сведений, назначенных справочникам или документам, которые показаны в виде групп. Если в справочнике имеются группы, то наборы дополнительных реквизитов и сведений соответствуют группам справочника. +<ul><li>В левой части располагаются наборы дополнительных реквизитов и сведений, назначенных справочникам или документам, которые показаны в виде групп. Группы в наборах дополнительных реквизитов и сведений соответствуют некоему состоянию объекта (его виду), например, для номенклатуры наборы по имени соответствуют видам номенклатуры. </li><li>В правой части в виде таблицы располагается список дополнительных реквизитов (сведений), входящих в выделенный набор. Жирным шрифтом в списке дополнительных реквизитов отражаются реквизиты, обязательные для заполнения. Для дополнительных сведений такая возможность не предусмотрена. </li><li>В таблице выводится:  <ul><li><strong>Дополнительный реквизит</strong> (<strong>сведение</strong>) - включает перечень наименований дополнительных реквизитов (сведений); diff --git a/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/НаборыДополнительныхРеквизитовИСведений.mdo b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/НаборыДополнительныхРеквизитовИСведений.mdo index c6906a2e7..da1f4cf11 100644 --- a/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/НаборыДополнительныхРеквизитовИСведений.mdo +++ b/SSL/src/Catalogs/НаборыДополнительныхРеквизитовИСведений/НаборыДополнительныхРеквизитовИСведений.mdo @@ -12,7 +12,6 @@ <key>ru</key> <value>Наборы дополнительных реквизитов и сведений</value> </synonym> - <useStandardCommands>true</useStandardCommands> <inputByString>Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description</inputByString> <fullTextSearchOnInputByString>DontUse</fullTextSearchOnInputByString> <standardAttributes> @@ -430,4 +429,22 @@ <usePurposes>PersonalComputer</usePurposes> <usePurposes>MobileDevice</usePurposes> </forms> + <commands uuid="2a6e1f2b-7378-456b-9657-9e971eaff716"> + <name>ДополнительныеРеквизиты</name> + <synonym> + <key>ru</key> + <value>Дополнительные реквизиты</value> + </synonym> + <group>NavigationPanelOrdinary</group> + <representation>Auto</representation> + </commands> + <commands uuid="c3cdea20-3055-4b4e-a531-a02d4f3ed294"> + <name>ДополнительныеСведения</name> + <synonym> + <key>ru</key> + <value>Дополнительные сведения</value> + </synonym> + <group>NavigationPanelOrdinary</group> + <representation>Auto</representation> + </commands> </mdclass:Catalog> diff --git a/SSL/src/Catalogs/Организации/Commands/ДобавитьОрганизацию/CommandModule.bsl b/SSL/src/Catalogs/Организации/Commands/ДобавитьОрганизацию/CommandModule.bsl deleted file mode 100644 index 597dd7c98..000000000 --- a/SSL/src/Catalogs/Организации/Commands/ДобавитьОрганизацию/CommandModule.bsl +++ /dev/null @@ -1,11 +0,0 @@ - -#Область ОбработчикиСобытий - -&НаКлиенте -Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) - - ОткрытьФорму("Справочник.Организации.ФормаОбъекта"); - -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/Catalogs/Организации/Commands/Организации/CommandModule.bsl b/SSL/src/Catalogs/Организации/Commands/Организации/CommandModule.bsl deleted file mode 100644 index 083d49ada..000000000 --- a/SSL/src/Catalogs/Организации/Commands/Организации/CommandModule.bsl +++ /dev/null @@ -1,16 +0,0 @@ - -#Область ОбработчикиСобытий - -&НаКлиенте -Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) - - ОткрытьФорму( - "Справочник.Организации.ФормаСписка", - , - ПараметрыВыполненияКоманды.Источник, - ПараметрыВыполненияКоманды.Уникальность, - ПараметрыВыполненияКоманды.Окно); - -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/Catalogs/Организации/Commands/РеквизитыОрганизации/CommandModule.bsl b/SSL/src/Catalogs/Организации/Commands/РеквизитыОрганизации/CommandModule.bsl deleted file mode 100644 index 820cd09b8..000000000 --- a/SSL/src/Catalogs/Организации/Commands/РеквизитыОрганизации/CommandModule.bsl +++ /dev/null @@ -1,22 +0,0 @@ - -#Область ОбработчикиСобытий - -&НаКлиенте -Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) - - ОткрытьФорму("Справочник.Организации.ФормаОбъекта", ПараметрыОткрытияФормы()); - -КонецПроцедуры - -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -&НаСервере -Функция ПараметрыОткрытияФормы() - - Возврат Новый Структура("Ключ", Справочники.Организации.ОрганизацияПоУмолчанию()); - -КонецФункции - -#КонецОбласти diff --git a/SSL/src/Catalogs/Организации/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/Организации/Forms/ФормаЭлемента/Form.form deleted file mode 100644 index 676ed4d8f..000000000 --- a/SSL/src/Catalogs/Организации/Forms/ФормаЭлемента/Form.form +++ /dev/null @@ -1,287 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:form="http://g5.1c.ru/v8/dt/form"> - <items xsi:type="form:FormField"> - <name>Код</name> - <id>1</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <dataPath xsi:type="form:DataPath"> - <segments>Объект.Code</segments> - </dataPath> - <extendedTooltip> - <name>КодExtendedTooltip</name> - <id>11</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>КодКонтекстноеМеню</name> - <id>2</id> - <autoFill>true</autoFill> - </contextMenu> - <type>InputField</type> - <editMode>Enter</editMode> - <showInHeader>true</showInHeader> - <headerHorizontalAlign>Left</headerHorizontalAlign> - <showInFooter>true</showInFooter> - <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <chooseType>true</chooseType> - <typeDomainEnabled>true</typeDomainEnabled> - <textEdit>true</textEdit> - <textSize>Normal</textSize> - </extInfo> - </items> - <items xsi:type="form:FormGroup"> - <name>ОсновнаяГруппировка</name> - <id>10</id> - <items xsi:type="form:FormField"> - <name>Наименование</name> - <id>3</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <dataPath xsi:type="form:DataPath"> - <segments>Объект.Description</segments> - </dataPath> - <extendedTooltip> - <name>НаименованиеExtendedTooltip</name> - <id>13</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>НаименованиеКонтекстноеМеню</name> - <id>4</id> - <autoFill>true</autoFill> - </contextMenu> - <type>InputField</type> - <editMode>Enter</editMode> - <showInHeader>true</showInHeader> - <headerHorizontalAlign>Left</headerHorizontalAlign> - <showInFooter>true</showInFooter> - <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <chooseType>true</chooseType> - <typeDomainEnabled>true</typeDomainEnabled> - <textEdit>true</textEdit> - <textSize>Normal</textSize> - </extInfo> - </items> - <items xsi:type="form:FormField"> - <name>Префикс</name> - <id>6</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <dataPath xsi:type="form:DataPath"> - <segments>Объект.Префикс</segments> - </dataPath> - <handlers> - <event>OnChange</event> - <name>ПрефиксПриИзменении</name> - </handlers> - <extendedTooltip> - <name>ПрефиксExtendedTooltip</name> - <id>14</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>ПрефиксКонтекстноеМеню</name> - <id>7</id> - <autoFill>true</autoFill> - </contextMenu> - <type>InputField</type> - <editMode>Enter</editMode> - <showInHeader>true</showInHeader> - <headerHorizontalAlign>Left</headerHorizontalAlign> - <showInFooter>true</showInFooter> - <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <chooseType>true</chooseType> - <typeDomainEnabled>true</typeDomainEnabled> - <textEdit>true</textEdit> - <textSize>Normal</textSize> - </extInfo> - </items> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <title> - <key>ru</key> - <value>Основная группировка</value> - - - ru - Основная группировка - - - ОсновнаяГруппировкаExtendedTooltip - 12 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаКонтактнаяИнформация - 5 - true - true - - true - - - <key>ru</key> - <value>Адреса, телефоны</value> - - - ru - Группа контактная информация - - - ГруппаКонтактнаяИнформацияExtendedTooltip - 15 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - WeakSeparation - true - true - auto - Auto - Auto - - - - ФормаКоманднаяПанель - -1 - Left - true - - - OnCreateAtServer - ПриСозданииНаСервере - - - FillCheckProcessingAtServer - ОбработкаПроверкиЗаполненияНаСервере - - DontBlock - true - true - true - Vertical - true - true - true - auto - true - - Объект - 1 - - CatalogObject.Организации - - - true - - - true - -
      true
      - true -
      - - ОбновитьИнтерфейс - - <key>ru</key> - <value>Обновить интерфейс</value> - - 2 - - Boolean - - - true - - - true - - - - - - 0 - FormNavigationPanelGoTo - 0 - - - - 0 - FormNavigationPanelGoTo - 1 - - - - - - - - AfterWrite - ПослеЗаписи - - - OnReadAtServer - ПриЧтенииНаСервере - - - BeforeWriteAtServer - ПередЗаписьюНаСервере - - - diff --git a/SSL/src/Catalogs/Организации/Forms/ФормаЭлемента/Help/ru.html b/SSL/src/Catalogs/Организации/Forms/ФормаЭлемента/Help/ru.html deleted file mode 100644 index 445782a30..000000000 --- a/SSL/src/Catalogs/Организации/Forms/ФормаЭлемента/Help/ru.html +++ /dev/null @@ -1,11 +0,0 @@ - -

      Описание свойств организации.

      -

      Заполните сведения об организации:

      -
      • Наименование - название организации, которое будет использоваться в программе при выборе организации. -
      • Префикс - уникальный префикс, который будет автоматически добавляться программой в начало номера (или кода) при вводе новых документов (элементов списков). Элементы списков, документы и другие объекты программы нумеруются последовательно. Для того чтобы документы по различным организациям отличались по номерам, а элементы списков - по кодам, используется префикс.

      Если в программе используется список Виды контактной информации, то для организации будут доступны предопределенные реквизиты для хранения контактной информации:

      -
      • Поля Почтовый, Юридический, Фактический адрес можно заполнить вручную или по шаблону (только для российских адресов, при этом для ввода по шаблону необходимо загрузить адресный классификатор). Для заполнения по шаблону нажмите Выбрать, заполните адрес, нажмите ОК. Если адреса повторяются, то можно заполнить один из адресов, затем с помощью кнопки  скопировать его в остальные адресные поля. -
      • Поля Телефон и Факс можно ввести вручную или по шаблону; -
      • В поле E-mail введите адрес электронной почты организации. Программа проверяет правильность ввода. С помощью кнопки  можно отправить по введенному адресу исходящее электронное письмо. -
      •  В текстовое поле Другое длиной 1024 символа можно ввести какую-либо дополнительную информацию об организации, например, как добраться до офиса, в котором она находится.

      См. также:

      - \ No newline at end of file diff --git a/SSL/src/Catalogs/Организации/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/Организации/Forms/ФормаЭлемента/Module.bsl deleted file mode 100644 index 6fd6af299..000000000 --- a/SSL/src/Catalogs/Организации/Forms/ФормаЭлемента/Module.bsl +++ /dev/null @@ -1,135 +0,0 @@ - -#Область ОбработчикиСобытийФормы - -&НаСервере -Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - - Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. - Возврат; - КонецЕсли; - - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда - МодульУправлениеКонтактнойИнформацией = ОбщегоНазначения.ОбщийМодуль("УправлениеКонтактнойИнформацией"); - МодульУправлениеКонтактнойИнформацией.ПриСозданииНаСервере(ЭтотОбъект, Объект, "ГруппаКонтактнаяИнформация"); - КонецЕсли; - - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда - МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью"); - МодульУправлениеПечатью.ПриСозданииНаСервере(ЭтотОбъект); - КонецЕсли; - -КонецПроцедуры - -&НаСервере -Процедура ПриЧтенииНаСервере(ТекущийОбъект) - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда - МодульУправлениеКонтактнойИнформацией = ОбщегоНазначения.ОбщийМодуль("УправлениеКонтактнойИнформацией"); - МодульУправлениеКонтактнойИнформацией.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект); - КонецЕсли; -КонецПроцедуры - -&НаСервере -Процедура ОбработкаПроверкиЗаполненияНаСервере(Отказ, ПроверяемыеРеквизиты) - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда - МодульУправлениеКонтактнойИнформацией = ОбщегоНазначения.ОбщийМодуль("УправлениеКонтактнойИнформацией"); - МодульУправлениеКонтактнойИнформацией.ОбработкаПроверкиЗаполненияНаСервере(ЭтотОбъект, Объект, Отказ); - КонецЕсли; -КонецПроцедуры - -&НаСервере -Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда - МодульУправлениеКонтактнойИнформацией = ОбщегоНазначения.ОбщийМодуль("УправлениеКонтактнойИнформацией"); - МодульУправлениеКонтактнойИнформацией.ПередЗаписьюНаСервере(ЭтотОбъект, ТекущийОбъект); - КонецЕсли; - ОбновитьИнтерфейс = ТекущийОбъект.ЭтоНовый() И НЕ ПолучитьФункциональнуюОпцию("ИспользоватьНесколькоОрганизаций"); -КонецПроцедуры - -&НаКлиенте -Процедура ПослеЗаписи(ПараметрыЗаписи) - - Если ОбновитьИнтерфейс Тогда - ОбновитьИнтерфейс(); - КонецЕсли; - -КонецПроцедуры - -#КонецОбласти - -#Область ОбработчикиСобытийЭлементовШапкиФормы - -&НаКлиенте -Процедура ПрефиксПриИзменении(Элемент) - Если СтрНайти(Объект.Префикс, "-") > 0 Тогда - ПоказатьПредупреждение(Неопределено, НСтр("ru = 'Нельзя в префиксе организации использовать символ ""-"".'")); - Объект.Префикс = СтрЗаменить(Объект.Префикс, "-", ""); - КонецЕсли; -КонецПроцедуры - -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -// СтандартныеПодсистемы.КонтактнаяИнформация - -&НаКлиенте -Процедура Подключаемый_КонтактнаяИнформацияПриИзменении(Элемент) - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда - МодульУправлениеКонтактнойИнформациейКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("УправлениеКонтактнойИнформациейКлиент"); - МодульУправлениеКонтактнойИнформациейКлиент.ПриИзменении(ЭтотОбъект, Элемент); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_КонтактнаяИнформацияНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда - МодульУправлениеКонтактнойИнформациейКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("УправлениеКонтактнойИнформациейКлиент"); - МодульУправлениеКонтактнойИнформациейКлиент.НачалоВыбора(ЭтотОбъект, Элемент, , СтандартнаяОбработка); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_КонтактнаяИнформацияПриНажатии(Элемент, СтандартнаяОбработка) - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда - МодульУправлениеКонтактнойИнформациейКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("УправлениеКонтактнойИнформациейКлиент"); - МодульУправлениеКонтактнойИнформациейКлиент.НачалоВыбора(ЭтотОбъект, Элемент,, СтандартнаяОбработка); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_КонтактнаяИнформацияОчистка(Элемент, СтандартнаяОбработка) - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда - МодульУправлениеКонтактнойИнформациейКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("УправлениеКонтактнойИнформациейКлиент"); - МодульУправлениеКонтактнойИнформациейКлиент.Очистка(ЭтотОбъект, Элемент.Имя); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_КонтактнаяИнформацияВыполнитьКоманду(Команда) - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда - МодульУправлениеКонтактнойИнформациейКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("УправлениеКонтактнойИнформациейКлиент"); - МодульУправлениеКонтактнойИнформациейКлиент.ВыполнитьКоманду(ЭтотОбъект, Команда.Имя); - КонецЕсли; -КонецПроцедуры - -&НаСервере -Процедура Подключаемый_ОбновитьКонтактнуюИнформацию(Результат) - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда - МодульУправлениеКонтактнойИнформацией = ОбщегоНазначения.ОбщийМодуль("УправлениеКонтактнойИнформацией"); - МодульУправлениеКонтактнойИнформацией.ОбновитьКонтактнуюИнформацию(ЭтотОбъект, Объект, Результат); - КонецЕсли; -КонецПроцедуры - -// Конец СтандартныеПодсистемы.КонтактнаяИнформация - -&НаКлиенте -Процедура Подключаемый_ВыполнитьКомандуПечати(Команда) - - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда - МодульУправлениеПечатьюКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("УправлениеПечатьюКлиент"); - МодульУправлениеПечатьюКлиент.ВыполнитьПодключаемуюКомандуПечати(Команда, ЭтотОбъект, Объект); - КонецЕсли; - -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/Catalogs/Организации/Help/ru.html b/SSL/src/Catalogs/Организации/Help/ru.html deleted file mode 100644 index a9fec0ace..000000000 --- a/SSL/src/Catalogs/Организации/Help/ru.html +++ /dev/null @@ -1,10 +0,0 @@ - -

      Предназначен для описания формальной структуры предприятия, которая может состоять из нескольких хозяйствующих субъектов, фактически принадлежащих одному и тому же собственнику (группе собственников), и которые действуют согласованно в целях увеличения прибыли.

      -

      Открывается по команде Организации в разделе Справочники.

      -

      В списке выводится:

      -
      • Наименование - полное наименование организации; -
      • Код - присваивается программой автоматически; -
      • Префикс - для каждой организации при вводе задается уникальный префикс, который будет автоматически добавляться программой в начало номера (или кода) при вводе новых документов (элементов списков), для того чтобы документы по различным организациям отличались по номерам, а элементы списков - по кодам.

      Ввод новой организации

      -
      • Нажмите Создать, заполните необходимые поля.

      См. также:

      - \ No newline at end of file diff --git a/SSL/src/Catalogs/Организации/ManagerModule.bsl b/SSL/src/Catalogs/Организации/ManagerModule.bsl deleted file mode 100644 index b98077f2c..000000000 --- a/SSL/src/Catalogs/Организации/ManagerModule.bsl +++ /dev/null @@ -1,184 +0,0 @@ -#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда - -#Область ПрограммныйИнтерфейс - -//////////////////////////////////////////////////////////////////////////////// -// Групповое изменение объектов. - -// Возвращает реквизиты объекта, которые не рекомендуется редактировать -// с помощью обработки группового изменения реквизитов. -// -// Возвращаемое значение: -// Массив - список имен реквизитов объекта. -Функция РеквизитыНеРедактируемыеВГрупповойОбработке() Экспорт - - Результат = Новый Массив; - - Результат.Добавить("Префикс"); - Результат.Добавить("КонтактнаяИнформация.*"); - - Возврат Результат -КонецФункции - -//////////////////////////////////////////////////////////////////////////////// -// Использование нескольких организаций. - -// Возвращает организацию по умолчанию. -// Если в ИБ есть только одна организация, которая не помечена на удаление и не является предопределенной, -// то будет возвращена ссылка на нее, иначе будет возвращена пустая ссылка. -// -// Возвращаемое значение: -// СправочникСсылка.Организации - ссылка на организацию. -// -Функция ОрганизацияПоУмолчанию() Экспорт - - Организация = Справочники.Организации.ПустаяСсылка(); - - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 2 - | Организации.Ссылка КАК Организация - |ИЗ - | Справочник.Организации КАК Организации - |ГДЕ - | НЕ Организации.ПометкаУдаления - | И НЕ Организации.Предопределенный"; - - Выборка = Запрос.Выполнить().Выбрать(); - Если Выборка.Следующий() И Выборка.Количество() = 1 Тогда - Организация = Выборка.Организация; - КонецЕсли; - - Возврат Организация; - -КонецФункции - -// Возвращает количество элементов справочника Организации. -// Не учитывает предопределенные и помеченные на удаление элементы. -// -// Возвращаемое значение: -// Число - количество организаций. -// -Функция КоличествоОрганизаций() Экспорт - - УстановитьПривилегированныйРежим(Истина); - - Количество = 0; - - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | КОЛИЧЕСТВО(*) КАК Количество - |ИЗ - | Справочник.Организации КАК Организации - |ГДЕ - | НЕ Организации.Предопределенный - | И НЕ Организации.ПометкаУдаления"; - - Выборка = Запрос.Выполнить().Выбрать(); - Если Выборка.Следующий() Тогда - Количество = Выборка.Количество; - КонецЕсли; - - УстановитьПривилегированныйРежим(Ложь); - - Возврат Количество; - -КонецФункции - -// Заполняет список команд печати. -// -// Параметры: -// КомандыПечати - ТаблицаЗначений - состав полей см. в функции УправлениеПечатью.СоздатьКоллекциюКомандПечати. -// -Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт - - - -КонецПроцедуры - -#КонецОбласти - -#Область СлужебныйПрограммныйИнтерфейс - -// Вызывается при переходе на версию конфигурации 2.1.3.16. -// -Процедура ОбновитьПредопределенныеВидыКонтактнойИнформацииОрганизаций() Экспорт - - Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда - Возврат; - КонецЕсли; - - МодульУправлениеКонтактнойИнформацией = ОбщегоНазначения.ОбщийМодуль("УправлениеКонтактнойИнформацией"); - - ПараметрыВида = МодульУправлениеКонтактнойИнформацией.ПараметрыВидаКонтактнойИнформации("Адрес"); - ПараметрыВида.Вид = "ЮрАдресОрганизации"; - ПараметрыВида.Подсказка = НСтр("ru='Юридический адрес организации'"); - ПараметрыВида.МожноИзменятьСпособРедактирования = Истина; - ПараметрыВида.Порядок = 1; - ПараметрыВида.НастройкиПроверки.АдресТолькоРоссийский = Истина; - МодульУправлениеКонтактнойИнформацией.УстановитьСвойстваВидаКонтактнойИнформации(ПараметрыВида); - - ПараметрыВида = МодульУправлениеКонтактнойИнформацией.ПараметрыВидаКонтактнойИнформации("Адрес"); - ПараметрыВида.Вид = "ФактАдресОрганизации"; - ПараметрыВида.Подсказка = НСтр("ru='Фактический адрес организации'"); - ПараметрыВида.МожноИзменятьСпособРедактирования = Истина; - ПараметрыВида.Порядок = 2; - МодульУправлениеКонтактнойИнформацией.УстановитьСвойстваВидаКонтактнойИнформации(ПараметрыВида); - - ПараметрыВида = МодульУправлениеКонтактнойИнформацией.ПараметрыВидаКонтактнойИнформации("Телефон"); - ПараметрыВида.Вид = "ТелефонОрганизации"; - ПараметрыВида.Подсказка = НСтр("ru='Телефон организации'"); - ПараметрыВида.МожноИзменятьСпособРедактирования = Истина; - ПараметрыВида.РазрешитьВводНесколькихЗначений = Истина; - ПараметрыВида.Порядок = 3; - МодульУправлениеКонтактнойИнформацией.УстановитьСвойстваВидаКонтактнойИнформации(ПараметрыВида); - - ПараметрыВида = МодульУправлениеКонтактнойИнформацией.ПараметрыВидаКонтактнойИнформации("Факс"); - ПараметрыВида.Вид = "ФаксОрганизации"; - ПараметрыВида.Подсказка = НСтр("ru='Факс организации'"); - ПараметрыВида.МожноИзменятьСпособРедактирования = Истина; - ПараметрыВида.РазрешитьВводНесколькихЗначений = Истина; - ПараметрыВида.Порядок = 4; - МодульУправлениеКонтактнойИнформацией.УстановитьСвойстваВидаКонтактнойИнформации(ПараметрыВида); - - ПараметрыВида = МодульУправлениеКонтактнойИнформацией.ПараметрыВидаКонтактнойИнформации("АдресЭлектроннойПочты"); - ПараметрыВида.Вид = "EmailОрганизации"; - ПараметрыВида.Подсказка = НСтр("ru='Адрес электронной почты организации'"); - ПараметрыВида.МожноИзменятьСпособРедактирования = Истина; - ПараметрыВида.РазрешитьВводНесколькихЗначений = Истина; - ПараметрыВида.Порядок = 5; - МодульУправлениеКонтактнойИнформацией.УстановитьСвойстваВидаКонтактнойИнформации(ПараметрыВида); - - ПараметрыВида = МодульУправлениеКонтактнойИнформацией.ПараметрыВидаКонтактнойИнформации("Адрес"); - ПараметрыВида.Вид = "ПочтовыйАдресОрганизации"; - ПараметрыВида.Подсказка = НСтр("ru='Почтовый адрес организации'"); - ПараметрыВида.МожноИзменятьСпособРедактирования = Истина; - ПараметрыВида.Порядок = 6; - МодульУправлениеКонтактнойИнформацией.УстановитьСвойстваВидаКонтактнойИнформации(ПараметрыВида); - - ПараметрыВида = МодульУправлениеКонтактнойИнформацией.ПараметрыВидаКонтактнойИнформации("Другое"); - ПараметрыВида.Вид = "ДругаяИнформацияОрганизации"; - ПараметрыВида.Подсказка = НСтр("ru='Любая другая контактная информация'"); - ПараметрыВида.МожноИзменятьСпособРедактирования = Истина; - ПараметрыВида.Порядок = 7; - МодульУправлениеКонтактнойИнформацией.УстановитьСвойстваВидаКонтактнойИнформации(ПараметрыВида); - -КонецПроцедуры - -// Вызывается при переходе на версию БСП 2.2.1.12. -// -Процедура ЗаполнитьКонстантуИспользоватьНесколькоОрганизаций() Экспорт - - Если ПолучитьФункциональнуюОпцию("ИспользоватьНесколькоОрганизаций") = - ПолучитьФункциональнуюОпцию("НеИспользоватьНесколькоОрганизаций") Тогда - // Опции должны иметь противоположные значения. - // Если это не так, то значит в ИБ раньше не было этих опций - инициализируем их значения. - Константы.ИспользоватьНесколькоОрганизаций.Установить(КоличествоОрганизаций() > 1); - КонецЕсли; - -КонецПроцедуры - -#КонецОбласти - -#КонецЕсли diff --git a/SSL/src/Catalogs/Организации/Организации.mdo b/SSL/src/Catalogs/Организации/Организации.mdo deleted file mode 100644 index 66e272ac1..000000000 --- a/SSL/src/Catalogs/Организации/Организации.mdo +++ /dev/null @@ -1,494 +0,0 @@ - - - - - - - - - - Организации - - ru - Организации - - Организации - Catalog.Организации.StandardAttribute.Description - Catalog.Организации.StandardAttribute.Code - DontUse - - Use - PredefinedDataName - - Use - - - - - Use - Predefined - - Use - - - - - Use - Ref - - Use - - - - - Use - DeletionMark - - Use - - - - - Use - IsFolder - - Use - - - - - Use - Owner - true - - ShowError - Use - - - - - Use - Parent - true - - Use - - - - - Use - Description - - ru - Наименование организации - - - ShowError - Use - - - - - Use - Code - - ru - Код организации как элемента справочника. - - - Use - - - - - Catalog.ВидыКонтактнойИнформации - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - Catalog.ВидыКонтактнойИнформации.СправочникОрганизации - - -1 - -1 - Catalog.Организации.TabularSection.КонтактнаяИнформация - Catalog.Организации.TabularSection.КонтактнаяИнформация.StandardAttribute.Ref - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ВидДляСписка - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - -1 - -1 - - Use - true - - - ru - - - Managed - Use - - ru - Организация - - 2 - true - 9 - 150 - String - Variable - true - true - AsDescription - InDialog - BothWays - Catalog.Организации.Form.ФормаЭлемента - - Префикс - - ru - Префикс - - - String - - 2 - - - - ru - Используется при нумерации документов. В начало каждого номера документов данной организации добавляется два символа префикса. - - - - - Use - Use - - - - - - - КонтактнаяИнформация - - ru - Контактная информация - - - ru - Хранение контактной информации (адреса, веб-страницы, номера телефонов и др.) - - - Use - LineNumber - - Use - - - - - Тип - - ru - Тип - - - EnumRef.ТипыКонтактнойИнформации - - - ru - Тип контактной информации (телефон, адрес и т.п.) - - - - Use - Index - Use - - - Вид - - ru - Вид - - - CatalogRef.ВидыКонтактнойИнформации - - - ru - Вид контактной информации - - - - Use - Index - Use - - - Представление - - ru - Представление - - - String - - 500 - - - - ru - Представление контактной информации для отображения в формах - - - - Use - Use - - - ЗначенияПолей - - ru - Значения полей - - - String - - - - ru - Служебное поле, для хранения контактной информации - - - - Use - Use - - - Страна - - ru - Страна - - - String - - 100 - - - - ru - Страна (заполняется для адреса) - - - - Use - Use - - - Регион - - ru - Регион - - - String - - 50 - - - - ru - Регион (заполняется для адреса) - - - - Use - Use - - - Город - - ru - Город - - - String - - 50 - - - - ru - Город (заполняется для адреса) - - - - Use - Use - - - АдресЭП - - ru - Адрес ЭП - - - String - - 100 - - - - ru - Адрес электронной почты - - - - Use - Use - - - ДоменноеИмяСервера - - ru - Доменное имя сервера - - - String - - 100 - - - - ru - Доменное имя сервера электронной почты или веб-страницы - - - - Use - Use - - - НомерТелефона - - ru - Номер телефона - - - String - - 20 - - - - ru - Полный номер телефона - - - - Use - Use - - - НомерТелефонаБезКодов - - ru - Номер телефона без кодов - - - String - - 20 - - - - ru - Номер телефона без кодов и добавочного номера - - - - Use - Use - - - ВидДляСписка - - ru - Вид для списка - - - CatalogRef.ВидыКонтактнойИнформации - - - ru - Вид контактной информации для списка - - - - Use - Use - - - ДействуетС - - ru - Действует С - - - Date - - Date - - - - ru - Дата актуальности контактная информация - - - - Use - Use - - - - ФормаЭлемента - - ru - Форма элемента - - - - ru - - - PersonalComputer - MobileDevice - - - РеквизитыОрганизации - - ru - Реквизиты организации - - NavigationPanelOrdinary - Auto - - - ДобавитьОрганизацию - - ru - Добавить организацию - - NavigationPanelOrdinary - Auto - - - Организации - - ru - Организации - - NavigationPanelOrdinary - Auto - - diff --git a/SSL/src/Catalogs/ОчередьЗаданий/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ОчередьЗаданий/Forms/ФормаЭлемента/Form.form index 5f20b8ffb..c0cf0aa5b 100644 --- a/SSL/src/Catalogs/ОчередьЗаданий/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ОчередьЗаданий/Forms/ФормаЭлемента/Form.form @@ -735,6 +735,10 @@ Left true + + BeforeClose + ПередЗакрытием + OnCreateAtServer ПриСозданииНаСервере diff --git a/SSL/src/Catalogs/ОчередьЗаданий/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ОчередьЗаданий/Forms/ФормаЭлемента/Module.bsl index c1dc57c8b..ded738938 100644 --- a/SSL/src/Catalogs/ОчередьЗаданий/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/ОчередьЗаданий/Forms/ФормаЭлемента/Module.bsl @@ -45,6 +45,13 @@ КонецПроцедуры +&НаКлиенте +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) + + РазблокироватьДанныеФормыДляРедактирования(); + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовУправленияФормы diff --git a/SSL/src/Catalogs/ПапкиФайлов/Forms/ФормаВыбора/Form.form b/SSL/src/Catalogs/ПапкиФайлов/Forms/ФормаВыбора/Form.form index aede11958..8168f458c 100644 --- a/SSL/src/Catalogs/ПапкиФайлов/Forms/ФормаВыбора/Form.form +++ b/SSL/src/Catalogs/ПапкиФайлов/Forms/ФормаВыбора/Form.form @@ -16,7 +16,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 12 @@ -252,10 +251,9 @@ true true true - 40 true true - 10 + 7 true true MultiRow diff --git a/SSL/src/Catalogs/ПапкиФайлов/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ПапкиФайлов/Forms/ФормаСписка/Form.form index 287729b35..7f2df1f87 100644 --- a/SSL/src/Catalogs/ПапкиФайлов/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/ПапкиФайлов/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 2 diff --git a/SSL/src/Catalogs/ПапкиФайлов/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ПапкиФайлов/Forms/ФормаЭлемента/Form.form index 50be3cc1e..39a984e05 100644 --- a/SSL/src/Catalogs/ПапкиФайлов/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ПапкиФайлов/Forms/ФормаЭлемента/Form.form @@ -30,9 +30,7 @@ 54 true - 5 true - 2 true @@ -69,9 +67,6 @@ true Label - true - true - true Left Center @@ -86,11 +81,6 @@ ru Группа пояснение облачного сервиса - - ru - Группа пояснение облачного сервиса - - false ГруппаПояснениеОблачногоСервисаРасширеннаяПодсказка 46 @@ -103,6 +93,7 @@ UsualGroup + Center Auto true true @@ -141,7 +132,6 @@ true Left - true true true true @@ -185,7 +175,6 @@ true Left - true true true true @@ -237,7 +226,7 @@ true Left - true + 40 true true true @@ -281,7 +270,6 @@ Left true - true true true true @@ -323,7 +311,6 @@ true Left - true true true true @@ -368,7 +355,7 @@ true Left - true + 40 true true true @@ -464,7 +451,7 @@ Clearing РабочийКаталогВладельцаОчистка - true + 40 true true true diff --git a/SSL/src/Catalogs/ПапкиЭлектронныхПисем/Forms/ФормаВыбора/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/Catalogs/ПапкиЭлектронныхПисем/Forms/ФормаВыбора/Attributes/Список/ExtInfo/ListSettings.dcss index 61e6fb4bb..80627c7b9 100644 --- a/SSL/src/Catalogs/ПапкиЭлектронныхПисем/Forms/ФормаВыбора/Attributes/Список/ExtInfo/ListSettings.dcss +++ b/SSL/src/Catalogs/ПапкиЭлектронныхПисем/Forms/ФормаВыбора/Attributes/Список/ExtInfo/ListSettings.dcss @@ -12,6 +12,17 @@ Normal b75fecce-942b-4aed-abc9-e6a02e460fb3 + + + + Владелец + Items + None + 0001-01-01T00:00:00 + 0001-01-01T00:00:00 + + + Normal 911b6018-f537-43e8-a417-da56b22f9aec diff --git a/SSL/src/Catalogs/ПапкиЭлектронныхПисем/ПапкиЭлектронныхПисем.mdo b/SSL/src/Catalogs/ПапкиЭлектронныхПисем/ПапкиЭлектронныхПисем.mdo index d2865ae9a..d77b59fa3 100644 --- a/SSL/src/Catalogs/ПапкиЭлектронныхПисем/ПапкиЭлектронныхПисем.mdo +++ b/SSL/src/Catalogs/ПапкиЭлектронныхПисем/ПапкиЭлектронныхПисем.mdo @@ -81,7 +81,7 @@ Parent ru - Родитель + Родительская папка ru diff --git a/SSL/src/Catalogs/Пользователи/Forms/ОграничениеНаВходВПрограмму/Form.form b/SSL/src/Catalogs/Пользователи/Forms/ОграничениеНаВходВПрограмму/Form.form index dbd96aa08..0f79a09b8 100644 --- a/SSL/src/Catalogs/Пользователи/Forms/ОграничениеНаВходВПрограмму/Form.form +++ b/SSL/src/Catalogs/Пользователи/Forms/ОграничениеНаВходВПрограмму/Form.form @@ -1,111 +1,111 @@ - - ВидСрокаНеУказан - 1 - true - true - - true - - - ВидСрока - - None - - OnChange - ВидСрокаПриИзменении - - - ВидСрокаНеУказанРасширеннаяПодсказка - 3 - Label - true - true - - Left - - - - ВидСрокаНеУказанКонтекстноеМеню - 2 - true - - RadioButtonField - Enter - true - Left - true - - 1 - - - ru - Согласно общим настройкам входа - - - НеУказан - - - Vertical - - - - ВидСрокаНеОграничен - 29 - true - true - - true - - - ВидСрока - - None - - OnChange - ВидСрокаПриИзменении - - - ВидСрокаНеОграниченРасширеннаяПодсказка - 31 - Label - true - true - - Left - - - - ВидСрокаНеОграниченКонтекстноеМеню - 30 - true - - RadioButtonField - Enter - true - Left - true - - 1 - - - ru - Без ограничения срока - - - НеОграничен - - - Vertical - - - ГруппаВидСрокаДоДаты - 32 + Отступ + 53 + + ВидСрокаНеУказан + 1 + true + true + + true + + + ВидСрока + + None + + OnChange + ВидСрокаПриИзменении + + + ВидСрокаНеУказанРасширеннаяПодсказка + 3 + Label + true + true + + Left + + + + ВидСрокаНеУказанКонтекстноеМеню + 2 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Согласно общим настройкам входа + + + НеУказан + + + Vertical + + + + ВидСрокаНеОграничен + 29 + true + true + + true + + + ВидСрока + + None + + OnChange + ВидСрокаПриИзменении + + + ВидСрокаНеОграниченРасширеннаяПодсказка + 31 + Label + true + true + + Left + + + + ВидСрокаНеОграниченКонтекстноеМеню + 30 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Без ограничения срока + + + НеОграничен + + + Vertical + + - ГруппаДоДаты - 45 + ГруппаВидСрокаДоДаты + 32 ВидСрокаДоДаты 26 @@ -156,6 +156,48 @@ Vertical
      + + Срок + 36 + true + true + + true + + + Срок + + None + + СрокРасширеннаяПодсказка + 38 + Label + true + true + + Left + + + + СрокКонтекстноеМеню + 37 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + true true @@ -163,14 +205,11 @@ <key>ru</key> - <value>Группа до даты</value> + <value>Группа вид срока до даты</value> - 15 - 1 - false - ГруппаДоДатыРасширеннаяПодсказка - 46 + ГруппаВидСрокаДоДатыРасширеннаяПодсказка + 33 Label true true @@ -180,7 +219,6 @@ UsualGroup - Vertical Auto true true @@ -188,82 +226,9 @@ Auto - - Срок - 36 - true - true - - true - - - Срок - - None - - СрокРасширеннаяПодсказка - 38 - Label - true - true - - Left - - - - СрокКонтекстноеМеню - 37 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Группа вид срока до даты</value> - - - ГруппаВидСрокаДоДатыРасширеннаяПодсказка - 33 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаВидСрокаДоПросрочки - 34 - ГруппаДоПросрочки - 47 + ГруппаВидСрокаДоПросрочки + 34 ВидСрокаПросрочка 23 @@ -305,7 +270,7 @@ ru - Запретить вход, если не работает более: + Запретить вход, если не работает более: Просрочка @@ -314,6 +279,84 @@ Vertical + + Просрочка + 39 + true + true + + true + + + Просрочка + + None + + ПросрочкаРасширеннаяПодсказка + 41 + Label + true + true + + Left + + + + ПросрочкаКонтекстноеМеню + 40 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + + 1 + + Normal + + + + НадписьПросрочка + 42 + + <key>ru</key> + <value>дн.</value> + + true + true + + true + + + НадписьПросрочкаРасширеннаяПодсказка + 44 + Label + true + true + + Left + + + + НадписьПросрочкаКонтекстноеМеню + 43 + true + + Label + true + + Left + + true true @@ -321,13 +364,11 @@ <key>ru</key> - <value>Группа до просрочки</value> + <value>Группа вид срока до просрочки</value> - 29 - 1 - ГруппаДоПросрочкиРасширеннаяПодсказка - 48 + ГруппаВидСрокаДоПросрочкиРасширеннаяПодсказка + 35 Label true true @@ -337,7 +378,6 @@ UsualGroup - Vertical Auto true true @@ -345,85 +385,6 @@ Auto - - Просрочка - 39 - true - true - - true - - - Просрочка - - None - - ПросрочкаРасширеннаяПодсказка - 41 - Label - true - true - - Left - - - - ПросрочкаКонтекстноеМеню - 40 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - - 1 - - Normal - - - - НадписьПросрочка - 42 - - <key>ru</key> - <value>дн.</value> - - true - true - - true - - - НадписьПросрочкаРасширеннаяПодсказка - 44 - Label - true - true - - Left - - - - НадписьПросрочкаКонтекстноеМеню - 43 - true - - Label - true - true - - Left - - true true @@ -431,11 +392,11 @@ <key>ru</key> - <value>Группа вид срока до просрочки</value> + <value>Отступ</value> - ГруппаВидСрокаДоПросрочкиРасширеннаяПодсказка - 35 + ОтступРасширеннаяПодсказка + 54 Label true true @@ -445,7 +406,9 @@ UsualGroup + Vertical Auto + NormalSeparation true true Auto diff --git a/SSL/src/Catalogs/Пользователи/Forms/СменаПочты/Form.form b/SSL/src/Catalogs/Пользователи/Forms/СменаПочты/Form.form index 9802a4245..5c2bbd40b 100644 --- a/SSL/src/Catalogs/Пользователи/Forms/СменаПочты/Form.form +++ b/SSL/src/Catalogs/Пользователи/Forms/СменаПочты/Form.form @@ -11,6 +11,7 @@ НоваяПочта + Top НоваяПочтаExtendedTooltip 5 @@ -32,6 +33,7 @@ Left true + 40 true true true diff --git a/SSL/src/Catalogs/Пользователи/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/Пользователи/Forms/ФормаСписка/Form.form index 37c3ab0c4..4187d0c7d 100644 --- a/SSL/src/Catalogs/Пользователи/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/Пользователи/Forms/ФормаСписка/Form.form @@ -205,6 +205,31 @@ КоманднаяПанельПользователи 53 + + ФормаВыбрать + 216 + true + + true + + + ФормаВыбратьРасширеннаяПодсказка + 217 + Label + true + true + + Left + + + Form.StandardCommand.Choose + Normal + Auto + true + true + UserCmds + Auto + ФормаСкопировать 212 @@ -706,6 +731,7 @@ 10 true true + true MultiRow Row 1 @@ -745,36 +771,6 @@ ГруппаВыбратьГруппу 85 - - Отступ - 87 - true - true - - true - - - ОтступExtendedTooltip - 114 - Label - true - true - - Left - - - - ОтступКонтекстноеМеню - 88 - true - - Label - true - true - - Left - - ВыбратьГруппу 89 @@ -867,6 +863,7 @@ ru Группа выбрать группу + true ГруппаВыбратьГруппуExtendedTooltip 113 @@ -880,6 +877,7 @@ UsualGroup Vertical + Center Auto true true @@ -1302,6 +1300,7 @@ 10 true true + true MultiRow 1 1 @@ -1342,36 +1341,6 @@ ГруппаВыбратьПользователя 86 - - Отступ2 - 92 - true - true - - true - - - Отступ2ExtendedTooltip - 123 - Label - true - true - - Left - - - - Отступ2КонтекстноеМеню - 93 - true - - Label - true - true - - Left - - ВыбратьПользователяКоманда 94 @@ -1462,6 +1431,7 @@ ru Группа выбрать пользователя + true ГруппаВыбратьПользователяExtendedTooltip 122 @@ -1475,6 +1445,7 @@ UsualGroup Vertical + Center Auto true true @@ -1933,7 +1904,7 @@ Items.ГруппыПользователей.CurrentData.Комментарий - None + Left ГруппыПользователейКомментарийРасширеннаяПодсказка 145 @@ -1956,8 +1927,7 @@ Left true - true - 3 + 2 true true true @@ -1992,7 +1962,6 @@ NormalSeparation true true - auto Items.ГруппыПользователей.CurrentData.Description @@ -2042,7 +2011,7 @@ Items.ПользователиСписок.CurrentData.Комментарий - None + Left ПользователиСписокКомментарийРасширеннаяПодсказка 152 @@ -2065,8 +2034,7 @@ Left true - true - 3 + 2 true true true @@ -2101,7 +2069,6 @@ NormalSeparation true true - auto Items.ПользователиСписок.CurrentData.Description @@ -2178,8 +2145,6 @@ ПередЗагрузкеДанныхИзНастроекНаСервере Create - 80 - 16 DontBlock Use true @@ -2243,7 +2208,8 @@ КОГДА Пользователи.ИдентификаторПользователяИБ = &ПустойУникальныйИдентификатор ТОГДА ЛОЖЬ ИНАЧЕ ИСТИНА - КОНЕЦ КАК ВозможноСменитьПароль + КОНЕЦ КАК ВозможноСменитьПароль, + Пользователи.ИдентификаторПользователяИБ ИЗ Справочник.Пользователи КАК Пользователи ГДЕ diff --git a/SSL/src/Catalogs/Пользователи/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/Пользователи/Forms/ФормаСписка/Module.bsl index ece19fad1..d35f4a785 100644 --- a/SSL/src/Catalogs/Пользователи/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/Пользователи/Forms/ФормаСписка/Module.bsl @@ -23,10 +23,6 @@ Возврат; КонецЕсли; - Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка) Тогда - Возврат; - КонецЕсли; - // Начальное значение настройки до загрузки данных из настроек. ВыбиратьИерархически = Истина; @@ -103,7 +99,6 @@ Элементы.ПользователиИБ.Видимость = Ложь; КонецЕсли; Элементы.СведенияОПользователях.Видимость = Ложь; - Элементы.ПользователиСписок.РежимВыбора = Истина; Элементы.ГруппыПользователей.РежимВыбора = ХранимыеПараметры.ВыборГруппПользователей; // Отключение перетаскивания пользователя в формах выбора и подбора пользователей. Элементы.ПользователиСписок.РазрешитьНачалоПеретаскивания = Ложь; @@ -130,6 +125,8 @@ КонецЕсли; КонецЕсли; Иначе + Элементы.ПользователиСписок.РежимВыбора = Ложь; + Элементы.ГруппыПользователей.РежимВыбора = Ложь; Элементы.Комментарии.Видимость = Ложь; Элементы.ВыбратьПользователя.Видимость = Ложь; Элементы.ВыбратьГруппуПользователей.Видимость = Ложь; @@ -376,12 +373,10 @@ &НаКлиенте Процедура ПользователиСписокПриАктивизацииСтроки(Элемент) - Если Элементы.ПользователиСписок.ТекущиеДанные = Неопределено - Или Элементы.ПользователиСписок.ТекущиеДанные.Свойство("ГруппировкаСтроки") Тогда - - ВозможноСменитьПароль = Ложь; - Иначе + Если СтандартныеПодсистемыКлиент.ЭтоЭлементДинамическогоСписка(Элементы.ПользователиСписок) Тогда ВозможноСменитьПароль = Элементы.ПользователиСписок.ТекущиеДанные.ВозможноСменитьПароль; + Иначе + ВозможноСменитьПароль = Ложь; КонецЕсли; Элементы.ФормаУстановитьПароль.Доступность = ВозможноСменитьПароль; @@ -410,9 +405,7 @@ ПараметрыФормы = Новый Структура; ПараметрыФормы.Вставить("ГруппаНовогоПользователя", Элементы.ГруппыПользователей.ТекущаяСтрока); - Если Копирование - И Элемент.ТекущиеДанные <> Неопределено Тогда - + Если Копирование И Элемент.ТекущиеДанные <> Неопределено Тогда ПараметрыФормы.Вставить("ЗначениеКопирования", Элемент.ТекущаяСтрока); КонецЕсли; @@ -484,7 +477,8 @@ Процедура УстановитьПароль(Команда) ТекущиеДанные = Элементы.ПользователиСписок.ТекущиеДанные; - Если ТекущиеДанные <> Неопределено Тогда + + Если СтандартныеПодсистемыКлиент.ЭтоЭлементДинамическогоСписка(ТекущиеДанные) Тогда ПользователиСлужебныйКлиент.ОткрытьФормуСменыПароля(ТекущиеДанные.Ссылка); КонецЕсли; @@ -734,7 +728,6 @@ Элементы.ВыбранныеПользователиИГруппы.Видимость = Истина; Если ПолучитьФункциональнуюОпцию("ИспользоватьГруппыПользователей") Тогда Элементы.ГруппыИПользователи.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Вертикальная; - Элементы.ГруппыИПользователи.ШиринаПодчиненныхЭлементов = ШиринаПодчиненныхЭлементовФормы.Одинаковая; Элементы.ПользователиСписок.Высота = 5; Элементы.ГруппыПользователей.Высота = 3; ЭтотОбъект.Высота = 17; diff --git a/SSL/src/Catalogs/Пользователи/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/Пользователи/Forms/ФормаЭлемента/Form.form index fb40ab66b..652384875 100644 --- a/SSL/src/Catalogs/Пользователи/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/Пользователи/Forms/ФормаЭлемента/Form.form @@ -30,9 +30,7 @@ 341 true - 2 true - 1 true @@ -73,7 +71,6 @@ true Label - true true Style.ПоясняющийТекст @@ -140,11 +137,8 @@ 166 true - 5 true - 2 true - false false @@ -189,7 +183,6 @@ true Label - true true false @@ -296,7 +289,6 @@ ru Свойства пояснение и команды - false СвойстваПояснениеИКомандыРасширеннаяПодсказка 210 @@ -326,7 +318,6 @@ ru Свойства обработка несоответствия - true СвойстваОбработкаНесоответствияРасширеннаяПодсказка 208 @@ -377,11 +368,8 @@ 173 true - 5 true - 2 true - false false @@ -402,11 +390,6 @@ true - - ru - Пользователь информационной базы сопоставлен с этим пользователем справочника, -однако его не удается найти по сохраненному идентификатору. - СопоставлениеПояснениеНесоответствияРасширеннаяПодсказка 215 @@ -423,11 +406,8 @@ true Label - 20 - true 2 true - true false Left @@ -443,7 +423,6 @@ ru Сопоставление обработка несоответствия - true СопоставлениеОбработкаНесоответствияРасширеннаяПодсказка 213 @@ -835,7 +814,6 @@ true Label - true true Style.ПоясняющийТекст @@ -1176,7 +1154,6 @@ true Label - true true Style.ПоясняющийТекст @@ -1370,7 +1347,6 @@ ru Параметры аутентификации 1С:Предприятия - true ПараметрыАутентификации1СПредприятияРасширеннаяПодсказка 225 @@ -1438,6 +1414,7 @@ Vertical Auto + NormalSeparation true true Auto @@ -1595,7 +1572,6 @@ true Label - true true Left @@ -1732,6 +1708,7 @@ ПользовательИБЯзык + 2 OnChange ПользовательИБЯзыкПриИзменении @@ -2131,6 +2108,7 @@ true UserCmds Auto + InAdditionalSubmenu РолиСтандартныеКоманды @@ -2426,7 +2404,6 @@ StartChoice КомментарийНачалоВыбора - true 2 true true @@ -2472,8 +2449,6 @@ ru Страницы - true - true СтраницыExtendedTooltip 219 @@ -3326,7 +3301,7 @@ ПоказатьТолькоВыбранныеРоли <key>ru</key> - <value>Только выбранные роли</value> + <value>Только выбранные</value> 1 diff --git a/SSL/src/Catalogs/Пользователи/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/Пользователи/Forms/ФормаЭлемента/Module.bsl index 1f27e85d6..c596a23a3 100644 --- a/SSL/src/Catalogs/Пользователи/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/Пользователи/Forms/ФормаЭлемента/Module.bsl @@ -124,6 +124,13 @@ ОбщаяНастройкаФормы(Истина); + Если ОбщегоНазначенияПовтИсп.ЭтоАвтономноеРабочееМесто() Тогда + Элементы.ГруппаШапка.ТолькоПросмотр = Истина; + Элементы.КонтактнаяИнформация.ТолькоПросмотр = Истина; + Элементы.СтраницаДополнительныеРеквизиты.ТолькоПросмотр = Истина; + Элементы.СтраницаКомментарий.ТолькоПросмотр = Истина; + КонецЕсли; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") И ДействияСПользователемСервиса <> Неопределено Тогда МодульУправлениеКонтактнойИнформацией = ОбщегоНазначения.ОбщийМодуль("УправлениеКонтактнойИнформацией"); @@ -148,13 +155,6 @@ Элементы.ГруппаИзменитьОграничение.Видимость = Ложь; КонецЕсли; - Если ОбщегоНазначенияПовтИсп.ЭтоАвтономноеРабочееМесто() Тогда - Элементы.ГруппаШапка.ТолькоПросмотр = Истина; - Элементы.КонтактнаяИнформация.ТолькоПросмотр = Истина; - Элементы.СтраницаДополнительныеРеквизиты.ТолькоПросмотр = Истина; - Элементы.СтраницаКомментарий.ТолькоПросмотр = Истина; - КонецЕсли; - КонецПроцедуры &НаКлиенте @@ -200,7 +200,7 @@ Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда МодульУправлениеКонтактнойИнформацией = ОбщегоНазначения.ОбщийМодуль("УправлениеКонтактнойИнформацией"); - МодульУправлениеКонтактнойИнформацией.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект); + МодульУправлениеКонтактнойИнформацией.ПриЧтенииНаСервере(ЭтотОбъект, ТекущийОбъект, "КонтактнаяИнформация"); КонецЕсли; ОбщаяНастройкаФормы(); @@ -324,6 +324,8 @@ ОбщаяНастройкаФормы(, ПараметрыЗаписи); + ОбновитьСпособИзмененияEMailВСервисе(); + КонецПроцедуры &НаКлиенте @@ -571,10 +573,10 @@ &НаКлиенте Процедура ПользовательИБИмяПриИзменении(Элемент) + ПользовательИБИмя = СокрЛП(ПользовательИБИмя); ПользовательИБИмяЗначениеПрямогоИзменения = ПользовательИБИмя; УстановитьДоступностьСвойств(ЭтотОбъект); - УстановитьНеобходимостьСинхронизацииССервисом(ЭтотОбъект); КонецПроцедуры @@ -655,6 +657,21 @@ КонецПроцедуры +&НаКлиенте +Процедура Подключаемый_EMailОчистка(Элемент, СтандартнаяОбработка) + + Если Не Элемент.РедактированиеТекста Тогда + СтандартнаяОбработка = Ложь; + Возврат; + КонецЕсли; + + МодульУправлениеКонтактнойИнформациейКлиент = + ОбщегоНазначенияКлиент.ОбщийМодуль("УправлениеКонтактнойИнформациейКлиент"); + + МодульУправлениеКонтактнойИнформациейКлиент.Очистка(ЭтотОбъект, Элемент.Имя); + +КонецПроцедуры + &НаКлиенте Процедура Подключаемый_ТелефонПриИзменении(Элемент) @@ -670,9 +687,7 @@ &НаКлиенте Процедура Подключаемый_EMailНачалоВыбора(Элемент) - Если СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().РазделениеВключено - И ПарольПользователяСервиса = Неопределено Тогда - + Если ПарольПользователяСервиса = Неопределено Тогда СтандартныеПодсистемыКлиент.ПриЗапросеПароляДляАутентификацииВСервисе( Новый ОписаниеОповещения("Подключаемый_EMailНачалоВыбораЗавершение", ЭтотОбъект), ЭтотОбъект, @@ -784,19 +799,6 @@ КонецПроцедуры -&НаКлиенте -Процедура РолиПометкаПриИзмененииПослеПодтверждения(Ответ, ПараметрыВыполнения) Экспорт - СтрокаТаблицы = Элементы.Роли.ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - Если Ответ = "Продолжить" Тогда - ОбработатьИнтерфейсРолей("ОбновитьСоставРолей"); - Иначе - СтрокаТаблицы.Пометка = Ложь; - КонецЕсли; -КонецПроцедуры - #КонецОбласти #Область ОбработчикиКомандФормы @@ -865,6 +867,19 @@ #Область СлужебныеПроцедурыИФункции +&НаКлиенте +Процедура РолиПометкаПриИзмененииПослеПодтверждения(Ответ, ПараметрыВыполнения) Экспорт + СтрокаТаблицы = Элементы.Роли.ТекущиеДанные; + Если СтрокаТаблицы = Неопределено Тогда + Возврат; + КонецЕсли; + Если Ответ = "Продолжить" Тогда + ОбработатьИнтерфейсРолей("ОбновитьСоставРолей"); + Иначе + СтрокаТаблицы.Пометка = Ложь; + КонецЕсли; +КонецПроцедуры + &НаСервере Процедура УстановитьУсловноеОформление() @@ -1402,9 +1417,11 @@ СтрокаEMail = КонтактнаяИнформация.НайтиСтроки(Новый Структура("Вид", Справочники["ВидыКонтактнойИнформации"].EmailПользователя))[0]; ЭлементEMail = Элементы[СтрокаEMail.ИмяРеквизита]; ЭлементEMail.УстановитьДействие("ПриИзменении", "Подключаемый_EMailПриИзменении"); + ЭлементEMail.УстановитьДействие("Очистка", "Подключаемый_EMailОчистка"); ЭлементEMail.АвтоОтметкаНезаполненного = Истина; - ЭлементEMail.КнопкаВыбора = Истина; + ЭлементEMail.КнопкаВыбора = ЗначениеЗаполнено(Объект.Ссылка) И ЗначениеЗаполнено(ЭтотОбъект[СтрокаEMail.ИмяРеквизита]); + ЭлементEMail.РедактированиеТекста = Не ЭлементEMail.КнопкаВыбора; ЭлементEMail.УстановитьДействие("НачалоВыбора", "Подключаемый_EMailНачалоВыбора"); СтрокаТелефон = КонтактнаяИнформация.НайтиСтроки(Новый Структура("Вид", Справочники["ВидыКонтактнойИнформации"].ТелефонПользователя))[0]; @@ -1413,6 +1430,23 @@ КонецПроцедуры +&НаСервере +Процедура ОбновитьСпособИзмененияEMailВСервисе() + + Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда + Возврат; + КонецЕсли; + + КонтактнаяИнформация = ЭтотОбъект.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов; + + СтрокаEMail = КонтактнаяИнформация.НайтиСтроки(Новый Структура("Вид", Справочники["ВидыКонтактнойИнформации"].EmailПользователя))[0]; + ЭлементEMail = Элементы[СтрокаEMail.ИмяРеквизита]; + + ЭлементEMail.КнопкаВыбора = ЗначениеЗаполнено(Объект.Ссылка) И ЗначениеЗаполнено(ЭтотОбъект[СтрокаEMail.ИмяРеквизита]); + ЭлементEMail.РедактированиеТекста = Не ЭлементEMail.КнопкаВыбора; + +КонецПроцедуры + &НаКлиентеНаСервереБезКонтекста Функция ВидКонтактнойИнформацииEmailПользователя() diff --git a/SSL/src/Catalogs/Пользователи/ObjectModule.bsl b/SSL/src/Catalogs/Пользователи/ObjectModule.bsl index bf5910f01..b5d86c699 100644 --- a/SSL/src/Catalogs/Пользователи/ObjectModule.bsl +++ b/SSL/src/Catalogs/Пользователи/ObjectModule.bsl @@ -10,7 +10,7 @@ #КонецОбласти -// *Область ПрограммныйИнтерфейс +// *Область ПрограммныйИнтерфейс. // // Программный интерфейс объекта реализован через ДополнительныеСвойства: // @@ -55,6 +55,12 @@ // "ОчищеноСопоставлениеСНесуществующимПользователемИБ", "НеТребуетсяУдалениеПользовательИБ". // - УникальныйИдентификатор - УникальныйИдентификатор пользователя ИБ. // +// СозданиеАдминистратора - Строка - свойство должно быть вставлено с непустой строкой, +// чтобы вызвать событие ПриСозданииАдминистратора после обработки структуры ОписаниеПользователяИБ +// когда у созданного или измененного пользователя ИБ имеются роли администратора. +// Это нужно, чтобы сделать связанные действия при создании администратора, например, +// автоматически добавить пользователя в группу доступа Администраторы. +// // *КонецОбласти #Область ОбработчикиСобытий diff --git a/SSL/src/Catalogs/ПравилаОбработкиЭлектроннойПочты/Forms/ПрименениеПравил/Form.form b/SSL/src/Catalogs/ПравилаОбработкиЭлектроннойПочты/Forms/ПрименениеПравил/Form.form index ee85d9b2b..ec4e06885 100644 --- a/SSL/src/Catalogs/ПравилаОбработкиЭлектроннойПочты/Forms/ПрименениеПравил/Form.form +++ b/SSL/src/Catalogs/ПравилаОбработкиЭлектроннойПочты/Forms/ПрименениеПравил/Form.form @@ -557,7 +557,6 @@ Left true - true 2 true false @@ -730,41 +729,6 @@ ВключаяПодчиненные - - АдресХранилища - - <key>ru</key> - <value>Адрес хранилища</value> - - 5 - - String - - - - true - - - true - - - - ИдентификаторЗадания - - <key>ru</key> - <value>Идентификатор задания</value> - - 6 - - UUID - - - true - - - true - - Применить @@ -846,6 +810,12 @@ </valueType> <keyParameter>true</keyParameter> </parameters> + <parameters> + <name>ДляПисемВПапке</name> + <valueType> + <types>CatalogRef.ПапкиЭлектронныхПисем</types> + </valueType> + </parameters> <commandInterface> <navigationPanel/> <commandBar/> diff --git a/SSL/src/Catalogs/ПравилаОбработкиЭлектроннойПочты/Forms/ПрименениеПравил/Module.bsl b/SSL/src/Catalogs/ПравилаОбработкиЭлектроннойПочты/Forms/ПрименениеПравил/Module.bsl index 66a084f9b..03966aefa 100644 --- a/SSL/src/Catalogs/ПравилаОбработкиЭлектроннойПочты/Forms/ПрименениеПравил/Module.bsl +++ b/SSL/src/Catalogs/ПравилаОбработкиЭлектроннойПочты/Forms/ПрименениеПравил/Module.bsl @@ -1,14 +1,4 @@ -#Область ОписаниеПеременных - -&НаКлиенте -Перем ПараметрыОбработчикаОжидания; - -&НаКлиенте -Перем ФормаДлительнойОперации; - -#КонецОбласти - #Область ОбработчикиСобытийФормы &НаСервере @@ -49,7 +39,7 @@ ПрименяемыеПравила.Загрузить(Результат.Выгрузить()); КонецЕсли; - Если Параметры.Свойство("ДляПисемВПапке") И ЗначениеЗаполнено(Параметры.ДляПисемВПапке) Тогда + Если ЗначениеЗаполнено(Параметры.ДляПисемВПапке) Тогда ДляПисемВПапке = Параметры.ДляПисемВПапке; Иначе @@ -110,18 +100,17 @@ Возврат; КонецЕсли; - Результат = ПрименитьПравилаНаСервере(); + ДлительнаяОперация = ПрименитьПравилаНаСервере(); + Если ДлительнаяОперация = Неопределено Тогда + Возврат; + КонецЕсли; - Если НЕ Результат.ЗаданиеВыполнено Тогда - ИдентификаторЗадания = Результат.ИдентификаторЗадания; - АдресХранилища = Результат.АдресХранилища; - - ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания); - ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеЗадания", 1, Истина); - ФормаДлительнойОперации = ДлительныеОперацииКлиент.ОткрытьФормуДлительнойОперации(ЭтотОбъект, ИдентификаторЗадания); - - Иначе + Если ДлительнаяОперация.Статус = "Выполнено" Тогда Оповестить("ПримененыПравилаОбработкиПисем"); + ИначеЕсли ДлительнаяОперация.Статус = "Выполняется" Тогда + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ОповещениеОЗавершении = Новый ОписаниеОповещения("ПрименитьПравилаЗавершение", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОповещениеОЗавершении, ПараметрыОжидания); КонецЕсли; КонецПроцедуры @@ -151,37 +140,47 @@ &НаСервере Функция ПрименитьПравилаНаСервере() - ПараметрыВыгрузки = Новый Структура; + ПараметрыПроцедуры = Новый Структура; - ПараметрыВыгрузки.Вставить("ТаблицаПравил", ПрименяемыеПравила.Выгрузить()); - ПараметрыВыгрузки.Вставить("ДляПисемВПапке", ДляПисемВПапке); - ПараметрыВыгрузки.Вставить("ВключаяПодчиненные", ВключаяПодчиненные); - ПараметрыВыгрузки.Вставить("УчетнаяЗапись", УчетнаяЗапись); + ПараметрыПроцедуры.Вставить("ТаблицаПравил", ПрименяемыеПравила.Выгрузить()); + ПараметрыПроцедуры.Вставить("ДляПисемВПапке", ДляПисемВПапке); + ПараметрыПроцедуры.Вставить("ВключаяПодчиненные", ВключаяПодчиненные); + ПараметрыПроцедуры.Вставить("УчетнаяЗапись", УчетнаяЗапись); - ЗаполнитьЗначенияСвойств(ПараметрыВыгрузки, ЭтотОбъект); + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Применение правил'") + " "; - НаименованиеЗадания = НСтр("ru = 'Применение правил'") + " "; - - Результат = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "Справочники.ПравилаОбработкиЭлектроннойПочты.ПрименитьПравила", - ПараметрыВыгрузки, - НаименованиеЗадания); - - АдресХранилища = Результат.АдресХранилища; - - Если Результат.ЗаданиеВыполнено Тогда - ЗагрузитьРезультат(); + ДлительнаяОперация = ДлительныеОперации.ВыполнитьВФоне( + "Справочники.ПравилаОбработкиЭлектроннойПочты.ПрименитьПравила", + ПараметрыПроцедуры, + ПараметрыВыполнения); + + Если ДлительнаяОперация.Статус = "Выполнено" Тогда + ЗагрузитьРезультат(ДлительнаяОперация.АдресРезультата); КонецЕсли; - Возврат Результат; + Возврат ДлительнаяОперация; КонецФункции -&НаСервере -Процедура ЗагрузитьРезультат() +&НаКлиенте +Процедура ПрименитьПравилаЗавершение(Результат, ДополнительныеПараметры) Экспорт - Результат = ПолучитьИзВременногоХранилища(АдресХранилища); + Если Результат = Неопределено Тогда + Возврат; + ИначеЕсли Результат.Статус = "Ошибка" Тогда + ВызватьИсключение Результат.КраткоеПредставлениеОшибки; + ИначеЕсли Результат.Статус = "Выполнено" Тогда + ЗагрузитьРезультат(Результат.АдресРезультата); + Оповестить("ПримененыПравилаОбработкиПисем"); + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура ЗагрузитьРезультат(АдресРезультата) + + Результат = ПолучитьИзВременногоХранилища(АдресРезультата); Если ТипЗнч(Результат) = Тип("Строка") И ЗначениеЗаполнено(Результат) Тогда ОбщегоНазначенияКлиентСервер.СообщитьПользователю(Результат); @@ -189,36 +188,4 @@ КонецПроцедуры -&НаКлиенте -Процедура Подключаемый_ПроверитьВыполнениеЗадания() - - Попытка - Если ФормаДлительнойОперации.Открыта() - И ФормаДлительнойОперации.ИдентификаторЗадания = ИдентификаторЗадания Тогда - Если ЗаданиеВыполнено(ИдентификаторЗадания) Тогда - ЗагрузитьРезультат(); - ДлительныеОперацииКлиент.ЗакрытьФормуДлительнойОперации(ФормаДлительнойОперации); - Оповестить("ПримененыПравилаОбработкиПисем"); - Иначе - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания); - ПодключитьОбработчикОжидания( - "Подключаемый_ПроверитьВыполнениеЗадания", - ПараметрыОбработчикаОжидания.ТекущийИнтервал, - Истина); - КонецЕсли; - КонецЕсли; - Исключение - ДлительныеОперацииКлиент.ЗакрытьФормуДлительнойОперации(ФормаДлительнойОперации); - ВызватьИсключение; - КонецПопытки; - -КонецПроцедуры - -&НаСервереБезКонтекста -Функция ЗаданиеВыполнено(ИдентификаторЗадания) - - Возврат ДлительныеОперации.ЗаданиеВыполнено(ИдентификаторЗадания); - -КонецФункции - #КонецОбласти diff --git a/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ОшибкаОбращенияКПрограмме/Form.form b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ОшибкаОбращенияКПрограмме/Form.form index 4696d7548..9ac228a60 100644 --- a/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ОшибкаОбращенияКПрограмме/Form.form +++ b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ОшибкаОбращенияКПрограмме/Form.form @@ -57,8 +57,7 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> + <maxWidth>75</maxWidth> <horizontalStretch>true</horizontalStretch> <verticalStretch>true</verticalStretch> <font xsi:type="core:FontRef"> @@ -99,92 +98,21 @@ <currentRowUse>Auto</currentRowUse> </extInfo> </items> - <items xsi:type="form:FormGroup"> - <name>ГруппаИнструкция</name> - <id>31</id> - <items xsi:type="form:Decoration"> - <name>ГоризонтальныйОтступ</name> - <id>35</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <extendedTooltip> - <name>ГоризонтальныйОтступРасширеннаяПодсказка</name> - <id>37</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>ГоризонтальныйОтступКонтекстноеМеню</name> - <id>36</id> - <autoFill>true</autoFill> - </contextMenu> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </items> - <items xsi:type="form:Decoration"> - <name>Инструкция</name> - <id>17</id> - <title> - <key>ru</key> - <value>Инструкции по работе с программами электронной подписи и шифрования</value> - - true - true - - true - - - ИнструкцияРасширеннаяПодсказка - 19 - Label - true - true - - Left - - - - ИнструкцияКонтекстноеМеню - 18 - true - - Label - true - true - - - Click - ИнструкцияНажатие - - true - Left - - + + Инструкция + 17 + + <key>ru</key> + <value>Инструкции по работе с программами электронной подписи и шифрования</value> + true true true - - <key>ru</key> - <value>Группа инструкция</value> - - 53 - ГруппаИнструкцияРасширеннаяПодсказка - 32 + ИнструкцияРасширеннаяПодсказка + 19 Label true true @@ -192,13 +120,21 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + + ИнструкцияКонтекстноеМеню + 18 + true + + Label + true + Right + + + Click + ИнструкцияНажатие + + true + Right Bottom diff --git a/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ОшибкаОбращенияКПрограмме/Module.bsl b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ОшибкаОбращенияКПрограмме/Module.bsl index 9b2cb616e..e584fdcc6 100644 --- a/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ОшибкаОбращенияКПрограмме/Module.bsl +++ b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ОшибкаОбращенияКПрограмме/Module.bsl @@ -10,9 +10,6 @@ Заголовок = Параметры.ЗаголовокФормы; - // Установка минимальной ширины формы. - МинимальнаяШирина = СтрДлина(Заголовок); - ЭтоПолноправныйПользователь = Пользователи.ЭтоПолноправныйПользователь(,, Ложь); ОшибкаНаКлиенте = Параметры.ОшибкаНаКлиенте; @@ -34,28 +31,6 @@ ОписаниеОшибки = СокрЛП(ОписаниеОшибки); Элементы.ОписаниеОшибки.Заголовок = ОписаниеОшибки; - Если ТекущийВариантИнтерфейсаКлиентскогоПриложения() = ВариантИнтерфейсаКлиентскогоПриложения.Такси Тогда - СистемнаяИнформация = Новый СистемнаяИнформация; - ВерсияПриложения = СистемнаяИнформация.ВерсияПриложения; - Если ОбщегоНазначенияКлиентСервер.СравнитьВерсии(ВерсияПриложения, "8.3.6.0") > 0 Тогда - КоэффициентСжатия = 0.78; - Иначе - КоэффициентСжатия = 0.71; - КонецЕсли; - Иначе - КоэффициентСжатия = 0.75; - КонецЕсли; - - Для НомерСтроки = 1 По СтрЧислоСтрок(ОписаниеОшибки) Цикл - ТекущаяСтрока = СтрПолучитьСтроку(ОписаниеОшибки, НомерСтроки); - ДлинаТекущейСтроки = Цел(СтрДлина(ТекущаяСтрока)*КоэффициентСжатия); - Если ДлинаТекущейСтроки > МинимальнаяШирина Тогда - МинимальнаяШирина = ДлинаТекущейСтроки; - КонецЕсли; - КонецЦикла; - - Ширина = ?(МинимальнаяШирина <= 75, МинимальнаяШирина, 75); - ПоказатьИнструкцию = Параметры.ПоказатьИнструкцию; ПоказатьПереходКНастройкеПрограмм = Параметры.ПоказатьПереходКНастройкеПрограмм; ПоказатьУстановкуРасширения = Параметры.ПоказатьУстановкуРасширения; @@ -67,7 +42,7 @@ ОшибкаНаСервере, ЭтоПолноправныйПользователь); Если Не ПоказатьИнструкцию Тогда - Элементы.ГруппаИнструкция.Видимость = Ложь; + Элементы.Инструкция.Видимость = Ложь; КонецЕсли; ПоказатьУстановкуРасширения = ПоказатьУстановкуРасширения И Не Параметры.РасширениеПодключено; @@ -80,12 +55,6 @@ Элементы.ФормаПерейтиКНастройкеПрограмм.Видимость = Ложь; КонецЕсли; - Если ПоказатьИнструкцию Или ПоказатьУстановкуРасширения И ПоказатьПереходКНастройкеПрограмм Тогда - Если Ширина < 55 Тогда - Ширина = 55; - КонецЕсли; - КонецЕсли; - СброситьРазмерыИПоложениеОкна(); КонецПроцедуры diff --git a/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ПрограммаВОблачномСервисе/Form.form b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ПрограммаВОблачномСервисе/Form.form new file mode 100644 index 000000000..b8515284d --- /dev/null +++ b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ПрограммаВОблачномСервисе/Form.form @@ -0,0 +1,175 @@ + + + + <key>ru</key> + <value>Электронная подпись в облачном сервисе</value> + + + ГруппаИнформацияОПрограмме + 7 + + ДекорацияИнформация + 4 + + <key>ru</key> + <value>Декорация информация</value> + + true + true + + true + + + ДекорацияИнформацияРасширеннаяПодсказка + 6 + Label + true + true + + Left + + + + ДекорацияИнформацияКонтекстноеМеню + 5 + true + + true + true + + + CommonPicture.Информация32 + + + + + ИнформацияОПрограмме + 1 + + <key>ru</key> + <value>Программа предназначена для электронной подписи и шифрования в облачном сервисе. +Алгоритмы подписи, шифрования и хеширования определяются автоматически.</value> + + true + true + + true + + + ИнформацияОПрограммеРасширеннаяПодсказка + 3 + Label + true + true + + Left + + + + ИнформацияОПрограммеКонтекстноеМеню + 2 + true + + true + Label + true + + Left + + + true + true + + true + + + <key>ru</key> + <value>Группа информация о программе</value> + + + ru + Группа информация о программе + + + ГруппаИнформацияОПрограммеРасширеннаяПодсказка + 8 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + Bottom + true + + ФормаКоманднаяПанель + -1 + + ФормаЗакрыть + 9 + true + true + + true + + + ФормаЗакрытьРасширеннаяПодсказка + 10 + Label + true + true + + Left + + + Form.StandardCommand.Close + Normal + Auto + true + true + UserCmds + Auto + + Right + + LockOwner + true + true + Vertical + true + true + true + auto + true + + Объект + + <key>ru</key> + <value>Объект</value> + + 1 + + CatalogObject.ПрограммыЭлектроннойПодписиИШифрования + + + true + + + true + + + + + + + diff --git a/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ФормаВыбора/Form.form b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ФормаВыбора/Form.form index 7017eae8c..4818b74c1 100644 --- a/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ФормаВыбора/Form.form +++ b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ФормаВыбора/Form.form @@ -276,8 +276,6 @@ Create Delete SetDeletionMark - 60 - 10 LockOwner true true diff --git a/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Module.bsl index 92c9c81af..a24136400 100644 --- a/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Module.bsl @@ -211,7 +211,7 @@ Возврат; КонецЕсли; - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда ПерсональныеНастройки = ЭлектроннаяПодписьКлиентСервер.ПерсональныеНастройки(); ПутьКПрограмме = ПерсональныеНастройки.ПутиКПрограммамЭлектроннойПодписиИШифрования.Получить( Объект.Ссылка); @@ -245,7 +245,7 @@ Если ИнформацияМодуля <> Неопределено И Объект.ИмяПрограммы <> ИнформацияМодуля.Имя - И Не ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + И ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда ИнформацияМодуля = Неопределено; КонецЕсли; diff --git a/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/ManagerModule.bsl b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/ManagerModule.bsl index a9c72b29c..3b2916376 100644 --- a/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/ManagerModule.bsl +++ b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/ManagerModule.bsl @@ -24,6 +24,9 @@ СтандартнаяОбработка = Ложь; Параметры.Вставить("ПоказатьСтраницуПрограммы"); ВыбраннаяФорма = Метаданные.ОбщиеФормы.НастройкиЭлектроннойПодписиИШифрования; + ИначеЕсли Параметры.Свойство("Ключ") И Параметры.Ключ.ЭтоПрограммаОблачногоСервиса Тогда + СтандартнаяОбработка = Ложь; + ВыбраннаяФорма = "Справочник.ПрограммыЭлектроннойПодписиИШифрования.Форма.ПрограммаВОблачномСервисе"; КонецЕсли; КонецПроцедуры @@ -165,5 +168,57 @@ КонецПроцедуры +// При включении сервиса криптографии создается программа электронной подписи и шифрования. +Процедура ЗаполнитьНачальныеНастройкиВОблачномСервисе() Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ПрограммыЭлектроннойПодписиИШифрования.Ссылка КАК Ссылка, + | ПрограммыЭлектроннойПодписиИШифрования.ПометкаУдаления + |ИЗ + | Справочник.ПрограммыЭлектроннойПодписиИШифрования КАК ПрограммыЭлектроннойПодписиИШифрования + |ГДЕ + | ПрограммыЭлектроннойПодписиИШифрования.ЭтоПрограммаОблачногоСервиса"; + + ВыборкаДетальныеЗаписи = Запрос.Выполнить().Выбрать(); + + Программа = Неопределено; + + Пока ВыборкаДетальныеЗаписи.Следующий() Цикл + Если ВыборкаДетальныеЗаписи.ПометкаУдаления Тогда + Программа = ВыборкаДетальныеЗаписи.Ссылка.ПолучитьОбъект(); + Иначе + // Есть программа уже создана и не помечена на удаление, не создаем новую. + Возврат; + КонецЕсли; + КонецЦикла; + + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("Справочник.ПрограммыЭлектроннойПодписиИШифрования"); + ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный; + + НачатьТранзакцию(); + Попытка + Блокировка.Заблокировать(); + + Если Программа = Неопределено Тогда + Программа = Справочники.ПрограммыЭлектроннойПодписиИШифрования.СоздатьЭлемент(); + Программа.Наименование = НСтр("ru = 'Облачный сервис'"); + Программа.ЭтоПрограммаОблачногоСервиса = Истина; + Программа.Записать(); + Иначе + // Если программа уже создана, снимаем пометку удаления. + Программа.УстановитьПометкуУдаления(Ложь); + КонецЕсли; + + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + +КонецПроцедуры + #КонецОбласти #КонецЕсли diff --git a/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/ПрограммыЭлектроннойПодписиИШифрования.mdo b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/ПрограммыЭлектроннойПодписиИШифрования.mdo index a81ce5242..826d56cc0 100644 --- a/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/ПрограммыЭлектроннойПодписиИШифрования.mdo +++ b/SSL/src/Catalogs/ПрограммыЭлектроннойПодписиИШифрования/ПрограммыЭлектроннойПодписиИШифрования.mdo @@ -235,6 +235,21 @@ Use + + ЭтоПрограммаОблачногоСервиса + + ru + Это программа облачного сервиса + + + Boolean + + + + + Use + Use + ФормаЭлемента @@ -267,4 +282,13 @@ PersonalComputer MobileDevice + + ПрограммаВОблачномСервисе + + ru + Программа в облачном сервисе + + PersonalComputer + MobileDevice + diff --git a/SSL/src/Catalogs/ПроизводственныеКалендари/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ПроизводственныеКалендари/Forms/ФормаЭлемента/Form.form index 5bd2aad42..19ba63de2 100644 --- a/SSL/src/Catalogs/ПроизводственныеКалендари/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ПроизводственныеКалендари/Forms/ФормаЭлемента/Form.form @@ -262,9 +262,9 @@ OnPeriodOutput КалендарьПриВыводеПериода - 70 + 1 true - 21 + 1 true true true @@ -274,7 +274,6 @@ 1 4 - 3 @@ -499,10 +498,6 @@ ru Календарь - - ru - Календарь - КалендарьГруппаExtendedTooltip 34 diff --git a/SSL/src/Catalogs/ПроизводственныеКалендари/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ПроизводственныеКалендари/Forms/ФормаЭлемента/Module.bsl index e884ea1a3..92ec16a16 100644 --- a/SSL/src/Catalogs/ПроизводственныеКалендари/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/ПроизводственныеКалендари/Forms/ФормаЭлемента/Module.bsl @@ -59,8 +59,9 @@ КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// ОБРАБОТЧИКИ СОБЫТИЙ ЭЛЕМЕНТОВ ФОРМЫ +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы &НаКлиенте Процедура НомерТекущегоГодаПриИзменении(Элемент) diff --git a/SSL/src/Catalogs/ПроизводственныеКалендари/ManagerModule.bsl b/SSL/src/Catalogs/ПроизводственныеКалендари/ManagerModule.bsl index e9266fdb4..bf07c3f5c 100644 --- a/SSL/src/Catalogs/ПроизводственныеКалендари/ManagerModule.bsl +++ b/SSL/src/Catalogs/ПроизводственныеКалендари/ManagerModule.bsl @@ -475,7 +475,7 @@ Если КодПроизводственногоКалендаря = "РФ" Тогда - // И, 2, 3, 4, 5, 6 и 8 января - Новогодние каникулы. + // 1, 2, 3, 4, 5, 6 и 8 января - Новогодние каникулы. ДобавитьПраздничныйДень(ПраздничныеДни, "01.01", НомерГода, Ложь); ДобавитьПраздничныйДень(ПраздничныеДни, "02.01", НомерГода, Ложь); ДобавитьПраздничныйДень(ПраздничныеДни, "03.01", НомерГода, Ложь); @@ -484,16 +484,16 @@ ДобавитьПраздничныйДень(ПраздничныеДни, "06.01", НомерГода, Ложь); ДобавитьПраздничныйДень(ПраздничныеДни, "08.01", НомерГода, Ложь); - // Я января - Рождество Христово. + // 7 января - Рождество Христово. ДобавитьПраздничныйДень(ПраздничныеДни, "07.01", НомерГода, Ложь); - // Ф3 февраля - День защитника Отечества. + // 23 февраля - День защитника Отечества. ДобавитьПраздничныйДень(ПраздничныеДни, "23.02", НомерГода); - // М марта - Международный женский день. + // 8 марта - Международный женский день. ДобавитьПраздничныйДень(ПраздничныеДни, "08.03", НомерГода); - // М мая - Праздник Весны и Труда. + // 1 мая - Праздник Весны и Труда. ДобавитьПраздничныйДень(ПраздничныеДни, "01.05", НомерГода); // 9 мая - День Победы @@ -502,7 +502,7 @@ // 12 июня - День России ДобавитьПраздничныйДень(ПраздничныеДни, "12.06", НомерГода); - // Н ноября - День народного единства. + // 4 ноября - День народного единства. ДобавитьПраздничныйДень(ПраздничныеДни, "04.11", НомерГода); КонецЕсли; diff --git a/SSL/src/Catalogs/ПроизводственныеКалендари/Templates/ПФ_MXL_ПроизводственныйКалендарь/Template.mxlx b/SSL/src/Catalogs/ПроизводственныеКалендари/Templates/ПФ_MXL_ПроизводственныйКалендарь/Template.mxlx index a1cbf6b12..e47cfe6ca 100644 --- a/SSL/src/Catalogs/ПроизводственныеКалендари/Templates/ПФ_MXL_ПроизводственныйКалендарь/Template.mxlx +++ b/SSL/src/Catalogs/ПроизводственныеКалендари/Templates/ПФ_MXL_ПроизводственныйКалендарь/Template.mxlx @@ -435,8 +435,8 @@ Solid - - + + 19 diff --git a/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаВыбораГруппы/Form.form b/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаВыбораГруппы/Form.form index 605a351a2..cc1f82d18 100644 --- a/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаВыбораГруппы/Form.form +++ b/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаВыбораГруппы/Form.form @@ -221,6 +221,47 @@ true + + Комментарий + 20 + true + true + + true + + + Items.Список.CurrentData.Комментарий + + Left + + КомментарийРасширеннаяПодсказка + 22 + Label + true + true + + Left + + + + КомментарийКонтекстноеМеню + 21 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + ФормаКоманднаяПанель -1 diff --git a/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаГруппы/Form.form b/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаГруппы/Form.form index 17f49b743..b6f0d0c84 100644 --- a/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаГруппы/Form.form +++ b/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаГруппы/Form.form @@ -60,6 +60,7 @@ Объект.Parent + 2 ru Вышестоящая группа (папка), объединяющая группы (папки) для удобства поиска diff --git a/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаСписка/Form.form index 49794d237..fae33eaf5 100644 --- a/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаСписка/Form.form @@ -188,7 +188,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 21 @@ -213,6 +212,32 @@ КоманднаяПанель 22 + + ФормаВыбрать + 64 + true + true + + true + + + ФормаВыбратьРасширеннаяПодсказка + 65 + Label + true + true + + Left + + + Form.StandardCommand.Choose + Auto + true + true + true + UserCmds + Auto + ФормаСоздать 50 @@ -641,6 +666,7 @@ 8 true true + true 1 1 AutoUse diff --git a/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаСписка/Module.bsl index 38f1f7fd0..543902263 100644 --- a/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаСписка/Module.bsl @@ -20,7 +20,6 @@ Список, "Ссылка", Справочники.ПрофилиГруппДоступа.Администратор, ВидСравненияКомпоновкиДанных.НеРавно, , Истина); - Элементы.Список.РежимВыбора = Истина; Элементы.Список.ВыборГруппИЭлементов = Параметры.ВыборГруппИЭлементов; АвтоЗаголовок = Ложь; @@ -33,6 +32,8 @@ Иначе Заголовок = НСтр("ru = 'Выбор профиля групп доступа'"); КонецЕсли; + Иначе + Элементы.Список.РежимВыбора = Ложь; КонецЕсли; Если Параметры.Свойство("ПрофилиСРолямиПомеченнымиНаУдаление") Тогда diff --git a/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаЭлемента/Form.form index aca72bc10..87d829921 100644 --- a/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаЭлемента/Form.form @@ -1,5 +1,108 @@ + + ПоставляемыйПрофильИзменен + 346 + + ПоставляемыйПрофильИзмененКартинка + 348 + + <key>ru</key> + <value>Поставляемый профиль изменен картинка</value> + + true + true + + true + + + ПоставляемыйПрофильИзмененКартинкаРасширеннаяПодсказка + 350 + Label + true + true + + Left + + + + ПоставляемыйПрофильИзмененКартинкаКонтекстноеМеню + 349 + true + + true + true + + + CommonPicture.Предупреждение32 + + + + + ПоставляемыйПрофильИзмененПояснение + 343 + + <key>ru</key> + <value>В поставляемый профиль были внесены изменения. +Описание может отличаться от текущей настройки профиля.</value> + + true + true + + true + + Button + + ПоставляемыйПрофильИзмененПояснениеРасширеннаяПодсказка + 345 + Label + true + true + + Left + + + + ПоставляемыйПрофильИзмененПояснениеКонтекстноеМеню + 344 + true + + Label + true + + Left + Center + + + true + true + + true + + + <key>ru</key> + <value>Поставляемый профиль изменен</value> + + + ПоставляемыйПрофильИзмененРасширеннаяПодсказка + 347 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + Наименование 3 @@ -113,8 +216,6 @@ true Label - 9 - true true Left @@ -425,6 +526,7 @@ true UserCmds Auto + InAdditionalSubmenu РолиСтандартныеКоманды @@ -549,6 +651,8 @@ AutoUse true true + false + false false true Auto @@ -576,7 +680,6 @@ ru Разрешенные действия (роли) - 48 ОтображениеРолейExtendedTooltip 256 @@ -669,8 +772,10 @@ ChoiceProcessing ВидыДоступаВидДоступаПредставлениеОбработкаВыбора + 20 true true + false true true true @@ -857,7 +962,7 @@ true true true - 3 + 4 true true MultiRow @@ -868,7 +973,6 @@ AutoUse true true - false true Auto Auto @@ -910,7 +1014,6 @@ true Label - true true Left @@ -973,6 +1076,7 @@ 3 true true + false @@ -1142,8 +1246,8 @@ true true true + 6 true - 2 true MultiRow 1 @@ -1152,7 +1256,6 @@ AutoUse true true - false true Auto Auto @@ -1175,7 +1278,6 @@ ru Предустановленный вид доступа - 8 ПредустановленныйВидДоступаExtendedTooltip 285 @@ -1224,7 +1326,6 @@ true Label - true true false @@ -1341,120 +1442,6 @@ СтраницаОписание 332 - - ПоставляемыйПрофильИзменен - 346 - - ПоставляемыйПрофильИзмененКартинка - 348 - - <key>ru</key> - <value>Поставляемый профиль изменен картинка</value> - - true - true - - true - - - ПоставляемыйПрофильИзмененКартинкаРасширеннаяПодсказка - 350 - Label - true - true - - Left - - - - ПоставляемыйПрофильИзмененКартинкаКонтекстноеМеню - 349 - true - - 4 - true - 2 - true - - - CommonPicture.Предупреждение32 - - - - - ПоставляемыйПрофильИзмененПояснение - 343 - - <key>ru</key> - <value>В поставляемый профиль были внесены изменения. -Описание может отличаться от текущей настройки профиля.</value> - - true - true - - true - - - ru - Чтобы восстановить поставляемую настройку профиля, -выберите в меню "Еще" команду "Восстановить по начальному заполнению". - - Button - - ПоставляемыйПрофильИзмененПояснениеРасширеннаяПодсказка - 345 - Label - true - true - - Left - - - - ПоставляемыйПрофильИзмененПояснениеКонтекстноеМеню - 344 - true - - Label - true - true - - Left - Center - - - true - true - - true - - - <key>ru</key> - <value>Поставляемый профиль изменен</value> - - - ru - Поставляемый профиль изменен - - - ПоставляемыйПрофильИзмененРасширеннаяПодсказка - 347 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - ОписаниеПоставляемогоПрофиля 334 @@ -1493,7 +1480,6 @@ Left true - true true true true @@ -1504,6 +1490,48 @@ Normal + + Комментарий1 + 47 + true + true + + true + + + Объект.Комментарий + + Top + + Комментарий1РасширеннаяПодсказка + 254 + Label + true + true + + Left + + + + Комментарий1КонтекстноеМеню + 48 + true + + InputField + Enter + true + Left + true + + true + false + true + true + true + true + Normal + + true true @@ -1534,8 +1562,8 @@ СтраницаКомментарий 301 - Комментарий - 47 + Комментарий2 + 388 true true @@ -1546,8 +1574,8 @@ None - КомментарийExtendedTooltip - 254 + Комментарий2РасширеннаяПодсказка + 390 Label true true @@ -1556,8 +1584,8 @@ - КомментарийКонтекстноеМеню - 48 + Комментарий2КонтекстноеМеню + 389 true InputField @@ -1566,8 +1594,6 @@ Left true - true - true true true true @@ -1614,7 +1640,6 @@ ru Доступ - 11 ДоступExtendedTooltip 255 @@ -1704,7 +1729,6 @@ BeforeLoadDataFromSettingsAtServer ПриЗагрузкеДанныхИзНастроекНаСервере - 80 DontBlock Use true @@ -2132,7 +2156,7 @@ ПоказатьТолькоВыбранныеРоли <key>ru</key> - <value>Только выбранные роли</value> + <value>Только выбранные</value> 4 diff --git a/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаЭлемента/Help/ru.html b/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаЭлемента/Help/ru.html index 7bf48e1ba..cf1f60e3d 100644 --- a/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаЭлемента/Help/ru.html +++ b/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаЭлемента/Help/ru.html @@ -5,22 +5,22 @@

      С одним профилем может быть связана одна или несколько групп доступа. Например, на базе профиля Бухгалтер могут быть настроены группы доступа Бухгалтеры центрального офиса и Бухгалтеры филиала в Н-ске, которые отличаются друг от друга разрешенными организациями: "Центральный офис" и "Филиал в Н-ске".

      Ввод профиля групп доступа

      • Введите Наименование профиля. -
      • При необходимости можно включить профиль групп доступа в папку, заполнив поле Группа (папка). Профили групп доступа можно группировать по различным признакам. Выберите нужную папку из списка. +
      • При необходимости можно включить профиль групп доступа в папку, заполнив поле Группа (папка). Профили групп доступа можно группировать по различным признакам. Выберите нужную папку из списка.
      • В поле Назначение перейдите по ссылке, с помощью флажков выберите, для кого предназначен профиль групп доступа, например, Пользователи, нажмите кнопку Выбрать. После этого ссылка принимает выбранное значение.
      • Выберите Разрешенные действия (роли) на соответствующей вкладке.
      • Укажите Ограничения доступа на соответствующей вкладке. -
      • На вкладке Комментарий можно написать дополнительные сведения о профиле групп доступа. У предопределенных профилей доступа также имеется вкладка Описание с подробным описанием данного профиля и его назначения.

      Разрешенные действия (роли) 

      +
    • На вкладке Описание можно написать дополнительные сведения о профиле групп доступа. У предопределенных профилей доступа также имеется вкладка Описание с подробным описанием данного профиля и его назначения.

    Разрешенные действия (роли) 

    • На вкладке Разрешенные действия (роли) при добавлении нового профиля групп доступа сначала необходимо определить состав его ролей, исходя из потребностей целевой группы пользователей.
    • Роль определяет некоторую совокупность действий над объектами программы, которые может выполнять пользователь. Роли могут соответствовать как различным должностным обязанностям (или видам деятельности) пользователей программы, так и могут соотноситься с более мелкими функциями. Например, роль Бухгалтер предоставляет доступ к функциональному блоку, необходимому для выполнения должностных обязанностей бухгалтера, а для включения отдельной возможности просмотра файлов может быть дополнительно назначена роль Чтение файлов. Зачастую, роли либо разрешают просмотр, либо дают возможность редактирования тех или иных данных в программе. 
    • С помощью флажков выберите одну или несколько ролей.
      • С помощью кнопки  можно выбрать все роли в списке. -
      • С помощью кнопки  можно отменить выбор всех ролей.
    • С помощью соответствующей кнопки можно показать Только выбранные роли. -
    • С помощью кнопки По подсистемам можно показать список ролей одним из способов: +
    • С помощью кнопки  можно отменить выбор всех ролей.
  • С помощью соответствующей кнопки можно показать Только выбранные роли. +
  • С помощью команды Еще - По подсистемам можно показать список ролей одним из способов:
    • в алфавитном порядке;
    • сгруппировать по подсистемам.
  • Ограничения доступа

    • На вкладке Ограничения доступа необходимо принять решение по поводу состава видов доступа, которые должны быть определены в профиле.
    • Под видом доступа подразумевается некоторое правило, по которому "разрешается" доступ к данным программы. С их помощью можно более точно настраивать границы области данных, с которой разрешено работать участникам тех или иных групп доступа. -
    • В простейшем случае, если в профиль не включено ни одного вида доступа, то права доступа к данным определяются только ролями. Например, в случае, если профиль включает в себя роль для чтения документов Поступление товаров, то участники групп доступа получают возможность просмотра всех документов. Но если в дополнение к этой роли в профиль добавить вид доступа Организации, то появляется возможность разрешать пользователям работу с документами только по конкретным организациям; или наоборот, скрывать от них документы некоторых организаций. +
    • В простейшем случае, если в профиль не включено ни одного вида доступа, то права доступа к данным определяются только ролями. Например, в случае, если профиль включает в себя роль для чтения документов Демо: Поступление товаров, то участники групп доступа получают возможность просмотра всех документов. Но если в дополнение к этой роли в профиль добавить вид доступа Демо: Организации, то появляется возможность разрешать пользователям работу с документами только по конкретным организациям; или наоборот, скрывать от них документы некоторых организаций.
    • Таким образом, если список ролей в профиле отвечает на вопрос "что должно быть доступно, а что - нет" (какие функции и данные программы), то виды доступа уточняют, как именно они должны быть доступны (в разрезе каких разрешенных и запрещенных значений).
    • Состав видов доступа в профиле рекомендуется определять, исходя из соображений гибкости настройки прав доступа.
    • Укажите Виды доступа. diff --git a/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаЭлемента/Module.bsl index 7f6d5e0b1..88593dc47 100644 --- a/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/ПрофилиГруппДоступа/Forms/ФормаЭлемента/Module.bsl @@ -399,19 +399,6 @@ КонецПроцедуры -&НаКлиенте -Процедура РолиПометкаПриИзмененииПослеПодтверждения(Ответ, ПараметрыВыполнения) Экспорт - СтрокаТаблицы = Элементы.Роли.ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - Если Ответ = "Продолжить" Тогда - ОбработатьИнтерфейсРолей("ОбновитьСоставРолей"); - Иначе - СтрокаТаблицы.Пометка = Ложь; - КонецЕсли; -КонецПроцедуры - #КонецОбласти #Область ОбработчикиКомандФормы @@ -575,9 +562,13 @@ Элементы.ВосстановитьПоНачальномуЗаполнению.Видимость = Ложь; Элементы.ПоставляемыйПрофильИзменен.Видимость = Ложь; КонецЕсли; + + Элементы.Комментарий2.Видимость = Ложь; Иначе Элементы.ВосстановитьПоНачальномуЗаполнению.Видимость = Ложь; - Элементы.СтраницаОписание.Видимость = Ложь; + Элементы.ОписаниеПоставляемогоПрофиля.Видимость = Ложь; + Элементы.ПоставляемыйПрофильИзменен.Видимость = Ложь; + Элементы.Комментарий1.Видимость = Ложь; КонецЕсли; КонецПроцедуры @@ -593,6 +584,19 @@ КонецФункции +&НаКлиенте +Процедура РолиПометкаПриИзмененииПослеПодтверждения(Ответ, ПараметрыВыполнения) Экспорт + СтрокаТаблицы = Элементы.Роли.ТекущиеДанные; + Если СтрокаТаблицы = Неопределено Тогда + Возврат; + КонецЕсли; + Если Ответ = "Продолжить" Тогда + ОбработатьИнтерфейсРолей("ОбновитьСоставРолей"); + Иначе + СтрокаТаблицы.Пометка = Ложь; + КонецЕсли; +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Для работы интерфейса ролей. diff --git a/SSL/src/Catalogs/ПрофилиГруппДоступа/ManagerModule.bsl b/SSL/src/Catalogs/ПрофилиГруппДоступа/ManagerModule.bsl index 8d315d476..de4be4be5 100644 --- a/SSL/src/Catalogs/ПрофилиГруппДоступа/ManagerModule.bsl +++ b/SSL/src/Catalogs/ПрофилиГруппДоступа/ManagerModule.bsl @@ -52,39 +52,16 @@ Попытка Блокировка.Заблокировать(); - Параметры = СтандартныеПодсистемыСервер.ПараметрыРаботыПрограммы( - "ПараметрыОграниченияДоступа"); + Параметры = Неопределено; + ЕстьТекущиеИзменения = Ложь; + СтандартныеПодсистемыСервер.ОбновитьПараметрРаботыПрограммы("ПараметрыОграниченияДоступа", + "ПоставляемыеПрофилиГруппДоступа", ПоставляемыеПрофили, ЕстьТекущиеИзменения, ТолькоПроверка, Параметры); - Сохраненные = Неопределено; - - Если Параметры.Свойство("ПоставляемыеПрофилиГруппДоступа") Тогда - Сохраненные = Параметры.ПоставляемыеПрофилиГруппДоступа; - - Если НЕ ОбщегоНазначения.ДанныеСовпадают(ПоставляемыеПрофили, Сохраненные) Тогда - Сохраненные = Неопределено; - КонецЕсли; - КонецЕсли; - - Если Сохраненные = Неопределено Тогда - ЕстьИзменения = Истина; - Если ТолькоПроверка Тогда - ЗафиксироватьТранзакцию(); - Возврат; - КонецЕсли; - СтандартныеПодсистемыСервер.УстановитьПараметрРаботыПрограммы( - "ПараметрыОграниченияДоступа", - "ПоставляемыеПрофилиГруппДоступа", - ПоставляемыеПрофили); - КонецЕсли; - - СтандартныеПодсистемыСервер.ПодтвердитьОбновлениеПараметраРаботыПрограммы( - "ПараметрыОграниченияДоступа", "ПоставляемыеПрофилиГруппДоступа"); - - Если НЕ ТолькоПроверка Тогда + Если Не ТолькоПроверка Тогда СтандартныеПодсистемыСервер.ДобавитьИзмененияПараметраРаботыПрограммы( "ПараметрыОграниченияДоступа", "ПоставляемыеПрофилиГруппДоступа", - ?(Сохраненные = Неопределено, + ?(ЕстьТекущиеИзменения, Новый ФиксированнаяСтруктура("ЕстьИзменения", Истина), Новый ФиксированнаяСтруктура()) ); КонецЕсли; @@ -98,6 +75,15 @@ ВызватьИсключение; КонецПопытки; + Если ЕстьТекущиеИзменения Тогда + ЕстьИзменения = Истина; + КонецЕсли; + + Если Не (ТолькоПроверка И ЕстьТекущиеИзменения) Тогда + СтандартныеПодсистемыСервер.ПодтвердитьОбновлениеПараметраРаботыПрограммы( + "ПараметрыОграниченияДоступа", "ПоставляемыеПрофилиГруппДоступа"); + КонецЕсли; + Если СнятьМонопольныйРежим Тогда УстановитьМонопольныйРежим(Ложь); КонецЕсли; @@ -132,37 +118,27 @@ Попытка Блокировка.Заблокировать(); - Параметры = СтандартныеПодсистемыСервер.ПараметрыРаботыПрограммы( - "ПараметрыОграниченияДоступа"); - ЕстьУдаленные = Ложь; - Сохраненные = Неопределено; + ЕстьТекущиеИзменения = Ложь; + + Параметры = СтандартныеПодсистемыСервер.ПараметрыРаботыПрограммы("ПараметрыОграниченияДоступа"); Если Параметры.Свойство("ПредопределенныеПрофилиГруппДоступа") Тогда Сохраненные = Параметры.ПредопределенныеПрофилиГруппДоступа; - Если НЕ ПредопределенныеПрофилиСовпадают(ПредопределенныеПрофили, Сохраненные, ЕстьУдаленные) Тогда - Сохраненные = Неопределено; + Если Не ПредопределенныеПрофилиСовпадают(ПредопределенныеПрофили, Сохраненные, ЕстьУдаленные) Тогда + ЕстьТекущиеИзменения = Истина; КонецЕсли; + Иначе + ЕстьТекущиеИзменения = Истина; КонецЕсли; - Если Сохраненные = Неопределено Тогда - ЕстьИзменения = Истина; - Если ТолькоПроверка Тогда - ЗафиксироватьТранзакцию(); - Возврат; - КонецЕсли; - СтандартныеПодсистемыСервер.УстановитьПараметрРаботыПрограммы( - "ПараметрыОграниченияДоступа", - "ПредопределенныеПрофилиГруппДоступа", - ПредопределенныеПрофили); + Если Не ТолькоПроверка И ЕстьТекущиеИзменения Тогда + СтандартныеПодсистемыСервер.УстановитьПараметрРаботыПрограммы("ПараметрыОграниченияДоступа", + "ПредопределенныеПрофилиГруппДоступа", ПредопределенныеПрофили); КонецЕсли; - СтандартныеПодсистемыСервер.ПодтвердитьОбновлениеПараметраРаботыПрограммы( - "ПараметрыОграниченияДоступа", - "ПредопределенныеПрофилиГруппДоступа"); - - Если НЕ ТолькоПроверка Тогда + Если Не ТолькоПроверка Тогда СтандартныеПодсистемыСервер.ДобавитьИзмененияПараметраРаботыПрограммы( "ПараметрыОграниченияДоступа", "ПредопределенныеПрофилиГруппДоступа", @@ -180,6 +156,16 @@ ВызватьИсключение; КонецПопытки; + Если ЕстьТекущиеИзменения Тогда + ЕстьИзменения = Истина; + КонецЕсли; + + Если Не (ТолькоПроверка И ЕстьТекущиеИзменения) Тогда + СтандартныеПодсистемыСервер.ПодтвердитьОбновлениеПараметраРаботыПрограммы( + "ПараметрыОграниченияДоступа", + "ПредопределенныеПрофилиГруппДоступа"); + КонецЕсли; + Если СнятьМонопольныйРежим Тогда УстановитьМонопольныйРежим(Ложь); КонецЕсли; @@ -327,7 +313,7 @@ Процедура ПриЗаполненииСпискаТекущихДел(ТекущиеДела) Экспорт МодульТекущиеДелаСервер = ОбщегоНазначения.ОбщийМодуль("ТекущиеДелаСервер"); - Если Не Пользователи.ЭтоПолноправныйПользователь(, Истина) + Если Не Пользователи.ЭтоПолноправныйПользователь() Или МодульТекущиеДелаСервер.ДелоОтключено("ПрофилиГруппДоступа") Тогда Возврат; КонецЕсли; @@ -682,8 +668,7 @@ Если Роль.ПометкаУдаления Или НедоступныеРоли.Получить(Роль.Имя) <> Неопределено - Или ВРег(Лев(Роль.Имя, СтрДлина("Удалить"))) = ВРег("Удалить") - Или УправлениеДоступомСлужебный.ЭтоПрофильнаяРоль(Роль.Имя) Тогда + Или ВРег(Лев(Роль.Имя, СтрДлина("Удалить"))) = ВРег("Удалить") Тогда НесовместимыеПрофили.Добавить(ОписаниеПрофиля.Ссылка); Прервать; @@ -959,14 +944,6 @@ ОписаниеПрофиля.Идентификатор, Роль); КонецЕсли; - Если УправлениеДоступомСлужебный.ЭтоПрофильнаяРоль(Роль) Тогда - ВызватьИсключение ЗаголовокОшибки + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'В описании профиля ""%1 (%2)"" - |указана недопустимая роль ""%3"".'"), - ОписаниеПрофиля.Имя, - ОписаниеПрофиля.Идентификатор, - Роль); - КонецЕсли; // Проверка соответствия назначения ролей и профиля. Если НедоступныеРоли.Получить(Роль) <> Неопределено Тогда ВызватьИсключение ЗаголовокОшибки + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( diff --git a/SSL/src/Catalogs/РассылкиОтчетов/Commands/ВыполнитьСейчас/CommandModule.bsl b/SSL/src/Catalogs/РассылкиОтчетов/Commands/ВыполнитьСейчас/CommandModule.bsl index 60e06e81f..d714ad3ec 100644 --- a/SSL/src/Catalogs/РассылкиОтчетов/Commands/ВыполнитьСейчас/CommandModule.bsl +++ b/SSL/src/Catalogs/РассылкиОтчетов/Commands/ВыполнитьСейчас/CommandModule.bsl @@ -1,112 +1,19 @@ - #Область ОбработчикиСобытий &НаКлиенте -Процедура ОбработкаКоманды(МассивРассылок, Параметры) +Процедура ОбработкаКоманды(МассивРассылок, ПараметрыВыполненияКоманды) Если ТипЗнч(МассивРассылок) <> Тип("Массив") ИЛИ МассивРассылок.Количество() = 0 Тогда Возврат; КонецЕсли; - Форма = Параметры.Источник; + Форма = ПараметрыВыполненияКоманды.Источник; - ДополнительныеПараметры = Новый Структура("МассивРассылок, Форма, ЭтоФормаЭлемента"); - ДополнительныеПараметры.МассивРассылок = МассивРассылок; - ДополнительныеПараметры.Форма = Форма; - ДополнительныеПараметры.ЭтоФормаЭлемента = (Форма.ИмяФормы = "Справочник.РассылкиОтчетов.Форма.ФормаЭлемента"); - Обработчик = Новый ОписаниеОповещения("ВыполнитьСейчасЗавершение", ЭтотОбъект, ДополнительныеПараметры); + ПараметрыЗапуска = Новый Структура("МассивРассылок, Форма, ЭтоФормаЭлемента"); + ПараметрыЗапуска.МассивРассылок = МассивРассылок; + ПараметрыЗапуска.Форма = Форма; + ПараметрыЗапуска.ЭтоФормаЭлемента = (Форма.ИмяФормы = "Справочник.РассылкиОтчетов.Форма.ФормаЭлемента"); - Если ДополнительныеПараметры.ЭтоФормаЭлемента Тогда - Если НЕ Форма.Объект.Подготовлена Тогда - ПоказатьПредупреждение(, НСтр("ru = 'Рассылка не подготовлена'")); - Возврат; - КонецЕсли; - - Если Форма.Объект.ИспользоватьЭлектроннуюПочту Тогда - РассылкаОтчетовКлиент.ВыбратьПолучателя(Обработчик, Форма.Объект, Истина, Истина); - Возврат; - КонецЕсли; - КонецЕсли; - - ВыполнитьОбработкуОповещения(Обработчик, Неопределено); + РассылкаОтчетовКлиент.ВыполнитьСейчас(ПараметрыЗапуска); КонецПроцедуры -&НаКлиенте -Процедура ВыполнитьСейчасЗавершение(Получатели, ДополнительныеПараметры) Экспорт - // Обработчик результата работы процедуры ВыполнитьСейчас. - - Форма = ДополнительныеПараметры.Форма; - - ПредварительныеНастройки = Неопределено; - - Если ДополнительныеПараметры.ЭтоФормаЭлемента Тогда - Если Форма.Объект.ИспользоватьЭлектроннуюПочту Тогда - Если Получатели = Неопределено Тогда - Возврат; - КонецЕсли; - ПредварительныеНастройки = Новый Структура("Получатели", Получатели); - КонецЕсли; - ТекстСостояния = НСтр("ru = 'Выполняется рассылка отчетов'"); - Иначе - ТекстСостояния = НСтр("ru = 'Выполняются рассылки отчетов'"); - КонецЕсли; - - Состояние(ТекстСостояния, , , ); - - ПараметрыВызоваСервера = Новый Структура; - ПараметрыВызоваСервера.Вставить("МассивРассылок", ДополнительныеПараметры.МассивРассылок); - ПараметрыВызоваСервера.Вставить("ПредварительныеНастройки", ПредварительныеНастройки); - - Результат = ВыполнитьРассылкиВФоновомЗадании(ПараметрыВызоваСервера, Форма.УникальныйИдентификатор); - - Если Результат.Статус = "ВыполненоУспешно" Тогда - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(Форма, Результат.Детали); - ИначеЕсли Результат.Статус = "Исключение" Тогда - ТекстПредупреждения = НСтр("ru = 'Не удалось выполнить рассылку отчетов. - |Подробности см. в журнале регистрации.'"); - ПоказатьПредупреждение(, ТекстПредупреждения); - ИначеЕсли Результат.Статус = "Выполняется" Тогда - ФормаДлительнойОперации = ДлительныеОперацииКлиент.ОткрытьФормуДлительнойОперации(Форма, Результат.Детали.ИдентификаторЗадания); - - ПараметрыОбработчика = Неопределено; - ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - - Форма.ПараметрыФоновогоЗадания.Очистить(); - Форма.ПараметрыФоновогоЗадания.Добавить(Результат.Детали.ИдентификаторЗадания); - Форма.ПараметрыФоновогоЗадания.Добавить(Результат.Детали.АдресХранилища); - Форма.ПараметрыФоновогоЗадания.Добавить(ПараметрыОбработчика); - Форма.ПараметрыФоновогоЗадания.Добавить(ФормаДлительнойОперации); - - Форма.ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеФоновогоЗадания", ПараметрыОбработчика.ТекущийИнтервал, Истина); - КонецЕсли; -КонецПроцедуры - -&НаСервере -Функция ВыполнитьРассылкиВФоновомЗадании(ПараметрыВызоваСервера, Знач УникальныйИдентификатор) - // Запускает выполнение рассылок отчетов в фоновом задании. - - Результат = Новый Структура("Статус, Детали"); - - Попытка - РезультатФоновогоЗадания = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "РассылкаОтчетов.ВыполнитьРассылкиВФоновомЗадании", - ПараметрыВызоваСервера, - НСтр("ru = 'Рассылки отчетов: Выполнение рассылок в фоне'")); - - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - Результат.Статус = "ВыполненоУспешно"; // Не локализуется - Результат.Детали = ПолучитьИзВременногоХранилища(РезультатФоновогоЗадания.АдресХранилища); - Иначе - Результат.Статус = "Выполняется"; // Не локализуется - Результат.Детали = Новый Структура("ИдентификаторЗадания, АдресХранилища"); - ЗаполнитьЗначенияСвойств(Результат.Детали, РезультатФоновогоЗадания); - КонецЕсли; - Исключение - Результат.Статус = "Исключение"; // Не локализуется - КонецПопытки; - - Возврат Результат; -КонецФункции - #КонецОбласти diff --git a/SSL/src/Catalogs/РассылкиОтчетов/Commands/СобытияРассылки/CommandModule.bsl b/SSL/src/Catalogs/РассылкиОтчетов/Commands/СобытияРассылки/CommandModule.bsl index 502f25e59..3e4d4bd4f 100644 --- a/SSL/src/Catalogs/РассылкиОтчетов/Commands/СобытияРассылки/CommandModule.bsl +++ b/SSL/src/Catalogs/РассылкиОтчетов/Commands/СобытияРассылки/CommandModule.bsl @@ -3,26 +3,12 @@ &НаКлиенте Процедура ОбработкаКоманды(Рассылка, Параметры) - // Получение даты последнего запуска. - ПоследнийЗапуск = Неопределено; - Если Параметры.Источник.ИмяФормы = "Справочник.РассылкиОтчетов.Форма.ФормаСписка" Тогда - ДанныеСписка = Параметры.Источник.Элементы.Список.ТекущиеДанные; - Если ДанныеСписка <> Неопределено Тогда - ПоследнийЗапуск = ДанныеСписка.ПоследнийЗапуск; - КонецЕсли; + ПараметрыФормыЖурналаРегистрации = ПараметрыФормыЖурналаРегистрации(Рассылка); + Если ПараметрыФормыЖурналаРегистрации = Неопределено Тогда + ПоказатьПредупреждение(, НСтр("ru = 'Рассылка еще не выполнялась.'")); + Возврат; КонецЕсли; - Если ПоследнийЗапуск = Неопределено Тогда - ПоследнийЗапуск = ПоследнийЗапускРассылки(Рассылка); - КонецЕсли; - - // Параметры формы - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("Данные", Рассылка); - Если ПоследнийЗапуск <> Неопределено Тогда - ПараметрыФормы.Вставить("ДатаНачала", ПоследнийЗапуск); - КонецЕсли; - - ОткрытьФорму("Обработка.ЖурналРегистрации.Форма", ПараметрыФормы, Параметры.Источник, Параметры.Уникальность, Параметры.Окно); + ОткрытьФорму("Обработка.ЖурналРегистрации.Форма", ПараметрыФормыЖурналаРегистрации, ЭтотОбъект); КонецПроцедуры #КонецОбласти @@ -30,11 +16,12 @@ #Область СлужебныеПроцедурыИФункции &НаСервере -Функция ПоследнийЗапускРассылки(Рассылка) +Функция ПараметрыФормыЖурналаРегистрации(Рассылка) Запрос = Новый Запрос; - Запрос.Текст = + Запрос.Текст = "ВЫБРАТЬ - | Состояния.ПоследнийЗапуск + | Состояния.ПоследнийЗапуск, + | Состояния.НомерСеанса |ИЗ | РегистрСведений.СостоянияРассылокОтчетов КАК Состояния |ГДЕ @@ -43,9 +30,20 @@ УстановитьПривилегированныйРежим(Истина); Выборка = Запрос.Выполнить().Выбрать(); - УстановитьПривилегированныйРежим(Истина); - Результат = ?(Выборка.Следующий(), Выборка.ПоследнийЗапуск, Неопределено); + Если Не Выборка.Следующий() Тогда + Возврат Неопределено; + КонецЕсли; + Результат = Новый Структура; + Результат.Вставить("ДатаНачала", Выборка.ПоследнийЗапуск); + Если Не ЗначениеЗаполнено(Выборка.НомерСеанса) Тогда + Результат.Вставить("Данные", Рассылка); + Иначе + Сеансы = Новый СписокЗначений; + Сеансы.Добавить(Выборка.НомерСеанса); + Результат.Вставить("Сеанс", Сеансы); + КонецЕсли; Возврат Результат; КонецФункции + #КонецОбласти diff --git a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПараметрыFTP/Form.form b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПараметрыFTP/Form.form index a78245d86..265e8bbc6 100644 --- a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПараметрыFTP/Form.form +++ b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПараметрыFTP/Form.form @@ -1,53 +1,57 @@ - - ОсновныеПараметры - 11 - - СерверИКаталог - 9 - true - true - - true - - - СерверИКаталог - - - OnChange - СерверИКаталогПриИзменении - - - СерверИКаталогExtendedTooltip - 22 - Label - true - true - - Left - - - - СерверИКаталогКонтекстноеМеню - 10 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal + + СерверИКаталог + 9 + true + true + + true + + + СерверИКаталог + + + OnChange + СерверИКаталогПриИзменении + + + СерверИКаталогExtendedTooltip + 22 + Label + true + true + + Left - + + + СерверИКаталогКонтекстноеМеню + 10 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + ru + ftp://сервер/каталог/ + + + + + Группа1 + 28 Порт 3 @@ -100,123 +104,36 @@ Normal - true - true - - true - - - <key>ru</key> - <value>Основные параметры</value> - - - ru - Основные параметры - - - ОсновныеПараметрыExtendedTooltip - 21 + + Декорация1 + 30 + true + true + + true + + + Декорация1РасширеннаяПодсказка + 32 + Label + true + true + + Left + + + + Декорация1КонтекстноеМеню + 31 + true + Label - true + 10 true + true Left - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ДополнительныеПараметры - 12 - - Логин - 5 - true - true - - true - - - Логин - - - ЛогинExtendedTooltip - 25 - Label - true - true - - Left - - - - ЛогинКонтекстноеМеню - 6 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - - Пароль - 7 - true - true - - true - - - Пароль - - - ПарольExtendedTooltip - 26 - Label - true - true - - Left - - - - ПарольКонтекстноеМеню - 8 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal - ПассивноеСоединение @@ -257,17 +174,9 @@ true - - <key>ru</key> - <value>Дополнительные параметры</value> - - - ru - Дополнительные параметры - - ДополнительныеПараметрыExtendedTooltip - 24 + Группа1РасширеннаяПодсказка + 29 Label true true @@ -284,6 +193,93 @@ Auto + + Логин + 5 + true + true + + true + + + Логин + + + ЛогинExtendedTooltip + 25 + Label + true + true + + Left + + + + ЛогинКонтекстноеМеню + 6 + true + + InputField + Enter + true + Left + true + + 35 + true + true + true + true + true + Normal + + + + Пароль + 7 + true + true + + true + + + Пароль + + + ru + Пароль FTP сервера. + + + ПарольExtendedTooltip + 26 + Label + true + true + + Left + + + + ПарольКонтекстноеМеню + 8 + true + + InputField + Enter + true + Left + true + + 35 + true + true + true + true + true + true + Normal + + ФормаКоманднаяПанель -1 @@ -346,7 +342,6 @@ OnCreateAtServer ПриСозданииНаСервере - 80 LockOwner true true diff --git a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПараметрыFTP/Module.bsl b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПараметрыFTP/Module.bsl index 7dcb9fad6..3d0e86ba4 100644 --- a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПараметрыFTP/Module.bsl +++ b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПараметрыFTP/Module.bsl @@ -1,14 +1,15 @@ - #Область ОбработчикиСобытийФормы &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; - - РеквизитСправочника = Метаданные.Справочники.РассылкиОтчетов.Реквизиты.FTPПорт; + РеквизитыСправочника = Метаданные.Справочники.РассылкиОтчетов.Реквизиты; + Элементы.СерверИКаталог.Подсказка = РеквизитыСправочника.FTPКаталог.Подсказка; + Элементы.Порт.Подсказка = РеквизитыСправочника.FTPПорт.Подсказка; + Элементы.Логин.Подсказка = РеквизитыСправочника.FTPЛогин.Подсказка; + Элементы.ПассивноеСоединение.Подсказка = РеквизитыСправочника.FTPПассивноеСоединение.Подсказка; ЗаполнитьЗначенияСвойств(ЭтотОбъект, Параметры, "Сервер, Каталог, Порт, Логин, Пароль, ПассивноеСоединение"); Если ЭтотОбъект.Сервер = "" Тогда ЭтотОбъект.Сервер = "сервер"; @@ -82,7 +83,7 @@ &НаКлиенте Функция ПарольСкрыт() - Возврат НСтр("ru = '<пароль скрыт>'"); + Возврат "********"; КонецФункции #КонецОбласти diff --git a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПолучателиРассылки/ConditionalAppearance.dcssca b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПолучателиРассылки/ConditionalAppearance.dcssca deleted file mode 100644 index ede8c0edc..000000000 --- a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПолучателиРассылки/ConditionalAppearance.dcssca +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - ПолучателиПредставление - - - - - ПолучателиCP.Пометка - Equal - true - - - - - ЦветТекста - style:РольБезИсполнителей - - - - diff --git a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПолучателиРассылки/Form.form b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПолучателиРассылки/Form.form index 4e04930ca..cc2c9937a 100644 --- a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПолучателиРассылки/Form.form +++ b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПолучателиРассылки/Form.form @@ -37,10 +37,8 @@ Left true - 30 true true - false true false true @@ -66,155 +64,39 @@ DontUse - - НастройкаСпискаПолучателей - 1 - - Получатели - 64 - true - true - - true - - - Получатели - - true - None - Change - Copy - EndEdit - - ПолучательНаименованиеИПочта - 78 - - ПолучателиПолучатель - 68 - true - true - - true - - - Получатели.Получатель - - - ПолучателиПолучательРасширеннаяПодсказка - 70 - Label - true - true - - Left - - - - ПолучателиПолучательКонтекстноеМеню - 69 - true - - InputField - true - Left - true - - 19 - true - true - true - true - true - true - Normal - - - - ПолучателиТЗАдрес - 80 - true - true - - true - - - Получатели.Адрес - - - ПолучателиТЗАдресРасширеннаяПодсказка - 82 - Label - true - true - - Left - - - - ПолучателиТЗАдресКонтекстноеМеню - 81 - true - - InputField - Auto - Left - true - - 20 - true - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Получатель наименование и почта</value> - - - ru - Получатель наименование и почта - - false - - ПолучательНаименованиеИПочтаРасширеннаяПодсказка - 79 - Label - true - true - - Left - - - ColumnGroup - - InCell - auto - true - - + + Получатели + 64 + true + true + + true + + + Получатели + + true + None + Change + Copy + EndEdit + + ПолучательНаименованиеИПочта + 78 - ПолучателиИсключен - 71 + ПолучателиПолучатель + 68 true true true - Получатели.Исключен + Получатели.Получатель - ПолучателиИсключенРасширеннаяПодсказка - 73 + ПолучателиПолучательРасширеннаяПодсказка + 70 Label true true @@ -223,171 +105,39 @@ - ПолучателиИсключенКонтекстноеМеню - 72 + ПолучателиПолучательКонтекстноеМеню + 69 true - CheckBoxField - Auto + InputField true Left true - + + 10 + true + true + true + true + true + true + Normal + - - ПолучателиКоманднаяПанель - 66 - - Подобрать - 74 - true - true - - true - - - ПодобратьРасширеннаяПодсказка - 75 - Label - true - true - - Left - - - Form.Command.ПолучателиПодобрать - Normal - Auto - true - true - UserCmds - Auto - - - ВставитьИзБуфераОбмена - 95 - true - true - - true - - - ВставитьИзБуфераОбменаРасширеннаяПодсказка - 96 - Label - true - true - - Left - - - Form.Command.ВставитьИзБуфераОбмена - Normal - Auto - true - true - UserCmds - Auto - - - ПолучателиДобавить - 97 - true - true - - true - - - ПолучателиДобавитьРасширеннаяПодсказка - 98 - Label - true - true - - Left - - - Form.Item.Получатели.StandardCommand.Add - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - - ГруппаКоманднаяПанельПолучатели - 99 - true - true - - true - - - ru - Группа командная панель получатели - - - ГруппаКоманднаяПанельПолучателиРасширеннаяПодсказка - 100 - Label - true - true - - Left - - - - Item.Получатели - - - - ГруппаКоманднаяПанельФормы - 104 - true - true - - true - - - <key>ru</key> - <value>Группа командная панель формы</value> - - - ru - Группа командная панель получатели - - - ГруппаКоманднаяПанельФормыРасширеннаяПодсказка - 105 - Label - true - true - - Left - - - - Form - - - Left - - - BeforeAddRow - ПолучателиПередНачаломДобавления - - - ChoiceProcessing - ПолучателиОбработкаВыбора - - - ПолучателиСтрокаПоиска - 86 + + ПолучателиТЗАдрес + 80 + true + true + + true + + + Получатели.Адрес + - ПолучателиСтрокаПоискаРасширеннаяПодсказка - 88 + ПолучателиТЗАдресРасширеннаяПодсказка + 82 Label true true @@ -396,66 +146,70 @@ - ПолучателиСтрокаПоискаКонтекстноеМеню - 87 + ПолучателиТЗАдресКонтекстноеМеню + 81 true - Получатели - - true - - - - ПолучателиСостояниеПросмотра - 89 - - ПолучателиСостояниеПросмотраРасширеннаяПодсказка - 91 - Label + InputField + Auto + Left + true + + 20 true true - - Left - - - - ПолучателиСостояниеПросмотраКонтекстноеМеню - 90 - true - - ViewStatusAddition - Получатели - - true + true + true + true + true + Normal - - - ПолучателиУправлениеПоиском - 92 - - ПолучателиУправлениеПоискомРасширеннаяПодсказка - 94 - Label - true - true - - Left - - - - ПолучателиУправлениеПоискомКонтекстноеМеню - 93 - true - - SearchControlAddition - Получатели - - true - - + + true + true + + true + + + <key>ru</key> + <value>Получатель наименование и почта</value> + + + ru + Получатель наименование и почта + + false - ПолучателиРасширеннаяПодсказка - 67 + ПолучательНаименованиеИПочтаРасширеннаяПодсказка + 79 + Label + true + true + + Left + + + ColumnGroup + + InCell + auto + true + + + + ПолучателиИсключен + 71 + true + true + + true + + + Получатели.Исключен + + + ПолучателиИсключенРасширеннаяПодсказка + 73 Label true true @@ -464,56 +218,239 @@ - ПолучателиКонтекстноеМеню - 65 + ПолучателиИсключенКонтекстноеМеню + 72 true - true - true - true - true - true - MultiRow -
      true
      - 1 - 1 - AutoUse - AutoUse - true - true - false - true - Auto - Auto - true - true - true - true - - Получатели.ИндексКартинки - - - CommonPicture.СостоянияПользователей - - None - None - None - true - + CheckBoxField + Auto + true + Left + true +
      - true - true - - true - - - <key>ru</key> - <value>Получатели</value> - - 20 + + ПолучателиКоманднаяПанель + 66 + + Подобрать + 74 + true + true + + true + + + ПодобратьРасширеннаяПодсказка + 75 + Label + true + true + + Left + + + Form.Command.ПолучателиПодобрать + Normal + Auto + true + true + UserCmds + Auto + + + ВставитьИзБуфераОбмена + 95 + true + true + + true + + + ВставитьИзБуфераОбменаРасширеннаяПодсказка + 96 + Label + true + true + + Left + + + Form.Command.ВставитьИзБуфераОбмена + Normal + Auto + true + true + UserCmds + Auto + + + ПолучателиДобавить + 97 + true + true + + true + + + ПолучателиДобавитьРасширеннаяПодсказка + 98 + Label + true + true + + Left + + + Form.Item.Получатели.StandardCommand.Add + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ГруппаКоманднаяПанельПолучатели + 99 + true + true + + true + + + ru + Группа командная панель получатели + + + ГруппаКоманднаяПанельПолучателиРасширеннаяПодсказка + 100 + Label + true + true + + Left + + + + Item.Получатели + + + + ГруппаКоманднаяПанельФормы + 104 + true + true + + true + + + <key>ru</key> + <value>Группа командная панель формы</value> + + + ru + Группа командная панель получатели + + + ГруппаКоманднаяПанельФормыРасширеннаяПодсказка + 105 + Label + true + true + + Left + + + + Form + + + Left + + + BeforeAddRow + ПолучателиПередНачаломДобавления + + + ChoiceProcessing + ПолучателиОбработкаВыбора + + + ПолучателиСтрокаПоиска + 86 + + ПолучателиСтрокаПоискаРасширеннаяПодсказка + 88 + Label + true + true + + Left + + + + ПолучателиСтрокаПоискаКонтекстноеМеню + 87 + true + + Получатели + + true + + + + ПолучателиСостояниеПросмотра + 89 + + ПолучателиСостояниеПросмотраРасширеннаяПодсказка + 91 + Label + true + true + + Left + + + + ПолучателиСостояниеПросмотраКонтекстноеМеню + 90 + true + + ViewStatusAddition + Получатели + + true + + + + ПолучателиУправлениеПоиском + 92 + + ПолучателиУправлениеПоискомРасширеннаяПодсказка + 94 + Label + true + true + + Left + + + + ПолучателиУправлениеПоискомКонтекстноеМеню + 93 + true + + SearchControlAddition + Получатели + + true + + - НастройкаСпискаПолучателейРасширеннаяПодсказка - 2 + ПолучателиРасширеннаяПодсказка + 67 Label true true @@ -521,15 +458,43 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + + ПолучателиКонтекстноеМеню + 65 + true + + true + true + true + true + true + MultiRow +
      true
      + 1 + 1 + AutoUse + AutoUse + true + true + false + true + Auto + Auto + true + true + true + true + + Получатели.ИндексКартинки + + + CommonPicture.СостоянияПользователей + + None + None + None + true +
      ГруппаКоманднаяПанель @@ -635,10 +600,8 @@ Retry SaveValues Yes - 50 LockOwner true - true true Vertical true @@ -914,6 +877,12 @@ CatalogRef.ВидыКонтактнойИнформации + + ГруппаКонтактнойИнформацииТипаПолучателей + + CatalogRef.ВидыКонтактнойИнформации + + Получатели diff --git a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПолучателиРассылки/Module.bsl b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПолучателиРассылки/Module.bsl index 895641998..ce0b9dcaf 100644 --- a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПолучателиРассылки/Module.bsl +++ b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ПолучателиРассылки/Module.bsl @@ -8,7 +8,9 @@ КонецЕсли; ЗаполнитьЗначенияСвойств(ЭтотОбъект, Параметры, "ТипПолучателейРассылки, ВидПочтовогоАдресаПолучателей"); - Заголовок = Параметры.НаименованиеРассылки; + Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Получатели рассылки (%1)'"), + Параметры.НаименованиеРассылки); Для Каждого СтрокаТаблицы Из Параметры.Получатели Цикл НоваяСтрока = Получатели.Добавить(); @@ -26,6 +28,29 @@ КонецЕсли; КонецПроцедуры +&НаКлиенте +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) + + Если Получатели.Количество() = 0 Тогда + Возврат; + КонецЕсли; + + Фильтр = Новый Структура("Исключен", Ложь); + КоличествоПолучателей = Получатели.НайтиСтроки(Фильтр).Количество(); + Если КоличествоПолучателей > 0 Тогда + Возврат; + КонецЕсли; + + Отказ = Истина; + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + + ПоказатьПредупреждение(, НСтр("ru = 'Требуется указать хотя бы одного получателя'")); + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы @@ -287,16 +312,4 @@ КонецЕсли; КонецПроцедуры -&НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) - Если Получатели.Количество() > 0 Тогда - Фильтр = Новый Структура("Исключен", Ложь); - КоличествоПолучателей = Получатели.НайтиСтроки(Фильтр).Количество(); - Если КоличествоПолучателей = 0 Тогда - Отказ = Истина; - ПоказатьПредупреждение(, НСтр("ru = 'Требуется указать хотя бы одного получателя'")); - КонецЕсли; - КонецЕсли; -КонецПроцедуры - #КонецОбласти \ No newline at end of file diff --git a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаВыбораГруппы/Form.form b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаВыбораГруппы/Form.form index 283781ec7..05f9d08b9 100644 --- a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаВыбораГруппы/Form.form +++ b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаВыбораГруппы/Form.form @@ -254,8 +254,6 @@ ПриСозданииНаСервере Create - 50 - 10 LockOwner true true diff --git a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаГруппы/Form.form b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаГруппы/Form.form index b1c44e7b2..6cea35d28 100644 --- a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаГруппы/Form.form +++ b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаГруппы/Form.form @@ -85,6 +85,32 @@ ФормаКоманднаяПанель -1 + + ФормаЗаписать + 7 + true + true + + true + + + ФормаЗаписатьРасширеннаяПодсказка + 8 + Label + true + true + + Left + + + Form.StandardCommand.Write + Normal + Picture + true + true + UserCmds + Auto + Left true diff --git a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаСписка/Form.form index 91ff8fa15..b6d12700f 100644 --- a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаСписка/Form.form @@ -42,6 +42,32 @@ ВажныеКоманды 89 + + ФормаВыбрать + 152 + true + true + + true + + + ФормаВыбратьРасширеннаяПодсказка + 153 + Label + true + true + + Left + + + Form.Item.Список.StandardCommand.Choose + Normal + Auto + true + true + UserCmds + Auto + ФормаСоздать 91 @@ -220,7 +246,7 @@ Form.StandardCommand.CancelSearch Normal - Auto + Picture true true UserCmds @@ -851,9 +877,7 @@ Left - - Form - + Справка @@ -953,10 +977,10 @@ Left true - 35 + 25 true + 35 true - true @@ -1029,7 +1053,6 @@ Enter Left - 6 true true true @@ -1074,9 +1097,11 @@ Left true - 10 + 8 true + 4 true + false true @@ -1148,6 +1173,7 @@ Left true + 12 true true true @@ -1226,6 +1252,43 @@ true + + УспешныйЗапуск + 154 + true + true + + true + + + Список.УспешныйЗапуск + + + УспешныйЗапускРасширеннаяПодсказка + 156 + Label + true + true + + Left + + + + УспешныйЗапускКонтекстноеМеню + 155 + true + + LabelField + Enter + true + Left + true + + true + 20 + true + + Автор 12 @@ -1736,6 +1799,11 @@ Рассылки.Архивировать, Рассылки.ИмяАрхива, Состояние.ПоследнийЗапуск, + ВЫБОР + КОГДА Состояние.Выполнена + ТОГДА Состояние.ПоследнийЗапуск + ИНАЧЕ Состояние.УспешныйЗапуск + КОНЕЦ КАК УспешныйЗапуск, ВЫБОР КОГДА Состояние.ПоследнийЗапуск ЕСТЬ NULL ИЛИ Рассылки.ПометкаУдаления = ИСТИНА diff --git a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаСписка/Module.bsl index 2ac44c1bd..476b91b8b 100644 --- a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаСписка/Module.bsl @@ -6,6 +6,16 @@ Возврат; КонецЕсли; + СтандартныеПодсистемыСервер.УстановитьУсловноеОформлениеПоляДата( + Список, + "ПоследнийЗапуск", + Элементы.ПоследнийЗапуск.Имя); + + СтандартныеПодсистемыСервер.УстановитьУсловноеОформлениеПоляДата( + Список, + "УспешныйЗапуск", + Элементы.УспешныйЗапуск.Имя); + ТекстОшибкиПриОткрытии = РассылкаОтчетовПовтИсп.ТекстОшибкиПроверкиПраваДобавления(); Если ЗначениеЗаполнено(ТекстОшибкиПриОткрытии) Тогда Возврат; @@ -39,6 +49,17 @@ Если Параметры.РежимВыбора Тогда РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; + ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( + Элементы, + "ФОРМАВЫБРАТЬ", + "КнопкаПоУмолчанию", + Истина); + Иначе + ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( + Элементы, + "ФОРМАВЫБРАТЬ", + "Видимость", + Ложь); КонецЕсли; Если НЕ Пользователи.РолиДоступны("ДобавлениеИзменениеРассылокОтчетов") Тогда @@ -92,12 +113,4 @@ КонецЕсли; КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// Обработчики ожидания - -&НаКлиенте -Процедура Подключаемый_ПроверитьВыполнениеФоновогоЗадания() - РассылкаОтчетовКлиент.ПроверитьВыполнениеФоновогоЗадания(ЭтотОбъект); -КонецПроцедуры - #КонецОбласти diff --git a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаЭлемента/Form.form index e120a1df7..7e9ff1eae 100644 --- a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаЭлемента/Form.form @@ -36,7 +36,7 @@ Left true - true + 55 true true true @@ -155,10 +155,8 @@ Left true - 25 - true + 25 true - false true false false @@ -243,7 +241,7 @@ Opening ВидПочтовогоАдресаАвтораОткрытие - true + 25 true true false @@ -329,7 +327,7 @@ ChoiceProcessing ТипПолучателейРассылкиОбработкаВыбора - true + 25 true true true @@ -374,9 +372,6 @@ ru Виды рассылки - 41 - false - false ВидыРассылкиExtendedTooltip 705 @@ -442,7 +437,7 @@ Change Copy - Представление + ОтчетыПредставление 223 true true @@ -453,7 +448,7 @@ Объект.Отчеты.Представление - ПредставлениеExtendedTooltip + ОтчетыПредставлениеРасширеннаяПодсказка 719 Label true @@ -463,7 +458,7 @@ - ПредставлениеКонтекстноеМеню + ОтчетыПредставлениеКонтекстноеМеню 224 true @@ -837,6 +832,32 @@ ОтчетыКонтекстноеМеню 219 + + ОтчетыСформироватьОтчетКонтекстноеМеню + 1178 + true + true + + true + + + ОтчетыСформироватьОтчетКонтекстноеМенюРасширеннаяПодсказка + 1179 + Label + true + true + + Left + + + Form.Command.ПредварительныйПросмотрОтчета + Normal + Auto + true + true + UserCmds + Auto + true HierarchicalList @@ -1122,6 +1143,7 @@ true true true + 5 true true MultiRow @@ -1751,6 +1773,7 @@ true true true + 5 true true MultiRow @@ -2108,6 +2131,7 @@ true true true + 5 true true MultiRow @@ -2344,13 +2368,12 @@ Left true - 11 + 15 true true false true false - true false false false @@ -2400,7 +2423,6 @@ Left true - 4 true true true @@ -2604,65 +2626,6 @@ СтраницыПериодичности 433 - - СтраницаНеВыбрано - 434 - - ДекорацияПустаяВРасписание - 435 - true - true - - true - - - ДекорацияПустаяВРасписаниеРасширеннаяПодсказка - 757 - Label - true - true - - Left - - - - ДекорацияПустаяВРасписаниеКонтекстноеМеню - 436 - true - - Label - true - true - - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница не выбрано</value> - - - СтраницаНеВыбраноExtendedTooltip - 756 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - СтраницаЕжедневно 437 @@ -2708,6 +2671,7 @@ true true true + true true true true @@ -2742,7 +2706,6 @@ true Label - true true Left @@ -2776,50 +2739,6 @@ Auto - - ПредставлениеРасписания - 443 - true - true - - true - - - ПредставлениеРасписания - - None - - ПредставлениеРасписанияРасширеннаяПодсказка - 762 - Label - true - true - - Left - - - - ПредставлениеРасписанияКонтекстноеМеню - 444 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal - - true true @@ -2852,101 +2771,25 @@ ГруппаДниНедели 974 - - ГруппаДниНедели1 - 446 - - Понедельник - 447 - true - true - - true - - - Понедельник - - Right - - OnChange - ДниНеделиПриИзменении - - - ПонедельникExtendedTooltip - 765 - Label - true - true - - Left - - - - ПонедельникКонтекстноеМеню - 448 - true - - CheckBoxField - Enter - true - Left - true - - - - Суббота - 457 - true - true - - true - - - Суббота - - Right - - OnChange - ДниНеделиПриИзменении - - - СубботаExtendedTooltip - 770 - Label - true - true - - Left - - - - СубботаКонтекстноеМеню - 458 - true - - CheckBoxField - Enter - true - Left - true - - + + Понедельник + 447 true true true - - <key>ru</key> - <value>Дни недели</value> - - - ru - Группа дни недели1 - + + Понедельник + + Right + + OnChange + ДниНеделиПриИзменении + - ГруппаДниНедели1РасширеннаяПодсказка - 764 + ПонедельникExtendedTooltip + 765 Label true true @@ -2954,111 +2797,37 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + + ПонедельникКонтекстноеМеню + 448 + true + + CheckBoxField + Enter + true + Left + true + - - ГруппаДниНедели2 - 972 - - Вторник - 449 - true - true - - true - - - Вторник - - Right - - OnChange - ДниНеделиПриИзменении - - - ВторникExtendedTooltip - 766 - Label - true - true - - Left - - - - ВторникКонтекстноеМеню - 450 - true - - CheckBoxField - Enter - true - Left - true - - - - Воскресенье - 459 - true - true - - true - - - Воскресенье - - Right - - OnChange - ДниНеделиПриИзменении - - - ВоскресеньеExtendedTooltip - 771 - Label - true - true - - Left - - - - ВоскресеньеКонтекстноеМеню - 460 - true - - CheckBoxField - Enter - true - Left - true - - + + Вторник + 449 true true true - - <key>ru</key> - <value>Группа дни недели2</value> - - - ru - Группа дни недели2 - + + Вторник + + Right + + OnChange + ДниНеделиПриИзменении + - ГруппаДниНедели2РасширеннаяПодсказка - 973 + ВторникExtendedTooltip + 766 Label true true @@ -3066,73 +2835,37 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + + ВторникКонтекстноеМеню + 450 + true + + CheckBoxField + Enter + true + Left + true + - - ГруппаДниНедели3 - 976 - - Среда - 451 - true - true - - true - - - Среда - - Right - - OnChange - ДниНеделиПриИзменении - - - СредаExtendedTooltip - 767 - Label - true - true - - Left - - - - СредаКонтекстноеМеню - 452 - true - - CheckBoxField - Enter - true - Left - true - - + + Среда + 451 true true true - - <key>ru</key> - <value>Группа дни недели3</value> - - - ru - Группа дни недели3 - + + Среда + + Right + + OnChange + ДниНеделиПриИзменении + - ГруппаДниНедели3РасширеннаяПодсказка - 977 + СредаExtendedTooltip + 767 Label true true @@ -3140,73 +2873,37 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + + СредаКонтекстноеМеню + 452 + true + + CheckBoxField + Enter + true + Left + true + - - ГруппаДниНедели4 - 978 - - Четверг - 453 - true - true - - true - - - Четверг - - Right - - OnChange - ДниНеделиПриИзменении - - - ЧетвергExtendedTooltip - 768 - Label - true - true - - Left - - - - ЧетвергКонтекстноеМеню - 454 - true - - CheckBoxField - Enter - true - Left - true - - + + Четверг + 453 true true true - - <key>ru</key> - <value>Группа дни недели4</value> - - - ru - Группа дни недели4 - + + Четверг + + Right + + OnChange + ДниНеделиПриИзменении + - ГруппаДниНедели4РасширеннаяПодсказка - 979 + ЧетвергExtendedTooltip + 768 Label true true @@ -3214,73 +2911,37 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + + ЧетвергКонтекстноеМеню + 454 + true + + CheckBoxField + Enter + true + Left + true + - - ГруппаДниНедели5 - 980 - - Пятница - 455 - true - true - - true - - - Пятница - - Right - - OnChange - ДниНеделиПриИзменении - - - ПятницаExtendedTooltip - 769 - Label - true - true - - Left - - - - ПятницаКонтекстноеМеню - 456 - true - - CheckBoxField - Enter - true - Left - true - - + + Пятница + 455 true true true - - <key>ru</key> - <value>Группа дни недели5</value> - - - ru - Группа дни недели5 - + + Пятница + + Right + + OnChange + ДниНеделиПриИзменении + - ГруппаДниНедели5РасширеннаяПодсказка - 981 + ПятницаExtendedTooltip + 769 Label true true @@ -3288,15 +2949,93 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + + ПятницаКонтекстноеМеню + 456 + true + + CheckBoxField + Enter + true + Left + true + + + + Суббота + 457 + true + true + + true + + + Суббота + + Right + + OnChange + ДниНеделиПриИзменении + + + СубботаExtendedTooltip + 770 + Label + true + true + + Left + + + + СубботаКонтекстноеМеню + 458 + true + + CheckBoxField + Enter + true + Left + true + + + + Воскресенье + 459 + true + true + + true + + + Воскресенье + + Right + + OnChange + ДниНеделиПриИзменении + + + ВоскресеньеExtendedTooltip + 771 + Label + true + true + + Left + + + + ВоскресеньеКонтекстноеМеню + 460 + true + + CheckBoxField + Enter + true + Left + true + true true @@ -3307,7 +3046,6 @@ ru Группа дни недели - false ГруппаДниНеделиРасширеннаяПодсказка 975 @@ -3328,50 +3066,6 @@ Auto - - ПредставлениеРасписания2 - 520 - true - true - - true - - - ПредставлениеРасписания - - None - - ПредставлениеРасписания2ExtendedTooltip - 772 - Label - true - true - - Left - - - - ПредставлениеРасписания2КонтекстноеМеню - 521 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal - - true true @@ -3409,7 +3103,7 @@ 465 <key>ru</key> - <value>Каждый:</value> + <value>Каждый</value> true true @@ -3432,7 +3126,6 @@ true Label - true true Left @@ -3478,6 +3171,7 @@ true true true + true true true true @@ -3512,7 +3206,6 @@ true Label - true true Left @@ -3546,7 +3239,6 @@ true Label - true true @@ -3585,7 +3277,6 @@ true Label - true true Left @@ -4213,33 +3904,6 @@ ГруппаПометки 507 - - СнятьПометки - 508 - true - true - - true - - - СнятьПометкиExtendedTooltip - 801 - Label - true - true - - Left - - - Hyperlink - Form.Command.СнятьПометки - Normal - Auto - true - true - UserCmds - Auto - УстановитьПометки 491 @@ -4267,6 +3931,33 @@ UserCmds Auto + + СнятьПометки + 508 + true + true + + true + + + СнятьПометкиExtendedTooltip + 801 + Label + true + true + + Left + + + Hyperlink + Form.Command.СнятьПометки + Normal + Auto + true + true + UserCmds + Auto + true true @@ -4276,6 +3967,7 @@ ru Группа пометки + Center ГруппаПометкиРасширеннаяПодсказка 800 @@ -4292,7 +3984,6 @@ Auto true true - auto Auto Auto @@ -4321,50 +4012,6 @@ Auto - - ПредставлениеРасписания4 - 524 - true - true - - true - - - ПредставлениеРасписания - - None - - ПредставлениеРасписания4ExtendedTooltip - 802 - Label - true - true - - Left - - - - ПредставлениеРасписания4КонтекстноеМеню - 525 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal - - true true @@ -4391,79 +4038,6 @@ false - - СтраницаПроизвольное - 511 - - ПредставлениеРасписания3 - 522 - true - true - - true - - - ПредставлениеРасписания - - None - - ПредставлениеРасписания3ExtendedTooltip - 804 - Label - true - true - - Left - - - - ПредставлениеРасписания3КонтекстноеМеню - 523 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Страница произвольное</value> - - - СтраницаПроизвольноеExtendedTooltip - 803 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - true true @@ -4488,69 +4062,21 @@ Auto - - ГруппаАвтор - 679 - - Автор - 3 - true - false - - true - - - Объект.Автор - - Button - - OnChange - АвторПриИзменении - - - АвторExtendedTooltip - 806 - Label - true - true - - Left - - - - АвторКонтекстноеМеню - 4 - true - - InputField - Auto - true - Left - true - - 35 - true - true - false - true - true - true - true - Normal - - + + ПредставлениеРасписания + 1175 + + <key>ru</key> + <value>Представление расписания</value> + true true true - - <key>ru</key> - <value>Группа автор</value> - - ГруппаАвторExtendedTooltip - 805 + ПредставлениеРасписанияРасширеннаяПодсказка + 1177 Label true true @@ -4558,13 +4084,64 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + + ПредставлениеРасписанияКонтекстноеМеню + 1176 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + + + + Автор + 3 + true + true + + true + + + Объект.Автор + + Button + + OnChange + АвторПриИзменении + + + АвторExtendedTooltip + 806 + Label + true + true + + Left + + + + АвторКонтекстноеМеню + 4 + true + + InputField + Auto + true + Left + true + + true + true + true + true + true + true + Normal true @@ -4677,7 +4254,7 @@ Left true - 11 + 13 true true false @@ -4777,6 +4354,33 @@ Normal + + ПроверитьПубликацию2 + 1171 + true + true + + true + + + ПроверитьПубликацию2РасширеннаяПодсказка + 1172 + Label + true + true + + Left + + + UsualButton + Form.Command.ПроверитьПубликацию + Normal + Auto + true + true + UserCmds + Auto + true true @@ -4921,6 +4525,33 @@ Normal + + ПроверитьПубликацию1 + 1169 + true + true + + true + + + ПроверитьПубликацию1РасширеннаяПодсказка + 1170 + Label + true + true + + Left + + + UsualButton + Form.Command.ПроверитьПубликацию + Normal + Auto + true + true + UserCmds + Auto + true true @@ -4965,6 +4596,10 @@ FTPСерверИКаталог None + + OnChange + FTPСерверИКаталогПриИзменении + FTPСерверИКаталогExtendedTooltip 819 @@ -5007,16 +4642,44 @@ true false true - false - false true - false - false true true + true Normal + + ru + ftp://сервер/каталог/ +
      + + ПроверитьПубликацию + 640 + true + true + + true + + + ПроверитьПубликациюExtendedTooltip + 820 + Label + true + true + + Left + + + UsualButton + Form.Command.ПроверитьПубликацию + Normal + Auto + true + true + UserCmds + Auto + true true @@ -5066,33 +4729,6 @@ Auto
      - - ПроверитьПубликацию - 640 - true - true - - true - - - ПроверитьПубликациюExtendedTooltip - 820 - Label - true - true - - Left - - - UsualButton - Form.Command.ПроверитьПубликацию - Normal - Auto - true - true - UserCmds - Auto - true true @@ -5127,63 +4763,25 @@ ГруппаДоставкаПоЭлектроннойПочте 985 - - ГруппаИспользоватьЭлектроннуюПочту - 641 - - ИспользоватьЭлектроннуюПочту - 559 - true - true - - true - - - Объект.ИспользоватьЭлектроннуюПочту - - Right - - OnChange - ИспользоватьЭлектроннуюПочтуПриИзменении - - - ИспользоватьЭлектроннуюПочтуExtendedTooltip - 823 - Label - true - true - - Left - - - - ИспользоватьЭлектроннуюПочтуКонтекстноеМеню - 560 - true - - CheckBoxField - Enter - true - Left - true - - + + ИспользоватьЭлектроннуюПочту + 559 true true true - - <key>ru</key> - <value>Группа использовать электронную почту</value> - - - ru - Группа использовать электронную почту - + + Объект.ИспользоватьЭлектроннуюПочту + + Right + + OnChange + ИспользоватьЭлектроннуюПочтуПриИзменении + - ГруппаИспользоватьЭлектроннуюПочтуExtendedTooltip - 822 + ИспользоватьЭлектроннуюПочтуExtendedTooltip + 823 Label true true @@ -5191,14 +4789,17 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto - + + ИспользоватьЭлектроннуюПочтуКонтекстноеМеню + 560 + true + + CheckBoxField + Enter + true + Left + true + ПолучателиРассылки @@ -5238,7 +4839,7 @@ Click ПолучателиРассылкиНажатие - true + 50 true true @@ -5307,11 +4908,8 @@ Left true - 21 true true - false - false true true true @@ -5347,165 +4945,30 @@ UserCmds Auto - - ТолькоУведомления - 646 - - ТолькоУведомленияПоказать - 647 - - ТолькоУведомить - 413 - - <key>ru</key> - <value>Отправлять только уведомления</value> - - true - true - - true - - - Объект.ТолькоУведомить - - Right - Button - - OnChange - ТолькоУведомитьПриИзменении - - - ТолькоУведомитьExtendedTooltip - 826 - Label - true - true - - Left - - - - ТолькоУведомитьКонтекстноеМеню - 414 - true - - CheckBoxField - Center - Enter - true - Left - true - - - true - true - - true - - - <key>ru</key> - <value>Только уведомления показать</value> - - - ru - Только уведомления показать - - - ТолькоУведомленияПоказатьExtendedTooltip - 825 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - ТолькоУведомленияСкрыть - 648 - - Декорация3 - 649 - true - true - - true - - - Декорация3ExtendedTooltip - 828 - Label - true - true - - Left - - - - Декорация3КонтекстноеМеню - 650 - true - - Label - true - true - - Left - - - true - true - - true - - - <key>ru</key> - <value>Только уведомления скрыть</value> - - - ru - Только уведомления скрыть - - - ТолькоУведомленияСкрытьExtendedTooltip - 827 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - + + ТолькоУведомить + 413 + + <key>ru</key> + <value>Отправлять только уведомления</value> + true true true - - <key>ru</key> - <value>Только уведомления</value> - - - ru - Только уведомления - + + Объект.ТолькоУведомить + + Right + Button + + OnChange + ТолькоУведомитьПриИзменении + - ТолькоУведомленияExtendedTooltip - 824 + ТолькоУведомитьExtendedTooltip + 826 Label true true @@ -5513,10 +4976,18 @@ Left - Pages - - Auto - + + ТолькоУведомитьКонтекстноеМеню + 414 + true + + CheckBoxField + Center + Enter + true + Left + true + true true @@ -5797,7 +5268,6 @@ Left true - true true true true @@ -6714,6 +6184,7 @@ 1 true 1 + true true true @@ -6731,7 +6202,6 @@ ru Страницы текст письма HTML - true СтраницыТекстПисьмаHTMLExtendedTooltip 844 @@ -7449,7 +6919,6 @@ ru Страницы текст письма обычный текст - true СтраницыТекстПисьмаОбычныйТекстExtendedTooltip 878 @@ -7476,11 +6945,6 @@ ru Страницы текст письма - - ru - Страницы текст письма - - true СтраницыТекстПисьмаExtendedTooltip 843 @@ -7662,15 +7126,12 @@ Clearing ФорматыПоУмолчаниюОчистка - 25 true true true false true true - false - false true Normal @@ -7704,7 +7165,7 @@ SortListAsc SortListDesc - ФорматыОтчетовОтчет + ФорматыОтчетовПредставление 230 true true @@ -7715,7 +7176,7 @@ Объект.Отчеты.Представление - ФорматыОтчетовОтчетExtendedTooltip + ФорматыОтчетовПредставлениеРасширеннаяПодсказка 923 Label true @@ -7725,7 +7186,7 @@ - ФорматыОтчетовОтчетКонтекстноеМеню + ФорматыОтчетовПредставлениеКонтекстноеМеню 231 true @@ -7772,6 +7233,7 @@ true InputField + true true Left true @@ -7790,8 +7252,6 @@ false true true - false - false true Normal @@ -8078,6 +7538,7 @@ true true true + 5 true true
      true
      @@ -8194,7 +7655,6 @@ ru Форматы отчетов и кнопки - true ФорматыОтчетовИКнопкиExtendedTooltip 917 @@ -8375,10 +7835,10 @@ Left true - 20 + 10 true + 45 true - true true true true @@ -8430,8 +7890,7 @@ Left true - 12 - true + 12 true true true @@ -8454,7 +7913,6 @@ ru Параметры архивации в ZIP - true ГруппаПараметрыАрхивацииВZIPExtendedTooltip 929 @@ -8509,10 +7967,10 @@ Left true - 30 + 10 true + 35 true - false true true true @@ -8564,7 +8022,6 @@ ru Параметры доставки по электронной почте - true ДополнительныеПараметрыРассылкиПоЭлектроннойПочтеExtendedTooltip 936 @@ -8578,6 +8035,7 @@ UsualGroup Auto + WeakSeparation true true auto @@ -8592,7 +8050,7 @@ Родитель 382 true - false + true true @@ -8624,84 +8082,17 @@ ChoiceProcessing РодительОбработкаВыбора + 10 true true - false true false - true - true - false - true true true true Normal
      - - ДобавлятьДатуРассылкиВИменаФайлов - 653 - true - true - - true - - Right - - ДобавлятьДатуРассылкиВИменаФайловExtendedTooltip - 941 - Label - true - true - - Left - - - - ДобавлятьДатуРассылкиВИменаФайловКонтекстноеМеню - 654 - true - - CheckBoxField - Enter - true - Left - true - - - - ГруппаАвторРодитель - 396 - true - true - - true - - - <key>ru</key> - <value>Автор родитель</value> - - - ГруппаАвторРодительExtendedTooltip - 942 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Equal - Auto - Auto - - true true @@ -8711,7 +8102,6 @@ ru Дополнительные параметры - true ДополнительныеПараметрыExtendedTooltip 939 @@ -8726,6 +8116,7 @@ Vertical Auto + WeakSeparation true true auto @@ -8742,7 +8133,6 @@ ru Дополнительно - true СтраницаДополнительноExtendedTooltip 915 @@ -9045,7 +8435,6 @@ FillCheckProcessingAtServer ОбработкаПроверкиЗаполненияНаСервере - CustomizeForm Write WriteAndClose DontBlock @@ -9258,6 +8647,23 @@ true + + Доступность + + <key>ru</key> + <value>Доступность</value> + + 10 + + Boolean + + + true + + + true + + @@ -10422,10 +9828,10 @@ - ЗначениеКопирования + РассылкаОснование <key>ru</key> - <value>Значение копирования</value> + <value>Рассылка основание</value> 50 @@ -10502,26 +9908,6 @@ true - - ПараметрыФоновогоЗадания - - <key>ru</key> - <value>Параметры фонового задания</value> - - 55 - - ValueList - - - true - - - true - - - - - ЭтоНовый @@ -10667,24 +10053,6 @@ <common>true</common> </edit> </attributes> - <attributes> - <name>ПредставлениеРасписания</name> - <title> - <key>ru</key> - <value>Представление расписания</value> - - 65 - - String - - - - true - - - true - - ДобавитьИзменитьШаблонДатыРассылки diff --git a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаЭлемента/Module.bsl index b533e71a3..81befc669 100644 --- a/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/РассылкиОтчетов/Forms/ФормаЭлемента/Module.bsl @@ -15,7 +15,7 @@ // Перезаполнение очищаемых данных формы при повторном чтении объекта из БД. Если ПовторноеЧтение Тогда - ПрочитатьПользовательскоеПредставлениеФорматов(); + ЗаполнитьСведенияТаблицыОтчеты(); ПрочитатьРасписаниеРегламентногоЗадания(); КонецЕсли; @@ -57,14 +57,14 @@ Элементы.СобытияРассылки.Видимость = Ложь; КонецЕсли; - ЗначениеКопирования = Параметры.ЗначениеКопирования; + РассылкаОснование = Параметры.ЗначениеКопирования; // Используется при загрузке и записи настроек выбранного отчета. ИдентификаторТекущейСтрокиТаблицыОтчетов = -1; // Кэш проверки ЭтоНовый = Объект.Ссылка.Пустая(); - СозданКопированием = Не ЗначениеКопирования.Пустая(); + СозданКопированием = Не РассылкаОснование.Пустая(); // Добавление отчетов в табличную часть. Если Параметры.Свойство("ПрисоединяемыеОтчеты") И ТипЗнч(Параметры.ПрисоединяемыеОтчеты) = Тип("Массив") Тогда @@ -79,7 +79,7 @@ РассылкаБылаПерсонализирована = Объект.Персонализирована; // Чтение - ПрочитатьПользовательскоеПредставлениеФорматов(); + ЗаполнитьСведенияТаблицыОтчеты(); ЗаполнитьПустыеШаблоныСтандартными(Объект); Если ЭтоНовый И Не СозданКопированием Тогда @@ -114,9 +114,42 @@ Возврат; КонецЕсли; - // Имя архива - Объект.ИмяАрхива = Кэш.Шаблоны.ИмяАрхива; + // Звездочки для паролей, копируемых из основания. + Если СозданКопированием Тогда + АвторОснования = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(РассылкаОснование, "Автор"); + Если АвторОснования = ТекущийПользователь Тогда + УстановитьПривилегированныйРежим(Истина); + Пароли = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(РассылкаОснование, "ПарольАрхива, FTPПароль"); + УстановитьПривилегированныйРежим(Ложь); + Если ЗначениеЗаполнено(Пароли.ПарольАрхива) Тогда + ПарольАрхива = ПарольСкрыт(); + ПарольАрхиваИзменен = Истина; // См. обработку этого параметра в ПриЗаписиНаСервере. + КонецЕсли; + Если ЗначениеЗаполнено(Пароли.FTPПароль) Тогда + FTPПароль = ПарольСкрыт(); + FTPПарольИзменен = Истина; // См. обработку этого параметра в ПриЗаписиНаСервере. + КонецЕсли; + КонецЕсли; + КонецЕсли; + + // Сброс на умолчания параметров, копирование которых невозможно. + Если Не ПарольАрхиваИзменен Тогда + Объект.ИмяАрхива = Кэш.Шаблоны.ИмяАрхива; + КонецЕсли; + Если Не FTPПарольИзменен Тогда + Объект.FTPЛогин = ""; + Объект.FTPСервер = ""; + Объект.FTPПорт = 21; + Объект.FTPКаталог = ""; + КонецЕсли; + Иначе + УстановитьПривилегированныйРежим(Истина); + Пароли = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(Объект.Ссылка, "ПарольАрхива, FTPПароль"); + УстановитьПривилегированныйРежим(Ложь); + ПарольАрхива = ?(ЗначениеЗаполнено(Пароли.ПарольАрхива), ПарольСкрыт(), ""); + FTPПароль = ?(ЗначениеЗаполнено(Пароли.FTPПароль), ПарольСкрыт(), ""); КонецЕсли; + Пароли = Неопределено; // Позволяет видеть и управлять некоторыми защищенными параметры рассылки. РассылкуРедактируетАвтор = (Объект.Автор = Пользователи.ТекущийПользователь()); @@ -191,15 +224,6 @@ Для Каждого Строка Из Объект.Отчеты Цикл Строка.НеОтправлятьПустой = Не Строка.ОтправлятьЕслиПустой; КонецЦикла; - - Если Не ЭтоНовый Тогда - УстановитьПривилегированныйРежим(Истина); - Пароли = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(Объект.Ссылка, "ПарольАрхива, FTPПароль"); - УстановитьПривилегированныйРежим(Ложь); - ПарольАрхива = ?(ЗначениеЗаполнено(Пароли.ПарольАрхива), ЭтотОбъект.УникальныйИдентификатор, ""); - FTPПароль = ?(ЗначениеЗаполнено(Пароли.FTPПароль), ЭтотОбъект.УникальныйИдентификатор, ""); - КонецЕсли; - КонецПроцедуры &НаКлиенте @@ -374,29 +398,18 @@ // [2] и [3] Анализ СКД отчетов. Если СтрокаОтчеты.СКД Тогда - // [2] Заполнение переменных. - ЗаполненыВсеОбязательныеНастройки = Истина; - НастройкиКД = НастройкиОтчета.Настройки; ПользовательскиеНастройкиКД = НастройкиОтчета.ПользовательскиеНастройки; - + // [3] Проверка значения настроек. + Фильтр = Новый Структура("Использование, Значение", Истина, "[Получатель]"); + Найденные = ОтчетыКлиентСервер.НайтиНастройки(ПользовательскиеНастройкиКД.Элементы, Фильтр); + Если Найденные.Количество() > 0 Тогда + ОтчетПерсонализирован = Истина; + КонецЕсли; + // [2] Поиск и проверка доступной настройки. + ЗаполненыВсеОбязательныеНастройки = Истина; Для Каждого ПользовательскаяНастройка Из ПользовательскиеНастройкиКД.Элементы Цикл - Если ТипЗнч(ПользовательскаяНастройка) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда - // [3] Проверка значения настроек. - Если ПроверитьПерсонализированные - И ПользовательскаяНастройка.ПравоеЗначение = "[Получатель]" - И ПользовательскаяНастройка.Использование Тогда - ОтчетПерсонализирован = Истина; - КонецЕсли; - ИначеЕсли ТипЗнч(ПользовательскаяНастройка) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда - // [3] Проверка значения настроек. - Если ПроверитьПерсонализированные - И ПользовательскаяНастройка.Значение = "[Получатель]" - И ПользовательскаяНастройка.Использование Тогда - ОтчетПерсонализирован = Истина; - КонецЕсли; - - // [2] Поиск и проверка доступной настройки. + Если ТипЗнч(ПользовательскаяНастройка) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда Идентификатор = ПользовательскаяНастройка.ИдентификаторПользовательскойНастройки; ОбщаяНастройка = ОтчетыКлиентСервер.ПолучитьОбъектПоПользовательскомуИдентификатору(НастройкиКД, Идентификатор); Если ОбщаяНастройка = Неопределено Тогда @@ -485,6 +498,28 @@ &НаСервере Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) + ПарольАрхиваИзмененНоСкрыт = ПарольАрхиваИзменен И ПарольАрхива = ПарольСкрыт(); + FTPПарольИзмененНоСкрыт = FTPПарольИзменен И FTPПароль = ПарольСкрыт(); + + Если (ПарольАрхиваИзмененНоСкрыт Или FTPПарольИзмененНоСкрыт) И ЗначениеЗаполнено(РассылкаОснование) Тогда + ТекущийПользователь = Пользователи.ТекущийПользователь(); + АвторОснования = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(РассылкаОснование, "Автор"); + Если АвторОснования = ТекущийПользователь Тогда + УстановитьПривилегированныйРежим(Истина); + Если ПарольАрхиваИзмененНоСкрыт Тогда + ВременнаяПеременная = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(РассылкаОснование, "ПарольАрхива"); + ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(ТекущийОбъект.Ссылка, ВременнаяПеременная, "ПарольАрхива"); + ПарольАрхиваИзменен = Ложь; + КонецЕсли; + Если FTPПарольИзмененНоСкрыт Тогда + ВременнаяПеременная = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(РассылкаОснование, "FTPПароль"); + ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(ТекущийОбъект.Ссылка, ВременнаяПеременная, "FTPПароль"); + FTPПарольИзменен = Ложь; + КонецЕсли; + УстановитьПривилегированныйРежим(Ложь); + КонецЕсли; + РассылкаОснование = Неопределено; + КонецЕсли; Если ПарольАрхиваИзменен Тогда УстановитьПривилегированныйРежим(Истина); @@ -503,7 +538,7 @@ &НаСервере Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи) // Перезаполнение таблиц формы, связанных с таблицами объектов (т.к. таблицы объектов уже перезаполнились). - ПрочитатьПользовательскоеПредставлениеФорматов(); + ЗаполнитьСведенияТаблицыОтчеты(); ОтчетыПриАктивизацииСтрокиНаСервере(ИдентификаторТекущейСтрокиТаблицыОтчетов); // Обновление изначальных значений реквизитов в кэше. @@ -514,14 +549,6 @@ КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// Обработчики ожидания - -&НаКлиенте -Процедура Подключаемый_ПроверитьВыполнениеФоновогоЗадания() - РассылкаОтчетовКлиент.ПроверитьВыполнениеФоновогоЗадания(ЭтотОбъект); -КонецПроцедуры - #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы @@ -653,6 +680,12 @@ ПоказатьЗначение(, Объект.Автор); КонецПроцедуры +&НаКлиенте +Процедура FTPСерверИКаталогПриИзменении(Элемент) + ВыбранноеЗначение = РассылкаОтчетовКлиентСервер.РазобратьFTPАдрес(FTPСерверИКаталог); + FTPСерверИКаталогОбработкаВыбора(Элемент, ВыбранноеЗначение, Истина); +КонецПроцедуры + &НаКлиенте Процедура FTPСерверИКаталогНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) ПараметрыПроизвольнойФормы = Новый Структура("Сервер, Каталог, Порт, Логин, ПассивноеСоединение"); @@ -672,13 +705,13 @@ Возврат; КонецЕсли; Для Каждого КлючИЗначение Из ВыбранноеЗначение Цикл - Если КлючИЗначение.Ключ <> "Пароль" Тогда - Объект["FTP" + КлючИЗначение.Ключ] = КлючИЗначение.Значение; - Иначе - Если FTPПароль <> КлючИЗначение.Значение Тогда + Если КлючИЗначение.Ключ = "Пароль" Тогда + Если КлючИЗначение.Значение <> FTPПароль И КлючИЗначение.Значение <> ПарольСкрыт() Тогда FTPПароль = КлючИЗначение.Значение; FTPПарольИзменен = Истина; КонецЕсли; + Иначе + Объект["FTP" + КлючИЗначение.Ключ] = КлючИЗначение.Значение; КонецЕсли; КонецЦикла; @@ -791,6 +824,7 @@ СтандартнаяОбработка = Ложь; ОчиститьФормат(Кэш.ПустоеЗначениеОтчета); ФорматыПоУмолчанию = СписокФорматовПоУмолчаниюПредставление; + ВидимостьДоступностьКорректность(ЭтотОбъект, "ФорматыПоУмолчанию"); КонецПроцедуры &НаКлиенте @@ -832,7 +866,12 @@ Процедура ОтчетыОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; - СтруктураЗаполнения = Новый Структура("Форматы, ОтправлятьЕслиПустой, НеОтправлятьПустой", ПредставлениеФорматовПоУмолчанию(), Ложь, Истина); + СтруктураЗаполнения = Новый Структура; + СтруктураЗаполнения.Вставить("Форматы", ПредставлениеФорматовПоУмолчанию()); + СтруктураЗаполнения.Вставить("ОтправлятьЕслиПустой", Ложь); + СтруктураЗаполнения.Вставить("НеОтправлятьПустой", Истина); + СтруктураЗаполнения.Вставить("Доступность", Истина); + МассивНовыхСтрок = ВыборПодборПеретаскиваниеВТабличнуюЧасть( ВыбранноеЗначение, Объект.Отчеты, @@ -1170,7 +1209,6 @@ ПараметрыФормыВыбора.Вставить("РежимВыбора", Истина); ПараметрыФормыВыбора.Вставить("МножественныйВыбор", Истина); ПараметрыФормыВыбора.Вставить("ЗакрыватьПриВыборе", Ложь); - ПараметрыФормыВыбора.Вставить("ТолькоВарианты", Истина); ПараметрыФормыВыбора.Вставить("Отбор", ОтборВыбора); ПараметрыФормыВыбора.Вставить("ВыбранныеЗначения", ВыбранныеЗначения); @@ -1199,6 +1237,10 @@ ПоказатьПредупреждение(, НСтр("ru = 'Выберите отчет'")); Возврат; КонецЕсли; + Если Не СтрокаОтчеты.Доступность Тогда + ПоказатьПредупреждение(, СтрокаОтчеты.Представление); + Возврат; + КонецЕсли; ПараметрыОтчета = Новый Структура; ПараметрыОтчета.Вставить("Отчет", СтрокаОтчеты.Отчет); @@ -1235,33 +1277,23 @@ &НаКлиенте Процедура ПредварительныйПросмотрОтчетаПродолжение(РезультатВыбора, ПараметрыОтчета) Экспорт ПользовательскиеНастройкиКД = ПараметрыОтчета.Настройки; - ПерсонализированныеНастройки = Новый Массив; + Фильтр = Новый Структура("Использование, Значение", Истина, "[Получатель]"); + Если ТипЗнч(ПользовательскиеНастройкиКД) = Тип("ПользовательскиеНастройкиКомпоновкиДанных") Тогда + ПерсонализированныеНастройки = ОтчетыКлиентСервер.НайтиНастройки(ПользовательскиеНастройкиКД.Элементы, Фильтр); + Иначе + ПерсонализированныеНастройки = ОтчетыКлиентСервер.НайтиНастройки(ПользовательскиеНастройкиКД, Фильтр); + КонецЕсли; Если Объект.Персонализирована Тогда Если РезультатВыбора = Неопределено Тогда Возврат; Иначе Получатель = РезультатВыбора.Получатель; КонецЕсли; - Для Каждого ПользовательскаяНастройкаКД Из ПользовательскиеНастройкиКД.Элементы Цикл + Для Каждого ПользовательскаяНастройкаКД Из ПерсонализированныеНастройки Цикл Если ТипЗнч(ПользовательскаяНастройкаКД) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда - Значение = ПользовательскаяНастройкаКД.ПравоеЗначение; - ЭтоОтбор = Истина; + ПользовательскаяНастройкаКД.ПравоеЗначение = Получатель; ИначеЕсли ТипЗнч(ПользовательскаяНастройкаКД) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда - Значение = ПользовательскаяНастройкаКД.Значение; - ЭтоОтбор = Ложь; - Иначе - Продолжить; - КонецЕсли; - Если Не ПользовательскаяНастройкаКД.Использование Тогда - Продолжить; - КонецЕсли; - Если ТипЗнч(Значение) = Тип("Строка") И Значение = "[Получатель]" Тогда - ПерсонализированныеНастройки.Добавить(ПользовательскаяНастройкаКД); - Если ЭтоОтбор Тогда - ПользовательскаяНастройкаКД.ПравоеЗначение = Получатель; - Иначе - ПользовательскаяНастройкаКД.Значение = Получатель; - КонецЕсли; + ПользовательскаяНастройкаКД.Значение = Получатель; КонецЕсли; КонецЦикла; КонецЕсли; @@ -1629,27 +1661,34 @@ Шаблон = Объект.ТемаПисьма; КонецЕсли; - СписокОтчетов = ""; + СформированныеОтчеты = ""; Для Каждого СтрокаОтчет Из Объект.Отчеты Цикл - СписокОтчетов = СписокОтчетов + СформированныеОтчеты = СформированныеОтчеты + Символы.ПС + СтрокаОтчет.Представление + " (" + ?(СтрокаОтчет.Форматы = ПредставлениеФорматовПоУмолчанию(), ФорматыПоУмолчанию, СтрокаОтчет.Форматы) + ")"; КонецЦикла; - СписокОтчетов = СокрЛ(СписокОтчетов); + СформированныеОтчеты = СокрЛ(СформированныеОтчеты); - Настройки = Новый Структура; - Настройки.Вставить("НаименованиеРассылки", Объект.Наименование); - Настройки.Вставить("Автор", Объект.Автор); - Настройки.Вставить("ЗаголовокСистемы", Кэш.ЗаголовокСистемы); - Настройки.Вставить("ДатаВыполнения", ОбщегоНазначенияКлиент.ДатаСеанса()); - Настройки.Вставить("СформированныеОтчеты", Объект.Наименование); - Настройки.Вставить("СпособДоставки", ""); + ПараметрыДоставки = Новый Структура("ТолькоУведомить, ПисьмоВФорматеHTML, Папка, СетевойКаталогWindows, Сервер, Порт, Каталог"); + ЗаполнитьЗначенияСвойств(ПараметрыДоставки, Объект); + ПараметрыДоставки.Вставить("ВыполненаВПапку", Объект.ИспользоватьПапку); + ПараметрыДоставки.Вставить("ВыполненаВСетевойКаталог", Объект.ИспользоватьСетевойКаталог); + ПараметрыДоставки.Вставить("ВыполненаНаFTP", Объект.ИспользоватьFTPРесурс); + СпособДоставки = РассылкаОтчетовКлиентСервер.ПредставлениеСпособовДоставки(ПараметрыДоставки); + + ПараметрыШаблона = Новый Структура; + ПараметрыШаблона.Вставить("НаименованиеРассылки", Объект.Наименование); + ПараметрыШаблона.Вставить("Автор", Объект.Автор); + ПараметрыШаблона.Вставить("ЗаголовокСистемы", Кэш.ЗаголовокСистемы); + ПараметрыШаблона.Вставить("ДатаВыполнения", ОбщегоНазначенияКлиент.ДатаСеанса()); + ПараметрыШаблона.Вставить("СформированныеОтчеты", СформированныеОтчеты); + ПараметрыШаблона.Вставить("СпособДоставки", СпособДоставки); ТекстовыйДокумент = Новый ТекстовыйДокумент; - ТекстовыйДокумент.УстановитьТекст(РассылкаОтчетовКлиентСервер.ЗаполнитьШаблон(Шаблон, Настройки)); + ТекстовыйДокумент.УстановитьТекст(РассылкаОтчетовКлиентСервер.ЗаполнитьШаблон(Шаблон, ПараметрыШаблона)); ТекстовыйДокумент.Показать(); КонецПроцедуры @@ -1815,11 +1854,15 @@ &НаКлиенте Процедура ПроверитьРассылкуПослеОтветаНаВопрос(Ответ, ПараметрыДоставки) Экспорт - Если Ответ = 1 Тогда - Объект.Подготовлена = Истина; - Если Не Записать() Тогда - Возврат; + Если Ответ = 1 Или Модифицированность Тогда + Если Ответ = 1 Тогда + Объект.Подготовлена = Истина; КонецЕсли; + ПараметрыЗаписи = Новый Структура; + ПараметрыЗаписи.Вставить("ИмяКоманды", "КомандаПроверитьРассылку"); + ПараметрыЗаписи.Вставить("ПараметрыДоставки", ПараметрыДоставки); + ЗаписатьНаКлиенте(Неопределено, ПараметрыЗаписи); + Возврат; ИначеЕсли Ответ <> -1 Тогда Возврат; КонецЕсли; @@ -2002,6 +2045,7 @@ Если ПредставлениеФормата <> Неопределено Тогда ФорматыПоУмолчанию = ПредставлениеФормата; КонецЕсли; + ВидимостьДоступностьКорректность(ЭтотОбъект, "ФорматыПоУмолчанию"); КонецПроцедуры &НаКлиенте @@ -2198,7 +2242,7 @@ ЗаголовокВопроса = НСтр("ru = 'Проверка способа доставки'"); Если Не Объект.Подготовлена Тогда ТекстВопроса = НСтр("ru = 'Перед проверкой рассылка должна быть подготовлена. - |Нажмите ""Продолжить"", чтобы установить флажок ""Подготовлена"" и записать рассылку.'"); + |Нажмите ""Продолжить"", чтобы включить флажок ""Подготовлена"" и записать рассылку.'"); Иначе ТекстВопроса = НСтр("ru = 'Перед проверкой рассылка должна быть записана. |Нажмите ""Продолжить"", чтобы записать рассылку.'"); @@ -2220,17 +2264,38 @@ // Клиент, Сервер &НаКлиентеНаСервереБезКонтекста -Процедура ПереключитьСтраницу(Элементы, ИмяНабораСтраниц, СуффиксСтраниц) - Элементы[ИмяНабораСтраниц].ТекущаяСтраница = Элементы[ИмяНабораСтраниц + СуффиксСтраниц]; +Процедура ПереключитьСтраницу(Элементы, ИмяНабораСтраниц, СуффиксТекущейСтраницы) + ГруппаСтраниц = Элементы[ИмяНабораСтраниц]; + ТекущаяСтраница = Элементы[ИмяНабораСтраниц + СуффиксТекущейСтраницы]; + ГруппаСтраниц.ТекущаяСтраница = ТекущаяСтраница; + // Для платформы (в некоторых случаях страница не переключается с поля HTML документа). + Для Каждого Страница Из ГруппаСтраниц.ПодчиненныеЭлементы Цикл + Если ТипЗнч(Страница) = Тип("ГруппаФормы") Тогда + Страница.Видимость = (Страница = ТекущаяСтраница); + КонецЕсли; + КонецЦикла; КонецПроцедуры +&НаКлиентеНаСервереБезКонтекста +Функция ПарольСкрыт() + Возврат "********"; +КонецФункции + &НаКлиентеНаСервереБезКонтекста Процедура ВидимостьДоступностьКорректность(Форма, Изменения = "") Объект = Форма.Объект; Элементы = Форма.Элементы; Если Изменения = "" Или Изменения = "FTPСерверИКаталог" Тогда - Форма.FTPСерверИКаталог = "ftp://"+ Объект.FTPСервер + Объект.FTPКаталог; + Если ЗначениеЗаполнено(Объект.FTPСервер) Тогда + ПредставлениеАдреса = "ftp://"; + Если ЗначениеЗаполнено(Объект.FTPЛогин) Тогда + ПредставлениеАдреса = ПредставлениеАдреса + Объект.FTPЛогин + ?(ЗначениеЗаполнено(Форма.FTPПароль), ":" + ПарольСкрыт(), "") + "@"; + КонецЕсли; + Форма.FTPСерверИКаталог = ПредставлениеАдреса + Объект.FTPСервер + ":" + Формат(Объект.FTPПорт, "ЧН=0; ЧГ=0") + Объект.FTPКаталог; + Иначе + Форма.FTPСерверИКаталог = ""; + КонецЕсли; КонецЕсли; Если Изменения = "" @@ -2290,7 +2355,7 @@ Элементы.Родитель.Доступность = Не Объект.Личная; ПереключитьСтраницу(Элементы, "ВидыРассылки", ?(Объект.Личная, "Личная", "ДляПолучателей")); Элементы.ДругиеСпособыДоставки.Видимость = РассылкаОбщая; - Элементы.ГруппаИспользоватьЭлектроннуюПочту.Видимость = РассылкаОбщая; + Элементы.ИспользоватьЭлектроннуюПочту.Видимость = РассылкаОбщая; Если Объект.Личная Тогда Элементы.ПолучателиРассылки.Видимость = Ложь; @@ -2362,9 +2427,8 @@ Или Изменения = "Публиковать" Или Изменения = "ВидРассылки" Тогда - ВидимостьОпции = (Объект.ИспользоватьЭлектроннуюПочту И Форма.Публиковать); - ПереключитьСтраницу(Элементы, "ТолькоУведомления", ?(ВидимостьОпции, "Показать", "Скрыть")); - Если Не ВидимостьОпции Тогда + Элементы.ТолькоУведомить.Видимость = (Объект.ИспользоватьЭлектроннуюПочту И Форма.Публиковать); + Если Не Элементы.ТолькоУведомить.Видимость Тогда Объект.ТолькоУведомить = Ложь; КонецЕсли; @@ -2416,7 +2480,11 @@ ИмяПеречисления = "Произвольное"; КонецЕсли; - Элементы.СтраницыПериодичности.ТекущаяСтраница = Элементы["Страница"+ИмяПеречисления]; + Страницы = Элементы.СтраницыПериодичности.ПодчиненныеЭлементы; + ИмяВидимойСтраницы = "Страница"+ИмяПеречисления; + Для Каждого Страница Из Страницы Цикл + Страница.Видимость = (Страница.Имя = ИмяВидимойСтраницы); + КонецЦикла; Если ИмяПеречисления = "Произвольное" Тогда Элементы.СтраницыВремяИлиИзменить.ТекущаяСтраница = Элементы.СтраницаИзменитьРасписание; Иначе @@ -2492,8 +2560,18 @@ Элементы.ГиперссылкаНачалоКонецМесяца.Заголовок = ?(Форма.Расписание.ДеньВМесяце >= 0, "начала", "конца"); КонецЕсли; + Если Изменения = "" Или Изменения = "ФорматыПоУмолчанию" Тогда + Элементы.ФорматыПоУмолчанию.КнопкаОчистки = (Форма.ФорматыПоУмолчанию <> Форма.СписокФорматовПоУмолчаниюПредставление); + КонецЕсли; + Если Изменения = "" Или Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаРасписание Тогда - Форма.ПредставлениеРасписания = Строка(Форма.Расписание); + Элементы.ПредставлениеРасписания.Видимость = Объект.ВыполнятьПоРасписанию; + Если Объект.ВыполнятьПоРасписанию Тогда + ПредставлениеРасписания = Строка(Форма.Расписание); + ПредставлениеРасписания = ВРег(Лев(ПредставлениеРасписания, 1)) + Сред(ПредставлениеРасписания, 2); + ПредставлениеРасписания = СтрЗаменить(СтрЗаменить(ПредставлениеРасписания, " ", " "), " ]", "]") + "."; + Элементы.ПредставлениеРасписания.Заголовок = ПредставлениеРасписания; + КонецЕсли; КонецЕсли; КонецПроцедуры @@ -2649,6 +2727,11 @@ КонецЕсли; КонецЕсли; + Если Не СтрокаОтчеты.Доступность Тогда + Элементы.СтраницыНастроекОтчета.ТекущаяСтраница = Элементы.ПустаяСтраница; + Возврат ""; + КонецЕсли; + // Инициализация ПараметрыОтчета = ИнициализироватьОтчет(СтрокаОтчеты, ДобавитьДежурнуюФразу, ПользовательскиеНастройки); @@ -2757,13 +2840,13 @@ &НаСервере Процедура ПроверитьДобавленныеСтрокиОтчетов(СтруктураВыбора) // СтруктураВыбора: - // Выбрано - Структура - строки, выбранные пользователем. - // Успешно - Структура - строки, инициализированные и добавленные в список. - // СОшибками - Структура - строки, не добавленные в список из-за ошибок. - // * МассивСтрок - Массив. - // * Количество - Число - // * ПредставлениеОтчетов - Строка. - // * Текст - Строка. + // Выбрано - Структура - Строки, выбранные пользователем. + // Успешно - Структура - Строки, инициализированные и добавленные в список. + // СОшибками - Структура - Строки, не добавленные в список из-за ошибок. + // * МассивСтрок - Массив - Массив идентификаторов строк. + // * Количество - Число - Количество строк. + // * ПредставлениеОтчетов - Строка - Представление всех отчетов указанных строк. + // * Текст - Строка - Текст возникших ошибок. МассивОшибок = Новый Массив; @@ -2798,8 +2881,8 @@ ИдентификаторТекущейСтрокиТаблицыОтчетов = Элементы.Отчеты.ТекущаяСтрока; ОтчетыПриАктивизацииСтрокиНаСервере(ИдентификаторСтрокиОтчеты, Ложь); КонецЕсли; - - // Сборка текста ошибок + + // Сборка текста ошибок. Если СтруктураВыбора.СОшибками.Количество > 0 Тогда СтруктураВыбора.СОшибками.Текст = РассылкаОтчетовКлиентСервер.СтрокаСообщенийПользователю(МассивОшибок); КонецЕсли; @@ -2807,10 +2890,6 @@ &НаСервере Функция ПроверитьСпособДоставки(Рассылка, Знач ПараметрыДоставки) - Если Модифицированность И Не Записать() Тогда - Возврат Неопределено; - КонецЕсли; - ПараметрыДоставки.Вставить("ДатаВыполнения", ТекущаяДатаСеанса()); // Инициализация параметров записи в журнал регистрации. @@ -2825,6 +2904,7 @@ УстановитьПривилегированныйРежим(Ложь); // Добавление параметров доставки для записи результатов выполнения. + ПараметрыДоставки.Вставить("РежимТестирования", Истина); ПараметрыДоставки.Вставить("БылиОшибки", Ложь); ПараметрыДоставки.Вставить("БылиПредупреждения", Ложь); ПараметрыДоставки.Вставить("ВыполненаВПапку", Ложь); @@ -2845,7 +2925,14 @@ Вложения.Вставить(Файл.Имя, Файл.ПолноеИмя); // Доставка - Выполнена = РассылкаОтчетов.ВыполнитьДоставку(ПараметрыЖурнала, ПараметрыДоставки, Вложения); + НачатьТранзакцию(); + Попытка + Выполнена = РассылкаОтчетов.ВыполнитьДоставку(ПараметрыЖурнала, ПараметрыДоставки, Вложения); + ОтменитьТранзакцию(); // После окончания теста откатываются все изменения в базе. + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; // Очистка вложений Для Каждого Вложение Из Вложения Цикл @@ -2875,6 +2962,13 @@ Инструкция.Оформление.Вставить("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); Инструкция.Оформление.Вставить("Доступность", Ложь); СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); + + Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); + Инструкция.Поля = "Отчеты, ФорматыОтчетов"; + Инструкция.Отборы.Вставить("Объект.Отчеты.Доступность", Ложь); + Инструкция.Оформление.Вставить("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + Инструкция.Оформление.Вставить("ТолькоПросмотр", Истина); + СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); КонецПроцедуры &НаСервереБезКонтекста @@ -2924,10 +3018,17 @@ КонецФункции &НаСервере -Процедура ПрочитатьПользовательскоеПредставлениеФорматов() - УстановитьПривилегированныйРежим(Истина); +Процедура ЗаполнитьСведенияТаблицыОтчеты() + ДоступностьОтчетов = ВариантыОтчетов.ДоступностьОтчетов(Объект.Отчеты.Выгрузить(, "Отчет").ВыгрузитьКолонку("Отчет")); Для Каждого СтрокаОтчеты Из Объект.Отчеты Цикл - СтрокаОтчеты.Представление = Строка(СтрокаОтчеты.Отчет); + ИнформацияОбОтчете = ДоступностьОтчетов.Найти(СтрокаОтчеты.Отчет, "Ссылка"); + Если ИнформацияОбОтчете = Неопределено Тогда + СтрокаОтчеты.Доступность = Ложь; + СтрокаОтчеты.Представление = НСтр("ru = '<Недостаточно прав для работы с отчетом>'"); + Иначе + СтрокаОтчеты.Доступность = ИнформацияОбОтчете.Доступен; + СтрокаОтчеты.Представление = ИнформацияОбОтчете.Представление; + КонецЕсли; СтрокаОтчеты.Форматы = ""; Найденные = Объект.ФорматыОтчетов.НайтиСтроки(Новый Структура("Отчет", СтрокаОтчеты.Отчет)); Для Каждого СтрокаФормат Из Найденные Цикл @@ -2937,13 +3038,12 @@ СтрокаОтчеты.Форматы = ПредставлениеФорматовПоУмолчанию(); КонецЕсли; КонецЦикла; - УстановитьПривилегированныйРежим(Ложь); КонецПроцедуры &НаСервере Процедура ПрочитатьРасписаниеРегламентногоЗадания() УстановитьПривилегированныйРежим(Истина); - ИдентификаторЗадания = ?(СозданКопированием, ЗначениеКопирования.РегламентноеЗадание, Объект.РегламентноеЗадание); + ИдентификаторЗадания = ?(СозданКопированием, РассылкаОснование.РегламентноеЗадание, Объект.РегламентноеЗадание); Если ТипЗнч(ИдентификаторЗадания) = Тип("УникальныйИдентификатор") Тогда Задание = РегламентныеЗадания.НайтиПоУникальномуИдентификатору(ИдентификаторЗадания); Если Задание <> Неопределено Тогда @@ -2961,7 +3061,7 @@ Для ОбратныйИндекс = 1 По КоличествоСтрок Цикл Индекс = КоличествоСтрок - ОбратныйИндекс; СтрокаОтчеты = Объект.Отчеты.Получить(Индекс); - СтрокаОтчетыОбъектаКопирования = ЗначениеКопирования.Отчеты.Получить(Индекс); + СтрокаОтчетыОбъектаКопирования = РассылкаОснование.Отчеты.Получить(Индекс); ПользовательскиеНастройкиКД = СтрокаОтчетыОбъектаКопирования.Настройки.Получить(); @@ -3070,13 +3170,11 @@ // Проверка результата инициализации. Если Не СтрокаОтчеты.Инициализирован Тогда - ПараметрыОтчета.Ошибки = ( - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Отчет %1 был удален из-за ошибки инициализации'"), - "'"+ Строка(СтрокаОтчеты.Представление) +"'") - + ":" - + Символы.ПС - + ПараметрыОтчета.Ошибки); + ПараметрыОтчета.Ошибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Отчет ""%1"" был удален из-за ошибки инициализации: + |%2'"), + Строка(СтрокаОтчеты.Представление), + ПараметрыОтчета.Ошибки); // Удаление строки. Объект.Отчеты.Удалить(СтрокаОтчеты); @@ -3156,6 +3254,7 @@ СтрокаОтчеты.Отчет = ВариантСсылка; СтрокаОтчеты.ОтправлятьЕслиПустой = Ложь; СтрокаОтчеты.НеОтправлятьПустой = Истина; + СтрокаОтчеты.Доступность = Истина; КонецЕсли; СтрокаОтчеты.ВнесеныИзменения = Истина; @@ -3182,8 +3281,12 @@ СтрокаПредупреждения = ОтчетыПриАктивизацииСтрокиНаСервере(ИдентификаторСтроки, Истина, ПользовательскиеНастройкиКД); Если СтрокаПредупреждения <> "" Тогда ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СтрокаПредупреждения, , "Объект.Отчеты["+ ИндексСтроки +"].Представление"); + Иначе + ЗаписатьНастройкиСтрокиОтчеты(ИдентификаторСтроки); КонецЕсли; КонецЦикла; + + ИдентификаторТекущейСтрокиТаблицыОтчетов = -1; КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// @@ -3259,6 +3362,8 @@ Закрыть(); ИначеЕсли ИмяКоманды = "КомандаСобытияРассылки" Тогда СобытияРассылки(); + ИначеЕсли ИмяКоманды = "КомандаПроверитьРассылку" Тогда + ПроверитьРассылку(ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыЗаписи, "ПараметрыДоставки")); КонецЕсли; КонецЕсли; КонецПроцедуры @@ -3338,122 +3443,33 @@ МассивРассылок = Новый Массив; МассивРассылок.Добавить(Объект.Ссылка); - ДополнительныеПараметры = Новый Структура("МассивРассылок, Форма, ЭтоФормаЭлемента"); - ДополнительныеПараметры.МассивРассылок = МассивРассылок; - ДополнительныеПараметры.Форма = ЭтотОбъект; - ДополнительныеПараметры.ЭтоФормаЭлемента = Истина; - Обработчик = Новый ОписаниеОповещения("ВыполнитьСейчасЗавершение", ЭтотОбъект, ДополнительныеПараметры); - Если Объект.ИспользоватьЭлектроннуюПочту Тогда - РассылкаОтчетовКлиент.ВыбратьПолучателя(Обработчик, Объект, Истина, Истина); - Иначе - ВыполнитьОбработкуОповещения(Обработчик, Неопределено); - КонецЕсли; + ПараметрыЗапуска = Новый Структура("МассивРассылок, Форма, ЭтоФормаЭлемента"); + ПараметрыЗапуска.МассивРассылок = МассивРассылок; + ПараметрыЗапуска.Форма = ЭтотОбъект; + ПараметрыЗапуска.ЭтоФормаЭлемента = Истина; + + РассылкаОтчетовКлиент.ВыполнитьСейчас(ПараметрыЗапуска); КонецПроцедуры -&НаКлиенте -Процедура ВыполнитьСейчасЗавершение(Получатели, ДополнительныеПараметры) Экспорт - // Обработчик результата работы процедуры ВыполнитьСейчас. - - Форма = ДополнительныеПараметры.Форма; - - ПредварительныеНастройки = Неопределено; - - Если ДополнительныеПараметры.ЭтоФормаЭлемента Тогда - Если Форма.Объект.ИспользоватьЭлектроннуюПочту Тогда - Если Получатели = Неопределено Тогда - Возврат; - КонецЕсли; - ПредварительныеНастройки = Новый Структура("Получатели", Получатели); - КонецЕсли; - ТекстСостояния = НСтр("ru = 'Выполняется рассылка отчетов'"); - Иначе - ТекстСостояния = НСтр("ru = 'Выполняются рассылки отчетов'"); - КонецЕсли; - - Состояние(ТекстСостояния, , , ); - - ПараметрыВызоваСервера = Новый Структура; - ПараметрыВызоваСервера.Вставить("МассивРассылок", ДополнительныеПараметры.МассивРассылок); - ПараметрыВызоваСервера.Вставить("ПредварительныеНастройки", ПредварительныеНастройки); - - Результат = ВыполнитьРассылкиВФоновомЗадании(ПараметрыВызоваСервера, Форма.УникальныйИдентификатор); - - Если Результат.Статус = "ВыполненоУспешно" Тогда - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(Форма, Результат.Детали); - ИначеЕсли Результат.Статус = "Исключение" Тогда - ТекстПредупреждения = НСтр("ru = 'Не удалось выполнить рассылку отчетов. - |Подробности см. в журнале регистрации.'"); - ПоказатьПредупреждение(, ТекстПредупреждения); - ИначеЕсли Результат.Статус = "Выполняется" Тогда - ФормаДлительнойОперации = ДлительныеОперацииКлиент.ОткрытьФормуДлительнойОперации(Форма, Результат.Детали.ИдентификаторЗадания); - - ПараметрыОбработчика = Неопределено; - ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - - Форма.ПараметрыФоновогоЗадания.Очистить(); - Форма.ПараметрыФоновогоЗадания.Добавить(Результат.Детали.ИдентификаторЗадания); - Форма.ПараметрыФоновогоЗадания.Добавить(Результат.Детали.АдресХранилища); - Форма.ПараметрыФоновогоЗадания.Добавить(ПараметрыОбработчика); - Форма.ПараметрыФоновогоЗадания.Добавить(ФормаДлительнойОперации); - - Форма.ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеФоновогоЗадания", ПараметрыОбработчика.ТекущийИнтервал, Истина); - КонецЕсли; -КонецПроцедуры - -&НаСервереБезКонтекста -Функция ВыполнитьРассылкиВФоновомЗадании(ПараметрыВызоваСервера, Знач УникальныйИдентификатор) - // Запускает выполнение рассылок отчетов в фоновом задании. - - Результат = Новый Структура("Статус, Детали"); - - Попытка - РезультатФоновогоЗадания = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "РассылкаОтчетов.ВыполнитьРассылкиВФоновомЗадании", - ПараметрыВызоваСервера, - НСтр("ru = 'Рассылки отчетов: Выполнение рассылок в фоне'")); - - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - Результат.Статус = "ВыполненоУспешно"; // Не локализуется - Результат.Детали = ПолучитьИзВременногоХранилища(РезультатФоновогоЗадания.АдресХранилища); - Иначе - Результат.Статус = "Выполняется"; // Не локализуется - Результат.Детали = Новый Структура("ИдентификаторЗадания, АдресХранилища"); - ЗаполнитьЗначенияСвойств(Результат.Детали, РезультатФоновогоЗадания); - КонецЕсли; - Исключение - Результат.Статус = "Исключение"; // Не локализуется - КонецПопытки; - - Возврат Результат; -КонецФункции - //////////////////////////////////////////////////////////////////////////////// // Копия команды "События рассылки..." для поддержки асинхронности. &НаКлиенте Процедура СобытияРассылки() - // Получение даты последнего запуска. - Рассылка = Объект.Ссылка; - ПоследнийЗапуск = ПоследнийЗапускРассылки(Рассылка); - - // Параметры формы - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("Данные", Рассылка); - Если ПоследнийЗапуск <> Неопределено Тогда - ПараметрыФормы.Вставить("ДатаНачала", ПоследнийЗапуск); + ПараметрыФормыЖурналаРегистрации = ПараметрыФормыЖурналаРегистрации(Объект.Ссылка); + Если ПараметрыФормыЖурналаРегистрации = Неопределено Тогда + Возврат; КонецЕсли; - - ОткрытьФорму("Обработка.ЖурналРегистрации.Форма", ПараметрыФормы, ЭтотОбъект); + ОткрытьФорму("Обработка.ЖурналРегистрации.Форма", ПараметрыФормыЖурналаРегистрации, ЭтотОбъект); КонецПроцедуры &НаСервереБезКонтекста -Функция ПоследнийЗапускРассылки(Рассылка) +Функция ПараметрыФормыЖурналаРегистрации(Рассылка) Запрос = Новый Запрос; - Запрос.Текст = + Запрос.Текст = "ВЫБРАТЬ - | Состояния.ПоследнийЗапуск + | Состояния.ПоследнийЗапуск, + | Состояния.НомерСеанса |ИЗ | РегистрСведений.СостоянияРассылокОтчетов КАК Состояния |ГДЕ @@ -3462,8 +3478,18 @@ УстановитьПривилегированныйРежим(Истина); Выборка = Запрос.Выполнить().Выбрать(); - УстановитьПривилегированныйРежим(Истина); - Результат = ?(Выборка.Следующий(), Выборка.ПоследнийЗапуск, Неопределено); + Если Не Выборка.Следующий() Тогда + Возврат Неопределено; + КонецЕсли; + Результат = Новый Структура; + Результат.Вставить("ДатаНачала", Выборка.ПоследнийЗапуск); + Если Не ЗначениеЗаполнено(Выборка.НомерСеанса) Тогда + Результат.Вставить("Данные", Рассылка); + Иначе + Сеансы = Новый СписокЗначений; + Сеансы.Добавить(Выборка.НомерСеанса); + Результат.Вставить("Сеанс", Сеансы); + КонецЕсли; Возврат Результат; КонецФункции diff --git a/SSL/src/Catalogs/РассылкиОтчетов/РассылкиОтчетов.mdo b/SSL/src/Catalogs/РассылкиОтчетов/РассылкиОтчетов.mdo index 9336480c0..c0fedced9 100644 --- a/SSL/src/Catalogs/РассылкиОтчетов/РассылкиОтчетов.mdo +++ b/SSL/src/Catalogs/РассылкиОтчетов/РассылкиОтчетов.mdo @@ -200,8 +200,7 @@ </type> <toolTip> <key>ru</key> - <value>Если флажок установлен то при соединении по FTP сервер открывает порт и ожидает подключения клиента. -Рекомендуется включать, когда клиент не может принять входящее TCP-соединение. Например, если входящие соединения блокируются сетевым экраном.</value> + <value>Если флажок установлен то при соединении по FTP сервер открывает порт и ожидает подключения клиента. Рекомендуется включать если клиент не может принять входящее TCP-соединение (например, если входящие соединения блокируются сетевым экраном).</value> </toolTip> <minValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/> @@ -264,14 +263,14 @@ <name>Автор</name> <synonym> <key>ru</key> - <value>Автор</value> + <value>Ответственный</value> </synonym> <type> <types>CatalogRef.Пользователи</types> </type> <toolTip> <key>ru</key> - <value>При выполнении по расписанию отчеты формируются с правами автора рассылки</value> + <value>При выполнении по расписанию отчеты формируются с правами ответственного за рассылку</value> </toolTip> <minValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/> diff --git a/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаВыбора/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаВыбора/Attributes/Список/ExtInfo/ListSettings.dcss index d7cf28261..61e6fb4bb 100644 --- a/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаВыбора/Attributes/Список/ExtInfo/ListSettings.dcss +++ b/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаВыбора/Attributes/Список/ExtInfo/ListSettings.dcss @@ -9,30 +9,6 @@ <userSettingID>88619765-ccb3-46c6-ac52-38e9c992ebd4</userSettingID> </order> <conditionalAppearance> - <item> - <selection/> - <filter> - <item xsi:type="FilterItemGroup"> - <groupType>AndGroup</groupType> - <item xsi:type="FilterItemComparison"> - <left xsi:type="dcscor:Field">ЕстьИсполнители</left> - <comparisonType>Equal</comparisonType> - <right xsi:type="xs:boolean">false</right> - </item> - <item xsi:type="FilterItemComparison"> - <left xsi:type="dcscor:Field">ВнешняяРоль</left> - <comparisonType>Equal</comparisonType> - <right xsi:type="xs:boolean">false</right> - </item> - </item> - </filter> - <appearance> - <dcscor:item xsi:type="SettingsParameterValue"> - <dcscor:parameter>ЦветТекста</dcscor:parameter> - <dcscor:value xsi:type="v8ui:Color">style:РольБезИсполнителей</dcscor:value> - </dcscor:item> - </appearance> - </item> <viewMode>Normal</viewMode> <userSettingID>b75fecce-942b-4aed-abc9-e6a02e460fb3</userSettingID> </conditionalAppearance> diff --git a/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаВыбора/Form.form b/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаВыбора/Form.form index cb1c5e909..fee33b64b 100644 --- a/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаВыбора/Form.form +++ b/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаВыбора/Form.form @@ -12,10 +12,6 @@ <key>ru</key> <value>Командная панель</value> - - ru - Командная панель - КоманднаяПанельРасширеннаяПодсказка 27 @@ -44,7 +40,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 29 @@ -339,7 +334,6 @@ OnCreateAtServer ПриСозданииНаСервере - 75 LockOwner true true diff --git a/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаВыбора/Module.bsl b/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаВыбора/Module.bsl index 9e330e651..cfc4ce69d 100644 --- a/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаВыбора/Module.bsl +++ b/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаВыбора/Module.bsl @@ -3,6 +3,8 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; @@ -24,7 +26,6 @@ ОтборГде = " ГДЕ РолиИсполнителейНазначение.ТипПользователей = ЗНАЧЕНИЕ(Справочник." + Имя + ".ПустаяСсылка)"; КонецЕсли; Список.ТекстЗапроса = Список.ТекстЗапроса + ОтборГде; - КонецПроцедуры @@ -35,4 +36,28 @@ КонецЕсли; КонецПроцедуры +&НаСервере +Процедура УстановитьУсловноеОформление() + + Список.УсловноеОформление.Элементы.Очистить(); + Элемент = Список.УсловноеОформление.Элементы.Добавить(); + + ГруппаЭлементовОтбора = Элемент.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); + ГруппаЭлементовОтбора .ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ; + + ОтборЭлемента = ГруппаЭлементовОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ЕстьИсполнители"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Ложь; + + ОтборЭлемента = ГруппаЭлементовОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ВнешняяРоль"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Ложь; + + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.РольБезИсполнителей); + +КонецПроцедуры + + #КонецОбласти diff --git a/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаСписка/Form.form index 2fa1348b3..f9691c9c1 100644 --- a/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 31 @@ -315,10 +314,6 @@ true - - <key>ru</key> - <value>Группа</value> - ГруппаExtendedTooltip 20 @@ -375,10 +370,6 @@ true - - <key>ru</key> - <value>Основное</value> - ОсновноеExtendedTooltip 19 diff --git a/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаСписка/Module.bsl index 680481d6e..b068e5bca 100644 --- a/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаСписка/Module.bsl @@ -8,8 +8,9 @@ Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; - + НастроитьОтображениеСпискаРолей(); + КонецПроцедуры &НаКлиенте @@ -114,5 +115,5 @@ Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.РольБезИсполнителей); КонецПроцедуры - + #КонецОбласти diff --git a/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаЭлемента/Form.form index 85135ab9b..80e4a275c 100644 --- a/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/РолиИсполнителей/Forms/ФормаЭлемента/Form.form @@ -57,6 +57,7 @@ Объект.КраткоеПредставление + 2 КраткоеПредставлениеExtendedTooltip 42 @@ -213,7 +214,6 @@ true Label - true true Left diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ВыборСертификатаДляПодписанияИлиРасшифровки/Form.form b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ВыборСертификатаДляПодписанияИлиРасшифровки/Form.form index 5904c8c48..21627f3b7 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ВыборСертификатаДляПодписанияИлиРасшифровки/Form.form +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ВыборСертификатаДляПодписанияИлиРасшифровки/Form.form @@ -46,9 +46,7 @@ 791 true - 2 true - 1 true @@ -84,7 +82,6 @@ true Label - true true @@ -149,9 +146,7 @@ 798 true - 2 true - 1 true @@ -187,7 +182,6 @@ true Label - true true @@ -768,7 +762,6 @@ true Label - true true @@ -1129,7 +1122,8 @@ true true true - true + 51 + 51 4 true true @@ -1308,36 +1302,78 @@ DontUse
      + + СертификатУсиленнаяЗащитаЗакрытогоКлюча + 528 + true + true + + true + + + СертификатУсиленнаяЗащитаЗакрытогоКлюча + + Right + + ru + Уточняет, что пароль к закрытому ключу сертификата будет вводиться в отдельном окне +программой электронной подписи и шифрования, а не программой 1С:Предприятие. + +Только для сертификатов, которые выпущены с усиленной защитой закрытого ключа. + + Button + + OnChange + СертификатУсиленнаяЗащитаЗакрытогоКлючаПриИзменении + + + СертификатУсиленнаяЗащитаЗакрытогоКлючаРасширеннаяПодсказка + 530 + Label + true + true + + Left + + + + СертификатУсиленнаяЗащитаЗакрытогоКлючаКонтекстноеМеню + 529 + true + + CheckBoxField + Enter + true + Left + true + + - ВертикальнаяГруппа3 - 852 + ГоризонтальнаяГруппа2 + 835 - СертификатУсиленнаяЗащитаЗакрытогоКлюча - 528 + Пароль + 355 true true true - СертификатУсиленнаяЗащитаЗакрытогоКлюча + Пароль - Right ru - Уточняет, что пароль к закрытому ключу сертификата будет вводиться в отдельном окне -программой электронной подписи и шифрования, а не программой 1С:Предприятие. - -Только для сертификатов, которые выпущены с усиленной защитой закрытого ключа. + Введите пароль к закрытому ключу сертификата +для проверки ключа перед выбором сертификата. - Button OnChange - СертификатУсиленнаяЗащитаЗакрытогоКлючаПриИзменении + ПарольПриИзменении - СертификатУсиленнаяЗащитаЗакрытогоКлючаРасширеннаяПодсказка - 530 + ПарольРасширеннаяПодсказка + 357 Label true true @@ -1346,179 +1382,126 @@ - СертификатУсиленнаяЗащитаЗакрытогоКлючаКонтекстноеМеню - 529 + ПарольКонтекстноеМеню + 356 true - CheckBoxField + InputField Enter true Left true - - - - ГруппаСертификатПароль - 531 - - Отступ - 849 - - <key>ru</key> - <value>Отступ</value> - - true - true - - true - - - ОтступРасширеннаяПодсказка - 851 - Label - true - true - - Left - - - - ОтступКонтекстноеМеню - 850 - true - - 3 + true - 2 true - - - - ВертикальнаяГруппа1 - 833 - - ПарольЗаголовок - 837 - - <key>ru</key> - <value>Пароль:</value> - - true - true - - true - - - ПарольЗаголовокРасширеннаяПодсказка - 839 - Label - true - true - - Left - - - - ПарольЗаголовокКонтекстноеМеню - 838 - true - - Label - true - true - - Left - - - - ВертикальныйОтступ2 - 840 - true - true - - true - - - ВертикальныйОтступ2РасширеннаяПодсказка - 842 - Label - true - true - - Left - - - - ВертикальныйОтступ2КонтекстноеМеню - 841 - true - - Label - true - true - - Left - - - true - true - - true - - - <key>ru</key> - <value>Вертикальная группа 1</value> - - - ВертикальнаяГруппа1РасширеннаяПодсказка - 834 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + false + true + true + true + true + Normal + + + + ПарольПояснение + 741 + + <key>ru</key> + <value>(для проверки)</value> + + true + true + + true + + + ПарольПояснениеРасширеннаяПодсказка + 743 + Label + true + true + + Left - + + + ПарольПояснениеКонтекстноеМеню + 742 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + + + true + true + + true + + + <key>ru</key> + <value>Горизонтальная группа 2</value> + + + ГоризонтальнаяГруппа2РасширеннаяПодсказка + 836 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ВертикальнаяГруппа3 + 852 + + ВертикальнаяГруппа2 + 843 - ВертикальнаяГруппа2 - 843 + Страницы + 816 - ГоризонтальнаяГруппа2 - 835 + СтраницаЗапоминаниеПароля + 818 - Пароль - 355 + ЗапомнитьПароль + 820 true true true - Пароль + ЗапомнитьПароль - None + Right ru - Введите пароль к закрытому ключу сертификата -для проверки ключа перед выбором сертификата. + Запомнить пароль сертификата до закрытия программы. При снятии флажка пароль стирается из памяти, если запоминался ранее. + Button OnChange - ПарольПриИзменении + ЗапомнитьПарольПриИзменении - ПарольРасширеннаяПодсказка - 357 + ЗапомнитьПарольРасширеннаяПодсказка + 822 Label true true @@ -1527,41 +1510,68 @@ - ПарольКонтекстноеМеню - 356 + ЗапомнитьПарольКонтекстноеМеню + 821 true - InputField + CheckBoxField Enter true Left true - - true - true - false - true - true - true - true - Normal - + + true + true + + true + + + <key>ru</key> + <value>Страница запоминание пароля</value> + + + СтраницаЗапоминаниеПароляРасширеннаяПодсказка + 819 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СтраницаПояснениеУсиленногоПароля + 823 - ПарольПояснение - 741 + ПояснениеУсиленногоПароля + 825 <key>ru</key> - <value>(для проверки)</value> + <value>Нажмите Выбрать, чтобы перейти к вводу пароля. +</value> true true true + + ru + Пароль запрашивает программа электронной подписи, а не программа 1С:Предприятие, +так как для выбранного сертификата указана усиленная защита закрытого ключа. + + Button - ПарольПояснениеРасширеннаяПодсказка - 743 + ПояснениеУсиленногоПароляРасширеннаяПодсказка + 827 Label true true @@ -1570,12 +1580,11 @@ - ПарольПояснениеКонтекстноеМеню - 742 + ПояснениеУсиленногоПароляКонтекстноеМеню + 826 true Label - true true Style.ПоясняющийТекст @@ -1591,11 +1600,11 @@
      <key>ru</key> - <value>Горизонтальная группа 2</value> + <value>Страница пояснение усиленного пароля</value> - ГоризонтальнаяГруппа2РасширеннаяПодсказка - 836 + СтраницаПояснениеУсиленногоПароляРасширеннаяПодсказка + 824 Label true true @@ -1603,232 +1612,56 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + Page + + Vertical + auto + false - Страницы - 816 - - СтраницаЗапоминаниеПароля - 818 - - ЗапомнитьПароль - 820 - true - true - - true - - - ЗапомнитьПароль - - Right - - ru - Запомнить пароль сертификата до закрытия программы. При снятии флажка пароль стирается из памяти, если запоминался ранее. - - Button - - OnChange - ЗапомнитьПарольПриИзменении - - - ЗапомнитьПарольРасширеннаяПодсказка - 822 - Label - true - true - - Left - - - - ЗапомнитьПарольКонтекстноеМеню - 821 - true - - CheckBoxField - Enter - true - Left - true - - + СтраницаПояснениеУстановленногоПароля + 828 + + ПояснениеУстановленногоПароля + 830 true true true - - <key>ru</key> - <value>Страница запоминание пароля</value> - + Button - СтраницаЗапоминаниеПароляРасширеннаяПодсказка - 819 + ПояснениеУстановленногоПароляРасширеннаяПодсказка + 832 Label true true - - Left - - - Page - - Vertical - auto - false - - - - СтраницаПояснениеУсиленногоПароля - 823 - - ПояснениеУсиленногоПароля - 825 - - <key>ru</key> - <value>Нажмите Выбрать, чтобы перейти к вводу пароля. -</value> - - true - true - - true - - - ru - Пароль запрашивает программа электронной подписи, а не программа 1С:Предприятие, -так как для выбранного сертификата указана усиленная защита закрытого ключа. - - Button - - ПояснениеУсиленногоПароляРасширеннаяПодсказка - 827 - Label - true - true - - Left - - - - ПояснениеУсиленногоПароляКонтекстноеМеню - 826 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница пояснение усиленного пароля</value> - - - СтраницаПояснениеУсиленногоПароляРасширеннаяПодсказка - 824 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - СтраницаПояснениеУстановленногоПароля - 828 - - ПояснениеУстановленногоПароля - 830 - true - true - - true - - Button - - ПояснениеУстановленногоПароляРасширеннаяПодсказка - 832 - Label - true - true - - - URLProcessing - ПояснениеУстановленногоПароляРасширеннаяПодсказкаОбработкаНавигационнойСсылки - - Left - - - - ПояснениеУстановленногоПароляКонтекстноеМеню - 831 - true - - Label - true - true - - Style.ПоясняющийТекст - - Click - ПояснениеУстановленногоПароляНажатие + URLProcessing + ПояснениеУстановленногоПароляРасширеннаяПодсказкаОбработкаНавигационнойСсылки Left - - true - true - - true - - - <key>ru</key> - <value>Страница пояснение установленного пароля</value> - - - СтраницаПояснениеУстановленногоПароляРасширеннаяПодсказка - 829 - Label - true - true - - Left - - Page - - Vertical - auto - false + + ПояснениеУстановленногоПароляКонтекстноеМеню + 831 + true + + Label + true + true + + Style.ПоясняющийТекст + + + + Click + ПояснениеУстановленногоПароляНажатие + + Left true @@ -1838,15 +1671,11 @@ <key>ru</key> - <value>Страницы</value> + <value>Страница пояснение установленного пароля</value> - - ru - Страницы - - СтраницыРасширеннаяПодсказка - 817 + СтраницаПояснениеУстановленногоПароляРасширеннаяПодсказка + 829 Label true true @@ -1854,9 +1683,11 @@ Left - Pages - - Auto + Page + + Vertical + auto + false true @@ -1866,11 +1697,15 @@ <key>ru</key> - <value>Вертикальная группа 2</value> + <value>Страницы</value> + + ru + Страницы + - ВертикальнаяГруппа2РасширеннаяПодсказка - 844 + СтраницыРасширеннаяПодсказка + 817 Label true true @@ -1878,13 +1713,8 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto + Pages + Auto @@ -1895,11 +1725,11 @@ <key>ru</key> - <value>Группа сертификат пароль</value> + <value>Вертикальная группа 2</value> - ГруппаСертификатПарольРасширеннаяПодсказка - 532 + ВертикальнаяГруппа2РасширеннаяПодсказка + 844 Label true true @@ -1909,6 +1739,7 @@ UsualGroup + Vertical Auto true true @@ -1955,6 +1786,7 @@ ru Вертикальная группа 4 + true ВертикальнаяГруппа4РасширеннаяПодсказка 855 @@ -2043,6 +1875,7 @@ false false + false ГруппаУточнениеСвойствСертификатаРасширеннаяПодсказка 546 @@ -2064,37 +1897,6 @@ Auto - - ВертикальныйОтступ - 782 - true - true - - true - - - ВертикальныйОтступРасширеннаяПодсказка - 784 - Label - true - true - - Left - - - - ВертикальныйОтступКонтекстноеМеню - 783 - true - - Label - true - true - true - - Left - - КомандыНазадВыбратьОтмена 535 @@ -2278,7 +2080,6 @@ FillCheckProcessingAtServer ОбработкаПроверкиЗаполненияНаСервере - 60 LockOwner true true @@ -2409,6 +2210,23 @@ true + + ВОблачномСервисе + + <key>ru</key> + <value>В облачном сервисе</value> + + 7 + + Boolean + + + true + + + true + + СертификатНаименование @@ -2437,7 +2255,7 @@ 10 - CatalogRef.Организации + DefinedType.Организация true @@ -2831,6 +2649,40 @@ true + + ЕстьОрганизации + + <key>ru</key> + <value>Есть организации</value> + + 25 + + Boolean + + + true + + + true + + + + СертификатВОблачномСервисе + + <key>ru</key> + <value>Сертификат в облачном сервисе</value> + + 26 + + Boolean + + + true + + + true + + Далее diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ВыборСертификатаДляПодписанияИлиРасшифровки/Module.bsl b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ВыборСертификатаДляПодписанияИлиРасшифровки/Module.bsl index f7b327148..600d9cc27 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ВыборСертификатаДляПодписанияИлиРасшифровки/Module.bsl +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ВыборСертификатаДляПодписанияИлиРасшифровки/Module.bsl @@ -14,6 +14,11 @@ Возврат; КонецЕсли; + СертификатПараметрыРеквизитов = Новый Структура; + Если Параметры.Свойство("Организация") Тогда + СертификатПараметрыРеквизитов.Вставить("Организация", Параметры.Организация); + КонецЕсли; + Если Параметры.ДобавлениеВСписок Тогда ДобавлениеВСписок = Истина; Элементы.Выбрать.Заголовок = НСтр("ru = 'Добавить'"); @@ -53,15 +58,8 @@ НСтр("ru = 'Личные сертификаты на компьютере и сервере'"); КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда - МодульОрганизацииСлужебный = ОбщегоНазначения.ОбщийМодуль("ОрганизацииСлужебный"); - Элементы.СертификатОрганизация.Видимость = - Не ЗначениеЗаполнено(МодульОрганизацииСлужебный.ОрганизацияПоУмолчанию()) - Или МодульОрганизацииСлужебный.ИспользуетсяНесколькоОрганизаций(); - КонецЕсли; - Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда - Элементы.СертификатОрганизация.Видимость = Ложь; - КонецЕсли; + ЕстьОрганизации = Не Метаданные.ОпределяемыеТипы.Организация.Тип.СодержитТип(Тип("Строка")); + Элементы.СертификатОрганизация.Видимость = ЕстьОрганизации; Элементы.СертификатПользователь.Подсказка = Метаданные.Справочники.СертификатыКлючейЭлектроннойПодписиИШифрования.Реквизиты.Пользователь.Подсказка; @@ -69,7 +67,6 @@ Элементы.СертификатОрганизация.Подсказка = Метаданные.Справочники.СертификатыКлючейЭлектроннойПодписиИШифрования.Реквизиты.Организация.Подсказка; - Если ЗначениеЗаполнено(Параметры.ОтпечатокВыбранногоСертификата) Тогда ОтпечатокВыбранногоСертификатаНеНайден = Ложь; ОтпечатокВыбранногоСертификата = Параметры.ОтпечатокВыбранногоСертификата; @@ -321,7 +318,12 @@ ВыбратьПослеПроверкиСертификата(Контекст.ОшибкаНаКлиенте, Контекст); Иначе - ПроверитьСертификат(Новый ОписаниеОповещения("ВыбратьПослеПроверкиСертификата", ЭтотОбъект, Контекст)); + Если СертификатВОблачномСервисе Тогда + Оповещение = Новый ОписаниеОповещения("ВыбратьПослеПроверкиСертификатаВМоделиСервиса", ЭтотОбъект, Контекст); + Иначе + Оповещение = Новый ОписаниеОповещения("ВыбратьПослеПроверкиСертификата", ЭтотОбъект, Контекст); + КонецЕсли; + ПроверитьСертификат(Оповещение); КонецЕсли; КонецПроцедуры @@ -365,6 +367,32 @@ КонецПроцедуры +&НаКлиенте +Процедура ВыбратьПослеПроверкиСертификатаВМоделиСервиса(Результат, Контекст) Экспорт + + Если Результат.Свойство("Действителен") И Результат.Действителен Тогда + ЗаписатьСертификатВСправочникВМоделиСервиса(); + КонецЕсли; + + Если Результат.Свойство("ИнформацияОбОшибке") Тогда + ОшибкаНаКлиенте = Результат.ИнформацияОбОшибке.Описание; + + Если ДляШифрованияИРасшифровки = Истина Тогда + ЗаголовокФормы = НСтр("ru = 'Проверка шифрования и расшифровки'"); + Иначе + ЗаголовокФормы = НСтр("ru = 'Проверка установки электронной подписи'"); + КонецЕсли; + ЭлектроннаяПодписьСлужебныйКлиент.ПоказатьОшибкуОбращенияКПрограмме( + ЗаголовокФормы, "", ОшибкаНаКлиенте, Контекст.ОшибкаНаСервере); + Возврат; + КонецЕсли; + + ОповеститьОбИзменении(Сертификат); + + ОповеститьОВыборе(Сертификат); + +КонецПроцедуры + &НаКлиенте Процедура ПоказатьДанныеСертификата(Команда) @@ -532,6 +560,7 @@ СертификатНаКлиенте = ТекущиеДанные.НаКлиенте; СертификатНаСервере = ТекущиеДанные.НаСервере; + СертификатВОблачномСервисе = ТекущиеДанные.ВОблачномСервисе; Контекст = Новый Структура; Контекст.Вставить("Оповещение", Оповещение); @@ -550,10 +579,18 @@ Возврат; КонецЕсли; - // СертификатНаКлиенте. - ЭлектроннаяПодписьСлужебныйКлиент.ПолучитьСертификатПоОтпечатку( - Новый ОписаниеОповещения("ПерейтиКВыборуТекущегоСертификатаПослеПоискаСертификата", ЭтотОбъект, Контекст), - ТекущиеДанные.Отпечаток, Ложь, Неопределено); + Если ТекущиеДанные.ВОблачномСервисе Тогда + СтруктураПоиска = Новый Структура; + СтруктураПоиска.Вставить("Отпечаток", Base64Значение(ТекущиеДанные.Отпечаток)); + МодульХранилищеСертификатовКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ХранилищеСертификатовКлиент"); + МодульХранилищеСертификатовКлиент.НайтиСертификат(Новый ОписаниеОповещения( + "ПерейтиКВыборуТекущегоСертификатаПослеПоискаСертификатаВОблачномСервисе", ЭтотОбъект, Контекст), СтруктураПоиска); + Иначе + // СертификатНаКлиенте. + ЭлектроннаяПодписьСлужебныйКлиент.ПолучитьСертификатПоОтпечатку( + Новый ОписаниеОповещения("ПерейтиКВыборуТекущегоСертификатаПослеПоискаСертификата", ЭтотОбъект, Контекст), + ТекущиеДанные.Отпечаток, Ложь, Неопределено); + КонецЕсли; КонецПроцедуры @@ -579,6 +616,19 @@ КонецПроцедуры +// Продолжение процедуры ПерейтиКВыборуТекущегоСертификата. +&НаКлиенте +Процедура ПерейтиКВыборуТекущегоСертификатаПослеПоискаСертификатаВОблачномСервисе(РезультатПоиска, Контекст) Экспорт + + Если Не РезультатПоиска.Выполнено Тогда + Контекст.Вставить("ОписаниеОшибки", РезультатПоиска.ОписаниеОшибки.Описание); + КонецЕсли; + + Контекст.Вставить("СертификатКриптографии", РезультатПоиска.Сертификат); + + ПерейтиКВыборуТекущегоСертификатаПослеВыгрузкиСертификата(РезультатПоиска.Сертификат.Сертификат, Контекст); + +КонецПроцедуры // Продолжение процедуры ПерейтиКВыборуТекущегоСертификата. &НаКлиенте Процедура ПерейтиКВыборуТекущегоСертификатаПослеВыгрузкиСертификата(ВыгруженныеДанные, Контекст) Экспорт @@ -607,7 +657,7 @@ КонецЕсли; КонецЕсли; - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда + Если ЕстьОрганизации Тогда Если СертификатПараметрыРеквизитов.Свойство("Организация") Тогда Если Не СертификатПараметрыРеквизитов.Организация.Видимость Тогда Элементы.СертификатОрганизация.Видимость = Ложь; @@ -665,8 +715,13 @@ Контекст = Новый Структура; Контекст.Вставить("Оповещение", Оповещение); - ЭлектроннаяПодписьСлужебныйКлиент.СоздатьМенеджерКриптографии(Новый ОписаниеОповещения( - "ПроверитьСертификатПослеСозданияМенеджераКриптографии", ЭтотОбъект, Контекст), "", Неопределено); + Если СертификатВОблачномСервисе Тогда + МодульСервисКриптографииКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("СервисКриптографииКлиент"); + МодульСервисКриптографииКлиент.ПроверитьСертификат(Оповещение, ПолучитьИзВременногоХранилища(СертификатАдрес)); + Иначе + ЭлектроннаяПодписьСлужебныйКлиент.СоздатьМенеджерКриптографии(Новый ОписаниеОповещения( + "ПроверитьСертификатПослеСозданияМенеджераКриптографии", ЭтотОбъект, Контекст), "", Неопределено); + КонецЕсли; КонецПроцедуры @@ -675,7 +730,7 @@ Процедура ПроверитьСертификатПослеСозданияМенеджераКриптографии(Результат, Контекст) Экспорт Если ТипЗнч(Результат) <> Тип("МенеджерКриптографии") - И Результат.Общая Тогда + И Результат.Общая Тогда Если ДляШифрованияИРасшифровки = Истина Тогда Результат.Вставить("ЗаголовокОшибки", НСтр("ru = 'Не удалось пройти проверку шифрования по причине:'")); @@ -983,6 +1038,13 @@ КонецПроцедуры +&НаСервере +Процедура ЗаписатьСертификатВСправочникВМоделиСервиса() + + ЭлектроннаяПодписьСлужебный.ЗаписатьСертификатВСправочник(ЭтотОбъект, , Истина); + +КонецПроцедуры + &НаКлиентеНаСервереБезКонтекста Процедура ЗаполнитьОшибкуШифрования(Ошибка, ОписаниеОшибки, ОписаниеПрограммы, ПредставлениеОшибки) diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификата/Form.form b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификата/Form.form index e21422633..fd168a9b2 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификата/Form.form +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификата/Form.form @@ -244,36 +244,6 @@ <items xsi:type="form:FormGroup"> <name>ВертикальнаяГруппа1</name> <id>35</id> - <items xsi:type="form:Decoration"> - <name>ВертикальныйОтступ1</name> - <id>37</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <extendedTooltip> - <name>ВертикальныйОтступ1РасширеннаяПодсказка</name> - <id>39</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>ВертикальныйОтступ1КонтекстноеМеню</name> - <id>38</id> - <autoFill>true</autoFill> - </contextMenu> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </items> <items xsi:type="form:Button"> <name>ДобавитьИзФайла1</name> <id>40</id> @@ -310,6 +280,7 @@ <key>ru</key> <value>Вертикальная группа 1</value> + Bottom ВертикальнаяГруппа1РасширеннаяПодсказка 36 @@ -424,36 +395,6 @@ ВертикальнаяГруппа2 33 - - ВертикальныйОтступ2 - 30 - true - true - - true - - - ВертикальныйОтступ2РасширеннаяПодсказка - 32 - Label - true - true - - Left - - - - ВертикальныйОтступ2КонтекстноеМеню - 31 - true - - Label - true - true - - Left - - ДобавитьИзФайла2 19 @@ -490,6 +431,7 @@ ru Вертикальная группа 2 + Bottom ВертикальнаяГруппа2РасширеннаяПодсказка 34 @@ -614,37 +556,6 @@ Left - - ГоризонтальныйОтступ - 53 - true - true - - true - - - ГоризонтальныйОтступРасширеннаяПодсказка - 55 - Label - true - true - - Left - - - - ГоризонтальныйОтступКонтекстноеМеню - 54 - true - - Label - true - true - true - - Left - - ОсновныеКоманды 51 @@ -793,7 +704,6 @@ OnCreateAtServer ПриСозданииНаСервере - 39 LockOwner true true diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификатаДляШифрования/Form.form b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификатаДляШифрования/Form.form index e4caab57c..b49f0ff7a 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификатаДляШифрования/Form.form +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификатаДляШифрования/Form.form @@ -46,9 +46,7 @@ 793 true - 2 true - 1 true @@ -84,7 +82,6 @@ true Label - true true @@ -149,9 +146,7 @@ 801 true - 2 true - 1 true @@ -187,7 +182,6 @@ true Label - true true @@ -769,7 +763,6 @@ true Label - true true @@ -1127,7 +1120,8 @@ true true true - true + 51 + 51 4 true true @@ -1186,6 +1180,7 @@ true + Left ГруппаОписаниеСертификатаРасширеннаяПодсказка 524 @@ -1198,6 +1193,7 @@ UsualGroup + Left Auto true true @@ -1373,6 +1369,7 @@ false false + false true ГруппаУточнениеСвойствСертификатаРасширеннаяПодсказка @@ -1395,37 +1392,6 @@ Auto - - ВертикальныйОтступ - 785 - true - true - - true - - - ВертикальныйОтступРасширеннаяПодсказка - 787 - Label - true - true - - Left - - - - ВертикальныйОтступКонтекстноеМеню - 786 - true - - Label - true - true - true - - Left - - КомандыНазадДобавитьОтмена 535 @@ -1609,7 +1575,6 @@ FillCheckProcessingAtServer ОбработкаПроверкиЗаполненияНаСервере - 60 LockOwner true true @@ -1740,6 +1705,23 @@ true + + ВОблачномСервисе + + <key>ru</key> + <value>В облачном сервисе</value> + + 7 + + Boolean + + + true + + + true + + СертификатНаименование @@ -1924,7 +1906,7 @@ 2 - CatalogRef.Организации + DefinedType.Организация true @@ -1995,6 +1977,23 @@ true + + ОпределяемыйТипОрганизацияНастроен + + <key>ru</key> + <value>Определяемый тип организация настроен</value> + + 19 + + Boolean + + + true + + + true + + Далее diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификатаДляШифрования/Module.bsl b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификатаДляШифрования/Module.bsl index 8d84eb697..f38044145 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификатаДляШифрования/Module.bsl +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ДобавлениеСертификатаДляШифрования/Module.bsl @@ -7,6 +7,11 @@ Возврат; КонецЕсли; + СертификатПараметрыРеквизитов = Новый Структура; + Если Параметры.Свойство("Организация") Тогда + СертификатПараметрыРеквизитов.Вставить("Организация", Параметры.Организация); + КонецЕсли; + Если ЗначениеЗаполнено(Параметры.АдресДанныхСертификата) Тогда ДанныеСертификата = ПолучитьИзВременногоХранилища(Параметры.АдресДанныхСертификата); @@ -29,6 +34,12 @@ ОбновитьСписокСертификатовНаСервере(Параметры.СвойстваСертификатовНаКлиенте); КонецЕсли; + Если Метаданные.ОпределяемыеТипы.Организация.Тип.СодержитТип(Тип("Строка")) Тогда + Элементы.СертификатОрганизация.Видимость = Ложь; + Иначе + ОпределяемыйТипОрганизацияНастроен = Истина; + КонецЕсли; + Элементы.СертификатПользователь.Подсказка = Метаданные.Справочники.СертификатыКлючейЭлектроннойПодписиИШифрования.Реквизиты.Пользователь.Подсказка; @@ -182,8 +193,16 @@ Возврат; КонецЕсли; - ЭлектроннаяПодписьСлужебныйКлиент.ПолучитьСертификатПоОтпечатку(Новый ОписаниеОповещения( - "ДалееПослеПоискаСертификата", ЭтотОбъект), ТекущиеДанные.Отпечаток, Ложь, Неопределено); + Если ЭлектроннаяПодписьСлужебныйКлиент.ИспользоватьЭлектроннуюПодписьВМоделиСервиса() И ТекущиеДанные.ВОблачномСервисе Тогда + СтруктураПоиска = Новый Структура; + СтруктураПоиска.Вставить("Отпечаток", Base64Значение(ТекущиеДанные.Отпечаток)); + МодульХранилищеСертификатовКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ХранилищеСертификатовКлиент"); + МодульХранилищеСертификатовКлиент.НайтиСертификат(Новый ОписаниеОповещения( + "ДалееПослеПоискаСертификатаВОблачномСервисе", ЭтотОбъект), СтруктураПоиска); + Иначе + ЭлектроннаяПодписьСлужебныйКлиент.ПолучитьСертификатПоОтпечатку(Новый ОписаниеОповещения( + "ДалееПослеПоискаСертификата", ЭтотОбъект), ТекущиеДанные.Отпечаток, Ложь, Неопределено); + КонецЕсли; КонецПроцедуры @@ -227,6 +246,30 @@ КонецПроцедуры +// Продолжение процедуры Далее. +&НаКлиенте +Процедура ДалееПослеПоискаСертификатаВОблачномСервисе(Результат, Неопределен) Экспорт + + Если ТипЗнч(Результат) = Тип("Структура") Тогда + Если Результат.Выполнено Тогда + ДалееПослеВыгрузкиСертификата(Результат.Сертификат.Сертификат, Результат.Сертификат); + КонецЕсли; + Возврат; + КонецЕсли; + + Контекст = Новый Структура; + + Если Не Результат.Выполнено Тогда + Контекст.Вставить("ОписаниеОшибки", НСтр("ru = 'Сертификат не найден в облачном сервисе (возможно удален).'")); + Иначе + Контекст.Вставить("ОписаниеОшибки", Результат.ОписаниеОшибки); + КонецЕсли; + + ОбновитьСписокСертификатов(Новый ОписаниеОповещения( + "ДалееПослеОбновленияСпискаСертификатов", ЭтотОбъект, Контекст)); + +КонецПроцедуры + &НаКлиенте Процедура Назад(Команда) @@ -297,6 +340,16 @@ КонецЕсли; КонецЕсли; + Если Форма.ОпределяемыйТипОрганизацияНастроен Тогда + Если Форма.СертификатПараметрыРеквизитов.Свойство("Организация") Тогда + Если Не Форма.СертификатПараметрыРеквизитов.Организация.Видимость Тогда + Элементы.СертификатОрганизация.Видимость = Ложь; + ИначеЕсли Форма.СертификатПараметрыРеквизитов.Организация.ТолькоПросмотр Тогда + Элементы.СертификатОрганизация.ТолькоПросмотр = Истина; + КонецЕсли; + КонецЕсли; + КонецЕсли; + Форма.Сертификат = СохраненныеСвойства.Ссылка; Форма.СертификатНаименование = СохраненныеСвойства.Наименование; Форма.СертификатПользователь = СохраненныеСвойства.Пользователь; diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Form.form b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Form.form index 58adfe424..bdd225156 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Form.form +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Form.form @@ -36,12 +36,8 @@ <id>576</id> <autoFill>true</autoFill> </contextMenu> - <width>173</width> <autoMaxWidth>true</autoMaxWidth> - <height>2</height> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> - <verticalStretch>false</verticalStretch> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="form:FormPicture"/> </extInfo> @@ -102,12 +98,8 @@ <id>597</id> <autoFill>true</autoFill> </contextMenu> - <width>173</width> <autoMaxWidth>true</autoMaxWidth> - <height>2</height> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> - <verticalStretch>false</verticalStretch> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="form:FormPicture"/> </extInfo> @@ -168,12 +160,8 @@ <id>600</id> <autoFill>true</autoFill> </contextMenu> - <width>173</width> <autoMaxWidth>true</autoMaxWidth> - <height>2</height> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> - <verticalStretch>false</verticalStretch> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="form:FormPicture"/> </extInfo> @@ -234,12 +222,8 @@ <id>603</id> <autoFill>true</autoFill> </contextMenu> - <width>173</width> <autoMaxWidth>true</autoMaxWidth> - <height>2</height> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> - <verticalStretch>false</verticalStretch> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="form:FormPicture"/> </extInfo> @@ -300,12 +284,8 @@ <id>606</id> <autoFill>true</autoFill> </contextMenu> - <width>173</width> <autoMaxWidth>true</autoMaxWidth> - <height>2</height> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> - <verticalStretch>false</verticalStretch> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="form:FormPicture"/> </extInfo> @@ -366,12 +346,8 @@ <id>609</id> <autoFill>true</autoFill> </contextMenu> - <width>173</width> <autoMaxWidth>true</autoMaxWidth> - <height>2</height> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> - <verticalStretch>false</verticalStretch> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="form:FormPicture"/> </extInfo> @@ -432,12 +408,8 @@ <id>612</id> <autoFill>true</autoFill> </contextMenu> - <width>173</width> <autoMaxWidth>true</autoMaxWidth> - <height>2</height> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> - <verticalStretch>false</verticalStretch> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="form:FormPicture"/> </extInfo> @@ -498,12 +470,8 @@ <id>617</id> <autoFill>true</autoFill> </contextMenu> - <width>173</width> <autoMaxWidth>true</autoMaxWidth> - <height>2</height> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> - <verticalStretch>false</verticalStretch> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="form:FormPicture"/> </extInfo> @@ -589,7 +557,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <font xsi:type="core:FontRef"> <font>Style.NormalTextFont</font> @@ -626,7 +593,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <font xsi:type="core:FontRef"> <font>Style.NormalTextFont</font> @@ -1129,7 +1095,7 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> + <width>55</width> <autoMaxHeight>true</autoMaxHeight> <wrap>true</wrap> <autoMarkIncomplete>true</autoMarkIncomplete> @@ -1176,7 +1142,6 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <wrap>true</wrap> <autoMarkIncomplete>true</autoMarkIncomplete> @@ -1234,6 +1199,7 @@ <extInfo xsi:type="form:InputFieldExtInfo"> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> + <horizontalStretch>false</horizontalStretch> <wrap>true</wrap> <autoMarkIncomplete>true</autoMarkIncomplete> <chooseType>true</chooseType> @@ -1281,6 +1247,7 @@ <extInfo xsi:type="form:InputFieldExtInfo"> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> + <horizontalStretch>true</horizontalStretch> <wrap>true</wrap> <autoMarkIncomplete>true</autoMarkIncomplete> <chooseType>true</chooseType> @@ -1483,7 +1450,6 @@ <extInfo xsi:type="form:InputFieldExtInfo"> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> <wrap>true</wrap> <autoMarkIncomplete>true</autoMarkIncomplete> <chooseType>true</chooseType> @@ -1679,7 +1645,6 @@ <event>ChoiceProcessing</event> <name>ЮридическийАдресОбработкаВыбора</name> </handlers> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <wrap>true</wrap> <choiceButton>true</choiceButton> @@ -1716,13 +1681,10 @@ <id>462</id> <autoFill>true</autoFill> </contextMenu> - <width>3</width> <autoMaxWidth>true</autoMaxWidth> - <height>1</height> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> - <verticalStretch>false</verticalStretch> <skipOnInput>true</skipOnInput> + <groupVerticalAlign>Center</groupVerticalAlign> <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> @@ -1810,7 +1772,6 @@ <event>ChoiceProcessing</event> <name>ФактическийАдресОбработкаВыбора</name> </handlers> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <wrap>true</wrap> <choiceButton>true</choiceButton> @@ -1847,13 +1808,10 @@ <id>465</id> <autoFill>true</autoFill> </contextMenu> - <width>3</width> <autoMaxWidth>true</autoMaxWidth> - <height>1</height> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> - <verticalStretch>false</verticalStretch> <skipOnInput>true</skipOnInput> + <groupVerticalAlign>Center</groupVerticalAlign> <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> @@ -1989,6 +1947,7 @@ <key>ru</key> <value>Вертикальная группа</value> + false ВертикальнаяГруппаРасширеннаяПодсказка 254 @@ -2079,114 +2038,24 @@ ГруппаВладелецДолжность 702 - - ГруппаВладелец - 709 - - Сотрудник - 248 - true - true - - true - - - Сотрудник - - - OnChange - СотрудникПриИзменении - - - СотрудникРасширеннаяПодсказка - 250 - Label - true - true - - Left - - - - СотрудникКонтекстноеМеню - 249 - true - - InputField - true - Enter - true - Left - true - - - StartChoice - СотрудникНачалоВыбора - - - Clearing - СотрудникОчистка - - 30 - true - true - false - true - true - ShowInDropList - true - true - true - - TypeDescription - - Normal - - - - Отступ2 - 706 - true - true - - true - - - Отступ2РасширеннаяПодсказка - 708 - Label - true - true - - Left - - - - Отступ2КонтекстноеМеню - 707 - true - - Label - 5 - true - true - false - - Left - - + + Сотрудник + 248 true true true - - <key>ru</key> - <value>Группа владелец</value> - + + Сотрудник + + + OnChange + СотрудникПриИзменении + - ГруппаВладелецРасширеннаяПодсказка - 710 + СотрудникРасширеннаяПодсказка + 250 Label true true @@ -2194,111 +2063,60 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + + СотрудникКонтекстноеМеню + 249 + true + + InputField + true + Enter + true + Left + true + + + StartChoice + СотрудникНачалоВыбора + + + Clearing + СотрудникОчистка + + 30 + true + true + false + true + true + ShowInDropList + true + true + true + + TypeDescription + + Normal - - ГруппаДолжность - 704 - - Должность - 95 - true - true - - true - - - Должность - - - OnChange - РеквизитПриИзменении - - - ДолжностьРасширеннаяПодсказка - 97 - Label - true - true - - Left - - - - ДолжностьКонтекстноеМеню - 96 - true - - InputField - true - Enter - true - Left - true - - 30 - true - true - false - true - true - true - true - true - Normal - - - - Отступ3 - 687 - true - true - - true - - - Отступ3РасширеннаяПодсказка - 689 - Label - true - true - - Left - - - - Отступ3КонтекстноеМеню - 688 - true - - Label - 5 - true - true - false - - Left - - + + Должность + 95 true true true - - <key>ru</key> - <value>Группа должность</value> - + + Должность + + + OnChange + РеквизитПриИзменении + - ГруппаДолжностьРасширеннаяПодсказка - 705 + ДолжностьРасширеннаяПодсказка + 97 Label true true @@ -2306,13 +2124,28 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + + ДолжностьКонтекстноеМеню + 96 + true + + InputField + true + Enter + true + Left + true + + 30 + true + true + false + true + true + true + true + true + Normal true @@ -2344,73 +2177,30 @@ Auto - - ГруппаПодразделение - 675 - - Подразделение - 98 - true - true - - true - - - Подразделение - - Top - - ru - Заполнить, если владелец сертификата находится в обособленном подразделении, -фактический адрес которого отличается от фактического адреса организации. - - Button - - OnChange - РеквизитПриИзменении - - - ПодразделениеРасширеннаяПодсказка - 100 - Label - true - true - - Left - - - - ПодразделениеКонтекстноеМеню - 99 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - + + Подразделение + 98 true true true - + <dataPath xsi:type="form:DataPath"> + <segments>Подразделение</segments> + </dataPath> + <toolTip> <key>ru</key> - <value>Группа подразделение</value> - + Заполнить, если владелец сертификата находится в обособленном подразделении, +фактический адрес которого отличается от фактического адреса организации. + + Button + + OnChange + РеквизитПриИзменении + - ГруппаПодразделениеРасширеннаяПодсказка - 676 + ПодразделениеРасширеннаяПодсказка + 100 Label true true @@ -2418,13 +2208,25 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + + ПодразделениеКонтекстноеМеню + 99 + true + + InputField + Enter + true + Left + true + + 15 + true + true + true + true + true + true + Normal true @@ -2588,7 +2390,6 @@ true InputField - true Enter true Left @@ -2598,7 +2399,6 @@ true true true - true true true true @@ -2675,7 +2475,7 @@ Left true - 18 + 16 true true true @@ -2719,7 +2519,7 @@ Left true - 9 + 10 true true true @@ -2813,6 +2613,7 @@ Left true + 20 true true true @@ -2863,7 +2664,7 @@ Left true - 18 + 15 true true true @@ -2912,7 +2713,6 @@ Left true - 9 true true true @@ -2961,6 +2761,7 @@ ru Дополнительные реквизиты + false ДополнительныеРеквизитыРасширеннаяПодсказка 104 @@ -3014,7 +2815,7 @@ ГруппаДокумент 107 - ГруппаСерияНомер + ГруппаВидДокумента 124 ДокументВид @@ -3061,8 +2862,6 @@ Clearing ДокументВидОчистка - 45 - true true true true @@ -3083,7 +2882,7 @@ ru - Иной документ, предусмотренные законодательством Российской Федерации + Иной документ, предусмотренный законодательством Российской Федерации 91 @@ -3092,24 +2891,119 @@ Normal - - ДокументКемВыдан - 118 + + ГруппаКемВыданКодПодразделения + 714 + + ДокументКемВыдан + 118 + true + true + + true + + + ДокументКемВыдан + + Left + + OnChange + РеквизитПриИзменении + + + ДокументКемВыданРасширеннаяПодсказка + 120 + Label + true + true + + Left + + + + ДокументКемВыданКонтекстноеМеню + 119 + true + + InputField + true + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + ДокументКодПодразделения + 711 + true + true + + true + + + ДокументКодПодразделения + + Left + + OnChange + ДокументКодПодразделенияПриИзменении + + + ДокументКодПодразделенияРасширеннаяПодсказка + 713 + Label + true + true + + Left + + + + ДокументКодПодразделенияКонтекстноеМеню + 712 + true + + InputField + true + Enter + true + Left + true + + 5 + true + true + false + true + 999-999 + true + true + true + true + Normal + + true true true - - ДокументКемВыдан - - - OnChange - РеквизитПриИзменении - + + <key>ru</key> + <value>Группа кем выдан код подразделения</value> + - ДокументКемВыданРасширеннаяПодсказка - 120 + ГруппаКемВыданКодПодразделенияРасширеннаяПодсказка + 715 Label true true @@ -3117,27 +3011,13 @@ Left - - ДокументКемВыданКонтекстноеМеню - 119 - true - - InputField - true - Enter - true - Left - true - - 45 - true - true - true - true - true - true - true - Normal + UsualGroup + + Auto + true + true + Auto + Auto true @@ -3147,10 +3027,12 @@ <key>ru</key> - <value>Группа серия номер</value> + <value>Группа вид документа</value> + 20 + true - ГруппаСерияНомерРасширеннаяПодсказка + ГруппаВидДокументаРасширеннаяПодсказка 125 Label true @@ -3170,7 +3052,7 @@ - ГруппаКемИКогдаВыдан + ГруппаСерияНомерДатаВыдачи 126 ДокументНомер @@ -3209,9 +3091,10 @@ Left true - 13 + 9 true true + false true 99 99 999999 true @@ -3254,7 +3137,7 @@ Left true - 13 + 9 true true true @@ -3272,10 +3155,10 @@ <key>ru</key> - <value>Группа кем и когда выдан</value> + <value>Группа серия номер дата выдачи</value> - ГруппаКемИКогдаВыданРасширеннаяПодсказка + ГруппаСерияНомерДатаВыдачиРасширеннаяПодсказка 127 Label true @@ -3319,7 +3202,7 @@ true true auto - Auto + DontUse Auto @@ -3465,43 +3348,13 @@ ПодготовкаЗапросаНаСертификат 134 - - ДекорацияРеквизитыЗаявления - 148 - - <key>ru</key> - <value>Заявление заполнено. Проверьте введенные данные:</value> - - true - true - - true - - - ДекорацияРеквизитыЗаявленияРасширеннаяПодсказка - 150 - Label - true - true - - Left - - - - ДекорацияРеквизитыЗаявленияКонтекстноеМеню - 149 - true - - Label - true - true - - Left - - РеквизитыЗаявления 279 + + <key>ru</key> + <value>Заявление заполнено. Проверьте введенные данные</value> + true true @@ -3510,7 +3363,7 @@ РеквизитыЗаявления - None + Top РеквизитыЗаявленияРеквизит 298 @@ -3743,7 +3596,6 @@ true Label - true true @@ -3826,37 +3678,6 @@ DontUse - - ГоризонтальныйОтступ1 - 446 - true - true - - true - - - ГоризонтальныйОтступ1РасширеннаяПодсказка - 448 - Label - true - true - - Left - - - - ГоризонтальныйОтступ1КонтекстноеМеню - 447 - true - - Label - 1 - true - true - - Left - - ДекорацияПояснениеПрограммы 307 @@ -3887,7 +3708,6 @@ true Label - true true @@ -4016,9 +3836,7 @@ true Label - true true - true Left @@ -4061,9 +3879,7 @@ true Label - true true - false Left @@ -4128,9 +3944,7 @@ true Label - true true - false Left @@ -4192,9 +4006,7 @@ true Label - true true - false URLProcessing @@ -4232,9 +4044,7 @@ true Label - true true - false Style.ПоясняющийТекст @@ -4271,9 +4081,7 @@ true Label - true true - false URLProcessing @@ -4342,7 +4150,6 @@ true Label - true true Left @@ -4466,7 +4273,6 @@ true true - false true true true @@ -4544,7 +4350,6 @@ Left true - true true true true @@ -4649,9 +4454,7 @@ true Label - true true - false Left @@ -4716,9 +4519,7 @@ true Label - true true - false Left @@ -4780,9 +4581,7 @@ true Label - true true - false URLProcessing @@ -4820,9 +4619,7 @@ true Label - true true - false Style.ПоясняющийТекст @@ -4859,9 +4656,7 @@ true Label - true true - false URLProcessing @@ -5012,6 +4807,7 @@ Left true + 14 true true false @@ -5193,9 +4989,7 @@ true Label - true true - false Left @@ -5228,9 +5022,7 @@ true Label - true true - false Left @@ -5244,6 +5036,7 @@ ru Вертикальная группа 4 + false ВертикальнаяГруппа4РасширеннаяПодсказка 357 @@ -5413,7 +5206,6 @@ Left true - true true true true @@ -5487,7 +5279,6 @@ true Label - true true Left @@ -5552,7 +5343,6 @@ true Label - true true Left @@ -5586,36 +5376,6 @@ Auto - - ВертикальныйОтступ - 649 - true - true - - true - - - ВертикальныйОтступРасширеннаяПодсказка - 651 - Label - true - true - - Left - - - - ВертикальныйОтступКонтекстноеМеню - 650 - true - - Label - true - true - - Left - - true true @@ -5710,7 +5470,6 @@ true Label - true true true @@ -5746,6 +5505,7 @@ Auto true true + Right UserCmds Button Auto @@ -5817,7 +5577,6 @@ Left true - true true true true @@ -5887,7 +5646,6 @@ true Label - true true Left @@ -5953,7 +5711,6 @@ true Label - true true Left @@ -6034,37 +5791,6 @@ false - - ГоризонтальныйОтступ2 - 454 - true - true - - true - - - ГоризонтальныйОтступ2РасширеннаяПодсказка - 456 - Label - true - true - - Left - - - - ГоризонтальныйОтступ2КонтекстноеМеню - 455 - true - - Label - 1 - true - true - - Left - - ДекорацияПояснениеПрограммы2 369 @@ -6095,7 +5821,6 @@ true Label - true true @@ -6224,7 +5949,6 @@ true Label - true true Left @@ -6600,36 +6324,6 @@ ГруппаСлужбаПоддержки 630 - - Отступ - 31 - true - - true - - - ОтступРасширеннаяПодсказка - 33 - Label - true - true - - Left - - - - ОтступКонтекстноеМеню - 32 - true - - Label - true - true - true - - Left - - СлужбаПоддержки 632 @@ -6659,9 +6353,7 @@ true Label - true true - true Style.ПоясняющийТекст @@ -6753,37 +6445,6 @@ Left - - ГоризонтальныйОтступ - 243 - true - true - - true - - - ГоризонтальныйОтступРасширеннаяПодсказка - 245 - Label - true - true - - Left - - - - ГоризонтальныйОтступКонтекстноеМеню - 244 - true - - Label - true - true - true - - Left - - ОсновныеКоманды 246 @@ -7063,7 +6724,6 @@ OnClose ПриЗакрытии - 74 LockOwner true true @@ -7148,7 +6808,7 @@ 5 - CatalogRef.Организации + DefinedType.Организация true @@ -8032,13 +7692,15 @@ - ПараметрыАутентификацииНаСайте + ИнтернетПоддержкаПользователейПодключена <key>ru</key> - <value>Параметры аутентификации на сайте</value> + <value>Интернет поддержка пользователей подключена</value> 50 - + + Boolean + true @@ -8720,6 +8382,43 @@ true + + ЕстьОрганизации + + <key>ru</key> + <value>Есть организации</value> + + 87 + + Boolean + + + true + + + true + + + + ДокументКодПодразделения + + <key>ru</key> + <value>Код подразделения</value> + + 88 + + String + + 7 + + + + true + + + true + + Далее @@ -8851,7 +8550,8 @@ <parameters> <name>Организация</name> <valueType> - <types>CatalogRef.Организации</types> + <types>String</types> + <stringQualifiers/> </valueType> </parameters> <commandInterface> diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Help/ru.html b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Help/ru.html index de8dbe8dd..064a5d3e4 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Help/ru.html +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Help/ru.html @@ -4,7 +4,7 @@ <ul><li>На странице прочтите соглашение о присоединении к регламенту удостоверяющего центра (УЦ). По гиперссылке можно перейти к просмотру <a href="http://ca.1c.ru/">информации об УЦ</a>. </li><li>Включите флажок, для того чтобы <strong>Принять Соглашение</strong>. </li><li>Нажмите <strong>Далее</strong> для перехода к подготовке заявления.</li></ul><h3>Организация</h3> -<ul><li>На странице необходимо заполнить данные об <a href="Catalog.Организации.Form.ФормаЭлемента/Help">организации</a>. Выберите организацию из <a href="Catalog.Организации/Help">списка</a>. Если данные организации были заполнены, то поля заполняются программой автоматически. +<ul><li>На странице необходимо заполнить данные об организации. Выберите организацию из списка. Если данные организации были заполнены, то поля заполняются программой автоматически. </li><li>Программа проверяет правильность заполнения реквизитов. </li><li>Нажмите <strong>Далее</strong> для перехода к заполнению данных владельца сертификата.</li></ul><h3>Сохранение заявления</h3> <ul><li>Заявление сохраняется автоматически на стадии подготовки и хранится в <a href="Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования/Help">списке сертификатов</a>. В любой момент к нему можно вернуться и продолжить работу.</li></ul><h3>Владелец сертификата</h3> diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Module.bsl b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Module.bsl index 3ba47a0cb..46b0e1fdb 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Module.bsl +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ЗаявлениеНаВыпускНовогоКвалифицированногоСертификата/Module.bsl @@ -16,7 +16,8 @@ Возврат; КонецЕсли; - Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда + ЕстьОрганизации = Не Метаданные.ОпределяемыеТипы.Организация.Тип.СодержитТип(Тип("Строка")); + Если Не ЕстьОрганизации Тогда Элементы.Организация.Видимость = Ложь; КонецЕсли; @@ -52,6 +53,13 @@ ПодключитьОбработчикОжидания("ПриИзмененияСоставаИлиНастроекПрограмм", 0.1, Истина); КонецЕсли; + Если ВРег(ИмяСобытия) = ВРег("ИнтернетПоддержкаПодключена") Тогда + ИнтернетПоддержкаПользователейПодключена = Истина; + + ИначеЕсли ВРег(ИмяСобытия) = ВРег("ИнтернетПоддержкаОтключена") Тогда + ИнтернетПоддержкаПользователейПодключена = Ложь; + КонецЕсли; + Если Не СтрНачинаетсяС(ИмяСобытия, "Запись_") Тогда Возврат; КонецЕсли; @@ -81,7 +89,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; Если Объект.СостояниеЗаявления = ПредопределенноеЗначение("Перечисление.СостоянияЗаявленияНаВыпускСертификата.Подготовлено") Или Объект.СостояниеЗаявления = ПредопределенноеЗначение("Перечисление.СостоянияЗаявленияНаВыпускСертификата.НеПодготовлено") @@ -159,6 +171,10 @@ ПредставлениеАдресаОбработкаВыбора(ЭтотОбъект, Элемент, ВыбранноеЗначение, СтандартнаяОбработка, "ЮридическийАдрес"); + Если Не ЗначениеЗаполнено(ФактическийАдрес) Тогда + ПредставлениеАдресаОбработкаВыбора(ЭтотОбъект, Элемент, ВыбранноеЗначение, СтандартнаяОбработка, "ФактическийАдрес"); + КонецЕсли; + КонецПроцедуры &НаКлиенте @@ -285,7 +301,16 @@ &НаКлиенте Процедура ДокументНомерПриИзменении(Элемент) - ДокументНомер = ТолькоЦифры(ДокументНомер); + Если ДокументВид = "21" Тогда + ДокументНомер = ТолькоЦифры(ДокументНомер); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ДокументКодПодразделенияПриИзменении(Элемент) + + ДокументКодПодразделения = ТолькоЦифры(ДокументКодПодразделения); КонецПроцедуры @@ -611,6 +636,10 @@ КонецПроцедуры +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + // Продолжение процедуры ВыгрузитьСертификат. &НаКлиенте Процедура ВыгрузитьСертификатЗавершение(Результат, Контекст) Экспорт @@ -620,10 +649,6 @@ КонецПроцедуры -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - &НаКлиенте Процедура ЗаполнитьДанныеВыбораПрограммы(ДанныеВыбора, СтандартнаяОбработка) @@ -641,9 +666,9 @@ Функция ИмяФайлаБезРасширения() Если ЭтоИндивидуальныйПредприниматель Тогда - ИмяФайлаБезРасширения = Фамилия + " " + Имя + " " + Отчество; + ИмяФайлаБезРасширения = СокрП(Фамилия + " " + Имя + " " + Отчество); Иначе - ИмяФайлаБезРасширения = Фамилия + " " + Имя + " " + Отчество + ", " + НаименованиеСокращенное + ИмяФайлаБезРасширения = СокрП(Фамилия + " " + Имя + " " + Отчество) + ", " + НаименованиеСокращенное + ?(ЗначениеЗаполнено(Подразделение), ", " + Подразделение, "") + ", " + Должность; КонецЕсли; @@ -834,8 +859,6 @@ &НаСервере Процедура ПерейтиНаСтраницуОтправкаЗаявленияНаСервереПриЗагрузке(Загрузка = Истина) - ПараметрыАутентификацииНаСайте = СтандартныеПодсистемыСервер.ПараметрыАутентификацииНаСайте(); - ПриИзмененииРуководителяНаСервере(Загрузка); ПриИзмененииПартнераНаСервере(Загрузка); @@ -851,6 +874,14 @@ ОбновитьДоступностьРеквизитовПартнера(); + Если Не ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + Возврат; + КонецЕсли; + + МодульИнтернетПоддержкаПользователей = ОбщегоНазначения.ОбщийМодуль("ИнтернетПоддержкаПользователей"); + ИнтернетПоддержкаПользователейПодключена = + МодульИнтернетПоддержкаПользователей.ДанныеАутентификацииПользователяИнтернетПоддержки() <> Неопределено; + КонецПроцедуры &НаСервере @@ -919,31 +950,40 @@ Возврат; КонецЕсли; - Если ТипЗнч(ПараметрыАутентификацииНаСайте) <> Тип("Структура") Тогда - СтандартныеПодсистемыКлиент.АвторизоватьНаСайтеПоддержкиПользователей(ЭтотОбъект, - Новый ОписаниеОповещения("ПерейтиНаСтраницуОжиданиеОбработкиЗаявленияЗавершение", ЭтотОбъект)); + Если Не ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + ПоказатьПредупреждение(, + НСтр("ru = 'Невозможно подключиться к порталу интернет-поддержки по причине: + |Библиотека интернет поддержки пользователей не внедрена в конфигурацию.'")); + КонецЕсли; + + МодульИнтернетПоддержкаПользователейКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль( + "ИнтернетПоддержкаПользователейКлиент"); + + Если Не ИнтернетПоддержкаПользователейПодключена Тогда + МодульИнтернетПоддержкаПользователейКлиент.ПодключитьИнтернетПоддержкуПользователей( + Новый ОписаниеОповещения("ПерейтиНаСтраницуОжиданиеОбработкиЗаявленияЗавершение", ЭтотОбъект), + ЭтотОбъект); Иначе - ПерейтиНаСтраницуОжиданиеОбработкиЗаявленияЗавершение(ПараметрыАутентификацииНаСайте, Неопределено); + ПерейтиНаСтраницуОжиданиеОбработкиЗаявленияЗавершение(Новый Структура, Неопределено); КонецЕсли; КонецПроцедуры &НаКлиенте -Процедура ПерейтиНаСтраницуОжиданиеОбработкиЗаявленияЗавершение(ПараметрыАутентификации, Неопределен) Экспорт +Процедура ПерейтиНаСтраницуОжиданиеОбработкиЗаявленияЗавершение(Результат, Неопределен) Экспорт - Если ТипЗнч(ПараметрыАутентификации) <> Тип("Структура") Тогда - ПараметрыАутентификацииНаСайте = Неопределено; - // Пользователь отказался от ввода логина и пароля. + Если ТипЗнч(Результат) <> Тип("Структура") Тогда + ИнтернетПоддержкаПользователейПодключена = Ложь; Возврат; КонецЕсли; - ПараметрыАутентификацииНаСайте = ПараметрыАутентификации; + ИнтернетПоддержкаПользователейПодключена = Истина; ОписаниеОшибки = ""; Если ПерейтиНаСтраницуОжиданиеОбработкиЗаявленияНаСервере(ОписаниеОшибки) Тогда ПослеЗаписи(); Иначе - Если ПараметрыАутентификацииНаСайте <> Неопределено Тогда + Если ИнтернетПоддержкаПользователейПодключена Тогда ОбработкаПродолжения = Неопределено; Иначе ОбработкаПродолжения = Новый ОписаниеОповещения( @@ -1200,7 +1240,7 @@ Реквизиты.Вставить("ЮридическийАдрес"); Реквизиты.Вставить("ФактическийАдрес"); - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда + Если ЕстьОрганизации Тогда Реквизиты.Вставить("Организация", Организация); Иначе Реквизиты.Вставить("Организация", Неопределено); @@ -1208,7 +1248,7 @@ ЭлектроннаяПодписьПереопределяемый.ПриЗаполненииРеквизитовОрганизацииВЗаявленииНаСертификат(Реквизиты); - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда + Если ЕстьОрганизации Тогда Организация = Реквизиты.Организация; КонецЕсли; ЭтоИндивидуальныйПредприниматель = Реквизиты.ЭтоИндивидуальныйПредприниматель; @@ -1237,10 +1277,8 @@ Элементы.ОГРН.Заголовок = НСтр("ru = 'ОГРН'"); КонецЕсли; - Если Загрузка Тогда - ПроверитьАдрес("ЮридическийАдрес"); - ПроверитьАдрес("ФактическийАдрес"); - КонецЕсли; + ПроверитьАдрес("ЮридическийАдрес"); + ПроверитьАдрес("ФактическийАдрес"); КонецПроцедуры @@ -1456,7 +1494,7 @@ КонецФункции &НаСервере -Функция АдресСоответствуетТребованиям(Знач АдресMXL, ТекстСообщения) +Функция АдресСоответствуетТребованиям(Знач АдресXML, ТекстСообщения) Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда Возврат Ложь; @@ -1466,7 +1504,7 @@ ТекстСообщения = ""; ДополнительныеПараметры = Новый Структура("НаименованиеВключаетСокращение", Истина); - АдресСтруктура = МодульУправлениеКонтактнойИнформацией.СведенияОбАдресе(АдресMXL, ДополнительныеПараметры); + АдресСтруктура = МодульУправлениеКонтактнойИнформацией.СведенияОбАдресе(АдресXML, ДополнительныеПараметры); // Проверка, что адрес российский. Если Не АдресСтруктура.Свойство("КодРегиона") Тогда @@ -1608,6 +1646,7 @@ ОчиститьРеквизит("ДокументНомер"); ОчиститьРеквизит("ДокументКемВыдан"); + ОчиститьРеквизит("ДокументКодПодразделения"); ОчиститьРеквизит("ДокументДатаВыдачи"); ОчиститьРеквизит("ЭлектроннаяПочта"); @@ -1634,10 +1673,11 @@ Реквизиты.Вставить("ДокументВид"); Реквизиты.Вставить("ДокументНомер"); Реквизиты.Вставить("ДокументКемВыдан"); + Реквизиты.Вставить("ДокументКодПодразделения"); Реквизиты.Вставить("ДокументДатаВыдачи"); Реквизиты.Вставить("ЭлектроннаяПочта"); - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда + Если ЕстьОрганизации Тогда Реквизиты.Вставить("Организация", Организация); Иначе Реквизиты.Вставить("Организация", Неопределено); @@ -1731,6 +1771,7 @@ УстановитьРеквизит(Реквизиты, "ДокументВид", Истина); УстановитьРеквизит(Реквизиты, "ДокументНомер", Истина); УстановитьРеквизит(Реквизиты, "ДокументКемВыдан"); + УстановитьРеквизит(Реквизиты, "ДокументКодПодразделения", Истина); УстановитьРеквизит(Реквизиты, "ДокументДатаВыдачи", , Истина); УстановитьРеквизит(Реквизиты, "ЭлектроннаяПочта", , , Ложь); @@ -1768,9 +1809,12 @@ Если ДокументВид = "21" Тогда Элементы.ДокументНомер.Заголовок = НСтр("ru = 'Серия и номер'"); Элементы.ДокументНомер.Маска = "99 99 999999"; + Элементы.ДокументКодПодразделения.Видимость = Истина; Иначе Элементы.ДокументНомер.Заголовок = НСтр("ru = 'Номер'"); Элементы.ДокументНомер.Маска = ""; + Элементы.ДокументКодПодразделения.Видимость = Ложь; + ДокументКодПодразделения = ""; КонецЕсли; Если ДокументВид = 91 Тогда @@ -1792,7 +1836,6 @@ ПроверитьРеквизит(Отказ, "Фамилия"); ПроверитьРеквизит(Отказ, "Имя"); - ПроверитьРеквизит(Отказ, "Отчество"); ПроверитьРеквизит(Отказ, "ДатаРождения"); ПроверитьРеквизит(Отказ, "Пол"); ПроверитьРеквизит(Отказ, "МестоРождения"); @@ -1829,6 +1872,17 @@ КонецЕсли; ПроверитьРеквизит(Отказ, "ДокументКемВыдан"); + + Если ДокументВид = "21" + И ПроверитьРеквизит(Отказ, "ДокументКодПодразделения") Тогда + + ТекстСообщения = ""; + КодПодразделенияВыдачиПаспортаРФСоответствуетТребованиям(ДокументКодПодразделения, ТекстСообщения); + Если ЗначениеЗаполнено(ТекстСообщения) Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения, , "ДокументКодПодразделения", , Отказ); + КонецЕсли; + КонецЕсли; + ПроверитьРеквизит(Отказ, "ДокументДатаВыдачи"); Если ЗначениеЗаполнено(ЭлектроннаяПочта) Тогда @@ -1877,6 +1931,30 @@ КонецФункции +&НаСервере +Функция КодПодразделенияВыдачиПаспортаРФСоответствуетТребованиям(КодПодразделения, ТекстСообщения) + + СтрокаЦифр = СокрЛП(КодПодразделения); + + Если СтрДлина(СтрокаЦифр) < 6 Тогда + ТекстСообщения = НСтр("ru = 'Код подразделения задан неполностью'"); + Возврат Ложь; + КонецЕсли; + + Если Не СтроковыеФункцииКлиентСервер.ТолькоЦифрыВСтроке(СтрокаЦифр) Тогда + ТекстСообщения = НСтр("ru = 'Код подразделения должен состоять только из цифр.'"); + Возврат Ложь; + КонецЕсли; + + Если СтрокаЦифр = "000000" Тогда + ТекстСообщения = НСтр("ru = 'Код подразделения не может быть нулевым.'"); + Возврат Истина; + КонецЕсли; + + Возврат Истина; + +КонецФункции + &НаСервере Процедура ПриИзмененииРуководителяНаСервере(Загрузка = Ложь) @@ -1885,7 +1963,7 @@ Реквизиты.Вставить("Должность"); Реквизиты.Вставить("Основание"); - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда + Если ЕстьОрганизации Тогда Реквизиты.Вставить("Организация", Организация); Иначе Реквизиты.Вставить("Организация", Неопределено); @@ -1951,7 +2029,7 @@ Реквизиты.Вставить("ИНН"); Реквизиты.Вставить("КПП"); - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда + Если ЕстьОрганизации Тогда Реквизиты.Вставить("Организация", Организация); Иначе Реквизиты.Вставить("Организация", Неопределено); @@ -2283,11 +2361,14 @@ ДокументНомерПредставление = ?(ДокументВид = "21", ПредставлениеРеквизитаНомерПаспортаРФ(ДокументНомер), ДокументНомер); + ДокументКодПодразделенияПредставление = ПредставлениеРеквизитаДокументКодПодразделения(ДокументКодПодразделения); ДокументДатаВыдачиПредставление = ПредставлениеРеквизитаДокументДатаВыдачи(ДокументДатаВыдачи); Макет.Параметры.УдостоверениеЛичности = ДокументВидПредставление + " " + ДокументНомерПредставление + " " + НСтр("ru = 'от'") + " " + ДокументДатаВыдачиПредставление + " " - + НСтр("ru = 'выданный'") + " " + ДокументКемВыдан; + + НСтр("ru = 'выданный'") + " " + ДокументКемВыдан + + ?(ЗначениеЗаполнено(ДокументКодПодразделенияПредставление), ", " + НСтр("ru = 'код подразделения'") + + " " + ДокументКодПодразделенияПредставление + "", ""); Документ.Вывести(Макет); @@ -2312,11 +2393,31 @@ Возврат Ложь; КонецПопытки; - Билет = БилетНаСайтПоддержки(ОписаниеОшибки); - Если Не ЗначениеЗаполнено(Билет) Тогда + Если Не ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + ОписаниеОшибки = + НСтр("ru = 'Невозможно подключиться к порталу интернет-поддержки по причине: + |Библиотека интернет поддержки пользователей не внедрена в конфигурацию.'"); Возврат Ложь; КонецЕсли; + МодульИнтернетПоддержкаПользователей = ОбщегоНазначения.ОбщийМодуль("ИнтернетПоддержкаПользователей"); + Результат = МодульИнтернетПоддержкаПользователей.ТикетАутентификацииНаПорталеПоддержки("http://regservice.1c.ru"); + ИнтернетПоддержкаПользователейПодключена = Истина; + + Если ЗначениеЗаполнено(Результат.КодОшибки) Тогда + Если Результат.КодОшибки = "НеверныйЛогинИлиПароль" Тогда + ИнтернетПоддержкаПользователейПодключена = Ложь; + КонецЕсли; + + ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось подключиться к порталу интернет-поддержки по причине: + |%1'"), + Результат.СообщениеОбОшибке); + Возврат Ложь; + Иначе + Билет = Результат.Тикет; + КонецЕсли; + ЭтоПовторнаяОтправкаПакета = Истина; Если Не ЗначениеЗаполнено(ИдентификаторДокументооборота) Тогда ЭтоПовторнаяОтправкаПакета = Ложь; @@ -2379,41 +2480,6 @@ КонецФункции -&НаСервере -Функция БилетНаСайтПоддержки(ОписаниеОшибки) - - Билет = ""; - Попытка - ВебСервис = ОбщегоНазначения.WSПрокси( - "https://login.1c.ru/api/public/ticket?wsdl", - "http://api.cas.jasig.org/", - "TicketApiImplService", - "TicketApiImplPort", - ПараметрыАутентификацииНаСайте.Логин, - ПараметрыАутентификацииНаСайте.Пароль, - 5, - Ложь); - - Билет = ВебСервис.getTicket( - ПараметрыАутентификацииНаСайте.Логин, - ПараметрыАутентификацииНаСайте.Пароль, - "http://regservice.1c.ru"); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке); - Если СтрНайти(КраткоеПредставлениеОшибки, "IncorrectLoginOrPasswordApiException") > 0 Тогда - КраткоеПредставлениеОшибки = НСтр("ru = 'Некорректное имя пользователя или пароль.'"); - ПараметрыАутентификацииНаСайте = Неопределено; - КонецЕсли; - ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Не удалось подключиться к сайту поддержки по причине: - |%1'"), - КраткоеПредставлениеОшибки); - КонецПопытки; - - Возврат Билет; - -КонецФункции &НаСервере Функция ЗаявлениеXML(Билет) @@ -2462,8 +2528,11 @@ Если ДокументВид = "21" Тогда ДокументНомерПредставление = ПредставлениеРеквизитаНомерПаспортаРФ(ДокументНомер); + ДокументКодПодразделенияПредставление = + ПредставлениеРеквизитаДокументКодПодразделения(ДокументКодПодразделения); Иначе ДокументНомерПредставление = ДокументНомер; + ДокументКодПодразделенияПредставление = ""; КонецЕсли; ДокументДатаВыдачиПредставление = ПредставлениеРеквизитаДокументДатаВыдачи(ДокументДатаВыдачи); @@ -2472,6 +2541,7 @@ ЗаписьXML.ЗаписатьАтрибут("СерНомДок", ДокументНомерПредставление); ЗаписьXML.ЗаписатьАтрибут("ДатаДок", ДокументДатаВыдачиПредставление); ЗаписьXML.ЗаписатьАтрибут("ВыдДок", ДокументКемВыдан); + ЗаписьXML.ЗаписатьАтрибут("КодВыдДок", ДокументКодПодразделенияПредставление); ЗаписьXML.ЗаписатьКонецЭлемента(); // КонецЭлемента УдЛичн. Если Не ЭтоИндивидуальныйПредприниматель Тогда @@ -2680,8 +2750,13 @@ &НаСервере Функция ВебСервисУЦ() - ВебСервис = ОбщегоНазначения.WSПрокси("http://regservice.1c.ru/regservice/regservice.asmx?wsdl", - "http://regservice.keydisk.ru/", "RegService", "RegServiceSoap", "", "", 5, Ложь); + ПараметрыПодключения = ОбщегоНазначения.ПараметрыПодключенияWSПрокси(); + ПараметрыПодключения.АдресWSDL = "http://regservice.1c.ru/regservice/regservice.asmx?wsdl"; + ПараметрыПодключения.URIПространстваИмен = "http://regservice.keydisk.ru/"; + ПараметрыПодключения.ИмяСервиса = "RegService"; + ПараметрыПодключения.Таймаут = 5; + + ВебСервис = ОбщегоНазначения.СоздатьWSПрокси(ПараметрыПодключения); Возврат ВебСервис; @@ -3358,6 +3433,8 @@ Форма[ИмяРеквизита + "XML"] = ""; Форма[ИмяРеквизита] = ""; + ПроверитьАдрес(ИмяРеквизита); + КонецПроцедуры &НаКлиенте @@ -3606,6 +3683,10 @@ КонецЕсли; ЗаполнитьРеквизит("ДокументКемВыдан"); + Если ДокументВид = "21" Тогда + ЗаполнитьРеквизит("ДокументКодПодразделения", + ПредставлениеРеквизитаДокументКодПодразделения(ДокументКодПодразделения)); + КонецЕсли; ЗаполнитьРеквизит("ДокументДатаВыдачи", ПредставлениеРеквизитаДокументДатаВыдачи(ДокументДатаВыдачи)); ЗаполнитьРеквизит("ЭлектроннаяПочта"); @@ -3693,6 +3774,17 @@ КонецФункции +&НаКлиентеНаСервереБезКонтекста +Функция ПредставлениеРеквизитаДокументКодПодразделения(КодПодразделения) + + Если Не ЗначениеЗаполнено(КодПодразделения) Тогда + Возврат ""; + КонецЕсли; + + Возврат Лев(КодПодразделения, 3) + "-" + Сред(КодПодразделения, 4); + +КонецФункции + &НаСервере Процедура ЗаполнитьРеквизит(ИмяРеквизита, Значение = Неопределено, ЭтоГруппаРеквизитов = Ложь) @@ -3968,7 +4060,8 @@ Фамилия = СокрЛП(Фамилия); Имя = СокрЛП(Имя); Отчество = СокрЛП(Отчество); - ТекущийОбъект.Наименование = Фамилия + " " + Имя + " " + Отчество + " (" + НСтр("ru = 'Заявление на новый сертификат'") + ")"; + ТекущийОбъект.Наименование = СокрП(Фамилия + " " + Имя + " " + Отчество) + + " (" + НСтр("ru = 'Заявление на новый сертификат'") + ")"; // Организация. ОбновитьЗначение(Содержание, "ЭтоИндивидуальныйПредприниматель"); ОбновитьЗначение(Содержание, "Организация"); @@ -4002,6 +4095,7 @@ ОбновитьЗначение(Содержание, "ДокументВид"); ОбновитьЗначение(Содержание, "ДокументНомер"); ОбновитьЗначение(Содержание, "ДокументКемВыдан"); + ОбновитьЗначение(Содержание, "ДокументКодПодразделения"); ОбновитьЗначение(Содержание, "ДокументДатаВыдачи"); ОбновитьЗначение(Содержание, "ЭлектроннаяПочта"); ОбновитьЗначение(Содержание, "Подразделение"); @@ -4072,7 +4166,7 @@ Если ЭтоНовоеСостояние Тогда ОбновитьЗначение(Содержание, "ДатаОбновленияСостояния"); ОбновитьЗначение(Содержание, "СостояниеОбработкиЗаявления"); - НовоеНаименование = Фамилия + " " + Имя + " " + Отчество + " (" + НСтр("ru = 'Удалить'") + ")"; + НовоеНаименование = СокрП(Фамилия + " " + Имя + " " + Отчество) + " (" + НСтр("ru = 'Удалить'") + ")"; Если ТекущийОбъект.Наименование <> НовоеНаименование Тогда ТекущийОбъект.Наименование = НовоеНаименование; Содержание.ЕстьИзменения = Истина; @@ -4708,22 +4802,18 @@ СписокПараметров = Новый СписокЗначений; Поля = Новый Структура; - Если ЭтоИндивидуальныйПредприниматель Тогда - Адрес = ЮридическийАдресСтруктура; // Адрес регистрации индивидуального предпринимателя. - Иначе - Адрес = ФактическийАдресСтруктура; // Адрес местонахождения юридического лица. - КонецЕсли; + Адрес = ЮридическийАдресСтруктура; // Поле CN - общее имя (организация или индивидуальный предприниматель). Если ЭтоИндивидуальныйПредприниматель Тогда - ПолеОбщееИмя = СтрЗаменить(Фамилия, " ", "_") + " " + СтрЗаменить(Имя, " ", "_") + " " - + СтрЗаменить(Отчество, " ", "_"); + ПолеОбщееИмя = СокрП(СтрЗаменить(Фамилия, " ", "_") + " " + СтрЗаменить(Имя, " ", "_") + + " " + СтрЗаменить(Отчество, " ", "_")); Иначе ПолеОбщееИмя = НаименованиеСокращенное; КонецЕсли; Поля.Вставить("CN", Лев(ПолеОбщееИмя, 64)); СписокПараметров.Добавить("2.5.4.3", Поля.CN); - + // Поле SN - фамилия должностного лица или индивидуального предпринимателя. ПолеФамилия = СтрЗаменить(Фамилия, " ", "_"); @@ -4731,7 +4821,7 @@ СписокПараметров.Добавить("2.5.4.4", Поля.SN); // Поле G - имя и отчество должностного лица или индивидуального предпринимателя. - ПолеОтчество = СтрЗаменить(Имя, " ", "_") + " " + СтрЗаменить(Отчество, " ", "_"); + ПолеОтчество = СокрП(СтрЗаменить(Имя, " ", "_") + " " + СтрЗаменить(Отчество, " ", "_")); Поля.Вставить("G", Лев(ПолеОтчество, 64)); СписокПараметров.Добавить("2.5.4.42", Поля.G); @@ -4756,7 +4846,6 @@ Поля.Вставить("L", Лев(ПолеНаселенныйПункт, 128)); СписокПараметров.Добавить("2.5.4.7", Поля.L); - // Поле Street - улица, дом, офис. // Поле Street - улица: // "<улица> и/или <дополнительная территория> и/или <элемент дополнительной территории>, дом, офис". ПолеУлица = ПредставлениеЧастиАдреса(Адрес, @@ -4814,6 +4903,11 @@ // Использование ключа - Проверка подлинности клиента, Защищенная электронная почта. ИспользованиеКлюча = "1.3.6.1.5.5.7.3.2,1.3.6.1.5.5.7.3.4"; + // Для УЦ КриптоПро 2.0 требуется указать шаблон сертификата. + // Без встроенной лицензии шаблон - "1.2.643.2.2.46.0.8", со встроенной лицензией + // шаблон - "1.2.643.2.2.50.1.9.8791462.1882306.9191997.3049782.15111.41178". + ШаблонСертификата = "1.2.643.2.2.46.0.8"; + Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( "pRequestInfo:{ |CertAttrs:{%1} @@ -4821,10 +4915,12 @@ |CertPolicies:{<1.2.643.100.113.1=>} |dwKeyUsage:{240} |SignTool:{%3} + |CertTemplate:{%4} |}", Свойства, ИспользованиеКлюча, - ПредставлениеПрограммы); + ПредставлениеПрограммы, + ШаблонСертификата); КонецФункции diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ОповещениеОбОкончанииСрокаДействия/Form.form b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ОповещениеОбОкончанииСрокаДействия/Form.form index 0ac5366ba..08910ae1c 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ОповещениеОбОкончанииСрокаДействия/Form.form +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ОповещениеОбОкончанииСрокаДействия/Form.form @@ -1,53 +1,16 @@ <?xml version="1.0" encoding="UTF-8"?> -<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:form="http://g5.1c.ru/v8/dt/form"> +<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:form="http://g5.1c.ru/v8/dt/form"> <title> <key>ru</key> <value>Необходима замена сертификата</value> - - Декорация - 3 - - <key>ru</key> - <value>Заканчивается срок действия для сертификата:</value> - - true - true - - true - - - ДекорацияExtendedTooltip - 15 - Label - true - true - - Left - - - - ДекорацияКонтекстноеМеню - 4 - true - - Label - true - true - - System.DefaultGUIFont - true - false - false - false - - - Left - - Сертификат 1 + + <key>ru</key> + <value>Заканчивается срок действия для сертификата</value> + true true @@ -56,7 +19,7 @@ Сертификат - None + Top СертификатExtendedTooltip 16 @@ -164,15 +127,7 @@ true Label - true true - - System.DefaultGUIFont - true - false - false - false - Left @@ -250,7 +205,6 @@ OnClose ПриЗакрытии - 60 DontBlock true true diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ОповещениеОбОкончанииСрокаДействия/Module.bsl b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ОповещениеОбОкончанииСрокаДействия/Module.bsl index ca22396d2..ab86bb457 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ОповещениеОбОкончанииСрокаДействия/Module.bsl +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ОповещениеОбОкончанииСрокаДействия/Module.bsl @@ -15,8 +15,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; Если БольшеНеНапоминать Тогда УстановитьПометкуНаСервере(Сертификат); КонецЕсли; diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПередачаПараметров/Module.bsl b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПередачаПараметров/Module.bsl index a488c0059..bcb786d4f 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПередачаПараметров/Module.bsl +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПередачаПараметров/Module.bsl @@ -47,7 +47,9 @@ ИмяНовойФормы = "Справочник.СертификатыКлючейЭлектроннойПодписиИШифрования.Форма." + ВидФормы; - Форма = ПолучитьФорму(ИмяНовойФормы, СерверныеПараметры, ВладелецНовойФормы); + Контекст = Новый Структура; + Форма = ОткрытьФорму(ИмяНовойФормы, СерверныеПараметры, ВладелецНовойФормы,,,, + Новый ОписаниеОповещения("ОткрытьНовуюФормуОповещениеОЗакрытии", ЭтотОбъект, Контекст)); Если Форма = Неопределено Тогда Если ТипЗнч(ОбработкаЗавершения) = Тип("ОписаниеОповещения") Тогда @@ -58,17 +60,11 @@ СтандартныеПодсистемыКлиент.УстановитьХранениеФормы(Форма, Истина); - Контекст = Новый Структура; Контекст.Вставить("Форма", Форма); Контекст.Вставить("ОбработкаЗавершения", ОбработкаЗавершения); Контекст.Вставить("КлиентскиеПараметры", КлиентскиеПараметры); Контекст.Вставить("Оповещение", Новый ОписаниеОповещения("ПродлитьХранениеКонтекстаОперации", ЭтотОбъект)); - Если ТипЗнч(ОбработкаЗавершения) = Тип("ОписаниеОповещения") Тогда - Форма.ОписаниеОповещенияОЗакрытии = Новый ОписаниеОповещения( - "ОткрытьНовуюФормуОповещениеОЗакрытии", ЭтотОбъект, Контекст); - КонецЕсли; - Оповещение = Новый ОписаниеОповещения("ОткрытьНовуюФормуПродолжение", ЭтотОбъект, Контекст); Если КлиентскиеПараметры = Неопределено Тогда @@ -170,7 +166,7 @@ ОбработкаПродолжения = Новый ОписаниеОповещения("УстановитьПарольСертификата", ЭтотОбъект); - УстановленныеПароли.Вставить(СертификатСсылка, Строка(Пароль)); + УстановленныеПароли.Вставить(СертификатСсылка, ?(Пароль = Неопределено, Пароль, Строка(Пароль))); Пароль = Неопределено; НовоеПояснениеПароля = Новый Структура; diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодборСертификатовДляШифрования/Form.form b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодборСертификатовДляШифрования/Form.form index bacacac97..8547c3047 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодборСертификатовДляШифрования/Form.form +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодборСертификатовДляШифрования/Form.form @@ -16,7 +16,6 @@ ru Группа пользовательских настроек - false СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка 2 @@ -1166,7 +1165,8 @@ OnCreateAtServer ПриСозданииНаСервере - 80 + Copy + Delete LockOwner true true @@ -1275,6 +1275,21 @@ true + + Организация + + <key>ru</key> + <value>Организация</value> + + 5 + + + true + + + true + + ДобавитьИзФайла diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодборСертификатовДляШифрования/Module.bsl b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодборСертификатовДляШифрования/Module.bsl index 546855ec2..9e8bb3cc9 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодборСертификатовДляШифрования/Module.bsl +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодборСертификатовДляШифрования/Module.bsl @@ -9,6 +9,8 @@ Возврат; КонецЕсли; + Параметры.Отбор.Свойство("Организация", Организация); + ЗакрыватьПриВыборе = Ложь; КонецПроцедуры @@ -53,8 +55,12 @@ Отказ = Истина; Если Не Копирование Тогда + ПараметрыСоздания = Новый Структура; + ПараметрыСоздания.Вставить("ВЛичныйСписок", Истина); + ПараметрыСоздания.Вставить("Организация", Организация); + ЭлектроннаяПодписьСлужебныйКлиент.ДобавитьСертификатПослеВыбораНазначения( - "ТолькоДляШифрования", Новый Структура("ВЛичныйСписок", Истина)); + "ТолькоДляШифрования", ПараметрыСоздания); КонецЕсли; КонецПроцедуры @@ -73,7 +79,11 @@ &НаКлиенте Процедура ДобавитьИзФайла(Команда) - ЭлектроннаяПодписьСлужебныйКлиент.ДобавитьСертификатТолькоДляШифрованияИзФайла(Истина); + ПараметрыСоздания = Новый Структура; + ПараметрыСоздания.Вставить("ВЛичныйСписок", Истина); + ПараметрыСоздания.Вставить("Организация", Организация); + + ЭлектроннаяПодписьСлужебныйКлиент.ДобавитьСертификатТолькоДляШифрованияИзФайла(ПараметрыСоздания); КонецПроцедуры diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодписаниеДанных/Form.form b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодписаниеДанных/Form.form index fa4d8e086..d23ee4c0d 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодписаниеДанных/Form.form +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодписаниеДанных/Form.form @@ -47,7 +47,6 @@ <event>Click</event> <name>ПредставлениеДанныхНажатие</name> </handlers> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <hyperlink>true</hyperlink> </extInfo> @@ -83,321 +82,32 @@ </extInfo> </items> <items xsi:type="form:FormGroup"> - <name>ГруппаПодписание</name> - <id>378</id> + <name>ГруппаПодписаниеИКомментарий</name> + <id>452</id> <items xsi:type="form:FormGroup"> - <name>ГруппаЗаголовкиПолей</name> - <id>425</id> - <items xsi:type="form:Decoration"> - <name>СертификатЗаголовок</name> - <id>427</id> - <title> - <key>ru</key> - <value>Сертификат:</value> - - true - true - - true - - - СертификатЗаголовокРасширеннаяПодсказка - 429 - Label - true - true - - Left - - - - СертификатЗаголовокКонтекстноеМеню - 428 - true - - Label - true - true - - Left - - - - ПарольЗаголовок - 430 - - <key>ru</key> - <value>Пароль:</value> - - true - true - - true - - - ПарольЗаголовокРасширеннаяПодсказка - 432 - Label - true - true - - Left - - - - ПарольЗаголовокКонтекстноеМеню - 431 - true - - Label - true - true - - Left - - - - ВертикальныйОтступ - 435 - true - true - - true - - - ВертикальныйОтступРасширеннаяПодсказка - 437 - Label - true - true - - Left - - - - ВертикальныйОтступКонтекстноеМеню - 436 - true - - Label - true - true - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа заголовки полей</value> - - - ГруппаЗаголовкиПолейРасширеннаяПодсказка - 426 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаПоля - 433 - - Сертификат - 313 - true - true - - true - - - Сертификат - - None - - OnChange - СертификатПриИзменении - - - СертификатРасширеннаяПодсказка - 315 - Label - true - true - - Left - - - - СертификатКонтекстноеМеню - 314 - true - - InputField - Enter - true - Left - true - - - AutoComplete - СертификатАвтоПодбор - - - StartChoice - СертификатНачалоВыбора - - - Opening - СертификатОткрытие - - - TextEditEnd - СертификатОкончаниеВводаТекста - - - ChoiceProcessing - СертификатОбработкаВыбора - - true - true - true - true - ShowInDropList - true - false - false - true - true - true - Normal - DontUse - - - - Пароль - 316 - true - true - - true - - - Пароль - - None - - OnChange - ПарольПриИзменении - - - ПарольРасширеннаяПодсказка - 318 - Label - true - true - - Left - - - - ПарольКонтекстноеМеню - 317 - true - - InputField - Enter - true - Left - true - - true - true - false - true - true - true - true - Normal - - + ГруппаПодписание + 378 - Страницы - 416 - - СтраницаЗапоминаниеПароля - 418 - - ЗапомнитьПароль - 324 - true - true - - true - - - ЗапомнитьПароль - - Right - - ru - Запомнить пароль сертификата до закрытия программы. При снятии флажка пароль стирается из памяти, если запоминался ранее. - - Button - - OnChange - ЗапомнитьПарольПриИзменении - - - ЗапомнитьПарольРасширеннаяПодсказка - 326 - Label - true - true - - Left - - - - ЗапомнитьПарольКонтекстноеМеню - 325 - true - - CheckBoxField - Enter - true - Left - true - - + ГруппаПоля + 433 + + Сертификат + 313 true true true - - <key>ru</key> - <value>Страница запоминание пароля</value> - + + Сертификат + + + OnChange + СертификатПриИзменении + - СтраницаЗапоминаниеПароляРасширеннаяПодсказка - 419 + СертификатРасширеннаяПодсказка + 315 Label true true @@ -405,38 +115,159 @@ Left - Page - - Vertical - auto - false + + СертификатКонтекстноеМеню + 314 + true + + InputField + Enter + true + Left + true + + + AutoComplete + СертификатАвтоПодбор + + + StartChoice + СертификатНачалоВыбора + + + Opening + СертификатОткрытие + + + TextEditEnd + СертификатОкончаниеВводаТекста + + + ChoiceProcessing + СертификатОбработкаВыбора + + true + true + true + true + ShowInDropList + true + false + false + true + true + true + Normal + DontUse + + + + Пароль + 316 + true + true + + true + + + Пароль + + + OnChange + ПарольПриИзменении + + + ПарольРасширеннаяПодсказка + 318 + Label + true + true + + Left + + + + ПарольКонтекстноеМеню + 317 + true + + InputField + Enter + true + Left + true + + true + true + false + true + true + true + true + Normal - СтраницаПояснениеУсиленногоПароля - 438 - - ПояснениеУсиленногоПароля - 440 + Страницы + 416 + + СтраницаЗапоминаниеПароля + 418 + + ЗапомнитьПароль + 324 + true + true + + true + + + ЗапомнитьПароль + + Right + + ru + Запомнить пароль сертификата до закрытия программы. При снятии флажка пароль стирается из памяти, если запоминался ранее. + + Button + + OnChange + ЗапомнитьПарольПриИзменении + + + ЗапомнитьПарольРасширеннаяПодсказка + 326 + Label + true + true + + Left + + + + ЗапомнитьПарольКонтекстноеМеню + 325 + true + + CheckBoxField + Enter + true + Left + true + + + true + true + + true + <key>ru</key> - <value>Нажмите Подписать, чтобы перейти к вводу пароля. -</value> + <value>Страница запоминание пароля</value> - true - true - - true - - - ru - Пароль запрашивает программа электронной подписи, а не программа 1С:Предприятие, -так как для выбранного сертификата указана усиленная защита закрытого ключа. - - Button - ПояснениеУсиленногоПароляРасширеннаяПодсказка - 442 + СтраницаЗапоминаниеПароляРасширеннаяПодсказка + 419 Label true true @@ -444,90 +275,154 @@ Left - - ПояснениеУсиленногоПароляКонтекстноеМеню - 441 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left + Page + + Vertical + auto + false - true - true - - true - - - <key>ru</key> - <value>Страница пояснение усиленного пароля</value> - - - СтраницаПояснениеУсиленногоПароляРасширеннаяПодсказка - 439 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - СтраницаПояснениеУстановленногоПароля - 443 - - ПояснениеУстановленногоПароля - 445 + + СтраницаПояснениеУсиленногоПароля + 438 + + ПояснениеУсиленногоПароля + 440 + + <key>ru</key> + <value>Нажмите Подписать, чтобы перейти к вводу пароля. +</value> + + true + true + + true + + + ru + Пароль запрашивает программа электронной подписи, а не программа 1С:Предприятие, +так как для выбранного сертификата указана усиленная защита закрытого ключа. + + Button + + ПояснениеУсиленногоПароляРасширеннаяПодсказка + 442 + Label + true + true + + Left + + + + ПояснениеУсиленногоПароляКонтекстноеМеню + 441 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + + true true true - Button + + <key>ru</key> + <value>Страница пояснение усиленного пароля</value> + - ПояснениеУстановленногоПароляРасширеннаяПодсказка - 447 + СтраницаПояснениеУсиленногоПароляРасширеннаяПодсказка + 439 Label true true + + Left + + + Page + + Vertical + auto + false + + + + СтраницаПояснениеУстановленногоПароля + 443 + + ПояснениеУстановленногоПароля + 445 + true + true + + true + + Button + + ПояснениеУстановленногоПароляРасширеннаяПодсказка + 447 + Label + true + true + + + URLProcessing + ПояснениеУстановленногоПароляРасширеннаяПодсказкаОбработкаНавигационнойСсылки + + Left + + + + ПояснениеУстановленногоПароляКонтекстноеМеню + 446 + true + + Label + true + true + + Style.ПоясняющийТекст + - URLProcessing - ПояснениеУстановленногоПароляРасширеннаяПодсказкаОбработкаНавигационнойСсылки + Click + ПояснениеУстановленногоПароляНажатие Left + + true + true + + true + + + <key>ru</key> + <value>Страница пояснение установленного пароля</value> + + + СтраницаПояснениеУстановленногоПароляРасширеннаяПодсказка + 444 + Label + true + true + + Left + - - ПояснениеУстановленногоПароляКонтекстноеМеню - 446 - true - - Label - true - true - - Style.ПоясняющийТекст - - - - Click - ПояснениеУстановленногоПароляНажатие - - Left + Page + + Vertical + auto + false true @@ -537,11 +432,15 @@ <key>ru</key> - <value>Страница пояснение установленного пароля</value> + <value>Страницы</value> + + ru + Страницы + - СтраницаПояснениеУстановленногоПароляРасширеннаяПодсказка - 444 + СтраницыРасширеннаяПодсказка + 417 Label true true @@ -549,11 +448,9 @@ Left - Page - - Vertical - auto - false + Pages + + Auto true @@ -563,15 +460,11 @@ <key>ru</key> - <value>Страницы</value> + <value>Группа поля</value> - - ru - Страницы - - СтраницыРасширеннаяПодсказка - 417 + ГруппаПоляРасширеннаяПодсказка + 434 Label true true @@ -579,8 +472,13 @@ Left - Pages - + UsualGroup + + Vertical + Auto + true + true + Auto Auto @@ -591,11 +489,18 @@ <key>ru</key> - <value>Группа поля</value> + <value>Введите пароль закрытого ключа сертификата</value> + + Style.NormalTextFont + true + false + false + false + - ГруппаПоляРасширеннаяПодсказка - 434 + ГруппаПодписаниеРасширеннаяПодсказка + 379 Label true true @@ -605,90 +510,21 @@ UsualGroup - Vertical Auto true true + auto Auto Auto - true - true - - true - - - <key>ru</key> - <value>Введите пароль закрытого ключа сертификата</value> - - - Style.NormalTextFont - true - false - false - false - - - ГруппаПодписаниеРасширеннаяПодсказка - 379 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - auto - Auto - Auto - - - - ГруппаКомментарий - 411 - - КомментарийЗаголовок - 413 - - <key>ru</key> - <value>Комментарий к подписи:</value> - - true - true - - true - - - КомментарийЗаголовокРасширеннаяПодсказка - 415 - Label - true - true - - Left - - - - КомментарийЗаголовокКонтекстноеМеню - 414 - true - - Label - true - true - - Left - - Комментарий 408 + + <key>ru</key> + <value>Комментарий к подписи</value> + true true @@ -697,7 +533,7 @@ Комментарий - None + 2 КомментарийРасширеннаяПодсказка 410 @@ -736,11 +572,15 @@ <key>ru</key> - <value>Группа комментарий</value> + <value>Группа подписание и комментарий</value> + + ru + Группа подписание и комментарий + - ГруппаКомментарийРасширеннаяПодсказка - 412 + ГруппаПодписаниеИКомментарийРасширеннаяПодсказка + 453 Label true true @@ -750,10 +590,9 @@ UsualGroup + Vertical Auto - NormalSeparation true - true Auto Auto @@ -858,7 +697,6 @@ OnCreateAtServer ПриСозданииНаСервере - 48 LockOwner true true @@ -1196,6 +1034,23 @@ true + + ВыполнятьВМоделиСервиса + + <key>ru</key> + <value>Выполнять в модели сервиса</value> + + 20 + + Boolean + + + true + + + true + + Подписать diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодписаниеДанных/Module.bsl b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодписаниеДанных/Module.bsl index d3ea5d407..1b4b71bcb 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодписаниеДанных/Module.bsl +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПодписаниеДанных/Module.bsl @@ -182,6 +182,8 @@ &НаКлиенте Процедура Подписать(Команда) + ОписаниеДанных.Вставить("ПользовательНажалКнопкуПодписать", Истина); + Если Не ПроверитьЗаполнение() Тогда Возврат; КонецЕсли; diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПроверкаСертификата/Form.form b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПроверкаСертификата/Form.form index 2f4af5fcd..cff1fb688 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПроверкаСертификата/Form.form +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПроверкаСертификата/Form.form @@ -34,9 +34,7 @@ <id>27</id> <autoFill>true</autoFill> </contextMenu> - <width>3</width> <autoMaxWidth>true</autoMaxWidth> - <height>2</height> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="core:PictureRef"> @@ -115,7 +113,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <height>2</height> <autoMaxHeight>true</autoMaxHeight> <font xsi:type="core:FontRef"> @@ -191,14 +188,12 @@ <id>33</id> <autoFill>true</autoFill> </contextMenu> - <width>3</width> <autoMaxWidth>true</autoMaxWidth> - <height>1</height> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -235,14 +230,12 @@ <id>4</id> <autoFill>true</autoFill> </contextMenu> - <width>3</width> <autoMaxWidth>true</autoMaxWidth> - <height>1</height> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -282,7 +275,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -356,7 +348,7 @@ <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -400,7 +392,7 @@ <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -441,7 +433,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -516,7 +507,7 @@ <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -560,7 +551,7 @@ <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -606,7 +597,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -681,7 +671,7 @@ <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -725,7 +715,7 @@ <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -766,7 +756,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -873,7 +862,7 @@ <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -917,7 +906,7 @@ <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -958,7 +947,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -1033,7 +1021,7 @@ <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -1077,7 +1065,7 @@ <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -1118,7 +1106,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -1193,7 +1180,7 @@ <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -1237,7 +1224,7 @@ <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -1278,7 +1265,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -1353,7 +1339,7 @@ <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -1397,7 +1383,7 @@ <extInfo xsi:type="form:PictureDecorationExtInfo"> <handlers> <event>Click</event> - <name>КартинкаНажатие</name> + <name>Подключаемый_КартинкаНажатие</name> </handlers> <hyperlink>true</hyperlink> <pictureSize>AutoSize</pictureSize> @@ -1438,7 +1424,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -1536,102 +1521,6 @@ <items xsi:type="form:FormGroup"> <name>ГруппаВводаПароля</name> <id>142</id> - <items xsi:type="form:FormGroup"> - <name>ГруппаЗаголовкиПолей</name> - <id>129</id> - <items xsi:type="form:Decoration"> - <name>ПарольЗаголовок</name> - <id>134</id> - <title> - <key>ru</key> - <value>Пароль:</value> - - true - true - - true - - - ПарольЗаголовокРасширеннаяПодсказка - 136 - Label - true - true - - Left - - - - ПарольЗаголовокКонтекстноеМеню - 135 - true - - Label - true - true - - Left - - - - ВертикальныйОтступ - 137 - true - true - - true - - - ВертикальныйОтступРасширеннаяПодсказка - 139 - Label - true - true - - Left - - - - ВертикальныйОтступКонтекстноеМеню - 138 - true - - Label - true - true - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа заголовки полей</value> - - - ГруппаЗаголовкиПолейРасширеннаяПодсказка - 130 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - ГруппаПоля 140 @@ -1646,7 +1535,6 @@ Пароль - None OnChange ПарольПриИзменении @@ -1795,7 +1683,6 @@ true Label - true true Style.ПоясняющийТекст @@ -2018,12 +1905,50 @@ true true - 2 true Stretch + + Инструкция + 151 + + <key>ru</key> + <value>Типичные проблемы при работе с программами электронной подписи и их решение</value> + + true + true + + true + + + ИнструкцияРасширеннаяПодсказка + 153 + Label + true + true + + Left + + + + ИнструкцияКонтекстноеМеню + 152 + true + + Label + true + true + + + Click + ИнструкцияНажатие + + true + Left + + Bottom true @@ -2364,6 +2289,23 @@ true + + ЭтоПрограммаОблачногоСервиса + + <key>ru</key> + <value>Это программа облачного сервиса</value> + + 16 + + Boolean + + + true + + + true + + Проверить diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПроверкаСертификата/Module.bsl b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПроверкаСертификата/Module.bsl index b6aedecca..7ff378d7a 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПроверкаСертификата/Module.bsl +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПроверкаСертификата/Module.bsl @@ -51,7 +51,7 @@ Картинка.Ширина = 3; Картинка.Высота = 1; Картинка.Гиперссылка = Истина; - Картинка.УстановитьДействие("Нажатие", "КартинкаНажатие"); + Картинка.УстановитьДействие("Нажатие", "Подключаемый_КартинкаНажатие"); Картинка = Элементы.Добавить(Проверка.Имя + "НаСервереКартинка", Тип("ДекорацияФормы"), Группа); Картинка.Вид = ВидДекорацииФормы.Картинка; @@ -60,7 +60,7 @@ Картинка.Ширина = 3; Картинка.Высота = 1; Картинка.Гиперссылка = Истина; - Картинка.УстановитьДействие("Нажатие", "КартинкаНажатие"); + Картинка.УстановитьДействие("Нажатие", "Подключаемый_КартинкаНажатие"); Надпись = Элементы.Добавить(Проверка.Имя + "Надпись", Тип("ДекорацияФормы"), Группа); Надпись.Заголовок = Проверка.Представление; @@ -88,6 +88,11 @@ АдресСертификата = ПоместитьВоВременноеХранилище(СвойстваСертификата.ДанныеСертификата.Получить(), УникальныйИдентификатор); СертификатУсиленнаяЗащитаЗакрытогоКлюча = СвойстваСертификата.УсиленнаяЗащитаЗакрытогоКлюча; + Если Программа.ЭтоПрограммаОблачногоСервиса Тогда + ЭтоПрограммаОблачногоСервиса = Истина; + Элементы.ГруппаВводаПароля.Видимость = Ложь; + КонецЕсли; + ОбновитьВидимостьНаСервере(); Если СтандартныеПроверки Тогда @@ -130,15 +135,23 @@ #Область ОбработчикиСобытийЭлементовШапкиФормы &НаКлиенте -Процедура КартинкаНажатие(Элемент) +Процедура Подключаемый_КартинкаНажатие(Элемент) Если ЗначениеЗаполнено(Элемент.Подсказка) Тогда - ПоказатьПредупреждение(, Элемент.Подсказка); + Если Элемент.Подсказка = НСтр("ru = 'Проверка выполнена успешно.'") Тогда + ПоказатьПредупреждение(, Элемент.Подсказка); + Иначе + ПараметрыПредупреждения = Новый Структура; + + ПараметрыПредупреждения.Вставить("ТекстПредупреждения", Элемент.Подсказка); + ПараметрыПредупреждения.Вставить("ЗаголовокПредупреждения", НСтр("ru = 'Сертификат недействителен по причине:'")); + + ОткрытьФорму("ОбщаяФорма.РезультатПроверки", ПараметрыПредупреждения); + КонецЕсли; КонецЕсли; КонецПроцедуры - &НаКлиенте Процедура ПарольПриИзменении(Элемент) @@ -168,6 +181,13 @@ ЭлектроннаяПодписьСлужебныйКлиент.ПояснениеУстановленногоПароляОбработкаНавигационнойСсылки( ЭтотОбъект, Элемент, НавигационнаяСсылка, СтандартнаяОбработка, СвойстваПароля); + КонецПроцедуры + +&НаКлиенте +Процедура ИнструкцияНажатие(Элемент) + + ЭлектроннаяПодписьКлиент.ОткрытьИнструкциюПоТипичнымПроблемамПриРаботеСПрограммами(); + КонецПроцедуры #КонецОбласти @@ -309,9 +329,13 @@ // Очистка предыдущих результатов проверки. Если СтандартныеПроверки Тогда ОсновныеПроверки = Новый Структура( - "ЗаконныйСертификат, НаличиеСертификата, ДанныеСертификата, НаличиеПрограммы, + "ЗаконныйСертификат, НаличиеСертификата, ДанныеСертификата, |Подписание, ПроверкаПодписи, Шифрование, Расшифровка"); - + + Если Не ЭтоПрограммаОблачногоСервиса Тогда + ОсновныеПроверки.Вставить("НаличиеПрограммы"); + КонецЕсли; + Для каждого КлючИЗначение Из ОсновныеПроверки Цикл УстановитьЭлемент(ЭтотОбъект, КлючИЗначение.Ключ, Ложь); УстановитьЭлемент(ЭтотОбъект, КлючИЗначение.Ключ, Истина); @@ -433,7 +457,9 @@ Контекст.Вставить("СертификатКриптографии", СертификатКриптографии); // Законный сертификат - Если Контекст.СертификатКриптографии.Субъект.Свойство("SN") Тогда + Если Не Элементы.ГруппаЗаконныйСертификат.Видимость + Или Контекст.СертификатКриптографии.Субъект.Свойство("SN") Тогда + ОписаниеОшибки = ""; Иначе ОписаниеОшибки = НСтр("ru = 'В описании субъекта сертификата не найдено поле ""SN"".'"); @@ -441,9 +467,17 @@ УстановитьЭлемент(ЭтотОбъект, "ЗаконныйСертификат", Ложь, ОписаниеОшибки); // Наличие сертификата в личном списке. - ЭлектроннаяПодписьСлужебныйКлиент.ПолучитьСертификатПоОтпечатку(Новый ОписаниеОповещения( + Если ЭтоПрограммаОблачногоСервиса Тогда + СтруктураПоиска = Новый Структура; + СтруктураПоиска.Вставить("Отпечаток", Контекст.СертификатКриптографии.Отпечаток); + МодульХранилищеСертификатовКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ХранилищеСертификатовКлиент"); + МодульХранилищеСертификатовКлиент.НайтиСертификат(Новый ОписаниеОповещения( + "ПроверитьНаСторонеКлиентаПослеПоискаСертификатаВМоделиСервиса", ЭтотОбъект, Контекст), СтруктураПоиска); + Иначе + ЭлектроннаяПодписьСлужебныйКлиент.ПолучитьСертификатПоОтпечатку(Новый ОписаниеОповещения( "ПроверитьНаСторонеКлиентаПослеПоискаСертификата", ЭтотОбъект, Контекст), - Base64Строка(Контекст.СертификатКриптографии.Отпечаток), Истина, Неопределено); + Base64Строка(Контекст.СертификатКриптографии.Отпечаток), Истина, Неопределено); + КонецЕсли; КонецПроцедуры @@ -466,6 +500,34 @@ КонецПроцедуры +// Продолжение процедуры ПроверитьНаСторонеКлиента. +&НаКлиенте +Процедура ПроверитьНаСторонеКлиентаПослеПоискаСертификатаВМоделиСервиса(Результат, Контекст) Экспорт + + Если ТипЗнч(Результат) <> Тип("Структура") Или Не Результат.Выполнено Тогда + ОписаниеОшибки = Результат.ОписаниеОшибки.Описание + Символы.ПС + Символы.ПС + + НСтр("ru = 'Проверка подписания, созданной подписи и расшифровки не могут быть выполнены.'"); + ИначеЕсли Результат.Сертификат = Неопределено Тогда + ОписаниеОшибки = НСтр("ru = 'Сертификат не найден в хранилище сертификатов.'") + Символы.ПС + + НСтр("ru = 'Проверка подписания, созданной подписи и расшифровки не могут быть выполнены.'"); + Иначе + ОписаниеОшибки = ""; + КонецЕсли; + УстановитьЭлемент(ЭтотОбъект, "НаличиеСертификата", Ложь, ОписаниеОшибки); + + // Если не нашли сертификат в хранилище сертификатов, проверки прекращаются. + Если Не ПустаяСтрока(ОписаниеОшибки) Тогда + Возврат; + КонецЕсли; + + // Проверка данных сертификата. + МодульСервисКриптографииКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("СервисКриптографииКлиент"); + МодульСервисКриптографииКлиент.ПроверитьСертификат(Новый ОписаниеОповещения( + "ПроверитьНаСторонеКлиентаПослеПроверкиСертификатаВМоделиСервиса", ЭтотОбъект, Контекст), + Результат.Сертификат.Сертификат); + +КонецПроцедуры + // Продолжение процедуры ПроверитьНаСторонеКлиента. &НаКлиенте Процедура ПроверитьНаСторонеКлиентаПослеСозданияЛюбогоМенеджераКриптографии(Результат, Контекст) Экспорт @@ -503,6 +565,27 @@ КонецПроцедуры +// Продолжение процедуры ПроверитьНаСторонеКлиента. +&НаКлиенте +Процедура ПроверитьНаСторонеКлиентаПослеПроверкиСертификатаВМоделиСервиса(Результат, Контекст) Экспорт + + Если Результат.Выполнено И Результат.Действителен Тогда + ОписаниеОшибки = ""; + Иначе + ОписаниеОшибки = Результат.ИнформацияОбОшибке.Описание; + КонецЕсли; + УстановитьЭлемент(ЭтотОбъект, "ДанныеСертификата", Ложь, ОписаниеОшибки, Истина); + + // Наличие программы + Если ЗначениеЗаполнено(Программа) Тогда + ПроверитьНаСторонеКлиентаВМоделиСервиса("СервисКриптографии", Контекст); + Иначе + ОписаниеОшибки = НСтр("ru = 'Программа для использования закрытого ключа не указана в сертификате.'"); + ПроверитьНаСторонеКлиентаПослеСозданияМенеджераКриптографии(ОписаниеОшибки, Контекст); + КонецЕсли; + +КонецПроцедуры + // Продолжение процедуры ПроверитьНаСторонеКлиента. &НаКлиенте Процедура ПроверитьНаСторонеКлиентаПослеСозданияМенеджераКриптографии(Результат, Контекст) Экспорт @@ -538,6 +621,40 @@ КонецПроцедуры +// Продолжение процедуры ПроверитьНаСторонеКлиента. +&НаКлиенте +Процедура ПроверитьНаСторонеКлиентаВМоделиСервиса(Результат, Контекст) Экспорт + + Контекст.Вставить("МенеджерКриптографии", Неопределено); + + Если ТипЗнч(Результат) = Тип("Строка") И Результат = "СервисКриптографии" Тогда + Контекст.МенеджерКриптографии = Результат; + ОписаниеОшибки = ""; + Иначе + ОписаниеОшибки = Результат + Символы.ПС + Символы.ПС + + НСтр("ru = 'Проверка подписания, созданной подписи, шифрования и + |расшифровки не могут быть выполнены.'"); + КонецЕсли; + УстановитьЭлемент(ЭтотОбъект, "НаличиеПрограммы", Ложь, ОписаниеОшибки, Истина); + + Если Контекст.МенеджерКриптографии = Неопределено Тогда + ВыполнитьОбработкуОповещения(Контекст.Оповещение); + Возврат; + КонецЕсли; + + // Подписание. + Если ПроверкиНаКлиенте.НаличиеСертификата Тогда + МодульСервисКриптографииКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("СервисКриптографииКлиент"); + МодульСервисКриптографииКлиент.Подписать(Новый ОписаниеОповещения( + "ПроверитьНаСторонеКлиентаПослеПодписанияВМоделиСервиса", ЭтотОбъект, Контекст, + "ПроверитьНаСторонеКлиентаПослеОшибкиПодписания", ЭтотОбъект), + Контекст.ДанныеСертификата, Контекст.ДанныеСертификата); + Иначе + ПроверитьНаСторонеКлиентаПослеПодписания(Null, Контекст); + КонецЕсли; + +КонецПроцедуры + // Продолжение процедуры ПроверитьНаСторонеКлиента. &НаКлиенте Процедура ПроверитьНаСторонеКлиентаПослеОшибкиПодписания(ИнформацияОбОшибке, СтандартнаяОбработка, Контекст) Экспорт @@ -576,6 +693,37 @@ КонецПроцедуры +// Продолжение процедуры ПроверитьНаСторонеКлиента. +&НаКлиенте +Процедура ПроверитьНаСторонеКлиентаПослеПодписанияВМоделиСервиса(ДанныеПодписи, Контекст) Экспорт + + Если ТипЗнч(ДанныеПодписи) = Тип("Структура") Тогда + Если Не ДанныеПодписи.Выполнено Тогда + ОписаниеОшибки = ДанныеПодписи.ИнформацияОбОшибке.Описание; + Иначе + ОписаниеОшибки = ""; + ДанныеПодписи = ДанныеПодписи.Подпись; + КонецЕсли; + ЭлектроннаяПодписьСлужебныйКлиентСервер.ПустыеДанныеПодписи(ДанныеПодписи, ОписаниеОшибки); + Если Не ЗначениеЗаполнено(ОписаниеОшибки) Тогда + ПарольПринят = Истина; + КонецЕсли; + УстановитьЭлемент(ЭтотОбъект, "Подписание", Ложь, ОписаниеОшибки, Истина); + КонецЕсли; + + // Проверка подписи. + Если ПроверкиНаКлиенте.НаличиеСертификата И Не ЗначениеЗаполнено(ОписаниеОшибки) Тогда + МодульСервисКриптографииКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("СервисКриптографииКлиент"); + МодульСервисКриптографииКлиент.ПроверитьПодпись(Новый ОписаниеОповещения( + "ПроверитьНаСторонеКлиентаПослеПроверкиПодписиВМоделиСервиса", ЭтотОбъект, Контекст, + "ПроверитьНаСторонеКлиентаПослеОшибкиПроверкиПодписи", ЭтотОбъект), + Контекст.ДанныеСертификата, ДанныеПодписи); + Иначе + ПроверитьНаСторонеКлиентаПослеПроверкиПодписиВМоделиСервиса(Null, Контекст); + КонецЕсли; + +КонецПроцедуры + // Продолжение процедуры ПроверитьНаСторонеКлиента. &НаКлиенте Процедура ПроверитьНаСторонеКлиентаПослеОшибкиПроверкиПодписи(ИнформацияОбОшибке, СтандартнаяОбработка, Контекст) Экспорт @@ -605,6 +753,28 @@ Контекст.ДанныеСертификата, Контекст.СертификатКриптографии); КонецПроцедуры + +// Продолжение процедуры ПроверитьНаСторонеКлиента. +&НаКлиенте +Процедура ПроверитьНаСторонеКлиентаПослеПроверкиПодписиВМоделиСервиса(Результат, Контекст) Экспорт + + Если ТипЗнч(Результат) = Тип("Структура") Тогда + Если Не Результат.Выполнено Тогда + ОписаниеОшибки = Результат.ИнформацияОбОшибке.Описание; + Иначе + ОписаниеОшибки = ""; + КонецЕсли; + УстановитьЭлемент(ЭтотОбъект, "ПроверкаПодписи", Ложь, ОписаниеОшибки, Истина); + КонецЕсли; + + // Шифрование. + МодульСервисКриптографииКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("СервисКриптографииКлиент"); + МодульСервисКриптографииКлиент.Зашифровать(Новый ОписаниеОповещения( + "ПроверитьНаСторонеКлиентаПослеШифрованияВМоделиСервиса", ЭтотОбъект, Контекст, + "ПроверитьНаСторонеКлиентаПослеОшибкиШифрования", ЭтотОбъект), + Контекст.ДанныеСертификата, Контекст.ДанныеСертификата); + +КонецПроцедуры // Продолжение процедуры ПроверитьНаСторонеКлиента. &НаКлиенте @@ -638,6 +808,32 @@ КонецПроцедуры +// Продолжение процедуры ПроверитьНаСторонеКлиента. +&НаКлиенте +Процедура ПроверитьНаСторонеКлиентаПослеШифрованияВМоделиСервиса(Результат, Контекст) Экспорт + + Если ТипЗнч(Результат) = Тип("Структура") Тогда + Если Не Результат.Выполнено Тогда + ОписаниеОшибки = Результат.ИнформацияОбОшибке.Описание; + Иначе + ОписаниеОшибки = ""; + КонецЕсли; + КонецЕсли; + УстановитьЭлемент(ЭтотОбъект, "Шифрование", Ложь, ОписаниеОшибки, Истина); + + // Расшифровка. + Если ПроверкиНаКлиенте.НаличиеСертификата И Не ЗначениеЗаполнено(ОписаниеОшибки) Тогда + МодульСервисКриптографииКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("СервисКриптографииКлиент"); + МодульСервисКриптографииКлиент.Расшифровать(Новый ОписаниеОповещения( + "ПроверитьНаСторонеКлиентаПослеРасшифровкиВМоделиСервиса", ЭтотОбъект, Контекст, + "ПроверитьНаСторонеКлиентаПослеОшибкиРасшифровки", ЭтотОбъект), + Результат.ЗашифрованныеДанные); + Иначе + ПроверитьНаСторонеКлиентаПослеРасшифровкиВМоделиСервиса(Null, Контекст); + КонецЕсли; + +КонецПроцедуры + // Продолжение процедуры ПроверитьНаСторонеКлиента. &НаКлиенте Процедура ПроверитьНаСторонеКлиентаПослеОшибкиРасшифровки(ИнформацияОбОшибке, СтандартнаяОбработка, Контекст) Экспорт @@ -665,6 +861,24 @@ КонецПроцедуры +// Продолжение процедуры ПроверитьНаСторонеКлиента. +&НаКлиенте +Процедура ПроверитьНаСторонеКлиентаПослеРасшифровкиВМоделиСервиса(Результат, Контекст) Экспорт + + Если ТипЗнч(Результат) = Тип("Структура") Тогда + Если Не Результат.Выполнено Тогда + ОписаниеОшибки = Результат.ИнформацияОбОшибке.Описание; + Иначе + ОписаниеОшибки = ""; + КонецЕсли; + ЭлектроннаяПодписьСлужебныйКлиентСервер.ПустыеРасшифрованныеДанные(Результат.РасшифрованныеДанные, ОписаниеОшибки); + УстановитьЭлемент(ЭтотОбъект, "Расшифровка", Ложь, ОписаниеОшибки, Истина); + КонецЕсли; + + ПроверитьНаСторонеКлиентаДополнительныеПроверки(Контекст); + +КонецПроцедуры + // Продолжение процедуры ПроверитьНаСторонеКлиента. &НаКлиенте Процедура ПроверитьНаСторонеКлиентаДополнительныеПроверки(Контекст) @@ -745,7 +959,8 @@ КонецЕсли; // Законный сертификат - Если СертификатКриптографии.Субъект.Свойство("SN") Тогда + Если Не Элементы.ГруппаЗаконныйСертификат.Видимость + Или СертификатКриптографии.Субъект.Свойство("SN") Тогда ОписаниеОшибки = ""; Иначе ОписаниеОшибки = НСтр("ru = 'В описании субъекта сертификата не найдено поле ""SN"".'"); diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПросмотрДанных/Form.form b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПросмотрДанных/Form.form index f5edd72f9..1b3bc9775 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПросмотрДанных/Form.form +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ПросмотрДанных/Form.form @@ -243,7 +243,6 @@ <event>OnCreateAtServer</event> <name>ПриСозданииНаСервере</name> </handlers> - <width>50</width> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoUrl>true</autoUrl> diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/РасшифровкаДанных/Form.form b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/РасшифровкаДанных/Form.form index 40ba5e273..30b96a641 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/РасшифровкаДанных/Form.form +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/РасшифровкаДанных/Form.form @@ -47,7 +47,6 @@ <event>Click</event> <name>ПредставлениеДанныхНажатие</name> </handlers> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <hyperlink>true</hyperlink> </extInfo> @@ -84,136 +83,6 @@ <items xsi:type="form:FormGroup"> <name>ГруппаРасшифровка</name> <id>378</id> - <items xsi:type="form:FormGroup"> - <name>ГруппаЗаголовкиПолей</name> - <id>425</id> - <items xsi:type="form:Decoration"> - <name>СертификатЗаголовок</name> - <id>427</id> - <title> - <key>ru</key> - <value>Сертификат:</value> - - true - true - - true - - - СертификатЗаголовокРасширеннаяПодсказка - 429 - Label - true - true - - Left - - - - СертификатЗаголовокКонтекстноеМеню - 428 - true - - Label - true - true - - Left - - - - ПарольЗаголовок - 430 - - <key>ru</key> - <value>Пароль:</value> - - true - true - - true - - - ПарольЗаголовокРасширеннаяПодсказка - 432 - Label - true - true - - Left - - - - ПарольЗаголовокКонтекстноеМеню - 431 - true - - Label - true - true - - Left - - - - ВертикальныйОтступ - 435 - true - true - - true - - - ВертикальныйОтступРасширеннаяПодсказка - 437 - Label - true - true - - Left - - - - ВертикальныйОтступКонтекстноеМеню - 436 - true - - Label - true - true - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа заголовки полей</value> - - - ГруппаЗаголовкиПолейРасширеннаяПодсказка - 426 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - ГруппаПоля 433 @@ -228,7 +97,6 @@ Сертификат - None OnChange СертификатПриИзменении @@ -300,7 +168,6 @@ Пароль - None OnChange ПарольПриИзменении @@ -447,7 +314,6 @@ true Label - true true Style.ПоясняющийТекст @@ -746,7 +612,6 @@ OnCreateAtServer ПриСозданииНаСервере - 48 LockOwner true true @@ -1116,6 +981,23 @@ true + + ВыполнятьВМоделиСервиса + + <key>ru</key> + <value>Выполнять в модели сервиса</value> + + 22 + + Boolean + + + true + + + true + + Расшифровать diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаВыбора/Form.form b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаВыбора/Form.form index f103feeb2..c5dc4032d 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаВыбора/Form.form +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаВыбора/Form.form @@ -481,7 +481,6 @@ </handlers> <excludedCommands>Copy</excludedCommands> <excludedCommands>Delete</excludedCommands> - <width>70</width> <windowOpeningMode>DontBlock</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoTitle>true</autoTitle> diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Form.form index 994a2c44e..566af9690 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Form.form @@ -213,6 +213,7 @@ <searchOnInput>Auto</searchOnInput> <initialListView>Auto</initialListView> <horizontalStretch>true</horizontalStretch> + <verticalStretch>true</verticalStretch> <enableStartDrag>true</enableStartDrag> <enableDrag>true</enableDrag> <searchStringLocation>None</searchStringLocation> @@ -339,244 +340,6 @@ <items xsi:type="form:FormGroup"> <name>ГоризонтальнаяГруппа1</name> <id>210</id> - <items xsi:type="form:FormGroup"> - <name>ЗаголовкиПолей</name> - <id>199</id> - <items xsi:type="form:FormGroup"> - <name>ЗаголовкиАвтоПолейИзДанныхСертификата</name> - <id>217</id> - <items xsi:type="form:Decoration"> - <name>ФамилияЗаголовок</name> - <id>207</id> - <title> - <key>ru</key> - <value>Фамилия:</value> - - true - true - - true - - - ФамилияЗаголовокРасширеннаяПодсказка - 209 - Label - true - true - - Left - - - - ФамилияЗаголовокКонтекстноеМеню - 208 - true - - Label - true - true - - Left - - - - ФирмаЗаголовок - 212 - - <key>ru</key> - <value>Фирма:</value> - - true - true - - true - - - ФирмаЗаголовокРасширеннаяПодсказка - 214 - Label - true - true - - Left - - - - ФирмаЗаголовокКонтекстноеМеню - 213 - true - - Label - true - true - - Left - - - true - true - - true - - - <key>ru</key> - <value>Заголовки авто полей из данных сертификата</value> - - - ЗаголовкиАвтоПолейИзДанныхСертификатаРасширеннаяПодсказка - 218 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - НаименованиеЗаголовок - 201 - - <key>ru</key> - <value>Представление:</value> - - true - true - - true - - - НаименованиеЗаголовокРасширеннаяПодсказка - 203 - Label - true - true - - Left - - - - НаименованиеЗаголовокКонтекстноеМеню - 202 - true - - Label - true - true - - Left - - - - ОрганизацияЗаголовок - 223 - - <key>ru</key> - <value>Организация:</value> - - true - true - - true - - - ОрганизацияЗаголовокРасширеннаяПодсказка - 225 - Label - true - true - - Left - - - - ОрганизацияЗаголовокКонтекстноеМеню - 224 - true - - Label - true - true - - Left - - - - ПользовательЗаголовок - 226 - - <key>ru</key> - <value>Пользователь:</value> - - true - true - - true - - - ПользовательЗаголовокРасширеннаяПодсказка - 228 - Label - true - true - - Left - - - - ПользовательЗаголовокКонтекстноеМеню - 227 - true - - Label - true - true - - Left - - - true - true - - true - - - <key>ru</key> - <value>Заголовки полей</value> - - - ru - Заголовки полей - - - ЗаголовкиПолейРасширеннаяПодсказка - 200 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - Поля 215 @@ -584,137 +347,22 @@ АвтоПоляИзДанныхСертификата 193 - ВертикальнаяГруппа1 - 197 - - ГоризонтальнаяГруппа3 - 189 - - Фамилия - 174 - true - true - - true - - - Объект.Фамилия - - None - - ФамилияРасширеннаяПодсказка - 176 - Label - true - true - - Left - - - - ФамилияКонтекстноеМеню - 175 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - - Имя - 177 - true - true - - true - - - Объект.Имя - - - ИмяРасширеннаяПодсказка - 179 - Label - true - true - - Left - - - - ИмяКонтекстноеМеню - 178 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Горизонтальная группа 3</value> - - - ГоризонтальнаяГруппа3РасширеннаяПодсказка - 190 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - + ГоризонтальнаяГруппа2 + 189 - Фирма - 186 + Фамилия + 174 true true true - Объект.Фирма + Объект.Фамилия - None - ФирмаРасширеннаяПодсказка - 188 + ФамилияРасширеннаяПодсказка + 176 Label true true @@ -723,8 +371,8 @@ - ФирмаКонтекстноеМеню - 187 + ФамилияКонтекстноеМеню + 175 true InputField @@ -733,8 +381,10 @@ Left true + 16 true true + false true true true @@ -742,38 +392,49 @@ Normal - true - true - - true - - - <key>ru</key> - <value>Вертикальная группа 1</value> - - - ВертикальнаяГруппа1РасширеннаяПодсказка - 198 - Label - true - true - - Left + + Имя + 177 + true + true + + true + + + Объект.Имя + + + ИмяРасширеннаяПодсказка + 179 + Label + true + true + + Left + + + + ИмяКонтекстноеМеню + 178 + true + + InputField + Enter + true + Left + true + + 16 + true + true + false + true + true + true + true + Normal - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ВертикальнаяГруппа2 - 191 + Отчество 180 @@ -806,8 +467,84 @@ Left true + 22 true true + false + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Горизонтальная группа 2</value> + + + ГоризонтальнаяГруппа2РасширеннаяПодсказка + 190 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ГоризонтальнаяГруппа3 + 197 + + Фирма + 186 + true + true + + true + + + Объект.Фирма + + + ФирмаРасширеннаяПодсказка + 188 + Label + true + true + + Left + + + + ФирмаКонтекстноеМеню + 187 + true + + InputField + Enter + true + Left + true + + 37 + true + true + false true true true @@ -847,6 +584,7 @@ Left true + 20 true true true @@ -863,11 +601,11 @@ <key>ru</key> - <value>Вертикальная группа 2</value> + <value>Вертикальная группа 3</value> - ВертикальнаяГруппа2РасширеннаяПодсказка - 192 + ГоризонтальнаяГруппа3РасширеннаяПодсказка + 198 Label true true @@ -877,7 +615,6 @@ UsualGroup - Vertical Auto true true @@ -906,6 +643,7 @@ UsualGroup + Vertical Auto true true @@ -925,7 +663,6 @@ Объект.Description true - None Button НаименованиеРасширеннаяПодсказка @@ -963,8 +700,10 @@ Left true + 37 true true + false true true true @@ -983,7 +722,6 @@ Объект.Организация - None ОрганизацияРасширеннаяПодсказка 170 @@ -1005,7 +743,7 @@ Left true - 35 + 37 true true false @@ -1031,7 +769,6 @@ Объект.Пользователь - None ПользовательРасширеннаяПодсказка 173 @@ -1053,7 +790,7 @@ Left true - 35 + 37 true true false @@ -1175,10 +912,7 @@ ru Горизонтальная группа 1 - - ru - Горизонтальная группа 1 - + false ГоризонтальнаяГруппа1РасширеннаяПодсказка 211 @@ -1584,7 +1318,6 @@ FillCheckProcessingAtServer ОбработкаПроверкиЗаполненияНаСервере - 72 LockOwner true true @@ -1708,6 +1441,23 @@ + + ЕстьОрганизации + + <key>ru</key> + <value>Есть организации</value> + + 7 + + Boolean + + + true + + + true + + СертификатОтозван diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Help/ru.html b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Help/ru.html index 2cf393687..1c9a7bdab 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Help/ru.html +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Help/ru.html @@ -9,7 +9,7 @@ <ul><li><strong>Фамилия, Имя, Отчество</strong>; </li><li><strong>Фирма</strong>; </li><li><strong>Должность</strong>;</li></ul></li><li><strong>Представление</strong> - полное наименование сертификата (заполняется автоматически); -<ul><li><strong>Организация</strong> - выберите из <a href="Catalog.Организации/Help">списка</a> <a href="Catalog.Организации.Form.ФормаЭлемента/Help">организацию</a>, которой выдан сертификат; +<ul><li><strong>Организация</strong> - выберите из списка организацию, которой выдан сертификат; </li><li><strong>Пользователь</strong> - выберите из <a href="Catalog.Пользователи/Help">списка</a> пользователя - владельца сертификата; </li><li><strong>Добавил </strong>- выберите <a href="Catalog.Пользователи.Form.ФормаЭлемента/Help">пользователя</a>, который добавил сертификат в список.</li></ul></li></ul><h3>Настройки закрытого ключа</h3> <ul><ul><li><strong>Программа</strong> - данные о программе для электронной подписи и шифрования; diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Module.bsl index e3b208561..ae84205b5 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ФормаЭлемента/Module.bsl @@ -11,8 +11,13 @@ Возврат; КонецЕсли; + ЕстьОрганизации = Не Метаданные.ОпределяемыеТипы.Организация.Тип.СодержитТип(Тип("Строка")); ПриСозданииНаСервереПриЧтенииНаСервере(); + Если Элементы.АвтоПоляИзДанныхСертификата.Видимость Тогда + СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(ЭтотОбъект, "НестандартныйСертификат"); + КонецЕсли; + КонецПроцедуры &НаКлиенте @@ -91,16 +96,12 @@ Показать = Не Элементы.ФормаПоказатьАвтозаполняемыеРеквизиты.Пометка; Элементы.ФормаПоказатьАвтозаполняемыеРеквизиты.Пометка = Показать; - Элементы.ЗаголовкиАвтоПолейИзДанныхСертификата.Видимость = Показать; Элементы.АвтоПоляИзДанныхСертификата.Видимость = Показать; - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда - Элементы.ОрганизацияЗаголовок.Видимость = Показать; + Если ЕстьОрганизации Тогда Элементы.Организация.Видимость = Показать; КонецЕсли; - - КонецПроцедуры &НаКлиенте @@ -189,8 +190,11 @@ Элементы.ФормаПроверитьСертификат.Доступность = Ложь; Элементы.ФормаСохранитьДанныеСертификатаВФайл.Доступность = Ложь; Элементы.АвтоПоляИзДанныхСертификата.Видимость = Истина; - Элементы.ЗаголовкиАвтоПолейИзДанныхСертификата.Видимость = Истина; Элементы.ФормаПоказатьАвтозаполняемыеРеквизиты.Пометка = Истина; + Если ЗначениеЗаполнено(ДвоичныеДанныеСертификата) Тогда + // Поддержка отображения основных свойств нестандартных сертификатов (система iBank2). + ЭлектроннаяПодписьКлиентСервер.ЗаполнитьОписаниеДанныхСертификата(ОписаниеДанныхСертификата, Объект); + КонецЕсли; КонецЕсли; Элементы.ФормаСертификатОтозван.Пометка = Объект.Отозван; @@ -214,22 +218,8 @@ КонецЕсли; КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда - МодульОрганизацииСлужебный = ОбщегоНазначения.ОбщийМодуль("ОрганизацииСлужебный"); - ОрганизацияПоУмолчанию = МодульОрганизацииСлужебный.ОрганизацияПоУмолчанию(); - - Если ЗначениеЗаполнено(ОрганизацияПоУмолчанию) - И Объект.Организация = ОрганизацияПоУмолчанию - И Не МодульОрганизацииСлужебный.ИспользуетсяНесколькоОрганизаций() Тогда - - Элементы.ОрганизацияЗаголовок.Видимость = Ложь; - Элементы.Организация.Видимость = Ложь; - КонецЕсли; - КонецЕсли; - Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда - Элементы.ОрганизацияЗаголовок.Видимость = Ложь; - Элементы.Организация.Видимость = Ложь; - КонецЕсли; + ЕстьОрганизации = Не Метаданные.ОпределяемыеТипы.Организация.Тип.СодержитТип(Тип("Строка")); + Элементы.Организация.Видимость = ЕстьОрганизации; Если Не ЗначениеЗаполнено(АдресСертификата) Тогда Возврат; // Сертификат = Неопределено. @@ -276,13 +266,6 @@ Или Не Элементы.Имя.ТолькоПросмотр И Не ЗначениеЗаполнено(Объект.Имя) Или Не Элементы.Отчество.ТолькоПросмотр И Не ЗначениеЗаполнено(Объект.Отчество); - Элементы.НаименованиеЗаголовок.Видимость = Элементы.Наименование.Видимость; - Элементы.ОрганизацияЗаголовок.Видимость = Элементы.Организация.Видимость; - Элементы.ПользовательЗаголовок.Видимость = Элементы.Пользователь.Видимость; - - Элементы.ЗаголовкиАвтоПолейИзДанныхСертификата.Видимость = - Элементы.АвтоПоляИзДанныхСертификата.Видимость; - Элементы.ФормаПоказатьАвтозаполняемыеРеквизиты.Пометка = Элементы.АвтоПоляИзДанныхСертификата.Видимость; diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ШифрованиеДанных/Form.form b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ШифрованиеДанных/Form.form index 40518f1dc..6b4c7adfb 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ШифрованиеДанных/Form.form +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Forms/ШифрованиеДанных/Form.form @@ -47,7 +47,6 @@ <event>Click</event> <name>ПредставлениеДанныхНажатие</name> </handlers> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <hyperlink>true</hyperlink> </extInfo> @@ -1420,6 +1419,23 @@ <common>true</common> </edit> </attributes> + <attributes> + <name>ВыполнятьВМоделиСервиса</name> + <title> + <key>ru</key> + <value>Выполнять в модели сервиса</value> + + 21 + + Boolean + + + true + + + true + + Зашифровать @@ -1525,6 +1541,10 @@ <types>Boolean</types> </valueType> </parameters> + <parameters> + <name>НаборСертификатов</name> + <valueType/> + </parameters> <commandInterface> <navigationPanel/> <commandBar/> diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/ЗаявлениеНаСертификатИндивидуальногоПредпринимателя/Template.mxlx b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/ЗаявлениеНаСертификатИндивидуальногоПредпринимателя/Template.mxlx index 56d481b27..12019b0bd 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/ЗаявлениеНаСертификатИндивидуальногоПредпринимателя/Template.mxlx +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/ЗаявлениеНаСертификатИндивидуальногоПредпринимателя/Template.mxlx @@ -1491,10 +1491,10 @@ <line width="1" gap="false"> <v8ui:style xsi:type="v8ui:SpreadsheetDocumentCellLineType">Double</v8ui:style> </line> - <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Courier New" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Courier New" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> <format> <font>0</font> <width>45</width> diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/ЗаявлениеНаСертификатЮридическогоЛица/Template.mxlx b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/ЗаявлениеНаСертификатЮридическогоЛица/Template.mxlx index b3a871874..23609b4f4 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/ЗаявлениеНаСертификатЮридическогоЛица/Template.mxlx +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/ЗаявлениеНаСертификатЮридическогоЛица/Template.mxlx @@ -1888,10 +1888,10 @@ <line width="1" gap="false"> <v8ui:style xsi:type="v8ui:SpreadsheetDocumentCellLineType">Double</v8ui:style> </line> - <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Courier New" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Courier New" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> <format> <font>0</font> <width>45</width> diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/КомпонентаОбмена/Template.bin b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/КомпонентаОбмена/Template.bin index 19a767e0e..6803a6a32 100644 Binary files a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/КомпонентаОбмена/Template.bin and b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/Templates/КомпонентаОбмена/Template.bin differ diff --git a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/СертификатыКлючейЭлектроннойПодписиИШифрования.mdo b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/СертификатыКлючейЭлектроннойПодписиИШифрования.mdo index ee0beca06..39cc8557f 100644 --- a/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/СертификатыКлючейЭлектроннойПодписиИШифрования.mdo +++ b/SSL/src/Catalogs/СертификатыКлючейЭлектроннойПодписиИШифрования/СертификатыКлючейЭлектроннойПодписиИШифрования.mdo @@ -455,7 +455,7 @@ <value>Организация</value> </synonym> <type> - <types>CatalogRef.Организации</types> + <types>DefinedType.Организация</types> </type> <toolTip> <key>ru</key> diff --git a/SSL/src/Catalogs/СообщенияОбластейДанных/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/СообщенияОбластейДанных/Forms/ФормаЭлемента/Form.form index 2bddcd2a8..3974b7787 100644 --- a/SSL/src/Catalogs/СообщенияОбластейДанных/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/СообщенияОбластейДанных/Forms/ФормаЭлемента/Form.form @@ -159,9 +159,7 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> <height>12</height> - <autoMaxHeight>true</autoMaxHeight> <wrap>true</wrap> <multiLine>true</multiLine> <chooseType>true</chooseType> @@ -278,9 +276,7 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> <height>4</height> - <autoMaxHeight>true</autoMaxHeight> <wrap>true</wrap> <multiLine>true</multiLine> <extendedEdit>true</extendedEdit> diff --git a/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss index e0179a60a..c0e9e682c 100644 --- a/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss +++ b/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss @@ -17,43 +17,6 @@ <userSettingID>88619765-ccb3-46c6-ac52-38e9c992ebd4</userSettingID> </order> <conditionalAppearance> - <item> - <selection/> - <filter> - <item xsi:type="FilterItemComparison"> - <left xsi:type="dcscor:Field">Заблокировано</left> - <comparisonType>Equal</comparisonType> - <right xsi:type="xs:boolean">true</right> - </item> - </filter> - <appearance> - <dcscor:item xsi:type="SettingsParameterValue"> - <dcscor:parameter>ЦветТекста</dcscor:parameter> - <dcscor:value xsi:type="v8ui:Color">style:SpecialTextColor</dcscor:value> - </dcscor:item> - </appearance> - </item> - <item> - <selection/> - <filter> - <item xsi:type="FilterItemComparison"> - <left xsi:type="dcscor:Field">ЭтоБыстроеСообщение</left> - <comparisonType>Equal</comparisonType> - <right xsi:type="xs:boolean">true</right> - </item> - <item xsi:type="FilterItemComparison"> - <left xsi:type="dcscor:Field">Заблокировано</left> - <comparisonType>Equal</comparisonType> - <right xsi:type="xs:boolean">false</right> - </item> - </filter> - <appearance> - <dcscor:item xsi:type="SettingsParameterValue"> - <dcscor:parameter>ЦветТекста</dcscor:parameter> - <dcscor:value xsi:type="v8ui:Color">web:DarkGreen</dcscor:value> - </dcscor:item> - </appearance> - </item> <viewMode>Normal</viewMode> <userSettingID>b75fecce-942b-4aed-abc9-e6a02e460fb3</userSettingID> </conditionalAppearance> diff --git a/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаСписка/Form.form index 3486a61c9..4396307e0 100644 --- a/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаСписка/Form.form @@ -844,6 +844,12 @@ <notDefaultUseAlwaysAttributes xsi:type="form:DataPath"> <segments>Список.Ref</segments> </notDefaultUseAlwaysAttributes> + <notDefaultUseAlwaysAttributes xsi:type="form:DataPath"> + <segments>Список.Заблокировано</segments> + </notDefaultUseAlwaysAttributes> + <notDefaultUseAlwaysAttributes xsi:type="form:DataPath"> + <segments>Список.ЭтоБыстроеСообщение</segments> + </notDefaultUseAlwaysAttributes> <main>true</main> <extInfo xsi:type="form:DynamicListExtInfo"> <queryText>ВЫБРАТЬ diff --git a/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаСписка/Module.bsl index 4e03a24f1..9d983c99f 100644 --- a/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаСписка/Module.bsl @@ -4,6 +4,8 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; @@ -115,6 +117,49 @@ #Область СлужебныеПроцедурыИФункции +&НаСервере +Процедура УстановитьУсловноеОформление() + + УсловноеОформление.Элементы.Очистить(); + + // Оформление заблокированной записи. + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.Список.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Список.Заблокировано"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ПоясняющийОшибкуТекст); + + // Оформление быстрого сообщения. + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.Список.Имя); + + ГруппаЭлементовОтбора = Элемент.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); + ГруппаЭлементовОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ; + + ОтборЭлемента = ГруппаЭлементовОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Список.Заблокировано"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Ложь; + + ОтборЭлемента = ГруппаЭлементовОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Список.ЭтоБыстроеСообщение"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.РезультатУспехЦвет); + +КонецПроцедуры + &НаСервере Процедура УстановитьГруппировкуСписка() diff --git a/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаЭлемента/Form.form index e55d4e448..0682acdc8 100644 --- a/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/СообщенияСистемы/Forms/ФормаЭлемента/Form.form @@ -1,19 +1,142 @@ <?xml version="1.0" encoding="UTF-8"?> <form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:form="http://g5.1c.ru/v8/dt/form"> - <items xsi:type="form:FormField"> - <name>Наименование</name> - <id>1</id> + <items xsi:type="form:FormGroup"> + <name>ГруппаШапка</name> + <id>22</id> + <items xsi:type="form:FormField"> + <name>Наименование</name> + <id>1</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <dataPath xsi:type="form:DataPath"> + <segments>Объект.Description</segments> + </dataPath> + <extendedTooltip> + <name>НаименованиеExtendedTooltip</name> + <id>13</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>НаименованиеКонтекстноеМеню</name> + <id>2</id> + <autoFill>true</autoFill> + </contextMenu> + <type>InputField</type> + <readOnly>true</readOnly> + <editMode>Auto</editMode> + <showInHeader>true</showInHeader> + <headerHorizontalAlign>Left</headerHorizontalAlign> + <showInFooter>true</showInFooter> + <extInfo xsi:type="form:InputFieldExtInfo"> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <wrap>true</wrap> + <chooseType>true</chooseType> + <typeDomainEnabled>true</typeDomainEnabled> + <textEdit>true</textEdit> + <textSize>Normal</textSize> + </extInfo> + </items> + <items xsi:type="form:FormField"> + <name>Отправитель</name> + <id>3</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <dataPath xsi:type="form:DataPath"> + <segments>Объект.Отправитель</segments> + </dataPath> + <extendedTooltip> + <name>ОтправительExtendedTooltip</name> + <id>14</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>ОтправительКонтекстноеМеню</name> + <id>4</id> + <autoFill>true</autoFill> + </contextMenu> + <type>InputField</type> + <readOnly>true</readOnly> + <editMode>Auto</editMode> + <showInHeader>true</showInHeader> + <headerHorizontalAlign>Left</headerHorizontalAlign> + <showInFooter>true</showInFooter> + <extInfo xsi:type="form:InputFieldExtInfo"> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <wrap>true</wrap> + <chooseType>true</chooseType> + <typeDomainEnabled>true</typeDomainEnabled> + <textEdit>true</textEdit> + <textSize>Normal</textSize> + </extInfo> + </items> + <items xsi:type="form:FormField"> + <name>Получатель</name> + <id>5</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <dataPath xsi:type="form:DataPath"> + <segments>Объект.Получатель</segments> + </dataPath> + <extendedTooltip> + <name>ПолучательExtendedTooltip</name> + <id>15</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>ПолучательКонтекстноеМеню</name> + <id>6</id> + <autoFill>true</autoFill> + </contextMenu> + <type>InputField</type> + <readOnly>true</readOnly> + <editMode>Auto</editMode> + <showInHeader>true</showInHeader> + <headerHorizontalAlign>Left</headerHorizontalAlign> + <showInFooter>true</showInFooter> + <extInfo xsi:type="form:InputFieldExtInfo"> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <wrap>true</wrap> + <chooseType>true</chooseType> + <typeDomainEnabled>true</typeDomainEnabled> + <textEdit>true</textEdit> + <textSize>Normal</textSize> + </extInfo> + </items> <visible>true</visible> <enabled>true</enabled> <userVisible> <common>true</common> </userVisible> - <dataPath xsi:type="form:DataPath"> - <segments>Объект.Description</segments> - </dataPath> <extendedTooltip> - <name>НаименованиеExtendedTooltip</name> - <id>13</id> + <name>ГруппаШапкаРасширеннаяПодсказка</name> + <id>23</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -21,109 +144,14 @@ <horizontalAlign>Left</horizontalAlign> </extInfo> </extendedTooltip> - <contextMenu> - <name>НаименованиеКонтекстноеМеню</name> - <id>2</id> - <autoFill>true</autoFill> - </contextMenu> - <type>InputField</type> - <readOnly>true</readOnly> - <editMode>Auto</editMode> - <showInHeader>true</showInHeader> - <headerHorizontalAlign>Left</headerHorizontalAlign> - <showInFooter>true</showInFooter> - <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <wrap>true</wrap> - <chooseType>true</chooseType> - <typeDomainEnabled>true</typeDomainEnabled> - <textEdit>true</textEdit> - <textSize>Normal</textSize> - </extInfo> - </items> - <items xsi:type="form:FormField"> - <name>Отправитель</name> - <id>3</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <dataPath xsi:type="form:DataPath"> - <segments>Объект.Отправитель</segments> - </dataPath> - <extendedTooltip> - <name>ОтправительExtendedTooltip</name> - <id>14</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>ОтправительКонтекстноеМеню</name> - <id>4</id> - <autoFill>true</autoFill> - </contextMenu> - <type>InputField</type> - <readOnly>true</readOnly> - <editMode>Auto</editMode> - <showInHeader>true</showInHeader> - <headerHorizontalAlign>Left</headerHorizontalAlign> - <showInFooter>true</showInFooter> - <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <wrap>true</wrap> - <chooseType>true</chooseType> - <typeDomainEnabled>true</typeDomainEnabled> - <textEdit>true</textEdit> - <textSize>Normal</textSize> - </extInfo> - </items> - <items xsi:type="form:FormField"> - <name>Получатель</name> - <id>5</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <dataPath xsi:type="form:DataPath"> - <segments>Объект.Получатель</segments> - </dataPath> - <extendedTooltip> - <name>ПолучательExtendedTooltip</name> - <id>15</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>ПолучательКонтекстноеМеню</name> - <id>6</id> - <autoFill>true</autoFill> - </contextMenu> - <type>InputField</type> - <readOnly>true</readOnly> - <editMode>Auto</editMode> - <showInHeader>true</showInHeader> - <headerHorizontalAlign>Left</headerHorizontalAlign> - <showInFooter>true</showInFooter> - <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <wrap>true</wrap> - <chooseType>true</chooseType> - <typeDomainEnabled>true</typeDomainEnabled> - <textEdit>true</textEdit> - <textSize>Normal</textSize> + <type>UsualGroup</type> + <extInfo xsi:type="form:UsualGroupExtInfo"> + <group>Vertical</group> + <behavior>Auto</behavior> + <showLeftMargin>true</showLeftMargin> + <united>true</united> + <throughAlign>DontUse</throughAlign> + <currentRowUse>Auto</currentRowUse> </extInfo> </items> <items xsi:type="form:FormField"> @@ -159,9 +187,7 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> <height>12</height> - <autoMaxHeight>true</autoMaxHeight> <wrap>true</wrap> <multiLine>true</multiLine> <chooseType>true</chooseType> @@ -278,7 +304,6 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> <height>4</height> <autoMaxHeight>true</autoMaxHeight> <wrap>true</wrap> diff --git a/SSL/src/Catalogs/СтраныМира/Forms/Классификатор/Form.form b/SSL/src/Catalogs/СтраныМира/Forms/Классификатор/Form.form index 2b26c4f05..9d5170d2e 100644 --- a/SSL/src/Catalogs/СтраныМира/Forms/Классификатор/Form.form +++ b/SSL/src/Catalogs/СтраныМира/Forms/Классификатор/Form.form @@ -231,6 +231,86 @@ <autoCommandBar> <name>КлассификаторКоманднаяПанель</name> <id>19</id> + <items xsi:type="form:Button"> + <name>КлассификаторИзменить</name> + <id>78</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <extendedTooltip> + <name>КлассификаторИзменитьРасширеннаяПодсказка</name> + <id>79</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <commandName>Form.Item.Классификатор.StandardCommand.Change</commandName> + <buttonImportance>Normal</buttonImportance> + <representation>Auto</representation> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <placementArea>UserCmds</placementArea> + <representationInContextMenu>Auto</representationInContextMenu> + </items> + <items xsi:type="form:FormGroup"> + <name>КлассификаторГруппаВывестиСписок</name> + <id>82</id> + <items xsi:type="form:Button"> + <name>КлассификаторВывестиСписок</name> + <id>80</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <extendedTooltip> + <name>КлассификаторВывестиСписокРасширеннаяПодсказка</name> + <id>81</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <commandName>Form.Item.Классификатор.StandardCommand.OutputList</commandName> + <buttonImportance>Normal</buttonImportance> + <representation>Auto</representation> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <placementArea>UserCmds</placementArea> + <representationInContextMenu>Auto</representationInContextMenu> + </items> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <title> + <key>ru</key> + <value>Классификатор группа вывести список</value> + + + ru + Классификатор группа вывести список + + + КлассификаторГруппаВывестиСписокРасширеннаяПодсказка + 83 + Label + true + true + + Left + + + + КлассификаторГруппаПоиск 34 @@ -775,8 +855,6 @@ OnCreateAtServer ПриСозданииНаСервере - 100 - 12 LockOwner true true @@ -977,6 +1055,23 @@ true + + ЕстьПравоРедактироватьСтраны + + <key>ru</key> + <value>Есть право редактировать страны</value> + + 5 + + Boolean + + + true + + + true + + ТекущаяСтрока diff --git a/SSL/src/Catalogs/СтраныМира/Forms/Классификатор/Module.bsl b/SSL/src/Catalogs/СтраныМира/Forms/Классификатор/Module.bsl index bb5ddaefc..18e04b563 100644 --- a/SSL/src/Catalogs/СтраныМира/Forms/Классификатор/Module.bsl +++ b/SSL/src/Catalogs/СтраныМира/Forms/Классификатор/Module.bsl @@ -1,6 +1,5 @@ #Область ОбработчикиСобытийФормы -// &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) @@ -16,6 +15,8 @@ Параметры.Свойство("РежимВыбора", РежимВыбора); Элементы.Классификатор.РежимВыбора = РежимВыбора; + ЗакрыватьПриВыборе = РежимВыбора; + // Служебные реквизиты ПоляКлассификатора = "Код, Наименование, НаименованиеПолное, КодАльфа2, КодАльфа3"; @@ -38,29 +39,56 @@ Если Фильтр.Количество()>0 Тогда Элементы.Классификатор.ТекущаяСтрока = Фильтр[0].ПолучитьИдентификатор(); КонецЕсли; + + Элементы.КлассификаторКонтекстноеМенюИзменить.Видимость = ПравоДоступа("Изменение", Метаданные.Справочники.СтраныМира); + + ЕстьПравоРедактироватьСтраны = ПравоДоступа("Изменение", Метаданные.Справочники.СтраныМира); + Элементы.КлассификаторКонтекстноеМенюИзменить.Видимость = ЕстьПравоРедактироватьСтраны; + Элементы.КлассификаторИзменить.Видимость = ЕстьПравоРедактироватьСтраны; + Элементы.Классификатор.ТолькоПросмотр = НЕ ЕстьПравоРедактироватьСтраны; + КонецПроцедуры #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыКлассификатор -// &НаКлиенте Процедура КлассификаторВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; - Если Не РежимВыбора Тогда - ОткрытьФормуЭлементаКлассификатора(Элемент.ТекущиеДанные); + Если ВыбраннаяСтрока = Неопределено Или Не ЕстьПравоРедактироватьСтраны Тогда Возврат; КонецЕсли; - - Если ТипЗнч(ВыбраннаяСтрока)=Тип("Массив") Тогда - ИдентификаторСтрокиВыбора = ВыбраннаяСтрока[0]; + + Если Не РежимВыбора Тогда + Страна = Классификатор.НайтиПоИдентификатору(ВыбраннаяСтрока); + + Если СтраныНетВСпискеСтран(Страна.Наименование) Тогда + ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Добавить страну ""%1"" из классификатора в список стран мира?'"), + Страна.Наименование); + Оповещение = Новый ОписаниеОповещения("ДобавитьСтрану", ЭтотОбъект, ВыбраннаяСтрока); + ПоказатьВопрос(Оповещение, ТекстВопроса, РежимДиалогаВопрос.ДаНет); + КонецЕсли; Иначе - ИдентификаторСтрокиВыбора = ВыбраннаяСтрока; + Если ТипЗнч(ВыбраннаяСтрока) = Тип("Массив") Тогда + ИдентификаторСтрокиВыбора = ВыбраннаяСтрока[0]; + Иначе + ИдентификаторСтрокиВыбора = ВыбраннаяСтрока; + КонецЕсли; + + ОповеститьОВыбореЭлементаКлассификатора(ИдентификаторСтрокиВыбора); КонецЕсли; - - ОповеститьОВыбореЭлементаКлассификатора(ИдентификаторСтрокиВыбора); +КонецПроцедуры + +&НаКлиенте +Процедура ДобавитьСтрану(Результат, ДополнительныеПараметры) Экспорт + + Если Результат = КодВозвратаДиалога.Да Тогда + ОповеститьОВыбореЭлементаКлассификатора(ДополнительныеПараметры); + КонецЕсли; + КонецПроцедуры &НаКлиенте @@ -68,6 +96,14 @@ ОповеститьОВыбореЭлементаКлассификатора(Значение); КонецПроцедуры +&НаКлиенте +Процедура КлассификаторПередНачаломИзменения(Элемент, Отказ) + Отказ = Истина; + Если ЕстьПравоРедактироватьСтраны Тогда + ОткрытьФормуЭлементаКлассификатора(Элементы.Классификатор.ТекущиеДанные); + КонецЕсли; +КонецПроцедуры + &НаКлиенте Процедура КлассификаторПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа) Отказ = Истина; @@ -78,19 +114,12 @@ Отказ = Истина; КонецПроцедуры -&НаКлиенте -Процедура КлассификаторПередНачаломИзменения(Элемент, Отказ) - Отказ = Истина; - ОткрытьФормуЭлементаКлассификатора(Элементы.Классификатор.ТекущиеДанные); -КонецПроцедуры - #КонецОбласти #Область СлужебныеПроцедурыИФункции -// &НаКлиенте -Процедура ОткрытьФормуЭлементаКлассификатора(ДанныеЗаполнения, ЭтоНовый=Ложь) +Процедура ОткрытьФормуЭлементаКлассификатора(ДанныеЗаполнения, ЭтоНовый = Ложь) Если ДанныеЗаполнения=Неопределено Тогда Возврат; КонецЕсли; @@ -113,7 +142,7 @@ &НаКлиенте Процедура ОповеститьОВыбореЭлементаКлассификатора(ИдентификаторСтрокиВыбора) ВсеДанныеСтроки = Классификатор.НайтиПоИдентификатору(ИдентификаторСтрокиВыбора); - Если ВсеДанныеСтроки<>Неопределено Тогда + Если ВсеДанныеСтроки <> Неопределено Тогда ДанныеСтроки = Новый Структура(ПоляКлассификатора); ЗаполнитьЗначенияСвойств(ДанныеСтроки, ВсеДанныеСтроки); @@ -126,6 +155,12 @@ КонецЕсли; КонецПроцедуры +&НаКлиенте +Процедура ОповеститьОСозданииЭлементов(Ссылка) + ОповеститьОЗаписиНового(Ссылка); + Оповестить("Справочник.СтраныМира.Изменение", Ссылка, ЭтотОбъект); +КонецПроцедуры + &НаСервереБезКонтекста Функция ДанныеВыбораЭлементаКлассификатора(Знач ДанныеСтраны) // Ищем только по коду, так как в классификаторе все коды заданы. @@ -159,10 +194,24 @@ Возврат Данные; КонецФункции -&НаКлиенте -Процедура ОповеститьОСозданииЭлементов(Ссылка) - ОповеститьОЗаписиНового(Ссылка); - Оповестить("Справочник.СтраныМира.Изменение", Ссылка, ЭтотОбъект); -КонецПроцедуры +&НаСервереБезКонтекста +Функция СтраныНетВСпискеСтран(Страна) + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ СтраныМира.Ссылка + |ИЗ Справочник.СтраныМира КАК СтраныМира + |ГДЕ СтраныМира.Наименование = &Наименование"; + + Запрос.УстановитьПараметр("Наименование", Страна); + РезультатЗапроса = Запрос.Выполнить().Выбрать(); + + Если РезультатЗапроса.Следующий() Тогда + Возврат Ложь; + КонецЕсли; + + Возврат Истина; + +КонецФункции #КонецОбласти diff --git a/SSL/src/Catalogs/СтраныМира/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/СтраныМира/Forms/ФормаСписка/Form.form index 4400dde63..cd119116f 100644 --- a/SSL/src/Catalogs/СтраныМира/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/СтраныМира/Forms/ФормаСписка/Form.form @@ -302,6 +302,94 @@ UserCmds Auto + + Создать + 47 + + СписокВыбратьИзКлассификатора + 53 + true + true + + true + + + СписокВыбратьИзКлассификатораРасширеннаяПодсказка + 54 + Label + true + true + + Left + + + Form.Command.ВыбратьИзКлассификатора + Normal + Auto + true + true + UserCmds + Auto + + + СписокСоздать + 55 + + <key>ru</key> + <value>Новую...</value> + + true + true + + true + + + СписокСоздатьРасширеннаяПодсказка + 56 + Label + true + true + + Left + + + Form.Item.Список.StandardCommand.Create + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Создать</value> + + + ru + Создать + + + СоздатьРасширеннаяПодсказка + 48 + Label + true + true + + Left + + + Popup + + Auto + Normal + + СписокКоманды 15 @@ -357,32 +445,7 @@ true UserCmds Auto - - - СписокВыбратьИзКлассификатора - 18 - true - true - - true - - - СписокВыбратьИзКлассификатораExtendedTooltip - 24 - Label - true - true - - Left - - - Form.Command.ВыбратьИзКлассификатора - Normal - Auto - true - true - UserCmds - Auto + InAdditionalSubmenu СписокИзменитьФорму @@ -438,10 +501,6 @@ Left - - BeforeAddRow - СписокПередНачаломДобавления - ChoiceProcessing СписокОбработкаВыбора @@ -594,7 +653,7 @@ OnCreateAtServer ПриСозданииНаСервере - 110 + Create DontBlock true true @@ -704,12 +763,12 @@ ВыбратьИзКлассификатора <key>ru</key> - <value>Выбрать из классификатора</value> + <value>Из классификатора...</value> 1 ru - Выбрать из классификатора + Создать страну выбрав из классификатора стран true diff --git a/SSL/src/Catalogs/СтраныМира/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/СтраныМира/Forms/ФормаСписка/Module.bsl index 6fbb4a9f3..3ad329c1e 100644 --- a/SSL/src/Catalogs/СтраныМира/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/СтраныМира/Forms/ФормаСписка/Module.bsl @@ -19,7 +19,6 @@ КонецЕсли; ТолькоДанныеКлассификатора = Параметры.ТолькоДанныеКлассификатора; - Параметры.Свойство("РежимВыбора", РежимВыбора); // Разрешаем элементы @@ -27,11 +26,7 @@ Элементы.СписокВыбрать.Видимость = РежимВыбора; Элементы.СписокВыбрать.КнопкаПоУмолчанию = РежимВыбора; - РежимВыбораКлассификатораОКСМ = РежимВыбора И Не ТолькоДанныеКлассификатора; - Если МожноДобавлятьВСправочник Тогда - Элементы.СписокВыбратьИзКлассификатора.Видимость = РежимВыбораКлассификатораОКСМ; - КонецЕсли; - Элементы.СписокКлассификатор.Видимость = НЕ РежимВыбораКлассификатораОКСМ; + Элементы.Создать.Видимость = МожноДобавлятьВСправочник; // По флагам определяем режим Если РежимВыбора Тогда @@ -98,23 +93,6 @@ #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыСписок -// - -&НаКлиенте -Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа) - Если Не Копирование Тогда - Отказ = Истина; - ТекстВопроса = НСтр("ru='Есть возможность подобрать страну мира из классификатора. - |Подобрать?'"); - - ОбработчикОповещения = Новый ОписаниеОповещения("ОповещениеВопросОПодбореИзКлассификатора", ЭтотОбъект); - КнопкиВыбора = Новый СписокЗначений(); - КнопкиВыбора.Добавить(КодВозвратаДиалога.Да, "Подобрать"); - КнопкиВыбора.Добавить(КодВозвратаДиалога.Нет, "Создать"); - КнопкиВыбора.Добавить(КодВозвратаДиалога.Отмена, "Отмена"); - ПоказатьВопрос(ОбработчикОповещения, ТекстВопроса, КнопкиВыбора, , КодВозвратаДиалога.Отмена); - КонецЕсли; -КонецПроцедуры &НаКлиенте Процедура СписокОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) @@ -144,6 +122,7 @@ &НаКлиенте Процедура ВыбратьИзКлассификатора(Команда) + // Открываем для выбора ПараметрыОткрытия = Новый Структура; ПараметрыОткрытия.Вставить("РежимВыбора", Истина); @@ -151,7 +130,8 @@ ПараметрыОткрытия.Вставить("ТекущаяСтрока", Элементы.Список.ТекущаяСтрока); ПараметрыОткрытия.Вставить("РежимОткрытияОкна", РежимОткрытияОкна); ПараметрыОткрытия.Вставить("ТекущаяСтрока", Элементы.Список.ТекущаяСтрока); - ОткрытьФорму("Справочник.СтраныМира.Форма.Классификатор", ПараметрыОткрытия, Элементы.Список); + ОткрытьФорму("Справочник.СтраныМира.Форма.Классификатор", ПараметрыОткрытия, Элементы.Список,,,,, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); + КонецПроцедуры #КонецОбласти @@ -211,21 +191,4 @@ ЭлементОтбора.ПравоеЗначение = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка"); КонецПроцедуры -&НаКлиенте -Процедура ОповещениеВопросОПодбореИзКлассификатора(РезультатВопроса, ДополнительныеПараметры) Экспорт - - Если РезультатВопроса=КодВозвратаДиалога.Да Тогда - // Подбор из классификатора - ПараметрыОткрытия = Новый Структура; - ПараметрыОткрытия.Вставить("РежимВыбора", Истина); - ОткрытьФорму("Справочник.СтраныМира.Форма.Классификатор", ПараметрыОткрытия, Элементы.Список); - - ИначеЕсли РезультатВопроса=КодВозвратаДиалога.Нет Тогда - // Добавление нового элемента - ОткрытьФорму("Справочник.СтраныМира.ФормаОбъекта"); - - КонецЕсли; - -КонецПроцедуры - #КонецОбласти diff --git a/SSL/src/Catalogs/СтраныМира/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/СтраныМира/Forms/ФормаЭлемента/Form.form index 8dea8cdf4..976d860ff 100644 --- a/SSL/src/Catalogs/СтраныМира/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/СтраныМира/Forms/ФормаЭлемента/Form.form @@ -1,7 +1,7 @@ - Группа + ГруппаНаименование 11 Наименование @@ -89,7 +89,7 @@ true - ГруппаExtendedTooltip + ГруппаНаименованиеРасширеннаяПодсказка 13 Label true @@ -102,7 +102,6 @@ Auto true - true Auto Auto @@ -243,14 +242,6 @@ true - - <key>ru</key> - <value>Группа альфа кодов</value> - - - ru - Группа альфа кодов - ГруппаАльфаКодовExtendedTooltip 17 @@ -280,7 +271,6 @@ OnCreateAtServer ПриСозданииНаСервере - 50 LockOwner true true diff --git a/SSL/src/Catalogs/СтраныМира/Help/ru.html b/SSL/src/Catalogs/СтраныМира/Help/ru.html index fccf43b58..ca6c8a19f 100644 --- a/SSL/src/Catalogs/СтраныМира/Help/ru.html +++ b/SSL/src/Catalogs/СтраныМира/Help/ru.html @@ -10,17 +10,17 @@ SUP {

      Предназначен для хранения информации о странах мира, таможенных союзах стран, либо регионах или частях стран. Данные справочника используются, например, при указании страны адреса контактной информации, страны происхождения товара.

      Открывается по команде Страны мира раздела Справочники. В списке можно хранить только несколько необходимых для работы стран.

      -

      Может быть заполнен как вручную, так и по данным общероссийского классификатора стран мира (ОКСМ). Классификатор стран мира открывается по соответствующей команде.

      +

      Может быть заполнен как вручную, так и по данным общероссийского классификатора стран мира (ОКСМ). Классификатор стран мира открывается по соответствующей команде меню Еще.

      В списке выводится информация:

      • Поля Наименование и Полное наименование предназначены для хранения соответственно краткого и полного официального наименования страны мира. Для представления страны, в том числе и при печати, будет использовано по умолчанию краткое наименование. Отсутствие в позиции списка полного наименования страны мира означает его совпадение с кратким наименованием.
      • Поле Код содержит трёхзначный цифровой код страны мира, позволяющий однозначно идентифицировать страну согласно ОКСМ. Для стран, таможенных союзов и прочих данных, не относящихся к классификатору стран (например, Евросоюз), в это поле рекомендуется вводить "--".
      • Поля Код Альфа-2 и Код Альфа-3 содержат двухзначный (альфа-2) и трёхзначный (альфа-3) коды для идентификации государств и зависимых территорий, основных административных образований внутри государств, согласно ГОСТ 7.67 и ISO 3166.

      Для удобства работы со списком можно добавлять страны в список из классификатора по мере необходимости. В случае необходимости в списке можно отредактировать страну, если данные о ней изменились, и классификатор еще не обновляется.

      -

      Ввод вручную

      +

      Добавление страны из классификатора

      +
      • Нажмите Создать - Из классификатора.

      Ввод вручную

      В некоторых случаях необходимо ввести какую-нибудь область, или содружество стран, например, Евросоюз.

      -
      • Для того чтобы добавить новую страну в список стран, нажмите Создать. -
      • Не рекомендуется вводить вручную страны, имеющиеся в классификаторе, так как ручной ввод увеличивает возможность ошибок. -
      • Программа предлагает выбрать страну из классификатора. Подтвердите свой выбор, в ответ на вопрос программы нажав кнопку Да. -
      • Для того чтобы ввести страну вручную, например, "Евросоюз", нажмите  Нет. Заполните необходимые поля. Вместо цифрового кода автоматически предлагается значение "--", так как это значение используется в печатных формах для стран, отсутствующих в классификаторе (см., например, Письмо Минфина России от 10.02.12 № 03-07-09/06).

      См. также:

      +
      • Не рекомендуется вводить вручную страны, имеющиеся в классификаторе, так как ручной ввод увеличивает возможность ошибок. +
      • Для того чтобы добавить новую страну в список стран, нажмите Создать - Новую. +
      • Заполните необходимые поля. Вместо цифрового кода автоматически предлагается значение "--", так как это значение используется в печатных формах для стран, отсутствующих в классификаторе (см., например, Письмо Минфина России от 10.02.12 № 03-07-09/06).

      См. также:

      \ No newline at end of file diff --git a/SSL/src/Catalogs/СтраныМира/ManagerModule.bsl b/SSL/src/Catalogs/СтраныМира/ManagerModule.bsl index 940e6fd07..a800118dc 100644 --- a/SSL/src/Catalogs/СтраныМира/ManagerModule.bsl +++ b/SSL/src/Catalogs/СтраныМира/ManagerModule.bsl @@ -1,9 +1,34 @@ +#Область ПрограммныйИнтерфейс + +//////////////////////////////////////////////////////////////////////////////// +// Групповое изменение объектов. + +#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда + +// Возвращает реквизиты объекта, которые не рекомендуется редактировать +// с помощью обработки группового изменения реквизитов. +// +// Возвращаемое значение: +// Массив - список имен реквизитов объекта. +Функция РеквизитыНеРедактируемыеВГрупповойОбработке() Экспорт + + Результат = Новый Массив; + Результат.Добавить("*"); + Возврат Результат; + +КонецФункции + +#КонецЕсли + +#КонецОбласти + + #Область ОбработчикиСобытий Процедура ОбработкаПолученияДанныхВыбора(ДанныеВыбора, Параметры, СтандартнаяОбработка) #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда - + Если Не СтандартнаяОбработка Тогда // Обрабатывается в другом месте. Возврат; @@ -163,30 +188,10 @@ КонецЕсли; КонецЦикла; -#КонецЕсли - + #КонецЕсли + КонецПроцедуры -#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда - -//////////////////////////////////////////////////////////////////////////////// -// Групповое изменение объектов. - -// Возвращает реквизиты объекта, которые не рекомендуется редактировать -// с помощью обработки группового изменения реквизитов. -// -// Возвращаемое значение: -// Массив - список имен реквизитов объекта. -Функция РеквизитыНеРедактируемыеВГрупповойОбработке() Экспорт - - Результат = Новый Массив; - Результат.Добавить("*"); - Возврат Результат; - -КонецФункции - -#КонецЕсли - #КонецОбласти #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда @@ -211,8 +216,11 @@ // Функция ДанныеСтраныМира(Знач КодСтраны = Неопределено, Знач Наименование = Неопределено) Экспорт + Результат = Неопределено; + + Если КодСтраны=Неопределено И Наименование=Неопределено Тогда - Возврат Неопределено; + Возврат Результат; КонецЕсли; НормализованныйКод = КодСтраныМира(КодСтраны); @@ -232,16 +240,16 @@ Результат = Новый Структура("Ссылка, Код, Наименование, НаименованиеПолное, КодАльфа2, КодАльфа3"); Запрос = Новый Запрос(" - |ВЫБРАТЬ ПЕРВЫЕ 1 - | Ссылка, Код, Наименование, НаименованиеПолное, КодАльфа2, КодАльфа3 - |ИЗ - | Справочник.СтраныМира - |ГДЕ - | " + УсловиеПоиска + " - |УПОРЯДОЧИТЬ ПО - | Наименование - |"); - + |ВЫБРАТЬ ПЕРВЫЕ 1 + | Ссылка, Код, Наименование, НаименованиеПолное, КодАльфа2, КодАльфа3 + |ИЗ + | Справочник.СтраныМира + |ГДЕ + | " + УсловиеПоиска + " + |УПОРЯДОЧИТЬ ПО + | Наименование + |"); + Выборка = Запрос.Выполнить().Выбрать(); Если Выборка.Следующий() Тогда ЗаполнитьЗначенияСвойств(Результат, Выборка); @@ -250,7 +258,7 @@ ДанныеКлассификатора = ТаблицаКлассификатора(); СтрокиДанных = ДанныеКлассификатора.НайтиСтроки(ФильтрКлассификатора); Если СтрокиДанных.Количество()=0 Тогда - Результат = Неопределено + Результат = Неопределено; Иначе ЗаполнитьЗначенияСвойств(Результат, СтрокиДанных[0]); КонецЕсли; @@ -273,8 +281,6 @@ // * НаименованиеПолное - Строка - реквизит найденной страны. // * КодАльфа2 - Строка - реквизит найденной страны. // * КодАльфа3 - Строка - реквизит найденной страны. -// * Ссылка - СправочникаСсылка.СтраныМира - ссылка на -// элемент справочника страны мира, если он существует. // Неопределено - страна не найдена. // Функция ДанныеКлассификатораСтранМираПоКоду(Знач Код, ТипКода = "КодСтраны") Экспорт @@ -291,12 +297,8 @@ Если СтрокаДанных=Неопределено Тогда Результат = Неопределено; Иначе - Результат = Новый Структура("Код, Наименование, НаименованиеПолное, КодАльфа2, КодАльфа3, Ссылка"); + Результат = Новый Структура("Код, Наименование, НаименованиеПолное, КодАльфа2, КодАльфа3"); ЗаполнитьЗначенияСвойств(Результат, СтрокаДанных); - Страна = ДанныеСтраныМира(Результат.Код); - Если Страна <> Неопределено Тогда - Результат.Ссылка = Страна.Ссылка; - КонецЕсли; КонецЕсли; Возврат Результат; @@ -329,64 +331,6 @@ Возврат Результат; КонецФункции -// Обновляет справочник стран мира по данным макета - классификатора. -// Идентификация существующих элементов в справочнике выполняется по полю Код. -// -// Параметры: -// Добавлять - Булево - если Истина, то добавляются страны, которые есть в классификаторе, -// но отсутствуют в справочнике стран мира. -// -Процедура ОбновитьСтраныМираПоКлассификатору(Знач Добавлять = Ложь) Экспорт - ВсеОшибки = ""; - - Фильтр = Новый Структура("Код"); - - // Сравнивать в запросе нельзя из-за возможной регистронезависимости базы данных. - Для Каждого СтрокаКлассификатора Из ТаблицаКлассификатора() Цикл - Фильтр.Код = СтрокаКлассификатора.Код; - Выборка = Справочники.СтраныМира.Выбрать(,, Фильтр); - СтранаНайдена = Выборка.Следующий(); - Если Не СтранаНайдена И Добавлять Тогда - // Добавление страны - Страна = Справочники.СтраныМира.СоздатьЭлемент(); - ИначеЕсли СтранаНайдена И ( - Выборка.Наименование <> СтрокаКлассификатора.Наименование - Или Выборка.КодАльфа2 <> СтрокаКлассификатора.КодАльфа2 - Или Выборка.КодАльфа3 <> СтрокаКлассификатора.КодАльфа3 - Или Выборка.НаименованиеПолное <> СтрокаКлассификатора.НаименованиеПолное) Тогда - // Изменение страны - Страна = Выборка.ПолучитьОбъект(); - Иначе - Продолжить; - КонецЕсли; - - НачатьТранзакцию(); - Попытка - Если Не Страна.ЭтоНовый() Тогда - ЗаблокироватьДанныеДляРедактирования(Страна.Ссылка); - КонецЕсли; - ЗаполнитьЗначенияСвойств(Страна, СтрокаКлассификатора, "Код, Наименование, КодАльфа2, КодАльфа3, НаименованиеПолное"); - Страна.ДополнительныеСвойства.Вставить("НеПроверятьУникальность"); - Страна.Записать(); - ЗафиксироватьТранзакцию(); - Исключение - Инфо = ИнформацияОбОшибке(); - ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='Ошибка записи страны мира %1 (код %2) при обновлении классификатора, %3'"), - Выборка.Код, Выборка.Наименование, КраткоеПредставлениеОшибки(Инфо)); - ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), - УровеньЖурналаРегистрации.Ошибка,,, - ТекстОшибки + Символы.ПС + ПодробноеПредставлениеОшибки(Инфо)); - ВсеОшибки = ВсеОшибки + Символы.ПС + ТекстОшибки; - ОтменитьТранзакцию(); - КонецПопытки; - - КонецЦикла; - - Если Не ПустаяСтрока(ВсеОшибки) Тогда - ВызватьИсключение СокрЛП(ВсеОшибки); - КонецЕсли; -КонецПроцедуры - // Создает или возвращает существующую ссылку по данным классификатора. // // Параметры: @@ -421,12 +365,31 @@ Возврат Результат; КонецФункции +// Возвращает полные данные ОКСМ классификатора. +// +// Возвращаемое значение: +// ТаблицаЗначений - данные классификатора с колонками: +// * Код - Строка - данные страны. +// * Наименование - Строка - данные страны. +// * НаименованиеПолное - Строка - данные страны. +// * КодАльфа2 - Строка - данные страны. +// * КодАльфа3 - Строка - данные страны. +// +// Таблица значений проиндексирована по полям "Код", "Наименование". +// +Функция ТаблицаКлассификатора() Экспорт + Макет = Справочники.СтраныМира.ПолучитьМакет("Классификатор"); + + Чтение = Новый ЧтениеXML; + Чтение.УстановитьСтроку(Макет.ПолучитьТекст()); + + Возврат СериализаторXDTO.ПрочитатьXML(Чтение); +КонецФункции + // Возвращает флаг возможности добавления и изменения элементов. // Функция ЕстьПравоДобавления() Экспорт - Возврат ПравоДоступа("Добавление", Метаданные.Справочники.СтраныМира); - КонецФункции // Возвращает поля поиска в порядке предпочтения для справочника стран мира. @@ -474,27 +437,6 @@ Возврат Новый Структура("СписокПолей, ИменаПолейСтрокой", Результат, Сред(ВсеИменаСтрокой, 2)); КонецФункции -// Возвращает полные данные ОКСМ классификатора. -// -// Возвращаемое значение: -// ТаблицаЗначений - данные классификатора с колонками: -// * Код - Строка - данные страны. -// * Наименование - Строка - данные страны. -// * НаименованиеПолное - Строка - данные страны. -// * КодАльфа2 - Строка - данные страны. -// * КодАльфа3 - Строка - данные страны. -// -// Таблица значений проиндексирована по полям "Код", "Наименование". -// -Функция ТаблицаКлассификатора() Экспорт - Макет = Справочники.СтраныМира.ПолучитьМакет("Классификатор"); - - Чтение = Новый ЧтениеXML; - Чтение.УстановитьСтроку(Макет.ПолучитьТекст()); - - Возврат СериализаторXDTO.ПрочитатьXML(Чтение); -КонецФункции - #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -530,6 +472,115 @@ Возврат Результат; КонецФункции +#Область ОбновлениеИнформационнойБазы + +// Регистрирует к обработке страны мира. +// +Процедура ЗаполнитьСписокСтранКОбработке(Параметры) Экспорт + + ПредыдущиеЗначенияОКСМ = Новый ТаблицаЗначений; + ПредыдущиеЗначенияОКСМ.Колонки.Добавить("Код", ОбщегоНазначения.ОписаниеТипаСтрока(3)); + ПредыдущиеЗначенияОКСМ.Колонки.Добавить("Наименование", ОбщегоНазначения.ОписаниеТипаСтрока(60)); + ПредыдущиеЗначенияОКСМ.Колонки.Добавить("КодАльфа2", ОбщегоНазначения.ОписаниеТипаСтрока(2)); + ПредыдущиеЗначенияОКСМ.Колонки.Добавить("КодАльфа3", ОбщегоНазначения.ОписаниеТипаСтрока(3)); + ПредыдущиеЗначенияОКСМ.Колонки.Добавить("НаименованиеПолное", ОбщегоНазначения.ОписаниеТипаСтрока(100)); + + НоваяСтрока = ПредыдущиеЗначенияОКСМ.Добавить(); + НоваяСтрока.Код = "203"; + НоваяСтрока.Наименование = "ЧЕШСКАЯ РЕСПУБЛИКА"; + НоваяСтрока.КодАльфа2 = "CZ"; + НоваяСтрока.КодАльфа3 = "CZE"; + + НоваяСтрока = ПредыдущиеЗначенияОКСМ.Добавить(); + НоваяСтрока.Код = "270"; + НоваяСтрока.Наименование = "ГАМБИЯ"; + НоваяСтрока.КодАльфа2 = "GM"; + НоваяСтрока.КодАльфа3 = "GMB"; + НоваяСтрока.НаименованиеПолное = "Республика Гамбия"; + + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ + | СписокСтран.Код КАК Код, + | СписокСтран.Наименование КАК Наименование, + | СписокСтран.КодАльфа2 КАК КодАльфа2, + | СписокСтран.КодАльфа3 КАК КодАльфа3, + | СписокСтран.НаименованиеПолное КАК НаименованиеПолное + |ПОМЕСТИТЬ СписокСтран + |ИЗ + | &СписокСтран КАК СписокСтран + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | СтраныМира.Ссылка КАК Ссылка + |ИЗ + | СписокСтран КАК СписокСтран + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СтраныМира КАК СтраныМира + | ПО (СтраныМира.Код = СписокСтран.Код) + | И (СтраныМира.Наименование = СписокСтран.Наименование) + | И (СтраныМира.КодАльфа2 = СписокСтран.КодАльфа2) + | И (СтраныМира.КодАльфа3 = СписокСтран.КодАльфа3) + | И (СтраныМира.НаименованиеПолное = СписокСтран.НаименованиеПолное)"; + + Запрос.УстановитьПараметр("СписокСтран", ПредыдущиеЗначенияОКСМ); + РезультатЗапроса = Запрос.Выполнить().Выгрузить(); + + ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры, + РезультатЗапроса.ВыгрузитьКолонку("Ссылка")); + +КонецПроцедуры + +Процедура ОбновитьСтраныМираПоОКСМ(Параметры) Экспорт + + СтранаМираСсылка = ОбновлениеИнформационнойБазы.ВыбратьСсылкиДляОбработки(Параметры.Очередь, "Справочник.СтраныМира"); + + ПроблемныхОбъектов = 0; + ОбъектовОбработано = 0; + + Пока СтранаМираСсылка.Следующий() Цикл + Попытка + + ДанныеОКСМ = УправлениеКонтактнойИнформацией.ДанныеКлассификатораСтранМираПоКоду(СтранаМираСсылка.Ссылка.Код); + + Если ДанныеОКСМ <> Неопределено Тогда + СтранаМира = СтранаМираСсылка.Ссылка.ПолучитьОбъект(); + ЗаполнитьЗначенияСвойств(СтранаМира, ДанныеОКСМ); + ОбновлениеИнформационнойБазы.ЗаписатьДанные(СтранаМира); + КонецЕсли; + + ОбъектовОбработано = ОбъектовОбработано + 1; + + Исключение + // Если не удалось обработать страну мира, повторяем попытку снова. + ПроблемныхОбъектов = ПроблемныхОбъектов + 1; + + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось обработать страну: %1 по причине: %2'"), + СтранаМираСсылка.Ссылка, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение, + Метаданные.Справочники.СтраныМира, СтранаМираСсылка.Ссылка, ТекстСообщения); + КонецПопытки; + КонецЦикла; + + Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(Параметры.Очередь, "Справочник.СтраныМира"); + + Если ОбъектовОбработано = 0 И ПроблемныхОбъектов <> 0 Тогда + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Процедуре ОбновитьСтраныМираПоОКСМ не удалось обработать некоторые страны мира(пропущены): %1'"), + ПроблемныхОбъектов); + ВызватьИсключение ТекстСообщения; + Иначе + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Информация, + Метаданные.Справочники.СтраныМира,, + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Процедура ОбновитьСтраныМираПоОКСМ обработала очередную порцию стран мира: %1'"), + ОбъектовОбработано)); + КонецЕсли; + +КонецПроцедуры + #КонецОбласти -#КонецЕсли + +#КонецОбласти + +#КонецЕсли \ No newline at end of file diff --git a/SSL/src/Catalogs/СценарииОбменовДанными/Forms/НастройкаРасписанияОбменовДанными/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/Catalogs/СценарииОбменовДанными/Forms/НастройкаРасписанияОбменовДанными/Attributes/Список/ExtInfo/ListSettings.dcss index 0839ac070..7c76307a1 100644 --- a/SSL/src/Catalogs/СценарииОбменовДанными/Forms/НастройкаРасписанияОбменовДанными/Attributes/Список/ExtInfo/ListSettings.dcss +++ b/SSL/src/Catalogs/СценарииОбменовДанными/Forms/НастройкаРасписанияОбменовДанными/Attributes/Список/ExtInfo/ListSettings.dcss @@ -17,38 +17,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - - ИспользоватьРегламентноеЗадание - Equal - true - - - - - Шрифт - - - - - - - - - ФлагИспользования - Equal - true - - - - - ЦветФона - web:Azure - - - Normal b75fecce-942b-4aed-abc9-e6a02e460fb3 diff --git a/SSL/src/Catalogs/СценарииОбменовДанными/Forms/НастройкаРасписанияОбменовДанными/Form.form b/SSL/src/Catalogs/СценарииОбменовДанными/Forms/НастройкаРасписанияОбменовДанными/Form.form index c8284f089..b9ec2a396 100644 --- a/SSL/src/Catalogs/СценарииОбменовДанными/Forms/НастройкаРасписанияОбменовДанными/Form.form +++ b/SSL/src/Catalogs/СценарииОбменовДанными/Forms/НастройкаРасписанияОбменовДанными/Form.form @@ -493,7 +493,6 @@ Left true - true true true true diff --git a/SSL/src/Catalogs/СценарииОбменовДанными/Forms/НастройкаРасписанияОбменовДанными/Module.bsl b/SSL/src/Catalogs/СценарииОбменовДанными/Forms/НастройкаРасписанияОбменовДанными/Module.bsl index cff11ae92..39982c409 100644 --- a/SSL/src/Catalogs/СценарииОбменовДанными/Forms/НастройкаРасписанияОбменовДанными/Module.bsl +++ b/SSL/src/Catalogs/СценарииОбменовДанными/Forms/НастройкаРасписанияОбменовДанными/Module.bsl @@ -4,6 +4,8 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; @@ -229,4 +231,39 @@ КонецПроцедуры +&НаСервере +Процедура УстановитьУсловноеОформление() + + УсловноеОформление.Элементы.Очистить(); + + // + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.Список.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Список.ИспользоватьРегламентноеЗадание"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + Элемент.Оформление.УстановитьЗначениеПараметра("Шрифт", Новый Шрифт(WindowsШрифты.ШрифтДиалоговИМеню, , , Истина, Ложь, Ложь, Ложь)); + + // + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.Список.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Список.ФлагИспользования"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.Лазурный); + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/Catalogs/СценарииОбменовДанными/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/СценарииОбменовДанными/Forms/ФормаЭлемента/Form.form index 1ce01b198..12b77d311 100644 --- a/SSL/src/Catalogs/СценарииОбменовДанными/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/СценарииОбменовДанными/Forms/ФормаЭлемента/Form.form @@ -35,7 +35,6 @@ Left true - true true true true @@ -191,8 +190,6 @@ ru Обмен по расписанию - 70 - false ОбменПоРасписаниюExtendedTooltip 131 @@ -631,7 +628,6 @@ true true - 100 true true true @@ -728,7 +724,6 @@ StartChoice КомментарийНачалоВыбора - true 2 true true diff --git a/SSL/src/Catalogs/СценарииОбменовДанными/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/СценарииОбменовДанными/Forms/ФормаЭлемента/Module.bsl index 10a766832..5e8a63c53 100644 --- a/SSL/src/Catalogs/СценарииОбменовДанными/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/СценарииОбменовДанными/Forms/ФормаЭлемента/Module.bsl @@ -134,7 +134,7 @@ Если ТипЗнч(ВыбранноеЗначение) = Тип("Тип") И СписокУзловОбмена.НайтиПоЗначению(ВыбранноеЗначение) = Неопределено Тогда ТекстСообщения = НСтр("ru = 'Данные выбранного типа не могут быть использованы в этой форме. |Выберите другой тип данных.'"); - Поле = СтрШаблон("НастройкиОбмена[%1].УзелИнформационнойБазы", Элементы.СоставРасписания.ТекущиеДанные.НомерСтроки-1); + Поле = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("НастройкиОбмена[%1].УзелИнформационнойБазы", Элементы.СоставРасписания.ТекущиеДанные.НомерСтроки-1); ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения, , Поле, "Объект"); СтандартнаяОбработка = Ложь; КонецЕсли; diff --git a/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/УдалениеЛишнихФайловИзТома/Form.form b/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/УдалениеЛишнихФайловИзТома/Form.form index e9ecb8c09..8ac988d3d 100644 --- a/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/УдалениеЛишнихФайловИзТома/Form.form +++ b/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/УдалениеЛишнихФайловИзТома/Form.form @@ -73,7 +73,6 @@ true Label - true true @@ -146,11 +145,8 @@ 8 true - 5 true - 2 true - false false @@ -187,9 +183,7 @@ true Label - true true - false false Style.ПоясняющийТекст @@ -223,6 +217,7 @@ UsualGroup + Center Auto true true @@ -270,7 +265,7 @@ StartChoice ПутьКаталогаДляКопированияНачалоВыбора - true + 60 true true true diff --git a/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/ФормаСписка/Form.form index f2cca6b64..2fac9093d 100644 --- a/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 63 @@ -785,7 +784,6 @@ Delete SetDeletionMark - 100 DontBlock true true diff --git a/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/ФормаЭлемента/Form.form index 198964faf..26143408a 100644 --- a/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/ФормаЭлемента/Form.form @@ -35,7 +35,6 @@ Left true - true true true true @@ -172,7 +171,6 @@ Left true - true true true true @@ -226,7 +224,6 @@ Left true - true true true true @@ -491,7 +488,6 @@ Left true - true true true true @@ -707,7 +703,6 @@ ОбработкаПроверкиЗаполненияНаСервере WriteAndClose - 60 DontBlock true true diff --git a/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/ФормаЭлемента/Module.bsl index 2cacea4e8..53e2c786a 100644 --- a/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/ТомаХраненияФайлов/Forms/ФормаЭлемента/Module.bsl @@ -34,8 +34,8 @@ КонецЕсли; КонецЕсли; - ТипПлатформыСервера = ОбщегоНазначенияПовтИсп.ТипПлатформыСервера(); - + СистемнаяИнфо = Новый СистемнаяИнформация; + ТипПлатформыСервера = СистемнаяИнфо.ТипПлатформы; Если ТипПлатформыСервера = ТипПлатформы.Windows_x86 ИЛИ ТипПлатформыСервера = ТипПлатформы.Windows_x86_64 Тогда @@ -47,10 +47,10 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Оповещение = Новый ОписаниеОповещения("ЗаписатьИЗакрытьОповещение", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы); КонецПроцедуры @@ -165,6 +165,10 @@ &НаКлиенте Процедура ПроверитьЦелостностьТома(Команда) + Если Не ПроверитьЗаполнение() Тогда + Возврат; + КонецЕсли; + ПараметрыОтчета = Новый Структура(); ПараметрыОтчета.Вставить("СформироватьПриОткрытии", Истина); ПараметрыОтчета.Вставить("Отбор", Новый Структура("Том", Объект.Ссылка)); diff --git a/SSL/src/Catalogs/ТомаХраненияФайлов/ObjectModule.bsl b/SSL/src/Catalogs/ТомаХраненияФайлов/ObjectModule.bsl index 25f575987..ebc9af6a7 100644 --- a/SSL/src/Catalogs/ТомаХраненияФайлов/ObjectModule.bsl +++ b/SSL/src/Catalogs/ТомаХраненияФайлов/ObjectModule.bsl @@ -48,8 +48,8 @@ ИмяПоляСПолнымПутем = ""; ПолныйПутьТома = ""; - ТипПлатформыСервера = ОбщегоНазначенияПовтИсп.ТипПлатформыСервера(); - + СистемнаяИнфо = Новый СистемнаяИнформация; + ТипПлатформыСервера = СистемнаяИнфо.ТипПлатформы; Если ТипПлатформыСервера = ТипПлатформы.Windows_x86 ИЛИ ТипПлатформыСервера = ТипПлатформы.Windows_x86_64 Тогда diff --git a/SSL/src/Catalogs/ТомаХраненияФайлов/Templates/МакетОтчета/Template.mxlx b/SSL/src/Catalogs/ТомаХраненияФайлов/Templates/МакетОтчета/Template.mxlx index 40b3a7a59..8b29e8627 100644 --- a/SSL/src/Catalogs/ТомаХраненияФайлов/Templates/МакетОтчета/Template.mxlx +++ b/SSL/src/Catalogs/ТомаХраненияФайлов/Templates/МакетОтчета/Template.mxlx @@ -90,7 +90,7 @@ -1 - + 342 diff --git a/SSL/src/Catalogs/УчетныеЗаписиСинхронизацииФайлов/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/УчетныеЗаписиСинхронизацииФайлов/Forms/ФормаЭлемента/Form.form index f3cb04439..c60ee776c 100644 --- a/SSL/src/Catalogs/УчетныеЗаписиСинхронизацииФайлов/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/УчетныеЗаписиСинхронизацииФайлов/Forms/ФормаЭлемента/Form.form @@ -1,207 +1,22 @@ - - Наименование - 4 - true - true - - true - - - Объект.Description - - - НаименованиеРасширеннаяПодсказка - 6 - Label - true - true - - Left - - - - НаименованиеКонтекстноеМеню - 5 - true - - InputField - Auto - true - Left - true - - 30 - true - true - true - true - true - true - true - Normal - - - ГруппаНастройки - 40 - - ГруппаСервисЛогин - 42 - - СервисПредставление - 60 - - <key>ru</key> - <value>Сервис</value> - - true - true - - true - - - СервисПредставление - - - OnChange - СервисПредставлениеПриИзменении - - - СервисПредставлениеРасширеннаяПодсказка - 62 - Label - true - true - - Left - - - - СервисПредставлениеКонтекстноеМеню - 61 - true - - InputField - Auto - true - Left - true - - 30 - true - true - true - true - true - true - - - ru - Яндекс.Диск - - - Яндекс.Диск - - - - - ru - 4shared.com - - - 4shared.com - - - - - ru - Box - - - Box - - - - - ru - iCloud - - - iCloud - - - - - ru - DrobBox (через dropdav.com) - - - Dropbox - - - Normal - - - - Логин - 31 - true - true - - true - - - Логин - - - ЛогинРасширеннаяПодсказка - 33 - Label - true - true - - Left - - - - ЛогинКонтекстноеМеню - 32 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal - - + ГруппаНаименованиеИНастройки + 65 + + Наименование + 4 true true true - - <key>ru</key> - <value>Группа сервис логин</value> - - - ru - Группа сервис логин - + + Объект.Description + - ГруппаСервисЛогинРасширеннаяПодсказка - 43 + НаименованиеРасширеннаяПодсказка + 6 Label true true @@ -209,33 +24,187 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + НаименованиеКонтекстноеМеню + 5 + true + + InputField + Auto + true + Left + true + + 82 + true + 30 + true + true + true + true + true + Normal
      - ГруппаПапкаПароль - 29 - - КорневаяПапка - 37 + ГруппаНастройки + 40 + + ГруппаСервисЛогин + 42 + + СервисПредставление + 60 + + <key>ru</key> + <value>Сервис</value> + + true + true + + true + + + СервисПредставление + + + OnChange + СервисПредставлениеПриИзменении + + + СервисПредставлениеРасширеннаяПодсказка + 62 + Label + true + true + + Left + + + + СервисПредставлениеКонтекстноеМеню + 61 + true + + InputField + Auto + true + Left + true + + true + 31 + true + true + true + true + true + + + ru + Яндекс.Диск + + + Яндекс.Диск + + + + + ru + 4shared.com + + + 4shared.com + + + + + ru + Box + + + Box + + + + + ru + iCloud + + + iCloud + + + + + ru + DrobBox (через dropdav.com) + + + Dropbox + + + Normal + + + + Логин + 31 + true + true + + true + + + Логин + + + ЛогинРасширеннаяПодсказка + 33 + Label + true + true + + Left + + + + ЛогинКонтекстноеМеню + 32 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + true + Normal + + true true true - - Объект.КорневаяПапка - + + <key>ru</key> + <value>Группа сервис логин</value> + + + ru + Группа сервис логин + - КорневаяПапкаРасширеннаяПодсказка - 39 + ГруппаСервисЛогинРасширеннаяПодсказка + 43 Label true true @@ -243,40 +212,120 @@ Left - - КорневаяПапкаКонтекстноеМеню - 38 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal + UsualGroup + + Vertical + Auto + true + true + Auto + Auto - - Пароль - 34 + + ГруппаПапкаПароль + 29 + + КорневаяПапка + 37 + true + true + + true + + + Объект.КорневаяПапка + + + КорневаяПапкаРасширеннаяПодсказка + 39 + Label + true + true + + Left + + + + КорневаяПапкаКонтекстноеМеню + 38 + true + + InputField + Enter + true + Left + true + + true + true + false + true + true + true + true + Normal + + + + Пароль + 34 + true + true + + true + + + Пароль + + + ПарольРасширеннаяПодсказка + 36 + Label + true + true + + Left + + + + ПарольКонтекстноеМеню + 35 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + true + Normal + + true true true - - Пароль - + + <key>ru</key> + <value>Логин и пароль</value> + + + ru + Группа папка пароль + + false - ПарольРасширеннаяПодсказка - 36 + ГруппаПапкаПарольРасширеннаяПодсказка + 30 Label true true @@ -284,26 +333,14 @@ Left - - ПарольКонтекстноеМеню - 35 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - true - true - Normal + UsualGroup + + Vertical + Auto + true + true + Auto + Auto true @@ -313,15 +350,15 @@ <key>ru</key> - <value>Логин и пароль</value> + <value>Группа настройки</value> ru - Группа папка пароль + Группа настройки - ГруппаПапкаПарольРасширеннаяПодсказка - 30 + ГруппаНастройкиРасширеннаяПодсказка + 41 Label true true @@ -331,7 +368,6 @@ UsualGroup - Vertical Auto true true @@ -346,15 +382,16 @@ <key>ru</key> - <value>Группа настройки</value> + <value>Группа наименование и настройки</value> ru - Группа настройки + Группа наименование и настройки + false - ГруппаНастройкиРасширеннаяПодсказка - 41 + ГруппаНаименованиеИНастройкиРасширеннаяПодсказка + 66 Label true true @@ -364,6 +401,7 @@ UsualGroup + Vertical Auto true true @@ -589,8 +627,6 @@ true Label - 90 - true true Style.ПоясняющийТекст diff --git a/SSL/src/Catalogs/УчетныеЗаписиСинхронизацииФайлов/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/УчетныеЗаписиСинхронизацииФайлов/Forms/ФормаЭлемента/Module.bsl index b6ed7d15f..df0d66279 100644 --- a/SSL/src/Catalogs/УчетныеЗаписиСинхронизацииФайлов/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/УчетныеЗаписиСинхронизацииФайлов/Forms/ФормаЭлемента/Module.bsl @@ -91,7 +91,7 @@ ОчиститьСообщения(); - Если Объект.Ссылка.Пустая() Или Модифицированность Тогда + Если Объект.Ссылка.Пустая() Или Модифицированность Тогда ОписаниеОповещения = Новый ОписаниеОповещения("ПроверитьНастройкиЗавершение", ЭтотОбъект); ТекстВопроса = НСтр("ru = 'Для проверки настроек необходимо записать данные учетной записи. Продолжить?'"); Кнопки = Новый СписокЗначений; diff --git a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Commands/НастройкаСистемнойУчетнойЗаписи/CommandModule.bsl b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Commands/НастройкаСистемнойУчетнойЗаписи/CommandModule.bsl deleted file mode 100644 index 6c0923dbf..000000000 --- a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Commands/НастройкаСистемнойУчетнойЗаписи/CommandModule.bsl +++ /dev/null @@ -1,23 +0,0 @@ -#Область ОбработчикиСобытий - -&НаКлиенте -Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) - - ПолноеИмяФормы = "Справочник.УчетныеЗаписиЭлектроннойПочты.ФормаОбъекта"; - - ПараметрыФормы = Новый Структура("Ключ", ПредопределенноеЗначение("Справочник.УчетныеЗаписиЭлектроннойПочты.СистемнаяУчетнаяЗаписьЭлектроннойПочты")); - - ВладелецФормы = ПараметрыВыполненияКоманды.Источник; - УникальностьФормы = ПараметрыВыполненияКоманды.Уникальность; - - #Если ВебКлиент Тогда - ОкноФормы = ПараметрыВыполненияКоманды.Окно; - #Иначе - ОкноФормы = ПараметрыВыполненияКоманды.Источник; - #КонецЕсли - - ОткрытьФорму(ПолноеИмяФормы, ПараметрыФормы, ВладелецФормы, УникальностьФормы, ОкноФормы); - -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ПомощникНастройкиУчетнойЗаписи/Form.form b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ПомощникНастройкиУчетнойЗаписи/Form.form index ca8df83d9..848d3c0e5 100644 --- a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ПомощникНастройкиУчетнойЗаписи/Form.form +++ b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ПомощникНастройкиУчетнойЗаписи/Form.form @@ -34,7 +34,6 @@ true Label - true true System.DefaultGUIFont @@ -75,7 +74,6 @@ true Label - true true System.DefaultGUIFont @@ -118,9 +116,7 @@ 161 true - 4 true - 2 true @@ -128,42 +124,6 @@ - - НадписьНеУдалосьПодключиться - 163 - - <key>ru</key> - <value>Не удалось подключиться к почтовому серверу: -Cann't connect to example.com, 110: Refused</value> - - true - - true - - - НадписьНеУдалосьПодключитьсяРасширеннаяПодсказка - 165 - Label - true - true - - Left - - - - НадписьНеУдалосьПодключитьсяКонтекстноеМеню - 164 - true - - Label - true - true - true - - Left - Top - - СообщенияОбОшибках 238 @@ -199,7 +159,7 @@ Cann't connect to example.com, 110: Refused true true - 3 + 2 true false true @@ -580,7 +540,6 @@ Cann't connect to example.com, 110: Refused true Label - true true Style.ПоясняющийТекст @@ -783,7 +742,6 @@ Cann't connect to example.com, 110: Refused true Label - true true System.DefaultGUIFont @@ -1221,7 +1179,6 @@ Cann't connect to example.com, 110: Refused true Label - true true Left @@ -1386,7 +1343,6 @@ Cann't connect to example.com, 110: Refused true Label - true true System.DefaultGUIFont @@ -2004,7 +1960,6 @@ Cann't connect to example.com, 110: Refused true Label - true true Left @@ -2136,7 +2091,6 @@ Cann't connect to example.com, 110: Refused true Label - true true System.DefaultGUIFont @@ -2275,7 +2229,6 @@ Cann't connect to example.com, 110: Refused true Label - true true Left @@ -2375,7 +2328,6 @@ Cann't connect to example.com, 110: Refused true Label - true true System.DefaultGUIFont @@ -2414,9 +2366,7 @@ Cann't connect to example.com, 110: Refused 56 true - 7 true - 3 true @@ -2453,12 +2403,10 @@ Cann't connect to example.com, 110: Refused true Label - true - 3 true + Center Left - Center true @@ -2554,7 +2502,6 @@ Cann't connect to example.com, 110: Refused true Label - true true System.DefaultGUIFont @@ -2597,9 +2544,7 @@ Cann't connect to example.com, 110: Refused 67 true - 4 true - 2 true @@ -2636,9 +2581,9 @@ vasyapupkin@example.com завершена. true Label - true true true + Center Left @@ -2733,37 +2678,6 @@ vasyapupkin@example.com завершена. Auto - - Отступ - 197 - true - true - - true - - - ОтступРасширеннаяПодсказка - 199 - Label - true - true - - Left - - - - ОтступКонтекстноеМеню - 198 - true - - Label - true - true - true - - Left - - КоманднаяПанель 28 @@ -2874,7 +2788,6 @@ vasyapupkin@example.com завершена. true Label - true true Left @@ -3048,7 +2961,6 @@ vasyapupkin@example.com завершена. Retry SaveValues Yes - 50 LockOwner true true @@ -3720,6 +3632,24 @@ vasyapupkin@example.com завершена. true + + ИдентификаторЗадания + + <key>ru</key> + <value>Идентификатор задания</value> + + 38 + + String + + + + true + + + true + + Назад diff --git a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ПомощникНастройкиУчетнойЗаписи/Module.bsl b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ПомощникНастройкиУчетнойЗаписи/Module.bsl index 2c97a3464..af45bd9de 100644 --- a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ПомощникНастройкиУчетнойЗаписи/Module.bsl +++ b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ПомощникНастройкиУчетнойЗаписи/Module.bsl @@ -78,13 +78,19 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) - Если ТребуетсяПодтверждениеЗакрытияФормы Тогда - Отказ = Истина; - ПодключитьОбработчикОжидания("ПоказатьВопросПередЗакрытиемФормы", 0.1, Истина); + Если Не ТребуетсяПодтверждениеЗакрытияФормы Тогда + Возврат; КонецЕсли; + Отказ = Истина; + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + + ПодключитьОбработчикОжидания("ПоказатьВопросПередЗакрытиемФормы", 0.1, Истина); + КонецПроцедуры #КонецОбласти @@ -662,19 +668,19 @@ КонецЕсли; ПроверкаЗавершиласьСОшибками = Ложь; - ПодобратьНастройкиУчетнойЗаписи(); - Если ПроверкаЗавершиласьСОшибками Тогда - ПерейтиНаСледующуюСтраницу(); - Иначе - ПараметрыОбработчикаОжидания = Неопределено; - ПроверитьВыполнениеФоновогоЗадания(); - КонецЕсли; + ДлительнаяОперация = ПодобратьНастройкиУчетнойЗаписи(); + + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + + ОписаниеОповещения = Новый ОписаниеОповещения("ПриЗавершенииОперацииПодбора", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОписаниеОповещения, ПараметрыОжидания); КонецПроцедуры &НаСервере -Процедура ПодобратьНастройкиУчетнойЗаписи() +Функция ПодобратьНастройкиУчетнойЗаписи() НаименованиеЗадания = НСтр("ru = 'Поиск настроек почтового сервера'"); ВыполняемыйМетод = "Справочники.УчетныеЗаписиЭлектроннойПочты.ОпределитьНастройкиУчетнойЗаписи"; @@ -685,54 +691,36 @@ СтруктураПараметров.Вставить("ДляОтправки", ИспользоватьДляОтправки); СтруктураПараметров.Вставить("ДляПолучения", ИспользоватьДляПолучения); - Попытка - РезультатФоновогоЗадания = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - ВыполняемыйМетод, - СтруктураПараметров, - НаименованиеЗадания); - Исключение - ПроверкаЗавершиласьСОшибками = Истина; - КонецПопытки; + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания; -КонецПроцедуры - -&НаКлиенте -Процедура ПроверитьВыполнениеФоновогоЗадания() + Возврат ДлительныеОперации.ВыполнитьВФоне(ВыполняемыйМетод, СтруктураПараметров, ПараметрыВыполнения); - Если Не РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - Попытка - РезультатФоновогоЗадания.ЗаданиеВыполнено = ЗаданиеВыполнено(РезультатФоновогоЗадания.ИдентификаторЗадания); - Исключение - ПроверкаЗавершиласьСОшибками = Истина; - ПерейтиНаСледующуюСтраницу(); - Возврат; - КонецПопытки; - КонецЕсли; - - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - НайденныеНастройки = ПолучитьИзВременногоХранилища(РезультатФоновогоЗадания.АдресХранилища); - ПроверкаЗавершиласьСОшибками = ИспользоватьДляОтправки <> НайденныеНастройки.ДляОтправки - Или ИспользоватьДляПолучения <> НайденныеНастройки.ДляПолучения; - ЗаполнитьЗначенияСвойств(ЭтотОбъект, НайденныеНастройки); - Если Не ПроверкаЗавершиласьСОшибками Тогда - СоздатьУчетнуюЗапись(); - КонецЕсли; - ПерейтиНаСледующуюСтраницу(); - Иначе - Если ПараметрыОбработчикаОжидания = Неопределено Тогда - ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания); - Иначе - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания); - КонецЕсли; - ПодключитьОбработчикОжидания("ПроверитьВыполнениеФоновогоЗадания", ПараметрыОбработчикаОжидания.ТекущийИнтервал, Истина); - КонецЕсли; - -КонецПроцедуры - -&НаСервереБезКонтекста -Функция ЗаданиеВыполнено(ИдентификаторЗадания) - Возврат ДлительныеОперации.ЗаданиеВыполнено(ИдентификаторЗадания); КонецФункции +&НаКлиенте +Процедура ПриЗавершенииОперацииПодбора(Результат, ДополнительныеПараметры) Экспорт + + Если Результат = Неопределено Тогда + Возврат; + КонецЕсли; + + Если Результат.Статус = "Ошибка" Тогда + ПроверкаЗавершиласьСОшибками = Истина; + ПерейтиНаСледующуюСтраницу(); + Возврат; + КонецЕсли; + + НайденныеНастройки = ПолучитьИзВременногоХранилища(Результат.АдресРезультата); + ПроверкаЗавершиласьСОшибками = ИспользоватьДляОтправки <> НайденныеНастройки.ДляОтправки + Или ИспользоватьДляПолучения <> НайденныеНастройки.ДляПолучения; + ЗаполнитьЗначенияСвойств(ЭтотОбъект, НайденныеНастройки); + Если Не ПроверкаЗавершиласьСОшибками Тогда + СоздатьУчетнуюЗапись(); + ОповеститьОбИзменении(СсылкаНовойУчетнойЗаписи); + КонецЕсли; + ПерейтиНаСледующуюСтраницу(); + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаВыбора/Form.form b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаВыбора/Form.form index fd21e4421..c8dd5b37c 100644 --- a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаВыбора/Form.form +++ b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаВыбора/Form.form @@ -302,7 +302,6 @@ </items> <horizontalAlign>Left</horizontalAlign> </autoCommandBar> - <height>10</height> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoTitle>true</autoTitle> diff --git a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Form.form index 7b0318d45..91bc3d744 100644 --- a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Form.form @@ -269,11 +269,6 @@ <key>ru</key> <value>Использовать учетную запись</value> - - ru - Использовать учетную запись - - true ИспользоватьУчетнуюЗаписьРасширеннаяПодсказка 89 @@ -690,6 +685,10 @@ ТребуетсяВходНаСерверПередОтправкой 189 + + <key>ru</key> + <value>Требуется авторизация на сервере входящей почты перед отправкой</value> + true true @@ -1392,7 +1391,6 @@ true Label - true true Left @@ -1576,7 +1574,6 @@ true Label - true true Left @@ -1653,12 +1650,6 @@ ru Настройки соединения - - ru - Настройки соединения - - true - true НастройкиСоединенияРасширеннаяПодсказка 97 @@ -1704,6 +1695,32 @@ UserCmds Auto + + ФормаЗаписать + 217 + true + true + + true + + + ФормаЗаписатьРасширеннаяПодсказка + 218 + Label + true + true + + Left + + + Form.StandardCommand.Write + Normal + Picture + true + true + UserCmds + Auto + ФормаСтандартныеКоманды 210 diff --git a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Help/ru.html b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Help/ru.html index cf4d99369..f9c6f6382 100644 --- a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Help/ru.html +++ b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Help/ru.html @@ -18,8 +18,8 @@
      • Укажите Имя пользователя учетной записи в формате User@Server.net, он может отличаться от основного, в таком случае он будет предназначен только для отправки писем.
      • При необходимости введите Пароль учетной записи (если он не введен, программа запрашивает его при отправке писем).
      • При необходимости включите флажок Безопасная проверка пароля.
      • В поле Сервер укажите адрес SMTP-сервера, например, "smtp.Server.net".
      • Укажите Порт компьютера для отправки почтовых сообщений, например, "465". -
      • Включите флажок Использовать безопасное соединение (SSL). -
      • При необходимости включите флажок Требуется вход на сервер перед отправкой.

      Получение писем (настройка сервера входящей почты)

      +
    • Включите флажок Использовать безопасное соединение (SSL). +
    • При необходимости включите флажок Требуется авторизация на сервере входящей почты перед отправкой.

    Получение писем (настройка сервера входящей почты)

    • Укажите Имя пользователя учетной записи в формате User@Server.net, он может отличаться от основного, в таком случае он будет предназначен только для получения писем.
    • При необходимости введите Пароль учетной записи (если он не введен, программа запрашивает его для получения писем).
    • При необходимости включите флажок Безопасная проверка пароля.
    • В поле Сервер укажите адрес POP3 сервера, например, "imap.Server.net".  @@ -27,7 +27,17 @@
    • Укажите Порт компьютера для получения входящей почты, например, 993.
    • Включите флажок Использовать безопасное соединение (SSL).
    • Включите флажок Оставлять копии писем на сервере, для того чтобы программа не удалила письма в папке "Входящие" почтового ящика электронной почты. По умолчанию флажок отключен, в этом случае все письма после получения будут удалены с почтового сервера. -
    • Определите срок хранения писем на почтовом сервере с помощью поля Удалять письма с сервера через - например, через "10 дней".

    Прочие настройки

    +
  • Определите срок хранения писем на почтовом сервере с помощью поля Удалять письма с сервера через - например, через "10 дней".
  • Возможности при получении писем по протоколу IMAP

    +
    • +
      В программе предусмотрена поддержка протокола IMAP. Электронные письма по данному протоколу загружаются из всех папок на почтовом сервере, в том числе и исходящие письма, за исключением папок Черновики, Удаленные, Спам.
      +
    • +
      Если на сервере нет ни одной активной папки, то загрузка писем выполняется из всех папок, кроме списка исключений, который описан выше. Связано такое решение с тем, что некоторые почтовые серверы все папки по умолчанию делают неактивными, при этом из собственных веб-клиентов работают с ними как с активными.
      +
    • +
      Исходящим письмом считаются письма, у которых адрес отправителя совпадает с адресом, указанным в учетной записи электронной почты. В случае если такое письмо отправлено и на собственный почтовый адрес, то оно не загружается.
      +
    • +
      Для загруженного письма проверяются ранее загруженные письма на предмет поиска основания, а также проверяется, а не является ли загруженное письмо основанием для одного ли нескольких ранее загруженных писем. Таким образом, обеспечивается надежное выстраивание писем в цепочки и определение для вновь загруженных писем предметов.
      +
    • +
      При получении писем по протоколу IMAP предусмотрены более широкие возможности обработки писем. Открываются по команде Настройки панели навигации учетной записи электронной почты.

    Прочие настройки

    • Укажите Длительность ожидания сервера - например, "30 сек".

    Проверка настроек

    • Нажмите Проверить настройки для проверки введенных параметров учетной записи.

      diff --git a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Module.bsl index 025f7c56d..3b7ab9eb1 100644 --- a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ФормаЭлемента/Module.bsl @@ -36,6 +36,8 @@ ПарольSMTP = ?(ЗначениеЗаполнено(Пароли.ПарольSMTP), ЭтотОбъект.УникальныйИдентификатор, ""); КонецЕсли; + Элементы.ФормаЗаписатьИЗакрыть.Доступность = Не ТолькоПросмотр; + КонецПроцедуры &НаСервере @@ -54,9 +56,9 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) ОписаниеОповещения = Новый ОписаниеОповещения("ПередЗакрытиемПодтверждениеПолучено", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(ОписаниеОповещения, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(ОписаниеОповещения, Отказ, ЗавершениеРаботы); КонецПроцедуры &НаКлиенте @@ -91,9 +93,13 @@ &НаКлиенте Процедура ПослеЗаписи(ПараметрыЗаписи) + + Оповестить("Запись_УчетнаяЗаписьЭлектроннойПочты",,Объект.Ссылка); + Если ПараметрыЗаписи.Свойство("ЗаписатьИЗакрыть") Тогда Закрыть(); КонецЕсли; + КонецПроцедуры &НаКлиенте diff --git a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/ManagerModule.bsl b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/ManagerModule.bsl index f59276b4f..f20a3c85b 100644 --- a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/ManagerModule.bsl +++ b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/ManagerModule.bsl @@ -27,10 +27,11 @@ Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка) - Если ВидФормы = "ФормаОбъекта" И Не Параметры.Свойство("ЗначениеКопирования") - И (Не Параметры.Свойство("Ключ") Или Не РаботаСПочтовымиСообщениямиВызовСервера.УчетнаяЗаписьНастроена(Параметры.Ключ)) Тогда - ВыбраннаяФорма = "ПомощникНастройкиУчетнойЗаписи"; - СтандартнаяОбработка = Ложь; + Если (ВидФормы = "ФормаОбъекта" И Не Параметры.Свойство("ЗначениеКопирования") + И (Не Параметры.Свойство("Ключ") Или Не РаботаСПочтовымиСообщениямиВызовСервера.УчетнаяЗаписьНастроена(Параметры.Ключ))) + И ПравоДоступа("Редактирование", Метаданные.Справочники.УчетныеЗаписиЭлектроннойПочты) Тогда + ВыбраннаяФорма = "ПомощникНастройкиУчетнойЗаписи"; + СтандартнаяОбработка = Ложь; КонецЕсли; КонецПроцедуры diff --git a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/УчетныеЗаписиЭлектроннойПочты.mdo b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/УчетныеЗаписиЭлектроннойПочты.mdo index b6411eed3..69501a655 100644 --- a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/УчетныеЗаписиЭлектроннойПочты.mdo +++ b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/УчетныеЗаписиЭлектроннойПочты.mdo @@ -401,7 +401,6 @@ - ShowError Use Use @@ -752,17 +751,4 @@ Выполнить проверку учетной записи - - НастройкаСистемнойУчетнойЗаписи - - ru - Настройка системной учетной записи - - NavigationPanelOrdinary - Auto - - ru - Перейти к настройкам системной учетной записи электронной почты - - diff --git a/SSL/src/Catalogs/Файлы/Forms/ВопросПриВыходеИзТекстовогоРедактора/Form.form b/SSL/src/Catalogs/Файлы/Forms/ВопросПриВыходеИзТекстовогоРедактора/Form.form index ce209f7e0..221824397 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ВопросПриВыходеИзТекстовогоРедактора/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ВопросПриВыходеИзТекстовогоРедактора/Form.form @@ -30,9 +30,7 @@ 4 true - 5 true - 2 true @@ -73,7 +71,6 @@ Left true - true 2 true @@ -204,17 +201,57 @@ UserCmds Auto - - ДекорацияПустая - 11 + + ГруппаВернуться + 22 + + Вернуться + 10 + true + true + + true + + false + + ВернутьсяExtendedTooltip + 21 + Label + true + true + + Left + + + UsualButton + Form.Command.Вернуться + Normal + Auto + 40 + true + 1 + true + Bottom + UserCmds + Auto + true true true + + <key>ru</key> + <value>Группа вернуться</value> + + + ru + Группа вернуться + + 2 - ДекорацияПустаяExtendedTooltip - 20 + ГруппаВернутьсяРасширеннаяПодсказка + 23 Label true true @@ -222,48 +259,16 @@ Left - - ДекорацияПустаяКонтекстноеМеню - 12 - true - - Label - true - true - - Left + UsualGroup + + Vertical + Auto + true + true + Auto + Auto - - Вернуться - 10 - true - true - - true - - false - - ВернутьсяExtendedTooltip - 21 - Label - true - true - - Left - - - UsualButton - Form.Command.Вернуться - Normal - Auto - 40 - true - 1 - true - UserCmds - Auto - true true diff --git a/SSL/src/Catalogs/Файлы/Forms/ВопросПриИмпортеФайлов/Form.form b/SSL/src/Catalogs/Файлы/Forms/ВопросПриИмпортеФайлов/Form.form index dfb1cb594..2bfb3b85e 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ВопросПриИмпортеФайлов/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ВопросПриИмпортеФайлов/Form.form @@ -37,7 +37,6 @@ Left true - true 3 true false @@ -193,7 +192,6 @@ true true true - 40 true true 4 @@ -333,7 +331,6 @@ OnCreateAtServer ПриСозданииНаСервере - 70 LockOwner true true @@ -387,6 +384,13 @@ ValueList + + Заголовок + + String + + + diff --git a/SSL/src/Catalogs/Файлы/Forms/ВопросПриИмпортеФайлов/Module.bsl b/SSL/src/Catalogs/Файлы/Forms/ВопросПриИмпортеФайлов/Module.bsl index 56bc2e285..1a4a35f99 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ВопросПриИмпортеФайлов/Module.bsl +++ b/SSL/src/Catalogs/Файлы/Forms/ВопросПриИмпортеФайлов/Module.bsl @@ -17,9 +17,7 @@ |Продолжить импорт?'"), Строка(МаксимальныйРазмерФайла) ); - Если Параметры.Свойство("Заголовок") Тогда - Заголовок = Параметры.Заголовок; - КонецЕсли; + Заголовок = Параметры.Заголовок; КонецПроцедуры diff --git a/SSL/src/Catalogs/Файлы/Forms/ВыборКодировки/Form.form b/SSL/src/Catalogs/Файлы/Forms/ВыборКодировки/Form.form index 800c45abb..9a7aac145 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ВыборКодировки/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ВыборКодировки/Form.form @@ -254,7 +254,6 @@ OnCreateAtServer ПриСозданииНаСервере - 15 LockOwner true true diff --git a/SSL/src/Catalogs/Файлы/Forms/ВыборКодировки/Module.bsl b/SSL/src/Catalogs/Файлы/Forms/ВыборКодировки/Module.bsl index 04722524b..970316ee5 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ВыборКодировки/Module.bsl +++ b/SSL/src/Catalogs/Файлы/Forms/ВыборКодировки/Module.bsl @@ -75,7 +75,7 @@ СписокКодировок.Очистить(); Если Не ПолныйСписок Тогда - СписокКодировокЛокальный = РаботаСФайламиСлужебный.ПолучитьСписокКодировок(); + СписокКодировокЛокальный = РаботаСФайламиСлужебный.Кодировки(); Иначе СписокКодировокЛокальный = ПолучитьПолныйСписокКодировок(); КонецЕсли; diff --git a/SSL/src/Catalogs/Файлы/Forms/ВыборСохраненияШифрованногоФайла/Form.form b/SSL/src/Catalogs/Файлы/Forms/ВыборСохраненияШифрованногоФайла/Form.form index c081ca2eb..bce9091f8 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ВыборСохраненияШифрованногоФайла/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ВыборСохраненияШифрованногоФайла/Form.form @@ -122,7 +122,6 @@ OnCreateAtServer ПриСозданииНаСервере - 40 LockOwner true true diff --git a/SSL/src/Catalogs/Файлы/Forms/РедактированиеТекстовогоФайла/Form.form b/SSL/src/Catalogs/Файлы/Forms/РедактированиеТекстовогоФайла/Form.form index 052ba2184..575088d2c 100644 --- a/SSL/src/Catalogs/Файлы/Forms/РедактированиеТекстовогоФайла/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/РедактированиеТекстовогоФайла/Form.form @@ -403,8 +403,6 @@ OnCreateAtServer ПриСозданииНаСервере - 80 - 15 DontBlock true true diff --git a/SSL/src/Catalogs/Файлы/Forms/РедактированиеТекстовогоФайла/Module.bsl b/SSL/src/Catalogs/Файлы/Forms/РедактированиеТекстовогоФайла/Module.bsl index d3bb4315c..1e2f353ab 100644 --- a/SSL/src/Catalogs/Файлы/Forms/РедактированиеТекстовогоФайла/Module.bsl +++ b/SSL/src/Catalogs/Файлы/Forms/РедактированиеТекстовогоФайла/Module.bsl @@ -23,7 +23,7 @@ КонецЕсли; Элементы.Текст.ТолькоПросмотр = Не РежимРедактирования; - Элементы.ПоказатьОтличия.Видимость = Не ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент(); + Элементы.ПоказатьОтличия.Видимость = ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент(); Элементы.ПоказатьОтличия.Доступность = РежимРедактирования; Элементы.Редактировать.Доступность = Не РежимРедактирования; Элементы.ЗакончитьРедактирование.Доступность = РежимРедактирования; @@ -47,7 +47,7 @@ ДанныеФайла.Версия); Если ЗначениеЗаполнено(КодировкаТекстаФайла) Тогда - СписокКодировок = РаботаСФайламиСлужебный.ПолучитьСписокКодировок(); + СписокКодировок = РаботаСФайламиСлужебный.Кодировки(); ЭлементСписка = СписокКодировок.НайтиПоЗначению(КодировкаТекстаФайла); Если ЭлементСписка = Неопределено Тогда КодировкаПредставление = КодировкаТекстаФайла; @@ -105,20 +105,31 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) - Если Модифицированность Тогда - Отказ = Истина; - ИмяИРасширение = ОбщегоНазначенияКлиентСервер.ПолучитьИмяСРасширением( - ДанныеФайла.ПолноеНаименованиеВерсии, - ДанныеФайла.Расширение); - ТекстВопроса = СтрЗаменить(НСтр("ru ='Файл ""%1"" был изменен.'"), "%1", ИмяИРасширение); - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("ТекстВопроса", ТекстВопроса); - Обработчик = Новый ОписаниеОповещения("ПередЗакрытиемПослеОтветаНаВопросПриВыходеИзТекстовогоРедактора", ЭтотОбъект); - ОткрытьФорму("Справочник.Файлы.Форма.ВопросПриВыходеИзТекстовогоРедактора", ПараметрыФормы, ЭтотОбъект, , , , Обработчик); + Если Не Модифицированность Тогда + Возврат; КонецЕсли; + Отказ = Истина; + + ИмяИРасширение = ОбщегоНазначенияКлиентСервер.ПолучитьИмяСРасширением( + ДанныеФайла.ПолноеНаименованиеВерсии, + ДанныеФайла.Расширение); + + Если ЗавершениеРаботы Тогда + ТекстПредупреждения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru ='Изменения в файле ""%1"" будут потеряны.'"), ИмяИРасширение); + Возврат; + КонецЕсли; + + ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru ='Файл ""%1"" был изменен.'"), + ИмяИРасширение); + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("ТекстВопроса", ТекстВопроса); + Обработчик = Новый ОписаниеОповещения("ПередЗакрытиемПослеОтветаНаВопросПриВыходеИзТекстовогоРедактора", ЭтотОбъект); + ОткрытьФорму("Справочник.Файлы.Форма.ВопросПриВыходеИзТекстовогоРедактора", ПараметрыФормы, ЭтотОбъект, , , , Обработчик); + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/Catalogs/Файлы/Forms/РедактируемыеФайлы/Form.form b/SSL/src/Catalogs/Файлы/Forms/РедактируемыеФайлы/Form.form index aa91dd26c..f802a3a22 100644 --- a/SSL/src/Catalogs/Файлы/Forms/РедактируемыеФайлы/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/РедактируемыеФайлы/Form.form @@ -16,7 +16,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 126 @@ -1144,7 +1143,6 @@ true true - 40 true true 10 @@ -1318,8 +1316,11 @@ OnCreateAtServer ПриСозданииНаСервере + + OnClose + ПриЗакрытии + Refresh - 8 DontBlock true true @@ -1345,6 +1346,9 @@ true + + Список.Code + Список.Ref @@ -1421,13 +1425,33 @@ true + + КоличествоЗанятыхФайлов + + <key>ru</key> + <value>Количество занятых файлов</value> + + 4 + + Number + + 10 + + + + true + + + true + + ЗапрещенныеРасширения <key>ru</key> <value>Запрещенные расширения</value> - 4 + 5 ValueList diff --git a/SSL/src/Catalogs/Файлы/Forms/РедактируемыеФайлы/Module.bsl b/SSL/src/Catalogs/Файлы/Forms/РедактируемыеФайлы/Module.bsl index c73287b51..387e39d74 100644 --- a/SSL/src/Catalogs/Файлы/Forms/РедактируемыеФайлы/Module.bsl +++ b/SSL/src/Catalogs/Файлы/Forms/РедактируемыеФайлы/Module.bsl @@ -7,10 +7,6 @@ Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; - - Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка) Тогда - Возврат; - КонецЕсли; Пользователь = Пользователи.ТекущийПользователь(); Список.Параметры.УстановитьЗначениеПараметра("Редактирует", Пользователь); @@ -37,6 +33,26 @@ КонецПроцедуры +&НаКлиенте +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + ПриЗакрытииНаСервере(); + СтандартныеПодсистемыКлиент.УстановитьПараметрКлиента( + "КоличествоЗанятыхФайлов", КоличествоЗанятыхФайлов); + +КонецПроцедуры + +&НаСервере +Процедура ПриЗакрытииНаСервере() + + КоличествоЗанятыхФайлов = РаботаСФайламиСлужебныйВызовСервера.ПолучитьКоличествоЗанятыхФайлов(, + ПользователиКлиентСервер.АвторизованныйПользователь()); + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыСписок diff --git a/SSL/src/Catalogs/Файлы/Forms/РежимСозданияФайлаДляСохранитьКак/Form.form b/SSL/src/Catalogs/Файлы/Forms/РежимСозданияФайлаДляСохранитьКак/Form.form index 2446d5f19..f9298b29f 100644 --- a/SSL/src/Catalogs/Файлы/Forms/РежимСозданияФайлаДляСохранитьКак/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/РежимСозданияФайлаДляСохранитьКак/Form.form @@ -34,12 +34,8 @@ 20 true - 4 true - 3 true - false - false false @@ -122,47 +118,16 @@ ГруппаФайл 13 - - ДекорацияПодписьФайла - 15 - - <key>ru</key> - <value>Файл в рабочем каталоге:</value> - - true - true - - true - - - ДекорацияПодписьФайлаExtendedTooltip - 27 - Label - true - true - - Left - - - - ДекорацияПодписьФайлаКонтекстноеМеню - 16 - true - - Label - true - true - false - - Left - - ГруппаФайлИКнопка 17 Файл 8 + + <key>ru</key> + <value>Файл в рабочем каталоге</value> + true true @@ -171,7 +136,7 @@ Файл - None + Top ФайлExtendedTooltip 29 diff --git a/SSL/src/Catalogs/Файлы/Forms/СписокЗанятыхСВопросом/Form.form b/SSL/src/Catalogs/Файлы/Forms/СписокЗанятыхСВопросом/Form.form index 6764b0bd5..f880cdff0 100644 --- a/SSL/src/Catalogs/Файлы/Forms/СписокЗанятыхСВопросом/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/СписокЗанятыхСВопросом/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 112 @@ -187,7 +186,6 @@ Left true - true true @@ -1143,7 +1141,6 @@ OnCreateAtServer ПриСозданииНаСервере - 60 LockOwner true true @@ -1507,6 +1504,26 @@ CatalogRef.Пользователи + + ЗаголовокКнопкиДа + + String + + + + + ЗаголовокКнопкиНет + + String + + + + + ЗавершениеРаботыПрограммы + + Boolean + + diff --git a/SSL/src/Catalogs/Файлы/Forms/СписокЗанятыхСВопросом/Module.bsl b/SSL/src/Catalogs/Файлы/Forms/СписокЗанятыхСВопросом/Module.bsl index 9223ca5aa..71d7fd559 100644 --- a/SSL/src/Catalogs/Файлы/Forms/СписокЗанятыхСВопросом/Module.bsl +++ b/SSL/src/Catalogs/Файлы/Forms/СписокЗанятыхСВопросом/Module.bsl @@ -12,14 +12,12 @@ СообщениеЗаголовок = Параметры.СообщениеЗаголовок; Заголовок = Параметры.Заголовок; - ЗаголовокКнопкиДа = Неопределено; - Если Параметры.Свойство("ЗаголовокКнопкиДа", ЗаголовокКнопкиДа) Тогда - Элементы.Да.Заголовок = ЗаголовокКнопкиДа; + Если Не ПустаяСтрока(Параметры.ЗаголовокКнопкиДа) Тогда + Элементы.Да.Заголовок = Параметры.ЗаголовокКнопкиДа; КонецЕсли; - ЗаголовокКнопкиНет = Неопределено; - Если Параметры.Свойство("ЗаголовокКнопкиНет", ЗаголовокКнопкиНет) Тогда - Элементы.Нет.Заголовок = ЗаголовокКнопкиНет; + Если Не ПустаяСтрока(Параметры.ЗаголовокКнопкиНет) Тогда + Элементы.Нет.Заголовок = Параметры.ЗаголовокКнопкиНет; КонецЕсли; Если ЗначениеЗаполнено(Параметры.ВладелецФайла) Тогда @@ -32,9 +30,8 @@ Список, "Редактирует", Параметры.Редактирует); КонецЕсли; - ЗавершениеРаботыПрограммы = Неопределено; - Если Параметры.Свойство("ЗавершениеРаботыПрограммы", ЗавершениеРаботыПрограммы) Тогда - Ответ = ЗавершениеРаботыПрограммы; + Если Параметры.ЗавершениеРаботыПрограммы Тогда + Ответ = Параметры.ЗавершениеРаботыПрограммы; Если Ответ = Истина Тогда Элементы.ПоказыватьЗанятыеФайлыПриЗавершенииРаботы.Видимость = Ответ; РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс; @@ -77,7 +74,7 @@ ОткрытьФорму("ОбщаяФорма.ПредупреждениеБезопасности", ПараметрыФормы, , , , , Оповещение); Возврат; КонецЕсли; - + ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаДляОткрытия(ВыбраннаяСтрока, УникальныйИдентификатор); РаботаСФайламиСлужебныйКлиент.ОткрытьФайлСОповещением(Неопределено, ДанныеФайла); diff --git a/SSL/src/Catalogs/Файлы/Forms/ФайлСуществует/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФайлСуществует/Form.form index b0108f879..acf554c6d 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФайлСуществует/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФайлСуществует/Form.form @@ -194,6 +194,14 @@ Right + + OnOpen + ПриОткрытии + + + OnCreateAtServer + ПриСозданииНаСервере + Cancel Close Help @@ -246,6 +254,24 @@ true + + БазовоеДействие + + <key>ru</key> + <value>Базовое действие</value> + + 3 + + String + + + + true + + + true + + Перезаписать @@ -312,6 +338,26 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> + <parameters> + <name>ТекстСообщения</name> + <valueType> + <types>String</types> + <stringQualifiers/> + </valueType> + </parameters> + <parameters> + <name>ПрименитьДляВсех</name> + <valueType> + <types>Boolean</types> + </valueType> + </parameters> + <parameters> + <name>БазовоеДействие</name> + <valueType> + <types>String</types> + <stringQualifiers/> + </valueType> + </parameters> <commandInterface> <navigationPanel/> <commandBar/> diff --git a/SSL/src/Catalogs/Файлы/Forms/ФайлСуществует/Module.bsl b/SSL/src/Catalogs/Файлы/Forms/ФайлСуществует/Module.bsl index 0ffc61f04..aa652d167 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФайлСуществует/Module.bsl +++ b/SSL/src/Catalogs/Файлы/Forms/ФайлСуществует/Module.bsl @@ -1,3 +1,22 @@ +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + ПрименитьДляВсех = Параметры.ПрименитьДляВсех; + ТекстСообщения = Параметры.ТекстСообщения; + БазовоеДействие = Параметры.БазовоеДействие; + +КонецПроцедуры + +&НаКлиенте +Процедура ПриОткрытии(Отказ) + + УстановитьКнопкуУмолчания(БазовоеДействие); + +КонецПроцедуры + +#КонецОбласти #Область ОбработчикиКомандФормы @@ -32,27 +51,18 @@ #Область СлужебныеПроцедурыИФункции -&НаКлиенте -Процедура УстановитьПараметрыИспользования(СтруктураПараметров) Экспорт - - ТекстСообщения = СтруктураПараметров.ТекстСообщения; - ПрименитьДляВсех = СтруктураПараметров.ПрименитьДляВсех; - УстановитьКнопкуУмолчания(СтруктураПараметров.БазовоеДействие); - -КонецПроцедуры - &НаКлиенте Процедура УстановитьКнопкуУмолчания(ДействиеПоУмолчанию) Если ДействиеПоУмолчанию = "" - Или ДействиеПоУмолчанию = КодВозвратаДиалога.Пропустить Тогда + Или ДействиеПоУмолчанию = "Пропустить" Тогда Элементы.Пропустить.КнопкаПоУмолчанию = Истина; - ИначеЕсли ДействиеПоУмолчанию = КодВозвратаДиалога.Да Тогда + ИначеЕсли ДействиеПоУмолчанию = "Да" Тогда Элементы.Перезаписать.КнопкаПоУмолчанию = Истина; - ИначеЕсли ДействиеПоУмолчанию = КодВозвратаДиалога.Прервать Тогда + ИначеЕсли ДействиеПоУмолчанию = "Прервать" Тогда Элементы.Прервать.КнопкаПоУмолчанию = Истина; КонецЕсли; diff --git a/SSL/src/Catalogs/Файлы/Forms/Файлы/Form.form b/SSL/src/Catalogs/Файлы/Forms/Файлы/Form.form index 3d5dc4d63..be43c87a4 100644 --- a/SSL/src/Catalogs/Файлы/Forms/Файлы/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/Файлы/Form.form @@ -16,7 +16,6 @@ <key>ru</key> <value>Группа пользовательских настроек</value> - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 350 @@ -2135,9 +2134,7 @@ 409 true - 5 true - 2 true @@ -2174,12 +2171,10 @@ true Label - true true - true + Center Left - Center true @@ -2191,11 +2186,6 @@ ru Группа пояснение облачного сервиса - - ru - Группа пояснение облачного сервиса - - false ГруппаПояснениеОблачногоСервисаРасширеннаяПодсказка 402 @@ -3844,11 +3834,6 @@ true true - - ru - Группа поиск - - false ГруппаПоискExtendedTooltip 225 @@ -4034,7 +4019,6 @@ Create Delete Refresh - 90 DontBlock Use true @@ -4496,6 +4480,26 @@ true + + КоличествоЗанятыхФайлов + + <key>ru</key> + <value>Количество занятых файлов</value> + + 19 + + Number + + 10 + + + + true + + + true + + ЗапрещенныеРасширения diff --git a/SSL/src/Catalogs/Файлы/Forms/Файлы/Module.bsl b/SSL/src/Catalogs/Файлы/Forms/Файлы/Module.bsl index ee6b14067..2cc164abf 100644 --- a/SSL/src/Catalogs/Файлы/Forms/Файлы/Module.bsl +++ b/SSL/src/Catalogs/Файлы/Forms/Файлы/Module.bsl @@ -99,18 +99,23 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() - Если ПапкаПриОткрытии <> Элементы.Папки.ТекущаяСтрока Тогда - ПриЗакрытииНаСервере(); +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если ЗавершениеРаботы Тогда + Возврат; КонецЕсли; + ПриЗакрытииНаСервере(); + СтандартныеПодсистемыКлиент.УстановитьПараметрКлиента( + "КоличествоЗанятыхФайлов", КоличествоЗанятыхФайлов); + КонецПроцедуры &НаСервере Процедура ПриЗакрытииНаСервере() - ОбщегоНазначения.ХранилищеНастроекДанныхФормСохранить( - "Файлы", - "ТекущаяПапка", - Элементы.Папки.ТекущаяСтрока); + + КоличествоЗанятыхФайлов = РаботаСФайламиСлужебныйВызовСервера.ПолучитьКоличествоЗанятыхФайлов(, + ПользователиКлиентСервер.АвторизованныйПользователь()); + КонецПроцедуры &НаКлиенте @@ -935,6 +940,10 @@ УстановитьВидимостьПредпросмотра(Предпросмотр); СохранитьВариантПредпросмотра("Файлы", Предпросмотр); + #Если ВебКлиент Тогда + ОбновитьПредпросмотр(); + #КонецЕсли + КонецПроцедуры &НаКлиенте @@ -1331,7 +1340,7 @@ Если Элементы.Папки.ТекущаяСтрока <> Список.Параметры.Элементы.Найти("Владелец").Значение Тогда // Обновляется правый список и доступность команд по настройкам прав. // Вызов процедуры обработчика ПриАктивизацииСтроки таблицы Список выполняется платформой. - Список.Параметры.УстановитьЗначениеПараметра("Владелец", Элементы.Папки.ТекущаяСтрока); + ОбновитьИСохранитьПараметрыСпискаФайлов(); Иначе // Вызов процедуры обработчика ПриАктивизацииСтроки таблицы Список выполняется программно. ПодключитьОбработчикОжидания("ОбработкаОжиданияУстановитьДоступностьФайловыхКоманд", 0.1, Истина); @@ -1458,55 +1467,55 @@ РедактируетДругой = ЗначениеЗаполнено(Редактирует) И НЕ РедактируетТекущийПользователь; - Элементы.ФормаЗакончитьРедактирование.Доступность = ИзменениеФайлов И РедактируетТекущийПользователь; + Элементы.ФормаЗакончитьРедактирование.Доступность = ИзменениеФайлов И РедактируетТекущийПользователь; Элементы.СписокКонтекстноеМенюЗакончитьРедактирование.Доступность = ИзменениеФайлов И РедактируетТекущийПользователь; - Элементы.ФормаСохранитьИзменения.Доступность = ИзменениеФайлов И РедактируетТекущийПользователь; + Элементы.ФормаСохранитьИзменения.Доступность = ИзменениеФайлов И РедактируетТекущийПользователь; Элементы.СписокКонтекстноеМенюСохранитьИзменения.Доступность = ИзменениеФайлов И РедактируетТекущийПользователь; - Элементы.ФормаОсвободить.Доступность = ИзменениеФайлов И ЗначениеЗаполнено(Редактирует); + Элементы.ФормаОсвободить.Доступность = ИзменениеФайлов И ЗначениеЗаполнено(Редактирует); Элементы.СписокКонтекстноеМенюОсвободить.Доступность = ИзменениеФайлов И ЗначениеЗаполнено(Редактирует); - Элементы.ФормаЗанять.Доступность = ИзменениеФайлов И Не ЗначениеЗаполнено(Редактирует) И НЕ ПодписанЭП; + Элементы.ФормаЗанять.Доступность = ИзменениеФайлов И Не ЗначениеЗаполнено(Редактирует) И НЕ ПодписанЭП; Элементы.СписокКонтекстноеМенюЗанять.Доступность = ИзменениеФайлов И Не ЗначениеЗаполнено(Редактирует) И НЕ ПодписанЭП; - Элементы.ФормаРедактировать.Доступность = ИзменениеФайлов И НЕ ПодписанЭП И НЕ РедактируетДругой; + Элементы.ФормаРедактировать.Доступность = ИзменениеФайлов И НЕ ПодписанЭП И НЕ РедактируетДругой; Элементы.СписокКонтекстноеМенюРедактировать.Доступность = ИзменениеФайлов И НЕ ПодписанЭП И НЕ РедактируетДругой; - Элементы.ФормаПеренестиВПапку.Доступность = ИзменениеФайлов И НЕ ПодписанЭП; + Элементы.ФормаПеренестиВПапку.Доступность = ИзменениеФайлов И НЕ ПодписанЭП; Элементы.СписокКонтекстноеМенюПеренестиВПапку.Доступность = ИзменениеФайлов И НЕ ПодписанЭП; - Элементы.ФормаПодписать.Доступность = ИзменениеФайлов И Не ЗначениеЗаполнено(Редактирует); + Элементы.ФормаПодписать.Доступность = ИзменениеФайлов И Не ЗначениеЗаполнено(Редактирует); Элементы.СписокКонтекстноеМенюПодписать.Доступность = ИзменениеФайлов И Не ЗначениеЗаполнено(Редактирует); - Элементы.ФормаСохранитьВместеСПодписью.Доступность = ПодписанЭП; + Элементы.ФормаСохранитьВместеСПодписью.Доступность = ПодписанЭП; Элементы.СписокКонтекстноеМенюСохранитьВместеСПодписью.Доступность = ПодписанЭП; - Элементы.ФормаЗашифровать.Доступность = ИзменениеФайлов И Не ЗначениеЗаполнено(Редактирует) И НЕ Зашифрован; + Элементы.ФормаЗашифровать.Доступность = ИзменениеФайлов И Не ЗначениеЗаполнено(Редактирует) И НЕ Зашифрован; Элементы.СписокКонтекстноеМенюЗашифровать.Доступность = ИзменениеФайлов И Не ЗначениеЗаполнено(Редактирует) И НЕ Зашифрован; - Элементы.ФормаРасшифровать.Доступность = ИзменениеФайлов И Зашифрован; + Элементы.ФормаРасшифровать.Доступность = ИзменениеФайлов И Зашифрован; Элементы.СписокКонтекстноеМенюРасшифровать.Доступность = ИзменениеФайлов И Зашифрован; - Элементы.ФормаДобавитьПодписьИзФайла.Доступность = ИзменениеФайлов И Не ЗначениеЗаполнено(Редактирует); - Элементы.СписокКонтекстноеМенюДобавитьПодписьИзФайла.Доступность = ИзменениеФайлов И ЗначениеЗаполнено(Редактирует); + Элементы.ФормаДобавитьПодписьИзФайла.Доступность = ИзменениеФайлов И Не ЗначениеЗаполнено(Редактирует); + Элементы.СписокКонтекстноеМенюДобавитьПодписьИзФайла.Доступность = ИзменениеФайлов И Не ЗначениеЗаполнено(Редактирует); - Элементы.ФормаОбновитьИзФайлаНаДиске.Доступность = ИзменениеФайлов И Не ПодписанЭП И Не ФайлыРедактируютсяВОблачномСервисе; + Элементы.ФормаОбновитьИзФайлаНаДиске.Доступность = ИзменениеФайлов И Не ПодписанЭП И Не ФайлыРедактируютсяВОблачномСервисе; Элементы.СписокКонтекстноеМенюОбновитьИзФайлаНаДиске.Доступность = ИзменениеФайлов И Не ПодписанЭП И Не ФайлыРедактируютсяВОблачномСервисе; - Элементы.ФормаСохранитьКак.Доступность = Истина; + Элементы.ФормаСохранитьКак.Доступность = Истина; Элементы.СписокКонтекстноеМенюСохранитьКак.Доступность = Истина; - Элементы.ФормаОткрытьКаталогФайла.Доступность = Истина; + Элементы.ФормаОткрытьКаталогФайла.Доступность = Истина; Элементы.СписокКонтекстноеМенюОткрытьКаталогФайла.Доступность = Истина; - Элементы.ФормаОткрыть.Доступность = Истина; + Элементы.ФормаОткрыть.Доступность = Истина; Элементы.СписокКонтекстноеМенюОткрыть.Доступность = Истина; - Элементы.Печать.Доступность = Истина; + Элементы.Печать.Доступность = Истина; Элементы.СписокКонтекстноеМенюПечать.Доступность = Истина; - Элементы.Отправить.Доступность = Истина; + Элементы.Отправить.Доступность = Истина; Элементы.СписокКонтекстноеМенюОтправить.Доступность = Истина; КонецПроцедуры @@ -1708,4 +1717,16 @@ КонецФункции +&НаСервере +Процедура ОбновитьИСохранитьПараметрыСпискаФайлов() + + ОбщегоНазначения.ХранилищеНастроекДанныхФормСохранить( + "Файлы", + "ТекущаяПапка", + Элементы.Папки.ТекущаяСтрока); + + Список.Параметры.УстановитьЗначениеПараметра("Владелец", Элементы.Папки.ТекущаяСтрока); + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/Catalogs/Файлы/Forms/ФайлыВОсновномРабочемКаталоге/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФайлыВОсновномРабочемКаталоге/Form.form index d616dbf45..4ce73bb38 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФайлыВОсновномРабочемКаталоге/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФайлыВОсновномРабочемКаталоге/Form.form @@ -980,10 +980,8 @@ </contextMenu> <changeRowSet>true</changeRowSet> <changeRowOrder>true</changeRowOrder> - <width>80</width> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <heightInTableRows>11</heightInTableRows> <autoMaxRowsCount>true</autoMaxRowsCount> <selectionMode>MultiRow</selectionMode> <rowSelectionMode>Row</rowSelectionMode> @@ -1024,8 +1022,6 @@ <event>OnCreateAtServer</event> <name>ПриСозданииНаСервере</name> </handlers> - <width>85</width> - <height>10</height> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoTitle>true</autoTitle> diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаВозвратаФайла/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаВозвратаФайла/Form.form index 349826cbf..aee10d433 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаВозвратаФайла/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаВозвратаФайла/Form.form @@ -274,7 +274,6 @@ <event>OnCreateAtServer</event> <name>ПриСозданииНаСервере</name> </handlers> - <width>30</width> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoUrl>true</autoUrl> @@ -387,6 +386,25 @@ </valueType> <keyParameter>true</keyParameter> </parameters> + <parameters> + <name>КомментарийКВерсии</name> + <valueType> + <types>String</types> + <stringQualifiers/> + </valueType> + </parameters> + <parameters> + <name>СоздатьНовуюВерсию</name> + <valueType> + <types>Boolean</types> + </valueType> + </parameters> + <parameters> + <name>СоздатьНовуюВерсиюДоступность</name> + <valueType> + <types>Boolean</types> + </valueType> + </parameters> <commandInterface> <navigationPanel/> <commandBar/> diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаВозвратаФайла/Module.bsl b/SSL/src/Catalogs/Файлы/Forms/ФормаВозвратаФайла/Module.bsl index a9ea1076c..7319e75ba 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаВозвратаФайла/Module.bsl +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаВозвратаФайла/Module.bsl @@ -9,6 +9,9 @@ КонецЕсли; Файл = Параметры.ФайлСсылка; + КомментарийКВерсии = Параметры.КомментарийКВерсии; + СоздатьНовуюВерсию = Параметры.СоздатьНовуюВерсию; + Элементы.СоздатьНовуюВерсию.Доступность = Параметры.СоздатьНовуюВерсиюДоступность; Если Файл.ХранитьВерсии Тогда СоздатьНовуюВерсию = Истина; @@ -45,19 +48,4 @@ КонецПроцедуры -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -&НаКлиенте -Процедура УстановитьПараметрыИспользования(СтруктураПараметров) Экспорт - - Параметры.ФайлСсылка = СтруктураПараметров.ФайлСсылка; - КомментарийКВерсии = СтруктураПараметров.КомментарийКВерсии; - Файл = СтруктураПараметров.ФайлСсылка; - СоздатьНовуюВерсию = СтруктураПараметров.СоздатьНовуюВерсию; - Элементы.СоздатьНовуюВерсию.Доступность = СтруктураПараметров.СоздатьНовуюВерсиюДоступность; - -КонецПроцедуры - -#КонецОбласти +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаВопроса/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаВопроса/Form.form index b985f63dc..9e7b070ee 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаВопроса/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаВопроса/Form.form @@ -382,7 +382,6 @@ <event>OnCreateAtServer</event> <name>ПриСозданииНаСервере</name> </handlers> - <width>55</width> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoUrl>true</autoUrl> diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаВыбора/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаВыбора/Form.form index aec08fbfe..bca1ca2db 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаВыбора/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаВыбора/Form.form @@ -16,7 +16,6 @@ <key>ru</key> <value>Группа пользовательских настроек</value> - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 86 @@ -1156,7 +1155,6 @@ true - 10 ГруппаСпискиExtendedTooltip 49 @@ -1333,11 +1331,19 @@ Auto - Параметр1 + ВладелецФайла + + + + ВыборШаблона - CatalogRef.ПапкиФайлов + Boolean + + ТекущаяСтрока + + diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаВыбора/Module.bsl b/SSL/src/Catalogs/Файлы/Forms/ФормаВыбора/Module.bsl index fd9fd64b0..9f26ec100 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаВыбора/Module.bsl +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаВыбора/Module.bsl @@ -8,7 +8,7 @@ Возврат; КонецЕсли; - Если Параметры.Свойство("ВладелецФайла") Тогда + Если ЗначениеЗаполнено(Параметры.ВладелецФайла) Тогда Список.Параметры.УстановитьЗначениеПараметра( "Владелец", Параметры.ВладелецФайла); @@ -20,7 +20,7 @@ Элементы.Папки.Видимость = Ложь; КонецЕсли; Иначе - Если Параметры.Свойство("ВыборШаблона") И Параметры.ВыборШаблона Тогда + Если Параметры.ВыборШаблона Тогда ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( Папки, "Ссылка", Справочники.ПапкиФайлов.Шаблоны, @@ -34,7 +34,7 @@ Список.Параметры.УстановитьЗначениеПараметра("Владелец", Элементы.Папки.ТекущаяСтрока); КонецЕсли; - Если Параметры.Свойство("ТекущаяСтрока") Тогда + Если ЗначениеЗаполнено(Параметры.ТекущаяСтрока) Тогда Элементы.Папки.ТекущаяСтрока = Параметры.ТекущаяСтрока; КонецЕсли; diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаВыбораРежимаОткрытия/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаВыбораРежимаОткрытия/Form.form index 24f585495..01ad45b4d 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаВыбораРежимаОткрытия/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаВыбораРежимаОткрытия/Form.form @@ -118,9 +118,7 @@ 12 true - 2 true - 2 true false @@ -157,8 +155,7 @@ true Label - true - 2 + 1 true false @@ -329,7 +326,6 @@ OnCreateAtServer ПриСозданииНаСервере - 45 LockOwner true true diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаГрупповаяОперацияНаПапке/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаГрупповаяОперацияНаПапке/Form.form index 5d99086f7..9e561d675 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаГрупповаяОперацияНаПапке/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаГрупповаяОперацияНаПапке/Form.form @@ -137,7 +137,6 @@ OnCreateAtServer ПриСозданииНаСервере - 30 LockOwner true true diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаИмпортаПапки/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаИмпортаПапки/Form.form index c74fa4f0b..9b9cd7ca2 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаИмпортаПапки/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаИмпортаПапки/Form.form @@ -187,7 +187,6 @@ true Left - true 4 true true @@ -301,7 +300,6 @@ true Label - true true Left @@ -484,8 +482,6 @@ OnCreateAtServer ПриСозданииНаСервере - 60 - 15 LockOwner true true diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаИмпортаФайлов/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаИмпортаФайлов/Form.form index eb13df2ca..04bce92ea 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаИмпортаФайлов/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаИмпортаФайлов/Form.form @@ -46,7 +46,6 @@ Left true - true true @@ -80,6 +79,7 @@ 10 true true + Right UserCmds Style.ButtonTextColor @@ -97,10 +97,6 @@ true - - ru - Заголовок - ЗаголовокExtendedTooltip 39 @@ -450,7 +446,7 @@ true Left - true + 50 true true true @@ -534,7 +530,6 @@ true Left - true 2 true true @@ -614,7 +609,6 @@ true Label - true true Left diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаНапоминанияПередПоместитьФайл/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаНапоминанияПередПоместитьФайл/Form.form index e829aa046..698e509e5 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаНапоминанияПередПоместитьФайл/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаНапоминанияПередПоместитьФайл/Form.form @@ -37,7 +37,6 @@ true Label - true true Left diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаНового/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаНового/Form.form index 06570d063..efaceeea3 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаНового/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаНового/Form.form @@ -194,7 +194,6 @@ OnCreateAtServer ПриСозданииНаСервере - 30 LockOwner true true @@ -258,6 +257,16 @@ Boolean + + РежимСоздания + + Number + + 1 + true + + + diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаНового/Module.bsl b/SSL/src/Catalogs/Файлы/Forms/ФормаНового/Module.bsl index 7d4df702f..36612e82f 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаНового/Module.bsl +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаНового/Module.bsl @@ -8,6 +8,8 @@ Возврат; КонецЕсли; + РежимСоздания = Параметры.РежимСоздания; + Если Параметры.ДоступнаКомандаСканировать Тогда Если Параметры.ДоступнаКомандаСканировать Тогда Элементы.РежимСоздания.СписокВыбора.Добавить(3, НСтр("ru = 'Со сканера'")); @@ -25,13 +27,4 @@ Закрыть(РежимСоздания); КонецПроцедуры -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -&НаКлиенте -Процедура УстановитьПараметрыИспользования(РежимСозданияПараметр) Экспорт - РежимСоздания = РежимСозданияПараметр; -КонецПроцедуры - -#КонецОбласти +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаОтчета/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаОтчета/Form.form index b6916de76..933761ad2 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаОтчета/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаОтчета/Form.form @@ -146,7 +146,6 @@ OnCreateAtServer ПриСозданииНаСервере - 80 DontBlock true true diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаПеретаскивания/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаПеретаскивания/Form.form index 9b13e6100..b93d379a8 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаПеретаскивания/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаПеретаскивания/Form.form @@ -507,7 +507,6 @@ true Left - true 2 true true @@ -621,7 +620,6 @@ true Label - true true Left diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаПодбора/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаПодбора/Form.form index 1d550ec36..87b8e337d 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаПодбора/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаПодбора/Form.form @@ -16,7 +16,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 62 @@ -1037,9 +1036,13 @@ - Параметр1 + ВладелецФайла + + + + ВыборШаблона - CatalogRef.ПапкиФайлов + Boolean diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаПодбора/Module.bsl b/SSL/src/Catalogs/Файлы/Forms/ФормаПодбора/Module.bsl index be809df5e..4968481e8 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаПодбора/Module.bsl +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаПодбора/Module.bsl @@ -8,7 +8,7 @@ Возврат; КонецЕсли; - Если Параметры.Свойство("ВладелецФайла") Тогда + Если ЗначениеЗаполнено(Параметры.ВладелецФайла) Тогда Список.Параметры.УстановитьЗначениеПараметра( "Владелец", Параметры.ВладелецФайла); @@ -20,7 +20,7 @@ Элементы.Папки.Видимость = Ложь; КонецЕсли; Иначе - Если Параметры.Свойство("ВыборШаблона") И Параметры.ВыборШаблона Тогда + Если Параметры.ВыборШаблона Тогда ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( Папки, "Ссылка", Справочники.ПапкиФайлов.Шаблоны, diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаСписка/Form.form index ae7f91497..e97e824c3 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаСписка/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаСписка/Form.form @@ -16,7 +16,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 139 diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/Файлы/Forms/ФормаСписка/Module.bsl index becc569e9..9c139858c 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаСписка/Module.bsl @@ -72,7 +72,7 @@ ОткрытьФорму("ОбщаяФорма.ПредупреждениеБезопасности", ПараметрыФормы, , , , , Оповещение); Возврат; КонецЕсли; - + ДанныеФайла = РаботаСФайламиСлужебныйВызовСервера.ДанныеФайлаДляОткрытия(Элементы.Список.ТекущаяСтрока, УникальныйИдентификатор); РаботаСФайламиСлужебныйКлиент.ОткрытьФайлСОповещением(Неопределено, ДанныеФайла); diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаСпискаПрисоединенныхФайлов/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаСпискаПрисоединенныхФайлов/Form.form index 0a68a57be..c328e5afd 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаСпискаПрисоединенныхФайлов/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаСпискаПрисоединенныхФайлов/Form.form @@ -59,7 +59,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 228 @@ -1287,9 +1286,7 @@ 267 true - 5 true - 2 true @@ -1326,12 +1323,10 @@ true Label - true true - true + Center Left - Center true @@ -1343,11 +1338,6 @@ ru Группа пояснение облачного сервиса - - ru - Группа пояснение облачного сервиса - - false ГруппаПояснениеОблачногоСервисаРасширеннаяПодсказка 265 @@ -2800,7 +2790,6 @@ HierarchicalList true true - 1 true 10 true diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаСпискаПрисоединенныхФайлов/Module.bsl b/SSL/src/Catalogs/Файлы/Forms/ФормаСпискаПрисоединенныхФайлов/Module.bsl index 5647e39d5..86a3cdc8a 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаСпискаПрисоединенныхФайлов/Module.bsl +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаСпискаПрисоединенныхФайлов/Module.bsl @@ -396,7 +396,7 @@ Возврат; #КонецЕсли - МассивИменФайлов = ФайловыеФункцииСлужебныйКлиент.ПолучитьСписокИмпортируемыхФайлов(); + МассивИменФайлов = ФайловыеФункцииСлужебныйКлиент.ИмпортируемыеФайлы(); Если МассивИменФайлов.Количество() = 0 Тогда Возврат; @@ -578,6 +578,10 @@ Элементы.Предпросмотр.Пометка = Предпросмотр; УстановитьВидимостьПредпросмотра(Предпросмотр); СохранитьВариантПредпросмотра(ТипСправочникаСФайлами, Предпросмотр); + + #Если ВебКлиент Тогда + ОбновитьПредпросмотр(); + #КонецЕсли КонецПроцедуры diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаЭкспортаПапки/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаЭкспортаПапки/Form.form index 3892b7b84..8870085d0 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаЭкспортаПапки/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаЭкспортаПапки/Form.form @@ -12,7 +12,7 @@ 2 <key>ru</key> - <value>Укажите каталог, в который будет производиться копирование файлов</value> + <value>Укажите папку, в которую будет производиться сохранение</value> true true @@ -23,10 +23,6 @@ ПапкаДляЭкспорта Top - - OnChange - ПапкаДляЭкспортаПриИзменении - ПапкаДляЭкспортаExtendedTooltip 36 @@ -57,10 +53,10 @@ Opening ПапкаДляЭкспортаОткрытие - true + 50 true true - false + true true true true @@ -99,7 +95,7 @@ КоманднаяПанель 30 - Выгрузить + СохранитьПапку 33 true true @@ -108,7 +104,7 @@ false - ВыгрузитьExtendedTooltip + СохранитьПапкуРасширеннаяПодсказка 38 Label true @@ -223,7 +219,6 @@ OnCreateAtServer ПриСозданииНаСервере - 50 LockOwner true true @@ -392,24 +387,6 @@ - - ИмяРанееВыбраннойПапки - - <key>ru</key> - <value>Имя ранее выбранной папки</value> - - 3 - - String - - - - true - - - true - - ПапкаДляЭкспорта @@ -463,24 +440,6 @@ <common>true</common> </edit> </attributes> - <attributes> - <name>ПапкаДляЭкспортаПолная</name> - <title> - <key>ru</key> - <value>Папка для экспорта</value> - - 7 - - String - - - - true - - - true - - СохранитьПапку diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаЭкспортаПапки/Module.bsl b/SSL/src/Catalogs/Файлы/Forms/ФормаЭкспортаПапки/Module.bsl index 6be46b0b8..e9a49ca1a 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаЭкспортаПапки/Module.bsl +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаЭкспортаПапки/Module.bsl @@ -27,7 +27,7 @@ Процедура ПриОткрытии(Отказ) #Если ВебКлиент Тогда - ПоказатьПредупреждение(, НСтр("ru = 'В Веб-клиенте экспорт каталогов не поддерживается.'")); + ПоказатьПредупреждение(, НСтр("ru = 'В Веб-клиенте экспорт папок не поддерживается.'")); Отказ = Истина; Возврат; #КонецЕсли @@ -36,10 +36,6 @@ // папку, используемую для выгрузки последний раз. ПапкаДляЭкспорта = ФайловыеФункцииСлужебныйКлиент.КаталогВыгрузки(); - ПапкаДляЭкспортаПолная = ПапкаДляЭкспорта - + Строка(ЧтоСохраняем) - + ПолучитьРазделительПути(); - КонецПроцедуры #КонецОбласти @@ -48,58 +44,32 @@ &НаКлиенте Процедура ПапкаДляЭкспортаОткрытие(Элемент, СтандартнаяОбработка) - #Если ВебКлиент Тогда - Возврат; - #КонецЕсли - // Здесь откроем папку для просмотра - вдруг что-то сделать понадобиться. СтандартнаяОбработка = Ложь; - Если Не ПустаяСтрока(ПапкаДляЭкспорта) Тогда - Файл = Новый Файл(ПапкаДляЭкспорта); + Если Не ПустаяСтрока(Элемент.ТекстРедактирования) Тогда + Файл = Новый Файл(Элемент.ТекстРедактирования); Если Не Файл.Существует() Тогда - ТекстПредупреждения = НСтр("ru = 'Невозможно открыть папку выгрузки. - |Возможно, папка еще не создана.'"); + ТекстПредупреждения = НСтр("ru = 'Невозможно открыть папку, так как она не существует.'"); ПоказатьПредупреждение(, ТекстПредупреждения); Возврат; КонецЕсли; - ЗапуститьПриложение(ПапкаДляЭкспорта); + ЗапуститьПриложение(Элемент.ТекстРедактирования); КонецЕсли; КонецПроцедуры -&НаКлиенте -Процедура ПапкаДляЭкспортаПриИзменении(Элемент) - - ПапкаДляЭкспорта = ФайловыеФункцииСлужебныйКлиент.НормализоватьКаталог( - ПапкаДляЭкспорта); - - ПапкаДляЭкспортаПолная = ФайловыеФункцииСлужебныйКлиент.НормализоватьКаталог( - ПапкаДляЭкспортаПолная); - -КонецПроцедуры - &НаКлиенте Процедура ПапкаДляЭкспортаНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) - #Если ВебКлиент Тогда - Возврат; - #КонецЕсли // Открытие окна выбора папки сохранения. СтандартнаяОбработка = Ложь; ВыборФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.ВыборКаталога); ВыборФайла.МножественныйВыбор = Ложь; - ВыборФайла.Каталог = ПапкаДляЭкспорта; + ВыборФайла.Каталог = Элемент.ТекстРедактирования; Если ВыборФайла.Выбрать() Тогда - - ПапкаДляЭкспорта = ФайловыеФункцииСлужебныйКлиент.НормализоватьКаталог( - ВыборФайла.Каталог); - - ПапкаДляЭкспортаПолная = ПапкаДляЭкспорта - + Строка(ЧтоСохраняем) - + ПолучитьРазделительПути(); - + ПапкаДляЭкспорта = ВыборФайла.Каталог + ПолучитьРазделительПути(); КонецЕсли; - + КонецПроцедуры #КонецОбласти @@ -108,27 +78,42 @@ &НаКлиенте Процедура СохранитьПапку() - #Если ВебКлиент Тогда - Возврат; - #КонецЕсли // Проверим - каталог выгрузки существует? если нет - создадим. - КаталогВыгрузки = Новый Файл(ПапкаДляЭкспортаПолная); + КаталогВыгрузки = Новый Файл(ПапкаДляЭкспорта); Если Не КаталогВыгрузки.Существует() Тогда - + ПоказатьПредупреждение(, СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Папка ""%1"" не найдена. + |Выберите другую папку.'"), + ПапкаДляЭкспорта)); + Возврат; + КонецЕсли; + + ПапкаДляЭкспортаПолная = ПапкаДляЭкспорта + Строка(ЧтоСохраняем) + ПолучитьРазделительПути(); + + // Если выгружаемая папка не существует, ее следует создать. + КаталогВыгрузки = Новый Файл(ПапкаДляЭкспортаПолная); + Если Не КаталогВыгрузки.Существует() Тогда ТекстОшибки = ""; Попытка СоздатьКаталог(ПапкаДляЭкспортаПолная); + Если Не КаталогВыгрузки.Существует() Тогда + ВызватьИсключение НСтр("ru = 'После успешного создания подпапка не найдена.'"); + КонецЕсли; Исключение - ТекстОшибки = НСтр("ru = 'Не удалось создать папку выгрузки:'"); - ТекстОшибки = ТекстОшибки + Символы.ПС + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); + ИнформацияОбОшибке = ИнформацияОбОшибке(); + ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось создать подпапку ""%1"" в папке ""%2"" по причине: + |%3'"), + Строка(ЧтоСохраняем), + ПапкаДляЭкспорта, + КраткоеПредставлениеОшибки(ИнформацияОбОшибке)); КонецПопытки; Если ТекстОшибки <> "" Тогда ПоказатьПредупреждение(, ТекстОшибки); Возврат; КонецЕсли; - КонецЕсли; Состояние(СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( @@ -140,19 +125,19 @@ СформироватьДеревоФайлов(ЧтоСохраняем); // А теперь начнем выгрузку - Обработчик = Новый ОписаниеОповещения("ВыгрузитьЗавершение", ЭтотОбъект); + Обработчик = Новый ОписаниеОповещения("СохранитьПапкуЗавершение", ЭтотОбъект); ОбойтиДеревоФайлов(Обработчик, ДеревоФайлов, ПапкаДляЭкспортаПолная, ЧтоСохраняем, Неопределено); КонецПроцедуры &НаКлиенте -Процедура ВыгрузитьЗавершение(Результат, ПараметрыВыполнения) Экспорт +Процедура СохранитьПапкуЗавершение(Результат, ПараметрыВыполнения) Экспорт Если Результат.Успех = Истина Тогда СохраняемыйПуть = ПапкаДляЭкспорта; ОбщегоНазначенияВызовСервера.ХранилищеОбщихНастроекСохранить("ИмяПапкиВыгрузки", "ИмяПапкиВыгрузки", СохраняемыйПуть); Состояние(СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Успешно завершен экспорт папки ""%1"" - |в каталог на диске ""%2"".'"), + |в папку на диске ""%2"".'"), Строка(ЧтоСохраняем), Строка(ПапкаДляЭкспорта) ) ); Закрыть(); @@ -166,70 +151,66 @@ &НаСервере Процедура СформироватьДеревоФайлов(ПапкаРодитель) Запрос = Новый Запрос; - Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ - | Файлы.ВладелецФайла КАК Папка, - | Файлы.ВладелецФайла.Наименование КАК НаименованиеПапки, - | Файлы.ТекущаяВерсия, - | Файлы.ПолноеНаименование КАК ПолноеНаименование, - | Файлы.ТекущаяВерсия.Расширение КАК Расширение, - | Файлы.ТекущаяВерсия.Размер КАК Размер, - | Файлы.ТекущаяВерсия.ДатаМодификацииУниверсальная КАК ДатаМодификацииУниверсальная, - | Файлы.Ссылка, - | Файлы.ПометкаУдаления, - | Файлы.Зашифрован - |ИЗ - | Справочник.Файлы КАК Файлы - |ГДЕ - | Файлы.ВладелецФайла В ИЕРАРХИИ(&Ссылка) - | И Файлы.ТекущаяВерсия <> ЗНАЧЕНИЕ(Справочник.ВерсииФайлов.ПустаяСсылка) - | И Файлы.ПометкаУдаления = ЛОЖЬ - |ИТОГИ ПО - | Папка ИЕРАРХИЯ"; + Запрос.Текст = + "ВЫБРАТЬ РАЗРЕШЕННЫЕ + | Файлы.ВладелецФайла КАК Папка, + | Файлы.ВладелецФайла.Наименование КАК НаименованиеПапки, + | Файлы.ТекущаяВерсия, + | Файлы.ПолноеНаименование КАК ПолноеНаименование, + | Файлы.ТекущаяВерсия.Расширение КАК Расширение, + | Файлы.ТекущаяВерсия.Размер КАК Размер, + | Файлы.ТекущаяВерсия.ДатаМодификацииУниверсальная КАК ДатаМодификацииУниверсальная, + | Файлы.Ссылка, + | Файлы.ПометкаУдаления, + | Файлы.Зашифрован + |ИЗ + | Справочник.Файлы КАК Файлы + |ГДЕ + | Файлы.ВладелецФайла В ИЕРАРХИИ(&Ссылка) + | И Файлы.ТекущаяВерсия <> ЗНАЧЕНИЕ(Справочник.ВерсииФайлов.ПустаяСсылка) + | И Файлы.ПометкаУдаления = ЛОЖЬ + |ИТОГИ ПО + | Папка ИЕРАРХИЯ"; Запрос.Параметры.Вставить("Ссылка", ПапкаРодитель); Результат = Запрос.Выполнить(); ТаблицаВыгрузки = Результат.Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией); ЗначениеВРеквизитФормы(ТаблицаВыгрузки, "ДеревоФайлов"); КонецПроцедуры +// Рекурсивная функция, которая собственно и выгружает файлы на локальный диск. +// +// Параметры: +// ОбработчикРезультата - ОписаниеОповещения, Структура, Неопределено - Описание процедуры, принимающей результат +// работы метода. +// ТаблицаФайлов - ДанныеФормыДерево, ДанныеФормыЭлементДерева - дерево значений с выгружаемыми файлами. +// БазовыйКаталогСохранения - Строка - строка с именем папки, в которую сохраняются файлы. +// В ней воссоздается структура папок (как в дереве файлов) +// при необходимости. +// РодительскаяПапка - СправочникСсылка.ПапкиФайлов - что сохраняем. +// ОбщиеПараметры - Структура - +// * ДляВсехФайлов - Булево - +// Истина: пользователь выбрал действие при перезаписи файла и +// установил флажок "Для всех". Больше вопросов не задаем. +// Ложь: в каждом случае существования файла на диске, с тем же +// именем, что и в информационной базе будем задавать вопрос. +// * БазовоеДействие - КодВозвратаДиалога - +// при выполнении одного действия для всех конфликтов при +// записи файла (параметр ДляВсехФайлов = Истина) выполняется +// действие, заданное этим параметром). +// .Да - перезаписать. +// .Пропустить - пропустить файл. +// .Прервать - прервать выгрузку. +// +// Возвращаемое значение: +// Структура - Результат. +// * Успех - Булево - Истина - можно продолжать выгрузку / выгрузка завершена успешно. +// Ложь - действие завершено с ошибками / выгрузка завершена с ошибками. +// &НаКлиенте Процедура ОбойтиДеревоФайлов(ОбработчикРезультата, ТаблицаФайлов, БазовыйКаталогСохранения, РодительскаяПапка, ОбщиеПараметры) - // Рекурсивная функция, которая собственно и выгружает файлы на локальный диск. - // - // Параметры: - // ОбработчикРезультата - ОписаниеОповещения, Структура, Неопределено - Описание процедуры, принимающей результат - // работы метода. - // ТаблицаФайлов - ДанныеФормыДерево, ДанныеФормыЭлементДерева - дерево значений с выгружаемыми файлами. - // БазовыйКаталогСохранения - Строка - строка с именем папки, в которую сохраняются файлы. - // В ней воссоздается структура папок (как в дереве файлов) - // при необходимости. - // РодительскаяПапка - СправочникСсылка.ПапкиФайлов - что сохраняем. - // ОбщиеПараметры - Структура - - // * ФормаВопроса - УправляемаяФорма- Объект, который содержит ссылку на - // созданную в памяти форму вопроса о перезаписи файла с флажком - // "Для всех". Создается для того, чтобы не тратить время на - // регулярное создание формы внутри рекурсивного цикла. - // * ДляВсехФайлов - Булево - - // Истина: пользователь выбрал действие при перезаписи файла и - // установил флажок "Для всех". Больше вопросов не задаем. - // Ложь: в каждом случае существования файла на диске, с тем же - // именем, что и в информационной базе будем задавать вопрос. - // * БазовоеДействие - КодВозвратаДиалога - - // при выполнении одного действия для всех конфликтов при - // записи файла (параметр ДляВсехФайлов = Истина) выполняется - // действие, заданное этим параметром). - // .Да - перезаписать. - // .Пропустить - пропустить файл. - // .Прервать - прервать выгрузку. - // - // Возвращаемое значение: - // Структура - Результат. - // * Успех - Булево - Истина - можно продолжать выгрузку / выгрузка завершена успешно. - // Ложь - действие завершено с ошибками / выгрузка завершена с ошибками. - // Если ОбщиеПараметры = Неопределено Тогда ОбщиеПараметры = Новый Структура; - ОбщиеПараметры.Вставить("ФормаВопроса", РаботаСФайламиСлужебныйКлиентПовтИсп.ФормаЭкспортаПапкиФайлСуществует()); ОбщиеПараметры.Вставить("БазовоеДействие", КодВозвратаДиалога.Пропустить); ОбщиеПараметры.Вставить("ДляВсехФайлов", Ложь); ОбщиеПараметры.Вставить("ЕщеНеВстретилиВыгружаемуюПапку", Истина); @@ -557,17 +538,12 @@ СтруктураПараметров = Новый Структура; СтруктураПараметров.Вставить("ТекстСообщения", ТекстСообщения); СтруктураПараметров.Вставить("ПрименитьДляВсех", ПараметрыВыполнения.ОбщиеПараметры.ДляВсехФайлов); - СтруктураПараметров.Вставить("БазовоеДействие", ПараметрыВыполнения.ОбщиеПараметры.БазовоеДействие); - - ФормаВопроса = ПараметрыВыполнения.ОбщиеПараметры.ФормаВопроса; - ФормаВопроса.УстановитьПараметрыИспользования(СтруктураПараметров); + СтруктураПараметров.Вставить("БазовоеДействие", Строка(ПараметрыВыполнения.ОбщиеПараметры.БазовоеДействие)); РаботаСФайламиСлужебныйКлиент.ПодготовитьОбработчикДляДиалога(ПараметрыВыполнения); Обработчик = Новый ОписаниеОповещения("ОбойтиДеревоФайлов12", ЭтотОбъект, ПараметрыВыполнения); - РаботаСФайламиСлужебныйКлиент.УстановитьОповещениеФормы(ФормаВопроса, Обработчик); - - ФормаВопроса.Открыть(); + ОткрытьФорму("Справочник.Файлы.Форма.ФайлСуществует", СтруктураПараметров, , , , , Обработчик); Возврат; КонецЕсли; diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/Файлы/Forms/ФормаЭлемента/Form.form index 21f8862e8..aa35a7fd4 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаЭлемента/Form.form @@ -47,7 +47,6 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <chooseType>true</chooseType> <typeDomainEnabled>true</typeDomainEnabled> @@ -92,7 +91,6 @@ <showInFooter>true</showInFooter> <footerHorizontalAlign>Left</footerHorizontalAlign> <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> <height>2</height> <autoMaxHeight>true</autoMaxHeight> <wrap>true</wrap> @@ -1030,7 +1028,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -1188,6 +1185,7 @@ </extendedTooltip> <type>UsualGroup</type> <extInfo xsi:type="form:UsualGroupExtInfo"> + <verticalAlign>Center</verticalAlign> <behavior>Auto</behavior> <showLeftMargin>true</showLeftMargin> <united>true</united> @@ -1483,6 +1481,48 @@ <textSize>Normal</textSize> </extInfo> </items> + <items xsi:type="form:FormField"> + <name>ЭлектронныеПодписиОписаниеОшибки</name> + <id>330</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <dataPath xsi:type="form:DataPath"> + <segments>ЭлектронныеПодписи.ОписаниеОшибки</segments> + </dataPath> + <titleLocation>None</titleLocation> + <extendedTooltip> + <name>ЭлектронныеПодписиОписаниеОшибкиРасширеннаяПодсказка</name> + <id>332</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>ЭлектронныеПодписиОписаниеОшибкиКонтекстноеМеню</name> + <id>331</id> + <autoFill>true</autoFill> + </contextMenu> + <type>InputField</type> + <editMode>Auto</editMode> + <showInHeader>true</showInHeader> + <headerHorizontalAlign>Left</headerHorizontalAlign> + <showInFooter>true</showInFooter> + <extInfo xsi:type="form:InputFieldExtInfo"> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <wrap>true</wrap> + <chooseType>true</chooseType> + <typeDomainEnabled>true</typeDomainEnabled> + <textEdit>true</textEdit> + <textSize>Normal</textSize> + </extInfo> + </items> <items xsi:type="form:FormField"> <name>ЭлектронныеПодписиДатаПроверкиПодписи</name> <id>322</id> @@ -1829,6 +1869,44 @@ <autoMaxCardHeight>true</autoMaxCardHeight> <rowFilter xsi:type="core:UndefinedValue"/> </items> + <items xsi:type="form:Decoration"> + <name>Инструкция</name> + <id>327</id> + <title> + <key>ru</key> + <value>Типичные проблемы при работе с программами электронной подписи и их решение</value> + + true + true + + true + + + ИнструкцияРасширеннаяПодсказка + 329 + Label + true + true + + Left + + + + ИнструкцияКонтекстноеМеню + 328 + true + + Label + true + + + Click + ИнструкцияНажатие + + true + Left + + true true @@ -2623,7 +2701,6 @@ ОбработкаПроверкиЗаполненияНаСервере Delete - 75 DontBlock true true @@ -3054,6 +3131,24 @@ true + + ОписаниеОшибки + + <key>ru</key> + <value>Описание ошибки</value> + + 13 + + String + + + + true + + + true + + СертификатыШифрования @@ -3227,13 +3322,33 @@ true + + КоличествоЗанятыхФайлов + + <key>ru</key> + <value>Количество занятых файлов</value> + + 20 + + Number + + 10 + + + + true + + + true + + ЗапрещенныеРасширения <key>ru</key> <value>Запрещенные расширения</value> - 20 + 21 ValueList @@ -3797,6 +3912,13 @@ true + + РежимСоздания + + String + + + diff --git a/SSL/src/Catalogs/Файлы/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/Файлы/Forms/ФормаЭлемента/Module.bsl index 8b88c53a7..608b4a7c3 100644 --- a/SSL/src/Catalogs/Файлы/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/Файлы/Forms/ФормаЭлемента/Module.bsl @@ -20,9 +20,7 @@ ДанныеФайлаКорректны = Ложь; - Если Параметры.Свойство("РежимСоздания") Тогда - РежимСоздания = Параметры.РежимСоздания; - КонецЕсли; + РежимСоздания = Параметры.РежимСоздания; Если Параметры.Ключ = Неопределено Или Параметры.Ключ.Пустая() Тогда @@ -100,7 +98,7 @@ КодировкаЗначение = РаботаСФайламиСлужебныйВызовСервера.ПолучитьКодировкуВерсииФайла( Объект.ТекущаяВерсия); - СписокКодировок = РаботаСФайламиСлужебный.ПолучитьСписокКодировок(); + СписокКодировок = РаботаСФайламиСлужебный.Кодировки(); ЭлементСписка = СписокКодировок.НайтиПоЗначению(КодировкаЗначение); Если ЭлементСписка = Неопределено Тогда Кодировка = КодировкаЗначение; @@ -168,7 +166,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; Если ФайлРедактировался И Не ПолученОтветНаВопросФайлЗанят Тогда ПараметрыРаботыКлиента = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента(); @@ -176,23 +178,21 @@ ТекстВопроса = НСтр("ru = 'Файл занят для редактирования. | |Закрыть карточку?'"); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(ЭтотОбъект, Отказ, ТекстВопроса, "ПолученОтветНаВопросФайлЗанят"); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(ЭтотОбъект, Отказ, ЗавершениеРаботы, ТекстВопроса, "ПолученОтветНаВопросФайлЗанят"); Возврат; КонецЕсли; КонецЕсли; - Если РежимСоздания = "ИзШаблона" И НЕ Объект.ПодписанЭП Тогда - Если НовыйФайл И НовыйФайлЗаписан И (Не ФайлРедактировался) Тогда - Если Не ПолученОтветНаВопросОткрытьДляРедактирования Тогда - Отказ = Истина; - ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Открыть файл ""%1"" для редактирования?'"), - СокрЛП(Объект.ПолноеНаименование)); - Обработчик = Новый ОписаниеОповещения("ПередЗакрытиемПослеОтветаНаВопросОткрытьДляРедактирования", ЭтотОбъект); - ПоказатьВопрос(Обработчик, ТекстВопроса, РежимДиалогаВопрос.ДаНет, ,КодВозвратаДиалога.Да); - Возврат; - КонецЕсли; - КонецЕсли; + ПредложитьОткрытьФайлДляРедактирования = РежимСоздания = "ИзШаблона" И НЕ Объект.ПодписанЭП + И НовыйФайл И НовыйФайлЗаписан И (Не ФайлРедактировался) И Не ПолученОтветНаВопросОткрытьДляРедактирования; + Если ПредложитьОткрытьФайлДляРедактирования Тогда + Отказ = Истина; + ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Открыть файл ""%1"" для редактирования?'"), + СокрЛП(Объект.ПолноеНаименование)); + Обработчик = Новый ОписаниеОповещения("ПередЗакрытиемПослеОтветаНаВопросОткрытьДляРедактирования", ЭтотОбъект); + ПоказатьВопрос(Обработчик, ТекстВопроса, РежимДиалогаВопрос.ДаНет, ,КодВозвратаДиалога.Да); + Возврат; КонецЕсли; КонецПроцедуры @@ -268,6 +268,9 @@ КонецЕсли; // Конец СтандартныеПодсистемы.Свойства + КоличествоЗанятыхФайлов = РаботаСФайламиСлужебныйВызовСервера.ПолучитьКоличествоЗанятыхФайлов(, + ПользователиКлиентСервер.АвторизованныйПользователь()); + КонецПроцедуры &НаСервере @@ -322,6 +325,9 @@ КонецЕсли; КонецЕсли; + СтандартныеПодсистемыКлиент.УстановитьПараметрКлиента( + "КоличествоЗанятыхФайлов", КоличествоЗанятыхФайлов); + УстановитьДоступностьЭлементовФормы(); УстановитьДоступностьКомандСпискаЭП(); УстановитьДоступностьКомандСпискаШифрования(); @@ -397,6 +403,16 @@ КонецПроцедуры +&НаКлиенте +Процедура ИнструкцияНажатие(Элемент) + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ЭлектроннаяПодпись") Тогда + МодульЭлектроннаяПодписьКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ЭлектроннаяПодписьКлиент"); + МодульЭлектроннаяПодписьКлиент.ОткрытьИнструкциюПоТипичнымПроблемамПриРаботеСПрограммами(); + КонецЕсли; + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыСертификатыШифрования @@ -1014,7 +1030,7 @@ СертификатыШифрования.Очистить(); Если Объект.Зашифрован Тогда - МассивСертификатовШифрования = РаботаСФайламиСлужебныйВызовСервера.ПолучитьМассивСертификатовШифрования(Объект.Ссылка); + МассивСертификатовШифрования = РаботаСФайламиСлужебныйВызовСервера.СертификатыШифрования(Объект.Ссылка); Для Каждого СтруктураСертификата Из МассивСертификатовШифрования Цикл НоваяСтрока = СертификатыШифрования.Добавить(); НоваяСтрока.Представление = СтруктураСертификата.Представление; diff --git a/SSL/src/Catalogs/Файлы/Templates/МакетОтчета/Template.mxlx b/SSL/src/Catalogs/Файлы/Templates/МакетОтчета/Template.mxlx index 3256664ea..65d414964 100644 --- a/SSL/src/Catalogs/Файлы/Templates/МакетОтчета/Template.mxlx +++ b/SSL/src/Catalogs/Файлы/Templates/МакетОтчета/Template.mxlx @@ -89,7 +89,7 @@ -1 - + 465 diff --git a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераКомплексныхВопросов/Form.form b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераКомплексныхВопросов/Form.form new file mode 100644 index 000000000..764a03194 --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераКомплексныхВопросов/Form.form @@ -0,0 +1,713 @@ + + + + <key>ru</key> + <value>Редактирование комплексного вопроса</value> + + + Формулировка + 141 + true + true + + true + + + Формулировка + + Top + + ФормулировкаExtendedTooltip + 147 + Label + true + true + + Left + + + + ФормулировкаКонтекстноеМеню + 142 + true + + InputField + true + Enter + true + Left + true + + 50 + true + true + true + true + true + true + true + true + Normal + + ru + Введите формулировку вопроса + + + + + ГруппаВопросы + 68 + + Вопросы + 136 + true + true + + true + + + Вопросы + + false + None + + ВопросыВопрос + 139 + + <key>ru</key> + <value>Вопрос</value> + + true + true + + true + + + Вопросы.ЭлементарныйВопрос + + + ВопросыВопросExtendedTooltip + 178 + Label + true + true + + Left + + + + ВопросыВопросКонтекстноеМеню + 140 + true + + InputField + Auto + true + Left + true + + + ChoiceProcessing + ВопросыВопросОбработкаВыбора + + true + true + true + false + true + Items + true + true + true + Normal + + + + ВопросыКоманднаяПанель + 138 + Left + true + + + ВопросыSearchString + 228 + + ВопросыSearchStringExtendedTooltip + 230 + Label + true + true + + Left + + + + ВопросыSearchStringContextMenu + 229 + true + + Вопросы + + true + + + + ВопросыViewStatus + 231 + + ВопросыViewStatusExtendedTooltip + 233 + Label + true + true + + Left + + + + ВопросыViewStatusContextMenu + 232 + true + + ViewStatusAddition + Вопросы + + true + + + + ВопросыSearchControl + 234 + + ВопросыSearchControlExtendedTooltip + 236 + Label + true + true + + Left + + + + ВопросыSearchControlContextMenu + 235 + true + + SearchControlAddition + Вопросы + + true + + + + ВопросыExtendedTooltip + 177 + Label + true + true + + Left + + + + ВопросыКонтекстноеМеню + 137 + true + + true + true + true + true + true + MultiRow +
      true
      + 1 + 1 + AutoUse + AutoUse + true + true + false + Auto + Auto + true + true + true + true + None + None + None + true + +
      + true + true + + true + + + <key>ru</key> + <value>Подбор вопросов. Укажите хотя бы один вопрос:</value> + + + ГруппаВопросыExtendedTooltip + 176 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + WeakSeparation + true + true + auto + Auto + Auto + +
      + + ГруппаПодсказка + 241 + + СпособОтображенияПодсказки + 243 + true + true + + true + + + СпособОтображенияПодсказки + + + СпособОтображенияПодсказкиРасширеннаяПодсказка + 245 + Label + true + true + + Left + + + + СпособОтображенияПодсказкиКонтекстноеМеню + 244 + true + + InputField + Enter + true + Left + true + + true + true + false + true + true + true + true + Normal + + + + Подсказка + 246 + true + true + + true + + + Подсказка + + + ПодсказкаРасширеннаяПодсказка + 248 + Label + true + true + + Left + + + + ПодсказкаКонтекстноеМеню + 247 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Подсказка</value> + + + ГруппаПодсказкаРасширеннаяПодсказка + 242 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + Bottom + true + + ФормаКоманднаяПанель + -1 + + КнопкаОК + 237 + true + true + + true + + + КнопкаОКРасширеннаяПодсказка + 238 + Label + true + true + + Left + + + Form.Command.КнопкаОК + Auto + true + true + true + UserCmds + Auto + + + КнопкаОтмена + 239 + + <key>ru</key> + <value>Отмена</value> + + true + true + + true + + + КнопкаОтменаРасширеннаяПодсказка + 240 + Label + true + true + + Left + + + Form.StandardCommand.Close + Normal + Auto + true + true + UserCmds + Auto + + Right + + + OnCreateAtServer + ПриСозданииНаСервере + + Abort + Cancel + CustomizeForm + Ignore + No + OK + RestoreValues + Retry + SaveValues + Yes + LockOwner + true + true + Vertical + true + true + true + auto + true + + Вопросы + 10 + + ValueTable + + + true + + + true + + + ЭлементарныйВопрос + + <key>ru</key> + <value>Элементарный вопрос</value> + + 1 + + ChartOfCharacteristicTypesRef.ВопросыДляАнкетирования + + + true + + + true + + + + Представление + + <key>ru</key> + <value>Представление</value> + + 2 + + String + + 150 + + + + true + + + true + + + + Формулировка + + <key>ru</key> + <value>Формулировка</value> + + 3 + + String + + 500 + + + + true + + + true + + + + ТипОтвета + + <key>ru</key> + <value>Тип ответа</value> + + 4 + + EnumRef.ТипыОтветовНаВопрос + + + true + + + true + + + + + ПредставлениеВопроса + + <key>ru</key> + <value>Представление вопроса</value> + + 4 + + String + + + + true + + + true + + + + Вопрос + + <key>ru</key> + <value>Вопрос</value> + + 5 + + ChartOfCharacteristicTypesRef.ВопросыДляАнкетирования + + + true + + + true + + + + ИнформацияШапка + + <key>ru</key> + <value>Информация шапка</value> + + 9 + + String + + + + true + + + true + + + + ИнформацияПодвал + + <key>ru</key> + <value>Информация подвал</value> + + 11 + + String + + + + true + + + true + + + + Формулировка + + <key>ru</key> + <value>Формулировка</value> + + 12 + + String + + + + true + + + true + + + + Подсказка + + <key>ru</key> + <value>Подсказка</value> + + 1 + + String + + + + true + + + true + + + + СпособОтображенияПодсказки + + <key>ru</key> + <value>Способ отображения подсказки</value> + + 13 + + EnumRef.СпособыОтображенияПодсказок + + + true + + + true + + + + КнопкаОК + + <key>ru</key> + <value>Готово</value> + + 1 + + ru + Кнопка ОК + + + true + + + + КнопкаОК + + + DontUse + Auto + + + + + +
      diff --git a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераКомплексныхВопросов/Help/ru.html b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераКомплексныхВопросов/Help/ru.html new file mode 100644 index 000000000..f7c631740 --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераКомплексныхВопросов/Help/ru.html @@ -0,0 +1,76 @@ + +

      Мастер предназначен для ввода и редактирования табличных вопросов анкеты.

      +

      Открывается по команде Добавить - табличный вопрос из шаблона анкеты.

      +

      Выбор типа табличного вопроса

      +

      Составной табличный вопрос

      +
      • +
        Для составного табличного вопроса задается состав вопросов. Заданные вопросы будут отображаться в качестве заголовков колонок таблицы.
        +
      • +
        Респондент, отвечающий на вопросы анкеты, сможет добавить произвольное количество строк в таблицу при ответе.
        +
      • +
        С помощью команды Добавить выберите необходимое количество вопросов из списка.
        +
      • +
        Нажмите Далее для просмотра получившейся таблицы.

      Табличный вопрос с предопределенными ответами в строках

      +
      • +
        Для данного типа табличного вопроса на второй странице помощника задается состав вопросов.
        +
      • +
        Нажмите Добавить, выберите как минимум два вопроса из списка.
      • +
        Заданные вопросы будут отображаться в качестве заголовков колонок таблицы в анкете респондента.
        +
      • Число строк в таблице фиксировано, при ответе респондент не сможет добавить или удалить строки из таблицы. Количество строк таблицы будет равно количеству предопределенных ответов. +
      • +
         Для первого вопроса на третьей странице помощника задайте предопределенные ответы, которые будут отображаться в строках первой колонки таблицы. Нажмите Добавить. Для добавления воспользуйтесь одним из способов:
        +
        • +
          Напишите варианты ответов для первого вопроса вручную.
          +
        • +
          Если был выбран вопрос типа Выбор одного или нескольких вариантов ответа из предложенных, то для того чтобы быстро перечислить возможные варианты ответов для первого введенного вопроса, можно воспользоваться кнопкой Заполнить варианты ответов.

      Табличный вопрос с предопределенными ответами в колонках

      +
      • +
        Этот тип табличного вопроса является вариантом предыдущего.
        +
      • +
        Для данного типа табличного вопроса задается состав вопросов. Заданные вопросы будут выведены в строках первой колонки таблицы. С помощью кнопки Добавить введите как минимум два вопроса.
        +
      • +
        +
        На третьей странице помощника составитель анкеты указывает предопределенные ответы на первый вопрос для колонок таблицы. Для этого нажмите Добавить. Для добавления воспользуйтесь одним из способов:
        +
        • +
          Напишите варианты ответов для первого вопроса вручную.
        • +
          Если был выбран вопрос типа Выбор одного или нескольких вариантов ответа из предложенных, то для того чтобы быстро перечислить все варианты, выбрав их из первого введенного вопроса, можно воспользоваться кнопкой Заполнить варианты ответов. 
      • Данные предопределенные ответы будут отображаться в качестве заголовков колонок таблицы. При ответе респондент не сможет добавить или удалить строки из таблицы. Количество строк таблицы будет равно количеству вопросов, уменьшенному на один (ответы на первый вопрос - это заголовки колонок, при этом первый вопрос в таблице не отображается).

      Табличный вопрос с предопределенными ответами в строках и колонках

      +
      • +
        Для данного типа табличного вопроса задается три вопроса. Нажмите Добавить, выберите вопросы из списка.
        +
      • +
        На третьей странице помощника необходимо задать предопределенные ответы на первые два вопроса.
        +
        • +
          Предопределенные ответы на первый вопрос будут отражаться в качестве заголовков строк таблицы.
          +
        • +
          Предопределенные ответы на второй вопрос будут отражаться в качестве заголовков колонок.
      • +
        Ответы на третий вопрос респондент должен будет указывать в ячейках таблицы.
        +
      • +
        Нажмите кнопку Добавить. Для добавления предопределенных вариантов ответов на первые два вопроса воспользуйтесь одним из способов:
        +
        • +
          Напишите варианты ответов вручную.
          +
        • Если были заранее созданы вопросы типа Выбор одного или нескольких вариантов ответа из предложенных, то для того чтобы быстро перечислить все ответы, можно воспользоваться кнопкой Заполнить варианты ответов. 
      +
      • +
        При ответе респондент не сможет добавить или удалить строки из таблицы. Количество строк таблицы будет равно количеству предопределенных ответов на первый вопрос.

        Просмотр готового табличного вопроса

        +
        • +
          На последней странице помощника для просмотра выводится таблица в том виде, в каком она будет выглядеть в анкете респондента. Если необходимо поменять состав вопросов или их расположение в таблице, можно вернуться на предыдущие шаги с помощью кнопки Назад.
          +
        • +
          Нажмите Готово для окончания редактирования.

        См. также:

        + \ No newline at end of file diff --git a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераКомплексныхВопросов/Module.bsl b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераКомплексныхВопросов/Module.bsl new file mode 100644 index 000000000..17277281b --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераКомплексныхВопросов/Module.bsl @@ -0,0 +1,132 @@ + +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. + Возврат; + КонецЕсли; + + // Примем параметры формы владельца. + ОбработатьПараметрыФормыВладельца(); + +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы + +&НаКлиенте +Процедура ВопросыВопросОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) + + СтандартнаяОбработка = Ложь; + + Если ВыбранноеЗначение = Неопределено Тогда + Возврат; + КонецЕсли; + + РеквизитыВопрос = РеквизитыВопроса(ВыбранноеЗначение); + Если РеквизитыВопрос.ЭтоГруппа Тогда + Возврат; + КонецЕсли; + + ТекЭлемент = Вопросы.НайтиПоИдентификатору(Элементы.Вопросы.ТекущаяСтрока); + ТекЭлемент.ЭлементарныйВопрос = ВыбранноеЗначение; + + ТекЭлемент.Представление = РеквизитыВопрос.Представление; + ТекЭлемент.Формулировка = РеквизитыВопрос.Формулировка; + ТекЭлемент.ТипОтвета = РеквизитыВопрос.ТипОтвета; + +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиКомандФормы + +&НаКлиенте +Процедура КнопкаОК(Команда) + + Оповестить("ОкончаниеРедактированияПараметровКомплексногоВопроса",СформироватьСтруктуруПараметровДляПередачиВладельцу()); + Закрыть(); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +// Формирует структуру возврата для передачи в форму владельца. +&НаКлиенте +Функция СформироватьСтруктуруПараметровДляПередачиВладельцу() + + СтруктураПараметров = Новый Структура; + + ВопросыКВозврату = Новый Массив; + Для каждого СтрокаТаблицы Из Вопросы Цикл + ВопросыКВозврату.Добавить(СтрокаТаблицы.ЭлементарныйВопрос); + КонецЦикла; + СтруктураПараметров.Вставить("Вопросы",ВопросыКВозврату); + СтруктураПараметров.Вставить("Формулировка",Формулировка); + СтруктураПараметров.Вставить("Подсказка",Подсказка); + СтруктураПараметров.Вставить("СпособОтображенияПодсказки",СпособОтображенияПодсказки); + + Возврат СтруктураПараметров; + +КонецФункции + +// Обрабатывает параметры формы владельца. +// +&НаСервере +Процедура ОбработатьПараметрыФормыВладельца() + + Формулировка = Параметры.Формулировка; + Подсказка = Параметры.Подсказка; + СпособОтображенияПодсказки = Параметры.СпособОтображенияПодсказки; + + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ + | Вопросы.ЭлементарныйВопрос, + | Вопросы.НомерСтроки + |ПОМЕСТИТЬ ЭлементарныеВопросы + |ИЗ + | &Вопросы КАК Вопросы + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | ЭлементарныеВопросы.ЭлементарныйВопрос КАК ЭлементарныйВопрос, + | ЕСТЬNULL(ВопросыДляАнкетирования.Представление, """""""") КАК Представление, + | ЕСТЬNULL(ВопросыДляАнкетирования.Формулировка, """""""") КАК Формулировка, + | ЕСТЬNULL(ВопросыДляАнкетирования.ТипОтвета, """") КАК ТипОтвета + |ИЗ + | ЭлементарныеВопросы КАК ЭлементарныеВопросы + | ЛЕВОЕ СОЕДИНЕНИЕ ПланВидовХарактеристик.ВопросыДляАнкетирования КАК ВопросыДляАнкетирования + | ПО ЭлементарныеВопросы.ЭлементарныйВопрос = ВопросыДляАнкетирования.Ссылка + | + |УПОРЯДОЧИТЬ ПО + | ЭлементарныеВопросы.НомерСтроки"; + + Запрос.УстановитьПараметр("Вопросы",Параметры.СоставКомплексногоВопроса.Выгрузить()); + + Результат = Запрос.Выполнить(); + Если НЕ Результат.Пустой() Тогда; + Выборка = Результат.Выбрать(); + Пока Выборка.Следующий() Цикл + + НоваяСтрока = Вопросы.Добавить(); + ЗаполнитьЗначенияСвойств(НоваяСтрока,Выборка); + + КонецЦикла; + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Функция РеквизитыВопроса(Вопрос) + + Возврат ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Вопрос,"Представление,Формулировка,ЭтоГруппа,ТипОтвета"); + +КонецФункции + +#КонецОбласти diff --git a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераТабличныхВопросов/Form.form b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераТабличныхВопросов/Form.form index cbfcde2f0..90b5c0121 100644 --- a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераТабличныхВопросов/Form.form +++ b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераТабличныхВопросов/Form.form @@ -15,7 +15,6 @@ Формулировка - Left OnChange ФормулировкаПриИзменении @@ -42,14 +41,19 @@ Left true - true true true + true + true true true true true Normal + + ru + Введите формулировку вопроса + @@ -136,8 +140,6 @@ 82 true - true - true true true false @@ -173,6 +175,8 @@ Page Vertical + Center + Center auto false @@ -1368,11 +1372,6 @@ ru Вопросы: - - ru - Группа вопросы - - true ГруппаВопросыExtendedTooltip 176 @@ -2324,11 +2323,6 @@ ru Страницы - - ru - Страницы - - false СтраницыExtendedTooltip 149 @@ -2375,6 +2369,123 @@ Auto
        + + ГруппаПодсказка + 264 + + СпособОтображенияПодсказки + 266 + true + true + + true + + + СпособОтображенияПодсказки + + + СпособОтображенияПодсказкиРасширеннаяПодсказка + 268 + Label + true + true + + Left + + + + СпособОтображенияПодсказкиКонтекстноеМеню + 267 + true + + InputField + Enter + true + Left + true + + true + true + false + true + true + true + true + Normal + + + + Подсказка + 269 + true + true + + true + + + Подсказка + + + ПодсказкаРасширеннаяПодсказка + 271 + Label + true + true + + Left + + + + ПодсказкаКонтекстноеМеню + 270 + true + + InputField + Enter + true + Left + true + + true + false + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Подсказка</value> + + + ГруппаПодсказкаРасширеннаяПодсказка + 265 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + ИнформацияПодвал 130 @@ -2458,39 +2569,6 @@ Auto - - Декорация - 133 - true - true - - true - - - ДекорацияExtendedTooltip - 198 - Label - true - true - - Left - - - - ДекорацияКонтекстноеМеню - 134 - true - - Label - true - 1 - true - true - false - - Left - - ГруппаДалее 204 @@ -2600,6 +2678,7 @@ Группа далее 1 + Right ГруппаДалееРасширеннаяПодсказка 205 @@ -2620,11 +2699,6 @@ true - - ru - Группа кнопки - - true false ГруппаКнопкиExtendedTooltip @@ -2969,9 +3043,42 @@ 12 String - - 300 - + + + + true + + + true + + + + Подсказка + + <key>ru</key> + <value>Подсказка</value> + + 13 + + String + + + + true + + + true + + + + СпособОтображенияПодсказки + + <key>ru</key> + <value>Способ отображения подсказки</value> + + 14 + + EnumRef.СпособыОтображенияПодсказок true diff --git a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераТабличныхВопросов/Module.bsl b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераТабличныхВопросов/Module.bsl index ee294f794..23221f6f7 100644 --- a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераТабличныхВопросов/Module.bsl +++ b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаМастераТабличныхВопросов/Module.bsl @@ -551,6 +551,8 @@ СтруктураПараметров.Вставить("Вопросы",ВопросыКВозврату); СтруктураПараметров.Вставить("Ответы" ,Ответы); СтруктураПараметров.Вставить("Формулировка",Формулировка); + СтруктураПараметров.Вставить("Подсказка",Подсказка); + СтруктураПараметров.Вставить("СпособОтображенияПодсказки",СпособОтображенияПодсказки); Возврат СтруктураПараметров; @@ -561,7 +563,9 @@ &НаСервере Процедура ОбработатьПараметрыФормыВладельца() - Формулировка = Параметры.Формулировка; + Формулировка = Параметры.Формулировка; + Подсказка = Параметры.Подсказка; + СпособОтображенияПодсказки = Параметры.СпособОтображенияПодсказки; Если НЕ Параметры.ТипТабличногоВопроса.Пустая() Тогда ТипТабличногоВопроса = Параметры.ТипТабличногоВопроса; diff --git a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаПростыхВопросов/Form.form b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаПростыхВопросов/Form.form index 789c84aeb..259419385 100644 --- a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаПростыхВопросов/Form.form +++ b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаПростыхВопросов/Form.form @@ -4,110 +4,20 @@ ru Вопрос шаблона анкеты - - ГруппаЭлементарныйОбязательный - 5 - - ЭлементарныйВопрос - 3 - true - true - - true - - - ЭлементарныйВопрос - - - ЭлементарныйВопросExtendedTooltip - 15 - Label - true - true - - Left - - - - ЭлементарныйВопросКонтекстноеМеню - 4 - true - - InputField - true - Enter - true - Left - true - - - ChoiceProcessing - ЭлементарныйВопросОбработкаВыбора - - 37 - true - true - false - true - Items - true - true - true - true - Normal - - - - Обязательный - 6 - true - true - - true - - - Обязательный - - Right - - ОбязательныйExtendedTooltip - 18 - Label - true - true - - Left - - - - ОбязательныйКонтекстноеМеню - 7 - true - - CheckBoxField - Enter - true - Left - true - - + + ЭлементарныйВопрос + 3 true true true - - <key>ru</key> - <value>Группа элементарный обязательный</value> - - - ru - Группа элементарный обязательный - - false + + ЭлементарныйВопрос + - ГруппаЭлементарныйОбязательныйРасширеннаяПодсказка - 17 + ЭлементарныйВопросExtendedTooltip + 15 Label true true @@ -115,13 +25,32 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + + ЭлементарныйВопросКонтекстноеМеню + 4 + true + + InputField + true + Enter + true + Left + true + + + ChoiceProcessing + ЭлементарныйВопросОбработкаВыбора + + 40 + true + false + true + Items + true + true + true + true + Normal @@ -135,6 +64,7 @@ Формулировка + Left ФормулировкаExtendedTooltip 16 @@ -157,9 +87,11 @@ Left true - true + 40 true true + true + true true true true @@ -167,6 +99,158 @@ Normal + + Обязательный + 6 + true + true + + true + + + Обязательный + + Right + + ОбязательныйExtendedTooltip + 18 + Label + true + true + + Left + + + + ОбязательныйКонтекстноеМеню + 7 + true + + CheckBoxField + Enter + true + Left + true + + + + ГруппаПодсказка + 27 + + СпособОтображенияПодсказки + 29 + true + true + + true + + + СпособОтображенияПодсказки + + + СпособОтображенияПодсказкиРасширеннаяПодсказка + 31 + Label + true + true + + Left + + + + СпособОтображенияПодсказкиКонтекстноеМеню + 30 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + Подсказка + 32 + true + true + + true + + + Подсказка + + Left + + ПодсказкаРасширеннаяПодсказка + 34 + Label + true + true + + Left + + + + ПодсказкаКонтекстноеМеню + 33 + true + + InputField + Enter + true + Left + true + + true + true + false + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Подсказка</value> + + + ГруппаПодсказкаРасширеннаяПодсказка + 28 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + Заметки 24 @@ -219,38 +303,6 @@ ГруппаКнопки 8 - - Декорация - 9 - true - true - - true - - - ДекорацияExtendedTooltip - 21 - Label - true - true - - Left - - - - ДекорацияКонтекстноеМеню - 10 - true - - Label - true - true - true - false - - Left - - КнопкаГотово 11 @@ -324,6 +376,7 @@ ru Группа кнопки + true ГруппаКнопкиExtendedTooltip 20 @@ -336,6 +389,7 @@ UsualGroup + Right Auto true true @@ -355,6 +409,10 @@ OnCreateAtServer ПриСозданииНаСервере + + OnClose + ПриЗакрытии + LockOwner true true @@ -390,9 +448,7 @@ 2 String - - 300 - + true @@ -474,6 +530,75 @@ true + + ВыполняетсяЗакрытие + + <key>ru</key> + <value>Выполняется закрытие</value> + + 7 + + Boolean + + + true + + + true + + + + ЭтоНоваяСтрока + + <key>ru</key> + <value>Это новая строка</value> + + 8 + + Boolean + + + true + + + true + + + + Подсказка + + <key>ru</key> + <value>Подсказка</value> + + 9 + + String + + + + true + + + true + + + + СпособОтображенияПодсказки + + <key>ru</key> + <value>Способ отображения подсказки</value> + + 10 + + EnumRef.СпособыОтображенияПодсказок + + + true + + + true + + ПеренестиВШаблон diff --git a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаПростыхВопросов/Module.bsl b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаПростыхВопросов/Module.bsl index 661e08fdc..7b27330a2 100644 --- a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаПростыхВопросов/Module.bsl +++ b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаПростыхВопросов/Module.bsl @@ -13,6 +13,7 @@ Элементы.Обязательный.Видимость = Ложь; Элементы.ЭлементарныйВопрос.Видимость = Ложь; + Элементы.ГруппаПодсказка.Видимость = Ложь; Элементы.Формулировка.Заголовок = НСтр("ru = 'Имя раздела'"); Заголовок = НСтр("ru = 'Раздел шаблона анкеты'"); @@ -30,6 +31,15 @@ КонецПроцедуры +&НаКлиенте +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если Не ВыполняетсяЗакрытие И ЭтоНоваяСтрока Тогда + Оповестить("ОтменаВводаНовойСтрокиШаблонаАнкеты"); + КонецЕсли; + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы @@ -74,6 +84,7 @@ Возврат; КонецЕсли; + ВыполняетсяЗакрытие = Истина; Оповестить("ОкончаниеРедактированияПараметровСтрокиШаблонаАнкеты",СформироватьСтруктуруПараметровДляПередачиВладельцу()); Закрыть(); @@ -92,6 +103,9 @@ СтруктураВозврата.Вставить("Формулировка", Формулировка); СтруктураВозврата.Вставить("ЭлементарныйВопрос", ЭлементарныйВопрос); СтруктураВозврата.Вставить("Заметки", Заметки); + СтруктураВозврата.Вставить("ЭтоНоваяСтрока", Ложь); + СтруктураВозврата.Вставить("Подсказка", Подсказка); + СтруктураВозврата.Вставить("СпособОтображенияПодсказки", СпособОтображенияПодсказки); Возврат СтруктураВозврата; diff --git a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаСписка/Module.bsl index 686b2e789..6862b4acd 100644 --- a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаСписка/Module.bsl @@ -53,6 +53,8 @@ | ВопросыШаблонаАнкеты.ТипТабличногоВопроса, | ВопросыШаблонаАнкеты.ЭлементарныйВопрос, | ВопросыШаблонаАнкеты.РодительВопрос, + | ВопросыШаблонаАнкеты.Подсказка КАК Подсказка, + | ВопросыШаблонаАнкеты.СпособОтображенияПодсказки КАК СпособОтображенияПодсказки, | ВопросыШаблонаАнкеты.СоставТабличногоВопроса.( | ЭлементарныйВопрос КАК ЭлементарныйВопрос, | НомерСтроки @@ -62,6 +64,10 @@ | Ответ, | НомерСтроки | ), + | ВопросыШаблонаАнкеты.СоставКомплексногоВопроса.( + | ЭлементарныйВопрос КАК ЭлементарныйВопрос, + | НомерСтроки + | ), | ВопросыШаблонаАнкеты.Формулировка |ИЗ | Справочник.ВопросыШаблонаАнкеты КАК ВопросыШаблонаАнкеты @@ -115,13 +121,16 @@ СсылкаНового = Справочники.ВопросыШаблонаАнкеты.ПолучитьСсылку(); НовыйЭлемент.УстановитьСсылкуНового(СсылкаНового); - ЗаполнитьЗначенияСвойств(НовыйЭлемент,Выборка,,"Владелец,Родитель,СоставТабличногоВопроса,ПредопределенныеОтветы,Код,РодительВопрос"); + ЗаполнитьЗначенияСвойств(НовыйЭлемент,Выборка,,"Владелец,Родитель,СоставТабличногоВопроса,ПредопределенныеОтветы,СоставКомплексногоВопроса,Код,РодительВопрос"); СоставТабличногоВопроса = Выборка.СоставТабличногоВопроса.Выгрузить(); СоставТабличногоВопроса.Сортировать("НомерСтроки Возр"); НовыйЭлемент.СоставТабличногоВопроса.Загрузить(СоставТабличногоВопроса); ПредопределенныеОтветы = Выборка.ПредопределенныеОтветы.Выгрузить(); ПредопределенныеОтветы.Сортировать("НомерСтроки Возр"); НовыйЭлемент.ПредопределенныеОтветы.Загрузить(ПредопределенныеОтветы); + СоставКомплексногоВопроса = Выборка.СоставКомплексногоВопроса.Выгрузить(); + СоставКомплексногоВопроса.Сортировать("НомерСтроки Возр"); + НовыйЭлемент.СоставКомплексногоВопроса.Загрузить(СоставКомплексногоВопроса); Если Выборка.ТипВопроса = Перечисления.ТипыВопросовШаблонаАнкеты.ВопросСУсловием Тогда ВопросыСУсловием.Вставить(Выборка.Ссылка,СсылкаНового); diff --git a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаЭлемента/Form.form index 7a9c42770..e28957bd2 100644 --- a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаЭлемента/Form.form @@ -151,7 +151,6 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <wrap>true</wrap> <chooseType>true</chooseType> @@ -192,7 +191,6 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <wrap>true</wrap> <multiLine>true</multiLine> @@ -234,7 +232,6 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <wrap>true</wrap> <multiLine>true</multiLine> @@ -646,6 +643,36 @@ <placementArea>UserCmds</placementArea> <representationInContextMenu>Auto</representationInContextMenu> </items> + <items xsi:type="form:Button"> + <name>ДереваАнкетыДобавитьКомплексныйВопрос</name> + <id>142</id> + <title> + <key>ru</key> + <value>комплексный вопрос</value> + + true + true + + true + + + ДереваАнкетыДобавитьКомплексныйВопросРасширеннаяПодсказка + 143 + Label + true + true + + Left + + + Form.Command.ДобавитьКомплексныйВопрос + Normal + Auto + true + true + UserCmds + Auto + ДеревоАнкетыКоманднаяПанельДобавитьРаздел 29 @@ -1132,6 +1159,36 @@ Auto + + ДеревоАнкетыКонтекстноеМенюДобавитьКомплексныйВопрос + 144 + true + true + + true + + false + + ДеревоАнкетыКонтекстноеМенюДобавитьКомплексныйВопросРасширеннаяПодсказка + 145 + Label + true + true + + Left + + + Form.Command.ДобавитьКомплексныйВопрос + Normal + Auto + true + true + UserCmds + + CommonPicture.ДобавитьТабличныйВопрос + + Auto + ДеревоАнкетыКонтекстноеМенюДобавитьРаздел 33 @@ -1381,7 +1438,6 @@ StartChoice ДеревоАнкетыЗаметкиНачалоВыбора - true 2 true false @@ -1921,9 +1977,7 @@ 20 String - - 300 - + true @@ -1988,6 +2042,75 @@ true + + ЭтоНоваяСтрока + + <key>ru</key> + <value>Это новая строка</value> + + 22 + + Boolean + + + true + + + true + + + + СоставКомплексногоВопроса + + <key>ru</key> + <value>Состав комплексного вопроса</value> + + 25 + + ValueTable + + + true + + + true + + + + Подсказка + + <key>ru</key> + <value>Подсказка</value> + + 26 + + String + + + + true + + + true + + + + СпособОтображенияПодсказки + + <key>ru</key> + <value>Способ отображения подсказки</value> + + 27 + + EnumRef.СпособыОтображенияПодсказок + + + true + + + true + + ДеревоАнкеты.СоставТабличногоВопроса @@ -2089,6 +2212,48 @@ + + + ДеревоАнкеты.СоставКомплексногоВопроса + + + ЭлементарныйВопрос + + <key>ru</key> + <value>Элементарный вопрос</value> + + 1 + + ChartOfCharacteristicTypesRef.ВопросыДляАнкетирования + + + true + + + true + + + + НомерСтроки + + <key>ru</key> + <value>Номер строки</value> + + 2 + + Number + + 10 + + + + true + + + true + + + ИнформацияДерево @@ -2273,6 +2438,32 @@ DontUse Auto + + ДобавитьКомплексныйВопрос + + <key>ru</key> + <value>Добавить комплексный вопрос</value> + + 7 + + ru + Добавить комплексный вопрос + + + true + + Shift+F9 + + CommonPicture.ДобавитьКомплексныйВопрос + + + + ДобавитьКомплексныйВопрос + + + DontUse + Auto + diff --git a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаЭлемента/Module.bsl index de2a2cddc..92c3d9a0d 100644 --- a/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/Catalogs/ШаблоныАнкет/Forms/ФормаЭлемента/Module.bsl @@ -54,6 +54,11 @@ ОбработатьРезультатРаботыМастераТабличныхВопросов(ТекущиеДанные,Параметр,Элементы.ФормаДереваАнкеты.ТекущаяСтрока); Модифицированность = Истина; + ИначеЕсли ИмяСобытия = "ОкончаниеРедактированияПараметровКомплексногоВопроса" Тогда + + ОбработатьРезультатРаботыМастераКомплексныхВопросов(ТекущиеДанные,Параметр,Элементы.ФормаДереваАнкеты.ТекущаяСтрока); + Модифицированность = Истина; + ИначеЕсли ИмяСобытия = "ОкончаниеРедактированияПараметровСтрокиШаблонаАнкеты" Тогда ЗаполнитьЗначенияСвойств(ТекущиеДанные,Параметр); @@ -63,6 +68,13 @@ ТекущиеДанные.Обязательный = Неопределено; КонецЕсли; + ИначеЕсли ИмяСобытия = "ОтменаВводаНовойСтрокиШаблонаАнкеты" Тогда + Если ТекущиеДанные.ЭтоНоваяСтрока Тогда + ТекущаяСтрока = ДеревоАнкеты.НайтиПоИдентификатору(ТекущиеДанные.ПолучитьИдентификатор()); + Если ТекущаяСтрока <> Неопределено Тогда + ТекущаяСтрока.ПолучитьРодителя().ПолучитьЭлементы().Удалить(ТекущаяСтрока); + КонецЕсли; + КонецЕсли; КонецЕсли; КонецПроцедуры @@ -84,7 +96,8 @@ НайденныеСтроки = ДеревоШаблонаАнкеты.Строки[0].Строки.НайтиСтроки(СтруктураОтбора,Истина); Если НайденныеСтроки.Количество() <> 0 Тогда Для каждого НайденнаяСтрока Из НайденныеСтроки Цикл - Если НайденнаяСтрока.ТипВопроса <> Перечисления.ТипыВопросовШаблонаАнкеты.Табличный Тогда + Если НайденнаяСтрока.ТипВопроса <> Перечисления.ТипыВопросовШаблонаАнкеты.Табличный + И НайденнаяСтрока.ТипВопроса <> Перечисления.ТипыВопросовШаблонаАнкеты.Комплексный Тогда ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Не все вопросы заполнены.'"),,"ДеревоАнкеты"); Отказ = Истина; @@ -293,10 +306,15 @@ Отказ = Истина; Возврат; ИначеЕсли ТекущиеДанные.ТипСтроки = "Раздел" - ИЛИ (ТекущиеДанные.ТипСтроки = "Вопрос" И ТекущиеДанные.ТипВопроса <> ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Табличный") ) Тогда + ИЛИ (ТекущиеДанные.ТипСтроки = "Вопрос" И ТекущиеДанные.ТипВопроса <> ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Табличный") + И ТекущиеДанные.ТипВопроса <> ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Комплексный") ) Тогда ОткрытьФормуПростыхВопросов(ТекущиеДанные); + ИначеЕсли ТекущиеДанные.ТипСтроки = "Вопрос" И ТекущиеДанные.ТипВопроса = ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Комплексный") Тогда + + ОткрытьФормуМастераКомплексныхВопросов(ТекущиеДанные); + ИначеЕсли ТекущиеДанные.ТипСтроки = "Вопрос" И ТекущиеДанные.ТипВопроса = ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Табличный") Тогда ОткрытьФормуМастераТабличныхВопросов(ТекущиеДанные); @@ -313,6 +331,7 @@ СписокВыбора = Новый СписокЗначений; СписокВыбора.Добавить(НСтр("ru = 'Раздел'")); СписокВыбора.Добавить(НСтр("ru = 'Простой вопрос'")); + СписокВыбора.Добавить(НСтр("ru = 'Комплексный вопрос'")); СписокВыбора.Добавить(НСтр("ru = 'Условный вопрос'")); СписокВыбора.Добавить(НСтр("ru = 'Табличный вопрос'")); @@ -346,10 +365,15 @@ Отказ = Истина; Возврат; ИначеЕсли ТекущиеДанные.ТипСтроки = "Раздел" - ИЛИ (ТекущиеДанные.ТипСтроки = "Вопрос" И ТекущиеДанные.ТипВопроса <> ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Табличный") ) Тогда + ИЛИ (ТекущиеДанные.ТипСтроки = "Вопрос" И ТекущиеДанные.ТипВопроса <> ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Табличный") + И ТекущиеДанные.ТипВопроса <> ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Комплексный") ) Тогда ОткрытьФормуПростыхВопросов(ТекущиеДанные); + ИначеЕсли ТекущиеДанные.ТипСтроки = "Вопрос" И ТекущиеДанные.ТипВопроса = ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Комплексный") Тогда + + ОткрытьФормуМастераКомплексныхВопросов(ТекущиеДанные); + ИначеЕсли ТекущиеДанные.ТипСтроки = "Вопрос" И ТекущиеДанные.ТипВопроса = ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Табличный") Тогда ОткрытьФормуМастераТабличныхВопросов(ТекущиеДанные); @@ -402,6 +426,10 @@ &НаКлиенте Процедура ДобавитьРаздел(Команда) + Если Не ЗаписьЕслиНовыйВыполненаУспешно() Тогда + Возврат; + КонецЕсли; + ТекущиеДанные = Элементы.ФормаДереваАнкеты.ТекущиеДанные; Если ТекущиеДанные = Неопределено Тогда Возврат; @@ -425,6 +453,19 @@ КонецПроцедуры +// Добавляет комплексный вопрос в шаблон анкеты. +&НаКлиенте +Процедура ДобавитьКомплексныйВопрос(Команда) + + ТекущиеДанные = Элементы.ФормаДереваАнкеты.ТекущиеДанные; + Если ТекущиеДанные = Неопределено Тогда + Возврат; + КонецЕсли; + + ДобавитьВопрос(ТекущиеДанные,ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Комплексный")); + +КонецПроцедуры + // Добавляет вопрос с условием в шаблон анкеты. &НаКлиенте Процедура ДобавитьВопросСУсловием(Команда) @@ -454,8 +495,8 @@ &НаКлиенте Процедура ОткрытьФормуЗаполненияАнкеты(Команда) - Если Объект.Ссылка.Пустая() Тогда - Возврат; + Если Не ЗаписьЕслиНовыйВыполненаУспешно() Тогда + Возврат; КонецЕсли; Если Модифицированность Тогда @@ -544,16 +585,21 @@ ЭлементыДерева = Родитель.ПолучитьЭлементы(); НоваяСтрока = ЭлементыДерева.Добавить(); - НоваяСтрока.ТипСтроки = ТипСтроки; - НоваяСтрока.Обязательный = ЛОЖЬ; - НоваяСтрока.КлючСтроки = Новый УникальныйИдентификатор; + НоваяСтрока.ТипСтроки = ТипСтроки; + НоваяСтрока.Обязательный = Ложь; + НоваяСтрока.КлючСтроки = Новый УникальныйИдентификатор; + НоваяСтрока.ЭтоНоваяСтрока = Истина; Если ТипСтроки = "Вопрос" Тогда НоваяСтрока.ТипВопроса = ТипВопроса; НоваяСтрока.КодКартинки = АнкетированиеКлиентСервер.ПолучитьКодКартинкиШаблонаАнкеты(ЛОЖЬ,ТипВопроса); - НоваяСтрока.ЭлементарныйВопрос = ?(ТипВопроса = ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Табличный"),"",ПредопределенноеЗначение("ПланВидовХарактеристик.ВопросыДляАнкетирования.ПустаяСсылка")); - НоваяСтрока.Обязательный = ?(ТипВопроса = ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Табличный"),"",Ложь); + НоваяСтрока.ЭлементарныйВопрос = ?(ТипВопроса = ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Табличный") + ИЛИ ТипВопроса = ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Комплексный"), + "", + ПредопределенноеЗначение("ПланВидовХарактеристик.ВопросыДляАнкетирования.ПустаяСсылка")); + НоваяСтрока.Обязательный = ?(ТипВопроса = ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Табличный") + ИЛИ ТипВопроса = ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Комплексный"),"",Ложь); Иначе @@ -564,6 +610,8 @@ КонецЕсли; + НоваяСтрока.СпособОтображенияПодсказки = ПредопределенноеЗначение("Перечисление.СпособыОтображенияПодсказок.КонтекстнаяПодсказка"); + АнкетированиеКлиентСервер.СформироватьНумерациюДерева(ДеревоАнкеты); Элементы.ФормаДереваАнкеты.ТекущаяСтрока = НоваяСтрока.ПолучитьИдентификатор(); @@ -613,9 +661,12 @@ СпрОбъект.ЭлементарныйВопрос = СтрокаДерева.ЭлементарныйВопрос; СпрОбъект.ТипТабличногоВопроса = СтрокаДерева.ТипТабличногоВопроса; СпрОбъект.Обязательный = СтрокаДерева.Обязательный; + СпрОбъект.Подсказка = СтрокаДерева.Подсказка; + СпрОбъект.СпособОтображенияПодсказки = СтрокаДерева.СпособОтображенияПодсказки; СпрОбъект.РодительВопрос = ?(ВопросРодитель = Неопределено, Справочники.ВопросыШаблонаАнкеты.ПустаяСсылка(),ВопросРодитель); ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу(СтрокаДерева.СоставТабличногоВопроса,СпрОбъект.СоставТабличногоВопроса); ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу(СтрокаДерева.ПредопределенныеОтветы,СпрОбъект.ПредопределенныеОтветы); + ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу(СтрокаДерева.СоставКомплексногоВопроса,СпрОбъект.СоставКомплексногоВопроса); КонецЕсли; @@ -646,11 +697,13 @@ ТекущиеДанные.СоставТабличногоВопроса.Очистить(); ТекущиеДанные.ПредопределенныеОтветы.Очистить(); - ТекущиеДанные.ТипТабличногоВопроса = Параметр.ТипТабличногоВопроса; - ТекущиеДанные.Наименование = Параметр.Формулировка; - ТекущиеДанные.Формулировка = Параметр.Формулировка; - ТекущиеДанные.ЭлементарныйВопрос = Параметр.Формулировка; - ТекущиеДанные.Обязательный = ""; + ТекущиеДанные.ТипТабличногоВопроса = Параметр.ТипТабличногоВопроса; + ТекущиеДанные.Наименование = Параметр.Формулировка; + ТекущиеДанные.Формулировка = Параметр.Формулировка; + ТекущиеДанные.ЭлементарныйВопрос = Параметр.Формулировка; + ТекущиеДанные.Обязательный = ""; + ТекущиеДанные.Подсказка = Параметр.Подсказка; + ТекущиеДанные.СпособОтображенияПодсказки = Параметр.СпособОтображенияПодсказки; НомерСтроки = 1; Для каждого Вопрос Из Параметр.Вопросы Цикл @@ -671,6 +724,33 @@ КонецПроцедуры +&НаКлиенте +Процедура ОбработатьРезультатРаботыМастераКомплексныхВопросов(ТекущиеДанные,Параметр,ТекущаяСтрока) + + ТекущиеДанные.СоставКомплексногоВопроса.Очистить(); + + ТекущиеДанные.Наименование = Параметр.Формулировка; + ТекущиеДанные.Формулировка = Параметр.Формулировка; + ТекущиеДанные.ЭлементарныйВопрос = Параметр.Формулировка; + ТекущиеДанные.Обязательный = ""; + ТекущиеДанные.Подсказка = Параметр.Подсказка; + ТекущиеДанные.СпособОтображенияПодсказки = Параметр.СпособОтображенияПодсказки; + + НомерСтроки = 1; + Для каждого Вопрос Из Параметр.Вопросы Цикл + + НоваяСтрока = ТекущиеДанные.СоставКомплексногоВопроса.Добавить(); + НоваяСтрока.ЭлементарныйВопрос = Вопрос; + НоваяСтрока.НомерСтроки = НомерСтроки; + + НомерСтроки = НомерСтроки + 1; + + КонецЦикла; + + УстановитьУсловноеОформлениеФормы(); + +КонецПроцедуры + // Устанавливает условное оформление формы. &НаСервере Процедура УстановитьУсловноеОформлениеФормы(); @@ -777,21 +857,21 @@ &НаКлиенте Процедура ОпределитьДоступностьДереваШаблона() - НовыйЭлемент = Объект.Ссылка.Пустая(); - НедоступностьРедактирования = (НовыйЭлемент Или Объект.РедактированиеШаблонаЗавершено ИЛИ ПоДанномуШаблонуЕстьАнкеты); + НедоступностьРедактирования = Объект.РедактированиеШаблонаЗавершено ИЛИ ПоДанномуШаблонуЕстьАнкеты; - Элементы.ДеревоАнкеты.ТолькоПросмотр = НедоступностьРедактирования; - Элементы.ФормаДереваАнкеты.ТолькоПросмотр = НедоступностьРедактирования; - Элементы.ЗакончитьРедактирование.Доступность = НЕ НедоступностьРедактирования; - Элементы.ФормаДереваАнкеты.КоманднаяПанель.Доступность = НЕ НедоступностьРедактирования; - Элементы.ФормаДереваАнкеты.КонтекстноеМеню.Доступность = НЕ НедоступностьРедактирования; - Элементы.КонтекстноеМенюФормаДереваАнкетыДобавить.Доступность = НЕ НедоступностьРедактирования; - Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьРаздел.Доступность = НЕ НедоступностьРедактирования; - Элементы.ДеревоАнкетыКонтекстноеМенюПереместитьВверх.Доступность = НЕ НедоступностьРедактирования; - Элементы.ДеревоАнкетыКонтекстноеМенюПереместитьВниз.Доступность = НЕ НедоступностьРедактирования; - Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьВопрос.Доступность = НЕ НедоступностьРедактирования; - Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьВопросСУсловием.Доступность = НЕ НедоступностьРедактирования; - Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьТабличныйВопрос.Доступность = НЕ НедоступностьРедактирования; + Элементы.ДеревоАнкеты.ТолькоПросмотр = НедоступностьРедактирования; + Элементы.ФормаДереваАнкеты.ТолькоПросмотр = НедоступностьРедактирования; + Элементы.ЗакончитьРедактирование.Доступность = НЕ НедоступностьРедактирования; + Элементы.ФормаДереваАнкеты.КоманднаяПанель.Доступность = НЕ НедоступностьРедактирования; + Элементы.ФормаДереваАнкеты.КонтекстноеМеню.Доступность = НЕ НедоступностьРедактирования; + Элементы.КонтекстноеМенюФормаДереваАнкетыДобавить.Доступность = НЕ НедоступностьРедактирования; + Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьРаздел.Доступность = НЕ НедоступностьРедактирования; + Элементы.ДеревоАнкетыКонтекстноеМенюПереместитьВверх.Доступность = НЕ НедоступностьРедактирования; + Элементы.ДеревоАнкетыКонтекстноеМенюПереместитьВниз.Доступность = НЕ НедоступностьРедактирования; + Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьВопрос.Доступность = НЕ НедоступностьРедактирования; + Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьВопросСУсловием.Доступность = НЕ НедоступностьРедактирования; + Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьТабличныйВопрос.Доступность = НЕ НедоступностьРедактирования; + Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьКомплексныйВопрос.Доступность = НЕ НедоступностьРедактирования; КонецПроцедуры @@ -801,16 +881,17 @@ Если Объект.РедактированиеШаблонаЗавершено ИЛИ ПоДанномуШаблонуЕстьАнкеты Тогда ЭтотОбъект.ТолькоПросмотр = Истина; - Элементы.ДеревоАнкеты.ТолькоПросмотр = Истина; - Элементы.ФормаДереваАнкеты.ТолькоПросмотр = Истина; - Элементы.ФормаДереваАнкеты.КоманднаяПанель.Доступность = Ложь; - Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьРаздел.Доступность = Ложь; - Элементы.ДеревоАнкетыКонтекстноеМенюПереместитьВверх.Доступность = Ложь; - Элементы.ДеревоАнкетыКонтекстноеМенюПереместитьВниз.Доступность = Ложь; - Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьВопрос.Доступность = Ложь; - Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьВопросСУсловием.Доступность = Ложь; - Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьТабличныйВопрос.Доступность = Ложь; - Элементы.ЗакончитьРедактирование.Доступность = Ложь; + Элементы.ДеревоАнкеты.ТолькоПросмотр = Истина; + Элементы.ФормаДереваАнкеты.ТолькоПросмотр = Истина; + Элементы.ФормаДереваАнкеты.КоманднаяПанель.Доступность = Ложь; + Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьРаздел.Доступность = Ложь; + Элементы.ДеревоАнкетыКонтекстноеМенюПереместитьВверх.Доступность = Ложь; + Элементы.ДеревоАнкетыКонтекстноеМенюПереместитьВниз.Доступность = Ложь; + Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьВопрос.Доступность = Ложь; + Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьВопросСУсловием.Доступность = Ложь; + Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьТабличныйВопрос.Доступность = Ложь; + Элементы.ДеревоАнкетыКонтекстноеМенюДобавитьКомплексныйВопрос.Доступность = Ложь; + Элементы.ЗакончитьРедактирование.Доступность = Ложь; КонецЕсли; @@ -829,11 +910,27 @@ СтруктураПараметры.Вставить("ЗакрыватьПриЗакрытииВладельца",Истина); СтруктураПараметры.Вставить("ТолькоПросмотр",Ложь); СтруктураПараметры.Вставить("Заметки", ТекущиеДанные.Заметки); + СтруктураПараметры.Вставить("ЭтоНоваяСтрока", ТекущиеДанные.ЭтоНоваяСтрока); + СтруктураПараметры.Вставить("Подсказка", ТекущиеДанные.Подсказка); + СтруктураПараметры.Вставить("СпособОтображенияПодсказки", ТекущиеДанные.СпособОтображенияПодсказки); ОткрытьФорму("Справочник.ШаблоныАнкет.Форма.ФормаПростыхВопросов",СтруктураПараметры,ЭтотОбъект); КонецПроцедуры +&НаКлиенте +Процедура ОткрытьФормуМастераКомплексныхВопросов(ТекущиеДанные) + + СтруктураПараметры = Новый Структура; + СтруктураПараметры.Вставить("СоставКомплексногоВопроса",ТекущиеДанные.СоставКомплексногоВопроса); + СтруктураПараметры.Вставить("Формулировка",ТекущиеДанные.Формулировка); + СтруктураПараметры.Вставить("Подсказка",ТекущиеДанные.Подсказка); + СтруктураПараметры.Вставить("СпособОтображенияПодсказки",ТекущиеДанные.СпособОтображенияПодсказки); + + ОткрытьФорму("Справочник.ШаблоныАнкет.Форма.ФормаМастераКомплексныхВопросов",СтруктураПараметры,ЭтотОбъект); + +КонецПроцедуры + &НаКлиенте Процедура ОткрытьФормуМастераТабличныхВопросов(ТекущиеДанные) @@ -842,6 +939,8 @@ СтруктураПараметры.Вставить("СоставТабличногоВопроса",ТекущиеДанные.СоставТабличногоВопроса); СтруктураПараметры.Вставить("ПредопределенныеОтветы",ТекущиеДанные.ПредопределенныеОтветы); СтруктураПараметры.Вставить("Формулировка",ТекущиеДанные.Формулировка); + СтруктураПараметры.Вставить("Подсказка",ТекущиеДанные.Подсказка); + СтруктураПараметры.Вставить("СпособОтображенияПодсказки",ТекущиеДанные.СпособОтображенияПодсказки); ОткрытьФорму("Справочник.ШаблоныАнкет.Форма.ФормаМастераТабличныхВопросов",СтруктураПараметры,ЭтотОбъект); @@ -856,12 +955,16 @@ НоваяСтрока = СтрокаНазначение.ПолучитьЭлементы().Добавить(); КонецЕсли; - ЗаполнитьЗначенияСвойств(НоваяСтрока,СтрокаПеретаскивание,,"СоставТабличногоВопроса,ПредопределенныеОтветы"); + ЗаполнитьЗначенияСвойств(НоваяСтрока,СтрокаПеретаскивание,,"СоставТабличногоВопроса,ПредопределенныеОтветы, СоставКомплексногоВопроса"); Если СтрокаПеретаскивание.ТипВопроса = ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Табличный") Тогда ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу(СтрокаПеретаскивание.СоставТабличногоВопроса,НоваяСтрока.СоставТабличногоВопроса); ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу(СтрокаПеретаскивание.ПредопределенныеОтветы,НоваяСтрока.ПредопределенныеОтветы); КонецЕсли; + Если СтрокаПеретаскивание.ТипВопроса = ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Комплексный") Тогда + ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу(СтрокаПеретаскивание.СоставТабличногоВопроса,НоваяСтрока.СоставКомплексногоВопроса); + КонецЕсли; + Для каждого Элемент Из СтрокаПеретаскивание.ПолучитьЭлементы() Цикл ПеретащитьЭлементДерева(НоваяСтрока,Элемент,Ложь,Ложь); КонецЦикла; @@ -891,6 +994,10 @@ ДобавитьПростойВопрос(Команды.ДобавитьПростойВопрос) + ИначеЕсли ВыбранныйЭлемент.Значение = НСтр("ru = 'Комплексный вопрос'") Тогда + + ДобавитьКомплексныйВопрос(Команды.ДобавитьПростойВопрос) + ИначеЕсли ВыбранныйЭлемент.Значение = НСтр("ru = 'Условный вопрос'") Тогда ДобавитьВопросСУсловием(Команды.ДобавитьВопросСУсловием) @@ -939,4 +1046,32 @@ КонецПроцедуры +&НаСервере +Функция ЗаписьНаСервереВыполненаУспешно() + + Если Не ПроверитьЗаполнение() Тогда + Возврат Ложь; + Иначе + Записать(); + Возврат Истина; + КонецЕсли; + +КонецФункции + +&НаКлиенте +Функция ЗаписьЕслиНовыйВыполненаУспешно() + + Если Объект.Ссылка.Пустая() Тогда + + ОчиститьСообщения(); + Возврат ЗаписьНаСервереВыполненаУспешно(); + + Иначе + + Возврат Истина; + + КонецЕсли; + +КонецФункции + #КонецОбласти diff --git a/SSL/src/Catalogs/ШаблоныАнкет/ШаблоныАнкет.mdo b/SSL/src/Catalogs/ШаблоныАнкет/ШаблоныАнкет.mdo index 39b54f9d9..526e824f7 100644 --- a/SSL/src/Catalogs/ШаблоныАнкет/ШаблоныАнкет.mdo +++ b/SSL/src/Catalogs/ШаблоныАнкет/ШаблоныАнкет.mdo @@ -283,4 +283,18 @@ PersonalComputer MobileDevice + + ФормаМастераКомплексныхВопросов + + ru + Форма мастера комплексных вопросов + + + + ru + + + PersonalComputer + MobileDevice + diff --git a/SSL/src/Catalogs/ШаблоныСообщений/Forms/ЗаполнитьПроизвольныеПараметры/Form.form b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ЗаполнитьПроизвольныеПараметры/Form.form new file mode 100644 index 000000000..48196c869 --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ЗаполнитьПроизвольныеПараметры/Form.form @@ -0,0 +1,208 @@ + + + + <key>ru</key> + <value>Укажите параметры шаблона</value> + + + ПараметрыШаблона + 7 + true + true + + true + + + <key>ru</key> + <value>Параметры шаблона</value> + + + ru + Параметры шаблона + + + ПараметрыШаблонаРасширеннаяПодсказка + 8 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаКоманднаяПанельФормы + 1 + + ФормаОК + 9 + true + true + + true + + + ФормаОКРасширеннаяПодсказка + 10 + Label + true + true + + Left + + + Form.Command.ОК + Normal + Auto + true + true + UserCmds + Auto + + + ФормаОтмена + 5 + true + true + + true + + + ФормаОтменаРасширеннаяПодсказка + 6 + Label + true + true + + Left + + + Form.StandardCommand.Cancel + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + ГруппаКоманднаяПанельФормыРасширеннаяПодсказка + 2 + Label + true + true + + Left + + + CommandBar + + Left + Form + + + + ФормаКоманднаяПанель + -1 + Left + + + OnCreateAtServer + ПриСозданииНаСервере + + LockOwner + true + true + Vertical + true + true + true + auto + true + + Предмет + + <key>ru</key> + <value>Предмет</value> + + 1 + + + true + + + true + + + + СписокРеквизитов + + <key>ru</key> + <value>Список реквизитов</value> + + 2 + + ValueList + + + true + + + true + + + + + + + ОК + + <key>ru</key> + <value>ОК</value> + + 1 + + ru + ОК + + + true + + + + ОК + + + DontUse + Auto + + + Шаблон + + CatalogRef.ШаблоныСообщений + + + + Предмет + + + + + + + diff --git a/SSL/src/Catalogs/ШаблоныСообщений/Forms/ЗаполнитьПроизвольныеПараметры/Module.bsl b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ЗаполнитьПроизвольныеПараметры/Module.bsl new file mode 100644 index 000000000..bdd04b93d --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ЗаполнитьПроизвольныеПараметры/Module.bsl @@ -0,0 +1,102 @@ +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + Если Параметры.Свойство("АвтоТест") Тогда + Возврат; + КонецЕсли; + + Предмет = Параметры.Предмет; + ДобавитьЭлементыФормыПараметровШаблона(Параметры.Шаблон); +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиКомандФормы + +&НаКлиенте +Процедура ОК(Команда) + Результат = Новый Соответствие; + + Для Каждого ИмяРеквизита Из СписокРеквизитов Цикл + Результат.Вставить(ИмяРеквизита.Значение, ЭтотОбъект[ИмяРеквизита.Значение]) + КонецЦикла; + + Закрыть(Результат); +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Процедура ДобавитьЭлементыФормыПараметровШаблона(Шаблон) + + ДобавляемыеРеквизиты = Новый Массив; + Если Шаблон.ШаблонПоВнешнейОбработке Тогда + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда + МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки"); + ВнешнийОбъект = МодульДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(Шаблон.ВнешняяОбработка); + ПараметрыШаблона = ВнешнийОбъект.ПараметрыШаблона(); + + ТаблицаПараметрыШаблона = Новый ТаблицаЗначений; + ТаблицаПараметрыШаблона.Колонки.Добавить("Имя" , Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(50, ДопустимаяДлина.Переменная))); + ТаблицаПараметрыШаблона.Колонки.Добавить("Тип" , Новый ОписаниеТипов("ОписаниеТипов")); + ТаблицаПараметрыШаблона.Колонки.Добавить("Представление" , Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(150, ДопустимаяДлина.Переменная))); + + Для каждого ПараметрШаблона Из ПараметрыШаблона Цикл + ОписаниеТипа = ПараметрШаблона.ОписаниеТипа.Типы(); + Если ОписаниеТипа.Количество() > 0 Тогда + Если ОписаниеТипа[0] <> ТипЗнч(Предмет) Тогда + НовыйПараметр = ТаблицаПараметрыШаблона.Добавить(); + НовыйПараметр.Имя = ПараметрШаблона.ИмяПараметра; + НовыйПараметр.Представление = ПараметрШаблона.ПредставлениеПараметра; + НовыйПараметр.Тип = ПараметрШаблона.ОписаниеТипа; + ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы(ПараметрШаблона.ИмяПараметра, ПараметрШаблона.ОписаниеТипа,, ПараметрШаблона.ПредставлениеПараметра)); + КонецЕсли; + + КонецЕсли; + КонецЦикла; + КонецЕсли; + Иначе + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ШаблоныСообщенийПараметры.Ссылка, + | ШаблоныСообщенийПараметры.ИмяПараметра КАК Имя, + | ШаблоныСообщенийПараметры.ТипПараметра КАК Тип, + | ШаблоныСообщенийПараметры.ПредставлениеПараметра КАК Представление + |ИЗ + | Справочник.ШаблоныСообщений.Параметры КАК ШаблоныСообщенийПараметры + |ГДЕ + | ШаблоныСообщенийПараметры.Ссылка = &Ссылка"; + + Запрос.УстановитьПараметр("Ссылка", Шаблон); + + ТаблицаПараметрыШаблона = Запрос.Выполнить().Выгрузить(); + + Для каждого Реквизит Из ТаблицаПараметрыШаблона Цикл + ОписаниеТипа = Реквизит.Тип.Получить(); + ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы(Реквизит.Имя, ОписаниеТипа,, Реквизит.Представление)); + КонецЦикла; + КонецЕсли; + + ИзменитьРеквизиты(ДобавляемыеРеквизиты); + + Для Каждого ПараметрШаблона Из ТаблицаПараметрыШаблона Цикл + Элемент = Элементы.Добавить(ПараметрШаблона.Имя, Тип("ПолеФормы"), Элементы.ПараметрыШаблона); + Элемент.Вид = ВидПоляФормы.ПолеВвода; + Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Лево; + Элемент.Заголовок = ПараметрШаблона.Представление; + Элемент.ПутьКДанным = ПараметрШаблона.Имя; + Элемент.РастягиватьПоГоризонтали = Ложь; + Элемент.Ширина = 50; + СписокРеквизитов.Добавить(ПараметрШаблона.Имя); + КонецЦикла; + +КонецПроцедуры + +#КонецОбласти + diff --git a/SSL/src/CommonForms/ВыборПроизвольногоПериода/Form.form b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ПроизвольныйПараметр/Form.form similarity index 50% rename from SSL/src/CommonForms/ВыборПроизвольногоПериода/Form.form rename to SSL/src/Catalogs/ШаблоныСообщений/Forms/ПроизвольныйПараметр/Form.form index fe8d74cd5..4a9767a9c 100644 --- a/SSL/src/CommonForms/ВыборПроизвольногоПериода/Form.form +++ b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ПроизвольныйПараметр/Form.form @@ -1,19 +1,27 @@ - + + + <key>ru</key> + <value>Параметр шаблона</value> + - НачалоПериода - 9 + ТипСтрокой + 7 true true true - НачалоПериода + ТипСтрокой + + OnChange + ТипПараметраПриИзменении + - НачалоПериодаExtendedTooltip - 15 + ТипСтрокойРасширеннаяПодсказка + 9 Label true true @@ -22,8 +30,49 @@ - НачалоПериодаКонтекстноеМеню - 10 + ТипСтрокойКонтекстноеМеню + 8 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + Представление + 4 + true + true + + true + + + ПредставлениеПараметра + + + ПредставлениеРасширеннаяПодсказка + 6 + Label + true + true + + Left + + + + ПредставлениеКонтекстноеМеню + 5 true InputField @@ -42,19 +91,19 @@ - КонецПериода - 11 + Имя + 1 true true true - КонецПериода + ИмяПараметра - КонецПериодаExtendedTooltip - 16 + ИмяРасширеннаяПодсказка + 3 Label true true @@ -63,8 +112,8 @@ - КонецПериодаКонтекстноеМеню - 12 + ИмяКонтекстноеМеню + 2 true InputField @@ -82,23 +131,21 @@ Normal - Bottom - true - - ФормаКоманднаяПанель - -1 + + ГруппаКоманднаяПанельФормы + 10 - Выбрать - 1 + ФормаOK + 16 true true true - false + true - ВыбратьExtendedTooltip - 13 + ФормаOKРасширеннаяПодсказка + 17 Label true true @@ -107,6 +154,7 @@ Form.Command.ОК + Auto true true true @@ -114,17 +162,16 @@ Auto - Закрыть - 2 + ФормаОтмена + 18 true true true - false - ЗакрытьExtendedTooltip - 14 + ФормаОтменаРасширеннаяПодсказка + 19 Label true true @@ -132,15 +179,39 @@ Left - Form.StandardCommand.Cancel + Form.Command.Отмена Normal - PictureAndText + Auto true true UserCmds Auto - Right + true + true + + true + + + ГруппаКоманднаяПанельФормыРасширеннаяПодсказка + 11 + Label + true + true + + Left + + + CommandBar + + Right + Form + + + + ФормаКоманднаяПанель + -1 + Left OnCreateAtServer @@ -148,25 +219,63 @@ LockOwner true - true true + Vertical true true true auto true - КонецПериода + ИмяПараметра <key>ru</key> - <value>по</value> + <value>Имя параметра</value> + + 1 + + String + + 50 + + + + true + + + true + + true + + + ТипПараметра + + <key>ru</key> + <value>Тип параметра</value> + + 2 + + TypeDescription + + + true + + + true + + + + ПредставлениеПараметра + + <key>ru</key> + <value>Представление параметра</value> 3 - Date - - Date - + String + + 150 + true @@ -176,32 +285,12 @@ - НачалоПериода + ТипСтрокой <key>ru</key> - <value>Период с</value> + <value>Тип параметра</value> 4 - - Date - - Date - - - - true - - - true - - - - ИмяЭлемента - - <key>ru</key> - <value>Имя элемента</value> - - 1 String @@ -213,6 +302,26 @@ true + + СписокПараметров + + <key>ru</key> + <value>Список параметров</value> + + 5 + + ValueList + + + true + + + true + + + + + ОК @@ -227,54 +336,71 @@ <use> <common>true</common> </use> - <picture xsi:type="core:PictureRef"> - <picture>StdPicture.DataCompositionSelection</picture> - </picture> <action xsi:type="form:FormCommandHandlerContainer"> <handler> - <name>Выбрать</name> + <name>ОК</name> + </handler> + </action> + <currentRowUse>DontUse</currentRowUse> + <selectedRowsUse>Auto</selectedRowsUse> + </formCommands> + <formCommands> + <name>Отмена</name> + <title> + <key>ru</key> + <value>Отмена</value> + + 2 + + ru + Отмена + + + true + + + + Отмена DontUse Auto - КонецПериода + ИмяПараметра - Date - - Date - + String + + 50 + - МинимальныйПериод + ОписаниеТипа - EnumRef.ДоступныеПериодыОтчета + TypeDescription - НачалоПериода + ПредставлениеПараметра - Date - - Date - + String + + 150 + - ВидПериода - - EnumRef.ДоступныеПериодыОтчета - - - - ИмяЭлемента + ПолноеИмяТипаПараметраВводаНаОсновании String + + СписокПараметров + + diff --git a/SSL/src/Catalogs/ШаблоныСообщений/Forms/ПроизвольныйПараметр/Module.bsl b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ПроизвольныйПараметр/Module.bsl new file mode 100644 index 000000000..7ae3cb4ee --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ПроизвольныйПараметр/Module.bsl @@ -0,0 +1,171 @@ +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + Если Параметры.Свойство("АвтоТест") Тогда + Возврат; + КонецЕсли; + + Если Параметры.ОписаниеТипа.Типы().Количество() > 0 Тогда + НайденныйТипПараметра = Параметры.ОписаниеТипа.Типы()[0]; + КонецЕсли; + + ЗаполнитьСписокВыбораВводНаОсновании(НайденныйТипПараметра); + + Для каждого ПараметрИзФормы Из Параметры.СписокПараметров Цикл + Если СтрНачинаетсяС(Параметры.ИмяПараметра, ШаблоныСообщенийКлиентСервер.ЗаголовокПроизвольныхПараметров()) Тогда + ИмяПараметраДляПроверки = Сред(Параметры.ИмяПараметра, СтрДлина(ШаблоныСообщенийКлиентСервер.ЗаголовокПроизвольныхПараметров()) + 2); + Иначе + ИмяПараметраДляПроверки = Параметры.ИмяПараметра; + КонецЕсли; + Если ПараметрИзФормы.ИмяПараметра = ИмяПараметраДляПроверки Тогда + Продолжить; + КонецЕсли; + СписокПараметров.Добавить(ПараметрИзФормы.ИмяПараметра, ПараметрИзФормы.ПредставлениеПараметра); + КонецЦикла; + + Если СтрНачинаетсяС(Параметры.ИмяПараметра, ШаблоныСообщенийКлиентСервер.ЗаголовокПроизвольныхПараметров()) Тогда + ИмяПараметра = Сред(Параметры.ИмяПараметра, СтрДлина(ШаблоныСообщенийКлиентСервер.ЗаголовокПроизвольныхПараметров()) + 2); + Иначе + ИмяПараметра = Параметры.ИмяПараметра; + КонецЕсли; + ПредставлениеПараметра = Параметры.ПредставлениеПараметра; + ТипПараметра = Параметры.ОписаниеТипа; + +КонецПроцедуры + +&НаСервереБезКонтекста +Функция ТипПараметраСтрокой(ПолноеИмяТипа) + + Если СтрСравнить(ПолноеИмяТипа, НСтр("ru = 'Дата'")) = 0 Тогда + Результат = Тип("Дата"); + ИначеЕсли СтрСравнить(ПолноеИмяТипа, НСтр("ru = 'Строка'")) = 0 Тогда + Результат = Тип("Строка"); + Иначе + МенеджерОбъекта = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ПолноеИмяТипа); + Если МенеджерОбъекта <> Неопределено Тогда + Результат = ТипЗнч(МенеджерОбъекта.ПустаяСсылка()); + КонецЕсли; + КонецЕсли; + + Возврат Результат; +КонецФункции + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы + +&НаКлиенте +Процедура ТипПараметраПриИзменении(Элемент) + Если ПустаяСтрока(ПредставлениеПараметра) И ПустаяСтрока(ИмяПараметра) Тогда + ПредставлениеПараметра = Элементы.ТипСтрокой.ТекстРедактирования; + Позиция = СтрНайти(ТипСтрокой, ".", НаправлениеПоиска.СКонца); + Если Позиция > 0 И Позиция < СтрДлина(ТипСтрокой) Тогда + ИмяПараметра = Сред(ТипСтрокой, Позиция + 1); + Иначе + ИмяПараметра = ТипСтрокой; + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиКомандФормы + +&НаКлиенте +Процедура ОК(Команда) + + Для Каждого ПараметрИзФормы Из СписокПараметров Цикл + Если СтрСравнить(ПараметрИзФормы.Значение, ИмяПараметра) = 0 Тогда + ПоказатьПредупреждение(, НСтр("ru='Некорректное имя параметра. Параметр с таким именем уже был добавлен ранее.'")); + Возврат; + КонецЕсли; + Если СтрСравнить(ПараметрИзФормы.Представление, ПредставлениеПараметра) = 0 Тогда + ПоказатьПредупреждение(, НСтр("ru='Некорректное представление параметра. Параметр с таким представлением уже был добавлен ранее.'")); + Возврат; + КонецЕсли; + КонецЦикла; + + Если НедопустимоеИмяПараметра(ИмяПараметра) ИЛИ ПустаяСтрока(ИмяПараметра) Тогда + ПоказатьПредупреждение(, НСтр("ru='Некорректное имя параметра. Нельзя использовать пробелы, знаки пунктуации и другие спец. символы.'")); + Возврат; + КонецЕсли; + + Если ПустаяСтрока(ПредставлениеПараметра) Тогда + ПоказатьПредупреждение(, НСтр("ru='Некорректное представление параметра.'")); + Возврат; + КонецЕсли; + + Если ПустаяСтрока(ТипСтрокой) Тогда + ПоказатьПредупреждение(, НСтр("ru='Некорректный тип параметра.'")); + Возврат; + КонецЕсли; + + Результат = Новый Структура("ИмяПараметра, ПредставлениеПараметра, ТипПараметра"); + ЗаполнитьЗначенияСвойств(Результат, ЭтотОбъект); + Результат.ТипПараметра = ТипПараметраСтрокой(ТипСтрокой); + Закрыть(Результат); +КонецПроцедуры + +&НаКлиенте +Процедура Отмена(Команда) + Закрыть(Неопределено); +КонецПроцедуры + +#КонецОбласти + + +#Область СлужебныеПроцедурыИФункции + +&НаСервереБезКонтекста +Функция НедопустимоеИмяПараметра(ИмяПараметра) + + Попытка + Тест = Новый Структура(ИмяПараметра, ИмяПараметра); + Исключение + Возврат Истина; + КонецПопытки; + + Возврат Ложь; + +КонецФункции + +&НаСервере +Процедура ЗаполнитьСписокВыбораВводНаОсновании(ТипПараметра) + + ПредставлениеТипа = ""; + НастройкиШаблоновСообщений = ШаблоныСообщенийСлужебный.ПриОпределенииНастроек(); + Для каждого ПредметШаблона Из НастройкиШаблоновСообщений.ПредметыШаблонов Цикл + Если СтрСравнить(ПредметШаблона.Имя, Параметры.ПолноеИмяТипаПараметраВводаНаОсновании) = 0 Тогда + Продолжить; + КонецЕсли; + МетаданныеОбъекта = Метаданные.НайтиПоПолномуИмени(ПредметШаблона.Имя); + Если МетаданныеОбъекта = Неопределено Тогда + Продолжить; + КонецЕсли; + Элементы.ТипСтрокой.СписокВыбора.Добавить(ПредметШаблона.Имя, ПредметШаблона.Представление); + + МенеджерОбъекта = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ПредметШаблона.Имя); + Если МенеджерОбъекта <> Неопределено Тогда + Если ТипПараметра = ТипЗнч(МенеджерОбъекта.ПустаяСсылка()) Тогда + ПредставлениеТипа = ПредметШаблона.Имя; + КонецЕсли; + КонецЕсли; + КонецЦикла; + + Если ТипПараметра = Тип("Строка") Тогда + ПредставлениеТипа = "Строка"; + ИначеЕсли ТипПараметра = Тип("Дата") Тогда + ПредставлениеТипа = "Дата"; + КонецЕсли; + + Элементы.ТипСтрокой.СписокВыбора.Вставить(0, "Дата", НСтр("ru = 'Дата'")); + Элементы.ТипСтрокой.СписокВыбора.Вставить(0, "Строка", НСтр("ru = 'Строка'")); + + ТипСтрокой = ПредставлениеТипа; + +КонецПроцедуры + +#КонецОбласти + diff --git a/SSL/src/Catalogs/ШаблоныСообщений/Forms/СформироватьСообщение/Form.form b/SSL/src/Catalogs/ШаблоныСообщений/Forms/СформироватьСообщение/Form.form new file mode 100644 index 000000000..aa32380ec --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщений/Forms/СформироватьСообщение/Form.form @@ -0,0 +1,1003 @@ + + + + <key>ru</key> + <value>Шаблоны электронных писем</value> + + + СписокКомпоновщикНастроекПользовательскиеНастройки + 1 + true + true + + true + + + <key>ru</key> + <value>Группа пользовательских настроек</value> + + false + + СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка + 2 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + WeakSeparation + true + true + Auto + Auto + + + + ГруппаСписокВыбора + 34 + + Шаблоны + 39 + true + true + + true + + + Шаблоны + + None + Copy + Delete + EndEdit + MoveDown + MoveUp + SortListAsc + SortListDesc + + ШаблоныПредставление + 55 + true + true + + true + + + Шаблоны.Представление + + + ШаблоныПредставлениеРасширеннаяПодсказка + 57 + Label + true + true + + Left + + + + ШаблоныПредставлениеКонтекстноеМеню + 56 + true + + InputField + Auto + true + Left + true + + true + true + true + true + true + true + Normal + + + + ШаблоныКоманднаяПанель + 41 + Left + + + Selection + ШаблоныВыбор + + + BeforeAddRow + ШаблоныПередНачаломДобавления + + + OnActivateRow + ШаблоныПриАктивизацииСтроки + + + BeforeRowChange + ШаблоныПередНачаломИзменения + + + ШаблоныСтрокаПоиска + 43 + + ШаблоныСтрокаПоискаРасширеннаяПодсказка + 45 + Label + true + true + + Left + + + + ШаблоныСтрокаПоискаКонтекстноеМеню + 44 + true + + Шаблоны + + true + + + + ШаблоныСостояниеПросмотра + 46 + + ШаблоныСостояниеПросмотраРасширеннаяПодсказка + 48 + Label + true + true + + Left + + + + ШаблоныСостояниеПросмотраКонтекстноеМеню + 47 + true + + ViewStatusAddition + Шаблоны + + true + + + + ШаблоныУправлениеПоиском + 49 + + ШаблоныУправлениеПоискомРасширеннаяПодсказка + 51 + Label + true + true + + Left + + + + ШаблоныУправлениеПоискомКонтекстноеМеню + 50 + true + + SearchControlAddition + Шаблоны + + true + + + + ШаблоныРасширеннаяПодсказка + 42 + Label + true + true + + Left + + + + ШаблоныКонтекстноеМеню + 40 + true + + true + true + true + MultiRow + Row + 1 + 1 + AutoUse + AutoUse + true + true + false + false + false + true + Auto + Auto + true + true + true + + + + СтраницыПредпросмотра + 60 + + СтраницаОбычныйТекст + 66 + + ПредпросмотрОбычныйТекст + 71 + true + true + + true + + + ПредпросмотрОбычныйТекст + + None + + ПредпросмотрОбычныйТекстРасширеннаяПодсказка + 73 + Label + true + true + + Left + + + + ПредпросмотрОбычныйТекстКонтекстноеМеню + 72 + true + + TextDocumentField + true + Enter + true + Left + true + + 50 + true + 15 + true + true + true + + + true + true + + true + + + <key>ru</key> + <value>Страница обычный текст</value> + + + ru + Страница обычный текст + + + СтраницаОбычныйТекстРасширеннаяПодсказка + 67 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СтраницаФорматированныйДокумент + 62 + + ПредпросмотрФорматированныйДокумент + 68 + true + true + + true + + + ПредпросмотрФорматированныйДокумент + + None + + ПредпросмотрФорматированныйДокументРасширеннаяПодсказка + 70 + Label + true + true + + Left + + + + ПредпросмотрФорматированныйДокументКонтекстноеМеню + 69 + true + + FormattedDocumentField + Enter + true + Left + true + + 50 + true + 10 + true + true + + + true + true + + true + + true + + СтраницаФорматированныйДокументРасширеннаяПодсказка + 63 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Страницы предпросмотра</value> + + + ru + Страницы предпросмотра + + + СтраницыПредпросмотраРасширеннаяПодсказка + 61 + Label + true + true + + Left + + + Pages + + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа список выбора</value> + + + ru + Группа список выбора + + + ГруппаСписокВыбораРасширеннаяПодсказка + 35 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ФормаКоманднаяПанель + -1 + + ФормаСформировать + 24 + true + true + + true + + + ФормаСформироватьРасширеннаяПодсказка + 25 + Label + true + true + + Left + + + Form.Command.Сформировать + Auto + true + true + true + UserCmds + Auto + + + ФормаСформироватьИОтправить + 22 + true + true + + true + + + ФормаСформироватьИОтправитьРасширеннаяПодсказка + 23 + Label + true + true + + Left + + + Form.Command.СформироватьИОтправить + Normal + Auto + true + true + UserCmds + Auto + + + ФормаГруппаРедактирование + 76 + + ФормаСоздать + 58 + true + true + + true + + + ФормаСоздатьРасширеннаяПодсказка + 59 + Label + true + true + + Left + + + Form.Command.Создать + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ФормаИзменить + 74 + true + true + + true + + + ФормаИзменитьРасширеннаяПодсказка + 75 + Label + true + true + + Left + + + Form.Item.Шаблоны.StandardCommand.Change + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Форма группа редактирование</value> + + + ru + Форма группа редактирование + + + ФормаГруппаРедактированиеРасширеннаяПодсказка + 77 + Label + true + true + + Left + + + + + Left + true + + + NotificationProcessing + ОбработкаОповещения + + + OnOpen + ПриОткрытии + + + OnCreateAtServer + ПриСозданииНаСервере + + LockOwner + true + true + Vertical + true + true + true + auto + true + + ПредпросмотрФорматированныйДокумент + + <key>ru</key> + <value>Предпросмотр форматированный документ</value> + + 2 + + FormattedDocument + + + true + + + true + + + + Шаблоны + + <key>ru</key> + <value>Шаблоны</value> + + 3 + + ValueTable + + + true + + + true + + + Имя + + <key>ru</key> + <value>Имя</value> + + 1 + + String + + + + true + + + true + + + + Представление + + <key>ru</key> + <value>Представление</value> + + 3 + + String + + + + true + + + true + + + + ТекстШаблона + + <key>ru</key> + <value>Текст шаблона</value> + + 2 + + String + + + + true + + + true + + + + ТипТекстаПисьма + + <key>ru</key> + <value>Тип текста письма</value> + + 4 + + EnumRef.СпособыРедактированияЭлектронныхПисем + + + true + + + true + + + + Ссылка + + <key>ru</key> + <value>Ссылка</value> + + 5 + + CatalogRef.ШаблоныСообщений + + + true + + + true + + + + ЕстьПроизвольныеПараметры + + <key>ru</key> + <value>Есть произвольные параметры</value> + + 6 + + Boolean + + + true + + + true + + + + ШаблонПоВнешнейОбработке + + <key>ru</key> + <value>Шаблон по внешней обработке</value> + + 7 + + Boolean + + + true + + + true + + + + + ВидСообщения + + <key>ru</key> + <value>Вид сообщения</value> + + 1 + + String + + + + true + + + true + + + + Предмет + + <key>ru</key> + <value>Предмет</value> + + 4 + + + true + + + true + + + + ПолноеИмяТипаОснования + + <key>ru</key> + <value>Полное имя типа основания</value> + + 5 + + String + + + + true + + + true + + + + ПредпросмотрОбычныйТекст + + <key>ru</key> + <value>Предпросмотр обычный текст</value> + + 6 + + TextDocument + + + true + + + true + + + + ПустойСписокШаблонов + + <key>ru</key> + <value>Пустой список шаблонов</value> + + 7 + + Boolean + + + true + + + true + + + + ПредназначенДляSMS + + <key>ru</key> + <value>Предназначен для SMS</value> + + 8 + + Boolean + + + true + + + true + + + + ПредназначенДляЭлектронныхПисем + + <key>ru</key> + <value>Предназначен для электронных писем</value> + + 9 + + Boolean + + + true + + + true + + + + ЕстьПравоИзменения + + <key>ru</key> + <value>Есть право изменения</value> + + 10 + + Boolean + + + true + + + true + + + + РежимВыбора + + <key>ru</key> + <value>Режим выбора</value> + + 11 + + Boolean + + + true + + + true + + + + СформироватьИОтправить + + <key>ru</key> + <value>Сформировать и отправить</value> + + 1 + + ru + Сформировать и отправить + + + true + + + + СформироватьИОтправить + + + DontUse + Auto + + + Сформировать + + <key>ru</key> + <value>Сформировать</value> + + 2 + + ru + Сформировать + + + true + + + + Сформировать + + + DontUse + Auto + + + Создать + + <key>ru</key> + <value>Создать</value> + + 3 + + ru + Создать + + + true + + + StdPicture.CreateListItem + + + + Создать + + + DontUse + Auto + + + ВидСообщения + + String + + + + + Предмет + + + + Назначение + + String + + + + + РежимВыбора + + Boolean + + + + + + + diff --git a/SSL/src/Catalogs/ШаблоныСообщений/Forms/СформироватьСообщение/Help/ru.html b/SSL/src/Catalogs/ШаблоныСообщений/Forms/СформироватьСообщение/Help/ru.html new file mode 100644 index 000000000..708970e9a --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщений/Forms/СформироватьСообщение/Help/ru.html @@ -0,0 +1,11 @@ + +

        Предназначен для выбора шаблонов сообщений sms или электронных писем.

        +

        В левой части списка перечислены наименования шаблонов, в правой части показывается содержание шаблона.

        +

        Использование шаблона

        +
        • Для выбора существующего шаблона выберите нужный шаблон в списке, нажмите Сформировать. +
        • Имеется возможность с помощью соответствующей кнопки сразу Сформировать и отправить sms-сообщение.

        Редактирование шаблона

        +
        • +
          Для редактирования шаблона дважды щелкните по нужному наименованию правой кнопкой мыши. Также можно воспользоваться командой Еще - Изменить.

        Ввод нового шаблона

        +
        • В списке всегда имеется пункт <Без шаблона>. +
        • Для ввода нового шаблона дважды щелкните по этому пункту мышкой или выделите его и воспользуйтесь командой Еще - Изменить.

        См. также:

        + \ No newline at end of file diff --git a/SSL/src/Catalogs/ШаблоныСообщений/Forms/СформироватьСообщение/Module.bsl b/SSL/src/Catalogs/ШаблоныСообщений/Forms/СформироватьСообщение/Module.bsl new file mode 100644 index 000000000..179742342 --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщений/Forms/СформироватьСообщение/Module.bsl @@ -0,0 +1,432 @@ +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + Предмет = Параметры.Предмет; + ВидСообщения = Параметры.ВидСообщения; + РежимВыбора = Параметры.РежимВыбора; + + Если ВидСообщения = "СообщениеSMS" Тогда + ПредназначенДляSMS = Истина; + ПредназначенДляЭлектронныхПисем = Ложь; + Заголовок = НСтр("ru = 'Шаблоны сообщений SMS'"); + Иначе + ПредназначенДляSMS = Ложь; + ПредназначенДляЭлектронныхПисем = Истина; + КонецЕсли; + + Если НЕ ПравоДоступа("Изменение", Метаданные.Справочники.ШаблоныСообщений) Тогда + ЕстьПравоИзменения = Ложь; + Элементы.ФормаИзменить.Видимость = Ложь; + Элементы.ФормаСоздать.Видимость = Ложь; + Иначе + ЕстьПравоИзменения = Истина; + КонецЕсли; + + Если РежимВыбора Тогда + Элементы.ФормаСформироватьИОтправить.Видимость = Ложь; + КонецЕсли; + + ЗаполнитьСписокДоступныхШаблонов(); + +КонецПроцедуры + +&НаКлиенте +Процедура ПриОткрытии(Отказ) + Если ПустойСписокШаблонов Тогда + ПараметрыОтправки = КонструкторПараметровОтправки(); + ПараметрыОтправки.ДополнительныеПараметры.ПреобразовыватьHTMLДляФорматированногоДокумента = Истина; + Закрыть(); + ОткрытьФормуСообщения(ПараметрыОтправки); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) + Если ИмяСобытия = "ПослеЗаписиШаблонаСообщения" Тогда + СсылкаНаВыбранныйЭлемент = Неопределено; + Если Элементы.Шаблоны.ТекущиеДанные <> Неопределено Тогда + СсылкаНаВыбранныйЭлемент = Элементы.Шаблоны.ТекущиеДанные.Ссылка; + КонецЕсли; + ЗаполнитьСписокДоступныхШаблонов(); + НайденныеСтроки = Шаблоны.НайтиСтроки(Новый Структура("Ссылка", СсылкаНаВыбранныйЭлемент)); + Если НайденныеСтроки.Количество() > 0 Тогда + Элементы.Шаблоны.ТекущаяСтрока = НайденныеСтроки[0].ПолучитьИдентификатор(); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовТаблицыФормыШаблоны + +&НаКлиенте +Процедура ШаблоныПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр) + Отказ = Истина; + СоздатьНовыйШаблон(); +КонецПроцедуры + +&НаКлиенте +Процедура ШаблоныПриАктивизацииСтроки(Элемент) + Если Элемент.ТекущиеДанные <> Неопределено Тогда + Элементы.ФормаСформироватьИОтправить.Доступность = (Элемент.ТекущиеДанные.Имя <> "<БезШаблона>"); + Если Элемент.ТекущиеДанные.ТипТекстаПисьма = ПредопределенноеЗначение("Перечисление.СпособыРедактированияЭлектронныхПисем.HTML") Тогда + Элементы.СтраницыПредпросмотра.ТекущаяСтраница = Элементы.СтраницаФорматированныйДокумент; + УстановитьHTMLВФорматированныйДокумент(Элемент.ТекущиеДанные.ТекстШаблона, Элемент.ТекущиеДанные.Ссылка); + Иначе + Элементы.СтраницыПредпросмотра.ТекущаяСтраница = Элементы.СтраницаОбычныйТекст; + ПредпросмотрОбычныйТекст.УстановитьТекст(Элемент.ТекущиеДанные.ТекстШаблона); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ШаблоныПередНачаломИзменения(Элемент, Отказ) + Отказ = Истина; + Если Элемент.ТекущиеДанные <> Неопределено Тогда + ПараметрыФормы = Новый Структура("Ключ", Элемент.ТекущиеДанные.Ссылка); + ОткрытьФорму("Справочник.ШаблоныСообщений.ФормаОбъекта", ПараметрыФормы); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ШаблоныВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) + СтандартнаяОбработка = Ложь; + Если РежимВыбора Тогда + ТекущиеДанные = Шаблоны.НайтиПоИдентификатору(ВыбраннаяСтрока); + Если ТекущиеДанные = Неопределено Тогда + Возврат; + КонецЕсли; + + ПараметрыОтправки = КонструкторПараметровОтправки(ТекущиеДанные.Ссылка); + ПараметрыОтправки.ДополнительныеПараметры.ПреобразовыватьHTMLДляФорматированногоДокумента = Истина; + Сообщение = СформироватьСообщение(ПараметрыОтправки, ВидСообщения); + Закрыть(Сообщение); + Иначе + СформироватьСообщениеПоВыбранномШаблону(); + КонецЕсли; +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиКомандФормы + +&НаКлиенте +Процедура Сформировать(Команда) + СформироватьСообщениеПоВыбранномШаблону(); +КонецПроцедуры + +&НаКлиенте +Процедура СформироватьИОтправить(Команда) + + ТекущиеДанные = Шаблоны.НайтиПоИдентификатору(Элементы.Шаблоны.ТекущаяСтрока); + Если ТекущиеДанные = Неопределено Тогда + Возврат; + КонецЕсли; + + ПараметрыОтправки = КонструкторПараметровОтправки(ТекущиеДанные.Ссылка); + Если ТекущиеДанные.ЕстьПроизвольныеПараметры Тогда + ВводПараметров(ТекущиеДанные.Ссылка, ПараметрыОтправки, Истина); + Иначе + ОтравитьСообщение(ПараметрыОтправки); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура Создать(Команда) + СоздатьНовыйШаблон(); +КонецПроцедуры + +&НаКлиенте +Процедура ВводПараметров(Шаблон, ПараметрыОтправки, ОтправлятьСразу) + + ПараметрыДляЗаполнения = Новый Структура("Шаблон, Предмет", Шаблон, Предмет); + ДополнительныеПараметры = Новый Структура("ПараметрыОтправки, ОтправлятьСразу", ПараметрыОтправки, ОтправлятьСразу); + Оповещение = Новый ОписаниеОповещения("ПослеВводаПараметров", ЭтотОбъект, ДополнительныеПараметры); + ОткрытьФорму("Справочник.ШаблоныСообщений.Форма.ЗаполнитьПроизвольныеПараметры", ПараметрыДляЗаполнения,,,,, Оповещение); +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаКлиенте +Процедура СформироватьСообщениеПоВыбранномШаблону() + + ТекущиеДанные = Шаблоны.НайтиПоИдентификатору(Элементы.Шаблоны.ТекущаяСтрока); + Если ТекущиеДанные = Неопределено Тогда + Возврат; + КонецЕсли; + + ПараметрыОтправки = КонструкторПараметровОтправки(ТекущиеДанные.Ссылка); + ПараметрыОтправки.ДополнительныеПараметры.ПреобразовыватьHTMLДляФорматированногоДокумента = Истина; + Если РежимВыбора Тогда + Сообщение = СформироватьСообщение(ПараметрыОтправки, ВидСообщения); + Закрыть(Сообщение); + Иначе + Если ТекущиеДанные.ЕстьПроизвольныеПараметры Тогда + ВводПараметров(ТекущиеДанные.Ссылка, ПараметрыОтправки, Ложь); + Иначе + Закрыть(); + ОткрытьФормуСообщения(ПараметрыОтправки); + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ПослеВводаПараметров(Результат, ДополнительныеПараметры) Экспорт + + Если Результат <> Неопределено И Результат <> КодВозвратаДиалога.Отмена Тогда + Если ДополнительныеПараметры.ОтправлятьСразу Тогда + ОтравитьСообщение(ДополнительныеПараметры.ПараметрыОтправки); + Иначе + Закрыть(); + ДополнительныеПараметры.ПараметрыОтправки.ДополнительныеПараметры.ПроизвольныеПараметры = Результат; + ОткрытьФормуСообщения(ДополнительныеПараметры.ПараметрыОтправки); + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ОтравитьСообщение(Знач ПараметрыОтправкиСообщения) + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСПочтовымиСообщениями") Тогда + ОписаниеОповещения = Новый ОписаниеОповещения("ОтравитьСообщениеПроверкаУчетнойЗаписиВыполнена", ЭтотОбъект, ПараметрыОтправкиСообщения); + МодульРаботаСПочтовымиСообщениямиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСПочтовымиСообщениямиКлиент"); + МодульРаботаСПочтовымиСообщениямиКлиент.ПроверитьНаличиеУчетнойЗаписиДляОтправкиПочты(ОписаниеОповещения); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ОтравитьСообщениеПроверкаУчетнойЗаписиВыполнена(Результат, ПараметрыОтправки) Экспорт + + Сообщение = СформироватьСообщениеИОтправить(ПараметрыОтправки); + Если Сообщение.Отправлено Тогда; + Закрыть(); + Иначе + ПараметрыОтправки.ДополнительныеПараметры.ПреобразовыватьHTMLДляФорматированногоДокумента = Истина; + Оповещение = Новый ОписаниеОповещения("ПослеВопросаОбОткрытиеФормыСообщения", ЭтотОбъект, ПараметрыОтправки); + ОписаниеОшибки = Сообщение.ОписаниеОшибки + Символы.ПС + НСтр("ru = 'Открыть форму отправки сообщения?'"); + ПоказатьВопрос(Оповещение, ОписаниеОшибки, РежимДиалогаВопрос.ДаНет); + КонецЕсли; + +КонецПроцедуры + +&НаСервереБезКонтекста +Функция СформироватьСообщение(ПараметрыОтправки, ВидСообщения) + + Сообщение = ШаблоныСообщений.СформироватьСообщение(ПараметрыОтправки.Шаблон, ПараметрыОтправки.Предмет, ПараметрыОтправки.УникальныйИдентификатор, ПараметрыОтправки.ДополнительныеПараметры); + Если ВидСообщения = "Письмо" Тогда + Возврат ПреобразоватьПараметрыПисьма(Сообщение); + Иначе + Сообщение.Вложения = Неопределено; + КонецЕсли; + + Возврат Сообщение; + +КонецФункции + +&НаСервере +Функция СформироватьСообщениеИОтправить(ПараметрыОтправки) + + Возврат ШаблоныСообщенийСлужебный.СформироватьСообщениеИОтправить(ПараметрыОтправки); + +КонецФункции + +&НаКлиенте +Процедура ОткрытьФормуСообщения(Знач ПараметрыОтправки) + + Результат = СформироватьСообщение(ПараметрыОтправки, ВидСообщения); + + Если ВидСообщения = "СообщениеSMS" Тогда + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ОтправкаSMS") Тогда + МодульОтправкаSMSКлиент= ОбщегоНазначенияКлиент.ОбщийМодуль("ОтправкаSMSКлиент"); + ДополнительныеПараметры = Новый Структура("ИсточникКонтактнойИнформации, ПеревестиВТранслит"); + ДополнительныеПараметры.ИсточникКонтактнойИнформации = Предмет; + ДополнительныеПараметры.ПеревестиВТранслит = + ?(Результат.ДополнительныеПараметры.Свойство("ПеревестиВТранслит"), Результат.ДополнительныеПараметры.ПеревестиВТранслит, Ложь); + МодульОтправкаSMSКлиент.ОтправитьSMS(Результат.Получатель.ВыгрузитьЗначения(), Результат.Текст, ДополнительныеПараметры); + КонецЕсли; + Иначе + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСПочтовымиСообщениями") Тогда + МодульРаботаСПочтовымиСообщениямиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСПочтовымиСообщениямиКлиент"); + МодульРаботаСПочтовымиСообщениямиКлиент.СоздатьНовоеПисьмо(Результат); + КонецЕсли; + КонецЕсли; + + Если Результат.Свойство("СообщенияПользователю") + И Результат.СообщенияПользователю <> Неопределено + И Результат.СообщенияПользователю.Количество() > 0 Тогда + Для каждого СообщенияПользователю Из Результат.СообщенияПользователю Цикл + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СообщенияПользователю.Текст, + СообщенияПользователю.КлючДанных, СообщенияПользователю.Поле, СообщенияПользователю.ПутьКДанным); + КонецЦикла; + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Функция КонструкторПараметровОтправки(Шаблон = Неопределено) + + ПараметрыОтправки = Новый Структура(); + ПараметрыОтправки.Вставить("Шаблон", Шаблон); + ПараметрыОтправки.Вставить("Предмет", Предмет); + ПараметрыОтправки.Вставить("УникальныйИдентификатор", УникальныйИдентификатор); + ПараметрыОтправки.Вставить("ДополнительныеПараметры", Новый Структура); + ПараметрыОтправки.ДополнительныеПараметры.Вставить("ПреобразовыватьHTMLДляФорматированногоДокумента", Ложь); + ПараметрыОтправки.ДополнительныеПараметры.Вставить("ВидСообщения", ВидСообщения); + ПараметрыОтправки.ДополнительныеПараметры.Вставить("ПроизвольныеПараметры", Новый Соответствие); + + Возврат ПараметрыОтправки; + +КонецФункции + +&НаКлиенте +Процедура ПослеВопросаОбОткрытиеФормыСообщения(Результат, ПараметрыОтправки) Экспорт + Если Результат = КодВозвратаДиалога.Да Тогда + ОткрытьФормуСообщения(ПараметрыОтправки); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура СоздатьНовыйШаблон() + + ПараметрыФормы = Новый Структура("ВидСообщения, ПолноеИмяТипаОснования, ТолькоДляАвтора", ВидСообщения, ПолноеИмяТипаОснования, Истина); + Оповещение = Новый ОписаниеОповещения("ОбновитьОкно", ЭтотОбъект); + ОткрытьФорму("Справочник.ШаблоныСообщений.ФормаОбъекта", ПараметрыФормы, ЭтотОбъект,,,, ) + +КонецПроцедуры + +Процедура ОбновитьОкно(Результат, ДополнительныеПараметры) + ЗаполнитьСписокДоступныхШаблонов(); +КонецПроцедуры + +&НаСервере +Процедура ЗаполнитьСписокДоступныхШаблонов() + + Шаблоны.Очистить(); + ТипШаблона = ?(ПредназначенДляSMS, "SMS", "Письмо"); + Запрос = ШаблоныСообщенийСлужебный.ПодготовитьЗапросДляПолученияСпискаШаблонов(ТипШаблона, Предмет); + + РезультатЗапроса = Запрос.Выполнить().Выбрать(); + + Пока РезультатЗапроса.Следующий() Цикл + НоваяСтрока = Шаблоны.Добавить(); + ЗаполнитьЗначенияСвойств(НоваяСтрока, РезультатЗапроса); + + Если РезультатЗапроса.ШаблонПоВнешнейОбработке + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда + МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки"); + ВнешнийОбъект = МодульДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(РезультатЗапроса.ВнешняяОбработка); + ПараметрыШаблона = ВнешнийОбъект.ПараметрыШаблона(); + + Если ПараметрыШаблона.Количество() > 1 Тогда + ЕстьПроизвольныеПараметры = Истина; + Иначе + ЕстьПроизвольныеПараметры = Ложь; + КонецЕсли; + Иначе + ПроизвольныеПараметры = РезультатЗапроса.ЕстьПроизвольныеПараметры.Выгрузить(); + ЕстьПроизвольныеПараметры = ПроизвольныеПараметры.Количество() > 0; + КонецЕсли; + + НоваяСтрока.ЕстьПроизвольныеПараметры = ЕстьПроизвольныеПараметры; + КонецЦикла; + + Если Шаблоны.Количество() = 0 Тогда + ПустойСписокШаблонов = Истина; + Возврат; + КонецЕсли; + + Шаблоны.Сортировать("Представление"); + + Если НЕ РежимВыбора Тогда + ПерваяСтрока = Шаблоны.Вставить(0); + ПерваяСтрока.Имя = "<БезШаблона>"; + ПерваяСтрока.Представление = НСтр("ru = '<Без шаблона>'"); + КонецЕсли; + + Если Шаблоны.Количество() = 0 Тогда + Элементы.ФормаСоздать.ТолькоВоВсехДействиях = Ложь; + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура УстановитьHTMLВФорматированныйДокумент(ТекстШаблонаПисьмаHTML, СсылкаНаТекущийОбъект); + + ПараметрШаблона = Новый Структура("Шаблон, УникальныйИдентификатор"); + ПараметрШаблона.Шаблон = СсылкаНаТекущийОбъект; + ПараметрШаблона.УникальныйИдентификатор = УникальныйИдентификатор; + Сообщение = ШаблоныСообщенийСлужебный.КонструкторСообщения(); + Сообщение.Текст = ТекстШаблонаПисьмаHTML; + ШаблоныСообщенийСлужебный.ОбработатьHTMLДляФорматированногоДокумента(ПараметрШаблона, Сообщение, Истина); + СтруктураВложений = Новый Структура(); + Для каждого ВложениеВHTML Из Сообщение.Вложения Цикл + Изображение = Новый Картинка(ПолучитьИзВременногоХранилища(ВложениеВHTML.АдресВоВременномХранилище)); + СтруктураВложений.Вставить(ВложениеВHTML.Представление, Изображение); + КонецЦикла; + ПредпросмотрФорматированныйДокумент.УстановитьHTML(Сообщение.Текст, СтруктураВложений); + +КонецПроцедуры + +&НаСервереБезКонтекста +Функция ПреобразоватьПараметрыПисьма(Сообщение) + + ПараметрыПисьма = Новый Структура(); + ПараметрыПисьма.Вставить("Отправитель"); + ПараметрыПисьма.Вставить("Тема", Сообщение.Тема); + ПараметрыПисьма.Вставить("Текст", Сообщение.Текст); + ПараметрыПисьма.Вставить("СообщенияПользователю", Сообщение.СообщенияПользователю); + ПараметрыПисьма.Вставить("УдалятьФайлыПослеОтправки", Ложь); + + Если Сообщение.Получатель = Неопределено ИЛИ Сообщение.Получатель.Количество() = 0 Тогда + ПараметрыПисьма.Вставить("Получатель", ""); + Иначе + ПараметрыПисьма.Вставить("Получатель", Сообщение.Получатель); + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Взаимодействия") + И ПолучитьФункциональнуюОпцию("ИспользоватьПочтовыйКлиент") Тогда + Если ПолучитьФункциональнуюОпцию("ОтправлятьПисьмаВФорматеHTML") Тогда + СтруктураВложений = Новый Структура(); + + Индекс = Сообщение.Вложения.Количество() - 1; + Пока Индекс >= 0 Цикл + Вложение = Сообщение.Вложения[Индекс]; + Если ЗначениеЗаполнено(Вложение.Идентификатор) Тогда + Картинка = Новый Картинка(ПолучитьИзВременногоХранилища(Вложение.АдресВоВременномХранилище)); + СтруктураВложений.Вставить(Вложение.Представление, Картинка); + Сообщение.Вложения.Удалить(Индекс); + КонецЕсли; + Индекс = Индекс - 1; + КонецЦикла; + ПараметрыПисьма.Текст = Новый Структура("ТекстHTML, СтруктураВложений", ПараметрыПисьма.Текст, СтруктураВложений); + Иначе + Если СтрНачинаетсяС(ПараметрыПисьма.Текст, " + + + Normal + dfcece9d-5077-440b-b6b3-45a5cb4538eb + + + Normal + 88619765-ccb3-46c6-ac52-38e9c992ebd4 + + + Normal + b75fecce-942b-4aed-abc9-e6a02e460fb3 + + Normal + 911b6018-f537-43e8-a417-da56b22f9aec + diff --git a/SSL/src/Catalogs/ШаблоныСообщений/Forms/ФормаСписка/Form.form b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ФормаСписка/Form.form new file mode 100644 index 000000000..f2ae4d0c4 --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ФормаСписка/Form.form @@ -0,0 +1,748 @@ + + + + ГруппаФильтр + 42 + + ШаблонДляФильтр + 36 + true + true + + true + + + ШаблонДля + + + ШаблонДляФильтрРасширеннаяПодсказка + 38 + Label + true + true + + Left + + + + ШаблонДляФильтрКонтекстноеМеню + 37 + true + + InputField + Enter + true + Left + true + + + ChoiceProcessing + ШаблонДляФильтрОбработкаВыбора + + true + true + true + true + true + true + true + Normal + + + + НазначениеФильтр + 39 + true + true + + true + + + Назначение + + + OnChange + НазначениеФильтрПриИзменении + + + НазначениеФильтрРасширеннаяПодсказка + 41 + Label + true + true + + Left + + + + НазначениеФильтрКонтекстноеМеню + 40 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа фильтр</value> + + + ru + Группа фильтр + + + ГруппаФильтрРасширеннаяПодсказка + 43 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + СписокКомпоновщикНастроекПользовательскиеНастройки + 1 + true + true + + true + + + <key>ru</key> + <value>Группа пользовательских настроек</value> + + false + + СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка + 2 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + WeakSeparation + true + true + Auto + Auto + + + + Список + 3 + true + true + + true + + + Список + + true + None + + Наименование + 16 + true + true + + true + + + Список.Description + + true + + НаименованиеРасширеннаяПодсказка + 18 + Label + true + true + + Left + + + + НаименованиеКонтекстноеМеню + 17 + true + + LabelField + Enter + true + Left + true + + true + true + + + + ШаблонДля + 30 + true + true + + true + + + Список.ШаблонДля + + + ШаблонДляРасширеннаяПодсказка + 32 + Label + true + true + + Left + + + + ШаблонДляКонтекстноеМеню + 31 + true + + LabelField + Enter + true + Left + true + + true + true + + + + Назначение + 33 + true + true + + true + + + Список.Назначение + + + НазначениеРасширеннаяПодсказка + 35 + Label + true + true + + Left + + + + НазначениеКонтекстноеМеню + 34 + true + + LabelField + Enter + true + Left + true + + true + true + + + None + + СписокКоманднаяПанель + 5 + Left + + + СписокСтрокаПоиска + 7 + + СписокСтрокаПоискаРасширеннаяПодсказка + 9 + Label + true + true + + Left + + + + СписокСтрокаПоискаКонтекстноеМеню + 8 + true + + Список + + true + + + + СписокСостояниеПросмотра + 10 + + СписокСостояниеПросмотраРасширеннаяПодсказка + 12 + Label + true + true + + Left + + + + СписокСостояниеПросмотраКонтекстноеМеню + 11 + true + + ViewStatusAddition + Список + + true + + + + СписокУправлениеПоиском + 13 + + СписокУправлениеПоискомРасширеннаяПодсказка + 15 + Label + true + true + + Left + + + + СписокУправлениеПоискомКонтекстноеМеню + 14 + true + + SearchControlAddition + Список + + true + + + + СписокРасширеннаяПодсказка + 6 + Label + true + true + + Left + + + + СписокКонтекстноеМеню + 4 + true + + true + true + true + true + true + MultiRow +
        true
        + 1 + 1 + AutoUse + AutoUse + true + true + Auto + Auto + ExpandTopLevel + true + true + true + + Список.DefaultPicture + + true + + 60 + + 0001-01-01T00:00:00 + 0001-01-01T00:00:00 + + + true + true + СписокКомпоновщикНастроекПользовательскиеНастройки + +
        + + ФормаКоманднаяПанель + -1 + + ФормаГруппаСоздать + 22 + + ФормаСоздатьШаблонЭлектронногоПисьма + 24 + true + true + + true + + + ФормаСоздатьШаблонЭлектронногоПисьмаРасширеннаяПодсказка + 25 + Label + true + true + + Left + + + Form.Command.СоздатьШаблонЭлектронногоПисьма + Normal + Auto + true + true + UserCmds + Auto + + + ФормаСоздатьШаблонСообщенияSMS + 26 + true + true + + true + + + ФормаСоздатьШаблонСообщенияSMSРасширеннаяПодсказка + 27 + Label + true + true + + Left + + + Form.Command.СоздатьШаблонСообщенияSMS + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Создать шаблон</value> + + + ru + Форма группа создать + + + ФормаГруппаСоздатьРасширеннаяПодсказка + 23 + Label + true + true + + Left + + + Popup + + Auto + Normal + + + + ФормаПоказыватьСлужебныеШаблоны + 44 + true + true + + true + + + ФормаПоказыватьСлужебныеШаблоныРасширеннаяПодсказка + 45 + Label + true + true + + Left + + + Form.Command.ПоказыватьСлужебныеШаблоны + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ГруппаКоманднаяПанельФормы + 46 + true + true + + true + + + ГруппаКоманднаяПанельФормыРасширеннаяПодсказка + 47 + Label + true + true + + Left + + + + Form + + + Left + + + OnCreateAtServer + ПриСозданииНаСервере + + Create + DontBlock + true + true + true + Vertical + true + true + true + auto + true + + Список + 1 + + DynamicList + + + true + + + true + +
        true
        + + ВЫБРАТЬ РАЗРЕШЕННЫЕ + СправочникШаблоныСообщений.Ссылка, + СправочникШаблоныСообщений.Наименование, + ВЫБОР + КОГДА СправочникШаблоныСообщений.ПредназначенДляSMS + ТОГДА &СообщениеSMS + ИНАЧЕ &ЭлектроннаяПочта + КОНЕЦ КАК ШаблонДля, + ВЫБОР + КОГДА СправочникШаблоныСообщений.Назначение = "" + ТОГДА &Общий + ИНАЧЕ СправочникШаблоныСообщений.Назначение + КОНЕЦ КАК Назначение +ИЗ + Справочник.ШаблоныСообщений КАК СправочникШаблоныСообщений +ГДЕ + (&Назначение = "" + ИЛИ СправочникШаблоныСообщений.Назначение = &Назначение) + И (СправочникШаблоныСообщений.Назначение <> &СлужебныйШаблон + ИЛИ &ПоказыватьСлужебныеШаблоны) + Catalog.ШаблоныСообщений + true + true + true + true + true + +
        + + ШаблонДля + + <key>ru</key> + <value>Шаблон для</value> + + 2 + + String + + + + true + + + true + + + + Назначение + + <key>ru</key> + <value>Назначение</value> + + 3 + + String + + + + true + + + true + + + + ВключенаРаботаСПочтовымиСообщениями + + <key>ru</key> + <value>Включена работа с почтовыми сообщениями</value> + + 4 + + Boolean + + + true + + + true + + + + ВключенаОтправкаSMS + + <key>ru</key> + <value>Включена отправка SMS</value> + + 5 + + Boolean + + + true + + + true + + + + СоздатьШаблонЭлектронногоПисьма + + <key>ru</key> + <value>Электронного письма</value> + + 1 + + ru + Создать шаблон электронного письма + + + true + + + + СоздатьШаблонЭлектронногоПисьма + + + DontUse + Auto + + + СоздатьШаблонСообщенияSMS + + <key>ru</key> + <value>Сообщения SMS</value> + + 2 + + ru + Создать шаблон сообщения SMS + + + true + + + + СоздатьШаблонСообщенияSMS + + + DontUse + Auto + + + ПоказыватьСлужебныеШаблоны + + <key>ru</key> + <value>Показывать служебные шаблоны</value> + + 3 + + ru + Показывать служебные шаблоны + + + true + + + + ПоказыватьСлужебныеШаблоны + + + DontUse + Auto + + + + + + +
        diff --git a/SSL/src/Catalogs/ШаблоныСообщений/Forms/ФормаСписка/Module.bsl b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ФормаСписка/Module.bsl new file mode 100644 index 000000000..9007b14e2 --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ФормаСписка/Module.bsl @@ -0,0 +1,141 @@ +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + Если Параметры.Свойство("АвтоТест") Тогда + Возврат; + КонецЕсли; + + ИнициализироватьОтборы(); + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Взаимодействия") Тогда + ВключенаОтправкаSMS = Истина; + ВключенаРаботаСПочтовымиСообщениями = Истина; + Иначе + ВключенаРаботаСПочтовымиСообщениями = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСПочтовымиСообщениями"); + ВключенаОтправкаSMS = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОтправкаSMS"); + КонецЕсли; + + // кнопки в группе, если одна кнопка, то группа не нужна + Элементы.ФормаСоздатьШаблонСообщенияSMS.Видимость = ВключенаОтправкаSMS; + Элементы.ФормаСоздатьШаблонЭлектронногоПисьма.Видимость = ВключенаРаботаСПочтовымиСообщениями; + + Элементы.ФормаПоказыватьСлужебныеШаблоны.Видимость = Пользователи.ЭтоПолноправныйПользователь(); + +КонецПроцедуры + +&НаСервере +Процедура ИнициализироватьОтборы() + + Список.Параметры.УстановитьЗначениеПараметра("Назначение", ""); + + ВидыШаблонов = ШаблоныСообщенийСлужебный.ВидыШаблонов(); + ВидыШаблонов.Вставить(0, НСтр("ru = 'Электронных писем и SMS'"), НСтр("ru = 'Электронных писем и SMS'")); + + Список.Параметры.УстановитьЗначениеПараметра("СообщениеSMS", ВидыШаблонов.НайтиПоЗначению("SMS").Представление); + Список.Параметры.УстановитьЗначениеПараметра("ЭлектроннаяПочта", ВидыШаблонов.НайтиПоЗначению("Email").Представление); + Список.Параметры.УстановитьЗначениеПараметра("СлужебныйШаблон", НСтр("ru='Служебный'")); + Список.Параметры.УстановитьЗначениеПараметра("ПоказыватьСлужебныеШаблоны", Ложь); + + Для каждого ВидШаблона Из ВидыШаблонов Цикл + Элементы.ШаблонДляФильтр.СписокВыбора.Добавить(ВидШаблона.Значение, ВидШаблона.Представление); + КонецЦикла; + + Элементы.НазначениеФильтр.СписокВыбора.Добавить("", НСтр("ru = 'Все'")); + + ОбщийПредставление = НСтр("ru = 'Общий'"); + Список.Параметры.УстановитьЗначениеПараметра("Общий", ОбщийПредставление); + Элементы.НазначениеФильтр.СписокВыбора.Добавить("Общий", ОбщийПредставление); + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ РАЗРЕШЕННЫЕ + | ШаблоныСообщений.Назначение КАК Назначение + |ИЗ + | Справочник.ШаблоныСообщений КАК ШаблоныСообщений + |ГДЕ + | ШаблоныСообщений.Назначение <> """" И ШаблоныСообщений.Назначение <> ""Служебный"" + | + |СГРУППИРОВАТЬ ПО + | ШаблоныСообщений.Назначение + | + |УПОРЯДОЧИТЬ ПО + | Назначение"; + + РезультатЗапроса = Запрос.Выполнить().Выбрать(); + + Пока РезультатЗапроса.Следующий() Цикл + Элементы.НазначениеФильтр.СписокВыбора.Добавить(РезультатЗапроса.Назначение, РезультатЗапроса.Назначение); + КонецЦикла; + + Назначение = ""; + ШаблонДля = НСтр("ru = 'Электронных писем и SMS'"); + +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы + +&НаКлиенте +Процедура НазначениеФильтрПриИзменении(Элемент) + УстановитьФильтрНазначение(Назначение); +КонецПроцедуры + +&НаКлиенте +Процедура УстановитьФильтрНазначение(Знач ВыбранноеЗначение) + + Если ПустаяСтрока(ВыбранноеЗначение) Тогда + ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбора(Список.Отбор, "Назначение"); + Иначе + ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(Список.Отбор, "Назначение", ВыбранноеЗначение, ВидСравненияКомпоновкиДанных.Равно); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ШаблонДляФильтрОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) + Если ВыбранноеЗначение = "SMS" Тогда + ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(Список.Отбор, "ШаблонДля", НСтр("ru = 'Сообщения SMS'"), ВидСравненияКомпоновкиДанных.Равно); + ИначеЕсли ВыбранноеЗначение = "Email" Тогда + ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора(Список.Отбор, "ШаблонДля", НСтр("ru = 'Электронного письма'"), ВидСравненияКомпоновкиДанных.Равно); + Иначе + ОбщегоНазначенияКлиентСервер.УдалитьЭлементыГруппыОтбора(Список.Отбор, "ШаблонДля"); + КонецЕсли; +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиКомандФормы + +&НаКлиенте +Процедура СоздатьШаблонЭлектронногоПисьма(Команда) + ПараметрыФормы = Новый Структура("ВидСообщения", "ЭлектронноеПисьмо"); + ОткрытьФорму("Справочник.ШаблоныСообщений.ФормаОбъекта", ПараметрыФормы ,ЭтотОбъект); +КонецПроцедуры + +&НаКлиенте +Процедура СоздатьШаблонСообщенияSMS(Команда) + ПараметрыФормы = Новый Структура("ВидСообщения", "СообщениеSMS"); + ОткрытьФорму("Справочник.ШаблоныСообщений.ФормаОбъекта", ПараметрыФормы ,ЭтотОбъект); +КонецПроцедуры + +&НаКлиенте +Процедура ПоказыватьСлужебныеШаблоны(Команда) + Элементы.ФормаПоказыватьСлужебныеШаблоны.Пометка = Не Элементы.ФормаПоказыватьСлужебныеШаблоны.Пометка; + Список.Параметры.УстановитьЗначениеПараметра("ПоказыватьСлужебныеШаблоны", Элементы.ФормаПоказыватьСлужебныеШаблоны.Пометка); + Если Элементы.ФормаПоказыватьСлужебныеШаблоны.Пометка Тогда + Элементы.НазначениеФильтр.СписокВыбора.Добавить("Служебный", НСтр("ru='Служебный'")); + Иначе + Если Назначение = "Служебный" Тогда + УстановитьФильтрНазначение(""); + КонецЕсли; + НайденныйЭлемент = Элементы.НазначениеФильтр.СписокВыбора.НайтиПоЗначению("Служебный"); + Если НайденныйЭлемент <> Неопределено Тогда + Элементы.НазначениеФильтр.СписокВыбора.Удалить(НайденныйЭлемент); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/Catalogs/ШаблоныСообщений/Forms/ФормаЭлемента/Form.form b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ФормаЭлемента/Form.form new file mode 100644 index 000000000..2ab2c8f07 --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ФормаЭлемента/Form.form @@ -0,0 +1,4383 @@ + + + + <key>ru</key> + <value>Шаблон сообщения электронного письма</value> + + + ГруппаНаименование + 18 + + Наименование + 4 + true + true + + true + + + Объект.Description + + + НаименованиеРасширеннаяПодсказка + 6 + Label + true + true + + Left + + + + НаименованиеКонтекстноеМеню + 5 + true + + InputField + Auto + true + Left + true + + 50 + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа наименование</value> + + + ru + Группа наименование + + + ГруппаНаименованиеРасширеннаяПодсказка + 19 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ГруппаНазначение + 20 + + ВариантыНазначенияДляВсех + 27 + + <key>ru</key> + <value>Назначение</value> + + true + true + + true + + + ВариантыНазначения + + + OnChange + ВариантыНазначенияДляВсехПриИзменении + + + ВариантыНазначенияДляВсехРасширеннаяПодсказка + 29 + Label + true + true + + Left + + + + ВариантыНазначенияДляВсехКонтекстноеМеню + 28 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Общий + + + 0 + + + Vertical + + + + ГруппаНазначениеВариант + 268 + + ВариантыНазначения + 265 + + Style.FormBackColor + + true + true + + true + + + ВариантыНазначения + + + OnChange + ВариантыНазначенияДляВсехПриИзменении + + + ВариантыНазначенияРасширеннаяПодсказка + 267 + Label + true + true + + Left + + + + ВариантыНазначенияКонтекстноеМеню + 266 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + Только для + + + 1 + + + Vertical + + + + ПолноеИмяТипаПараметраВводаНаОсновании + 24 + + <key>ru</key> + <value>Назначение</value> + + true + true + + true + + + Объект.ПолноеИмяТипаПараметраВводаНаОсновании + + None + + ПолноеИмяТипаПараметраВводаНаОснованииРасширеннаяПодсказка + 26 + Label + true + true + + Left + + + + ПолноеИмяТипаПараметраВводаНаОснованииКонтекстноеМеню + 25 + true + + InputField + Enter + true + Left + true + + + ChoiceProcessing + ПолноеИмяТипаПараметраВводаНаОснованииОбработкаВыбора + + true + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа назначение вариант</value> + + + ru + Группа назначение вариант + + + ГруппаНазначениеВариантРасширеннаяПодсказка + 269 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа назначение</value> + + + ru + Группа назначение + + + ГруппаНазначениеРасширеннаяПодсказка + 21 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаВнешняяОбработка + 215 + + ВнешняяОбработка + 217 + true + true + + true + + + Объект.ВнешняяОбработка + + + OnChange + ВнешняяОбработкаПриИзменении + + + ВнешняяОбработкаРасширеннаяПодсказка + 219 + Label + true + true + + Left + + + + ВнешняяОбработкаКонтекстноеМеню + 218 + true + + InputField + Enter + true + Left + true + + true + true + true + false + true + true + true + + Отбор.Вид + + + Enum.ВидыДополнительныхОтчетовИОбработок.EnumValue.ШаблонСообщения + + + + Normal + + + true + + true + + + <key>ru</key> + <value>Группа внешняя обработка</value> + + + ГруппаВнешняяОбработкаРасширеннаяПодсказка + 216 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ТемаПисьма + 171 + true + true + + true + + + Объект.ТемаПисьма + + + ТемаПисьмаРасширеннаяПодсказка + 173 + Label + true + true + + Left + + + + ТемаПисьмаКонтекстноеМеню + 172 + true + + InputField + Enter + true + Left + true + + 60 + true + true + true + true + true + true + Normal + + + + ГруппаГлавное + 54 + + ГруппаЛеваяСторона + 294 + + Страницы + 40 + + СообщениеЭлектронноеПисьмоHTML + 42 + + ГруппаКоманднаяПанельПисьмаВHTML + 75 + true + true + + true + + + <key>ru</key> + <value>Группа командная панель письма ВHTML</value> + + + ru + Группа командная панель письма ВHTML + + + ГруппаКоманднаяПанельПисьмаВHTMLРасширеннаяПодсказка + 76 + Label + true + true + + Left + + + CommandBar + + Left + Item.ТелоПисьмаВHTML + + + + ТелоПисьмаВHTML + 46 + true + true + + true + + + ТелоПисьмаВHTML + + None + + OnChange + ТелоПисьмаВHTMLПриИзменении + + + ТелоПисьмаВHTMLРасширеннаяПодсказка + 48 + Label + true + true + + Left + + + + ТелоПисьмаВHTMLКонтекстноеМеню + 47 + true + + FormattedDocumentField + Enter + true + Left + true + + 50 + true + 10 + true + true + true + + + true + true + + true + + + <key>ru</key> + <value>Сообщение электронное письмо HTML</value> + + + ru + Сообщение электронное письмо HTML + + + СообщениеЭлектронноеПисьмоHTMLРасширеннаяПодсказка + 43 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СообщениеЭлектронноеПисьмо + 155 + + ДекорацияТелоПисьма + 168 + + <key>ru</key> + <value>Текст письма:</value> + + true + true + + true + + + ДекорацияТелоПисьмаРасширеннаяПодсказка + 170 + Label + true + true + + Left + + + + ДекорацияТелоПисьмаКонтекстноеМеню + 169 + true + + Label + true + true + + Left + + + + ТелоСообщенияОбычныйТекст + 186 + + <key>ru</key> + <value>Текст письма</value> + + true + true + + true + + + ТелоСообщенияОбычныйТекст + + None + + OnChange + ТелоСообщенияОбычныйТекстПриИзменении + + + ТелоСообщенияОбычныйТекстРасширеннаяПодсказка + 188 + Label + true + true + + Left + + + + ТелоСообщенияОбычныйТекстКонтекстноеМеню + 187 + true + + TextDocumentField + Enter + true + Left + true + + 50 + true + 10 + true + true + true + + + true + true + + true + + + <key>ru</key> + <value>Сообщение электронное письмо</value> + + + ru + Сообщение электронное письмо + + + СообщениеЭлектронноеПисьмоРасширеннаяПодсказка + 156 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СообщениеSMS + 44 + + ГруппаЗаголовокСообщениеSMS + 223 + + ДекорацияСообщениеSMS + 230 + + <key>ru</key> + <value>Сообщение SMS:</value> + + true + true + + true + + + ДекорацияСообщениеSMSРасширеннаяПодсказка + 232 + Label + true + true + + Left + + + + ДекорацияСообщениеSMSКонтекстноеМеню + 231 + true + + Label + true + true + + Left + + + + ГруппаОтправлятьВТранслите + 233 + + ОтправлятьВТранслите + 225 + true + true + + true + + + Объект.ОтправлятьВТранслите + + Right + + ОтправлятьВТранслитеРасширеннаяПодсказка + 227 + Label + true + true + + Left + + + + ОтправлятьВТранслитеКонтекстноеМеню + 226 + true + + CheckBoxField + Enter + true + Left + true + + + true + true + + true + + + <key>ru</key> + <value>Группа отправлять в транслите</value> + + + ru + Группа отправлять в транслите + + true + + ГруппаОтправлятьВТранслитеРасширеннаяПодсказка + 234 + Label + true + true + + Left + + + UsualGroup + + Right + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа заголовок сообщение SMS</value> + + + ru + Группа заголовок сообщение SMS + + true + + ГруппаЗаголовокСообщениеSMSРасширеннаяПодсказка + 224 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ТелоСообщенияОбычныйТекстSMS + 220 + true + true + + true + + + ТелоСообщенияОбычныйТекст + + None + + OnChange + ТелоСообщенияОбычныйТекстSMSПриИзменении + + + ТелоСообщенияОбычныйТекстSMSРасширеннаяПодсказка + 222 + Label + true + true + + Left + + + + ТелоСообщенияОбычныйТекстSMSКонтекстноеМеню + 221 + true + + TextDocumentField + Enter + true + Left + true + + 50 + true + 10 + true + true + true + + + true + true + + true + + + <key>ru</key> + <value>Сообщение SMS</value> + + + ru + Сообщение SMS + + + СообщениеSMSРасширеннаяПодсказка + 45 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СообщениеВнешняяОбработка + 157 + + ТелоСообщенияОбычныйТекстВнешняяОбработка + 262 + + <key>ru</key> + <value>Предпросмотр</value> + + true + true + + true + + + ТелоПисьмаВHTML + + + ТелоСообщенияОбычныйТекстВнешняяОбработкаРасширеннаяПодсказка + 264 + Label + true + true + + Left + + + + ТелоСообщенияОбычныйТекстВнешняяОбработкаКонтекстноеМеню + 263 + true + + FormattedDocumentField + true + Enter + true + Left + true + + 50 + true + 10 + true + true + + + true + true + + true + + + <key>ru</key> + <value>Сообщение внешняя обработка</value> + + + ru + Сообщение внешняя обработка + + + СообщениеВнешняяОбработкаРасширеннаяПодсказка + 158 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Страницы</value> + + + ru + Страницы + + + СтраницыРасширеннаяПодсказка + 41 + Label + true + true + + Left + + + Pages + + Auto + + + + ГруппаДоступ + 289 + + ГруппаДоступТолькоАвтору + 299 + + ДоступТолькоДляАвтора + 291 + true + true + + true + + + Доступно + + + OnChange + ДоступТолькоАвторуПриИзменении + + + ДоступТолькоДляАвтораРасширеннаяПодсказка + 293 + Label + true + true + + Left + + + + ДоступТолькоДляАвтораКонтекстноеМеню + 292 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + Только для автора: + + + 0 + + + Vertical + + + + Автор + 301 + true + true + + true + + + Объект.Автор + + None + + OnChange + АвторПриИзменении + + + АвторРасширеннаяПодсказка + 303 + Label + true + true + + Left + + + + АвторКонтекстноеМеню + 302 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + true + true + + true + + + ГруппаДоступТолькоАвторуРасширеннаяПодсказка + 300 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ДоступВсемПользователям + 296 + + Style.FormBackColor + + true + true + + true + + + Доступно + + + OnChange + ДоступВсемПользователямПриИзменении + + + ДоступВсемПользователямРасширеннаяПодсказка + 298 + Label + true + true + + Left + + + + ДоступВсемПользователямКонтекстноеМеню + 297 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + Всем пользователям + + + 1 + + + Vertical + + + true + true + + true + + + <key>ru</key> + <value>Группа доступ</value> + + + ru + Группа доступ + + + ГруппаДоступРасширеннаяПодсказка + 290 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + WeakSeparation + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа левая сторона</value> + + + ru + Группа левая сторона + + + ГруппаЛеваяСторонаРасширеннаяПодсказка + 295 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаПараметры + 52 + + СтраницыЗаголовокПараметры + 77 + + СтраницаЗаголовокПараметры + 79 + + ЗаголовокПараметры + 81 + + <key>ru</key> + <value>Параметры:</value> + + true + true + + true + + + ЗаголовокПараметрыРасширеннаяПодсказка + 83 + Label + true + true + + Left + + + + ЗаголовокПараметрыКонтекстноеМеню + 82 + true + + Label + true + true + + Left + + + + ГруппаРеквизитыКоманднаяПанель + 306 + + РеквизитыМенюДобавитьПараметрПочта + 322 + + ДобавитьПараметрВТему + 324 + true + true + + true + + + ДобавитьПараметрВТемуРасширеннаяПодсказка + 325 + Label + true + true + + Left + + + Form.Command.ДобавитьПараметрВТему + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + РеквизитыДобавитьПараметрВТекстСообщения + 326 + true + true + + true + + + РеквизитыДобавитьПараметрВТекстСообщенияРасширеннаяПодсказка + 327 + Label + true + true + + Left + + + Form.Command.ДобавитьПараметрВТекстСообщения + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + true + true + + true + + + <key>ru</key> + <value>Добавить параметр в...</value> + + + ru + Реквизиты меню добавить параметр почта + + + РеквизитыМенюДобавитьПараметрПочтаРасширеннаяПодсказка + 323 + Label + true + true + + Left + + + Popup + + Auto + Normal + + + + РеквизитыМенюДобавитьПараметрВТекстСообщенияSMS + 328 + + <key>ru</key> + <value>Добавить параметр в текст сообщения</value> + + true + true + + true + + + РеквизитыМенюДобавитьПараметрВТекстСообщенияSMSРасширеннаяПодсказка + 329 + Label + true + true + + Left + + + Form.Command.ДобавитьПараметрВТекстСообщения + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ГруппаСтандартныеКнопки + 342 + + Добавить + 304 + true + true + + true + + + ДобавитьРасширеннаяПодсказка + 305 + Label + true + true + + Left + + + Form.Item.Реквизиты.StandardCommand.Add + Normal + Auto + true + true + UserCmds + Auto + + + Изменить + 344 + true + true + + true + + + ИзменитьРасширеннаяПодсказка + 345 + Label + true + true + + Left + + + Form.Item.Реквизиты.StandardCommand.Change + Normal + Auto + true + true + UserCmds + Auto + + + Удалить + 308 + true + true + + true + + + УдалитьРасширеннаяПодсказка + 309 + Label + true + true + + Left + + + Form.Item.Реквизиты.StandardCommand.Delete + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + КопироватьВБуферОбмена + 314 + true + true + + true + + + КопироватьВБуферОбменаРасширеннаяПодсказка + 315 + Label + true + true + + Left + + + Form.Item.Реквизиты.StandardCommand.CopyToClipboard + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ВывестиСписок + 312 + true + true + + true + + + ВывестиСписокРасширеннаяПодсказка + 313 + Label + true + true + + Left + + + Form.Item.Реквизиты.StandardCommand.OutputList + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + true + true + + true + + + ГруппаСтандартныеКнопкиРасширеннаяПодсказка + 343 + Label + true + true + + Left + + + + + true + true + + true + + + ГруппаРеквизитыКоманднаяПанельРасширеннаяПодсказка + 307 + Label + true + true + + Left + + + CommandBar + + Left + + + true + true + + true + + + <key>ru</key> + <value>Страница заголовок параметры</value> + + + ru + Страница заголовок параметры + + + СтраницаЗаголовокПараметрыРасширеннаяПодсказка + 80 + Label + true + true + + Left + + + Page + + Bottom + auto + false + + + + СкрытыйЗаголовокПараметры + 84 + + ГруппаСкрытаяВыравнивание + 240 + + ЭлектронноеПисьмоHTML + 244 + true + true + + true + + + ЭлектронноеПисьмоHTMLРасширеннаяПодсказка + 245 + Label + true + true + + Left + + + Form.Command.ЭлектронноеПисьмоHTML + Normal + Auto + true + true + UserCmds + Auto + + true + false + + true + + + <key>ru</key> + <value>Группа скрытая выравнивание</value> + + + ru + Группа скрытая выравнивание + + + ГруппаСкрытаяВыравниваниеРасширеннаяПодсказка + 241 + Label + true + true + + Left + + + CommandBar + + Left + + + true + + true + + + <key>ru</key> + <value>Скрытый </value> + + + ru + Скрытый заголовок параметры + + + СкрытыйЗаголовокПараметрыРасширеннаяПодсказка + 85 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СкрытыйЗаголовокСообщениеSMS + 238 + + ОтправлятьВТранслитеСкрытыйВыравнивание + 235 + true + true + + true + + + Объект.ОтправлятьВТранслите + + Right + + ОтправлятьВТранслитеСкрытыйВыравниваниеРасширеннаяПодсказка + 237 + Label + true + true + + Left + + + + ОтправлятьВТранслитеСкрытыйВыравниваниеКонтекстноеМеню + 236 + true + + CheckBoxField + Enter + true + Left + true + + + false + + true + + + <key>ru</key> + <value>Скрытый заголовок сообщение SMS</value> + + + ru + Скрытый заголовок сообщение SMS + + + СкрытыйЗаголовокСообщениеSMSРасширеннаяПодсказка + 239 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + Center + + СтраницыЗаголовокПараметрыРасширеннаяПодсказка + 78 + Label + true + true + + Left + + + Pages + + Auto + + + + Реквизиты + 56 + + <key>ru</key> + <value>Параметры</value> + + true + true + + true + + + Реквизиты + + None + Copy + EndEdit + MoveDown + MoveUp + ShowRowRearrangement + SortListAsc + SortListDesc + + РеквизитыПредставлениеИФормат + 282 + + РеквизитыПредставление + 72 + true + true + + true + + + Реквизиты.Представление + + Button + + РеквизитыПредставлениеРасширеннаяПодсказка + 74 + Label + true + true + + Left + + + + РеквизитыПредставлениеКонтекстноеМеню + 73 + true + + InputField + true + Auto + true + Left + true + + true + true + true + true + true + true + Normal + + + + РеквизитыФормат + 284 + true + true + + true + + + Реквизиты.Формат + + + РеквизитыФорматРасширеннаяПодсказка + 286 + Label + true + true + + Left + + + + РеквизитыФорматКонтекстноеМеню + 285 + true + + InputField + true + Auto + true + Left + true + + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Реквизиты представление и формат</value> + + + ru + Реквизиты представление и формат + + true + + РеквизитыПредставлениеИФорматРасширеннаяПодсказка + 283 + Label + true + true + + Left + + + ColumnGroup + + InCell + auto + true + + + + РеквизитыКоманднаяПанель + 58 + Left + + + Selection + РеквизитыВыбор + + + BeforeAddRow + РеквизитыПередНачаломДобавления + + + BeforeDeleteRow + РеквизитыПередУдалением + + + OnActivateRow + РеквизитыПриАктивизацииСтроки + + + DragStart + РеквизитыНачалоПеретаскивания + + + РеквизитыСтрокаПоиска + 60 + + РеквизитыСтрокаПоискаРасширеннаяПодсказка + 62 + Label + true + true + + Left + + + + РеквизитыСтрокаПоискаКонтекстноеМеню + 61 + true + + Реквизиты + + true + + + + РеквизитыСостояниеПросмотра + 63 + + РеквизитыСостояниеПросмотраРасширеннаяПодсказка + 65 + Label + true + true + + Left + + + + РеквизитыСостояниеПросмотраКонтекстноеМеню + 64 + true + + ViewStatusAddition + Реквизиты + + true + + + + РеквизитыУправлениеПоиском + 66 + + РеквизитыУправлениеПоискомРасширеннаяПодсказка + 68 + Label + true + true + + Left + + + + РеквизитыУправлениеПоискомКонтекстноеМеню + 67 + true + + SearchControlAddition + Реквизиты + + true + + + + РеквизитыРасширеннаяПодсказка + 59 + Label + true + true + + Left + + + + РеквизитыКонтекстноеМеню + 57 + + РеквизитыКонтекстноеМенюДобавитьПараметрПочта + 278 + + РеквизитыКонтекстноеМенюДобавитьПараметрВТекстСообщения + 257 + true + true + + true + + + РеквизитыКонтекстноеМенюДобавитьПараметрВТекстСообщенияРасширеннаяПодсказка + 258 + Label + true + true + + Left + + + Form.Command.ДобавитьПараметрВТекстСообщения + Normal + Auto + true + true + UserCmds + Auto + + + РеквизитыКонтекстноеМенюДобавитьПараметрВТему + 255 + true + true + + true + + + РеквизитыКонтекстноеМенюДобавитьПараметрВТемуРасширеннаяПодсказка + 256 + Label + true + true + + Left + + + Form.Command.ДобавитьПараметрВТему + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Добавить параметр в...</value> + + + ru + Реквизиты контекстное меню добавить параметр почта + + + РеквизитыКонтекстноеМенюДобавитьПараметрПочтаРасширеннаяПодсказка + 279 + Label + true + true + + Left + + + Popup + + Auto + Normal + + + + РеквизитыКонтекстноеМенюДобавитьПараметрВТекстСообщенияДляSMS + 287 + + <key>ru</key> + <value>Добавить параметр в текст сообщения</value> + + true + + true + + + РеквизитыКонтекстноеМенюДобавитьПараметрВТекстСообщенияДляSMSРасширеннаяПодсказка + 288 + Label + true + true + + Left + + + Form.Command.ДобавитьПараметрВТекстСообщения + Normal + Auto + true + true + UserCmds + Auto + + + ФорматОтображенияРеквизита + 280 + true + true + + true + + + ФорматОтображенияРеквизитаРасширеннаяПодсказка + 281 + Label + true + true + + Left + + + Form.Command.ФорматОтображенияРеквизита + Normal + Auto + true + true + UserCmds + Auto + + + ГруппаСтандартныеКнопкиКонтекстноеМеню + 330 + + РеквизитыКонтекстноеМенюДобавить + 332 + true + true + + true + + + РеквизитыКонтекстноеМенюДобавитьРасширеннаяПодсказка + 333 + Label + true + true + + Left + + + Form.Item.Реквизиты.StandardCommand.Add + Normal + Auto + true + true + UserCmds + Auto + + + РеквизитыКонтекстноеМенюИзменить + 334 + true + true + + true + + + РеквизитыКонтекстноеМенюИзменитьРасширеннаяПодсказка + 335 + Label + true + true + + Left + + + Form.Item.Реквизиты.StandardCommand.Change + Normal + Auto + true + true + UserCmds + Auto + + + РеквизитыКонтекстноеМенюУдалить + 336 + true + true + + true + + + РеквизитыКонтекстноеМенюУдалитьРасширеннаяПодсказка + 337 + Label + true + true + + Left + + + Form.Item.Реквизиты.StandardCommand.Delete + Normal + Auto + true + true + UserCmds + Auto + + + РеквизитыКонтекстноеМенюКопироватьВБуферОбмена + 338 + true + true + + true + + + РеквизитыКонтекстноеМенюКопироватьВБуферОбменаРасширеннаяПодсказка + 339 + Label + true + true + + Left + + + Form.Item.Реквизиты.StandardCommand.CopyToClipboard + Normal + Auto + true + true + UserCmds + Auto + + + РеквизитыКонтекстноеМенюВывестиСписок + 340 + true + true + + true + + + РеквизитыКонтекстноеМенюВывестиСписокРасширеннаяПодсказка + 341 + Label + true + true + + Left + + + Form.Item.Реквизиты.StandardCommand.OutputList + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Группа стандартные кнопки контекстное меню</value> + + + ru + Группа стандартные кнопки контекстное меню + + + ГруппаСтандартныеКнопкиКонтекстноеМенюРасширеннаяПодсказка + 331 + Label + true + true + + Left + + + + + true + + Tree + true + true + true + true + MultiRow + 1 + 1 + AutoUse + AutoUse + true + true + false + false + false + Auto + Auto + ExpandTopLevel + true + true + true + true + + Реквизиты.ИндексКартинки + + + CommonPicture.КоллекцияПиктограммПараметрыШаблонаСообщения + + true + + + ГруппаВложения + 228 + + ГруппаПечатныеФормыИВложения + 151 + + ДекорацияПечатныеФормыИВложения + 113 + + <key>ru</key> + <value>Печатные формы и вложения:</value> + + true + true + + true + + + ДекорацияПечатныеФормыИВложенияРасширеннаяПодсказка + 115 + Label + true + true + + Left + + + + ДекорацияПечатныеФормыИВложенияКонтекстноеМеню + 114 + true + + Label + true + true + + Left + + + + КоманднаяПанельПечатныеФормыИВложения + 153 + + ВложенияДобавить + 197 + + <key>ru</key> + <value>Добавить вложение</value> + + true + true + + true + + + ВложенияДобавитьРасширеннаяПодсказка + 198 + Label + true + true + + Left + + + Form.Item.Вложения.StandardCommand.Add + Normal + Auto + true + true + UserCmds + Auto + + + ВложенияСвойстваВложения + 189 + true + true + + true + + + ВложенияСвойстваВложенияРасширеннаяПодсказка + 190 + Label + true + true + + Left + + + Form.Command.СвойстваВложения + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ВложенияКопироватьВБуферОбмена + 201 + true + true + + true + + + ВложенияКопироватьВБуферОбменаРасширеннаяПодсказка + 202 + Label + true + true + + Left + + + Form.Item.Вложения.StandardCommand.CopyToClipboard + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ВложенияУдалить + 199 + true + true + + true + + + ВложенияУдалитьРасширеннаяПодсказка + 200 + Label + true + true + + Left + + + Form.Item.Вложения.StandardCommand.Delete + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ГруппаВложенияВывестиСписок + 205 + + ВложенияВывестиСписок + 203 + true + true + + true + + + ВложенияВывестиСписокРасширеннаяПодсказка + 204 + Label + true + true + + Left + + + Form.Item.Вложения.StandardCommand.OutputList + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + true + true + + true + + + <key>ru</key> + <value>Группа вложения вывести список</value> + + + ru + Группа вложения вывести список + + + ГруппаВложенияВывестиСписокРасширеннаяПодсказка + 206 + Label + true + true + + Left + + + + + true + true + + true + + + <key>ru</key> + <value>Командная панель печатные формы и вложения</value> + + + ru + Командная панель печатные формы и вложения + + + КоманднаяПанельПечатныеФормыИВложенияРасширеннаяПодсказка + 154 + Label + true + true + + Left + + + CommandBar + + Left + Item.Вложения + + + true + true + + true + + + <key>ru</key> + <value>Группа печатные формы и вложения</value> + + + ru + Группа печатные формы и вложения + + + ГруппаПечатныеФормыИВложенияРасширеннаяПодсказка + 152 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + Вложения + 89 + true + true + + true + + + Вложения + + None + CancelSearch + Change + Copy + EndEdit + Find + MoveDown + MoveUp + ShowRowRearrangement + SortListAsc + SortListDesc + Balloon + + ВложенияВыбран + 148 + true + true + + true + + + Вложения.Выбрано + + + OnChange + ВложенияВыбранПриИзменении + + + ВложенияВыбранРасширеннаяПодсказка + 150 + Label + true + true + + Left + + + + ВложенияВыбранКонтекстноеМеню + 149 + true + + CheckBoxField + Auto + true + Left + true + + true + + + + ВложенияГруппаПредставление + 249 + + ВложенияИндексКартинки + 246 + true + true + + true + + + Вложения.ИндексКартинки + + + ВложенияИндексКартинкиРасширеннаяПодсказка + 248 + Label + true + true + + Left + + + + ВложенияИндексКартинкиКонтекстноеМеню + 247 + true + + PictureField + Auto + true + Left + true + + true + true + true + true + true + + CommonPicture.КоллекцияПиктограммФайлов + + + + 1 + + + + + ВложенияПредставление + 105 + true + true + + true + + + Вложения.Представление + + None + + ВложенияПредставлениеРасширеннаяПодсказка + 107 + Label + true + true + + Left + + + + ВложенияПредставлениеКонтекстноеМеню + 106 + true + + InputField + true + Auto + true + Left + true + + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Вложения группа представление</value> + + + ВложенияГруппаПредставлениеРасширеннаяПодсказка + 250 + Label + true + true + + Left + + + ColumnGroup + + InCell + auto + true + + + + ВложенияКоманднаяПанель + 91 + Left + + + BeforeAddRow + ВложенияПередНачаломДобавления + + + BeforeDeleteRow + ВложенияПередУдалением + + + OnActivateRow + ВложенияПриАктивизацииСтроки + + + ВложенияСтрокаПоиска + 93 + + ВложенияСтрокаПоискаРасширеннаяПодсказка + 95 + Label + true + true + + Left + + + + ВложенияСтрокаПоискаКонтекстноеМеню + 94 + true + + Вложения + + true + + + + ВложенияСостояниеПросмотра + 96 + + ВложенияСостояниеПросмотраРасширеннаяПодсказка + 98 + Label + true + true + + Left + + + + ВложенияСостояниеПросмотраКонтекстноеМеню + 97 + true + + ViewStatusAddition + Вложения + + true + + + + ВложенияУправлениеПоиском + 99 + + ВложенияУправлениеПоискомРасширеннаяПодсказка + 101 + Label + true + true + + Left + + + + ВложенияУправлениеПоискомКонтекстноеМеню + 100 + true + + SearchControlAddition + Вложения + + true + + + + ВложенияРасширеннаяПодсказка + 92 + Label + true + true + + Left + + + + ВложенияКонтекстноеМеню + 90 + + ВложенияКонтекстноеМенюДобавить + 195 + true + true + + true + + + ВложенияКонтекстноеМенюДобавитьРасширеннаяПодсказка + 196 + Label + true + true + + Left + + + Form.Item.Вложения.StandardCommand.Add + Normal + Auto + true + true + UserCmds + Auto + + + ВложенияКонтекстноеМенюИзменитьВложение + 253 + true + true + + true + + + ВложенияКонтекстноеМенюИзменитьВложениеРасширеннаяПодсказка + 254 + Label + true + true + + Left + + + Form.Command.ИзменитьВложение + Normal + Auto + true + true + UserCmds + Auto + + + ВложенияКонтекстноеМенюУдалить + 191 + + <key>ru</key> + <value>Пометить на удаление / Снять пометку</value> + + true + true + + true + + + ВложенияКонтекстноеМенюУдалитьРасширеннаяПодсказка + 192 + Label + true + true + + Left + + + Form.Item.Вложения.StandardCommand.Delete + Normal + Auto + true + true + UserCmds + Auto + + + ГруппаВложенияВывестиСписокКонтекстноеМеню + 211 + + ВложенияКонтекстноеМенюСвойстваВложения + 207 + true + true + + true + + + ВложенияКонтекстноеМенюСвойстваВложенияРасширеннаяПодсказка + 208 + Label + true + true + + Left + + + Form.Command.СвойстваВложения + Normal + Auto + true + true + UserCmds + Auto + + + ВложенияВывестиСписокКонтекстноеМеню + 213 + true + true + + true + + + ВложенияВывестиСписокКонтекстноеМенюРасширеннаяПодсказка + 214 + Label + true + true + + Left + + + Form.Item.Вложения.StandardCommand.OutputList + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ВложенияКонтекстноеМенюКопироватьВБуферОбмена + 193 + true + true + + true + + + ВложенияКонтекстноеМенюКопироватьВБуферОбменаРасширеннаяПодсказка + 194 + Label + true + true + + Left + + + Form.Item.Вложения.StandardCommand.CopyToClipboard + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + ГруппаВложенияВывестиСписокКонтекстноеМенюРасширеннаяПодсказка + 212 + Label + true + true + + Left + + + + + true + + true + true + 7 + true + true + Row + 1 + 1 + AutoUse + AutoUse + true + true + false + false + false + Auto + Auto + true + true + true + + + + ГруппаНастройкиВложений + 270 + + ФорматВложений + 272 + true + true + + true + + + ФорматПечатныхФорм + + + ФорматВложенийРасширеннаяПодсказка + 274 + Label + true + true + + Left + + + + ФорматВложенийКонтекстноеМеню + 273 + true + + LabelField + Enter + true + Left + true + + + Click + ФорматВложенийНажатие + + true + true + true + + + + УпаковатьВАрхив + 275 + + <key>ru</key> + <value>Упаковать в архив печатные формы</value> + + true + true + + true + + + Объект.УпаковатьВАрхив + + Right + + УпаковатьВАрхивРасширеннаяПодсказка + 277 + Label + true + true + + Left + + + + УпаковатьВАрхивКонтекстноеМеню + 276 + true + + CheckBoxField + Enter + true + Left + true + + + true + true + + true + + + <key>ru</key> + <value>Группа настройки вложений</value> + + + ru + Группа настройки вложений + + + ГруппаНастройкиВложенийРасширеннаяПодсказка + 271 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа вложения</value> + + + ГруппаВложенияРасширеннаяПодсказка + 229 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа параметры</value> + + + ru + Группа параметры + + + ГруппаПараметрыРасширеннаяПодсказка + 53 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа главное</value> + + + ru + Группа главное + + + ГруппаГлавноеРасширеннаяПодсказка + 55 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ФормаКоманднаяПанель + -1 + + ФормаПроверитьШаблон + 16 + true + true + + true + + + ФормаПроверитьШаблонРасширеннаяПодсказка + 17 + Label + true + true + + Left + + + Form.Command.ПроверитьШаблон + Normal + Auto + true + true + UserCmds + Auto + + + ФормаВидТекстаЭлектронногоПисьма + 163 + + ФормаЭлектронноеПисьмоОбычныйТекст + 161 + true + true + + true + + + ФормаЭлектронноеПисьмоОбычныйТекстРасширеннаяПодсказка + 162 + Label + true + true + + Left + + + Form.Command.ЭлектронноеПисьмоОбычныйТекст + Normal + Auto + true + true + UserCmds + Auto + + + ФормаЭлектронноеПисьмоHTML + 159 + true + true + + true + + + ФормаЭлектронноеПисьмоHTMLРасширеннаяПодсказка + 160 + Label + true + true + + Left + + + Form.Command.ЭлектронноеПисьмоHTML + Normal + Auto + true + true + UserCmds + true + Auto + + true + true + + true + + + <key>ru</key> + <value>HTML</value> + + + ru + Вид текста электронного письма + + + ФормаВидТекстаЭлектронногоПисьмаРасширеннаяПодсказка + 164 + Label + true + true + + Left + + + Popup + + Auto + Normal + + + + ФормаГруппаСообщениеФормируется + 174 + + ФормаПоШаблону + 176 + true + true + + true + + + ФормаПоШаблонуРасширеннаяПодсказка + 177 + Label + true + true + + Left + + + Form.Command.ПоШаблону + Normal + Auto + true + true + UserCmds + true + Auto + InAdditionalSubmenu + + + ФормаВнешнейОбработкой + 178 + true + true + + true + + + ФормаВнешнейОбработкойРасширеннаяПодсказка + 179 + Label + true + true + + Left + + + Form.Command.ВнешнейОбработкой + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + true + true + + true + + + <key>ru</key> + <value>Сообщение формируется</value> + + + ru + Форма группа сообщение формируется + + + ФормаГруппаСообщениеФормируетсяРасширеннаяПодсказка + 175 + Label + true + true + + Left + + + Popup + + Auto + Normal + + + Left + true + + + OnOpen + ПриОткрытии + + + OnCreateAtServer + ПриСозданииНаСервере + + DontBlock + true + true + Vertical + true + true + true + auto + true + + Объект + 1 + + CatalogObject.ШаблоныСообщений + + + true + + + true + +
        true
        + true + + + Объект.Параметры + + + ОписаниеТипа + + <key>ru</key> + <value>Описание типа</value> + + 1 + + TypeDescription + + + true + + + true + + + +
        + + ТелоПисьмаВHTML + + <key>ru</key> + <value>Тело письма ВHTML</value> + + 2 + + FormattedDocument + + + true + + + true + + true + + + Реквизиты + + <key>ru</key> + <value>Реквизиты</value> + + 3 + + ValueTree + + + true + + + true + + true + + Имя + + <key>ru</key> + <value>Имя</value> + + 1 + + String + + + + true + + + true + + + + Представление + + <key>ru</key> + <value>Представление</value> + + 2 + + String + + + + true + + + true + + + + Подсказка + + <key>ru</key> + <value>Подсказка</value> + + 3 + + String + + + + true + + + true + + + + Тип + + <key>ru</key> + <value>Тип</value> + + 4 + + TypeDescription + + + true + + + true + + + + Формат + + <key>ru</key> + <value>Формат</value> + + 5 + + String + + + + true + + + true + + + + ИндексКартинки + + <key>ru</key> + <value>Индекс картинки</value> + + 6 + + Number + + 10 + + + + true + + + true + + + + ПроизвольныйПараметр + + <key>ru</key> + <value>Произвольный параметр</value> + + 7 + + Boolean + + + true + + + true + + + + + ВариантыНазначения + + <key>ru</key> + <value>Варианты назначения</value> + + 5 + + Number + + 10 + + + + true + + + true + + + + Вложения + + <key>ru</key> + <value>Вложения</value> + + 6 + + ValueTable + + + true + + + true + + true + + Идентификатор + + <key>ru</key> + <value>Идентификатор</value> + + 1 + + String + + 50 + + + + true + + + true + + + + Представление + + <key>ru</key> + <value>Представление</value> + + 2 + + String + + + + true + + + true + + + + Выбрано + + <key>ru</key> + <value>Выбрано</value> + + 3 + + Number + + + + true + + + true + + + + ИндексКартинки + + <key>ru</key> + <value>Индекс картинки</value> + + 4 + + Number + + 10 + + + + true + + + true + + + + ТипФайла + + <key>ru</key> + <value>Тип файла</value> + + 5 + + String + + 10 + + + + true + + + true + + + + МенеджерПечати + + <key>ru</key> + <value>Менеджер печати</value> + + 6 + + String + + + + true + + + true + + + + ПараметрыПечати + + <key>ru</key> + <value>Параметры печати</value> + + 7 + + + true + + + true + + + + Ссылка + + <key>ru</key> + <value>Ссылка</value> + + 9 + + CatalogRef.ШаблоныСообщенийПрисоединенныеФайлы + + + true + + + true + + + + Статус + + <key>ru</key> + <value>Статус</value> + + 11 + + String + + + + true + + + true + + + + Имя + + <key>ru</key> + <value>Имя</value> + + 8 + + String + + + + true + + + true + + + + Реквизит + + <key>ru</key> + <value>Реквизит</value> + + 12 + + String + + + + true + + + true + + + + ИмяПараметра + + <key>ru</key> + <value>Имя параметра</value> + + 10 + + String + + + + true + + + true + + + + + ТелоСообщенияОбычныйТекст + + <key>ru</key> + <value>Тело сообщения обычный текст</value> + + 7 + + TextDocument + + + true + + + true + + true + + + КоличествоСимволов + + <key>ru</key> + <value>Количество символов</value> + + 8 + + Number + + 10 + + + + true + + + true + + + + ФорматПечатныхФорм + + <key>ru</key> + <value>Формат печатных форм</value> + + 9 + + String + + + + true + + + true + + + + ВыбранныеФорматыСохранения + + <key>ru</key> + <value>Выбранные форматы сохранения</value> + + 10 + + ValueList + + + true + + + true + + + + + + + Доступно + + <key>ru</key> + <value>Доступно</value> + + 11 + + Number + + 10 + + + + true + + + true + + + + ИспользоватьПроизвольныеПараметры + + <key>ru</key> + <value>Использовать произвольные параметры</value> + + 12 + + Boolean + + + true + + + true + + + + ПроверитьШаблон + + <key>ru</key> + <value>Проверить шаблон</value> + + 1 + + ru + Проверить шаблон + + + true + + + + ПроверитьШаблон + + + DontUse + Auto + + + ЭлектронноеПисьмоHTML + + <key>ru</key> + <value>HTML</value> + + 2 + + ru + Электронное письмо HTML + + + true + + + + ЭлектронноеПисьмоHTML + + + DontUse + Auto + + + ЭлектронноеПисьмоОбычныйТекст + + <key>ru</key> + <value>Обычный текст</value> + + 3 + + ru + Электронное письмо обычный текст + + + true + + + + ЭлектронноеПисьмоОбычныйТекст + + + DontUse + Auto + + + ПоШаблону + + <key>ru</key> + <value>По шаблону</value> + + 4 + + ru + По шаблону + + + true + + + + ПоШаблону + + + DontUse + Auto + + + ВнешнейОбработкой + + <key>ru</key> + <value>Внешней обработкой</value> + + 5 + + ru + Внешней обработкой + + + true + + + + ВнешнейОбработкой + + + DontUse + Auto + + + СвойстваВложения + + <key>ru</key> + <value>Свойства</value> + + 6 + + ru + Свойства вложения + + + true + + + + СвойстваВложения + + + DontUse + Auto + + + ИзменитьВложение + + <key>ru</key> + <value>Изменить</value> + + 7 + + ru + Изменить вложение + + + true + + + StdPicture.Change + + + + ИзменитьВложение + + + DontUse + Auto + + + ДобавитьПараметрВТему + + <key>ru</key> + <value>Тему</value> + + 8 + + ru + Добавить параметр в тему + + + true + + + + ДобавитьПараметрВТему + + + DontUse + Auto + + + ДобавитьПараметрВТекстСообщения + + <key>ru</key> + <value>Текст сообщения</value> + + 9 + + ru + Добавить параметр в текст сообщения + + + true + + + + ДобавитьПараметрВТекстСообщения + + + DontUse + Auto + + + ФорматОтображенияРеквизита + + <key>ru</key> + <value>Формат отображения реквизита...</value> + + 10 + + ru + Формат отображения реквизита + + + true + + + + УстановитьФорматВывода + + + DontUse + Auto + + + ВидСообщения + + String + + + + + ПолноеИмяТипаОснования + + String + + + + + + + CommonCommand.ПрисоединенныеФайлыКОбъекту + + + + + + + + AfterWrite + ПослеЗаписи + + + AfterWriteAtServer + ПослеЗаписиНаСервере + + + OnReadAtServer + ПриЧтенииНаСервере + + + BeforeWrite + ПередЗаписью + + + BeforeWriteAtServer + ПередЗаписьюНаСервере + + + OnWriteAtServer + ПриЗаписиНаСервере + + +
        diff --git a/SSL/src/Catalogs/ШаблоныСообщений/Forms/ФормаЭлемента/Help/ru.html b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ФормаЭлемента/Help/ru.html new file mode 100644 index 000000000..33b2bf0f7 --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ФормаЭлемента/Help/ru.html @@ -0,0 +1,41 @@ + +

        Предназначена для создания шаблона электронного письма или SMS-сообщения.

        +

        Шаблон электронного письма

        +

        Шаблон можно создать с помощью соответствующей кнопки из списка шаблонов, а также можно его настроить из исходящего электронного письма с помощью кнопки Создать на основании. В последнем случае в шаблон будут включены некоторые поля текущего исходящего электронного письма. Заполните необходимые поля:

        +
        • Напишите Наименование так, чтобы было понятно, как будет использоваться шаблон. +
        • С помощью переключателя выберите Назначение шаблона: +
          • Общий - для всех документов и списков; +
          • Только для - выберите из списка, для каких документов или списков предназначен данный шаблон.
        • Заполните поле Тема - кроме текста, набранного вручную, можно вставлять различные формулы. +
        • Напишите текст сообщения. Для формирования текста сообщения также можно использовать формулы, выбирая их в окне Параметры в правой части шаблона. +
        • Текст сообщения можно форматировать. Основные команды форматирования представлены в виде кнопок над текстовым полем. Все команды форматирования можно найти в меню Еще. +
        • В окне Параметры  в правой части шаблона для вставки формулы представлены различные реквизиты: Общие, а также поля выбранного документа. Реквизиты с помощью левой кнопки мыши можно перенести в нужное поле (поле Тема или текст сообщения). +
        • К сообщению можно прикрепить вложения с помощью команды Еще - Добавить в правой нижней части шаблона.  +
        • Выбранные  форматы печатных форм перечисляются ниже окна Печатные формы и вложения. Нажмите на ссылку, для того чтобы изменить список форматов. +
        • Включите флажок, для того чтобы Упаковать в архив печатные формы. +
        • С помощью соответствующего переключателя установите доступность данного шаблона: +
          • Только для автора (выберите автора, по умолчанию автором выбран текущий пользователь); +
          • Всем пользователям.

        Шаблон сообщения SMS

        +
        • +
          Наименование напишите так, чтобы было понятно, как используется шаблон.
          +
        • +
          С помощью переключателя выберите Назначение шаблона:
          +
          • +
            Общий;
            +
          • +
            Только для - предлагается выбрать, для каких документов или списков предназначен данный шаблон.
        • +
          При необходимости включите флажок Отправлять в транслите.
          +
        • +
          +
          Напишите текст сообщения. Кроме текста SMS-сообщения, в поле можно вставлять различные формулы. Для вставки в формулы в правой части шаблона в окне Параметры представлены различные реквизиты: поля выбранного документа, а также Общие реквизиты.
          +
        • С помощью соответствующего переключателя установите доступность данного шаблона: +
          • +
            Только для автора (выберите автора, по умолчанию автором выбран текущий пользователь);
            +
          • +
            Всем пользователям.

        Выбор способа формирования

        +
        • С помощью команды Сообщение формируется меню Еще можно выбрать: +
          • По шаблону (выбран по умолчанию); +
          • Внешней обработкой - после выбора этого способа формирования появляется возможность предварительного просмотра шаблона сообщения, где автоматически заполняемые параметры выделяются цветом.

        Проверка работоспособности шаблона

        +
        • +
          Сразу после создания и в любой момент времени можно проверить работоспособность шаблона сообщения с помощью кнопки Проверить шаблон.

        См. также:

        + \ No newline at end of file diff --git a/SSL/src/Catalogs/ШаблоныСообщений/Forms/ФормаЭлемента/Module.bsl b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ФормаЭлемента/Module.bsl new file mode 100644 index 000000000..126649806 --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщений/Forms/ФормаЭлемента/Module.bsl @@ -0,0 +1,1582 @@ +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + УстановитьУсловноеОформление(); + + Если Параметры.Свойство("АвтоТест") Тогда + Возврат; + КонецЕсли; + + НастройкиШаблоновСообщений = ШаблоныСообщенийСлужебный.ПриОпределенииНастроек(); + + Если Параметры.Ключ = Неопределено Или Параметры.Ключ.Пустая() Тогда + Если Параметры.ЗначениеКопирования = Справочники.ШаблоныСообщений.ПустаяСсылка() Тогда + + Если Параметры.ЗначенияЗаполнения.Количество() = 0 Тогда + Если ЗначениеЗаполнено(Параметры.ПолноеИмяТипаОснования) Тогда + // Контекстный вызов + Объект.ПолноеИмяТипаПараметраВводаНаОсновании = Параметры.ПолноеИмяТипаОснования; + Объект.ПредназначенДляВводаНаОсновании = Истина; + Элементы.ГруппаНазначение.Видимость = Ложь; + Иначе + Объект.ПредназначенДляВводаНаОсновании = Ложь; + КонецЕсли; + КонецЕсли; + + ИнициализироватьНовыйШаблонСообщений(); + + Иначе + СписокФайлов = Новый Массив; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПрисоединенныеФайлы") Тогда + МодульПрисоединенныеФайлы = ОбщегоНазначения.ОбщийМодуль("ПрисоединенныеФайлы"); + МодульПрисоединенныеФайлы.ПолучитьПрикрепленныеФайлыКОбъекту(Параметры.ЗначениеКопирования, СписокФайлов); + Для каждого Вложение Из СписокФайлов Цикл + Если ПустаяСтрока(Вложение.ИДФайлаЭлектронногоПисьма) Тогда + ИмяВременногоФайла = ПолучитьИмяВременногоФайла(Вложение.Расширение); + МодульПрисоединенныеФайлы.ПолучитьДвоичныеДанныеФайла(Вложение).Записать(ИмяВременногоФайла); + НоваяСтрока = Вложения.Добавить(); + НоваяСтрока.Имя = ИмяВременногоФайла; + НоваяСтрока.Представление = Вложение.Наименование + "." + Вложение.Расширение; + НоваяСтрока.ИндексКартинки = ПолучитьИндексПиктограммыФайла(Вложение.Расширение); + НоваяСтрока.Статус = "ВнешнийНовый"; + НоваяСтрока.Идентификатор = Вложение.Описание; + КонецЕсли; + КонецЦикла; + КонецЕсли; + + Для каждого ПараметрыЗначениеКопирования Из Параметры.ЗначениеКопирования.Параметры Цикл + Отбор = Новый Структура("ИмяПараметра", ПараметрыЗначениеКопирования.ИмяПараметра); + НайденныеСтроки = Объект.Параметры.НайтиСтроки(Отбор); + Если НайденныеСтроки.Количество() > 0 Тогда + НайденныеСтроки[0].ОписаниеТипа = ПараметрыЗначениеКопирования.ТипПараметра.Получить(); + КонецЕсли + КонецЦикла; + + УстановитьТекстШаблона(Объект, СписокФайлов); + КонецЕсли; + КонецЕсли; + + + Для каждого ПредметШаблона Из НастройкиШаблоновСообщений.ПредметыШаблонов Цикл + Элементы.ПолноеИмяТипаПараметраВводаНаОсновании.СписокВыбора.Добавить(ПредметШаблона.Имя, ПредметШаблона.Представление); + КонецЦикла; + + ОтображениеЭлементовФормы(); + + ИнициализироватьФорматыСохранения(); + СформироватьСписокРеквизитовИПечатныхФорм(); + + ИспользоватьПроизвольныеПараметры = НастройкиШаблоновСообщений.ИспользоватьПроизвольныеПараметры; + Если НЕ ИспользоватьПроизвольныеПараметры Тогда + Элементы.ГруппаРеквизитыКоманднаяПанель.Видимость = Ложь; + Элементы.РеквизитыКонтекстноеМенюДобавить.Видимость = Ложь; + Элементы.РеквизитыКонтекстноеМенюИзменить.Видимость = Ложь; + Элементы.РеквизитыКонтекстноеМенюУдалить.Видимость = Ложь; + КонецЕсли; + + Если СтрНачинаетсяС(Объект.Назначение, "Служебный") Тогда + Элементы.ГруппаНазначение.Видимость = Ложь; + Элементы.ГруппаДоступ.Видимость = Ложь; + Элементы.ФормаГруппаСообщениеФормируется.Видимость = Ложь; + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура ПриЧтенииНаСервере(ТекущийОбъект) + + УстановитьТекстШаблона(ТекущийОбъект); + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда + МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью"); + Если ВыбранныеФорматыСохранения.Количество() = 0 Тогда + Для Каждого ФорматСохранения Из МодульУправлениеПечатью.ФорматыСохраненияТабличногоДокумента() Цикл + ВыбранныеФорматыСохранения.Добавить(ФорматСохранения.ТипФайлаТабличногоДокумента, Строка(ФорматСохранения.Ссылка), Ложь, ФорматСохранения.Картинка); + КонецЦикла; + КонецЕсли; + + СписокФорматов = ТекущийОбъект.ФорматВложений.Получить(); + Если СписокФорматов <> Неопределено Тогда + ВыбранныеФорматыСохранения.ЗаполнитьПометки(Ложь); + Для Каждого ЭлементСписка Из СписокФорматов Цикл + НайденноеЗначение = ВыбранныеФорматыСохранения.НайтиПоЗначению(ЭлементСписка.Значение); + Если НайденноеЗначение <> Неопределено Тогда + НайденноеЗначение.Пометка = Истина; + КонецЕсли; + КонецЦикла; + КонецЕсли; + КонецЕсли; + + Для каждого ПараметрШаблонаТекущийОбъект Из ТекущийОбъект.Параметры Цикл + Отбор = Новый Структура("ИмяПараметра", ПараметрШаблонаТекущийОбъект.ИмяПараметра); + НайденныеСтроки = Объект.Параметры.НайтиСтроки(Отбор); + Если НайденныеСтроки.Количество() > 0 Тогда + НайденныеСтроки[0].ОписаниеТипа = ПараметрШаблонаТекущийОбъект.ТипПараметра.Получить(); + КонецЕсли; + КонецЦикла; + +КонецПроцедуры + +&НаКлиенте +Процедура ПередЗаписью(Отказ, ПараметрыЗаписи) + + Если ВариантыНазначения = 1 И ПустаяСтрока(Объект.ПолноеИмяТипаПараметраВводаНаОсновании) Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru='Укажите назначение шаблона сообщения'"),, "Объект.ПолноеИмяТипаПараметраВводаНаОсновании"); + Отказ = Истина; + Возврат; + КонецЕсли; + + РезультатПроверкиШаблоны = РезультатПроверкиШаблоны(); + Если ЗначениеЗаполнено(РезультатПроверкиШаблоны) Тогда + ПоказатьПредупреждение(, НСтр("ru='Шаблон сообщения не может быть записан.'") + Символы.ПС + + РезультатПроверкиШаблоны); + Отказ = Истина; + Возврат; + КонецЕсли; + + #Если Не ВебКлиент Тогда + ПоместитьНовыеФайлыВоВременноеХранилище(Вложения, УникальныйИдентификатор, Отказ); + #КонецЕсли + + Объект.ТолькоДляАвтора = ?(Доступно = 1, Ложь, Истина); + Если НЕ Объект.ПредназначенДляВводаНаОсновании Тогда + Объект.ПолноеИмяТипаПараметраВводаНаОсновании = ""; + Объект.Назначение = ""; + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) + + ПоместитьНовыеФайлыВоВременноеХранилище(Вложения, УникальныйИдентификатор, Отказ); + + Если ТекущийОбъект.ПредназначенДляSMS Тогда + ТекущийОбъект.ТекстШаблонаSMS = ТелоСообщенияОбычныйТекст.ПолучитьТекст(); + ТекущийОбъект.ФорматВложений = Неопределено; + Иначе + Если ТекущийОбъект.ТипТекстаПисьма = Перечисления.СпособыРедактированияЭлектронныхПисем.HTML Тогда + ТекстВHTML = ""; + ВложенияВHTML = Новый Структура(); + ТелоПисьмаВHTML.ПолучитьHTML(ТекстВHTML, ВложенияВHTML); + ТекущийОбъект.ТекстШаблонаПисьмаHTML = ТекстВHTML; + ТекущийОбъект.ТекстШаблонаПисьма = ТелоПисьмаВHTML.ПолучитьТекст(); + Иначе + ТекущийОбъект.ТекстШаблонаПисьма = ТелоСообщенияОбычныйТекст.ПолучитьТекст(); + Если ПустаяСтрока(ТекущийОбъект.ТекстШаблонаПисьма) Тогда + ТекущийОбъект.ТекстШаблонаПисьма = ТелоПисьмаВHTML.ПолучитьТекст(); + КонецЕсли; + ТекущийОбъект.ТекстШаблонаПисьмаHTML = ТекущийОбъект.ТекстШаблонаПисьма; + КонецЕсли; + + СписокФорматов = Новый СписокЗначений; + Для каждого ЭлементСписка Из ВыбранныеФорматыСохранения Цикл + Если ЭлементСписка.Пометка Тогда + ЗаполнитьЗначенияСвойств(СписокФорматов.Добавить(), ЭлементСписка); + КонецЕсли; + КонецЦикла; + ТекущийОбъект.ФорматВложений = Новый ХранилищеЗначения(СписокФорматов); + + КонецЕсли; + + ТаблицаСоответствийИменВложенийИдентификаторам = Новый СписокЗначений; + СтруктураВложений = Новый Структура; + ТелоПисьмаВHTML.ПолучитьHTML(ТекущийОбъект.ТекстШаблонаПисьмаHTML, СтруктураВложений); + Для каждого Вложение Из СтруктураВложений Цикл + ТаблицаСоответствийИменВложенийИдентификаторам.Добавить(Вложение.Ключ, Новый УникальныйИдентификатор,, Вложение.Значение); + КонецЦикла; + + ПараметрыЗаписи.Вставить("ВложенияHTML", ТаблицаСоответствийИменВложенийИдентификаторам); + + Если ТаблицаСоответствийИменВложенийИдентификаторам.Количество() > 0 Тогда + + ДокументHTML = ШаблоныСообщенийСлужебный.ПолучитьОбъектДокументHTMLИзТекстаHTML(ТекущийОбъект.ТекстШаблонаПисьмаHTML); + ЗаменитьИменаКартинокНаИдентификаторыПочтовыхВложенийВHTML( ДокументHTML, ТаблицаСоответствийИменВложенийИдентификаторам); + ТекущийОбъект.ТекстШаблонаПисьмаHTML = ШаблоныСообщенийСлужебный.ПолучитьТекстHTMLИзОбъектаДокументHTML(ДокументHTML); + + КонецЕсли; + + ТекущийОбъект.ПечатныеФормыИВложения.Очистить(); + Для каждого Вложение Из Вложения Цикл + Если Вложение.Выбрано = 1 Тогда + НоваяСтрока = ТекущийОбъект.ПечатныеФормыИВложения.Добавить(); + НоваяСтрока.Идентификатор = Вложение.Идентификатор; + НоваяСтрока.Имя = Вложение.ИмяПараметра; + КонецЕсли; + КонецЦикла; + + ТекущийОбъект.Параметры.Очистить(); + Для каждого ПараметрШаблона Из Объект.Параметры Цикл + НоваяСтрока = ТекущийОбъект.Параметры.Добавить(); + ЗаполнитьЗначенияСвойств(НоваяСтрока, ПараметрШаблона); + НоваяСтрока.ТипПараметра = Новый ХранилищеЗначения(ПараметрШаблона.ОписаниеТипа); + КонецЦикла; + +КонецПроцедуры + +&НаСервере +Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) + + // Добавим в список удаленных вложений ранее сохраненные картинки, отображаемые в теле форматированного документа. + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПрисоединенныеФайлы") Тогда + МодульПрисоединенныеФайлы = ОбщегоНазначения.ОбщийМодуль("ПрисоединенныеФайлы"); + СписокФайлов = Новый Массив; + МодульПрисоединенныеФайлы.ПолучитьПрикрепленныеФайлыКОбъекту(ТекущийОбъект.Ссылка, СписокФайлов); + Для каждого Вложение Из СписокФайлов Цикл + Если ЗначениеЗаполнено(Вложение.ИДФайлаЭлектронногоПисьма) Тогда + УдалитьПрисоединенныйФайл(Вложение.Ссылка); + КонецЕсли; + КонецЦикла; + КонецЕсли; + + СохранитьКартинкиФорматированногоДокументаКакПрисоединенныеФайлы(ТекущийОбъект.Ссылка, + ТекущийОбъект.ТипТекстаПисьма, ПараметрыЗаписи.ВложенияHTML, УникальныйИдентификатор); + + Индекс = Вложения.Количество() - 1; + Пока Индекс >= 0 Цикл + СтрокаТаблицыВложений = Вложения.Получить(Индекс); + Если СтрокаТаблицыВложений.Статус = "ВнешнийУдаляемый" Тогда + Если Не СтрокаТаблицыВложений.Ссылка.Пустая() Тогда + УдалитьПрисоединенныйФайл(СтрокаТаблицыВложений.Ссылка); + КонецЕсли; + Если ПустаяСтрока(СтрокаТаблицыВложений.Реквизит) Тогда + Вложения.Удалить(Индекс) + Иначе + СтрокаТаблицыВложений.Статус = ""; + СтрокаТаблицыВложений.Выбрано = 2; + КонецЕсли; + ИначеЕсли СтрокаТаблицыВложений.Статус = "ВнешнийНовый" Тогда + ИмяФайла = ?(ПустаяСтрока(СтрокаТаблицыВложений.Реквизит), СтрокаТаблицыВложений.Представление, СтрокаТаблицыВложений.Реквизит); + СсылкаНаФайл = ШаблоныСообщенийСлужебный.ЗаписатьВложениеЭлектронногоПисьмаИзВременногоХранилища(ТекущийОбъект.Ссылка, СтрокаТаблицыВложений, ИмяФайла, 0); + СтрокаТаблицыВложений.Ссылка = СсылкаНаФайл; + СтрокаТаблицыВложений.Статус ="ВнешнийПрисоединенный"; + КонецЕсли; + Индекс = Индекс - 1; + КонецЦикла; +КонецПроцедуры + +&НаСервере +Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи) + ОтображениеЭлементовФормы(); +КонецПроцедуры + +&НаКлиенте +Процедура ПослеЗаписи(ПараметрыЗаписи) + Оповестить("ПослеЗаписиШаблонаСообщения", Объект.Ссылка, ЭтотОбъект); +КонецПроцедуры + +&НаКлиенте +Процедура ПриОткрытии(Отказ) + УстановитьВыборФормата(); + СформироватьПредставлениеВыбранныхФорматов(); +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы + +&НаКлиенте +Процедура ПолноеИмяТипаПараметраВводаНаОснованииОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) + + Объект.ПолноеИмяТипаПараметраВводаНаОсновании = ВыбранноеЗначение; + Представление = Элементы.ПолноеИмяТипаПараметраВводаНаОсновании.СписокВыбора.НайтиПоЗначению(ВыбранноеЗначение).Представление; + Объект.Назначение = Представление; + СформироватьСписокРеквизитовИПечатныхФорм(); + +КонецПроцедуры + +&НаКлиенте +Процедура ВариантыНазначенияДляВсехПриИзменении(Элемент) + Элементы.ПолноеИмяТипаПараметраВводаНаОсновании.Доступность = ВариантыНазначения; + Объект.ПредназначенДляВводаНаОсновании = (ВариантыНазначения = 1); + Элементы.ПолноеИмяТипаПараметраВводаНаОсновании.АвтоОтметкаНезаполненного = (ВариантыНазначения = 1); + + СформироватьСписокРеквизитовИПечатныхФорм(); +КонецПроцедуры + +&НаКлиенте +Процедура ВнешняяОбработкаПриИзменении(Элемент) + ОтображениеЭлементовФормы(); +КонецПроцедуры + +&НаКлиенте +Процедура ФорматВложенийНажатие(Элемент, СтандартнаяОбработка) + СтандартнаяОбработка = Ложь; + РезультатВыбораФорматов = Неопределено; + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда + МодульУправлениеПечатьюСлужебныйКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("УправлениеПечатьюСлужебныйКлиент"); + Оповещение = Новый ОписаниеОповещения("ФорматВложенийНажатиеЗавершение", ЭтотОбъект); + МодульУправлениеПечатьюСлужебныйКлиент.ОткрытьФормуВыбораФорматаВложений(ВыбранныеНастройкиФормата(), Оповещение); + КонецЕсли + +КонецПроцедуры + +&НаКлиенте +Процедура ФорматВложенийНажатиеЗавершение(Результат, ДополнительныеПараметры) Экспорт + + РезультатВыбораФорматов = Результат; + Если РезультатВыбораФорматов <> КодВозвратаДиалога.Отмена И РезультатВыбораФорматов <> Неопределено Тогда + УстановитьВыборФормата(РезультатВыбораФорматов.ФорматыСохранения); + Объект.УпаковатьВАрхив = РезультатВыбораФорматов.УпаковатьВАрхив; + СформироватьПредставлениеВыбранныхФорматов(); + Модифицированность = Истина; + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Функция ВыбранныеНастройкиФормата() + + ФорматыСохранения = Новый Массив; + + Для Каждого ВыбранныйФормат Из ВыбранныеФорматыСохранения Цикл + Если ВыбранныйФормат.Пометка Тогда + ФорматыСохранения.Добавить(ВыбранныйФормат.Значение); + КонецЕсли; + КонецЦикла; + + Результат = Новый Структура; + Результат.Вставить("УпаковатьВАрхив", Объект.УпаковатьВАрхив); + Результат.Вставить("ФорматыСохранения", ФорматыСохранения); + Результат.Вставить("Получатели", Новый Массив); + + Возврат Результат; + +КонецФункции + +&НаКлиенте +Процедура УстановитьВыборФормата(Знач ФорматыСохранения = Неопределено) + + Если Объект.ПредназначенДляSMS Тогда + Возврат; + КонецЕсли; + + ЕстьВыбранныйФормат = Ложь; + Для Каждого ВыбранныйФормат Из ВыбранныеФорматыСохранения Цикл + Если ФорматыСохранения <> Неопределено Тогда + ВыбранныйФормат.Пометка = ФорматыСохранения.Найти(ВыбранныйФормат.Значение) <> Неопределено; + КонецЕсли; + + Если ВыбранныйФормат.Пометка Тогда + ЕстьВыбранныйФормат = Истина; + КонецЕсли; + КонецЦикла; + + Если Не ЕстьВыбранныйФормат Тогда + ВыбранныеФорматыСохранения[0].Пометка = Истина; + КонецЕсли; + + +КонецПроцедуры + +&НаКлиенте +Процедура СформироватьПредставлениеВыбранныхФорматов() + + ФорматПечатныхФорм = ""; + КоличествоФорматов = 0; + Для Каждого ВыбранныйФормат Из ВыбранныеФорматыСохранения Цикл + Если ВыбранныйФормат.Пометка Тогда + Если Не ПустаяСтрока(ФорматПечатныхФорм) Тогда + ФорматПечатныхФорм = ФорматПечатныхФорм + ", "; + КонецЕсли; + ФорматПечатныхФорм = ФорматПечатныхФорм + ВыбранныйФормат.Представление; + КоличествоФорматов = КоличествоФорматов + 1; + КонецЕсли; + КонецЦикла; + +КонецПроцедуры + +&НаКлиенте +Процедура ДоступВсемПользователямПриИзменении(Элемент) + Доступно = 1; +КонецПроцедуры + +&НаКлиенте +Процедура ДоступТолькоАвторуПриИзменении(Элемент) + Доступно = 0; +КонецПроцедуры + +&НаКлиенте +Процедура ТелоПисьмаВHTMLПриИзменении(Элемент) + ТелоПисьмаВHTML.ПолучитьHTML(Объект.ТекстШаблонаПисьмаHTML, Новый Структура); +КонецПроцедуры + +&НаКлиенте +Процедура ТелоСообщенияОбычныйТекстПриИзменении(Элемент) + Объект.ТекстШаблонаПисьма = ТелоСообщенияОбычныйТекст.ПолучитьТекст(); +КонецПроцедуры + +&НаКлиенте +Процедура ТелоСообщенияОбычныйТекстSMSПриИзменении(Элемент) + Объект.ТекстШаблонаSMS = ТелоСообщенияОбычныйТекст.ПолучитьТекст(); + ТелоСообщенияОбычныйТекст.УстановитьТекст(Объект.ТекстШаблонаSMS); // Тех. ограничение SMS 1024 символа. +КонецПроцедуры + +&НаКлиенте +Процедура АвторПриИзменении(Элемент) + Если НЕ ЗначениеЗаполнено(Объект.Автор) Тогда + Объект.Автор = ПользователиКлиентСервер.АвторизованныйПользователь(); + КонецЕсли; +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовТаблицыФормыВложения + +&НаКлиенте +Процедура ВложенияПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр) + Отказ = Истина; + ДобавитьВложениеВыполнить(); +КонецПроцедуры + +&НаКлиенте +Процедура СвойстваВложения(Команда) + + ТекущиеДанные = Элементы.Вложения.ТекущиеДанные; + Если ТекущиеДанные = Неопределено Тогда + Возврат; + КонецЕсли; + + ТекущийИндексВКоллекции = Вложения.Индекс(ТекущиеДанные); + + Если ТекущиеДанные.Ссылка = ПредопределенноеЗначение("Справочник.ШаблоныСообщенийПрисоединенныеФайлы.ПустаяСсылка") Тогда + ДополнительныеПараметры = Новый Структура("ТекущийИндексВКоллекции", ТекущийИндексВКоллекции); + ОбработчикОповещенияОЗакрытии = Новый ОписаниеОповещения("ВопросОЗаписиФайлаПослеЗакрытия", ЭтотОбъект, ДополнительныеПараметры); + ТекстВопроса = НСтр("ru = 'Свойства файла доступны только после его записи. Записать?'"); + ПоказатьВопрос(ОбработчикОповещенияОЗакрытии, ТекстВопроса, РежимДиалогаВопрос.ДаНет); + Иначе + ОткрытьСвойстваВложения(ТекущийИндексВКоллекции); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ВложенияПередУдалением(Элемент, Отказ) + УдалитьВложениеВыполнить(); + Отказ = Истина; +КонецПроцедуры + +&НаКлиенте +Процедура ВложенияПриАктивизацииСтроки(Элемент) + + ТекущиеДанные = Элементы.Вложения.ТекущиеДанные; + Если ТекущиеДанные = Неопределено Тогда + Возврат; + КонецЕсли; + + Если ТекущиеДанные.Статус = "ПечатнаяФорма" Или ЗначениеЗаполнено(ТекущиеДанные.Реквизит) Тогда + Элементы.ВложенияКонтекстноеМенюУдалить.Доступность = Ложь; + Элементы.ВложенияКонтекстноеМенюИзменитьВложение.Доступность = Ложь; + Элементы.ВложенияКонтекстноеМенюСвойстваВложения.Доступность = Ложь; + Элементы.ВложенияСвойстваВложения.Доступность = Ложь; + Элементы.ВложенияУдалить.Доступность = Ложь; + Иначе + Элементы.ВложенияКонтекстноеМенюУдалить.Доступность = Истина; + Элементы.ВложенияКонтекстноеМенюИзменитьВложение.Доступность = Истина; + Элементы.ВложенияКонтекстноеМенюСвойстваВложения.Доступность = Истина; + Элементы.ВложенияСвойстваВложения.Доступность = Истина; + Элементы.ВложенияУдалить.Доступность = Истина; + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ИзменитьВложение(Команда) + ТекущиеДанные = Элементы.Вложения.ТекущиеДанные; + Если ТекущиеДанные = Неопределено Тогда + Возврат; + КонецЕсли; + + ДобавитьВложениеВыполнить(ТекущиеДанные.Идентификатор); +КонецПроцедуры + +&НаКлиенте +Процедура ВложенияВыбранПриИзменении(Элемент) + ТекущиеДанные = Элементы.Вложения.ТекущиеДанные; + Если ТекущиеДанные = Неопределено Тогда + Возврат; + КонецЕсли; + + Если ПустаяСтрока(ТекущиеДанные.Реквизит) Тогда + Если ТекущиеДанные.Выбрано = 2 Тогда + ТекущиеДанные.Выбрано = 0; + КонецЕсли; + Иначе + Если ТекущиеДанные.Выбрано = 0 Тогда + ТекущиеДанные.Выбрано = 2; + ДобавитьВложениеВыполнить(ТекущиеДанные.Идентификатор); + ИначеЕсли ТекущиеДанные.Выбрано = 2 Тогда + ТекущиеДанные.Статус = "ВнешнийУдаляемый"; + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовТаблицыФормыРеквизиты + +&НаКлиенте +Процедура РеквизитыПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр) + Отказ = Истина; + Если ИспользоватьПроизвольныеПараметры Тогда + ДополнительныеПараметры = Новый Структура("Добавление", Истина); + ОповещениеОЗакрытие = Новый ОписаниеОповещения("ПослеЗакрытияФормыПараметра", ЭтотОбъект, ДополнительныеПараметры); + ПараметрыФормы = Новый Структура("СписокПараметров, ПолноеИмяТипаПараметраВводаНаОсновании", Объект.Параметры, Объект.ПолноеИмяТипаПараметраВводаНаОсновании); + ОткрытьФорму("Справочник.ШаблоныСообщений.Форма.ПроизвольныйПараметр", ПараметрыФормы,,,,, ОповещениеОЗакрытие); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура РеквизитыПриАктивизацииСтроки(Элемент) + + ТекущиеДанные = Элементы.Реквизиты.ТекущиеДанные; + ДоступностьФорматированногоВывода = Ложь; + Если ТекущиеДанные <> Неопределено Тогда + Если ТекущиеДанные.ПроизвольныйПараметр Тогда + Элементы.РеквизитыКонтекстноеМенюУдалить.Доступность = Истина; + Элементы.Удалить.Доступность = Истина; + Иначе + Элементы.РеквизитыКонтекстноеМенюУдалить.Доступность = Ложь; + Элементы.Удалить.Доступность = Ложь; + КонецЕсли; + Если ТекущиеДанные.ПолучитьЭлементы().Количество() > 0 Тогда + Элементы.РеквизитыКонтекстноеМенюДобавитьПараметрПочта.Доступность = Ложь; + Элементы.РеквизитыМенюДобавитьПараметрПочта.Доступность = Ложь; + Элементы.РеквизитыКонтекстноеМенюДобавитьПараметрВТекстСообщенияДляSMS.Доступность = Ложь; + Элементы.РеквизитыМенюДобавитьПараметрВТекстСообщенияSMS.Доступность = Ложь; + Иначе + Элементы.РеквизитыКонтекстноеМенюДобавитьПараметрПочта.Доступность = Истина; + Элементы.РеквизитыМенюДобавитьПараметрПочта.Доступность = Истина; + Элементы.РеквизитыКонтекстноеМенюДобавитьПараметрВТекстСообщенияДляSMS.Доступность = Истина; + Элементы.РеквизитыМенюДобавитьПараметрВТекстСообщенияSMS.Доступность = Истина; + Для каждого Тип Из ТекущиеДанные.Тип.Типы() Цикл + Если Тип = Тип("Дата") Или Тип = Тип("Число") Или Тип = Тип("Булево") Тогда + ДоступностьФорматированногоВывода = Истина; + Прервать; + КонецЕсли; + КонецЦикла; + КонецЕсли; + КонецЕсли; + Элементы.ФорматОтображенияРеквизита.Доступность = ДоступностьФорматированногоВывода; +КонецПроцедуры + +&НаКлиенте +Процедура РеквизитыВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) + Если ИспользоватьПроизвольныеПараметры Тогда + Реквизит = Реквизиты.НайтиПоИдентификатору(ВыбраннаяСтрока); + Если Реквизит.ПроизвольныйПараметр Тогда + ДополнительныеПараметры = Новый Структура("Добавление, ВыбраннаяСтрока", Ложь, ВыбраннаяСтрока); + ПараметрыФормы = Новый Структура("ИмяПараметра, ПредставлениеПараметра, ОписаниеТипа", Реквизит.Имя, Реквизит.Представление, Реквизит.Тип); + ПараметрыФормы.Вставить("СписокПараметров", Объект.Параметры); + ПараметрыФормы.Вставить("ПолноеИмяТипаПараметраВводаНаОсновании", Объект.ПолноеИмяТипаПараметраВводаНаОсновании); + + ОповещениеОЗакрытие = Новый ОписаниеОповещения("ПослеЗакрытияФормыПараметра", ЭтотОбъект, ДополнительныеПараметры); + ОткрытьФорму("Справочник.ШаблоныСообщений.Форма.ПроизвольныйПараметр", ПараметрыФормы,,,,, ОповещениеОЗакрытие); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура РеквизитыНачалоПеретаскивания(Элемент, ПараметрыПеретаскивания, Выполнение) + ПеретаскиваемыеОбъекты = ПараметрыПеретаскивания.Значение; + ТекстДляВставки = ""; + Разделитель = ""; + Для каждого ПеретаскиваемыйОбъект Из ПеретаскиваемыеОбъекты Цикл + ЭлементДерева = Реквизиты.НайтиПоИдентификатору(ПеретаскиваемыйОбъект); + Если ЭлементДерева.ПолучитьЭлементы().Количество() = 0 Тогда + ФорматВывода = ?(ПустаяСтрока(ЭлементДерева.Формат), "", "{" + ЭлементДерева.Формат +"}"); + ТекстДляВставки = ТекстДляВставки + Разделитель + "[" + ЭлементДерева.Имя + ФорматВывода + "]"; + Разделитель = " "; + КонецЕсли; + КонецЦикла; + ПараметрыПеретаскивания.Значение = ТекстДляВставки; + + +КонецПроцедуры + +&НаКлиенте +Процедура РеквизитыПередУдалением(Элемент, Отказ) + Если ИспользоватьПроизвольныеПараметры Тогда + + ТекущиеДанные = Элементы.Реквизиты.ТекущиеДанные; + Если ТекущиеДанные = Неопределено ИЛИ НЕ ТекущиеДанные.ПроизвольныйПараметр Тогда + Отказ = Истина; + Возврат; + КонецЕсли; + + Если СтрНачинаетсяС(ТекущиеДанные.Имя, ШаблоныСообщенийКлиентСервер.ЗаголовокПроизвольныхПараметров()) Тогда + Отбор = Новый Структура("ИмяПараметра", Сред(ТекущиеДанные.Имя, СтрДлина(ШаблоныСообщенийКлиентСервер.ЗаголовокПроизвольныхПараметров()) + 2)); + Иначе + Отбор = Новый Структура("ИмяПараметра", ТекущиеДанные.Имя); + КонецЕсли; + НайденныеСтроки = Объект.Параметры.НайтиСтроки(Отбор); + Если НайденныеСтроки.Количество() > 0 Тогда + Объект.Параметры.Удалить(НайденныеСтроки[0]); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиКомандФормы + +&НаКлиенте +Процедура ЭлектронноеПисьмоОбычныйТекст(Команда) + УстановитьЭлектронноеПисьмоОбычныйТекст(Истина); +КонецПроцедуры + +&НаКлиенте +Процедура ЭлектронноеПисьмоHTML(Команда) + УстановитьЭлектронноеПисьмоHTML(Истина); +КонецПроцедуры + +&НаКлиенте +Процедура ПроверитьШаблон(Команда) + + ОчиститьСообщения(); + РезультатПроверкиШаблоны = РезультатПроверкиШаблоны(); + Если ЗначениеЗаполнено(РезультатПроверкиШаблоны) Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(РезультатПроверкиШаблоны); + Иначе + ПоказатьПредупреждение(, НСтр("ru = 'Шаблон заполнен корректно'")); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ВнешнейОбработкой(Команда) + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда + Оповещение = Новый ОписаниеОповещения("ПослеВыбораДополнительныеОтчетыИОбработки", ЭтотОбъект); + ИмяВида = "ВидыДополнительныхОтчетовИОбработок.ШаблонСообщения"; + ЗначениеОтбора = Новый Структура("Вид", ПредопределенноеЗначение("Перечисление." + ИмяВида)); + ПараметрыФормы = Новый Структура("Отбор", ЗначениеОтбора); + ИмяФормыДополнительныеОтчетыИОбработки = "ДополнительныеОтчетыИОбработки.ФормаВыбора"; + ОткрытьФорму("Справочник." + ИмяФормыДополнительныеОтчетыИОбработки, ПараметрыФормы, ЭтотОбъект,,,, Оповещение); + КонецЕсли + +КонецПроцедуры + +&НаКлиенте +Процедура ПоШаблону(Команда) + + Элементы.Страницы.ТекущаяСтраница = Элементы.СообщениеЭлектронноеПисьмоHTML; + + Элементы.ГруппаВнешняяОбработка.Видимость = Ложь; + Элементы.ГруппаПараметры.Видимость = Истина; + Элементы.ФормаПоШаблону.Пометка = Истина; + Элементы.ФормаВнешнейОбработкой.Пометка = Ложь; + Элементы.ТемаПисьма.ТолькоПросмотр = Ложь; + Объект.ШаблонПоВнешнейОбработке = Ложь; + Объект.ВнешняяОбработка = Неопределено; + ОтображениеЭлементовФормы(); + +КонецПроцедуры + +&НаКлиенте +Процедура УстановитьФорматВывода(Команда) + + ТекущиеДанные = Элементы.Реквизиты.ТекущиеДанные; + Если ТекущиеДанные <> Неопределено Тогда + ДополнительныеПараметры = Новый Структура("ИдентификаторСтроки", ТекущиеДанные.ПолучитьИдентификатор()); + Обработчик = Новый ОписаниеОповещения("ПослеВыбораФорматаРеквизита", ЭтотОбъект, ДополнительныеПараметры); + + Диалог = Новый КонструкторФорматнойСтроки; + Диалог.ДоступныеТипы = ТекущиеДанные.Тип; + Диалог.Текст = ТекущиеДанные.Формат; + Диалог.Показать(Обработчик); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ПослеВыбораФорматаРеквизита(Результат, ДополнительныеПараметры) Экспорт + Если Результат <> Неопределено Тогда + Реквизит = Реквизиты.НайтиПоИдентификатору(ДополнительныеПараметры.ИдентификаторСтроки); + Если Реквизит <> Неопределено Тогда + Реквизит.Формат = Результат; + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ДобавитьПараметрВТекстСообщения(Команда) + + Если Элементы.Реквизиты.ВыделенныеСтроки <> Неопределено Тогда + Текст = ""; + Для каждого НомерСтроки Из Элементы.Реквизиты.ВыделенныеСтроки Цикл + НайденнаяСтрока = Реквизиты.НайтиПоИдентификатору(НомерСтроки); + Если НайденнаяСтрока <> Неопределено Тогда + ФорматВывода = ?(ПустаяСтрока(НайденнаяСтрока.Формат), "", "{" + НайденнаяСтрока.Формат +"}"); + Текст = Текст + "[" + НайденнаяСтрока.Имя + ФорматВывода + "] "; + КонецЕсли; + КонецЦикла; + Если Объект.ТипТекстаПисьма = ПредопределенноеЗначение("Перечисление.СпособыРедактированияЭлектронныхПисем.HTML") Тогда + Если ПустаяСтрока(Элементы.ТелоПисьмаВHTML.ВыделенныйТекст) Тогда + ЗакладкаДляВставкиНачало = Неопределено; + ЗакладкаДляВставкиКонец = Неопределено; + Элементы.ТелоПисьмаВHTML.ПолучитьГраницыВыделения(ЗакладкаДляВставкиНачало, ЗакладкаДляВставкиКонец); + ТелоПисьмаВHTML.Вставить(ЗакладкаДляВставкиКонец, Текст); + Иначе + Элементы.ТелоПисьмаВHTML.ВыделенныйТекст = Текст; + КонецЕсли; + Иначе + Если Объект.ПредназначенДляSMS Тогда + Элементы.ТелоСообщенияОбычныйТекстSMS.ВыделенныйТекст = Текст; + Иначе + Элементы.ТелоСообщенияОбычныйТекст.ВыделенныйТекст = Текст; + КонецЕсли; + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ДобавитьПараметрВТему(Команда) + + ТекущиеДанные = Элементы.Реквизиты.ТекущиеДанные; + Если ТекущиеДанные <> Неопределено Тогда + ФорматВывода = ?(ПустаяСтрока(ТекущиеДанные.Формат), "", "{" + ТекущиеДанные.Формат +"}"); + НачалоПараметра = ?(Прав(Объект.ТемаПисьма, 1) = " ", "[", " ["); + Объект.ТемаПисьма = Объект.ТемаПисьма + НачалоПараметра + ТекущиеДанные.Имя + ФорматВывода + "]"; + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаКлиенте +Процедура ПослеЗакрытияФормыПараметра(ОписаниеПараметра, ДополнительныеПараметры) Экспорт + Если ТипЗнч(ОписаниеПараметра) = Тип("Структура") Тогда + Если ДополнительныеПараметры.Добавление Тогда + ДобавитьПроизвольныйПараметр(ОписаниеПараметра); + Иначе + Реквизит = Реквизиты.НайтиПоИдентификатору(ДополнительныеПараметры.ВыбраннаяСтрока); + Если СтрНачинаетсяС(Реквизит.Имя, ШаблоныСообщенийКлиентСервер.ЗаголовокПроизвольныхПараметров()) Тогда + Отбор = Новый Структура("ИмяПараметра", Сред(Реквизит.Имя, СтрДлина(ШаблоныСообщенийКлиентСервер.ЗаголовокПроизвольныхПараметров()) + 2)); + Иначе + Отбор = Новый Структура("ИмяПараметра", Реквизит.Имя); + КонецЕсли; + НайденныеСтроки = Объект.Параметры.НайтиСтроки(Отбор); + Если НайденныеСтроки.Количество() > 0 Тогда + Объект.Параметры.Удалить(НайденныеСтроки[0]); + КонецЕсли; + ДобавитьПроизвольныйПараметр(ОписаниеПараметра); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +&НаСервере +Процедура ДобавитьПроизвольныйПараметр(ОписаниеПараметра) + НоваяПараметр = Объект.Параметры.Добавить(); + ЗаполнитьЗначенияСвойств(НоваяПараметр, ОписаниеПараметра); + + МассивТипов = Новый Массив; + МассивТипов.Добавить(ОписаниеПараметра.ТипПараметра); + ОписаниеТипа = Новый ОписаниеТипов(МассивТипов); + НоваяПараметр.ОписаниеТипа = ОписаниеТипа; + + СформироватьСписокРеквизитовИПечатныхФорм(); +КонецПроцедуры + +&НаСервере +Процедура ИнициализироватьНовыйШаблонСообщений() + + Если Параметры.Основание = Неопределено Тогда + + Если ЗначениеЗаполнено(Параметры.ВидСообщения) Тогда + Если Параметры.ВидСообщения = "СообщениеSMS" Тогда + Объект.ПредназначенДляSMS = Истина; + Объект.ПредназначенДляЭлектронныхПисем = Ложь; + Иначе + Объект.ПредназначенДляSMS = Ложь; + Объект.ПредназначенДляЭлектронныхПисем = Истина; + Объект.ТипТекстаПисьма = Перечисления.СпособыРедактированияЭлектронныхПисем.HTML; + КонецЕсли; + КонецЕсли; + + Объект.ТолькоДляАвтора = Истина; + Объект.Автор = Пользователи.АвторизованныйПользователь(); + Доступно = 0; + + Иначе + + Если Объект.ТипТекстаПисьма = Перечисления.СпособыРедактированияЭлектронныхПисем.HTML Тогда + СтруктураВложений = Новый Структура; + ТелоПисьмаВHTML.УстановитьHTML(Объект.ТекстШаблонаПисьмаHTML, СтруктураВложений); + Иначе + ТелоСообщенияОбычныйТекст.УстановитьТекст(Объект.ТекстШаблонаПисьма); + КонецЕсли; + + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура ИнициализироватьФорматыСохранения() + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда + МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью"); + Если ВыбранныеФорматыСохранения.Количество() = 0 Тогда + Для Каждого ФорматСохранения Из МодульУправлениеПечатью.ФорматыСохраненияТабличногоДокумента() Цикл + ВыбранныеФорматыСохранения.Добавить(ФорматСохранения.ТипФайлаТабличногоДокумента, Строка(ФорматСохранения.Ссылка), Ложь, ФорматСохранения.Картинка); + КонецЦикла; + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура УстановитьТекстШаблона(ТекущийОбъект, СписокФайлов = Неопределено) + + Если ТекущийОбъект.ПредназначенДляSMS Тогда + ТелоСообщенияОбычныйТекст.УстановитьТекст(ТекущийОбъект.ТекстШаблонаSMS); + Иначе + Если ТекущийОбъект.ТипТекстаПисьма = Перечисления.СпособыРедактированияЭлектронныхПисем.HTML Тогда + УстановитьHTMLДляФорматированногоДокумента(ТекущийОбъект.ТекстШаблонаПисьмаHTML, ТекущийОбъект.Ссылка, СписокФайлов); + Иначе + ТелоСообщенияОбычныйТекст.УстановитьТекст(ТекущийОбъект.ТекстШаблонаПисьма); + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура ОтображениеЭлементовФормы() + + Если Объект.ПредназначенДляSMS Тогда + СуффиксЗаголовка = НСтр("ru = 'Шаблон сообщения SMS'"); + Элементы.ФормаВидТекстаЭлектронногоПисьма.Видимость = Ложь; + Элементы.Страницы.ТекущаяСтраница = Элементы.СообщениеSMS; + Элементы.ТемаПисьма.Видимость = Ложь; + Элементы.СкрытыйЗаголовокПараметры.Видимость = Ложь; + Элементы.ГруппаВложения.Видимость = Ложь; + Элементы.РеквизитыКонтекстноеМенюДобавитьПараметрПочта.Видимость = Ложь; + Элементы.РеквизитыМенюДобавитьПараметрПочта.Видимость = Ложь; + Элементы.РеквизитыКонтекстноеМенюДобавитьПараметрВТекстСообщенияДляSMS.Видимость = Истина; + Элементы.РеквизитыМенюДобавитьПараметрВТекстСообщенияSMS.Видимость = Истина; + Элементы.СкрытыйЗаголовокСообщениеSMS.Видимость = Истина; + Иначе + СуффиксЗаголовка = НСтр("ru = 'Шаблон сообщения электронного письма'"); + Элементы.ГруппаВложения.Видимость = Истина; + Элементы.РеквизитыКонтекстноеМенюДобавитьПараметрПочта.Видимость = Истина; + Элементы.РеквизитыМенюДобавитьПараметрПочта.Видимость = Истина; + Элементы.РеквизитыКонтекстноеМенюДобавитьПараметрВТекстСообщенияДляSMS.Видимость = Ложь; + Элементы.РеквизитыМенюДобавитьПараметрВТекстСообщенияSMS.Видимость = Ложь; + Если Объект.ТипТекстаПисьма = Перечисления.СпособыРедактированияЭлектронныхПисем.HTML Тогда + УстановитьЭлектронноеПисьмоHTML(); + Иначе + УстановитьЭлектронноеПисьмоОбычныйТекст(); + КонецЕсли; + КонецЕсли; + Если ЗначениеЗаполнено(Объект.Ссылка) Тогда + Заголовок = Объект.Наименование + " (" + СуффиксЗаголовка + ")"; + Иначе + Заголовок = СуффиксЗаголовка + " (" + НСтр("ru = 'создание'")+ ")"; + КонецЕсли; + + Если Объект.ШаблонПоВнешнейОбработке Тогда + Элементы.ГруппаНазначение.Доступность = Ложь; + Элементы.ТемаПисьма.ТолькоПросмотр = Истина; + Элементы.ГруппаВнешняяОбработка.Видимость = Истина; + Элементы.ГруппаПараметры.Видимость = Ложь; + Элементы.ФормаВнешнейОбработкой.Пометка = Истина; + Элементы.ФормаПоШаблону.Пометка = Ложь; + ЗаполнитьШаблонПоВнешнейОбработке(); + Иначе + Элементы.ГруппаНазначение.Доступность = Истина; + Элементы.ТемаПисьма.ТолькоПросмотр = Ложь; + Элементы.ГруппаВнешняяОбработка.Видимость = Ложь; + Элементы.ГруппаПараметры.Видимость = Истина; + Элементы.ФормаВнешнейОбработкой.Пометка = Ложь; + Элементы.ФормаПоШаблону.Пометка = Истина; + КонецЕсли; + + Если Пользователи.РолиДоступны("ДобавлениеИзменениеШаблоновСообщений") Тогда + Элементы.ГруппаДоступ.Видимость = Истина; + Иначе + Элементы.ГруппаДоступ.Видимость = Ложь; + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") + И ПолучитьФункциональнуюОпцию("ИспользоватьДополнительныеОтчетыИОбработки") Тогда + Элементы.ФормаГруппаСообщениеФормируется.Видимость = Истина; + Иначе + Элементы.ФормаГруппаСообщениеФормируется.Видимость = Ложь; + КонецЕсли; + + Если НЕ ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда + Элементы.ГруппаНастройкиВложений.Видимость = Ложь; + КонецЕсли; + + Доступно = ?(Объект.ТолькоДляАвтора, 0, 1); + ВариантыНазначения = ?(ЗначениеЗаполнено(Объект.ПолноеИмяТипаПараметраВводаНаОсновании), 1, 0); + Элементы.ПолноеИмяТипаПараметраВводаНаОсновании.Доступность = (ВариантыНазначения = 1); + +КонецПроцедуры + +&НаСервере +Процедура УстановитьHTMLДляФорматированногоДокумента(ТекстШаблонаПисьмаHTML, СсылкаНаТекущийОбъект, СписокФайлов = Неопределено) + + ПараметрШаблона = Новый Структура("Шаблон, УникальныйИдентификатор"); + ПараметрШаблона.Шаблон = СсылкаНаТекущийОбъект; + ПараметрШаблона.УникальныйИдентификатор = УникальныйИдентификатор; + Сообщение = ШаблоныСообщенийСлужебный.КонструкторСообщения(); + Сообщение.Текст = ТекстШаблонаПисьмаHTML; + ШаблоныСообщенийСлужебный.ОбработатьHTMLДляФорматированногоДокумента(ПараметрШаблона, Сообщение, Истина, СписокФайлов); + СтруктураВложений = Новый Структура(); + Если СписокФайлов <> Неопределено Тогда + Для каждого Вложение Из СписокФайлов Цикл + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПрисоединенныеФайлы") Тогда + Если ЗначениеЗаполнено(Вложение.ИДФайлаЭлектронногоПисьма) Тогда + МодульПрисоединенныеФайлы = ОбщегоНазначения.ОбщийМодуль("ПрисоединенныеФайлы"); + СведенияОФайле = МодульПрисоединенныеФайлы.ПолучитьДанныеФайла(Вложение, УникальныйИдентификатор); + Изображение = Новый Картинка(ПолучитьИзВременногоХранилища(СведенияОФайле.СсылкаНаДвоичныеДанныеФайла)); + СтруктураВложений.Вставить(СведенияОФайле.Наименование, Изображение); + КонецЕсли; + КонецЕсли; + КонецЦикла; + Иначе + Для каждого ВложениеВHTML Из Сообщение.Вложения Цикл + Изображение = Новый Картинка(ПолучитьИзВременногоХранилища(ВложениеВHTML.АдресВоВременномХранилище)); + СтруктураВложений.Вставить(ВложениеВHTML.Представление, Изображение); + КонецЦикла; + КонецЕсли; + ТелоПисьмаВHTML.УстановитьHTML(Сообщение.Текст, СтруктураВложений); + +КонецПроцедуры + +// бизнес-логика + +&НаСервере +Процедура СформироватьСписокРеквизитовИПечатныхФорм() + + ПараметрыШаблона = ШаблоныСообщенийСлужебный.ПараметрыШаблона(Объект); + СведенияОШаблоне = ШаблоныСообщенийСлужебный.СведенияОШаблоне(ПараметрыШаблона); + + Реквизиты.ПолучитьЭлементы().Очистить(); + СписокРеквизитов = РеквизитФормыВЗначение("Реквизиты"); + ЗаполнитьДеревоРеквизитов(СписокРеквизитов, СведенияОШаблоне.Реквизиты); + ЗаполнитьДеревоРеквизитов(СписокРеквизитов, СведенияОШаблоне.ОбщиеРеквизиты, Истина); + ЗначениеВРеквизитФормы(СписокРеквизитов, "Реквизиты"); + + ВыбранныеПечатныеФормыИВложения = Объект.ПечатныеФормыИВложения.Выгрузить(, "Идентификатор").ВыгрузитьКолонку("Идентификатор"); + + Отбор = Новый Структура("Статус", "ВнешнийНовый"); + НесохраненныеФайлы = Вложения.НайтиСтроки(Отбор); + Вложения.Очистить(); + + Для каждого Вложение Из СведенияОШаблоне.Вложения Цикл + + ВнутренниеВложение = Ложь; + Для каждого ФайлВложение Из НесохраненныеФайлы Цикл + Если ФайлВложение.Идентификатор = Вложение.Идентификатор Тогда + ВнутренниеВложение = Истина; + Расширение = ?(ПустаяСтрока(Вложение.ТипФайла), "mxl", Вложение.ТипФайла); + ФайлВложение.ИндексКартинки = ПолучитьИндексПиктограммыФайла(Расширение); + ФайлВложение.Реквизит = Вложение.Реквизит; + ФайлВложение.Выбрано = 1; + Прервать; + КонецЕсли; + КонецЦикла; + Если ВнутренниеВложение Тогда + Продолжить; + КонецЕсли; + + Выбрано = 0; + Если ЗначениеЗаполнено(Вложение.Реквизит) Тогда + Выбрано = 2; + КонецЕсли; + Если ВыбранныеПечатныеФормыИВложения.Найти(Вложение.Идентификатор) <> Неопределено Тогда + Выбрано = 1; + КонецЕсли; + + НоваяСтрока = Вложения.Добавить(); + ЗаполнитьЗначенияСвойств(НоваяСтрока, Вложение); + Расширение = ?(ПустаяСтрока(Вложение.ТипФайла), "mxl", Вложение.ТипФайла); + НоваяСтрока.ИндексКартинки = ПолучитьИндексПиктограммыФайла(Расширение); + НоваяСтрока.Выбрано = Выбрано; + КонецЦикла; + + ЗаполнитьВложения(); + Для каждого НесохраненныеФайл Из НесохраненныеФайлы Цикл + НоваяСтрока = Вложения.Добавить(); + ЗаполнитьЗначенияСвойств(НоваяСтрока, НесохраненныеФайл); + КонецЦикла; + +КонецПроцедуры + +&НаСервере +Функция ПолучитьИндексПиктограммыФайла(Расширение) + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ФайловыеФункции") Тогда + МодульФайловыеФункцииСлужебныйКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ФайловыеФункцииСлужебныйКлиентСервер"); + Возврат МодульФайловыеФункцииСлужебныйКлиентСервер.ПолучитьИндексПиктограммыФайла(Расширение); + КонецЕсли; + + Возврат 0; + +КонецФункции + +&НаКлиенте +Функция ПолучитьИндексПиктограммыФайлаКлиент(Расширение) + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ФайловыеФункции") Тогда + МодульФайловыеФункцииСлужебныйКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ФайловыеФункцииСлужебныйКлиентСервер"); + Возврат МодульФайловыеФункцииСлужебныйКлиентСервер.ПолучитьИндексПиктограммыФайла(Расширение); + КонецЕсли; + + Возврат 0; + +КонецФункции + +&НаСервере +Процедура ЗаполнитьДеревоРеквизитов(Приемник, Источник, ЭтоОбщиеИлиПроизвольныеРеквизиты = Неопределено) + + Для Каждого СтрокаДерева Из Источник.Строки Цикл + + Если ЭтоОбщиеИлиПроизвольныеРеквизиты = Неопределено Тогда + Если СтрокаДерева.Имя = ШаблоныСообщенийКлиентСервер.ЗаголовокПроизвольныхПараметров() + ИЛИ СтрокаДерева.Имя = ШаблоныСообщенийСлужебный.ЗаголовокОбщиеРеквизиты() Тогда + ОбщиеИлиПроизвольныеРеквизиты = Истина; + Иначе + + ОбщиеИлиПроизвольныеРеквизиты = Ложь; + КонецЕсли; + Иначе + ОбщиеИлиПроизвольныеРеквизиты = ЭтоОбщиеИлиПроизвольныеРеквизиты; + КонецЕсли; + + ИндексКартинкиЭлемент = ?(ОбщиеИлиПроизвольныеРеквизиты, 1, 3); + ИндексКартинкиУзел = ?(ОбщиеИлиПроизвольныеРеквизиты, 0, 2); + + НоваяСтрока = Приемник.Строки.Добавить(); + ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаДерева); + + Если СтрокаДерева.Строки.Количество() > 0 Тогда + НоваяСтрока.ИндексКартинки = ИндексКартинкиУзел; + ЗаполнитьДеревоРеквизитов(НоваяСтрока, СтрокаДерева, ОбщиеИлиПроизвольныеРеквизиты); + Иначе + НоваяСтрока.ИндексКартинки = ИндексКартинкиЭлемент; + КонецЕсли; + КонецЦикла; + Приемник.Строки.Сортировать("Представление", Истина); + +КонецПроцедуры + +&НаСервере +Функция РезультатПроверкиШаблоны() + + ПараметрыШаблона = ШаблоныСообщенийСлужебный.ПараметрыШаблона(Объект); + СведенияОШаблоне = ШаблоныСообщенийСлужебный.СведенияОШаблоне(ПараметрыШаблона); + + ОшибочныеРеквизиты = Новый Массив; + ПараметрыТекстаСообщения = ШаблоныСообщенийСлужебный.ПараметрыИзТекстаСообщения(ПараметрыШаблона); + ШаблоныСообщенийСлужебный.ОпределитьОшибочныеРеквизиты(ПараметрыТекстаСообщения, ОшибочныеРеквизиты, СведенияОШаблоне); + + ТекстОшибки = ""; + Если ОшибочныеРеквизиты.Количество() > 0 Тогда + ТекстОшибки = ?(ОшибочныеРеквизиты.Количество() = 1, + НСтр("ru = 'Некорректный реквизит в шаблоне сообщения:'"), + НСтр("ru = 'Некорректные реквизиты в шаблоне сообщения:'")) + " "; + Разделитель = ""; + Для каждого ОшибочныйРеквизит Из ОшибочныеРеквизиты Цикл + ТекстОшибки = ТекстОшибки + Разделитель + СокрЛП(ОшибочныйРеквизит); + Разделитель = ", "; + КонецЦикла; + КонецЕсли; + + Возврат ТекстОшибки; + +КонецФункции + +// Вынужденная установка свойств на сервере + +&НаСервере +Процедура УстановитьЭлектронноеПисьмоHTML(ТребуетсяПереносТекста = Ложь) + + Элементы.ФормаВидТекстаЭлектронногоПисьма.Заголовок = "HTML"; + Элементы.СообщениеЭлектронноеПисьмо.Видимость = Ложь; + Элементы.СообщениеЭлектронноеПисьмоHTML.Видимость = Истина; + Элементы.Страницы.ТекущаяСтраница = Элементы.СообщениеЭлектронноеПисьмоHTML; + Элементы.ФормаЭлектронноеПисьмоОбычныйТекст.Пометка = Ложь; + Элементы.ФормаЭлектронноеПисьмоHTML.Пометка = Истина; + Объект.ТипТекстаПисьма = ПредопределенноеЗначение("Перечисление.СпособыРедактированияЭлектронныхПисем.HTML"); + Если ТребуетсяПереносТекста Тогда + ВложенияФорматированныйДокумент = Новый Структура; + ТелоСообщенияОбычныйТекстВHTML = СтрЗаменить(ТелоСообщенияОбычныйТекст.ПолучитьТекст(), Символы.ПС, "
        "); + ТелоПисьмаВHTML.УстановитьHTML(ТелоСообщенияОбычныйТекстВHTML, ВложенияФорматированныйДокумент); + КонецЕсли; + + Элементы.СкрытыйЗаголовокПараметры.Видимость = Истина; + Элементы.СтраницыЗаголовокПараметры.ТекущаяСтраница = Элементы.СтраницаЗаголовокПараметры; + +КонецПроцедуры + +&НаСервере +Процедура УстановитьЭлектронноеПисьмоОбычныйТекст(ТребуетсяПереносТекста = Ложь) + Элементы.ФормаВидТекстаЭлектронногоПисьма.Заголовок = НСтр("ru = 'Обычный текст'"); + Элементы.СообщениеЭлектронноеПисьмоHTML.Видимость = Ложь; + Элементы.СообщениеЭлектронноеПисьмо.Видимость = Истина; + Элементы.Страницы.ТекущаяСтраница = Элементы.СообщениеЭлектронноеПисьмо; + Элементы.ФормаЭлектронноеПисьмоОбычныйТекст.Пометка = Истина; + Элементы.ФормаЭлектронноеПисьмоHTML.Пометка = Ложь; + Объект.ТипТекстаПисьма = ПредопределенноеЗначение("Перечисление.СпособыРедактированияЭлектронныхПисем.ОбычныйТекст"); + Если ТребуетсяПереносТекста Тогда + ТелоСообщенияОбычныйТекст.УстановитьТекст(ТелоПисьмаВHTML.ПолучитьТекст()); + КонецЕсли; + + Элементы.СкрытыйЗаголовокПараметры.Видимость = Ложь; + Элементы.СкрытыйЗаголовокСообщениеSMS.Видимость = Ложь; + Элементы.СтраницыЗаголовокПараметры.ТекущаяСтраница = Элементы.СтраницаЗаголовокПараметры; +КонецПроцедуры + +// Вложения + +&НаКлиенте +Процедура ДобавитьВложениеВыполнить(Идентификатор = Неопределено) + + #Если Не ВебКлиент Тогда + + Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие); + Диалог.МножественныйВыбор = Истина; + ДополнительныеПараметры = Новый Структура("Идентификатор", Идентификатор); + ОписаниеОповещение = Новый ОписаниеОповещения("ДиалогВыбораФайловПослеВыбора", ЭтотОбъект, ДополнительныеПараметры); + Диалог.Показать(ОписаниеОповещение); + + #Иначе + + Адрес = ""; + ВыбранныйФайл = ""; + ДополнительныеПараметры = Новый Структура("Идентификатор", Идентификатор); + ОбработчикОповещенияОЗакрытии = Новый ОписаниеОповещения("ПомещениеФайлаПриОкончании", ЭтотОбъект, ДополнительныеПараметры); + НачатьПомещениеФайла(ОбработчикОповещенияОЗакрытии, Адрес, ВыбранныйФайл, Истина, УникальныйИдентификатор); + + #КонецЕсли + +КонецПроцедуры + +&НаКлиенте +Процедура ДиалогВыбораФайловПослеВыбора(ВыбранныеФайлы, ДополнительныеПараметры) Экспорт + + Если ВыбранныеФайлы = Неопределено Тогда + Возврат; + КонецЕсли; + + Если ДополнительныеПараметры.Идентификатор = Неопределено Тогда + Для Каждого ВыбранныйФайл Из ВыбранныеФайлы Цикл + НоваяСтрока = Вложения.Добавить(); + НоваяСтрока.Имя = ВыбранныйФайл; + + ИмяФайла = ""; + ПолучитьКаталогИИмяФайла(ВыбранныйФайл, "", ИмяФайла); + НоваяСтрока.Представление = ИмяФайла; + НоваяСтрока.Идентификатор = ИмяФайла; + + Расширение = ПолучитьРасширениеФайла(ИмяФайла); + НоваяСтрока.ИндексКартинки = ПолучитьИндексПиктограммыФайлаКлиент(Расширение); + НоваяСтрока.Статус = "ВнешнийНовый"; + НоваяСтрока.Выбрано = 1; + КонецЦикла; + + Если ВыбранныеФайлы.Количество() > 0 Тогда + Элементы.Вложения.ТекущаяСтрока = НоваяСтрока.ПолучитьИдентификатор(); + Модифицированность = Истина; + КонецЕсли; + Иначе + Отбор = Новый Структура("Идентификатор", ДополнительныеПараметры.Идентификатор); + НайденныеСтроки = Вложения.НайтиСтроки(Отбор); + Если НайденныеСтроки.Количество() > 0 Тогда + НайденныеСтроки[0].Имя = ВыбранныеФайлы[0]; + НайденныеСтроки[0].Выбрано = 1; + НайденныеСтроки[0].Статус = "ВнешнийНовый"; + Модифицированность = Истина; + КонецЕсли; + + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ПомещениеФайлаПриОкончании(РезультатПомещения, Адрес, ВыбранноеИмяФайла, ДополнительныеПараметры) Экспорт + + Если РезультатПомещения = Ложь Тогда + Возврат; + КонецЕсли; + + НоваяСтрока = Вложения.Добавить(); + НоваяСтрока.Имя = Адрес; + НоваяСтрока.Представление = ВыбранноеИмяФайла; + + Расширение = ПолучитьРасширениеФайла(ВыбранноеИмяФайла); + НоваяСтрока.ИндексКартинки = ПолучитьИндексПиктограммыФайлаКлиент(Расширение); + НоваяСтрока.Статус = "ВнешнийНовый"; + + Элементы.Вложения.ТекущаяСтрока = НоваяСтрока.ПолучитьИдентификатор(); + + ОбновитьОтображениеДанных(); + +КонецПроцедуры + +// Получает каталог и имя файла для переданного полного имени файла. +// +// Параметры: +// ПолноеИмяФайла - Строка - полное имя файла, из которого будут получены имя каталога и имя файла. +// ИмяКаталога - Строка - в данную переменную будет помещено полученное имя каталога. +// ИмяФайла - Строка - в данную переменную будет помещено полученное имя файла. +// +&НаКлиентеНаСервереБезКонтекста +Процедура ПолучитьКаталогИИмяФайла(Знач ПолноеИмяФайла, ИмяКаталога, ИмяФайла) + + ИмяФайла = ПолноеИмяФайла; + ИмяКаталога = ""; + + Пока Истина Цикл + + Позиция = Макс(СтрНайти(ИмяФайла, "\"), СтрНайти(ИмяФайла, "/")); + Если Позиция = 0 Тогда + Возврат; + КонецЕсли; + + ИмяКаталога = ИмяКаталога + Лев(ИмяФайла, Позиция); + ИмяФайла = Сред(ИмяФайла, Позиция+1); + + КонецЦикла; + +КонецПроцедуры + +// Получает расширение для переданного имени файла. +// +// Параметры: +// ИмяФайла - Строка - имя файла, для которого необходимо получить расширение. +// +// Возвращаемое значение: +// Строка - расширение, полученное из переданного имени файла. +// +&НаКлиентеНаСервереБезКонтекста +Функция ПолучитьРасширениеФайла(Знач ИмяФайла) + + РасширениеФайла = ""; + МассивСтрок = СтрРазделить(ИмяФайла, ".", Ложь); + Если МассивСтрок.Количество() > 1 Тогда + РасширениеФайла = МассивСтрок[МассивСтрок.Количество() - 1]; + КонецЕсли; + + Возврат РасширениеФайла; + +КонецФункции + +&НаКлиентеНаСервереБезКонтекста +Процедура ПоместитьНовыеФайлыВоВременноеХранилище(Вложения, УникальныйИдентификатор, Отказ) + + Перем Данные, ЗагружаемыйФайл, СтрокаТаблицыВложений; + + Для Каждого СтрокаТаблицыВложений Из Вложения Цикл + Если СтрокаТаблицыВложений.Статус = "ВнешнийНовый" Тогда + Попытка + ЗагружаемыйФайл = Новый Файл(СтрокаТаблицыВложений.Имя); + Если ЗагружаемыйФайл.Существует() Тогда + Данные = Новый ДвоичныеДанные(СтрокаТаблицыВложений.Имя); + СтрокаТаблицыВложений.Имя = ПоместитьВоВременноеХранилище(Данные, УникальныйИдентификатор); + КонецЕсли; + Исключение + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(КраткоеПредставлениеОшибки(ИнформацияОбОшибке()),,"Вложения",, Отказ); + КонецПопытки; + КонецЕсли; + КонецЦикла; + +КонецПроцедуры + +&НаКлиенте +Процедура ОткрытьСвойстваВложения(ТекущийИндексВКоллекции) + + ТекущиеДанные = Вложения.Получить(ТекущийИндексВКоллекции); + Если ТекущиеДанные = Неопределено Тогда + Возврат; + КонецЕсли; + + Элементы.Вложения.ТекущаяСтрока = ТекущиеДанные.ПолучитьИдентификатор(); + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ПрисоединенныеФайлы") Тогда + МодульПрисоединенныеФайлыКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ПрисоединенныеФайлыКлиент"); + МодульПрисоединенныеФайлыКлиент.ОткрытьФормуПрисоединенногоФайла(ТекущиеДанные.Ссылка); + КонецЕсли + +КонецПроцедуры + +&НаКлиенте +Процедура ВопросОЗаписиФайлаПослеЗакрытия(РезультатВопроса, ДополнительныеПараметры) Экспорт + + Если РезультатВопроса = КодВозвратаДиалога.Да Тогда + Записать(); + ОткрытьСвойстваВложения(ДополнительныеПараметры.ТекущийИндексВКоллекции); + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура ЗаполнитьВложения(ПереданныеПараметры = Неопределено) + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПрисоединенныеФайлы") Тогда + МодульПрисоединенныеФайлы = ОбщегоНазначения.ОбщийМодуль("ПрисоединенныеФайлы"); + + СписокФайлов = Новый Массив; + МодульПрисоединенныеФайлы.ПолучитьПрикрепленныеФайлыКОбъекту(Объект.Ссылка, СписокФайлов); + Для Каждого СсылкаНаФайл Из СписокФайлов Цикл + СведенияОФайле = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(СсылкаНаФайл, "ИДФайлаЭлектронногоПисьма, ИндексКартинки, Наименование, Расширение"); + Если ПустаяСтрока(СведенияОФайле.ИДФайлаЭлектронногоПисьма) Тогда + Отбор = Новый Структура("Реквизит", СведенияОФайле.Наименование); + НайденныеСтроки = Вложения.НайтиСтроки(Отбор); + Если НайденныеСтроки.Количество() = 0 Тогда + НоваяСтрока = Вложения.Добавить(); + НоваяСтрока.Представление = СведенияОФайле.Наименование + "." + СведенияОФайле.Расширение; + НоваяСтрока.ИндексКартинки = СведенияОФайле.ИндексКартинки; + НоваяСтрока.Ссылка = СсылкаНаФайл; + НоваяСтрока.Статус = "ВнешнийПрисоединенный"; + Иначе + НайденныеСтроки[0].Ссылка = СсылкаНаФайл; + КонецЕсли; + КонецЕсли; + КонецЦикла; + + КонецЕсли +КонецПроцедуры + +&НаКлиенте +Процедура УдалитьВложениеВыполнить() + + Вложение = Элементы.Вложения.ТекущиеДанные; + Если Вложение <> Неопределено Тогда + Если Вложение.Статус = "ВнешнийПрисоединенный" ИЛИ Вложение.Статус = "ВнешнийНовый" Тогда + Вложение.Статус = "ВнешнийУдаляемый"; + Вложение.ИндексКартинки = Вложение.ИндексКартинки + 1; + Модифицированность = Истина; + ИначеЕсли Вложение.Статус = "ВнешнийУдаляемый" Тогда + Вложение.ИндексКартинки = Вложение.ИндексКартинки - 1; + Вложение.Статус = ?(ЗначениеЗаполнено(Вложение.Ссылка), "ВнешнийПрисоединенный", "ВнешнийНовый"); + КонецЕсли; + Модифицированность = Истина; + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура УдалитьПрисоединенныйФайл(ПрисоединенныйФайл) + ОбъектВложение = ПрисоединенныйФайл.ПолучитьОбъект(); + УстановитьПривилегированныйРежим(Истина); + ОбъектВложение.Удалить(); +КонецПроцедуры + +&НаСервере +Процедура ЗаменитьИменаКартинокНаИдентификаторыПочтовыхВложенийВHTML(ДокументHTML, ТаблицаСоответствий) + + Для каждого Картинка Из ДокументHTML.Картинки Цикл + + АтрибутИсточникКартинки = Картинка.Атрибуты.ПолучитьИменованныйЭлемент("src"); + НайденнаяСтрока = ТаблицаСоответствий.НайтиПоЗначению(АтрибутИсточникКартинки.ТекстовоеСодержимое); + Если НайденнаяСтрока <> Неопределено Тогда + + НовыйАтрибутКартинки = АтрибутИсточникКартинки.КлонироватьУзел(Ложь); + НовыйАтрибутКартинки.ТекстовоеСодержимое = Строка("cid:" + НайденнаяСтрока.Представление); + Картинка.Атрибуты.УстановитьИменованныйЭлемент(НовыйАтрибутКартинки); + + КонецЕсли; + КонецЦикла; + +КонецПроцедуры + +// Сохраняет картинки форматированного документа как присоединенные файлы объекта. +// +// Параметры: +// Ссылка - ДокументСсылка - ссылка на владельца присоединенных файлов. +// ТипТекстаПисьма - Перечисление.СпособыРедактированияЭлектронныхПисем - для определения необходимости выполнения преобразований. +// ТаблицаСоответствийИменВложенийИдентификаторам - ТаблицаЗначений - позволяет определить какому вложению соответствует какая картинка. +// УникальныйИдентификатор - УникальныйИдентификатор - уникальный идентификатор формы из которого выполняется сохранение. +// +&НаСервере +Процедура СохранитьКартинкиФорматированногоДокументаКакПрисоединенныеФайлы(Ссылка, ТипТекстаПисьма, + ТаблицаСоответствийИменВложенийИдентификаторам, + УникальныйИдентификатор) + + Если ТипТекстаПисьма = Перечисления.СпособыРедактированияЭлектронныхПисем.HTML Тогда + + Для каждого Вложение Из ТаблицаСоответствийИменВложенийИдентификаторам Цикл + + ДвоичныеДанныеКартинки = Вложение.Картинка.ПолучитьДвоичныеДанные(); + АдресКартинкиВоВременномХранилище = ПоместитьВоВременноеХранилище(ДвоичныеДанныеКартинки, УникальныйИдентификатор); + ПрисоединенныйФайл = ЗаписатьВложениеЭлектронногоПисьмаИзВременногоХранилища(Ссылка, АдресКартинкиВоВременномХранилище, + "_" + СтрЗаменить(Вложение.Представление, "-", "_"), ДвоичныеДанныеКартинки.Размер()); + + Если ПрисоединенныйФайл <> Неопределено Тогда + ПрисоединенныйФайлОбъект = ПрисоединенныйФайл.ПолучитьОбъект(); + ПрисоединенныйФайлОбъект.ИДФайлаЭлектронногоПисьма = Вложение.Представление; + ПрисоединенныйФайлОбъект.Записать(); + КонецЕсли; + КонецЦикла; + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Функция ЗаписатьВложениеЭлектронногоПисьмаИзВременногоХранилища(Письмо, АдресВоВременномХранилище, ИмяФайла, + Размер, КоличествоПустыхИменВоВложениях = 0) + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПрисоединенныеФайлы") Тогда + МодульПрисоединенныеФайлы = ОбщегоНазначения.ОбщийМодуль("ПрисоединенныеФайлы"); + + ИмяФайлаДляРазбора = ИмяФайла; + РасширениеБезТочки = ПолучитьРасширениеФайла(ИмяФайлаДляРазбора); + ИмяБезРасширения = ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыВИмениФайла(ИмяФайлаДляРазбора); + Если ПустаяСтрока(ИмяБезРасширения) Тогда + + ИмяФайлаБезРасширения = НСтр("ru = 'Вложение без имени'") + + ?(КоличествоПустыхИменВоВложениях = 0, ""," " + Строка(КоличествоПустыхИменВоВложениях + 1)); + КоличествоПустыхИменВоВложениях = КоличествоПустыхИменВоВложениях + 1; + + Иначе + ИмяБезРасширения = ?(РасширениеБезТочки = "", ИмяБезРасширения, + Лев(ИмяБезРасширения, СтрДлина(ИмяБезРасширения) - СтрДлина(РасширениеБезТочки) - 1)); + КонецЕсли; + + ПараметрыФайла = Новый Структура; + ПараметрыФайла.Вставить("ВладелецФайлов", Письмо); + ПараметрыФайла.Вставить("Автор", Неопределено); + ПараметрыФайла.Вставить("ИмяБезРасширения", ИмяБезРасширения); + ПараметрыФайла.Вставить("РасширениеБезТочки", РасширениеБезТочки); + ПараметрыФайла.Вставить("ВремяИзменения", Неопределено); + ПараметрыФайла.Вставить("ВремяИзмененияУниверсальное", Неопределено); + Возврат МодульПрисоединенныеФайлы .ДобавитьПрисоединенныйФайл(ПараметрыФайла, АдресВоВременномХранилище, ""); + КонецЕсли; + + Возврат Неопределено; + +КонецФункции + +&НаСервере +Процедура УстановитьУсловноеОформление() + + УсловноеОформление.Элементы.Очистить(); + + // + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ВложенияВыбран.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Вложения.Статус"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Содержит; + ОтборЭлемента.ПравоеЗначение = "Внешний"; + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Вложения.Реквизит"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено; + + Элемент.Оформление.УстановитьЗначениеПараметра("Доступность", Ложь); + Элемент.Оформление.УстановитьЗначениеПараметра("Отображать", Ложь); + + // + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ВложенияПредставление.Имя); + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ВложенияВыбран.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Вложения.Статус"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Содержит; + ОтборЭлемента.ПравоеЗначение = "ВнешнийУдаляемый"; + + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + +КонецПроцедуры + +&НаКлиенте +Процедура ПослеВыбораДополнительныеОтчетыИОбработки(Результат, ДопПараметры) Экспорт + Если Результат <> Неопределено Тогда + Элементы.ГруппаВнешняяОбработка.Видимость = Истина; + Элементы.Страницы.ТекущаяСтраница = Элементы.СообщениеВнешняяОбработка; + Элементы.ГруппаПараметры.Видимость = Ложь; + Элементы.ФормаПоШаблону.Пометка = Ложь; + Элементы.ФормаВнешнейОбработкой.Пометка = Истина; + Объект.ШаблонПоВнешнейОбработке = Истина; + Объект.ВнешняяОбработка = Результат; + ОтображениеЭлементовФормы(); + КонецЕсли; +КонецПроцедуры + +// Внешняя обработка + +&НаСервере +Процедура ЗаполнитьШаблонПоВнешнейОбработке() + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда + МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки"); + + ОчиститьШаблон(ЭтотОбъект); + ВнешнийОбъект = МодульДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(Объект.ВнешняяОбработка); + Если Объект.ВнешняяОбработка.Вид <> Перечисления["ВидыДополнительныхОтчетовИОбработок"].ШаблонСообщения Тогда + Возврат; + КонецЕсли; + + СтруктураДанныхВнешнейОбработки = ВнешнийОбъект.СтруктураДанныхДляОтображенияВШаблоне(); + МетаданныеОбъекта = Метаданные.НайтиПоПолномуИмени(СтруктураДанныхВнешнейОбработки.ПолноеИмяТипаПараметраВводаНаОсновании); + Если МетаданныеОбъекта = Неопределено Тогда + ВариантыНазначения = 0; + Иначе + ЭлементНазначения = Элементы.ПолноеИмяТипаПараметраВводаНаОсновании.СписокВыбора.НайтиПоЗначению(СтруктураДанныхВнешнейОбработки.ПолноеИмяТипаПараметраВводаНаОсновании); + Если ЭлементНазначения = Неопределено Тогда + ВариантыНазначения = 0; + ВнешняяОбработка = Неопределено; + ОписаниеОшибки = НСтр("ru = 'Предмет %1 определенный в внешней обработке не найдено. Внешняя обработка не может быть подключена.'"); + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ОписаниеОшибки, СтруктураДанныхВнешнейОбработки.ПолноеИмяТипаПараметраВводаНаОсновании); + Возврат + КонецЕсли; + ВариантыНазначения = 1; + Объект.ШаблонПоВнешнейОбработке = Истина; + Объект.ПолноеИмяТипаПараметраВводаНаОсновании = ЭлементНазначения.Значение; + Объект.Назначение = ЭлементНазначения.Представление; + Объект.ПредназначенДляВводаНаОсновании = Истина; + КонецЕсли; + + // Определить тип html + Объект.ТемаПисьма = СтруктураДанныхВнешнейОбработки.ТемаПисьма; + Если СтруктураДанныхВнешнейОбработки.ТипТекстаПисьма = Перечисления.СпособыРедактированияЭлектронныхПисем.HTML Тогда + УстановитьЭлектронноеПисьмоHTML(Истина); + СтруктураВложения = Новый Структура; + ТелоПисьмаВHTML.УстановитьHTML(СтруктураДанныхВнешнейОбработки.ТекстШаблонаПисьмаHTML, СтруктураВложения); + Иначе + УстановитьЭлектронноеПисьмоОбычныйТекст(Истина); + ТелоСообщенияОбычныйТекст.УстановитьТекст(СтруктураДанныхВнешнейОбработки.ТекстШаблонаПисьмаHTML); + КонецЕсли; + КонецЕсли + +КонецПроцедуры + +&НаКлиентеНаСервереБезКонтекста +Процедура ОчиститьШаблон(Форма) + + Форма.Объект.Параметры.Очистить(); + Форма.Объект.ПредназначенДляЭлектронныхПисем = Истина; + Форма.Объект.ПредназначенДляSMS = Ложь; + Форма.Объект.ПредназначенДляВводаНаОсновании = Ложь; + Форма.Объект.ПолноеИмяТипаПараметраВводаНаОсновании = ""; + Форма.Объект.ТемаПисьма = ""; + Форма.Объект.ТекстШаблонаSMS = ""; + Форма.Объект.ТекстШаблонаПисьма = ""; + Форма.Объект.ТекстШаблонаПисьмаHTML = ""; + Форма.Объект.ТипТекстаПисьма = ПредопределенноеЗначение("Перечисление.СпособыРедактированияЭлектронныхПисем.ОбычныйТекст"); + +КонецПроцедуры + +#КонецОбласти + diff --git a/SSL/src/Catalogs/ШаблоныСообщений/Help/ru.html b/SSL/src/Catalogs/ШаблоныСообщений/Help/ru.html new file mode 100644 index 000000000..88068f5c7 --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщений/Help/ru.html @@ -0,0 +1,16 @@ + +

        Предназначен для управления шаблонами сообщений. С помощью шаблонов можно создать "заготовки" на все случаи жизни. Большинство информационных писем и SMS сообщений являются одинаковыми для всех клиентов, а отличаются именно названиями клиентов.  Поэтому использование шаблонов сообщений существенно облегчает работу с перепиской.

        +

        Открывается по ссылке Шаблоны сообщений в разделе Администрирование - Органайзер - Заметки, напоминания, анкетирование, шаблоны сообщений.

        +

        Отборы списка

        +
        • Для удобства поиска шаблонов в списке предусмотрены отборы. +
        • Можно отобрать с помощью поля Шаблон для: +
          • Электронных писем и SMS; +
          • Электронного письма; +
          • Сообщения SMS.
        • В поле Назначение можно отобрать шаблоны: +
          • Все; +
          • Общий - в программе имеется возможность сделать шаблон для любого сообщения; +
          • Можно выбрать конкретный вид шаблона, предназначенный для соответствующего вида документов.

        Ввод нового шаблона

        +
        • Нажмите кнопку Создать шаблон, выберите вид шаблона из выпадающего списка: +
          • Электронного письма; +
          • Сообщения SMS.

        См. также:

        + \ No newline at end of file diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/ManagerModule.bsl b/SSL/src/Catalogs/ШаблоныСообщений/ManagerModule.bsl similarity index 100% rename from SSL/src/DataProcessors/ПоискИУстановкаОбновлений/ManagerModule.bsl rename to SSL/src/Catalogs/ШаблоныСообщений/ManagerModule.bsl diff --git a/SSL/src/Catalogs/ШаблоныСообщений/ObjectModule.bsl b/SSL/src/Catalogs/ШаблоныСообщений/ObjectModule.bsl new file mode 100644 index 000000000..79a0c9dbe --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщений/ObjectModule.bsl @@ -0,0 +1,117 @@ +#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда + +#Область ОбработчикиСобытий + +Процедура ОбработкаЗаполнения(ДанныеЗаполнения, ТекстЗаполнения, СтандартнаяОбработка) + Если ДанныеЗаполнения <> Неопределено Тогда + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Взаимодействия") + И ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ЭлектронноеПисьмоИсходящее") Тогда + ЗаполнитьНаОснованииЭлектронноеПисьмоИсходящее(ДанныеЗаполнения, ТекстЗаполнения, СтандартнаяОбработка); + ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("Структура") Тогда + ЗаполнитьНаОснованииСтруктуры(ДанныеЗаполнения, ТекстЗаполнения, СтандартнаяОбработка); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +Процедура ЗаполнитьНаОснованииЭлектронноеПисьмоИсходящее(ДанныеЗаполнения, ТекстЗаполнения, СтандартнаяОбработка) + + ЭтотОбъект.ТемаПисьма = ДанныеЗаполнения.Тема; + ЭтотОбъект.ТекстШаблонаПисьмаHTML = ДанныеЗаполнения.ТекстHTML; + ЭтотОбъект.ТекстШаблонаПисьма = ДанныеЗаполнения.Текст; + ЭтотОбъект.ТемаПисьма = ДанныеЗаполнения.Тема; + ЭтотОбъект.Наименование = ДанныеЗаполнения.Тема; + ЭтотОбъект.ПредназначенДляЭлектронныхПисем = Истина; + ЭтотОбъект.ПредназначенДляSMS = Ложь; + Если ДанныеЗаполнения.ТипТекста = Перечисления.ТипыТекстовЭлектронныхПисем.HTML + ИЛИ ДанныеЗаполнения.ТипТекста = Перечисления.ТипыТекстовЭлектронныхПисем.HTMLСКартинками Тогда + ЭтотОбъект.ТипТекстаПисьма = Перечисления.СпособыРедактированияЭлектронныхПисем.HTML; + Иначе + ЭтотОбъект.ТипТекстаПисьма = Перечисления.СпособыРедактированияЭлектронныхПисем.ОбычныйТекст; + КонецЕсли; + +КонецПроцедуры + +Процедура ЗаполнитьНаОснованииСтруктуры(ДанныеЗаполнения, ТекстЗаполнения, СтандартнаяОбработка) + + ПараметрыШаблона = ШаблоныСообщений.ОписаниеПараметровШаблона(); + ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(ПараметрыШаблона, ДанныеЗаполнения, Истина); + + ЗаполнитьЗначенияСвойств(ЭтотОбъект, ПараметрыШаблона); + + Если ТипЗнч(ДанныеЗаполнения) = Тип("Структура") + И ДанныеЗаполнения.Свойство("ПредназначенДляSMS") + И ДанныеЗаполнения.ПредназначенДляSMS Тогда + ПараметрыШаблона.ТипШаблона = "SMS"; + КонецЕсли; + + Если ЗначениеЗаполнено(ПараметрыШаблона.ВнешняяОбработка) Тогда + ЭтотОбъект.ШаблонПоВнешнейОбработке = Истина; + КонецЕсли; + + Если ЗначениеЗаполнено(ПараметрыШаблона.ПолноеИмяТипаНазначения) Тогда + + МетаданныеОбъекта = Метаданные.НайтиПоПолномуИмени(ПараметрыШаблона.ПолноеИмяТипаНазначения); + ЭтотОбъект.ПолноеИмяТипаПараметраВводаНаОсновании = ПараметрыШаблона.ПолноеИмяТипаНазначения; + ЭтотОбъект.Назначение = МетаданныеОбъекта.Представление(); + ЭтотОбъект.ПредназначенДляВводаНаОсновании = Истина; + + ИначеЕсли ЗначениеЗаполнено(ПараметрыШаблона.Назначение) Тогда + + НастройкиШаблона = ШаблоныСообщенийСлужебный.ПриОпределенииНастроек(); + + Для каждого ОписаниеШаблона Из НастройкиШаблона.ПредметыШаблонов Цикл + Если СтрСравнить(ПараметрыШаблона.Назначение, ОписаниеШаблона.Представление) = 0 + ИЛИ СтрСравнить(ПараметрыШаблона.Назначение, ОписаниеШаблона.Имя) = 0 Тогда + + МетаданныеОбъекта = Метаданные.НайтиПоПолномуИмени(ОписаниеШаблона.Имя); + ЭтотОбъект.ПолноеИмяТипаПараметраВводаНаОсновании = ОписаниеШаблона.Имя; + ЭтотОбъект.Назначение = ОписаниеШаблона.Представление; + ЭтотОбъект.ПредназначенДляВводаНаОсновании = Истина; + ПараметрыШаблона.ПолноеИмяТипаНазначения = ОписаниеШаблона.Имя; + Прервать; + + КонецЕсли; + КонецЦикла; + + КонецЕсли; + + Если ПараметрыШаблона.Служебный Тогда + ЭтотОбъект.Назначение = "Служебный"; + Если ДанныеЗаполнения.Свойство("КлючНазначенияИспользования") Тогда + ЭтотОбъект.Назначение = ЭтотОбъект.Назначение + ":" + ДанныеЗаполнения.КлючНазначенияИспользования; + КонецЕсли; + КонецЕсли; + + Если ПараметрыШаблона.ТипШаблона = "Письмо" Тогда + + ЭтотОбъект.ПредназначенДляSMS = Ложь; + ЭтотОбъект.ПредназначенДляЭлектронныхПисем = Истина; + ЭтотОбъект.ТемаПисьма = ПараметрыШаблона.Тема; + + Если ПараметрыШаблона.ФорматПисьма = Перечисления.СпособыРедактированияЭлектронныхПисем.HTML Тогда + ЭтотОбъект.ТекстШаблонаПисьмаHTML = ПараметрыШаблона.Текст; + ЭтотОбъект.ТипТекстаПисьма = Перечисления.СпособыРедактированияЭлектронныхПисем.HTML; + Иначе + ЭтотОбъект.ТекстШаблонаПисьма = ПараметрыШаблона.Текст; + ЭтотОбъект.ТипТекстаПисьма = Перечисления.СпособыРедактированияЭлектронныхПисем.ОбычныйТекст; + КонецЕсли; + + ИначеЕсли ПараметрыШаблона.ТипШаблона = "SMS" Тогда + + ЭтотОбъект.ПредназначенДляSMS = Истина; + ЭтотОбъект.ПредназначенДляЭлектронныхПисем = Ложь; + ЭтотОбъект.ТекстШаблонаSMS = ПараметрыШаблона.Текст; + ЭтотОбъект.ОтправлятьВТранслите = ПараметрыШаблона.ПеревестиВТранслит; + + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#КонецЕсли diff --git a/SSL/src/Catalogs/ШаблоныСообщений/ШаблоныСообщений.mdo b/SSL/src/Catalogs/ШаблоныСообщений/ШаблоныСообщений.mdo new file mode 100644 index 000000000..0824e6f01 --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщений/ШаблоныСообщений.mdo @@ -0,0 +1,690 @@ + + + + + + + + + + ШаблоныСообщений + + ru + Шаблоны сообщений + + true + Catalog.ШаблоныСообщений.StandardAttribute.Description + Catalog.ШаблоныСообщений.StandardAttribute.Code + DontUse + + Use + PredefinedDataName + + Use + + + + + Use + Predefined + + Use + + + + + Use + Ref + + Use + + + + + Use + DeletionMark + + Use + + + + + Use + IsFolder + + Use + + + + + Use + Owner + true + + ShowError + Use + + + + + Use + Parent + true + + Use + + + + + Use + Description + + ru + Имя шаблона сообщения + + + ShowError + Use + + + + + Use + Code + + ru + Код шаблона сообщения + + + Use + + + + Document.ЭлектронноеПисьмоИсходящее + Use + + + ru + + + Managed + Use + + ru + Шаблон сообщения + + 2 + true + 9 + 150 + String + Variable + true + true + AsDescription + InDialog + BothWays + Catalog.ШаблоныСообщений.Form.ФормаЭлемента + Catalog.ШаблоныСообщений.Form.ФормаСписка + + Автор + + ru + Автор + + + CatalogRef.Пользователи + + + ru + Автор или ответственный за шаблон сообщения + + + + + Use + Use + + + ВнешняяОбработка + + ru + Внешняя обработка + + + CatalogRef.ДополнительныеОтчетыИОбработки + + + ru + Внешняя обработка, в которой содержится шаблон. + + + + + Use + Use + + + Назначение + + ru + Назначение + + + String + + 300 + + + + ru + Назначение шаблона сообщений + + + + + Use + Use + + + Отправитель + + ru + Отправитель + + + String + + 100 + + + + ru + Отправитель сообщения + + + + + Use + Use + + + ОтправлятьВТранслите + + ru + Отправлять в транслите + + + Boolean + + + ru + Признак необходимости конвертирования текста SMS сообщения в латиницу + + + + + Use + Use + + + ПолноеИмяТипаПараметраВводаНаОсновании + + ru + Полное имя типа параметра ввода на основании + + + String + + 250 + + + + ru + Полное имя объекта метаданных, на основании которого по данному шаблону будут создаваться сообщения. + + + + + Use + Use + + + ПредназначенДляSMS + + ru + Предназначен для SMS + + + Boolean + + + ru + Признак того, что шаблон предназначен для создания сообщений SMS. + + + + + Use + Use + + + ПредназначенДляВводаНаОсновании + + ru + Предназначен для ввода на основании + + + Boolean + + + ru + Признак того, что шаблон предназначен для ввода на основании. + + + + + Use + Use + + + ПредназначенДляЭлектронныхПисем + + ru + Предназначен для электронных писем + + + Boolean + + + ru + Признак того, что шаблон предназначен для создания электронных писем + + + + + Use + Use + + + ТекстШаблонаSMS + + ru + Текст шаблона SMS + + + String + + 1024 + + + + ru + Текст, который будет использоваться в качестве шаблона сообщения SMS. + + true + + + + Use + Use + + + ТекстШаблонаПисьма + + ru + Текст шаблона письма + + + String + + + + ru + Текст, который будет использоваться в качестве шаблона письма. + + + + + Use + Use + + + ТекстШаблонаПисьмаHTML + + ru + Текст шаблона письма HTML + + + String + + + + ru + Текст, который будет использоваться в качестве шаблона письма в формате HTML. + + + + + Use + Use + + + ТемаПисьма + + ru + Тема + + + String + + 1024 + + + + ru + Текст, который будет использоваться в качестве шаблона темы письма. + + + + + Use + Use + + + ТипТекстаПисьма + + ru + Тип текста письма + + + EnumRef.СпособыРедактированияЭлектронныхПисем + + + ru + Тип текста письма, в котором будет подготовлено сообщение - "Простой" или "HTML" + + + + + Use + Use + + + ТолькоДляАвтора + + ru + Только для автора + + + Boolean + + + ru + Влияет на доступность варианта из панели отчетов: +Флажок снят - вариант доступен всем пользователям. +Флажок установлен - шаблон сообщения доступен только автору. + + + + + Use + Use + + + УпаковатьВАрхив + + ru + Упаковать в архив + + + Boolean + + + ru + Признак того, что вложения - печатные формы должны быть упакованы в архив при отправке. + + + + + Use + Use + + + ФорматВложений + + ru + Формат вложений + + + ValueStorage + + + ru + Формат, в котором должны сохраняться вложения - печатные формы. + + + + + Use + Use + + + ШаблонПоВнешнейОбработке + + ru + Шаблон по внешней обработке + + + Boolean + + + ru + Признак, что шаблон формируется внешней обработкой. + + + + + Use + Use + + + + + + + ПечатныеФормыИВложения + + ru + Печатные формы и вложения + + + Use + LineNumber + + Use + + + + + Идентификатор + + ru + Идентификатор + + + String + + 50 + + + + ru + Идентификатор печатной формы + + + + Use + Use + + + Имя + + ru + Имя + + + String + + 300 + + + + ru + Имя выбранной печатной формы + + + + Use + Use + + + + + + + + Параметры + + ru + Параметры + + + ru + Параметры шаблона. Их необходимо будет указать при создании сообщения. + + + Use + LineNumber + + Use + + + + + ИмяПараметра + + ru + Имя параметра + + + String + + 50 + + + + ru + Имя параметра шаблона. + + + + Use + Use + + + ТипПараметра + + ru + Тип параметра + + + ValueStorage + + + ru + Тип параметра шаблона. + + + + Use + Use + + + ПредставлениеПараметра + + ru + Представление параметра + + + String + + 150 + + + + ru + Представление параметра. Выступает в качестве заголовка элемента формы формы подготовки сообщения, в котором будет указываться параметр. + + + + Use + Use + + + + ФормаЭлемента + + ru + Форма элемента + + + + ru + + + PersonalComputer + MobileDevice + + + ФормаСписка + + ru + Форма списка + + PersonalComputer + MobileDevice + + + СформироватьСообщение + + ru + Сформировать сообщение + + + + ru + + + PersonalComputer + MobileDevice + + + ПроизвольныйПараметр + + ru + Произвольный параметр + + PersonalComputer + MobileDevice + + + ЗаполнитьПроизвольныеПараметры + + ru + Заполнить произвольные параметры + + PersonalComputer + MobileDevice + + diff --git a/SSL/src/Catalogs/ШаблоныСообщенийПрисоединенныеФайлы/ManagerModule.bsl b/SSL/src/Catalogs/ШаблоныСообщенийПрисоединенныеФайлы/ManagerModule.bsl new file mode 100644 index 000000000..c870ef204 --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщенийПрисоединенныеФайлы/ManagerModule.bsl @@ -0,0 +1,18 @@ +#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда + +#Область ПрограммныйИнтерфейс + +// Возвращает реквизиты объекта, которые разрешается редактировать +// с помощью обработки группового изменения реквизитов. +// +// Возвращаемое значение: +// Массив - список имен реквизитов объекта. +Функция РеквизитыРедактируемыеВГрупповойОбработке() Экспорт + + Возврат ПрисоединенныеФайлы.РеквизитыРедактируемыеВГрупповойОбработке(); + +КонецФункции + +#КонецОбласти + +#КонецЕсли diff --git a/SSL/src/Catalogs/ШаблоныСообщенийПрисоединенныеФайлы/ШаблоныСообщенийПрисоединенныеФайлы.mdo b/SSL/src/Catalogs/ШаблоныСообщенийПрисоединенныеФайлы/ШаблоныСообщенийПрисоединенныеФайлы.mdo new file mode 100644 index 000000000..990c87cb5 --- /dev/null +++ b/SSL/src/Catalogs/ШаблоныСообщенийПрисоединенныеФайлы/ШаблоныСообщенийПрисоединенныеФайлы.mdo @@ -0,0 +1,799 @@ + + + + + + + + + + ШаблоныСообщенийПрисоединенныеФайлы + + ru + Присоединенные файлы (Шаблоны сообщений) + + true + Catalog.ШаблоныСообщенийПрисоединенныеФайлы.StandardAttribute.Description + DontUse + + Use + PredefinedDataName + + Use + + + + + Use + Predefined + + Use + + + + + Use + Ref + + Use + + + + + Use + DeletionMark + + Use + + + + + Use + IsFolder + + Use + + + + + Use + Owner + true + + ShowError + Use + + + + + Use + Parent + true + + Use + + + + + Use + Description + + ru + Имя файла + + + ShowError + Use + + + + + Use + Code + + Use + + + + Use + Managed + Use + + ru + Присоединенный файл (Шаблоны сообщений) + + 2 + true + 150 + String + Variable + AsDescription + InDialog + BothWays + + Автор + + ru + Автор + + + CatalogRef.Пользователи + + + ru + Пользователь, который добавил файл в список + + + + ShowError + DontUse + Use + + Catalog.Пользователи.EmptyRef + + Index + Use + Use + + + ВладелецФайла + + ru + Владелец файла + + + CatalogRef.ШаблоныСообщений + + + ru + Место размещения файла (объект) + + + + + Index + Use + + + ДатаМодификацииУниверсальная + + ru + Дата модификации универсальная + + + Date + + + + ru + Дата изменения данных файла (универсальное время) + + + + + Use + Use + + + ДатаСоздания + + ru + Дата создания + + + Date + + + + ru + Дата добавления файла в список + + + + ShowError + + 0001-01-01T00:00:00 + + Use + Use + + + Зашифрован + + ru + Зашифрован + + + Boolean + + + ru + Признак того, что файл зашифрован + + + + + Index + Use + + + Изменил + + ru + Изменил + + + CatalogRef.Пользователи + + + ru + Последний пользователь, который отредактировал файл + + + + DontUse + Use + + Catalog.Пользователи.EmptyRef + + Use + Use + + + ИндексКартинки + + ru + Индекс картинки + + + Number + + 10 + + + + ru + Индекс значка файла (служебное поле) + + + + + 0 + + Use + + + Описание + + ru + Описание + + + String + + + + ru + Краткое описание файла + + true + + + + Use + Use + + + ПодписанЭП + + ru + Подписан ЭП + + + Boolean + + + ru + Признак того, что файл подписан электронно + + + + + Use + Use + + + ПутьКФайлу + + ru + Путь к файлу + + + String + + + + ru + Путь к файлу в томе (служебное поле) + + + + + Use + Use + + + Размер + + ru + Размер (байт) + + + Number + + 10 + + + + ru + Размер файла в байтах + + + + + 0 + + Index + Use + + + Расширение + + ru + Расширение + + + String + + 10 + + + + ru + Расширение файла + + + + + Use + + + Редактирует + + ru + Редактирует + + + CatalogRef.Пользователи + + + ru + Пользователь, который занял файл для редактирования + + + + DontUse + Use + + Catalog.Пользователи.EmptyRef + + Use + Use + + + СтатусИзвлеченияТекста + + ru + Статус извлечения текста + + + EnumRef.СтатусыИзвлеченияТекстаФайлов + + + ru + Статус извлечения текста из файла (служебное поле) + + + + + Enum.СтатусыИзвлеченияТекстаФайлов.EmptyRef + + Index + Use + Use + + + ТекстХранилище + + ru + Текст + + + ValueStorage + + + ru + Текст, извлеченный из файла (служебное поле) + + + + + Use + Use + + + ТипХраненияФайла + + ru + Тип хранения файла + + + EnumRef.ТипыХраненияФайлов + + + ru + Тип хранения файла (в томе или в информационной базе) + + + + + Index + Use + + + Том + + ru + Том + + + CatalogRef.ТомаХраненияФайлов + + + ru + Том хранения файлов (когда файл хранится в томе) + + + + + Index + Use + + + ФайлХранилище + + ru + Файл хранилище + + + ValueStorage + + + ru + Временное хранилище файла (служебное поле) + + + + + Use + + + ИДФайлаЭлектронногоПисьма + + ru + ИД Файла электронного письма + + + String + + 200 + + + + ru + Идентификатор файла электронного письма. Используются в случае когда тело письма в формате HTML, а картинки, предназначенные для отображения в теле письма хранятся в присоединенных файлах + + + + + Use + + + + + + + ЭлектронныеПодписи + + ru + электронные подписи + + + ru + Хранение электронных подписей файла + + + Use + LineNumber + + Use + + + + + ДатаПодписи + + ru + Дата подписи + + + Date + + + + ru + Дата установки подписи + + + + Use + + + ИмяФайлаПодписи + + ru + Имя файла подписи + + + String + + 260 + + + + ru + Имя файла подписи (служебное поле) + + + + Use + + + Комментарий + + ru + Комментарий + + + String + + + + ru + Комментарий к подписи + + + + Use + Use + + + КомуВыданСертификат + + ru + Кому выдан сертификат + + + String + + + + ru + Владелец сертификата (фамилия имя, организация, должность) + + + + Use + + + Отпечаток + + ru + Отпечаток + + + String + + 28 + + + + ru + Отпечаток сертификата (служебное поле) + + + + Use + + + Подпись + + ru + Подпись + + + ValueStorage + + + ru + Двоичные данные подписи (служебное поле) + + + + Use + + + УстановившийПодпись + + ru + Установивший подпись + + + CatalogRef.Пользователи + + + ru + Пользователь, установивший подпись + + + + Use + Index + + + Сертификат + + ru + Сертификат + + + ValueStorage + + + ru + Двоичные данные сертификата (служебное поле) + + + + Use + Use + + + ДатаПроверкиПодписи + + ru + Дата проверки подписи + + + Date + + + + ru + Дата последней проверки подписи. + + + + Use + Use + + + ПодписьВерна + + ru + Подпись верна + + + Boolean + + + ru + Результат последней проверки подписи. + + + + Use + Use + + + + + + + + СертификатыШифрования + + ru + Сертификаты шифрования + + + ru + Хранение сертификатов шифрования + + + Use + LineNumber + + Use + + + + + Отпечаток + + ru + Отпечаток + + + String + + 28 + + + + ru + Отпечаток сертификата (служебное поле) + + + + Use + + + Представление + + ru + Представление + + + String + + + + ru + Владелец сертификата (фамилия имя, организация, должность) + + + + Use + Use + + + Сертификат + + ru + Сертификат + + + ValueStorage + + + ru + Двоичные данные сертификата (служебное поле) + + + + Use + Use + + + diff --git a/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/Forms/ФормаЭлемента/Form.form b/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/Forms/ФормаЭлемента/Form.form index 843c98b9b..faaa631b1 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/Forms/ФормаЭлемента/Form.form @@ -40,7 +40,6 @@ true 44 - true true false true @@ -153,7 +152,7 @@ Left true - 43 + 44 true true false @@ -216,69 +215,230 @@ Normal
        - - ТипОтвета - 9 - true - true - - true - - - ТипОтвета - - - OnChange - ТипОтветаПриИзменении - - - ТипОтветаExtendedTooltip - 102 - Label - true - true - - Left - - - - ТипОтветаКонтекстноеМеню - 10 - true - - InputField - true - Auto - true - Left - true - - 43 - true - true - false - true - true - false - ShowInInputField - false - false - false - false - true - true - true - true - - Style.ФонУправляющегоПоля - - Normal - 43 - - - ТипЗаполнение - 19 + ГруппаТипОтвета + 144 + + ТипОтвета + 9 + true + true + + true + + + ТипОтвета + + + OnChange + ТипОтветаПриИзменении + + + ТипОтветаExtendedTooltip + 102 + Label + true + true + + Left + + + + ТипОтветаКонтекстноеМеню + 10 + true + + InputField + true + Auto + true + Left + true + + 43 + true + true + false + true + true + false + ShowInInputField + false + false + false + false + true + true + true + true + + Style.ФонУправляющегоПоля + + Normal + 43 + + + + ГруппаВидПереключателя + 146 + + ГруппаВидПереключателяНеОтображать + 150 + + Декорация1 + 152 + true + true + + true + + + Декорация1РасширеннаяПодсказка + 154 + Label + true + true + + Left + + + + Декорация1КонтекстноеМеню + 153 + true + + Label + true + true + + Left + + + true + true + + true + + + <key>ru</key> + <value>Группа вид переключателя не отображать</value> + + + ГруппаВидПереключателяНеОтображатьРасширеннаяПодсказка + 151 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + ГруппаВидПереключателяОтображать + 148 + + ВидПереключателя + 141 + + <key>ru</key> + <value>Вид</value> + + true + true + + true + + + Объект.ВидПереключателя + + + ВидПереключателяРасширеннаяПодсказка + 143 + Label + true + true + + Left + + + + ВидПереключателяКонтекстноеМеню + 142 + true + + InputField + Enter + true + Left + true + + 12 + true + true + false + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа вид переключателя отображать</value> + + + ГруппаВидПереключателяОтображатьРасширеннаяПодсказка + 149 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Группа вид переключателя</value> + + + ГруппаВидПереключателяРасширеннаяПодсказка + 147 + Label + true + true + + Left + + + Pages + + Auto + + true true @@ -286,17 +446,15 @@ <key>ru</key> - <value>Тип заполнение</value> + <value>Группа тип ответа</value> ru - Тип заполнение + Группа тип ответа - 72 - false - ТипЗаполнениеExtendedTooltip - 101 + ГруппаТипОтветаРасширеннаяПодсказка + 145 Label true true @@ -319,6 +477,10 @@ ТребуетсяКомментарий 11 + + <key>ru</key> + <value>Попросить респондента прокомментировать ответ, пояснив характер комментария:</value> + true true @@ -365,6 +527,7 @@ Объект.ПояснениеКомментария + None ПояснениеКомментарияExtendedTooltip 100 @@ -386,10 +549,8 @@ Left true - 40 - true + 54 true - false true true true @@ -402,12 +563,6 @@ true - - ru - Комментарий - - 72 - false КомментарийExtendedTooltip 98 @@ -420,6 +575,7 @@ UsualGroup + Vertical Auto true true @@ -850,7 +1006,6 @@ Варианты ответов информация true - false ВариантыОтветовИнформацияExtendedTooltip 117 @@ -1238,8 +1393,6 @@ true true - 72 - true true 8 true @@ -1331,8 +1484,6 @@ true Label - 77 - true true false @@ -1348,11 +1499,6 @@ ru Пустая - - ru - Пустая - - 72 ПустаяExtendedTooltip 127 @@ -1379,10 +1525,6 @@ ru Зависимые параметры - - ru - Зависимые параметры - 72 ЗависимыеПараметрыExtendedTooltip diff --git a/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/Forms/ФормаЭлемента/Help/ru.html b/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/Forms/ФормаЭлемента/Help/ru.html index ea4281438..39001ccf6 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/Forms/ФормаЭлемента/Help/ru.html +++ b/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/Forms/ФормаЭлемента/Help/ru.html @@ -4,7 +4,7 @@

        Данный вопрос называется элементарным, т.к. может использоваться в качестве элементов более сложных конструкций.

        Ввод вопроса

        • В поле Наименование введите краткое представление вопроса, которое выводится при подборе вопросов в шаблоны анкет. -
        • Для того чтобы поместить вопрос в одну из групп, в поле Родитель выберите группу из списка. +
        • Для того чтобы поместить вопрос в одну из групп, в поле Группа вопросов выберите группу из списка.
        • В поле Формулировка можно ввести развернутый текст вопроса, который будет затем выведен в соответствующее поле шаблона анкеты. По умолчанию, текст автоматически подставляется из поля Наименование.
        • Содержание и формы ответов респондента зависят от значения поля Тип ответа, которое может быть одним из следующих:
          • Строка - в этом случае от респондента требуется ввести ответ в виде текстовой строки, @@ -17,8 +17,8 @@
          • Булево - респонденту доступен выбор одного из двух значений: Да или Нет.
          • Выбор одного варианта ответа из предложенных - с помощью этого типа ответа можно предложить респонденту выбрать один из вариантов ответа с помощью переключателей. Возможные варианты ответов составитель может задать в списке.
          • Выбор нескольких вариантов ответа из предложенных - респондент может отметить произвольное количество вариантов ответа с помощью флажков. Возможные варианты ответов составитель может задать в списке. -
            • Если в списке у варианта ответа установить флажок Требует открытого ответа, то респонденту будет предложено дать развернутый ответ в текстовом поле рядом с вариантом ответа, прокомментировав таким образом свой выбор.
          • Помимо перечисленных типов ответов, также имеется возможность выбрать в качестве типа ответа один из некоторых списков программы. В этом случае респондент будет выбирать в качестве ответа на вопрос элемент списка программы.
        • Установка флажка Требуется комментарий на этапе подготовки вопроса позволит респонденту при заполнении анкеты в текстовом поле рядом с ответом разъяснить свой ответ. -
          • В случае установки флажка в поле Пояснение комментария нужно указать текст, который будет выводиться перед текстовым полем разъяснения респондента. Поле является обязательным. -
          • Флажок Требуется комментарий недоступен при выборе типа ответа Текст и Выбор нескольких вариантов ответа из предложенных. В ответе типа Текст и так можно дать развернутый ответ. Для ответа типа Выбор нескольких вариантов ответа из предложенных при необходимости предусмотрен вывод поля с комментарием для каждого варианта ответа.

        См. также:

        +
        • Если в списке у варианта ответа установить флажок Требует открытого ответа, то респонденту будет предложено дать развернутый ответ в текстовом поле под вариантами ответа, прокомментировав таким образом свой выбор.
      • Помимо перечисленных типов ответов, также имеется возможность выбрать в качестве типа ответа один из некоторых списков программы. В этом случае респондент будет выбирать в качестве ответа на вопрос элемент списка программы.
    • Включение флажка Попросить респондента прокомментировать ответ, пояснив характер комментария на этапе подготовки вопроса позволит респонденту при заполнении анкеты в текстовом поле рядом с ответом разъяснить свой ответ. +
      • В случае установки флажка в поле ниже нужно указать текст, который будет выводиться перед текстовым полем разъяснения респондента. Поле является обязательным. +
      • Флажок Попросить респондента прокомментировать ответ, пояснив характер комментария недоступен при выборе типа ответа Текст и Выбор нескольких вариантов ответа из предложенных. В ответе типа Текст и так можно дать развернутый ответ. Для ответа типа Выбор нескольких вариантов ответа из предложенных при необходимости предусмотрен вывод поля с комментарием для каждого варианта ответа.
    • См. также:

      \ No newline at end of file diff --git a/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/Forms/ФормаЭлемента/Module.bsl b/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/Forms/ФормаЭлемента/Module.bsl index 30734eafe..30be54103 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/Forms/ФормаЭлемента/Module.bsl @@ -29,6 +29,10 @@ ДлинаСтроки = Объект.Длина; КонецЕсли; + Если Объект.Ссылка.Пустая() Тогда + Объект.ВидПереключателя = Перечисления.ВидыПереключателяВАнкетах.Переключатель; + КонецЕсли; + КонецПроцедуры &НаКлиенте @@ -251,6 +255,16 @@ КонецЕсли; + Если Объект.ТипОтвета = ПредопределенноеЗначение("Перечисление.ТипыОтветовНаВопрос.ОдинВариантИз") Тогда + + Элементы.ГруппаВидПереключателя.ТекущаяСтраница = Элементы.ГруппаВидПереключателяОтображать; + + Иначе + + Элементы.ГруппаВидПереключателя.ТекущаяСтраница = Элементы.ГруппаВидПереключателяНеОтображать; + + КонецЕсли; + КонецПроцедуры &НаКлиенте diff --git a/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/ManagerModule.bsl b/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/ManagerModule.bsl index 5e8e3b434..2ae86c019 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/ManagerModule.bsl +++ b/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/ManagerModule.bsl @@ -19,4 +19,121 @@ #КонецОбласти +#Область СлужебныйПрограммныйИнтерфейс + +//////////////////////////////////////////////////////////////////////////////// +// Обработчики обновления. + +// Регистрирует на плане обмена ОбновлениеИнформационнойБазы объекты, +// которые необходимо обновить на новую версию. +// +Процедура ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию(Параметры) Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ВопросыДляАнкетирования.Ссылка + |ИЗ + | ПланВидовХарактеристик.ВопросыДляАнкетирования КАК ВопросыДляАнкетирования + |ГДЕ + | ВопросыДляАнкетирования.ВидПереключателя = &ПустаяСсылка"; + Запрос.Параметры.Вставить("ПустаяСсылка", Перечисления.ВидыПереключателяВАнкетах.ПустаяСсылка()); + + Результат = Запрос.Выполнить().Выгрузить(); + МассивСсылок = Результат.ВыгрузитьКолонку("Ссылка"); + + ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры, МассивСсылок); + +КонецПроцедуры + +// Заполнить значение нового реквизита ВидПереключателя у плана видов характеристик ВопросыДляАнкетирования. +// +Процедура ОбработатьДанныеДляПереходаНаНовуюВерсию(Параметры) Экспорт + + Выборка = ОбновлениеИнформационнойБазы.ВыбратьСсылкиДляОбработки(Параметры.Очередь, "ПланВидовХарактеристик.ВопросыДляАнкетирования"); + + ПроблемныхОбъектов = 0; + ОбъектовОбработано = 0; + + Пока Выборка.Следующий() Цикл + + Попытка + + ЗаполнитьРеквизитВидПереключателя(Выборка); + ОбъектовОбработано = ОбъектовОбработано + 1; + + Исключение + // Если не удалось обработать объект, повторяем попытку снова. + ПроблемныхОбъектов = ПроблемныхОбъектов + 1; + + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось обработать вопрос для анкетирования: %1 по причине: + |%2'"), + Выборка.Ссылка, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение, + Метаданные.ПланыВидовХарактеристик.ВопросыДляАнкетирования, Выборка.Ссылка, ТекстСообщения); + КонецПопытки; + + КонецЦикла; + + Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(Параметры.Очередь, "ПланВидовХарактеристик.ВопросыДляАнкетирования"); + Если ОбъектовОбработано = 0 И ПроблемныхОбъектов <> 0 Тогда + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Процедуре ЗаполнитьРеквизитВидПереключателя не удалось обработать некоторые вопросы для анкетирования (пропущены): %1'"), + ПроблемныхОбъектов); + ВызватьИсключение ТекстСообщения; + Иначе + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Информация, + Метаданные.ПланыВидовХарактеристик.ВопросыДляАнкетирования,, + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Процедура ЗаполнитьРеквизитВидПереключателя обработала очередную порцию вопросов для анкетирования : %1'"), + ОбъектовОбработано)); + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +// Заполняет значение нового реквизита ВидПереключателя у переданного объекта. +// +Процедура ЗаполнитьРеквизитВидПереключателя(Выборка) + + НачатьТранзакцию(); + Попытка + + // Блокируем объект от изменения другими сеансами. + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("ПланВидовХарактеристик.ВопросыДляАнкетирования"); + ЭлементБлокировки.УстановитьЗначение("Ссылка", Выборка.Ссылка); + Блокировка.Заблокировать(); + + Объект = Выборка.Ссылка.ПолучитьОбъект(); + + // Если объект ранее был удален или обработан другими сеансами, пропускаем его. + Если Объект = Неопределено Тогда + ОтменитьТранзакцию(); + Возврат; + КонецЕсли; + Если Объект.ВидПереключателя <> Перечисления.ВидыПереключателяВАнкетах.ПустаяСсылка() Тогда + ОтменитьТранзакцию(); + Возврат; + КонецЕсли; + + // Обработка объекта. + Объект.ВидПереключателя = Перечисления.ВидыПереключателяВАнкетах.Переключатель; + + // Запись обработанного объекта. + ОбновлениеИнформационнойБазы.ЗаписатьДанные(Объект); + + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + +КонецПроцедуры + +#КонецОбласти + #КонецЕсли \ No newline at end of file diff --git a/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/ВопросыДляАнкетирования.mdo b/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/ВопросыДляАнкетирования.mdo index ea248db8c..843f5a6d3 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/ВопросыДляАнкетирования.mdo +++ b/SSL/src/ChartsOfCharacteristicTypes/ВопросыДляАнкетирования/ВопросыДляАнкетирования.mdo @@ -72,11 +72,11 @@ Parent ru - Родитель + Группа вопросов ru - Группа вопросов + Группа вопросов для анкетирования. true @@ -378,6 +378,25 @@ Use Use
      + + ВидПереключателя + + ru + Вид переключателя + + + EnumRef.ВидыПереключателяВАнкетах + + + ru + Вид переключателя для выбора одного варианта ответа из предложенных + + + + + Use + Use + ФормаЭлемента diff --git a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ВыборРеквизита/Form.form b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ВыборРеквизита/Form.form index 64a7d2d5b..42f56ca87 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ВыборРеквизита/Form.form +++ b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ВыборРеквизита/Form.form @@ -261,8 +261,6 @@ OnCreateAtServer ПриСозданииНаСервере - 60 - 20 LockOwner true true @@ -362,6 +360,21 @@ true
      + + РежимВыбора + + <key>ru</key> + <value>Режим выбора</value> + + 3 + + + true + + + true + + КомандаВыбрать diff --git a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ВыборРеквизита/Module.bsl b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ВыборРеквизита/Module.bsl index 778285097..84b9b5805 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ВыборРеквизита/Module.bsl +++ b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ВыборРеквизита/Module.bsl @@ -40,6 +40,7 @@ ПараметрыВыбора.Вставить("Реквизит", ВыбраннаяСтрока.Реквизит); ПараметрыВыбора.Вставить("Представление", ВыбраннаяСтрока.Представление); ПараметрыВыбора.Вставить("ТипЗначения", ВыбраннаяСтрока.ТипЗначения); + ПараметрыВыбора.Вставить("РежимВыбора", ВыбраннаяСтрока.РежимВыбора); Оповестить("Свойства_ВыборРеквизитаОбъекта", ПараметрыВыбора); diff --git a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ЗависимостьРеквизитов/Form.form b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ЗависимостьРеквизитов/Form.form index d07a2ab20..52ee7b2f0 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ЗависимостьРеквизитов/Form.form +++ b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ЗависимостьРеквизитов/Form.form @@ -356,8 +356,9 @@ true true - 80 + 70 true + 80 true true MultiRow @@ -587,6 +588,21 @@ true + + РежимВыбора + + <key>ru</key> + <value>Режим выбора</value> + + 6 + + + true + + + true + + РеквизитыОбъектаВХранилище @@ -714,6 +730,22 @@ + + ДополнительныйРеквизит + + ChartOfCharacteristicTypesRef.ДополнительныеРеквизитыИСведения + + + + Набор + + CatalogRef.НаборыДополнительныхРеквизитовИСведений + + + + ЗависимостиРеквизитов + + diff --git a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ЗависимостьРеквизитов/Module.bsl b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ЗависимостьРеквизитов/Module.bsl index 4d9c91462..7d8e22f63 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ЗависимостьРеквизитов/Module.bsl +++ b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ЗависимостьРеквизитов/Module.bsl @@ -36,11 +36,10 @@ НаборДополнительныхРеквизитов = НаборСвойств.ДополнительныеРеквизиты; ИмяПредопределенныхДанных = НаборСвойств.ИмяПредопределенныхДанных; - Если СтрНайти(ИмяПредопределенныхДанных, "__") > 0 Тогда - ПолноеИмяОбъектаМетаданных = СтрЗаменить(ИмяПредопределенныхДанных, "__", "._"); - Иначе - ПолноеИмяОбъектаМетаданных = СтрЗаменить(ИмяПредопределенныхДанных, "_", "."); - КонецЕсли; + ПозицияЗаменяемогоСимвола = СтрНайти(ИмяПредопределенныхДанных, "_"); + ПолноеИмяОбъектаМетаданных = Лев(ИмяПредопределенныхДанных, ПозицияЗаменяемогоСимвола - 1) + + "." + + Сред(ИмяПредопределенныхДанных, ПозицияЗаменяемогоСимвола + 1); РеквизитыОбъекта = СписокРеквизитовДляОтбора(ПолноеИмяОбъектаМетаданных, НаборДополнительныхРеквизитов); @@ -150,6 +149,7 @@ РеквизитыОбъекта.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); РеквизитыОбъекта.Колонки.Добавить("ТипЗначения", Новый ОписаниеТипов); РеквизитыОбъекта.Колонки.Добавить("НомерКартинки", Новый ОписаниеТипов("Число")); + РеквизитыОбъекта.Колонки.Добавить("РежимВыбора", Новый ОписаниеТипов("ИспользованиеГруппИЭлементов")); ОбъектМетаданных = Метаданные.НайтиПоПолномуИмени(ПолноеИмяОбъектаМетаданных); @@ -163,11 +163,11 @@ КонецЦикла; Для Каждого Реквизит Из ОбъектМетаданных.СтандартныеРеквизиты Цикл - ДобавитьРеквизитВТаблицу(РеквизитыОбъекта, Реквизит); + ДобавитьРеквизитВТаблицу(РеквизитыОбъекта, Реквизит, Истина); КонецЦикла; Для Каждого Реквизит Из ОбъектМетаданных.Реквизиты Цикл - ДобавитьРеквизитВТаблицу(РеквизитыОбъекта, Реквизит); + ДобавитьРеквизитВТаблицу(РеквизитыОбъекта, Реквизит, Ложь); КонецЦикла; РеквизитыОбъекта.Сортировать("Представление Возр"); @@ -179,12 +179,17 @@ КонецФункции &НаСервере -Процедура ДобавитьРеквизитВТаблицу(РеквизитыОбъекта, Реквизит) +Процедура ДобавитьРеквизитВТаблицу(РеквизитыОбъекта, Реквизит, Стандартный) СтрокаРеквизит = РеквизитыОбъекта.Добавить(); СтрокаРеквизит.Реквизит = Реквизит.Имя; СтрокаРеквизит.Представление = Реквизит.Представление(); СтрокаРеквизит.НомерКартинки = 1; СтрокаРеквизит.ТипЗначения = Реквизит.Тип; + Если Стандартный Тогда + СтрокаРеквизит.РежимВыбора = ?(Реквизит.Имя = "Родитель", ИспользованиеГруппИЭлементов.Группы, Неопределено); + Иначе + СтрокаРеквизит.РежимВыбора = Реквизит.ВыборГруппИЭлементов; + КонецЕсли; КонецПроцедуры &НаКлиенте @@ -210,6 +215,15 @@ ПараметрыВыбораМассив.Добавить(Новый ПараметрВыбора("Отбор.Владелец", ТаблицаФормы.ТекущиеДанные.Реквизит)); КонецЕсли; + РежимВыбора = ТаблицаФормы.ТекущиеДанные.РежимВыбора; + Если РежимВыбора = ИспользованиеГруппИЭлементов.Группы Тогда + ПолеВвода.ВыборГруппИЭлементов = ГруппыИЭлементы.Группы; + ИначеЕсли РежимВыбора = ИспользованиеГруппИЭлементов.Элементы Тогда + ПолеВвода.ВыборГруппИЭлементов = ГруппыИЭлементы.Элементы; + ИначеЕсли РежимВыбора = ИспользованиеГруппИЭлементов.ГруппыИЭлементы Тогда + ПолеВвода.ВыборГруппИЭлементов = ГруппыИЭлементы.ГруппыИЭлементы; + КонецЕсли; + ПолеВвода.ПараметрыВыбора = Новый ФиксированныйМассив(ПараметрыВыбораМассив); ПолеВвода.ОграничениеТипа = ТаблицаФормы.ТекущиеДанные.ТипЗначения; diff --git a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ИзменениеНастройкиСвойства/Form.form b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ИзменениеНастройкиСвойства/Form.form index 96faf5e18..13dbfc55d 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ИзменениеНастройкиСвойства/Form.form +++ b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ИзменениеНастройкиСвойства/Form.form @@ -8,7 +8,7 @@ ТипыСвойства 40 - Реквизит + ДополнительныйРеквизит 17 РеквизитПредупреждение @@ -40,9 +40,7 @@ 49 true - 6 true - 3 true @@ -55,11 +53,8 @@ 50 <key>ru</key> - <value>Перенастройка дополнительного реквизита необратима и может занять длительное время, -в зависимости от числа документов, в которых заполнен этот реквизит. - -Вместо этого можно добавить новый реквизит со своим списком значений, и выполнить вручную постепенный переход -от использования этого реквизита к новому (очистить значения этого реквизита и заполнить значения нового).</value> + <value>Перенастройка дополнительного реквизита необратима и может занять длительное время, в зависимости от числа документов, в которых заполнен этот реквизит. +Вместо этого можно добавить новый реквизит со своим списком значений, и выполнить вручную постепенный переход от использования этого реквизита к новому (очистить значения этого реквизита и заполнить значения нового).</value> true true @@ -82,7 +77,7 @@ true Label - true + 80 true Style.ПоясняющийТекст @@ -197,7 +192,7 @@ true Label - true + 80 true Style.ПоясняющийТекст @@ -266,9 +261,7 @@ 12 <key>ru</key> - <value>Данный реквизит входит только в один набор %1, и у него общий список значений с другими -реквизитами, добавленными по образцу. С помощью этого варианта удобно выполнять централизованную настройку -списка значений сразу для нескольких однотипных реквизитов (например, "Цвет одежды", "Цвет обуви" и пр.).</value> + <value>Данный реквизит входит только в один набор %1, и у него общий список значений с другими реквизитами, добавленными по образцу. С помощью этого варианта удобно выполнять централизованную настройку списка значений сразу для нескольких однотипных реквизитов (например, "Цвет одежды", "Цвет обуви" и пр.).</value> true true @@ -291,7 +284,7 @@ true Label - true + 80 true Style.ПоясняющийТекст @@ -413,7 +406,7 @@ true Label - true + 80 true Style.ПоясняющийТекст @@ -483,14 +476,14 @@ <key>ru</key> - <value>Реквизит</value> + <value>Дополнительный реквизит</value> ru - Реквизит + Дополнительный реквизит - РеквизитExtendedTooltip + ДополнительныйРеквизитРасширеннаяПодсказка 62 Label true @@ -507,7 +500,7 @@ - Сведение + ДополнительноеСведение 16 СведениеПредупреждение @@ -539,9 +532,7 @@ 57 true - 6 true - 3 true @@ -554,11 +545,8 @@ 58 <key>ru</key> - <value>Перенастройка дополнительного сведения необратима и может занять длительное время, -в зависимости от числа документов, в которых заполнено это сведение. - -Вместо этого можно добавить новое сведение со своим списком значений, и выполнить вручную постепенный переход -от использования этого сведения к новому (очистить значения этого сведения и заполнить значения нового).</value> + <value>Перенастройка дополнительного сведения необратима и может занять длительное время, в зависимости от числа документов, в которых заполнено это сведение. +Вместо этого можно добавить новое сведение со своим списком значений, и выполнить вручную постепенный переход от использования этого сведения к новому (очистить значения этого сведения и заполнить значения нового).</value> true true @@ -581,7 +569,7 @@ true Label - true + 80 true Style.ПоясняющийТекст @@ -700,7 +688,7 @@ true Label - true + 80 true Style.ПоясняющийТекст @@ -769,9 +757,7 @@ 24 <key>ru</key> - <value>Данное сведение входит только в один набор %1, и у него общий список значений с другими -сведениями, добавленными по образцу. С помощью этого варианта удобно выполнять централизованную настройку -списка значений сразу для нескольких однотипных сведений (например, "Цвет одежды", "Цвет обуви" и пр.).</value> + <value>Данное сведение входит только в один набор %1, и у него общий список значений с другими сведениями, добавленными по образцу. С помощью этого варианта удобно выполнять централизованную настройку списка значений сразу для нескольких однотипных сведений (например, "Цвет одежды", "Цвет обуви" и пр.).</value> true true @@ -794,7 +780,7 @@ true Label - true + 80 true Style.ПоясняющийТекст @@ -916,7 +902,7 @@ true Label - true + 80 true Style.ПоясняющийТекст @@ -990,14 +976,14 @@ <key>ru</key> - <value>Сведение</value> + <value>Дополнительное сведение</value> ru - Сведение + Дополнительное сведение - СведениеExtendedTooltip + ДополнительноеСведениеРасширеннаяПодсказка 75 Label true @@ -1206,21 +1192,6 @@ true - - ПараметрыДлительнойОперации - - <key>ru</key> - <value>Параметры длительной операции</value> - - 9 - - - true - - - true - - ЗаписатьИЗакрыть diff --git a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ИзменениеНастройкиСвойства/Module.bsl b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ИзменениеНастройкиСвойства/Module.bsl index 1dcbc66f4..4bbb1e827 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ИзменениеНастройкиСвойства/Module.bsl +++ b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ИзменениеНастройкиСвойства/Module.bsl @@ -1,10 +1,3 @@ -#Область ОписаниеПеременных - -&НаКлиенте -Перем ПараметрыДлительнойОперацииКлиент; - -#КонецОбласти - #Область ОбработчикиСобытийФормы &НаСервере @@ -15,10 +8,10 @@ КонецЕсли; Если Параметры.ЭтоДополнительноеСведение Тогда - Элементы.ТипыСвойства.ТекущаяСтраница = Элементы.Сведение; + Элементы.ТипыСвойства.ТекущаяСтраница = Элементы.ДополнительноеСведение; Заголовок = НСтр("ru = 'Изменить настройку дополнительного сведения'"); Иначе - Элементы.ТипыСвойства.ТекущаяСтраница = Элементы.Реквизит; + Элементы.ТипыСвойства.ТекущаяСтраница = Элементы.ДополнительныйРеквизит; КонецЕсли; Если ЗначениеЗаполнено(Параметры.НаборСвойств) Тогда @@ -56,10 +49,10 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Оповещение = Новый ОписаниеОповещения("ЗаписатьИЗакрытьЗавершение", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы); КонецПроцедуры @@ -116,75 +109,31 @@ Состояние(НСтр("ru = 'Выполняется изменение настройки свойства. Пожалуйста, подождите'")); - ОткрытьСвойство = ЗаписатьНаСервере(); + РезультатВыполнения = ЗаписатьНаСервере(); - Если ОткрытьСвойство <> NULL Тогда + Если РезультатВыполнения.Статус = "Выполнено" Тогда + ОткрытьСвойство = ПолучитьИзВременногоХранилища(РезультатВыполнения.АдресРезультата); ЗаписатьЗавершение(ОткрытьСвойство); Иначе - ПараметрыДлительнойОперацииКлиент = Новый Структура; - ПараметрыДлительнойОперацииКлиент.Вставить("ПараметрыОбработчикаОжидания"); + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ОповещениеОЗавершении = Новый ОписаниеОповещения("ЗаписатьПродолжение", ЭтотОбъект); - ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания( - ПараметрыДлительнойОперацииКлиент.ПараметрыОбработчикаОжидания); - - ПодключитьОбработчикОжидания("Подключаемый_ПроверитьИзменениеНастройкиСвойства", - ПараметрыДлительнойОперацииКлиент.ПараметрыОбработчикаОжидания.МинимальныйИнтервал, Истина); - - ПараметрыДлительнойОперацииКлиент.Вставить("ФормаДлительнойОперации", - ДлительныеОперацииКлиент.ОткрытьФормуДлительнойОперации( - ЭтотОбъект, ПараметрыДлительнойОперации.ИдентификаторЗадания)); + ДлительныеОперацииКлиент.ОжидатьЗавершение(РезультатВыполнения, ОповещениеОЗавершении, ПараметрыОжидания); КонецЕсли; КонецПроцедуры &НаКлиенте -Процедура Подключаемый_ПроверитьИзменениеНастройкиСвойства() +Процедура ЗаписатьПродолжение(Результат, ДополнительныеПараметры) Экспорт - Результат = NULL; - - Попытка - Если ПараметрыДлительнойОперацииКлиент.ФормаДлительнойОперации.Открыта() - И ПараметрыДлительнойОперацииКлиент.ФормаДлительнойОперации.ИдентификаторЗадания - = ПараметрыДлительнойОперации.ИдентификаторЗадания Тогда - - Результат = ЗаданиеВыполнено(ПараметрыДлительнойОперации); - Если Результат = NULL Тогда - - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания( - ПараметрыДлительнойОперацииКлиент.ПараметрыОбработчикаОжидания); - - ПодключитьОбработчикОжидания( - "Подключаемый_ПроверитьИзменениеНастройкиСвойства", - ПараметрыДлительнойОперацииКлиент.ПараметрыОбработчикаОжидания.ТекущийИнтервал, - Истина); - Иначе - ДлительныеОперацииКлиент.ЗакрытьФормуДлительнойОперации( - ПараметрыДлительнойОперацииКлиент.ФормаДлительнойОперации); - КонецЕсли; - КонецЕсли; - Исключение - ДлительныеОперацииКлиент.ЗакрытьФормуДлительнойОперации( - ПараметрыДлительнойОперацииКлиент.ФормаДлительнойОперации); - ВызватьИсключение; - КонецПопытки; - - Если Результат <> NULL Тогда - ЗаписатьЗавершение(Результат); + Если Результат = Неопределено Тогда + Возврат; КонецЕсли; + ОткрытьСвойство = ПолучитьИзВременногоХранилища(Результат.АдресРезультата); + ЗаписатьЗавершение(ОткрытьСвойство); КонецПроцедуры -&НаСервереБезКонтекста -Функция ЗаданиеВыполнено(ПараметрыДлительнойОперации) - - Если ДлительныеОперации.ЗаданиеВыполнено(ПараметрыДлительнойОперации.ИдентификаторЗадания) Тогда - Возврат ПолучитьИзВременногоХранилища(ПараметрыДлительнойОперации.АдресХранилища); - КонецЕсли; - - Возврат NULL; - -КонецФункции - &НаКлиенте Процедура ЗаписатьЗавершение(ОткрытьСвойство) @@ -203,25 +152,20 @@ &НаСервере Функция ЗаписатьНаСервере() + НаименованиеЗадания = НСтр("ru = 'Изменение настройки дополнительного свойства'"); + ПараметрыПроцедуры = Новый Структура; ПараметрыПроцедуры.Вставить("Свойство", Свойство); ПараметрыПроцедуры.Вставить("ТекущийНаборСвойств", ТекущийНаборСвойств); - НаименованиеЗадания = НСтр("ru = 'Изменение настройки дополнительного свойства'"); + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.ОжидатьЗавершение = 2; + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания; - Результат = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.ИзменитьНастройкуСвойства", - ПараметрыПроцедуры, - НаименованиеЗадания); - - Если Результат.ЗаданиеВыполнено Тогда - Возврат ПолучитьИзВременногоХранилища(Результат.АдресХранилища); - КонецЕсли; + Результат = ДлительныеОперации.ВыполнитьВФоне("ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.ИзменитьНастройкуСвойства", + ПараметрыПроцедуры, ПараметрыВыполнения); - ПараметрыДлительнойОперации = Результат; - - Возврат NULL; + Возврат Результат; КонецФункции diff --git a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/РазблокированиеРеквизитов/Form.form b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/РазблокированиеРеквизитов/Form.form index a953a7721..58788196e 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/РазблокированиеРеквизитов/Form.form +++ b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/РазблокированиеРеквизитов/Form.form @@ -42,9 +42,8 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <height>4</height> <autoMaxHeight>true</autoMaxHeight> + <verticalStretch>true</verticalStretch> <skipOnInput>false</skipOnInput> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -113,9 +112,8 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <height>4</height> <autoMaxHeight>true</autoMaxHeight> + <verticalStretch>true</verticalStretch> <skipOnInput>false</skipOnInput> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -226,6 +224,7 @@ <key>ru</key> <value>Кнопки пояснения</value> </toolTip> + <groupVerticalAlign>Bottom</groupVerticalAlign> <extendedTooltip> <name>КнопкиПоясненияExtendedTooltip</name> <id>35</id> @@ -286,8 +285,7 @@ <key>ru</key> <value>Внимание! Дополнительный реквизит уже используется в информационной базе. -Изменение типа значения дополнительного реквизита может привести к потере -ранее установленных значений его текущего типа.</value> +Изменение типа значения дополнительного реквизита может привести к потере ранее установленных значений его текущего типа.</value> true true @@ -310,9 +308,8 @@ true Label - true - 4 true + true false Left @@ -358,8 +355,7 @@ ru Внимание! Дополнительное сведение уже используется в информационной базе. -Изменение типа значения дополнительного сведения может привести к потере -ранее установленных значений его текущего типа. +Изменение типа значения дополнительного сведения может привести к потере ранее установленных значений его текущего типа. true true @@ -382,9 +378,8 @@ true Label - true - 4 true + true false Left @@ -518,6 +513,7 @@ ru Кнопки предупреждения + Bottom КнопкиПредупрежденияExtendedTooltip 43 @@ -639,6 +635,12 @@ ChartOfCharacteristicTypesRef.ДополнительныеРеквизитыИСведения + + ЭтоДополнительныйРеквизит + + Boolean + + diff --git a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/РазблокированиеРеквизитов/Module.bsl b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/РазблокированиеРеквизитов/Module.bsl index e47f68599..ea452e91b 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/РазблокированиеРеквизитов/Module.bsl +++ b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/РазблокированиеРеквизитов/Module.bsl @@ -11,6 +11,7 @@ Если УправлениеСвойствамиСлужебный.ДополнительноеСвойствоИспользуется(Параметры.Ссылка) Тогда Элементы.ДиалогиПользователя.ТекущаяСтраница = Элементы.ОбъектИспользуется; + Элементы.РазрешитьРедактирование.КнопкаПоУмолчанию = Истина; Если Параметры.ЭтоДополнительныйРеквизит = Истина Тогда @@ -18,8 +19,12 @@ Иначе Элементы.Предупреждения.ТекущаяСтраница = Элементы.ПредупреждениеДополнительногоСведения; КонецЕсли; + + СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(ЭтотОбъект, "СвойствоИспользуется"); Иначе Элементы.ДиалогиПользователя.ТекущаяСтраница = Элементы.ОбъектНеИспользуется; + Элементы.ОбъектИспользуется.Видимость = Ложь; // Для компактного отображения формы. + Элементы.ОК.КнопкаПоУмолчанию = Истина; Если Параметры.ЭтоДополнительныйРеквизит = Истина Тогда @@ -27,6 +32,8 @@ Иначе Элементы.Пояснения.ТекущаяСтраница = Элементы.ПояснениеДополнительногоСведения; КонецЕсли; + + СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(ЭтотОбъект, "СвойствоНеИспользуется"); КонецЕсли; КонецПроцедуры @@ -41,7 +48,7 @@ РазблокируемыеРеквизиты = Новый Массив; РазблокируемыеРеквизиты.Добавить("ТипЗначения"); - ОповеститьОВыборе(РазблокируемыеРеквизиты); + Закрыть(РазблокируемыеРеквизиты); КонецПроцедуры diff --git a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаВыбора/Form.form b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаВыбора/Form.form index cb2d05393..399d17c5d 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаВыбора/Form.form +++ b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаВыбора/Form.form @@ -598,7 +598,6 @@ OnCreateAtServer ПриСозданииНаСервере - 50 LockOwner true true diff --git a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаСписка/Form.form b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаСписка/Form.form index 29c9f9e8a..ea7e4d1a9 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаСписка/Form.form +++ b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаСписка/Form.form @@ -346,7 +346,6 @@ OnCreateAtServer ПриСозданииНаСервере - 70 DontBlock true true diff --git a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаЭлемента/Form.form b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаЭлемента/Form.form index aabf907ec..d9af0ddbd 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаЭлемента/Form.form +++ b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаЭлемента/Form.form @@ -40,10 +40,10 @@ 202 ГруппаЗаголовок - 435 + 336 ДекорацияЗаголовок - 439 + 338 <key>ru</key> <value>Выберите %1 для включения в набор "%2":</value> @@ -55,7 +55,7 @@ </userVisible> <extendedTooltip> <name>ДекорацияЗаголовокРасширеннаяПодсказка</name> - <id>441</id> + <id>340</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -65,11 +65,10 @@ </extendedTooltip> <contextMenu> <name>ДекорацияЗаголовокКонтекстноеМеню</name> - <id>440</id> + <id>339</id> <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -77,13 +76,13 @@ </items> <items xsi:type="form:FormGroup"> <name>ПанельЕще</name> - <id>502</id> + <id>408</id> <items xsi:type="form:FormGroup"> <name>ПодменюЕще</name> - <id>504</id> + <id>410</id> <items xsi:type="form:Button"> <name>ОбщиеРеквизитыНеВключенныеВНаборы</name> - <id>506</id> + <id>412</id> <visible>true</visible> <enabled>true</enabled> <userVisible> @@ -91,7 +90,7 @@ </userVisible> <extendedTooltip> <name>ОбщиеРеквизитыНеВключенныеВНаборыРасширеннаяПодсказка</name> - <id>507</id> + <id>413</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -118,7 +117,7 @@ ПодменюЕщеРасширеннаяПодсказка - 505 + 411 Label true true @@ -139,7 +138,7 @@ ПанельЕщеРасширеннаяПодсказка - 503 + 409 Label true true @@ -159,7 +158,7 @@ ГруппаЗаголовокРасширеннаяПодсказка - 436 + 337 Label true true @@ -178,19 +177,19 @@ ГруппаСодержимое - 437 + 341 ГруппаНаборыСвойств - 433 + 343 СтраницыНаборыСвойств - 458 + 414 СтраницаВсеНаборы - 460 + 416 НаборыСвойств - 336 + 345 true true @@ -211,7 +210,7 @@ SetDeletionMark Представление - 349 + 396 true true @@ -222,7 +221,7 @@ ПредставлениеРасширеннаяПодсказка - 351 + 398 Label true true @@ -232,27 +231,22 @@ ПредставлениеКонтекстноеМеню - 350 + 397 true - InputField + LabelField Enter true Left true - + true true - true - true - true - true - Normal Ссылка - 352 + 399 true true @@ -261,7 +255,7 @@ СсылкаРасширеннаяПодсказка - 354 + 401 Label true true @@ -271,7 +265,7 @@ СсылкаКонтекстноеМеню - 353 + 400 true LabelField @@ -287,7 +281,7 @@ None НаборыСвойствКоманднаяПанель - 338 + 347 Left true @@ -301,10 +295,10 @@ НаборыСвойствСтрокаПоиска - 340 + 349 НаборыСвойствСтрокаПоискаРасширеннаяПодсказка - 342 + 351 Label true true @@ -314,7 +308,7 @@ НаборыСвойствСтрокаПоискаКонтекстноеМеню - 341 + 350 true НаборыСвойств @@ -324,10 +318,10 @@ НаборыСвойствСостояниеПросмотра - 343 + 352 НаборыСвойствСостояниеПросмотраРасширеннаяПодсказка - 345 + 354 Label true true @@ -337,7 +331,7 @@ НаборыСвойствСостояниеПросмотраКонтекстноеМеню - 344 + 353 true ViewStatusAddition @@ -348,10 +342,10 @@ НаборыСвойствУправлениеПоиском - 346 + 355 НаборыСвойствУправлениеПоискомРасширеннаяПодсказка - 348 + 357 Label true true @@ -361,7 +355,7 @@ НаборыСвойствУправлениеПоискомКонтекстноеМеню - 347 + 356 true SearchControlAddition @@ -372,7 +366,7 @@ НаборыСвойствРасширеннаяПодсказка - 339 + 348 Label true true @@ -382,7 +376,7 @@ НаборыСвойствКонтекстноеМеню - 337 + 346 true Tree @@ -398,10 +392,13 @@ true true false + false Auto Auto true true + true + true НаборыСвойств.НомерКартинки @@ -429,7 +426,7 @@ СтраницаВсеНаборыРасширеннаяПодсказка - 461 + 417 Label true true @@ -446,10 +443,10 @@ СтраницаОбщиеНаборы - 481 + 418 ОбщиеНаборыСвойств - 483 + 420 true true @@ -463,7 +460,7 @@ ListSettings ОбщиеНаборыСвойствПредставление - 499 + 436 true true @@ -474,7 +471,7 @@ ОбщиеНаборыСвойствПредставлениеРасширеннаяПодсказка - 501 + 438 Label true true @@ -484,7 +481,7 @@ ОбщиеНаборыСвойствПредставлениеКонтекстноеМеню - 500 + 437 true LabelField @@ -500,16 +497,16 @@ None ОбщиеНаборыСвойствКоманднаяПанель - 485 + 422 Left true ОбщиеНаборыСвойствСтрокаПоиска - 487 + 424 ОбщиеНаборыСвойствСтрокаПоискаРасширеннаяПодсказка - 489 + 426 Label true true @@ -519,7 +516,7 @@ ОбщиеНаборыСвойствСтрокаПоискаКонтекстноеМеню - 488 + 425 true ОбщиеНаборыСвойств @@ -529,10 +526,10 @@ ОбщиеНаборыСвойствСостояниеПросмотра - 490 + 427 ОбщиеНаборыСвойствСостояниеПросмотраРасширеннаяПодсказка - 492 + 429 Label true true @@ -542,7 +539,7 @@ ОбщиеНаборыСвойствСостояниеПросмотраКонтекстноеМеню - 491 + 428 true ViewStatusAddition @@ -553,10 +550,10 @@ ОбщиеНаборыСвойствУправлениеПоиском - 493 + 430 ОбщиеНаборыСвойствУправлениеПоискомРасширеннаяПодсказка - 495 + 432 Label true true @@ -566,7 +563,7 @@ ОбщиеНаборыСвойствУправлениеПоискомКонтекстноеМеню - 494 + 431 true SearchControlAddition @@ -577,7 +574,7 @@ ОбщиеНаборыСвойствРасширеннаяПодсказка - 486 + 423 Label true true @@ -587,7 +584,7 @@ ОбщиеНаборыСвойствКонтекстноеМеню - 484 + 421 true Tree @@ -608,8 +605,9 @@ Auto true true + true - ОбщиеНаборыСвойств.DefaultPicture + ОбщиеНаборыСвойств.НомерКартинки CommonPicture.ПиктограммыЭлементов @@ -635,7 +633,7 @@ СтраницаОбщиеНаборыРасширеннаяПодсказка - 482 + 419 Label true true @@ -657,7 +655,7 @@ СтраницыНаборыСвойствРасширеннаяПодсказка - 459 + 415 Label true true @@ -679,13 +677,9 @@ ru Группа наборы свойств - - ru - Группа наборы свойств - ГруппаНаборыСвойствРасширеннаяПодсказка - 434 + 344 Label true true @@ -705,10 +699,10 @@ РасшифровкаРеквизита - 260 + 364 Свойства - 355 + 366 true true @@ -734,7 +728,7 @@ SortListDesc СвойстваЗаголовок - 406 + 379 true true @@ -745,7 +739,7 @@ СвойстваЗаголовокРасширеннаяПодсказка - 408 + 381 Label true true @@ -755,7 +749,7 @@ СвойстваЗаголовокКонтекстноеМеню - 407 + 380 true InputField @@ -776,7 +770,7 @@ Top СвойстваКоманднаяПанель - 357 + 368 Left @@ -785,10 +779,10 @@ СвойстваСтрокаПоиска - 359 + 370 СвойстваСтрокаПоискаРасширеннаяПодсказка - 361 + 372 Label true true @@ -798,7 +792,7 @@ СвойстваСтрокаПоискаКонтекстноеМеню - 360 + 371 true Свойства @@ -808,10 +802,10 @@ СвойстваСостояниеПросмотра - 362 + 373 СвойстваСостояниеПросмотраРасширеннаяПодсказка - 364 + 375 Label true true @@ -821,7 +815,7 @@ СвойстваСостояниеПросмотраКонтекстноеМеню - 363 + 374 true ViewStatusAddition @@ -832,10 +826,10 @@ СвойстваУправлениеПоиском - 365 + 376 СвойстваУправлениеПоискомРасширеннаяПодсказка - 367 + 378 Label true true @@ -845,7 +839,7 @@ СвойстваУправлениеПоискомКонтекстноеМеню - 366 + 377 true SearchControlAddition @@ -856,7 +850,7 @@ СвойстваРасширеннаяПодсказка - 358 + 369 Label true true @@ -866,10 +860,10 @@ СвойстваКонтекстноеМеню - 356 + 367 СвойстваКонтекстноеМенюИзменить - 450 + 382 true true @@ -877,7 +871,7 @@ СвойстваКонтекстноеМенюИзменитьРасширеннаяПодсказка - 451 + 383 Label true true @@ -896,7 +890,6 @@ true true - 70 true true true @@ -922,9 +915,6 @@ CommonPicture.ПиктограммыЭлементов - - Style.FormBackColor - None None None @@ -933,7 +923,7 @@ СписокДополнительныхРеквизитовТипЗначения - 430 + 384 true true @@ -945,7 +935,7 @@ Top СписокДополнительныхРеквизитовТипЗначенияРасширеннаяПодсказка - 432 + 386 Label true true @@ -955,7 +945,7 @@ СписокДополнительныхРеквизитовТипЗначенияКонтекстноеМеню - 431 + 385 true InputField @@ -975,7 +965,7 @@ СписокДополнительныхРеквизитовПодсказка - 262 + 387 <key>ru</key> <value>Всплывающая подсказка</value> @@ -991,7 +981,7 @@ <titleLocation>Top</titleLocation> <extendedTooltip> <name>СписокДополнительныхРеквизитовПодсказкаРасширеннаяПодсказка</name> - <id>264</id> + <id>389</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -1001,7 +991,7 @@ </extendedTooltip> <contextMenu> <name>СписокДополнительныхРеквизитовПодсказкаКонтекстноеМеню</name> - <id>263</id> + <id>388</id> <autoFill>true</autoFill> </contextMenu> <type>InputField</type> @@ -1025,7 +1015,7 @@ </items> <items xsi:type="form:FormField"> <name>СписокДополнительныхРеквизитовЗаголовокФормыЗначения</name> - <id>265</id> + <id>390</id> <visible>true</visible> <enabled>true</enabled> <userVisible> @@ -1037,7 +1027,7 @@ <titleLocation>Top</titleLocation> <extendedTooltip> <name>СписокДополнительныхРеквизитовЗаголовокФормыЗначенияРасширеннаяПодсказка</name> - <id>267</id> + <id>392</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -1047,7 +1037,7 @@ </extendedTooltip> <contextMenu> <name>СписокДополнительныхРеквизитовЗаголовокФормыЗначенияКонтекстноеМеню</name> - <id>266</id> + <id>391</id> <autoFill>true</autoFill> </contextMenu> <type>InputField</type> @@ -1071,7 +1061,7 @@ </items> <items xsi:type="form:FormField"> <name>СписокДополнительныхРеквизитовЗаголовокФормыВыбораЗначения</name> - <id>268</id> + <id>393</id> <visible>true</visible> <enabled>true</enabled> <userVisible> @@ -1083,7 +1073,7 @@ <titleLocation>Top</titleLocation> <extendedTooltip> <name>СписокДополнительныхРеквизитовЗаголовокФормыВыбораЗначенияРасширеннаяПодсказка</name> - <id>270</id> + <id>395</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -1093,7 +1083,7 @@ </extendedTooltip> <contextMenu> <name>СписокДополнительныхРеквизитовЗаголовокФормыВыбораЗначенияКонтекстноеМеню</name> - <id>269</id> + <id>394</id> <autoFill>true</autoFill> </contextMenu> <type>InputField</type> @@ -1126,7 +1116,7 @@ <readOnly>true</readOnly> <extendedTooltip> <name>РасшифровкаРеквизитаРасширеннаяПодсказка</name> - <id>261</id> + <id>365</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -1151,7 +1141,7 @@ </userVisible> <extendedTooltip> <name>ГруппаСодержимоеРасширеннаяПодсказка</name> - <id>438</id> + <id>342</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -1190,7 +1180,7 @@ <type>Page</type> <extInfo xsi:type="form:PageGroupExtInfo"> <group>Vertical</group> - <slaveItemsWidth>Equal</slaveItemsWidth> + <slaveItemsWidth>LeftWidest</slaveItemsWidth> <scrollOnCompress>false</scrollOnCompress> </extInfo> </items> @@ -1282,48 +1272,13 @@ <items xsi:type="form:FormGroup"> <name>ГруппаНаименованиеРеквизита</name> <id>79</id> - <items xsi:type="form:Decoration"> - <name>ДекорацияНаименование</name> - <id>81</id> - <title> - <key>ru</key> - <value>Наименование:</value> - - true - true - - true - - - ru - Краткое представление свойства, которое -выводится в формах редактирования его значения. - - - ДекорацияНаименованиеРасширеннаяПодсказка - 116 - Label - true - true - - Left - - - - ДекорацияНаименованиеКонтекстноеМеню - 82 - true - - Label - true - true - - Left - - Заголовок 1 + + <key>ru</key> + <value>Наименование</value> + true true @@ -1333,7 +1288,12 @@ Объект.Заголовок true - None + Left + + ru + Краткое представление свойства, которое +выводится в формах редактирования его значения. + ЗаголовокExtendedTooltip 118 @@ -1448,43 +1408,13 @@ ТипЗначенияРеквизита 43 - - ДекорацияТипЗначения - 74 - - <key>ru</key> - <value>Тип значения:</value> - - true - true - - true - - - ДекорацияТипЗначенияРасширеннаяПодсказка - 123 - Label - true - true - - Left - - - - ДекорацияТипЗначенияКонтекстноеМеню - 75 - true - - Label - true - true - - Left - - ТипЗначения 5 + + <key>ru</key> + <value>Тип значения</value> + true true @@ -1493,7 +1423,7 @@ Объект.ValueType - None + Left ru В реквизите будут указываться данные выбранного типа. Например, текст, дата, число и т.п. @@ -1755,10 +1685,10 @@ 326 Виден - 452 + 402 <key>ru</key> - <value>Виден</value> + <value>Виден:</value> true true @@ -1767,7 +1697,7 @@ ВиденРасширеннаяПодсказка - 454 + 404 Label true true @@ -1777,7 +1707,7 @@ ВиденКонтекстноеМеню - 453 + 403 true Label @@ -1792,10 +1722,10 @@ Доступен - 455 + 405 <key>ru</key> - <value>Доступен</value> + <value>Доступен:</value> true true @@ -1804,7 +1734,7 @@ ДоступенРасширеннаяПодсказка - 457 + 407 Label true true @@ -1814,7 +1744,7 @@ ДоступенКонтекстноеМеню - 456 + 406 true Label @@ -1830,6 +1760,10 @@ ЗаполнятьОбязательно 184 + + <key>ru</key> + <value>Заполнять обязательно:</value> + true true @@ -1893,7 +1827,6 @@ Vertical Auto true - true Auto Auto @@ -1929,7 +1862,6 @@ true Label - true true @@ -1968,7 +1900,6 @@ true Label - true true @@ -2007,7 +1938,6 @@ true Label - true true @@ -2046,7 +1976,6 @@ Vertical Auto true - true Auto Auto @@ -2101,6 +2030,7 @@ Объект.Подсказка + 2 ПодсказкаExtendedTooltip 155 @@ -2145,6 +2075,7 @@ Объект.ЗаголовокФормыЗначения + 2 ru Используется в заголовке формы дополнительного значения свойства. @@ -2191,6 +2122,7 @@ Объект.ЗаголовокФормыВыбораЗначения + 2 ru Используется в заголовке формы выбора дополнительного значения свойства. @@ -2235,7 +2167,6 @@ ru Группа заголовки форм значений - false ГруппаЗаголовкиФормЗначенийExtendedTooltip 156 @@ -2256,6 +2187,63 @@ Auto
      + + Комментарий + 28 + true + true + + true + + + Объект.Комментарий + + Left + + OnChange + КомментарийПриИзменении + + + КомментарийExtendedTooltip + 159 + Label + true + true + + Left + + + + КомментарийКонтекстноеМеню + 29 + true + + InputField + Enter + true + Left + true + + + StartChoice + КомментарийНачалоВыбора + + + Opening + КомментарийОткрытие + + true + true + false + true + true + true + true + true + true + Normal + + true true @@ -2320,7 +2308,6 @@ true Label - true true @@ -2982,6 +2969,7 @@ true 9 true + 7 true MultiRow Row @@ -3382,6 +3370,7 @@ true true true + 7 true MultiRow Row @@ -3418,10 +3407,6 @@ ru Страница дерево значений - - ru - Страница дерево значений - СтраницаДеревоЗначенийРасширеннаяПодсказка 290 @@ -3448,6 +3433,8 @@ ru Страницы значения реквизита + 65 + false СтраницыЗначенияРеквизитаРасширеннаяПодсказка 288 @@ -3536,7 +3523,6 @@ true Label - true true @@ -3639,61 +3625,6 @@ СтраницаКомментарий 171 - - Комментарий - 28 - true - true - - true - - - Объект.Комментарий - - None - - OnChange - КомментарийПриИзменении - - - КомментарийExtendedTooltip - 159 - Label - true - true - - Left - - - - КомментарийКонтекстноеМеню - 29 - true - - InputField - Enter - true - Left - true - - - Opening - КомментарийОткрытие - - true - 2 - true - true - true - true - true - false - true - true - true - Normal - - true true @@ -4353,13 +4284,30 @@ true + + ВыбранныйНаборСвойств + + <key>ru</key> + <value>Выбранный набор свойств</value> + + 20 + + CatalogRef.НаборыДополнительныхРеквизитовИСведений + + + true + + + true + + НаборыСвойств <key>ru</key> <value>Наборы свойств</value> - 20 + 21 DynamicList @@ -4664,30 +4612,13 @@ - - ВыбранныйНаборСвойств - - <key>ru</key> - <value>Выбранный набор свойств</value> - - 23 - - CatalogRef.НаборыДополнительныхРеквизитовИСведений - - - true - - - true - - ОбщиеНаборыСвойств <key>ru</key> <value>Общие наборы свойств</value> - 24 + 23 DynamicList diff --git a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаЭлемента/Help/ru.html b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаЭлемента/Help/ru.html index 6561198c7..8a14fb7a4 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаЭлемента/Help/ru.html +++ b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаЭлемента/Help/ru.html @@ -84,8 +84,11 @@
    • Можно поменять Разделитель дробной части (по умолчанию - запятая), определить Разделитель групп (по умолчанию пробел), также определить Группировку.
    • Можно выбрать Представление нуля, например, для того чтобы напомнить о необходимости ввода значения в это поле.
    • Также можно указать Представление отрицательных чисел. -
    • При необходимости включите флажок Выводить лидирующие нули. В этом случае при подгонке под указанную Длину числа, если число меньше, будут проставлены нули в разрядах. 
    • Дата - выберите состав даты: Дата, Время или Дата и Время. -
      • Для дополнительных реквизитов можно задать формат даты, для этого перейдите по ссылке Формат по умолчанию. Можно выбрать формат dd.mm.yyyy  или yyyy-MM-dd, а также Локальный формат даты (например, 22 мая 2013), задать Представление пустой даты (в незаполненном поле появится предупреждение, например, Нет даты).  
    • Составной тип данных - этот тип значения предоставляет возможность окончательно выбрать тип данных уже при вводе информации в справочник. Включите флажок Составной тип данных, затем включите флажки для типов значений, из которых можно будет выбирать. +
    • При необходимости включите флажок Выводить лидирующие нули. В этом случае при подгонке под указанную Длину числа, если число меньше, будут проставлены нули в разрядах.
    • Внимание! Некоторые настройки формата (например, представление пустого числа, длинная дата и некоторые другие) автоматически не применяются в большинстве мест и поддерживаются только там, где разработчик это предусмотрел (например, в печатных формах). +
      • В карточках объектов они неприменимы.
    • Дата - выберите состав даты: Дата, Время или Дата и Время. +
      • Для дополнительных реквизитов можно задать формат даты, для этого перейдите по ссылке Формат по умолчанию. Можно выбрать формат dd.mm.yyyy  или yyyy-MM-dd, а также Локальный формат даты (например, 22 мая 2013), задать Представление пустой даты (в незаполненном поле появится предупреждение, например, Нет даты).   +
        • Внимание! Некоторые настройки формата (например, представление пустого числа, длинная дата и некоторые другие) автоматически не применяются в большинстве мест и поддерживаются только там, где разработчик это предусмотрел (например, в печатных формах). +
        • В карточках объектов они неприменимы.
    • Составной тип данных - этот тип значения предоставляет возможность окончательно выбрать тип данных уже при вводе информации в справочник. Включите флажок Составной тип данных, затем включите флажки для типов значений, из которых можно будет выбирать.
      • Например, дату основания фирмы иногда невозможно указать точно. В этом случае можно предоставить возможность выбора типа данных (Дата или Строка) во время ввода. Если точная дата известна, то можно будет выбрать тип Дата и ввести, если неизвестна, то можно будет ввести дату в виде строки типа "Начало 19 в.".
      • При этом для всех частей составного типа данных можно произвести их обычные настройки, например, настроить формат даты и определить параметры строки.
      • При вводе значений дополнительных реквизитов (сведений) составного типа данных сначала предлагается выбрать тип данных.
    • Булево - обычно это значения типа Истина и Ложь, Да или Нет. diff --git a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаЭлемента/Module.bsl b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаЭлемента/Module.bsl index 6966b3ff1..d57d6b976 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаЭлемента/Module.bsl +++ b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/Forms/ФормаЭлемента/Module.bsl @@ -27,11 +27,6 @@ ПереданныеПараметрыФормы.Вставить("Перетаскивание", Ложь); ЗаполнитьЗначенияСвойств(ПереданныеПараметрыФормы, Параметры); - ОбщегоНазначенияКлиентСервер.УстановитьПараметрДинамическогоСписка( - НаборыСвойств, "Наборы", Новый Массив, Истина); - ОбщегоНазначенияКлиентСервер.УстановитьПараметрДинамическогоСписка( - НаборыСвойств, "ЭтоДополнительноеСведение", ЭтоДополнительноеСведение = 1, Истина); - Если ПереданныеПараметрыФормы.КопированиеСВопросом И Не ПолучитьФункциональнуюОпцию("ИспользоватьОбщиеДополнительныеРеквизитыИСведения") И (Не РеквизитСоСпискомДополнительныхЗначений() @@ -71,13 +66,6 @@ &НаКлиенте Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора) - // СтандартныеПодсистемы.ЗапретРедактированияРеквизитовОбъектов - Если ВРег(ИсточникВыбора.ИмяФормы) = ВРег("ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения.Форма.РазблокированиеРеквизитов") Тогда - ЗапретРедактированияРеквизитовОбъектовКлиент.УстановитьДоступностьЭлементовФормы(ЭтотОбъект, ВыбранноеЗначение); - Возврат; - КонецЕсли; - // Конец СтандартныеПодсистемы.ЗапретРедактированияРеквизитовОбъектов - Если ТипЗнч(ВыбранноеЗначение) = Тип("ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения") Тогда Закрыть(); @@ -372,6 +360,11 @@ УстановитьКартинкуКомментария(); КонецПроцедуры +&НаКлиенте +Процедура КомментарийНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + ОбщегоНазначенияКлиент.ПоказатьФормуРедактированияКомментария(Элемент.ТекстРедактирования, ЭтотОбъект, "Объект.Комментарий"); +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыНаборыСвойств @@ -388,7 +381,7 @@ #КонецОбласти -#Область ОбработчикиСобытийЭлементовТаблицыФормыСвойства +#Область ОбработчикиСобытийЭлементовТаблицыФормыСвойстваВыбор &НаКлиенте Процедура СвойстваВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) @@ -486,9 +479,14 @@ Возврат; КонецЕсли; Если ИндексСтраницы = 2 Тогда + Если Не ПроверитьЗаполнение() Тогда + Возврат; + КонецЕсли; + Если РежимДобавленияРеквизита = "СоздатьКопированием" Тогда Элементы.СтраницыЗначенияРеквизита.ТекущаяСтраница = Элементы.ДополнительныеЗначения; КонецЕсли; + Записать(); Закрыть(); Возврат; @@ -557,9 +555,9 @@ ПараметрыФормы = Новый Структура; ПараметрыФормы.Вставить("Ссылка", Объект.Ссылка); - ПараметрыФормы.Вставить("ЭтоДополнительныйРеквизит", Объект.ЭтоДополнительноеСведение); + ПараметрыФормы.Вставить("ЭтоДополнительныйРеквизит", Не Объект.ЭтоДополнительноеСведение); - Оповещение = Новый ОписаниеОповещения("ОбновитьФормуДляРедактирования", ЭтотОбъект); + Оповещение = Новый ОписаниеОповещения("ПослеВыбораРеквизитовДляРазблокирования", ЭтотОбъект); ОткрытьФорму("ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения.Форма.РазблокированиеРеквизитов", ПараметрыФормы, ЭтотОбъект,,,, Оповещение); Иначе @@ -600,7 +598,15 @@ Элементы.СтраницыНаборыСвойств.ТекущаяСтраница = Элементы.СтраницаВсеНаборы; КонецЕсли; + ОтобразитьПоказатьОбщиеРеквизитыБезНаборов(); + +КонецПроцедуры + +&НаСервере +Процедура ОтобразитьПоказатьОбщиеРеквизитыБезНаборов() + ОбновитьСписокСвойствТекущегоНабора(); + КонецПроцедуры #КонецОбласти @@ -651,9 +657,6 @@ &НаСервере Процедура ЗаполнитьСтраницуВыбора() - ИспользоватьОбщиеДополнительныеЗначения = ПолучитьФункциональнуюОпцию("ИспользоватьОбщиеДополнительныеЗначения"); - ИспользоватьОбщиеДополнительныеРеквизитыИСведения = ПолучитьФункциональнуюОпцию("ИспользоватьОбщиеДополнительныеРеквизитыИСведения"); - Если ПереданныеПараметрыФормы.ЭтоДополнительноеСведение <> Неопределено Тогда ЭтоДополнительноеСведение = ПереданныеПараметрыФормы.ЭтоДополнительноеСведение; КонецЕсли; @@ -704,6 +707,49 @@ КонецПроцедуры +&НаСервере +Процедура ЗаполнитьЗначенияДополнительныхРеквизитов(ВладелецЗначений) + + ДеревоЗначений = РеквизитФормыВЗначение("ЗначенияДополнительныхРеквизитов"); + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ЗначенияСвойствОбъектов.Ссылка КАК Ссылка, + | ЗначенияСвойствОбъектов.Владелец КАК Владелец, + | 0 КАК КодКартинки, + | ЗначенияСвойствОбъектов.Вес, + | ЗначенияСвойствОбъектов.Наименование + |ИЗ + | Справочник.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов + |ГДЕ + | ЗначенияСвойствОбъектов.ПометкаУдаления = ЛОЖЬ + | И ЗначенияСвойствОбъектов.Владелец = &Владелец + | + |ОБЪЕДИНИТЬ ВСЕ + | + |ВЫБРАТЬ + | ЗначенияСвойствОбъектовИерархия.Ссылка, + | ЗначенияСвойствОбъектовИерархия.Владелец, + | 0, + | ЗначенияСвойствОбъектовИерархия.Вес, + | ЗначенияСвойствОбъектовИерархия.Наименование + |ИЗ + | Справочник.ЗначенияСвойствОбъектовИерархия КАК ЗначенияСвойствОбъектовИерархия + |ГДЕ + | ЗначенияСвойствОбъектовИерархия.ПометкаУдаления = ЛОЖЬ + | И ЗначенияСвойствОбъектовИерархия.Владелец = &Владелец + | + |УПОРЯДОЧИТЬ ПО + | Ссылка ИЕРАРХИЯ"; + Запрос.УстановитьПараметр("Владелец", ВладелецЗначений); + Результат = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией); + + ДеревоЗначений = Результат.Скопировать(); + ЗначениеВРеквизитФормы(ДеревоЗначений, "ЗначенияДополнительныхРеквизитов"); + +КонецПроцедуры + &НаСервере Процедура КонвертироватьДополнительныйРеквизитВОбщий() НачатьТранзакцию(); @@ -771,9 +817,10 @@ КонецЕсли; СвойстваВладельца = ОбщегоНазначения.ЗначенияРеквизитовОбъекта( - ПереданныеПараметрыФормы.ВладелецДополнительныхЗначений, "ТипЗначения, ДополнительныеЗначенияСВесом"); + ПереданныеПараметрыФормы.ВладелецДополнительныхЗначений, "ТипЗначения, ДополнительныеЗначенияСВесом, ФорматСвойства"); - Объект.ТипЗначения = СвойстваВладельца.ТипЗначения; + Объект.ТипЗначения = СвойстваВладельца.ТипЗначения; + Объект.ФорматСвойства = СвойстваВладельца.ФорматСвойства; ЗначенияВладельцаСВесом = СвойстваВладельца.ДополнительныеЗначенияСВесом; Объект.ДополнительныеЗначенияСВесом = ЗначенияВладельцаСВесом; @@ -794,10 +841,19 @@ КонецПроцедуры &НаКлиенте -Процедура ОбновитьФормуДляРедактирования(Результат, Параметр) Экспорт +Процедура ПослеВыбораРеквизитовДляРазблокирования(РазблокируемыеРеквизиты, Контекст) Экспорт + + Если ТипЗнч(РазблокируемыеРеквизиты) <> Тип("Массив") Тогда + Возврат; + КонецЕсли; + + ЗапретРедактированияРеквизитовОбъектовКлиент.УстановитьДоступностьЭлементовФормы(ЭтотОбъект, + РазблокируемыеРеквизиты); + #Если ВебКлиент Тогда ОбновитьОтображениеДанных(); #КонецЕсли + КонецПроцедуры &НаКлиенте @@ -898,9 +954,11 @@ ВыбранныйНабор = ВыбранныйЭлемент.Значение; КонецЕсли; + Если Не ЗначениеЗаполнено(ТекущийНаборСвойств) Тогда + Возврат; + КонецЕсли; + Если ВыбранныйНабор <> Неопределено Тогда - Закрыть(); - ЗначениеВыбора = Новый Структура; ЗначениеВыбора.Вставить("Набор", ВыбранныйНабор); ЗначениеВыбора.Вставить("Свойство", Объект.Ссылка); @@ -1091,49 +1149,47 @@ Объект.ФорматСвойства = Текст; УстановитьЗаголовокКнопкиФормата(ЭтотОбъект); - ТекстПредупреждения = ""; + ТекстПредупреждения = НСтр("ru = 'Следующие настройки формата автоматически не применяются в большинстве мест:'"); Массив = СтрРазделить(Текст, ";", Ложь); Для каждого Подстрока Из Массив Цикл Если СтрНайти(Подстрока, "ДП=") > 0 ИЛИ СтрНайти(Подстрока, "DE=") > 0 Тогда ТекстПредупреждения = ТекстПредупреждения + Символы.ПС - + НСтр("ru = 'Представление пустой даты не поддерживается в полях ввода.'"); + + " - " + НСтр("ru = 'представление пустой даты'"); Продолжить; КонецЕсли; Если СтрНайти(Подстрока, "ЧН=") > 0 ИЛИ СтрНайти(Подстрока, "NZ=") > 0 Тогда ТекстПредупреждения = ТекстПредупреждения + Символы.ПС - + НСтр("ru = 'Представление пустого числа не поддерживается в полях ввода.'"); + + " - " + НСтр("ru = 'представление пустого числа'"); Продолжить; КонецЕсли; Если СтрНайти(Подстрока, "ДФ=") > 0 ИЛИ СтрНайти(Подстрока, "DF=") > 0 Тогда Если СтрНайти(Подстрока, "ддд") > 0 ИЛИ СтрНайти(Подстрока, "ddd") > 0 Тогда ТекстПредупреждения = ТекстПредупреждения + Символы.ПС - + НСтр("ru = 'Кратное название дня недели не поддерживается в полях ввода.'"); + + " - " + НСтр("ru = 'кратное название дня недели'"); КонецЕсли; Если СтрНайти(Подстрока, "дддд") > 0 ИЛИ СтрНайти(Подстрока, "dddd") > 0 Тогда ТекстПредупреждения = ТекстПредупреждения + Символы.ПС - + НСтр("ru = 'Полное название дня недели не поддерживается в полях ввода.'"); + + " - " + НСтр("ru = 'полное название дня недели'"); КонецЕсли; Если СтрНайти(Подстрока, "МММ") > 0 ИЛИ СтрНайти(Подстрока, "MMM") > 0 Тогда ТекстПредупреждения = ТекстПредупреждения + Символы.ПС - + НСтр("ru = 'Кратное название месяца не поддерживается в полях ввода.'"); + + " - " + НСтр("ru = 'кратное название месяца'"); КонецЕсли; Если СтрНайти(Подстрока, "ММММ") > 0 ИЛИ СтрНайти(Подстрока, "MMMM") > 0 Тогда ТекстПредупреждения = ТекстПредупреждения + Символы.ПС - + НСтр("ru = 'Полное название месяца не поддерживается в полях ввода.'"); + + " - " + НСтр("ru = 'полное название месяца'"); КонецЕсли; КонецЕсли; Если СтрНайти(Подстрока, "ДЛФ=") > 0 ИЛИ СтрНайти(Подстрока, "DLF=") > 0 Тогда Если СтрНайти(Подстрока, "ДД") > 0 ИЛИ СтрНайти(Подстрока, "DD") > 0 Тогда ТекстПредупреждения = ТекстПредупреждения + Символы.ПС - + НСтр("ru = 'Длинная дата (месяц прописью) не поддерживается в полях ввода.'"); + + " - " + НСтр("ru = 'длинная дата (месяц прописью)'"); КонецЕсли; КонецЕсли; КонецЦикла; - Если ЗначениеЗаполнено(ТекстПредупреждения) Тогда - ТекстПредупреждения = ТекстПредупреждения + Символы.ПС - + НСтр("ru = 'В местах использования полей надписей ограничений нет.'"); + Если СтрЧислоСтрок(ТекстПредупреждения) > 1 Тогда ПоказатьПредупреждение(, ТекстПредупреждения); КонецЕсли; КонецЕсли; @@ -1392,10 +1448,12 @@ Элементы.ГруппаЗаголовкиФормЗначений.Видимость = Истина; Элементы.ДополнительныеЗначенияСВесом.Видимость = Истина; Элементы.СтраницаЗначения.Видимость = Истина; + Элементы.Страницы.ОтображениеСтраниц = ОтображениеСтраницФормы.ЗакладкиСверху; Иначе Элементы.ГруппаЗаголовкиФормЗначений.Видимость = Ложь; Элементы.ДополнительныеЗначенияСВесом.Видимость = Ложь; Элементы.СтраницаЗначения.Видимость = Ложь; + Элементы.Страницы.ОтображениеСтраниц = ОтображениеСтраницФормы.Нет; КонецЕсли; Элементы.Значения.Шапка = ЗначенияСВесом; @@ -1432,13 +1490,21 @@ Объект.ВладелецДополнительныхЗначений, "НаборСвойств, Заголовок, ЭтоДополнительноеСведение"); Если СвойстваВладельца.ЭтоДополнительноеСведение <> Истина Тогда - ШаблонУточнения = НСтр("ru = 'Список значений общий с реквизитом ""%1"" набора ""%2""'"); + ШаблонУточнения = НСтр("ru = 'Список значений общий с реквизитом ""%1""'"); Иначе - ШаблонУточнения = НСтр("ru = 'Список значений общий со сведением ""%1"" набора ""%2""'"); + ШаблонУточнения = НСтр("ru = 'Список значений общий со сведением ""%1""'"); + КонецЕсли; + + Если ЗначениеЗаполнено(СвойстваВладельца.НаборСвойств) Тогда + ШаблонУточненияНабор = " " + НСтр("ru = 'набора ""%1""'"); + ШаблонУточненияНабор = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонУточненияНабор, Строка(СвойстваВладельца.НаборСвойств)); + Иначе + ШаблонУточненияНабор = ""; КонецЕсли; Элементы.УточнениеСпискаЗначенийКомментарий.Заголовок = - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонУточнения, СвойстваВладельца.Заголовок, Строка(СвойстваВладельца.НаборСвойств)) + " "; + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонУточнения, СвойстваВладельца.Заголовок) + + ШаблонУточненияНабор + " "; КонецЕсли; ОбновитьСписокНаборов(); @@ -1450,8 +1516,7 @@ Элементы.УточнениеНаборов.Видимость = Ложь; Иначе Элементы.УточнениеНаборов.Видимость = Истина; - Элементы.УточнениеНаборовКомментарий.Гиперссылка = - ЗначениеЗаполнено(Объект.Ссылка) И ЗначениеЗаполнено(ТекущийНаборСвойств); + Элементы.УточнениеНаборовКомментарий.Гиперссылка = Истина; Элементы.УточнениеНаборовИзменить.Доступность = ЗначениеЗаполнено(Объект.Ссылка); @@ -1872,6 +1937,7 @@ Процедура ОбновитьСписокСвойствТекущегоНабора() Запрос = Новый Запрос; + Если Не Элементы.ОбщиеРеквизитыНеВключенныеВНаборы.Пометка Тогда Запрос.УстановитьПараметр("Набор", ВыбранныйНаборСвойств); Запрос.Текст = @@ -2073,49 +2139,6 @@ КонецПроцедуры -&НаСервере -Процедура ЗаполнитьЗначенияДополнительныхРеквизитов(ВладелецЗначений) - - ДеревоЗначений = РеквизитФормыВЗначение("ЗначенияДополнительныхРеквизитов"); - - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | ЗначенияСвойствОбъектов.Ссылка КАК Ссылка, - | ЗначенияСвойствОбъектов.Владелец КАК Владелец, - | 0 КАК КодКартинки, - | ЗначенияСвойствОбъектов.Вес, - | ЗначенияСвойствОбъектов.Наименование - |ИЗ - | Справочник.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов - |ГДЕ - | ЗначенияСвойствОбъектов.ПометкаУдаления = ЛОЖЬ - | И ЗначенияСвойствОбъектов.Владелец = &Владелец - | - |ОБЪЕДИНИТЬ ВСЕ - | - |ВЫБРАТЬ - | ЗначенияСвойствОбъектовИерархия.Ссылка, - | ЗначенияСвойствОбъектовИерархия.Владелец, - | 0, - | ЗначенияСвойствОбъектовИерархия.Вес, - | ЗначенияСвойствОбъектовИерархия.Наименование - |ИЗ - | Справочник.ЗначенияСвойствОбъектовИерархия КАК ЗначенияСвойствОбъектовИерархия - |ГДЕ - | ЗначенияСвойствОбъектовИерархия.ПометкаУдаления = ЛОЖЬ - | И ЗначенияСвойствОбъектовИерархия.Владелец = &Владелец - | - |УПОРЯДОЧИТЬ ПО - | Ссылка ИЕРАРХИЯ"; - Запрос.УстановитьПараметр("Владелец", ВладелецЗначений); - Результат = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией); - - ДеревоЗначений = Результат.Скопировать(); - ЗначениеВРеквизитФормы(ДеревоЗначений, "ЗначенияДополнительныхРеквизитов"); - -КонецПроцедуры - &НаСервереБезКонтекста Функция НаименованиеУжеИспользуется(Знач Заголовок, Знач ТекущееСвойство, Знач НаборСвойств, НовоеНаименование) diff --git a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/ObjectModule.bsl b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/ObjectModule.bsl index 3468bdd3f..383b66dbd 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/ObjectModule.bsl +++ b/SSL/src/ChartsOfCharacteristicTypes/ДополнительныеРеквизитыИСведения/ObjectModule.bsl @@ -73,7 +73,7 @@ КонецЦикла; КонецЕсли; - // Проверка, что изменение пометки удаления произведено не из списка + // Проверка, что изменение пометки удаления произведено не из списка. // Наборы дополнительных реквизитов и сведений. СвойстваОбъекта = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Ссылка, "ПометкаУдаления"); Запрос = Новый Запрос; @@ -109,13 +109,6 @@ НаборСвойствОбъект.Записать(); КонецЦикла; - // Для общих реквизитов зависимости очищаются. - Если Не ЭтоДополнительноеСведение - И Не ЗначениеЗаполнено(НаборСвойств) - И ЗависимостиДополнительныхРеквизитов.Количество() > 0 Тогда - ЗависимостиДополнительныхРеквизитов.Очистить(); - КонецЕсли; - КонецПроцедуры Процедура ПередУдалением(Отказ) diff --git a/SSL/src/ChartsOfCharacteristicTypes/ОбъектыАдресацииЗадач/Forms/ФормаСписка/Form.form b/SSL/src/ChartsOfCharacteristicTypes/ОбъектыАдресацииЗадач/Forms/ФормаСписка/Form.form index 276df7ceb..fb601376d 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ОбъектыАдресацииЗадач/Forms/ФормаСписка/Form.form +++ b/SSL/src/ChartsOfCharacteristicTypes/ОбъектыАдресацииЗадач/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 17 @@ -301,7 +300,6 @@ 2 true - 50 true true true diff --git a/SSL/src/ChartsOfCharacteristicTypes/ОбъектыАдресацииЗадач/ОбъектыАдресацииЗадач.mdo b/SSL/src/ChartsOfCharacteristicTypes/ОбъектыАдресацииЗадач/ОбъектыАдресацииЗадач.mdo index 21f7469c8..fdfc66aae 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/ОбъектыАдресацииЗадач/ОбъектыАдресацииЗадач.mdo +++ b/SSL/src/ChartsOfCharacteristicTypes/ОбъектыАдресацииЗадач/ОбъектыАдресацииЗадач.mdo @@ -116,7 +116,10 @@ Объект адресации задач - CatalogRef.Организации + String + + 10 + true 100 @@ -126,7 +129,10 @@ ВсеОбъектыАдресации Все объекты адресации - CatalogRef.Организации + String + + 10 + diff --git a/SSL/src/ChartsOfCharacteristicTypes/РазделыДатЗапретаИзменения/ObjectModule.bsl b/SSL/src/ChartsOfCharacteristicTypes/РазделыДатЗапретаИзменения/ObjectModule.bsl index 1fa98d355..4d633bff7 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/РазделыДатЗапретаИзменения/ObjectModule.bsl +++ b/SSL/src/ChartsOfCharacteristicTypes/РазделыДатЗапретаИзменения/ObjectModule.bsl @@ -7,8 +7,13 @@ // Процедура ПередЗаписью(Отказ) - Если Предопределенный И ОбменДанными.Загрузка Тогда - ЗаполнитьЗначенияСвойств(ЭтотОбъект, ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Ссылка, "ТипЗначения, Наименование")); + Если Предопределенный + И ОбменДанными.Загрузка + И ОбменДанными.Отправитель <> Неопределено + И Не ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда + + ЗаполнитьЗначенияСвойств(ЭтотОбъект, + ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Ссылка, "ТипЗначения, Наименование")); КонецЕсли; Если ОбменДанными.Загрузка Тогда @@ -25,4 +30,4 @@ #КонецОбласти -#КонецЕсли \ No newline at end of file +#КонецЕсли diff --git a/SSL/src/ChartsOfCharacteristicTypes/УдалитьВидыДоступа/УдалитьВидыДоступа.mdo b/SSL/src/ChartsOfCharacteristicTypes/УдалитьВидыДоступа/УдалитьВидыДоступа.mdo index 05b07e6cc..1634de375 100644 --- a/SSL/src/ChartsOfCharacteristicTypes/УдалитьВидыДоступа/УдалитьВидыДоступа.mdo +++ b/SSL/src/ChartsOfCharacteristicTypes/УдалитьВидыДоступа/УдалитьВидыДоступа.mdo @@ -110,7 +110,6 @@ CatalogRef.ГруппыПользователей ChartOfCharacteristicTypesRef.ДополнительныеРеквизитыИСведения CatalogRef.Пользователи - CatalogRef.Организации CatalogRef.УчетныеЗаписиЭлектроннойПочты true @@ -137,7 +136,13 @@ Организации Организации - CatalogRef.Организации + CatalogRef.ПапкиФайлов + CatalogRef.ВнешниеПользователи + CatalogRef.ГруппыВнешнихПользователей + CatalogRef.ГруппыПользователей + ChartOfCharacteristicTypesRef.ДополнительныеРеквизитыИСведения + CatalogRef.Пользователи + CatalogRef.УчетныеЗаписиЭлектроннойПочты diff --git a/SSL/src/CommandGroups/Взаимодействия/Взаимодействия.mdo b/SSL/src/CommandGroups/Взаимодействия/Взаимодействия.mdo index 70adf9480..a153c1b8e 100644 --- a/SSL/src/CommandGroups/Взаимодействия/Взаимодействия.mdo +++ b/SSL/src/CommandGroups/Взаимодействия/Взаимодействия.mdo @@ -1,10 +1,13 @@ - + Взаимодействия ru Взаимодействия - Auto + Picture + + CommonPicture.ОтветитьНаЭлектронноеПисьмоВсем + FormCommandBar diff --git a/SSL/src/CommonAttributes/ОбластьДанныхВспомогательныеДанные/ОбластьДанныхВспомогательныеДанные.mdo b/SSL/src/CommonAttributes/ОбластьДанныхВспомогательныеДанные/ОбластьДанныхВспомогательныеДанные.mdo index 1b4c494ae..2874e7eec 100644 --- a/SSL/src/CommonAttributes/ОбластьДанныхВспомогательныеДанные/ОбластьДанныхВспомогательныеДанные.mdo +++ b/SSL/src/CommonAttributes/ОбластьДанныхВспомогательныеДанные/ОбластьДанныхВспомогательныеДанные.mdo @@ -16,54 +16,26 @@ Use - - InformationRegister.ЗамерыКомментарииСтатистики - DontUse - - - InformationRegister.СтатистикаКонфигурации - DontUse - Catalog.СообщенияОбластейДанных Use - - Constant.ВыполнятьЗамерыПроизводительности - DontUse - ScheduledJob.РассылкаОтчетов Use - - InformationRegister.ЗамерыВремениТехнологические - DontUse - InformationRegister.РейтингАктивностиОбластейДанных Use - - Catalog.КлючевыеОперации - DontUse - Constant.ДатаПоследнегоСтартаКлиентскогоСеанса Use - - Constant.ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC - DontUse - InformationRegister.ОбластиДанных Use - - InformationRegister.УдалитьВерсииПодсистем - DontUse - Constant.ОтложенноеОбновлениеЗавершеноУспешно Use @@ -72,26 +44,10 @@ InformationRegister.ОчередьИзвлеченияТекста Use - - Catalog.ОчередьЗаданий - DontUse - - - InformationRegister.ЗамерыОбластиСтатистики - DontUse - InformationRegister.СостоянияКонтрагентов Use - - DocumentJournal.Взаимодействия - DontUse - - - ScheduledJob.ЭкспортОценкиПроизводительности - DontUse - Constant.ПрефиксОбластиДанных Use @@ -104,34 +60,6 @@ Constant.СведенияОБлокируемыхОбъектах Use - - Constant.ОценкаПроизводительностиПериодЗаписи - DontUse - - - InformationRegister.ОбластиСтатистики - DontUse - - - InformationRegister.УдалитьЗамерыВремени - DontUse - - - ScheduledJob.СборИОтправкаСтатистики - DontUse - - - Constant.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций - DontUse - - - InformationRegister.БуферОперацийСтатистики - DontUse - - - Constant.ПараметрыЦентраМониторинга - DontUse - Constant.СведенияОбОбновленииИБ Use @@ -140,46 +68,18 @@ InformationRegister.ВерсииПодсистемОбластейДанных Use - - InformationRegister.УдалитьСтраныМира - DontUse - - - InformationRegister.ДампыПлатформы - DontUse - - - InformationRegister.ЗамерыОперацииСтатистики - DontUse - Constant.ПредставлениеОбластиДанных Use - - InformationRegister.КомментарииСтатистики - DontUse - Constant.ВыполнитьРезервноеКопированиеОбластиДанных Use - - InformationRegister.ОперацииСтатистики - DontUse - Catalog.ОчередьЗаданийОбластейДанных Use - - InformationRegister.КомментарииОперацииСтатистики - DontUse - - - InformationRegister.ПакетыДляОтправки - DontUse - InformationRegister.БлокировкиСеансовОбластейДанных Use diff --git a/SSL/src/CommonAttributes/ОбластьДанныхОсновныеДанные/ОбластьДанныхОсновныеДанные.mdo b/SSL/src/CommonAttributes/ОбластьДанныхОсновныеДанные/ОбластьДанныхОсновныеДанные.mdo index 525be9a9e..26db1e965 100644 --- a/SSL/src/CommonAttributes/ОбластьДанныхОсновныеДанные/ОбластьДанныхОсновныеДанные.mdo +++ b/SSL/src/CommonAttributes/ОбластьДанныхОсновныеДанные/ОбластьДанныхОсновныеДанные.mdo @@ -76,6 +76,10 @@ ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения DontUse + + Constant.ПериодХраненияЗамеров + DontUse + Constant.НастройкаПроксиСервера DontUse @@ -109,8 +113,8 @@ DontUse - ScheduledJob.РассылкаОтчетов - Use + Constant.ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков + DontUse Constant.ПрофильБезопасностиИнформационнойБазы @@ -121,7 +125,11 @@ DontUse - InformationRegister.ЗамерыВремениТехнологические + Constant.ПараметрыПодключаемыхКоманд + DontUse + + + InformationRegister.УдалитьЗамерыВремениТехнологические DontUse @@ -272,6 +280,10 @@ Constant.ИзвлекатьТекстыФайловНаСервере DontUse + + Constant.КоличествоЗамеровВПакетеЭкспорта + DontUse + ScheduledJob.ОтложенноеОбновлениеИБ DontUse @@ -360,6 +372,10 @@ InformationRegister.УдалитьОчередьИзвлеченияТекста DontUse + + ScheduledJob.ОбновлениеСтатусовДоставкиSMS + DontUse + ScheduledJob.ЭкспортОценкиПроизводительности DontUse @@ -372,6 +388,10 @@ Constant.ПрефиксОбластиДанных DontUse + + InformationRegister.ЗамерыВремени + DontUse + Constant.ЧасовойПоясОбластиДанных DontUse @@ -388,6 +408,10 @@ ScheduledJob.ПланированиеОбработкиЗаданий DontUse + + Constant.ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют + DontUse + Constant.ИспользоватьПолнотекстовыйПоиск DontUse @@ -416,6 +440,10 @@ Constant.КаталогСообщенийОбменаДаннымиДляLinux DontUse + + ScheduledJob.СтартОтложенныхПроцессов + DontUse + Constant.КонечнаяТочкаМенеджераСервиса DontUse @@ -460,6 +488,10 @@ Constant.ПараметрыОграниченияДоступа DontUse + + ScheduledJob.ОчисткаЗамеровВремени + DontUse + Constant.ИспользоватьНесколькоПроизводственныхКалендарей DontUse @@ -509,7 +541,7 @@ DontUse - InformationRegister.ЗамерыВремени + InformationRegister.УдалитьЗамерыВремени2 DontUse @@ -520,10 +552,6 @@ Constant.РазмерБлокаПередачиФайла DontUse - - Constant.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций - DontUse - Constant.СообщениеОбменаДаннымиИзГлавногоУзла DontUse @@ -544,6 +572,14 @@ ScheduledJob.УведомлениеИсполнителейОНовыхЗадачах DontUse + + ScheduledJob.ОтправкаSMS + DontUse + + + InformationRegister.ЗамерыВремениТехнологические + DontUse + Constant.ИспользоватьРазделениеПоОбластямДанных DontUse diff --git a/SSL/src/CommonCommands/Запустить1СБухфон/Запустить1СБухфон.mdo b/SSL/src/CommonCommands/Запустить1СБухфон/Запустить1СБухфон.mdo index c13c92438..95c9abe19 100644 --- a/SSL/src/CommonCommands/Запустить1СБухфон/Запустить1СБухфон.mdo +++ b/SSL/src/CommonCommands/Запустить1СБухфон/Запустить1СБухфон.mdo @@ -6,7 +6,6 @@ Связаться со специалистом онлайн-поддержки FormCommandBarImportant - Auto ru Мгновенное соединение со специалистом онлайн-поддержки diff --git a/SSL/src/CommonCommands/Напомнить/CommandModule.bsl b/SSL/src/CommonCommands/Напомнить/CommandModule.bsl index 4d7b5d0fd..7ff8ae87d 100644 --- a/SSL/src/CommonCommands/Напомнить/CommandModule.bsl +++ b/SSL/src/CommonCommands/Напомнить/CommandModule.bsl @@ -3,56 +3,8 @@ &НаКлиенте Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) - - КлючЗаписи = ПолучитьКлючЗаписиПоИсточнику(ПараметрКоманды); - Если КлючЗаписи <> Неопределено Тогда - ПараметрыФормы = Новый Структура("Ключ", КлючЗаписи); - Иначе - ПараметрыФормы = Новый Структура("Источник", ПараметрКоманды); - КонецЕсли; + ПараметрыФормы = Новый Структура("Источник", ПараметрКоманды); ОткрытьФорму("РегистрСведений.НапоминанияПользователя.Форма.Напоминание", ПараметрыФормы, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно); - КонецПроцедуры #КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -&НаСервере -Функция ПолучитьКлючЗаписиПоИсточнику(Источник) - - УстановитьПривилегированныйРежим(Истина); - - Запрос = Новый Запрос; - - ТекстЗапроса = - "ВЫБРАТЬ ПЕРВЫЕ 1 - | НапоминанияПользователя.Пользователь, - | НапоминанияПользователя.ВремяСобытия, - | НапоминанияПользователя.Источник - |ИЗ - | РегистрСведений.НапоминанияПользователя КАК НапоминанияПользователя - |ГДЕ - | НапоминанияПользователя.Пользователь = &Пользователь - | И НапоминанияПользователя.Источник = &Источник"; - - Запрос.УстановитьПараметр("Пользователь", Пользователи.ТекущийПользователь()); - Запрос.УстановитьПараметр("Источник", Источник); - - Запрос.Текст = ТекстЗапроса; - Выборка = Запрос.Выполнить().Выбрать(); - - ПараметрыНапоминания = Новый Структура("Пользователь,Источник,ВремяСобытия"); - - Результат = Неопределено; - Если Выборка.Следующий() Тогда - ЗаполнитьЗначенияСвойств(ПараметрыНапоминания, Выборка); - Результат = РегистрыСведений.НапоминанияПользователя.СоздатьКлючЗаписи(ПараметрыНапоминания); - КонецЕсли; - - УстановитьПривилегированныйРежим(Ложь); - - Возврат Результат; -КонецФункции - -#КонецОбласти diff --git a/SSL/src/CommonCommands/СинхронизацияДанных/CommandModule.bsl b/SSL/src/CommonCommands/НастройкиСинхронизацииДанных/CommandModule.bsl similarity index 100% rename from SSL/src/CommonCommands/СинхронизацияДанных/CommandModule.bsl rename to SSL/src/CommonCommands/НастройкиСинхронизацииДанных/CommandModule.bsl diff --git a/SSL/src/CommonCommands/СинхронизацияДанных/СинхронизацияДанных.mdo b/SSL/src/CommonCommands/НастройкиСинхронизацииДанных/НастройкиСинхронизацииДанных.mdo similarity index 67% rename from SSL/src/CommonCommands/СинхронизацияДанных/СинхронизацияДанных.mdo rename to SSL/src/CommonCommands/НастройкиСинхронизацииДанных/НастройкиСинхронизацииДанных.mdo index ecd553d2c..f6bf0c58e 100644 --- a/SSL/src/CommonCommands/СинхронизацияДанных/СинхронизацияДанных.mdo +++ b/SSL/src/CommonCommands/НастройкиСинхронизацииДанных/НастройкиСинхронизацииДанных.mdo @@ -1,9 +1,9 @@ - СинхронизацияДанных + НастройкиСинхронизацииДанных ru - Синхронизация данных + Настройки синхронизации данных NavigationPanelOrdinary Auto diff --git a/SSL/src/CommonCommands/ОтправитьSMS/CommandModule.bsl b/SSL/src/CommonCommands/ОтправитьSMS/CommandModule.bsl new file mode 100644 index 000000000..555bb3552 --- /dev/null +++ b/SSL/src/CommonCommands/ОтправитьSMS/CommandModule.bsl @@ -0,0 +1,11 @@ +#Область ОбработчикиСобытий + +&НаКлиенте +Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) + ПараметрыФормы = Новый Структура("ВидСообщения, Предмет"); + ПараметрыФормы.ВидСообщения = "СообщениеSMS"; + ПараметрыФормы.Предмет = ПараметрКоманды; + ОткрытьФорму("Справочник.ШаблоныСообщений.Форма.СформироватьСообщение", ПараметрыФормы, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно, ПараметрыВыполненияКоманды.НавигационнаяСсылка); +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/CommonCommands/ОтправитьSMS/ОтправитьSMS.mdo b/SSL/src/CommonCommands/ОтправитьSMS/ОтправитьSMS.mdo new file mode 100644 index 000000000..74cc22129 --- /dev/null +++ b/SSL/src/CommonCommands/ОтправитьSMS/ОтправитьSMS.mdo @@ -0,0 +1,13 @@ + + + ОтправитьSMS + + ru + Отправить SMS... + + CommandGroup.Органайзер + + DefinedType.ПредметШаблонаСообщения + + Auto + diff --git a/SSL/src/CommonCommands/ОтправитьПисьмо/CommandModule.bsl b/SSL/src/CommonCommands/ОтправитьПисьмо/CommandModule.bsl new file mode 100644 index 000000000..26ea66b19 --- /dev/null +++ b/SSL/src/CommonCommands/ОтправитьПисьмо/CommandModule.bsl @@ -0,0 +1,11 @@ +#Область ОбработчикиСобытий + +&НаКлиенте +Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) + ПараметрыФормы = Новый Структура("ВидСообщения, Предмет"); + ПараметрыФормы.ВидСообщения = "Письмо"; + ПараметрыФормы.Предмет = ПараметрКоманды; + ОткрытьФорму("Справочник.ШаблоныСообщений.Форма.СформироватьСообщение", ПараметрыФормы, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно, ПараметрыВыполненияКоманды.НавигационнаяСсылка); +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/CommonCommands/ОтправитьПисьмо/ОтправитьПисьмо.mdo b/SSL/src/CommonCommands/ОтправитьПисьмо/ОтправитьПисьмо.mdo new file mode 100644 index 000000000..4dc109e06 --- /dev/null +++ b/SSL/src/CommonCommands/ОтправитьПисьмо/ОтправитьПисьмо.mdo @@ -0,0 +1,13 @@ + + + ОтправитьПисьмо + + ru + Отправить письмо... + + CommandGroup.Органайзер + + DefinedType.ПредметШаблонаСообщения + + Auto + diff --git a/SSL/src/CommonCommands/ПредупрежденияПриЗавершенииРаботы/CommandModule.bsl b/SSL/src/CommonCommands/ПредупрежденияПриЗавершенииРаботы/CommandModule.bsl new file mode 100644 index 000000000..9d0b227b5 --- /dev/null +++ b/SSL/src/CommonCommands/ПредупрежденияПриЗавершенииРаботы/CommandModule.bsl @@ -0,0 +1,26 @@ + +#Область ОбработчикиСобытий + +&НаКлиенте +Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) + + Параметры = Новый Структура; + + // Внешние параметры описания результата. + Параметры.Вставить("Отказ", Ложь); + Параметры.Вставить("Предупреждения", СтандартныеПодсистемыКлиент.ПараметрКлиента("ПредупрежденияПриЗавершенииРаботы")); + + // Внешние параметры управления выполнением. + Параметры.Вставить("ИнтерактивнаяОбработка", Неопределено); // ОписаниеОповещения. + Параметры.Вставить("ОбработкаПродолжения", Неопределено); // ОписаниеОповещения. + Параметры.Вставить("НепрерывноеВыполнение", Истина); + + // Внутренние параметры. + Параметры.Вставить("ОбработкаЗавершения", Новый ОписаниеОповещения( + "ДействияПередЗавершениемРаботыСистемыОбработкаЗавершения", СтандартныеПодсистемыКлиент, Параметры)); + + СтандартныеПодсистемыКлиент.ДействияПередЗавершениемРаботыСистемы(Параметры); + +КонецПроцедуры + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonCommands/ПредупрежденияПриЗавершенииРаботы/ПредупрежденияПриЗавершенииРаботы.mdo b/SSL/src/CommonCommands/ПредупрежденияПриЗавершенииРаботы/ПредупрежденияПриЗавершенииРаботы.mdo new file mode 100644 index 000000000..62e7514e0 --- /dev/null +++ b/SSL/src/CommonCommands/ПредупрежденияПриЗавершенииРаботы/ПредупрежденияПриЗавершенииРаботы.mdo @@ -0,0 +1,10 @@ + + + ПредупрежденияПриЗавершенииРаботы + + ru + Предупреждения при завершении работы + + NavigationPanelOrdinary + Auto + diff --git a/SSL/src/CommonForms/АвторизацияНаСайтеПоддержкиПользователей/Help/ru.html b/SSL/src/CommonForms/АвторизацияНаСайтеПоддержкиПользователей/Help/ru.html deleted file mode 100644 index c03ad68df..000000000 --- a/SSL/src/CommonForms/АвторизацияНаСайтеПоддержкиПользователей/Help/ru.html +++ /dev/null @@ -1,7 +0,0 @@ - -

      Для доступа к онлайн-ресурсам "1С" необходимо ввести регистрационные данные, полученные на сайте поддержки пользователей 1С:Предприятия:

      -
      • Введите Логин; -
      • Введите Пароль. -
      • Для того чтобы больше не вводить эти данные в дальнейшем, включите флажок Запомнить пароль. -
      • Для того чтобы получить доступ к онлайн-ресурсам "1С", щелкните по ссылке Перейти к регистрации на сайте поддержки пользователей. -
      • Для авторизации на сайте поддержки и возврата в программу нажмите Продолжить.
      \ No newline at end of file diff --git a/SSL/src/CommonForms/АвторизацияНаСайтеПоддержкиПользователей/Module.bsl b/SSL/src/CommonForms/АвторизацияНаСайтеПоддержкиПользователей/Module.bsl deleted file mode 100644 index 2f3376668..000000000 --- a/SSL/src/CommonForms/АвторизацияНаСайтеПоддержкиПользователей/Module.bsl +++ /dev/null @@ -1,101 +0,0 @@ -#Область ОбработчикиСобытийФормы - -&НаСервере -Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - - Если Параметры.Свойство("АвтоТест") Тогда - Возврат; - КонецЕсли; - - Аутентификация = СтандартныеПодсистемыСервер.ПараметрыАутентификацииНаСайте(); - Если Аутентификация <> Неопределено Тогда - Логин = Аутентификация.Логин; - Если ЗначениеЗаполнено(Аутентификация.Пароль) Тогда - Пароль = ЭтотОбъект.УникальныйИдентификатор; - КонецЕсли; - КонецЕсли; - - Если Параметры.ЗапомнитьПароль Тогда - Элементы.ЗапомнитьПароль.Видимость = Ложь; - ЗапомнитьПароль = Истина; - Иначе - ЗапомнитьПароль = Не ПустаяСтрока(Пароль); - КонецЕсли; - -КонецПроцедуры - -#КонецОбласти - -#Область ОбработчикиСобытийЭлементовШапкиФормы - -&НаКлиенте -Процедура ПерейтиКРегистрацииНаСайтеНажатие(Элемент) - - ПерейтиПоНавигационнойСсылке("http://users.v8.1c.ru/"); - -КонецПроцедуры - -&НаКлиенте -Процедура ПарольПриИзменении(Элемент) - ПарольИзменен = Истина; -КонецПроцедуры - -#КонецОбласти - -#Область ОбработчикиКомандФормы - -&НаКлиенте -Процедура СохранитьДанныеАутентификацииИПродолжить() - - Если ПустаяСтрока(Логин) И Не ПустаяСтрока(Пароль) Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Введите код пользователя для авторизации на сайте фирмы ""1С"".'"),, "Логин"); - Возврат; - КонецЕсли; - - Если ПустаяСтрока(Логин) Тогда - СохранитьДанныеАутентификации(Неопределено, Ложь, Ложь); - Результат = КодВозвратаДиалога.Отмена; - Иначе - ОписаниеОшибки = ""; - ЛогинИПароль = Новый Структура("Логин,Пароль", Логин, Пароль); - СохранитьДанныеАутентификации(ЛогинИПароль, ПарольИзменен, ЗапомнитьПароль, ОписаниеОшибки); - - Если НЕ ПустаяСтрока(ОписаниеОшибки) Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ОписаниеОшибки,, "Логин"); - Возврат; - КонецЕсли; - Результат = Новый Структура("Логин,Пароль", ЛогинИПароль.Логин, ЛогинИПароль.Пароль); - КонецЕсли; - Закрыть(Результат); - -КонецПроцедуры - -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -&НаСервереБезКонтекста -Процедура СохранитьДанныеАутентификации(Аутентификация, ПарольИзменен, ЗапомнитьПароль, ОписаниеОшибки = "") - - Если Аутентификация = Неопределено Тогда - СтандартныеПодсистемыСервер.СохранитьПараметрыАутентификацииНаСайте(Аутентификация); - Возврат; - КонецЕсли; - - Если НЕ ПарольИзменен Тогда - ПредыдущаяАутентификация = СтандартныеПодсистемыСервер.ПараметрыАутентификацииНаСайте(); - Если ПредыдущаяАутентификация <> Неопределено Тогда - Аутентификация.Пароль = ПредыдущаяАутентификация.Пароль; - КонецЕсли; - КонецЕсли; - - Если ЗапомнитьПароль Тогда - СтандартныеПодсистемыСервер.СохранитьПараметрыАутентификацииНаСайте(Аутентификация); - Иначе - АутентификацияДляСохранения = Новый Структура("Логин, Пароль", Аутентификация.Логин, Неопределено); - СтандартныеПодсистемыСервер.СохранитьПараметрыАутентификацииНаСайте(АутентификацияДляСохранения); - КонецЕсли; - -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/CommonForms/АвторизацияНаСайтеПоддержкиПользователей/АвторизацияНаСайтеПоддержкиПользователей.mdo b/SSL/src/CommonForms/АвторизацияНаСайтеПоддержкиПользователей/АвторизацияНаСайтеПоддержкиПользователей.mdo deleted file mode 100644 index 6fd7fd469..000000000 --- a/SSL/src/CommonForms/АвторизацияНаСайтеПоддержкиПользователей/АвторизацияНаСайтеПоддержкиПользователей.mdo +++ /dev/null @@ -1,16 +0,0 @@ - - - АвторизацияНаСайтеПоддержкиПользователей - - ru - Авторизация на сайте поддержки пользователей - - - - ru - - - PersonalComputer - MobileDevice - true - diff --git a/SSL/src/CommonForms/АдреснаяКнига/Form.form b/SSL/src/CommonForms/АдреснаяКнига/Form.form index 3fc995234..574218274 100644 --- a/SSL/src/CommonForms/АдреснаяКнига/Form.form +++ b/SSL/src/CommonForms/АдреснаяКнига/Form.form @@ -385,7 +385,7 @@ true true true - true + 5 true MultiRow
      true
      @@ -933,7 +933,7 @@ true true true - true + 5 true Row 1 @@ -1131,6 +1131,7 @@ true true true + 6 true MultiRow
      true
      @@ -1285,10 +1286,10 @@ Form.Command.ПереместитьИзСпискаВВыбранное Normal Auto - 3 - true - true UserCmds + + System.DefaultGUIFont + Auto
      @@ -1343,7 +1344,6 @@ Form.Command.ПереместитьИзВыбранногоВСписокВсе Normal Auto - 3 true true UserCmds @@ -1371,7 +1371,6 @@ Form.Command.ПереместитьИзВыбранногоВСписок Normal Auto - 3 true true UserCmds @@ -1554,6 +1553,9 @@ true true UserCmds + + Style.NormalTextFont + Auto @@ -1710,11 +1712,8 @@ ru Страницы переместить - - ru - Страницы переместить - - 3 + 5 + false СтраницыПереместитьExtendedTooltip 209 @@ -2430,11 +2429,6 @@ ru Группа получатели - - ru - Группа получатели - - true ГруппаПолучателиExtendedTooltip 226 diff --git a/SSL/src/CommonForms/АдреснаяКнига/Module.bsl b/SSL/src/CommonForms/АдреснаяКнига/Module.bsl index de7f4ba4d..45e53f92f 100644 --- a/SSL/src/CommonForms/АдреснаяКнига/Module.bsl +++ b/SSL/src/CommonForms/АдреснаяКнига/Module.bsl @@ -60,6 +60,7 @@ ПараметрыОткрытия.Вставить("ТолькоТелефон", Ложь); ПараметрыОткрытия.Вставить("ЗаменятьПустыеАдресИПредставление", Истина); ПараметрыОткрытия.Вставить("ДляФормыУточненияКонтактов", Ложь); + ПараметрыОткрытия.Вставить("ИдентификаторФормы", УникальныйИдентификатор); ВзаимодействияКлиент.ВыбратьКонтакт(Предмет, ТекущиеДанные.Адрес, ТекущиеДанные.Представление, ТекущиеДанные.Контакт,ПараметрыОткрытия) diff --git a/SSL/src/CommonForms/АутентификацияВСервисе/Form.form b/SSL/src/CommonForms/АутентификацияВСервисе/Form.form index eb4191e99..b2d25ce58 100644 --- a/SSL/src/CommonForms/АутентификацияВСервисе/Form.form +++ b/SSL/src/CommonForms/АутентификацияВСервисе/Form.form @@ -28,7 +28,6 @@ true Label - true true Style.ПоясняющийТекст @@ -79,40 +78,11 @@ Normal - - ГруппаКнопки - 6 - - Декорация - 7 - true - true - - true - - - ДекорацияРасширеннаяПодсказка - 13 - Label - true - true - - Left - - - - ДекорацияКонтекстноеМеню - 8 - true - - Label - true - true - true - - Left - - + Bottom + true + + ФормаКоманднаяПанель + -1 ОК 5 @@ -131,7 +101,6 @@ Left
      - UsualButton Form.Command.ОК Auto true @@ -158,7 +127,6 @@ Left - UsualButton Form.Command.Отмена Normal Auto @@ -167,45 +135,7 @@ UserCmds Auto - true - true - - true - - - <key>ru</key> - <value>Группа кнопки</value> - - - ru - Группа кнопки - - - ГруппаКнопкиExtendedTooltip - 12 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - None - false - - ФормаКоманднаяПанель - -1 - Left - true + Right OnOpen diff --git a/SSL/src/CommonForms/АутентификацияВСервисе/Module.bsl b/SSL/src/CommonForms/АутентификацияВСервисе/Module.bsl index 1ea67373f..d211b0ac0 100644 --- a/SSL/src/CommonForms/АутентификацияВСервисе/Module.bsl +++ b/SSL/src/CommonForms/АутентификацияВСервисе/Module.bsl @@ -10,8 +10,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ОповеститьОВыборе(ПарольПользователяСервиса); КонецПроцедуры diff --git a/SSL/src/CommonForms/БлокировкаРаботыСВнешнимиРесурсами/Form.form b/SSL/src/CommonForms/БлокировкаРаботыСВнешнимиРесурсами/Form.form index eb09585ef..38dbaae85 100644 --- a/SSL/src/CommonForms/БлокировкаРаботыСВнешнимиРесурсами/Form.form +++ b/SSL/src/CommonForms/БлокировкаРаботыСВнешнимиРесурсами/Form.form @@ -4,33 +4,399 @@ ru Информационная база была перемещена или восстановлена из резервной копии - - НадписьПредупреждение - 1 - - <key>ru</key> - <value>Размещение информационной базы изменилось с + <items xsi:type="form:FormGroup"> + <name>ГруппаПараметрыФормы</name> + <id>18</id> + <items xsi:type="form:FormGroup"> + <name>ГруппаПринятиеРешенияОБлокировке</name> + <id>20</id> + <items xsi:type="form:Decoration"> + <name>НадписьПредупреждение</name> + <id>1</id> + <title> + <key>ru</key> + <value>Размещение информационной базы изменилось с %1 на %2 <link ЖурналРегистрации>Техническая</><link ЖурналРегистрации> информация о причине блокировки</> -* Если информационная база была перемещена, нажмите <b>Информационная база перемещена</>. -* Если это копия информационной базы, нажмите <b>Это копия информационной базы</><b>.</> +• Если информационная база была перемещена, нажмите <b>Информационная база перемещена</>. +• Если это копия информационной базы, нажмите <b>Это копия информационной базы</><b>.</> При этом работа со всеми внешними ресурсами (синхронизация данных, отправка почты и т.п.), выполняемая по расписанию, - будет заблокирована для предотвращения конфликтов с основой информационной базой. + будет заблокирована для предотвращения конфликтов с основной информационной базой. Блокировку также можно снять позднее в разделе <b>Администрирование</><b> - </><b>Поддержка и обслуживание</>.</value> - + + true + true + + true + + + НадписьПредупреждениеРасширеннаяПодсказка + 3 + Label + true + true + + Left + + + + НадписьПредупреждениеКонтекстноеМеню + 2 + true + + true + Label + true + + + URLProcessing + НадписьПредупреждениеОбработкаНавигационнойСсылки + + Left + + + + ГруппаКоманднаяПанель + 27 + + ИнформационнаяБазаПеремещена + 6 + true + true + + true + + + ИнформационнаяБазаПеремещенаРасширеннаяПодсказка + 7 + Label + true + true + + Left + + + Form.Command.ИнформационнаяБазаПеремещена + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + ЭтоКопияИнформационнойБазы + 8 + true + true + + true + + + ЭтоКопияИнформационнойБазыРасширеннаяПодсказка + 9 + Label + true + true + + Left + + + Form.Command.ЭтоКопияИнформационнойБазы + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + ФормаГруппаЕще + 14 + + ФормаПроверятьИмяСервера + 10 + true + true + + true + + + ФормаПроверятьИмяСервераРасширеннаяПодсказка + 11 + Label + true + true + + Left + + + Form.Command.ПроверятьИмяСервера + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + ФормаСправкаВГруппе + 12 + true + true + + true + + + ФормаСправкаВГруппеРасширеннаяПодсказка + 13 + Label + true + true + + Left + + + Form.StandardCommand.Help + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + true + true + + true + + + <key>ru</key> + <value>Еще</value> + + + ru + Форма группа еще + + + ФормаГруппаЕщеРасширеннаяПодсказка + 15 + Label + true + true + + Left + + + Popup + + Auto + Normal + + + + ФормаСправка + 16 + true + true + + true + + + ФормаСправкаРасширеннаяПодсказка + 17 + Label + true + true + + Left + + + Form.StandardCommand.Help + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + true + true + + true + + + ГруппаКоманднаяПанельРасширеннаяПодсказка + 28 + Label + true + true + + Left + + + CommandBar + + Center + + + true + true + + true + + + ГруппаПринятиеРешенияОБлокировкеРасширеннаяПодсказка + 21 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + ГруппаПараметрыБлокировки + 22 + + ГруппаКоманднаяПанельПараметры + 32 + + ЗаписатьИЗакрыть + 34 + true + true + + true + + + ЗаписатьИЗакрытьРасширеннаяПодсказка + 35 + Label + true + true + + Left + + + Form.Command.ЗаписатьИЗакрыть + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Группа командная панель параметры</value> + + + ru + Группа командная панель параметры + + + ГруппаКоманднаяПанельПараметрыРасширеннаяПодсказка + 33 + Label + true + true + + Left + + + CommandBar + + Left + + + + ПроверятьИмяСервера + 29 + true + true + + true + + + ПроверятьИмяСервера + + Right + ShowBottom + + ПроверятьИмяСервераРасширеннаяПодсказка + 31 + Label + true + true + + Left + + + + ПроверятьИмяСервераКонтекстноеМеню + 30 + true + + CheckBoxField + Enter + true + Left + true + + + true + true + + true + + + ГруппаПараметрыБлокировкиРасширеннаяПодсказка + 23 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + true true true - НадписьПредупреждениеРасширеннаяПодсказка - 3 + ГруппаПараметрыФормыРасширеннаяПодсказка + 19 Label true true @@ -38,21 +404,9 @@ Left - - НадписьПредупреждениеКонтекстноеМеню - 2 - true - - true - Label - true - true - - - URLProcessing - НадписьПредупреждениеОбработкаНавигационнойСсылки - - Left + Pages + + Auto Bottom @@ -60,171 +414,6 @@ ФормаКоманднаяПанель -1 - - ИнформационнаяБазаПеремещена - 6 - true - true - - true - - - ИнформационнаяБазаПеремещенаРасширеннаяПодсказка - 7 - Label - true - true - - Left - - - Form.Command.ИнформационнаяБазаПеремещена - Normal - Auto - true - true - UserCmds - Auto - - - ЭтоКопияИнформационнойБазы - 8 - true - true - - true - - - ЭтоКопияИнформационнойБазыРасширеннаяПодсказка - 9 - Label - true - true - - Left - - - Form.Command.ЭтоКопияИнформационнойБазы - Normal - Auto - true - true - UserCmds - Auto - - - ФормаГруппаЕще - 12 - - ФормаПроверятьИмяСервера - 14 - true - true - - true - - - ФормаПроверятьИмяСервераРасширеннаяПодсказка - 15 - Label - true - true - - Left - - - Form.Command.ПроверятьИмяСервера - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - ФормаСправкаВГруппе - 16 - true - true - - true - - - ФормаСправкаВГруппеРасширеннаяПодсказка - 17 - Label - true - true - - Left - - - Form.StandardCommand.Help - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - <key>ru</key> - <value>Еще</value> - - - ru - Форма группа еще - - - ФормаГруппаЕщеРасширеннаяПодсказка - 13 - Label - true - true - - Left - - - Popup - - Auto - Normal - - - - ФормаСправка - 18 - true - true - - true - - - ФормаСправкаРасширеннаяПодсказка - 19 - Label - true - true - - Left - - - Form.StandardCommand.Help - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - Center @@ -254,6 +443,23 @@ true + + ПроверятьИмяСервера + + <key>ru</key> + <value>Проверять имя сервера</value> + + 2 + + Boolean + + + true + + + true + + ИнформационнаяБазаПеремещена @@ -320,6 +526,35 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> + <formCommands> + <name>ЗаписатьИЗакрыть</name> + <title> + <key>ru</key> + <value>Записать и закрыть</value> + + 4 + + ru + Записать и закрыть + + + true + + + + ЗаписатьИЗакрыть + + + DontUse + Auto + + + ПринятиеРешенияОБлокировке + + Boolean + + true + diff --git a/SSL/src/CommonForms/БлокировкаРаботыСВнешнимиРесурсами/Module.bsl b/SSL/src/CommonForms/БлокировкаРаботыСВнешнимиРесурсами/Module.bsl index 9f3af9de3..5e46c81c9 100644 --- a/SSL/src/CommonForms/БлокировкаРаботыСВнешнимиРесурсами/Module.bsl +++ b/SSL/src/CommonForms/БлокировкаРаботыСВнешнимиРесурсами/Module.bsl @@ -8,80 +8,91 @@ СохраненныеПараметры = Константы.ПараметрыБлокировкиРаботыСВнешнимиРесурсами.Получить().Получить(); ПараметрыБлокировки = РегламентныеЗаданияСлужебный.ПараметрыБлокировкиРаботыСВнешнимиРесурсами(); ЗаполнитьЗначенияСвойств(ПараметрыБлокировки, СохраненныеПараметры); - ТекстСнятияБлокировки = РегламентныеЗаданияСлужебный.ЗначениеНастройки("РасположениеКомандыСнятияБлокировки"); - РазделениеВключено = ОбщегоНазначенияПовтИсп.РазделениеВключено(); - ИзменилосьРазделение = ПараметрыБлокировки.РазделениеВключено <> РазделениеВключено; - Если Не РазделениеВключено И Не ИзменилосьРазделение Тогда - СохраненнаяСтрокаСоединения = ПараметрыБлокировки.СтрокаСоединения; - ПараметрыСохраненнойСтрокиСоединения = СтроковыеФункцииКлиентСервер.ПолучитьПараметрыИзСтроки(СохраненнаяСтрокаСоединения); - Если ПараметрыСохраненнойСтрокиСоединения.Свойство("File") Тогда - СохраненнаяСтрокаСоединения = ПараметрыСохраненнойСтрокиСоединения.File; + Если Параметры.ПринятиеРешенияОБлокировке Тогда + + ТекстСнятияБлокировки = РегламентныеЗаданияСлужебный.ЗначениеНастройки("РасположениеКомандыСнятияБлокировки"); + РазделениеВключено = ОбщегоНазначенияПовтИсп.РазделениеВключено(); + ИзменилосьРазделение = ПараметрыБлокировки.РазделениеВключено <> РазделениеВключено; + + Если Не РазделениеВключено И Не ИзменилосьРазделение Тогда + СохраненнаяСтрокаСоединения = ПараметрыБлокировки.СтрокаСоединения; + ПараметрыСохраненнойСтрокиСоединения = СтроковыеФункцииКлиентСервер.ПолучитьПараметрыИзСтроки(СохраненнаяСтрокаСоединения); + Если ПараметрыСохраненнойСтрокиСоединения.Свойство("File") Тогда + СохраненнаяСтрокаСоединения = ПараметрыСохраненнойСтрокиСоединения.File; + КонецЕсли; + ТекущаяСтрокаСоединения = СтрокаСоединения; + ПараметрыТекущейСтрокиСоединения = СтроковыеФункцииКлиентСервер.ПолучитьПараметрыИзСтроки(ТекущаяСтрокаСоединения); + Если ПараметрыТекущейСтрокиСоединения.Свойство("File") Тогда + ТекущаяСтрокаСоединения = ПараметрыТекущейСтрокиСоединения.File; + КонецЕсли; + ЗаголовокНадписи = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Размещение информационной базы изменилось с + |%1 + |на + |%2 + | + |Техническая информация о причине блокировки + | + |• Если информационная база будет использоваться для ведения учета, нажмите Информационная база перемещена. + |• При выборе варианта Это копия информационной базы работа со всеми внешними ресурсами + | (синхронизация данных, отправка почты и т.п.), выполняемая по расписанию, + | будет заблокирована для предотвращения конфликтов с основной информационной базой. + | + |%3'"), СохраненнаяСтрокаСоединения, ТекущаяСтрокаСоединения, ТекстСнятияБлокировки); + ИначеЕсли Не РазделениеВключено И ИзменилосьРазделение Тогда + ЗаголовокНадписи = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Информационная база была загружена из приложения в Интернете + | + |• Если информационная база будет использоваться для ведения учета, нажмите Информационная база перемещена. + |• При выборе варианта Это копия информационной базы работа со всеми внешними ресурсами + | (синхронизация данных, отправка почты и т.п.), выполняемая по расписанию, + | будет заблокирована для предотвращения конфликтов с приложением в Интернете. + | + |%1'"), ТекстСнятияБлокировки); + ИначеЕсли РазделениеВключено И Не ИзменилосьРазделение Тогда + ЗаголовокНадписи = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр(" ru = 'Приложение было перемещено + | + |• Если приложение будет использоваться для ведения учета, нажмите Приложение перемещено. + |• При выборе варианта Это копия приложения работа со всеми внешними ресурсами + | (синхронизация данных, отправка почты и т.п.), выполняемая по расписанию, + | будет заблокирована для предотвращения конфликтов с приложением в Интернете. + | + |%1'"), ТекстСнятияБлокировки); + Элементы.ИнформационнаяБазаПеремещена.Заголовок = НСтр("ru = 'Приложение перемещено'"); + Элементы.ЭтоКопияИнформационнойБазы.Заголовок = НСтр("ru = 'Это копия приложения'"); + Заголовок = НСтр("ru = 'Приложение было перемещено или восстановлено из резервной копии'"); + Иначе // Если РазделениеВключено И ИзменилосьРазделение + ЗаголовокНадписи = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр(" ru = 'Приложение было загружено из локальной версии + | + |• Если приложение будет использоваться для ведения учета, нажмите Приложение перемещено. + |• При выборе варианта Это копия приложения работа со всеми внешними ресурсами + | (синхронизация данных, отправка почты и т.п.), выполняемая по расписанию, + | будет заблокирована для предотвращения конфликтов с локальной версией. + | + |%1'"), ТекстСнятияБлокировки); + Элементы.ИнформационнаяБазаПеремещена.Заголовок = НСтр("ru = 'Приложение перемещено'"); + Элементы.ЭтоКопияИнформационнойБазы.Заголовок = НСтр("ru = 'Это копия приложения'"); + Заголовок = НСтр("ru = 'Приложение было перемещено или восстановлено из резервной копии'"); КонецЕсли; - ТекущаяСтрокаСоединения = СтрокаСоединения; - ПараметрыТекущейСтрокиСоединения = СтроковыеФункцииКлиентСервер.ПолучитьПараметрыИзСтроки(ТекущаяСтрокаСоединения); - Если ПараметрыТекущейСтрокиСоединения.Свойство("File") Тогда - ТекущаяСтрокаСоединения = ПараметрыТекущейСтрокиСоединения.File; + + Элементы.НадписьПредупреждение.Заголовок = СтроковыеФункцииКлиентСервер.ФорматированнаяСтрока(ЗаголовокНадписи); + + Если ОбщегоНазначения.ИнформационнаяБазаФайловая(СтрокаСоединения) Тогда + Элементы.ФормаГруппаЕще.Видимость = Ложь; + Иначе + Элементы.ФормаПроверятьИмяСервера.Пометка = ПараметрыБлокировки.ПроверятьИмяСервера; + Элементы.ФормаСправка.Видимость = Ложь; КонецЕсли; - ЗаголовокНадписи = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Размещение информационной базы изменилось с - |%1 - |на - |%2 - | - |Техническая информация о причине блокировки - | - |* Если информационная база будет использоваться для ведения учета, нажмите Информационная база перемещена. - |* При выборе варианта Это копия информационной базы работа со всеми внешними ресурсами - | (синхронизация данных, отправка почты и т.п.), выполняемая по расписанию, - | будет заблокирована для предотвращения конфликтов с основой информационной базой. - | - |%3'"), СохраненнаяСтрокаСоединения, ТекущаяСтрокаСоединения, ТекстСнятияБлокировки); - ИначеЕсли Не РазделениеВключено И ИзменилосьРазделение Тогда - ЗаголовокНадписи = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Информационная база была загружена из приложения в Интернете - | - |* Если информационная база будет использоваться для ведения учета, нажмите Информационная база перемещена. - |* При выборе варианта Это копия информационной базы работа со всеми внешними ресурсами - | (синхронизация данных, отправка почты и т.п.), выполняемая по расписанию, - | будет заблокирована для предотвращения конфликтов с приложением в Интернете. - | - |%1'"), ТекстСнятияБлокировки); - ИначеЕсли РазделениеВключено И Не ИзменилосьРазделение Тогда - ЗаголовокНадписи = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр(" ru = 'Приложение было перемещено - | - |* Если приложение будет использоваться для ведения учета, нажмите Приложение перемещено. - |* При выборе варианта Это копия приложения работа со всеми внешними ресурсами - | (синхронизация данных, отправка почты и т.п.), выполняемая по расписанию, - | будет заблокирована для предотвращения конфликтов с приложением в Интернете. - | - |%1'"), ТекстСнятияБлокировки); - Элементы.ИнформационнаяБазаПеремещена.Заголовок = НСтр("ru = 'Приложение перемещено'"); - Элементы.ЭтоКопияИнформационнойБазы.Заголовок = НСтр("ru = 'Это копия приложения'"); - Заголовок = НСтр("ru = 'Приложение было перемещено или восстановлено из резервной копии'"); - Иначе // Если РазделениеВключено И ИзменилосьРазделение - ЗаголовокНадписи = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр(" ru = 'Приложение было загружено из локальной версии - | - |* Если приложение будет использоваться для ведения учета, нажмите Приложение перемещено. - |* При выборе варианта Это копия приложения работа со всеми внешними ресурсами - | (синхронизация данных, отправка почты и т.п.), выполняемая по расписанию, - | будет заблокирована для предотвращения конфликтов с локальной версией. - | - |%1'"), ТекстСнятияБлокировки); - Элементы.ИнформационнаяБазаПеремещена.Заголовок = НСтр("ru = 'Приложение перемещено'"); - Элементы.ЭтоКопияИнформационнойБазы.Заголовок = НСтр("ru = 'Это копия приложения'"); - Заголовок = НСтр("ru = 'Приложение было перемещено или восстановлено из резервной копии'"); - КонецЕсли; - - Элементы.НадписьПредупреждение.Заголовок = СтроковыеФункцииКлиентСервер.ФорматированнаяСтрока(ЗаголовокНадписи); - - Если ОбщегоНазначения.ИнформационнаяБазаФайловая(СтрокаСоединения) Тогда - Элементы.ФормаГруппаЕще.Видимость = Ложь; + Иначе - Элементы.ФормаПроверятьИмяСервера.Пометка = ПараметрыБлокировки.ПроверятьИмяСервера; - Элементы.ФормаСправка.Видимость = Ложь; + Элементы.ГруппаПараметрыФормы.ТекущаяСтраница = Элементы.ГруппаПараметрыБлокировки; + Элементы.НадписьПредупреждение.Видимость = Ложь; + Элементы.ЗаписатьИЗакрыть.КнопкаПоУмолчанию = Истина; + ПроверятьИмяСервера = ПараметрыБлокировки.ПроверятьИмяСервера; + Заголовок = НСтр("ru = 'Параметры блокировки работы с внешними ресурсами'"); КонецЕсли; КонецПроцедуры @@ -117,13 +128,18 @@ ЭтоКопияИнформационнойБазыНаСервере(); Закрыть(); КонецПроцедуры - &НаКлиенте Процедура ПроверятьИмяСервера(Команда) ПараметрыБлокировки.ПроверятьИмяСервера = Не ПараметрыБлокировки.ПроверятьИмяСервера; Элементы.ФормаПроверятьИмяСервера.Пометка = ПараметрыБлокировки.ПроверятьИмяСервера; КонецПроцедуры +&НаКлиенте +Процедура ЗаписатьИЗакрыть(Команда) + ЗаписатьИЗакрытьНаСервере(); + Закрыть(); +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -183,4 +199,11 @@ КонецПроцедуры +&НаСервере +Процедура ЗаписатьИЗакрытьНаСервере() + ПараметрыБлокировки.ПроверятьИмяСервера = ПроверятьИмяСервера; + ХранилищеЗначения = Новый ХранилищеЗначения(ПараметрыБлокировки); + Константы.ПараметрыБлокировкиРаботыСВнешнимиРесурсами.Установить(ХранилищеЗначения); +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/CommonForms/ВводЗначенийСпискомСФлажками/Form.form b/SSL/src/CommonForms/ВводЗначенийСпискомСФлажками/Form.form index 63cb33324..e4fd0b990 100644 --- a/SSL/src/CommonForms/ВводЗначенийСпискомСФлажками/Form.form +++ b/SSL/src/CommonForms/ВводЗначенийСпискомСФлажками/Form.form @@ -667,7 +667,6 @@ true Label - true 1 true @@ -735,7 +734,6 @@ true Label - true true Left diff --git a/SSL/src/CommonForms/ВводЗначенийСпискомСФлажками/Module.bsl b/SSL/src/CommonForms/ВводЗначенийСпискомСФлажками/Module.bsl index 6562843a5..ca789ecad 100644 --- a/SSL/src/CommonForms/ВводЗначенийСпискомСФлажками/Module.bsl +++ b/SSL/src/CommonForms/ВводЗначенийСпискомСФлажками/Module.bsl @@ -25,6 +25,7 @@ Прервать; КонецЕсли; КонецЦикла; + ЗначенияДляВыбора = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "ЗначенияДляВыбора"); Отмеченные = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "Отмеченные"); @@ -33,9 +34,10 @@ Заголовок = Строка(Параметры.ОписаниеТипов); КонецЕсли; + БыстрыйВыбор = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "БыстрыйВыбор"); Если ИнформацияОТипах.КоличествоТипов = 0 Тогда ОграничиватьВыборУказаннымиЗначениями = Истина; - ИначеЕсли Не ИнформацияОТипах.СодержитОбъектныеТипы Тогда + ИначеЕсли Не ИнформацияОТипах.СодержитОбъектныеТипы Или БыстрыйВыбор = Истина Тогда Элементы.СписокПодбор.Видимость = Ложь; Элементы.СписокПодборМеню.Видимость = Ложь; Элементы.СписокПодборПодвал.Видимость = Ложь; diff --git a/SSL/src/CommonForms/ВключениеПроверкиКонтрагентов/Form.form b/SSL/src/CommonForms/ВключениеПроверкиКонтрагентов/Form.form index 5d3aa4f45..ecf2cef41 100644 --- a/SSL/src/CommonForms/ВключениеПроверкиКонтрагентов/Form.form +++ b/SSL/src/CommonForms/ВключениеПроверкиКонтрагентов/Form.form @@ -36,9 +36,7 @@ true Label - true 2 - true Left @@ -80,7 +78,6 @@ true Label - true 4 true @@ -143,7 +140,6 @@ true Label - true 3 true @@ -220,7 +216,6 @@ true Label - true true true @@ -412,10 +407,6 @@ OnCreateAtServer ПриСозданииНаСервере - - OnClose - ПриЗакрытии - 70 LockOwner true diff --git a/SSL/src/CommonForms/ВключениеПроверкиКонтрагентов/Module.bsl b/SSL/src/CommonForms/ВключениеПроверкиКонтрагентов/Module.bsl index 26b742c97..674a30a33 100644 --- a/SSL/src/CommonForms/ВключениеПроверкиКонтрагентов/Module.bsl +++ b/SSL/src/CommonForms/ВключениеПроверкиКонтрагентов/Module.bsl @@ -11,15 +11,12 @@ ЕстьПравоНаРедактированиеНастроекСервиса = ПроверкаКонтрагентов.ЕстьПравоНаРедактированиеНастроек(); + ПроверкаКонтрагентов.СохранитьДатуПоследнегоОтображенияПредложенияПодключиться(); + УправлениеЭУ(); КонецПроцедуры -&НаКлиенте -Процедура ПриЗакрытии() - ПриЗакрытииНаСервере(); -КонецПроцедуры - &НаКлиенте Процедура НапомнитьПозже(Команда) Закрыть(); @@ -110,14 +107,6 @@ КонецЕсли; КонецПроцедуры - -&НаСервере -Процедура ПриЗакрытииНаСервере() - - // Сохраняем дату последнего отображения. - ПроверкаКонтрагентов.СохранитьДатуПоследнегоОтображенияПредложенияПодключиться(); - -КонецПроцедуры &НаСервере Процедура ПрисоединитьСсылкуНаИнструкцию(Элемент) @@ -137,5 +126,5 @@ Элемент.Высота = Элемент.Высота + 1; КонецПроцедуры - + #КонецОбласти diff --git a/SSL/src/CommonForms/Вопрос/Form.form b/SSL/src/CommonForms/Вопрос/Form.form index 8fa15d555..6f4bda526 100644 --- a/SSL/src/CommonForms/Вопрос/Form.form +++ b/SSL/src/CommonForms/Вопрос/Form.form @@ -30,9 +30,7 @@ 6 true - 5 true - 2 true @@ -43,41 +41,6 @@ Строки 16 - - ТекстСообщения - 12 - - <key>ru</key> - <value>Текст сообщения</value> - - true - true - - true - - - ТекстСообщенияExtendedTooltip - 20 - Label - true - true - - Left - - - - ТекстСообщенияКонтекстноеМеню - 13 - true - - Label - true - true - true - - Left - - МногострочныйТекстСообщения 10 @@ -115,6 +78,7 @@ true true + true true true true @@ -169,10 +133,6 @@ ru Строки - - ru - Строки - 35 СтрокиExtendedTooltip @@ -243,6 +203,8 @@ Командная панель true + true + true КоманднаяПанельExtendedTooltip 23 @@ -253,9 +215,15 @@ Left - CommandBar - + UsualGroup + Right + Bottom + Auto + true + true + Auto + Auto Bottom diff --git a/SSL/src/CommonForms/Вопрос/Module.bsl b/SSL/src/CommonForms/Вопрос/Module.bsl index 603d4703e..4fc36b8ab 100644 --- a/SSL/src/CommonForms/Вопрос/Module.bsl +++ b/SSL/src/CommonForms/Вопрос/Module.bsl @@ -37,20 +37,14 @@ КонецЕсли; // Размещение текста. - МногострочныйРежим = СтрЧислоСтрок(Параметры.ТекстСообщения) > 15 - Или ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "МожноКопировать", Ложь); - Если МногострочныйРежим Тогда - Элементы.ТекстСообщения.Видимость = Ложь; - ТекстСообщения = Параметры.ТекстСообщения; - Если ТекущийВариантИнтерфейсаКлиентскогоПриложения() = ВариантИнтерфейсаКлиентскогоПриложения.Версия8_2 Тогда - Элементы.МногострочныйТекстСообщения.ЦветРамки = Новый Цвет; // Для платформы (при изменении цвета рамки появляется белый контур). - КонецЕсли; - ПримернаяВысотаПоля = СтандартныеПодсистемыКлиентСервер.ЧислоСтрок(Параметры.ТекстСообщения, Элементы.Строки.Ширина); - Элементы.Строки.Высота = Мин(ПримернаяВысотаПоля, 10); - Иначе // Вывод в виде надписи. - Элементы.МногострочныйТекстСообщения.Видимость = Ложь; - Элементы.ТекстСообщения.Заголовок = Параметры.ТекстСообщения; + ТекстСообщения = Параметры.ТекстСообщения; + Если ТекущийВариантИнтерфейсаКлиентскогоПриложения() = ВариантИнтерфейсаКлиентскогоПриложения.Версия8_2 Тогда + Элементы.МногострочныйТекстСообщения.ЦветРамки = Новый Цвет; // Для платформы (при изменении цвета рамки появляется белый контур). КонецЕсли; + МинимальнаяШиринаПоля = 50; + ПримернаяВысотаПоля = СтандартныеПодсистемыКлиентСервер.ЧислоСтрок(Параметры.ТекстСообщения, МинимальнаяШиринаПоля); + Элементы.МногострочныйТекстСообщения.Ширина = МинимальнаяШиринаПоля; + Элементы.МногострочныйТекстСообщения.Высота = Мин(ПримернаяВысотаПоля, 10); // Размещение флажка. Если ЗначениеЗаполнено(Параметры.ТекстФлажка) Тогда @@ -75,10 +69,6 @@ // Сброс размеров и положения окна этой формы. СброситьРазмерыИПоложениеОкна(); - // Для того чтобы командная панель не пропадала при обратном отсчете. - Если ОжиданиеСчетчик > 0 Тогда - Элементы.ТекстСообщения.Заголовок = Элементы.ТекстСообщения.Заголовок + Символы.ПС + Символы.ПС; - КонецЕсли; КонецПроцедуры &НаКлиенте @@ -86,7 +76,6 @@ // Запуск обратного отсчета. Если ОжиданиеСчетчик >= 1 Тогда ОжиданиеСчетчик = ОжиданиеСчетчик + 1; - ВернутьРазмерТекстаСообщения(); ПродолжитьОбратныйОтсчет(); КонецЕсли; КонецПроцедуры @@ -132,11 +121,6 @@ КонецЕсли; КонецПроцедуры -&НаСервере -Процедура ВернутьРазмерТекстаСообщения() - Элементы.ТекстСообщения.Заголовок = СокрЛП(Элементы.ТекстСообщения.Заголовок); -КонецПроцедуры - &НаКлиенте Функция КодВозвратаДиалогаПоЗначению(Значение) Если ТипЗнч(Значение) <> Тип("Строка") Тогда diff --git a/SSL/src/CommonForms/ВопросОбУстановкеРасширенияРаботыСКриптографией/Form.form b/SSL/src/CommonForms/ВопросОбУстановкеРасширенияРаботыСКриптографией/Form.form index 1811d2c3c..d27caa26b 100644 --- a/SSL/src/CommonForms/ВопросОбУстановкеРасширенияРаботыСКриптографией/Form.form +++ b/SSL/src/CommonForms/ВопросОбУстановкеРасширенияРаботыСКриптографией/Form.form @@ -32,10 +32,9 @@ true Label + 50 true true - true - true false Left @@ -118,7 +117,6 @@ Retry SaveValues Yes - 50 LockOwner true true @@ -190,17 +188,17 @@ Auto - ТекстПредложения + ЗаголовокВопроса String - true - ВозможноПродолжениеБезУстановки + ТекстВопроса - Boolean + String + diff --git a/SSL/src/CommonForms/ВопросОбУстановкеРасширенияРаботыСФайлами/Form.form b/SSL/src/CommonForms/ВопросОбУстановкеРасширенияРаботыСФайлами/Form.form index 6cabe1a25..2a0bb4df8 100644 --- a/SSL/src/CommonForms/ВопросОбУстановкеРасширенияРаботыСФайлами/Form.form +++ b/SSL/src/CommonForms/ВопросОбУстановкеРасширенияРаботыСФайлами/Form.form @@ -33,10 +33,7 @@ true Label - true true - true - true false Left @@ -147,7 +144,6 @@ Retry SaveValues Yes - 70 LockOwner true true diff --git a/SSL/src/CommonForms/ВосстановлениеСвязиСГлавнымУзлом/Form.form b/SSL/src/CommonForms/ВосстановлениеСвязиСГлавнымУзлом/Form.form index 253568e1d..73d4a4977 100644 --- a/SSL/src/CommonForms/ВосстановлениеСвязиСГлавнымУзлом/Form.form +++ b/SSL/src/CommonForms/ВосстановлениеСвязиСГлавнымУзлом/Form.form @@ -30,9 +30,7 @@ 2 true - 4 true - 2 true @@ -69,10 +67,10 @@ true Label + 46 true 2 true - true Left @@ -140,6 +138,7 @@ true Label + 50 true true @@ -287,7 +286,6 @@ OnCreateAtServer ПриСозданииНаСервере - 60 LockWholeInterface true true diff --git a/SSL/src/CommonForms/ВходВОбластьДанных/Form.form b/SSL/src/CommonForms/ВходВОбластьДанных/Form.form index 3d7b7e015..d803ca843 100644 --- a/SSL/src/CommonForms/ВходВОбластьДанных/Form.form +++ b/SSL/src/CommonForms/ВходВОбластьДанных/Form.form @@ -137,6 +137,10 @@ OnOpen ПриОткрытии + + OnCreateAtServer + ПриСозданииНаСервере + LockWholeInterface true true diff --git a/SSL/src/CommonForms/ВходВОбластьДанных/Module.bsl b/SSL/src/CommonForms/ВходВОбластьДанных/Module.bsl index be0b228d5..9108ba4ba 100644 --- a/SSL/src/CommonForms/ВходВОбластьДанных/Module.bsl +++ b/SSL/src/CommonForms/ВходВОбластьДанных/Module.bsl @@ -7,6 +7,13 @@ #Область ОбработчикиСобытийФормы +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + СтандартныеПодсистемыСервер.УстановитьПустуюФормуНаПустойРабочийСтол(); + +КонецПроцедуры + &НаКлиенте Процедура ПриОткрытии(Отказ) ОбновитьИнтерфейс = Ложь; @@ -20,12 +27,12 @@ Процедура ВойтиВОбластьДанных(Команда) Если ОсуществленВходВОбластьДанных() Тогда + ВыйтиИзОбластиДанныхНаСервере(); + ОбновитьИнтерфейс = Истина; + СтандартныеПодсистемыКлиент.УстановитьРасширенныйЗаголовокПриложения(Истина); - ОбработкаЗавершения = Новый ОписаниеОповещения( - "ПродолжениеВходаВОбластьДанныхПослеДействийПередЗавершениемРаботыСистемы", ЭтотОбъект); - - ПараметрыПриложения.Вставить("СтандартныеПодсистемы.ПропуститьПредупреждениеПередЗавершениемРаботыСистемы", Истина); - СтандартныеПодсистемыКлиент.ПередЗавершениемРаботыСистемы(, ОбработкаЗавершения); + ПодключитьОбработчикОжидания("ВойтиВОбластьДанныхПослеВыхода", 0.1, Истина); + УстановитьДоступностьКнопок(Ложь); Иначе ВойтиВОбластьДанныхПослеВыхода(); КонецЕсли; @@ -36,12 +43,10 @@ Процедура ВыйтиИзОбластиДанных(Команда) Если ОсуществленВходВОбластьДанных() Тогда - - ОбработкаЗавершения = Новый ОписаниеОповещения( - "ПродолжениеВыходаИзОбластиДанныхПослеДействийПередЗавершениемРаботыСистемы", ЭтотОбъект); - - ПараметрыПриложения.Вставить("СтандартныеПодсистемы.ПропуститьПредупреждениеПередЗавершениемРаботыСистемы", Истина); - СтандартныеПодсистемыКлиент.ПередЗавершениемРаботыСистемы(, ОбработкаЗавершения); + // Закрытие форм разделенного рабочего стола. + ОбновитьИнтерфейс(); + ПодключитьОбработчикОжидания("ПродолжениеВыходаИзОбластиДанныхПослеСкрытияФормРабочегоСтола", 0.1, Истина); + УстановитьДоступностьКнопок(Ложь); КонецЕсли; КонецПроцедуры @@ -60,26 +65,11 @@ КонецПроцедуры -&НаКлиенте -Процедура ПродолжениеВходаВОбластьДанныхПослеДействийПередЗавершениемРаботыСистемы(Результат, Неопределен) Экспорт - - Если Результат.Отказ Тогда - Активизировать(); - ОбновитьИнтерфейсПриНеобходимости(); - Возврат; - КонецЕсли; - - ВыйтиИзОбластиДанныхНаСервере(); - ОбновитьИнтерфейс = Истина; - СтандартныеПодсистемыКлиент.УстановитьРасширенныйЗаголовокПриложения(Истина); - - ВойтиВОбластьДанныхПослеВыхода(); - -КонецПроцедуры - &НаКлиенте Процедура ВойтиВОбластьДанныхПослеВыхода() + УстановитьДоступностьКнопок(Истина); + Если НЕ УказаннаяОбластьДанныхЗаполнена(ОбластьДанных) Тогда ОписаниеОповещения = Новый ОписаниеОповещения("ВойтиВОбластьДанныхПослеВыхода2", ЭтотОбъект); ПоказатьВопрос(ОписаниеОповещения, НСтр("ru = 'Выбранная область данных не используется, продолжить вход?'"), @@ -119,6 +109,8 @@ СтандартныеПодсистемыКлиент.УстановитьРасширенныйЗаголовокПриложения(Истина); ОбновитьИнтерфейсПриНеобходимости(); Активизировать(); + УстановитьДоступностьКнопок(Ложь); + ПодключитьОбработчикОжидания("ВключитьДоступностьКнопок", 2, Истина); Иначе ОбработкаЗавершения = Новый ОписаниеОповещения( "ПродолжениеВходаВОбластьДанныхПослеДействийПриНачалеРаботыСистемы", ЭтотОбъект); @@ -140,21 +132,30 @@ ОбновитьИнтерфейсПриНеобходимости(); Активизировать(); + УстановитьДоступностьКнопок(Ложь); + ПодключитьОбработчикОжидания("ВключитьДоступностьКнопок", 2, Истина); + Оповестить("ВыполненВходВОбластьДанных"); + КонецПроцедуры &НаКлиенте -Процедура ПродолжениеВыходаИзОбластиДанныхПослеДействийПередЗавершениемРаботыСистемы(Результат, Неопределен) Экспорт +Процедура ПродолжениеВыходаИзОбластиДанныхПослеСкрытияФормРабочегоСтола() - Если Результат.Отказ Тогда - Возврат; - КонецЕсли; + УстановитьДоступностьКнопок(Истина); ВыйтиИзОбластиДанныхНаСервере(); + + // Отображение форм неразделенного рабочего стола. ОбновитьИнтерфейс(); + СтандартныеПодсистемыКлиент.УстановитьРасширенныйЗаголовокПриложения(Истина); Активизировать(); + УстановитьДоступностьКнопок(Ложь); + ПодключитьОбработчикОжидания("ВключитьДоступностьКнопок", 2, Истина); + Оповестить("ВыполненВыходИзОбластиДанных"); + КонецПроцедуры &НаСервереБезКонтекста @@ -242,6 +243,11 @@ УстановитьПривилегированныйРежим(Истина); + // Восстановление форм разделенного рабочего стола. + СтандартныеПодсистемыВызовСервера.СкрытьРабочийСтолПриНачалеРаботыСистемы(Ложь); + + СтандартныеПодсистемыСервер.УстановитьПустуюФормуНаПустойРабочийСтол(); + ОбщегоНазначения.УстановитьРазделениеСеанса(Ложь); КонецПроцедуры @@ -250,8 +256,30 @@ Функция ОсуществленВходВОбластьДанных() УстановитьПривилегированныйРежим(Истина); - Возврат ОбщегоНазначения.ИспользованиеРазделителяСеанса(); + ОсуществленВход = ОбщегоНазначения.ИспользованиеРазделителяСеанса(); + + // Подготовка к закрытию форм разделенного рабочего стола. + Если ОсуществленВход Тогда + СтандартныеПодсистемыВызовСервера.СкрытьРабочийСтолПриНачалеРаботыСистемы(Истина); + КонецЕсли; + + Возврат ОсуществленВход; КонецФункции +&НаКлиенте +Процедура ВключитьДоступностьКнопок() + + УстановитьДоступностьКнопок(Истина); + +КонецПроцедуры + +&НаКлиенте +Процедура УстановитьДоступностьКнопок(Доступность) + + Элементы.ЗначениеРазделителя.Доступность = Доступность; + Элементы.ГруппаВходВОбласть.Доступность = Доступность; + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/CommonForms/ВходВПрограммуЗапрещен/Form.form b/SSL/src/CommonForms/ВходВПрограммуЗапрещен/Form.form index de5f01281..7c7356fc0 100644 --- a/SSL/src/CommonForms/ВходВПрограммуЗапрещен/Form.form +++ b/SSL/src/CommonForms/ВходВПрограммуЗапрещен/Form.form @@ -30,9 +30,7 @@ 7 true - 3 true - 2 true @@ -72,9 +70,7 @@ true Label - true true - true Left @@ -105,6 +101,7 @@ UsualGroup Auto + NormalSeparation true true Auto @@ -124,6 +121,7 @@ true + true ФормаЗавершитьРаботуРасширеннаяПодсказка 5 @@ -135,8 +133,8 @@ Form.Command.ЗавершитьРаботу - Normal Auto + true true true UserCmds @@ -152,7 +150,6 @@ OnClose ПриЗакрытии - 29 LockWholeInterface true true diff --git a/SSL/src/CommonForms/ВходВПрограммуЗапрещен/Module.bsl b/SSL/src/CommonForms/ВходВПрограммуЗапрещен/Module.bsl index ca1991806..6402e28e7 100644 --- a/SSL/src/CommonForms/ВходВПрограммуЗапрещен/Module.bsl +++ b/SSL/src/CommonForms/ВходВПрограммуЗапрещен/Module.bsl @@ -8,7 +8,7 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) ПрекратитьРаботуСистемы(); diff --git a/SSL/src/CommonForms/ВыборДаты/Form.form b/SSL/src/CommonForms/ВыборДаты/Form.form index 5a6108e12..5cc7c87c8 100644 --- a/SSL/src/CommonForms/ВыборДаты/Form.form +++ b/SSL/src/CommonForms/ВыборДаты/Form.form @@ -70,9 +70,9 @@ Selection КалендарьВыбор - 34 + 1 true - 7 + 1 true true true diff --git a/SSL/src/CommonForms/ВыборДаты/Module.bsl b/SSL/src/CommonForms/ВыборДаты/Module.bsl index f10aad836..602db1235 100644 --- a/SSL/src/CommonForms/ВыборДаты/Module.bsl +++ b/SSL/src/CommonForms/ВыборДаты/Module.bsl @@ -38,16 +38,20 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; Если ДействиеВыбрано <> Истина Тогда ОповеститьОВыборе(Неопределено); КонецЕсли; КонецПроцедуры -/////////////////////////////////////////////////////////////////////////////// -// ОБРАБОТЧИКИ СОБЫТИЙ ЭЛЕМЕНТОВ ФОРМЫ +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы &НаКлиенте Процедура КалендарьВыбор(Элемент, ВыбраннаяДата) diff --git a/SSL/src/CommonForms/ВыборДействияПриОбнаруженииОтличийФайла/Form.form b/SSL/src/CommonForms/ВыборДействияПриОбнаруженииОтличийФайла/Form.form index 02dfbb9a5..7dd9b0bdc 100644 --- a/SSL/src/CommonForms/ВыборДействияПриОбнаруженииОтличийФайла/Form.form +++ b/SSL/src/CommonForms/ВыборДействияПриОбнаруженииОтличийФайла/Form.form @@ -30,11 +30,8 @@ 22 true - 4 true - 4 true - false false @@ -76,7 +73,6 @@ Left true - true true true true @@ -145,7 +141,6 @@ true Label - true true false @@ -189,7 +184,7 @@ Left true - true + 68 true true true @@ -393,11 +388,6 @@ ru Дата изменения (местное время) - - ru - Дата изменения - - true ДатаИзмененияExtendedTooltip 51 @@ -518,11 +508,6 @@ ru Размер (байт) - - ru - Размер - - true РазмерExtendedTooltip 54 diff --git a/SSL/src/CommonForms/ВыборИсполнителяБизнесПроцесса/Attributes/СписокРоли/ExtInfo/ListSettings.dcss b/SSL/src/CommonForms/ВыборИсполнителяБизнесПроцесса/Attributes/СписокРоли/ExtInfo/ListSettings.dcss index 79c7f6c09..a1d8b2348 100644 --- a/SSL/src/CommonForms/ВыборИсполнителяБизнесПроцесса/Attributes/СписокРоли/ExtInfo/ListSettings.dcss +++ b/SSL/src/CommonForms/ВыборИсполнителяБизнесПроцесса/Attributes/СписокРоли/ExtInfo/ListSettings.dcss @@ -15,27 +15,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - - ВнешняяРоль - Equal - false - - - ЕстьИсполнители - Equal - false - - - - - ЦветТекста - style:РольБезИсполнителей - - - Normal b75fecce-942b-4aed-abc9-e6a02e460fb3 diff --git a/SSL/src/CommonForms/ВыборИсполнителяБизнесПроцесса/Form.form b/SSL/src/CommonForms/ВыборИсполнителяБизнесПроцесса/Form.form index f661f65ad..b48ad7a2f 100644 --- a/SSL/src/CommonForms/ВыборИсполнителяБизнесПроцесса/Form.form +++ b/SSL/src/CommonForms/ВыборИсполнителяБизнесПроцесса/Form.form @@ -602,7 +602,6 @@ ПриСозданииНаСервере CustomizeForm - 85 LockOwner Use true diff --git a/SSL/src/CommonForms/ВыборИсполнителяБизнесПроцесса/Module.bsl b/SSL/src/CommonForms/ВыборИсполнителяБизнесПроцесса/Module.bsl index 38740cb7f..4809cc644 100644 --- a/SSL/src/CommonForms/ВыборИсполнителяБизнесПроцесса/Module.bsl +++ b/SSL/src/CommonForms/ВыборИсполнителяБизнесПроцесса/Module.bsl @@ -4,6 +4,8 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; @@ -98,4 +100,28 @@ КонецФункции +&НаСервере +Процедура УстановитьУсловноеОформление() + + СписокРоли.УсловноеОформление.Элементы.Очистить(); + Элемент = СписокРоли.УсловноеОформление.Элементы.Добавить(); + + ГруппаЭлементовОтбора = Элемент.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); + ГруппаЭлементовОтбора .ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ; + + ОтборЭлемента = ГруппаЭлементовОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ЕстьИсполнители"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Ложь; + + ОтборЭлемента = ГруппаЭлементовОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ВнешняяРоль"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Ложь; + + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.РольБезИсполнителей); + +КонецПроцедуры + + #КонецОбласти diff --git a/SSL/src/CommonForms/ВыборКонтакта/Form.form b/SSL/src/CommonForms/ВыборКонтакта/Form.form index d8cffdb72..b6d770f26 100644 --- a/SSL/src/CommonForms/ВыборКонтакта/Form.form +++ b/SSL/src/CommonForms/ВыборКонтакта/Form.form @@ -614,7 +614,6 @@ true true 10 - true true
      true
      1 @@ -728,7 +727,7 @@ true true - true + 4 None @@ -1035,8 +1034,7 @@ true true true - 10 - true + 6 true
      true
      1 @@ -1749,6 +1747,12 @@ Boolean + + ИдентификаторФормы + + UUID + + diff --git a/SSL/src/CommonForms/ВыборКонтакта/Module.bsl b/SSL/src/CommonForms/ВыборКонтакта/Module.bsl index e46e3e224..067d333e5 100644 --- a/SSL/src/CommonForms/ВыборКонтакта/Module.bsl +++ b/SSL/src/CommonForms/ВыборКонтакта/Module.bsl @@ -57,7 +57,7 @@ ОписаниеКонтакта = Новый Структура; - МассивОписанийКонтакта = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанийКонтакта = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); Для Каждого ЭлементМассива Из МассивОписанийКонтакта Цикл Если ТипЗнч(ТекущиеДанные.Ссылка) = ЭлементМассива.Тип Тогда ОписаниеКонтакта = ЭлементМассива; @@ -224,7 +224,7 @@ ОписаниеКонтакта = Новый Структура; - МассивОписанийКонтакта = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанийКонтакта = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); Для Каждого ЭлементМассива Из МассивОписанийКонтакта Цикл Если ТипЗнч(КонтактДляВыбора) = ЭлементМассива.Тип Тогда ОписаниеКонтакта = ЭлементМассива; @@ -401,6 +401,7 @@ ПараметрыФормы.Добавить( ПереданныеПараметры.ТолькоТелефон, "ТолькоТелефон"); ПараметрыФормы.Добавить( ПереданныеПараметры.ДляФормыУточненияКонтактов, "ДляФормыУточненияКонтактов"); ПараметрыФормы.Добавить( ПереданныеПараметры.ЗаменятьПустыеАдресИПредставление, "ЗаменятьПустыеАдресИПредставление"); + ПараметрыФормы.Добавить( ПереданныеПараметры.ИдентификаторФормы, "ИдентификаторФормы"); КонецПроцедуры diff --git a/SSL/src/CommonForms/ВыборОбъектовМетаданных/Form.form b/SSL/src/CommonForms/ВыборОбъектовМетаданных/Form.form index d477166ff..915729a43 100644 --- a/SSL/src/CommonForms/ВыборОбъектовМетаданных/Form.form +++ b/SSL/src/CommonForms/ВыборОбъектовМетаданных/Form.form @@ -399,8 +399,6 @@ OnCreateAtServer ПриСозданииНаСервере - 50 - 15 LockOwner true true @@ -654,7 +652,7 @@ ТолькоПодсистемыСКИ <key>ru</key> - <value>Только подсистемы СКИ</value> + <value>Только подсистемы с КИ</value> 8 diff --git a/SSL/src/CommonForms/ВыборПолучателейСообщения/ConditionalAppearance.dcssca b/SSL/src/CommonForms/ВыборПолучателейСообщения/ConditionalAppearance.dcssca deleted file mode 100644 index ca537f223..000000000 --- a/SSL/src/CommonForms/ВыборПолучателейСообщения/ConditionalAppearance.dcssca +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - ПолучателиСообщенияПояснение - - - - - ПолучателиСообщения.Пояснение - NotFilled - - - - - Видимость - false - - - - diff --git a/SSL/src/CommonForms/ВыборПолучателейСообщения/Form.form b/SSL/src/CommonForms/ВыборПолучателейСообщения/Form.form index 3655359f9..d6e88cb90 100644 --- a/SSL/src/CommonForms/ВыборПолучателейСообщения/Form.form +++ b/SSL/src/CommonForms/ВыборПолучателейСообщения/Form.form @@ -641,7 +641,6 @@ OnCreateAtServer ПриСозданииНаСервере - 60 LockOwner true true diff --git a/SSL/src/CommonForms/ВыборПолучателейСообщения/Module.bsl b/SSL/src/CommonForms/ВыборПолучателейСообщения/Module.bsl index ddbb11910..960e2387c 100644 --- a/SSL/src/CommonForms/ВыборПолучателейСообщения/Module.bsl +++ b/SSL/src/CommonForms/ВыборПолучателейСообщения/Module.bsl @@ -4,6 +4,8 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + Если Параметры.Свойство("АвтоТест") Тогда Возврат; КонецЕсли; @@ -192,5 +194,22 @@ КонецПроцедуры +&НаСервере +Процедура УстановитьУсловноеОформление() + + УсловноеОформление.Элементы.Очистить(); + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ПолучателиСообщенияПояснение.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ПолучателиСообщения.Пояснение"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено; + + Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь); + +КонецПроцедуры #КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonForms/ВыборПроизвольногоПериода/Module.bsl b/SSL/src/CommonForms/ВыборПроизвольногоПериода/Module.bsl deleted file mode 100644 index 042148f1c..000000000 --- a/SSL/src/CommonForms/ВыборПроизвольногоПериода/Module.bsl +++ /dev/null @@ -1,40 +0,0 @@ - -#Область ОбработчикиСобытийФормы - -&НаСервере -Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - Если Параметры.Свойство("АвтоТест") Тогда - Возврат; - КонецЕсли; - - НачалоПериода = Параметры.НачалоПериода; - КонецПериода = Параметры.КонецПериода; - ИмяЭлемента = Параметры.ИмяЭлемента; - - Если НЕ ЗначениеЗаполнено(НачалоПериода) Тогда - НачалоПериода = ОтчетыКлиентСервер.НачалоПериодаОтчета(Параметры.МинимальныйПериод, ТекущаяДатаСеанса()); - КонецЕсли; - - Если НЕ ЗначениеЗаполнено(КонецПериода) Тогда - КонецПериода = ОтчетыКлиентСервер.КонецПериодаОтчета(Параметры.МинимальныйПериод, ТекущаяДатаСеанса()); - КонецЕсли; -КонецПроцедуры - -#КонецОбласти - -#Область ОбработчикиКомандФормы - -&НаКлиенте -Процедура Выбрать(Команда) - Если НачалоПериода > КонецПериода Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Дата начала периода больше чем дата окончания периода'"), , "НачалоПериода"); - Возврат; - КонецЕсли; - - РезультатВыбора = Новый Структура("НачалоПериода, КонецПериода, ИмяЭлемента"); - ЗаполнитьЗначенияСвойств(РезультатВыбора, ЭтотОбъект); - - ОповеститьОВыборе(РезультатВыбора); -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/CommonForms/ВыборПутиКАрхивуФайловТомов/Form.form b/SSL/src/CommonForms/ВыборПутиКАрхивуФайловТомов/Form.form index e3b48b751..d80c9fe63 100644 --- a/SSL/src/CommonForms/ВыборПутиКАрхивуФайловТомов/Form.form +++ b/SSL/src/CommonForms/ВыборПутиКАрхивуФайловТомов/Form.form @@ -48,7 +48,7 @@ StartChoice ПутьКАрхивуWindowsНачалоВыбора - true + 65 true true true @@ -95,7 +95,7 @@ Left true - true + 65 true true true diff --git a/SSL/src/CommonForms/ВыборРолиИсполнителя/Form.form b/SSL/src/CommonForms/ВыборРолиИсполнителя/Form.form index f628b3c5d..9ffde51dd 100644 --- a/SSL/src/CommonForms/ВыборРолиИсполнителя/Form.form +++ b/SSL/src/CommonForms/ВыборРолиИсполнителя/Form.form @@ -295,7 +295,6 @@ FillCheckProcessingAtServer ОбработкаПроверкиЗаполненияНаСервере - 50 LockOwner true true diff --git a/SSL/src/CommonForms/ВыборРолиИсполнителя/Module.bsl b/SSL/src/CommonForms/ВыборРолиИсполнителя/Module.bsl index 0e9321621..e9b1d3158 100644 --- a/SSL/src/CommonForms/ВыборРолиИсполнителя/Module.bsl +++ b/SSL/src/CommonForms/ВыборРолиИсполнителя/Module.bsl @@ -115,10 +115,22 @@ &НаСервере Функция ПараметрыЗакрытия() - Возврат Новый Структура("РольИсполнителя,ОсновнойОбъектАдресации,ДополнительныйОбъектАдресации", - Роль, - ?(ОсновнойОбъектАдресации <> Неопределено И НЕ ОсновнойОбъектАдресации.Пустая(), ОсновнойОбъектАдресации, Неопределено), - ?(ДополнительныйОбъектАдресации <> Неопределено И НЕ ДополнительныйОбъектАдресации.Пустая(), ДополнительныйОбъектАдресации, Неопределено)); + + Результат = Новый Структура; + Результат.Вставить("РольИсполнителя", Роль); + Результат.Вставить("ОсновнойОбъектАдресации", ОсновнойОбъектАдресации); + Результат.Вставить("ДополнительныйОбъектАдресации", ДополнительныйОбъектАдресации); + + Если Результат.ОсновнойОбъектАдресации <> Неопределено И Результат.ОсновнойОбъектАдресации.Пустая() Тогда + Результат.ОсновнойОбъектАдресации = Неопределено; + КонецЕсли; + + Если Результат.ДополнительныйОбъектАдресации <> Неопределено И Результат.ДополнительныйОбъектАдресации.Пустая() Тогда + Результат.ДополнительныйОбъектАдресации = Неопределено; + КонецЕсли; + + Возврат Результат; + КонецФункции #КонецОбласти diff --git a/SSL/src/CommonForms/ВыборТиповПользователей/Form.form b/SSL/src/CommonForms/ВыборТиповПользователей/Form.form index 9eb7c8050..835879879 100644 --- a/SSL/src/CommonForms/ВыборТиповПользователей/Form.form +++ b/SSL/src/CommonForms/ВыборТиповПользователей/Form.form @@ -99,10 +99,6 @@ ru Назначение группа - - ru - Назначение группа - НазначениеГруппаРасширеннаяПодсказка 67 diff --git a/SSL/src/CommonForms/ВыборФорматаВложений/Form.form b/SSL/src/CommonForms/ВыборФорматаВложений/Form.form index 142afcd6e..08f9c7a48 100644 --- a/SSL/src/CommonForms/ВыборФорматаВложений/Form.form +++ b/SSL/src/CommonForms/ВыборФорматаВложений/Form.form @@ -412,7 +412,6 @@ Retry SaveValues Yes - 38 LockOwner Use UseList diff --git a/SSL/src/CommonForms/ГруппыПользователей/Form.form b/SSL/src/CommonForms/ГруппыПользователей/Form.form index 679c26136..636c6e9e8 100644 --- a/SSL/src/CommonForms/ГруппыПользователей/Form.form +++ b/SSL/src/CommonForms/ГруппыПользователей/Form.form @@ -91,58 +91,6 @@ UserCmds Auto - - ИзменитьФорму - 25 - true - true - - true - - - ИзменитьФормуExtendedTooltip - 33 - Label - true - true - - Left - - - Form.StandardCommand.CustomizeForm - Normal - Auto - true - true - UserCmds - Auto - - - Справка - 26 - true - true - - true - - - СправкаExtendedTooltip - 34 - Label - true - true - - Left - - - Form.StandardCommand.Help - Normal - Auto - true - true - UserCmds - Auto - true true @@ -165,6 +113,7 @@ CommandBar Left + Form @@ -529,9 +478,7 @@ 22 true - 5 true - 2 true @@ -567,11 +514,11 @@ true Label - true 2 true Left + Center true @@ -636,7 +583,6 @@ OnCreateAtServer ПриСозданииНаСервере - 60 LockOwner true true @@ -838,6 +784,14 @@ CatalogRef.Пользователи + + Пользователи + + + + ВнешниеПользователи + + diff --git a/SSL/src/CommonForms/ГруппыПользователей/Module.bsl b/SSL/src/CommonForms/ГруппыПользователей/Module.bsl index e75e1b76f..345c40ae0 100644 --- a/SSL/src/CommonForms/ГруппыПользователей/Module.bsl +++ b/SSL/src/CommonForms/ГруппыПользователей/Module.bsl @@ -75,13 +75,15 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) - Если Не РежимОткрытияИзКарточкиПользователя Тогда - Оповещение = Новый ОписаниеОповещения("ЗаписатьИЗакрытьНачало", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); + Если РежимОткрытияИзКарточкиПользователя Тогда + Возврат; КонецЕсли; + Оповещение = Новый ОписаниеОповещения("ЗаписатьИЗакрытьНачало", ЭтотОбъект); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы); + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/CommonForms/ДлительнаяОперация/Form.form b/SSL/src/CommonForms/ДлительнаяОперация/Form.form index ff89277a7..12306a08e 100644 --- a/SSL/src/CommonForms/ДлительнаяОперация/Form.form +++ b/SSL/src/CommonForms/ДлительнаяОперация/Form.form @@ -1,20 +1,95 @@ - - ДекорацияДлительнаяОперация - 3 - - <key>ru</key> - <value>Длительная операция</value> - + + КартинкаИНадпись + 14 + + ДекорацияДлительнаяОперация + 3 + + <key>ru</key> + <value>Длительная операция</value> + + true + true + + true + + + ДекорацияДлительнаяОперацияExtendedTooltip + 10 + Label + true + true + + Left + + + + ДекорацияДлительнаяОперацияКонтекстноеМеню + 4 + true + + true + true + + + CommonPicture.ДлительнаяОперация48 + + + + + ДекорацияПоясняющийТекстДлительнойОперации + 1 + + <key>ru</key> + <value>Пожалуйста, подождите...</value> + + true + true + + true + + + ДекорацияПоясняющийТекстДлительнойОперацииExtendedTooltip + 11 + Label + true + true + + Left + + + + ДекорацияПоясняющийТекстДлительнойОперацииКонтекстноеМеню + 2 + true + + Label + 30 + true + true + + Left + Center + + true true true + + <key>ru</key> + <value>Картинка и надпись</value> + + + ru + Картинка и надпись + - ДекорацияДлительнаяОперацияExtendedTooltip - 10 + КартинкаИНадписьРасширеннаяПодсказка + 15 Label true true @@ -22,60 +97,14 @@ Left
      - - ДекорацияДлительнаяОперацияКонтекстноеМеню - 4 - true - - 7 - true - 3 - true - false - false - - - CommonPicture.ДлительнаяОперация48 - - - - - ДекорацияПоясняющийТекстДлительнойОперации - 1 - - <key>ru</key> - <value>Пожалуйста, подождите...</value> - - true - true - - true - - - ДекорацияПоясняющийТекстДлительнойОперацииExtendedTooltip - 11 - Label - true - true - - Left - - - - ДекорацияПоясняющийТекстДлительнойОперацииКонтекстноеМеню - 2 - true - - Label - 30 - true - 3 - true - true - false - - Left + UsualGroup + Center + Auto + true + true + Auto + Auto Bottom @@ -139,8 +168,6 @@ Yes LockOwner true - true - true true auto true @@ -295,6 +322,13 @@ true + + ПолучатьРезультат + + Boolean + + true + diff --git a/SSL/src/CommonForms/ДлительнаяОперация/Module.bsl b/SSL/src/CommonForms/ДлительнаяОперация/Module.bsl index 6a7598bf9..e078c35eb 100644 --- a/SSL/src/CommonForms/ДлительнаяОперация/Module.bsl +++ b/SSL/src/CommonForms/ДлительнаяОперация/Module.bsl @@ -3,6 +3,8 @@ &НаКлиенте Перем ИнтервалОжидания; +&НаКлиенте +Перем ФормаЗакрывается; #КонецОбласти @@ -23,7 +25,7 @@ Если ЗначениеЗаполнено(Параметры.ИдентификаторЗадания) Тогда ИдентификаторЗадания = Параметры.ИдентификаторЗадания; - КонецЕсли; + КонецЕсли; КонецПроцедуры @@ -38,19 +40,33 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) - Если Статус = "Выполняется" Тогда - Отказ = Истина; - ПодключитьОбработчикОжидания("Подключаемый_ОтменитьЗадание", 0.1, Истина); + Если Статус <> "Выполняется" Тогда + Возврат; КонецЕсли; - + + Отказ = Истина; + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + + ПодключитьОбработчикОжидания("Подключаемый_ОтменитьЗадание", 0.1, Истина); + КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) - ПриЗакрытииНаСервере() + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + + Если Статус <> "Выполняется" Тогда + Возврат; + КонецЕсли; + + ОтменитьВыполнениеЗадания(); КонецПроцедуры @@ -61,8 +77,9 @@ &НаКлиенте Процедура Отмена(Команда) - Подключаемый_ПроверитьВыполнениеЗадания(); // а вдруг задание уже выполнилось - Если Статус = "Выполняется" Тогда + ФормаЗакрывается = Истина; + Подключаемый_ПроверитьВыполнениеЗадания(); // а вдруг задание уже выполнилось. + Если Статус = "Отменено" Тогда Статус = Неопределено; Закрыть(РезультатВыполнения(Неопределено)); КонецЕсли; @@ -76,33 +93,44 @@ &НаКлиенте Процедура Подключаемый_ПроверитьВыполнениеЗадания() - Результат = ПроверитьЗаданиеВыполнено(); - Статус = Результат.Статус; + Задание = ПроверитьЗаданиеВыполнено(ФормаЗакрывается); + Статус = Задание.Статус; - Если Результат.Прогресс <> Неопределено Тогда - ПрогрессСтрокой = ПрогрессСтрокой(Результат.Прогресс); + Если Задание.Прогресс <> Неопределено Тогда + ПрогрессСтрокой = ПрогрессСтрокой(Задание.Прогресс); Если Не ПустаяСтрока(ПрогрессСтрокой) Тогда Элементы.ДекорацияПоясняющийТекстДлительнойОперации.Заголовок = ТекстСообщения + " " + ПрогрессСтрокой; КонецЕсли; - ИначеЕсли Результат.Сообщения <> Неопределено И ВладелецФормы <> Неопределено Тогда + КонецЕсли; + Если Задание.Сообщения <> Неопределено И ВладелецФормы <> Неопределено Тогда ИдентификаторНазначения = ВладелецФормы.УникальныйИдентификатор; - Для каждого СообщениеПользователю Из Результат.Сообщения Цикл + Для каждого СообщениеПользователю Из Задание.Сообщения Цикл СообщениеПользователю.ИдентификаторНазначения = ИдентификаторНазначения; СообщениеПользователю.Сообщить(); КонецЦикла; КонецЕсли; - + Если Статус = "Выполнено" Тогда ПоказатьОповещение(); - Закрыть(РезультатВыполнения(Результат)); + Если ВозвращатьРезультатВОбработкуВыбора() Тогда + ОповеститьОВыборе(Задание.Результат); + Возврат; + КонецЕсли; + Закрыть(РезультатВыполнения(Задание)); Возврат; ИначеЕсли Статус = "Ошибка" Тогда - ПоказатьПредупреждение(, ?(ПустаяСтрока(Результат.КраткоеПредставлениеОшибки), - НСтр("ru = 'Не удалось выполнить запрошенное действие.'"), Результат.КраткоеПредставлениеОшибки)); - Закрыть(РезультатВыполнения(Результат)); + Закрыть(РезультатВыполнения(Задание)); + Если ВозвращатьРезультатВОбработкуВыбора() Тогда + // Принимающий код не получает информацию об ошибках, а она выводится прямо здесь. + ПараметрыПредупреждения = Новый Структура; + ПараметрыПредупреждения.Вставить("Текст", Задание.КраткоеПредставлениеОшибки); + ПараметрыПредупреждения.Вставить("Подробно", Задание.ПодробноеПредставлениеОшибки); + ПараметрыПредупреждения.Вставить("Заголовок", НСтр("ru = 'Не удалось выполнить запрошенное действие'")); + СтандартныеПодсистемыКлиент.ВывестиПредупреждение(ВладелецФормы, ПараметрыПредупреждения); + КонецЕсли; Возврат; КонецЕсли; @@ -116,7 +144,7 @@ КонецЕсли; ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеЗадания", ИнтервалОжидания, Истина); КонецЕсли; - + КонецПроцедуры &НаКлиенте @@ -148,13 +176,28 @@ НавигационнаяСсылкаОповещения, ПояснениеОповещения); КонецПроцедуры - + &НаСервере -Функция ПроверитьЗаданиеВыполнено() +Функция ПроверитьЗаданиеВыполнено(ФормаЗакрывается) - Возврат ДлительныеОперации.ОперацияВыполнена(ИдентификаторЗадания, Ложь, Параметры.ВыводитьПрогрессВыполнения, + Задание = ДлительныеОперации.ОперацияВыполнена(ИдентификаторЗадания, Ложь, Параметры.ВыводитьПрогрессВыполнения, Параметры.ВыводитьСообщения); + Если Параметры.ПолучатьРезультат Тогда + Если Задание.Статус = "Выполнено" Тогда + Задание.Вставить("Результат", ПолучитьИзВременногоХранилища(Параметры.АдресРезультата)); + Иначе + Задание.Вставить("Результат", Неопределено); + КонецЕсли; + КонецЕсли; + + Если ФормаЗакрывается = Истина Тогда + ОтменитьВыполнениеЗадания(); + Задание.Статус = "Отменено"; + КонецЕсли; + + Возврат Задание; + КонецФункции &НаКлиенте @@ -183,24 +226,37 @@ КонецФункции &НаКлиенте -Функция РезультатВыполнения(Статус) +Функция РезультатВыполнения(Задание) - Если Статус = Неопределено Тогда + Если Задание = Неопределено Тогда Возврат Неопределено; КонецЕсли; Результат = Новый Структура; - Результат.Вставить("Статус", Статус.Статус); + Результат.Вставить("Статус", Задание.Статус); Результат.Вставить("АдресРезультата", Параметры.АдресРезультата); Результат.Вставить("АдресДополнительногоРезультата", Параметры.АдресДополнительногоРезультата); - Результат.Вставить("КраткоеПредставлениеОшибки", Статус.КраткоеПредставлениеОшибки); - Результат.Вставить("ПодробноеПредставлениеОшибки", Статус.ПодробноеПредставлениеОшибки); + Результат.Вставить("КраткоеПредставлениеОшибки", Задание.КраткоеПредставлениеОшибки); + Результат.Вставить("ПодробноеПредставлениеОшибки", Задание.ПодробноеПредставлениеОшибки); + Результат.Вставить("Сообщения", Задание.Сообщения); + + Если Параметры.ПолучатьРезультат Тогда + Результат.Вставить("Результат", Задание.Результат); + КонецЕсли; + Возврат Результат; КонецФункции - + +&НаКлиенте +Функция ВозвращатьРезультатВОбработкуВыбора() + Возврат ОписаниеОповещенияОЗакрытии = Неопределено + И Параметры.ПолучатьРезультат + И ТипЗнч(ВладелецФормы) = Тип("УправляемаяФорма"); +КонецФункции + &НаСервере -Процедура ПриЗакрытииНаСервере() +Процедура ОтменитьВыполнениеЗадания() ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторЗадания); diff --git a/SSL/src/CommonForms/ДлительнаяОперацияДополнительныхОтчетовИОбработок/Form.form b/SSL/src/CommonForms/ДлительнаяОперацияДополнительныхОтчетовИОбработок/Form.form deleted file mode 100644 index dc14207e1..000000000 --- a/SSL/src/CommonForms/ДлительнаяОперацияДополнительныхОтчетовИОбработок/Form.form +++ /dev/null @@ -1,403 +0,0 @@ - - - - Группа1 - 5 - - ДлительнаяОперация - 1 - - <key>ru</key> - <value>Длительная операция</value> - - true - true - - true - - - ДлительнаяОперацияExtendedTooltip - 13 - Label - true - true - - Left - - - - ДлительнаяОперацияКонтекстноеМеню - 2 - true - - 7 - true - 3 - true - - - CommonPicture.ДлительнаяОперация48 - - - - - СопровождающийТекст - 7 - true - true - - true - - - СопровождающийТекст - - None - - СопровождающийТекстExtendedTooltip - 14 - Label - true - true - - Left - - - - СопровождающийТекстКонтекстноеМеню - 8 - true - - LabelField - Center - Enter - true - Left - true - - true - true - true - true - - - true - true - - true - - - Группа1ExtendedTooltip - 12 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - Bottom - true - - ФормаКоманднаяПанель - -1 - - ФормаОтменить - 6 - true - true - - true - - - ФормаОтменитьExtendedTooltip - 10 - Label - true - true - - Left - - - Form.Command.ОтменитьОперациюИЗакрытьФорму - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - ФормаСправка - 9 - true - true - - true - - true - - ФормаСправкаExtendedTooltip - 11 - Label - true - true - - Left - - - Form.StandardCommand.Help - Normal - Auto - true - true - UserCmds - Auto - - Right - true - - - OnOpen - ПриОткрытии - - - OnCreateAtServer - ПриСозданииНаСервере - - - OnClose - ПриЗакрытии - - Abort - Cancel - Close - CustomizeForm - Ignore - No - OK - RestoreValues - Retry - SaveValues - Yes - LockOwner - true - true - Vertical - true - true - true - auto - true - - Выполнено - - <key>ru</key> - <value>Выполнено</value> - - 8 - - Boolean - - - true - - - true - - - - Результат - - <key>ru</key> - <value>Результат</value> - - 1 - - - true - - - true - - - - ФоновоеЗаданиеИдентификатор - - <key>ru</key> - <value>Фоновое задание идентификатор</value> - - 2 - - UUID - - - true - - - true - - - - ФоновоеЗаданиеАдресХранилища - - <key>ru</key> - <value>Фоновое задание адрес хранилища</value> - - 3 - - String - - - - true - - - true - - - - ТекстОшибки - - <key>ru</key> - <value>Текст ошибки</value> - - 4 - - String - - - - true - - - true - - - - ИнтервалПроверки - - <key>ru</key> - <value>Интервал проверки</value> - - 5 - - Number - - 10 - - - - true - - - true - - - - СопровождающийТекст - - <key>ru</key> - <value>Сопровождающий текст</value> - - 6 - - String - - - - true - - - true - - - - ИдентификаторКоманды - - <key>ru</key> - <value>Идентификатор команды</value> - - 7 - - String - - - - true - - - true - - - - ДополнительнаяОбработкаСсылка - - <key>ru</key> - <value>Внешняя обработка ссылка</value> - - 9 - - CatalogRef.ДополнительныеОтчетыИОбработки - - - true - - - true - - - - ФоновоеЗаданиеПроверитьПриЗакрытии - - <key>ru</key> - <value>Фоновое задание проверить при закрытии</value> - - 10 - - Boolean - - - true - - - true - - - - ОтменитьОперациюИЗакрытьФорму - - <key>ru</key> - <value>Отменить</value> - - 1 - - ru - Отменить операцию и закрыть форму - - - true - - - - Отменить - - - Text - DontUse - Auto - - - - - - diff --git a/SSL/src/CommonForms/ДлительнаяОперацияДополнительныхОтчетовИОбработок/Help/ru.html b/SSL/src/CommonForms/ДлительнаяОперацияДополнительныхОтчетовИОбработок/Help/ru.html deleted file mode 100644 index 3e360f047..000000000 --- a/SSL/src/CommonForms/ДлительнаяОперацияДополнительныхОтчетовИОбработок/Help/ru.html +++ /dev/null @@ -1 +0,0 @@ -Внимание! Идет выполнение дополнительной обработки (отчета). Это может занять какое-то время. Для прерывания нажмите кнопку Отмена. \ No newline at end of file diff --git a/SSL/src/CommonForms/ДлительнаяОперацияДополнительныхОтчетовИОбработок/Module.bsl b/SSL/src/CommonForms/ДлительнаяОперацияДополнительныхОтчетовИОбработок/Module.bsl deleted file mode 100644 index 4ef69de32..000000000 --- a/SSL/src/CommonForms/ДлительнаяОперацияДополнительныхОтчетовИОбработок/Module.bsl +++ /dev/null @@ -1,152 +0,0 @@ - -#Область ОбработчикиСобытийФормы - -&НаСервере -Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - Если Параметры.Свойство("АвтоТест") Тогда - Возврат; - КонецЕсли; - - ПараметрыЗапускаФоновогоЗадания = Неопределено; - Если НЕ Параметры.Свойство("ПараметрыЗапускаФоновогоЗадания", ПараметрыЗапускаФоновогоЗадания) Тогда - Отказ = Истина; - Возврат; - КонецЕсли; - - Если ПараметрыЗапускаФоновогоЗадания.Свойство("СопровождающийТекст") И ЗначениеЗаполнено(ПараметрыЗапускаФоновогоЗадания.СопровождающийТекст) Тогда - СопровождающийТекст = ПараметрыЗапускаФоновогоЗадания.СопровождающийТекст; - Иначе - СопровождающийТекст = НСтр("ru = 'Команда выполняется...'"); - КонецЕсли; - - Если ПараметрыЗапускаФоновогоЗадания.Свойство("Заголовок") И ЗначениеЗаполнено(ПараметрыЗапускаФоновогоЗадания.Заголовок) Тогда - Заголовок = ПараметрыЗапускаФоновогоЗадания.Заголовок; - Иначе - Заголовок = НСтр("ru = 'Пожалуйста, подождите'"); - КонецЕсли; - - Попытка - - ЗаданиеРезультат = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "ДополнительныеОтчетыИОбработки.ВыполнитьКоманду", - ПараметрыЗапускаФоновогоЗадания, - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Выполнение дополнительного отчета или обработки ""%1"", имя команды ""%2""'"), - Строка(ПараметрыЗапускаФоновогоЗадания.ДополнительнаяОбработкаСсылка), - ПараметрыЗапускаФоновогоЗадания.ИдентификаторКоманды)); - - Выполнено = ЗаданиеРезультат.ЗаданиеВыполнено; - ВызваноИсключение = Ложь; - - Если Выполнено Тогда - Результат = ПолучитьИзВременногоХранилища(ЗаданиеРезультат.АдресХранилища); - Иначе - ФоновоеЗаданиеИдентификатор = ЗаданиеРезультат.ИдентификаторЗадания; - ФоновоеЗаданиеАдресХранилища = ЗаданиеРезультат.АдресХранилища; - КонецЕсли; - - Исключение - - Выполнено = Ложь; - ВызваноИсключение = Истина; - ТекстОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); - - КонецПопытки; - -КонецПроцедуры - -&НаКлиенте -Процедура ПриОткрытии(Отказ) - - Если Выполнено Тогда - Отказ = Истина; - ОповеститьОВыборе(Результат); - Иначе - ИнтервалПроверки = 1; - ФоновоеЗаданиеПроверитьПриЗакрытии = Истина; - ПодключитьОбработчикОжидания("ПроверитьВыполнение", ИнтервалПроверки, Истина); - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ПриЗакрытии() - Если ФоновоеЗаданиеПроверитьПриЗакрытии Тогда - ФоновоеЗаданиеПроверитьПриЗакрытии = Ложь; - РезультатПроверки = ПроверитьВыполнениеНаСервере(ФоновоеЗаданиеИдентификатор, ФоновоеЗаданиеАдресХранилища, Истина); - Если РезультатПроверки.ЗаданиеВыполнено Тогда - ОповеститьОВыборе(РезультатПроверки.Значение); - КонецЕсли; - КонецЕсли; -КонецПроцедуры - -#КонецОбласти - -#Область ОбработчикиКомандФормы - -&НаКлиенте -Процедура Отменить(Команда) - ТекстВопроса = НСтр("ru = 'Длительная операция еще выполняется.'"); - - Кнопки = Новый СписокЗначений; - Кнопки.Добавить(1, НСтр("ru = 'Продолжить'")); - Кнопки.Добавить(КодВозвратаДиалога.Прервать); - - ОтключитьОбработчикОжидания("ПроверитьВыполнение"); - - Обработчик = Новый ОписаниеОповещения("ОтменитьЗавершение", ЭтотОбъект); - ПоказатьВопрос(Обработчик, ТекстВопроса, Кнопки, 60, 1); -КонецПроцедуры - -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -&НаКлиенте -Процедура ПроверитьВыполнение() - РезультатПроверки = ПроверитьВыполнениеНаСервере(ФоновоеЗаданиеИдентификатор, ФоновоеЗаданиеАдресХранилища, Ложь); - - Если РезультатПроверки.ЗаданиеВыполнено Тогда - ФоновоеЗаданиеПроверитьПриЗакрытии = Ложь; - ОповеститьОВыборе(РезультатПроверки.Значение); - КонецЕсли; - - Если ИнтервалПроверки < 15 Тогда - ИнтервалПроверки = ИнтервалПроверки + 0.7; - КонецЕсли; - ПодключитьОбработчикОжидания("ПроверитьВыполнение", ИнтервалПроверки, Истина); -КонецПроцедуры - -&НаСервереБезКонтекста -Функция ПроверитьВыполнениеНаСервере(ФоновоеЗаданиеИдентификатор, ФоновоеЗаданиеАдресХранилища, ПрерватьЕслиНеВыполнено) - РезультатПроверки = Новый Структура("ЗаданиеВыполнено, Значение", Ложь, Неопределено); - Если ДлительныеОперации.ЗаданиеВыполнено(ФоновоеЗаданиеИдентификатор) Тогда - РезультатПроверки.ЗаданиеВыполнено = Истина; - РезультатПроверки.Значение = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); - ИначеЕсли ПрерватьЕслиНеВыполнено Тогда - ДлительныеОперации.ОтменитьВыполнениеЗадания(ФоновоеЗаданиеИдентификатор); - КонецЕсли; - Возврат РезультатПроверки; -КонецФункции - -&НаКлиенте -Процедура ОтменитьЗавершение(Ответ, ДополнительныеПараметры) Экспорт - ПрерватьЕслиНеВыполнено = (Ответ = КодВозвратаДиалога.Прервать); - - РезультатПроверки = ПроверитьВыполнениеНаСервере(ФоновоеЗаданиеИдентификатор, ФоновоеЗаданиеАдресХранилища, ПрерватьЕслиНеВыполнено); - - Если РезультатПроверки.ЗаданиеВыполнено ИЛИ ПрерватьЕслиНеВыполнено Тогда - ФоновоеЗаданиеПроверитьПриЗакрытии = Ложь; - ОповеститьОВыборе(РезультатПроверки.Значение); - Возврат; - КонецЕсли; - - Если ИнтервалПроверки < 15 Тогда - ИнтервалПроверки = ИнтервалПроверки + 0.7; - КонецЕсли; - - ПодключитьОбработчикОжидания("ПроверитьВыполнение", ИнтервалПроверки, Истина); -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/CommonForms/ДлительнаяОперацияДополнительныхОтчетовИОбработок/ДлительнаяОперацияДополнительныхОтчетовИОбработок.mdo b/SSL/src/CommonForms/ДлительнаяОперацияДополнительныхОтчетовИОбработок/ДлительнаяОперацияДополнительныхОтчетовИОбработок.mdo deleted file mode 100644 index 03a569a3c..000000000 --- a/SSL/src/CommonForms/ДлительнаяОперацияДополнительныхОтчетовИОбработок/ДлительнаяОперацияДополнительныхОтчетовИОбработок.mdo +++ /dev/null @@ -1,15 +0,0 @@ - - - ДлительнаяОперацияДополнительныхОтчетовИОбработок - - ru - Длительная операция дополнительных отчетов и обработок - - - - ru - - - PersonalComputer - MobileDevice - diff --git a/SSL/src/CommonForms/ДобавлениеЭлектроннойПодписиИзФайла/Form.form b/SSL/src/CommonForms/ДобавлениеЭлектроннойПодписиИзФайла/Form.form index 799b7bd71..a855ec0e3 100644 --- a/SSL/src/CommonForms/ДобавлениеЭлектроннойПодписиИзФайла/Form.form +++ b/SSL/src/CommonForms/ДобавлениеЭлектроннойПодписиИзФайла/Form.form @@ -43,7 +43,6 @@ Click ПредставлениеДанныхНажатие - true true true
      @@ -320,6 +319,7 @@ true true + 60 true true true @@ -413,7 +413,6 @@ OnCreateAtServer ПриСозданииНаСервере - 60 LockOwner true true @@ -570,6 +569,13 @@ + + ПредставлениеДанныхОткрывается + + String + + + diff --git a/SSL/src/CommonForms/ДополнительныеОтчетыИОбработки/Form.form b/SSL/src/CommonForms/ДополнительныеОтчетыИОбработки/Form.form index b5bc26ecf..16dec7c18 100644 --- a/SSL/src/CommonForms/ДополнительныеОтчетыИОбработки/Form.form +++ b/SSL/src/CommonForms/ДополнительныеОтчетыИОбработки/Form.form @@ -253,13 +253,10 @@ 45 true - 7 true - 3 true - false - false true + Center CommonPicture.ДлительнаяОперация48 @@ -269,6 +266,10 @@ ПоясняющаяДекорация 46 + + <key>ru</key> + <value>Поясняющая декорация</value> + true true @@ -290,12 +291,9 @@ true Label - true - 3 true - true - false true + Center Left Center @@ -314,6 +312,7 @@ ru Страница выполнения обработки + true СтраницаВыполненияОбработкиExtendedTooltip 58 @@ -326,6 +325,7 @@ Page + Center auto false @@ -359,14 +359,70 @@ - СтраницыКомандныеПанели - 48 + Подвал + 79 + + НастроитьСписок + 35 + true + true + + true + + false + + НастроитьСписокExtendedTooltip + 63 + Label + true + true + + Left + + + Hyperlink + Form.Command.НастроитьСписок + Normal + Auto + true + true + UserCmds + Auto + - СтраницаКоманднаяПанельСтраницыОткрытьОбработку - 49 + КоманднаяПанельСтраницыОткрытьОбработку + 36 - НастроитьСписок - 35 + ВыполнитьОбработку + 28 + true + true + + true + + true + false + + ВыполнитьОбработкуExtendedTooltip + 65 + Label + true + true + + Left + + + Form.Command.ВыполнитьОбработку + Auto + true + true + true + UserCmds + Auto + + + ЗакрытьФорму + 29 true true @@ -374,8 +430,8 @@ false - НастроитьСписокExtendedTooltip - 63 + ЗакрытьФормуРасширеннаяПодсказка + 66 Label true true @@ -383,8 +439,7 @@ Left - Hyperlink - Form.Command.НастроитьСписок + Form.StandardCommand.Cancel Normal Auto true @@ -392,92 +447,6 @@ UserCmds Auto - - КоманднаяПанельСтраницыОткрытьОбработку - 36 - - ВыполнитьОбработку - 28 - true - true - - true - - true - false - - ВыполнитьОбработкуExtendedTooltip - 65 - Label - true - true - - Left - - - Form.Command.ВыполнитьОбработку - Auto - true - true - true - UserCmds - Auto - - - Отмена - 29 - true - true - - true - - false - - ОтменаExtendedTooltip - 66 - Label - true - true - - Left - - - Form.StandardCommand.Cancel - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Командная панель страницы открыть обработку</value> - - - ru - Командная панель страницы открыть обработку - - - КоманднаяПанельСтраницыОткрытьОбработкуExtendedTooltip - 64 - Label - true - true - - Left - - - CommandBar - - Right - - true true @@ -485,105 +454,15 @@ <key>ru</key> - <value>Страница командная панель страницы открыть обработку</value> - - - ru - Страница командная панель страницы открыть обработку - - - СтраницаКоманднаяПанельСтраницыОткрытьОбработкуExtendedTooltip - 62 - Label - true - true - - Left - - - Page - - auto - false - - - - СтраницаКоманднаяПанельСтраницыВыполненияОбработки - 50 - - КоманднаяПанельСтраницыВыполненияОбработки - 51 - - ОтменитьВыполнениеОбработки - 53 - true - true - - true - - false - - ОтменитьВыполнениеОбработкиExtendedTooltip - 69 - Label - true - true - - Left - - - Form.Command.ОтменитьВыполнениеОбработки - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Командная панель страницы выполнения обработки</value> - - - ru - Командная панель - - - КоманднаяПанельСтраницыВыполненияОбработкиExtendedTooltip - 68 - Label - true - true - - Left - - - CommandBar - - Right - - - true - true - - true - - - <key>ru</key> - <value>Страница командная панель страницы выполнения обработки</value> + <value>Командная панель страницы открыть обработку</value> ru Командная панель страницы открыть обработку - СтраницаКоманднаяПанельСтраницыВыполненияОбработкиExtendedTooltip - 67 + КоманднаяПанельСтраницыОткрытьОбработкуExtendedTooltip + 64 Label true true @@ -591,11 +470,9 @@ Left
      - Page - - Vertical - auto - false + CommandBar + + Right true @@ -605,15 +482,15 @@ <key>ru</key> - <value>Страницы командные панели</value> + <value>Подвал</value> ru - Страницы командные панели + Подвал - СтраницыКомандныеПанелиExtendedTooltip - 61 + ПодвалРасширеннаяПодсказка + 80 Label true true @@ -621,8 +498,12 @@ Left - Pages - + UsualGroup + + Auto + true + true + Auto Auto @@ -641,12 +522,7 @@ OnCreateAtServer ПриСозданииНаСервере - - OnClose - ПриЗакрытии - CustomizeForm - 70 DontBlock true true diff --git a/SSL/src/CommonForms/ДополнительныеОтчетыИОбработки/Module.bsl b/SSL/src/CommonForms/ДополнительныеОтчетыИОбработки/Module.bsl index 01dae2c01..7fc804e46 100644 --- a/SSL/src/CommonForms/ДополнительныеОтчетыИОбработки/Module.bsl +++ b/SSL/src/CommonForms/ДополнительныеОтчетыИОбработки/Module.bsl @@ -1,8 +1,5 @@ #Область ОписаниеПеременных -&НаКлиенте -Перем ПараметрыОбработчика; - &НаКлиенте Перем ВыполняемаяКоманда; @@ -16,17 +13,12 @@ Возврат; КонецЕсли; - Если Параметры.Свойство("РежимОткрытияОкна") Тогда - ЭтотОбъект.РежимОткрытияОкна = Параметры.РежимОткрытияОкна; - КонецЕсли; - Если ЗначениеЗаполнено(Параметры.ИмяРаздела) И Параметры.ИмяРаздела <> ДополнительныеОтчетыИОбработкиКлиентСервер.ИдентификаторРабочегоСтола() Тогда СсылкаРаздела = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(Метаданные.Подсистемы.Найти(Параметры.ИмяРаздела)); КонецЕсли; ВидОбработок = ДополнительныеОтчетыИОбработки.ПолучитьВидОбработкиПоСтроковомуПредставлениюВида(Параметры.Вид); - Если ВидОбработок = Перечисления.ВидыДополнительныхОтчетовИОбработок.ЗаполнениеОбъекта Тогда ЭтоНазначаемыеОбработки = Истина; Заголовок = НСтр("ru = 'Команды заполнения объектов'"); @@ -40,6 +32,9 @@ ИначеЕсли ВидОбработок = Перечисления.ВидыДополнительныхОтчетовИОбработок.СозданиеСвязанныхОбъектов Тогда ЭтоНазначаемыеОбработки = Истина; Заголовок = НСтр("ru = 'Команды создания связанных объектов'"); + ИначеЕсли ВидОбработок = Перечисления.ВидыДополнительныхОтчетовИОбработок.ШаблонСообщения Тогда + ЭтоНазначаемыеОбработки = Истина; + Заголовок = НСтр("ru = 'Шаблоны сообщений'"); ИначеЕсли ВидОбработок = Перечисления.ВидыДополнительныхОтчетовИОбработок.ДополнительнаяОбработка Тогда ЭтоГлобальныеОбработки = Истина; Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( @@ -53,6 +48,9 @@ ДополнительныеОтчетыИОбработки.ПредставлениеРаздела(СсылкаРаздела)); КонецЕсли; + Если Параметры.Свойство("РежимОткрытияОкна") Тогда + РежимОткрытияОкна = Параметры.РежимОткрытияОкна; + КонецЕсли; Если Параметры.Свойство("Заголовок") Тогда Заголовок = Параметры.Заголовок; КонецЕсли; @@ -61,16 +59,21 @@ Элементы.НастроитьСписок.Видимость = Ложь; ОбъектыНазначения.ЗагрузитьЗначения(Параметры.ОбъектыНазначения.ВыгрузитьЗначения()); + Если ОбъектыНазначения.Количество() = 0 Тогда + Отказ = Истина; + Возврат; + КонецЕсли; - ИмяФормыВладельца = Параметры.ИмяФормы; - ИнформацияОВладельце = ДополнительныеОтчетыИОбработкиПовтИсп.ПараметрыФормыНазначаемогоОбъекта(ИмяФормыВладельца); - + ИнформацияОВладельце = ДополнительныеОтчетыИОбработкиПовтИсп.ПараметрыФормыНазначаемогоОбъекта(Параметры.ИмяФормы); + МетаданныеРодителя = Метаданные.НайтиПоТипу(ТипЗнч(ОбъектыНазначения[0].Значение)); + Если МетаданныеРодителя = Неопределено Тогда + СсылкаРодителя = ИнформацияОВладельце.СсылкаРодителя; + Иначе + СсылкаРодителя = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(МетаданныеРодителя); + КонецЕсли; Если ТипЗнч(ИнформацияОВладельце) = Тип("ФиксированнаяСтруктура") Тогда - СсылкаРодителя = ИнформацияОВладельце.СсылкаРодителя; ЭтоФормаОбъекта = ИнформацияОВладельце.ЭтоФормаОбъекта; Иначе - МетаданныеРодителя = Метаданные.НайтиПоТипу(ТипЗнч(ОбъектыНазначения[0].Значение)); - СсылкаРодителя = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(МетаданныеРодителя); ЭтоФормаОбъекта = Ложь; КонецЕсли; КонецЕсли; @@ -85,19 +88,6 @@ КонецЕсли; КонецПроцедуры -&НаКлиенте -Процедура ПриЗакрытии() - Если ФоновоеЗаданиеПроверитьВыполнениеПриЗакрытии Тогда - ФоновоеЗаданиеПроверитьВыполнениеПриЗакрытии = Ложь; - ОтключитьОбработчикОжидания("ПроверитьВыполнениеФоновогоЗадания"); - - Задание = ПроверитьВыполнениеФоновогоЗаданияНаСервере(ФоновоеЗаданиеИдентификатор, ФоновоеЗаданиеАдресХранилища, Истина); - Если Задание.Завершено Тогда - ПоказатьРезультатВыполненияОбработки(Задание, Ложь); - КонецЕсли; - КонецЕсли; -КонецПроцедуры - #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыТаблицаКоманд @@ -130,10 +120,9 @@ Открытие.Владелец = ЭтотОбъект; Открытие.Уникальность = Ложь; - Открытие.Параметры = Новый Структура("ВидОбработок, ЭтоГлобальныеОбработки, ТекущийРаздел"); - Открытие.Параметры.ВидОбработок = ВидОбработок; - Открытие.Параметры.ЭтоГлобальныеОбработки = ЭтоГлобальныеОбработки; - Открытие.Параметры.ТекущийРаздел = СсылкаРаздела; + Открытие.Параметры = Новый Структура("ВидОбработок, СсылкаРаздела"); + Открытие.Параметры.ВидОбработок = ВидОбработок; + Открытие.Параметры.СсылкаРаздела = СсылкаРаздела; ОткрытьФорму(Открытие.Имя, Открытие.Параметры, Открытие.Владелец, Открытие.Уникальность, Открытие.Окно); КонецПроцедуры @@ -156,10 +145,8 @@ ТипыКоманд.Добавить(Перечисления.СпособыВызоваДополнительныхОбработок.СценарийВБезопасномРежиме); Запрос = ДополнительныеОтчетыИОбработки.НовыйЗапросПоДоступнымКомандам(ВидОбработок, ?(ЭтоГлобальныеОбработки, СсылкаРаздела, СсылкаРодителя), ЭтоФормаОбъекта, ТипыКоманд); - ТаблицаРезультат = Запрос.Выполнить().Выгрузить(); - - ЗначениеВРеквизитФормы(ТаблицаРезультат, "ТаблицаКоманд"); + ТаблицаКоманд.Загрузить(ТаблицаРезультат); КонецПроцедуры &НаКлиенте @@ -204,7 +191,8 @@ НСтр("ru = 'Выполняется команда ""%1""...'"), ДанныеОбработки.Представление); Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаВыполненияОбработки; - Элементы.СтраницыКомандныеПанели.ТекущаяСтраница = Элементы.СтраницаКоманднаяПанельСтраницыВыполненияОбработки; + Элементы.НастроитьСписок.Видимость = Ложь; + Элементы.ВыполнитьОбработку.Видимость = Ложь; // Вызов сервера только после перехода формы в консистентное состояние. ПодключитьОбработчикОжидания("ВыполнитьСерверныйМетодОбработки", 0.1, Истина); @@ -215,64 +203,48 @@ &НаКлиенте Процедура ВыполнитьСерверныйМетодОбработки() - ФоновоеЗаданиеПроверитьВыполнениеПриЗакрытии = Истина; + Задание = ЗапуститьФоновоеЗадание(ВыполняемаяКоманда, УникальныйИдентификатор); - ПараметрыВызоваСервера = Новый Структура("ДополнительнаяОбработкаСсылка, ИдентификаторКоманды, ОбъектыНазначения"); - ПараметрыВызоваСервера.ДополнительнаяОбработкаСсылка = ВыполняемаяКоманда.Ссылка; - ПараметрыВызоваСервера.ИдентификаторКоманды = ВыполняемаяКоманда.Идентификатор; - ПараметрыВызоваСервера.ОбъектыНазначения = ВыполняемаяКоманда.ОбъектыНазначения; + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + НастройкиОжидания.ВыводитьОкноОжидания = Ложь; + НастройкиОжидания.ПолучатьРезультат = Истина; - Задание = ВыполнитьСерверныйМетодОбработкиНаСервере(ПараметрыВызоваСервера); + Обработчик = Новый ОписаниеОповещения("ПослеЗавершенияФоновогоЗадания", ЭтотОбъект); - Если Задание.Завершено Тогда - ПоказатьРезультатВыполненияОбработки(Задание, Истина); - Иначе - ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ПодключитьОбработчикОжидания("ПроверитьВыполнениеФоновогоЗадания", 1, Истина); - КонецЕсли; + ДлительныеОперацииКлиент.ОжидатьЗавершение(Задание, Обработчик, НастройкиОжидания); КонецПроцедуры -&НаСервере -Функция ВыполнитьСерверныйМетодОбработкиНаСервере(ПараметрыВызоваСервера) - Задание = Новый Структура("Завершено, Успешно, Значение", Ложь, Неопределено, Неопределено); +&НаСервереБезКонтекста +Функция ЗапуститьФоновоеЗадание(Знач ВыполняемаяКоманда, Знач УникальныйИдентификатор) + ИмяМетода = "ДополнительныеОтчетыИОбработки.ВыполнитьКоманду"; - Попытка - РезультатФоновогоЗадания = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "ДополнительныеОтчетыИОбработки.ВыполнитьКоманду", - ПараметрыВызоваСервера, - НСтр("ru = 'Дополнительные отчеты и обработки: Выполнение серверного метода обработки'")); - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - Задание.Завершено = Истина; - Задание.Успешно = Истина; - Задание.Значение = ПолучитьИзВременногоХранилища(РезультатФоновогоЗадания.АдресХранилища); - Иначе - ФоновоеЗаданиеИдентификатор = РезультатФоновогоЗадания.ИдентификаторЗадания; - ФоновоеЗаданиеАдресХранилища = РезультатФоновогоЗадания.АдресХранилища; - КонецЕсли; - Исключение - Задание.Завершено = Истина; - Задание.Успешно = Ложь; - Задание.Значение = Новый Структура; - Текст = НСтр("ru = 'Не удалось выполнить команду.'"); - СтандартныеПодсистемыКлиентСервер.ВывестиИнформациюОбОшибке(Задание.Значение, Текст, ИнформацияОбОшибке()); - КонецПопытки; + НастройкиЗапуска = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + НастройкиЗапуска.НаименованиеФоновогоЗадания = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Доп. отчеты и обработки: Выполнение команды ""%1""'"), + ВыполняемаяКоманда.Представление); - Возврат Задание; + ПараметрыМетода = Новый Структура("ДополнительнаяОбработкаСсылка, ИдентификаторКоманды, ОбъектыНазначения"); + ПараметрыМетода.ДополнительнаяОбработкаСсылка = ВыполняемаяКоманда.Ссылка; + ПараметрыМетода.ИдентификаторКоманды = ВыполняемаяКоманда.Идентификатор; + ПараметрыМетода.ОбъектыНазначения = ВыполняемаяКоманда.ОбъектыНазначения; + + Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяМетода, ПараметрыМетода, НастройкиЗапуска); КонецФункции &НаКлиенте -Процедура ПоказатьРезультатВыполненияОбработки(Задание, ЗакрытьЭтуФорму) - Если Задание.Успешно Тогда - // Показать всплывающее оповещение. +Процедура ПослеЗавершенияФоновогоЗадания(Задание, ДополнительныеПараметры) Экспорт + Если Задание.Статус = "Выполнено" Тогда + // Показ всплывающего оповещения и закрытие этой формы. Если ВыполняемаяКоманда.ПоказыватьОповещение Тогда ПоказатьОповещениеПользователя( НСтр("ru = 'Команда выполнена'"), , ВыполняемаяКоманда.Представление); КонецЕсли; - - // Обновить форму владельца + Если Открыта() Тогда + Закрыть(); + КонецЕсли; + // Обновление формы владельца. Если ЭтоФормаОбъекта Тогда Попытка ВладелецФормы.Прочитать(); @@ -280,56 +252,30 @@ // Действие не требуется. КонецПопытки; КонецЕсли; - КонецЕсли; - - // Фоновое задание уже завершилось. - ФоновоеЗаданиеПроверитьВыполнениеПриЗакрытии = Ложь; - - // Закрыть текущую форму - Если ЗакрытьЭтуФорму = Истина Тогда - Закрыть(); - КонецЕсли; - - // Вывод результата выполнения. - РезультатВыполнения = Задание.Значение; - Если РезультатВыполнения <> Неопределено Тогда - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ВладелецФормы, РезультатВыполнения); + // Оповещение других форм. + РезультатВыполнения = ПолучитьИзВременногоХранилища(Задание.АдресРезультата); + ОповеститьФормы = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(РезультатВыполнения, "ОповеститьФормы"); + Если ОповеститьФормы <> Неопределено Тогда + СтандартныеПодсистемыКлиент.ОповеститьФормыОбИзменении(ОповеститьФормы); + КонецЕсли; + Иначе + Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаОткрытьОбработку; + Обработчик = Новый ОписаниеОповещения("ПослеПоказаТекстаОшибкиФоновогоЗадания", ЭтотОбъект); + Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Команда ""%1"" не выполнена:'"), + ВыполняемаяКоманда.Представление); + Предупреждение = Новый Структура; + Предупреждение.Вставить("Текст", Текст + Символы.ПС + Задание.КраткоеПредставлениеОшибки); + Предупреждение.Вставить("Подробно", Задание.ПодробноеПредставлениеОшибки); + СтандартныеПодсистемыКлиент.ВывестиПредупреждение(ЭтотОбъект, Предупреждение, Обработчик); КонецЕсли; КонецПроцедуры &НаКлиенте -Процедура ПроверитьВыполнениеФоновогоЗадания() - Задание = ПроверитьВыполнениеФоновогоЗаданияНаСервере(ФоновоеЗаданиеИдентификатор, ФоновоеЗаданиеАдресХранилища); - Если Задание.Завершено Тогда - ПоказатьРезультатВыполненияОбработки(Задание, Истина); - Иначе - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ПодключитьОбработчикОжидания("ПроверитьВыполнениеФоновогоЗадания", ПараметрыОбработчика.ТекущийИнтервал, Истина); +Процедура ПослеПоказаТекстаОшибкиФоновогоЗадания(ПустойПараметр, ДополнительныеПараметры) Экспорт + Если Открыта() Тогда + Закрыть(); КонецЕсли; КонецПроцедуры -&НаСервереБезКонтекста -Функция ПроверитьВыполнениеФоновогоЗаданияНаСервере(ФоновоеЗаданиеИдентификатор, ФоновоеЗаданиеАдресХранилища, Отменить = Ложь) - Результат = Новый Структура("Завершено, Успешно, Значение", Ложь, Ложь, Неопределено); - - Задание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(ФоновоеЗаданиеИдентификатор); - Если Задание = Неопределено Тогда - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение(Результат.Значение, НСтр("ru = 'Фоновое задание не найдено.'")); - ИначеЕсли Задание.Состояние = СостояниеФоновогоЗадания.Активно Тогда - Если Отменить Тогда - ДлительныеОперации.ОтменитьВыполнениеЗадания(ФоновоеЗаданиеИдентификатор); - КонецЕсли; - ИначеЕсли Задание.Состояние = СостояниеФоновогоЗадания.Завершено Тогда - Результат.Завершено = Истина; - Результат.Успешно = Истина; - Результат.Значение = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); - ИначеЕсли Задание.Состояние = СостояниеФоновогоЗадания.ЗавершеноАварийно Или Задание.Состояние = СостояниеФоновогоЗадания.Отменено Тогда - Результат.Завершено = Истина; - Текст = НСтр("ru = 'Не удалось выполнить команду.'"); - СтандартныеПодсистемыКлиентСервер.ВывестиИнформациюОбОшибке(Задание.Значение, Текст, Задание.ИнформацияОбОшибке); - КонецЕсли; - - Возврат Результат; -КонецФункции - -#КонецОбласти +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonForms/ДополнительныеПараметрыПроксиСервера/Form.form b/SSL/src/CommonForms/ДополнительныеПараметрыПроксиСервера/Form.form index 9f4799808..83a32aa02 100644 --- a/SSL/src/CommonForms/ДополнительныеПараметрыПроксиСервера/Form.form +++ b/SSL/src/CommonForms/ДополнительныеПараметрыПроксиСервера/Form.form @@ -664,7 +664,6 @@ true Label - true true Style.ПоясняющийТекст diff --git a/SSL/src/CommonForms/ЗаполнениеРеквизитовКонтрагента/Form.form b/SSL/src/CommonForms/ЗаполнениеРеквизитовКонтрагента/Form.form index 5c5847bf1..42269af43 100644 --- a/SSL/src/CommonForms/ЗаполнениеРеквизитовКонтрагента/Form.form +++ b/SSL/src/CommonForms/ЗаполнениеРеквизитовКонтрагента/Form.form @@ -44,10 +44,8 @@ Left true - 35 true true - false true true true @@ -140,10 +138,8 @@ Left true - 25 true true - false true true true @@ -598,6 +594,7 @@ Left true + 60 true true @@ -692,11 +689,6 @@ ru Командная панель - - ru - Командная панель - - false ГруппаКоманднаяПанельРасширеннаяПодсказка 57 diff --git a/SSL/src/CommonForms/ЗаполнениеРеквизитовКонтрагента/Module.bsl b/SSL/src/CommonForms/ЗаполнениеРеквизитовКонтрагента/Module.bsl index 08ab0e0b4..9c035d4b5 100644 --- a/SSL/src/CommonForms/ЗаполнениеРеквизитовКонтрагента/Module.bsl +++ b/SSL/src/CommonForms/ЗаполнениеРеквизитовКонтрагента/Module.bsl @@ -3,6 +3,15 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + Если Параметры.Свойство("АвтоТест") Тогда + Возврат; + КонецЕсли; + + Если НЕ ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + ТекстИсключения = НСтр("ru='Заполнение реквизитов в данной конфигурации невозможно.'"); + ВызватьИсключение ТекстИсключения; + КонецЕсли; + СтрокаПоиска = Параметры.СтрокаПоиска; Если НЕ ПустаяСтрока(Параметры.Заголовок) Тогда Заголовок = Параметры.Заголовок; @@ -185,7 +194,7 @@ Информация = ""; Контрагенты.Очистить(); КоличествоНайденных = 0; - + ПоискПоИНН = ЭтоИНН(СтрокаПоиска); ПоискЮридическогоЛица = (ПоискПоИНН И СтрДлина(СтрокаПоиска) = 10) ИЛИ НЕ ПоискПоИНН; @@ -252,9 +261,12 @@ &НаКлиенте Процедура ПодключитьИнтернетПоддержку(Ответ, ДопПараметры) Экспорт - Если Ответ = КодВозвратаДиалога.Да Тогда + Если Ответ = КодВозвратаДиалога.Да + И ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда ОписаниеОповещения = Новый ОписаниеОповещения("ПодключитьИнтернетПоддержкуЗавершение", ЭтотОбъект, ДопПараметры); - СтандартныеПодсистемыКлиент.АвторизоватьНаСайтеПоддержкиПользователей(ЭтотОбъект, ОписаниеОповещения); + МодульИнтернетПоддержкаПользователейКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль( + "ИнтернетПоддержкаПользователейКлиент"); + МодульИнтернетПоддержкаПользователейКлиент.ПодключитьИнтернетПоддержкуПользователей(ОписаниеОповещения, ЭтотОбъект); КонецЕсли; КонецПроцедуры diff --git a/SSL/src/CommonForms/МастерАнкетыПоРазделам/Form.form b/SSL/src/CommonForms/МастерАнкетыПоРазделам/Form.form index 2e5c9da11..783e3ece2 100644 --- a/SSL/src/CommonForms/МастерАнкетыПоРазделам/Form.form +++ b/SSL/src/CommonForms/МастерАнкетыПоРазделам/Form.form @@ -1,56 +1,90 @@ - ГруппаКнопкиШапка - 69 - - Закрыть - 77 + ГруппаШапка + 135 + + ГруппаШапкаЛево + 141 + + Закрыть + 77 + + <key>ru</key> + <value>Закрыть</value> + + true + true + + true + + false + + ЗакрытьExtendedTooltip + 96 + Label + true + true + + Left + + + Form.StandardCommand.Close + Auto + true + true + Left + UserCmds + Auto + + + СкрытьПоказатьДеревоРазделов + 68 + + <key>ru</key> + <value>Скрыть разделы</value> + + true + true + + true + + false + + СкрытьПоказатьДеревоРазделовExtendedTooltip + 99 + Label + true + true + + Left + + + Form.Command.СкрытьПоказатьДеревоРазделов + Normal + Auto + true + true + Left + UserCmds + Auto + + true + true + + true + <key>ru</key> - <value>Закрыть</value> + <value>Группа шапка лево</value> - true - true - - true - - false - - ЗакрытьExtendedTooltip - 96 - Label - true - true - - Left - - - UsualButton - Form.StandardCommand.Close - Auto - true - true - true - UserCmds - Auto - - - СкрытьПоказатьДеревоРазделов - 68 - + <toolTip> <key>ru</key> - <value>Скрыть разделы</value> - - true - true - - true - - false + Группа шапка лево + - СкрытьПоказатьДеревоРазделовExtendedTooltip - 99 + ГруппаШапкаЛевоРасширеннаяПодсказка + 142 Label true true @@ -58,97 +92,123 @@ Left - UsualButton - Form.Command.СкрытьПоказатьДеревоРазделов - Normal - Auto - 15 - true - true - UserCmds - Auto - - - ДекорацияКнопкиШапка - 70 - true - true - - true - - - ДекорацияКнопкиШапкаExtendedTooltip - 100 - Label - true - true - - Left - - - - ДекорацияКнопкиШапкаКонтекстноеМеню - 71 - true - - Label - true - true - true - false - + CommandBar + Left - - ПредыдущийРаздел - 72 + + ГруппаШапкаПраво + 133 + + ПредыдущийРаздел + 72 + + <key>ru</key> + <value>< Назад</value> + + true + true + + true + + false + + ПредыдущийРазделExtendedTooltip + 101 + Label + true + true + + Left + + + Form.Command.ПредыдущийРаздел + Normal + Auto + 10 + true + true + Right + UserCmds + Auto + + + СледующийРаздел + 73 + + <key>ru</key> + <value>Далее ></value> + + true + true + + true + + false + + СледующийРазделExtendedTooltip + 102 + Label + true + true + + Left + + + Form.Command.СледующийРаздел + Normal + Auto + 10 + true + Right + UserCmds + Auto + + + ФормаСправка + 95 + true + true + + true + + + ФормаСправкаExtendedTooltip + 97 + Label + true + true + + Left + + + Form.StandardCommand.Help + Normal + Picture + 3 + true + true + Right + UserCmds + Auto + + true + true + + true + <key>ru</key> - <value>< Назад</value> + <value>Группа шапка право</value> - true - true - - true - - false - - ПредыдущийРазделExtendedTooltip - 101 - Label - true - true - - Left - - - UsualButton - Form.Command.ПредыдущийРаздел - Normal - Auto - 10 - true - true - UserCmds - Auto - - - СледующийРаздел - 73 - + <toolTip> <key>ru</key> - <value>Далее ></value> - - true - true - - true - - false + Группа шапка право + - СледующийРазделExtendedTooltip - 102 + ГруппаШапкаПравоРасширеннаяПодсказка + 134 Label true true @@ -156,44 +216,44 @@ Left - UsualButton - Form.Command.СледующийРаздел - Normal - Auto - 10 + CommandBar + + Right + + + true + true + + true + + + <key>ru</key> + <value>Группа шапка</value> + + true + + ГруппаШапкаРасширеннаяПодсказка + 136 + Label true true - UserCmds - Auto - - - ФормаСправка - 95 - true - true - - true - - - ФормаСправкаExtendedTooltip - 97 - Label - true - true - - Left - - - UsualButton - Form.StandardCommand.Help - Normal - Picture - 3 - true - true - UserCmds - Auto - + + Left + + + UsualGroup + + Auto + WeakSeparation + true + true + Auto + Auto + + + + ГруппаКнопкиШапка + 69 true true @@ -290,7 +350,7 @@ Left true - true + 30 true false true @@ -484,7 +544,7 @@ Tree true - true + 30 true true Row @@ -543,110 +603,9 @@ ГруппаОжидание 79 - - ГруппаОжиданиеОтступ - 86 - - ДекорацияОжиданиеОтступ - 88 - true - true - - true - - - ДекорацияОжиданиеОтступExtendedTooltip - 113 - Label - true - true - - Left - - - - ДекорацияОжиданиеОтступКонтекстноеМеню - 89 - true - - Label - true - 5 - true - false - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа ожидание отступ</value> - - - ru - Группа ожидание отступ - - - ГруппаОжиданиеОтступExtendedTooltip - 112 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - ГруппаОжиданиеЭлементы 87 - - ДекорацияОжиданиеЭлементы - 80 - - <key>ru</key> - <value>Декорация ожидание элементы</value> - - true - true - - true - - - ДекорацияОжиданиеЭлементыExtendedTooltip - 115 - Label - true - true - - Left - - - - ДекорацияОжиданиеЭлементыКонтекстноеМеню - 81 - true - - 20 - true - true - false - - КартинкаДлительныйПроцесс 82 @@ -670,9 +629,7 @@ 83 true - 5 true - 2 true false @@ -710,10 +667,7 @@ true Label - 20 - true 2 - true false Left @@ -733,6 +687,8 @@ ru Группа ожидание элементы + Center + Center ГруппаОжиданиеЭлементыExtendedTooltip 114 @@ -761,10 +717,6 @@ ru Группа ожидание - - ru - Группа ожидание - true true @@ -780,10 +732,10 @@ UsualGroup Vertical + Center Auto WeakSeparation true - true Auto Auto @@ -831,10 +783,6 @@ ru Группа тело анкеты - - ru - Группа тело анкеты - true ГруппаТелоАнкетыExtendedTooltip @@ -892,39 +840,7 @@ ГруппаКнопкиПодвал - 90 - - ДекорацияКнопкиПодвал - 91 - true - true - - true - - - ДекорацияКнопкиПодвалExtendedTooltip - 121 - Label - true - true - - Left - - - - ДекорацияКнопкиПодвалКонтекстноеМеню - 92 - true - - Label - true - true - true - false - - Left - - + 139 ПредыдущийРазделПодвал 93 @@ -948,7 +864,6 @@ Left - UsualButton Form.Command.ПредыдущийРаздел Normal Auto @@ -981,7 +896,6 @@ Left - UsualButton Form.Command.СледующийРаздел Normal Auto @@ -1000,9 +914,13 @@ ru Группа кнопки подвал + + ru + Группа кнопки подвал + - ГруппаКнопкиПодвалExtendedTooltip - 120 + ГруппаКнопкиПодвалРасширеннаяПодсказка + 140 Label true true @@ -1010,14 +928,9 @@ Left
      - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto + CommandBar + + Right Top @@ -1394,9 +1307,7 @@ 20 String - - 300 - + true @@ -1483,6 +1394,75 @@ true + + СоставКомплексногоВопроса + + <key>ru</key> + <value>Состав комплексного вопроса</value> + + 23 + + ValueTable + + + true + + + true + + + + Подсказка + + <key>ru</key> + <value>Подсказка</value> + + 24 + + String + + + + true + + + true + + + + СпособОтображенияПодсказки + + <key>ru</key> + <value>Способ отображения подсказки</value> + + 25 + + EnumRef.СпособыОтображенияПодсказок + + + true + + + true + + + + ВидПереключателя + + <key>ru</key> + <value>Вид переключателя</value> + + 26 + + EnumRef.ВидыПереключателяВАнкетах + + + true + + + true + + ТаблицаВопросовРаздела.СоставТабличногоВопроса @@ -1584,6 +1564,85 @@ + + + ТаблицаВопросовРаздела.СоставКомплексногоВопроса + + + ЭлементарныйВопрос + + <key>ru</key> + <value>Элементарный вопрос</value> + + 2 + + ChartOfCharacteristicTypesRef.ВопросыДляАнкетирования + + + true + + + true + + + + НомерСтроки + + <key>ru</key> + <value>Номер строки</value> + + 1 + + Number + + 10 + + + + true + + + true + + + + ТребуетсяКомментарий + + <key>ru</key> + <value>Требуется комментарий</value> + + 3 + + Boolean + + + true + + + true + + + + ПояснениеКомментария + + <key>ru</key> + <value>Пояснение комментария</value> + + 4 + + String + + 150 + + + + true + + + true + + + ПодчиненныеВопросы @@ -1917,6 +1976,23 @@ true + + ВидПереключателя + + <key>ru</key> + <value>Вид переключателя</value> + + 7 + + EnumRef.ВидыПереключателяВАнкетах + + + true + + + true + + ДеревоРазделов diff --git a/SSL/src/CommonForms/МастерАнкетыПоРазделам/Module.bsl b/SSL/src/CommonForms/МастерАнкетыПоРазделам/Module.bsl index e0998b805..5cf79d988 100644 --- a/SSL/src/CommonForms/МастерАнкетыПоРазделам/Module.bsl +++ b/SSL/src/CommonForms/МастерАнкетыПоРазделам/Module.bsl @@ -174,7 +174,6 @@ Элементы.ГруппаДеревоРазделов.Видимость = НЕ Элементы.ГруппаДеревоРазделов.Видимость; Элементы.СкрытьПоказатьДеревоРазделов.Заголовок = ?(Элементы.ГруппаДеревоРазделов.Видимость,НСтр("ru = 'Скрыть разделы'"), НСтр("ru = 'Показать разделы'")); - Элементы.ДекорацияОжиданиеЭлементы.Ширина = ?(Элементы.ГруппаДеревоРазделов.Видимость,20,45); КонецПроцедуры diff --git a/SSL/src/CommonForms/НапоминаниеПриРедактировании/Form.form b/SSL/src/CommonForms/НапоминаниеПриРедактировании/Form.form index 603656670..410f4b272 100644 --- a/SSL/src/CommonForms/НапоминаниеПриРедактировании/Form.form +++ b/SSL/src/CommonForms/НапоминаниеПриРедактировании/Form.form @@ -40,9 +40,7 @@ true Label - true true - false Left @@ -81,7 +79,6 @@ true Label - true true Left @@ -181,11 +178,6 @@ ru Дополнения - - ru - Дополнения - - true ДополненияExtendedTooltip 21 diff --git a/SSL/src/CommonForms/Настройка1СБухфон/Form.form b/SSL/src/CommonForms/Настройка1СБухфон/Form.form index 94d9ed080..d41375038 100644 --- a/SSL/src/CommonForms/Настройка1СБухфон/Form.form +++ b/SSL/src/CommonForms/Настройка1СБухфон/Form.form @@ -3,10 +3,6 @@ ВидимостьКнопки 88 - - <key>ru</key> - <value>Отображать кнопку запуска приложения для соединения со специалистом онлайн-поддержки на начальной странице</value> - true true @@ -84,7 +80,6 @@ StartChoice ПутьКФайлуНачалоВыбора - true true true true @@ -163,6 +158,7 @@ true Label + 1 true true @@ -384,9 +380,7 @@ 218 true - 4 true - 2 true @@ -398,7 +392,7 @@ ГруппыГиперссылки 43 - СкачайтеПрограмму + СкачатьПриложение 229 true true @@ -406,7 +400,7 @@ true - СкачайтеПрограммуРасширеннаяПодсказка + СкачатьПриложениеРасширеннаяПодсказка 230 Label true @@ -416,10 +410,11 @@ Hyperlink - Form.Command.СкачайтеПрограмму + Form.Command.СкачатьПриложение Normal Auto true + 1 true UserCmds Auto @@ -432,6 +427,7 @@ true + 2 Аккаунт1СБухфонExtendedTooltip 204 @@ -446,9 +442,7 @@ Form.Command.ПолучитьАккаунт1СБухфон Normal Auto - 22 true - 2 true UserCmds Auto @@ -476,6 +470,7 @@ Normal Auto true + 1 true UserCmds Auto @@ -711,7 +706,7 @@ ВидимостьКнопки <key>ru</key> - <value>Видимость кнопки</value> + <value>Отображать кнопку запуска приложения для соединения со специалистом онлайн-поддержки на начальной странице</value> 5 @@ -728,8 +723,7 @@ ПолучитьАккаунт1СБухфон <key>ru</key> - <value>Зарегистрироваться в сервисе -онлайн-поддержки (1С-Коннект)</value> + <value>Зарегистрироваться в сервисе онлайн-поддержки (1С-Коннект)</value> 2 @@ -780,7 +774,7 @@ Auto - СкачайтеПрограмму + СкачатьПриложение <key>ru</key> <value>Скачать приложение</value> @@ -791,7 +785,7 @@ </use> <action xsi:type="form:FormCommandHandlerContainer"> <handler> - <name>СкачайтеПрограмму</name> + <name>СкачатьПриложение</name> </handler> </action> <currentRowUse>DontUse</currentRowUse> diff --git a/SSL/src/CommonForms/Настройка1СБухфон/Help/ru.html b/SSL/src/CommonForms/Настройка1СБухфон/Help/ru.html index d8a72db1d..c04077066 100644 --- a/SSL/src/CommonForms/Настройка1СБухфон/Help/ru.html +++ b/SSL/src/CommonForms/Настройка1СБухфон/Help/ru.html @@ -5,14 +5,14 @@ TD { VERTICAL-ALIGN: top } </style><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.18427"></meta></head><body> -<p>Предназначена для настройки кнопки запуска приложения для связи со специалистом онлайн-поддержки на начальной странице. Настройки хранятся для каждого <a href="Catalog.Пользователи.Form.ФормаЭлемента/Help">пользователя</a> с привязкой к рабочему месту. </p> -<p>Открывается по команде <strong>Настройка онлайн-поддержки</strong> в разделе <strong>Администрирование - Общие настройки</strong>.</p> +<p>Предназначена для настройки кнопки запуска приложения для связи со специалистом онлайн-поддержки (1С-Коннект) на начальной странице. Настройки хранятся для каждого <a href="Catalog.Пользователи.Form.ФормаЭлемента/Help">пользователя</a> с привязкой к рабочему месту. </p> +<p>Открывается по команде <strong>Настройка онлайн-поддержки</strong> в разделе <strong>Администрирование - Общие настройки - Онлайн-поддержка</strong>.</p> <p>Запуск одной и той же базы под веб-клиентом и тонким клиентом потребует две процедуры настройки.</p> -<p>На <strong>первом шаге</strong> предлагается скачать исполняемый файл с сайта компании. При нажатии на ссылку <strong>Скачать приложение</strong> будет произведено скачивание программы в браузере, установленном по умолчанию. Полученный архив распакуйте в удобное для вас место. </p> -<p>Также необходимо <a href="https://buhphone.com/ru/clients/be-client/">получить регистрацию</a> на сайте <strong>1С-Коннект</strong>. Для этого воспользуйтесь ссылкой <strong>Зарегистрироваться в сервисе<br>онлайн-поддержки (1С-Коннект).</strong> </p> +<p>На <strong>первом шаге</strong> предлагается скачать исполняемый файл с сайта компании. При нажатии на ссылку <strong>Скачать программу</strong> будет произведено скачивание программы в браузере, установленном по умолчанию. Полученный архив распакуйте в удобное для вас место. </p> +<p>Также необходимо <a href="https://buhphone.com/ru/clients/be-client/">получить регистрацию</a> на сайте <strong>1С-Коннект</strong>. Для этого воспользуйтесь ссылкой <strong>Зарегистрироваться в сервисе онлайн-поддержки (1С-Коннект).</strong> </p> <p>На <strong>втором шаге</strong> задайте настройки:</p> <ul><li>Включите флажок <strong>Отображать кнопку запуска приложения для соединения со специалистом онлайн-поддержки на начальной странице</strong> - кнопка запуска будет выведена на начальную страницу.  </li><li>Укажите <strong>Путь к исполняемому файлу приложения</strong>. Если при запуске файл по указанному пути не будет найден, то программа предложит вам указать его повторно.</li></ul><p>На <strong>третьем шаге</strong> задайте настройки:</p> <ul><li>Включите флажок <strong>Подставлять логин и пароль при запуске приложения </strong>- при запуске программы введенные логин и пароль будут подставлены автоматически. В этом случае показ окна авторизации будет пропущен. -</li><li>Введите <strong>Логин/пароль</strong> - данные авторизации пользователя на сайте <a href="https://buhphone.com">1С-Коннект</a>. Если данные не заполнены или заполнены неверно, программа предложит ввести логин и пароль повторно. Логин и пароль можно ввести, только если разрешено подставлять их при запуске программы.</li></ul><p>Нажмите <strong>Сохранить</strong>, для того чтобы внесенные изменения вступили в силу. </p> +</li><li>Введите <strong>Логин/пароль</strong> - данные авторизации пользователя на сайте <a href="https://buhphone.com/">1С-Коннект</a>. Если данные не заполнены или заполнены неверно, программа предложит ввести логин и пароль повторно. Логин и пароль можно ввести, только если разрешено подставлять их при запуске программы.</li></ul><p>Нажмите <strong>Сохранить</strong>, для того чтобы внесенные изменения вступили в силу. </p> <p>Для вашего удобства выведены ссылки на сайт компании для получения помощи. Для того чтобы <a href="https://buhphone.com/ru/require/#anchor_1">ознакомиться с требованиями</a> к компьютеру и списком необходимых настроек, перейдите по ссылке <strong>Технические требования</strong>.</p></body></html> \ No newline at end of file diff --git a/SSL/src/CommonForms/Настройка1СБухфон/Module.bsl b/SSL/src/CommonForms/Настройка1СБухфон/Module.bsl index 3aab9745c..aea86d559 100644 --- a/SSL/src/CommonForms/Настройка1СБухфон/Module.bsl +++ b/SSL/src/CommonForms/Настройка1СБухфон/Module.bsl @@ -21,8 +21,8 @@ &НаКлиенте Процедура ПриОткрытии(Отказ) - Если НЕ Интеграция1СБухфонКлиент.ЭтоWindowsКлиент() Тогда - ПоказатьПредупреждение(,НСтр("ru = 'Для работы с приложением 1С-Бухфон необходима операционная система Microsoft Windows.'")); + Если НЕ ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда + ПоказатьПредупреждение(,НСтр("ru = 'Для работы с приложением необходима операционная система Microsoft Windows.'")); Отказ = Истина; КонецЕсли; Если ПутьКФайлу="" Тогда @@ -87,7 +87,7 @@ КонецПроцедуры &НаКлиенте -Процедура СкачайтеПрограмму(Команда) +Процедура СкачатьПриложение(Команда) ПерейтиПоНавигационнойСсылке("http://distribs.buhphone.com/current"); @@ -118,7 +118,7 @@ КонецПроцедуры // Выполняет инициализацию элементов формы в зависимости от -// настроек 1С-Бухфон. +// настроек приложения. // &НаКлиентеНаСервереБезКонтекста Процедура ИнициализироватьЭлементыФормы(Форма) diff --git a/SSL/src/CommonForms/Настройка1СБухфон/Настройка1СБухфон.mdo b/SSL/src/CommonForms/Настройка1СБухфон/Настройка1СБухфон.mdo index 754f5b298..7e21d886e 100644 --- a/SSL/src/CommonForms/Настройка1СБухфон/Настройка1СБухфон.mdo +++ b/SSL/src/CommonForms/Настройка1СБухфон/Настройка1СБухфон.mdo @@ -12,4 +12,5 @@ </help> <usePurposes>PersonalComputer</usePurposes> <usePurposes>MobileDevice</usePurposes> + <useStandardCommands>true</useStandardCommands> </mdclass:CommonForm> diff --git a/SSL/src/CommonForms/НастройкаДоступаКСервисуMorpher/Form.form b/SSL/src/CommonForms/НастройкаДоступаКСервисуMorpher/Form.form index d27bee7f1..9391c61cc 100644 --- a/SSL/src/CommonForms/НастройкаДоступаКСервисуMorpher/Form.form +++ b/SSL/src/CommonForms/НастройкаДоступаКСервисуMorpher/Form.form @@ -183,7 +183,6 @@ <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> <textColor xsi:type="core:ColorRef"> <color>Style.ПоясняющийТекст</color> </textColor> diff --git a/SSL/src/CommonForms/НастройкаДоступаКСервисуMorpher/НастройкаДоступаКСервисуMorpher.mdo b/SSL/src/CommonForms/НастройкаДоступаКСервисуMorpher/НастройкаДоступаКСервисуMorpher.mdo index df9636828..507d860fa 100644 --- a/SSL/src/CommonForms/НастройкаДоступаКСервисуMorpher/НастройкаДоступаКСервисуMorpher.mdo +++ b/SSL/src/CommonForms/НастройкаДоступаКСервисуMorpher/НастройкаДоступаКСервисуMorpher.mdo @@ -12,4 +12,5 @@ </help> <usePurposes>PersonalComputer</usePurposes> <usePurposes>MobileDevice</usePurposes> + <useStandardCommands>true</useStandardCommands> </mdclass:CommonForm> diff --git a/SSL/src/CommonForms/НастройкаКомандПечати/ConditionalAppearance.dcssca b/SSL/src/CommonForms/НастройкаКомандПечати/ConditionalAppearance.dcssca deleted file mode 100644 index 132e9ef43..000000000 --- a/SSL/src/CommonForms/НастройкаКомандПечати/ConditionalAppearance.dcssca +++ /dev/null @@ -1,59 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<ConditionalAppearance xmlns="http://v8.1c.ru/8.1/data-composition-system/settings" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dcscor="http://v8.1c.ru/8.1/data-composition-system/core" xmlns:lf="http://v8.1c.ru/8.2/managed-application/logform" xmlns:pal="http://v8.1c.ru/8.1/data/ui/colors/palette" xmlns:style="http://v8.1c.ru/8.1/data/ui/style" xmlns:sys="http://v8.1c.ru/8.1/data/ui/fonts/system" xmlns:v8="http://v8.1c.ru/8.1/data/core" xmlns:v8ui="http://v8.1c.ru/8.1/data/ui" xmlns:web="http://v8.1c.ru/8.1/data/ui/colors/web" xmlns:ent="http://v8.1c.ru/8.1/data/enterprise" xmlns:win="http://v8.1c.ru/8.1/data/ui/colors/windows"> - <item> - <use>false</use> - <selection> - <item> - <field>КомандыПечати</field> - </item> - </selection> - <filter> - <item xsi:type="FilterItemComparison"> - <left xsi:type="dcscor:Field">КомандыПечати.МенеджерПечати</left> - <comparisonType>Contains</comparisonType> - <right xsi:type="xs:string">ДополнительныеОтчетыИОбработки</right> - </item> - </filter> - <appearance> - <dcscor:item xsi:type="SettingsParameterValue"> - <dcscor:parameter>Шрифт</dcscor:parameter> - <dcscor:value xsi:type="v8ui:Font" ref="style:TextFont" bold="true" italic="false" underline="false" strikeout="false" kind="StyleItem"/> - </dcscor:item> - </appearance> - </item> - <item> - <selection> - <item> - <field>КомандыПечати</field> - </item> - </selection> - <filter> - <item xsi:type="FilterItemComparison"> - <left xsi:type="dcscor:Field">КомандыПечати.Видимость</left> - <comparisonType>Equal</comparisonType> - <right xsi:type="xs:decimal">0</right> - </item> - </filter> - <appearance> - <dcscor:item xsi:type="SettingsParameterValue"> - <dcscor:parameter>ЦветТекста</dcscor:parameter> - <dcscor:value xsi:type="v8ui:Color">web:Gray</dcscor:value> - </dcscor:item> - </appearance> - </item> - <item> - <selection/> - <filter> - <item xsi:type="FilterItemComparison"> - <left xsi:type="dcscor:Field">КомандыПечати.Владелец</left> - <comparisonType>Filled</comparisonType> - </item> - </filter> - <appearance> - <dcscor:item xsi:type="SettingsParameterValue"> - <dcscor:parameter>Шрифт</dcscor:parameter> - <dcscor:value xsi:type="v8ui:Font" ref="style:TextFont" bold="false" italic="false" underline="false" strikeout="false" kind="StyleItem"/> - </dcscor:item> - </appearance> - </item> -</ConditionalAppearance> diff --git a/SSL/src/CommonForms/НастройкаКомандПечати/Form.form b/SSL/src/CommonForms/НастройкаКомандПечати/Form.form index 1a267a5d0..05893285a 100644 --- a/SSL/src/CommonForms/НастройкаКомандПечати/Form.form +++ b/SSL/src/CommonForms/НастройкаКомандПечати/Form.form @@ -506,8 +506,6 @@ <excludedCommands>Retry</excludedCommands> <excludedCommands>SaveValues</excludedCommands> <excludedCommands>Yes</excludedCommands> - <width>60</width> - <height>10</height> <windowOpeningMode>DontBlock</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoUrl>true</autoUrl> diff --git a/SSL/src/CommonForms/НастройкаКомандПечати/Help/ru.html b/SSL/src/CommonForms/НастройкаКомандПечати/Help/ru.html index f013d3480..8b9253c72 100644 --- a/SSL/src/CommonForms/НастройкаКомандПечати/Help/ru.html +++ b/SSL/src/CommonForms/НастройкаКомандПечати/Help/ru.html @@ -1,5 +1,5 @@ <!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.18427"></meta></head><body> -<p>Предназначена для настройки состава всех печатных форм, располагающихся в подменю Печать в документах и списках программы.</p> +<p>Предназначена для настройки состава всех печатных форм, располагающихся в подменю <strong>Печать</strong> в документах и списках программы.</p> <p>Открывается по команде <strong>Подменю "Печать"</strong> в разделе <strong>Администрирование - Печатные формы, отчеты и обработки</strong>.</p> <p>Список состоит из двух частей: </p> <ul><li>в правой части перечислены команды печати. Команды сгруппированы по спискам объектов программы; @@ -10,4 +10,16 @@ <div>Нажмите кнопку <strong>Перейти в список</strong> для того чтобы открыть выделенный список, для которого настраиваются команды.</div></li></ul><h3>Внешние печатные формы</h3> <ul><li>Для некоторых документов предусмотрены внешние печатные формы, которые можно также включать и отключать, как и другие команды подменю <strong>Печать</strong>. <a name="СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки"> <li>Назначить внешнюю печатную форму можно только в списке <a href="Catalog.ДополнительныеОтчетыИОбработки/Help">Дополнительные отчеты и обработки</a>. -</li><li>С помощью ссылки в колонке <strong>Внешняя печатная форма</strong> перейдите к настройке параметров внешней печатной формы.</li></a></li></ul></body></html> \ No newline at end of file +</li><li>С помощью ссылки в колонке <strong>Внешняя печатная форма</strong> перейдите к настройке параметров внешней печатной формы.</li></a></li></ul><h3>Печатные формы из расширения</h3> +<ul><li> +<div>Разработчик может назначить печатные формы в расширении.</div> +</li><li> +<div>В подменю <strong>Печать</strong> команды выводятся с пометкой из расширения, ими можно управлять с помощью флажков.</div></li></ul><h3>Работа с подменю Печать</h3> +<ul><li> +<div>Настроенный состав команд подменю <strong>Печать</strong> предусмотрен как в документах, так и в списках. </div> +</li><li> +<div>В списке можно выделить несколько документов и распечатать. При множественном выборе в форме списка или в журнале документов в составе подменю <strong>Печать</strong> остаются доступными только те печатные формы, которые подходят сразу ко всем выбранным документам.</div> +</li><li> +<div>Состав подменю <strong>Печать</strong> в ряде документов, списков и журналов автоматически подстраивается под выбранный документ: показываются только те печатные формы, которые могут быть для него сформированы при текущих значениях реквизитов.</div> +</li><li> +<div>Печатных форм у некоторых документов в списке может не быть (в зависимости от проведенных настроек).</div></li></ul></body></html> \ No newline at end of file diff --git a/SSL/src/CommonForms/НастройкаКомандПечати/Module.bsl b/SSL/src/CommonForms/НастройкаКомандПечати/Module.bsl index b1debba79..4072608ae 100644 --- a/SSL/src/CommonForms/НастройкаКомандПечати/Module.bsl +++ b/SSL/src/CommonForms/НастройкаКомандПечати/Module.bsl @@ -4,6 +4,12 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. + Возврат; + КонецЕсли; + Отбор = Параметры.Отбор; Если Отбор.Количество() > 0 Тогда @@ -15,9 +21,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) + ОписаниеОповещения = Новый ОписаниеОповещения("ПередЗакрытиемПодтверждениеПолучено", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(ОписаниеОповещения, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(ОписаниеОповещения, Отказ, ЗавершениеРаботы,, ТекстПредупреждения); + КонецПроцедуры #КонецОбласти @@ -276,5 +284,24 @@ ЗаписатьИЗакрыть(); КонецПроцедуры +&НаСервере +Процедура УстановитьУсловноеОформление() + + УсловноеОформление.Элементы.Очистить(); + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.КомандыПечати.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("КомандыПечати.Видимость"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = 0; + + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/CommonForms/НастройкаКомандПечати/НастройкаКомандПечати.mdo b/SSL/src/CommonForms/НастройкаКомандПечати/НастройкаКомандПечати.mdo index 8b3ac17ff..885cef476 100644 --- a/SSL/src/CommonForms/НастройкаКомандПечати/НастройкаКомандПечати.mdo +++ b/SSL/src/CommonForms/НастройкаКомандПечати/НастройкаКомандПечати.mdo @@ -12,4 +12,5 @@ </help> <usePurposes>PersonalComputer</usePurposes> <usePurposes>MobileDevice</usePurposes> + <useStandardCommands>true</useStandardCommands> </mdclass:CommonForm> diff --git a/SSL/src/CommonForms/НастройкаМоихОтчетовИОбработок/Form.form b/SSL/src/CommonForms/НастройкаМоихОтчетовИОбработок/Form.form index 4028bbb6c..dc7dfc5c2 100644 --- a/SSL/src/CommonForms/НастройкаМоихОтчетовИОбработок/Form.form +++ b/SSL/src/CommonForms/НастройкаМоихОтчетовИОбработок/Form.form @@ -1,160 +1,22 @@ <?xml version="1.0" encoding="UTF-8"?> -<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:form="http://g5.1c.ru/v8/dt/form"> +<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:form="http://g5.1c.ru/v8/dt/form"> <items xsi:type="form:FormGroup"> - <name>ОбщаяГруппа</name> - <id>6</id> - <items xsi:type="form:Table"> - <name>ВсеКоманды</name> - <id>7</id> + <name>ГруппаШапка</name> + <id>50</id> + <items xsi:type="form:Decoration"> + <name>ЗаголовокТаблицы</name> + <id>52</id> <title> <key>ru</key> - <value>Доступные команды</value> + <value>Используемые команды:</value> - true true true - - ВсеКоманды - - false - Top - Add - Change - Copy - Delete - EndEdit - HierarchicalList - List - MoveDown - MoveUp - SortListAsc - SortListDesc - Tree - - ВсеКомандыНаименование - 10 - true - true - - true - - - ВсеКоманды.Наименование - - - ВсеКомандыНаименованиеExtendedTooltip - 23 - Label - true - true - - Left - - - - ВсеКомандыНаименованиеКонтекстноеМеню - 11 - true - - InputField - true - Auto - true - Left - true - - true - true - true - true - true - true - Normal - - - None - - ВсеКомандыКоманднаяПанель - 9 - Left - true - - - ВсеКомандыСтрокаПоиска - 31 - - ВсеКомандыСтрокаПоискаРасширеннаяПодсказка - 33 - Label - true - true - - Left - - - - ВсеКомандыСтрокаПоискаКонтекстноеМеню - 32 - true - - ВсеКоманды - - true - - - - ВсеКомандыСостояниеПросмотра - 34 - - ВсеКомандыСостояниеПросмотраРасширеннаяПодсказка - 36 - Label - true - true - - Left - - - - ВсеКомандыСостояниеПросмотраКонтекстноеМеню - 35 - true - - ViewStatusAddition - ВсеКоманды - - true - - - - ВсеКомандыУправлениеПоиском - 37 - - ВсеКомандыУправлениеПоискомРасширеннаяПодсказка - 39 - Label - true - true - - Left - - - - ВсеКомандыУправлениеПоискомКонтекстноеМеню - 38 - true - - SearchControlAddition - ВсеКоманды - - true - - - ВсеКомандыРасширеннаяПодсказка - 22 + ЗаголовокТаблицыРасширеннаяПодсказка + 54 Label true true @@ -163,224 +25,91 @@ - ВсеКомандыКонтекстноеМеню - 8 + ЗаголовокТаблицыКонтекстноеМеню + 53 true - Tree - true - true + Label true true - true - 1 - 1 - AutoUse - AutoUse - true - true - false - false - true - Auto - Auto - ExpandTopLevel - true - true - None - None - None - true - - - КомандыУправленияСписком - 12 - - ДобавитьКоманду - 13 - true - true - - true - - false - - ДобавитьКомандуExtendedTooltip - 25 - Label - true - true - - Left - - - UsualButton - Form.Command.ДобавитьКоманду - Normal - true - true - UserCmds - Auto - - - ДобавитьВсеКоманды - 14 - true - true - - true - - false - - ДобавитьВсеКомандыExtendedTooltip - 26 - Label - true - true - - Left - - - UsualButton - Form.Command.ДобавитьВсеКоманды - Normal - Auto - true - true - UserCmds - Auto - - - УдалитьВсеКоманды - 16 - true - true - - true - - false - - УдалитьВсеКомандыExtendedTooltip - 27 - Label - true - true - - Left - - - UsualButton - Form.Command.УдалитьВсеКоманды - Normal - Auto - true - true - UserCmds - Auto - - - УдалитьКоманду - 15 - true - true - - true - - false - - УдалитьКомандуExtendedTooltip - 28 - Label - true - true - - Left - - - UsualButton - Form.Command.УдалитьКоманду - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - ru - Команды управления списком - - true - - КомандыУправленияСпискомExtendedTooltip - 24 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - auto - Auto - Auto + + Left - - МоиКоманды - 1 - - <key>ru</key> - <value>Выбранные команды</value> - - true - true - - true - - - МоиКоманды - - false - Top - Add - Change - Copy - Delete - EndEdit - HierarchicalList - List - MoveDown - MoveUp - SortListAsc - SortListDesc - Tree - - МоиКомандыНаименование - 4 + + КнопкиТаблицы + 48 + + КоманднаяПанельТаблицы + 46 + + УстановитьФлажки + 42 + true + true + + true + + + УстановитьФлажкиРасширеннаяПодсказка + 43 + Label + true + true + + Left + + + Form.Command.УстановитьФлажки + Normal + Auto + true + true + UserCmds + Auto + + + СнятьФлажки + 44 + true + true + + true + + + СнятьФлажкиРасширеннаяПодсказка + 45 + Label + true + true + + Left + + + Form.Command.СнятьФлажки + Normal + Auto + true + true + UserCmds + Auto + true true true - - МоиКоманды.Наименование - + + <key>ru</key> + <value>Командная панель таблицы</value> + + + ru + Командная панель таблицы + - МоиКомандыНаименованиеExtendedTooltip - 30 + КоманднаяПанельТаблицыРасширеннаяПодсказка + 47 Label true true @@ -388,106 +117,26 @@ Left
      - - МоиКомандыНаименованиеКонтекстноеМеню - 5 - true - - InputField - true - Auto - true - Left - true - - true - true - true - true - true - true - Normal + + Compact - - МоиКомандыКоманднаяПанель - 3 - Left - - - МоиКомандыСтрокаПоиска - 40 - - МоиКомандыСтрокаПоискаРасширеннаяПодсказка - 42 - Label - true - true - - Left - - - - МоиКомандыСтрокаПоискаКонтекстноеМеню - 41 - true - - МоиКоманды - - true - - - - МоиКомандыСостояниеПросмотра - 43 - - МоиКомандыСостояниеПросмотраРасширеннаяПодсказка - 45 - Label - true - true - - Left - - - - МоиКомандыСостояниеПросмотраКонтекстноеМеню - 44 - true - - ViewStatusAddition - МоиКоманды - - true - - - - МоиКомандыУправлениеПоиском - 46 - - МоиКомандыУправлениеПоискомРасширеннаяПодсказка - 48 - Label - true - true - - Left - - - - МоиКомандыУправлениеПоискомКонтекстноеМеню - 47 - true - - SearchControlAddition - МоиКоманды - - true - - + true + true + + true + + + <key>ru</key> + <value>Кнопки таблицы</value> + + + ru + Кнопки таблицы + - МоиКомандыExtendedTooltip - 29 + КнопкиТаблицыРасширеннаяПодсказка + 49 Label true true @@ -495,35 +144,10 @@ Left - - МоиКомандыКонтекстноеМеню - 2 - true - - Tree - true - true - true - true - true - 1 - 1 - AutoUse - AutoUse - true - true - false - false - true - Auto - Auto - ExpandTopLevel - true - true - None - None - None - true + CommandBar + + Left + true true @@ -532,15 +156,15 @@ <key>ru</key> - <value>Общая группа</value> + <value>Группа шапка</value> ru - Общая группа + Группа шапка - ОбщаяГруппаExtendedTooltip - 21 + ГруппаШапкаРасширеннаяПодсказка + 51 Label true true @@ -557,6 +181,239 @@ Auto + + ИспользуемыеКоманды + 21 + true + true + + true + + + ИспользуемыеКоманды + + None + + ГруппаВЯчейке + 40 + + ИспользуемыеКомандыИспользование + 37 + true + true + + true + + + ИспользуемыеКоманды.Использование + + + ИспользуемыеКомандыИспользованиеРасширеннаяПодсказка + 39 + Label + true + true + + Left + + + + ИспользуемыеКомандыИспользованиеКонтекстноеМеню + 38 + true + + CheckBoxField + Auto + true + Left + true + + + + ИспользуемыеКомандыПредставление + 34 + true + true + + true + + + ИспользуемыеКоманды.Представление + + + ИспользуемыеКомандыПредставлениеРасширеннаяПодсказка + 36 + Label + true + true + + Left + + + + ИспользуемыеКомандыПредставлениеКонтекстноеМеню + 35 + true + + InputField + true + Auto + true + Left + true + + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа в ячейке</value> + + + ru + Группа в ячейке + + + ГруппаВЯчейкеРасширеннаяПодсказка + 41 + Label + true + true + + Left + + + ColumnGroup + + InCell + auto + true + + + + ИспользуемыеКомандыКоманднаяПанель + 23 + Left + + + ИспользуемыеКомандыСтрокаПоиска + 25 + + ИспользуемыеКомандыСтрокаПоискаРасширеннаяПодсказка + 27 + Label + true + true + + Left + + + + ИспользуемыеКомандыСтрокаПоискаКонтекстноеМеню + 26 + true + + ИспользуемыеКоманды + + true + + + + ИспользуемыеКомандыСостояниеПросмотра + 28 + + ИспользуемыеКомандыСостояниеПросмотраРасширеннаяПодсказка + 30 + Label + true + true + + Left + + + + ИспользуемыеКомандыСостояниеПросмотраКонтекстноеМеню + 29 + true + + ViewStatusAddition + ИспользуемыеКоманды + + true + + + + ИспользуемыеКомандыУправлениеПоиском + 31 + + ИспользуемыеКомандыУправлениеПоискомРасширеннаяПодсказка + 33 + Label + true + true + + Left + + + + ИспользуемыеКомандыУправлениеПоискомКонтекстноеМеню + 32 + true + + SearchControlAddition + ИспользуемыеКоманды + + true + + + + ИспользуемыеКомандыРасширеннаяПодсказка + 24 + Label + true + true + + Left + + + + ИспользуемыеКомандыКонтекстноеМеню + 22 + true + + 45 + true + true + true + 1 + 1 + AutoUse + AutoUse + true + true + false + false + false + Auto + Auto + true + true + true + true + true + + Bottom true @@ -625,8 +482,6 @@ LockOwner true - true - true Vertical true true @@ -634,236 +489,10 @@ auto true - МоиКоманды + ИспользуемыеКоманды <key>ru</key> - <value>Мои команды</value> - - 1 - - ValueTree - - - true - - - true - - - Наименование - - <key>ru</key> - <value>Наименование</value> - - 1 - - String - - - - true - - - true - - - - Обработка - - <key>ru</key> - <value>Обработка</value> - - 2 - - CatalogRef.ДополнительныеОтчетыИОбработки - - - true - - - true - - - - Идентификатор - - <key>ru</key> - <value>Идентификатор</value> - - 3 - - String - - - - true - - - true - - - - Раздел - - <key>ru</key> - <value>Раздел</value> - - 4 - - CatalogRef.ИдентификаторыОбъектовМетаданных - - - true - - - true - - - - - ВсеКоманды - - <key>ru</key> - <value>Все команды</value> - - 2 - - ValueTree - - - true - - - true - - - Наименование - - <key>ru</key> - <value>Наименование</value> - - 1 - - String - - - - true - - - true - - - - Обработка - - <key>ru</key> - <value>Обработка</value> - - 2 - - CatalogRef.ДополнительныеОтчетыИОбработки - - - true - - - true - - - - Идентификатор - - <key>ru</key> - <value>Идентификатор</value> - - 3 - - String - - - - true - - - true - - - - Раздел - - <key>ru</key> - <value>Раздел</value> - - 4 - - CatalogRef.ИдентификаторыОбъектовМетаданных - - - true - - - true - - - - - ВидОбработок - - <key>ru</key> - <value>Вид обработок</value> - - 3 - - EnumRef.ВидыДополнительныхОтчетовИОбработок - - - true - - - true - - - - ЭтоГлобальныеОбработки - - <key>ru</key> - <value>Это глобальные обработки</value> - - 4 - - Boolean - - - true - - - true - - - - ТекущийРаздел - - <key>ru</key> - <value>Текущий раздел</value> - - 5 - - String - - - - true - - - true - - - - ВыбранныеКоманды - - <key>ru</key> - <value>Команды</value> + <value>Используемые команды</value> 6 @@ -876,10 +505,10 @@ true - Наименование + Представление <key>ru</key> - <value>Наименование</value> + <value>Представление</value> 1 @@ -894,10 +523,10 @@ - Обработка + Ссылка <key>ru</key> - <value>Обработка</value> + <value>Ссылка</value> 2 @@ -928,23 +557,6 @@ true - - Раздел - - <key>ru</key> - <value>Раздел</value> - - 4 - - CatalogRef.ИдентификаторыОбъектовМетаданных - - - true - - - true - - Использование @@ -963,98 +575,6 @@ </edit> </columns> </attributes> - <formCommands> - <name>ДобавитьКоманду</name> - <title> - <key>ru</key> - <value>Добавить ></value> - - 1 - - ru - Добавить команду - - - true - - - - ДобавитьКоманду - - - true - DontUse - Auto - - - ДобавитьВсеКоманды - - <key>ru</key> - <value>Добавить все >></value> - - 2 - - ru - Добавить все команды - - - true - - - - ДобавитьВсеКоманды - - - true - DontUse - Auto - - - УдалитьКоманду - - <key>ru</key> - <value>< Удалить</value> - - 3 - - ru - Удалить команду - - - true - - - - УдалитьКоманду - - - true - DontUse - Auto - - - УдалитьВсеКоманды - - <key>ru</key> - <value><< Удалить все</value> - - 4 - - ru - Удалить все команды - - - true - - - - УдалитьВсеКоманды - - - true - DontUse - Auto - ОК @@ -1077,23 +597,69 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> + <formCommands> + <name>УстановитьФлажки</name> + <title> + <key>ru</key> + <value>Установить флажки</value> + + 6 + + ru + Установить флажки + + + true + + + StdPicture.CheckAll + + + + УстановитьФлажки + + + DontUse + Auto + + + СнятьФлажки + + <key>ru</key> + <value>Снять флажки</value> + + 7 + + ru + Снять флажки + + + true + + + StdPicture.UncheckAll + + + + СнятьФлажки + + + DontUse + Auto + ВидОбработок EnumRef.ВидыДополнительныхОтчетовИОбработок + true - ЭтоГлобальныеОбработки - - Boolean - - - - ТекущийРаздел + СсылкаРаздела CatalogRef.ИдентификаторыОбъектовМетаданных + true diff --git a/SSL/src/CommonForms/НастройкаМоихОтчетовИОбработок/Module.bsl b/SSL/src/CommonForms/НастройкаМоихОтчетовИОбработок/Module.bsl index 85d8545a8..8d840f78e 100644 --- a/SSL/src/CommonForms/НастройкаМоихОтчетовИОбработок/Module.bsl +++ b/SSL/src/CommonForms/НастройкаМоихОтчетовИОбработок/Module.bsl @@ -6,11 +6,25 @@ Возврат; КонецЕсли; - ЗаполнитьЗначенияСвойств(ЭтотОбъект, Параметры, "ВидОбработок, ЭтоГлобальныеОбработки, ТекущийРаздел"); + Если Параметры.ВидОбработок = Перечисления.ВидыДополнительныхОтчетовИОбработок.ДополнительнаяОбработка Тогда + Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Мои дополнительные обработки (%1)'"), + ДополнительныеОтчетыИОбработки.ПредставлениеРаздела(Параметры.СсылкаРаздела)); + ИначеЕсли Параметры.ВидОбработок = Перечисления.ВидыДополнительныхОтчетовИОбработок.ДополнительныйОтчет Тогда + Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Мои дополнительные отчеты (%1)'"), + ДополнительныеОтчетыИОбработки.ПредставлениеРаздела(Параметры.СсылкаРаздела)); + КонецЕсли; - ЗаполнитьДеревоОбработок(Истина, "МоиКоманды"); - ЗаполнитьДеревоОбработок(Ложь, "ВсеКоманды"); + ТипыКоманд = Новый Массив; + ТипыКоманд.Добавить(Перечисления.СпособыВызоваДополнительныхОбработок.ВызовКлиентскогоМетода); + ТипыКоманд.Добавить(Перечисления.СпособыВызоваДополнительныхОбработок.ВызовСерверногоМетода); + ТипыКоманд.Добавить(Перечисления.СпособыВызоваДополнительныхОбработок.ОткрытиеФормы); + ТипыКоманд.Добавить(Перечисления.СпособыВызоваДополнительныхОбработок.СценарийВБезопасномРежиме); + Запрос = ДополнительныеОтчетыИОбработки.НовыйЗапросПоДоступнымКомандам(Параметры.ВидОбработок, Параметры.СсылкаРаздела, , ТипыКоманд, Ложь); + ТаблицаРезультат = Запрос.Выполнить().Выгрузить(); + ИспользуемыеКоманды.Загрузить(ТаблицаРезультат); КонецПроцедуры #КонецОбласти @@ -18,51 +32,17 @@ #Область ОбработчикиКомандФормы &НаКлиенте -Процедура ДобавитьКоманду(Команда) - - ТекущиеДанные = Элементы.ВсеКоманды.ТекущиеДанные; - - Если ТекущиеДанные <> Неопределено И НЕ ПустаяСтрока(ТекущиеДанные.Идентификатор) Тогда - ДобавитьКомандуСервер(ТекущиеДанные.Обработка, ТекущиеДанные.Идентификатор); - КонецЕсли; - +Процедура СнятьФлажки(Команда) + Для Каждого СтрокаТаблицы Из ИспользуемыеКоманды Цикл + СтрокаТаблицы.Использование = Ложь; + КонецЦикла; КонецПроцедуры &НаКлиенте -Процедура УдалитьКоманду(Команда) - - ТекущиеДанные = Элементы.МоиКоманды.ТекущиеДанные; - - Если ТекущиеДанные <> Неопределено И НЕ ПустаяСтрока(ТекущиеДанные.Идентификатор) Тогда - УдалитьКомандуСервер(ТекущиеДанные.Обработка, ТекущиеДанные.Идентификатор); - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ДобавитьВсеКоманды(Команда) - - Если ЭтоГлобальныеОбработки Тогда - ВсеРазделы = ВсеКоманды.ПолучитьЭлементы(); - Для Каждого СтрокаРазделы Из ВсеРазделы Цикл - ЭлементРаздел = НайтиЭлементРаздел(МоиКоманды, СтрокаРазделы.Раздел, СтрокаРазделы.Наименование); - ЭлементыКоманды = СтрокаРазделы.ПолучитьЭлементы(); - Для Каждого ЭлементКоманда Из ЭлементыКоманды Цикл - НоваяКоманда = НайтиЭлементКоманду(ЭлементРаздел.ПолучитьЭлементы(), ЭлементКоманда.Идентификатор, ЭлементКоманда.Обработка); - ЗаполнитьЗначенияСвойств(НоваяКоманда, ЭлементКоманда); - КонецЦикла; - КонецЦикла; - Иначе - ДобавитьВсеКомандыСервер(); - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура УдалитьВсеКоманды(Команда) - - МоиКоманды.ПолучитьЭлементы().Очистить(); - +Процедура УстановитьФлажки(Команда) + Для Каждого СтрокаТаблицы Из ИспользуемыеКоманды Цикл + СтрокаТаблицы.Использование = Истина; + КонецЦикла; КонецПроцедуры &НаКлиенте @@ -75,311 +55,16 @@ #Область СлужебныеПроцедурыИФункции -&НаСервере -Функция ЗаполнитьДеревоОбработок(КомандыПользователя, ИмяЭлементыРеквизитаДерева) - - Запрос = Новый Запрос; - - ТекстЗапроса = - "ВЫБРАТЬ РАЗРЕШЕННЫЕ - | ДопОтчетыИОбработки.Ссылка КАК Обработка, - | ТаблицаКоманды.Представление КАК Наименование, - | ТаблицаРазделы.Раздел КАК Раздел, - | ТаблицаКоманды.Идентификатор КАК Идентификатор - |ИЗ - | Справочник.ДополнительныеОтчетыИОбработки КАК ДопОтчетыИОбработки - | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ДополнительныеОтчетыИОбработки.Команды КАК ТаблицаКоманды - | ПО ДопОтчетыИОбработки.Ссылка = ТаблицаКоманды.Ссылка - | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ДополнительныеОтчетыИОбработки.Разделы КАК ТаблицаРазделы - | ПО ДопОтчетыИОбработки.Ссылка = ТаблицаРазделы.Ссылка - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПользовательскиеНастройкиДоступаКОбработкам КАК БыстрыйДоступ - | ПО ДопОтчетыИОбработки.Ссылка = БыстрыйДоступ.ДополнительныйОтчетИлиОбработка - | И (БыстрыйДоступ.ИдентификаторКоманды = ТаблицаКоманды.Идентификатор) - | И (БыстрыйДоступ.Пользователь = &Пользователь) - |ГДЕ - | ДопОтчетыИОбработки.Вид = &ВидОбработок - | И НЕ ДопОтчетыИОбработки.ПометкаУдаления - | И ДопОтчетыИОбработки.Публикация В(&ВариантыПубликации) - | И ТаблицаКоманды.ВариантЗапуска В (&ТипыКоманд) - | И БыстрыйДоступ.Доступно - |ИТОГИ ПО - | &ИтогиПоРаздел"; - - Если ЭтоГлобальныеОбработки Тогда - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ИтогиПоРаздел", "Раздел"); - Иначе - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ДополнительныеОтчетыИОбработкиРазделы.Раздел КАК Раздел,", ""); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ДополнительныеОтчетыИОбработки.Разделы КАК ТаблицаРазделы", ""); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ПО ДопОтчетыИОбработки.Ссылка = ТаблицаРазделы.Ссылка", ""); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ИТОГИ ПО", ""); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ИтогиПоРаздел", ""); - КонецЕсли; - - Если НЕ КомандыПользователя Тогда - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПользовательскиеНастройкиДоступаКОбработкам КАК БыстрыйДоступ", ""); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ПО ДопОтчетыИОбработки.Ссылка = БыстрыйДоступ.ДополнительныйОтчетИлиОбработка", ""); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "И (БыстрыйДоступ.ИдентификаторКоманды = ТаблицаКоманды.Идентификатор)", ""); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "И (БыстрыйДоступ.Пользователь = &Пользователь)", ""); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "И БыстрыйДоступ.Доступно", ""); - КонецЕсли; - - ВариантыПубликации = Новый Массив; - ВариантыПубликации.Добавить(Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.Используется); - Если Пользователи.РолиДоступны("ДобавлениеИзменениеДополнительныхОтчетовИОбработок") Тогда - ВариантыПубликации.Добавить(Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.РежимОтладки); - КонецЕсли; - - ТипыКоманд = Новый Массив; - ТипыКоманд.Добавить(Перечисления.СпособыВызоваДополнительныхОбработок.ВызовКлиентскогоМетода); - ТипыКоманд.Добавить(Перечисления.СпособыВызоваДополнительныхОбработок.ВызовСерверногоМетода); - ТипыКоманд.Добавить(Перечисления.СпособыВызоваДополнительныхОбработок.ОткрытиеФормы); - ТипыКоманд.Добавить(Перечисления.СпособыВызоваДополнительныхОбработок.СценарийВБезопасномРежиме); - - Запрос.УстановитьПараметр("Пользователь", ПользователиКлиентСервер.АвторизованныйПользователь()); - Запрос.УстановитьПараметр("ВариантыПубликации", ВариантыПубликации); - Запрос.УстановитьПараметр("ТипыКоманд", ТипыКоманд); - Запрос.УстановитьПараметр("ВидОбработок", ВидОбработок); - - Запрос.Текст = ТекстЗапроса; - - Если ЭтоГлобальныеОбработки Тогда - ДеревоКоманд = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкам); - Иначе - ТаблицаКоманд = Запрос.Выполнить().Выгрузить(); - КонецЕсли; - - КомандыДерево = РеквизитФормыВЗначение(ИмяЭлементыРеквизитаДерева); - КомандыДерево.Строки.Очистить(); - - СобственныйИндекс = 0; - Индекс = 0; - - Если ЭтоГлобальныеОбработки Тогда - Для Каждого СтрокаРазделы Из ДеревоКоманд.Строки Цикл - ПредставлениеРаздела = ДополнительныеОтчетыИОбработки.ПредставлениеРаздела(СтрокаРазделы.Раздел); - Если ПредставлениеРаздела = Неопределено Тогда - Продолжить; - КонецЕсли; - СтрокаВерхнегоУровня = КомандыДерево.Строки.Добавить(); - СтрокаВерхнегоУровня.Раздел = СтрокаРазделы.Раздел; - СтрокаВерхнегоУровня.Наименование = ПредставлениеРаздела; - Если СтрокаВерхнегоУровня.Раздел = ТекущийРаздел Тогда - СобственныйИндекс = Индекс; - КонецЕсли; - Для Каждого СтрокаКоманды Из СтрокаРазделы.Строки Цикл - СтрокаОписанияКоманд = СтрокаВерхнегоУровня.Строки.Добавить(); - ЗаполнитьЗначенияСвойств(СтрокаОписанияКоманд, СтрокаКоманды); - Индекс = Индекс + 1; - КонецЦикла; - Индекс = Индекс + 1; - КонецЦикла; - Иначе - Для Каждого ЭлементКоманда Из ТаблицаКоманд Цикл - НоваяСтрока = КомандыДерево.Строки.Добавить(); - ЗаполнитьЗначенияСвойств(НоваяСтрока, ЭлементКоманда); - КонецЦикла; - КонецЕсли; - - ЗначениеВРеквизитФормы(КомандыДерево, ИмяЭлементыРеквизитаДерева); - - Элементы[ИмяЭлементыРеквизитаДерева].ТекущаяСтрока = СобственныйИндекс; - -КонецФункции - -&НаСервере -Процедура ДобавитьКомандуСервер(Обработка, Идентификатор) - - МоиКомандыДерево = РеквизитФормыВЗначение("МоиКоманды"); - НайденныеСтроки = МоиКомандыДерево.Строки.НайтиСтроки(Новый Структура("Обработка,Идентификатор", Обработка, Идентификатор), Истина); - Если НайденныеСтроки.Количество() > 0 Тогда - Возврат; - КонецЕсли; - - КомандыИсточникДерево = РеквизитФормыВЗначение("ВсеКоманды"); - НайденныеСтроки = КомандыИсточникДерево.Строки.НайтиСтроки(Новый Структура("Обработка,Идентификатор", Обработка, Идентификатор), Истина); - - Если ЭтоГлобальныеОбработки Тогда - Для Каждого НайденнаяСтрока Из НайденныеСтроки Цикл - ЭлементРаздел = НайтиЭлементРаздел(МоиКоманды, НайденнаяСтрока.Раздел, НайденнаяСтрока.Родитель.Наименование); - НоваяКоманда = ЭлементРаздел.ПолучитьЭлементы().Добавить(); - ЗаполнитьЗначенияСвойств(НоваяКоманда, НайденнаяСтрока); - КонецЦикла; - Иначе - НоваяКоманда = МоиКоманды.ПолучитьЭлементы().Добавить(); - ЗаполнитьЗначенияСвойств(НоваяКоманда, НайденныеСтроки[0]); - КонецЕсли; - -КонецПроцедуры - -&НаСервере -Процедура ДобавитьВсеКомандыСервер() - - ЗначениеВРеквизитФормы(РеквизитФормыВЗначение("ВсеКоманды"), "МоиКоманды"); - -КонецПроцедуры - -&НаСервере -Процедура УдалитьКомандуСервер(Обработка, Идентификатор) - - МоиКомандыЭлементы = МоиКоманды.ПолучитьЭлементы(); - - Если ЭтоГлобальныеОбработки Тогда - - УдаляемыеРазделы = Новый Массив; - - Для Каждого СтрокаРазделы Из МоиКомандыЭлементы Цикл - ЭлементыКоманды = СтрокаРазделы.ПолучитьЭлементы(); - Для Каждого СтрокаКоманды Из ЭлементыКоманды Цикл - Если СтрокаКоманды.Обработка = Обработка И СтрокаКоманды.Идентификатор = Идентификатор Тогда - ЭлементыКоманды.Удалить(ЭлементыКоманды.Индекс(СтрокаКоманды)); - Прервать; - КонецЕсли; - КонецЦикла; - Если ЭлементыКоманды.Количество() = 0 Тогда - УдаляемыеРазделы.Добавить(МоиКомандыЭлементы.Индекс(СтрокаРазделы)); - КонецЕсли; - КонецЦикла; - - УдаляемыеРазделыТаблица = Новый ТаблицаЗначений; - УдаляемыеРазделыТаблица.Колонки.Добавить("Раздел", Новый ОписаниеТипов("Число",Новый КвалификаторыЧисла(10))); - Для Каждого УдаляемыйРаздел Из УдаляемыеРазделы Цикл - Строка = УдаляемыеРазделыТаблица.Добавить(); - Строка.Раздел = УдаляемыйРаздел; - КонецЦикла; - УдаляемыеРазделыТаблица.Свернуть("Раздел"); - УдаляемыеРазделыТаблица.Сортировать("Раздел Убыв"); - - УдаляемыеРазделы = УдаляемыеРазделыТаблица.ВыгрузитьКолонку("Раздел"); - - Для Каждого УдаляемыйРаздел Из УдаляемыеРазделы Цикл - МоиКомандыЭлементы.Удалить(УдаляемыйРаздел); - КонецЦикла; - - Иначе - - Для Каждого СтрокаКоманды Из МоиКомандыЭлементы Цикл - Если СтрокаКоманды.Обработка = Обработка И СтрокаКоманды.Идентификатор = Идентификатор Тогда - МоиКомандыЭлементы.Удалить(МоиКомандыЭлементы.Индекс(СтрокаКоманды)); - Прервать; - КонецЕсли; - КонецЦикла; - - КонецЕсли; - -КонецПроцедуры - -&НаКлиентеНаСервереБезКонтекста -Функция НайтиЭлементРаздел(ДанныеФормыКоманды, Раздел, Наименование) - Для Каждого ЭлементДанных Из ДанныеФормыКоманды.ПолучитьЭлементы() Цикл - Если ЭлементДанных.Раздел = Раздел Тогда - Возврат ЭлементДанных; - КонецЕсли; - КонецЦикла; - - НовыйРаздел = ДанныеФормыКоманды.ПолучитьЭлементы().Добавить(); - НовыйРаздел.Раздел = Раздел; - НовыйРаздел.Наименование = Наименование; - Возврат НовыйРаздел; -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция НайтиЭлементКоманду(ДанныеФормыКоллекцияЭлементовДерева, Идентификатор, Обработка) - Для Каждого ЭлементДанных Из ДанныеФормыКоллекцияЭлементовДерева Цикл - Если ЭлементДанных.Идентификатор = Идентификатор И ЭлементДанных.Обработка = Обработка Тогда - Возврат ЭлементДанных; - КонецЕсли; - КонецЦикла; - ЭлементДанных = ДанныеФормыКоллекцияЭлементовДерева.Добавить(); - ЭлементДанных.Идентификатор = Идентификатор; - ЭлементДанных.Обработка = Обработка; - Возврат ЭлементДанных; -КонецФункции - -//////////////////////////////////////////////////////////////////////////////// -// Работа с регистром ПользовательскиеНастройкиДоступаКОбработкам. - &НаСервере Процедура ЗаписатьНаборОбработокПользователя() - - ТекстЗапроса = " - |ВЫБРАТЬ РАЗРЕШЕННЫЕ - | ДополнительныеОтчетыИОбработкиКоманды.Идентификатор КАК Идентификатор, - | ДополнительныеОтчетыИОбработки.Ссылка КАК Обработка - |ИЗ - | Справочник.ДополнительныеОтчетыИОбработки КАК ДополнительныеОтчетыИОбработки - | СОЕДИНЕНИЕ Справочник.ДополнительныеОтчетыИОбработки.Команды КАК ДополнительныеОтчетыИОбработкиКоманды - | ПО ДополнительныеОтчетыИОбработкиКоманды.Ссылка = ДополнительныеОтчетыИОбработки.Ссылка - |ГДЕ - | ДополнительныеОтчетыИОбработки.Вид = &ВидОбработок"; - - Запрос = Новый Запрос; - Запрос.Параметры.Вставить("ВидОбработок", ВидОбработок); - Запрос.Текст = ТекстЗапроса; - - ТаблицаОбработок = Запрос.Выполнить().Выгрузить(); - - МоиКомандыДерево = РеквизитФормыВЗначение("МоиКоманды"); - - ТаблицаМоихКоманд = ПолучитьТаблицу(); - - Если ЭтоГлобальныеОбработки Тогда - Для Каждого СтрокаРазделы Из МоиКомандыДерево.Строки Цикл - Для Каждого СтрокаКоманды Из СтрокаРазделы.Строки Цикл - НоваяСтрока = ТаблицаМоихКоманд.Добавить(); - ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаКоманды); - КонецЦикла; - КонецЦикла; - Иначе - Для Каждого СтрокаКоманды Из МоиКомандыДерево.Строки Цикл - НоваяСтрока = ТаблицаМоихКоманд.Добавить(); - ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаКоманды); - КонецЦикла; - КонецЕсли; - - ТаблицаМоихКоманд.Свернуть("Обработка,Идентификатор"); - - // ---------------- - - ТаблицаСравнения = ТаблицаОбработок.Скопировать(); - ТаблицаСравнения.Колонки.Добавить("Признак", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(1))); - Для Каждого Строка Из ТаблицаСравнения Цикл - Строка.Признак = -1; - КонецЦикла; - - Для Каждого Строка Из ТаблицаМоихКоманд Цикл - НоваяСтрока = ТаблицаСравнения.Добавить(); - ЗаполнитьЗначенияСвойств(НоваяСтрока, Строка); - НоваяСтрока.Признак = +1; - КонецЦикла; - - ТаблицаСравнения.Свернуть("Обработка,Идентификатор", "Признак"); - - СтрокиДляИсключенияИзСпискаСвоих = ТаблицаСравнения.НайтиСтроки(Новый Структура("Признак", -1)); - СтрокиДляДобавленияВСписокСвоих = ТаблицаСравнения.НайтиСтроки(Новый Структура("Признак", 0)); - - НачатьТранзакцию(); - - Попытка - ДополнительныеОтчетыИОбработки.УдалитьКомандыИзСпискаСвоих(СтрокиДляИсключенияИзСпискаСвоих); - ДополнительныеОтчетыИОбработки.ДобавитьКомандыВСписокСвоих(СтрокиДляДобавленияВСписокСвоих); - ЗафиксироватьТранзакцию(); - Исключение - ОтменитьТранзакцию(); - ВызватьИсключение; - КонецПопытки; - - Модифицированность = Ложь; + Таблица = ИспользуемыеКоманды.Выгрузить(); + Таблица.Колонки.Ссылка.Имя = "ДополнительныйОтчетИлиОбработка"; + Таблица.Колонки.Идентификатор.Имя = "ИдентификаторКоманды"; + Таблица.Колонки.Использование.Имя = "Доступно"; + ЗначенияИзмерений = Новый Структура("Пользователь", ПользователиКлиентСервер.АвторизованныйПользователь()); + ЗначенияРесурсов = Новый Структура; + УстановитьПривилегированныйРежим(Истина); + РегистрыСведений.ПользовательскиеНастройкиДоступаКОбработкам.ЗаписатьПакетНастроек(Таблица, ЗначенияИзмерений, ЗначенияРесурсов, Ложь); КонецПроцедуры -&НаСервереБезКонтекста -Функция ПолучитьТаблицу() - - ТаблицаКоманд = Новый ТаблицаЗначений; - ТаблицаКоманд.Колонки.Добавить("Обработка", Новый ОписаниеТипов("СправочникСсылка.ДополнительныеОтчетыИОбработки")); - ТаблицаКоманд.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка")); - - Возврат ТаблицаКоманд; - -КонецФункции - #КонецОбласти diff --git a/SSL/src/CommonForms/НастройкаОтправкиSMS/Form.form b/SSL/src/CommonForms/НастройкаОтправкиSMS/Form.form index ee91209da..27bf70eef 100644 --- a/SSL/src/CommonForms/НастройкаОтправкиSMS/Form.form +++ b/SSL/src/CommonForms/НастройкаОтправкиSMS/Form.form @@ -1,27 +1,126 @@ - - ПровайдерSMS - 5 - - <key>ru</key> - <value>Провайдер</value> - + + ПровайдерИОписание + 22 + + ПровайдерSMS + 5 + + <key>ru</key> + <value>Провайдер</value> + + true + true + + true + + + НаборКонстант.ПровайдерSMS + + Button + + OnChange + ПровайдерSMSПриИзменении + + + ПровайдерSMSExtendedTooltip + 11 + Label + true + true + + Left + + + + ПровайдерSMSКонтекстноеМеню + 6 + true + + InputField + Auto + true + Left + true + + 30 + true + true + false + true + false + true + true + true + + Style.ФонУправляющегоПоля + + Normal + + + + ОписаниеУслуги + 19 + + <key>ru</key> + <value>?</value> + + true + true + + true + + + ОписаниеУслугиРасширеннаяПодсказка + 21 + Label + true + true + + Left + + + + ОписаниеУслугиКонтекстноеМеню + 20 + true + + Label + true + true + + Style.NormalTextFont + true + false + false + false + + + + Click + ОписаниеУслугиНажатие + + true + Left + + true true true - - НаборКонстант.ПровайдерSMS - - - OnChange - ПровайдерSMSПриИзменении - + + <key>ru</key> + <value>Провайдер и описание</value> + + + ru + Провайдер и описание + - ПровайдерSMSExtendedTooltip - 11 + ПровайдерИОписаниеРасширеннаяПодсказка + 23 Label true true @@ -29,30 +128,13 @@ Left - - ПровайдерSMSКонтекстноеМеню - 6 - true - - InputField - Auto - true - Left - true - - 30 - true - true - false - true - true - true - true - true - - Style.ФонУправляющегоПоля - - Normal + UsualGroup + + Auto + true + true + Auto + Auto @@ -86,6 +168,7 @@ true InputField + true Auto true Left @@ -96,6 +179,7 @@ true false true + true true true true @@ -133,6 +217,7 @@ true InputField + true Auto true Left @@ -144,27 +229,27 @@ false true true + true true true true Normal - - ОписаниеУслугиБилайн - 7 - - <key>ru</key> - <value>Описание услуги «Корпоративные SMS-сервисы» (Билайн)</value> - + + ИмяОтправителя + 16 true true true + + ИмяОтправителя + - ОписаниеУслугиБилайнExtendedTooltip - 14 + ИмяОтправителяРасширеннаяПодсказка + 18 Label true true @@ -173,61 +258,25 @@ - ОписаниеУслугиБилайнКонтекстноеМеню - 8 + ИмяОтправителяКонтекстноеМеню + 17 true - Label - true - true - true - - - Click - ОписаниеУслугиБилайнНажатие - - true - Left - - - - ОписаниеУслугиМТС - 9 - - <key>ru</key> - <value>Описание услуги «МТС Коммуникатор» (МТС)</value> - - true - true - - true - - - ОписаниеУслугиМТСExtendedTooltip - 15 - Label + InputField + Enter + true + Left + true + + 30 true true - - Left - - - - ОписаниеУслугиМТСКонтекстноеМеню - 10 - true - - Label - true - true - true - - - Click - ОписаниеУслугиМТСНажатие - - true - Left + false + true + true + true + true + Normal @@ -306,6 +355,24 @@ true + + ИмяОтправителя + + <key>ru</key> + <value>Имя отправителя</value> + + 4 + + String + + + + true + + + true + + diff --git a/SSL/src/CommonForms/НастройкаОтправкиSMS/Help/ru.html b/SSL/src/CommonForms/НастройкаОтправкиSMS/Help/ru.html index d1c4ead83..7a71c7017 100644 --- a/SSL/src/CommonForms/НастройкаОтправкиSMS/Help/ru.html +++ b/SSL/src/CommonForms/НастройкаОтправкиSMS/Help/ru.html @@ -8,4 +8,5 @@
    • Массовое оповещение клиентов о товарах, услугах, акциях и специальных предложениях.
    • Для возможности отправки SMS необходимо заключить договор с провайдером на оказание соответствующей услуги. Подробности об услуге можно узнать на сайтах провайдеров:

      В поле Провайдер необходимо выбрать поставщика услуги, с которым заключен договор.

      -

      При заключении договора получателю услуги предоставляются идентификационные данные: Логин и Пароль. Их необходимо указать в соответствующих полях.

      \ No newline at end of file +

      При заключении договора получателю услуги предоставляются идентификационные данные: Логин и Пароль. Их необходимо указать в соответствующих полях.

      +

      В настройках отправки SMS можно указать Имя отправителя. В этом случае SMS будут приходить с указанного имени, а не с номера телефона отправителя.

      \ No newline at end of file diff --git a/SSL/src/CommonForms/НастройкаОтправкиSMS/Module.bsl b/SSL/src/CommonForms/НастройкаОтправкиSMS/Module.bsl index fb5fcf803..d5d562c08 100644 --- a/SSL/src/CommonForms/НастройкаОтправкиSMS/Module.bsl +++ b/SSL/src/CommonForms/НастройкаОтправкиSMS/Module.bsl @@ -1,3 +1,4 @@ + #Область ОбработчикиСобытийФормы &НаСервере @@ -5,10 +6,21 @@ Владелец = ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Константа.ПровайдерSMS"); УстановитьПривилегированныйРежим(Истина); - ПарольИЛогин = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(Владелец, "Пароль, Логин"); + НастройкиПровайдера = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(Владелец, "Пароль, Логин, ИмяОтправителя"); УстановитьПривилегированныйРежим(Ложь); - ЛогинДляОтправкиSMS = ПарольИЛогин.Логин; - ПарольДляОтправкиSMS = ?(ЗначениеЗаполнено(ПарольИЛогин.Пароль), ЭтотОбъект.УникальныйИдентификатор, ""); + ЛогинДляОтправкиSMS = НастройкиПровайдера.Логин; + ИмяОтправителя = НастройкиПровайдера.ИмяОтправителя; + ПарольДляОтправкиSMS = ?(ЗначениеЗаполнено(НастройкиПровайдера.Пароль), ЭтотОбъект.УникальныйИдентификатор, ""); + + Если НаборКонстант.ПровайдерSMS = Перечисления.ПровайдерыSMS.GSMINFORM Тогда + Элементы.ЛогинДляОтправкиSMS.Заголовок = НСтр("ru = 'ID кабинета'"); + Элементы.ПарольДляОтправкиSMS.Заголовок = НСтр("ru = 'API-ключ'"); + Элементы.ИмяОтправителя.АвтоОтметкаНезаполненного = Истина; + Иначе + Элементы.ЛогинДляОтправкиSMS.Заголовок = НСтр("ru = 'Логин'"); + Элементы.ПарольДляОтправкиSMS.Заголовок = НСтр("ru = 'Пароль'"); + Элементы.ИмяОтправителя.АвтоОтметкаНезаполненного = Ложь; + КонецЕсли; КонецПроцедуры @@ -28,6 +40,7 @@ ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(Владелец, ПарольДляОтправкиSMS); КонецЕсли; ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(Владелец, ЛогинДляОтправкиSMS, "Логин"); + ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(Владелец, ИмяОтправителя, "ИмяОтправителя"); УстановитьПривилегированныйРежим(Ложь); КонецПроцедуры @@ -35,20 +48,44 @@ #Область ОбработчикиСобытийЭлементовШапкиФормы -&НаКлиенте -Процедура ОписаниеУслугиБилайнНажатие(Элемент) - ПерейтиПоНавигационнойСсылке("http://b2b.beeline.ru/msk/sb/mobile/services/index.wbp?id=3a15308a-7b14-4f8e-acda-0841dd6c750e"); -КонецПроцедуры - -&НаКлиенте -Процедура ОписаниеУслугиМТСНажатие(Элемент) - ПерейтиПоНавигационнойСсылке("http://www.mtscommunicator.ru/service/"); -КонецПроцедуры - &НаКлиенте Процедура ПровайдерSMSПриИзменении(Элемент) ЛогинДляОтправкиSMS = ""; ПарольДляОтправкиSMS = ""; + ИмяОтправителя = ""; + + Если НаборКонстант.ПровайдерSMS = ПредопределенноеЗначение("Перечисление.ПровайдерыSMS.GSMINFORM") Тогда + Элементы.ЛогинДляОтправкиSMS.Заголовок = НСтр("ru = 'ID кабинета'"); + Элементы.ПарольДляОтправкиSMS.Заголовок = НСтр("ru = 'API-ключ'"); + Элементы.ИмяОтправителя.АвтоОтметкаНезаполненного = Истина; + Иначе + Элементы.ЛогинДляОтправкиSMS.Заголовок = НСтр("ru = 'Логин'"); + Элементы.ПарольДляОтправкиSMS.Заголовок = НСтр("ru = 'Пароль'"); + Элементы.ИмяОтправителя.АвтоОтметкаНезаполненного = Ложь; + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ОписаниеУслугиНажатие(Элемент) + Если НаборКонстант.ПровайдерSMS = ПредопределенноеЗначение("Перечисление.ПровайдерыSMS.Билайн") Тогда + ПерейтиПоНавигационнойСсылке("http://b2b.beeline.ru/msk/sb/mobile/services/index.wbp?id=3a15308a-7b14-4f8e-acda-0841dd6c750e"); + ИначеЕсли НаборКонстант.ПровайдерSMS = ПредопределенноеЗначение("Перечисление.ПровайдерыSMS.МТС") Тогда + ПерейтиПоНавигационнойСсылке("http://www.mtscommunicator.ru/service/"); + ИначеЕсли НаборКонстант.ПровайдерSMS = ПредопределенноеЗначение("Перечисление.ПровайдерыSMS.SMSRU") Тогда + ПерейтиПоНавигационнойСсылке("http://sms.ru"); + ИначеЕсли НаборКонстант.ПровайдерSMS = ПредопределенноеЗначение("Перечисление.ПровайдерыSMS.SMSЦЕНТР") Тогда + ПерейтиПоНавигационнойСсылке("http://smsc.ru"); + ИначеЕсли НаборКонстант.ПровайдерSMS = ПредопределенноеЗначение("Перечисление.ПровайдерыSMS.СМСУслуги") Тогда + ПерейтиПоНавигационнойСсылке("http://sms-uslugi.ru"); + ИначеЕсли НаборКонстант.ПровайдерSMS = ПредопределенноеЗначение("Перечисление.ПровайдерыSMS.GSMINFORM") Тогда + ПерейтиПоНавигационнойСсылке("http://gsm-inform.ru"); + Иначе + АдресВИнтернете = ""; + ОтправкаSMSКлиентПереопределяемый.ПриПолученииАдресаПровайдераВИнтернете(НаборКонстант.ПровайдерSMS, АдресВИнтернете); + Если Не ПустаяСтрока(АдресВИнтернете) Тогда + ПерейтиПоНавигационнойСсылке(АдресВИнтернете); + КонецЕсли; + КонецЕсли; КонецПроцедуры #КонецОбласти diff --git a/SSL/src/CommonForms/НастройкиВходаПользователей/Form.form b/SSL/src/CommonForms/НастройкиВходаПользователей/Form.form index d6742916d..e85c1c5c8 100644 --- a/SSL/src/CommonForms/НастройкиВходаПользователей/Form.form +++ b/SSL/src/CommonForms/НастройкиВходаПользователей/Form.form @@ -53,61 +53,25 @@ ГруппаМинимальнаяДлинаПароля 43 - - ГруппаМинимальнаяДлинаПароляВключить - 100 - - МинимальнаяДлинаПароляВключить - 86 - true - true - - true - - - МинимальнаяДлинаПароляВключить - - Right - - OnChange - НастройкаВключитьПриИзменении - - - МинимальнаяДлинаПароляВключитьРасширеннаяПодсказка - 88 - Label - true - true - - Left - - - - МинимальнаяДлинаПароляВключитьКонтекстноеМеню - 87 - true - - CheckBoxField - Enter - true - Left - true - - + + МинимальнаяДлинаПароляВключить + 86 true true true - - <key>ru</key> - <value>Группа минимальная длина пароля включить</value> - - 34 - false + + МинимальнаяДлинаПароляВключить + + Right + + OnChange + НастройкаВключитьПриИзменении + - ГруппаМинимальнаяДлинаПароляВключитьРасширеннаяПодсказка - 101 + МинимальнаяДлинаПароляВключитьРасширеннаяПодсказка + 88 Label true true @@ -115,15 +79,17 @@ Left
      - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + + МинимальнаяДлинаПароляВключитьКонтекстноеМеню + 87 + true + + CheckBoxField + Enter + true + Left + true +
      МинимальнаяДлинаПароля @@ -202,7 +168,6 @@ true Label - true true Left @@ -231,7 +196,6 @@ Auto true - true Auto Auto @@ -259,8 +223,11 @@ Vertical Auto + NormalSeparation true - true + + Style.FormBackColor + Auto Auto @@ -271,61 +238,25 @@ ГруппаМаксимальныйСрокДействияПароля 53 - - ГруппаМаксимальныйСрокДействияПароляВключить - 104 - - МаксимальныйСрокДействияПароляВключить - 92 - true - true - - true - - - МаксимальныйСрокДействияПароляВключить - - Right - - OnChange - НастройкаВключитьПриИзменении - - - МаксимальныйСрокДействияПароляВключитьРасширеннаяПодсказка - 94 - Label - true - true - - Left - - - - МаксимальныйСрокДействияПароляВключитьКонтекстноеМеню - 93 - true - - CheckBoxField - Enter - true - Left - true - - + + МаксимальныйСрокДействияПароляВключить + 92 true true true - - <key>ru</key> - <value>Группа максимальный срок действия пароля включить</value> - - 34 - false + + МаксимальныйСрокДействияПароляВключить + + Right + + OnChange + НастройкаВключитьПриИзменении + - ГруппаМаксимальныйСрокДействияПароляВключитьРасширеннаяПодсказка - 105 + МаксимальныйСрокДействияПароляВключитьРасширеннаяПодсказка + 94 Label true true @@ -333,15 +264,17 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + + МаксимальныйСрокДействияПароляВключитьКонтекстноеМеню + 93 + true + + CheckBoxField + Enter + true + Left + true + МаксимальныйСрокДействияПароля @@ -421,7 +354,6 @@ true Label - true true Left @@ -450,7 +382,6 @@ Auto true - true Auto Auto @@ -458,61 +389,25 @@ ГруппаМинимальныйСрокДействияПароля 48 - - ГруппаМинимальныйСрокДействияПароляВключить - 98 - - МинимальныйСрокДействияПароляВключить - 89 - true - true - - true - - - МинимальныйСрокДействияПароляВключить - - Right - - OnChange - НастройкаВключитьПриИзменении - - - МинимальныйСрокДействияПароляВключитьРасширеннаяПодсказка - 91 - Label - true - true - - Left - - - - МинимальныйСрокДействияПароляВключитьКонтекстноеМеню - 90 - true - - CheckBoxField - Enter - true - Left - true - - + + МинимальныйСрокДействияПароляВключить + 89 true true true - - <key>ru</key> - <value>Группа минимальный срок действия пароля включить</value> - - 34 - false + + МинимальныйСрокДействияПароляВключить + + Right + + OnChange + НастройкаВключитьПриИзменении + - ГруппаМинимальныйСрокДействияПароляВключитьРасширеннаяПодсказка - 99 + МинимальныйСрокДействияПароляВключитьРасширеннаяПодсказка + 91 Label true true @@ -520,15 +415,17 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + + МинимальныйСрокДействияПароляВключитьКонтекстноеМеню + 90 + true + + CheckBoxField + Enter + true + Left + true + МинимальныйСрокДействияПароля @@ -608,7 +505,6 @@ true Label - true true Left @@ -637,7 +533,6 @@ Auto true - true Auto Auto @@ -645,61 +540,25 @@ ГруппаЗапретитьПовторениеПароляСредиПоследних 38 - - ГруппаЗапретитьПовторениеПароляСредиПоследнихВключить - 102 - - ЗапретитьПовторениеПароляСредиПоследнихВключить - 83 - true - true - - true - - - ЗапретитьПовторениеПароляСредиПоследнихВключить - - Right - - OnChange - НастройкаВключитьПриИзменении - - - ЗапретитьПовторениеПароляСредиПоследнихВключитьРасширеннаяПодсказка - 85 - Label - true - true - - Left - - - - ЗапретитьПовторениеПароляСредиПоследнихВключитьКонтекстноеМеню - 84 - true - - CheckBoxField - Enter - true - Left - true - - + + ЗапретитьПовторениеПароляСредиПоследнихВключить + 83 true true true - - <key>ru</key> - <value>Группа запретить повторение пароля среди последних включить</value> - - 34 - false + + ЗапретитьПовторениеПароляСредиПоследнихВключить + + Right + + OnChange + НастройкаВключитьПриИзменении + - ГруппаЗапретитьПовторениеПароляСредиПоследнихВключитьРасширеннаяПодсказка - 103 + ЗапретитьПовторениеПароляСредиПоследнихВключитьРасширеннаяПодсказка + 85 Label true true @@ -707,15 +566,17 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + + ЗапретитьПовторениеПароляСредиПоследнихВключитьКонтекстноеМеню + 84 + true + + CheckBoxField + Enter + true + Left + true + ЗапретитьПовторениеПароляСредиПоследних @@ -790,7 +651,6 @@ true Label - true true Left @@ -819,7 +679,6 @@ Auto true - true Auto Auto @@ -849,7 +708,9 @@ Auto NormalSeparation true - true + + Style.FormBackColor + Auto Auto @@ -857,63 +718,26 @@ ГруппаПросрочкаРаботыВПрограммеДоЗапрещенияВхода 75 - - ГруппаПросрочкаРаботыВПрограммеДоЗапрещенияВходаВключить - 106 - - ПросрочкаРаботыВПрограммеДоЗапрещенияВходаВключить - 95 - true - true - - true - - - ПросрочкаРаботыВПрограммеДоЗапрещенияВходаВключить - - Right - 2 - - OnChange - НастройкаВключитьПриИзменении - - - ПросрочкаРаботыВПрограммеДоЗапрещенияВходаВключитьРасширеннаяПодсказка - 97 - Label - true - true - - Left - - - - ПросрочкаРаботыВПрограммеДоЗапрещенияВходаВключитьКонтекстноеМеню - 96 - true - - CheckBoxField - Top - Enter - true - Left - true - - + + ПросрочкаРаботыВПрограммеДоЗапрещенияВходаВключить + 95 true true true - - <key>ru</key> - <value>Группа просрочка работы в программе до запрещения входа включить</value> - - 34 - false + + ПросрочкаРаботыВПрограммеДоЗапрещенияВходаВключить + + Right + 2 + + OnChange + НастройкаВключитьПриИзменении + - ГруппаПросрочкаРаботыВПрограммеДоЗапрещенияВходаВключитьРасширеннаяПодсказка - 107 + ПросрочкаРаботыВПрограммеДоЗапрещенияВходаВключитьРасширеннаяПодсказка + 97 Label true true @@ -921,15 +745,18 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + + ПросрочкаРаботыВПрограммеДоЗапрещенияВходаВключитьКонтекстноеМеню + 96 + true + + CheckBoxField + Top + Enter + true + Left + true + ПросрочкаРаботыВПрограммеДоЗапрещенияВхода @@ -1011,7 +838,6 @@ true Label - true true Left @@ -1039,8 +865,8 @@ UsualGroup Auto + NormalSeparation true - true Auto Auto diff --git a/SSL/src/CommonForms/НастройкиПравОбъектов/Form.form b/SSL/src/CommonForms/НастройкиПравОбъектов/Form.form index 829237bf6..d6aa737ab 100644 --- a/SSL/src/CommonForms/НастройкиПравОбъектов/Form.form +++ b/SSL/src/CommonForms/НастройкиПравОбъектов/Form.form @@ -959,6 +959,21 @@ true + + ПодтвердитьОтказОтУправленияПравами + + <key>ru</key> + <value>Подтвердить отказ от управления правами</value> + + 17 + + + true + + + true + + ЗаписатьИЗакрыть diff --git a/SSL/src/CommonForms/НастройкиПравОбъектов/Module.bsl b/SSL/src/CommonForms/НастройкиПравОбъектов/Module.bsl index 9d8f32394..c686d3a72 100644 --- a/SSL/src/CommonForms/НастройкиПравОбъектов/Module.bsl +++ b/SSL/src/CommonForms/НастройкиПравОбъектов/Module.bsl @@ -49,10 +49,10 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Оповещение = Новый ОписаниеОповещения("ЗаписатьИЗакрытьОповещение", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы); КонецПроцедуры @@ -365,7 +365,13 @@ КонецЕсли; ПодтвердитьОтказОтУправленияПравами = Неопределено; - ЗаписатьПрава(ПодтвердитьОтказОтУправленияПравами); + Попытка + ЗаписатьПрава(); + Исключение + Если ПодтвердитьОтказОтУправленияПравами <> Истина Тогда + ВызватьИсключение; + КонецЕсли; + КонецПопытки; Если ПодтвердитьОтказОтУправленияПравами = Истина Тогда Кнопки = Новый СписокЗначений; @@ -391,7 +397,7 @@ Если Ответ = "ЗаписатьИЗакрыть" Тогда ПодтвердитьОтказОтУправленияПравами = Ложь; - ЗаписатьПрава(ПодтвердитьОтказОтУправленияПравами); + ЗаписатьПрава(); Закрыть(); КонецЕсли; @@ -747,7 +753,7 @@ КонецПроцедуры &НаСервере -Процедура ЗаписатьПрава(ПодтвердитьОтказОтУправленияПравами) +Процедура ЗаписатьПрава() ПроверитьРазрешениеНаУправлениеПравами(); @@ -758,14 +764,15 @@ УстановитьПривилегированныйРежим(Ложь); Если ПодтвердитьОтказОтУправленияПравами = Ложь - ИЛИ УправлениеДоступом.ЕстьПраво("УправлениеПравами", Параметры.СсылкаНаОбъект) Тогда + Или УправлениеДоступом.ЕстьПраво("УправлениеПравами", Параметры.СсылкаНаОбъект) Тогда - ЗафиксироватьТранзакцию(); Модифицированность = Ложь; Иначе - ОтменитьТранзакцию(); ПодтвердитьОтказОтУправленияПравами = Истина; + ВызватьИсключение НСтр("ru = 'После записи настройка прав станет недоступной.'"); КонецЕсли; + + ЗафиксироватьТранзакцию(); Исключение ОтменитьТранзакцию(); ВызватьИсключение; diff --git a/SSL/src/CommonForms/НастройкиПроверкиКонтрагентов/Form.form b/SSL/src/CommonForms/НастройкиПроверкиКонтрагентов/Form.form index 5a06d5a37..842d79d6d 100644 --- a/SSL/src/CommonForms/НастройкиПроверкиКонтрагентов/Form.form +++ b/SSL/src/CommonForms/НастройкиПроверкиКонтрагентов/Form.form @@ -42,7 +42,6 @@ <formatted>true</formatted> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> - <height>4</height> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -73,7 +72,6 @@ <key>ru</key> <value>Левая колонка первой группы</value> </toolTip> - <width>48</width> <horizontalStretch>false</horizontalStretch> <extendedTooltip> <name>ЛеваяКолонкаПервойГруппыРасширеннаяПодсказка</name> diff --git a/SSL/src/CommonForms/НастройкиРегистрацииСобытийДоступаКПерсональнымДанным/Form.form b/SSL/src/CommonForms/НастройкиРегистрацииСобытийДоступаКПерсональнымДанным/Form.form index 0e1ecdcee..eb0f0f5e1 100644 --- a/SSL/src/CommonForms/НастройкиРегистрацииСобытийДоступаКПерсональнымДанным/Form.form +++ b/SSL/src/CommonForms/НастройкиРегистрацииСобытийДоступаКПерсональнымДанным/Form.form @@ -163,7 +163,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <height>2</height> <autoMaxHeight>true</autoMaxHeight> <textColor xsi:type="core:ColorRef"> @@ -213,7 +212,6 @@ <event>OnCreateAtServer</event> <name>ПриСозданииНаСервере</name> </handlers> - <width>60</width> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoUrl>true</autoUrl> diff --git a/SSL/src/CommonForms/НастройкиРегистрацииСобытийДоступаКПерсональнымДанным/Module.bsl b/SSL/src/CommonForms/НастройкиРегистрацииСобытийДоступаКПерсональнымДанным/Module.bsl index 7023868e2..065ff5052 100644 --- a/SSL/src/CommonForms/НастройкиРегистрацииСобытийДоступаКПерсональнымДанным/Module.bsl +++ b/SSL/src/CommonForms/НастройкиРегистрацииСобытийДоступаКПерсональнымДанным/Module.bsl @@ -17,10 +17,10 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Оповещение = Новый ОписаниеОповещения("ВыбратьИЗакрыть", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы); КонецПроцедуры diff --git a/SSL/src/CommonForms/НастройкиЭлектроннойПодписиИШифрования/Form.form b/SSL/src/CommonForms/НастройкиЭлектроннойПодписиИШифрования/Form.form index 22a559aa9..437bf133b 100644 --- a/SSL/src/CommonForms/НастройкиЭлектроннойПодписиИШифрования/Form.form +++ b/SSL/src/CommonForms/НастройкиЭлектроннойПодписиИШифрования/Form.form @@ -204,7 +204,6 @@ <key>ru</key> <value>Группа пользовательских настроек</value> - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 294 @@ -877,9 +876,7 @@ true Label - true true - true Style.ПоясняющийОшибкуТекст @@ -1110,43 +1107,13 @@ СтраницаПрограммыСписок 322 - - ПрограммыПояснение - 257 - - <key>ru</key> - <value>Настройки программ электронной подписи и шифрования, которые пользователи могут применять на своих компьютерах:</value> - - true - true - - true - - - ПрограммыПояснениеРасширеннаяПодсказка - 259 - Label - true - true - - Left - - - - ПрограммыПояснениеКонтекстноеМеню - 258 - true - - Label - true - true - - Left - - Программы 203 + + <key>ru</key> + <value>Настройки программ электронной подписи и шифрования, которые пользователи могут применять на своих компьютерах</value> + true true @@ -1155,7 +1122,7 @@ Программы - None + Top ПрограммыНаименование 213 @@ -1625,7 +1592,6 @@ Left true - true 1 true true @@ -1731,7 +1697,6 @@ true Label - true true Left @@ -1764,9 +1729,7 @@ 330 true - 7 true - 3 true @@ -1997,7 +1960,6 @@ true Label - true true @@ -2229,11 +2191,6 @@ ru Страницы - - ru - Страницы - - true СтраницыРасширеннаяПодсказка 41 @@ -2331,11 +2288,9 @@ OnCreateAtServer ПриСозданииНаСервере - 90 DontBlock true true - true Vertical true true @@ -2681,6 +2636,23 @@ true + + ЭтоПрограммаОблачногоСервиса + + <key>ru</key> + <value>Это программа облачного сервиса</value> + + 13 + + Boolean + + + true + + + true + + ПроверятьПодписиНаСервере @@ -2769,15 +2741,14 @@ - LinuxПутьКТекущейПрограмме + БезПраваСохранениеДанныхПользователя <key>ru</key> - <value>Linux путь к текущей программе</value> + <value>Без права сохранение данных пользователя</value> 12 - String - + Boolean true @@ -2787,14 +2758,15 @@ - БезПраваСохранениеДанныхПользователя + LinuxПутьКТекущейПрограмме <key>ru</key> - <value>Без права сохранение данных пользователя</value> + <value>Linux путь к текущей программе</value> 13 - Boolean + String + true diff --git a/SSL/src/CommonForms/НастройкиЭлектроннойПодписиИШифрования/Module.bsl b/SSL/src/CommonForms/НастройкиЭлектроннойПодписиИШифрования/Module.bsl index 4b4951c89..5fc16d9f1 100644 --- a/SSL/src/CommonForms/НастройкиЭлектроннойПодписиИШифрования/Module.bsl +++ b/SSL/src/CommonForms/НастройкиЭлектроннойПодписиИШифрования/Module.bsl @@ -16,6 +16,8 @@ Возврат; КонецЕсли; + НавигационнаяСсылка = "e1cib/app/ОбщаяФорма.НастройкиЭлектроннойПодписиИШифрования"; + Если Не ПравоДоступа("СохранениеДанныхПользователя", Метаданные) Тогда Элементы.СтраницаНастройки.Видимость = Ложь; БезПраваСохранениеДанныхПользователя = Истина; @@ -57,8 +59,8 @@ Элементы.ПрограммыКонтекстноеМенюПрограммыУстановитьПометкуУдаления.Видимость = Ложь; Элементы.ПроверятьПодписиНаСервере.Видимость = Ложь; Элементы.ПодписыватьНаСервере.Видимость = Ложь; - Элементы.ПрограммыПояснение.Заголовок = - НСтр("ru = 'Список программ, предусмотренных администратором, которые можно использовать на компьютере.'"); + Элементы.Программы.Заголовок = + НСтр("ru = 'Список программ, предусмотренных администратором, которые можно использовать на компьютере'"); КонецЕсли; Если Не ЭлектроннаяПодпись.ОбщиеНастройки().ЗаявлениеНаВыпускСертификатаДоступно Тогда @@ -81,7 +83,7 @@ РежимРаботы = ОбщегоНазначенияПовтИсп.РежимРаботыПрограммы(); - Если Не РежимРаботы.ЭтоLinuxКлиент Тогда + Если РежимРаботы.ЭтоWindowsКлиент Тогда Элементы.ГруппаПрограммыLinuxПутьКПрограмме.Видимость = Ложь; КонецЕсли; @@ -498,11 +500,21 @@ КонецЕсли; Если Константы.ИспользоватьШифрование.Получить() Тогда - Элементы.ДобавитьИзУстановленныхНаКомпьютере.Заголовок = - НСтр("ru = 'Из установленных на компьютере...'"); + Если ЭлектроннаяПодписьСлужебный.ИспользоватьЭлектроннуюПодписьВМоделиСервиса() Тогда + Элементы.ДобавитьИзУстановленныхНаКомпьютере.Заголовок = + НСтр("ru = 'Из установленных в облачном сервисе и на компьютере...'"); + Иначе + Элементы.ДобавитьИзУстановленныхНаКомпьютере.Заголовок = + НСтр("ru = 'Из установленных на компьютере...'"); + КонецЕсли; Иначе - Элементы.ДобавитьИзУстановленныхНаКомпьютере.Заголовок = - НСтр("ru = 'Из установленных на компьютере'"); + Если ЭлектроннаяПодписьСлужебный.ИспользоватьЭлектроннуюПодписьВМоделиСервиса() Тогда + Элементы.ДобавитьИзУстановленныхНаКомпьютере.Заголовок = + НСтр("ru = 'Из установленных в облачном сервисе и на компьютере'"); + Иначе + Элементы.ДобавитьИзУстановленныхНаКомпьютере.Заголовок = + НСтр("ru = 'Из установленных на компьютере'"); + КонецЕсли; КонецЕсли; Если Константы.ИспользоватьЭлектронныеПодписи.Получить() Тогда @@ -657,6 +669,11 @@ ОбновитьЗначение(ОписаниеПрограммы.Установлена, ""); ОбработчикОжиданияОпределитьУстановленныеПрограммыЦиклНачало(Контекст); Возврат; + ИначеЕсли ОписаниеПрограммы.ЭтоПрограммаОблачногоСервиса Тогда + ОбновитьЗначение(ОписаниеПрограммы.РезультатПроверки, НСтр("ru = 'Доступен.'")); + ОбновитьЗначение(ОписаниеПрограммы.Установлена, Истина); + ОбработчикОжиданияОпределитьУстановленныеПрограммыЦиклНачало(Контекст); + Возврат; КонецЕсли; ОписанияПрограмм = Новый Массив; @@ -667,7 +684,7 @@ ПараметрыВыполнения.Вставить("Индекс", -1); ПараметрыВыполнения.Вставить("ПоказатьОшибку", Неопределено); ПараметрыВыполнения.Вставить("СвойстваОшибки", Новый Структура("Ошибки", Новый Массив)); - ПараметрыВыполнения.Вставить("ЭтоLinux", ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент()); + ПараметрыВыполнения.Вставить("ЭтоLinux", Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент()); ПараметрыВыполнения.Вставить("Менеджер", Неопределено); ПараметрыВыполнения.Вставить("Оповещение", Новый ОписаниеОповещения( "ОбработчикОжиданияОпределитьУстановленныеПрограммыЦиклПродолжение", ЭтотОбъект, Контекст)); @@ -753,13 +770,37 @@ | Программы.АлгоритмПодписи, | Программы.АлгоритмХеширования, | Программы.АлгоритмШифрования, - | Программы.ПометкаУдаления КАК ПометкаУдаления + | Программы.ПометкаУдаления КАК ПометкаУдаления, + | Программы.ЭтоПрограммаОблачногоСервиса |ИЗ | Справочник.ПрограммыЭлектроннойПодписиИШифрования КАК Программы + |ГДЕ + | НЕ Программы.ЭтоПрограммаОблачногоСервиса + | + |ОБЪЕДИНИТЬ ВСЕ + | + |ВЫБРАТЬ + | Программы.Ссылка, + | Программы.Наименование, + | Программы.ИмяПрограммы, + | Программы.ТипПрограммы, + | Программы.АлгоритмПодписи, + | Программы.АлгоритмХеширования, + | Программы.АлгоритмШифрования, + | Программы.ПометкаУдаления, + | Программы.ЭтоПрограммаОблачногоСервиса + |ИЗ + | Справочник.ПрограммыЭлектроннойПодписиИШифрования КАК Программы + |ГДЕ + | Программы.ЭтоПрограммаОблачногоСервиса + | И &ИспользоватьЭлектроннуюПодписьВМоделиСервиса | |УПОРЯДОЧИТЬ ПО | Наименование"; + Запрос.УстановитьПараметр("ИспользоватьЭлектроннуюПодписьВМоделиСервиса", + ЭлектроннаяПодписьСлужебный.ИспользоватьЭлектроннуюПодписьВМоделиСервиса()); + Выборка = Запрос.Выполнить().Выбрать(); ОбработанныеСтроки = Новый Соответствие; @@ -794,6 +835,7 @@ ОбновитьЗначение(Строка.АлгоритмШифрования, Выборка.АлгоритмШифрования); ОбновитьЗначение(Строка.LinuxПутьКПрограмме, ПутиКПрограммам.Получить(Выборка.Ссылка)); ОбновитьЗначение(Строка.НомерКартинки, ?(Выборка.ПометкаУдаления, 4, 3)); + ОбновитьЗначение(Строка.ЭтоПрограммаОблачногоСервиса, Выборка.ЭтоПрограммаОблачногоСервиса); ОбработанныеСтроки.Вставить(Строка, Истина); Индекс = Индекс + 1; diff --git a/SSL/src/CommonForms/НовыйПароль/Form.form b/SSL/src/CommonForms/НовыйПароль/Form.form index 00435e4cf..a2e9ee050 100644 --- a/SSL/src/CommonForms/НовыйПароль/Form.form +++ b/SSL/src/CommonForms/НовыйПароль/Form.form @@ -1,46 +1,12 @@ - - - ПояснениеКНовомуПаролю - 5 - - <key>ru</key> - <value>Запомните новый пароль или скопируйте в буфер обмена.</value> - - true - true - - true - - - ПояснениеКНовомуПаролюРасширеннаяПодсказка - 7 - Label - true - true - - Left - - - - ПояснениеКНовомуПаролюКонтекстноеМеню - 6 - true - - Label - true - true - true - - Style.ПоясняющийТекст - - - Center - - + НовыйПароль 8 + + <key>ru</key> + <value>Запомните новый пароль или скопируйте в буфер обмена</value> + true true @@ -49,7 +15,8 @@ НовыйПароль - None + true + Top НовыйПарольРасширеннаяПодсказка 10 @@ -79,9 +46,6 @@ true true true - - Style.FormBackColor - Normal diff --git a/SSL/src/CommonForms/ОписаниеИзмененийПрограммы/Form.form b/SSL/src/CommonForms/ОписаниеИзмененийПрограммы/Form.form index 671b03c67..e8ba0b3fb 100644 --- a/SSL/src/CommonForms/ОписаниеИзмененийПрограммы/Form.form +++ b/SSL/src/CommonForms/ОписаниеИзмененийПрограммы/Form.form @@ -22,8 +22,11 @@ ОтложенноеОбновлениеДанныхExtendedTooltip 29 + + <key>ru</key> + <value>Работа в программе временно ограничена, так как еще не завершен переход на новую версию.</value> + Label - true true Left @@ -33,48 +36,14 @@ Form.Command.ОтложенноеОбновлениеДанных Normal Auto - true true UserCmds CommonPicture.Предупреждение + ShowBottom Auto - - ОтложенноеОбновлениеДанныхПояснение - 26 - - <key>ru</key> - <value>Работа в программе временно ограничена, так как еще не завершен переход на новую версию.</value> - - true - true - - true - - - ОтложенноеОбновлениеДанныхПояснениеExtendedTooltip - 30 - Label - true - true - - Left - - - - ОтложенноеОбновлениеДанныхПояснениеКонтекстноеМеню - 27 - true - - Label - true - true - - Right - - true true @@ -84,7 +53,6 @@ ru Отложенное обновление - true ОтложенноеОбновлениеExtendedTooltip 28 @@ -132,9 +100,7 @@ 59 true - 2 true - 1 true @@ -172,7 +138,6 @@ true Label - true true @@ -200,6 +165,7 @@ UsualGroup Auto + NormalSeparation true true Auto @@ -347,10 +313,13 @@ Form.Item.ОписаниеОбновлений.StandardCommand.Print Normal - Auto + PictureAndText true true UserCmds + + StdPicture.Print + Auto InCommandBarAndInAdditionalSubmenu @@ -528,6 +497,7 @@ ОписаниеОбновлений + true None ОписаниеОбновленийExtendedTooltip @@ -565,8 +535,6 @@ ScrollAlways Auto true - true - true @@ -600,9 +568,11 @@ true Label - true true true + + Style.ПоясняющийТекст + Left Top @@ -644,9 +614,9 @@ true Label - true true - true + false + Right Click @@ -667,7 +637,6 @@ true - true false ЗакрытьExtendedTooltip @@ -695,11 +664,6 @@ ru Командная панель формы - - ru - Командная панель формы - - 5 КоманднаяПанельФормыExtendedTooltip 43 @@ -724,11 +688,8 @@ ru Группа техническая информация и закрыть - - ru - Группа техническая информация и закрыть - false + Right ГруппаТехническаяИнформацияИЗакрытьExtendedTooltip 41 @@ -758,11 +719,6 @@ ru Группа - - ru - Группа - - true ГруппаExtendedTooltip 39 diff --git a/SSL/src/CommonForms/ОписаниеИзмененийПрограммы/Module.bsl b/SSL/src/CommonForms/ОписаниеИзмененийПрограммы/Module.bsl index 7b57d1275..f559cca45 100644 --- a/SSL/src/CommonForms/ОписаниеИзмененийПрограммы/Module.bsl +++ b/SSL/src/CommonForms/ОписаниеИзмененийПрограммы/Module.bsl @@ -7,6 +7,13 @@ Возврат; КонецЕсли; + НастройкиПодсистемы = ОбновлениеИнформационнойБазыСлужебный.НастройкиПодсистемы(); + АдресФормыВПрограмме = НастройкиПодсистемы.РасположениеОписанияИзмененийПрограммы; + + Если ЗначениеЗаполнено(АдресФормыВПрограмме) Тогда + Элементы.АдресФормыВПрограмме.Заголовок = АдресФормыВПрограмме; + КонецЕсли; + Если Не Параметры.ПоказыватьТолькоИзменения Тогда Элементы.АдресФормыВПрограмме.Видимость = Ложь; КонецЕсли; @@ -42,7 +49,7 @@ Иначе ДокументОписаниеОбновлений = ОбновлениеИнформационнойБазыСлужебный.ДокументОписаниеОбновлений(Разделы); КонецЕсли; - + Если ДокументОписаниеОбновлений.ВысотаТаблицы = 0 Тогда Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Конфигурация успешно обновлена на версию %1'"), Метаданные.Версия); ДокументОписаниеОбновлений.Область("R1C1:R1C1").Текст = Текст; @@ -81,14 +88,11 @@ Если Не Пользователи.ЭтоПолноправныйПользователь(, Истина) Тогда Элементы.ОтложенноеОбновлениеДанных.Заголовок = НСтр("ru = 'Не выполнены дополнительные процедуры обработки данных'"); - Элементы.ОтложенноеОбновлениеДанныхПояснение.Заголовок = - НСтр("ru = 'Работа в программе временно ограничена, так как еще не завершен переход на новую версию.'"); КонецЕсли; Если Не ЗначениеЗаполнено(ВремяНачалаОбновления) И Не ЗначениеЗаполнено(ВремяОкончанияОбновления) Тогда Элементы.ТехническаяИнформацияОРезультатахОбновления.Видимость = Ложь; ИначеЕсли Пользователи.ЭтоПолноправныйПользователь() И Не ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда - Элементы.АдресФормыВПрограмме.ВысотаЗаголовка = 2; Элементы.ТехническаяИнформацияОРезультатахОбновления.Видимость = Истина; Иначе Элементы.ТехническаяИнформацияОРезультатахОбновления.Видимость = Ложь; diff --git a/SSL/src/CommonForms/ОтправкаSMS/Form.form b/SSL/src/CommonForms/ОтправкаSMS/Form.form index ecdecf2f1..4f9cdf004 100644 --- a/SSL/src/CommonForms/ОтправкаSMS/Form.form +++ b/SSL/src/CommonForms/ОтправкаSMS/Form.form @@ -10,6 +10,81 @@ ПараметрыОтправки 15 + + ГруппаНомерПолучателя + 128 + + НомераПолучателей + 130 + true + true + + true + + + НомераПолучателей + + + НомераПолучателейРасширеннаяПодсказка + 132 + Label + true + true + + Left + + + + НомераПолучателейКонтекстноеМеню + 131 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + ru + +79001234567 + + + + true + + true + + + <key>ru</key> + <value>Группа номер получателя</value> + + + ГруппаНомерПолучателяРасширеннаяПодсказка + 129 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + ГруппаТекстСообщения 18 @@ -374,130 +449,30 @@ 52 true - 5 true - 4 true + Center CommonPicture.ДлительнаяОперация48 - - ГруппаИнформацияОСтатусеДоставки - 67 - - Отступ - 74 - true - true - - true - - - ОтступРасширеннаяПодсказка - 76 - Label - true - true - - Left - - - - ОтступКонтекстноеМеню - 75 - true - - Label - true - true - - Left - - - - ГруппаСтатусДоставки - 77 - - СтатусОтправки - 71 - true - true - - true - - - СтатусОтправки - - None - - СтатусОтправкиРасширеннаяПодсказка - 73 - Label - true - true - - Left - - - - СтатусОтправкиКонтекстноеМеню - 72 - true - - LabelField - Enter - true - Left - true - - true - true - - - true - true - - true - - - <key>ru</key> - <value>Группа статус доставки</value> - - - ru - Группа статус доставки - - - ГруппаСтатусДоставкиРасширеннаяПодсказка - 78 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - + + СтатусОтправки + 71 true true true + + СтатусОтправки + + None - ГруппаИнформацияОСтатусеДоставкиРасширеннаяПодсказка - 68 + СтатусОтправкиРасширеннаяПодсказка + 73 Label true true @@ -505,14 +480,21 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + СтатусОтправкиКонтекстноеМеню + 72 + true + + LabelField + Center + Center + Enter + true + Left + true + + true + true true @@ -556,11 +538,6 @@ ru Страница статус - - ru - Страница статус - - true СтраницаСтатусРасширеннаяПодсказка 30 @@ -577,6 +554,353 @@ false + + СтраницаСообщениеОтправлено + 91 + + ГруппаСообщениеОтправлено + 115 + + КартинкаСообщениеОтправлено + 95 + + <key>ru</key> + <value>Картинка сообщение отправлено</value> + + true + true + + true + + + КартинкаСообщениеОтправленоРасширеннаяПодсказка + 97 + Label + true + true + + Left + + + + КартинкаСообщениеОтправленоКонтекстноеМеню + 96 + true + + true + true + + + CommonPicture.Успешно32 + + + + + ТекстСообщениеОтправлено + 109 + + <key>ru</key> + <value>Отправка сообщения выполнена.</value> + + true + true + + true + + + ТекстСообщениеОтправленоРасширеннаяПодсказка + 111 + Label + true + true + + Left + + + + ТекстСообщениеОтправленоКонтекстноеМеню + 110 + true + + Label + true + true + Center + + Left + + + true + true + + true + + + <key>ru</key> + <value>Группа сообщение отправлено</value> + + + ru + Группа сообщение отправлено + + true + + ГруппаСообщениеОтправленоРасширеннаяПодсказка + 116 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ГруппаПроверкаСтатусаДоставки + 117 + + КартинкаДлительнаяОперация + 119 + + <key>ru</key> + <value>Картинка длительная операция</value> + + true + true + + true + + + КартинкаДлительнаяОперацияРасширеннаяПодсказка + 121 + Label + true + true + + Left + + + + КартинкаДлительнаяОперацияКонтекстноеМеню + 120 + true + + true + true + + + CommonPicture.НезавершившаясяПроверка + + + + + НадписьВыполняетсяПроверкаСтатусаДоставки + 125 + + <key>ru</key> + <value>Выполняется проверка статуса доставки...</value> + + true + true + + true + + + НадписьВыполняетсяПроверкаСтатусаДоставкиРасширеннаяПодсказка + 127 + Label + true + true + + Left + + + + НадписьВыполняетсяПроверкаСтатусаДоставкиКонтекстноеМеню + 126 + true + + Label + true + true + + Left + + + true + true + + true + + + <key>ru</key> + <value>Группа проверка статуса доставки</value> + + + ru + Группа проверка статуса доставки + + Top + + ГруппаПроверкаСтатусаДоставкиРасширеннаяПодсказка + 118 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Страница сообщение отправлено</value> + + + ru + Страница сообщение отправлено + + + СтраницаСообщениеОтправленоРасширеннаяПодсказка + 92 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СтраницаСообщениеНеОтправлено + 101 + + КартинкаСообщениеНеОтправлено + 103 + + <key>ru</key> + <value>Картинка сообщение не отправлено</value> + + true + true + + true + + + КартинкаСообщениеНеОтправленоРасширеннаяПодсказка + 105 + Label + true + true + + Left + + + + КартинкаСообщениеНеОтправленоКонтекстноеМеню + 104 + true + + true + true + + + CommonPicture.Предупреждение32 + + + + + ТекстСообщениеНеОтправлено + 112 + + <key>ru</key> + <value>Сообщение не было отправлено (см. журнал регистрации).</value> + + true + true + + true + + + ТекстСообщениеНеОтправленоРасширеннаяПодсказка + 114 + Label + true + true + + Left + + + + ТекстСообщениеНеОтправленоКонтекстноеМеню + 113 + true + + Label + true + true + Center + + Left + + + true + true + + true + + + <key>ru</key> + <value>Страница сообщение не отправлено</value> + + + ru + Страница сообщение отправлено + + + СтраницаСообщениеНеОтправленоРасширеннаяПодсказка + 102 + Label + true + true + + Left + + + Page + + HorizontalIfPossible + auto + false + + true true @@ -762,7 +1086,7 @@ НомераПолучателей <key>ru</key> - <value>Номера получателей</value> + <value>Номер телефона получателя</value> 1 diff --git a/SSL/src/CommonForms/ОтправкаSMS/Module.bsl b/SSL/src/CommonForms/ОтправкаSMS/Module.bsl index d2e1a06df..705366b29 100644 --- a/SSL/src/CommonForms/ОтправкаSMS/Module.bsl +++ b/SSL/src/CommonForms/ОтправкаSMS/Module.bsl @@ -26,12 +26,17 @@ НомераПолучателей = Строка(Параметры.НомераПолучателей); КонецЕсли; + Если ПустаяСтрока(НомераПолучателей) Тогда + Элементы.ГруппаНомерПолучателя.Видимость = Истина; + КонецЕсли; + Заголовок = НСтр("ru = 'Отправка SMS на телефон'") + " " + НомераПолучателей; КонецПроцедуры &НаКлиенте Процедура ПриОткрытии(Отказ) ДлинаСообщенияСимволов = 0; + Элементы.ТекстСообщения.ОбновитьТекстРедактирования(); КонецПроцедуры #КонецОбласти @@ -75,22 +80,12 @@ // проверка статуса отправки Если Не ПустаяСтрока(ИдентификаторСообщения) Тогда - ПроверитьСтатусДоставки(); - Иначе - Элементы.ДекорацияАнимация.Картинка = БиблиотекаКартинок.Ошибка32; - СтатусОтправки = НСтр("ru = 'Сообщение не было отправлено (см. журнал регистрации).'"); - ОшибкаОтправкиСообщения(); + Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаСообщениеОтправлено; + ПодключитьОбработчикОжидания("ПроверитьСтатусДоставки", 2, Истина); КонецЕсли; КонецПроцедуры -&НаСервереБезКонтекста -Процедура ОшибкаОтправкиСообщения() - ОписаниеОшибки = НСтр("ru = 'При попытке передать сообщение для отправки провайдеру SMS услуг возникла ошибка.'"); - ИмяСобытия = НСтр("ru = 'Ошибка отправки SMS отсутствует идентификатор сообщения.'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); - ЗаписьЖурналаРегистрации(ИмяСобытия, УровеньЖурналаРегистрации.Ошибка, , , ОписаниеОшибки); -КонецПроцедуры - #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -107,14 +102,23 @@ // отправка РезультатОтправки = ОтправкаSMS.ОтправитьSMS(МассивНомеров, ТекстСообщения, ИмяОтправителя, ОтправлятьВТранслите); - // Проверка доставки для первого получателя. - Если РезультатОтправки.ОтправленныеСообщения.Количество() > 0 Тогда - ИдентификаторСообщения = РезультатОтправки.ОтправленныеСообщения[0].ИдентификаторСообщения; - КонецЕсли; // Вывод информации об ошибках в процессе отправки. - Если Не ПустаяСтрока(РезультатОтправки.ОписаниеОшибки) Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(РезультатОтправки.ОписаниеОшибки); + Если ПустаяСтрока(РезультатОтправки.ОписаниеОшибки) Тогда + // Проверка доставки для первого получателя. + Если РезультатОтправки.ОтправленныеСообщения.Количество() > 0 Тогда + ИдентификаторСообщения = РезультатОтправки.ОтправленныеСообщения[0].ИдентификаторСообщения; + КонецЕсли; + Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаСообщениеОтправлено; + Иначе + Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаСообщениеНеОтправлено; + + ШаблонСообщения = НСтр("ru = 'Сообщение не было отправлено: + |%1 + |Подробности см. в журнале регистрации.'"); + + Элементы.ТекстСообщениеНеОтправлено.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + ШаблонСообщения, РезультатОтправки.ОписаниеОшибки); КонецЕсли; КонецПроцедуры @@ -122,38 +126,55 @@ &НаКлиенте Процедура ПроверитьСтатусДоставки() - ОтключитьОбработчикОжидания("ПроверитьСтатусДоставки");; РезультатДоставки = СтатусДоставки(ИдентификаторСообщения); СтатусОтправки = РезультатДоставки.Описание; - Если РезультатДоставки.Статус = "Отправляется" ИЛИ РезультатДоставки.Статус = "Отправлено" Тогда - // Повтор проверки статуса доставки, если сообщение в процессе передачи абоненту. - ПодключитьОбработчикОжидания("ПроверитьСтатусДоставки", 5, Истина); - ИначеЕсли РезультатДоставки.Статус = "Доставлено" Тогда - Элементы.ДекорацияАнимация.Картинка = БиблиотекаКартинок.Успешно32; - Иначе + РезультатыДоставки = Новый Массив; + РезультатыДоставки.Добавить("Ошибка"); + РезультатыДоставки.Добавить("НеДоставлено"); + РезультатыДоставки.Добавить("Доставлено"); + РезультатыДоставки.Добавить("НеОтправлено"); + + ПроверкаСтатусаЗавершена = РезультатыДоставки.Найти(РезультатДоставки.Статус) <> Неопределено; + Элементы.ГруппаПроверкаСтатусаДоставки.Видимость = ПроверкаСтатусаЗавершена; + + ШаблонСостояния = НСтр("ru = 'Отправка сообщения выполнена. Состояние доставки: + |%1.'"); + Элементы.ТекстСообщениеОтправлено.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + ШаблонСостояния, РезультатДоставки.Описание); + + + Если РезультатДоставки.Статус = "Ошибка" Тогда Элементы.ДекорацияАнимация.Картинка = БиблиотекаКартинок.Ошибка32; + Иначе + Если РезультатыДоставки.Найти(РезультатДоставки.Статус) <> Неопределено Тогда + Элементы.ДекорацияАнимация.Картинка = БиблиотекаКартинок.Успешно32; + Элементы.ГруппаПроверкаСтатусаДоставки.Видимость = Ложь; + Иначе + ПодключитьОбработчикОжидания("ПроверитьСтатусДоставки", 2, Истина); + Элементы.ГруппаПроверкаСтатусаДоставки.Видимость = Истина; + КонецЕсли; КонецЕсли; - + КонецПроцедуры &НаСервереБезКонтекста Функция СтатусДоставки(ИдентификаторСообщения) СтатусыДоставки = Новый Соответствие; - СтатусыДоставки.Вставить("Ошибка", НСтр("ru = 'Произошла ошибка при подключении к провайдеру SMS'")); - СтатусыДоставки.Вставить("НеОтправлялось", НСтр("ru = 'Сообщение не отправлялось.'")); - СтатусыДоставки.Вставить("Отправляется", НСтр("ru = 'Отправка сообщения...'")); - СтатусыДоставки.Вставить("Отправлено", НСтр("ru = 'Отправлено, ожидается подтверждение о доставке...'")); - СтатусыДоставки.Вставить("НеОтправлено", НСтр("ru = 'Сообщение не отправлено'")); - СтатусыДоставки.Вставить("Доставлено", НСтр("ru = 'Сообщение доставлено'")); - СтатусыДоставки.Вставить("НеДоставлено", НСтр("ru = 'Не доставлено'")); + СтатусыДоставки.Вставить("Ошибка", НСтр("ru = 'произошла ошибка при подключении к провайдеру SMS'")); + СтатусыДоставки.Вставить("НеОтправлялось", НСтр("ru = 'сообщение не отправлялось провайдером'")); + СтатусыДоставки.Вставить("Отправляется", НСтр("ru = 'выполняется отправка провайдером'")); + СтатусыДоставки.Вставить("Отправлено", НСтр("ru = 'отправлено провайдером'")); + СтатусыДоставки.Вставить("НеОтправлено", НСтр("ru = 'сообщение не отправлено провайдером'")); + СтатусыДоставки.Вставить("Доставлено", НСтр("ru = 'сообщение доставлено'")); + СтатусыДоставки.Вставить("НеДоставлено", НСтр("ru = 'сообщение не доставлено'")); РезультатДоставки = Новый Структура("Статус, Описание"); РезультатДоставки.Статус = ОтправкаSMS.СтатусДоставки(ИдентификаторСообщения); - РезультатДоставки.Описание = СтатусыДоставки.Получить(РезультатДоставки.Статус); - Если РезультатДоставки.Описание = Неопределено Тогда - РезультатДоставки.Описание = СтатусыДоставки["НеДоставлено"]; + РезультатДоставки.Описание = СтатусыДоставки[РезультатДоставки.Статус]; + Если РезультатДоставки.Описание = Неопределено Тогда + РезультатДоставки.Описание = "<" + РезультатДоставки.Статус + ">"; КонецЕсли; Возврат РезультатДоставки; diff --git a/SSL/src/CommonForms/ОтправкаСообщения/Form.form b/SSL/src/CommonForms/ОтправкаСообщения/Form.form index 434d4b64f..566d88009 100644 --- a/SSL/src/CommonForms/ОтправкаСообщения/Form.form +++ b/SSL/src/CommonForms/ОтправкаСообщения/Form.form @@ -1,30 +1,26 @@ - ОсновнаяГруппаТелаПисьма - 10 + ГруппаУчетнаяЗапись + 30 - ЭлектронныйАдресКому - 4 - - <key>ru</key> - <value>Кому</value> - + УчетнаяЗапись + 76 true true true - ПочтовыйАдресПолучателя + УчетнаяЗапись - - ru - Адреса электронной почты получателей сообщения - + + OnChange + УстановитьПризнакМодифицированностиФормы + - ЭлектронныйАдресКомуExtendedTooltip - 52 + УчетнаяЗаписьРасширеннаяПодсказка + 78 Label true true @@ -33,30 +29,357 @@ - ЭлектронныйАдресКомуКонтекстноеМеню - 5 + УчетнаяЗаписьКонтекстноеМеню + 77 true InputField - true Enter true Left true - StartChoice - ЭлектронныйАдресКомуНачалоВыбора + ChoiceProcessing + УчетнаяЗаписьОбработкаВыбора true true - true + true true true true + + Отбор.ИспользоватьДляОтправки + + + true + + + + + Отбор.ПометкаУдаления + + + + Normal + true + true + + true + + + <key>ru</key> + <value>Учетная запись</value> + + + ГруппаУчетнаяЗаписьExtendedTooltip + 64 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + + + ОсновнаяГруппаТелаПисьма + 10 + + ПочтовыйАдресаПолучателей + 83 + true + true + + true + + + ПочтовыйАдресаПолучателей + + None + + ПочтовыйАдресаПолучателейВариантОтправки + 96 + true + true + + true + + + ПочтовыйАдресаПолучателей.ВариантОтправки + + + ПочтовыйАдресаПолучателейВариантОтправкиРасширеннаяПодсказка + 98 + Label + true + true + + Left + + + + ПочтовыйАдресаПолучателейВариантОтправкиКонтекстноеМеню + 97 + true + + InputField + Auto + true + Left + true + + 2 + true + true + true + true + true + true + + + ru + Кому: + + + Кому: + + + + + ru + Копия: + + + Копия: + + + + + ru + Скрытая копия: + + + Скрытая копия: + + + Normal + + + + ПочтовыйАдресаПолучателейПредставление + 104 + true + true + + true + + + ПочтовыйАдресаПолучателей.Представление + + + OnChange + ПочтовыйАдресаПолучателейПредставлениеПриИзменении + + + ПочтовыйАдресаПолучателейПредставлениеРасширеннаяПодсказка + 106 + Label + true + true + + Left + + + + ПочтовыйАдресаПолучателейПредставлениеКонтекстноеМеню + 105 + true + + InputField + Auto + true + Left + true + + true + true + true + true + true + true + Normal + + + + ПочтовыйАдресаПолучателейАдресат + 99 + true + + true + + + ПочтовыйАдресаПолучателей.Адресат + + + ПочтовыйАдресаПолучателейАдресатРасширеннаяПодсказка + 101 + Label + true + true + + Left + + + + ПочтовыйАдресаПолучателейАдресатКонтекстноеМеню + 100 + true + + InputField + Auto + true + Left + true + + true + true + true + true + true + true + Normal + + + + ПочтовыйАдресаПолучателейКоманднаяПанель + 85 + Left + + + AfterDeleteRow + ПочтовыйАдресаПолучателейПослеУдаления + + + ПочтовыйАдресаПолучателейСтрокаПоиска + 87 + + ПочтовыйАдресаПолучателейСтрокаПоискаРасширеннаяПодсказка + 89 + Label + true + true + + Left + + + + ПочтовыйАдресаПолучателейСтрокаПоискаКонтекстноеМеню + 88 + true + + ПочтовыйАдресаПолучателей + + true + + + + ПочтовыйАдресаПолучателейСостояниеПросмотра + 90 + + ПочтовыйАдресаПолучателейСостояниеПросмотраРасширеннаяПодсказка + 92 + Label + true + true + + Left + + + + ПочтовыйАдресаПолучателейСостояниеПросмотраКонтекстноеМеню + 91 + true + + ViewStatusAddition + ПочтовыйАдресаПолучателей + + true + + + + ПочтовыйАдресаПолучателейУправлениеПоиском + 93 + + ПочтовыйАдресаПолучателейУправлениеПоискомРасширеннаяПодсказка + 95 + Label + true + true + + Left + + + + ПочтовыйАдресаПолучателейУправлениеПоискомКонтекстноеМеню + 94 + true + + SearchControlAddition + ПочтовыйАдресаПолучателей + + true + + + + ПочтовыйАдресаПолучателейРасширеннаяПодсказка + 86 + Label + true + true + + Left + + + + ПочтовыйАдресаПолучателейКонтекстноеМеню + 84 + true + + true + true + true + true + 3 + true + MultiRow + 1 + 1 + AutoUse + AutoUse + true + true + false + Auto + Auto + true + true + true + + ТемаПисьма 11 @@ -72,6 +395,10 @@ ru Тема отправляемого сообщения + + OnChange + УстановитьПризнакМодифицированностиФормы + ТемаПисьмаExtendedTooltip 53 @@ -93,6 +420,7 @@ Left true + 60 true true true @@ -149,6 +477,10 @@ ru Тело сообщения + + OnChange + УстановитьПризнакМодифицированностиФормы + ТелоПисьмаExtendedTooltip 54 @@ -334,6 +666,10 @@ Drag ВложенияПеретаскивание + + OnChange + УстановитьПризнакМодифицированностиФормы + ВложенияСтрокаПоиска 67 @@ -530,7 +866,6 @@ true true - 1 true true 2 @@ -589,10 +924,6 @@ true - - ru - Основная группа тела письма - ОсновнаяГруппаТелаПисьмаExtendedTooltip 51 @@ -608,145 +939,32 @@ Vertical Auto true - true Auto Auto - - ГруппаУчетнаяЗапись - 30 - - УчетнаяЗапись - 76 - true - true - - true - - - УчетнаяЗапись - - - УчетнаяЗаписьРасширеннаяПодсказка - 78 - Label - true - true - - Left - - - - УчетнаяЗаписьКонтекстноеМеню - 77 - true - - InputField - Enter - true - Left - true - - - ChoiceProcessing - УчетнаяЗаписьОбработкаВыбора - - true - true - true - true - true - true - - Отбор.ИспользоватьДляОтправки - - - true - - - - - Отбор.ПометкаУдаления - - - - - Normal - - - - АдресОтвета - 47 - true - true - - true - - - АдресОтвета - - - ru - Введите адрес электронной почты на который вы хотите получить ответ на это письмо - - - АдресОтветаExtendedTooltip - 66 - Label - true - true - - Left - - - - АдресОтветаКонтекстноеМеню - 48 - true - - InputField - Enter - true - Left - true - - - Clearing - АдресОтветаОчистка - - - TextEditEnd - АдресОтветаОкончаниеВводаТекста - - - ChoiceProcessing - АдресОтветаОбработкаВыбора - - true - true - true - true - true - Normal - - + + АдресОтвета + 47 true true true - - <key>ru</key> - <value>Учетная запись</value> - + + АдресОтвета + ru - Группа учетная запись + Введите адрес электронной почты на который вы хотите получить ответ на это письмо + + OnChange + УстановитьПризнакМодифицированностиФормы + - ГруппаУчетнаяЗаписьExtendedTooltip - 64 + АдресОтветаExtendedTooltip + 66 Label true true @@ -754,14 +972,35 @@ Left - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto + + АдресОтветаКонтекстноеМеню + 48 + true + + InputField + Enter + true + Left + true + + + Clearing + АдресОтветаОчистка + + + TextEditEnd + АдресОтветаОкончаниеВводаТекста + + + ChoiceProcessing + АдресОтветаОбработкаВыбора + + true + true + true + true + true + Normal Top @@ -796,6 +1035,32 @@ UserCmds Auto + + ФормаЗаполнитьПоШаблону + 102 + true + true + + true + + + ФормаЗаполнитьПоШаблонуРасширеннаяПодсказка + 103 + Label + true + true + + Left + + + Form.Command.СформироватьПоШаблону + Normal + Auto + true + true + UserCmds + Auto + Справка 27 @@ -823,6 +1088,33 @@ UserCmds Auto + + ФормаСохранитьКакШаблон + 81 + true + true + + true + + + ФормаСохранитьКакШаблонРасширеннаяПодсказка + 82 + Label + true + true + + Left + + + Form.Command.СохранитьКакШаблон + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + Left true @@ -834,11 +1126,14 @@ OnOpen ПриОткрытии + + BeforeClose + ПередЗакрытием + OnCreateAtServer ПриСозданииНаСервере - 60 DontBlock true true @@ -923,7 +1218,7 @@ УчетнаяЗапись <key>ru</key> - <value>Учетная запись</value> + <value>От</value> 6 @@ -940,7 +1235,7 @@ АдресОтвета <key>ru</key> - <value>Адрес ответа</value> + <value>Обратный адрес</value> 7 @@ -1203,6 +1498,94 @@ true + + ТребуетсяПодтверждениеЗакрытияФормы + + <key>ru</key> + <value>Требуется подтверждение закрытия формы</value> + + 15 + + Boolean + + + true + + + true + + + + ПочтовыйАдресаПолучателей + + <key>ru</key> + <value>Почтовый адреса получателей</value> + + 16 + + ValueTable + + + true + + + true + + + ВариантОтправки + + <key>ru</key> + <value>Вариант отправки</value> + + 1 + + String + + + + true + + + true + + + + Адресат + + <key>ru</key> + <value>Адресат</value> + + 2 + + String + + + + true + + + true + + + + Представление + + <key>ru</key> + <value>Представление</value> + + 3 + + String + + + + true + + + true + + + ОтправитьПисьмо @@ -1276,6 +1659,50 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> + <formCommands> + <name>СохранитьКакШаблон</name> + <title> + <key>ru</key> + <value>Сохранить как шаблон...</value> + + 4 + + ru + Сохранить как шаблон + + + true + + + + СохранитьКакШаблон + + + DontUse + Auto + + + СформироватьПоШаблону + + <key>ru</key> + <value>Сформировать по шаблону</value> + + 5 + + ru + Сформировать по шаблону + + + true + + + + ЗаполнитьПоШаблону + + + DontUse + Auto + УчетнаяЗапись diff --git a/SSL/src/CommonForms/ОтправкаСообщения/Module.bsl b/SSL/src/CommonForms/ОтправкаСообщения/Module.bsl index 94de84f2c..ef7ed670c 100644 --- a/SSL/src/CommonForms/ОтправкаСообщения/Module.bsl +++ b/SSL/src/CommonForms/ОтправкаСообщения/Module.bsl @@ -23,14 +23,12 @@ Возврат; КонецЕсли; - ТемаПисьма = Параметры.Тема; - ТелоПисьма.УстановитьHTML(ТекстВHTML(Параметры.Тело), Новый Структура); - АдресОтвета = Параметры.АдресОтвета; + ВложенияДляПисьма = Новый Структура; Если ТипЗнч(Параметры.Вложения) = Тип("СписокЗначений") Или ТипЗнч(Параметры.Вложения) = Тип("Массив") Тогда Для Каждого Вложение Из Параметры.Вложения Цикл - ОписаниеВложения = Вложения.Добавить(); Если ТипЗнч(Параметры.Вложения) = Тип("СписокЗначений") Тогда + ОписаниеВложения = Вложения.Добавить(); ОписаниеВложения.Представление = Вложение.Представление; Если ТипЗнч(Вложение.Значение) = Тип("ДвоичныеДанные") Тогда ОписаниеВложения.АдресВоВременномХранилище = ПоместитьВоВременноеХранилище(Вложение.Значение, УникальныйИдентификатор); @@ -42,15 +40,15 @@ КонецЕсли; КонецЕсли; Иначе // ТипЗнч(Параметры.Вложения) = "массив структур" - ЗаполнитьЗначенияСвойств(ОписаниеВложения, Вложение); - Если Не ПустаяСтрока(ОписаниеВложения.АдресВоВременномХранилище) Тогда - ОписаниеВложения.АдресВоВременномХранилище = ПоместитьВоВременноеХранилище( - ПолучитьИзВременногоХранилища(ОписаниеВложения.АдресВоВременномХранилище), УникальныйИдентификатор); - КонецЕсли; + ОпределитьНазначениеВложенияПисьма(Вложение, ВложенияДляПисьма); КонецЕсли; КонецЦикла; КонецЕсли; + ТемаПисьма = Параметры.Тема; + ТелоПисьма.УстановитьHTML(ТекстВHTML(Параметры.Тело), ВложенияДляПисьма); + АдресОтвета = Параметры.АдресОтвета; + // Обработка сложных параметров формы (составного типа). // УчетнаяЗапись, Кому. @@ -95,26 +93,27 @@ КонецЕсли; Если ТипЗнч(Параметры.Кому) = Тип("СписокЗначений") Тогда - ПочтовыйАдресПолучателя = ""; + Для Каждого ЭлементПочтовыйАдрес Из Параметры.Кому Цикл + НовыйПолучатель = ПочтовыйАдресаПолучателей.Добавить(); + НовыйПолучатель.ВариантОтправки = "Кому:"; + НовыйПолучатель.Адресат = ЭлементПочтовыйАдрес.Значение; Если ЗначениеЗаполнено(ЭлементПочтовыйАдрес.Представление) Тогда - ПочтовыйАдресПолучателя = ПочтовыйАдресПолучателя - + ЭлементПочтовыйАдрес.Представление + НовыйПолучатель.Представление = ЭлементПочтовыйАдрес.Представление + " <" + ЭлементПочтовыйАдрес.Значение - + ">; " + + ">" Иначе - ПочтовыйАдресПолучателя = ПочтовыйАдресПолучателя - + ЭлементПочтовыйАдрес.Значение - + "; "; + НовыйПолучатель.Представление = ЭлементПочтовыйАдрес.Значение; КонецЕсли; КонецЦикла; + ИначеЕсли ТипЗнч(Параметры.Кому) = Тип("Строка") Тогда - ПочтовыйАдресПолучателя = Параметры.Кому; + НовыйПолучатель = ПочтовыйАдресаПолучателей.Добавить(); + НовыйПолучатель.ВариантОтправки = "Кому:"; + НовыйПолучатель.Адресат = Параметры.Кому; + НовыйПолучатель.Представление = Параметры.Кому; ИначеЕсли ТипЗнч(Параметры.Кому) = Тип("Массив") Тогда - Если Параметры.Кому.Количество() > 1 Тогда - Элементы.ЭлектронныйАдресКому.КнопкаВыбора = Истина; - КонецЕсли; Для Каждого СтруктураПолучателя Из Параметры.Кому Цикл ЕстьСвойствоВыбран = СтруктураПолучателя.Свойство("Выбран"); МассивАдресов = СтрРазделить(СтруктураПолучателя.Адрес, ";"); @@ -123,7 +122,10 @@ Продолжить; КонецЕсли; Если (ЕстьСвойствоВыбран И СтруктураПолучателя.Выбран) ИЛИ (НЕ ЕстьСвойствоВыбран) Тогда - ПочтовыйАдресПолучателя = ПочтовыйАдресПолучателя + СтруктураПолучателя.Представление + " <" + СокрЛП(Адрес) + ">; "; + НовыйПолучатель = ПочтовыйАдресаПолучателей.Добавить(); + НовыйПолучатель.ВариантОтправки = "Кому:"; + НовыйПолучатель.Адресат = Адрес; + НовыйПолучатель.Представление = СтруктураПолучателя.Представление + " <" + СокрЛП(Адрес) + ">; "; КонецЕсли; КонецЦикла; КонецЦикла; @@ -135,6 +137,13 @@ ПолучателиСообщения = ПоместитьВоВременноеХранилище(Новый Массив, УникальныйИдентификатор); КонецЕсли; + Если ПочтовыйАдресаПолучателей.Количество() = 0 Тогда + НоваяСтрока = ПочтовыйАдресаПолучателей.Добавить(); + НоваяСтрока.ВариантОтправки = "Кому:"; + НоваяСтрока.Адресат = ""; + НоваяСтрока.Представление = ""; + КонецЕсли; + // Получаем список адресов, которые пользователь использовал ранее. СписокАдресовОтвета = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить( "РедактированиеНовогоПисьма", @@ -163,6 +172,11 @@ АвтоматическаяПодстановкаАдресаОтвета = Истина; КонецЕсли; + Если НЕ ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ШаблоныСообщений") Тогда + Элементы.ФормаСохранитьКакШаблон.Видимость = Ложь; + Элементы.ФормаЗаполнитьПоШаблону.Видимость = Ложь; + КонецЕсли; + КонецПроцедуры &НаКлиенте @@ -182,6 +196,20 @@ КонецПроцедуры +&НаКлиенте +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) + Если Не ТребуетсяПодтверждениеЗакрытияФормы Тогда + Возврат; + КонецЕсли; + + Отказ = Истина; + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + + ПодключитьОбработчикОжидания("ПоказатьВопросПередЗакрытиемФормы", 0.1, Истина); +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы @@ -191,6 +219,10 @@ &НаКлиенте Процедура УчетнаяЗаписьОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) + Если ПустаяСтрока(АдресОтвета) Тогда + АвтоматическаяПодстановкаАдресаОтвета = Истина; + КонецЕсли; + Если АвтоматическаяПодстановкаАдресаОтвета Тогда Если АдресаОтветаПоУчетнымЗаписям.НайтиПоЗначению(ВыбранноеЗначение) <> Неопределено Тогда АдресОтвета = АдресаОтветаПоУчетнымЗаписям.НайтиПоЗначению(ВыбранноеЗначение).Представление; @@ -202,15 +234,27 @@ КонецПроцедуры &НаКлиенте -Процедура ЭлектронныйАдресКомуНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) - - СтандартнаяОбработка = Ложь; - - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("ПолучателиСообщения", ПолучателиСообщения); - ПараметрыФормы.Вставить("ПочтовыйАдресПолучателя", Элемент.ТекстРедактирования); - ОткрытьФорму("ОбщаяФорма.ВыборПолучателейСообщения", ПараметрыФормы, ЭтотОбъект); - +Процедура УстановитьПризнакМодифицированностиФормы(Элемент) + ТребуетсяПодтверждениеЗакрытияФормы = Истина; +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовТаблицыФормыПочтовыйАдресаПолучателей + +&НаКлиенте +Процедура ПочтовыйАдресаПолучателейПослеУдаления(Элемент) + Если ПочтовыйАдресаПолучателей.Количество() = 0 Тогда + НовыйПолучатель = ПочтовыйАдресаПолучателей.Добавить(); + НовыйПолучатель.ВариантОтправки = "Кому:"; + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ПочтовыйАдресаПолучателейПредставлениеПриИзменении(Элемент) + Если Элементы.ПочтовыйАдресаПолучателей.ТекущиеДанные <> Неопределено Тогда + Элементы.ПочтовыйАдресаПолучателей.ТекущиеДанные.Адресат = Элементы.ПочтовыйАдресаПолучателей.ТекущиеДанные.Представление; + КонецЕсли; КонецПроцедуры #КонецОбласти @@ -270,33 +314,11 @@ &НаКлиенте Процедура АдресОтветаОкончаниеВводаТекста(Элемент, Текст, ДанныеВыбора, СтандартнаяОбработка) - Если АвтоматическаяПодстановкаАдресаОтвета Тогда - Если Не ЗначениеЗаполнено(АдресОтвета) - ИЛИ Не ЗначениеЗаполнено(Текст) Тогда - АвтоматическаяПодстановкаАдресаОтвета = Ложь; - Иначе - АдресСоответствие1 = ОбщегоНазначенияКлиентСервер.РазобратьСтрокуСПочтовымиАдресами(АдресОтвета); - Попытка - АдресСоответствие2 = ОбщегоНазначенияКлиентСервер.РазобратьСтрокуСПочтовымиАдресами(Текст); - Исключение - СообщениеОбОшибке = КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СообщениеОбОшибке, , "АдресОтвета"); - СтандартнаяОбработка = Ложь; - Возврат; - КонецПопытки; - - Если НЕ EMAILАдресаОдинаковы(АдресСоответствие1, АдресСоответствие2) Тогда - АвтоматическаяПодстановкаАдресаОтвета = Ложь; - КонецЕсли; - КонецЕсли; - КонецЕсли; - + АвтоматическаяПодстановкаАдресаОтвета = Ложь; АдресОтвета = ПолучитьПриведенныйПочтовыйАдресВФормате(Текст); КонецПроцедуры -// Снимает флаг авто подстановки адреса ответа. -// &НаКлиенте Процедура АдресОтветаОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) @@ -335,14 +357,40 @@ ОчиститьСообщения(); - Если ОтправитьПочтовоеСообщение() Тогда + Если ПоляЗаполненыКорректно() И ОтправитьПочтовоеСообщение() Тогда СохранитьАдресОтвета(АдресОтвета); Состояние(НСтр("ru = 'Сообщение успешно отправлено'")); + ТребуетсяПодтверждениеЗакрытияФормы = Ложь; Закрыть(); КонецЕсли; КонецПроцедуры +&НаКлиенте +Функция ПоляЗаполненыКорректно() + Результат = Истина; + + Если ПочтовыйАдресаПолучателей.Количество() = 0 Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю( + НСтр("ru = 'Необходимо заполнить получателя письма'"), , "ПочтовыйАдресПолучателя"); + Результат = Ложь; + КонецЕсли; + Для каждого Получателей Из ПочтовыйАдресаПолучателей Цикл + Если ПустаяСтрока(Получателей.Адресат) Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю( + НСтр("ru = 'Необходимо заполнить получателя письма'"),, "ПочтовыйАдресаПолучателей[" + Формат(ПочтовыйАдресаПолучателей.Индекс(Получателей), "ЧГ=0") + "].Адресат"); + Результат = Ложь; + ИначеЕсли СтрНайти(Получателей.Адресат, "@") = 0 Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю( + НСтр("ru = 'Неверный адрес электронной почты'"),, "ПочтовыйАдресаПолучателей[" + Формат(ПочтовыйАдресаПолучателей.Индекс(Получателей), "ЧГ=0") + "].Адресат"); + Результат = Ложь; + КонецЕсли; + КонецЦикла; + + Возврат Результат; + +КонецФункции + &НаКлиенте Процедура ПриложитьФайлВыполнить() @@ -350,6 +398,21 @@ КонецПроцедуры +// СтандартныеПодсистемы.ШаблоныСообщений + +&НаКлиенте +Процедура ЗаполнитьПоШаблону(Команда) + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ШаблоныСообщений") Тогда + МодульШаблоныСообщенийКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ШаблоныСообщенийКлиент"); + Оповещение = Новый ОписаниеОповещения("ЗаполнитьПоШаблонуПослеВыбораШаблона", ЭтотОбъект); + МодульШаблоныСообщенийКлиент.ВыбратьШаблон(Оповещение); + КонецЕсли + +КонецПроцедуры + +// Конец СтандартныеПодсистемы.ШаблоныСообщений + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -468,6 +531,7 @@ КонецЕсли; ДобавитьФайлыВСписок(ПомещенныеФайлы); ОбновитьПредставлениеВложений(); + ТребуетсяПодтверждениеЗакрытияФормы = Истина; КонецПроцедуры &НаСервере @@ -511,24 +575,28 @@ Функция СформироватьПараметрыПисьма() ПараметрыПисьма = Новый Структура; - - СписокПолучателей = ОбщегоНазначенияКлиентСервер.АдресаЭлектроннойПочтыИзСтроки(ПочтовыйАдресПолучателя); Кому = Новый Массив; - Для Каждого Получатель Из СписокПолучателей Цикл - Если Не ПустаяСтрока(Получатель.ОписаниеОшибки) Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - Получатель.ОписаниеОшибки, , "ПочтовыйАдресПолучателя"); - Возврат Неопределено; + Копии = Новый Массив; + СкрытыеКопии = Новый Массив; + + Для каждого Получатель Из ПочтовыйАдресаПолучателей Цикл + Если Получатель.ВариантОтправки = НСтр("ru = 'Скрытая копия:'") Тогда + СкрытыеКопии.Добавить(Новый Структура("Адрес, Представление", Получатель.Адресат, Получатель.Представление)); + ИначеЕсли Получатель.ВариантОтправки = НСтр("ru = 'Копия:'") Тогда + Копии.Добавить(Новый Структура("Адрес, Представление", Получатель.Адресат, Получатель.Представление)); + Иначе + Кому.Добавить(Новый Структура("Адрес, Представление", Получатель.Адресат, Получатель.Представление)); КонецЕсли; - Кому.Добавить(Новый Структура("Адрес, Представление", Получатель.Адрес, Получатель.Псевдоним)); КонецЦикла; - - Если ЗначениеЗаполнено(Кому) Тогда + + Если Кому.Количество() > 0 Тогда ПараметрыПисьма.Вставить("Кому", Кому); - Иначе - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - НСтр("ru = 'Необходимо заполнить получателя письма'"), , "ПочтовыйАдресПолучателя"); - Возврат Неопределено; + КонецЕсли; + Если Копии.Количество() > 0 Тогда + ПараметрыПисьма.Вставить("Копии", Копии); + КонецЕсли; + Если СкрытыеКопии.Количество() > 0 Тогда + ПараметрыПисьма.Вставить("СлепыеКопии", СкрытыеКопии); КонецЕсли; СписокПолучателей = ОбщегоНазначенияКлиентСервер.АдресаЭлектроннойПочтыИзСтроки(АдресОтвета); @@ -663,6 +731,23 @@ КонецФункции +&НаСервере +Процедура ОпределитьНазначениеВложенияПисьма(Вложение, ВложенияДляПисьма) + + Если Вложение.Свойство("Идентификатор") И ЗначениеЗаполнено(Вложение.Идентификатор) Тогда + КартинкаВложение = Новый Картинка(ПолучитьИзВременногоХранилища(Вложение.АдресВоВременномХранилище)); + ВложенияДляПисьма.Вставить(Вложение.Представление, КартинкаВложение); + Иначе + ОписаниеВложения = Вложения.Добавить(); + ЗаполнитьЗначенияСвойств(ОписаниеВложения, Вложение); + Если Не ПустаяСтрока(ОписаниеВложения.АдресВоВременномХранилище) Тогда + ОписаниеВложения.АдресВоВременномХранилище = ПоместитьВоВременноеХранилище( + ПолучитьИзВременногоХранилища(ОписаниеВложения.АдресВоВременномХранилище), УникальныйИдентификатор); + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + // Добавляет адрес ответа в список сохраняемых значений. // &НаСервереБезКонтекста @@ -706,59 +791,57 @@ КонецФункции -// Сравнивает два e-mail адреса. -// Параметры: -// АдресСоответствие1 - строка - первый e-mail адрес. -// АдресСоответствие2 - строка - второй e-mail адрес. -// Возвращаемое значение -// Истина, или Ложь в зависимости от того одинаковы ли e-mail адреса. -// &НаКлиенте -Функция EMAILАдресаОдинаковы(АдресСоответствие1, АдресСоответствие2) +Функция ПолучитьПриведенныйПочтовыйАдресВФормате(Текст) + АдресаСтрокой = ""; + Адреса = ОбщегоНазначенияКлиентСервер.АдресаЭлектроннойПочтыИзСтроки(Текст); - Если АдресСоответствие1.Количество() <> 1 - Или АдресСоответствие2.Количество() <> 1 Тогда - Возврат Ложь; + Если Адреса.Количество() > 1 Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю( + НСтр("ru = 'Можно указывать только один адрес для ответа.'"), , "АдресОтвета"); + СтандартнаяОбработка = Ложь; + Возврат Текст; КонецЕсли; - Если АдресСоответствие1[0].Представление = АдресСоответствие2[0].Представление - И АдресСоответствие1[0].Адрес = АдресСоответствие2[0].Адрес Тогда - Возврат Истина; - Иначе - Возврат Ложь; - КонецЕсли; + Для Каждого ОписаниеАдреса Из Адреса Цикл + Если Не ПустаяСтрока(ОписаниеАдреса.ОписаниеОшибки) Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ОписаниеАдреса.ОписаниеОшибки, , "АдресОтвета"); + КонецЕсли; + + Если Не ПустаяСтрока(АдресаСтрокой) Тогда + АдресаСтрокой = АдресаСтрокой + "; "; + КонецЕсли; + АдресаСтрокой = АдресаСтрокой + АдресСтрокой(ОписаниеАдреса); + КонецЦикла; + Возврат АдресаСтрокой; КонецФункции &НаКлиенте -Функция ПолучитьПриведенныйПочтовыйАдресВФормате(Текст) - - ПочтовыйАдрес = ""; - - МассивАдресов = ОбщегоНазначенияКлиентСервер.РазобратьСтрокуСПочтовымиАдресами(Текст); - - Для Каждого ЭлементАдрес Из МассивАдресов Цикл - Если ЗначениеЗаполнено(ЭлементАдрес.Представление) Тогда - ПочтовыйАдрес = ПочтовыйАдрес + ЭлементАдрес.Представление - + ? (ПустаяСтрока(СокрЛП(ЭлементАдрес.Адрес)), "", " <" + ЭлементАдрес.Адрес + ">"); +Функция АдресСтрокой(ОписаниеАдреса) + Результат = ""; + Если ПустаяСтрока(ОписаниеАдреса.Псевдоним) Тогда + Результат = ОписаниеАдреса.Адрес; + Иначе + Если ПустаяСтрока(ОписаниеАдреса.Адрес) Тогда + Результат = ОписаниеАдреса.Псевдоним; Иначе - ПочтовыйАдрес = ПочтовыйАдрес + ЭлементАдрес.Адрес + "; "; + Результат = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + "%1 <%2>", ОписаниеАдреса.Псевдоним, ОписаниеАдреса.Адрес); КонецЕсли; - КонецЦикла; - - Возврат ПочтовыйАдрес; + КонецЕсли; + Возврат Результат; КонецФункции &НаКлиенте Процедура ВложенияПеретаскиваниеЗавершение(Результат, АдресВременногоХранилища, ВыбранноеИмяФайла, ДополнительныеПараметры) Экспорт - Файлы = Новый Массив; ПередаваемыйФайл = Новый ОписаниеПередаваемогоФайла(ДополнительныеПараметры.Имя, АдресВременногоХранилища); Файлы.Добавить(ПередаваемыйФайл); ДобавитьФайлыВСписок(Файлы); ОбновитьПредставлениеВложений(); - + ТребуетсяПодтверждениеЗакрытияФормы = Истина; КонецПроцедуры &НаКлиенте @@ -773,4 +856,81 @@ КонецПроцедуры +&НаКлиенте +Процедура ПоказатьВопросПередЗакрытиемФормы() + ТекстВопроса = НСтр("ru = 'Сообщение еще не отправлено. Закрыть форму?'"); + ОписаниеОповещения = Новый ОписаниеОповещения("ЗакрытиеФормыПодтверждено", ЭтотОбъект); + Кнопки = Новый СписокЗначений; + Кнопки.Добавить("Закрыть", НСтр("ru = 'Закрыть'")); + Кнопки.Добавить(КодВозвратаДиалога.Отмена, НСтр("ru = 'Не закрывать'")); + ПоказатьВопрос(ОписаниеОповещения, ТекстВопроса, Кнопки,, + КодВозвратаДиалога.Отмена, НСтр("ru = 'Отправка сообщения'")); +КонецПроцедуры + +&НаКлиенте +Процедура ЗакрытиеФормыПодтверждено(РезультатВопроса, ДополнительныеПараметры = Неопределено) Экспорт + + Если РезультатВопроса = КодВозвратаДиалога.Отмена Тогда + Возврат; + КонецЕсли; + + ТребуетсяПодтверждениеЗакрытияФормы = Ложь; + Закрыть(); + +КонецПроцедуры + +&НаКлиенте +Процедура СохранитьКакШаблон(Команда) + Шаблон = СоздатьШаблонСообщений(); + Если Шаблон <> Неопределено Тогда + ПоказатьЗначение(, Шаблон); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ЗаполнитьПоШаблонуПослеВыбораШаблона(Результат, ДополнительныеПараметры) Экспорт + Если Результат <> Неопределено Тогда + ТемаПисьма = Результат.Тема; + УстановитьТекстПисьмаИВложения(Результат.Текст, Результат.Вложения); + ОбновитьПредставлениеВложений(); + + Если ТипЗнч(Результат.Получатель) = Тип("СписокЗначений") Тогда + Для Каждого Получатель Из Результат.Получатель Цикл + АдресПолучателя = ПочтовыйАдресаПолучателей.Добавить(); + АдресПолучателя.ПочтовыйАдресаПолучателейАдресат = Получатель.Представление; + КонецЦикла; + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +&НаСервере +Процедура УстановитьТекстПисьмаИВложения(Текст, СтруктураВложений) + + ВложенияHTML = Новый Структура(); + Если ТипЗнч(СтруктураВложений) = Тип("Массив") Тогда + Для каждого Вложение Из СтруктураВложений Цикл + ОпределитьНазначениеВложенияПисьма(Вложение, ВложенияHTML); + КонецЦикла; + КонецЕсли; + + ТелоПисьма.УстановитьHTML(Текст, ВложенияHTML); + +КонецПроцедуры + +&НаСервере +Функция СоздатьШаблонСообщений() + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ШаблоныСообщений") Тогда + МодульШаблоныСообщений = ОбщегоНазначения.ОбщийМодуль("ШаблоныСообщений"); + ПараметровШаблона = МодульШаблоныСообщений.ОписаниеПараметровШаблона(); + ПараметровШаблона.Тема = ТемаПисьма; + ПараметровШаблона.Текст = ТелоПисьма.ПолучитьТекст(); + ПараметровШаблона.ТипШаблона = "Письмо"; + Возврат МодульШаблоныСообщений.СоздатьШаблон(ТемаПисьма, ПараметровШаблона); + КонецЕсли; + + Возврат Неопределено; +КонецФункции + + #КонецОбласти diff --git a/SSL/src/CommonForms/ОтправкаТабличныхДокументовПоПочте/Form.form b/SSL/src/CommonForms/ОтправкаТабличныхДокументовПоПочте/Form.form index b27bebecf..cbc96af5f 100644 --- a/SSL/src/CommonForms/ОтправкаТабличныхДокументовПоПочте/Form.form +++ b/SSL/src/CommonForms/ОтправкаТабличныхДокументовПоПочте/Form.form @@ -335,7 +335,6 @@ Retry SaveValues Yes - 38 LockOwner Use UseList diff --git a/SSL/src/CommonForms/ОтчетОСохраненииФайловЭлектронныхПодписей/Form.form b/SSL/src/CommonForms/ОтчетОСохраненииФайловЭлектронныхПодписей/Form.form index b01be26ea..63cbd86f4 100644 --- a/SSL/src/CommonForms/ОтчетОСохраненииФайловЭлектронныхПодписей/Form.form +++ b/SSL/src/CommonForms/ОтчетОСохраненииФайловЭлектронныхПодписей/Form.form @@ -39,7 +39,6 @@ true 70 - true 10 true true diff --git a/SSL/src/CommonForms/ПанельОтчетов/Form.form b/SSL/src/CommonForms/ПанельОтчетов/Form.form index e850ec4e6..5dc7c131e 100644 --- a/SSL/src/CommonForms/ПанельОтчетов/Form.form +++ b/SSL/src/CommonForms/ПанельОтчетов/Form.form @@ -2,10 +2,10 @@ ВерхняяПанельСтрока1 - 305 + 395 СтрокаПоиска - 252 + 397 true true @@ -24,7 +24,7 @@ СтрокаПоискаРасширеннаяПодсказка - 266 + 399 Label true true @@ -34,7 +34,7 @@ СтрокаПоискаКонтекстноеМеню - 253 + 398 true InputField @@ -47,12 +47,9 @@ TextEditEnd СтрокаПоискаОкончаниеВводаТекста - 30 - true + 30 1 true - false - false true true true @@ -64,7 +61,7 @@ ВыполнитьПоиск - 313 + 400 true true @@ -72,7 +69,7 @@ ВыполнитьПоискРасширеннаяПодсказка - 314 + 401 Label true true @@ -91,7 +88,7 @@ ИскатьВоВсехРазделах - 342 + 402 true true @@ -107,7 +104,7 @@ ИскатьВоВсехРазделахРасширеннаяПодсказка - 344 + 404 Label true true @@ -117,76 +114,7 @@ ИскатьВоВсехРазделахКонтекстноеМеню - 343 - true - - CheckBoxField - Enter - true - Left - true - - - - Декорация1 - 386 - true - true - - true - - - Декорация1РасширеннаяПодсказка - 388 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 387 - true - - Label - true - true - true - false - - Left - - - - ПоказыватьПодсказки - 357 - true - - true - - - ПоказыватьПодсказки - - Right - - OnChange - ПоказыватьПодсказкиПриИзменении - - - ПоказыватьПодсказкиРасширеннаяПодсказка - 359 - Label - true - true - - Left - - - - ПоказыватьПодсказкиКонтекстноеМеню - 358 + 403 true CheckBoxField @@ -197,19 +125,26 @@ - КоманднаяПанель - 307 - - Настроить - 231 - true + Группа1 + 405 + + ПоказыватьПодсказки + 407 true true + + ПоказыватьПодсказки + + Right + + OnChange + ПоказыватьПодсказкиПриИзменении + - НастроитьExtendedTooltip - 269 + ПоказыватьПодсказкиРасширеннаяПодсказка + 409 Label true true @@ -217,84 +152,33 @@ Left - Form.Command.Настроить - Normal - Auto - 12 - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - ФормаОбновить - 263 - true - true - - true - - - ФормаОбновитьExtendedTooltip - 272 - Label - true - true - - Left - - - Form.Command.Обновить - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - - ФормаВсеОтчеты - 360 - true - true - - true - - - ФормаВсеОтчетыРасширеннаяПодсказка - 361 - Label - true - true - - Left - - - Form.Command.ВсеОтчеты - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu + + ПоказыватьПодсказкиКонтекстноеМеню + 408 + true + + CheckBoxField + Center + Enter + true + Left + true + - Настройки - 309 + КоманднаяПанель + 410 - СброситьМоиНастройки - 239 + Настроить + 412 true true true - СброситьМоиНастройкиExtendedTooltip - 273 + НастроитьExtendedTooltip + 413 Label true true @@ -302,7 +186,35 @@ Left - Form.Command.СброситьМоиНастройки + Form.Command.Настроить + Normal + Auto + 12 + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + ФормаОбновить + 414 + true + true + + true + + + ФормаОбновитьExtendedTooltip + 415 + Label + true + true + + Left + + + Form.Command.Обновить Normal Auto true @@ -311,22 +223,152 @@ Auto InAdditionalSubmenu + + ФормаВсеОтчеты + 416 + true + true + + true + + + ФормаВсеОтчетыРасширеннаяПодсказка + 417 + Label + true + true + + Left + + + Form.Command.ВсеОтчеты + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + Настройки + 418 + + СброситьМоиНастройки + 420 + true + true + + true + + + СброситьМоиНастройкиExtendedTooltip + 421 + Label + true + true + + Left + + + Form.Command.СброситьМоиНастройки + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + true + true + + true + + + <key>ru</key> + <value>Настройки</value> + + + ru + Настройки + + + НастройкиРасширеннаяПодсказка + 419 + Label + true + true + + Left + + + + + + ФормаИзменитьФорму + 422 + true + true + + true + + + ФормаИзменитьФормуExtendedTooltip + 423 + Label + true + true + + Left + + + Form.StandardCommand.CustomizeForm + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + Справка + 426 + true + true + + true + + + СправкаРасширеннаяПодсказка + 427 + Label + true + true + + Left + + + Form.StandardCommand.Help + Normal + Auto + true + true + UserCmds + Auto + true true true - - <key>ru</key> - <value>Настройки</value> - - - ru - Настройки - + 26 + 1 + false - НастройкиРасширеннаяПодсказка - 310 + КоманднаяПанельРасширеннаяПодсказка + 411 Label true true @@ -334,46 +376,20 @@ Left - - - - ФормаИзменитьФорму - 264 - true - true - - true - - - ФормаИзменитьФормуExtendedTooltip - 275 - Label - true - true - - Left - - - Form.StandardCommand.CustomizeForm - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu + CommandBar + + Right + true true true - 26 - 1 - false + true - КоманднаяПанельРасширеннаяПодсказка - 308 + Группа1РасширеннаяПодсказка + 406 Label true true @@ -381,10 +397,14 @@ Left - CommandBar - + UsualGroup + Right - Form + Auto + true + true + Auto + Auto true @@ -394,7 +414,7 @@ ВерхняяПанельСтрока1РасширеннаяПодсказка - 306 + 396 Label true true @@ -440,12 +460,8 @@ 378 true - 2 true - 1 true - false - false CommonPicture.БыстрыйДоступ @@ -488,11 +504,8 @@ true Label - true 1 true - false - false Style.ГруппаВариантовОтчетовЦвет @@ -557,9 +570,7 @@ true Label - true true - false true Style.ПоясняющийТекст @@ -684,9 +695,9 @@ UsualGroup + Vertical Auto true - true Equal Auto Auto @@ -719,10 +730,8 @@ true Label - true true true - false true Left @@ -751,7 +760,6 @@ Vertical Auto true - true Auto Auto @@ -842,7 +850,6 @@ Auto true - true Equal Auto Auto @@ -872,9 +879,7 @@ true Label - true true - false true Left @@ -966,7 +971,6 @@ Auto true - true Equal Auto Auto @@ -996,14 +1000,53 @@ true Label - true true - false true Left + + СмТакжеЗаголовок + 428 + + <key>ru</key> + <value>См. также</value> + + true + true + + true + + + СмТакжеЗаголовокРасширеннаяПодсказка + 430 + Label + true + true + + Left + + + + СмТакжеЗаголовокКонтекстноеМеню + 429 + true + + Label + true + true + + Style.ГруппаВариантовОтчетовЦвет + + + Style.NormalTextFont + 0.0 + + + Left + + СмТакже 198 @@ -1091,9 +1134,7 @@ Auto WeakSeparation true - true Equal - auto Auto Auto @@ -1122,9 +1163,7 @@ true Label - true true - false true Left @@ -1187,11 +1226,8 @@ true Label - true 2 true - false - false Style.FormTextColor @@ -1209,46 +1245,6 @@ Center - - РезультатыПоискаИзДругихРазделовДекорация - 347 - true - - true - - - РезультатыПоискаИзДругихРазделовДекорацияРасширеннаяПодсказка - 349 - Label - true - true - - Left - - - - РезультатыПоискаИзДругихРазделовДекорацияКонтекстноеМеню - 348 - true - - Label - true - true - true - - System.DefaultGUIFont - true - false - false - false - - - Left - - Style.ToolTipTextColor - - - РезультатыПоискаИзДругихРазделов 350 @@ -1402,7 +1398,6 @@ true Label - true true @@ -1452,10 +1447,6 @@ OnOpen ПриОткрытии - - BeforeClose - ПередЗакрытием - OnReopen ПриПовторномОткрытии @@ -1816,23 +1807,6 @@ true - - ИзмененПользователем - - <key>ru</key> - <value>Изменен пользователем</value> - - 14 - - Boolean - - - true - - - true - - ИмяОтчета @@ -2046,7 +2020,9 @@ <view> <common>true</common> </view> - <edit/> + <edit> + <common>true</common> + </edit> <columns> <name>Ссылка</name> <title> diff --git a/SSL/src/CommonForms/ПанельОтчетов/Module.bsl b/SSL/src/CommonForms/ПанельОтчетов/Module.bsl index a7ac33b93..7dc1377b9 100644 --- a/SSL/src/CommonForms/ПанельОтчетов/Module.bsl +++ b/SSL/src/CommonForms/ПанельОтчетов/Module.bsl @@ -5,9 +5,6 @@ Если Параметры.Свойство("АвтоТест") Тогда Возврат; КонецЕсли; - Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка) Тогда - Возврат; - КонецЕсли; Если Не ЗначениеЗаполнено(Параметры.ПутьКПодсистеме) Тогда Параметры.ПутьКПодсистеме = ВариантыОтчетовКлиентСервер.ИдентификаторНачальнойСтраницы(); @@ -136,13 +133,6 @@ КонецЕсли; КонецПроцедуры -&НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) - Если РежимНастройки Тогда - СохранитьПользовательскиеНастройки(); - КонецЕсли; -КонецПроцедуры - #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы @@ -409,7 +399,6 @@ &НаКлиенте Процедура ПоказатьСкрытьВариант(Вариант, Элемент, Показать) Вариант.Видимость = Показать; - Вариант.ИзмененПользователем = Истина; Элемент.ЦветТекста = ?(Показать, ЦветВидимыхВариантов, ЦветСкрытыхВариантов); ЭтотОбъект["Флажок_"+ Вариант.НадписьИмя] = Показать; Если Вариант.Важный Тогда @@ -419,6 +408,7 @@ Элемент.Шрифт = Новый Шрифт; КонецЕсли; КонецЕсли; + СохранитьПользовательскиеНастройки(Вариант.Ссылка, Вариант.Подсистема, Вариант.Видимость, Вариант.БыстрыйДоступ); КонецПроцедуры &НаКлиенте @@ -429,7 +419,6 @@ // Регистрация результата для записи. Вариант.БыстрыйДоступ = БыстрыйДоступ; - Вариант.ИзмененПользователем = Истина; // Связанное действие: если добавляемый в быстрый доступ вариант не видим - показываем его. Если БыстрыйДоступ И Не Вариант.Видимость Тогда @@ -475,7 +464,7 @@ Комментарий = ПараметрыКлиента.ПрефиксЗамеров; КонецЕсли; - Замер = Новый Структура("Имя, Идентификатор, МодульОценкаПроизводительностиКлиентСервер"); + Замер = Новый Структура("Имя, Идентификатор, МодульОценкаПроизводительностиКлиент"); Если Событие = "СписокОтчетов.Открытие" Или Событие = "ПанельОтчетов.Открытие" Тогда Замер.Имя = Событие; Комментарий = Комментарий + "; " + НСтр("ru = 'Из панели отчетов:'") + " " + ПараметрыКлиента.ПутьКПодсистеме; @@ -504,16 +493,16 @@ Если Событие = "ВыходИзРежимаНастройки" Тогда Комментарий = Комментарий + "; " + НСтр("ru = 'Выход из режима настройки'"); КонецЕсли; - Замер.Идентификатор = Новый УникальныйИдентификатор; - Замер.МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - Замер.МодульОценкаПроизводительностиКлиентСервер.НачатьРучнойЗамерВремени(Замер.Имя, Замер.Идентификатор, Комментарий); + Замер.МодульОценкаПроизводительностиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиент"); + Замер.Идентификатор = Замер.МодульОценкаПроизводительностиКлиент.НачатьЗамерВремени(Истина, Замер.Имя); + Замер.МодульОценкаПроизводительностиКлиент.УстановитьКомментарийЗамера(Замер.Идентификатор, Комментарий); Возврат Замер; КонецФункции &НаКлиенте Процедура ЗакончитьЗамер(Замер) Если Замер <> Неопределено Тогда - Замер.МодульОценкаПроизводительностиКлиентСервер.ЗакончитьРучнойЗамерВремени(Замер.Идентификатор); + Замер.МодульОценкаПроизводительностиКлиент.ЗавершитьЗамерВремени(Замер.Идентификатор); КонецЕсли; КонецПроцедуры @@ -573,11 +562,12 @@ НадписьКонтекстноеМеню = Элемент.КонтекстноеМеню; Если НадписьКонтекстноеМеню <> Неопределено Тогда КнопкаУбрать = Элементы.Найти("УбратьИзБыстрогоДоступа_" + Вариант.НадписьИмя); - КнопкаПереместить = Элементы.Найти("ПереместитьВБыстрыйДоступ_" + Вариант.НадписьИмя); КнопкаУбрать.Видимость = БыстрыйДоступ; + КнопкаПереместить = Элементы.Найти("ПереместитьВБыстрыйДоступ_" + Вариант.НадписьИмя); КнопкаПереместить.Видимость = Не БыстрыйДоступ; КонецЕсли; + СохранитьПользовательскиеНастройки(Вариант.Ссылка, Вариант.Подсистема, Вариант.Видимость, Вариант.БыстрыйДоступ); КонецПроцедуры &НаСервере @@ -650,9 +640,6 @@ КонецЦикла; КонецЕсли; - // Сохранение пользовательских настроек. - СохранитьПользовательскиеНастройки(); - // Сброс номера последнего добавленного элемента. Для Каждого СтрокаТаблицы Из ПодсистемыПрограммы Цикл СтрокаТаблицы.НомерЭлемента = 0; @@ -696,21 +683,18 @@ КонецЦикла; КонецПроцедуры -&НаСервере -Процедура СохранитьПользовательскиеНастройки() - Если ДобавленныеВарианты.Количество() = 0 Тогда - Возврат; - КонецЕсли; - Отбор = Новый Структура("ИзмененПользователем", Истина); - - ПакетНастроек = ДобавленныеВарианты.Выгрузить(Отбор, "Ссылка, Подсистема, Видимость, БыстрыйДоступ"); - Если ПакетНастроек.Количество() = 0 Тогда - Возврат; - КонецЕсли; - ПакетНастроек.Колонки.Ссылка.Имя = "Вариант"; - Измерения = Новый Структура("Пользователь", Пользователи.АвторизованныйПользователь()); - Ресурсы = Новый Структура; - РегистрыСведений.НастройкиВариантовОтчетов.ЗаписатьПакетНастроек(ПакетНастроек, Измерения, Ресурсы, Ложь); +&НаСервереБезКонтекста +Процедура СохранитьПользовательскиеНастройки(Вариант, Подсистема, Видимость, БыстрыйДоступ) + ПакетНастроек = Новый ТаблицаЗначений; + ПакетНастроек.Добавить(); + Измерения = Новый Структура; + Измерения.Вставить("Пользователь", Пользователи.АвторизованныйПользователь()); + Измерения.Вставить("Вариант", Вариант); + Измерения.Вставить("Подсистема", Подсистема); + Ресурсы = Новый Структура; + Ресурсы.Вставить("Видимость", Видимость); + Ресурсы.Вставить("БыстрыйДоступ", БыстрыйДоступ); + РегистрыСведений.НастройкиВариантовОтчетов.ЗаписатьПакетНастроек(ПакетНастроек, Измерения, Ресурсы, Истина); КонецПроцедуры &НаСервере @@ -919,14 +903,17 @@ // Шаблоны заполнения создаваемых элементов управления. ШаблонНадписиВарианта = Новый Структура( - "Вид, Гиперссылка, Высота, ЦветТекста, - |РастягиватьПоГоризонтали, РастягиватьПоВертикали"); + "Вид, Гиперссылка, ЦветТекста, + |РастягиватьПоВертикали, Высота, + |РастягиватьПоГоризонтали, АвтоМаксимальнаяШирина, МаксимальнаяШирина"); ШаблонНадписиВарианта.Вид = ВидДекорацииФормы.Надпись; ШаблонНадписиВарианта.Гиперссылка = Истина; - ШаблонНадписиВарианта.РастягиватьПоГоризонтали = Истина; + ШаблонНадписиВарианта.ЦветТекста = ЦветВидимыхВариантов; ШаблонНадписиВарианта.РастягиватьПоВертикали = Ложь; ШаблонНадписиВарианта.Высота = 1; - ШаблонНадписиВарианта.ЦветТекста = ЦветВидимыхВариантов; + ШаблонНадписиВарианта.РастягиватьПоГоризонтали = Истина; + ШаблонНадписиВарианта.АвтоМаксимальнаяШирина = Ложь; + ШаблонНадписиВарианта.МаксимальнаяШирина = 0; ПараметрыЗаполнения.Вставить("Шаблоны", Новый Структура); ПараметрыЗаполнения.Шаблоны.Вставить("ГруппаВарианта", ШаблонГруппыВарианта); @@ -1114,8 +1101,8 @@ | ПО втПредопределенные.Ссылка = втВарианты.Ссылка | И втПредопределенные.Подсистема = втВарианты.Подсистема |ГДЕ - | (втВарианты.Использование = ИСТИНА - | ИЛИ втВарианты.Использование ЕСТЬ NULL ) + | НЕ(НЕ втВарианты.Использование = ИСТИНА + | И НЕ втВарианты.Использование ЕСТЬ NULL ) |; | |//////////////////////////////////////////////////////////////////////////////// @@ -1321,9 +1308,10 @@ КонецЕсли; Элементы["БыстрыйДоступШапка"].Видимость = Ложь; Элементы["БыстрыйДоступПодвал"].Видимость = Ложь; - Элементы["БезГруппыПодвал"].Видимость = Ложь; - Элементы["СГруппойПодвал"].Видимость = Ложь; - Элементы["СмТакжеПодвал"].Видимость = Ложь; + Элементы["БезГруппыПодвал"].Видимость = Ложь; + Элементы["СГруппойПодвал"].Видимость = Ложь; + Элементы["СмТакжеЗаголовок"].Видимость = Ложь; + Элементы["СмТакжеПодвал"].Видимость = Ложь; Элементы.БыстрыйДоступПодсказкаКогдаНеНастроен.Видимость = Ложь; КонецЕсли; Возврат; @@ -1400,6 +1388,7 @@ Или ЕстьВариантыСмТакже))); Элементы[ПараметрыЗаполнения.Префикс + "БезГруппыПодвал"].Видимость = ЕстьВариантыБезГруппы; Элементы[ПараметрыЗаполнения.Префикс + "СГруппойПодвал"].Видимость = ЕстьВариантыСГруппой; + Элементы[ПараметрыЗаполнения.Префикс + "СмТакжеЗаголовок"].Видимость = ЕстьВариантыСмТакже; Элементы[ПараметрыЗаполнения.Префикс + "СмТакжеПодвал"].Видимость = ЕстьВариантыСмТакже; Если ПараметрыЗаполнения.ВыводятсяВариантыТекущегоРаздела Тогда @@ -1455,6 +1444,7 @@ ЗаголовокРаздела.Высота = 2; ЗаголовокРаздела.Гиперссылка = Истина; ЗаголовокРаздела.ВертикальноеПоложение = ВертикальноеПоложениеЭлемента.Верх; + ЗаголовокРаздела.РастягиватьПоГоризонтали = Истина; ЗаголовокРаздела.УстановитьДействие("Нажатие", "Подключаемый_ЗаголовокРазделаНажатие"); ГруппаРаздела.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Горизонтальная; @@ -1515,8 +1505,7 @@ ВыводБезГрупп = (ГруппаУровня2Имя = "БыстрыйДоступ" Или ГруппаУровня2Имя = "СмТакже"); - // Сортировка вариантов - // Есть группы и важные // ВерхнийУровень УБЫВ. + // Сортировка вариантов (есть группы и важные). Варианты.Сортировать("ПодсистемаПриоритет ВОЗР, Важный УБЫВ, Наименование ВОЗР"); НайденныеРодители = Варианты.НайтиСтроки(Новый Структура("ВерхнийУровень", Истина)); Для Каждого ВариантРодитель Из НайденныеРодители Цикл @@ -2072,6 +2061,7 @@ И ПараметрыЗаполнения.ИмяГруппы <> "БыстрыйДоступ" Тогда Надпись.Шрифт = ШрифтВажнойНадписи; КонецЕсли; + Надпись.АвтоМаксимальнаяШирина = Ложь; СоставПодсказки = Новый Массив; ОпределитьСоставПодсказкиВарианта(ПараметрыЗаполнения, Вариант, СоставПодсказки, Надпись); @@ -2174,12 +2164,16 @@ Возврат; КонецЕсли; - ФорматированнаяСтрока = Новый ФорматированнаяСтрока(СоставПодсказки); - Надпись.ОтображениеПодсказки = ОтображениеПодсказки.ОтображатьСнизу; - Надпись.РасширеннаяПодсказка.Заголовок = ФорматированнаяСтрока; - Надпись.РасширеннаяПодсказка.РастягиватьПоГоризонтали = Истина; - Надпись.РасширеннаяПодсказка.ЦветТекста = ЦветПодсказки; + + Подсказка = Надпись.РасширеннаяПодсказка; + Подсказка.Заголовок = Новый ФорматированнаяСтрока(СоставПодсказки); + Подсказка.ЦветТекста = ЦветПодсказки; + Подсказка.АвтоМаксимальнаяВысота = Ложь; + Подсказка.МаксимальнаяВысота = 3; + Подсказка.РастягиватьПоГоризонтали = Истина; + Подсказка.АвтоМаксимальнаяШирина = Ложь; + Подсказка.МаксимальнаяШирина = 0; КонецПроцедуры &НаСервере @@ -2191,12 +2185,20 @@ КонецЕсли; ИсходныйТекст = ОбластьПоиска.Значение; + ТекстСокращен = Ложь; + ДлинаТекста = СтрДлина(ИсходныйТекст); + Если ДлинаТекста > 150 Тогда + ТекстСокращен = СократитьТекст(ИсходныйТекст, ДлинаТекста, 150); + КонецЕсли; ОбластьПоиска.ПодсветкаСлов.СортироватьПоЗначению(НаправлениеСортировки.Возр); КоличествоОткрыто = 0; ПозицияНачалаОбычногоТекста = 1; ПозицияНачалаПодсветки = 0; Для Каждого ЭлементСписка Из ОбластьПоиска.ПодсветкаСлов Цикл + Если ТекстСокращен И ЭлементСписка.Значение > ДлинаТекста Тогда + ЭлементСписка.Значение = ДлинаТекста; // Корректировка подсветки если текст был сокращен. + КонецЕсли; Подсвечивать = (ЭлементСписка.Представление = "+"); КоличествоОткрыто = КоличествоОткрыто + ?(Подсвечивать, 1, -1); Если Подсвечивать И КоличествоОткрыто = 1 Тогда @@ -2209,7 +2211,7 @@ Содержимое.Добавить(Новый ФорматированнаяСтрока(ПодсвечиваемыйФрагмент, , , ЦветПодсветкиНайденныхСлов)); КонецЕсли; КонецЦикла; - Если ПозицияНачалаОбычногоТекста <= СтрДлина(ИсходныйТекст) Тогда + Если ПозицияНачалаОбычногоТекста <= ДлинаТекста Тогда ФрагментОбычногоТекста = Сред(ИсходныйТекст, ПозицияНачалаОбычногоТекста); Содержимое.Добавить(ФрагментОбычногоТекста); КонецЕсли; @@ -2221,6 +2223,28 @@ КонецЕсли; КонецФункции +&НаСервере +Функция СократитьТекст(Текст, ТекущаяДлина, ЦелеваяДлина) + ПозицияПС = СтрНайти(Текст, Символы.ПС, НаправлениеПоиска.СКонца, ЦелеваяДлина); + ПозицияТочки = СтрНайти(Текст, ".", НаправлениеПоиска.СКонца, ЦелеваяДлина); + ПозицияЗапятой = СтрНайти(Текст, ",", НаправлениеПоиска.СКонца, ЦелеваяДлина); + ПозицияТочкиСЗапятой = СтрНайти(Текст, ",", НаправлениеПоиска.СКонца, ЦелеваяДлина); + Позиция = Макс(ПозицияПС, ПозицияТочки, ПозицияЗапятой, ПозицияТочкиСЗапятой); + Если Позиция = 0 Тогда + ПозицияПС = СтрНайти(Текст, Символы.ПС, НаправлениеПоиска.СНачала, ЦелеваяДлина); + ПозицияТочки = СтрНайти(Текст, ".", НаправлениеПоиска.СНачала, ЦелеваяДлина); + ПозицияЗапятой = СтрНайти(Текст, ",", НаправлениеПоиска.СНачала, ЦелеваяДлина); + ПозицияТочкиСЗапятой = СтрНайти(Текст, ",", НаправлениеПоиска.СНачала, ЦелеваяДлина); + Позиция = Мин(ПозицияПС, ПозицияТочки, ПозицияЗапятой, ПозицияТочкиСЗапятой); + КонецЕсли; + Если Позиция = 0 Или Позиция = ТекущаяДлина Тогда + Возврат Ложь; + КонецЕсли; + Текст = Лев(Текст, Позиция) + " ..."; + ТекущаяДлина = Позиция; + Возврат Истина; +КонецФункции + &НаСервере Функция ДобавитьПустуюДекорацию(ПараметрыЗаполнения, ВГруппу) @@ -2238,7 +2262,10 @@ &НаКлиенте Процедура ОписаниеМобильногоПриложенияНажатие(Элемент) - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ЭтотОбъект, ПараметрыКлиента.ОписаниеМобильногоПриложения); + + ПараметрыФормы = ПараметрыКлиента.ОписаниеМобильногоПриложения; + ОткрытьФорму(ПараметрыФормы.ИмяФормы, ПараметрыФормы.ПараметрыФормы, ЭтотОбъект); + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/CommonForms/ПараметрыАдминистрированияПрограммы/Form.form b/SSL/src/CommonForms/ПараметрыАдминистрированияПрограммы/Form.form index 28d7880cd..54c90a593 100644 --- a/SSL/src/CommonForms/ПараметрыАдминистрированияПрограммы/Form.form +++ b/SSL/src/CommonForms/ПараметрыАдминистрированияПрограммы/Form.form @@ -32,9 +32,7 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> <verticalAlign>Top</verticalAlign> @@ -43,103 +41,6 @@ <items xsi:type="form:FormGroup"> <name>ГруппаАдминистрированиеИБ</name> <id>24</id> - <items xsi:type="form:FormGroup"> - <name>ГруппаЗаголовков</name> - <id>91</id> - <items xsi:type="form:Decoration"> - <name>ДекорацияИмяПользователя</name> - <id>93</id> - <title> - <key>ru</key> - <value>Имя пользователя:</value> - - true - true - - true - - - ДекорацияИмяПользователяРасширеннаяПодсказка - 95 - Label - true - true - - Left - - - - ДекорацияИмяПользователяКонтекстноеМеню - 94 - true - - Label - true - true - - Left - - - - ДекорацияПароль - 96 - - <key>ru</key> - <value>Пароль:</value> - - true - true - - true - - - ДекорацияПарольРасширеннаяПодсказка - 98 - Label - true - true - - Left - - - - ДекорацияПарольКонтекстноеМеню - 97 - true - - Label - true - true - - Left - - - true - true - - true - - 22 - - ГруппаЗаголовковРасширеннаяПодсказка - 92 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - -
      РежимРаботы 31 @@ -161,7 +62,6 @@ ИмяАдминистратораИнформационнойБазы - None ИмяАдминистратораИнформационнойБазыРасширеннаяПодсказка 101 @@ -207,7 +107,6 @@ ПарольАдминистратораИнформационнойБазы - None ПарольНеразделенногоАдминистратораИБExtendedTooltip 47 @@ -285,7 +184,6 @@ АдминистраторИБ - None ru Администратор информационной базы, от имени которого выполняется принудительное отключение сеансов @@ -336,7 +234,6 @@ ПарольАдминистратораИнформационнойБазы - None ru Пароль администратора информационной базы, от имени которого выполняется принудительное отключение сеансов @@ -694,7 +591,7 @@ Left true - 28 + 26 true true true @@ -1007,7 +904,6 @@ NormalSeparation true true - Auto Auto diff --git a/SSL/src/CommonForms/ПараметрыАдминистрированияПрограммы/Module.bsl b/SSL/src/CommonForms/ПараметрыАдминистрированияПрограммы/Module.bsl index 3a6b82450..1f16cd29e 100644 --- a/SSL/src/CommonForms/ПараметрыАдминистрированияПрограммы/Module.bsl +++ b/SSL/src/CommonForms/ПараметрыАдминистрированияПрограммы/Module.bsl @@ -12,6 +12,11 @@ ВызватьИсключение НСтр("ru = 'Настройка параметров кластера серверов доступна только в клиент-серверном режиме работы.'"); КонецЕсли; + Если Параметры.ЗапрашиватьПараметрыАдминистрированияКластера + И ОбщегоНазначенияКлиентСервер.ЭтоOSXКлиент() Тогда + Возврат; // Отказ устанавливается в ПриОткрытии. + КонецЕсли; + ДоступноИспользованиеРазделенныхДанных = ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных(); Если Параметры.ПараметрыАдминистрирования = Неопределено Тогда @@ -65,6 +70,15 @@ &НаКлиенте Процедура ПриОткрытии(Отказ) + + Если Параметры.ЗапрашиватьПараметрыАдминистрированияКластера + И ОбщегоНазначенияКлиентСервер.ЭтоOSXКлиент() Тогда + Отказ = Истина; + ТекстСообщения = НСтр("ru = 'Подключение к кластеру серверов недоступно в клиенте под управлением ОС X.'"); + ПоказатьПредупреждение(,ТекстСообщения); + Возврат; + КонецЕсли; + Если Не ТребуетсяВводПараметровАдминистрирования Тогда Попытка ПроверитьПараметрыАдминистрирования(ПараметрыАдминистрирования); diff --git a/SSL/src/CommonForms/ПараметрыПроксиСервера/Form.form b/SSL/src/CommonForms/ПараметрыПроксиСервера/Form.form index 47a3c696f..4cc55f871 100644 --- a/SSL/src/CommonForms/ПараметрыПроксиСервера/Form.form +++ b/SSL/src/CommonForms/ПараметрыПроксиСервера/Form.form @@ -194,6 +194,7 @@ UsualGroup Auto + NormalSeparation true true Auto @@ -201,26 +202,27 @@
      - ГруппаПользовательПароль + Группа2 22 - Пользователь - 5 + ИспользоватьАутентификациюОС + 60 true true true - Пользователь + ИспользоватьАутентификациюОС - - ru - Логин для авторизации на прокси сервере - + None + + OnChange + ИспользоватьАутентификациюОСПриИзменении + - ПользовательExtendedTooltip - 51 + ИспользоватьАутентификациюОСРасширеннаяПодсказка + 62 Label true true @@ -229,42 +231,194 @@ - ПользовательКонтекстноеМеню - 6 + ИспользоватьАутентификациюОСКонтекстноеМеню + 61 true - InputField + RadioButtonField Enter true Left true - + + + + ru + Аутентификация по имени пользователя и паролю + + + 0 + + + Vertical + + + + ГруппаПользовательПароль + 66 + + Декорация1 + 68 + true + true + + true + + + Декорация1РасширеннаяПодсказка + 70 + Label + true + true + + Left + + + + Декорация1КонтекстноеМеню + 69 + true + + Label + 1 true true - true - true - true - Normal + + Left + + + + Пользователь + 5 + true + true + + true + + + Пользователь + + + ru + Логин для авторизации на прокси сервере + + + ПользовательExtendedTooltip + 51 + Label + true + true + + Left + + + + ПользовательКонтекстноеМеню + 6 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + + Пароль + 3 + true + true + + true + + + Пароль + + + ru + Пароль для авторизации на прокси сервере + + + ПарольExtendedTooltip + 52 + Label + true + true + + Left + + + + ПарольКонтекстноеМеню + 4 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + true + true + + true + + + ГруппаПользовательПарольРасширеннаяПодсказка + 67 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto - Пароль - 3 + ИспользоватьАутентификациюОС1 + 63 true true true - Пароль + ИспользоватьАутентификациюОС - - ru - Пароль для авторизации на прокси сервере - + None + + OnChange + ИспользоватьАутентификациюОСПриИзменении + - ПарольExtendedTooltip - 52 + ИспользоватьАутентификациюОС1РасширеннаяПодсказка + 65 Label true true @@ -273,23 +427,27 @@ - ПарольКонтекстноеМеню - 4 + ИспользоватьАутентификациюОС1КонтекстноеМеню + 64 true - InputField + RadioButtonField Enter true Left true - - true - true - true - true - true - true - Normal + + 1 + + + ru + Аутентификация операционной системы + + + 1 + + + Vertical true @@ -297,16 +455,8 @@ true - - <key>ru</key> - <value>Группа пользователь пароль</value> - - - ru - Группа пользователь пароль - - ГруппаПользовательПарольExtendedTooltip + Группа2РасширеннаяПодсказка 50 Label true @@ -319,6 +469,7 @@ Vertical Auto + NormalSeparation true true Auto @@ -363,16 +514,16 @@ - ДекорацияОтступ - 27 + Декорация2 + 71 true true true - ДекорацияОтступExtendedTooltip - 55 + Декорация2РасширеннаяПодсказка + 73 Label true true @@ -381,15 +532,13 @@ - ДекорацияОтступКонтекстноеМеню - 28 + Декорация2КонтекстноеМеню + 72 true Label - true true true - false Left @@ -418,6 +567,7 @@ Auto true true + Right UserCmds Auto @@ -447,6 +597,7 @@ UsualGroup Auto + NormalSeparation true true Auto @@ -924,6 +1075,24 @@ true + + ИспользоватьАутентификациюОС + + <key>ru</key> + <value>Использовать аутентификацию ОС</value> + + 19 + + Number + + + + true + + + true + + КнопкаОК diff --git a/SSL/src/CommonForms/ПараметрыПроксиСервера/Help/ru.html b/SSL/src/CommonForms/ПараметрыПроксиСервера/Help/ru.html index ed2371ff8..8e0102ced 100644 --- a/SSL/src/CommonForms/ПараметрыПроксиСервера/Help/ru.html +++ b/SSL/src/CommonForms/ПараметрыПроксиСервера/Help/ru.html @@ -5,7 +5,7 @@ <p>В случае если доступ в Интернет осуществляется через прокси-сервер, в программе необходимо указать параметры прокси-сервера. При этом существуют клиентские и серверные настройки прокси-сервера.</p> <p>В общем случае, параметры прокси-сервера нужны для работы механизмов, которые получают файлы из Интернета по протоколам HTTP, HTTPS и FTP. Настройка прокси-сервера на сервере нужна для работы механизмов на сервере. </p> <p>А для клиентских механизмов (например, загрузка курсов валют в тонком и толстом клиенте) нужна настройка на рабочем месте. В то же время, для работы в программе с электронной почтой настраивать прокси-сервер не требуется. Как правило, параметры прокси-сервера указываются для каждого рабочего места по отдельности, поскольку настройки доступа к сети Интернет могут различаться для разных рабочих мест.</p> -<p>Но если в организации используется клиент-серверная версия 1С:Предприятия, то параметры прокси-сервера необходимо указать и на сервере 1С:Предприятия(из раздела <strong>Администрирование - Общие настройки</strong>).  При этом параметры прокси-сервера для рабочего места и сервера 1С:Предприятия могут различаться. </p> +<p>Но если в организации используется клиент-серверная версия 1С:Предприятия, то параметры прокси-сервера необходимо указать и на сервере 1С:Предприятия(из раздела <strong>Администрирование - Общие настройки - Параметры серверной информационной базы</strong>).  При этом параметры прокси-сервера для рабочего места и сервера 1С:Предприятия могут различаться. </p> <p>Для доступа в Интернет с клиентских компьютеров параметры прокси‑сервера задаются на каждом клиентском рабочем месте (по команде <strong>Персональные настройки</strong> в разделе <strong>Администрирование</strong>). </p> <p><strong>Внимание:</strong> при работе с включенными профилями безопасности для настройки параметров прокси-сервера можно использовать только конфигурационный файл <strong>inetcfg.xml</strong>.</p> <h3>Настройка параметров прокси-сервера</h3> @@ -14,8 +14,8 @@ </li><li><strong>Использовать системные настройки прокси-сервера</strong> - настройки заполняются автоматически значениями из настроек прокси-сервера операционной системы. В этом случае заполненные настройки недоступны для редактирования. </li><li><strong>Использовать другие настройки прокси-сервера</strong> - настройки задаются вручную: <ul><li>Напишите <strong>Адрес сервера</strong> и <strong>Порт</strong> сервера (одинаковый параметр для сервера 1С:Предприятия и рабочих мест). -</li><li>Для каждого рабочего места и сервера укажите <strong>Пользователя</strong> прокси-сервера и его <strong>Парол</strong>ь (в общем случае могут быть различными, зависит от сетевой политики в организации). -</li><li>Установка флажка <strong>Не использовать прокси для локальных адресов</strong> позволит снизить нагрузку на прокси-сервер при работе в локальной сети организации.</li></ul></li></ul></li><li>Для подтверждения параметров прокси-сервера нажмите <strong>ОК</strong>.</li></ul><h3>Дополнительные параметры</h3> -<p>Нажмите <strong>Дополнительно</strong>, для того чтобы перейти к настройке <a href="CommonForm.ДополнительныеПараметрыПроксиСервера/Help">дополнительных параметров</a>.</p> -<h3>См. также:</h3> +</li><li>С помощью переключателя выберите способ аутентификации: +<ul><li><strong>Аутентификация по имени пользователя и паролю</strong> - в этом случае для каждого рабочего места и сервера необходимо указать <strong>Пользователя</strong> прокси-сервера и его <strong>Парол</strong>ь (в общем случае могут быть различными, зависит от сетевой политики в организации). +</li><li><strong>Аутентификация операционной системы</strong> - в этом случае для работы с прокси-сервером будет использована учетная запись пользователя операционной системы.</li></ul></li><li>Для каждого рабочего места и сервера укажите Установка флажка <strong>Не использовать прокси для локальных адресов</strong> позволит снизить нагрузку на прокси-сервер при работе в локальной сети организации.</li></ul></li></ul></li><li>Для подтверждения параметров прокси-сервера нажмите <strong>ОК</strong>.</li></ul><h3>Дополнительные параметры</h3> +<ul><li>Нажмите <strong>Дополнительно</strong>, для того чтобы перейти к настройке <a href="CommonForm.ДополнительныеПараметрыПроксиСервера/Help">дополнительных параметров</a>.</li></ul><h3>См. также:</h3> <ul><li><a href="v8help://frame/form_common">Работа с формами</a>.</li></ul></body></html> \ No newline at end of file diff --git a/SSL/src/CommonForms/ПараметрыПроксиСервера/Module.bsl b/SSL/src/CommonForms/ПараметрыПроксиСервера/Module.bsl index e5f9301fc..1025d4c84 100644 --- a/SSL/src/CommonForms/ПараметрыПроксиСервера/Module.bsl +++ b/SSL/src/CommonForms/ПараметрыПроксиСервера/Module.bsl @@ -39,6 +39,8 @@ Пароль = НастройкаПроксиСервера.Получить("Пароль"); Порт = НастройкаПроксиСервера.Получить("Порт"); НеИспользоватьПроксиДляЛокальныхАдресов = НастройкаПроксиСервера.Получить("НеИспользоватьПроксиДляЛокальныхАдресов"); + ЗначениеПараметра = НастройкаПроксиСервера.Получить("ИспользоватьАутентификациюОС"); + ИспользоватьАутентификациюОС = ?(ЗначениеПараметра = Неопределено, 0, Число(ЗначениеПараметра)); АдресаСерверовИсключенийМассив = НастройкаПроксиСервера.Получить("НеИспользоватьПроксиДляАдресов"); Если ТипЗнч(АдресаСерверовИсключенийМассив) = Тип("Массив") Тогда @@ -80,6 +82,7 @@ // Управление видимостью дополнительных элементов формы. ФайловыйРежимРаботы = ОбщегоНазначенияПовтИсп.РежимРаботыПрограммы().Файловый; + Элементы.ГруппаПользовательПароль.Доступность = (ИспользоватьАутентификациюОС = 0); КонецПроцедуры @@ -125,10 +128,10 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Оповещение = Новый ОписаниеОповещения("ВыбратьИЗакрыть", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы); КонецПроцедуры @@ -259,6 +262,8 @@ НастройкаПроксиСервера.Вставить("НеИспользоватьПроксиДляЛокальныхАдресов", НеИспользоватьПроксиДляЛокальныхАдресов); НастройкаПроксиСервера.Вставить("НеИспользоватьПроксиДляАдресов", СерверыИсключений.ВыгрузитьЗначения()); НастройкаПроксиСервера.Вставить("ИспользоватьСистемныеНастройки", ИспользоватьСистемныеНастройки); + НастройкаПроксиСервера.Вставить("ИспользоватьАутентификациюОС", Булево(ИспользоватьАутентификациюОС)); + // Формирование дополнительных адресов прокси-серверов. @@ -352,6 +357,7 @@ Результат.Вставить("Пользователь", Прокси.Пользователь("")); Результат.Вставить("Пароль" , Прокси.Пароль("")); + Результат.Вставить("ИспользоватьАутентификациюОС" , Прокси.ИспользоватьАутентификациюОС("")); Результат.Вставить("НеИспользоватьПроксиДляЛокальныхАдресов", Прокси.НеИспользоватьПроксиДляЛокальныхАдресов); @@ -404,4 +410,9 @@ КонецПроцедуры +&НаКлиенте +Процедура ИспользоватьАутентификациюОСПриИзменении(Элемент) + Элементы.ГруппаПользовательПароль.Доступность = (ИспользоватьАутентификациюОС = 0); +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/CommonForms/ПечатьДокументов/Form.form b/SSL/src/CommonForms/ПечатьДокументов/Form.form index b33fe42a4..08921623b 100644 --- a/SSL/src/CommonForms/ПечатьДокументов/Form.form +++ b/SSL/src/CommonForms/ПечатьДокументов/Form.form @@ -655,169 +655,6 @@ </extendedTooltip> <extInfo xsi:type="form:ButtonGroupExtInfo"/> </items> - <items xsi:type="form:FormGroup"> - <name>ГруппаНастройкаКомплектаПодменю</name> - <id>121</id> - <items xsi:type="form:Button"> - <name>КнопкаУстановитьФлажкиПодменю</name> - <id>122</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <extendedTooltip> - <name>КнопкаУстановитьФлажкиПодменюExtendedTooltip</name> - <id>151</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <commandName>Form.Command.УстановитьФлажки</commandName> - <buttonImportance>Normal</buttonImportance> - <representation>Auto</representation> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <placementArea>UserCmds</placementArea> - <representationInContextMenu>Auto</representationInContextMenu> - <locationInCommandBar>InAdditionalSubmenu</locationInCommandBar> - </items> - <items xsi:type="form:Button"> - <name>КнопкаСнятьФлажкиПодменю</name> - <id>123</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <extendedTooltip> - <name>КнопкаСнятьФлажкиПодменюExtendedTooltip</name> - <id>152</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <commandName>Form.Command.СнятьФлажки</commandName> - <buttonImportance>Normal</buttonImportance> - <representation>Auto</representation> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <placementArea>UserCmds</placementArea> - <representationInContextMenu>Auto</representationInContextMenu> - <locationInCommandBar>InAdditionalSubmenu</locationInCommandBar> - </items> - <items xsi:type="form:Button"> - <name>КнопкаПереместитьВверхПодменю</name> - <id>124</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <extendedTooltip> - <name>КнопкаПереместитьВверхПодменюExtendedTooltip</name> - <id>153</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <commandName>Form.Item.НастройкиПечатныхФорм.StandardCommand.MoveUp</commandName> - <buttonImportance>Normal</buttonImportance> - <representation>Auto</representation> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <placementArea>UserCmds</placementArea> - <representationInContextMenu>Auto</representationInContextMenu> - <locationInCommandBar>InAdditionalSubmenu</locationInCommandBar> - </items> - <items xsi:type="form:Button"> - <name>КнопкаПереместитьВнизПодменю</name> - <id>125</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <extendedTooltip> - <name>КнопкаПереместитьВнизПодменюExtendedTooltip</name> - <id>154</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <commandName>Form.Item.НастройкиПечатныхФорм.StandardCommand.MoveDown</commandName> - <buttonImportance>Normal</buttonImportance> - <representation>Auto</representation> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <placementArea>UserCmds</placementArea> - <representationInContextMenu>Auto</representationInContextMenu> - <locationInCommandBar>InAdditionalSubmenu</locationInCommandBar> - </items> - <items xsi:type="form:Button"> - <name>КнопкаСброситьНастройкиПодменю</name> - <id>126</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <extendedTooltip> - <name>КнопкаСброситьНастройкиПодменюExtendedTooltip</name> - <id>155</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <commandName>Form.Command.СброситьНастройки</commandName> - <buttonImportance>Normal</buttonImportance> - <representation>Auto</representation> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <placementArea>UserCmds</placementArea> - <representationInContextMenu>Auto</representationInContextMenu> - <locationInCommandBar>InAdditionalSubmenu</locationInCommandBar> - </items> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <title> - <key>ru</key> - <value>Настройка комплекта</value> - - - ГруппаНастройкаКомплектаПодменюExtendedTooltip - 150 - Label - true - true - - Left - - - Popup - - Auto - Normal - -
      true true @@ -905,9 +742,7 @@ 224 true - 2 true - 1 true @@ -944,8 +779,8 @@ true Label - true true + true URLProcessing @@ -1148,6 +983,169 @@ НастройкиПечатныхФормКоманднаяПанель 88 + + ГруппаНастройкаКомплектаКоманднаяПанель + 121 + + КнопкаУстановитьФлажкиПодменю + 122 + true + true + + true + + + КнопкаУстановитьФлажкиПодменюExtendedTooltip + 151 + Label + true + true + + Left + + + Form.Command.УстановитьФлажки + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + КнопкаСнятьФлажкиПодменю + 123 + true + true + + true + + + КнопкаСнятьФлажкиПодменюExtendedTooltip + 152 + Label + true + true + + Left + + + Form.Command.СнятьФлажки + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + КнопкаПереместитьВверхПодменю + 124 + true + true + + true + + + КнопкаПереместитьВверхПодменюExtendedTooltip + 153 + Label + true + true + + Left + + + Form.Item.НастройкиПечатныхФорм.StandardCommand.MoveUp + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + КнопкаПереместитьВнизПодменю + 125 + true + true + + true + + + КнопкаПереместитьВнизПодменюExtendedTooltip + 154 + Label + true + true + + Left + + + Form.Item.НастройкиПечатныхФорм.StandardCommand.MoveDown + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + КнопкаСброситьНастройкиПодменю + 126 + true + true + + true + + + КнопкаСброситьНастройкиПодменюExtendedTooltip + 155 + Label + true + true + + Left + + + Form.Command.СброситьНастройки + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + true + true + + true + + + <key>ru</key> + <value>Настройка комплекта</value> + + + ru + Группа настройка комплекта командная панель + + + ГруппаНастройкаКомплектаКоманднаяПанельРасширеннаяПодсказка + 150 + Label + true + true + + Left + + + + Left @@ -1274,6 +1272,7 @@ true UserCmds Auto + InCommandBarAndInAdditionalSubmenu
      КнопкаСнятьФлажкиКонтекстноеМеню @@ -1300,6 +1299,7 @@ true UserCmds Auto + InCommandBarAndInAdditionalSubmenu КнопкаПереместитьВверхКонтекстноеМеню @@ -1326,6 +1326,7 @@ true UserCmds Auto + InCommandBarAndInAdditionalSubmenu КнопкаПереместитьВнизКонтекстноеМеню @@ -1352,6 +1353,7 @@ true UserCmds Auto + InCommandBarAndInAdditionalSubmenu КнопкаСброситьНастройкиКонтекстноеМеню @@ -1433,13 +1435,14 @@ true true - true + 30 + 50 true true MultiRow
      true
      1 - 1 + 3 AutoUse AutoUse true @@ -1476,6 +1479,10 @@ ТекущаяПечатнаяФорма None + + OnChange + ТекущаяПечатнаяФормаПриИзменении + ТекущаяПечатнаяФормаРасширеннаяПодсказка 213 @@ -1499,7 +1506,7 @@ 30 true - 10 + 15 true true true @@ -1576,11 +1583,8 @@ 131 true - 5 true - 2 true - false CommonPicture.Информация32 @@ -1615,9 +1619,8 @@ true Label - true - 2 true + Center Left @@ -1631,8 +1634,6 @@ ru Группа печатная форма недоступна - true - true ГруппаПечатнаяФормаНедоступнаExtendedTooltip 182 @@ -1661,8 +1662,6 @@ ru Страница печатная форма недоступна - true - true СтраницаПечатнаяФормаНедоступнаExtendedTooltip 181 @@ -1686,8 +1685,6 @@ true true - true - true СтраницыExtendedTooltip 178 @@ -1756,11 +1753,6 @@ OnCreateAtServer ПриСозданииНаСервере - - OnClose - ПриЗакрытии - - 15 DontBlock true true @@ -2202,10 +2194,10 @@ - ТекущийРеквизитСПечатнойФормой + ВыбранныйПринтер <key>ru</key> - <value>Текущий реквизит с печатной формой</value> + <value>Выбранный принтер</value> 21 @@ -2219,23 +2211,6 @@ true - - РазделениеВключено - - <key>ru</key> - <value>Разделение включено</value> - - 22 - - Boolean - - - true - - - true - - Отправить diff --git a/SSL/src/CommonForms/ПечатьДокументов/Module.bsl b/SSL/src/CommonForms/ПечатьДокументов/Module.bsl index 393956ab5..ce3a60ec2 100644 --- a/SSL/src/CommonForms/ПечатьДокументов/Module.bsl +++ b/SSL/src/CommonForms/ПечатьДокументов/Module.bsl @@ -11,8 +11,6 @@ Возврат; КонецЕсли; - РазделениеВключено = ОбщегоНазначенияПовтИсп.РазделениеВключено(); - Если Не Пользователи.РолиДоступны("ИзменениеМакетовПечатныхФорм") Тогда Элементы.КнопкаПерейтиКУправлениюМакетами.Видимость = Ложь; КонецЕсли; @@ -54,6 +52,7 @@ ЕстьРазрешенныйВывод = ЕстьРазрешенныйВывод(); НастроитьВидимостьЭлементовФормы(ЕстьРазрешенныйВывод); УстановитьПризнакДоступностиВыводаВПредставленияхПечатныхФорм(ЕстьРазрешенныйВывод); + УстановитьПринтерВПечатныхФормах(); УстановитьИмяПринтераВПодсказкеКнопкиПечать(); УстановитьЗаголовокФормы(); Если ЭтоПечатьКомплекта() Тогда @@ -177,25 +176,6 @@ КонецФункции -&НаКлиенте -Процедура ПриЗакрытии() - - Если Не ПустаяСтрока(КлючНастроек) Тогда - СохраняемыеНастройкиПечатныхФорм = Новый Массив; - Для Каждого НастройкаПечатнойФормы Из НастройкиПечатныхФорм Цикл - СохраняемаяНастройка = Новый Структура; - СохраняемаяНастройка.Вставить("ИмяМакета", НастройкаПечатнойФормы.ИмяМакета); - СохраняемаяНастройка.Вставить("Количество", ?(НастройкаПечатнойФормы.Печатать,НастройкаПечатнойФормы.Количество, 0)); - СохраняемаяНастройка.Вставить("ПозицияПоУмолчанию", НастройкаПечатнойФормы.ПозицияПоУмолчанию); - - СохраняемыеНастройкиПечатныхФорм.Добавить(СохраняемаяНастройка); - КонецЦикла; - - СохранитьНастройкиПечатныхФорм(КлючНастроек, СохраняемыеНастройкиПечатныхФорм); - КонецЕсли; - -КонецПроцедуры - &НаКлиенте Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) @@ -229,6 +209,7 @@ Процедура КопийПриИзменении(Элемент) Если НастройкиПечатныхФорм.Количество() = 1 Тогда НастройкиПечатныхФорм[0].Количество = Копий; + НачатьСохранениеНастроек(); КонецЕсли; КонецПроцедуры @@ -245,6 +226,15 @@ КонецЕсли; КонецПроцедуры +&НаКлиенте +Процедура ТекущаяПечатнаяФормаПриИзменении(Элемент) + НастройкаПечатнойФормы = ТекущаяНастройкаПечатнойФормы(); + Если ВыбранныйПринтер <> ТекущаяПечатнаяФорма.ИмяПринтера Тогда + ВыбранныйПринтер = ТекущаяПечатнаяФорма.ИмяПринтера; + УстановитьИмяПринтераВПодсказкеКнопкиПечать(ВыбранныйПринтер); + КонецЕсли; +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыНастройкиПечатныхФорм @@ -273,6 +263,8 @@ Элементы.КнопкаОтправить.Доступность = МожноСохранять; Элементы.КнопкаОтправитьВсеДействия.Доступность = МожноСохранять; + + НачатьСохранениеНастроек(); КонецПроцедуры &НаКлиенте @@ -305,7 +297,6 @@ &НаКлиенте Процедура Сохранить(Команда) - ОбновитьДанныеТекущейПечатнойФормыКлиент(); ПараметрыФормы = Новый Структура; ПараметрыФормы.Вставить("ОбъектыПечати", ОбъектыПечати); ОткрытьФорму("ОбщаяФорма.СохранениеПечатнойФормы", ПараметрыФормы, ЭтотОбъект); @@ -313,7 +304,6 @@ &НаКлиенте Процедура Отправить(Команда) - ОбновитьДанныеТекущейПечатнойФормыКлиент(); ОтправитьПечатныеФормыПоПочте(); КонецПроцедуры @@ -332,14 +322,12 @@ &НаКлиенте Процедура ПерейтиКУправлениюМакетами(Команда) - ОбновитьДанныеТекущейПечатнойФормыКлиент(); ОткрытьФорму("РегистрСведений.ПользовательскиеМакетыПечати.Форма.МакетыПечатныхФорм"); КонецПроцедуры &НаКлиенте Процедура Печать(Команда) - ОбновитьДанныеТекущейПечатнойФормыКлиент(); ТабличныеДокументы = ТабличныеДокументыДляПечати(); УправлениеПечатьюКлиент.РаспечататьТабличныеДокументы(ТабличныеДокументы, ОбъектыПечати, ТабличныеДокументы.Количество() > 1, ?(НастройкиПечатныхФорм.Количество() > 1, Копий, 1)); @@ -364,11 +352,11 @@ &НаКлиенте Процедура СброситьНастройки(Команда) ВосстановитьНастройкиПечатныхФорм(); + НачатьСохранениеНастроек(); КонецПроцедуры &НаКлиенте Процедура ИзменитьМакет(Команда) - ОбновитьДанныеТекущейПечатнойФормыКлиент(); ОткрытьМакетДляРедактирования(); КонецПроцедуры @@ -601,7 +589,6 @@ Элементы.КнопкаПоказатьСкрытьНастройкуКомплекта.Видимость = ЭтоПечатьКомплекта(); Элементы.НастройкиПечатныхФорм.Видимость = ЭтоПечатьКомплекта(); - Элементы.ГруппаНастройкаКомплектаПодменю.Видимость = ЭтоПечатьКомплекта(); ДоступнаНастройкаКомплекта = Истина; Если ТипЗнч(Параметры.ПараметрыПечати) = Тип("Структура") И Параметры.ПараметрыПечати.Свойство("ФиксированныйКомплект") Тогда @@ -609,7 +596,7 @@ КонецЕсли; Элементы.ГруппаНастройкаКомплектаКонтекстноеМеню.Видимость = ДоступнаНастройкаКомплекта; - Элементы.ГруппаНастройкаКомплектаПодменю.Видимость = ЭтоПечатьКомплекта() И ДоступнаНастройкаКомплекта; + Элементы.ГруппаНастройкаКомплектаКоманднаяПанель.Видимость = ЭтоПечатьКомплекта() И ДоступнаНастройкаКомплекта; Элементы.НастройкиПечатныхФормПечатать.Видимость = ДоступнаНастройкаКомплекта; Элементы.НастройкиПечатныхФормКоличество.Видимость = ДоступнаНастройкаКомплекта; Элементы.НастройкиПечатныхФорм.Шапка = ДоступнаНастройкаКомплекта; @@ -655,17 +642,35 @@ КонецЕсли; Элементы.НастройкиПечатныхФорм.Видимость = Видимость; - Элементы.ГруппаНастройкаКомплектаПодменю.Видимость = Видимость И ДоступнаНастройкаКомплекта; + Элементы.ГруппаНастройкаКомплектаКоманднаяПанель.Видимость = Видимость И ДоступнаНастройкаКомплекта; КонецПроцедуры &НаСервере -Процедура УстановитьИмяПринтераВПодсказкеКнопкиПечать() - Если НастройкиПечатныхФорм.Количество() > 0 Тогда - ИмяПринтера = ЭтотОбъект[НастройкиПечатныхФорм[0].ИмяРеквизита].ИмяПринтера; - Если Не ПустаяСтрока(ИмяПринтера) Тогда - ЭтотОбъект.Команды["Печать"].Подсказка = НСтр("ru = 'Напечатать на принтере'") + " (" + ИмяПринтера + ")"; - КонецЕсли; +Процедура УстановитьИмяПринтераВПодсказкеКнопкиПечать(ИмяПринтера = Неопределено) + Если НастройкиПечатныхФорм.Количество() = 0 Тогда + Возврат; КонецЕсли; + + Если ИмяПринтера = Неопределено Тогда + ИмяПринтера = ЭтотОбъект[НастройкиПечатныхФорм[0].ИмяРеквизита].ИмяПринтера; + КонецЕсли; + + Если ПустаяСтрока(ИмяПринтера) Тогда + ИмяПринтера = НСтр("ru = 'Принтер по умолчанию'"); + КонецЕсли; + + ПодсказкаКнопкиПечать = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Напечатать на принтере (%1)'"), ИмяПринтера); + ЭтотОбъект.Команды["Печать"].Подсказка = ПодсказкаКнопкиПечать; +КонецПроцедуры + +&НаСервере +Процедура УстановитьПринтерВПечатныхФормах() + ВыбранныйПринтер = ЭтотОбъект[НастройкиПечатныхФорм[0].ИмяРеквизита].ИмяПринтера; + Для Индекс = 1 По НастройкиПечатныхФорм.Количество() - 1 Цикл + НастройкаПечатнойФормы = НастройкиПечатныхФорм[Индекс]; + ЭтотОбъект[НастройкаПечатнойФормы.ИмяРеквизита].ИмяПринтера = ВыбранныйПринтер; + КонецЦикла; КонецПроцедуры &НаСервере @@ -710,37 +715,13 @@ ПереключитьПометкуКнопкиРедактирование(); УстановитьДоступностьИзмененияМакета(); УстановитьДоступностьКомандВывода(); + КонецПроцедуры &НаСервере Процедура УстановитьТекущийТабличныйДокумент(ИмяРеквизита) - - Если ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда - ОбновитьДанныеТекущейПечатнойФормыСервер(); - ТекущаяПечатнаяФорма = Новый ТабличныйДокумент; - ТекущаяПечатнаяФорма.Вывести(ЭтотОбъект[ИмяРеквизита]); - ЗаполнитьЗначенияСвойств(ТекущаяПечатнаяФорма, ЭтотОбъект[ИмяРеквизита], "АвтоМасштаб,Вывод,ВысотаСтраницы,ДвусторонняяПечать,Защита,ИмяПринтера,КодЯзыкаМакета,КоличествоЭкземпляров,МасштабПечати,ОриентацияСтраницы,ПолеСверху,ПолеСлева,ПолеСнизу,ПолеСправа,РазборПоКопиям,РазмерКолонтитулаСверху,РазмерКолонтитулаСнизу,РазмерСтраницы,ТочностьПечати,ЧерноБелаяПечать,ШиринаСтраницы,ЭкземпляровНаСтранице,КлючПараметровПечати"); - ТекущийРеквизитСПечатнойФормой = ИмяРеквизита; - Иначе - ТекущаяПечатнаяФорма = ЭтотОбъект[ИмяРеквизита]; - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ОбновитьДанныеТекущейПечатнойФормыКлиент() - Если РазделениеВключено Тогда - ОбновитьДанныеТекущейПечатнойФормыСервер(); - КонецЕсли; -КонецПроцедуры - -&НаСервере -Процедура ОбновитьДанныеТекущейПечатнойФормыСервер() - Если Не ПустаяСтрока(ТекущийРеквизитСПечатнойФормой) Тогда - ЭтотОбъект[ТекущийРеквизитСПечатнойФормой] = Новый ТабличныйДокумент; - ЭтотОбъект[ТекущийРеквизитСПечатнойФормой].Вывести(ТекущаяПечатнаяФорма); - ЗаполнитьЗначенияСвойств(ЭтотОбъект[ТекущийРеквизитСПечатнойФормой], ТекущаяПечатнаяФорма, "АвтоМасштаб,Вывод,ВысотаСтраницы,ДвусторонняяПечать,Защита,ИмяПринтера,КодЯзыкаМакета,КоличествоЭкземпляров,МасштабПечати,ОриентацияСтраницы,ПолеСверху,ПолеСлева,ПолеСнизу,ПолеСправа,РазборПоКопиям,РазмерКолонтитулаСверху,РазмерКолонтитулаСнизу,РазмерСтраницы,ТочностьПечати,ЧерноБелаяПечать,ШиринаСтраницы,ЭкземпляровНаСтранице,КлючПараметровПечати"); - КонецЕсли; + ТекущаяПечатнаяФорма = ЭтотОбъект[ИмяРеквизита]; + ТекущаяПечатнаяФорма.ИмяПринтера = ВыбранныйПринтер; КонецПроцедуры &НаКлиенте @@ -751,6 +732,7 @@ НастройкаПечатнойФормы.Количество = 1; КонецЕсли; КонецЦикла; + НачатьСохранениеНастроек(); КонецПроцедуры &НаСервере @@ -882,7 +864,6 @@ ФайлАрхива = Новый Файл(ИмяАрхива); ДвоичныеДанные = Новый ДвоичныеДанные(ИмяАрхива); ПутьВоВременномХранилище = ПоместитьВоВременноеХранилище(ДвоичныеДанные, ЭтотОбъект.УникальныйИдентификатор); - УдалитьФайлы(ИмяАрхива); ОписаниеФайла = Новый Структура; ОписаниеФайла.Вставить("Представление", ПолучитьИмяФайлаДляАрхива()); ОписаниеФайла.Вставить("АдресВоВременномХранилище", ПутьВоВременномХранилище); @@ -890,6 +871,9 @@ КонецЕсли; УдалитьФайлы(ИмяВременнойПапки); + Если ЗначениеЗаполнено(ИмяАрхива) Тогда + УдалитьФайлы(ИмяАрхива); + КонецЕсли; Возврат Результат; @@ -910,7 +894,7 @@ КонецЕсли; ТабличныйДокумент = ПечатнаяФорма.ПолучитьОбласть(Область.Верх, , Область.Низ); ЗаполнитьЗначенияСвойств(ТабличныйДокумент, ПечатнаяФорма, - "АвтоМасштаб,Вывод,ВысотаСтраницы,ДвусторонняяПечать,Защита,ИмяПринтера,КодЯзыкаМакета,КоличествоЭкземпляров,МасштабПечати,ОриентацияСтраницы,ПолеСверху,ПолеСлева,ПолеСнизу,ПолеСправа,РазборПоКопиям,РазмерКолонтитулаСверху,РазмерКолонтитулаСнизу,РазмерСтраницы,ТочностьПечати,ЧерноБелаяПечать,ШиринаСтраницы,ЭкземпляровНаСтранице"); + "АвтоМасштаб,Вывод,ВысотаСтраницы,ДвусторонняяПечать,Защита,ИмяПринтера,КодЯзыка,КоличествоЭкземпляров,МасштабПечати,ОриентацияСтраницы,ПолеСверху,ПолеСлева,ПолеСнизу,ПолеСправа,РазборПоКопиям,РазмерКолонтитулаСверху,РазмерКолонтитулаСнизу,РазмерСтраницы,ТочностьПечати,ЧерноБелаяПечать,ШиринаСтраницы,ЭкземпляровНаСтранице"); Результат.Вставить(ОбъектПечати.Значение, ТабличныйДокумент); КонецЦикла; Возврат Результат; @@ -961,7 +945,7 @@ ПараметрыДляВставки = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ОбъектПечати, "Дата,Номер"); Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПрефиксацияОбъектов") Тогда МодульПрефиксацияОбъектовКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ПрефиксацияОбъектовКлиентСервер"); - ПараметрыДляВставки.Номер = МодульПрефиксацияОбъектовКлиентСервер.ПолучитьНомерНаПечать(ПараметрыДляВставки.Номер); + ПараметрыДляВставки.Номер = МодульПрефиксацияОбъектовКлиентСервер.НомерНаПечать(ПараметрыДляВставки.Номер); КонецЕсли; ПараметрыДляВставки.Дата = Формат(ПараметрыДляВставки.Дата, "ДЛФ=D"); ПараметрыДляВставки.Вставить("НазваниеПечатнойФормы", НазваниеПечатнойФормы); @@ -1369,7 +1353,8 @@ ПечатнаяФорма = ЭтотОбъект[НастройкаПечатнойФормы.ИмяРеквизита]; ТабличныйДокумент = Новый ТабличныйДокумент; ТабличныйДокумент.Вывести(ПечатнаяФорма); - ЗаполнитьЗначенияСвойств(ТабличныйДокумент, ПечатнаяФорма, "АвтоМасштаб,Вывод,ВысотаСтраницы,ДвусторонняяПечать,Защита,ИмяПринтера,КодЯзыкаМакета,КоличествоЭкземпляров,МасштабПечати,ОриентацияСтраницы,ПолеСверху,ПолеСлева,ПолеСнизу,ПолеСправа,РазборПоКопиям,РазмерКолонтитулаСверху,РазмерКолонтитулаСнизу,РазмерСтраницы,ТочностьПечати,ЧерноБелаяПечать,ШиринаСтраницы,ЭкземпляровНаСтранице"); + ЗаполнитьЗначенияСвойств(ТабличныйДокумент, ПечатнаяФорма, "АвтоМасштаб,Вывод,ВысотаСтраницы,ДвусторонняяПечать,Защита,КодЯзыка,КоличествоЭкземпляров,МасштабПечати,ОриентацияСтраницы,ПолеСверху,ПолеСлева,ПолеСнизу,ПолеСправа,РазборПоКопиям,РазмерКолонтитулаСверху,РазмерКолонтитулаСнизу,РазмерСтраницы,ТочностьПечати,ЧерноБелаяПечать,ШиринаСтраницы,ЭкземпляровНаСтранице"); + ТабличныйДокумент.ИмяПринтера = ВыбранныйПринтер; ТабличныйДокумент.КоличествоЭкземпляров = НастройкаПечатнойФормы.Количество; ТабличныеДокументы.Добавить(ТабличныйДокумент, НастройкаПечатнойФормы.Представление); КонецЕсли; @@ -1378,4 +1363,26 @@ Возврат ТабличныеДокументы; КонецФункции +&НаКлиенте +Процедура СохранитьНастройки() + СохраняемыеНастройкиПечатныхФорм = Новый Массив; + Для Каждого НастройкаПечатнойФормы Из НастройкиПечатныхФорм Цикл + СохраняемаяНастройка = Новый Структура; + СохраняемаяНастройка.Вставить("ИмяМакета", НастройкаПечатнойФормы.ИмяМакета); + СохраняемаяНастройка.Вставить("Количество", ?(НастройкаПечатнойФормы.Печатать,НастройкаПечатнойФормы.Количество, 0)); + СохраняемаяНастройка.Вставить("ПозицияПоУмолчанию", НастройкаПечатнойФормы.ПозицияПоУмолчанию); + СохраняемыеНастройкиПечатныхФорм.Добавить(СохраняемаяНастройка); + КонецЦикла; + СохранитьНастройкиПечатныхФорм(КлючНастроек, СохраняемыеНастройкиПечатныхФорм); +КонецПроцедуры + +&НаКлиенте +Процедура НачатьСохранениеНастроек() + ОтключитьОбработчикОжидания("СохранитьНастройки"); + Если ПустаяСтрока(КлючНастроек) Тогда + Возврат; + КонецЕсли; + ПодключитьОбработчикОжидания("СохранитьНастройки", 2, Истина); +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/CommonForms/ПодготовкаНовогоПисьма/Form.form b/SSL/src/CommonForms/ПодготовкаНовогоПисьма/Form.form index 992198833..bfbd859fe 100644 --- a/SSL/src/CommonForms/ПодготовкаНовогоПисьма/Form.form +++ b/SSL/src/CommonForms/ПодготовкаНовогоПисьма/Form.form @@ -969,7 +969,6 @@ <excludedCommands>Retry</excludedCommands> <excludedCommands>SaveValues</excludedCommands> <excludedCommands>Yes</excludedCommands> - <width>60</width> <windowOpeningMode>LockOwner</windowOpeningMode> <autoSaveDataInSettings>Use</autoSaveDataInSettings> <saveDataInSettings>UseList</saveDataInSettings> diff --git a/SSL/src/CommonForms/ПодключениеКонечнойТочки/Form.form b/SSL/src/CommonForms/ПодключениеКонечнойТочки/Form.form index 4398fcf0a..8fb50ad96 100644 --- a/SSL/src/CommonForms/ПодключениеКонечнойТочки/Form.form +++ b/SSL/src/CommonForms/ПодключениеКонечнойТочки/Form.form @@ -76,7 +76,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <textColor xsi:type="core:ColorRef"> <color>Style.ПоясняющийТекст</color> @@ -200,7 +199,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <textColor xsi:type="core:ColorRef"> <color>Style.ПоясняющийТекст</color> @@ -316,7 +314,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <textColor xsi:type="core:ColorRef"> <color>Style.ПоясняющийТекст</color> @@ -417,8 +414,7 @@ <id>44</id> <title> <key>ru</key> - <value>Имя и пароль служебного пользователя с ролью "Удаленный доступ (Обмен сообщениями)" -в этой информационной базе.</value> + <value>Имя и пароль служебного пользователя с ролью "Удаленный доступ (Обмен сообщениями)" в этой информационной базе.</value> true true @@ -441,7 +437,6 @@ true Label - true true Style.ПоясняющийТекст diff --git a/SSL/src/CommonForms/ПодключениеКонечнойТочки/Module.bsl b/SSL/src/CommonForms/ПодключениеКонечнойТочки/Module.bsl index 5d246fe0c..25aa05ae6 100644 --- a/SSL/src/CommonForms/ПодключениеКонечнойТочки/Module.bsl +++ b/SSL/src/CommonForms/ПодключениеКонечнойТочки/Module.bsl @@ -15,11 +15,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) - ТекстПредупреждения = НСтр("ru = 'Отменить подключение конечной точки?'"); Оповещение = Новый ОписаниеОповещения("ПодключитьИЗакрыть", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ТекстПредупреждения); + ТекстПредупреждения = НСтр("ru = 'Отменить подключение конечной точки?'"); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы, ТекстПредупреждения); КонецПроцедуры diff --git a/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/Form.form b/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/Form.form index 76eb17f30..2795df820 100644 --- a/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/Form.form +++ b/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/Form.form @@ -42,7 +42,6 @@ StartChoice ПутьКФайлуНачалоВыбора - true true true true @@ -83,9 +82,7 @@ 158 true - 4 true - 2 true @@ -101,7 +98,7 @@ 19 <key>ru</key> - <value>Если не удалось найти файл приложения для связи со специалистом онлайн-поддержки, <link http://distribs.buhphone.com/current>скачайте</> приложение на сайте разработчика.</value> + <value>Если на компьютере нет файла приложения для связи со специалистом онлайн-поддержки, <link http://distribs.buhphone.com/current>скачайте</> приложение на сайте разработчика.</value> true true @@ -125,13 +122,10 @@ true Label - 40 - true - 3 true Left - 1 + 3
      @@ -163,12 +157,9 @@ true Label - true true - true Left - Top true @@ -176,14 +167,6 @@ true - - <key>ru</key> - <value>Группа справочная информация</value> - - - ru - Группа справочная информация - ГруппаСправочнаяИнформацияРасширеннаяПодсказка 161 @@ -213,10 +196,6 @@ ru Группа информация - - ru - Группа информация - ГруппаИнформацияРасширеннаяПодсказка 135 @@ -230,6 +209,7 @@ UsualGroup Auto + NormalSeparation true true Auto diff --git a/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/Help/ru.html b/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/Help/ru.html index 0c4c73719..13a19761c 100644 --- a/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/Help/ru.html +++ b/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/Help/ru.html @@ -1,3 +1,3 @@

      Предназначена для повторного указания пути к исполняемому файлу приложения для связи со специалистом онлайн-поддержки. Возникает в случае отсутствия файла по указанному пути.

      -

      Возможно, приложение было удалено или перемещено. Вы можете скачать его снова, воспользовавшись ссылкой скачать программу.

      \ No newline at end of file +

      Возможно, приложение было удалено или перемещено. Вы можете скачать его снова, воспользовавшись ссылкой скачать приложение.

      \ No newline at end of file diff --git a/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/Module.bsl b/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/Module.bsl index b163da0fc..8a8a104e5 100644 --- a/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/Module.bsl +++ b/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/Module.bsl @@ -9,8 +9,8 @@ &НаКлиенте Процедура ПриОткрытии(Отказ) - Если НЕ Интеграция1СБухфонКлиент.ЭтоWindowsКлиент() Тогда - ПоказатьПредупреждение(,НСтр("ru = 'Для работы с приложением 1С-Бухфон необходима операционная система Microsoft Windows.'")); + Если НЕ ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда + ПоказатьПредупреждение(,НСтр("ru = 'Для работы с приложением необходима операционная система Microsoft Windows.'")); Отказ = Истина; КонецЕсли; КонецПроцедуры diff --git a/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/ПоискИсполняемогоФайла1СБухфон.mdo b/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/ПоискИсполняемогоФайла1СБухфон.mdo index e4ee11c32..33c86fd25 100644 --- a/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/ПоискИсполняемогоФайла1СБухфон.mdo +++ b/SSL/src/CommonForms/ПоискИсполняемогоФайла1СБухфон/ПоискИсполняемогоФайла1СБухфон.mdo @@ -3,7 +3,7 @@ ПоискИсполняемогоФайла1СБухфон ru - Поиск исполняемого файла + Поиск исполняемого файла 1С-Бухфон diff --git a/SSL/src/CommonForms/ПользователиСервиса/Form.form b/SSL/src/CommonForms/ПользователиСервиса/Form.form index a22bd9625..f72185e38 100644 --- a/SSL/src/CommonForms/ПользователиСервиса/Form.form +++ b/SSL/src/CommonForms/ПользователиСервиса/Form.form @@ -367,9 +367,11 @@ true
      - - ГруппаКнопкиДействий - 20 + Bottom + true + + ФормаКоманднаяПанель + -1 ДобавитьВыбранныхПользователей 21 @@ -421,41 +423,7 @@ UserCmds Auto - true - true - - true - - - <key>ru</key> - <value>Группа кнопки действий</value> - - - ru - Группа кнопки действий - - - ГруппаКнопкиДействийExtendedTooltip - 31 - Label - true - true - - Left - - - CommandBar - - Right - - - None - false - - ФормаКоманднаяПанель - -1 - Left - true + Right OnOpen diff --git a/SSL/src/CommonForms/ПраваДоступа/Form.form b/SSL/src/CommonForms/ПраваДоступа/Form.form index f65a5f3b5..339391e71 100644 --- a/SSL/src/CommonForms/ПраваДоступа/Form.form +++ b/SSL/src/CommonForms/ПраваДоступа/Form.form @@ -27,7 +27,6 @@ true Label - true true Left @@ -418,9 +417,7 @@ true true true - 60 true - 9 true true MultiRow @@ -483,10 +480,8 @@ Left true - true 2 true - false true true true @@ -525,9 +520,7 @@ 68 true - 4 true - 3 true @@ -565,7 +558,6 @@ true Label - true true Left @@ -915,7 +907,6 @@ ru Разрешенные действия (роли) - 48 ОтображениеРолейExtendedTooltip 132 @@ -1066,6 +1057,33 @@ UserCmds Auto
      + + ФормаОбновить + 57 + true + true + + true + + + ФормаОбновитьExtendedTooltip + 115 + Label + true + true + + Left + + + Form.Command.Обновить + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + ПанельФормы 28 @@ -1122,33 +1140,6 @@ UserCmds Auto - - ФормаОбновить - 57 - true - true - - true - - - ФормаОбновитьExtendedTooltip - 115 - Label - true - true - - Left - - - Form.Command.Обновить - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - Left @@ -1299,7 +1290,7 @@ ПользовательИБПолноправный <key>ru</key> - <value>Пользователь ИБПолноправный</value> + <value>Полноправный</value> 9 @@ -1316,7 +1307,7 @@ ПользовательИБОтветственный <key>ru</key> - <value>Пользователь ИБОтветственный</value> + <value>Ответственный</value> 11 diff --git a/SSL/src/CommonForms/ПраваДоступаУпрощенно/Form.form b/SSL/src/CommonForms/ПраваДоступаУпрощенно/Form.form index 5084032a1..c2441bca1 100644 --- a/SSL/src/CommonForms/ПраваДоступаУпрощенно/Form.form +++ b/SSL/src/CommonForms/ПраваДоступаУпрощенно/Form.form @@ -27,7 +27,6 @@ true Label - true true Left @@ -232,7 +231,6 @@ ПрофилиКонтекстноеМеню 3 - 40 true true true @@ -596,7 +594,6 @@ Auto
      - 45 true true 2 @@ -655,7 +652,6 @@ true Label - true true Left @@ -940,7 +936,6 @@ true - 40 ДоступExtendedTooltip 82 @@ -1098,7 +1093,6 @@ FillCheckProcessingAtServer ОбработкаПроверкиЗаполненияНаСервере - 80 DontBlock true true @@ -1541,6 +1535,23 @@ true + + ОтказПриЗаписиИзменений + + <key>ru</key> + <value>Отказ при записи изменений</value> + + 24 + + Boolean + + + true + + + true + + Записать diff --git a/SSL/src/CommonForms/ПраваДоступаУпрощенно/Module.bsl b/SSL/src/CommonForms/ПраваДоступаУпрощенно/Module.bsl index 4ab4c2082..eee1efd50 100644 --- a/SSL/src/CommonForms/ПраваДоступаУпрощенно/Module.bsl +++ b/SSL/src/CommonForms/ПраваДоступаУпрощенно/Module.bsl @@ -85,10 +85,10 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Оповещение = Новый ОписаниеОповещения("ЗаписатьИЗакрытьОповещение", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы); КонецПроцедуры @@ -449,7 +449,18 @@ ОчиститьСообщения(); Отказ = Ложь; - ЗаписатьИзмененияНаСервере(Отказ); + ОтказПриЗаписиИзменений = Ложь; + Попытка + ЗаписатьИзмененияНаСервере(Отказ); + Исключение + ИнформацияОбОшибке = ИнформацияОбОшибке(); + Если ОтказПриЗаписиИзменений Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю( + КраткоеПредставлениеОшибки(ИнформацияОбОшибке),,,, Отказ); + Иначе + ВызватьИсключение; + КонецЕсли; + КонецПопытки; ПодключитьОбработчикОжидания("УстановитьТекущуюСтрокуЗначенияДоступаПриОшибке", Истина, 0.1); @@ -569,7 +580,7 @@ &НаСервере Процедура ЗаписатьИзмененияНаСервере(Отказ) - Если НЕ ПроверитьЗаполнение() Тогда + Если Не ПроверитьЗаполнение() Тогда Отказ = Истина; Возврат; КонецЕсли; @@ -807,6 +818,8 @@ ГруппаДоступаОбъект.Пользователи, ОписаниеОшибки); Если ЗначениеЗаполнено(ОписаниеОшибки) Тогда + ОтказПриЗаписиИзменений = Истина; + Отказ = Истина; ВызватьИсключение НСтр("ru = 'Профиль Администратор должен быть хотя бы у одного пользователя, |которому разрешен вход в программу.'"); @@ -841,14 +854,14 @@ КонецЕсли; КонецЦикла; ЗафиксироватьТранзакцию(); - Модифицированность = Ложь; - ТребуетсяСинхронизацияССервисом = Ложь; Исключение ОтменитьТранзакцию(); - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - КраткоеПредставлениеОшибки(ИнформацияОбОшибке()), , , , Отказ); + ВызватьИсключение; КонецПопытки; + Модифицированность = Ложь; + ТребуетсяСинхронизацияССервисом = Ложь; + КонецПроцедуры &НаКлиентеНаСервереБезКонтекста diff --git a/SSL/src/CommonForms/ПредупреждениеБезопасности/Form.form b/SSL/src/CommonForms/ПредупреждениеБезопасности/Form.form index d4d0823c0..908d00468 100644 --- a/SSL/src/CommonForms/ПредупреждениеБезопасности/Form.form +++ b/SSL/src/CommonForms/ПредупреждениеБезопасности/Form.form @@ -59,7 +59,7 @@ могут нанести вред вашему компьютеру и данным в программе. Вместо открытия внешних отчетов и обработок рекомендуется использовать -<link e1cib/list/Справочник.ДополнительныеОтчетыИОбработки>дополнительные</><link e1cib/list/Справочник.ДополнительныеОтчетыИОбработки> отчеты</><link e1cib/list/Справочник.ДополнительныеОтчетыИОбработки> и обработки</> и <link e1cib/app/ОбщаяФорма.УстановленныеРасширения>расширения</>, полученные из надежных источников. +<link e1cib/list/Справочник.ДополнительныеОтчетыИОбработки>дополнительные</><link e1cib/list/Справочник.ДополнительныеОтчетыИОбработки> отчеты</><link e1cib/list/Справочник.ДополнительныеОтчетыИОбработки> и обработки</> и <link e1cib/app/ОбщаяФорма.Расширения>расширения</>, полученные из надежных источников. См. также: <link http://1c.ru/news/info.jsp?id=21537>Пример проблемы с вирусом во внешней обработке</>.</value> @@ -85,7 +85,6 @@ true Label - true true false @@ -244,7 +243,6 @@ true Label - true true false @@ -376,7 +374,6 @@ true Label - true true false @@ -569,7 +566,6 @@ true Label - true true false @@ -953,7 +949,6 @@ true Label - true true false @@ -1145,7 +1140,6 @@ true Label - true true false @@ -1305,7 +1299,7 @@ 137 ПредупрежденииПриОткрытииФайла - 150 + 139 <key>ru</key> <value>%1</value> @@ -1317,7 +1311,7 @@ </userVisible> <extendedTooltip> <name>ПредупрежденииПриОткрытииФайлаРасширеннаяПодсказка</name> - <id>152</id> + <id>141</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -1327,7 +1321,7 @@ </extendedTooltip> <contextMenu> <name>ПредупрежденииПриОткрытииФайлаКонтекстноеМеню</name> - <id>151</id> + <id>140</id> <autoFill>true</autoFill> </contextMenu> <type>Label</type> @@ -1339,7 +1333,7 @@ </items> <items xsi:type="form:Decoration"> <name>ПредупрежденииПриОткрытииФайлаПояснение</name> - <id>139</id> + <id>142</id> <title> <key>ru</key> <value>Файл содержит исполняемый код, который может быть потенциально опасен для компьютера. @@ -1355,7 +1349,7 @@ </userVisible> <extendedTooltip> <name>ПредупрежденииПриОткрытииФайлаПояснениеРасширеннаяПодсказка</name> - <id>141</id> + <id>144</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -1365,12 +1359,11 @@ </extendedTooltip> <contextMenu> <name>ПредупрежденииПриОткрытииФайлаПояснениеКонтекстноеМеню</name> - <id>140</id> + <id>143</id> <autoFill>true</autoFill> </contextMenu> <formatted>true</formatted> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <horizontalStretch>false</horizontalStretch> <extInfo xsi:type="form:LabelDecorationExtInfo"> @@ -1379,13 +1372,13 @@ </items> <items xsi:type="form:FormGroup"> <name>Колонки7</name> - <id>142</id> + <id>145</id> <items xsi:type="form:FormGroup"> <name>КоманднаяПанель7</name> - <id>144</id> + <id>147</id> <items xsi:type="form:Button"> <name>Продолжить7</name> - <id>146</id> + <id>149</id> <visible>true</visible> <enabled>true</enabled> <userVisible> @@ -1393,7 +1386,7 @@ </userVisible> <extendedTooltip> <name>Продолжить7РасширеннаяПодсказка</name> - <id>147</id> + <id>150</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -1411,7 +1404,7 @@ </items> <items xsi:type="form:Button"> <name>Отмена7</name> - <id>148</id> + <id>151</id> <visible>true</visible> <enabled>true</enabled> <userVisible> @@ -1419,7 +1412,7 @@ </userVisible> <extendedTooltip> <name>Отмена7РасширеннаяПодсказка</name> - <id>149</id> + <id>152</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -1450,7 +1443,7 @@ </toolTip> <extendedTooltip> <name>КоманднаяПанель7РасширеннаяПодсказка</name> - <id>145</id> + <id>148</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -1478,7 +1471,7 @@ </toolTip> <extendedTooltip> <name>Колонки7РасширеннаяПодсказка</name> - <id>143</id> + <id>146</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> diff --git a/SSL/src/CommonForms/ПредупреждениеБезопасности/Module.bsl b/SSL/src/CommonForms/ПредупреждениеБезопасности/Module.bsl index bda256020..bb15be6e6 100644 --- a/SSL/src/CommonForms/ПредупреждениеБезопасности/Module.bsl +++ b/SSL/src/CommonForms/ПредупреждениеБезопасности/Module.bsl @@ -30,7 +30,7 @@ СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( Элементы.ПредупрежденииПриОткрытииФайла.Заголовок, Параметры.ИмяФайла); КонецЕсли; - + КонецПроцедуры #КонецОбласти @@ -141,7 +141,7 @@ Кнопки = Новый СписокЗначений; Кнопки.Добавить("Перезапустить", НСтр("ru = 'Перезапустить'")); Кнопки.Добавить("НеПерезапускать", НСтр("ru = 'Не перезапускать'")); - ТекстВопроса = НСтр("ru = 'Для применения изменений в правах доступа требуется перезапустить программу.'"); + ТекстВопроса = НСтр("ru = 'Для применения изменений требуется перезапустить программу.'"); ПоказатьВопрос(Обработчик, ТекстВопроса, Кнопки); КонецПроцедуры diff --git a/SSL/src/CommonForms/ПредупреждениеБезопасности/ПредупреждениеБезопасности.mdo b/SSL/src/CommonForms/ПредупреждениеБезопасности/ПредупреждениеБезопасности.mdo index 28117d02f..a876f4a46 100644 --- a/SSL/src/CommonForms/ПредупреждениеБезопасности/ПредупреждениеБезопасности.mdo +++ b/SSL/src/CommonForms/ПредупреждениеБезопасности/ПредупреждениеБезопасности.mdo @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<mdclass:CommonForm xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="ba026c72-2c07-4131-a711-339cd3c5fb95"> +<mdclass:CommonForm xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="40c8b547-35d0-4dbd-8fa1-ba108c3022b1"> <name>ПредупреждениеБезопасности</name> <synonym> <key>ru</key> diff --git a/SSL/src/CommonForms/ПредупрежденияПриЗавершенииРаботы/Form.form b/SSL/src/CommonForms/ПредупрежденияПриЗавершенииРаботы/Form.form index 1ccdeb97a..96ba2b9b3 100644 --- a/SSL/src/CommonForms/ПредупрежденияПриЗавершенииРаботы/Form.form +++ b/SSL/src/CommonForms/ПредупрежденияПриЗавершенииРаботы/Form.form @@ -34,11 +34,8 @@ <id>19</id> <autoFill>true</autoFill> </contextMenu> - <width>5</width> <autoMaxWidth>true</autoMaxWidth> - <height>2</height> <autoMaxHeight>true</autoMaxHeight> - <verticalStretch>false</verticalStretch> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="core:PictureRef"> <picture>CommonPicture.Вопрос32</picture> @@ -58,7 +55,6 @@ <value>Дополнительные действия при завершении работы:</value> Ctrl+S - true ОсновнаяГруппаExtendedTooltip 35 @@ -186,7 +182,6 @@ RestoreValues Retry SaveValues - 60 LockWholeInterface true true diff --git a/SSL/src/CommonForms/ПредупрежденияПриЗавершенииРаботы/Module.bsl b/SSL/src/CommonForms/ПредупрежденияПриЗавершенииРаботы/Module.bsl index 0bbb5123e..955b70d6d 100644 --- a/SSL/src/CommonForms/ПредупрежденияПриЗавершенииРаботы/Module.bsl +++ b/SSL/src/CommonForms/ПредупрежденияПриЗавершенииРаботы/Module.bsl @@ -102,7 +102,7 @@ // // Параметры: // Вопросы - Массив - структуры с параметрами значений вопросов. -// См. СтандартныеПодсистемы.БазоваяФункциональность\ПриПолученииСпискаПредупрежденийЗавершенияРаботы. +// См. СтандартныеПодсистемы.БазоваяФункциональность\ПередЗавершениемРаботыСистемы. // &НаСервере Процедура ИнициализироватьЭлементыВФорме(Знач Предупреждения) diff --git a/SSL/src/CommonForms/ПрисоединенныеФайлы/Form.form b/SSL/src/CommonForms/ПрисоединенныеФайлы/Form.form index 3c32a5cc5..39746fd5e 100644 --- a/SSL/src/CommonForms/ПрисоединенныеФайлы/Form.form +++ b/SSL/src/CommonForms/ПрисоединенныеФайлы/Form.form @@ -67,7 +67,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 241 @@ -1330,9 +1329,7 @@ 296 true - 5 true - 2 true @@ -1369,9 +1366,7 @@ true Label - true true - true Left Center @@ -1386,11 +1381,7 @@ ru Группа пояснение облачного сервиса - - ru - Группа пояснение облачного сервиса - - false + true ГруппаПояснениеОблачногоСервисаРасширеннаяПодсказка 288 @@ -1403,6 +1394,7 @@ UsualGroup + Center Auto true true @@ -2804,7 +2796,6 @@ HierarchicalList true true - 1 true 8 true @@ -2968,7 +2959,6 @@ ПриСозданииНаСервере Refresh - 75 DontBlock true true @@ -3220,7 +3210,7 @@ ru Запрещенные расширения - 13 + 12 ValueList @@ -3754,6 +3744,26 @@ Boolean + + ПростаяФорма + + Boolean + + + + ЗаголовокФормы + + String + + + + + ПараметрыОтправки + + String + + + diff --git a/SSL/src/CommonForms/ПрисоединенныеФайлы/Module.bsl b/SSL/src/CommonForms/ПрисоединенныеФайлы/Module.bsl index 126e60f38..7803bc647 100644 --- a/SSL/src/CommonForms/ПрисоединенныеФайлы/Module.bsl +++ b/SSL/src/CommonForms/ПрисоединенныеФайлы/Module.bsl @@ -23,22 +23,19 @@ |только в форме объекта-владельца.'"); КонецЕсли; - Если Параметры.Свойство("ПростаяФорма") Тогда - ПростаяФорма = Параметры.ПростаяФорма; - Элементы.ФормаРедактировать.ТолькоВоВсехДействиях = Истина; - Элементы.ФормаОткрыть.ТолькоВоВсехДействиях = Истина; - Элементы.ФормаЗакончитьРедактирование.ТолькоВоВсехДействиях = Истина; - Элементы.СписокВажныеРеквизиты.Видимость = Ложь; - Предпросмотр = Истина; - КонецЕсли; + Элементы.ФормаРедактировать.ТолькоВоВсехДействиях = Параметры.ПростаяФорма; + Элементы.ФормаОткрыть.ТолькоВоВсехДействиях = Параметры.ПростаяФорма; + Элементы.ФормаЗакончитьРедактирование.ТолькоВоВсехДействиях = Параметры.ПростаяФорма; + Элементы.СписокВажныеРеквизиты.Видимость = Не Параметры.ПростаяФорма; + Предпросмотр = Параметры.ПростаяФорма; - Если Параметры.Свойство("ЗаголовокФормы") Тогда + Если Не ПустаяСтрока(Параметры.ЗаголовокФормы) Тогда Заголовок = Параметры.ЗаголовокФормы; ИначеЕсли СписокОткрытИзКарточкиФайла Тогда Заголовок = Заголовок + " (" + Строка(ТипЗнч(ВладелецФайла)) + " " + Строка(ВладелецФайла) + ")"; КонецЕсли; - Если Параметры.Свойство("ПараметрыОтправки") Тогда + Если ЗначениеЗаполнено(Параметры.ПараметрыОтправки) Тогда ПараметрыОтправки = Параметры.ПараметрыОтправки; Иначе ПараметрыОтправки = ФайловыеФункцииСлужебный.ПодготовитьСтруктуруПараметровОтправки(); @@ -153,11 +150,6 @@ УстановитьДоступностьКнопок(); - ДатаУниверсальная = ОбщегоНазначенияКлиент.ДатаУниверсальная(); - - Список.Параметры.УстановитьЗначениеПараметра("СекундДоМестногоВремени", - МестноеВремя(ДатаУниверсальная) - ДатаУниверсальная); - КонецПроцедуры &НаКлиенте @@ -481,6 +473,10 @@ УстановитьВидимостьПредпросмотра(Предпросмотр); СохранитьВариантПредпросмотра(ТипСправочникаСФайлами, Предпросмотр); + #Если ВебКлиент Тогда + ОбновитьПредпросмотр(); + #КонецЕсли + КонецПроцедуры &НаКлиенте @@ -657,8 +653,8 @@ ТекущиеДанные = Элементы.Список.ТекущиеДанные; Если (ТекущиеДанные.ФайлРедактируется И НЕ ТекущиеДанные.ФайлРедактируетТекущийПользователь) - ИЛИ ТекущиеДанные.Зашифрован - ИЛИ ТекущиеДанные.ПодписанЭП Тогда + ИЛИ ТекущиеДанные.Зашифрован + ИЛИ ТекущиеДанные.ПодписанЭП Тогда Возврат; КонецЕсли; @@ -676,10 +672,10 @@ ДанныеФайла = ДанныеФайла(ТекущиеДанные.Ссылка, УникальныйИдентификатор); - Если (ДанныеФайла.ФайлРедактируется - И НЕ ДанныеФайла.ФайлРедактируетТекущийПользователь) - ИЛИ ДанныеФайла.Зашифрован - ИЛИ ДанныеФайла.ПодписанЭП Тогда + Если ( ДанныеФайла.ФайлРедактируется + И НЕ ДанныеФайла.ФайлРедактируетТекущийПользователь) + ИЛИ ДанныеФайла.Зашифрован + ИЛИ ДанныеФайла.ПодписанЭП Тогда // Файл может быть изменен в другом сеансе. ОповеститьОбИзменении(ТекущиеДанные.Ссылка); Возврат; @@ -1071,8 +1067,9 @@ ИмяСправочникаХранилищаФайлов = ПрисоединенныеФайлыСлужебный.ИмяСправочникаХраненияФайлов( Параметры.ВладелецФайла, "", ЗаголовокОшибки, ОкончаниеОшибки); - ПолноеИмяСправочника = "Справочник." + ИмяСправочникаХранилищаФайлов; - Список.ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ИмяСправочника", ПолноеИмяСправочника); + ПолноеИмяСправочника = "Справочник." + ИмяСправочникаХранилищаФайлов; + Список.ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ИмяСправочника", ПолноеИмяСправочника); + Список.ОсновнаяТаблица = ПолноеИмяСправочника; ПустыеПользователи = Новый Массив; ПустыеПользователи.Добавить(Неопределено); @@ -1082,8 +1079,11 @@ Список.Параметры.УстановитьЗначениеПараметра("ВладелецФайлов", Параметры.ВладелецФайла); Список.Параметры.УстановитьЗначениеПараметра("ТекущийПользователь", Пользователи.АвторизованныйПользователь()); Список.Параметры.УстановитьЗначениеПараметра("ПустыеПользователи", ПустыеПользователи); - Список.Параметры.УстановитьЗначениеПараметра("СекундДоМестногоВремени", 0); // Установка на клиенте - Список.ОсновнаяТаблица = ПолноеИмяСправочника; + + ДатаУниверсальная = ТекущаяДатаСеанса(); + Список.Параметры.УстановитьЗначениеПараметра("СекундДоМестногоВремени", + МестноеВремя(ДатаУниверсальная, ЧасовойПоясСеанса()) - ДатаУниверсальная); + Список.ДинамическоеСчитываниеДанных = Истина; КонецПроцедуры diff --git a/SSL/src/CommonForms/ПрисоединенныйФайл/Form.form b/SSL/src/CommonForms/ПрисоединенныйФайл/Form.form index cdb9f57ab..81f9f42e7 100644 --- a/SSL/src/CommonForms/ПрисоединенныйФайл/Form.form +++ b/SSL/src/CommonForms/ПрисоединенныйФайл/Form.form @@ -39,7 +39,6 @@ Left true - true true true true @@ -85,7 +84,6 @@ Left true - true 2 true true @@ -750,6 +748,48 @@ Normal + + ЭлектронныеПодписиОписаниеОшибки + 159 + true + true + + true + + + ЭлектронныеПодписи.ОписаниеОшибки + + None + + ЭлектронныеПодписиОписаниеОшибкиРасширеннаяПодсказка + 161 + Label + true + true + + Left + + + + ЭлектронныеПодписиОписаниеОшибкиКонтекстноеМеню + 160 + true + + InputField + Auto + true + Left + true + + true + true + true + true + true + true + Normal + + ЭлектронныеПодписиДатаПроверкиПодписи 151 @@ -1098,6 +1138,44 @@ true + + Инструкция + 156 + + <key>ru</key> + <value>Типичные проблемы при работе с программами электронной подписи и их решение</value> + + true + true + + true + + + ИнструкцияРасширеннаяПодсказка + 158 + Label + true + true + + Left + + + + ИнструкцияКонтекстноеМеню + 157 + true + + Label + true + + + Click + ИнструкцияНажатие + + true + Left + + true true @@ -1120,6 +1198,7 @@ Page + Vertical auto false @@ -2056,7 +2135,6 @@ OnClose ПриЗакрытии - 75 DontBlock true Vertical @@ -2348,6 +2426,24 @@ true + + ОписаниеОшибки + + <key>ru</key> + <value>Описание ошибки</value> + + 12 + + String + + + + true + + + true + + СертификатыШифрования @@ -3257,6 +3353,12 @@ Boolean + + ПрисоединенныйФайл + + AnyRef + + diff --git a/SSL/src/CommonForms/ПрисоединенныйФайл/Module.bsl b/SSL/src/CommonForms/ПрисоединенныйФайл/Module.bsl index 33260bf0a..003c20e96 100644 --- a/SSL/src/CommonForms/ПрисоединенныйФайл/Module.bsl +++ b/SSL/src/CommonForms/ПрисоединенныйФайл/Module.bsl @@ -48,16 +48,17 @@ КонецЦикла; ОбъектЗначение.Автор = Пользователи.АвторизованныйПользователь(); - ОбъектЗначение.Заполнить(Неопределено); Иначе - Если Параметры.Свойство("ПрисоединенныйФайл") Тогда + Если ЗначениеЗаполнено(Параметры.ПрисоединенныйФайл) Тогда ОбъектЗначение = Параметры.ПрисоединенныйФайл.ПолучитьОбъект(); Иначе ОбъектЗначение = Параметры.Ключ.ПолучитьОбъект(); КонецЕсли; КонецЕсли; + ОбъектЗначение.Заполнить(Неопределено); ИмяСправочника = ОбъектЗначение.Метаданные().Имя; + НастроитьОбъектФормы(ОбъектЗначение); ПриИзмененияИспользованияПодписанияИлиШифрованияНаСервере(); @@ -101,8 +102,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; РазблокироватьОбъект(ЭтотОбъект.Объект.Ссылка, УникальныйИдентификатор); КонецПроцедуры @@ -135,6 +139,16 @@ КонецПроцедуры +&НаКлиенте +Процедура ИнструкцияНажатие(Элемент) + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ЭлектроннаяПодпись") Тогда + МодульЭлектроннаяПодписьКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ЭлектроннаяПодписьКлиент"); + МодульЭлектроннаяПодписьКлиент.ОткрытьИнструкциюПоТипичнымПроблемамПриРаботеСПрограммами(); + КонецЕсли; + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыСертификатыШифрования @@ -610,6 +624,38 @@ #Область СлужебныеПроцедурыИФункции +&НаКлиенте +Процедура ОткрытьФайлПослеПодтверждения(Результат, ДополнительныеПараметры) Экспорт + + Если Результат <> Неопределено И Результат = "Продолжить" Тогда + ДанныеФайла = ПолучитьДанныеФайла(ЭтотОбъект.Объект.Ссылка, УникальныйИдентификатор); + + ФайлРедактируется = ЗначениеЗаполнено(ЭтотОбъект.Объект.Редактирует) + И ЭтотОбъект.Объект.Редактирует = ТекущийПользователь; + + ПрисоединенныеФайлыКлиент.ОткрытьФайл(ДанныеФайла, ФайлРедактируется); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура РедактироватьФайлПослеПодтверждения(Результат, ДополнительныеПараметры) Экспорт + + Если Результат <> Неопределено И Результат = "Продолжить" Тогда + ДанныеФайла = ПолучитьДанныеФайла(ЭтотОбъект.Объект.Ссылка, УникальныйИдентификатор); + + Если ЗначениеЗаполнено(ЭтотОбъект.Объект.Редактирует) Тогда + ПрисоединенныеФайлыКлиент.ОткрытьФайл(ДанныеФайла, Истина); + Иначе + ПрисоединенныеФайлыКлиент.ОткрытьФайл(ДанныеФайла, Истина); + ЗанятьФайлДляРедактированияСервер(); + ОповеститьОбИзменении(ЭтотОбъект.Объект.Ссылка); + Оповестить("Запись_ПрисоединенныйФайл", Новый Структура, ЭтотОбъект.Объект.Ссылка); + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + &НаСервере Процедура ОбновитьЗаголовок() @@ -656,38 +702,6 @@ КонецПроцедуры -&НаКлиенте -Процедура ОткрытьФайлПослеПодтверждения(Результат, ДополнительныеПараметры) Экспорт - - Если Результат <> Неопределено И Результат = "Продолжить" Тогда - ДанныеФайла = ПолучитьДанныеФайла(ЭтотОбъект.Объект.Ссылка, УникальныйИдентификатор); - - ФайлРедактируется = ЗначениеЗаполнено(ЭтотОбъект.Объект.Редактирует) - И ЭтотОбъект.Объект.Редактирует = ТекущийПользователь; - - ПрисоединенныеФайлыКлиент.ОткрытьФайл(ДанныеФайла, ФайлРедактируется); - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура РедактироватьФайлПослеПодтверждения(Результат, ДополнительныеПараметры) Экспорт - - Если Результат <> Неопределено И Результат = "Продолжить" Тогда - ДанныеФайла = ПолучитьДанныеФайла(ЭтотОбъект.Объект.Ссылка, УникальныйИдентификатор); - - Если ЗначениеЗаполнено(ЭтотОбъект.Объект.Редактирует) Тогда - ПрисоединенныеФайлыКлиент.ОткрытьФайл(ДанныеФайла, Истина); - Иначе - ПрисоединенныеФайлыКлиент.ОткрытьФайл(ДанныеФайла, Истина); - ЗанятьФайлДляРедактированияСервер(); - ОповеститьОбИзменении(ЭтотОбъект.Объект.Ссылка); - Оповестить("Запись_ПрисоединенныйФайл", Новый Структура, ЭтотОбъект.Объект.Ссылка); - КонецЕсли; - КонецЕсли; - -КонецПроцедуры - &НаКлиенте Процедура ОткрытьКаталогФайла() @@ -720,7 +734,7 @@ Процедура ОбновитьДвоичныеДанныеФайлаНаСервере(ИнформацияОФайле) ЗаписываемыйОбъект = РеквизитФормыВЗначение("Объект"); - ПрисоединенныеФайлы.ОбновитьПрисоединенныйФайл(ЗаписываемыйОбъект, ИнформацияОФайле); + ПрисоединенныеФайлыСлужебный.ОбновитьПрисоединенныйФайлОбъект(ЗаписываемыйОбъект, ИнформацияОФайле); ЗначениеВРеквизитФормы(ЗаписываемыйОбъект, "Объект"); КонецПроцедуры @@ -1081,7 +1095,9 @@ Процедура ПоместитьФайлВХранилищеИОсвободить(Знач ИнформацияОФайле) ЗаписываемыйОбъект = РеквизитФормыВЗначение("Объект"); - ПрисоединенныеФайлыСлужебный.ПоместитьФайлВХранилищеИОсвободить(ЗаписываемыйОбъект, ИнформацияОФайле); + + ИнформацияОФайле.Вставить("Редактирует", Справочники.Пользователи.ПустаяСсылка()); + ПрисоединенныеФайлыСлужебный.ОбновитьПрисоединенныйФайлОбъект(ЗаписываемыйОбъект, ИнформацияОФайле); ЗначениеВРеквизитФормы(ЗаписываемыйОбъект, "Объект"); КонецПроцедуры diff --git a/SSL/src/CommonForms/ПустойРабочийСтол/Form.form b/SSL/src/CommonForms/ПустойРабочийСтол/Form.form new file mode 100644 index 000000000..0ad82e924 --- /dev/null +++ b/SSL/src/CommonForms/ПустойРабочийСтол/Form.form @@ -0,0 +1,135 @@ + + + + ТестовыйРежим + 1 + + Картинка + 3 + + <key>ru</key> + <value>Картинка</value> + + true + true + + true + + + КартинкаРасширеннаяПодсказка + 5 + Label + true + true + + Left + + + + КартинкаКонтекстноеМеню + 4 + true + + true + true + + + CommonPicture.Ошибка32 + + + + + Надпись + 6 + + <key>ru</key> + <value>Вход в информационную базу был выполнен в целях автоматического тестирования +с параметром запуска <b>ОтключитьЛогикуНачалаРаботыСистемы</>. + +Работа пользователей в этом режиме настоятельно не рекомендуется, +так как это приведет к рассогласованию или потере данных.</value> + + true + true + + true + + + НадписьРасширеннаяПодсказка + 8 + Label + true + true + + Left + + + + НадписьКонтекстноеМеню + 7 + true + + true + Label + 60 + true + true + + Left + + + true + + true + + + <key>ru</key> + <value>Тестовый режим</value> + + + ru + Тестовый режим + + + ТестовыйРежимРасширеннаяПодсказка + 2 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + None + false + + ФормаКоманднаяПанель + -1 + Left + + + OnOpen + ПриОткрытии + + DontBlock + true + true + Vertical + true + true + auto + true + + + + + diff --git a/SSL/src/CommonForms/ПустойРабочийСтол/Module.bsl b/SSL/src/CommonForms/ПустойРабочийСтол/Module.bsl new file mode 100644 index 000000000..ac3e3d31b --- /dev/null +++ b/SSL/src/CommonForms/ПустойРабочийСтол/Module.bsl @@ -0,0 +1,48 @@ + +#Область ОбработчикиСобытийФормы + +&НаКлиенте +Процедура ПриОткрытии(Отказ) + + Если Не СтандартныеПодсистемыКлиент.ОтключенаЛогикаНачалаРаботыСистемы() Тогда + Возврат; + КонецЕсли; + + Элементы.ТестовыйРежим.Видимость = Истина; + + ЗаголовокТестовогоРежима = "{" + НСтр("ru = 'Тестирование'") + "} "; + ТекущийЗаголовок = ПолучитьЗаголовокКлиентскогоПриложения(); + + Если СтрНачинаетсяС(ТекущийЗаголовок, ЗаголовокТестовогоРежима) Тогда + Возврат; + КонецЕсли; + + УстановитьЗаголовокКлиентскогоПриложения(ЗаголовокТестовогоРежима + ТекущийЗаголовок); + + ЗарегистрироватьОтключениеЛогикиНачалаРаботыСистемы(); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервереБезКонтекста +Процедура ЗарегистрироватьОтключениеЛогикиНачалаРаботыСистемы() + + УстановитьПривилегированныйРежим(Истина); + + ВладелецДанных = Справочники.ИдентификаторыОбъектовМетаданных.ПолучитьСсылку( + Новый УникальныйИдентификатор("627a6fb8-872a-11e3-bb87-005056c00008")); // Константы. + + ДатыОтключения = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(ВладелецДанных); + Если ТипЗнч(ДатыОтключения) <> Тип("Массив") Тогда + ДатыОтключения = Новый Массив; + КонецЕсли; + + ДатыОтключения.Добавить(ТекущаяДатаСеанса()); + ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(ВладелецДанных, ДатыОтключения); + +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/CommonForms/ВыборПроизвольногоПериода/ВыборПроизвольногоПериода.mdo b/SSL/src/CommonForms/ПустойРабочийСтол/ПустойРабочийСтол.mdo similarity index 56% rename from SSL/src/CommonForms/ВыборПроизвольногоПериода/ВыборПроизвольногоПериода.mdo rename to SSL/src/CommonForms/ПустойРабочийСтол/ПустойРабочийСтол.mdo index 6b552936e..2c27dc40a 100644 --- a/SSL/src/CommonForms/ВыборПроизвольногоПериода/ВыборПроизвольногоПериода.mdo +++ b/SSL/src/CommonForms/ПустойРабочийСтол/ПустойРабочийСтол.mdo @@ -1,9 +1,9 @@ - - ВыборПроизвольногоПериода + + ПустойРабочийСтол ru - Выбор произвольного периода + Пустой рабочий стол PersonalComputer MobileDevice diff --git a/SSL/src/CommonForms/Расширения/Form.form b/SSL/src/CommonForms/Расширения/Form.form new file mode 100644 index 000000000..06f41f3c9 --- /dev/null +++ b/SSL/src/CommonForms/Расширения/Form.form @@ -0,0 +1,1775 @@ + + + + СтраницыРежимРаботы + 152 + + СтраницаРазделенныйРежим + 154 + + КомандыФормы + 150 + + СписокРасширенийДобавить + 58 + true + true + + true + + + СписокРасширенийДобавитьРасширеннаяПодсказка + 59 + Label + true + true + + Left + + + Form.Item.СписокРасширений.StandardCommand.Add + Normal + Auto + true + true + UserCmds + Auto + + + СписокРасширенийУдалить + 60 + true + true + + true + + + СписокРасширенийУдалитьРасширеннаяПодсказка + 61 + Label + true + true + + Left + + + Form.Item.СписокРасширений.StandardCommand.Delete + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + КнопкиСписка + 56 + + СписокРасширенийОбновитьИСохранить + 96 + + СписокРасширенийОбновитьИзФайлаНаДиске + 92 + true + true + + true + + + СписокРасширенийОбновитьИзФайлаНаДискеРасширеннаяПодсказка + 93 + Label + true + true + + Left + + + Form.Command.ОбновитьИзФайлаНаДиске + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + СписокРасширенийСохранитьКак + 94 + true + true + + true + + + СписокРасширенийСохранитьКакРасширеннаяПодсказка + 95 + Label + true + true + + Left + + + Form.Command.СохранитьКак + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + true + true + + true + + + <key>ru</key> + <value>Список расширений обновить и сохранить</value> + + + ru + Список расширений обновить и сохранить + + + СписокРасширенийОбновитьИСохранитьРасширеннаяПодсказка + 97 + Label + true + true + + Left + + + + + + СписокРасширенийОбновить + 68 + true + true + + true + + + СписокРасширенийОбновитьРасширеннаяПодсказка + 69 + Label + true + true + + Left + + + Form.Command.Обновить + Normal + true + true + UserCmds + Auto + InAdditionalSubmenu + + true + true + + true + + + <key>ru</key> + <value>Кнопки списка</value> + + + КнопкиСпискаРасширеннаяПодсказка + 57 + Label + true + true + + Left + + + + Item.СписокРасширений + + + + ФормаУдалитьКэшиРасширений + 131 + true + true + + + ФормаУдалитьКэшиРасширенийРасширеннаяПодсказка + 132 + Label + true + true + + Left + + + Form.Command.УдалитьУстаревшиеКэшиРасширений + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ФормаСправка + 74 + true + true + + true + + + ФормаСправкаРасширеннаяПодсказка + 75 + Label + true + true + + Left + + + Form.StandardCommand.Help + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + true + true + + true + + + <key>ru</key> + <value>Команды формы</value> + + + КомандыФормыРасширеннаяПодсказка + 151 + Label + true + true + + Left + + + CommandBar + + Left + Form + + + + СтраницыОбновление + 101 + + СтраницаСписокРасширений + 108 + + ГруппаПредупреждение + 78 + + ПредупреждениеКартинка + 80 + + <key>ru</key> + <value>Предупреждение картинка</value> + + true + true + + true + + + ПредупреждениеКартинкаРасширеннаяПодсказка + 82 + Label + true + true + + Left + + + + ПредупреждениеКартинкаКонтекстноеМеню + 81 + true + + true + true + + + CommonPicture.Предупреждение32 + + + + + ПредупреждениеОписание + 83 + + <key>ru</key> + <value>Чтобы продолжить работу с учетом сделанных изменений, необходимо <link 1>перезапустить</> сеанс.</value> + + true + true + + true + + + ПредупреждениеОписаниеРасширеннаяПодсказка + 85 + Label + true + true + + Left + + + + ПредупреждениеОписаниеКонтекстноеМеню + 84 + true + + true + Label + true + + + URLProcessing + ПредупреждениеОписаниеОбработкаНавигационнойСсылки + + Left + + + true + true + + true + + + <key>ru</key> + <value>Группа предупреждение</value> + + + ru + Группа предупреждение + + + ГруппаПредупреждениеРасширеннаяПодсказка + 79 + Label + true + true + + Left + + + UsualGroup + + Center + Auto + true + true + Auto + Auto + + + + ГруппаИнформация + 121 + + ИнформацияКартинка + 123 + + <key>ru</key> + <value>Информация картинка</value> + + true + true + + true + + + ИнформацияКартинкаРасширеннаяПодсказка + 125 + Label + true + true + + Left + + + + ИнформацияКартинкаКонтекстноеМеню + 124 + true + + true + true + + + CommonPicture.Информация32 + + + + + ГруппаИнформацияОписание + 126 + + ИнформацияОписание + 128 + + <key>ru</key> + <value>Изменения, которые будут сделаны, вступят в силу для пользователей области данных при следующем входе в программу.</value> + + true + true + + true + + + ИнформацияОписаниеРасширеннаяПодсказка + 130 + Label + true + true + + Left + + + + ИнформацияОписаниеКонтекстноеМеню + 129 + true + + Label + true + + Left + Center + 2 + + + true + true + + true + + + <key>ru</key> + <value>Группа информация описание</value> + + + ГруппаИнформацияОписаниеРасширеннаяПодсказка + 127 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа информация</value> + + + ГруппаИнформацияРасширеннаяПодсказка + 122 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + СписокРасширений + 19 + true + true + + true + + + СписокРасширений + + None + CancelSearch + Change + Copy + CopyToClipboard + EndEdit + Find + MoveDown + MoveUp + OutputList + ShowRowRearrangement + SortListAsc + SortListDesc + + СписокРасширенийНаименование + 140 + + СписокРасширенийПодключено + 142 + true + true + + true + + + СписокРасширений.Подключено + + None + + СписокРасширенийПодключеноРасширеннаяПодсказка + 144 + Label + true + true + + Left + + + + СписокРасширенийПодключеноКонтекстноеМеню + 143 + true + + PictureField + Auto + true + Left + true + + true + true + true + true + + CommonPicture.СостоянияРасширенийКонфигурации + + + + 1 + + + + + СписокРасширенийСиноним + 53 + + <key>ru</key> + <value>Наименование</value> + + true + true + + true + + + СписокРасширений.Синоним + + + СписокРасширенийСинонимРасширеннаяПодсказка + 55 + Label + true + true + + Left + + + + СписокРасширенийСинонимКонтекстноеМеню + 54 + true + + InputField + true + Auto + true + Left + true + + 42 + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Список расширений наименование</value> + + + СписокРасширенийНаименованиеРасширеннаяПодсказка + 141 + Label + true + true + + Left + + + ColumnGroup + + InCell + auto + true + + + + СписокРасширенийВерсия + 38 + true + true + + true + + + СписокРасширений.Версия + + + СписокРасширенийВерсияРасширеннаяПодсказка + 40 + Label + true + true + + Left + + + + СписокРасширенийВерсияКонтекстноеМеню + 39 + true + + InputField + true + Auto + true + Left + true + + 10 + true + true + true + true + true + true + Normal + + + + СписокРасширенийКонтрольнаяСумма + 98 + true + true + + + СписокРасширений.КонтрольнаяСумма + + + СписокРасширенийКонтрольнаяСуммаРасширеннаяПодсказка + 100 + Label + true + true + + Left + + + + СписокРасширенийКонтрольнаяСуммаКонтекстноеМеню + 99 + true + + InputField + true + Auto + true + Left + true + + true + true + true + true + true + true + Normal + + + + СписокРасширенийГруппаБезопасныйРежим + 136 + + СписокРасширенийБезопасныйРежимФлаг + 50 + true + true + + true + + + СписокРасширений.БезопасныйРежимФлаг + + + СписокРасширенийБезопасныйРежимФлагРасширеннаяПодсказка + 52 + Label + true + true + + Left + + + + СписокРасширенийБезопасныйРежимФлагКонтекстноеМеню + 51 + true + + CheckBoxField + Auto + true + Left + true + + + + СписокРасширенийБезопасныйРежим + 133 + true + true + + true + + + СписокРасширений.БезопасныйРежим + + None + + СписокРасширенийБезопасныйРежимРасширеннаяПодсказка + 135 + Label + true + true + + Left + + + + СписокРасширенийБезопасныйРежимКонтекстноеМеню + 134 + true + + InputField + true + Auto + true + Left + true + + true + true + true + + ru + БЛ=; БИ= + + + ru + БЛ=; БИ= + + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Список расширений группа безопасный режим</value> + + + СписокРасширенийГруппаБезопасныйРежимРасширеннаяПодсказка + 137 + Label + true + true + + Left + + + ColumnGroup + + InCell + auto + true + + + None + + СписокРасширенийКоманднаяПанель + 21 + Left + true + + + OnEditEnd + СписокРасширенийПриОкончанииРедактирования + + + BeforeAddRow + СписокРасширенийПередНачаломДобавления + + + BeforeDeleteRow + СписокРасширенийПередУдалением + + + OnActivateRow + СписокРасширенийПриАктивизацииСтроки + + + СписокРасширенийСтрокаПоиска + 23 + + СписокРасширенийСтрокаПоискаРасширеннаяПодсказка + 25 + Label + true + true + + Left + + + + СписокРасширенийСтрокаПоискаКонтекстноеМеню + 24 + true + + СписокРасширений + + true + + + + СписокРасширенийСостояниеПросмотра + 26 + + СписокРасширенийСостояниеПросмотраРасширеннаяПодсказка + 28 + Label + true + true + + Left + + + + СписокРасширенийСостояниеПросмотраКонтекстноеМеню + 27 + true + + ViewStatusAddition + СписокРасширений + + true + + + + СписокРасширенийУправлениеПоиском + 29 + + СписокРасширенийУправлениеПоискомРасширеннаяПодсказка + 31 + Label + true + true + + Left + + + + СписокРасширенийУправлениеПоискомКонтекстноеМеню + 30 + true + + SearchControlAddition + СписокРасширений + + true + + + + СписокРасширенийРасширеннаяПодсказка + 22 + Label + true + true + + Left + + + + СписокРасширенийКонтекстноеМеню + 20 + + СписокРасширенийКонтекстноеМенюДобавить + 113 + true + true + + true + + + СписокРасширенийКонтекстноеМенюДобавитьРасширеннаяПодсказка + 114 + Label + true + true + + Left + + + Form.Item.СписокРасширений.StandardCommand.Add + Normal + Auto + true + true + UserCmds + Auto + + + СписокРасширенийКонтекстноеМенюУдалить + 115 + true + true + + true + + + СписокРасширенийКонтекстноеМенюУдалитьРасширеннаяПодсказка + 116 + Label + true + true + + Left + + + Form.Item.СписокРасширений.StandardCommand.Delete + Normal + Auto + true + true + UserCmds + Auto + + + СписокРасширенийКонтекстноеМенюОбновить + 138 + true + true + + true + + + СписокРасширенийКонтекстноеМенюОбновитьРасширеннаяПодсказка + 139 + Label + true + true + + Left + + + Form.Command.Обновить + Normal + Auto + true + true + UserCmds + Auto + + + СписокРасширенийКонтекстноеМенюГруппа + 119 + + СписокРасширенийКонтекстноеМенюВыделитьВсе + 117 + true + true + + true + + + СписокРасширенийКонтекстноеМенюВыделитьВсеРасширеннаяПодсказка + 118 + Label + true + true + + Left + + + Form.Item.СписокРасширений.StandardCommand.SelectAll + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Список расширений контекстное меню группа</value> + + + СписокРасширенийКонтекстноеМенюГруппаРасширеннаяПодсказка + 120 + Label + true + true + + Left + + + + + + СписокРасширенийКонтекстноеМенюОбновитьИзФайлаНаДиске + 64 + true + true + + true + + + СписокРасширенийКонтекстноеМенюОбновитьИзФайлаНаДискеРасширеннаяПодсказка + 65 + Label + true + true + + Left + + + Form.Command.ОбновитьИзФайлаНаДиске + Normal + Auto + true + true + UserCmds + Auto + + + СписокРасширенийКонтекстноеМенюСохранитьКак + 66 + true + true + + true + + + СписокРасширенийКонтекстноеМенюСохранитьКакРасширеннаяПодсказка + 67 + Label + true + true + + Left + + + Form.Command.СохранитьКак + Normal + Auto + true + true + UserCmds + Auto + + + true + true + true + true + true + MultiRow +
      true
      + 1 + 1 + AutoUse + AutoUse + true + true + true + Auto + Auto + true + true + true + true + + CommonPicture.СостоянияРасширенийКонфигурации + + true + +
      + true + true + + true + + + <key>ru</key> + <value>Страница список расширений</value> + + + СтраницаСписокРасширенийРасширеннаяПодсказка + 109 + Label + true + true + + Left + + + Page + + Vertical + auto + false + +
      + + СтраницаДлительнаяОперация + 103 + + ДлительнаяОперация + 105 + true + true + + true + + + ДлительнаяОперацияРасширеннаяПодсказка + 107 + Label + true + true + + Left + + + + ДлительнаяОперацияКонтекстноеМеню + 106 + true + + true + true + + + CommonPicture.ДлительнаяОперация48 + + + + + ДлительнаяОперацияНадпись + 110 + + <key>ru</key> + <value>Выполняется подготовка расширений к использованию. Пожалуйста, подождите...</value> + + true + true + + true + + + ДлительнаяОперацияНадписьРасширеннаяПодсказка + 112 + Label + true + true + + Left + + + + ДлительнаяОперацияНадписьКонтекстноеМеню + 111 + true + + Label + 3 + true + + Left + Center + + + true + true + + true + + + СтраницаДлительнаяОперацияРасширеннаяПодсказка + 104 + Label + true + true + + Left + + + Page + + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Страницы обновление</value> + + + СтраницыОбновлениеРасширеннаяПодсказка + 102 + Label + true + true + + Left + + + Pages + + Auto + +
      + true + true + + true + + + <key>ru</key> + <value>Страница разделенный режим</value> + + + СтраницаРазделенныйРежимРасширеннаяПодсказка + 155 + Label + true + true + + Left + + + Page + + Vertical + auto + false + +
      + + СтраницаНеразделенныйРежим + 145 + + НеразделенныйРежим + 147 + + <key>ru</key> + <value>Для работы с расширениями выполните вход в область данных.</value> + + true + true + + true + + + НеразделенныйРежимРасширеннаяПодсказка + 149 + Label + true + true + + Left + + + + НеразделенныйРежимКонтекстноеМеню + 148 + true + + Label + true + true + + Left + + + true + true + + true + + + <key>ru</key> + <value>Страница неразделенный режим</value> + + + СтраницаНеразделенныйРежимРасширеннаяПодсказка + 146 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Страницы режим работы</value> + + + СтраницыРежимРаботыРасширеннаяПодсказка + 153 + Label + true + true + + Left + + + Pages + + Auto + +
      + Top + true + + ФормаКоманднаяПанель + -1 + Left + + + NotificationProcessing + ОбработкаОповещения + + + OnCreateAtServer + ПриСозданииНаСервере + + DontBlock + true + true + Vertical + true + true + true + auto + true + + СписокРасширений + + <key>ru</key> + <value>Список расширений</value> + + 2 + + ValueTable + + + true + + + true + + + ИдентификаторРасширения + + <key>ru</key> + <value>Идентификатор расширения</value> + + 1 + + String + + 36 + true + + + + true + + + true + + + + Имя + + <key>ru</key> + <value>Имя</value> + + 2 + + String + + + + true + + + true + + + + Версия + + <key>ru</key> + <value>Версия</value> + + 3 + + String + + + + true + + + true + + + + БезопасныйРежим + + <key>ru</key> + <value>Безопасный режим</value> + + 4 + + Boolean + String + + + + true + + + true + + + + КонтрольнаяСумма + + <key>ru</key> + <value>Контрольная сумма</value> + + 6 + + String + + + + true + + + true + + + + БезопасныйРежимФлаг + + <key>ru</key> + <value>Безопасный режим</value> + + 7 + + Boolean + + + true + + + true + + + + Синоним + + <key>ru</key> + <value>Синоним</value> + + 8 + + String + + + + true + + + true + + + + Подключено + + <key>ru</key> + <value>Подключено</value> + + 5 + + Number + + 1 + true + + + + true + + + true + + + + + РасширенияИзменены + + <key>ru</key> + <value>Расширения изменены</value> + + 1 + + Boolean + + + true + + + true + + + + ИдентификаторТекущейСтроки + + <key>ru</key> + <value>Идентификатор текущей строки</value> + + 3 + + + true + + + true + + + + УстановленныеРасширенияДоступны + + <key>ru</key> + <value>Установленные расширения доступны</value> + + 4 + + Boolean + + + true + + + true + + + + ОбновитьИзФайлаНаДиске + + <key>ru</key> + <value>Обновить из файла на диске...</value> + + 1 + + ru + Обновить из файла на диске + + + true + + + CommonPicture.ОбновитьФайлИзФайлаНаДиске + + + + ОбновитьИзФайлаНаДиске + + + DontUse + Auto + + + СохранитьКак + + <key>ru</key> + <value>Сохранить как...</value> + + 2 + + ru + Сохранить как + + + true + + + CommonPicture.СохранитьФайлКак + + + + СохранитьКак + + + DontUse + Auto + + + Обновить + + <key>ru</key> + <value>Обновить</value> + + 3 + + ru + Обновить + + + true + + F5 + + StdPicture.Refresh + + + + Обновить + + + DontUse + Auto + + + УдалитьУстаревшиеКэшиРасширений + + <key>ru</key> + <value>Удалить устаревшие кэши расширений</value> + + 5 + + ru + Удалить устаревшие версии параметров работы расширений + + + true + + + + УдалитьУстаревшиеКэшиРасширений + + + DontUse + Auto + + + + + +
      diff --git a/SSL/src/CommonForms/УстановленныеРасширения/Help/ru.html b/SSL/src/CommonForms/Расширения/Help/ru.html similarity index 66% rename from SSL/src/CommonForms/УстановленныеРасширения/Help/ru.html rename to SSL/src/CommonForms/Расширения/Help/ru.html index 9341bd3f9..0f27ed21e 100644 --- a/SSL/src/CommonForms/УстановленныеРасширения/Help/ru.html +++ b/SSL/src/CommonForms/Расширения/Help/ru.html @@ -5,10 +5,16 @@

      В списке выводится:

      • Наименование - проставляется по умолчанию при подключении расширения, заполняется разработчиком;
      • Версия - проставляется программой по умолчанию при подключении расширения, заполняется разработчиком; -
      • Безопасный режим - у добавленного расширения флажок включается автоматически, администратор может выключить флажок или указать имя профиля безопасности.

      Добавление расширения

      +
    • Безопасный режим - у добавленного расширения флажок включается автоматически, администратор может выключить флажок или указать имя профиля безопасности.
    • В списке с помощью значков отображается состояние расширений. Расширение может быть:

      +
      • +
        подключено (тогда в списке зеленый кружок). Подробнее о подключении расширений см. http://its.1c.ru/db/v837doc#bookmark:dev:TI000001534;
        +
      • +
        не подключено (тогда в списке красный кружок);
        +
      • +
        установлено (тогда в списке серый кружок) - после перезапуска будет либо подключено, либо не подключено.

      Добавление расширения

      • Нажмите Добавить, укажите путь к файлу с расширением на компьютере.
      • Добавление расширения занимает некоторое время. -
      • После добавления расширения, для того чтобы продолжить работу с учетом сделанных изменений, нажмите Перезапустить. В модели сервиса этой кнопки нет, т.к. для неразделенных пользователей, например, для администраторов сервиса, при входе в область данных расширения области данных не подключаются, а остается подключенным состав расширений, который был до входа в область данных, т.е. при запуске сеанса. +
      • После добавления расширения, для того чтобы продолжить работу с учетом сделанных изменений, нажмите ссылку перезапустить. В приложении в Интернете этой ссылки нет, т.к. для неразделенных пользователей, например, для администраторов сервиса, при входе в область данных расширения области данных не подключаются, а остается подключенным состав расширений, который был до входа в область данных, т.е. при запуске сеанса.
      • После перезапуска расширение будет подключено к программе, и его функции можно будет использовать.

      Удаление расширения

      • Если расширение больше не нужно в программе, выделите его, нажмите Удалить.
        @@ -16,12 +22,12 @@
        Удаление расширения не отключает его. Все сеансы, запущенные после добавления расширения и до его удаления, продолжат работу с удаленным расширением.
      • В новых сеансах удаленное расширение более не подключится.

      Перезапуск программы

      -
      • Для того чтобы изменения, внесенные в список расширений, вступили в силу (т.е. были учтены при работе программы), нажмите Еще - Перезапустить программу. +
        • Для того чтобы изменения, внесенные в список расширений, вступили в силу (т.е. были учтены при работе программы), нажмите ссылку перезапустить программу.
        • Если при запуске расширение не удалось подключить к программе, тогда выводится сообщение об ошибке.

        Сохранение расширения в файл

        • -
          Выделите расширение, воспользуйтесь командой Сохранить как контекстного меню по правой кнопке мыши, укажите путь к файлу на компьютере.

        Обновление расширения

        +
        Выделите расширение, в контекстном меню по правой кнопке мыши нажмите Сохранить как, укажите путь к файлу на компьютере.

      Обновление расширения

      • -
        Выделите расширение, воспользуйтесь командой Обновить из файла на диске контекстного меню по правой кнопке мыши, укажите путь к файлу на компьютере.
        +
        Выделите расширение, в контекстном меню по правой кнопке мыши нажмите Обновить из файла на диске, укажите путь к файлу на компьютере.
      • Следует использовать эту команду для установки новой версии расширения.
      • diff --git a/SSL/src/CommonForms/УстановленныеРасширения/Module.bsl b/SSL/src/CommonForms/Расширения/Module.bsl similarity index 74% rename from SSL/src/CommonForms/УстановленныеРасширения/Module.bsl rename to SSL/src/CommonForms/Расширения/Module.bsl index b06ae07a9..02394fe9a 100644 --- a/SSL/src/CommonForms/УстановленныеРасширения/Module.bsl +++ b/SSL/src/CommonForms/Расширения/Module.bsl @@ -10,7 +10,13 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - ПроверитьДоступностьРазделенныхДанных(); + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. + Возврат; + КонецЕсли; + + НавигационнаяСсылка = "e1cib/app/ОбщаяФорма.Расширения"; + + УстановитьРежимРаботы(ЭтотОбъект, ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных()); Если Не Пользователи.ЭтоПолноправныйПользователь() Тогда ВызватьИсключение НСтр("ru = 'Недостаточно прав доступа. Обратитесь к администратору.'"); @@ -37,11 +43,35 @@ Элементы.СписокРасширенийКонтекстноеМенюСохранитьКак.Видимость = Ложь; КонецЕсли; + УстановленныеРасширенияДоступны = Справочники.ВерсииРасширений.УстановленныеРасширенияДоступны(); + Элементы.СписокРасширенийПодключено.Видимость = УстановленныеРасширенияДоступны; + ОбновитьСписок(); - УстановленныеРасширенияНедоступны = - СтандартныеПодсистемыСервер.УстановленныеРасширенияНедоступны(); +КонецПроцедуры + +&НаКлиенте +Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) + Если ИмяСобытия = "ВыполненВыходИзОбластиДанных" Тогда + УстановитьРежимРаботы(ЭтотОбъект, Ложь); + ПодключитьОбработчикОжидания("ОбновитьСписокОбработчикОжидания", 0.1, Истина); + + ИначеЕсли ИмяСобытия = "ВыполненВходВОбластьДанных" Тогда + УстановитьРежимРаботы(ЭтотОбъект, Истина); + ПодключитьОбработчикОжидания("ОбновитьСписокОбработчикОжидания", 0.1, Истина); + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы + +&НаКлиенте +Процедура ПредупреждениеОписаниеОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка) + СтандартнаяОбработка = Ложь; + ЗавершитьРаботуСистемы(Ложь, Истина); КонецПроцедуры #КонецОбласти @@ -164,11 +194,6 @@ КонецПроцедуры -&НаКлиенте -Процедура ПерезапуститьПрограмму(Команда) - ЗавершитьРаботуСистемы(Ложь, Истина); -КонецПроцедуры - &НаКлиенте Процедура УдалитьУстаревшиеКэшиРасширений(Команда) @@ -182,9 +207,34 @@ #Область СлужебныеПроцедурыИФункции +&НаКлиентеНаСервереБезКонтекста +Процедура УстановитьРежимРаботы(Форма, РазделенныйРежим = Истина) + + Элементы = Форма.Элементы; + + Если РазделенныйРежим Тогда + Элементы.СтраницыРежимРаботы.ТекущаяСтраница = Элементы.СтраницаРазделенныйРежим; + Иначе + Элементы.СтраницыРежимРаботы.ТекущаяСтраница = Элементы.СтраницаНеразделенныйРежим; + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ОбновитьСписокОбработчикОжидания() + + ОбновитьСписок(); + +КонецПроцедуры + &НаСервере Процедура ОбновитьСписок(ПослеДобавления = Ложь) + Если Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда + СписокРасширений.Очистить(); + Возврат; + КонецЕсли; + Если ПослеДобавления Тогда ИндексТекущейСтроки = СписокРасширений.Количество(); Иначе @@ -200,10 +250,14 @@ СписокРасширений.Очистить(); УстановитьПривилегированныйРежим(Истина); - Расширения = РасширенияКонфигурации.Получить(Неопределено); + Расширения = РасширенияКонфигурации.Получить(); + Если УстановленныеРасширенияДоступны Тогда + ПодключенныеРасширения = ИдентификаторыРасширений(ИсточникРасширенийКонфигурации.СеансАктивные); + ОтключенныеРасширения = ИдентификаторыРасширений(ИсточникРасширенийКонфигурации.СеансОтключенные); + КонецЕсли; УстановитьПривилегированныйРежим(Ложь); - Для Каждого Расширение Из Расширения Цикл + Для Каждого Расширение Из Расширения Цикл ЭлементРасширения = СписокРасширений.Добавить(); ЭлементРасширения.ИдентификаторРасширения = Расширение.УникальныйИдентификатор; @@ -213,6 +267,12 @@ ЭлементРасширения.Синоним = Расширение.Синоним; ЭлементРасширения.БезопасныйРежим = Расширение.БезопасныйРежим; + Если УстановленныеРасширенияДоступны Тогда + ЭлементРасширения.Подключено = + ?(ПодключенныеРасширения[Расширение.Имя + Расширение.ХешСумма] <> Неопределено, 0, + ?(ОтключенныеРасширения[Расширение.Имя + Расширение.ХешСумма] <> Неопределено, 2, 1)); + КонецЕсли; + Если ПустаяСтрока(ЭлементРасширения.Синоним) Тогда ЭлементРасширения.Синоним = ЭлементРасширения.Имя; КонецЕсли; @@ -232,19 +292,31 @@ ИндексТекущейСтроки).ПолучитьИдентификатор(); КонецЕсли; - СоставРасширенийИзменен = ПараметрыСеанса.УстановленныеРасширения - <> СтандартныеПодсистемыСервер.КонтрольныеСуммыРасширений(СписокРасширений); - - Если СтандартныеПодсистемыСервер.УстановленныеРасширенияНедоступны() Тогда - Элементы.ГруппаПредупреждение.Видимость = Ложь; - Элементы.ГруппаИнформация.Видимость = СоставРасширенийИзменен; - Иначе - Элементы.ГруппаПредупреждение.Видимость = СоставРасширенийИзменен; + Если УстановленныеРасширенияДоступны Тогда + Элементы.ГруппаПредупреждение.Видимость = ПараметрыСеанса.УстановленныеРасширения + <> Справочники.ВерсииРасширений.КонтрольныеСуммыРасширений(СписокРасширений); Элементы.ГруппаИнформация.Видимость = Ложь; + Иначе + Элементы.ГруппаПредупреждение.Видимость = Ложь; + Элементы.ГруппаИнформация.Видимость = Истина; КонецЕсли; КонецПроцедуры +&НаСервере +Функция ИдентификаторыРасширений(ИсточникРасширений) + + Расширения = РасширенияКонфигурации.Получить(, ИсточникРасширений); + Идентификаторы = Новый Соответствие; + + Для Каждого Расширение Из Расширения Цикл + Идентификаторы.Вставить(Расширение.Имя + Расширение.ХешСумма, Истина); + КонецЦикла; + + Возврат Идентификаторы; + +КонецФункции + &НаСервере Функция СохранитьНаСервере(ИдентификаторРасширения) @@ -340,9 +412,7 @@ Исключение ИнформацияОбОшибке = ИнформацияОбОшибке(); СкрытьДлительнуюОперацию(); - ПоказатьПредупреждение(, СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'После удаления, при подготовке оставшихся расширений к работе, произошла ошибка: - |%1'"), КраткоеПредставлениеОшибки(ИнформацияОбОшибке))); + ПоказатьПредупреждение(, КраткоеПредставлениеОшибки(ИнформацияОбОшибке)); Возврат; КонецПопытки; СкрытьДлительнуюОперацию(); @@ -369,6 +439,7 @@ КонецЕсли; КонецЦикла; Для Каждого ОписаниеРасширения Из УдаленныеРасширения Цикл + ОтключитьПредупрежденияБезопасности(ОписаниеРасширения.Расширение); ОписаниеРасширения.Расширение.Удалить(); КонецЦикла; Если РасширенияКонфигурации.Получить().Количество() = 0 Тогда @@ -376,10 +447,16 @@ КонецЕсли; ЗафиксироватьТранзакцию(); Исключение + ИнформацияОбОшибке = ИнформацияОбОшибке(); ОтменитьТранзакцию(); - ВызватьИсключение; + ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось удалить по причине: + | + |%1'"), КраткоеПредставлениеОшибки(ИнформацияОбОшибке)); + ВызватьИсключение ТекстОшибки; КонецПопытки; + ТекстОшибки = ""; Попытка ОбновитьПараметрыРаботыРасширений(); РасширенияИзменены = Истина; @@ -394,14 +471,25 @@ Исключение ОтменитьТранзакцию(); ТекущаяИнформацияОбОшибке = ИнформацияОбОшибке(); - ВызватьИсключение КраткоеПредставлениеОшибки(ИнформацияОбОшибке) + Символы.ПС + Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'При попытке восстановить удаленные расширения произошла еще одна ошибка: - |%1'"), КраткоеПредставлениеОшибки(ТекущаяИнформацияОбОшибке)); + ТекстОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке) + Символы.ПС + Символы.ПС + + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'При попытке восстановить удаленные расширения произошла еще одна ошибка: + |%1'"), КраткоеПредставлениеОшибки(ТекущаяИнформацияОбОшибке)); КонецПопытки; - ВызватьИсключение КраткоеПредставлениеОшибки(ИнформацияОбОшибке) + Символы.ПС + Символы.ПС - + НСтр("ru = 'Удаленные расширения были восстановлены.'"); + Если Не ЗначениеЗаполнено(ТекстОшибки) Тогда + ТекстОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке) + Символы.ПС + Символы.ПС + + НСтр("ru = 'Удаленные расширения были восстановлены.'"); + КонецЕсли; КонецПопытки; + Если ЗначениеЗаполнено(ТекстОшибки) Тогда + ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'После удаления, при подготовке оставшихся расширений к работе, произошла ошибка: + | + |%1'"), ТекстОшибки); + ВызватьИсключение ТекстОшибки; + КонецЕсли; + ОбновитьСписок(); КонецПроцедуры @@ -429,10 +517,6 @@ &НаКлиенте Процедура ПоказатьДлительнуюОперацию() - Если УстановленныеРасширенияНедоступны Тогда - Возврат; - КонецЕсли; - Элементы.СтраницыОбновление.ТекущаяСтраница = Элементы.СтраницаДлительнаяОперация; Элементы.СписокРасширенийДобавить.Доступность = Ложь; Элементы.СписокРасширенийУдалить.Доступность = Ложь; @@ -442,10 +526,6 @@ &НаКлиенте Процедура СкрытьДлительнуюОперацию() - Если УстановленныеРасширенияНедоступны Тогда - Возврат; - КонецЕсли; - Элементы.СтраницыОбновление.ТекущаяСтраница = Элементы.СтраницаСписокРасширений; Элементы.СписокРасширенийДобавить.Доступность = Истина; Элементы.СписокРасширенийУдалить.Доступность = Истина; @@ -454,16 +534,15 @@ &НаКлиенте Процедура ЗагрузитьРасширение(ИдентификаторРасширения, МножественныйВыбор = Ложь) - Контекст = Новый Структура; Контекст.Вставить("ИдентификаторРасширения", ИдентификаторРасширения); Контекст.Вставить("МножественныйВыбор", МножественныйВыбор); + Обработчик = Новый ОписаниеОповещения("ЗагрузитьРасширениеПослеПодтверждения", ЭтотОбъект, Контекст); ПараметрыФормы = Новый Структура("Ключ", "ПередДобавлениемРасширений"); ОткрытьФорму("ОбщаяФорма.ПредупреждениеБезопасности", ПараметрыФормы, , , , , Обработчик); - КонецПроцедуры &НаКлиенте @@ -474,7 +553,6 @@ Обработчик = Новый ОписаниеОповещения("ЗагрузитьРасширениеПослеУстановкиРасширения", ЭтотОбъект, Контекст); ОбщегоНазначенияКлиент.ПоказатьВопросОбУстановкеРасширенияРаботыСФайлами(Обработчик); - КонецПроцедуры &НаКлиенте @@ -554,8 +632,11 @@ Процедура ЗагрузитьРасширениеЗавершение() Контекст = ТекущийКонтекст; + + НеподключенныеРасширения = ""; Попытка - ИзменитьРасширенияНаСервере(Контекст.ПомещенныеФайлы, Контекст.ИдентификаторРасширения); + ИзменитьРасширенияНаСервере(Контекст.ПомещенныеФайлы, + Контекст.ИдентификаторРасширения, НеподключенныеРасширения); Исключение ИнформацияОбОшибке = ИнформацияОбОшибке(); СкрытьДлительнуюОперацию(); @@ -580,19 +661,33 @@ ТекстОповещения = НСтр("ru = 'Расширение конфигурации обновлено'", "ru"); КонецЕсли; - ПоказатьОповещениеПользователя(ТекстОповещения); + Если ЗначениеЗаполнено(НеподключенныеРасширения) Тогда + Если Контекст.ПомещенныеФайлы.Количество() > 1 Тогда + Если СтрНайти(НеподключенныеРасширения, ",") > 0 Тогда + Пояснение = НСтр("ru = 'Некоторые расширения не подключаются:'"); + Иначе + Пояснение = НСтр("ru = 'Одно расширение не подключается:'"); + КонецЕсли; + Пояснение = Пояснение + " " + НеподключенныеРасширения; + Иначе + Пояснение = НСтр("ru = 'Расширение не подключается.'"); + КонецЕсли; + Иначе + Пояснение = ""; + КонецЕсли; + + ПоказатьОповещениеПользователя(ТекстОповещения, , Пояснение); КонецПроцедуры &НаСервере -Процедура ИзменитьРасширенияНаСервере(ПомещенныеФайлы, ИдентификаторРасширения = Неопределено) +Процедура ИзменитьРасширенияНаСервере(ПомещенныеФайлы, ИдентификаторРасширения, НеподключенныеРасширения) ПроверитьДоступностьРазделенныхДанных(); РасширенияИзменены = Ложь; - Расширение = Неопределено; - + Если ИдентификаторРасширения <> Неопределено Тогда Расширение = НайтиРасширение(ИдентификаторРасширения); Если Расширение = Неопределено Тогда @@ -602,11 +697,13 @@ ДанныеРасширения = Расширение.ПолучитьДанные(); КонецЕсли; + ПроверяемыеРасширения = Новый Соответствие; ДобавленныеРасширения = Новый Массив; НачатьТранзакцию(); Попытка Если ИдентификаторРасширения <> Неопределено Тогда + ОтключитьПредупрежденияБезопасности(Расширение); Расширение.Записать(ПолучитьИзВременногоХранилища(ПомещенныеФайлы[0].Хранение)); Если ПрежнееИмяРасширения <> Расширение.Имя Тогда ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( @@ -614,11 +711,14 @@ Расширение.Имя, ПрежнееИмяРасширения); КонецЕсли; + ПроверяемыеРасширения.Вставить(Расширение.Имя, Расширение.Синоним); Иначе Для Каждого ПомещенныйФайл Из ПомещенныеФайлы Цикл Расширение = РасширенияКонфигурации.Создать(); + ОтключитьПредупрежденияБезопасности(Расширение); Расширение.Записать(ПолучитьИзВременногоХранилища(ПомещенныйФайл.Хранение)); ДобавленныеРасширения.Вставить(0, Расширение); + ПроверяемыеРасширения.Вставить(Расширение.Имя, Расширение.Синоним); КонецЦикла; КонецЕсли; ЗафиксироватьТранзакцию(); @@ -627,8 +727,9 @@ ВызватьИсключение; КонецПопытки; + ТекстОшибки = ""; Попытка - ОбновитьПараметрыРаботыРасширений(); + ОбновитьПараметрыРаботыРасширений(ПроверяемыеРасширения, НеподключенныеРасширения); РасширенияИзменены = Истина; Исключение ИнформацияОбОшибке = ИнформацияОбОшибке(); @@ -672,30 +773,30 @@ &НаСервере Процедура СписокРасширенийПриОкончанииРедактированияНаСервере(ИдентификаторРасширения) - НайденноеРасширение = СписокРасширений.НайтиПоИдентификатору(ИдентификаторРасширения); - - Если НайденноеРасширение = Неопределено Тогда + СтрокаСписка = СписокРасширений.НайтиПоИдентификатору(ИдентификаторРасширения); + + Если СтрокаСписка = Неопределено Тогда Возврат; КонецЕсли; - - Расширение = НайтиРасширение(НайденноеРасширение.ИдентификаторРасширения); - + + Расширение = НайтиРасширение(СтрокаСписка.ИдентификаторРасширения); + Если Расширение <> Неопределено Тогда - - Если ТипЗнч(Расширение.БезопасныйРежим) = Тип("Булево") Тогда - ПрежнееЗначениеБезопасногоРежима = Расширение.БезопасныйРежим; - Иначе - ПрежнееЗначениеБезопасногоРежима = Истина; + + Если Расширение.БезопасныйРежим <> СтрокаСписка.БезопасныйРежимФлаг Тогда + Расширение.БезопасныйРежим = СтрокаСписка.БезопасныйРежимФлаг; + + ОтключитьПредупрежденияБезопасности(Расширение); + Попытка + Расширение.Записать(); + Исключение + СтрокаСписка.БезопасныйРежимФлаг = Не СтрокаСписка.БезопасныйРежимФлаг; + ВызватьИсключение; + КонецПопытки; + + СтрокаСписка.БезопасныйРежим = СтрокаСписка.БезопасныйРежимФлаг; КонецЕсли; - - Если Не НайденноеРасширение.БезопасныйРежимФлаг И НайденноеРасширение.БезопасныйРежимФлаг <> ПрежнееЗначениеБезопасногоРежима Тогда - Расширение.БезопасныйРежим = НайденноеРасширение.БезопасныйРежим; - Иначе - НайденноеРасширение.БезопасныйРежим = Истина; - КонецЕсли; - - Расширение.Записать(); - + КонецЕсли; КонецПроцедуры @@ -712,12 +813,21 @@ ВременноеРасширение = РасширенияКонфигурации.Создать(); Иначе ВременноеРасширение = НайтиРасширение(ИдентификаторРасширения); + Если ВременноеРасширение = Неопределено Тогда + ВызватьИсключение + НСтр("ru = 'Текущее расширение не найдено в базе данных, + |возможно оно было удалено в другом сеансе.'"); + КонецЕсли; КонецЕсли; + ОтключитьПредупрежденияБезопасности(ВременноеРасширение); ВременноеРасширение.Записать(ПолучитьИзВременногоХранилища(ПомещенныйФайл.Хранение)); - ВременноеРасширение.Удалить(); - ОтменитьТранзакцию(); + Если ИдентификаторРасширения = Неопределено Тогда + ВременноеРасширение.Удалить(); + КонецЕсли; Разрешения.Добавить(РаботаВБезопасномРежиме.РазрешениеНаИспользованиеВнешнегоМодуля( ВременноеРасширение.Имя, Base64Строка(ВременноеРасширение.ХешСумма))); + + ЗафиксироватьТранзакцию(); Исключение ОтменитьТранзакцию(); ВызватьИсключение; @@ -738,27 +848,20 @@ КонецФункции &НаСервере -Процедура ОбновитьПараметрыРаботыРасширений() +Процедура ОбновитьПараметрыРаботыРасширений(ПроверяемыеРасширения = Неопределено, НеподключенныеРасширения = "") - Если СтандартныеПодсистемыСервер.УстановленныеРасширенияНедоступны() Тогда - Возврат; - КонецЕсли; + ПараметрыВыполнения = Новый Структура; + ПараметрыВыполнения.Вставить("ИмяКонфигурации", Метаданные.Имя); + ПараметрыВыполнения.Вставить("ВерсияКонфигурации", Метаданные.Версия); + ПараметрыВыполнения.Вставить("УстановленныеРасширения", Справочники.ВерсииРасширений.КонтрольныеСуммыРасширений()); + ПараметрыВыполнения.Вставить("ПроверяемыеРасширения", ПроверяемыеРасширения); + ПараметрыВыполнения.Вставить("АдресРезультата", ПоместитьВоВременноеХранилище(, УникальныйИдентификатор)); + ПараметрыПроцедуры = Новый Массив; + ПараметрыПроцедуры.Добавить(ПараметрыВыполнения); - УстановленныеРасширения = ПараметрыСеанса.УстановленныеРасширения; Попытка - ОчищаемыеПараметры = Новый Массив; - ОчищаемыеПараметры.Добавить("АдресСвойствРасширений"); - ОчищаемыеПараметры.Добавить("УстановленныеРасширения"); - ПараметрыСеанса.Очистить(ОчищаемыеПараметры); - ХранилищеСвойствРасширений = Справочники.ИдентификаторыОбъектовМетаданных.ХранилищеСвойствРасширений(); - ПараметрыВыполнения = Новый Структура; - ПараметрыВыполнения.Вставить("УстановленныеРасширения", ПараметрыСеанса.УстановленныеРасширения); - ПараметрыВыполнения.Вставить("ХранилищеСвойствРасширений", ХранилищеСвойствРасширений); - ПараметрыПроцедуры = Новый Массив; - ПараметрыПроцедуры.Добавить(ПараметрыВыполнения); - ФоновоеЗадание = ФоновыеЗадания.Выполнить( - "СтандартныеПодсистемыСервер.ЗаполнитьВсеПараметрыРаботыРасширенийФоновоеЗадание", - ПараметрыПроцедуры); + ФоновоеЗадание = РасширенияКонфигурации.ВыполнитьФоновоеЗаданиеСРасширениямиБазыДанных( + "СтандартныеПодсистемыСервер.ЗаполнитьВсеПараметрыРаботыРасширенийФоновоеЗадание", ПараметрыПроцедуры); Попытка ФоновоеЗадание.ОжидатьЗавершения(); Исключение @@ -773,15 +876,23 @@ ИнформацияОбОшибке = ИнформацияОбОшибке(); КонецПопытки; - ПараметрыСеанса.УстановленныеРасширения = УстановленныеРасширения; - ОчищаемыеПараметры = Новый Массив; - ОчищаемыеПараметры.Добавить("АдресСвойствРасширений"); - ПараметрыСеанса.Очистить(ОчищаемыеПараметры); - Если ИнформацияОбОшибке <> Неопределено Тогда ВызватьИсключение ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); КонецЕсли; + Результат = ПолучитьИзВременногоХранилища(ПараметрыВыполнения.АдресРезультата); + Если ТипЗнч(Результат) <> Тип("Структура") Тогда + ВызватьИсключение НСтр("ru = 'Фоновое задание подготовки расширений не вернуло результат.'"); + КонецЕсли; + + Если ЗначениеЗаполнено(Результат.ТекстОшибки) Тогда + ВызватьИсключение Результат.ТекстОшибки; + КонецЕсли; + + Если ЗначениеЗаполнено(Результат.НеподключенныеРасширения) Тогда + НеподключенныеРасширения = Результат.НеподключенныеРасширения; + КонецЕсли; + КонецПроцедуры &НаСервере @@ -793,4 +904,13 @@ КонецПроцедуры +&НаСервере +Процедура ОтключитьПредупрежденияБезопасности(Расширение) + + Если ОбщегоНазначения.ЕстьЗащитаОтОпасныхДействий() Тогда + Расширение.ЗащитаОтОпасныхДействий = ОбщегоНазначения.ОписаниеЗащитыБезПредупреждений(); + КонецЕсли; + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/CommonForms/УстановленныеРасширения/УстановленныеРасширения.mdo b/SSL/src/CommonForms/Расширения/Расширения.mdo similarity index 76% rename from SSL/src/CommonForms/УстановленныеРасширения/УстановленныеРасширения.mdo rename to SSL/src/CommonForms/Расширения/Расширения.mdo index 129b0e468..bb8f14bd5 100644 --- a/SSL/src/CommonForms/УстановленныеРасширения/УстановленныеРасширения.mdo +++ b/SSL/src/CommonForms/Расширения/Расширения.mdo @@ -1,9 +1,9 @@ - УстановленныеРасширения + Расширения ru - Установленные расширения + Расширения diff --git a/SSL/src/CommonForms/РедактированиеДополнительныхСведений/Form.form b/SSL/src/CommonForms/РедактированиеДополнительныхСведений/Form.form index 93f5be6cc..02442f651 100644 --- a/SSL/src/CommonForms/РедактированиеДополнительныхСведений/Form.form +++ b/SSL/src/CommonForms/РедактированиеДополнительныхСведений/Form.form @@ -423,7 +423,6 @@ OnCreateAtServer ПриСозданииНаСервере - 60 LockOwner true true diff --git a/SSL/src/CommonForms/РедактированиеДополнительныхСведений/Module.bsl b/SSL/src/CommonForms/РедактированиеДополнительныхСведений/Module.bsl index 39518876a..0646f5888 100644 --- a/SSL/src/CommonForms/РедактированиеДополнительныхСведений/Module.bsl +++ b/SSL/src/CommonForms/РедактированиеДополнительныхСведений/Module.bsl @@ -31,10 +31,10 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Оповещение = Новый ОписаниеОповещения("ЗаписатьИЗакрытьЗавершение", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы); КонецПроцедуры @@ -176,10 +176,26 @@ ТаблицаЗначенийСвойств.Очистить(); КонецЕсли; - Таблица = УправлениеСвойствамиСлужебный.ПолучитьТаблицуЗначенийСвойств( + ПроверяемаяТаблица = "РегистрСведений.ДополнительныеСведения"; + ЗначениеДоступа = Тип("ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения"); + + Таблица = УправлениеСвойствамиСлужебный.ЗначенияСвойств( ЗначенияСвойств, ДоступныеНаборыСвойств, Истина); - Для каждого Строка Из Таблица Цикл + МодульУправлениеДоступомСлужебный = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступомСлужебный"); + Для Каждого Строка Из Таблица Цикл + ПроверяемыеСвойства = Новый Массив; + ПроверяемыеСвойства.Добавить(Строка.Свойство); + Если Не Пользователи.ЭтоПолноправныйПользователь() И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда + РазрешенныеСвойства = МодульУправлениеДоступомСлужебный.РазрешенныеЗначенияДляДинамическогоСписка( + ПроверяемаяТаблица, + ЗначениеДоступа, + ПроверяемыеСвойства); + Если РазрешенныеСвойства.Количество() = 0 Тогда + Продолжить; + КонецЕсли; + КонецЕсли; + НоваяСтрока = ТаблицаЗначенийСвойств.Добавить(); ЗаполнитьЗначенияСвойств(НоваяСтрока, Строка); НоваяСтрока.НомерКартинки = ?(Строка.Удалено, 0, -1); @@ -199,13 +215,8 @@ ЗначенияСвойств = Новый Массив; Для каждого Строка Из ТаблицаЗначенийСвойств Цикл - - Если ЗначениеЗаполнено(Строка.Значение) - И (Строка.Значение <> Ложь) Тогда - - Значение = Новый Структура("Свойство, Значение", Строка.Свойство, Строка.Значение); - ЗначенияСвойств.Добавить(Значение); - КонецЕсли; + Значение = Новый Структура("Свойство, Значение", Строка.Свойство, Строка.Значение); + ЗначенияСвойств.Добавить(Значение); КонецЦикла; ЗаписатьНаборСвойствВРегистр(СсылкаНаОбъект, ЗначенияСвойств); @@ -217,18 +228,22 @@ &НаСервереБезКонтекста Процедура ЗаписатьНаборСвойствВРегистр(Знач Ссылка, Знач ЗначенияСвойств) - Набор = РегистрыСведений.ДополнительныеСведения.СоздатьНаборЗаписей(); - Набор.Отбор.Объект.Установить(Ссылка); - - Для каждого Строка Из ЗначенияСвойств Цикл - Запись = Набор.Добавить(); - Запись.Свойство = Строка.Свойство; - Запись.Значение = Строка.Значение; - Запись.Объект = Ссылка; + Для Каждого Строка Из ЗначенияСвойств Цикл + Набор = РегистрыСведений.ДополнительныеСведения.СоздатьНаборЗаписей(); + Набор.Отбор.Объект.Установить(Ссылка); + Набор.Отбор.Свойство.Установить(Строка.Свойство); + + Если ЗначениеЗаполнено(Строка.Значение) + И Строка.Значение <> Ложь Тогда + Запись = Набор.Добавить(); + Запись.Свойство = Строка.Свойство; + Запись.Значение = Строка.Значение; + Запись.Объект = Ссылка; + КонецЕсли; + + Набор.Записать(); КонецЦикла; - Набор.Записать(); - КонецПроцедуры &НаСервере diff --git a/SSL/src/CommonForms/РедактированиеТабличногоДокумента/Form.form b/SSL/src/CommonForms/РедактированиеТабличногоДокумента/Form.form index 7d67b4ab5..75f6738fa 100644 --- a/SSL/src/CommonForms/РедактированиеТабличногоДокумента/Form.form +++ b/SSL/src/CommonForms/РедактированиеТабличногоДокумента/Form.form @@ -1317,9 +1317,7 @@ 93 true - 2 true - 1 true @@ -1355,7 +1353,6 @@ true Label - true true Style.ПоясняющийТекст @@ -1373,7 +1370,6 @@ ru Предупреждение - true ПредупреждениеExtendedTooltip 141 @@ -1474,8 +1470,6 @@ OnCreateAtServer ПриСозданииНаСервере - 100 - 20 DontBlock Use true diff --git a/SSL/src/CommonForms/РедактированиеТабличногоДокумента/Module.bsl b/SSL/src/CommonForms/РедактированиеТабличногоДокумента/Module.bsl index 221dadf3f..d5fdb37a3 100644 --- a/SSL/src/CommonForms/РедактированиеТабличногоДокумента/Module.bsl +++ b/SSL/src/CommonForms/РедактированиеТабличногоДокумента/Module.bsl @@ -57,25 +57,27 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) - ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Сохранить изменения в %1?'"), ИмяДокумента); ОписаниеОповещения = Новый ОписаниеОповещения("ПодтвердитьИЗакрыть", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(ОписаниеОповещения, Отказ, ТекстВопроса); + ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Сохранить изменения в %1?'"), ИмяДокумента); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(ОписаниеОповещения, Отказ, ЗавершениеРаботы, ТекстВопроса); - Если Не Модифицированность Тогда - ПараметрыОповещения = Новый Структура; - ПараметрыОповещения.Вставить("ПутьКФайлу", Параметры.ПутьКФайлу); - ПараметрыОповещения.Вставить("ИмяОбъектаМетаданныхМакета", Параметры.ИмяОбъектаМетаданныхМакета); - Если ЗаписьВыполнена Тогда - ИмяСобытия = "Запись_ТабличныйДокумент"; - ПараметрыОповещения.Вставить("ТабличныйДокумент", ТабличныйДокумент); - Иначе - ИмяСобытия = "ОтменаРедактированияТабличногоДокумента"; - КонецЕсли; - Оповестить(ИмяСобытия, ПараметрыОповещения, ЭтотОбъект); + Если Модифицированность Или ЗавершениеРаботы Тогда + Возврат; КонецЕсли; + ПараметрыОповещения = Новый Структура; + ПараметрыОповещения.Вставить("ПутьКФайлу", Параметры.ПутьКФайлу); + ПараметрыОповещения.Вставить("ИмяОбъектаМетаданныхМакета", Параметры.ИмяОбъектаМетаданныхМакета); + Если ЗаписьВыполнена Тогда + ИмяСобытия = "Запись_ТабличныйДокумент"; + ПараметрыОповещения.Вставить("ТабличныйДокумент", ТабличныйДокумент); + Иначе + ИмяСобытия = "ОтменаРедактированияТабличногоДокумента"; + КонецЕсли; + Оповестить(ИмяСобытия, ПараметрыОповещения, ЭтотОбъект); + КонецПроцедуры &НаКлиенте diff --git a/SSL/src/CommonForms/РезультатПроверки/Form.form b/SSL/src/CommonForms/РезультатПроверки/Form.form new file mode 100644 index 000000000..b78e0edf8 --- /dev/null +++ b/SSL/src/CommonForms/РезультатПроверки/Form.form @@ -0,0 +1,228 @@ + + + + <key>ru</key> + <value>Результат проверки</value> + + + ЗаголовокПредупреждения + 5 + true + true + + true + + + ЗаголовокПредупрежденияРасширеннаяПодсказка + 7 + Label + true + true + + Left + + + + ЗаголовокПредупрежденияКонтекстноеМеню + 6 + true + + Label + true + true + + Left + + + + ТекстПредупреждения + 11 + true + true + + true + + + ТекстПредупреждения + + None + + ТекстПредупрежденияРасширеннаяПодсказка + 13 + Label + true + true + + Left + + + + ТекстПредупрежденияКонтекстноеМеню + 12 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + Инструкция + 8 + + <key>ru</key> + <value>Типичные проблемы при работе с программами электронной подписи и их решение</value> + + true + true + + true + + + ИнструкцияРасширеннаяПодсказка + 10 + Label + true + true + + Left + + + + ИнструкцияКонтекстноеМеню + 9 + true + + Label + true + + + Click + ИнструкцияНажатие + + true + Left + + + Bottom + true + + ФормаКоманднаяПанель + -1 + + ФормаЗакрыть + 16 + + <key>ru</key> + <value>ОК</value> + + true + true + + true + + + ФормаЗакрытьРасширеннаяПодсказка + 17 + Label + true + true + + Left + + + Form.StandardCommand.Close + Auto + true + true + true + UserCmds + Auto + + Center + + + OnCreateAtServer + ПриСозданииНаСервере + + Abort + Cancel + Help + Ignore + No + OK + RestoreValues + Retry + SaveValues + Yes + LockOwner + DefaultButton + true + Vertical + true + auto + true + + ТекстПредупреждения + + <key>ru</key> + <value>Текст предупреждения</value> + + 1 + + String + + + + true + + + true + + + + ОК + + <key>ru</key> + <value>ОК</value> + + 1 + + ru + ОК + + + true + + DontUse + Auto + + + ТекстПредупреждения + + String + + + + + ЗаголовокПредупреждения + + String + + + + + + + + diff --git a/SSL/src/CommonForms/РезультатПроверки/Module.bsl b/SSL/src/CommonForms/РезультатПроверки/Module.bsl new file mode 100644 index 000000000..d265e65fd --- /dev/null +++ b/SSL/src/CommonForms/РезультатПроверки/Module.bsl @@ -0,0 +1,21 @@ +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + Элементы.ЗаголовокПредупреждения.Заголовок = Параметры.ЗаголовокПредупреждения; + ТекстПредупреждения = Параметры.ТекстПредупреждения; +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы + +&НаКлиенте +Процедура ИнструкцияНажатие(Элемент) + + ЭлектроннаяПодписьКлиент.ОткрытьИнструкциюПоТипичнымПроблемамПриРаботеСПрограммами(); + +КонецПроцедуры + +#КонецОбласти + diff --git a/SSL/src/CommonForms/РезультатПроверки/РезультатПроверки.mdo b/SSL/src/CommonForms/РезультатПроверки/РезультатПроверки.mdo new file mode 100644 index 000000000..8fa2b95df --- /dev/null +++ b/SSL/src/CommonForms/РезультатПроверки/РезультатПроверки.mdo @@ -0,0 +1,11 @@ + + + РезультатПроверки + + ru + Результат проверки + + PersonalComputer + MobileDevice + true + diff --git a/SSL/src/CommonForms/Сервис1СКонтрагентНеПодключен/Form.form b/SSL/src/CommonForms/Сервис1СКонтрагентНеПодключен/Form.form index 5e717aae9..97069fb1f 100644 --- a/SSL/src/CommonForms/Сервис1СКонтрагентНеПодключен/Form.form +++ b/SSL/src/CommonForms/Сервис1СКонтрагентНеПодключен/Form.form @@ -34,7 +34,6 @@ true true - 3 true @@ -70,7 +69,6 @@ true Label - true true Style.LargeTextFont @@ -108,7 +106,6 @@ true Label - true true Left @@ -164,7 +161,8 @@ <fontstyle -31>Сервис также предоставляется по </><fontstyle -31>договору</><fontstyle -31> </><fontstyle -31>ИТС уровня ПРОФ.</> <fontstyle -31>Для приобретения сервиса </><fontstyle -31><b>1С:Контрагент</></><fontstyle -31> обратитесь к обслуживающему Вас партнеру фирмы "1С". </> -<fontstyle -31>Если у Вас нет обслуживающего партнера, Вы можете выбрать его из </><fontstyle -31><link http://its.1c.ru/news/redirect?utm_medium=prog&utm_source=configid&utm_content=contentid&url=http://its.1c.ru/partners>списка партнеров в Вашем регионе</></><fontstyle -31>.</> +<fontstyle -31>Если у Вас нет обслуживающего партнера, Вы можете выбрать его из </><fontstyle -31><link http://its.1c.ru/news/redirect?utm_medium=prog&utm_source=configid&utm_content=contentid&url=http://its.1c.ru/partners>списка партнеров в Вашем регионе</></><fontstyle -31>.</> + true true @@ -188,7 +186,6 @@ true Label - true true @@ -256,7 +253,6 @@ Form.StandardCommand.Close Normal - Auto true true UserCmds diff --git a/SSL/src/CommonForms/Сертификат/Form.form b/SSL/src/CommonForms/Сертификат/Form.form index bc41dada0..35059af5a 100644 --- a/SSL/src/CommonForms/Сертификат/Form.form +++ b/SSL/src/CommonForms/Сертификат/Form.form @@ -34,7 +34,6 @@ Left true - true true true true @@ -77,7 +76,6 @@ Left true - true true true true @@ -138,35 +136,6 @@ ВертикальнаяГруппа1 131 - - ВертикальныйОтступ - 133 - true - - true - - - ВертикальныйОтступРасширеннаяПодсказка - 135 - Label - true - true - - Left - - - - ВертикальныйОтступКонтекстноеМеню - 134 - true - - Label - true - true - - Left - - НазначениеПодписание 125 @@ -309,8 +278,6 @@ Left true - true - 2 true true true @@ -579,7 +546,6 @@ true true true - 1 true MultiRow
        true
        @@ -833,7 +799,6 @@ true true true - 1 true MultiRow
        true
        @@ -1025,7 +990,7 @@ Left true - 5 + 15 true true true @@ -1035,6 +1000,53 @@ Normal
        + + ВнутреннееСодержаниеИдентификатор + 165 + + <key>ru</key> + <value>OID</value> + + true + true + + true + + + ВнутреннееСодержание.Идентификатор + + + ВнутреннееСодержаниеИдентификаторРасширеннаяПодсказка + 167 + Label + true + true + + Left + + + + ВнутреннееСодержаниеИдентификаторКонтекстноеМеню + 166 + true + + InputField + Auto + true + Left + true + + 15 + true + true + false + true + true + true + true + Normal + + ВнутреннееСодержаниеЗначение 102 @@ -1068,7 +1080,7 @@ Left true - 15 + 30 true true true @@ -1174,7 +1186,6 @@ true true true - 1 true MultiRow
        true
        @@ -1336,7 +1347,6 @@ OnCreateAtServer ПриСозданииНаСервере - 60 LockOwner true true @@ -1508,13 +1518,31 @@ true + + Идентификатор + + <key>ru</key> + <value>Идентификатор</value> + + 3 + + String + + + + true + + + true + + Значение <key>ru</key> <value>Значение</value> - 2 + 4 String @@ -1667,20 +1695,6 @@ true - - Реквизит1 - 11 - - String - - - - true - - - true - - НазначениеШифрование diff --git a/SSL/src/CommonForms/Сертификат/Module.bsl b/SSL/src/CommonForms/Сертификат/Module.bsl index de05c4f54..d3bdd3a10 100644 --- a/SSL/src/CommonForms/Сертификат/Module.bsl +++ b/SSL/src/CommonForms/Сертификат/Module.bsl @@ -98,8 +98,12 @@ ПоказатьПредупреждение(, НСтр("ru = 'Сертификат действителен.'")); ИначеЕсли Результат <> Неопределено Тогда - ПоказатьПредупреждение(, НСтр("ru = 'Сертификат недействителен по причине:'") - + Символы.ПС + Результат); + ПараметрыПредупреждения = Новый Структура; + + ПараметрыПредупреждения.Вставить("ТекстПредупреждения", Результат); + ПараметрыПредупреждения.Вставить("ЗаголовокПредупреждения", НСтр("ru = 'Сертификат недействителен по причине:'")); + + ОткрытьФорму("ОбщаяФорма.РезультатПроверки", ПараметрыПредупреждения); КонецЕсли; КонецПроцедуры @@ -174,6 +178,8 @@ Сертификат = Новый СертификатКриптографии(ДвоичныеДанныеСертификата); Если ГруппаВнутреннихПолей = "Общие" Тогда + Элементы.ВнутреннееСодержаниеИдентификатор.Видимость = Ложь; + ДобавитьСвойство(Сертификат, "Версия", НСтр("ru = 'Версия'")); ДобавитьСвойство(Сертификат, "ДатаНачала", НСтр("ru = 'Дата начала'")); ДобавитьСвойство(Сертификат, "ДатаОкончания", НСтр("ru = 'Дата окончания'")); @@ -182,11 +188,51 @@ ДобавитьСвойство(Сертификат, "ОткрытыйКлюч", НСтр("ru = 'Открытый ключ'"), Истина); ДобавитьСвойство(Сертификат, "Отпечаток", НСтр("ru = 'Отпечаток'"), Истина); ДобавитьСвойство(Сертификат, "СерийныйНомер", НСтр("ru = 'Серийный номер'"), Истина); - Иначе - Коллекция = Сертификат[ГруппаВнутреннихПолей]; - Для каждого КлючИЗначение Из Коллекция Цикл + + ИначеЕсли ГруппаВнутреннихПолей = "РасширенныеСвойства" Тогда + Элементы.ВнутреннееСодержаниеИдентификатор.Видимость = Ложь; + + Коллекция = Сертификат.РасширенныеСвойства; + Для Каждого КлючИЗначение Из Коллекция Цикл ДобавитьСвойство(Коллекция, КлючИЗначение.Ключ, КлючИЗначение.Ключ); КонецЦикла; + Иначе + Элементы.ВнутреннееСодержаниеИдентификатор.Видимость = Истина; + + ИменаИдентификаторов = Новый СписокЗначений; + ИменаИдентификаторов.Добавить("OID2_5_4_3", "CN"); + ИменаИдентификаторов.Добавить("OID2_5_4_6", "C"); + ИменаИдентификаторов.Добавить("OID2_5_4_8", "ST"); + ИменаИдентификаторов.Добавить("OID2_5_4_7", "L"); + ИменаИдентификаторов.Добавить("OID2_5_4_9", "Street"); + ИменаИдентификаторов.Добавить("OID2_5_4_10", "O"); + ИменаИдентификаторов.Добавить("OID2_5_4_11", "OU"); + ИменаИдентификаторов.Добавить("OID2_5_4_12", "T"); + ИменаИдентификаторов.Добавить("OID1_2_840_113549_1_9_1", "E"); + + ИменаИдентификаторов.Добавить("OID1_2_643_100_1", "OGRN"); + ИменаИдентификаторов.Добавить("OID1_2_643_100_5", "OGRNIP"); + ИменаИдентификаторов.Добавить("OID1_2_643_100_3", "SNILS"); + ИменаИдентификаторов.Добавить("OID1_2_643_3_131_1_1", "INN"); + ИменаИдентификаторов.Добавить("OID2_5_4_4", "SN"); + ИменаИдентификаторов.Добавить("OID2_5_4_42", "GN"); + + ИменаИИдентификаторы = Новый Соответствие; + Коллекция = Сертификат[ГруппаВнутреннихПолей]; + + Для Каждого ЭлементСписка Из ИменаИдентификаторов Цикл + Если Коллекция.Свойство(ЭлементСписка.Значение) Тогда + ДобавитьСвойство(Коллекция, ЭлементСписка.Значение, ЭлементСписка.Представление); + КонецЕсли; + ИменаИИдентификаторы.Вставить(ЭлементСписка.Значение, Истина); + ИменаИИдентификаторы.Вставить(ЭлементСписка.Представление, Истина); + КонецЦикла; + + Для Каждого КлючИЗначение Из Коллекция Цикл + Если ИменаИИдентификаторы.Получить(КлючИЗначение.Ключ) = Неопределено Тогда + ДобавитьСвойство(Коллекция, КлючИЗначение.Ключ, КлючИЗначение.Ключ); + КонецЕсли; + КонецЦикла; КонецЕсли; КонецПроцедуры @@ -206,7 +252,14 @@ КонецЕсли; Строка = ВнутреннееСодержание.Добавить(); - Строка.Свойство = Представление; + Если СтрНачинаетсяС(Свойство, "OID") Тогда + Строка.Идентификатор = СтрЗаменить(Сред(Свойство, 4), "_", "."); + Если Свойство <> Представление Тогда + Строка.Свойство = Представление; + КонецЕсли; + Иначе + Строка.Свойство = Представление; + КонецЕсли; Если НижнийРегистр = Истина Тогда Строка.Значение = НРег(Значение); diff --git a/SSL/src/CommonForms/СинхронизацияДанных/Form.form b/SSL/src/CommonForms/СинхронизацияДанных/Form.form index d4c30680b..7282a279f 100644 --- a/SSL/src/CommonForms/СинхронизацияДанных/Form.form +++ b/SSL/src/CommonForms/СинхронизацияДанных/Form.form @@ -36,9 +36,7 @@ <id>156</id> <autoFill>true</autoFill> </contextMenu> - <width>5</width> <autoMaxWidth>true</autoMaxWidth> - <height>2</height> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="core:PictureRef"> @@ -85,8 +83,6 @@ </contextMenu> <type>Label</type> <width>75</width> - <autoMaxWidth>true</autoMaxWidth> - <height>3</height> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -147,8 +143,6 @@ </contextMenu> <type>Label</type> <width>75</width> - <autoMaxWidth>true</autoMaxWidth> - <height>3</height> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -203,7 +197,7 @@ <name>ПодменюСоздать</name> <id>91</id> <items xsi:type="form:FormGroup"> - <name>ПодменюПрочее</name> + <name>ПодменюДругиеПрограммы</name> <id>147</id> <visible>true</visible> <enabled>true</enabled> @@ -212,15 +206,15 @@ </userVisible> <title> <key>ru</key> - <value>По правилам конвертации с</value> + <value>Другие программы</value> ru - Подменю прочее + Подменю другие программы false - ПодменюПрочееExtendedTooltip + ПодменюДругиеПрограммыРасширеннаяПодсказка 464 Label true @@ -260,35 +254,6 @@
        - - ПодменюXDTO - 548 - true - true - - true - - - <key>ru</key> - <value>Универсальный формат обмена</value> - - - ru - Подменю РИБ - - false - - ПодменюXDTOРасширеннаяПодсказка - 549 - Label - true - true - - Left - - - - true true @@ -553,9 +518,7 @@ 308 true - 4 true - 2 true @@ -598,7 +561,6 @@ Label 35 - true true Left @@ -694,7 +656,6 @@ Label 35 - true 3 true true @@ -826,9 +787,7 @@ 287 true - 2 true - 1 true @@ -894,9 +853,7 @@ 285 true - 2 true - 1 true @@ -960,7 +917,6 @@ true Label - true true Left @@ -994,7 +950,6 @@ true Label - true true Left @@ -1507,7 +1462,6 @@ Label 23 - true true Left @@ -1598,7 +1552,6 @@ Left true - true 6 true false @@ -1699,7 +1652,6 @@ Label 23 - true true Left @@ -1797,7 +1749,6 @@ Left true - true true true true @@ -2180,9 +2131,7 @@ 137 true - 4 true - 2 true @@ -2222,7 +2171,6 @@ true Label - true true true @@ -2293,7 +2241,6 @@ Label 81 - true true Left @@ -2542,7 +2489,7 @@
        - СписокСостоянияУзловГруппа3 + ГруппаКоманднойПанелиИзменениеИСостав 361 СписокСостоянияУзловИзменитьУзелИнформационнойБазы @@ -2603,8 +2550,16 @@ true + + <key>ru</key> + <value>Группа командной панели изменение и состав</value> + + + ru + Группа командной панели изменение и состав + - СписокСостоянияУзловГруппа3ExtendedTooltip + ГруппаКоманднойПанелиИзменениеИСоставРасширеннаяПодсказка 469 Label true @@ -3877,17 +3832,69 @@ - - СписокСостоянияУзловКонтекстноеМенюИзменитьУзелИнформационнойБазы - 317 + + КонтекстноеМенюСписокИзменениеИСостав + 556 + + СписокСостоянияУзловКонтекстноеМенюИзменитьУзелИнформационнойБазы + 317 + true + true + + true + + + СписокСостоянияУзловКонтекстноеМенюИзменитьУзелИнформационнойБазыExtendedTooltip + 491 + Label + true + true + + Left + + + Form.Command.ИзменитьУзелИнформационнойБазы + Normal + Auto + true + true + UserCmds + Auto + + + СписокСостоянияУзловКонтекстноеМенюСоставОтправляемыхДанных + 362 + true + true + + true + + + СписокСостоянияУзловКонтекстноеМенюСоставОтправляемыхДанныхExtendedTooltip + 492 + Label + true + true + + Left + + + Form.Command.СоставОтправляемыхДанных + Normal + Auto + true + true + UserCmds + Auto + true true true - СписокСостоянияУзловКонтекстноеМенюИзменитьУзелИнформационнойБазыExtendedTooltip - 491 + КонтекстноеМенюСписокИзменениеИСоставРасширеннаяПодсказка + 557 Label true true @@ -3895,39 +3902,7 @@ Left
        - Form.Command.ИзменитьУзелИнформационнойБазы - Normal - Auto - true - true - UserCmds - Auto - - - СписокСостоянияУзловКонтекстноеМенюСоставОтправляемыхДанных - 362 - true - true - - true - - - СписокСостоянияУзловКонтекстноеМенюСоставОтправляемыхДанныхExtendedTooltip - 492 - Label - true - true - - Left - - - Form.Command.СоставОтправляемыхДанных - Normal - Auto - true - true - UserCmds - Auto + КонтекстноеМенюСписокСостоянияДиагностика diff --git a/SSL/src/CommonForms/СинхронизацияДанных/Module.bsl b/SSL/src/CommonForms/СинхронизацияДанных/Module.bsl index e4656c2dc..aaf7d6cb4 100644 --- a/SSL/src/CommonForms/СинхронизацияДанных/Module.bsl +++ b/SSL/src/CommonForms/СинхронизацияДанных/Module.bsl @@ -7,10 +7,6 @@ Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; - - Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка) Тогда - Возврат; - КонецЕсли; РольДоступнаДобавлениеИзменениеОбменовДанными = ОбменДаннымиСервер.ЕстьПраваНаАдминистрированиеОбменов(); Если Не РольДоступнаДобавлениеИзменениеОбменовДанными Тогда @@ -113,12 +109,21 @@ ЗаданыТекущиеДанные = Элементы.СписокСостоянияУзлов.ТекущиеДанные <> Неопределено; + // Командная панель. Элементы.Настройка.Доступность = ЗаданыТекущиеДанные; - Элементы.СписокСостоянияУзловИзменитьУзелИнформационнойБазы.Доступность = ЗаданыТекущиеДанные; + Элементы.ГруппаКоманднойПанелиИзменениеИСостав.Доступность = ЗаданыТекущиеДанные; + Элементы.СписокСостоянияУзловГруппаКнопокВыполненияОбменаДанными.Доступность = ЗаданыТекущиеДанные; + Элементы.НастроитьРасписаниеВыполненияОбмена.Доступность = ЗаданыТекущиеДанные; + Элементы.СписокСостоянияУзловЗагрузитьПравилаСинхронизацииДанных.Доступность = ЗаданыТекущиеДанные; + Элементы.СписокСостоянияУзловИнформацияПоОбмену.Доступность = ЗаданыТекущиеДанные; + Элементы.СписокСостоянияУзловУдалитьНастройкуСинхронизации.Доступность = ЗаданыТекущиеДанные; + // Контекстное меню. Элементы.ГруппаКнопокВыполненияОбменаДанными.Доступность = ЗаданыТекущиеДанные; + Элементы.КонтекстноеМенюСписокИзменениеИСостав.Доступность = ЗаданыТекущиеДанные; Элементы.КонтекстноеМенюСписокСостоянияДиагностика.Доступность = ЗаданыТекущиеДанные; Элементы.ГруппаКнопокНастройкиРасписания.Доступность = ЗаданыТекущиеДанные; + Элементы.СписокСостоянияУзловКонтекстноеМенюИнформацияПоОбмену.Доступность = ЗаданыТекущиеДанные; КонецПроцедуры @@ -175,6 +180,10 @@ ТекущиеДанные = Элементы.СписокСостоянияУзлов.ТекущиеДанные; + Если ТекущиеДанные = Неопределено Тогда + Возврат; + КонецЕсли; + ОбменДаннымиКлиент.ОбработкаКомандыНастроитьРасписаниеВыполненияОбмена(ТекущиеДанные.УзелИнформационнойБазы, ЭтотОбъект); КонецПроцедуры @@ -196,6 +205,11 @@ Иначе ТекущиеДанные = Элементы.СписокСостоянияУзлов.ТекущиеДанные; + + Если ТекущиеДанные = Неопределено Тогда + Возврат; + КонецЕсли; + УзелОбмена = ТекущиеДанные.УзелИнформационнойБазы; КонецЕсли; @@ -295,6 +309,10 @@ Иначе ТекущиеДанные = Элементы.СписокСостоянияУзлов.ТекущиеДанные; + Если ТекущиеДанные = Неопределено Тогда + Возврат; + КонецЕсли; + УзелОбмена = ТекущиеДанные.УзелИнформационнойБазы; КонецЕсли; @@ -664,14 +682,18 @@ ИмяПланаОбмена = Элемент.Значение; МенеджерПланаОбмена = ПланыОбмена[ИмяПланаОбмена]; + Если Не Пользователи.ЭтоПолноправныйПользователь(, Истина) + И ОбменДаннымиПовтИсп.ЭтоПланОбменаРаспределеннойИнформационнойБазы(ИмяПланаОбмена) Тогда + // Для создания обмена РИБ требуются права администратора системы. + Продолжить; + КонецЕсли; + ЭтоПланОбменаXDTO = ОбменДаннымиПовтИсп.ЭтоПланОбменаXDTO(ИмяПланаОбмена); Если Метаданные.ПланыОбмена[ИмяПланаОбмена].РаспределеннаяИнформационнаяБаза Тогда РодительскаяГруппа = Элементы.ПодменюРИБ; - ИначеЕсли ЭтоПланОбменаXDTO Тогда - РодительскаяГруппа = Элементы.ПодменюXDTO; Иначе - РодительскаяГруппа = Элементы.ПодменюПрочее; + РодительскаяГруппа = Элементы.ПодменюДругиеПрограммы; КонецЕсли; Если МенеджерПланаОбмена.ИспользоватьПомощникСозданияОбменаДанными() @@ -685,15 +707,17 @@ Если СписокВозможныхНастроекОбмена.Количество() > 1 Тогда + ВидГруппыКнопок = ОбменДаннымиСервер.ЗначениеНастройкиПланаОбмена(ИмяПланаОбмена, "ВидГруппыДляВариантовНастроек"); + // Не прячем варианты обмена в подменю, если план обмена один. + Если СписокПлановОбмена.Количество() = 1 Тогда + ВидГруппыКнопок = ВидГруппыФормы.ГруппаКнопок; + КонецЕсли; + СуммирующаяГруппа = Элементы.Добавить(ИмяПланаОбмена, Тип("ГруппаФормы"), РодительскаяГруппа); - СуммирующаяГруппа.Вид = ВидГруппыФормы.ГруппаКнопок; + СуммирующаяГруппа.Вид = ВидГруппыКнопок; СуммирующаяГруппа.Заголовок = ОбменДаннымиСервер.ЗначениеНастройкиПланаОбмена(ИмяПланаОбмена, "НаименованиеКонфигурацииКорреспондента"); - Если СписокПлановОбмена.Количество() > 1 Тогда - СуммирующаяГруппа.Вид = ВидГруппыФормы.Подменю; - КонецЕсли; - КонецЕсли; Для Каждого ПредопределеннаяНастройка Из СписокВозможныхНастроекОбмена Цикл diff --git a/SSL/src/CommonForms/Склонения/Form.form b/SSL/src/CommonForms/Склонения/Form.form index 5abc0e737..54e572f96 100644 --- a/SSL/src/CommonForms/Склонения/Form.form +++ b/SSL/src/CommonForms/Склонения/Form.form @@ -70,7 +70,9 @@ Left true + 40 true + 50 true true true @@ -115,6 +117,7 @@ Left true + 40 true true true @@ -160,6 +163,7 @@ Left true + 40 true true true @@ -205,6 +209,7 @@ Left true + 40 true true true @@ -250,6 +255,7 @@ Left true + 40 true true true @@ -295,6 +301,7 @@ Left true + 40 true true true @@ -362,9 +369,7 @@ 41 true - 2 true - 1 true @@ -377,7 +382,8 @@ 35 <key>ru</key> - <value>Склонение было выполнено без использования сервиса morpher.ru. Включить использование сервиса можно в настройках программы.</value> + <value>Склонение было выполнено без использования сервиса morpher.ru. +Включить использование сервиса можно в настройках программы.</value> true true @@ -400,9 +406,7 @@ true Label - true true - true Style.ПоясняющийТекст @@ -419,11 +423,6 @@ ru Группа информационная надпись включение сервиса - - ru - Группа информационная надпись включение сервиса - - true ГруппаИнформационнаяНадписьВключениеСервисаРасширеннаяПодсказка 44 @@ -465,9 +464,7 @@ 53 true - 2 true - 1 true @@ -503,9 +500,7 @@ true Label - true true - true Style.ПоясняющийТекст @@ -522,11 +517,6 @@ ru Группа информационная надпись доступность сервиса - - ru - Группа информационная надпись доступность сервиса - - true ГруппаИнформационнаяНадписьДоступностьСервисаРасширеннаяПодсказка 48 @@ -551,11 +541,6 @@ ru Группа информационная надпись сервис склонения - - ru - Группа информационная надпись сервис склонения - - true ГруппаИнформационнаяНадписьСервисСклоненияРасширеннаяПодсказка 46 @@ -671,7 +656,6 @@ OnCreateAtServer ПриСозданииНаСервере - 50 LockOwner true true diff --git a/SSL/src/CommonForms/Склонения/Module.bsl b/SSL/src/CommonForms/Склонения/Module.bsl index 7d19bdbcd..63f7d707b 100644 --- a/SSL/src/CommonForms/Склонения/Module.bsl +++ b/SSL/src/CommonForms/Склонения/Module.bsl @@ -117,7 +117,7 @@ Элементы.ГруппаИнформационнаяНадписьСервисСклонения.Видимость = Ложь; Возврат; КонецЕсли; - + ИспользоватьСервисСклонения = Константы.ИспользоватьСервисСклоненияMorpher.Получить(); Если ИспользоватьСервисСклонения Тогда diff --git a/SSL/src/CommonForms/СменаПароля/Form.form b/SSL/src/CommonForms/СменаПароля/Form.form index b91efedc7..c22208c49 100644 --- a/SSL/src/CommonForms/СменаПароля/Form.form +++ b/SSL/src/CommonForms/СменаПароля/Form.form @@ -5,7 +5,7 @@ 1 <key>ru</key> - <value>Для входа в программу нужно сменить пароль на новый.</value> + <value>Для входа в программу необходимо сменить пароль на новый.</value> true true @@ -28,7 +28,6 @@ true Label - true true Left @@ -36,157 +35,73 @@ ГруппаПароль - 14 + 18 + + СтарыйПароль + 66 + true + true + + true + + + СтарыйПароль + + + СтарыйПарольРасширеннаяПодсказка + 68 + Label + true + true + + Left + + + + СтарыйПарольКонтекстноеМеню + 67 + true + + InputField + Enter + true + Left + true + + 14 + true + true + false + true + true + true + true + true + Normal + + - ГруппаПарольСтолбцы - 39 - - ГруппаПарольЛевыйСтолбец - 16 - - СтарыйПарольНадпись - 69 - - <key>ru</key> - <value>Старый пароль:</value> - - true - true - - true - - - СтарыйПарольНадписьРасширеннаяПодсказка - 71 - Label - true - true - - Left - - - - СтарыйПарольНадписьКонтекстноеМеню - 70 - true - - Label - true - true - - Left - - - - НовыйПарольНадпись - 20 - - <key>ru</key> - <value>Новый пароль:</value> - - true - true - - true - - - НовыйПарольНадписьРасширеннаяПодсказка - 22 - Label - true - true - - Left - - - - НовыйПарольНадписьКонтекстноеМеню - 21 - true - - Label - true - true - - Left - - - - ПодтверждениеПароляНадпись - 23 - - <key>ru</key> - <value>Подтверждение:</value> - - true - true - - true - - - ПодтверждениеПароляНадписьРасширеннаяПодсказка - 25 - Label - true - true - - Left - - - - ПодтверждениеПароляНадписьКонтекстноеМеню - 24 - true - - Label - true - true - - Left - - - - ГоризонтальныйОтступ - 47 - true - true - - true - - - ГоризонтальныйОтступРасширеннаяПодсказка - 49 - Label - true - true - - Left - - - - ГоризонтальныйОтступКонтекстноеМеню - 48 - true - - Label - true - true - - Left - - + ГруппаНовыйПароль + 72 + + НовыйПароль + 8 true true true - - <key>ru</key> - <value>Группа пароль левый столбец</value> - + + НовыйПароль + + Button + + OnChange + ПарольПриИзменении + - ГруппаПарольЛевыйСтолбецРасширеннаяПодсказка - 17 + НовыйПарольРасширеннаяПодсказка + 10 Label true true @@ -194,552 +109,51 @@ Left
        - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + НовыйПарольКонтекстноеМеню + 9 + true + + InputField + Enter + true + Left + true + + + EditTextChange + ПарольИзменениеТекстаРедактирования + + 14 + true + true + false + true + true + true + true + true + Normal - - ГруппаПарольПравыйСтолбец - 18 - - СтарыйПароль - 66 - true - true - - true - - - СтарыйПароль - - None - - СтарыйПарольРасширеннаяПодсказка - 68 - Label - true - true - - Left - - - - СтарыйПарольКонтекстноеМеню - 67 - true - - InputField - Enter - true - Left - true - - 14 - true - true - false - true - true - true - true - true - Normal - - - - ГруппаНовыйПароль - 72 - - НовыйПароль - 8 - true - true - - true - - - НовыйПароль - - None - Button - - OnChange - ПарольПриИзменении - - - НовыйПарольРасширеннаяПодсказка - 10 - Label - true - true - - Left - - - - НовыйПарольКонтекстноеМеню - 9 - true - - InputField - Enter - true - Left - true - - - EditTextChange - ПарольИзменениеТекстаРедактирования - - 14 - true - true - false - true - true - true - true - true - Normal - - - - НовыйПароль2 - 96 - true - - true - - - НовыйПароль - - None - Button - - OnChange - ПарольПриИзменении - - - НовыйПароль2РасширеннаяПодсказка - 98 - Label - true - true - - Left - - - - НовыйПароль2КонтекстноеМеню - 97 - true - - InputField - Enter - true - Left - true - - - EditTextChange - ПарольИзменениеТекстаРедактирования - - 14 - true - true - false - true - true - true - true - Normal - - - - СоздатьПароль - 29 - true - true - - true - - true - - СоздатьПарольРасширеннаяПодсказка - 30 - Label - true - true - - Left - - - UsualButton - Form.Command.СоздатьПароль - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Группа новый пароль</value> - - - ГруппаНовыйПарольРасширеннаяПодсказка - 73 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаПодтверждение - 74 - - Подтверждение - 11 - true - true - - true - - - Подтверждение - - None - - OnChange - ПарольПриИзменении - - - ПодтверждениеРасширеннаяПодсказка - 13 - Label - true - true - - Left - - - - ПодтверждениеКонтекстноеМеню - 12 - true - - InputField - Enter - true - Left - true - - - EditTextChange - ПарольИзменениеТекстаРедактирования - - 14 - true - true - false - true - true - true - true - true - Normal - - - - ГруппаОшибки - 81 - - СтраницаОшибка - 83 - - НадписьПарольНеСовпадает - 76 - - <key>ru</key> - <value>(не совпадает)</value> - - true - true - - true - - - НадписьПарольНеСовпадаетРасширеннаяПодсказка - 78 - Label - true - true - - Left - - - - НадписьПарольНеСовпадаетКонтекстноеМеню - 77 - true - - Label - true - true - true - - Style.ПоясняющийОшибкуТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница ошибка</value> - - - СтраницаОшибкаРасширеннаяПодсказка - 84 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - СтраницаПустая - 85 - - НадписьПустая - 87 - true - true - - true - - - НадписьПустаяРасширеннаяПодсказка - 89 - Label - true - true - - Left - - - - НадписьПустаяКонтекстноеМеню - 88 - true - - Label - true - true - - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница пустая</value> - - - СтраницаПустаяРасширеннаяПодсказка - 86 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Группа ошибки</value> - - - ГруппаОшибкиРасширеннаяПодсказка - 82 - Label - true - true - - Left - - - Pages - - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа подтверждение</value> - - false - - ГруппаПодтверждениеРасширеннаяПодсказка - 75 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаПоказыватьНовыйПароль - 31 - - ПоказыватьНовыйПароль - 26 - true - true - - true - - - ПоказыватьНовыйПароль - - Right - - OnChange - ПоказыватьНовыйПарольПриИзменении - - - ПоказыватьНовыйПарольРасширеннаяПодсказка - 28 - Label - true - true - - Left - - - - ПоказыватьНовыйПарольКонтекстноеМеню - 27 - true - - CheckBoxField - Enter - true - Left - true - - - true - true - - true - - - <key>ru</key> - <value>Группа показывать новый пароль</value> - - - ГруппаПоказыватьНовыйПарольРасширеннаяПодсказка - 32 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true + + НовыйПароль2 + 96 true true - - <key>ru</key> - <value>Группа пароль правый столбец</value> - - - ru - Группа пароль правый столбец - + + НовыйПароль + + Button + + OnChange + ПарольПриИзменении + - ГруппаПарольПравыйСтолбецРасширеннаяПодсказка - 19 + НовыйПароль2РасширеннаяПодсказка + 98 Label true true @@ -747,16 +161,60 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + НовыйПароль2КонтекстноеМеню + 97 + true + + InputField + Enter + true + Left + true + + + EditTextChange + ПарольИзменениеТекстаРедактирования + + 14 + true + true + false + true + true + true + true + Normal + + СоздатьПароль + 29 + true + true + + true + + true + + СоздатьПарольРасширеннаяПодсказка + 30 + Label + true + true + + Left + + + UsualButton + Form.Command.СоздатьПароль + Normal + Auto + true + true + UserCmds + Auto + true true @@ -764,11 +222,11 @@ <key>ru</key> - <value>Группа пароль столбцы</value> + <value>Группа новый пароль</value> - ГруппаПарольСтолбцыРасширеннаяПодсказка - 40 + ГруппаНовыйПарольРасширеннаяПодсказка + 73 Label true true @@ -785,17 +243,226 @@ Auto - - ВертикальныйОтступ - 36 + + ГруппаПодтверждение + 74 + + Подтверждение + 11 + true + true + + true + + + Подтверждение + + + OnChange + ПарольПриИзменении + + + ПодтверждениеРасширеннаяПодсказка + 13 + Label + true + true + + Left + + + + ПодтверждениеКонтекстноеМеню + 12 + true + + InputField + Enter + true + Left + true + + + EditTextChange + ПарольИзменениеТекстаРедактирования + + 14 + true + true + false + true + true + true + true + true + Normal + + + + ГруппаОшибки + 81 + + СтраницаОшибка + 83 + + НадписьПарольНеСовпадает + 76 + + <key>ru</key> + <value>(не совпадает)</value> + + true + true + + true + + + НадписьПарольНеСовпадаетРасширеннаяПодсказка + 78 + Label + true + true + + Left + + + + НадписьПарольНеСовпадаетКонтекстноеМеню + 77 + true + + Label + true + true + + Style.ПоясняющийОшибкуТекст + + + Left + + + true + true + + true + + + <key>ru</key> + <value>Страница ошибка</value> + + + СтраницаОшибкаРасширеннаяПодсказка + 84 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СтраницаПустая + 85 + + НадписьПустая + 87 + true + true + + true + + + НадписьПустаяРасширеннаяПодсказка + 89 + Label + true + true + + Left + + + + НадписьПустаяКонтекстноеМеню + 88 + true + + Label + true + true + + Left + + + true + true + + true + + + <key>ru</key> + <value>Страница пустая</value> + + + СтраницаПустаяРасширеннаяПодсказка + 86 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Группа ошибки</value> + + + ГруппаОшибкиРасширеннаяПодсказка + 82 + Label + true + true + + Left + + + Pages + + Auto + + true true true + + <key>ru</key> + <value>Группа подтверждение</value> + + false - ВертикальныйОтступРасширеннаяПодсказка - 38 + ГруппаПодтверждениеРасширеннаяПодсказка + 75 Label true true @@ -803,21 +470,83 @@ Left
        - - ВертикальныйОтступКонтекстноеМеню - 37 - true - - Label - 38 - true - true - - System.DefaultGUIFont - 25 - - - Left + UsualGroup + + Auto + true + true + Auto + Auto + + + + ГруппаПоказыватьНовыйПароль + 31 + + ПоказыватьНовыйПароль + 26 + true + true + + true + + + ПоказыватьНовыйПароль + + Right + + OnChange + ПоказыватьНовыйПарольПриИзменении + + + ПоказыватьНовыйПарольРасширеннаяПодсказка + 28 + Label + true + true + + Left + + + + ПоказыватьНовыйПарольКонтекстноеМеню + 27 + true + + CheckBoxField + Enter + true + Left + true + + + true + true + + true + + + <key>ru</key> + <value>Группа показывать новый пароль</value> + + + ГруппаПоказыватьНовыйПарольРасширеннаяПодсказка + 32 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto true @@ -829,10 +558,9 @@ ru Группа пароль - false ГруппаПарольРасширеннаяПодсказка - 15 + 19 Label true true diff --git a/SSL/src/CommonForms/СменаПароля/Help/ru.html b/SSL/src/CommonForms/СменаПароля/Help/ru.html index 74183c9f1..9924de353 100644 --- a/SSL/src/CommonForms/СменаПароля/Help/ru.html +++ b/SSL/src/CommonForms/СменаПароля/Help/ru.html @@ -8,9 +8,7 @@
      • В целях обеспечения безопасности вводимые символы паролей скрываются. Для того чтобы видеть вводимые символы пароля, включите флажок Показывать новый пароль.
      • Нажмите Установить пароль.

      Автоматическое создание пароля

      • Если самостоятельно создать пароль сложно, нажмите кнопку Создать пароль. -
        • Программа предлагает Новый пароль. Поле Подтверждение в данном случае становится недоступным. -
        • Флажок Показывать новый пароль включается автоматически. -
        • Нажмите Установить пароль.

      Рекомендации по созданию пароля для входа в программу

      +
      • Программа предлагает новый пароль.  Запомните его или скопируйте в буфер обмена, затем напишите или вставьте в поле Новый пароль.

      Рекомендации по созданию пароля для входа в программу

      Хороший пароль должен:

      • быть малопонятным выражением.
      • состоять не менее чем из восьми символов. diff --git a/SSL/src/CommonForms/СменаПароля/Module.bsl b/SSL/src/CommonForms/СменаПароля/Module.bsl index 14f8ff87e..3d3a2fd52 100644 --- a/SSL/src/CommonForms/СменаПароля/Module.bsl +++ b/SSL/src/CommonForms/СменаПароля/Module.bsl @@ -68,7 +68,6 @@ Если Не ДополнительныеПараметры.ЭтоТекущийПользовательИБ Или Не ДополнительныеПараметры.ПарольУстановлен Тогда - Элементы.СтарыйПарольНадпись.Видимость = Ложь; Элементы.СтарыйПароль.Видимость = Ложь; АвтоЗаголовок = Ложь; Заголовок = НСтр("ru = 'Установка пароля'"); @@ -179,19 +178,12 @@ КонецПроцедуры -&НаКлиенте -Процедура БездействиеПриЗакрытии() Экспорт - - Возврат; - -КонецПроцедуры - &НаКлиенте Процедура ПоказатьТекстОшибкиИСообщитьОЗакрытииЗавершение(Контекст) Экспорт Если ЭтотОбъект.ОписаниеОповещенияОЗакрытии <> Неопределено Тогда ВыполнитьОбработкуОповещения(ЭтотОбъект.ОписаниеОповещенияОЗакрытии); - ЭтотОбъект.ОписаниеОповещенияОЗакрытии = Новый ОписаниеОповещения("БездействиеПриЗакрытии", ЭтотОбъект); + ЭтотОбъект.ОписаниеОповещенияОЗакрытии = Неопределено; КонецЕсли; КонецПроцедуры @@ -221,7 +213,6 @@ &НаСервере Процедура ПоказыватьНовыйПарольПриИзмененииНаСервере() - Элементы.ПодтверждениеПароляНадпись.Доступность = Не ПоказыватьНовыйПароль; Элементы.Подтверждение.Доступность = Не ПоказыватьНовыйПароль; Элементы.НовыйПароль.Видимость = Не ПоказыватьНовыйПароль; @@ -272,7 +263,16 @@ ПараметрыВыполнения.Вставить("ПарольПользователяСервиса", ПарольПользователяСервиса); ПараметрыВыполнения.Вставить("ТолькоПроверить", ВернутьПарольБезУстановки); - ТекстОшибки = ПользователиСлужебный.ОбработатьНовыйПароль(ПараметрыВыполнения); + Попытка + ТекстОшибки = ПользователиСлужебный.ОбработатьНовыйПароль(ПараметрыВыполнения); + Исключение + ИнформацияОбОшибке = ИнформацияОбОшибке(); + Если ПараметрыВыполнения.Свойство("ОшибкаЗаписанаВЖурналРегистрации") Тогда + ТекстОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке); + Иначе + ВызватьИсключение; + КонецЕсли; + КонецПопытки; Если Не ЗначениеЗаполнено(ТекстОшибки) Тогда Возврат ""; diff --git a/SSL/src/CommonForms/СозданиеНачальногоОбразаСФайлами/Form.form b/SSL/src/CommonForms/СозданиеНачальногоОбразаСФайлами/Form.form index a00114ebb..2629c66e4 100644 --- a/SSL/src/CommonForms/СозданиеНачальногоОбразаСФайлами/Form.form +++ b/SSL/src/CommonForms/СозданиеНачальногоОбразаСФайлами/Form.form @@ -47,6 +47,7 @@ Left true + 1 ru @@ -137,6 +138,10 @@ Top 1 + + OnChange + ПолноеИмяФайловойБазыПриИзменении + ПолноеИмяФайловойБазыExtendedTooltip 57 @@ -162,7 +167,7 @@ StartChoice ПолноеИмяФайловойБазыНачалоВыбора - true + 90 true true true @@ -209,7 +214,7 @@ Left true - true + 90 true true true @@ -1010,7 +1015,7 @@ StartChoice ПутьКАрхивуСФайламиТомовНачалоВыбора - true + 90 true true true @@ -1057,7 +1062,7 @@ Left true - true + 90 true true true @@ -1193,7 +1198,6 @@ true Label - true true Left @@ -1340,7 +1344,6 @@ true Label - true true Left @@ -1504,7 +1507,6 @@ OnCreateAtServer ПриСозданииНаСервере - 80 LockOwner true true @@ -1841,57 +1843,6 @@ true - - ДлительнаяОперация - - <key>ru</key> - <value>Длительная операция</value> - - 19 - - Boolean - - - true - - - true - - - - ДлительнаяОперацияЗавершена - - <key>ru</key> - <value>Длительная операция завершена</value> - - 20 - - Boolean - - - true - - - true - - - - ДлительнаяОперацияЗавершенаСОшибкой - - <key>ru</key> - <value>Длительная операция завершена с ошибкой</value> - - 21 - - Boolean - - - true - - - true - - ДопИнформацияВыполнение @@ -1912,24 +1863,6 @@ <common>true</common> </edit> </attributes> - <attributes> - <name>ИдентификаторДлительнойОперации</name> - <title> - <key>ru</key> - <value>Идентификатор длительной операции</value> - - 23 - - String - - - - true - - - true - - ПроцентВыполнения @@ -1951,46 +1884,13 @@ <common>true</common> </edit> </attributes> - <attributes> - <name>ФоновоеЗаданиеАдресХранилища</name> - <title> - <key>ru</key> - <value>Фоновое задание адрес хранилища</value> - - 25 - - String - - - - true - - - true - - - - ФоновоеЗаданиеИдентификатор - - <key>ru</key> - <value>Фоновое задание идентификатор</value> - - 26 - - - true - - - true - - АдресПараметровЗадания <key>ru</key> <value>Адрес параметров задания</value> - 27 + 25 String diff --git a/SSL/src/CommonForms/СозданиеНачальногоОбразаСФайлами/Module.bsl b/SSL/src/CommonForms/СозданиеНачальногоОбразаСФайлами/Module.bsl index 41f6de9b1..9a11c0787 100644 --- a/SSL/src/CommonForms/СозданиеНачальногоОбразаСФайлами/Module.bsl +++ b/SSL/src/CommonForms/СозданиеНачальногоОбразаСФайлами/Module.bsl @@ -10,6 +10,7 @@ Менеджер = ПланыОбмена[Параметры.Узел.Метаданные().Имя]; + СистемнаяИнформация = Новый СистемнаяИнформация; Если Параметры.Узел = Менеджер.ЭтотУзел() Тогда ВызватьИсключение НСтр("ru = 'Создание начального образа для данного узла невозможно.'"); @@ -18,7 +19,6 @@ ТипСУБД = ""; Узел = Параметры.Узел; МожноСоздатьФайловуюБазу = Истина; - СистемнаяИнформация = Новый СистемнаяИнформация; Если СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Linux_x86_64 Тогда МожноСоздатьФайловуюБазу = Ложь; КонецЕсли; @@ -43,12 +43,15 @@ ЕстьФайлыВТомах = ФайловыеФункцииСлужебный.ЕстьФайлыВТомах(); КонецЕсли; + ОССервераWindows = СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86 + ИЛИ СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86_64; + Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда + Элементы.ПолноеИмяФайловойБазыLinux.Видимость = НЕ ОССервераWindows; + Элементы.ПолноеИмяФайловойБазы.Видимость = ОССервераWindows; + КонецЕсли; + Если ЕстьФайлыВТомах Тогда - ТипПлатформыСервера = ОбщегоНазначенияПовтИсп.ТипПлатформыСервера(); - - Если ТипПлатформыСервера = ТипПлатформы.Windows_x86 - ИЛИ ТипПлатформыСервера = ТипПлатформы.Windows_x86_64 Тогда - + Если ОССервераWindows Тогда Элементы.ПолноеИмяФайловойБазы.АвтоОтметкаНезаполненного = Истина; Элементы.ПутьКАрхивуСФайламиТомов.АвтоОтметкаНезаполненного = Истина; Иначе @@ -68,8 +71,10 @@ &НаКлиенте Процедура ПриОткрытии(Отказ) + Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.ИсходныеДанные; Элементы.СоздатьНачальныйОбраз.Видимость = Истина; + КонецПроцедуры #КонецОбласти @@ -115,6 +120,31 @@ КонецПроцедуры +&НаКлиенте +Процедура ПолноеИмяФайловойБазыПриИзменении(Элемент) + + ПолноеИмяФайловойБазыWindows = СокрЛП(ПолноеИмяФайловойБазыWindows); + СтруктураПути = ОбщегоНазначенияКлиентСервер.РазложитьПолноеИмяФайла(ПолноеИмяФайловойБазыWindows); + Если НЕ ПустаяСтрока(СтруктураПути.Путь) Тогда + ПутьКФайлу = СтруктураПути.Путь; + Если ПустаяСтрока(СтруктураПути.Расширение) Тогда + ПутьКФайлу = СтруктураПути.ПолноеИмя; + ПолноеИмяФайловойБазыWindows = ОбщегоНазначенияКлиентСервер.ДобавитьКонечныйРазделительПути(СтруктураПути.ПолноеИмя); + ПолноеИмяФайловойБазыWindows = ПолноеИмяФайловойБазыWindows + "1Cv8.1CD"; + КонецЕсли; + МассивКаталогов = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ПутьКФайлу, "\", Истина); + ПолныйПуть = ""; + Для Каждого Каталог Из МассивКаталогов Цикл + ПолныйПуть = ПолныйПуть + Каталог + "\"; + Файл = Новый Файл(ПолныйПуть); + Если НЕ Файл.Существует() Тогда + СоздатьКаталог(ПолныйПуть); + КонецЕсли; + КонецЦикла; + КонецЕсли; + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиКомандФормы @@ -124,6 +154,7 @@ ОчиститьСообщения(); Если ВидБазы = 0 И НЕ МожноСоздатьФайловуюБазу Тогда + ВызватьИсключение НСтр("ru = 'Создание начального образа файловой информационной базы |на данной платформе не поддерживается.'"); @@ -140,7 +171,7 @@ ПараметрыЗадания.Вставить("ПолноеИмяФайловойБазыWindows", ПолноеИмяФайловойБазыWindows); ПараметрыЗадания.Вставить("ПолноеИмяФайловойБазыLinux", ПолноеИмяФайловойБазыLinux); ПараметрыЗадания.Вставить("НаименованиеЗадания", НСтр("ru = 'Создание файлового начального образа'")); - ПараметрыЗадания.Вставить("НаименованиеПроцедуры", "СоздатьФайловыйНачальныйОбразНаСервере"); + ПараметрыЗадания.Вставить("НаименованиеПроцедуры", "ФайловыеФункцииСлужебный.СоздатьФайловыйНачальныйОбразНаСервере"); Иначе // Серверный начальный образ. СтрокаСоединения = @@ -157,7 +188,7 @@ ПараметрыЗадания.Вставить("СтрокаСоединения", СтрокаСоединения); ПараметрыЗадания.Вставить("НаименованиеЗадания", НСтр("ru = 'Создание серверного начального образа'")); - ПараметрыЗадания.Вставить("НаименованиеПроцедуры", "СоздатьСерверныйНачальныйОбразНаСервере"); + ПараметрыЗадания.Вставить("НаименованиеПроцедуры", "ФайловыеФункцииСлужебный.СоздатьСерверныйНачальныйОбразНаСервере"); КонецЕсли; Результат = ПодготовитьДанныеДляСозданияНачальногоОбраза(ПараметрыЗадания, ВидБазы); Если ТипЗнч(Результат) = Тип("Структура") Тогда @@ -268,29 +299,29 @@ &НаКлиенте Процедура ЗапуститьСозданиеНачальногоОбраза() - ФоновоеЗаданиеЗапуститьНаКлиенте(); - -КонецПроцедуры - -&НаКлиенте -Процедура ФоновоеЗаданиеЗапуститьНаКлиенте() - - Результат = ФоновоеЗаданиеЗапустить(); - Если Результат.ФоновоеЗаданиеЗапущено Тогда - ПерейтиКСтраницеОжидания(); - ПодключитьОбработчикОжидания("ФоновоеЗаданиеПроверитьНаКлиенте", 2, Истина); - ИначеЕсли Результат.Отказ Тогда - // Ошибка, фоновое задание не запустилось. + Результат = СоздатьНачальныйОбразНаСервере(ВидБазы); + Если Результат = Неопределено Тогда Возврат; - Иначе - // Фоновое задание выполнилось сразу же. + КонецЕсли; + + Если Результат.Статус = "Выполняется" Тогда + ОповещениеОЗавершении = Новый ОписаниеОповещения("СоздатьНачальныйОбразНаСервереЗавершение", ЭтотОбъект); + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ПараметрыОжидания.ВыводитьПрогрессВыполнения = Истина; + ПараметрыОжидания.ОповещениеОПрогрессеВыполнения = Новый ОписаниеОповещения("СоздатьНачальныйОбразНаСервереПрогресс", ЭтотОбъект);; + ДлительныеОперацииКлиент.ОжидатьЗавершение(Результат, ОповещениеОЗавершении, ПараметрыОжидания); + ПерейтиКСтраницеОжидания(); + ИначеЕсли Результат.Статус = "Выполнено" Тогда ПерейтиКСтраницеОжидания(); ПроцентВыполнения = 100; ДопИнформацияВыполнение = ""; // Переход к странице с результатом с задержкой в 1 сек. ПодключитьОбработчикОжидания("ЗапуститьПереходРезультат", 1, Истина); + Иначе + ВызватьИсключение НСтр("ru = 'Не удалось создать начальный образ по причине:'") + " " + Результат.КраткоеПредставлениеОшибки; КонецЕсли; - + КонецПроцедуры &НаКлиенте @@ -300,116 +331,58 @@ КонецПроцедуры &НаСервере -Функция ФоновоеЗаданиеЗапустить() - - Результат = Новый Структура; - Результат.Вставить("ФоновоеЗаданиеЗапущено", Ложь); - Результат.Вставить("Отказ", Истина); +Функция СоздатьНачальныйОбразНаСервере(Знач Действие) Если ЭтоАдресВременногоХранилища(АдресПараметровЗадания) Тогда ПараметрыЗадания = ПолучитьИзВременногоХранилища(АдресПараметровЗадания); Если ТипЗнч(ПараметрыЗадания) = Тип("Структура") Тогда // Запуск фонового задания. - Результат.Отказ = Ложь; - РезультатФоновогоЗадания = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "ФайловыеФункцииСлужебный." + ПараметрыЗадания.НаименованиеПроцедуры, - ПараметрыЗадания, - ПараметрыЗадания.НаименованиеЗадания); + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = ПараметрыЗадания.НаименованиеЗадания; - ФоновоеЗаданиеИдентификатор = РезультатФоновогоЗадания.ИдентификаторЗадания; - ФоновоеЗаданиеАдресХранилища = РезультатФоновогоЗадания.АдресХранилища; - - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - ФоновоеЗаданиеЗагрузитьРезультат(Результат); - Результат.ФоновоеЗаданиеЗапущено = Ложь; - Иначе - ФоновоеЗаданиеПрочитатьПромежуточныйРезультат(); - Результат.ФоновоеЗаданиеЗапущено = Истина; - КонецЕсли; + Возврат ДлительныеОперации.ВыполнитьВФоне(ПараметрыЗадания.НаименованиеПроцедуры, ПараметрыЗадания, ПараметрыВыполнения); КонецЕсли; КонецЕсли; - Возврат Результат; - КонецФункции &НаКлиенте -Процедура ФоновоеЗаданиеПроверитьНаКлиенте() - Результат = ФоновоеЗаданиеПолучитьРезультат(); - Если Результат.ФоновоеЗаданиеВыполнено Тогда - ПроцентВыполнения = 100; - ДопИнформацияВыполнение = ""; - // Переход дальше с задержкой на 1 секунду. - ПодключитьОбработчикОжидания("ЗапуститьПереходРезультат", 1, Истина); - - Иначе - ПодключитьОбработчикОжидания("ФоновоеЗаданиеПроверитьНаКлиенте", 2, Истина); - КонецЕсли; -КонецПроцедуры - -&НаСервере -Процедура ФоновоеЗаданиеПрочитатьПромежуточныйРезультат() - Прогресс = ДлительныеОперации.ПрочитатьПрогресс(ФоновоеЗаданиеИдентификатор); - Если Прогресс <> Неопределено Тогда - ПроцентВыполнения = Прогресс.Процент; - ДопИнформацияВыполнение = Прогресс.Текст; - КонецЕсли; -КонецПроцедуры - -&НаСервере -Процедура ФоновоеЗаданиеЗагрузитьРезультат(Результат) - РезультатВыполненияВФоне = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); - Если РезультатВыполненияВФоне = Неопределено Тогда +Процедура СоздатьНачальныйОбразНаСервереЗавершение(Результат, ДополнительныеПараметры) Экспорт + + Если Результат = Неопределено Тогда + ПроцентВыполнения = 0; + ДопИнформацияВыполнение = НСтр("ru = 'Действие отменено администратором.'"); + ЗапуститьПереходРезультат(); Возврат; КонецЕсли; - УдалитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); - - ФоновоеЗаданиеАдресХранилища = Неопределено; - ФоновоеЗаданиеИдентификатор = Неопределено; + + Если Результат.Статус = "Ошибка" Тогда + ПроцентВыполнения = 0; + Элементы.СтатусГотово.Заголовок = НСтр("ru = 'Не удалось создать начальный образ по причине:'") + " " + Результат.КраткоеПредставлениеОшибки; + ЗапуститьПереходРезультат(); + Возврат; + КонецЕсли; + + ПроцентВыполнения = 100; + ДопИнформацияВыполнение = ""; + ЗапуститьПереходРезультат(); + КонецПроцедуры -&НаСервере -Функция ФоновоеЗаданиеПолучитьРезультат() - Результат = Новый Структура; - Результат.Вставить("ФоновоеЗаданиеВыполнено", Ложь); - Состояние = СостояниеЗадания(ФоновоеЗаданиеИдентификатор); +&НаКлиенте +Процедура СоздатьНачальныйОбразНаСервереПрогресс(Прогресс, ДополнительныеПараметры) Экспорт - Если Состояние = "Активно" Тогда - ФоновоеЗаданиеПрочитатьПромежуточныйРезультат(); - ИначеЕсли Состояние = "Завершено" - Или Состояние = "ЗавершеноАварийно" Тогда - Результат.ФоновоеЗаданиеВыполнено = Истина; - ФоновоеЗаданиеЗагрузитьРезультат(Результат); + Если Прогресс = Неопределено Тогда + Возврат; КонецЕсли; - Возврат Результат; -КонецФункции - -// Возвращает состояние выполнения фонового задания. -// Используется для реализации логики длительных операций. -// -// Параметры: -// ИдентификаторЗадания - УникальныйИдентификатор - идентификатор фонового задания, для которого необходимо получить -// состояние. -// -// Возвращаемое значение: -// Строка - состояние выполнения фонового задания: -// "Активно" - задание выполняется; -// "Завершено" - задание выполнено успешно; -// "ЗавершеноАварийно" - задание завершено аварийно или отменено пользователем. -// -Функция СостояниеЗадания(Знач ИдентификаторЗадания) - Попытка - Результат = ?(ДлительныеОперации.ЗаданиеВыполнено(ИдентификаторЗадания), "Завершено", "Активно"); - Исключение - Результат = "ЗавершеноАварийно"; - ЗаписьЖурналаРегистрации(НСтр("ru = 'Обмен данными'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - КонецПопытки; + Если Прогресс.Прогресс <> Неопределено Тогда + СтруктураПрогресса = Прогресс.Прогресс; + ПроцентВыполнения = СтруктураПрогресса.Процент; + ДопИнформацияВыполнение = СтруктураПрогресса.Текст; + КонецЕсли; - Возврат Результат; -КонецФункции +КонецПроцедуры &НаКлиенте Процедура ЗапуститьПереходРезультат() diff --git a/SSL/src/CommonForms/СозданиеРезервнойКопии/Form.form b/SSL/src/CommonForms/СозданиеРезервнойКопии/Form.form index f093c67a0..7cb014268 100644 --- a/SSL/src/CommonForms/СозданиеРезервнойКопии/Form.form +++ b/SSL/src/CommonForms/СозданиеРезервнойКопии/Form.form @@ -37,7 +37,6 @@ true Label - true true Left @@ -98,9 +97,7 @@ 43 true - 4 true - 2 true @@ -139,9 +136,7 @@ true Label - true true - true Left @@ -174,7 +169,6 @@ true Label - true true Left @@ -263,9 +257,7 @@ 40 true - 4 true - 2 true @@ -354,7 +346,6 @@ Группа страницы true - true ГруппаСтраницыExtendedTooltip 30 diff --git a/SSL/src/CommonForms/СохранениеВместеСЭлектроннойПодписью/Form.form b/SSL/src/CommonForms/СохранениеВместеСЭлектроннойПодписью/Form.form index b4a3afaeb..907156c08 100644 --- a/SSL/src/CommonForms/СохранениеВместеСЭлектроннойПодписью/Form.form +++ b/SSL/src/CommonForms/СохранениеВместеСЭлектроннойПодписью/Form.form @@ -43,7 +43,6 @@ Click ПредставлениеДанныхНажатие - true true true @@ -530,7 +529,6 @@ OnCreateAtServer ПриСозданииНаСервере - 80 LockOwner true true @@ -756,7 +754,7 @@ Auto - ВводитьКомментарий + ПоказатьКомментарий Boolean @@ -789,6 +787,13 @@ Boolean + + ПредставлениеДанныхОткрывается + + String + + + diff --git a/SSL/src/CommonForms/СохранениеПечатнойФормы/Form.form b/SSL/src/CommonForms/СохранениеПечатнойФормы/Form.form index 95264bd05..39b497204 100644 --- a/SSL/src/CommonForms/СохранениеПечатнойФормы/Form.form +++ b/SSL/src/CommonForms/СохранениеПечатнойФормы/Form.form @@ -704,7 +704,6 @@ Retry SaveValues Yes - 40 LockOwner Use true diff --git a/SSL/src/CommonForms/СтруктураПодчиненности/Form.form b/SSL/src/CommonForms/СтруктураПодчиненности/Form.form index 005958ed1..bc81cd92a 100644 --- a/SSL/src/CommonForms/СтруктураПодчиненности/Form.form +++ b/SSL/src/CommonForms/СтруктураПодчиненности/Form.form @@ -156,10 +156,10 @@ auto true - ДеревоПодчиненныеДокументы + ДеревоПодчиненныеОбъекты <key>ru</key> - <value>Дерево подчиненные документы</value> + <value>Дерево подчиненные объекты</value> 1 @@ -237,6 +237,8 @@ 4 DocumentRef + ChartOfCharacteristicTypesRef + CatalogRef true @@ -281,14 +283,16 @@ - ДокументСсылка + ОбъектСсылка <key>ru</key> - <value>Документ ссылка</value> + <value>Объект ссылка</value> 2 DocumentRef + ChartOfCharacteristicTypesRef + CatalogRef true @@ -298,14 +302,16 @@ - ИсходныйДокумент + ИсходныйОбъект <key>ru</key> - <value>Исходный документ</value> + <value>Исходный объект</value> 3 DocumentRef + ChartOfCharacteristicTypesRef + CatalogRef true @@ -333,7 +339,11 @@ - ДеревоРодительскиеДокументы + ДеревоРодительскиеОбъекты + + <key>ru</key> + <value>Дерево родительские объекты</value> + 5 ValueTree @@ -410,6 +420,8 @@ 4 DocumentRef + ChartOfCharacteristicTypesRef + CatalogRef true diff --git a/SSL/src/CommonForms/СтруктураПодчиненности/Module.bsl b/SSL/src/CommonForms/СтруктураПодчиненности/Module.bsl index 4882d5bfd..4a800766d 100644 --- a/SSL/src/CommonForms/СтруктураПодчиненности/Module.bsl +++ b/SSL/src/CommonForms/СтруктураПодчиненности/Module.bsl @@ -8,11 +8,11 @@ Возврат; КонецЕсли; - Параметры.Свойство("ОбъектОтбора", ДокументСсылка); + Параметры.Свойство("ОбъектОтбора", ОбъектСсылка); - ИсходныйДокумент = ДокументСсылка; + ИсходныйОбъект = ОбъектСсылка; - Если ЗначениеЗаполнено(ДокументСсылка) Тогда + Если ЗначениеЗаполнено(ОбъектСсылка) Тогда ОбновитьДеревоСтруктурыПодчиненности(); КонецЕсли; @@ -32,10 +32,10 @@ &НаКлиенте Процедура ВывестиДляТекущего(Команда) - ТекущийДокумент = Элементы.ТаблицаОтчета.ТекущаяОбласть.Расшифровка; + ТекущийОбъект = Элементы.ТаблицаОтчета.ТекущаяОбласть.Расшифровка; - Если ЗначениеЗаполнено(ТекущийДокумент) Тогда - ДокументСсылка = ТекущийДокумент; + Если ЗначениеЗаполнено(ТекущийОбъект) Тогда + ОбъектСсылка = ТекущийОбъект; Иначе Возврат; КонецЕсли; @@ -59,13 +59,13 @@ Макет = ПолучитьОбщийМакет("СтруктураПодчиненности"); - ВывестиРодительскиеЭлементыДерева(ДеревоРодительскиеДокументы.ПолучитьЭлементы(),Макет,1); - ВывестиТекущийДокумент(Макет); - ВывестиПодчиненныеЭлементыДерева(ДеревоПодчиненныеДокументы.ПолучитьЭлементы(),Макет,1) + ВывестиРодительскиеЭлементыДерева(ДеревоРодительскиеОбъекты.ПолучитьЭлементы(),Макет,1); + ВывестиТекущийОбъект(Макет); + ВывестиПодчиненныеЭлементыДерева(ДеревоПодчиненныеОбъекты.ПолучитьЭлементы(),Макет,1) КонецПроцедуры -// Выводит строки дерева родительских документов. +// Выводит строки дерева родительских объектов. // // Параметры: // СтрокиДерева - ДанныеФормыКоллекцияЭлементовДерева - строки дерева @@ -113,7 +113,7 @@ КонецЦикла; - ВывестиДокументИКартинку(ТекущаяСтрокаДерева,Макет,Ложь,Ложь); + ВывестиПредставлениеИКартинку(ТекущаяСтрокаДерева,Макет,Ложь,Ложь); Счетчик = Счетчик - 1; @@ -121,20 +121,21 @@ КонецПроцедуры -// Выводит в табличный документ картинку, соответствующую статусу документа и его представление. +// Выводит в табличный документ картинку, соответствующую статусу объекта и его представление. // &НаСервере -Процедура ВывестиДокументИКартинку(СтрокаДерева,Макет,ЭтоТекущийДокумент = Ложь,ЭтоПодчиненный = Неопределено) +Процедура ВывестиПредставлениеИКартинку(СтрокаДерева,Макет, ЭтоТекущийОбъект = Ложь, ЭтоПодчиненный = Неопределено) + + МетаданныеОбъекта = СтрокаДерева.Ссылка.Метаданные(); + ЭтоДокумент = ОбщегоНазначения.ЭтоДокумент(МетаданныеОбъекта); // Вывод картинки Если СтрокаДерева.Проведен Тогда - Если ЭтоПодчиненный = Неопределено Тогда - Если ДеревоПодчиненныеДокументы.ПолучитьЭлементы().Количество() И ДеревоРодительскиеДокументы.ПолучитьЭлементы().Количество() Тогда + Если ЭтоТекущийОбъект Тогда + Если ДеревоПодчиненныеОбъекты.ПолучитьЭлементы().Количество() И ДеревоРодительскиеОбъекты.ПолучитьЭлементы().Количество() Тогда ОбластьКартинка = Макет.ПолучитьОбласть("ДокументПроведенКоннекторВерхНиз"); - ИначеЕсли ДеревоПодчиненныеДокументы.ПолучитьЭлементы().Количество() Тогда + ИначеЕсли ДеревоПодчиненныеОбъекты.ПолучитьЭлементы().Количество() Тогда ОбластьКартинка = Макет.ПолучитьОбласть("ДокументПроведенКоннекторНиз"); - ИначеЕсли ДеревоРодительскиеДокументы.ПолучитьЭлементы().Количество() Тогда - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументПроведенКоннекторВерх"); Иначе ОбластьКартинка = Макет.ПолучитьОбласть("ДокументПроведенКоннекторВерх"); КонецЕсли; @@ -152,65 +153,75 @@ КонецЕсли; КонецЕсли; ИначеЕсли СтрокаДерева.ПометкаУдаления Тогда - Если ЭтоПодчиненный = Неопределено Тогда - Если ДеревоПодчиненныеДокументы.ПолучитьЭлементы().Количество() И ДеревоРодительскиеДокументы.ПолучитьЭлементы().Количество() Тогда - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументПомеченНаУдалениеКоннекторВерхНиз"); - ИначеЕсли ДеревоПодчиненныеДокументы.ПолучитьЭлементы().Количество() Тогда - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументПомеченНаУдалениеКоннекторНиз"); - ИначеЕсли ДеревоРодительскиеДокументы.ПолучитьЭлементы().Количество() Тогда - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументПомеченНаУдалениеКоннекторВерх"); + Если ЭтоТекущийОбъект Тогда + Если ДеревоПодчиненныеОбъекты.ПолучитьЭлементы().Количество() И ДеревоРодительскиеОбъекты.ПолучитьЭлементы().Количество() Тогда + ИмяОбласти = ?( ЭтоДокумент, "ДокументПомеченНаУдалениеКоннекторВерхНиз", "СправочникПВХПомеченНаУдалениеКоннекторВерхНиз"); + ОбластьКартинка = Макет.ПолучитьОбласть(ИмяОбласти); + ИначеЕсли ДеревоПодчиненныеОбъекты.ПолучитьЭлементы().Количество() Тогда + ИмяОбласти = ?( ЭтоДокумент, "ДокументПомеченНаУдалениеКоннекторНиз", "СправочникПВХПомеченНаУдалениеКоннекторНиз"); + ОбластьКартинка = Макет.ПолучитьОбласть(ИмяОбласти); Иначе - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументПомеченНаУдалениеКоннекторВерх"); + ИмяОбласти = ?( ЭтоДокумент, "ДокументПомеченНаУдалениеКоннекторВерх", "СправочникПВХПомеченНаУдалениеКоннекторВерх"); + ОбластьКартинка = Макет.ПолучитьОбласть(ИмяОбласти); КонецЕсли; ИначеЕсли ЭтоПодчиненный = Истина Тогда Если СтрокаДерева.ПолучитьЭлементы().Количество() Тогда - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументПомеченНаУдалениеКоннекторЛевоНиз"); + ИмяОбласти = ?( ЭтоДокумент, "ДокументПомеченНаУдалениеКоннекторЛевоНиз", "СправочникПВХПомеченНаУдалениеКоннекторЛевоНиз"); + ОбластьКартинка = Макет.ПолучитьОбласть(ИмяОбласти); Иначе - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументПомеченНаУдаление"); + ИмяОбласти = ?( ЭтоДокумент, "ДокументПомеченНаУдаление", "СправочникПВХПомеченНаУдалениеКоннекторЛево"); + ОбластьКартинка = Макет.ПолучитьОбласть(ИмяОбласти); КонецЕсли; Иначе Если СтрокаДерева.ПолучитьЭлементы().Количество() Тогда - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументПомеченНаУдалениеКоннекторЛевоВерх"); + ИмяОбласти = ?( ЭтоДокумент, "ДокументПомеченНаУдалениеКоннекторЛевоВерх", "СправочникПВХПомеченНаУдалениеКоннекторЛевоВерх"); + ОбластьКартинка = Макет.ПолучитьОбласть(ИмяОбласти); Иначе - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументПомеченНаУдаление"); + ИмяОбласти = ?( ЭтоДокумент, "ДокументПомеченНаУдаление", "СправочникПВХПомеченНаУдалениеКоннекторЛево"); + ОбластьКартинка = Макет.ПолучитьОбласть(ИмяОбласти); КонецЕсли; КонецЕсли; Иначе - Если СтрокаДерева.Ссылка = ДокументСсылка Тогда - Если ДеревоПодчиненныеДокументы.ПолучитьЭлементы().Количество() И ДеревоРодительскиеДокументы.ПолучитьЭлементы().Количество() Тогда - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументЗаписанКоннекторВерхНиз"); - ИначеЕсли ДеревоПодчиненныеДокументы.ПолучитьЭлементы().Количество() Тогда - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументЗаписанКоннекторНиз"); - ИначеЕсли ДеревоРодительскиеДокументы.ПолучитьЭлементы().Количество() Тогда - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументЗаписанКоннекторВерх"); + Если ЭтоТекущийОбъект Тогда + Если ДеревоПодчиненныеОбъекты.ПолучитьЭлементы().Количество() И ДеревоРодительскиеОбъекты.ПолучитьЭлементы().Количество() Тогда + ИмяОбласти = ?( ЭтоДокумент, "ДокументЗаписанКоннекторВерхНиз", "СправочникПВХКоннекторВерхНиз"); + ОбластьКартинка = Макет.ПолучитьОбласть(ИмяОбласти); + ИначеЕсли ДеревоПодчиненныеОбъекты.ПолучитьЭлементы().Количество() Тогда + ИмяОбласти = ?( ЭтоДокумент, "ДокументЗаписанКоннекторНиз", "СправочникПВХКоннекторНиз"); + ОбластьКартинка = Макет.ПолучитьОбласть(ИмяОбласти); Иначе - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументЗаписанКоннекторВерх"); + ИмяОбласти = ?( ЭтоДокумент, "ДокументЗаписанКоннекторВерх", "СправочникПВХКоннекторВерх"); + ОбластьКартинка = Макет.ПолучитьОбласть(ИмяОбласти); КонецЕсли; ИначеЕсли ЭтоПодчиненный = Истина Тогда Если СтрокаДерева.ПолучитьЭлементы().Количество() Тогда - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументЗаписанКоннекторЛевоНиз"); + ИмяОбласти = ?( ЭтоДокумент, "ДокументЗаписанКоннекторЛевоНиз", "СправочникПВХКоннекторЛевоНиз"); + ОбластьКартинка = Макет.ПолучитьОбласть(ИмяОбласти); Иначе - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументЗаписан"); + ИмяОбласти = ?( ЭтоДокумент, "ДокументЗаписан", "СправочникПВХКоннекторЛево"); + ОбластьКартинка = Макет.ПолучитьОбласть(ИмяОбласти); КонецЕсли; Иначе Если СтрокаДерева.ПолучитьЭлементы().Количество() Тогда - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументЗаписанКоннекторЛевоВерх"); + ИмяОбласти = ?( ЭтоДокумент, "ДокументЗаписанКоннекторЛевоВерх", "СправочникПВХКоннекторЛевоВерх"); + ОбластьКартинка = Макет.ПолучитьОбласть(ИмяОбласти); Иначе - ОбластьКартинка = Макет.ПолучитьОбласть("ДокументЗаписан"); + ИмяОбласти = ?( ЭтоДокумент, "ДокументЗаписан", "СправочникПВХКоннекторЛево"); + ОбластьКартинка = Макет.ПолучитьОбласть(ИмяОбласти); КонецЕсли; КонецЕсли; КонецЕсли; - Если ЭтоТекущийДокумент Тогда + Если ЭтоТекущийОбъект Тогда ТаблицаОтчета.Вывести(ОбластьКартинка) Иначе ТаблицаОтчета.Присоединить(ОбластьКартинка); КонецЕсли; - // Вывод документа - ОбластьДокумент = Макет.ПолучитьОбласть(?(ЭтоТекущийДокумент,"ТекущийДокумент","Документ")); - ОбластьДокумент.Параметры.ПредставлениеДокумента = СтрокаДерева.Представление; - ОбластьДокумент.Параметры.Документ = СтрокаДерева.Ссылка; - ТаблицаОтчета.Присоединить(ОбластьДокумент); + // Вывод объекта + ОбластьОбъект = Макет.ПолучитьОбласть(?(ЭтоТекущийОбъект,"ТекущийОбъект","Объект")); + ОбластьОбъект.Параметры.ПредставлениеОбъекта = СтрокаДерева.Представление; + ОбластьОбъект.Параметры.Объект = СтрокаДерева.Ссылка; + ТаблицаОтчета.Присоединить(ОбластьОбъект); КонецПроцедуры @@ -242,9 +253,9 @@ Если ИскомыйРодитель = Неопределено Тогда Если ИщемСредиПодчиненных Тогда - ПодчиненныеЭлементыРодителя = ДеревоПодчиненныеДокументы.ПолучитьЭлементы(); + ПодчиненныеЭлементыРодителя = ДеревоПодчиненныеОбъекты.ПолучитьЭлементы(); Иначе - ПодчиненныеЭлементыРодителя = ДеревоРодительскиеДокументы.ПолучитьЭлементы(); + ПодчиненныеЭлементыРодителя = ДеревоРодительскиеОбъекты.ПолучитьЭлементы(); КонецЕсли; Иначе ПодчиненныеЭлементыРодителя = ИскомыйРодитель.ПолучитьЭлементы(); @@ -259,21 +270,21 @@ // Параметры: // Макет - МакетТабличногоДокумента - макет, на основании которого формируется табличный документ. &НаСервере -Процедура ВывестиТекущийДокумент(Макет) +Процедура ВывестиТекущийОбъект(Макет) - Выборка = ПолучитьВыборкуПоРеквизитамДокумента(ДокументСсылка); + Выборка = ПолучитьВыборкуПоРеквизитамОбъекта(ОбъектСсылка); Если Выборка.Следующий() Тогда - ПереопределяемоеПредставление = СтруктураПодчиненностиПереопределяемый.ПолучитьПредставлениеДокументаДляПечати(Выборка); + ПереопределяемоеПредставление = СтруктураПодчиненностиПереопределяемый.ПредставлениеОбъектаДляВыводаВОтчет(Выборка); Если ПереопределяемоеПредставление <> Неопределено Тогда СтруктураРеквизитов = ОбщегоНазначения.СтрокаТаблицыЗначенийВСтруктуру(Выборка.Владелец().Выгрузить()[0]); СтруктураРеквизитов.Представление = ПереопределяемоеПредставление; - ВывестиДокументИКартинку(СтруктураРеквизитов,Макет,Истина); + ВывестиПредставлениеИКартинку(СтруктураРеквизитов,Макет,Истина); Иначе СтруктураРеквизитов = ОбщегоНазначения.СтрокаТаблицыЗначенийВСтруктуру(Выборка.Владелец().Выгрузить()[0]); - СтруктураРеквизитов.Представление = ПолучитьПредставлениеДокументаДляПечати(СтруктураРеквизитов); - ВывестиДокументИКартинку(СтруктураРеквизитов,Макет,Истина); + СтруктураРеквизитов.Представление = ПредставлениеОбъектаДляВыводаВОтчет(СтруктураРеквизитов); + ВывестиПредставлениеИКартинку(СтруктураРеквизитов,Макет,Истина); КонецЕсли; КонецЕсли; @@ -290,14 +301,20 @@ // Строка - сформированное представление. // &НаСервере -Функция ПолучитьПредставлениеДокументаДляПечати(Выборка) +Функция ПредставлениеОбъектаДляВыводаВОтчет(Выборка) - ПредставлениеДокумента = Выборка.Представление; - Если (Выборка.СуммаДокумента <> 0) И (Выборка.СуммаДокумента <> NULL) Тогда - ПредставлениеДокумента = ПредставлениеДокумента + " " + НСтр("ru='на сумму'") + " " + Выборка.СуммаДокумента + " " + Выборка.Валюта; + ПредставлениеОбъекта = Выборка.Представление; + МетаданныеОбъекта = Выборка.Ссылка.Метаданные(); + + Если ОбщегоНазначения.ЭтоДокумент(МетаданныеОбъекта) Тогда + Если (Выборка.СуммаДокумента <> 0) И (Выборка.СуммаДокумента <> NULL) Тогда + ПредставлениеОбъекта = ПредставлениеОбъекта + " " + НСтр("ru='на сумму'") + " " + Выборка.СуммаДокумента + " " + Выборка.Валюта; + КонецЕсли; + Иначе + ПредставлениеОбъекта = ПредставлениеОбъекта + " (" + МетаданныеОбъекта.ПредставлениеОбъекта + ")"; КонецЕсли; - Возврат ПредставлениеДокумента; + Возврат ПредставлениеОбъекта; КонецФункции @@ -315,8 +332,8 @@ Для каждого СтрокаДерева Из СтрокиДерева Цикл - ЭтоТекущийДокумент = (СтрокаДерева.Ссылка = ДокументСсылка); - ЭтоИсходныйДокумент = (СтрокаДерева.Ссылка = ИсходныйДокумент); + ЭтоТекущийОбъект = (СтрокаДерева.Ссылка = ОбъектСсылка); + ЭтоИсходныйОбъект = (СтрокаДерева.Ссылка = ИсходныйОбъект); ПодчиненныеЭлементыДерева = СтрокаДерева.ПолучитьЭлементы(); // Вывод коннекторов @@ -339,7 +356,7 @@ КонецЕсли; - Область.Параметры.Документ = ?(ЭтоИсходныйДокумент,Неопределено,СтрокаДерева.Ссылка); + Область.Параметры.Документ = ?(ЭтоИсходныйОбъект,Неопределено,СтрокаДерева.Ссылка); Если инд = 1 Тогда ТаблицаОтчета.Вывести(Область); @@ -349,7 +366,7 @@ КонецЦикла; - ВывестиДокументИКартинку(СтрокаДерева,Макет,Ложь,Истина); + ВывестиПредставлениеИКартинку(СтрокаДерева,Макет,Ложь,Истина); // Вывод подчиненных элементов дерева. ВывестиПодчиненныеЭлементыДерева(ПодчиненныеЭлементыДерева,Макет,УровеньРекурсии + 1); @@ -385,11 +402,11 @@ &НаСервере Процедура СформироватьДеревьяДокументов() - ДеревоРодительскиеДокументы.ПолучитьЭлементы().Очистить(); - ДеревоПодчиненныеДокументы.ПолучитьЭлементы().Очистить(); + ДеревоРодительскиеОбъекты.ПолучитьЭлементы().Очистить(); + ДеревоПодчиненныеОбъекты.ПолучитьЭлементы().Очистить(); - ВывестиРодительскиеДокументы(ДокументСсылка,ДеревоРодительскиеДокументы); - ВывестиПодчиненныеДокументы(ДокументСсылка,ДеревоПодчиненныеДокументы); + ВывестиРодительскиеОбъекты(ОбъектСсылка,ДеревоРодительскиеОбъекты); + ВывестиПодчиненныеОбъекты(ОбъектСсылка,ДеревоПодчиненныеОбъекты); КонецПроцедуры @@ -400,11 +417,11 @@ "ВЫБРАТЬ РАЗРЕШЕННЫЕ | 1 |ИЗ - | Документ." + ДокументСсылка.Метаданные().Имя + " КАК Таб + | " + ОбъектСсылка.Метаданные().ПолноеИмя() + " КАК Таб |ГДЕ - | Таб.Ссылка = &ТекущийДокумент + | Таб.Ссылка = &ТекущийОбъект |"); - Запрос.УстановитьПараметр("ТекущийДокумент", ДокументСсылка); + Запрос.УстановитьПараметр("ТекущийОбъект", ОбъектСсылка); Возврат Не Запрос.Выполнить().Пустой(); КонецФункции @@ -412,50 +429,62 @@ // Получает выборку по реквизитам документа. // // Параметры: -// ДокументСсылка - ДокументСсылка - документ, значения реквизитов которого получаются запросом. +// ОбъектСсылка - ДокументСсылка, СправочникСсылка, ПВХСсылка - ссылка на объект, значения реквизитов которого получаются запросом. // // Возвращаемое значение: // ВыборкаИзРезультатаЗапроса // &НаСервере -Функция ПолучитьВыборкуПоРеквизитамДокумента(ДокументСсылка) +Функция ПолучитьВыборкуПоРеквизитамОбъекта(ОбъектСсылка) - МетаданныеДокумента = ДокументСсылка.Метаданные(); + МетаданныеОбъекта = ОбъектСсылка.Метаданные(); ТекстЗапроса = "ВЫБРАТЬ РАЗРЕШЕННЫЕ | Ссылка, - | Проведен, + | #Проведен, | ПометкаУдаления, - | #Сумма, + | #Сумма , | #Валюта, | #Представление |ИЗ - | Документ." + МетаданныеДокумента.Имя + " + | " + МетаданныеОбъекта.ПолноеИмя() + " |ГДЕ | Ссылка = &Ссылка |"; - ЗаменитьТекстЗапроса(ТекстЗапроса, МетаданныеДокумента, "#Сумма", ИмяРеквизитаДокумента(МетаданныеДокумента.Имя, "СуммаДокумента"), "СуммаДокумента"); - ЗаменитьТекстЗапроса(ТекстЗапроса, МетаданныеДокумента, "#Валюта", ИмяРеквизитаДокумента(МетаданныеДокумента.Имя, "Валюта"), "Валюта"); - МассивДопРеквизитов = СтруктураПодчиненностиПереопределяемый.МассивДополнительныхРеквизитовДокумента(МетаданныеДокумента.Имя); + Если ОбщегоНазначения.ЭтоДокумент(МетаданныеОбъекта) Тогда + ИмяРеквизитаСумма = ИмяРеквизитаДокумента(МетаданныеОбъекта.Имя, "СуммаДокумента"); + ИмяРеквизитаВалюта = ИмяРеквизитаДокумента(МетаданныеОбъекта.Имя, "Валюта"); + ИмяРеквизитаПроведен = "Проведен"; + Иначе + ИмяРеквизитаСумма = Неопределено; + ИмяРеквизитаВалюта = Неопределено; + ИмяРеквизитаПроведен = "Ложь"; + КонецЕсли; - ДополнитьТекстЗапросаПоРеквизитамДокумента(ТекстЗапроса, МассивДопРеквизитов); + ЗаменитьТекстЗапроса(ТекстЗапроса, МетаданныеОбъекта, "#Проведен", ИмяРеквизитаПроведен, "Проведен", Истина); + ЗаменитьТекстЗапроса(ТекстЗапроса, МетаданныеОбъекта, "#Сумма", ИмяРеквизитаСумма, "СуммаДокумента"); + ЗаменитьТекстЗапроса(ТекстЗапроса, МетаданныеОбъекта, "#Валюта", ИмяРеквизитаВалюта, "Валюта"); + + МассивДопРеквизитов = СтруктураПодчиненностиПереопределяемый.МассивРеквизитовОбъектаДляФормированияПредставления(МетаданныеОбъекта.Имя); + + ДополнитьТекстЗапросаПоРеквизитамОбъекта(ТекстЗапроса, МассивДопРеквизитов); Запрос = Новый Запрос(ТекстЗапроса); - Запрос.УстановитьПараметр("Ссылка", ДокументСсылка); + Запрос.УстановитьПараметр("Ссылка", ОбъектСсылка); Возврат Запрос.Выполнить().Выбрать(); КонецФункции &НаСервере -Процедура ВывестиРодительскиеДокументы(ТекущийДокумент,ДеревоРодитель) +Процедура ВывестиРодительскиеОбъекты(ТекущийОбъект, ДеревоРодитель) СтрокиДерева = ДеревоРодитель.ПолучитьЭлементы(); - МетаданныеДокумента = ТекущийДокумент.Метаданные(); + МетаданныеОбъекта = ТекущийОбъект.Метаданные(); СписокРеквизитов = Новый СписокЗначений; - Для Каждого Реквизит Из МетаданныеДокумента.Реквизиты Цикл + Для Каждого Реквизит Из МетаданныеОбъекта.Реквизиты Цикл Если Метаданные.КритерииОтбора.СвязанныеДокументы.Состав.Содержит(Реквизит) Тогда @@ -464,17 +493,25 @@ МетаданныеРеквизита = Метаданные.НайтиПоТипу(ТекущийТип); Если МетаданныеРеквизита <> Неопределено - И Метаданные.Документы.Содержит(МетаданныеРеквизита) + И (Метаданные.Документы.Содержит(МетаданныеРеквизита) + Или Метаданные.Справочники.Содержит(МетаданныеРеквизита) + Или Метаданные.ПланыВидовХарактеристик.Содержит(МетаданныеРеквизита)) И ПравоДоступа("Чтение", МетаданныеРеквизита) Тогда - ЗначениеРеквизита = ТекущийДокумент[Реквизит.Имя]; + ЗначениеРеквизита = ТекущийОбъект[Реквизит.Имя]; Если ЗначениеЗаполнено(ЗначениеРеквизита) И ТипЗнч(ЗначениеРеквизита) = ТекущийТип - И ЗначениеРеквизита <> ТекущийДокумент + И ЗначениеРеквизита <> ТекущийОбъект И СписокРеквизитов.НайтиПоЗначению(ЗначениеРеквизита) = Неопределено Тогда - СписокРеквизитов.Добавить(ЗначениеРеквизита,Формат(ЗначениеРеквизита.Дата,"ДЛФ=DT")); + ЯвляетсяДокументом = ОбщегоНазначения.ЭтоДокумент(МетаданныеРеквизита); + + Если ЯвляетсяДокументом Тогда + СписокРеквизитов.Добавить(ЗначениеРеквизита,Формат(ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ЗначениеРеквизита, "Дата"),"ДЛФ=DT")); + Иначе + СписокРеквизитов.Добавить(ЗначениеРеквизита, Дата(1,1,1)); + КонецЕсли; КонецЕсли; КонецЕсли; @@ -484,10 +521,10 @@ КонецЦикла; - Для Каждого ТЧ Из МетаданныеДокумента.ТабличныеЧасти Цикл + Для Каждого ТЧ Из МетаданныеОбъекта.ТабличныеЧасти Цикл СтрРеквизитов = ""; - СодержимоеТЧ = ТекущийДокумент[ТЧ.Имя].Выгрузить(); + СодержимоеТЧ = ТекущийОбъект[ТЧ.Имя].Выгрузить(); Для Каждого Реквизит Из ТЧ.Реквизиты Цикл @@ -498,7 +535,9 @@ МетаданныеРеквизита = Метаданные.НайтиПоТипу(ТекущийТип); Если МетаданныеРеквизита<>Неопределено - И Метаданные.Документы.Содержит(МетаданныеРеквизита) + И (Метаданные.Документы.Содержит(МетаданныеРеквизита) + Или Метаданные.Справочники.Содержит(МетаданныеРеквизита) + Или Метаданные.ПланыВидовХарактеристик.Содержит(МетаданныеРеквизита)) И ПравоДоступа("Чтение", МетаданныеРеквизита) Тогда СтрРеквизитов = СтрРеквизитов + ?(СтрРеквизитов = "", "", ", ") + Реквизит.Имя; @@ -519,18 +558,27 @@ ЗначениеРеквизита = СтрокаТЧ[КолонкаТЧ.Имя]; МетаданныеЗначения = Метаданные.НайтиПоТипу(ТипЗнч(ЗначениеРеквизита)); + Если МетаданныеЗначения <> Неопределено Тогда Если ЗначениеЗаполнено(ЗначениеРеквизита) - И Метаданные.Документы.Содержит(МетаданныеЗначения) - И ЗначениеРеквизита <> ТекущийДокумент + И (Метаданные.Документы.Содержит(МетаданныеЗначения) + Или Метаданные.Справочники.Содержит(МетаданныеЗначения) + Или Метаданные.ПланыВидовХарактеристик.Содержит(МетаданныеЗначения)) + И ЗначениеРеквизита <> ТекущийОбъект И СписокРеквизитов.НайтиПоЗначению(ЗначениеРеквизита) = Неопределено И ПравоДоступа("Чтение", МетаданныеЗначения) Тогда - + + ЯвляетсяДокументом = ОбщегоНазначения.ЭтоДокумент(МетаданныеЗначения); + + Если ЯвляетсяДокументом Тогда СписокРеквизитов.Добавить(ЗначениеРеквизита,Формат(ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ЗначениеРеквизита, "Дата"),"ДЛФ=DT")); - + Иначе + СписокРеквизитов.Добавить(ЗначениеРеквизита, Дата(1,1,1)); + КонецЕсли; КонецЕсли; КонецЕсли; + КонецЦикла; КонецЦикла; КонецЦикла; @@ -539,12 +587,12 @@ Для каждого ЭлементСписка Из СписокРеквизитов Цикл - Выборка = ПолучитьВыборкуПоРеквизитамДокумента(ЭлементСписка.Значение); + Выборка = ПолучитьВыборкуПоРеквизитамОбъекта(ЭлементСписка.Значение); Если Выборка.Следующий() Тогда СтрокаДерева = ДобавитьСтрокуВДерево(СтрокиДерева, Выборка); - Если НЕ ДобавляемыйДокументИмеетсяСредиРодителей(ДеревоРодитель,ЭлементСписка.Значение) Тогда - ВывестиРодительскиеДокументы(ЭлементСписка.Значение,СтрокаДерева); + Если НЕ ДобавляемыйОбъектИмеетсяСредиРодителей(ДеревоРодитель,ЭлементСписка.Значение) Тогда + ВывестиРодительскиеОбъекты(ЭлементСписка.Значение,СтрокаДерева); КонецЕсли; КонецЕсли; @@ -557,14 +605,14 @@ // Параметры: // СтрокаРодитель - ДанныеФормыДерево,ДанныеФормыЭлементДерева - родитель, для // которого предполагается добавить строку дерева. -// ДокументСсылка - Документ - документ, на наличие которого выполняется проверка. +// ИскомыйОбъект - Ссылка - ссылка на объект метаданных, на наличие которого выполняется проверка. // // Возвращаемое значение: // Булево - Истина если найден, Ложь в обратном случае. // -Функция ДобавляемыйДокументИмеетсяСредиРодителей(СтрокаРодитель,ИскомыйДокумент) +Функция ДобавляемыйОбъектИмеетсяСредиРодителей(СтрокаРодитель,ИскомыйОбъект) - Если ИскомыйДокумент = ДокументСсылка Тогда + Если ИскомыйОбъект = ОбъектСсылка Тогда Возврат Истина; КонецЕсли; @@ -574,7 +622,7 @@ ТекущийРодитель = СтрокаРодитель; Пока ТекущийРодитель <> Неопределено Цикл - Если ТекущийРодитель.Ссылка = ИскомыйДокумент Тогда + Если ТекущийРодитель.Ссылка = ИскомыйОбъект Тогда Возврат Истина; КонецЕсли; ТекущийРодитель = ТекущийРодитель.ПолучитьРодителя(); @@ -585,9 +633,9 @@ КонецФункции &НаСервере -Процедура ЗаменитьТекстЗапроса(ТекстЗапроса, МетаданныеДокумента, ЧтоЗаменять, ИмяРеквизита, Представление) +Процедура ЗаменитьТекстЗапроса(ТекстЗапроса, МетаданныеОбъекта, ЧтоЗаменять, ИмяРеквизита, Представление, НеИскатьВРеквизитах = Ложь) - Если МетаданныеДокумента.Реквизиты.Найти(ИмяРеквизита) <> Неопределено Тогда + Если НеИскатьВРеквизитах Или МетаданныеОбъекта.Реквизиты.Найти(ИмяРеквизита) <> Неопределено Тогда ТекстЗапроса = СтрЗаменить(ТекстЗапроса, ЧтоЗаменять, ИмяРеквизита + " КАК " + Представление); Иначе ТекстЗапроса = СтрЗаменить(ТекстЗапроса, ЧтоЗаменять, " NULL КАК " + Представление); @@ -596,35 +644,48 @@ КонецПроцедуры &НаСервере -Процедура ДополнитьКэшМетаданных(МетаданныеДокумента, ИмяДокумента,КэшРеквизитовДокумента) +Процедура ДополнитьКэшМетаданных(МетаданныеОбъекта, ИмяОбъекта,КэшРеквизитовОбъекта) - РеквизитыДокумента = КэшРеквизитовДокумента[ИмяДокумента]; + РеквизитыДокумента = КэшРеквизитовОбъекта[ИмяОбъекта]; Если РеквизитыДокумента = Неопределено Тогда РеквизитыДокумента = Новый Соответствие; + ЯвляетсяДокументом = ОбщегоНазначения.ЭтоДокумент(МетаданныеОбъекта); - ИмяРеквизитаСуммаДокумента = ИмяРеквизитаДокумента(МетаданныеДокумента.Имя, "СуммаДокумента"); - Если МетаданныеДокумента.Реквизиты.Найти(ИмяРеквизитаСуммаДокумента) <> Неопределено Тогда + ИмяРеквизитаСуммаДокумента = ИмяРеквизитаДокумента(МетаданныеОбъекта.Имя, "СуммаДокумента"); + Если ЯвляетсяДокументом И МетаданныеОбъекта.Реквизиты.Найти(ИмяРеквизитаСуммаДокумента) <> Неопределено Тогда РеквизитыДокумента.Вставить("СуммаДокумента", ИмяРеквизитаСуммаДокумента); Иначе РеквизитыДокумента.Вставить("СуммаДокумента", "NULL"); КонецЕсли; - ИмяРеквизитаВалюта = ИмяРеквизитаДокумента(МетаданныеДокумента.Имя, "Валюта"); - Если МетаданныеДокумента.Реквизиты.Найти(ИмяРеквизитаВалюта) <> Неопределено Тогда + ИмяРеквизитаВалюта = ИмяРеквизитаДокумента(МетаданныеОбъекта.Имя, "Валюта"); + Если ЯвляетсяДокументом И МетаданныеОбъекта.Реквизиты.Найти(ИмяРеквизитаВалюта) <> Неопределено Тогда РеквизитыДокумента.Вставить("Валюта", ИмяРеквизитаВалюта); Иначе РеквизитыДокумента.Вставить("Валюта", "NULL"); КонецЕсли; + + Если ЯвляетсяДокументом Тогда + РеквизитыДокумента.Вставить("Проведен", "Проведен"); + Иначе + РеквизитыДокумента.Вставить("Проведен", "Ложь"); + КонецЕсли; + + Если ЯвляетсяДокументом Тогда + РеквизитыДокумента.Вставить("Дата", "Дата"); + Иначе + РеквизитыДокумента.Вставить("Дата", "NULL"); + КонецЕсли; - КэшРеквизитовДокумента.Вставить(ИмяДокумента, РеквизитыДокумента); + КэшРеквизитовОбъекта.Вставить(ИмяОбъекта, РеквизитыДокумента); КонецЕсли; КонецПроцедуры &НаСервере -Функция ПолучитьСписокДокументовПоКритериюОтбора(ЗначениеКритерияОтбора) +Функция ОбъектыПоКритериюОтбора(ЗначениеКритерияОтбора) Если Метаданные.КритерииОтбора.СвязанныеДокументы.Тип.СодержитТип(ТипЗнч(ЗначениеКритерияОтбора)) Тогда @@ -648,32 +709,32 @@ КонецФункции &НаСервере -Процедура ВывестиПодчиненныеДокументы(ТекущийДокумент,ДеревоРодитель) +Процедура ВывестиПодчиненныеОбъекты(ТекущийОбъект,ДеревоРодитель) СтрокиДерева = ДеревоРодитель.ПолучитьЭлементы(); - Таблица = ПолучитьСписокДокументовПоКритериюОтбора(ТекущийДокумент); + Таблица = ОбъектыПоКритериюОтбора(ТекущийОбъект); Если Таблица = Неопределено Тогда Возврат; КонецЕсли; - КэшПоТипамДокументов = Новый Соответствие; - КэшРеквизитовДокумента = Новый Соответствие; + КэшПоТипамОбъектов = Новый Соответствие; + КэшРеквизитовОбъекта = Новый Соответствие; Для Каждого СтрокаТаблицы Из Таблица Цикл - МетаданныеДокумента = СтрокаТаблицы.Ссылка.Метаданные(); - Если Не ПравоДоступа("Чтение", МетаданныеДокумента) Тогда + МетаданныеОбъекта = СтрокаТаблицы.Ссылка.Метаданные(); + Если Не ПравоДоступа("Чтение", МетаданныеОбъекта) Тогда Продолжить; КонецЕсли; - ИмяДокумента = МетаданныеДокумента.Имя; - ДополнитьКэшМетаданных(МетаданныеДокумента, ИмяДокумента,КэшРеквизитовДокумента); + ПолноеИмяОбъекта = МетаданныеОбъекта.ПолноеИмя(); + ДополнитьКэшМетаданных(МетаданныеОбъекта, ПолноеИмяОбъекта, КэшРеквизитовОбъекта); - МассивСсылок = КэшПоТипамДокументов[ИмяДокумента]; + МассивСсылок = КэшПоТипамОбъектов[ПолноеИмяОбъекта]; Если МассивСсылок = Неопределено Тогда МассивСсылок = Новый Массив; - КэшПоТипамДокументов.Вставить(ИмяДокумента, МассивСсылок); + КэшПоТипамОбъектов.Вставить(ПолноеИмяОбъекта, МассивСсылок); КонецЕсли; @@ -681,36 +742,43 @@ КонецЦикла; - Если КэшПоТипамДокументов.Количество() = 0 Тогда + Если КэшПоТипамОбъектов.Количество() = 0 Тогда Возврат; КонецЕсли; ТекстЗапросаНачало = "ВЫБРАТЬ РАЗРЕШЕННЫЕ * ИЗ ("; - ТекстЗапросаКонец = ") КАК ПодчиненныеДокументы УПОРЯДОЧИТЬ ПО ПодчиненныеДокументы.Дата"; + ТекстЗапросаКонец = ") КАК ПодчиненныеОбъекты УПОРЯДОЧИТЬ ПО ПодчиненныеОбъекты.Дата"; Запрос = Новый Запрос; ТекстЗапроса = ""; - Для Каждого КлючИЗначение Из КэшПоТипамДокументов Цикл + Для Каждого КлючИЗначение Из КэшПоТипамОбъектов Цикл + + МассивИмениОбъекта = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(КлючИЗначение.Ключ, "."); + Если МассивИмениОбъекта.Количество() = 2 Тогда + ИмяОбъекта = МассивИмениОбъекта[1]; + Иначе + Продолжить; + КонецЕсли; - ТекстПоТипуДокумента = " - | Дата, + ТекстПоТипуОбъекта = " + |" + КэшРеквизитовОбъекта[КлючИЗначение.Ключ]["Дата"] + " КАК Дата, | Ссылка, - | Проведен, + |" + КэшРеквизитовОбъекта[КлючИЗначение.Ключ]["Проведен"] + " КАК Проведен, | ПометкаУдаления, - |" + КэшРеквизитовДокумента[КлючИЗначение.Ключ]["СуммаДокумента"] + " КАК СуммаДокумента, - |" + КэшРеквизитовДокумента[КлючИЗначение.Ключ]["Валюта"] + " КАК Валюта, + |" + КэшРеквизитовОбъекта[КлючИЗначение.Ключ]["СуммаДокумента"] + " КАК СуммаДокумента, + |" + КэшРеквизитовОбъекта[КлючИЗначение.Ключ]["Валюта"] + " КАК Валюта, | #Представление |ИЗ - | Документ." + КлючИЗначение.Ключ + " + | " + КлючИЗначение.Ключ + " |ГДЕ - | Ссылка В (&" + КлючИЗначение.Ключ + ")"; + | Ссылка В (&" + ИмяОбъекта + ")"; - Запрос.УстановитьПараметр(КлючИЗначение.Ключ, КлючИЗначение.Значение); + Запрос.УстановитьПараметр(ИмяОбъекта, КлючИЗначение.Значение); - МассивДопРеквизитов = СтруктураПодчиненностиПереопределяемый.МассивДополнительныхРеквизитовДокумента(КлючИЗначение.Ключ); - ДополнитьТекстЗапросаПоРеквизитамДокумента(ТекстПоТипуДокумента, МассивДопРеквизитов); + МассивДопРеквизитов = СтруктураПодчиненностиПереопределяемый.МассивРеквизитовОбъектаДляФормированияПредставления(ИмяОбъекта); + ДополнитьТекстЗапросаПоРеквизитамОбъекта(ТекстПоТипуОбъекта, МассивДопРеквизитов); - ТекстЗапроса = ТекстЗапроса + ?(ТекстЗапроса = "", " ВЫБРАТЬ ", " ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ") + ТекстПоТипуДокумента; + ТекстЗапроса = ТекстЗапроса + ?(ТекстЗапроса = "", " ВЫБРАТЬ ", " ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ") + ТекстПоТипуОбъекта; КонецЦикла; @@ -720,8 +788,8 @@ Пока Выборка.Следующий() Цикл НоваяСтрока = ДобавитьСтрокуВДерево(СтрокиДерева, Выборка); - Если НЕ ДобавляемыйДокументИмеетсяСредиРодителей(ДеревоРодитель,Выборка.Ссылка) Тогда - ВывестиПодчиненныеДокументы(Выборка.Ссылка,НоваяСтрока) + Если НЕ ДобавляемыйОбъектИмеетсяСредиРодителей(ДеревоРодитель,Выборка.Ссылка) Тогда + ВывестиПодчиненныеОбъекты(Выборка.Ссылка,НоваяСтрока) КонецЕсли; КонецЦикла; @@ -734,11 +802,11 @@ НоваяСтрока = СтрокиДерева.Добавить(); ЗаполнитьЗначенияСвойств(НоваяСтрока, Выборка, "Ссылка, Представление, СуммаДокумента, Валюта, Проведен, ПометкаУдаления"); - ПереопределенноеПредставление = СтруктураПодчиненностиПереопределяемый.ПолучитьПредставлениеДокументаДляПечати(Выборка); + ПереопределенноеПредставление = СтруктураПодчиненностиПереопределяемый.ПредставлениеОбъектаДляВыводаВОтчет(Выборка); Если ПереопределенноеПредставление <> Неопределено Тогда НоваяСтрока.Представление = ПереопределенноеПредставление; Иначе - НоваяСтрока.Представление = ПолучитьПредставлениеДокументаДляПечати(Выборка); + НоваяСтрока.Представление = ПредставлениеОбъектаДляВыводаВОтчет(Выборка); КонецЕсли; Возврат НоваяСтрока; @@ -746,7 +814,7 @@ КонецФункции &НаСервере -Процедура ДополнитьТекстЗапросаПоРеквизитамДокумента(ТекстЗапроса, МассивРеквизитов) +Процедура ДополнитьТекстЗапросаПоРеквизитамОбъекта(ТекстЗапроса, МассивРеквизитов) ТекстПредставление = "Представление КАК Представление"; @@ -761,9 +829,9 @@ КонецПроцедуры -Функция ИмяРеквизитаДокумента(ИмяДокумента, Реквизит) +Функция ИмяРеквизитаДокумента(ИмяОбъекта, Реквизит) - ИмяРеквизитаДокумента = СтруктураПодчиненностиПереопределяемый.ИмяРеквизитаДокумента(ИмяДокумента, Реквизит); + ИмяРеквизитаДокумента = СтруктураПодчиненностиПереопределяемый.ИмяРеквизитаДокумента(ИмяОбъекта, Реквизит); Если Реквизит = "СуммаДокумента" Тогда Возврат ?(ИмяРеквизитаДокумента = Неопределено,"СуммаДокумента",ИмяРеквизитаДокумента); diff --git a/SSL/src/CommonForms/УстановкаВедущейКонечнойТочки/Module.bsl b/SSL/src/CommonForms/УстановкаВедущейКонечнойТочки/Module.bsl index ee6308fdc..f1e96bf27 100644 --- a/SSL/src/CommonForms/УстановкаВедущейКонечнойТочки/Module.bsl +++ b/SSL/src/CommonForms/УстановкаВедущейКонечнойТочки/Module.bsl @@ -21,11 +21,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) ТекстПредупреждения = НСтр("ru = 'Отменить выполнение операции?'"); ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы( - ЭтотОбъект, Отказ, ТекстПредупреждения, "ЗакрытьФормуБезусловно"); + ЭтотОбъект, Отказ, ЗавершениеРаботы, ТекстПредупреждения, "ЗакрытьФормуБезусловно"); КонецПроцедуры diff --git a/SSL/src/CommonForms/УстановленныеРасширения/Form.form b/SSL/src/CommonForms/УстановленныеРасширения/Form.form deleted file mode 100644 index 49a7ed9d5..000000000 --- a/SSL/src/CommonForms/УстановленныеРасширения/Form.form +++ /dev/null @@ -1,1541 +0,0 @@ - - - - СтраницыОбновление - 101 - - СтраницаСписокРасширений - 108 - - ГруппаПредупреждение - 78 - - ПредупреждениеКартинка - 80 - - <key>ru</key> - <value>Предупреждение картинка</value> - - true - true - - true - - - ПредупреждениеКартинкаРасширеннаяПодсказка - 82 - Label - true - true - - Left - - - - ПредупреждениеКартинкаКонтекстноеМеню - 81 - true - - 6 - true - 2 - true - - - CommonPicture.Предупреждение32 - - - - - ГруппаПредупреждениеОписание - 88 - - ПредупреждениеОписание - 83 - - <key>ru</key> - <value>Чтобы продолжить работу с учетом сделанных изменений, необходимо перезапустить сеанс.</value> - - true - true - - true - - - ПредупреждениеОписаниеРасширеннаяПодсказка - 85 - Label - true - true - - Left - - - - ПредупреждениеОписаниеКонтекстноеМеню - 84 - true - - Label - true - true - - Left - - - - ПерезапуститьПрограмму - 86 - - <key>ru</key> - <value>Перезапустить</value> - - true - true - - true - - - ПерезапуститьПрограммуРасширеннаяПодсказка - 87 - Label - true - true - - Left - - - UsualButton - Form.Command.ПерезапуститьПрограмму - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Группа предупреждение описание</value> - - - ГруппаПредупреждениеОписаниеРасширеннаяПодсказка - 89 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа предупреждение</value> - - - ru - Группа предупреждение - - - ГруппаПредупреждениеРасширеннаяПодсказка - 79 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаИнформация - 121 - - ИнформацияКартинка - 123 - - <key>ru</key> - <value>Информация картинка</value> - - true - true - - true - - - ИнформацияКартинкаРасширеннаяПодсказка - 125 - Label - true - true - - Left - - - - ИнформацияКартинкаКонтекстноеМеню - 124 - true - - 6 - true - 2 - true - - - CommonPicture.Информация32 - - - - - ГруппаИнформацияОписание - 126 - - ИнформацияОписание - 128 - - <key>ru</key> - <value>Изменения вступят в силу для всех пользователей области данных при следующем входе в программу.</value> - - true - true - - true - - - ИнформацияОписаниеРасширеннаяПодсказка - 130 - Label - true - true - - Left - - - - ИнформацияОписаниеКонтекстноеМеню - 129 - true - - Label - true - true - - Left - Center - 2 - - - true - true - - true - - - <key>ru</key> - <value>Группа информация описание</value> - - - ГруппаИнформацияОписаниеРасширеннаяПодсказка - 127 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа информация</value> - - - ГруппаИнформацияРасширеннаяПодсказка - 122 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - СписокРасширений - 19 - true - true - - true - - - СписокРасширений - - None - CancelSearch - Change - Copy - CopyToClipboard - EndEdit - Find - MoveDown - MoveUp - OutputList - ShowRowRearrangement - SortListAsc - SortListDesc - - СписокРасширенийСиноним - 53 - - <key>ru</key> - <value>Наименование</value> - - true - true - - true - - - СписокРасширений.Синоним - - - СписокРасширенийСинонимРасширеннаяПодсказка - 55 - Label - true - true - - Left - - - - СписокРасширенийСинонимКонтекстноеМеню - 54 - true - - InputField - true - Auto - true - Left - true - - 50 - true - true - true - true - true - true - Normal - - - - СписокРасширенийВерсия - 38 - true - true - - true - - - СписокРасширений.Версия - - - СписокРасширенийВерсияРасширеннаяПодсказка - 40 - Label - true - true - - Left - - - - СписокРасширенийВерсияКонтекстноеМеню - 39 - true - - InputField - true - Auto - true - Left - true - - 10 - true - true - true - true - true - true - Normal - - - - СписокРасширенийКонтрольнаяСумма - 98 - true - true - - - СписокРасширений.КонтрольнаяСумма - - - СписокРасширенийКонтрольнаяСуммаРасширеннаяПодсказка - 100 - Label - true - true - - Left - - - - СписокРасширенийКонтрольнаяСуммаКонтекстноеМеню - 99 - true - - InputField - true - Auto - true - Left - true - - true - true - true - true - true - true - Normal - - - - СписокРасширенийБезопасныйРежимФлаг - 50 - true - true - - true - - - СписокРасширений.БезопасныйРежимФлаг - - - СписокРасширенийБезопасныйРежимФлагРасширеннаяПодсказка - 52 - Label - true - true - - Left - - - - СписокРасширенийБезопасныйРежимФлагКонтекстноеМеню - 51 - true - - CheckBoxField - Auto - true - Left - true - - - None - - СписокРасширенийКоманднаяПанель - 21 - Left - true - - - OnEditEnd - СписокРасширенийПриОкончанииРедактирования - - - BeforeAddRow - СписокРасширенийПередНачаломДобавления - - - BeforeDeleteRow - СписокРасширенийПередУдалением - - - OnActivateRow - СписокРасширенийПриАктивизацииСтроки - - - СписокРасширенийСтрокаПоиска - 23 - - СписокРасширенийСтрокаПоискаРасширеннаяПодсказка - 25 - Label - true - true - - Left - - - - СписокРасширенийСтрокаПоискаКонтекстноеМеню - 24 - true - - СписокРасширений - - true - - - - СписокРасширенийСостояниеПросмотра - 26 - - СписокРасширенийСостояниеПросмотраРасширеннаяПодсказка - 28 - Label - true - true - - Left - - - - СписокРасширенийСостояниеПросмотраКонтекстноеМеню - 27 - true - - ViewStatusAddition - СписокРасширений - - true - - - - СписокРасширенийУправлениеПоиском - 29 - - СписокРасширенийУправлениеПоискомРасширеннаяПодсказка - 31 - Label - true - true - - Left - - - - СписокРасширенийУправлениеПоискомКонтекстноеМеню - 30 - true - - SearchControlAddition - СписокРасширений - - true - - - - СписокРасширенийРасширеннаяПодсказка - 22 - Label - true - true - - Left - - - - СписокРасширенийКонтекстноеМеню - 20 - - СписокРасширенийКонтекстноеМенюДобавить - 113 - true - true - - true - - - СписокРасширенийКонтекстноеМенюДобавитьРасширеннаяПодсказка - 114 - Label - true - true - - Left - - - Form.Item.СписокРасширений.StandardCommand.Add - Normal - Auto - true - true - UserCmds - Auto - - - СписокРасширенийКонтекстноеМенюУдалить - 115 - true - true - - true - - - СписокРасширенийКонтекстноеМенюУдалитьРасширеннаяПодсказка - 116 - Label - true - true - - Left - - - Form.Item.СписокРасширений.StandardCommand.Delete - Normal - Auto - true - true - UserCmds - Auto - - - СписокРасширенийКонтекстноеМенюГруппа - 119 - - СписокРасширенийКонтекстноеМенюВыделитьВсе - 117 - true - true - - true - - - СписокРасширенийКонтекстноеМенюВыделитьВсеРасширеннаяПодсказка - 118 - Label - true - true - - Left - - - Form.Item.СписокРасширений.StandardCommand.SelectAll - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Список расширений контекстное меню группа</value> - - - СписокРасширенийКонтекстноеМенюГруппаРасширеннаяПодсказка - 120 - Label - true - true - - Left - - - - - - СписокРасширенийКонтекстноеМенюОбновитьИзФайлаНаДиске - 64 - true - true - - true - - - СписокРасширенийКонтекстноеМенюОбновитьИзФайлаНаДискеРасширеннаяПодсказка - 65 - Label - true - true - - Left - - - Form.Command.ОбновитьИзФайлаНаДиске - Normal - Auto - true - true - UserCmds - Auto - - - СписокРасширенийКонтекстноеМенюСохранитьКак - 66 - true - true - - true - - - СписокРасширенийКонтекстноеМенюСохранитьКакРасширеннаяПодсказка - 67 - Label - true - true - - Left - - - Form.Command.СохранитьКак - Normal - Auto - true - true - UserCmds - Auto - - - true - true - true - true - true - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - true - Auto - Auto - true - true - true - true - - CommonPicture.ПиктограммыЭлементов - - true - -
        - true - true - - true - - - <key>ru</key> - <value>Страница список расширений</value> - - - СтраницаСписокРасширенийРасширеннаяПодсказка - 109 - Label - true - true - - Left - - - Page - - Vertical - auto - false - -
        - - СтраницаДлительнаяОперация - 103 - - ДлительнаяОперация - 105 - true - true - - true - - - ДлительнаяОперацияРасширеннаяПодсказка - 107 - Label - true - true - - Left - - - - ДлительнаяОперацияКонтекстноеМеню - 106 - true - - 5 - true - 3 - true - - - CommonPicture.ДлительнаяОперация48 - - - - - ДлительнаяОперацияНадпись - 110 - - <key>ru</key> - <value>Выполняется подготовка расширений к использованию. Пожалуйста, подождите...</value> - - true - true - - true - - - ДлительнаяОперацияНадписьРасширеннаяПодсказка - 112 - Label - true - true - - Left - - - - ДлительнаяОперацияНадписьКонтекстноеМеню - 111 - true - - Label - true - 3 - true - - Left - Center - - - true - true - - true - - - СтраницаДлительнаяОперацияРасширеннаяПодсказка - 104 - Label - true - true - - Left - - - Page - - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Страницы обновление</value> - - - СтраницыОбновлениеРасширеннаяПодсказка - 102 - Label - true - true - - Left - - - Pages - - Auto - -
        - Top - true - - ФормаКоманднаяПанель - -1 - - СписокРасширенийДобавить - 58 - true - true - - true - - - СписокРасширенийДобавитьРасширеннаяПодсказка - 59 - Label - true - true - - Left - - - Form.Item.СписокРасширений.StandardCommand.Add - Normal - Auto - true - true - UserCmds - Auto - - - СписокРасширенийУдалить - 60 - true - true - - true - - - СписокРасширенийУдалитьРасширеннаяПодсказка - 61 - Label - true - true - - Left - - - Form.Item.СписокРасширений.StandardCommand.Delete - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - КнопкиСписка - 56 - - СписокРасширенийОбновитьИСохранить - 96 - - СписокРасширенийОбновитьИзФайлаНаДиске - 92 - true - true - - true - - - СписокРасширенийОбновитьИзФайлаНаДискеРасширеннаяПодсказка - 93 - Label - true - true - - Left - - - Form.Command.ОбновитьИзФайлаНаДиске - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - - СписокРасширенийСохранитьКак - 94 - true - true - - true - - - СписокРасширенийСохранитьКакРасширеннаяПодсказка - 95 - Label - true - true - - Left - - - Form.Command.СохранитьКак - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - true - true - - true - - - <key>ru</key> - <value>Список расширений обновить и сохранить</value> - - - ru - Список расширений обновить и сохранить - - - СписокРасширенийОбновитьИСохранитьРасширеннаяПодсказка - 97 - Label - true - true - - Left - - - - - - СписокРасширенийОбновить - 68 - true - true - - true - - - СписокРасширенийОбновитьРасширеннаяПодсказка - 69 - Label - true - true - - Left - - - Form.Command.Обновить - Normal - true - true - UserCmds - Auto - InAdditionalSubmenu - - - СписокРасширенийПерезапуститьПрограмму - 70 - true - true - - true - - - СписокРасширенийПерезапуститьПрограммуРасширеннаяПодсказка - 71 - Label - true - true - - Left - - - Form.Command.ПерезапуститьПрограмму - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - true - true - - true - - - <key>ru</key> - <value>Кнопки списка</value> - - - КнопкиСпискаРасширеннаяПодсказка - 57 - Label - true - true - - Left - - - - Item.СписокРасширений - - - - ФормаУдалитьКэшиРасширений - 131 - true - true - - - ФормаУдалитьКэшиРасширенийРасширеннаяПодсказка - 132 - Label - true - true - - Left - - - Form.Command.УдалитьУстаревшиеКэшиРасширений - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - - ФормаСправка - 74 - true - true - - true - - - ФормаСправкаРасширеннаяПодсказка - 75 - Label - true - true - - Left - - - Form.StandardCommand.Help - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - Left - true - - - OnCreateAtServer - ПриСозданииНаСервере - - 80 - DontBlock - true - true - true - Vertical - true - true - true - auto - true - - СписокРасширений - - <key>ru</key> - <value>Список расширений</value> - - 2 - - ValueTable - - - true - - - true - - true - - ИдентификаторРасширения - - <key>ru</key> - <value>Идентификатор расширения</value> - - 1 - - String - - 36 - true - - - - true - - - true - - - - Имя - - <key>ru</key> - <value>Имя</value> - - 2 - - String - - - - true - - - true - - - - Версия - - <key>ru</key> - <value>Версия</value> - - 3 - - String - - - - true - - - true - - - - БезопасныйРежим - - <key>ru</key> - <value>Безопасный режим</value> - - 4 - - Boolean - String - - - - true - - - true - - - - КонтрольнаяСумма - - <key>ru</key> - <value>Контрольная сумма</value> - - 6 - - String - - - - true - - - true - - - - БезопасныйРежимФлаг - - <key>ru</key> - <value>Безопасный режим</value> - - 7 - - Boolean - - - true - - - true - - - - Синоним - - <key>ru</key> - <value>Синоним</value> - - 8 - - String - - - - true - - - true - - - - - РасширенияИзменены - - <key>ru</key> - <value>Расширения изменены</value> - - 1 - - Boolean - - - true - - - true - - - - ИдентификаторТекущейСтроки - - <key>ru</key> - <value>Идентификатор текущей строки</value> - - 3 - - - true - - - true - - - - УстановленныеРасширенияНедоступны - - <key>ru</key> - <value>Установленные расширения недоступны</value> - - 4 - - Boolean - - - true - - - true - - - - ОбновитьИзФайлаНаДиске - - <key>ru</key> - <value>Обновить из файла на диске...</value> - - 1 - - ru - Обновить из файла на диске - - - true - - - CommonPicture.ОбновитьФайлИзФайлаНаДиске - - - - ОбновитьИзФайлаНаДиске - - - DontUse - Auto - - - СохранитьКак - - <key>ru</key> - <value>Сохранить как...</value> - - 2 - - ru - Сохранить как - - - true - - - CommonPicture.СохранитьФайлКак - - - - СохранитьКак - - - DontUse - Auto - - - Обновить - - <key>ru</key> - <value>Обновить</value> - - 3 - - ru - Обновить - - - true - - F5 - - StdPicture.Refresh - - - - Обновить - - - DontUse - Auto - - - ПерезапуститьПрограмму - - <key>ru</key> - <value>Перезапустить программу</value> - - 4 - - ru - Перезапустить программу - - - true - - - - ПерезапуститьПрограмму - - - DontUse - Auto - - - УдалитьУстаревшиеКэшиРасширений - - <key>ru</key> - <value>Удалить устаревшие кэши расширений</value> - - 5 - - ru - Удалить устаревшие версии параметров работы расширений - - - true - - - - УдалитьУстаревшиеКэшиРасширений - - - DontUse - Auto - - - - - -
        diff --git a/SSL/src/CommonForms/УточнениеКонтактов/Form.form b/SSL/src/CommonForms/УточнениеКонтактов/Form.form index 72e3017ec..6a91b07e1 100644 --- a/SSL/src/CommonForms/УточнениеКонтактов/Form.form +++ b/SSL/src/CommonForms/УточнениеКонтактов/Form.form @@ -105,7 +105,7 @@ Left true - true + 30 true true true @@ -169,6 +169,7 @@ ChoiceProcessing ТаблицаКонтактовКонтактОбработкаВыбора + 30 true true true @@ -222,7 +223,7 @@ ChoiceProcessing ТаблицаКонтактовТекущийАдресКонтактаОбработкаВыбора - true + 20 true true false @@ -434,7 +435,6 @@ OnCreateAtServer ПриСозданииНаСервере - 150 LockOwner true true @@ -831,6 +831,13 @@ AnyRef
        + + Письмо + + DocumentRef.ЭлектронноеПисьмоИсходящее + DocumentRef.ЭлектронноеПисьмоВходящее + + diff --git a/SSL/src/CommonForms/УточнениеКонтактов/Module.bsl b/SSL/src/CommonForms/УточнениеКонтактов/Module.bsl index c69bfb42d..d12edfc3e 100644 --- a/SSL/src/CommonForms/УточнениеКонтактов/Module.bsl +++ b/SSL/src/CommonForms/УточнениеКонтактов/Module.bsl @@ -36,10 +36,10 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Оповещение = Новый ОписаниеОповещения("СохранитьИЗакрыть", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы); КонецПроцедуры @@ -58,6 +58,10 @@ КонецПроцедуры +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы + &НаКлиенте Процедура ТаблицаКонтактовПриАктивизацииЯчейки(Элемент) @@ -202,6 +206,7 @@ ПараметрыОткрытия.Вставить("ТолькоТелефон", Ложь); ПараметрыОткрытия.Вставить("ЗаменятьПустыеАдресИПредставление", Ложь); ПараметрыОткрытия.Вставить("ДляФормыУточненияКонтактов", Истина); + ПараметрыОткрытия.Вставить("ИдентификаторФормы", УникальныйИдентификатор); ВзаимодействияКлиент.ВыбратьКонтакт( Предмет, ТекущиеДанные.Адрес, ТекущиеДанные.Представление, @@ -372,7 +377,7 @@ &НаСервере Процедура ЗаполнитьТаблицыТекущихEmailКонтактов() - МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); ТекстЗапроса = "ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ | Контакты.Контакт diff --git a/SSL/src/CommonForms/ФайлыВТоме/Form.form b/SSL/src/CommonForms/ФайлыВТоме/Form.form index cacdb4f8a..e5b6ca654 100644 --- a/SSL/src/CommonForms/ФайлыВТоме/Form.form +++ b/SSL/src/CommonForms/ФайлыВТоме/Form.form @@ -61,7 +61,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 31 @@ -432,11 +431,6 @@ OnCreateAtServer ПриСозданииНаСервере - - OnClose - ПриЗакрытии - - 80 DontBlock true true @@ -558,23 +552,6 @@ true
        - - СохранитьНастройкиОтбораХранилищ - - <key>ru</key> - <value>Сохранить настройки отбора хранилищ</value> - - 1 - - Boolean - - - true - - - true - - Том diff --git a/SSL/src/CommonForms/ФайлыВТоме/Module.bsl b/SSL/src/CommonForms/ФайлыВТоме/Module.bsl index 755912f5e..6f364a69b 100644 --- a/SSL/src/CommonForms/ФайлыВТоме/Module.bsl +++ b/SSL/src/CommonForms/ФайлыВТоме/Module.bsl @@ -44,15 +44,6 @@ КонецПроцедуры -&НаКлиенте -Процедура ПриЗакрытии() - - Если СохранитьНастройкиОтбораХранилищ Тогда - СохранитьНастройкиОтбора(Том, ИмяХранилищаФайлов); - КонецЕсли; - -КонецПроцедуры - #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы @@ -73,7 +64,6 @@ ИмяХранилищаФайлов = ТекущееХранилище.Значение; ПредставлениеХранилищаФайлов = ТекущееХранилище.Представление; НастроитьДинамическийСписок(ИмяХранилищаФайлов); - СохранитьНастройкиОтбораХранилищ = Истина; КонецЕсли; КонецПроцедуры @@ -128,6 +118,8 @@ Список.Параметры.УстановитьЗначениеПараметра("Том", Том); Список.ОсновнаяТаблица = "Справочник." + ИмяХранилища; + СохранитьНастройкиОтбора(Том, ИмяХранилищаФайлов); + КонецПроцедуры &НаСервере diff --git a/SSL/src/CommonForms/ФормаВариантаОтчета/Form.form b/SSL/src/CommonForms/ФормаВариантаОтчета/Form.form index 7fdca5d31..b3b6cafbc 100644 --- a/SSL/src/CommonForms/ФормаВариантаОтчета/Form.form +++ b/SSL/src/CommonForms/ФормаВариантаОтчета/Form.form @@ -262,7 +262,6 @@ true true true - 50 true true true @@ -600,7 +599,6 @@ true true true - 60 true true 15 @@ -820,11 +818,8 @@ true Label - true 2 true - true - false Left @@ -1071,10 +1066,8 @@ true true true - 60 true true - 15 true true MultiRow @@ -1294,11 +1287,7 @@ true Label - true - 3 true - true - false Left @@ -1331,7 +1320,6 @@ true Label - true true @@ -1400,11 +1388,7 @@ true Label - true - 2 true - true - false Left @@ -1437,7 +1421,6 @@ true Label - true true @@ -1690,10 +1673,8 @@ true true true - 60 true true - 15 true true MultiRow @@ -1915,11 +1896,7 @@ true Label - true - 3 true - true - false Left @@ -1952,7 +1929,6 @@ true Label - true true @@ -2021,11 +1997,7 @@ true Label - true - 2 true - true - false Left @@ -2058,7 +2030,6 @@ true Label - true true @@ -2311,10 +2282,8 @@ true true true - 60 true true - 15 true true MultiRow @@ -2532,11 +2501,7 @@ true Label - true - 3 true - true - false Left @@ -2569,7 +2534,6 @@ true Label - true true @@ -2638,11 +2602,7 @@ true Label - true - 2 true - true - false Left @@ -2675,7 +2635,6 @@ true Label - true true @@ -3009,11 +2968,7 @@ true Label - true - 3 true - true - false Left @@ -3046,7 +3001,6 @@ true Label - true true @@ -3115,11 +3069,7 @@ true Label - true - 2 true - true - false Left @@ -3152,7 +3102,6 @@ true Label - true true @@ -3405,7 +3354,6 @@ true true true - 50 true true true @@ -3486,11 +3434,7 @@ true Label - true - 3 true - true - false Left @@ -3523,7 +3467,6 @@ true Label - true true @@ -3592,11 +3535,7 @@ true Label - true - 2 true - true - false Left @@ -3629,7 +3568,6 @@ true Label - true true @@ -3957,7 +3895,9 @@ true - + + true + ЗавершитьРедактирование @@ -3991,6 +3931,10 @@ + + OnLoadUserSettingsAtServer + ПриЗагрузкеПользовательскихНастроекНаСервере + Variant diff --git a/SSL/src/CommonForms/ФормаВариантаОтчета/Module.bsl b/SSL/src/CommonForms/ФормаВариантаОтчета/Module.bsl index 3e76e0b1e..69e8d83ae 100644 --- a/SSL/src/CommonForms/ФормаВариантаОтчета/Module.bsl +++ b/SSL/src/CommonForms/ФормаВариантаОтчета/Module.bsl @@ -374,6 +374,13 @@ КонецПроцедуры +&НаСервере +Процедура ПриЗагрузкеПользовательскихНастроекНаСервере(Настройки) + НовыеНастройкиКД = Отчет.КомпоновщикНастроек.ПолучитьНастройки(); + Отчет.КомпоновщикНастроек.ЗагрузитьФиксированныеНастройки(Новый НастройкиКомпоновкиДанных); + ОтчетыКлиентСервер.ЗагрузитьНастройки(Отчет.КомпоновщикНастроек, НовыеНастройкиКД); +КонецПроцедуры + &НаКлиенте Процедура ПриОткрытии(Отказ) Если Параметры.ТекущаяСтрока <> Неопределено Тогда @@ -393,26 +400,21 @@ Закрыть(Истина); Иначе РезультатВыбора = Новый Структура; - РезультатВыбора.Вставить("ВариантМодифицирован", Ложь); - РезультатВыбора.Вставить("ПользовательскиеНастройкиМодифицированы", Ложь); - - Если ВариантМодифицирован Тогда - РезультатВыбора.ВариантМодифицирован = Истина; - РезультатВыбора.Вставить("НастройкиКД", Отчет.КомпоновщикНастроек.Настройки); - КонецЕсли; - - Если ВариантМодифицирован Или ПользовательскиеНастройкиМодифицированы Тогда - РезультатВыбора.ПользовательскиеНастройкиМодифицированы = Истина; - РезультатВыбора.Вставить("ПользовательскиеНастройкиКД", Отчет.КомпоновщикНастроек.ПользовательскиеНастройки); - КонецЕсли; + РезультатВыбора.Вставить("ВариантМодифицирован", ВариантМодифицирован); + РезультатВыбора.Вставить("ПользовательскиеНастройкиМодифицированы", ВариантМодифицирован Или ПользовательскиеНастройкиМодифицированы); #Если ВебКлиент Тогда РезультатВыбора.ВариантМодифицирован = Истина; // Для платформы. - РезультатВыбора.Вставить("НастройкиКД", Отчет.КомпоновщикНастроек.Настройки); РезультатВыбора.ПользовательскиеНастройкиМодифицированы = Истина; - РезультатВыбора.Вставить("ПользовательскиеНастройкиКД", Отчет.КомпоновщикНастроек.ПользовательскиеНастройки); #КонецЕсли + Если РезультатВыбора.ВариантМодифицирован Тогда + РезультатВыбора.Вставить("НастройкиКД", Отчет.КомпоновщикНастроек.Настройки); + КонецЕсли; + Если РезультатВыбора.ПользовательскиеНастройкиМодифицированы Тогда + РезультатВыбора.Вставить("СброситьПользовательскиеНастройки", Истина); + КонецЕсли; + ОповеститьОВыборе(РезультатВыбора); КонецЕсли; КонецПроцедуры diff --git a/SSL/src/CommonForms/ФормаНастроекОтчета/ConditionalAppearance.dcssca b/SSL/src/CommonForms/ФормаНастроекОтчета/ConditionalAppearance.dcssca deleted file mode 100644 index 6aee488fa..000000000 --- a/SSL/src/CommonForms/ФормаНастроекОтчета/ConditionalAppearance.dcssca +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - СтруктураВариантаПредставление - - - - - СтруктураВарианта.ЭтоГруппа - Equal - true - - - - - Шрифт - - - - - - - - СтруктураВариантаПредставление - - - - - СтруктураВарианта.Подсвечивать - Equal - true - - - - - Шрифт - - - - - - - - СтруктураВариантаИспользование - - - - - СтруктураВарианта.ФлажокДоступен - Equal - false - - - - - false - Шрифт - - - - Видимость - false - - - Отображать - false - - - - diff --git a/SSL/src/CommonForms/ФормаНастроекОтчета/Form.form b/SSL/src/CommonForms/ФормаНастроекОтчета/Form.form index 5cbb65ac3..3fb1e045d 100644 --- a/SSL/src/CommonForms/ФормаНастроекОтчета/Form.form +++ b/SSL/src/CommonForms/ФормаНастроекОтчета/Form.form @@ -2037,9 +2037,7 @@ 809 true - 2 true - 1 true @@ -2076,7 +2074,6 @@ true Label - true true Style.ПоясняющийТекст @@ -3122,37 +3119,6 @@ КомандыПолейИСортировок 902 - - Декорация1 - 904 - true - true - - true - - - Декорация1РасширеннаяПодсказка - 906 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 905 - true - - Label - true - true - true - - Left - - ВыбранныеПоля_Сортировка_Вправо 907 @@ -3234,67 +3200,6 @@ UserCmds Auto - - Декорация2 - 913 - true - true - - true - - - Декорация2РасширеннаяПодсказка - 915 - Label - true - true - - Left - - - - Декорация2КонтекстноеМеню - 914 - true - - Label - true - true - true - - Left - - - - Декорация3 - 1010 - true - true - - true - - - Декорация3РасширеннаяПодсказка - 1012 - Label - true - true - - Left - - - - Декорация3КонтекстноеМеню - 1011 - true - - Label - true - true - - Left - - true true @@ -3308,6 +3213,7 @@ ru Команды полей и сортировок + Center КомандыПолейИСортировокРасширеннаяПодсказка 903 @@ -4383,9 +4289,7 @@ 1005 true - 2 true - 1 true @@ -4422,7 +4326,6 @@ true Label - true true Style.ПоясняющийТекст @@ -5104,9 +5007,7 @@ 929 true - 2 true - 1 true @@ -5143,7 +5044,6 @@ true Label - true true Style.ПоясняющийТекст @@ -6730,9 +6630,7 @@ 1079 true - 2 true - 1 true @@ -6770,7 +6668,6 @@ true Label - true true @@ -6848,8 +6745,6 @@ ru Страницы настроек - true - true СтраницыНастроекРасширеннаяПодсказка 36 @@ -6896,9 +6791,7 @@ 794 true - 2 true - 1 true @@ -6936,7 +6829,6 @@ true Label - true true @@ -7063,6 +6955,7 @@ ru Изменить форму... + true true true @@ -7086,7 +6979,6 @@ Auto InCommandBarAndInAdditionalSubmenu - true true true @@ -7253,6 +7145,7 @@ UsualGroup Auto + WeakSeparation true true Auto @@ -7301,7 +7194,9 @@ true - + + true + ПостоянныеКоманды @@ -7313,8 +7208,12 @@ ValueList - - + + true + + + true + @@ -7329,8 +7228,12 @@ ValueList - - + + true + + + true + @@ -8860,6 +8763,10 @@ 6 String + Number + + 10 + @@ -9190,7 +9097,9 @@ true - + + true + ЗакрытьБезФормирования diff --git a/SSL/src/CommonForms/ФормаНастроекОтчета/Module.bsl b/SSL/src/CommonForms/ФормаНастроекОтчета/Module.bsl index 4baab2172..6afb0ebb3 100644 --- a/SSL/src/CommonForms/ФормаНастроекОтчета/Module.bsl +++ b/SSL/src/CommonForms/ФормаНастроекОтчета/Module.bsl @@ -157,28 +157,36 @@ Если Не РежимИзмененияУзлаВарианта И РасширенныйРежим = 1 Тогда ПараметрыЗаполнения.Вставить("ОбновитьНастройкиВарианта", Истина); КонецЕсли; - РезультатЗаполненияНастроек = БыстрыеНастройкиЗаполнить(ПараметрыЗаполнения); + БыстрыеНастройкиЗаполнить(ПараметрыЗаполнения); КонецЕсли; КонецПроцедуры &НаКлиенте Процедура ПриОткрытии(Отказ) ПеременныеКлиента = Новый Структура; - ПоказатьРезультатЗаполненияНастроек(Неопределено); + ПоказатьРезультатЗаполненияНастроек(); КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) ВариантМодифицирован = Ложь; КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() - Если Не РезультатВыбораСформирован Тогда - Если ОписаниеОповещенияОЗакрытии <> Неопределено Тогда - ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗакрытии, РезультатВыбора(Ложь)); - КонецЕсли; +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если ЗавершениеРаботы Тогда + Возврат; КонецЕсли; + + Если РезультатВыбораСформирован Тогда + Возврат; + КонецЕсли; + + Если ОписаниеОповещенияОЗакрытии <> Неопределено Тогда + ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗакрытии, РезультатВыбора(Ложь)); + КонецЕсли; + КонецПроцедуры #КонецОбласти @@ -385,10 +393,7 @@ &НаКлиенте Процедура Подключаемый_ВыбратьПериод(Команда) - КнопкаВыбораИмя = Команда.Имя; - ЗначениеИмя = СтрЗаменить(КнопкаВыбораИмя, "_КнопкаВыбора_", "_Значение_"); - ИдентификаторЭлемента = Прав(КнопкаВыбораИмя, 32); - ОтчетыКлиент.ВыбратьПериод(ЭтотОбъект, ЗначениеИмя, ИдентификаторЭлемента); + ОтчетыКлиент.ВыбратьПериод(ЭтотОбъект, Команда.Имя); КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// @@ -432,62 +437,6 @@ ПользовательскиеНастройкиМодифицированы = Истина; КонецПроцедуры -&НаКлиенте -Процедура Подключаемый_СписокСПодбором_Значение_АвтоПодбор(Элемент, Текст, ДанныеВыбора, ПараметрыПоиска, Ожидание, СтандартнаяОбработка) - Если ПараметрыПоиска = Неопределено Тогда - Возврат; - КонецЕсли; - - ИдентификаторЭлемента = Прав(Элемент.Имя, 32); - - // Добавление динамических параметров выбора (от ведущих). - Найденные = ОтключаемыеСвязи.НайтиСтроки(Новый Структура("ПодчиненныйИдентификаторВФорме", ИдентификаторЭлемента)); - Для Каждого Связь Из Найденные Цикл - Если Не ЗначениеЗаполнено(Связь.ВедущийИдентификаторВФорме) - Или Не ЗначениеЗаполнено(Связь.ПодчиненныйИмяПараметра) Тогда - Продолжить; - КонецЕсли; - ВедущийНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(Связь.ВедущийИдентификаторВФорме); - Если Не ВедущийНастройкаКД.Использование Тогда - Продолжить; - КонецЕсли; - Если ТипЗнч(ВедущийНастройкаКД) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда - ВедущийЗначение = ВедущийНастройкаКД.ПравоеЗначение; - Иначе - ВедущийЗначение = ВедущийНастройкаКД.Значение; - КонецЕсли; - Если Связь.ТипСвязи = "ПараметровВыбора" Тогда - МассивКлючей = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(Связь.ПодчиненныйИмяПараметра, ".", Истина, Истина); - ВГраница = МассивКлючей.ВГраница(); - Контекст = ПараметрыПоиска; - Для Индекс = 0 По ВГраница Цикл - Ключ = МассивКлючей[Индекс]; - Если Индекс = ВГраница Тогда - Контекст.Вставить(Ключ, ВедущийЗначение); - Иначе - ВложенныйКонтекст = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Контекст, Ключ); - Если ВложенныйКонтекст = Неопределено Тогда - ВложенныйКонтекст = Контекст.Вставить(Ключ, Новый Структура); - ИначеЕсли ТипЗнч(ВложенныйКонтекст) <> Тип("Структура") Тогда - Прервать; - КонецЕсли; - Контекст = ВложенныйКонтекст; - КонецЕсли; - КонецЦикла; - ИначеЕсли Связь.ТипСвязи = "ПоТипу" Тогда - ВедущийТип = ТипЗнч(ВедущийЗначение); - ДополнительныеНастройки = НайтиДополнительныеНастройкиЭлемента(ИдентификаторЭлемента); - Если ДополнительныеНастройки <> Неопределено - И ДополнительныеНастройки.ОписаниеТипов.СодержитТип(ВедущийТип) - И ДополнительныеНастройки.ОписаниеТипов.Типы().Количество() > 1 Тогда - МассивТипов = Новый Массив; - МассивТипов.Добавить(ВедущийТип); - Элемент.ДоступныеТипы = Новый ОписаниеТипов(МассивТипов); - КонецЕсли; - КонецЕсли; - КонецЦикла; -КонецПроцедуры - &НаКлиенте Процедура Подключаемый_СписокСПодбором_Использование_ПриИзменении(Элемент) // Включение флажка Использование если пользователь включил флажок в строке таблицы. @@ -512,7 +461,14 @@ КонецПроцедуры &НаКлиенте -Процедура Подключаемый_СписокСПодбором_ПередНачаломИзменения(Элемент, Отказ) +Процедура Подключаемый_СписокСПодбором_ПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование) + // Установка связей и параметров выбора. + ПараметрыОтбора = ОтчетыКлиент.ПараметрыВыбораОтбора(ЭтотОбъект, Элемент); + КолонкаЗначение = Элементы.Найти(СтрЗаменить(Элемент.Имя, "_СписокЗначений_", "_Колонка_Значение_")); + КолонкаЗначение.ПараметрыВыбора = Новый ФиксированныйМассив(ПараметрыОтбора.ПараметрыВыбора); + КолонкаЗначение.ДоступныеТипы = Новый ОписаниеТипов(ПараметрыОтбора.ОписаниеТипов); + + // Сохранение состояния "до изменения". СтрокаИдентификатор = Элемент.ТекущаяСтрока; Если СтрокаИдентификатор = Неопределено Тогда Возврат; @@ -864,6 +820,9 @@ Список = ЭтотОбъект[ПараметрыВыполнения.ТаблицаИмя]; Если ТипЗнч(ПользовательскаяНастройкаКД) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда + Если ПользовательскаяНастройкаКД.ПравоеЗначение = Неопределено Тогда + ПользовательскаяНастройкаКД.ПравоеЗначение = Новый СписокЗначений; + КонецЕсли; Отмеченные = ПользовательскаяНастройкаКД.ПравоеЗначение; Иначе Отмеченные = ПользовательскаяНастройкаКД.Значение; @@ -1427,7 +1386,10 @@ Если Не СтрокаТаблицы.ЭтоПараметр Тогда Если СтрокаТаблицы.ИндексКартинкиДоступа = 1 Или СтрокаТаблицы.ИндексКартинкиДоступа = 3 Тогда - ЭлементКД.Представление = "1"; + // Когда ПредставлениеПользовательскойНастройки заполнено, + // то Представление работает как переключатель, + // но также может использоваться для вывода в табличный документ. + ЭлементКД.Представление = СтрокаТаблицы.Заголовок; Иначе ЭлементКД.Представление = ""; КонецЕсли; @@ -2399,21 +2361,17 @@ РезультатВыбора = Новый Структура; РезультатВыбора.Вставить("ИмяСобытия", "ФормаНастроек"); РезультатВыбора.Вставить("Переформировать", Переформировать); - РезультатВыбора.Вставить("ВариантМодифицирован", Ложь); - РезультатВыбора.Вставить("ПользовательскиеНастройкиМодифицированы", Ложь); + РезультатВыбора.Вставить("ВариантМодифицирован", ВариантИзменен); + РезультатВыбора.Вставить("ПользовательскиеНастройкиМодифицированы", ВариантИзменен Или ПользовательскиеНастройкиМодифицированы); РезультатВыбора.Вставить("ФормаНастроекРасширенныйРежим", РасширенныйРежим); РезультатВыбора.Вставить("ФормаНастроекИмяСтраницы", Элементы.СтраницыНастроек.ТекущаяСтраница.Имя); - Если ВариантИзменен Тогда - РезультатВыбора.ВариантМодифицирован = Истина; + Если РезультатВыбора.ВариантМодифицирован Тогда РезультатВыбора.Вставить("НастройкиКД", Отчет.КомпоновщикНастроек.Настройки); КонецЕсли; - - Если ВариантИзменен Или ПользовательскиеНастройкиМодифицированы Тогда - РезультатВыбора.ПользовательскиеНастройкиМодифицированы = Истина; + Если РезультатВыбора.ПользовательскиеНастройкиМодифицированы Тогда РезультатВыбора.Вставить("ПользовательскиеНастройкиКД", Отчет.КомпоновщикНастроек.ПользовательскиеНастройки); КонецЕсли; - Если ВариантИзменен И РасширенныйРежим = 1 Тогда РезультатВыбора.Вставить("СброситьПользовательскиеНастройки", Истина); КонецЕсли; @@ -2480,22 +2438,18 @@ Если ПараметрыЗаполнения = Неопределено Тогда ПараметрыЗаполнения = Новый Структура("ИмяСобытия", "ПослеИзмененияКоллекции"); КонецЕсли; - РезультатКлиента = БыстрыеНастройкиЗаполнить(ПараметрыЗаполнения); - ПоказатьРезультатЗаполненияНастроек(РезультатКлиента); + БыстрыеНастройкиЗаполнить(ПараметрыЗаполнения); + ПоказатьРезультатЗаполненияНастроек(); КонецПроцедуры &НаКлиенте -Процедура ПоказатьРезультатЗаполненияНастроек(РезультатКлиента) - Если РезультатКлиента = Неопределено Тогда - РезультатКлиента = РезультатЗаполненияНастроек; - РезультатЗаполненияНастроек = Неопределено; - КонецЕсли; - Если ТипЗнч(РезультатКлиента) <> Тип("Структура") Тогда +Процедура ПоказатьРезультатЗаполненияНастроек() + Если ТипЗнч(РезультатЗаполненияНастроек) <> Тип("Структура") Тогда Возврат; КонецЕсли; // Для платформы (переопределение доступных значений на клиенте). - СвоиСпискиВыбора = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(РезультатКлиента, "СвоиСпискиВыбора"); + СвоиСпискиВыбора = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(РезультатЗаполненияНастроек, "СвоиСпискиВыбора"); Если ТипЗнч(СвоиСпискиВыбора) = Тип("Массив") Тогда Для Каждого ИдентификаторЭлемента Из СвоиСпискиВыбора Цикл НастройкаВарианта = НайтиНастройкуВарианта(ЭтотОбъект, ИдентификаторЭлемента); @@ -2535,7 +2489,16 @@ КонецЦикла; КонецЕсли; - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ЭтотОбъект, РезультатКлиента); + // Разворачивание узлов деревьев. + РазвернутьУзлыДеревьев = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(РезультатЗаполненияНастроек, "РазвернутьУзлыДеревьев"); + Если ТипЗнч(РазвернутьУзлыДеревьев) = Тип("Массив") Тогда + Для Каждого ИмяЭлементаФормы Из РазвернутьУзлыДеревьев Цикл + СтандартныеПодсистемыКлиент.РазвернутьУзлыДерева(ЭтотОбъект, ИмяЭлементаФормы, "*", Истина); + КонецЦикла; + КонецЕсли; + + РезультатЗаполненияНастроек.Очистить(); + РезультатЗаполненияНастроек = Неопределено; КонецПроцедуры &НаКлиенте @@ -2771,7 +2734,7 @@ &НаКлиенте Функция ШагОтредактироватьГруппуПолей(ВыборПользователя, Сценарий) // По результатам редактирования группы дополняет структуру сценария информацией: - // * ЗаголовокГруппы - Строка + // * ЗаголовокГруппы - Строка. // * Расположение - РасположениеПоляКомпоновкиДанных. Если Сценарий.ТекущийШагУточнение = "" Тогда // Первый вызов @@ -2933,24 +2896,7 @@ &НаКлиенте Функция ШагУдалитьСтроки(ВыборПользователя, Сценарий) - - ТаблицаРеквизит = ЭтотОбъект[Сценарий.ТаблицаИмя]; - - Для Каждого СтрокаТаблицы Из Сценарий.СтрокиДерева Цикл - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, Сценарий.ТаблицаИмя, СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - - СтрокаРодитель = СтрокаТаблицы.ПолучитьРодителя(); - РодительКД = НайтиОбъектКД(УзелКД, СтрокаРодитель); - - ОткудаУдалить = ПолучитьЭлементы(ТаблицаРеквизит, СтрокаРодитель); - ОткудаУдалить.Удалить(СтрокаТаблицы); - - ОткудаУдалитьКД = ПолучитьЭлементыКД(УзелКД, РодительКД); - ОткудаУдалитьКД.Удалить(ЭлементКД); - - КонецЦикла; + ТаблицыПолейУдалить(Сценарий.ТаблицаИмя, Сценарий.СтрокиДерева, Ложь); ПользовательскиеНастройкиМодифицированы = Истина; Если РасширенныйРежим = 1 Тогда @@ -3135,7 +3081,7 @@ Возврат Неопределено; КонецЕсли; - Результат = Новый Структура("ЗначенияДляВыбора, ОграничиватьВыборУказаннымиЗначениями, ОписаниеТипов"); + Результат = Новый Структура("ЗначенияДляВыбора, БыстрыйВыбор, ОграничиватьВыборУказаннымиЗначениями, ОписаниеТипов"); ДополнительныеНастройки = СтрокаТаблицы.Дополнительно; ЗаполнитьЗначенияСвойств(Результат, ДополнительныеНастройки); @@ -3193,16 +3139,37 @@ ЗначениеВедущего = СтрокаВедущий.Значение; ТипЗначенияВедущего = ТипЗнч(ЗначениеВедущего); Если Связь.ТипСвязи = "ПоТипу" Тогда - Если СтрокаВедущий.Условие <> ВидСравненияКомпоновкиДанных.Равно Тогда + Если СтрокаВедущий.Условие <> ВидСравненияКомпоновкиДанных.Равно + И СтрокаВедущий.Условие <> ВидСравненияКомпоновкиДанных.ВИерархии Тогда Продолжить; КонецЕсли; - Результат.Вставить("ОграничениеТипа", ТипЗначенияВедущего); - Если Результат.ОписаниеТипов.СодержитТип(ТипЗначенияВедущего) Тогда - Вычитаемые = Результат.ОписаниеТипов.Типы(); - Вычитаемые.Удалить(Вычитаемые.Найти(ТипЗначенияВедущего)); - Результат.ОписаниеТипов = Новый ОписаниеТипов(Результат.ОписаниеТипов, , Вычитаемые); + Если ТипЗнч(Связь.ПодчиненныйИмяПараметра) = Тип("Число") И Связь.ПодчиненныйИмяПараметра > 0 Тогда + ТипСубконто = ВариантыОтчетовВызовСервера.ТипСубконто(ЗначениеВедущего, Связь.ПодчиненныйИмяПараметра); + Если ТипЗнч(ТипСубконто) = Тип("ОписаниеТипов") Тогда + ФильтрПоТипам = ТипСубконто.Типы(); + Иначе + Продолжить; + КонецЕсли; + Иначе + ФильтрПоТипам = Новый Массив; + ФильтрПоТипам.Добавить(ТипЗначенияВедущего); + КонецЕсли; + ВычитаемыеТипы = Результат.ОписаниеТипов.Типы(); + ОписанияТиповПересекаются = Ложь; + Для Каждого ТипКоторыйНадоОставить Из ФильтрПоТипам Цикл + Индекс = ВычитаемыеТипы.Найти(ТипКоторыйНадоОставить); + Если Индекс <> Неопределено Тогда + ВычитаемыеТипы.Удалить(Индекс); + ОписанияТиповПересекаются = Истина; + КонецЕсли; + КонецЦикла; + Если ОписанияТиповПересекаются Тогда + Результат.ОписаниеТипов = Новый ОписаниеТипов(Результат.ОписаниеТипов, , ВычитаемыеТипы); КонецЕсли; ИначеЕсли Связь.ТипСвязи = "ПоМетаданным" Или Связь.ТипСвязи = "ПараметровВыбора" Тогда + Если Не ЗначениеЗаполнено(Связь.ПодчиненныйИмяПараметра) Тогда + Продолжить; + КонецЕсли; Если Связь.ТипСвязи = "ПоМетаданным" И Не Связь.ВедущийТип.СодержитТип(ТипЗначенияВедущего) Тогда Продолжить; КонецЕсли; @@ -3285,33 +3252,34 @@ Обработчик = Новый ОписаниеОповещения("ОтборыЗавершениеВыбораВидаСравнения", ЭтотОбъект, Контекст); ИнформацияОТипах = ОтчетыКлиентСервер.АнализТипов(СтрокаТаблицы.ТипЗначения, Ложь); + ТолькоБулево = ИнформацияОТипах.СодержитТипБулево И ИнформацияОТипах.КоличествоПримитивныхТипов = 1; + ФиксированныйСписок = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(СтрокаТаблицы.Дополнительно, "ОграничиватьВыборУказаннымиЗначениями", Ложь); Список = Новый СписокЗначений; - ФиксированныйСписок = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(СтрокаТаблицы.Дополнительно, "ОграничиватьВыборУказаннымиЗначениями", Ложь); Если ИнформацияОТипах.ОграниченнойДлины Или ФиксированныйСписок Тогда Список.Добавить(ВидСравненияКомпоновкиДанных.Равно); Список.Добавить(ВидСравненияКомпоновкиДанных.НеРавно); - Список.Добавить(ВидСравненияКомпоновкиДанных.ВСписке); - Список.Добавить(ВидСравненияКомпоновкиДанных.НеВСписке); + Если ИнформацияОТипах.СодержитОбъектныеТипы Или ФиксированныйСписок Тогда + Список.Добавить(ВидСравненияКомпоновкиДанных.ВСписке); + Список.Добавить(ВидСравненияКомпоновкиДанных.НеВСписке); + КонецЕсли; КонецЕсли; - Если ИнформацияОТипах.ОграниченнойДлины - И ИнформацияОТипах.СодержитОбъектныеТипы Тогда + Если ИнформацияОТипах.ОграниченнойДлины И ИнформацияОТипах.СодержитОбъектныеТипы Тогда - Список.Добавить(ВидСравненияКомпоновкиДанных.ВСпискеПоИерархии); // НСтр("ru = 'В списке включая подчиненные'") - Список.Добавить(ВидСравненияКомпоновкиДанных.НеВСпискеПоИерархии); // НСтр("ru = 'Не в списке включая подчиненные'"). + Список.Добавить(ВидСравненияКомпоновкиДанных.ВСпискеПоИерархии); // В списке включая подчиненные + Список.Добавить(ВидСравненияКомпоновкиДанных.НеВСпискеПоИерархии); // Не в списке включая подчиненные - Список.Добавить(ВидСравненияКомпоновкиДанных.ВИерархии); // НСтр("ru = 'В группе'") - Список.Добавить(ВидСравненияКомпоновкиДанных.НеВИерархии); // НСтр("ru = 'Не в группе'") + Список.Добавить(ВидСравненияКомпоновкиДанных.ВИерархии); // В группе + Список.Добавить(ВидСравненияКомпоновкиДанных.НеВИерархии); // Не в группе КонецЕсли; - Если ИнформацияОТипах.ОграниченнойДлины - И ИнформацияОТипах.КоличествоПримитивныхТипов > 0 Тогда + Если ИнформацияОТипах.ОграниченнойДлины И ИнформацияОТипах.КоличествоПримитивныхТипов > 0 И Не ТолькоБулево Тогда Список.Добавить(ВидСравненияКомпоновкиДанных.Меньше); Список.Добавить(ВидСравненияКомпоновкиДанных.МеньшеИлиРавно); @@ -3334,7 +3302,8 @@ КонецЕсли; - Если ИнформацияОТипах.ОграниченнойДлины Или ФиксированныйСписок Тогда + Если ИнформацияОТипах.СодержитТипДата Или ИнформацияОТипах.СодержитТипСтрока + Или ФиксированныйСписок Или ИнформацияОТипах.СодержитОбъектныеТипы Тогда Список.Добавить(ВидСравненияКомпоновкиДанных.Заполнено); Список.Добавить(ВидСравненияКомпоновкиДанных.НеЗаполнено); @@ -3492,12 +3461,11 @@ ВыполнятьЗамеры = НастройкиОтчета.ВыполнятьЗамеры И ЗначениеЗаполнено(НастройкиОтчета.КлючЗамеров); Если ВыполнятьЗамеры Тогда - ИдентификаторЗамера = Новый УникальныйИдентификатор; - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - МодульОценкаПроизводительностиКлиентСервер.НачатьРучнойЗамерВремени( - НастройкиОтчета.КлючЗамеров + ".Настройки", - ИдентификаторЗамера, - НастройкиОтчета.ПрефиксЗамеров); + МодульОценкаПроизводительностиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиент"); + ИдентификаторЗамера = МодульОценкаПроизводительностиКлиент.НачатьЗамерВремени( + Ложь, + НастройкиОтчета.КлючЗамеров + ".Настройки"); + МодульОценкаПроизводительностиКлиент.УстановитьКомментарийЗамера(ИдентификаторЗамера, НастройкиОтчета.ПрефиксЗамеров); КонецЕсли; ОткрытьФорму(НастройкиОтчета.ПолноеИмя + ".ФормаНастроек", ПараметрыФормы, ЭтотОбъект, , , , Обработчик, Режим); @@ -3508,8 +3476,8 @@ Если Результат = Неопределено Или Результат = КодВозвратаДиалога.Отмена Тогда Возврат; КонецЕсли; - РезультатКлиента = БыстрыеНастройкиЗаполнить(Результат); - ПоказатьРезультатЗаполненияНастроек(РезультатКлиента); + БыстрыеНастройкиЗаполнить(Результат); + ПоказатьРезультатЗаполненияНастроек(); КонецПроцедуры &НаКлиенте @@ -3605,7 +3573,10 @@ Если ИмяТаблицы = "Отборы" И Не СтрокаТаблицы.ЭтоПараметр Тогда Если ИндексКартинкиДоступа = 1 Или ИндексКартинкиДоступа = 3 Тогда - ЭлементКД.Представление = "1"; + // Когда ПредставлениеПользовательскойНастройки заполнено, + // то Представление работает как переключатель, + // но также может использоваться для вывода в табличный документ. + ЭлементКД.Представление = СтрокаТаблицы.Заголовок; Иначе ЭлементКД.Представление = ""; КонецЕсли; @@ -3615,10 +3586,16 @@ ИначеЕсли ИмяТаблицы = "Оформление" Тогда // Особенность УО - ПредставлениеПользовательскойНастройки может очищаться после ПолучитьНастройки(). Если СтрокаТаблицы.ЗаголовокПереопределен Тогда + // Когда ПредставлениеПользовательскойНастройки заполнено, + // то Представление работает как переключатель, + // но также может использоваться для вывода в табличный документ. ЭлементКД.Представление = СтрокаТаблицы.Заголовок; Иначе Если ИндексКартинкиДоступа = 1 Или ИндексКартинкиДоступа = 3 Тогда - ЭлементКД.Представление = "1"; + // Когда ПредставлениеПользовательскойНастройки заполнено, + // то Представление работает как переключатель, + // но также может использоваться для вывода в табличный документ. + ЭлементКД.Представление = СтрокаТаблицы.Заголовок; Иначе ЭлементКД.Представление = ""; КонецЕсли; @@ -4198,23 +4175,23 @@ КонецФункции &НаКлиенте -Процедура ТаблицыПолейУдалить(Знач ТаблицаИмя, Знач СтрокаТаблицыИлиМассивСтрок, Знач ИспользованиеАвто) +Процедура ТаблицыПолейУдалить(Знач ТаблицаИмя, Знач СтрокаТаблицыИлиМассивСтрок, Знач ИспользованиеАвтоПолей) Таблица = ЭтотОбъект[ТаблицаИмя]; УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, ТаблицаИмя); Если ТипЗнч(СтрокаТаблицыИлиМассивСтрок) = Тип("ДанныеФормыЭлементДерева") Тогда - ТаблицыПолейУдалитьМеханика(ТаблицаИмя, Таблица, УзелКД, СтрокаТаблицыИлиМассивСтрок, ИспользованиеАвто); + ТаблицыПолейУдалитьМеханика(ТаблицаИмя, Таблица, УзелКД, СтрокаТаблицыИлиМассивСтрок, ИспользованиеАвтоПолей); Иначе Количество = СтрокаТаблицыИлиМассивСтрок.Количество(); Для Номер = 1 По Количество Цикл ОбратныйИндекс = Количество - Номер; СтрокаТаблицы = СтрокаТаблицыИлиМассивСтрок[ОбратныйИндекс]; - ТаблицыПолейУдалитьМеханика(ТаблицаИмя, Таблица, УзелКД, СтрокаТаблицы, ИспользованиеАвто); + ТаблицыПолейУдалитьМеханика(ТаблицаИмя, Таблица, УзелКД, СтрокаТаблицы, ИспользованиеАвтоПолей); КонецЦикла; КонецЕсли; КонецПроцедуры &НаКлиенте -Процедура ТаблицыПолейУдалитьМеханика(ТаблицаИмя, Таблица, УзелКД, СтрокаТаблицы, ИспользованиеАвто) +Процедура ТаблицыПолейУдалитьМеханика(ТаблицаИмя, Таблица, УзелКД, СтрокаТаблицы, ИспользованиеАвтоПолей) ЭлементКД = НайтиОбъектКД(УзелКД, СтрокаТаблицы); СвязаннаяТаблицаИмя = Неопределено; @@ -4222,9 +4199,9 @@ Если СтрокаТаблицы.ЭтоРаздел Тогда Возврат; ИначеЕсли СтрокаТаблицы.ТипНастройки = "АвтоВыбранноеПоле" Тогда - Если ИспользованиеАвто <> Неопределено И ЭлементКД.Использование <> ИспользованиеАвто Тогда - СтрокаТаблицы.Использование = ИспользованиеАвто; - ЭлементКД.Использование = ИспользованиеАвто; + Если ИспользованиеАвтоПолей <> Неопределено И ЭлементКД.Использование <> ИспользованиеАвтоПолей Тогда + СтрокаТаблицы.Использование = ИспользованиеАвтоПолей; + ЭлементКД.Использование = ИспользованиеАвтоПолей; КонецЕсли; Возврат; КонецЕсли; @@ -4233,17 +4210,17 @@ Если СтрокаТаблицы.ЭтоРаздел Тогда Возврат; ИначеЕсли СтрокаТаблицы.ТипНастройки = "АвтоЭлементПорядка" Тогда - Если ИспользованиеАвто <> Неопределено И ЭлементКД.Использование <> ИспользованиеАвто Тогда - СтрокаТаблицы.Использование = ИспользованиеАвто; - ЭлементКД.Использование = ИспользованиеАвто; + Если ИспользованиеАвтоПолей <> Неопределено И ЭлементКД.Использование <> ИспользованиеАвтоПолей Тогда + СтрокаТаблицы.Использование = ИспользованиеАвтоПолей; + ЭлементКД.Использование = ИспользованиеАвтоПолей; КонецЕсли; Возврат; КонецЕсли; ИначеЕсли ТаблицаИмя = "СоставГруппировки" Тогда Если СтрокаТаблицы.ТипНастройки = "АвтоПолеГруппировки" Тогда - Если ИспользованиеАвто <> Неопределено И ЭлементКД.Использование <> ИспользованиеАвто Тогда - СтрокаТаблицы.Использование = ИспользованиеАвто; - ЭлементКД.Использование = ИспользованиеАвто; + Если ИспользованиеАвтоПолей <> Неопределено И ЭлементКД.Использование <> ИспользованиеАвтоПолей Тогда + СтрокаТаблицы.Использование = ИспользованиеАвтоПолей; + ЭлементКД.Использование = ИспользованиеАвтоПолей; КонецЕсли; Возврат; КонецЕсли; @@ -4552,7 +4529,6 @@ &НаСервере Функция БыстрыеНастройкиЗаполнить(Знач ПараметрыКлиента) - // Вставка значений по умолчанию для обязательных ключей параметров заполнения. ПараметрыЗаполнения = БыстрыеНастройкиДозаполнитьПараметры(ПараметрыКлиента); @@ -4606,7 +4582,13 @@ ОтчетОбъект.ПослеЗаполненияПанелиБыстрыхНастроек(ЭтотОбъект, ПараметрыЗаполнения); КонецЕсли; - Возврат ПараметрыЗаполнения.Результат; + РезультатЗаполненияНастроек = ПараметрыЗаполнения.Результат; + + Информация.ПользовательскиеНастройки.Колонки.Очистить(); + Информация.НастройкиВарианта.Колонки.Очистить(); + Информация.ДеревоВарианта.Колонки.Очистить(); + Информация.Очистить(); + ПараметрыЗаполнения.Очистить(); КонецФункции &НаСервере @@ -4694,8 +4676,8 @@ Инструкция.Оформление.Вставить("Отображать", Ложь); СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); - // Состав группировки. Если РежимИзмененияУзлаВарианта Тогда + // Состав группировки. Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); Инструкция.Отборы.Вставить("СоставГруппировки.ПоказыватьТипДополнения", Истина); Инструкция.Поля = "СоставГруппировкиТипГруппировки"; @@ -4709,6 +4691,32 @@ Инструкция.Оформление.Вставить("Видимость", Ложь); Инструкция.Оформление.Вставить("Отображать", Ложь); СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); + Иначе + // Структура. + Если ТекущийВариантИнтерфейсаКлиентскогоПриложения() = ВариантИнтерфейсаКлиентскогоПриложения.Версия8_2 Тогда + ШрифтВажнойНадписи = Новый Шрифт(, , Истина); + Иначе // Такси. + ШрифтВажнойНадписи = Новый Шрифт("Arial", 10, Истина, Ложь, Ложь, Ложь, 100); + КонецЕсли; + + Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); + Инструкция.Отборы.Вставить("СтруктураВарианта.ЭтоГруппа", Истина); + Инструкция.Поля = "СтруктураВариантаПредставление"; + Инструкция.Оформление.Вставить("Шрифт", ШрифтВажнойНадписи); + СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); + + Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); + Инструкция.Отборы.Вставить("СтруктураВарианта.Подсвечивать", Истина); + Инструкция.Поля = "СтруктураВариантаПредставление"; + Инструкция.Оформление.Вставить("Шрифт", ШрифтВажнойНадписи); + СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); + + Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); + Инструкция.Отборы.Вставить("СтруктураВарианта.ФлажокДоступен", Ложь); + Инструкция.Поля = "СтруктураВариантаИспользование"; + Инструкция.Оформление.Вставить("Видимость", Ложь); + Инструкция.Оформление.Вставить("Отображать", Ложь); + СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); КонецЕсли; КонецПроцедуры @@ -4728,9 +4736,15 @@ КонецЕсли; Если Не ПараметрыЗаполнения.Свойство("Результат") Тогда ПараметрыЗаполнения.Вставить("Результат", Новый Структура); + ПараметрыЗаполнения.Результат.Вставить("РазвернутьУзлыДеревьев", Новый Массив); КонецЕсли; ПараметрыЗаполнения.Вставить("Прервать", Ложь); ПараметрыЗаполнения.Вставить("ОтчетОбъектИлиПолноеИмя", НастройкиОтчета.ПолноеИмя); + Если НастройкиОтчета.События.ПередЗаполнениемПанелиБыстрыхНастроек + Или НастройкиОтчета.События.ПослеЗаполненияПанелиБыстрыхНастроек + Или НастройкиОтчета.События.ПередЗагрузкойНастроекВКомпоновщик Тогда + ПараметрыЗаполнения.ОтчетОбъектИлиПолноеИмя = РеквизитФормыВЗначение("Отчет"); + КонецЕсли; Возврат ПараметрыЗаполнения; КонецФункции @@ -4748,8 +4762,8 @@ ИменаТаблиц = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ИменаТаблиц, ",", Истина, Истина); Для Каждого ИмяТаблицы Из ИменаТаблиц Цикл ВыделенныеСтроки.Вставить(ИмяТаблицы, ОтчетыСервер.ЗапомнитьВыделенныеСтроки(ЭтотОбъект, ИмяТаблицы, "ИдентификаторКД")); - СтандартныеПодсистемыКлиентСервер.РазвернутьУзлыДерева(ПараметрыЗаполнения.Результат, ИмяТаблицы, "*", Истина); КонецЦикла; + ОбщегоНазначенияКлиентСервер.ДополнитьМассив(ПараметрыЗаполнения.Результат.РазвернутьУзлыДеревьев, ИменаТаблиц); КонецПроцедуры &НаСервере @@ -4803,19 +4817,7 @@ ОбновитьНастройкиВарианта = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыЗаполнения, "ОбновитьНастройкиВарианта", Ложь); Если ОбновитьНастройкиВарианта Тогда ИнформацияОбОшибке = Неопределено; - Попытка - НовыеНастройкиКД = Отчет.КомпоновщикНастроек.ПолучитьНастройки(); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КонецПопытки; - Если ИнформацияОбОшибке <> Неопределено Тогда - СтандартныеПодсистемыКлиентСервер.ВывестиИнформациюОбОшибке( - ПараметрыЗаполнения.Результат, - НСтр("ru = 'Не удалось получить настройки отчета:'"), - ИнформацияОбОшибке); - ПараметрыЗаполнения.Прервать = Истина; - Возврат; - КонецЕсли; + НовыеНастройкиКД = Отчет.КомпоновщикНастроек.ПолучитьНастройки(); Отчет.КомпоновщикНастроек.ЗагрузитьФиксированныеНастройки(Новый НастройкиКомпоновкиДанных); КонецЕсли; @@ -4834,16 +4836,11 @@ НовыеПользовательскиеНастройкиКД); КонецЕсли; - Если ТипЗнч(НовыеНастройкиКД) = Тип("НастройкиКомпоновкиДанных") - И Отчет.КомпоновщикНастроек.Настройки <> НовыеНастройкиКД Тогда - Если ТипЗнч(ФормаПараметры.Отбор) = Тип("Структура") Тогда - ОтчетыСервер.УстановитьФиксированныеОтборы(ФормаПараметры.Отбор, НовыеНастройкиКД, НастройкиОтчета); - КонецЕсли; - Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(НовыеНастройкиКД); - КонецЕсли; - Если ТипЗнч(НовыеПользовательскиеНастройкиКД) = Тип("ПользовательскиеНастройкиКомпоновкиДанных") - И Отчет.КомпоновщикНастроек.ПользовательскиеНастройки <> НовыеПользовательскиеНастройкиКД Тогда - Отчет.КомпоновщикНастроек.ЗагрузитьПользовательскиеНастройки(НовыеПользовательскиеНастройкиКД); + НастройкиЗагружены = ОтчетыКлиентСервер.ЗагрузитьНастройки(Отчет.КомпоновщикНастроек, НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД); + // Установка фиксированных отборов выполняется через компоновщик, т.к. в нем наиболее полная коллекция настроек. + // В ПередЗагрузкой в параметрах могут отсутствовать те параметры, настройки которые не переопределялись. + Если НастройкиЗагружены И ТипЗнч(ФормаПараметры.Отбор) = Тип("Структура") Тогда + ОтчетыСервер.УстановитьФиксированныеОтборы(ФормаПараметры.Отбор, НовыеНастройкиКД, НастройкиОтчета); КонецЕсли; УсловияОтборов = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыЗаполнения, "УсловияОтборов"); @@ -5180,7 +5177,7 @@ КолонкаИспользование.ПутьКДанным = ТаблицаИмя + ".Пометка"; // Некоторые обработчики событий можно подключить только после установки связи элементов с данными. - ТаблицаФормы.УстановитьДействие("ПередНачаломИзменения", "Подключаемый_СписокСПодбором_ПередНачаломИзменения"); + ТаблицаФормы.УстановитьДействие("ПриНачалеРедактирования", "Подключаемый_СписокСПодбором_ПриНачалеРедактирования"); ТаблицаФормы.УстановитьДействие("ПередОкончаниемРедактирования", "Подключаемый_СписокСПодбором_ПередОкончаниемРедактирования"); ТаблицаФормы.УстановитьДействие("ПриИзменении", "Подключаемый_СписокСПодбором_ПриИзменении"); Если СвойстваНастройки.ОграничиватьВыборУказаннымиЗначениями Тогда @@ -5188,7 +5185,6 @@ ТаблицаФормы.УстановитьДействие("ПередУдалением", "Подключаемый_ФиксированныйСписок_ПередУдалением"); Иначе ТаблицаФормы.УстановитьДействие("ОбработкаВыбора", "Подключаемый_СписокСПодбором_ОбработкаВыбора"); - КолонкаЗначение.УстановитьДействие("АвтоПодбор", "Подключаемый_СписокСПодбором_Значение_АвтоПодбор"); КонецЕсли; КолонкаИспользование.УстановитьДействие("ПриИзменении", "Подключаемый_СписокСПодбором_Использование_ПриИзменении"); КонецЦикла; @@ -5226,9 +5222,10 @@ КонецЕсли; ВыбранныеПоля.ПолучитьЭлементы().Очистить(); - ВидимостьВыбранныхПолей = ЗарегистрироватьЭлементыВыбранныхПолей(); + УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, "ВыбранныеПоля", Неопределено); + ВидимостьВыбранныхПолей = ЗарегистрироватьЭлементыВыбранныхПолей(УзелКД); Если ВидимостьВыбранныхПолей Тогда - СтандартныеПодсистемыКлиентСервер.РазвернутьУзлыДерева(ПараметрыЗаполнения.Результат, "ВыбранныеПоля", "*", Истина); + ПараметрыЗаполнения.Результат.РазвернутьУзлыДеревьев.Добавить("ВыбранныеПоля"); КонецЕсли; ВидимостьСортировок = Ложь; @@ -5237,7 +5234,7 @@ ВидимостьСортировок = ЗарегистрироватьЭлементыСортировки(); КонецЕсли; Если ВидимостьСортировок Тогда - СтандартныеПодсистемыКлиентСервер.РазвернутьУзлыДерева(ПараметрыЗаполнения.Результат, "Сортировка", "*", Истина); + ПараметрыЗаполнения.Результат.РазвернутьУзлыДеревьев.Добавить("Сортировка"); КонецЕсли; ВидимостьТаблицыОтборов = (РасширенныйРежим = 1 И ТипТекущегоУзлаКД <> "Диаграмма"); @@ -5245,14 +5242,14 @@ Отборы.ПолучитьЭлементы().Очистить(); ЗарегистрироватьПараметры(Информация); ЗарегистрироватьЭлементыОтборов(Информация); - СтандартныеПодсистемыКлиентСервер.РазвернутьУзлыДерева(ПараметрыЗаполнения.Результат, "Отборы", "*", Истина); + ПараметрыЗаполнения.Результат.РазвернутьУзлыДеревьев.Добавить("Отборы"); КонецЕсли; ВидимостьУсловногоОформления = (РасширенныйРежим = 1); Если ВидимостьУсловногоОформления Тогда Оформление.ПолучитьЭлементы().Очистить(); ЗарегистрироватьЭлементыОформления(Информация); - СтандартныеПодсистемыКлиентСервер.РазвернутьУзлыДерева(ПараметрыЗаполнения.Результат, "Оформление", "*", Истина); + ПараметрыЗаполнения.Результат.РазвернутьУзлыДеревьев.Добавить("Оформление"); КонецЕсли; Если ВидимостьВыбранныхПолей И ВидимостьСортировок Тогда @@ -5298,7 +5295,7 @@ СтрокиРодителя = СтруктураВарианта.ПолучитьЭлементы(); СтрокиРодителя.Очистить(); ЕстьФлажки = ЗарегистрироватьЭлементСтруктурыОтчета(КорневаяСтрока, СтрокиРодителя); - СтандартныеПодсистемыКлиентСервер.РазвернутьУзлыДерева(ПараметрыЗаполнения.Результат, "СтруктураВарианта", "*", Истина); + ПараметрыЗаполнения.Результат.РазвернутьУзлыДеревьев.Добавить("СтруктураВарианта"); ВидимостьСтруктуры = ЕстьФлажки Или РасширенныйРежим = 1; КонецЕсли; @@ -5523,12 +5520,9 @@ КонецПроцедуры &НаСервере -Функция ЗарегистрироватьЭлементыВыбранныхПолей(УзелКД = Неопределено, НаборСтрокКД = Неопределено, НаборСтрок = Неопределено, ДоступныеПоля = Неопределено) +Функция ЗарегистрироватьЭлементыВыбранныхПолей(УзелКД, НаборСтрокКД = Неопределено, НаборСтрок = Неопределено, ДоступныеПоля = Неопределено) Если УзелКД = Неопределено Тогда - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, "ВыбранныеПоля", Неопределено); - Если УзелКД = Неопределено Тогда - Возврат Ложь; - КонецЕсли; + Возврат Ложь; КонецЕсли; Если НаборСтрокКД = Неопределено Тогда НаборСтрокКД = УзелКД.Элементы; @@ -5692,8 +5686,9 @@ СтрокаТаблицы.ИндексКартинкиДоступа = 5; КонецЕсли; - Дополнительно = Новый Структура("ОписаниеТипов, ОграничиватьВыборУказаннымиЗначениями, - |ПараметрыВыбора, ФормаВыбора, ЗначенияДляВыбора"); + Дополнительно = Новый Структура( + "ОписаниеТипов, БыстрыйВыбор, ОграничиватьВыборУказаннымиЗначениями, + |ПараметрыВыбора, ФормаВыбора, ЗначенияДляВыбора"); ЗаполнитьЗначенияСвойств(Дополнительно, НастройкаВарианта); СтрокаТаблицы.Дополнительно = Дополнительно; @@ -5795,8 +5790,9 @@ КонецЕсли; КонецЕсли; - Дополнительно = Новый Структура("ОписаниеТипов, ОграничиватьВыборУказаннымиЗначениями, - |ПараметрыВыбора, ФормаВыбора, ЗначенияДляВыбора"); + Дополнительно = Новый Структура( + "ОписаниеТипов, БыстрыйВыбор, ОграничиватьВыборУказаннымиЗначениями, + |ПараметрыВыбора, ФормаВыбора, ЗначенияДляВыбора"); ЗаполнитьЗначенияСвойств(Дополнительно, НастройкаВарианта); СтрокаТаблицы.Дополнительно = Дополнительно; @@ -5868,7 +5864,9 @@ СтрокаЦели = НайтиПоИдентификатору(ТаблицаРеквизит, ИдентификаторЦели); Родитель = ПолучитьРодителя(ТаблицаИмя, СтрокаЦели); - ПеремещенныеСтроки = Новый Массив; // Для платформы. + ТаблицаЭлемент = Элементы[ТаблицаИмя]; + ВыделенныеСтроки = ТаблицаЭлемент.ВыделенныеСтроки; + ВыделенныеСтроки.Очистить(); Для Каждого ПеремещаемаяСтрока Из ПеремещаемыеСтроки Цикл ЭтоТекущая = (ПеремещаемаяСтрока = ТекущаяСтрока); @@ -5876,21 +5874,13 @@ // Перемещение. Результат = ТаблицыПолейПереместить(ТаблицаИмя, ПеремещаемаяСтрока, СтрокаЦели); - // Бантики (начало). + // Бантики. + НоваяСтрокаИдентификатор = Результат.СтрокаТаблицы.ПолучитьИдентификатор(); Если ЭтоТекущая Тогда - ТекущаяСтрока = Результат.СтрокаТаблицы; + ТаблицаЭлемент.ТекущаяСтрока = НоваяСтрокаИдентификатор; КонецЕсли; - ПеремещенныеСтроки.Добавить(Результат.СтрокаТаблицы); - КонецЦикла; - - // Бантики (завершение). - ТаблицаЭлемент = Элементы[ТаблицаИмя]; - ТаблицаЭлемент.ТекущаяСтрока = ТекущаяСтрока.ПолучитьИдентификатор(); - ТаблицаЭлемент.ВыделенныеСтроки.Очистить(); - Для Каждого СтрокаТаблицы Из ПеремещенныеСтроки Цикл - НоваяСтрокаИдентификатор = СтрокаТаблицы.ПолучитьИдентификатор(); - Если ТаблицаЭлемент.ВыделенныеСтроки.Найти(НоваяСтрокаИдентификатор) = Неопределено Тогда - ТаблицаЭлемент.ВыделенныеСтроки.Добавить(НоваяСтрокаИдентификатор); + Если ВыделенныеСтроки.Найти(НоваяСтрокаИдентификатор) = Неопределено Тогда + ВыделенныеСтроки.Добавить(НоваяСтрокаИдентификатор); КонецЕсли; КонецЦикла; @@ -5919,7 +5909,7 @@ ДобавлятьВКонец = Ложь; Иначе // На один уровень с целью перетаскивания. - ЦельРодитель = ПолучитьРодителя(ЦельТаблицаИмя, ПередЧемВставить); + ЦельРодитель = ПолучитьРодителя(ЦельТаблицаИмя, ПередЧемВставить); ДобавлятьВКонец = Истина; КонецЕсли; @@ -5953,7 +5943,7 @@ БыстрыйПоискСтрокиПоПолюКД = Новый Соответствие; Для Каждого СтрокаТаблицы Из КудаВставить Цикл ЭлементКД = НайтиОбъектКД(ЦельУзелКД, СтрокаТаблицы); - Если ЭлементКД <> Неопределено Тогда + Если ТипЗнч(ЭлементКД) = Тип("ЭлементПорядкаКомпоновкиДанных") Тогда БыстрыйПоискСтрокиПоПолюКД.Вставить(ЭлементКД.Поле, СтрокаТаблицы); КонецЕсли; КонецЦикла; diff --git a/SSL/src/CommonForms/ФормаОтчета/Form.form b/SSL/src/CommonForms/ФормаОтчета/Form.form index f5f5d51e1..262296771 100644 --- a/SSL/src/CommonForms/ФормаОтчета/Form.form +++ b/SSL/src/CommonForms/ФормаОтчета/Form.form @@ -148,6 +148,33 @@ Auto InAdditionalSubmenu + + СброситьНастройки + 382 + true + true + + true + + + СброситьНастройкиРасширеннаяПодсказка + 383 + Label + true + true + + Left + + + Form.Command.НастройкиПоУмолчанию + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + ГруппаВариантыОтчета 358 @@ -362,33 +389,6 @@
        - - СброситьНастройки - 382 - true - true - - true - - - СброситьНастройкиРасширеннаяПодсказка - 383 - Label - true - true - - Left - - - Form.Command.НастройкиПоУмолчанию - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - ГруппаПользовательскиеНастройки 504 @@ -1077,7 +1077,6 @@ ru Основная командная панель - true ОсновнаяКоманднаяПанельРасширеннаяПодсказка 133 @@ -1416,7 +1415,9 @@ true - + + true + РежимВариантаОтчета @@ -1431,7 +1432,9 @@ true - + + true + НастройкиОтчета @@ -1444,22 +1447,6 @@ true - - - - НаименованиеОтчета - - <key>ru</key> - <value>Наименование отчета</value> - - 19 - - String - - - - true - true @@ -1494,8 +1481,12 @@ ValueList - - + + true + + + true + @@ -1511,7 +1502,9 @@ true - + + true + ОтчетСформирован @@ -1543,7 +1536,9 @@ true - + + true + ФоновоеЗаданиеАдресХранилища @@ -1676,43 +1671,6 @@ true - - ВариантыПанелиНомерЭлемента - - <key>ru</key> - <value>Варианты панели номер элемента</value> - - 27 - - Number - - 10 - - - - true - - - true - - - - ЕстьДругиеОтчеты - - <key>ru</key> - <value>Есть другие отчеты</value> - - 29 - - Boolean - - - true - - - true - - ЕстьОбычныеНастройки @@ -1730,57 +1688,6 @@ <common>true</common> </edit> </attributes> - <attributes> - <name>ФормаОткрыта</name> - <title> - <key>ru</key> - <value>Форма открыта</value> - - 11 - - Boolean - - - true - - - true - - - - НадоСформировать - - <key>ru</key> - <value>Надо сформировать</value> - - 32 - - Boolean - - - true - - - true - - - - ПервоеЧтениеПользовательскихНастроек - - <key>ru</key> - <value>Первое чтение пользовательских настроек</value> - - 34 - - Boolean - - - true - - - true - - ДобавленныеВарианты @@ -1851,24 +1758,6 @@ </edit> </columns> </attributes> - <attributes> - <name>ЭтоФормаОтчета</name> - <title> - <key>ru</key> - <value>Это форма отчета</value> - - 13 - - String - - - - true - - - true - - ОтключаемыеСвязи @@ -1976,6 +1865,10 @@ <id>6</id> <valueType> <types>String</types> + <types>Number</types> + <numberQualifiers> + <precision>10</precision> + </numberQualifiers> <stringQualifiers/> </valueType> <view> @@ -2288,6 +2181,16 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> + <parameters> + <name>Ссылка</name> + <valueType> + <types>CatalogRef.ВариантыОтчетов</types> + </valueType> + </parameters> + <parameters> + <name>Отчет</name> + <valueType/> + </parameters> <commandInterface> <navigationPanel/> <commandBar/> diff --git a/SSL/src/CommonForms/ФормаОтчета/Module.bsl b/SSL/src/CommonForms/ФормаОтчета/Module.bsl index 8c5b7539b..14f599667 100644 --- a/SSL/src/CommonForms/ФормаОтчета/Module.bsl +++ b/SSL/src/CommonForms/ФормаОтчета/Module.bsl @@ -23,10 +23,10 @@ Если ЗначениеЗаполнено(Параметры.КлючВарианта) Тогда КлючТекущегоВарианта = Параметры.КлючВарианта; КонецЕсли; + РежимВариантаОтчета = (ТипЗнч(КлючТекущегоВарианта) = Тип("Строка") И Не ПустаяСтрока(КлючТекущегоВарианта)); // Параметры формы. РежимРасшифровки = (Параметры.Свойство("Расшифровка") И Параметры.Расшифровка <> Неопределено); - РежимВариантаОтчета = (ТипЗнч(КлючТекущегоВарианта) = Тип("Строка") И Не ПустаяСтрока(КлючТекущегоВарианта)); ПравоВывода = ПравоДоступа("Вывод", Метаданные); ФормаПараметры = Новый Структура( @@ -53,33 +53,29 @@ НастройкиОтчета.Вставить("АдресСхемы", АдресСхемы); НастройкиОтчета.Вставить("СхемаМодифицирована", Ложь); НастройкиОтчета.Вставить("КлючСхемы", ""); + НастройкиОтчета.Вставить("Контекстный", ТипЗнч(ФормаПараметры.Отбор) = Тип("Структура") И ФормаПараметры.Отбор.Количество() > 0); НастройкиОтчета.Вставить("ПолноеИмя", ОтчетМетаданные.ПолноеИмя()); НастройкиОтчета.Вставить("Наименование", СокрЛП(ОтчетМетаданные.Представление())); - Информация = ВариантыОтчетов.СформироватьИнформациюОбОтчетеПоПолномуИмени(НастройкиОтчета.ПолноеИмя); - НастройкиОтчета.Вставить("ОтчетСсылка", Информация.Отчет); - НастройкиОтчета.Вставить("Внешний", ТипЗнч(НастройкиОтчета.ОтчетСсылка) = Тип("Строка")); - НастройкиОтчета.Вставить("Безопасный", БезопасныйРежим() <> Ложь); + НастройкиОтчета.Вставить("ОтчетСсылка", Параметры.Отчет); + ТипОтчетаСтрокой = ВариантыОтчетовКлиентСервер.ТипОтчета(НастройкиОтчета.ОтчетСсылка, Истина); + Если ТипОтчетаСтрокой = Неопределено Тогда + Информация = ВариантыОтчетов.СформироватьИнформациюОбОтчетеПоПолномуИмени(НастройкиОтчета.ПолноеИмя); + НастройкиОтчета.ОтчетСсылка = Информация.Отчет; + КонецЕсли; + НастройкиОтчета.Вставить("Внешний", ТипЗнч(НастройкиОтчета.ОтчетСсылка) = Тип("Строка")); + НастройкиОтчета.Вставить("Безопасный", БезопасныйРежим() <> Ложь); ОбновитьИнформациюОВариантеОтчета(); ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(НастройкиОтчета, ВариантыОтчетов.ПараметрыКлиента()); Если ВариантыОтчетовПовтИсп.Параметры().ОтчетыСНастройками.Найти(НастройкиОтчета.ОтчетСсылка) <> Неопределено Тогда ОтчетОбъект.ОпределитьНастройкиФормы(ЭтотОбъект, КлючТекущегоВарианта, НастройкиОтчета); - СоответствиеПериодичностиПараметров = Новый Соответствие; - Для Каждого КлючИЗначение Из НастройкиОтчета.СоответствиеПериодичностиПараметров Цикл - ПолеКД = КлючИЗначение.Ключ; - Если ТипЗнч(ПолеКД) = Тип("ПараметрКомпоновкиДанных") Тогда - ПолеКД = Новый ПолеКомпоновкиДанных("ПараметрыДанных." + Строка(ПолеКД)); - КонецЕсли; - СоответствиеПериодичностиПараметров.Вставить(ПолеКД, КлючИЗначение.Значение); - КонецЦикла; - НастройкиОтчета.Вставить("СоответствиеПериодичностиПараметров", СоответствиеПериодичностиПараметров); КонецЕсли; НастройкиОтчета.Вставить("ПрочитатьФлажокФормироватьСразуИзПользовательскихНастроек", Истина); Если Параметры.Свойство("СформироватьПриОткрытии") И Параметры.СформироватьПриОткрытии = Истина Тогда Параметры.СформироватьПриОткрытии = Ложь; - НастройкиОтчета.ФормироватьСразу = Истина; + Элементы.ФормироватьСразу.Пометка = Истина; НастройкиОтчета.ПрочитатьФлажокФормироватьСразуИзПользовательскихНастроек = Ложь; КонецЕсли; @@ -90,13 +86,13 @@ КонецЦикла; КонецЕсли; - // Параметры по умолчанию - Если НастройкиОтчета.Свойство("ВыводитьСуммуВыделенныхЯчеек") И Не НастройкиОтчета.ВыводитьСуммуВыделенныхЯчеек Тогда + // Параметры по умолчанию. + Если Не ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НастройкиОтчета, "ВыводитьСуммуВыделенныхЯчеек", Истина) Тогда Элементы.АвтоСуммаКнопка.Видимость = Ложь; Элементы.ОтчетТабличныйДокумент.УстановитьДействие("ПриАктивизацииОбласти", ""); КонецЕсли; - // Скрытие команд вариантов + // Скрытие команд вариантов. Если Не НастройкиОтчета.Свойство("РазрешеноМенятьВарианты") Или Параметры.Свойство("ВидимостьКомандВариантовОтчетов") Тогда НастройкиОтчета.Вставить("РазрешеноМенятьВарианты", ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "ВидимостьКомандВариантовОтчетов")); КонецЕсли; @@ -147,7 +143,8 @@ ДоступнаОтправкаПисем = МодульРаботаСПочтовымиСообщениями.ДоступнаОтправкаПисем(); КонецЕсли; Если ДоступнаОтправкаПисем Тогда - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РассылкаОтчетов") Тогда + Если НастройкиОтчета.РазрешеноМенятьВарианты + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РассылкаОтчетов") Тогда МодульРассылкаОтчетов = ОбщегоНазначения.ОбщийМодуль("РассылкаОтчетов"); МодульРассылкаОтчетов.ФормаОтчетаДобавитьКоманды(ЭтотОбъект, Отказ, СтандартнаяОбработка); Иначе // Если в подменю одна команда, то выпадающий список не отображается. @@ -159,19 +156,19 @@ КонецЕсли; // Определение что отчет может содержать некорректные данные. - Если Не НастройкиОтчета.ФормироватьСразу Тогда - ИспользуемыеТаблицы = Новый Массив; - ИспользуемыеТаблицы.Добавить(НастройкиОтчета.ПолноеИмя); - Если НастройкиОтчета.События.ПриОпределенииИспользуемыхТаблиц Тогда - ОтчетОбъект.ПриОпределенииИспользуемыхТаблиц(КлючТекущегоВарианта, ИспользуемыеТаблицы); - КонецЕсли; - Для Каждого ПолноеИмя Из ИспользуемыеТаблицы Цикл - Проверка = ОбновлениеИнформационнойБазы.ОбъектОбработан(ПолноеИмя); - Если Не Проверка.Обработан Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СообщениеДанныеЕщеОбновляются()); - Прервать; + Если Не Элементы.ФормироватьСразу.Пометка Тогда + Попытка + ИспользуемыеТаблицы = ВариантыОтчетов.ИспользуемыеТаблицы(ОтчетОбъект.СхемаКомпоновкиДанных); + ИспользуемыеТаблицы.Добавить(НастройкиОтчета.ПолноеИмя); + Если НастройкиОтчета.События.ПриОпределенииИспользуемыхТаблиц Тогда + ОтчетОбъект.ПриОпределенииИспользуемыхТаблиц(КлючТекущегоВарианта, ИспользуемыеТаблицы); КонецЕсли; - КонецЦикла; + ВариантыОтчетов.ПроверитьИспользуемыеТаблицы(ИспользуемыеТаблицы); + Исключение + ТекстОшибки = НСтр("ru = 'Не удалось определить используемые таблицы:'"); + ТекстОшибки = ТекстОшибки + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); + ВариантыОтчетов.ОшибкаПоВарианту(НастройкиОтчета.ВариантСсылка, ТекстОшибки); + КонецПопытки; КонецЕсли; ОтчетыПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка); @@ -184,21 +181,17 @@ &НаКлиенте Процедура ПриОткрытии(Отказ) ПеременныеКлиента = Новый Структура; - ПеременныеКлиента.Вставить("УспешноСформирован", Ложь); ПеременныеКлиента.Вставить("ВыполнятьЗамеры", Ложь); // В безопасном режиме доп. отчеты формируются непосредственно, // т.к. они не могут подключать себя и использовать собственные методы в фоновых заданиях. ПеременныеКлиента.Вставить("Непосредственно", НастройкиОтчета.Внешний Или НастройкиОтчета.Безопасный); ПеременныеКлиента.Вставить("ФормированиеПриОткрытии", Ложь); ПеременныеКлиента.Вставить("ИнтервалОжидания", ?(ПолучитьСкоростьКлиентскогоСоединения() = СкоростьКлиентскогоСоединения.Низкая, 1, 0.2)); - Если Не Отказ Тогда - ФормаОткрыта = Истина; - КонецЕсли; - Если НастройкиОтчета.ФормироватьСразу Тогда + Если Элементы.ФормироватьСразу.Пометка Тогда ПеременныеКлиента.ФормированиеПриОткрытии = Истина; ПодключитьОбработчикОжидания("СФормировать", 0.1, Истина); КонецЕсли; - ПоказатьРезультатЗаполненияНастроек(Неопределено); + ПоказатьРезультатЗаполненияНастроек(); КонецПроцедуры &НаКлиенте @@ -241,9 +234,9 @@ Если ИмяСобытия = ВариантыОтчетовКлиентСервер.ИмяСобытияИзменениеВарианта() Или ИмяСобытия = "Запись_НаборКонстант" Тогда ОповещениеОбработано = Истина; + ВариантыПанелиКлючТекущегоВарианта = " - "; ПодключитьОбработчикОжидания("ВидимостьДоступностьЕслиТребуется", 0.1, Истина); КонецЕсли; - ОтчетыКлиентПереопределяемый.ОбработкаОповещения(ЭтотОбъект, ИмяСобытия, Параметр, Источник, ОповещениеОбработано); КонецПроцедуры @@ -292,11 +285,6 @@ Возврат; КонецЕсли; - // Обновление ссылки варианта отчета. - Если ВариантыПанелиКлючТекущегоВарианта <> КлючТекущегоВарианта Тогда - ОбновитьИнформациюОВариантеОтчета(); - КонецЕсли; - // Загрузка фиксированных настроек для режима расшифровки. Если РежимРасшифровки Тогда ОтчетНаименованиеТекущегоВарианта = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НовыеНастройкиКД.ДополнительныеСвойства, "ВариантНаименование"); @@ -304,13 +292,23 @@ Отчет.КомпоновщикНастроек.ЗагрузитьФиксированныеНастройки(Параметры.Расшифровка.ПрименяемыеНастройки); Отчет.КомпоновщикНастроек.ФиксированныеНастройки.ДополнительныеСвойства.Вставить("РежимРасшифровки", Истина); КонецЕсли; + Если КлючТекущегоВарианта = Неопределено Тогда + КлючТекущегоВарианта = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НовыеНастройкиКД.ДополнительныеСвойства, "КлючВарианта"); + КонецЕсли; Иначе Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("ВариантНаименование", ОтчетНаименованиеТекущегоВарианта); КонецЕсли; + // Установка фиксированных отборов выполняется через компоновщик, т.к. в нем наиболее полная коллекция настроек. + // В ПередЗагрузкой в параметрах могут отсутствовать те параметры, настройки которые не переопределялись. Если ТипЗнч(ФормаПараметры.Отбор) = Тип("Структура") Тогда ОтчетыСервер.УстановитьФиксированныеОтборы(ФормаПараметры.Отбор, Отчет.КомпоновщикНастроек.Настройки, НастройкиОтчета); КонецЕсли; + // Обновление ссылки варианта отчета. + Если ВариантыПанелиКлючТекущегоВарианта <> КлючТекущегоВарианта Тогда + ОбновитьИнформациюОВариантеОтчета(); + КонецЕсли; + // Заполнение панели быстрых настроек. РежимВариантаОтчета = Истина; @@ -367,7 +365,7 @@ ПараметрыЗаполнения = Новый Структура; ПараметрыЗаполнения.Вставить("ИмяСобытия", "ПриОбновленииСоставаПользовательскихНастроекНаСервере"); ПараметрыЗаполнения.Вставить("СтандартнаяОбработкаСобытия", СтандартнаяОбработка); - РезультатЗаполненияНастроек = БыстрыеНастройкиЗаполнить(ПараметрыЗаполнения); + БыстрыеНастройкиЗаполнить(ПараметрыЗаполнения); Если ПараметрыЗаполнения.СтандартнаяОбработкаСобытия <> СтандартнаяОбработка Тогда СтандартнаяОбработка = ПараметрыЗаполнения.СтандартнаяОбработкаСобытия; КонецЕсли; @@ -422,9 +420,7 @@ Возврат; КонецЕсли; НовыеНастройкиКД = Отчет.КомпоновщикНастроек.ПолучитьНастройки(); - ПользовательскиеНастройкиКД = Отчет.КомпоновщикНастроек.ПользовательскиеНастройки; - Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(НовыеНастройкиКД); - Отчет.КомпоновщикНастроек.ЗагрузитьПользовательскиеНастройки(ПользовательскиеНастройкиКД); // Для платформы. + ОтчетыКлиентСервер.ЗагрузитьНастройки(Отчет.КомпоновщикНастроек, НовыеНастройкиКД); НастройкиКД.ДополнительныеСвойства.Вставить("Адрес", ПоместитьВоВременноеХранилище(НовыеНастройкиКД)); // Для платформы. НастройкиКД = НовыеНастройкиКД; ВариантыПанелиКлючТекущегоВарианта = " - "; @@ -442,11 +438,17 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + Если ФоновоеЗаданиеИдентификатор <> Неопределено Тогда ФоновоеЗаданиеОтменить(ФоновоеЗаданиеИдентификатор); ФоновоеЗаданиеИдентификатор = Неопределено; КонецЕсли; + КонецПроцедуры #КонецОбласти @@ -615,10 +617,7 @@ &НаКлиенте Процедура Подключаемый_ВыбратьПериод(Команда) - КнопкаВыбораИмя = Команда.Имя; - ЗначениеИмя = СтрЗаменить(КнопкаВыбораИмя, "_КнопкаВыбора_", "_Значение_"); - ИдентификаторЭлемента = Прав(КнопкаВыбораИмя, 32); - ОтчетыКлиент.ВыбратьПериод(ЭтотОбъект, ЗначениеИмя, ИдентификаторЭлемента); + ОтчетыКлиент.ВыбратьПериод(ЭтотОбъект, Команда.Имя); КонецПроцедуры #КонецОбласти @@ -646,18 +645,17 @@ ВыполнятьЗамеры = НастройкиОтчета.ВыполнятьЗамеры И ЗначениеЗаполнено(НастройкиОтчета.КлючЗамеров); Если ВыполнятьЗамеры Тогда - ИдентификаторЗамера = Новый УникальныйИдентификатор; - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - МодульОценкаПроизводительностиКлиентСервер.НачатьРучнойЗамерВремени( - НастройкиОтчета.КлючЗамеров + ".Настройки", - ИдентификаторЗамера, - НастройкиОтчета.ПрефиксЗамеров); + МодульОценкаПроизводительностиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиент"); + ИдентификаторЗамера = МодульОценкаПроизводительностиКлиент.НачатьЗамерВремени( + Ложь, + НастройкиОтчета.КлючЗамеров + ".Настройки"); + МодульОценкаПроизводительностиКлиент.УстановитьКомментарийЗамера(ИдентификаторЗамера, НастройкиОтчета.ПрефиксЗамеров); КонецЕсли; ОткрытьФорму(Имя, ПараметрыФормы, ЭтотОбъект, , , , Обработчик, Режим); Если ВыполнятьЗамеры Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьРучнойЗамерВремени(ИдентификаторЗамера); + МодульОценкаПроизводительностиКлиент.ЗавершитьЗамерВремени(ИдентификаторЗамера); КонецЕсли; КонецПроцедуры @@ -687,6 +685,10 @@ Процедура НастройкиПоУмолчанию(Команда) ПараметрыЗаполнения = Новый Структура; ПараметрыЗаполнения.Вставить("ИмяСобытия", "НастройкиПоУмолчанию"); + Если ВариантМодифицирован Тогда + ПараметрыЗаполнения.Вставить("СброситьНастройкиВарианта", Истина); + ПараметрыЗаполнения.Вставить("ВариантМодифицирован", Ложь); + КонецЕсли; ПараметрыЗаполнения.Вставить("СброситьПользовательскиеНастройки", Истина); ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); @@ -720,8 +722,7 @@ &НаКлиенте Процедура ФормироватьСразу(Команда) - ФормироватьСразу = Не НастройкиОтчета.ФормироватьСразу; - НастройкиОтчета.ФормироватьСразу = ФормироватьСразу; + ФормироватьСразу = Не Элементы.ФормироватьСразу.Пометка; Элементы.ФормироватьСразу.Пометка = ФормироватьСразу; СостояниеДоИзменения = Новый Структура("Видимость, ДополнительныйРежимОтображения, Картинка, Текст"); @@ -773,8 +774,8 @@ ВариантФормы = Найденные[0]; ЗагрузитьВариант(ВариантФормы.КлючВарианта); КлючУникальности = Лев(КлючУникальности, СтрНайти(КлючУникальности, "/")) + "КлючВарианта." + ВариантФормы.КлючВарианта; - ПоказатьРезультатЗаполненияНастроек(Неопределено); - Если НастройкиОтчета.ФормироватьСразу Тогда + ПоказатьРезультатЗаполненияНастроек(); + Если Элементы.ФормироватьСразу.Пометка Тогда ПодключитьОбработчикОжидания("Сформировать", 0.1, Истина); КонецЕсли; КонецПроцедуры @@ -840,8 +841,7 @@ ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчика); ПодключитьОбработчикОжидания("ФоновоеЗаданиеПроверитьНаКлиенте", ПараметрыОбработчика.ТекущийИнтервал, Истина); Иначе - ПеременныеКлиента.УспешноСформирован = Задание.Успех; - Если ПеременныеКлиента.УспешноСформирован Тогда + Если ОтчетСформирован Тогда ПоказатьОповещениеПользователя(НСтр("ru = 'Отчет сформирован'"), , Заголовок); Иначе ПоказатьОповещениеПользователя(НСтр("ru = 'Отчет не сформирован'"), , Заголовок); @@ -861,7 +861,7 @@ &НаКлиенте Процедура Сформировать() ПередФормированиемНаКлиенте(); - ТребуетсяОбработчик = ФоновоеЗаданиеЗапустить(ПеременныеКлиента.ФормированиеПриОткрытии); + ТребуетсяОбработчик = ФоновоеЗаданиеЗапустить(ПеременныеКлиента.ФормированиеПриОткрытии, НастройкиОтчета.Внешний Или НастройкиОтчета.Безопасный); Если ТребуетсяОбработчик Тогда ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчика); ПодключитьОбработчикОжидания("ФоновоеЗаданиеПроверитьНаКлиенте", 1, Истина); @@ -872,17 +872,17 @@ &НаКлиенте Процедура ПередФормированиемНаКлиенте() + ОтчетСформирован = Ложь; ПеременныеКлиента.Вставить("ВыполнятьЗамеры", НастройкиОтчета.ВыполнятьЗамеры И ЗначениеЗаполнено(НастройкиОтчета.КлючЗамеров)); Если ПеременныеКлиента.ВыполнятьЗамеры Тогда - ВариантыОтчетовКлиентСервер.ДополнитьСтруктуруКлючом(ПеременныеКлиента, "МодульОценкаПроизводительностиКлиентСервер"); + ВариантыОтчетовКлиентСервер.ДополнитьСтруктуруКлючом(ПеременныеКлиента, "МодульОценкаПроизводительностиКлиент"); ВариантыОтчетовКлиентСервер.ДополнитьСтруктуруКлючом(ПеременныеКлиента, "ИдентификаторЗамера"); Комментарий = НастройкиОтчета.ПрефиксЗамеров + "; " + НСтр("ru = 'Непосредственно:'") + " " + Строка(ПеременныеКлиента.Непосредственно); - ПеременныеКлиента.ИдентификаторЗамера = Новый УникальныйИдентификатор; - ПеременныеКлиента.МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - ПеременныеКлиента.МодульОценкаПроизводительностиКлиентСервер.НачатьРучнойЗамерВремени( - НастройкиОтчета.КлючЗамеров + ".Формирование", - ПеременныеКлиента.ИдентификаторЗамера, - Комментарий); + ПеременныеКлиента.МодульОценкаПроизводительностиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиент"); + ПеременныеКлиента.ИдентификаторЗамера = ПеременныеКлиента.МодульОценкаПроизводительностиКлиент.НачатьЗамерВремени( + Ложь, + НастройкиОтчета.КлючЗамеров + ".Формирование"); + ПеременныеКлиента.МодульОценкаПроизводительностиКлиент.УстановитьКомментарийЗамера(ПеременныеКлиента.ИдентификаторЗамера, Комментарий); КонецЕсли; КонецПроцедуры @@ -891,15 +891,16 @@ ОтключитьОбработчикОжидания("ФоновоеЗаданиеПроверитьНаКлиенте"); ПеременныеКлиента.ФормированиеПриОткрытии = Ложь; Если ПеременныеКлиента.ВыполнятьЗамеры Тогда - ПеременныеКлиента.МодульОценкаПроизводительностиКлиентСервер.ЗакончитьРучнойЗамерВремени(ПеременныеКлиента.ИдентификаторЗамера); + ПеременныеКлиента.МодульОценкаПроизводительностиКлиент.ЗавершитьЗамерВремени(ПеременныеКлиента.ИдентификаторЗамера); КонецЕсли; - Если ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПеременныеКлиента, "ОтправитьПослеФормирования") = Истина Тогда + ОтправитьПослеФормирования = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПеременныеКлиента, "ОтправитьПослеФормирования"); + Если ОтправитьПослеФормирования = Истина Тогда ПеременныеКлиента.ОтправитьПослеФормирования = Ложь; - Если ПеременныеКлиента.УспешноСформирован Тогда + Если ОтчетСформирован Тогда ПоказатьДиалогОтправкиПоЭлектроннойПочте(); КонецЕсли; КонецЕсли; - ПоказатьРезультатЗаполненияНастроек(Неопределено); + ПоказатьРезультатЗаполненияНастроек(); ОбновитьОтображениеДанных(); // Для платформы. КонецПроцедуры @@ -957,10 +958,10 @@ &НаКлиенте Процедура БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения) Если ПараметрыЗаполнения = Неопределено Тогда - ПараметрыЗаполнения = Новый Структура("ИмяСобытия", "ПослеИзмененияКоллекции"); + Возврат; КонецЕсли; - РезультатКлиента = БыстрыеНастройкиЗаполнить(ПараметрыЗаполнения); - ПоказатьРезультатЗаполненияНастроек(РезультатКлиента); + БыстрыеНастройкиЗаполнить(ПараметрыЗаполнения); + ПоказатьРезультатЗаполненияНастроек(); Если ПараметрыЗаполнения.Свойство("Переформировать") И ПараметрыЗаполнения.Переформировать Тогда ОчиститьСообщения(); Сформировать(); @@ -968,17 +969,13 @@ КонецПроцедуры &НаКлиенте -Процедура ПоказатьРезультатЗаполненияНастроек(РезультатКлиента) - Если РезультатКлиента = Неопределено Тогда - РезультатКлиента = РезультатЗаполненияНастроек; - РезультатЗаполненияНастроек = Неопределено; - КонецЕсли; - Если ТипЗнч(РезультатКлиента) <> Тип("Структура") Тогда +Процедура ПоказатьРезультатЗаполненияНастроек() + Если ТипЗнч(РезультатЗаполненияНастроек) <> Тип("Структура") Тогда Возврат; КонецЕсли; // Для платформы (переопределение доступных значений на клиенте). - СвоиСпискиВыбора = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(РезультатКлиента, "СвоиСпискиВыбора"); + СвоиСпискиВыбора = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(РезультатЗаполненияНастроек, "СвоиСпискиВыбора"); Если ТипЗнч(СвоиСпискиВыбора) = Тип("Массив") Тогда Для Каждого ИдентификаторЭлемента Из СвоиСпискиВыбора Цикл НастройкаВарианта = НайтиНастройкуВарианта(ЭтотОбъект, ИдентификаторЭлемента); @@ -1018,6 +1015,8 @@ КонецПопытки; КонецЦикла; КонецЕсли; + + РезультатЗаполненияНастроек.Очистить(); КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// @@ -1062,9 +1061,6 @@ "Видимость", ПоказыватьКомандыВариантовОтчетов); // Для платформы (кнопка исчезает если команда недоступна по правам). Элементы.ГруппаПользовательскиеНастройки.Видимость = ПоказыватьКомандыВариантовОтчетов И ЕстьНастройки; - - // Формировать сразу. - Элементы.ФормироватьСразу.Пометка = НастройкиОтчета.ФормироватьСразу; КонецЕсли; // Команды выбора вариантов. @@ -1086,6 +1082,13 @@ НастройкиОтчета.Печать.Вставить("КлючПараметровПечати", Уникальность); НастройкиПечатиВосстановить(); КонецЕсли; + + НавигационнаяСсылка = ""; + Если ЗначениеЗаполнено(НастройкиОтчета.ВариантСсылка) + И Не НастройкиОтчета.Внешний + И Не НастройкиОтчета.Контекстный Тогда + НавигационнаяСсылка = ПолучитьНавигационнуюСсылку(НастройкиОтчета.ВариантСсылка); + КонецЕсли; КонецЕсли; // Заголовок. @@ -1102,7 +1105,6 @@ &НаСервере Функция БыстрыеНастройкиЗаполнить(Знач ПараметрыКлиента) - // Вставка значений по умолчанию для обязательных ключей параметров заполнения. ПараметрыЗаполнения = БыстрыеНастройкиДозаполнитьПараметры(ПараметрыКлиента); @@ -1160,11 +1162,16 @@ НастройкиОтчета.Удалить("ОтчетОбъект"); КонецЕсли; - Возврат ПараметрыЗаполнения.Результат; + РезультатЗаполненияНастроек = ПараметрыЗаполнения.Результат; + + // Очистка цикличных ссылок. + Информация.ДеревоВарианта.Колонки.Очистить(); + Информация.НастройкиВарианта.Колонки.Очистить(); + Информация.ПользовательскиеНастройки.Колонки.Очистить(); КонецФункции &НаСервере -Функция ФоновоеЗаданиеЗапустить(Знач ФормированиеПриОткрытии) +Функция ФоновоеЗаданиеЗапустить(Знач ФормированиеПриОткрытии, Непосредственно) Если ФоновоеЗаданиеИдентификатор <> Неопределено Тогда ФоновоеЗаданиеОтменить(ФоновоеЗаданиеИдентификатор); ФоновоеЗаданиеИдентификатор = Неопределено; @@ -1219,11 +1226,11 @@ КонецЦикла; КонецЕсли; - ПараметрыФормированияОтчета.Вставить("ИмяКлючевойОперации", НРег(ВариантыОтчетовКлиентСервер.СтруктураВСтроку(Разрезы, "=", "/"))); + ПараметрыФормированияОтчета.Вставить("ИмяКлючевойОперации", НастройкиОтчета.КлючЗамеров + ".Формирование"); + ПараметрыФормированияОтчета.Вставить("КомментарийКлючевойОперации", НРег(ВариантыОтчетовКлиентСервер.СтруктураВСтроку(Разрезы, "=", "/"))); КонецЕсли; - Если НастройкиОтчета.Внешний Или НастройкиОтчета.Безопасный Тогда - // Непосредственно. + Если Непосредственно Тогда Если НастройкиОтчета.СхемаМодифицирована Тогда ПараметрыФормированияОтчета.Вставить("АдресСхемы", НастройкиОтчета.АдресСхемы); КонецЕсли; @@ -1239,12 +1246,13 @@ РезультатФоновогоЗадания.КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); КонецПопытки; Иначе - // В фоновом задании. Если НастройкиОтчета.СхемаМодифицирована Тогда ПараметрыФормированияОтчета.Вставить("СхемаКД", ПолучитьИзВременногоХранилища(НастройкиОтчета.АдресСхемы)); КонецЕсли; ПараметрыЗапуска = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); - ПараметрыЗапуска.НаименованиеФоновогоЗадания = НСтр("ru = 'Варианты отчетов: Формирование отчета'"); + ПараметрыЗапуска.НаименованиеФоновогоЗадания = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Выполнение отчета: %1'"), + СтрРазделить(НастройкиОтчета.ПолноеИмя, ".")[1]); ПараметрыЗапуска.ОжидатьЗавершение = Ложь; РезультатФоновогоЗадания = ДлительныеОперации.ВыполнитьВФоне( "ВариантыОтчетов.СформироватьОтчетВФоне", @@ -1335,11 +1343,18 @@ &НаСервере Процедура ЗагрузитьВариант(КлючВарианта) - // Сохранение текущих пользовательских настроек. - ОбщегоНазначения.ХранилищеСистемныхНастроекСохранить( - НастройкиОтчета.ПолноеИмя + "/" + КлючТекущегоВарианта + "/ТекущиеПользовательскиеНастройки", - "", - Отчет.КомпоновщикНастроек.ПользовательскиеНастройки); + Если Не РежимРасшифровки Тогда + // Сохранение текущих пользовательских настроек. + ОбщегоНазначения.ХранилищеСистемныхНастроекСохранить( + НастройкиОтчета.ПолноеИмя + "/" + КлючТекущегоВарианта + "/ТекущиеПользовательскиеНастройки", + "", + Отчет.КомпоновщикНастроек.ПользовательскиеНастройки); + КонецЕсли; + РежимРасшифровки = Ложь; + ВариантМодифицирован = Ложь; + ПользовательскиеНастройкиМодифицированы = Ложь; + НастройкиОтчета.ПрочитатьФлажокФормироватьСразуИзПользовательскихНастроек = Истина; + НастройкиОтчета.Удалить("ФормаНастроекРасширенныйРежим"); // Загрузка нового варианта. УстановитьТекущийВариант(КлючВарианта); // Переключение состояния. @@ -1419,6 +1434,11 @@ КонецЕсли; КонецЕсли; + СброситьНастройкиВарианта = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыЗаполнения, "СброситьНастройкиВарианта", Ложь); + Если СброситьНастройкиВарианта Тогда + ЗагрузитьВариант(КлючТекущегоВарианта); + КонецЕсли; + СброситьПользовательскиеНастройки = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыЗаполнения, "СброситьПользовательскиеНастройки", Ложь); Если СброситьПользовательскиеНастройки Тогда НовыеПользовательскиеНастройкиКД = Новый ПользовательскиеНастройкиКомпоновкиДанных; @@ -1434,19 +1454,16 @@ НовыеПользовательскиеНастройкиКД); КонецЕсли; - Если ТипЗнч(НовыеНастройкиКД) = Тип("НастройкиКомпоновкиДанных") - И Отчет.КомпоновщикНастроек.Настройки <> НовыеНастройкиКД Тогда - Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(НовыеНастройкиКД); + НастройкиЗагружены = ОтчетыКлиентСервер.ЗагрузитьНастройки(Отчет.КомпоновщикНастроек, НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД); + Если НастройкиЗагружены Тогда + // Установка фиксированных отборов выполняется через компоновщик, т.к. в нем наиболее полная коллекция настроек. + // В ПередЗагрузкой в параметрах могут отсутствовать те параметры, настройки которые не переопределялись. Если ТипЗнч(ФормаПараметры.Отбор) = Тип("Структура") Тогда ОтчетыСервер.УстановитьФиксированныеОтборы(ФормаПараметры.Отбор, Отчет.КомпоновщикНастроек.Настройки, НастройкиОтчета); КонецЕсли; Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("КлючВарианта", КлючТекущегоВарианта); Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("ВариантНаименование", ОтчетНаименованиеТекущегоВарианта); КонецЕсли; - Если ТипЗнч(НовыеПользовательскиеНастройкиКД) = Тип("ПользовательскиеНастройкиКомпоновкиДанных") - И Отчет.КомпоновщикНастроек.ПользовательскиеНастройки <> НовыеПользовательскиеНастройкиКД Тогда - Отчет.КомпоновщикНастроек.ЗагрузитьПользовательскиеНастройки(НовыеПользовательскиеНастройкиКД); - КонецЕсли; Если ПараметрыЗаполнения.Свойство("ФормаНастроекРасширенныйРежим") Тогда НастройкиОтчета.Вставить("ФормаНастроекРасширенныйРежим", ПараметрыЗаполнения.ФормаНастроекРасширенныйРежим); @@ -1474,7 +1491,7 @@ Если НастройкиОтчета.ПрочитатьФлажокФормироватьСразуИзПользовательскихНастроек Тогда НастройкиОтчета.ПрочитатьФлажокФормироватьСразуИзПользовательскихНастроек = Ложь; - НастройкиОтчета.ФормироватьСразу = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры( + Элементы.ФормироватьСразу.Пометка = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры( Отчет.КомпоновщикНастроек.ПользовательскиеНастройки.ДополнительныеСвойства, "ФормироватьСразу", НастройкиОтчета.ФормироватьСразу); @@ -1665,7 +1682,7 @@ ДанныеЕщеОбновляются = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(РезультатФормирования, "ДанныеЕщеОбновляются", Ложь); Если ДанныеЕщеОбновляются Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СообщениеДанныеЕщеОбновляются()); + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ВариантыОтчетов.СообщениеДанныеЕщеОбновляются()); КонецЕсли; ОтображениеСостояния = Элементы.ОтчетТабличныйДокумент.ОтображениеСостояния; @@ -1678,6 +1695,8 @@ ОтчетТабличныйДокумент = РезультатФормирования.ТабличныйДокумент; НастройкиПечатиВосстановить(); + ОтчетСформирован = Истина; + Если ЗначениеЗаполнено(ОтчетДанныеРасшифровки) И ЭтоАдресВременногоХранилища(ОтчетДанныеРасшифровки) Тогда УдалитьИзВременногоХранилища(ОтчетДанныеРасшифровки); КонецЕсли; @@ -1687,15 +1706,14 @@ Или РезультатФормирования.ПользовательскиеНастройкиМодифицированы Тогда РезультатФормирования.Вставить("ИмяСобытия", "ПослеФормирования"); РезультатФормирования.Вставить("Непосредственно", Ложь); - РезультатЗаполненияНастроек = БыстрыеНастройкиЗаполнить(РезультатФормирования); + БыстрыеНастройкиЗаполнить(РезультатФормирования); КонецЕсли; - КонецПроцедуры &НаСервере Процедура ПоказатьОшибкиФормирования(ИнформацияОбОшибке) Если ТипЗнч(ИнформацияОбОшибке) = Тип("ИнформацияОбОшибке") Тогда - ОписаниеОшибки = СтандартныеПодсистемыКлиентСервер.ИсходнаяПричинаОшибки(ИнформацияОбОшибке); + ОписаниеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке); ПодробноеПредставлениеОшибки = НСтр("ru = 'Ошибка при формировании:'") + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); Если ПустаяСтрока(ОписаниеОшибки) Тогда ОписаниеОшибки = ПодробноеПредставлениеОшибки; @@ -1870,7 +1888,10 @@ КонецЕсли; КонецЕсли; КонецЕсли; - Если НастройкиОтчета.Безопасный И ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент() Тогда + // В безопасном режиме отчеты нельзя сохранить при помощи стандартного диалога, + // возникающего перед закрытием, поскольку не включается привилегированный режим при доступе к планам обмена. + Если НастройкиОтчета.Безопасный + И Не Пользователи.ЭтоПолноправныйПользователь() Тогда ВариантМодифицирован = Ложь; КонецЕсли; КонецПроцедуры @@ -1914,16 +1935,12 @@ Выборка = Запрос.Выполнить().Выбрать(); - НавигационнаяСсылка = ""; Если Выборка.Следующий() Тогда НастройкиОтчета.Вставить("ВариантСсылка", Выборка.ВариантСсылка); НастройкиОтчета.Вставить("КлючЗамеров", Выборка.КлючЗамеров); НастройкиОтчета.Вставить("ПредопределенныйСсылка", Выборка.ПредопределенныйСсылка); НастройкиОтчета.Вставить("ИмяИсходногоВарианта", ?(Выборка.Пользовательский, Выборка.ИмяИсходногоВарианта, КлючТекущегоВарианта)); НастройкиОтчета.Вставить("Пользовательский", Выборка.Пользовательский); - Если Не НастройкиОтчета.Внешний Тогда - НавигационнаяСсылка = ПолучитьНавигационнуюСсылку(НастройкиОтчета.ВариантСсылка); - КонецЕсли; Иначе НастройкиОтчета.Вставить("ВариантСсылка", Неопределено); НастройкиОтчета.Вставить("КлючЗамеров", Неопределено); @@ -1933,9 +1950,4 @@ КонецЕсли; КонецПроцедуры -&НаСервереБезКонтекста -Функция СообщениеДанныеЕщеОбновляются() - Возврат НСтр("ru = 'Отчет может содержать некорректные данные, так как не завершен переход на новую версию программы. Если отчет долгое время недоступен, необходимо обратиться к администратору.'"); -КонецФункции - #КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonForms/ФормаПоиска/Form.form b/SSL/src/CommonForms/ФормаПоиска/Form.form index 9a8ff7313..f885c1cd2 100644 --- a/SSL/src/CommonForms/ФормаПоиска/Form.form +++ b/SSL/src/CommonForms/ФормаПоиска/Form.form @@ -49,7 +49,7 @@ <event>ChoiceProcessing</event> <name>СтрокаПоискаОбработкаВыбора</name> </handlers> - <autoMaxWidth>true</autoMaxWidth> + <maxWidth>40</maxWidth> <autoMaxHeight>true</autoMaxHeight> <chooseType>true</chooseType> <typeDomainEnabled>true</typeDomainEnabled> @@ -123,7 +123,7 @@ <horizontalAlign>Left</horizontalAlign> </extInfo> </extendedTooltip> - <type>Hyperlink</type> + <type>UsualButton</type> <commandName>Form.StandardCommand.Help</commandName> <buttonImportance>Normal</buttonImportance> <representation>Picture</representation> @@ -196,7 +196,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -230,7 +229,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <handlers> @@ -302,7 +300,6 @@ <buttonImportance>Normal</buttonImportance> <representation>Auto</representation> <autoMaxWidth>true</autoMaxWidth> - <height>1</height> <autoMaxHeight>true</autoMaxHeight> <placementArea>UserCmds</placementArea> <backColor xsi:type="core:ColorRef"> @@ -336,7 +333,6 @@ <buttonImportance>Normal</buttonImportance> <representation>PictureAndText</representation> <autoMaxWidth>true</autoMaxWidth> - <height>1</height> <autoMaxHeight>true</autoMaxHeight> <placementArea>UserCmds</placementArea> <backColor xsi:type="core:ColorRef"> @@ -352,7 +348,6 @@ <userVisible> <common>true</common> </userVisible> - <horizontalStretch>false</horizontalStretch> <extendedTooltip> <name>ГруппаНавигацияExtendedTooltip</name> <id>57</id> @@ -492,10 +487,6 @@ <event>OnCreateAtServer</event> <name>ПриСозданииНаСервере</name> </handlers> - <handlers> - <event>OnClose</event> - <name>ПриЗакрытии</name> - </handlers> <windowOpeningMode>DontBlock</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoTitle>true</autoTitle> diff --git a/SSL/src/CommonForms/ФормаПоиска/Module.bsl b/SSL/src/CommonForms/ФормаПоиска/Module.bsl index bb9bb154a..00aaaf723 100644 --- a/SSL/src/CommonForms/ФормаПоиска/Module.bsl +++ b/SSL/src/CommonForms/ФормаПоиска/Module.bsl @@ -75,13 +75,6 @@ КонецЕсли; КонецПроцедуры -&НаКлиенте -Процедура ПриЗакрытии() - - СохранитьНастройкиПоиска(); - -КонецПроцедуры - #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы @@ -492,6 +485,8 @@ &НаСервере Процедура СформироватьПредставлениеОбластиПоиска() + СохранитьНастройкиПоиска(); + Если Не ИскатьВРазделах Или ОбластиПоиска.Количество() = 0 Тогда Элементы.ОбластиПоискаПредставление.Заголовок = НСтр("ru = 'Везде'"); Возврат; diff --git a/SSL/src/CommonForms/ЭлектроннаяПодпись/Form.form b/SSL/src/CommonForms/ЭлектроннаяПодпись/Form.form index 766ea51fb..a48dcf628 100644 --- a/SSL/src/CommonForms/ЭлектроннаяПодпись/Form.form +++ b/SSL/src/CommonForms/ЭлектроннаяПодпись/Form.form @@ -210,9 +210,7 @@ <extInfo xsi:type="form:InputFieldExtInfo"> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> <wrap>true</wrap> - <multiLine>true</multiLine> <chooseType>true</chooseType> <typeDomainEnabled>true</typeDomainEnabled> <textEdit>true</textEdit> @@ -261,6 +259,89 @@ <textSize>Normal</textSize> </extInfo> </items> + <items xsi:type="form:FormField"> + <name>ОписаниеОшибки</name> + <id>35</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <dataPath xsi:type="form:DataPath"> + <segments>ОписаниеОшибки</segments> + </dataPath> + <titleLocation>Left</titleLocation> + <extendedTooltip> + <name>ОписаниеОшибкиРасширеннаяПодсказка</name> + <id>37</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>ОписаниеОшибкиКонтекстноеМеню</name> + <id>36</id> + <autoFill>true</autoFill> + </contextMenu> + <type>InputField</type> + <readOnly>true</readOnly> + <editMode>Enter</editMode> + <showInHeader>true</showInHeader> + <headerHorizontalAlign>Left</headerHorizontalAlign> + <showInFooter>true</showInFooter> + <extInfo xsi:type="form:InputFieldExtInfo"> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <horizontalStretch>true</horizontalStretch> + <wrap>true</wrap> + <multiLine>true</multiLine> + <chooseType>true</chooseType> + <typeDomainEnabled>true</typeDomainEnabled> + <textEdit>true</textEdit> + <textSize>Normal</textSize> + </extInfo> + </items> + <items xsi:type="form:Decoration"> + <name>Инструкция</name> + <id>38</id> + <title> + <key>ru</key> + <value>Типичные проблемы при работе с программами электронной подписи и их решение</value> + + true + true + + true + + + ИнструкцияРасширеннаяПодсказка + 40 + Label + true + true + + Left + + + + ИнструкцияКонтекстноеМеню + 39 + true + + Label + true + + + Click + ИнструкцияНажатие + + true + Left + + ФормаКоманднаяПанель -1 @@ -348,7 +429,6 @@ OnCreateAtServer ПриСозданииНаСервере - 60 LockOwner true true @@ -534,6 +614,24 @@ true + + ОписаниеОшибки + + <key>ru</key> + <value>Описание ошибки</value> + + 12 + + String + + + + true + + + true + + СохранитьВФайл diff --git a/SSL/src/CommonForms/ЭлектроннаяПодпись/Module.bsl b/SSL/src/CommonForms/ЭлектроннаяПодпись/Module.bsl index 2fe35fe35..2be281337 100644 --- a/SSL/src/CommonForms/ЭлектроннаяПодпись/Module.bsl +++ b/SSL/src/CommonForms/ЭлектроннаяПодпись/Module.bsl @@ -10,6 +10,25 @@ ЗаполнитьЗначенияСвойств(ЭтотОбъект, Параметры.СвойстваПодписи); + Если Параметры.СвойстваПодписи.ПодписьВерна Тогда + СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(ЭтотОбъект, ""); + Элементы.Инструкция.Видимость = Ложь; + Элементы.ОписаниеОшибки.Видимость = Ложь; + Иначе + СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(ЭтотОбъект, "ОписаниеОшибки"); + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы + +&НаКлиенте +Процедура ИнструкцияНажатие(Элемент) + + ЭлектроннаяПодписьКлиент.ОткрытьИнструкциюПоТипичнымПроблемамПриРаботеСПрограммами(); + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/CommonModules/АдминистрированиеКластераCOMКлиентСервер/Module.bsl b/SSL/src/CommonModules/АдминистрированиеКластераCOMКлиентСервер/Module.bsl index 126171591..20fdba47d 100644 --- a/SSL/src/CommonModules/АдминистрированиеКластераCOMКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/АдминистрированиеКластераCOMКлиентСервер/Module.bsl @@ -553,14 +553,14 @@ ПараметрыАдминистрированияКластера.ПарольАдминистратораКластера); Значение = Новый Массив; - Значение.Добавить("1CV8"); // идентификатор приложения 1С:Предприятие в режиме запуска "Толстый клиент" - Значение.Добавить("1CV8C"); // идентификатор приложения 1С:Предприятие в режиме запуска "Тонкий клиент" - Значение.Добавить("WebClient"); // идентификатор приложения 1С:Предприятие в режиме запуска "Веб-клиент" - Значение.Добавить("Designer"); // идентификатор приложения Конфигуратор - Значение.Добавить("COMConnection"); // идентификатор сессии внешнего соединения 1С:Предприятия через COM - Значение.Добавить("WSConnection"); // идентификатор сессии Web-сервиса - Значение.Добавить("BackgroundJob"); // идентификатор сессии обработки заданий - Значение.Добавить("WebServerExtension"); // идентификатор расширения Web-сервера + Значение.Добавить("1CV8"); // идентификатор приложения 1С:Предприятие в режиме запуска "Толстый клиент". + Значение.Добавить("1CV8C"); // идентификатор приложения 1С:Предприятие в режиме запуска "Тонкий клиент". + Значение.Добавить("WebClient"); // идентификатор приложения 1С:Предприятие в режиме запуска "Веб-клиент". + Значение.Добавить("Designer"); // идентификатор приложения Конфигуратор. + Значение.Добавить("COMConnection"); // идентификатор сессии внешнего соединения 1С:Предприятия через COM. + Значение.Добавить("WSConnection"); // идентификатор сессии Web-сервиса. + Значение.Добавить("BackgroundJob"); // идентификатор сессии обработки заданий. + Значение.Добавить("WebServerExtension"); // идентификатор расширения Web-сервера. АдминистрированиеКластераКлиентСервер.ДобавитьУсловиеФильтра(Фильтр, "ИдентификаторКлиентскогоПриложения", ВидСравнения.ВСписке, Значение); @@ -1123,7 +1123,7 @@ Для Каждого ОписаниеИнформационнойБазы Из СоединениеСАгентомСервера.GetInfoBases(Кластер) Цикл - Если ОписаниеИнформационнойБазы.Name = ИмяВКластере Тогда + Если НРег(ОписаниеИнформационнойБазы.Name) = НРег(ИмяВКластере) Тогда Возврат ОписаниеИнформационнойБазы; @@ -1155,7 +1155,7 @@ Для Каждого ИнформационнаяБаза Из СоединениеСРабочимПроцессом.GetInfoBases() Цикл - Если ИнформационнаяБаза.Name = ИмяВКластере Тогда + Если НРег(ИнформационнаяБаза.Name) = НРег(ИмяВКластере) Тогда Если Не ЗначениеЗаполнено(ИнформационнаяБаза.DBMS) Тогда @@ -1302,28 +1302,28 @@ Соединения = Новый Массив(); Словарь = СловарьСвойствСоединений(); - // Рабочие процессы, зарегистрированные в кластере + // Рабочие процессы, зарегистрированные в кластере. Для каждого РабочийПроцесс Из СоединениеСАгентомСервера.GetWorkingProcesses(Кластер) Цикл - // Административное соединение с рабочим процессом + // Административное соединение с рабочим процессом. СтрокаСоединенияСРабочимПроцессом = РабочийПроцесс.HostName + ":" + Формат(РабочийПроцесс.MainPort, "ЧГ="); СоединениеСРабочимПроцессом = COMСоединитель.ConnectWorkingProcess(СтрокаСоединенияСРабочимПроцессом); - // Получение информационных баз (аутентификация не требуется) + // Получение информационных баз (аутентификация не требуется). Для каждого ИнформационнаяБаза Из СоединениеСРабочимПроцессом.GetInfoBases() Цикл - // Это требуемая информационная база - Если ИнформационнаяБаза.Name = ИмяВКластере Тогда + // Это требуемая информационная база. + Если НРег(ИнформационнаяБаза.Name) = НРег(ИмяВКластере) Тогда - // Для получение соединений с информационной базой требуется аутентификация + // Для получение соединений с информационной базой требуется аутентификация. СоединениеСРабочимПроцессом.AddAuthentication(ИмяАдминистратораИБ, ПарольАдминистратораИБ); - // Получение соединений с информационной базой + // Получение соединений с информационной базой. Для каждого Соединение Из СоединениеСРабочимПроцессом.GetInfoBaseConnections(ИнформационнаяБаза) Цикл ОписаниеСоединения = ОписаниеОбъектаОбъектнойМоделиCOMАдминистратора(Соединение, Словарь); - // Проверка соединения на соответствие требуемым фильтрам + // Проверка соединения на соответствие требуемым фильтрам. Если АдминистрированиеКластераКлиентСервер.ПроверитьУсловияФильтра(ОписаниеСоединения, Фильтр) Тогда Если Описания Тогда @@ -1363,7 +1363,7 @@ Для Каждого ПрофильБезопасности Из СоединениеСАгентомСервера.GetSecurityProfiles(Кластер) Цикл - Если ПрофильБезопасности.Name = ИмяПрофиля Тогда + Если НРег(ПрофильБезопасности.Name) = НРег(ИмяПрофиля) Тогда Возврат ПрофильБезопасности; КонецЕсли; diff --git a/SSL/src/CommonModules/АдминистрированиеКластераRASКлиентСервер/Module.bsl b/SSL/src/CommonModules/АдминистрированиеКластераRASКлиентСервер/Module.bsl index 50772486a..1b13acc2d 100644 --- a/SSL/src/CommonModules/АдминистрированиеКластераRASКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/АдминистрированиеКластераRASКлиентСервер/Module.bsl @@ -92,8 +92,8 @@ Если ПроверятьПараметрыАдминистрированияКластера Или ПроверятьПараметрыАдминистрированияИнформационнойБазы Тогда - ИдентификаторКластера = ПолучитьКластер(ПараметрыАдминистрированияКластера); - РабочиеПроцессы = ПолучитьРабочиеПроцессы(ИдентификаторКластера, ПараметрыАдминистрированияКластера); + ИдентификаторКластера = ИдентификаторКластера(ПараметрыАдминистрированияКластера); + РабочиеПроцессы = СвойстваРабочихПроцессов(ИдентификаторКластера, ПараметрыАдминистрированияКластера); КонецЕсли; @@ -199,9 +199,9 @@ // Функция СеансыИнформационнойБазы(Знач ПараметрыАдминистрированияКластера, Знач ПараметрыАдминистрированияИБ, Знач Фильтр = Неопределено) Экспорт - ИдентификаторКластера = ПолучитьКластер(ПараметрыАдминистрированияКластера); - ИдентификаторИнформационнойБазы = ПолучитьИнформационнуюБазу(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ПараметрыАдминистрированияИБ); - Возврат ПолучитьСеансы(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИдентификаторИнформационнойБазы, Фильтр); + ИдентификаторКластера = ИдентификаторКластера(ПараметрыАдминистрированияКластера); + ИдентификаторИнформационнойБазы = ИдентификаторИнформационнойБазы(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ПараметрыАдминистрированияИБ); + Возврат СвойстваСеансов(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИдентификаторИнформационнойБазы, Фильтр); КонецФункции @@ -248,18 +248,18 @@ Параметры = Новый Соответствие(); - ИдентификаторКластера = ПолучитьКластер(ПараметрыАдминистрированияКластера); + ИдентификаторКластера = ИдентификаторКластера(ПараметрыАдминистрированияКластера); Параметры.Вставить("cluster", ИдентификаторКластера); ЗаполнитьПараметрыАутентификацииВКластере(ПараметрыАдминистрированияКластера, Параметры); - ИдентификаторИнформационнойБазы = ПолучитьИнформационнуюБазу(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ПараметрыАдминистрированияИБ); + ИдентификаторИнформационнойБазы = ИдентификаторИнформационнойБазы(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ПараметрыАдминистрированияИБ); КоличествоПопыток = 3; ВсеСеансыУдалены = Ложь; Для ТекущаяПопытка = 0 По КоличествоПопыток Цикл - Сеансы = ПолучитьСеансы(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИдентификаторИнформационнойБазы, Фильтр, Ложь); + Сеансы = СвойстваСеансов(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИдентификаторИнформационнойБазы, Фильтр, Ложь); Если Сеансы.Количество() = 0 Тогда @@ -345,9 +345,9 @@ // Функция СоединенияСИнформационнойБазой(Знач ПараметрыАдминистрированияКластера, Знач ПараметрыАдминистрированияИБ, Знач Фильтр = Неопределено) Экспорт - ИдентификаторКластера = ПолучитьКластер(ПараметрыАдминистрированияКластера); - ИдентификаторИнформационнойБазы = ПолучитьИнформационнуюБазу(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ПараметрыАдминистрированияИБ); - Возврат ПолучитьСоединения(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИдентификаторИнформационнойБазы, ПараметрыАдминистрированияИБ, Фильтр, Истина); + ИдентификаторКластера = ИдентификаторКластера(ПараметрыАдминистрированияКластера); + ИдентификаторИнформационнойБазы = ИдентификаторИнформационнойБазы(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ПараметрыАдминистрированияИБ); + Возврат СвойстваСоединений(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИдентификаторИнформационнойБазы, ПараметрыАдминистрированияИБ, Фильтр, Истина); КонецФункции @@ -395,23 +395,23 @@ Параметры = Новый Соответствие(); - ИдентификаторКластера = ПолучитьКластер(ПараметрыАдминистрированияКластера); + ИдентификаторКластера = ИдентификаторКластера(ПараметрыАдминистрированияКластера); Параметры.Вставить("cluster", ИдентификаторКластера); ЗаполнитьПараметрыАутентификацииВКластере(ПараметрыАдминистрированияКластера, Параметры); - ИдентификаторИнформационнойБазы = ПолучитьИнформационнуюБазу(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ПараметрыАдминистрированияИБ); + ИдентификаторИнформационнойБазы = ИдентификаторИнформационнойБазы(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ПараметрыАдминистрированияИБ); Параметры.Вставить("infobase", ИдентификаторИнформационнойБазы); ЗаполнитьПараметрыАутентификацииВИБ(ПараметрыАдминистрированияИБ, Параметры); Значение = Новый Массив; - Значение.Добавить("1CV8"); // идентификатор приложения 1С:Предприятие в режиме запуска "Толстый клиент" - Значение.Добавить("1CV8C"); // идентификатор приложения 1С:Предприятие в режиме запуска "Тонкий клиент" - Значение.Добавить("WebClient"); // идентификатор приложения 1С:Предприятие в режиме запуска "Веб-клиент" - Значение.Добавить("Designer"); // идентификатор приложения Конфигуратор - Значение.Добавить("COMConnection"); // идентификатор сессии внешнего соединения 1С:Предприятия через COM - Значение.Добавить("WSConnection"); // идентификатор сессии Web-сервиса - Значение.Добавить("BackgroundJob"); // идентификатор сессии обработки заданий - Значение.Добавить("WebServerExtension"); // идентификатор расширения Web-сервера + Значение.Добавить("1CV8"); // идентификатор приложения 1С:Предприятие в режиме запуска "Толстый клиент". + Значение.Добавить("1CV8C"); // идентификатор приложения 1С:Предприятие в режиме запуска "Тонкий клиент". + Значение.Добавить("WebClient"); // идентификатор приложения 1С:Предприятие в режиме запуска "Веб-клиент". + Значение.Добавить("Designer"); // идентификатор приложения Конфигуратор. + Значение.Добавить("COMConnection"); // идентификатор сессии внешнего соединения 1С:Предприятия через COM. + Значение.Добавить("WSConnection"); // идентификатор сессии Web-сервиса. + Значение.Добавить("BackgroundJob"); // идентификатор сессии обработки заданий. + Значение.Добавить("WebServerExtension"); // идентификатор расширения Web-сервера. АдминистрированиеКластераКлиентСервер.ДобавитьУсловиеФильтра(Фильтр, "ИдентификаторКлиентскогоПриложения", ВидСравнения.ВСписке, Значение); @@ -420,7 +420,7 @@ Для ТекущаяПопытка = 0 По КоличествоПопыток Цикл - Соединения = ПолучитьСоединения(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИдентификаторИнформационнойБазы, ПараметрыАдминистрированияИБ, Фильтр, Ложь); + Соединения = СвойстваСоединений(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИдентификаторИнформационнойБазы, ПараметрыАдминистрированияИБ, Фильтр, Ложь); Если Соединения.Количество() = 0 Тогда @@ -579,7 +579,7 @@ Фильтр = Новый Структура("Имя", ИмяПрофиля); - ИдентификаторКластера = ПолучитьКластер(ПараметрыАдминистрированияКластера); + ИдентификаторКластера = ИдентификаторКластера(ПараметрыАдминистрированияКластера); ПрофилиБезопасности = ПолучитьПрофилиБезопасности(ИдентификаторКластера, ПараметрыАдминистрированияКластера, Фильтр); @@ -601,7 +601,7 @@ Фильтр = Новый Структура("Имя", ИмяПрофиля); - ИдентификаторКластера = ПолучитьКластер(ПараметрыАдминистрированияКластера); + ИдентификаторКластера = ИдентификаторКластера(ПараметрыАдминистрированияКластера); ПрофилиБезопасности = ПолучитьПрофилиБезопасности(ИдентификаторКластера, ПараметрыАдминистрированияКластера, Фильтр); @@ -654,7 +654,7 @@ Фильтр = Новый Структура("Имя", ИмяПрофиля); - ИдентификаторКластера = ПолучитьКластер(ПараметрыАдминистрированияКластера); + ИдентификаторКластера = ИдентификаторКластера(ПараметрыАдминистрированияКластера); ПрофилиБезопасности = ПолучитьПрофилиБезопасности(ИдентификаторКластера, ПараметрыАдминистрированияКластера, Фильтр); @@ -680,7 +680,7 @@ Фильтр = Новый Структура("Имя", ИмяПрофиля); - ИдентификаторКластера = ПолучитьКластер(ПараметрыАдминистрированияКластера); + ИдентификаторКластера = ИдентификаторКластера(ПараметрыАдминистрированияКластера); ПрофилиБезопасности = ПолучитьПрофилиБезопасности(ИдентификаторКластера, ПараметрыАдминистрированияКластера, Фильтр); @@ -703,7 +703,7 @@ Шаблон = "%rac profile --cluster=%cluster% --cluster-user=%?cluster-user% --cluster-pwd=%?cluster-pwd% remove --name=%name%"; - ИдентификаторКластера = ПолучитьКластер(ПараметрыАдминистрированияКластера); + ИдентификаторКластера = ИдентификаторКластера(ПараметрыАдминистрированияКластера); Параметры = Новый Соответствие(); @@ -728,13 +728,13 @@ // ПараметрыАдминистрированияИнформационнойБазы - Структура, описывающая параметры подключения к информационной базе, // описание - см. АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияИнформационнойБазыКластера(). // -// Возвращаемое значение: Строка, внутренний идентификатор кластера серверов. +// Возвращаемое значение: Строка, внутренний идентификатор информационной базы. // -Функция ПолучитьИнформационнуюБазу(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ПараметрыАдминистрированияИнформационнойБазы) Экспорт +Функция ИдентификаторИнформационнойБазы(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ПараметрыАдминистрированияИнформационнойБазы) Экспорт Фильтр = Новый Структура("name", ПараметрыАдминистрированияИнформационнойБазы.ИмяВКластере); - ИнформационныеБазы = ПолучитьИнформационныеБазы(ИдентификаторКластера, ПараметрыАдминистрированияКластера, Фильтр); + ИнформационныеБазы = СвойстваИнформационныхБаз(ИдентификаторКластера, ПараметрыАдминистрированияКластера, Фильтр); Если ИнформационныеБазы.Количество() = 1 Тогда Возврат ИнформационныеБазы[0].Получить("infobase"); @@ -754,7 +754,7 @@ // // Возвращаемое значение: Массив(Структура). // -Функция ПолучитьИнформационныеБазы(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач Фильтр = Неопределено) Экспорт +Функция СвойстваИнформационныхБаз(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач Фильтр = Неопределено) Экспорт Шаблон = "%rac infobase summary --cluster=%cluster% --cluster-user=%?cluster-user% --cluster-pwd=%?cluster-pwd% list"; @@ -781,11 +781,11 @@ // // Возвращаемое значение - Строка, внутренний идентификатор кластера серверов. // -Функция ПолучитьКластер(Знач ПараметрыАдминистрированияКластера) Экспорт +Функция ИдентификаторКластера(Знач ПараметрыАдминистрированияКластера) Экспорт Фильтр = Новый Структура("port", ПараметрыАдминистрированияКластера.ПортКластера); - Кластеры = ПолучитьКластеры(ПараметрыАдминистрированияКластера, Фильтр); + Кластеры = СвойстваКластеров(ПараметрыАдминистрированияКластера, Фильтр); Если Кластеры.Количество() = 1 Тогда Возврат Кластеры[0].Получить("cluster"); @@ -803,7 +803,7 @@ // // Возвращаемое значение: Массив(Структура). // -Функция ПолучитьКластеры(Знач ПараметрыАдминистрированияКластера, Знач Фильтр = Неопределено) Экспорт +Функция СвойстваКластеров(Знач ПараметрыАдминистрированияКластера, Знач Фильтр = Неопределено) Экспорт Шаблон = "%rac cluster list"; ПотокВывода = ВыполнитьКоманду(Шаблон, ПараметрыАдминистрированияКластера); @@ -826,7 +826,7 @@ // // Возвращаемое значение: Массив(Структура). // -Функция ПолучитьРабочиеПроцессы(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач Фильтр = Неопределено) Экспорт +Функция СвойстваРабочихПроцессов(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач Фильтр = Неопределено) Экспорт Шаблон = "%rac process --cluster=%cluster% --cluster-user=%?cluster-user% --cluster-pwd=%?cluster-pwd% list --server=%server%"; @@ -836,7 +836,7 @@ ЗаполнитьПараметрыАутентификацииВКластере(ПараметрыАдминистрированияКластера, Параметры); Результат = Новый Массив(); - РабочиеСерверы = ПолучитьРабочиеСерверы(ИдентификаторКластера, ПараметрыАдминистрированияКластера); + РабочиеСерверы = СвойстваРабочихСерверов(ИдентификаторКластера, ПараметрыАдминистрированияКластера); Для Каждого РабочийСервер Из РабочиеСерверы Цикл Параметры.Вставить("server", РабочийСервер.Получить("server")); ПотокВывода = ВыполнитьКоманду(Шаблон, ПараметрыАдминистрированияКластера, Параметры); @@ -860,7 +860,7 @@ // // Возвращаемое значение: Массив(Структура). // -Функция ПолучитьРабочиеСерверы(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач Фильтр = Неопределено) Экспорт +Функция СвойстваРабочихСерверов(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач Фильтр = Неопределено) Экспорт Шаблон = "%rac server --cluster=%cluster% --cluster-user=%?cluster-user% --cluster-pwd=%?cluster-pwd% list"; @@ -922,7 +922,7 @@ // (описание структур - см. АдминистрированиеКластераКлиентСервер.СвойстваСеанса()) или массив соответствий, // описывающих свойства сеансов в нотации утилиты rac (при ИспользоватьСловарь = Ложь). // -Функция ПолучитьСеансы(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ИдентификаторИнформационнойБазы, Знач Фильтр = Неопределено, Знач ИспользоватьСловарь = Истина) Экспорт +Функция СвойстваСеансов(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ИдентификаторИнформационнойБазы, Знач Фильтр = Неопределено, Знач ИспользоватьСловарь = Истина) Экспорт Шаблон = "%rac session --cluster=%cluster% --cluster-user=%?cluster-user% --cluster-pwd=%?cluster-pwd% list --infobase=%infobase%"; @@ -992,7 +992,7 @@ // (описание структур - см. АдминистрированиеКластераКлиентСервер.СвойстваСоединения()) или массив соответствий, // описывающих свойства соединений в нотации утилиты rac (при ИспользоватьСловарь = Ложь). // -Функция ПолучитьСоединения(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ИдентификаторИнформационнойБазы, Знач ПараметрыАдминистрированияИнформационнойБазы, Знач Фильтр = Неопределено, Знач ИспользоватьСловарь = Ложь) Экспорт +Функция СвойстваСоединений(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ИдентификаторИнформационнойБазы, Знач ПараметрыАдминистрированияИнформационнойБазы, Знач Фильтр = Неопределено, Знач ИспользоватьСловарь = Ложь) Экспорт Шаблон = "%rac connection --cluster=%cluster% --cluster-user=%?cluster-user% --cluster-pwd=%?cluster-pwd% list --process=%process% --infobase=%infobase% --infobase-user=%?infobase-user% --infobase-pwd=%?infobase-pwd%"; @@ -1012,7 +1012,7 @@ КонецЕсли; Результат = Новый Массив(); - РабочиеПроцессы = ПолучитьРабочиеПроцессы(ИдентификаторКластера, ПараметрыАдминистрированияКластера); + РабочиеПроцессы = СвойстваРабочихПроцессов(ИдентификаторКластера, ПараметрыАдминистрированияКластера); Для Каждого РабочийПроцесс Из РабочиеПроцессы Цикл @@ -1032,30 +1032,12 @@ КонецФункции -// Возвращает каталог исполняемых файлов платформы. -// -// Возвращаемое значение: -// Строка, каталог исполняемых файлов платформы. -// -Функция КаталогИсполняемыхФайловПлатформы() Экспорт - - Результат = КаталогПрограммы(); - СимволРазделителя = ПолучитьРазделительПути(); - - Если Не СтрЗаканчиваетсяНа(Результат, СимволРазделителя) Тогда - Результат = Результат + СимволРазделителя; - КонецЕсли; - - Возврат Результат; - -КонецФункции - // Возвращает путь к консольному клиенту сервера администрирования. // // Возвращаемое значение: // Строка, путь к консольному клиенту сервера администрирования. // -Функция ПолучитьКлиентСервераАдминистрирования() Экспорт +Функция ПутьККлиентуСервераАдминистрирования() Экспорт КаталогЗапуска = КаталогИсполняемыхФайловПлатформы(); Клиент = КаталогЗапуска + "rac"; @@ -1069,12 +1051,34 @@ КонецФункции +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +// Возвращает каталог исполняемых файлов платформы. +// +// Возвращаемое значение: +// Строка, каталог исполняемых файлов платформы. +// +Функция КаталогИсполняемыхФайловПлатформы() + + Результат = КаталогПрограммы(); + СимволРазделителя = ПолучитьРазделительПути(); + + Если Не СтрЗаканчиваетсяНа(Результат, СимволРазделителя) Тогда + Результат = Результат + СимволРазделителя; + КонецЕсли; + + Возврат Результат; + +КонецФункции + // Возвращает кодировку стандартных поток вывода и ошибок, используемую в текущей ОС. // // Возвращаемое значение: // КодировкаТекста, кодировка стандартных потоков вывода и ошибок. // -Функция ПолучитьКодировкуСтандартныхПотоков() Экспорт +Функция ПолучитьКодировкуСтандартныхПотоков() СисИнфо = Новый СистемнаяИнформация(); Если (СисИнфо.ТипПлатформы = ТипПлатформы.Windows_x86) Или (СисИнфо.ТипПлатформы = ТипПлатформы.Windows_x86_64) Тогда @@ -1087,10 +1091,6 @@ КонецФункции -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - // Возвращает значения свойств информационной базы. // // Параметры: @@ -1109,11 +1109,11 @@ Параметры = Новый Соответствие(); - ИдентификаторКластера = ПолучитьКластер(ПараметрыАдминистрированияКластера); + ИдентификаторКластера = ИдентификаторКластера(ПараметрыАдминистрированияКластера); Параметры.Вставить("cluster", ИдентификаторКластера); ЗаполнитьПараметрыАутентификацииВКластере(ПараметрыАдминистрированияКластера, Параметры); - ИдентификаторИнформационнойБазы = ПолучитьИнформационнуюБазу(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ПараметрыАдминистрированияИБ); + ИдентификаторИнформационнойБазы = ИдентификаторИнформационнойБазы(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ПараметрыАдминистрированияИБ); Параметры.Вставить("infobase", ИдентификаторИнформационнойБазы); ЗаполнитьПараметрыАутентификацииВИБ(ПараметрыАдминистрированияИБ, Параметры); @@ -1141,11 +1141,11 @@ Параметры = Новый Соответствие(); - ИдентификаторКластера = ПолучитьКластер(ПараметрыАдминистрированияКластера); + ИдентификаторКластера = ИдентификаторКластера(ПараметрыАдминистрированияКластера); Параметры.Вставить("cluster", ИдентификаторКластера); ЗаполнитьПараметрыАутентификацииВКластере(ПараметрыАдминистрированияКластера, Параметры); - ИдентификаторИнформационнойБазы = ПолучитьИнформационнуюБазу(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ПараметрыАдминистрированияИБ); + ИдентификаторИнформационнойБазы = ИдентификаторИнформационнойБазы(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ПараметрыАдминистрированияИБ); Параметры.Вставить("infobase", ИдентификаторИнформационнойБазы); ЗаполнитьПараметрыАутентификацииВИБ(ПараметрыАдминистрированияИБ, Параметры); @@ -1193,7 +1193,7 @@ // Функция ПолучитьВиртуальныеКаталоги(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ИмяПрофиля, Знач Фильтр = Неопределено) - Возврат ПолучитьСписокКонтроляДоступа( + Возврат СпискиКонтроляДоступа( ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, @@ -1215,7 +1215,7 @@ // Функция ПолучитьРазрешенныеCOMКлассы(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ИмяПрофиля, Знач Фильтр = Неопределено) - Возврат ПолучитьСписокКонтроляДоступа( + Возврат СпискиКонтроляДоступа( ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, @@ -1237,7 +1237,7 @@ // Функция ПолучитьРазрешенныеВнешниеКомпоненты(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ИмяПрофиля, Знач Фильтр = Неопределено) - Возврат ПолучитьСписокКонтроляДоступа( + Возврат СпискиКонтроляДоступа( ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, @@ -1259,7 +1259,7 @@ // Функция ПолучитьРазрешенныеВнешниеМодули(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ИмяПрофиля, Знач Фильтр = Неопределено) - Возврат ПолучитьСписокКонтроляДоступа( + Возврат СпискиКонтроляДоступа( ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, @@ -1281,7 +1281,7 @@ // Функция ПолучитьРазрешенныеПриложенияОС(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ИмяПрофиля, Знач Фильтр = Неопределено) - Возврат ПолучитьСписокКонтроляДоступа( + Возврат СпискиКонтроляДоступа( ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, @@ -1303,7 +1303,7 @@ // Функция ПолучитьРазрешенныеИнтернетРесурсы(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ИмяПрофиля, Знач Фильтр = Неопределено) - Возврат ПолучитьСписокКонтроляДоступа( + Возврат СпискиКонтроляДоступа( ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, @@ -1325,7 +1325,7 @@ // // Возвращаемое значение: Массив(Структура). // -Функция ПолучитьСписокКонтроляДоступа(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ИмяПрофиля, Знач ИмяСписка, Знач Словарь, Знач Фильтр = Неопределено) +Функция СпискиКонтроляДоступа(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ИмяПрофиля, Знач ИмяСписка, Знач Словарь, Знач Фильтр = Неопределено) Шаблон = "%rac profile --cluster=%cluster% --cluster-user=%?cluster-user% --cluster-pwd=%?cluster-pwd% acl --name=%name% directory list"; Шаблон = СтрЗаменить(Шаблон, "directory", ИмяСписка); @@ -1360,7 +1360,7 @@ Параметры = Новый Соответствие(); - ИдентификаторКластера = ПолучитьКластер(ПараметрыАдминистрированияКластера); + ИдентификаторКластера = ИдентификаторКластера(ПараметрыАдминистрированияКластера); Параметры.Вставить("cluster", ИдентификаторКластера); ЗаполнитьПараметрыАутентификацииВКластере(ПараметрыАдминистрированияКластера, Параметры); @@ -1377,7 +1377,7 @@ ИмяСписка = "directory"; ТекущийСловарь = СловарьСвойствВиртуальногоКаталога(); Если ОчиститьСпискиКонтроляДоступа Тогда - УдаляемыеВиртуальныеКаталоги = ПолучитьСписокКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, ТекущийСловарь); + УдаляемыеВиртуальныеКаталоги = СпискиКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, ТекущийСловарь); Для Каждого УдаляемыйВиртуальныйКаталог Из УдаляемыеВиртуальныеКаталоги Цикл УдалитьЭлементСпискаКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, УдаляемыйВиртуальныйКаталог.ЛогическийURL); КонецЦикла; @@ -1391,7 +1391,7 @@ ИмяСписка = "com"; ТекущийСловарь = СловарьСвойствCOMКласса(); Если ОчиститьСпискиКонтроляДоступа Тогда - УдаляемыеCOMКлассы = ПолучитьСписокКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, ТекущийСловарь); + УдаляемыеCOMКлассы = СпискиКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, ТекущийСловарь); Для Каждого УдаляемыйCOMКласс Из УдаляемыеCOMКлассы Цикл УдалитьЭлементСпискаКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, УдаляемыйCOMКласс.Имя); КонецЦикла; @@ -1405,7 +1405,7 @@ ИмяСписка = "addin"; ТекущийСловарь = СловарьСвойствВнешнейКомпоненты(); Если ОчиститьСпискиКонтроляДоступа Тогда - УдаляемыеВнешниеКомпоненты = ПолучитьСписокКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, ТекущийСловарь); + УдаляемыеВнешниеКомпоненты = СпискиКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, ТекущийСловарь); Для Каждого УдаляемыйВнешнийКомпонент Из УдаляемыеВнешниеКомпоненты Цикл УдалитьЭлементСпискаКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, УдаляемыйВнешнийКомпонент.Имя); КонецЦикла; @@ -1419,7 +1419,7 @@ ИмяСписка = "module"; ТекущийСловарь = СловарьСвойствВнешнегоМодуля(); Если ОчиститьСпискиКонтроляДоступа Тогда - УдаляемыеВнешниеМодули = ПолучитьСписокКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, ТекущийСловарь); + УдаляемыеВнешниеМодули = СпискиКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, ТекущийСловарь); Для Каждого УдаляемыйВнешнийМодуль Из УдаляемыеВнешниеМодули Цикл УдалитьЭлементСпискаКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, УдаляемыйВнешнийМодуль.Имя); КонецЦикла; @@ -1433,7 +1433,7 @@ ИмяСписка = "app"; ТекущийСловарь = СловарьСвойствПриложенияОС(); Если ОчиститьСпискиКонтроляДоступа Тогда - УдаляемыеПриложенияОС = ПолучитьСписокКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, ТекущийСловарь); + УдаляемыеПриложенияОС = СпискиКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, ТекущийСловарь); Для Каждого УдаляемоеПриложениеОС Из УдаляемыеПриложенияОС Цикл УдалитьЭлементСпискаКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, УдаляемоеПриложениеОС.Имя); КонецЦикла; @@ -1447,7 +1447,7 @@ ИмяСписка = "inet"; ТекущийСловарь = СловарьСвойствИнтернетРесурса(); Если ОчиститьСпискиКонтроляДоступа Тогда - УдаляемыеИнтернетРесурсы = ПолучитьСписокКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, ТекущийСловарь); + УдаляемыеИнтернетРесурсы = СпискиКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, ТекущийСловарь); Для Каждого УдаляемыйИнтернетРесурс Из УдаляемыеИнтернетРесурсы Цикл УдалитьЭлементСпискаКонтроляДоступа(ИдентификаторКластера, ПараметрыАдминистрированияКластера, ИмяПрофиля, ИмяСписка, УдаляемыйИнтернетРесурс.Имя); КонецЦикла; @@ -1701,7 +1701,7 @@ СистемнаяИнформация = Новый СистемнаяИнформация(); // Подставим в командную строку путь до утилиты rac и адрес сервера ras. - Клиент = ПолучитьКлиентСервераАдминистрирования(); + Клиент = ПутьККлиентуСервераАдминистрирования(); ФайлКлиента = Новый Файл(Клиент); Если Не ФайлКлиента.Существует() Тогда @@ -1779,27 +1779,21 @@ ЧтениеПотокаОшибок = Новый ЧтениеТекста(ФайлПотокаОшибок, ПолучитьКодировкуСтандартныхПотоков()); ПотокОшибок = ЧтениеПотокаОшибок.Прочитать(); ЧтениеПотокаОшибок.Закрыть(); - - УдалитьВременныйФайл(ФайлПотокаОшибок); + УдалитьФайлы(ФайлПотокаОшибок); Если ЗначениеЗаполнено(ПотокОшибок) Тогда - УдалитьВременныйФайл(ФайлПотокаВывода); ВызватьИсключение ПотокОшибок; Иначе ЧтениеПотокаВывода = Новый ЧтениеТекста(ФайлПотокаВывода, ПолучитьКодировкуСтандартныхПотоков()); ПотокВывода = ЧтениеПотокаВывода.Прочитать(); - ЧтениеПотокаВывода.Закрыть(); - - УдалитьВременныйФайл(ФайлПотокаВывода); - Если ПотокВывода = Неопределено Тогда - ПотокВывода = ""; - КонецЕсли; + ЧтениеПотокаВывода.Закрыть(); + УдалитьФайлы(ФайлПотокаВывода); Возврат ПотокВывода; @@ -2357,26 +2351,6 @@ КонецФункции -Процедура УдалитьВременныйФайл(ПолноеИмяФайла) - - Если ПустаяСтрока(ПолноеИмяФайла) Тогда - - Возврат; - - КонецЕсли; - - Попытка - - УдалитьФайлы(ПолноеИмяФайла); - - Исключение - - Возврат; - - КонецПопытки; - -КонецПроцедуры - #КонецОбласти #КонецЕсли \ No newline at end of file diff --git a/SSL/src/CommonModules/АдминистрированиеКластераКлиентСервер/Module.bsl b/SSL/src/CommonModules/АдминистрированиеКластераКлиентСервер/Module.bsl index 2c5e4564d..28c8b013d 100644 --- a/SSL/src/CommonModules/АдминистрированиеКластераКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/АдминистрированиеКластераКлиентСервер/Module.bsl @@ -1093,6 +1093,266 @@ #КонецОбласти +#Область ИнформационныеБазы + +// Возвращает внутренний идентификатор информационной базы. +// +// Параметры: +// ИдентификаторКластера - Строка, внутренний идентификатор кластера серверов, +// ПараметрыАдминистрированияКластера - Структура, описывающая параметры подключения к кластеру серверов, +// описание - см. АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияКластера(), +// ПараметрыАдминистрированияИнформационнойБазы - Структура, описывающая параметры подключения к информационной базе, +// описание - см. АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияИнформационнойБазыКластера(). +// +// Возвращаемое значение: Строка, внутренний идентификатор информационной базы. +// +Функция ИдентификаторИнформационнойБазы(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ПараметрыАдминистрированияИнформационнойБазы) Экспорт + + МенеджерАдминистрирования = МенеджерАдминистрирования(ПараметрыАдминистрированияКластера); + + Возврат МенеджерАдминистрирования.ИдентификаторИнформационнойБазы( + ИдентификаторКластера, + ПараметрыАдминистрированияКластера, + ПараметрыАдминистрированияИнформационнойБазы); + +КонецФункции + +// Возвращает описания информационных баз. +// +// Параметры: +// ИдентификаторКластера - Строка, внутренний идентификатор кластера серверов, +// ПараметрыАдминистрированияКластера - Структура, описывающая параметры подключения к кластеру серверов, +// описание - см. АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияКластера(), +// Фильтр - Структура, параметры фильтрации информационных баз. +// +// Возвращаемое значение: Массив(Структура). +// +Функция СвойстваИнформационныхБаз(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач Фильтр = Неопределено) Экспорт + + МенеджерАдминистрирования = МенеджерАдминистрирования(ПараметрыАдминистрированияКластера); + + Возврат МенеджерАдминистрирования.СвойстваИнформационныхБаз( + ИдентификаторКластера, + ПараметрыАдминистрированияКластера, + Фильтр); + +КонецФункции + +#КонецОбласти + +#Область Кластер + +// Возвращает внутренний идентификатор кластера серверов. +// +// Параметры: +// ПараметрыАдминистрированияКластера - Структура, описывающая параметры подключения к кластеру серверов, +// описание - см. АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияКластера(). +// +// Возвращаемое значение - Строка, внутренний идентификатор кластера серверов. +// +Функция ИдентификаторКластера(Знач ПараметрыАдминистрированияКластера) Экспорт + + МенеджерАдминистрирования = МенеджерАдминистрирования(ПараметрыАдминистрированияКластера); + + Возврат МенеджерАдминистрирования.ИдентификаторКластера(ПараметрыАдминистрированияКластера); + +КонецФункции + +// Возвращает описания кластеров серверов. +// +// ПараметрыАдминистрированияКластера - Структура, описывающая параметры подключения к кластеру серверов, +// описание - см. АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияКластера(), +// Фильтр - Структура, параметры фильтрации кластеров серверов. +// +// Возвращаемое значение: Массив(Структура). +// +Функция СвойстваКластеров(Знач ПараметрыАдминистрированияКластера, Знач Фильтр = Неопределено) Экспорт + + МенеджерАдминистрирования = МенеджерАдминистрирования(ПараметрыАдминистрированияКластера); + + Возврат МенеджерАдминистрирования.СвойстваКластеров(ПараметрыАдминистрированияКластера, Фильтр); + +КонецФункции + +#КонецОбласти + +#Область РабочиеПроцессыСерверы + +// Возвращает описания рабочих процессов. +// +// Параметры: +// ИдентификаторКластера - Строка, внутренний идентификатор кластера серверов, +// ПараметрыАдминистрированияКластера - Структура, описывающая параметры подключения к кластеру серверов, +// описание - см. АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияКластера(), +// Фильтр - Структура, параметры фильтрации рабочих процессов. +// +// Возвращаемое значение: Массив(Структура). +// +Функция СвойстваРабочихПроцессов(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач Фильтр = Неопределено) Экспорт + + МенеджерАдминистрирования = МенеджерАдминистрирования(ПараметрыАдминистрированияКластера); + + Возврат МенеджерАдминистрирования.СвойстваРабочихПроцессов( + ИдентификаторКластера, + ПараметрыАдминистрированияКластера, + Фильтр); + +КонецФункции + +// Возвращает описания рабочих серверов. +// +// Параметры: +// ИдентификаторКластера - Строка, внутренний идентификатор кластера серверов, +// ПараметрыАдминистрированияКластера - Структура, описывающая параметры подключения к кластеру серверов, +// описание - см. АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияКластера(), +// Фильтр - Структура, параметры фильтрации рабочих серверов. +// +// Возвращаемое значение: Массив(Структура). +// +Функция СвойстваРабочихСерверов(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач Фильтр = Неопределено) Экспорт + + МенеджерАдминистрирования = МенеджерАдминистрирования(ПараметрыАдминистрированияКластера); + + Возврат МенеджерАдминистрирования.СвойстваРабочихСерверов( + ИдентификаторКластера, + ПараметрыАдминистрированияКластера, + Фильтр); + +КонецФункции + +#КонецОбласти + +// Возвращает описания сеансов информационной базы. +// +// Параметры: +// ИдентификаторКластера - Строка, внутренний идентификатор кластера серверов, +// ПараметрыАдминистрированияКластера - Структура, описывающая параметры подключения к кластеру серверов, +// описание - см. АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияКластера(), +// ИдентификаторИнформационнойБазы - Строка, внутренний идентификатор информационной базы, +// ПараметрыАдминистрированияИнформационнойБазы - Структура, описывающая параметры подключения к информационной базе, +// описание - см. АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияИнформационнойБазыКластера(). +// Фильтр - Описание условия фильтрации сеансов, описания которых требуется получить. +// Варианты: +// 1. Массив структур, описывающих условия фильтрации сеансов. Поля структур, входящих в массив: +// Свойство - Строка, имя свойства, по которому осуществляется фильтрация. Допустимые значения - см. +// Возвращаемое значение функции АдминистрированиеКластераКлиентСервер.СвойстваСеанса(), +// ВидСравнения - значение системного перечисления ВидСравнения, вид сравнения значений сеансов с указанным +// в условии фильтра. Допустимые значения: +// ВидСравнения.Равно, +// ВидСравнения.НеРавно, +// ВидСравнения.Больше (только для числовых значений), +// ВидСравнения.БольшеИлиРавно (только для числовых значений), +// ВидСравнения.Меньше (только для числовых значений), +// ВидСравнения.МеньшеИлиРавно (только для числовых значений), +// ВидСравнения.ВСписке, +// ВидСравнения.НеВСписке, +// ВидСравнения.Интервал (только для числовых значений), +// ВидСравнения.ИнтервалВключаяГраницы (только для числовых значений), +// ВидСравнения.ИнтервалВключаяНачало (только для числовых значений), +// ВидСравнения.ИнтервалВключаяОкончание (только для числовых значений), +// Значение - Число, Строка, Дата, Булево, СписокЗначений, Массив, Структура - значение, с которым +// сравнивается значение соответствующего свойства сеанса. При ВидСравнения.ВСписке и ВидСравнения.НеВСписке +// в качестве значения должны передаваться СписокЗначений или Массив, содержащие набор значений, с которыми +// будет выполняться сравнение. При ВидСравнения.Интервал, ВидСравнения.ИнтервалВключаяГраницы, +// ВидСравнения.ИнтервалВключаяНачало и ВидСравнения.ИнтервалВключаяОкончание в качестве значения должны +// передаваться структуры с полями С и По, значения которых образуют интервал, с которым будет выполняться +// соответствующее сравнение, +// 2. Структура (упрощенный вариант), ключ - Имя свойства сеанса (см. выше), значение - значение, с которым +// выполняется сравнение. При использовании данного варианта описания фильтра сравнение всегда выполняется на +// равенство, +// ИспользоватьСловарь - Булево, если Истина - возвращаемый результат будет заполнен с использован словаря, иначе - без +// использования. +// +// Возвращаемое значение: Массив(Структура), Массив(Соответствие) - массив структур, описывающих свойства сеансов +// (описание структур - см. АдминистрированиеКластераКлиентСервер.СвойстваСеанса()) или массив соответствий, +// описывающих свойства сеансов в нотации утилиты rac (при ИспользоватьСловарь = Ложь). +// +Функция СвойстваСеансов(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ИдентификаторИнформационнойБазы, Знач Фильтр = Неопределено, Знач ИспользоватьСловарь = Истина) Экспорт + + МенеджерАдминистрирования = МенеджерАдминистрирования(ПараметрыАдминистрированияКластера); + + Возврат МенеджерАдминистрирования.СвойстваСеансов( + ИдентификаторКластера, + ПараметрыАдминистрированияКластера, + ИдентификаторИнформационнойБазы, + Фильтр, + ИспользоватьСловарь); + +КонецФункции + +// Возвращает описания соединений с информационной базой. +// +// Параметры: +// ИдентификаторКластера - Строка, внутренний идентификатор кластера серверов, +// ПараметрыАдминистрированияКластера - Структура, описывающая параметры подключения к кластеру серверов, +// описание - см. АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияКластера(), +// ИдентификаторИнформационнойБазы - Строка, внутренний идентификатор информационной базы, +// ПараметрыАдминистрированияИнформационнойБазы - Структура, описывающая параметры подключения к информационной базе, +// описание - см. АдминистрированиеКластераКлиентСервер.ПараметрыАдминистрированияИнформационнойБазыКластера(), +// Фильтр - Описание условия фильтрации соединения, описания которых требуется получить. +// Варианты: +// 1. Массив структур, описывающих условия фильтрации соединений. Поля структур, входящих в массив: +// Свойство - Строка, имя свойства, по которому осуществляется фильтрация. Допустимые значения - см. +// Возвращаемое значение функции АдминистрированиеКластераКлиентСервер.СвойстваСоединения(), +// ВидСравнения - значение системного перечисления ВидСравнения, вид сравнения значений соединений с указанным +// в условии фильтра. Допустимые значения: +// ВидСравнения.Равно, +// ВидСравнения.НеРавно, +// ВидСравнения.Больше (только для числовых значений), +// ВидСравнения.БольшеИлиРавно (только для числовых значений), +// ВидСравнения.Меньше (только для числовых значений), +// ВидСравнения.МеньшеИлиРавно (только для числовых значений), +// ВидСравнения.ВСписке, +// ВидСравнения.НеВСписке, +// ВидСравнения.Интервал (только для числовых значений), +// ВидСравнения.ИнтервалВключаяГраницы (только для числовых значений), +// ВидСравнения.ИнтервалВключаяНачало (только для числовых значений), +// ВидСравнения.ИнтервалВключаяОкончание (только для числовых значений), +// Значение - Число, Строка, Дата, Булево, СписокЗначений, Массив, Структура - значение, с которым +// сравнивается значение соответствующего свойства соединения. При ВидСравнения.ВСписке и +// ВидСравнения.НеВСписке в качестве значения должны передаваться СписокЗначений или Массив, содержащие набор +// значений, с которыми будет выполняться сравнение. При ВидСравнения.Интервал, +// ВидСравнения.ИнтервалВключаяГраницы, +// ВидСравнения.ИнтервалВключаяНачало и ВидСравнения.ИнтервалВключаяОкончание в качестве значения должны +// передаваться структуры с полями С и По, значения которых образуют интервал, с которым будет выполняться +// соответствующее сравнение, +// 2. Структура (упрощенный вариант), ключ - Имя свойства соединения (см. выше), значение - значение, с которым +// выполняется сравнение. При использовании данного варианта описания фильтра сравнение всегда выполняется на +// равенство, +// ИспользоватьСловарь - Булево, если Истина - возвращаемый результат будет заполнен с использован словаря, иначе - без +// использования. +// +// Возвращаемое значение: Массив(Структура), Массив(Соответствие) - массив структур, описывающих свойства соединений +// (описание структур - см. АдминистрированиеКластераКлиентСервер.СвойстваСоединения()) или массив соответствий, +// описывающих свойства соединений в нотации утилиты rac (при ИспользоватьСловарь = Ложь). +// +Функция СвойстваСоединений(Знач ИдентификаторКластера, Знач ПараметрыАдминистрированияКластера, Знач ИдентификаторИнформационнойБазы, Знач ПараметрыАдминистрированияИнформационнойБазы, Знач Фильтр = Неопределено, Знач ИспользоватьСловарь = Ложь) Экспорт + + МенеджерАдминистрирования = МенеджерАдминистрирования(ПараметрыАдминистрированияКластера); + + Возврат МенеджерАдминистрирования.СвойстваСоединений( + ИдентификаторКластера, + ПараметрыАдминистрированияКластера, + ИдентификаторИнформационнойБазы, + ПараметрыАдминистрированияИнформационнойБазы, + Фильтр, + ИспользоватьСловарь); + +КонецФункции + +// Возвращает путь к консольному клиенту сервера администрирования. +// +// Возвращаемое значение: +// Строка, путь к консольному клиенту сервера администрирования. +// +Функция ПутьККлиентуСервераАдминистрирования(Знач ПараметрыАдминистрированияКластера) Экспорт + + МенеджерАдминистрирования = МенеджерАдминистрирования(ПараметрыАдминистрированияКластера); + + Возврат МенеджерАдминистрирования.ПутьККлиентуСервераАдминистрирования(); + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git a/SSL/src/CommonModules/АдресныйКлассификатор/Module.bsl b/SSL/src/CommonModules/АдресныйКлассификатор/Module.bsl index 1afafbae6..d9c0932cc 100644 --- a/SSL/src/CommonModules/АдресныйКлассификатор/Module.bsl +++ b/SSL/src/CommonModules/АдресныйКлассификатор/Module.bsl @@ -237,7 +237,7 @@ // Если уровень не указан, то возвращает первое найденное совпадение. // // Параметры: -// АдресноеСокращение - Строка - сокрушение адресного объекта +// АдресноеСокращение - Строка - сокрушение адресного объекта. // Уровень - Число - код уровня адресного объекта. // // Возвращаемое значение: @@ -271,6 +271,21 @@ КонецФункции +// Определение кодов ОКАТО, ОКТМО, налоговых инспекций ФНС и др. адреса +// +// Параметры: +// Адрес - Строка - Адрес в формате XML +// Источник - Строка - Необязательный. Источник получения кодов адреса: +// "Сервис1С" - коды будут получены через веб-сервис 1С; +// "ЗагруженныеДанные" - коды будут определены по загруженным данным адресного классификатора; +// если параметрам не указан, то источник данных определяется автоматически. +// Возвращаемое значение: +// Структура - Коды адреса, если адрес не найден, то все поля структуры содержат пустые значения. +// +Функция КодыАдреса(Адрес, Источник = Неопределено) Экспорт + Возврат АдресныйКлассификаторСлужебный.КодыАдреса(Адрес, Источник); +КонецФункции + // Получает идентификаторы адреса через веб-сервис. // // Параметры: diff --git a/SSL/src/CommonModules/АдресныйКлассификаторКлиент/Module.bsl b/SSL/src/CommonModules/АдресныйКлассификаторКлиент/Module.bsl index 1cbd93503..7f9564125 100644 --- a/SSL/src/CommonModules/АдресныйКлассификаторКлиент/Module.bsl +++ b/SSL/src/CommonModules/АдресныйКлассификаторКлиент/Module.bsl @@ -29,11 +29,11 @@ // Нужен запрос профиля безопасности. ОписаниеОповещения = Новый ОписаниеОповещения( - "ПолучениеРазрешенияБезопасностиПроверкиНаличияОбновленияАдресныхОбъектов", + "ПолучениеРазрешенияБезопасностиПроверкиНаличияОбновленияАдресныхОбъектов", ЭтотОбъект, ПараметрыВыполнения); РаботаВБезопасномРежимеКлиент.ПрименитьЗапросыНаИспользованиеВнешнихРесурсов( - АдресныйКлассификаторВызовСервера.ЗапросРазрешенийБезопасностиОбновления(), + АдресныйКлассификаторВызовСервера.ЗапросРазрешенийБезопасностиОбновления(), Владелец, ОписаниеОповещения); КонецПроцедуры @@ -85,11 +85,13 @@ ЗаполнитьЗначенияСвойств(ПараметрыВыполненияФормы, ПараметрыВыполнения); КонецЕсли; - ОткрытьФорму("РегистрСведений.АдресныеОбъекты.Форма.ЗагрузкаАдресногоКлассификатора", ПараметрыВыполнения, + ОткрытьФорму("РегистрСведений.АдресныеОбъекты.Форма.ЗагрузкаАдресногоКлассификатора", ПараметрыВыполнения, ПараметрыВыполненияФормы.Источник, ПараметрыВыполненияФормы.Уникальность, ПараметрыВыполненияФормы.Окно, ПараметрыВыполненияФормы.НавигационнаяСсылка, ОповещениеОЗакрытие); - -КонецПроцедуры + + КонецПроцедуры + +#Область УстаревшиеПроцедурыИФункции // Устарела. Следует использовать ОткрытьФормуЗагрузкиАдресногоКлассификатора. // Проверяет наличие обновлений адресного классификатора на сайте @@ -107,8 +109,19 @@ #КонецОбласти +#КонецОбласти + #Область СлужебныеПроцедурыИФункции +Процедура АвторизоватьНаСайтеПоддержкиПользователей(ОповещениеОЗакрытии, ВладелецФормы) Экспорт + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + МодульИнтернетПоддержкаПользователейКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ИнтернетПоддержкаПользователейКлиент"); + МодульИнтернетПоддержкаПользователейКлиент.ПодключитьИнтернетПоддержкуПользователей(ОповещениеОЗакрытии, ВладелецФормы); + КонецЕсли; + +КонецПроцедуры + // Вызывает диалог выбора каталога. // // Параметры: diff --git a/SSL/src/CommonModules/АдресныйКлассификаторПовтИсп/Module.bsl b/SSL/src/CommonModules/АдресныйКлассификаторПовтИсп/Module.bsl index 7c30a1f56..f3355c60a 100644 --- a/SSL/src/CommonModules/АдресныйКлассификаторПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/АдресныйКлассификаторПовтИсп/Module.bsl @@ -33,7 +33,7 @@ // Функция СервисКлассификатора1С() Экспорт - Авторизация = СтандартныеПодсистемыСервер.ПараметрыАутентификацииНаСайте(); + Авторизация = АдресныйКлассификаторСлужебный.ПараметрыАутентификацииНаСайте(); Если Авторизация = Неопределено Тогда Логин = Неопределено; Пароль = Неопределено; @@ -47,9 +47,17 @@ ТекущийURLВебСервиса = "https://api.orgaddress.1c.ru/orgaddress/v1?wsdl"; КонецЕсли; - Возврат ОбщегоНазначения.WSПрокси(ТекущийURLВебСервиса, - "http://www.v8.1c.ru/ssl/AddressSystem", "AddressSystem", "AddressSystemSoap12", Логин, Пароль, 10); - + ПараметрыПодключения = ОбщегоНазначения.ПараметрыПодключенияWSПрокси(); + ПараметрыПодключения.АдресWSDL = ТекущийURLВебСервиса; + ПараметрыПодключения.URIПространстваИмен = "http://www.v8.1c.ru/ssl/AddressSystem"; + ПараметрыПодключения.ИмяСервиса = "AddressSystem"; + ПараметрыПодключения.ИмяТочкиПодключения = "AddressSystemSoap12"; + ПараметрыПодключения.ИмяПользователя = Логин; + ПараметрыПодключения.Пароль = Пароль; + ПараметрыПодключения.Таймаут = 10; + + Возврат ОбщегоНазначения.СоздатьWSПрокси(ПараметрыПодключения); + КонецФункции #КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/АдресныйКлассификаторСлужебный/Module.bsl b/SSL/src/CommonModules/АдресныйКлассификаторСлужебный/Module.bsl index 4b0705d75..bb473bccf 100644 --- a/SSL/src/CommonModules/АдресныйКлассификаторСлужебный/Module.bsl +++ b/SSL/src/CommonModules/АдресныйКлассификаторСлужебный/Module.bsl @@ -31,7 +31,7 @@ ЗаполнитьВерсиюПоставщикаДанныхСервис1С(Результат); Исключение СтруктураОписанияОшибкиПоставщика(Результат, ИнформацияОбОшибке()); - ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка, , , + ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка,,, Результат.ПодробноеПредставлениеОшибки); КонецПопытки; @@ -40,23 +40,82 @@ Возврат Результат; КонецФункции -// Заполнение данных для проверки версии по сервису 1С. -// -Процедура ЗаполнитьВерсиюПоставщикаДанныхСервис1С(Результат) - - КодЯзыка = ТекущийКодЛокализации(); - Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); - Результат.Данные = Сервис.Ping(КодЯзыка, Метаданные.Имя); +// Возвращает описание последней загрузки классификатора. +// +// Возвращаемое значение: +// Структура - содержит поля: +// * ДатаПоследнейЗагрузки - Дата - Дата последней загрузки (часовой пояс сеанса). +// * УниверсальнаяДатаПоследнейЗагрузки - Дата - Дата последней загрузки (UTC). +// * ДнейНазад - Число - Количество дней от последней загрузки. +// * Представление - Строка - Описание, например "Адресный классификатор был загружен +// сегодня."; +// * НеобходимоОбновление - Булево - Истина, если количество дней от последней загрузки превышает +// период актуальности. +// +Функция ОписаниеПоследнейЗагрузки(ИдентификаторРегиона = Неопределено) Экспорт -КонецПроцедуры + Результат = Новый Структура("ДнейНазад, ДатаПоследнейЗагрузки, УниверсальнаяДатаПоследнейЗагрузки, Представление, НеобходимоОбновление"); + Запрос = Новый Запрос(); + + // Определяем дату последней загрузки. + Если ЗначениеЗаполнено(ИдентификаторРегиона) Тогда + ТекстЗапроса = "ВЫБРАТЬ ПЕРВЫЕ 1 + | ЕСТЬNULL(ЗагруженныеВерсииАдресныхСведений.ДатаВерсии, ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)) КАК ДатаЗагрузки + |ИЗ + | РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты + | ПРАВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗагруженныеВерсииАдресныхСведений КАК ЗагруженныеВерсииАдресныхСведений + | ПО АдресныеОбъекты.КодСубъектаРФ = ЗагруженныеВерсииАдресныхСведений.КодСубъектаРФ + | ГДЕ АдресныеОбъекты.Идентификатор = &ИдентификаторРегиона + | + |УПОРЯДОЧИТЬ ПО + | ДатаВерсии"; + Запрос.УстановитьПараметр("ИдентификаторРегиона", ИдентификаторРегиона); + Иначе + ТекстЗапроса = "ВЫБРАТЬ ПЕРВЫЕ 1 + | ЕСТЬNULL(ЗагруженныеВерсииАдресныхСведений.ДатаВерсии, ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)) КАК ДатаЗагрузки + |ИЗ + | РегистрСведений.ЗагруженныеВерсииАдресныхСведений КАК ЗагруженныеВерсииАдресныхСведений + |УПОРЯДОЧИТЬ ПО + | ДатаЗагрузки УБЫВ"; + КонецЕсли; + Запрос.Текст = ТекстЗапроса; + Выборка = Запрос.Выполнить().Выбрать(); + + Если Выборка.Следующий() Тогда + ДатаПоследнейЗагрузки = Выборка.ДатаЗагрузки; + Иначе + Результат.НеобходимоОбновление = Ложь; + Результат.Представление = НСтр("ru = 'Адресный классификатор еще не загружался.'"); + Возврат Результат; + КонецЕсли; + + Результат.УниверсальнаяДатаПоследнейЗагрузки = ДатаПоследнейЗагрузки; + Результат.ДатаПоследнейЗагрузки = МестноеВремя(ДатаПоследнейЗагрузки, ЧасовойПоясСеанса()); + + НачалоПериода = НачалоДня(ТекущаяУниверсальнаяДата()); + КонецПериода = НачалоДня(ДатаПоследнейЗагрузки); + ДнейРазницы = Цел((НачалоПериода - КонецПериода) / 86400); -// Заполнение данных для проверки версии по загружаемым данным. -// -Процедура ЗаполнитьВерсиюПоставщикаДанныхВнутр(Результат) + Если ДнейРазницы = 0 Тогда + Представление = НСтр("ru = 'Адресный классификатор был загружен сегодня.'"); + + ИначеЕсли ДнейРазницы = 1 Тогда + Представление = НСтр("ru = 'Адресный классификатор был загружен вчера.'"); + + ИначеЕсли ДнейРазницы = 2 Тогда + Представление = НСтр("ru = 'Адресный классификатор был загружен позавчера.'"); + + ИначеЕсли ДнейРазницы > 2 Тогда + Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Адресный классификатор был загружен %1 назад.'"), + ОбщегоНазначения.ИнтервалВремениСтрокой(КонецПериода, НачалоПериода)); + КонецЕсли; - Результат.Данные = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'БСП %1'"), СтандартныеПодсистемыСервер.ВерсияБиблиотеки()); + Результат.НеобходимоОбновление = ДнейРазницы > 30; // 1 месяц + Результат.ДнейНазад = ДнейРазницы; + Результат.Представление = Представление; -КонецПроцедуры + Возврат Результат; +КонецФункции // Возвращает данные классификатора по почтовому индексу. // @@ -155,14 +214,14 @@ КонецФункции -// Определить регион по индексу +// Определить регион по индексу. // // Параметры: // Индекс - Строка - Почтовый индекс определимого региона. // // Возвращаемое значение: // Структура - Код и наименование региона, Неопределенно - если регион не найден. -// * КодСубъектаРФ - Число - код субъекта РФ +// * КодСубъектаРФ - Число - код субъекта РФ. // * Представление - Строка - представление субъекта РФ. // Функция ОпределитьРегионПоИндексу(Индекс) Экспорт @@ -195,346 +254,6 @@ Возврат Неопределено; КонецФункции -// Конструктор таблицы - результата выбора по почтовому индексу. -// -Функция ТаблицаДанныхДляВыбораПоПочтовомуИндексу() - - Данные = Новый ТаблицаЗначений; - Колонки = Данные.Колонки; - Колонки.Добавить("Неактуален", Новый ОписаниеТипов("Булево")); - Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("УникальныйИдентификатор")); - Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); - Данные.Индексы.Добавить("Идентификатор"); - Данные.Индексы.Добавить("Представление"); - - Возврат Данные; -КонецФункции - -// Заполнение адреса по данным сервиса 1С. -// -Процедура ЗаполнитьАдресаПоПочтовомуИндексуКлассификатораСервис1С(Результат, Индекс, Уровни) - - Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); - - // Выбираем все записи - ПерваяЗапись = Неопределено; - РазмерПорции = 1000; - КодЯзыка = ТекущийКодЛокализации(); - - Данные = Результат.Данные; - Порция = Сервис.SelectByPostalCode(Индекс, Уровни, ПерваяЗапись, "ASC", РазмерПорции, КодЯзыка, Метаданные.Имя); - Список = Порция.ПолучитьСписок("Item"); - - Если Список.Количество() = 0 Тогда - Возврат; - КонецЕсли; - Результат.ОбщаяЧастьПредставления = Формат(Индекс, "ЧГ=0") + ", " + Порция.Title; - - Для Каждого Строка Из Список Цикл - ПерваяЗапись = Строка.ID; - - СтрокаРезультата = Данные.Добавить(); - СтрокаРезультата.Идентификатор = Новый УникальныйИдентификатор(ПерваяЗапись); - СтрокаРезультата.Представление = Строка.Presentation; - СтрокаРезультата.Неактуален = НЕ Строка.Actual; - КонецЦикла; - -КонецПроцедуры - -// Заполнение адреса по индексу из загруженных данных. -// -Процедура ЗаполнитьАдресаПоПочтовомуИндексуКлассификатораВнутр(Результат, Индекс, Уровни, ДополнительныеПараметры) - - ТекстЗапроса = "ВЫБРАТЬ - | АдресныеОбъекты.Уровень КАК Уровень, - | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ, - | АдресныеОбъекты.КодОкруга КАК КодОкруга, - | АдресныеОбъекты.КодРайона КАК КодРайона, - | АдресныеОбъекты.КодГорода КАК КодГорода, - | АдресныеОбъекты.КодВнутригородскогоРайона КАК КодВнутригородскогоРайона, - | АдресныеОбъекты.КодНаселенногоПункта КАК КодНаселенногоПункта, - | АдресныеОбъекты.КодУлицы КАК КодУлицы, - | АдресныеОбъекты.КодДополнительногоЭлемента КАК КодДополнительногоЭлемента, - | АдресныеОбъекты.КодПодчиненногоЭлемента КАК КодПодчиненногоЭлемента, - | АдресныеОбъекты.Идентификатор КАК Идентификатор, - | ДомаЗданияСтроения.ПочтовыйИндекс КАК ПочтовыйИндекс, - | АдресныеОбъекты.Наименование КАК Наименование, - | АдресныеОбъекты.Сокращение КАК Сокращение, - | АдресныеОбъекты.Дополнительно КАК Дополнительно, - | АдресныеОбъекты.КодКЛАДР КАК КодКЛАДР, - | АдресныеОбъекты.Актуален КАК Актуален, - | ВЫБОР КОГДА АдресныеОбъекты.Актуален ТОГДА ЛОЖЬ ИНАЧЕ ИСТИНА КОНЕЦ КАК Неактуален - |ПОМЕСТИТЬ АдресаПоИндексу - |ИЗ - | РегистрСведений.ДомаЗданияСтроения КАК ДомаЗданияСтроения - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты - | ПО ДомаЗданияСтроения.АдресныйОбъект = АдресныеОбъекты.Идентификатор - |ГДЕ - | ДомаЗданияСтроения.ПочтовыйИндекс = &ПочтовыйИндекс - | И АдресныеОбъекты.ПочтовыйИндекс = 0 - | И АдресныеОбъекты.Уровень В(&Уровни) - | - |ОБЪЕДИНИТЬ ВСЕ - | - |ВЫБРАТЬ - | АдресныеОбъекты.Уровень, - | АдресныеОбъекты.КодСубъектаРФ, - | АдресныеОбъекты.КодОкруга, - | АдресныеОбъекты.КодРайона, - | АдресныеОбъекты.КодГорода, - | АдресныеОбъекты.КодВнутригородскогоРайона, - | АдресныеОбъекты.КодНаселенногоПункта, - | АдресныеОбъекты.КодУлицы, - | АдресныеОбъекты.КодДополнительногоЭлемента, - | АдресныеОбъекты.КодПодчиненногоЭлемента, - | АдресныеОбъекты.Идентификатор, - | АдресныеОбъекты.ПочтовыйИндекс, - | АдресныеОбъекты.Наименование, - | АдресныеОбъекты.Сокращение, - | АдресныеОбъекты.Дополнительно, - | АдресныеОбъекты.КодКЛАДР, - | АдресныеОбъекты.Актуален КАК Актуален, - | ВЫБОР КОГДА АдресныеОбъекты.Актуален ТОГДА ЛОЖЬ ИНАЧЕ ИСТИНА КОНЕЦ КАК Неактуален - |ИЗ - | РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты - |ГДЕ - | АдресныеОбъекты.ПочтовыйИндекс = &ПочтовыйИндекс - | И АдресныеОбъекты.Уровень В(&Уровни) - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ - | СубъектРФ.Наименование КАК СубъектРФНаименование, - | СубъектРФ.Сокращение КАК СубъектРФСокращение, - | Округ.Наименование КАК ОкругНаименование, - | Округ.Сокращение КАК ОкругСокращение, - | Район.Наименование КАК РайонНаименование, - | Район.Сокращение КАК РайонСокращение, - | Город.Наименование КАК ГородНаименование, - | Город.Сокращение КАК ГородСокращение, - | ВнутригородскойРайон.Наименование КАК ВнутригородскойРайонНаименование, - | ВнутригородскойРайон.Сокращение КАК ВнутригородскойРайонСокращение, - | НаселенныйПункт.Наименование КАК НаселенныйПунктНаименование, - | НаселенныйПункт.Сокращение КАК НаселенныйПунктСокращение, - | Улица.Наименование КАК УлицаНаименование, - | Улица.Сокращение КАК УлицаСокращение, - | Дополнительный.Наименование КАК ДополнительныйНаименование, - | Дополнительный.Сокращение КАК ДополнительныйСокращение, - | Подчиненный.Наименование КАК ПодчиненныйНаименование, - | Подчиненный.Сокращение КАК ПодчиненныйСокращение, - | АдресныйОбъект.Идентификатор КАК Идентификатор, - | АдресныйОбъект.Наименование КАК Наименование, - | АдресныйОбъект.Сокращение КАК Сокращение, - | АдресныйОбъект.Актуален КАК Актуален, - | АдресныйОбъект.Неактуален КАК Неактуален - |ИЗ - | АдресаПоИндексу КАК АдресныйОбъект - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК СубъектРФ - | ПО (СубъектРФ.Уровень = 1) - | И (СубъектРФ.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) - | И (СубъектРФ.КодОкруга = 0) - | И (СубъектРФ.КодРайона = 0) - | И (СубъектРФ.КодГорода = 0) - | И (СубъектРФ.КодВнутригородскогоРайона = 0) - | И (СубъектРФ.КодНаселенногоПункта = 0) - | И (СубъектРФ.КодУлицы = 0) - | И (СубъектРФ.КодДополнительногоЭлемента = 0) - | И (СубъектРФ.КодПодчиненногоЭлемента = 0) - | И (СубъектРФ.Идентификатор <> АдресныйОбъект.Идентификатор) - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК Округ - | ПО (Округ.Уровень = 2) - | И (Округ.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) - | И (Округ.КодОкруга = АдресныйОбъект.КодОкруга) - | И (Округ.КодРайона = 0) - | И (Округ.КодГорода = 0) - | И (Округ.КодВнутригородскогоРайона = 0) - | И (Округ.КодНаселенногоПункта = 0) - | И (Округ.КодУлицы = 0) - | И (Округ.КодДополнительногоЭлемента = 0) - | И (Округ.КодПодчиненногоЭлемента = 0) - | И (Округ.Идентификатор <> АдресныйОбъект.Идентификатор) - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК Район - | ПО (Район.Уровень = 3) - | И (Район.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) - | И (Район.КодОкруга = АдресныйОбъект.КодОкруга) - | И (Район.КодРайона = АдресныйОбъект.КодРайона) - | И (Район.КодГорода = 0) - | И (Район.КодВнутригородскогоРайона = 0) - | И (Район.КодНаселенногоПункта = 0) - | И (Район.КодУлицы = 0) - | И (Район.КодДополнительногоЭлемента = 0) - | И (Район.КодПодчиненногоЭлемента = 0) - | И (Район.Идентификатор <> АдресныйОбъект.Идентификатор) - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК Город - | ПО (Город.Уровень = 4) - | И (Город.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) - | И (Город.КодОкруга = АдресныйОбъект.КодОкруга) - | И (Город.КодРайона = АдресныйОбъект.КодРайона) - | И (Город.КодГорода = АдресныйОбъект.КодГорода) - | И (Город.КодВнутригородскогоРайона = 0) - | И (Город.КодНаселенногоПункта = 0) - | И (Город.КодУлицы = 0) - | И (Город.КодДополнительногоЭлемента = 0) - | И (Город.КодПодчиненногоЭлемента = 0) - | И (Город.Идентификатор <> АдресныйОбъект.Идентификатор) - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК ВнутригородскойРайон - | ПО (ВнутригородскойРайон.Уровень = 5) - | И (ВнутригородскойРайон.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) - | И (ВнутригородскойРайон.КодОкруга = АдресныйОбъект.КодОкруга) - | И (ВнутригородскойРайон.КодРайона = АдресныйОбъект.КодРайона) - | И (ВнутригородскойРайон.КодГорода = АдресныйОбъект.КодГорода) - | И (ВнутригородскойРайон.КодВнутригородскогоРайона = АдресныйОбъект.КодВнутригородскогоРайона) - | И (ВнутригородскойРайон.КодНаселенногоПункта = 0) - | И (ВнутригородскойРайон.КодУлицы = 0) - | И (ВнутригородскойРайон.КодДополнительногоЭлемента = 0) - | И (ВнутригородскойРайон.КодПодчиненногоЭлемента = 0) - | И (ВнутригородскойРайон.Идентификатор <> АдресныйОбъект.Идентификатор) - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК НаселенныйПункт - | ПО (НаселенныйПункт.Уровень = 6) - | И (НаселенныйПункт.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) - | И (НаселенныйПункт.КодОкруга = АдресныйОбъект.КодОкруга) - | И (НаселенныйПункт.КодРайона = АдресныйОбъект.КодРайона) - | И (НаселенныйПункт.КодГорода = АдресныйОбъект.КодГорода) - | И (НаселенныйПункт.КодВнутригородскогоРайона = АдресныйОбъект.КодВнутригородскогоРайона) - | И (НаселенныйПункт.КодНаселенногоПункта = АдресныйОбъект.КодНаселенногоПункта) - | И (НаселенныйПункт.КодУлицы = 0) - | И (НаселенныйПункт.КодДополнительногоЭлемента = 0) - | И (НаселенныйПункт.КодПодчиненногоЭлемента = 0) - | И (НаселенныйПункт.Идентификатор <> АдресныйОбъект.Идентификатор) - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК Улица - | ПО (Улица.Уровень = 7) - | И (Улица.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) - | И (Улица.КодОкруга = АдресныйОбъект.КодОкруга) - | И (Улица.КодРайона = АдресныйОбъект.КодРайона) - | И (Улица.КодГорода = АдресныйОбъект.КодГорода) - | И (Улица.КодВнутригородскогоРайона = АдресныйОбъект.КодВнутригородскогоРайона) - | И (Улица.КодНаселенногоПункта = АдресныйОбъект.КодНаселенногоПункта) - | И (Улица.КодУлицы = АдресныйОбъект.КодУлицы) - | И (Улица.КодДополнительногоЭлемента = 0) - | И (Улица.КодПодчиненногоЭлемента = 0) - | И (Улица.Идентификатор <> АдресныйОбъект.Идентификатор) - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК Дополнительный - | ПО (Дополнительный.Уровень = 90) - | И (Дополнительный.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) - | И (Дополнительный.КодОкруга = АдресныйОбъект.КодОкруга) - | И (Дополнительный.КодРайона = АдресныйОбъект.КодРайона) - | И (Дополнительный.КодГорода = АдресныйОбъект.КодГорода) - | И (Дополнительный.КодВнутригородскогоРайона = АдресныйОбъект.КодВнутригородскогоРайона) - | И (Дополнительный.КодНаселенногоПункта = АдресныйОбъект.КодНаселенногоПункта) - | И (Дополнительный.КодУлицы = АдресныйОбъект.КодУлицы) - | И (Дополнительный.КодДополнительногоЭлемента = АдресныйОбъект.КодДополнительногоЭлемента) - | И (Дополнительный.КодПодчиненногоЭлемента = 0) - | И (Дополнительный.Идентификатор <> АдресныйОбъект.Идентификатор) - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК Подчиненный - | ПО (Подчиненный.Уровень = 91) - | И (Подчиненный.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) - | И (Подчиненный.КодОкруга = АдресныйОбъект.КодОкруга) - | И (Подчиненный.КодРайона = АдресныйОбъект.КодРайона) - | И (Подчиненный.КодГорода = АдресныйОбъект.КодГорода) - | И (Подчиненный.КодВнутригородскогоРайона = АдресныйОбъект.КодВнутригородскогоРайона) - | И (Подчиненный.КодНаселенногоПункта = АдресныйОбъект.КодНаселенногоПункта) - | И (Подчиненный.КодУлицы = АдресныйОбъект.КодУлицы) - | И (Подчиненный.КодДополнительногоЭлемента = АдресныйОбъект.КодДополнительногоЭлемента) - | И (Подчиненный.КодПодчиненногоЭлемента = АдресныйОбъект.КодПодчиненногоЭлемента) - | И (Подчиненный.Идентификатор <> АдресныйОбъект.Идентификатор) - |ГДЕ - | АдресныйОбъект.ПочтовыйИндекс = &ПочтовыйИндекс - | И АдресныйОбъект.Уровень В(&Уровни) - | - |УПОРЯДОЧИТЬ ПО - | Наименование - |ИТОГИ - | КОЛИЧЕСТВО(СубъектРФНаименование), - | КОЛИЧЕСТВО(ОкругНаименование), - | КОЛИЧЕСТВО(РайонНаименование), - | КОЛИЧЕСТВО(ГородНаименование), - | КОЛИЧЕСТВО(ВнутригородскойРайонНаименование), - | КОЛИЧЕСТВО(НаселенныйПунктНаименование), - | КОЛИЧЕСТВО(УлицаНаименование), - | КОЛИЧЕСТВО(ДополнительныйНаименование), - | КОЛИЧЕСТВО(ПодчиненныйНаименование) - |ПО - | ОБЩИЕ"; - - Запрос = Новый Запрос(ТекстЗапроса); - Запрос.УстановитьПараметр("ПочтовыйИндекс", Индекс); - Запрос.УстановитьПараметр("Уровни", Уровни); - ДеревоЗапроса = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкам); - - СтрокиДерева = ДеревоЗапроса.Строки; - Если СтрокиДерева.Количество() = 0 Тогда - // Нечего заполнять - Возврат; - КонецЕсли; - - // По первой строке определяем общее название - то, что есть в каждой строке. - СтрокаИтогов = СтрокиДерева[0]; - ДетальныеСтроки = СтрокаИтогов.Строки; - ПерваяСтрока = ДетальныеСтроки[0]; - ВсегоДетальных = ДетальныеСтроки.Количество(); - - // Первые 18 колонок описывают иерархию, одна строка есть точно. - ОбщееПредставление = Формат(Индекс, "ЧЦ=6; ЧН=; ЧВН=; ЧГ="); - Пустые = Новый Структура; - - Позиция = 0; - Пока Позиция < 18 Цикл - ИмяКолонки = ДеревоЗапроса.Колонки[Позиция].Имя; - Если СтрокаИтогов[ИмяКолонки] = ВсегоДетальных Тогда - // Наименование - Пустые.Вставить(ИмяКолонки); - ОбщееПредставление = ОбщееПредставление + ", " + ПерваяСтрока[ИмяКолонки]; - // Сокращение - ИмяКолонки = ДеревоЗапроса.Колонки[Позиция + 1].Имя; - Пустые.Вставить(ИмяКолонки); - ОбщееПредставление = ОбщееПредставление + " " + ПерваяСтрока[ИмяКолонки]; - КонецЕсли; - Позиция = Позиция + 2; - КонецЦикла; - - Результат.ОбщаяЧастьПредставления = ОбщееПредставление; - Данные = Результат.Данные; - - Для Каждого Строка Из ДетальныеСтроки Цикл - // Убираем общие, из оставшихся будет полное наименование. - ЗаполнитьЗначенияСвойств(Строка, Пустые); - СтрокаРезультата = Данные.Добавить(); - СтрокаРезультата.Неактуален = Строка.Неактуален; - СтрокаРезультата.Идентификатор = Строка.Идентификатор; - - Представление = ""; - ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.Наименование, Строка.Сокращение); - ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.ПодчиненныйНаименование, Строка.ПодчиненныйСокращение); - ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.ДополнительныйНаименование, Строка.ДополнительныйСокращение); - ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.УлицаНаименование, Строка.УлицаСокращение); - ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.НаселенныйПунктНаименование, Строка.НаселенныйПунктСокращение); - ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.ВнутригородскойРайонНаименование, Строка.ВнутригородскойРайонСокращение); - ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.ГородНаименование, Строка.ГородСокращение); - ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.РайонНаименование, Строка.РайонСокращение); - ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.ОкругНаименование, Строка.ОкругСокращение); - ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.СубъектРФНаименование, Строка.СубъектРФСокращение); - СтрокаРезультата.Представление = Представление; - - КонецЦикла; - - Данные.Сортировать("Представление"); -КонецПроцедуры - -Процедура ДобавитьВПредставлениеЭлементАдреса(Представление, Знач Наименование, Знач Сокращение) - - Наименование = СокрЛП(Наименование); - Наименование = ?(Наименование = "", "", СокрЛП(Наименование + " " + СокрЛ(Сокращение))); - - Если Не ПустаяСтрока(Наименование) Тогда - Если Не ПустаяСтрока(Представление) Тогда - Представление = Представление + ", " + Наименование; - Иначе - Представление = Наименование; - КонецЕсли; - КонецЕсли; - -КонецПроцедуры - // Возвращает данные классификатора поля выбора по уровню. // // Параметры: @@ -612,353 +331,6 @@ Возврат Результат; КонецФункции -// Конструктор таблицы - результата выбора. -// -Функция ТаблицаДанныхДляИнтерактивногоВыбора() - - ТипБулево = Новый ОписаниеТипов("Булево"); - Данные = Новый ТаблицаЗначений; - Колонки = Данные.Колонки; - - Колонки.Добавить("Неактуален", ТипБулево); - Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("УникальныйИдентификатор")); - Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); - Колонки.Добавить("РегионЗагружен", ТипБулево); - - Данные.Индексы.Добавить("Идентификатор"); - Данные.Индексы.Добавить("Представление"); - - Возврат Данные -КонецФункции - -// Заполнение данных для выбора адреса по данным сервиса 1С. -// -Процедура ЗаполнитьАдресаДляИнтерактивногоВыбораСервис1С(Результат, Уровни, Родитель, Уровень, ДополнительныеПараметры); - Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); - - РодительУровня = ?(ЗначениеЗаполнено(Родитель), Строка(Родитель), Неопределено); - КодЯзыка = ТекущийКодЛокализации(); - - Данные = Результат.Данные; - - // Если передан параметр - размер порции, то отдаем порционно, иначе - все. - ФормироватьПорцию = ДополнительныеПараметры.Свойство("РазмерПорции"); - Если ФормироватьПорцию Тогда - // Транслируем в порционный вызов. - РазмерПорции = ДополнительныеПараметры.РазмерПорции; - ПерваяЗапись = ?(ЗначениеЗаполнено(ДополнительныеПараметры.ПерваяЗапись), Строка(ДополнительныеПараметры.ПерваяЗапись), Неопределено); - Сортировка = ?(ЗначениеЗаполнено(ДополнительныеПараметры.Сортировка), Строка(ДополнительныеПараметры.Сортировка), "ASC"); - - Если ЗначениеЗаполнено(ПерваяЗапись) Тогда - ДлинаПервойЗаписи = СтрДлина(ПерваяЗапись); - ПерваяЗаписьСтрока = Лев("00000000-0000-0000-0000-000000000000", 36 - ДлинаПервойЗаписи) + ПерваяЗапись; - ПерваяЗапись = Новый УникальныйИдентификатор(ПерваяЗаписьСтрока); - КонецЕсли; - - Порция = Сервис.Select(РодительУровня, Уровень, ПерваяЗапись, Сортировка, РазмерПорции, КодЯзыка, Метаданные.Имя); - Результат.Заголовок = Порция.Title; - Список = Порция.ПолучитьСписок("Item"); - - Для Каждого Строка Из Список Цикл - СтрокаРезультата = Данные.Добавить(); - СтрокаРезультата.РегионЗагружен = Истина; - СтрокаРезультата.Идентификатор = Новый УникальныйИдентификатор(Строка.ID); - СтрокаРезультата.Представление = Строка.Presentation; - СтрокаРезультата.Неактуален = НЕ Строка.Actual; - КонецЦикла; - - Возврат; - КонецЕсли; - - // Выбираем все записи (дополнительные территории) - ПерваяЗапись = Неопределено; - РазмерПорции = 1000; - - Порция = Сервис.Select(РодительУровня, Уровень, Неопределено, "ASC", РазмерПорции, КодЯзыка, Метаданные.Имя); - Результат.Заголовок = Порция.Title; - Список = Порция.ПолучитьСписок("Item"); - - Для Каждого Строка Из Список Цикл - ПерваяЗапись = Строка.ID; - СтрокаРезультата = Данные.Добавить(); - СтрокаРезультата.РегионЗагружен = Истина; - СтрокаРезультата.Идентификатор = Новый УникальныйИдентификатор(ПерваяЗапись); - СтрокаРезультата.Представление = Строка.Presentation; - СтрокаРезультата.Неактуален = НЕ Строка.Actual; - КонецЦикла; - -КонецПроцедуры - -// Заполнение данных для выбора адреса из загруженных данных. -// -Процедура ЗаполнитьАдресаДляИнтерактивногоВыбораВнутр(Результат, Уровни, Родитель, Уровень, ДополнительныеПараметры) - - ПараметрПерваяЗапись = Неопределено; - ТекстРазмерПорции = ""; - ТекстСортировкиПорции = ""; - СравнениеПорядкаПорции = ">="; - - // Если передан параметр - размер порции, то отдаем порционно, иначе - все. - РазмерПорции = Неопределено; - ФормироватьПорцию = ДополнительныеПараметры.Свойство("РазмерПорции", РазмерПорции) И ЗначениеЗаполнено(РазмерПорции); - - Если ФормироватьПорцию Тогда - ТекстРазмерПорции = "ПЕРВЫЕ " + Формат(РазмерПорции, "ЧН=; ЧГ="); - - Если ДополнительныеПараметры.Свойство("ПерваяЗапись") И ЗначениеЗаполнено(ДополнительныеПараметры.ПерваяЗапись) Тогда - ПараметрПерваяЗапись = Новый УникальныйИдентификатор(ДополнительныеПараметры.ПерваяЗапись); - КонецЕсли; - - Если ДополнительныеПараметры.Свойство("Сортировка") И ЗначениеЗаполнено(ДополнительныеПараметры.Сортировка) Тогда - ТекстСортировкиПорции = ДополнительныеПараметры.Сортировка; - КонецЕсли; - - Если ТекстСортировкиПорции <> "ASC" Тогда - СравнениеПорядкаПорции = "<="; - КонецЕсли; - КонецЕсли; - - // Особые случаи - Если Уровень = 1 Тогда - // Запрос регионов, игнорируем родителя. - ТекстЗапроса = "ВЫБРАТЬ " + ТекстРазмерПорции + " - | Регион.Идентификатор КАК Идентификатор, - | Регион.Наименование + "" "" + Регион.Сокращение КАК Представление, - | - | ВЫБОР КОГДА 1 В ( - | ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты - | ГДЕ Уровень = 2 И КодСубъектаРФ = Регион.КодСубъектаРФ - | ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты - | ГДЕ Уровень = 3 И КодСубъектаРФ = Регион.КодСубъектаРФ - | ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты - | ГДЕ Уровень = 4 И КодСубъектаРФ = Регион.КодСубъектаРФ - | ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты - | ГДЕ Уровень = 5 И КодСубъектаРФ = Регион.КодСубъектаРФ - | ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты - | ГДЕ Уровень = 6 И КодСубъектаРФ = Регион.КодСубъектаРФ - | ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты - | ГДЕ Уровень = 7 И КодСубъектаРФ = Регион.КодСубъектаРФ - | ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты - | ГДЕ Уровень = 90 И КодСубъектаРФ = Регион.КодСубъектаРФ - | ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты - | ГДЕ Уровень = 91 И КодСубъектаРФ = Регион.КодСубъектаРФ - | ) ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ - | КОНЕЦ КАК РегионЗагружен - | - |ИЗ - | РегистрСведений.АдресныеОбъекты КАК Регион - | - |" + ?(ПараметрПерваяЗапись = Неопределено, "", " - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.АдресныеОбъекты КАК ТекущийПорядокПорции - |ПО - | ТекущийПорядокПорции.Идентификатор = &ПервыйЭлементПорции - |") + " - | - |ГДЕ - | Регион.Уровень = 1 - | И Регион.КодОкруга = 0 - | И Регион.КодРайона = 0 - | И Регион.КодГорода = 0 - | И Регион.КодВнутригородскогоРайона = 0 - | И Регион.КодНаселенногоПункта = 0 - | И Регион.КодУлицы = 0 - | И Регион.КодДополнительногоЭлемента = 0 - | И Регион.КодПодчиненногоЭлемента = 0 - | - |" + ?(ПараметрПерваяЗапись = Неопределено, "", " - | И Регион.Идентификатор <> ТекущийПорядокПорции.Идентификатор - | И Регион.Наименование + "" "" + Регион.Сокращение " + СравнениеПорядкаПорции + " ТекущийПорядокПорции.Наименование + "" "" + ТекущийПорядокПорции.Сокращение - |") + " - | - |УПОРЯДОЧИТЬ ПО - | Представление " + ТекстСортировкиПорции + " - |"; - ИначеЕсли Уровень = -1 Тогда - // Запрос ориентиров, родитель - адресный объект. - ТекстЗапроса = "ВЫБРАТЬ " + ТекстРазмерПорции + " - | Идентификатор КАК Идентификатор, - | Описание КАК Представление - |ИЗ - | РегистрСведений.ОриентирыАдресныхОбъектов КАК Ориентиры - | - |" + ?(ПараметрПерваяЗапись = Неопределено, "", " - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.АдресныеОбъекты КАК ТекущийПорядокПорции - |ПО - | ТекущийПорядокПорции.Идентификатор = &ПервыйЭлементПорции - |") + " - | - |ГДЕ - | Ориентиры.АдресныйОбъект = &Родитель - | - |" + ?(ПараметрПерваяЗапись = Неопределено, "", " - | И Ориентиры.Идентификатор <> ТекущийПорядокПорции.Идентификатор - | И Ориентиры.Наименование + "" "" + Ориентиры.Сокращение " + СравнениеПорядкаПорции + " ТекущийПорядокПорции.Наименование + "" "" + ТекущийПорядокПорции.Сокращение - |") + " - | - |УПОРЯДОЧИТЬ ПО - | Представление " + ТекстСортировкиПорции + " - |"; - Иначе - // Обычный уровень - ТекстЗапроса = "ВЫБРАТЬ " + ТекстРазмерПорции + " - | АдресныйОбъект.Идентификатор КАК Идентификатор, - | АдресныйОбъект.Наименование + "" "" + АдресныйОбъект.Сокращение КАК Представление, - | ИСТИНА КАК РегионЗагружен, - | ВЫБОР КОГДА АдресныйОбъект.Актуален ТОГДА ЛОЖЬ ИНАЧЕ ИСТИНА КОНЕЦ КАК Неактуален - |ИЗ - | РегистрСведений.АдресныеОбъекты КАК РодительскийОбъект - | - |" + ?(ПараметрПерваяЗапись = Неопределено, "", " - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.АдресныеОбъекты КАК ТекущийПорядокПорции - |ПО - | ТекущийПорядокПорции.Идентификатор = &ПервыйЭлементПорции - |") + " - | - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.АдресныеОбъекты КАК АдресныйОбъект - |ПО - | АдресныйОбъект.Уровень = &Уровень - | И АдресныйОбъект.Уровень В (&Уровни) - | И АдресныйОбъект.КодСубъектаРФ = РодительскийОбъект.КодСубъектаРФ - |"; - Если Уровень = 2 Тогда - // Округ - ТекстЗапроса = ТекстЗапроса + " - | И АдресныйОбъект.КодРайона = 0 - | И АдресныйОбъект.КодГорода = 0 - | И АдресныйОбъект.КодВнутригородскогоРайона = 0 - | И АдресныйОбъект.КодНаселенногоПункта = 0 - | И АдресныйОбъект.КодУлицы = 0 - | И АдресныйОбъект.КодДополнительногоЭлемента = 0 - | И АдресныйОбъект.КодПодчиненногоЭлемента = 0 - |"; - ИначеЕсли Уровень = 3 Тогда - // Район - ТекстЗапроса = ТекстЗапроса + " - | И АдресныйОбъект.КодОкруга = РодительскийОбъект.КодОкруга - | И АдресныйОбъект.КодГорода = 0 - | И АдресныйОбъект.КодВнутригородскогоРайона = 0 - | И АдресныйОбъект.КодНаселенногоПункта = 0 - | И АдресныйОбъект.КодУлицы = 0 - | И АдресныйОбъект.КодДополнительногоЭлемента = 0 - | И АдресныйОбъект.КодПодчиненногоЭлемента = 0 - |"; - ИначеЕсли Уровень = 4 Тогда - // Город - ТекстЗапроса = ТекстЗапроса + " - | И АдресныйОбъект.КодОкруга = РодительскийОбъект.КодОкруга - | И АдресныйОбъект.КодРайона = РодительскийОбъект.КодРайона - | И АдресныйОбъект.КодВнутригородскогоРайона = 0 - | И АдресныйОбъект.КодНаселенногоПункта = 0 - | И АдресныйОбъект.КодУлицы = 0 - | И АдресныйОбъект.КодДополнительногоЭлемента = 0 - | И АдресныйОбъект.КодПодчиненногоЭлемента = 0 - |"; - ИначеЕсли Уровень = 5 Тогда - // Внутригородской район - ТекстЗапроса = ТекстЗапроса + " - | И АдресныйОбъект.КодОкруга = РодительскийОбъект.КодОкруга - | И АдресныйОбъект.КодРайона = РодительскийОбъект.КодРайона - | И АдресныйОбъект.КодГорода = РодительскийОбъект.КодГорода - | И АдресныйОбъект.КодНаселенногоПункта = 0 - | И АдресныйОбъект.КодУлицы = 0 - | И АдресныйОбъект.КодДополнительногоЭлемента = 0 - | И АдресныйОбъект.КодПодчиненногоЭлемента = 0 - |"; - ИначеЕсли Уровень = 6 Тогда - // Населенный пункт - ТекстЗапроса = ТекстЗапроса + " - | И АдресныйОбъект.КодОкруга = РодительскийОбъект.КодОкруга - | И АдресныйОбъект.КодРайона = РодительскийОбъект.КодРайона - | И АдресныйОбъект.КодГорода = РодительскийОбъект.КодГорода - | И АдресныйОбъект.КодВнутригородскогоРайона = РодительскийОбъект.КодВнутригородскогоРайона - | И АдресныйОбъект.КодУлицы = 0 - | И АдресныйОбъект.КодДополнительногоЭлемента = 0 - | И АдресныйОбъект.КодПодчиненногоЭлемента = 0 - |"; - ИначеЕсли Уровень = 7 Тогда - // Улица - ТекстЗапроса = ТекстЗапроса + " - | И АдресныйОбъект.КодОкруга = РодительскийОбъект.КодОкруга - | И АдресныйОбъект.КодРайона = РодительскийОбъект.КодРайона - | И АдресныйОбъект.КодГорода = РодительскийОбъект.КодГорода - | И АдресныйОбъект.КодВнутригородскогоРайона = РодительскийОбъект.КодВнутригородскогоРайона - | И АдресныйОбъект.КодНаселенногоПункта = РодительскийОбъект.КодНаселенногоПункта - | И АдресныйОбъект.КодДополнительногоЭлемента = 0 - | И АдресныйОбъект.КодПодчиненногоЭлемента = 0 - |"; - ИначеЕсли Уровень = 90 Тогда - // Дополнительный - ТекстЗапроса = ТекстЗапроса + " - | И АдресныйОбъект.КодОкруга = РодительскийОбъект.КодОкруга - | И АдресныйОбъект.КодРайона = РодительскийОбъект.КодРайона - | И АдресныйОбъект.КодГорода = РодительскийОбъект.КодГорода - | И АдресныйОбъект.КодВнутригородскогоРайона = РодительскийОбъект.КодВнутригородскогоРайона - | И АдресныйОбъект.КодНаселенногоПункта = РодительскийОбъект.КодНаселенногоПункта - | И АдресныйОбъект.КодУлицы = РодительскийОбъект.КодУлицы - | И АдресныйОбъект.КодПодчиненногоЭлемента = 0 - |"; - ИначеЕсли Уровень = 91 Тогда - // Подчиненный - ТекстЗапроса = ТекстЗапроса + " - | И АдресныйОбъект.КодОкруга = РодительскийОбъект.КодОкруга - | И АдресныйОбъект.КодРайона = РодительскийОбъект.КодРайона - | И АдресныйОбъект.КодГорода = РодительскийОбъект.КодГорода - | И АдресныйОбъект.КодВнутригородскогоРайона = РодительскийОбъект.КодВнутригородскогоРайона - | И АдресныйОбъект.КодНаселенногоПункта = РодительскийОбъект.КодНаселенногоПункта - | И АдресныйОбъект.КодУлицы = РодительскийОбъект.КодУлицы - | И АдресныйОбъект.КодДополнительногоЭлемента = РодительскийОбъект.КодДополнительногоЭлемента - |"; - Иначе - ВызватьИсключение НСтр("ru = 'Запрос некорректного уровня адресного объекта'"); - КонецЕсли; - - ТекстЗапроса = ТекстЗапроса + " - |ГДЕ - | РодительскийОбъект.Идентификатор = &Родитель - | И РодительскийОбъект.Идентификатор <> АдресныйОбъект.Идентификатор - | - |" + ?(ПараметрПерваяЗапись = Неопределено, "", " - | И АдресныйОбъект.Идентификатор <> ТекущийПорядокПорции.Идентификатор - | И АдресныйОбъект.Наименование + "" "" + АдресныйОбъект.Сокращение " + СравнениеПорядкаПорции + " ТекущийПорядокПорции.Наименование + "" "" + ТекущийПорядокПорции.Сокращение - |") + " - | - |УПОРЯДОЧИТЬ ПО - | Представление " + ТекстСортировкиПорции + " - |"; - КонецЕсли; - - Запрос = Новый Запрос(ТекстЗапроса); - Запрос.УстановитьПараметр("Уровень", Уровень); - Запрос.УстановитьПараметр("Уровни", Уровни); - Запрос.УстановитьПараметр("Родитель", Родитель); - - Запрос.УстановитьПараметр("ПервыйЭлементПорции", ПараметрПерваяЗапись); - - Выборка = Запрос.Выполнить().Выбрать(); - - Данные = Результат.Данные; - Если Уровень <> -1 Тогда - // Обычные объекты - Пока Выборка.Следующий() Цикл - ЗаполнитьЗначенияСвойств(Данные.Добавить(), Выборка); - КонецЦикла; - Возврат; - КонецЕсли; - - // Ориентиры. Описание - строка в хранилище. - Пока Выборка.Следующий() Цикл - Строка = Данные.Добавить(); - Строка.РегионЗагружен = Истина; - Строка.Идентификатор = Выборка.Идентификатор; - Строка.Представление = Выборка.Представление.Получить(); - КонецЦикла; - -КонецПроцедуры - // Возвращает список для автоподбора элемента адреса, поиск по подобию. // // Параметры: @@ -1055,7 +427,6 @@ Иначе ТочноеСовпадение = Истина; КонецЕсли; - Источник = ИсточникДанныхАдресногоКлассификатора(); Если ПустаяСтрока(Источник) Тогда @@ -1074,7 +445,7 @@ Пока Запись.Следующий() Цикл Если ЗначениеЗаполнено(Запись.Строения) Тогда Описание = Запись.Строения.Получить(); - Если Не ПустаяСтрока(Описание) Тогда + Если Не ПустаяСтрока(Описание) И СтрДлина(Описание) > 24 Тогда Описание = Сред(Описание, 25); Если Не ПустаяСтрока(Описание) Тогда ИзвлечьСписокДомов(Описание, СтрокаПоиска, ВариантыДомов, ТочноеСовпадение); @@ -1083,8 +454,7 @@ КонецЕсли; КонецЦикла; ИначеЕсли Источник = "Сервис1С" Тогда - // Подбор номеров домов в Веб сервис 1С не поддерживается - Возврат ВариантыДомов; + ИзвлечьСписокДомовСервис1С(ИдентификаторАдресногоОбъекта, СтрокаПоиска, ВариантыДомов); КонецЕсли; ВариантыДомов.Сортировать("ДомЧислом, Дом, Строение, Корпус"); @@ -1093,6 +463,997 @@ КонецФункции +// Возвращает есть ли список домов по идентификатору адресного объекта, поиск по подобию. +// +// Параметры: +// ИдентификаторАдресногоОбъекта - УникальныйИдентификатор - Родительский объект. +// +// Возвращаемое значение: +// Булево - Истина, если есть информация о домах. +// +Функция ЕстьСписокДомов(ИдентификаторАдресногоОбъекта) Экспорт + + Если Не ЗначениеЗаполнено(ИдентификаторАдресногоОбъекта) Тогда + Возврат Ложь; + КонецЕсли; + + Источник = ИсточникДанныхАдресногоКлассификатора(); + Если ПустаяСтрока(Источник) Тогда + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ ПЕРВЫЕ 1 + | ДомаЗданияСтроения.Строения КАК Строения + |ИЗ + | РегистрСведений.ДомаЗданияСтроения КАК ДомаЗданияСтроения + |ГДЕ + | ДомаЗданияСтроения.АдресныйОбъект = &АдресныйОбъект"; + + Запрос.УстановитьПараметр("АдресныйОбъект", ИдентификаторАдресногоОбъекта); + Запись = Запрос.Выполнить().Выбрать(); + + Пока Запись.Следующий() Цикл + Если ЗначениеЗаполнено(Запись.Строения) Тогда + Описание = Запись.Строения.Получить(); + Если Не ПустаяСтрока(Описание) Тогда + Описание = Сред(Описание, 25); + Если Не ПустаяСтрока(Описание) Тогда + Возврат Истина; + КонецЕсли; + КонецЕсли; + КонецЕсли; + КонецЦикла; + ИначеЕсли Источник = "Сервис1С" Тогда + Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); + КодЯзыка = ТекущийКодЛокализации(); + Порция = Сервис.Autocomplete(ИдентификаторАдресногоОбъекта, 0, НСтр("ru = 'ДОМ='"), 1, КодЯзыка, Метаданные.Имя); + Список = Порция.ПолучитьСписок("Item"); + Возврат Список.Количество() > 0; + КонецЕсли; + + Возврат Ложь; + +КонецФункции + +// Возвращает актуальные данные адресного объекта или ориентира с точностью доя подчиненного (без домов). +// +// Параметры: +// Идентификатор - УникальныйИдентификатор - Идентификатор адресного объекта или ориентира. +// +// Возвращаемое значение: +// Структура - найденные варианты. Содержит поля: +// * Отказ - Булево - Поставщик не доступен. +// * ПодробноеПредставлениеОшибки - Строка - Описание ошибки, если поставщик недоступен. Неопределено, если Отказ +// = Ложь. +// * КраткоеПредставлениеОшибки - Строка - Описание ошибки, если поставщик недоступен. Неопределено, если Отказ +// = Ложь. +// * Данные - ОбъектXDTO - Адрес, см (http://www.v8.1c.ru/ssl/AddressSystem) АдресРФ. +// +Функция АктуальныеАдресныеСведения(Идентификатор) Экспорт + + Данные = Неопределено; + Результат = Новый Структура("Данные", Данные); + СтруктураОписанияОшибкиПоставщика(Результат); + + Источник = ИсточникДанныхАдресногоКлассификатора(); + Если ПустаяСтрока(Источник) Тогда + // Локальное, всегда корректное. + ЗаполнитьАктуальныеАдресныеСведенияВнутр(Результат, Идентификатор); + + ИначеЕсли Источник = "Сервис1С" Тогда + // Веб сервис 1С, может быть на обслуживании. + Попытка + ЗаполнитьАктуальныеАдресныеСведенияСервис1С(Результат, Идентификатор); + Исключение + СтруктураОписанияОшибкиПоставщика(Результат, ИнформацияОбОшибке()); + ЗаписьЖурналаРегистрации( СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка, , , Результат.ПодробноеПредставлениеОшибки); + КонецПопытки; + + КонецЕсли; + + Возврат Результат; + +КонецФункции + +Процедура УстановитьИдентификаторыНаселенногоПункта(ЧастиАдреса) Экспорт + + ПоляАдреса = Новый Соответствие(); + ВставитьЧастьАдреса("Регион", ЧастиАдреса.Регион, ПоляАдреса); + ВставитьЧастьАдреса("Округ", ЧастиАдреса.Округ, ПоляАдреса); + ВставитьЧастьАдреса("Район", ЧастиАдреса.Район, ПоляАдреса); + ВставитьЧастьАдреса("Город", ЧастиАдреса.Город, ПоляАдреса); + ВставитьЧастьАдреса("ВнутригородскойРайон", ЧастиАдреса.ВнутригРайон, ПоляАдреса); + ВставитьЧастьАдреса("НаселенныйПункт", ЧастиАдреса.НаселенныйПункт, ПоляАдреса); + ВставитьЧастьАдреса("Улица", ЧастиАдреса.Улица, ПоляАдреса); + + ИдентификаторыАдреса = ИдентификаторыАдреса(ПоляАдреса, Истина, Истина); + + Если ИдентификаторыАдреса <> Неопределено Тогда + Для каждого Часть Из ЧастиАдреса Цикл + Если ИдентификаторыАдреса.Свойство("Идентификатор" + Часть.Ключ) Тогда + Часть.Значение.Идентификатор = ИдентификаторыАдреса["Идентификатор" + Часть.Ключ]; + Иначе + Часть.Значение.Идентификатор = Неопределено; + КонецЕсли; + КонецЦикла; + КонецЕсли; + +КонецПроцедуры + +// Проверяет данные на соответствие классификатору. +// +// Параметры: +// Адреса - Массив - Проверяемые адреса. Содержит структуры с полями: +// * Адрес - ОбъектXDTO, Строка - Проверяемый адрес +// ((http://www.v8.1c.ru/ssl/AddressSystem) АдресРФ) или его +// XML-сериализация. +// * ФорматАдреса - Строка - Тип используемого классификатора для проверки. +// +// Возвращаемое значение: +// Структура - найденные варианты. Содержит поля: +// * Отказ - Булево - Поставщик не доступен. +// * ПодробноеПредставлениеОшибки - Строка - Описание ошибки, если поставщик недоступен. Неопределено, если Отказ +// = Ложь. +// * КраткоеПредставлениеОшибки - Строка - Описание ошибки, если поставщик недоступен. Неопределено, если Отказ +// = Ложь. +// * Данные - Массив - Результаты проверки. Индекс результата совпадает с индексом +// параметра Адреса. +// Каждый элемент массива - структура, содержащая поля: +// ** Ошибки - Массив - Описание ошибок поиска в классификаторе. Состоит из структур с полями. +// *** Ключ - Строка - Служебный идентификатор места ошибки - путь XPath в объекте XDTO. +// *** Текст - Строка - Текст ошибки. +// *** Подсказка - Строка - Текст возможного исправления ошибки. +// ** Варианты - Массив - Содержит описание найденных вариантов. Каждый элемент - структура с полями: +// *** Идентификатор - УникальныйИдентификатор - Код классификатора объекта - варианта. +// *** Индекс - Число - Почтовый индекс объекта - варианта. +// *** КодКЛАДР - Число - Код КЛАДР ближайшего объекта. +// *** OKATO - Число - Данные ФНС. +// *** ОКТМО - Число - Данные ФНС. +// *** КодИФНСФЛ - Число - Данные ФНС. +// *** КодИФНСЮЛ - Число - Данные ФНС. +// *** КодУчасткаИФНСФЛ - Число - Данные ФНС. +// *** КодУчасткаИФНСЮЛ - Число - Данные ФНС. +// +Функция РезультатПроверкиАдресовПоКлассификатору(Адреса) Экспорт + + Результат = Новый Структура("Данные", Новый Массив); + СтруктураОписанияОшибкиПоставщика(Результат); + + // Приводим типы + АдресаДляПроверки = Новый Массив; + ТипСтрока = Тип("Строка"); + + Для Каждого ПроверяемыйАдрес Из Адреса Цикл + Если ПроверяемыйАдрес.ФорматАдреса = "ФИАС" Тогда + Уровни = АдресныйКлассификаторПовтИсп.УровниКлассификатораФИАС(); + Иначе + Уровни = АдресныйКлассификаторПовтИсп.УровниКлассификатораКЛАДР(); + КонецЕсли; + + // Невозможно проверить адрес из-за некорректных сведений. Проверьте правильность заполнения адреса. + АдресXDTO = ПроверяемыйАдрес.Адрес; + Если ТипЗнч(АдресXDTO) = ТипСтрока Тогда + Если ЭтоКонтактнаяИнформацияВXML(АдресXDTO) Тогда + ПолныйАдресXDTO = ДесериализацияАдресаXDTO(АдресXDTO); + АдресXDTO = ПолныйАдресXDTO.Состав.Состав; + Иначе + АдресXDTO = Неопределено; + КонецЕсли; + КонецЕсли; + + АдресаДляПроверки.Добавить(Новый Структура("Адрес, Уровни", АдресXDTO, Уровни)); + КонецЦикла; + + Источник = ИсточникДанныхАдресногоКлассификатора(); + Если ПустаяСтрока(Источник) Тогда + // Локальное, всегда корректное. + ЗаполнитьРезультатПроверкиАдресаПоКлассификаторуВнутр(Результат, АдресаДляПроверки); + + ИначеЕсли Источник = "Сервис1С" Тогда + // Веб сервис 1С, может быть на обслуживании. + Попытка + ЗаполнитьРезультатПроверкиАдресаПоКлассификаторуСервис1С(Результат, АдресаДляПроверки); + Исключение + СтруктураОписанияОшибкиПоставщика(Результат, ИнформацияОбОшибке()); + ЗаписьЖурналаРегистрации( СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка, , , Результат.ПодробноеПредставлениеОшибки); + КонецПопытки; + + КонецЕсли; + + Возврат Результат; + +КонецФункции + +// Определяет индекс и ОКТМО адреса по частям адреса. +// +Функция ИндексИОКТМОАдресаПоЧастямАдреса(Адрес, Идентификатор = Неопределено) Экспорт + + Результат = Новый Структура("Индекс, ОКТМО", Неопределено, Неопределено); + Источник = ИсточникДанныхАдресногоКлассификатора(); + Если ПустаяСтрока(Источник) Тогда + // Локальное + + Если НЕ ЗначениеЗаполнено(Идентификатор) Тогда + Идентификатор = ИдентификаторАдресногоОбъектаПоЧастямАдреса(Адрес, Истина); + КонецЕсли; + + Если Идентификатор <> Неопределено Тогда + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | АдресныеОбъекты.ПочтовыйИндекс + |ИЗ + | РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты + |ГДЕ + | АдресныеОбъекты.Идентификатор = &Идентификатор + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | АдресныеОбъекты.Дополнительно КАК Дополнительно, + | ДополнительныеАдресныеСведения.КодСубъектаРФ, + | ДополнительныеАдресныеСведения.OKATO, + | ДополнительныеАдресныеСведения.ОКТМО, + | ДополнительныеАдресныеСведения.КодИФНСФЛ, + | ДополнительныеАдресныеСведения.КодИФНСЮЛ, + | ДополнительныеАдресныеСведения.КодУчасткаИФНСФЛ, + | ДополнительныеАдресныеСведения.КодУчасткаИФНСЮЛ + |ИЗ + | РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДополнительныеАдресныеСведения КАК ДополнительныеАдресныеСведения + | ПО АдресныеОбъекты.Дополнительно = ДополнительныеАдресныеСведения.Идентификатор + |ГДЕ + | АдресныеОбъекты.Идентификатор = &Идентификатор"; + + Запрос.УстановитьПараметр("Идентификатор", Идентификатор); + РезультатЗапроса = Запрос.ВыполнитьПакет(); + РезультатЗапросаИндекс = РезультатЗапроса[0].Выбрать(); + РезультатЗапросаОКТМО = РезультатЗапроса[1].Выбрать(); + + Если РезультатЗапросаИндекс.Следующий() Тогда + Если РезультатЗапросаИндекс.ПочтовыйИндекс = 0 Тогда + + // Расшифровка свойств адреса + Запрос = Новый Запрос( + "ВЫБРАТЬ + | Значение + |ИЗ + | РегистрСведений.СлужебныеАдресныеСведения + |ГДЕ + | Тип = ""ТипАдрЭл"" И Ключ = ""ПочтовыйИндекс"" + |;////////////////////////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | Расшифровка.Ключ КАК Значение, + | Расшифровка.Значение КАК ТипАдрЭл, + | + | ВЫБОР + | КОГДА НЕ ТипыВладения.Идентификатор ЕСТЬ NULL ТОГДА ТипыВладения.Идентификатор + | КОГДА НЕ ТипыСтроения.Идентификатор ЕСТЬ NULL ТОГДА ТипыСтроения.Идентификатор + | ИНАЧЕ 0 + | КОНЕЦ КАК Идентификатор + | + |ИЗ + | РегистрСведений.СлужебныеАдресныеСведения КАК Расшифровка + | + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.СлужебныеАдресныеСведения КАК ТипыВладения + |ПО + | ТипыВладения.Тип = ""ESTSTAT"" + | И ТипыВладения.Значение = Расшифровка.Ключ + | + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.СлужебныеАдресныеСведения КАК ТипыСтроения + |ПО + | ТипыСтроения.Тип = ""STRSTAT"" + | И ТипыСтроения.Значение = Расшифровка.Ключ + | + |ГДЕ + | Расшифровка.Тип = ""ДопАдрЭлНомер"""); + НаборРезультатов = Запрос.ВыполнитьПакет(); + + Таблица = НаборРезультатов[0].Выгрузить(); + Если Таблица.Количество() = 0 Тогда + ТипАдрЭлПочтовыйИндекс = ""; + Иначе + ТипАдрЭлПочтовыйИндекс = Таблица[0].Значение; + КонецЕсли; + ТаблицаСокращенийЗданий = НаборРезультатов[1].Выгрузить(); + ТаблицаСокращенийЗданий.Индексы.Добавить("ТипАдрЭл"); + + ЗданияИПомещения = Новый Соответствие; + ТипЧисло = Новый ОписаниеТипов("Число"); + Для Каждого ДополнительныйЭлемент Из Адрес.ПолучитьСписок("ДопАдрЭл") Цикл + ТипАдресногоЭлемента = СокрЛП(ДополнительныйЭлемент.ТипАдрЭл); + + // Здание или помещение, почтовый индекс? + Если ТипАдресногоЭлемента = "" Тогда + ЗначениеНомера = ДополнительныйЭлемент.Номер; + СтрокаЗдания = ТаблицаСокращенийЗданий.Найти(ЗначениеНомера.Тип, "ТипАдрЭл"); + Если СтрокаЗдания <> Неопределено Тогда + ЗданияИПомещения[СтрокаЗдания.Значение] = Новый Структура("Вид, Значение", СтрокаЗдания.Идентификатор, ЗначениеНомера.Значение); + КонецЕсли; + Продолжить; + ИначеЕсли ТипАдресногоЭлемента = ТипАдрЭлПочтовыйИндекс Тогда + Результат.Индекс = ТипЧисло.ПривестиЗначение(ДополнительныйЭлемент.Значение); + Продолжить; + КонецЕсли; + КонецЦикла; + + Запрос = Новый Запрос; + Запрос.Текст ="ВЫБРАТЬ + | ДомаЗданияСтроения.ПочтовыйИндекс, + | ДомаЗданияСтроения.Строения + |ИЗ + | РегистрСведений.ДомаЗданияСтроения КАК ДомаЗданияСтроения + |ГДЕ + | ДомаЗданияСтроения.АдресныйОбъект = &Идентификатор"; + Запрос.УстановитьПараметр("Идентификатор", Идентификатор); + РезультатЗапросаСДомами = Запрос.Выполнить().Выгрузить(); + + Для Каждого Запись Из РезультатЗапросаСДомами Цикл + // Если Запись.Строения равно Null значит по этому адресу нет домов. + Если ЗначениеЗаполнено(Запись.Строения) Тогда + Описание = Запись.Строения.Получить(); + + Если Не ПустаяСтрока(Описание) Тогда + ИдентификаторДополнительно = УникальныйИдентификаторИзСтроки64(Лев(Описание, 24)); + Описание = Сред(Описание, 25); + Если Не ПустаяСтрока(Описание) Тогда + ЕстьЗаписиДомов = Истина; + + Если ЗданияИПомещения.Количество() > 0 И ОписаниеЗданийФИАССодержитДанные(Описание, ЗданияИПомещения) Тогда + Результат.Индекс = Запись.ПочтовыйИндекс; + КонецЕсли; + КонецЕсли; + КонецЕсли; + КонецЕсли; + КонецЦикла; + Иначе + Результат.Индекс = РезультатЗапросаИндекс.ПочтовыйИндекс; + КонецЕсли; + КонецЕсли; + + Если РезультатЗапросаОКТМО.Следующий() Тогда + Результат.ОКТМО = РезультатЗапросаОКТМО.ОКТМО; + КонецЕсли; + КонецЕсли; + + ИначеЕсли Источник = "Сервис1С" Тогда + // Веб сервис 1С, может быть на обслуживании. + АдресаДляПроверки = Новый Массив; + РезультатВебСервис = Новый Структура("Данные", Новый Массив); + СтруктураОписанияОшибкиПоставщика(РезультатВебСервис); + Уровни = АдресныйКлассификаторПовтИсп.УровниКлассификатораФИАС(); + АдресаДляПроверки.Добавить(Новый Структура("Адрес, Уровни", Адрес, Уровни)); + Попытка + ЗаполнитьРезультатПроверкиАдресаПоКлассификаторуСервис1С(РезультатВебСервис, АдресаДляПроверки); + Исключение + СтруктураОписанияОшибкиПоставщика(РезультатВебСервис, ИнформацияОбОшибке()); + ЗаписьЖурналаРегистрации( СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка, , , РезультатВебСервис.ПодробноеПредставлениеОшибки); + КонецПопытки; + + Если НЕ РезультатВебСервис.Отказ Тогда + Если РезультатВебСервис.Данные[0].Варианты.Количество() > 0 Тогда + Результат.Индекс = РезультатВебСервис.Данные[0].Варианты[0].Индекс; + Результат.ОКТМО = РезультатВебСервис.Данные[0].Варианты[0].ОКТМО + КонецЕсли; + КонецЕсли; + КонецЕсли; + + Возврат Результат; +КонецФункции + +// Возвращает соответствие полных наименований адресных объектов и их сокращения. +// +// Параметры: +// НаименованияАдресныхОбъектов - Массив - Полные наименования адресных объектов. Если передан пустой массив, +// то будут возвращен полный список наименований и сокращений. +// +// Возвращаемое значение: +// Соответствие - Соответствие найденных полных наименований адресных объектов их сокращениям. +// +Функция СокращенияАдресныхОбъектов(НаименованияАдресныхОбъектов) Экспорт + + Результат = Новый Соответствие; + + Источник = ИсточникДанныхАдресногоКлассификатора(); + Если ПустаяСтрока(Источник) Тогда + + СтрокаЗапросГде = ""; + Если ТипЗнч(НаименованияАдресныхОбъектов) = Тип("Массив") И НаименованияАдресныхОбъектов.Количество() > 0 Тогда + СтрокаЗапросГде = " ГДЕ УровниСокращенийАдресныхСведений.Значение В(&АдресныеСокращения) "; + КонецЕсли; + + Запрос = Новый Запрос(); + Запрос.Текст = + "ВЫБРАТЬ + | УровниСокращенийАдресныхСведений.Значение КАК Наименование, + | УровниСокращенийАдресныхСведений.Сокращение КАК Сокращение + |ИЗ + | РегистрСведений.УровниСокращенийАдресныхСведений КАК УровниСокращенийАдресныхСведений + | " + СтрокаЗапросГде + " + | + |СГРУППИРОВАТЬ ПО + | УровниСокращенийАдресныхСведений.Значение, + | УровниСокращенийАдресныхСведений.Сокращение + | + |УПОРЯДОЧИТЬ ПО + | Наименование"; + + Если НЕ ПустаяСтрока(СтрокаЗапросГде) Тогда + Запрос.УстановитьПараметр("АдресныеСокращения", НаименованияАдресныхОбъектов); + КонецЕсли; + ТаблицаАдресныхСокращений = Запрос.Выполнить().Выгрузить(); + + Для каждого СтрокаТаблицы Из ТаблицаАдресныхСокращений Цикл + Результат.Вставить(ВРег(СтрокаТаблицы.Наименование), СтрокаТаблицы.Сокращение); + КонецЦикла; + + Если Результат.Количество() > 0 Тогда + Возврат Результат; + КонецЕсли; + КонецЕсли; + + // Веб сервис 1С или классификатор не загружен, получаем данные о сокращениях из макета. + ТаблицаАдресныхСокращений = РегистрыСведений.АдресныеОбъекты.АдресныеСокращения(); + + Если ТипЗнч(НаименованияАдресныхОбъектов) = Тип("Массив") И НаименованияАдресныхОбъектов.Количество() > 0 Тогда + Для каждого ПолноеНаименование Из НаименованияАдресныхОбъектов Цикл + СтрокаТаблицы = ТаблицаАдресныхСокращений.Найти(ТРег(ПолноеНаименование), "Наименование"); + Если СтрокаТаблицы <> Неопределено Тогда + Результат.Вставить(ВРег(СтрокаТаблицы.Наименование), СтрокаТаблицы.Сокращение); + КонецЕсли; + КонецЦикла; + Иначе + Для каждого СтрокаТаблицы Из ТаблицаАдресныхСокращений Цикл + Результат.Вставить(ВРег(СтрокаТаблицы.Наименование), СтрокаТаблицы.Сокращение); + КонецЦикла; + КонецЕсли; + + Возврат Результат; + +КонецФункции + +Функция УстановитьСоответствиеЧастейАдресаИхУровню(ЧастиАдреса, Уровни) Экспорт + + ОбработатьОбщепринятыеСокращения(ЧастиАдреса); + ДоступныеУровни = УровниСодержащиеСовпадения(ЧастиАдреса, Уровни); + Если ДоступныеУровни.Найти(1) <> Неопределено Тогда + УстановитьУровниАдресаПоЧастямАдреса(ЧастиАдреса, ДоступныеУровни); + КонецЕсли; + + Возврат ЧастиАдреса; + +КонецФункции + +Процедура УстановитьУровниУлицыПоЧастямАдреса(ИдентификаторНаселенногоПункта, ЧастиАдреса) Экспорт + + Если ТипЗнч(ИдентификаторНаселенногоПункта) = Тип("Строка") Тогда + ИдентификаторНаселенногоПункта = Новый УникальныйИдентификатор(ИдентификаторНаселенногоПункта); + КонецЕсли; + + Шаблон = " ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК %1 + | ПО (%1.КодСубъектаРФ = НаселенныйПункт.КодСубъектаРФ) + | И (%1.КодОкруга = НаселенныйПункт.КодОкруга) + | И (%1.КодРайона = НаселенныйПункт.КодРайона) + | И (%1.КодГорода = НаселенныйПункт.КодГорода) + | И (%1.КодВнутригородскогоРайона = НаселенныйПункт.КодВнутригородскогоРайона) + | И (%1.КодНаселенногоПункта = НаселенныйПункт.КодНаселенногоПункта) + | И (%1.Наименование = ""%2"") + | И (%1.Сокращение = ""%3"") "; + СтрокаВыбрать = ""; + РазделительВыбрать = ""; + СтрокаИз = ""; + + Упорядочить = ""; + Для Индекс = 0 По ЧастиАдреса.Количество() -1 Цикл + ЧастьАдреса = ЧастиАдреса[Индекс]; + НазваниеТаблицы = "АдресныйОбъект"+ Строка(Индекс); + СтрокаВыбрать = СтрокаВыбрать + РазделительВыбрать + НазваниеТаблицы + ".Идентификатор КАК " + НазваниеТаблицы + "Идентификатор, " + + НазваниеТаблицы + ".Уровень КАК " + НазваниеТаблицы + "Уровень " ; + СтрокаИз = СтрокаИз + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Шаблон, НазваниеТаблицы, ЧастьАдреса.Наименование, ЧастьАдреса.Сокращение); + Упорядочить = Упорядочить + РазделительВыбрать + НазваниеТаблицы + ".Актуален Убыв"; + РазделительВыбрать = ", "; + КонецЦикла; + + ТекстЗапроса = "ВЫБРАТЬ " + СтрокаВыбрать + " ИЗ РегистрСведений.АдресныеОбъекты КАК НаселенныйПункт " + + СтрокаИз + " ГДЕ НаселенныйПункт.Идентификатор = &Идентификатор"; + + Если ЗначениеЗаполнено(Упорядочить) Тогда + ТекстЗапроса = ТекстЗапроса + " УПОРЯДОЧИТЬ ПО " + Упорядочить; + КонецЕсли; + + Запрос = Новый Запрос(ТекстЗапроса); + Запрос.УстановитьПараметр("Идентификатор", ИдентификаторНаселенногоПункта); + + Результат = Запрос.Выполнить().Выгрузить(); + Результат = Запрос.Выполнить().Выбрать(); + Если Результат.Следующий() Тогда + Для Индекс = 0 По ЧастиАдреса.Количество() - 1 Цикл + ЧастиАдреса[Индекс].Идентификатор = Результат["АдресныйОбъект"+ Строка(Индекс) + "Идентификатор"]; + ЧастиАдреса[Индекс].Уровень = Результат["АдресныйОбъект"+ Строка(Индекс) + "Уровень"]; + КонецЦикла; + КонецЕсли; + ЧастиАдреса.Сортировать("Уровень"); + +КонецПроцедуры + +// Распознавание населенного пункта по частям адреса. +// +Функция УстановитьСоответствиеЧастейАдресаИхУровнюДляНаселенногоПункта(ЧастиАдреса, Уровни) Экспорт + + ОбработатьОбщепринятыеСокращения(ЧастиАдреса); + ДоступныеУровни = УровниСодержащиеСовпадения(ЧастиАдреса, Уровни); + Если ДоступныеУровни.Найти(1) <> Неопределено Тогда + УстановитьУровниАдресаПоЧастямАдресаДляНаселенногоПункта(ДоступныеУровни, ЧастиАдреса); + КонецЕсли; + + Возврат ЧастиАдреса; + +КонецФункции + +// Определяет улицу и дополнительную территорию, функция используется для совместимости данных перенесенных из КЛАДР. +// +// Параметры: +// НаименованиеИСокращение - Структура - Наименование и Сокращение искомого объекта. +// Идентификатор - УникальныйИдентификатор - Идентификатора населенного пункт. +// Возвращаемое значение: +// Структура - Результат поиска. +Функция УлицаИДополнительнаяТерритория(Знач НаименованиеИСокращение, Знач Идентификатор) Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | АдресныеОбъекты.Уровень КАК Уровень, + | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ, + | АдресныеОбъекты.КодОкруга КАК КодОкруга, + | АдресныеОбъекты.КодРайона КАК КодРайона, + | АдресныеОбъекты.КодГорода КАК КодГорода, + | АдресныеОбъекты.КодВнутригородскогоРайона КАК КодВнутригородскогоРайона, + | АдресныеОбъекты.КодНаселенногоПункта КАК КодНаселенногоПункта, + | АдресныеОбъекты.КодУлицы КАК КодУлицы, + | АдресныеОбъекты.КодДополнительногоЭлемента КАК КодДополнительногоЭлемента, + | АдресныеОбъекты.КодПодчиненногоЭлемента КАК КодПодчиненногоЭлемента, + | АдресныеОбъекты.Идентификатор КАК Идентификатор, + | АдресныеОбъекты.ПочтовыйИндекс КАК ПочтовыйИндекс, + | АдресныеОбъекты.Наименование КАК Наименование, + | АдресныеОбъекты.Сокращение КАК Сокращение + |ПОМЕСТИТЬ Родитель + |ИЗ + | РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты + |ГДЕ + | АдресныеОбъекты.Идентификатор = &Идентификатор + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | АдресныеОбъекты.Идентификатор КАК Идентификатор, + | АдресныеОбъекты.ПочтовыйИндекс КАК ПочтовыйИндекс, + | АдресныеОбъекты.Наименование КАК Наименование, + | АдресныеОбъекты.Сокращение КАК Сокращение, + | АдресныеОбъектыУлицы.Наименование КАК НаименованиеУлицы, + | АдресныеОбъектыУлицы.Сокращение КАК СокращениеУлицы, + | АдресныеОбъектыУлицы.Идентификатор КАК ИдентификаторУлицы + |ИЗ + | Родитель КАК Родитель + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыУлицы + | ПО (АдресныеОбъектыУлицы.Уровень = 7) + | И (Родитель.КодУлицы = 0) + | И Родитель.КодСубъектаРФ = АдресныеОбъектыУлицы.КодСубъектаРФ + | И Родитель.КодОкруга = АдресныеОбъектыУлицы.КодОкруга + | И Родитель.КодРайона = АдресныеОбъектыУлицы.КодРайона + | И Родитель.КодГорода = АдресныеОбъектыУлицы.КодГорода + | И Родитель.КодВнутригородскогоРайона = АдресныеОбъектыУлицы.КодВнутригородскогоРайона + | И Родитель.КодНаселенногоПункта = АдресныеОбъектыУлицы.КодНаселенногоПункта + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты + | ПО (АдресныеОбъекты.Уровень = 90) + | И (АдресныеОбъектыУлицы.КодОкруга = АдресныеОбъекты.КодОкруга) + | И (АдресныеОбъектыУлицы.КодРайона = АдресныеОбъекты.КодРайона) + | И (АдресныеОбъектыУлицы.КодГорода = АдресныеОбъекты.КодГорода) + | И (АдресныеОбъектыУлицы.КодВнутригородскогоРайона = АдресныеОбъекты.КодВнутригородскогоРайона) + | И (АдресныеОбъектыУлицы.КодНаселенногоПункта = АдресныеОбъекты.КодНаселенногоПункта) + | И (АдресныеОбъектыУлицы.КодУлицы = АдресныеОбъекты.КодУлицы) + | И Родитель.КодСубъектаРФ = АдресныеОбъекты.КодСубъектаРФ + |ГДЕ + | АдресныеОбъекты.Наименование = &Наименование + | И АдресныеОбъекты.Сокращение = &Сокращение"; + + Запрос.УстановитьПараметр("Идентификатор", Идентификатор); + Запрос.УстановитьПараметр("Наименование", НаименованиеИСокращение.Наименование); + Запрос.УстановитьПараметр("Сокращение", НаименованиеИСокращение.Сокращение); + + РезультатЗапроса = Запрос.Выполнить().Выбрать(); + + НайденныйВариант = Новый Структура("ИдентификаторУлицы, Идентификатор, Значение"); + Если РезультатЗапроса.Следующий() Тогда + НайденныйВариант.ИдентификаторУлицы = РезультатЗапроса.ИдентификаторУлицы; + НайденныйВариант.Идентификатор = РезультатЗапроса.Идентификатор; + НайденныйВариант.Значение = РезультатЗапроса.Наименование + " " + РезультатЗапроса.Сокращение; + Возврат НайденныйВариант; + КонецЕсли; + + Возврат Неопределено; + +КонецФункции + +// Определение кодов ОКАТО, ОКТМО, налоговых инспекций ФНС и др. адреса +// +// Параметры: +// Адрес - Строка - Адрес в формате XML +// Источник - Строка - Источник получения кодов адреса, Варианты: "Сервис1С", "ЗагруженныеДанные" +// если явно не указан явно, то определяется в настройках. +// Возвращаемое значение: +// Структура - Коды адреса. +// +Функция КодыАдреса(Адрес, Источник = Неопределено) Экспорт + + Если НЕ (ЭтоКонтактнаяИнформацияВXML(Адрес) ИЛИ ТипЗнч(Адрес) = Тип("Структура")) Тогда + Возврат СтруктураКодовАдреса(); + КонецЕсли; + + ИскатьВезде = Ложь; + Если НЕ ЗначениеЗаполнено(Источник) Тогда + ИскатьВезде = Истина; + Источник = ИсточникДанныхАдресногоКлассификатора(); + Если ПустаяСтрока(Источник) ИЛИ Источник <> "Сервис1С" Тогда + Источник = "ЗагруженныеДанные"; + КонецЕсли; + КонецЕсли; + + Результат = КодыАдресаИКодыКЛАДР(Адрес, Источник).КодыАдреса; + + Для каждого КлючИЗначение Из Результат Цикл + Если ЗначениеЗаполнено(КлючИЗначение.Значение) Тогда + Возврат Результат; + КонецЕсли; + КонецЦикла; + + Если ИскатьВезде Тогда + Источник = ?(Источник = "ЗагруженныеДанные", "Сервис1С", "ЗагруженныеДанные"); + Возврат КодыАдреса(Адрес, Источник); + КонецЕсли; + + Возврат Результат; + +КонецФункции + +// Определение кодов КЛАДР и ОКАТО, ОКТМО, налоговых инспекций ФНС и др. адреса. +// +// Параметры: +// Адрес - Строка - Адрес в формате XML или структура с полями адреса. +// Источник - Строка - Источник получения кодов адреса, Варианты: "Сервис1С", "ЗагруженныеДанные". +// Возвращаемое значение: +// Структура - Содержит 2 структуры: Коды адреса и Коды КЛАДР. +// +Функция КодыАдресаИКодыКЛАДР(Знач Адрес, Источник = Неопределено) Экспорт + + Результат = Новый Структура(); + Результат.Вставить("КодыКЛАДР", СтруктураКодовКЛАДРПоУровням()); + Результат.Вставить("КодыАдреса", СтруктураКодовАдреса()); + + Если НЕ (ЭтоКонтактнаяИнформацияВXML(Адрес) ИЛИ ТипЗнч(Адрес) = Тип("Структура")) Тогда + Возврат Результат; + КонецЕсли; + + Если НЕ ЗначениеЗаполнено(Источник) Тогда + Источник = ИсточникДанныхАдресногоКлассификатора(); + Если ПустаяСтрока(Источник) ИЛИ Источник <> "Сервис1С" Тогда + Источник = "ЗагруженныеДанные"; + КонецЕсли; + КонецЕсли; + + Если ЭтоКонтактнаяИнформацияВXML(Адрес) Тогда + АдресXDTO = ДесериализацияАдресаXDTO(Адрес); + Адрес = АдресXDTO.Состав.Состав; + КонецЕсли; + + Если СтрСравнить(Источник, "Сервис1С") = 0 Тогда + Результат.КодыАдреса = КодыАдресаСервис(Адрес); + // Заполнить коды КЛАДР + Если ЗначениеЗаполнено(Результат.КодыАдреса.КодКЛАДР) Тогда + КодКЛАДР = Формат(Результат.КодыАдреса.КодКЛАДР, "ЧРГ=''; ЧГ=0"); + + Если СтрДлина(КодКЛАДР) = 17 Тогда + Результат.КодыКЛАДР.Улица = КодКЛАДР; + КодКЛАДР = Лев(КодКЛАДР, 13); + КонецЕсли; + + Если СтрДлина(КодКЛАДР) = 12 Тогда + КодКЛАДР = "0" + КодКЛАДР; + КонецЕсли; + + Если СтрДлина(КодКЛАДР) = 13 Тогда + Если ЗначениеЗаполнено(Адрес.СубъектРФ) Тогда + Результат.КодыКЛАДР.Регион = Лев(КодКЛАДР, 2) + "00000000000"; + КонецЕсли; + Район = ?(ПустаяСтрока(Адрес.СвРайМО), "", Адрес.СвРайМО.Район); + Если ЗначениеЗаполнено(Район) Тогда + Результат.КодыКЛАДР.Район = Лев(КодКЛАДР, 5) + "00000000"; + КонецЕсли; + Если ЗначениеЗаполнено(Адрес.Город) Тогда + Результат.КодыКЛАДР.Город = Лев(КодКЛАДР, 8) + "00000"; + КонецЕсли; + Если ЗначениеЗаполнено(Адрес.НаселПункт) Тогда + Результат.КодыКЛАДР.НаселенныйПункт = Лев(КодКЛАДР, 11) + "00"; + КонецЕсли; + + КонецЕсли; + КонецЕсли; + Иначе + Результат = КодыАдресаЗагруженныеДанные(Адрес); + КонецЕсли; + ОпределитьФорматКодов(Результат.КодыАдреса); + + Возврат Результат; + +КонецФункции + +// Функция - Полные наименования сокращений. +// +// Параметры: +// СоответствиеСокращений - Соответствие - сокращения адреса. +// +Процедура ПолныеНаименованияСокращений(СоответствиеСокращений) Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ + | ТаблицаСокращений.Уровень КАК Уровень, + | ТаблицаСокращений.Сокращение КАК Сокращение + |ПОМЕСТИТЬ ТаблицаСокращений + |ИЗ + | &ТаблицаСокращений КАК ТаблицаСокращений + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | УровниСокращенийАдресныхСведений.Сокращение КАК Сокращение, + | УровниСокращенийАдресныхСведений.Уровень КАК Уровень, + | УровниСокращенийАдресныхСведений.Значение КАК Значение + |ИЗ + | ТаблицаСокращений КАК ТаблицаСокращений + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УровниСокращенийАдресныхСведений КАК УровниСокращенийАдресныхСведений + | ПО ТаблицаСокращений.Уровень = УровниСокращенийАдресныхСведений.Уровень + | И (ТаблицаСокращений.Сокращение = УровниСокращенийАдресныхСведений.Сокращение)"; + + ТаблицаСоответствиеСокращений = Новый ТаблицаЗначений; + ТаблицаСоответствиеСокращений.Колонки.Добавить("Уровень", Новый ОписаниеТипов("Число")); + ТаблицаСоответствиеСокращений.Колонки.Добавить("Сокращение", ОбщегоНазначения.ОписаниеТипаСтрока(30)); + Для каждого Элемент Из СоответствиеСокращений Цикл + НоваяСтрока = ТаблицаСоответствиеСокращений.Добавить(); + НоваяСтрока.Уровень = Элемент.Ключ; + НоваяСтрока.Сокращение = Элемент.Значение; + КонецЦикла; + + Запрос.УстановитьПараметр("ТаблицаСокращений", ТаблицаСоответствиеСокращений); + РезультатЗапроса = Запрос.Выполнить().Выбрать(); + + Пока РезультатЗапроса.Следующий() Цикл + СоответствиеСокращений[РезультатЗапроса.Уровень] = РезультатЗапроса.Значение; + КонецЦикла; + +КонецПроцедуры + +// Проверяет наличие записей о регионах в регистре сведений АдресныеОбъекты и заполняет их в случае отсутствия. +// +Функция ПроверитьНачальноеЗаполнение() Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ ПЕРВЫЕ 1 + | АдресныеОбъекты.Уровень + |ИЗ + | РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты + |ГДЕ + | АдресныеОбъекты.Уровень = 1"; + + РезультатЗапроса = Запрос.Выполнить().Выгрузить(); + + Если РезультатЗапроса.Количество() = 0 Тогда + Если ПравоДоступа("Изменение", Метаданные.РегистрыСведений.АдресныеОбъекты) Тогда + ВыполнитьНачальноеЗаполнение(); + Иначе + Возврат Ложь; + КонецЕсли; + КонецЕсли; + + Возврат Истина; + +КонецФункции + +//////////////////////////////////////////////////////////////////////////////// +// Загрузка адресного классификатора. + +// Загрузка всех данных классификатора адресов. +// +// Параметры: +// КодыСубъектовРФ - Массив - Содержит числовые коды регионов-субъектов для загрузки. +// +// ОписаниеФайлов - Строка, Массив - Каталог на сервере, в котором находятся файлы данных. Ожидается, что имена +// файлов будут в верхнем регистре. +// Массив элементов типа ОписаниеПередаваемогоФайла или структур с полями. +// * Имя - Строка - Имя или полное имя передаваемого файла. +// * Хранение - ДвоичныеДанные, Строка - Описание хранения файла. Строка +// может быть путем на файловой системе или адресом во временном +// хранилище. +// ОповещатьОПрогрессе - Булево - Флаг оповещения о прогрессе (см ДлительныеОперации.СообщитьПрогресс). +// +Процедура ЗагрузитьКлассификаторАдресов(КодыСубъектовРФ, ОписаниеФайлов, ОповещатьОПрогрессе = Истина) Экспорт + + ДатаЗагрузки = ТекущаяУниверсальнаяДата(); + + Если ТипЗнч(ОписаниеФайлов) = Тип("Строка") Тогда + // Файлы уже подготовлены + КаталогФайлов = ОбщегоНазначенияКлиентСервер.ДобавитьКонечныйРазделительПути(ОписаниеФайлов); + Иначе + // Извлекаем файлы + КаталогФайлов = ОбщегоНазначенияКлиентСервер.ДобавитьКонечныйРазделительПути( ПолучитьИмяВременногоФайла() ); + СоздатьКаталог(КаталогФайлов); + + Если ТипЗнч(ОписаниеФайлов) <> Тип("Массив") Тогда + // Если ОписаниеФайлов не массив, то данные передаются через константу, после извлечения очищаем передаваемые данные. + ПараметрыАдресногоКлассификатора = Константы.ПараметрыАдресногоКлассификатора.Получить().Получить(); + ОписаниеФайлов = ПараметрыАдресногоКлассификатора.ОписаниеФайлов; + ПараметрыАдресногоКлассификатора.Удалить("ОписаниеФайлов"); + ХранилищеПараметров = Новый ХранилищеЗначения(ПараметрыАдресногоКлассификатора); + Константы.ПараметрыАдресногоКлассификатора.Установить(ХранилищеПараметров); + КонецЕсли; + + Для Каждого ОписаниеФайла Из ОписаниеФайлов Цикл + Файл = Новый Файл(ОписаниеФайла.Имя); + ПолноеИмяФайла = КаталогФайлов + ВРег(Файл.Имя); + + Данные = ОписаниеФайла.Хранение; + ТипДанных = ТипЗнч(Данные); + + Если ТипДанных = Тип("ДвоичныеДанные") Тогда + Данные.Записать(ПолноеИмяФайла); + + ИначеЕсли ЭтоАдресВременногоХранилища(Данные) Тогда + Данные = ПолучитьИзВременногоХранилища(Данные); + Данные.Записать(ПолноеИмяФайла); + + Иначе + ПолноеИмяФайла = Данные; + + КонецЕсли; + + Если ВРег(Прав(ПолноеИмяФайла, 4)) = ".ZIP" Тогда + Архив = Новый ЧтениеZipФайла(ПолноеИмяФайла); + Архив.ИзвлечьВсе(КаталогФайлов, РежимВосстановленияПутейФайловZIP.НеВосстанавливать); + УдалитьВременныйФайл(ПолноеИмяФайла); + КонецЕсли; + + КонецЦикла; + + КонецЕсли; + + ВидыСведенийНеОбработаны = Истина; + + // 2. Все заказанные субъекты + ВсегоСубъектов = КодыСубъектовРФ.Количество(); + НомерПоПорядку = 0; + + Для Каждого СубъектРФ Из КодыСубъектовРФ Цикл + + НомерПоПорядку = НомерПоПорядку + 1; + Если ОповещатьОПрогрессе Тогда + ТекстОсталосьЗагрузить = ?(ВсегоСубъектов - НомерПоПорядку > 0, " (" + НСтр("ru = 'осталось'") + + " " + Формат(ВсегоСубъектов - НомерПоПорядку, "ЧН=") + ")", ""); + ИнформацияОЗагрузке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Загрузка региона ""%1 - %2""'"), + СубъектРФ, АдресныйКлассификатор.НаименованиеРегионаПоКоду(СубъектРФ)) + ТекстОсталосьЗагрузить + "..."; + ДлительныеОперации.СообщитьПрогресс(, ИнформацияОЗагрузке); + КонецЕсли; + + Если ВидыСведенийНеОбработаны Тогда + // Общая справочная информация, понадобится потом. + СлужебныеАдресныеСведения = СлужебныеАдресныеСведения(Неопределено, КаталогФайлов); + // И сразу запишем + Набор = РегистрыСведений.СлужебныеАдресныеСведения.СоздатьНаборЗаписей(); + Набор.Загрузить(СлужебныеАдресныеСведения.Сведения); + ОбновлениеИнформационнойБазы.ЗаписатьДанные(Набор); + + ВидыСведенийНеОбработаны = Ложь; + КонецЕсли; + + Попытка + ВерсияСубъектаРФ = ИнформацияОЗагрузкеВерсии(СубъектРФ).Версия; + Если ВерсияСубъектаРФ <> СлужебныеАдресныеСведения.Версия Тогда + ЗагрузитьАдресныеОбъекты(СубъектРФ, КаталогФайлов, СлужебныеАдресныеСведения.Сведения); + ЗагрузитьДомаЗданияСтроения(СубъектРФ, КаталогФайлов, СлужебныеАдресныеСведения.Сведения); + ЗагрузитьИсториюАдресныхОбъектов(СубъектРФ, КаталогФайлов, СлужебныеАдресныеСведения.Сведения); + ЗагрузитьПричиныИзмененияАдреса(СубъектРФ, КаталогФайлов, СлужебныеАдресныеСведения.Сведения); + ЗагрузитьДополнительныеСведения(СубъектРФ, КаталогФайлов, СлужебныеАдресныеСведения.Сведения); + ЗагрузитьАдресныеОриентиры(СубъектРФ, КаталогФайлов, СлужебныеАдресныеСведения.Сведения); + + // Ставим версию данных загрузки региона. + УстановитьИнформациюОЗагрузкеВерсии(СубъектРФ, СлужебныеАдресныеСведения.Версия, СлужебныеАдресныеСведения.ДатаВерсии, ДатаЗагрузки); + КонецЕсли; + + Исключение + // Во время загрузки возникла ошибка, очищаем частично загруженные данные. + КодыСубъектаРФ = Новый Массив; + КодыСубъектаРФ.Добавить(СубъектРФ); + ОчиститьКлассификаторАдресов(КодыСубъектаРФ); + ВызватьИсключение; + КонецПопытки; + + // Очищаем загруженные данные в старом классификаторе. + ОчиститьСведенияУстаревшегоКлассификатора(СубъектРФ); + + КонецЦикла; + + // 3. Обновляем список субъектов РФ - убеждаемся, что у нас есть все корневые записи. + РегистрыСведений.АдресныеОбъекты.ОбновитьСоставСубъектовРФПоКлассификатору(); + + // 4. Загружаем сокращения адресов. + // Эти данные будут нужны при разборах адреса из строки. + АдресныеСокращения = АдресныеСокращения(КаталогФайлов); + Набор = РегистрыСведений.УровниСокращенийАдресныхСведений.СоздатьНаборЗаписей(); + Набор.Загрузить(АдресныеСокращения.Сведения); + ОбновлениеИнформационнойБазы.ЗаписатьДанные(Набор); // Отключаем всю бизнес-логику для ускорения операции. + + // 5. Очищаем временный каталог. + Если ТипЗнч(ОписаниеФайлов) = Тип("Строка") Тогда + УдалитьВременныйФайл(КаталогФайлов); + КонецЕсли; + +КонецПроцедуры + +// Удаляет временный файл. +// Если при попытке удаления возникает ошибка, она игнорируется - файл будет удален позднее. +// +Процедура УдалитьВременныйФайл(ПолноеИмяФайла) Экспорт + + Если ПустаяСтрока(ПолноеИмяФайла) Тогда + Возврат; + КонецЕсли; + + Попытка + УдалитьФайлы(ПолноеИмяФайла) + Исключение + ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение, + ,, СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не удалось удалить временный файл + |%1 по причине: %2'"), ПолноеИмяФайла, КраткоеПредставлениеОшибки(ИнформацияОбОшибке()))); + КонецПопытки + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Обработчики условных вызовов в эту подсистему. + +// См. одноименную процедуру в общем модуле ПользователиПереопределяемый. +Процедура ПриОпределенииНазначенияРолей(НазначениеРолей) Экспорт + + // ТолькоДляПользователейСистемы. + НазначениеРолей.ТолькоДляПользователейСистемы.Добавить( + Метаданные.Роли.ДобавлениеИзменениеАдресныхСведений.Имя); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +// Заполнение данных для проверки версии по загружаемым данным. +// +Процедура ЗаполнитьВерсиюПоставщикаДанныхВнутр(Результат) + Результат.Данные = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'БСП %1'"), СтандартныеПодсистемыСервер.ВерсияБиблиотеки()); +КонецПроцедуры + +// Конструктор таблицы - результата выбора по почтовому индексу. +// +Функция ТаблицаДанныхДляВыбораПоПочтовомуИндексу() + + Данные = Новый ТаблицаЗначений; + Колонки = Данные.Колонки; + Колонки.Добавить("Неактуален", Новый ОписаниеТипов("Булево")); + Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("УникальныйИдентификатор")); + Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); + Данные.Индексы.Добавить("Идентификатор"); + Данные.Индексы.Добавить("Представление"); + + Возврат Данные; +КонецФункции + // Конструктор таблицы - результата автоподбора. // Функция ТаблицаДанныхАвтоподбора() @@ -1101,36 +1462,312 @@ Данные = Новый ТаблицаЗначений; Колонки = Данные.Колонки; - Колонки.Добавить("Неактуален", ТипБулево); - Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("УникальныйИдентификатор")); - Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); - Колонки.Добавить("РегионЗагружен", ТипБулево); + Колонки.Добавить("Неактуален", ТипБулево); + Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("УникальныйИдентификатор")); + Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); + Колонки.Добавить("РегионЗагружен", ТипБулево); + Колонки.Добавить("Уровень", Новый ОписаниеТипов("Число")); + Колонки.Добавить("ТипАдресногоЭлемента", Новый ОписаниеТипов("Строка")); Возврат Данные КонецФункции -// Заполнение данных для автоподбора по данным сервиса 1С. -// -Процедура ЗаполнитьСписокАвтоподбораЧастиАдресаСервис1С(Результат, Текст, Родитель, Уровни, ДополнительныеПараметры) +Функция ОпределитьИдентификаторыАдреса(АдресДляПроверки) Экспорт - Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); + Результат = Новый Структура("Отказ, ИдентификаторАдресногоОбъекта, ИдентификаторДома, ПодробноеПредставлениеОшибки, КраткоеПредставлениеОшибки", Ложь); - УровниЗапроса = ?(ТипЗнч(Уровни) = Тип("Массив"), Новый ФиксированныйМассив(Уровни), Уровни); - КодЯзыка = ТекущийКодЛокализации(); - Данные = Результат.Данные; + Попытка + ОпределитьИдентификаторыАдресаСервис1С(Результат, АдресДляПроверки); + Исключение + СтруктураОписанияОшибкиПоставщика(Результат, ИнформацияОбОшибке()); + ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка,,, Результат.ПодробноеПредставлениеОшибки); + КонецПопытки; - Порция = Сервис.Autocomplete(Строка(Родитель), УровниЗапроса, Текст, 20, КодЯзыка, Метаданные.Имя); - Список = Порция.ПолучитьСписок("Item"); - Для Каждого Строка Из Список Цикл - СтрокаРезультата = Данные.Добавить(); - СтрокаРезультата.РегионЗагружен = Истина; - СтрокаРезультата.Идентификатор = Новый УникальныйИдентификатор(Строка.ID); - СтрокаРезультата.Представление = Строка.Presentation; - СтрокаРезультата.Неактуален = НЕ Строка.Actual; + Возврат Результат; + +КонецФункции + +// Заполнение результата проверки адресного объекта по загруженным данным. +// +Процедура ЗаполнитьРезультатПроверкиАдресаПоКлассификаторуВнутр(Результат, АдресаДляПроверки) + + Данные = Результат.Данные; + Для Каждого ЭлементПроверки Из АдресаДляПроверки Цикл + ОдиночнаяПроверка = АнализОдногоАдресаПоКлассификатору(ЭлементПроверки.Адрес, ЭлементПроверки.Уровни); + Данные.Добавить(ОдиночнаяПроверка); КонецЦикла; КонецПроцедуры +// Заполнение актуальных данных адресного объекта или ориентира из загруженных данных. +// +Процедура ЗаполнитьАктуальныеАдресныеСведенияВнутр(Результат, Идентификатор) + + ТекстЗапроса = "ВЫБРАТЬ + | СубъектРФ.Наименование + "" "" + СубъектРФ.Сокращение КАК СубъектРФПредставление, + | Округ.Наименование + "" "" + Округ.Сокращение КАК ОкругПредставление, + | Район.Наименование + "" "" + Район.Сокращение КАК РайонПредставление, + | Город.Наименование + "" "" + Город.Сокращение КАК ГородПредставление, + | ВнутригородскойРайон.Наименование + "" "" + ВнутригородскойРайон.Сокращение КАК ВнутригородскойРайонПредставление, + | НаселенныйПункт.Наименование + "" "" + НаселенныйПункт.Сокращение КАК НаселенныйПунктПредставление, + | Улица.Наименование + "" "" + Улица.Сокращение КАК УлицаПредставление, + | Дополнительный.Наименование + "" "" + Дополнительный.Сокращение КАК ДополнительныйПредставление, + | Подчиненный.Наименование + "" "" + Подчиненный.Сокращение КАК ПодчиненныйПредставление, + | + | ОбъектАдреса.ОписаниеОриентира КАК ОписаниеОриентира, + | + | ОбъектАдреса.ПочтовыйИндекс КАК ПочтовыйИндекс, + | ДополнительныеДанные.OKATO КАК ОКАТО, + | ДополнительныеДанные.ОКТМО КАК ОКТМО, + | + | СлужебныеАдресныеСведенияИндекс.Значение КАК ТипАдрЭлПочтовыйИндекс, + | ЕСТЬNULL(СлужебныеАдресныеСведенияДополнительный.Значение, УмолчаниеСлужебныхАдресныхСведенийДополнительный.Значение) КАК ТипАдрЭлДополнительный, + | ЕСТЬNULL(СлужебныеАдресныеСведенияПодчиненный.Значение, УмолчаниеСлужебныхАдресныхСведенийПодчиненный.Значение) КАК ТипАдрЭлПодчиненный + | + |ИЗ ( + | ВЫБРАТЬ + | КодСубъектаРФ КАК КодСубъектаРФ, + | КодОкруга КАК КодОкруга, + | КодРайона КАК КодРайона, + | КодГорода КАК КодГорода, + | КодВнутригородскогоРайона КАК КодВнутригородскогоРайона, + | КодНаселенногоПункта КАК КодНаселенногоПункта, + | КодУлицы КАК КодУлицы, + | КодДополнительногоЭлемента КАК КодДополнительногоЭлемента, + | КодПодчиненногоЭлемента КАК КодПодчиненногоЭлемента, + | ПочтовыйИндекс КАК ПочтовыйИндекс, + | Дополнительно КАК Дополнительно, + | NULL КАК ОписаниеОриентира + | ИЗ + | РегистрСведений.АдресныеОбъекты + | ГДЕ + | Идентификатор = &Идентификатор + | ОБЪЕДИНИТЬ ВСЕ + | ВЫБРАТЬ + | РегистрАдресныйОбъект.КодСубъектаРФ КАК КодСубъектаРФ, + | РегистрАдресныйОбъект.КодОкруга КАК КодОкруга, + | РегистрАдресныйОбъект.КодРайона КАК КодРайона, + | РегистрАдресныйОбъект.КодГорода КАК КодГорода, + | РегистрАдресныйОбъект.КодВнутригородскогоРайона КАК КодВнутригородскогоРайона, + | РегистрАдресныйОбъект.КодНаселенногоПункта КАК КодНаселенногоПункта, + | РегистрАдресныйОбъект.КодУлицы КАК КодУлицы, + | РегистрАдресныйОбъект.КодДополнительногоЭлемента КАК КодДополнительногоЭлемента, + | РегистрАдресныйОбъект.КодПодчиненногоЭлемента КАК КодПодчиненногоЭлемента, + | Ориентир.ПочтовыйИндекс КАК ПочтовыйИндекс, + | Ориентир.Дополнительно КАК Дополнительно, + | Ориентир.Описание КАК ОписаниеОриентира + | ИЗ + | РегистрСведений.ОриентирыАдресныхОбъектов КАК Ориентир + | ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.АдресныеОбъекты КАК РегистрАдресныйОбъект + | ПО + | РегистрАдресныйОбъект.Идентификатор = Ориентир.АдресныйОбъект + | ГДЕ + | Ориентир.Идентификатор = &Идентификатор + | + |) КАК ОбъектАдреса + | + |// Иерархия объекта + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.АдресныеОбъекты КАК СубъектРФ + |ПО + | СубъектРФ.Уровень = 1 + | И СубъектРФ.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ + | И СубъектРФ.КодОкруга = 0 + | И СубъектРФ.КодРайона = 0 + | И СубъектРФ.КодГорода = 0 + | И СубъектРФ.КодВнутригородскогоРайона = 0 + | И СубъектРФ.КодНаселенногоПункта = 0 + | И СубъектРФ.КодУлицы = 0 + | И СубъектРФ.КодДополнительногоЭлемента = 0 + | И СубъектРФ.КодПодчиненногоЭлемента = 0 + | + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.АдресныеОбъекты КАК Округ + |ПО + | Округ.Уровень = 2 + | И Округ.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ + | И Округ.КодОкруга = ОбъектАдреса.КодОкруга + | И Округ.КодРайона = 0 + | И Округ.КодГорода = 0 + | И Округ.КодВнутригородскогоРайона = 0 + | И Округ.КодНаселенногоПункта = 0 + | И Округ.КодУлицы = 0 + | И Округ.КодДополнительногоЭлемента = 0 + | И Округ.КодПодчиненногоЭлемента = 0 + | + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.АдресныеОбъекты КАК Район + |ПО + | Район.Уровень = 3 + | И Район.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ + | И Район.КодОкруга = ОбъектАдреса.КодОкруга + | И Район.КодРайона = ОбъектАдреса.КодРайона + | И Район.КодГорода = 0 + | И Район.КодВнутригородскогоРайона = 0 + | И Район.КодНаселенногоПункта = 0 + | И Район.КодУлицы = 0 + | И Район.КодДополнительногоЭлемента = 0 + | И Район.КодПодчиненногоЭлемента = 0 + | + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.АдресныеОбъекты КАК Город + |ПО + | Город.Уровень = 4 + | И Город.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ + | И Город.КодОкруга = ОбъектАдреса.КодОкруга + | И Город.КодРайона = ОбъектАдреса.КодРайона + | И Город.КодГорода = ОбъектАдреса.КодГорода + | И Город.КодВнутригородскогоРайона = 0 + | И Город.КодНаселенногоПункта = 0 + | И Город.КодУлицы = 0 + | И Город.КодДополнительногоЭлемента = 0 + | И Город.КодПодчиненногоЭлемента = 0 + | + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.АдресныеОбъекты КАК ВнутригородскойРайон + |ПО + | ВнутригородскойРайон.Уровень = 5 + | И ВнутригородскойРайон.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ + | И ВнутригородскойРайон.КодОкруга = ОбъектАдреса.КодОкруга + | И ВнутригородскойРайон.КодРайона = ОбъектАдреса.КодРайона + | И ВнутригородскойРайон.КодГорода = ОбъектАдреса.КодГорода + | И ВнутригородскойРайон.КодВнутригородскогоРайона = ОбъектАдреса.КодВнутригородскогоРайона + | И ВнутригородскойРайон.КодНаселенногоПункта = 0 + | И ВнутригородскойРайон.КодУлицы = 0 + | И ВнутригородскойРайон.КодДополнительногоЭлемента = 0 + | И ВнутригородскойРайон.КодПодчиненногоЭлемента = 0 + | + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.АдресныеОбъекты КАК НаселенныйПункт + |ПО + | НаселенныйПункт.Уровень = 6 + | И НаселенныйПункт.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ + | И НаселенныйПункт.КодОкруга = ОбъектАдреса.КодОкруга + | И НаселенныйПункт.КодРайона = ОбъектАдреса.КодРайона + | И НаселенныйПункт.КодГорода = ОбъектАдреса.КодГорода + | И НаселенныйПункт.КодВнутригородскогоРайона = ОбъектАдреса.КодВнутригородскогоРайона + | И НаселенныйПункт.КодНаселенногоПункта = ОбъектАдреса.КодНаселенногоПункта + | И НаселенныйПункт.КодУлицы = 0 + | И НаселенныйПункт.КодДополнительногоЭлемента = 0 + | И НаселенныйПункт.КодПодчиненногоЭлемента = 0 + | + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.АдресныеОбъекты КАК Улица + |ПО + | Улица.Уровень = 7 + | И Улица.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ + | И Улица.КодОкруга = ОбъектАдреса.КодОкруга + | И Улица.КодРайона = ОбъектАдреса.КодРайона + | И Улица.КодГорода = ОбъектАдреса.КодГорода + | И Улица.КодВнутригородскогоРайона = ОбъектАдреса.КодВнутригородскогоРайона + | И Улица.КодНаселенногоПункта = ОбъектАдреса.КодНаселенногоПункта + | И Улица.КодУлицы = ОбъектАдреса.КодУлицы + | И Улица.КодДополнительногоЭлемента = 0 + | И Улица.КодПодчиненногоЭлемента = 0 + | + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.АдресныеОбъекты КАК Дополнительный + |ПО + | Дополнительный.Уровень = 90 + | И Дополнительный.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ + | И Дополнительный.КодОкруга = ОбъектАдреса.КодОкруга + | И Дополнительный.КодРайона = ОбъектАдреса.КодРайона + | И Дополнительный.КодГорода = ОбъектАдреса.КодГорода + | И Дополнительный.КодВнутригородскогоРайона = ОбъектАдреса.КодВнутригородскогоРайона + | И Дополнительный.КодНаселенногоПункта = ОбъектАдреса.КодНаселенногоПункта + | И Дополнительный.КодУлицы = ОбъектАдреса.КодУлицы + | И Дополнительный.КодДополнительногоЭлемента = ОбъектАдреса.КодДополнительногоЭлемента + | И Дополнительный.КодПодчиненногоЭлемента = 0 + | + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.АдресныеОбъекты КАК Подчиненный + |ПО + | Подчиненный.Уровень = 91 + | И Подчиненный.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ + | И Подчиненный.КодОкруга = ОбъектАдреса.КодОкруга + | И Подчиненный.КодРайона = ОбъектАдреса.КодРайона + | И Подчиненный.КодГорода = ОбъектАдреса.КодГорода + | И Подчиненный.КодВнутригородскогоРайона = ОбъектАдреса.КодВнутригородскогоРайона + | И Подчиненный.КодНаселенногоПункта = ОбъектАдреса.КодНаселенногоПункта + | И Подчиненный.КодУлицы = ОбъектАдреса.КодУлицы + | И Подчиненный.КодДополнительногоЭлемента = ОбъектАдреса.КодДополнительногоЭлемента + | И Подчиненный.КодПодчиненногоЭлемента = ОбъектАдреса.КодПодчиненногоЭлемента + | + |// Дополнительные данные + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.ДополнительныеАдресныеСведения КАК ДополнительныеДанные + |ПО + | ДополнительныеДанные.Идентификатор = ОбъектАдреса.Дополнительно + | + |// Значения типов для контактной информации + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.СлужебныеАдресныеСведения КАК СлужебныеАдресныеСведенияИндекс + |ПО + | СлужебныеАдресныеСведенияИндекс.Тип = ""ТипАдрЭл"" + | И СлужебныеАдресныеСведенияИндекс.Идентификатор = 0 + | И СлужебныеАдресныеСведенияИндекс.Ключ = ""ПочтовыйИндекс"" + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.СлужебныеАдресныеСведения КАК СлужебныеАдресныеСведенияДополнительный + |ПО + | СлужебныеАдресныеСведенияДополнительный.Тип = ""ТипАдрЭл"" + | И СлужебныеАдресныеСведенияДополнительный.Идентификатор = 90 + | И СлужебныеАдресныеСведенияДополнительный.Ключ = Дополнительный.Сокращение + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.СлужебныеАдресныеСведения КАК СлужебныеАдресныеСведенияПодчиненный + |ПО + | СлужебныеАдресныеСведенияПодчиненный.Тип = ""ТипАдрЭл"" + | И СлужебныеАдресныеСведенияПодчиненный.Идентификатор = 91 + | И СлужебныеАдресныеСведенияПодчиненный.Ключ = Подчиненный.Сокращение + | + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.СлужебныеАдресныеСведения КАК УмолчаниеСлужебныхАдресныхСведенийДополнительный + |ПО + | СлужебныеАдресныеСведенияДополнительный.Тип = ""ТипАдрЭл"" + | И СлужебныеАдресныеСведенияДополнительный.Идентификатор = 90 + | И СлужебныеАдресныеСведенияДополнительный.Ключ = """" + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.СлужебныеАдресныеСведения КАК УмолчаниеСлужебныхАдресныхСведенийПодчиненный + |ПО + | СлужебныеАдресныеСведенияПодчиненный.Тип = ""ТипАдрЭл"" + | И СлужебныеАдресныеСведенияПодчиненный.Идентификатор = 91 + | И СлужебныеАдресныеСведенияПодчиненный.Ключ = """""; + + // Пустой адрес + Адрес = ФабрикаXDTO.Создать( ФабрикаXDTO.Тип(ПространствоИменАдресаРФ(), "АдресРФ") ); + Результат.Данные = Адрес; + + Запрос = Новый Запрос(ТекстЗапроса); + Запрос.УстановитьПараметр("Идентификатор", Новый УникальныйИдентификатор(Идентификатор)); + Выборка = Запрос.Выполнить().Выбрать(); + Если Не Выборка.Следующий() Тогда + Возврат; + КонецЕсли; + + УстановитьXDTOРеквизитОбъекта(Адрес, "СубъектРФ", Выборка.СубъектРФПредставление); + УстановитьXDTOРеквизитОбъекта(Адрес, "Округ", Выборка.ОкругПредставление); + УстановитьXDTOРеквизитОбъекта(Адрес, "СвРайМО/Район", Выборка.РайонПредставление); + УстановитьXDTOРеквизитОбъекта(Адрес, "Город", Выборка.ГородПредставление); + УстановитьXDTOРеквизитОбъекта(Адрес, "НаселПункт", Выборка.НаселенныйПунктПредставление); + УстановитьXDTOРеквизитОбъекта(Адрес, "ВнутригРайон", Выборка.ВнутригородскойРайонПредставление); + УстановитьXDTOРеквизитОбъекта(Адрес, "Улица", Выборка.УлицаПредставление); + УстановитьXDTOРеквизитОбъекта(Адрес, "ОКАТО", Выборка.ОКАТО); + УстановитьXDTOРеквизитОбъекта(Адрес, "ОКТМО", Выборка.ОКТМО); + УстановитьXDTOРеквизитОбъекта(Адрес, "Местоположение", Выборка.ОписаниеОриентира); + + + // Дополнительные свойства + ДобавитьXDTOРеквизитСписка(Адрес, "ДопАдрЭл", Новый Структура("ТипАдрЭл, Значение", Выборка.ТипАдрЭлПочтовыйИндекс, Выборка.ПочтовыйИндекс)); + + Если НЕ ПустаяСтрока(Выборка.ДополнительныйПредставление) Тогда + ДобавитьXDTOРеквизитСписка(Адрес, "ДопАдрЭл", Новый Структура("ТипАдрЭл, Значение", КодДополнительногоЭлемента(Выборка.ДополнительныйПредставление), + Выборка.ДополнительныйПредставление)); + КонецЕсли; + + ДобавитьXDTOРеквизитСписка(Адрес, "ДопАдрЭл", Новый Структура("ТипАдрЭл, Значение", "10400000", Выборка.ПодчиненныйПредставление)); + +КонецПроцедуры + // Заполнение данных для автоподбора из загруженных данных. // Процедура ЗаполнитьСписокАвтоподбораЧастиАдресаВнутр(Результат, Текст, Родитель, УровниЗапроса, ДополнительныеПараметры) @@ -1482,6 +2119,7 @@ | | АдресныйОбъект.Наименование КАК Наименование, | АдресныйОбъект.Сокращение КАК Сокращение, + | АдресныйОбъект.Уровень КАК Уровень, | | РегионЗагружен КАК РегионЗагружен, | НЕ АдресныйОбъект.Актуален КАК Неактуален @@ -1634,6 +2272,7 @@ | И Подчиненный.Идентификатор <> АдресныйОбъект.Идентификатор | |УПОРЯДОЧИТЬ ПО + | АдресныйОбъект.Уровень, | ПодчиненныйНаименование, | ДополнительныйНаименование, | УлицаНаименование, @@ -1651,7 +2290,7 @@ Для Каждого Строка Из Запрос.Выполнить().Выгрузить() Цикл СтрокаРезультата = Данные.Добавить(); - ЗаполнитьЗначенияСвойств(СтрокаРезультата, Строка, "Идентификатор, РегионЗагружен, Неактуален"); + ЗаполнитьЗначенияСвойств(СтрокаРезультата, Строка, "Идентификатор, РегионЗагружен, Неактуален, Уровень"); Представление = ""; ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.Наименование, Строка.Сокращение); @@ -1669,446 +2308,878 @@ Если СтрокаРезультата.РегионЗагружен = Ложь И НЕ ЗначениеЗаполнено(Строка.СубъектРФНаименование) Тогда СтрокаРезультата.Неактуален = Ложь; КонецЕсли; - КонецЦикла; КонецПроцедуры -// Возвращает актуальные данные адресного объекта или ориентира с точностью доя подчиненного (без домов). -// -// Параметры: -// Идентификатор - УникальныйИдентификатор - Идентификатор адресного объекта или ориентира. +// Заполнение адреса по индексу из загруженных данных. // -// Возвращаемое значение: -// Структура - найденные варианты. Содержит поля: -// * Отказ - Булево - Поставщик не доступен. -// * ПодробноеПредставлениеОшибки - Строка - Описание ошибки, если поставщик недоступен. Неопределено, если Отказ -// = Ложь. -// * КраткоеПредставлениеОшибки - Строка - Описание ошибки, если поставщик недоступен. Неопределено, если Отказ -// = Ложь. -// * Данные - ОбъектXDTO - Адрес, см (http://www.v8.1c.ru/ssl/AddressSystem) АдресРФ. -// -Функция АктуальныеАдресныеСведения(Идентификатор) Экспорт - - Данные = Неопределено; - Результат = Новый Структура("Данные", Данные); - СтруктураОписанияОшибкиПоставщика(Результат); - - Источник = ИсточникДанныхАдресногоКлассификатора(); - Если ПустаяСтрока(Источник) Тогда - // Локальное, всегда корректное. - ЗаполнитьАктуальныеАдресныеСведенияВнутр(Результат, Идентификатор); - - ИначеЕсли Источник = "Сервис1С" Тогда - // Веб сервис 1С, может быть на обслуживании. - Попытка - ЗаполнитьАктуальныеАдресныеСведенияСервис1С(Результат, Идентификатор); - Исключение - СтруктураОписанияОшибкиПоставщика(Результат, ИнформацияОбОшибке()); - ЗаписьЖурналаРегистрации( СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка, , , Результат.ПодробноеПредставлениеОшибки); - КонецПопытки; - - КонецЕсли; - - Возврат Результат; - -КонецФункции - -// Заполнение актуальных данных адресного объекта или ориентира по данным сервиса 1С. -// -Процедура ЗаполнитьАктуальныеАдресныеСведенияСервис1С(Результат, Идентификатор) - - Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); - - КодЯзыка = ТекущийКодЛокализации(); - Данные = Сервис.GetActualInfo(Строка(Идентификатор), КодЯзыка, Метаданные.Имя); - Результат.Данные = Данные; - -КонецПроцедуры - -// Заполнение актуальных данных адресного объекта или ориентира из загруженных данных. -// -Процедура ЗаполнитьАктуальныеАдресныеСведенияВнутр(Результат, Идентификатор) +Процедура ЗаполнитьАдресаПоПочтовомуИндексуКлассификатораВнутр(Результат, Индекс, Уровни, ДополнительныеПараметры) ТекстЗапроса = "ВЫБРАТЬ - | СубъектРФ.Наименование + "" "" + СубъектРФ.Сокращение КАК СубъектРФПредставление, - | Округ.Наименование + "" "" + Округ.Сокращение КАК ОкругПредставление, - | Район.Наименование + "" "" + Район.Сокращение КАК РайонПредставление, - | Город.Наименование + "" "" + Город.Сокращение КАК ГородПредставление, - | ВнутригородскойРайон.Наименование + "" "" + ВнутригородскойРайон.Сокращение КАК ВнутригородскойРайонПредставление, - | НаселенныйПункт.Наименование + "" "" + НаселенныйПункт.Сокращение КАК НаселенныйПунктПредставление, - | Улица.Наименование + "" "" + Улица.Сокращение КАК УлицаПредставление, - | Дополнительный.Наименование + "" "" + Дополнительный.Сокращение КАК ДополнительныйПредставление, - | Подчиненный.Наименование + "" "" + Подчиненный.Сокращение КАК ПодчиненныйПредставление, + | АдресныеОбъекты.Уровень КАК Уровень, + | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ, + | АдресныеОбъекты.КодОкруга КАК КодОкруга, + | АдресныеОбъекты.КодРайона КАК КодРайона, + | АдресныеОбъекты.КодГорода КАК КодГорода, + | АдресныеОбъекты.КодВнутригородскогоРайона КАК КодВнутригородскогоРайона, + | АдресныеОбъекты.КодНаселенногоПункта КАК КодНаселенногоПункта, + | АдресныеОбъекты.КодУлицы КАК КодУлицы, + | АдресныеОбъекты.КодДополнительногоЭлемента КАК КодДополнительногоЭлемента, + | АдресныеОбъекты.КодПодчиненногоЭлемента КАК КодПодчиненногоЭлемента, + | АдресныеОбъекты.Идентификатор КАК Идентификатор, + | ДомаЗданияСтроения.ПочтовыйИндекс КАК ПочтовыйИндекс, + | АдресныеОбъекты.Наименование КАК Наименование, + | АдресныеОбъекты.Сокращение КАК Сокращение, + | АдресныеОбъекты.Дополнительно КАК Дополнительно, + | АдресныеОбъекты.КодКЛАДР КАК КодКЛАДР, + | АдресныеОбъекты.Актуален КАК Актуален, + | ВЫБОР КОГДА АдресныеОбъекты.Актуален ТОГДА ЛОЖЬ ИНАЧЕ ИСТИНА КОНЕЦ КАК Неактуален + |ПОМЕСТИТЬ АдресаПоИндексу + |ИЗ + | РегистрСведений.ДомаЗданияСтроения КАК ДомаЗданияСтроения + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты + | ПО ДомаЗданияСтроения.АдресныйОбъект = АдресныеОбъекты.Идентификатор + |ГДЕ + | ДомаЗданияСтроения.ПочтовыйИндекс = &ПочтовыйИндекс + | И АдресныеОбъекты.ПочтовыйИндекс = 0 + | И АдресныеОбъекты.Уровень В(&Уровни) | - | ОбъектАдреса.ОписаниеОриентира КАК ОписаниеОриентира, - | - | ОбъектАдреса.ПочтовыйИндекс КАК ПочтовыйИндекс, - | ДополнительныеДанные.OKATO КАК ОКАТО, - | ДополнительныеДанные.ОКТМО КАК ОКТМО, - | - | СлужебныеАдресныеСведенияИндекс.Значение КАК ТипАдрЭлПочтовыйИндекс, - | ЕСТЬNULL(СлужебныеАдресныеСведенияДополнительный.Значение, УмолчаниеСлужебныхАдресныхСведенийДополнительный.Значение) КАК ТипАдрЭлДополнительный, - | ЕСТЬNULL(СлужебныеАдресныеСведенияПодчиненный.Значение, УмолчаниеСлужебныхАдресныхСведенийПодчиненный.Значение) КАК ТипАдрЭлПодчиненный + |ОБЪЕДИНИТЬ ВСЕ | - |ИЗ ( - | ВЫБРАТЬ - | КодСубъектаРФ КАК КодСубъектаРФ, - | КодОкруга КАК КодОкруга, - | КодРайона КАК КодРайона, - | КодГорода КАК КодГорода, - | КодВнутригородскогоРайона КАК КодВнутригородскогоРайона, - | КодНаселенногоПункта КАК КодНаселенногоПункта, - | КодУлицы КАК КодУлицы, - | КодДополнительногоЭлемента КАК КодДополнительногоЭлемента, - | КодПодчиненногоЭлемента КАК КодПодчиненногоЭлемента, - | ПочтовыйИндекс КАК ПочтовыйИндекс, - | Дополнительно КАК Дополнительно, - | NULL КАК ОписаниеОриентира - | ИЗ - | РегистрСведений.АдресныеОбъекты - | ГДЕ - | Идентификатор = &Идентификатор - | ОБЪЕДИНИТЬ ВСЕ - | ВЫБРАТЬ - | РегистрАдресныйОбъект.КодСубъектаРФ КАК КодСубъектаРФ, - | РегистрАдресныйОбъект.КодОкруга КАК КодОкруга, - | РегистрАдресныйОбъект.КодРайона КАК КодРайона, - | РегистрАдресныйОбъект.КодГорода КАК КодГорода, - | РегистрАдресныйОбъект.КодВнутригородскогоРайона КАК КодВнутригородскогоРайона, - | РегистрАдресныйОбъект.КодНаселенногоПункта КАК КодНаселенногоПункта, - | РегистрАдресныйОбъект.КодУлицы КАК КодУлицы, - | РегистрАдресныйОбъект.КодДополнительногоЭлемента КАК КодДополнительногоЭлемента, - | РегистрАдресныйОбъект.КодПодчиненногоЭлемента КАК КодПодчиненногоЭлемента, - | Ориентир.ПочтовыйИндекс КАК ПочтовыйИндекс, - | Ориентир.Дополнительно КАК Дополнительно, - | Ориентир.Описание КАК ОписаниеОриентира - | ИЗ - | РегистрСведений.ОриентирыАдресныхОбъектов КАК Ориентир - | ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.АдресныеОбъекты КАК РегистрАдресныйОбъект - | ПО - | РегистрАдресныйОбъект.Идентификатор = Ориентир.АдресныйОбъект - | ГДЕ - | Ориентир.Идентификатор = &Идентификатор - | - |) КАК ОбъектАдреса - | - |// Иерархия объекта - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.АдресныеОбъекты КАК СубъектРФ - |ПО - | СубъектРФ.Уровень = 1 - | И СубъектРФ.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ - | И СубъектРФ.КодОкруга = 0 - | И СубъектРФ.КодРайона = 0 - | И СубъектРФ.КодГорода = 0 - | И СубъектРФ.КодВнутригородскогоРайона = 0 - | И СубъектРФ.КодНаселенногоПункта = 0 - | И СубъектРФ.КодУлицы = 0 - | И СубъектРФ.КодДополнительногоЭлемента = 0 - | И СубъектРФ.КодПодчиненногоЭлемента = 0 + |ВЫБРАТЬ + | АдресныеОбъекты.Уровень, + | АдресныеОбъекты.КодСубъектаРФ, + | АдресныеОбъекты.КодОкруга, + | АдресныеОбъекты.КодРайона, + | АдресныеОбъекты.КодГорода, + | АдресныеОбъекты.КодВнутригородскогоРайона, + | АдресныеОбъекты.КодНаселенногоПункта, + | АдресныеОбъекты.КодУлицы, + | АдресныеОбъекты.КодДополнительногоЭлемента, + | АдресныеОбъекты.КодПодчиненногоЭлемента, + | АдресныеОбъекты.Идентификатор, + | АдресныеОбъекты.ПочтовыйИндекс, + | АдресныеОбъекты.Наименование, + | АдресныеОбъекты.Сокращение, + | АдресныеОбъекты.Дополнительно, + | АдресныеОбъекты.КодКЛАДР, + | АдресныеОбъекты.Актуален КАК Актуален, + | ВЫБОР КОГДА АдресныеОбъекты.Актуален ТОГДА ЛОЖЬ ИНАЧЕ ИСТИНА КОНЕЦ КАК Неактуален + |ИЗ + | РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты + |ГДЕ + | АдресныеОбъекты.ПочтовыйИндекс = &ПочтовыйИндекс + | И АдресныеОбъекты.Уровень В(&Уровни) + |; | - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.АдресныеОбъекты КАК Округ - |ПО - | Округ.Уровень = 2 - | И Округ.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ - | И Округ.КодОкруга = ОбъектАдреса.КодОкруга - | И Округ.КодРайона = 0 - | И Округ.КодГорода = 0 - | И Округ.КодВнутригородскогоРайона = 0 - | И Округ.КодНаселенногоПункта = 0 - | И Округ.КодУлицы = 0 - | И Округ.КодДополнительногоЭлемента = 0 - | И Округ.КодПодчиненногоЭлемента = 0 + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | СубъектРФ.Наименование КАК СубъектРФНаименование, + | СубъектРФ.Сокращение КАК СубъектРФСокращение, + | Округ.Наименование КАК ОкругНаименование, + | Округ.Сокращение КАК ОкругСокращение, + | Район.Наименование КАК РайонНаименование, + | Район.Сокращение КАК РайонСокращение, + | Город.Наименование КАК ГородНаименование, + | Город.Сокращение КАК ГородСокращение, + | ВнутригородскойРайон.Наименование КАК ВнутригородскойРайонНаименование, + | ВнутригородскойРайон.Сокращение КАК ВнутригородскойРайонСокращение, + | НаселенныйПункт.Наименование КАК НаселенныйПунктНаименование, + | НаселенныйПункт.Сокращение КАК НаселенныйПунктСокращение, + | Улица.Наименование КАК УлицаНаименование, + | Улица.Сокращение КАК УлицаСокращение, + | Дополнительный.Наименование КАК ДополнительныйНаименование, + | Дополнительный.Сокращение КАК ДополнительныйСокращение, + | Подчиненный.Наименование КАК ПодчиненныйНаименование, + | Подчиненный.Сокращение КАК ПодчиненныйСокращение, + | АдресныйОбъект.Идентификатор КАК Идентификатор, + | АдресныйОбъект.Наименование КАК Наименование, + | АдресныйОбъект.Сокращение КАК Сокращение, + | АдресныйОбъект.Актуален КАК Актуален, + | АдресныйОбъект.Неактуален КАК Неактуален + |ИЗ + | АдресаПоИндексу КАК АдресныйОбъект + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК СубъектРФ + | ПО (СубъектРФ.Уровень = 1) + | И (СубъектРФ.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) + | И (СубъектРФ.КодОкруга = 0) + | И (СубъектРФ.КодРайона = 0) + | И (СубъектРФ.КодГорода = 0) + | И (СубъектРФ.КодВнутригородскогоРайона = 0) + | И (СубъектРФ.КодНаселенногоПункта = 0) + | И (СубъектРФ.КодУлицы = 0) + | И (СубъектРФ.КодДополнительногоЭлемента = 0) + | И (СубъектРФ.КодПодчиненногоЭлемента = 0) + | И (СубъектРФ.Идентификатор <> АдресныйОбъект.Идентификатор) + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК Округ + | ПО (Округ.Уровень = 2) + | И (Округ.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) + | И (Округ.КодОкруга = АдресныйОбъект.КодОкруга) + | И (Округ.КодРайона = 0) + | И (Округ.КодГорода = 0) + | И (Округ.КодВнутригородскогоРайона = 0) + | И (Округ.КодНаселенногоПункта = 0) + | И (Округ.КодУлицы = 0) + | И (Округ.КодДополнительногоЭлемента = 0) + | И (Округ.КодПодчиненногоЭлемента = 0) + | И (Округ.Идентификатор <> АдресныйОбъект.Идентификатор) + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК Район + | ПО (Район.Уровень = 3) + | И (Район.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) + | И (Район.КодОкруга = АдресныйОбъект.КодОкруга) + | И (Район.КодРайона = АдресныйОбъект.КодРайона) + | И (Район.КодГорода = 0) + | И (Район.КодВнутригородскогоРайона = 0) + | И (Район.КодНаселенногоПункта = 0) + | И (Район.КодУлицы = 0) + | И (Район.КодДополнительногоЭлемента = 0) + | И (Район.КодПодчиненногоЭлемента = 0) + | И (Район.Идентификатор <> АдресныйОбъект.Идентификатор) + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК Город + | ПО (Город.Уровень = 4) + | И (Город.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) + | И (Город.КодОкруга = АдресныйОбъект.КодОкруга) + | И (Город.КодРайона = АдресныйОбъект.КодРайона) + | И (Город.КодГорода = АдресныйОбъект.КодГорода) + | И (Город.КодВнутригородскогоРайона = 0) + | И (Город.КодНаселенногоПункта = 0) + | И (Город.КодУлицы = 0) + | И (Город.КодДополнительногоЭлемента = 0) + | И (Город.КодПодчиненногоЭлемента = 0) + | И (Город.Идентификатор <> АдресныйОбъект.Идентификатор) + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК ВнутригородскойРайон + | ПО (ВнутригородскойРайон.Уровень = 5) + | И (ВнутригородскойРайон.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) + | И (ВнутригородскойРайон.КодОкруга = АдресныйОбъект.КодОкруга) + | И (ВнутригородскойРайон.КодРайона = АдресныйОбъект.КодРайона) + | И (ВнутригородскойРайон.КодГорода = АдресныйОбъект.КодГорода) + | И (ВнутригородскойРайон.КодВнутригородскогоРайона = АдресныйОбъект.КодВнутригородскогоРайона) + | И (ВнутригородскойРайон.КодНаселенногоПункта = 0) + | И (ВнутригородскойРайон.КодУлицы = 0) + | И (ВнутригородскойРайон.КодДополнительногоЭлемента = 0) + | И (ВнутригородскойРайон.КодПодчиненногоЭлемента = 0) + | И (ВнутригородскойРайон.Идентификатор <> АдресныйОбъект.Идентификатор) + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК НаселенныйПункт + | ПО (НаселенныйПункт.Уровень = 6) + | И (НаселенныйПункт.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) + | И (НаселенныйПункт.КодОкруга = АдресныйОбъект.КодОкруга) + | И (НаселенныйПункт.КодРайона = АдресныйОбъект.КодРайона) + | И (НаселенныйПункт.КодГорода = АдресныйОбъект.КодГорода) + | И (НаселенныйПункт.КодВнутригородскогоРайона = АдресныйОбъект.КодВнутригородскогоРайона) + | И (НаселенныйПункт.КодНаселенногоПункта = АдресныйОбъект.КодНаселенногоПункта) + | И (НаселенныйПункт.КодУлицы = 0) + | И (НаселенныйПункт.КодДополнительногоЭлемента = 0) + | И (НаселенныйПункт.КодПодчиненногоЭлемента = 0) + | И (НаселенныйПункт.Идентификатор <> АдресныйОбъект.Идентификатор) + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК Улица + | ПО (Улица.Уровень = 7) + | И (Улица.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) + | И (Улица.КодОкруга = АдресныйОбъект.КодОкруга) + | И (Улица.КодРайона = АдресныйОбъект.КодРайона) + | И (Улица.КодГорода = АдресныйОбъект.КодГорода) + | И (Улица.КодВнутригородскогоРайона = АдресныйОбъект.КодВнутригородскогоРайона) + | И (Улица.КодНаселенногоПункта = АдресныйОбъект.КодНаселенногоПункта) + | И (Улица.КодУлицы = АдресныйОбъект.КодУлицы) + | И (Улица.КодДополнительногоЭлемента = 0) + | И (Улица.КодПодчиненногоЭлемента = 0) + | И (Улица.Идентификатор <> АдресныйОбъект.Идентификатор) + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК Дополнительный + | ПО (Дополнительный.Уровень = 90) + | И (Дополнительный.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) + | И (Дополнительный.КодОкруга = АдресныйОбъект.КодОкруга) + | И (Дополнительный.КодРайона = АдресныйОбъект.КодРайона) + | И (Дополнительный.КодГорода = АдресныйОбъект.КодГорода) + | И (Дополнительный.КодВнутригородскогоРайона = АдресныйОбъект.КодВнутригородскогоРайона) + | И (Дополнительный.КодНаселенногоПункта = АдресныйОбъект.КодНаселенногоПункта) + | И (Дополнительный.КодУлицы = АдресныйОбъект.КодУлицы) + | И (Дополнительный.КодДополнительногоЭлемента = АдресныйОбъект.КодДополнительногоЭлемента) + | И (Дополнительный.КодПодчиненногоЭлемента = 0) + | И (Дополнительный.Идентификатор <> АдресныйОбъект.Идентификатор) + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК Подчиненный + | ПО (Подчиненный.Уровень = 91) + | И (Подчиненный.КодСубъектаРФ = АдресныйОбъект.КодСубъектаРФ) + | И (Подчиненный.КодОкруга = АдресныйОбъект.КодОкруга) + | И (Подчиненный.КодРайона = АдресныйОбъект.КодРайона) + | И (Подчиненный.КодГорода = АдресныйОбъект.КодГорода) + | И (Подчиненный.КодВнутригородскогоРайона = АдресныйОбъект.КодВнутригородскогоРайона) + | И (Подчиненный.КодНаселенногоПункта = АдресныйОбъект.КодНаселенногоПункта) + | И (Подчиненный.КодУлицы = АдресныйОбъект.КодУлицы) + | И (Подчиненный.КодДополнительногоЭлемента = АдресныйОбъект.КодДополнительногоЭлемента) + | И (Подчиненный.КодПодчиненногоЭлемента = АдресныйОбъект.КодПодчиненногоЭлемента) + | И (Подчиненный.Идентификатор <> АдресныйОбъект.Идентификатор) + |ГДЕ + | АдресныйОбъект.ПочтовыйИндекс = &ПочтовыйИндекс + | И АдресныйОбъект.Уровень В(&Уровни) | - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.АдресныеОбъекты КАК Район + |УПОРЯДОЧИТЬ ПО + | Наименование + |ИТОГИ + | КОЛИЧЕСТВО(СубъектРФНаименование), + | КОЛИЧЕСТВО(ОкругНаименование), + | КОЛИЧЕСТВО(РайонНаименование), + | КОЛИЧЕСТВО(ГородНаименование), + | КОЛИЧЕСТВО(ВнутригородскойРайонНаименование), + | КОЛИЧЕСТВО(НаселенныйПунктНаименование), + | КОЛИЧЕСТВО(УлицаНаименование), + | КОЛИЧЕСТВО(ДополнительныйНаименование), + | КОЛИЧЕСТВО(ПодчиненныйНаименование) |ПО - | Район.Уровень = 3 - | И Район.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ - | И Район.КодОкруга = ОбъектАдреса.КодОкруга - | И Район.КодРайона = ОбъектАдреса.КодРайона - | И Район.КодГорода = 0 - | И Район.КодВнутригородскогоРайона = 0 - | И Район.КодНаселенногоПункта = 0 - | И Район.КодУлицы = 0 - | И Район.КодДополнительногоЭлемента = 0 - | И Район.КодПодчиненногоЭлемента = 0 - | - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.АдресныеОбъекты КАК Город - |ПО - | Город.Уровень = 4 - | И Город.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ - | И Город.КодОкруга = ОбъектАдреса.КодОкруга - | И Город.КодРайона = ОбъектАдреса.КодРайона - | И Город.КодГорода = ОбъектАдреса.КодГорода - | И Город.КодВнутригородскогоРайона = 0 - | И Город.КодНаселенногоПункта = 0 - | И Город.КодУлицы = 0 - | И Город.КодДополнительногоЭлемента = 0 - | И Город.КодПодчиненногоЭлемента = 0 - | - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.АдресныеОбъекты КАК ВнутригородскойРайон - |ПО - | ВнутригородскойРайон.Уровень = 5 - | И ВнутригородскойРайон.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ - | И ВнутригородскойРайон.КодОкруга = ОбъектАдреса.КодОкруга - | И ВнутригородскойРайон.КодРайона = ОбъектАдреса.КодРайона - | И ВнутригородскойРайон.КодГорода = ОбъектАдреса.КодГорода - | И ВнутригородскойРайон.КодВнутригородскогоРайона = ОбъектАдреса.КодВнутригородскогоРайона - | И ВнутригородскойРайон.КодНаселенногоПункта = 0 - | И ВнутригородскойРайон.КодУлицы = 0 - | И ВнутригородскойРайон.КодДополнительногоЭлемента = 0 - | И ВнутригородскойРайон.КодПодчиненногоЭлемента = 0 - | - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.АдресныеОбъекты КАК НаселенныйПункт - |ПО - | НаселенныйПункт.Уровень = 6 - | И НаселенныйПункт.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ - | И НаселенныйПункт.КодОкруга = ОбъектАдреса.КодОкруга - | И НаселенныйПункт.КодРайона = ОбъектАдреса.КодРайона - | И НаселенныйПункт.КодГорода = ОбъектАдреса.КодГорода - | И НаселенныйПункт.КодВнутригородскогоРайона = ОбъектАдреса.КодВнутригородскогоРайона - | И НаселенныйПункт.КодНаселенногоПункта = ОбъектАдреса.КодНаселенногоПункта - | И НаселенныйПункт.КодУлицы = 0 - | И НаселенныйПункт.КодДополнительногоЭлемента = 0 - | И НаселенныйПункт.КодПодчиненногоЭлемента = 0 - | - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.АдресныеОбъекты КАК Улица - |ПО - | Улица.Уровень = 7 - | И Улица.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ - | И Улица.КодОкруга = ОбъектАдреса.КодОкруга - | И Улица.КодРайона = ОбъектАдреса.КодРайона - | И Улица.КодГорода = ОбъектАдреса.КодГорода - | И Улица.КодВнутригородскогоРайона = ОбъектАдреса.КодВнутригородскогоРайона - | И Улица.КодНаселенногоПункта = ОбъектАдреса.КодНаселенногоПункта - | И Улица.КодУлицы = ОбъектАдреса.КодУлицы - | И Улица.КодДополнительногоЭлемента = 0 - | И Улица.КодПодчиненногоЭлемента = 0 - | - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.АдресныеОбъекты КАК Дополнительный - |ПО - | Дополнительный.Уровень = 90 - | И Дополнительный.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ - | И Дополнительный.КодОкруга = ОбъектАдреса.КодОкруга - | И Дополнительный.КодРайона = ОбъектАдреса.КодРайона - | И Дополнительный.КодГорода = ОбъектАдреса.КодГорода - | И Дополнительный.КодВнутригородскогоРайона = ОбъектАдреса.КодВнутригородскогоРайона - | И Дополнительный.КодНаселенногоПункта = ОбъектАдреса.КодНаселенногоПункта - | И Дополнительный.КодУлицы = ОбъектАдреса.КодУлицы - | И Дополнительный.КодДополнительногоЭлемента = ОбъектАдреса.КодДополнительногоЭлемента - | И Дополнительный.КодПодчиненногоЭлемента = 0 - | - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.АдресныеОбъекты КАК Подчиненный - |ПО - | Подчиненный.Уровень = 91 - | И Подчиненный.КодСубъектаРФ = ОбъектАдреса.КодСубъектаРФ - | И Подчиненный.КодОкруга = ОбъектАдреса.КодОкруга - | И Подчиненный.КодРайона = ОбъектАдреса.КодРайона - | И Подчиненный.КодГорода = ОбъектАдреса.КодГорода - | И Подчиненный.КодВнутригородскогоРайона = ОбъектАдреса.КодВнутригородскогоРайона - | И Подчиненный.КодНаселенногоПункта = ОбъектАдреса.КодНаселенногоПункта - | И Подчиненный.КодУлицы = ОбъектАдреса.КодУлицы - | И Подчиненный.КодДополнительногоЭлемента = ОбъектАдреса.КодДополнительногоЭлемента - | И Подчиненный.КодПодчиненногоЭлемента = ОбъектАдреса.КодПодчиненногоЭлемента - | - |// Дополнительные данные - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.ДополнительныеАдресныеСведения КАК ДополнительныеДанные - |ПО - | ДополнительныеДанные.Идентификатор = ОбъектАдреса.Дополнительно - | - |// Значения типов для контактной информации - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.СлужебныеАдресныеСведения КАК СлужебныеАдресныеСведенияИндекс - |ПО - | СлужебныеАдресныеСведенияИндекс.Тип = ""ТипАдрЭл"" - | И СлужебныеАдресныеСведенияИндекс.Идентификатор = 0 - | И СлужебныеАдресныеСведенияИндекс.Ключ = ""ПочтовыйИндекс"" - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.СлужебныеАдресныеСведения КАК СлужебныеАдресныеСведенияДополнительный - |ПО - | СлужебныеАдресныеСведенияДополнительный.Тип = ""ТипАдрЭл"" - | И СлужебныеАдресныеСведенияДополнительный.Идентификатор = 90 - | И СлужебныеАдресныеСведенияДополнительный.Ключ = Дополнительный.Сокращение - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.СлужебныеАдресныеСведения КАК СлужебныеАдресныеСведенияПодчиненный - |ПО - | СлужебныеАдресныеСведенияПодчиненный.Тип = ""ТипАдрЭл"" - | И СлужебныеАдресныеСведенияПодчиненный.Идентификатор = 91 - | И СлужебныеАдресныеСведенияПодчиненный.Ключ = Подчиненный.Сокращение - | - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.СлужебныеАдресныеСведения КАК УмолчаниеСлужебныхАдресныхСведенийДополнительный - |ПО - | СлужебныеАдресныеСведенияДополнительный.Тип = ""ТипАдрЭл"" - | И СлужебныеАдресныеСведенияДополнительный.Идентификатор = 90 - | И СлужебныеАдресныеСведенияДополнительный.Ключ = """" - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.СлужебныеАдресныеСведения КАК УмолчаниеСлужебныхАдресныхСведенийПодчиненный - |ПО - | СлужебныеАдресныеСведенияПодчиненный.Тип = ""ТипАдрЭл"" - | И СлужебныеАдресныеСведенияПодчиненный.Идентификатор = 91 - | И СлужебныеАдресныеСведенияПодчиненный.Ключ = """""; + | ОБЩИЕ"; - // Пустой адрес - Адрес = ФабрикаXDTO.Создать( ФабрикаXDTO.Тип(ПространствоИменАдресаРФ(), "АдресРФ") ); - Результат.Данные = Адрес; - Запрос = Новый Запрос(ТекстЗапроса); - Запрос.УстановитьПараметр("Идентификатор", Новый УникальныйИдентификатор(Идентификатор)); - Выборка = Запрос.Выполнить().Выбрать(); - Если Не Выборка.Следующий() Тогда + Запрос.УстановитьПараметр("ПочтовыйИндекс", Индекс); + Запрос.УстановитьПараметр("Уровни", Уровни); + ДеревоЗапроса = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкам); + + СтрокиДерева = ДеревоЗапроса.Строки; + Если СтрокиДерева.Количество() = 0 Тогда + // Нечего заполнять Возврат; КонецЕсли; - УстановитьXDTOРеквизитОбъекта(Адрес, "СубъектРФ", Выборка.СубъектРФПредставление); - УстановитьXDTOРеквизитОбъекта(Адрес, "Округ", Выборка.ОкругПредставление); - УстановитьXDTOРеквизитОбъекта(Адрес, "СвРайМО/Район", Выборка.РайонПредставление); - УстановитьXDTOРеквизитОбъекта(Адрес, "Город", Выборка.ГородПредставление); - УстановитьXDTOРеквизитОбъекта(Адрес, "НаселПункт", Выборка.НаселенныйПунктПредставление); - УстановитьXDTOРеквизитОбъекта(Адрес, "ВнутригРайон", Выборка.ВнутригородскойРайонПредставление); - УстановитьXDTOРеквизитОбъекта(Адрес, "Улица", Выборка.УлицаПредставление); - УстановитьXDTOРеквизитОбъекта(Адрес, "ОКАТО", Выборка.ОКАТО); - УстановитьXDTOРеквизитОбъекта(Адрес, "ОКТМО", Выборка.ОКТМО); - УстановитьXDTOРеквизитОбъекта(Адрес, "Местоположение", Выборка.ОписаниеОриентира); + // По первой строке определяем общее название - то, что есть в каждой строке. + СтрокаИтогов = СтрокиДерева[0]; + ДетальныеСтроки = СтрокаИтогов.Строки; + ПерваяСтрока = ДетальныеСтроки[0]; + ВсегоДетальных = ДетальныеСтроки.Количество(); + // Первые 18 колонок описывают иерархию, одна строка есть точно. + ОбщееПредставление = Формат(Индекс, "ЧЦ=6; ЧН=; ЧВН=; ЧГ="); + Пустые = Новый Структура; - // Дополнительные свойства - ДобавитьXDTOРеквизитСписка(Адрес, "ДопАдрЭл", Новый Структура("ТипАдрЭл, Значение", Выборка.ТипАдрЭлПочтовыйИндекс, Выборка.ПочтовыйИндекс)); - - Если НЕ ПустаяСтрока(Выборка.ДополнительныйПредставление) Тогда - ДобавитьXDTOРеквизитСписка(Адрес, "ДопАдрЭл", Новый Структура("ТипАдрЭл, Значение", КодДополнительногоЭлемента(Выборка.ДополнительныйПредставление), - Выборка.ДополнительныйПредставление)); - КонецЕсли; - - ДобавитьXDTOРеквизитСписка(Адрес, "ДопАдрЭл", Новый Структура("ТипАдрЭл, Значение", "10400000", Выборка.ПодчиненныйПредставление)); - -КонецПроцедуры - -Функция КодДополнительногоЭлемента(ДополнительныйПредставление) - - Сокращение = ВРег(АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(ДополнительныйПредставление).Сокращение); - Если Сокращение = "ГСК" Тогда - Возврат "10600000"; - ИначеЕсли Сокращение = "СНТ" Тогда - Возврат "10300000"; - ИначеЕсли Сокращение = "ТЕР" Тогда - Возврат "10700000"; - КонецЕсли; - - Возврат "10200000"; -КонецФункции - -Процедура УстановитьИдентификаторыНаселенногоПункта(ЧастиАдреса, ИдентификаторНаселенногоПункта) Экспорт - - ПоляАдреса = Новый Соответствие(); - ВставитьЧастьАдреса("Регион", ЧастиАдреса.Регион, ПоляАдреса); - ВставитьЧастьАдреса("Округ", ЧастиАдреса.Округ, ПоляАдреса); - ВставитьЧастьАдреса("Район", ЧастиАдреса.Район, ПоляАдреса); - ВставитьЧастьАдреса("Город", ЧастиАдреса.Город, ПоляАдреса); - ВставитьЧастьАдреса("ВнутригородскойРайон", ЧастиАдреса.ВнутригРайон, ПоляАдреса); - ВставитьЧастьАдреса("НаселенныйПункт", ЧастиАдреса.НаселенныйПункт, ПоляАдреса); - ВставитьЧастьАдреса("Улица", ЧастиАдреса.Улица, ПоляАдреса); - - ИдентификаторыАдреса = ИдентификаторыАдреса(ПоляАдреса, Истина, Истина); - - Если ИдентификаторыАдреса <> Неопределено Тогда - Для каждого Часть Из ЧастиАдреса Цикл - Если ИдентификаторыАдреса.Свойство("Идентификатор" + Часть.Ключ) Тогда - Часть.Значение.Идентификатор = ИдентификаторыАдреса["Идентификатор" + Часть.Ключ]; - КонецЕсли; - КонецЦикла; - КонецЕсли; - -КонецПроцедуры - -// Проверяет данные на соответствие классификатору. -// -// Параметры: -// Адреса - Массив - Проверяемые адреса. Содержит структуры с полями: -// * Адрес - ОбъектXDTO, Строка - Проверяемый адрес -// ((http://www.v8.1c.ru/ssl/AddressSystem) АдресРФ) или его -// XML-сериализация. -// * ФорматАдреса - Строка - Тип используемого классификатора для проверки. -// -// Возвращаемое значение: -// Структура - найденные варианты. Содержит поля: -// * Отказ - Булево - Поставщик не доступен. -// * ПодробноеПредставлениеОшибки - Строка - Описание ошибки, если поставщик недоступен. Неопределено, если Отказ -// = Ложь. -// * КраткоеПредставлениеОшибки - Строка - Описание ошибки, если поставщик недоступен. Неопределено, если Отказ -// = Ложь. -// * Данные - Массив - Результаты проверки. Индекс результата совпадает с индексом -// параметра Адреса. -// Каждый элемент массива - структура, содержащая поля: -// ** Ошибки - Массив - Описание ошибок поиска в классификаторе. Состоит из структур с полями. -// *** Ключ - Строка - Служебный идентификатор места ошибки - путь XPath в объекте XDTO. -// *** Текст - Строка - Текст ошибки. -// *** Подсказка - Строка - Текст возможного исправления ошибки. -// ** Варианты - Массив - Содержит описание найденных вариантов. Каждый элемент - структура с полями: -// *** Идентификатор - УникальныйИдентификатор - Код классификатора объекта - варианта. -// *** Индекс - Число - Почтовый индекс объекта - варианта. -// *** КодКЛАДР - Число - Код КЛАДР ближайшего объекта. -// *** OKATO - Число - Данные ФНС. -// *** ОКТМО - Число - Данные ФНС. -// *** КодИФНСФЛ - Число - Данные ФНС. -// *** КодИФНСЮЛ - Число - Данные ФНС. -// *** КодУчасткаИФНСФЛ - Число - Данные ФНС. -// *** КодУчасткаИФНСЮЛ - Число - Данные ФНС. -// -Функция РезультатПроверкиАдресовПоКлассификатору(Адреса) Экспорт - - Результат = Новый Структура("Данные", Новый Массив); - СтруктураОписанияОшибкиПоставщика(Результат); - - // Приводим типы - АдресаДляПроверки = Новый Массив; - ТипСтрока = Тип("Строка"); - - Для Каждого ПроверяемыйАдрес Из Адреса Цикл - Если ПроверяемыйАдрес.ФорматАдреса = "ФИАС" Тогда - Уровни = АдресныйКлассификаторПовтИсп.УровниКлассификатораФИАС(); - Иначе - Уровни = АдресныйКлассификаторПовтИсп.УровниКлассификатораКЛАДР(); + Позиция = 0; + Пока Позиция < 18 Цикл + ИмяКолонки = ДеревоЗапроса.Колонки[Позиция].Имя; + Если СтрокаИтогов[ИмяКолонки] = ВсегоДетальных Тогда + // Наименование + Пустые.Вставить(ИмяКолонки); + ОбщееПредставление = ОбщееПредставление + ", " + ПерваяСтрока[ИмяКолонки]; + // Сокращение + ИмяКолонки = ДеревоЗапроса.Колонки[Позиция + 1].Имя; + Пустые.Вставить(ИмяКолонки); + ОбщееПредставление = ОбщееПредставление + " " + ПерваяСтрока[ИмяКолонки]; КонецЕсли; - - АдресXDTO = ПроверяемыйАдрес.Адрес; - Если ТипЗнч(АдресXDTO) = ТипСтрока Тогда - ПолныйАдресXDTO = ДесериализацияАдресаXDTO(АдресXDTO); - АдресXDTO = ПолныйАдресXDTO.Состав.Состав; - КонецЕсли; - - АдресаДляПроверки.Добавить(Новый Структура("Адрес, Уровни", АдресXDTO, Уровни)); + Позиция = Позиция + 2; КонецЦикла; - Источник = ИсточникДанныхАдресногоКлассификатора(); - Если ПустаяСтрока(Источник) Тогда - // Локальное, всегда корректное. - ЗаполнитьРезультатПроверкиАдресаПоКлассификаторуВнутр(Результат, АдресаДляПроверки); + Результат.ОбщаяЧастьПредставления = ОбщееПредставление; + Данные = Результат.Данные; + + Для Каждого Строка Из ДетальныеСтроки Цикл + // Убираем общие, из оставшихся будет полное наименование. + ЗаполнитьЗначенияСвойств(Строка, Пустые); + СтрокаРезультата = Данные.Добавить(); + СтрокаРезультата.Неактуален = Строка.Неактуален; + СтрокаРезультата.Идентификатор = Строка.Идентификатор; - ИначеЕсли Источник = "Сервис1С" Тогда - // Веб сервис 1С, может быть на обслуживании. - Попытка - ЗаполнитьРезультатПроверкиАдресаПоКлассификаторуСервис1С(Результат, АдресаДляПроверки); - Исключение - СтруктураОписанияОшибкиПоставщика(Результат, ИнформацияОбОшибке()); - ЗаписьЖурналаРегистрации( СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка, , , Результат.ПодробноеПредставлениеОшибки); - КонецПопытки; + Представление = ""; + ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.Наименование, Строка.Сокращение); + ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.ПодчиненныйНаименование, Строка.ПодчиненныйСокращение); + ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.ДополнительныйНаименование, Строка.ДополнительныйСокращение); + ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.УлицаНаименование, Строка.УлицаСокращение); + ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.НаселенныйПунктНаименование, Строка.НаселенныйПунктСокращение); + ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.ВнутригородскойРайонНаименование, Строка.ВнутригородскойРайонСокращение); + ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.ГородНаименование, Строка.ГородСокращение); + ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.РайонНаименование, Строка.РайонСокращение); + ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.ОкругНаименование, Строка.ОкругСокращение); + ДобавитьВПредставлениеЭлементАдреса(Представление, Строка.СубъектРФНаименование, Строка.СубъектРФСокращение); + СтрокаРезультата.Представление = Представление; + КонецЦикла; + + Данные.Сортировать("Представление"); +КонецПроцедуры + +// Заполнение данных для выбора адреса из загруженных данных. +// +Процедура ЗаполнитьАдресаДляИнтерактивногоВыбораВнутр(Результат, Уровни, Родитель, Уровень, ДополнительныеПараметры) + + ПараметрПерваяЗапись = Неопределено; + ТекстРазмерПорции = ""; + ТекстСортировкиПорции = ""; + СравнениеПорядкаПорции = ">="; + + // Если передан параметр - размер порции, то отдаем порционно, иначе - все. + РазмерПорции = Неопределено; + ФормироватьПорцию = ДополнительныеПараметры.Свойство("РазмерПорции", РазмерПорции) И ЗначениеЗаполнено(РазмерПорции); + + Если ФормироватьПорцию Тогда + ТекстРазмерПорции = "ПЕРВЫЕ " + Формат(РазмерПорции, "ЧН=; ЧГ="); + + Если ДополнительныеПараметры.Свойство("ПерваяЗапись") И ЗначениеЗаполнено(ДополнительныеПараметры.ПерваяЗапись) Тогда + ПараметрПерваяЗапись = Новый УникальныйИдентификатор(ДополнительныеПараметры.ПерваяЗапись); + КонецЕсли; + + Если ДополнительныеПараметры.Свойство("Сортировка") И ЗначениеЗаполнено(ДополнительныеПараметры.Сортировка) Тогда + ТекстСортировкиПорции = ДополнительныеПараметры.Сортировка; + КонецЕсли; + + Если ТекстСортировкиПорции <> "ASC" Тогда + СравнениеПорядкаПорции = "<="; + КонецЕсли; + КонецЕсли; + + // Особые случаи + Если Уровень = 1 Тогда + // Запрос регионов, игнорируем родителя. + ТекстЗапроса = "ВЫБРАТЬ " + ТекстРазмерПорции + " + | Регион.Идентификатор КАК Идентификатор, + | Регион.Наименование + "" "" + Регион.Сокращение КАК Представление, + | + | ВЫБОР КОГДА 1 В ( + | ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты + | ГДЕ Уровень = 2 И КодСубъектаРФ = Регион.КодСубъектаРФ + | ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты + | ГДЕ Уровень = 3 И КодСубъектаРФ = Регион.КодСубъектаРФ + | ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты + | ГДЕ Уровень = 4 И КодСубъектаРФ = Регион.КодСубъектаРФ + | ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты + | ГДЕ Уровень = 5 И КодСубъектаРФ = Регион.КодСубъектаРФ + | ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты + | ГДЕ Уровень = 6 И КодСубъектаРФ = Регион.КодСубъектаРФ + | ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты + | ГДЕ Уровень = 7 И КодСубъектаРФ = Регион.КодСубъектаРФ + | ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты + | ГДЕ Уровень = 90 И КодСубъектаРФ = Регион.КодСубъектаРФ + | ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПЕРВЫЕ 1 1 ИЗ РегистрСведений.АдресныеОбъекты + | ГДЕ Уровень = 91 И КодСубъектаРФ = Регион.КодСубъектаРФ + | ) ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ + | КОНЕЦ КАК РегионЗагружен + | + |ИЗ + | РегистрСведений.АдресныеОбъекты КАК Регион + | + |" + ?(ПараметрПерваяЗапись = Неопределено, "", " + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.АдресныеОбъекты КАК ТекущийПорядокПорции + |ПО + | ТекущийПорядокПорции.Идентификатор = &ПервыйЭлементПорции + |") + " + | + |ГДЕ + | Регион.Уровень = 1 + | И Регион.КодОкруга = 0 + | И Регион.КодРайона = 0 + | И Регион.КодГорода = 0 + | И Регион.КодВнутригородскогоРайона = 0 + | И Регион.КодНаселенногоПункта = 0 + | И Регион.КодУлицы = 0 + | И Регион.КодДополнительногоЭлемента = 0 + | И Регион.КодПодчиненногоЭлемента = 0 + | + |" + ?(ПараметрПерваяЗапись = Неопределено, "", " + | И Регион.Идентификатор <> ТекущийПорядокПорции.Идентификатор + | И Регион.Наименование + "" "" + Регион.Сокращение " + СравнениеПорядкаПорции + " ТекущийПорядокПорции.Наименование + "" "" + ТекущийПорядокПорции.Сокращение + |") + " + | + |УПОРЯДОЧИТЬ ПО + | Представление " + ТекстСортировкиПорции + " + |"; + ИначеЕсли Уровень = -1 Тогда + // Запрос ориентиров, родитель - адресный объект. + ТекстЗапроса = "ВЫБРАТЬ " + ТекстРазмерПорции + " + | Идентификатор КАК Идентификатор, + | Описание КАК Представление + |ИЗ + | РегистрСведений.ОриентирыАдресныхОбъектов КАК Ориентиры + | + |" + ?(ПараметрПерваяЗапись = Неопределено, "", " + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.АдресныеОбъекты КАК ТекущийПорядокПорции + |ПО + | ТекущийПорядокПорции.Идентификатор = &ПервыйЭлементПорции + |") + " + | + |ГДЕ + | Ориентиры.АдресныйОбъект = &Родитель + | + |" + ?(ПараметрПерваяЗапись = Неопределено, "", " + | И Ориентиры.Идентификатор <> ТекущийПорядокПорции.Идентификатор + | И Ориентиры.Наименование + "" "" + Ориентиры.Сокращение " + СравнениеПорядкаПорции + " ТекущийПорядокПорции.Наименование + "" "" + ТекущийПорядокПорции.Сокращение + |") + " + | + |УПОРЯДОЧИТЬ ПО + | Представление " + ТекстСортировкиПорции + " + |"; + Иначе + // Обычный уровень + ТекстЗапроса = "ВЫБРАТЬ " + ТекстРазмерПорции + " + | АдресныйОбъект.Идентификатор КАК Идентификатор, + | АдресныйОбъект.Наименование + "" "" + АдресныйОбъект.Сокращение КАК Представление, + | ИСТИНА КАК РегионЗагружен, + | ВЫБОР КОГДА АдресныйОбъект.Актуален ТОГДА ЛОЖЬ ИНАЧЕ ИСТИНА КОНЕЦ КАК Неактуален + |ИЗ + | РегистрСведений.АдресныеОбъекты КАК РодительскийОбъект + | + |" + ?(ПараметрПерваяЗапись = Неопределено, "", " + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.АдресныеОбъекты КАК ТекущийПорядокПорции + |ПО + | ТекущийПорядокПорции.Идентификатор = &ПервыйЭлементПорции + |") + " + | + |ЛЕВОЕ СОЕДИНЕНИЕ + | РегистрСведений.АдресныеОбъекты КАК АдресныйОбъект + |ПО + | АдресныйОбъект.Уровень = &Уровень + | И АдресныйОбъект.Уровень В (&Уровни) + | И АдресныйОбъект.КодСубъектаРФ = РодительскийОбъект.КодСубъектаРФ + |"; + Если Уровень = 2 Тогда + // Округ + ТекстЗапроса = ТекстЗапроса + " + | И АдресныйОбъект.КодРайона = 0 + | И АдресныйОбъект.КодГорода = 0 + | И АдресныйОбъект.КодВнутригородскогоРайона = 0 + | И АдресныйОбъект.КодНаселенногоПункта = 0 + | И АдресныйОбъект.КодУлицы = 0 + | И АдресныйОбъект.КодДополнительногоЭлемента = 0 + | И АдресныйОбъект.КодПодчиненногоЭлемента = 0 + |"; + ИначеЕсли Уровень = 3 Тогда + // Район + ТекстЗапроса = ТекстЗапроса + " + | И АдресныйОбъект.КодОкруга = РодительскийОбъект.КодОкруга + | И АдресныйОбъект.КодГорода = 0 + | И АдресныйОбъект.КодВнутригородскогоРайона = 0 + | И АдресныйОбъект.КодНаселенногоПункта = 0 + | И АдресныйОбъект.КодУлицы = 0 + | И АдресныйОбъект.КодДополнительногоЭлемента = 0 + | И АдресныйОбъект.КодПодчиненногоЭлемента = 0 + |"; + ИначеЕсли Уровень = 4 Тогда + // Город + ТекстЗапроса = ТекстЗапроса + " + | И АдресныйОбъект.КодОкруга = РодительскийОбъект.КодОкруга + | И АдресныйОбъект.КодРайона = РодительскийОбъект.КодРайона + | И АдресныйОбъект.КодВнутригородскогоРайона = 0 + | И АдресныйОбъект.КодНаселенногоПункта = 0 + | И АдресныйОбъект.КодУлицы = 0 + | И АдресныйОбъект.КодДополнительногоЭлемента = 0 + | И АдресныйОбъект.КодПодчиненногоЭлемента = 0 + |"; + ИначеЕсли Уровень = 5 Тогда + // Внутригородской район + ТекстЗапроса = ТекстЗапроса + " + | И АдресныйОбъект.КодОкруга = РодительскийОбъект.КодОкруга + | И АдресныйОбъект.КодРайона = РодительскийОбъект.КодРайона + | И АдресныйОбъект.КодГорода = РодительскийОбъект.КодГорода + | И АдресныйОбъект.КодНаселенногоПункта = 0 + | И АдресныйОбъект.КодУлицы = 0 + | И АдресныйОбъект.КодДополнительногоЭлемента = 0 + | И АдресныйОбъект.КодПодчиненногоЭлемента = 0 + |"; + ИначеЕсли Уровень = 6 Тогда + // Населенный пункт + ТекстЗапроса = ТекстЗапроса + " + | И АдресныйОбъект.КодОкруга = РодительскийОбъект.КодОкруга + | И АдресныйОбъект.КодРайона = РодительскийОбъект.КодРайона + | И АдресныйОбъект.КодГорода = РодительскийОбъект.КодГорода + | И АдресныйОбъект.КодВнутригородскогоРайона = РодительскийОбъект.КодВнутригородскогоРайона + | И АдресныйОбъект.КодУлицы = 0 + | И АдресныйОбъект.КодДополнительногоЭлемента = 0 + | И АдресныйОбъект.КодПодчиненногоЭлемента = 0 + |"; + ИначеЕсли Уровень = 7 Тогда + // Улица + ТекстЗапроса = ТекстЗапроса + " + | И АдресныйОбъект.КодОкруга = РодительскийОбъект.КодОкруга + | И АдресныйОбъект.КодРайона = РодительскийОбъект.КодРайона + | И АдресныйОбъект.КодГорода = РодительскийОбъект.КодГорода + | И АдресныйОбъект.КодВнутригородскогоРайона = РодительскийОбъект.КодВнутригородскогоРайона + | И АдресныйОбъект.КодНаселенногоПункта = РодительскийОбъект.КодНаселенногоПункта + | И АдресныйОбъект.КодДополнительногоЭлемента = 0 + | И АдресныйОбъект.КодПодчиненногоЭлемента = 0 + |"; + ИначеЕсли Уровень = 90 Тогда + // Дополнительный + ТекстЗапроса = ТекстЗапроса + " + | И АдресныйОбъект.КодОкруга = РодительскийОбъект.КодОкруга + | И АдресныйОбъект.КодРайона = РодительскийОбъект.КодРайона + | И АдресныйОбъект.КодГорода = РодительскийОбъект.КодГорода + | И АдресныйОбъект.КодВнутригородскогоРайона = РодительскийОбъект.КодВнутригородскогоРайона + | И АдресныйОбъект.КодНаселенногоПункта = РодительскийОбъект.КодНаселенногоПункта + | И АдресныйОбъект.КодУлицы = РодительскийОбъект.КодУлицы + | И АдресныйОбъект.КодПодчиненногоЭлемента = 0 + |"; + ИначеЕсли Уровень = 91 Тогда + // Подчиненный + ТекстЗапроса = ТекстЗапроса + " + | И АдресныйОбъект.КодОкруга = РодительскийОбъект.КодОкруга + | И АдресныйОбъект.КодРайона = РодительскийОбъект.КодРайона + | И АдресныйОбъект.КодГорода = РодительскийОбъект.КодГорода + | И АдресныйОбъект.КодВнутригородскогоРайона = РодительскийОбъект.КодВнутригородскогоРайона + | И АдресныйОбъект.КодНаселенногоПункта = РодительскийОбъект.КодНаселенногоПункта + | И АдресныйОбъект.КодУлицы = РодительскийОбъект.КодУлицы + | И АдресныйОбъект.КодДополнительногоЭлемента = РодительскийОбъект.КодДополнительногоЭлемента + |"; + Иначе + ВызватьИсключение НСтр("ru = 'Запрос некорректного уровня адресного объекта'"); + КонецЕсли; + + ТекстЗапроса = ТекстЗапроса + " + |ГДЕ + | РодительскийОбъект.Идентификатор = &Родитель + | И РодительскийОбъект.Идентификатор <> АдресныйОбъект.Идентификатор + | + |" + ?(ПараметрПерваяЗапись = Неопределено, "", " + | И АдресныйОбъект.Идентификатор <> ТекущийПорядокПорции.Идентификатор + | И АдресныйОбъект.Наименование + "" "" + АдресныйОбъект.Сокращение " + СравнениеПорядкаПорции + " ТекущийПорядокПорции.Наименование + "" "" + ТекущийПорядокПорции.Сокращение + |") + " + | + |УПОРЯДОЧИТЬ ПО + | Представление " + ТекстСортировкиПорции + " + |"; + КонецЕсли; + + Запрос = Новый Запрос(ТекстЗапроса); + Запрос.УстановитьПараметр("Уровень", Уровень); + Запрос.УстановитьПараметр("Уровни", Уровни); + Запрос.УстановитьПараметр("Родитель", Родитель); + + Запрос.УстановитьПараметр("ПервыйЭлементПорции", ПараметрПерваяЗапись); + + Выборка = Запрос.Выполнить().Выбрать(); + + Данные = Результат.Данные; + Если Уровень <> -1 Тогда + // Обычные объекты + Пока Выборка.Следующий() Цикл + ЗаполнитьЗначенияСвойств(Данные.Добавить(), Выборка); + КонецЦикла; + Возврат; + КонецЕсли; + + // Ориентиры. Описание - строка в хранилище. + Пока Выборка.Следующий() Цикл + Строка = Данные.Добавить(); + Строка.РегионЗагружен = Истина; + Строка.Идентификатор = Выборка.Идентификатор; + Строка.Представление = Выборка.Представление.Получить(); + КонецЦикла; + +КонецПроцедуры + +// Конструктор таблицы - результата выбора. +// +Функция ТаблицаДанныхДляИнтерактивногоВыбора() + + ТипБулево = Новый ОписаниеТипов("Булево"); + Данные = Новый ТаблицаЗначений; + Колонки = Данные.Колонки; + + Колонки.Добавить("Неактуален", ТипБулево); + Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("УникальныйИдентификатор")); + Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); + Колонки.Добавить("РегионЗагружен", ТипБулево); + + Данные.Индексы.Добавить("Идентификатор"); + Данные.Индексы.Добавить("Представление"); + + Возврат Данные +КонецФункции + +// Заполнить коды адреса из загруженных данных +// +// Параметры: +// Адрес - Структура - Структура содержащая поля адреса. +// +Функция КодыАдресаЗагруженныеДанные(АдресРФ) + + Адрес = Новый Структура(); + СубъектРФ = АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(АдресРФ.СубъектРФ); + Адрес.Вставить("Регион", СубъектРФ.Наименование); + Адрес.Вставить("РегионСокращение", СубъектРФ.Сокращение); + + Район = АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(ПолучитьXDTOРеквизитОбъекта(АдресРФ, "СвРайМО/Район")); + Адрес.Вставить("Район", Район.Наименование); + + Адрес.Вставить("Город", + АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(АдресРФ.Город).Наименование); + Адрес.Вставить("НаселенныйПункт", + АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(АдресРФ.НаселПункт).Наименование); + Адрес.Вставить("Улица", + АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(АдресРФ.Улица).Наименование); + Адрес.Вставить("Округ", + АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(АдресРФ.Округ).Наименование); + Адрес.Вставить("ВнутригРайон", + АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(АдресРФ.ВнутригРайон).Наименование); + + КодыКЛАДР = СтруктураКодовКЛАДРПоУровням(); + КодыАдреса = СтруктураКодовАдреса(); + Результат = Новый Структура(); + Результат.Вставить("КодыКЛАДР", КодыКЛАДР); + Результат.Вставить("КодыАдреса", КодыАдреса); + + ТекстСоединения = ""; + ТекстДляВыбрать = ""; + ИмяОбъектаДляДополнительныхСведений = "АдресныеОбъектыРегион"; + + Если ПустаяСтрока(Адрес.Округ) Тогда + сОкруг = "0"; + ТекстДляВыбрать = "НЕОПРЕДЕЛЕНО КАК КодКЛАДРОкруг, "; + Иначе + ТекстСоединения = ТекстСоединения + Символы.ПС + "ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыОкруг + | ПО АдресныеОбъектыОкруг.Наименование = """ + Адрес.Округ + """ + | И АдресныеОбъектыРегион.КодСубъектаРФ = АдресныеОбъектыОкруг.КодСубъектаРФ + | И АдресныеОбъектыОкруг.Уровень = 2 + | И АдресныеОбъектыОкруг.КодРайона = 0 + | И АдресныеОбъектыОкруг.КодГорода = 0 + | И АдресныеОбъектыОкруг.КодВнутригородскогоРайона = 0 + | И АдресныеОбъектыОкруг.КодНаселенногоПункта = 0 + | И АдресныеОбъектыОкруг.КодУлицы = 0 + | И АдресныеОбъектыОкруг.КодДополнительногоЭлемента = 0 + | И АдресныеОбъектыОкруг.КодПодчиненногоЭлемента = 0"; + сОкруг = "АдресныеОбъектыОкруг.КодОкруга"; + ТекстДляВыбрать = "АдресныеОбъектыОкруг.КодКЛАДР КАК КодКЛАДРОкруг, "; + ИмяОбъектаДляДополнительныхСведений = "АдресныеОбъектыОкруг"; + КонецЕсли; + + Если ПустаяСтрока(Адрес.Район) Тогда + сРайон = "0"; + ТекстДляВыбрать = ТекстДляВыбрать + "НЕОПРЕДЕЛЕНО КАК КодКЛАДРРайон, "; + Иначе + ТекстСоединения = ТекстСоединения + Символы.ПС + "ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыРайон + | ПО АдресныеОбъектыРайон.Наименование = """ + Адрес.Район + """ + | И АдресныеОбъектыРайон.КодОкруга = " + сОкруг + " + | И АдресныеОбъектыРегион.КодСубъектаРФ = АдресныеОбъектыРайон.КодСубъектаРФ + | И АдресныеОбъектыРайон.Уровень = 3 + | И АдресныеОбъектыРайон.КодГорода = 0 + | И АдресныеОбъектыРайон.КодВнутригородскогоРайона = 0 + | И АдресныеОбъектыРайон.КодНаселенногоПункта = 0 + | И АдресныеОбъектыРайон.КодУлицы = 0 + | И АдресныеОбъектыРайон.КодДополнительногоЭлемента = 0 + | И АдресныеОбъектыРайон.КодПодчиненногоЭлемента = 0"; + сРайон = "АдресныеОбъектыРайон.КодРайона"; + ТекстДляВыбрать = ТекстДляВыбрать + "АдресныеОбъектыРайон.КодКЛАДР КАК КодКЛАДРРайон, "; + ИмяОбъектаДляДополнительныхСведений = "АдресныеОбъектыРайон"; + КонецЕсли; + + Если ПустаяСтрока(Адрес.Город) Тогда + сГород = "0"; + ТекстДляВыбрать = ТекстДляВыбрать + "НЕОПРЕДЕЛЕНО КАК КодКЛАДРГород, "; + Иначе + ТекстСоединения = ТекстСоединения + Символы.ПС + " ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыГород + | ПО АдресныеОбъектыГород.Наименование = """ + Адрес.Город + """ + | И АдресныеОбъектыРегион.КодСубъектаРФ = АдресныеОбъектыГород.КодСубъектаРФ + | И АдресныеОбъектыГород.Уровень = 4 + | И АдресныеОбъектыГород.КодОкруга = " + сОкруг + " + | И АдресныеОбъектыГород.КодРайона = " + сРайон + " + | И АдресныеОбъектыГород.КодВнутригородскогоРайона = 0 + | И АдресныеОбъектыГород.КодНаселенногоПункта = 0 + | И АдресныеОбъектыГород.КодУлицы = 0 + | И АдресныеОбъектыГород.КодДополнительногоЭлемента = 0 + | И АдресныеОбъектыГород.КодПодчиненногоЭлемента = 0"; + + сГород = "АдресныеОбъектыГород.КодГорода"; + ТекстДляВыбрать = ТекстДляВыбрать + "АдресныеОбъектыГород.КодКЛАДР КАК КодКЛАДРГород, "; + ИмяОбъектаДляДополнительныхСведений = "АдресныеОбъектыГород"; + КонецЕсли; + + Если ПустаяСтрока(Адрес.ВнутригРайон) Тогда + сВнутригородскойРайон = "0"; + ТекстДляВыбрать = ТекстДляВыбрать + "НЕОПРЕДЕЛЕНО КАК КодКЛАДРВнутригородскойРайон, "; + Иначе + ТекстСоединения = ТекстСоединения + Символы.ПС + " ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыВнутригородскойРайон + | ПО АдресныеОбъектыВнутригородскойРайон.Наименование = """ + Адрес.ВнутригРайон + """ + | И АдресныеОбъектыРегион.КодСубъектаРФ = АдресныеОбъектыВнутригородскойРайон.КодСубъектаРФ + | И АдресныеОбъектыВнутригородскойРайон.КодОкруга = " + сОкруг + " + | И АдресныеОбъектыВнутригородскойРайон.КодРайона = " + сРайон + " + | И АдресныеОбъектыВнутригородскойРайон.КодГорода = " + сГород + " + | И АдресныеОбъектыВнутригородскойРайон.КодНаселенногоПункта = 0 + | И АдресныеОбъектыВнутригородскойРайон.КодУлицы = 0 + | И АдресныеОбъектыВнутригородскойРайон.КодДополнительногоЭлемента = 0 + | И АдресныеОбъектыВнутригородскойРайон.КодПодчиненногоЭлемента = 0"; + сВнутригородскойРайон = "АдресныеОбъектыВнутригородскойРайон.КодВнутригородскогоРайона"; + ТекстДляВыбрать = ТекстДляВыбрать + "АдресныеОбъектыВнутригородскойРайон.КодКЛАДР КАК КодКЛАДРВнутригородскойРайон, "; + ИмяОбъектаДляДополнительныхСведений = "АдресныеОбъектыВнутригородскойРайон"; + КонецЕсли; + + Если ПустаяСтрока(Адрес.НаселенныйПункт) Тогда + сНаселенногоПункта = "0"; + ТекстДляВыбрать = ТекстДляВыбрать + "НЕОПРЕДЕЛЕНО КАК КодКЛАДРНаселенныйПункт, "; + Иначе + ТекстСоединения = ТекстСоединения + Символы.ПС + " ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыНаселенныйПункт + | ПО АдресныеОбъектыНаселенныйПункт.Наименование = """ + Адрес.НаселенныйПункт + """ + | И АдресныеОбъектыРегион.КодСубъектаРФ = АдресныеОбъектыНаселенныйПункт.КодСубъектаРФ + | И АдресныеОбъектыНаселенныйПункт.Уровень = 6 + | И АдресныеОбъектыНаселенныйПункт.КодОкруга = " + сОкруг + " + | И АдресныеОбъектыНаселенныйПункт.КодРайона = " + сРайон + " + | И АдресныеОбъектыНаселенныйПункт.КодГорода = " + сГород + " + | И АдресныеОбъектыНаселенныйПункт.КодВнутригородскогоРайона = " + сВнутригородскойРайон + " + | И АдресныеОбъектыНаселенныйПункт.КодУлицы = 0 + | И АдресныеОбъектыНаселенныйПункт.КодДополнительногоЭлемента = 0 + | И АдресныеОбъектыНаселенныйПункт.КодПодчиненногоЭлемента = 0"; + сНаселенногоПункта = "АдресныеОбъектыНаселенныйПункт.КодНаселенногоПункта"; + ТекстДляВыбрать = ТекстДляВыбрать + "АдресныеОбъектыНаселенныйПункт.КодКЛАДР КАК КодКЛАДРНаселенныйПункт, "; + ИмяОбъектаДляДополнительныхСведений = "АдресныеОбъектыНаселенныйПункт"; + КонецЕсли; + + Если ПустаяСтрока(Адрес.Улица) Тогда + сУлица = "0"; + ТекстДляВыбрать = ТекстДляВыбрать + "НЕОПРЕДЕЛЕНО КАК КодКЛАДРУлица, "; + Иначе + ТекстСоединения = ТекстСоединения + Символы.ПС + " ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыУлица + | ПО АдресныеОбъектыУлица.Наименование = """ + Адрес.Улица + """ + | И АдресныеОбъектыРегион.КодСубъектаРФ = АдресныеОбъектыУлица.КодСубъектаРФ + | И АдресныеОбъектыУлица.Уровень = 7 + | И АдресныеОбъектыУлица.КодОкруга = " + сОкруг + " + | И АдресныеОбъектыУлица.КодРайона = " + сРайон + " + | И АдресныеОбъектыУлица.КодГорода = " + сГород + " + | И АдресныеОбъектыУлица.КодВнутригородскогоРайона = " + сВнутригородскойРайон + " + | И АдресныеОбъектыУлица.КодНаселенногоПункта = " + сНаселенногоПункта + " + | И АдресныеОбъектыУлица.КодДополнительногоЭлемента = 0 + | И АдресныеОбъектыУлица.КодПодчиненногоЭлемента = 0"; + + сУлица = "АдресныеОбъектыУлица.КодНаселенногоПункта"; + ТекстДляВыбрать = ТекстДляВыбрать + "АдресныеОбъектыУлица.КодКЛАДР КАК КодКЛАДРУлица, "; + ИмяОбъектаДляДополнительныхСведений = "АдресныеОбъектыУлица"; + КонецЕсли; + ТекстДляВыбрать = ТекстДляВыбрать + ИмяОбъектаДляДополнительныхСведений + ".Идентификатор КАК Идентификатор, "; + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ ПЕРВЫЕ 1 + | АдресныеОбъектыРегион.КодКЛАДР КАК КодКЛАДРРегион, + | АдресныеОбъектыРегион.КодСубъектаРФ КАК КодСубъектаРФ, " + ТекстДляВыбрать + " + | ДополнительныеАдресныеСведения.OKATO КАК OKATO, + | ДополнительныеАдресныеСведения.ОКТМО КАК ОКТМО, + | ДополнительныеАдресныеСведения.КодИФНСФЛ, + | ДополнительныеАдресныеСведения.КодИФНСЮЛ, + | ДополнительныеАдресныеСведения.КодУчасткаИФНСФЛ, + | ДополнительныеАдресныеСведения.КодУчасткаИФНСЮЛ + |ИЗ + | РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыРегион " + ТекстСоединения + " + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДополнительныеАдресныеСведения КАК ДополнительныеАдресныеСведения + | ПО (" + ИмяОбъектаДляДополнительныхСведений + ".Дополнительно = ДополнительныеАдресныеСведения.Идентификатор) + |ГДЕ + | АдресныеОбъектыРегион.Наименование = &Регион + | И АдресныеОбъектыРегион.Уровень = 1 + | И АдресныеОбъектыРегион.КодОкруга = 0 + | И АдресныеОбъектыРегион.КодРайона = 0 + | И АдресныеОбъектыРегион.КодГорода = 0 + | И АдресныеОбъектыРегион.КодВнутригородскогоРайона = 0 + | И АдресныеОбъектыРегион.КодНаселенногоПункта = 0 + | И АдресныеОбъектыРегион.КодУлицы = 0 + | И АдресныеОбъектыРегион.КодДополнительногоЭлемента = 0 + | И АдресныеОбъектыРегион.КодПодчиненногоЭлемента = 0 + | И АдресныеОбъектыРегион.Сокращение = &РегионСокращение"; + + Запрос.УстановитьПараметр("Регион", Адрес.Регион); + Запрос.УстановитьПараметр("РегионСокращение", Адрес.РегионСокращение); + + РезультатЗапроса = Запрос.Выполнить().Выбрать(); + + Если РезультатЗапроса.Следующий() Тогда + КодКЛАДР = 0; + УстановитьКодКладр(Результат.КодыКЛАДР, "Регион", РезультатЗапроса.КодКЛАДРРегион, КодКЛАДР); + УстановитьКодКладр(Результат.КодыКЛАДР, "Округ", РезультатЗапроса.КодКЛАДРОкруг, КодКЛАДР); + УстановитьКодКладр(Результат.КодыКЛАДР, "Район", РезультатЗапроса.КодКЛАДРРайон, КодКЛАДР); + УстановитьКодКладр(Результат.КодыКЛАДР, "Город", РезультатЗапроса.КодКЛАДРГород, КодКЛАДР); + УстановитьКодКладр(Результат.КодыКЛАДР, "ВнутригородскойРайон", РезультатЗапроса.КодКЛАДРВнутригородскойРайон, КодКЛАДР); + УстановитьКодКладр(Результат.КодыКЛАДР, "НаселенныйПункт", РезультатЗапроса.КодКЛАДРНаселенныйПункт, КодКЛАДР); + УстановитьКодКладр(Результат.КодыКЛАДР, "Улица", РезультатЗапроса.КодКЛАДРУлица, КодКЛАДР); + + ЗаполнитьЗначенияСвойств(Результат.КодыАдреса, РезультатЗапроса); + Если НЕ ЗначениеЗаполнено(Результат.КодыАдреса.ОКТМО) ИЛИ Результат.КодыАдреса.ОКТМО = 0 Тогда + // Получение кодов под идентификатору + СведенияОДоме = ЗданияАдреса(АдресРФ); + Если СведенияОДоме.Количество() > 0 И ЗначениеЗаполнено(РезультатЗапроса.Идентификатор) Тогда + ЗаполнитьКодыПоИдентификаторуДома(РезультатЗапроса.Идентификатор, СведенияОДоме, Результат.КодыАдреса); + КонецЕсли; + КонецЕсли; + + Результат.КодыАдреса.КодКЛАДР = КодКЛАДР; + КонецЕсли; + + Возврат Результат; +КонецФункции + +Процедура ОпределитьФорматКодов(КодыАдреса) + + Если ЗначениеЗаполнено(КодыАдреса.ОКТМО) Тогда + + ОКТМОЧисло = КодыАдреса.ОКТМО; + ОКТМОСтрока = Формат(ОКТМОЧисло, "ЧГ=0"); + + Если СтрДлина(ОКТМОСтрока) < 8 Тогда + КодыАдреса.ОКТМО = Формат(ОКТМОЧисло, "ЧЦ=8; ЧВН=; ЧГ=0"); + ИначеЕсли СтрДлина(ОКТМОСтрока) = 10 Тогда + КодыАдреса.ОКТМО = Формат(ОКТМОЧисло, "ЧЦ=11; ЧВН=; ЧГ=0"); + Иначе + КодыАдреса.ОКТМО = ОКТМОСтрока; + КонецЕсли + + КонецЕсли; + Если ЗначениеЗаполнено(КодыАдреса.OKATO) Тогда + КодыАдреса.OKATO = Формат(КодыАдреса.OKATO, "ЧГ=0"); + КонецЕсли; + +КонецПроцедуры + +// Определяет индекс и ОКТМО адреса по частям адреса. +// +// Параметры: +// АдресРФ - ОбъектXDTO - Адрес РФ. +// +// Возвращаемое значение: +// Структура - Коды адреса. +// +Функция КодыАдресаСервис(АдресРФ) + + Результат = СтруктураКодовАдреса(); + + АдресаДляПроверки = Новый Массив; + РезультатВебСервис = Новый Структура("Данные", Новый Массив); + СтруктураОписанияОшибкиПоставщика(РезультатВебСервис); + Уровни = АдресныйКлассификаторПовтИсп.УровниКлассификатораФИАС(); + АдресаДляПроверки.Добавить(Новый Структура("Адрес, Уровни", АдресРФ , Уровни)); + Попытка + ЗаполнитьРезультатПроверкиАдресаПоКлассификаторуСервис1С(РезультатВебСервис, АдресаДляПроверки); + Исключение + СтруктураОписанияОшибкиПоставщика(РезультатВебСервис, ИнформацияОбОшибке()); + ЗаписьЖурналаРегистрации( СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка, , , РезультатВебСервис.ПодробноеПредставлениеОшибки); + КонецПопытки; + + Если НЕ РезультатВебСервис.Отказ Тогда + Если РезультатВебСервис.Данные[0].Варианты.Количество() > 0 Тогда + ЗаполнитьЗначенияСвойств(Результат, РезультатВебСервис.Данные[0].Варианты[0]); + КонецЕсли; КонецЕсли; Возврат Результат; +КонецФункции + +// Читает здания и помещения адреса. +// +// Параметры: +// XDTOАдрес - ОбъектXDTO - Контактная информация или XDTO адреса. +// +// Возвращаемое значение: +// Соответствие - Наименование здания и значение. +// +Функция ЗданияАдреса(XDTOАдрес) + Результат = Новый Соответствие; + Для Каждого ДопЭлемент Из XDTOАдрес.ДопАдрЭл Цикл + Если ДопЭлемент.Номер <> Неопределено Тогда + КодОбъекта = ДопЭлемент.Номер.Тип; + ТипОбъекта = ТипОбъектаПоКодуСериализации(КодОбъекта); + Если ТипОбъекта <> Неопределено И (ТипОбъекта.Тип < 3) Тогда + Результат.Вставить(ВРег(ТипОбъекта.Наименование), ДопЭлемент.Номер.Значение); + КонецЕсли; + КонецЕсли; + КонецЦикла; + + Возврат Результат; +КонецФункции + +Функция УстановитьКодКЛАДР(КодыКЛАДР, ИмяПоля, Значение, КодКЛАДР) + КодыКЛАДР[ИмяПоля] = Значение; + Если ЗначениеЗаполнено(Значение) Тогда + КодКладр = Значение; + КонецЕсли; КонецФункции // Заполнение результата проверки адресного объекта по данным сервиса. @@ -2159,17 +3230,351 @@ КонецПроцедуры -// Заполнение результата проверки адресного объекта по загруженным данным. -// -Процедура ЗаполнитьРезультатПроверкиАдресаПоКлассификаторуВнутр(Результат, АдресаДляПроверки) +// Заполнение адреса по данным сервиса 1С. +// +Процедура ЗаполнитьАдресаПоПочтовомуИндексуКлассификатораСервис1С(Результат, Индекс, Уровни) + + Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); + + // Выбираем все записи + ПерваяЗапись = Неопределено; + РазмерПорции = 1000; + КодЯзыка = ТекущийКодЛокализации(); Данные = Результат.Данные; - Для Каждого ЭлементПроверки Из АдресаДляПроверки Цикл - ОдиночнаяПроверка = АнализОдногоАдресаПоКлассификатору(ЭлементПроверки.Адрес, ЭлементПроверки.Уровни); - Данные.Добавить(ОдиночнаяПроверка); + Порция = Сервис.SelectByPostalCode(Индекс, Уровни, ПерваяЗапись, "ASC", РазмерПорции, КодЯзыка, Метаданные.Имя); + Список = Порция.ПолучитьСписок("Item"); + + Если Список.Количество() = 0 Тогда + Возврат; + КонецЕсли; + Результат.ОбщаяЧастьПредставления = Формат(Индекс, "ЧГ=0") + ", " + Порция.Title; + + Для Каждого Строка Из Список Цикл + ПерваяЗапись = Строка.ID; + + СтрокаРезультата = Данные.Добавить(); + СтрокаРезультата.Идентификатор = Новый УникальныйИдентификатор(ПерваяЗапись); + СтрокаРезультата.Представление = Строка.Presentation; + СтрокаРезультата.Неактуален = НЕ Строка.Actual; КонецЦикла; -КонецПроцедуры +КонецПроцедуры + +Процедура ДобавитьВПредставлениеЭлементАдреса(Представление, Знач Наименование, Знач Сокращение) + + Наименование = СокрЛП(Наименование); + Наименование = ?(Наименование = "", "", СокрЛП(Наименование + " " + СокрЛ(Сокращение))); + + Если Не ПустаяСтрока(Наименование) Тогда + Если Не ПустаяСтрока(Представление) Тогда + Представление = Представление + ", " + Наименование; + Иначе + Представление = Наименование; + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +// Заполнение данных для проверки версии по сервису 1С. +// +Процедура ЗаполнитьВерсиюПоставщикаДанныхСервис1С(Результат) + + КодЯзыка = ТекущийКодЛокализации(); + Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); + Результат.Данные = Сервис.Ping(КодЯзыка, Метаданные.Имя); + +КонецПроцедуры + +// Заполнение данных для выбора адреса по данным сервиса 1С. +// +Процедура ЗаполнитьАдресаДляИнтерактивногоВыбораСервис1С(Результат, Уровни, Родитель, Уровень, ДополнительныеПараметры) + Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); + + РодительУровня = ?(ЗначениеЗаполнено(Родитель), Строка(Родитель), Неопределено); + КодЯзыка = ТекущийКодЛокализации(); + + Данные = Результат.Данные; + + // Если передан параметр - размер порции, то отдаем порционно, иначе - все. + ФормироватьПорцию = ДополнительныеПараметры.Свойство("РазмерПорции"); + Если ФормироватьПорцию Тогда + // Транслируем в порционный вызов. + РазмерПорции = ДополнительныеПараметры.РазмерПорции; + ПерваяЗапись = ?(ЗначениеЗаполнено(ДополнительныеПараметры.ПерваяЗапись), Строка(ДополнительныеПараметры.ПерваяЗапись), Неопределено); + Сортировка = ?(ЗначениеЗаполнено(ДополнительныеПараметры.Сортировка), Строка(ДополнительныеПараметры.Сортировка), "ASC"); + + Если ЗначениеЗаполнено(ПерваяЗапись) Тогда + ДлинаПервойЗаписи = СтрДлина(ПерваяЗапись); + ПерваяЗаписьСтрока = Лев("00000000-0000-0000-0000-000000000000", 36 - ДлинаПервойЗаписи) + ПерваяЗапись; + ПерваяЗапись = Новый УникальныйИдентификатор(ПерваяЗаписьСтрока); + КонецЕсли; + + Порция = Сервис.Select(РодительУровня, Уровень, ПерваяЗапись, Сортировка, РазмерПорции, КодЯзыка, Метаданные.Имя); + Результат.Заголовок = Порция.Title; + Список = Порция.ПолучитьСписок("Item"); + + Для Каждого Строка Из Список Цикл + СтрокаРезультата = Данные.Добавить(); + СтрокаРезультата.РегионЗагружен = Истина; + СтрокаРезультата.Идентификатор = Новый УникальныйИдентификатор(Строка.ID); + СтрокаРезультата.Представление = Строка.Presentation; + СтрокаРезультата.Неактуален = НЕ Строка.Actual; + КонецЦикла; + + Возврат; + КонецЕсли; + + // Выбираем все записи (дополнительные территории). + ПерваяЗапись = Неопределено; + РазмерПорции = 1000; + + Порция = Сервис.Select(РодительУровня, Уровень, Неопределено, "ASC", РазмерПорции, КодЯзыка, Метаданные.Имя); + Результат.Заголовок = Порция.Title; + Список = Порция.ПолучитьСписок("Item"); + + Для Каждого Строка Из Список Цикл + ПерваяЗапись = Строка.ID; + СтрокаРезультата = Данные.Добавить(); + СтрокаРезультата.РегионЗагружен = Истина; + СтрокаРезультата.Идентификатор = Новый УникальныйИдентификатор(ПерваяЗапись); + СтрокаРезультата.Представление = Строка.Presentation; + СтрокаРезультата.Неактуален = НЕ Строка.Actual; + КонецЦикла; + +КонецПроцедуры + +// Заполнение данных для автоподбора по данным сервиса 1С. +// +Процедура ЗаполнитьСписокАвтоподбораЧастиАдресаСервис1С(Результат, Текст, Родитель, Уровни, ДополнительныеПараметры) + + Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); + + УровниЗапроса = ?(ТипЗнч(Уровни) = Тип("Массив"), Новый ФиксированныйМассив(Уровни), Уровни); + КодЯзыка = ТекущийКодЛокализации(); + Данные = Результат.Данные; + + Порция = Сервис.Autocomplete(Строка(Родитель), УровниЗапроса, Текст, 20, КодЯзыка, Метаданные.Имя); + Список = Порция.ПолучитьСписок("Item"); + ТребуетсяПоискПоДополнительнымТерритория = Уровни.Найти(90) <> Неопределено; + + Для Каждого Строка Из Список Цикл + СтрокаРезультата = Данные.Добавить(); + СтрокаРезультата.РегионЗагружен = Истина; + Если ТребуетсяПоискПоДополнительнымТерритория Тогда + ДанныеПоСтроке = Сервис.GetActualInfo(Строка.ID, КодЯзыка, Метаданные.Имя); + Если ДанныеПоСтроке.ДопАдрЭл.Количество() > 0 Тогда + Для каждого Вариант Из ДанныеПоСтроке.ДопАдрЭл Цикл + Если СтрСравнить(Вариант.Значение, Строка.Presentation) = 0 Тогда + СтрокаРезультата.Уровень = 90; + Прервать; + КонецЕсли; + КонецЦикла; + КонецЕсли; + КонецЕсли; + СтрокаРезультата.Идентификатор = Новый УникальныйИдентификатор(Строка.ID); + СтрокаРезультата.Представление = Строка.Presentation; + СтрокаРезультата.Неактуален = НЕ Строка.Actual; + КонецЦикла; + +КонецПроцедуры + +// Заполнение актуальных данных адресного объекта или ориентира по данным сервиса 1С. +// +Процедура ЗаполнитьАктуальныеАдресныеСведенияСервис1С(Результат, Идентификатор) + + Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); + + КодЯзыка = ТекущийКодЛокализации(); + Данные = Сервис.GetActualInfo(Строка(Идентификатор), КодЯзыка, Метаданные.Имя); + Результат.Данные = Данные; + +КонецПроцедуры + +Функция ИдентификаторыАдресаПоКлассификаторуСервис1С(АдресаДляПроверки, ИскатьПоУлице, ВсеИдентификаторыАдреса); + + Результат = Новый Структура; + Идентификатор = Неопределено; + + Идентификатор = ИдентификаторЭлементаАдресаСервис1С(АдресаДляПроверки["Регион"].Наименование, + АдресаДляПроверки["Регион"].Сокращение, Идентификатор, 1); + Результат.Вставить("ИдентификаторРегион", Идентификатор); + + Если ЗначениеЗаполнено(АдресаДляПроверки["Округ"].Наименование) Тогда + Идентификатор = ИдентификаторЭлементаАдресаСервис1С(АдресаДляПроверки["Округ"].Наименование, + АдресаДляПроверки["Округ"].Сокращение, Идентификатор, 2); + Результат.Вставить("ИдентификаторОкруг", Идентификатор); + КонецЕсли; + + Если ЗначениеЗаполнено(АдресаДляПроверки["Район"].Наименование) Тогда + Идентификатор = ИдентификаторЭлементаАдресаСервис1С(АдресаДляПроверки["Район"].Наименование, + АдресаДляПроверки["Район"].Сокращение, Идентификатор, 3); + Результат.Вставить("ИдентификаторРайон", Идентификатор); + КонецЕсли; + + Если ЗначениеЗаполнено(АдресаДляПроверки["Город"].Наименование) Тогда + Идентификатор = ИдентификаторЭлементаАдресаСервис1С(АдресаДляПроверки["Город"].Наименование, + АдресаДляПроверки["Город"].Сокращение, Идентификатор, 4); + Результат.Вставить("ИдентификаторГород", Идентификатор); + КонецЕсли; + + Если ЗначениеЗаполнено(АдресаДляПроверки["ВнутригородскойРайон"].Наименование) Тогда + Идентификатор = ИдентификаторЭлементаАдресаСервис1С(АдресаДляПроверки["ВнутригородскойРайон"].Наименование, + АдресаДляПроверки["ВнутригородскойРайон"].Сокращение, Идентификатор, 5); + Результат.Вставить("ИдентификаторВнутригРайон", Идентификатор); + КонецЕсли; + + Если ЗначениеЗаполнено(АдресаДляПроверки["НаселенныйПункт"].Наименование) Тогда + Идентификатор = ИдентификаторЭлементаАдресаСервис1С(АдресаДляПроверки["НаселенныйПункт"].Наименование, + АдресаДляПроверки["НаселенныйПункт"].Сокращение, Идентификатор, 6); + Результат.Вставить("ИдентификаторНаселенныйПункт", Идентификатор); + КонецЕсли; + + Если ИскатьПоУлице И ЗначениеЗаполнено(АдресаДляПроверки["Улица"].Наименование) Тогда + Идентификатор = ИдентификаторЭлементаАдресаСервис1С(АдресаДляПроверки["Улица"].Наименование, + АдресаДляПроверки["Улица"].Сокращение, Идентификатор, 7); + Результат.Вставить("ИдентификаторУлица", Идентификатор); + КонецЕсли; + + Если ВсеИдентификаторыАдреса Тогда + Возврат Результат; + КонецЕсли; + Возврат Идентификатор; + +КонецФункции + +Функция ИдентификаторЭлементаАдресаСервис1С(Наименование, Сокращение, ИдентификаторРодитель, Уровень) + + Если НЕ ЗначениеЗаполнено(ИдентификаторРодитель) И Уровень > 1 Тогда + Возврат Неопределено; // т.к. мы не знаем объект верхнего уровня, то нет смысла искать. + КонецЕсли; + + Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); + КодЯзыка = ТекущийКодЛокализации(); + + Порция = Сервис.Autocomplete(ИдентификаторРодитель, Уровень, Наименование, 100, КодЯзыка, Метаданные.Имя); + Представление = Наименование + " " + Сокращение; + + Список = Порция.ПолучитьСписок("Item"); + Для Каждого Строка Из Список Цикл + Если Строка.Presentation = Представление Тогда + Возврат Новый УникальныйИдентификатор(Строка.ID); + Продолжить; + КонецЕсли; + КонецЦикла; + + Возврат Неопределено; + +КонецФункции + +// Получает идентификаторы адреса через веб-сервис. +// +// Параметры: +// АдресДляПроверки - Строка - Строка XML контактной информации содержащая адрес. +// +// Возвращаемое значение: +// Структура - набор пар ключ-значение. +// * ИдентификаторАдресногоОбъекта - УникальныйИдентификатор - Идентификатор адресного объекта (улицы, нас. пункта). +// * ИдентификаторДома - УникальныйИдентификатор - Идентификатор дома адресного объекта. +// * Отказ - Булево - Поставщик не доступен. +// * ПодробноеПредставлениеОшибки - Строка - Описание ошибки, если поставщик недоступен иначе Неопределено. +// * КраткоеПредставлениеОшибки - Строка - Описание ошибки, если поставщик недоступен иначе Неопределено. +// +Процедура ОпределитьИдентификаторыАдресаСервис1С(Результат, АдресДляПроверки) + + Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); + + СписокДляПроверки = Сервис.ФабрикаXDTO.Создать(Сервис.ФабрикаXDTO.Тип(ПространствоИмен(), "AddressList")); + ТипАдресаРФ = Сервис.ФабрикаXDTO.Тип(ПространствоИменАдресаРФ(), "АдресРФ"); + ТипАдреса = Сервис.ФабрикаXDTO.Тип(ПространствоИменАдресаРФ(), "Адрес"); + ТипЭлементаСписка = СписокДляПроверки.Свойства().Получить("Item").Тип; + + ПроверяемыйАдрес = СписокДляПроверки.Item.Добавить(Сервис.ФабрикаXDTO.Создать(ТипЭлементаСписка)); + ПроверяемыйАдрес.Levels = АдресныйКлассификаторПовтИсп.УровниКлассификатораФИАС(); + Если ЭтоКонтактнаяИнформацияВXML(АдресДляПроверки) Тогда + АдресXDTO = ОбщегоНазначения.ОбъектXDTOИзСтрокиXML(АдресДляПроверки, Сервис.ФабрикаXDTO); + ПроверяемыйАдрес.Address = АдресXDTO.Состав.Состав; + Иначе + ВызватьИсключение НСтр("ru = 'Сведения о контактной информации были повреждены или некорректно заполнены'"); + КонецЕсли; + + КодЯзыка = ТекущийКодЛокализации(); + РезультатПроверки = Сервис.Analyze(СписокДляПроверки, КодЯзыка, Ложь, Метаданные.Имя); + + // Формируем структуру результата. + Если РезультатПроверки.Item.Количество() > 0 Тогда + Если РезультатПроверки.Item[0].Error.Количество() > 0 Тогда + Ошибка = РезультатПроверки.Item[0].Error[0]; + Результат.КраткоеПредставлениеОшибки = Ошибка.Text; + Результат.ПодробноеПредставлениеОшибки = Ошибка.Suggestion; + Результат.Отказ = Истина; + КонецЕсли; + + Если РезультатПроверки.Item[0].Variant.Количество() Тогда + Вариант = РезультатПроверки.Item[0].Variant[0]; + Результат.ИдентификаторАдресногоОбъекта = Вариант.ID; + Результат.ИдентификаторДома = Вариант.HouseID; + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +Функция ЗаполнитьКодыПоИдентификаторуДома(ИдентификаторАдресногоОбъекта, СведенияОДоме, Коды) + + Источник = ИсточникДанныхАдресногоКлассификатора(); + Если ПустаяСтрока(Источник) Тогда + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ДомаЗданияСтроения.Строения КАК Строения + |ИЗ + | РегистрСведений.ДомаЗданияСтроения КАК ДомаЗданияСтроения + |ГДЕ + | ДомаЗданияСтроения.АдресныйОбъект = &АдресныйОбъект"; + + Запрос.УстановитьПараметр("АдресныйОбъект", ИдентификаторАдресногоОбъекта); + Запись = Запрос.Выполнить().Выбрать(); + + Пока Запись.Следующий() Цикл + Если ЗначениеЗаполнено(Запись.Строения) Тогда + Описание = Запись.Строения.Получить(); + Если Не ПустаяСтрока(Описание) Тогда + ИдентификаторДома = ИдентификаторДома(Описание, СведенияОДоме); + Если ЗначениеЗаполнено(ИдентификаторДома) Тогда + Прервать; + КонецЕсли; + КонецЕсли; + КонецЕсли; + КонецЦикла; + КонецЕсли; + + Если ЗначениеЗаполнено(ИдентификаторДома) Тогда + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ДополнительныеАдресныеСведения.Идентификатор, + | ДополнительныеАдресныеСведения.КодСубъектаРФ, + | ДополнительныеАдресныеСведения.OKATO, + | ДополнительныеАдресныеСведения.ОКТМО, + | ДополнительныеАдресныеСведения.КодИФНСФЛ, + | ДополнительныеАдресныеСведения.КодИФНСЮЛ, + | ДополнительныеАдресныеСведения.КодУчасткаИФНСФЛ, + | ДополнительныеАдресныеСведения.КодУчасткаИФНСЮЛ + |ИЗ + | РегистрСведений.ДополнительныеАдресныеСведения КАК ДополнительныеАдресныеСведения + |ГДЕ + | ДополнительныеАдресныеСведения.Идентификатор = &Идентификатор"; + + Запрос.УстановитьПараметр("Идентификатор", ИдентификаторДома); + + РезультатЗапроса = Запрос.Выполнить().Выбрать(); + + Если РезультатЗапроса.Следующий() Тогда + ЗаполнитьЗначенияСвойств(Коды, РезультатЗапроса); + КонецЕсли; + КонецЕсли; + +КонецФункции // Локальная проверка одного адреса. // @@ -2179,6 +3584,11 @@ ОшибкиПроверки = Результат.Ошибки; ВариантыАдреса = Результат.Варианты; + Если ТипЗнч(Адрес) <> Тип("ОбъектXDTO") Тогда + ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, "Адрес", НСтр("ru = 'Невозможно проверить адрес из-за некорректных сведений. Проверьте правильность заполнения адреса.'")); + Возврат Результат; + КонецЕсли; + // Субъект должен быть всегда СубъектРФ = АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(Адрес.СубъектРФ); Если ПустаяСтрока(СубъектРФ.Наименование) Тогда @@ -2197,7 +3607,7 @@ Результат.АдресПроверен = Истина; Возврат Результат; ИначеЕсли НЕ РегионЗагруженВАдресныеСведения Тогда - ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, "СубъектРФ", НСтр("ru = 'Отсутствуют адресные сведения по региону'") + " " + Адрес.СубъектРФ); + ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, "СубъектРФ", НСтр("ru = 'Отсутствуют адресные сведения по региону'") + ": " + Адрес.СубъектРФ + "."); Результат.АдресПроверен = Ложь; Возврат Результат; КонецЕсли; @@ -2288,7 +3698,7 @@ // Дополнительный или подчиненный? Вариант = АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(ДополнительныйЭлемент.Значение); - СтрокиВариантов = ТаблицаСокращенийДополнительных.НайтиСтроки( Новый Структура("Сокращение, Значение", Вариант.Сокращение, ТипАдресногоЭлемента)); + СтрокиВариантов = ТаблицаСокращенийДополнительных.НайтиСтроки(Новый Структура("Сокращение, Значение", Вариант.Сокращение, ТипАдресногоЭлемента)); Если СтрокиВариантов.Количество() > 0 Тогда Код = СтрокиВариантов[0].Идентификатор; Если Код = 90 Тогда @@ -2306,6 +3716,7 @@ ВнутригородскойРайон = АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(Адрес.ВнутригРайон); НаселенныйПункт = АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(Адрес.НаселПункт); Улица = АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(Адрес.Улица); + ИндексЭлемент = ПолучитьXDTOРеквизитОбъекта(Адрес, "ДопАдрЭл[ТипАдрЭл='10100000']"); Индекс = ?(ИндексЭлемент <> Неопределено, ИндексЭлемент.Значение, ""); @@ -2317,7 +3728,16 @@ ПроверятьУлицу = Не ПустаяСтрока(Улица.Наименование); ПроверятьДополнительный = Не ПустаяСтрока(Дополнительный.Наименование); ПроверятьПодчиненный = Не ПустаяСтрока(Подчиненный.Наименование); - + + ПолеАдресныйОбъектИдентификатор = ?(ПроверятьПодчиненный, "Подчиненный.Идентификатор", + ?(ПроверятьДополнительный, "Дополнительный.Идентификатор", + ?(ПроверятьУлицу, "Улица.Идентификатор", + ?(ПроверятьНаселенныйПункт, "НаселенныйПункт.Идентификатор", + ?(ПроверятьВнутригородскойРайон, "ВнутригородскойРайон.Идентификатор", + ?(ПроверятьГород, "Город.Идентификатор", + ?(ПроверятьРайон, "Район.Идентификатор", + ?(ПроверятьОкруг, "Округ.Идентификатор", "СубъектРФ.Идентификатор")))))))); + Запрос.Текст = "ВЫБРАТЬ | ИСТИНА КАК СубъектРФНайден, | СубъектРФ.Идентификатор КАК СубъектРФИдентификатор, @@ -2533,20 +3953,12 @@ |ЛЕВОЕ СОЕДИНЕНИЕ | РегистрСведений.ДомаЗданияСтроения КАК ДомаЗданияСтроения |ПО - | ДомаЗданияСтроения.АдресныйОбъект = - |" + ?(ПроверятьПодчиненный, "Подчиненный.Идентификатор", " - |" + ?(ПроверятьДополнительный, "Дополнительный.Идентификатор", " - |" + ?(ПроверятьУлицу, "Улица.Идентификатор", " - |" + ?(ПроверятьНаселенныйПункт, "НаселенныйПункт.Идентификатор", " - |" + ?(ПроверятьВнутригородскойРайон, "ВнутригородскойРайон.Идентификатор", " - |" + ?(ПроверятьГород, "Город.Идентификатор", " - |" + ?(ПроверятьРайон, "Район.Идентификатор", " - |" + ?(ПроверятьОкруг, "Округ.Идентификатор", " - | СубъектРФ.Идентификатор")))))))) + " + | ДомаЗданияСтроения.АдресныйОбъект = " + ПолеАдресныйОбъектИдентификатор + " | |// Условие на регион, который есть всегда |ГДЕ | СубъектРФ.Наименование = &СубъектРФНаименование + | И СубъектРФ.Сокращение = &СубъектРФСокращение | И СубъектРФ.Уровень = 1 | И СубъектРФ.КодОкруга = 0 | И СубъектРФ.КодРайона = 0 @@ -2556,8 +3968,10 @@ | И СубъектРФ.КодУлицы = 0 | И СубъектРФ.КодДополнительногоЭлемента = 0 | И СубъектРФ.КодПодчиненногоЭлемента = 0"; - + + Запрос.УстановитьПараметр("СубъектРФНаименование", СубъектРФ.Наименование); + Запрос.УстановитьПараметр("СубъектРФСокращение", СубъектРФ.Сокращение); Запрос.УстановитьПараметр("ОкругНаименование", Округ.Наименование); Запрос.УстановитьПараметр("ОкругСокращение", Округ.Сокращение); @@ -2596,19 +4010,11 @@ ЗаписиДомов = РезультатЗапроса.Выгрузить(); КорректныеЗаписи = Новый Массив; - ИндексНайден = Ложь; УлицаНайдена = Ложь; ВариантАдреса = Новый Структура; Для Каждого Запись Из ЗаписиДомов Цикл; ЗаполнитьПочтовыйИндексИКодКЛАДРПоИерархииФИАС(ВариантАдреса, Запись); - Если ВариантАдреса.Свойство("Индекс") Тогда - Если ЗначениеЗаполнено(Индекс) И ВариантАдреса.Индекс <> Число(Индекс) Тогда - Продолжить; - Иначе - ИндексНайден = Истина; - КонецЕсли; - КонецЕсли; - + Если ПроверятьОкруг И Не Запись.ОкругНайден Тогда ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, "Округ", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Округ ""%1"" отсутствует в адресном классификаторе'"), Округ.Наименование + " " + Округ.Сокращение)); @@ -2642,13 +4048,13 @@ Если ПроверятьДополнительный И Не Запись.ДополнительныйНайден Тогда ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, "Дополнительный", - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Дополнительный элемент ""%1""отсутствует в адресном классификаторе'"), + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Дополнительная территория ""%1""отсутствует в адресном классификаторе'"), Дополнительный.Наименование + " " + Дополнительный.Сокращение)); КонецЕсли; Если ПроверятьПодчиненный И Не Запись.ПодчиненныйНайден Тогда ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, "Подчиненный", - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Подчиненный элемент ""%1"" отсутствует в адресном классификаторе'"), + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Элемент дополнительной территории ""%1"" отсутствует в адресном классификаторе'"), Подчиненный.Наименование + " " + Подчиненный.Сокращение)); КонецЕсли; @@ -2671,12 +4077,6 @@ КонецЕсли; КонецЕсли; - Если НЕ ИндексНайден Тогда - ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, "Индекс", - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Индекс ""%1"" в адресном классификаторе не соответствует введенному адресу'"), Индекс)); - Возврат Результат; - КонецЕсли; - Если КорректныеЗаписи.Количество() = 0 Тогда // Нет смысла искать дома и выдавать варианты, надо посмотреть в историю. Возврат Результат; @@ -2759,8 +4159,8 @@ КонецЕсли; - // Проверить индекс - Если НЕ ИндексКорректный И ЗначениеЗаполнено(Индекс) Тогда + // Проверить индекс + Если НЕ ИндексКорректный И ЗначениеЗаполнено(Индекс) И ОшибкиПроверки.Количество() = 0 Тогда ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ОшибкиПроверки, "Индекс", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Индекс ""%1"" в адресном классификаторе не соответствует введенному адресу'"), Индекс)); КонецЕсли; @@ -2817,17 +4217,13 @@ | ИсторияАдресныхОбъектов.Наименование = &Наименование | И ИсторияАдресныхОбъектов.Сокращение = &Сокращение"; - - СхемаЗапроса = Новый СхемаЗапроса(); - СхемаЗапроса.УстановитьТекстЗапроса(ТекстЗапроса); - Вариант = Новый Структура; ЗаполнитьИдентификаторПоИерархииФИАС(Вариант, Запись); Если Не ЗначениеЗаполнено(Вариант.Идентификатор) Тогда Возврат Результат; КонецЕсли; - Запрос = Новый Запрос(СхемаЗапроса.ПолучитьТекстЗапроса()); + Запрос = Новый Запрос(ТекстЗапроса); Запрос.УстановитьПараметр("Наименование", Наименование); Запрос.УстановитьПараметр("Сокращение", Сокращение); Запрос.УстановитьПараметр("Идентификатор", Вариант.Идентификатор); @@ -2843,6 +4239,206 @@ КонецФункции +// Функция - Сформировать описание здания. +// +// Параметры: +// НазваниеВладения - Строка - Наименование владения (Дом, Владение, Домовладение). +// НомерВладения - Строка - Номер владения, дома. +// НомерКорпуса - Строка - Номер корпуса. +// НазваниеСтроения - Строка - Наименование строения (Строения, Сооружение, Участок, Литера). +// НомерСтроения - Строка - Номер строения, сооружения. +// ДополнительныеПараметры - Структура - Расширение возможностей строки описания здания. +// +// Возвращаемое значение: +// Строка, ФорматированнаяСтрока - Представление дома. +// +Функция СформироватьОписаниеЗдания(НазваниеВладения, НомерВладения, НомерКорпуса, НазваниеСтроения, НомерСтроения, ДополнительныеПараметры = Неопределено) + + ВыделятьСтрокуПоиска = Ложь; + Если ДополнительныеПараметры <> Неопределено Тогда + Если ДополнительныеПараметры.Свойство("СтрокаПоиска") Тогда + ВыделятьСтрокуПоиска = Истина; + СтрокаПоиска = ДополнительныеПараметры.СтрокаПоиска; + КонецЕсли; + КонецЕсли; + + КорпусИСтроение = ""; + Если ЗначениеЗаполнено(НомерКорпуса) Тогда + КорпусИСтроение = ", "+ НСтр("ru = 'корпус'") + " " + НомерКорпуса; + КонецЕсли; + + Если ЗначениеЗаполнено(НомерСтроения) Тогда + КорпусИСтроение = КорпусИСтроение + ", " + НазваниеСтроения + " " + СокрЛП(НомерСтроения); + КонецЕсли; + + Если ВыделятьСтрокуПоиска Тогда + Дом = НазваниеВладения + Новый ФорматированнаяСтрока(НазваниеВладения + " ", + Новый ФорматированнаяСтрока(СтрокаПоиска, Новый Шрифт(,, Истина) , ЦветаСтиля.РезультатУспехЦвет), + Сред(НомерВладения, СтрДлина(СтрокаПоиска) + 1)); + Результат = Новый ФорматированнаяСтрока(Дом, КорпусИСтроение); + Иначе + Результат = НазваниеВладения+ " "+ НомерВладения + КорпусИСтроение; + КонецЕсли; + + Возврат Результат; + +КонецФункции + +Функция КодДополнительногоЭлемента(ДополнительныйПредставление) + + Сокращение = ВРег(АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(ДополнительныйПредставление).Сокращение); + Если Сокращение = "ГСК" Тогда + Возврат "10600000"; + ИначеЕсли Сокращение = "СНТ" Тогда + Возврат "10300000"; + ИначеЕсли Сокращение = "ТЕР" Тогда + Возврат "10700000"; + КонецЕсли; + + Возврат "10200000"; +КонецФункции + +Функция СтруктураКодовАдреса() + Коды = Новый Структура(); + Коды.Вставить("КодКЛАДР"); + Коды.Вставить("Идентификатор"); + Коды.Вставить("OKATO"); + Коды.Вставить("ОКТМО"); + Коды.Вставить("КодИФНСФЛ"); + Коды.Вставить("КодИФНСЮЛ"); + Коды.Вставить("КодУчасткаИФНСФЛ"); + Коды.Вставить("КодУчасткаИФНСЮЛ"); + + Возврат Коды; +КонецФункции + +Функция СтруктураКодовКЛАДРПоУровням() + Возврат Новый Структура("Регион, Округ, Район, Город, ВнутригородскойРайон, НаселенныйПункт, Улица"); +КонецФункции + +// Возвращает строку с описанием типа по коду части адреса. +// Противоположность функции "КодСериализацииОбъектаАдресации". +// +// Параметры: +// Код - Строка - код +// +// Возвращаемое значение: +// Число - Тип +// +Функция ТипОбъектаПоКодуСериализации(Код) + Для Каждого Элемент Из ТипыОбъектовАдресацииАдресаРФ() Цикл + Если Элемент.Код = Код Тогда + Возврат Элемент; + КонецЕсли; + КонецЦикла; + + Возврат Неопределено; +КонецФункции + +// Возвращает массив структур с информацией о частях адреса согласно приказу ФНС ММВ-7-1/525 от 31.08.2011. +// +// Возвращаемое значение: +// Массив - содержит структуры - описания. +// +Функция ТипыОбъектовАдресацииАдресаРФ() + + Результат = Новый Массив; + + // Код, Наименование, Тип, Порядок, КодФИАС + // Тип: 1 - владение, 2 - здание, 3 - помещение. + + Результат.Добавить(СтрокаОбъектаАдресации("1010", НСтр("ru = 'Дом'"), 1, 1, 2)); + Результат.Добавить(СтрокаОбъектаАдресации("1020", НСтр("ru = 'Владение'"), 1, 2, 1)); + Результат.Добавить(СтрокаОбъектаАдресации("1030", НСтр("ru = 'Домовладение'"), 1, 3, 3)); + + Результат.Добавить(СтрокаОбъектаАдресации("1050", НСтр("ru = 'Корпус'"), 2, 1)); + Результат.Добавить(СтрокаОбъектаАдресации("1060", НСтр("ru = 'Строение'"), 2, 2, 1)); + Результат.Добавить(СтрокаОбъектаАдресации("1080", НСтр("ru = 'Литера'"), 2, 3, 3)); + Результат.Добавить(СтрокаОбъектаАдресации("1070", НСтр("ru = 'Сооружение'"), 2, 4, 2)); + Результат.Добавить(СтрокаОбъектаАдресации("1040", НСтр("ru = 'Участок'"), 2, 5)); + + Результат.Добавить(СтрокаОбъектаАдресации("2010", НСтр("ru = 'Квартира'"), 3, 1)); + Результат.Добавить(СтрокаОбъектаАдресации("2030", НСтр("ru = 'Офис'"), 3, 2)); + Результат.Добавить(СтрокаОбъектаАдресации("2040", НСтр("ru = 'Бокс'"), 3, 3)); + Результат.Добавить(СтрокаОбъектаАдресации("2020", НСтр("ru = 'Помещение'"), 3, 4)); + Результат.Добавить(СтрокаОбъектаАдресации("2050", НСтр("ru = 'Комната'"), 3, 5)); + Результат.Добавить(СтрокаОбъектаАдресации("2060", НСтр("ru = 'Этаж'"), 3, 6)); + // Наши сокращения для поддержки обратной совместимости при парсинге. + Результат.Добавить(СтрокаОбъектаАдресации("2010", НСтр("ru = 'кв.'"), 3, 6)); + Результат.Добавить(СтрокаОбъектаАдресации("2030", НСтр("ru = 'оф.'"), 3, 7)); + + // Уточняющие объекты + Результат.Добавить(СтрокаОбъектаАдресации("10100000", НСтр("ru = 'Почтовый индекс'"))); + Результат.Добавить(СтрокаОбъектаАдресации("10200000", НСтр("ru = 'Адресная точка'"))); + Результат.Добавить(СтрокаОбъектаАдресации("10300000", НСтр("ru = 'Садовое товарищество'"))); + Результат.Добавить(СтрокаОбъектаАдресации("10400000", НСтр("ru = 'Элемент улично-дорожной сети, планировочной структуры дополнительного адресного элемента'"))); + Результат.Добавить(СтрокаОбъектаАдресации("10500000", НСтр("ru = 'Промышленная зона'"))); + Результат.Добавить(СтрокаОбъектаАдресации("10600000", НСтр("ru = 'Гаражно-строительный кооператив'"))); + Результат.Добавить(СтрокаОбъектаАдресации("10700000", НСтр("ru = 'Территория'"))); + + Возврат Результат; +КонецФункции + +Функция СтрокаОбъектаАдресации(Код, Наименование, Тип = 0, Порядок = 0, КодФИАС = 0) + + СтруктураОбъектаАдресации = Новый Структура; + СтруктураОбъектаАдресации.Вставить("Код", Код); + СтруктураОбъектаАдресации.Вставить("Наименование", Наименование); + СтруктураОбъектаАдресации.Вставить("Тип", Тип); + СтруктураОбъектаАдресации.Вставить("Порядок", Порядок); + СтруктураОбъектаАдресации.Вставить("КодФИАС", КодФИАС); + СтруктураОбъектаАдресации.Вставить("Сокращение", НРег(Наименование)); + СтруктураОбъектаАдресации.Вставить("Ключ", ВРег(Наименование)); + Возврат СтруктураОбъектаАдресации; + +КонецФункции + +Функция ТекстОпциональныхПолейЗапросаПроверкиАдреса(ФлагПроверки, ИмяПоля) + + Если ФлагПроверки Тогда + Вариант = " + | ВЫБОР КОГДА [Поле].Идентификатор ЕСТЬ NULL ТОГДА ЛОЖЬ ИНАЧЕ ИСТИНА КОНЕЦ КАК [Поле]Найден, + | [Поле].Идентификатор КАК [Поле]Идентификатор, + | [Поле].ПочтовыйИндекс КАК [Поле]ПочтовыйИндекс, + | [Поле].КодКЛАДР КАК [Поле]КодКЛАДР, + | [Поле].Дополнительно КАК [Поле]Дополнительно, + | [Поле]Дополнительно.OKATO КАК [Поле]ДополнительноOKATO, + | [Поле]Дополнительно.ОКТМО КАК [Поле]ДополнительноОКТМО, + | [Поле]Дополнительно.КодИФНСФЛ КАК [Поле]ДополнительноКодИФНСФЛ, + | [Поле]Дополнительно.КодИФНСЮЛ КАК [Поле]ДополнительноКодИФНСЮЛ, + | [Поле]Дополнительно.КодУчасткаИФНСФЛ КАК [Поле]ДополнительноКодУчасткаИФНСФЛ, + | [Поле]Дополнительно.КодУчасткаИФНСЮЛ КАК [Поле]ДополнительноКодУчасткаИФНСЮЛ, + |"; + Иначе + Вариант = " + | NULL КАК [Поле]Найден, + | NULL КАК [Поле]Идентификатор, + | NULL КАК [Поле]ПочтовыйИндекс, + | NULL КАК [Поле]КодКЛАДР, + | NULL КАК [Поле]Дополнительно, + | NULL КАК [Поле]ДополнительноOKATO, + | NULL КАК [Поле]ДополнительноОКТМО, + | NULL КАК [Поле]ДополнительноКодИФНСФЛ, + | NULL КАК [Поле]ДополнительноКодИФНСЮЛ, + | NULL КАК [Поле]ДополнительноКодУчасткаИФНСФЛ, + | NULL КАК [Поле]ДополнительноКодУчасткаИФНСЮЛ, + |"; + КонецЕсли; + + Возврат СтрЗаменить(Вариант, "[Поле]", ИмяПоля); +КонецФункции + +Функция ПараметрыАутентификацииНаСайте() Экспорт + + Если ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + МодульИнтернетПоддержкаПользователей = ОбщегоНазначения.ОбщийМодуль("ИнтернетПоддержкаПользователей"); + Возврат МодульИнтернетПоддержкаПользователей.ДанныеАутентификацииПользователяИнтернетПоддержки(); + Иначе + ВызватьИсключение НСтр("ru = 'Сервис интернет-поддержки пользователей не подключен.'"); + КонецЕсли; + +КонецФункции + // Возвращает идентификатор адресного объекта по частям адреса. // // Параметры: @@ -2869,82 +4465,6 @@ КонецФункции -Функция ИдентификаторыАдресаПоКлассификаторуСервис1С(АдресаДляПроверки, ИскатьПоУлице, ВсеИдентификаторыАдреса); - - Результат = Новый Структура; - Идентификатор = Неопределено; - - Идентификатор = ИдентификаторЭлементаАдресаСервис1С(АдресаДляПроверки["Регион"].Наименование, - АдресаДляПроверки["Регион"].Сокращение, Идентификатор, 1); - Результат.Вставить("ИдентификаторРегион", Идентификатор); - - Если ЗначениеЗаполнено(АдресаДляПроверки["Округ"].Наименование) Тогда - Идентификатор = ИдентификаторЭлементаАдресаСервис1С(АдресаДляПроверки["Округ"].Наименование, - АдресаДляПроверки["Округ"].Сокращение, Идентификатор, 2); - Результат.Вставить("ИдентификаторОкруг", Идентификатор); - КонецЕсли; - - Если ЗначениеЗаполнено(АдресаДляПроверки["Район"].Наименование) Тогда - Идентификатор = ИдентификаторЭлементаАдресаСервис1С(АдресаДляПроверки["Район"].Наименование, - АдресаДляПроверки["Район"].Сокращение, Идентификатор, 3); - Результат.Вставить("ИдентификаторРайон", Идентификатор); - КонецЕсли; - - Если ЗначениеЗаполнено(АдресаДляПроверки["Город"].Наименование) Тогда - Идентификатор = ИдентификаторЭлементаАдресаСервис1С(АдресаДляПроверки["Город"].Наименование, - АдресаДляПроверки["Город"].Сокращение, Идентификатор, 4); - Результат.Вставить("ИдентификаторГород", Идентификатор); - КонецЕсли; - - Если ЗначениеЗаполнено(АдресаДляПроверки["ВнутригородскойРайон"].Наименование) Тогда - Идентификатор = ИдентификаторЭлементаАдресаСервис1С(АдресаДляПроверки["ВнутригородскойРайон"].Наименование, - АдресаДляПроверки["ВнутригородскойРайон"].Сокращение, Идентификатор, 5); - Результат.Вставить("ИдентификаторВнутригРайон", Идентификатор); - КонецЕсли; - - Если ЗначениеЗаполнено(АдресаДляПроверки["НаселенныйПункт"].Наименование) Тогда - Идентификатор = ИдентификаторЭлементаАдресаСервис1С(АдресаДляПроверки["НаселенныйПункт"].Наименование, - АдресаДляПроверки["НаселенныйПункт"].Сокращение, Идентификатор, 6); - Результат.Вставить("ИдентификаторНаселенныйПункт", Идентификатор); - КонецЕсли; - - Если ИскатьПоУлице И ЗначениеЗаполнено(АдресаДляПроверки["Улица"].Наименование) Тогда - Идентификатор = ИдентификаторЭлементаАдресаСервис1С(АдресаДляПроверки["Улица"].Наименование, - АдресаДляПроверки["Улица"].Сокращение, Идентификатор, 7); - Результат.Вставить("ИдентификаторУлица", Идентификатор); - КонецЕсли; - - Если ВсеИдентификаторыАдреса Тогда - Возврат Результат; - КонецЕсли; - Возврат Идентификатор; - -КонецФункции - -Функция ИдентификаторЭлементаАдресаСервис1С(Наименование, Сокращение, ИдентификаторРодитель, Уровень) - - Если НЕ ЗначениеЗаполнено(ИдентификаторРодитель) И Уровень > 1 Тогда - Возврат Неопределено; // т.к. мы не знаем объект верхнего уровня, то нет смысла искать - КонецЕсли; - - Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); - КодЯзыка = ТекущийКодЛокализации(); - - Порция = Сервис.Autocomplete(ИдентификаторРодитель, Уровень, Наименование, 100, КодЯзыка, Метаданные.Имя); - Представление = Наименование + " " + Сокращение; - - Список = Порция.ПолучитьСписок("Item"); - Для Каждого Строка Из Список Цикл - Если Строка.Presentation = Представление Тогда - Возврат Новый УникальныйИдентификатор(Строка.ID); - Продолжить; - КонецЕсли; - КонецЦикла; - - Возврат Неопределено; - -КонецФункции - Функция ИдентификаторыАдреса(ПоляАдреса, ИскатьПоУлице, ВсеИдентификаторыАдреса = Ложь) Источник = ИсточникДанныхАдресногоКлассификатора(); @@ -2952,7 +4472,7 @@ Попытка Возврат ИдентификаторыАдресаПоКлассификаторуСервис1С(ПоляАдреса, ИскатьПоУлице, ВсеИдентификаторыАдреса); Исключение - РезультатВебСервис = СтруктураОписанияОшибкиПоставщика(); + РезультатВебСервис = СтруктураОписанияОшибкиПоставщика(, ИнформацияОбОшибке()); ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка, , , РезультатВебСервис.ПодробноеПредставлениеОшибки); Возврат Неопределено; КонецПопытки; @@ -3148,272 +4668,13 @@ Возврат Неопределено; КонецФункции -// Определяет индекс и ОКТМО адреса по частям адреса. -// -Функция ИндексИОКТМОАдресаПоЧастямАдреса(Адрес, Идентификатор = Неопределено) Экспорт - - Результат = Новый Структура("Индекс, ОКТМО", Неопределено, Неопределено); - Источник = ИсточникДанныхАдресногоКлассификатора(); - Если ПустаяСтрока(Источник) Тогда - // Локальное - - Если НЕ ЗначениеЗаполнено(Идентификатор) Тогда - Идентификатор = ИдентификаторАдресногоОбъектаПоЧастямАдреса(Адрес, Истина); - КонецЕсли; - - Если Идентификатор <> Неопределено Тогда - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | АдресныеОбъекты.ПочтовыйИндекс - |ИЗ - | РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты - |ГДЕ - | АдресныеОбъекты.Идентификатор = &Идентификатор - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ - | АдресныеОбъекты.Дополнительно КАК Дополнительно, - | ДополнительныеАдресныеСведения.КодСубъектаРФ, - | ДополнительныеАдресныеСведения.OKATO, - | ДополнительныеАдресныеСведения.ОКТМО, - | ДополнительныеАдресныеСведения.КодИФНСФЛ, - | ДополнительныеАдресныеСведения.КодИФНСЮЛ, - | ДополнительныеАдресныеСведения.КодУчасткаИФНСФЛ, - | ДополнительныеАдресныеСведения.КодУчасткаИФНСЮЛ - |ИЗ - | РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДополнительныеАдресныеСведения КАК ДополнительныеАдресныеСведения - | ПО АдресныеОбъекты.Дополнительно = ДополнительныеАдресныеСведения.Идентификатор - |ГДЕ - | АдресныеОбъекты.Идентификатор = &Идентификатор"; - - Запрос.УстановитьПараметр("Идентификатор", Идентификатор); - РезультатЗапроса = Запрос.ВыполнитьПакет(); - РезультатЗапросаИндекс = РезультатЗапроса[0].Выбрать(); - РезультатЗапросаОКТМО = РезультатЗапроса[1].Выбрать(); - - Если РезультатЗапросаИндекс.Следующий() Тогда - Если РезультатЗапросаИндекс.ПочтовыйИндекс = 0 Тогда - - // Расшифровка свойств адреса - Запрос = Новый Запрос( - "ВЫБРАТЬ - | Значение - |ИЗ - | РегистрСведений.СлужебныеАдресныеСведения - |ГДЕ - | Тип = ""ТипАдрЭл"" И Ключ = ""ПочтовыйИндекс"" - |;////////////////////////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ - | Расшифровка.Ключ КАК Значение, - | Расшифровка.Значение КАК ТипАдрЭл, - | - | ВЫБОР - | КОГДА НЕ ТипыВладения.Идентификатор ЕСТЬ NULL ТОГДА ТипыВладения.Идентификатор - | КОГДА НЕ ТипыСтроения.Идентификатор ЕСТЬ NULL ТОГДА ТипыСтроения.Идентификатор - | ИНАЧЕ 0 - | КОНЕЦ КАК Идентификатор - | - |ИЗ - | РегистрСведений.СлужебныеАдресныеСведения КАК Расшифровка - | - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.СлужебныеАдресныеСведения КАК ТипыВладения - |ПО - | ТипыВладения.Тип = ""ESTSTAT"" - | И ТипыВладения.Значение = Расшифровка.Ключ - | - |ЛЕВОЕ СОЕДИНЕНИЕ - | РегистрСведений.СлужебныеАдресныеСведения КАК ТипыСтроения - |ПО - | ТипыСтроения.Тип = ""STRSTAT"" - | И ТипыСтроения.Значение = Расшифровка.Ключ - | - |ГДЕ - | Расшифровка.Тип = ""ДопАдрЭлНомер"""); - НаборРезультатов = Запрос.ВыполнитьПакет(); - - Таблица = НаборРезультатов[0].Выгрузить(); - Если Таблица.Количество() = 0 Тогда - ТипАдрЭлПочтовыйИндекс = ""; - Иначе - ТипАдрЭлПочтовыйИндекс = Таблица[0].Значение; - КонецЕсли; - ТаблицаСокращенийЗданий = НаборРезультатов[1].Выгрузить(); - ТаблицаСокращенийЗданий.Индексы.Добавить("ТипАдрЭл"); - - ЗданияИПомещения = Новый Соответствие; - ТипЧисло = Новый ОписаниеТипов("Число"); - Для Каждого ДополнительныйЭлемент Из Адрес.ПолучитьСписок("ДопАдрЭл") Цикл - ТипАдресногоЭлемента = СокрЛП(ДополнительныйЭлемент.ТипАдрЭл); - - // Здание или помещение, почтовый индекс? - Если ТипАдресногоЭлемента = "" Тогда - ЗначениеНомера = ДополнительныйЭлемент.Номер; - СтрокаЗдания = ТаблицаСокращенийЗданий.Найти(ЗначениеНомера.Тип, "ТипАдрЭл"); - Если СтрокаЗдания <> Неопределено Тогда - ЗданияИПомещения[СтрокаЗдания.Значение] = Новый Структура("Вид, Значение", СтрокаЗдания.Идентификатор, ЗначениеНомера.Значение); - КонецЕсли; - Продолжить; - ИначеЕсли ТипАдресногоЭлемента = ТипАдрЭлПочтовыйИндекс Тогда - Результат.Индекс = ТипЧисло.ПривестиЗначение(ДополнительныйЭлемент.Значение); - Продолжить; - КонецЕсли; - КонецЦикла; - - Запрос = Новый Запрос; - Запрос.Текст ="ВЫБРАТЬ - | ДомаЗданияСтроения.ПочтовыйИндекс, - | ДомаЗданияСтроения.Строения - |ИЗ - | РегистрСведений.ДомаЗданияСтроения КАК ДомаЗданияСтроения - |ГДЕ - | ДомаЗданияСтроения.АдресныйОбъект = &Идентификатор"; - Запрос.УстановитьПараметр("Идентификатор", Идентификатор); - РезультатЗапросаСДомами = Запрос.Выполнить().Выгрузить(); - - Для Каждого Запись Из РезультатЗапросаСДомами Цикл - // Если Запись.Строения равно Null значит по этому адресу нет домов. - Если ЗначениеЗаполнено(Запись.Строения) Тогда - Описание = Запись.Строения.Получить(); - - Если Не ПустаяСтрока(Описание) Тогда - ИдентификаторДополнительно = УникальныйИдентификаторИзСтроки64(Лев(Описание, 24)); - Описание = Сред(Описание, 25); - Если Не ПустаяСтрока(Описание) Тогда - ЕстьЗаписиДомов = Истина; - - Если ЗданияИПомещения.Количество() > 0 И ОписаниеЗданийФИАССодержитДанные(Описание, ЗданияИПомещения) Тогда - Результат.Индекс = Запись.ПочтовыйИндекс; - КонецЕсли; - КонецЕсли; - КонецЕсли; - КонецЕсли; - КонецЦикла; - Иначе - Результат.Индекс = РезультатЗапросаИндекс.ПочтовыйИндекс; - КонецЕсли; - КонецЕсли; - - Если РезультатЗапросаОКТМО.Следующий() Тогда - Результат.ОКТМО = РезультатЗапросаОКТМО.ОКТМО; - КонецЕсли; - КонецЕсли; - - ИначеЕсли Источник = "Сервис1С" Тогда - // Веб сервис 1С, может быть на обслуживании. - АдресаДляПроверки = Новый Массив; - РезультатВебСервис = Новый Структура("Данные", Новый Массив); - СтруктураОписанияОшибкиПоставщика(РезультатВебСервис); - Уровни = АдресныйКлассификаторПовтИсп.УровниКлассификатораФИАС(); - АдресаДляПроверки.Добавить(Новый Структура("Адрес, Уровни", Адрес, Уровни)); - Попытка - ЗаполнитьРезультатПроверкиАдресаПоКлассификаторуСервис1С(РезультатВебСервис, АдресаДляПроверки); - Исключение - СтруктураОписанияОшибкиПоставщика(РезультатВебСервис, ИнформацияОбОшибке()); - ЗаписьЖурналаРегистрации( СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка, , , РезультатВебСервис.ПодробноеПредставлениеОшибки); - КонецПопытки; - - Если НЕ РезультатВебСервис.Отказ Тогда - Если РезультатВебСервис.Данные[0].Варианты.Количество() > 0 Тогда - Результат.Индекс = РезультатВебСервис.Данные[0].Варианты[0].Индекс; - Результат.ОКТМО = РезультатВебСервис.Данные[0].Варианты[0].ОКТМО - КонецЕсли; - КонецЕсли; - КонецЕсли; - - Возврат Результат; -КонецФункции - -Процедура ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ВсеОшибки, Ключ, Текст, Подсказка = Неопределено); +Процедура ДобавитьОшибкуПроверкиАдресаПоКлассификатору(ВсеОшибки, Ключ, Текст, Подсказка = Неопределено) Ошибка = Новый Структура("Ключ, Текст, Подсказка", Ключ, Текст, Подсказка); ВсеОшибки.Добавить(Ошибка); КонецПроцедуры -Функция ТекстОпциональныхПолейЗапросаПроверкиАдреса(ФлагПроверки, ИмяПоля) - - Если ФлагПроверки Тогда - Вариант = " - | ВЫБОР КОГДА [Поле].Идентификатор ЕСТЬ NULL ТОГДА ЛОЖЬ ИНАЧЕ ИСТИНА КОНЕЦ КАК [Поле]Найден, - | [Поле].Идентификатор КАК [Поле]Идентификатор, - | [Поле].ПочтовыйИндекс КАК [Поле]ПочтовыйИндекс, - | [Поле].КодКЛАДР КАК [Поле]КодКЛАДР, - | [Поле].Дополнительно КАК [Поле]Дополнительно, - | [Поле]Дополнительно.OKATO КАК [Поле]ДополнительноOKATO, - | [Поле]Дополнительно.ОКТМО КАК [Поле]ДополнительноОКТМО, - | [Поле]Дополнительно.КодИФНСФЛ КАК [Поле]ДополнительноКодИФНСФЛ, - | [Поле]Дополнительно.КодИФНСЮЛ КАК [Поле]ДополнительноКодИФНСЮЛ, - | [Поле]Дополнительно.КодУчасткаИФНСФЛ КАК [Поле]ДополнительноКодУчасткаИФНСФЛ, - | [Поле]Дополнительно.КодУчасткаИФНСЮЛ КАК [Поле]ДополнительноКодУчасткаИФНСЮЛ, - |"; - Иначе - Вариант = " - | NULL КАК [Поле]Найден, - | NULL КАК [Поле]Идентификатор, - | NULL КАК [Поле]ПочтовыйИндекс, - | NULL КАК [Поле]КодКЛАДР, - | NULL КАК [Поле]Дополнительно, - | NULL КАК [Поле]ДополнительноOKATO, - | NULL КАК [Поле]ДополнительноОКТМО, - | NULL КАК [Поле]ДополнительноКодИФНСФЛ, - | NULL КАК [Поле]ДополнительноКодИФНСЮЛ, - | NULL КАК [Поле]ДополнительноКодУчасткаИФНСФЛ, - | NULL КАК [Поле]ДополнительноКодУчасткаИФНСЮЛ, - |"; - КонецЕсли; - - Возврат СтрЗаменить(Вариант, "[Поле]", ИмяПоля); -КонецФункции - -// Функция - Сформировать описание здания -// -// Параметры: -// НазваниеВладения - Строка - Наименование владения (Дом, Владение, Домовладение) -// НомерВладения - Строка - Номер владения, дома -// НомерКорпуса - Строка - Номер корпуса -// НазваниеСтроения - Строка - Наименование строения (Строения, Сооружение, Участок, Литера). -// НомерСтроения - Строка - Номер строения, сооружения. -// ДополнительныеПараметры - Структура - Расширение возможностей строки описания здания. -// -// Возвращаемое значение: -// Строка, ФорматированнаяСтрока - Представление дома. -// -Функция СформироватьОписаниеЗдания(НазваниеВладения, НомерВладения, НомерКорпуса, НазваниеСтроения, НомерСтроения, ДополнительныеПараметры = Неопределено) - - ВыделятьСтрокуПоиска = Ложь; - Если ДополнительныеПараметры <> Неопределено Тогда - Если ДополнительныеПараметры.Свойство("СтрокаПоиска") Тогда - ВыделятьСтрокуПоиска = Истина; - СтрокаПоиска = ДополнительныеПараметры.СтрокаПоиска; - КонецЕсли; - КонецЕсли; - - КорпусИСтроение = ""; - Если ЗначениеЗаполнено(НомерКорпуса) Тогда - КорпусИСтроение = ", "+ НСтр("ru = 'корпус'") + " " + НомерКорпуса; - КонецЕсли; - - Если ЗначениеЗаполнено(НомерСтроения) Тогда - КорпусИСтроение = КорпусИСтроение + ", " + НазваниеСтроения + " " + СокрЛП(НомерСтроения); - КонецЕсли; - - Если ВыделятьСтрокуПоиска Тогда - Дом = НазваниеВладения + Новый ФорматированнаяСтрока(НазваниеВладения + " ", - Новый ФорматированнаяСтрока(СтрокаПоиска, Новый Шрифт(,, Истина) , ЦветаСтиля.РезультатУспехЦвет), - Сред(НомерВладения, СтрДлина(СтрокаПоиска) + 1)); - Результат = Новый ФорматированнаяСтрока(Дом, КорпусИСтроение); - Иначе - Результат = НазваниеВладения+ " "+ НомерВладения + КорпусИСтроение; - КонецЕсли; - - Возврат Результат; - -КонецФункции - Функция ОписаниеЗданийФИАССодержитДанные(Описание, ЗданияИПомещения, НеточныеСовпадения = Неопределено) Если ЗданияИПомещения["Дом"] <> Неопределено Тогда @@ -3473,10 +4734,10 @@ Если Строка = "H" Тогда // Точное описание - сравниваем. ВидВладения = ТипЧисло.ПривестиЗначение(СтрПолучитьСтроку(СтрокиОписания, Позиция + 1)); - НомерВладения = СокрЛП( СтрПолучитьСтроку(СтрокиОписания, Позиция + 2) ); - НомерКорпуса = СокрЛП( СтрПолучитьСтроку(СтрокиОписания, Позиция + 3) ); + НомерВладения = СокрЛП(СтрПолучитьСтроку(СтрокиОписания, Позиция + 2)); + НомерКорпуса = СокрЛП(СтрПолучитьСтроку(СтрокиОписания, Позиция + 3)); ВидСтроения = ТипЧисло.ПривестиЗначение(СтрПолучитьСтроку(СтрокиОписания, Позиция + 4)); - НомерСтроения = СокрЛП( СтрПолучитьСтроку(СтрокиОписания, Позиция + 5) ); + НомерСтроения = СокрЛП(СтрПолучитьСтроку(СтрокиОписания, Позиция + 5)); Если СтрНайти(НомерСтроения, "+") > 0 Тогда НомерСтроения = СокрЛП(Лев(НомерСтроения, СтрНайти(НомерСтроения, "+") - 1)); // отрезаем идентификатор КонецЕсли; @@ -3484,7 +4745,7 @@ Если НомерВладения = НомерДомаИлиВладенияЗдания И НомерКорпуса = НомерКорпусаЗдания И НомерСтроения = НомерСтроенияЗдания Тогда - // Точное совпадение + // Точное попадания Возврат Истина; ИначеЕсли НеточныеСовпадения <> Неопределено И НомерВладения = НомерДомаИлиВладенияЗдания Тогда НазванияВладения = НаименованиеВладенийИСтроений.Владения.Получить(ВидВладения); @@ -3751,11 +5012,12 @@ Описание.Вставить("КраткоеПредставлениеОшибки"); Если ИнформацияОбОшибке = Неопределено Тогда + Описание.ПодробноеПредставлениеОшибки = НСтр("ru = 'Информация об ошибке отсутствует'"); Возврат Описание; КонецЕсли; Описание.ПодробноеПредставлениеОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); - Текст = КраткоеПредставлениеОшибки(ИнформацияОбОшибке); + Текст = СокрЛП(КраткоеПредставлениеОшибки(ИнформацияОбОшибке)); Если ТипЗнч(ИнформацияОбОшибке.Причина) = Тип("ИнформацияОбОшибке") Тогда Если ИнформацияОбОшибке.Причина.Причина <> Неопределено Тогда @@ -3772,7 +5034,7 @@ // Отрезаем клиентский текст Позиция = СтрНайти(Текст, ": "); Если Позиция > 0 Тогда - Текст = СокрЛ(Сред(Текст, Позиция + 1)); + Текст = СокрЛ(Сред(СтрЗаменить(Текст, Символы.ПС, ""), Позиция + 1)); КонецЕсли; // Отрезаем серверный текст @@ -3865,17 +5127,231 @@ Возврат ДоступныеУровни; КонецФункции -Функция УстановитьСоответствиеЧастейАдресаИхУровню(ЧастиАдреса, Уровни) Экспорт +// Установка соответствия населенного пункта по частям адреса. +// +Процедура УстановитьУровниАдресаПоЧастямАдресаДляНаселенногоПункта(Уровни, ЧастиАдреса) - ОбработатьОбщепринятыеСокращения(ЧастиАдреса); - ДоступныеУровни = УровниСодержащиеСовпадения(ЧастиАдреса, Уровни); - Если ДоступныеУровни.Найти(1) <> Неопределено Тогда - УстановитьУровниАдресаПоЧастямАдреса(ЧастиАдреса, ДоступныеУровни); + ТекстЗапроса = "ВЫБРАТЬ + | ДанныеАдреса.Уровень КАК Уровень, + | ДанныеАдреса.Позиция КАК Позиция, + | ДанныеАдреса.Значение КАК Значение, + | ДанныеАдреса.Наименование КАК Наименование, + | ДанныеАдреса.Сокращение КАК Сокращение + |ПОМЕСТИТЬ ДанныеАдреса + |ИЗ + | &ДанныеАдреса КАК ДанныеАдреса + | + |ИНДЕКСИРОВАТЬ ПО + | Уровень, + | Позиция, + | Наименование, + | Сокращение + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | АдресныеОбъекты.Идентификатор КАК Идентификатор, + | АдресныеОбъекты.Наименование КАК Наименование, + | АдресныеОбъекты.Сокращение КАК Сокращение, + | АдресныеОбъекты.Уровень КАК Уровень, + | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ + |ПОМЕСТИТЬ СубъектРФ + |ИЗ + | ДанныеАдреса КАК ДанныеАдреса + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты + | ПО (АдресныеОбъекты.Уровень = 1) + | И ДанныеАдреса.Наименование = АдресныеОбъекты.Наименование + | И ДанныеАдреса.Сокращение = АдресныеОбъекты.Сокращение + |ГДЕ + | НЕ АдресныеОбъекты.Идентификатор ЕСТЬ NULL + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | АдресныеОбъекты.Идентификатор КАК Идентификатор, + | АдресныеОбъекты.Наименование КАК Наименование, + | АдресныеОбъекты.Сокращение КАК Сокращение, + | АдресныеОбъекты.Уровень КАК Уровень, + | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ, + | АдресныеОбъекты.КодОкруга КАК КодОкруга + |ПОМЕСТИТЬ Округ + |ИЗ + | ДанныеАдреса КАК ДанныеАдреса + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты + | ПО (АдресныеОбъекты.Уровень = 2) + | И ДанныеАдреса.Наименование = АдресныеОбъекты.Наименование + | И ДанныеАдреса.Сокращение = АдресныеОбъекты.Сокращение + |ГДЕ + | НЕ АдресныеОбъекты.Идентификатор ЕСТЬ NULL + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | АдресныеОбъекты.Идентификатор КАК Идентификатор, + | АдресныеОбъекты.Наименование КАК Наименование, + | АдресныеОбъекты.Сокращение КАК Сокращение, + | АдресныеОбъекты.Уровень КАК Уровень, + | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ, + | АдресныеОбъекты.КодОкруга КАК КодОкруга, + | АдресныеОбъекты.КодРайона КАК КодРайона, + | АдресныеОбъекты.КодГорода КАК КодГорода + |ПОМЕСТИТЬ Район + |ИЗ + | ДанныеАдреса КАК ДанныеАдреса + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты + | ПО (АдресныеОбъекты.Уровень = 3) + | И ДанныеАдреса.Наименование = АдресныеОбъекты.Наименование + | И ДанныеАдреса.Сокращение = АдресныеОбъекты.Сокращение + |ГДЕ + | НЕ АдресныеОбъекты.Идентификатор ЕСТЬ NULL + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | АдресныеОбъекты.Идентификатор КАК Идентификатор, + | АдресныеОбъекты.Наименование КАК Наименование, + | АдресныеОбъекты.Сокращение КАК Сокращение, + | АдресныеОбъекты.Уровень КАК Уровень, + | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ, + | АдресныеОбъекты.КодОкруга КАК КодОкруга, + | АдресныеОбъекты.КодРайона КАК КодРайона, + | АдресныеОбъекты.КодГорода КАК КодГорода + |ПОМЕСТИТЬ Город + |ИЗ + | ДанныеАдреса КАК ДанныеАдреса + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты + | ПО (АдресныеОбъекты.Уровень = 4) + | И ДанныеАдреса.Наименование = АдресныеОбъекты.Наименование + | И ДанныеАдреса.Сокращение = АдресныеОбъекты.Сокращение + |ГДЕ + | НЕ АдресныеОбъекты.Идентификатор ЕСТЬ NULL + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | АдресныеОбъекты.Идентификатор КАК Идентификатор, + | АдресныеОбъекты.Наименование КАК Наименование, + | АдресныеОбъекты.Сокращение КАК Сокращение, + | АдресныеОбъекты.Уровень КАК Уровень, + | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ, + | АдресныеОбъекты.КодОкруга КАК КодОкруга, + | АдресныеОбъекты.КодРайона КАК КодРайона, + | АдресныеОбъекты.КодГорода КАК КодГорода, + | АдресныеОбъекты.КодВнутригородскогоРайона, + | АдресныеОбъекты.КодНаселенногоПункта + |ПОМЕСТИТЬ ВнутригородскойРайон + |ИЗ + | ДанныеАдреса КАК ДанныеАдреса + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты + | ПО (АдресныеОбъекты.Уровень = 5) + | И ДанныеАдреса.Наименование = АдресныеОбъекты.Наименование + | И ДанныеАдреса.Сокращение = АдресныеОбъекты.Сокращение + |ГДЕ + | НЕ АдресныеОбъекты.Идентификатор ЕСТЬ NULL + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | АдресныеОбъекты.Идентификатор КАК Идентификатор, + | АдресныеОбъекты.Наименование КАК Наименование, + | АдресныеОбъекты.Сокращение КАК Сокращение, + | АдресныеОбъекты.Уровень КАК Уровень, + | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ, + | АдресныеОбъекты.КодОкруга КАК КодОкруга, + | АдресныеОбъекты.КодРайона КАК КодРайона, + | АдресныеОбъекты.КодГорода КАК КодГорода, + | АдресныеОбъекты.КодВнутригородскогоРайона, + | АдресныеОбъекты.КодНаселенногоПункта + |ПОМЕСТИТЬ НаселенныйПункт + |ИЗ + | ДанныеАдреса КАК ДанныеАдреса + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты + | ПО (АдресныеОбъекты.Уровень = 6) + | И ДанныеАдреса.Наименование = АдресныеОбъекты.Наименование + | И ДанныеАдреса.Сокращение = АдресныеОбъекты.Сокращение + |ГДЕ + | НЕ АдресныеОбъекты.Идентификатор ЕСТЬ NULL ;"; + + КодОкруга = "0"; + КодРайона = "0"; + КодГорода = "0"; + КодВнутригородскогоРайона = "0"; + КодНаселенногоПункта = "0"; + КодУлицы = "0"; + КодДополнительнойТерритории = "0"; + ТекстСоединения = ""; + ТекстЗапросаВыборки = ""; + СписокПолей = Новый Структура(); + Для каждого Уровень Из Уровни Цикл + Если Уровень = 1 Тогда + СписокПолей.Вставить("СубъектРФ"); + ТекстСоединения = ТекстСоединения + " СубъектРФ КАК СубъектРФ "; + ИначеЕсли Уровень = 2 Тогда + СписокПолей.Вставить("Округ"); + ТекстСоединения = ТекстСоединения + " ЛЕВОЕ СОЕДИНЕНИЕ Округ КАК Округ + | ПО СубъектаРФ.КодСубъектаРФ = Округ.КодСубъектаРФ"; + КодОкруга = "Округ.КодОкруга"; + ИначеЕсли Уровень = 3 Тогда + СписокПолей.Вставить("Район"); + ТекстСоединения = ТекстСоединения + " ЛЕВОЕ СОЕДИНЕНИЕ Район КАК Район + | ПО Район.КодСубъектаРФ = СубъектРФ.КодСубъектаРФ + | И Район.КодОкруга = " + КодОкруга; + КодРайона = "Район.КодРайона"; + ИначеЕсли Уровень = 4 Тогда + СписокПолей.Вставить("Город"); + ТекстСоединения = ТекстСоединения + " ЛЕВОЕ СОЕДИНЕНИЕ Город КАК Город + | ПО Город.КодСубъектаРФ = СубъектРФ.КодСубъектаРФ + | И Город.КодОкруга = " + КодОкруга + " + | И Город.КодРайона = " + КодРайона; + КодГорода = "Город.КодГорода"; + ИначеЕсли Уровень = 5 Тогда + СписокПолей.Вставить("ВнутригородскойРайон"); + ТекстСоединения = ТекстСоединения + " ЛЕВОЕ СОЕДИНЕНИЕ ВнутригородскойРайон КАК ВнутригородскойРайон + | ПО ВнутригородскойРайон.КодСубъектаРФ = СубъектРФ.КодСубъектаРФ + | И ВнутригородскойРайон.КодОкруга = " + КодОкруга + " + | И ВнутригородскойРайон.КодРайона = " + КодРайона + " + | И ВнутригородскойРайон.КодГорода = " + КодГорода; + КодВнутригородскогоРайона = "ВнутригородскойРайон.КодВнутригородскогоРайона"; + ИначеЕсли Уровень = 6 Тогда + СписокПолей.Вставить("НаселенныйПункт"); + ТекстСоединения = ТекстСоединения + " ЛЕВОЕ СОЕДИНЕНИЕ НаселенныйПункт КАК НаселенныйПункт + | ПО НаселенныйПункт.КодСубъектаРФ = СубъектРФ.КодСубъектаРФ + | И НаселенныйПункт.КодОкруга = " + КодОкруга + " + | И НаселенныйПункт.КодРайона = " + КодРайона + " + | И НаселенныйПункт.КодГорода = " + КодГорода + " + | И НаселенныйПункт.КодВнутригородскогоРайона = " + КодВнутригородскогоРайона; + КодНаселенногоПункта = "НаселенныйПункт.КодНаселенногоПункта"; + КонецЕсли; + КонецЦикла; + + Разделитель = ""; + Для каждого Элемент Из СписокПолей Цикл + ТекстЗапросаВыборки = ТекстЗапросаВыборки + Разделитель + " " + Элемент.Ключ + + ".Наименование + "" "" + " + Элемент.Ключ + ".Сокращение КАК "+ Элемент.Ключ + ", " + + Элемент.Ключ +".Уровень КАК " + Элемент.Ключ + "Уровень"; + Разделитель = ", "; + КонецЦикла; + + Если НЕ ПустаяСтрока(ТекстЗапросаВыборки) Тогда + + ТекстЗапросаВыборки = "ВЫБРАТЬ " + ТекстЗапросаВыборки + " ИЗ " + ТекстСоединения; + ТекстЗапроса = ТекстЗапроса + ТекстЗапросаВыборки; + Запрос = Новый Запрос(ТекстЗапроса); + + Запрос.УстановитьПараметр("ДанныеАдреса", ЧастиАдреса); + + Результат = Запрос.Выполнить().Выбрать(); + Если Результат.Следующий() Тогда + Для каждого Элемент Из СписокПолей Цикл + СтрокаАдреса = ЧастиАдреса.Найти(Результат[Элемент.Ключ], "Значение"); + Если СтрокаАдреса <> Неопределено Тогда + СтрокаАдреса.Уровень = Результат[Элемент.Ключ + "Уровень"]; + КонецЕсли; + КонецЦикла; + КонецЕсли; КонецЕсли; - Возврат ЧастиАдреса; - -КонецФункции +КонецПроцедуры Процедура УстановитьУровниАдресаПоЧастямАдреса(ЧастиАдреса, Уровни) @@ -4158,19 +5634,22 @@ КонецЦикла; Разделитель = ""; + ТекстУпорядочить = " УПОРЯДОЧИТЬ ПО "; Для каждого Элемент Из СписокПолей Цикл ТекстЗапросаВыборки = ТекстЗапросаВыборки + Разделитель + " " + Элемент.Ключ + ".Наименование + "" "" + " + Элемент.Ключ + ".Сокращение КАК "+ Элемент.Ключ + ", " + Элемент.Ключ + ".Уровень КАК " + Элемент.Ключ + "Уровень, " + Элемент.Ключ + "." + Элемент.Значение + " КАК " + Элемент.Значение; + ТекстУпорядочить = ТекстУпорядочить + Разделитель + Элемент.Ключ + ".Уровень"; Разделитель = ", "; КонецЦикла; + ТекстУпорядочить = ТекстУпорядочить + " УБЫВ"; Разделитель = ""; УсловиеГдеДляДополнительныхТерриторий = ""; Если НЕ ПустаяСтрока(ТекстЗапросаВыборки) Тогда ТекстЗапросаВыборки = "ВЫБРАТЬ " + ТекстЗапросаВыборки + " ИЗ " + ТекстСоединения; - ТекстЗапроса = ТекстЗапроса + ТекстЗапросаВыборки; + ТекстЗапроса = ТекстЗапроса + ТекстЗапросаВыборки + ТекстУпорядочить; Запрос = Новый Запрос(ТекстЗапроса); Запрос.УстановитьПараметр("ДанныеАдреса", ЧастиАдреса); @@ -4296,1413 +5775,6 @@ КонецПроцедуры -Процедура УстановитьУровниУлицыПоЧастямАдреса(ИдентификаторНаселенногоПункта, ЧастиАдреса) Экспорт - - Если ТипЗнч(ИдентификаторНаселенногоПункта) = Тип("Строка") Тогда - ИдентификаторНаселенногоПункта = Новый УникальныйИдентификатор(ИдентификаторНаселенногоПункта); - КонецЕсли; - - Шаблон = " ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК %1 - | ПО (%1.КодСубъектаРФ = НаселенныйПункт.КодСубъектаРФ) - | И (%1.КодОкруга = НаселенныйПункт.КодОкруга) - | И (%1.КодРайона = НаселенныйПункт.КодРайона) - | И (%1.КодГорода = НаселенныйПункт.КодГорода) - | И (%1.КодВнутригородскогоРайона = НаселенныйПункт.КодВнутригородскогоРайона) - | И (%1.КодНаселенногоПункта = НаселенныйПункт.КодНаселенногоПункта) - | И (%1.Наименование = ""%2"") - | И (%1.Сокращение = ""%3"") "; - СтрокаВыбрать = ""; - РазделительВыбрать = ""; - СтрокаИз = ""; - - Упорядочить = ""; - Для Индекс = 0 По ЧастиАдреса.Количество() -1 Цикл - ЧастьАдреса = ЧастиАдреса[Индекс]; - НазваниеТаблицы = "АдресныйОбъект"+ Строка(Индекс); - СтрокаВыбрать = СтрокаВыбрать + РазделительВыбрать + НазваниеТаблицы + ".Идентификатор КАК " + НазваниеТаблицы + "Идентификатор, " - + НазваниеТаблицы + ".Уровень КАК " + НазваниеТаблицы + "Уровень " ; - СтрокаИз = СтрокаИз + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Шаблон, НазваниеТаблицы, ЧастьАдреса.Наименование, ЧастьАдреса.Сокращение); - Упорядочить = Упорядочить + НазваниеТаблицы + ".Актуален Убыв" + РазделительВыбрать; - РазделительВыбрать = ", "; - КонецЦикла; - - ТекстЗапроса = "ВЫБРАТЬ " + СтрокаВыбрать + " ИЗ РегистрСведений.АдресныеОбъекты КАК НаселенныйПункт " - + СтрокаИз + " ГДЕ НаселенныйПункт.Идентификатор = &Идентификатор"; - - Если ЗначениеЗаполнено(Упорядочить) Тогда - ТекстЗапроса = ТекстЗапроса + " УПОРЯДОЧИТЬ ПО " + Упорядочить; - КонецЕсли; - - Запрос = Новый Запрос(ТекстЗапроса); - Запрос.УстановитьПараметр("Идентификатор", ИдентификаторНаселенногоПункта); - - Результат = Запрос.Выполнить().Выбрать(); - Если Результат.Следующий() Тогда - Для Индекс = 0 По ЧастиАдреса.Количество() - 1 Цикл - ЧастиАдреса[Индекс].Идентификатор = Результат["АдресныйОбъект"+ Строка(Индекс) + "Идентификатор"]; - ЧастиАдреса[Индекс].Уровень = Результат["АдресныйОбъект"+ Строка(Индекс) + "Уровень"]; - КонецЦикла; - КонецЕсли; - ЧастиАдреса.Сортировать("Уровень"); - -КонецПроцедуры - -// Распознавание населенного пункта по частям адреса. -// -Функция УстановитьСоответствиеЧастейАдресаИхУровнюДляНаселенногоПункта(ЧастиАдреса, Уровни) Экспорт - - ОбработатьОбщепринятыеСокращения(ЧастиАдреса); - ДоступныеУровни = УровниСодержащиеСовпадения(ЧастиАдреса, Уровни); - Если ДоступныеУровни.Найти(1) <> Неопределено Тогда - УстановитьУровниАдресаПоЧастямАдресаДляНаселенногоПункта(ДоступныеУровни, ЧастиАдреса); - КонецЕсли; - - Возврат ЧастиАдреса; - -КонецФункции - -// Установка соответствия населенного пункта по частям адреса. -// -Процедура УстановитьУровниАдресаПоЧастямАдресаДляНаселенногоПункта(Уровни, ЧастиАдреса) - - ТекстЗапроса = "ВЫБРАТЬ - | ДанныеАдреса.Уровень КАК Уровень, - | ДанныеАдреса.Позиция КАК Позиция, - | ДанныеАдреса.Значение КАК Значение, - | ДанныеАдреса.Наименование КАК Наименование, - | ДанныеАдреса.Сокращение КАК Сокращение - |ПОМЕСТИТЬ ДанныеАдреса - |ИЗ - | &ДанныеАдреса КАК ДанныеАдреса - | - |ИНДЕКСИРОВАТЬ ПО - | Уровень, - | Позиция, - | Наименование, - | Сокращение - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ - | АдресныеОбъекты.Идентификатор КАК Идентификатор, - | АдресныеОбъекты.Наименование КАК Наименование, - | АдресныеОбъекты.Сокращение КАК Сокращение, - | АдресныеОбъекты.Уровень КАК Уровень, - | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ - |ПОМЕСТИТЬ СубъектРФ - |ИЗ - | ДанныеАдреса КАК ДанныеАдреса - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты - | ПО (АдресныеОбъекты.Уровень = 1) - | И ДанныеАдреса.Наименование = АдресныеОбъекты.Наименование - | И ДанныеАдреса.Сокращение = АдресныеОбъекты.Сокращение - |ГДЕ - | НЕ АдресныеОбъекты.Идентификатор ЕСТЬ NULL - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ - | АдресныеОбъекты.Идентификатор КАК Идентификатор, - | АдресныеОбъекты.Наименование КАК Наименование, - | АдресныеОбъекты.Сокращение КАК Сокращение, - | АдресныеОбъекты.Уровень КАК Уровень, - | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ, - | АдресныеОбъекты.КодОкруга КАК КодОкруга - |ПОМЕСТИТЬ Округ - |ИЗ - | ДанныеАдреса КАК ДанныеАдреса - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты - | ПО (АдресныеОбъекты.Уровень = 2) - | И ДанныеАдреса.Наименование = АдресныеОбъекты.Наименование - | И ДанныеАдреса.Сокращение = АдресныеОбъекты.Сокращение - |ГДЕ - | НЕ АдресныеОбъекты.Идентификатор ЕСТЬ NULL - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ - | АдресныеОбъекты.Идентификатор КАК Идентификатор, - | АдресныеОбъекты.Наименование КАК Наименование, - | АдресныеОбъекты.Сокращение КАК Сокращение, - | АдресныеОбъекты.Уровень КАК Уровень, - | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ, - | АдресныеОбъекты.КодОкруга КАК КодОкруга, - | АдресныеОбъекты.КодРайона КАК КодРайона, - | АдресныеОбъекты.КодГорода КАК КодГорода - |ПОМЕСТИТЬ Район - |ИЗ - | ДанныеАдреса КАК ДанныеАдреса - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты - | ПО (АдресныеОбъекты.Уровень = 3) - | И ДанныеАдреса.Наименование = АдресныеОбъекты.Наименование - | И ДанныеАдреса.Сокращение = АдресныеОбъекты.Сокращение - |ГДЕ - | НЕ АдресныеОбъекты.Идентификатор ЕСТЬ NULL - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ - | АдресныеОбъекты.Идентификатор КАК Идентификатор, - | АдресныеОбъекты.Наименование КАК Наименование, - | АдресныеОбъекты.Сокращение КАК Сокращение, - | АдресныеОбъекты.Уровень КАК Уровень, - | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ, - | АдресныеОбъекты.КодОкруга КАК КодОкруга, - | АдресныеОбъекты.КодРайона КАК КодРайона, - | АдресныеОбъекты.КодГорода КАК КодГорода - |ПОМЕСТИТЬ Город - |ИЗ - | ДанныеАдреса КАК ДанныеАдреса - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты - | ПО (АдресныеОбъекты.Уровень = 4) - | И ДанныеАдреса.Наименование = АдресныеОбъекты.Наименование - | И ДанныеАдреса.Сокращение = АдресныеОбъекты.Сокращение - |ГДЕ - | НЕ АдресныеОбъекты.Идентификатор ЕСТЬ NULL - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ - | АдресныеОбъекты.Идентификатор КАК Идентификатор, - | АдресныеОбъекты.Наименование КАК Наименование, - | АдресныеОбъекты.Сокращение КАК Сокращение, - | АдресныеОбъекты.Уровень КАК Уровень, - | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ, - | АдресныеОбъекты.КодОкруга КАК КодОкруга, - | АдресныеОбъекты.КодРайона КАК КодРайона, - | АдресныеОбъекты.КодГорода КАК КодГорода, - | АдресныеОбъекты.КодВнутригородскогоРайона, - | АдресныеОбъекты.КодНаселенногоПункта - |ПОМЕСТИТЬ ВнутригородскойРайон - |ИЗ - | ДанныеАдреса КАК ДанныеАдреса - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты - | ПО (АдресныеОбъекты.Уровень = 5) - | И ДанныеАдреса.Наименование = АдресныеОбъекты.Наименование - | И ДанныеАдреса.Сокращение = АдресныеОбъекты.Сокращение - |ГДЕ - | НЕ АдресныеОбъекты.Идентификатор ЕСТЬ NULL - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ - | АдресныеОбъекты.Идентификатор КАК Идентификатор, - | АдресныеОбъекты.Наименование КАК Наименование, - | АдресныеОбъекты.Сокращение КАК Сокращение, - | АдресныеОбъекты.Уровень КАК Уровень, - | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ, - | АдресныеОбъекты.КодОкруга КАК КодОкруга, - | АдресныеОбъекты.КодРайона КАК КодРайона, - | АдресныеОбъекты.КодГорода КАК КодГорода, - | АдресныеОбъекты.КодВнутригородскогоРайона, - | АдресныеОбъекты.КодНаселенногоПункта - |ПОМЕСТИТЬ НаселенныйПункт - |ИЗ - | ДанныеАдреса КАК ДанныеАдреса - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты - | ПО (АдресныеОбъекты.Уровень = 6) - | И ДанныеАдреса.Наименование = АдресныеОбъекты.Наименование - | И ДанныеАдреса.Сокращение = АдресныеОбъекты.Сокращение - |ГДЕ - | НЕ АдресныеОбъекты.Идентификатор ЕСТЬ NULL ;"; - - КодОкруга = "0"; - КодРайона = "0"; - КодГорода = "0"; - КодВнутригородскогоРайона = "0"; - КодНаселенногоПункта = "0"; - КодУлицы = "0"; - КодДополнительнойТерритории = "0"; - ТекстСоединения = ""; - ТекстЗапросаВыборки = ""; - СписокПолей = Новый Структура(); - Для каждого Уровень Из Уровни Цикл - Если Уровень = 1 Тогда - СписокПолей.Вставить("СубъектРФ"); - ТекстСоединения = ТекстСоединения + " СубъектРФ КАК СубъектРФ "; - ИначеЕсли Уровень = 2 Тогда - СписокПолей.Вставить("Округ"); - ТекстСоединения = ТекстСоединения + " ЛЕВОЕ СОЕДИНЕНИЕ Округ КАК Округ - | ПО СубъектаРФ.КодСубъектаРФ = Округ.КодСубъектаРФ"; - КодОкруга = "Округ.КодОкруга"; - ИначеЕсли Уровень = 3 Тогда - СписокПолей.Вставить("Район"); - ТекстСоединения = ТекстСоединения + " ЛЕВОЕ СОЕДИНЕНИЕ Район КАК Район - | ПО Район.КодСубъектаРФ = СубъектРФ.КодСубъектаРФ - | И Район.КодОкруга = " + КодОкруга; - КодРайона = "Район.КодРайона"; - ИначеЕсли Уровень = 4 Тогда - СписокПолей.Вставить("Город"); - ТекстСоединения = ТекстСоединения + " ЛЕВОЕ СОЕДИНЕНИЕ Город КАК Город - | ПО Город.КодСубъектаРФ = СубъектРФ.КодСубъектаРФ - | И Город.КодОкруга = " + КодОкруга + " - | И Город.КодРайона = " + КодРайона; - КодГорода = "Город.КодГорода"; - ИначеЕсли Уровень = 5 Тогда - СписокПолей.Вставить("ВнутригородскойРайон"); - ТекстСоединения = ТекстСоединения + " ЛЕВОЕ СОЕДИНЕНИЕ ВнутригородскойРайон КАК ВнутригородскойРайон - | ПО ВнутригородскойРайон.КодСубъектаРФ = СубъектРФ.КодСубъектаРФ - | И ВнутригородскойРайон.КодОкруга = " + КодОкруга + " - | И ВнутригородскойРайон.КодРайона = " + КодРайона + " - | И ВнутригородскойРайон.КодГорода = " + КодГорода; - КодВнутригородскогоРайона = "ВнутригородскойРайон.КодВнутригородскогоРайона"; - ИначеЕсли Уровень = 6 Тогда - СписокПолей.Вставить("НаселенныйПункт"); - ТекстСоединения = ТекстСоединения + " ЛЕВОЕ СОЕДИНЕНИЕ НаселенныйПункт КАК НаселенныйПункт - | ПО НаселенныйПункт.КодСубъектаРФ = СубъектРФ.КодСубъектаРФ - | И НаселенныйПункт.КодОкруга = " + КодОкруга + " - | И НаселенныйПункт.КодРайона = " + КодРайона + " - | И НаселенныйПункт.КодГорода = " + КодГорода + " - | И НаселенныйПункт.КодВнутригородскогоРайона = " + КодВнутригородскогоРайона; - КодНаселенногоПункта = "НаселенныйПункт.КодНаселенногоПункта"; - КонецЕсли; - КонецЦикла; - - Разделитель = ""; - Для каждого Элемент Из СписокПолей Цикл - ТекстЗапросаВыборки = ТекстЗапросаВыборки + Разделитель + " " + Элемент.Ключ - + ".Наименование + "" "" + " + Элемент.Ключ + ".Сокращение КАК "+ Элемент.Ключ + ", " - + Элемент.Ключ +".Уровень КАК " + Элемент.Ключ + "Уровень"; - Разделитель = ", "; - КонецЦикла; - - Если НЕ ПустаяСтрока(ТекстЗапросаВыборки) Тогда - - ТекстЗапросаВыборки = "ВЫБРАТЬ " + ТекстЗапросаВыборки + " ИЗ " + ТекстСоединения; - ТекстЗапроса = ТекстЗапроса + ТекстЗапросаВыборки; - Запрос = Новый Запрос(ТекстЗапроса); - - Запрос.УстановитьПараметр("ДанныеАдреса", ЧастиАдреса); - - Результат = Запрос.Выполнить().Выбрать(); - Если Результат.Следующий() Тогда - Для каждого Элемент Из СписокПолей Цикл - СтрокаАдреса = ЧастиАдреса.Найти(Результат[Элемент.Ключ], "Значение"); - Если СтрокаАдреса <> Неопределено Тогда - СтрокаАдреса.Уровень = Результат[Элемент.Ключ + "Уровень"]; - КонецЕсли; - КонецЦикла; - КонецЕсли; - КонецЕсли; - -КонецПроцедуры - -// Определяет улицу и дополнительную территорию, функция используется для совместимости данных перенесенных из КЛАДР. -// -// Параметры: -// НаименованиеИСокращение - Структура - Наименование и Сокращение искомого объекта. -// Идентификатор - УникальныйИдентификатор - Идентификатора населенного пункт. -// Возвращаемое значение: -// Структура - Результат поиска. -Функция УлицаИДополнительнаяТерритория(Знач НаименованиеИСокращение, Знач Идентификатор) Экспорт - - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | АдресныеОбъекты.Уровень КАК Уровень, - | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ, - | АдресныеОбъекты.КодОкруга КАК КодОкруга, - | АдресныеОбъекты.КодРайона КАК КодРайона, - | АдресныеОбъекты.КодГорода КАК КодГорода, - | АдресныеОбъекты.КодВнутригородскогоРайона КАК КодВнутригородскогоРайона, - | АдресныеОбъекты.КодНаселенногоПункта КАК КодНаселенногоПункта, - | АдресныеОбъекты.КодУлицы КАК КодУлицы, - | АдресныеОбъекты.КодДополнительногоЭлемента КАК КодДополнительногоЭлемента, - | АдресныеОбъекты.КодПодчиненногоЭлемента КАК КодПодчиненногоЭлемента, - | АдресныеОбъекты.Идентификатор КАК Идентификатор, - | АдресныеОбъекты.ПочтовыйИндекс КАК ПочтовыйИндекс, - | АдресныеОбъекты.Наименование КАК Наименование, - | АдресныеОбъекты.Сокращение КАК Сокращение - |ПОМЕСТИТЬ Родитель - |ИЗ - | РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты - |ГДЕ - | АдресныеОбъекты.Идентификатор = &Идентификатор - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ - | АдресныеОбъекты.Идентификатор КАК Идентификатор, - | АдресныеОбъекты.ПочтовыйИндекс КАК ПочтовыйИндекс, - | АдресныеОбъекты.Наименование КАК Наименование, - | АдресныеОбъекты.Сокращение КАК Сокращение, - | АдресныеОбъектыУлицы.Наименование КАК НаименованиеУлицы, - | АдресныеОбъектыУлицы.Сокращение КАК СокращениеУлицы, - | АдресныеОбъектыУлицы.Идентификатор КАК ИдентификаторУлицы - |ИЗ - | Родитель КАК Родитель - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыУлицы - | ПО (АдресныеОбъектыУлицы.Уровень = 7) - | И (Родитель.КодУлицы = 0) - | И Родитель.КодСубъектаРФ = АдресныеОбъектыУлицы.КодСубъектаРФ - | И Родитель.КодОкруга = АдресныеОбъектыУлицы.КодОкруга - | И Родитель.КодРайона = АдресныеОбъектыУлицы.КодРайона - | И Родитель.КодГорода = АдресныеОбъектыУлицы.КодГорода - | И Родитель.КодВнутригородскогоРайона = АдресныеОбъектыУлицы.КодВнутригородскогоРайона - | И Родитель.КодНаселенногоПункта = АдресныеОбъектыУлицы.КодНаселенногоПункта - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты - | ПО (АдресныеОбъекты.Уровень = 90) - | И (АдресныеОбъектыУлицы.КодОкруга = АдресныеОбъекты.КодОкруга) - | И (АдресныеОбъектыУлицы.КодРайона = АдресныеОбъекты.КодРайона) - | И (АдресныеОбъектыУлицы.КодГорода = АдресныеОбъекты.КодГорода) - | И (АдресныеОбъектыУлицы.КодВнутригородскогоРайона = АдресныеОбъекты.КодВнутригородскогоРайона) - | И (АдресныеОбъектыУлицы.КодНаселенногоПункта = АдресныеОбъекты.КодНаселенногоПункта) - | И (АдресныеОбъектыУлицы.КодУлицы = АдресныеОбъекты.КодУлицы) - | И Родитель.КодСубъектаРФ = АдресныеОбъекты.КодСубъектаРФ - |ГДЕ - | АдресныеОбъекты.Наименование = &Наименование - | И АдресныеОбъекты.Сокращение = &Сокращение"; - - Запрос.УстановитьПараметр("Идентификатор", Идентификатор); - Запрос.УстановитьПараметр("Наименование", НаименованиеИСокращение.Наименование); - Запрос.УстановитьПараметр("Сокращение", НаименованиеИСокращение.Сокращение); - - РезультатЗапроса = Запрос.Выполнить().Выбрать(); - - НайденныйВариант = Новый Структура("ИдентификаторУлицы, Идентификатор, Значение"); - Если РезультатЗапроса.Следующий() Тогда - НайденныйВариант.ИдентификаторУлицы = РезультатЗапроса.ИдентификаторУлицы; - НайденныйВариант.Идентификатор = РезультатЗапроса.Идентификатор; - НайденныйВариант.Значение = РезультатЗапроса.Наименование + " " + РезультатЗапроса.Сокращение; - Возврат НайденныйВариант; - КонецЕсли; - - Возврат Неопределено; - -КонецФункции - -// Определение кодов КЛАДР и ОКАТО, ОКТМО, налоговых инспекций ФНС и др. адреса. -// -// Параметры: -// Адрес - Строка - Адрес в формате XML или структура с полями адреса. -// Источник - Строка - Источник получения кодов адреса, Варианты: "Сервис1С", "ЗагруженныеДанные". -// Возвращаемое значение: -// Структура - Содержит 2 структуры: Коды адреса и Коды КЛАДР. -// -Функция КодыАдресаИКодыКЛАДР(Знач Адрес, Источник = Неопределено) Экспорт - - Результат = Новый Структура(); - Результат.Вставить("КодыКЛАДР", СтруктураКодовКЛАДРПоУровням()); - Результат.Вставить("КодыАдреса", СтруктураКодовАдреса()); - - Если НЕ (ЭтоКонтактнаяИнформацияВXML(Адрес) ИЛИ ТипЗнч(Адрес) = Тип("Структура")) Тогда - Возврат Результат; - КонецЕсли; - - Если НЕ ЗначениеЗаполнено(Источник) Тогда - Источник = ИсточникДанныхАдресногоКлассификатора(); - Если ПустаяСтрока(Источник) ИЛИ Источник <> "Сервис1С" Тогда - Источник = "ЗагруженныеДанные"; - КонецЕсли; - КонецЕсли; - - Если ЭтоКонтактнаяИнформацияВXML(Адрес) Тогда - АдресXDTO = ДесериализацияАдресаXDTO(Адрес); - Адрес = АдресXDTO.Состав.Состав; - КонецЕсли; - - Если СтрСравнить(Источник, "Сервис1С") = 0 Тогда - Результат.КодыАдреса = КодыАдресаСервис(Адрес); - // Заполнить коды КЛАДР - Если ЗначениеЗаполнено(Результат.КодыАдреса.КодКЛАДР) Тогда - КодКЛАДР = Формат(Результат.КодыАдреса.КодКЛАДР, "ЧРГ=''; ЧГ=0"); - - Если СтрДлина(КодКЛАДР) = 17 Тогда - Результат.КодыКЛАДР.Улица = КодКЛАДР; - КодКЛАДР = Лев(КодКЛАДР, 13); - КонецЕсли; - - Если СтрДлина(КодКЛАДР) = 12 Тогда - КодКЛАДР = "0" + КодКЛАДР; - КонецЕсли; - - Если СтрДлина(КодКЛАДР) = 13 Тогда - Если ЗначениеЗаполнено(Адрес.СубъектРФ) Тогда - Результат.КодыКЛАДР.Регион = Лев(КодКЛАДР, 2) + "00000000000"; - КонецЕсли; - Район = ?(ПустаяСтрока(Адрес.СвРайМО), "", Адрес.СвРайМО.Район); - Если ЗначениеЗаполнено(Район) Тогда - Результат.КодыКЛАДР.Район = Лев(КодКЛАДР, 5) + "00000000"; - КонецЕсли; - Если ЗначениеЗаполнено(Адрес.Город) Тогда - Результат.КодыКЛАДР.Город = Лев(КодКЛАДР, 8) + "00000"; - КонецЕсли; - Если ЗначениеЗаполнено(Адрес.НаселПункт) Тогда - Результат.КодыКЛАДР.НаселенныйПункт = Лев(КодКЛАДР, 11) + "00"; - КонецЕсли; - - КонецЕсли; - КонецЕсли; - Иначе - Результат = КодыАдресаЗагруженныеДанные(Адрес); - КонецЕсли; - - ОпределитьФорматКодов(Результат.КодыАдреса); - - Возврат Результат; - -КонецФункции - -// Заполнить коды адреса из загруженных данных -// -// Параметры: -// Адрес - Структура - Структура содержащая поля адреса. -// -Функция КодыАдресаЗагруженныеДанные(АдресРФ) - - Адрес = Новый Структура(); - СубъектРФ = АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(АдресРФ.СубъектРФ); - Адрес.Вставить("Регион", СубъектРФ.Наименование); - Адрес.Вставить("РегионСокращение", СубъектРФ.Сокращение); - - Район = АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(ПолучитьXDTOРеквизитОбъекта(АдресРФ, "СвРайМО/Район")); - Адрес.Вставить("Район", Район.Наименование); - - Адрес.Вставить("Город", - АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(АдресРФ.Город).Наименование); - Адрес.Вставить("НаселенныйПункт", - АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(АдресРФ.НаселПункт).Наименование); - Адрес.Вставить("Улица", - АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(АдресРФ.Улица).Наименование); - Адрес.Вставить("Округ", - АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(АдресРФ.Округ).Наименование); - Адрес.Вставить("ВнутригРайон", - АдресныйКлассификаторКлиентСервер.НаименованиеИСокращение(АдресРФ.ВнутригРайон).Наименование); - - КодыКЛАДР = СтруктураКодовКЛАДРПоУровням(); - КодыАдреса = СтруктураКодовАдреса(); - Результат = Новый Структура(); - Результат.Вставить("КодыКЛАДР", КодыКЛАДР); - Результат.Вставить("КодыАдреса", КодыАдреса); - - ТекстСоединения = ""; - ТекстДляВыбрать = ""; - ИмяОбъектаДляДополнительныхСведений = "АдресныеОбъектыРегион"; - - Если ПустаяСтрока(Адрес.Округ) Тогда - сОкруг = "0"; - ТекстДляВыбрать = "НЕОПРЕДЕЛЕНО КАК КодКЛАДРОкруг, "; - Иначе - ТекстСоединения = ТекстСоединения + Символы.ПС + "ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыОкруг - | ПО АдресныеОбъектыОкруг.Наименование = """ + Адрес.Округ + """ - | И АдресныеОбъектыРегион.КодСубъектаРФ = АдресныеОбъектыОкруг.КодСубъектаРФ - | И АдресныеОбъектыОкруг.Уровень = 2 - | И АдресныеОбъектыОкруг.КодРайона = 0 - | И АдресныеОбъектыОкруг.КодГорода = 0 - | И АдресныеОбъектыОкруг.КодВнутригородскогоРайона = 0 - | И АдресныеОбъектыОкруг.КодНаселенногоПункта = 0 - | И АдресныеОбъектыОкруг.КодУлицы = 0 - | И АдресныеОбъектыОкруг.КодДополнительногоЭлемента = 0 - | И АдресныеОбъектыОкруг.КодПодчиненногоЭлемента = 0"; - сОкруг = "АдресныеОбъектыОкруг.КодОкруга"; - ТекстДляВыбрать = "АдресныеОбъектыОкруг.КодКЛАДР КАК КодКЛАДРОкруг, "; - ИмяОбъектаДляДополнительныхСведений = "АдресныеОбъектыОкруг"; - КонецЕсли; - - Если ПустаяСтрока(Адрес.Район) Тогда - сРайон = "0"; - ТекстДляВыбрать = ТекстДляВыбрать + "НЕОПРЕДЕЛЕНО КАК КодКЛАДРРайон, "; - Иначе - ТекстСоединения = ТекстСоединения + Символы.ПС + "ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыРайон - | ПО АдресныеОбъектыРайон.Наименование = """ + Адрес.Район + """ - | И АдресныеОбъектыРайон.КодОкруга = " + сОкруг + " - | И АдресныеОбъектыРегион.КодСубъектаРФ = АдресныеОбъектыРайон.КодСубъектаРФ - | И АдресныеОбъектыРайон.Уровень = 3 - | И АдресныеОбъектыРайон.КодГорода = 0 - | И АдресныеОбъектыРайон.КодВнутригородскогоРайона = 0 - | И АдресныеОбъектыРайон.КодНаселенногоПункта = 0 - | И АдресныеОбъектыРайон.КодУлицы = 0 - | И АдресныеОбъектыРайон.КодДополнительногоЭлемента = 0 - | И АдресныеОбъектыРайон.КодПодчиненногоЭлемента = 0"; - сРайон = "АдресныеОбъектыРайон.КодРайона"; - ТекстДляВыбрать = ТекстДляВыбрать + "АдресныеОбъектыРайон.КодКЛАДР КАК КодКЛАДРРайон, "; - ИмяОбъектаДляДополнительныхСведений = "АдресныеОбъектыРайон"; - КонецЕсли; - - Если ПустаяСтрока(Адрес.Город) Тогда - сГород = "0"; - ТекстДляВыбрать = ТекстДляВыбрать + "НЕОПРЕДЕЛЕНО КАК КодКЛАДРГород, "; - Иначе - ТекстСоединения = ТекстСоединения + Символы.ПС + " ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыГород - | ПО АдресныеОбъектыГород.Наименование = """ + Адрес.Город + """ - | И АдресныеОбъектыРегион.КодСубъектаРФ = АдресныеОбъектыГород.КодСубъектаРФ - | И АдресныеОбъектыГород.Уровень = 4 - | И АдресныеОбъектыГород.КодОкруга = " + сОкруг + " - | И АдресныеОбъектыГород.КодРайона = " + сРайон + " - | И АдресныеОбъектыГород.КодВнутригородскогоРайона = 0 - | И АдресныеОбъектыГород.КодНаселенногоПункта = 0 - | И АдресныеОбъектыГород.КодУлицы = 0 - | И АдресныеОбъектыГород.КодДополнительногоЭлемента = 0 - | И АдресныеОбъектыГород.КодПодчиненногоЭлемента = 0"; - - сГород = "АдресныеОбъектыГород.КодГорода"; - ТекстДляВыбрать = ТекстДляВыбрать + "АдресныеОбъектыГород.КодКЛАДР КАК КодКЛАДРГород, "; - ИмяОбъектаДляДополнительныхСведений = "АдресныеОбъектыГород"; - КонецЕсли; - - Если ПустаяСтрока(Адрес.ВнутригРайон) Тогда - сВнутригородскойРайон = "0"; - ТекстДляВыбрать = ТекстДляВыбрать + "НЕОПРЕДЕЛЕНО КАК КодКЛАДРВнутригородскойРайон, "; - Иначе - ТекстСоединения = ТекстСоединения + Символы.ПС + " ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыВнутригородскойРайон - | ПО АдресныеОбъектыВнутригородскойРайон.Наименование = """ + Адрес.ВнутригРайон + """ - | И АдресныеОбъектыРегион.КодСубъектаРФ = АдресныеОбъектыВнутригородскойРайон.КодСубъектаРФ - | И АдресныеОбъектыВнутригородскойРайон.КодОкруга = " + сОкруг + " - | И АдресныеОбъектыВнутригородскойРайон.КодРайона = " + сРайон + " - | И АдресныеОбъектыВнутригородскойРайон.КодГорода = " + сГород + " - | И АдресныеОбъектыВнутригородскойРайон.КодНаселенногоПункта = 0 - | И АдресныеОбъектыВнутригородскойРайон.КодУлицы = 0 - | И АдресныеОбъектыВнутригородскойРайон.КодДополнительногоЭлемента = 0 - | И АдресныеОбъектыВнутригородскойРайон.КодПодчиненногоЭлемента = 0"; - сВнутригородскойРайон = "АдресныеОбъектыВнутригородскойРайон.КодВнутригородскогоРайона"; - ТекстДляВыбрать = ТекстДляВыбрать + "АдресныеОбъектыВнутригородскойРайон.КодКЛАДР КАК КодКЛАДРВнутригородскойРайон, "; - ИмяОбъектаДляДополнительныхСведений = "АдресныеОбъектыВнутригородскойРайон"; - КонецЕсли; - - Если ПустаяСтрока(Адрес.НаселенныйПункт) Тогда - сНаселенногоПункта = "0"; - ТекстДляВыбрать = ТекстДляВыбрать + "НЕОПРЕДЕЛЕНО КАК КодКЛАДРНаселенныйПункт, "; - Иначе - ТекстСоединения = ТекстСоединения + Символы.ПС + " ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыНаселенныйПункт - | ПО АдресныеОбъектыНаселенныйПункт.Наименование = """ + Адрес.НаселенныйПункт + """ - | И АдресныеОбъектыРегион.КодСубъектаРФ = АдресныеОбъектыНаселенныйПункт.КодСубъектаРФ - | И АдресныеОбъектыНаселенныйПункт.Уровень = 6 - | И АдресныеОбъектыНаселенныйПункт.КодОкруга = " + сОкруг + " - | И АдресныеОбъектыНаселенныйПункт.КодРайона = " + сРайон + " - | И АдресныеОбъектыНаселенныйПункт.КодГорода = " + сГород + " - | И АдресныеОбъектыНаселенныйПункт.КодВнутригородскогоРайона = " + сВнутригородскойРайон + " - | И АдресныеОбъектыНаселенныйПункт.КодУлицы = 0 - | И АдресныеОбъектыНаселенныйПункт.КодДополнительногоЭлемента = 0 - | И АдресныеОбъектыНаселенныйПункт.КодПодчиненногоЭлемента = 0"; - сНаселенногоПункта = "АдресныеОбъектыНаселенныйПункт.КодНаселенногоПункта"; - ТекстДляВыбрать = ТекстДляВыбрать + "АдресныеОбъектыНаселенныйПункт.КодКЛАДР КАК КодКЛАДРНаселенныйПункт, "; - ИмяОбъектаДляДополнительныхСведений = "АдресныеОбъектыНаселенныйПункт"; - КонецЕсли; - - Если ПустаяСтрока(Адрес.Улица) Тогда - сУлица = "0"; - ТекстДляВыбрать = ТекстДляВыбрать + "НЕОПРЕДЕЛЕНО КАК КодКЛАДРУлица, "; - Иначе - ТекстСоединения = ТекстСоединения + Символы.ПС + " ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыУлица - | ПО АдресныеОбъектыУлица.Наименование = """ + Адрес.Улица + """ - | И АдресныеОбъектыРегион.КодСубъектаРФ = АдресныеОбъектыУлица.КодСубъектаРФ - | И АдресныеОбъектыУлица.Уровень = 7 - | И АдресныеОбъектыУлица.КодОкруга = " + сОкруг + " - | И АдресныеОбъектыУлица.КодРайона = " + сРайон + " - | И АдресныеОбъектыУлица.КодГорода = " + сГород + " - | И АдресныеОбъектыУлица.КодВнутригородскогоРайона = " + сВнутригородскойРайон + " - | И АдресныеОбъектыУлица.КодНаселенногоПункта = " + сНаселенногоПункта + " - | И АдресныеОбъектыУлица.КодДополнительногоЭлемента = 0 - | И АдресныеОбъектыУлица.КодПодчиненногоЭлемента = 0"; - - сУлица = "АдресныеОбъектыУлица.КодНаселенногоПункта"; - ТекстДляВыбрать = ТекстДляВыбрать + "АдресныеОбъектыУлица.КодКЛАДР КАК КодКЛАДРУлица, "; - ИмяОбъектаДляДополнительныхСведений = "АдресныеОбъектыУлица"; - КонецЕсли; - ТекстДляВыбрать = ТекстДляВыбрать + ИмяОбъектаДляДополнительныхСведений + ".Идентификатор КАК Идентификатор, "; - - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ ПЕРВЫЕ 1 - | АдресныеОбъектыРегион.КодКЛАДР КАК КодКЛАДРРегион, - | АдресныеОбъектыРегион.КодСубъектаРФ КАК КодСубъектаРФ, " + ТекстДляВыбрать + " - | ДополнительныеАдресныеСведения.OKATO КАК OKATO, - | ДополнительныеАдресныеСведения.ОКТМО КАК ОКТМО, - | ДополнительныеАдресныеСведения.КодИФНСФЛ, - | ДополнительныеАдресныеСведения.КодИФНСЮЛ, - | ДополнительныеАдресныеСведения.КодУчасткаИФНСФЛ, - | ДополнительныеАдресныеСведения.КодУчасткаИФНСЮЛ - |ИЗ - | РегистрСведений.АдресныеОбъекты КАК АдресныеОбъектыРегион " + ТекстСоединения + " - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДополнительныеАдресныеСведения КАК ДополнительныеАдресныеСведения - | ПО (" + ИмяОбъектаДляДополнительныхСведений + ".Дополнительно = ДополнительныеАдресныеСведения.Идентификатор) - |ГДЕ - | АдресныеОбъектыРегион.Наименование = &Регион - | И АдресныеОбъектыРегион.Уровень = 1 - | И АдресныеОбъектыРегион.КодОкруга = 0 - | И АдресныеОбъектыРегион.КодРайона = 0 - | И АдресныеОбъектыРегион.КодГорода = 0 - | И АдресныеОбъектыРегион.КодВнутригородскогоРайона = 0 - | И АдресныеОбъектыРегион.КодНаселенногоПункта = 0 - | И АдресныеОбъектыРегион.КодУлицы = 0 - | И АдресныеОбъектыРегион.КодДополнительногоЭлемента = 0 - | И АдресныеОбъектыРегион.КодПодчиненногоЭлемента = 0 - | И АдресныеОбъектыРегион.Сокращение = &РегионСокращение"; - - Запрос.УстановитьПараметр("Регион", Адрес.Регион); - Запрос.УстановитьПараметр("РегионСокращение", Адрес.РегионСокращение); - - РезультатЗапроса = Запрос.Выполнить().Выбрать(); - - Если РезультатЗапроса.Следующий() Тогда - КодКЛАДР = 0; - УстановитьКодКладр(Результат.КодыКЛАДР, "Регион", РезультатЗапроса.КодКЛАДРРегион, КодКЛАДР); - УстановитьКодКладр(Результат.КодыКЛАДР, "Округ", РезультатЗапроса.КодКЛАДРОкруг, КодКЛАДР); - УстановитьКодКладр(Результат.КодыКЛАДР, "Район", РезультатЗапроса.КодКЛАДРРайон, КодКЛАДР); - УстановитьКодКладр(Результат.КодыКЛАДР, "Город", РезультатЗапроса.КодКЛАДРГород, КодКЛАДР); - УстановитьКодКладр(Результат.КодыКЛАДР, "ВнутригородскойРайон", РезультатЗапроса.КодКЛАДРВнутригородскойРайон, КодКЛАДР); - УстановитьКодКладр(Результат.КодыКЛАДР, "НаселенныйПункт", РезультатЗапроса.КодКЛАДРНаселенныйПункт, КодКЛАДР); - УстановитьКодКладр(Результат.КодыКЛАДР, "Улица", РезультатЗапроса.КодКЛАДРУлица, КодКЛАДР); - - ЗаполнитьЗначенияСвойств(Результат.КодыАдреса, РезультатЗапроса); - Если НЕ ЗначениеЗаполнено(Результат.КодыАдреса.ОКТМО) ИЛИ Результат.КодыАдреса.ОКТМО = 0 Тогда - // Получение кодов под идентификатору - СведенияОДоме = ЗданияАдреса(АдресРФ); - Если СведенияОДоме.Количество() > 0 И ЗначениеЗаполнено(РезультатЗапроса.Идентификатор) Тогда - ЗаполнитьКодыПоИдентификаторуДома(РезультатЗапроса.Идентификатор, СведенияОДоме, Результат.КодыАдреса); - КонецЕсли; - КонецЕсли; - - Результат.КодыАдреса.КодКЛАДР = КодКЛАДР; - КонецЕсли; - - Возврат Результат; -КонецФункции - -// Читает здания и помещения адреса. -// -// Параметры: -// XDTOАдрес - ОбъектXDTO - Контактная информация или XDTO адреса. -// -// Возвращаемое значение: -// Соответствие - Наименование здания и значение. -// -Функция ЗданияАдреса(XDTOАдрес) - - Результат = Новый Соответствие; - Для Каждого ДопЭлемент Из XDTOАдрес.ДопАдрЭл Цикл - Если ДопЭлемент.Номер <> Неопределено Тогда - КодОбъекта = ДопЭлемент.Номер.Тип; - ТипОбъекта = ТипОбъектаПоКодуСериализации(КодОбъекта); - Если ТипОбъекта <> Неопределено И (ТипОбъекта.Тип < 3) Тогда - Результат.Вставить(ВРег(ТипОбъекта.Наименование), ДопЭлемент.Номер.Значение); - КонецЕсли; - КонецЕсли; - КонецЦикла; - - Возврат Результат; -КонецФункции - -// Возвращает строку с описанием типа по коду части адреса. -// Противоположность функции "КодСериализацииОбъектаАдресации". -// -// Параметры: -// Код - Строка - код -// -// Возвращаемое значение: -// Число - Тип -// -Функция ТипОбъектаПоКодуСериализации(Код) - Для Каждого Элемент Из ТипыОбъектовАдресацииАдресаРФ() Цикл - Если Элемент.Код = Код Тогда - Возврат Элемент; - КонецЕсли; - КонецЦикла; - - Возврат Неопределено; -КонецФункции - -// Возвращает массив структур с информацией о частях адреса согласно приказу ФНС ММВ-7-1/525 от 31.08.2011. -// -// Возвращаемое значение: -// Массив - содержит структуры - описания. -// -Функция ТипыОбъектовАдресацииАдресаРФ() - - Результат = Новый Массив; - - // Код, Наименование, Тип, Порядок, КодФИАС - // Тип: 1 - владение, 2 - здание, 3 - помещение. - - Результат.Добавить(СтрокаОбъектаАдресации("1010", НСтр("ru = 'Дом'"), 1, 1, 2)); - Результат.Добавить(СтрокаОбъектаАдресации("1020", НСтр("ru = 'Владение'"), 1, 2, 1)); - Результат.Добавить(СтрокаОбъектаАдресации("1030", НСтр("ru = 'Домовладение'"), 1, 3, 3)); - - Результат.Добавить(СтрокаОбъектаАдресации("1050", НСтр("ru = 'Корпус'"), 2, 1)); - Результат.Добавить(СтрокаОбъектаАдресации("1060", НСтр("ru = 'Строение'"), 2, 2, 1)); - Результат.Добавить(СтрокаОбъектаАдресации("1080", НСтр("ru = 'Литера'"), 2, 3, 3)); - Результат.Добавить(СтрокаОбъектаАдресации("1070", НСтр("ru = 'Сооружение'"), 2, 4, 2)); - Результат.Добавить(СтрокаОбъектаАдресации("1040", НСтр("ru = 'Участок'"), 2, 5)); - - Результат.Добавить(СтрокаОбъектаАдресации("2010", НСтр("ru = 'Квартира'"), 3, 1)); - Результат.Добавить(СтрокаОбъектаАдресации("2030", НСтр("ru = 'Офис'"), 3, 2)); - Результат.Добавить(СтрокаОбъектаАдресации("2040", НСтр("ru = 'Бокс'"), 3, 3)); - Результат.Добавить(СтрокаОбъектаАдресации("2020", НСтр("ru = 'Помещение'"), 3, 4)); - Результат.Добавить(СтрокаОбъектаАдресации("2050", НСтр("ru = 'Комната'"), 3, 5)); - Результат.Добавить(СтрокаОбъектаАдресации("2060", НСтр("ru = 'Этаж'"), 3, 6)); - // Наши сокращения для поддержки обратной совместимости при парсинге. - Результат.Добавить(СтрокаОбъектаАдресации("2010", НСтр("ru = 'кв.'"), 3, 6)); - Результат.Добавить(СтрокаОбъектаАдресации("2030", НСтр("ru = 'оф.'"), 3, 7)); - - // Уточняющие объекты - Результат.Добавить(СтрокаОбъектаАдресации("10100000", НСтр("ru = 'Почтовый индекс'"))); - Результат.Добавить(СтрокаОбъектаАдресации("10200000", НСтр("ru = 'Адресная точка'"))); - Результат.Добавить(СтрокаОбъектаАдресации("10300000", НСтр("ru = 'Садовое товарищество'"))); - Результат.Добавить(СтрокаОбъектаАдресации("10400000", НСтр("ru = 'Элемент улично-дорожной сети, планировочной структуры дополнительного адресного элемента'"))); - Результат.Добавить(СтрокаОбъектаАдресации("10500000", НСтр("ru = 'Промышленная зона'"))); - Результат.Добавить(СтрокаОбъектаАдресации("10600000", НСтр("ru = 'Гаражно-строительный кооператив'"))); - Результат.Добавить(СтрокаОбъектаАдресации("10700000", НСтр("ru = 'Территория'"))); - - Возврат Результат; -КонецФункции - -Функция СтрокаОбъектаАдресации(Код, Наименование, Тип = 0, Порядок = 0, КодФИАС = 0) - - СтруктураОбъектаАдресации = Новый Структура; - СтруктураОбъектаАдресации.Вставить("Код", Код); - СтруктураОбъектаАдресации.Вставить("Наименование", Наименование); - СтруктураОбъектаАдресации.Вставить("Тип", Тип); - СтруктураОбъектаАдресации.Вставить("Порядок", Порядок); - СтруктураОбъектаАдресации.Вставить("КодФИАС", КодФИАС); - СтруктураОбъектаАдресации.Вставить("Сокращение", НРег(Наименование)); - СтруктураОбъектаАдресации.Вставить("Ключ", ВРег(Наименование)); - Возврат СтруктураОбъектаАдресации; - -КонецФункции - -Функция СтруктураКодовАдреса() - Коды = Новый Структура(); - Коды.Вставить("КодКЛАДР"); - Коды.Вставить("Идентификатор"); - Коды.Вставить("OKATO"); - Коды.Вставить("ОКТМО"); - Коды.Вставить("КодИФНСФЛ"); - Коды.Вставить("КодИФНСЮЛ"); - Коды.Вставить("КодУчасткаИФНСФЛ"); - Коды.Вставить("КодУчасткаИФНСЮЛ"); - Коды.Вставить("Индекс"); - - Возврат Коды; -КонецФункции - -// Определяет индекс и ОКТМО адреса по частям адреса. -// -// Параметры: -// АдресРФ - ОбъектXDTO - Адрес РФ. -// -// Возвращаемое значение: -// Структура - Коды адреса. -// -Функция КодыАдресаСервис(АдресРФ) - - Результат = СтруктураКодовАдреса(); - - АдресаДляПроверки = Новый Массив; - РезультатВебСервис = Новый Структура("Данные", Новый Массив); - СтруктураОписанияОшибкиПоставщика(РезультатВебСервис); - Уровни = АдресныйКлассификаторПовтИсп.УровниКлассификатораФИАС(); - АдресаДляПроверки.Добавить(Новый Структура("Адрес, Уровни", АдресРФ , Уровни)); - Попытка - ЗаполнитьРезультатПроверкиАдресаПоКлассификаторуСервис1С(РезультатВебСервис, АдресаДляПроверки); - Исключение - СтруктураОписанияОшибкиПоставщика(РезультатВебСервис, ИнформацияОбОшибке()); - ЗаписьЖурналаРегистрации( СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка, , , РезультатВебСервис.ПодробноеПредставлениеОшибки); - КонецПопытки; - - Если НЕ РезультатВебСервис.Отказ Тогда - Если РезультатВебСервис.Данные[0].Варианты.Количество() > 0 Тогда - ЗаполнитьЗначенияСвойств(Результат, РезультатВебСервис.Данные[0].Варианты[0]); - КонецЕсли; - КонецЕсли; - - Возврат Результат; -КонецФункции - - -Функция СтруктураКодовКЛАДРПоУровням() - Возврат Новый Структура("Регион, Округ, Район, Город, ВнутригородскойРайон, НаселенныйПункт, Улица"); -КонецФункции - -Функция УстановитьКодКЛАДР(КодыКЛАДР, ИмяПоля, Значение, КодКЛАДР) - КодыКЛАДР[ИмяПоля] = Значение; - Если ЗначениеЗаполнено(Значение) Тогда - КодКладр = Значение; - КонецЕсли; -КонецФункции - - -Функция ЗаполнитьКодыПоИдентификаторуДома(ИдентификаторАдресногоОбъекта, СведенияОДоме, Коды) - - Источник = ИсточникДанныхАдресногоКлассификатора(); - Если ПустаяСтрока(Источник) Тогда - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | ДомаЗданияСтроения.Строения КАК Строения - |ИЗ - | РегистрСведений.ДомаЗданияСтроения КАК ДомаЗданияСтроения - |ГДЕ - | ДомаЗданияСтроения.АдресныйОбъект = &АдресныйОбъект"; - - Запрос.УстановитьПараметр("АдресныйОбъект", ИдентификаторАдресногоОбъекта); - Запись = Запрос.Выполнить().Выбрать(); - - Пока Запись.Следующий() Цикл - Если ЗначениеЗаполнено(Запись.Строения) Тогда - Описание = Запись.Строения.Получить(); - Если Не ПустаяСтрока(Описание) Тогда - ИдентификаторДома = ИдентификаторДома(Описание, СведенияОДоме); - Если ЗначениеЗаполнено(ИдентификаторДома) Тогда - Прервать; - КонецЕсли; - КонецЕсли; - КонецЕсли; - КонецЦикла; - КонецЕсли; - - Если ЗначениеЗаполнено(ИдентификаторДома) Тогда - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | ДополнительныеАдресныеСведения.Идентификатор, - | ДополнительныеАдресныеСведения.КодСубъектаРФ, - | ДополнительныеАдресныеСведения.OKATO, - | ДополнительныеАдресныеСведения.ОКТМО, - | ДополнительныеАдресныеСведения.КодИФНСФЛ, - | ДополнительныеАдресныеСведения.КодИФНСЮЛ, - | ДополнительныеАдресныеСведения.КодУчасткаИФНСФЛ, - | ДополнительныеАдресныеСведения.КодУчасткаИФНСЮЛ - |ИЗ - | РегистрСведений.ДополнительныеАдресныеСведения КАК ДополнительныеАдресныеСведения - |ГДЕ - | ДополнительныеАдресныеСведения.Идентификатор = &Идентификатор"; - - Запрос.УстановитьПараметр("Идентификатор", ИдентификаторДома); - - РезультатЗапроса = Запрос.Выполнить().Выбрать(); - - Если РезультатЗапроса.Следующий() Тогда - ЗаполнитьЗначенияСвойств(Коды, РезультатЗапроса); - КонецЕсли; - КонецЕсли; - -КонецФункции - -// Извлекает список домов полученного из регистра сведения описания и добавляет их в список значений. -// -// Параметры: -// СтрокаСоСпискомДомов - Строка - описание списка домов из регистра сведения. -// СтрокаПоиска - Строка - Строка отбора. -// ВариантыДомов - Список значений - Список домов. -// -Функция ИдентификаторДома(СтрокаСоСпискомДомов, СведенияОДоме) - - Если СтрДлина(СтрокаСоСпискомДомов) > 25 Тогда - Идентификатор = УникальныйИдентификаторИзСтроки64(Лев(СтрокаСоСпискомДомов, 25)); - Иначе - Возврат Неопределено; - КонецЕсли; - СтрокаСоСпискомДомов = Сред(СтрокаСоСпискомДомов, 25); - - ТипЧисло = Новый ОписаниеТипов("Число"); - СтрокаСоСпискомДомов = СтрЗаменить(СтрокаСоСпискомДомов, Символы.ПС, ""); - СтрокаСоСпискомДомов = СтрЗаменить(СтрокаСоСпискомДомов, Символы.Таб, Символы.ПС); - ЧислоСтрок = СтрЧислоСтрок(СтрокаСоСпискомДомов); - Позиция = 1; - Интервалы = Новый Массив; - - НаименованиеЗданийИСтроений = НаименованиеВладенийИСтроений(); - - Пока Позиция <= ЧислоСтрок Цикл - Строка = СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция); - - Если Строка = "h" ИЛИ Строка = "H" Тогда - - ОписаниеДома = ОписаниеДома(); - - ОписаниеДома.ВидВладения = ТипЧисло.ПривестиЗначение(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 1)); - ОписаниеДома.Дом = СокрЛП(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 2)); - ОписаниеДома.ДомЧислом = НомерДомаЧислом(ОписаниеДома.Дом); - ОписаниеДома.Корпус = СокрЛП(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 3)); - ОписаниеДома.ВидСтроения = ТипЧисло.ПривестиЗначение(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 4)); - ОписаниеДома.Строение = СокрЛП(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 5)); - ОписаниеДома.НазваниеВладения = СокрЛП(НаименованиеЗданийИСтроений.Владения.Получить(ОписаниеДома.ВидВладения)); - ОписаниеДома.НазваниеСтроения = СокрЛП(НаименованиеЗданийИСтроений.Строения.Получить(ОписаниеДома.ВидСтроения)); - - ПозицияУИД = СтрНайти(ОписаниеДома.Строение, "+"); - Если ПозицияУИД > 0 Тогда - Идентификатор = УникальныйИдентификаторИзСтроки64(Сред(ОписаниеДома.Строение, ПозицияУИД + 2, 25)); - ОписаниеДома.Строение = СокрЛП(Лев(ОписаниеДома.Строение, ПозицияУИД - 1)); - КонецЕсли; - - НомерДомаКорректный = Ложь; - НомерКорпусаКорректный = Ложь; - НомерСтроенияКорректный = Ложь; - - НомерДома = СведенияОДоме.Получить(ВРег(ОписаниеДома.НазваниеВладения)); - Если НомерДома <> Неопределено Тогда - НомерДомаКорректный = (СтрСравнить(НомерДома, ОписаниеДома.Дом) = 0); - ИначеЕсли НЕ ЗначениеЗаполнено(ОписаниеДома.Дом) ИЛИ ОписаниеДома.Дом = НСтр("ru = 'НЕТ'") Тогда - НомерДомаКорректный = Истина; - КонецЕсли; - - НомерКорпуса = СведенияОДоме.Получить("КОРПУС"); - Если НомерКорпуса <> Неопределено Тогда - НомерКорпусаКорректный = (СтрСравнить(НомерКорпуса, ОписаниеДома.Корпус) = 0); - ИначеЕсли НЕ ЗначениеЗаполнено(ОписаниеДома.Корпус) Тогда - НомерКорпусаКорректный = Истина; - КонецЕсли; - - НомерСтроения = СведенияОДоме.Получить(ВРег(ОписаниеДома.НазваниеСтроения)); - Если НомерСтроения <> Неопределено Тогда - НомерСтроенияКорректный = (СтрСравнить(НомерСтроения, ОписаниеДома.Строение) = 0); - ИначеЕсли НЕ ЗначениеЗаполнено(ОписаниеДома.Строение) Тогда - НомерСтроенияКорректный = Истина; - КонецЕсли; - - Если НомерСтроенияКорректный И НомерДомаКорректный И НомерКорпусаКорректный Тогда - Возврат Идентификатор; - КонецЕсли; - - Позиция = Позиция + 5; - - ИначеЕсли Строка = "i" ИЛИ Строка = "I" Тогда - - // Интервалы набираем для последующего добавления. - Интервал = Новый Структура; - Интервал.Вставить("Вид", ТипЧисло.ПривестиЗначение(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 1))); - Интервал.Вставить("Начало", ТипЧисло.ПривестиЗначение(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 2))); - Интервал.Вставить("Конец", ТипЧисло.ПривестиЗначение(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 3))); - Интервалы.Добавить(Интервал); - - Позиция = Позиция + 3; - КонецЕсли; - - Позиция = Позиция + 1; - КонецЦикла; - - Возврат Неопределено; - -КонецФункции - -// Возвращает признак того, является ли строка данных контактной информации XML данными. -// -// Параметры: -// Текст - Строка - Проверяемая строка. -// -// Возвращаемое значение: -// Булево - результат проверки. -// -Функция ЭтоКонтактнаяИнформацияВXML(Знач Текст) - - Возврат ТипЗнч(Текст) = Тип("Строка") И СтрНачинаетсяС(СокрЛ(Текст), "<"); - -КонецФункции - -Функция ОписаниеДома() - ОписаниеДома = Новый Структура("ДомЧислом, Дом, Корпус, Строение, ВидСтроения, ВидВладения, НазваниеВладения, НазваниеСтроения"); - ОписаниеДома.ВидВладения = 0; - ОписаниеДома.ВидСтроения = 0; - ОписаниеДома.НазваниеСтроения = ""; - Возврат ОписаниеДома; -КонецФункции - -// Функция - Полные наименования сокращений -// -// Параметры: -// СоответствиеСокращений - Соответствие - сокращения адреса. -// -Процедура ПолныеНаименованияСокращений(СоответствиеСокращений) Экспорт - - Запрос = Новый Запрос; - Запрос.Текст = "ВЫБРАТЬ - | ТаблицаСокращений.Уровень КАК Уровень, - | ТаблицаСокращений.Сокращение КАК Сокращение - |ПОМЕСТИТЬ ТаблицаСокращений - |ИЗ - | &ТаблицаСокращений КАК ТаблицаСокращений - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ - | УровниСокращенийАдресныхСведений.Сокращение КАК Сокращение, - | УровниСокращенийАдресныхСведений.Уровень КАК Уровень, - | УровниСокращенийАдресныхСведений.Значение КАК Значение - |ИЗ - | ТаблицаСокращений КАК ТаблицаСокращений - | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УровниСокращенийАдресныхСведений КАК УровниСокращенийАдресныхСведений - | ПО ТаблицаСокращений.Уровень = УровниСокращенийАдресныхСведений.Уровень - | И (ТаблицаСокращений.Сокращение = УровниСокращенийАдресныхСведений.Сокращение)"; - - ТаблицаСоответствиеСокращений = Новый ТаблицаЗначений; - ТаблицаСоответствиеСокращений.Колонки.Добавить("Уровень", Новый ОписаниеТипов("Число")); - ТаблицаСоответствиеСокращений.Колонки.Добавить("Сокращение", ОбщегоНазначения.ОписаниеТипаСтрока(30)); - Для каждого Элемент Из СоответствиеСокращений Цикл - НоваяСтрока = ТаблицаСоответствиеСокращений.Добавить(); - НоваяСтрока.Уровень = Элемент.Ключ; - НоваяСтрока.Сокращение = Элемент.Значение; - КонецЦикла; - - Запрос.УстановитьПараметр("ТаблицаСокращений", ТаблицаСоответствиеСокращений); - РезультатЗапроса = Запрос.Выполнить().Выбрать(); - - Пока РезультатЗапроса.Следующий() Цикл - СоответствиеСокращений[РезультатЗапроса.Уровень] = РезультатЗапроса.Значение; - КонецЦикла; - -КонецПроцедуры - -// Возвращает соответствие полных наименований адресных объектов и их сокращения. -// -// Параметры: -// НаименованияАдресныхОбъектов - Массив - Полные наименования адресных объектов. Если передан пустой массив, -// то будут возвращен полный список наименований и сокращений. -// -// Возвращаемое значение: -// Соответствие - Соответствие найденных полных наименований адресных объектов их сокращениям. -// -Функция СокращенияАдресныхОбъектов(НаименованияАдресныхОбъектов) Экспорт - - Результат = Новый Соответствие; - - Источник = ИсточникДанныхАдресногоКлассификатора(); - Если ПустаяСтрока(Источник) Тогда - - СтрокаЗапросГде = ""; - Если ТипЗнч(НаименованияАдресныхОбъектов) = Тип("Массив") И НаименованияАдресныхОбъектов.Количество() > 0 Тогда - СтрокаЗапросГде = " ГДЕ УровниСокращенийАдресныхСведений.Значение В(&АдресныеСокращения) "; - КонецЕсли; - - Запрос = Новый Запрос(); - Запрос.Текст = - "ВЫБРАТЬ - | УровниСокращенийАдресныхСведений.Значение КАК Наименование, - | УровниСокращенийАдресныхСведений.Сокращение КАК Сокращение - |ИЗ - | РегистрСведений.УровниСокращенийАдресныхСведений КАК УровниСокращенийАдресныхСведений - | " + СтрокаЗапросГде + " - | - |СГРУППИРОВАТЬ ПО - | УровниСокращенийАдресныхСведений.Значение, - | УровниСокращенийАдресныхСведений.Сокращение - | - |УПОРЯДОЧИТЬ ПО - | Наименование"; - - Если НЕ ПустаяСтрока(СтрокаЗапросГде) Тогда - Запрос.УстановитьПараметр("АдресныеСокращения", НаименованияАдресныхОбъектов); - КонецЕсли; - ТаблицаАдресныхСокращений = Запрос.Выполнить().Выгрузить(); - - Для каждого СтрокаТаблицы Из ТаблицаАдресныхСокращений Цикл - Результат.Вставить(ВРег(СтрокаТаблицы.Наименование), СтрокаТаблицы.Сокращение); - КонецЦикла; - - Если Результат.Количество() > 0 Тогда - Возврат Результат; - КонецЕсли; - КонецЕсли; - - // Веб сервис 1С или классификатор не загружен, получаем данные о сокращениях из макета. - ТаблицаАдресныхСокращений = РегистрыСведений.АдресныеОбъекты.АдресныеСокращения(); - - Если ТипЗнч(НаименованияАдресныхОбъектов) = Тип("Массив") И НаименованияАдресныхОбъектов.Количество() > 0 Тогда - Для каждого ПолноеНаименование Из НаименованияАдресныхОбъектов Цикл - СтрокаТаблицы = ТаблицаАдресныхСокращений.Найти(ТРег(ПолноеНаименование), "Наименование"); - Если СтрокаТаблицы <> Неопределено Тогда - Результат.Вставить(ВРег(СтрокаТаблицы.Наименование), СтрокаТаблицы.Сокращение); - КонецЕсли; - КонецЦикла; - Иначе - Для каждого СтрокаТаблицы Из ТаблицаАдресныхСокращений Цикл - Результат.Вставить(ВРег(СтрокаТаблицы.Наименование), СтрокаТаблицы.Сокращение); - КонецЦикла; - КонецЕсли; - - Возврат Результат; - -КонецФункции - -// Проверяет наличие записей о регионах в регистре сведений АдресныеОбъекты и заполняет их в случае отсутствия. -// -Функция ПроверитьНачальноеЗаполнение() Экспорт - - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ ПЕРВЫЕ 1 - | АдресныеОбъекты.Уровень - |ИЗ - | РегистрСведений.АдресныеОбъекты КАК АдресныеОбъекты - |ГДЕ - | АдресныеОбъекты.Уровень = 1"; - - РезультатЗапроса = Запрос.Выполнить().Выгрузить(); - - Если РезультатЗапроса.Количество() = 0 Тогда - Если ПравоДоступа("Изменение", Метаданные.РегистрыСведений.АдресныеОбъекты) Тогда - ВыполнитьНачальноеЗаполнение(); - Иначе - Возврат Ложь; - КонецЕсли; - КонецЕсли; - - Возврат Истина; - -КонецФункции - -//////////////////////////////////////////////////////////////////////////////// -// Загрузка адресного классификатора - -// Загрузка всех данных классификатора адресов. -// -// Параметры: -// КодыСубъектовРФ - Массив - Содержит числовые коды регионов-субъектов для загрузки. -// -// ОписаниеФайлов - Строка, Массив - Каталог на сервере, в котором находятся файлы данных. Ожидается, что имена -// файлов будут в верхнем регистре. -// Массив элементов типа ОписаниеПередаваемогоФайла или структур с полями. -// * Имя - Строка - Имя или полное имя передаваемого файла. -// * Хранение - ДвоичныеДанные, Строка - Описание хранения файла. Строка -// может быть путем на файловой системе или адресом во временном -// хранилище. -// ОповещатьОПрогрессе - Булево - Флаг оповещения о прогрессе (см ДлительныеОперации.СообщитьПрогресс). -// -Процедура ЗагрузитьКлассификаторАдресов(КодыСубъектовРФ, ОписаниеФайлов, ОповещатьОПрогрессе = Истина) Экспорт - - ДатаЗагрузки = ТекущаяУниверсальнаяДата(); - - Если ТипЗнч(ОписаниеФайлов) = Тип("Строка") Тогда - // Файлы уже подготовлены - КаталогФайлов = ОбщегоНазначенияКлиентСервер.ДобавитьКонечныйРазделительПути(ОписаниеФайлов); - Иначе - // Извлекаем файлы - КаталогФайлов = ОбщегоНазначенияКлиентСервер.ДобавитьКонечныйРазделительПути( ПолучитьИмяВременногоФайла() ); - СоздатьКаталог(КаталогФайлов); - - Если ТипЗнч(ОписаниеФайлов) <> Тип("Массив") Тогда - // Если ОписаниеФайлов не массив, то данные передаются через константу, после извлечения очищаем передаваемые данные. - ПараметрыАдресногоКлассификатора = Константы.ПараметрыАдресногоКлассификатора.Получить().Получить(); - ОписаниеФайлов = ПараметрыАдресногоКлассификатора.ОписаниеФайлов; - ПараметрыАдресногоКлассификатора.Удалить("ОписаниеФайлов"); - ХранилищеПараметров = Новый ХранилищеЗначения(ПараметрыАдресногоКлассификатора); - Константы.ПараметрыАдресногоКлассификатора.Установить(ХранилищеПараметров); - КонецЕсли; - - Для Каждого ОписаниеФайла Из ОписаниеФайлов Цикл - Файл = Новый Файл(ОписаниеФайла.Имя); - ПолноеИмяФайла = КаталогФайлов + ВРег(Файл.Имя); - - Данные = ОписаниеФайла.Хранение; - ТипДанных = ТипЗнч(Данные); - - Если ТипДанных = Тип("ДвоичныеДанные") Тогда - Данные.Записать(ПолноеИмяФайла); - - ИначеЕсли ЭтоАдресВременногоХранилища(Данные) Тогда - Данные = ПолучитьИзВременногоХранилища(Данные); - Данные.Записать(ПолноеИмяФайла); - - Иначе - ПолноеИмяФайла = Данные; - - КонецЕсли; - - Если ВРег(Прав(ПолноеИмяФайла, 4)) = ".ZIP" Тогда - Архив = Новый ЧтениеZipФайла(ПолноеИмяФайла); - Архив.ИзвлечьВсе(КаталогФайлов, РежимВосстановленияПутейФайловZIP.НеВосстанавливать); - УдалитьВременныйФайл(ПолноеИмяФайла); - КонецЕсли; - - КонецЦикла; - - КонецЕсли; - - ВидыСведенийНеОбработаны = Истина; - - // 2. Все заказанные субъекты - ВсегоСубъектов = КодыСубъектовРФ.Количество(); - НомерПоПорядку = 0; - - Для Каждого СубъектРФ Из КодыСубъектовРФ Цикл - - НомерПоПорядку = НомерПоПорядку + 1; - Если ОповещатьОПрогрессе Тогда - ДлительныеОперации.СообщитьПрогресс(, СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Загрузка региона ""%1 - %2"" (осталось %3) ...'"), - СубъектРФ, АдресныйКлассификатор.НаименованиеРегионаПоКоду(СубъектРФ), - Формат(ВсегоСубъектов - НомерПоПорядку, "ЧН="))); - КонецЕсли; - - Если ВидыСведенийНеОбработаны Тогда - // Общая справочная информация, понадобится потом. - СлужебныеАдресныеСведения = СлужебныеАдресныеСведения(Неопределено, КаталогФайлов); - // И сразу запишем - Набор = РегистрыСведений.СлужебныеАдресныеСведения.СоздатьНаборЗаписей(); - Набор.Загрузить(СлужебныеАдресныеСведения.Сведения); - ОбновлениеИнформационнойБазы.ЗаписатьДанные(Набор); - - ВидыСведенийНеОбработаны = Ложь; - КонецЕсли; - - НачатьТранзакцию(); - Попытка - - ВерсияСубъектаРФ = ИнформацияОЗагрузкеВерсии(СубъектРФ).Версия; - Если ВерсияСубъектаРФ <> СлужебныеАдресныеСведения.Версия Тогда - ЗагрузитьАдресныеОбъекты(СубъектРФ, КаталогФайлов, СлужебныеАдресныеСведения.Сведения); - ЗагрузитьДомаЗданияСтроения(СубъектРФ, КаталогФайлов, СлужебныеАдресныеСведения.Сведения); - ЗагрузитьИсториюАдресныхОбъектов(СубъектРФ, КаталогФайлов, СлужебныеАдресныеСведения.Сведения); - ЗагрузитьПричиныИзмененияАдреса(СубъектРФ, КаталогФайлов, СлужебныеАдресныеСведения.Сведения); - ЗагрузитьДополнительныеСведения(СубъектРФ, КаталогФайлов, СлужебныеАдресныеСведения.Сведения); - ЗагрузитьАдресныеОриентиры(СубъектРФ, КаталогФайлов, СлужебныеАдресныеСведения.Сведения); - - // Ставим версию данных загрузки региона. - УстановитьИнформациюОЗагрузкеВерсии(СубъектРФ, СлужебныеАдресныеСведения.Версия, СлужебныеАдресныеСведения.ДатаВерсии, ДатаЗагрузки); - - // Очищаем загруженные данные в старом классификаторе. - ОчиститьСведенияУстаревшегоКлассификатора(СубъектРФ); - КонецЕсли; - - ЗафиксироватьТранзакцию(); - Исключение - ОтменитьТранзакцию(); - ВызватьИсключение; - КонецПопытки; - - КонецЦикла; - - // 3. Обновляем список субъектов РФ - убеждаемся, что у нас есть все корневые записи. - РегистрыСведений.АдресныеОбъекты.ОбновитьСоставСубъектовРФПоКлассификатору(); - - // 4. Загружаем сокращения адресов. - // Эти данные будут нужны при разборах адреса из строки. - АдресныеСокращения = АдресныеСокращения(КаталогФайлов); - Набор = РегистрыСведений.УровниСокращенийАдресныхСведений.СоздатьНаборЗаписей(); - Набор.Загрузить(АдресныеСокращения.Сведения); - ОбновлениеИнформационнойБазы.ЗаписатьДанные(Набор); // Отключаем всю бизнес-логику для ускорения операции. - - // 5. Очищаем временный каталог. - Если ТипЗнч(ОписаниеФайлов) = Тип("Строка") Тогда - УдалитьВременныйФайл(КаталогФайлов); - КонецЕсли; - -КонецПроцедуры - -// Удаляет временный файл. -// Если при попытке удаления возникает ошибка, она игнорируется - файл будет удален позднее. -// -Процедура УдалитьВременныйФайл(ПолноеИмяФайла) Экспорт - - Если ПустаяСтрока(ПолноеИмяФайла) Тогда - Возврат; - КонецЕсли; - - Попытка - УдалитьФайлы(ПолноеИмяФайла) - Исключение - ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение, - ,, СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не удалось удалить временный файл - |%1 по причине: %2'"), ПолноеИмяФайла, КраткоеПредставлениеОшибки(ИнформацияОбОшибке()))); - КонецПопытки - -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Обработчики условных вызовов в эту подсистему. - -// См. одноименную процедуру в общем модуле ПользователиПереопределяемый. -Процедура ПриОпределенииНазначенияРолей(НазначениеРолей) Экспорт - - // ТолькоДляПользователейСистемы. - НазначениеРолей.ТолькоДляПользователейСистемы.Добавить( - Метаданные.Роли.ДобавлениеИзменениеАдресныхСведений.Имя); - -КонецПроцедуры - -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -Функция ОпределитьИдентификаторыАдреса(АдресДляПроверки) Экспорт - - Результат = Новый Структура("Отказ, ИдентификаторАдресногоОбъекта, ИдентификаторДома, ПодробноеПредставлениеОшибки, КраткоеПредставлениеОшибки", Ложь); - - Если НЕ ЭтоКонтактнаяИнформацияВXML(АдресДляПроверки) Тогда - ВызватьИсключение НСтр("ru = 'Сведения о контактной информации были повреждены или некорректно заполнены'"); - КонецЕсли; - - Попытка - ОпределитьИдентификаторыАдресаСервис1С(Результат, АдресДляПроверки); - Исключение - Инфо = ИнформацияОбОшибке(); - СтруктураОписанияОшибкиПоставщика(Результат, ИнформацияОбОшибке()); - ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка,,, Результат.ПодробноеПредставлениеОшибки); - КонецПопытки; - - Возврат Результат; - -КонецФункции - -// Получает идентификаторы адреса через веб-сервис. -// -// Параметры: -// АдресДляПроверки - Строка - Строка XML контактной информации содержащая адрес. -// -// Возвращаемое значение: -// Структура - набор пар ключ-значение. -// * ИдентификаторАдресногоОбъекта - УникальныйИдентификатор - Идентификатор адресного объекта (улицы, нас. пункта). -// * ИдентификаторДома - УникальныйИдентификатор - Идентификатор дома адресного объекта. -// * Отказ - Булево - Поставщик не доступен. -// * ПодробноеПредставлениеОшибки - Строка - Описание ошибки, если поставщик недоступен иначе Неопределено. -// * КраткоеПредставлениеОшибки - Строка - Описание ошибки, если поставщик недоступен иначе Неопределено. -// -Процедура ОпределитьИдентификаторыАдресаСервис1С(Результат, АдресДляПроверки) - - Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); - АдресXDTO = ОбщегоНазначения.ОбъектXDTOИзСтрокиXML(АдресДляПроверки, Сервис.ФабрикаXDTO); - - СписокДляПроверки = Сервис.ФабрикаXDTO.Создать(Сервис.ФабрикаXDTO.Тип(ПространствоИмен(), "AddressList")); - ТипАдресаРФ = Сервис.ФабрикаXDTO.Тип(ПространствоИменАдресаРФ(), "АдресРФ"); - ТипАдреса = Сервис.ФабрикаXDTO.Тип(ПространствоИменАдресаРФ(), "Адрес"); - ТипЭлементаСписка = СписокДляПроверки.Свойства().Получить("Item").Тип; - - ПроверяемыйАдрес = СписокДляПроверки.Item.Добавить(Сервис.ФабрикаXDTO.Создать(ТипЭлементаСписка)); - ПроверяемыйАдрес.Levels = АдресныйКлассификаторПовтИсп.УровниКлассификатораФИАС(); - ПроверяемыйАдрес.Address = АдресXDTO.Состав.Состав; - - КодЯзыка = ТекущийКодЛокализации(); - РезультатПроверки = Сервис.Analyze(СписокДляПроверки, КодЯзыка, Ложь, Метаданные.Имя); - - // Формируем структуру результата. - Если РезультатПроверки.Item.Количество() > 0 Тогда - Если РезультатПроверки.Item[0].Error.Количество() > 0 Тогда - Ошибка = РезультатПроверки.Item[0].Error[0]; - Результат.КраткоеПредставлениеОшибки = Ошибка.Text; - Результат.ПодробноеПредставлениеОшибки = Ошибка.Suggestion; - Результат.Отказ = Истина; - КонецЕсли; - - Если РезультатПроверки.Item[0].Variant.Количество() Тогда - Вариант = РезультатПроверки.Item[0].Variant[0]; - Результат.ИдентификаторАдресногоОбъекта = Вариант.ID; - Результат.ИдентификаторДома = Вариант.HouseID; - КонецЕсли; - КонецЕсли; - -КонецПроцедуры - -Процедура ОпределитьФорматКодов(КодыАдреса) - - Если ЗначениеЗаполнено(КодыАдреса.ОКТМО) Тогда - - ОКТМОЧисло = КодыАдреса.ОКТМО; - ОКТМОСтрока = Формат(ОКТМОЧисло, "ЧГ=0"); - - Если СтрДлина(ОКТМОСтрока) < 8 Тогда - КодыАдреса.ОКТМО = Формат(ОКТМОЧисло, "ЧЦ=8; ЧВН=; ЧГ=0"); - ИначеЕсли СтрДлина(ОКТМОСтрока) = 10 Тогда - КодыАдреса.ОКТМО = Формат(ОКТМОЧисло, "ЧЦ=11; ЧВН=; ЧГ=0"); - Иначе - КодыАдреса.ОКТМО = ОКТМОСтрока; - КонецЕсли - - КонецЕсли; - Если ЗначениеЗаполнено(КодыАдреса.OKATO) Тогда - КодыАдреса.OKATO = Формат(КодыАдреса.OKATO, "ЧГ=0"); - КонецЕсли; - -КонецПроцедуры - - #Область СлужебныйПрограммныйИнтерфейсФоновыеОперацииСКлассификатором // Обработчик фоновой загрузки. @@ -5871,16 +5943,19 @@ Дело.Подсказка = НСтр("ru = 'Автоподбор и проверка корректности адресов временно недоступны.'"); Дело.ПараметрыФормы = Новый Структура; Дело.Форма = "РегистрСведений.АдресныеОбъекты.Форма.АктуализацияУстаревшегоКлассификатора"; + Если Дело.ЕстьДела = Истина Тогда + Возврат; + КонецЕсли; КонецЦикла; - // 2. Необходимость обновления адресного классификатора + // 2. Необходимость обновления адресного классификатора. ПоследнееОбновление = ОписаниеПоследнейЗагрузки(); Подсказка = ПоследнееОбновление.Представление; Подсказка = Подсказка + Символы.ПС + НСтр("ru = 'Необходимо проверить наличие обновлений.'"); Для Каждого Раздел Из Разделы Цикл Дело = ТекущиеДела.Добавить(); Дело.Идентификатор = "ОбновлениеАдресногоКлассификатора"; - Дело.ЕстьДела = ПоследнееОбновление.НеобходимоОбновление ; + Дело.ЕстьДела = ПоследнееОбновление.НеобходимоОбновление; Дело.Важное = ПоследнееОбновление.НеобходимоОбновление; Дело.Владелец = Раздел; Дело.Представление = НСтр("ru = 'Адресный классификатор устарел'"); @@ -5957,13 +6032,13 @@ // Преобразует строку base64 в УникальныйИдентификатор. // // Параметры: -// Строка - Строка - исходные данные. +// Строка - Строка - Регистрозависимые исходные данные. // // Возвращаемое значение: // Идентификатор - Результат преобразования. // Возвращаемый идентификатор зависит от регистра букв, передавай строки. // -Функция УникальныйИдентификаторИзСтроки64(Строка) +Функция УникальныйИдентификаторИзСтроки64(Строка) Возврат УникальныйИдентификаторИзДвоичныхДанных( ДвоичныеДанныеИзСтроки(Строка) ); @@ -6015,8 +6090,10 @@ Функция ЗаполненныеРегионыУстаревшегоКлассификатора() Экспорт Результат = Новый Массив; - Если Метаданные.РегистрыСведений.Найти("УдалитьАдресныйКлассификатор") <> Неопределено - И ПравоДоступа("Изменение", Метаданные.РегистрыСведений.УдалитьАдресныйКлассификатор) Тогда + Если Метаданные.РегистрыСведений.Найти("УдалитьАдресныйКлассификатор") <> Неопределено + И Пользователи.РолиДоступны("ДобавлениеИзменениеАдресныхСведений") Тогда + + УстановитьПривилегированныйРежим(Истина); // Выбираем все регионы, по которым еще есть записи. Запрос = Новый Запрос(" @@ -6050,11 +6127,12 @@ // Функция УстаревшийКлассификаторСодержитСведения() - Если НЕ ПравоДоступа("Чтение", Метаданные.РегистрыСведений.УдалитьАдресныйКлассификатор) Тогда - Возврат Ложь; - КонецЕсли; - - Запрос = Новый Запрос(" + Если Метаданные.РегистрыСведений.Найти("УдалитьАдресныйКлассификатор") <> Неопределено + И Пользователи.РолиДоступны("ДобавлениеИзменениеАдресныхСведений") Тогда + + УстановитьПривилегированныйРежим(Истина); + + Запрос = Новый Запрос(" |ВЫБРАТЬ ПЕРВЫЕ 1 | Регионы.КодАдресногоОбъектаВКоде КАК КодСубъектаРФ |ИЗ @@ -6063,10 +6141,11 @@ | Регионы.ТипАдресногоЭлемента > 1 |"); - Результат = Запрос.Выполнить().Выбрать(); - - Если Результат.Следующий() Тогда - Возврат Истина; + Результат = Запрос.Выполнить().Выбрать(); + + Если Результат.Следующий() Тогда + Возврат Истина; + КонецЕсли; КонецЕсли; Возврат Ложь; КонецФункции @@ -6195,6 +6274,7 @@ Процедура ЗаполнитьАдресныеОбъектыРегистраКЛАДР(СубъектРФ, ТаблицыДанных) + УстановитьПривилегированныйРежим(Истина); ТипЧисло = Новый ОписаниеТипов("Число"); ТаблицаАдресныхОбъектов = ТаблицыДанных.АдресныеОбъекты; @@ -6299,6 +6379,8 @@ Процедура ЗаполнитьДомаЗданияСтроенияКЛАДР(СубъектРФ, ТаблицыДанных) + УстановитьПривилегированныйРежим(Истина); + ТипЧисло = Новый ОписаниеТипов("Число"); ТаблицаАдресныхОбъектов = ТаблицыДанных.АдресныеОбъекты; @@ -6352,42 +6434,42 @@ // Функция СлужебныеАдресныеСведенияДляОбработкиКЛАДР() - Результат = - // Интервалы - СтрокаСлужебныхАдресныхСведений("INTVSTAT", 1, Неопределено, "Обычный", - СтрокаСлужебныхАдресныхСведений("INTVSTAT", 2, Неопределено, "Четный", - СтрокаСлужебныхАдресныхСведений("INTVSTAT", 3, Неопределено, "Нечетный", + ТаблицаАдресныхСведений = РегистрыСведений.СлужебныеАдресныеСведения.СоздатьНаборЗаписей().ВыгрузитьКолонки(); + + ДобавитьСтрокуАдресныхСведений("INTVSTAT", 1, Неопределено, "Обычный", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("INTVSTAT", 2, Неопределено, "Четный", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("INTVSTAT", 3, Неопределено, "Нечетный", ТаблицаАдресныхСведений); // Дома - СтрокаСлужебныхАдресныхСведений("ESTSTAT", 1, Неопределено, "Владение", - СтрокаСлужебныхАдресныхСведений("ESTSTAT", 2, Неопределено, "Дом", - СтрокаСлужебныхАдресныхСведений("ESTSTAT", 3, Неопределено, "Домовладение", + ДобавитьСтрокуАдресныхСведений("ESTSTAT", 1, Неопределено, "Владение", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("ESTSTAT", 2, Неопределено, "Дом", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("ESTSTAT", 3, Неопределено, "Домовладение", ТаблицаАдресныхСведений); // Строения - СтрокаСлужебныхАдресныхСведений("STRSTAT", 1, "стр", "Строение", - СтрокаСлужебныхАдресныхСведений("STRSTAT", 2, "сооружение", "Сооружение", - СтрокаСлужебныхАдресныхСведений("STRSTAT", 3, "литера", "Литера", - СтрокаСлужебныхАдресныхСведений("STRSTAT", 3, "литер", "Литер", + ДобавитьСтрокуАдресныхСведений("STRSTAT", 1, "стр", "Строение", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("STRSTAT", 2, "сооружение", "Сооружение", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("STRSTAT", 3, "литера", "Литера", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("STRSTAT", 3, "литер", "Литер", ТаблицаАдресныхСведений); // Дополнительные адресные элементы - СтрокаСлужебныхАдресныхСведений("ДопАдрЭлНомер", 0, "Бокс", "2040", - СтрокаСлужебныхАдресныхСведений("ДопАдрЭлНомер", 0, "Владение", "1020", - СтрокаСлужебныхАдресныхСведений("ДопАдрЭлНомер", 0, "Дом", "1010", - СтрокаСлужебныхАдресныхСведений("ДопАдрЭлНомер", 0, "Домовладение", "1030", - СтрокаСлужебныхАдресныхСведений("ДопАдрЭлНомер", 0, "Квартира", "2010", - СтрокаСлужебныхАдресныхСведений("ДопАдрЭлНомер", 0, "Комната", "2050", - СтрокаСлужебныхАдресныхСведений("ДопАдрЭлНомер", 0, "Корпус", "1050", - СтрокаСлужебныхАдресныхСведений("ДопАдрЭлНомер", 0, "Литера", "1080", - СтрокаСлужебныхАдресныхСведений("ДопАдрЭлНомер", 0, "Офис", "2030", - СтрокаСлужебныхАдресныхСведений("ДопАдрЭлНомер", 0, "Помещение", "2020", - СтрокаСлужебныхАдресныхСведений("ДопАдрЭлНомер", 0, "Сооружение", "1070", - СтрокаСлужебныхАдресныхСведений("ДопАдрЭлНомер", 0, "Строение", "1060", - СтрокаСлужебныхАдресныхСведений("ДопАдрЭлНомер", 0, "Участок", "1040", + ДобавитьСтрокуАдресныхСведений("ДопАдрЭлНомер", 0, "Бокс", "2040", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("ДопАдрЭлНомер", 0, "Владение", "1020", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("ДопАдрЭлНомер", 0, "Дом", "1010", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("ДопАдрЭлНомер", 0, "Домовладение", "1030", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("ДопАдрЭлНомер", 0, "Квартира", "2010", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("ДопАдрЭлНомер", 0, "Комната", "2050", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("ДопАдрЭлНомер", 0, "Корпус", "1050", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("ДопАдрЭлНомер", 0, "Литера", "1080", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("ДопАдрЭлНомер", 0, "Офис", "2030", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("ДопАдрЭлНомер", 0, "Помещение", "2020", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("ДопАдрЭлНомер", 0, "Сооружение", "1070", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("ДопАдрЭлНомер", 0, "Строение", "1060", ТаблицаАдресныхСведений); + ДобавитьСтрокуАдресныхСведений("ДопАдрЭлНомер", 0, "Участок", "1040", ТаблицаАдресныхСведений); + + ТаблицаАдресныхСведений.Индексы.Добавить("Тип, Значение"); + + Возврат ТаблицаАдресныхСведений; - РегистрыСведений.СлужебныеАдресныеСведения.СоздатьНаборЗаписей().ВыгрузитьКолонки()))))))))))))))))))))))); - Результат.Индексы.Добавить("Тип, Значение"); - Возврат Результат; - КонецФункции -Функция СтрокаСлужебныхАдресныхСведений(Тип, Идентификатор, Ключ, Значение, СлужебныеАдресныеСведения) +Функция ДобавитьСтрокуАдресныхСведений(Тип, Идентификатор, Ключ, Значение, СлужебныеАдресныеСведения) Строка = СлужебныеАдресныеСведения.Добавить(); Строка.Тип = Тип; @@ -6409,48 +6491,39 @@ // Функция ТипыЧастейЗданияКЛАДР() - Результат = - СтрокаЧастейЗданияКЛАДР("ДОМ", "Дом", "ESTSTAT", - СтрокаЧастейЗданияКЛАДР("ВЛД", "Владение", "ESTSTAT", - СтрокаЧастейЗданияКЛАДР("ДВЛД", "Домовладение", "ESTSTAT", - СтрокаЧастейЗданияКЛАДР("КОРПУС", "Корпус", "", - СтрокаЧастейЗданияКЛАДР("К", "Корпус", "", - СтрокаЧастейЗданияКЛАДР("СТР", "Строение", "STRSTAT", - СтрокаЧастейЗданияКЛАДР("СТРОЕНИЕ", "Строение", "STRSTAT", - СтрокаЧастейЗданияКЛАДР("ЛИТЕРА", "Литера", "STRSTAT", - СтрокаЧастейЗданияКЛАДР("ЛИТЕР", "Литера", "STRSTAT", - СтрокаЧастейЗданияКЛАДР("СООРУЖЕНИЕ", "Сооружение", "STRSTAT", - СтрокаЧастейЗданияКЛАДР("УЧАСТОК", "Участок", "STRSTAT", - "Префикс, Идентификатор, ТипСтатуса, Длина"))))))))))); + ПрефиксыЗданий = Новый ТаблицаЗначений; + ПрефиксыЗданий.Колонки.Добавить("Префикс"); + ПрефиксыЗданий.Колонки.Добавить("Идентификатор"); + ПрефиксыЗданий.Колонки.Добавить("ТипСтатуса"); + ПрефиксыЗданий.Колонки.Добавить("Длина"); + ПрефиксыЗданий.Индексы.Добавить("Префикс, Идентификатор, ТипСтатуса, Длина"); + + ДобавитьПрефиксЗданияКЛАДР("ДОМ", "Дом", "ESTSTAT", ПрефиксыЗданий); + ДобавитьПрефиксЗданияКЛАДР("ВЛД", "Владение", "ESTSTAT", ПрефиксыЗданий); + ДобавитьПрефиксЗданияКЛАДР("ДВЛД", "Домовладение", "ESTSTAT", ПрефиксыЗданий); + ДобавитьПрефиксЗданияКЛАДР("КОРПУС", "Корпус", "", ПрефиксыЗданий); + ДобавитьПрефиксЗданияКЛАДР("К", "Корпус", "", ПрефиксыЗданий); + ДобавитьПрефиксЗданияКЛАДР("СТР", "Строение", "STRSTAT", ПрефиксыЗданий); + ДобавитьПрефиксЗданияКЛАДР("СТРОЕНИЕ", "Строение", "STRSTAT", ПрефиксыЗданий); + ДобавитьПрефиксЗданияКЛАДР("ЛИТЕРА", "Литера", "STRSTAT", ПрефиксыЗданий); + ДобавитьПрефиксЗданияКЛАДР("ЛИТЕР", "Литера", "STRSTAT", ПрефиксыЗданий); + ДобавитьПрефиксЗданияКЛАДР("СООРУЖЕНИЕ", "Сооружение", "STRSTAT", ПрефиксыЗданий); + ДобавитьПрефиксЗданияКЛАДР("УЧАСТОК", "Участок", "STRSTAT", ПрефиксыЗданий); - Результат.Сортировать("Длина УБЫВ, Префикс"); - Результат.Индексы.Добавить("Идентификатор"); + ПрефиксыЗданий.Сортировать("Длина УБЫВ, Префикс"); - Возврат Результат; + Возврат ПрефиксыЗданий; КонецФункции -Функция СтрокаЧастейЗданияКЛАДР(Префикс, Идентификатор, ТипСтатуса, Таблица) +Процедура ДобавитьПрефиксЗданияКЛАДР(Префикс, Идентификатор, ТипСтатуса, Таблица) - Если ТипЗнч(Таблица) = Тип("Строка") Тогда - // Список создаваемых колонок - Результат = Новый ТаблицаЗначений; - Для Каждого КлючЗначение Из Новый Структура(Таблица) Цикл - ИмяКолонки = КлючЗначение.Ключ; - Результат.Колонки.Добавить(ИмяКолонки); - Результат.Индексы.Добавить(ИмяКолонки); - КонецЦикла; - Иначе - Результат = Таблица; - КонецЕсли; - - Строка = Результат.Добавить(); + Строка = Таблица.Добавить(); Строка.Префикс = Префикс; Строка.Идентификатор = Идентификатор; Строка.ТипСтатуса = ТипСтатуса; Строка.Длина = СтрДлина(Префикс); - Возврат Результат; -КонецФункции +КонецПроцедуры // Расчет уровня ФИАС по набору кодов от младшего к старшим. // @@ -6884,7 +6957,7 @@ | |УПОРЯДОЧИТЬ ПО | ВЫБОР - | КОГДА ВсеДоступныеРегионы.КодСубъектаРФ ЕСТЬ NULL + | КОГДА ВсеДоступныеРегионы.КодСубъектаРФ ЕСТЬ NULL | ТОГДА Классификатор.КодСубъектаРФ | ИНАЧЕ ВсеДоступныеРегионы.КодСубъектаРФ | КОНЕЦ"); @@ -6939,7 +7012,6 @@ Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 | АдресныеОбъекты.КодСубъектаРФ КАК КодСубъектаРФ, - | АдресныеОбъекты.Сокращение КАК Сокращение, | ВЫБОР | КОГДА НЕ ЗагруженныеДанные.Идентификатор ЕСТЬ NULL | ТОГДА ИСТИНА @@ -6952,19 +7024,18 @@ | И АдресныеОбъекты.КодСубъектаРФ = ЗагруженныеДанные.КодСубъектаРФ |ГДЕ | АдресныеОбъекты.Наименование = &Наименование + | И АдресныеОбъекты.Сокращение = &Сокращение | И АдресныеОбъекты.Уровень = 1"; - + Запрос.УстановитьПараметр("Наименование", СведенияОРегионе.Наименование); + Запрос.УстановитьПараметр("Сокращение", СведенияОРегионе.Сокращение); РезультатЗапроса = Запрос.Выполнить().Выбрать(); - Пока РезультатЗапроса.Следующий() Цикл - Если СтрСравнить(СокрЛП(РезультатЗапроса.Сокращение), СокрЛП(СведенияОРегионе.Сокращение)) = 0 Тогда - Результат.Загружен = РезультатЗапроса.РегионЗагружен; - Результат.КодСубъектаРФ = РезультатЗапроса.КодСубъектаРФ; - Прервать; - КонецЕсли; - КонецЦикла; + Если РезультатЗапроса.Следующий() Тогда + Результат.Загружен = РезультатЗапроса.РегионЗагружен; + Результат.КодСубъектаРФ = РезультатЗапроса.КодСубъектаРФ; + КонецЕсли; Возврат Результат; @@ -6985,8 +7056,8 @@ // Извлекает список домов полученного из регистра сведения описания и добавляет их в список значений. // // Параметры: -// СтрокаСоСпискомДомов - Строка - описание списка домов из регистра сведения -// СтрокаПоиска - Строка - Строка отбора +// СтрокаСоСпискомДомов - Строка - описание списка домов из регистра сведения. +// СтрокаПоиска - Строка - Строка отбора. // ВариантыДомов - Список значений - Список домов. // Процедура ИзвлечьСписокДомов(СтрокаСоСпискомДомов, СтрокаПоиска, ВариантыДомов, ТочноеСовпадение) @@ -7005,7 +7076,7 @@ Если Строка = "H" Тогда - ОписаниеДома = Новый Структура("ДомЧислом, Дом, Корпус, Строение, ВидСтроения, ВидВладения, НазваниеВладения"); + ОписаниеДома = ОписаниеДома(); ОписаниеДома.ВидВладения = ТипЧисло.ПривестиЗначение(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 1)); ОписаниеДома.Дом = СокрЛП(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 2)); @@ -7051,7 +7122,7 @@ Позиция = Позиция + 1; КонецЦикла; - Для Каждого Интервал Из Интервалы Цикл + Для Каждого Интервал Из Интервалы Цикл ВидИнтервала = Интервал.Вид; Для НомерВладения = Интервал.Начало По Интервал.Конец Цикл @@ -7086,30 +7157,191 @@ КонецПроцедуры + +// Извлекает список домов полученного из регистра сведения описания и добавляет их в список значений. +// +// Параметры: +// СтрокаСоСпискомДомов - Строка - описание списка домов из регистра сведения. +// СтрокаПоиска - Строка - Строка отбора. +// ВариантыДомов - Список значений - Список домов. +// +Функция ИдентификаторДома(СтрокаСоСпискомДомов, СведенияОДоме) + + Если СтрДлина(СтрокаСоСпискомДомов) > 25 Тогда + Идентификатор = УникальныйИдентификаторИзСтроки64(Лев(СтрокаСоСпискомДомов, 25)); + Иначе + Возврат Неопределено; + КонецЕсли; + СтрокаСоСпискомДомов = Сред(СтрокаСоСпискомДомов, 25); + + ТипЧисло = Новый ОписаниеТипов("Число"); + СтрокаСоСпискомДомов = СтрЗаменить(СтрокаСоСпискомДомов, Символы.ПС, ""); + СтрокаСоСпискомДомов = СтрЗаменить(СтрокаСоСпискомДомов, Символы.Таб, Символы.ПС); + ЧислоСтрок = СтрЧислоСтрок(СтрокаСоСпискомДомов); + Позиция = 1; + Интервалы = Новый Массив; + + НаименованиеЗданийИСтроений = НаименованиеВладенийИСтроений(); + + Пока Позиция <= ЧислоСтрок Цикл + Строка = СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция); + + Если Строка = "h" ИЛИ Строка = "H" Тогда + + ОписаниеДома = ОписаниеДома(); + + ОписаниеДома.ВидВладения = ТипЧисло.ПривестиЗначение(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 1)); + ОписаниеДома.Дом = СокрЛП(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 2)); + ОписаниеДома.ДомЧислом = НомерДомаЧислом(ОписаниеДома.Дом); + ОписаниеДома.Корпус = СокрЛП(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 3)); + ОписаниеДома.ВидСтроения = ТипЧисло.ПривестиЗначение(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 4)); + ОписаниеДома.Строение = СокрЛП(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 5)); + ОписаниеДома.НазваниеВладения = СокрЛП(НаименованиеЗданийИСтроений.Владения.Получить(ОписаниеДома.ВидВладения)); + ОписаниеДома.НазваниеСтроения = СокрЛП(НаименованиеЗданийИСтроений.Строения.Получить(ОписаниеДома.ВидСтроения)); + + ПозицияУИД = СтрНайти(ОписаниеДома.Строение, "+"); + Если ПозицияУИД > 0 Тогда + Идентификатор = УникальныйИдентификаторИзСтроки64(Сред(ОписаниеДома.Строение, ПозицияУИД + 2, 25)); + ОписаниеДома.Строение = СокрЛП(Лев(ОписаниеДома.Строение, ПозицияУИД - 1)); + КонецЕсли; + + НомерДомаКорректный = Ложь; + НомерКорпусаКорректный = Ложь; + НомерСтроенияКорректный = Ложь; + + НомерДома = СведенияОДоме.Получить(ВРег(ОписаниеДома.НазваниеВладения)); + Если НомерДома <> Неопределено Тогда + НомерДомаКорректный = (СтрСравнить(НомерДома, ОписаниеДома.Дом) = 0); + ИначеЕсли НЕ ЗначениеЗаполнено(ОписаниеДома.Дом) ИЛИ ОписаниеДома.Дом = НСтр("ru = 'НЕТ'") Тогда + НомерДомаКорректный = Истина; + КонецЕсли; + + НомерКорпуса = СведенияОДоме.Получить("КОРПУС"); + Если НомерКорпуса <> Неопределено Тогда + НомерКорпусаКорректный = (СтрСравнить(НомерКорпуса, ОписаниеДома.Корпус) = 0); + ИначеЕсли НЕ ЗначениеЗаполнено(ОписаниеДома.Корпус) Тогда + НомерКорпусаКорректный = Истина; + КонецЕсли; + + НомерСтроения = СведенияОДоме.Получить(ВРег(ОписаниеДома.НазваниеСтроения)); + Если НомерСтроения <> Неопределено Тогда + НомерСтроенияКорректный = (СтрСравнить(НомерСтроения, ОписаниеДома.Строение) = 0); + ИначеЕсли НЕ ЗначениеЗаполнено(ОписаниеДома.Строение) Тогда + НомерСтроенияКорректный = Истина; + КонецЕсли; + + Если НомерСтроенияКорректный И НомерДомаКорректный И НомерКорпусаКорректный Тогда + Возврат Идентификатор; + КонецЕсли; + + Позиция = Позиция + 5; + + ИначеЕсли Строка = "i" ИЛИ Строка = "I" Тогда + + // Интервалы набираем для последующего добавления. + Интервал = Новый Структура; + Интервал.Вставить("Вид", ТипЧисло.ПривестиЗначение(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 1))); + Интервал.Вставить("Начало", ТипЧисло.ПривестиЗначение(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 2))); + Интервал.Вставить("Конец", ТипЧисло.ПривестиЗначение(СтрПолучитьСтроку(СтрокаСоСпискомДомов, Позиция + 3))); + Интервалы.Добавить(Интервал); + + Позиция = Позиция + 3; + КонецЕсли; + + Позиция = Позиция + 1; + КонецЦикла; + + Возврат Неопределено; + +КонецФункции + + +Функция ИзвлечьСписокДомовСервис1С(ИдентификаторРодитель, СтрокаПоиска, ВариантыДомов) + + Если НЕ ЗначениеЗаполнено(ИдентификаторРодитель) Тогда + Возврат ВариантыДомов; + КонецЕсли; + + НаименованиеЗданийИСтроений = НаименованиеВладенийИСтроений(); + + Сервис = АдресныйКлассификаторПовтИсп.СервисКлассификатора1С(); + КодЯзыка = ТекущийКодЛокализации(); + + Порция = Сервис.Autocomplete(ИдентификаторРодитель, 0, НСтр("ru = 'ДОМ='") + СтрокаПоиска, 2000, КодЯзыка, Метаданные.Имя); + + Список = Порция.ПолучитьСписок("Item"); + Для Каждого Строка Из Список Цикл + + МассивДомов = СтрРазделить(Строка.Presentation, ","); + ОписаниеДома = ОписаниеДома(); + + Для каждого Дом Из МассивДомов Цикл + КлючЗначение = СтрРазделить(Дом, "="); + ТипАдресногоОбъекта = ВРег(КлючЗначение[0]); + Если ТипАдресногоОбъекта = НСтр("ru = 'ДОМ'") + ИЛИ ТипАдресногоОбъекта = НСтр("ru = 'ВЛАДЕНИЕ'") + ИЛИ ТипАдресногоОбъекта = НСтр("ru = 'ДОМОВЛАДЕНИЕ'") Тогда + ОписаниеДома.Дом = СокрЛП(КлючЗначение[1]); + ОписаниеДома.ДомЧислом = НомерДомаЧислом(КлючЗначение[1]); + ОписаниеДома.НазваниеВладения = ТРег(ТипАдресногоОбъекта); + ИначеЕсли ТипАдресногоОбъекта = "КОРПУС" Тогда + ОписаниеДома.Корпус = СокрЛП(КлючЗначение[1]); + ИначеЕсли ТипАдресногоОбъекта <> "ИНДЕКС" Тогда + ОписаниеДома.Строение = СокрЛП(КлючЗначение[1]); + ОписаниеДома.НазваниеСтроения = НРег(ТипАдресногоОбъекта); + КонецЕсли; + КонецЦикла; + + ДобавитьИнформациюОДоме(ВариантыДомов, ОписаниеДома, НаименованиеЗданийИСтроений, СтрокаПоиска); + КонецЦикла; + + Возврат ВариантыДомов; +КонецФункции + +Функция ОписаниеДома() + ОписаниеДома = Новый Структура("ДомЧислом, Дом, Корпус, Строение, ВидСтроения, ВидВладения, НазваниеВладения, НазваниеСтроения"); + ОписаниеДома.ВидВладения = 0; + ОписаниеДома.ВидСтроения = 0; + ОписаниеДома.НазваниеСтроения = ""; + Возврат ОписаниеДома; +КонецФункции + Процедура ДобавитьИнформациюОДоме(ВариантыДомов, ОписаниеДома, НаименованиеЗданийИСтроений, СтрокаПоиска = "") НомерДомаИСтроения = Новый Структура(); НомерДомаИСтроения.Вставить("Дом", Новый Структура("ВидВладения, НомерВладения", ОписаниеДома.НазваниеВладения, ОписаниеДома.Дом)); - ТекстДом = Новый ФорматированнаяСтрока(ОписаниеДома.НазваниеВладения + " ", - Новый ФорматированнаяСтрока(СтрокаПоиска, Новый Шрифт(,, Истина) , ЦветаСтиля.РезультатУспехЦвет), - Сред(ОписаниеДома.Дом, СтрДлина(СтрокаПоиска) + 1)); + Если ЗначениеЗаполнено(ОписаниеДома.Дом) Тогда + ТекстПроДом = Новый ФорматированнаяСтрока(ОписаниеДома.НазваниеВладения + " ", + Новый ФорматированнаяСтрока(СтрокаПоиска, Новый Шрифт(,, Истина) , ЦветаСтиля.РезультатУспехЦвет), + Сред(ОписаниеДома.Дом, СтрДлина(СтрокаПоиска) + 1)); + Иначе + ТекстПроДом = ""; + КонецЕсли; - ТекстПроДом = ""; Если ЗначениеЗаполнено(ОписаниеДома.Корпус) Тогда - ТекстПроДом = ТекстПроДом + ", "+ НСтр("ru = 'корпус'") + " " + ОписаниеДома.Корпус; + ТекстПроСтроения = НСтр("ru = 'корпус'") + " " + ОписаниеДома.Корпус; НомерДомаИСтроения.Вставить("Корпус", Новый Структура("ВидКорпуса, НомерКорпуса", "Корпус", ОписаниеДома.Корпус)); + Иначе + ТекстПроСтроения = ""; КонецЕсли; Если ЗначениеЗаполнено(ОписаниеДома.Строение) Тогда - НазваниеСтроения = НРег(НаименованиеЗданийИСтроений.Строения.Получить(ОписаниеДома.ВидСтроения)); - - ТекстПроДом = ТекстПроДом + ", " + НазваниеСтроения + " " + СокрЛП(ОписаниеДома.Строение); + НазваниеСтроения = ?(ПустаяСтрока(ОписаниеДома.НазваниеСтроения), + НРег(НаименованиеЗданийИСтроений.Строения.Получить(ОписаниеДома.ВидСтроения)), ОписаниеДома.НазваниеСтроения); + + Разделитель = ?(ПустаяСтрока(ТекстПроСтроения), "", ", "); + ТекстПроСтроения = ТекстПроСтроения + Разделитель + НазваниеСтроения + " " + СокрЛП(ОписаниеДома.Строение); НомерДомаИСтроения.Вставить("Строение", Новый Структура("ВидСтроения, НомерСтроения", НазваниеСтроения, ОписаниеДома.Строение)); КонецЕсли; - ТекстПроДомФормат = Новый ФорматированнаяСтрока(ТекстДом, ТекстПроДом); + Если ЗначениеЗаполнено(ТекстПроДом) Тогда + Разделитель = ?(ПустаяСтрока(ТекстПроСтроения), "", ", "); + ТекстПроДомФормат = Новый ФорматированнаяСтрока(ТекстПроДом, Разделитель + ТекстПроСтроения); + Иначе + ТекстПроДомФормат = ТекстПроСтроения; + КонецЕсли; ИнформацияОДоме = ВариантыДомов.Добавить(); ЗаполнитьЗначенияСвойств(ИнформацияОДоме, ОписаниеДома); @@ -7135,7 +7367,7 @@ Возврат ?(ПустаяСтрока(ИтоговаяСтрока), 0, Число(ИтоговаяСтрока)); КонецФункции -// Информация о наименование владений и строений +// Информация о наименование владений и строений. // Функция НаименованиеВладенийИСтроений() @@ -7194,6 +7426,8 @@ // Процедура ОчиститьУстаревшиеАдресныеСведенияКЛАДР(Параметры, АдресРезультата) Экспорт + УстановитьПривилегированныйРежим(Истина); + Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 | УдалитьАдресныйКлассификатор.Код @@ -7220,7 +7454,7 @@ Процедура ЗагрузитьКлассификаторАдресовССайта(КодыСубъектовРФ = Неопределено, ИсходнаяАвторизация = Неопределено) Если ИсходнаяАвторизация = Неопределено Тогда - Авторизация = СтандартныеПодсистемыСервер.ПараметрыАутентификацииНаСайте(); + Авторизация = ПараметрыАутентификацииНаСайте(); Иначе Авторизация = ИсходнаяАвторизация; КонецЕсли; @@ -7256,6 +7490,7 @@ ПутьДляСохранения = ВременныйКаталог + ВРег(ФайлРегиона.ИмяФайла); ПараметрыПолучения.Вставить("ПутьДляСохранения", ПутьДляСохранения); + ПараметрыПолучения.Вставить("Таймаут", 180); ЗагруженныйФайл = ПолучениеФайловИзИнтернета.СкачатьФайлНаСервере(ОписаниеРегиона.Адрес, ПараметрыПолучения); Если Не ЗагруженныйФайл.Статус Тогда УдалитьВременныйФайл(ВременныйКаталог); @@ -7377,7 +7612,7 @@ // * Загружено - Булево - Флаг того, что данные хоть раз загружались. // * ДатаОбновления - Дата - Дата обновления адресных сведений. // -Функция ДоступныеВерсииАдресныхСведений(АдресВоВременномХранилище = Неопределено) Экспорт +Функция ДоступныеВерсииАдресныхСведений(ПараметрыВыгрузки = Неопределено, АдресВоВременномХранилище = Неопределено) Экспорт Результат = Новый ТаблицаЗначений; @@ -7400,11 +7635,12 @@ Результат.Индексы.Добавить("КодСубъектаРФ"); АдресОписания = АдресИнтернетаВключаяПорт( АдресФайлаОписанияДоступныхВерсий() ); - РезультатПолученияФайла = ПолучениеФайловИзИнтернета.СкачатьФайлНаСервере(АдресОписания.Адрес); + ПараметрыПолучения = Новый Структура("Таймаут", 180); + РезультатПолученияФайла = ПолучениеФайловИзИнтернета.СкачатьФайлНаСервере(АдресОписания.Адрес, ПараметрыПолучения); Если Не РезультатПолученияФайла.Статус Тогда Возврат Результат; КонецЕсли; - РезультатПолученияФайла = ПолучениеФайловИзИнтернета.СкачатьФайлНаСервере(АдресОписания.Адрес); + РезультатПолученияФайла = ПолучениеФайловИзИнтернета.СкачатьФайлНаСервере(АдресОписания.Адрес, ПараметрыПолучения); // Получен zip, внутри которого xml. КаталогДляРаспаковки = ПолучитьИмяВременногоФайла(); @@ -7458,8 +7694,8 @@ СтрокаРегиона.ДатаОбновления = ДатаПоследнейВерсии; Если ЗначениеЗаполнено(ТекущийСубъект.ДатаВерсии) Тогда - СтрокаРегиона.ДоступноОбновление = ТекущийСубъект = Неопределено // Новый регион - Или ТекущийСубъект.ДатаВерсии < ДатаПоследнейВерсии // Обновленный регион + СтрокаРегиона.ДоступноОбновление = ТекущийСубъект = Неопределено // Новый регион + Или ТекущийСубъект.ДатаВерсии < ДатаПоследнейВерсии // Обновленный регион Или (ТекущийСубъект.КодСубъектаРФ <> ЗаписьРегиона.REGIONCODE);// Обновленные данные существующего субъекта. КонецЕсли; КонецЦикла; @@ -7474,72 +7710,6 @@ Возврат Результат; КонецФункции -// Возвращает описание последней загрузки классификатора. -// -// Возвращаемое значение: -// Структура - содержит поля: -// * ДатаПоследнейЗагрузки - Дата - Дата последней загрузки (часовой пояс сеанса). -// * УниверсальнаяДатаПоследнейЗагрузки - Дата - Дата последней загрузки (UTC). -// * ДнейНазад - Число - Количество дней от последней загрузки. -// * Представление - Строка - Описание, например "Адресный классификатор был загружен -// сегодня."; -// * НеобходимоОбновление - Булево - Истина, если количество дней от последней загрузки превышает -// период актуальности. -// -Функция ОписаниеПоследнейЗагрузки() - - Результат = Новый Структура("ДнейНазад, ДатаПоследнейЗагрузки, УниверсальнаяДатаПоследнейЗагрузки, Представление, НеобходимоОбновление"); - - // Определяем дату последней загрузки. - Запрос = Новый Запрос(" - |ВЫБРАТЬ ПЕРВЫЕ 1 - | ДатаЗагрузки КАК ДатаЗагрузки - |ИЗ - | РегистрСведений.ЗагруженныеВерсииАдресныхСведений - |УПОРЯДОЧИТЬ ПО - | ДатаЗагрузки УБЫВ - |"); - Выборка = Запрос.Выполнить().Выбрать(); - Если Выборка.Следующий() Тогда - ДатаПоследнейЗагрузки = Выборка.ДатаЗагрузки; - Иначе - ДатаПоследнейЗагрузки = '00000000'; - КонецЕсли; - - Если ДатаПоследнейЗагрузки = '00000000' Тогда - Результат.НеобходимоОбновление = Ложь; - Результат.Представление = НСтр("ru = 'Адресный классификатор еще не загружался.'"); - Возврат Результат; - КонецЕсли; - - Результат.УниверсальнаяДатаПоследнейЗагрузки = ДатаПоследнейЗагрузки; - Результат.ДатаПоследнейЗагрузки = МестноеВремя(ДатаПоследнейЗагрузки, ЧасовойПоясСеанса()); - - НачалоПериода = НачалоДня(ТекущаяУниверсальнаяДата()); - КонецПериода = НачалоДня(ДатаПоследнейЗагрузки); - ДнейРазницы = Цел( (НачалоПериода - КонецПериода) / 86400 ); - - Если ДнейРазницы = 0 Тогда - Представление = НСтр("ru = 'Адресный классификатор был загружен сегодня.'"); - - ИначеЕсли ДнейРазницы = 1 Тогда - Представление = НСтр("ru = 'Адресный классификатор был загружен вчера.'"); - - ИначеЕсли ДнейРазницы = 2 Тогда - Представление = НСтр("ru = 'Адресный классификатор был загружен позавчера.'"); - - Иначе - Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Адресный классификатор был загружен %1 назад.'"), - ОбщегоНазначения.ИнтервалВремениСтрокой(КонецПериода, НачалоПериода)); - КонецЕсли; - - Результат.НеобходимоОбновление = ДнейРазницы > 30; - Результат.ДнейНазад = ДнейРазницы; - Результат.Представление = Представление; - - Возврат Результат; -КонецФункции - // Возвращает настройку текущего источника данных адресов. // // Возвращаемое значение: @@ -7601,8 +7771,21 @@ Возврат Результат; КонецФункции +// Возвращает признак того, является ли строка данных контактной информации XML данными. +// +// Параметры: +// Текст - Строка - Проверяемая строка. +// +// Возвращаемое значение: +// Булево - результат проверки. +// +Функция ЭтоКонтактнаяИнформацияВXML(Знач Текст) + + Возврат ТипЗнч(Текст) = Тип("Строка") И СтрНачинаетсяС(СокрЛ(Текст), "<"); + +КонецФункции -// Вычитываем информацию о адресных сокращениях +// Вычитываем информацию о адресных сокращениях. // Функция АдресныеСокращения(КаталогФайлов) @@ -7647,6 +7830,7 @@ ТекущаяЗапись = Неопределено; Пока СледующаяЗаписьФайлаЗагрузкиСубъектаРФ(ФайлЗагрузки, ТекущаяЗапись)Цикл Запись = Набор.Добавить(); + Запись.КодСубъектаРФ = ТекущаяЗапись.REGIONCODE; Запись.КодОкруга = ТекущаяЗапись.AUTOCODE; Запись.КодРайона = ТекущаяЗапись.AREACODE; @@ -7660,11 +7844,10 @@ Запись.Идентификатор = УникальныйИдентификаторИзДвоичныхДанных(ТекущаяЗапись.AOGUID); Запись.ПочтовыйИндекс = ТекущаяЗапись.POSTALCODE; Запись.Наименование = ТекущаяЗапись.FORMALNAME; - Запись.Сокращение = СокрЛП(ТекущаяЗапись.SHORTNAME); + Запись.Сокращение = ТекущаяЗапись.SHORTNAME; Запись.Дополнительно = УникальныйИдентификаторИзДвоичныхДанных(ТекущаяЗапись.EXTRAGUID); Запись.КодКЛАДР = ТекущаяЗапись.CODE; Запись.Актуален = ?(ТекущаяЗапись.CURRSTATUS = 0, Истина, Ложь); - КонецЦикла; ОбновлениеИнформационнойБазы.ЗаписатьДанные(Набор); @@ -7674,12 +7857,100 @@ Процедура ЗагрузитьДомаЗданияСтроения(КодСубъектаРФ, КаталогФайлов, ВидыСведений) + ФайлЗагрузки = ФайлЗагрузкиСубъектаРФ(КодСубъектаРФ, КаталогФайлов, "HOUSE", "Houses"); + СистемнаяИнформация = Новый СистемнаяИнформация; + + Если ФайлЗагрузки.РазмерФайла > 10485760 И СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86 Тогда + ЗагрузитьДомаЗданияСтроенияПорциями(КодСубъектаРФ, ФайлЗагрузки); + Иначе + ЗагрузитьДомаЗданияСтроенияОднимНабором(КодСубъектаРФ, ФайлЗагрузки); + КонецЕсли; + +КонецПроцедуры + +Процедура ЗагрузитьДомаЗданияСтроенияПорциями(КодСубъектаРФ, ФайлЗагрузки) + + Перем ВременнаяТаблица, Запись, Индекс, Индексы, КлючевыеКолонки, Набор, НайденныеСтроки, НоваяСтрока, ОписаниеЗданийXDTO, Отбор, Сжатие, Строка, Таблица, ТекущаяЗапись, ТипXMLСтрока, Фильтр; + + ВременнаяТаблица = Новый ТаблицаЗначений; + ВременнаяТаблица.Колонки.Добавить("КодСубъектаРФ", Новый ОписаниеТипов("Число")); + ВременнаяТаблица.Колонки.Добавить("АдресныйОбъект", Новый ОписаниеТипов("УникальныйИдентификатор")); + ВременнаяТаблица.Колонки.Добавить("ПочтовыйИндекс", Новый ОписаниеТипов("Число")); + ВременнаяТаблица.Колонки.Добавить("Строения"); + ВременнаяТаблица.Индексы.Добавить("ПочтовыйИндекс"); + + Индексы = Новый Соответствие; + + Сжатие = Новый СжатиеДанных(9); + ТипXMLСтрока = ФабрикаXDTO.Тип("http://www.w3.org/2001/XMLSchema", "string"); + + Набор = РегистрыСведений.ДомаЗданияСтроения.СоздатьНаборЗаписей(); + Набор.Отбор.КодСубъектаРФ.Установить(КодСубъектаРФ); + + КлючевыеКолонки = "КодСубъектаРФ, АдресныйОбъект, ПочтовыйИндекс"; + Таблица = Набор.ВыгрузитьКолонки(КлючевыеКолонки); + Таблица.Индексы.Добавить(КлючевыеКолонки); + Фильтр = Новый Структура(КлючевыеКолонки); + + ТекущаяЗапись = Неопределено; + Пока СледующаяЗаписьФайлаЗагрузкиСубъектаРФ(ФайлЗагрузки, ТекущаяЗапись) Цикл + + Фильтр.КодСубъектаРФ = КодСубъектаРФ; + Фильтр.АдресныйОбъект = УникальныйИдентификаторИзДвоичныхДанных(ТекущаяЗапись.AOGUID); + Фильтр.ПочтовыйИндекс = ТекущаяЗапись.POSTALCODE; + Если Таблица.НайтиСтроки(Фильтр).Количество() > 0 Тогда + Продолжить; + КонецЕсли; + + Индексы.Вставить(ТекущаяЗапись.POSTALCODE, Истина); + + НоваяСтрока = ВременнаяТаблица.Добавить(); + НоваяСтрока.КодСубъектаРФ = КодСубъектаРФ; + НоваяСтрока.АдресныйОбъект = УникальныйИдентификаторИзДвоичныхДанных(ТекущаяЗапись.AOGUID); + НоваяСтрока.ПочтовыйИндекс = ТекущаяЗапись.POSTALCODE; + + ОписаниеЗданийXDTO = ТекущаяЗапись.ПолучитьXDTO("BUILDINGS"); + НоваяСтрока.Строения = Новый ХранилищеЗначения(ОписаниеЗданийXDTO.ЛексическоеЗначение, Сжатие); + + ЗаполнитьЗначенияСвойств(Таблица.Добавить(), НоваяСтрока); + КонецЦикла; + ЗакрытьФайлЗагрузкиСубъектаРФ(ФайлЗагрузки); + ФайлЗагрузки = Неопределено; + + Таблица = Неопределено; + + Для каждого Индекс Из Индексы Цикл + + Отбор = Новый Структура("ПочтовыйИндекс", Индекс.Ключ); + НайденныеСтроки = ВременнаяТаблица.НайтиСтроки(Отбор); + + Набор = РегистрыСведений.ДомаЗданияСтроения.СоздатьНаборЗаписей(); + Набор.Отбор.КодСубъектаРФ.Установить(КодСубъектаРФ); + Набор.Отбор.ПочтовыйИндекс.Установить(Индекс.Ключ); + + Для каждого Строка Из НайденныеСтроки Цикл + + Запись = Набор.Добавить(); + Запись.КодСубъектаРФ = КодСубъектаРФ; + Запись.АдресныйОбъект = Строка.АдресныйОбъект; + Запись.ПочтовыйИндекс = Строка.ПочтовыйИндекс; + Запись.Строения = Строка.Строения; + + КонецЦикла; + + ОбновлениеИнформационнойБазы.ЗаписатьДанные(Набор); + Набор = Неопределено; + КонецЦикла; + +КонецПроцедуры + +Процедура ЗагрузитьДомаЗданияСтроенияОднимНабором(КодСубъектаРФ, ФайлЗагрузки) + Сжатие = Новый СжатиеДанных(9); ТипXMLСтрока = ФабрикаXDTO.Тип("http://www.w3.org/2001/XMLSchema", "string"); Набор = РегистрыСведений.ДомаЗданияСтроения.СоздатьНаборЗаписей(); Набор.Отбор.КодСубъектаРФ.Установить(КодСубъектаРФ); - ФайлЗагрузки = ФайлЗагрузкиСубъектаРФ(КодСубъектаРФ, КаталогФайлов, "HOUSE", "Houses"); КлючевыеКолонки = "КодСубъектаРФ, АдресныйОбъект, ПочтовыйИндекс"; Таблица = Набор.ВыгрузитьКолонки(КлючевыеКолонки); @@ -7740,9 +8011,108 @@ Процедура ЗагрузитьИсториюАдресныхОбъектов(КодСубъектаРФ, КаталогФайлов, ВидыСведений) + ФайлЗагрузки = ФайлЗагрузкиСубъектаРФ(КодСубъектаРФ, КаталогФайлов, "ARCHOBJ", "ArchiveObjects"); + СистемнаяИнформация = Новый СистемнаяИнформация; + + Если ФайлЗагрузки.РазмерФайла > 10485760 И СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86 Тогда + ЗагрузитьИсториюАдресныхОбъектовПорциями(КодСубъектаРФ, ФайлЗагрузки); + Иначе + ЗагрузитьИсториюАдресныхОбъектовОднимНабором(КодСубъектаРФ, ФайлЗагрузки); + КонецЕсли; + +КонецПроцедуры + +Процедура ЗагрузитьИсториюАдресныхОбъектовПорциями(КодСубъектаРФ, ФайлЗагрузки) + + Перем ВременнаяТаблица, Запись, Набор, НайденныеСтроки, НоваяСтрока, Отбор, Строка, ТекущаяЗапись, Уровень, Уровни; + + ВременнаяТаблица = Новый ТаблицаЗначений; + ВременнаяТаблица.Колонки.Добавить("Уровень", ОбщегоНазначения.ОписаниеТипаЧисло(2)); + ВременнаяТаблица.Колонки.Добавить("КодСубъектаРФ", ОбщегоНазначения.ОписаниеТипаЧисло(2)); + ВременнаяТаблица.Колонки.Добавить("КодОкруга", ОбщегоНазначения.ОписаниеТипаЧисло(1)); + ВременнаяТаблица.Колонки.Добавить("КодРайона", ОбщегоНазначения.ОписаниеТипаЧисло(3)); + ВременнаяТаблица.Колонки.Добавить("КодГорода", ОбщегоНазначения.ОписаниеТипаЧисло(3)); + ВременнаяТаблица.Колонки.Добавить("КодВнутригородскогоРайона", ОбщегоНазначения.ОписаниеТипаЧисло(3)); + ВременнаяТаблица.Колонки.Добавить("КодНаселенногоПункта", ОбщегоНазначения.ОписаниеТипаЧисло(3)); + ВременнаяТаблица.Колонки.Добавить("КодУлицы", ОбщегоНазначения.ОписаниеТипаЧисло(4)); + ВременнаяТаблица.Колонки.Добавить("КодДополнительногоЭлемента", ОбщегоНазначения.ОписаниеТипаЧисло(4)); + ВременнаяТаблица.Колонки.Добавить("КодПодчиненногоЭлемента", ОбщегоНазначения.ОписаниеТипаЧисло(3)); + ВременнаяТаблица.Колонки.Добавить("ТекущийКодСубъектаРФ", ОбщегоНазначения.ОписаниеТипаЧисло(2)); + + ВременнаяТаблица.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("УникальныйИдентификатор")); + + ВременнаяТаблица.Колонки.Добавить("ПочтовыйИндекс", Новый ОписаниеТипов("Число")); + ВременнаяТаблица.Колонки.Добавить("Наименование", ОбщегоНазначения.ОписаниеТипаСтрока(120)); + ВременнаяТаблица.Колонки.Добавить("Сокращение", ОбщегоНазначения.ОписаниеТипаСтрока(10)); + ВременнаяТаблица.Колонки.Добавить("Дополнительно", Новый ОписаниеТипов("УникальныйИдентификатор")); + ВременнаяТаблица.Колонки.Добавить("КодКЛАДР", ОбщегоНазначения.ОписаниеТипаЧисло(17)); + ВременнаяТаблица.Колонки.Добавить("АдресныйОбъект", Новый ОписаниеТипов("УникальныйИдентификатор")); + ВременнаяТаблица.Колонки.Добавить("НачалоДействияЗаписи", ОбщегоНазначения.ОписаниеТипаДата(ЧастиДаты.ДатаВремя)); + ВременнаяТаблица.Колонки.Добавить("ОкончаниеДействияЗаписи", ОбщегоНазначения.ОписаниеТипаДата(ЧастиДаты.ДатаВремя)); + ВременнаяТаблица.Колонки.Добавить("Операция", ОбщегоНазначения.ОписаниеТипаЧисло(2)); + + ВременнаяТаблица.Индексы.Добавить("КодРайона"); + + КодыРайонов = Новый Соответствие; + + ТекущаяЗапись = Неопределено; + Пока СледующаяЗаписьФайлаЗагрузкиСубъектаРФ(ФайлЗагрузки, ТекущаяЗапись) Цикл + + НоваяСтрока = ВременнаяТаблица.Добавить(); + + НоваяСтрока.Уровень = ТекущаяЗапись.AOLEVEL; + НоваяСтрока.КодСубъектаРФ = ТекущаяЗапись.REGIONCODE; + НоваяСтрока.КодОкруга = ТекущаяЗапись.AUTOCODE; + НоваяСтрока.КодРайона = ТекущаяЗапись.AREACODE; + НоваяСтрока.КодГорода = ТекущаяЗапись.CITYCODE; + НоваяСтрока.КодВнутригородскогоРайона = ТекущаяЗапись.CTARCODE; + НоваяСтрока.КодНаселенногоПункта = ТекущаяЗапись.PLACECODE; + НоваяСтрока.КодУлицы = ТекущаяЗапись.STREETCODE; + НоваяСтрока.КодДополнительногоЭлемента = ТекущаяЗапись.EXTRCODE; + НоваяСтрока.КодПодчиненногоЭлемента = ТекущаяЗапись.SEXTCODE; + НоваяСтрока.Идентификатор = УникальныйИдентификаторИзДвоичныхДанных(ТекущаяЗапись.AOID); + НоваяСтрока.ТекущийКодСубъектаРФ = КодСубъектаРФ; + + НоваяСтрока.ПочтовыйИндекс = ТекущаяЗапись.POSTALCODE; + НоваяСтрока.Наименование = ТекущаяЗапись.FORMALNAME; + НоваяСтрока.Сокращение = ТекущаяЗапись.SHORTNAME; + НоваяСтрока.Дополнительно = УникальныйИдентификаторИзДвоичныхДанных(ТекущаяЗапись.EXTRAGUID); + НоваяСтрока.КодКЛАДР = ТекущаяЗапись.CODE; + НоваяСтрока.АдресныйОбъект = УникальныйИдентификаторИзДвоичныхДанных(ТекущаяЗапись.AOGUID); + НоваяСтрока.НачалоДействияЗаписи = ТекущаяЗапись.STARTDATE; + НоваяСтрока.ОкончаниеДействияЗаписи = ТекущаяЗапись.ENDDATE; + НоваяСтрока.Операция = ТекущаяЗапись.OPERSTATUS; + + КодыРайонов.Вставить(НоваяСтрока.КодРайона, Истина); + ТекущаяЗапись = Неопределено; + КонецЦикла; + + ЗакрытьФайлЗагрузкиСубъектаРФ(ФайлЗагрузки); + + ФайлЗагрузки = Неопределено; + + Для каждого КодРайона Из КодыРайонов Цикл + Отбор = Новый Структура("КодРайона", КодРайона.Ключ); + НайденныеСтроки = ВременнаяТаблица.НайтиСтроки(Отбор); + Набор = РегистрыСведений.ИсторияАдресныхОбъектов.СоздатьНаборЗаписей(); + Набор.Отбор.КодСубъектаРФ.Установить(КодСубъектаРФ); + Набор.Отбор.КодРайона.Установить(КодРайона.Ключ); + + Для каждого Строка Из НайденныеСтроки Цикл + Запись = Набор.Добавить(); + ЗаполнитьЗначенияСвойств(Запись, Строка); + КонецЦикла; + ОбновлениеИнформационнойБазы.ЗаписатьДанные(Набор); + Набор = Неопределено; + НайденныеСтроки = Неопределено; + КонецЦикла; + +КонецПроцедуры + +Процедура ЗагрузитьИсториюАдресныхОбъектовОднимНабором(Знач КодСубъектаРФ, Знач ФайлЗагрузки) + Набор = РегистрыСведений.ИсторияАдресныхОбъектов.СоздатьНаборЗаписей(); Набор.Отбор.КодСубъектаРФ.Установить(КодСубъектаРФ); - ФайлЗагрузки = ФайлЗагрузкиСубъектаРФ(КодСубъектаРФ, КаталогФайлов, "ARCHOBJ", "ArchiveObjects"); ТекущаяЗапись = Неопределено; Пока СледующаяЗаписьФайлаЗагрузкиСубъектаРФ(ФайлЗагрузки, ТекущаяЗапись) Цикл @@ -7966,6 +8336,8 @@ Процедура ОчиститьСведенияУстаревшегоКлассификатора(КодСубъектаРФ) + УстановитьПривилегированныйРежим(Истина); + Запрос = Новый Запрос(" |ВЫБРАТЬ ПЕРВЫЕ 1 | ТипАдресногоЭлемента, @@ -8080,6 +8452,9 @@ Результат.Вставить("КодСубъектаРФ", КодСубъектаРФ); Результат.Вставить("КлючВида", КлючВида); + УказательНаФайл = Новый Файл(Результат.ПолноеИмя); + Результат.Вставить("РазмерФайла", УказательНаФайл.Размер()); + Возврат Результат; КонецФункции diff --git a/SSL/src/CommonModules/Анкетирование/Module.bsl b/SSL/src/CommonModules/Анкетирование/Module.bsl index a464d044d..8426c468c 100644 --- a/SSL/src/CommonModules/Анкетирование/Module.bsl +++ b/SSL/src/CommonModules/Анкетирование/Module.bsl @@ -46,11 +46,9 @@ // См. одноименную процедуру в общем модуле ПользователиПереопределяемый. Процедура ПриОпределенииНазначенияРолей(НазначениеРолей) Экспорт - // ТолькоДляВнешнихПользователей. - НазначениеРолей.ТолькоДляВнешнихПользователей.Добавить( - Метаданные.Роли.ДобавлениеИзменениеОтветовНаВопросыАнкет.Имя); - // СовместноДляПользователейИВнешнихПользователей. + НазначениеРолей.СовместноДляПользователейИВнешнихПользователей.Добавить( + Метаданные.Роли.ДобавлениеИзменениеОтветовНаВопросыАнкет.Имя); НазначениеРолей.СовместноДляПользователейИВнешнихПользователей.Добавить( Метаданные.Роли.ЧтениеОтветовНаВопросыАнкет.Имя); @@ -72,6 +70,42 @@ Обработчик.Версия = "2.1.2.7"; Обработчик.Процедура = "Анкетирование.ИнвертироватьПризнакВключенияВАрхивАнкет"; + Обработчик = Обработчики.Добавить(); + Обработчик.Версия = "2.3.5.6"; + Обработчик.Идентификатор = Новый УникальныйИдентификатор("cfda47d2-f61f-4c23-84a6-80c77b52e6e5"); + Обработчик.Процедура = "Документы.Анкета.ОбработатьДанныеДляПереходаНаНовуюВерсию"; + Обработчик.Комментарий = НСтр("ru = 'Заполнение значения нового реквизита ""Режим анкетирования"" у документов ""Анкета"" прошлых периодов. + |До завершения обработки ""Режим анкетирования"" данных документов будет отображаться некорректно.'"); + Обработчик.РежимВыполнения = "Отложенно"; + Обработчик.ОчередьОтложеннойОбработки = 1; + Обработчик.ПроцедураЗаполненияДанныхОбновления = "Документы.Анкета.ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию"; + Обработчик.ЧитаемыеОбъекты = "Документ.Анкета"; + Обработчик.ИзменяемыеОбъекты = "Документ.Анкета"; + + Обработчик = Обработчики.Добавить(); + Обработчик.Версия = "2.3.5.6"; + Обработчик.Идентификатор = Новый УникальныйИдентификатор("1fdb0962-f814-463a-b560-48ea3d51be27"); + Обработчик.Процедура = "Справочники.ВопросыШаблонаАнкеты.ОбработатьДанныеДляПереходаНаНовуюВерсию"; + Обработчик.Комментарий = НСтр("ru = 'Заполнение значения нового реквизита ""Способ отображения подсказки"" в справочнике ""Вопросы шаблона анкеты"". + |До завершения обработки ""Способ отображения подсказки"" в данном справочнике будет отображаться некорректно.'"); + Обработчик.РежимВыполнения = "Отложенно"; + Обработчик.ОчередьОтложеннойОбработки = 1; + Обработчик.ПроцедураЗаполненияДанныхОбновления = "Справочники.ВопросыШаблонаАнкеты.ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию"; + Обработчик.ЧитаемыеОбъекты = "Справочник.ВопросыШаблонаАнкеты"; + Обработчик.ИзменяемыеОбъекты = "Справочник.ВопросыШаблонаАнкеты"; + + Обработчик = Обработчики.Добавить(); + Обработчик.Версия = "2.3.5.6"; + Обработчик.Идентификатор = Новый УникальныйИдентификатор("a1581723-c1f5-4b90-b716-a180a4d5a4ad"); + Обработчик.Процедура = "ПланыВидовХарактеристик.ВопросыДляАнкетирования.ОбработатьДанныеДляПереходаНаНовуюВерсию"; + Обработчик.Комментарий = НСтр("ru = 'Заполнение значения нового реквизита ""Вид переключателя"" плана видов характеристик ""Вопросы для анкетирования"". + |До завершения обработки ""Вид переключателя"" в данном плане видов характеристик будет отображаться некорректно.'"); + Обработчик.РежимВыполнения = "Отложенно"; + Обработчик.ОчередьОтложеннойОбработки = 1; + Обработчик.ПроцедураЗаполненияДанныхОбновления = "ПланыВидовХарактеристик.ВопросыДляАнкетирования.ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию"; + Обработчик.ЧитаемыеОбъекты = "ПланВидовХарактеристик.ВопросыДляАнкетирования"; + Обработчик.ИзменяемыеОбъекты = "ПланВидовХарактеристик.ВопросыДляАнкетирования"; + КонецПроцедуры // Содержит настройки размещения вариантов отчетов в панели отчетов. @@ -385,10 +419,13 @@ КонецЕсли; КонецЕсли; - НоваяСтрока.ВопросШаблона = Выборка.ВопросШаблона; - НоваяСтрока.КодКартинки = АнкетированиеКлиентСервер.ПолучитьКодКартинкиШаблонаАнкеты(Выборка.ЭтоРаздел,Выборка.ТипВопроса); - НоваяСтрока.ТипВопроса = Выборка.ТипВопроса; - НоваяСтрока.ТипТабличногоВопроса = Выборка.ТипТабличногоВопроса; + НоваяСтрока.ВопросШаблона = Выборка.ВопросШаблона; + НоваяСтрока.КодКартинки = АнкетированиеКлиентСервер.ПолучитьКодКартинкиШаблонаАнкеты(Выборка.ЭтоРаздел,Выборка.ТипВопроса); + НоваяСтрока.ТипВопроса = Выборка.ТипВопроса; + НоваяСтрока.ТипТабличногоВопроса = Выборка.ТипТабличногоВопроса; + НоваяСтрока.Подсказка = Выборка.Подсказка; + НоваяСтрока.СпособОтображенияПодсказки = Выборка.СпособОтображенияПодсказки; + НоваяСтрока.ТипСтроки = ?(Выборка.ЭтоРаздел,"Раздел","Вопрос"); Если Форма.ИмяФормы = "Справочник.ШаблоныАнкет.Форма.ФормаЭлемента" Тогда НоваяСтрока.ЭлементарныйВопрос = ?(Выборка.ЭтоРаздел,Выборка.Наименование,?(Выборка.ТипВопроса <> Перечисления.ТипыВопросовШаблонаАнкеты.Табличный,Выборка.ЭлементарныйВопрос,Выборка.Формулировка)); @@ -408,6 +445,8 @@ НоваяСтрока.СоставТабличногоВопроса.Сортировать("НомерСтроки Возр"); НоваяСтрока.ПредопределенныеОтветы = Выборка.ПредопределенныеОтветы.Выгрузить(); НоваяСтрока.ПредопределенныеОтветы.Сортировать("НомерСтроки Возр"); + НоваяСтрока.СоставКомплексногоВопроса = Выборка.СоставКомплексногоВопроса.Выгрузить(); + НоваяСтрока.СоставТабличногоВопроса.Сортировать("НомерСтроки Возр"); НоваяСтрока.КлючСтроки = Новый УникальныйИдентификатор; НоваяСтрока.Длина = Выборка.Длина; НоваяСтрока.МинимальноеЗначение = Выборка.МинимальноеЗначение; @@ -447,6 +486,8 @@ | ВопросыШаблонаАнкеты.ЭлементарныйВопрос КАК ЭлементарныйВопрос, | ВопросыШаблонаАнкеты.ЭтоГруппа КАК ЭтоРаздел, | ВопросыШаблонаАнкеты.РодительВопрос КАК РодительВопрос, + | ВопросыШаблонаАнкеты.Подсказка КАК Подсказка, + | ВопросыШаблонаАнкеты.СпособОтображенияПодсказки КАК СпособОтображенияПодсказки, | ВопросыШаблонаАнкеты.СоставТабличногоВопроса.( | НомерСтроки КАК НомерСтроки, | ЭлементарныйВопрос @@ -456,6 +497,10 @@ | ЭлементарныйВопрос, | Ответ | ), + | ВопросыШаблонаАнкеты.СоставКомплексногоВопроса.( + | НомерСтроки КАК НомерСтроки, + | ЭлементарныйВопрос + | ), | ЕСТЬNULL(ВопросыДляАнкетирования.Длина, 0) КАК Длина, | ВопросыДляАнкетирования.ТипЗначения КАК ТипЗначения, | ЕСТЬNULL(ВопросыДляАнкетирования.ТребуетсяКомментарий, ЛОЖЬ) КАК ТребуетсяКомментарий, @@ -574,12 +619,16 @@ ИмяВопроса = АнкетированиеКлиентСервер.ПолучитьИмяВопроса(СтрокаДерева.КлючСтроки); - ОписаниеТипаСтроки = Новый ОписаниеТипов("Строка",,Новый КвалификаторыСтроки(500)); - ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы(ИмяВопроса + "_Формулировка",ОписаниеТипаСтроки,)); + ОписаниеТипаСтроки = Новый ОписаниеТипов("Строка"); + ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы(ИмяВопроса + "_Формулировка",ОписаниеТипаСтроки)); Если СтрокаДерева.ТипВопроса = Перечисления.ТипыВопросовШаблонаАнкеты.Табличный Тогда ДобавитьРеквизитыТабличныйВопрос(СтрокаДерева,ДобавляемыеРеквизиты,Форма); + + ИначеЕсли СтрокаДерева.ТипВопроса = Перечисления.ТипыВопросовШаблонаАнкеты.Комплексный Тогда + + ДобавитьРеквизитыКомплексныйВопрос(СтрокаДерева, ДобавляемыеРеквизиты, Форма); Иначе @@ -728,6 +777,62 @@ КонецПроцедуры +// Добавляет реквизиты формы для комплексных вопросов. +// +// Параметры: +// СтрокаДерева - СтрокаДереваЗначений - строка дерева шаблона анкеты. +// ДобавляемыеРеквизиты - Массив - предназначен для аккумулирования добавляемых реквизитов формы. +// +Процедура ДобавитьРеквизитыКомплексныйВопрос(СтрокаДерева,ДобавляемыеРеквизиты,Форма) + + ИмяВопроса = АнкетированиеКлиентСервер.ПолучитьИмяВопроса(СтрокаДерева.КлючСтроки); + Для каждого СтрокаКомплексногоВопроса Из СтрокаДерева.СоставКомплексногоВопроса Цикл + + НайденныеСтроки = Форма.ВопросыПредставлениеТипы.НайтиСтроки(Новый Структура("Вопрос",СтрокаКомплексногоВопроса.ЭлементарныйВопрос)); + Если НайденныеСтроки.Количество() > 0 Тогда + ПредставлениеТипВопроса = НайденныеСтроки[0]; + Иначе + Продолжить; + КонецЕсли; + + Если ПредставлениеТипВопроса.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз Тогда + + ВариантыОтветовНаВопрос = ПолучитьВариантыОтветовНаВопрос(СтрокаКомплексногоВопроса.ЭлементарныйВопрос,Форма); + + ОписаниеТипаСтроки = Новый ОписаниеТипов("Строка",,Новый КвалификаторыСтроки(150)); + ОписаниеТипаБулево = Новый ОписаниеТипов("Булево"); + + Счетчик = 0; + + Для каждого ВариантОтвета Из ВариантыОтветовНаВопрос Цикл + Счетчик = Счетчик + 1; + ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы(ИмяВопроса + "_Ответ_" + + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ=") + "_Реквизит_" + Счетчик,ОписаниеТипаБулево,,ВариантОтвета.Представление)); + Если ВариантОтвета.ТребуетОткрытогоОтвета Тогда + ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы(ИмяВопроса + "_Ответ_" + + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ=") + "_Комментарий_" + Счетчик,ОписаниеТипаСтроки)); + КонецЕсли; + КонецЦикла; + + Иначе + + ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы(ИмяВопроса + "_Ответ_" + + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="),ПредставлениеТипВопроса.Тип,,ПредставлениеТипВопроса.Формулировка)); + + КонецЕсли; + + Если (ПредставлениеТипВопроса.ТипОтвета <> Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз) И (СтрокаКомплексногоВопроса.ТребуетсяКомментарий) Тогда + + ОписаниеТипаСтроки = Новый ОписаниеТипов("Строка",,Новый КвалификаторыСтроки(150)); + ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы(ИмяВопроса + "_Комментарий_" + + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="),ОписаниеТипаСтроки,,СтрокаКомплексногоВопроса.ПояснениеКомментария)); + + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Создание элементов формы заполнения анкеты. @@ -833,21 +938,30 @@ // Зададим элемент группы для вопроса. ЭлементГруппаВопроса = Форма.Элементы.Добавить(ИмяВопроса + "_Группа" ,Тип("ГруппаФормы"),ЭлементГруппа); - ЭлементГруппаВопроса.Вид = ВидГруппыФормы.ОбычнаяГруппа ; + ЭлементГруппаВопроса.Вид = ВидГруппыФормы.ОбычнаяГруппа; ЭлементГруппаВопроса.ОтображатьЗаголовок = Ложь; ЭлементГруппаВопроса.Отображение = ОтображениеОбычнойГруппы.Нет; ЭлементГруппаВопроса.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Вертикальная; - ЭлементГруппаВопроса.РастягиватьПоГоризонтали = ?(СтрокаТаблицы.ТипВопроса = Перечисления.ТипыВопросовШаблонаАнкеты.Табличный, Истина, Ложь); + ЭлементГруппаВопроса.РастягиватьПоГоризонтали = Истина; ЭлементГруппаВопроса.РастягиватьПоВертикали = Ложь; Форма[ИмяВопроса + "_Формулировка"] = ПолныйКодНаименование(СтрокаТаблицы); - Элемент = Форма.Элементы.Добавить(ИмяВопроса + "_Формулировка",Тип("ПолеФормы"),ЭлементГруппаВопроса); - Элемент.Вид = ВидПоляФормы.ПолеНадписи; - Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; - Элемент.ВертикальноеПоложение = ВертикальноеПоложениеЭлемента.Верх; - Элемент.ПутьКДанным = ИмяВопроса + "_Формулировка"; - - Элемент.РастягиватьПоВертикали = Истина; + + Элемент = Форма.Элементы.Добавить(ИмяВопроса + "_Формулировка",Тип("ДекорацияФормы"),ЭлементГруппаВопроса); + Элемент.Вид = ВидДекорацииФормы.Надпись; + Элемент.ВертикальноеПоложение = ВертикальноеПоложениеЭлемента.Верх; + Элемент.Заголовок = Форма[ИмяВопроса + "_Формулировка"]; + Элемент.АвтоМаксимальнаяШирина = Ложь; + Элемент.МаксимальнаяШирина = 100; + Элемент.РастягиватьПоГоризонтали = Ложь; + Элемент.РастягиватьПоВертикали = Ложь; + Элемент.Подсказка = СтрокаТаблицы.Подсказка; + + Если СтрокаТаблицы.СпособОтображенияПодсказки = Перечисления.СпособыОтображенияПодсказок.ЗнакВопросаСправа Тогда + Элемент.ОтображениеПодсказки = ОтображениеПодсказки.Кнопка; + Иначе + Элемент.ОтображениеПодсказки = ОтображениеПодсказки.ОтображатьСнизу; + КонецЕсли; ЭлементГруппаВопросКомментарий = Форма.Элементы.Добавить(ИмяВопроса + "_Группа_Вопрос_Комментарий",Тип("ГруппаФормы"),ЭлементГруппаВопроса); ЭлементГруппаВопросКомментарий.Вид = ВидГруппыФормы.ОбычнаяГруппа; @@ -859,6 +973,12 @@ ДобавитьЭлементыТабличныйВопрос(СтрокаТаблицы,ЭлементГруппаВопроса,Форма); + ДобавитьЭлементыКомплексныйВопрос(СтрокаТаблицы,ЭлементГруппаВопроса,Форма); + + ИначеЕсли СтрокаТаблицы.ТипВопроса = Перечисления.ТипыВопросовШаблонаАнкеты.Комплексный Тогда + + ДобавитьЭлементыКомплексныйВопрос(СтрокаТаблицы,ЭлементГруппаВопроса,Форма); + Иначе Если СтрокаТаблицы.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.Строка Тогда @@ -868,6 +988,8 @@ Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; Элемент.АвтоОтметкаНезаполненного = СтрокаТаблицы.Обязательный; Элемент.ПутьКДанным = ИмяВопроса; + Элемент.АвтоМаксимальнаяШирина = Ложь; + Элемент.РастягиватьПоГоризонтали = Ложь; ИначеЕсли СтрокаТаблицы.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.Текст Тогда @@ -877,6 +999,7 @@ Элемент.АвтоОтметкаНезаполненного = СтрокаТаблицы.Обязательный; Элемент.ПутьКДанным = ИмяВопроса; Элемент.РастягиватьПоВертикали = Ложь; + Элемент.АвтоМаксимальнаяШирина = Ложь; УстановитьПараметрыЭлементаЯчейкаТекст(Элемент); ИначеЕсли СтрокаТаблицы.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.Булево Тогда @@ -893,6 +1016,7 @@ Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; Элемент.АвтоОтметкаНезаполненного = СтрокаТаблицы.Обязательный; Элемент.ПутьКДанным = ИмяВопроса; + Элемент.АвтоМаксимальнаяШирина = Ложь; ИначеЕсли СтрокаТаблицы.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.Число Тогда @@ -904,6 +1028,7 @@ Элемент.МаксимальноеЗначение = ?(СтрокаТаблицы.МаксимальноеЗначение = 0,Неопределено,СтрокаТаблицы.МаксимальноеЗначение); Элемент.КнопкаВыбора = Ложь; Элемент.ПутьКДанным = ИмяВопроса; + Элемент.АвтоМаксимальнаяШирина = Ложь; Если СтрокаТаблицы.МинимальноеЗначение <> 0 ИЛИ СтрокаТаблицы.МаксимальноеЗначение <> 0 Тогда Элемент.КнопкаРегулирования = Истина; @@ -928,8 +1053,10 @@ Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; Элемент.АвтоОтметкаНезаполненного = СтрокаТаблицы.Обязательный; Элемент.ПутьКДанным = ИмяВопроса; + Элемент.АвтоМаксимальнаяШирина = Ложь; + Элемент.РастягиватьПоГоризонтали = Ложь; - ИначеЕсли СтрокаТаблицы.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.ОдинВариантИз Тогда + ИначеЕсли СтрокаТаблицы.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.ОдинВариантИз Тогда ВариантыОтветовНаВопрос = ПолучитьВариантыОтветовНаВопрос(СтрокаТаблицы.ЭлементарныйВопрос,Форма); @@ -940,6 +1067,16 @@ Элемент.КоличествоКолонок = 1; Элемент.ВысотаЭлемента = 1; Элемент.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Лево; + + Если СтрокаТаблицы.ВидПереключателя = Перечисления.ВидыПереключателяВАнкетах.Тумблер Тогда + Элемент.ВидПереключателя = ВидПереключателя.Тумблер; + Элемент.КоличествоКолонок = 0; + Элемент.ОдинаковаяШиринаКолонок = Ложь; + Иначе + Элемент.ВидПереключателя = ВидПереключателя.Переключатель; + Элемент.КоличествоКолонок = 1; + КонецЕсли; + Для каждого ВариантОтвета Из ВариантыОтветовНаВопрос Цикл Элемент.СписокВыбора.Добавить(ВариантОтвета.Ответ,ВариантОтвета.Представление); КонецЦикла; @@ -966,7 +1103,6 @@ ЭлементГруппаВариантОтвета.Отображение = ОтображениеОбычнойГруппы.Нет; ЭлементГруппаВариантОтвета.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Горизонтальная; ЭлементГруппаВариантОтвета.ОтображатьЗаголовок = Ложь; - ЭлементГруппаВариантОтвета.ШиринаПодчиненныхЭлементов = ШиринаПодчиненныхЭлементовФормы.Авто; ЭлементГруппаВариантОтвета.РастягиватьПоГоризонтали = Истина; ИмяРеквизитаВопроса = ИмяВопроса + "_Реквизит_" + Счетчик; @@ -992,9 +1128,10 @@ // Комментарии к вопросам Если (СтрокаТаблицы.ТипОтвета <> Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз) И (СтрокаТаблицы.ТребуетсяКомментарий) Тогда - Элемент = Форма.Элементы.Добавить(ИмяВопроса + "_Комментарий",Тип("ПолеФормы"),ЭлементГруппаВопросКомментарий); - Элемент.Вид = ВидПоляФормы.ПолеВвода; - Элемент.ПутьКДанным = ИмяВопроса + "_Комментарий"; + Элемент = Форма.Элементы.Добавить(ИмяВопроса + "_Комментарий",Тип("ПолеФормы"),ЭлементГруппаВопросКомментарий); + Элемент.Вид = ВидПоляФормы.ПолеВвода; + Элемент.ПутьКДанным = ИмяВопроса + "_Комментарий"; + Элемент.АвтоМаксимальнаяШирина = Ложь; КонецЕсли; @@ -1187,6 +1324,184 @@ КонецПроцедуры +Процедура ДобавитьЭлементыКомплексныйВопрос(СтрокаТаблицы,ЭлементГруппа,Форма) + + ИмяВопроса = АнкетированиеКлиентСервер.ПолучитьИмяВопроса(СтрокаТаблицы.КлючСтроки); + Для каждого СтрокаКомплексногоВопроса Из СтрокаТаблицы.СоставКомплексногоВопроса Цикл + + НайденныеСтроки = Форма.ВопросыПредставлениеТипы.НайтиСтроки(Новый Структура("Вопрос",СтрокаКомплексногоВопроса.ЭлементарныйВопрос)); + Если НайденныеСтроки.Количество() > 0 Тогда + РеквизитыЭлементарногоВопроса = НайденныеСтроки[0]; + Иначе + Продолжить; + КонецЕсли; + + Элемент = Форма.Элементы.Добавить(ИмяВопроса + "_ЭлементарныйВопрос_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="),Тип("ДекорацияФормы"),ЭлементГруппа); + Элемент.Вид = ВидДекорацииФормы.Надпись; + Элемент.Заголовок = СтрокаКомплексногоВопроса.ЭлементарныйВопрос; + Элемент.АвтоМаксимальнаяШирина = Ложь; + Элемент.РастягиватьПоГоризонтали = Истина; + + Если РеквизитыЭлементарногоВопроса.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.Строка Тогда + + Элемент = Форма.Элементы.Добавить(ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="),Тип("ПолеФормы"),ЭлементГруппа); + Элемент.Вид = ВидПоляФормы.ПолеВвода; + Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; + Элемент.АвтоОтметкаНезаполненного = СтрокаТаблицы.Обязательный; + Элемент.ПутьКДанным = ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="); + Элемент.АвтоМаксимальнаяШирина = Ложь; + Элемент.РастягиватьПоГоризонтали = Ложь; + + ИначеЕсли РеквизитыЭлементарногоВопроса.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.Текст Тогда + + Элемент = Форма.Элементы.Добавить(ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="),Тип("ПолеФормы"),ЭлементГруппа); + Элемент.Вид = ВидПоляФормы.ПолеВвода; + Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; + Элемент.АвтоОтметкаНезаполненного = СтрокаТаблицы.Обязательный; + Элемент.ПутьКДанным = ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="); + Элемент.РастягиватьПоВертикали = Ложь; + Элемент.АвтоМаксимальнаяШирина = Ложь; + УстановитьПараметрыЭлементаЯчейкаТекст(Элемент); + + ИначеЕсли РеквизитыЭлементарногоВопроса.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.Булево Тогда + + Элемент = Форма.Элементы.Добавить(ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="),Тип("ПолеФормы"),ЭлементГруппа); + Элемент.Вид = ВидПоляФормы.ПолеВвода; + Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; + Элемент.ПутьКДанным = ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="); + + ИначеЕсли РеквизитыЭлементарногоВопроса.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.Дата Тогда + + Элемент = Форма.Элементы.Добавить(ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="),Тип("ПолеФормы"),ЭлементГруппа); + Элемент.Вид = ВидПоляФормы.ПолеВвода; + Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; + Элемент.АвтоОтметкаНезаполненного = СтрокаТаблицы.Обязательный; + Элемент.ПутьКДанным = ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="); + Элемент.АвтоМаксимальнаяШирина = Ложь; + + ИначеЕсли РеквизитыЭлементарногоВопроса.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.Число Тогда + + Элемент = Форма.Элементы.Добавить(ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="),Тип("ПолеФормы"),ЭлементГруппа); + Элемент.Вид = ВидПоляФормы.ПолеВвода; + Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; + Элемент.АвтоОтметкаНезаполненного = СтрокаТаблицы.Обязательный; + Элемент.МинимальноеЗначение = ?(РеквизитыЭлементарногоВопроса.МинимальноеЗначение = 0,Неопределено,РеквизитыЭлементарногоВопроса.МинимальноеЗначение); + Элемент.МаксимальноеЗначение = ?(РеквизитыЭлементарногоВопроса.МаксимальноеЗначение = 0,Неопределено,РеквизитыЭлементарногоВопроса.МаксимальноеЗначение); + Элемент.КнопкаВыбора = Ложь; + Элемент.ПутьКДанным = ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="); + Элемент.АвтоМаксимальнаяШирина = Ложь; + Если РеквизитыЭлементарногоВопроса.МинимальноеЗначение <> 0 ИЛИ РеквизитыЭлементарногоВопроса.МаксимальноеЗначение <> 0 Тогда + Элемент.КнопкаРегулирования = Истина; + + ТекстПодсказки = ""; + Если РеквизитыЭлементарногоВопроса.МинимальноеЗначение <> 0 И РеквизитыЭлементарногоВопроса.МаксимальноеЗначение <> 0 Тогда + ТекстПодсказки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Допустим ввод значения от %1 до %2'"), + РеквизитыЭлементарногоВопроса.МинимальноеЗначение, РеквизитыЭлементарногоВопроса.МаксимальноеЗначение); + ИначеЕсли РеквизитыЭлементарногоВопроса.МинимальноеЗначение = 0 И РеквизитыЭлементарногоВопроса.МаксимальноеЗначение <> 0 Тогда + ТекстПодсказки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Допустим ввод значения до %1'"), РеквизитыЭлементарногоВопроса.МаксимальноеЗначение); + Иначе + ТекстПодсказки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Допустим ввод значения от %1'"), РеквизитыЭлементарногоВопроса.МинимальноеЗначение); + КонецЕсли; + + Элемент.Подсказка = ТекстПодсказки; + + КонецЕсли; + + ИначеЕсли СтрокаТаблицы.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.ЗначениеИнформационнойБазы Тогда + + Элемент = Форма.Элементы.Добавить(ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="),Тип("ПолеФормы"),ЭлементГруппа); + Элемент.Вид = ВидПоляФормы.ПолеВвода; + Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; + Элемент.АвтоОтметкаНезаполненного = СтрокаТаблицы.Обязательный; + Элемент.ПутьКДанным = ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="); + Элемент.АвтоМаксимальнаяШирина = Ложь; + Элемент.РастягиватьПоГоризонтали = Ложь; + + ИначеЕсли РеквизитыЭлементарногоВопроса.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.ОдинВариантИз Тогда + + ВариантыОтветовНаВопрос = ПолучитьВариантыОтветовНаВопрос(СтрокаКомплексногоВопроса.ЭлементарныйВопрос,Форма); + + Элемент = Форма.Элементы.Добавить(ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="),Тип("ПолеФормы"),ЭлементГруппа); + Элемент.Вид = ВидПоляФормы.ПолеПереключателя; + Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; + Элемент.ПутьКДанным = ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="); + Элемент.ВысотаЭлемента = 1; + Элемент.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Лево; + + Если РеквизитыЭлементарногоВопроса.ВидПереключателя = Перечисления.ВидыПереключателяВАнкетах.Тумблер Тогда + Элемент.ВидПереключателя = ВидПереключателя.Тумблер; + Элемент.КоличествоКолонок = 0; + Элемент.ОдинаковаяШиринаКолонок = Ложь; + Иначе + Элемент.ВидПереключателя = ВидПереключателя.Переключатель; + Элемент.КоличествоКолонок = 1; + КонецЕсли; + + Для каждого ВариантОтвета Из ВариантыОтветовНаВопрос Цикл + Элемент.СписокВыбора.Добавить(ВариантОтвета.Ответ,ВариантОтвета.Представление); + КонецЦикла; + + ИначеЕсли РеквизитыЭлементарногоВопроса.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз Тогда + + ВариантыОтветовНаВопрос = ПолучитьВариантыОтветовНаВопрос(СтрокаКомплексногоВопроса.ЭлементарныйВопрос,Форма); + Счетчик = 0; + + ЭлементГруппаВариантыОтветов = Форма.Элементы.Добавить(ИмяВопроса + "_Ответ_" + + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ=") + "_Группа_Варианты",Тип("ГруппаФормы"),ЭлементГруппа); + + ЭлементГруппаВариантыОтветов.Вид = ВидГруппыФормы.ОбычнаяГруппа; + ЭлементГруппаВариантыОтветов.Отображение = ОтображениеОбычнойГруппы.Нет; + ЭлементГруппаВариантыОтветов.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Вертикальная; + ЭлементГруппаВариантыОтветов.ОтображатьЗаголовок = Ложь; + + Для каждого ВариантОтвета Из ВариантыОтветовНаВопрос Цикл + + Счетчик = Счетчик + 1; + + ЭлементГруппаВариантОтвета = Форма.Элементы.Добавить(ИмяВопроса + "_Ответ_" + + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ=") + "_Группа_ВариантОтвета_" + Строка(Счетчик),Тип("ГруппаФормы"),ЭлементГруппаВариантыОтветов); + + ЭлементГруппаВариантОтвета.Вид = ВидГруппыФормы.ОбычнаяГруппа; + ЭлементГруппаВариантОтвета.Отображение = ОтображениеОбычнойГруппы.Нет; + ЭлементГруппаВариантОтвета.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Горизонтальная; + ЭлементГруппаВариантОтвета.ОтображатьЗаголовок = Ложь; + ЭлементГруппаВариантОтвета.РастягиватьПоГоризонтали = Истина; + + ИмяРеквизитаВопроса = ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ=") + "_Реквизит_" + Счетчик; + Элемент = Форма.Элементы.Добавить(ИмяРеквизитаВопроса,Тип("ПолеФормы"),ЭлементГруппаВариантОтвета); + + Элемент.Вид = ВидПоляФормы.ПолеФлажка; + Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Право; + Элемент.ПутьКДанным = ИмяРеквизитаВопроса; + Элемент.ВысотаЗаголовка = 1; + + Если ВариантОтвета.ТребуетОткрытогоОтвета Тогда + ИмяРеквизитаКомментария = ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ=") + "_Комментарий_" + Счетчик; + Элемент = Форма.Элементы.Добавить(ИмяРеквизитаКомментария,Тип("ПолеФормы"),ЭлементГруппаВариантОтвета); + Элемент.Вид = ВидПоляФормы.ПолеФлажка; + Элемент.ПутьКДанным = ИмяРеквизитаКомментария; + Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; + КонецЕсли; + + КонецЦикла; + + КонецЕсли; + + // Комментарии к вопросам + Если (РеквизитыЭлементарногоВопроса.ТипОтвета <> Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз) И (СтрокаКомплексногоВопроса.ТребуетсяКомментарий) Тогда + + Элемент = Форма.Элементы.Добавить(ИмяВопроса + "_Комментарий_" + + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="),Тип("ПолеФормы"),ЭлементГруппа); + Элемент.Вид = ВидПоляФормы.ПолеВвода; + Элемент.ПутьКДанным = ИмяВопроса + "_Комментарий_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="); + Элемент.АвтоМаксимальнаяШирина = Ложь; + + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Вспомогательные процедуры формы заполнения анкеты. @@ -1219,28 +1534,6 @@ КонецФункции -// Устанавливает отметку для элементов типа "радио кнопка", если значение элемента не заполнено. -// -// Параметры: -// Форма - Управляемая форма - форма, для которой выполняются действия. -// -Процедура УстановитьЗначенияРеквизитовВариантОтветаОдинИз(Форма) Экспорт - - НайденныеСтроки = Форма.ТаблицаВопросовРаздела.НайтиСтроки(Новый Структура("ТипОтвета",Перечисления.ТипыОтветовНаВопрос.ОдинВариантИз)); - - Для каждого НайденнаяСтрока Из НайденныеСтроки Цикл - Если НЕ ЗначениеЗаполнено(Форма[АнкетированиеКлиентСервер.ПолучитьИмяВопроса(НайденнаяСтрока.КлючСтроки)]) Тогда - - ВариантыОтветовНаВопрос = ПолучитьВариантыОтветовНаВопрос(НайденнаяСтрока.ЭлементарныйВопрос,Форма); - Если ВариантыОтветовНаВопрос.Количество() > 0 Тогда - Форма[АнкетированиеКлиентСервер.ПолучитьИмяВопроса(НайденнаяСтрока.КлючСтроки)] = ВариантыОтветовНаВопрос[0].Ответ; - КонецЕсли; - - КонецЕсли; - КонецЦикла; - -КонецПроцедуры - // Устанавливает значения параметров и обработчик события "НачалоВыбора", // для поля формы, предназначенного для ввода текста. // @@ -1388,115 +1681,146 @@ Процедура ПолучитьИнформациюПоВопросамАнкеты(Форма, ШаблонАнкеты, Раздел,ПолныйКодРаздела) Запрос = Новый Запрос; - Запрос.Текст = " - |ВЫБРАТЬ - | ВопросыДляАнкетирования.Ссылка КАК Вопрос, - | ВопросыДляАнкетирования.Формулировка КАК Формулировка, - | ВопросыДляАнкетирования.ТипЗначения КАК Тип, - | ВопросыДляАнкетирования.ТипОтвета КАК ТипОтвета, - | ВопросыДляАнкетирования.МинимальноеЗначение КАК МинимальноеЗначение, - | ВопросыДляАнкетирования.МаксимальноеЗначение КАК МаксимальноеЗначение - |ИЗ - | ПланВидовХарактеристик.ВопросыДляАнкетирования КАК ВопросыДляАнкетирования - |ГДЕ - | ВопросыДляАнкетирования.Ссылка В - | (ВЫБРАТЬ РАЗЛИЧНЫЕ - | ВопросыШаблонаАнкеты.ЭлементарныйВопрос - | ИЗ - | Справочник.ВопросыШаблонаАнкеты КАК ВопросыШаблонаАнкеты - | ГДЕ - | ВопросыШаблонаАнкеты.Владелец = &ШаблонАнкеты - | И ВопросыШаблонаАнкеты.Родитель = &Раздел - | - | ОБЪЕДИНИТЬ ВСЕ - | - | ВЫБРАТЬ - | ВопросыШаблонаАнкетыСоставТабличногоВопроса.ЭлементарныйВопрос - | ИЗ - | Справочник.ВопросыШаблонаАнкеты.СоставТабличногоВопроса КАК ВопросыШаблонаАнкетыСоставТабличногоВопроса - | ГДЕ - | ВопросыШаблонаАнкетыСоставТабличногоВопроса.Ссылка.Владелец = &ШаблонАнкеты - | И ВопросыШаблонаАнкетыСоставТабличногоВопроса.Ссылка.Родитель = &Раздел) - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ - | ВопросыШаблонаАнкеты.Ссылка КАК ВопросШаблона, - | ВопросыШаблонаАнкеты.Родитель КАК Родитель, - | ВопросыШаблонаАнкеты.Наименование КАК Наименование, - | ВопросыШаблонаАнкеты.Обязательный КАК Обязательный, - | ВопросыШаблонаАнкеты.ТипВопроса КАК ТипВопроса, - | ВопросыШаблонаАнкеты.ТипТабличногоВопроса КАК ТипТабличногоВопроса, - | ВопросыШаблонаАнкеты.ЭлементарныйВопрос КАК ЭлементарныйВопрос, - | ""Вопрос"" КАК ТипСтроки, - | ВопросыШаблонаАнкеты.РодительВопрос КАК РодительВопрос, - | ВопросыШаблонаАнкеты.СоставТабличногоВопроса.( - | НомерСтроки, - | ЭлементарныйВопрос - | ), - | ВопросыШаблонаАнкеты.ПредопределенныеОтветы.( - | НомерСтроки, - | ЭлементарныйВопрос, - | Ответ - | ), - | ЕСТЬNULL(ВопросыДляАнкетирования.Длина, 0) КАК Длина, - | ВопросыДляАнкетирования.ТипЗначения КАК ТипЗначения, - | ЕСТЬNULL(ВопросыДляАнкетирования.ТребуетсяКомментарий, ЛОЖЬ) КАК ТребуетсяКомментарий, - | ЕСТЬNULL(ВопросыДляАнкетирования.ПояснениеКомментария, """") КАК ПояснениеКомментария, - | ЕСТЬNULL(ВопросыДляАнкетирования.МинимальноеЗначение, 0) КАК МинимальноеЗначение, - | ЕСТЬNULL(ВопросыДляАнкетирования.МаксимальноеЗначение, 0) КАК МаксимальноеЗначение, - | ЕСТЬNULL(ВопросыДляАнкетирования.ТипОтвета, ЗНАЧЕНИЕ(Перечисление.ТипыОтветовНаВопрос.ПустаяСсылка)) КАК ТипОтвета, - | ЕСТЬNULL(ВопросыШаблонаАнкеты.Формулировка, """") КАК Формулировка, - | ЕСТЬNULL(ВопросыДляАнкетирования.Точность, 0) КАК Точность - |ИЗ - | Справочник.ВопросыШаблонаАнкеты КАК ВопросыШаблонаАнкеты - | ЛЕВОЕ СОЕДИНЕНИЕ ПланВидовХарактеристик.ВопросыДляАнкетирования КАК ВопросыДляАнкетирования - | ПО ВопросыШаблонаАнкеты.ЭлементарныйВопрос = ВопросыДляАнкетирования.Ссылка - |ГДЕ - | (НЕ ВопросыШаблонаАнкеты.ПометкаУдаления) - | И ВопросыШаблонаАнкеты.Владелец = &ШаблонАнкеты - | И ВопросыШаблонаАнкеты.Родитель = &Раздел - | И (НЕ ВопросыШаблонаАнкеты.ЭтоГруппа) - | - |УПОРЯДОЧИТЬ ПО - | ВопросыШаблонаАнкеты.Код - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ - | ВариантыОтветовАнкет.Владелец КАК Вопрос, - | ВариантыОтветовАнкет.Ссылка КАК Ответ, - | ВариантыОтветовАнкет.Представление, - | ВариантыОтветовАнкет.ТребуетОткрытогоОтвета - |ИЗ - | Справочник.ВариантыОтветовАнкет КАК ВариантыОтветовАнкет - |ГДЕ - | ВариантыОтветовАнкет.Владелец В - | (ВЫБРАТЬ - | ВопросыШаблонаАнкеты.ЭлементарныйВопрос - | ИЗ - | Справочник.ВопросыШаблонаАнкеты КАК ВопросыШаблонаАнкеты - | ГДЕ - | ВопросыШаблонаАнкеты.Владелец = &ШаблонАнкеты - | И ВопросыШаблонаАнкеты.Родитель = &Раздел - | И (НЕ ВопросыШаблонаАнкеты.ЭтоГруппа) - | И (НЕ ВопросыШаблонаАнкеты.ПометкаУдаления) - | - | ОБЪЕДИНИТЬ ВСЕ - | - | ВЫБРАТЬ - | ВопросыШаблонаАнкетыСоставТабличногоВопроса.ЭлементарныйВопрос - | ИЗ - | Справочник.ВопросыШаблонаАнкеты.СоставТабличногоВопроса КАК ВопросыШаблонаАнкетыСоставТабличногоВопроса - | ГДЕ - | ВопросыШаблонаАнкетыСоставТабличногоВопроса.Ссылка.Владелец = &ШаблонАнкеты - | И ВопросыШаблонаАнкетыСоставТабличногоВопроса.Ссылка.Родитель = &Раздел - | И (НЕ ВопросыШаблонаАнкетыСоставТабличногоВопроса.Ссылка.ЭтоГруппа) - | И (НЕ ВопросыШаблонаАнкетыСоставТабличногоВопроса.Ссылка.ПометкаУдаления)) - | И (НЕ ВариантыОтветовАнкет.ПометкаУдаления) - | - |УПОРЯДОЧИТЬ ПО - | ВариантыОтветовАнкет.РеквизитДопУпорядочивания"; + Запрос.Текст = "ВЫБРАТЬ + | ВопросыДляАнкетирования.Ссылка КАК Вопрос, + | ВопросыДляАнкетирования.Формулировка КАК Формулировка, + | ВопросыДляАнкетирования.ТипЗначения КАК Тип, + | ВопросыДляАнкетирования.ТипОтвета КАК ТипОтвета, + | ВопросыДляАнкетирования.ВидПереключателя КАК ВидПереключателя, + | ВопросыДляАнкетирования.МинимальноеЗначение КАК МинимальноеЗначение, + | ВопросыДляАнкетирования.МаксимальноеЗначение КАК МаксимальноеЗначение + |ИЗ + | ПланВидовХарактеристик.ВопросыДляАнкетирования КАК ВопросыДляАнкетирования + |ГДЕ + | ВопросыДляАнкетирования.Ссылка В + | (ВЫБРАТЬ РАЗЛИЧНЫЕ + | ВопросыШаблонаАнкеты.ЭлементарныйВопрос + | ИЗ + | Справочник.ВопросыШаблонаАнкеты КАК ВопросыШаблонаАнкеты + | ГДЕ + | ВопросыШаблонаАнкеты.Владелец = &ШаблонАнкеты + | И ВопросыШаблонаАнкеты.Родитель = &Раздел + | + | ОБЪЕДИНИТЬ ВСЕ + | + | ВЫБРАТЬ + | ВопросыШаблонаАнкетыСоставТабличногоВопроса.ЭлементарныйВопрос + | ИЗ + | Справочник.ВопросыШаблонаАнкеты.СоставТабличногоВопроса КАК ВопросыШаблонаАнкетыСоставТабличногоВопроса + | ГДЕ + | ВопросыШаблонаАнкетыСоставТабличногоВопроса.Ссылка.Владелец = &ШаблонАнкеты + | И ВопросыШаблонаАнкетыСоставТабличногоВопроса.Ссылка.Родитель = &Раздел + | + | ОБЪЕДИНИТЬ ВСЕ + | + | ВЫБРАТЬ + | ВопросыШаблонаАнкетыСоставКомплексногоВопроса.ЭлементарныйВопрос + | ИЗ + | Справочник.ВопросыШаблонаАнкеты.СоставКомплексногоВопроса КАК ВопросыШаблонаАнкетыСоставКомплексногоВопроса + | ГДЕ + | ВопросыШаблонаАнкетыСоставКомплексногоВопроса.Ссылка.Владелец = &ШаблонАнкеты + | И ВопросыШаблонаАнкетыСоставКомплексногоВопроса.Ссылка.Родитель = &Раздел) + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | ВопросыШаблонаАнкеты.Ссылка КАК ВопросШаблона, + | ВопросыШаблонаАнкеты.Родитель КАК Родитель, + | ВопросыШаблонаАнкеты.Наименование КАК Наименование, + | ВопросыШаблонаАнкеты.Обязательный КАК Обязательный, + | ВопросыШаблонаАнкеты.ТипВопроса КАК ТипВопроса, + | ВопросыШаблонаАнкеты.ТипТабличногоВопроса КАК ТипТабличногоВопроса, + | ВопросыШаблонаАнкеты.ЭлементарныйВопрос КАК ЭлементарныйВопрос, + | ""Вопрос"" КАК ТипСтроки, + | ВопросыШаблонаАнкеты.РодительВопрос КАК РодительВопрос, + | ВопросыШаблонаАнкеты.Подсказка КАК Подсказка, + | ВопросыШаблонаАнкеты.СпособОтображенияПодсказки КАК СпособОтображенияПодсказки, + | ВопросыШаблонаАнкеты.СоставТабличногоВопроса.( + | НомерСтроки, + | ЭлементарныйВопрос + | ), + | ВопросыШаблонаАнкеты.ПредопределенныеОтветы.( + | НомерСтроки, + | ЭлементарныйВопрос, + | Ответ + | ), + | ВопросыШаблонаАнкеты.СоставКомплексногоВопроса.( + | НомерСтроки, + | ЭлементарныйВопрос, + | ЭлементарныйВопрос.ТребуетсяКомментарий КАК ТребуетсяКомментарий, + | ЭлементарныйВопрос.ПояснениеКомментария КАК ПояснениеКомментария + | ), + | ЕСТЬNULL(ВопросыДляАнкетирования.Длина, 0) КАК Длина, + | ВопросыДляАнкетирования.ТипЗначения КАК ТипЗначения, + | ЕСТЬNULL(ВопросыДляАнкетирования.ТребуетсяКомментарий, ЛОЖЬ) КАК ТребуетсяКомментарий, + | ЕСТЬNULL(ВопросыДляАнкетирования.ПояснениеКомментария, """") КАК ПояснениеКомментария, + | ЕСТЬNULL(ВопросыДляАнкетирования.МинимальноеЗначение, 0) КАК МинимальноеЗначение, + | ЕСТЬNULL(ВопросыДляАнкетирования.МаксимальноеЗначение, 0) КАК МаксимальноеЗначение, + | ЕСТЬNULL(ВопросыДляАнкетирования.ВидПереключателя, ЗНАЧЕНИЕ(Перечисление.ВидыПереключателяВАнкетах.ПустаяСсылка)) КАК ВидПереключателя, + | ЕСТЬNULL(ВопросыДляАнкетирования.ТипОтвета, ЗНАЧЕНИЕ(Перечисление.ТипыОтветовНаВопрос.ПустаяСсылка)) КАК ТипОтвета, + | ЕСТЬNULL(ВопросыШаблонаАнкеты.Формулировка, """") КАК Формулировка, + | ЕСТЬNULL(ВопросыДляАнкетирования.Точность, 0) КАК Точность + |ИЗ + | Справочник.ВопросыШаблонаАнкеты КАК ВопросыШаблонаАнкеты + | ЛЕВОЕ СОЕДИНЕНИЕ ПланВидовХарактеристик.ВопросыДляАнкетирования КАК ВопросыДляАнкетирования + | ПО ВопросыШаблонаАнкеты.ЭлементарныйВопрос = ВопросыДляАнкетирования.Ссылка + |ГДЕ + | НЕ ВопросыШаблонаАнкеты.ПометкаУдаления + | И ВопросыШаблонаАнкеты.Владелец = &ШаблонАнкеты + | И ВопросыШаблонаАнкеты.Родитель = &Раздел + | И НЕ ВопросыШаблонаАнкеты.ЭтоГруппа + | + |УПОРЯДОЧИТЬ ПО + | ВопросыШаблонаАнкеты.Код + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | ВариантыОтветовАнкет.Владелец КАК Вопрос, + | ВариантыОтветовАнкет.Ссылка КАК Ответ, + | ВариантыОтветовАнкет.Представление, + | ВариантыОтветовАнкет.ТребуетОткрытогоОтвета + |ИЗ + | Справочник.ВариантыОтветовАнкет КАК ВариантыОтветовАнкет + |ГДЕ + | ВариантыОтветовАнкет.Владелец В + | (ВЫБРАТЬ + | ВопросыШаблонаАнкеты.ЭлементарныйВопрос + | ИЗ + | Справочник.ВопросыШаблонаАнкеты КАК ВопросыШаблонаАнкеты + | ГДЕ + | ВопросыШаблонаАнкеты.Владелец = &ШаблонАнкеты + | И ВопросыШаблонаАнкеты.Родитель = &Раздел + | И НЕ ВопросыШаблонаАнкеты.ЭтоГруппа + | И НЕ ВопросыШаблонаАнкеты.ПометкаУдаления + | + | ОБЪЕДИНИТЬ ВСЕ + | + | ВЫБРАТЬ + | ВопросыШаблонаАнкетыСоставТабличногоВопроса.ЭлементарныйВопрос + | ИЗ + | Справочник.ВопросыШаблонаАнкеты.СоставТабличногоВопроса КАК ВопросыШаблонаАнкетыСоставТабличногоВопроса + | ГДЕ + | ВопросыШаблонаАнкетыСоставТабличногоВопроса.Ссылка.Владелец = &ШаблонАнкеты + | И ВопросыШаблонаАнкетыСоставТабличногоВопроса.Ссылка.Родитель = &Раздел + | И НЕ ВопросыШаблонаАнкетыСоставТабличногоВопроса.Ссылка.ЭтоГруппа + | И НЕ ВопросыШаблонаАнкетыСоставТабличногоВопроса.Ссылка.ПометкаУдаления + | + | ОБЪЕДИНИТЬ ВСЕ + | + | ВЫБРАТЬ + | ВопросыШаблонаАнкетыСоставКомплексногоВопроса.ЭлементарныйВопрос + | ИЗ + | Справочник.ВопросыШаблонаАнкеты.СоставКомплексногоВопроса КАК ВопросыШаблонаАнкетыСоставКомплексногоВопроса + | ГДЕ + | ВопросыШаблонаАнкетыСоставКомплексногоВопроса.Ссылка.Владелец = &ШаблонАнкеты + | И ВопросыШаблонаАнкетыСоставКомплексногоВопроса.Ссылка.Родитель = &Раздел + | И НЕ ВопросыШаблонаАнкетыСоставКомплексногоВопроса.Ссылка.ЭтоГруппа + | И НЕ ВопросыШаблонаАнкетыСоставКомплексногоВопроса.Ссылка.ПометкаУдаления) + | И НЕ ВариантыОтветовАнкет.ПометкаУдаления + | + |УПОРЯДОЧИТЬ ПО + | ВариантыОтветовАнкет.РеквизитДопУпорядочивания"; Запрос.УстановитьПараметр("ШаблонАнкеты",ШаблонАнкеты); Запрос.УстановитьПараметр("Раздел",Раздел); @@ -1514,11 +1838,13 @@ СчетчикВопросов = СчетчикВопросов + 1; НоваяСтрока = Форма.ТаблицаВопросовРаздела.Добавить(); - ЗаполнитьЗначенияСвойств(НоваяСтрока,ВыборкаВопросыПоРазделуАнкеты,,"СоставТабличногоВопроса,ПредопределенныеОтветы"); + ЗаполнитьЗначенияСвойств(НоваяСтрока,ВыборкаВопросыПоРазделуАнкеты,,"СоставТабличногоВопроса,ПредопределенныеОтветы,СоставКомплексногоВопроса"); НоваяСтрока.СоставТабличногоВопроса.Загрузить(ВыборкаВопросыПоРазделуАнкеты.СоставТабличногоВопроса.Выгрузить()); НоваяСтрока.СоставТабличногоВопроса.Сортировать("НомерСтроки Возр"); НоваяСтрока.ПредопределенныеОтветы.Загрузить(ВыборкаВопросыПоРазделуАнкеты.ПредопределенныеОтветы.Выгрузить()); НоваяСтрока.ПредопределенныеОтветы.Сортировать("НомерСтроки Возр"); + НоваяСтрока.СоставКомплексногоВопроса.Загрузить(ВыборкаВопросыПоРазделуАнкеты.СоставКомплексногоВопроса.Выгрузить()); + НоваяСтрока.СоставКомплексногоВопроса.Сортировать("НомерСтроки Возр"); НоваяСтрока.КлючСтроки = Новый УникальныйИдентификатор; НоваяСтрока.ПолныйКод = ПолныйКодРаздела + Строка(СчетчикВопросов); @@ -1620,6 +1946,12 @@ НоваяСтрокаПодчиненные.ИмяЭлементаПодчиненногоВопроса = ИмяВопроса + "_Таблица"; НоваяСтрокаПодчиненные.Обязательный = Выборка.Обязательный; + ИначеЕсли ВыборкаДетали.ТипВопроса = Перечисления.ТипыВопросовШаблонаАнкеты.Комплексный Тогда + + НоваяСтрокаПодчиненные = НоваяСтрока.Подчиненные.Добавить(); + НоваяСтрокаПодчиненные.ИмяЭлементаПодчиненногоВопроса = ИмяВопроса + "_Группа"; + НоваяСтрокаПодчиненные.Обязательный = Выборка.Обязательный; + Иначе Если ВыборкаДетали.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз Тогда diff --git a/SSL/src/CommonModules/АнкетированиеКлиент/Module.bsl b/SSL/src/CommonModules/АнкетированиеКлиент/Module.bsl index 6f5fee8a4..b3e279063 100644 --- a/SSL/src/CommonModules/АнкетированиеКлиент/Module.bsl +++ b/SSL/src/CommonModules/АнкетированиеКлиент/Module.bsl @@ -20,4 +20,60 @@ КонецФункции +// Начинает процесс интервью с выбранным респондентом. +// +// Параметры: +// Респондент - ОпределяемыйТип.Респондент - респондент, с которым проводится интервью. +// ШаблонАнкеты - СправочникСсылка.ШаблоныАнкет - шаблон, по которому проводится интервью. +// - Неопределено - пользователь выбирает шаблон из справочника. +// +Процедура НачатьИнтервью(Респондент, ШаблонАнкеты=Неопределено) Экспорт + + Если ШаблонАнкеты=Неопределено Тогда + + ОписаниеОповещения = Новый ОписаниеОповещения("НачатьИнтервьюСВыборомШаблонаЗавершение", ЭтотОбъект, Респондент); + + ПоказатьВводЗначения(ОписаниеОповещения, Неопределено, , Тип("СправочникСсылка.ШаблоныАнкет")); + + Иначе + + ОткрытьФормуИнтервью(Респондент, ШаблонАнкеты); + + КонецЕсли; + +КонецПроцедуры + +// Открывает форму новой анкеты в режиме интервью с выбранным респондентом и шаблоном анкеты. +// +Процедура ОткрытьФормуИнтервью(Респондент, ШаблонАнкеты) + + ЗначенияЗаполнения = Новый Структура; + ЗначенияЗаполнения.Вставить("Респондент", Респондент); + ЗначенияЗаполнения.Вставить("ШаблонАнкеты", ШаблонАнкеты); + ЗначенияЗаполнения.Вставить("РежимАнкетирования", ПредопределенноеЗначение("Перечисление.РежимыАнкетирования.Интервью")); + + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("ЗначенияЗаполнения", ЗначенияЗаполнения); + ПараметрыФормы.Вставить("ТолькоФормаЗаполнения", Истина); + + ФормаАнкеты = ОткрытьФорму("Документ.Анкета.ФормаОбъекта", ПараметрыФормы); + + Если ФормаАнкеты <> Неопределено Тогда + ЗаполнитьЗначенияСвойств(ФормаАнкеты, ЗначенияЗаполнения); + КонецЕсли; + +КонецПроцедуры + +// Обработчик результата работы процедуры НачатьИнтервьюСВыборомШаблона. +// +Процедура НачатьИнтервьюСВыборомШаблонаЗавершение(ВыбранныйШаблон, Респондент) Экспорт + + Если ВыбранныйШаблон = Неопределено Тогда + Возврат; + КонецЕсли; + + ОткрытьФормуИнтервью(Респондент, ВыбранныйШаблон); + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/CommonModules/АнкетированиеКлиентСервер/Module.bsl b/SSL/src/CommonModules/АнкетированиеКлиентСервер/Module.bsl index b78b92e93..ecb2b342b 100644 --- a/SSL/src/CommonModules/АнкетированиеКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/АнкетированиеКлиентСервер/Module.bsl @@ -101,7 +101,7 @@ КонецЦикла; ПолныйКод = ПреобразоватьМассивВСтроку(МассивПолныйКод,"."); - ПолныйКод = УдалитьПоследниеСимволыИзСтроки(ПолныйКод,"0.","."); + ПолныйКод = УдалитьПоследниеСимволыИзСтроки(ПолныйКод,".0.","."); Элемент.ПолныйКод = ПолныйКод; Если ПреобразовыватьФормулировку Тогда @@ -157,6 +157,8 @@ Возврат 4; ИначеЕсли ТипВопроса = ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Табличный") Тогда Возврат 3; + ИначеЕсли ТипВопроса = ПредопределенноеЗначение("Перечисление.ТипыВопросовШаблонаАнкеты.Комплексный") Тогда + Возврат 5; Иначе Возврат 0; КонецЕсли; @@ -166,9 +168,14 @@ Процедура ПереключитьВидимостьГруппТелаАнкеты(Форма, ВидимостьТелаАнкеты) Экспорт Форма.Элементы.ГруппаТелоАнкеты.Видимость = ВидимостьТелаАнкеты; - Форма.Элементы.ГруппаОжидание.Видимость = НЕ ВидимостьТелаАнкеты; + Форма.Элементы.ГруппаОжидание.Видимость = НЕ ВидимостьТелаАнкеты; + + Форма.Элементы.ПредыдущийРазделПодвал.Доступность = ВидимостьТелаАнкеты; + Форма.Элементы.ПредыдущийРаздел.Доступность = ВидимостьТелаАнкеты; + Форма.Элементы.СледующийРазделПодвал.Доступность = ВидимостьТелаАнкеты; + Форма.Элементы.СледующийРаздел.Доступность = ВидимостьТелаАнкеты; + КонецПроцедуры - #КонецОбласти diff --git a/SSL/src/CommonModules/БизнесПроцессыИЗадачиВызовСервера/Module.bsl b/SSL/src/CommonModules/БизнесПроцессыИЗадачиВызовСервера/Module.bsl index 9ada76c7f..e7c622889 100644 --- a/SSL/src/CommonModules/БизнесПроцессыИЗадачиВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/БизнесПроцессыИЗадачиВызовСервера/Module.bsl @@ -444,6 +444,8 @@ КонецФункции +#Область УстаревшиеПроцедурыИФункции + // Устарела. Следует использовать БизнесПроцессыИЗадачиСервер.УведомитьИсполнителейОНовыхЗадачах. // Процедура УведомитьИсполнителейОНовыхЗадачах() Экспорт @@ -462,6 +464,8 @@ #КонецОбласти +#КонецОбласти + #Область СлужебныеПроцедурыИФункции //////////////////////////////////////////////////////////////////////////////// diff --git a/SSL/src/CommonModules/БизнесПроцессыИЗадачиКлиент/Module.bsl b/SSL/src/CommonModules/БизнесПроцессыИЗадачиКлиент/Module.bsl index d065c043c..c71674db0 100644 --- a/SSL/src/CommonModules/БизнесПроцессыИЗадачиКлиент/Module.bsl +++ b/SSL/src/CommonModules/БизнесПроцессыИЗадачиКлиент/Module.bsl @@ -75,6 +75,7 @@ Процедура ОстановитьБизнесПроцессИзФормыОбъекта(Форма) Экспорт Форма.Объект.Состояние = ПредопределенноеЗначение("Перечисление.СостоянияБизнесПроцессов.Остановлен"); + ОчиститьСообщения(); Форма.Записать(); ПоказатьОповещениеПользователя( НСтр("ru = 'Бизнес-процесс остановлен'"), @@ -140,6 +141,7 @@ Процедура ПродолжитьБизнесПроцессИзФормыОбъекта(Форма) Экспорт Форма.Объект.Состояние = ПредопределенноеЗначение("Перечисление.СостоянияБизнесПроцессов.Активен"); + ОчиститьСообщения(); Форма.Записать(); ПоказатьОповещениеПользователя( НСтр("ru = 'Бизнес-процесс сделан активным'"), @@ -190,6 +192,7 @@ Форма.Объект.Исполнитель = ТекущийПользователь; КонецЕсли; + ОчиститьСообщения(); Форма.Записать(); Состояние(НСтр("ru = 'Задача принята к исполнению.'")); ОбновитьДоступностьКомандПринятияКИсполнению(Форма); @@ -232,8 +235,9 @@ Форма.Объект.ДатаПринятияКИсполнению = "00010101000000"; Если Не Форма.Объект.РольИсполнителя.Пустая() Тогда Форма.Объект.Исполнитель = ПредопределенноеЗначение("Справочник.Пользователи.ПустаяСсылка"); - КонецЕсли; + КонецЕсли; + ОчиститьСообщения(); Форма.Записать(); Состояние(НСтр("ru = 'Задача помечена как НЕ принятая к исполнению.'")); ОбновитьДоступностьКомандПринятияКИсполнению(Форма); @@ -261,6 +265,32 @@ КонецПроцедуры +// Открывает форму для настройки отложенного старта бизнес процесса. +// +// Параметры: +// - БизнесПроцесс - БизнесПроцессСсылка - процесс для которого следует открыть форму настройки +// отложенного старта. +// +Процедура НастроитьОтложенныйСтарт(БизнесПроцесс, СрокИсполнения) Экспорт + + Если БизнесПроцесс.Пустая() Тогда + ТекстПредупреждения = + НСтр("ru = 'Невозможно настроить отложенный старт для незаписанного процесса.'"); + ПоказатьПредупреждение(, ТекстПредупреждения); + Возврат; + КонецЕсли; + + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("БизнесПроцесс", БизнесПроцесс); + ПараметрыФормы.Вставить("СрокИсполнения", СрокИсполнения); + + ОткрытьФорму( + "РегистрСведений.ПроцессыДляЗапуска.Форма.НастройкаОтложенногоСтартаПроцесса", + ПараметрыФормы,,,,,, + РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Дополнительные процедуры и функции. @@ -270,8 +300,8 @@ // Параметры: // Форма - УправляемаяФорма - форма выполнения задачи. // ИмяСобытия - Строка - имя события. -// Параметр - произвольный тип - параметр события. -// Источник - произвольный тип - источник события. +// Параметр - Произвольный - параметр события. +// Источник - Произвольный - источник события. // Процедура ФормаЗадачиОбработкаОповещения(Форма, ИмяСобытия, Параметр, Источник) Экспорт diff --git a/SSL/src/CommonModules/БизнесПроцессыИЗадачиКлиентСервер/Module.bsl b/SSL/src/CommonModules/БизнесПроцессыИЗадачиКлиентСервер/Module.bsl index 972e0302f..e624e81f2 100644 --- a/SSL/src/CommonModules/БизнесПроцессыИЗадачиКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/БизнесПроцессыИЗадачиКлиентСервер/Module.bsl @@ -9,7 +9,13 @@ //////////////////////////////////////////////////////////////////////////////// // Обработчики подписок на события. -// Вызывается для добавления полей при получении представления объекта или ссылки бизнес процесса. +// Добавление полей, на основании которых будет формироваться представления бизнес процесса. +// +// Параметры: +// МенеджерОбъекта - БизнесПроцессМенеджер - Менеджер бизнес процесса. +// Поля - Структура - Поля, из которых формируется представление бизнес процесса. +// СтандартнаяОбработка - Булево - если установить Ложь, то стандартная обработка заполнения не будет +// выполнена. // Процедура ОбработкаПолученияПолейПредставленияБизнесПроцесса(МенеджерОбъекта, Поля, СтандартнаяОбработка) Экспорт @@ -19,7 +25,14 @@ КонецПроцедуры -// Вызывается при получении представления объекта или ссылки бизнес процесса. +// Обработка получения представления бизнес процесса на основание полей данных. +// +// Параметры: +// МенеджерОбъекта - БизнесПроцессМенеджер - Менеджер бизнес процесса. +// Данные - Структура - Поля, из которых формируется представление бизнес процесса. +// Представление - Строка - Представление бизнес процесса. +// СтандартнаяОбработка - Булево - Если установить Ложь, то стандартная обработка заполнения не будет +// выполнена. // Процедура ОбработкаПолученияПредставленияБизнесПроцесса(МенеджерОбъекта, Данные, Представление, СтандартнаяОбработка) Экспорт @@ -34,7 +47,7 @@ ШаблонПредставления = НСтр("ru = '%1 от %2 (%3)'"); Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонПредставления, Наименование, Дата, Представление); СтандартнаяОбработка = Ложь; - + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/CommonModules/БизнесПроцессыИЗадачиСервер/Module.bsl b/SSL/src/CommonModules/БизнесПроцессыИЗадачиСервер/Module.bsl index 735bccb69..c5a233a17 100644 --- a/SSL/src/CommonModules/БизнесПроцессыИЗадачиСервер/Module.bsl +++ b/SSL/src/CommonModules/БизнесПроцессыИЗадачиСервер/Module.bsl @@ -10,13 +10,11 @@ // Параметры: // ФормаЗадачи - УправляемаяФорма - форма выполнения задачи. // ЗадачаОбъект - ЗадачаОбъект - объект задачи. -// ЭлементГруппаСостояние - элемент управления формы - группа с информации о -// состоянии задачи. -// ЭлементДатаИсполнения - элемент управления формы - поле с датой исполнения задачи. +// ЭлементГруппаСостояние - ГруппаФормы - группа с информации о состоянии задачи. +// ЭлементДатаИсполнения - ПолеВвода - поле с датой исполнения задачи. // -Процедура ФормаЗадачиПриСозданииНаСервере(ФормаЗадачи, ЗадачаОбъект, - ЭлементГруппаСостояние, ЭлементДатаИсполнения) Экспорт - +Процедура ФормаЗадачиПриСозданииНаСервере(ФормаЗадачи, ЗадачаОбъект, + ЭлементГруппаСостояние, ЭлементДатаИсполнения) Экспорт ФормаЗадачи.ТолькоПросмотр = ЗадачаОбъект.Выполнена; Если ЗадачаОбъект.Выполнена Тогда @@ -29,8 +27,6 @@ Элемент = ФормаЗадачи.Элементы.Добавить("__СостояниеЗадачиКартинка", Тип("ДекорацияФормы"), Родитель); Элемент.Вид = ВидДекорацииФормы.Картинка; Элемент.Картинка = БиблиотекаКартинок.Информация; - Элемент.Высота = 1; - Элемент.Ширина = 2; КонецЕсли; Элемент = ФормаЗадачи.Элементы.Найти("__СостояниеЗадачи"); @@ -38,6 +34,7 @@ Элемент = ФормаЗадачи.Элементы.Добавить("__СостояниеЗадачи", Тип("ДекорацияФормы"), Родитель); Элемент.Вид = ВидДекорацииФормы.Надпись; Элемент.Высота = 0; // автовысота + Элемент.АвтоМаксимальнаяШирина = Ложь; КонецЕсли; ИспользоватьДатуИВремяВСрокахЗадач = ПолучитьФункциональнуюОпцию("ИспользоватьДатуИВремяВСрокахЗадач"); ДатаИсполненияСтрокой = ?(ИспользоватьДатуИВремяВСрокахЗадач, @@ -58,8 +55,6 @@ Элемент = ФормаЗадачи.Элементы.Добавить("__ВедущаяЗадачаКартинка", Тип("ДекорацияФормы"), Родитель); Элемент.Вид = ВидДекорацииФормы.Картинка; Элемент.Картинка = БиблиотекаКартинок.Информация; - Элемент.Высота = 1; - Элемент.Ширина = 2; КонецЕсли; Элемент = ФормаЗадачи.Элементы.Найти("__ВедущаяЗадача"); @@ -68,10 +63,11 @@ Элемент.Вид = ВидДекорацииФормы.Надпись; Элемент.Заголовок = НСтр("ru ='Это ведущая задача для вложенных бизнес-процессов. Она будет выполнена автоматически при их завершении.'"); Элемент.Высота = 0; // автовысота + Элемент.АвтоМаксимальнаяШирина = Ложь; КонецЕсли; - КонецЕсли; + КонецЕсли; -КонецПроцедуры +КонецПроцедуры // Вызывается при создании формы списка задач на сервере. // @@ -444,7 +440,7 @@ // Проверяет у текущего пользователя наличие прав на изменение состояния бизнес-процесса. // // Параметры: -// БизнесПроцессОбъект - объект бизнес-процесса. +// БизнесПроцессОбъект - БизнесПроцессОбъект - объект бизнес-процесса. // Процедура ПроверитьПраваНаИзменениеСостоянияБизнесПроцесса(БизнесПроцессОбъект) Экспорт @@ -576,8 +572,8 @@ // Если группа еще не существует, то создается и возвращается новая. // // Параметры: -// РольИсполнителя - СправочникСсылка.РолиИсполнителей -// ОсновнойОбъектАдресации - ЛюбаяСсылка +// РольИсполнителя - СправочникСсылка.РолиИсполнителей. +// ОсновнойОбъектАдресации - ЛюбаяСсылка. // ДополнительныйОбъектАдресации - ЛюбаяСсылка. // // Возвращаемое значение: @@ -627,6 +623,168 @@ КонецФункции +//////////////////////////////////////////////////////////////////////////////// +// Отложенный старт бизнес-процессов. + +// Добавляет процесс в очередь для отложенного старта. +// +// Параметры: +// Процесс - БизнесПроцессСсылка. +// ДатаСтарта - Дата - дата отложенного старта. +// +Процедура ДобавитьПроцессДляОтложенногоСтарта(Процесс, ДатаСтарта) Экспорт + + Если Не ЗначениеЗаполнено(ДатаСтарта) ИЛИ Не ЗначениеЗаполнено(Процесс) Тогда + Возврат; + КонецЕсли; + + НаборЗаписей = РегистрыСведений.ПроцессыДляЗапуска.СоздатьНаборЗаписей(); + НаборЗаписей.Отбор.БизнесПроцесс.Установить(Процесс); + + Запись = НаборЗаписей.Добавить(); + Запись.БизнесПроцесс = Процесс; + Запись.ДатаОтложенногоСтарта = ДатаСтарта; + Запись.Состояние = Перечисления.СостоянияПроцессовДляЗапуска.ГотовКСтарту; + + НаборЗаписей.Записать(); + +КонецПроцедуры + +// Отключает отложенный старт процесс. +// +// Параметры: +// Процесс - БизнесПроцессСсылка. +// +Процедура ОтключитьОтложенныйСтартПроцесса(Процесс) Экспорт + + НастройкаСтарта = ПараметрыОтложенногоПроцесса(Процесс); + + Если НастройкаСтарта = Неопределено Тогда // Процесс не ожидает старта. + Возврат; + КонецЕсли; + + Если НастройкаСтарта.Состояние = ПредопределенноеЗначение("Перечисление.СостоянияПроцессовДляЗапуска.ГотовКСтарту") Тогда + НаборЗаписей = РегистрыСведений.ПроцессыДляЗапуска.СоздатьНаборЗаписей(); + НаборЗаписей.Отбор.БизнесПроцесс.Установить(Процесс); + НаборЗаписей.Записать(); + КонецЕсли; + +КонецПроцедуры + +// Стартует отложенный бизнес-процесс, устанавливая признак старта. +// +// Параметры: +// - БизнесПроцесс - БизнесПроцессОбъект - процесс, который следует запустить отложенно. +// +Процедура СтартоватьОтложенныйПроцесс(БизнесПроцесс) Экспорт + + НачатьТранзакцию(); + + Попытка + + ЗаблокироватьДанныеДляРедактирования(БизнесПроцесс); + + БизнесПроцессОбъект = БизнесПроцесс.ПолучитьОбъект(); + // Стартуем бизнес процесс и регистрируем этот старт в регистре. + БизнесПроцессОбъект.Старт(); + РегистрыСведений.ПроцессыДляЗапуска.ЗарегистрироватьСтартПроцесса(БизнесПроцесс); + + РазблокироватьДанныеДляРедактирования(БизнесПроцесс); + + ЗафиксироватьТранзакцию(); + + Исключение + + ОтменитьТранзакцию(); + + ОписаниеОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); + + ТекстОшибки = НСтр("ru = 'Во время отложенного старта этого процесса произошла ошибка: + |%1 + |Попробуйте запустить процесс вручную, а не отложенно.'"); + + Описание = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + ТекстОшибки, + ОписаниеОшибки); + + РегистрыСведений.ПроцессыДляЗапуска.ЗарегистрироватьОтменуСтарта(БизнесПроцесс, Описание); + + КонецПопытки; + +КонецПроцедуры + +// Возвращает сведения о запуске для процесса. +// +// Параметры: +// - Процесс - БизнесПроцессСсылка. +// +// Возвращаемое значение: +// - Неопределено - Возвращается если сведений нет. +// - Структура - Если есть. +// - БизнесПроцесс - БизнесПроцессСсылка. +// - ДатаОтложенногоСтарта - ДатаИВремя. +// - Состояние - ПеречислениеСсылка.СостоянияПроцессовДляЗапуска. +// - ПричинаОтменыСтарта - Строка - Причина отмены старта. +// +Функция ПараметрыОтложенногоПроцесса(Процесс) Экспорт + + Результат = Неопределено; + + Если Не ЗначениеЗаполнено(Процесс) Тогда + Возврат Результат; + КонецЕсли; + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ПроцессыДляЗапуска.БизнесПроцесс, + | ПроцессыДляЗапуска.ДатаОтложенногоСтарта, + | ПроцессыДляЗапуска.Состояние, + | ПроцессыДляЗапуска.ПричинаОтменыСтарта + |ИЗ + | РегистрСведений.ПроцессыДляЗапуска КАК ПроцессыДляЗапуска + |ГДЕ + | ПроцессыДляЗапуска.БизнесПроцесс = &БизнесПроцесс"; + Запрос.УстановитьПараметр("БизнесПроцесс", Процесс); + Выборка = Запрос.Выполнить().Выбрать(); + + Если Выборка.Следующий() Тогда + Результат = Новый Структура; + Результат.Вставить("БизнесПроцесс", Выборка.БизнесПроцесс); + Результат.Вставить("ДатаОтложенногоСтарта", Выборка.ДатаОтложенногоСтарта); + Результат.Вставить("Состояние", Выборка.Состояние); + Результат.Вставить("ПричинаОтменыСтарта", Выборка.ПричинаОтменыСтарта); + КонецЕсли; + + Возврат Результат; + +КонецФункции + +// Возвращает дату старта отложенного бизнес-процесса в том случае, +// когда БизнесПроцесс ожидает отложенного старта. +// В противном случае возвращает пустую дату. +// +// Параметры: +// - БизнесПроцесс +// +Функция ДатаОтложенногоСтартаПроцесса(БизнесПроцесс) Экспорт + + ДатаОтложенногоСтарта = '00010101'; + + Настройка = ПараметрыОтложенногоПроцесса(БизнесПроцесс); + + Если Настройка = Неопределено Тогда + Возврат ДатаОтложенногоСтарта; + КонецЕсли; + + Если Настройка.Состояние = ПредопределенноеЗначение("Перечисление.СостоянияПроцессовДляЗапуска.ГотовКСтарту") Тогда + ДатаОтложенногоСтарта = Настройка.ДатаОтложенногоСтарта; + КонецЕсли; + + Возврат ДатаОтложенногоСтарта; + +КонецФункции + //////////////////////////////////////////////////////////////////////////////// // Обработчики регламентных заданий. @@ -697,7 +855,7 @@ // // Параметры: // Параметры - Структура - структура параметров отложенного обработчика обновления. -// БизнесПроцесс - ОбъектМетаданных: БизнесПроцесс - метаданные бизнес-процесса, наборы значений доступа +// БизнесПроцесс - ОбъектМетаданных - метаданные бизнес-процесса, наборы значений доступа // которого требуется обновить. // ИмяПроцедуры - Строка - имя процедуры отложенного обработчика обновления для журнала регистрации. // РазмерПорции - Число - количество объектов, обрабатываемых за один вызов. @@ -853,7 +1011,7 @@ "БизнесПроцессыИЗадачиСервер"); КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ОчередьЗаданий") Тогда СерверныеОбработчики["СтандартныеПодсистемы.РаботаВМоделиСервиса.ОчередьЗаданий\ПриПолученииСпискаШаблонов"].Добавить( "БизнесПроцессыИЗадачиСервер"); КонецЕсли; @@ -1013,6 +1171,11 @@ Настройка.РегламентноеЗадание = Метаданные.РегламентныеЗадания.УведомлениеИсполнителейОНовыхЗадачах; Настройка.ФункциональнаяОпция = Метаданные.ФункциональныеОпции.ИспользоватьБизнесПроцессыИЗадачи; Настройка.РаботаетСВнешнимиРесурсами = Истина; + + Настройка = Настройки.Добавить(); + Настройка.РегламентноеЗадание = Метаданные.РегламентныеЗадания.СтартОтложенныхПроцессов; + Настройка.ФункциональнаяОпция = Метаданные.ФункциональныеОпции.ИспользоватьБизнесПроцессыИЗадачи; + КонецПроцедуры #КонецОбласти @@ -1047,6 +1210,7 @@ Процедура ПриПолученииСпискаШаблонов(Шаблоны) Экспорт Шаблоны.Добавить("МониторингЗадач"); + Шаблоны.Добавить("СтартОтложенныхПроцессов"); Шаблоны.Добавить("УведомлениеИсполнителейОНовыхЗадачах"); КонецПроцедуры @@ -2088,7 +2252,7 @@ // Пометить на удаление вложенные и подчиненные бизнес-процессы задачи ЗадачаСсылка. // // Параметры: -// ЗадачаСсылка - ЗадачаСсылка.ЗадачаИсполнителя +// ЗадачаСсылка - ЗадачаСсылка.ЗадачаИсполнителя. // НовоеЗначениеПометкиУдаления - Булево. // Процедура ПриПометкеУдаленияЗадачи(ЗадачаСсылка, НовоеЗначениеПометкиУдаления) Экспорт @@ -2298,14 +2462,30 @@ Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда Обработчик = Обработчики.Добавить(); - Обработчик.Версия = "2.3.2.21"; + Обработчик.Версия = "2.3.3.39"; Обработчик.Идентификатор = Новый УникальныйИдентификатор("80A64E76-12CC-4075-A80B-9EB93C411C85"); - Обработчик.Процедура = "БизнесПроцессыИЗадачиСервер.ОбновитьНаборыЗначенийДоступаЗаданий"; + Обработчик.Процедура = "БизнесПроцессы.Задание.ОбработатьДанныеДляПереходаНаНовуюВерсию"; Обработчик.Комментарий = НСтр("ru = 'Обновление прав доступа для бизнес-процесса ""Задание"". |До завершения обработки будут действовать прежние права доступа к заданиям.'"); Обработчик.РежимВыполнения = "Отложенно"; + Обработчик.ОчередьОтложеннойОбработки = 1; + Обработчик.ПроцедураЗаполненияДанныхОбновления = "БизнесПроцессы.Задание.ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию"; + Обработчик.ЧитаемыеОбъекты = "БизнесПроцесс.Задание"; + Обработчик.ИзменяемыеОбъекты = "БизнесПроцесс.Задание"; + Обработчик.ПроцедураПроверки = "ОбновлениеИнформационнойБазы.ДанныеОбновленыНаНовуюВерсиюПрограммы"; + Обработчик.БлокируемыеОбъекты = "БизнесПроцесс.Задание"; КонецЕсли; + Обработчик = Обработчики.Добавить(); + Обработчик.НачальноеЗаполнение = Истина; + Обработчик.Версия = "2.3.3.70"; + Обработчик.Процедура = "БизнесПроцессыИЗадачиСервер.ОбновитьИспользованиеРегламентныхЗаданий"; + Обработчик.ОбщиеДанные = Ложь; + Обработчик.РежимВыполнения = "Оперативно"; + Обработчик.Идентификатор = Новый УникальныйИдентификатор("86ec32f9-d28f-4282-1e6f-222a8653d2e0"); + Обработчик.Комментарий = + НСтр("ru = 'Определяет использование регламентного задания выполняющего старт отложенных бизнес-процессов.'"); + КонецПроцедуры // Инициализировать предопределенную роль исполнителей ОтветственныйЗаКонтрольИсполнения. @@ -2446,84 +2626,6 @@ КонецПроцедуры -Процедура ОбновитьНаборыЗначенийДоступаЗаданий(Параметры) Экспорт - - БизнесПроцесс = Метаданные.БизнесПроцессы.Задание; - ИмяПроцедуры = "БизнесПроцессыИЗадачиСервер.ОбновитьНаборыЗначенийДоступаЗаданий"; - - НачатьОбновлениеПорцииНаборовЗначенийДоступа(Параметры, БизнесПроцесс, ИмяПроцедуры, 1000); - Если Параметры.ОбработкаЗавершена Тогда - Возврат; - КонецЕсли; - - Для Каждого ЗаданиеСсылка Из Параметры.ОбъектыКОбработке Цикл - - Попытка - ОбновитьНаборыЗначенийДоступаЗадания(ЗаданиеСсылка); - Параметры.ОбъектовОбработано = Параметры.ОбъектовОбработано + 1; - Исключение - // Если не удалось обработать какой-либо объект, в следующий раз повторим попытку снова. - Параметры.ПроблемныеОбъекты.Добавить(ЗаданиеСсылка); - - ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Не удалось обновить права доступа для ""%1"" в обработчике ""%2"" по причине: - |%3'"), - ЗаданиеСсылка, ИмяПроцедуры, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение, - БизнесПроцесс, ЗаданиеСсылка, ТекстСообщения); - КонецПопытки; - - КонецЦикла; - - ЗавершитьОбновлениеПорцииНаборовЗначенийДоступа(Параметры); - -КонецПроцедуры - -Процедура ОбновитьНаборыЗначенийДоступаЗадания(ЗаданиеСсылка) - - МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом"); - НачатьТранзакцию(); - Попытка - - // Блокируем объект от изменения другими сеансами. - Блокировка = Новый БлокировкаДанных; - ЭлементБлокировки = Блокировка.Добавить("БизнесПроцесс.Задание"); - ЭлементБлокировки.УстановитьЗначение("Ссылка", ЗаданиеСсылка); - Блокировка.Заблокировать(); - - ЗаданиеОбъект = ЗаданиеСсылка.ПолучитьОбъект(); - // Если объект ранее был удален или обработан другими сеансами, пропускаем его. - Если ЗаданиеОбъект = Неопределено Тогда - ОтменитьТранзакцию(); - Возврат; - КонецЕсли; - Если ЗаданиеОбъект.ГруппаИсполнителейЗадач <> Справочники.ГруппыИсполнителейЗадач.ПустаяСсылка() Тогда - ОтменитьТранзакцию(); - Возврат; - КонецЕсли; - - ЗаданиеОбъект.ГруппаИсполнителейЗадач = ?(ТипЗнч(ЗаданиеОбъект.Исполнитель) = Тип("СправочникСсылка.РолиИсполнителей"), - ГруппаИсполнителейЗадач(ЗаданиеОбъект.Исполнитель, - ЗаданиеОбъект.ОсновнойОбъектАдресации, ЗаданиеОбъект.ДополнительныйОбъектАдресации), - ЗаданиеОбъект.Исполнитель); - ЗаданиеОбъект.ГруппаИсполнителейЗадачПроверяющий = ?(ТипЗнч(ЗаданиеОбъект.Проверяющий) = Тип("СправочникСсылка.РолиИсполнителей"), - ГруппаИсполнителейЗадач(ЗаданиеОбъект.Проверяющий, - ЗаданиеОбъект.ОсновнойОбъектАдресацииПроверяющий, ЗаданиеОбъект.ДополнительныйОбъектАдресацииПроверяющий), - ЗаданиеОбъект.Проверяющий); - - МодульУправлениеДоступом.ОбновитьНаборыЗначенийДоступа(ЗаданиеОбъект); - Если ЗаданиеОбъект.Модифицированность() Тогда - ОбновлениеИнформационнойБазы.ЗаписатьДанные(ЗаданиеОбъект); - КонецЕсли; - - ЗафиксироватьТранзакцию(); - Исключение - ОтменитьТранзакцию(); - ВызватьИсключение; - КонецПопытки; - -КонецПроцедуры - /////////////////////////////////////////////////////////////////////////////// // Обработчики условных вызовов в другие подсистемы. @@ -2574,4 +2676,18 @@ КонецПроцедуры +// [2.3.3.70] Актуализирует использование регламентного задания СтартОтложенныхПроцессов. +Процедура ОбновитьИспользованиеРегламентныхЗаданий() Экспорт + + ПараметрыПоиска = Новый Структура; + ПараметрыПоиска.Вставить("Метаданные", Метаданные.РегламентныеЗадания.СтартОтложенныхПроцессов); + СписокЗаданий = РегламентныеЗаданияСервер.НайтиЗадания(ПараметрыПоиска); + + ПараметрыЗадания = Новый Структура("Использование", ПолучитьФункциональнуюОпцию("ИспользоватьБизнесПроцессыИЗадачи")); + Для Каждого Задание Из СписокЗаданий Цикл + РегламентныеЗаданияСервер.ИзменитьЗадание(Задание, ПараметрыЗадания); + КонецЦикла; + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/CommonModules/БизнесПроцессыИЗадачиСобытия/Module.bsl b/SSL/src/CommonModules/БизнесПроцессыИЗадачиСобытия/Module.bsl index 05beea45e..996d2c922 100644 --- a/SSL/src/CommonModules/БизнесПроцессыИЗадачиСобытия/Module.bsl +++ b/SSL/src/CommonModules/БизнесПроцессыИЗадачиСобытия/Module.bsl @@ -73,4 +73,35 @@ КонецПроцедуры +// Обработчик регламентного задания СтартОтложенныхПроцессов +// +Процедура СтартОтложенныхПроцессов() Экспорт + + ОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(Метаданные.РегламентныеЗадания.СтартОтложенныхПроцессов); + + УстановитьПривилегированныйРежим(Истина); + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ПроцессыДляЗапуска.БизнесПроцесс КАК БизнесПроцесс + |ИЗ + | РегистрСведений.ПроцессыДляЗапуска КАК ПроцессыДляЗапуска + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ДанныеБизнесПроцессов КАК ДанныеБизнесПроцессов + | ПО ПроцессыДляЗапуска.БизнесПроцесс = ДанныеБизнесПроцессов.БизнесПроцесс + |ГДЕ + | ПроцессыДляЗапуска.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияПроцессовДляЗапуска.ГотовКСтарту) + | И ПроцессыДляЗапуска.ДатаОтложенногоСтарта <= &ТекущаяДата + | И ПроцессыДляЗапуска.ДатаОтложенногоСтарта <> ДАТАВРЕМЯ(1, 1, 1) + | И ДанныеБизнесПроцессов.ПометкаУдаления = ЛОЖЬ"; + Запрос.УстановитьПараметр("ТекущаяДата", ТекущаяДатаСеанса()); + + Выборка = Запрос.Выполнить().Выбрать(); + + Пока Выборка.Следующий() Цикл + БизнесПроцессыИЗадачиСервер.СтартоватьОтложенныйПроцесс(Выборка.БизнесПроцесс); + КонецЦикла; + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/CommonModules/ВариантыОтчетов/Module.bsl b/SSL/src/CommonModules/ВариантыОтчетов/Module.bsl index 637e44f53..6425e5e2e 100644 --- a/SSL/src/CommonModules/ВариантыОтчетов/Module.bsl +++ b/SSL/src/CommonModules/ВариантыОтчетов/Module.bsl @@ -187,26 +187,57 @@ // Параметры: // Настройки - Коллекция - Используется для описания настроек отчетов и вариантов. // Передается "как есть" из процедур НастроитьВариантыОтчетов и НастроитьВариантыОтчета. -// ОтчетЗначениеИлиМетаданные - ОбъектМетаданных, СправочникСсылка.ИдентификаторыОбъектовМетаданных - +// Отчет - ОбъектМетаданных, СправочникСсылка.ИдентификаторыОбъектовМетаданных - // Метаданные или ссылка отчета. // // Возвращаемое значение: -// СтрокаДереваЗначений - Отчет. -// См. "Реквизиты для изменения" функции ДеревоПредопределенных(). +// СтрокаДереваЗначений - Настройки отчета и настройки "по умолчанию" для вариантов этого отчета. +// Полученное значение можно использовать в функции ОписаниеВарианта() для получения настроек варианта. +// Реквизиты для изменения: +// * Включен - Булево - Если Ложь, то вариант отчета не регистрируется в подсистеме. +// * ВидимостьПоУмолчанию - Булево - Если Ложь, то вариант отчета по умолчанию скрыт в панели отчетов. +// * Размещение - Соответствие - Настройки размещения варианта отчета в разделах. +// ** Ключ - ОбъектМетаданных - Подсистема, в которой размещается отчет или вариант отчета. +// ** Значение - Строка - Настройки размещения в подсистеме (группе). +// *** "" - Вывод отчета в подсистеме без специального выделение. +// *** "Важный" - Вывод отчета в подсистеме с выделением жирным шрифтом. +// *** "СмТакже" - Вывод отчета в группе "См. также". +// * ФорматНастроекСКД - Булево - Отчет использует типовой формат хранения настроек на механике СКД, +// а его основные формы поддерживают стандартную схему взаимодействия между формами (параметры и тип возвращаемого значения). +// Если Ложь, тогда для отчета отключаются проверки консистентности и некоторые механизмы, которые рассчитывают на типовой формат. +// * ОпределитьНастройкиФормы - Булево - Отчет имеет программный интерфейс для тесной интеграции с формой отчета, +// в том числе может переопределять некоторые настройки формы и подписываться на ее события. +// Если Истина и отчет подключен к общей форме ФормаОтчета, +// тогда в модуле объекта отчета следует определить процедуру по шаблону: +// // Настройки общей формы отчета подсистемы "Варианты отчетов". +// // +// // Параметры: +// // Форма - УправляемаяФорма, Неопределено - Форма отчета или форма настроек отчета. +// // Неопределено когда вызов без контекста. +// // КлючВарианта - Строка, Неопределено - Имя предопределенного +// // или уникальный идентификатор пользовательского варианта отчета. +// // Неопределено когда вызов без контекста. +// // Настройки - Структура - см. возвращаемое значение +// // ОтчетыКлиентСервер.ПолучитьНастройкиОтчетаПоУмолчанию(). +// // +// Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт +// // Код процедуры. +// КонецПроцедуры +// Прочие реквизиты см. в описании функции ДеревоПредопределенных(). // -Функция ОписаниеОтчета(Настройки, ОтчетЗначениеИлиМетаданные) Экспорт - ЭтоМетаданные = (ТипЗнч(ОтчетЗначениеИлиМетаданные) = Тип("ОбъектМетаданных")); +Функция ОписаниеОтчета(Настройки, Отчет) Экспорт + ЭтоМетаданные = (ТипЗнч(Отчет) = Тип("ОбъектМетаданных")); Если ЭтоМетаданные Тогда - СтрокаОтчет = Настройки.Строки.Найти(ОтчетЗначениеИлиМетаданные, "Метаданные", Ложь); + СтрокаОтчет = Настройки.Строки.Найти(Отчет, "Метаданные", Ложь); Иначе - СтрокаОтчет = Настройки.Строки.Найти(ОтчетЗначениеИлиМетаданные, "Отчет", Ложь); + СтрокаОтчет = Настройки.Строки.Найти(Отчет, "Отчет", Ложь); КонецЕсли; Если СтрокаОтчет = Неопределено Тогда ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Ошибка получения описания отчета ""%1"": он не подключен к подсистеме ""%2"". |Проверьте свойство ""Хранилище вариантов"" в свойствах отчета.'"), - Строка(ОтчетЗначениеИлиМетаданные), + Строка(Отчет), ВариантыОтчетовКлиентСервер.НаименованиеПодсистемы("")); КонецЕсли; @@ -219,19 +250,38 @@ // Параметры: // Настройки - Коллекция - Используется для описания настроек отчетов и вариантов. // Передается "как есть" из процедур НастроитьВариантыОтчетов и НастроитьВариантыОтчета. -// ОтчетСтрокаДереваИлиЗначениеИлиМетаданные - СтрокаДерева, ОбъектМетаданных, -// СправочникСсылка.ИдентификаторыОбъектовМетаданных - Описание настроек, метаданные или ссылка отчета. +// Отчет - СтрокаДерева, ОбъектМетаданных - Описание настроек, метаданные или ссылка отчета. // КлючВарианта - Строка - Имя варианта отчета как оно задано в схеме компоновки данных. // -// Возвращаемое значение: -// СтрокаДереваЗначений - Вариант. -// См. "Реквизиты для изменения" функции ДеревоПредопределенных(). +// Возвращаемое значение: +// СтрокаДереваЗначений - Настройки варианта отчета. +// Реквизиты для изменения: +// * Включен - Булево - Если Ложь, то вариант отчета не регистрируется в подсистеме. +// * ВидимостьПоУмолчанию - Булево - Если Ложь, то вариант отчета по умолчанию скрыт в панели отчетов. +// * Наименование - Строка - Наименование варианта отчета. +// * Описание - Строка - Подсказка к варианту отчета. +// * Размещение - Соответствие - Настройки размещения варианта отчета в разделах. +// ** Ключ - ОбъектМетаданных - Подсистема, в которой размещается отчет или вариант отчета. +// ** Значение - Строка - Настройки размещения в подсистеме (группе). +// *** "" - Вывод варианта в подсистеме без специального выделение. +// *** "Важный" - Вывод варианта в подсистеме с выделением жирным шрифтом. +// *** "СмТакже" - Вывод варианта в группе "См. также". +// * ФункциональныеОпции - Массив из Строка - Имена функциональных опций варианта отчета. +// * НастройкиДляПоиска - Структура - Дополнительные настройки для поиска этого варианта отчета. +// Эти настройки необходимо задавать только если СКД не используется или используется не в полном объеме. +// Например, СКД может использоваться только для параметризации и получения данных, +// а вывод выполняться в фиксированный макет табличного документа. +// ** НаименованияПолей - Строка - Имена полей варианта отчета. +// ** НаименованияПараметровИОтборов - Строка - Имена настроек варианта отчета. +// ** КлючевыеСлова - Строка - Дополнительная терминология (в т.ч. специализированная или устаревшая). +// Разделитель терминов: Символы.ПС. +// Прочие реквизиты см. в описании функции ДеревоПредопределенных(). // -Функция ОписаниеВарианта(Настройки, ОтчетСтрокаДереваИлиЗначениеИлиМетаданные, КлючВарианта) Экспорт - Если ТипЗнч(ОтчетСтрокаДереваИлиЗначениеИлиМетаданные) = Тип("СтрокаДереваЗначений") Тогда - СтрокаОтчет = ОтчетСтрокаДереваИлиЗначениеИлиМетаданные; +Функция ОписаниеВарианта(Настройки, Отчет, КлючВарианта) Экспорт + Если ТипЗнч(Отчет) = Тип("СтрокаДереваЗначений") Тогда + СтрокаОтчет = Отчет; Иначе - СтрокаОтчет = ОписаниеОтчета(Настройки, ОтчетСтрокаДереваИлиЗначениеИлиМетаданные); + СтрокаОтчет = ОписаниеОтчета(Настройки, Отчет); КонецЕсли; Если КлючВарианта = "" Тогда @@ -306,7 +356,7 @@ КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// -// Для вызова из форм отчетов. +// Для вызова из отчетов. // Обновляет состав справочника ПользовательскиеНастройкиОтчетов после сохранения новой настройки. // Вызывается в одноименном обработчике формы отчета после выполнения кода формы. @@ -398,6 +448,75 @@ КонецПроцедуры +// Извлекает информация о таблицах, используемых в схеме или запросе. +// Обработка исключений (например, в случае передачи некорректного текста запроса) выполняется вызывающим кодом. +// +// Параметры: +// Объект - СхемаКомпоновкиДанных, Строка - Схема отчета или текст запроса. +// +// Возвращаемое значение: +// Массив - Имена таблиц, используемые в схеме или запросе. +// +// Примеры: +// 1. Вызов из собственной формы отчета, использующего СКД. +// ИспользуемыеТаблицы = ВариантыОтчетов.ИспользуемыеТаблицы(РеквизитФормыВЗначение("Отчет").СхемаКомпоновкиДанных); +// ВариантыОтчетов.ПроверитьИспользуемыеТаблицы(ИспользуемыеТаблицы); +// 2. Вызов из обработчика ПриКомпоновкеРезультата отчета, использующего СКД. +// ИспользуемыеТаблицы = ВариантыОтчетов.ИспользуемыеТаблицы(ЭтотОбъект.СхемаКомпоновкиДанных); +// ВариантыОтчетов.ПроверитьИспользуемыеТаблицы(ИспользуемыеТаблицы); +// 3. Вызов из обработчика ПриКомпоновкеРезультата отчета, использующего запрос. +// ИспользуемыеТаблицы = ВариантыОтчетов.ИспользуемыеТаблицы(ТекстЗапроса); +// ВариантыОтчетов.ПроверитьИспользуемыеТаблицы(ИспользуемыеТаблицы); +// +Функция ИспользуемыеТаблицы(Объект) Экспорт + Таблицы = Новый Массив; + Если ТипЗнч(Объект) = Тип("СхемаКомпоновкиДанных") Тогда + ЗарегистрироватьТаблицыНаборовДанных(Таблицы, Объект.НаборыДанных); + ИначеЕсли ТипЗнч(Объект) = Тип("Строка") Тогда + ЗарегистрироватьТаблицыЗапроса(Таблицы, Объект); + КонецЕсли; + Возврат Таблицы; +КонецФункции + +// Проверяет что таблицы, используемые в схеме или запросе, еще обновляются, и сообщает об этом пользователю. +// Проверка выполняется методом ОбновлениеИнформационнойБазы.ОбъектОбработан(). +// Обработка исключений (например, в случае передачи некорректного текста запроса) выполняется вызывающим кодом. +// +// Параметры: +// Объект - Массив из Строка - Имена таблиц, используемые отчетом. +// - СхемаКомпоновкиДанных, Строка - Схема отчета или текст запроса. +// Сообщать - Булево - Когда Истина и таблицы, используемые отчетом, еще не обновлены, +// то будет выведено сообщение вида "Отчет может содержать некорректные данные". +// Необязательный. По умолчанию Истина. +// +// Возвращаемое значение: +// Булево - Истина когда в списке таблиц есть таблицы, которые еще не обновлены. +// +// Примеры: +// 1. Вызов из собственной формы отчета. +// ВариантыОтчетов.ПроверитьИспользуемыеТаблицы(РеквизитФормыВЗначение("Отчет").СхемаКомпоновкиДанных); +// 2. Вызов из обработчика ПриКомпоновкеРезультата отчета. +// ВариантыОтчетов.ПроверитьИспользуемыеТаблицы(ЭтотОбъект.СхемаКомпоновкиДанных); +// 3. Вызов при выполнении запроса. +// ВариантыОтчетов.ПроверитьИспользуемыеТаблицы(ТекстЗапроса); +// +Функция ПроверитьИспользуемыеТаблицы(Объект, Сообщать = Истина) Экспорт + Если ТипЗнч(Объект) = Тип("Массив") Тогда + ИспользуемыеТаблицы = Объект; + Иначе + ИспользуемыеТаблицы = ИспользуемыеТаблицы(Объект); + КонецЕсли; + Для Каждого ПолноеИмя Из ИспользуемыеТаблицы Цикл + Если Не ОбновлениеИнформационнойБазы.ОбъектОбработан(ПолноеИмя).Обработан Тогда + Если Сообщать Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СообщениеДанныеЕщеОбновляются()); + КонецЕсли; + Возврат Истина; + КонецЕсли; + КонецЦикла; + Возврат Ложь; +КонецФункции + //////////////////////////////////////////////////////////////////////////////// // Для вызова из события "ПриДобавленииОбработчиковОбновления" конфигурации. @@ -476,7 +595,15 @@ // * Прочие - Булево - (Истина) Сбрасывать прочие настройки, не описанные в структуре явно. // Процедура СброситьПользовательскиеНастройки(Ключ, ТипыНастроек = Неопределено) Экспорт - КлючиВариантов = Новый Массив; + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр( + "ВариантыОтчетов.СброситьПользовательскиеНастройки", + "Ключ", + Ключ, + Новый ОписаниеТипов("Строка, ОбъектМетаданных, СправочникСсылка.ВариантыОтчетов")); + + КлючиВариантов = Новый Массив; // Конечный список очищаемых ключей. + + // Список ключей может быть заполнен из запроса или извне можно передать один конкретный ключ. Запрос = Новый Запрос; ШаблонЗапроса = "ВЫБРАТЬ @@ -490,15 +617,17 @@ Запрос.Текст = СтрЗаменить(ШаблонЗапроса, "&Условие", "ТипОтчета = ЗНАЧЕНИЕ(Перечисление.ТипыОтчетов.Внутренний)"); ИначеЕсли ТипЗнч(Ключ) = Тип("ОбъектМетаданных") Тогда Запрос.Текст = СтрЗаменить(ШаблонЗапроса, "&Условие", "Отчет = &Отчет"); - Запрос.УстановитьПараметр("Отчет", ОбщегоНазначения.ИдентификаторОбъектаМетаданных(Ключ)); + Запрос.УстановитьПараметр("Отчет", СтандартныеПодсистемыСервер.ИдентификаторОбъектаМетаданных(Ключ)); ИначеЕсли ТипЗнч(Ключ) = Тип("СправочникСсылка.ВариантыОтчетов") Тогда Запрос.Текст = СтрЗаменить(ШаблонЗапроса, "&Условие", "Ссылка = &Ссылка"); Запрос.УстановитьПараметр("Ссылка", Ключ); ИначеЕсли ТипЗнч(Ключ) = Тип("Строка") Тогда КлючиВариантов.Добавить(Ключ); Иначе - ВызватьИсключение НСтр("ru = 'Некорректное значение параметра ""Отчет""'"); + ВызватьИсключение НСтр("ru = 'Некорректный тип параметра ""Отчет""'"); КонецЕсли; + + Если Не ПустаяСтрока(Запрос.Текст) Тогда Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл @@ -849,9 +978,13 @@ // то настройки размещения можно взять только из метаданных отчета. Найденные = ПодсистемыОтчетов.НайтиСтроки(Новый Структура("ОтчетПолноеИмя", СтрокаТаблицы.ОтчетПолноеИмя)); Для Каждого СтрокаПодсистема Из Найденные Цикл + СсылкаПодсистемы = СтандартныеПодсистемыСервер.ИдентификаторОбъектаМетаданных(СтрокаПодсистема.ПодсистемаМетаданные); + Если ТипЗнч(СсылкаПодсистемы) = Тип("Строка") Тогда + Продолжить; + КонецЕсли; СтрокаРаздел = ВариантОбъект.Размещение.Добавить(); СтрокаРаздел.Использование = Истина; - СтрокаРаздел.Подсистема = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(СтрокаПодсистема.ПодсистемаМетаданные); + СтрокаРаздел.Подсистема = СсылкаПодсистемы; КонецЦикла; ВариантОбъект.Записать(); @@ -875,14 +1008,15 @@ // СЕРВЕРНЫЕ СОБЫТИЯ. - // Содержит настройки размещения вариантов отчетов в панели отчетов. + // Определяет настройки вариантов отчетов. // - // Параметры: - // Настройки - Коллекция - Содержит настройки всех отчетов и вариантов конфигурации. - // Используется для передачи в параметрах вспомогательных методов. - // - // Описание: - // См. ВариантыОтчетовПереопределяемый.НастроитьВариантыОтчетов(). + // Синтаксис: + // // См. ВариантыОтчетовПереопределяемый.НастроитьВариантыОтчетов(). + // Процедура ПриНастройкеВариантовОтчетов(Настройки) Экспорт + // // Пример: + // МодульВариантыОтчетов = ОбщегоНазначения.ОбщийМодуль("ВариантыОтчетов"); + // МодульВариантыОтчетов.НастроитьОтчетВМодулеМенеджера(Настройки, Метаданные.Отчеты.<ИмяОтчета>); + // КонецПроцедуры // // Вспомогательные методы: // 1. Функции ОписаниеОтчета и ОписаниеВарианта формируют описание настроек отчета и варианта для последующего изменения: @@ -898,24 +1032,23 @@ // 3. Процедура НастроитьОтчетВМодулеМенеджера позволяет переопределять настройки отчета в его модуле менеджера: // ВариантыОтчетов.НастроитьОтчетВМодулеМенеджера(Настройки, Метаданные.Отчеты.<ИмяОтчета>); // - СерверныеСобытия.Добавить( - "СтандартныеПодсистемы.ВариантыОтчетов\ПриНастройкеВариантовОтчетов"); + СерверныеСобытия.Добавить("СтандартныеПодсистемы.ВариантыОтчетов\ПриНастройкеВариантовОтчетов"); // Регистрация изменений в именах вариантов отчетов. - // Используется в обработчиках обновления, в целях контроля ссылочной целостности - // и для сохранения настроек, сделанных администратором для предопределенных вариантов. + // Используется в обработчиках обновления в целях ссылочной целостности, + // в том числе для сохранения пользовательских настроек и настроек рассылок отчетов. // - // Параметры: - // Изменения - ТаблицаЗначений - Изменения в именах вариантов отчетов. - // * Отчет - ОбъектМетаданных - Метаданные отчета, в схеме которого изменилось имя варианта. - // * СтароеИмяВарианта - Строка - Старое имя варианта, до изменения. - // * АктуальноеИмяВарианта - Строка - Текущее (последнее актуальное) имя варианта. + // Синтаксис: + // // См. ВариантыОтчетовПереопределяемый.ЗарегистрироватьИзмененияКлючейВариантовОтчетов(). + // Процедура ПриРегистрацииИзмененийИменВариантовОтчетов(Изменения) Экспорт + // // Пример: + // Изменение = Изменения.Добавить(); + // Изменение.Отчет = Метаданные.Отчеты.<ИмяОтчета>; + // Изменение.СтароеИмяВарианта = "<СтароеИмяВарианта>"; + // Изменение.АктуальноеИмяВарианта = "<АктуальноеИмяВарианта>"; + // КонецПроцедуры // - // Описание: - // См. ВариантыОтчетовПереопределяемый.ЗарегистрироватьИзмененияКлючейВариантовОтчетов(). - // - СерверныеСобытия.Добавить( - "СтандартныеПодсистемы.ВариантыОтчетов\ПриРегистрацииИзмененийИменВариантовОтчетов"); + СерверныеСобытия.Добавить("СтандартныеПодсистемы.ВариантыОтчетов\ПриРегистрацииИзмененийИменВариантовОтчетов"); КонецПроцедуры @@ -1062,6 +1195,8 @@ ОбщегоНазначения.ДобавитьПереименование( Итог, "2.1.0.2", "Роль.ЧтениеВариантовОтчетов", "Роль.ИспользованиеВариантовОтчетов", Библиотека); + ОбщегоНазначения.ДобавитьПереименование( + Итог, "2.3.3.3", "Роль.ИспользованиеВариантовОтчетов", "Роль.ДобавлениеИзменениеЛичныхВариантовОтчетов", Библиотека); КонецПроцедуры @@ -1185,10 +1320,10 @@ КонецЕсли; Если НадоПрочитатьНастройки Тогда Результат.НастройкиКД = СвойстваВарианта.Настройки.Получить(); + НадоПрочитатьНастройки = (ТипЗнч(Результат.НастройкиКД) <> Тип("НастройкиКомпоновкиДанных")); КонецЕсли; КонецЕсли; - // Подключение объекта отчета. Если Результат.Объект = Неопределено Тогда ПодключениеОтчета = ПодключитьОтчетОбъект(Результат.СсылкаОтчета, Истина); Если Не ПодключениеОтчета.Успех Тогда @@ -1197,21 +1332,33 @@ КонецЕсли; ЗаполнитьЗначенияСвойств(Результат, ПодключениеОтчета, "Объект, Метаданные, ПолноеИмя"); ПодключениеОтчета.Очистить(); + ПодключениеОтчета = Неопределено; + ИначеЕсли Результат.ПолноеИмя = Неопределено Тогда + Результат.Метаданные = Результат.Объект.Метаданные(); + Результат.ПолноеИмя = Результат.Метаданные.ПолноеИмя(); КонецЕсли; - Если Результат.Объект.СхемаКомпоновкиДанных = Неопределено Тогда + ОтчетОбъект = Результат.Объект; + КомпоновщикНастроекКД = ОтчетОбъект.КомпоновщикНастроек; + + ОтчетыСНастройками = ВариантыОтчетовПовтИсп.Параметры().ОтчетыСНастройками; + Если ОтчетыСНастройками.Найти(Результат.СсылкаОтчета) <> Неопределено Тогда + ОтчетОбъект.ОпределитьНастройкиФормы(Неопределено, Результат.КлючВарианта, Результат.НастройкиФормы); + КонецЕсли; + + Если ОтчетОбъект.СхемаКомпоновкиДанных = Неопределено Тогда Результат.Успех = Истина; Возврат Результат; КонецЕсли; - ОтчетОбъект = Результат.Объект; - // Чтение настроек. - Если ТипЗнч(Результат.НастройкиКД) <> Тип("НастройкиКомпоновкиДанных") Тогда - ВариантНастроекКД = ОтчетОбъект.СхемаКомпоновкиДанных.ВариантыНастроек.Найти(Результат.КлючВарианта); + Если НадоПрочитатьНастройки Тогда + ВариантыНастроекКД = ОтчетОбъект.СхемаКомпоновкиДанных.ВариантыНастроек; + ВариантНастроекКД = ВариантыНастроекКД.Найти(Результат.КлючВарианта); Если ВариантНастроекКД = Неопределено Тогда Результат.ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Вариант ""%1"" не найден в схеме отчета ""%2"".'"), + НСтр("ru = 'Вариант ""%1"" (ключ ""%2"") не найден в схеме отчета ""%3"".'"), + Строка(Результат.СсылкаВарианта), Результат.КлючВарианта, Строка(Результат.СсылкаОтчета)); Возврат Результат; @@ -1220,14 +1367,6 @@ КонецЕсли; // Инициализация схемы. - КомпоновщикНастроекКД = ОтчетОбъект.КомпоновщикНастроек; - - ФиксированныеНастройкиКД = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "ФиксированныеНастройкиКД"); - Если ТипЗнч(ФиксированныеНастройкиКД) = Тип("НастройкиКомпоновкиДанных") - И КомпоновщикНастроекКД.ФиксированныеНастройки <> ФиксированныеНастройкиКД Тогда - КомпоновщикНастроекКД.ЗагрузитьФиксированныеНастройки(ФиксированныеНастройкиКД); - КонецЕсли; - АдресСхемыЗаполнен = (ТипЗнч(Результат.АдресСхемы) = Тип("Строка") И ЭтоАдресВременногоХранилища(Результат.АдресСхемы)); Если АдресСхемыЗаполнен И ТипЗнч(Результат.СхемаКД) <> Тип("СхемаКомпоновкиДанных") Тогда Результат.СхемаКД = ПолучитьИзВременногоХранилища(Результат.АдресСхемы); @@ -1254,32 +1393,24 @@ КонецЕсли; // Чтение настроек. - ОтчетыСНастройками = ВариантыОтчетовПовтИсп.Параметры().ОтчетыСНастройками; - Если ОтчетыСНастройками.Найти(Результат.СсылкаОтчета) <> Неопределено Тогда - ОтчетОбъект.ОпределитьНастройкиФормы(Неопределено, Результат.КлючВарианта, Результат.НастройкиФормы); - Если Результат.НастройкиФормы.События.ПередЗагрузкойНастроекВКомпоновщик Тогда - КлючСхемы = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "КлючСхемы"); - ОтчетОбъект.ПередЗагрузкойНастроекВКомпоновщик( - Результат, - КлючСхемы, - Результат.КлючВарианта, - Результат.НастройкиКД, - Результат.ПользовательскиеНастройкиКД); - КонецЕсли; + Если Результат.НастройкиФормы.События.ПередЗагрузкойНастроекВКомпоновщик Тогда + КлючСхемы = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "КлючСхемы"); + ОтчетОбъект.ПередЗагрузкойНастроекВКомпоновщик( + Результат, + КлючСхемы, + Результат.КлючВарианта, + Результат.НастройкиКД, + Результат.ПользовательскиеНастройкиКД); КонецЕсли; - Если ТипЗнч(Результат.НастройкиКД) = Тип("НастройкиКомпоновкиДанных") - И КомпоновщикНастроекКД.Настройки <> Результат.НастройкиКД Тогда - Если ТипЗнч(Результат.ПользовательскиеНастройкиКД) <> Тип("ПользовательскиеНастройкиКомпоновкиДанных") Тогда - Результат.ПользовательскиеНастройкиКД = КомпоновщикНастроекКД.ПользовательскиеНастройки; - КонецЕсли; - КомпоновщикНастроекКД.ЗагрузитьНастройки(Результат.НастройкиКД); - КонецЕсли; - Если ТипЗнч(Результат.ПользовательскиеНастройкиКД) = Тип("ПользовательскиеНастройкиКомпоновкиДанных") - И КомпоновщикНастроекКД.ПользовательскиеНастройки <> Результат.ПользовательскиеНастройкиКД Тогда - КомпоновщикНастроекКД.ЗагрузитьПользовательскиеНастройки(Результат.ПользовательскиеНастройкиКД); + ФиксированныеНастройкиКД = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "ФиксированныеНастройкиКД"); + Если ТипЗнч(ФиксированныеНастройкиКД) = Тип("НастройкиКомпоновкиДанных") + И КомпоновщикНастроекКД.ФиксированныеНастройки <> ФиксированныеНастройкиКД Тогда + КомпоновщикНастроекКД.ЗагрузитьФиксированныеНастройки(ФиксированныеНастройкиКД); КонецЕсли; + ОтчетыКлиентСервер.ЗагрузитьНастройки(КомпоновщикНастроекКД, Результат.НастройкиКД, Результат.ПользовательскиеНастройкиКД); + Результат.Успех = Истина; Возврат Результат; КонецФункции @@ -1372,12 +1503,14 @@ КонецЕсли; ПометкаУдаления = ТекущийОбъект.ПометкаУдаления; - Если Не ТекущийОбъект.ИспользуетХранилищеВариантов Или Не ТекущийОбъект.ДополнительныеСвойства.ПубликацияИспользуется Тогда + Если ВнешнийОбъект = Неопределено + Или Не ТекущийОбъект.ИспользуетХранилищеВариантов + Или Не ТекущийОбъект.ДополнительныеСвойства.ПубликацияИспользуется Тогда ПометкаУдаления = Истина; КонецЕсли; ПредопределенныеВарианты = Новый СписокЗначений; - Если ТекущийОбъект.ИспользуетХранилищеВариантов Тогда + Если ПометкаУдаления = Ложь И ВнешнийОбъект <> Неопределено Тогда ОтчетМетаданные = ВнешнийОбъект.Метаданные(); СхемаКДМетаданные = ОтчетМетаданные.ОсновнаяСхемаКомпоновкиДанных; Если СхемаКДМетаданные <> Неопределено Тогда @@ -1558,7 +1691,7 @@ // СовместноДляПользователейИВнешнихПользователей. НазначениеРолей.СовместноДляПользователейИВнешнихПользователей.Добавить( - Метаданные.Роли.ИспользованиеВариантовОтчетов.Имя); + Метаданные.Роли.ДобавлениеИзменениеЛичныхВариантовОтчетов.Имя); КонецПроцедуры @@ -1615,27 +1748,23 @@ ПараметрыОткрытия.Подключен = Истина; // Отчеты конфигурации всегда подключены. ИначеЕсли ПараметрыОткрытия.ТипОтчета = "Расширение" Тогда Если Метаданные.Отчеты.Найти(ПараметрыОткрытия.ИмяОтчета) = Неопределено Тогда - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение(ПараметрыОткрытия, - НСтр("ru = 'Отчет ""%1"" не найден в программе. - |Возможно, расширение с отчетом было отключено.'")); - Иначе - ПараметрыОткрытия.Подключен = Истина; + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось открыть отчет ""%1"". + |Возможно, было отключено расширение конфигурации с этим отчетом.'"), + ПараметрыОткрытия.ИмяОтчета); КонецЕсли; + ПараметрыОткрытия.Подключен = Истина; ИначеЕсли ПараметрыОткрытия.ТипОтчета = "Дополнительный" Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки"); МодульДополнительныеОтчетыИОбработки.ПриПодключенииОтчета(ПараметрыОткрытия); - Иначе - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение(ПараметрыОткрытия, - НСтр("ru = 'Невозможно открыть вариант дополнительного отчета'"), - НСтр("ru = 'Не внедрена обслуживающая подсистема.'")); КонецЕсли; КонецЕсли; КонецПроцедуры // См. описание в процедуре ЗаполнитьВсеПараметрыРаботыРасширений -// общего модуля СтандартныеПодсистемыСервер. +// модуля менеджера регистра сведений ПараметрыРаботыВерсийРасширений. // Процедура ПриЗаполненииВсехПараметровРаботыРасширений() Экспорт @@ -1654,7 +1783,7 @@ КонецПроцедуры // См. описание в процедуре ОчиститьВсеПараметрыРаботыРасширений -// общего модуля СтандартныеПодсистемыСервер. +// модуля менеджера регистра сведений ПараметрыРаботыВерсийРасширений. // Процедура ПриОчисткеВсехПараметровРаботыРасширений() Экспорт @@ -1680,12 +1809,6 @@ // * Отложенное - Булево - Необязательный. Отложенное обновление данных. // * Полное - Булево - Необязательный. Не учитывать хеш-суммы при отложенном обновление данных. // -// На развитие: -// * ТипОтчета - Строка - "*", "Внутренний", "Расширения" - Обязательный. Обновлять кэши метаданных конфигурации. -// * ТипДанных - Строка - "*", "ОперативныеОбщие", "ОперативныеПользовательские", "ОтложенныеИнкрементально", "ОтложенныеПолностью" - Обязательный. Какие данные обновлять. -// Данные обновляются с учетом текущего разделения. -// Из разделенного сеанса - только разделенные данные, из неразделенного - только неразделенные. -// Функция Обновить(Настройки = Неопределено) Экспорт Если Настройки = Неопределено Тогда @@ -1873,8 +1996,15 @@ Результат.ВариантМодифицирован = Ложь; Результат.ПользовательскиеНастройкиМодифицированы = Ложь; Результат.ДанныеЕщеОбновляются = Ложь; + Если ПолучатьФлажокПустой Тогда + Результат.Вставить("Пустой", Ложь); + КонецЕсли; - Подключение = ПодключитьОтчетИЗагрузитьНастройки(Параметры); + Если Параметры.Свойство("Подключение") Тогда + Подключение = Параметры.Подключение; + Иначе + Подключение = ПодключитьОтчетИЗагрузитьНастройки(Параметры); + КонецЕсли; ЗаполнитьЗначенияСвойств(Результат, Подключение); // , "Объект, Метаданные, ПолноеИмя, КлючВарианта, СхемаКД, АдресСхемы, СхемаМодифицирована, НастройкиФормы" Если Не Подключение.Успех Тогда Результат.ТекстОшибки = НСтр("ru = 'Не удалось сформировать отчет:'") + Символы.ПС + Подключение.ТекстОшибки; @@ -1904,19 +2034,18 @@ КонецЕсли; // Проверка корректности данных, по которым формируется отчет. - - ИспользуемыеТаблицы = Новый Массив; - ИспользуемыеТаблицы.Добавить(Результат.ПолноеИмя); - Если Результат.НастройкиФормы.События.ПриОпределенииИспользуемыхТаблиц Тогда - ОтчетОбъект.ПриОпределенииИспользуемыхТаблиц(Результат.КлючВарианта, ИспользуемыеТаблицы); - КонецЕсли; - Для Каждого ПолноеИмя Из ИспользуемыеТаблицы Цикл - Проверка = ОбновлениеИнформационнойБазы.ОбъектОбработан(ПолноеИмя); - Если Не Проверка.Обработан Тогда - Результат.ДанныеЕщеОбновляются = Истина; - Прервать; + Попытка + ИспользуемыеТаблицы = ИспользуемыеТаблицы(Результат.СхемаКД); + ИспользуемыеТаблицы.Добавить(Результат.ПолноеИмя); + Если Результат.НастройкиФормы.События.ПриОпределенииИспользуемыхТаблиц Тогда + ОтчетОбъект.ПриОпределенииИспользуемыхТаблиц(Результат.КлючВарианта, ИспользуемыеТаблицы); КонецЕсли; - КонецЦикла; + Результат.ДанныеЕщеОбновляются = ПроверитьИспользуемыеТаблицы(ИспользуемыеТаблицы, Ложь); + Исключение + ТекстОшибки = НСтр("ru = 'Не удалось определить используемые таблицы:'"); + ТекстОшибки = ТекстОшибки + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); + ОшибкаПоВарианту(Результат.СсылкаВарианта, ТекстОшибки); + КонецПопытки; // Формирование и оценка скорости. @@ -1924,16 +2053,17 @@ ВыполнятьЗамеры = ТипЗнч(ИмяКлючевойОперации) = Тип("Строка") И Не ПустаяСтрока(ИмяКлючевойОперации) И ВыполнятьЗамеры(); Если ВыполнятьЗамеры Тогда КомментарийКлючевойОперации = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "КомментарийКлючевойОперации"); - ВремяНачала = ТекущаяУниверсальнаяДатаВМиллисекундах(); + МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности"); + ВремяНачала = МодульОценкаПроизводительности.НачатьЗамерВремени(); КонецЕсли; ОтчетОбъект.СкомпоноватьРезультат(Результат.ТабличныйДокумент, Результат.Расшифровка); Если ВыполнятьЗамеры Тогда - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремениТехнологический( + МодульОценкаПроизводительности.ЗакончитьЗамерВремениТехнологический( ИмяКлючевойОперации, - ВремяНачала/1000, + ВремяНачала, + 1, КомментарийКлючевойОперации); КонецЕсли; @@ -1968,6 +2098,137 @@ Возврат Результат; КонецФункции +// Детализирует доступность отчетов по правам и функциональным опциям. +Функция ДоступностьОтчетов(СсылкаИлиМассивСсылок) Экспорт + // Поддержка передачи 1 ссылки, а не массива. + Если ТипЗнч(СсылкаИлиМассивСсылок) <> Тип("Массив") Тогда + Массив = Новый Массив; + Массив.Добавить(СсылкаИлиМассивСсылок); + Доступность = ДоступностьОтчетов(Массив); + Возврат Доступность[0]; + КонецЕсли; + + Результат = Новый ТаблицаЗначений; + Результат.Колонки.Добавить("Ссылка"); + Результат.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); + Результат.Колонки.Добавить("Отчет", Метаданные.Справочники.ВариантыОтчетов.Реквизиты.Отчет.Тип); + Результат.Колонки.Добавить("ТипОтчетаСтрокой", Новый ОписаниеТипов("Строка")); + Результат.Колонки.Добавить("Доступен", Новый ОписаниеТипов("Булево")); + + СсылкиВариантов = Новый Массив; + СсылкиОтчетовКонфигурации = Новый Массив; + СсылкиОтчетовРасширений = Новый Массив; + СсылкиДопОтчетов = Новый Массив; + + УстановитьПривилегированныйРежим(Истина); + Для Каждого Ссылка Из СсылкаИлиМассивСсылок Цикл + Если Результат.Найти(Ссылка, "Ссылка") <> Неопределено Тогда + Продолжить; + КонецЕсли; + СтрокаТаблицы = Результат.Добавить(); + СтрокаТаблицы.Ссылка = Ссылка; + СтрокаТаблицы.Представление = Строка(Ссылка); + Тип = ТипЗнч(Ссылка); + Если Тип = Тип("СправочникСсылка.ВариантыОтчетов") Тогда + ДобавитьВМассив(СсылкиВариантов, Ссылка); + Иначе + СтрокаТаблицы.Отчет = Ссылка; + СтрокаТаблицы.ТипОтчетаСтрокой = ВариантыОтчетовКлиентСервер.ТипОтчетаСтрокой(Тип, СтрокаТаблицы.Отчет); + Если СтрокаТаблицы.ТипОтчетаСтрокой = "Внутренний" Тогда + ДобавитьВМассив(СсылкиОтчетовКонфигурации, СтрокаТаблицы.Отчет); + ИначеЕсли СтрокаТаблицы.ТипОтчетаСтрокой = "Расширение" Тогда + ДобавитьВМассив(СсылкиОтчетовРасширений, СтрокаТаблицы.Отчет); + ИначеЕсли СтрокаТаблицы.ТипОтчетаСтрокой = "Дополнительный" Тогда + ДобавитьВМассив(СсылкиДопОтчетов, СтрокаТаблицы.Отчет); + КонецЕсли; + КонецЕсли; + КонецЦикла; + УстановитьПривилегированныйРежим(Ложь); + + Если СсылкиВариантов.Количество() > 0 Тогда + ЗначенияРеквизитовВариантов = ЗначенияРеквизитовОбъектов(СсылкиВариантов, "Отчет"); + Для Каждого Ссылка Из СсылкиВариантов Цикл + СтрокаТаблицы = Результат.Найти(Ссылка, "Ссылка"); + ЗначенияРеквизитов = ЗначенияРеквизитовВариантов[Ссылка]; + Если ЗначенияРеквизитов = Неопределено Тогда + СтрокаТаблицы.Представление = НСтр("ru = '<Недостаточно прав для работы с вариантом отчета>'"); + Иначе + СтрокаТаблицы.Отчет = ЗначенияРеквизитов.Отчет; + СтрокаТаблицы.ТипОтчетаСтрокой = ВариантыОтчетовКлиентСервер.ТипОтчетаСтрокой(Неопределено, СтрокаТаблицы.Отчет); + Если СтрокаТаблицы.ТипОтчетаСтрокой = "Внутренний" Тогда + ДобавитьВМассив(СсылкиОтчетовКонфигурации, СтрокаТаблицы.Отчет); + ИначеЕсли СтрокаТаблицы.ТипОтчетаСтрокой = "Расширение" Тогда + ДобавитьВМассив(СсылкиОтчетовРасширений, СтрокаТаблицы.Отчет); + ИначеЕсли СтрокаТаблицы.ТипОтчетаСтрокой = "Дополнительный" Тогда + ДобавитьВМассив(СсылкиДопОтчетов, СтрокаТаблицы.Отчет); + КонецЕсли; + КонецЕсли; + КонецЦикла; + КонецЕсли; + + Если СсылкиОтчетовКонфигурации.Количество() > 0 Тогда + ПриОпределенииДоступностиОтчетов(СсылкиОтчетовКонфигурации, Результат); + КонецЕсли; + + Если СсылкиОтчетовРасширений.Количество() > 0 Тогда + ПриОпределенииДоступностиОтчетов(СсылкиОтчетовРасширений, Результат); + КонецЕсли; + + Если СсылкиДопОтчетов.Количество() > 0 Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда + МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки"); + МодульДополнительныеОтчетыИОбработки.ПриОпределенииДоступностиОтчетов(СсылкиДопОтчетов, Результат); + КонецЕсли; + КонецЕсли; + + Возврат Результат; +КонецФункции + +// Обработчик определения доступности отчетов конфигурации и расширений. +Процедура ПриОпределенииДоступностиОтчетов(СсылкиОтчетов, Результат) + ЗначенияРеквизитовОтчетов = ЗначенияРеквизитовОбъектов(СсылкиОтчетов, "Имя"); + Для Каждого Отчет Из СсылкиОтчетов Цикл + ЗначенияРеквизитов = ЗначенияРеквизитовОтчетов[Отчет]; + ДоступенПоRLS = Истина; + ДоступенПоПравам = Истина; + ДоступенПоОпциям = Истина; + НайденВПрограмме = Истина; + Если ЗначенияРеквизитов = Неопределено Тогда + ДоступенПоRLS = Ложь; + Иначе + ИмяОтчета = ЗначенияРеквизитов.Имя; + ОтчетМетаданные = Метаданные.Отчеты.Найти(ИмяОтчета); + Если ОтчетМетаданные = Неопределено Тогда + НайденВПрограмме = Ложь; + ИначеЕсли Не ПравоДоступа("Просмотр", ОтчетМетаданные) Тогда + ДоступенПоПравам = Ложь; + ИначеЕсли Не ОбщегоНазначения.ОбъектМетаданныхДоступенПоФункциональнымОпциям(ОтчетМетаданные) Тогда + ДоступенПоОпциям = Ложь; + КонецЕсли; + КонецЕсли; + Найденные = Результат.НайтиСтроки(Новый Структура("Отчет", Отчет)); + Для Каждого СтрокаТаблицы Из Найденные Цикл + Если Не ДоступенПоRLS Тогда + СтрокаТаблицы.Представление = НСтр("ru = '<Недостаточно прав для работы с вариантом отчета>'"); + ИначеЕсли Не НайденВПрограмме Тогда + СтрокаТаблицы.Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = '<Отчет ""%1"" не найден в программе>'"), + ИмяОтчета); + ИначеЕсли Не ДоступенПоПравам Тогда + СтрокаТаблицы.Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = '<Недостаточно прав для работы с отчетом ""%1"">'"), + ИмяОтчета); + ИначеЕсли Не ДоступенПоОпциям Тогда + СтрокаТаблицы.Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = '<Отчет ""%1"" отключен в настройках программы>'"), + ИмяОтчета); + Иначе + СтрокаТаблицы.Доступен = Истина; + КонецЕсли; + КонецЦикла; + КонецЦикла; +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Для отчета по внедрению. @@ -2073,7 +2334,7 @@ Продолжить; КонецЕсли; - ОтчетСсылка = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ОтчетМетаданные); + ОтчетСсылка = СтандартныеПодсистемыСервер.ИдентификаторОбъектаМетаданных(ОтчетМетаданные); ОтчетТип = ВариантыОтчетовКлиентСервер.ТипОтчетаСтрокой(Неопределено, ОтчетСсылка); Если ФильтрПоТипуОтчетов <> Неопределено И ФильтрПоТипуОтчетов <> ОтчетТип Тогда Продолжить; @@ -2215,12 +2476,12 @@ Возврат ДеревоВариантов; КонецФункции -// Определяет способ внедрения подсистемы. +// Определяет способ подключения хранилища вариантов отчетов. Функция ПоУмолчаниюВсеПодключеныКХранилищу() Возврат (Метаданные.ХранилищеВариантовОтчетов <> Неопределено И Метаданные.ХранилищеВариантовОтчетов.Имя = "ХранилищеВариантовОтчетов"); КонецФункции -// Определяет подключен ли отчет к подсистеме. +// Определяет подключен-ли отчет к хранилищу вариантов отчетов. Функция ОтчетПодключенКХранилищу(ОтчетМетаданные, ПоУмолчаниюВсеПодключены = Неопределено) Экспорт ХранилищеМетаданные = ОтчетМетаданные.ХранилищеВариантов; Если ХранилищеМетаданные = Неопределено Тогда @@ -2240,7 +2501,7 @@ Возврат (ФормаМетаданные <> Неопределено И ФормаМетаданные = Метаданные.ОбщиеФормы.ФормаОтчета); КонецФункции -// Определяет способ подключения общей формы отчета. +// Определяет подключен-ли отчет к общей форме отчета. Функция ОтчетПодключенКОсновнойФорме(ОтчетМетаданные, ПоУмолчаниюВсеПодключены = Неопределено) Экспорт ФормаМетаданные = ОтчетМетаданные.ОсновнаяФорма; Если ФормаМетаданные = Неопределено Тогда @@ -2254,13 +2515,13 @@ Возврат ОтчетПодключен; КонецФункции -// Определяет способ подключения общей формы отчета. +// Определяет способ подключения общей формы настроек отчета. Функция ПоУмолчаниюВсеПодключеныКФормеНастроек() ФормаМетаданные = Метаданные.ОсновнаяФормаНастроекОтчета; Возврат (ФормаМетаданные <> Неопределено И ФормаМетаданные = Метаданные.ОбщиеФормы.ФормаНастроекОтчета); КонецФункции -// Определяет способ подключения общей формы отчета. +// Определяет подключен-ли отчет к общей форме настроек отчета. Функция ОтчетПодключенКФормеНастроек(ОтчетМетаданные, ПоУмолчаниюВсеПодключены = Неопределено) Экспорт ФормаМетаданные = ОтчетМетаданные.ОсновнаяФормаНастроек; Если ФормаМетаданные = Неопределено Тогда @@ -2299,6 +2560,9 @@ // Определяет что отчет пустой. Функция ОтчетПустой(ОтчетОбъект) + Если ОтчетОбъект.СхемаКомпоновкиДанных = Неопределено Тогда + Возврат Ложь; // Не СКД отчет. + КонецЕсли; // Объект для создания макета компоновки данных. КомпоновщикМакетаКД = Новый КомпоновщикМакетаКомпоновкиДанных; @@ -2590,7 +2854,7 @@ Иначе - Результат.Отчет = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(Результат.ОтчетМетаданные); + Результат.Отчет = СтандартныеПодсистемыСервер.ИдентификаторОбъектаМетаданных(Результат.ОтчетМетаданные); Результат.ТипОтчета = ВариантыОтчетовКлиентСервер.ТипОтчета(Результат.Отчет); КонецЕсли; @@ -2655,7 +2919,7 @@ // связанного с элементом справочника "Варианты отчетов". // // Параметры: -// ВариантОбъект - СправочникОбъект.ВариантыОтчетов, ДанныеФормыСтруктура. +// ВариантОбъект - СправочникОбъект.ВариантыОтчетов, ДанныеФормыСтруктура // Функция СброситьНастройкиВариантаОтчета(ВариантОбъект) Экспорт Если ВариантОбъект.Пользовательский @@ -3720,8 +3984,12 @@ ВариантОбъект.Родитель = ОписаниеВарианта.ВариантРодитель; Для Каждого КлючИЗначение Из ОписаниеВарианта.Размещение Цикл + СсылкаПодсистемы = СтандартныеПодсистемыСервер.ИдентификаторОбъектаМетаданных(КлючИЗначение.Ключ); + Если ТипЗнч(СсылкаПодсистемы) = Тип("Строка") Тогда + Продолжить; + КонецЕсли; СтрокаРазмещения = ВариантОбъект.Размещение.Добавить(); - СтрокаРазмещения.Подсистема = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(КлючИЗначение.Ключ); + СтрокаРазмещения.Подсистема = СсылкаПодсистемы; СтрокаРазмещения.Важный = (НРег(КлючИЗначение.Значение) = НРег("Важный")); СтрокаРазмещения.СмТакже = (НРег(КлючИЗначение.Значение) = НРег("СмТакже")); КонецЦикла; @@ -3765,7 +4033,10 @@ КонецЕсли; Для Каждого КлючИЗначение Из ОписаниеВарианта.Размещение Цикл - Подсистема = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(КлючИЗначение.Ключ); + Подсистема = СтандартныеПодсистемыСервер.ИдентификаторОбъектаМетаданных(КлючИЗначение.Ключ); + Если ТипЗнч(Подсистема) = Тип("Строка") Тогда + Продолжить; + КонецЕсли; СтрокаРазмещения = ТаблицаРазмещения.Найти(Подсистема, "Подсистема"); Если СтрокаРазмещения = Неопределено Или СтрокаРазмещения.Важный <> (НРег(КлючИЗначение.Значение) = НРег("Важный")) @@ -4438,8 +4709,8 @@ Продолжить; // Заполнение невозможно. КонецЕсли; - ПодсистемаСсылка = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ПодсистемаМетаданные);; - Если Не ЗначениеЗаполнено(ПодсистемаСсылка) Тогда + ПодсистемаСсылка = СтандартныеПодсистемыСервер.ИдентификаторОбъектаМетаданных(ПодсистемаМетаданные); + Если Не ЗначениеЗаполнено(ПодсистемаСсылка) Или ТипЗнч(ПодсистемаСсылка) = Тип("Строка") Тогда ВариантОбъект.Размещение.Удалить(СтрокаТаблицы); Продолжить; // Заполнение невозможно. КонецЕсли; @@ -4465,8 +4736,8 @@ ТаблицаПользователей.Свернуть("Пользователь"); ПакетНастроек = Новый ТаблицаЗначений; - ПакетНастроек.Колонки.Добавить("Подсистема", ТаблицаПодсистем.Колонки.Подсистема.Тип); - ПакетНастроек.Колонки.Добавить("Пользователь", ТаблицаПользователей.Колонки.Пользователь.Тип); + ПакетНастроек.Колонки.Добавить("Подсистема", ТаблицаПодсистем.Колонки.Подсистема.ТипЗначения); + ПакетНастроек.Колонки.Добавить("Пользователь", ТаблицаПользователей.Колонки.Пользователь.ТипЗначения); ПакетНастроек.Колонки.Добавить("Видимость", Новый ОписаниеТипов("Булево")); Для Каждого СтрокаПодсистема Из ТаблицаПодсистем Цикл @@ -4774,8 +5045,8 @@ // Выполняет инициализацию компоновщика и его настроек (Настройки) источником доступных настроек. КомпоновщикНастроекКД.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКД)); - // Загружает настройки в компоновщик. - КомпоновщикНастроекКД.ЗагрузитьНастройки(НастройкиКД); + // Загружает настройки в компоновщик и сбрасывает пользовательские настройки. + ОтчетыКлиентСервер.ЗагрузитьНастройки(КомпоновщикНастроекКД, НастройкиКД); Если ЗаполнитьПоля Тогда // Преобразование всех настроек автоматической группировки в наборы полей. @@ -4997,8 +5268,8 @@ // Выполняет инициализацию компоновщика и его настроек (Настройки) источником доступных настроек. КомпоновщикНастроекКД.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКД)); - // Загружает настройки в компоновщик. - КомпоновщикНастроекКД.ЗагрузитьНастройки(НастройкиКД); + // Загружает настройки в компоновщик и сбрасывает пользовательские настройки. + ОтчетыКлиентСервер.ЗагрузитьНастройки(КомпоновщикНастроекКД, НастройкиКД); УсловияВывода = Новый Структура; УсловияВывода.Вставить("ТолькоПользовательские", Истина); @@ -5047,15 +5318,6 @@ КонецЕсли; КонецЕсли; ОтчетОбъект.ОпределитьНастройкиФормы(Неопределено, КлючВарианта, НастройкиОтчета); - СоответствиеПериодичностиПараметров = Новый Соответствие; - Для Каждого КлючИЗначение Из НастройкиОтчета.СоответствиеПериодичностиПараметров Цикл - ПолеКД = КлючИЗначение.Ключ; - Если ТипЗнч(ПолеКД) = Тип("ПараметрКомпоновкиДанных") Тогда - ПолеКД = Новый ПолеКомпоновкиДанных("ПараметрыДанных." + Строка(ПолеКД)); - КонецЕсли; - СоответствиеПериодичностиПараметров.Вставить(ПолеКД, КлючИЗначение.Значение); - КонецЦикла; - НастройкиОтчета.Вставить("СоответствиеПериодичностиПараметров", СоответствиеПериодичностиПараметров); КонецЕсли; Возврат НастройкиОтчета; КонецФункции @@ -5918,6 +6180,61 @@ ТекстЗапроса = ЛеваяЧасть + ПраваяЧасть; КонецПроцедуры +//////////////////////////////////////////////////////////////////////////////// +// Определение используемых таблиц. + +// Регистрирует в массиве таблицы, используемые в наборах данных. +Процедура ЗарегистрироватьТаблицыНаборовДанных(Таблицы, НаборыДанных) + Для Каждого Набор Из НаборыДанных Цикл + Если ТипЗнч(Набор) = Тип("НаборДанныхЗапросСхемыКомпоновкиДанных") Тогда + ЗарегистрироватьТаблицыЗапроса(Таблицы, Набор.Запрос); + ИначеЕсли ТипЗнч(Набор) = Тип("НаборДанныхОбъединениеСхемыКомпоновкиДанных") Тогда + ЗарегистрироватьТаблицыНаборовДанных(Таблицы, Набор.Элементы); + ИначеЕсли ТипЗнч(Набор) = Тип("НаборДанныхОбъектСхемыКомпоновкиДанных") Тогда + // Нечего регистрировать. + КонецЕсли; + КонецЦикла; +КонецПроцедуры + +// Регистрирует в массиве таблицы, используемые в запросе. +Процедура ЗарегистрироватьТаблицыЗапроса(Таблицы, ТекстЗапроса) + Если Не ЗначениеЗаполнено(ТекстЗапроса) Тогда + Возврат; + КонецЕсли; + СхемаЗапроса = Новый СхемаЗапроса; + СхемаЗапроса.УстановитьТекстЗапроса(ТекстЗапроса); + Для Каждого Запрос Из СхемаЗапроса.ПакетЗапросов Цикл + Если ТипЗнч(Запрос) = Тип("ЗапросВыбораСхемыЗапроса") Тогда + ЗарегистрироватьТаблицыОператоровЗапроса(Таблицы, Запрос.Операторы); + ИначеЕсли ТипЗнч(Запрос) = Тип("ЗапросУничтоженияТаблицыСхемыЗапроса") Тогда + // Нечего регистрировать. + КонецЕсли; + КонецЦикла; +КонецПроцедуры + +// Продолжение процедуры (см. выше). +Процедура ЗарегистрироватьТаблицыОператоровЗапроса(Таблицы, Операторы) + Для Каждого Оператор Из Операторы Цикл + Для Каждого Источник Из Оператор.Источники Цикл + Источник = Источник.Источник; + Если ТипЗнч(Источник) = Тип("ТаблицаСхемыЗапроса") Тогда + Если Таблицы.Найти(Источник.ИмяТаблицы) = Неопределено Тогда + Таблицы.Добавить(Источник.ИмяТаблицы); + КонецЕсли; + ИначеЕсли ТипЗнч(Источник) = Тип("ВложенныйЗапросСхемыЗапроса") Тогда + ЗарегистрироватьТаблицыОператоровЗапроса(Таблицы, Источник.Запрос.Операторы); + ИначеЕсли ТипЗнч(Источник) = Тип("ОписаниеВременнойТаблицыСхемыЗапроса") Тогда + // Нечего регистрировать. + КонецЕсли; + КонецЦикла; + КонецЦикла; +КонецПроцедуры + +// Возвращает текст сообщения о том, что данные отчета еще обновляются. +Функция СообщениеДанныеЕщеОбновляются() Экспорт + Возврат НСтр("ru = 'Отчет может содержать некорректные данные, так как не завершен переход на новую версию программы. Если отчет долгое время недоступен, необходимо обратиться к администратору.'"); +КонецФункции + //////////////////////////////////////////////////////////////////////////////// // Прочее. @@ -5939,23 +6256,64 @@ КонецЕсли; КонецФункции -// Устарела. Следует удалить из всех мест использования. -// Добавляет оповещение для открытых форм подсистемы если изменилось значение функциональной опции. -// -// Параметры: -// Результат - Структура - Результат работы сервера, который возвращается на клиент. -// См. СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(). -// КонстантаМенеджер - КонстантаМенеджер.<Имя константы> - Менеджер константы, значение которой изменилось. -// -// Описание: -// Данную процедуру следует использовать при изменении значений констант, -// связанных с функциональными опциями для последующего обновления открытых форм. -// -// Места использования: -// Обработка.ПанельАдминистрированияБСП.Форма.*. -// -Процедура ДобавитьОповещениеПриИзмененииЗначенияКонстанты(Результат, КонстантаМенеджер) Экспорт - // Все формы отчетов теперь обновляются всегда (при изменении любой константы). +// Добавляет элемент в массив с контролем уникальности. +Процедура ДобавитьВМассив(Массив, Значение) + Если Массив.Найти(Значение) = Неопределено Тогда + Массив.Добавить(Значение); + КонецЕсли; КонецПроцедуры +// Возвращает значения реквизитов, прочитанные из информационной базы +// для нескольких объектов. +// +// Если доступа к одному из реквизитов нет, возникнет исключение прав доступа. +// Если необходимо зачитать реквизит независимо от прав текущего пользователя, +// то следует использовать предварительный переход в привилегированный режим. +// +// Функция не предназначена для получения значений реквизитов пустых ссылок. +// +// Параметры: +// МассивСсылок - массив ссылок на объекты одного типа. +// ВАЖНО! значения массива должны быть ссылками на +// объекты одного типа! +// ИменаРеквизитов - Строка, имена реквизитов перечисленные через запятую, +// в формате требований к свойствам структуры. +// Например, "Код, Наименование, Родитель". +// +// Возвращаемое значение: +// Соответствие - где ключ - ссылка на объект, а Значение - структура, которая +// содержит список свойств, как список имен в строке. +// ИменаРеквизитов, со значениям реквизитов, прочитанными из информационной базы. +// +Функция ЗначенияРеквизитовОбъектов(МассивСсылок, ИменаРеквизитов, УчитыватьПрава = Неопределено) + + ЗначенияРеквизитов = Новый Соответствие; + Если МассивСсылок.Количество() = 0 Тогда + Возврат ЗначенияРеквизитов; + КонецЕсли; + Если УчитыватьПрава = Неопределено Тогда + УчитыватьПрава = Не ПривилегированныйРежим(); + КонецЕсли; + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ" + ?(УчитыватьПрава, " РАЗРЕШЕННЫЕ", "") + " + | Ссылка КАК Ссылка, " + ИменаРеквизитов + " + |ИЗ + | " + МассивСсылок[0].Метаданные().ПолноеИмя() + " КАК Таблица + |ГДЕ + | Таблица.Ссылка В (&МассивСсылок)"; + Запрос.УстановитьПараметр("МассивСсылок", МассивСсылок); + + Выборка = Запрос.Выполнить().Выбрать(); + Пока Выборка.Следующий() Цикл + Результат = Новый Структура(ИменаРеквизитов); + ЗаполнитьЗначенияСвойств(Результат, Выборка); + ЗначенияРеквизитов[Выборка.Ссылка] = Результат; + КонецЦикла; + + Возврат ЗначенияРеквизитов; + +КонецФункции + #КонецОбласти diff --git a/SSL/src/CommonModules/ВариантыОтчетовВызовСервера/Module.bsl b/SSL/src/CommonModules/ВариантыОтчетовВызовСервера/Module.bsl index 2b9f8e863..ebaab6228 100644 --- a/SSL/src/CommonModules/ВариантыОтчетовВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/ВариантыОтчетовВызовСервера/Module.bsl @@ -25,5 +25,39 @@ ВариантыОтчетов.ПриПодключенииОтчета(ПараметрыОткрытия); КонецПроцедуры +// Получает тип субконто счета по его номеру. +// +// Параметры: +// Счет - ПланСчетовСсылка - Ссылка счета. +// НомерСубконто - Число - Номер субконто. +// +// Возвращаемое значение: +// ОписаниеТипов - Тип субконто. +// Неопределено - Если не удалось получить тип субконто (нет такого субконто или нет прав). +// +Функция ТипСубконто(Счет, НомерСубконто) Экспорт + ОбъектМетаданных = Счет.Метаданные(); + Если Не Метаданные.ПланыСчетов.Содержит(ОбъектМетаданных) Тогда + Возврат Неопределено; + КонецЕсли; + Запрос = Новый Запрос; + Запрос.УстановитьПараметр("Ссылка", Счет); + Запрос.УстановитьПараметр("НомерСтроки", НомерСубконто); + Запрос.Текст = + "ВЫБРАТЬ РАЗРЕШЕННЫЕ + | ПланСчетовВидыСубконто.ВидСубконто.ТипЗначения КАК Тип + |ИЗ + | &ПолноеИмяТаблицы КАК ПланСчетовВидыСубконто + |ГДЕ + | ПланСчетовВидыСубконто.Ссылка = &Ссылка + | И ПланСчетовВидыСубконто.НомерСтроки = &НомерСтроки"; + Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ПолноеИмяТаблицы", ОбъектМетаданных.ПолноеИмя() + ".ВидыСубконто"); + Выборка = Запрос.Выполнить().Выбрать(); + Если Не Выборка.Следующий() Тогда + Возврат Неопределено; + КонецЕсли; + Возврат Выборка.Тип; +КонецФункции + #КонецОбласти diff --git a/SSL/src/CommonModules/ВариантыОтчетовКлиент/Module.bsl b/SSL/src/CommonModules/ВариантыОтчетовКлиент/Module.bsl index e53e50834..9bdfee0a7 100644 --- a/SSL/src/CommonModules/ВариантыОтчетовКлиент/Module.bsl +++ b/SSL/src/CommonModules/ВариантыОтчетовКлиент/Module.bsl @@ -22,18 +22,17 @@ ПараметрыКлиента = ПараметрыКлиента(); Если ПараметрыКлиента.ВыполнятьЗамеры Тогда - ИдентификаторЗамера = Новый УникальныйИдентификатор; - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - МодульОценкаПроизводительностиКлиентСервер.НачатьРучнойЗамерВремени( - "ПанельОтчетов.Открытие", - ИдентификаторЗамера, - ПараметрыКлиента.ПрефиксЗамеров + "; " + ПутьКПодсистеме); + МодульОценкаПроизводительностиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиент"); + ИдентификаторЗамера = МодульОценкаПроизводительностиКлиент.НачатьЗамерВремени( + Ложь, + "ПанельОтчетов.Открытие"); + МодульОценкаПроизводительностиКлиент.УстановитьКомментарийЗамера(ИдентификаторЗамера, ПараметрыКлиента.ПрефиксЗамеров + "; " + ПутьКПодсистеме); КонецЕсли; ОткрытьФорму("ОбщаяФорма.ПанельОтчетов", ФормаПараметры, , ПутьКПодсистеме, ФормаОкно, ФормаСсылка); Если ПараметрыКлиента.ВыполнятьЗамеры Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьРучнойЗамерВремени(ИдентификаторЗамера); + МодульОценкаПроизводительностиКлиент.ЗавершитьЗамерВремени(ИдентификаторЗамера); КонецЕсли; КонецПроцедуры @@ -155,7 +154,9 @@ ПараметрыОткрытия.ТипОтчета = ВариантыОтчетовКлиентСервер.ТипОтчетаСтрокой(ПараметрыОткрытия.ТипОтчета, ПараметрыОткрытия.Отчет); Если Не ЗначениеЗаполнено(ПараметрыОткрытия.ТипОтчета) Тогда ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не определен тип отчета в %1'"), "ВариантыОтчетовКлиент.ОткрытьФормуОтчета"); - ИначеЕсли ПараметрыОткрытия.ТипОтчета = "Внутренний" Или ПараметрыОткрытия.ТипОтчета = "Расширение" Тогда + КонецЕсли; + + Если ПараметрыОткрытия.ТипОтчета = "Внутренний" Или ПараметрыОткрытия.ТипОтчета = "Расширение" Тогда Вид = "Отчет"; КлючЗамеров = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыОткрытия, "КлючЗамеров"); Если ЗначениеЗаполнено(КлючЗамеров) Тогда @@ -172,7 +173,6 @@ ВариантыОтчетовВызовСервера.ПриПодключенииОтчета(ПараметрыОткрытия); КонецЕсли; Если Не ПараметрыОткрытия.Подключен Тогда - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ФормаВладелец, ПараметрыОткрытия); Возврат; КонецЕсли; Иначе @@ -195,18 +195,17 @@ Если ПараметрыОткрытия.ВыполнятьЗамеры Тогда ВариантыОтчетовКлиентСервер.ДополнитьСтруктуруКлючом(ПараметрыОткрытия, "КомментарийОперации"); - ИдентификаторЗамера = Новый УникальныйИдентификатор; - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - МодульОценкаПроизводительностиКлиентСервер.НачатьРучнойЗамерВремени( - ПараметрыОткрытия.ИмяОперации, - ИдентификаторЗамера, - ПараметрыОткрытия.КомментарийОперации); + МодульОценкаПроизводительностиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиент"); + ИдентификаторЗамера = МодульОценкаПроизводительностиКлиент.НачатьЗамерВремени( + Ложь, + ПараметрыОткрытия.ИмяОперации); + МодульОценкаПроизводительностиКлиент.УстановитьКомментарийЗамера(ИдентификаторЗамера, ПараметрыОткрытия.КомментарийОперации); КонецЕсли; ОткрытьФорму(ПолноеИмяОтчета + ".Форма", ПараметрыОткрытия, Неопределено, Истина); Если ПараметрыОткрытия.ВыполнятьЗамеры Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьРучнойЗамерВремени(ИдентификаторЗамера); + МодульОценкаПроизводительностиКлиент.ЗавершитьЗамерВремени(ИдентификаторЗамера); КонецЕсли; КонецПроцедуры diff --git a/SSL/src/CommonModules/ВариантыОтчетовКлиентСервер/Module.bsl b/SSL/src/CommonModules/ВариантыОтчетовКлиентСервер/Module.bsl index e06e78427..8be740fa6 100644 --- a/SSL/src/CommonModules/ВариантыОтчетовКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/ВариантыОтчетовКлиентСервер/Module.bsl @@ -151,7 +151,7 @@ КонецФункции // Превращает тип отчета в строковый идентификатор. -Функция ТипОтчета(ОтчетСсылка) Экспорт +Функция ТипОтчета(ОтчетСсылка, РезультатСтрокой = Ложь) Экспорт ТипСсылки = ТипЗнч(ОтчетСсылка); Если ТипСсылки = Тип("СправочникСсылка.ИдентификаторыОбъектовМетаданных") Тогда Ключ = "Внутренний"; @@ -159,10 +159,12 @@ Ключ = "Расширение"; ИначеЕсли ТипСсылки = Тип("Строка") Тогда Ключ = "Внешний"; - Иначе + ИначеЕсли ТипСсылки = ТипСсылкиДополнительногоОтчета() Тогда Ключ = "Дополнительный"; + Иначе + Ключ = ?(РезультатСтрокой, Неопределено, "ПустаяСсылка"); КонецЕсли; - Возврат ПредопределенноеЗначение("Перечисление.ТипыОтчетов." + Ключ); + Возврат ?(РезультатСтрокой, Ключ, ПредопределенноеЗначение("Перечисление.ТипыОтчетов." + Ключ)); КонецФункции // Возвращает тип ссылки дополнительного отчета. diff --git a/SSL/src/CommonModules/ВариантыОтчетовПереопределяемый/Module.bsl b/SSL/src/CommonModules/ВариантыОтчетовПереопределяемый/Module.bsl index 38ea6786a..334688b0a 100644 --- a/SSL/src/CommonModules/ВариантыОтчетовПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ВариантыОтчетовПереопределяемый/Module.bsl @@ -61,7 +61,7 @@ // Пользователь может "включить" его в режиме настройки панели отчетов // или открыть через форму "Все отчеты". // * Описание - Строка - Дополнительная информация по варианту отчета. -// В панели отчетов выводится в качестве подсказки. +// В панелях отчетов выводится в виде подсказки. // Должно расшифровывать для пользователя содержимое варианта отчета // и не должно дублировать наименование варианта отчета. // Используется при поиске. diff --git a/SSL/src/CommonModules/ВариантыОтчетовПовтИсп/Module.bsl b/SSL/src/CommonModules/ВариантыОтчетовПовтИсп/Module.bsl index ade6ab1a5..46b7805c0 100644 --- a/SSL/src/CommonModules/ВариантыОтчетовПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/ВариантыОтчетовПовтИсп/Module.bsl @@ -4,7 +4,7 @@ // Выполняется на сервере, возвращаемые значения кэшируются на время сеанса. //////////////////////////////////////////////////////////////////////////////// -#Область СлужебныеПроцедурыИФункции +#Область СлужебныйПрограммныйИнтерфейс // Формирует список отчетов конфигурации, доступных текущему пользователю. // @@ -27,7 +27,11 @@ И Не ОбщегоНазначения.ОбъектМетаданныхДоступенПоФункциональнымОпциям(ОтчетМетаданные) Тогда Продолжить; КонецЕсли; - Результат.Добавить(ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ОтчетМетаданные)); + СсылкаОтчета = СтандартныеПодсистемыСервер.ИдентификаторОбъектаМетаданных(ОтчетМетаданные); + Если ТипЗнч(СсылкаОтчета) = Тип("Строка") Тогда + Продолжить; + КонецЕсли; + Результат.Добавить(СсылкаОтчета); КонецЕсли; КонецЦикла; @@ -111,6 +115,10 @@ Возврат ОтключенныеВарианты; КонецФункции +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + // Формирует дерево подсистем, доступных текущему пользователю. // // Возвращаемое значение: @@ -174,6 +182,15 @@ КонецЕсли; КонецЕсли; + Если ДляКорневойСтроки Тогда + ПодсистемаСсылка = Подсистема.Ссылка; + Иначе + ПодсистемаСсылка = СтандартныеПодсистемыСервер.ИдентификаторОбъектаМетаданных(ПодсистемаМетаданные); + КонецЕсли; + Если ТипЗнч(ПодсистемаСсылка) = Тип("Строка") Тогда + Продолжить; + КонецЕсли; + СтрокаДерева = РодительСтрока.Строки.Добавить(); Если ЭтоНачальнаяСтраница Тогда СтрокаДерева.Имя = ИдентификаторНачальнойСтраницы; @@ -185,11 +202,11 @@ СтрокаДерева.Представление = ПодсистемаМетаданные.Представление(); КонецЕсли; Если ДляКорневойСтроки Тогда - СтрокаДерева.Ссылка = Подсистема.Ссылка; + СтрокаДерева.Ссылка = ПодсистемаСсылка; СтрокаДерева.РазделСсылка = Подсистема.Ссылка; СтрокаДерева.ПолноеПредставление = Подсистема.ЗаголовокПанели; Иначе - СтрокаДерева.Ссылка = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ПодсистемаМетаданные); + СтрокаДерева.Ссылка = ПодсистемаСсылка; СтрокаДерева.РазделСсылка = РазделСсылка; Если СтрДлина(ПриоритетРодителя) > 12 Тогда СтрокаДерева.ПолноеПредставление = РодительСтрока.Представление + ": " + СтрокаДерева.Представление; diff --git a/SSL/src/CommonModules/ВерсионированиеОбъектов/Module.bsl b/SSL/src/CommonModules/ВерсионированиеОбъектов/Module.bsl index 71eb1c1c2..9224774fb 100644 --- a/SSL/src/CommonModules/ВерсионированиеОбъектов/Module.bsl +++ b/SSL/src/CommonModules/ВерсионированиеОбъектов/Module.bsl @@ -259,6 +259,10 @@ //Процедура ЗаписатьВерсиюОбъекта(Источник, РежимЗаписиПроведение = Ложь) Экспорт Процедура ЗаписатьВерсиюОбъекта(Знач Источник, РежимЗаписи = Неопределено) Экспорт + Если Не ПолучитьФункциональнуюОпцию("ИспользоватьВерсионированиеОбъектов") Тогда + Возврат; + КонецЕсли; + Если ОбщегоНазначения.ЗначениеСсылочногоТипа(Источник) Тогда Источник = Источник.ПолучитьОбъект(); КонецЕсли; @@ -288,7 +292,6 @@ Возврат; КонецЕсли; - Если Источник.ДополнительныеСвойства.Свойство("СведенияОВерсииОбъекта") Тогда Возврат; КонецЕсли; @@ -302,7 +305,7 @@ // Параметры: // Объект - для создания версии. // -Процедура ПриСозданииВерсииОбъекта(Объект, РежимЗаписи) Экспорт +Процедура ПриСозданииВерсииОбъекта(Объект, РежимЗаписи) Перем НомерПоследнейВерсии, Комментарий; @@ -367,7 +370,7 @@ // Выводим дело, если размер устаревших данных больше 1 Гб. Дело.ЕстьДела = ИнформацияОбУстаревшихВерсиях.РазмерДанных > (1024 * 1024 * 1024); Дело.Представление = НСтр("ru = 'Устаревшие версии объектов'"); - Дело.Форма = "РегистрСведений.НастройкиВерсионированияОбъектов.Форма.ВерсионированиеОбъектов"; + Дело.Форма = "РегистрСведений.НастройкиВерсионированияОбъектов.Форма.НастройкиХраненияИстории"; Дело.Подсказка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Подсказка, ИнформацияОбУстаревшихВерсиях.КоличествоВерсий, РазмерУстаревшихДанных); Дело.Владелец = Раздел; КонецЦикла; @@ -519,14 +522,14 @@ СведенияОВерсииОбъекта.ТипВерсииОбъекта = ТипВерсииОбъекта; Если Не ЗначениеЗаполнено(СведенияОВерсииОбъекта.АвторВерсии) Тогда - СведенияОВерсииОбъекта.АвторВерсии = Пользователи.АвторизованныйПользователь(); + СведенияОВерсииОбъекта.АвторВерсии = Справочники.Пользователи.ПустаяСсылка(); КонецЕсли; СоздатьВерсиюОбъекта(Объект, СведенияОВерсииОбъекта, Ложь); КонецПроцедуры -Процедура ЗаписатьДанныеТекущейВерсии(Ссылка) Экспорт +Процедура ЗаписатьДанныеТекущейВерсии(Ссылка) Перем НомерПоследнейВерсии; УстановитьПривилегированныйРежим(Истина); @@ -945,7 +948,7 @@ КонецЕсли; Если ПользовательскийНомерВерсии = Неопределено Тогда - ПользовательскийНомерВерсии = НомерВерсии; + ПользовательскийНомерВерсии = НомерВерсииВИерархии(СсылкаНаОбъект, НомерВерсии); КонецЕсли; Описание = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '№ %1 / (%2) / %3'"), ПользовательскийНомерВерсии, @@ -1004,7 +1007,7 @@ КонецФункции -// Номер предыдущей версии, измененной пользователем +// Номер предыдущей версии, измененной пользователем. Функция НомерПредыдущейВерсии(Ссылка, ТекущийНомерВерсии) Если Ссылка.Пустая() Тогда @@ -1073,7 +1076,7 @@ // // Возвращаемое значение - Объект или Неопределено. // -Функция ВосстановитьОбъектПоXML(ДанныеОбъекта, ТекстСообщенияОбОшибке = "") Экспорт +Функция ВосстановитьОбъектПоXML(ДанныеОбъекта, ТекстСообщенияОбОшибке = "") УстановитьПривилегированныйРежим(Истина); @@ -1287,7 +1290,7 @@ КонецФункции // Только для служебного использования. -Процедура ОчиститьУстаревшиеВерсииОбъектов() Экспорт +Процедура ОчиститьУстаревшиеВерсииОбъектов(Параметры = Неопределено, АдресРезультата = Неопределено) Экспорт ОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(Метаданные.РегламентныеЗадания.ОчисткаУстаревшихВерсийОбъектов); @@ -2895,7 +2898,7 @@ КонецФункции -Функция ВыполняетсяЗаписьОбъекта(Значение = Неопределено) Экспорт +Функция ВыполняетсяЗаписьОбъекта(Значение = Неопределено) Если Значение <> Неопределено Тогда ПараметрыСеанса.ВыполняетсяЗаписьОбъекта = Значение; Возврат Значение; @@ -2908,7 +2911,7 @@ Возврат ОбъектМетаданных.Состав.Содержит(Метаданные.РегистрыСведений.ВерсииОбъектов); КонецФункции -Функция ПерейтиНаВерсиюСервер(Ссылка, НомерВерсии, ТекстСообщенияОбОшибке, ОтменаПроведения = Ложь) +Функция ПерейтиНаВерсиюСервер(Ссылка, НомерВерсии, ТекстСообщенияОбОшибке, ОтменаПроведения = Ложь) Экспорт ПользовательскоеПредставлениеНомера = НомерВерсииВИерархии(Ссылка, НомерВерсии); Информация = СведенияОВерсииОбъекта(Ссылка, НомерВерсии); @@ -3019,7 +3022,7 @@ КонецФункции -Процедура ЗаполнитьИерархиюВерсий(ИерархияВерсий, СписокВерсий) +Процедура ЗаполнитьИерархиюВерсий(ИерархияВерсий, СписокВерсий) Экспорт ПропущенныеВерсии = Новый Массив; Для Каждого ОписаниеВерсии Из СписокВерсий Цикл @@ -3047,7 +3050,7 @@ КонецПроцедуры -Процедура ПронумероватьВерсии(КоллекцияВерсий) +Процедура ПронумероватьВерсии(КоллекцияВерсий) Экспорт ТекущийНомерВерсии = КоллекцияВерсий.Количество(); Для Каждого Версия Из КоллекцияВерсий Цикл diff --git a/SSL/src/CommonModules/ВерсионированиеОбъектовПереопределяемый/Module.bsl b/SSL/src/CommonModules/ВерсионированиеОбъектовПереопределяемый/Module.bsl index d7a2fc8f0..c27ef23fd 100644 --- a/SSL/src/CommonModules/ВерсионированиеОбъектовПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ВерсионированиеОбъектовПереопределяемый/Module.bsl @@ -67,6 +67,8 @@ // * Значение - Произвольный - значение реквизита. Процедура ПриПодготовкеДанныхОбъекта(Объект, ДополнительныеРеквизиты) Экспорт + + КонецПроцедуры // Восстанавливает значения реквизитов объекта, хранящихся отдельно от объекта. @@ -80,6 +82,8 @@ // * Значение - Произвольный - значение реквизита. Процедура ПриВосстановленииВерсииОбъекта(Объект, ДополнительныеРеквизиты) Экспорт + + КонецПроцедуры #КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/Взаимодействия/Module.bsl b/SSL/src/CommonModules/Взаимодействия/Module.bsl index 7ec12ac9a..d55d7b391 100644 --- a/SSL/src/CommonModules/Взаимодействия/Module.bsl +++ b/SSL/src/CommonModules/Взаимодействия/Module.bsl @@ -61,7 +61,31 @@ // Заполним участников Если ЗначениеЗаполнено(Контакты) И (Контакты.Количество() > 0) Тогда + + Если ТипЗнч(Объект) = Тип("ДокументОбъект.ТелефонныйЗвонок") + Или ТипЗнч(Объект) = Тип("ДокументОбъект.СообщениеSMS") Тогда + + Если ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ЭлектронноеПисьмоВходящее") + Или ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ЭлектронноеПисьмоИсходящее") Тогда + + Для Каждого СтрокаКонтакт Из Контакты Цикл + + Если ТипЗнч(СтрокаКонтакт) = Тип("Структура") Тогда + + Если Не ЗначениеЗаполнено(СтрокаКонтакт.Контакт) Тогда + СтрокаКонтакт.Адрес = ""; + КонецЕсли; + + КонецЕсли; + + КонецЦикла; + + КонецЕсли; + + КонецЕсли; + Объект.ЗаполнитьКонтакты(Контакты); + КонецЕсли; КонецПроцедуры @@ -190,6 +214,11 @@ ].Добавить("Взаимодействия"); КонецЕсли; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ОчередьЗаданий") Тогда + СерверныеОбработчики["СтандартныеПодсистемы.РаботаВМоделиСервиса.ОчередьЗаданий\ПриПолученииСпискаШаблонов"].Добавить( + "Взаимодействия"); + КонецЕсли; + КонецПроцедуры // Вызывается после удаления помеченных объектов. @@ -276,22 +305,22 @@ // См. описание одноименной процедуры в общем модуле РегламентныеЗаданияПереопределяемый. // Процедура ПриОпределенииНастроекРегламентныхЗаданий(Зависимости) Экспорт + Зависимость = Зависимости.Добавить(); Зависимость.РегламентноеЗадание = Метаданные.РегламентныеЗадания.ОбновлениеСтатусовДоставкиSMS; Зависимость.ФункциональнаяОпция = Метаданные.ФункциональныеОпции.ИспользоватьПочтовыйКлиент; - Зависимость.ДоступноВМоделиСервиса = Ложь; + Зависимость.РаботаетСВнешнимиРесурсами = Истина; Зависимость = Зависимости.Добавить(); Зависимость.РегламентноеЗадание = Метаданные.РегламентныеЗадания.ОтправкаSMS; Зависимость.ФункциональнаяОпция = Метаданные.ФункциональныеОпции.ИспользоватьПочтовыйКлиент; - Зависимость.ДоступноВМоделиСервиса = Ложь; Зависимость.РаботаетСВнешнимиРесурсами = Истина; Зависимость = Зависимости.Добавить(); Зависимость.РегламентноеЗадание = Метаданные.РегламентныеЗадания.ПолучениеИОтправкаЭлектронныхПисем; Зависимость.ФункциональнаяОпция = Метаданные.ФункциональныеОпции.ИспользоватьПочтовыйКлиент; - Зависимость.ДоступноВМоделиСервиса = Ложь; Зависимость.РаботаетСВнешнимиРесурсами = Истина; + КонецПроцедуры #КонецОбласти @@ -425,44 +454,28 @@ // Процедура ПриЗаполненииТиповИсключаемыхИзВыгрузкиЗагрузки(Типы) Экспорт - Типы.Добавить(Метаданные.Константы.АдресПубликацииИнформационнойБазыВИнтернете); - Типы.Добавить(Метаданные.Константы.ИспользоватьПочтовыйКлиент); - Типы.Добавить(Метаданные.Константы.ИспользоватьПризнакРассмотрено); - Типы.Добавить(Метаданные.Константы.ИспользоватьПрочиеВзаимодействия); - Типы.Добавить(Метаданные.Константы.ОтправлятьПисьмаВФорматеHTML); - - Типы.Добавить(Метаданные.Справочники.ВстречаПрисоединенныеФайлы); - Типы.Добавить(Метаданные.Справочники.ЗакладкиВзаимодействий); - Типы.Добавить(Метаданные.Справочники.ЗапланированноеВзаимодействиеПрисоединенныеФайлы); - Типы.Добавить(Метаданные.Справочники.ПапкиЭлектронныхПисем); - Типы.Добавить(Метаданные.Справочники.ПравилаОбработкиЭлектроннойПочты); - Типы.Добавить(Метаданные.Справочники.СообщениеSMSПрисоединенныеФайлы); - Типы.Добавить(Метаданные.Справочники.СтроковыеКонтактыВзаимодействий); - Типы.Добавить(Метаданные.Справочники.ТелефонныйЗвонокПрисоединенныеФайлы); - Типы.Добавить(Метаданные.Справочники.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы); - Типы.Добавить(Метаданные.Справочники.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы); - - Типы.Добавить(Метаданные.Документы.Встреча); - Типы.Добавить(Метаданные.Документы.ЗапланированноеВзаимодействие); - Типы.Добавить(Метаданные.Документы.СообщениеSMS); - Типы.Добавить(Метаданные.Документы.ТелефонныйЗвонок); - Типы.Добавить(Метаданные.Документы.ЭлектронноеПисьмоВходящее); - Типы.Добавить(Метаданные.Документы.ЭлектронноеПисьмоИсходящее); - - Типы.Добавить(Метаданные.ЖурналыДокументов.Взаимодействия); - - Типы.Добавить(Метаданные.РегистрыСведений.ИдентификаторыПолученныхЭлектронныхПисем); - Типы.Добавить(Метаданные.РегистрыСведений.КонтактыВзаимодействий); - Типы.Добавить(Метаданные.РегистрыСведений.НастройкиУчетныхЗаписейЭлектроннойПочты); - Типы.Добавить(Метаданные.РегистрыСведений.ПредметыПапкиВзаимодействий); - Типы.Добавить(Метаданные.РегистрыСведений.СостоянияКонтактовВзаимодействий); - Типы.Добавить(Метаданные.РегистрыСведений.СостоянияПапокПисем); - Типы.Добавить(Метаданные.РегистрыСведений.СостоянияПредметовВзаимодействий); - Типы.Добавить(Метаданные.РегистрыСведений.УведомленияОПрочтении); + Типы.Добавить(Метаданные.РегистрыСведений.ЗаблокированныеДляПолученияУчетныеЗаписи); Типы.Добавить(Метаданные.РегистрыСведений.Удалить_АктивныеПредметыВзаимодействий); КонецПроцедуры +// Обработчик события ПриПолученииСпискаШаблонов. +// +// Формирует список шаблонов заданий очереди. +// +// Параметры: +// Шаблоны - Массив строк. В параметр следует добавить имена предопределенных +// неразделенных регламентных заданий, которые должны использоваться в качестве +// шаблонов для заданий очереди. +// +Процедура ПриПолученииСпискаШаблонов(Шаблоны) Экспорт + + Шаблоны.Добавить("ОбновлениеСтатусовДоставкиSMS"); + Шаблоны.Добавить("ОтправкаSMS"); + Шаблоны.Добавить("ПолучениеИОтправкаЭлектронныхПисем"); + +КонецПроцедуры + // Заполняет список текущих дел пользователя. // // Параметры: @@ -535,7 +548,7 @@ // Функция ПолучитьИмяПоляДляНаименованияВладельца(ИмяТаблицы) Экспорт - МассивОписанияКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); Для каждого ЭлементОписанияМассива Из МассивОписанияКонтактов Цикл Если ЭлементОписанияМассива.Имя = ИмяТаблицы И ЭлементОписанияМассива.ЕстьВладелец Тогда @@ -656,7 +669,7 @@ Иначе - МассивОписанийКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанийКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); ИмяМетаданныхКонтакта = Контакт.Метаданные().Имя; Для каждого ЭлементМассиваОписания Из МассивОписанийКонтактов Цикл @@ -790,7 +803,7 @@ // Функция ПолучитьМассивМетаданныхКонтакты() - МассивОписанияКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); МассивМетаданных = Новый Массив; Для каждого ЭлементМассиваОписания Из МассивОписанияКонтактов Цикл @@ -825,7 +838,7 @@ ТекстЗапроса = ПолучитьТекстЗапросаПоискКонтактовПоЦепочкеВзаимодействий(Истина); ИмяМетаданных = Предмет.Метаданные().ПолноеИмя(); ТекстЗапроса = ТекстЗапроса - + ВзаимодействияПереопределяемый.ПолучитьТекстЗапросаПоискКонтактовПоПредмету(Ложь, ИмяМетаданных, Истина); + + ВзаимодействияПереопределяемый.ТекстЗапросаПоискКонтактовПоПредмету(Ложь, ИмяМетаданных, Истина); КонецЕсли; ТекстЗапроса = ТекстЗапроса + ПолучитьТекстЗапросаНаПолучениеИнформацииОКонтактах(ВключатьEmail); @@ -1022,7 +1035,7 @@ // Функция ПолучитьТекстЗапросаНаПолучениеИнформацииОКонтактах(ВключатьEmail) - МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); ТекстЗапроса ="; | @@ -1085,7 +1098,7 @@ // Функция СформироватьТекстЗапросаДляПоискаПоEmail(ПоискПоСписку,ИтогиПоEmail = Ложь) - МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); ТекстЗапроса = "ВЫБРАТЬ РАЗРЕШЕННЫЕ @@ -1157,7 +1170,7 @@ // Функция ПолучитьВсеКонтактыПоТелефону(Телефон,Форма) Экспорт - МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); ТекстЗапроса = "ВЫБРАТЬ @@ -1230,7 +1243,7 @@ // Функция ПолучитьВсеКонтактыПоНачалуНаименования(Наименование) Экспорт - МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); ТекстЗапроса = "ВЫБРАТЬ @@ -1293,7 +1306,7 @@ // Функция ПолучитьВсеКонтактыПоНачалуНаименованияСАдресамиЭлектроннойПочты(Наименование,Форма) Экспорт - МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); ТекстЗапроса = " ВЫБРАТЬ @@ -1364,7 +1377,7 @@ // Функция ПолучитьШаблонУсловияНаСсылкиКонтактовДляЗапроса() - МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); ТекстКВозврату = "Таблица.%ИмяПоля% ССЫЛКА Справочник.Пользователи"; @@ -1428,7 +1441,7 @@ ПерваяТаблица = Истина; ТекстЗапроса = ""; - МассивОписанияКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); Для каждого ЭлементМассиваОписания Из МассивОписанияКонтактов Цикл Если ЭлементМассиваОписания.ИскатьПоДомену Тогда @@ -1555,7 +1568,7 @@ // Функция ПолучитьТекстЗапросаПоискКонтактовПоСтроке() - МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); ТекстЗапроса = "ВЫБРАТЬ РАЗЛИЧНЫЕ РАЗРЕШЕННЫЕ @@ -1607,7 +1620,7 @@ // Функция ПолучитьТекстЗапросаПоискКонтактовПоСтрокеСEmail() - МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); ТекстЗапроса = "ВЫБРАТЬ РАЗЛИЧНЫЕ РАЗРЕШЕННЫЕ @@ -1800,7 +1813,7 @@ // Функция СоздатьСписокЗначенийИнтерактивноСоздаваемыхКонтактов() Экспорт - МассивОписанияВозможныхТиповКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияВозможныхТиповКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); СписокКонтактовКоторыеМожноСоздать = Новый СписокЗначений; Для каждого ЭлементМассива Из МассивОписанияВозможныхТиповКонтактов Цикл @@ -2068,7 +2081,7 @@ Возврат Неопределено; КонецЕсли; - МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); ТекстЗапроса = " |ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ @@ -2081,15 +2094,27 @@ | ПО (ТаблицаКонтактнаяИнформация.Ссылка = ТаблицаКонтакт.Ссылка) | И (ТаблицаКонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты)) |ГДЕ - | (ТаблицаКонтакт.Ссылка В (&МассивКонтактов) - | ИЛИ ИСТИНА В - | (ВЫБРАТЬ - | ИСТИНА - | ИЗ - | РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - | ГДЕ - | СоставыГруппПользователей.Пользователь = ТаблицаКонтакт.Ссылка - | И СоставыГруппПользователей.ГруппаПользователей В (&МассивКонтактов)))"; + | ТаблицаКонтакт.Ссылка В (&МассивКонтактов) + | + |ОБЪЕДИНИТЬ ВСЕ + | + |ВЫБРАТЬ + | ТаблицаКонтактнаяИнформация.АдресЭП КАК Адрес, + | ТаблицаКонтакт.Ссылка КАК Контакт + |ИЗ + | Справочник.Пользователи КАК ТаблицаКонтакт + | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Пользователи.КонтактнаяИнформация КАК ТаблицаКонтактнаяИнформация + | ПО (ТаблицаКонтактнаяИнформация.Ссылка = ТаблицаКонтакт.Ссылка) + | И (ТаблицаКонтактнаяИнформация.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты)) + |ГДЕ + | ИСТИНА В + | (ВЫБРАТЬ + | ИСТИНА + | ИЗ + | РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + | ГДЕ + | СоставыГруппПользователей.Пользователь = ТаблицаКонтакт.Ссылка + | И СоставыГруппПользователей.ГруппаПользователей В (&МассивКонтактов))"; Для каждого ЭлементМассиваОписания Из МассивОписанияТиповКонтактов Цикл @@ -2382,7 +2407,58 @@ // Возвращаемое значение: // Строка - идентификатор почтового сообщения. // -Функция ВыполнитьОтправкуПисьма(Объект, Соединение = Неопределено) Экспорт +Функция ВыполнитьОтправкуПисьма(Объект, Соединение = Неопределено, ПараметрыПисьма = Неопределено, ПротоколПочты = "") Экспорт + + Если ПараметрыПисьма = Неопределено Тогда + ПараметрыПисьма = ПараметрыПисьмаДляОтправки(Объект); + КонецЕсли; + + Если Соединение = Неопределено Тогда + Профиль = РаботаСПочтовымиСообщениямиСлужебный.ИнтернетПочтовыйПрофиль(Объект.УчетнаяЗапись); + + Попытка + + Соединение = Новый ИнтернетПочта; + ПротоколПодключения = ?(ПустаяСтрока(Профиль.АдресСервераIMAP),ПротоколИнтернетПочты.POP3, ПротоколИнтернетПочты.IMAP); + Соединение.Подключиться(Профиль, ПротоколПодключения); + + Если ПротоколПодключения = ПротоколИнтернетПочты.IMAP Тогда + ПочтовыеЯщики = Соединение.ПолучитьПочтовыеЯщики(); + Для Каждого ПочтовыйЯщик Из ПочтовыеЯщики Цикл + Если НРег(ПочтовыйЯщик) = "отправленные" + Или НРег(ПочтовыйЯщик) = "sent" Тогда + + Соединение.ТекущийПочтовыйЯщик = ПочтовыйЯщик; + Прервать; + + КонецЕсли; + КонецЦикла; + КонецЕсли; + + Исключение + + ТекстСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Во время подключения к учетной записи %1 произошла ошибка + |%2'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + Объект.УчетнаяЗапись, + КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); + + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщенияОбОшибке, Объект.УчетнаяЗапись); + + КонецПопытки; + + КонецЕсли; + + ИдентификаторПисьма = РаботаСПочтовымиСообщениями.ОтправитьПочтовоеСообщение(Объект.УчетнаяЗапись, ПараметрыПисьма ,Соединение, ПротоколПочты); + Если ПротоколПодключения = ПротоколИнтернетПочты.IMAP Тогда + РаботаСПочтовымиСообщениями.ОтправитьПочтовоеСообщение(Объект.УчетнаяЗапись, ПараметрыПисьма ,Соединение, "IMAP"); + КонецЕсли; + + Возврат ИдентификаторПисьма; + +КонецФункции + +Функция ПараметрыПисьмаДляОтправки(Объект) Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЭлектроннаяПодпись") Тогда МодульЭлектроннаяПодписьКлиентСервер = @@ -2412,7 +2488,7 @@ СоотвВложения = Новый Соответствие; - ДанныеПрисоединенныхФайловПисьма = ВзаимодействияПереопределяемый.ПолучитьДанныеОбъектаМетаданныхПрисоединенныхФайловПисьма(Объект); + ДанныеПрисоединенныхФайловПисьма = ВзаимодействияПереопределяемый.ДанныеОбъектаМетаданныхПрисоединенныхФайловПисьма(Объект); Если ДанныеПрисоединенныхФайловПисьма = Неопределено Тогда ИмяОбъектаМетаданных = УправлениеЭлектроннойПочтой.ПолучитьИмяОбъектаМетаданныхПрисоединенныхФайловПисьма(Объект.Ссылка); ВладелецФайлов = Объект.Ссылка; @@ -2467,7 +2543,7 @@ ПараметрыПисьма.Вставить("УведомитьОПрочтении", Истина); КонецЕсли; - Возврат РаботаСПочтовымиСообщениями.ОтправитьПочтовоеСообщение(Объект.УчетнаяЗапись, ПараметрыПисьма,Соединение); + Возврат ПараметрыПисьма; КонецФункции @@ -2494,8 +2570,7 @@ КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// Обработчики обновления +#Область ОбработчикиОбновления // Добавляет процедуры-обработчики обновления, необходимые данной подсистеме. // @@ -2580,6 +2655,60 @@ Обработчик.Версия = "2.2.1.29"; Обработчик.Процедура = "Взаимодействия.ОтключитьПодсистемуВМоделиСервиса"; + Обработчик = Обработчики.Добавить(); + Обработчик.Версия = "2.3.3.28"; + Обработчик.РежимВыполнения = "Отложенно"; + Обработчик.Идентификатор = Новый УникальныйИдентификатор("301d4867-5fb2-45ff-9d32-dc3e5da008df"); + Обработчик.Процедура = "Документы.ЭлектронноеПисьмоВходящее.ЗаполнитьВзаимодействияОснованияУПодчиненныхПисем"; + Обработчик.ПроцедураЗаполненияДанныхОбновления = "Документы.ЭлектронноеПисьмоВходящее.ЗаполнитьВзаимодействияОснованияУПодчиненныхПисемКОбработке"; + Обработчик.ОчередьОтложеннойОбработки = 1; + Обработчик.ЧитаемыеОбъекты = "Документ.ЭлектронноеПисьмоВходящее, Документ.ЭлектронноеПисьмоИсходящее"; + Обработчик.ИзменяемыеОбъекты = "Документ.ЭлектронноеПисьмоВходящее"; + Обработчик.ПриоритетыВыполнения = ОбновлениеИнформационнойБазы.ПриоритетыВыполненияОбработчика(); + Приоритет = Обработчик.ПриоритетыВыполнения.Добавить(); + Приоритет.Процедура = "Документы.ЭлектронноеПисьмоИсходящее.ЗаполнитьВзаимодействияОснованияУПодчиненныхПисем"; + Приоритет.Порядок = "Любой"; + Приоритет = Обработчик.ПриоритетыВыполнения.Добавить(); + Приоритет.Процедура = "Документы.ЭлектронноеПисьмоИсходящее.ЗаполнитьСписокКонтактовИсходящихЭлектронныхПисем"; + Приоритет.Порядок = "До"; + Обработчик.Комментарий = НСтр("ru = 'Выполняет дозаполнение реквизита ВзаимодействиеОснование для входящих писем, у которых письмо основание в ИБ есть, но оно не указано.'"); + + Обработчик = Обработчики.Добавить(); + Обработчик.Версия = "2.3.3.28"; + Обработчик.РежимВыполнения = "Отложенно"; + Обработчик.Идентификатор = Новый УникальныйИдентификатор("1c4d3aef-eb91-49d9-aa76-06ee605e9c82"); + Обработчик.Процедура = "Документы.ЭлектронноеПисьмоИсходящее.ЗаполнитьВзаимодействияОснованияУПодчиненныхПисем"; + Обработчик.ПроцедураЗаполненияДанныхОбновления = "Документы.ЭлектронноеПисьмоИсходящее.ЗаполнитьВзаимодействияОснованияУПодчиненныхПисемКОбработке"; + Обработчик.ОчередьОтложеннойОбработки = 1; + Обработчик.ЧитаемыеОбъекты = "Документ.ЭлектронноеПисьмоВходящее, Документ.ЭлектронноеПисьмоИсходящее"; + Обработчик.ИзменяемыеОбъекты = "Документ.ЭлектронноеПисьмоИсходящее"; + Обработчик.ПриоритетыВыполнения = ОбновлениеИнформационнойБазы.ПриоритетыВыполненияОбработчика(); + Приоритет = Обработчик.ПриоритетыВыполнения.Добавить(); + Приоритет.Процедура = "Документы.ЭлектронноеПисьмоВходящее.ЗаполнитьВзаимодействияОснованияУПодчиненныхПисем"; + Приоритет.Порядок = "Любой"; + Приоритет = Обработчик.ПриоритетыВыполнения.Добавить(); + Приоритет.Процедура = "Документы.ЭлектронноеПисьмоИсходящее.ЗаполнитьСписокКонтактовИсходящихЭлектронныхПисем"; + Приоритет.Порядок = "До"; + Обработчик.Комментарий = НСтр("ru = 'Выполняет дозаполнение реквизита ВзаимодействиеОснование для исходящее писем, у которых письмо основание в ИБ есть, но оно не указано.'"); + + Обработчик = Обработчики.Добавить(); + Обработчик.Версия = "2.3.4.118"; + Обработчик.РежимВыполнения = "Отложенно"; + Обработчик.Идентификатор = Новый УникальныйИдентификатор("eb7fe7da-ffd1-437f-85c7-8d673c79c4f0"); + Обработчик.Процедура = "Документы.ЭлектронноеПисьмоИсходящее.ЗаполнитьСписокКонтактовИсходящихЭлектронныхПисем"; + Обработчик.ПроцедураЗаполненияДанныхОбновления = "Документы.ЭлектронноеПисьмоИсходящее.ОпределитьНезаполненныеКонтактыВИсходящихЭлектронныхПисьмах"; + Обработчик.ОчередьОтложеннойОбработки = 2; + Обработчик.ЧитаемыеОбъекты = "Документ.ЭлектронноеПисьмоИсходящее"; + Обработчик.ИзменяемыеОбъекты = "Документ.ЭлектронноеПисьмоИсходящее"; + Обработчик.Комментарий = НСтр("ru = 'Выполняет определение контакта по электронной почте для исходящих писем, у которых он не установлен.'"); + Обработчик.ПриоритетыВыполнения = ОбновлениеИнформационнойБазы.ПриоритетыВыполненияОбработчика(); + Приоритет = Обработчик.ПриоритетыВыполнения.Добавить(); + Приоритет.Процедура = "Документы.ЭлектронноеПисьмоВходящее.ЗаполнитьВзаимодействияОснованияУПодчиненныхПисем"; + Приоритет.Порядок = "После"; + Приоритет = Обработчик.ПриоритетыВыполнения.Добавить(); + Приоритет.Процедура = "Документы.ЭлектронноеПисьмоИсходящее.ЗаполнитьВзаимодействияОснованияУПодчиненныхПисем"; + Приоритет.Порядок = "После"; + КонецПроцедуры Процедура ОтключитьПодсистемуВМоделиСервиса() Экспорт @@ -2795,7 +2924,7 @@ Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | Встреча.Ссылка, - | Встреча.Предмет + | Встреча.УдалитьПредмет КАК Предмет |ИЗ | Документ.Встреча КАК Встреча | @@ -2803,7 +2932,7 @@ | |ВЫБРАТЬ | ЗапланированноеВзаимодействие.Ссылка, - | ЗапланированноеВзаимодействие.Предмет + | ЗапланированноеВзаимодействие.УдалитьПредмет |ИЗ | Документ.ЗапланированноеВзаимодействие КАК ЗапланированноеВзаимодействие | @@ -2811,7 +2940,7 @@ | |ВЫБРАТЬ | ТелефонныйЗвонок.Ссылка, - | ТелефонныйЗвонок.Предмет + | ТелефонныйЗвонок.УдалитьПредмет КАК Предмет |ИЗ | Документ.ТелефонныйЗвонок КАК ТелефонныйЗвонок | @@ -2819,7 +2948,7 @@ | |ВЫБРАТЬ | ЭлектронноеПисьмоВходящее.Ссылка, - | ЭлектронноеПисьмоВходящее.Предмет + | ЭлектронноеПисьмоВходящее.УдалитьПредмет КАК Предмет |ИЗ | Документ.ЭлектронноеПисьмоВходящее КАК ЭлектронноеПисьмоВходящее | @@ -2827,7 +2956,7 @@ | |ВЫБРАТЬ | ЭлектронноеПисьмоИсходящее.Ссылка, - | ЭлектронноеПисьмоИсходящее.Предмет + | ЭлектронноеПисьмоИсходящее.УдалитьПредмет КАК Предмет |ИЗ | Документ.ЭлектронноеПисьмоИсходящее КАК ЭлектронноеПисьмоИсходящее"; @@ -2980,8 +3109,151 @@ КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// Общие обработчики событий документов взаимодействий. +Функция ТекстЗапросаОтметкиКОбработкиЗаполненияПисемОснований(ПолноеИмяДокумента) Экспорт + + Текст = " + |ВЫБРАТЬ + | ТаблицаДокумента.Ссылка КАК Ссылка + |ИЗ + | ЖурналДокументов.Взаимодействия КАК Взаимодействия + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПолноеИмяДокумента КАК ТаблицаДокумента + | ПО Взаимодействия.ИдентификаторСообщения = ТаблицаДокумента.ИдентификаторОснования + | И Взаимодействия.УчетнаяЗапись = ТаблицаДокумента.УчетнаяЗапись + | И Взаимодействия.Ссылка <> ТаблицаДокумента.ВзаимодействиеОснование + | И (Взаимодействия.ИдентификаторСообщения <> """") + | И (ТаблицаДокумента.ВзаимодействиеОснование <> """")"; + + Возврат СтрЗаменить(Текст, "ПолноеИмяДокумента", ПолноеИмяДокумента); + +КонецФункции + +Процедура ЗаполнитьВзаимодействияОснованияУПодчиненныхПисем(Параметры, ПолноеИмяДокумента, МетаданныеДокумента) Экспорт + + ТекстЗапроса = " + |ВЫБРАТЬ + | ТаблицаДокумента.Ссылка КАК Письмо, + | Взаимодействия.Ссылка КАК ПисьмоОснование + |ИЗ + | &ВТДокументыДляОбработки КАК СсылкиДляОбработки + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПолноеИмяДокумента КАК ТаблицаДокумента + | ПО ТаблицаДокумента.Ссылка = СсылкиДляОбработки.Ссылка + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ЖурналДокументов.Взаимодействия КАК Взаимодействия + | ПО Взаимодействия.ИдентификаторСообщения = ТаблицаДокумента.ИдентификаторОснования + | И Взаимодействия.УчетнаяЗапись = ТаблицаДокумента.УчетнаяЗапись + | И Взаимодействия.Ссылка <> ТаблицаДокумента.ВзаимодействиеОснование + | И (Взаимодействия.ИдентификаторСообщения <> """") + | И (ТаблицаДокумента.ВзаимодействиеОснование <> """") + | + |; + |////////////////////////////////////////////////////////////////////////////////1 + |ВЫБРАТЬ РАЗЛИЧНЫЕ + | СсылкиДляОбработки.Ссылка + |ИЗ + | &ВТДокументыДляОбработки КАК СсылкиДляОбработки + |; + |"; + + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ПолноеИмяДокумента", ПолноеИмяДокумента); + + МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; + Результат = ОбновлениеИнформационнойБазы.СоздатьВременнуюТаблицуСсылокДляОбработки(Параметры.Очередь, ПолноеИмяДокумента, МенеджерВременныхТаблиц); + Если НЕ Результат.ЕстьДанныеДляОбработки Тогда + Параметры.ОбработкаЗавершена = Истина; + Возврат; + КонецЕсли; + Если НЕ Результат.ЕстьЗаписиВоВременнойТаблице Тогда + Параметры.ОбработкаЗавершена = Ложь; + Возврат; + КонецЕсли; + + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ВТДокументыДляОбработки", Результат.ИмяВременнойТаблицы); + + Запрос = Новый Запрос(ТекстЗапроса); + Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц; + + Результат = Запрос.ВыполнитьПакет(); + ВыборкаПисьма = Результат[0].Выбрать(); + + // Здесь все документы, пришедшие из очереди. + ТаблицаСсылокКОбработке = Результат[1].Выгрузить(); + СоответствиеОбработанныхДокументов = Новый Соответствие; + + Пока ВыборкаПисьма.Следующий() Цикл + + НачатьТранзакцию(); + + Попытка + + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить(ПолноеИмяДокумента); + ЭлементБлокировки.УстановитьЗначение("Ссылка", ВыборкаПисьма.Письмо); + ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный; + Блокировка.Заблокировать(); + + Исключение + + СоответствиеОбработанныхДокументов.Вставить(ВыборкаПисьма.Письмо); + ТекстСообщения = НСтр("ru = 'Не удалось заблокировать документ: %Регистратор% по причине: %Причина%'"); + ТекстСообщения = СтрЗаменить(ТекстСообщения, "%Регистратор%", ВыборкаПисьма.Письмо); + ТекстСообщения = СтрЗаменить(ТекстСообщения, "%Причина%", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), + УровеньЖурналаРегистрации.Предупреждение, + МетаданныеДокумента, + ВыборкаПисьма.Письмо, + ТекстСообщения); + Продолжить; + + ОтменитьТранзакцию(); + + КонецПопытки; + + + Попытка + + ПисьмоОбъект = ВыборкаПисьма.Письмо.ПолучитьОбъект(); + + Если ПисьмоОбъект = Неопределено Тогда + СоответствиеОбработанныхДокументов.Вставить(ВыборкаПисьма.Письмо); + Продолжить; + КонецЕсли; + + ПисьмоОбъект.ВзаимодействиеОснование = ВыборкаПисьма.ПисьмоОснование; + + ОбновлениеИнформационнойБазы.ЗаписатьОбъект(ПисьмоОбъект, Истина); + + СоответствиеОбработанныхДокументов.Вставить(ВыборкаПисьма.Письмо); + ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(ВыборкаПисьма.Письмо,, Параметры.Очередь); + + ЗафиксироватьТранзакцию(); + + Исключение + + ОтменитьТранзакцию(); + ТекстСообщения = НСтр("ru = 'Не удалось обработать документ: %Регистратор% по причине: %Причина%'"); + ТекстСообщения = СтрЗаменить(ТекстСообщения, "%Регистратор%", ВыборкаПисьма.Письмо); + ТекстСообщения = СтрЗаменить(ТекстСообщения, "%Причина%", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), + УровеньЖурналаРегистрации.Предупреждение, + МетаданныеДокумента, + ВыборкаПисьма.Письмо, + ТекстСообщения); + ВызватьИсключение; + + КонецПопытки; + + КонецЦикла; + + Для Каждого СтрокаТаблицы Из ТаблицаСсылокКОбработке Цикл + + Если СоответствиеОбработанныхДокументов.Получить(СтрокаТаблицы.Ссылка) = Неопределено Тогда + ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(СтрокаТаблицы.Ссылка,, Параметры.Очередь); + КонецЕсли; + + КонецЦикла; + + Параметры.ОбработкаЗавершена = Не ОбновлениеИнформационнойБазы.ЕстьДанныеДляОбработки(Параметры.Очередь, ПолноеИмяДокумента); + +КонецПроцедуры // Заполняет список выбора для поля "Рассмотреть после". // @@ -3162,6 +3434,9 @@ КонецПроцедуры +#КонецОбласти + + ////////////////////////////////////////////////////////////////////////////////// // Работа с элементами и реквизитами форм списков и документов. @@ -3172,7 +3447,7 @@ ОписаниеТипаДинамическийСписок = Новый ОписаниеТипов("ДинамическийСписок"); ДобавляемыеРеквизиты = Новый Массив; - МассивОписанийВозможныхКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанийВозможныхКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); // Создадим динамические списки. Для каждого ЭлементМассиваОписания Из МассивОписанийВозможныхКонтактов Цикл @@ -3220,7 +3495,8 @@ "Страница_" + ЭлементМассиваОписания.Имя)]); ЭлементТаблица.ПутьКДанным = "Список_" + ЭлементМассиваОписания.Имя; ЭлементТаблица.УстановитьДействие("Выбор","СписокСправочникаВыбор"); - ЭлементТаблица.Высота = 10; + ЭлементТаблица.АвтоМаксимальнаяВысота = Ложь; + ЭлементТаблица.АвтоМаксимальнаяШирина = Ложь; Если Форма.ИмяФормы = "ОбщаяФорма.ВыборКонтакта" Тогда ЭлементТаблица.РежимВыделения = РежимВыделенияТаблицы.Одиночный; ЭлементТаблица.УстановитьДействие("ПриАктивизацииСтроки","Подключаемый_СписокКонтактыПриАктивизацииСтроки"); @@ -3230,6 +3506,10 @@ "ПриАктивизацииСтроки","Подключаемый_СписокВладелецПриАктивизацииСтроки"); ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( Форма["Список_" + ЭлементМассиваОписания.Имя], "Владелец", Неопределено, , , Истина); + ЭлементТаблица.Высота = 5; + Форма.Элементы["Таблица_" + ЭлементМассиваОписания.ИмяВладельца].Высота = 5; + Иначе + ЭлементТаблица.Высота = 10; КонецЕсли; КолонкаСсылка = Форма.Элементы.Добавить( @@ -3746,7 +4026,7 @@ // Функция ПолучитьВложенияПисьмаСНеПустымИД(Письмо) Экспорт - ДанныеПрисоединенныхФайловПисьма = ВзаимодействияПереопределяемый.ПолучитьДанныеОбъектаМетаданныхПрисоединенныхФайловПисьма(Письмо); + ДанныеПрисоединенныхФайловПисьма = ВзаимодействияПереопределяемый.ДанныеОбъектаМетаданныхПрисоединенныхФайловПисьма(Письмо); Если ДанныеПрисоединенныхФайловПисьма = Неопределено Тогда ИмяОбъектаМетаданных = УправлениеЭлектроннойПочтой.ПолучитьИмяОбъектаМетаданныхПрисоединенныхФайловПисьма(Письмо); @@ -4108,7 +4388,8 @@ ИЛИ ТипЗнч(ДочернийУзел) = Тип("ЭлементHTML") ИЛИ ТипЗнч(ДочернийУзел) = Тип("ТекстDOM") ИЛИ ТипЗнч(ДочернийУзел) = Тип("КомментарийDOM") - ИЛИ ТипЗнч(ДочернийУзел) = Тип("ЭлементТаблицаHTML") Тогда + ИЛИ ТипЗнч(ДочернийУзел) = Тип("ЭлементТаблицаHTML") + ИЛИ ТипЗнч(ДочернийУзел) = Тип("ЭлементФорматированногоТекстаHTML") Тогда МассивДочернихУзлов.Добавить(ДочернийУзел); @@ -4502,7 +4783,7 @@ // Функция СостояниеСообщенияSMSСогласноСтатусуДоставки(СтатусДоставки); - Если СтатусДоставки = "НеОтправлялось" Тогда + Если СтатусДоставки = "НеОтправлено" Тогда Возврат Перечисления.СостоянияСообщенияSMS.НеОтправленоПровайдером; ИначеЕсли СтатусДоставки = "Отправляется" Тогда Возврат Перечисления.СостоянияСообщенияSMS.ОтправляетсяПровайдером; @@ -5528,7 +5809,10 @@ КонецЦикла; КонецЕсли; - ОпределитьПапкиДляМассиваПисемПоУмолчанию(МассивПисем, ТаблицаСоответствий); + Если МассивПисем.Количество() > 0 Тогда + ОпределитьПапкиДляМассиваПисемПоУмолчанию(МассивПисем, ТаблицаСоответствий); + КонецЕсли; + Возврат ТаблицаСоответствий; КонецФункции @@ -6240,15 +6524,18 @@ Если МассивВзаимодействий.Количество() > 0 Тогда Запрос = Новый Запрос; - Запрос.Текст = "ВЫБРАТЬ - | ПредметыПапкиВзаимодействий.Взаимодействие + Запрос.Текст = " + |ВЫБРАТЬ + | ПредметыПапкиВзаимодействий.Взаимодействие КАК Взаимодействие |ИЗ | РегистрСведений.ПредметыПапкиВзаимодействий КАК ПредметыПапкиВзаимодействий |ГДЕ | НЕ ПредметыПапкиВзаимодействий.Рассмотрено - | И ПредметыПапкиВзаимодействий.РассмотретьПосле <> &ДатаРассмотрения"; + | И ПредметыПапкиВзаимодействий.РассмотретьПосле <> &ДатаРассмотрения + | И ПредметыПапкиВзаимодействий.Взаимодействие В(&МассивВзаимодействий)"; Запрос.УстановитьПараметр("ДатаРассмотрения", ДатаРассмотрения); + Запрос.УстановитьПараметр("МассивВзаимодействий", МассивВзаимодействий); Возврат Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Взаимодействие"); Иначе @@ -6262,19 +6549,6 @@ /////////////////////////////////////////////////////////////////////////////////// // Прочее -// Получает в привилегированном режиме значение константы "Адрес публикации информационной базы в интернете". -// -// Возвращаемое значение: -// Строка - значение константы. -// -Функция АдресПубликацииИнформационнойБазыВИнтернете() Экспорт - - УстановитьПривилегированныйРежим(Истина); - - Возврат Константы.АдресПубликацииИнформационнойБазыВИнтернете.Получить(); - -КонецФункции - // Процедура заполняет список выбора времени. // Параметры: // ПолеВводаФормы - элемент-владелец списка, @@ -6456,7 +6730,7 @@ НаборЗаписей.Отбор.Взаимодействие.Установить(ДокументОбъект.Ссылка); Таблица = Новый ТаблицаЗначений; - ОписаниеТиповКонтактов = Новый ОписаниеТипов(ВзаимодействияКлиентСервер.ПолучитьМассивВозможныхТиповКонтактов()); + ОписаниеТиповКонтактов = Новый ОписаниеТипов(ВзаимодействияКлиентСервер.МассивВозможныхТиповКонтактов()); Таблица.Колонки.Добавить("Контакт", ОписаниеТиповКонтактов); Таблица.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(100, ДопустимаяДлина.Переменная))); @@ -6911,4 +7185,30 @@ КонецФункции +Функция СписокДоступныхТиповПредметов() Экспорт + + СписокВыбораТипаПредмета = Новый СписокЗначений; + + Для Каждого ТипПредмета Из Метаданные.ОпределяемыеТипы.ПредметВзаимодействия.Тип.Типы() Цикл + + МетаданныеТипаПредмета = Метаданные.НайтиПоТипу(ТипПредмета); + Если МетаданныеТипаПредмета = Неопределено Тогда + Продолжить; + КонецЕсли; + + Если НЕ ОбщегоНазначения.ОбъектМетаданныхДоступенПоФункциональнымОпциям(МетаданныеТипаПредмета) Тогда + Продолжить; + КонецЕсли; + + ЯвляетсяВзаимодействием = ВзаимодействияКлиентСервер.ЯвляетсяВзаимодействием(ТипПредмета); + + СписокВыбораТипаПредмета.Добавить(Метаданные.НайтиПоТипу(ТипПредмета).ПолноеИмя(), Строка(ТипПредмета), ЯвляетсяВзаимодействием); + + КонецЦикла; + + Возврат СписокВыбораТипаПредмета; + +КонецФункции + + #КонецОбласти diff --git a/SSL/src/CommonModules/ВзаимодействияВызовСервера/Module.bsl b/SSL/src/CommonModules/ВзаимодействияВызовСервера/Module.bsl index ee938a0fc..98ee1f5b0 100644 --- a/SSL/src/CommonModules/ВзаимодействияВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/ВзаимодействияВызовСервера/Module.bsl @@ -90,7 +90,7 @@ КонецЕсли; КонецЕсли; - МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); ЭлементМассиваОписания = Неопределено; Для Каждого ЭлементМассива Из МассивОписанияТиповКонтактов Цикл diff --git a/SSL/src/CommonModules/ВзаимодействияКлиент/Module.bsl b/SSL/src/CommonModules/ВзаимодействияКлиент/Module.bsl index c3dd3fa2f..d4c19651b 100644 --- a/SSL/src/CommonModules/ВзаимодействияКлиент/Module.bsl +++ b/SSL/src/CommonModules/ВзаимодействияКлиент/Module.bsl @@ -34,7 +34,7 @@ ПараметрыПисьма.Вставить("Вложения", СписокФайлов); ПараметрыПисьма.Вставить("Предмет", Предмет); - ОткрытьФорму("Документ.ЭлектронноеПисьмоИсходящее.Форма.ФормаДокумента", ПараметрыПисьма, , , , , ОписаниеОповещенияОЗакрытии); + ОткрытьФорму("Документ.ЭлектронноеПисьмоИсходящее.ФормаОбъекта", ПараметрыПисьма, , , , , ОписаниеОповещенияОЗакрытии); КонецПроцедуры @@ -60,7 +60,7 @@ ПараметрыСообщения.Вставить("Предмет", Предмет); ПараметрыСообщения.Вставить("ОтправлятьВТранслите", ОтправлятьВТранслите); - ОткрытьФорму("Документ.СообщениеSMS.Форма.ФормаДокумента", ПараметрыСообщения); + ОткрытьФорму("Документ.СообщениеSMS.ФормаОбъекта", ПараметрыСообщения); КонецПроцедуры @@ -131,6 +131,61 @@ КонецПроцедуры +// Обработчик для события формы ПроверкаПеретаскивания. Вызывается для списка предметов при перетаскивании в него взаимодействий. +// +// Параметры: +// Элемент - ТаблицаФормы - таблица, для которой обрабатывается событие. +// ПараметрыПеретаскивания - ПараметрыПеретаскивания - содержит перетаскиваемое значение, тип действия и возможные действия при перетаскивании. +// СтандартнаяОбработка - Булево - признак стандартной обработки события. +// Строка - СтрокаТаблицы - строка таблицы, над которой находится курсор. +// Поле - Поле - элемент управляемой формы, с которым связана данная колонка таблицы. +// +Процедура СписокПредметПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, Строка, Поле) Экспорт + + Если (Строка = Неопределено) ИЛИ (ПараметрыПеретаскивания.Значение = Неопределено) Тогда + Возврат; + КонецЕсли; + + СтандартнаяОбработка = Ложь; + + Если ТипЗнч(ПараметрыПеретаскивания.Значение) = Тип("Массив") Тогда + + Для каждого ЭлементМассива Из ПараметрыПеретаскивания.Значение Цикл + Если ВзаимодействияКлиентСервер.ЯвляетсяВзаимодействием(ЭлементМассива) Тогда + Возврат; + КонецЕсли; + КонецЦикла; + КонецЕсли; + + ПараметрыПеретаскивания.Действие = ДействиеПеретаскивания.Отмена; + +КонецПроцедуры + +// Обработчик для события формы Перетаскивание Вызывается для списка предметов при перетаскивании в него взаимодействий. +// +// Параметры: +// Элемент - ТаблицаФормы - таблица, для которой обрабатывается событие. +// ПараметрыПеретаскивания - ПараметрыПеретаскивания - содержит перетаскиваемое значение, тип действия и возможные действия при перетаскивании. +// СтандартнаяОбработка - Булево - признак стандартной обработки события. +// Строка - СтрокаТаблицы - строка таблицы, над которой находится курсор. +// Поле - Поле - элемент управляемой формы, с которым связана данная колонка таблицы. +// +Процедура СписокПредметПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, Строка, Поле) Экспорт + + СтандартнаяОбработка = Ложь; + + Если ТипЗнч(ПараметрыПеретаскивания.Значение) = Тип("Массив") Тогда + + ВзаимодействияВызовСервера.УстановитьПредметДляМассиваВзаимодействий(ПараметрыПеретаскивания.Значение, + Строка, Истина); + + КонецЕсли; + + Оповестить("ИзменениеПредметаВзаимодействий"); + +КонецПроцедуры + + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -254,6 +309,10 @@ Возврат; КонецЕсли; + Если Форма.УникальныйИдентификатор <> Параметр.ИдентификаторФормы Тогда + Возврат; + КонецЕсли; + БылИзмененКонтакт = (Параметр.Контакт <> Параметр.ВыбранныйКонтакт) И ЗначениеЗаполнено(Параметр.Контакт); Контакт = Параметр.ВыбранныйКонтакт; Если Параметр.ТолькоEmail Тогда @@ -388,8 +447,11 @@ // Адрес - Строка - адрес контакта. // Представление - Строка - представление контакта. // Контакт - Ссылка - контакт. -// Параметры - Структура - структура параметров открытия формы, состоит . -// ТолькоEmail, ТолькоТелефон, ЗаменятьПустыеАдресИПредставление, ДляФормыУточненияКонтактов. +// Параметры - Структура - структура параметров открытия формы, состоит из +// ТолькоEmail, +// ТолькоТелефон, +// ЗаменятьПустыеАдресИПредставление, +// ДляФормыУточненияКонтактов. // // Возвращаемое значение: // Булево - истина, если выбор был сделан, ложь в обратном случае. @@ -397,14 +459,15 @@ Функция ВыбратьКонтакт(Предмет, Адрес, Представление, Контакт, Параметры) Экспорт ПараметрыОткрытия = Новый Структура; - ПараметрыОткрытия.Вставить("Предмет", Предмет); - ПараметрыОткрытия.Вставить("Адрес", Адрес); - ПараметрыОткрытия.Вставить("Представление", Представление); - ПараметрыОткрытия.Вставить("Контакт", Контакт); - ПараметрыОткрытия.Вставить("ТолькоEmail", Параметры.ТолькоEmail); - ПараметрыОткрытия.Вставить("ТолькоТелефон", Параметры.ТолькоТелефон); + ПараметрыОткрытия.Вставить("Предмет", Предмет); + ПараметрыОткрытия.Вставить("Адрес", Адрес); + ПараметрыОткрытия.Вставить("Представление", Представление); + ПараметрыОткрытия.Вставить("Контакт", Контакт); + ПараметрыОткрытия.Вставить("ТолькоEmail", Параметры.ТолькоEmail); + ПараметрыОткрытия.Вставить("ТолькоТелефон", Параметры.ТолькоТелефон); ПараметрыОткрытия.Вставить("ЗаменятьПустыеАдресИПредставление", Параметры.ЗаменятьПустыеАдресИПредставление); - ПараметрыОткрытия.Вставить("ДляФормыУточненияКонтактов", Параметры.ДляФормыУточненияКонтактов); + ПараметрыОткрытия.Вставить("ДляФормыУточненияКонтактов", Параметры.ДляФормыУточненияКонтактов); + ПараметрыОткрытия.Вставить("ИдентификаторФормы", Параметры.ИдентификаторФормы); ОткрытьФорму("ОбщаяФорма.ВыборКонтакта", ПараметрыОткрытия); @@ -443,7 +506,7 @@ ИмяТаблицыБезПрефикса = Прав(Элемент.Имя,СтрДлина(Элемент.Имя)-8); ЗначениеОтбора = ?(Элемент.ТекущиеДанные = Неопределено, Неопределено, Элемент.ТекущиеДанные.Ссылка); - МассивОписанияКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); Для каждого ЭлементМассиваОписания Из МассивОписанияКонтактов Цикл Если ЭлементМассиваОписания.ИмяВладельца = ИмяТаблицыБезПрефикса Тогда КоллекцияОтборов = Форма["Список_" + ЭлементМассиваОписания.Имя].КомпоновщикНастроек.ФиксированныеНастройки.Отбор; @@ -540,4 +603,39 @@ КонецПроцедуры +Процедура ПредметНачалоВыбора(Форма, Элемент, ДанныеВыбора, СтандартнаяОбработка) Экспорт + + СтандартнаяОбработка = Ложь; + + ОткрытьФорму("ЖурналДокументов.Взаимодействия.Форма.ВыборТипаПредмета", ,Форма); + +КонецПроцедуры + +Процедура ФормаОбработкаВыбора(Форма, ВыбранноеЗначение, ИсточникВыбора, КонтекстВыбора) Экспорт + + Если ВРег(ИсточникВыбора.ИмяФормы) = ВРег("ЖурналДокументов.Взаимодействия.Форма.ВыборТипаПредмета") Тогда + + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("РежимВыбора", Истина); + + КонтекстВыбора = "ВыборПредмета"; + + ОткрытьФорму(ВыбранноеЗначение + ".ФормаВыбора", ПараметрыФормы, Форма); + + ИначеЕсли КонтекстВыбора = "ВыборПредмета" Тогда + + Если ВзаимодействияКлиентСервер.ЯвляетсяПредметом(ВыбранноеЗначение) + Или ВзаимодействияКлиентСервер.ЯвляетсяВзаимодействием(ВыбранноеЗначение) Тогда + + Форма.Предмет = ВыбранноеЗначение; + Форма.Модифицированность = Истина; + + КонецЕсли; + + КонтекстВыбора = Неопределено; + + КонецЕсли; + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/CommonModules/ВзаимодействияКлиентСервер/Module.bsl b/SSL/src/CommonModules/ВзаимодействияКлиентСервер/Module.bsl index 023c0f0f5..f5aeab166 100644 --- a/SSL/src/CommonModules/ВзаимодействияКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/ВзаимодействияКлиентСервер/Module.bsl @@ -19,7 +19,7 @@ // Функция ЯвляетсяКонтактом(ОбъектСсылка) Экспорт - ОписаниеТиповВозможныхКонтактов = Новый ОписаниеТипов(ПолучитьМассивВозможныхТиповКонтактов()); + ОписаниеТиповВозможныхКонтактов = Новый ОписаниеТипов(МассивВозможныхТиповКонтактов()); Возврат ОписаниеТиповВозможныхКонтактов.СодержитТип(ТипЗнч(ОбъектСсылка)); @@ -35,12 +35,18 @@ // Функция ЯвляетсяВзаимодействием(ОбъектСсылка) Экспорт - Возврат ТипЗнч(ОбъектСсылка) = Тип("ДокументСсылка.Встреча") - ИЛИ ТипЗнч(ОбъектСсылка) = Тип("ДокументСсылка.ЗапланированноеВзаимодействие") - ИЛИ ТипЗнч(ОбъектСсылка) = Тип("ДокументСсылка.ТелефонныйЗвонок") - ИЛИ ТипЗнч(ОбъектСсылка) = Тип("ДокументСсылка.ЭлектронноеПисьмоВходящее") - ИЛИ ТипЗнч(ОбъектСсылка) = Тип("ДокументСсылка.ЭлектронноеПисьмоИсходящее") - ИЛИ ТипЗнч(ОбъектСсылка) = Тип("ДокументСсылка.СообщениеSMS"); + Если ТипЗнч(ОбъектСсылка) = Тип("Тип") Тогда + ТипОбъекта = ОбъектСсылка; + Иначе + ТипОбъекта = ТипЗнч(ОбъектСсылка); + КонецЕсли; + + Возврат ТипОбъекта = Тип("ДокументСсылка.Встреча") + ИЛИ ТипОбъекта = Тип("ДокументСсылка.ЗапланированноеВзаимодействие") + ИЛИ ТипОбъекта = Тип("ДокументСсылка.ТелефонныйЗвонок") + ИЛИ ТипОбъекта = Тип("ДокументСсылка.ЭлектронноеПисьмоВходящее") + ИЛИ ТипОбъекта = Тип("ДокументСсылка.ЭлектронноеПисьмоИсходящее") + ИЛИ ТипОбъекта = Тип("ДокументСсылка.СообщениеSMS"); КонецФункции @@ -89,7 +95,7 @@ // Функция ЯвляетсяПредметом(ОбъектСсылка) Экспорт - МассивТиповПредметов = ВзаимодействияКлиентСерверПовтИспПереопределяемый.ПолучитьМассивТиповПредметов(); + МассивТиповПредметов = ВзаимодействияКлиентСерверПовтИспПереопределяемый.МассивТиповПредметов(); Для каждого ЭлементМассива Из МассивТиповПредметов Цикл @@ -293,7 +299,7 @@ // Возвращаемое значение: // Таблица значений // -Функция ПолучитьСписокКодировок() Экспорт +Функция СписокКодировок() Экспорт СписокКодировок = Новый СписокЗначений; @@ -373,9 +379,9 @@ // Возвращаемое значение: // Массив - содержит возможные типы контактов. // -Функция ПолучитьМассивВозможныхТиповКонтактов() Экспорт +Функция МассивВозможныхТиповКонтактов() Экспорт - МассивОписанияВозможныхКонтактов = ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияВозможныхКонтактов = МассивОписанияВозможныхКонтактов(); МассивВозможныхТиповКонтактов = Новый Массив; @@ -449,7 +455,7 @@ // ДобавитьЭлементМассиваОписанияВозможныхТиповКонтактов общего модуля. // ВзаимодействияКлиентСервер. // -Функция ПолучитьМассивОписанияВозможныхКонтактов() Экспорт +Функция МассивОписанияВозможныхКонтактов() Экспорт МассивВозможныеКонтакты = Новый Массив(); ДобавитьЭлементМассиваОписанияВозможныхТиповКонтактов(МассивВозможныеКонтакты, diff --git a/SSL/src/CommonModules/ВзаимодействияКлиентСерверПовтИспПереопределяемый/Module.bsl b/SSL/src/CommonModules/ВзаимодействияКлиентСерверПовтИспПереопределяемый/Module.bsl index 49af321b9..8a80e9140 100644 --- a/SSL/src/CommonModules/ВзаимодействияКлиентСерверПовтИспПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ВзаимодействияКлиентСерверПовтИспПереопределяемый/Module.bsl @@ -12,7 +12,7 @@ // Возвращаемое значение: // Булево - массив строковых представлений возможных предметов взаимодействий. // -Функция ПолучитьМассивТиповПредметов() Экспорт +Функция МассивТиповПредметов() Экспорт МассивТиповПредметов = Новый Массив; diff --git a/SSL/src/CommonModules/ВзаимодействияПереопределяемый/Module.bsl b/SSL/src/CommonModules/ВзаимодействияПереопределяемый/Module.bsl index e0018a032..153e1dc23 100644 --- a/SSL/src/CommonModules/ВзаимодействияПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ВзаимодействияПереопределяемый/Module.bsl @@ -14,7 +14,7 @@ // необходимо поместить во временную таблицу. // ИмяТаблицы - Строка - имя таблицы предмета взаимодействий, в котором будет выполнен поиск. // -Функция ПолучитьТекстЗапросаПоискКонтактовПоПредмету( +Функция ТекстЗапросаПоискКонтактовПоПредмету( ПомещатьВоВременнуюТаблицу, ИмяТаблицы, Объединить = Ложь) Экспорт @@ -38,7 +38,7 @@ // - Владелец - владелец присоединенных файлов, // - ИмяСправочникаПрисоединенныеФайлы - имя объекта метаданных присоединенных файлов. // -Функция ПолучитьДанныеОбъектаМетаданныхПрисоединенныхФайловПисьма(Письмо) Экспорт +Функция ДанныеОбъектаМетаданныхПрисоединенныхФайловПисьма(Письмо) Экспорт Возврат Неопределено; diff --git a/SSL/src/CommonModules/ВзаимодействияСобытия/Module.bsl b/SSL/src/CommonModules/ВзаимодействияСобытия/Module.bsl index 87ffeef6a..6caff11dd 100644 --- a/SSL/src/CommonModules/ВзаимодействияСобытия/Module.bsl +++ b/SSL/src/CommonModules/ВзаимодействияСобытия/Module.bsl @@ -33,4 +33,39 @@ КонецПроцедуры +// Обработчик подписок ЗаполнитьНаборыЗначенийДоступаТабличныхЧастей* на событие ПередЗаписью +// вызывает заполнение значений доступа табличной части объекта НаборыЗначенийДоступа, +// когда для ограничения доступа к самому объекту используется шаблон #ПоНаборамЗначений. +// Возможен случай использования подсистемы Управление доступом, когда +// указанной подписки не существует, если для указанной цели наборы не применяются. +// +// Параметры: +// Источник - СправочникОбъект, +// ДокументОбъект, +// ПланВидовХарактеристикОбъект, +// ПланСчетовОбъект, +// ПланВидовРасчетаОбъект, +// БизнесПроцессОбъект, +// ЗадачаОбъект, +// ПланОбменаОбъект - объект данных, передаваемый в подписку на событие ПередЗаписью. +// +// Отказ - Булево - параметр, передаваемый в подписку на событие ПередЗаписью. +// +// РежимЗаписи - Булево - параметр, передаваемый в подписку на событие ПередЗаписью, +// когда тип параметра Источник - ДокументОбъект. +// +// РежимПроведения - Булево - параметр, передаваемый в подписку на событие ПередЗаписью, +// когда тип параметра Источник - ДокументОбъект. +// +Процедура ЗаполнитьНаборыЗначенийДоступаТабличныхЧастей(Источник, Отказ = Неопределено, РежимЗаписи = Неопределено, РежимПроведения = Неопределено) Экспорт + + // ОбменДанными.Загрузка проверяется внутри вызова. + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда + МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом"); + МодульУправлениеДоступом.ЗаполнитьНаборыЗначенийДоступаТабличныхЧастей(Источник, Отказ, РежимЗаписи, РежимПроведения); + КонецЕсли; + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/CommonModules/ГрафикиРаботы/Module.bsl b/SSL/src/CommonModules/ГрафикиРаботы/Module.bsl index 94db3fa33..d0fcf58f3 100644 --- a/SSL/src/CommonModules/ГрафикиРаботы/Module.bsl +++ b/SSL/src/CommonModules/ГрафикиРаботы/Module.bsl @@ -495,10 +495,6 @@ // Процедура СоздатьКалендарьПятидневкаРоссийскойФедерации() Экспорт - Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() И Не ОбщегоНазначенияПовтИсп.ЭтоАвтономноеРабочееМесто() Тогда - КалендарныеГрафики.ОбновитьПроизводственныеКалендари(); - КонецЕсли; - ПроизводственныйКалендарь = КалендарныеГрафики.ПроизводственныйКалендарьРоссийскойФедерации(); Если ПроизводственныйКалендарь = Неопределено Тогда Возврат; diff --git a/SSL/src/CommonModules/ДанныеЕдиныхГосРеестров/Module.bsl b/SSL/src/CommonModules/ДанныеЕдиныхГосРеестров/Module.bsl index 3391b78b4..7d1f94fe7 100644 --- a/SSL/src/CommonModules/ДанныеЕдиныхГосРеестров/Module.bsl +++ b/SSL/src/CommonModules/ДанныеЕдиныхГосРеестров/Module.bsl @@ -403,7 +403,7 @@ // Завершенные - Булево - требуется ли информация о завершенных проверках (плановых и внеплановых), // по которым уже известен результат. // Незавершенные - Булево - требуется ли информация о незавершенных проверках (плановых и внеплановых), -// результат по которым не известен. +// результат по которым не известен. // // Возвращаемое значение: // Структура - информация о проверках. @@ -478,6 +478,8 @@ РеквизитыОрганизации.Вставить("РегистрацияВФСС"); // Структура из НоваяРегистрацияВФСС(). РеквизитыОрганизации.Вставить("КодОКВЭД"); // Строка, 8 + РеквизитыОрганизации.Вставить("ЭтоОКВЭД2", Ложь); // Булево - КодОКВЭД редакции 2 или редакции 1. + // Служебный реквизит РеквизитыОрганизации.Вставить("ОписаниеОшибки"); // Строка, 0 @@ -506,8 +508,10 @@ РеквизитыПредпринимателя.Вставить("РегистрацияВПенсионномФонде"); // Структура из НоваяРегистрацияВПенсионномФонде(). РеквизитыПредпринимателя.Вставить("РегистрацияВФСС"); // Структура из НоваяРегистрацияВФСС(). РеквизитыПредпринимателя.Вставить("ДатаРегистрации"); // Дата - РеквизитыПредпринимателя.Вставить("КодОКВЭД"); // Строка, 8 РеквизитыПредпринимателя.Вставить("СвидетельствоОРегистрации"); // Структура из НовоеСвидетельствоОРегистрации(). + РеквизитыПредпринимателя.Вставить("КодОКВЭД"); // Строка, 8 + + РеквизитыПредпринимателя.Вставить("ЭтоОКВЭД2", Ложь); // Булево - КодОКВЭД редакции 2 или редакции 1. // Служебный реквизит РеквизитыПредпринимателя.Вставить("ОписаниеОшибки"); // Строка, 0 @@ -680,6 +684,8 @@ Результат = Новый ТаблицаЗначений; Результат.Колонки.Добавить("КодОКВЭД", Новый ОписаниеТипов("Строка")); Результат.Колонки.Добавить("НаименованиеОКВЭД", Новый ОписаниеТипов("Строка")); + // ЭтоОКВЭД2 = Истина - код в строке по классификатору редакции 2, Ложь - редакции 1. + Результат.Колонки.Добавить("ЭтоОКВЭД2", Новый ОписаниеТипов("Булево")); Возврат Результат; КонецФункции @@ -840,6 +846,7 @@ Реквизиты.Наименование = СокрП(Сред(Реквизиты.Наименование, Поз)) + " " + СокрП(Лев(Реквизиты.Наименование, Поз-1)); Реквизиты.Наименование = СтрЗаменить(Реквизиты.Наименование, """", ""); КонецЕсли; + Реквизиты.Наименование = СокрЛП(Реквизиты.Наименование); КонецПроцедуры @@ -875,7 +882,15 @@ МассивСлов = СтрРазделить(ЗначениеСвойства, " ", Ложь); МаксИндексСлова = ?(МассивСлов.Количество() = 1, 0, МассивСлов.Количество() - 2); Для ИндексСлова = 0 По МаксИндексСлова Цикл - МассивСлов[ИндексСлова] = ТРег(МассивСлов[ИндексСлова]); + Если ЭтоРимскоеЧисло(МассивСлов[ИндексСлова]) Тогда + МассивСлов[ИндексСлова] = ВРег(МассивСлов[ИндексСлова]); + Иначе + МассивЧастейСлова = СтрРазделить(МассивСлов[ИндексСлова], ".", Ложь); + Для ИндексЧастиСлова = 0 По МассивЧастейСлова.Количество() - 1 Цикл + МассивЧастейСлова[ИндексЧастиСлова] = ТРег(МассивЧастейСлова[ИндексЧастиСлова]); + КонецЦикла; + МассивСлов[ИндексСлова] = СтрСоединить(МассивЧастейСлова, "."); + КонецЕсли; КонецЦикла; Объект[СвойствоОбъекта.Имя] = СтрСоединить(МассивСлов, " "); @@ -902,13 +917,11 @@ ЗначениеСвойства = Объект[СвойствоОбъекта.Имя]; Если ТипЗнч(ЗначениеСвойства) = Тип("Строка") Тогда МассивСлов = СтрРазделить(ЗначениеСвойства, " ", Ложь); - Для ИндексСлова = 0 По МассивСлов.ВГраница() Цикл - Слово = ВРег(МассивСлов[ИндексСлова]); - АдресноеСокращение = АдресныеСокращения[Слово]; - Если АдресноеСокращение <> Неопределено Тогда - МассивСлов[ИндексСлова] = АдресноеСокращение; - КонецЕсли; - КонецЦикла; + Слово = ВРег(МассивСлов[МассивСлов.ВГраница()]); + АдресноеСокращение = АдресныеСокращения[Слово]; + Если АдресноеСокращение <> Неопределено Тогда + МассивСлов[МассивСлов.ВГраница()] = АдресноеСокращение; + КонецЕсли; Объект[СвойствоОбъекта.Имя] = СтрСоединить(МассивСлов, " "); ИначеЕсли ТипЗнч(ЗначениеСвойства) = Тип("ОбъектXDTO") Тогда ЗаменитьПолныеНаименованияАдресныхОбъектовСокращенными(ЗначениеСвойства, АдресныеСокращения); @@ -917,7 +930,7 @@ КонецЦикла; КонецПроцедуры - + Процедура ПроверитьДополнительныеАдресныеЭлементы(Объект, Фабрика) Если Объект.Свойства().Получить("ДопАдрЭл") = Неопределено @@ -1001,7 +1014,7 @@ Реквизиты.РегистрацияВНалоговомОргане.Наименование = ОбъектXDTO.СвУчетНО.СвНО.НаимНО; Реквизиты.РегистрацияВНалоговомОргане.ДатаРегистрации = ОбъектXDTO.СвУчетНО.ДатаПостУч; - Если ОбъектXDTO.Свойства().Получить("СвАдрес") <> Неопределено // Адрес есть только у юридических лиц + Если ОбъектXDTO.Свойства().Получить("СвАдрес") <> Неопределено // Адрес есть только у юридических лиц. И ОбъектXDTO.СвАдрес <> Неопределено И ОбъектXDTO.СвАдрес.Адрес <> Неопределено Тогда @@ -1022,14 +1035,18 @@ СписокОКВЭД = ОбъектXDTO.СвОКВЭД; КодОКВЭД = ""; ДатаОКВЭД = '00010101'; + ЭтоОКВЭД2 = Ложь; Для Каждого ЭлементОКВЭД Из СписокОКВЭД Цикл Если ЭлементОКВЭД.ДатаНачДейств > ДатаОКВЭД И ЭлементОКВЭД.ПрОснДоп = "1" Тогда ДатаОКВЭД = ЭлементОКВЭД.ДатаНачДейств; КодОКВЭД = ЭлементОКВЭД.КодОКВЭД; + ЭтоОКВЭД2 = ЭлементОКВЭД.Свойства().Получить("ПрВерсОКВЭД") <> Неопределено + И ЭлементОКВЭД.ПрВерсОКВЭД = "2014"; КонецЕсли; КонецЦикла; - Реквизиты.КодОКВЭД = КодОКВЭД; + Реквизиты.КодОКВЭД = КодОКВЭД; + Реквизиты.ЭтоОКВЭД2 = ЭтоОКВЭД2; КонецЕсли; @@ -1043,7 +1060,9 @@ Для Каждого ЭлементОКВЭД Из ОбъектXDTO.СвОКВЭД Цикл Если ЭлементОКВЭД.ПрОснДоп = "1" Тогда НоваяСтрока = ИнформацияОСвязях.ВидыДеятельности.Добавить(); - НоваяСтрока.КодОКВЭД = ЭлементОКВЭД.КодОКВЭД; + НоваяСтрока.КодОКВЭД = ЭлементОКВЭД.КодОКВЭД; + НоваяСтрока.ЭтоОКВЭД2 = ЭлементОКВЭД.Свойства().Получить("ПрВерсОКВЭД") <> Неопределено + И ЭлементОКВЭД.ПрВерсОКВЭД = "2014"; Прервать; КонецЕсли; КонецЦикла; @@ -1053,7 +1072,9 @@ Продолжить; КонецЕсли; НоваяСтрока = ИнформацияОСвязях.ВидыДеятельности.Добавить(); - НоваяСтрока.КодОКВЭД = ЭлементОКВЭД.КодОКВЭД; + НоваяСтрока.КодОКВЭД = ЭлементОКВЭД.КодОКВЭД; + НоваяСтрока.ЭтоОКВЭД2 = ЭлементОКВЭД.Свойства().Получить("ПрВерсОКВЭД") <> Неопределено + И ЭлементОКВЭД.ПрВерсОКВЭД = "2014"; КонецЦикла; КонецЕсли; @@ -1540,6 +1561,7 @@ И ОбъектXDTO.СвАдрес.Адрес <> Неопределено Тогда АдресРФ_КИ = ФабрикаXDTO.Создать(ФабрикаXDTO.Тип(ПространствоИменКИ, "АдресРФ")); + ЗаменитьПолныеНаименованияАдресныхОбъектовСокращенными(ОбъектXDTO.СвАдрес.Адрес.Состав); ПроверитьДополнительныеАдресныеЭлементы(ОбъектXDTO.СвАдрес.Адрес.Состав, Фабрика); ЗаполнитьОбъектXDTOКонтактнойИнформации(ФабрикаXDTO, АдресРФ_КИ, ОбъектXDTO.СвАдрес.Адрес.Состав); @@ -1850,15 +1872,17 @@ Иначе + ПараметрыПодключения = ОбщегоНазначения.ПараметрыПодключенияWSПрокси(); + ПараметрыПодключения.АдресWSDL = АдресСервиса(); + ПараметрыПодключения.URIПространстваИмен = ПространствоИмен(); + ПараметрыПодключения.ИмяСервиса = "RequisitesWebServiceEndpointImpl7Service"; + ПараметрыПодключения.ИмяТочкиПодключения = "RequisitesWebServiceEndpointImpl7Port"; + ПараметрыПодключения.ИмяПользователя = ПараметрыАутентификации.Логин; + ПараметрыПодключения.Пароль = ПараметрыАутентификации.Пароль; + ПараметрыПодключения.Таймаут = 60; + Попытка - Прокси = ОбщегоНазначения.WSПрокси( - АдресСервиса(), // АдресWSDL - ПространствоИмен(), // URIПространстваИмен - "RequisitesWebServiceEndpointImpl7Service", // ИмяСервиса - "RequisitesWebServiceEndpointImpl7Port", // ИмяТочкиПодключения - ПараметрыАутентификации.Логин, // ИмяПользователя - ПараметрыАутентификации.Пароль, // Пароль - 60); //Таймаут + Прокси = ОбщегоНазначения.СоздатьWSПрокси(ПараметрыПодключения); Исключение ИнформацияОбОшибке = ИнформацияОбОшибке(); ОписаниеОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); @@ -1875,17 +1899,11 @@ Если ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда Возврат Новый Структура("Логин,Пароль", "fresh", "fresh"); - + ИначеЕсли ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + МодульИнтернетПоддержкаПользователей = ОбщегоНазначения.ОбщийМодуль("ИнтернетПоддержкаПользователей"); + Возврат МодульИнтернетПоддержкаПользователей.ДанныеАутентификацииПользователяИнтернетПоддержки(); Иначе - ДанныеАутентификации = СтандартныеПодсистемыСервер.ПараметрыАутентификацииНаСайте(); - Если ДанныеАутентификации <> Неопределено Тогда - Возврат Новый Структура("Логин,Пароль", - ДанныеАутентификации.Логин, - ДанныеАутентификации.Пароль); - Иначе - Возврат Неопределено; - КонецЕсли; - + Возврат Неопределено; КонецЕсли; КонецФункции @@ -1909,7 +1927,7 @@ Возврат; КонецЕсли; - КодОсновногоЯзыка = ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка(); // Для записи события в журнал регистрации + КодОсновногоЯзыка = ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка(); // Для записи события в журнал регистрации. ОписаниеОшибкиВРег = ВРег(ОписаниеОшибки); ТекстОшибки = ""; @@ -2018,7 +2036,7 @@ КонецЕсли; - Если ПустаяСтрока(ТекстОшибки) Тогда // Неклассифицированная ошибка + Если ПустаяСтрока(ТекстОшибки) Тогда // Неклассифицированная ошибка. ТекстОшибки = НСтр("ru='Ошибка при работе с сервисом (подробнее см. Журнал регистрации)'"); ТекстСобытия = НСтр("ru='Ошибка при работе с сервисом'", КодОсновногоЯзыка); КонецЕсли; @@ -2042,4 +2060,20 @@ КонецФункции +Функция ЭтоРимскоеЧисло(Знач ПроверяемаяСтрока) + + ЧастиРимскихЧисел = "IVXLCDM"; + ДлинаСтроки = СтрДлина(ПроверяемаяСтрока); + ПроверяемаяСтрока = ВРег(ПроверяемаяСтрока); + + Для НомерЗнака = 1 По ДлинаСтроки Цикл + Если СтрНайти(ЧастиРимскихЧисел, Сред(ПроверяемаяСтрока, НомерЗнака, 1)) = 0 Тогда + Возврат Ложь; + КонецЕсли; + КонецЦикла; + + Возврат Истина; + +КонецФункции + #КонецОбласти diff --git a/SSL/src/CommonModules/ДатыЗапретаИзменения/Module.bsl b/SSL/src/CommonModules/ДатыЗапретаИзменения/Module.bsl index 6b6c8a818..f93206ae3 100644 --- a/SSL/src/CommonModules/ДатыЗапретаИзменения/Module.bsl +++ b/SSL/src/CommonModules/ДатыЗапретаИзменения/Module.bsl @@ -233,9 +233,6 @@ УстановитьПривилегированныйРежим(Истина); - СвойстваВстраивания = ДатыЗапретаИзмененияСлужебный.СвойстваРазделов(); - ПустойРаздел = ДатыЗапретаИзмененияСлужебныйПовтИсп.ПустойРаздел(); - Если ТипЗнч(ДанныеДляПроверки) = Тип("Структура") Тогда ДействующиеДаты = ДанныеДляПроверки.ДействующиеДаты; ДанныеДляПроверки = ДанныеДляПроверки.ДанныеДляПроверки; @@ -243,6 +240,17 @@ ДействующиеДаты = ДатыЗапретаИзмененияСлужебный.ДействующиеДатыЗапрета(); КонецЕсли; + ЗапретИспользуется = ?(УзелПроверкиЗапретаЗагрузки = Неопределено, + ДействующиеДаты.ЗапретИзмененияИспользуется, + ДействующиеДаты.ЗапретЗагрузкиИспользуется); + + Если Не ЗапретИспользуется Тогда + Возврат Ложь; + КонецЕсли; + + СвойстваВстраивания = ДатыЗапретаИзмененияСлужебный.СвойстваРазделов(); + ПустойРаздел = ДатыЗапретаИзмененияСлужебныйПовтИсп.ПустойРаздел(); + // Приведение данных в соответствие варианту встраивания. Для каждого Строка Из ДанныеДляПроверки Цикл diff --git a/SSL/src/CommonModules/ДатыЗапретаИзмененияСлужебный/Module.bsl b/SSL/src/CommonModules/ДатыЗапретаИзмененияСлужебный/Module.bsl index 1061ecabf..7f340a0f6 100644 --- a/SSL/src/CommonModules/ДатыЗапретаИзмененияСлужебный/Module.bsl +++ b/SSL/src/CommonModules/ДатыЗапретаИзмененияСлужебный/Module.bsl @@ -26,6 +26,20 @@ КонецПроцедуры +// Возвращает возможность проверки запрета изменения данных. +Функция ЗапретИзмененияПроверяется(ОбъектМетаданных) Экспорт + + Возврат ИсточникиДанныхДляПроверкиЗапретаИзменения().Получить(ОбъектМетаданных.ПолноеИмя()) <> Неопределено; + +КонецФункции + +// Возвращает свойства, характеризующие вариант встраивания. +Функция СвойстваРазделов() Экспорт + + Возврат ПараметрыСеанса.ДействующиеДатыЗапретаИзменения.СвойстваРазделов; + +КонецФункции + //////////////////////////////////////////////////////////////////////////////// // Обработчики условных вызовов из других подсистем. @@ -69,13 +83,6 @@ КонецПроцедуры -// Возвращает возможность проверки запрета изменения данных. -Функция ЗапретИзмененияПроверяется(ОбъектМетаданных) Экспорт - - Возврат ИсточникиДанныхДляПроверкиЗапретаИзменения().Получить(ОбъектМетаданных.ПолноеИмя()) <> Неопределено; - -КонецФункции - // Обработчики событий подсистемы Пользователи. // Обновляет группировки пользователей после обновления составов групп пользователей @@ -566,13 +573,6 @@ КонецФункции -// Возвращает свойства, характеризующие вариант встраивания. -Функция СвойстваРазделов() Экспорт - - Возврат ПараметрыСеанса.ДействующиеДатыЗапретаИзменения.СвойстваРазделов; - -КонецФункции - // Возвращает источники данных, заполненные в процедуре ЗаполнитьИсточникиДанныхДляПроверкиЗапретаИзменения // общего модуля ДатыЗапретаИзмененияПереопределяемый. // @@ -1287,7 +1287,7 @@ МетаданныеТипа = Метаданные.НайтиПоТипу(Тип); СвойстваТипа = Новый Структура; СвойстваТипа.Вставить("ПолноеИмя", МетаданныеТипа.ПолноеИмя()); - СвойстваТипа.Вставить("Представление", МетаданныеТипа.ПредставлениеОбъекта); + СвойстваТипа.Вставить("Представление", Строка(Тип)); ТипыОбъектов.Добавить(Новый ФиксированнаяСтруктура(СвойстваТипа)); КонецЕсли; КонецЕсли; @@ -1326,6 +1326,7 @@ ИсточникиДанных.Колонки.Добавить("ПолеДаты", Новый ОписаниеТипов("Строка")); ИсточникиДанных.Колонки.Добавить("Раздел", Новый ОписаниеТипов("Строка")); ИсточникиДанных.Колонки.Добавить("ПолеОбъекта", Новый ОписаниеТипов("Строка")); + ИсточникиДанных.Индексы.Добавить("Таблица"); ИнтеграцияСтандартныхПодсистем.ПриЗаполненииИсточниковДанныхДляПроверкиЗапретаИзменения(ИсточникиДанных); ДатыЗапретаИзмененияПереопределяемый.ЗаполнитьИсточникиДанныхДляПроверкиЗапретаИзменения(ИсточникиДанных); @@ -1339,11 +1340,14 @@ Попытка Если СтрНачинаетсяС(ВРег(Строка.Таблица), ВРег("Регистр")) Тогда ТипЭлемента = Тип(СтрЗаменить(Строка.Таблица, ".", "КлючЗаписи.")); + ЭтоРегистр = Истина; Иначе ТипЭлемента = Тип(СтрЗаменить(Строка.Таблица, ".", "Ссылка.")); + ЭтоРегистр = Ложь; КонецЕсли; ОбъектМетаданных = Метаданные.НайтиПоТипу(ТипЭлемента); Исключение + ЭтоРегистр = Неопределено; ОбъектМетаданных = Метаданные.НайтиПоПолномуИмени(Строка.Таблица); КонецПопытки; Если ОбъектМетаданных = Неопределено Тогда @@ -1353,7 +1357,9 @@ |""%1"".'"), Строка.Таблица); КонецЕсли; - ЭтоРегистр = ОбщегоНазначения.ЭтоРегистр(ОбъектМетаданных); + Если ЭтоРегистр = Неопределено Тогда + ЭтоРегистр = ОбщегоНазначения.ЭтоРегистр(ОбъектМетаданных); + КонецЕсли; ИсточникиТаблицы.Вставить("ЭтоРегистр", ЭтоРегистр); ИсточникиДанныхТаблицы = ИсточникиДанных.НайтиСтроки(Новый Структура("Таблица", Строка.Таблица)); @@ -1444,11 +1450,13 @@ Свойства.ИмяИПуть = Поле; Свойства.Имя = Поля[0]; - Свойства.Тип = ТипПоля(ОбъектМетаданных, Свойства.Имя); ПозицияТочки = СтрНайти(Поле, "."); Если ПозицияТочки > 0 Тогда Свойства.Путь = Сред(Поле, ПозицияТочки + 1); КонецЕсли; + Если ЗначениеЗаполнено(Свойства.Путь) Тогда + Свойства.Тип = ТипПоля(ОбъектМетаданных, Свойства.Имя); + КонецЕсли; Возврат Новый ФиксированнаяСтруктура(Свойства); КонецЕсли; @@ -1488,7 +1496,6 @@ Свойства.ТабличнаяЧасть = Поля[0]; Свойства.Имя = Поля[1]; - Свойства.Тип = ТипПоля(ОбъектМетаданных, Свойства.Имя, Свойства.ТабличнаяЧасть); ПозицияТочки = СтрНайти(Поле, "."); Свойства.ИмяИПуть = Сред(Поле, ПозицияТочки + 1); @@ -1498,6 +1505,10 @@ Свойства.Путь = Сред(Свойства.ИмяИПуть, ПозицияТочки + 1); КонецЕсли; + Если ЗначениеЗаполнено(Свойства.Путь) Тогда + Свойства.Тип = ТипПоля(ОбъектМетаданных, Свойства.Имя, Свойства.ТабличнаяЧасть); + КонецЕсли; + Возврат Новый ФиксированнаяСтруктура(Свойства); КонецФункции diff --git a/SSL/src/CommonModules/ДатыЗапретаИзмененияСлужебныйКлиентСервер/Module.bsl b/SSL/src/CommonModules/ДатыЗапретаИзмененияСлужебныйКлиентСервер/Module.bsl new file mode 100644 index 000000000..50f2feaf0 --- /dev/null +++ b/SSL/src/CommonModules/ДатыЗапретаИзмененияСлужебныйКлиентСервер/Module.bsl @@ -0,0 +1,174 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Даты запрета изменения". +// +//////////////////////////////////////////////////////////////////////////////// + +#Область СлужебныеПроцедурыИФункции + +//////////////////////////////////////////////////////////////////////////////// +// Одинаковые процедуры и функции форм ДатыЗапретаИзменения и РедактированиеДатыЗапрета. + +Функция ОписанияДатЗапрета() Экспорт + + Список = Новый Соответствие; + Список.Вставить("", НСтр("ru = 'Не установлена'")); + Список.Вставить("ПроизвольнаяДата", НСтр("ru = 'Произвольная дата'")); + Список.Вставить("КонецПрошлогоГода", НСтр("ru = 'Конец прошлого года'")); + Список.Вставить("КонецПрошлогоКвартала", НСтр("ru = 'Конец прошлого квартала'")); + Список.Вставить("КонецПрошлогоМесяца", НСтр("ru = 'Конец прошлого месяца'")); + Список.Вставить("КонецПрошлойНедели", НСтр("ru = 'Конец прошлой недели'")); + Список.Вставить("ПредыдущийДень", НСтр("ru = 'Предыдущий день'")); + + Возврат Список; + +КонецФункции + +Процедура ОбщаяДатаЗапретаСОписаниемПриИзменении(Знач Контекст, РассчитатьДатуЗапрета = Истина) Экспорт + + Если Контекст.ОписаниеДатыЗапрета = "" Или Контекст.ОписаниеДатыЗапрета = "ПроизвольнаяДата" Тогда + Контекст.Элементы.ГруппаРежимыРаботы.ТекущаяСтраница = Контекст.Элементы.ПростойРежим; + Иначе + Контекст.Элементы.ГруппаРежимыРаботы.ТекущаяСтраница = Контекст.Элементы.РасширенныйРежим; + КонецЕсли; + + Сутки = 60*60*24; + + Если Контекст.ДатаЗапрета <> '00010101' И Контекст.ОписаниеДатыЗапрета = "" Тогда + Контекст.ОписаниеДатыЗапрета = "ПроизвольнаяДата"; + ИначеЕсли Контекст.ДатаЗапрета = '00010101' И Контекст.ОписаниеДатыЗапрета = "ПроизвольнаяДата" Тогда + Контекст.ОписаниеДатыЗапрета = ""; + КонецЕсли; + + Если Контекст.ОписаниеДатыЗапрета = "ПроизвольнаяДата" Тогда + Контекст.Элементы.СвойстваДатыЗапрета.ТекущаяСтраница = + Контекст.Элементы.НетПояснения; + + Контекст.Элементы.ПроизвольнаяДата.ТекущаяСтраница = + Контекст.Элементы.ПроизвольнаяДатаИспользуется; + + Контекст.РазрешитьИзменениеДанныхДоДатыЗапрета = Ложь; + Контекст.КоличествоДнейРазрешения = 0; + Иначе + Контекст.Элементы.СвойстваДатыЗапрета.ТекущаяСтраница = + Контекст.Элементы.ОтносительнаяДата; + + Контекст.Элементы.ПроизвольнаяДата.ТекущаяСтраница = + Контекст.Элементы.ПроизвольнаяДатаНеИспользуется; + + Если Контекст.ОписаниеДатыЗапрета = "ПредыдущийДень" Тогда + Контекст.Элементы.РазрешитьИзменениеДанныхДоДатыЗапрета.Доступность = Ложь; + Контекст.РазрешитьИзменениеДанныхДоДатыЗапрета = Ложь; + Иначе + Контекст.Элементы.РазрешитьИзменениеДанныхДоДатыЗапрета.Доступность = Истина; + КонецЕсли; + РасчетныеДатыЗапрета = РасчетДатыЗапрета( + Контекст.ОписаниеДатыЗапрета, Контекст.НачалоДня); + + Если РассчитатьДатуЗапрета Тогда + Контекст.ДатаЗапрета = РасчетныеДатыЗапрета.Текущая; + КонецЕсли; + ТекстНадписи = ""; + Контекст.Элементы.КоличествоДнейРазрешения.Доступность = Контекст.РазрешитьИзменениеДанныхДоДатыЗапрета; + Если Контекст.РазрешитьИзменениеДанныхДоДатыЗапрета Тогда + + СкорректироватьКоличествоДнейРазрешения( + Контекст.ОписаниеДатыЗапрета, Контекст.КоличествоДнейРазрешения); + СрокРазрешения = РасчетныеДатыЗапрета.Текущая + Контекст.КоличествоДнейРазрешения * Сутки; + + Если Контекст.НачалоДня > СрокРазрешения Тогда + ТекстНадписи = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Запрещен ввод и редактирование данных за все прошлые периоды + |по %1 включительно (%2). + |Отсрочка, разрешавшая ввод и редактирование данных + |за период с %3 по %4, истекла %5.'"), + Формат(Контекст.ДатаЗапрета, "ДЛФ=Д"), НРег(ОписанияДатЗапрета()[Контекст.ОписаниеДатыЗапрета]), + Формат(РасчетныеДатыЗапрета.Предыдущая + Сутки, "ДЛФ=Д"), Формат(РасчетныеДатыЗапрета.Текущая, "ДЛФ=Д"), + Формат(СрокРазрешения, "ДЛФ=Д")); + Иначе + Если РассчитатьДатуЗапрета Тогда + Контекст.ДатаЗапрета = РасчетныеДатыЗапрета.Предыдущая; + КонецЕсли; + ТекстНадписи = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = '• По %1 включительно запрещен ввод и редактирование данных + | за все прошлые периоды по %2 + | и действует отсрочка, разрешающая ввод и редактирование данных + | за период с %4 по %5; + |• С %6 начнет действовать запрет на ввод и редактирование данных + | за все прошлые периоды по %5 (%3).'"), + Формат(СрокРазрешения, "ДЛФ=Д"), Формат(Контекст.ДатаЗапрета, "ДЛФ=Д"), НРег(ОписанияДатЗапрета()[Контекст.ОписаниеДатыЗапрета]), + Формат(РасчетныеДатыЗапрета.Предыдущая + Сутки, "ДЛФ=Д"), Формат(РасчетныеДатыЗапрета.Текущая, "ДЛФ=Д"), + Формат(СрокРазрешения + Сутки, "ДЛФ=Д")); + КонецЕсли; + Иначе + Контекст.КоличествоДнейРазрешения = 0; + ТекстНадписи = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Запрещен ввод и редактирование данных за все прошлые периоды + |по %1 (%2)'"), + Формат(Контекст.ДатаЗапрета, "ДЛФ=Д"), НРег(ОписанияДатЗапрета()[Контекст.ОписаниеДатыЗапрета])); + КонецЕсли; + Контекст.Элементы.ПояснениеНепроизвольнойДаты.Заголовок = ТекстНадписи; + КонецЕсли; + +КонецПроцедуры + +Функция РасчетДатыЗапрета(Знач ВариантДатыЗапрета, Знач ТекущаяДатаНаСервере) + + Сутки = 60*60*24; + + ТекущаяДатаЗапрета = '00010101'; + ПредыдущаяДатаЗапрета = '00010101'; + + Если ВариантДатыЗапрета = "КонецПрошлогоГода" Тогда + ТекущаяДатаЗапрета = НачалоГода(ТекущаяДатаНаСервере) - Сутки; + ПредыдущаяДатаЗапрета = НачалоГода(ТекущаяДатаЗапрета) - Сутки; + + ИначеЕсли ВариантДатыЗапрета = "КонецПрошлогоКвартала" Тогда + ТекущаяДатаЗапрета = НачалоКвартала(ТекущаяДатаНаСервере) - Сутки; + ПредыдущаяДатаЗапрета = НачалоКвартала(ТекущаяДатаЗапрета) - Сутки; + + ИначеЕсли ВариантДатыЗапрета = "КонецПрошлогоМесяца" Тогда + ТекущаяДатаЗапрета = НачалоМесяца(ТекущаяДатаНаСервере) - Сутки; + ПредыдущаяДатаЗапрета = НачалоМесяца(ТекущаяДатаЗапрета) - Сутки; + + ИначеЕсли ВариантДатыЗапрета = "КонецПрошлойНедели" Тогда + ТекущаяДатаЗапрета = НачалоНедели(ТекущаяДатаНаСервере) - Сутки; + ПредыдущаяДатаЗапрета = НачалоНедели(ТекущаяДатаЗапрета) - Сутки; + + ИначеЕсли ВариантДатыЗапрета = "ПредыдущийДень" Тогда + ТекущаяДатаЗапрета = НачалоДня(ТекущаяДатаНаСервере) - Сутки; + ПредыдущаяДатаЗапрета = НачалоДня(ТекущаяДатаЗапрета) - Сутки; + КонецЕсли; + + Возврат Новый Структура("Текущая, Предыдущая", ТекущаяДатаЗапрета, ПредыдущаяДатаЗапрета); + +КонецФункции + +Процедура СкорректироватьКоличествоДнейРазрешения(Знач ОписаниеДатыЗапрета, КоличествоДнейРазрешения) + + Если КоличествоДнейРазрешения = 0 Тогда + КоличествоДнейРазрешения = 1; + + ИначеЕсли ОписаниеДатыЗапрета = "КонецПрошлогоГода" Тогда + Если КоличествоДнейРазрешения > 90 Тогда + КоличествоДнейРазрешения = 90; + КонецЕсли; + + ИначеЕсли ОписаниеДатыЗапрета = "КонецПрошлогоКвартала" Тогда + Если КоличествоДнейРазрешения > 60 Тогда + КоличествоДнейРазрешения = 60; + КонецЕсли; + + ИначеЕсли ОписаниеДатыЗапрета = "КонецПрошлогоМесяца" Тогда + Если КоличествоДнейРазрешения > 25 Тогда + КоличествоДнейРазрешения = 25; + КонецЕсли; + + ИначеЕсли ОписаниеДатыЗапрета = "КонецПрошлойНедели" Тогда + Если КоличествоДнейРазрешения > 5 Тогда + КоличествоДнейРазрешения = 5; + КонецЕсли; + + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/CommonModules/ДатыЗапретаИзмененияСлужебныйКлиентСервер/ДатыЗапретаИзмененияСлужебныйКлиентСервер.mdo b/SSL/src/CommonModules/ДатыЗапретаИзмененияСлужебныйКлиентСервер/ДатыЗапретаИзмененияСлужебныйКлиентСервер.mdo new file mode 100644 index 000000000..63ba1b9ee --- /dev/null +++ b/SSL/src/CommonModules/ДатыЗапретаИзмененияСлужебныйКлиентСервер/ДатыЗапретаИзмененияСлужебныйКлиентСервер.mdo @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="70f156d8-9cb4-442d-a36b-7a43d03bcd12"> + <name>ДатыЗапретаИзмененияСлужебныйКлиентСервер</name> + <synonym> + <key>ru</key> + <value>Даты запрета изменения служебный клиент сервер</value> + </synonym> + <clientManagedApplication>true</clientManagedApplication> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ДлительныеОперации/Module.bsl b/SSL/src/CommonModules/ДлительныеОперации/Module.bsl index e81d8f979..9a3da06d1 100644 --- a/SSL/src/CommonModules/ДлительныеОперации/Module.bsl +++ b/SSL/src/CommonModules/ДлительныеОперации/Module.bsl @@ -6,7 +6,12 @@ #Область ПрограммныйИнтерфейс -// Запустить выполнение процедуры в фоновом задании. +// Запустить выполнение процедуры в фоновом задании, если это возможно. +// При выполнении любого из следующих условий запуск выполняется не в фоне, а сразу в основном потоке: +// * если приложение запущено в режиме отладки (параметр /C РежимОтладки) - для упрощения отладки конфигурации; +// * если в файловой ИБ имеются активные фоновые задания - для снижения времени ожидания пользователя. +// +// Не следует использовать эту функцию, если необходимо безусловно запускать фоновое задание. // // Параметры: // ИмяПроцедуры - Строка - имя экспортной процедуры, которую необходимо выполнить в фоне. @@ -38,7 +43,7 @@ // Функция ВыполнитьВФоне(Знач ИмяПроцедуры, Знач ПараметрыПроцедуры, Знач ПараметрыВыполнения) Экспорт - АдресРезультата = ?(ПараметрыВыполнения.АдресРезультата <> Неопределено, + АдресРезультата = ?(ПараметрыВыполнения.АдресРезультата <> Неопределено, ПараметрыВыполнения.АдресРезультата, ПоместитьВоВременноеХранилище(Неопределено, ПараметрыВыполнения.ИдентификаторФормы)); @@ -49,6 +54,17 @@ Результат.Вставить("АдресДополнительногоРезультата", ""); Результат.Вставить("КраткоеПредставлениеОшибки", ""); Результат.Вставить("ПодробноеПредставлениеОшибки", ""); + Результат.Вставить("Сообщения", Новый ФиксированныйМассив(Новый Массив)); + + Если ПараметрыВыполнения.ЗапуститьНеВФоне И ПараметрыВыполнения.ЗапуститьВФоне Тогда + Результат.Статус = "Ошибка"; + ТекстИсключения = НСтр("ru = 'Параметры длительной операции ""%1"" и ""%2"" + |не могут одновременно принимать значение Истина.'"); + ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстИсключения, "ВсегдаНеВФоне", "ВсегдаВФоне"); + Результат.КраткоеПредставлениеОшибки = ТекстИсключения; + Результат.ПодробноеПредставлениеОшибки = ТекстИсключения; + Возврат Результат; + КонецЕсли; ПараметрыЭкспортнойПроцедуры = Новый Массив; ПараметрыЭкспортнойПроцедуры.Добавить(ПараметрыПроцедуры); @@ -68,7 +84,9 @@ КонецЕсли; // Выполнить в основном потоке. - Если ОбщегоНазначенияКлиентСервер.РежимОтладки() Или ЗапущеноЗаданийВФайловойИБ > 0 Тогда + Если ОбщегоНазначенияКлиентСервер.РежимОтладки() + Или ПараметрыВыполнения.ЗапуститьНеВФоне + Или (ЗапущеноЗаданийВФайловойИБ > 0 И Не ПараметрыВыполнения.ЗапуститьВФоне) Тогда Попытка РаботаВБезопасномРежиме.ВыполнитьМетодКонфигурации(ИмяПроцедуры, ПараметрыЭкспортнойПроцедуры); Результат.Статус = "Выполнено"; @@ -79,7 +97,7 @@ КонецПопытки; Возврат Результат; КонецЕсли; - + // Выполнить в фоне. Попытка Задание = ЗапуститьФоновоеЗаданиеСКонтекстомКлиента(ИмяПроцедуры, ПараметрыЭкспортнойПроцедуры, @@ -97,15 +115,23 @@ КонецПопытки; Результат.ИдентификаторЗадания = Задание.УникальныйИдентификатор; + ЗаданиеВыполнено = Ложь; + Если ПараметрыВыполнения.ОжидатьЗавершение <> 0 Тогда Попытка Задание.ОжидатьЗавершения(ПараметрыВыполнения.ОжидатьЗавершение); + ЗаданиеВыполнено = Истина; Исключение // Специальная обработка не требуется, возможно исключение вызвано истечением времени ожидания. КонецПопытки; КонецЕсли; - ЗаполнитьЗначенияСвойств(Результат, ОперацияВыполнена(Задание.УникальныйИдентификатор)); + Если ЗаданиеВыполнено Тогда + ПрогрессИСообщения = ПрочитатьПрогрессИСообщения(Задание.УникальныйИдентификатор, "ПрогрессИСообщения"); + Результат.Сообщения = ПрогрессИСообщения.Сообщения; + КонецЕсли; + + ЗаполнитьЗначенияСвойств(Результат, ОперацияВыполнена(Задание.УникальныйИдентификатор), , "Сообщения"); Возврат Результат; КонецФункции @@ -131,6 +157,10 @@ // По умолчанию, не задан. // * АдресРезультата - Строка - адрес временного хранилища, в которое должен быть помещен результат // работы процедуры. Если не задан, адрес формируется автоматически. +// * ЗапуститьВФоне - Булево - если Истина, то задание будет всегда выполняться в фоне, +// за исключением режима отладки. +// * ЗапуститьНеВФоне - Булево - если Истина, задание всегда будет запускаться непосредственно, +// без использования фонового задания. // Функция ПараметрыВыполненияВФоне(Знач ИдентификаторФормы) Экспорт @@ -141,6 +171,8 @@ Результат.Вставить("НаименованиеФоновогоЗадания", ""); Результат.Вставить("КлючФоновогоЗадания", ""); Результат.Вставить("АдресРезультата", Неопределено); + Результат.Вставить("ЗапуститьНеВФоне", Ложь); + Результат.Вставить("ЗапуститьВФоне", Ложь); Возврат Результат; КонецФункции @@ -156,6 +188,10 @@ // Процедура СообщитьПрогресс(Знач Процент = Неопределено, Знач Текст = Неопределено, Знач ДополнительныеПараметры = Неопределено) Экспорт + Если ПолучитьТекущийСеансИнформационнойБазы().ПолучитьФоновоеЗадание() = Неопределено Тогда + Возврат; + КонецЕсли; + ПередаваемоеЗначение = Новый Структура; Если Процент <> Неопределено Тогда ПередаваемоеЗначение.Вставить("Процент", Процент); @@ -169,54 +205,26 @@ ПередаваемыйТекст = ОбщегоНазначения.ЗначениеВСтрокуXML(ПередаваемоеЗначение); - Текст = "{" + ИмяПодсистемы() + "}" + ПередаваемыйТекст; + Текст = "{" + СообщениеПрогресса() + "}" + ПередаваемыйТекст; ОбщегоНазначенияКлиентСервер.СообщитьПользователю(Текст); - ПолучитьСообщенияПользователю(Истина); // Удаление предыдущих сообщений. - КонецПроцедуры // Считывает информацию о ходе выполнения фонового задания. // +// Параметры: +// ИдентификаторЗадания - УникальныйИдентификатор - идентификатор фонового задания. +// // Возвращаемое значение: -// Структура - информация о ходе выполнения фонового задания, записанная процедурой СообщитьПрогресс: -// * Процент - Число - Необязательный. Процент выполнения. -// * Текст - Строка - Необязательный. Информация о текущей операции. +// Неопределено, Структура - информация о ходе выполнения фонового задания, записанная процедурой СообщитьПрогресс: +// * Процент - Число - Необязательный. Процент выполнения. +// * Текст - Строка - Необязательный. Информация о текущей операции. // * ДополнительныеПараметры - Произвольный - Необязательный. Любая дополнительная информация. // Функция ПрочитатьПрогресс(Знач ИдентификаторЗадания) Экспорт - Перем Результат; - Задание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(ИдентификаторЗадания); - Если Задание = Неопределено Тогда - Возврат Результат; - КонецЕсли; + Возврат ПрочитатьПрогрессИСообщения(ИдентификаторЗадания, "Прогресс").Прогресс; - МассивСообщений = Задание.ПолучитьСообщенияПользователю(Истина); - Если МассивСообщений = Неопределено Тогда - Возврат Результат; - КонецЕсли; - - Количество = МассивСообщений.Количество(); - - Для Номер = 1 По Количество Цикл - ОбратныйИндекс = Количество - Номер; - Сообщение = МассивСообщений[ОбратныйИндекс]; - - Если СтрНачинаетсяС(Сообщение.Текст, "{") Тогда - Позиция = СтрНайти(Сообщение.Текст, "}"); - Если Позиция > 2 Тогда - ИдентификаторМеханизма = Сред(Сообщение.Текст, 2, Позиция - 2); - Если ИдентификаторМеханизма = ИмяПодсистемы() Тогда - ПолученныйТекст = Сред(Сообщение.Текст, Позиция + 1); - Результат = ОбщегоНазначения.ЗначениеИзСтрокиXML(ПолученныйТекст); - Прервать; - КонецЕсли; - КонецЕсли; - КонецЕсли; - КонецЦикла; - - Возврат Результат; КонецФункции // ------------------------------ @@ -372,7 +380,7 @@ КонецЕсли; Если ПоказатьПолныйТекстОшибки Тогда - ТекстОшибки = КраткоеПредставлениеОшибки(ПричинаОшибки(Задание.ИнформацияОбОшибке)); + ТекстОшибки = КраткоеПредставлениеОшибки(Задание.ИнформацияОбОшибке); ВызватьИсключение(ТекстОшибки); ИначеЕсли ОперацияНеВыполнена Тогда ВызватьИсключение(НСтр("ru = 'Не удалось выполнить данную операцию. @@ -383,7 +391,7 @@ #КонецОбласти -#Область СлужебныеПроцедурыИФункции +#Область СлужебныйПрограммныйИнтерфейс Функция ОперацияВыполнена(Знач ИдентификаторЗадания, Знач ИсключениеПриОшибке = Ложь, Знач ВыводитьПрогрессВыполнения = Ложь, Знач ВыводитьСообщения = Ложь) Экспорт @@ -401,13 +409,17 @@ УровеньЖурналаРегистрации.Ошибка, , , НСтр("ru = 'Фоновое задание не найдено:'") + " " + Строка(ИдентификаторЗадания)); Если ИсключениеПриОшибке Тогда ВызватьИсключение(НСтр("ru = 'Не удалось выполнить данную операцию.'")); - КонецЕсли; + КонецЕсли; Результат.Статус = "Ошибка"; Возврат Результат; КонецЕсли; Если ВыводитьПрогрессВыполнения Тогда - Результат.Прогресс = ПрочитатьПрогресс(ИдентификаторЗадания); + ПрогрессИСообщения = ПрочитатьПрогрессИСообщения(ИдентификаторЗадания, ?(ВыводитьСообщения, "ПрогрессИСообщения", "Прогресс")); + Результат.Прогресс = ПрогрессИСообщения.Прогресс; + Если ВыводитьСообщения Тогда + Результат.Сообщения = ПрогрессИСообщения.Сообщения; + КонецЕсли; ИначеЕсли ВыводитьСообщения Тогда Результат.Сообщения = Задание.ПолучитьСообщенияПользователю(Истина); КонецЕсли; @@ -425,22 +437,18 @@ Или Задание.Состояние = СостояниеФоновогоЗадания.Отменено Тогда Результат.Статус = "Ошибка"; - ОшибкаЗадания = Задание.ИнформацияОбОшибке; - Если ОшибкаЗадания <> Неопределено Тогда - ИнформацияОбОшибке = ПричинаОшибки(ОшибкаЗадания); - Если ИнформацияОбОшибке <> Неопределено Тогда - Результат.КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке); - Результат.ПодробноеПредставлениеОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); - КонецЕсли; + Если Задание.ИнформацияОбОшибке <> Неопределено Тогда + Результат.КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки(Задание.ИнформацияОбОшибке); + Результат.ПодробноеПредставлениеОшибки = ПодробноеПредставлениеОшибки(Задание.ИнформацияОбОшибке); КонецЕсли; Если ИсключениеПриОшибке Тогда Если Не ПустаяСтрока(Результат.КраткоеПредставлениеОшибки) Тогда ТекстСообщения = Результат.КраткоеПредставлениеОшибки; Иначе ТекстСообщения = НСтр("ru = 'Не удалось выполнить данную операцию.'"); - КонецЕсли; + КонецЕсли; ВызватьИсключение ТекстСообщения; - КонецЕсли; + КонецЕсли; Возврат Результат; КонецЕсли; @@ -449,6 +457,42 @@ КонецФункции +Процедура ВыполнитьПроцедуруМодуляОбъектаОбработки(Параметры, АдресХранилища) Экспорт + + ИмяМетода = Параметры.ИмяМетода; + ВременнаяСтруктура = Новый Структура; + Попытка + ВременнаяСтруктура.Вставить(ИмяМетода); + Исключение + ЗаписьЖурналаРегистрации(НСтр("ru = 'Безопасное выполнение метода обработки'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, , , ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='Имя метода ""%1"" не соответствует требованиям образования имен переменных.'"), ИмяМетода); + КонецПопытки; + + ПараметрыВыполнения = Параметры.ПараметрыВыполнения; + Если Параметры.ЭтоВнешняяОбработка Тогда + Если ЗначениеЗаполнено(Параметры.ДополнительнаяОбработкаСсылка) И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда + МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки"); + Обработка = МодульДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(Параметры.ДополнительнаяОбработкаСсылка); + Иначе + Обработка = ВнешниеОбработки.Создать(Параметры.ИмяОбработки); + КонецЕсли; + Иначе + Обработка = Обработки[Параметры.ИмяОбработки].Создать(); + КонецЕсли; + + Выполнить("Обработка." + ИмяМетода + "(ПараметрыВыполнения, АдресХранилища)"); + +КонецПроцедуры + +Функция СообщениеПрогресса() Экспорт + Возврат "СтандартныеПодсистемы.ДлительныеОперации"; +КонецФункции + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + Функция ОперацииВыполнены(Знач Задания) Экспорт Результат = Новый Соответствие; @@ -521,51 +565,68 @@ КонецФункции -Функция ПричинаОшибки(ИнформацияОбОшибке) +// Считывает информацию о ходе выполнения фонового задания и сообщения, которые в нем были сформированы. +// +// Параметры: +// ИдентификаторЗадания - УникальныйИдентификатор - идентификатор фонового задания. +// Режим - Строка - "ПрогрессИСообщения", "Прогресс" или "Сообщения". +// +// Возвращаемое значение: +// Структура - со свойствами: +// * Прогресс - Неопределено, Структура - Информация о ходе выполнения фонового задания, записанная процедурой СообщитьПрогресс: +// ** Процент - Число - Необязательный. Процент выполнения. +// ** Текст - Строка - Необязательный. Информация о текущей операции. +// ** ДополнительныеПараметры - Произвольный - Необязательный. Любая дополнительная информация. +// * Сообщения - ФиксированныйМассив - Массив объектов СообщениеПользователю, которые были сформированы в фоновом задании. +// +Функция ПрочитатьПрогрессИСообщения(Знач ИдентификаторЗадания, Знач Режим = "ПрогрессИСообщения") - Результат = ИнформацияОбОшибке; - Если ИнформацияОбОшибке <> Неопределено Тогда - Если ИнформацияОбОшибке.Причина <> Неопределено Тогда - Результат = ПричинаОшибки(ИнформацияОбОшибке.Причина); - КонецЕсли; + Результат = Новый Структура("Сообщения, Прогресс", Новый Массив, Неопределено); + + Задание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(ИдентификаторЗадания); + Если Задание = Неопределено Тогда + Возврат Результат; КонецЕсли; + МассивСообщений = Задание.ПолучитьСообщенияПользователю(Истина); + Если МассивСообщений = Неопределено Тогда + Возврат Результат; + КонецЕсли; + + Количество = МассивСообщений.Количество(); + Сообщения = Новый Массив; + ЧитатьСообщения = (Режим = "ПрогрессИСообщения" Или Режим = "Сообщения"); + ЧитатьПрогресс = (Режим = "ПрогрессИСообщения" Или Режим = "Прогресс"); + + Если ЧитатьСообщения И Не ЧитатьПрогресс Тогда + Результат.Сообщения = Новый ФиксированныйМассив(МассивСообщений); + Возврат Результат; + КонецЕсли; + + Для Номер = 0 По Количество - 1 Цикл + Сообщение = МассивСообщений[Номер]; + + Если ЧитатьПрогресс И СтрНачинаетсяС(Сообщение.Текст, "{") Тогда + Позиция = СтрНайти(Сообщение.Текст, "}"); + Если Позиция > 2 Тогда + ИдентификаторМеханизма = Сред(Сообщение.Текст, 2, Позиция - 2); + Если ИдентификаторМеханизма = СообщениеПрогресса() Тогда + ПолученныйТекст = Сред(Сообщение.Текст, Позиция + 1); + Результат.Прогресс = ОбщегоНазначения.ЗначениеИзСтрокиXML(ПолученныйТекст); + Продолжить; + КонецЕсли; + КонецЕсли; + КонецЕсли; + Если ЧитатьСообщения Тогда + Сообщения.Добавить(Сообщение); + КонецЕсли; + КонецЦикла; + + Результат.Сообщения = Новый ФиксированныйМассив(Сообщения); Возврат Результат; КонецФункции -Процедура ВыполнитьПроцедуруМодуляОбъектаОбработки(Параметры, АдресХранилища) Экспорт - - ИмяМетода = Параметры.ИмяМетода; - ВременнаяСтруктура = Новый Структура; - Попытка - ВременнаяСтруктура.Вставить(ИмяМетода); - Исключение - ЗаписьЖурналаРегистрации(НСтр("ru = 'Безопасное выполнение метода обработки'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), - УровеньЖурналаРегистрации.Ошибка, , , ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='Имя метода ""%1"" не соответствует требованиям образования имен переменных.'"), ИмяМетода); - КонецПопытки; - - ПараметрыВыполнения = Параметры.ПараметрыВыполнения; - Если Параметры.ЭтоВнешняяОбработка Тогда - Если ЗначениеЗаполнено(Параметры.ДополнительнаяОбработкаСсылка) И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда - МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки"); - Обработка = МодульДополнительныеОтчетыИОбработки.ПолучитьОбъектВнешнейОбработки(Параметры.ДополнительнаяОбработкаСсылка); - Иначе - Обработка = ВнешниеОбработки.Создать(Параметры.ИмяОбработки); - КонецЕсли; - Иначе - Обработка = Обработки[Параметры.ИмяОбработки].Создать(); - КонецЕсли; - - Выполнить("Обработка." + ИмяМетода + "(ПараметрыВыполнения, АдресХранилища)"); - -КонецПроцедуры - -Функция ИмяПодсистемы() - Возврат "СтандартныеПодсистемы.ДлительныеОперации"; -КонецФункции - Процедура ВыполнитьКомандуОтчетаИлиОбработки(ПараметрыКоманды, АдресРезультата) Экспорт Если ПараметрыКоманды.Свойство("ДополнительнаяОбработкаСсылка") diff --git a/SSL/src/CommonModules/ДлительныеОперацииГлобальный/Module.bsl b/SSL/src/CommonModules/ДлительныеОперацииГлобальный/Module.bsl index 77c80d308..1a8abda84 100644 --- a/SSL/src/CommonModules/ДлительныеОперацииГлобальный/Module.bsl +++ b/SSL/src/CommonModules/ДлительныеОперацииГлобальный/Module.bsl @@ -27,7 +27,7 @@ Процедура ПроконтролироватьДлительныеОперации(АктивныеДлительныеОперации) - ТекущаяДата = ОбщегоНазначенияКлиент.ДатаСеанса(); + ТекущаяДата = ТекущаяДата(); // дата сеанса не используется КонтролируемыеОперации = Новый Соответствие; ЗаданияДляПроверки = Новый Массив; @@ -68,17 +68,22 @@ Для каждого СтатусОперации Из Статусы Цикл Операция = КонтролируемыеОперации[СтатусОперации.Ключ]; Статус = СтатусОперации.Значение; - Если ПроконтролироватьДлительнуюОперацию(Операция, Статус) Тогда + Попытка + Если ПроконтролироватьДлительнуюОперацию(Операция, Статус) Тогда + АктивныеДлительныеОперации.Удалить(СтатусОперации.Ключ); + КонецЕсли; + Исключение + // далее не отслеживаем АктивныеДлительныеОперации.Удалить(СтатусОперации.Ключ); - КонецЕсли; - + ВызватьИсключение; + КонецПопытки; КонецЦикла; Если АктивныеДлительныеОперации.Количество() = 0 Тогда Возврат; КонецЕсли; - ТекущаяДата = ОбщегоНазначенияКлиент.ДатаСеанса(); + ТекущаяДата = ТекущаяДата(); // дата сеанса не используется Интервал = 120; Для каждого Операция Из АктивныеДлительныеОперации Цикл Интервал = Макс(Мин(Интервал, Операция.Значение.Контроль - ТекущаяДата), 1); @@ -125,7 +130,7 @@ КонецЕсли; ДлительнаяОперация.ТекущийИнтервал = ИнтервалОжидания; КонецЕсли; - ДлительнаяОперация.Контроль = ОбщегоНазначенияКлиент.ДатаСеанса() + ИнтервалОжидания; + ДлительнаяОперация.Контроль = ТекущаяДата() + ИнтервалОжидания; // дата сеанса не используется Возврат Ложь; КонецФункции @@ -154,6 +159,7 @@ Результат.Вставить("АдресДополнительногоРезультата", ДлительнаяОперация.АдресДополнительногоРезультата); Результат.Вставить("КраткоеПредставлениеОшибки", Статус.КраткоеПредставлениеОшибки); Результат.Вставить("ПодробноеПредставлениеОшибки", Статус.ПодробноеПредставлениеОшибки); + Результат.Вставить("Сообщения", Статус.Сообщения); ВыполнитьОбработкуОповещения(ДлительнаяОперация.ОповещениеОЗавершении, Результат); КонецПроцедуры diff --git a/SSL/src/CommonModules/ДлительныеОперацииКлиент/Module.bsl b/SSL/src/CommonModules/ДлительныеОперацииКлиент/Module.bsl index c8e7dd6fc..d992fe3f1 100644 --- a/SSL/src/CommonModules/ДлительныеОперацииКлиент/Module.bsl +++ b/SSL/src/CommonModules/ДлительныеОперацииКлиент/Module.bsl @@ -22,6 +22,8 @@ // в которое будет помещен (или уже помещен) результат работы процедуры. // ** КраткоеПредставлениеОшибки - Строка - краткая информация об исключении, если Статус = "Ошибка". // ** ПодробноеПредставлениеОшибки - Строка - подробная информация об исключении, если Статус = "Ошибка". +// ** Сообщения - ФиксированныйМассив, Неопределено - массив объектов СообщениеПользователю, +// сформированных в процедуре-обработчике длительной операции. // * ДополнительныеПараметры - Произвольный - произвольные данные, переданные в описании оповещения. // ПараметрыОжидания - Структура - см. функцию ПараметрыОжидания. // @@ -29,7 +31,7 @@ Знач ПараметрыОжидания = Неопределено) Экспорт ПроверитьПараметрыОжидатьЗавершение(ДлительнаяОперация, ОповещениеОЗавершении, ПараметрыОжидания); - + Если ДлительнаяОперация.Статус <> "Выполняется" Тогда Если ОповещениеОЗавершении <> Неопределено Тогда Если ДлительнаяОперация.Статус <> "Отменено" Тогда @@ -39,6 +41,8 @@ Результат.Вставить("АдресДополнительногоРезультата", ДлительнаяОперация.АдресДополнительногоРезультата); Результат.Вставить("КраткоеПредставлениеОшибки", ДлительнаяОперация.КраткоеПредставлениеОшибки); Результат.Вставить("ПодробноеПредставлениеОшибки", ДлительнаяОперация.ПодробноеПредставлениеОшибки); + Результат.Вставить("Сообщения", ?(ПараметрыОжидания <> Неопределено И ПараметрыОжидания.ВыводитьСообщения, + ДлительнаяОперация.Сообщения, Неопределено)); Иначе Результат = Неопределено; КонецЕсли; @@ -54,8 +58,8 @@ ПараметрыФормы.Вставить("АдресРезультата", ДлительнаяОперация.АдресРезультата); ПараметрыФормы.Вставить("АдресДополнительногоРезультата", ДлительнаяОперация.АдресДополнительногоРезультата); ПараметрыФормы.Вставить("ИдентификаторЗадания", ДлительнаяОперация.ИдентификаторЗадания); - - Если ПараметрыФормы.ВыводитьОкноОжидания Тогда + + Если ПараметрыФормы.ВыводитьОкноОжидания Тогда ПараметрыФормы.Удалить("ФормаВладелец"); ОткрытьФорму("ОбщаяФорма.ДлительнаяОперация", ПараметрыФормы, @@ -64,7 +68,7 @@ Иначе ПараметрыФормы.Вставить("ОповещениеОЗавершении", ОповещениеОЗавершении); ПараметрыФормы.Вставить("ТекущийИнтервал", ?(ПараметрыФормы.Интервал <> 0, ПараметрыФормы.Интервал, 1)); - ПараметрыФормы.Вставить("Контроль", ОбщегоНазначенияКлиент.ДатаСеанса() + ПараметрыФормы.ТекущийИнтервал); + ПараметрыФормы.Вставить("Контроль", ТекущаяДата() + ПараметрыФормы.ТекущийИнтервал); // дата сеанса не используется Операции = АктивныеДлительныеОперации(); Операции.Список.Вставить(ПараметрыФормы.ИдентификаторЗадания, ПараметрыФормы); @@ -92,12 +96,14 @@ // "Ошибка", если задание завершено с ошибкой; // "Отменено", если задание отменено пользователем или администратором. // *** ИдентификаторЗадания - УникальныйИдентификатор - идентификатор запущенного фонового задания. -// *** Прогресс - Структура, Неопределено - результат функции ДлительныеОперации.ПрочитатьПрогресс, если ВыводитьПрогрессВыполнения = Истина. -// *** Сообщения - ФиксированныйМассив, Неопределено - массив объектов СообщениеПользователю, если ВыводитьСообщения = Истина +// *** Прогресс - Структура, Неопределено - результат функции ДлительныеОперации.ПрочитатьПрогресс, +// если ВыводитьПрогрессВыполнения = Истина. +// *** Сообщения - ФиксированныйМассив, Неопределено - если ВыводитьСообщения = Истина, массив объектов СообщениеПользователю, +// очередная порция сообщений, сформированных в процедуре-обработчике длительной операции. // ** ДополнительныеПараметры - Произвольный - произвольные данные, переданные в описании оповещения. // -// * ВыводитьСообщения - Булево - выводить сообщения, сформированные в процедуре-обработчике длительной операции. -// Значение Истина имеет смысл, только если ВыводитьПрогрессВыполнения = Ложь +// * ВыводитьСообщения - Булево - выводить в оповещения о завершении и прогресс сообщения, +// сформированные в процедуре-обработчике длительной операции. // * Интервал - Число - интервал в секундах между проверками готовности длительной операции. // По умолчанию 0 - после каждой проверки интервал увеличивается с 1 до 15 секунд с коэффициентом 1.4. // * ОповещениеПользователя - Структура - содержит свойства: @@ -111,11 +117,12 @@ Результат = Новый Структура; Результат.Вставить("ФормаВладелец", ФормаВладелец); Результат.Вставить("ТекстСообщения", ""); - Результат.Вставить("ВыводитьОкноОжидания", Истина); - Результат.Вставить("ВыводитьПрогрессВыполнения", Ложь); - Результат.Вставить("ОповещениеОПрогрессеВыполнения", Неопределено); - Результат.Вставить("ВыводитьСообщения", Ложь); - Результат.Вставить("Интервал", 0); + Результат.Вставить("ВыводитьОкноОжидания", Истина); + Результат.Вставить("ВыводитьПрогрессВыполнения", Ложь); + Результат.Вставить("ОповещениеОПрогрессеВыполнения", Неопределено); + Результат.Вставить("ВыводитьСообщения", Ложь); + Результат.Вставить("Интервал", 0); + Результат.Вставить("ПолучатьРезультат", Ложь); ОповещениеПользователя = Новый Структура; ОповещениеПользователя.Вставить("Показать", Ложь); @@ -233,15 +240,13 @@ ТипыСвойств.Вставить("ВыводитьСообщения", Тип("Булево")); ТипыСвойств.Вставить("Интервал", Тип("Число")); ТипыСвойств.Вставить("ОповещениеПользователя", Тип("Структура")); + ТипыСвойств.Вставить("ПолучатьРезультат", Тип("Булево")); ОбщегоНазначенияКлиентСервер.ПроверитьПараметр("ДлительныеОперацииКлиент.ОжидатьЗавершение", "ПараметрыОжидания", ПараметрыОжидания, Тип("Структура"), ТипыСвойств); ОбщегоНазначенияКлиентСервер.Проверить(ПараметрыОжидания.Интервал = 0 Или ПараметрыОжидания.Интервал >= 1, НСтр("ru = 'Параметр ПараметрыОжидания.Интервал должен быть больше или равен 1'"), "ДлительныеОперацииКлиент.ОжидатьЗавершение"); - ОбщегоНазначенияКлиентСервер.Проверить(Не (ПараметрыОжидания.ВыводитьПрогрессВыполнения И ПараметрыОжидания.ВыводитьСообщения), - НСтр("ru = 'Если параметр ПараметрыОжидания.ВыводитьПрогрессВыполнения установлен в Истина, то параметр ПараметрыОжидания.ВыводитьСообщения должен быть установлен в Ложь'"), - "ДлительныеОперацииКлиент.ОжидатьЗавершение"); ОбщегоНазначенияКлиентСервер.Проверить(Не (ПараметрыОжидания.ОповещениеОПрогрессеВыполнения <> Неопределено И ПараметрыОжидания.ВыводитьОкноОжидания), НСтр("ru = 'Если параметр ПараметрыОжидания.ВыводитьОкноОжидания установлен в Истина, то параметр ПараметрыОжидания.ОповещениеОПрогрессеВыполнения не поддерживается'"), "ДлительныеОперацииКлиент.ОжидатьЗавершение"); diff --git a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработки/Module.bsl b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработки/Module.bsl index ecbdbff11..58c26fef7 100644 --- a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработки/Module.bsl +++ b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработки/Module.bsl @@ -6,8 +6,11 @@ #Область ПрограммныйИнтерфейс // Подключает и возвращает имя, под которым подключен внешний отчет или обработка. -// После подключения отчет или обработка регистрируется в программе под определенным именем, -// используя которое можно создавать объект или открывать формы отчета или обработки. +// После подключения отчет или обработка регистрируется в программе под определенным именем, +// используя которое можно создавать объект или открывать формы отчета или обработки. +// +// Важно: проверка функциональной опции "ИспользоватьДополнительныеОтчетыИОбработки" +// должна выполняться вызывающим кодом. // // Параметры: // Ссылка - СправочникСсылка.ДополнительныеОтчетыИОбработки - Подключаемая обработка. @@ -16,10 +19,6 @@ // * Строка - Имя подключенного отчета или обработки. // * Неопределено - Если передана некорректная ссылка. // -// Важно: -// Проверка функциональной опции "ИспользоватьДополнительныеОтчетыИОбработки" -// должна выполняться вызывающим кодом. -// Функция ПодключитьВнешнююОбработку(Ссылка) Экспорт СтандартнаяОбработка = Истина; @@ -99,7 +98,12 @@ ЗаписатьПримечание(Ссылка, НСтр("ru = 'Подключение, БезопасныйРежим = ""%1"".'"), БезопасныйРежим); - ИмяОбработки = Менеджер.Подключить(АдресВоВременномХранилище, , БезопасныйРежим); + Если ОбщегоНазначения.ЕстьЗащитаОтОпасныхДействий() Тогда + ИмяОбработки = Менеджер.Подключить(АдресВоВременномХранилище, , БезопасныйРежим, + ОбщегоНазначения.ОписаниеЗащитыБезПредупреждений()); + Иначе + ИмяОбработки = Менеджер.Подключить(АдресВоВременномХранилище, , БезопасныйРежим); + КонецЕсли; Возврат ИмяОбработки; @@ -107,6 +111,9 @@ // Возвращает объект внешнего отчета или обработки. // +// Важно: проверка функциональной опции "ИспользоватьДополнительныеОтчетыИОбработки" +// должна выполняться вызывающим кодом. +// // Параметры: // Ссылка - СправочникСсылка.ДополнительныеОтчетыИОбработки - Подключаемый отчет или обработка. // @@ -115,11 +122,7 @@ // * ВнешнийОтчетОбъект - Объект подключенного отчета. // * Неопределено - Если передана некорректная ссылка. // -// Важно: -// Проверка функциональной опции "ИспользоватьДополнительныеОтчетыИОбработки" -// должна выполняться вызывающим кодом. -// -Функция ПолучитьОбъектВнешнейОбработки(Ссылка) Экспорт +Функция ОбъектВнешнейОбработки(Ссылка) Экспорт СтандартнаяОбработка = Истина; Результат = Неопределено; @@ -158,16 +161,25 @@ КонецФункции // Установка параметров функциональных опций формы (требуется для формирования -// командного интерфейса формы). +// командного интерфейса формы). // // Параметры: -// Форма - УправляемаяФорма +// Форма - УправляемаяФорма // ТипФормы - Строка - Необязательный. "ФормаСписка" для форм списков и "ФормаОбъекта" для форм элементов. // См. также функции ТипФормыСписка() и ТипФормыОбъекта() общего модуля // ДополнительныеОтчетыИОбработкиКлиентСервер. // Процедура ПриСозданииНаСервере(Форма, ТипФормы = Неопределено) Экспорт Если Не ПолучитьФункциональнуюОпцию("ИспользоватьДополнительныеОтчетыИОбработки") Тогда + ПараметрыФункциональныхОпций = Новый Структура; + ПараметрыФункциональныхОпций.Вставить("ДополнительныеОтчетыИОбработкиОбъектНазначения", Справочники.ИдентификаторыОбъектовМетаданных.ПустаяСсылка()); + ПараметрыФункциональныхОпций.Вставить("ДополнительныеОтчетыИОбработкиТипФормы", Неопределено); + Форма.УстановитьПараметрыФункциональныхОпцийФормы(ПараметрыФункциональныхОпций); + ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( + Форма.Элементы, + "ФормаОбщаяКомандаЗаполнениеОбъекта", + "Видимость", + Ложь); Возврат; КонецЕсли; @@ -207,7 +219,7 @@ Возврат; КонецЕсли; - ВнешняяОбработкаОбъект = ПолучитьОбъектВнешнейОбработки(ДополнительнаяОбработкаСсылка); + ВнешняяОбработкаОбъект = ОбъектВнешнейОбработки(ДополнительнаяОбработкаСсылка); Если ВнешняяОбработкаОбъект = Неопределено Тогда ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Внешняя обработка ""%1"" (тип ""%2"") не обслуживается подсистемой ""%3""'"), @@ -251,14 +263,15 @@ // // * Вид - Строка - Вид внешнего объекта. // Для определения вида рекомендуется использовать функции -// ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработки<ИмяВида>(). +// ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработки<ИмяВида>. // Также Вид можно указать явно: // ** "ПечатнаяФорма" // ** "ЗаполнениеОбъекта" // ** "СозданиеСвязанныхОбъектов" // ** "Отчет" // ** "ДополнительнаяОбработка" -// ** "ДополнительныйОтчет". +// ** "ДополнительныйОтчет" +// ** "ШаблонСообщения". // // * Версия - Строка - Версия объекта. // Задается в формате: "<Старший номер>.<Младший номер>". @@ -327,20 +340,18 @@ // // ** Представление - Строка - Пользовательское представление команды. // -// ** Использование - Строка - Тип команды. -// Для определения рекомендуется использовать функции +// ** Использование - Строка - Тип команды: +// "ВызовКлиентскогоМетода", +// "ВызовСерверногоМетода", +// "ЗаполнениеФормы", +// "ОткрытиеФормы" или +// "СценарийВБезопасномРежиме". +// Для получения типов команд рекомендуется использовать функции // ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКоманды<ИмяТипа>(). -// Шаблоны процедур - обработчиков команд описаны в комментариях к этим функциям. -// -// Также Использование можно определить явно: -// *** "ВызовКлиентскогоМетода" -// *** "ВызовСерверногоМетода" -// *** "ЗаполнениеФормы" -// *** "ОткрытиеФормы" -// *** "СценарийВБезопасномРежиме". +// В комментариям к этим функциям также даны шаблоны процедур-обработчиков команд. // -// ** ПоказыватьОповещение - Булево - Истина = при запуске команды будет показано стандартное оповещение. -// Не работает для команд по открытию формы (когда Использование = "ОткрытиеФормы"). +// ** ПоказыватьОповещение - Булево - если Истина, то при запуске команды выводится оповещение "Команда выполняется...". +// Действует для всех типов команд, кроме команд по открытию формы (Использование = "ОткрытиеФормы"). // // ** Модификатор - Строка - Дополнительная классификация команды. // Для внешних печатных форм (когда Вид = "ПечатнаяФорма"): @@ -383,26 +394,23 @@ КонецФункции // Выполняет назначаемую команду контекстно из формы объекта назначения. +// Предназначена для вызова кодом этой подсистемы из формы элемента назначаемого объекта +// (например, справочника или документа). +// +// Важно: проверка функциональной опции "ИспользоватьДополнительныеОтчетыИОбработки" +// должна выполняться вызывающим кодом. // // Параметры: -// Форма - УправляемаяФорма - Форма, из которой вызвана команда. -// ИмяЭлемента - Строка - Имя команды формы, которая была нажата. -// РезультатВыполнения - Структура - См. СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(). +// Форма - УправляемаяФорма - Форма, из которой вызвана команда. +// ИмяЭлемента - Строка - Имя команды формы, которая была нажата. +// РезультатВыполнения - Структура - для служебного использования. // -// Описание: -// Предназначена для вызова кодом этой подсистемы из формы элемента назначаемого объекта (например, справочника или -// документа). -// -// Важно: -// Проверка функциональной опции "ИспользоватьДополнительныеОтчетыИОбработки" -// должна выполняться вызывающим кодом. -// -Процедура ВыполнитьНазначаемуюКомандуНаСервере(Форма, ИмяЭлемента, РезультатВыполнения) Экспорт +Процедура ВыполнитьНазначаемуюКомандуНаСервере(Форма, ИмяЭлемента, РезультатВыполнения = Неопределено) Экспорт ОписаниеКоманды = ОписаниеКомандыОбработки(ИмяЭлемента, Форма.Команды.Найти("АдресКомандДополнительныхОбработокВоВременномХранилище").Действие); - ВнешнийОбъект = ПолучитьОбъектВнешнейОбработки(ОписаниеКоманды.Ссылка); + ВнешнийОбъект = ОбъектВнешнейОбработки(ОписаниеКоманды.Ссылка); ИдентификаторКоманды = ОписаниеКоманды.Идентификатор; ПараметрыКоманды = Новый Структура; @@ -414,14 +422,15 @@ // Выполняет команду обработки и возвращает результат ее выполнения. // +// Важно: проверка функциональной опции "ИспользоватьДополнительныеОтчетыИОбработки" +// должна выполняться вызывающим кодом. +// // Параметры: // ПараметрыКоманды - Структура - Параметры, с которыми выполняется команда. // * ДополнительнаяОбработкаСсылка - СправочникСсылка.ДополнительныеОтчетыИОбработки - Элемент справочника. // * ИдентификаторКоманды - Строка - Имя выполняемой команды. // * ОбъектыНазначения - Массив - Ссылки объектов, для которых выполняется обработка. Обязательный для // назначаемых обработок. -// * РезультатВыполнения - Структура - Необязательный. Дополняет возвращаемое значение. -// См. СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(). // АдресРезультата - Строка - Необязательный. Адрес временного хранилища по которому будет размещен результат // выполнения. // @@ -429,10 +438,6 @@ // * Структура - Результат выполнения, который далее передается на клиент. // * Неопределено - Если был передан АдресРезультата. // -// Важно: -// Проверка функциональной опции "ИспользоватьДополнительныеОтчетыИОбработки" -// должна выполняться вызывающим кодом. -// Функция ВыполнитьКоманду(ПараметрыКоманды, АдресРезультата = Неопределено) Экспорт Если ТипЗнч(ПараметрыКоманды.ДополнительнаяОбработкаСсылка) <> Тип("СправочникСсылка.ДополнительныеОтчетыИОбработки") @@ -440,10 +445,8 @@ Возврат Неопределено; КонецЕсли; - ВнешнийОбъект = ПолучитьОбъектВнешнейОбработки(ПараметрыКоманды.ДополнительнаяОбработкаСсылка); - + ВнешнийОбъект = ОбъектВнешнейОбработки(ПараметрыКоманды.ДополнительнаяОбработкаСсылка); ИдентификаторКоманды = ПараметрыКоманды.ИдентификаторКоманды; - РезультатВыполнения = ВыполнитьКомандуВнешнегоОбъекта(ВнешнийОбъект, ИдентификаторКоманды, ПараметрыКоманды, АдресРезультата); Возврат РезультатВыполнения; @@ -451,27 +454,24 @@ КонецФункции // Выполняет команду обработки напрямую из формы внешнего объекта и возвращает результат ее выполнения. -// Пример использования - см. ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьКомандуВФоне(). +// Пример использования - см. ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьКомандуВФоне(). +// +// Важно: проверка функциональной опции "ИспользоватьДополнительныеОтчетыИОбработки" +// должна выполняться вызывающим кодом. // // Параметры: -// ИдентификаторКоманды - Строка - Имя команды как оно задано в функции СведенияОВнешнейОбработке() модуля объекта. -// ПараметрыКоманды - Структура - Параметры выполнения команды. -// См. ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьКомандуВФоне(). -// Форма - УправляемаяФорма - Форма, в которую необходимо вернуть результат. +// ИдентификаторКоманды - Строка - Имя команды как оно задано в функции СведенияОВнешнейОбработке() модуля объекта. +// ПараметрыКоманды - Структура - Параметры выполнения команды. +// См. ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьКомандуВФоне(). +// Форма - УправляемаяФорма - Форма, в которую необходимо вернуть результат. // // Возвращаемое значение: -// РезультатВыполнения - Структура - См. СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(). -// -// Важно: -// Проверка функциональной опции "ИспользоватьДополнительныеОтчетыИОбработки" -// должна выполняться вызывающим кодом. +// Структура - для служебного использования. // Функция ВыполнитьКомандуИзФормыВнешнегоОбъекта(ИдентификаторКоманды, ПараметрыКоманды, Форма) Экспорт ВнешнийОбъект = Форма.РеквизитФормыВЗначение("Объект"); - РезультатВыполнения = ВыполнитьКомандуВнешнегоОбъекта(ВнешнийОбъект, ИдентификаторКоманды, ПараметрыКоманды, Неопределено); - Возврат РезультатВыполнения; КонецФункции @@ -479,7 +479,7 @@ // Формирует список разделов, в которых доступна команда вызова дополнительных отчетов. // // Возвращаемое значение: -// Массив ОбъектМетаданных: Подсистема - Метаданные разделов, в которые выведен список команд дополнительных отчетов. +// Массив - массив объектов метаданных Подсистема - метаданные разделов, в которые выведен список команд дополнительных отчетов. // Функция РазделыДополнительныхОтчетов() Экспорт РазделыМетаданные = Новый Массив; @@ -497,19 +497,19 @@ // Формирует список разделов, в которых доступна команда вызова дополнительных обработок. // // Возвращаемое значение: -// Массив из ОбъектМетаданных: Подсистема - Метаданные разделов, в которые выведен список команд дополнительных +// Массив - массив объектов метаданных Подсистема - метаданные разделов, в которые выведен список команд дополнительных // обработок. // Функция РазделыДополнительныхОбработок() Экспорт РазделыМетаданные = Новый Массив; - ДополнительныеОтчетыИОбработкиПереопределяемый.ОпределитьРазделыСДополнительнымиОбработками(РазделыМетаданные); - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.НастройкиПрограммы") Тогда МодульОбработкиПанельАдминистрированияБСП = ОбщегоНазначения.ОбщийМодуль("Обработки.ПанельАдминистрированияБСП"); МодульОбработкиПанельАдминистрированияБСП.ПриОпределенииРазделовСДополнительнымиОбработками(РазделыМетаданные); КонецЕсли; + ДополнительныеОтчетыИОбработкиПереопределяемый.ОпределитьРазделыСДополнительнымиОбработками(РазделыМетаданные); + Возврат РазделыМетаданные; КонецФункции @@ -517,8 +517,8 @@ // Процедуры используемые при обмене данными. // Переопределяет стандартное поведение при загрузке данных. -// Реквизит РегламентноеЗаданиеGUID табличной части Команды не переносится, -// т.к. связан с регламентным заданием текущей базы. +// Реквизит РегламентноеЗаданиеGUID табличной части Команды не переносится, +// т.к. связан с регламентным заданием текущей базы. // Процедура ПриПолученииДополнительнойОбработки(ЭлементДанных, ПолучениеЭлемента) Экспорт @@ -559,6 +559,29 @@ КонецПроцедуры +#Область УстаревшиеПроцедурыИФункции + +// Устарела. Следует использовать ОбъектВнешнейОбработки. +// +// Важно: проверка функциональной опции "ИспользоватьДополнительныеОтчетыИОбработки" +// должна выполняться вызывающим кодом. +// +// Параметры: +// Ссылка - СправочникСсылка.ДополнительныеОтчетыИОбработки - Подключаемый отчет или обработка. +// +// Возвращаемое значение: +// * ВнешняяОбработкаОбъект - Объект подключенной обработки. +// * ВнешнийОтчетОбъект - Объект подключенного отчета. +// * Неопределено - Если передана некорректная ссылка. +// +Функция ПолучитьОбъектВнешнейОбработки(Ссылка) Экспорт + + Возврат ОбъектВнешнейОбработки(Ссылка); + +КонецФункции + +#КонецОбласти + #КонецОбласти #Область СлужебныйПрограммныйИнтерфейс @@ -643,7 +666,7 @@ // Процедура ПриЗаполненииНедоступныхВидовПубликации(Знач НедоступныеВидыПубликации) Экспорт // СерверныеСобытия.Добавить("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки\ПриЗаполненииНедоступныхВидовПубликации"); - + // Вызывается из события ПередЗаписью справочника. // ДополнительныеОтчетыИОбработки, выполняет проверку правомерности изменения реквизитов // элементов данного справочника для дополнительных обработок, полученных из @@ -657,7 +680,7 @@ // Процедура ПередЗаписьюДополнительнойОбработки(Знач Источник, Отказ) Экспорт // СерверныеСобытия.Добавить("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки\ПередЗаписьюДополнительнойОбработки"); - + // Вызывается из события ПередУдалением справочника. // ДополнительныеОтчетыИОбработки. // @@ -670,14 +693,12 @@ // СерверныеСобытия.Добавить("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки\ПередУдалениемДополнительнойОбработки"); - // Вызывается при получении регистрационных данных для нового дополнительного отчета - // или обработки. + // Вызывается при получении регистрационных данных для нового дополнительного отчета или обработки. // // Параметры: - // Объект - СправочникОбъект.ДополнительныеОтчетыИОбработки - // РегистрационныеДанные - Структура, аналогичная структуре, возвращаемой экспортируемой функцией. - // СведенияОВнешнейОбработке() внешних обработок. - // СтандартнаяОбработка - Булево. + // Объект - СправочникОбъект.ДополнительныеОтчетыИОбработки - Объект дополнительной обработки. + // РегистрационныеДанные - Структура - См. описание функции ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке(). + // СтандартнаяОбработка - Булево - Признак продолжения стандартной обработки этого события. // // Синтаксис: // Процедура ПриПолученииРегистрационныхДанных(Знач Объект, РегистрационныеДанные, СтандартнаяОбработка) Экспорт @@ -740,6 +761,9 @@ Событие = "СтандартныеПодсистемы.ОбновлениеВерсииИБ\ПриДобавленииОбработчиковОбновления"; СерверныеОбработчики[Событие].Добавить(СерверныйМодуль); + Событие = "СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПереименованийОбъектовМетаданных"; + СерверныеОбработчики[Событие].Добавить(СерверныйМодуль); + Событие = "СтандартныеПодсистемы.БазоваяФункциональность\ПриПолученииДанныхОтПодчиненного"; СерверныеОбработчики[Событие].Добавить(СерверныйМодуль); @@ -802,6 +826,22 @@ КонецПроцедуры +// Заполняет переименования тех объектов метаданных, которые невозможно +// автоматически найти по типу, но ссылки на которые требуется сохранять +// в базе данных (например: подсистемы, роли). +// +// См. также: +// ОбщегоНазначения.ДобавитьПереименование(). +// +Процедура ПриДобавленииПереименованийОбъектовМетаданных(Итог) Экспорт + + Библиотека = "СтандартныеПодсистемы"; + + ОбщегоНазначения.ДобавитьПереименование( + Итог, "2.3.3.3", "Роль.ИспользованиеДополнительныхОтчетовИОбработок", "Роль.ЧтениеДополнительныхОтчетовИОбработок", Библиотека); + +КонецПроцедуры + // Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной // информационной базе. // См. описание обработчика события ПриПолученииДанныхОтПодчиненного() в синтакс-помощнике. @@ -861,7 +901,10 @@ Если Подсистема = Неопределено Или Не ПравоДоступа("Просмотр", Подсистема) Или Не ОбщегоНазначения.ОбъектМетаданныхДоступенПоФункциональнымОпциям(Подсистема) Тогда - Возврат; + Разделы = МодульТекущиеДелаСервер.РазделыДляОбъекта("Справочник.ДополнительныеОтчетыИОбработки2"); + Иначе + Разделы = Новый Массив; + Разделы.Добавить(Подсистема); КонецЕсли; ВывестиДело = Истина; @@ -876,34 +919,38 @@ КоличествоДополнительныхОтчетовИОбработок = КоличествоДополнительныхОтчетовИОбработок(); - Дело = ТекущиеДела.Добавить(); - Дело.Идентификатор = "ДополнительныеОтчетыИОбработки"; - Дело.ЕстьДела = ВывестиДело И КоличествоДополнительныхОтчетовИОбработок > 0; - Дело.Представление = НСтр("ru = 'Дополнительные отчеты и обработки'"); - Дело.Количество = КоличествоДополнительныхОтчетовИОбработок; - Дело.Форма = "Справочник.ДополнительныеОтчетыИОбработки.Форма.ПроверкаДополнительныхОтчетовИОбработок"; - Дело.Владелец = "ПроверитьСовместимостьСТекущейВерсией"; - - // Проверка наличия группы дела. Если группа отсутствует - добавляем. - ГруппаДела = ТекущиеДела.Найти("ПроверитьСовместимостьСТекущейВерсией", "Идентификатор"); - Если ГруппаДела = Неопределено Тогда - ГруппаДела = ТекущиеДела.Добавить(); - ГруппаДела.Идентификатор = "ПроверитьСовместимостьСТекущейВерсией"; - ГруппаДела.ЕстьДела = Дело.ЕстьДела; - ГруппаДела.Представление = НСтр("ru = 'Проверить совместимость'"); - Если Дело.ЕстьДела Тогда - ГруппаДела.Количество = Дело.Количество; - КонецЕсли; - ГруппаДела.Владелец = Подсистема; - Иначе - Если Не ГруппаДела.ЕстьДела Тогда - ГруппаДела.ЕстьДела = Дело.ЕстьДела; - КонецЕсли; + Для Каждого Раздел Из Разделы Цикл + ИдентификаторРаздела = "ПроверитьСовместимостьСТекущейВерсией" + СтрЗаменить(Раздел.ПолноеИмя(), ".", ""); - Если Дело.ЕстьДела Тогда - ГруппаДела.Количество = ГруппаДела.Количество + Дело.Количество; + Дело = ТекущиеДела.Добавить(); + Дело.Идентификатор = "ДополнительныеОтчетыИОбработки"; + Дело.ЕстьДела = ВывестиДело И КоличествоДополнительныхОтчетовИОбработок > 0; + Дело.Представление = НСтр("ru = 'Дополнительные отчеты и обработки'"); + Дело.Количество = КоличествоДополнительныхОтчетовИОбработок; + Дело.Форма = "Справочник.ДополнительныеОтчетыИОбработки.Форма.ПроверкаДополнительныхОтчетовИОбработок"; + Дело.Владелец = ИдентификаторРаздела; + + // Проверка наличия группы дела. Если группа отсутствует - добавляем. + ГруппаДела = ТекущиеДела.Найти(ИдентификаторРаздела, "Идентификатор"); + Если ГруппаДела = Неопределено Тогда + ГруппаДела = ТекущиеДела.Добавить(); + ГруппаДела.Идентификатор = ИдентификаторРаздела; + ГруппаДела.ЕстьДела = Дело.ЕстьДела; + ГруппаДела.Представление = НСтр("ru = 'Проверить совместимость'"); + Если Дело.ЕстьДела Тогда + ГруппаДела.Количество = Дело.Количество; + КонецЕсли; + ГруппаДела.Владелец = Раздел; + Иначе + Если Не ГруппаДела.ЕстьДела Тогда + ГруппаДела.ЕстьДела = Дело.ЕстьДела; + КонецЕсли; + + Если Дело.ЕстьДела Тогда + ГруппаДела.Количество = ГруппаДела.Количество + Дело.Количество; + КонецЕсли; КонецЕсли; - КонецЕсли; + КонецЦикла; КонецПроцедуры @@ -1012,9 +1059,13 @@ Если Не ПолучитьФункциональнуюОпцию("ИспользоватьДополнительныеОтчетыИОбработки") Тогда Возврат; КонецЕсли; + Если Не ПравоДоступа("Чтение", Метаданные.Справочники.ДополнительныеОтчетыИОбработки) Тогда + Возврат; + КонецЕсли; - ТекстЗапроса = - "ВЫБРАТЬ ПЕРВЫЕ 1 + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ РАЗРЕШЕННЫЕ | Таблица.Ссылка |ИЗ | Справочник.ДополнительныеОтчетыИОбработки КАК Таблица @@ -1024,24 +1075,27 @@ | И Таблица.ИспользуетХранилищеВариантов = ИСТИНА | И Таблица.Вид В (&ВидДополнительныйОтчет, &ВидОтчет) | И Таблица.Публикация = &ПубликацияИспользуется"; - - Запрос = Новый Запрос; + Если ОтчетИнформация.ПоУмолчаниюВсеПодключеныКХранилищу Тогда + Запрос.Текст = СтрЗаменить(Запрос.Текст, "И Таблица.ИспользуетХранилищеВариантов = ИСТИНА", ""); + КонецЕсли; Запрос.УстановитьПараметр("ИмяОбъекта", ОтчетИнформация.ОтчетИмя); Запрос.УстановитьПараметр("ВидОтчет", Перечисления.ВидыДополнительныхОтчетовИОбработок.Отчет); Запрос.УстановитьПараметр("ВидДополнительныйОтчет", Перечисления.ВидыДополнительныхОтчетовИОбработок.ДополнительныйОтчет); Запрос.УстановитьПараметр("ПубликацияИспользуется", Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.Используется); - Если ОтчетИнформация.ПоУмолчаниюВсеПодключеныКХранилищу Тогда - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "И Таблица.ИспользуетХранилищеВариантов = ИСТИНА", ""); - КонецЕсли; - Запрос.Текст = ТекстЗапроса; // Необходим для целостности формируемых данных. Права доступа будут применяться на этапе их использования. - УстановитьПривилегированныйРежим(Истина); - Выборка = Запрос.Выполнить().Выбрать(); - - Если Выборка.Следующий() Тогда - ОтчетИнформация.Отчет = Выборка.Ссылка; + МассивСсылок = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка"); + ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса = ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса(); + Если ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса Тогда + МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработкиВМоделиСервиса"); КонецЕсли; + Для Каждого Ссылка Из МассивСсылок Цикл + Если ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса + И Не МодульДополнительныеОтчетыИОбработкиВМоделиСервиса.ЭтоПоставляемаяОбработка(Ссылка) Тогда + Продолжить; + КонецЕсли; + ОтчетИнформация.Отчет = Ссылка; + КонецЦикла; КонецПроцедуры @@ -1058,9 +1112,13 @@ Если Не ПолучитьФункциональнуюОпцию("ИспользоватьДополнительныеОтчетыИОбработки") Тогда Возврат; КонецЕсли; - Если НЕ ПравоДоступа("Чтение", Метаданные.Справочники.ДополнительныеОтчетыИОбработки) Тогда + Если Не ПравоДоступа("Чтение", Метаданные.Справочники.ДополнительныеОтчетыИОбработки) Тогда Возврат; КонецЕсли; + ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса = ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса(); + Если ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса Тогда + МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработкиВМоделиСервиса"); + КонецЕсли; Запрос = Новый Запрос; Запрос.Текст = @@ -1079,6 +1137,10 @@ Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл + Если ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса + И Не МодульДополнительныеОтчетыИОбработкиВМоделиСервиса.ЭтоПоставляемаяОбработка(Выборка.Ссылка) Тогда + Продолжить; + КонецЕсли; ДоступныеОтчеты.Добавить(Выборка.Ссылка); КонецЦикла; @@ -1152,48 +1214,71 @@ Процедура ПриПодключенииОтчета(Контекст) Экспорт Ссылка = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Контекст, "Отчет"); Если ТипЗнч(Ссылка) <> Тип("СправочникСсылка.ДополнительныеОтчетыИОбработки") Тогда - Текст = НСтр("ru = 'Не указан отчет'"); - Подробно = НСтр("ru = 'В процедуру ""ДополнительныеОтчетыИОбработки.ПриПодключенииОтчета"" не передан отчет.'"); - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение(Контекст, Текст, Подробно); - Возврат; + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'В процедуру ""%1"" не передан отчет'"), + "ДополнительныеОтчетыИОбработки.ПриПодключенииОтчета"); КонецЕсли; Если Не ПолучитьФункциональнуюОпцию("ИспользоватьДополнительныеОтчетыИОбработки") Тогда - Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Отчет ""%1"" не подключен'"), Строка(Ссылка)); - Подробно = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Подсистема ""%2"" отключена в настройках программы. - |Для включения подсистемы обратитесь к администратору программы.'"), + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Функциональная опция ""%2"" отключена в настройках программы. + |Обратитесь к администратору программы.'"), ДополнительныеОтчетыИОбработкиКлиентСервер.НаименованиеПодсистемы(Истина)); - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение(Контекст, Текст, Подробно); - Возврат; КонецЕсли; Вид = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Ссылка, "Вид"); Если Вид = Перечисления.ВидыДополнительныхОтчетовИОбработок.Отчет Или Вид = Перечисления.ВидыДополнительныхОтчетовИОбработок.ДополнительныйОтчет Тогда - ИнформацияОбОшибке = Неопределено; - Попытка - Контекст.ИмяОтчета = ПодключитьВнешнююОбработку(Ссылка); - Контекст.Подключен = Истина; - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КонецПопытки; - - Если ИнформацияОбОшибке <> Неопределено Тогда - Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Отчет ""%1"" не подключен'"), Строка(Ссылка)); - Подробно = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение(Контекст, Текст, Подробно); - КонецЕсли; + Контекст.ИмяОтчета = ПодключитьВнешнююОбработку(Ссылка); + Контекст.Подключен = Истина; Иначе - - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение(Контекст, - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Объект ""%1"" не является дополнительным отчетом'"), Строка(Ссылка))); - + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Объект ""%1"" не является дополнительным отчетом'"), Строка(Ссылка)); КонецЕсли; КонецПроцедуры +Процедура ПриОпределенииДоступностиОтчетов(СсылкиДопОтчетов, Результат) Экспорт + ПодсистемаВключена = Истина; + ЕстьПравоЧтения = Истина; + МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = Неопределено; + Если Не ПолучитьФункциональнуюОпцию("ИспользоватьДополнительныеОтчетыИОбработки") Тогда + ПодсистемаВключена = Ложь; + ИначеЕсли Не ПравоДоступа("Чтение", Метаданные.Справочники.ДополнительныеОтчетыИОбработки) Тогда + ЕстьПравоЧтения = Ложь; + ИначеЕсли ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса() Тогда + МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработкиВМоделиСервиса"); + КонецЕсли; + + Для Каждого Отчет Из СсылкиДопОтчетов Цикл + ОтчетДоступенВМоделиСервиса = Истина; + Если МодульДополнительныеОтчетыИОбработкиВМоделиСервиса <> Неопределено + И Не МодульДополнительныеОтчетыИОбработкиВМоделиСервиса.ЭтоПоставляемаяОбработка(Отчет) Тогда + ОтчетДоступенВМоделиСервиса = Ложь; + КонецЕсли; + Найденные = Результат.НайтиСтроки(Новый Структура("Отчет", Отчет)); + Для Каждого СтрокаТаблицы Из Найденные Цикл + Если Не ПодсистемаВключена Тогда + СтрокаТаблицы.Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = '<Отчет ""%1"" недоступен, т.к. дополнительные отчеты и обработки отключены в настройках программы.'"), + СтрокаТаблицы.Представление); + ИначеЕсли Не ЕстьПравоЧтения Тогда + СтрокаТаблицы.Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = '<Отчет ""%1"" недоступен, т.к. отсутствует право чтения дополнительных отчетов и обработок.'"), + СтрокаТаблицы.Представление); + ИначеЕсли Не ОтчетДоступенВМоделиСервиса Тогда + СтрокаТаблицы.Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = '<Отчет ""%1"" недоступен в модели сервиса.'"), + СтрокаТаблицы.Представление); + Иначе + СтрокаТаблицы.Доступен = Истина; + КонецЕсли; + КонецЦикла; + КонецЦикла; +КонецПроцедуры + // Дополняет список команд печати внешними печатными формами. // // Параметры: @@ -1208,9 +1293,13 @@ Если Не ПолучитьФункциональнуюОпцию("ИспользоватьДополнительныеОтчетыИОбработки") Тогда Возврат; КонецЕсли; - Если НЕ ПравоДоступа("Чтение", Метаданные.Справочники.ДополнительныеОтчетыИОбработки) Тогда + Если Не ПравоДоступа("Чтение", Метаданные.Справочники.ДополнительныеОтчетыИОбработки) Тогда Возврат; КонецЕсли; + ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса = ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса(); + Если ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса Тогда + МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработкиВМоделиСервиса"); + КонецЕсли; Запрос = НовыйЗапросПоДоступнымКомандам(Перечисления.ВидыДополнительныхОтчетовИОбработок.ПечатнаяФорма, ИмяОбъекта); ТаблицаКоманд = Запрос.Выполнить().Выгрузить(); @@ -1220,6 +1309,10 @@ КонецЕсли; Для Каждого СтрокаТаблицы Из ТаблицаКоманд Цикл + Если ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса + И Не МодульДополнительныеОтчетыИОбработкиВМоделиСервиса.ЭтоПоставляемаяОбработка(СтрокаТаблицы.Ссылка) Тогда + Продолжить; + КонецЕсли; КомандаПечати = КомандыПечати.Добавить(); // Обязательные параметры. @@ -1253,12 +1346,20 @@ Если НЕ ПравоДоступа("Чтение", Метаданные.Справочники.ДополнительныеОтчетыИОбработки) Тогда Возврат; КонецЕсли; + ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса = ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса(); + Если ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса Тогда + МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработкиВМоделиСервиса"); + КонецЕсли; Запрос = НовыйЗапросПоДоступнымКомандам(Перечисления.ВидыДополнительныхОтчетовИОбработок.ПечатнаяФорма, ПолноеИмяОбъектаМетаданных); ТаблицаКоманд = Запрос.Выполнить().Выгрузить(); Для Каждого Команда Из ТаблицаКоманд Цикл + Если ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса + И Не МодульДополнительныеОтчетыИОбработкиВМоделиСервиса.ЭтоПоставляемаяОбработка(Команда.Ссылка) Тогда + Продолжить; + КонецЕсли; Если СтрНайти(Команда.Идентификатор, ",") = 0 Тогда // кроме "комплектов" ВнешниеПечатныеФормы.Добавить(Команда.Идентификатор, Команда.Представление); КонецЕсли; @@ -1295,7 +1396,7 @@ // СовместноДляПользователейИВнешнихПользователей. НазначениеРолей.СовместноДляПользователейИВнешнихПользователей.Добавить( - Метаданные.Роли.ИспользованиеДополнительныхОтчетовИОбработок.Имя); + Метаданные.Роли.ЧтениеДополнительныхОтчетовИОбработок.Имя); КонецПроцедуры @@ -1406,6 +1507,16 @@ // ВариантыОтчетовПовтИсп.Параметры(). // Процедура ПриОпределенииОтчетовСНастройками(ОтчетыСНастройками) Экспорт + Если Не ПолучитьФункциональнуюОпцию("ИспользоватьДополнительныеОтчетыИОбработки") Тогда + Возврат; + КонецЕсли; + Если НЕ ПравоДоступа("Чтение", Метаданные.Справочники.ДополнительныеОтчетыИОбработки) Тогда + Возврат; + КонецЕсли; + ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса = ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса(); + Если ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса Тогда + МодульДополнительныеОтчетыИОбработкиВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработкиВМоделиСервиса"); + КонецЕсли; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ @@ -1416,12 +1527,18 @@ | ДополнительныеОтчетыИОбработки.ИспользуетХранилищеВариантов | И ДополнительныеОтчетыИОбработки.ТеснаяИнтеграцияСФормойОтчета | И НЕ ДополнительныеОтчетыИОбработки.ПометкаУдаления - | И (ДополнительныеОтчетыИОбработки.Вид = ЗНАЧЕНИЕ(Перечисление.ВидыДополнительныхОтчетовИОбработок.ДополнительныйОтчет) - | ИЛИ ДополнительныеОтчетыИОбработки.Вид = ЗНАЧЕНИЕ(Перечисление.ВидыДополнительныхОтчетовИОбработок.Отчет))"; - + | И ДополнительныеОтчетыИОбработки.Вид В(&ВидыОтчетов)"; + ВидыОтчетов = Новый Массив; + ВидыОтчетов.Добавить(Перечисления.ВидыДополнительныхОтчетовИОбработок.ДополнительныйОтчет); + ВидыОтчетов.Добавить(Перечисления.ВидыДополнительныхОтчетовИОбработок.Отчет); + Запрос.УстановитьПараметр("ВидыОтчетов", ВидыОтчетов); УстановитьПривилегированныйРежим(Истина); ДопОтчетыСНастройками = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка"); Для Каждого Ссылка Из ДопОтчетыСНастройками Цикл + Если ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса + И Не МодульДополнительныеОтчетыИОбработкиВМоделиСервиса.ЭтоПоставляемаяОбработка(Ссылка) Тогда + Продолжить; + КонецЕсли; ОтчетыСНастройками.Добавить(Ссылка); КонецЦикла; КонецПроцедуры @@ -1461,7 +1578,7 @@ Результат = Новый ТаблицаЗначений; Результат.Колонки.Добавить("Метаданные"); Результат.Колонки.Добавить("ПолноеИмя", Новый ОписаниеТипов("Строка")); - Результат.Колонки.Добавить("Ссылка", Новый ОписаниеТипов("СправочникСсылка.ИдентификаторыОбъектовМетаданных")); + Результат.Колонки.Добавить("Ссылка", Новый ОписаниеТипов("СправочникСсылка.ИдентификаторыОбъектовМетаданных, СправочникСсылка.ИдентификаторыОбъектовРасширений")); Результат.Колонки.Добавить("Вид", Новый ОписаниеТипов("Строка")); Результат.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); Результат.Колонки.Добавить("ПолноеПредставление", Новый ОписаниеТипов("Строка")); @@ -1538,18 +1655,22 @@ // // Параметры: // ВидОбработок - ПеречислениеСсылка.ВидыДополнительныхОтчетовИОбработок - Вид обработки. -// Размещение - СправочникСсылка.ИдентификаторыОбъектовМетаданных, Строка - Необязательный. -// Объект метаданных (Ссылка или ПолноеИмя). -// Для назначаемых обработок - справочника или документа. -// Для глобальных обработок - подсистемы. +// Размещение - СправочникСсылка.ИдентификаторыОбъектовМетаданных, Строка - Ссылка или полное имя объекта метаданных, +// к которому привязаны искомые дополнительные отчеты и обработки. +// Глобальные обработки размещаются в разделах, контекстные - в справочниках и документах. // ЭтоФормаОбъекта - Булево - Необязательный. -// Истина - для формы объекта. -// Ложь - для формы списка. +// Тип форм, в которых размещены контекстные дополнительные отчеты и обработки. +// Истина - только отчеты и обработки, привязанные к формам объектов. +// Ложь - только отчеты и обработки, привязанные к формам списков. // ТипыКоманд - ПеречислениеСсылка.ВариантыПубликацииДополнительныхОтчетовИОбработок - Тип получаемых команд. // - Массив - Типы команд, которые необходимо получить. -// * ПеречислениеСсылка.ВариантыПубликацииДополнительныхОтчетовИОбработок. +// * ПеречислениеСсылка.ВариантыПубликацииДополнительныхОтчетовИОбработок +// ТолькоВключенные - Булево - Необязательный. +// Тип форм, в которых размещены контекстные дополнительные отчеты и обработки. +// Истина - только отчеты и обработки, привязанные к формам объектов. +// Ложь - только отчеты и обработки, привязанные к формам списков. // -// Возвращаемое значение: +// Возвращаемое значение: // ТаблицаЗначений - Команды дополнительных отчетов или обработок. // * Ссылка - СправочникСсылка.ДополнительныеОтчетыИОбработки - Ссылка дополнительного отчета или обработки. // * Идентификатор - Строка - Идентификатор команды, как он задан разработчиком дополнительного объекта. @@ -1559,14 +1680,14 @@ // * ПоказыватьОповещение - Булево - Показывать оповещение пользователю после выполнения команды. // * Модификатор - Строка - Модификатор команды. // -Функция НовыйЗапросПоДоступнымКомандам(ВидОбработок, Размещение, ЭтоФормаОбъекта = Неопределено, ТипыКоманд = Неопределено) Экспорт +Функция НовыйЗапросПоДоступнымКомандам(ВидОбработок, Размещение, ЭтоФормаОбъекта = Неопределено, ТипыКоманд = Неопределено, ТолькоВключенные = Истина) Экспорт Запрос = Новый Запрос; Если ТипЗнч(Размещение) = Тип("СправочникСсылка.ИдентификаторыОбъектовМетаданных") Тогда СсылкаРодителяИлиРаздела = Размещение; Иначе Если ЗначениеЗаполнено(Размещение) Тогда - СсылкаРодителяИлиРаздела = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(Размещение); + СсылкаРодителяИлиРаздела = СтандартныеПодсистемыСервер.ИдентификаторОбъектаМетаданных(Размещение); Иначе СсылкаРодителяИлиРаздела = Неопределено; КонецЕсли; @@ -1575,37 +1696,23 @@ Если СсылкаРодителяИлиРаздела <> Неопределено Тогда // Есть фильтр по родителю. ЭтоГлобальныеОбработки = ( ВидОбработок = Перечисления.ВидыДополнительныхОтчетовИОбработок.ДополнительныйОтчет - ИЛИ ВидОбработок = Перечисления.ВидыДополнительныхОтчетовИОбработок.ДополнительнаяОбработка); + Или ВидОбработок = Перечисления.ВидыДополнительныхОтчетовИОбработок.ДополнительнаяОбработка); // Запросы принципиально отличаются для глобальных обработок и назначаемых. Если ЭтоГлобальныеОбработки Тогда ТекстЗапроса = "ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ - | БыстрыйДоступ.ДополнительныйОтчетИлиОбработка КАК Ссылка, - | БыстрыйДоступ.ИдентификаторКоманды - |ПОМЕСТИТЬ втБыстрыйДоступ + | ДопОтчетыИОбработки.Ссылка + |ПОМЕСТИТЬ втСсылки |ИЗ - | РегистрСведений.ПользовательскиеНастройкиДоступаКОбработкам КАК БыстрыйДоступ - |ГДЕ - | БыстрыйДоступ.Пользователь = &ТекущийПользователь - | И БыстрыйДоступ.Доступно = ИСТИНА - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ РАЗРЕШЕННЫЕ - | ТаблицаБыстрыйДоступ.Ссылка, - | ТаблицаБыстрыйДоступ.ИдентификаторКоманды - |ПОМЕСТИТЬ втСсылкиИКоманды - |ИЗ - | втБыстрыйДоступ КАК ТаблицаБыстрыйДоступ + | Справочник.ДополнительныеОтчетыИОбработки.Разделы КАК ТаблицаРазделы | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ДополнительныеОтчетыИОбработки КАК ДопОтчетыИОбработки - | ПО ТаблицаБыстрыйДоступ.Ссылка = ДопОтчетыИОбработки.Ссылка - | И (ДопОтчетыИОбработки.ПометкаУдаления = ЛОЖЬ) - | И (ДопОтчетыИОбработки.Вид = &Вид) - | И (ДопОтчетыИОбработки.Публикация = &Публикация) - | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ДополнительныеОтчетыИОбработки.Разделы КАК ТаблицаРазделы - | ПО ТаблицаБыстрыйДоступ.Ссылка = ТаблицаРазделы.Ссылка - | И (ТаблицаРазделы.Раздел = &СсылкаРаздела) + | ПО (ТаблицаРазделы.Раздел = &СсылкаРаздела) + | И ТаблицаРазделы.Ссылка = ДопОтчетыИОбработки.Ссылка + |ГДЕ + | ДопОтчетыИОбработки.Вид = &Вид + | И НЕ ДопОтчетыИОбработки.ПометкаУдаления + | И ДопОтчетыИОбработки.Публикация = &Публикация |; | |//////////////////////////////////////////////////////////////////////////////// @@ -1614,22 +1721,32 @@ | ТаблицаКоманды.Идентификатор, | ТаблицаКоманды.ЗаменяемыеКоманды, | ТаблицаКоманды.ВариантЗапуска, - | ТаблицаКоманды.Представление КАК Представление, + | ТаблицаКоманды.Представление, | ТаблицаКоманды.ПоказыватьОповещение, - | ТаблицаКоманды.Модификатор + | ТаблицаКоманды.Модификатор, + | ЕСТЬNULL(БыстрыйДоступ.Доступно, ЛОЖЬ) КАК Использование + |ПОМЕСТИТЬ ИтоговаяТаблица |ИЗ - | втСсылкиИКоманды КАК ТаблицаСсылкиИКоманды + | втСсылки КАК ТаблицаСсылки | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ДополнительныеОтчетыИОбработки.Команды КАК ТаблицаКоманды - | ПО ТаблицаСсылкиИКоманды.Ссылка = ТаблицаКоманды.Ссылка - | И ТаблицаСсылкиИКоманды.ИдентификаторКоманды = ТаблицаКоманды.Идентификатор + | ПО ТаблицаСсылки.Ссылка = ТаблицаКоманды.Ссылка | И (ТаблицаКоманды.Скрыть = ЛОЖЬ) | И (ТаблицаКоманды.ВариантЗапуска В (&ТипыКоманд)) - | - |УПОРЯДОЧИТЬ ПО - | Представление"; - + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПользовательскиеНастройкиДоступаКОбработкам КАК БыстрыйДоступ + | ПО (ТаблицаКоманды.Ссылка = БыстрыйДоступ.ДополнительныйОтчетИлиОбработка) + | И (ТаблицаКоманды.Идентификатор = БыстрыйДоступ.ИдентификаторКоманды) + | И (БыстрыйДоступ.Пользователь = &ТекущийПользователь) + |ГДЕ + | ЕСТЬNULL(БыстрыйДоступ.Доступно, ЛОЖЬ)"; Запрос.УстановитьПараметр("СсылкаРаздела", СсылкаРодителяИлиРаздела); + Если Не ТолькоВключенные Тогда + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, + "ГДЕ + | ЕСТЬNULL(БыстрыйДоступ.Доступно, ЛОЖЬ)", + ""); + КонецЕсли; + Иначе ТекстЗапроса = @@ -1654,18 +1771,17 @@ | ТаблицаКоманды.Идентификатор, | ТаблицаКоманды.ЗаменяемыеКоманды, | ТаблицаКоманды.ВариантЗапуска, - | ТаблицаКоманды.Представление КАК Представление, + | ТаблицаКоманды.Представление, | ТаблицаКоманды.ПоказыватьОповещение, - | ТаблицаКоманды.Модификатор + | ТаблицаКоманды.Модификатор, + | НЕОПРЕДЕЛЕНО КАК Использование + |ПОМЕСТИТЬ ИтоговаяТаблица |ИЗ | втСсылки КАК ТаблицаСсылки | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ДополнительныеОтчетыИОбработки.Команды КАК ТаблицаКоманды | ПО ТаблицаСсылки.Ссылка = ТаблицаКоманды.Ссылка | И (ТаблицаКоманды.Скрыть = ЛОЖЬ) - | И (ТаблицаКоманды.ВариантЗапуска В (&ТипыКоманд)) - | - |УПОРЯДОЧИТЬ ПО - | Представление"; + | И (ТаблицаКоманды.ВариантЗапуска В (&ТипыКоманд))"; Запрос.УстановитьПараметр("СсылкаРодителя", СсылкаРодителяИлиРаздела); @@ -1681,7 +1797,9 @@ | ТаблицаКоманды.ВариантЗапуска, | ТаблицаКоманды.Представление КАК Представление, | ТаблицаКоманды.ПоказыватьОповещение, - | ТаблицаКоманды.Модификатор + | ТаблицаКоманды.Модификатор, + | НЕОПРЕДЕЛЕНО КАК Использование + |ПОМЕСТИТЬ ИтоговаяТаблица |ИЗ | Справочник.ДополнительныеОтчетыИОбработки.Команды КАК ТаблицаКоманды | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ДополнительныеОтчетыИОбработки КАК ДопОтчетыИОбработки @@ -1692,10 +1810,7 @@ | И (ДопОтчетыИОбработки.ПометкаУдаления = ЛОЖЬ) | И (ДопОтчетыИОбработки.ИспользоватьДляФормыСписка = ИСТИНА) | И (ДопОтчетыИОбработки.ИспользоватьДляФормыОбъекта = ИСТИНА) - | И (ТаблицаКоманды.Скрыть = ЛОЖЬ) - | - |УПОРЯДОЧИТЬ ПО - | Представление"; + | И (ТаблицаКоманды.Скрыть = ЛОЖЬ)"; КонецЕсли; @@ -1723,6 +1838,16 @@ Запрос.УстановитьПараметр("ТекущийПользователь", ПользователиКлиентСервер.АвторизованныйПользователь()); Запрос.Текст = ТекстЗапроса; + ЗапросАдаптированКМоделиСервиса = ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса() + И АдаптироватьЗапросПоДоступнымКомандамКМоделиСервиса(Запрос); + Если Не ЗапросАдаптированКМоделиСервиса Тогда + Запрос.Текст = СтрЗаменить(Запрос.Текст, "ПОМЕСТИТЬ ИтоговаяТаблица", ""); + Запрос.Текст = Запрос.Текст + " + | + |УПОРЯДОЧИТЬ ПО + | Представление"; + КонецЕсли; + Возврат Запрос; КонецФункции @@ -1874,7 +1999,12 @@ Объект = СтрокаТаблицы.Ссылка.ПолучитьОбъект(); // Установка имени объекта - Объект.ИмяОбъекта = СокрЛП(Менеджер.Подключить(АдресВоВременномХранилище, , Истина)); + Если ОбщегоНазначения.ЕстьЗащитаОтОпасныхДействий() Тогда + Объект.ИмяОбъекта = СокрЛП(Менеджер.Подключить(АдресВоВременномХранилище, , Истина, + ОбщегоНазначения.ОписаниеЗащитыБезПредупреждений())); + Иначе + Объект.ИмяОбъекта = СокрЛП(Менеджер.Подключить(АдресВоВременномХранилище, , Истина)); + КонецЕсли; // Если имя отчета (обработки) уже используется другим опубликованным отчетом (обработкой), // то данный объект является дублем - необходимо сменить его вариант публикации на режим отладки (или отключить). @@ -1882,7 +2012,7 @@ ПоискДублей.ИмяОбъекта = Объект.ИмяОбъекта; ПоискДублей.ЭтоОтчет = СтрокаТаблицы.ЭтоОтчет; Если ВсеДопОтчеты.НайтиСтроки(ПоискДублей).Количество() > 0 Тогда - Объект.Публикация = ДополнительныеОтчетыИОбработкиПовтИсп.ВидПубликацииДляКонфликтующихОбработок(); + ОтключитьКонфликтующую(Объект); КонецЕсли; КонецЕсли; @@ -1917,7 +2047,7 @@ ИменаРазделовИИдентификаторы.Вставить(КлючИЗначение.Ключ, ОбщегоНазначения.ИдентификаторОбъектаМетаданных(КлючИЗначение.Значение)); КонецЕсли; МассивИменРазделов.Добавить(КлючИЗначение.Ключ); - КонецЦикла; + КонецЦикла; ТекстЗапроса = "ВЫБРАТЬ РАЗЛИЧНЫЕ @@ -2003,9 +2133,7 @@ КонецПроцедуры -// [2.2.2.25] Процедура проставляет значение реквизита РежимСовместимостиРазрешений для элементов справочника. -// ДополнительныеОтчетыИОбработки. -// +// [2.2.2.25] Заполнение реквизита РежимСовместимостиРазрешений для справочника ДополнительныеОтчетыИОбработки. Процедура ЗаполнитьРежимСовместимостиРазрешений() Экспорт НачатьТранзакцию(); @@ -2027,7 +2155,7 @@ Попытка - ОбъектОбработки = ПолучитьОбъектВнешнейОбработки(Выборка.Ссылка); + ОбъектОбработки = ОбъектВнешнейОбработки(Выборка.Ссылка); РегистрационныеДанные = ОбъектОбработки.СведенияОВнешнейОбработке(); Если РегистрационныеДанные.Свойство("ВерсияБСП") Тогда @@ -2147,6 +2275,8 @@ Возврат Перечисления.ВидыДополнительныхОтчетовИОбработок.ПечатнаяФорма; ИначеЕсли СтроковоеПредставление = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиСозданиеСвязанныхОбъектов() Тогда Возврат Перечисления.ВидыДополнительныхОтчетовИОбработок.СозданиеСвязанныхОбъектов; + ИначеЕсли СтроковоеПредставление = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиШаблонСообщения() Тогда + Возврат Перечисления.ВидыДополнительныхОтчетовИОбработок.ШаблонСообщения; ИначеЕсли СтроковоеПредставление = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительнаяОбработка() Тогда Возврат Перечисления.ВидыДополнительныхОтчетовИОбработок.ДополнительнаяОбработка; ИначеЕсли СтроковоеПредставление = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительныйОтчет() Тогда @@ -2170,6 +2300,9 @@ ИначеЕсли СсылкаВида = Перечисления.ВидыДополнительныхОтчетовИОбработок.СозданиеСвязанныхОбъектов Тогда Возврат ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиСозданиеСвязанныхОбъектов(); + ИначеЕсли СсылкаВида = Перечисления.ВидыДополнительныхОтчетовИОбработок.ШаблонСообщения Тогда + Возврат ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиШаблонСообщения(); + ИначеЕсли СсылкаВида = Перечисления.ВидыДополнительныхОтчетовИОбработок.ДополнительнаяОбработка Тогда Возврат ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительнаяОбработка(); @@ -2204,41 +2337,6 @@ Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Раздел ""%1""'"), ПредставлениеРаздела); КонецФункции -// Функция для добавления команд дополнительных обработок в список "своих". -Процедура ДобавитьКомандыВСписокСвоих(МассивКоманд) Экспорт - - Для Каждого ЭлементСтрока Из МассивКоманд Цикл - Запись = РегистрыСведений.ПользовательскиеНастройкиДоступаКОбработкам.СоздатьМенеджерЗаписи(); - - Запись.ДополнительныйОтчетИлиОбработка = ЭлементСтрока.Обработка; - Запись.ИдентификаторКоманды = ЭлементСтрока.Идентификатор; - Запись.Пользователь = Пользователи.АвторизованныйПользователь(); - Запись.Доступно = Истина; - - Запись.Записать(Истина); - КонецЦикла; - -КонецПроцедуры - -// Функция для исключения команд дополнительных обработок из списка "своих". -Процедура УдалитьКомандыИзСпискаСвоих(МассивКоманд) Экспорт - - Для Каждого ЭлементСтрока Из МассивКоманд Цикл - - Запись = РегистрыСведений.ПользовательскиеНастройкиДоступаКОбработкам.СоздатьМенеджерЗаписи(); - - Запись.ДополнительныйОтчетИлиОбработка = ЭлементСтрока.Обработка; - Запись.ИдентификаторКоманды = ЭлементСтрока.Идентификатор; - Запись.Пользователь = Пользователи.АвторизованныйПользователь(); - - Запись.Прочитать(); - - Запись.Удалить(); - - КонецЦикла; - -КонецПроцедуры - // Проверяет наличие права добавления дополнительных отчетов и обработок. Функция ПравоДобавления(Знач ДополнительнаяОбработка = Неопределено) Экспорт @@ -2405,6 +2503,38 @@ КонецПроцедуры +// Определяет используется-ли в текущем сеансе фильтр подключенных ДОиО по версии модели сервиса. +Функция ИспользуетсяТеснаяИнтеграцияСПодсистемойВМоделиСервиса() + Возврат ОбщегоНазначенияПовтИсп.РазделениеВключено() + И ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса.РаботаВМоделиСервиса.ДополнительныеОтчетыИОбработкиВМоделиСервиса"); +КонецФункции + +// Вызывается при создании запроса для получения таблицы команд дополнительных отчетов или обработок. +Функция АдаптироватьЗапросПоДоступнымКомандамКМоделиСервиса(Запрос) + ИмяРегистра = "ИспользованиеПоставляемыхДополнительныхОтчетовИОбработокВОбластяхДанных"; + Запрос.Текст = Запрос.Текст + "; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ РАЗРЕШЕННЫЕ + | ИтоговаяТаблица.Ссылка, + | ИтоговаяТаблица.Идентификатор, + | ИтоговаяТаблица.ЗаменяемыеКоманды, + | ИтоговаяТаблица.ВариантЗапуска, + | ИтоговаяТаблица.Представление КАК Представление, + | ИтоговаяТаблица.ПоказыватьОповещение, + | ИтоговаяТаблица.Модификатор, + | ИтоговаяТаблица.Использование + |ИЗ + | ИтоговаяТаблица КАК ИтоговаяТаблица + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ &ПолноИмяРегистра КАК Инсталляции + | ПО ИтоговаяТаблица.Ссылка = Инсталляции.ИспользуемаяОбработка + | + |УПОРЯДОЧИТЬ ПО + | Представление"; + Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ПолноИмяРегистра", "РегистрСведений." + ИмяРегистра); + Возврат Истина; +КонецФункции + // Запись ошибки в журнал регистрации по дополнительному отчету или обработке. Процедура ЗаписатьОшибку(Ссылка, ТекстСообщения, Реквизит1 = Неопределено, Реквизит2 = Неопределено, Реквизит3 = Неопределено) Экспорт Уровень = УровеньЖурналаРегистрации.Ошибка; @@ -2500,7 +2630,16 @@ Элементы = Форма.Элементы; ПредустановленныеКоманды = Новый Массив; - Подменю = Элементы.Найти("ПодменюДополнительныхОбработокЗаполнения"); + Подменю = Элементы.Найти("ПодменюЗаполнитьСмТакже"); + Если Подменю = Неопределено Тогда + Подменю = Элементы.Найти("ПодменюЗаполнитьОбычное"); + КонецЕсли; + Если Подменю = Неопределено Тогда + Подменю = Элементы.Найти("ПодменюЗаполнить"); + КонецЕсли; + Если Подменю = Неопределено Тогда + Подменю = Элементы.Найти("ПодменюДополнительныхОбработокЗаполнения"); + КонецЕсли; Если Подменю = Неопределено Тогда КоманднаяПанель = Элементы.Найти("КоманднаяПанель"); Если КоманднаяПанель = Неопределено Тогда @@ -2620,7 +2759,7 @@ Результат = Новый Массив; - ПроверяемыеРоли = "ИспользованиеДополнительныхОтчетовИОбработок, ДобавлениеИзменениеДополнительныхОтчетовИОбработок"; + ПроверяемыеРоли = "ЧтениеДополнительныхОтчетовИОбработок, ДобавлениеИзменениеДополнительныхОтчетовИОбработок"; Запрос = Новый Запрос("ВЫБРАТЬ Ссылка ИЗ Справочник.Пользователи"); ВсеПользователи = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка"); @@ -2746,15 +2885,14 @@ РезультатВыполнения = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыКоманды, "РезультатВыполнения"); Если ТипЗнч(РезультатВыполнения) <> Тип("Структура") Тогда - ПараметрыКоманды.Вставить("РезультатВыполнения", СтандартныеПодсистемыКлиентСервер.ОписаниеРезультатаВыполнения()); + ПараметрыКоманды.Вставить("РезультатВыполнения", Новый Структура()); КонецЕсли; ОписаниеКоманды = СведенияОВнешнемОбъекте.Команды.Найти(ИдентификаторКоманды, "Идентификатор"); Если ОписаниеКоманды = Неопределено Тогда - ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Команда %1 не обнаружена!'"), ИдентификаторКоманды); - КонецЕсли; + ЭтоСценарийВБезопасномРежиме = (ОписаниеКоманды.Использование = "СценарийВБезопасномРежиме"); ИзмененныеОбъекты = Неопределено; @@ -2812,7 +2950,7 @@ КонецЕсли; - СтандартныеПодсистемыКлиентСервер.ОповеститьДинамическиеСписки(ПараметрыКоманды.РезультатВыполнения, ИзмененныеОбъекты); + ПараметрыКоманды.РезультатВыполнения.Вставить("ОповеститьФормы", СтандартныеПодсистемыСервер.ПодготовитьОповещениеФормОбИзменении(ИзмененныеОбъекты)); Если ТипЗнч(АдресРезультата) = Тип("Строка") И ЭтоАдресВременногоХранилища(АдресРезультата) Тогда ПоместитьВоВременноеХранилище(ПараметрыКоманды.РезультатВыполнения, АдресРезультата); @@ -2827,7 +2965,7 @@ РасширениеБезопасногоРежима = ДополнительныеОтчетыИОбработкиВБезопасномРежимеСлужебный; - ВнешнийОбъект = ПолучитьОбъектВнешнейОбработки(ПараметрыКоманды.ДополнительнаяОбработкаСсылка); + ВнешнийОбъект = ОбъектВнешнейОбработки(ПараметрыКоманды.ДополнительнаяОбработкаСсылка); ИдентификаторКоманды = ПараметрыКоманды.ИдентификаторКоманды; Сценарий = ВнешнийОбъект.СформироватьСценарий(ИдентификаторКоманды, ПараметрыКоманды); @@ -2842,6 +2980,17 @@ //////////////////////////////////////////////////////////////////////////////// // Другие +// Устанавливает обработке вид публикации, использующийся для конфликтующих дополнительных отчетов и обработок. +Процедура ОтключитьКонфликтующую(ОбработкаОбъект) + ВидРежимОтладки = Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.РежимОтладки; + ДоступныеВиды = ДополнительныеОтчетыИОбработкиПовтИсп.ДоступныеВидыПубликации(); + Если ДоступныеВиды.Найти(ВидРежимОтладки) Тогда + ОбработкаОбъект.Публикация = ВидРежимОтладки; + Иначе + ОбработкаОбъект.Публикация = Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.Отключена; + КонецЕсли; +КонецПроцедуры + // Для внутреннего использования. Функция ЗарегистрироватьОбработку(Знач Объект, Знач ПараметрыРегистрации) Экспорт @@ -2855,11 +3004,11 @@ Если ПараметрыРегистрации.ОтключатьКонфликтующие Тогда Для Каждого ЭлементСписка Из ПараметрыРегистрации.Конфликтующие Цикл КонфликтующийОбъект = ЭлементСписка.Значение.ПолучитьОбъект(); - КонфликтующийОбъект.Публикация = ДополнительныеОтчетыИОбработкиПовтИсп.ВидПубликацииДляКонфликтующихОбработок(); + ОтключитьКонфликтующую(КонфликтующийОбъект); КонфликтующийОбъект.Записать(); КонецЦикла; ИначеЕсли ПараметрыРегистрации.ОтключатьПубликацию Тогда - Объект.Публикация = ДополнительныеОтчетыИОбработкиПовтИсп.ВидПубликацииДляКонфликтующихОбработок(); + ОтключитьКонфликтующую(Объект); КонецЕсли; Результат = Новый Структура("ИмяОбъекта, СтароеИмяОбъекта, Успех, ИмяОбъектаЗанято, Конфликтующие, ТекстОшибки, КраткоеПредставлениеОшибки"); @@ -2996,7 +3145,7 @@ Для Каждого ПолноеИмяОбъектаМетаданных Из РегистрационныеДанные.Назначение Цикл ПозицияТочки = СтрНайти(ПолноеИмяОбъектаМетаданных, "."); - Если Сред(ПолноеИмяОбъектаМетаданных, ПозицияТочки + 1) = "*" Тогда + Если Сред(ПолноеИмяОбъектаМетаданных, ПозицияТочки + 1) = "*" Тогда // Например [Справочник.*]. Поиск = Новый Структура("Вид", Лев(ПолноеИмяОбъектаМетаданных, ПозицияТочки - 1)); Иначе Поиск = Новый Структура("ПолноеИмя", ПолноеИмяОбъектаМетаданных); @@ -3103,7 +3252,14 @@ ДвоичныеДанные = ПолучитьИзВременногоХранилища(ПараметрыРегистрации.АдресДанныхОбработки); ДвоичныеДанные.Записать(РезультатРегистрации.ИмяОбъекта); #Иначе - РезультатРегистрации.ИмяОбъекта = СокрЛП(Менеджер.Подключить(ПараметрыРегистрации.АдресДанныхОбработки, , Истина)); + Если ОбщегоНазначения.ЕстьЗащитаОтОпасныхДействий() Тогда + РезультатРегистрации.ИмяОбъекта = + СокрЛП(Менеджер.Подключить(ПараметрыРегистрации.АдресДанныхОбработки, , Истина, + ОбщегоНазначения.ОписаниеЗащитыБезПредупреждений())); + Иначе + РезультатРегистрации.ИмяОбъекта = + СокрЛП(Менеджер.Подключить(ПараметрыРегистрации.АдресДанныхОбработки, , Истина)); + КонецЕсли; #КонецЕсли // Получение сведений о внешней обработке. diff --git a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВБезопасномРежиме/Module.bsl b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВБезопасномРежиме/Module.bsl index 928493758..b8f9ff073 100644 --- a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВБезопасномРежиме/Module.bsl +++ b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВБезопасномРежиме/Module.bsl @@ -3,7 +3,9 @@ // //////////////////////////////////////////////////////////////////////////////// -#Область УстаревшийПрограммныйИнтерфейс +#Область ПрограммныйИнтерфейс + +#Область УстаревшиеПроцедурыИФункции // Создает объект ЧтениеXML и инициализирует его данными файла, помещенном во временное хранилище // по адресу, переданному в качестве значения параметра АдресДвоичныхДанных. @@ -431,24 +433,20 @@ ВременныйФайл = ПолучитьИмяВременногоФайла(); Попытка - Соединение.Получить(ПутьКФайлуНаСервере, ВременныйФайл); - Исключение - - УдалитьВременныйФайл(ВременныйФайл); ИнформацияОбОшибке = ИнформацияОбОшибке(); СообщениеОбОшибке = НСтр("ru = 'Ошибка при получении файла с сервера %1:'") + Символы.ПС + "%2"; ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СообщениеОбОшибке, ИмяСервера, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); - КонецПопытки; - - Результат = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ВременныйФайл)); - УдалитьВременныйФайл(ВременныйФайл); - Возврат Результат; + АдресХранилища = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ВременныйФайл)); + + УдалитьФайлы(ВременныйФайл); + + Возврат АдресХранилища; КонецФункции @@ -583,14 +581,16 @@ ДополнительныеОтчетыИОбработкиВБезопасномРежимеИнтерфейс.РазрешениеWSСоединение( АдресWSDL)); - Возврат ОбщегоНазначения.WSПрокси( - АдресWSDL, - URIПространстваИмен, - ИмяСервиса, - ИмяТочкиПодключения, - ИмяПользователя, - Пароль, - Таймаут); + ПараметрыПодключения = ОбщегоНазначения.ПараметрыПодключенияWSПрокси(); + ПараметрыПодключения.АдресWSDL = АдресWSDL; + ПараметрыПодключения.URIПространстваИмен = URIПространстваИмен; + ПараметрыПодключения.ИмяСервиса = ИмяСервиса; + ПараметрыПодключения.ИмяТочкиПодключения = ИмяТочкиПодключения; + ПараметрыПодключения.ИмяПользователя = ИмяПользователя; + ПараметрыПодключения.Пароль = Пароль; + ПараметрыПодключения.Таймаут = Таймаут; + + Возврат ОбщегоНазначения.СоздатьWSПрокси(ПараметрыПодключения); КонецФункции @@ -622,11 +622,11 @@ КонецФункции -// Функция - выполняет запись объектов +// Функция - выполняет запись объектов. // // Параметры: -// КлючСессии - УникальныйИдентификатор - ключ сессии расширения безопасного режима -// ОбрабатываемыеОбъекты - Массив - объекты, которые необходимо записать +// КлючСессии - УникальныйИдентификатор - ключ сессии расширения безопасного режима. +// ОбрабатываемыеОбъекты - Массив - объекты, которые необходимо записать. // Допустимые типы: // СправочникОбъект; // КонстантаМенеджерЗначения; @@ -765,6 +765,8 @@ #КонецОбласти +#КонецОбласти + #Область СлужебныеПроцедурыИФункции Процедура ПроверитьКорректностьИмениМетодаВнешнегоОбъекта(Знач ИмяМетода) @@ -830,24 +832,4 @@ КонецПроцедуры -Процедура УдалитьВременныйФайл(ПолноеИмяФайла) - - Если ПустаяСтрока(ПолноеИмяФайла) Тогда - - Возврат; - - КонецЕсли; - - Попытка - - УдалитьФайлы(ПолноеИмяФайла); - - Исключение - - Возврат; - - КонецПопытки; - -КонецПроцедуры - #КонецОбласти diff --git a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВБезопасномРежимеВызовСервера/Module.bsl b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВБезопасномРежимеВызовСервера/Module.bsl index 350c3b96e..fe1f085a9 100644 --- a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВБезопасномРежимеВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВБезопасномРежимеВызовСервера/Module.bsl @@ -311,7 +311,7 @@ ПроверитьКорректностьВызоваПоОкружению(); Сценарий = ПолучитьИзВременногоХранилища(АдресСценария); - ИсполняемыйОбъект = ДополнительныеОтчетыИОбработки.ПолучитьОбъектВнешнейОбработки( + ИсполняемыйОбъект = ДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки( Справочники.ДополнительныеОтчетыИОбработки.ПолучитьСсылку(КлючСессии)); ДополнительныеОтчетыИОбработкиВБезопасномРежимеСлужебный.ВыполнитьСценарийБезопасногоРежима( diff --git a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВБезопасномРежимеСлужебный/Module.bsl b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВБезопасномРежимеСлужебный/Module.bsl index d76342ef1..032109e5c 100644 --- a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВБезопасномРежимеСлужебный/Module.bsl +++ b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВБезопасномРежимеСлужебный/Module.bsl @@ -228,56 +228,6 @@ КонецФункции -// Только для внутреннего использования. -Функция ПолучитьРазрешенияСессииРасширенияБезопасногоРежима(Знач КлючСессии) Экспорт - - УстановитьПривилегированныйРежим(Истина); - - СтандартнаяОбработка = Истина; - ОписанияРазрешений = Неопределено; - - ОбработчикиСобытия = ОбщегоНазначения.ОбработчикиСлужебногоСобытия( - "СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки\ПриПолученииРазрешенийСессииБезопасногоРежима"); - - Для каждого Обработчик Из ОбработчикиСобытия Цикл - - Обработчик.Модуль.ПриПолученииРазрешенийСессииБезопасногоРежима(КлючСессии, ОписанияРазрешений, СтандартнаяОбработка); - - КонецЦикла; - - Если СтандартнаяОбработка Тогда - - Ссылка = Справочники.ДополнительныеОтчетыИОбработки.ПолучитьСсылку(КлючСессии); - ТекстЗапроса = - "ВЫБРАТЬ - | Разрешения.ВидРазрешения КАК ВидРазрешения, - | Разрешения.Параметры КАК Параметры - |ИЗ - | Справочник.ДополнительныеОтчетыИОбработки.Разрешения КАК Разрешения - |ГДЕ - | Разрешения.Ссылка = &Ссылка"; - Запрос = Новый Запрос(ТекстЗапроса); - Запрос.УстановитьПараметр("Ссылка", Ссылка); - ОписанияРазрешений = Запрос.Выполнить().Выгрузить(); - - КонецЕсли; - - Результат = Новый Соответствие(); - - Для Каждого ОписаниеРазрешения Из ОписанияРазрешений Цикл - - ТипРазрешения = ФабрикаXDTO.Тип( - ДополнительныеОтчетыИОбработкиВБезопасномРежимеИнтерфейс.Пакет(), - ОписаниеРазрешения.ВидРазрешения); - - Результат.Вставить(ТипРазрешения, ОписаниеРазрешения.Параметры.Получить()); - - КонецЦикла; - - Возврат Результат; - -КонецФункции - // Только для внутреннего использования. Функция ВыполнитьСценарийБезопасногоРежима(Знач КлючСессии, Знач Сценарий, Знач ИсполняемыйОбъект, ПараметрыВыполнения, СохраняемыеПараметры = Неопределено, ОбъектыНазначения = Неопределено) Экспорт @@ -574,6 +524,56 @@ #Область СлужебныеПроцедурыИФункции +// Только для внутреннего использования. +Функция ПолучитьРазрешенияСессииРасширенияБезопасногоРежима(Знач КлючСессии) + + УстановитьПривилегированныйРежим(Истина); + + СтандартнаяОбработка = Истина; + ОписанияРазрешений = Неопределено; + + ОбработчикиСобытия = ОбщегоНазначения.ОбработчикиСлужебногоСобытия( + "СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки\ПриПолученииРазрешенийСессииБезопасногоРежима"); + + Для каждого Обработчик Из ОбработчикиСобытия Цикл + + Обработчик.Модуль.ПриПолученииРазрешенийСессииБезопасногоРежима(КлючСессии, ОписанияРазрешений, СтандартнаяОбработка); + + КонецЦикла; + + Если СтандартнаяОбработка Тогда + + Ссылка = Справочники.ДополнительныеОтчетыИОбработки.ПолучитьСсылку(КлючСессии); + ТекстЗапроса = + "ВЫБРАТЬ + | Разрешения.ВидРазрешения КАК ВидРазрешения, + | Разрешения.Параметры КАК Параметры + |ИЗ + | Справочник.ДополнительныеОтчетыИОбработки.Разрешения КАК Разрешения + |ГДЕ + | Разрешения.Ссылка = &Ссылка"; + Запрос = Новый Запрос(ТекстЗапроса); + Запрос.УстановитьПараметр("Ссылка", Ссылка); + ОписанияРазрешений = Запрос.Выполнить().Выгрузить(); + + КонецЕсли; + + Результат = Новый Соответствие(); + + Для Каждого ОписаниеРазрешения Из ОписанияРазрешений Цикл + + ТипРазрешения = ФабрикаXDTO.Тип( + ДополнительныеОтчетыИОбработкиВБезопасномРежимеИнтерфейс.Пакет(), + ОписаниеРазрешения.ВидРазрешения); + + Результат.Вставить(ТипРазрешения, ОписаниеРазрешения.Параметры.Получить()); + + КонецЦикла; + + Возврат Результат; + +КонецФункции + // Только для внутреннего использования. Функция ТекстИсключенияРазрешениеНеПредоставлено(Знач КлючСессии, Знач ТипТребуемогоРазрешения) diff --git a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВызовСервера/Module.bsl b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВызовСервера/Module.bsl index ceedc2d99..160e09de7 100644 --- a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиВызовСервера/Module.bsl @@ -15,16 +15,30 @@ КонецФункции // Создает и возвращает экземпляр внешней обработки (отчета). -// Подробнее - см. ДополнительныеОтчетыИОбработки.ПолучитьОбъектВнешнейОбработки(). +// Подробнее - см. ДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(). +// +Функция ОбъектВнешнейОбработки(Ссылка) Экспорт + + Возврат ДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(Ссылка); + +КонецФункции + +#Область УстаревшиеПроцедурыИФункции + +// Устарела. Следует использовать ОбъектВнешнейОбработки. +// Создает и возвращает экземпляр внешней обработки (отчета). +// Подробнее - см. ДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(). // Функция ПолучитьОбъектВнешнейОбработки(Ссылка) Экспорт - Возврат ДополнительныеОтчетыИОбработки.ПолучитьОбъектВнешнейОбработки(Ссылка); + Возврат ДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(Ссылка); КонецФункции #КонецОбласти +#КонецОбласти + #Область СлужебныеПроцедурыИФункции // Выполняет команду обработки и помещает результат во временное хранилище. @@ -55,4 +69,18 @@ Возврат ДополнительныеОтчетыИОбработки.ОписаниеКомандыОбработки(ИмяЭлемента, АдресТаблицыКомандВоВременномХранилище); КонецФункции +// Запускает длительную операцию. +Функция ЗапуститьДлительнуюОперацию(Знач УникальныйИдентификатор, Знач ПараметрыКоманды) Экспорт + ИмяМетода = "ДополнительныеОтчетыИОбработки.ВыполнитьКоманду"; + + НастройкиЗапуска = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + НастройкиЗапуска.ОжидатьЗавершение = 0; + НастройкиЗапуска.НаименованиеФоновогоЗадания = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Выполнение дополнительного отчета или обработки ""%1"", имя команды ""%2""'"), + Строка(ПараметрыКоманды.ДополнительнаяОбработкаСсылка), + ПараметрыКоманды.ИдентификаторКоманды); + + Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяМетода, ПараметрыКоманды, НастройкиЗапуска); +КонецФункции + #КонецОбласти diff --git a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиКлиент/Module.bsl b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиКлиент/Module.bsl index 0dafa8674..2fe33b9c0 100644 --- a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиКлиент/Module.bsl +++ b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиКлиент/Module.bsl @@ -11,7 +11,7 @@ // ПараметрКоманды - Передается "как есть" из параметров обработчика команды. // ПараметрыВыполненияКоманды - Передается "как есть" из параметров обработчика команды. // Вид - Строка - Вид обработки, который можно получить из серии функций: -// ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработки<...>(). +// ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработки<...>. // ИмяРаздела - Строка - Имя раздела командного интерфейса, из которого вызывается команда. // Процедура ОткрытьФормуКомандДополнительныхОтчетовИОбработок(ПараметрКоманды, ПараметрыВыполненияКоманды, Вид, ИмяРаздела = "") Экспорт @@ -31,10 +31,19 @@ Параметры.Вставить("ИмяФормы", ПараметрыВыполненияКоманды.Источник.ИмяФормы); КонецЕсли; + Если ТипЗнч(ПараметрыВыполненияКоманды) = Тип("ПараметрыВыполненияКоманды") Тогда + ФормаСсылка = ПараметрыВыполненияКоманды.НавигационнаяСсылка; + Иначе + ФормаСсылка = Неопределено; + КонецЕсли; + ОткрытьФорму( "ОбщаяФорма.ДополнительныеОтчетыИОбработки", Параметры, - ПараметрыВыполненияКоманды.Источник); + ПараметрыВыполненияКоманды.Источник, + , + , + ФормаСсылка); КонецПроцедуры @@ -57,110 +66,119 @@ КонецПроцедуры -// Подключает длительную операцию для выполнения команды из формы внешнего отчета или обработки. +// Возвращает пустую структуру параметров выполнения команды в фоне. +// +// Возвращаемое значение: +// Структура - со свойствами: +// * ДополнительнаяОбработкаСсылка - СправочникСсылка.ДополнительныеОтчетыИОбработки - Передается "как есть" из параметров формы. +// * СопровождающийТекст - Строка - Текст длительной операции. +// * ОбъектыНазначения - Массив - Ссылки объектов, для которых выполняется команда. +// Используется для назначаемых дополнительных обработок. +// * СозданныеОбъекты - Массив - Ссылки объектов, созданных в процессе выполнения команды. +// Используется для назначаемых дополнительных обработок вида "Создание связанных объектов". +// * ФормаВладелец - УправляемаяФорма - форма объекта или списка, из которой была вызвана команда. +// +Функция ПараметрыВыполненияКомандыВФоне(ДополнительнаяОбработкаСсылка) Экспорт + + Результат = Новый Структура("ДополнительнаяОбработкаСсылка", ДополнительнаяОбработкаСсылка); + Результат.Вставить("СопровождающийТекст"); + Результат.Вставить("ОбъектыНазначения"); + Результат.Вставить("СозданныеОбъекты"); + Результат.Вставить("ФормаВладелец"); + Возврат Результат; + +КонецФункции + +// Выполняет команду ИдентификаторКоманды в фоне с помощью механизма длительных операций. +// Для использования в формах внешних отчетов и обработок. // // Параметры: -// ИдентификаторКоманды - Строка - Имя команды как оно задано в функции СведенияОВнешнейОбработке() модуля объекта. -// ПараметрыКоманды - Структура - Параметры выполнения команды. -// Обязательные параметры: -// * ДополнительнаяОбработкаСсылка - СправочникСсылка.ДополнительныеОтчетыИОбработки - -// Передается "Как есть" из параметров формы. -// Необязательные параметры: -// * СопровождающийТекст - Строка - Текст длительной операции. -// * Заголовок - Строка - Заголовок длительной операции. -// * ОбъектыНазначения - Массив - Ссылки объектов, для которых выполняется команда. -// Используется для назначаемых дополнительных обработок. -// * РезультатВыполнения - Структура - -// См. СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(). -// Служебные параметры, зарезервированные подсистемой: -// * ИдентификаторКоманды - Строка - Имя выполняемой команды. -// Помимо обязательных параметров может содержать "свои" для использования в обработчике команды. -// При добавлении собственных параметров желательно использовать префикс, -// исключающий пересечение со стандартными механизмами, например "Контекст...". -// Форма - УправляемаяФорма - Форма, в которую необходимо вернуть результат. +// ИдентификаторКоманды - Строка - Имя команды как оно задано в функции СведенияОВнешнейОбработке модуля объекта. +// ПараметрыКоманды - Структура - Параметры выполнения команды. +// Состав параметров описан в функции ПараметрыВыполненияКомандыВФоне. +// Также включает в себя служебный параметр, зарезервированный подсистемой: +// * ИдентификаторКоманды - Строка - Имя выполняемой команды. Соответствует параметру ИдентификаторКоманды. +// Помимо стандартных параметров может содержать пользовательские для использования в обработчике команды. +// При добавлении собственных параметров рекомендуется использовать префикс в их именах, +// исключающий конфликты со стандартными параметрами, например "Контекст...". +// Обработчик - ОписаниеОповещения - Описание процедуры, которая принимает результат выполнения фонового задания. +// Подробнее см. описание параметра ОповещениеОЗавершении процедуры ДлительныеОперацииКлиент.ОжидатьЗавершение(). +// Параметры процедуры: +// * Задание - Структура, Неопределено - Сведения о фоновом задании. +// * ДополнительныеПараметры - Значение, которое было указано при создании объекта ОписаниеОповещения. // -// Важно: -// Результат возвращается в обработчике ОбработкаВыбора(). -// Для первичной идентификации следует использовать функцию ИмяФормыДлительнойОперации(). -// Так же следует учитывать, что фоновые задания доступны только в клиент-серверном режиме. -// Примеры использования можно найти в дополнительной обработке демо базы. -// -// Возвращаемое значение: -// РезультатВыполнения - Структура - См. СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(). -// -// Пример обработчика команды: +// Пример: // &НаКлиенте // Процедура ОбработчикКоманды(Команда) -// ИдентификаторКоманды = Команда.Имя; -// ПараметрыКоманды = Новый Структура("ДополнительнаяОбработкаСсылка, СопровождающийТекст"); -// ПараметрыКоманды.ДополнительнаяОбработкаСсылка = ОбъектСсылка; +// ПараметрыКоманды = ДополнительныеОтчетыИОбработкиКлиент.ПараметрыВыполненияКомандыВФоне(Параметры.ДополнительнаяОбработкаСсылка); // ПараметрыКоманды.СопровождающийТекст = НСтр("ru = 'Выполняется команда...'"); -// Состояние(ПараметрыКоманды.СопровождающийТекст); -// Если СтандартныеПодсистемыВызовСервера.ПараметрыРаботыКлиента().ИнформационнаяБазаФайловая Тогда -// РезультатВыполнения = ВыполнитьКомандуНапрямую(ИдентификаторКоманды, ПараметрыКоманды); -// ДополнительныеОтчетыИОбработкиКлиент.ПоказатьРезультатВыполненияКоманды(ЭтотОбъект, РезультатВыполнения); -// Иначе -// ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьКомандуВФоне(ИдентификаторКоманды, ПараметрыКоманды, ЭтотОбъект); -// КонецЕсли; +// Обработчик = Новый ОписаниеОповещения("<ИмяЭкспортнойПроцедуры>", ЭтотОбъект); +// ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьКомандуВФоне(Команда.Имя, ПараметрыКоманды, Обработчик); // КонецПроцедуры // -// Пример кода выполнения команды напрямую: -// &НаСервере -// Функция ВыполнитьКомандуНапрямую(ИдентификаторКоманды, ПараметрыКоманды) -// Возврат ДополнительныеОтчетыИОбработки.ВыполнитьКомандуИзФормыВнешнегоОбъекта(ИдентификаторКоманды, ПараметрыКоманды, ЭтотОбъект); -// КонецФункции -// -// Пример обработчика выбора: -// &НаКлиенте -// Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора) -// Если ИсточникВыбора.ИмяФормы = ДополнительныеОтчетыИОбработкиКлиент.ИмяФормыДлительнойОперации() Тогда -// ДополнительныеОтчетыИОбработкиКлиент.ПоказатьРезультатВыполненияКоманды(ЭтотОбъект, ВыбранноеЗначение); -// КонецЕсли; -// КонецПроцедуры -// -// Пример получения ссылки дополнительной обработки: -// &НаСервере -// Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) -// ОбъектСсылка = Параметры.ДополнительнаяОбработкаСсылка; -// КонецПроцедуры -// -Процедура ВыполнитьКомандуВФоне(ИдентификаторКоманды, ПараметрыКоманды, Форма) Экспорт +Процедура ВыполнитьКомандуВФоне(Знач ИдентификаторКоманды, Знач ПараметрыКоманды, Знач Обработчик) Экспорт - ДополнительнаяОбработкаСсылка = Неопределено; - ПараметрыКоманды.Свойство("ДополнительнаяОбработкаСсылка", ДополнительнаяОбработкаСсылка); - НекорректныйТип = ТипЗнч(ДополнительнаяОбработкаСсылка) <> Тип("СправочникСсылка.ДополнительныеОтчетыИОбработки"); - Если НекорректныйТип ИЛИ ДополнительнаяОбработкаСсылка = ПредопределенноеЗначение("Справочник.ДополнительныеОтчетыИОбработки.ПустаяСсылка") Тогда - - ТекстОшибки = НСтр("ru = 'Некорректное значение параметра ""ДополнительнаяОбработкаСсылка"":'") + Символы.ПС; - Если НекорректныйТип Тогда - ТекстОшибки = ТекстОшибки + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Передан тип ""%1"", ожидался ""%2"".'"), - Строка(ТипЗнч(ДополнительнаяОбработкаСсылка)), - Строка(Тип("СправочникСсылка.ДополнительныеОтчетыИОбработки"))); - Иначе - ТекстОшибки = ТекстОшибки + НСтр("ru = 'Передана пустая ссылка. Вероятно, обработка была открыта напрямую.'"); - КонецЕсли; - - ВызватьИсключение ТекстОшибки; - - КонецЕсли; + ИмяПроцедуры = "ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьКомандуВФоне"; + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр(ИмяПроцедуры, "ИдентификаторКоманды", + ИдентификаторКоманды, + Тип("Строка")); + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр(ИмяПроцедуры, "ПараметрыКоманды", + ПараметрыКоманды, + Тип("Структура")); + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр(ИмяПроцедуры, "ПараметрыКоманды.ДополнительнаяОбработкаСсылка", + ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыКоманды, "ДополнительнаяОбработкаСсылка"), + Тип("СправочникСсылка.ДополнительныеОтчетыИОбработки")); + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр(ИмяПроцедуры, "Обработчик", + Обработчик, + Новый ОписаниеТипов("ОписаниеОповещения, УправляемаяФорма")); ПараметрыКоманды.Вставить("ИдентификаторКоманды", ИдентификаторКоманды); + ПолучатьРезультат = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыКоманды, "ПолучатьРезультат", Ложь); - ПараметрыФормы = Новый Структура("ПараметрыЗапускаФоновогоЗадания", ПараметрыКоманды); + Форма = Неопределено; + Если ПараметрыКоманды.Свойство("ФормаВладелец", Форма) Тогда + ПараметрыКоманды.ФормаВладелец = Неопределено; + КонецЕсли; + Если ТипЗнч(Обработчик) = Тип("ОписаниеОповещения") Тогда + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр(ИмяПроцедуры, "Обработчик.Модуль", + Обработчик.Модуль, + Тип("УправляемаяФорма")); + Форма = ?(Форма <> Неопределено, Форма, Обработчик.Модуль); + Иначе + Форма = Обработчик; + Обработчик = Неопределено; + ПолучатьРезультат = Истина; + КонецЕсли; - ОткрытьФорму(ИмяФормыДлительнойОперации(), ПараметрыФормы, Форма); + Задание = ДополнительныеОтчетыИОбработкиВызовСервера.ЗапуститьДлительнуюОперацию(Форма.УникальныйИдентификатор, ПараметрыКоманды); + + СопровождающийТекст = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыКоманды, "СопровождающийТекст", ""); + Заголовок = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыКоманды, "Заголовок"); + Если ЗначениеЗаполнено(Заголовок) Тогда + СопровождающийТекст = СокрЛП(Заголовок + Символы.ПС + СопровождающийТекст); + КонецЕсли; + Если Не ЗначениеЗаполнено(СопровождающийТекст) Тогда + СопровождающийТекст = НСтр("ru = 'Команда выполняется.'"); + КонецЕсли; + + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(Форма); + НастройкиОжидания.ТекстСообщения = СопровождающийТекст; + НастройкиОжидания.ВыводитьОкноОжидания = Истина; + НастройкиОжидания.ПолучатьРезультат = ПолучатьРезультат; + НастройкиОжидания.ВыводитьСообщения = Истина; + + ДлительныеОперацииКлиент.ОжидатьЗавершение(Задание, Обработчик, НастройкиОжидания); КонецПроцедуры // Возвращает имя формы для идентификации результата выполнения длительной операции. // // Возвращаемое значение: -// Строка - См. ВыполнитьКомандуВФоне(). +// Строка - См. ВыполнитьКомандуВФоне. // Функция ИмяФормыДлительнойОперации() Экспорт - Возврат "ОбщаяФорма.ДлительнаяОперацияДополнительныхОтчетовИОбработок"; + Возврат "ОбщаяФорма.ДлительнаяОперация"; КонецФункции @@ -211,34 +229,30 @@ Возврат Истина; // Для выполнения команды достаточно клиентского контекста. КонецФункции -// Отображает результат выполнения команды. -// -// Параметры: -// Форма - УправляемаяФорма - Форма, для которой требуется вывод. -// РезультатВыполнения - Структура - Результат выполнения операции, который необходимо показать на клиенте. -// Подробнее см. СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(). +#Область УстаревшиеПроцедурыИФункции + +// Устарела. Отображает результат выполнения команды. // Процедура ПоказатьРезультатВыполненияКоманды(Форма, РезультатВыполнения) Экспорт - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(Форма, РезультатВыполнения); - КонецПроцедуры #КонецОбласти +#КонецОбласти + #Область СлужебныйПрограммныйИнтерфейс //////////////////////////////////////////////////////////////////////////////// // Обработчики условных вызовов. // Открывает форму подбора дополнительных отчетов. +// Места использования: +// Справочник.РассылкиОтчетов.Форма.ФормаЭлемента.ДобавитьДополнительныйОтчет. // // Параметры: // ЭлементФормы - Произвольный - Элемент формы, в который выполняется подбор элементов. // -// Места использования: -// Справочник.РассылкиОтчетов.Форма.ФормаЭлемента.ДобавитьДополнительныйОтчет(). -// Процедура РассылкаОтчетовПодборДопОтчета(ЭлементФормы) Экспорт ДополнительныйОтчет = ПредопределенноеЗначение("Перечисление.ВидыДополнительныхОтчетовИОбработок.ДополнительныйОтчет"); @@ -313,7 +327,7 @@ КонецЕсли; #Если ТолстыйКлиентОбычноеПриложение Тогда - ВнешняяОбработка = ДополнительныеОтчетыИОбработкиВызовСервера.ПолучитьОбъектВнешнейОбработки(ВыполняемаяКоманда.Ссылка); + ВнешняяОбработка = ДополнительныеОтчетыИОбработкиВызовСервера.ОбъектВнешнейОбработки(ВыполняемаяКоманда.Ссылка); ФормаОбработки = ВнешняяОбработка.ПолучитьФорму(, Форма); Если ФормаОбработки = Неопределено Тогда ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( @@ -328,9 +342,9 @@ #Иначе ИмяОбработки = ДополнительныеОтчетыИОбработкиВызовСервера.ПодключитьВнешнююОбработку(ВыполняемаяКоманда.Ссылка); Если ВыполняемаяКоманда.ЭтоОтчет Тогда - ОткрытьФорму("ВнешнийОтчет."+ ИмяОбработки +".Форма", ПараметрыОбработки, Форма); + ОткрытьФорму("ВнешнийОтчет." + ИмяОбработки + ".Форма", ПараметрыОбработки, Форма); Иначе - ОткрытьФорму("ВнешняяОбработка."+ ИмяОбработки +".Форма", ПараметрыОбработки, Форма); + ОткрытьФорму("ВнешняяОбработка." + ИмяОбработки + ".Форма", ПараметрыОбработки, Форма); КонецЕсли; #КонецЕсли КонецПроцедуры @@ -350,7 +364,7 @@ КонецЕсли; #Если ТолстыйКлиентОбычноеПриложение Тогда - ВнешняяОбработка = ДополнительныеОтчетыИОбработкиВызовСервера.ПолучитьОбъектВнешнейОбработки(ВыполняемаяКоманда.Ссылка); + ВнешняяОбработка = ДополнительныеОтчетыИОбработкиВызовСервера.ОбъектВнешнейОбработки(ВыполняемаяКоманда.Ссылка); ФормаОбработки = ВнешняяОбработка.ПолучитьФорму(, Форма); Если ФормаОбработки = Неопределено Тогда ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( @@ -465,7 +479,8 @@ Процедура ВыполнитьНазначаемуюКомандуНаКлиентеЗавершение(Ответ, ДополнительныеПараметры) Экспорт Форма = ДополнительныеПараметры.Форма; Если Ответ = КодВозвратаДиалога.Да Тогда - Если НЕ Форма.Записать() Тогда + ОчиститьСообщения(); + Если Не Форма.Записать() Тогда Возврат; КонецЕсли; ИначеЕсли Ответ <> -1 Тогда @@ -508,31 +523,13 @@ ИначеЕсли ВыполняемаяКоманда.ВариантЗапуска = ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.ВызовСерверногоМетода") Или ВыполняемаяКоманда.ВариантЗапуска = ПредопределенноеЗначение("Перечисление.СпособыВызоваДополнительныхОбработок.СценарийВБезопасномРежиме") Тогда - ПараметрыВызоваСервера.Вставить("РезультатВыполнения", СтандартныеПодсистемыКлиентСервер.ОписаниеРезультатаВыполнения()); + ПараметрыВызоваСервера.Вставить("РезультатВыполнения", Новый Структура); ДополнительныеОтчетыИОбработкиВызовСервера.ВыполнитьКоманду(ПараметрыВызоваСервера, Неопределено); Форма.Прочитать(); - ПоказатьРезультатВыполненияКоманды(Форма, ПараметрыВызоваСервера.РезультатВыполнения); КонецЕсли; КонецПроцедуры -// Для редактирования текста в реквизитах таблиц. -Процедура РедактироватьМногострочныйТекст(ФормаИлиОбработчик, ТекстРедактирования, ВладелецРеквизита, ИмяРеквизита, Знач Заголовок = "") Экспорт - - Если ПустаяСтрока(Заголовок) Тогда - Заголовок = НСтр("ru = 'Комментарий'"); - КонецЕсли; - - ПараметрыИсточника = Новый Структура; - ПараметрыИсточника.Вставить("ФормаИлиОбработчик", ФормаИлиОбработчик); - ПараметрыИсточника.Вставить("ВладелецРеквизита", ВладелецРеквизита); - ПараметрыИсточника.Вставить("ИмяРеквизита", ИмяРеквизита); - Обработчик = Новый ОписаниеОповещения("РедактироватьМногострочныйТекстЗавершение", ЭтотОбъект, ПараметрыИсточника); - - ПоказатьВводСтроки(Обработчик, ТекстРедактирования, Заголовок, , Истина); - -КонецПроцедуры - // Показывает диалог установки расширения, затем выгружает данные дополнительного отчета или обработки. Процедура ВыгрузитьВФайл(ПараметрыВыгрузки) Экспорт ТекстСообщения = НСтр("ru = 'Для выгрузки внешней обработки (отчета) в файл рекомендуется установить расширение для веб-клиента 1С:Предприятие.'"); @@ -543,43 +540,6 @@ //////////////////////////////////////////////////////////////////////////////// // Служебные обработчики асинхронных диалогов. -// Обработчик результата работы процедуры РедактироватьМногострочныйТекст. -Процедура РедактироватьМногострочныйТекстЗавершение(Текст, ПараметрыИсточника) Экспорт - - Если ТипЗнч(ПараметрыИсточника.ФормаИлиОбработчик) = Тип("УправляемаяФорма") Тогда - Форма = ПараметрыИсточника.ФормаИлиОбработчик; - Обработчик = Неопределено; - Иначе - Форма = Неопределено; - Обработчик = ПараметрыИсточника.ФормаИлиОбработчик; - КонецЕсли; - - Если Текст <> Неопределено Тогда - - Если ТипЗнч(ПараметрыИсточника.ВладелецРеквизита) = Тип("ДанныеФормыЭлементДерева") - Или ТипЗнч(ПараметрыИсточника.ВладелецРеквизита) = Тип("ДанныеФормыЭлементКоллекции") Тогда - ЗаполнитьЗначенияСвойств(ПараметрыИсточника.ВладелецРеквизита, Новый Структура(ПараметрыИсточника.ИмяРеквизита, Текст)); - Иначе - ПараметрыИсточника.ВладелецРеквизита[ПараметрыИсточника.ИмяРеквизита] = Текст; - КонецЕсли; - - Если Форма <> Неопределено Тогда - Если Не Форма.Модифицированность Тогда - Форма.Модифицированность = Истина; - КонецЕсли; - #Если ВебКлиент Тогда - Форма.ОбновитьОтображениеДанных(); // Для платформы. - #КонецЕсли - КонецЕсли; - - КонецЕсли; - - Если Обработчик <> Неопределено Тогда - ВыполнитьОбработкуОповещения(Обработчик, Текст); - КонецЕсли; - -КонецПроцедуры - // Обработчик результата работы процедуры ВыгрузитьВФайл. Процедура ВыгрузитьВФайлЗавершение(Подключено, ПараметрыВыгрузки) Экспорт Перем Адрес; diff --git a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиКлиентСервер/Module.bsl b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиКлиентСервер/Module.bsl index 5afaddeb8..a768895ed 100644 --- a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиКлиентСервер/Module.bsl @@ -29,6 +29,13 @@ КонецФункции +// Создание связанных объектов. +Функция ВидОбработкиШаблонСообщения() Экспорт + + Возврат "ШаблонСообщения"; // Внутренний идентификатор. + +КонецФункции + // Назначаемый отчет. Функция ВидОбработкиОтчет() Экспорт @@ -120,6 +127,22 @@ // // Реализация логики команды. // КонецПроцедуры // +// Для обработок создания связанных объектов (Вид = "ШаблонСообщения"): +// // Обработчик серверных команд. +// // +// // Параметры: +// // ИдентификаторКоманды - Строка - Имя команды, определенное в функции СведенияОВнешнейОбработке(). +// // ОбъектыНазначения - Массив - Ссылки объектов, для которых вызвана команда. +// // СозданныеОбъекты - Массив - Ссылки новых объектов, созданных в результате выполнения команды. +// // ПараметрыВыполнения - Структура - Контекст выполнения команды. +// // * ДополнительнаяОбработкаСсылка - СправочникСсылка.ДополнительныеОтчетыИОбработки - Ссылка обработки. +// // Может использоваться для чтения параметров обработки. +// // Пример см. в комментарии к функции ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы(). +// // +// Процедура ВыполнитьКоманду(ИдентификаторКоманды, ОбъектыНазначения, СозданныеОбъекты, ПараметрыВыполнения) Экспорт +// // Реализация логики команды. +// КонецПроцедуры +// // Для обработок заполнения (Вид = "ЗаполнениеОбъекта"): // // Обработчик серверных команд. // // diff --git a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиПовтИсп/Module.bsl b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиПовтИсп/Module.bsl index 7f7ea0e16..c69525fce 100644 --- a/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/ДополнительныеОтчетыИОбработкиПовтИсп/Module.bsl @@ -24,25 +24,6 @@ КонецФункции -// Вид публикации, который должен использоваться для конфликтующих дополнительных отчетов и обработок. -// -// Возвращаемое значение: -// ПеречислениеСсылка.ВариантыПубликацииДополнительныхОтчетовИОбработок. -// -Функция ВидПубликацииДляКонфликтующихОбработок() Экспорт - - ВидОтключена = Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.Отключена; - ВидРежимОтладки = Перечисления.ВариантыПубликацииДополнительныхОтчетовИОбработок.РежимОтладки; - - ДоступныеВиды = ДоступныеВидыПубликации(); - Если ДоступныеВиды.Найти(ВидРежимОтладки) Тогда - Возврат ВидРежимОтладки; - Иначе - Возврат ВидОтключена; - КонецЕсли; - -КонецФункции - // Настройки для формы назначаемого объекта. Функция ПараметрыФормыНазначаемогоОбъекта(ПолноеИмяФормы, ТипФормы = Неопределено) Экспорт Если НЕ ПравоДоступа("Чтение", Метаданные.Справочники.ДополнительныеОтчетыИОбработки) Тогда @@ -76,7 +57,9 @@ Результат.ЭтоФормаОбъекта = (РодительМетаданные.ОсновнаяФормаОбъекта = ФормаМетаданные); КонецЕсли; Иначе - Результат.ЭтоФормаОбъекта = (РодительМетаданные.ОсновнаяФормаОбъекта = ФормаМетаданные); + Коллекция = Новый Структура("ОсновнаяФормаОбъекта"); + ЗаполнитьЗначенияСвойств(Коллекция, РодительМетаданные); + Результат.ЭтоФормаОбъекта = (Коллекция.ОсновнаяФормаОбъекта = ФормаМетаданные); КонецЕсли; Если Результат.ЭтоФормаОбъекта Тогда // Форма объекта diff --git a/SSL/src/CommonModules/ЖурналРегистрации/Module.bsl b/SSL/src/CommonModules/ЖурналРегистрации/Module.bsl index dcb97fef6..6a17488fe 100644 --- a/SSL/src/CommonModules/ЖурналРегистрации/Module.bsl +++ b/SSL/src/CommonModules/ЖурналРегистрации/Module.bsl @@ -77,18 +77,22 @@ Если ДатыОтбораУказаны И ДатаНачала > ДатаОкончания Тогда ВызватьИсключение НСтр("ru = 'Некорректно заданы условия отбора журнала регистрации. Дата начала больше даты окончания.'"); КонецЕсли; + СмещениеВремениСервера = СмещениеВремениСервера(); // Подготовка отбора Отбор = Новый Структура; Для Каждого ЭлементОтбора Из ОтборЖурналаНаКлиенте Цикл Отбор.Вставить(ЭлементОтбора.Ключ, ЭлементОтбора.Значение); КонецЦикла; - ПреобразованиеОтбора(Отбор); + ПреобразованиеОтбора(Отбор, СмещениеВремениСервера); // Выгрузка отбираемых событий и формирование структуры таблицы. СобытияЖурнала = Новый ТаблицаЗначений; ВыгрузитьЖурналРегистрации(СобытияЖурнала, Отбор, , , КоличествоСобытий); + СобытияЖурнала.Колонки.Дата.Имя = "ДатаНаСервере"; + СобытияЖурнала.Колонки.Добавить("Дата", Новый ОписаниеТипов("Дата")); + СобытияЖурнала.Колонки.Добавить("НомерРисунка", Новый ОписаниеТипов("Число")); СобытияЖурнала.Колонки.Добавить("АдресДанных", Новый ОписаниеТипов("Строка")); @@ -103,7 +107,7 @@ Если ОбщегоНазначенияПовтИсп.РазделениеВключено() И ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() - И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.БазоваяФункциональностьВМоделиСервиса") Тогда МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса"); ПсевдонимыПользователей = Новый Соответствие(); @@ -113,6 +117,8 @@ КонецЕсли; Для Каждого СобытиеЖурнала Из СобытияЖурнала Цикл + СобытиеЖурнала.Дата = СобытиеЖурнала.ДатаНаСервере - СмещениеВремениСервера; + // Заполнение номеров картинок строк. МенеджерВладельца.УстановитьНомерРисунка(СобытиеЖурнала); @@ -348,6 +354,23 @@ КонецПроцедуры +// Определяет смещение времени сервера относительно времени программы. +// +// Возвращаемое значение: +// Число - Смещение времени в секундах. +// Может использоваться для приведения фильтров, применяемых к журналу, к дате сервера, +// а также для приведения дат, полученных из журнала, к датам программы. +// +Функция СмещениеВремениСервера() Экспорт + + СмещениеВремениСервера = ТекущаяДата() - ТекущаяДатаСеанса(); + Если СмещениеВремениСервера >= -1 И СмещениеВремениСервера <= 1 Тогда + СмещениеВремениСервера = 0; + КонецЕсли; + Возврат СмещениеВремениСервера; + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -357,7 +380,7 @@ // Параметры: // Отбор - отбор - передаваемый отбор. // -Процедура ПреобразованиеОтбора(Отбор) +Процедура ПреобразованиеОтбора(Отбор, СмещениеВремениСервера) Для Каждого ЭлементОтбора Из Отбор Цикл Если ТипЗнч(ЭлементОтбора.Значение) = Тип("СписокЗначений") Тогда @@ -366,6 +389,9 @@ Если СтрНайти(ЭлементОтбора.Значение, "(") = 0 Тогда Отбор.Вставить(ЭлементОтбора.Ключ, "(" + ЭлементОтбора.Значение); КонецЕсли; + ИначеЕсли СмещениеВремениСервера <> 0 + И (ВРег(ЭлементОтбора.Ключ) = ВРег("ДатаНачала") Или ВРег(ЭлементОтбора.Ключ) = ВРег("ДатаОкончания")) Тогда + Отбор.Вставить(ЭлементОтбора.Ключ, ЭлементОтбора.Значение + СмещениеВремениСервера); КонецЕсли; КонецЦикла; diff --git a/SSL/src/CommonModules/ЗагрузкаДанныхИзФайла/Module.bsl b/SSL/src/CommonModules/ЗагрузкаДанныхИзФайла/Module.bsl index 93c841c3a..275c4ce0a 100644 --- a/SSL/src/CommonModules/ЗагрузкаДанныхИзФайла/Module.bsl +++ b/SSL/src/CommonModules/ЗагрузкаДанныхИзФайла/Module.bsl @@ -1,10 +1,10 @@ #Область ПрограммныйИнтерфейс -// Функция - Заполнить описание колонок +// Функция - Заполнить описание колонок. // // Параметры: -// Таблица - Строка, ТаблицаЗначений - Для типа строка, Полное имя табличной части, как в метаданных +// Таблица - Строка, ТаблицаЗначений - Для типа строка, Полное имя табличной части, как в метаданных. // Колонки - Строка - Список извлекаемых колонок, разделенный запятыми. // // Возвращаемое значение: diff --git a/SSL/src/CommonModules/ЗагрузкаДанныхИзФайлаКлиент/Module.bsl b/SSL/src/CommonModules/ЗагрузкаДанныхИзФайлаКлиент/Module.bsl index ceb972fa2..ca864ce7a 100644 --- a/SSL/src/CommonModules/ЗагрузкаДанныхИзФайлаКлиент/Module.bsl +++ b/SSL/src/CommonModules/ЗагрузкаДанныхИзФайлаКлиент/Module.bsl @@ -61,7 +61,7 @@ #Область СлужебныеПроцедурыИФункции -// Открывает диалог загрузки файла +// Открывает диалог загрузки файла. // // Параметры: // ОповещениеЗавершения - ОписаниеОповещения - вызывается после успешного помещения файла. diff --git a/SSL/src/CommonModules/ЗагрузкаДанныхИзФайлаКлиентСервер/Module.bsl b/SSL/src/CommonModules/ЗагрузкаДанныхИзФайлаКлиентСервер/Module.bsl index 9e69365cd..7d0331212 100644 --- a/SSL/src/CommonModules/ЗагрузкаДанныхИзФайлаКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/ЗагрузкаДанныхИзФайлаКлиентСервер/Module.bsl @@ -1,17 +1,17 @@ #Область ПрограммныйИнтерфейс -// Создает структуру описания колонок для макета загрузки данных из файла +// Создает структуру описания колонок для макета загрузки данных из файла. // // Возвращаемое значение: -// Структура - Структура с описание колонки -// * Имя - Строка - Имя колонки -// * Тип - ОписаниеТипов - Тип колонки -// * Заголовок - Строка - Заголовок колонки выводимый в бланке для загрузки -// * Ширина - Число - Ширина колонки +// Структура - Структура с описание колонки. +// * Имя - Строка - Имя колонки. +// * Тип - ОписаниеТипов - Тип колонки. +// * Заголовок - Строка - Заголовок колонки выводимый в бланке для загрузки. +// * Ширина - Число - Ширина колонки. // * Подсказка - Строка - Подсказка выводимая в заголовке колонки. -// * ОбязательнаяДляЗаполнения - Булево - Истина, если колонка обязательно должна содержать значения -// * Группа - Строка - Имя группы колонок +// * ОбязательнаяДляЗаполнения - Булево - Истина, если колонка обязательно должна содержать значения. +// * Группа - Строка - Имя группы колонок. // * Родитель - Строка - Используется для связи динамической колонки с реквизитом табличной части объекта. // Функция ОписаниеКолонкиМакета(Имя, Тип, Заголовок = Неопределено, Ширина = 0, Подсказка = "") Экспорт @@ -28,14 +28,14 @@ КонецФункции -// Возвращает колонку макета по имени +// Возвращает колонку макета по имени. // // Параметры: -// Имя - Строка - Имя колонки +// Имя - Строка - Имя колонки. // СписокКолонок - Массив - Набор колонок макета. // // Возвращаемое значение: -// Структура - Структура с описание колонки. Состав структуры см. в функции ОписаниеКолонкиМакета +// Структура - Структура с описание колонки. Состав структуры см. в функции ОписаниеКолонкиМакета. // Если колонка не найдена, то Неопределено. // Функция КолонкаМакета(Имя, СписокКолонок) Экспорт @@ -48,10 +48,10 @@ Возврат Неопределено; КонецФункции -// Удаляет колонку макета из массива +// Удаляет колонку макета из массива. // // Параметры: -// Имя - Строка - Имя колонки +// Имя - Строка - Имя колонки. // СписокКолонок - Массив - Набор колонок макета. // Процедура УдалитьКолонкуМакета(Имя, СписокКолонок) Экспорт diff --git a/SSL/src/CommonModules/ЗаметкиПользователяСлужебный/Module.bsl b/SSL/src/CommonModules/ЗаметкиПользователяСлужебный/Module.bsl index 54e583164..81c606193 100644 --- a/SSL/src/CommonModules/ЗаметкиПользователяСлужебный/Module.bsl +++ b/SSL/src/CommonModules/ЗаметкиПользователяСлужебный/Module.bsl @@ -20,6 +20,9 @@ "ЗаметкиПользователяСлужебный"); КонецЕсли; + СерверныеОбработчики["СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПереименованийОбъектовМетаданных"].Добавить( + "ЗаметкиПользователяСлужебный"); + КонецПроцедуры // Определить объекты метаданных, в модулях менеджеров которых ограничивается возможность @@ -38,6 +41,23 @@ Объекты.Вставить(Метаданные.Справочники.Заметки.ПолноеИмя(), "РеквизитыРедактируемыеВГрупповойОбработке"); КонецПроцедуры +// Заполняет переименования тех объектов метаданных, которые невозможно +// автоматически найти по типу, но ссылки на которые требуется сохранять +// в базе данных (например: подсистемы, роли). +// +// См. также: +// ОбщегоНазначения.ДобавитьПереименование(). +// +Процедура ПриДобавленииПереименованийОбъектовМетаданных(Итог) Экспорт + + Библиотека = "СтандартныеПодсистемы"; + + СтароеИмя = "Роль.ИспользованиеЗаметок"; + НовоеИмя = "Роль.ДобавлениеИзменениеЗаметок"; + ОбщегоНазначения.ДобавитьПереименование(Итог, "2.3.3.11", СтароеИмя, НовоеИмя, Библиотека); + +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git a/SSL/src/CommonModules/ЗаполнениеОбъектов/Module.bsl b/SSL/src/CommonModules/ЗаполнениеОбъектов/Module.bsl new file mode 100644 index 000000000..0c97de8ac --- /dev/null +++ b/SSL/src/CommonModules/ЗаполнениеОбъектов/Module.bsl @@ -0,0 +1,95 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Заполнение объектов" (сервер). +// Обслуживает команды заполнения. +//////////////////////////////////////////////////////////////////////////////// + +#Область СлужебныйПрограммныйИнтерфейс + +//////////////////////////////////////////////////////////////////////////////// +// Обработчики условных вызовов. + +// См. описание этой же процедуры в модуле ИнтеграцияСтандартныхПодсистем. +Процедура ПриОпределенииСтруктурыНастроекПодключаемыхОбъектов(СтруктураНастроек) Экспорт + СтруктураНастроек.Вставить("ДобавитьКомандыЗаполнения", Новый ОписаниеТипов("Булево")); +КонецПроцедуры + +// См. описание этой же процедуры в модуле ИнтеграцияСтандартныхПодсистем. +Процедура ПриОпределенииИспользуемыхПодменю(Форма, ИспользуемыеПодменю) Экспорт + Если Форма.Элементы.Найти("ПодменюЗаполнить") <> Неопределено Тогда + ИспользуемыеПодменю.Добавить("ПодменюЗаполнить"); + КонецЕсли; + Если Форма.Элементы.Найти("ПодменюЗаполнитьОбычное") <> Неопределено Тогда + ИспользуемыеПодменю.Добавить("ПодменюЗаполнитьОбычное"); + КонецЕсли; +КонецПроцедуры + +// Формирование списка команд, подключенных к форме. +// Событие возникает в процессе вызова модуля повторного использования. +// Подробнее - см. описание этой же процедуры в модуле ИнтеграцияСтандартныхПодсистем. +// +// Параметры: +// НастройкиФормы - Структура - Сведения о форме, в которой выводятся команды. Для чтения. +// * ИмяФормы - Строка - Полное имя формы, в которой выводятся подключаемые команды. +// * ИспользуемыеПодменю - Массив из Строк - Имена групп формы, которые используются в этой форме. +// НастройкиОбъекта - Структура - Сведения о родительском объекте, к которому принадлежит форма. Для чтения. +// Состав полей см. в ПодключаемыеКоманды.НастройкиОбъекта(). +// НастройкиРасширений - ТаблицаЗначений - Настройки расширений, подключенных к этому объекту метаданных. Для чтения. +// * ПолноеИмя - Строка - Полное имя объекта расширения. +// * Менеджер - Произвольный - Модуль менеджера объекта расширения. +// Состав колонок определяется в процедуре ПриОпределенииИменИТиповНастроекПоставщиков. +// Команды - ТаблицаЗначений - Таблица команд для вывода в подменю. Для изменения. +// Состав колонок см. в ПодключаемыеКоманды.ТаблицаКоманд(). +// +Процедура ПриОпределенииКомандПодключенныхКОбъекту(НастройкиФормы, НастройкиОбъекта, НастройкиРасширений, Команды) Экспорт + Если Не ПравоДоступа("Изменение", НастройкиОбъекта.Метаданные) Тогда + Возврат; + КонецЕсли; + КомандыЗаполнения = Команды.СкопироватьКолонки(); + + ЕстьПодменюОбычное = НастройкиФормы.ИспользуемыеПодменю.Найти("ПодменюЗаполнитьОбычное") <> Неопределено; + ЕстьПодменюЗаполнить = НастройкиФормы.ИспользуемыеПодменю.Найти("ПодменюЗаполнить") <> Неопределено; + ГруппаПоУмолчанию = ?(ЕстьПодменюОбычное, "ПодменюЗаполнитьОбычное", ?(ЕстьПодменюЗаполнить, "ПодменюЗаполнить", "")); + СтандартнаяОбработка = ЗначениеЗаполнено(ГруппаПоУмолчанию) И НастройкиОбъекта.Менеджер <> Неопределено; + + ЗаполнениеОбъектовПереопределяемый.ПередДобавлениемКомандЗаполнения(КомандыЗаполнения, НастройкиОбъекта, СтандартнаяОбработка); + + Если СтандартнаяОбработка Тогда + НастройкиОбъекта.Менеджер.ДобавитьКомандыЗаполнения(КомандыЗаполнения, НастройкиОбъекта); + ДобавленныеКоманды = КомандыЗаполнения.НайтиСтроки(Новый Структура("Менеджер", "")); + Для Каждого КомандаЗаполнения Из ДобавленныеКоманды Цикл + КомандаЗаполнения.Менеджер = НастройкиОбъекта.ПолноеИмя; + КонецЦикла; + КонецЕсли; + + РасширенияЗаполнения = НастройкиРасширений.НайтиСтроки(Новый Структура("ДобавитьКомандыЗаполнения", Истина)); + Для Каждого Расширение Из РасширенияЗаполнения Цикл + Расширение.Менеджер.ДобавитьКомандыЗаполнения(КомандыЗаполнения, НастройкиОбъекта); + ДобавленныеКоманды = КомандыЗаполнения.НайтиСтроки(Новый Структура("Менеджер", "")); + Для Каждого КомандаЗаполнения Из ДобавленныеКоманды Цикл + КомандаЗаполнения.Менеджер = Расширение.ПолноеИмя; + КонецЦикла; + КонецЦикла; + + Если КомандыЗаполнения.Количество() = 0 Тогда + Возврат; + КонецЕсли; + + Для Каждого КомандаЗаполнения Из КомандыЗаполнения Цикл + Команда = Команды.Добавить(); + ЗаполнитьЗначенияСвойств(Команда, КомандаЗаполнения); + Если Команда.Порядок = 0 Тогда + Команда.Порядок = 50; + КонецЕсли; + Если ПустаяСтрока(Команда.Группа) Или (Команда.Группа = "ПодменюЗаполнить" И ЕстьПодменюОбычное) Тогда + Команда.Группа = ГруппаПоУмолчанию; + КонецЕсли; + Если Команда.РежимЗаписи = "" Тогда + Команда.РежимЗаписи = "Записывать"; + КонецЕсли; + Если Команда.МножественныйВыбор = Неопределено Тогда + Команда.МножественныйВыбор = Истина; + КонецЕсли; + КонецЦикла; +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/CommonModules/ОрганизацииСлужебный/ОрганизацииСлужебный.mdo b/SSL/src/CommonModules/ЗаполнениеОбъектов/ЗаполнениеОбъектов.mdo similarity index 63% rename from SSL/src/CommonModules/ОрганизацииСлужебный/ОрганизацииСлужебный.mdo rename to SSL/src/CommonModules/ЗаполнениеОбъектов/ЗаполнениеОбъектов.mdo index a28b29512..46d37cfaf 100644 --- a/SSL/src/CommonModules/ОрганизацииСлужебный/ОрганизацииСлужебный.mdo +++ b/SSL/src/CommonModules/ЗаполнениеОбъектов/ЗаполнениеОбъектов.mdo @@ -1,9 +1,9 @@ <?xml version="1.0" encoding="UTF-8"?> -<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="0a646724-b49d-42cd-82e6-e800466ed127"> - <name>ОрганизацииСлужебный</name> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="f41e5a5b-394b-423a-bee5-ed4d1da0be71"> + <name>ЗаполнениеОбъектов</name> <synonym> <key>ru</key> - <value>Организации служебный</value> + <value>Заполнение объектов</value> </synonym> <server>true</server> <externalConnection>true</externalConnection> diff --git a/SSL/src/CommonModules/ЗаполнениеОбъектовПереопределяемый/Module.bsl b/SSL/src/CommonModules/ЗаполнениеОбъектовПереопределяемый/Module.bsl new file mode 100644 index 000000000..87b41d515 --- /dev/null +++ b/SSL/src/CommonModules/ЗаполнениеОбъектовПереопределяемый/Module.bsl @@ -0,0 +1,75 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Заполнение объектов" (сервер, переопределяемый). +// Обслуживает команды заполнения. +// Выполняется на сервере, изменяется под специфику прикладной конфигурации, +// но предназначен для использования только данной подсистемой. +//////////////////////////////////////////////////////////////////////////////// + +#Область ПрограммныйИнтерфейс + +// Определение списка глобальных команд заполнения. +// Событие возникает в процессе вызова модуля повторного использования. +// +// Параметры: +// КомандыЗаполнения - ТаблицаЗначений - Таблица команд для вывода в подменю. Для изменения. +// +// Общие настройки: +// * Идентификатор - Строка - Идентификатор команды. +// +// Настройки внешнего вида: +// * Представление - Строка - Представление команды в форме. +// * Группа - Строка - Имя группы в командной панели, в которой будет выводиться эта команда. +// * Порядок - Число - Порядок размещения команды в подменю. Используется для настройки под конкретное рабочее место. +// * Картинка - Картинка - Картинка команды. Необязательный. +// +// Настройки видимости: +// * ТипПараметра - ОписаниеТипов - Типы объектов, для которых предназначена эта команда. +// * ВидимостьВФормах - Строка - Имена форм через запятую, в которых должна отображаться команда. +// Используется когда состав команд отличается для различных форм. +// * ФункциональныеОпции - Строка - Имена функциональных опций через запятую, определяющих видимость команды. +// +// Настройки процесса выполнения: +// * ИмяСписка - Строка - Имя таблицы формы, связанной с динамическим списком, для которого выводится команда. +// Используется когда в форме несколько списков и команда предназначена для второстепенного списка. +// * МножественныйВыбор - Булево, Неопределено - Если Истина, то команда поддерживает множественный выбор. +// В этом случае в параметре выполнения будет передан список ссылок. +// Необязательный. Значение по умолчанию: Истина. +// * РежимЗаписи - Строка - Действия, связанные с записью объекта, которые выполняются перед обработчиком команды. +// ** "НеЗаписывать" - Объект не записывается, а в параметрах обработчика вместо ссылок передается вся форма. +// В этом режиме рекомендуется работать напрямую с формой, +// которая передается в структуре 2 параметра обработчика команды. +// ** "ЗаписыватьТолькоНовые" - Записывать новые объекты. +// ** "Записывать" - Записывать новые и модифицированные объекты. +// ** "Проводить" - Проводить документы. +// Перед записью и проведением у пользователя запрашивается подтверждение. +// Необязательный. Значение по умолчанию: "Записывать". +// * ТребуетсяРаботаСФайлами - Булево - Если Истина, то в веб-клиенте предлагается +// установить расширение работы с файлами. +// Необязательный. Значение по умолчанию: Ложь. +// +// Настройки обработчика: +// * Менеджер - Строка - Объект, отвечающий за выполнение команды. +// * ИмяФормы - Строка - Имя формы, которую требуется получить для выполнения команды. +// Если Обработчик не указан, то у формы вызывается метод "Открыть". +// * ПараметрыФормы - Неопределено, ФиксированнаяСтруктура - Необязательный. Параметры формы, указанной в ИмяФормы. +// * Обработчик - Строка - Описание процедуры, обрабатывающей основное действие команды. +// Формат "<ИмяОбщегоМодуля>.<ИмяПроцедуры>" используется когда процедура размещена в общем модуле. +// Формат "<ИмяПроцедуры>" используется в следующих случаях: +// - Если ИмяФормы заполнено то в модуле указанной формы ожидается клиентская процедура. +// - Если ИмяФормы не заполнено то в модуле менеджера этого объекта ожидается серверная процедура. +// * ДополнительныеПараметры - Неопределено, ФиксированнаяСтруктура - Необязательный. Параметры обработчика, указанного в Обработчик. +// +// Параметры - Структура - Сведения о родительском объекте, к которому принадлежит форма и прочие параметры. Для чтения. +// * Метаданные - ОбъектМетаданных - Метаданные объекта. +// * ПолноеИмя - Строка - Полное имя объекта. Например: "Документ.ИмяДокумента". +// * Менеджер - Произвольный - Модуль менеджера объекта. +// * Ссылка - СправочникСсылка.ИдентификаторыОбъектовМетаданных - Ссылка объекта. +// * ЭтоЖурналДокументов - Булево - Истина если объект является журналом документов. +// +// СтандартнаяОбработка - Булево - Если установить в Ложь, то событие "ДобавитьКомандыЗаполнения" менеджера объекта не будет вызвано. +// +Процедура ПередДобавлениемКомандЗаполнения(КомандыЗаполнения, Параметры, СтандартнаяОбработка) Экспорт + +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/CommonModules/ОбновлениеКонфигурацииПереопределяемый/ОбновлениеКонфигурацииПереопределяемый.mdo b/SSL/src/CommonModules/ЗаполнениеОбъектовПереопределяемый/ЗаполнениеОбъектовПереопределяемый.mdo similarity index 55% rename from SSL/src/CommonModules/ОбновлениеКонфигурацииПереопределяемый/ОбновлениеКонфигурацииПереопределяемый.mdo rename to SSL/src/CommonModules/ЗаполнениеОбъектовПереопределяемый/ЗаполнениеОбъектовПереопределяемый.mdo index 1145196f1..55cb0f759 100644 --- a/SSL/src/CommonModules/ОбновлениеКонфигурацииПереопределяемый/ОбновлениеКонфигурацииПереопределяемый.mdo +++ b/SSL/src/CommonModules/ЗаполнениеОбъектовПереопределяемый/ЗаполнениеОбъектовПереопределяемый.mdo @@ -1,9 +1,9 @@ <?xml version="1.0" encoding="UTF-8"?> -<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="da673406-078d-44c8-9d27-80ef172c4b5e"> - <name>ОбновлениеКонфигурацииПереопределяемый</name> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="23db175f-ddfb-4af7-9c0c-232b6adb7daf"> + <name>ЗаполнениеОбъектовПереопределяемый</name> <synonym> <key>ru</key> - <value>Обновление конфигурации переопределяемый</value> + <value>Заполнение объектов переопределяемый</value> </synonym> <server>true</server> <externalConnection>true</externalConnection> diff --git a/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектов/Module.bsl b/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектов/Module.bsl index 8d7717249..713565ca6 100644 --- a/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектов/Module.bsl +++ b/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектов/Module.bsl @@ -49,7 +49,8 @@ ЭлементФормы = Форма.Элементы.Найти(ОписаниеЭлементаФормы.Значение); Если ЭлементФормы <> Неопределено Тогда Если ТипЗнч(ЭлементФормы) = Тип("ПолеФормы") - ИЛИ ТипЗнч(ЭлементФормы) = Тип("ТаблицаФормы") Тогда + И ЭлементФормы.Вид <> ВидПоляФормы.ПолеНадписи + Или ТипЗнч(ЭлементФормы) = Тип("ТаблицаФормы") Тогда ЭлементФормы.ТолькоПросмотр = НЕ ОписаниеБлокируемогоРеквизита.РедактированиеРазрешено; Иначе ЭлементФормы.Доступность = ОписаниеБлокируемогоРеквизита.РедактированиеРазрешено; diff --git a/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектовКлиент/Module.bsl b/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектовКлиент/Module.bsl index cd54bb1da..277a8d6ce 100644 --- a/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектовКлиент/Module.bsl +++ b/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектовКлиент/Module.bsl @@ -80,7 +80,8 @@ ЭлементФормы = Форма.Элементы.Найти(БлокируемыйЭлементФормы.Значение); Если ЭлементФормы <> Неопределено Тогда Если ТипЗнч(ЭлементФормы) = Тип("ПолеФормы") - ИЛИ ТипЗнч(ЭлементФормы) = Тип("ТаблицаФормы") Тогда + И ЭлементФормы.Вид <> ВидПоляФормы.ПолеНадписи + Или ТипЗнч(ЭлементФормы) = Тип("ТаблицаФормы") Тогда ЭлементФормы.ТолькоПросмотр = Ложь; Иначе ЭлементФормы.Доступность = Истина; diff --git a/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектовПереопределяемый/Module.bsl b/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектовПереопределяемый/Module.bsl index 86a7e5d6b..8d11b85aa 100644 --- a/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектовПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектовПереопределяемый/Module.bsl @@ -5,17 +5,32 @@ #Область ПрограммныйИнтерфейс -// Определить объекты метаданных, в модулях менеджеров которых ограничивается возможность редактирования реквизитов -// с помощью экспортной функции ПолучитьБлокируемыеРеквизитыОбъекта. +// Определить объекты метаданных, в модулях менеджеров которых ограничивается возможность +// редактирования реквизитов с помощью экспортной функции ПолучитьБлокируемыеРеквизитыОбъекта. +// +// Функция ПолучитьБлокируемыеРеквизитыОбъекта должна возвращать значение Массив - строки в формате +// ИмяРеквизита[;ИмяЭлементаФормы,...], где ИмяРеквизита - имя реквизита объекта, ИмяЭлементаФормы - +// имя элемента формы, связанного с реквизитом. Например, "Объект.Автор", "ПолеАвтор". +// +// Поле надписи, связанное с реквизитом, не блокируется. Если требуется блокировать, +// имя элемента надписи нужно указать после точки с запятой, как написано выше. // // Параметры: // Объекты - Соответствие - в качестве ключа указать полное имя объекта метаданных, -// подключенного к подсистеме "Запрет редактирования реквизитов объектов"; -// В качестве значения - пустую строку. +// подключенного к подсистеме "Запрет редактирования реквизитов объектов", +// в качестве значения - пустую строку. // -// Пример: +// Пример: // Объекты.Вставить(Метаданные.Документы.ЗаказПокупателя.ПолноеИмя(), ""); // +// При этом в модуле менеджера документа ЗаказПокупателя размещается код: +// // См. ЗапретРедактированияРеквизитовОбъектовПереопределяемый.ПриОпределенииОбъектовСЗаблокированнымиРеквизитами. +// Функция ПолучитьБлокируемыеРеквизитыОбъекта() Экспорт +// БлокируемыеРеквизиты = Новый Массив; +// БлокируемыеРеквизиты.Добавить("Организация"); // заблокировать редактирование реквизита Организация +// Возврат БлокируемыеРеквизиты; +// КонецФункции +// Процедура ПриОпределенииОбъектовСЗаблокированнымиРеквизитами(Объекты) Экспорт diff --git a/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектовСлужебный/Module.bsl b/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектовСлужебный/Module.bsl index be76bba23..2190d06f6 100644 --- a/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектовСлужебный/Module.bsl +++ b/SSL/src/CommonModules/ЗапретРедактированияРеквизитовОбъектовСлужебный/Module.bsl @@ -67,17 +67,29 @@ КонецЦикла; КонецЕсли; - ЗаполнитьСвязанныеЭлементы(ОписаниеРеквизита.БлокируемыеЭлементы, Форма, ОписаниеРеквизита.ИмяРеквизита); - МетаданныеОбъекта = Ссылка.Метаданные(); + ЭтоПланСчетов = ОбщегоНазначения.ЭтоПланСчетов(МетаданныеОбъекта); + ЕстьСтандартныеТабличныеЧасти = ЭтоПланСчетов Или ОбщегоНазначения.ЭтоПланВидовРасчета(МетаданныеОбъекта); + МетаданныеРеквизитаИлиТабличнойЧасти = МетаданныеОбъекта.Реквизиты.Найти(ОписаниеРеквизита.ИмяРеквизита); - СтандартныйРеквизитИлиТабличнаяЧасть = Ложь; + Если МетаданныеРеквизитаИлиТабличнойЧасти = Неопределено И ЭтоПланСчетов Тогда + МетаданныеРеквизитаИлиТабличнойЧасти = МетаданныеОбъекта.ПризнакиУчета.Найти(ОписаниеРеквизита.ИмяРеквизита); + КонецЕсли; + СтандартныйРеквизитИлиСтандартнаяТабличнаяЧасть = Ложь; + Если МетаданныеРеквизитаИлиТабличнойЧасти = Неопределено Тогда МетаданныеРеквизитаИлиТабличнойЧасти = МетаданныеОбъекта.ТабличныеЧасти.Найти(ОписаниеРеквизита.ИмяРеквизита); + + Если МетаданныеРеквизитаИлиТабличнойЧасти = Неопределено + И ЕстьСтандартныеТабличныеЧасти + И ОбщегоНазначения.ЭтоСтандартныйРеквизит(МетаданныеОбъекта.СтандартныеТабличныеЧасти, ОписаниеРеквизита.ИмяРеквизита) Тогда + МетаданныеРеквизитаИлиТабличнойЧасти = МетаданныеОбъекта.СтандартныеТабличныеЧасти[ОписаниеРеквизита.ИмяРеквизита]; + СтандартныйРеквизитИлиСтандартнаяТабличнаяЧасть = Истина; + КонецЕсли; Если МетаданныеРеквизитаИлиТабличнойЧасти = Неопределено Тогда Если ОбщегоНазначения.ЭтоСтандартныйРеквизит(МетаданныеОбъекта.СтандартныеРеквизиты, ОписаниеРеквизита.ИмяРеквизита) Тогда МетаданныеРеквизитаИлиТабличнойЧасти = МетаданныеОбъекта.СтандартныеРеквизиты[ОписаниеРеквизита.ИмяРеквизита]; - СтандартныйРеквизитИлиТабличнаяЧасть = Истина; + СтандартныйРеквизитИлиСтандартнаяТабличнаяЧасть = Истина; КонецЕсли; КонецЕсли; КонецЕсли; @@ -88,12 +100,9 @@ ОписаниеРеквизита.ПравоРедактирования = Истина; ВсеРеквизитыБезПраваРедактирования = Ложь; Иначе - ОписаниеРеквизита.Представление = ?( - ЗначениеЗаполнено(МетаданныеРеквизитаИлиТабличнойЧасти.Синоним), - МетаданныеРеквизитаИлиТабличнойЧасти.Синоним, - МетаданныеРеквизитаИлиТабличнойЧасти.Имя); + ОписаниеРеквизита.Представление = МетаданныеРеквизитаИлиТабличнойЧасти.Представление(); - Если СтандартныйРеквизитИлиТабличнаяЧасть Тогда + Если СтандартныйРеквизитИлиСтандартнаяТабличнаяЧасть Тогда ПравоРедактирования = ПравоДоступа("Редактирование", МетаданныеОбъекта, , МетаданныеРеквизитаИлиТабличнойЧасти.Имя); Иначе ПравоРедактирования = ПравоДоступа("Редактирование", МетаданныеРеквизитаИлиТабличнойЧасти); @@ -105,6 +114,8 @@ КонецЕсли; КонецЦикла; + ЗаполнитьСвязанныеЭлементы(Форма); + // Добавление команды и кнопки, если есть права. Если Пользователи.РолиДоступны("РедактированиеРеквизитовОбъектов") И ПравоДоступа("Редактирование", Ссылка.Метаданные()) @@ -130,24 +141,30 @@ // Вспомогательные процедуры и функции. // Для процедуры ПодготовитьФорму. -// Возвращает имя элемента формы по имени реквизита объекта, ссылающегося на него. -Процедура ЗаполнитьСвязанныеЭлементы(МассивСвязанныхЭлементов, Форма, ИмяРеквизита) +// Дополняет массив блокируемых элементов формы связанными элементами. +Процедура ЗаполнитьСвязанныеЭлементы(Форма) Для Каждого ЭлементФормы Из Форма.Элементы Цикл - Если ТипЗнч(ЭлементФормы) = Тип("ПолеФормы") И ЭлементФормы.Вид <> ВидПоляФормы.ПолеНадписи - ИЛИ ТипЗнч(ЭлементФормы) = Тип("ТаблицаФормы") Тогда + Если ТипЗнч(ЭлементФормы) = Тип("ПолеФормы") + И ЭлементФормы.Вид <> ВидПоляФормы.ПолеНадписи + Или ТипЗнч(ЭлементФормы) = Тип("ТаблицаФормы") Тогда РазложенныйПутьКДанным = СтрРазделить(ЭлементФормы.ПутьКДанным, ".", Ложь); - Если РазложенныйПутьКДанным.Количество() = 2 - И РазложенныйПутьКДанным[1] = ИмяРеквизита Тогда + Если РазложенныйПутьКДанным.Количество() = 2 Тогда + + Для Каждого ПараметрЗапрета Из Форма.ПараметрыЗапретаРедактированияРеквизитов Цикл + Если ПараметрЗапрета.ИмяРеквизита = РазложенныйПутьКДанным[1] Тогда + ПараметрЗапрета.БлокируемыеЭлементы.Добавить(ЭлементФормы.Имя); + Прервать; + КонецЕсли; + КонецЦикла; - МассивСвязанныхЭлементов.Добавить(ЭлементФормы.Имя); КонецЕсли; КонецЕсли; КонецЦикла; КонецПроцедуры -#КонецОбласти +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/ЗащитаПерсональныхДанных/Module.bsl b/SSL/src/CommonModules/ЗащитаПерсональныхДанных/Module.bsl index 30fd4c46c..297f30393 100644 --- a/SSL/src/CommonModules/ЗащитаПерсональныхДанных/Module.bsl +++ b/SSL/src/CommonModules/ЗащитаПерсональныхДанных/Module.bsl @@ -374,17 +374,17 @@ Разделы.Добавить(РазделАдминистрирование); КонецЕсли; - ИстекшихСогласий = ИстекшиеСогласияНаОбработкуПерсональныхДанных(); + ИстекшиеСогласия = ИстекшиеСогласияНаОбработкуПерсональныхДанных(); Для Каждого Раздел Из Разделы Цикл Дело = ТекущиеДела.Добавить(); Дело.Идентификатор = "ИстекшиеСогласияНаОбработкуПерсональныхДанных"; - Дело.ЕстьДела = ИстекшихСогласий.Количество() > 0; + Дело.ЕстьДела = ИстекшиеСогласия.Количество() > 0; Дело.Важное = Истина; Дело.Владелец = Раздел; Дело.Представление = НСтр("ru = 'Согласия на обработку ПДн'"); - Дело.Количество = ИстекшихСогласий.Количество(); + Дело.Количество = ИстекшиеСогласия.Количество(); Дело.Подсказка = НСтр("ru = 'Истекли согласия на обработку персональных данных (ПДн). Необходимо прекратить обработку ПДн или запросить у субъекта продление согласия на обработку.'"); - Дело.ПараметрыФормы = Новый Структура; + Дело.ПараметрыФормы = Новый Структура("ИстекшиеСогласия", ИстекшиеСогласия); Дело.Форма = "ЖурналДокументов.СогласияНаОбработкуПерсональныхДанных.Форма.ФормаСписка"; КонецЦикла; diff --git a/SSL/src/CommonModules/Интеграция1СБухфон/Module.bsl b/SSL/src/CommonModules/Интеграция1СБухфон/Module.bsl index 2108d148f..218eceea5 100644 --- a/SSL/src/CommonModules/Интеграция1СБухфон/Module.bsl +++ b/SSL/src/CommonModules/Интеграция1СБухфон/Module.bsl @@ -46,7 +46,7 @@ #Область СлужебныеПроцедурыИФункции -// Записывает в регистр сведений путь исполняемого файла приложения. +// Записывает в регистр сведений путь исполняемого файла 1С-Бухфон. // Хранение путей до исполняемых файлов ведется в разрезе ПК, для определения ПК используется идентификатор клиента // т.к. невозможно использование функции ИмяКомпьютера в веб клиенте. // @@ -72,7 +72,7 @@ // Логин - Строка - Данные учетной записи приложения. // Пароль - Строка - Данные учетной записи приложения. // ИспользоватьЛП - Булево - Если значение Ложь, параметры Логин, Пароль не доступны. -// ВидимостьКнопки1СБухфон - Булево - Отображение кнопки запуска приложения на начальной странице. +// ВидимостьКнопки1СБухфон - Булево - Отображение Кнопки запуска приложения на начальной странице. // Процедура СохранитьНастройкиПользователяВХранилище(Логин, Пароль, diff --git a/SSL/src/CommonModules/Интеграция1СБухфонКлиент/Module.bsl b/SSL/src/CommonModules/Интеграция1СБухфонКлиент/Module.bsl index 16c59d3bd..bc44af9c6 100644 --- a/SSL/src/CommonModules/Интеграция1СБухфонКлиент/Module.bsl +++ b/SSL/src/CommonModules/Интеграция1СБухфонКлиент/Module.bsl @@ -29,13 +29,13 @@ КонецФункции -// Возвращает путь файла 1С-Бухфон в реестре Windows. +// Возвращает путь файла приложения в реестре Windows. // Функция ПутьКИсполняемомуФайлуИзРеестраWindows() Экспорт Значение = ""; - Если НЕ ЭтоWindowsКлиент() Тогда + Если НЕ ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда Возврат Значение; КонецЕсли; @@ -56,22 +56,6 @@ КонецФункции -// Возвращает Истина, если клиентское приложение запущено под управлением ОС Windows. -// -// Возвращаемое значение: -// Булево. Если нет клиентского приложения, возвращается Ложь. -// -Функция ЭтоWindowsКлиент() Экспорт - - СистемнаяИнформация = Новый СистемнаяИнформация; - - ЭтоWindowsКлиент = СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86 - ИЛИ СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86_64; - - Возврат ЭтоWindowsКлиент; - -КонецФункции - // Диалоговое окно для выбора файла. // // Возвращаемое значение: @@ -144,13 +128,13 @@ // Процедура Запустить1СБухфон() Экспорт - Если НЕ ЭтоWindowsКлиент() Тогда + Если НЕ ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда ПоказатьПредупреждение(,НСтр("ru = 'Для работы с приложением необходима операционная система Microsoft Windows.'")); Возврат КонецЕсли; Оповещение = Новый ОписаниеОповещения("Запустить1СБухфонПослеУстановкиРасширения", ЭтотОбъект); - ТекстСообщения = НСтр("ru = 'Для запуска 1С-Бухфон необходимо установить расширение работы с файлами.'"); + ТекстСообщения = НСтр("ru = 'Для запуска приложения необходимо установить расширение работы с файлами.'"); ОбщегоНазначенияКлиент.ПоказатьВопросОбУстановкеРасширенияРаботыСФайлами(Оповещение, ТекстСообщения, Ложь); КонецПроцедуры diff --git a/SSL/src/CommonModules/ИнтеграцияСтандартныхПодсистем/Module.bsl b/SSL/src/CommonModules/ИнтеграцияСтандартныхПодсистем/Module.bsl index c24c57b4e..0681cd305 100644 --- a/SSL/src/CommonModules/ИнтеграцияСтандартныхПодсистем/Module.bsl +++ b/SSL/src/CommonModules/ИнтеграцияСтандартныхПодсистем/Module.bsl @@ -9,10 +9,12 @@ // Интеграция с подсистемой "БазоваяФункциональность". // См. описание в процедуре ЗаполнитьВсеПараметрыРаботыРасширений -// общего модуля СтандартныеПодсистемы. +// модуля менеджера регистра сведений ПараметрыРаботыВерсийРасширений. // Процедура ПриЗаполненииВсехПараметровРаботыРасширений() Экспорт + ПодключаемыеКоманды.ПриЗаполненииВсехПараметровРаботыРасширений(); + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ВариантыОтчетов") Тогда МодульВариантыОтчетов = ОбщегоНазначения.ОбщийМодуль("ВариантыОтчетов"); МодульВариантыОтчетов.ПриЗаполненииВсехПараметровРаботыРасширений(); @@ -21,7 +23,7 @@ КонецПроцедуры // См. описание в процедуре ОчиститьВсеПараметрыРаботыРасширений -// общего модуля СтандартныеПодсистемы. +// модуля менеджера регистра сведений ПараметрыРаботыВерсийРасширений. // Процедура ПриОчисткеВсехПараметровРаботыРасширений() Экспорт @@ -32,6 +34,79 @@ КонецПроцедуры +// Определение имен и типов общих настроек подключаемых объектов (отчетов и обработок). +// +// Параметры: +// СтруктураНастроек - Структура - Структура настроек, которые могут определяться в этом объекте. Для изменения. +// * Ключ - Строка - Имя настройки. +// * Значение - ОписаниеТипов - Тип настройки. +// +Процедура ПриОпределенииСтруктурыНастроекПодключаемыхОбъектов(СтруктураНастроек) Экспорт + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда + МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью"); + МодульУправлениеПечатью.ПриОпределенииСтруктурыНастроекПодключаемыхОбъектов(СтруктураНастроек); + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЗаполнениеОбъектов") Тогда + МодульЗаполнениеОбъектов = ОбщегоНазначения.ОбщийМодуль("ЗаполнениеОбъектов"); + МодульЗаполнениеОбъектов.ПриОпределенииСтруктурыНастроекПодключаемыхОбъектов(СтруктураНастроек); + КонецЕсли; + +КонецПроцедуры + +// Заполнение параметров получения списка команд этой формы. +// Событие возникает перед вызовом модуля повторного использования для определения параметров +// форм, в которых выводятся подключаемые команды. +// +// Параметры: +// Форма - УправляемаяФорма - Форма, в которой выводятся подключаемые команды. Для чтения. +// ИспользуемыеПодменю - Массив из Строк - Имена групп формы, которые используются в этой форме. Для изменения. +// +Процедура ПриОпределенииИспользуемыхПодменю(Форма, ИспользуемыеПодменю) Экспорт + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда + МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью"); + МодульУправлениеПечатью.ПриОпределенииИспользуемыхПодменю(Форма, ИспользуемыеПодменю); + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЗаполнениеОбъектов") Тогда + МодульЗаполнениеОбъектов = ОбщегоНазначения.ОбщийМодуль("ЗаполнениеОбъектов"); + МодульЗаполнениеОбъектов.ПриОпределенииИспользуемыхПодменю(Форма, ИспользуемыеПодменю); + КонецЕсли; + +КонецПроцедуры + +// Формирование списка команд, подключенных к форме. +// Событие возникает в процессе вызова модуля повторного использования. +// +// Параметры: +// НастройкиФормы - Структура - Сведения о форме, в которой выводятся команды. Для чтения. +// * ИмяФормы - Строка - Полное имя формы, в которой выводятся подключаемые команды. +// * ИспользуемыеПодменю - Массив из Строк - Имена групп формы, которые используются в этой форме. +// НастройкиОбъекта - Структура - Сведения о родительском объекте, к которому принадлежит форма. Для чтения. +// Состав полей см. в ПодключаемыеКоманды.НастройкиОбъекта(). +// НастройкиРасширений - ТаблицаЗначений - Настройки расширений, подключенных к этому объекту метаданных. Для чтения. +// * ПолноеИмя - Строка - Полное имя объекта расширения. +// * Менеджер - Произвольный - Модуль менеджера объекта расширения. +// Состав колонок определяется в процедуре ПриОпределенииИменИТиповНастроекПоставщиков. +// Команды - ТаблицаЗначений - Таблица команд для вывода в подменю. Для изменения. +// Состав колонок см. в ПодключаемыеКоманды.ТаблицаКоманд(). +// +Процедура ПриОпределенииКомандПодключенныхКОбъекту(НастройкиФормы, НастройкиОбъекта, НастройкиРасширений, Команды) Экспорт + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда + МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью"); + МодульУправлениеПечатью.ПриОпределенииКомандПодключенныхКОбъекту(НастройкиФормы, НастройкиОбъекта, НастройкиРасширений, Команды); + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЗаполнениеОбъектов") Тогда + МодульЗаполнениеОбъектов = ОбщегоНазначения.ОбщийМодуль("ЗаполнениеОбъектов"); + МодульЗаполнениеОбъектов.ПриОпределенииКомандПодключенныхКОбъекту(НастройкиФормы, НастройкиОбъекта, НастройкиРасширений, Команды); + КонецЕсли; + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Интеграция с подсистемой "Групповое изменение объектов". @@ -101,11 +176,6 @@ МодульОбменДаннымиСервер.ПриОпределенииОбъектовСРедактируемымиРеквизитами(Объекты); КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда - МодульОрганизацииСлужебный = ОбщегоНазначения.ОбщийМодуль("ОрганизацииСлужебный"); - МодульОрганизацииСлужебный.ПриОпределенииОбъектовСРедактируемымиРеквизитами(Объекты); - КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Пользователи") Тогда МодульПользователиСлужебный = ОбщегоНазначения.ОбщийМодуль("ПользователиСлужебный"); МодульПользователиСлужебный.ПриОпределенииОбъектовСРедактируемымиРеквизитами(Объекты); @@ -346,11 +416,6 @@ МодульТекущиеДелаСлужебный.ПриОпределенииНазначенияРолей(НазначениеРолей); КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда - МодульУправлениеДоступомСлужебный = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступомСлужебный"); - МодульУправлениеДоступомСлужебный.ПриОпределенииНазначенияРолей(НазначениеРолей); - КонецЕсли; - КонецПроцедуры // См. процедуру ИзменитьДействияВФорме в общем модуле ПользователиПереопределяемый. diff --git a/SSL/src/CommonModules/ИнформацияПриЗапуске/Module.bsl b/SSL/src/CommonModules/ИнформацияПриЗапуске/Module.bsl index 243f39bc4..567009992 100644 --- a/SSL/src/CommonModules/ИнформацияПриЗапуске/Module.bsl +++ b/SSL/src/CommonModules/ИнформацияПриЗапуске/Module.bsl @@ -211,16 +211,9 @@ Если Метаданные.Обработки.ИнформацияПриЗапуске.Макеты.Количество() = 0 Тогда Настройки.Показывать = Ложь; - ИначеЕсли Не СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации() Тогда + ИначеЕсли Не СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации() И Не ПоказыватьПриНачалеРаботы() Тогда // Отключение информации в ПРОФ версии если пользователь отключил флажок. - ФлажокПользователя = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить("ИнформацияПриЗапуске", "Показывать", Истина); - Если Не ФлажокПользователя Тогда - ДатаБлижайшегоПоказа = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить("ИнформацияПриЗапуске", "ДатаБлижайшегоПоказа"); - Если ДатаБлижайшегоПоказа <> Неопределено - И ДатаБлижайшегоПоказа > ТекущаяДатаСеанса() Тогда - Настройки.Показывать = Ложь; - КонецЕсли; - КонецЕсли; + Настройки.Показывать = Ложь; КонецЕсли; Если Настройки.Показывать Тогда @@ -263,6 +256,19 @@ Возврат Настройки; КонецФункции +// Чтение сохраненного значения флажка "Показывать при начале работы". +Функция ПоказыватьПриНачалеРаботы() Экспорт + Показывать = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить("ИнформацияПриЗапуске", "Показывать", Истина); + Если Не Показывать Тогда + ДатаБлижайшегоПоказа = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить("ИнформацияПриЗапуске", "ДатаБлижайшегоПоказа"); + Если ДатаБлижайшегоПоказа <> Неопределено + И ДатаБлижайшегоПоказа > ТекущаяДатаСеанса() Тогда + Возврат Ложь; + КонецЕсли; + КонецЕсли; + Возврат Истина; +КонецФункции + // Глобальные настройки подсистемы. Функция ПакетыСтраниц(НосительМакетов) Экспорт Результат = Новый ТаблицаЗначений; diff --git a/SSL/src/CommonModules/ИнформацияПриЗапускеКлиент/Module.bsl b/SSL/src/CommonModules/ИнформацияПриЗапускеКлиент/Module.bsl index 97312adb8..ffdddeca9 100644 --- a/SSL/src/CommonModules/ИнформацияПриЗапускеКлиент/Module.bsl +++ b/SSL/src/CommonModules/ИнформацияПриЗапускеКлиент/Module.bsl @@ -22,8 +22,8 @@ Процедура Показать() Экспорт Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности") Тогда - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - МодульОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени("ВремяОткрытияИнформацииПриЗапуске"); + МодульОценкаПроизводительностиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиент"); + МодульОценкаПроизводительностиКлиент.НачатьЗамерВремени(Истина, "ВремяОткрытияИнформацииПриЗапуске"); КонецЕсли; ОткрытьФорму("Обработка.ИнформацияПриЗапуске.Форма"); diff --git a/SSL/src/CommonModules/КалендарныеГрафики/Module.bsl b/SSL/src/CommonModules/КалендарныеГрафики/Module.bsl index bb0dd4a3e..0c8991288 100644 --- a/SSL/src/CommonModules/КалендарныеГрафики/Module.bsl +++ b/SSL/src/CommonModules/КалендарныеГрафики/Module.bsl @@ -21,7 +21,7 @@ // Массив - массив дат, увеличенных на количество дней, входящих в график, // Если выбранный график не заполнен, и ВызыватьИсключение = Ложь, возвращается Неопределено. // -Функция ПолучитьМассивДатПоКалендарю(Знач ГрафикРаботы, Знач ДатаОт, Знач МассивДней, Знач РассчитыватьСледующуюДатуОтПредыдущей = Ложь, ВызыватьИсключение = Истина) Экспорт +Функция ДатыПоКалендарю(Знач ГрафикРаботы, Знач ДатаОт, Знач МассивДней, Знач РассчитыватьСледующуюДатуОтПредыдущей = Ложь, ВызыватьИсключение = Истина) Экспорт Если Не ЗначениеЗаполнено(ГрафикРаботы) Тогда Если ВызыватьИсключение Тогда @@ -128,7 +128,7 @@ // Дата - дата, увеличенная на количество дней, входящих в график. // Если выбранный график не заполнен, и ВызыватьИсключение = Ложь, возвращается Неопределено. // -Функция ПолучитьДатуПоКалендарю(Знач ГрафикРаботы, Знач ДатаОт, Знач КоличествоДней, ВызыватьИсключение = Истина) Экспорт +Функция ДатаПоКалендарю(Знач ГрафикРаботы, Знач ДатаОт, Знач КоличествоДней, ВызыватьИсключение = Истина) Экспорт Если Не ЗначениеЗаполнено(ГрафикРаботы) Тогда Если ВызыватьИсключение Тогда @@ -146,7 +146,7 @@ МассивДней = Новый Массив; МассивДней.Добавить(КоличествоДней); - МассивДат = ПолучитьМассивДатПоКалендарю(ГрафикРаботы, ДатаОт, МассивДней, , ВызыватьИсключение); + МассивДат = ДатыПоКалендарю(ГрафикРаботы, ДатаОт, МассивДней, , ВызыватьИсключение); Возврат ?(МассивДат <> Неопределено, МассивДат[0], Неопределено); @@ -165,7 +165,7 @@ // Число - количество дней между датами начала и окончания. // Если выбранный график не заполнен, и ВызыватьИсключение = Ложь, возвращается Неопределено. // -Функция ПолучитьРазностьДатПоКалендарю(Знач ГрафикРаботы, Знач ДатаНачала, Знач ДатаОкончания, ВызыватьИсключение = Истина) Экспорт +Функция РазностьДатПоКалендарю(Знач ГрафикРаботы, Знач ДатаНачала, Знач ДатаОкончания, ВызыватьИсключение = Истина) Экспорт Если Не ЗначениеЗаполнено(ГрафикРаботы) Тогда Если ВызыватьИсключение Тогда @@ -344,7 +344,7 @@ // значение - ближайшая к ней рабочая дата (если передана рабочая дата, то она же и возвращается). // Если выбранный график не заполнен, и ВызыватьИсключение = Ложь, возвращается Неопределено. // -Функция ПолучитьДатыРабочихДней(График, НачальныеДаты, ПолучатьПредшествующие = Ложь, ВызыватьИсключение = Истина, ИгнорироватьНезаполненностьГрафика = Ложь) Экспорт +Функция ДатыБлижайшихРабочихДней(График, НачальныеДаты, ПолучатьПредшествующие = Ложь, ВызыватьИсключение = Истина, ИгнорироватьНезаполненностьГрафика = Ложь) Экспорт Если Не ЗначениеЗаполнено(График) Тогда Если ВызыватьИсключение Тогда @@ -519,6 +519,34 @@ КонецФункции +#Область УстаревшиеПроцедурыИФункции + +// Устарела. См. функцию ДатыПоКалендарю +// +Функция ПолучитьМассивДатПоКалендарю(Знач ГрафикРаботы, Знач ДатаОт, Знач МассивДней, Знач РассчитыватьСледующуюДатуОтПредыдущей = Ложь, ВызыватьИсключение = Истина) Экспорт + Возврат ДатыПоКалендарю(ГрафикРаботы, ДатаОт, МассивДней, РассчитыватьСледующуюДатуОтПредыдущей, ВызыватьИсключение); +КонецФункции + +// Устарела. См. функцию ДатаПоКалендарю. +// +Функция ПолучитьДатуПоКалендарю(Знач ГрафикРаботы, Знач ДатаОт, Знач КоличествоДней, ВызыватьИсключение = Истина) Экспорт + Возврат ДатаПоКалендарю(ГрафикРаботы, ДатаОт, КоличествоДней, ВызыватьИсключение); +КонецФункции + +// Устарела. См. функцию РазностьДатПоКалендарю +// +Функция ПолучитьРазностьДатПоКалендарю(Знач ГрафикРаботы, Знач ДатаНачала, Знач ДатаОкончания, ВызыватьИсключение = Истина) Экспорт + Возврат РазностьДатПоКалендарю(ГрафикРаботы, ДатаНачала, ДатаОкончания, ВызыватьИсключение); +КонецФункции + +// Устарела. См. функцию ДатыБлижайшихРабочихДней +// +Функция ПолучитьДатыРабочихДней(График, НачальныеДаты, ПолучатьПредшествующие = Ложь, ВызыватьИсключение = Истина, ИгнорироватьНезаполненностьГрафика = Ложь) Экспорт + Возврат ДатыБлижайшихРабочихДней(График, НачальныеДаты, ПолучатьПредшествующие, ВызыватьИсключение, ИгнорироватьНезаполненностьГрафика); +КонецФункции + +#КонецОбласти + #КонецОбласти #Область СлужебныйПрограммныйИнтерфейс @@ -613,17 +641,6 @@ КонецПроцедуры -// Обновляет справочник Производственные календари из одноименного макета. -// -Процедура ОбновитьПроизводственныеКалендари() Экспорт - - ТекстовыйДокумент = Справочники.ПроизводственныеКалендари.ПолучитьМакет("ОписаниеКалендарей"); - ТаблицаКалендарей = ОбщегоНазначения.ПрочитатьXMLВТаблицу(ТекстовыйДокумент.ПолучитьТекст()).Данные; - - Справочники.ПроизводственныеКалендари.ОбновитьПроизводственныеКалендари(ТаблицаКалендарей); - -КонецПроцедуры - //////////////////////////////////////////////////////////////////////////////// // Обработчики условных вызовов в эту подсистему. @@ -692,13 +709,24 @@ Обработчик.ОбщиеДанные = Истина; Обработчик = Обработчики.Добавить(); - Обработчик.Версия = "2.3.2.75"; + Обработчик.Версия = "2.3.4.7"; Обработчик.Процедура = "КалендарныеГрафики.ОбновитьДанныеПроизводственныхКалендарей"; - Обработчик.РежимВыполнения = "Оперативно"; + Обработчик.РежимВыполнения = "Монопольно"; Обработчик.ОбщиеДанные = Истина; КонецПроцедуры +// Обновляет справочник Производственные календари из одноименного макета. +// +Процедура ОбновитьПроизводственныеКалендари() Экспорт + + ТекстовыйДокумент = Справочники.ПроизводственныеКалендари.ПолучитьМакет("ОписаниеКалендарей"); + ТаблицаКалендарей = ОбщегоНазначения.ПрочитатьXMLВТаблицу(ТекстовыйДокумент.ПолучитьТекст()).Данные; + + Справочники.ПроизводственныеКалендари.ОбновитьПроизводственныеКалендари(ТаблицаКалендарей); + +КонецПроцедуры + // Обновляет данные производственных календарей из макета. // ДанныеПроизводственныхКалендарей. // diff --git a/SSL/src/CommonModules/КонтрольДинамическогоОбновленияКонфигурацииВызовСервера/Module.bsl b/SSL/src/CommonModules/КонтрольДинамическогоОбновленияКонфигурацииВызовСервера/Module.bsl index 02ad9fc25..e533f364b 100644 --- a/SSL/src/CommonModules/КонтрольДинамическогоОбновленияКонфигурацииВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/КонтрольДинамическогоОбновленияКонфигурацииВызовСервера/Module.bsl @@ -10,7 +10,7 @@ Функция КонфигурацияБДБылаИзмененаДинамически() Экспорт Возврат КонфигурацияБазыДанныхИзмененаДинамически() - Или СтандартныеПодсистемыСервер.РасширенияИзмененыДинамически(); + Или Справочники.ВерсииРасширений.РасширенияИзмененыДинамически(); КонецФункции diff --git a/SSL/src/CommonModules/КурсыВалютСлужебныйВМоделиСервиса/Module.bsl b/SSL/src/CommonModules/КурсыВалютСлужебныйВМоделиСервиса/Module.bsl index 97c0d9fae..9b345a143 100644 --- a/SSL/src/CommonModules/КурсыВалютСлужебныйВМоделиСервиса/Module.bsl +++ b/SSL/src/CommonModules/КурсыВалютСлужебныйВМоделиСервиса/Module.bsl @@ -525,7 +525,10 @@ ИмяСобытия = НСтр("ru = 'Поставляемые данные.Отмена загрузки курсов валюты'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); ЗаписьЖурналаРегистрации(ИмяСобытия, УровеньЖурналаРегистрации.Информация,, ВыборкаВалюты.Ссылка, Комментарий); КонецЕсли; - + + // Проверка наличие установленного курса и кратности валюты на 1 января 1980 года. + РаботаСКурсамиВалют.ПроверитьКорректностьКурсаНа01_01_1980(ВыборкаВалюты.Ссылка); + КонецЦикла; ПоставляемыеДанные.ОбластьОбработана(ИдентификаторФайла, КодОбработчика, ОбластьДанных); ЗафиксироватьТранзакцию(); @@ -602,7 +605,11 @@ НаборЗаписей.Отбор.Валюта.Установить(ВалютаСсылка); НаборЗаписей.Загрузить(ТаблицаКурсов); НаборЗаписей.ОбменДанными.Загрузка = Истина; + НаборЗаписей.Записать(); + + // Проверка наличия установленного курса и кратности валюты на 1 января 1980 года. + РаботаСКурсамиВалют.ПроверитьКорректностьКурсаНа01_01_1980(ВалютаСсылка); КонецПроцедуры diff --git a/SSL/src/CommonModules/НапоминанияПользователяВызовСервера/Module.bsl b/SSL/src/CommonModules/НапоминанияПользователяВызовСервера/Module.bsl index 662fc4277..2915c80e3 100644 --- a/SSL/src/CommonModules/НапоминанияПользователяВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/НапоминанияПользователяВызовСервера/Module.bsl @@ -46,19 +46,18 @@ КонецФункции -// Создает новое напоминание на указанное время. -Функция ПодключитьНапоминаниеВУказанноеВремя(Текст, Время, Предмет = Неопределено) Экспорт +// Создает новое напоминание на время, рассчитанное относительно времени в предмете. +Функция ПодключитьНапоминаниеДоВремениПредмета(Текст, Интервал, Предмет, ИмяРеквизита, ПовторятьЕжегодно = Ложь) Экспорт - Возврат НапоминанияПользователяСлужебный.ПодключитьНапоминаниеВУказанноеВремя( - Текст, Время, Предмет); + Возврат НапоминанияПользователяСлужебный.ПодключитьНапоминаниеДоВремениПредмета( + Текст, Интервал, Предмет, ИмяРеквизита, ПовторятьЕжегодно); КонецФункции -// Создает новое напоминание на время, рассчитанное относительно времени в предмете. -Функция ПодключитьНапоминаниеДоВремениПредмета(Текст, Интервал, Предмет, ИмяРеквизита) Экспорт +Функция ПодключитьНапоминание(Текст, ВремяСобытия, ИнтервалДоСобытия = 0, Предмет = Неопределено) Экспорт - Возврат НапоминанияПользователяСлужебный.ПодключитьНапоминаниеДоВремениПредмета( - Текст, Интервал, Предмет, ИмяРеквизита); + Возврат НапоминанияПользователяСлужебный.ПодключитьПроизвольноеНапоминание( + Текст, ВремяСобытия, ИнтервалДоСобытия, Предмет); КонецФункции diff --git a/SSL/src/CommonModules/НапоминанияПользователяКлиент/Module.bsl b/SSL/src/CommonModules/НапоминанияПользователяКлиент/Module.bsl index 92ed4b0a4..61b2bfd53 100644 --- a/SSL/src/CommonModules/НапоминанияПользователяКлиент/Module.bsl +++ b/SSL/src/CommonModules/НапоминанияПользователяКлиент/Module.bsl @@ -24,8 +24,8 @@ // Процедура НапомнитьВУказанноеВремя(Текст, Время, Предмет = Неопределено) Экспорт - Напоминание = НапоминанияПользователяВызовСервера.ПодключитьНапоминаниеВУказанноеВремя( - Текст, Время, Предмет); + Напоминание = НапоминанияПользователяВызовСервера.ПодключитьНапоминание( + Текст, Время, , Предмет); ОбновитьЗаписьВКэшеОповещений(Напоминание); СброситьТаймерПроверкиТекущихОповещений(); @@ -39,17 +39,54 @@ // Интервал - Число - время в секундах, за которое необходимо напомнить относительно даты в реквизите предмета; // Предмет - ЛюбаяСсылка - предмет напоминания; // ИмяРеквизита - Строка - имя реквизита предмета, относительно которого устанавливается срок напоминания. -// Процедура НапомнитьДоВремениПредмета(Текст, Интервал, Предмет, ИмяРеквизита) Экспорт Напоминание = НапоминанияПользователяВызовСервера.ПодключитьНапоминаниеДоВремениПредмета( - Текст, Интервал, Предмет, ИмяРеквизита); + Текст, Интервал, Предмет, ИмяРеквизита, Ложь); ОбновитьЗаписьВКэшеОповещений(Напоминание); СброситьТаймерПроверкиТекущихОповещений(); КонецПроцедуры +// Создает напоминание с произвольным временем или расписанием выполнения. +// +// Параметры: +// Текст - Строка - текст напоминания; +// ВремяСобытия - Дата - дата и время события, о котором надо напомнить; +// - РасписаниеРегламентногоЗадания - расписание периодического события. +// ИнтервалДоСобытия - Число - время в секундах, за которое необходимо напомнить относительно времени события; +// Предмет - ЛюбаяСсылка - предмет напоминания; +// +Процедура Напомнить(Текст, ВремяСобытия = Неопределено, ИнтервалДоСобытия = 0, Предмет = Неопределено) Экспорт + + Напоминание = НапоминанияПользователяВызовСервера.ПодключитьНапоминание( + Текст, ВремяСобытия, ИнтервалДоСобытия, Предмет); + + ОбновитьЗаписьВКэшеОповещений(Напоминание); + СброситьТаймерПроверкиТекущихОповещений(); + +КонецПроцедуры + +// Создает ежегодное напоминание на дату предмета. +// +// Параметры: +// Текст - Строка - текст напоминания; +// Интервал - Число - время в секундах, за которое необходимо напомнить относительно даты в реквизите предмета; +// Предмет - ЛюбаяСсылка - предмет напоминания; +// ИмяРеквизита - Строка - имя реквизита предмета, относительно которого устанавливается срок напоминания. +// +Процедура НапомнитьОЕжегодномСобытииПредмета(Текст, Интервал, Предмет, ИмяРеквизита) Экспорт + + Напоминание = НапоминанияПользователяВызовСервера.ПодключитьНапоминаниеДоВремениПредмета( + Текст, Интервал, Предмет, ИмяРеквизита, Истина); + + ОбновитьЗаписьВКэшеОповещений(Напоминание); + СброситьТаймерПроверкиТекущихОповещений(); + +КонецПроцедуры + + #КонецОбласти #Область СлужебныйПрограммныйИнтерфейс diff --git a/SSL/src/CommonModules/НапоминанияПользователяКлиентСервер/Module.bsl b/SSL/src/CommonModules/НапоминанияПользователяКлиентСервер/Module.bsl index 345df6ade..8709b5130 100644 --- a/SSL/src/CommonModules/НапоминанияПользователяКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/НапоминанияПользователяКлиентСервер/Module.bsl @@ -12,11 +12,9 @@ ИнтервалыВремени = Новый Структура("_5м,_10м,_15м,_30м,_1ч,_2ч,_4ч,_8ч,_1д,_2д,_3д,_1н,_2н"); Для Каждого Интервал Из ИнтервалыВремени Цикл - Результат.Добавить(ОформитьВремя(Интервал.Ключ)); + Результат.Добавить(ОформитьВремя(Интервал.Ключ)); КонецЦикла; - НапоминанияПользователяКлиентСерверПереопределяемый.ПриПолученииСтандартныхИнтерваловОповещения(Результат); - Возврат Результат; КонецФункции @@ -230,14 +228,15 @@ // ДанныеДляЗаполнения - Структура - значения для заполнения параметров напоминания. // ВсеРеквизиты - Булево - если истина, то возвращает также реквизиты, связанные с настройкой // времени напоминания. -Функция ПолучитьСтруктуруНапоминания(ДанныеДляЗаполнения = Неопределено, ВсеРеквизиты = Ложь) Экспорт +Функция ОписаниеНапоминания(ДанныеДляЗаполнения = Неопределено, ВсеРеквизиты = Ложь) Экспорт Результат = Новый Структура("Пользователь,ВремяСобытия,Источник,СрокНапоминания,Описание"); Если ВсеРеквизиты Тогда Результат.Вставить("СпособУстановкиВремениНапоминания"); - Результат.Вставить("ИнтервалВремениНапоминания"); + Результат.Вставить("ИнтервалВремениНапоминания", 0); Результат.Вставить("ИмяРеквизитаИсточника"); Результат.Вставить("Расписание"); Результат.Вставить("ИндексКартинки", 2); + Результат.Вставить("ПовторятьЕжегодно", Ложь); КонецЕсли; Если ДанныеДляЗаполнения <> Неопределено Тогда ЗаполнитьЗначенияСвойств(Результат, ДанныеДляЗаполнения); diff --git a/SSL/src/CommonModules/НапоминанияПользователяКлиентСерверПереопределяемый/Module.bsl b/SSL/src/CommonModules/НапоминанияПользователяКлиентСерверПереопределяемый/Module.bsl index 00ca6d905..af6bed291 100644 --- a/SSL/src/CommonModules/НапоминанияПользователяКлиентСерверПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/НапоминанияПользователяКлиентСерверПереопределяемый/Module.bsl @@ -5,6 +5,10 @@ #Область ПрограммныйИнтерфейс +#Область УстаревшиеПроцедурыИФункции + +// Устарела. Следует использовать НапоминанияПользователяПереопределяемый.ПриЗаполненииСпискаРеквизитовИсточникаСДатамиДляНапоминания(). +// // Переопределяет массив реквизитов объекта, относительно которых разрешается устанавливать время напоминания. // Например, можно скрыть те реквизиты с датами, которые являются служебными или не имеют смысла для // установки напоминаний: дата документа или задачи и прочие. @@ -17,6 +21,8 @@ КонецПроцедуры +// Устарела. Следует использовать НапоминанияПользователяПереопределяемый.ПриОпределенииНастроек(). +// // Переопределяет варианты расписаний для выбора пользователем. // // Параметры: @@ -27,6 +33,8 @@ КонецПроцедуры +// Устарела. Следует использовать НапоминанияПользователяПереопределяемый.ПриОпределенииНастроек(). +// // Переопределяет массив текстовых представлений стандартных интервалов времени. // // Параметры: @@ -37,3 +45,5 @@ КонецПроцедуры #КонецОбласти + +#КонецОбласти diff --git a/SSL/src/CommonModules/НапоминанияПользователяПереопределяемый/Module.bsl b/SSL/src/CommonModules/НапоминанияПользователяПереопределяемый/Module.bsl new file mode 100644 index 000000000..cbc3af8a5 --- /dev/null +++ b/SSL/src/CommonModules/НапоминанияПользователяПереопределяемый/Module.bsl @@ -0,0 +1,32 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Напоминания пользователя". +// +//////////////////////////////////////////////////////////////////////////////// + +#Область ПрограммныйИнтерфейс + +// Переопределяет настройки подсистемы. +// +// Параметры: +// Настройки - Структура - +// * Расписания - Соответствие: +// ** Ключ - Строка - представление расписания; +// ** Значение - РасписаниеРегламентногоЗадания - вариант расписания. +// * СтандартныеИнтервалы - Массив - содержит строковые представления интервалов времени. +Процедура ПриОпределенииНастроек(Настройки) Экспорт + +КонецПроцедуры + +// Переопределяет массив реквизитов объекта, относительно которых разрешается устанавливать время напоминания. +// Например, можно скрыть те реквизиты с датами, которые являются служебными или не имеют смысла для +// установки напоминаний: дата документа или задачи и прочие. +// +// Параметры: +// Источник - ЛюбаяСсылка - ссылка на объект, для которого формируется массив реквизитов с датами; +// МассивРеквизитов - Массив - имена реквизитов (из метаданных), содержащих даты. +// +Процедура ПриЗаполненииСпискаРеквизитовИсточникаСДатамиДляНапоминания(Источник, МассивРеквизитов) Экспорт + +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/CommonModules/НапоминанияПользователяПереопределяемый/НапоминанияПользователяПереопределяемый.mdo b/SSL/src/CommonModules/НапоминанияПользователяПереопределяемый/НапоминанияПользователяПереопределяемый.mdo new file mode 100644 index 000000000..3a0a76e43 --- /dev/null +++ b/SSL/src/CommonModules/НапоминанияПользователяПереопределяемый/НапоминанияПользователяПереопределяемый.mdo @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="0b303d25-e141-431f-828c-1778d3c247f6"> + <name>НапоминанияПользователяПереопределяемый</name> + <synonym> + <key>ru</key> + <value>Напоминания пользователя переопределяемый</value> + </synonym> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/НапоминанияПользователяСлужебный/Module.bsl b/SSL/src/CommonModules/НапоминанияПользователяСлужебный/Module.bsl index 50487e010..cf770dcd7 100644 --- a/SSL/src/CommonModules/НапоминанияПользователяСлужебный/Module.bsl +++ b/SSL/src/CommonModules/НапоминанияПользователяСлужебный/Module.bsl @@ -27,7 +27,7 @@ // Процедура ПриЗаполненииСпискаРеквизитовИсточникаСДатамиДляНапоминания(Источник, МассивРеквизитов) Экспорт // // (То же, что - // НапоминанияПользователяКлиентСерверПереопределяемый.ПриЗаполненииСпискаРеквизитовИсточникаСДатамиДляНапоминания). + // НапоминанияПользователяПереопределяемый.ПриЗаполненииСпискаРеквизитовИсточникаСДатамиДляНапоминания). // СерверныеСобытия.Добавить("СтандартныеПодсистемы.НапоминанияПользователя\ПриЗаполненииСпискаРеквизитовИсточникаСДатамиДляНапоминания"); @@ -40,7 +40,7 @@ КлиентскиеОбработчики[ "СтандартныеПодсистемы.БазоваяФункциональность\ПослеНачалаРаботыСистемы"].Добавить( - "НапоминанияПользователяКлиент"); + "НапоминанияПользователяКлиент"); // СЕРВЕРНЫЕ ОБРАБОТЧИКИ. @@ -52,14 +52,74 @@ "СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПараметровРаботыКлиента"].Добавить( "НапоминанияПользователяСлужебный"); + СерверныеОбработчики[ + "СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПереименованийОбъектовМетаданных"].Добавить( + "НапоминанияПользователяСлужебный"); + +КонецПроцедуры + +// Заполняет структуру параметров, необходимых для работы клиентского кода +// при запуске конфигурации. +// +// Параметры: +// Параметры - Структура - структура параметров запуска. +// +Процедура ПриДобавленииПараметровРаботыКлиентаПриЗапуске(Параметры) Экспорт + + Параметры.Вставить("НастройкиНапоминаний", + Новый ФиксированнаяСтруктура("ИспользоватьНапоминания", ПолучитьНастройкиНапоминаний().ИспользоватьНапоминания)); + +КонецПроцедуры + +// Заполняет структуру параметров, необходимых для работы клиентского кода +// конфигурации. +// +// Параметры: +// Параметры - Структура - структура параметров. +// +Процедура ПриДобавленииПараметровРаботыКлиента(Параметры) Экспорт + + Параметры.Вставить("НастройкиНапоминаний", + Новый ФиксированнаяСтруктура(ПолучитьНастройкиНапоминаний())); + +КонецПроцедуры + +// Заполняет переименования тех объектов метаданных, которые невозможно +// автоматически найти по типу, но ссылки на которые требуется сохранять +// в базе данных (например: подсистемы, роли). +// +// См. также: +// ОбщегоНазначения.ДобавитьПереименование(). +// +Процедура ПриДобавленииПереименованийОбъектовМетаданных(Итог) Экспорт + + Библиотека = "СтандартныеПодсистемы"; + + СтароеИмя = "Роль.ИспользованиеНапоминаний"; + НовоеИмя = "Роль.ДобавлениеИзменениеНапоминаний"; + ОбщегоНазначения.ДобавитьПереименование(Итог, "2.3.3.11", СтароеИмя, НовоеИмя, Библиотека); + КонецПроцедуры #КонецОбласти #Область СлужебныеПроцедурыИФункции +Функция НастройкиПодсистемы() Экспорт + Настройки = Новый Структура; + Настройки.Вставить("Расписания", ПолучитьСтандартныеРасписанияДляНапоминания()); + Настройки.Вставить("СтандартныеИнтервалы", НапоминанияПользователяКлиентСервер.ПолучитьСтандартныеИнтервалыОповещения()); + НапоминанияПользователяПереопределяемый.ПриОпределенииНастроек(Настройки); + + // Поддержка обратной совместимости. + НапоминанияПользователяКлиентСерверПереопределяемый.ПриПолученииСтандартныхРасписанийДляНапоминания(Настройки.Расписания); + НапоминанияПользователяКлиентСерверПереопределяемый.ПриПолученииСтандартныхИнтерваловОповещения(Настройки.СтандартныеИнтервалы); + + Возврат Настройки; +КонецФункции + // Возвращает стандартные расписания для периодических напоминаний. -Функция ПолучитьСтандартныеРасписанияДляНапоминания() Экспорт +Функция ПолучитьСтандартныеРасписанияДляНапоминания() Результат = Новый Соответствие; @@ -90,9 +150,6 @@ Расписание.ВремяНачала = '00010101090000'; Результат.Вставить(НСтр("ru = 'каждый день, в 9:00'"), Расписание); - // для изменения списка - НапоминанияПользователяКлиентСерверПереопределяемый.ПриПолученииСтандартныхРасписанийДляНапоминания(Результат); - Возврат Результат; КонецФункции @@ -128,12 +185,14 @@ Функция ПолучитьБлижайшуюДатуСобытияПоРасписанию(Расписание, ПредыдущаяДата = '000101010000') Экспорт Результат = Неопределено; + ТекущаяДатаСеанса = ТекущаяДатаСеанса(); ДатаОтсчета = ПредыдущаяДата; Если Не ЗначениеЗаполнено(ДатаОтсчета) Тогда - ДатаОтсчета = ТекущаяДатаСеанса(); + ДатаОтсчета = ТекущаяДатаСеанса; КонецЕсли; - + ДатаОтсчета = Макс(ДатаОтсчета, ТекущаяДатаСеанса); + Календарь = ПолучитьКалендарьНаБудущее(365*4+1, ДатаОтсчета, Расписание.ДатаНачала, Расписание.ПериодПовтораДней, Расписание.ПериодНедель); ДниНедели = Расписание.ДниНедели; @@ -219,10 +278,9 @@ Если Выборка.Следующий() Тогда БлижайшаяДата = Выборка.Дата; - ВремяОтсчета = '00010101'; - Если НачалоДня(БлижайшаяДата) = НачалоДня(ТекущаяДатаСеанса()) Тогда - ВремяОтсчета = ВремяОтсчета + (ТекущаяДатаСеанса()-НачалоДня(ТекущаяДатаСеанса())); + Если НачалоДня(БлижайшаяДата) = НачалоДня(ДатаОтсчета) Тогда + ВремяОтсчета = ВремяОтсчета + (ДатаОтсчета-НачалоДня(ДатаОтсчета)); КонецЕсли; БлижайшееВремя = ПолучитьБлижайшееВремяИзРасписания(Расписание, ВремяОтсчета); @@ -438,7 +496,8 @@ | Напоминания.СпособУстановкиВремениНапоминания, | Напоминания.ИнтервалВремениНапоминания, | Напоминания.ИмяРеквизитаИсточника, - | Напоминания.Расписание + | Напоминания.Расписание, + | ЛОЖЬ КАК ПовторятьЕжегодно |ИЗ | РегистрСведений.НапоминанияПользователя КАК Напоминания |ГДЕ @@ -452,10 +511,17 @@ Для Каждого СтрокаТаблицы Из ТаблицаРезультата Цикл ДатаПредмета = ПолучитьЗначениеРеквизитаПредмета(СтрокаТаблицы.Источник, СтрокаТаблицы.ИмяРеквизитаИсточника); Если (ДатаПредмета - СтрокаТаблицы.ИнтервалВремениНапоминания) <> СтрокаТаблицы.ВремяСобытия Тогда - ОтключитьНапоминание(СтрокаТаблицы); + ОтключитьНапоминание(СтрокаТаблицы, Ложь); СтрокаТаблицы.СрокНапоминания = ДатаПредмета - СтрокаТаблицы.ИнтервалВремениНапоминания; СтрокаТаблицы.ВремяСобытия = ДатаПредмета; - ПодключитьНапоминание(СтрокаТаблицы); + Если СтрокаТаблицы.Расписание.Получить() <> Неопределено Тогда + СтрокаТаблицы.ПовторятьЕжегодно = Истина; + КонецЕсли; + + ПараметрыНапоминания = ОбщегоНазначения.СтрокаТаблицыЗначенийВСтруктуру(СтрокаТаблицы); + ПараметрыНапоминания.Расписание = СтрокаТаблицы.Расписание.Получить(); + Напоминание = СоздатьНапоминание(ПараметрыНапоминания); + ПодключитьНапоминание(Напоминание); КонецЕсли; КонецЦикла; КонецПроцедуры @@ -483,19 +549,26 @@ НаборЗаписей = РегистрыСведений.НапоминанияПользователя.СоздатьНаборЗаписей(); НаборЗаписей.Отбор.Пользователь.Установить(ПараметрыНапоминания.Пользователь); НаборЗаписей.Отбор.Источник.Установить(ПараметрыНапоминания.Источник); - НаборЗаписей.Отбор.ВремяСобытия.Установить(ПараметрыНапоминания.ВремяСобытия); - НаборЗаписей.Прочитать(); - - Если НаборЗаписей.Количество() = 0 Тогда - Если Не ОбновитьСрокНапоминания Тогда - НоваяЗапись = НаборЗаписей.Добавить(); - ЗаполнитьЗначенияСвойств(НоваяЗапись, ПараметрыНапоминания); + Если ОбновитьСрокНапоминания Тогда + НаборЗаписей.Отбор.ВремяСобытия.Установить(ПараметрыНапоминания.ВремяСобытия); + НаборЗаписей.Прочитать(); + Если НаборЗаписей.Количество() = 0 Тогда + Возврат; КонецЕсли; - Иначе Для Каждого Запись Из НаборЗаписей Цикл - ЗаполнитьЗначенияСвойств(Запись, ПараметрыНапоминания,,?(ОбновитьСрокНапоминания,"","СрокНапоминания")); + ЗаполнитьЗначенияСвойств(Запись, ПараметрыНапоминания); КонецЦикла; + Иначе + НаборЗаписей.Прочитать(); + Если НаборЗаписей.Количество() > 0 Тогда + ЗанятоеВремя = НаборЗаписей.Выгрузить(,"ВремяСобытия").ВыгрузитьКолонку("ВремяСобытия"); + Пока ЗанятоеВремя.Найти(ПараметрыНапоминания.ВремяСобытия) <> Неопределено Цикл + ПараметрыНапоминания.ВремяСобытия = ПараметрыНапоминания.ВремяСобытия + 1; + КонецЦикла; + КонецЕсли; + НоваяЗапись = НаборЗаписей.Добавить(); + ЗаполнитьЗначенияСвойств(НоваяЗапись, ПараметрыНапоминания); КонецЕсли; НаборЗаписей.Записать(); @@ -516,7 +589,9 @@ | НапоминанияПользователя.СрокНапоминания, | НапоминанияПользователя.Описание, | НапоминанияПользователя.СпособУстановкиВремениНапоминания, - | НапоминанияПользователя.Расписание + | НапоминанияПользователя.Расписание, + | НапоминанияПользователя.ИнтервалВремениНапоминания, + | НапоминанияПользователя.ИмяРеквизитаИсточника |ИЗ | РегистрСведений.НапоминанияПользователя КАК НапоминанияПользователя |ГДЕ @@ -549,28 +624,32 @@ // Подключаем следующее напоминание по расписанию. Если ПодключатьПоРасписанию И Напоминание <> Неопределено Тогда - Если Напоминание.СпособУстановкиВремениНапоминания = ПредопределенноеЗначение("Перечисление.СпособыУстановкиВремениНапоминания.Периодически") Тогда - Расписание = Напоминание.Расписание.Получить(); + Расписание = Напоминание.Расписание.Получить(); + Если Расписание <> Неопределено Тогда Если Расписание.ПериодПовтораДней > 0 Тогда - СледующаяДатаПоРасписанию = ПолучитьБлижайшуюДатуСобытияПоРасписанию(Расписание); + СледующаяДатаПоРасписанию = ПолучитьБлижайшуюДатуСобытияПоРасписанию(Расписание, ПараметрыНапоминания.ВремяСобытия + 1); КонецЕсли; ОпределенаСледующаяДатаПоРасписанию = СледующаяДатаПоРасписанию <> Неопределено; КонецЕсли; Если ОпределенаСледующаяДатаПоРасписанию Тогда Напоминание.ВремяСобытия = СледующаяДатаПоРасписанию; - Напоминание.СрокНапоминания = Напоминание.ВремяСобытия; + Напоминание.СрокНапоминания = Напоминание.ВремяСобытия - Напоминание.ИнтервалВремениНапоминания; ПодключитьНапоминание(Напоминание); КонецЕсли; КонецЕсли; КонецПроцедуры -// Создает новое напоминание на указанное время. -Функция ПодключитьНапоминаниеВУказанноеВремя(Текст, Время, Предмет = Неопределено) Экспорт +Функция ПодключитьПроизвольноеНапоминание(Текст, ВремяСобытия = Неопределено, ИнтервалДоСобытия = 0, Предмет = Неопределено) Экспорт ПараметрыНапоминания = Новый Структура; ПараметрыНапоминания.Вставить("Описание", Текст); - ПараметрыНапоминания.Вставить("ВремяСобытия", Время); + Если ТипЗнч(ВремяСобытия) = Тип("РасписаниеРегламентногоЗадания") Тогда + ПараметрыНапоминания.Вставить("Расписание", ВремяСобытия); + Иначе + ПараметрыНапоминания.Вставить("ВремяСобытия", ВремяСобытия); + КонецЕсли; + ПараметрыНапоминания.Вставить("ИнтервалВремениНапоминания", ИнтервалДоСобытия); ПараметрыНапоминания.Вставить("Источник", Предмет); Напоминание = СоздатьНапоминание(ПараметрыНапоминания); @@ -579,13 +658,13 @@ Возврат Напоминание; КонецФункции -// Создает новое напоминание на время, рассчитанное относительно времени в предмете. -Функция ПодключитьНапоминаниеДоВремениПредмета(Текст, Интервал, Предмет, ИмяРеквизита) Экспорт +Функция ПодключитьНапоминаниеДоВремениПредмета(Текст, Интервал, Предмет, ИмяРеквизита, ПовторятьЕжегодно = Ложь) Экспорт ПараметрыНапоминания = Новый Структура; ПараметрыНапоминания.Вставить("Описание", Текст); ПараметрыНапоминания.Вставить("Источник", Предмет); ПараметрыНапоминания.Вставить("ИмяРеквизитаИсточника", ИмяРеквизита); ПараметрыНапоминания.Вставить("ИнтервалВремениНапоминания", Интервал); + ПараметрыНапоминания.Вставить("ПовторятьЕжегодно", ПовторятьЕжегодно); Напоминание = СоздатьНапоминание(ПараметрыНапоминания); ПодключитьНапоминание(Напоминание); @@ -593,10 +672,25 @@ Возврат Напоминание; КонецФункции +Функция ЕжегодноеРасписание(ДатаСобытия) + Месяцы = Новый Массив; + Месяцы.Добавить(Месяц(ДатаСобытия)); + ДеньВМесяце = День(ДатаСобытия); + + Расписание = Новый РасписаниеРегламентногоЗадания; + Расписание.ПериодПовтораДней = 1; + Расписание.ПериодНедель = 1; + Расписание.Месяцы = Месяцы; + Расписание.ДеньВМесяце = ДеньВМесяце; + Расписание.ВремяНачала = '000101010000' + (ДатаСобытия - НачалоДня(ДатаСобытия)); + + Возврат Расписание; +КонецФункции + // Возвращает структуру нового напоминания для последующего подключения. Функция СоздатьНапоминание(ПараметрыНапоминания) - Напоминание = НапоминанияПользователяКлиентСервер.ПолучитьСтруктуруНапоминания(ПараметрыНапоминания, Истина); + Напоминание = НапоминанияПользователяКлиентСервер.ОписаниеНапоминания(ПараметрыНапоминания, Истина); Если Не ЗначениеЗаполнено(Напоминание.Пользователь) Тогда Напоминание.Пользователь = ПользователиКлиентСервер.ТекущийПользователь(); @@ -605,6 +699,10 @@ Если Не ЗначениеЗаполнено(Напоминание.СпособУстановкиВремениНапоминания) Тогда Если ЗначениеЗаполнено(Напоминание.Источник) И Не ПустаяСтрока(Напоминание.ИмяРеквизитаИсточника) Тогда Напоминание.СпособУстановкиВремениНапоминания = Перечисления.СпособыУстановкиВремениНапоминания.ОтносительноВремениПредмета; + ИначеЕсли Напоминание.Расписание <> Неопределено Тогда + Напоминание.СпособУстановкиВремениНапоминания = Перечисления.СпособыУстановкиВремениНапоминания.Периодически; + ИначеЕсли Не ЗначениеЗаполнено(Напоминание.ВремяСобытия) Тогда + Напоминание.СпособУстановкиВремениНапоминания = Перечисления.СпособыУстановкиВремениНапоминания.ОтносительноТекущегоВремени; Иначе Напоминание.СпособУстановкиВремениНапоминания = Перечисления.СпособыУстановкиВремениНапоминания.ВУказанноеВремя; КонецЕсли; @@ -616,43 +714,29 @@ ИначеЕсли Напоминание.СпособУстановкиВремениНапоминания = Перечисления.СпособыУстановкиВремениНапоминания.ОтносительноТекущегоВремени Тогда Напоминание.СпособУстановкиВремениНапоминания = Перечисления.СпособыУстановкиВремениНапоминания.ВУказанноеВремя; Напоминание.ВремяСобытия = ТекущаяДатаСеанса() + Напоминание.ИнтервалВремениНапоминания; + ИначеЕсли Напоминание.СпособУстановкиВремениНапоминания = Перечисления.СпособыУстановкиВремениНапоминания.ВУказанноеВремя Тогда + Напоминание.СрокНапоминания = Напоминание.ВремяСобытия - Напоминание.ИнтервалВремениНапоминания; КонецЕсли; Если Не ЗначениеЗаполнено(Напоминание.СрокНапоминания) Тогда Напоминание.СрокНапоминания = Напоминание.ВремяСобытия; КонецЕсли; + Если Напоминание.ПовторятьЕжегодно Тогда + Если ЗначениеЗаполнено(Напоминание.ВремяСобытия) Тогда + Напоминание.Расписание = ЕжегодноеРасписание(Напоминание.ВремяСобытия); + КонецЕсли; + КонецЕсли; + + Если Напоминание.Расписание <> Неопределено Тогда + Напоминание.ВремяСобытия = ПолучитьБлижайшуюДатуСобытияПоРасписанию(Напоминание.Расписание); + Напоминание.СрокНапоминания = Напоминание.ВремяСобытия - Напоминание.ИнтервалВремениНапоминания; + КонецЕсли; + + Напоминание.Расписание = Новый ХранилищеЗначения(Напоминание.Расписание, Новый СжатиеДанных(9)); + Возврат Напоминание; КонецФункции -//////////////////////////////////////////////////////////////////////////////// -// Обработчики служебных событий подсистем БСП. - -// Заполняет структуру параметров, необходимых для работы клиентского кода -// при запуске конфигурации. -// -// Параметры: -// Параметры - Структура - структура параметров запуска. -// -Процедура ПриДобавленииПараметровРаботыКлиентаПриЗапуске(Параметры) Экспорт - - Параметры.Вставить("НастройкиНапоминаний", - Новый ФиксированнаяСтруктура("ИспользоватьНапоминания", ПолучитьНастройкиНапоминаний().ИспользоватьНапоминания)); - -КонецПроцедуры - -// Заполняет структуру параметров, необходимых для работы клиентского кода -// конфигурации. -// -// Параметры: -// Параметры - Структура - структура параметров. -// -Процедура ПриДобавленииПараметровРаботыКлиента(Параметры) Экспорт - - Параметры.Вставить("НастройкиНапоминаний", - Новый ФиксированнаяСтруктура(ПолучитьНастройкиНапоминаний())); - -КонецПроцедуры - #КонецОбласти diff --git a/SSL/src/CommonModules/НастройкаПорядкаЭлементовСлужебный/Module.bsl b/SSL/src/CommonModules/НастройкаПорядкаЭлементовСлужебный/Module.bsl index b1db4a324..86a813352 100644 --- a/SSL/src/CommonModules/НастройкаПорядкаЭлементовСлужебный/Module.bsl +++ b/SSL/src/CommonModules/НастройкаПорядкаЭлементовСлужебный/Module.bsl @@ -3,12 +3,11 @@ // //////////////////////////////////////////////////////////////////////////////// -#Область СлужебныйПрограммныйИнтерфейс +#Область СлужебныеПроцедурыИФункции - -// Для внутреннего использования +// Для внутреннего использования. // -Функция СоседнийЭлемент(ПеремещаемыйЭлемент, Список, Знач Направление) Экспорт +Функция СоседнийЭлемент(ПеремещаемыйЭлемент, Список, Знач Направление) // Подготовка текста запроса к основной таблице списка. @@ -70,7 +69,7 @@ Параметр.Ключ, Параметр.Значение); КонецЦикла; - // Проверка доступности полей в отборе + // Проверка доступности полей в отборе. Если Не ПоляОтбораВСпискеДоступных(КомпоновщикНастроекКомпоновкиДанных.ПолучитьНастройки().Отбор.Элементы, КомпоновщикНастроекКомпоновкиДанных.ПолучитьНастройки().Отбор.ДоступныеПоляОтбора.Элементы) Тогда ВызватьИсключение НСтр("ru = 'Для перемещения элемента необходимо отключить все отборы в списке.'"); КонецЕсли; @@ -99,11 +98,6 @@ КонецФункции -#КонецОбласти - - -#Область СлужебныеПроцедурыИФункции - // Выполняет перемещение элемента вверх или вниз по списку. // // Параметры: diff --git a/SSL/src/CommonModules/НастройкаРазрешенийНаИспользованиеВнешнихРесурсовКлиент/Module.bsl b/SSL/src/CommonModules/НастройкаРазрешенийНаИспользованиеВнешнихРесурсовКлиент/Module.bsl index 17ad5f396..ef46efe2a 100644 --- a/SSL/src/CommonModules/НастройкаРазрешенийНаИспользованиеВнешнихРесурсовКлиент/Module.bsl +++ b/SSL/src/CommonModules/НастройкаРазрешенийНаИспользованиеВнешнихРесурсовКлиент/Module.bsl @@ -5,52 +5,6 @@ // //////////////////////////////////////////////////////////////////////////////// -#Область СлужебныйПрограммныйИнтерфейс - -// Планирует (с помощью подмены значения свойства формы ОписаниеОповещенияОЗакрытии) вызов мастера -// для проверки завершения операции после закрытия формы, из которой мастер вызывался. -// -// Параметры: -// ФормаВладелец - УправляемаяФорма или Неопределено - форма, после закрытия которой требуется выполнить -// проверку завершения операций, в рамках которых ранее применялись запросы разрешений на использование -// внешних ресурсов, -// ИдентификаторыЗапросов - Массив(УникальныйИдентификатор) - идентификаторы запросов разрешений на -// использование внешних ресурсов, которые были применены в рамках операции, завершение которой проверяется. -// -// Результатом выполнения данной процедуры является вызов процедуры. -// ПроверкаПримененияРазрешенийПослеЗакрытияФормыВладельца() после закрытия формы, для которой в псевдо-модальном -// режиме открывался мастер настройки разрешений на использование внешних ресурсов. -// -Процедура ЗапланироватьПроверкуПримененияРазрешенийПослеЗакрытияФормыВладельца(ВладелецФормы, ИдентификаторыЗапросов) Экспорт - - Если ТипЗнч(ВладелецФормы) = Тип("УправляемаяФорма") Тогда - - ИсходноеОписаниеОповещения = ВладелецФормы.ОписаниеОповещенияОЗакрытии; - Если ИсходноеОписаниеОповещения <> Неопределено Тогда - - Если ИсходноеОписаниеОповещения.Модуль = НастройкаРазрешенийНаИспользованиеВнешнихРесурсовКлиент - И ИсходноеОписаниеОповещения.ИмяПроцедуры = "ПроверкаПримененияРазрешенийПослеЗакрытияФормыВладельца" Тогда - Возврат; - КонецЕсли; - - КонецЕсли; - - Состояние = СостояниеПроверкиПримененияРазрешенийПослеЗакрытияФормыВладельца(); - Состояние.ОписаниеОповещения = ИсходноеОписаниеОповещения; - - ОписаниеОповещенияПроверкиПримененияРазрешений = Новый ОписаниеОповещения( - "ПроверкаПримененияРазрешенийПослеЗакрытияФормыВладельца", - НастройкаРазрешенийНаИспользованиеВнешнихРесурсовКлиент, - Состояние); - - ВладелецФормы.ОписаниеОповещенияОЗакрытии = ОписаниеОповещенияПроверкиПримененияРазрешений; - - КонецЕсли; - -КонецПроцедуры - -#КонецОбласти - #Область СлужебныеПроцедурыИФункции //////////////////////////////////////////////////////////////////////////////// @@ -638,4 +592,46 @@ КонецФункции +// Планирует (с помощью подмены значения свойства формы ОписаниеОповещенияОЗакрытии) вызов мастера +// для проверки завершения операции после закрытия формы, из которой мастер вызывался. +// +// Параметры: +// ФормаВладелец - УправляемаяФорма или Неопределено - форма, после закрытия которой требуется выполнить +// проверку завершения операций, в рамках которых ранее применялись запросы разрешений на использование +// внешних ресурсов, +// ИдентификаторыЗапросов - Массив(УникальныйИдентификатор) - идентификаторы запросов разрешений на +// использование внешних ресурсов, которые были применены в рамках операции, завершение которой проверяется. +// +// Результатом выполнения данной процедуры является вызов процедуры. +// ПроверкаПримененияРазрешенийПослеЗакрытияФормыВладельца() после закрытия формы, для которой в псевдо-модальном +// режиме открывался мастер настройки разрешений на использование внешних ресурсов. +// +Процедура ЗапланироватьПроверкуПримененияРазрешенийПослеЗакрытияФормыВладельца(ВладелецФормы, ИдентификаторыЗапросов) + + Если ТипЗнч(ВладелецФормы) = Тип("УправляемаяФорма") Тогда + + ИсходноеОписаниеОповещения = ВладелецФормы.ОписаниеОповещенияОЗакрытии; + Если ИсходноеОписаниеОповещения <> Неопределено Тогда + + Если ИсходноеОписаниеОповещения.Модуль = НастройкаРазрешенийНаИспользованиеВнешнихРесурсовКлиент + И ИсходноеОписаниеОповещения.ИмяПроцедуры = "ПроверкаПримененияРазрешенийПослеЗакрытияФормыВладельца" Тогда + Возврат; + КонецЕсли; + + КонецЕсли; + + Состояние = СостояниеПроверкиПримененияРазрешенийПослеЗакрытияФормыВладельца(); + Состояние.ОписаниеОповещения = ИсходноеОписаниеОповещения; + + ОписаниеОповещенияПроверкиПримененияРазрешений = Новый ОписаниеОповещения( + "ПроверкаПримененияРазрешенийПослеЗакрытияФормыВладельца", + НастройкаРазрешенийНаИспользованиеВнешнихРесурсовКлиент, + Состояние); + + ВладелецФормы.ОписаниеОповещенияОЗакрытии = ОписаниеОповещенияПроверкиПримененияРазрешений; + + КонецЕсли; + +КонецПроцедуры + #КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/ОбменДаннымиXDTOСервер/Module.bsl b/SSL/src/CommonModules/ОбменДаннымиXDTOСервер/Module.bsl index bf1f7a55a..c0d7f3cb8 100644 --- a/SSL/src/CommonModules/ОбменДаннымиXDTOСервер/Module.bsl +++ b/SSL/src/CommonModules/ОбменДаннымиXDTOСервер/Module.bsl @@ -180,7 +180,7 @@ КомпонентыОбмена.ВедениеПротоколаДанных.ФайлПротоколаДанных = Новый ЗаписьТекста( ИмяФайлаПротоколаОбмена, КодировкаТекста.ANSI,, - КомпонентыОбмена.ВедениеПротоколаОбмена.ДописыватьДанныеВПротоколОбмена); + КомпонентыОбмена.ВедениеПротоколаДанных.ДописыватьДанныеВПротоколОбмена); Исключение СтрокаСообщения = НСтр("ru = 'Ошибка при попытке записи в файл протокола данных: %1. Описание ошибки: %2'", @@ -378,7 +378,7 @@ Попытка КомпонентыОбмена.МенеджерОбмена.ПередКонвертацией(КомпонентыОбмена); Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Обработчик: ПередКонвертацией. | |Ошибка выполнения обработчика. @@ -446,7 +446,7 @@ Попытка КомпонентыОбмена.МенеджерОбмена.ПослеКонвертации(КомпонентыОбмена); Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Обработчик: ПослеКонвертации. | |Ошибка выполнения обработчика. @@ -492,7 +492,7 @@ Попытка ПравилоОбработки = ПОДПоОбъектуМетаданных(КомпонентыОбмена, ОбъектМетаданныхТекущий); Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Объект: %2. | |%3.'"), @@ -587,7 +587,7 @@ // 4. Записываем ОбъектXDTO в XML-файл. ФабрикаXDTO.ЗаписатьXML(ЗаписьXML, ОбъектXDTO); Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |ПОД: %2. |ПКО: %3. |Объект: %4. @@ -669,7 +669,7 @@ КонецЕсли; Иначе - ТекстОшибки = СтрШаблон(НСтр("ru = 'Неизвестный тип свойства <%1>. Тип объекта: %2'"), Свойство.Имя, Строка(ТипXDTO)); + ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Неизвестный тип свойства <%1>. Тип объекта: %2'"), Свойство.Имя, Строка(ТипXDTO)); ВызватьИсключение ТекстОшибки; КонецЕсли; @@ -795,7 +795,7 @@ КонецЕсли; Исключение ПредставлениеОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); - ТекстОшибки = СтрШаблон(НСтр("ru = 'Ошибка формирования объекта XDTO: Тип свойства <%1>. Имя свойства: <%2>.'"), ТипСвойства, Свойство.Имя) + ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка формирования объекта XDTO: Тип свойства <%1>. Имя свойства: <%2>.'"), ТипСвойства, Свойство.Имя) + Символы.ПС + Символы.ПС + ПредставлениеОшибки; ВызватьИсключение ТекстОшибки; КонецПопытки; @@ -917,10 +917,14 @@ КонецЕсли; // Выполняем конвертацию, если в свойство помещена инструкция. + ЗначениеСвойства = Неопределено; Если СтекВыгрузки.Количество() = 1 И ПКС.ОбработкаКлючевогоСвойства Тогда - ЗначениеСвойства = Приемник.КлючевыеСвойства[ПКС.СвойствоФормата]; + Приемник.КлючевыеСвойства.Свойство(ПКС.СвойствоФормата, ЗначениеСвойства); Иначе - ЗначениеСвойства = Приемник[ПКС.СвойствоФормата]; + Приемник.Свойство(ПКС.СвойствоФормата, ЗначениеСвойства); + КонецЕсли; + Если ЗначениеСвойства = Неопределено Тогда + Продолжить; КонецЕсли; Если ПКС.ИспользуетсяАлгоритмКонвертации Тогда @@ -1138,10 +1142,11 @@ ДанныеИБ = Неопределено; ПолученныеДанные = ИнициализироватьПолученныеДанные(ПравилоКонвертации); - ПолученныеДанныеСсылка = ПолученныеДанные.Ссылка; СоставСвойств = "Все"; + ПолученныеДанныеСсылка = Неопределено; ДанныеXDTOСодержатСсылку = ДанныеXDTO.Свойство("Ссылка"); Если ПравилоКонвертации.ЭтоСсылочныйТип Тогда + ПолученныеДанныеСсылка = ПолученныеДанные.Ссылка; ВариантИдентификации = СокрЛП(ПравилоКонвертации.ВариантИдентификации); Если ДанныеXDTOСодержатСсылку И (ВариантИдентификации = "ПоУникальномуИдентификатору" @@ -1154,22 +1159,23 @@ ПолученныеДанные.УстановитьСсылкуНового(ПолученныеДанныеСсылка); + ДанныеИБ = ПолученныеДанныеСсылка.ПолучитьОбъект(); + Если Действие = "ПолучитьСсылку" Тогда - Если ВариантИдентификации = "ПоУникальномуИдентификатору" Тогда + Если ДанныеИБ <> Неопределено Тогда + // Задача: получение ссылки. + // Идентификация: по УИД или УИД + поля поиска. + // Объект с полученной ссылкой (или с таким публичным идентификатором) существует. + Возврат ДанныеИБ.Ссылка; + ИначеЕсли ВариантИдентификации = "ПоУникальномуИдентификатору" Тогда // Задача: получение ссылки. // Идентификация: по УИД. // Объект с полученной ссылкой (или с таким публичным идентификатором) не найден. Возврат ПолученныеДанныеСсылка; - ИначеЕсли ОбщегоНазначения.СсылкаСуществует(ПолученныеДанныеСсылка) Тогда - // Задача: получение ссылки. - // Идентификация: по УИД или УИД + поля поиска. - // Объект с полученной ссылкой (или с таким публичным идентификатором) существует. - Возврат ПолученныеДанныеСсылка; КонецЕсли; КонецЕсли; - Иначе ПолученныеДанныеСсылка = ПравилоКонвертации.МенеджерОбъекта.ПолучитьСсылку(Новый УникальныйИдентификатор()); ПолученныеДанные.УстановитьСсылкуНового(ПолученныеДанныеСсылка); @@ -1210,7 +1216,7 @@ СоставСвойств); // В результате конвертации свойств объект мог быть записан в случае наличия циклической ссылки. - Если ОбщегоНазначения.СсылкаСуществует(ПолученныеДанныеСсылка) Тогда + Если ПолученныеДанныеСсылка <> Неопределено И ОбщегоНазначения.СсылкаСуществует(ПолученныеДанныеСсылка) Тогда ДанныеИБ = ПолученныеДанныеСсылка.ПолучитьОбъект(); КонецЕсли; @@ -1273,7 +1279,22 @@ КонецЕсли; - Если ПравилоКонвертации.ЕстьОбработчикПередЗаписьюПолученныхДанных Тогда + ЭтоПолнаяЗагрузкаОбъекта = Действие = "КонвертироватьИЗаписать" + Или ПравилоКонвертации.РазрешитьСоздаватьОбъектИзСтруктуры; + + Если ЭтоПолнаяЗагрузкаОбъекта + И ПравилоКонвертации.ЕстьОбработчикПередЗаписьюПолученныхДанных Тогда + + // Полноценная загрузка объекта, удаление временного объекта. + Если ДанныеИБ <> Неопределено Тогда + СтрокаОбъекта = КомпонентыОбмена.ТаблицаОбъектовСозданныхПоСсылкам.Найти(ДанныеИБ.Ссылка, "СсылкаНаОбъект"); + Если СтрокаОбъекта <> Неопределено Тогда + ОбменДаннымиСервер.УстановитьОбменДаннымиЗагрузка(ДанныеИБ, Истина, Ложь, КомпонентыОбмена.УзелКорреспондента); + УдалитьОбъект(ДанныеИБ, Истина); + ДанныеИБ = Неопределено; + ПолученныеДанные.УстановитьСсылкуНового(СтрокаОбъекта.СсылкаНаОбъект); + КонецЕсли; + КонецЕсли; ПередЗаписьюПолученныхДанных( ПолученныеДанные, @@ -1292,7 +1313,7 @@ КонецЕсли; ДанныеДляЗаписиВИБ = ДанныеИБ; КонецЕсли; - Если ПравилоКонвертации.ЭтоСсылочныйТип Тогда + Если ПравилоКонвертации.ЭтоСсылочныйТип И ЭтоПолнаяЗагрузкаОбъекта Тогда ПровестиГенерациюКодаНомераПриНеобходимости(ДанныеДляЗаписиВИБ); КонецЕсли; Если КомпонентыОбмена.ЭтоОбменЧерезПланОбмена И НЕ ПравилоКонвертации.ЭтоРегистр Тогда @@ -1318,29 +1339,35 @@ Если ПравилоКонвертации.ЭтоДокумент Тогда Попытка - - Если ДанныеДляЗаписиВИБ.Проведен Тогда - - ДанныеДляЗаписиВИБ.Проведен = Ложь; - Если Не ДанныеДляЗаписиВИБ.ЭтоНовый() - И ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДанныеДляЗаписиВИБ.Ссылка, "Проведен") Тогда - // Записываем новую версию документа с отменой проведения. - Результат = ОтменитьПроведениеОбъектаВИБ(ДанныеДляЗаписиВИБ, КомпонентыОбмена.УзелКорреспондента); + + Если ПравилоКонвертации.ДокументМожетПроводиться Тогда + + Если ДанныеДляЗаписиВИБ.Проведен Тогда + + ДанныеДляЗаписиВИБ.Проведен = Ложь; + Если Не ДанныеДляЗаписиВИБ.ЭтоНовый() + И ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДанныеДляЗаписиВИБ.Ссылка, "Проведен") Тогда + // Записываем новую версию документа с отменой проведения. + Результат = ОтменитьПроведениеОбъектаВИБ(ДанныеДляЗаписиВИБ, КомпонентыОбмена.УзелКорреспондента); + Иначе + // Записываем новую версию документа. + ЗаписатьОбъектВИБ(КомпонентыОбмена, ДанныеДляЗаписиВИБ, ПравилоКонвертации.ТипДанных); + КонецЕсли; + + СтрокаТаблицы = КомпонентыОбмена.ДокументыДляОтложенногоПроведения.Добавить(); + СтрокаТаблицы.ДокументСсылка = ДанныеДляЗаписиВИБ.Ссылка; + СтрокаТаблицы.ДатаДокумента = ДанныеДляЗаписиВИБ.Дата; + Иначе - // Записываем новую версию документа. - ЗаписатьОбъектВИБ(КомпонентыОбмена, ДанныеДляЗаписиВИБ, ПравилоКонвертации.ТипДанных); + Если ДанныеДляЗаписиВИБ.ЭтоНовый() Тогда + ЗаписатьОбъектВИБ(КомпонентыОбмена, ДанныеДляЗаписиВИБ, ПравилоКонвертации.ТипДанных); + Иначе + ОтменитьПроведениеОбъектаВИБ(ДанныеДляЗаписиВИБ, КомпонентыОбмена.УзелКорреспондента); + КонецЕсли; КонецЕсли; - СтрокаТаблицы = КомпонентыОбмена.ДокументыДляОтложенногоПроведения.Добавить(); - СтрокаТаблицы.ДокументСсылка = ДанныеДляЗаписиВИБ.Ссылка; - СтрокаТаблицы.ДатаДокумента = ДанныеДляЗаписиВИБ.Дата; - Иначе - Если ДанныеДляЗаписиВИБ.ЭтоНовый() Тогда - ЗаписатьОбъектВИБ(КомпонентыОбмена, ДанныеДляЗаписиВИБ, ПравилоКонвертации.ТипДанных); - Иначе - ОтменитьПроведениеОбъектаВИБ(ДанныеДляЗаписиВИБ, КомпонентыОбмена.УзелКорреспондента); - КонецЕсли; + ЗаписатьОбъектВИБ(КомпонентыОбмена, ДанныеДляЗаписиВИБ, ПравилоКонвертации.ТипДанных); КонецЕсли; Исключение @@ -1367,33 +1394,34 @@ КонецЕсли; - // Объекты, создаваемые по ссылке, запоминаем в таблицу, - // чтобы после загрузки всех данных удалить объекты, - // которые так и не были загружены полностью ("временные объекты"). - // При загрузке объектов "целиком" удаляем объекты из таблицы, - // переводя их из состояния "временных" в "постоянные". - ТаблицаОбъектовСозданныхПоСсылкам = КомпонентыОбмена.ТаблицаОбъектовСозданныхПоСсылкам; - - Если Действие = "ПолучитьСсылку" И ЗаписыватьОбъектВИБ - И Не ПравилоКонвертации.РазрешитьСоздаватьОбъектИзСтруктуры Тогда - - СтрокаОбъекта = ТаблицаОбъектовСозданныхПоСсылкам.Найти(ДанныеДляЗаписиВИБ.Ссылка, "СсылкаНаОбъект"); - - Если СтрокаОбъекта = Неопределено Тогда - НоваяСтрока = ТаблицаОбъектовСозданныхПоСсылкам.Добавить(); - НоваяСтрока.СсылкаНаОбъект = ДанныеДляЗаписиВИБ.Ссылка; + Если ПравилоКонвертации.ЭтоСсылочныйТип Тогда + // Объекты, создаваемые по ссылке, запоминаем в таблицу, + // чтобы после загрузки всех данных удалить объекты, + // которые так и не были загружены полностью ("временные объекты"). + // При загрузке объектов "целиком" удаляем объекты из таблицы, + // переводя их из состояния "временных" в "постоянные". + ТаблицаОбъектовСозданныхПоСсылкам = КомпонентыОбмена.ТаблицаОбъектовСозданныхПоСсылкам; + + Если Действие = "ПолучитьСсылку" И ЗаписыватьОбъектВИБ + И Не ПравилоКонвертации.РазрешитьСоздаватьОбъектИзСтруктуры Тогда + + СтрокаОбъекта = ТаблицаОбъектовСозданныхПоСсылкам.Найти(ДанныеДляЗаписиВИБ.Ссылка, "СсылкаНаОбъект"); + + Если СтрокаОбъекта = Неопределено Тогда + НоваяСтрока = ТаблицаОбъектовСозданныхПоСсылкам.Добавить(); + НоваяСтрока.СсылкаНаОбъект = ДанныеДляЗаписиВИБ.Ссылка; + КонецЕсли; + + ИначеЕсли Действие = "КонвертироватьИЗаписать" Тогда + + СтрокаОбъекта = ТаблицаОбъектовСозданныхПоСсылкам.Найти(ДанныеДляЗаписиВИБ.Ссылка, "СсылкаНаОбъект"); + + Если СтрокаОбъекта <> Неопределено Тогда + ТаблицаОбъектовСозданныхПоСсылкам.Удалить(СтрокаОбъекта); + КонецЕсли; + КонецЕсли; - - ИначеЕсли Действие = "КонвертироватьИЗаписать" Тогда - - СтрокаОбъекта = ТаблицаОбъектовСозданныхПоСсылкам.Найти(ДанныеДляЗаписиВИБ.Ссылка, "СсылкаНаОбъект"); - - Если СтрокаОбъекта <> Неопределено Тогда - ТаблицаОбъектовСозданныхПоСсылкам.Удалить(СтрокаОбъекта); - КонецЕсли; - КонецЕсли; - Возврат ДанныеДляЗаписиВИБ; КонецФункции @@ -1423,7 +1451,7 @@ Попытка КомпонентыОбмена.МенеджерОбмена.ПередКонвертацией(КомпонентыОбмена); Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Обработчик: ПередКонвертацией. | |Ошибка выполнения обработчика. @@ -1582,7 +1610,7 @@ КонецЕсли; Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Объект XDTO: %2. | |%3'"), @@ -1603,7 +1631,7 @@ Попытка КомпонентыОбмена.МенеджерОбмена.ПослеКонвертации(КомпонентыОбмена); Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Обработчик: ПослеКонвертации. | |Ошибка выполнения обработчика. @@ -1643,7 +1671,7 @@ Попытка КомпонентыОбмена.МенеджерОбмена.ПередКонвертацией(КомпонентыОбмена); Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Обработчик: ПередКонвертацией. | |Ошибка выполнения обработчика. @@ -1678,7 +1706,7 @@ ПравилоОбработки = ПОДПоТипуОбъектаXDTO(КомпонентыОбмена, ОбъектXDTO.Тип().Имя, Истина); Если Не ЗначениеЗаполнено(ПравилоОбработки) Тогда - Возврат; + Продолжить; КонецЕсли; // Конвертируем ОбъектXDTO в Структуру. @@ -1720,7 +1748,7 @@ СтрокаТаблицы.ПоляТаблицы = СтрСоединить(ПравилоКонвертации.РеквизитыШапкиПолученныхДанных, ","); СтрокаТаблицы.СинхронизироватьПоИдентификатору = СинхронизироватьПоИдентификатору; - + СтрокаТаблицы.ИспользоватьПредварительныйПросмотр = СтрокаТаблицы.СинхронизироватьПоИдентификатору; СтрокаТаблицы.ЭтоКлассификатор = ПравилоКонвертации.ВариантИдентификации = "СначалаПоУникальномуИдентификаторуПотомПоПолямПоиска"; СтрокаТаблицы.ЭтоУдалениеОбъекта = Ложь; @@ -1742,7 +1770,7 @@ КонецЦикла; КонецЕсли; Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Объект XDTO: %2. | |%3'"), @@ -2080,10 +2108,11 @@ КонецФункции // Преобразует строковое представление УИД в ссылку на объект текущей информационной базы. -// Если объект с такой ссылкой существует, она возвращается в качестве результата. -// Если объекта с такой ссылкой нет, выполняется поиск УИД в регистре -// ПубличныеИдентификаторыСинхронизируемыхОбъектов. -// При удачном поиске возвращается ссылка из регистра, при неудачном возвращается изначальная ссылка. +// Сначала выполняется поиск УИД в регистре публичных идентификаторов. +// При удачном поиске возвращается ссылка из регистра, при неудачном +// возвращается либо ссылка с исходным УИД (если она еще не сопоставлена), +// либо выполняется генерация новой ссылки со случайным УИД. +// И в том и в другом случае в регистре публичных идентификаторов создается запись. // // Параметры: // УИДОбъектаXDTO - Строка - Уникальный идентификатор объекта XDTO, для которого необходимо @@ -2212,7 +2241,7 @@ ВыполнитьПроведениеДокументаПриЗагрузке(КомпонентыОбмена, Объект, Истина); - СтрокаТаблицы.ДокументПроведенУспешно = Не Объект.Проведен; + СтрокаТаблицы.ДокументПроведенУспешно = Объект.Проведен; КонецЦикла; @@ -2277,7 +2306,8 @@ Если Не ДокументПроведенУспешно Тогда - ОбменДаннымиСервер.ЗарегистрироватьОшибкуПроведенияДокумента(Объект, УзелКорреспондента, ОписаниеОшибки); + ОбменДаннымиСервер.ЗарегистрироватьОшибкуПроведенияДокумента( + Объект, УзелКорреспондента, ОписаниеОшибки, РегистрироватьПроблемыВРезультатахОбмена); КонецЕсли; @@ -2798,6 +2828,8 @@ ПравилаКонвертации.Колонки.Добавить("ЭтоПланВидовРасчета"); ПравилаКонвертации.Колонки.Добавить("ЭтоКонстанта"); + ПравилаКонвертации.Колонки.Добавить("ДокументМожетПроводиться", Новый ОписаниеТипов("Булево")); + ПравилаКонвертации.Колонки.Добавить("ЭтоСсылочныйТип"); ПравилаКонвертации.Колонки.Добавить("ЕстьОбработчикПриОтправкеДанных", Новый ОписаниеТипов("Булево")); @@ -2805,6 +2837,8 @@ ПравилаКонвертации.Колонки.Добавить("ЕстьОбработчикПередЗаписьюПолученныхДанных", Новый ОписаниеТипов("Булево")); ПравилаКонвертации.Колонки.Добавить("ЕстьОбработчикПослеЗагрузкиВсехДанных", Новый ОписаниеТипов("Булево")); + РазрешитьПроведениеДокумента = Метаданные.СвойстваОбъектов.Проведение.Разрешить; + КоличествоСтрок = ПравилаКонвертации.Количество(); Для НомерИтерации = 1 По КоличествоСтрок Цикл @@ -2869,12 +2903,6 @@ ИмяБазовогоТипа = ""; КонецЕсли; - Если ПравилоКонвертации.ОбъектДанных <> Неопределено Тогда - ПравилоКонвертации.ЭтоРегистр = ОбщегоНазначения.ЭтоРегистр(ПравилоКонвертации.ОбъектДанных); - Иначе - ПравилоКонвертации.ЭтоРегистр = Ложь; - КонецЕсли; - ПравилоКонвертации.ЭтоДокумент = (ИмяБазовогоТипа = ОбщегоНазначения.ИмяТипаДокументы()); ПравилоКонвертации.ЭтоСправочник = (ИмяБазовогоТипа = ОбщегоНазначения.ИмяТипаСправочники()); ПравилоКонвертации.ЭтоПеречисление = (ИмяБазовогоТипа = ОбщегоНазначения.ИмяТипаПеречисления()); @@ -2885,6 +2913,18 @@ ПравилоКонвертации.ЭтоПланВидовРасчета = (ИмяБазовогоТипа = ОбщегоНазначения.ИмяТипаПланыВидовРасчета()); ПравилоКонвертации.ЭтоКонстанта = (ИмяБазовогоТипа = ОбщегоНазначения.ИмяТипаКонстанты()); + Если ПравилоКонвертации.ОбъектДанных <> Неопределено Тогда + + Если ПравилоКонвертации.ЭтоДокумент Тогда + ПравилоКонвертации.ДокументМожетПроводиться = ПравилоКонвертации.ОбъектДанных.Проведение = РазрешитьПроведениеДокумента; + КонецЕсли; + + ПравилоКонвертации.ЭтоРегистр = ОбщегоНазначения.ЭтоРегистр(ПравилоКонвертации.ОбъектДанных); + + Иначе + ПравилоКонвертации.ЭтоРегистр = Ложь; + КонецЕсли; + ПравилоКонвертации.ЭтоСсылочныйТип = ПравилоКонвертации.ЭтоДокумент Или ПравилоКонвертации.ЭтоСправочник Или ПравилоКонвертации.ЭтоПланВидовХарактеристик @@ -3088,7 +3128,7 @@ КонецЕсли; Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Объект: %2. | |%3'"), @@ -3369,10 +3409,12 @@ Если ТипЗнч(Приемник) = Тип("Структура") Тогда Приемник.Вставить(ИмяСвойства, Значение); Иначе + Если ТипЗнч(Приемник) = Тип("СтрокаТаблицыЗначений") И Приемник.Владелец().Колонки.Найти(ИмяСвойства) = Неопределено Тогда Возврат; КонецЕсли; + Приемник[ИмяСвойства] = Значение; КонецЕсли; @@ -3454,7 +3496,7 @@ КонецЕсли; Исключение ПредставлениеОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); - ТекстОшибки = СтрШаблон(НСтр("ru = 'Ошибка чтения объекта XDTO, имя свойства: <%1>.'"), ИмяСвойства) + ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка чтения объекта XDTO, имя свойства: <%1>.'"), ИмяСвойства) + Символы.ПС + Символы.ПС + ПредставлениеОшибки; ВызватьИсключение ТекстОшибки; КонецПопытки; @@ -3587,7 +3629,7 @@ КонецЦикла; Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Объект: %2. | |Ошибка конвертации свойств. @@ -3696,7 +3738,7 @@ ПриемникДанных[ПКС.СвойствоКонфигурации] = ДанныеДляЗаписиВИБ.Ссылка; Исключение ПредставлениеОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); - ТекстОшибки = СтрШаблон(НСтр("ru = 'Ошибка конвертации свойства объекта XDTO, имя свойства: <%2>.'"), ЗначениеСвойства) + ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка конвертации свойства объекта XDTO, имя свойства: <%2>.'"), ЗначениеСвойства) + Символы.ПС + Символы.ПС + ПредставлениеОшибки; ВызватьИсключение ТекстОшибки; КонецПопытки; @@ -3988,7 +4030,7 @@ Попытка КомпонентыОбмена.МенеджерОбмена.ПередОтложеннымЗаполнением(КомпонентыОбмена); Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Обработчик: ПередОтложеннымЗаполнением. | |Ошибка выполнения обработчика. @@ -4024,7 +4066,7 @@ Попытка МенеджерОбмена.ВыполнитьПроцедуруМодуляМенеджера(ИмяОбработчика, СтруктураПараметров); Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Обработчик: ОтложенноеЗаполнениеОбъектов. |Объект: %2. | @@ -4213,7 +4255,7 @@ СтруктураЗаписи.Вставить("Ссылка", НайденнаяСсылка); СтруктураЗаписи.Вставить("УзелИнформационнойБазы", УзелОбмена); - Если Не РегистрыСведений.ПубличныеИдентификаторыСинхронизируемыхОбъектов.ЗаписьЕстьВРегистре(СтруктураЗаписи) Тогда + Если НЕ РегистрыСведений.ПубличныеИдентификаторыСинхронизируемыхОбъектов.ЗаписьЕстьВРегистре(СтруктураЗаписи) Тогда Возврат НайденнаяСсылка; КонецЕсли; // Данному УИД уже сопоставлен другой объект. Нужно создавать ссылку с другим УИДом. @@ -4346,6 +4388,8 @@ КонецЦикла; КонецЦикла; + ЗапретитьПроведениеДокумента = Метаданные.СвойстваОбъектов.Проведение.Запретить; + Для Каждого ЭлементКУдалению Из МассивОбъектовКУдалению Цикл // Собственно удаление ссылки. @@ -4354,15 +4398,20 @@ Продолжить; КонецЕсли; - Если КомпонентыОбмена.РежимЗагрузкиДанныхВИнформационнуюБазу Тогда - Если ОбменДаннымиСобытия.ЗагрузкаЗапрещена(Объект, КомпонентыОбмена.УзелКорреспондентаОбъект) Тогда + Если КомпонентыОбмена.ЭтоОбменЧерезПланОбмена + И ОбменДаннымиСобытия.ЗагрузкаЗапрещена(Объект, КомпонентыОбмена.УзелКорреспондентаОбъект) Тогда Возврат; КонецЕсли; - Если Метаданные.Документы.Содержит(Объект.Метаданные()) И Объект.Проведен Тогда - ЕстьРезультат = ОтменитьПроведениеОбъектаВИБ(Объект, КомпонентыОбмена.УзелКорреспондента); - Если НЕ ЕстьРезультат Тогда - Продолжить; + МетаданныеОбъекта = Объект.Метаданные(); + Если Метаданные.Документы.Содержит(МетаданныеОбъекта) Тогда + Если Объект.Проведен Тогда + ЕстьРезультат = ОтменитьПроведениеОбъектаВИБ(Объект, КомпонентыОбмена.УзелКорреспондента); + Если НЕ ЕстьРезультат Тогда + Продолжить; + КонецЕсли; + ИначеЕсли МетаданныеОбъекта.Проведение = ЗапретитьПроведениеДокумента Тогда + СделатьНеактивнымиДвиженияДокумента(Объект, КомпонентыОбмена.УзелКорреспондента); КонецЕсли; КонецЕсли; ОбменДаннымиСервер.УстановитьОбменДаннымиЗагрузка(Объект, Истина, Ложь, КомпонентыОбмена.УзелКорреспондента); @@ -4448,6 +4497,49 @@ КонецПроцедуры +// Снимает признак активности движений документа. +// +// Параметры: +// Объект - ДокументОбъект - Документ, движения которого необходимо обработать. +// Отправитель - ПланОбменаСсылка - Ссылка на узел плана обмена, который является отправителем данных. +// +// Возвращаемое значение: +// Булево - признак успешного снятия активности с движений. +Функция СделатьНеактивнымиДвиженияДокумента(Объект, Отправитель) + + Попытка + + Для Каждого Движение Из Объект.Движения Цикл + + Движение.Прочитать(); + ЕстьИзменения = Ложь; + Для Каждого Строка Из Движение Цикл + + Если Строка.Активность = Ложь Тогда + Продолжить; + КонецЕсли; + + Строка.Активность = Ложь; + ЕстьИзменения = Истина; + + КонецЦикла; + + Если ЕстьИзменения Тогда + Движение.Записывать = Истина; + ОбменДаннымиСервер.УстановитьОбменДаннымиЗагрузка(Движение, Истина, Ложь, Отправитель); + Движение.Записать(); + КонецЕсли; + + КонецЦикла; + + Исключение + Возврат Ложь; + КонецПопытки; + + Возврат Истина; + +КонецФункции + #КонецОбласти #КонецОбласти @@ -4507,7 +4599,7 @@ ПравилоОбработки = КомпонентыОбмена.ПравилаОбработкиДанных.Найти(ОбъектМетаданных, "ОбъектВыборкиМетаданные"); Если ПравилоОбработки = Неопределено Тогда - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Не найдено ПОД для объекта метаданных. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не найдено ПОД для объекта метаданных. |Объект метаданных: %3.'"), Строка(ОбъектМетаданных)); ВызватьИсключение ТекстОшибки; @@ -4559,7 +4651,7 @@ Попытка МенеджерОбмена.ВыполнитьПроцедуруМодуляМенеджера(ПравилоОбработки.ПриОбработке, СтруктураПараметров); Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Обработчик: ПриОбработкеПОД. |ПОД: %2. |Объект: %3. @@ -4599,7 +4691,7 @@ Попытка ВыборкаДанных = МенеджерОбмена.ВыполнитьФункциюМодуляМенеджера(ПравилоОбработки.ВыборкаДанных, СтруктураПараметров); Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Обработчик: ВыборкаДанных. |ПОД: %2. | @@ -4650,7 +4742,7 @@ Попытка МенеджерОбмена.ВыполнитьПроцедуруМодуляМенеджера(ИмяОбработчика, СтруктураПараметров); Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Обработчик: ПриОтправкеДанных. |Объект: %2. | @@ -4687,7 +4779,7 @@ Попытка МенеджерОбмена.ВыполнитьПроцедуруМодуляМенеджера(ИмяОбработчика, СтруктураПараметров); Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Обработчик: ПриКонвертацииДанныхXDTO. |Объект: %2. | @@ -4729,7 +4821,7 @@ Попытка МенеджерОбмена.ВыполнитьПроцедуруМодуляМенеджера(ИмяОбработчика, СтруктураПараметров); Исключение - ТекстОшибки = Символы.ПС + СтрШаблон(НСтр("ru = 'Событие: %1. + ТекстОшибки = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Событие: %1. |Обработчик: ПередЗаписьюПолученныхДанных. |Объект: %2. | @@ -4852,9 +4944,9 @@ Код = СокрЛП(КлючевыеСвойства.Получить("КодВПрограмме")); КонецЕсли; Если ЗначениеЗаполнено(Номер) Тогда - ПредставлениеОбъекта = СтрШаблон(НСтр("ru = '%1 №%2 от %3'"), Наименование, Номер, Дата); + ПредставлениеОбъекта = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 №%2 от %3'"), Наименование, Номер, Дата); ИначеЕсли ЗначениеЗаполнено(Код) Тогда - ПредставлениеОбъекта = СтрШаблон(НСтр("ru = '%1, %2'"), Наименование, Код); + ПредставлениеОбъекта = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1, %2'"), Наименование, Код); КонецЕсли; КонецЕсли; ИначеЕсли ТипОбъекта = Тип("Структура") Тогда @@ -4871,7 +4963,7 @@ КонецЕсли; ШаблонПредставления = НСтр("ru = '%1, %2%3'"); - ПредставлениеОбъекта = СтрШаблон(ШаблонПредставления, ТипОбъекта, ПредставлениеОбъекта, НавигационнаяСсылка); + ПредставлениеОбъекта = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонПредставления, ТипОбъекта, ПредставлениеОбъекта, НавигационнаяСсылка); Возврат ПредставлениеОбъекта; diff --git a/SSL/src/CommonModules/ОбменДаннымиВызовСервера/Module.bsl b/SSL/src/CommonModules/ОбменДаннымиВызовСервера/Module.bsl index 4c38fe645..5decd88a9 100644 --- a/SSL/src/CommonModules/ОбменДаннымиВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/ОбменДаннымиВызовСервера/Module.bsl @@ -280,7 +280,7 @@ // Возвращает структуру с данными отбора для журнала регистрации. // -Функция ПолучитьСтруктуруДанныхОтбораЖурналаРегистрации(УзелИнформационнойБазы, Знач ДействиеПриОбмене) Экспорт +Функция ДанныеОтбораЖурналаРегистрации(УзелИнформационнойБазы, Знач ДействиеПриОбмене) Экспорт Если ТипЗнч(ДействиеПриОбмене) = Тип("Строка") Тогда @@ -298,6 +298,7 @@ Отбор.Вставить("ДатаОкончания", СостоянияОбменовДанными.ДатаОкончания); Возврат Отбор; + КонецФункции // Получает код предопределенного узла плана обмена. @@ -348,11 +349,17 @@ Исключение Результат = "Failed"; - ЗаписьЖурналаРегистрации(ОбменДаннымиСервер.СобытиеЖурналаРегистрацииОбменДанными(), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + СтрокаСообщенияОбОшибке = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()) + + ?(ЗначениеЗаполнено(СтрокаСообщенияОбОшибке), Символы.ПС + СтрокаСообщенияОбОшибке, ""); КонецПопытки; + Если Результат = "Failed" Тогда + СтрокаСообщения = НСтр("ru = 'Ошибка в базе-корреспонденте: %1'"); + СтрокаСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаСообщения, СтрокаСообщенияОбОшибке); + КонецЕсли; + Возврат Результат; + КонецФункции // Получает состояние длительной операции (фонового задания), выполняемой в базе-корреспонденте для узла информационной @@ -378,11 +385,17 @@ Исключение Результат = "Failed"; - ЗаписьЖурналаРегистрации(ОбменДаннымиСервер.СобытиеЖурналаРегистрацииОбменДанными(), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + СтрокаСообщенияОбОшибке = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()) + + ?(ЗначениеЗаполнено(СтрокаСообщенияОбОшибке), Символы.ПС + СтрокаСообщенияОбОшибке, ""); КонецПопытки; + Если Результат = "Failed" Тогда + СтрокаСообщения = НСтр("ru = 'Ошибка в базе-корреспонденте: %1'"); + СтрокаСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаСообщения, СтрокаСообщенияОбОшибке); + КонецЕсли; + Возврат Результат; + КонецФункции // Получает сообщение обмена из базы-корреспондента через веб-сервис. @@ -441,7 +454,8 @@ УстановитьПривилегированныйРежим(Истина); - Если ОбменДаннымиПовтИсп.ИспользуемыеПланыОбмена().Количество() > 0 Тогда + Если ОбменДаннымиПовтИсп.ИспользуемыеПланыОбмена().Количество() > 0 + И (НЕ БезопасныйРежим() ИЛИ Пользователи.ЭтоПолноправныйПользователь()) Тогда НаборЗаписейКонфликта = РегистрыСведений.РезультатыОбменаДанными.СоздатьНаборЗаписей(); НаборЗаписейКонфликта.Отбор.ПроблемныйОбъект.Установить(Источник); @@ -648,7 +662,7 @@ УстановитьПривилегированныйРежим(Истина); - Возврат ОбменДаннымиПовтИсп.ПолучитьМассивУзловПланаОбмена(ИмяПланаОбмена); + Возврат ОбменДаннымиПовтИсп.УзлыПланаОбмена(ИмяПланаОбмена); КонецФункции @@ -711,7 +725,7 @@ // Возвращаемое значение: // Массив - узлы плана обмена, для которых установлен признак «Выгружать всегда». // -Функция ПолучитьМассивУзловДляРегистрацииВыгружатьВсегда(Знач ИмяПланаОбмена, Знач ИмяРеквизитаФлага) Экспорт +Функция УзлыДляРегистрацииПоУсловиюВыгружатьВсегда(Знач ИмяПланаОбмена, Знач ИмяРеквизитаФлага) Экспорт Если ТекущийРежимЗапуска() = РежимЗапускаКлиентскогоПриложения.УправляемоеПриложение Тогда ВызватьИсключение НСтр("ru = 'Метод не поддерживается в режиме управляемого приложения.'"); @@ -719,7 +733,8 @@ УстановитьПривилегированныйРежим(Истина); - Возврат ОбменДаннымиСобытия.ПолучитьМассивУзловДляРегистрацииВыгружатьВсегда(ИмяПланаОбмена, ИмяРеквизитаФлага); + Возврат ОбменДаннымиСобытия.УзлыДляРегистрацииПоУсловиюВыгружатьВсегда(ИмяПланаОбмена, ИмяРеквизитаФлага); + КонецФункции // Получает массив узлов плана обмена, для которых установлен признак «Выгружать при необходимости». @@ -732,7 +747,7 @@ // Возвращаемое значение: // Массив - узлы плана обмена, для которых установлен признак «Выгружать при необходимости». // -Функция ПолучитьМассивУзловДляРегистрацииВыгружатьПриНеобходимости(Ссылка, Знач ИмяПланаОбмена, Знач ИмяРеквизитаФлага) Экспорт +Функция УзлыДляРегистрацииПоУсловиюВыгружатьПриНеобходимости(Ссылка, Знач ИмяПланаОбмена, Знач ИмяРеквизитаФлага) Экспорт Если ТекущийРежимЗапуска() = РежимЗапускаКлиентскогоПриложения.УправляемоеПриложение Тогда ВызватьИсключение НСтр("ru = 'Метод не поддерживается в режиме управляемого приложения.'"); @@ -740,7 +755,8 @@ УстановитьПривилегированныйРежим(Истина); - Возврат ОбменДаннымиСобытия.ПолучитьМассивУзловДляРегистрацииВыгружатьПриНеобходимости(Ссылка, ИмяПланаОбмена, ИмяРеквизитаФлага); + Возврат ОбменДаннымиСобытия.УзлыДляРегистрацииПоУсловиюВыгружатьПриНеобходимости(Ссылка, ИмяПланаОбмена, ИмяРеквизитаФлага); + КонецФункции // Возвращает признак режима загрузки параметров работы программы из сообщения обмена в информационную базу. diff --git a/SSL/src/CommonModules/ОбменДаннымиКлиент/Module.bsl b/SSL/src/CommonModules/ОбменДаннымиКлиент/Module.bsl index 61d4fb294..8df6e0212 100644 --- a/SSL/src/CommonModules/ОбменДаннымиКлиент/Module.bsl +++ b/SSL/src/CommonModules/ОбменДаннымиКлиент/Module.bsl @@ -47,20 +47,37 @@ // Процедура-обработчик закрытия формы настройки узла плана обмена. // // Параметры: -// Отказ - флаг отказа от закрытия формы. -// Форма - управляемая форма, из которой вызвана процедура. +// Отказ - Булево - признак отказа от закрытия формы. +// Форма - УправляемаяФорма - форма, из которой вызвана процедура. +// ЗавершениеРаботы - Булево - признак того, что форма закрывается в процессе завершения работы приложения. // -Процедура ФормаНастройкиПередЗакрытием(Отказ, Форма) Экспорт +// Пример: +// +// &НаКлиенте +// Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) +// ОбменДаннымиКлиент.ФормаНастройкиПередЗакрытием(Отказ, ЭтотОбъект, ЗавершениеРаботы); +// КонецПроцедуры +// +Процедура ФормаНастройкиПередЗакрытием(Отказ, Форма, ЗавершениеРаботы) Экспорт - Если Форма.Модифицированность Тогда - - Отказ = Истина; - - ТекстВопроса = НСтр("ru = 'Данные были изменены. Закрыть форму без сохранения изменений?'"); - ОписаниеОповещения = Новый ОписаниеОповещения("ФормаНастройкиПередЗакрытиемЗавершение", ЭтотОбъект, Форма); - ПоказатьВопрос(ОписаниеОповещения, ТекстВопроса, РежимДиалогаВопрос.ДаНет,, КодВозвратаДиалога.Нет); - + ИмяПроцедуры = "ОбменДаннымиКлиент.ФормаНастройкиПередЗакрытием"; + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр(ИмяПроцедуры, "Отказ", Отказ, Тип("Булево")); + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр(ИмяПроцедуры, "Форма", Форма, Тип("УправляемаяФорма")); + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр(ИмяПроцедуры, "ЗавершениеРаботы", ЗавершениеРаботы, Тип("Булево")); + + Если Не Форма.Модифицированность Тогда + Возврат; КонецЕсли; + + Отказ = Истина; + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + + ТекстВопроса = НСтр("ru = 'Данные были изменены. Закрыть форму без сохранения изменений?'"); + ОписаниеОповещения = Новый ОписаниеОповещения("ФормаНастройкиПередЗакрытиемЗавершение", ЭтотОбъект, Форма); + ПоказатьВопрос(ОписаниеОповещения, ТекстВопроса, РежимДиалогаВопрос.ДаНет,, КодВозвратаДиалога.Нет); КонецПроцедуры @@ -269,7 +286,7 @@ Процедура ПерейтиВЖурналРегистрацииСобытийДанныхМодально(УзелИнформационнойБазы, Владелец, ДействиеПриОбмене) Экспорт // вызов сервера - ПараметрыФормы = ОбменДаннымиВызовСервера.ПолучитьСтруктуруДанныхОтбораЖурналаРегистрации(УзелИнформационнойБазы, ДействиеПриОбмене); + ПараметрыФормы = ОбменДаннымиВызовСервера.ДанныеОтбораЖурналаРегистрации(УзелИнформационнойБазы, ДействиеПриОбмене); ОткрытьФорму("Обработка.ЖурналРегистрации.Форма", ПараметрыФормы, Владелец); @@ -1143,8 +1160,7 @@ // Открываем форму помощника сопоставления объектов; // в качестве параметра формы задаем узел информационной базы; - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("УзелИнформационнойБазы", УзелИнформационнойБазы); + ПараметрыФормы = Новый Структура("УзелИнформационнойБазы", УзелИнформационнойБазы); ПараметрыФормы.Вставить("РасширенныйРежимДополненияВыгрузки", Истина); ИмяФормы = "Обработка.ПомощникИнтерактивногоОбменаДанными.Форма"; diff --git a/SSL/src/CommonModules/ОбменДаннымиКлиентСервер/Module.bsl b/SSL/src/CommonModules/ОбменДаннымиКлиентСервер/Module.bsl index 3a7bc01a6..07c928107 100644 --- a/SSL/src/CommonModules/ОбменДаннымиКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/ОбменДаннымиКлиентСервер/Module.bsl @@ -13,7 +13,7 @@ СтрокаСообщения = НСтр("ru = 'В имени пользователя %1 содержатся недопустимые символы. |Имя пользователя не должно содержать символы %2.'"); - СтрокаСообщения = СтрШаблон(СтрокаСообщения, ИмяПользователя, НедопустимыеСимволыВИмениПользователяWSПрокси()); + СтрокаСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаСообщения, ИмяПользователя, НедопустимыеСимволыВИмениПользователяWSПрокси()); ВызватьИсключение СтрокаСообщения; КонецЕсли; @@ -42,7 +42,7 @@ СтрокаСообщения = НСтр("ru = 'Неверный формат адреса ""%1"". |Адрес должен начинаться с префикса Интернет протокола %2 (например: ""http://myserver.com/service"").'"); - СтрокаСообщения = СтрШаблон(СтрокаСообщения, АдресWSПрокси, СтрокаПрефиксов); + СтрокаСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаСообщения, АдресWSПрокси, СтрокаПрефиксов); ВызватьИсключение СтрокаСообщения; КонецЕсли; @@ -83,6 +83,7 @@ КонецЦикла; Возврат Ложь; + КонецФункции #КонецОбласти diff --git a/SSL/src/CommonModules/ОбменДаннымиПереопределяемый/Module.bsl b/SSL/src/CommonModules/ОбменДаннымиПереопределяемый/Module.bsl index cc57321c6..da6bf0833 100644 --- a/SSL/src/CommonModules/ОбменДаннымиПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ОбменДаннымиПереопределяемый/Module.bsl @@ -209,19 +209,13 @@ КонецПроцедуры -// Устарела. Следует использовать ПриОпределенииПрефиксаИнформационнойБазыПоУмолчанию. -// -Функция ПрефиксИнформационнойБазыПоУмолчанию() Экспорт - -КонецФункции - // Обработчик начальной настройки ИБ после создания узла РИБ. // Вызывается в момент первого запуска подчиненного узла РИБ (в том числе АРМ). Процедура ПриНастройкеПодчиненногоУзлаРИБ() Экспорт КонецПроцедуры -// Получает доступные для использования версии универсального формата EnterpriseData +// Получает доступные для использования версии универсального формата EnterpriseData. // // Параметры: // ВерсииФормата - Соответствие - Соответствие номера версии формата, @@ -236,4 +230,14 @@ КонецПроцедуры +#Область УстаревшиеПроцедурыИФункции + +// Устарела. Следует использовать ПриОпределенииПрефиксаИнформационнойБазыПоУмолчанию. +// +Функция ПрефиксИнформационнойБазыПоУмолчанию() Экспорт + +КонецФункции + +#КонецОбласти + #КонецОбласти diff --git a/SSL/src/CommonModules/ОбменДаннымиПовтИсп/Module.bsl b/SSL/src/CommonModules/ОбменДаннымиПовтИсп/Module.bsl index 76703f8a5..13cb95dda 100644 --- a/SSL/src/CommonModules/ОбменДаннымиПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/ОбменДаннымиПовтИсп/Module.bsl @@ -662,7 +662,7 @@ // ТаблицаРеквизитовРегистрации - таблица значений - таблица реквизитов регистрации, // упорядоченная по полю "Порядок", для заданного объекта метаданного. // -Функция ПолучитьТаблицуРеквизитовРегистрации(ИмяОбъекта, ИмяПланаОбмена) Экспорт +Функция РеквизитыОбъектаДляРегистрации(ИмяОбъекта, ИмяПланаОбмена) Экспорт ТаблицаРеквизитовРегистрацииОбъектов = ОбменДаннымиСервер.ПолучитьПравилаВыборочнойРегистрацииОбъектовПС(); @@ -824,7 +824,7 @@ // Возвращаемое значение: // МассивУзлов - Массив - массив всех узлов для заданного плана обмена кроме предопределенного узла. // -Функция ПолучитьМассивУзловПланаОбмена(ИмяПланаОбмена) Экспорт +Функция УзлыПланаОбмена(ИмяПланаОбмена) Экспорт ТекстЗапроса = " |ВЫБРАТЬ @@ -849,9 +849,9 @@ // Возвращаемое значение: // СписокПравил - список значений - список макетов типовых правил обмена. // -Функция ПолучитьСписокТиповыхПравилОбмена(ИмяПланаОбмена) Экспорт +Функция ПравилаКонвертацииДляПланаОбменаИзКонфигурации(ИмяПланаОбмена) Экспорт - Возврат ПолучитьСписокТиповыхПравил(ИмяПланаОбмена, "ПравилаОбмена"); + Возврат ПравилаДляПланаОбменаИзКонфигурации(ИмяПланаОбмена, "ПравилаОбмена"); КонецФункции @@ -864,9 +864,9 @@ // Возвращаемое значение: // СписокПравил - список значений - список макетов типовых правил регистрации. // -Функция ПолучитьСписокТиповыхПравилРегистрации(ИмяПланаОбмена) Экспорт +Функция ПравилаРегистрацииДляПланаОбменаИзКонфигурации(ИмяПланаОбмена) Экспорт - Возврат ПолучитьСписокТиповыхПравил(ИмяПланаОбмена, "ПравилаРегистрации"); + Возврат ПравилаДляПланаОбменаИзКонфигурации(ИмяПланаОбмена, "ПравилаРегистрации"); КонецФункции @@ -942,7 +942,7 @@ // Для внутреннего использования. // -Функция ТабличныеЧастиПланаОбмена(Знач ИмяПланаОбмена, Знач ВерсияКорреспондента = "") Экспорт +Функция ТабличныеЧастиПланаОбмена(Знач ИмяПланаОбмена, Знач ВерсияКорреспондента = "", Знач ИдентификаторНастройки = "") Экспорт ТаблицыОбщие = Новый Массив; ТаблицыЭтойБазы = Новый Массив; @@ -968,7 +968,7 @@ КонецЕсли; - НастройкиЭтойБазы = ОбменДаннымиСервер.НастройкаОтборовНаУзле(ИмяПланаОбмена, ВерсияКорреспондента); + НастройкиЭтойБазы = ОбменДаннымиСервер.НастройкаОтборовНаУзле(ИмяПланаОбмена, ВерсияКорреспондента,, ИдентификаторНастройки); НастройкиЭтойБазы = ОбменДаннымиСобытия.КлючиСтруктурыВСтроку(НастройкиЭтойБазы); @@ -1006,7 +1006,7 @@ КонецЕсли; - НастройкиКорреспондента = ОбменДаннымиСервер.НастройкаОтборовНаУзлеБазыКорреспондента(ИмяПланаОбмена, ВерсияКорреспондента); + НастройкиКорреспондента = ОбменДаннымиСервер.НастройкаОтборовНаУзлеБазыКорреспондента(ИмяПланаОбмена, ВерсияКорреспондента,, ИдентификаторНастройки); Если ПустаяСтрока(ОбщиеДанныеУзлов) Тогда @@ -1079,7 +1079,7 @@ // Функция-обертка одноименной функции. // -Функция ПолучитьДеревоМетаданныхКонфигурации(Отбор) Экспорт +Функция МетаданныеКонфигурации(Отбор) Экспорт Для Каждого ЭлементОтбора Из Отбор Цикл @@ -1362,7 +1362,7 @@ // Возвращаемое значение: // СтруктураНастроекОбмена - Структура - структура со всеми необходимыми данными и объектами для выполнения обмена. // -Функция ПолучитьСтруктуруНастроекОбменаДляУзлаИнформационнойБазы( +Функция НастройкиОбменаУзлаИнформационнойБазы( УзелИнформационнойБазы, ДействиеПриОбмене, ВидТранспортаСообщенийОбмена, @@ -1382,7 +1382,7 @@ // Возвращаемое значение: // СтруктураНастроекОбмена - Структура - структура со всеми необходимыми данными и объектами для выполнения обмена. // -Функция ПолучитьСтруктуруНастроекОбмена(НастройкаВыполненияОбмена, НомерСтроки) Экспорт +Функция НастройкиОбменаДанными(НастройкаВыполненияОбмена, НомерСтроки) Экспорт Возврат ОбменДаннымиСервер.ПолучитьСтруктуруНастроекОбмена(НастройкаВыполненияОбмена, НомерСтроки); @@ -1390,7 +1390,7 @@ // Получает структуру настроек транспорта для выполнения обмена данными. // -Функция ПолучитьСтруктуруНастроекТранспорта(УзелИнформационнойБазы, ВидТранспортаСообщенийОбмена) Экспорт +Функция НастройкиТранспортаУзлаПланаОбмена(УзелИнформационнойБазы, ВидТранспортаСообщенийОбмена) Экспорт Возврат ОбменДаннымиСервер.ПолучитьСтруктуруНастроекТранспорта(УзелИнформационнойБазы, ВидТранспортаСообщенийОбмена); @@ -1405,7 +1405,7 @@ // Возвращаемое значение: // СписокПравил - список значений - список макетов типовых правил для обмена данными. // -Функция ПолучитьСписокТиповыхПравил(ИмяПланаОбмена, ЛитералИмениМакета) +Функция ПравилаДляПланаОбменаИзКонфигурации(ИмяПланаОбмена, ЛитералИмениМакета) СписокПравил = Новый СписокЗначений; @@ -1563,7 +1563,8 @@ ОбщийТипПлатформы = "Windows"; - ТипПлатформыСервера = ОбщегоНазначенияПовтИсп.ТипПлатформыСервера(); + СистемнаяИнфо = Новый СистемнаяИнформация; + ТипПлатформыСервера = СистемнаяИнфо.ТипПлатформы; УстановитьПривилегированныйРежим(Истина); diff --git a/SSL/src/CommonModules/ОбменДаннымиСервер/Module.bsl b/SSL/src/CommonModules/ОбменДаннымиСервер/Module.bsl index ca1fa06a2..9729fb58a 100644 --- a/SSL/src/CommonModules/ОбменДаннымиСервер/Module.bsl +++ b/SSL/src/CommonModules/ОбменДаннымиСервер/Module.bsl @@ -403,6 +403,8 @@ // Функция ПереопределяемоеИмяУзлаПланаОбмена(Знач УзелПланаОбмена, ИмяПараметраСИменемУзла) Экспорт + УстановитьПривилегированныйРежим(Истина); + ИмяПланаОбмена = УзелПланаОбмена.Метаданные().Имя; ПереопределяемоеИмяУзлаПланаОбмена = УзелПланаОбмена.Метаданные().Синоним; @@ -410,6 +412,8 @@ ИмяПараметраСИменемУзла, СохраненныйВариантНастройкиУзлаПланаОбмена(УзелПланаОбмена)); + УстановитьПривилегированныйРежим(Ложь); + Возврат ПереопределяемоеИмяУзлаПланаОбмена; КонецФункции @@ -430,7 +434,9 @@ Если ОбщегоНазначения.ЕстьРеквизитОбъекта("ВариантНастройки", УзелПланаОбмена.Метаданные()) Тогда + УстановитьПривилегированныйРежим(Истина); ВариантНастройки = УзелПланаОбмена.ВариантНастройки; + УстановитьПривилегированныйРежим(Ложь); КонецЕсли; @@ -483,7 +489,7 @@ УстановитьПривилегированныйРежим(Истина); // ИНИЦИАЛИЗАЦИЯ ОБМЕНА ДАННЫМИ - СтруктураНастроекОбмена = ОбменДаннымиПовтИсп.ПолучитьСтруктуруНастроекОбменаДляУзлаИнформационнойБазы( + СтруктураНастроекОбмена = ОбменДаннымиПовтИсп.НастройкиОбменаУзлаИнформационнойБазы( УзелИнформационнойБазы, ДействиеПриОбмене, ВидТранспортаСообщенийОбмена); Если СтруктураНастроекОбмена.Отказ Тогда @@ -596,19 +602,20 @@ // Передаваемый массив повторяет состав реквизитов шапки плана обмена базы корреспондента. // // Параметры: -// ИмяПланаОбмена - Строка - Имя плана обмена. -// ВерсияКорреспондента - Строка - Номер версии корреспондента. Используется, например, для разного -// состава значений по умолчанию на узле для разных версий корреспондента. +// ИмяПланаОбмена - Строка - Имя плана обмена. +// ВерсияКорреспондента - Строка - Номер версии корреспондента. Используется, например, для разного +// состава значений по умолчанию на узле для разных версий корреспондента. +// ИдентификаторНастройки - Строка - имя дополнительной настройки обмена. // // Возвращаемое значение: // ФиксированныйМассив - фиксированный массив строк, содержащий имена реквизитов значений // по умолчанию для узла базы корреспондента. // -Функция ТаблицыКорреспондентаДляЗначенийПоУмолчанию(Знач ИмяПланаОбмена, Знач ВерсияКорреспондента) Экспорт +Функция ТаблицыКорреспондентаДляЗначенийПоУмолчанию(Знач ИмяПланаОбмена, Знач ВерсияКорреспондента, Знач ИдентификаторНастройки = "") Экспорт Результат = Новый Массив; - ЗначенияПоУмолчанию = ЗначенияПоУмолчаниюНаУзлеБазыКорреспондента(ИмяПланаОбмена, ВерсияКорреспондента); + ЗначенияПоУмолчанию = ЗначенияПоУмолчаниюНаУзлеБазыКорреспондента(ИмяПланаОбмена, ВерсияКорреспондента,, ИдентификаторНастройки); Для Каждого Элемент Из ЗначенияПоУмолчанию Цикл @@ -821,7 +828,7 @@ // Функция ЕстьПраваНаАдминистрированиеОбменов() Экспорт - Возврат Пользователи.ЭтоПолноправныйПользователь(, Не ОбщегоНазначенияПовтИсп.РазделениеВключено()); + Возврат Пользователи.ЭтоПолноправныйПользователь(); КонецФункции @@ -935,6 +942,34 @@ КонецФункции +#Область ДляВызоваИзДругихПодсистем + +// ТехнологияСервиса.ОбменДаннымиВМоделиСервиса + +// Возвращает идентификатор настройки обмена, соответствующий конкретному корреспонденту. +// +// Параметры: +// ИмяПланаОбмена - Строка - имя плана обмена, который используется для настройки обмена. +// ИмяКорреспондента - Строка - имя корреспондента (см. функцию ИмяКонфигурацииИсточника +// на стороне конфигурации-корреспондента). +// +// Возвращаемое значение: +// Строка - идентификатор настройки обмена. +// +Функция ВариантНастройкиОбменаДляКорреспондента(ИмяПланаОбмена, ИмяКорреспондента) Экспорт + + ОписанияВариантовНастроекОбмена = ЗначениеНастройкиПланаОбмена(ИмяПланаОбмена, "ОписанияВариантовНастроекОбмена"); + ОписаниеВарианта = ОписанияВариантовНастроекОбмена.Найти(ИмяКорреспондента, "ИмяКорреспондента"); + + ВариантНастройкиОбмена = ?(ЗначениеЗаполнено(ОписаниеВарианта), ОписаниеВарианта.ИдентификаторНастройки, ""); + Возврат ВариантНастройкиОбмена; + +КонецФункции + +// Конец ТехнологияСервиса.ОбменДаннымиВМоделиСервиса + +#КонецОбласти + #Область УстаревшиеПроцедурыИФункции // Выполняет добавление информации об установленном в константе количестве элементов в транзакции @@ -1312,23 +1347,25 @@ Процедура ИнициализироватьФайлСДаннымиОбновления(Параметры) Экспорт ФайлДляЗаписиXML = Неопределено; + ИмяФайлаСИзменениями = Неопределено; Если СтандартныеПодсистемыПовтИсп.ИспользуетсяРИБ("СФильтром") Тогда - ИмяФайла = ПолноеИмяФайлаДанныхОтложенногоОбновления(); + ИмяФайлаСИзменениями = ПолноеИмяФайлаДанныхОтложенногоОбновления(); ФайлДляЗаписиXML = Новый ЗаписьFastInfoset; - ФайлДляЗаписиXML.ОткрытьФайл(ИмяФайла); + ФайлДляЗаписиXML.ОткрытьФайл(ИмяФайлаСИзменениями); ФайлДляЗаписиXML.ЗаписатьОбъявлениеXML(); ФайлДляЗаписиXML.ЗаписатьНачалоЭлемента("Objects"); КонецЕсли; + Параметры.ИмяФайлаСИзменениями = ИмяФайлаСИзменениями; Параметры.ЗаписьИзмененийДляПодчиненногоУзлаРИБСФильтрами = ФайлДляЗаписиXML; КонецПроцедуры -// Выполняет инициализацию XML файла, для записи информации об объектах +// Выполняет инициализацию XML файла, для записи информации об объектах. // Процедура ЗаписатьДанныеДляОбновленияВФайл(Параметры, Данные, ВидДанных, ПолноеИмяОбъекта = "") Экспорт @@ -1402,135 +1439,141 @@ Возврат; КонецЕсли; - ХранилищеЗначений = ЗначениеКонстанты.Значение; - ИмяФайла = ПолноеИмяФайлаДанныхОтложенногоОбновления(); - - ДвоичныеДанные = ХранилищеЗначений.Получить(); - Если ДвоичныеДанные = Неопределено Тогда + МассивЗначений = ЗначениеКонстанты.Значение.Получить(); + Если ТипЗнч(МассивЗначений) <> Тип("Массив") Тогда Возврат; КонецЕсли; - ДвоичныеДанные.Записать(ИмяФайла); - - ЧтениеXML = Новый ЧтениеFastInfoset; - ЧтениеXML.ОткрытьФайл(ИмяФайла); - - ПараметрыОбработчикаСтруктура = ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке(); - - Если ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | ОбновлениеИнформационнойБазы.Ссылка КАК Узел - |ИЗ - | ПланОбмена.ОбновлениеИнформационнойБазы КАК ОбновлениеИнформационнойБазы - |ГДЕ - | НЕ ОбновлениеИнформационнойБазы.ЭтотУзел"; + Для Каждого ХранилищеЗначений Из МассивЗначений Цикл + ИмяФайла = ПолноеИмяФайлаДанныхОтложенногоОбновления(); - Выборка = Запрос.Выполнить().Выбрать(); - Пока Выборка.Следующий() Цикл - ПланыОбмена.УдалитьРегистрациюИзменений(Выборка.Узел); - КонецЦикла; - КонецЕсли; - - Пока ЧтениеXML.Прочитать() Цикл + ДвоичныеДанные = ХранилищеЗначений.Получить(); + Если ДвоичныеДанные = Неопределено Тогда + Возврат; + КонецЕсли; - Если ЧтениеXML.Имя = "Object" - И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда + Если ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ОбновлениеИнформационнойБазы.Ссылка КАК Узел + |ИЗ + | ПланОбмена.ОбновлениеИнформационнойБазы КАК ОбновлениеИнформационнойБазы + |ГДЕ + | НЕ ОбновлениеИнформационнойБазы.ЭтотУзел"; - ПараметрыОбработчикаСтруктура.Очередь = Число(ЧтениеXML.ЗначениеАтрибута("Queue")); - ПолноеИмяОбъектаМетаданных = СокрЛП(ЧтениеXML.ЗначениеАтрибута("Type")); - ТипОбъектаМетаданных = Метаданные.НайтиПоПолномуИмени(ПолноеИмяОбъектаМетаданных); - МенеджерОбъекта = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ПолноеИмяОбъектаМетаданных); - ЭтоСсылочныйТипОбъекта = ОбщегоНазначения.ЭтоОбъектСсылочногоТипа(ТипОбъектаМетаданных); + Выборка = Запрос.Выполнить().Выбрать(); + Пока Выборка.Следующий() Цикл + ПланыОбмена.УдалитьРегистрациюИзменений(Выборка.Узел); + КонецЦикла; + КонецЕсли; + + ДвоичныеДанные.Записать(ИмяФайла); + + ЧтениеXML = Новый ЧтениеFastInfoset; + ЧтениеXML.ОткрытьФайл(ИмяФайла); + + ПараметрыОбработчикаСтруктура = ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке(); + + Пока ЧтениеXML.Прочитать() Цикл - Если ЭтоСсылочныйТипОбъекта Тогда - ОбъектКОбработке = МенеджерОбъекта.ПолучитьСсылку(Новый УникальныйИдентификатор(ЧтениеXML.ЗначениеАтрибута("Ref"))); - Иначе + Если ЧтениеXML.Имя = "Object" + И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда - ОбъектКОбработке = МенеджерОбъекта.СоздатьНаборЗаписей(); + ПараметрыОбработчикаСтруктура.Очередь = Число(ЧтениеXML.ЗначениеАтрибута("Queue")); + ПолноеИмяОбъектаМетаданных = СокрЛП(ЧтениеXML.ЗначениеАтрибута("Type")); + ТипОбъектаМетаданных = Метаданные.НайтиПоПолномуИмени(ПолноеИмяОбъектаМетаданных); + МенеджерОбъекта = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ПолноеИмяОбъектаМетаданных); + ЭтоСсылочныйТипОбъекта = ОбщегоНазначения.ЭтоОбъектСсылочногоТипа(ТипОбъектаМетаданных); - Если ОбщегоНазначения.ЭтоРегистрСведений(ТипОбъектаМетаданных) - И ТипОбъектаМетаданных.РежимЗаписи = Метаданные.СвойстваОбъектов.РежимЗаписиРегистра.Независимый Тогда + Если ЭтоСсылочныйТипОбъекта Тогда + ОбъектКОбработке = МенеджерОбъекта.ПолучитьСсылку(Новый УникальныйИдентификатор(ЧтениеXML.ЗначениеАтрибута("Ref"))); + Иначе - ЧтениеXML.Прочитать(); + ОбъектКОбработке = МенеджерОбъекта.СоздатьНаборЗаписей(); - Если ЧтениеXML.Имя = "Filter" - И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда + Если ОбщегоНазначения.ЭтоРегистрСведений(ТипОбъектаМетаданных) + И ТипОбъектаМетаданных.РежимЗаписи = Метаданные.СвойстваОбъектов.РежимЗаписиРегистра.Независимый Тогда - ЧтениеОтбора = Истина; + ЧтениеXML.Прочитать(); - Пока ЧтениеОтбора Цикл + Если ЧтениеXML.Имя = "Filter" + И ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда - ЧтениеXML.Прочитать(); + ЧтениеОтбора = Истина; - Если ЧтениеXML.Имя = "Filter" И ЧтениеXML.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда - ЧтениеОтбора = Ложь; - Продолжить; - ИначеЕсли ЧтениеXML.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда - Продолжить; - Иначе + Пока ЧтениеОтбора Цикл - ЗначениеОтбора = ЧтениеXML.ЗначениеАтрибута("Val"); - Если ЗначениеЗаполнено(ЗначениеОтбора) Тогда + ЧтениеXML.Прочитать(); + + Если ЧтениеXML.Имя = "Filter" И ЧтениеXML.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда + ЧтениеОтбора = Ложь; + Продолжить; + ИначеЕсли ЧтениеXML.ТипУзла = ТипУзлаXML.КонецЭлемента Тогда + Продолжить; + Иначе - ИмяОтбора = ЧтениеXML.Имя; - ТипЗначенияОтбора = ЧтениеXML.ЗначениеАтрибута("Type"); - ПолноеИмяЭлементаОтбора = Метаданные.НайтиПоПолномуИмени(ТипЗначенияОтбора); - - Если ПолноеИмяЭлементаОтбора <> Неопределено Тогда + ЗначениеОтбора = ЧтениеXML.ЗначениеАтрибута("Val"); + Если ЗначениеЗаполнено(ЗначениеОтбора) Тогда - МенеджерОбъектаОтбора = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ТипЗначенияОтбора); + ИмяОтбора = ЧтениеXML.Имя; + ТипЗначенияОтбора = ЧтениеXML.ЗначениеАтрибута("Type"); + ПолноеИмяЭлементаОтбора = Метаданные.НайтиПоПолномуИмени(ТипЗначенияОтбора); - Если Найти(ВРег(ТипЗначенияОтбора), "ПЕРЕЧИСЛЕНИЕ") > 0 Тогда - СсылкаНаЗначение = МенеджерОбъектаОтбора[ЗначениеОтбора]; + Если ПолноеИмяЭлементаОтбора <> Неопределено Тогда + + МенеджерОбъектаОтбора = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ТипЗначенияОтбора); + + Если Найти(ВРег(ТипЗначенияОтбора), "ПЕРЕЧИСЛЕНИЕ") > 0 Тогда + СсылкаНаЗначение = МенеджерОбъектаОтбора[ЗначениеОтбора]; + Иначе + СсылкаНаЗначение = МенеджерОбъектаОтбора.ПолучитьСсылку(Новый УникальныйИдентификатор(ЗначениеОтбора)); + КонецЕсли; + + ОбъектКОбработке.Отбор[ИмяОтбора].Установить(СсылкаНаЗначение); + Иначе - СсылкаНаЗначение = МенеджерОбъектаОтбора.ПолучитьСсылку(Новый УникальныйИдентификатор(ЗначениеОтбора)); + ОбъектКОбработке.Отбор[ИмяОтбора].Установить(XMLЗначение(Тип(ТипЗначенияОтбора),ЗначениеОтбора)); КонецЕсли; - ОбъектКОбработке.Отбор[ИмяОтбора].Установить(СсылкаНаЗначение); - - Иначе - ОбъектКОбработке.Отбор[ИмяОтбора].Установить(XMLЗначение(Тип(ТипЗначенияОтбора),ЗначениеОтбора)); КонецЕсли; КонецЕсли; - КонецЕсли; + КонецЦикла; - КонецЦикла; + КонецЕсли; + + Иначе + + ЗначениеРегистратора = Новый УникальныйИдентификатор(ЧтениеXML.ЗначениеАтрибута("Ref")); + ПолноеИмяРегистратора = ЧтениеXML.ЗначениеАтрибута("FilterType"); + МенеджерРегистратора = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ПолноеИмяРегистратора); + СсылкаНаРегистратор = МенеджерРегистратора.ПолучитьСсылку(ЗначениеРегистратора); + ОбъектКОбработке.Отбор.Регистратор.Установить(СсылкаНаРегистратор); КонецЕсли; - Иначе - - ЗначениеРегистратора = Новый УникальныйИдентификатор(ЧтениеXML.ЗначениеАтрибута("Ref")); - ПолноеИмяРегистратора = ЧтениеXML.ЗначениеАтрибута("FilterType"); - МенеджерРегистратора = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ПолноеИмяРегистратора); - СсылкаНаРегистратор = МенеджерРегистратора.ПолучитьСсылку(ЗначениеРегистратора); - ОбъектКОбработке.Отбор.Регистратор.Установить(СсылкаНаРегистратор); + ОбъектКОбработке.Прочитать(); КонецЕсли; - ОбъектКОбработке.Прочитать(); + ОбновлениеИнформационнойБазы.ОтметитьКОбработке(ПараметрыОбработчикаСтруктура, ОбъектКОбработке); + Иначе + Продолжить; КонецЕсли; - ОбновлениеИнформационнойБазы.ОтметитьКОбработке(ПараметрыОбработчикаСтруктура, ОбъектКОбработке); - - Иначе - Продолжить; - КонецЕсли; + КонецЦикла; + ЧтениеXML.Закрыть(); + + Файл = Новый Файл(ИмяФайла); + Если Файл.Существует() Тогда + УдалитьФайлы(ИмяФайла); + КонецЕсли; КонецЦикла; - ЧтениеXML.Закрыть(); - - Файл = Новый Файл(ИмяФайла); - Если Файл.Существует() Тогда - УдалитьФайлы(ИмяФайла); - КонецЕсли; - КонецПроцедуры // Выполняет закрытие XML файла с записанной информацией об объектах @@ -1551,19 +1594,46 @@ ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.Закрыть(); - ИмяФайла = ПолноеИмяФайлаДанныхОтложенногоОбновления(); + ИмяФайлаСИзменениями = Параметры.ИмяФайлаСИзменениями; - ДвоичныеДанныеФайла = Новый ДвоичныеДанные(ИмяФайла); - Хранилище = Новый ХранилищеЗначения(ДвоичныеДанныеФайла, Новый СжатиеДанных(9)); - Константы.ДанныеДляОтложенногоОбновления.Установить(Хранилище); + НачатьТранзакцию(); + Попытка + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("Константа.СведенияОбОбновленииИБ"); + Блокировка.Заблокировать(); + + ЗначениеКонстанты = Константы.ДанныеДляОтложенногоОбновления.Получить().Получить(); + Если ТипЗнч(ЗначениеКонстанты) <> Тип("Массив") Тогда + ЗначениеКонстанты = Новый Массив; + КонецЕсли; + + ДвоичныеДанныеФайла = Новый ДвоичныеДанные(ИмяФайлаСИзменениями); + Хранилище = Новый ХранилищеЗначения(ДвоичныеДанныеФайла, Новый СжатиеДанных(9)); + ЗначениеКонстанты.Добавить(Хранилище); + + Константы.ДанныеДляОтложенногоОбновления.Установить(Новый ХранилищеЗначения(ЗначениеКонстанты)); + + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; - ФайлСДанными = Новый Файл(ИмяФайла); + ФайлСДанными = Новый Файл(ИмяФайлаСИзменениями); Если ФайлСДанными.Существует() Тогда - УдалитьФайлы(ИмяФайла); + УдалитьФайлы(ИмяФайлаСИзменениями); КонецЕсли; КонецПроцедуры +// Сбрасывает значение константы ЗаписьИзмененийДляПодчиненногоУзлаРИБСФильтрами при обновлении. +// +Процедура СброситьЗначениеКонстантыСИзменениямиДляПодчиненногоУзлаРИБСФильтрами() Экспорт + + Константы.ДанныеДляОтложенногоОбновления.Установить(Неопределено); + +КонецПроцедуры + // Выполняет действия после обновления информационной базы, в т.ч. выгрузку сообщения обмена, // которое содержало изменения конфигурации, до обновления информационной базы. // @@ -1677,7 +1747,7 @@ // Процедура ВыполнитьОбновлениеПравилДляОбменаДанными() Экспорт - Если Не ПолучитьФункциональнуюОпцию("ИспользоватьСинхронизациюДанных") + Если Не Константы.ИспользоватьСинхронизациюДанных.Получить() И Не ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда Возврат; КонецЕсли; @@ -1717,7 +1787,7 @@ Продолжить; КонецЕсли; - МассивУзлов = ОбменДаннымиПовтИсп.ПолучитьМассивУзловПланаОбмена(ИмяПланаОбмена); + МассивУзлов = ОбменДаннымиПовтИсп.УзлыПланаОбмена(ИмяПланаОбмена); Для Каждого Узел Из МассивУзлов Цикл @@ -2124,7 +2194,6 @@ Возврат Результат; КонецФункции - // Рассчитывает процент выгрузки и записывает в виде сообщения пользователю. // // Параметры: @@ -2154,7 +2223,6 @@ // Регистрация сообщения для чтения из клиентского сеанса. ДлительныеОперации.СообщитьПрогресс(ПроцентВыполнения, Текст); - КонецПроцедуры // Рассчитывает процент загрузки и записывает в виде сообщения пользователю. @@ -2315,7 +2383,7 @@ КонецФункции -Функция FTPНастройкиСоединения() Экспорт +Функция FTPНастройкиСоединения(Знач Таймаут = 180) Экспорт Результат = Новый Структура; Результат.Вставить("Сервер", ""); @@ -2323,7 +2391,7 @@ Результат.Вставить("ИмяПользователя", ""); Результат.Вставить("ПарольПользователя", ""); Результат.Вставить("ПассивноеСоединение", Ложь); - Результат.Вставить("Таймаут", 0); + Результат.Вставить("Таймаут", Таймаут); Результат.Вставить("ЗащищенноеСоединение", Неопределено); Возврат Результат; @@ -2514,13 +2582,20 @@ // * ЗаголовокПомощникаСозданияОбмена - Строка - Содержит представление заголовка формы // помощника создания обмена данными выводимое // в пользовательском интерфейсе. +// * ИмяПланаОбменаДляПереходаНаНовыйОбмен - Строка - Если для плана обмена свойство установлено, в +// рабочих местах управления настройками не будет +// предлагаться настроить этот вид обмена. +// Существующие обмены этого вида будут продолжать +// отображаться в списке настроенных обменов. +// Получении сообщения обмена в новом формате будет +// инициировать переход на новый вид обмена. // * НаименованиеКонфигурацииКорреспондента - Строка - Содержит представление наименования // конфигурации корреспондента выводимое в // пользовательском интерфейсе. // * ЗаголовокУзлаПланаОбмена - Строка - Содержит представление узла плана обмена // выводимое в пользовательском интерфейсе. // * ВариантыНастроекОбмена - Массив - Список возможных настроек плана обмена. -// Используется для для создания заготовленных +// Используется для создания заготовленных // шаблонов с заполненным настройками планов // обмена. // * ОтображатьНастройкуОтборовНаУзле - Булево - Признак отображения настроек отборов на узле @@ -2533,7 +2608,20 @@ // * ОтображатьЗначенияПоУмолчаниюНаУзлеБазыКорреспондента - Булево - Признак отображения значений по умолчанию // базы-корреспондента в помощнике создания // обмена. +// * ВидГруппыДляВариантовНастроек - ВидГруппыФормы - вариант вида группы для отображения в +// дереве команд создания обмена вариантов настроек. // * НазначениеПланаОбмена - Строка - Вариант назначения плана обмена. +// * ОписанияВариантовНастроекОбмена - ТаблицаЗначений - определяет порядок использования вариантов +// настроек обмена в зависимости от вида корреспондента: +// *ИдентификаторНастройки - Строка - выбирается из +// перечня, заданного в ВариантыНастроекОбмена. +// *ИмяКорреспондента - Строка - выбирается исходя из +// значения, заданного в функции ИмяКонфигурацииИсточника +// модуля менеджера плана обмена на стороне корреспондента. +// В случае, если параметр не заполнен, функциональность +// вариантов настроек плана обмена при настройке +// синхронизации с другим приложением в сервисе +// не используется. // Функция НастройкиПланаОбменаПоУмолчанию(ИмяПланаОбмена) @@ -2550,6 +2638,7 @@ Параметры.Вставить("ПутьКФайлуКомплектаПравилВКаталогеШаблонов", ""); Параметры.Вставить("ЗаголовокКомандыДляСозданияНовогоОбменаДанными", МетаданныеПланаОбмена.Синоним); Параметры.Вставить("ЗаголовокПомощникаСозданияОбмена", ЗаголовокФормыПомощника); + Параметры.Вставить("ИмяПланаОбменаДляПереходаНаНовыйОбмен", ""); Параметры.Вставить("НаименованиеКонфигурацииКорреспондента", МетаданныеПланаОбмена.Синоним); Параметры.Вставить("ЗаголовокУзлаПланаОбмена", МетаданныеПланаОбмена.Синоним); Параметры.Вставить("ВариантыНастроекОбмена", Новый Массив()); @@ -2558,13 +2647,22 @@ Параметры.Вставить("ОтображатьНастройкуОтборовНаУзлеБазыКорреспондента", Истина); Параметры.Вставить("ОтображатьЗначенияПоУмолчаниюНаУзлеБазыКорреспондента", Истина); Параметры.Вставить("ЭтоПланОбменаXDTO", Ложь); + Параметры.Вставить("ВидГруппыДляВариантовНастроек", ВидГруппыФормы.Подменю); Параметры.Вставить("НазначениеПланаОбмена", ?(МетаданныеПланаОбмена.РаспределеннаяИнформационнаяБаза, "РИБ", "СинхронизацияСДругойПрограммой")); + + ОписанияВариантовНастроекОбмена = Новый ТаблицаЗначений; + ОписаниеТиповСтрока = Новый ОписаниеТипов("Строка"); + ОписанияВариантовНастроекОбмена.Колонки.Добавить("ИдентификаторНастройки", ОписаниеТиповСтрока); + ОписанияВариантовНастроекОбмена.Колонки.Добавить("ИмяКорреспондента", ОписаниеТиповСтрока); + Параметры.Вставить("ОписанияВариантовНастроекОбмена", ОписанияВариантовНастроекОбмена); + Возврат Параметры; КонецФункции // Получает значение настройки плана обмена по ее имени. +// Для несуществующих параметров возвращается Неопределено. // // Параметры: // ИмяПланаОбмена - Строка - Имя плана обмена из метаданных. @@ -2578,6 +2676,7 @@ // Функция ЗначениеНастройкиПланаОбмена(ИмяПланаОбмена, ИмяПараметра, ИдентификаторНастройки = "") Экспорт + ЗначениеПараметра = Неопределено; ПараметрыПоУмолчанию = НастройкиПланаОбменаПоУмолчанию(ИмяПланаОбмена); Если ОбменДаннымиПовтИсп.ПланыОбменаБСП().Найти(ИмяПланаОбмена) <> Неопределено Тогда ПланыОбмена[ИмяПланаОбмена].ОпределитьНастройки(ПараметрыПоУмолчанию, ИдентификаторНастройки); @@ -2585,7 +2684,7 @@ Если СтрНайти(ИмяПараметра, ",") = 0 Тогда - ЗначениеПараметра = ПараметрыПоУмолчанию[ИмяПараметра]; + ПараметрыПоУмолчанию.Свойство(ИмяПараметра, ЗначениеПараметра); Иначе @@ -2920,7 +3019,7 @@ ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииУстановкаПодключенияКWebСервису(), УровеньЖурналаРегистрации.Ошибка,,, СтрокаСообщенияОбОшибке); Возврат Неопределено; КонецПопытки; - + Попытка ОбменДаннымиКлиентСервер.ПроверитьНедопустимыеСимволыВИмениПользователяWSПрокси(СтруктураНастроек.WSИмяПользователя); Исключение @@ -2934,16 +3033,17 @@ МестоположениеWSDL = СтрЗаменить(МестоположениеWSDL, "[URLВебСервиса]", СтруктураНастроек.WSURLВебСервиса); МестоположениеWSDL = СтрЗаменить(МестоположениеWSDL, "[ИмяСервиса]", СтруктураНастроек.WSИмяСервиса); + ПараметрыПодключения = ОбщегоНазначения.ПараметрыПодключенияWSПрокси(); + ПараметрыПодключения.АдресWSDL = МестоположениеWSDL; + ПараметрыПодключения.URIПространстваИмен = СтруктураНастроек.WSURLПространстваИменСервиса; + ПараметрыПодключения.ИмяСервиса = СтруктураНастроек.WSИмяСервиса; + ПараметрыПодключения.ИмяПользователя = СтруктураНастроек.WSИмяПользователя; + ПараметрыПодключения.Пароль = СтруктураНастроек.WSПароль; + ПараметрыПодключения.Таймаут = СтруктураНастроек.WSТаймаут; + ПараметрыПодключения.ДелатьКонтрольныйВызов = ДелатьКонтрольныйВызов; + Попытка - WSПрокси = ОбщегоНазначения.WSПрокси( - МестоположениеWSDL, - СтруктураНастроек.WSURLПространстваИменСервиса, - СтруктураНастроек.WSИмяСервиса, - , - СтруктураНастроек.WSИмяПользователя, - СтруктураНастроек.WSПароль, - СтруктураНастроек.WSТаймаут, - ДелатьКонтрольныйВызов); + WSПрокси = ОбщегоНазначения.СоздатьWSПрокси(ПараметрыПодключения); Исключение СообщениеПользователю = КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); СтрокаСообщенияОбОшибке = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); @@ -3026,11 +3126,7 @@ Функция ПолноеИмяФайлаДанныхОтложенногоОбновления() - КаталогВременныхФайлов = ОбменДаннымиПовтИсп.КаталогВременногоХранилищаФайлов(); - ИмяФайла = ОбщегоНазначенияКлиентСервер.ПолучитьПолноеИмяФайла( - КаталогВременныхФайлов, "updatedata.xml"); - - Возврат ИмяФайла; + Возврат ПолучитьИмяВременногоФайла(".xml"); КонецФункции @@ -3074,7 +3170,7 @@ Если Не ПравоДоступа("Изменение", Набор.Метаданные()) Тогда // Отсутствуют права на всю таблицу регистра. ТекстИсключения = НСтр("ru = 'Нарушение прав доступа: %1'"); - ТекстИсключения = СтрШаблон(ТекстИсключения, СтрокаДвижения.Имя); + ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстИсключения, СтрокаДвижения.Имя); ВызватьИсключение ТекстИсключения; КонецЕсли; @@ -3095,7 +3191,7 @@ // Возможно «сработал» RLS или подсистема даты запрета изменения. ТекстИсключения = НСтр("ru = 'Операция не выполнена: %1 |%2'"); - ТекстИсключения = СтрШаблон(ТекстИсключения, СтрокаДвижения.Имя, КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); + ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстИсключения, СтрокаДвижения.Имя, КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); ВызватьИсключение ТекстИсключения; КонецПопытки; КонецЦикла; @@ -3257,8 +3353,7 @@ ОписаниеПрофиля = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом").НовоеОписаниеПрофиляГруппДоступа(); ОписаниеПрофиля.Идентификатор = ПрофильДоступаСинхронизацияДанныхСДругимиПрограммами(); ОписаниеПрофиля.Наименование = - НСтр("ru = 'Синхронизация данных с другими программами'", - Метаданные.ОсновнойЯзык.КодЯзыка); + НСтр("ru = 'Синхронизация данных с другими программами'", Метаданные.ОсновнойЯзык.КодЯзыка); ОписаниеПрофиля.Описание = НСтр("ru = 'Дополнительно назначается тем пользователям, которым должны быть доступны средства |для мониторинга и синхронизации данных с другими программами.'", @@ -3571,8 +3666,18 @@ Выборка = Запрос.Выполнить().Выбрать(); + ЭтоПодчиненныйУзелРИБТребующийУстановкиОбновления = + ЭтоПодчиненныйУзелРИБ() + И ОбменДаннымиВызовСервера.ТребуетсяУстановкаОбновления(); + Пока Выборка.Следующий() Цикл + Если ЭтоПодчиненныйУзелРИБТребующийУстановкиОбновления + И ОбменДаннымиПовтИсп.ЭтоУзелРаспределеннойИнформационнойБазы(Выборка.УзелИнформационнойБазы) Тогда + // Обмен по расписанию не выполняется. + Продолжить; + КонецЕсли; + Если Выборка.ОбменЧерезВнешнееСоединение Тогда ПроверитьВозможностьВнешнегоСоединения(); @@ -3590,7 +3695,7 @@ Иначе // ИНИЦИАЛИЗАЦИЯ ОБМЕНА ДАННЫМИ - СтруктураНастроекОбмена = ОбменДаннымиПовтИсп.ПолучитьСтруктуруНастроекОбмена(Выборка.НастройкаВыполненияОбмена, Выборка.НомерСтроки); + СтруктураНастроекОбмена = ОбменДаннымиПовтИсп.НастройкиОбменаДанными(Выборка.НастройкаВыполненияОбмена, Выборка.НомерСтроки); // Если настройка содержит ошибки, то обмен не производим; статус "Отменено". Если СтруктураНастроекОбмена.Отказ Тогда @@ -3698,7 +3803,7 @@ Результат.Вставить("ИмяФайлаСообщенияОбмена", ""); Результат.Вставить("ИдентификаторФайлаПакетаДанных", Неопределено); - СтруктураНастроекОбмена = ОбменДаннымиПовтИсп.ПолучитьСтруктуруНастроекТранспорта(УзелИнформационнойБазы, ВидТранспортаСообщенийОбмена); + СтруктураНастроекОбмена = ОбменДаннымиПовтИсп.НастройкиТранспортаУзлаПланаОбмена(УзелИнформационнойБазы, ВидТранспортаСообщенийОбмена); СтруктураНастроекОбмена.РезультатВыполненияОбмена = Неопределено; СтруктураНастроекОбмена.ДатаНачала = ТекущаяДатаСеанса(); @@ -4210,6 +4315,44 @@ КонецФункции +// Заполняет настройку обмена КаталогСбораИнформацииОбОбменах из параметров запуска. +Процедура УстановитьНастройкуКаталогСбораИнформацииОбОбменах(СтруктураНастроекОбмена) + // Каталог сбора информации об обменах. + ПараметрЗапускаКлиента = ""; + Попытка + ПараметрЗапускаКлиента = ПараметрыСеанса.ПараметрыКлиентаНаСервере.Получить("ПараметрЗапуска"); + Исключение + // Параметр может быть не инициализирован - это не ошибка. + Возврат; + КонецПопытки; + Если ЗначениеЗаполнено(ПараметрЗапускаКлиента) Тогда + СтруктураПараметровЗапуска = СтроковыеФункцииКлиентСервер.ПолучитьПараметрыИзСтроки(ПараметрЗапускаКлиента); + КаталогСбораИнформацииОбОбменах = ""; + Если СтруктураПараметровЗапуска.Свойство("КаталогСбораИнформацииОбОбменах", КаталогСбораИнформацииОбОбменах) Тогда + СтруктураНастроекОбмена.КаталогСбораИнформацииОбОбменах = КаталогСбораИнформацииОбОбменах; + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +// Создает копию файла сообщения обмена при загрузке в каталог КаталогСбораИнформацииОбОбменах. +Процедура СоздатьКопиюФайлаСообщенияОбмена(СтруктураНастроекОбмена, ИмяФайлаСообщенияОбмена) + Если НЕ ЗначениеЗаполнено(СтруктураНастроекОбмена.КаталогСбораИнформацииОбОбменах) Тогда + Возврат; + КонецЕсли; + // Имя вложенного каталога по настройкам обмена. + ИмяПодкаталога1 = СтруктураНастроекОбмена.ИмяПланаОбмена + "_" + + СтруктураНастроекОбмена.УзелИнформационнойБазыКод; + ИмяПодкаталога2 = Формат(СтруктураНастроекОбмена.ДатаНачала,"ДЛФ=ДВ"); + ПолныйПутьКФайлу = СтруктураНастроекОбмена.КаталогСбораИнформацииОбОбменах + "\" + ИмяПодкаталога1 + "\" + + ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыВИмениФайла(ИмяПодкаталога2, "_"); + КраткоеИмяФайла = ОбщегоНазначенияКлиентСервер.РазложитьПолноеИмяФайла(ИмяФайлаСообщенияОбмена).Имя; + ВложенныйКаталог = Новый Файл(ПолныйПутьКФайлу); + Если НЕ ВложенныйКаталог.Существует() Тогда + СоздатьКаталог(ПолныйПутьКФайлу); + КонецЕсли; + КопироватьФайл(ИмяФайлаСообщенияОбмена, ОбщегоНазначенияКлиентСервер.ПолучитьПолноеИмяФайла(ПолныйПутьКФайлу, КраткоеИмяФайла)); +КонецПроцедуры + #КонецОбласти #Область ДляРаботыЧерезВнешнееСоединение @@ -4380,7 +4523,7 @@ КонецЕсли; // ИНИЦИАЛИЗАЦИЯ ОБМЕНА ДАННЫМИ - СтруктураНастроекОбмена = ОбменДаннымиПовтИсп.ПолучитьСтруктуруНастроекОбменаДляУзлаИнформационнойБазы( + СтруктураНастроекОбмена = ОбменДаннымиПовтИсп.НастройкиОбменаУзлаИнформационнойБазы( ПараметрыОбмена.УзелИнформационнойБазы, ПараметрыОбмена.ДействиеПриОбмене, Неопределено, Ложь); Если СтруктураНастроекОбмена.Отказ Тогда @@ -4517,7 +4660,7 @@ УстановитьПривилегированныйРежим(Истина); // ИНИЦИАЛИЗАЦИЯ ОБМЕНА ДАННЫМИ - СтруктураНастроекОбмена = ОбменДаннымиПовтИсп.ПолучитьСтруктуруНастроекОбменаДляУзлаИнформационнойБазы(УзелИнформационнойБазы, ДействиеПриОбмене, Перечисления.ВидыТранспортаСообщенийОбмена.WS, Ложь); + СтруктураНастроекОбмена = ОбменДаннымиПовтИсп.НастройкиОбменаУзлаИнформационнойБазы(УзелИнформационнойБазы, ДействиеПриОбмене, Перечисления.ВидыТранспортаСообщенийОбмена.WS, Ложь); Если СтруктураНастроекОбмена.Отказ Тогда // Если настройка содержит ошибки, то обмен не производим; статус "Отменено". @@ -5384,6 +5527,7 @@ // Процедура ПрочитатьСообщениеСИзменениямиДляУзла(СтруктураНастроекОбмена, Знач ИмяФайлаСообщенияОбмена = "", СообщениеОбмена = "", Знач ТолькоПараметры = Ложь) + СоздатьКопиюФайлаСообщенияОбмена(СтруктураНастроекОбмена, ИмяФайлаСообщенияОбмена); Если СтруктураНастроекОбмена.ЭтоОбменВРИБ Тогда // Обмен в РИБ Отказ = Ложь; @@ -5714,13 +5858,10 @@ ИспользоватьТранзакции = КоличествоЭлементовВТранзакции <> 1; + // Если используются транзакции, открываем новую Если ИспользоватьТранзакции Тогда - - // начинаем транзакцию НачатьТранзакцию(); - КонецЕсли; - Попытка // Читаем данные из сообщения @@ -5815,32 +5956,28 @@ КонецЦикла; - Исключение - - РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка; - - ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Ошибка, - УзелИнформационнойБазы.Метаданные(), УзелИнформационнойБазы, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - // - КонецПопытки; - - Если РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка Тогда - - ЧтениеСообщения.ПрерватьЧтение(); - - Если ИспользоватьТранзакции Тогда - ОтменитьТранзакцию(); + Если РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка Тогда + ВызватьИсключение(НСтр("ru = 'В процессе получения данных возникли ошибки.'")); КонецЕсли; - Иначе - - ЧтениеСообщения.ЗакончитьЧтение(); - - ПриВосстановленииРезервнойКопии(ПараметрыРезервнойКопии); Если ИспользоватьТранзакции Тогда ЗафиксироватьТранзакцию(); КонецЕсли; - + Исключение + РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка; + ЗаписьЖурналаРегистрации(КлючСообщенияЖурналаРегистрации, УровеньЖурналаРегистрации.Ошибка, + УзелИнформационнойБазы.Метаданные(), УзелИнформационнойБазы, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + + Если ИспользоватьТранзакции Тогда + ОтменитьТранзакцию(); + КонецЕсли; + КонецПопытки; + + Если РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Ошибка Тогда + ЧтениеСообщения.ПрерватьЧтение(); + Иначе + ЧтениеСообщения.ЗакончитьЧтение(); + ПриВосстановленииРезервнойКопии(ПараметрыРезервнойКопии); КонецЕсли; ЧтениеXML.Закрыть(); @@ -5958,9 +6095,9 @@ // Возвращаемое значение: // Строка - возвращает имя файла, который используется для проверки подключения обработки транспорта. // -Функция ИмяФайлаПроверкиПодключения() Экспорт - - Возврат "ConnectionCheckFile.tmp"; +Функция ИмяВременногоФайлаПроверкиПодключения() Экспорт + ПостфиксФайла = Строка(Новый УникальныйИдентификатор()); + Возврат "ConnectionCheckFile_" + ПостфиксФайла + ".tmp"; КонецФункции @@ -6026,7 +6163,8 @@ ОбработкаТранспортаСообщенийОбмена = СтруктураНастроекОбмена.ОбработкаТранспортаСообщенийОбмена; // Отправляем сообщение обмена из временного каталога. - Если Не ОбработкаТранспортаСообщенийОбмена.ОтправитьСообщение() Тогда + Если Не ОбработкаТранспортаСообщенийОбмена.ПодключениеУстановлено() + Или Не ОбработкаТранспортаСообщенийОбмена.ОтправитьСообщение() Тогда ЗаписьЖурналаРегистрацииОбменаДанными(ОбработкаТранспортаСообщенийОбмена.СтрокаСообщенияОбОшибкеЖР, СтруктураНастроекОбмена, Истина); @@ -6042,7 +6180,8 @@ ОбработкаТранспортаСообщенийОбмена = СтруктураНастроекОбмена.ОбработкаТранспортаСообщенийОбмена; // Получаем сообщение обмена во временный каталог. - Если Не ОбработкаТранспортаСообщенийОбмена.ПолучитьСообщение() Тогда + Если Не ОбработкаТранспортаСообщенийОбмена.ПодключениеУстановлено() + Или Не ОбработкаТранспортаСообщенийОбмена.ПолучитьСообщение() Тогда ЗаписьЖурналаРегистрацииОбменаДанными(ОбработкаТранспортаСообщенийОбмена.СтрокаСообщенияОбОшибкеЖР, СтруктураНастроекОбмена, Истина); @@ -7268,7 +7407,12 @@ Пока Выборка.Следующий() Цикл - ЗаполнитьЗначенияСвойствДляТаблицыЗначенийПРО(ПравилаРегистрацииОбъектов, Выборка.ПравилаЗачитанные.Получить()); + ПравилаЗачитанные = Выборка.ПравилаЗачитанные.Получить(); + Если ПравилаЗачитанные = Неопределено Тогда + Продолжить; + КонецЕсли; + + ЗаполнитьЗначенияСвойствДляТаблицыЗначенийПРО(ПравилаРегистрацииОбъектов, ПравилаЗачитанные); КонецЦикла; @@ -7421,13 +7565,20 @@ Функция ОписаниеПравилСинхронизацииДанных(Знач УзелИнформационнойБазы) Экспорт + УстановитьПривилегированныйРежим(Истина); + ВерсияКорреспондента = ВерсияКорреспондента(УзелИнформационнойБазы); ИмяПланаОбмена = ОбменДаннымиПовтИсп.ПолучитьИмяПланаОбмена(УзелИнформационнойБазы); Настройка = ЗначенияНастроекОтборовНаУзле(УзелИнформационнойБазы, ВерсияКорреспондента); - Возврат ОписаниеОграниченийПередачиДанных(ИмяПланаОбмена, Настройка, ВерсияКорреспондента, СохраненныйВариантНастройкиУзлаПланаОбмена(УзелИнформационнойБазы)); + ОписаниеПравилСинхронизацииДанных = ОписаниеОграниченийПередачиДанных( + ИмяПланаОбмена, Настройка, ВерсияКорреспондента, СохраненныйВариантНастройкиУзлаПланаОбмена(УзелИнформационнойБазы)); + + УстановитьПривилегированныйРежим(Ложь); + + Возврат ОписаниеПравилСинхронизацииДанных; КонецФункции @@ -7523,6 +7674,8 @@ УстановитьНастройкиРежимаОтладкиДляСтруктуры(СтруктураНастроекОбмена); + УстановитьНастройкуКаталогСбораИнформацииОбОбменах(СтруктураНастроекОбмена); + // Проверяем структуру настроек на валидность значений для выполнения обмена. Ошибки фиксируем в ЖР. ВыполнитьПроверкуСтруктурыОбменаНаВалидность(СтруктураНастроекОбмена, ИспользоватьНастройкиТранспорта); @@ -7866,6 +8019,8 @@ СтруктураНастроекОбмена.Вставить("СообщениеПриОбмене", ""); СтруктураНастроекОбмена.Вставить("СтрокаСообщенияОбОшибке", ""); + СтруктураНастроекОбмена.Вставить("КаталогСбораИнформацииОбОбменах", ""); + Возврат СтруктураНастроекОбмена; КонецФункции @@ -8365,6 +8520,7 @@ // Объект - ДокументОбъект - Документ при отложенном проведении которого возникли ошибки. // УзелОбмена - ПланОбменаСсылка - Узел информационной базы из которой получен документ. // СообщениеОбОшибке - Сообщение об ошибке для журнала регистрации. +// РегистрироватьПроблемыВРезультатахОбмена - Булево - необходимо регистрировать проблемы. // // Примечание: СообщениеОбОшибке содержит в себе текст сообщения для журнала регистрации. // Рекомендуется передавать в качестве этого параметра КраткоеПредставлениеОшибки(ИнформацияОбОшибке()). @@ -8393,11 +8549,18 @@ // // КонецПроцедуры; // -Процедура ЗарегистрироватьОшибкуПроведенияДокумента(Объект, УзелОбмена, ТекстИсключения) Экспорт +Процедура ЗарегистрироватьОшибкуПроведенияДокумента( + Объект, + УзелОбмена, + ТекстИсключения, + РегистрироватьПроблемыВРезультатахОбмена = Ложь) Экспорт СообщенияПользователю = ПолучитьСообщенияПользователю(Истина); ТекстСообщения = ТекстИсключения; Для Каждого Сообщение Из СообщенияПользователю Цикл + Если Найти(Сообщение.Текст, ДлительныеОперации.СообщениеПрогресса()) > 0 Тогда + Продолжить; + КонецЕсли; ТекстСообщения = ТекстСообщения + ?(ПустаяСтрока(ТекстСообщения), "", Символы.ПС) + Сообщение.Текст; КонецЦикла; @@ -8416,8 +8579,10 @@ ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииОбменДанными(), УровеньЖурналаРегистрации.Предупреждение,,, СтрокаСообщения); - РегистрыСведений.РезультатыОбменаДанными.ЗарегистрироватьОшибкуПроверкиОбъекта(Объект.Ссылка, УзелОбмена, - ТекстСообщения, Перечисления.ТипыПроблемОбменаДанными.НепроведенныйДокумент); + Если РегистрироватьПроблемыВРезультатахОбмена Тогда + РегистрыСведений.РезультатыОбменаДанными.ЗарегистрироватьОшибкуПроверкиОбъекта(Объект.Ссылка, УзелОбмена, + ТекстСообщения, Перечисления.ТипыПроблемОбменаДанными.НепроведенныйДокумент); + КонецЕсли; КонецПроцедуры @@ -8460,6 +8625,9 @@ СообщенияПользователю = ПолучитьСообщенияПользователю(Истина); ТекстСообщения = ТекстИсключения; Для Каждого Сообщение Из СообщенияПользователю Цикл + Если Найти(Сообщение.Текст, ДлительныеОперации.СообщениеПрогресса()) > 0 Тогда + Продолжить; + КонецЕсли; ТекстСообщения = ТекстСообщения + ?(ПустаяСтрока(ТекстСообщения), "", Символы.ПС) + Сообщение.Текст; КонецЦикла; @@ -9123,7 +9291,17 @@ Уровень = ?(ЭтоОшибка, УровеньЖурналаРегистрации.Ошибка, УровеньЖурналаРегистрации.Информация); - ЗаписьЖурналаРегистрации(СтруктураНастроекОбмена.КлючСообщенияЖурналаРегистрации, Уровень,,, Комментарий); + Если СтруктураНастроекОбмена.Свойство("УзелИнформационнойБазы") Тогда + + ЗаписьЖурналаРегистрации(СтруктураНастроекОбмена.КлючСообщенияЖурналаРегистрации, + Уровень, + СтруктураНастроекОбмена.УзелИнформационнойБазы.Метаданные(), + СтруктураНастроекОбмена.УзелИнформационнойБазы, + Комментарий); + + Иначе + ЗаписьЖурналаРегистрации(СтруктураНастроекОбмена.КлючСообщенияЖурналаРегистрации, Уровень,,, Комментарий); + КонецЕсли; КонецПроцедуры @@ -9590,9 +9768,13 @@ Возврат; КонецЕсли; - ДанныеЭтойИнформационнойБазы = ДанныеДляТабличныхЧастейУзловЭтойИнформационнойБазы(ИмяПланаОбмена, Форма.ВерсияКорреспондента); + ПараметрыИзФормы = Новый Структура("ВерсияКорреспондента, ИдентификаторНастройки"); + ЗаполнитьЗначенияСвойств(ПараметрыИзФормы, Форма); + ДанныеЭтойИнформационнойБазы = ДанныеДляТабличныхЧастейУзловЭтойИнформационнойБазы(ИмяПланаОбмена, + ПараметрыИзФормы.ВерсияКорреспондента, ПараметрыИзФормы.ИдентификаторНастройки); - ТабличныеЧастиПланаОбмена = ОбменДаннымиПовтИсп.ТабличныеЧастиПланаОбмена(ИмяПланаОбмена, Форма.ВерсияКорреспондента); + ТабличныеЧастиПланаОбмена = ОбменДаннымиПовтИсп.ТабличныеЧастиПланаОбмена(ИмяПланаОбмена, + Форма.ВерсияКорреспондента, ПараметрыИзФормы.ИдентификаторНастройки); ИменаРеквизитовФормы = ИменаРеквизитовФормы(Форма); @@ -9724,6 +9906,8 @@ Для Каждого ЭлементНастройки Из НастройкаОтборовНаУзле Цикл + ЗначениеОтбора = ЭлементНастройки.Значение; + Если СоответствующиеРеквизиты.Свойство(ЭлементНастройки.Ключ) Тогда ИмяРеквизита = СоответствующиеРеквизиты[ЭлементНастройки.Ключ]; Иначе @@ -9734,14 +9918,47 @@ Если ТипЗнч(РеквизитФормы) = Тип("ДанныеФормыКоллекция") Тогда - Если ТипЗнч(ЭлементНастройки.Значение) = Тип("Массив") - И ЭлементНастройки.Значение.Количество() > 0 Тогда + // В случае начального заполнения отбора-коллекции значениями по умолчанию + // необходимо выполнять преобразование значения отбора, представленного в виде структуры. + // Значения для заполнения получаются из первого элемента структуры. + Если ТипЗнч(ЗначениеОтбора) = Тип("Структура") Тогда + + НовоеЗначениеОтбора = Новый Массив; + Для Каждого ЭлементСтруктурыОтбора Из ЗначениеОтбора Цикл + + ЗначенияИзСтруктуры = ЭлементСтруктурыОтбора.Значение; + Для Каждого ЗначениеИзСтруктуры Из ЗначенияИзСтруктуры Цикл + + ОписаниеЗначения = Новый Структура(); + ОписаниеЗначения.Вставить("Использовать", Истина); + ОписаниеЗначения.Вставить("Представление", ЗначениеИзСтруктуры); + + УникальныйИдентификаторСсылки = ?(ОбщегоНазначения.ЭтоСсылка(ТипЗнч(ЗначениеИзСтруктуры)), + ЗначениеИзСтруктуры.УникальныйИдентификатор(), + Неопределено); + ОписаниеЗначения.Вставить("УникальныйИдентификаторСсылки", Строка(УникальныйИдентификаторСсылки)); + + НовоеЗначениеОтбора.Добавить(ОписаниеЗначения); + + КонецЦикла; + + Прервать; + + КонецЦикла; + + ЗначениеОтбора = НовоеЗначениеОтбора; + НастройкаОтборовНаУзле[ЭлементНастройки.Ключ] = ЗначениеОтбора; + + КонецЕсли; + + Если ТипЗнч(ЗначениеОтбора) = Тип("Массив") + И ЗначениеОтбора.Количество() > 0 Тогда Таблица = Форма[ИмяРеквизита].Выгрузить(); Таблица.Очистить(); - Для Каждого СтрокаТаблицы Из ЭлементНастройки.Значение Цикл + Для Каждого СтрокаТаблицы Из ЗначениеОтбора Цикл ЗаполнитьЗначенияСвойств(Таблица.Добавить(), СтрокаТаблицы); @@ -9753,7 +9970,7 @@ Иначе - Форма[ИмяРеквизита] = ЭлементНастройки.Значение; + Форма[ИмяРеквизита] = ЗначениеОтбора; КонецЕсли; @@ -10080,11 +10297,11 @@ Возврат Результат; КонецФункции -Функция ДанныеДляТабличныхЧастейУзловЭтойИнформационнойБазы(Знач ИмяПланаОбмена, ВерсияКорреспондента = "") Экспорт +Функция ДанныеДляТабличныхЧастейУзловЭтойИнформационнойБазы(Знач ИмяПланаОбмена, ВерсияКорреспондента = "", ИдентификаторНастройки = "") Экспорт Результат = Новый Структура; - ОбщиеТаблицыУзлов = ОбменДаннымиПовтИсп.ТабличныеЧастиПланаОбмена(ИмяПланаОбмена, ВерсияКорреспондента)["ВсеТаблицыЭтойБазы"]; + ОбщиеТаблицыУзлов = ОбменДаннымиПовтИсп.ТабличныеЧастиПланаОбмена(ИмяПланаОбмена, ВерсияКорреспондента, ИдентификаторНастройки)["ВсеТаблицыЭтойБазы"]; Для Каждого ИмяТабличнойЧасти Из ОбщиеТаблицыУзлов Цикл @@ -10492,7 +10709,7 @@ Отбор = Новый Структура("ПолноеИмя", ОтборСтрока); // Получаем дерево объектов метаданных конфигурации. - ДеревоИнформацииСтатистики = ОбменДаннымиПовтИсп.ПолучитьДеревоМетаданныхКонфигурации(Отбор).Скопировать(); + ДеревоИнформацииСтатистики = ОбменДаннымиПовтИсп.МетаданныеКонфигурации(Отбор).Скопировать(); // Добавляем колонки ДеревоИнформацииСтатистики.Колонки.Добавить("Ключ"); @@ -10708,7 +10925,7 @@ // Выполняет проверку подключения обработки транспорта по заданным настройкам. // -Процедура ПроверитьПодключениеОбработкиТранспортаСообщенийОбмена(Отказ, СтруктураНастроек, ВидТранспорта, СообщениеОбОшибке = "") Экспорт +Процедура ПроверитьПодключениеОбработкиТранспортаСообщенийОбмена(Отказ, СтруктураНастроек, ВидТранспорта, СообщениеОбОшибке = "", НовыйПароль = Неопределено) Экспорт УстановитьПривилегированныйРежим(Истина); @@ -10718,12 +10935,21 @@ // Инициализация свойств обработки переданными параметрами настроек. ЗаполнитьЗначенияСвойств(ОбработкаОбъект, СтруктураНастроек); - // Привилегированный режим установлен выше + // Привилегированный режим установлен выше. Если СтруктураНастроек.Свойство("Узел") Тогда - Пароли = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(СтруктураНастроек.Узел, "COMПарольПользователя, FTPСоединениеПароль, WSПароль, ПарольАрхиваСообщенияОбмена", Истина); + Если НовыйПароль = Неопределено Тогда + Пароли = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(СтруктураНастроек.Узел, "COMПарольПользователя, FTPСоединениеПароль, WSПароль, ПарольАрхиваСообщенияОбмена", Истина); + Иначе + Пароли = Новый Структура; + Пароли.Вставить("COMПарольПользователя", НовыйПароль); + Пароли.Вставить("FTPСоединениеПароль", НовыйПароль); + Пароли.Вставить("WSПароль", НовыйПароль); + Пароли.Вставить("ПарольАрхиваСообщенияОбмена", НовыйПароль); + КонецЕсли; ЗаполнитьЗначенияСвойств(ОбработкаОбъект, Пароли); КонецЕсли; + // Инициализация транспорта обмена. ОбработкаОбъект.Инициализация(); @@ -11553,12 +11779,6 @@ КонецФункции -Функция ИнвертироватьПолучениеЭлементаДанныхПоУмолчанию(Знач ПолучениеОтГлавного) Экспорт - - Возврат ?(ПолучениеОтГлавного, ПолучениеЭлементаДанных.Игнорировать, ПолучениеЭлементаДанных.Принять); - -КонецФункции - Функция ВариантОбменаДанными(Знач Корреспондент) Экспорт Результат = "Синхронизация"; @@ -11931,9 +12151,9 @@ // Процедура ИнтерактивноеИзменениеВыгрузки_СформироватьТабличныйДокументПользователя(Параметры, АдресРезультата) Экспорт - ОбъектОтчета = ИнтерактивноеИзменениеВыгрузки_ОбъектПоНастройкам(Параметры.СтруктураОбработки); - Результат = ОбъектОтчета.СформироватьТабличныйДокументПользователя(Параметры.ПолноеИмяМетаданных, Параметры.Представление, Параметры.УпрощенныйРежим); - ПоместитьВоВременноеХранилище(Результат, АдресРезультата); + ОбъектОтчета = ИнтерактивноеИзменениеВыгрузки_ОбъектПоНастройкам(Параметры.СтруктураОбработки); + РезультатВыполнения = ОбъектОтчета.СформироватьТабличныйДокументПользователя(Параметры.ПолноеИмяМетаданных, Параметры.Представление, Параметры.УпрощенныйРежим); + ПоместитьВоВременноеХранилище(РезультатВыполнения, АдресРезультата); КонецПроцедуры @@ -12070,9 +12290,9 @@ Дело.Важное = Истина; Дело.Представление = НСтр("ru = 'Обновить версию программы'"); Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбновлениеКонфигурации") Тогда - МодульОбновлениеКонфигурацииКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ОбновлениеКонфигурацииКлиентСервер"); + МодульОбновлениеКонфигурации = ОбщегоНазначения.ОбщийМодуль("ОбновлениеКонфигурации"); ПараметрыФормы = Новый Структура("ЗавершениеРаботыСистемы, ПолученоОбновлениеКонфигурации", Ложь, Ложь); - Дело.Форма = МодульОбновлениеКонфигурацииКлиентСервер.ИмяФормыОбработкиОбновлениеКонфигурации(); + Дело.Форма = МодульОбновлениеКонфигурации.ИмяФормыУстановкиОбновления(); Дело.ПараметрыФормы = ПараметрыФормы; Иначе Дело.Форма = "ОбщаяФорма.ДополнительноеОписание"; @@ -12110,11 +12330,10 @@ КонецЕсли; // Если в командном интерфейсе нет раздела к которому относится регистр сведений, дело не добавляется. - ПодсистемыКомандногоИнтерфейса = МодульТекущиеДелаСервер.РазделыДляОбъекта("РегистрСведений.ПравилаДляОбменаДанными"); - Если ПодсистемыКомандногоИнтерфейса.Количество() = 0 Тогда + Разделы = МодульТекущиеДелаСервер.РазделыДляОбъекта("РегистрСведений.ПравилаДляОбменаДанными"); + Если Разделы.Количество() = 0 Тогда Возврат; КонецЕсли; - Подсистема = ПодсистемыКомандногоИнтерфейса[0]; ВывестиДело = Истина; ПровереноНаВерсию = ХранилищеОбщихНастроек.Загрузить("ТекущиеДела", "ПланыОбмена"); @@ -12128,35 +12347,39 @@ ПланыОбменаСПравиламиИзФайла = ПланыОбменаСПравиламиИзФайла(); - // Добавление дела. - Дело = ТекущиеДела.Добавить(); - Дело.Идентификатор = "ПравилаОбмена"; - Дело.ЕстьДела = ВывестиДело И ПланыОбменаСПравиламиИзФайла > 0; - Дело.Представление = НСтр("ru = 'Правила обмена'"); - Дело.Количество = ПланыОбменаСПравиламиИзФайла; - Дело.Форма = "РегистрСведений.ПравилаДляОбменаДанными.Форма.ПроверкаСинхронизацииДанных"; - Дело.Владелец = "ПроверитьСовместимостьСТекущейВерсией"; - - // Проверка наличия группы дела. Если группа отсутствует - добавляем. - ГруппаДела = ТекущиеДела.Найти("ПроверитьСовместимостьСТекущейВерсией", "Идентификатор"); - Если ГруппаДела = Неопределено Тогда - ГруппаДела = ТекущиеДела.Добавить(); - ГруппаДела.Идентификатор = "ПроверитьСовместимостьСТекущейВерсией"; - ГруппаДела.ЕстьДела = Дело.ЕстьДела; - ГруппаДела.Представление = НСтр("ru = 'Проверить совместимость'"); - Если Дело.ЕстьДела Тогда - ГруппаДела.Количество = Дело.Количество; - КонецЕсли; - ГруппаДела.Владелец = Подсистема; - Иначе - Если Не ГруппаДела.ЕстьДела Тогда - ГруппаДела.ЕстьДела = Дело.ЕстьДела; - КонецЕсли; + Для Каждого Раздел Из Разделы Цикл + ИдентификаторРаздела = "ПроверитьСовместимостьСТекущейВерсией" + СтрЗаменить(Раздел.ПолноеИмя(), ".", ""); - Если Дело.ЕстьДела Тогда - ГруппаДела.Количество = ГруппаДела.Количество + Дело.Количество; + // Добавление дела. + Дело = ТекущиеДела.Добавить(); + Дело.Идентификатор = "ПравилаОбмена"; + Дело.ЕстьДела = ВывестиДело И ПланыОбменаСПравиламиИзФайла > 0; + Дело.Представление = НСтр("ru = 'Правила обмена'"); + Дело.Количество = ПланыОбменаСПравиламиИзФайла; + Дело.Форма = "РегистрСведений.ПравилаДляОбменаДанными.Форма.ПроверкаСинхронизацииДанных"; + Дело.Владелец = ИдентификаторРаздела; + + // Проверка наличия группы дела. Если группа отсутствует - добавляем. + ГруппаДела = ТекущиеДела.Найти(ИдентификаторРаздела, "Идентификатор"); + Если ГруппаДела = Неопределено Тогда + ГруппаДела = ТекущиеДела.Добавить(); + ГруппаДела.Идентификатор = ИдентификаторРаздела; + ГруппаДела.ЕстьДела = Дело.ЕстьДела; + ГруппаДела.Представление = НСтр("ru = 'Проверить совместимость'"); + Если Дело.ЕстьДела Тогда + ГруппаДела.Количество = Дело.Количество; + КонецЕсли; + ГруппаДела.Владелец = Раздел; + Иначе + Если Не ГруппаДела.ЕстьДела Тогда + ГруппаДела.ЕстьДела = Дело.ЕстьДела; + КонецЕсли; + + Если Дело.ЕстьДела Тогда + ГруппаДела.Количество = ГруппаДела.Количество + Дело.Количество; + КонецЕсли; КонецЕсли; - КонецЕсли; + КонецЦикла; КонецПроцедуры @@ -12406,6 +12629,8 @@ // Функция ИнтерактивноеИзменениеВыгрузки(Знач УзелИнформационнойБазы, Знач АдресХранилищаФормы, Знач ЕстьСценарийУзла=Неопределено) Экспорт + УстановитьПривилегированныйРежим(Истина); + Результат = Новый Структура; Результат.Вставить("УзелИнформационнойБазы", УзелИнформационнойБазы); Результат.Вставить("ВариантВыгрузки", 0); @@ -12475,6 +12700,9 @@ КонецЕсли; Результат.Вставить("АдресХранилищаФормы", АдресХранилищаФормы); + + УстановитьПривилегированныйРежим(Ложь); + Возврат Результат; КонецФункции @@ -12650,6 +12878,9 @@ // ИмяРеквизитаДополнения - Строка - имя реквизита формы для создания или заполнения. // Процедура ИнтерактивноеИзменениеВыгрузкиРеквизитПоНастройкам(Форма, Знач НастройкиДополненияВыгрузки, Знач ИмяРеквизитаДополнения="ДополнениеВыгрузки") Экспорт + + УстановитьПривилегированныйРежим(Истина); + ПараметрыСценарияДополнения = НастройкиДополненияВыгрузки.ПараметрыСценарияДополнения; // Разбираемся с реквизитами @@ -12720,6 +12951,8 @@ ЗначениеРеквизита.ПредставлениеОтбораСценарияУзла = ПредставлениеДополненияВыгрузкиПоСценариюУзла(ЗначениеРеквизита); КонецЕсли; + УстановитьПривилегированныйРежим(Ложь); + КонецПроцедуры // Возвращает описание выгрузки по настройкам. diff --git a/SSL/src/CommonModules/ОбменДаннымиСобытия/Module.bsl b/SSL/src/CommonModules/ОбменДаннымиСобытия/Module.bsl index 647f42930..362dcd69e 100644 --- a/SSL/src/CommonModules/ОбменДаннымиСобытия/Module.bsl +++ b/SSL/src/CommonModules/ОбменДаннымиСобытия/Module.bsl @@ -177,7 +177,7 @@ #Иначе УстановитьПривилегированныйРежим(Истина); - Возврат ОбменДаннымиПовтИсп.ПолучитьМассивУзловПланаОбмена(ИмяПланаОбмена); + Возврат ОбменДаннымиПовтИсп.УзлыПланаОбмена(ИмяПланаОбмена); #КонецЕсли @@ -612,8 +612,8 @@ КонецЕсли; Если ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса.РаботаВМоделиСервиса.ОбменДаннымиВМоделиСервиса") Тогда - МодульАвтономнаяРаботаСлужебный = ОбщегоНазначения.ОбщийМодуль("АвтономнаяРаботаСлужебный"); - МодульАвтономнаяРаботаСлужебный.ОтключитьАвтоматическуюСинхронизациюДанныхСПриложениемВИнтернете(Источник); + МодульАвтономнаяРабота = ОбщегоНазначения.ОбщийМодуль("АвтономнаяРабота"); + МодульАвтономнаяРабота.ОтключитьАвтоматическуюСинхронизациюДанныхСПриложениемВИнтернете(Источник); КонецЕсли; КонецПроцедуры @@ -724,7 +724,6 @@ Если Не ОбменДаннымиПовтИсп.ЭтоУзелОбменаДаннымиБСП(Источник.Ссылка) Тогда Возврат; КонецЕсли; - Игнорировать = Истина; КонецПроцедуры @@ -838,36 +837,38 @@ // Обновляем повторно используемые значения Механизма регистрации объектов. ОбменДаннымиВызовСервера.ПроверитьКэшМеханизмаРегистрацииОбъектов(); - Если ЗначениеЗаполнено(ПараметрыСеанса.ПараметрыОбработчикаОбновления) - И Объект.ДополнительныеСвойства.Свойство("РегистрироватьНаУзлахПлановОбменаПриОбновленииИБ") Тогда - + Если Объект.ДополнительныеСвойства.Свойство("РегистрироватьНаУзлахПлановОбменаПриОбновленииИБ") Тогда + // Параметр РегистрироватьНаУзлахПлановОбменаПриОбновленииИБ указывает на то, что выполняется обновление данных ИБ. ОтключитьРегистрацию = Истина; Если Объект.ДополнительныеСвойства.РегистрироватьНаУзлахПлановОбменаПриОбновленииИБ = Неопределено Тогда - - НазначениеПланаОбмена = ОбменДаннымиПовтИсп.НазначениеПланаОбмена(ИмяПланаОбмена); - Если НазначениеПланаОбмена = "РИБСФильтром" Тогда - // Регистрация может включаться только при использовании параллельного механизма обновления. - // Если механизм используется, то регистрация определяется признаком выполнения обработчика в периферийном узле РИБ. - ПараметрыОбработчикаОбновления = ПараметрыСеанса.ПараметрыОбработчикаОбновления; - Если ПараметрыОбработчикаОбновления.РежимВыполненияОтложенныхОбработчиков = "Параллельно" Тогда - ОтключитьРегистрацию = ПараметрыОбработчикаОбновления.ЗапускатьИВПодчиненномУзлеРИБСФильтрами; - КонецЕсли; - ИначеЕсли НазначениеПланаОбмена = "РИБ" Тогда - ОтключитьРегистрацию = Не ПараметрыСеанса.ПараметрыОбработчикаОбновления.ЗапускатьТолькоВГлавномУзле; - ИначеЕсли НазначениеПланаОбмена = "СинхронизацияСДругойПрограммой" - И Не (ЭтоРегистр Или ЭтоУдалениеОбъекта Или ЭтоКонстанта) И Объект.ЭтоНовый() Тогда + // Принятие решения о необходимости регистрации данных для обмена выполняется автоматически, + // по сопутствующей информации. + Если Не (ЭтоРегистр Или ЭтоУдалениеОбъекта Или ЭтоКонстанта) И Объект.ЭтоНовый() Тогда + // Новые ссылочные объекты должны всегда регистрироваться к обмену. ОтключитьРегистрацию = Ложь; + ИначеЕсли ЗначениеЗаполнено(ПараметрыСеанса.ПараметрыОбработчикаОбновления) Тогда + НазначениеПланаОбмена = ОбменДаннымиПовтИсп.НазначениеПланаОбмена(ИмяПланаОбмена); + Если НазначениеПланаОбмена = "РИБСФильтром" Тогда + // Регистрация может включаться только при использовании параллельного механизма обновления. + // Если механизм используется, то регистрация определяется признаком выполнения обработчика в периферийном узле РИБ. + ПараметрыОбработчикаОбновления = ПараметрыСеанса.ПараметрыОбработчикаОбновления; + Если ПараметрыОбработчикаОбновления.РежимВыполненияОтложенныхОбработчиков = "Параллельно" Тогда + ОтключитьРегистрацию = ПараметрыОбработчикаОбновления.ЗапускатьИВПодчиненномУзлеРИБСФильтрами; + КонецЕсли; + ИначеЕсли НазначениеПланаОбмена = "РИБ" Тогда + ОтключитьРегистрацию = Не ПараметрыСеанса.ПараметрыОбработчикаОбновления.ЗапускатьТолькоВГлавномУзле; + КонецЕсли; КонецЕсли; - ИначеЕсли Объект.ДополнительныеСвойства.РегистрироватьНаУзлахПлановОбменаПриОбновленииИБ Тогда + // Разработчик принял решение, что эти данные должны быть зарегистрированы для обмена. ОтключитьРегистрацию = Ложь; КонецЕсли; Если ОтключитьРегистрацию Тогда Возврат; КонецЕсли; - ИначеЕсли Объект.ДополнительныеСвойства.Свойство("ОтключитьМеханизмРегистрацииОбъектов") Тогда + // Регистрация объектов отключена принудительно. Возврат; КонецЕсли; @@ -879,15 +880,21 @@ ВызватьИсключение НСтр("ru = 'Регистрация изменений для неразделенных планов обмена не поддерживается.'"); КонецЕсли; + ЭтоРазделенныеДанные = ОбщегоНазначенияПовтИсп.ЭтоРазделенныйОбъектМетаданных( + ОбъектМетаданных.ПолноеИмя(), ОбщегоНазначенияПовтИсп.РазделительОсновныхДанных()); + Если ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда - Если Не РазделенныеДанные(ОбъектМетаданных) Тогда + ЭтоСовместноРазделенныеДанные = ОбщегоНазначенияПовтИсп.ЭтоРазделенныйОбъектМетаданных( + ОбъектМетаданных.ПолноеИмя(), ОбщегоНазначенияПовтИсп.РазделительВспомогательныхДанных()); + + Если Не ЭтоРазделенныеДанные И Не ЭтоСовместноРазделенныеДанные Тогда ВызватьИсключение НСтр("ru = 'Регистрация изменений неразделенных данных в разделенном режиме.'"); КонецЕсли; Иначе - Если РазделенныеДанные(ОбъектМетаданных) Тогда + Если ЭтоРазделенныеДанные Тогда ВызватьИсключение НСтр("ru = 'Регистрация изменений разделенных данных в неразделенном режиме.'"); КонецЕсли; @@ -1022,7 +1029,7 @@ ИмяОбъекта = ОбъектМетаданных.ПолноеИмя(); - ТаблицаРеквизитовРегистрации = ОбменДаннымиПовтИсп.ПолучитьТаблицуРеквизитовРегистрации(ИмяОбъекта, ИмяПланаОбмена); + ТаблицаРеквизитовРегистрации = ОбменДаннымиПовтИсп.РеквизитыОбъектаДляРегистрации(ИмяОбъекта, ИмяПланаОбмена); Если ТаблицаРеквизитовРегистрации.Количество() = 0 Тогда // Если правила ВРО не заданы, то считаем, что фильтра ВРО нет. @@ -1309,12 +1316,12 @@ #Если ВнешнееСоединение ИЛИ ТолстыйКлиентОбычноеПриложение Тогда - Получатели = ОбменДаннымиВызовСервера.ПолучитьМассивУзловДляРегистрацииВыгружатьВсегда(ИмяПланаОбмена, ПРО.ИмяРеквизитаФлага); + Получатели = ОбменДаннымиВызовСервера.УзлыДляРегистрацииПоУсловиюВыгружатьВсегда(ИмяПланаОбмена, ПРО.ИмяРеквизитаФлага); #Иначе УстановитьПривилегированныйРежим(Истина); - Получатели = ПолучитьМассивУзловДляРегистрацииВыгружатьВсегда(ИмяПланаОбмена, ПРО.ИмяРеквизитаФлага); + Получатели = УзлыДляРегистрацииПоУсловиюВыгружатьВсегда(ИмяПланаОбмена, ПРО.ИмяРеквизитаФлага); УстановитьПривилегированныйРежим(Ложь); #КонецЕсли @@ -1342,12 +1349,12 @@ #Если ВнешнееСоединение ИЛИ ТолстыйКлиентОбычноеПриложение Тогда - Получатели = ОбменДаннымиВызовСервера.ПолучитьМассивУзловДляРегистрацииВыгружатьВсегда(ИмяПланаОбмена, ПРО.ИмяРеквизитаФлага); + Получатели = ОбменДаннымиВызовСервера.УзлыДляРегистрацииПоУсловиюВыгружатьВсегда(ИмяПланаОбмена, ПРО.ИмяРеквизитаФлага); #Иначе УстановитьПривилегированныйРежим(Истина); - Получатели = ПолучитьМассивУзловДляРегистрацииВыгружатьВсегда(ИмяПланаОбмена, ПРО.ИмяРеквизитаФлага); + Получатели = УзлыДляРегистрацииПоУсловиюВыгружатьВсегда(ИмяПланаОбмена, ПРО.ИмяРеквизитаФлага); УстановитьПривилегированныйРежим(Ложь); #КонецЕсли @@ -1360,12 +1367,12 @@ #Если ВнешнееСоединение ИЛИ ТолстыйКлиентОбычноеПриложение Тогда - Получатели = ОбменДаннымиВызовСервера.ПолучитьМассивУзловДляРегистрацииВыгружатьПриНеобходимости(Объект.Ссылка, ИмяПланаОбмена, ПРО.ИмяРеквизитаФлага); + Получатели = ОбменДаннымиВызовСервера.УзлыДляРегистрацииПоУсловиюВыгружатьПриНеобходимости(Объект.Ссылка, ИмяПланаОбмена, ПРО.ИмяРеквизитаФлага); #Иначе УстановитьПривилегированныйРежим(Истина); - Получатели = ПолучитьМассивУзловДляРегистрацииВыгружатьПриНеобходимости(Объект.Ссылка, ИмяПланаОбмена, ПРО.ИмяРеквизитаФлага); + Получатели = УзлыДляРегистрацииПоУсловиюВыгружатьПриНеобходимости(Объект.Ссылка, ИмяПланаОбмена, ПРО.ИмяРеквизитаФлага); УстановитьПривилегированныйРежим(Ложь); #КонецЕсли @@ -1393,7 +1400,7 @@ // Возвращаемое значение: // Массив - Массив узлов плана обмена, для которых установлен признак «Выгружать всегда». // -Функция ПолучитьМассивУзловДляРегистрацииВыгружатьВсегда(Знач ИмяПланаОбмена, Знач ИмяРеквизитаФлага) Экспорт +Функция УзлыДляРегистрацииПоУсловиюВыгружатьВсегда(Знач ИмяПланаОбмена, Знач ИмяРеквизитаФлага) Экспорт ТекстЗапроса = " |ВЫБРАТЬ @@ -1425,7 +1432,7 @@ // Возвращаемое значение: // Массив - Массив узлов плана обмена, для которых установлен признак «Выгружать при необходимости». // -Функция ПолучитьМассивУзловДляРегистрацииВыгружатьПриНеобходимости(Ссылка, Знач ИмяПланаОбмена, Знач ИмяРеквизитаФлага) Экспорт +Функция УзлыДляРегистрацииПоУсловиюВыгружатьПриНеобходимости(Ссылка, Знач ИмяПланаОбмена, Знач ИмяРеквизитаФлага) Экспорт МассивУзлов = Новый Массив; @@ -2022,13 +2029,6 @@ КонецФункции -Функция РазделенныеДанные(ОбъектМетаданных) - - Возврат ОбщегоНазначенияПовтИсп.ЭтоРазделенныйОбъектМетаданных( - ОбъектМетаданных.ПолноеИмя(), ОбщегоНазначенияПовтИсп.РазделительОсновныхДанных()); - -КонецФункции - // Создает набор записей для регистра. // // Параметры: diff --git a/SSL/src/CommonModules/ОбменСообщениями/Module.bsl b/SSL/src/CommonModules/ОбменСообщениями/Module.bsl index 2dc15334e..c7084b564 100644 --- a/SSL/src/CommonModules/ОбменСообщениями/Module.bsl +++ b/SSL/src/CommonModules/ОбменСообщениями/Module.bsl @@ -325,40 +325,6 @@ СерверныеСобытия.Добавить( "СтандартныеПодсистемы.РаботаВМоделиСервиса.ОбменСообщениями\ПриОпределенииПолучателейСообщения"); - // Обработчик события при отправке сообщения. - // Обработчик данного события вызывается перед помещением сообщения в XML-поток. - // Обработчик вызывается для каждого отправляемого сообщения. - // - // Параметры: - // КаналСообщений - Строка - Идентификатор канала сообщений, в который отправляется сообщение. - // ТелоСообщения - Произвольный - Тело отправляемого сообщения. - // В обработчике события тело сообщения может быть изменено, например, дополнено информацией. - // - // Синтаксис: - // Процедура ПриОтправкеСообщения(КаналСообщений, ТелоСообщения) Экспорт - // - // (То же, что ОбменСообщениямиПереопределяемый.ПриОтправкеСообщения). - // - СерверныеСобытия.Добавить( - "СтандартныеПодсистемы.РаботаВМоделиСервиса.ОбменСообщениями\ПриОтправкеСообщения"); - - // Обработчик события при получении сообщения. - // Обработчик данного события вызывается при получении сообщения из XML-потока. - // Обработчик вызывается для каждого получаемого сообщения. - // - // Параметры: - // КаналСообщений - Строка - Идентификатор канала сообщений, из которого получено сообщение. - // ТелоСообщения - Произвольный - Тело полученного сообщения. - // В обработчике события тело сообщения может быть изменено, например, дополнено информацией. - // - // Синтаксис: - // Процедура ПриПолученииСообщения(КаналСообщений, ТелоСообщения) Экспорт - // - // (То же, что ОбменСообщениямиПереопределяемый.ПриПолученииСообщения). - // - СерверныеСобытия.Добавить( - "СтандартныеПодсистемы.РаботаВМоделиСервиса.ОбменСообщениями\ПриПолученииСообщения"); - КонецПроцедуры // См. описание этой же процедуры в модуле СтандартныеПодсистемыСервер. @@ -828,11 +794,9 @@ // Процедура ПриОтправкеСообщения(КаналСообщений, ТелоСообщения, ОбъектСообщения) Экспорт - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда - + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ОбменСообщениями") Тогда МодульСообщенияВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("СообщенияВМоделиСервиса"); МодульСообщенияВМоделиСервиса.ПриОтправкеСообщения(КаналСообщений, ТелоСообщения, ОбъектСообщения); - КонецЕсли; КонецПроцедуры @@ -848,7 +812,7 @@ // Процедура ПриПолученииСообщения(КаналСообщений, ТелоСообщения, ОбъектСообщения) Экспорт - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ОбменСообщениями") Тогда МодульСообщенияВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("СообщенияВМоделиСервиса"); МодульСообщенияВМоделиСервиса.ПриПолученииСообщения(КаналСообщений, ТелоСообщения, ОбъектСообщения); КонецЕсли; diff --git a/SSL/src/CommonModules/ОбменСообщениямиВнутренний/Module.bsl b/SSL/src/CommonModules/ОбменСообщениямиВнутренний/Module.bsl index bac424e92..f9a12aa68 100644 --- a/SSL/src/CommonModules/ОбменСообщениямиВнутренний/Module.bsl +++ b/SSL/src/CommonModules/ОбменСообщениямиВнутренний/Module.bsl @@ -1410,12 +1410,6 @@ Процедура ПриОтправкеСообщения(Знач КаналСообщений, ТелоСообщения) - ОбработчикиСобытия = ОбщегоНазначения.ОбработчикиСлужебногоСобытия( - "СтандартныеПодсистемы.РаботаВМоделиСервиса.ОбменСообщениями\ПриОтправкеСообщения"); - Для Каждого Обработчик Из ОбработчикиСобытия Цикл - Обработчик.Модуль.ПриОтправкеСообщения(КаналСообщений, ТелоСообщения); - КонецЦикла; - ОбменСообщениямиПереопределяемый.ПриОтправкеСообщения(КаналСообщений, ТелоСообщения); КонецПроцедуры @@ -1428,12 +1422,6 @@ Процедура ПриПолученииСообщения(Знач КаналСообщений, ТелоСообщения) - ОбработчикиСобытия = ОбщегоНазначения.ОбработчикиСлужебногоСобытия( - "СтандартныеПодсистемы.РаботаВМоделиСервиса.ОбменСообщениями\ПриПолученииСообщения"); - Для Каждого Обработчик Из ОбработчикиСобытия Цикл - Обработчик.Модуль.ПриПолученииСообщения(КаналСообщений, ТелоСообщения); - КонецЦикла; - ОбменСообщениямиПереопределяемый.ПриПолученииСообщения(КаналСообщений, ТелоСообщения); КонецПроцедуры diff --git a/SSL/src/CommonModules/ОбновлениеИнформационнойБазы/Module.bsl b/SSL/src/CommonModules/ОбновлениеИнформационнойБазы/Module.bsl index c10f872b6..99886f090 100644 --- a/SSL/src/CommonModules/ОбновлениеИнформационнойБазы/Module.bsl +++ b/SSL/src/CommonModules/ОбновлениеИнформационнойБазы/Module.bsl @@ -140,39 +140,8 @@ КонецФункции -// Получает версию конфигурации или родительской конфигурации (библиотеки), -// которая хранится в информационной базе. -// -// Параметры: -// ИдентификаторБиблиотеки - Строка - имя конфигурации или идентификатор библиотеки. -// -// Возвращаемое значение: -// Строка - версия. -// -// Пример использования: -// ВерсияКонфигурацииИБ = ВерсияИБ(Метаданные.Имя); -// -Функция ВерсияИБ(Знач ИдентификаторБиблиотеки) Экспорт - - Возврат ОбновлениеИнформационнойБазыСлужебный.ВерсияИБ(ИдентификаторБиблиотеки); - -КонецФункции - -// Записывает в информационную базу версию конфигурации или родительской конфигурации (библиотеки). -// -// Параметры: -// ИдентификаторБиблиотеки - Строка - имя конфигурации или родительской конфигурации (библиотеки), -// НомерВерсии - Строка - номер версии. -// ЭтоОсновнаяКонфигурация - Булево - признак, что ИдентификаторБиблиотеки соответствует имени конфигурации. -// -Процедура УстановитьВерсиюИБ(Знач ИдентификаторБиблиотеки, Знач НомерВерсии, Знач ЭтоОсновнаяКонфигурация) Экспорт - - ОбновлениеИнформационнойБазыСлужебный.УстановитьВерсиюИБ(ИдентификаторБиблиотеки, НомерВерсии, ЭтоОсновнаяКонфигурация); - -КонецПроцедуры - //////////////////////////////////////////////////////////////////////////////// -// Процедуры и функции для проверки доступности объекта для изменения при выполнении отложенного обновления. +// Процедуры и функции для проверки доступности объекта при выполнении отложенного обновления. // // Вызывает исключение или блокирует форму Форма от редактирования, если @@ -295,18 +264,18 @@ // с режимом выполнения "Параллельно". // -// Отмечает, что переданные данные обновлены +// Отмечает, что переданные данные обновлены. // // Параметры: -// Данные - Ссылка, Массив, НаборДанных - данные, по которым нужно зарегистрировать изменения +// Данные - Ссылка, Массив, НаборДанных - данные, по которым нужно зарегистрировать изменения. // - ТаблицаЗначений - значения измерений независимого регистра сведений. Требования: // - все измерения регистра должны входить в основной отбор // - в таблице должны быть только колонки, соответствующие по именам измерениям регистра, // по которым ранее регистрировалась необходимость обработки // - запись наборов в процессе обновления должна проходить с тем же отбором, // что и регистрация необходимости обработки -// - в ДополнительныеПараметры нужно передать соответствующий признак и полное имя регистра -// ДополнительныеПараметры - Структура - см. ОбновлениеИнформационнойБазы.ДополнительныеПараметрыОтметкиОбработки +// - в ДополнительныеПараметры нужно передать соответствующий признак и полное имя регистра. +// ДополнительныеПараметры - Структура - см. ОбновлениеИнформационнойБазы.ДополнительныеПараметрыОтметкиОбработки. // Очередь - Число, Неопределено - очередь обработки, в которой выполняется текущий обработчик. По умолчанию очередь передавать // не нужно, т.к. она будет взята из параметров сеанса, в котором запущен обработчик обновления. // @@ -316,19 +285,16 @@ Или ПараметрыСеанса.ПараметрыОбработчикаОбновления.РежимВыполненияОтложенныхОбработчиков <> "Параллельно" Тогда Возврат; КонецЕсли; - Очередь = ПараметрыСеанса.ПараметрыОбработчикаОбновления.ОчередьОтложеннойОбработки; + КонецЕсли; + + Если Не ПараметрыСеанса.ПараметрыОбработчикаОбновления.ЕстьОбработанныеОбъекты Тогда + НовыеПараметрыСеанса = ОбновлениеИнформационнойБазыСлужебный.НовыеПараметрыОбработчикаОбновления(); - Если Не ПараметрыСеанса.ПараметрыОбработчикаОбновления.ЕстьОбработанныеОбъекты Тогда - - НовыеПараметрыСеанса = ОбновлениеИнформационнойБазыСлужебный.НовыеПараметрыОбработчикаОбновления(); - ЗаполнитьЗначенияСвойств(НовыеПараметрыСеанса, ПараметрыСеанса.ПараметрыОбработчикаОбновления); - НовыеПараметрыСеанса.ЕстьОбработанныеОбъекты = Истина; - - ПараметрыСеанса.ПараметрыОбработчикаОбновления = Новый ФиксированнаяСтруктура(НовыеПараметрыСеанса); - - КонецЕсли; + ЗаполнитьЗначенияСвойств(НовыеПараметрыСеанса, ПараметрыСеанса.ПараметрыОбработчикаОбновления); + НовыеПараметрыСеанса.ЕстьОбработанныеОбъекты = Истина; + ПараметрыСеанса.ПараметрыОбработчикаОбновления = Новый ФиксированнаяСтруктура(НовыеПараметрыСеанса); КонецЕсли; Если ДополнительныеПараметры = Неопределено Тогда @@ -369,7 +335,8 @@ Для каждого СтрокаТаблицы Из Данные Цикл Для Каждого Колонка Из Данные.Колонки Цикл - Набор.Отбор[Колонка.Имя].Установить(СтрокаТаблицы[Колонка.Имя]); + Набор.Отбор[Колонка.Имя].Значение = СтрокаТаблицы[Колонка.Имя]; + Набор.Отбор[Колонка.Имя].Использование = Истина; КонецЦикла; ПланыОбмена.УдалитьРегистрациюИзменений(Узел, Набор); @@ -401,9 +368,9 @@ ПланыОбмена.УдалитьРегистрациюИзменений(Узел, Данные); Иначе - - ПланыОбмена.УдалитьРегистрациюИзменений(Узел, Данные); - + Для Каждого ЭлементМассива Из Данные Цикл + ПланыОбмена.УдалитьРегистрациюИзменений(Узел, ЭлементМассива); + КонецЦикла; КонецЕсли; КонецЕсли; @@ -419,10 +386,10 @@ // Возвращаемое значение: // Структура - структура со свойствами: // * ЭтоДвижения - Булево - в параметре Данные функции переданы ссылки на регистраторы, по которым нужно обновить движения, -// Значение по умолчанию - ЛОЖЬ -// * ПолноеИмяРегистра - Строка - полное имя регистра, по которому нужно обновить данные. Например, РегистрНакопления.ТоварыНаСкладах -// * ОтметитьВсеРегистраторы - Булево - необходимо отметить к обработке все проведенные документы переданного во втором параметре типа -// В этом случае в параметре Данные процедуры можно передавать ОбъектМетаданных:Документ или ДокументСсылка +// Значение по умолчанию - ЛОЖЬ. +// * ПолноеИмяРегистра - Строка - полное имя регистра, по которому нужно обновить данные. Например, РегистрНакопления.ТоварыНаСкладах. +// * ОтметитьВсеРегистраторы - Булево - необходимо отметить к обработке все проведенные документы переданного во втором параметре типа. +// В этом случае в параметре Данные процедуры можно передавать ОбъектМетаданных:Документ или ДокументСсылка. // * ЭтоНезависимыйРегистрСведений - Булево - в параметре Данные функции передана таблица со значениями измерений, по которым нужно обновлять данные, // Значение по умолчанию - ЛОЖЬ. // @@ -442,7 +409,7 @@ // и не должны переопределяться в коде процедур отметки к обработке обработчиков обновления. // // ВозвращаемоеЗначение - Структура: -// *Очередь - Число - очередь обработки, в которой выполняется текущий обработчик +// *Очередь - Число - очередь обработки, в которой выполняется текущий обработчик. // *ЗаписьИзмененийДляПодчиненногоУзлаРИБСФильтрами - ЗаписьFastInfoset - параметр существует, только если внедрена подсистема ОбменДанными. // Функция ОсновныеПараметрыОтметкиКОбработке() Экспорт @@ -453,6 +420,7 @@ Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда + Параметры.Вставить("ИмяФайлаСИзменениями", Неопределено); Параметры.Вставить("ЗаписьИзмененийДляПодчиненногоУзлаРИБСФильтрами", Неопределено); КонецЕсли; @@ -578,18 +546,18 @@ Возврат Результат; КонецФункции -// Отмечает, что переданные данные необходимо обновить +// Отмечает, что переданные данные необходимо обновить. // // Параметры: -// Параметры - Структура - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке -// Данные - Ссылка, Массив, НаборЗаписей - данные, по которым нужно зарегистрировать изменения +// Параметры - Структура - см. ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке. +// Данные - Ссылка, Массив, НаборЗаписей - данные, по которым нужно зарегистрировать изменения. // - ТаблицаЗначений - значения измерений независимого регистра сведений. Требования: // - все измерения регистра должны входить в основной отбор // - в таблице должны быть только колонки, соответствующие по именам измерениям регистра, // по которым нужно регистрировать необходимость обработки // - запись наборов в процессе обновления должна проходить с тем же отбором, // что и регистрация необходимости обработки -// - в ДополнительныеПараметры нужно передать соответствующий признак и полное имя регистра +// - в ДополнительныеПараметры нужно передать соответствующий признак и полное имя регистра. // ДополнительныеПараметры - Структура - см. ОбновлениеИнформационнойБазы.ДополнительныеПараметрыОтметкиОбработки. // Процедура ОтметитьКОбработке(ОсновныеПараметры, Данные, ДополнительныеПараметры = Неопределено) Экспорт @@ -667,7 +635,8 @@ Для Каждого СтрокаТаблицы Из Данные Цикл Для Каждого Колонка Из Данные.Колонки Цикл - Набор.Отбор[Колонка.Имя].Установить(СтрокаТаблицы[Колонка.Имя]); + Набор.Отбор[Колонка.Имя].Значение = СтрокаТаблицы[Колонка.Имя]; + Набор.Отбор[Колонка.Имя].Использование = Истина; КонецЦикла; ЗарегистрироватьИзменения(ОсновныеПараметры, Узел, Набор, "НезависимыйРегистр", ДополнительныеПараметры.ПолноеИмяРегистра); @@ -700,11 +669,11 @@ КонецПроцедуры -// Отмечает, что по переданным регистраторам нужно переформировать движения +// Отмечает, что по переданным регистраторам нужно переформировать движения. // // Параметры: -// Очередь - Число - очередь обработки, в которой выполняется текущий обработчик -// Регистраторы - Массив - массив ссылок регистраторов +// Очередь - Число - очередь обработки, в которой выполняется текущий обработчик. +// Регистраторы - Массив - массив ссылок регистраторов. // ПолноеИмяРегистра - Строка - полное имя регистра, для которого необходимо обновить движения. // Процедура ОтметитьРегистраторыКОбработке(Параметры, Регистраторы, ПолноеИмяРегистра) Экспорт @@ -716,24 +685,31 @@ КонецПроцедуры -// Дополнительные параметры выборки данных для обработки -// + +// Дополнительные параметры выборки данных для обработки. +// // Возвращаемое значение: // Структура - поля структуры: -// *ВыбиратьПорциями - Булево - выбирать данные для обработки порциями. -// Если выбираются документы, то в порция определяется с учетом упорядочивания по убыванию по дате документа. -// Если выбираются регистраторы регистра, то в порция определяется с учетом упорядочивания по убыванию -// по дате регистратора , если передано полное имя документа. Если полное имя документа не передано -// - упорядочивание происходит по периоду регистра: -// - берется максимальная дата по каждому регистратору -// - если по регистратору нет записей - он в топе -// *ИмяВременнойТаблицы - Строка - параметр актуален для методов, создающих временные таблицы. Если имя не задано (поведение по умолчанию), -// то временная таблица будет создана с именем, указанным в описании каждого метода -// *ДополнительныеИсточникиДанных - Соответствие - параметр актуален для методов, выбирающих регистраторы и ссылки для обработки. -// В ключах соответствия лежат пути к реквизитам шапки документа или реквизитам табличных частей, -// которые участвуют в соединениях с другими таблицами (в т.ч. неявных соединениях при обращении -// "через точку"). Процедуры проверяют блокировку данных этих таблиц обработчиками меньших очередей. -// Формат имен <ИмяРеквизита> или <ИмяТабличной>.<ИмяРеквизитаТабличнойЧасти>. +// * ВыбиратьПорциями - Булево - выбирать данные для обработки порциями. +// Если выбираются документы, то в порция определяется с учетом упорядочивания по убыванию по дате документа. +// Если выбираются регистраторы регистра, то в порция определяется с учетом упорядочивания по убыванию +// по дате регистратора , если передано полное имя документа. Если полное имя документа не передано +// - упорядочивание происходит по периоду регистра: +// - берется максимальная дата по каждому регистратору +// - если по регистратору нет записей - он в топе. +// * ИмяВременнойТаблицы - Строка - параметр актуален для методов, создающих временные таблицы. Если имя не задано (поведение по умолчанию), +// то временная таблица будет создана с именем, указанным в описании каждого метода. +// * ДополнительныеИсточникиДанных - Соответствие - параметр актуален для методов, выбирающих регистраторы и ссылки для обработки. +// В ключах соответствия могут лежать +// - пути к реквизитам шапки документа или реквизитам табличных частей, которые участвуют +// в соединениях с другими таблицами (в т.ч. неявных соединениях при обращении "через точку"). +// Процедуры проверяют блокировку данных этих таблиц обработчиками меньших очередей. +// Формат имен <ИмяРеквизита> или <ИмяТабличной>.<ИмяРеквизитаТабличнойЧасти>. +// Например, "Контрагент" или "Товары.Номенклатура" +// - имена регистров, подчиненных регистратору. +// Процедуры проверяют блокировку данных этих таблиц обработчиками регистров меньших очередей. +// Формат имен <КлассРегистра>.<ИмяРегистра>. +// Например, "РегистрНакопления.ТоварыНаСкладах". // Функция ДополнительныеПараметрыВыборкиДанныхДляОбработки() Экспорт @@ -741,6 +717,7 @@ ДополнительныеПараметры.Вставить("ВыбиратьПорциями", Истина); ДополнительныеПараметры.Вставить("ИмяВременнойТаблицы", ""); ДополнительныеПараметры.Вставить("ДополнительныеИсточникиДанных", Новый Соответствие); + ДополнительныеПараметры.Вставить("ПоляУпорядочивания", Новый Массив); Возврат ДополнительныеПараметры; @@ -748,25 +725,25 @@ // Создает временную таблицу ссылок, которые не обработаны в текущей очереди // и не заблокированы меньшими очередями. -// Имя таблицы: ВТДляОбработки<ИмяРегистра>, например ВТДляОбработкиТоварыНаСкладах +// Имя таблицы: ВТДляОбработки<ИмяРегистра>, например ВТДляОбработкиТоварыНаСкладах. // Колонки таблицы // * Регистратор - ДокументСсылка. // // Параметры: -// Очередь - Число - очередь обработки, в которой выполняется текущий обработчик +// Очередь - Число - очередь обработки, в которой выполняется текущий обработчик. // ПолноеИмяДокумента - Строка - имя документа, движения по которому нужно переформировать. Если движения формируются не по данным -// документа, то нужно передать Неопределено - тогда не будет проверяться блокировка таблицы документа +// документа, то нужно передать Неопределено - тогда не будет проверяться блокировка таблицы документа. // Например, Документ.ПриходныйОрдерНаТовары // ПолноеИмяРегистра - Строка - имя регистра, движения по которому нужно переформировать. // Например, РегистрНакопления.ТоварыНаСкладах -// МенеджерВременныхТаблиц - МенеджерВременныхТаблиц - менеджер, в котором будет создана временная таблица +// МенеджерВременныхТаблиц - МенеджерВременныхТаблиц - менеджер, в котором будет создана временная таблица. // ДополнительныеПараметры - Структура - см. ОбновлениеИнформационнойБазы.ДополнительныеПараметрыВыборкиДанныхДляОбработки. // // Возвращаемое значение: // Структура - результат формирования временной таблицы: // * ЕстьЗаписиВоВременнойТаблице - Булево - в создаваемой таблице есть хотя бы одна запись. Записей может не быть по двум причинам -// - все обработано или все, что нужно обработать, еще заблокировано обработчиками с меньшей очередью -// * ЕстьДанныеДляОбработки - Булево - в очереди есть ссылки для обработки, т.е. еще не все обработано +// - все обработано или все, что нужно обработать, еще заблокировано обработчиками с меньшей очередью. +// * ЕстьДанныеДляОбработки - Булево - в очереди есть ссылки для обработки, т.е. еще не все обработано. // * ИмяВременнойТаблицы - Строка - имя созданной временной таблицы. // Функция СоздатьВременнуюТаблицуРегистраторовРегистраДляОбработки(Очередь, ПолноеИмяДокумента, ПолноеИмяРегистра, МенеджерВременныхТаблиц, ДополнительныеПараметры = Неопределено) Экспорт @@ -792,9 +769,11 @@ | ПО ТаблицаРегистраИзменения.Регистратор = ВТЗаблокированоРегистратор.Регистратор | ЛЕВОЕ СОЕДИНЕНИЕ #ТаблицаДвиженийРегистра КАК ТаблицаРегистра | ПО ТаблицаРегистраИзменения.Регистратор = ТаблицаРегистра.Регистратор + | #ТекстЗапросаСоединениеСДопИсточникамиРегистрами |ГДЕ | ТаблицаРегистраИзменения.Узел = &ТекущаяОчередь - | И ВТЗаблокированоРегистратор.Регистратор ЕСТЬ NULL + | И ВТЗаблокированоРегистратор.Регистратор ЕСТЬ NULL + | И &УсловиеПоДопИсточникамРегистрам | |СГРУППИРОВАТЬ ПО | ТаблицаРегистраИзменения.Регистратор @@ -835,9 +814,11 @@ | #ТаблицаРегистраИзменения КАК ТаблицаРегистраИзменения | ЛЕВОЕ СОЕДИНЕНИЕ ВТЗаблокированоРегистратор КАК ВТЗаблокированоРегистратор | ПО ТаблицаРегистраИзменения.Регистратор = ВТЗаблокированоРегистратор.Регистратор + | #ТекстЗапросаСоединениеСДопИсточникамиРегистрами |ГДЕ | ТаблицаРегистраИзменения.Узел = &ТекущаяОчередь - | И ВТЗаблокированоРегистратор.Регистратор ЕСТЬ NULL + | И ВТЗаблокированоРегистратор.Регистратор ЕСТЬ NULL + | И &УсловиеПоДопИсточникамРегистрам | |ИНДЕКСИРОВАТЬ ПО | Регистратор @@ -859,14 +840,16 @@ | ПО ТаблицаРегистраИзменения.Регистратор = ВТЗаблокированоРегистратор.Регистратор | ЛЕВОЕ СОЕДИНЕНИЕ ВТЗаблокированоСсылка КАК ВТЗаблокированоСсылка | ПО ТаблицаРегистраИзменения.Регистратор = ВТЗаблокированоСсылка.Ссылка - | #ТекстЗапросаСоединениеСДопИсточникамиПоШапке - | #ТекстЗапросаСоединениеСДопИсточникамиПоТЧ + | #ТекстЗапросаСоединениеСДопИсточникамиПоШапке + | #ТекстЗапросаСоединениеСДопИсточникамиПоТЧ + | #ТекстЗапросаСоединениеСДопИсточникамиРегистрами |ГДЕ | ТаблицаРегистраИзменения.Узел = &ТекущаяОчередь | И ТаблицаРегистраИзменения.Регистратор ССЫЛКА #ПолноеИмяДокумента | И ВТЗаблокированоРегистратор.Регистратор ЕСТЬ NULL | И ВТЗаблокированоСсылка.Ссылка ЕСТЬ NULL - | И &УсловиеПоДопИсточникам + | И &УсловиеПоДопИсточникамСсылкам + | И &УсловиеПоДопИсточникамРегистрам | |ИНДЕКСИРОВАТЬ ПО | Регистратор @@ -913,14 +896,16 @@ | ПО ТаблицаРегистраИзменения.Регистратор = ВТЗаблокированоРегистратор.Регистратор | ЛЕВОЕ СОЕДИНЕНИЕ ВТЗаблокированоСсылка КАК ВТЗаблокированоСсылка | ПО ТаблицаРегистраИзменения.Регистратор = ВТЗаблокированоСсылка.Ссылка - | #ТекстЗапросаСоединениеСДопИсточникамиПоШапке - | #ТекстЗапросаСоединениеСДопИсточникамиПоТЧ + | #ТекстЗапросаСоединениеСДопИсточникамиПоШапке + | #ТекстЗапросаСоединениеСДопИсточникамиПоТЧ + | #ТекстЗапросаСоединениеСДопИсточникамиРегистрами |ГДЕ | ТаблицаРегистраИзменения.Узел = &ТекущаяОчередь | И ТаблицаРегистраИзменения.Регистратор ССЫЛКА #ПолноеИмяДокумента | И ВТЗаблокированоРегистратор.Регистратор ЕСТЬ NULL | И ВТЗаблокированоСсылка.Ссылка ЕСТЬ NULL - | И &УсловиеПоДопИсточникам + | И &УсловиеПоДопИсточникамСсылкам + | И &УсловиеПоДопИсточникамРегистрам | |ИНДЕКСИРОВАТЬ ПО | Регистратор @@ -974,17 +959,17 @@ КонецФункции -// Возвращает порцию регистраторов, по которым нужно переформировать движения +// Возвращает порцию регистраторов, по которым нужно переформировать движения. // Данные берутся из зарегистрированных в очереди, учитываются заблокированные более приоритетными очередями данные. // Блокировка по другим очередям делается по документу и по регистру. // Регистраторы в выборке упорядочены по дате регистратора по убыванию, если передано полное имя документа. // Если полное имя документа не передано - упорядочивание происходит по периоду регистра: // - берется максимальная дата по каждому регистратору -// - если по регистратору нет записей - он в топе +// - если по регистратору нет записей - он в топе. // Параметры: // Очередь - Число - очередь, к которой отнесен обработчик и в которой зарегистрированы данные, которые он будет обрабатывать. // ПолноеИмяДокумента - Строка - имя документа, движения по которому нужно переформировать. Если движения формируются не по данным -// документа, то нужно передать Неопределено - тогда не будет проверяться блокировка таблицы документа +// документа, то нужно передать Неопределено - тогда не будет проверяться блокировка таблицы документа. // Например, Документ.ПриходныйОрдерНаТовары // ПолноеИмяРегистра - Строка - имя регистра, движения по которому нужно переформировать. // Например, РегистрНакопления.ТоварыНаСкладах @@ -992,9 +977,9 @@ // // Возвращаемое значение: // ВыборкаИзРезультатаЗапроса - выборка регистраторов, которые нужно обработать, поля выборки: -// * Регистратор - ДокументСсылка +// * Регистратор - ДокументСсылка. // * Период - Дата - дата документа, если передано полное имя документа, максимальный период по регистратору, -// если полное имя документа не передано +// если полное имя документа не передано. // * Проведен - Булево, Неопределено - значение реквизита Проведен документа, если передано полное имя документа, // Неопределено - если имя документа не передано. // @@ -1019,9 +1004,11 @@ | ПО ТаблицаРегистраИзменения.Регистратор = ТаблицаРегистра.Регистратор | ЛЕВОЕ СОЕДИНЕНИЕ ВТЗаблокированоРегистратор КАК ВТЗаблокированоРегистратор | ПО ТаблицаРегистраИзменения.Регистратор = ВТЗаблокированоРегистратор.Регистратор + | #ТекстЗапросаСоединениеСДопИсточникамиРегистрами |ГДЕ | ТаблицаРегистраИзменения.Узел = &ТекущаяОчередь | И ВТЗаблокированоРегистратор.Регистратор ЕСТЬ NULL + | И &УсловиеПоДопИсточникамРегистрам | |СГРУППИРОВАТЬ ПО | ТаблицаРегистраИзменения.Регистратор @@ -1041,16 +1028,18 @@ | ЛЕВОЕ СОЕДИНЕНИЕ ВТЗаблокированоСсылка КАК ВТЗаблокированоСсылка | ПО ТаблицаРегистраИзменения.Регистратор = ВТЗаблокированоСсылка.Ссылка | ВНУТРЕННЕЕ СОЕДИНЕНИЕ #ПолноеИмяДокумента КАК ТаблицаДокумента - | #ТекстЗапросаСоединениеСДопИсточникамиПоШапке + | #ТекстЗапросаСоединениеСДопИсточникамиПоШапке | ПО ТаблицаРегистраИзменения.Регистратор = ТаблицаДокумента.Ссылка - | #ТекстЗапросаСоединениеСДопИсточникамиПоТЧ + | #ТекстЗапросаСоединениеСДопИсточникамиПоТЧ + | #ТекстЗапросаСоединениеСДопИсточникамиРегистрами | |ГДЕ | ТаблицаРегистраИзменения.Узел = &ТекущаяОчередь | И ТаблицаРегистраИзменения.Регистратор ССЫЛКА #ПолноеИмяДокумента | И ВТЗаблокированоРегистратор.Регистратор ЕСТЬ NULL | И ВТЗаблокированоСсылка.Ссылка ЕСТЬ NULL - | И &УсловиеПоДопИсточникам + | И &УсловиеПоДопИсточникамСсылкам + | И &УсловиеПоДопИсточникамРегистрам | |УПОРЯДОЧИТЬ ПО | ТаблицаДокумента.Дата УБЫВ"; @@ -1090,7 +1079,7 @@ // Параметры: // Очередь - Число - очередь, к которой отнесен обработчик и в которой зарегистрированы данные, которые он будет // обрабатывать. -// ПолноеИмяОбъекта - Строка - имя объекта, который нужно обработать. Например, Документ.ПриходныйОрдерНаТовары +// ПолноеИмяОбъекта - Строка - имя объекта, который нужно обработать. Например, Документ.ПриходныйОрдерНаТовары. // ДополнительныеПараметры - Структура - см. ОбновлениеИнформационнойБазы.ДополнительныеПараметрыВыборкиДанныхДляОбработки. // // Возвращаемое значение: @@ -1109,24 +1098,21 @@ ТекстЗапроса = "ВЫБРАТЬ ПЕРВЫЕ 500 - | ТаблицаИзменения.Ссылка + | ТаблицаИзменений.Ссылка |ИЗ - | #ТаблицаОбъектаИзменения КАК ТаблицаИзменения + | #ТаблицаОбъектаИзменения КАК ТаблицаИзменений | ЛЕВОЕ СОЕДИНЕНИЕ #ВТЗаблокированоСсылка КАК ВТЗаблокированоСсылка - | ПО ТаблицаИзменения.Ссылка = ВТЗаблокированоСсылка.Ссылка"; - Если ЭтоДокумент - Или ДополнительныеПараметры.ДополнительныеИсточникиДанных.Количество() > 0 Тогда - ТекстЗапроса = ТекстЗапроса + " - | ВНУТРЕННЕЕ СОЕДИНЕНИЕ #ТаблицаОбъекта КАК ТаблицаОбъекта - | #ТекстЗапросаСоединениеСДопИсточникамиПоШапке - | ПО ТаблицаИзменения.Ссылка = ТаблицаОбъекта.Ссылка - | #ТекстЗапросаСоединениеСДопИсточникамиПоТЧ"; - КонецЕсли; - ТекстЗапроса = ТекстЗапроса + " + | ПО ТаблицаИзменений.Ссылка = ВТЗаблокированоСсылка.Ссылка + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ #ТаблицаОбъекта КАК ТаблицаОбъекта + | #ТекстЗапросаСоединениеСДопИсточникамиПоШапке + | ПО ТаблицаИзменений.Ссылка = ТаблицаОбъекта.Ссылка + | #ТекстЗапросаСоединениеСДопИсточникамиПоТЧ + | #ТекстЗапросаСоединениеСДопИсточникамиРегистрами |ГДЕ - | ТаблицаИзменения.Узел = &ТекущаяОчередь + | ТаблицаИзменений.Узел = &ТекущаяОчередь | И ВТЗаблокированоСсылка.Ссылка ЕСТЬ NULL - | И &УсловиеПоДопИсточникам"; + | И &УсловиеПоДопИсточникамСсылкам + | И &УсловиеПоДопИсточникамРегистрам"; Если ЭтоДокумент Тогда ТекстЗапроса = ТекстЗапроса + " | @@ -1163,21 +1149,21 @@ // Создает временную таблицу ссылок, которые не обработаны в текущей очереди // и не заблокированы меньшими очередями. -// Имя таблицы: ВТДляОбработки<ИмяОбъекта>, например ВТДляОбработкиНоменклатура +// Имя таблицы: ВТДляОбработки<ИмяОбъекта>, например ВТДляОбработкиНоменклатура. // Колонки таблицы // * Ссылка - ЛюбаяСсылка. // // Параметры: -// Очередь - Число - очередь обработки, в которой выполняется текущий обработчик -// ПолноеИмяОбъекта - Строка - полное имя объекта, для которого выполняется проверка, например, Справочник.Номенклатура -// МенеджерВременныхТаблиц - МенеджерВременныхТаблиц - менеджер, в котором будет создана временная таблица +// Очередь - Число - очередь обработки, в которой выполняется текущий обработчик. +// ПолноеИмяОбъекта - Строка - полное имя объекта, для которого выполняется проверка, например, Справочник.Номенклатура. +// МенеджерВременныхТаблиц - МенеджерВременныхТаблиц - менеджер, в котором будет создана временная таблица. // ДополнительныеПараметры - Структура - см. ОбновлениеИнформационнойБазы.ДополнительныеПараметрыВыборкиДанныхДляОбработки. // // Возвращаемое значение: // Структура - результат формирования временной таблицы: // * ЕстьЗаписиВоВременнойТаблице - Булево - в создаваемой таблице есть хотя бы одна запись. Записей может не быть по двум причинам -// - все обработано или все, что нужно обработать, еще заблокировано обработчиками с меньшей очередью -// * ЕстьДанныеДляОбработки - Булево - в очереди есть ссылки для обработки, т.е. еще не все обработано +// - все обработано или все, что нужно обработать, еще заблокировано обработчиками с меньшей очередью. +// * ЕстьДанныеДляОбработки - Булево - в очереди есть ссылки для обработки, т.е. еще не все обработано. // * ИмяВременнойТаблицы - Строка - имя созданной временной таблицы. // Функция СоздатьВременнуюТаблицуСсылокДляОбработки(Очередь, ПолноеИмяОбъекта, МенеджерВременныхТаблиц, ДополнительныеПараметры = Неопределено) Экспорт @@ -1196,7 +1182,7 @@ ТекстЗапроса = "ВЫБРАТЬ - | ТаблицаИзменения.Ссылка КАК Ссылка"; + | ТаблицаИзменений.Ссылка КАК Ссылка"; Если ЭтоДокумент Тогда ТекстЗапроса = ТекстЗапроса + ", | ТаблицаОбъекта.Дата КАК Дата"; @@ -1204,22 +1190,19 @@ ТекстЗапроса = ТекстЗапроса + " |ПОМЕСТИТЬ ВТДляОбработкиСсылкаПолная |ИЗ - | #ТаблицаОбъектаИзменения КАК ТаблицаИзменения + | #ТаблицаОбъектаИзменения КАК ТаблицаИзменений | ЛЕВОЕ СОЕДИНЕНИЕ #ВТЗаблокированоСсылка КАК ВТЗаблокированоСсылка - | ПО ТаблицаИзменения.Ссылка = ВТЗаблокированоСсылка.Ссылка"; - Если ЭтоДокумент - Или ДополнительныеПараметры.ДополнительныеИсточникиДанных.Количество() > 0 Тогда - ТекстЗапроса = ТекстЗапроса + " - | ВНУТРЕННЕЕ СОЕДИНЕНИЕ #ТаблицаОбъекта КАК ТаблицаОбъекта - | #ТекстЗапросаСоединениеСДопИсточникамиПоШапке - | ПО ТаблицаИзменения.Ссылка = ТаблицаОбъекта.Ссылка - | #ТекстЗапросаСоединениеСДопИсточникамиПоТЧ"; - КонецЕсли; - ТекстЗапроса = ТекстЗапроса + " + | ПО ТаблицаИзменений.Ссылка = ВТЗаблокированоСсылка.Ссылка + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ #ТаблицаОбъекта КАК ТаблицаОбъекта + | #ТекстЗапросаСоединениеСДопИсточникамиПоШапке + | ПО ТаблицаИзменений.Ссылка = ТаблицаОбъекта.Ссылка + | #ТекстЗапросаСоединениеСДопИсточникамиПоТЧ + | #ТекстЗапросаСоединениеСДопИсточникамиРегистрами |ГДЕ - | ТаблицаИзменения.Узел = &ТекущаяОчередь + | ТаблицаИзменений.Узел = &ТекущаяОчередь | И ВТЗаблокированоСсылка.Ссылка ЕСТЬ NULL - | И &УсловиеПоДопИсточникам + | И &УсловиеПоДопИсточникамСсылкам + | И &УсловиеПоДопИсточникамРегистрам | |ИНДЕКСИРОВАТЬ ПО | Ссылка @@ -1264,9 +1247,16 @@ | #ТаблицаОбъектаИзменения КАК ТаблицаИзменений | ЛЕВОЕ СОЕДИНЕНИЕ #ВТЗаблокированоСсылка КАК ВТЗаблокированоСсылка | ПО ТаблицаИзменений.Ссылка = ВТЗаблокированоСсылка.Ссылка + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ #ТаблицаОбъекта КАК ТаблицаОбъекта + | #ТекстЗапросаСоединениеСДопИсточникамиПоШапке + | ПО ТаблицаИзменений.Ссылка = ТаблицаОбъекта.Ссылка + | #ТекстЗапросаСоединениеСДопИсточникамиПоТЧ + | #ТекстЗапросаСоединениеСДопИсточникамиРегистрами |ГДЕ | ТаблицаИзменений.Узел = &ТекущаяОчередь - | И ВТЗаблокированоСсылка.Ссылка ЕСТЬ NULL + | И ВТЗаблокированоСсылка.Ссылка ЕСТЬ NULL + | И &УсловиеПоДопИсточникамСсылкам + | И &УсловиеПоДопИсточникамРегистрам | |ИНДЕКСИРОВАТЬ ПО | Ссылка @@ -1320,11 +1310,11 @@ // Параметры: // Очередь - Число - очередь, к которой отнесен обработчик и в которой зарегистрированы данные, которые он будет // обрабатывать. -// ПолноеИмяОбъекта - Строка - имя объекта, который нужно обработать. Например, РегистрСведений.ШтрихкодыНоменклатуры +// ПолноеИмяОбъекта - Строка - имя объекта, который нужно обработать. Например, РегистрСведений.ШтрихкодыНоменклатуры. // ДополнительныеПараметры - Структура - см. ОбновлениеИнформационнойБазы.ДополнительныеПараметрыВыборкиДанныхДляОбработки. // // Возвращаемое значение: -// ВыборкаИзРезультатаЗапроса - выборка значений измерений, которые нужно обработать, имена полей соответствует именам измерений регистра +// ВыборкаИзРезультатаЗапроса - выборка значений измерений, которые нужно обработать, имена полей соответствует именам измерений регистра. // Если по измерению не регистрировалась необходимость обработки, то в выборке по этому измерению будет // пустое значение. // @@ -1348,10 +1338,21 @@ |ГДЕ | ТаблицаИзменений.Узел = &ТекущаяОчередь | И &ТекстУсловияПоОтборуНезаблокированных - | И &УсловиеПоДопИсточникам"; + | И &УсловиеПоДопИсточникамСсылкам"; + + Если ДополнительныеПараметры.ПоляУпорядочивания.Количество() > 0 Тогда + ТекстУпорядочивания = ""; + Для Каждого ИмяПоля Из ДополнительныеПараметры.ПоляУпорядочивания Цикл + ТекстУпорядочивания = ТекстУпорядочивания + "ТаблицаИзменений." + ИмяПоля + ", "; + КонецЦикла; + ТекстЗапроса = ТекстЗапроса + " + |УПОРЯДОЧИТЬ ПО + | " + ТекстУпорядочивания + "ИСТИНА"; + КонецЕсли; ТекстВыборкиИзмерений = ""; ТекстУсловияСоединенияИзмерений = "ИСТИНА"; + ТекстУсловияПоОтборуНезаблокированных = "ИСТИНА"; ПервоеИзмерение = Истина; Для Каждого Измерение Из МетаданныеОбъекта.Измерения Цикл @@ -1374,7 +1375,18 @@ КонецЕсли; КонецЦикла; - ТекстВыборкиИзмерений = Лев(ТекстВыборкиИзмерений, СтрДлина(ТекстВыборкиИзмерений) - 1); + ПризнакНепериодический = Метаданные.СвойстваОбъектов.ПериодичностьРегистраСведений.Непериодический; + Если МетаданныеОбъекта.ПериодичностьРегистраСведений <> ПризнакНепериодический + И МетаданныеОбъекта.ОсновнойОтборПоПериоду Тогда + ТекстВыборкиИзмерений = ТекстВыборкиИзмерений + " + | ТаблицаИзменений.Период КАК Период,"; + КонецЕсли; + + Если ПустаяСтрока(ТекстВыборкиИзмерений) Тогда + ТекстВыборкиИзмерений = "*"; + Иначе + ТекстВыборкиИзмерений = Лев(ТекстВыборкиИзмерений, СтрДлина(ТекстВыборкиИзмерений) - 1); + КонецЕсли; ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТекстВыборкиИзмерений", ТекстВыборкиИзмерений); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТекстУсловияСоединенияИзмерений", ТекстУсловияСоединенияИзмерений); @@ -1383,7 +1395,7 @@ ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ВТЗаблокированоИзмерения","ВТЗаблокировано" + ИмяОбъекта); Если Не ДополнительныеПараметры.ВыбиратьПорциями Тогда ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "ВЫБРАТЬ ПЕРВЫЕ 500","ВЫБРАТЬ"); - КонецЕсли; + КонецЕсли; МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц(); @@ -1406,21 +1418,21 @@ КонецФункции // Создает временную таблицу значения измерений независимого регистра сведений для обработки. -// Имя таблицы: ВТДляОбработки<ИмяОбъекта>, например ВТДляОбработкиШтрихкодыНоменклатуры +// Имя таблицы: ВТДляОбработки<ИмяОбъекта>, например ВТДляОбработкиШтрихкодыНоменклатуры. // Колонки таблицы соответствуют измерениям регистра. Если по измерению не регистрировалась // необходимость обработки, то в выборке по этому измерению будет пустое значение. // // Параметры: -// Очередь - Число - очередь обработки, в которой выполняется текущий обработчик -// ПолноеИмяОбъекта - Строка - полное имя объекта, для которого выполняется проверка, например, Справочник.Номенклатура -// МенеджерВременныхТаблиц - МенеджерВременныхТаблиц - менеджер, в котором будет создана временная таблица +// Очередь - Число - очередь обработки, в которой выполняется текущий обработчик. +// ПолноеИмяОбъекта - Строка - полное имя объекта, для которого выполняется проверка, например, Справочник.Номенклатура. +// МенеджерВременныхТаблиц - МенеджерВременныхТаблиц - менеджер, в котором будет создана временная таблица. // ДополнительныеПараметры - Структура - см. ОбновлениеИнформационнойБазы.ДополнительныеПараметрыВыборкиДанныхДляОбработки. // // Возвращаемое значение: // Структура - результат формирования временной таблицы: // * ЕстьЗаписиВоВременнойТаблице - Булево - в создаваемой таблице есть хотя бы одна запись. Записей может не быть по двум причинам -// - все обработано или все, что нужно обработать, еще заблокировано обработчиками с меньшей очередью -// * ЕстьДанныеДляОбработки - Булево - в очереди есть данные для обработки, т.е. еще не все обработано +// - все обработано или все, что нужно обработать, еще заблокировано обработчиками с меньшей очередью. +// * ЕстьДанныеДляОбработки - Булево - в очереди есть данные для обработки, т.е. еще не все обработано. // * ИмяВременнойТаблицы - Строка - имя созданной временной таблицы. // Функция СоздатьВременнуюТаблицуИзмеренийНезависимогоРегистраСведенийДляОбработки(Очередь, ПолноеИмяОбъекта, МенеджерВременныхТаблиц, ДополнительныеПараметры = Неопределено) Экспорт @@ -1446,7 +1458,7 @@ |ГДЕ | ТаблицаИзменений.Узел = &ТекущаяОчередь | И &ТекстУсловияПоОтборуНезаблокированных - | И &УсловиеПоДопИсточникам + | И &УсловиеПоДопИсточникамСсылкам |; | |//////////////////////////////////////////////////////////////////////////////// @@ -1482,7 +1494,7 @@ |ГДЕ | ТаблицаИзменений.Узел = &ТекущаяОчередь | И &ТекстУсловияПоОтборуНезаблокированных - | И &УсловиеПоДопИсточникам + | И &УсловиеПоДопИсточникамСсылкам |; |УНИЧТОЖИТЬ | #ВТЗаблокированоИзмерения"; @@ -1492,7 +1504,14 @@ ТекстУсловияОтбораПорции = ""; ПервоеИзмерение = Истина; + РегистрПериодический = + (МетаданныеОбъекта.ПериодичностьРегистраСведений <> Метаданные.СвойстваОбъектов.ПериодичностьРегистраСведений.Непериодический) + И МетаданныеОбъекта.ОсновнойОтборПоПериоду; Для Каждого Измерение Из МетаданныеОбъекта.Измерения Цикл + Если Не Измерение.ОсновнойОтбор Тогда + Продолжить; + КонецЕсли; + ТекстВыборкиИзмерений = ТекстВыборкиИзмерений + " | ТаблицаИзменений." + Измерение.Имя + " КАК " + Измерение.Имя + ","; @@ -1507,6 +1526,14 @@ Если ПервоеИзмерение Тогда ТекстУсловияПоОтборуНезаблокированных = "ВТЗаблокированоИзмерения." + Измерение.Имя + " ЕСТЬ NULL "; + + Если РегистрПериодический Тогда + ТекстВыборкиИзмерений = ТекстВыборкиИзмерений + " + | ТаблицаИзменений.Период КАК Период,"; + ТекстУсловияОтбораПорции = ТекстУсловияОтбораПорции + " + | ТаблицаИзменений.Период,"; + КонецЕсли; + ПервоеИзмерение = Ложь; КонецЕсли; КонецЦикла; @@ -1562,14 +1589,14 @@ // Параметры: // Очередь - Число, Неопределено - очередь, к которой отнесен обработчик и в которой зарегистрированы данные, которые он будет обрабатывать. // Неопределено - проверяется, завершена ли обработка в целом; -// Массив - проверяется есть данные для обработки в списке очередей +// Массив - проверяется есть данные для обработки в списке очередей. // ПолноеИмяМетаданныеОбъекта - Строка, ОбъектМетаданных - полное имя обрабатываемого объекта или его метаданные. // Например, "Документ.ПриходныйОрдерНаТовары" -// - Массив - массив полных имен объектов или объектов метаданных, в массиве не должно быть независимых регистров сведений +// - Массив - массив полных имен объектов или объектов метаданных, в массиве не должно быть независимых регистров сведений. // Отбор - ЛюбаяСсылка, Структура, Неопределено, Массив - отбор данных для проверки. // Если передано Неопределено - проверяется по всему типу объекта, -// Если объект - регистр, подчиненный регистратору, то в отборе - ссылка на регистратор или массив ссылок -// Если объект ссылочного типа, то в отборе - или ссылка, или массив ссылок +// Если объект - регистр, подчиненный регистратору, то в отборе - ссылка на регистратор или массив ссылок. +// Если объект ссылочного типа, то в отборе - или ссылка, или массив ссылок. // Если объект - независимый регистр сведений, то в отборе - структура со значениями измерений. // Ключ структуры - имя измерения, значение - значение отбора (можно передать массив значений). // @@ -1621,7 +1648,7 @@ "ВЫБРАТЬ ПЕРВЫЕ 1 | ТаблицаИзменений.Ссылка КАК Ссылка |ИЗ - | #ТаблицаИзменения КАК ТаблицаИзменений + | #ТаблицаИзменений КАК ТаблицаИзменений |ГДЕ | &УсловиеОтбораУзла | И &УсловиеОтбораДанных"; @@ -1646,13 +1673,17 @@ "ВЫБРАТЬ ПЕРВЫЕ 1 | &ТекстВыборкиИзмерений |ИЗ - | #ТаблицаИзменения КАК ТаблицаИзменений + | #ТаблицаИзменений КАК ТаблицаИзменений |ГДЕ | &УсловиеОтбораУзла | И &УсловиеОтбораДанных"; ТекстВыборкиИзмерений = ""; Для Каждого Измерение Из МетаданныеОбъекта.Измерения Цикл + Если Не Измерение.ОсновнойОтбор Тогда + Продолжить; + КонецЕсли; + ТекстВыборкиИзмерений = ТекстВыборкиИзмерений + " | ТаблицаИзменений." + Измерение.Имя + " КАК " + Измерение.Имя + ","; @@ -1671,7 +1702,11 @@ КонецЕсли; КонецЦикла; - ТекстВыборкиИзмерений = Лев(ТекстВыборкиИзмерений, СтрДлина(ТекстВыборкиИзмерений) - 1); + Если ПустаяСтрока(ТекстВыборкиИзмерений) Тогда + ТекстВыборкиИзмерений = "*"; + Иначе + ТекстВыборкиИзмерений = Лев(ТекстВыборкиИзмерений, СтрДлина(ТекстВыборкиИзмерений) - 1); + КонецЕсли; ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТекстВыборкиИзмерений", ТекстВыборкиИзмерений); @@ -1681,7 +1716,7 @@ "ВЫБРАТЬ ПЕРВЫЕ 1 | ТаблицаИзменений.Регистратор КАК Ссылка |ИЗ - | #ТаблицаИзменения КАК ТаблицаИзменений + | #ТаблицаИзменений КАК ТаблицаИзменений |ГДЕ | &УсловиеОтбораУзла | И &УсловиеОтбораДанных"; @@ -1696,7 +1731,7 @@ ВызватьИсключение ТекстИсключения; КонецЕсли; - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТаблицаИзменения", ПолноеИмяОбъекта + ".Изменения"); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТаблицаИзменений", ПолноеИмяОбъекта + ".Изменения"); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеОтбораДанных", УсловиеОтбораДанных); ТекстыЗапроса.Добавить(ТекстЗапроса); @@ -1738,14 +1773,14 @@ // Параметры: // Очередь - Число, Неопределено - очередь, к которой отнесен обработчик и в которой зарегистрированы данные, которые он будет обрабатывать. // Неопределено - проверяется, завершена ли обработка в целом; -// Массив - проверяется есть данные для обработки в списке очередей +// Массив - проверяется есть данные для обработки в списке очередей. // ПолноеИмяМетаданныеОбъекта - Строка, ОбъектМетаданных - полное имя обрабатываемого объекта или его метаданные. // Например, "Документ.ПриходныйОрдерНаТовары" -// - Массив - массив полных имен объектов или объектов метаданных, в массиве не должно быть независимых регистров сведений +// - Массив - массив полных имен объектов или объектов метаданных, в массиве не должно быть независимых регистров сведений. // Отбор - ЛюбаяСсылка, Структура, Неопределено, Массив - отбор данных для проверки. // Если передано Неопределено - проверяется по всему типу объекта, -// Если объект - регистр, подчиненный регистратору, то в отборе - ссылка на регистратор или массив ссылок -// Если объект ссылочного типа, то в отборе - или ссылка, или массив ссылок +// Если объект - регистр, подчиненный регистратору, то в отборе - ссылка на регистратор или массив ссылок. +// Если объект ссылочного типа, то в отборе - или ссылка, или массив ссылок. // Если объект - независимый регистр сведений, то в отборе - структура со значениями измерений. // Ключ структуры - имя измерения, значение - значение отбора (можно передать массив значений). // @@ -1794,7 +1829,11 @@ Функция МожноЧитатьИМенять(Очередь, Данные, ДополнительныеПараметры = Неопределено, МетаданныеИОтбор = Неопределено) Экспорт Если ПолучитьФункциональнуюОпцию("ОтложенноеОбновлениеЗавершеноУспешно") Тогда - Возврат Истина; + Если Не ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда + Возврат Истина; + ИначеЕсли ПолучитьФункциональнуюОпцию("ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно") Тогда + Возврат Истина; + КонецЕсли; КонецЕсли; Если МетаданныеИОтбор = Неопределено Тогда @@ -1814,7 +1853,7 @@ КонецФункции // Создает временную таблицу заблокированных данных. -// Имя таблицы: ВТЗаблокированы<ИмяОбъекта>, например ВТЗаблокированоНоменклатура +// Имя таблицы: ВТЗаблокированы<ИмяОбъекта>, например ВТЗаблокированоНоменклатура. // Колонки таблицы // для объектов ссылочного типа: // * Ссылка @@ -1824,9 +1863,9 @@ // * колонки, соответствующие измерениям регистра. // // Параметры: -// Очередь,Неопределено - Число - очередь обработки, в которой выполняется текущий обработчик. Если передано Неопределенно, то проверяется во всех очередях -// ПолноеИмяОбъекта - Строка - полное имя объекта, для которого выполняется проверка, например, Справочник.Номенклатура -// МенеджерВременныхТаблиц - МенеджерВременныхТаблиц - менеджер, в котором будет создана временная таблица +// Очередь,Неопределено - Число - очередь обработки, в которой выполняется текущий обработчик. Если передано Неопределенно, то проверяется во всех очередях. +// ПолноеИмяОбъекта - Строка - полное имя объекта, для которого выполняется проверка, например, Справочник.Номенклатура. +// МенеджерВременныхТаблиц - МенеджерВременныхТаблиц - менеджер, в котором будет создана временная таблица. // ДополнительныеПараметры - Структура - см. ОбновлениеИнформационнойБазы.ДополнительныеПараметрыВыборкиДанныхДляОбработки, // параметр ВыбиратьПорциями игнорируется, заблокированные данные всегда помещаются в таблицу целиком. // @@ -1862,7 +1901,7 @@ | ТаблицаИзменений.Ссылка КАК Ссылка |ПОМЕСТИТЬ #ИмяВременнойТаблицы |ИЗ - | #ТаблицаИзменения КАК ТаблицаИзменений + | #ТаблицаИзменений КАК ТаблицаИзменений |ГДЕ | &УсловиеОтбораУзла | @@ -1881,28 +1920,47 @@ | ЛОЖЬ"; ТекстВыборкиИзмерений = ""; Для Каждого Измерение Из МетаданныеОбъекта.Измерения Цикл + Если Не Измерение.ОсновнойОтбор Тогда + Продолжить; + КонецЕсли; + ТекстВыборкиИзмерений = ТекстВыборкиИзмерений + " | &ПустоеЗначениеИзмерения"+ Измерение.Имя + " КАК " + Измерение.Имя + ","; Запрос.УстановитьПараметр("ПустоеЗначениеИзмерения"+ Измерение.Имя, Измерение.Тип.ПривестиЗначение()); КонецЦикла; - Иначе + Иначе ТекстЗапроса = "ВЫБРАТЬ РАЗЛИЧНЫЕ | &ТекстВыборкиИзмерений |ПОМЕСТИТЬ #ИмяВременнойТаблицы |ИЗ - | #ТаблицаИзменения КАК ТаблицаИзменений + | #ТаблицаИзменений КАК ТаблицаИзменений |ГДЕ | &УсловиеОтбораУзла "; ТекстВыборкиИзмерений = ""; Для Каждого Измерение Из МетаданныеОбъекта.Измерения Цикл + Если Не Измерение.ОсновнойОтбор Тогда + Продолжить; + КонецЕсли; + ТекстВыборкиИзмерений = ТекстВыборкиИзмерений + " | ТаблицаИзменений." + Измерение.Имя + " КАК " + Измерение.Имя + ","; КонецЦикла; КонецЕсли; - ТекстВыборкиИзмерений = Лев(ТекстВыборкиИзмерений, СтрДлина(ТекстВыборкиИзмерений) - 1); + ПризнакНепериодический = Метаданные.СвойстваОбъектов.ПериодичностьРегистраСведений.Непериодический; + Если МетаданныеОбъекта.ПериодичностьРегистраСведений <> ПризнакНепериодический + И МетаданныеОбъекта.ОсновнойОтборПоПериоду Тогда + ТекстВыборкиИзмерений = ТекстВыборкиИзмерений + " + | ТаблицаИзменений.Период КАК Период,"; + КонецЕсли; + + Если ПустаяСтрока(ТекстВыборкиИзмерений) Тогда + ТекстВыборкиИзмерений = "*"; + Иначе + ТекстВыборкиИзмерений = Лев(ТекстВыборкиИзмерений, СтрДлина(ТекстВыборкиИзмерений) - 1); + КонецЕсли; ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ТекстВыборкиИзмерений", ТекстВыборкиИзмерений); @@ -1924,7 +1982,7 @@ | ТаблицаИзменений.Регистратор КАК Регистратор |ПОМЕСТИТЬ #ИмяВременнойТаблицы |ИЗ - | #ТаблицаИзменения КАК ТаблицаИзменений + | #ТаблицаИзменений КАК ТаблицаИзменений |ГДЕ | &УсловиеОтбораУзла | @@ -1947,7 +2005,7 @@ КонецЕсли; ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеОтбораУзла", УсловиеОтбораУзла); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТаблицаИзменения", ПолноеИмяОбъекта + ".Изменения"); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТаблицаИзменений", ПолноеИмяОбъекта + ".Изменения"); КонецЕсли; @@ -1974,15 +2032,15 @@ КонецФункции // Создает временную таблицу заблокированных ссылок. -// Имя таблицы: ВТЗаблокировано +// Имя таблицы: ВТЗаблокировано. // Колонки таблицы // * Ссылка // // Параметры: -// Очередь,Неопределено - Число - очередь обработки, в которой выполняется текущий обработчик. Если передано Неопределенно, то проверяется во всех очередях +// Очередь,Неопределено - Число - очередь обработки, в которой выполняется текущий обработчик. Если передано Неопределенно, то проверяется во всех очередях. // ПолныеИменаОбъектов - Строка, Массив - полные имена объектов, для которых выполняется проверка, например, Справочник.Номенклатура. // Могут быть переданы объекты ссылочного типа, или регистры, подчиненные регистратору. -// МенеджерВременныхТаблиц - МенеджерВременныхТаблиц - менеджер, в котором будет создана временная таблица +// МенеджерВременныхТаблиц - МенеджерВременныхТаблиц - менеджер, в котором будет создана временная таблица. // ДополнительныеПараметры - Структура - см. ОбновлениеИнформационнойБазы.ДополнительныеПараметрыВыборкиДанныхДляОбработки, // параметр ВыбиратьПорциями игнорируется, заблокированные данные всегда помещаются в таблицу целиком. // @@ -2041,7 +2099,7 @@ | ТаблицаИзменений.Ссылка КАК Ссылка |//ПервыйЗапрос |ИЗ - | #ТаблицаИзменения КАК ТаблицаИзменений + | #ТаблицаИзменений КАК ТаблицаИзменений |ГДЕ | &УсловиеОтбораУзла"; Иначе @@ -2049,7 +2107,7 @@ "ВЫБРАТЬ РАЗЛИЧНЫЕ | ТаблицаИзменений.Ссылка КАК Ссылка |ИЗ - | #ТаблицаИзменения КАК ТаблицаИзменений + | #ТаблицаИзменений КАК ТаблицаИзменений |ГДЕ | &УсловиеОтбораУзла"; КонецЕсли; @@ -2060,7 +2118,7 @@ | ТаблицаИзменений.Регистратор КАК Ссылка |//ПервыйЗапрос |ИЗ - | #ТаблицаИзменения КАК ТаблицаИзменений + | #ТаблицаИзменений КАК ТаблицаИзменений |ГДЕ | &УсловиеОтбораУзла"; Иначе @@ -2068,7 +2126,7 @@ "ВЫБРАТЬ РАЗЛИЧНЫЕ | ТаблицаИзменений.Регистратор КАК Ссылка |ИЗ - | #ТаблицаИзменения КАК ТаблицаИзменений + | #ТаблицаИзменений КАК ТаблицаИзменений |ГДЕ | &УсловиеОтбораУзла"; КонецЕсли; @@ -2081,7 +2139,7 @@ ВызватьИсключение ТекстИсключения; КонецЕсли; - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТаблицаИзменения", ПолноеИмяОбъекта + ".Изменения"); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТаблицаИзменений", ПолноеИмяОбъекта + ".Изменения"); МассивТекстовЗапросов.Добавить(ТекстЗапроса); КонецЦикла; @@ -2150,11 +2208,11 @@ // Колонки таблицы соответствуют переданным измерениям. // // Параметры: -// Очередь,Неопределено - Число - очередь обработки, в которой выполняется текущий обработчик. Если передано Неопределенно, то проверяется во всех очередях +// Очередь,Неопределено - Число - очередь обработки, в которой выполняется текущий обработчик. Если передано Неопределенно, то проверяется во всех очередях. // ПолноеИмяРегистра - Строка - имя регистра, движения по которому нужно переформировать. // Например, РегистрНакопления.ТоварыНаСкладах -// Измерения - Строка, Массив - имя измерений, по которым нужно проверить блокировку перечисленные через запятую или массив имен -// МенеджерВременныхТаблиц - МенеджерВременныхТаблиц - менеджер, в котором будет создана временная таблица +// Измерения - Строка, Массив - имя измерений, по которым нужно проверить блокировку перечисленные через запятую или массив имен. +// МенеджерВременныхТаблиц - МенеджерВременныхТаблиц - менеджер, в котором будет создана временная таблица. // ДополнительныеПараметры - Структура - см. ОбновлениеИнформационнойБазы.ДополнительныеПараметрыВыборкиДанныхДляОбработки, // параметр ВыбиратьПорциями игнорируется, заблокированные данные всегда помещаются в таблицу целиком. // @@ -2204,7 +2262,7 @@ | &ЗначенияИзмерений |ПОМЕСТИТЬ #ИмяВременнойТаблицы |ИЗ - | #ТаблицаИзменения КАК ТаблицаИзменений + | #ТаблицаИзменений КАК ТаблицаИзменений | ВНУТРЕННЕЕ СОЕДИНЕНИЕ #ТаблицаРегистра КАК ТаблицаРегистра | ПО ТаблицаИзменений.Регистратор = ТаблицаРегистра.Регистратор |ГДЕ @@ -2218,7 +2276,7 @@ КонецЦикла; - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТаблицаИзменения", ПолноеИмяРегистра + ".Изменения"); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТаблицаИзменений", ПолноеИмяРегистра + ".Изменения"); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТаблицаРегистра", ПолноеИмяРегистра); Если Очередь = Неопределено Тогда @@ -2300,6 +2358,8 @@ // // Возвращаемое значение: // ТаблицаЗначений - таблица с колонками: +// 1) Для всех типов обработчиков обновления: +// // * НачальноеЗаполнение - Булево - если Истина, то обработчик должен срабатывать при запуске на "пустой" базе. // * Версия - Строка - например, "2.1.3.39". Номер версии конфигурации, при переходе // на которую должна быть выполнена процедура-обработчик обновления. @@ -2308,12 +2368,11 @@ // * Процедура - Строка - полное имя процедуры-обработчика обновления/начального заполнения. // Например, "ОбновлениеИнформационнойБазыУПП.ЗаполнитьНовыйРеквизит" // Обязательно должна быть экспортной. +// * РежимВыполнения - Строка - режим выполнения обработчика обновления. Допустимые значения: +// Монопольно, Отложенно, Оперативно. Если значение не заполнено, обработчик +// считается монопольным. // -// * ВыполнятьВГруппеОбязательных - Булево - следует указывать, если обработчик требуется -// выполнять в одной группе с обработчиками на версии "*". -// При этом, возможно менять порядок выполнения обработчика -// относительно других путем изменения приоритета. -// * Приоритет - Число - для внутреннего использования. +// 2) Для обработчиков обновления в модели сервиса: // // * ОбщиеДанные - Булево - если Истина, то обработчик должен срабатывать до // выполнения любых обработчиков, использующих разделенные данные. @@ -2329,10 +2388,49 @@ // описанием процедуры обработчика. // Имеет смысл только для обязательных (Версия = *) обработчиков обновления // с установленным флагом ОбщиеДанные. +// +// 3) Для отложенных обработчиков обновления: +// // * Комментарий - Строка - описание действий, выполняемых обработчиком обновления. -// * РежимВыполнения - Строка - режим выполнения обработчика обновления. Допустимые значения: -// Монопольно, Отложенно, Оперативно. Если значение не заполнено, обработчик -// считается монопольным. +// * Идентификатор - УникальныйИдентификатор - необходимо заполнять для обработчиков отложенного обновления, +// для остальных заполнение не требуется. Требуется для идентификации +// обработчика в случае его переименования. +// +// * БлокируемыеОбъекты - Строка - необходимо заполнять для обработчиков отложенного обновления, +// для остальных заполнение не требуется. Полные имена объектов через запятую, +// которые следует блокировать от изменения до завершения процедуры обработки данных. +// +// 4) Для обработчиков обновления в библиотеках (конфигурации) с параллельным режимом выполнения отложенных обработчиков: +// +// * ПроцедураПроверки - Строка - необходимо заполнять для обработчиков отложенного обновления, +// для остальных заполнение не требуется. Имя функции, которая для переданного объекта +// определяет, завершена ли для него процедура обработки данных. +// Если переданный объект обработан, то следует вернуть значение Истина. +// Вызывается из процедуры ОбновлениеИнформационнойБазы.ПроверитьОбъектОбработан. +// Параметры, передаваемые в функцию: +// Параметры - Структура - см. ОбновлениеИнформационнойБазы.МетаданныеИОтборПоДанным. +// * ПроцедураЗаполненияДанныхОбновления - Строка - указывается процедура, которая регистрирует данные, +// подлежащие обновлению данным обработчиком. +// * ЗапускатьТолькоВГлавномУзле - Булево - только для обработчиков отложенного обновления с режимом выполнения Параллельно. +// Указать Истина, если обработчик обновления должен выполняться только в главном узле РИБ. +// * ЗапускатьИВПодчиненномУзлеРИБСФильтрами - Булево - только для обработчиков отложенного обновления с режимом выполнения Параллельно, +// Указать Истина, если обработчик обновления должен также выполняться в подчиненном узле РИБ с фильтрами. +// * ЧитаемыеОбъекты - Строка - Объекты, которые обработчик обновления будет читать при обработке данных. +// * ИзменяемыеОбъекты - Строка - Объекты, которые обработчик обновления будет изменять при обработке данных. +// * ПриоритетыВыполнения - ТаблицаЗначений - Таблица приоритетов выполнения между отложенными обработчиками, +// изменяющими или читающими одни и те же данные. Подробнее см. в комментарии +// к функции ОбновлениеИнформационнойБазы.ПриоритетыВыполненияОбработчика. +// +// 5) Для внутреннего использования: +// +// * ВыполнятьВГруппеОбязательных - Булево - следует указывать, если обработчик требуется +// выполнять в одной группе с обработчиками на версии "*". +// При этом, возможно менять порядок выполнения обработчика +// относительно других путем изменения приоритета. +// * Приоритет - Число - для внутреннего использования. +// +// 6) Устарели, используются для обратной совместимости (для новых обработчиков не указывать): +// // * МонопольныйРежим - Неопределено, Булево - если указано Неопределено, то обработчик // должен безусловно выполняться в монопольном режиме. // Для обработчиков перехода на конкретную версию (версия <> *): @@ -2356,58 +2454,69 @@ // В этом случае оперативное (немонопольное обновление ИБ) будет // отменено и выдана ошибка с требованием выполнить обновление в // монопольном режиме. -// * Идентификатор - УникальныйИдентификатор - необходимо заполнять для обработчиков отложенного обновления, -// для остальных заполнение не требуется. Требуется для идентификации -// обработчика в случае его переименования. -// * БлокируемыеОбъекты - Строка - необходимо заполнять для обработчиков отложенного обновления, -// для остальных заполнение не требуется. Полные имена объектов через запятую, -// которые следует блокировать от изменения до завершения процедуры обработки данных. -// * ПроцедураПроверки - Строка - необходимо заполнять для обработчиков отложенного обновления, -// для остальных заполнение не требуется. Имя функции, которая для переданного объекта -// определяет, завершена ли для него процедура обработки данных. -// Если переданный объект обработан, то следует вернуть значение Истина. -// Вызывается из процедуры ОбновлениеИнформационнойБазы.ПроверитьОбъектОбработан. -// Параметры, передаваемые в функцию: -// Параметры - Структура - см. ОбновлениеИнформационнойБазы.МетаданныеИОтборПоДанным. -// * ЗапускатьТолькоВГлавномУзле - Булево - только для обработчиков отложенного обновления с режимом выполнения Параллельно. -// Указать Истина, если обработчик обновления должен выполняться только в главном узле РИБ. -// * ЗапускатьИВПодчиненномУзлеРИБСФильтрами - Булево - только для обработчиков отложенного обновления с режимом выполнения Параллельно. -// Указать Истина, если обработчик обновления должен также выполняться в подчиненном узле РИБ с фильтрами. // Функция НоваяТаблицаОбработчиковОбновления() Экспорт Обработчики = Новый ТаблицаЗначений; - // Основные свойства. + // Общие свойства. Обработчики.Колонки.Добавить("НачальноеЗаполнение", Новый ОписаниеТипов("Булево")); Обработчики.Колонки.Добавить("Версия", Новый ОписаниеТипов("Строка", Новый КвалификаторыСтроки(0))); Обработчики.Колонки.Добавить("Процедура", Новый ОписаниеТипов("Строка", Новый КвалификаторыСтроки(0))); - Обработчики.Колонки.Добавить("Комментарий", Новый ОписаниеТипов("Строка", Новый КвалификаторыСтроки(0))); Обработчики.Колонки.Добавить("РежимВыполнения", Новый ОписаниеТипов("Строка")); - // Дополнительные свойства (для библиотек). + // Для библиотек. Обработчики.Колонки.Добавить("ВыполнятьВГруппеОбязательных", Новый ОписаниеТипов("Булево")); Обработчики.Колонки.Добавить("Приоритет", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(2))); - // Поддержка модели сервиса. + // Для модели сервиса. Обработчики.Колонки.Добавить("ОбщиеДанные", Новый ОписаниеТипов("Булево")); Обработчики.Колонки.Добавить("УправлениеОбработчиками", Новый ОписаниеТипов("Булево")); - Обработчики.Колонки.Добавить("МонопольныйРежим"); // Для отложенных обработчиков обновления. + Обработчики.Колонки.Добавить("Комментарий", Новый ОписаниеТипов("Строка", Новый КвалификаторыСтроки(0))); Обработчики.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("УникальныйИдентификатор")); Обработчики.Колонки.Добавить("ПроцедураПроверки", Новый ОписаниеТипов("Строка")); Обработчики.Колонки.Добавить("БлокируемыеОбъекты", Новый ОписаниеТипов("Строка")); - Обработчики.Колонки.Добавить("ЗапускатьТолькоВГлавномУзле", Новый ОписаниеТипов("Булево")); - Обработчики.Колонки.Добавить("ЗапускатьИВПодчиненномУзлеРИБСФильтрами", Новый ОписаниеТипов("Булево")); - - // Для поддержки параллельного отложенного обновления. + // Для параллельного режима отложенного обновления. Обработчики.Колонки.Добавить("ПроцедураЗаполненияДанныхОбновления", Новый ОписаниеТипов("Строка", Новый КвалификаторыСтроки(0))); Обработчики.Колонки.Добавить("ОчередьОтложеннойОбработки", Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(4))); + Обработчики.Колонки.Добавить("ЗапускатьТолькоВГлавномУзле", Новый ОписаниеТипов("Булево")); + Обработчики.Колонки.Добавить("ЗапускатьИВПодчиненномУзлеРИБСФильтрами", Новый ОписаниеТипов("Булево")); + Обработчики.Колонки.Добавить("ЧитаемыеОбъекты", Новый ОписаниеТипов("Строка", Новый КвалификаторыСтроки(0))); + Обработчики.Колонки.Добавить("ИзменяемыеОбъекты", Новый ОписаниеТипов("Строка", Новый КвалификаторыСтроки(0))); + Обработчики.Колонки.Добавить("ПриоритетыВыполнения"); - // Устарело. Обратная совместимость до редакции "2.2". + // Устарело. Обратная совместимость с редакцией "2.2". Обработчики.Колонки.Добавить("Опциональный"); + Обработчики.Колонки.Добавить("МонопольныйРежим"); Возврат Обработчики; КонецФункции +// Возвращает пустую таблицу приоритетов выполнения между отложенными обработчиками, +// изменяющими или читающими одни и те же данные. Для использования в описании обработчиков обновления. +// +// Возвращаемое значение: +// Таблица значений с колонками: +// * Порядок - Строка - порядок выполнения текущего обработчика относительно других. +// Допустимые варианты - "До", "После", "Любой". +// * Идентификатор - УникальныйИдентификатор - идентификатор процедуры, с которой настраивается взаимосвязь. +// * Процедура - Строка - полное имя процедуры, с которой настраивается взаимосвязь. +// +// Например: +// Приоритет = ПриоритетыВыполненияОбработчика().Добавить(); +// Приоритет.Порядок = "До"; +// Приоритет.Процедура = "Документ.ЗаказПокупателя.ОбновитьДанныеДляПереходаНаНовуюВерсию"; +// +Функция ПриоритетыВыполненияОбработчика() Экспорт + + Приоритеты = Новый ТаблицаЗначений; + Приоритеты.Колонки.Добавить("Порядок", Новый ОписаниеТипов("Строка", Новый КвалификаторыСтроки(0))); + Приоритеты.Колонки.Добавить("Идентификатор"); + Приоритеты.Колонки.Добавить("Процедура", Новый ОписаниеТипов("Строка", Новый КвалификаторыСтроки(0))); + + Возврат Приоритеты; + +КонецФункции + // Выполнить обработчики обновления из списка ОбработчикиОбновления // для библиотеки ИдентификаторБиблиотеки до версии ВерсияМетаданныхИБ. // @@ -2477,9 +2586,19 @@ Для Каждого ШагОбновления Из СведенияОбОбновлении.ПланОтложенногоОбновления Цикл ОбработчикиШага = ШагОбновления.Обработчики; - НайденныйОбработчик = ОбработчикиШага.Найти(ИмяОбработчика); - Если НайденныйОбработчик <> Неопределено Тогда - ОбработчикиШага.Удалить(НайденныйОбработчик); + Индекс = 0; + ОбработчикНайден = Ложь; + Для Каждого ОписаниеОбработчика Из ОбработчикиШага Цикл + Если ОписаниеОбработчика.ИмяОбработчика = ИмяОбработчика Тогда + ОбработчикНайден = Истина; + Прервать; + КонецЕсли; + Индекс = Индекс + 1; + КонецЦикла; + + Если ОбработчикНайден Тогда + ОбработчикиШага.Удалить(Индекс); + Прервать; КонецЕсли; КонецЦикла; @@ -2532,6 +2651,84 @@ КонецПроцедуры +// Получает версию конфигурации или родительской конфигурации (библиотеки), +// которая хранится в информационной базе. +// +// Параметры: +// ИдентификаторБиблиотеки - Строка - имя конфигурации или идентификатор библиотеки. +// +// Возвращаемое значение: +// Строка - версия. +// +// Пример использования: +// ВерсияКонфигурацииИБ = ВерсияИБ(Метаданные.Имя); +// +Функция ВерсияИБ(Знач ИдентификаторБиблиотеки) Экспорт + + Возврат ОбновлениеИнформационнойБазыСлужебный.ВерсияИБ(ИдентификаторБиблиотеки); + +КонецФункции + +// Записывает в информационную базу версию конфигурации или родительской конфигурации (библиотеки). +// +// Параметры: +// ИдентификаторБиблиотеки - Строка - имя конфигурации или родительской конфигурации (библиотеки), +// НомерВерсии - Строка - номер версии. +// ЭтоОсновнаяКонфигурация - Булево - признак, что ИдентификаторБиблиотеки соответствует имени конфигурации. +// +Процедура УстановитьВерсиюИБ(Знач ИдентификаторБиблиотеки, Знач НомерВерсии, Знач ЭтоОсновнаяКонфигурация) Экспорт + + ОбновлениеИнформационнойБазыСлужебный.УстановитьВерсиюИБ(ИдентификаторБиблиотеки, НомерВерсии, ЭтоОсновнаяКонфигурация); + +КонецПроцедуры + +// Выполняет регистрацию новой подсистемы в регистре сведений ВерсииПодсистем. +// Необходима, например, в тех случаях, когда новая подсистема создается на +// основе уже существующих метаданных и не требуется выполнять обработчики начального заполнения. +// Если подсистема уже зарегистрирована, то повторная регистрация не выполняется. +// Вызывать данный метод следует из процедуры ПередОбновлениемИнформационнойБазы общего +// модуля ОбновлениеИнформационнойБазыПереопределяемый. +// +// Параметры: +// ИмяПодсистемы - Строка - имя подсистемы в том виде, в котором оно задано в общем модуле +// ОбновлениеИнформационнойБазыХХХ. +// Например - "СтандартныеПодсистемы". +// НомерВерсии - Строка - полный номер версии, на которую необходимо зарегистрировать подсистему. +// Если не указан, то регистрируется на версию "0.0.0.1". Следует указывать, +// если нужно, чтобы выполнились не все обработчики, а только последние. +// +Процедура ЗарегистрироватьНовуюПодсистему(ИмяПодсистемы, НомерВерсии = "") Экспорт + + УстановитьПривилегированныйРежим(Истина); + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ВерсииПодсистем.ИмяПодсистемы КАК ИмяПодсистемы + |ИЗ + | РегистрСведений.ВерсииПодсистем КАК ВерсииПодсистем"; + + ПодсистемыКонфигурации = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("ИмяПодсистемы"); + + Если ПодсистемыКонфигурации.Количество() > 0 Тогда + // Это не первый запуск программы + Если ПодсистемыКонфигурации.Найти(ИмяПодсистемы) = Неопределено Тогда + Запись = РегистрыСведений.ВерсииПодсистем.СоздатьМенеджерЗаписи(); + Запись.ИмяПодсистемы = ИмяПодсистемы; + Запись.Версия = ?(НомерВерсии = "", "0.0.0.1", НомерВерсии); + Запись.Записать(); + КонецЕсли; + КонецЕсли; + + Сведения = ОбновлениеИнформационнойБазыСлужебный.СведенияОбОбновленииИнформационнойБазы(); + ИндексЭлемента = Сведения.НовыеПодсистемы.Найти(ИмяПодсистемы); + Если ИндексЭлемента <> Неопределено Тогда + Сведения.НовыеПодсистемы.Удалить(ИмяПодсистемы); + ОбновлениеИнформационнойБазыСлужебный.ЗаписатьСведенияОбОбновленииИнформационнойБазы(Сведения); + КонецЕсли; + +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -2539,247 +2736,343 @@ Процедура ДобавитьПроверкуБлокировкиДополнительныхИсточников(Очередь, ТекстЗапроса, ПолноеИмяОбъекта, ПолноеИмяРегистра, МенеджерВременныхТаблиц, ЭтоСозданиеВременнойТаблицы, ДополнительныеПараметры) Если ДополнительныеПараметры.ДополнительныеИсточникиДанных.Количество() = 0 Тогда - + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТекстЗапросаСоединениеСДопИсточникамиПоШапке", ""); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТекстЗапросаСоединениеСДопИсточникамиПоТЧ", ""); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеПоДопИсточникам", "ИСТИНА"); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеПоДопИсточникамСсылкам", "ИСТИНА"); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеПоДопИсточникамРегистрам", "ИСТИНА"); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТекстЗапросаСоединениеСДопИсточникамиРегистрами", ""); - Иначе - Если ПолноеИмяОбъекта = Неопределено Тогда - ТекстИсключения = НСтр("ru = 'Ошибка вызова функции %ИмяФункции%: не передано имя документа, но переданы дополнительные источники данных.'"); - ТекстИсключения = СтрЗаменить(ТекстИсключения, "%ИмяФункции%", "ОбновлениеИнформационнойБазы.ДобавитьПроверкуБлокировкиДополнительныхИсточников"); - ВызватьИсключение ТекстИсключения; - КонецЕсли; + Иначе - МетаданныеДокумента = Метаданные.НайтиПоПолномуИмени(ПолноеИмяОбъекта); - ТекстЗапросаСоединениеСДопИсточникамиПоШапке = ""; - ТекстЗапросаСоединениеСДопИсточникамиПоТЧ = ""; - ТекстыЗапросаСоединениеСДопИсточникамиПоТЧ = Новый Соответствие; - УсловиеПоДопИсточникам = "ИСТИНА"; - - УсловиеПоДопИсточникамТЧ = "ЛОЖЬ"; - - ВременныеТаблицыЗаблокированныхДопИсточников = Новый Соответствие; + ДополнительныеИсточникиСсылки = Новый Массив; + ДополнительныеИсточникиРегистры = Новый Массив; Для Каждого КлючЗначение Из ДополнительныеПараметры.ДополнительныеИсточникиДанных Цикл ИсточникДанных = КлючЗначение.Ключ; - Если СтрНайти(ИсточникДанных, ".") > 0 Тогда - ЧастиИмени = СтрРазделить(ИсточникДанных, "."); - ИмяТЧ = ЧастиИмени[0]; - ИмяРеквизита = ЧастиИмени[1]; + Если ВРег(Лев(ИсточникДанных,7)) = "РЕГИСТР" + И СтрНайти(ИсточникДанных,".") <> 0 Тогда + ДополнительныеИсточникиРегистры.Добавить(ИсточникДанных); Иначе - ИмяТЧ = ""; - ИмяРеквизита = ИсточникДанных; + ДополнительныеИсточникиСсылки.Добавить(ИсточникДанных); КонецЕсли; - Если ЗначениеЗаполнено(ИмяТЧ) Тогда - ТипыИсточника = МетаданныеДокумента.ТабличныеЧасти[ИмяТЧ].Реквизиты[ИмяРеквизита].Тип.Типы(); - Иначе - ТипыИсточника = МетаданныеДокумента.Реквизиты[ИмяРеквизита].Тип.Типы(); - КонецЕсли; + КонецЦикла; + + Если ДополнительныеИсточникиСсылки.Количество() > 0 Тогда - Для Каждого ТипИсточника Из ТипыИсточника Цикл + Если ПолноеИмяОбъекта = Неопределено Тогда + ТекстИсключения = НСтр("ru = 'Ошибка вызова функции %ИмяФункции%: не передано имя документа, но переданы дополнительные источники данных.'"); + ТекстИсключения = СтрЗаменить(ТекстИсключения, "%ИмяФункции%", "ОбновлениеИнформационнойБазы.ДобавитьПроверкуБлокировкиДополнительныхИсточников"); + ВызватьИсключение ТекстИсключения; + КонецЕсли; + + МетаданныеДокумента = Метаданные.НайтиПоПолномуИмени(ПолноеИмяОбъекта); + ТекстЗапросаСоединениеСДопИсточникамиПоШапке = ""; + ТекстЗапросаСоединениеСДопИсточникамиПоТЧ = ""; + ТекстыЗапросаСоединениеСДопИсточникамиПоТЧ = Новый Соответствие; + УсловиеПоДопИсточникамСсылкам = "ИСТИНА"; + + УсловиеПоДопИсточникамСсылкамТЧ = "ЛОЖЬ"; + + ВременныеТаблицыЗаблокированныхДопИсточников = Новый Соответствие; + + Для Каждого ИсточникДанных Из ДополнительныеИсточникиСсылки Цикл - Если ЭтоПримитивныйТип(ТипИсточника) Тогда - Продолжить; + Если СтрНайти(ИсточникДанных, ".") > 0 Тогда + ЧастиИмени = СтрРазделить(ИсточникДанных, "."); + ИмяТЧ = ЧастиИмени[0]; + ИмяРеквизита = ЧастиИмени[1]; + Иначе + ИмяТЧ = ""; + ИмяРеквизита = ИсточникДанных; КонецЕсли; - Если ЗначениеЗаполнено(ИмяТЧ) - И СтрНайти(ТекстЗапросаСоединениеСДопИсточникамиПоТЧ, "КАК ТЧДокумента" + ИмяТЧ) = 0 Тогда + Если ЗначениеЗаполнено(ИмяТЧ) Тогда + ТипыИсточника = МетаданныеДокумента.ТабличныеЧасти[ИмяТЧ].Реквизиты[ИмяРеквизита].Тип.Типы(); + Иначе + ТипыИсточника = МетаданныеДокумента.Реквизиты[ИмяРеквизита].Тип.Типы(); + КонецЕсли; + + Для Каждого ТипИсточника Из ТипыИсточника Цикл - Если ПолноеИмяРегистра <> Неопределено Тогда + Если ЭтоПримитивныйТип(ТипИсточника) Тогда + Продолжить; + КонецЕсли; + + Если ЗначениеЗаполнено(ИмяТЧ) + И СтрНайти(ТекстЗапросаСоединениеСДопИсточникамиПоТЧ, "КАК ТЧДокумента" + ИмяТЧ) = 0 Тогда - ТекстЗапросаСоединениеСДопИсточникамиПоТЧ = ТекстЗапросаСоединениеСДопИсточникамиПоТЧ + " - | ВНУТРЕННЕЕ СОЕДИНЕНИЕ #ПолноеИмяДокумента." + ИмяТЧ + " КАК ТЧДокумента" + ИмяТЧ + " - |#ТекстЗапросаСоединениеСДопИсточникамиПоТЧ" + ИмяТЧ + " - | ПО ТаблицаРегистраИзменения.Регистратор = ТЧДокумента" + ИмяТЧ + ".Ссылка - |"; + Если ПолноеИмяРегистра <> Неопределено Тогда + + ТекстЗапросаСоединениеСДопИсточникамиПоТЧ = ТекстЗапросаСоединениеСДопИсточникамиПоТЧ + " + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ #ПолноеИмяДокумента." + ИмяТЧ + " КАК ТЧДокумента" + ИмяТЧ + " + |#ТекстЗапросаСоединениеСДопИсточникамиПоТЧ" + ИмяТЧ + " + | ПО ТаблицаРегистраИзменения.Регистратор = ТЧДокумента" + ИмяТЧ + ".Ссылка + |"; + + Иначе + + ТекстЗапросаСоединениеСДопИсточникамиПоТЧ = ТекстЗапросаСоединениеСДопИсточникамиПоТЧ + " + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ #ПолноеИмяДокумента." + ИмяТЧ + " КАК ТЧДокумента" + ИмяТЧ + " + |#ТекстЗапросаСоединениеСДопИсточникамиПоТЧ" + ИмяТЧ + " + | ПО ТаблицаИзменений.Ссылка = ТЧДокумента" + ИмяТЧ + ".Ссылка + |"; + + КонецЕсли; + КонецЕсли; + + МетаданныеИсточника = Метаданные.НайтиПоТипу(ТипИсточника); + + ИмяВТЗаблокированногоДопИсточника = ВременныеТаблицыЗаблокированныхДопИсточников.Получить(МетаданныеИсточника); + + Если ИмяВТЗаблокированногоДопИсточника = Неопределено Тогда + ПолноеИмяИсточника = МетаданныеИсточника.ПолноеИмя(); + ИмяВТЗаблокированногоДопИсточника = "ВТЗаблокировано" + СтрЗаменить(ПолноеИмяИсточника,".","_"); - Иначе + ДополнительныеПараметрыСозданияВТ = ДополнительныеПараметрыВыборкиДанныхДляОбработки(); + ДополнительныеПараметрыСозданияВТ.ИмяВременнойТаблицы = ИмяВТЗаблокированногоДопИсточника; + СоздатьВременнуюТаблицуЗаблокированныхДляЧтенияИИзмененияДанных(Очередь, ПолноеИмяИсточника, МенеджерВременныхТаблиц, ДополнительныеПараметрыСозданияВТ); - ТекстЗапросаСоединениеСДопИсточникамиПоТЧ = ТекстЗапросаСоединениеСДопИсточникамиПоТЧ + " - | ВНУТРЕННЕЕ СОЕДИНЕНИЕ #ПолноеИмяДокумента." + ИмяТЧ + " КАК ТЧДокумента" + ИмяТЧ + " - |#ТекстЗапросаСоединениеСДопИсточникамиПоТЧ" + ИмяТЧ + " - | ПО ТаблицаИзменения.Ссылка = ТЧДокумента" + ИмяТЧ + ".Ссылка - |"; + ВременныеТаблицыЗаблокированныхДопИсточников.Вставить(МетаданныеИсточника, ИмяВТЗаблокированногоДопИсточника); КонецЕсли; + + Если ЗначениеЗаполнено(ИмяТЧ) Тогда + + ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ = ТекстыЗапросаСоединениеСДопИсточникамиПоТЧ.Получить(ИмяТЧ); + + Если ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ = Неопределено Тогда + ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ = ""; + КонецЕсли; + + ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ = ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ + " + | ЛЕВОЕ СОЕДИНЕНИЕ #ИмяВТ КАК #СинонимВТ + | ПО ТЧДокумента" + ИмяТЧ + "." + ИмяРеквизита + " = #СинонимВТ.Ссылка"; + + ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ = СтрЗаменить(ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ, + "#ИмяВТ", + ИмяВТЗаблокированногоДопИсточника); + СинонимВТЗаблокированногоДопИсточника = ИмяВТЗаблокированногоДопИсточника + ИмяТЧ + ИмяРеквизита; + ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ = СтрЗаменить(ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ, + "#СинонимВТ", + СинонимВТЗаблокированногоДопИсточника); + ТекстыЗапросаСоединениеСДопИсточникамиПоТЧ.Вставить(ИмяТЧ, ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ); + + УсловиеПоДопИсточникамСсылкамТЧ = УсловиеПоДопИсточникамСсылкамТЧ + " + | ИЛИ НЕ " + СинонимВТЗаблокированногоДопИсточника + ".Ссылка ЕСТЬ NULL "; + Иначе + Если ПолноеИмяРегистра <> Неопределено Тогда + ТекстЗапросаСоединениеСДопИсточникамиПоШапке = ТекстЗапросаСоединениеСДопИсточникамиПоШапке + " + | ЛЕВОЕ СОЕДИНЕНИЕ #ИмяВТ КАК #СинонимВТ + | ПО ТаблицаДокумента." + ИмяРеквизита + " = #СинонимВТ.Ссылка"; + Иначе + ТекстЗапросаСоединениеСДопИсточникамиПоШапке = ТекстЗапросаСоединениеСДопИсточникамиПоШапке + " + | ЛЕВОЕ СОЕДИНЕНИЕ #ИмяВТ КАК #СинонимВТ + | ПО ТаблицаОбъекта." + ИмяРеквизита + " = #СинонимВТ.Ссылка"; + КонецЕсли; + ТекстЗапросаСоединениеСДопИсточникамиПоШапке = СтрЗаменить(ТекстЗапросаСоединениеСДопИсточникамиПоШапке, + "#ИмяВТ", + ИмяВТЗаблокированногоДопИсточника); + СинонимВТЗаблокированногоДопИсточника = ИмяВТЗаблокированногоДопИсточника + "Шапка"; + ТекстЗапросаСоединениеСДопИсточникамиПоШапке = СтрЗаменить(ТекстЗапросаСоединениеСДопИсточникамиПоШапке, + "#СинонимВТ", + СинонимВТЗаблокированногоДопИсточника); + + УсловиеПоДопИсточникамСсылкам = УсловиеПоДопИсточникамСсылкам + " + | И " + СинонимВТЗаблокированногоДопИсточника + ".Ссылка ЕСТЬ NULL "; + КонецЕсли; + КонецЦикла; + + КонецЦикла; + + Если Не ПустаяСтрока(ТекстЗапросаСоединениеСДопИсточникамиПоТЧ) Тогда + Для Каждого ТекстСоединения Из ТекстыЗапросаСоединениеСДопИсточникамиПоТЧ Цикл + + ТекстЗапросаСоединениеСДопИсточникамиПоТЧ = СтрЗаменить(ТекстЗапросаСоединениеСДопИсточникамиПоТЧ, + "#ТекстЗапросаСоединениеСДопИсточникамиПоТЧ" + ТекстСоединения.Ключ, + ТекстСоединения.Значение); + + КонецЦикла; + + Если ПолноеИмяРегистра <> Неопределено Тогда + ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ = + "ВЫБРАТЬ РАЗЛИЧНЫЕ + | ТаблицаРегистраИзменения.Регистратор КАК Ссылка + |ПОМЕСТИТЬ ЗаблокированныеПоТЧ + |ИЗ + | #ТаблицаИзменений КАК ТаблицаРегистраИзменения + | #ТекстЗапросаСоединениеСДопИсточникамиПоТЧ + |ГДЕ + | &УсловиеПоДопИсточникамСсылкамТЧ"; + Иначе + ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ = + "ВЫБРАТЬ РАЗЛИЧНЫЕ + | ТаблицаИзменений.Ссылка КАК Ссылка + |ПОМЕСТИТЬ ЗаблокированныеПоТЧ + |ИЗ + | #ТаблицаИзменений КАК ТаблицаИзменений + | #ТекстЗапросаСоединениеСДопИсточникамиПоТЧ + |ГДЕ + | &УсловиеПоДопИсточникамСсылкамТЧ"; КонецЕсли; - МетаданныеИсточника = Метаданные.НайтиПоТипу(ТипИсточника); + ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ = СтрЗаменить(ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ, + "#ТекстЗапросаСоединениеСДопИсточникамиПоТЧ", + ТекстЗапросаСоединениеСДопИсточникамиПоТЧ); + + ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ = СтрЗаменить(ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ, + "&УсловиеПоДопИсточникамСсылкамТЧ", + УсловиеПоДопИсточникамСсылкамТЧ); + Если ПолноеИмяРегистра <> Неопределено Тогда + ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ = СтрЗаменить(ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ, + "#ТаблицаИзменений", + ПолноеИмяРегистра + ".Изменения"); + Иначе + ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ = СтрЗаменить(ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ, + "#ТаблицаИзменений", + ПолноеИмяОбъекта + ".Изменения"); + КонецЕсли; + + ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ = СтрЗаменить(ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ, + "#ПолноеИмяДокумента", + ПолноеИмяОбъекта); + Запрос = Новый Запрос; + Запрос.Текст = ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ; + Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц; + Запрос.Выполнить(); + + Если ПолноеИмяРегистра <> Неопределено Тогда + ТекстЗапросаСоединениеСДопИсточникамиПоТЧ = " + | ЛЕВОЕ СОЕДИНЕНИЕ ЗаблокированныеПоТЧ КАК ЗаблокированныеПоТЧ + | ПО ТаблицаРегистраИзменения.Регистратор = ЗаблокированныеПоТЧ.Ссылка + |"; + Иначе + ТекстЗапросаСоединениеСДопИсточникамиПоТЧ = " + | ЛЕВОЕ СОЕДИНЕНИЕ ЗаблокированныеПоТЧ КАК ЗаблокированныеПоТЧ + | ПО ТаблицаИзменений.Ссылка = ЗаблокированныеПоТЧ.Ссылка + |"; + КонецЕсли; + + УсловиеПоДопИсточникамСсылкам = УсловиеПоДопИсточникамСсылкам + " + | И ЗаблокированныеПоТЧ.Ссылка ЕСТЬ NULL "; + + ВременныеТаблицыЗаблокированныхДопИсточников.Вставить("ЗаблокированныеПоТЧ", "ЗаблокированныеПоТЧ"); + КонецЕсли; + + Если ЗначениеЗаполнено(ТекстЗапросаСоединениеСДопИсточникамиПоШапке) Тогда + Если ЭтоСозданиеВременнойТаблицы + И ПолноеИмяРегистра <> Неопределено Тогда + ТекстЗапросаСоединениеСДопИсточникамиПоШапке = СтрЗаменить(" + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ #ПолноеИмяДокумента КАК ТаблицаДокумента + | #ТекстЗапросаСоединениеСДопИсточникамиПоШапке + | ПО ТаблицаРегистраИзменения.Регистратор = ТаблицаДокумента.Ссылка", + "#ТекстЗапросаСоединениеСДопИсточникамиПоШапке", + ТекстЗапросаСоединениеСДопИсточникамиПоШапке); + КонецЕсли; + КонецЕсли; + + ШаблонТекстаЗапросаУничтоженияВременнойТаблицы = " + |УНИЧТОЖИТЬ + | #ИмяВТ + |"; + + ТекстыЗапроса = Новый Массив; + ТекстыЗапроса.Добавить(ТекстЗапроса); + + Для Каждого КлючЗначение Из ВременныеТаблицыЗаблокированныхДопИсточников Цикл + + ТекстЗапросаУничтоженияВременнойТаблицы = СтрЗаменить(ШаблонТекстаЗапросаУничтоженияВременнойТаблицы, "#ИмяВТ", КлючЗначение.Значение); + + ТекстыЗапроса.Добавить(ТекстЗапросаУничтоженияВременнойТаблицы); + + КонецЦикла; + + ТекстЗапроса = СтрСоединить(ТекстыЗапроса, ";"); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТекстЗапросаСоединениеСДопИсточникамиПоШапке", ТекстЗапросаСоединениеСДопИсточникамиПоШапке); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТекстЗапросаСоединениеСДопИсточникамиПоТЧ", ТекстЗапросаСоединениеСДопИсточникамиПоТЧ); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеПоДопИсточникамСсылкам", УсловиеПоДопИсточникамСсылкам); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ПолноеИмяДокумента", ПолноеИмяОбъекта); + Иначе + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТекстЗапросаСоединениеСДопИсточникамиПоШапке", ""); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТекстЗапросаСоединениеСДопИсточникамиПоТЧ", ""); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеПоДопИсточникамСсылкам", "ИСТИНА"); + КонецЕсли; + + Если ДополнительныеИсточникиРегистры.Количество() > 0 Тогда + + ТекстЗапросаСоединениеСДопИсточникамиРегистрами = ""; + УсловиеПоДопИсточникамРегистрам = "ИСТИНА"; + + ВременныеТаблицыЗаблокированныхДопИсточников = Новый Соответствие; + + Для Каждого ИсточникДанных Из ДополнительныеИсточникиРегистры Цикл + + МетаданныеИсточника = Метаданные.НайтиПоПолномуИмени(ИсточникДанных); + + Если ОбщегоНазначения.ЭтоРегистрСведений(МетаданныеИсточника) + И МетаданныеИсточника.РежимЗаписи = Метаданные.СвойстваОбъектов.РежимЗаписиРегистра.Независимый Тогда + + ТекстИсключения = НСтр("ru = 'Регистр %ИсточникДанных% независимый. Поддерживается проверка только по регистрам, подчиненным регистраторам.'"); + ТекстИсключения = СтрЗаменить(ТекстИсключения, "%ИсточникДанных%",ИсточникДанных); + ВызватьИсключение ТекстИсключения; + КонецЕсли; ИмяВТЗаблокированногоДопИсточника = ВременныеТаблицыЗаблокированныхДопИсточников.Получить(МетаданныеИсточника); Если ИмяВТЗаблокированногоДопИсточника = Неопределено Тогда - ПолноеИмяИсточника = МетаданныеИсточника.ПолноеИмя(); - ИмяВТЗаблокированногоДопИсточника = "ВТЗаблокировано" + СтрЗаменить(ПолноеИмяИсточника,".","_"); + ИмяВТЗаблокированногоДопИсточника = "ВТЗаблокировано" + СтрЗаменить(ИсточникДанных,".","_"); ДополнительныеПараметрыСозданияВТ = ДополнительныеПараметрыВыборкиДанныхДляОбработки(); ДополнительныеПараметрыСозданияВТ.ИмяВременнойТаблицы = ИмяВТЗаблокированногоДопИсточника; - СоздатьВременнуюТаблицуЗаблокированныхДляЧтенияИИзмененияДанных(Очередь, ПолноеИмяИсточника, МенеджерВременныхТаблиц, ДополнительныеПараметрыСозданияВТ); + СоздатьВременнуюТаблицуЗаблокированныхДляЧтенияИИзмененияДанных(Очередь, ИсточникДанных, МенеджерВременныхТаблиц, ДополнительныеПараметрыСозданияВТ); ВременныеТаблицыЗаблокированныхДопИсточников.Вставить(МетаданныеИсточника, ИмяВТЗаблокированногоДопИсточника); КонецЕсли; - Если ЗначениеЗаполнено(ИмяТЧ) Тогда - - ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ = ТекстыЗапросаСоединениеСДопИсточникамиПоТЧ.Получить(ИмяТЧ); - - Если ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ = Неопределено Тогда - ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ = ""; - КонецЕсли; - - ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ = ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ + " - | ЛЕВОЕ СОЕДИНЕНИЕ #ИмяВТ КАК #СинонимВТ - | ПО ТЧДокумента" + ИмяТЧ + "." + ИмяРеквизита + " = #СинонимВТ.Ссылка"; - - ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ = СтрЗаменить(ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ, - "#ИмяВТ", - ИмяВТЗаблокированногоДопИсточника); - СинонимВТЗаблокированногоДопИсточника = ИмяВТЗаблокированногоДопИсточника + ИмяТЧ + ИмяРеквизита; - ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ = СтрЗаменить(ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ, - "#СинонимВТ", - СинонимВТЗаблокированногоДопИсточника); - ТекстыЗапросаСоединениеСДопИсточникамиПоТЧ.Вставить(ИмяТЧ, ТекстЗапросаСоединениеСДопИсточникамиПоТЧИмяТЧ); - - УсловиеПоДопИсточникамТЧ = УсловиеПоДопИсточникамТЧ + " - | ИЛИ НЕ " + СинонимВТЗаблокированногоДопИсточника + ".Ссылка ЕСТЬ NULL "; + Если ПолноеИмяРегистра <> Неопределено Тогда + ТекстЗапросаСоединениеСДопИсточникамиРегистрами = ТекстЗапросаСоединениеСДопИсточникамиРегистрами + " + | ЛЕВОЕ СОЕДИНЕНИЕ #ИмяВТ КАК #ИмяВТ + | ПО ТаблицаРегистраИзменения.Регистратор = #ИмяВТ.Регистратор"; Иначе - Если ПолноеИмяРегистра <> Неопределено Тогда - ТекстЗапросаСоединениеСДопИсточникамиПоШапке = ТекстЗапросаСоединениеСДопИсточникамиПоШапке + " - | ЛЕВОЕ СОЕДИНЕНИЕ #ИмяВТ КАК #СинонимВТ - | ПО ТаблицаДокумента." + ИмяРеквизита + " = #СинонимВТ.Ссылка"; - Иначе - ТекстЗапросаСоединениеСДопИсточникамиПоШапке = ТекстЗапросаСоединениеСДопИсточникамиПоШапке + " - | ЛЕВОЕ СОЕДИНЕНИЕ #ИмяВТ КАК #СинонимВТ - | ПО ТаблицаОбъекта." + ИмяРеквизита + " = #СинонимВТ.Ссылка"; - КонецЕсли; - ТекстЗапросаСоединениеСДопИсточникамиПоШапке = СтрЗаменить(ТекстЗапросаСоединениеСДопИсточникамиПоШапке, - "#ИмяВТ", - ИмяВТЗаблокированногоДопИсточника); - СинонимВТЗаблокированногоДопИсточника = ИмяВТЗаблокированногоДопИсточника + "Шапка"; - ТекстЗапросаСоединениеСДопИсточникамиПоШапке = СтрЗаменить(ТекстЗапросаСоединениеСДопИсточникамиПоШапке, - "#СинонимВТ", - СинонимВТЗаблокированногоДопИсточника); - - УсловиеПоДопИсточникам = УсловиеПоДопИсточникам + " - | И " + СинонимВТЗаблокированногоДопИсточника + ".Ссылка ЕСТЬ NULL "; + ТекстЗапросаСоединениеСДопИсточникамиРегистрами = ТекстЗапросаСоединениеСДопИсточникамиРегистрами + " + | ЛЕВОЕ СОЕДИНЕНИЕ #ИмяВТ КАК #ИмяВТ + | ПО ТаблицаОбъекта.Ссылка = #ИмяВТ.Регистратор"; КонецЕсли; - КонецЦикла; - - КонецЦикла; - - Если Не ПустаяСтрока(ТекстЗапросаСоединениеСДопИсточникамиПоТЧ) Тогда - Для Каждого ТекстСоединения Из ТекстыЗапросаСоединениеСДопИсточникамиПоТЧ Цикл + ТекстЗапросаСоединениеСДопИсточникамиРегистрами = СтрЗаменить(ТекстЗапросаСоединениеСДопИсточникамиРегистрами, + "#ИмяВТ", ИмяВТЗаблокированногоДопИсточника); + + УсловиеПоДопИсточникамРегистрам = УсловиеПоДопИсточникамРегистрам + " + | И " + ИмяВТЗаблокированногоДопИсточника + ".Регистратор ЕСТЬ NULL "; - ТекстЗапросаСоединениеСДопИсточникамиПоТЧ = СтрЗаменить(ТекстЗапросаСоединениеСДопИсточникамиПоТЧ, - "#ТекстЗапросаСоединениеСДопИсточникамиПоТЧ" + ТекстСоединения.Ключ, - ТекстСоединения.Значение); + КонецЦикла; + + ШаблонТекстаЗапросаУничтоженияВременнойТаблицы = " + |УНИЧТОЖИТЬ + | #ИмяВТ + |"; + + ТекстыЗапроса = Новый Массив; + ТекстыЗапроса.Добавить(ТекстЗапроса); + + Для Каждого КлючЗначение Из ВременныеТаблицыЗаблокированныхДопИсточников Цикл + + ТекстЗапросаУничтоженияВременнойТаблицы = СтрЗаменить(ШаблонТекстаЗапросаУничтоженияВременнойТаблицы, "#ИмяВТ", КлючЗначение.Значение); + + ТекстыЗапроса.Добавить(ТекстЗапросаУничтоженияВременнойТаблицы); КонецЦикла; - Если ПолноеИмяРегистра <> Неопределено Тогда - ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ = - "ВЫБРАТЬ РАЗЛИЧНЫЕ - | ТаблицаРегистраИзменения.Регистратор КАК Ссылка - |ПОМЕСТИТЬ ЗаблокированныеПоТЧ - |ИЗ - | #ТаблицаИзменения КАК ТаблицаРегистраИзменения - | #ТекстЗапросаСоединениеСДопИсточникамиПоТЧ - |ГДЕ - | &УсловиеПоДопИсточникамТЧ"; - Иначе - ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ = - "ВЫБРАТЬ РАЗЛИЧНЫЕ - | ТаблицаИзменения.Ссылка КАК Ссылка - |ПОМЕСТИТЬ ЗаблокированныеПоТЧ - |ИЗ - | #ТаблицаИзменения КАК ТаблицаИзменения - | #ТекстЗапросаСоединениеСДопИсточникамиПоТЧ - |ГДЕ - | &УсловиеПоДопИсточникамТЧ"; - КонецЕсли; - - ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ = СтрЗаменить(ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ, - "#ТекстЗапросаСоединениеСДопИсточникамиПоТЧ", - ТекстЗапросаСоединениеСДопИсточникамиПоТЧ); - - ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ = СтрЗаменить(ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ, - "&УсловиеПоДопИсточникамТЧ", - УсловиеПоДопИсточникамТЧ); - Если ПолноеИмяРегистра <> Неопределено Тогда - ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ = СтрЗаменить(ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ, - "#ТаблицаИзменения", - ПолноеИмяРегистра + ".Изменения"); - Иначе - ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ = СтрЗаменить(ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ, - "#ТаблицаИзменения", - ПолноеИмяОбъекта + ".Изменения"); - КонецЕсли; - - ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ = СтрЗаменить(ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ, - "#ПолноеИмяДокумента", - ПолноеИмяОбъекта); - Запрос = Новый Запрос; - Запрос.Текст = ТекстЗапросаВременнойТаблицыЗаблокированныхПоТЧ; - Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц; - Запрос.Выполнить(); - - Если ПолноеИмяРегистра <> Неопределено Тогда - ТекстЗапросаСоединениеСДопИсточникамиПоТЧ = " - | ЛЕВОЕ СОЕДИНЕНИЕ ЗаблокированныеПоТЧ КАК ЗаблокированныеПоТЧ - | ПО ТаблицаРегистраИзменения.Регистратор = ЗаблокированныеПоТЧ.Ссылка - |"; - Иначе - ТекстЗапросаСоединениеСДопИсточникамиПоТЧ = " - | ЛЕВОЕ СОЕДИНЕНИЕ ЗаблокированныеПоТЧ КАК ЗаблокированныеПоТЧ - | ПО ТаблицаИзменения.Ссылка = ЗаблокированныеПоТЧ.Ссылка - |"; - КонецЕсли; - - УсловиеПоДопИсточникам = УсловиеПоДопИсточникам + " - | И ЗаблокированныеПоТЧ.Ссылка ЕСТЬ NULL "; - - ВременныеТаблицыЗаблокированныхДопИсточников.Вставить("ЗаблокированныеПоТЧ", "ЗаблокированныеПоТЧ"); + ТекстЗапроса = СтрСоединить(ТекстыЗапроса, ";"); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТекстЗапросаСоединениеСДопИсточникамиРегистрами", ТекстЗапросаСоединениеСДопИсточникамиРегистрами); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеПоДопИсточникамРегистрам", УсловиеПоДопИсточникамРегистрам); + Иначе + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеПоДопИсточникамРегистрам", "ИСТИНА"); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТекстЗапросаСоединениеСДопИсточникамиРегистрами", ""); КонецЕсли; - - Если ЗначениеЗаполнено(ТекстЗапросаСоединениеСДопИсточникамиПоШапке) Тогда - Если ЭтоСозданиеВременнойТаблицы - И ПолноеИмяРегистра <> Неопределено Тогда - ТекстЗапросаСоединениеСДопИсточникамиПоШапке = СтрЗаменить(" - | ВНУТРЕННЕЕ СОЕДИНЕНИЕ #ПолноеИмяДокумента КАК ТаблицаДокумента - | #ТекстЗапросаСоединениеСДопИсточникамиПоШапке - | ПО ТаблицаРегистраИзменения.Регистратор = ТаблицаДокумента.Ссылка", - "#ТекстЗапросаСоединениеСДопИсточникамиПоШапке", - ТекстЗапросаСоединениеСДопИсточникамиПоШапке); - КонецЕсли; - КонецЕсли; - - ШаблонТекстаЗапросаУничтоженияВременнойТаблицы = " - |УНИЧТОЖИТЬ - | #ИмяВТ - |"; - - ТекстыЗапроса = Новый Массив; - ТекстыЗапроса.Добавить(ТекстЗапроса); - - Для Каждого КлючЗначение Из ВременныеТаблицыЗаблокированныхДопИсточников Цикл - - ТекстЗапросаУничтоженияВременнойТаблицы = СтрЗаменить(ШаблонТекстаЗапросаУничтоженияВременнойТаблицы, "#ИмяВТ", КлючЗначение.Значение); - - ТекстыЗапроса.Добавить(ТекстЗапросаУничтоженияВременнойТаблицы); - - КонецЦикла; - - ТекстЗапроса = СтрСоединить(ТекстыЗапроса, ";"); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТекстЗапросаСоединениеСДопИсточникамиПоШапке", ТекстЗапросаСоединениеСДопИсточникамиПоШапке); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТекстЗапросаСоединениеСДопИсточникамиПоТЧ", ТекстЗапросаСоединениеСДопИсточникамиПоТЧ); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеПоДопИсточникам", УсловиеПоДопИсточникам); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ПолноеИмяДокумента", ПолноеИмяОбъекта); - КонецЕсли; КонецПроцедуры @@ -2807,13 +3100,13 @@ Если ДополнительныеПараметры.ДополнительныеИсточникиДанных.Количество() = 0 Тогда ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТекстЗапросаСоединениеСДопИсточниками", ""); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеПоДопИсточникам", "ИСТИНА"); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеПоДопИсточникамСсылкам", "ИСТИНА"); Иначе МетаданныеРегистра = Метаданные.НайтиПоПолномуИмени(ПолноеИмяРегистра); ТекстЗапросаСоединениеСДопИсточниками = ""; - УсловиеПоДопИсточникам = "ИСТИНА"; + УсловиеПоДопИсточникамСсылкам = "ИСТИНА"; ШаблонТекстаЗапросаУничтоженияВременнойТаблицы = " |УНИЧТОЖИТЬ @@ -2850,7 +3143,7 @@ | ЛЕВОЕ СОЕДИНЕНИЕ " + ИмяВременнойТаблицы + " КАК " + ИмяВременнойТаблицы + " | ПО ТаблицаИзменений." + ИсточникДанных + " = " + ИмяВременнойТаблицы + ".Ссылка"; - УсловиеПоДопИсточникам = УсловиеПоДопИсточникам + " + УсловиеПоДопИсточникамСсылкам = УсловиеПоДопИсточникамСсылкам + " | И " + ИмяВременнойТаблицы + ".Ссылка ЕСТЬ NULL "; ТекстЗапросаУничтоженияВременнойТаблицы = СтрЗаменить(ШаблонТекстаЗапросаУничтоженияВременнойТаблицы, "#ИмяВТ", ИмяВременнойТаблицы); @@ -2861,7 +3154,7 @@ ТекстЗапроса = СтрСоединить(ТекстыЗапроса, ";"); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "#ТекстЗапросаСоединениеСДопИсточниками", ТекстЗапросаСоединениеСДопИсточниками); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеПоДопИсточникам", УсловиеПоДопИсточникам); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&УсловиеПоДопИсточникамСсылкам", УсловиеПоДопИсточникамСсылкам); КонецЕсли; КонецПроцедуры diff --git a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыБСП/Module.bsl b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыБСП/Module.bsl index ac14cb7a5..50ee46a08 100644 --- a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыБСП/Module.bsl +++ b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыБСП/Module.bsl @@ -24,11 +24,18 @@ // порядок вызова обработчиков обновления определяется порядком добавления модулей // в процедуре ПриДобавленииПодсистем общего модуля // ПодсистемыКонфигурацииПереопределяемый. +// * РежимВыполненияОтложенныхОбработчиков - Строка - "Последовательно" - отложенные обработчики обновления выполняются +// последовательно в интервале от номера версии информационной базы до номера +// версии конфигурации включительно или "Параллельно" - отложенный обработчик после +// обработки первой порции данных передает управление следующему обработчику, а после +// выполнения последнего обработчика цикл повторяется заново. // Процедура ПриДобавленииПодсистемы(Описание) Экспорт Описание.Имя = "СтандартныеПодсистемы"; - Описание.Версия = "2.3.2.205"; + Описание.Версия = "2.3.5.52"; + Описание.РежимВыполненияОтложенныхОбработчиков = "Параллельно"; + Описание.ПараллельноеОтложенноеОбновлениеСВерсии = "2.3.3.0"; КонецПроцедуры @@ -63,6 +70,10 @@ Для каждого Обработчик Из ОбработчикиСобытия Цикл Если Обработчик.Подсистема <> "СтандартныеПодсистемы" Тогда + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'В подсистеме %1 вместо подписки на служебное событие ПриДобавленииОбработчиковОбновления + |следует использовать одноименную процедуре в общем модуле ОбновлениеИнформационнойБазы<ИмяПодсистемы>.'"), + Обработчик.Подсистема); Продолжить; КонецЕсли; Обработчик.Модуль.ПриДобавленииОбработчиковОбновления(Обработчики); diff --git a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыВызовСервера/Module.bsl b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыВызовСервера/Module.bsl index f53e10990..c4ff95aa4 100644 --- a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыВызовСервера/Module.bsl @@ -8,11 +8,16 @@ #Область СлужебныйПрограммныйИнтерфейс // Для интеграции с подсистемой "Обновление конфигурации". -// См. макет МакетФайлаОбновленияКонфигурации обработки ПоискИУстановкаОбновлений. +// См. макет МакетФайлаОбновленияКонфигурации обработки УстановкаОбновлений. // Функция ВыполнитьОбновлениеИнформационнойБазы(ВыполнятьОтложенныеОбработчики = Ложь) Экспорт - Возврат ОбновлениеИнформационнойБазы.ВыполнитьОбновлениеИнформационнойБазы(ВыполнятьОтложенныеОбработчики); + ДатаНачала = ТекущаяДатаСеанса(); + Результат = ОбновлениеИнформационнойБазы.ВыполнитьОбновлениеИнформационнойБазы(ВыполнятьОтложенныеОбработчики); + ДатаОкончания = ТекущаяДатаСеанса(); + ОбновлениеИнформационнойБазыСлужебный.ЗаписатьВремяВыполненияОбновления(ДатаНачала, ДатаОкончания); + + Возврат Результат; КонецФункции diff --git a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыКлиент/Module.bsl b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыКлиент/Module.bsl index c0b6acf3a..a9d5120fe 100644 --- a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыКлиент/Module.bsl +++ b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыКлиент/Module.bsl @@ -60,16 +60,36 @@ КонецЕсли; Если ПараметрыКлиента.Свойство("ИнформационнаяБазаЗаблокированаДляОбновления") Тогда + Кнопки = Новый СписокЗначений(); + Кнопки.Добавить("Перезапустить", НСтр("ru = 'Перезапустить'")); + Кнопки.Добавить("Завершить", НСтр("ru = 'Завершить работу'")); + + ПараметрыВопроса = Новый Структура; + ПараметрыВопроса.Вставить("КнопкаПоУмолчанию", "Перезапустить"); + ПараметрыВопроса.Вставить("КнопкаТаймаута", "Перезапустить"); + ПараметрыВопроса.Вставить("Таймаут", 60); + + ОписаниеПредупреждения = Новый Структура; + ОписаниеПредупреждения.Вставить("Кнопки", Кнопки); + ОписаниеПредупреждения.Вставить("ПараметрыВопроса", ПараметрыВопроса); + ОписаниеПредупреждения.Вставить("ТекстПредупреждения", + ПараметрыКлиента.ИнформационнаяБазаЗаблокированаДляОбновления); + Параметры.Отказ = Истина; Параметры.ИнтерактивнаяОбработка = Новый ОписаниеОповещения( "ПоказатьПредупреждениеИПродолжить", СтандартныеПодсистемыКлиент.ЭтотОбъект, - ПараметрыКлиента.ИнформационнаяБазаЗаблокированаДляОбновления); - + ОписаниеПредупреждения); КонецЕсли; КонецПроцедуры +// Открывает форму отложенных обработчиков. +// +Процедура ПоказатьОтложенныеОбработчики() Экспорт + ОткрытьФорму("Обработка.РезультатыОбновленияПрограммы.Форма.ОтложенныеОбработчики"); +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -93,10 +113,8 @@ Форма = Параметры.ФормаИндикацияХодаОбновленияИБ; Иначе ИмяФормы = "Обработка.РезультатыОбновленияПрограммы.Форма.ИндикацияХодаОбновленияИБ"; - Форма = ОткрытьФорму(ИмяФормы,,,,,, Новый ОписаниеОповещения( "ПослеЗакрытияФормыИндикацияХодаОбновленияИБ", ЭтотОбъект, Параметры)); - Параметры.Вставить("ФормаИндикацияХодаОбновленияИБ", Форма); КонецЕсли; @@ -108,12 +126,9 @@ Процедура ЗагрузитьОбновитьПараметрыРаботыПрограммы(Параметры, Неопределен) Экспорт ИмяФормы = "Обработка.РезультатыОбновленияПрограммы.Форма.ИндикацияХодаОбновленияИБ"; - Форма = ОткрытьФорму(ИмяФормы,,,,,, Новый ОписаниеОповещения( "ПослеЗакрытияФормыИндикацияХодаОбновленияИБ", ЭтотОбъект, Параметры)); - Параметры.Вставить("ФормаИндикацияХодаОбновленияИБ", Форма); - Форма.ЗагрузитьОбновитьПараметрыРаботыПрограммы(Параметры); КонецПроцедуры diff --git a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыКлиентПереопределяемый/Module.bsl b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыКлиентПереопределяемый/Module.bsl index f98d211bf..e9e53049b 100644 --- a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыКлиентПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыКлиентПереопределяемый/Module.bsl @@ -25,7 +25,7 @@ // // Параметры: // ВерсияДанных - Строка - версия данных основной конфигурации, с которой выполняется обновление -// (из регистра сведений ВерсииПодсистем) +// (из регистра сведений ВерсииПодсистем). // Процедура ПриОпределенииВозможностиОбновления(Знач ВерсияДанных) Экспорт diff --git a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыПереопределяемый/Module.bsl b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыПереопределяемый/Module.bsl index 24d3cfdb0..624f6cf79 100644 --- a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыПереопределяемый/Module.bsl @@ -70,27 +70,38 @@ КонецПроцедуры -// Переопределяет текст подсказки, указывающий путь к форме "Результаты обновления программы". +// Позволяет переопределить очередь отложенных обработчиков обновления, выполняемых в +// параллельном режиме. // // Параметры: -// ТекстПодсказки - Строка - текст подсказки. +// ОбработчикИОчередь - Соответствие, где: +// * Ключ - Строка - полное имя обработчика обновления. +// * Значение - Число - номер очереди, который необходимо установить обработчику. // -Процедура ПриПолученииПоясненияДляРезультатовОбновленияПрограммы(ТекстПодсказки) Экспорт +Процедура ПриФормированииОчередейОтложенныхОбработчиков(ОбработчикИОчередь) Экспорт + КонецПроцедуры -// Переопределяет сообщение о наличии невыполненных отложенных обработчиков обновления -// на прошлую версию при попытке обновления. -// +// Позволяет переопределить различные сообщения, выводимые пользователю. +// // Параметры: -// Параметры - Структура - структура со свойствами: -// * ТекстСообщения - Строка - текст сообщения, выводимый пользователю. По умолчанию -// текст сообщения построен с учетом того, что обновление можно -// продолжить, т.е. параметр ЗапрещатьПродолжение = Ложь. -// * КартинкаСообщения - БиблиотекаКартинок: Картинка - картинка, выводимая слева от сообщения. -// * ЗапрещатьПродолжение - Булево - если Истина, продолжить обновление будет невозможно. По умолчанию Ложь. +// Параметры - Структура со свойствами: +// * ПоясненияДляРезультатовОбновления - Строка - текст подсказки, указывающий путь +// к форме "Результаты обновления программы". +// * ПараметрыСообщенияОНевыполненныхОтложенныхОбработчиках - Структура - сообщение о +// наличии невыполненных отложенных обработчиков обновления +// на прошлую версию при попытке обновления. +// * ТекстСообщения - Строка - текст сообщения, выводимый пользователю. По умолчанию +// текст сообщения построен с учетом того, что обновление можно +// продолжить, т.е. параметр ЗапрещатьПродолжение = Ложь. +// * КартинкаСообщения - БиблиотекаКартинок: Картинка - картинка, выводимая слева от сообщения. +// * ЗапрещатьПродолжение - Булево - если Истина, продолжить обновление будет невозможно. По умолчанию Ложь. +// * РасположениеОписанияИзмененийПрограммы - Строка - описывает расположение команды, по которой можно +// открыть форму с описанием изменений в новой версии программы. // -Процедура ПриОпределенииПараметровСообщенияОНевыполненныхОтложенныхОбработчиках(Параметры) Экспорт +Процедура ПриОпределенииНастроек(Параметры) Экспорт + КонецПроцедуры diff --git a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыСлужебный/Module.bsl b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыСлужебный/Module.bsl index 90d70fb0b..bff44b451 100644 --- a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыСлужебный/Module.bsl +++ b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыСлужебный/Module.bsl @@ -219,14 +219,6 @@ // Функция ВыполнитьОбновлениеИнформационнойБазы(ПараметрыОбновления) Экспорт -#Если ВнешнееСоединение Тогда - // См. Справочники.ИдентификаторыОбъектовМетаданных.ПроверитьВозможностьЗапускаФоновогоЗадания. - Если ОбщегоНазначения.ИнформационнаяБазаФайловая() И РасширенияКонфигурации.Получить().Количество() > 0 Тогда - ВызватьИсключение НСтр("ru = 'Перед обновлением необходимо удалить все подключенные расширения конфигурации. - |После завершения обновления их нужно подключить заново.'"); - КонецЕсли; -#КонецЕсли - Если НЕ ПараметрыОбновления.ПриЗапускеКлиентскогоПриложения Тогда Попытка СтандартныеПодсистемыСервер.ЗагрузитьОбновитьПараметрыРаботыПрограммы(); @@ -272,7 +264,7 @@ КонецЕсли; Если ПараметрыОбновления.ВФоне Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю("ШагПрогресса=15/5"); + ДлительныеОперации.СообщитьПрогресс(1); КонецЕсли; ОписанияПодсистем = СтандартныеПодсистемыПовтИсп.ОписанияПодсистем(); @@ -344,41 +336,31 @@ РазблокироватьИБ(БлокировкаИБ); КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") - И ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда - МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); - МодульОбменДаннымиСервер.ВключитьПовторениеЗагрузкиСообщенияОбменаДаннымиПередЗапуском(); - КонецЕсли; - ВызватьИсключение; КонецПопытки; Если ПараметрыОбновления.ВФоне Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю("ШагПрогресса=20/80"); + ДлительныеОперации.СообщитьПрогресс(10); КонецЕсли; - Попытка - Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() - Или ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда - СформироватьСписокОтложенныхОбработчиковОбновления(ИтерацииОбновления); - КонецЕсли; - Исключение - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") - И ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда - МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); - МодульОбменДаннымиСервер.ВключитьПовторениеЗагрузкиСообщенияОбменаДаннымиПередЗапуском(); - КонецЕсли; - - ВызватьИсключение; - КонецПопытки; + Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() + Или ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда + СформироватьСписокОтложенныхОбработчиковОбновления(ИтерацииОбновления); + КонецЕсли; + Параметры = Новый Структура; + Параметры.Вставить("ХодВыполненияОбработчиков", КоличествоОбработчиковНаТекущуюВерсию(ИтерацииОбновления, РежимВыполненияОтложенногоОбновления)); + Параметры.Вставить("ОперативноеОбновление", ОперативноеОбновление); + Параметры.Вставить("ВФоне", ПараметрыОбновления.ВФоне); + Параметры.Вставить("ПриЗапускеКлиентскогоПриложения", ПараметрыОбновления.ПриЗапускеКлиентскогоПриложения); + Параметры.Вставить("РежимВыполненияОтложенногоОбновления", РежимВыполненияОтложенногоОбновления); + + Сообщение = НСтр("ru = 'Для обновления программы на новую версию будут выполнены обработчики: %1'"); + Сообщение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Сообщение, Параметры.ХодВыполненияОбработчиков.ВсегоОбработчиков); + ЗаписатьИнформацию(Сообщение); + Попытка - Параметры = Новый Структура; - Параметры.Вставить("ХодВыполненияОбработчиков", КоличествоОбработчиковНаТекущуюВерсию(ИтерацииОбновления, РежимВыполненияОтложенногоОбновления)); - Параметры.Вставить("ОперативноеОбновление", ОперативноеОбновление); - Параметры.Вставить("ВФоне", ПараметрыОбновления.ВФоне); - // Выполняем все обработчики обновления для подсистем конфигурации. Для Каждого ИтерацияОбновления Из ИтерацииОбновления Цикл ИтерацияОбновления.ВыполненныеОбработчики = ВыполнитьИтерациюОбновления(ИтерацияОбновления, Параметры); @@ -406,12 +388,6 @@ РазблокироватьИБ(БлокировкаИБ); КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") - И ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда - МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); - МодульОбменДаннымиСервер.ВключитьПовторениеЗагрузкиСообщенияОбменаДаннымиПередЗапуском(); - КонецЕсли; - ВызватьИсключение; КонецПопытки; @@ -729,6 +705,11 @@ ВыполняемыеОбработчики.Колонки.Версия.Имя = "ВерсияРегистрации"; ВыполняемыеОбработчики.Колонки.ГруппаВерсии.Имя = "Версия"; + // Сортировка обработчиков по признаку "ОбщиеДанные". + Для Каждого Версия Из ВыполняемыеОбработчики.Строки Цикл + Версия.Строки.Сортировать("ОбщиеДанные Убыв", Истина); + КонецЦикла; + Возврат ВыполняемыеОбработчики; КонецФункции @@ -1055,14 +1036,14 @@ МодульОбменДаннымиВызовСервера.ПовторитьЗагрузкуСообщенияОбменаДаннымиПередЗапуском(); КонецЕсли; - // В этих случаях запуск не блокируется + // В этих случаях запуск не блокируется. Если Не ОбновлениеИнформационнойБазы.НеобходимоОбновлениеИнформационнойБазы() И Не ТребуетсяПроверитьЛегальностьПолученияОбновления() И Не ТребуетсяПовторитьЗагрузкуСообщенияОбменаДаннымиПередЗапуском Тогда Возврат ""; КонецЕсли; - // Во всех остальных случаях запуск блокируется + // Во всех остальных случаях запуск блокируется. Если ЕстьПравоАдминистрирование Тогда Возврат СообщениеАдминистраторуСистемы; КонецЕсли; @@ -1147,6 +1128,34 @@ КонецПроцедуры +// Записывает в константу продолжительность основного цикла обновления. +// +Процедура ЗаписатьВремяВыполненияОбновления(ВремяНачалаОбновления, ВремяОкончанияОбновления) Экспорт + + Если ОбщегоНазначенияПовтИсп.РазделениеВключено() И Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда + Возврат; + КонецЕсли; + + СведенияОбОбновлении = СведенияОбОбновленииИнформационнойБазы(); + СведенияОбОбновлении.ВремяНачалаОбновления = ВремяНачалаОбновления; + СведенияОбОбновлении.ВремяОкончанияОбновления = ВремяОкончанияОбновления; + + ВремяВСекундах = ВремяОкончанияОбновления - ВремяНачалаОбновления; + + Часы = Цел(ВремяВСекундах/3600); + Минуты = Цел((ВремяВСекундах - Часы * 3600) / 60); + Секунды = ВремяВСекундах - Часы * 3600 - Минуты * 60; + + ПродолжительностьЧасы = ?(Часы = 0, "", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 час'"), Часы)); + ПродолжительностьМинуты = ?(Минуты = 0, "", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 мин'"), Минуты)); + ПродолжительностьСекунды = ?(Секунды = 0, "", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 сек'"), Секунды)); + ПродолжительностьОбновления = ПродолжительностьЧасы + " " + ПродолжительностьМинуты + " " + ПродолжительностьСекунды; + СведенияОбОбновлении.ПродолжительностьОбновления = СокрЛП(ПродолжительностьОбновления); + + ЗаписатьСведенияОбОбновленииИнформационнойБазы(СведенияОбОбновлении); + +КонецПроцедуры + // Перезапускает отложенные обработчики, выполняющиеся только в главном узле // при получении первого сообщения обмена. // @@ -1171,7 +1180,6 @@ ИтерацииОбновления = ИтерацииОбновления(); СформироватьСписокОтложенныхОбработчиковОбновления(ИтерацииОбновления, Истина); - ПеререгистрироватьДанныеДляОтложенногоОбновления(); Если ИнформационнаяБазаФайловая Тогда ВыполнитьОтложенноеОбновлениеСейчас(); @@ -1282,6 +1290,25 @@ #Область СлужебныеПроцедурыИФункции +Функция НастройкиПодсистемы() Экспорт + + ПараметрыСообщенияОНевыполненныхОтложенныхОбработчиках = Новый Структура; + ПараметрыСообщенияОНевыполненныхОтложенныхОбработчиках.Вставить("ТекстСообщения", ""); + ПараметрыСообщенияОНевыполненныхОтложенныхОбработчиках.Вставить("КартинкаСообщения", Неопределено); + ПараметрыСообщенияОНевыполненныхОтложенныхОбработчиках.Вставить("ЗапрещатьПродолжение", Ложь); + + + Настройки = Новый Структура; + Настройки.Вставить("ПоясненияДляРезультатовОбновления", ""); + Настройки.Вставить("РасположениеОписанияИзмененийПрограммы", ""); + Настройки.Вставить("ПараметрыСообщенияОНевыполненныхОтложенныхОбработчиках", ПараметрыСообщенияОНевыполненныхОтложенныхОбработчиках); + + ОбновлениеИнформационнойБазыПереопределяемый.ПриОпределенииНастроек(Настройки); + + Возврат Настройки; + +КонецФункции + // Возвращает числовой вес версии для сравнения версий между собой. // // Параметры: @@ -1350,16 +1377,10 @@ ПроверитьСвойстваОбработчиков(ИтерацияОбновления); КонецЦикла; - Если ИтерацияОбновлениеОсновнойПодсистемы = Неопределено Тогда - Если ИмяОсновнойКонфигурации = "БиблиотекаСтандартныхПодсистем" Тогда - ТекстСообщения = НСтр("ru = 'Файл поставки 1С:Библиотека стандартных подсистем не предназначен для создания - |информационных баз по шаблону. Перед использованием необходимо - |ознакомиться с документацией на ИТС (http://its.1c.ru/db/bspdoc)'"); - Иначе - ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Сведения об основной конфигурации ""%1"" не заданы. - |См. процедуру ПриДобавленииПодсистем общего модуля ПодсистемыКонфигурацииПереопределяемый.'"), - ИмяОсновнойКонфигурации); - КонецЕсли; + Если ИтерацияОбновлениеОсновнойПодсистемы = Неопределено И ИмяОсновнойКонфигурации = "БиблиотекаСтандартныхПодсистем" Тогда + ТекстСообщения = НСтр("ru = 'Файл поставки 1С:Библиотека стандартных подсистем не предназначен для создания + |информационных баз по шаблону. Перед использованием необходимо + |ознакомиться с документацией на ИТС (http://its.1c.ru/db/bspdoc)'"); ВызватьИсключение ТекстСообщения; КонецЕсли; @@ -1531,8 +1552,6 @@ // Функция ОбновитьИнформационнуюБазуВФоне(УникальныйИдентификаторФормы, БлокировкаИБ) Экспорт - ИнформацияОбОшибке = Неопределено; - // Запуск фонового задания ПараметрыОбновленияИБ = Новый Структура; ПараметрыОбновленияИБ.Вставить("ИсключениеПриНевозможностиБлокировкиИБ", Ложь); @@ -1544,41 +1563,33 @@ ЗаблокироватьИБ(ПараметрыОбновленияИБ.БлокировкаИБ, Ложь); Исключение ИнформацияОбОшибке = ИнформацияОбОшибке(); + Результат = Новый Структура; - Результат.Вставить("ЗаданиеВыполнено", Ложь); + Результат.Вставить("Статус", "Ошибка"); Результат.Вставить("БлокировкаИБ", ПараметрыОбновленияИБ.БлокировкаИБ); - Результат.Вставить("КраткоеСообщениеОбОшибке", КраткоеПредставлениеОшибки(ИнформацияОбОшибке)); - Результат.Вставить("ПодробноеСообщениеОбОшибке", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); + Результат.Вставить("КраткоеПредставлениеОшибки", КраткоеПредставлениеОшибки(ИнформацияОбОшибке)); + Результат.Вставить("ПодробноеПредставлениеОшибки", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); + Возврат Результат; КонецПопытки; ПараметрыОбновленияИБ.Вставить("ВФоне", Не ПараметрыОбновленияИБ.БлокировкаИБ.РежимОтладки); - Попытка - - Если Не ПараметрыОбновленияИБ.ВФоне Тогда - ПараметрыОбновленияИБ.Удалить("ПараметрыКлиентаНаСервере"); - КонецЕсли; - Результат = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификаторФормы, - "ОбновлениеИнформационнойБазыСлужебный.ВыполнитьОбновлениеИнформационнойБазыВФоне", - ПараметрыОбновленияИБ, - НСтр("ru = 'Фоновое обновление информационной базы'")); - - Результат.Вставить("БлокировкаИБ", ПараметрыОбновленияИБ.БлокировкаИБ); - Результат.Вставить("КраткоеСообщениеОбОшибке", Неопределено); - Результат.Вставить("ПодробноеСообщениеОбОшибке", Неопределено); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - Результат = Новый Структура; - Результат.Вставить("ЗаданиеВыполнено", Ложь); - Результат.Вставить("БлокировкаИБ", ПараметрыОбновленияИБ.БлокировкаИБ); - Результат.Вставить("КраткоеСообщениеОбОшибке", КраткоеПредставлениеОшибки(ИнформацияОбОшибке)); - Результат.Вставить("ПодробноеСообщениеОбОшибке", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); - КонецПопытки; + Если Не ПараметрыОбновленияИБ.ВФоне Тогда + ПараметрыОбновленияИБ.Удалить("ПараметрыКлиентаНаСервере"); + КонецЕсли; + + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификаторФормы); + ПараметрыВыполнения.ОжидатьЗавершение = 0; + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Фоновое обновление информационной базы'"); + + Результат = ДлительныеОперации.ВыполнитьВФоне("ОбновлениеИнформационнойБазыСлужебный.ВыполнитьОбновлениеИнформационнойБазыВФоне", + ПараметрыОбновленияИБ, ПараметрыВыполнения); + + Результат.Вставить("БлокировкаИБ", ПараметрыОбновленияИБ.БлокировкаИБ); // Если обновление ИБ уже выполнилось - разблокируем ИБ. - Если Результат.ЗаданиеВыполнено = Истина Или ИнформацияОбОшибке <> Неопределено Тогда + Если Результат.Статус <> "Выполняется" Тогда РазблокироватьИБ(ПараметрыОбновленияИБ.БлокировкаИБ); КонецЕсли; @@ -1605,6 +1616,13 @@ Результат = ВыполнитьОбновлениеИнформационнойБазы(ПараметрыОбновления); Исключение ИнформацияОбОшибке = ИнформацияОбОшибке(); + // Переход в режим открытия формы повторной синхронизации данных перед запуском + // с двумя вариантами "Синхронизировать и продолжить" и "Продолжить". + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") + И ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда + МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); + МодульОбменДаннымиСервер.ВключитьПовторениеЗагрузкиСообщенияОбменаДаннымиПередЗапуском(); + КонецЕсли; КонецПопытки; Если ИнформацияОбОшибке <> Неопределено Тогда @@ -1937,7 +1955,7 @@ // Функция СобытиеЖурналаРегистрацииПротокол() Экспорт - Возврат СобытиеЖурналаРегистрации() + ". " + НСтр("ru = 'Протокол выполнения'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); + Возврат СобытиеЖурналаРегистрации() + "." + НСтр("ru = 'Протокол выполнения'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); КонецФункции @@ -2055,6 +2073,9 @@ СведенияОбОбновлении.Вставить("ЗапущенныеПроцедурыОбновления", Новый Массив); СведенияОбОбновлении.Вставить("УправлениеОтложеннымОбновлением", Новый Структура); СведенияОбОбновлении.Вставить("ОбрабатываемыеДанные", Новый Соответствие); + СведенияОбОбновлении.Вставить("ТекущаяИтерацияОбновления", 1); + СведенияОбОбновлении.Вставить("ПланОтложенногоОбновления"); + СведенияОбОбновлении.Вставить("ОписаниеПроцедурЗаполнения"); ИмяБиблиотеки = ""; НомерВерсии = ""; @@ -2067,9 +2088,9 @@ ПредыдущаяВерсия = ?(ПервыйОбменВРИБ, "1.0.0.0", ИтерацияОбновления.ПредыдущаяВерсия); ИмяБиблиотеки = ИтерацияОбновления.Подсистема; РежимВыполненияОтложенныхОбработчиков = ОписанияБиблиотек[ИмяБиблиотеки].РежимВыполненияОтложенныхОбработчиков; + ПараллельноСВерсии = ОписанияБиблиотек[ИмяБиблиотеки].ПараллельноеОтложенноеОбновлениеСВерсии; - Если РежимВыполненияОтложенныхОбработчиков <> "Параллельно" - И ПервыйОбменВРИБ Тогда + Если ПервыйОбменВРИБ И РежимВыполненияОтложенныхОбработчиков = "Последовательно" Тогда Продолжить; КонецЕсли; @@ -2097,6 +2118,14 @@ Для Каждого СтрокаВерсия Из ОбработчикиПоВерсиям.Строки Цикл + Если ПервыйОбменВРИБ + И РежимВыполненияОтложенныхОбработчиков = "Параллельно" + И (СтрокаВерсия.Версия = "*" + Или ЗначениеЗаполнено(ПараллельноСВерсии) + И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(СтрокаВерсия.Версия, ПараллельноСВерсии) < 0) Тогда + Продолжить; + КонецЕсли; + НайденнаяСтрока = СтрокаДереваБиблиотека.Строки.Найти(СтрокаВерсия.Версия, "НомерВерсии"); ЕстьНевыполненныеОбработчики = Ложь; Если НайденнаяСтрока <> Неопределено Тогда @@ -2114,9 +2143,21 @@ СтрокаДереваВерсии.Статус = ""; КонецЕсли; + РежимПараллельноСВерсии = РежимВыполненияОтложенныхОбработчиков = "Параллельно" И ЗначениеЗаполнено(ПараллельноСВерсии); + Для Каждого Обработчик Из СтрокаВерсия.Строки Цикл - ПроверитьСвойстваОтложенногоОбработчика(Обработчик, РежимВыполненияОтложенныхОбработчиков, ТекстОшибок); + Если РежимПараллельноСВерсии Тогда + Если СтрокаВерсия.Версия = "*" Тогда + РежимОтложенногоОбработчика = "Последовательно"; + Иначе + Результат = ОбщегоНазначенияКлиентСервер.СравнитьВерсии(СтрокаВерсия.Версия, ПараллельноСВерсии); + РежимОтложенногоОбработчика = ?(Результат > 0, "Параллельно", "Последовательно"); + КонецЕсли; + Иначе + РежимОтложенногоОбработчика = РежимВыполненияОтложенныхОбработчиков; + КонецЕсли; + ПроверитьСвойстваОтложенногоОбработчика(Обработчик, РежимОтложенногоОбработчика, ТекстОшибок); Если ЕстьНевыполненныеОбработчики Тогда НайденнаяСтрока = СтрокаДереваВерсии.Строки.Найти(Обработчик.Процедура, "ИмяОбработчика"); @@ -2137,7 +2178,6 @@ КонецЦикла; КонецЦикла; - СтрокаДереваБиблиотека.Строки.Сортировать("НомерВерсии Возр"); КонецЦикла; @@ -2160,6 +2200,15 @@ КонецЕсли; КонецЦикла; + ОчередьОбработчиков = Новый Соответствие; + ОбновлениеИнформационнойБазыПереопределяемый.ПриФормированииОчередейОтложенныхОбработчиков(ОчередьОбработчиков); + Для Каждого ОбработчикИОчередь Из ОчередьОбработчиков Цикл + НайденныйОбработчик = ДеревоОбработчиков.Строки.Найти(ОбработчикИОчередь.Ключ, "ИмяОбработчика", Истина); + Если НайденныйОбработчик <> Неопределено Тогда + НайденныйОбработчик.ОчередьОтложеннойОбработки = ОбработчикИОчередь.Значение; + КонецЕсли; + КонецЦикла; + СведенияОбОбновлении.ВерсияДереваОбработчиков = Метаданные.Версия; ВыполнитьПроверкуДереваОтложенныхОбработчиков(ДеревоОбработчиков); @@ -2293,6 +2342,10 @@ // Вызов ПриНачалеВыполненияРегламентногоЗадания не используется, // т.к. необходимые действия выполняются в частном порядке. + Если ОбновлениеИнформационнойБазыСлужебныйПовтИсп.НеобходимоОбновлениеИнформационнойБазы() Тогда + Возврат; + КонецЕсли; + СведенияОбОбновлении = СведенияОбОбновленииИнформационнойБазы(); Если СведенияОбОбновлении.ВремяОкончаниеОтложенногоОбновления <> Неопределено Тогда @@ -3018,6 +3071,11 @@ ОписаниеОбработчика = ПодготовитьДетальнуюИнформациюОХодеОбновления(Обработчик, Параметры, ДополнительныеПараметры.ИдентификаторБиблиотеки); + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности") Тогда + МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности"); + НачалоЗамера = МодульОценкаПроизводительности.НачатьЗамерВремени(); + КонецЕсли; + Если Параметры <> Неопределено Тогда ПараметрыОбработчика = Новый Массив; ПараметрыОбработчика.Добавить(Параметры); @@ -3055,8 +3113,8 @@ КонецЕсли; Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности") Тогда - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремениТехнологический("ВремяВыполненияОбработчикаОбновления." + ОписаниеОбработчика.Процедура, ОписаниеОбработчика.ЗначениеНаНачало/1000); + МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности"); + МодульОценкаПроизводительности.ЗакончитьЗамерВремениТехнологический("ВремяВыполненияОбработчикаОбновления." + ОписаниеОбработчика.Процедура, НачалоЗамера); КонецЕсли; КонецПроцедуры @@ -3160,7 +3218,7 @@ Процедура ПроверитьВложеннуюТранзакцию(ТранзакцияАктивнаНаНачалоВыполнения, НазваниеОбработчика) - ИмяСобытия = СобытиеЖурналаРегистрации() + ". " + НСтр("ru = 'Выполнение обработчиков'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); + ИмяСобытия = СобытиеЖурналаРегистрации() + "." + НСтр("ru = 'Выполнение обработчиков'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); Если ТранзакцияАктивнаНаНачалоВыполнения Тогда Если ТранзакцияАктивна() Тогда @@ -3296,10 +3354,6 @@ КонецЦикла; - Сообщение = НСтр("ru = 'Для обновления программы на новую версию будут выполнены обработчики: %1'"); - Сообщение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Сообщение, КоличествоОбработчиков); - ЗаписатьИнформацию(Сообщение); - СведенияОбОбновлении = СведенияОбОбновленииИнформационнойБазы(); // Отложенные обработчики обновления. Если РежимВыполненияОтложенногоОбновления = "Монопольно" Тогда @@ -3317,6 +3371,13 @@ Продолжить; КонецЕсли; Для Каждого СтрокаВерсия Из СтрокаБиблиотека.Строки Цикл + ПараллельноСВерсии = ОписанияБиблиотек[СтрокаБиблиотека.ИмяБиблиотеки].ПараллельноеОтложенноеОбновлениеСВерсии; + Если СтрокаВерсия.НомерВерсии = "*" + Или (ЗначениеЗаполнено(ПараллельноСВерсии) + И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(СтрокаВерсия.НомерВерсии, ПараллельноСВерсии) < 0) Тогда + Продолжить; + КонецЕсли; + КоличествоОбработчиков = КоличествоОбработчиков + СтрокаВерсия.Строки.Количество(); КонецЦикла; КонецЦикла; @@ -3393,8 +3454,8 @@ КонецЕсли; Если ВФоне Тогда - Прогресс = ХодВыполненияОбработчиков.ВыполненоОбработчиков / ХодВыполненияОбработчиков.ВсегоОбработчиков * 100; - ОбщегоНазначенияКлиентСервер.СообщитьПользователю("ПрибавкаНаШагеПрогресса=" + Прогресс); + Прогресс = 10 + ХодВыполненияОбработчиков.ВыполненоОбработчиков / ХодВыполненияОбработчиков.ВсегоОбработчиков * 90; + ДлительныеОперации.СообщитьПрогресс(Прогресс); КонецЕсли; КонецПроцедуры @@ -3444,6 +3505,7 @@ Процедура ОбновитьРазделыОписанияИзменений() Разделы = Новый СписокЗначений; + ВесВерсииМетаданных = ВесВерсии(Метаданные.Версия); МакетОписаниеОбновлений = Метаданные.ОбщиеМакеты.Найти("ОписаниеИзмененийСистемы"); Если МакетОписаниеОбновлений <> Неопределено Тогда @@ -3474,7 +3536,15 @@ + Число(РазрядыВерсииСтроками[1]) + "." + Число(РазрядыВерсииСтроками[2]) + "." + Число(РазрядыВерсииСтроками[3]); - + + Если ВесВерсии > ВесВерсииМетаданных Тогда + ТекстИсключения = НСтр("ru = 'В общем макете ОписаниеИзмененийСистемы для одного из разделов изменений + |установлена версия выше, чем в метаданных. (%1, должна быть %2)'"); + ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстИсключения, + Версия, Метаданные.Версия); + ВызватьИсключение ТекстИсключения; + КонецЕсли; + Разделы.Добавить(ВесВерсии, Версия); КонецЦикла; @@ -3623,15 +3693,31 @@ СохранитьНевыполненныеОбработчики = НеобходимоСохранитьНевыполненныйОтложенныйОбработчик(Библиотека, ПроверяемыйОбработчик); Если СохранитьНевыполненныеОбработчики Тогда НеобходимоСохранитьНевыполненныеОбработчики = Истина; + Иначе + СтрокаВерсия = ПроверяемыйОбработчик.Родитель.Строки; + СтрокаВерсия.Удалить(ПроверяемыйОбработчик); КонецЕсли; КонецЦикла; КонецПроцедуры Функция НеобходимоСохранитьНевыполненныйОтложенныйОбработчик(Библиотека, Обработчик) - Если Обработчик.НомерВерсии <> "*" - И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(Библиотека.ПредыдущаяВерсия, Обработчик.НомерВерсии) >= 0 Тогда - - НайденныйОбработчик = Библиотека.Обработчики.Найти(Обработчик.ИмяОбработчика, "Процедура"); + Если Обработчик.НомерВерсии = "*" Тогда + // Обработчик добавляется заново при каждом обновлении, сохранять не требуется. + Возврат Ложь; + КонецЕсли; + + НайденныйОбработчик = Библиотека.Обработчики.Найти(Обработчик.ИмяОбработчика, "Процедура"); + Если НайденныйОбработчик <> Неопределено + И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(НайденныйОбработчик.Версия, Обработчик.НомерВерсии) > 0 + И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(НайденныйОбработчик.Версия, Библиотека.ПредыдущаяВерсия) > 0 Тогда + // Версия проверяемого обработчика изменилась и она выше текущей версии библиотеки. + // Обработчик будет добавлен заново, сохранять не требуется. + Возврат Ложь; + КонецЕсли; + + Если ОбщегоНазначенияКлиентСервер.СравнитьВерсии(Обработчик.НомерВерсии, Библиотека.ПредыдущаяВерсия) <= 0 Тогда + // Версия проверяемого обработчика ниже текущей версии библиотеки и он не будет добавлен заново + // к выполнению. Необходимо его сохранить. Если НайденныйОбработчик = Неопределено Тогда Возврат Истина; КонецЕсли; @@ -3682,18 +3768,49 @@ Возврат; КонецЕсли; + ВсеОбработчики = Новый Соответствие; + УдаляемыеОбработчики = Новый Массив; Для Каждого СтрокаДереваБиблиотека Из ДеревоОбработчиков.Строки Цикл + Индекс = 1; + ПеремещаемаяСтрока = Неопределено; + Смещение = 0; Для Каждого СтрокаДереваВерсия Из СтрокаДереваБиблиотека.Строки Цикл + Если СтрокаДереваВерсия.НомерВерсии = "*" + И Индекс <> 1 Тогда + ПеремещаемаяСтрока = СтрокаДереваВерсия; + Смещение = Индекс - 1; + КонецЕсли; + Если СтрокаДереваВерсия.Строки.Количество() = 0 Тогда СтрокаДереваВерсия.Статус = "Завершено"; Иначе СтрокаДереваВерсия.Статус = ""; КонецЕсли; + // Проверка на многократное добавление одного обработчика обновления. + Для Каждого СтрокаДереваОбработчик Из СтрокаДереваВерсия.Строки Цикл + Если ВсеОбработчики[СтрокаДереваОбработчик.ИмяОбработчика] = Неопределено Тогда + ВсеОбработчики.Вставить(СтрокаДереваОбработчик.ИмяОбработчика, СтрокаДереваОбработчик.ИмяОбработчика); + Иначе + УдаляемыеОбработчики.Добавить(СтрокаДереваОбработчик); + КонецЕсли; + КонецЦикла; + + Для Каждого Удаляемый Из УдаляемыеОбработчики Цикл + СтрокаДереваВерсия.Строки.Удалить(Удаляемый); + КонецЦикла; + УдаляемыеОбработчики.Очистить(); + + Индекс = Индекс + 1; КонецЦикла; + Если ПеремещаемаяСтрока <> Неопределено Тогда + СтрокаДереваБиблиотека.Строки.Сдвинуть(ПеремещаемаяСтрока, Смещение * (-1)); + ПеремещаемаяСтрока = Неопределено; + КонецЕсли; + КонецЦикла; КонецПроцедуры @@ -3732,7 +3849,10 @@ СведенияОбОбновлении.ОтложенноеОбновлениеЗавершеноУспешно = Истина; ЗаписатьСведенияОбОбновленииИнформационнойБазы(СведенияОбОбновлении); Константы.ОтложенноеОбновлениеЗавершеноУспешно.Установить(Истина); - Константы.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно.Установить(Истина); + Если Не ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда + Константы.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно.Установить(Истина); + КонецЕсли; + Возврат Истина; Иначе Возврат Ложь; @@ -3751,54 +3871,108 @@ ПланОбновления = СведенияОбОбновлении.ПланОтложенногоОбновления; - ТекущийЦиклОбновления = Неопределено; - ЗавершеноУспешно = Истина; - Для Каждого ОписаниеЦиклаОбновления Из ПланОбновления Цикл - Если ОписаниеЦиклаОбновления.Свойство("ЗавершеноСОшибками") - Или ОписаниеЦиклаОбновления.Свойство("ЕстьОстановленные") Тогда - ЗавершеноУспешно = Ложь; - ИначеЕсли ОписаниеЦиклаОбновления.Обработчики.Количество() <> 0 Тогда - ТекущийЦиклОбновления = ОписаниеЦиклаОбновления; - КоллекцияОбработчиков = ТекущийЦиклОбновления.Обработчики; - КоличествоОбработчиков = КоллекцияОбработчиков.Количество(); - Прервать; - КонецЕсли; - КонецЦикла; - - Если ТекущийЦиклОбновления = Неопределено Тогда - СведенияОбОбновлении.ВремяОкончаниеОтложенногоОбновления = ТекущаяДатаСеанса(); - СведенияОбОбновлении.ОтложенноеОбновлениеЗавершеноУспешно = ЗавершеноУспешно; - ЗаписатьСведенияОбОбновленииИнформационнойБазы(СведенияОбОбновлении); - Константы.ОтложенноеОбновлениеЗавершеноУспешно.Установить(ЗавершеноУспешно); - Константы.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно.Установить(ЗавершеноУспешно); - Возврат Ложь; - КонецЕсли; - - Индекс = 0; + ТекущаяИтерацияОбновления = СведенияОбОбновлении.ТекущаяИтерацияОбновления; + ТекущийЦиклОбновления = Неопределено; + ЗавершеноУспешно = Истина; Пока Истина Цикл - ИмяОбработчика = КоллекцияОбработчиков[Индекс]; - ОбработчикОбновления = СведенияОбОбновлении.ДеревоОбработчиков.Строки.Найти(ИмяОбработчика, "ИмяОбработчика", Истина); - Если ОбработчикОбновления.ЧислоПопыток >= 3 - Или ОбработчикОбновления.Статус = "Приостановлен" Тогда - Если КоличествоОбработчиков > 1 И Индекс + 1 < КоличествоОбработчиков Тогда - Индекс = Индекс + 1; + ЕстьНевыполненные = Ложь; + ПредыдущийЦиклОбновления = Неопределено; + Для Каждого ОписаниеЦиклаОбновления Из ПланОбновления Цикл + Если ОписаниеЦиклаОбновления.Свойство("ЗавершеноСОшибками") + Или ОписаниеЦиклаОбновления.Свойство("ЕстьОстановленные") Тогда + ЗавершеноУспешно = Ложь; Иначе - // В текущем цикле обновления все доступные обработчики выполнены. - Причина = ?(ОбработчикОбновления.Статус = "Приостановлен", "ЕстьОстановленные", "ЗавершеноСОшибками"); - ТекущийЦиклОбновления.Вставить(Причина); - ЗаписатьСведенияОбОбновленииИнформационнойБазы(СведенияОбОбновлении); - Возврат Истина; + + Если (ПредыдущийЦиклОбновления <> Неопределено + И ПредыдущийЦиклОбновления.Обработчики.Количество() <> 0 + И ОписаниеЦиклаОбновления.ЗависитОтПредыдущего) + Или ОписаниеЦиклаОбновления.Обработчики.Количество() = 0 Тогда + ПредыдущийЦиклОбновления = ОписаниеЦиклаОбновления; + Продолжить; + КонецЕсли; + + ЕстьОшибки = Ложь; + ЕстьОстановленные = Ложь; + Индекс = -1; + Для Каждого ОписаниеОбработчика Из ОписаниеЦиклаОбновления.Обработчики Цикл + + Индекс = Индекс + 1; + Если ОписаниеОбработчика.Итерация = ТекущаяИтерацияОбновления Тогда + ЕстьНевыполненные = Истина; + Продолжить; + КонецЕсли; + + ДеревоОбработчиков = СведенияОбОбновлении.ДеревоОбработчиков.Строки; + Если ЗначениеЗаполнено(ОписаниеОбработчика.Идентификатор) Тогда + ОбработчикОбновления = ДеревоОбработчиков.Найти(ОписаниеОбработчика.Идентификатор, "Идентификатор", Истина); + Если ОбработчикОбновления = Неопределено Тогда + ОбработчикОбновления = ДеревоОбработчиков.Найти(ОписаниеОбработчика.ИмяОбработчика, "ИмяОбработчика", Истина); + КонецЕсли; + Иначе + ОбработчикОбновления = ДеревоОбработчиков.Найти(ОписаниеОбработчика.ИмяОбработчика, "ИмяОбработчика", Истина); + КонецЕсли; + + Если ОбработчикОбновления.Статус = "Приостановлен" Тогда + ЕстьОстановленные = Истина; + Продолжить; + КонецЕсли; + + Если ОбработчикОбновления.ЧислоПопыток >= 3 Тогда + ЕстьОшибки = Истина; + Продолжить; + КонецЕсли; + + ТекущийЦиклОбновления = ОписаниеЦиклаОбновления; + Прервать; + + КонецЦикла; + + Если ТекущийЦиклОбновления = Неопределено Тогда + Если ЕстьОшибки Тогда + ОписаниеЦиклаОбновления.Вставить("ЗавершеноСОшибками"); + ЗавершеноУспешно = Ложь; + ИначеЕсли ЕстьОстановленные Тогда + ОписаниеЦиклаОбновления.Вставить("ЕстьОстановленные"); + КонецЕсли; + Иначе + Прервать; + КонецЕсли; КонецЕсли; + + ПредыдущийЦиклОбновления = ОписаниеЦиклаОбновления; + КонецЦикла; + + Если ТекущийЦиклОбновления <> Неопределено Тогда + КоллекцияОбработчиков = ТекущийЦиклОбновления.Обработчики; + Прервать; + ИначеЕсли ЕстьНевыполненные Тогда + ТекущаяИтерацияОбновления = ТекущаяИтерацияОбновления + 1; + СведенияОбОбновлении.ТекущаяИтерацияОбновления = ТекущаяИтерацияОбновления; Иначе Прервать; КонецЕсли; КонецЦикла; - ПараллельныйРежим = СтрНайти(ТекущийЦиклОбновления.Режим, "Параллельно") > 0; + Если ТекущийЦиклОбновления = Неопределено Тогда + СведенияОбОбновлении.ПланОтложенногоОбновления = ПланОбновления; + СведенияОбОбновлении.ВремяОкончаниеОтложенногоОбновления = ТекущаяДатаСеанса(); + СведенияОбОбновлении.ОтложенноеОбновлениеЗавершеноУспешно = ЗавершеноУспешно; + ЗаписатьСведенияОбОбновленииИнформационнойБазы(СведенияОбОбновлении); + Константы.ОтложенноеОбновлениеЗавершеноУспешно.Установить(ЗавершеноУспешно); + Если Не ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда + Константы.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно.Установить(ЗавершеноУспешно); + КонецЕсли; + + Возврат Ложь; + КонецЕсли; + + ПараллельныйРежим = (ТекущийЦиклОбновления.Режим = "Параллельно"); ПараметрыОбновления = ?(ПараметрыОбновления = Неопределено, Новый Структура, ПараметрыОбновления); ПараметрыОбновления.Вставить("ПараллельныйРежим", ПараллельныйРежим); Если ПараллельныйРежим Тогда ПараметрыОбновления.Вставить("ОчередьОбработчиков", ТекущийЦиклОбновления.ОчередьОбработчиков); + ПараметрыОбновления.Вставить("ПланОбновления", ПланОбновления); + ПараметрыОбновления.Вставить("ОбрабатываемыеДанные", СведенияОбОбновлении.ОбрабатываемыеДанные); КонецЕсли; УстановитьПараметрыОтложенногоОбработчикаОбновления(ОбработчикОбновления, Истина, ПараллельныйРежим); @@ -3820,29 +3994,28 @@ Строка = ТекущийЦиклОбновления.ОчередьОбработчиков.Найти(ОбработчикОбновления.ИмяОбработчика, "Обработчик"); ТекущийЦиклОбновления.ОчередьОбработчиков.Удалить(Строка); КонецЕсли; - ИначеЕсли (ОбработчикОбновления.Статус = "Выполняется" - И СтрНайти(ТекущийЦиклОбновления.Режим, "Параллельно") > 0) - Или ОбработчикОбновления.Статус = "Ошибка" Тогда + ИначеЕсли ОбработчикОбновления.Статус = "Выполняется" Тогда - // Если обработчик выполняется параллельно и у него стоит высокий приоритет, - // то он вызывается пять раз до перемещения в конец очереди. + // Если у обработчика стоит высокий приоритет, + // то он вызывается пять раз, после чего вызывается следующий обработчик. ЗапускиСПриоритетом = Неопределено; - Если ОбработчикОбновления.Статус = "Выполняется" - И ОбработчикОбновления.Приоритет = "ЖелательноБыстрее" Тогда + Если ОбработчикОбновления.Приоритет = "ЖелательноБыстрее" Тогда ЗапускиСПриоритетом = ОбработчикОбновления.СтатистикаВыполнения["ЗапускиСПриоритетом"]; ЗапускиСПриоритетом = ?(ЗапускиСПриоритетом = Неопределено, 1, ?(ЗапускиСПриоритетом = 4, 0, ЗапускиСПриоритетом + 1)); ОбработчикОбновления.СтатистикаВыполнения.Вставить("ЗапускиСПриоритетом", ЗапускиСПриоритетом); КонецЕсли; - // При параллельном выполнении или ошибке обработчик перемещается в конец коллекции. - Если КоличествоОбработчиков > 1 - И Не (КоличествоОбработчиков = Индекс + 1) - И (ЗапускиСПриоритетом = Неопределено Или ЗапускиСПриоритетом = 0) Тогда - КоллекцияОбработчиков.Удалить(Индекс); - КоллекцияОбработчиков.Добавить(ИмяОбработчика); + Если ЗапускиСПриоритетом = Неопределено Или ЗапускиСПриоритетом = 0 Тогда + ОписаниеОбработчика.Итерация = ТекущаяИтерацияОбновления; КонецЕсли; + + Иначе + + ОписаниеОбработчика.Итерация = ТекущаяИтерацияОбновления; КонецЕсли; + СведенияОбОбновлении.ПланОтложенногоОбновления = ПланОбновления; + // В параллельном режиме обновление нужно останавливать, если обработчик не удалось выполнить, // т.к. от данных, которые он обрабатывает, могут зависеть другие обработчики. Если ПараллельныйРежим @@ -3852,12 +4025,13 @@ СведенияОбОбновлении.ОтложенноеОбновлениеЗавершеноУспешно = Ложь; ЗаписатьСведенияОбОбновленииИнформационнойБазы(СведенияОбОбновлении); Константы.ОтложенноеОбновлениеЗавершеноУспешно.Установить(Ложь); - Константы.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно.Установить(Ложь); + Если Не ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда + Константы.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно.Установить(Ложь); + КонецЕсли; + Возврат Ложь; КонецЕсли; - СведенияОбОбновлении.ПланОтложенногоОбновления = ПланОбновления; - Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда ЗаписатьСведенияОбОбновленииИнформационнойБазы(СведенияОбОбновлении); Иначе @@ -3913,8 +4087,10 @@ СведенияОбОбновлении.Вставить("ЛегальнаяВерсия", ""); СведенияОбОбновлении.Вставить("НовыеПодсистемы", Новый Массив); СведенияОбОбновлении.Вставить("УправлениеОтложеннымОбновлением", Новый Структура); - СведенияОбОбновлении.Вставить("ПланОтложенногоОбновления"); СведенияОбОбновлении.Вставить("ОбрабатываемыеДанные", Новый Соответствие); + СведенияОбОбновлении.Вставить("ТекущаяИтерацияОбновления", 1); + СведенияОбОбновлении.Вставить("ПланОтложенногоОбновления"); + СведенияОбОбновлении.Вставить("ОписаниеПроцедурЗаполнения"); Если ТипЗнч(СтарыеСведения) = Тип("Структура") Тогда ЗаполнитьЗначенияСвойств(СведенияОбОбновлении, СтарыеСведения); @@ -4049,8 +4225,31 @@ Если ОбработчикОбновления.СтатистикаВыполнения["НачалоОбработкиДанных"] = Неопределено Тогда ОбработчикОбновления.СтатистикаВыполнения.Вставить("НачалоОбработкиДанных", ТекущаяДатаСеанса()); КонецЕсли; + НачалоОбработкиДанных = ТекущаяУниверсальнаяДатаВМиллисекундах(); - РаботаВБезопасномРежиме.ВыполнитьМетодКонфигурации(ИмяОбработчика, ПараметрыОбработчика); + ПропуститьПроверкуОбработанныхДанных = Ложь; + Если ПараметрыОбновления.ПараллельныйРежим + И ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() + И ОбработчикОбновления.ЗапускатьТолькоВГлавномУзле Тогда + // В подчиненном узле РИБ только проверяем, что обрабатываемые обработчиком данные + // пришли из главного узла и обновляем статус обработчика. + ПропуститьПроверкуОбработанныхДанных = Истина; + ОбрабатываемыеДанные = ПараметрыОбновления.ОбрабатываемыеДанные[ОбработчикОбновления.ИмяОбработчика]; + Если ОбрабатываемыеДанные.Количество() = 0 Тогда + Параметры.ОбработкаЗавершена = Истина; + Иначе + Для Каждого ОбрабатываемыйОбъект Из ОбрабатываемыеДанные Цикл + Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена( + ОбработчикОбновления.ОчередьОтложеннойОбработки, + ОбрабатываемыйОбъект.Ключ); + Если Не Параметры.ОбработкаЗавершена Тогда + Прервать; + КонецЕсли; + КонецЦикла; + КонецЕсли; + Иначе + РаботаВБезопасномРежиме.ВыполнитьМетодКонфигурации(ИмяОбработчика, ПараметрыОбработчика); + КонецЕсли; ЗавершениеОбработкиДанных = ТекущаяУниверсальнаяДатаВМиллисекундах(); Если Параметры.ОбработкаЗавершена = Неопределено Тогда @@ -4069,14 +4268,30 @@ И ПараметрыОбновления.ВФоне Тогда ХодВыполненияОбработчиков = ПараметрыОбновления.ХодВыполненияОбработчиков; ХодВыполненияОбработчиков.ВыполненоОбработчиков = ХодВыполненияОбработчиков.ВыполненоОбработчиков + 1; - Прогресс = ХодВыполненияОбработчиков.ВыполненоОбработчиков / ХодВыполненияОбработчиков.ВсегоОбработчиков * 100; - ОбщегоНазначенияКлиентСервер.СообщитьПользователю("ПрибавкаНаШагеПрогресса=" + Прогресс); + Прогресс = 10 + ХодВыполненияОбработчиков.ВыполненоОбработчиков / ХодВыполненияОбработчиков.ВсегоОбработчиков * 90; + ДлительныеОперации.СообщитьПрогресс(Прогресс); КонецЕсли; - ИначеЕсли ПараметрыОбновления.ПараллельныйРежим Тогда + ИначеЕсли ПараметрыОбновления.ПараллельныйРежим И Не ПропуститьПроверкуОбработанныхДанных Тогда ЕстьОбработанныеОбъекты = ПараметрыСеанса.ПараметрыОбработчикаОбновления.ЕстьОбработанныеОбъекты; - ОбработчикИОчередь = ПараметрыОбновления.ОчередьОбработчиков.Найти(ОбработчикОбновления.ИмяОбработчика, "Обработчик"); - ОчередьОбработчика = ОбработчикИОчередь.Очередь; - МинимальнаяОчередь = ПараметрыОбновления.ОчередьОбработчиков[0].Очередь; + ОчередьОбработчика = ОбработчикОбновления.ОчередьОтложеннойОбработки; + + МинимальнаяОчередь = 0; + Если Не ЕстьОбработанныеОбъекты Тогда + Для Каждого ЦиклОбновления Из ПараметрыОбновления.ПланОбновления Цикл + Если ЦиклОбновления.Режим = "Последовательно" + Или ЦиклОбновления.ОчередьОбработчиков.Количество() = 0 Тогда + Продолжить; + КонецЕсли; + + Если МинимальнаяОчередь = 0 Тогда + МинимальнаяОчередь = ЦиклОбновления.ОчередьОбработчиков[0].Очередь; + Иначе + МинимальнаяОчередьЦикла = ЦиклОбновления.ОчередьОбработчиков[0].Очередь; + МинимальнаяОчередь = Мин(МинимальнаяОчередь, МинимальнаяОчередьЦикла); + КонецЕсли; + КонецЦикла; + КонецЕсли; + Если Не ЕстьОбработанныеОбъекты И ОчередьОбработчика = МинимальнаяОчередь Тогда ЧислоПопыток = ОбработчикОбновления.ЧислоПопыток; @@ -4128,14 +4343,12 @@ ПроверитьВложеннуюТранзакцию(ТранзакцияАктивнаНаНачалоВыполнения, ИмяОбработчика); Исключение // В случае нахождения вложенной транзакции обработчик обновления повторно не вызывается. + ИнформацияОбОшибке = ИнформацияОбОшибке(); ПодробноеПредставлениеОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); - Если ОбработчикОбновления.Статус <> "Ошибка" Тогда - ОбработчикОбновления.ИнформацияОбОшибке = ПодробноеПредставлениеОшибки; - Иначе - ОбработчикОбновления.ИнформацияОбОшибке = ОбработчикОбновления.ИнформацияОбОшибке - + Символы.ПС + ПодробноеПредставлениеОшибки; - КонецЕсли; + ОбработчикОбновления.Статус = "Ошибка"; + ОбработчикОбновления.ИнформацияОбОшибке = ОбработчикОбновления.ИнформацияОбОшибке + + Символы.ПС + ПодробноеПредставлениеОшибки; ОбработчикОбновления.ЧислоПопыток = 3; КонецПопытки; @@ -4155,93 +4368,101 @@ ОписанияПодсистем = СтандартныеПодсистемыПовтИсп.ОписанияПодсистем(); // Инициализация параметров. - ПланОбновления = Новый Массив; - ИндексПоследовательные = 1; - ИндексПараллельные = 1; - ТекущийРежимВыполнения = Неопределено; - СовместимыеПодсистемы = Новый Массив; + ПланОбновления = Новый Массив; ЕстьОбработчикиТолькоГлавногоУзла = Ложь; Для Каждого Подсистема Из ОписанияПодсистем.Порядок Цикл ИмяКоллекции = ""; ОписаниеПодсистемы = ОписанияПодсистем.ПоИменам[Подсистема]; - РежимВыполнения = ОписаниеПодсистемы.РежимВыполненияОтложенныхОбработчиков; - - Если РежимВыполнения = "Последовательно" Тогда - СовместимыеПодсистемы.Очистить(); - ИмяКоллекции = РежимВыполнения + "_" + ИндексПоследовательные; - ИндексПоследовательные = ИндексПоследовательные + 1; - ИначеЕсли ТекущийРежимВыполнения <> РежимВыполнения Тогда - СовместимыеПодсистемы.Добавить(Подсистема); - ИмяКоллекции = РежимВыполнения + "_" + ИндексПараллельные; - ИндексПараллельные = ИндексПараллельные + 1; - Иначе - ОбновлятьПараллельноСПодсистемами = ОписаниеПодсистемы.ОбновлятьПараллельноСПодсистемами; - Для Каждого СовместимаяПодсистема Из СовместимыеПодсистемы Цикл - Если ОбновлятьПараллельноСПодсистемами.Найти(СовместимаяПодсистема) = Неопределено Тогда - СовместимыеПодсистемы.Очистить(); - ИмяКоллекции = РежимВыполнения + "_" + ИндексПараллельные; - ИндексПараллельные = ИндексПараллельные + 1; - Прервать; - КонецЕсли; - КонецЦикла; - - СовместимыеПодсистемы.Добавить(Подсистема); - КонецЕсли; - - Если ИмяКоллекции <> "" Тогда - Структура = Новый Структура; - Структура.Вставить("Режим", ИмяКоллекции); - Если РежимВыполнения = "Параллельно" Тогда - Обработчики = Новый ТаблицаЗначений; - Обработчики.Колонки.Добавить("Обработчик", Новый ОписаниеТипов("Строка")); - Обработчики.Колонки.Добавить("Очередь", Новый ОписаниеТипов("Число")); - Иначе - Обработчики = Новый Массив; - КонецЕсли; - - Структура.Вставить("Обработчики", Обработчики); - - ПланОбновления.Добавить(Структура); - КонецЕсли; + РежимВыполнения = ОписаниеПодсистемы.РежимВыполненияОтложенныхОбработчиков; + ПараллельноСВерсии = ОписаниеПодсистемы.ПараллельноеОтложенноеОбновлениеСВерсии; ДеревоОбработчиковБиблиотека = ДеревоОбработчиков.Строки.Найти(Подсистема, "ИмяБиблиотеки"); Если ДеревоОбработчиковБиблиотека = Неопределено Тогда - ТекущийРежимВыполнения = РежимВыполнения; Продолжить; КонецЕсли; + ТаблицаОбработчиков = Новый ТаблицаЗначений; + ТаблицаОбработчиков.Колонки.Добавить("Обработчик", Новый ОписаниеТипов("Строка")); + ТаблицаОбработчиков.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("УникальныйИдентификатор")); + ТаблицаОбработчиков.Колонки.Добавить("Очередь", Новый ОписаниеТипов("Число")); + + Итерация = 1; + СоздаватьНовуюИтерацию = Истина; + ПропуститьПроверку = Ложь; СведенияОБлокируемыхОбъектах = НовыеСведенияОБлокируемыхОбъектах(); Для Каждого ДеревоОбработчиковВерсия Из ДеревоОбработчиковБиблиотека.Строки Цикл ЗаполнитьБлокируемыеОбъекты(ДеревоОбработчиковВерсия, СведенияОбОбновленииИБ, СведенияОБлокируемыхОбъектах); - Для Каждого Обработчик Из ДеревоОбработчиковВерсия.Строки Цикл - Если ЭтоПодчиненныйУзелРИБ - И Обработчик.ЗапускатьТолькоВГлавномУзле = Истина Тогда - Продолжить; + + Если СоздаватьНовуюИтерацию Тогда + ИтерацияОбновления = Новый Структура; + ИтерацияОбновления.Вставить("Режим", ""); + ИтерацияОбновления.Вставить("ЗависитОтПредыдущего", Ложь); + ИтерацияОбновления.Вставить("Обработчики"); + КонецЕсли; + + Если РежимВыполнения = "Последовательно" Тогда + ИтерацияОбновления.Режим = РежимВыполнения; + ИтерацияОбновления.ЗависитОтПредыдущего = ?(Итерация = 1, Ложь, Истина); + ИтерацияОбновления.Обработчики = Новый Массив; + ИначеЕсли РежимВыполнения = "Параллельно" И Не ЗначениеЗаполнено(ПараллельноСВерсии) И Итерация = 1 Тогда + ИтерацияОбновления.Режим = РежимВыполнения; + ИтерацияОбновления.Обработчики = ТаблицаОбработчиков.Скопировать(); + СоздаватьНовуюИтерацию = Ложь; + ИначеЕсли РежимВыполнения = "Параллельно" И ЗначениеЗаполнено(ПараллельноСВерсии) И Не ПропуститьПроверку Тогда + НомерВерсии = ДеревоОбработчиковВерсия.НомерВерсии; + Если НомерВерсии = "*" Тогда + Результат = -1; + Иначе + Результат = ОбщегоНазначенияКлиентСервер.СравнитьВерсии(НомерВерсии, ПараллельноСВерсии); КонецЕсли; - Если Не ЭтоПодчиненныйУзелРИБ И Обработчик.ЗапускатьТолькоВГлавномУзле = Истина И РежимВыполнения = "Параллельно" Тогда + Если Результат < 0 Тогда + ИтерацияОбновления.Режим = "Последовательно"; + ИтерацияОбновления.ЗависитОтПредыдущего = (Итерация <> 1); + ИтерацияОбновления.Обработчики = Новый Массив; + Иначе + ИтерацияОбновления.Режим = РежимВыполнения; + ИтерацияОбновления.ЗависитОтПредыдущего = (Итерация <> 1); + ИтерацияОбновления.Обработчики = ТаблицаОбработчиков.Скопировать(); + ПропуститьПроверку = Истина; + СоздаватьНовуюИтерацию = Ложь; + КонецЕсли; + КонецЕсли; + + Для Каждого Обработчик Из ДеревоОбработчиковВерсия.Строки Цикл + + Если ИтерацияОбновления.Режим = "Параллельно" И Не ЭтоПодчиненныйУзелРИБ + И Обработчик.ЗапускатьТолькоВГлавномУзле = Истина Тогда ЕстьОбработчикиТолькоГлавногоУзла = Истина; КонецЕсли; - Если ЭтоПодчиненныйУзелРИБСФильтром И РежимВыполнения = "Параллельно" + Если ИтерацияОбновления.Режим = "Параллельно" И ЭтоПодчиненныйУзелРИБСФильтром И Не Обработчик.ЗапускатьИВПодчиненномУзлеРИБСФильтрами Тогда + ЕстьОбработчикиТолькоГлавногоУзла = Истина; Продолжить; КонецЕсли; - Если РежимВыполнения = "Параллельно" Тогда - СтрокаОбработчик = Структура.Обработчики.Добавить(); - СтрокаОбработчик.Обработчик = Обработчик.ИмяОбработчика; - СтрокаОбработчик.Очередь = Обработчик.ОчередьОтложеннойОбработки; + Если ИтерацияОбновления.Режим = "Параллельно" Тогда + СтрокаОбработчик = ИтерацияОбновления.Обработчики.Добавить(); + СтрокаОбработчик.Обработчик = Обработчик.ИмяОбработчика; + СтрокаОбработчик.Идентификатор = Обработчик.Идентификатор; + СтрокаОбработчик.Очередь = Обработчик.ОчередьОтложеннойОбработки; Иначе - Структура.Обработчики.Добавить(Обработчик.ИмяОбработчика); + ОписаниеОбработчика = Новый Структура; + ОписаниеОбработчика.Вставить("ИмяОбработчика", Обработчик.ИмяОбработчика); + ОписаниеОбработчика.Вставить("Идентификатор", Обработчик.Идентификатор); + ОписаниеОбработчика.Вставить("Итерация", 0); + + ИтерацияОбновления.Обработчики.Добавить(ОписаниеОбработчика); КонецЕсли; + КонецЦикла; // В параллельном режиме в РИБ с фильтрами в подчиненном узле выполняются только обработчики // с признаком ЗапускатьИВПодчиненномУзлеРИБСФильтрами = Истина. - Если ЭтоПодчиненныйУзелРИБСФильтром И РежимВыполнения = "Параллельно" Тогда + Если ЭтоПодчиненныйУзелРИБСФильтром И ИтерацияОбновления.Режим = "Параллельно" Тогда ПараметрыОтбора = Новый Структура; ПараметрыОтбора.Вставить("ЗапускатьИВПодчиненномУзлеРИБСФильтрами", Ложь); ОбработчикиТолькоГлавногоУзла = ДеревоОбработчиковВерсия.Строки.НайтиСтроки(ПараметрыОтбора); @@ -4250,20 +4471,43 @@ КонецЦикла; КонецЕсли; + Если СоздаватьНовуюИтерацию Тогда + ПланОбновления.Добавить(ИтерацияОбновления); + КонецЕсли; + + Итерация = Итерация + 1 ; + КонецЦикла; - ТекущийРежимВыполнения = РежимВыполнения; + Если Не СоздаватьНовуюИтерацию Тогда + ПланОбновления.Добавить(ИтерацияОбновления); + КонецЕсли; КонецЦикла; Константы.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно.Установить(Не ЕстьОбработчикиТолькоГлавногоУзла); + ОписаниеОбработчика = Новый Структура; + ОписаниеОбработчика.Вставить("ИмяОбработчика", ""); + ОписаниеОбработчика.Вставить("Итерация", 0); + + // Конвертация формата хранения обработчиков. Для Каждого ЦиклОбновления Из ПланОбновления Цикл Если ТипЗнч(ЦиклОбновления.Обработчики) = Тип("Массив") Тогда Продолжить; КонецЕсли; - ТаблицаОбработчиков = ЦиклОбновления.Обработчики; + ТаблицаОбработчиков = ЦиклОбновления.Обработчики.Скопировать(); ТаблицаОбработчиков.Сортировать("Очередь Возр"); - ЦиклОбновления.Обработчики = ТаблицаОбработчиков.ВыгрузитьКолонку("Обработчик"); + + ЦиклОбновления.Обработчики = Новый Массив; + Для Каждого Элемент Из ТаблицаОбработчиков Цикл + ОписаниеОбработчика = Новый Структура; + ОписаниеОбработчика.Вставить("ИмяОбработчика", Элемент.Обработчик); + ОписаниеОбработчика.Вставить("Идентификатор", Элемент.Идентификатор); + ОписаниеОбработчика.Вставить("Итерация", 0); + + ЦиклОбновления.Обработчики.Добавить(ОписаниеОбработчика); + КонецЦикла; + ЦиклОбновления.Вставить("ОчередьОбработчиков", ТаблицаОбработчиков); КонецЦикла; @@ -4328,10 +4572,14 @@ НайденныйОбработчик.Статус = "НеВыполнено"; Для Каждого ЦиклОбновления Из ПланОбновления Цикл - Если ЦиклОбновления.Обработчики.Найти(НайденныйОбработчик.ИмяОбработчика) <> Неопределено - И ЦиклОбновления.Свойство("ЕстьОстановленные") Тогда - ЦиклОбновления.Удалить("ЕстьОстановленные"); - КонецЕсли; + Для Каждого ОписаниеОбработчика Из ЦиклОбновления.Обработчики Цикл + Если ОписаниеОбработчика.ИмяОбработчика = НайденныйОбработчик.ИмяОбработчика Тогда + Если ЦиклОбновления.Свойство("ЕстьОстановленные") Тогда + ЦиклОбновления.Удалить("ЕстьОстановленные"); + КонецЕсли; + Прервать; + КонецЕсли; + КонецЦикла; КонецЦикла; КонецЕсли; @@ -4360,28 +4608,6 @@ Если НайденныйОбработчик <> Неопределено И НайденныйОбработчик.Статус <> "Выполнено" Тогда НайденныйОбработчик.Приоритет = "ЖелательноБыстрее"; - - Родитель = НайденныйОбработчик.Родитель; - ИндексСтроки = Родитель.Строки.Индекс(НайденныйОбработчик); - Если Родитель.Строки.Количество() > 1 - И ИндексСтроки > 0 Тогда - Для Каждого ЦиклОбновления Из ПланОбновления Цикл - Если СтрНайти(ЦиклОбновления.Режим, "Параллельно") > 0 Тогда - Прервать; - КонецЕсли; - ИндексОбработчика = ЦиклОбновления.Обработчики.Найти(НайденныйОбработчик.ИмяОбработчика); - Если ИндексОбработчика <> Неопределено Тогда - НовыйИндекс = ИндексОбработчика - ИндексСтроки; - НовыйИндекс = ?(НовыйИндекс < 0, ?(ИндексОбработчика > 0, ИндексОбработчика, 0), НовыйИндекс); - Если НовыйИндекс > 0 Тогда - ЦиклОбновления.Обработчики.Удалить(ИндексОбработчика); - ЦиклОбновления.Обработчики.Вставить(НовыйИндекс, НайденныйОбработчик.ИмяОбработчика); - КонецЕсли; - Прервать; - КонецЕсли; - КонецЦикла; - КонецЕсли; - КонецЕсли; КонецЦикла; @@ -4451,6 +4677,8 @@ Продолжить; КонецЕсли; + ПараллельноСВерсии = ОписанияБиблиотек[СтрокаБиблиотека.ИмяБиблиотеки].ПараллельноеОтложенноеОбновлениеСВерсии; + Если Не ПараметрыИнициализированы Тогда ПараметрыОбработчикаСтруктура = ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке(); ПараметрыОбработчикаСтруктура.ПовторнаяРегистрация = Истина; @@ -4458,6 +4686,16 @@ КонецЕсли; Для Каждого СтрокаВерсия Из СтрокаБиблиотека.Строки Цикл + + Если СтрокаВерсия.НомерВерсии = "*" Тогда + Продолжить; + КонецЕсли; + + Если ЗначениеЗаполнено(ПараллельноСВерсии) + И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(СтрокаВерсия.НомерВерсии, ПараллельноСВерсии) < 0 Тогда + Продолжить; + КонецЕсли; + Для Каждого Обработчик Из СтрокаВерсия.Строки Цикл ПараметрыОбработчикаСтруктура.Очередь = Обработчик.ОчередьОтложеннойОбработки; @@ -4509,6 +4747,17 @@ Возврат; КонецЕсли; + Если Параметры.ПриЗапускеКлиентскогоПриложения + И Параметры.РежимВыполненияОтложенногоОбновления = "Отложенно" Тогда + КлиентСервер = Не ОбщегоНазначения.ИнформационнаяБазаФайловая(); + Коробка = Не ОбщегоНазначенияПовтИсп.РазделениеВключено(); + + Если КлиентСервер И Коробка Тогда + // Регистрация данных выполняется позже. + Возврат; + КонецЕсли; + КонецЕсли; + Если Не (СтандартныеПодсистемыПовтИсп.ИспользуетсяРИБ("СФильтром") И ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ()) Тогда Запрос = Новый Запрос; Запрос.Текст = @@ -4525,6 +4774,11 @@ КонецЦикла; КонецЕсли; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда + МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); + МодульОбменДаннымиСервер.СброситьЗначениеКонстантыСИзменениямиДляПодчиненногоУзлаРИБСФильтрами(); + КонецЕсли; + ОбрабатываемыеДанные = Новый Соответствие; ОписанияБиблиотек = СтандартныеПодсистемыПовтИсп.ОписанияПодсистем().ПоИменам; ПараметрыИнициализированы = Ложь; @@ -4535,6 +4789,8 @@ Продолжить; КонецЕсли; + ПараллельноСВерсии = ОписанияБиблиотек[СтрокаБиблиотека.ИмяБиблиотеки].ПараллельноеОтложенноеОбновлениеСВерсии; + Если Не ПараметрыИнициализированы Тогда ПараметрыОбработчикаСтруктура = ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке(); @@ -4548,6 +4804,15 @@ КонецЕсли; Для Каждого СтрокаВерсия Из СтрокаБиблиотека.Строки Цикл + Если СтрокаВерсия.НомерВерсии = "*" Тогда + Продолжить; + КонецЕсли; + + Если ЗначениеЗаполнено(ПараллельноСВерсии) + И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(СтрокаВерсия.НомерВерсии, ПараллельноСВерсии) < 0 Тогда + Продолжить; + КонецЕсли; + Для Каждого Обработчик Из СтрокаВерсия.Строки Цикл ПараметрыОбработчикаСтруктура.Очередь = Обработчик.ОчередьОтложеннойОбработки; @@ -4571,8 +4836,8 @@ Если Параметры.ВФоне Тогда ХодВыполненияОбработчиков = Параметры.ХодВыполненияОбработчиков; ХодВыполненияОбработчиков.ВыполненоОбработчиков = ХодВыполненияОбработчиков.ВыполненоОбработчиков + 1; - Прогресс = ХодВыполненияОбработчиков.ВыполненоОбработчиков / ХодВыполненияОбработчиков.ВсегоОбработчиков * 100; - ОбщегоНазначенияКлиентСервер.СообщитьПользователю("ПрибавкаНаШагеПрогресса=" + Прогресс); + Прогресс = 10 + ХодВыполненияОбработчиков.ВыполненоОбработчиков / ХодВыполненияОбработчиков.ВсегоОбработчиков * 90; + ДлительныеОперации.СообщитьПрогресс(Прогресс); КонецЕсли; Исключение ОтметитьРегистрациюОтложенныхОбработчиковОбновления(СтрокаБиблиотека.ИмяБиблиотеки, Ложь); @@ -4604,19 +4869,126 @@ МодульОбменДаннымиСервер.ЗавершитьЗаписьФайлаСДаннымиОбновления(ПараметрыОбработчикаСтруктура); КонецЕсли; - Если ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда - ПараметрыОтбора = Новый Структура; - ПараметрыОтбора.Вставить("ЗапускатьТолькоВГлавномУзле", Истина); - ОбработчикиТолькоГлавногоУзла = СведенияОбОбновлении.ДеревоОбработчиков.Строки.НайтиСтроки(ПараметрыОтбора, Истина); - Для Каждого ОбработчикГлавногоУзла Из ОбработчикиТолькоГлавногоУзла Цикл - Родитель = ОбработчикГлавногоУзла.Родитель; - Родитель.Строки.Удалить(ОбработчикГлавногоУзла); - КонецЦикла; +КонецПроцедуры + +Процедура ЗапускРегистрацииДанныхОтложенногоОбновления(Параметры, АдресРезультата) Экспорт + + ПараметрыОбработчика = Неопределено; + Пока ЗаполнениеДанныхОтложенногоОбработчикаВФоне(ПараметрыОбработчика, АдресРезультата) Цикл + // Пока есть, что обрабатывать. + КонецЦикла; + + Если ПараметрыОбработчика <> Неопределено + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда + МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); + МодульОбменДаннымиСервер.ЗавершитьЗаписьФайлаСДаннымиОбновления(ПараметрыОбработчика); КонецЕсли; КонецПроцедуры -Процедура ОтметитьРегистрациюОтложенныхОбработчиковОбновления(ИмяПодсистемы = Неопределено, Значение = Истина) +Функция ЗаполнениеДанныхОтложенногоОбработчикаВФоне(ПараметрыОбработчикаСтруктура, АдресРезультата) + + ЕстьДанныеДляРегистрации = Ложь; + НачатьТранзакцию(); + Попытка + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("Константа.СведенияОбОбновленииИБ"); + Блокировка.Заблокировать(); + + СведенияОбОбновлении = СведенияОбОбновленииИнформационнойБазы(); + + Для Каждого ЭлементОписаниеПроцедуры Из СведенияОбОбновлении.ОписаниеПроцедурЗаполнения Цикл + ОписаниеПроцедуры = ЭлементОписаниеПроцедуры.Значение; + + Если ОписаниеПроцедуры.Статус = "Выполнено" + Или ОписаниеПроцедуры.Статус = "Выполняется" Тогда + Продолжить; + КонецЕсли; + + ЕстьДанныеДляРегистрации = Истина; + // Установка признака начала выполнения обработчика. + ОписаниеПроцедуры.Статус = "Выполняется"; + Прервать; + КонецЦикла; + + ЗаписатьСведенияОбОбновленииИнформационнойБазы(СведенияОбОбновлении); + + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + + Если Не ЕстьДанныеДляРегистрации Тогда + Возврат Ложь; + КонецЕсли; + + Если ПараметрыОбработчикаСтруктура = Неопределено Тогда + ПараметрыОбработчикаСтруктура = ОбновлениеИнформационнойБазы.ОсновныеПараметрыОтметкиКОбработке(); + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда + МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); + МодульОбменДаннымиСервер.ИнициализироватьФайлСДаннымиОбновления(ПараметрыОбработчикаСтруктура); + КонецЕсли; + КонецЕсли; + + ПараметрыОбработчикаСтруктура.Очередь = ОписаниеПроцедуры.Очередь; + ПараметрыОбработчикаСтруктура.Вставить("ДанныеОбработчика", Новый Соответствие); + + ПараметрыОбработчика = Новый Массив; + ПараметрыОбработчика.Добавить(ПараметрыОбработчикаСтруктура); + Попытка + Сообщение = НСтр("ru = 'Выполняется процедура заполнения данных + |""%1"" + |отложенного обработчика обновления + |""%2"".'"); + Сообщение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Сообщение, + ОписаниеПроцедуры.ПроцедураЗаполнения, + ОписаниеПроцедуры.ИмяОбработчика); + ЗаписатьИнформацию(Сообщение); + + РаботаВБезопасномРежиме.ВыполнитьМетодКонфигурации(ОписаниеПроцедуры.ПроцедураЗаполнения, ПараметрыОбработчика); + Исключение + ЗаписатьОшибку(СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'При вызове процедуры заполнения данных + |""%1"" + |отложенного обработчика обновления + |""%2"" + |произошла ошибка: + |""%3"".'"), + ОписаниеПроцедуры.ПроцедураЗаполнения, + ОписаниеПроцедуры.ИмяОбработчика, + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); + + ВызватьИсключение; + КонецПопытки; + + НачатьТранзакцию(); + Попытка + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("Константа.СведенияОбОбновленииИБ"); + Блокировка.Заблокировать(); + + НовыеСведенияОбОбновлении = СведенияОбОбновленииИнформационнойБазы(); + Если ТипЗнч(НовыеСведенияОбОбновлении.ОбрабатываемыеДанные) <> Тип("Соответствие") Тогда + НовыеСведенияОбОбновлении.ОбрабатываемыеДанные = Новый Соответствие; + КонецЕсли; + НовыеСведенияОбОбновлении.ОбрабатываемыеДанные.Вставить(ОписаниеПроцедуры.ИмяОбработчика, ПараметрыОбработчикаСтруктура.ДанныеОбработчика); + НовыеСведенияОбОбновлении.ОписаниеПроцедурЗаполнения[ОписаниеПроцедуры.ИмяОбработчика].Статус = "Выполнено"; + + ЗаписатьСведенияОбОбновленииИнформационнойБазы(НовыеСведенияОбОбновлении); + + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + + Возврат Истина; + +КонецФункции + +Процедура ОтметитьРегистрациюОтложенныхОбработчиковОбновления(ИмяПодсистемы = Неопределено, Значение = Истина) Экспорт СтандартнаяОбработка = Истина; diff --git a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыСлужебныйВМоделиСервиса/Module.bsl b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыСлужебныйВМоделиСервиса/Module.bsl index 545cb765f..c67bb4c27 100644 --- a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыСлужебныйВМоделиСервиса/Module.bsl +++ b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыСлужебныйВМоделиСервиса/Module.bsl @@ -274,7 +274,7 @@ ПланОбновленияПустой = ПланОбновленияОбластиДанных.Строки.Количество() = 0; Если ИдентификаторБиблиотеки = Метаданные.Имя Тогда - // Версию конфигурации можно устанавливать только если никакие библиотеки не требует обновления + // Версию конфигурации можно устанавливать только если ни какие библиотеки не требует обновления // иначе механизм обновления в областях не будет запущен и библиотеки останутся не обновленными. ПланОбновленияПустой = Ложь; @@ -895,11 +895,11 @@ КонецПроцедуры -// Перенести пароли в безопасное хранилище +// Перенести пароли в безопасное хранилище. // Процедура ПеренестиПаролиВБезопасноеХранилище() Экспорт - // Для служебного пользователя Менеджера сервиса + // Для служебного пользователя Менеджера сервиса. ИмяСлужебногоПользователяМенеджераСервиса = Константы.УдалитьИмяСлужебногоПользователяМенеджераСервиса.Получить(); ПарольСлужебногоПользователяМенеджераСервиса = Константы.УдалитьПарольСлужебногоПользователяМенеджераСервиса.Получить(); Владелец = ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Константа.ВнутреннийАдресМенеджераСервиса"); diff --git a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыСлужебныйВызовСервера/Module.bsl b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыСлужебныйВызовСервера/Module.bsl index 30f44f92f..05a0caf8c 100644 --- a/SSL/src/CommonModules/ОбновлениеИнформационнойБазыСлужебныйВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/ОбновлениеИнформационнойБазыСлужебныйВызовСервера/Module.bsl @@ -15,7 +15,18 @@ ПараметрыОбновления.Перезапустить = Перезапустить; ПараметрыОбновления.ВыполнятьОтложенныеОбработчики = ВыполнятьОтложенныеОбработчики; - Результат = ОбновлениеИнформационнойБазыСлужебный.ВыполнитьОбновлениеИнформационнойБазы(ПараметрыОбновления); + Попытка + Результат = ОбновлениеИнформационнойБазыСлужебный.ВыполнитьОбновлениеИнформационнойБазы(ПараметрыОбновления); + Исключение + // Переход в режим открытия формы повторной синхронизации данных перед запуском + // с двумя вариантами "Синхронизировать и продолжить" и "Продолжить". + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") + И ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда + МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); + МодульОбменДаннымиСервер.ВключитьПовторениеЗагрузкиСообщенияОбменаДаннымиПередЗапуском(); + КонецЕсли; + ВызватьИсключение; + КонецПопытки; Перезапустить = ПараметрыОбновления.Перезапустить; Возврат Результат; @@ -29,32 +40,4 @@ КонецПроцедуры -// Записывает в константу продолжительность основного цикла обновления. -// -Процедура ЗаписатьВремяВыполненияОбновления(ВремяНачалаОбновления, ВремяОкончанияОбновления) Экспорт - - Если ОбщегоНазначенияПовтИсп.РазделениеВключено() И Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда - Возврат; - КонецЕсли; - - СведенияОбОбновлении = ОбновлениеИнформационнойБазыСлужебный.СведенияОбОбновленииИнформационнойБазы(); - СведенияОбОбновлении.ВремяНачалаОбновления = ВремяНачалаОбновления; - СведенияОбОбновлении.ВремяОкончанияОбновления = ВремяОкончанияОбновления; - - ВремяВСекундах = ВремяОкончанияОбновления - ВремяНачалаОбновления; - - Часы = Цел(ВремяВСекундах/3600); - Минуты = Цел((ВремяВСекундах - Часы * 3600) / 60); - Секунды = ВремяВСекундах - Часы * 3600 - Минуты * 60; - - ПродолжительностьЧасы = ?(Часы = 0, "", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 час'"), Часы)); - ПродолжительностьМинуты = ?(Минуты = 0, "", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 мин'"), Минуты)); - ПродолжительностьСекунды = ?(Секунды = 0, "", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 сек'"), Секунды)); - ПродолжительностьОбновления = ПродолжительностьЧасы + " " + ПродолжительностьМинуты + " " + ПродолжительностьСекунды; - СведенияОбОбновлении.ПродолжительностьОбновления = СокрЛП(ПродолжительностьОбновления); - - ОбновлениеИнформационнойБазыСлужебный.ЗаписатьСведенияОбОбновленииИнформационнойБазы(СведенияОбОбновлении); - -КонецПроцедуры - #КонецОбласти diff --git a/SSL/src/CommonModules/ОбновлениеКонфигурации/Module.bsl b/SSL/src/CommonModules/ОбновлениеКонфигурации/Module.bsl index f9daeeef9..86668f928 100644 --- a/SSL/src/CommonModules/ОбновлениеКонфигурации/Module.bsl +++ b/SSL/src/CommonModules/ОбновлениеКонфигурации/Module.bsl @@ -3,6 +3,45 @@ // //////////////////////////////////////////////////////////////////////////////// +#Область ПрограммныйИнтерфейс + +// Получает настройки обновления конфигурации. +// +// Параметры: +// Настройки - Структура - См. описание свойств в функции НастройкиПоУмолчанию. +// +Функция НастройкиОбновленияКонфигурации() Экспорт + + НастройкиПоУмолчанию = НастройкиПоУмолчанию(); + Настройки = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить("ОбновлениеКонфигурации", "НастройкиОбновленияКонфигурации"); + + Если Настройки <> Неопределено Тогда + ЗаполнитьЗначенияСвойств(НастройкиПоУмолчанию, Настройки); + КонецЕсли; + + Возврат НастройкиПоУмолчанию; + +КонецФункции + +// Сохраняет настройки обновления конфигурации. +// +// Параметры: +// Настройки - Структура - См. описание свойств в функции НастройкиПоУмолчанию. +// +Процедура СохранитьНастройкиОбновленияКонфигурации(Настройки) Экспорт + + НастройкиПоУмолчанию = НастройкиПоУмолчанию(); + ЗаполнитьЗначенияСвойств(НастройкиПоУмолчанию, Настройки); + + ОбщегоНазначения.ХранилищеОбщихНастроекСохранить( + "ОбновлениеКонфигурации", + "НастройкиОбновленияКонфигурации", + НастройкиПоУмолчанию); + +КонецПроцедуры + +#КонецОбласти + #Область СлужебныйПрограммныйИнтерфейс // См. описание этой же процедуры в модуле СтандартныеПодсистемыСервер. @@ -15,7 +54,7 @@ "ОбновлениеКонфигурацииКлиент"); КлиентскиеОбработчики[ - "СтандартныеПодсистемы.БазоваяФункциональность\ПриПолученииСпискаПредупрежденийЗавершенияРаботы"].Добавить( + "СтандартныеПодсистемы.БазоваяФункциональность\ПередЗавершениемРаботыСистемы"].Добавить( "ОбновлениеКонфигурацииКлиент"); // СЕРВЕРНЫЕ ОБРАБОТЧИКИ. @@ -26,40 +65,8 @@ СерверныеОбработчики["СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПараметровРаботыКлиента"].Добавить( "ОбновлениеКонфигурации"); - СерверныеОбработчики["СтандартныеПодсистемы.ОбновлениеВерсииИБ\ПриДобавленииОбработчиковОбновления"].Добавить( - "ОбновлениеКонфигурации"); - КонецПроцедуры -// Получить глобальные настройки обновления на сеанс 1С:Предприятия. -// -Функция ПолучитьНастройкиОбновления() Экспорт - - ЕстьДоступДляОбновления = ПроверитьДоступДляОбновления(); - ЕстьДоступДляПроверкиОбновления = Пользователи.РолиДоступны("ПроверкаДоступныхОбновленийКонфигурации") - И ТипЗнч(Пользователи.АвторизованныйПользователь()) = Тип("СправочникСсылка.Пользователи"); - - КонфигурацияИзменена = ?(ЕстьДоступДляОбновления Или ЕстьДоступДляПроверкиОбновления, КонфигурацияИзменена(), Ложь); - - СтруктураНастройки = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить("ОбновлениеКонфигурации", "НастройкиОбновленияКонфигурации"); - - Настройки = Новый Структура; - Настройки.Вставить("КороткоеИмяКонфигурации", КороткоеИмяКонфигурации(СтруктураНастройки)); - Настройки.Вставить("АдресСервераДляПроверкиНаличияОбновления", АдресСервераДляПроверкиНаличияОбновления(СтруктураНастройки)); - Настройки.Вставить("КаталогОбновлений", КаталогОбновлений(СтруктураНастройки)); - Настройки.Вставить("АдресРесурсаДляПроверкиНаличияОбновления", АдресРесурсаДляПроверкиНаличияОбновления(СтруктураНастройки)); - Настройки.Вставить("АдресСервисаПроверкиЛегальности", АдресСервисаПроверкиЛегальности()); - Настройки.Вставить("КонфигурацияИзменена", КонфигурацияИзменена); - Настройки.Вставить("ПроверитьПрошлыеОбновленияБазы", ОбновлениеКонфигурацииУспешно() <> Неопределено); - Настройки.Вставить("ЕстьДоступДляОбновления", ЕстьДоступДляОбновления); - Настройки.Вставить("ЕстьДоступДляПроверкиОбновления", ЕстьДоступДляПроверкиОбновления); - - Настройки.Вставить("НастройкиОбновленияКонфигурации", ПолучитьСтруктуруНастроекПомощника()); - - Возврат Настройки; - -КонецФункции - // Вызывается при завершении обновления конфигурации через COM-соединение. // // Параметры: @@ -70,7 +77,7 @@ ТекстСообщения = НСтр("ru = 'Завершение обновления из внешнего скрипта.'"); ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Информация,,,ТекстСообщения); - Если НЕ ПроверитьДоступДляОбновления() Тогда + Если Не ЕстьПраваНаУстановкуОбновления() Тогда ТекстСообщения = НСтр("ru = 'Недостаточно прав для завершения обновления конфигурации.'"); ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка,,,ТекстСообщения); ВызватьИсключение ТекстСообщения; @@ -93,43 +100,11 @@ КонецЕсли; Если РезультатОбновления Тогда - ОбновлениеИнформационнойБазыСлужебный.ПослеЗавершенияОбновления(); - КонецЕсли; КонецПроцедуры -// Получает из хранилища общих настроек настройки обновления конфигурации. -Функция ПолучитьСтруктуруНастроекПомощника() Экспорт - - Расписание = Неопределено; - Настройки = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить("ОбновлениеКонфигурации", "НастройкиОбновленияКонфигурации"); - - Если Настройки = Неопределено Тогда - КоличествоСтарыхНастроек = 0; - ИначеЕсли ТипЗнч(Настройки) = Тип("Структура") ИЛИ ТипЗнч(Настройки) = Тип("Соответствие") Тогда - КоличествоСтарыхНастроек = Настройки.Количество(); - Иначе - КоличествоСтарыхНастроек = 0; - КонецЕсли; - Настройки = ОбновлениеКонфигурацииКлиентСервер.ПолучитьОбновленныеНастройкиОбновленияКонфигурации(Настройки); - // Если появились новые настройки, то их нужно сохранить. - Если Настройки.Количество() > КоличествоСтарыхНастроек Тогда - УстановитьПривилегированныйРежим(Истина); - ЗаписатьСтруктуруНастроекПомощника(Настройки); - УстановитьПривилегированныйРежим(Ложь); - КонецЕсли; - // Если в ранних версиях было сохранено расписание, и еще не отработал обработчик - // обновления ОбновлениеРасписанияПроверкиНаличияОбновления, то... - Если Настройки <> Неопределено И Настройки.Свойство("РасписаниеПроверкиНаличияОбновления", Расписание) - И ТипЗнч(Расписание) = Тип("РасписаниеРегламентногоЗадания") Тогда - Настройки.РасписаниеПроверкиНаличияОбновления = ОбщегоНазначенияКлиентСервер.РасписаниеВСтруктуру(Расписание); - КонецЕсли; - Возврат Настройки; - -КонецФункции - //////////////////////////////////////////////////////////////////////////////// // Обработчики условных вызовов из других подсистем. @@ -176,174 +151,35 @@ КонецФункции +// Возвращает полное имя основной формы обработки УстановкаОбновлений. +// +Функция ИмяФормыУстановкиОбновления() Экспорт + + Возврат "Обработка.УстановкаОбновлений.Форма.Форма"; + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции -// Проверить, что запуск программы выполнен от имени внешнего пользователя -// и выбросить исключение в этом случае. +// Получить глобальные настройки обновления на сеанс 1С:Предприятия. // -// Параметры: -// ТекстСообщения - Строка - текст исключения. Если не задан, -// используется текст по умолчанию. -// -// Пример использования: -// ПрерватьВыполнениеЕслиАвторизованВнешнийПользователь(); -// ... далее располагается фрагмент кода, который рассчитывает только на выполнение -// из-под "обычного" пользователя. -// -Процедура ПрерватьВыполнениеЕслиАвторизованВнешнийПользователь(Знач ТекстСообщения = "") Экспорт +Функция НастройкиОбновления() - УстановитьПривилегированныйРежим(Истина); + Настройки = Новый Структура; + Настройки.Вставить("КонфигурацияИзменена",?(ЕстьПраваНаУстановкуОбновления(), КонфигурацияИзменена(), Ложь)); + Настройки.Вставить("ПроверитьПрошлыеОбновленияБазы", ОбновлениеКонфигурацииУспешно() <> Неопределено); + Настройки.Вставить("НастройкиОбновленияКонфигурации", НастройкиОбновленияКонфигурации()); - Если ПользователиКлиентСервер.ЭтоСеансВнешнегоПользователя() Тогда - - ТекстИсключения = ТекстСообщения; - - Если ПустаяСтрока(ТекстИсключения) Тогда - ТекстИсключения = НСтр("ru = 'Данная операция не доступна внешнему пользователю системы.'"); - КонецЕсли; - - ВызватьИсключение ТекстИсключения; - - КонецЕсли; - -КонецПроцедуры - -// Получить короткое имя (идентификатор) конфигурации. -// -// Возвращаемое значение: -// Строка - короткое имя конфигурации. -Функция КороткоеИмяКонфигурации(СтруктураНастройки) - - // Значение задано в инструменте разработчика - Если СтруктураНастройки <> Неопределено Тогда // Значение из настроек пользователя. - ИспользоватьЗначениеНастройки = Ложь; - СтруктураНастройки.Свойство("ИспользоватьЗначениеНастройкиКороткоеИмяКонфигурации", ИспользоватьЗначениеНастройки); - Если ИспользоватьЗначениеНастройки = Истина Тогда - Возврат СтруктураНастройки.КороткоеИмяКонфигурации; - КонецЕсли; - КонецЕсли; - - // Определение короткого имени - КороткоеИмя = ""; - ОбновлениеКонфигурацииПереопределяемый.ПриОпределенииКраткогоИмениКонфигурации(КороткоеИмя); - КороткоеИмя = КороткоеИмя + "/"; - - // Определение редакции конфигурации. - НомерРедакции = ""; - ПодстрокиВерсии = СтрРазделить(Метаданные.Версия, "."); - Если ПодстрокиВерсии.Количество() > 1 Тогда - НомерРедакции = ПодстрокиВерсии[0] + ПодстрокиВерсии[1] + "/"; - КонецЕсли; - - // Определение версии платформы. - ИнформацияСистемная = Новый СистемнаяИнформация; - ПодстрокиВерсии = СтрРазделить(ИнформацияСистемная.ВерсияПриложения, "."); - ВерсияПлатформы = ПодстрокиВерсии[0] + ПодстрокиВерсии[1] + "/"; - - // Определение группы версий - ГруппаВерсий = ""; - ОбновлениеКонфигурацииПереопределяемый.ПриОпределенииГруппыВерсий(ГруппаВерсий); - Если Не ПустаяСтрока(ГруппаВерсий) Тогда - ГруппаВерсий = Строка(ГруппаВерсий) + "/"; - КонецЕсли; - - ШаблонИмени = "[КороткоеИмя][НомерРедакции][ВерсияПлатформы][ГруппаВерсий]"; - КороткоеИмяКонфигурации = СтрЗаменить(ШаблонИмени, "[КороткоеИмя]", КороткоеИмя); - КороткоеИмяКонфигурации = СтрЗаменить(КороткоеИмяКонфигурации, "[НомерРедакции]", НомерРедакции); - КороткоеИмяКонфигурации = СтрЗаменить(КороткоеИмяКонфигурации, "[ВерсияПлатформы]", ВерсияПлатформы); - КороткоеИмяКонфигурации = СтрЗаменить(КороткоеИмяКонфигурации, "[ГруппаВерсий]", ГруппаВерсий); - - Возврат КороткоеИмяКонфигурации; - -КонецФункции - -// Получить адрес веб-сервера поставщика конфигурации, на котором находится -// информация о доступных обновлениях. -// -// Возвращаемое значение: -// Строка - адрес веб-сервера. -// -// Пример реализации: -// -// Возврат "localhost"; // локальный веб-сервер для тестирования. -// -Функция АдресСервераДляПроверкиНаличияОбновления(СтруктураНастройки) - - Значение = "downloads.1c.ru"; // Значение по умолчанию - ОбновлениеКонфигурацииПереопределяемый.ПриОпределенииАдресаСервераДляПроверкиНаличияОбновления(Значение); - - Если СтруктураНастройки <> Неопределено Тогда // Значение из настроек пользователя. - ИспользоватьЗначениеНастройки = Ложь; - СтруктураНастройки.Свойство("ИспользоватьЗначениеНастройкиАдресСервераДляПроверкиНаличияОбновления", ИспользоватьЗначениеНастройки); - Если ИспользоватьЗначениеНастройки = Истина Тогда - Значение = СтруктураНастройки.АдресСервераДляПроверкиНаличияОбновления; - КонецЕсли; - КонецЕсли; - - Возврат Значение; - -КонецФункции - -Функция КаталогОбновлений(СтруктураНастройки) - - Значение = ОбновлениеКонфигурацииКлиентСервер.ДобавитьКонечныйРазделительПути(Метаданные.АдресКаталогаОбновлений); - ОбновлениеКонфигурацииПереопределяемый.ПриОпределенииАдресаКаталогаОбновлений(Значение); - - Если СтруктураНастройки <> Неопределено Тогда // Значение из настроек пользователя. - ИспользоватьЗначениеНастройки = Ложь; - СтруктураНастройки.Свойство("ИспользоватьЗначениеНастройкиКаталогОбновлений", ИспользоватьЗначениеНастройки); - Если ИспользоватьЗначениеНастройки = Истина Тогда - Значение = СтруктураНастройки.КаталогОбновлений; - КонецЕсли; - КонецЕсли; - - Возврат Значение; - -КонецФункции - -Функция АдресРесурсаДляПроверкиНаличияОбновления(СтруктураНастройки) - - Значение = "/ipp/ITSREPV/V8Update/Configs/"; // Значение по умолчанию - ОбновлениеКонфигурацииПереопределяемый.ПриОпределенииАдресаРесурсаДляПроверкиНаличияОбновления(Значение); - - Если СтруктураНастройки <> Неопределено Тогда // Значение из настроек пользователя. - ИспользоватьЗначениеНастройки = Ложь; - СтруктураНастройки.Свойство("ИспользоватьЗначениеНастройкиАдресРесурсаДляПроверкиНаличияОбновления", ИспользоватьЗначениеНастройки); - Если ИспользоватьЗначениеНастройки = Истина Тогда - Значение = СтруктураНастройки.АдресРесурсаДляПроверкиНаличияОбновления; - КонецЕсли; - КонецЕсли; - - Возврат Значение; - -КонецФункции - -Функция АдресСервисаПроверкиЛегальности() - - Значение = "https://webits.1c.ru/services/WebItsSimpleService?wsdl"; // Значение по умолчанию - - СтруктураНастройки = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить( - "ОбновлениеКонфигурации", - "НастройкиОбновленияКонфигурации"); - - Если СтруктураНастройки <> Неопределено Тогда // Значение из настроек пользователя. - ИспользоватьЗначениеНастройки = Ложь; - СтруктураНастройки.Свойство("ИспользоватьЗначениеНастройкиАдресСервисаПроверкиЛегальности", ИспользоватьЗначениеНастройки); - Если ИспользоватьЗначениеНастройки = Истина Тогда - Значение = СтруктураНастройки.АдресСервисаПроверкиЛегальности; - КонецЕсли; - КонецЕсли; - - Возврат Значение; + Возврат Настройки; КонецФункции // Возвращает признак успешного обновления конфигурации на основе данных константы настроек. Функция ОбновлениеКонфигурацииУспешно(КаталогСкрипта = "") Экспорт - Если НЕ ПравоДоступа("Чтение", Метаданные.Константы.СтатусОбновленияКонфигурации) Тогда + Если Не ПравоДоступа("Чтение", Метаданные.Константы.СтатусОбновленияКонфигурации) Тогда Возврат Неопределено; КонецЕсли; @@ -399,27 +235,8 @@ КонецПроцедуры -// Записывает настройки помощника обновления в хранилище общих настроек. -Процедура ЗаписатьСтруктуруНастроекПомощника(НастройкиОбновленияКонфигурации, СообщенияДляЖурналаРегистрации = Неопределено) Экспорт - - ЖурналРегистрации.ЗаписатьСобытияВЖурналРегистрации(СообщенияДляЖурналаРегистрации); - - ОбщегоНазначения.ХранилищеОбщихНастроекСохранить( - "ОбновлениеКонфигурации", - "НастройкиОбновленияКонфигурации", - НастройкиОбновленияКонфигурации); - - Если Не ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда - ПараметрыАутентификации = Новый Структура("Логин,Пароль"); - НастройкиОбновленияКонфигурации.Свойство("КодПользователяСервераОбновлений", ПараметрыАутентификации.Логин); - НастройкиОбновленияКонфигурации.Свойство("ПарольСервераОбновлений", ПараметрыАутентификации.Пароль); - СтандартныеПодсистемыСервер.СохранитьПараметрыАутентификацииНаСайте(ПараметрыАутентификации); - КонецЕсли; - -КонецПроцедуры - // Проверка доступа к подсистеме ОбновлениеКонфигурации. -Функция ПроверитьДоступДляОбновления() +Функция ЕстьПраваНаУстановкуОбновления() Экспорт Возврат Пользователи.ЭтоПолноправныйПользователь(, Истина); КонецФункции @@ -450,10 +267,31 @@ КонецПроцедуры // Возвращает имя события для записи журнала регистрации. -Функция СобытиеЖурналаРегистрации() Экспорт +Функция СобытиеЖурналаРегистрации() Возврат НСтр("ru = 'Обновление конфигурации'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); КонецФункции +// Заполняет структуру настроек обновления конфигурации и возвращает их. +// +// Возвращаемое значение: +// Структура - структура настроек обновления. +// +Функция НастройкиПоУмолчанию() + + Результат = Новый Структура; + Результат.Вставить("РежимОбновления", ?(ОбщегоНазначения.ИнформационнаяБазаФайловая(), 0, 2)); + Результат.Вставить("ДатаВремяОбновления", НачалоДня(ТекущаяДатаСеанса()) + 24*60*60); + Результат.Вставить("ВыслатьОтчетНаПочту", Ложь); + Результат.Вставить("АдресЭлектроннойПочты", ""); + Результат.Вставить("КодЗадачиПланировщика", 0); + Результат.Вставить("ИмяФайлаОбновления", ""); + Результат.Вставить("СоздаватьРезервнуюКопию", 1); + Результат.Вставить("ИмяКаталогаРезервнойКопииИБ", ""); + Результат.Вставить("ВосстанавливатьИнформационнуюБазу", Истина); + Возврат Результат; + +КонецФункции + //////////////////////////////////////////////////////////////////////////////// // Обработчики служебных событий подсистем БСП. @@ -478,101 +316,19 @@ Процедура ПриДобавленииПараметровРаботыКлиента(Параметры) Экспорт Если Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() - ИЛИ ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + Или Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда Возврат; КонецЕсли; - Параметры.Вставить("НастройкиОбновления", Новый ФиксированнаяСтруктура(ПолучитьНастройкиОбновления())); + Параметры.Вставить("НастройкиОбновления", Новый ФиксированнаяСтруктура(НастройкиОбновления())); КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// Обновление информационной базы. - -// Добавляет процедуры-обработчики обновления, необходимые данной подсистеме. -// -// Параметры: -// Обработчики - ТаблицаЗначений - см. описание функции НоваяТаблицаОбработчиковОбновления -// общего модуля ОбновлениеИнформационнойБазы. -// -Процедура ПриДобавленииОбработчиковОбновления(Обработчики) Экспорт +Функция ВыполнитьОтложенныеОбработчики() Экспорт - Обработчик = Обработчики.Добавить(); - Обработчик.Версия = "1.1.1.8"; - Обработчик.Процедура = "ОбновлениеКонфигурации.ОбновлениеРасписанияПроверкиНаличияОбновления"; + Возврат Не СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации() + И ОбновлениеИнформационнойБазыСлужебный.СтатусНевыполненныхОбработчиков() = "СтатусНеВыполнено"; - Обработчик = Обработчики.Добавить(); - Обработчик.Версия = "2.2.2.10"; - Обработчик.Процедура = "ОбновлениеКонфигурации.ОчиститьПараметрыАдминистрирования"; + КонецФункции -КонецПроцедуры - -// Процедура-обработчик обновления. -// -Процедура ОбновлениеРасписанияПроверкиНаличияОбновления() Экспорт - - Расписание = Неопределено; - СписокПользователей = ПользователиИнформационнойБазы.ПолучитьПользователей(); - Для Каждого ТекущийПользователь Из СписокПользователей Цикл - ИмяПользователя = ТекущийПользователь.Имя; - - Настройки = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить( - "ОбновлениеКонфигурации", - "НастройкиОбновленияКонфигурации", - , - , - ИмяПользователя); - - // Если в ранних версиях было сохранено расписание... - Если Настройки <> Неопределено И Настройки.Свойство("РасписаниеПроверкиНаличияОбновления", Расписание) - И ТипЗнч(Расписание) = Тип("РасписаниеРегламентногоЗадания") Тогда - - Настройки.РасписаниеПроверкиНаличияОбновления = ОбщегоНазначенияКлиентСервер.РасписаниеВСтруктуру(Расписание); - - ОбщегоНазначения.ХранилищеОбщихНастроекСохранить( - "ОбновлениеКонфигурации", - "НастройкиОбновленияКонфигурации", - Настройки, - , - ИмяПользователя); - - КонецЕсли; - КонецЦикла; - -КонецПроцедуры - -// Очищает параметры администрирования из сохраненных настроек. -// -Процедура ОчиститьПараметрыАдминистрирования() Экспорт - - Настройки = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить( - "ОбновлениеКонфигурации", "НастройкиОбновленияКонфигурации"); - - Если ТипЗнч(Настройки) = Тип("Структура") ИЛИ ТипЗнч(Настройки) = Тип("Соответствие") Тогда - - СписокСвойствДляУдаления = Новый Массив; - СписокСвойствДляУдаления.Добавить("КластерТребуетАутентификации"); - СписокСвойствДляУдаления.Добавить("ИмяАдминистратораКластера"); - СписокСвойствДляУдаления.Добавить("ПарольАдминистратораКластера"); - СписокСвойствДляУдаления.Добавить("НестандартныеПортыСервера"); - СписокСвойствДляУдаления.Добавить("ПортАгентаСервера"); - СписокСвойствДляУдаления.Добавить("ПортКластераСерверов"); - - Для Каждого УдаляемоеСвойство Из СписокСвойствДляУдаления Цикл - - Если Настройки.Свойство(УдаляемоеСвойство) Тогда - Настройки.Удалить(УдаляемоеСвойство); - КонецЕсли; - - КонецЦикла; - - ОбщегоНазначения.ХранилищеОбщихНастроекСохранить( - "ОбновлениеКонфигурации", - "НастройкиОбновленияКонфигурации", - Настройки); - - КонецЕсли; - -КонецПроцедуры - #КонецОбласти diff --git a/SSL/src/CommonModules/ОбновлениеКонфигурацииВызовСервера/Module.bsl b/SSL/src/CommonModules/ОбновлениеКонфигурацииВызовСервера/Module.bsl index c5137f3bb..f0c1db92a 100644 --- a/SSL/src/CommonModules/ОбновлениеКонфигурацииВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/ОбновлениеКонфигурацииВызовСервера/Module.bsl @@ -5,24 +5,76 @@ #Область СлужебныеПроцедурыИФункции -// Получает настройки помощника обновления из хранилища общих настроек. +// Проверка наличия активных соединений с информационной базой. // -// Подробнее - см. описание ОбновлениеКонфигурации.ПолучитьСтруктуруНастроекПомощника(). -// -Функция ПолучитьСтруктуруНастроекПомощника() Экспорт +// Возвращаемое значение: +// Булево - Истина, если соединения есть, +// Ложь, если соединений нет. +Функция НаличиеАктивныхСоединений(СообщенияДляЖурналаРегистрации = Неопределено) Экспорт - Возврат ОбновлениеКонфигурации.ПолучитьСтруктуруНастроекПомощника(); + ВыполнитьПроверкуПравДоступа("Администрирование", Метаданные); + // Запись накопленных событий ЖР. + ЖурналРегистрации.ЗаписатьСобытияВЖурналРегистрации(СообщенияДляЖурналаРегистрации); + Возврат СоединенияИБ.КоличествоСеансовИнформационнойБазы(Ложь, Ложь) > 1; КонецФункции -// Записывает настройки помощника обновления в хранилище общих настроек. -// -// Подробнее - см. описание ОбновлениеКонфигурации.ЗаписатьСтруктуруНастроекПомощника(). -// -Процедура ЗаписатьСтруктуруНастроекПомощника(НастройкиОбновленияКонфигурации, СообщенияДляЖурналаРегистрации = Неопределено) Экспорт +Процедура ЗаписатьСтатусОбновления(ИмяАдминистратораОбновления, ОбновлениеЗапланировано, ОбновлениеВыполнено, + РезультатОбновления, ИмяФайлаСкрипта = "", СообщенияДляЖурналаРегистрации = Неопределено) Экспорт - ОбновлениеКонфигурации.ЗаписатьСтруктуруНастроекПомощника(НастройкиОбновленияКонфигурации, СообщенияДляЖурналаРегистрации); + ВыполнитьПроверкуПравДоступа("Администрирование", Метаданные); + + КаталогСкрипта = ""; + Если СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации() Тогда + КаталогСкрипта = Лев(ИмяФайлаСкрипта, СтрДлина(ИмяФайлаСкрипта) - 10); + КонецЕсли; + + ОбновлениеКонфигурации.ЗаписатьСтатусОбновления( + ИмяАдминистратораОбновления, + ОбновлениеЗапланировано, + ОбновлениеВыполнено, + РезультатОбновления, + КаталогСкрипта, + СообщенияДляЖурналаРегистрации); КонецПроцедуры +Функция ТекстыМакетов(ИнтерактивныйРежим, СообщенияДляЖурналаРегистрации, ВыполнитьОтложенныеОбработчики) Экспорт + + ВыполнитьПроверкуПравДоступа("Администрирование", Метаданные); + + ТекстыМакетов = Новый Структура; + ТекстыМакетов.Вставить("ДопФайлОбновленияКонфигурации"); + ТекстыМакетов.Вставить(?(ИнтерактивныйРежим, "ЗаставкаОбновленияКонфигурации", "НеинтерактивноеОбновлениеКонфигурации")); + + Для Каждого СвойстваМакета Из ТекстыМакетов Цикл + ТекстыМакетов[СвойстваМакета.Ключ] = Обработки.УстановкаОбновлений.ПолучитьМакет(СвойстваМакета.Ключ).ПолучитьТекст(); + КонецЦикла; + + // Файл обновления конфигурации: main.js. + ШаблонСкрипта = Обработки.УстановкаОбновлений.ПолучитьМакет("МакетФайлаОбновленияКонфигурации"); + + ОбластьПараметров = ШаблонСкрипта.ПолучитьОбласть("ОбластьПараметров"); + ОбластьПараметров.УдалитьСтроку(1); + ОбластьПараметров.УдалитьСтроку(ОбластьПараметров.КоличествоСтрок()); + ТекстыМакетов.Вставить("ОбластьПараметров", ОбластьПараметров.ПолучитьТекст()); + + ОбластьОбновленияКонфигурации = ШаблонСкрипта.ПолучитьОбласть("ОбластьОбновленияКонфигурации"); + ОбластьОбновленияКонфигурации.УдалитьСтроку(1); + ОбластьОбновленияКонфигурации.УдалитьСтроку(ОбластьОбновленияКонфигурации.КоличествоСтрок()); + ТекстыМакетов.Вставить("МакетФайлаОбновленияКонфигурации", ОбластьОбновленияКонфигурации.ПолучитьТекст()); + + // Запись накопленных событий ЖР. + ЖурналРегистрации.ЗаписатьСобытияВЖурналРегистрации(СообщенияДляЖурналаРегистрации); + ВыполнитьОтложенныеОбработчики = ОбновлениеКонфигурации.ВыполнитьОтложенныеОбработчики(); + + Возврат ТекстыМакетов; + +КонецФункции + +Процедура СохранитьНастройкиОбновленияКонфигурации(Настройки) Экспорт + ВыполнитьПроверкуПравДоступа("Администрирование", Метаданные); + ОбновлениеКонфигурации.СохранитьНастройкиОбновленияКонфигурации(Настройки); +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/CommonModules/ОбновлениеКонфигурацииГлобальный/Module.bsl b/SSL/src/CommonModules/ОбновлениеКонфигурацииГлобальный/Module.bsl deleted file mode 100644 index 2ae3b0118..000000000 --- a/SSL/src/CommonModules/ОбновлениеКонфигурацииГлобальный/Module.bsl +++ /dev/null @@ -1,13 +0,0 @@ -//////////////////////////////////////////////////////////////////////////////// -// Подсистема "Обновление конфигурации". -// -//////////////////////////////////////////////////////////////////////////////// - -#Область СлужебныеПроцедурыИФункции - -// Процедура проверки обновления конфигурации по расписанию. -Процедура ОбработатьПроверкуОбновленияПоРасписанию() Экспорт - ОбновлениеКонфигурацииКлиент.ПроверитьОбновлениеПоРасписанию(); -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/CommonModules/ОбновлениеКонфигурацииКлиент/Module.bsl b/SSL/src/CommonModules/ОбновлениеКонфигурацииКлиент/Module.bsl index be8da5811..063586708 100644 --- a/SSL/src/CommonModules/ОбновлениеКонфигурацииКлиент/Module.bsl +++ b/SSL/src/CommonModules/ОбновлениеКонфигурацииКлиент/Module.bsl @@ -5,232 +5,85 @@ #Область ПрограммныйИнтерфейс -// Проверяет наличие обновления конфигурации при запуске программы. -// -Процедура ПроверитьОбновлениеКонфигурации() Экспорт - - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда - Возврат; - КонецЕсли; - -#Если НЕ ВебКлиент Тогда - ПараметрыРаботыКлиента = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиентаПриЗапуске(); - Если ПараметрыРаботыКлиента.РазделениеВключено Или Не ПараметрыРаботыКлиента.ДоступноИспользованиеРазделенныхДанных Тогда - Возврат; - КонецЕсли; - - ПараметрыПриложения["СтандартныеПодсистемы.ДоступноеОбновлениеКонфигурации"] = Неопределено; - НастройкиОбновления = ПараметрыРаботыКлиента.НастройкиОбновления; - НаличиеОбновления = НастройкиОбновления.ПроверитьПрошлыеОбновленияБазы; - - Если НаличиеОбновления Тогда - // Надо завершить предыдущее обновление. - ПоказатьПоискИУстановкуОбновлений(); - Возврат; - КонецЕсли; - - Если НЕ НаличиеОбновления И НастройкиОбновления.ЕстьДоступДляОбновления Тогда - НаличиеОбновления = НастройкиОбновления.КонфигурацияИзменена; - КонецЕсли; - - НаименованиеСтраницыДоступногоОбновления = "ДоступноеОбновление"; - НаименованиеСтраницыФайлОбновления = "ФайлОбновления"; - ЕстьДоступноеОбновлениеВИнтернете = Ложь; - - ИмяПараметра = "СтандартныеПодсистемы.НастройкиОбновленияКонфигурации"; - Если ПараметрыПриложения[ИмяПараметра] = Неопределено Тогда - ПараметрыПриложения.Вставить(ИмяПараметра, Неопределено); - КонецЕсли; - ПараметрыПриложения[ИмяПараметра] = НастройкиОбновления.НастройкиОбновленияКонфигурации; - НастройкиОбновленияКонфигурации = ПараметрыПриложения[ИмяПараметра]; - - Если Не НаличиеОбновления И НастройкиОбновленияКонфигурации <> Неопределено - И НастройкиОбновления.ЕстьДоступДляПроверкиОбновления - И (НастройкиОбновленияКонфигурации.ПроверятьНаличиеОбновленияПриЗапуске = 1 - Или НастройкиОбновленияКонфигурации.ПроверятьНаличиеОбновленияПриЗапуске = 2) Тогда - - // Подключение обработчика ожидания для проверки наличия обновления в сети Интернет. - Если НастройкиОбновленияКонфигурации.ПроверятьНаличиеОбновленияПриЗапуске = 1 - И НастройкиОбновленияКонфигурации.РасписаниеПроверкиНаличияОбновления <> Неопределено Тогда - ПодключитьОтключитьПроверкуПоРасписанию(Истина); - КонецЕсли; - - Параметры = ПолучитьДоступноеОбновлениеКонфигурации(); - // Если расписание не задано, то проверяем наличие обновления сейчас. - Если НастройкиОбновленияКонфигурации.ПроверятьНаличиеОбновленияПриЗапуске = 2 Тогда - ПроверитьНаличиеОбновленияЧерезИнтернет(); - ЕстьДоступноеОбновлениеВИнтернете = НастройкиОбновленияКонфигурации.ИсточникОбновления <> -1 - И Параметры.ИмяСтраницы = НаименованиеСтраницыДоступногоОбновления; - Если НЕ НаличиеОбновления И ЕстьДоступноеОбновлениеВИнтернете Тогда - НаличиеОбновления = ЕстьДоступноеОбновлениеВИнтернете; - КонецЕсли; - КонецЕсли; - Если Не НаличиеОбновления Тогда - Возврат; - КонецЕсли; - КонецЕсли; - - Если НастройкиОбновления.КонфигурацияИзменена И НастройкиОбновления.ЕстьДоступДляПроверкиОбновления Тогда - Настройки = ОбновлениеКонфигурацииКлиентСервер.ПолучитьОбновленныеНастройкиОбновленияКонфигурации( - ПараметрыПриложения["СтандартныеПодсистемы.НастройкиОбновленияКонфигурации"]); - Настройки.ИсточникОбновления = 2; // Локальный или сетевой каталог. - Настройки.НуженФайлОбновления = Ложь; - ОбновлениеКонфигурацииВызовСервера.ЗаписатьСтруктуруНастроекПомощника(НастройкиОбновленияКонфигурации); - - Параметры = ПолучитьДоступноеОбновлениеКонфигурации(); - Параметры.ИсточникОбновления = НастройкиОбновленияКонфигурации.ИсточникОбновления; - Параметры.НуженФайлОбновления = НастройкиОбновленияКонфигурации.НуженФайлОбновления; - Параметры.ФлагАвтоПереходаНаСтраницуСОбновлением = Истина; - ПоказатьОповещениеПользователя(НСтр("ru = 'Обновление конфигурации'"), - "e1cib/app/Обработка.ПоискИУстановкаОбновлений", - НСтр("ru = 'Конфигурация отличается от основной конфигурации информационной базы.'"), - БиблиотекаКартинок.Информация32); - Возврат; - КонецЕсли; - - Если ЕстьДоступноеОбновлениеВИнтернете И НастройкиОбновления.ЕстьДоступДляПроверкиОбновления Тогда - Настройки = ОбновлениеКонфигурацииКлиентСервер.ПолучитьОбновленныеНастройкиОбновленияКонфигурации( - ПараметрыПриложения["СтандартныеПодсистемы.НастройкиОбновленияКонфигурации"]); - Настройки.ИсточникОбновления = 0; // Интернет - ОбновлениеКонфигурацииВызовСервера.ЗаписатьСтруктуруНастроекПомощника(НастройкиОбновленияКонфигурации); - - Параметры = ПолучитьДоступноеОбновлениеКонфигурации(); - Параметры.ИсточникОбновления = НастройкиОбновленияКонфигурации.ИсточникОбновления; - Параметры.НуженФайлОбновления = НастройкиОбновленияКонфигурации.НуженФайлОбновления; - Параметры.ФлагАвтоПереходаНаСтраницуСОбновлением = Истина; - ПоказатьОповещениеПользователя(НСтр("ru = 'Доступно обновление конфигурации'"), - "e1cib/app/Обработка.ПоискИУстановкаОбновлений", - НСтр("ru = 'Версия:'") + " " + Параметры.ПараметрыФайлаПроверкиОбновления.Version, - БиблиотекаКартинок.Информация32); - Возврат; - КонецЕсли; - -#КонецЕсли - -КонецПроцедуры - -// Скачивает из Интернета файл проверки наличия обновлений. -// -// Параметры: -// ВыдаватьСообщения - Булево - Признак необходимости выводить сообщения об ошибках пользователю. -// ПроверитьОбновленияДляНовойРедакции - Булево - признак необходимости проверять обновления для новой редакции -// платформы. -// -Функция ПолучитьФайлПроверкиНаличияОбновлений(Знач ВыдаватьСообщения = Истина, ПроверитьОбновленияДляНовойРедакции = Ложь) Экспорт - - ПараметрыОбновления = ПолучитьПараметрыОбновления(ПроверитьОбновленияДляНовойРедакции); - НастройкиОбновления = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().НастройкиОбновления; - - ВременныйФайл = ПараметрыОбновления.КаталогФайловОбновления + ПараметрыОбновления.ИмяФайлаПроверкиНаличияОбновления; - - // При необходимости, создаем каталог для временного файла. - КаталогВременногоФайла = ОбщегоНазначенияКлиентСервер.РазложитьПолноеИмяФайла(ВременныйФайл).Путь; - КаталогВременногоФайлаОбъект = Новый Файл(КаталогВременногоФайла); - Если НЕ КаталогВременногоФайлаОбъект.Существует() Тогда - Попытка - СоздатьКаталог(КаталогВременногоФайла); - Исключение - ИнфоОбОшибке = ИнформацияОбОшибке(); - - СообщениеОбОшибке = НСтр("ru = 'Не удалось создать временный каталог для проверки наличия обновлений. - |%1'"); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Ошибка", - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СообщениеОбОшибке, ПодробноеПредставлениеОшибки(ИнфоОбОшибке)),, Истина); - - СообщениеОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СообщениеОбОшибке, КраткоеПредставлениеОшибки(ИнфоОбОшибке)); - Если ВыдаватьСообщения Тогда - ПоказатьПредупреждение(, СообщениеОбОшибке); - КонецЕсли; - Возврат СообщениеОбОшибке; - КонецПопытки; - КонецЕсли; - - // Получаем сам файл из Интернета. - URL = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("%1%2%3", - НастройкиОбновления.АдресСервераДляПроверкиНаличияОбновления, - ПараметрыОбновления.АдресРесурсовДляПроверкиНаличияОбновления, - ПараметрыОбновления.ИмяФайлаПроверкиНаличияОбновления); - ПараметрыПолучения = Новый Структура("ПутьДляСохранения", ?(ПустаяСтрока(ВременныйФайл), Неопределено, ВременныйФайл)); - Результат = ПолучениеФайловИзИнтернетаКлиент.СкачатьФайлНаКлиенте(URL, ПараметрыПолучения); - - Если Результат.Статус <> Истина Тогда - СообщениеОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не удалось проверить наличие обновлений. - |%1'"), Результат.СообщениеОбОшибке); - Если ВыдаватьСообщения Тогда - ПоказатьПредупреждение(, СообщениеОбОшибке); - КонецЕсли; - Возврат СообщениеОбОшибке; - КонецЕсли; - - Возврат ПараметрыДистрибутива(ВременныйФайл); - -КонецФункции - -// Чтение данных по обновлению из файла ИмяФайлаПроверкиНаличияОбновления (UpdInfo.txt). -// Вычисляются: -// номер версии обновления на сервере, -// номера версий, с которых производится обновление (разделяются символом ";") -// дата публикации обновления. -// -// Параметры: -// ИмяФайла - полное имя файла UpdInfo.txt. -// -// Возвращаемое значение: -// Структура: -// Version - версия обновления. -// FromVersions - с каких версий обновляет. -// UpdateDate - дата опубликования. -// Строка - описание ошибки, если файл не найден или не содержит нужных значений. -// -Функция ПараметрыДистрибутива(Знач ИмяФайла) Экспорт - Файл = Новый Файл(ИмяФайла); - Если НЕ Файл.Существует() Тогда - Возврат НСтр("ru = 'Файл описания обновлений не получен'"); - КонецЕсли; - ТекстовыйДокумент = Новый ТекстовыйДокумент(); - ТекстовыйДокумент.Прочитать(Файл.ПолноеИмя); - ПараметрыКомплекта = Новый Структура(); - Для НомерСтроки = 1 По ТекстовыйДокумент.КоличествоСтрок() Цикл - ВременнаяСтрока = НРег(СокрЛП(ТекстовыйДокумент.ПолучитьСтроку(НомерСтроки))); - Если ПустаяСтрока(ВременнаяСтрока) Тогда - Продолжить; - КонецЕсли; - Если СтрНайти(ВременнаяСтрока, "fromversions=") > 0 Тогда - ВременнаяСтрока = СокрЛП(Сред(ВременнаяСтрока, СтрНайти(ВременнаяСтрока, "fromversions=") + СтрДлина("fromversions="))); - ВременнаяСтрока = ?(Лев(ВременнаяСтрока,1)=";","",";") + ВременнаяСтрока + ?(Прав(ВременнаяСтрока,1)=";","",";"); - ПараметрыКомплекта.Вставить("FromVersions", ВременнаяСтрока); - ИначеЕсли СтрНайти(ВременнаяСтрока,"version=")>0 Тогда - ПараметрыКомплекта.Вставить("Version",Сред(ВременнаяСтрока, СтрНайти(ВременнаяСтрока, "version=") + СтрДлина("version="))); - ИначеЕсли СтрНайти(ВременнаяСтрока,"updatedate=")>0 Тогда - // формат даты = Дата, - ВременнаяСтрока = Сред(ВременнаяСтрока, СтрНайти(ВременнаяСтрока,"updatedate=") + СтрДлина("updatedate=")); - Если СтрДлина(ВременнаяСтрока)>8 Тогда - Если СтрНайти(ВременнаяСтрока,".")=5 Тогда - // дата в формате ГГГГ.ММ.ДД - ВременнаяСтрока = СтрЗаменить(ВременнаяСтрока,".",""); - ИначеЕсли СтрНайти(ВременнаяСтрока,".")=3 Тогда - // дата в формате ДД.ММ.ГГГГ - ВременнаяСтрока = Прав(ВременнаяСтрока,4)+Сред(ВременнаяСтрока,4,2)+Лев(ВременнаяСтрока,2); - Иначе - // дата в формате ГГГГММДД - КонецЕсли; - КонецЕсли; - ПараметрыКомплекта.Вставить("UpdateDate",Дата(ВременнаяСтрока)); - Иначе - Возврат НСтр("ru = 'Неверный формат сведений о наличии обновлений'"); - КонецЕсли; - КонецЦикла; - Если ПараметрыКомплекта.Количество() <> 3 Тогда - Возврат НСтр("ru = 'Неверный формат сведений о наличии обновлений'"); - КонецЕсли; - Возврат ПараметрыКомплекта; -КонецФункции - // Открывает форму установки обновлений. // Процедура ПоказатьПоискИУстановкуОбновлений(ПараметрыФормы = Неопределено) Экспорт - ОткрытьФорму("Обработка.ПоискИУстановкаОбновлений.Форма.Форма", ПараметрыФормы); + ОткрытьФорму("Обработка.УстановкаОбновлений.Форма.Форма", ПараметрыФормы); + +КонецПроцедуры + +// Отображает форму настроек создания резервной копии. +// +Процедура ПоказатьРезервноеКопирование(ПараметрыРезервногоКопирования, ОписаниеОповещения) Экспорт + + ОткрытьФорму("Обработка.УстановкаОбновлений.Форма.НастройкаРезервнойКопии", ПараметрыРезервногоКопирования,,,,, ОписаниеОповещения); + +КонецПроцедуры + +// Возвращает текст заголовка настроек резервного копирования для отображения на форме. +// +Функция ЗаголовокСозданияРезервнойКопии(Параметры) Экспорт + + Если Параметры.СоздаватьРезервнуюКопию = 0 Тогда + Результат = НСтр("ru = 'Не создавать резервную копию ИБ'"); + ИначеЕсли Параметры.СоздаватьРезервнуюКопию = 1 Тогда + Результат = НСтр("ru = 'Создавать временную резервную копию ИБ'"); + ИначеЕсли Параметры.СоздаватьРезервнуюКопию = 2 Тогда + Результат = НСтр("ru = 'Создавать резервную копию ИБ'"); + КонецЕсли; + + Если Параметры.ВосстанавливатьИнформационнуюБазу Тогда + Результат = Результат + " " + НСтр("ru = 'и выполнять откат при нештатной ситуации'"); + Иначе + Результат = Результат + " " + НСтр("ru = 'и не выполнять откат при нештатной ситуации'"); + КонецЕсли; + + Возврат Результат; + +КонецФункции + +// Проверяет возможность установи обновления. Если возможно, то запускает +// скрипт обновления или планирует обновление на указанное время. +// +// Параметры: +// Форма - УправляемаяФорма - Форма из которой устанавливается обновление. +// Параметры - Структура со свойствами: +// * РежимОбновления - Число - Вариант установки обновления. Принимаемые значения: +// 0 - сейчас, 1 - при завершении работы, 2 - планирование обновления. +// * ДатаВремяОбновления - Дата - Дата планируемого обновления. +// * ВыслатьОтчетНаПочту - Булево - Признак необходимости отправки отчета на почту. +// * АдресЭлектроннойПочты - Строка - Адрес электронной почты для отправки обновления. +// * КодЗадачиПланировщика - Число - Код задачи запланированного обновления. +// * ИмяФайлаОбновления - Строка - Имя файла устанавливаемого обновления. +// * СоздаватьРезервнуюКопию - Число - Признак необходимости создания резервной копии. +// * ИмяКаталогаРезервнойКопииИБ - Строка - Каталог сохранения резервной копии. +// * ВосстанавливатьИнформационнуюБазу - Булево - Признак необходимости восстановления базы. +// * ЗавершениеРаботыСистемы - Булево - Признак того, что установка обновления происходит при завершении работы. +// * ФайлыОбновления - Массив - Содержит значения типа Структура. +// ПараметрыАдминистрирования - Структура - Содержит параметры администрирования информационной базы и кластера. +// +Процедура УстановитьОбновление(Форма, Параметры, ПараметрыАдминистрирования) Экспорт + + // Так же при проверке возможности установки обновления выполняется + // планировка обновления на указанное время (если выбран этот вариант). + Если Не ВозможнаУстановкаОбновления(Параметры, ПараметрыАдминистрирования) Тогда + Возврат; + КонецЕсли; + + Если Параметры.РежимОбновления = 0 Тогда // Обновить сейчас + ПараметрыПриложения.Вставить("СтандартныеПодсистемы.ПропуститьПредупреждениеПередЗавершениемРаботыСистемы", Истина); + ЗавершитьРаботуСистемы(Ложь); + ЗапуститьСкриптОбновления(Параметры, ПараметрыАдминистрирования); + ИначеЕсли Параметры.РежимОбновления = 1 Тогда // При завершении работы + ИмяПараметра = "СтандартныеПодсистемы.ПредлагатьОбновлениеИнформационнойБазыПриЗавершенииСеанса"; + ПараметрыПриложения.Вставить(ИмяПараметра, Истина); + ПараметрыПриложения.Вставить("СтандартныеПодсистемы.ИменаФайловОбновления", ИменаФайловОбновления(Параметры)); + КонецЕсли; + + ОбновлениеКонфигурацииВызовСервера.СохранитьНастройкиОбновленияКонфигурации(Параметры); + + Форма.Закрыть(); КонецПроцедуры @@ -264,345 +117,604 @@ #Область СлужебныеПроцедурыИФункции -// Возвращает общие параметры обновления. -// -Функция ПолучитьПараметрыОбновления(ПроверитьОбновленияДляНовойРедакции = Ложь) Экспорт - #Если НЕ ВебКлиент Тогда - - СтруктураПараметров = Новый Структура(); - СтруктураПараметров.Вставить("ДатаВремяОбновленияУстановлена" , Ложь); +Функция ВозможнаУстановкаОбновления(Параметры, ПараметрыАдминистрирования) - // Интернет - СтруктураПараметров.Вставить("ИмяZipФайлаСпискаШаблонов" , "v8upd11.zip"); - СтруктураПараметров.Вставить("ИмяФайлаСпискаШаблонов" , "v8cscdsc.xml"); - СтруктураПараметров.Вставить("ИмяФайлаОписанияОбновления", "news.htm"); - СтруктураПараметров.Вставить("ИмяФайлаПорядкаОбновления" , "update.htm"); + ЭтоФайловаяБаза = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ИнформационнаяБазаФайловая; + + Если ЭтоФайловаяБаза И Параметры.СоздаватьРезервнуюКопию = 2 Тогда + Файл = Новый Файл(Параметры.ИмяКаталогаРезервнойКопииИБ); + Если Не Файл.Существует() Или Не Файл.ЭтоКаталог() Тогда + ПоказатьПредупреждение(, НСтр("ru = 'Укажите существующий каталог для сохранения резервной копии ИБ.'")); + Возврат Ложь; + КонецЕсли; + КонецЕсли; + + Если Параметры.РежимОбновления = 0 Тогда // Обновить сейчас + ИмяПараметра = "СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"; + Если ЭтоФайловаяБаза И ОбновлениеКонфигурацииВызовСервера.НаличиеАктивныхСоединений(ПараметрыПриложения[ИмяПараметра]) Тогда + ПоказатьПредупреждение(, НСтр("ru = 'Невозможно продолжить обновление конфигурации, так как не завершены все соединения с информационной базой.'")); + Возврат Ложь; + КонецЕсли; + ИначеЕсли Параметры.РежимОбновления = 2 Тогда + Если Не ДатаОбновленияУказанаВерно(Параметры) Тогда + Возврат Ложь; + КонецЕсли; + Если Параметры.ВыслатьОтчетНаПочту + И Не ОбщегоНазначенияКлиентСервер.АдресЭлектроннойПочтыСоответствуетТребованиям(Параметры.АдресЭлектроннойПочты) Тогда + ПоказатьПредупреждение(, НСтр("ru = 'Укажите допустимый адрес электронной почты.'")); + Возврат Ложь; + КонецЕсли; + Если Не ВозможноЗапланироватьОбновление() Тогда + Возврат Ложь; + КонецЕсли; + Если Не ЗапланироватьОбновлениеКонфигурации(Параметры, ПараметрыАдминистрирования) Тогда + ПоказатьПредупреждение(, НСтр("ru = 'Не удалось запланировать обновление конфигурации. Сведения об ошибке сохранены в журнал регистрации.'")); + Возврат Ложь; + КонецЕсли; + КонецЕсли; + + Возврат Истина; + +КонецФункции - // Имена служебных файлов - СтруктураПараметров.Вставить("ИмяИсполняемогоФайлаКонфигуратора", СтандартныеПодсистемыКлиент.ИмяИсполняемогоФайлаПриложения(Истина)); - СтруктураПараметров.Вставить("ИмяИсполняемогоФайлаКлиента" , СтандартныеПодсистемыКлиент.ИмяИсполняемогоФайлаПриложения()); - СтруктураПараметров.Вставить("СобытиеЖурналаРегистрации" , СобытиеЖурналаРегистрации()); +Функция ВозможноЗапланироватьОбновление() - // Определение каталога временных файлов. - СтруктураПараметров.Вставить("КаталогФайловОбновления" , КаталогLocalAppData() + "1C\1Cv8Update\"); - КаталогВременныхФайловОбновления = КаталогВременныхФайлов() + "1Cv8Update." + Формат(ОбщегоНазначенияКлиент.ДатаСеанса(), "ДФ=ггММддЧЧммсс") + "\"; - СтруктураПараметров.Вставить("КаталогВременныхФайловОбновления" , КаталогВременныхФайловОбновления); + ВерсияWindowsВышеVista = ВерсияWindowsВышеVista(); + Попытка + ОбъектAPI = ?(ВерсияWindowsВышеVista, СлужбаПланировщика(), ОбъектWMI()); + Возврат ОбъектAPI <> Неопределено; + Исключение + ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Ошибка", ОписаниеОшибки()); + Возврат Ложь; + КонецПопытки; - СтруктураПараметров.Вставить("АдресРесурсовДляПроверкиНаличияОбновления" , АдресРесурсовДляПроверкиНаличияОбновления(ПроверитьОбновленияДляНовойРедакции)); - СтруктураПараметров.Вставить("АдресСтраницыИнформацииОПолученииДоступаКПользовательскомуСайту" , АдресСтраницыИнформацииОПолученииДоступаКПользовательскомуСайту()); - СтруктураПараметров.Вставить("АдресКаталогаШаблоновНаСервереОбновлений" , АдресКаталогаШаблоновНаСервереОбновлений()); - СтруктураПараметров.Вставить("АдресСервераОбновлений" , АдресСервераОбновлений()); - СтруктураПараметров.Вставить("АдресСервисаПроверкиЛегальности" , АдресСервисаПроверкиЛегальности()); - СтруктураПараметров.Вставить("ИмяФайлаПроверкиНаличияОбновления" , "UpdInfo.txt"); +КонецФункции + +Процедура ЗапуститьСкриптОбновления(Параметры, ПараметрыАдминистрирования) - Возврат СтруктураПараметров; + УдалитьЗадачуПланировщика(Параметры.КодЗадачиПланировщика); + ИмяГлавногоФайлаСкрипта = СформироватьФайлыСкриптаОбновления(Истина, Параметры, ПараметрыАдминистрирования); + ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Информация", + НСтр("ru = 'Выполняется процедура обновления конфигурации:'") + " " + ИмяГлавногоФайлаСкрипта); + ОбновлениеКонфигурацииВызовСервера.ЗаписатьСтатусОбновления(ИмяПользователя(), Истина, Ложь, Ложь, + ИмяГлавногоФайлаСкрипта, ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"]); + + Оболочка = Новый COMОбъект("Wscript.Shell"); + Оболочка.RegWrite("HKCU\Software\Microsoft\Internet Explorer\Styles\MaxScriptStatements", 1107296255, "REG_DWORD"); + + ПутьКПрограммеЗапуска = СтандартныеПодсистемыКлиент.ПапкаСистемныхПриложений() + "mshta.exe"; + + СтрокаЗапуска = """%1"" ""%2"" [p1]%3[/p1][p2]%4[/p2]"; + СтрокаЗапуска = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаЗапуска, + ПутьКПрограммеЗапуска, ИмяГлавногоФайлаСкрипта, + СтрокаUnicode(ПараметрыАдминистрирования.ПарольАдминистратораИнформационнойБазы), + СтрокаUnicode(ПараметрыАдминистрирования.ПарольАдминистратораКластера)); + + ЗапуститьПриложение(СтрокаЗапуска); + +КонецПроцедуры + +// Определяет что текущая версия windows больше Vista (Vista, Windows 7, Windows 8). +// +Функция ВерсияWindowsВышеVista() + + СистемнаяИнформация = Новый СистемнаяИнформация(); + ВерсияОС = СистемнаяИнформация.ВерсияОС; + + ПозицияТочки = СтрНайти(ВерсияОС, "."); + НомерВерсии = Сред(ВерсияОС, ПозицияТочки - 1, 1); + + Возврат Число(НомерВерсии) >= 6; + +КонецФункции + +Функция СлужбаПланировщика() + СлужбаПланировщика = Новый COMObject("Schedule.Service"); + СлужбаПланировщика.Connect(); + Возврат СлужбаПланировщика; +КонецФункции + +Функция ДатаОбновленияУказанаВерно(Параметры) + + ТекущаяДата = ОбщегоНазначенияКлиент.ДатаСеанса(); + Если Параметры.ДатаВремяОбновления < ТекущаяДата Тогда + ТекстСообщения = НСтр("ru = 'Обновление конфигурации может быть запланировано только на будущую дату и время.'"); + ИначеЕсли Параметры.ДатаВремяОбновления > ДобавитьМесяц(ТекущаяДата, 1) Тогда + ТекстСообщения = НСтр("ru = 'Обновление конфигурации может быть запланировано не позднее, чем через месяц относительно текущей даты.'"); + КонецЕсли; + + ДатаУказанаВерно = ПустаяСтрока(ТекстСообщения); + Если Не ДатаУказанаВерно Тогда + ПоказатьПредупреждение(, ТекстСообщения); + КонецЕсли; + + Возврат ДатаУказанаВерно; + +КонецФункции + +Функция ЗапланироватьОбновлениеКонфигурации(Параметры, ПараметрыАдминистрирования) + Если Не УдалитьЗадачуПланировщика(Параметры.КодЗадачиПланировщика) Тогда + Возврат Ложь; + КонецЕсли; + ИмяГлавногоФайлаСкрипта = СформироватьФайлыСкриптаОбновления(Ложь, Параметры, ПараметрыАдминистрирования); + + ИмяЗапускаемогоСкрипта = СтандартныеПодсистемыКлиент.ПапкаСистемныхПриложений() + "wscript.exe"; + ПутьЗапускаемогоСкрипта = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("%1 //nologo ""%2"" /p1:""%3"" /p2:""%4""", + ИмяЗапускаемогоСкрипта, ИмяГлавногоФайлаСкрипта, + СтрокаUnicode(ПараметрыАдминистрирования.ПарольАдминистратораИнформационнойБазы), + СтрокаUnicode(ПараметрыАдминистрирования.ПарольАдминистратораКластера)); + + Параметры.КодЗадачиПланировщика = СоздатьЗадачуПланировщика(ПутьЗапускаемогоСкрипта, Параметры.ДатаВремяОбновления); + ОбновлениеКонфигурацииВызовСервера.ЗаписатьСтатусОбновления(ИмяПользователя(), Параметры.КодЗадачиПланировщика <> 0, Ложь, Ложь); + Возврат Параметры.КодЗадачиПланировщика <> 0; +КонецФункции + +Функция СформироватьФайлыСкриптаОбновления(Знач ИнтерактивныйРежим, Параметры, ПараметрыАдминистрирования) + + ПараметрыРаботыКлиента = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента(); + ЭтоФайловаяБаза = ПараметрыРаботыКлиента.ИнформационнаяБазаФайловая; + + #Если Не ВебКлиент Тогда + КаталогПлатформы = Неопределено; + Параметры.Свойство("КаталогПлатформы", КаталогПлатформы); + КаталогПрограммы = ?(ЗначениеЗаполнено(КаталогПлатформы), КаталогПлатформы, КаталогПрограммы()); + + ИмяИсполняемогоФайлаКонфигуратора = КаталогПрограммы + СтандартныеПодсистемыКлиент.ИмяИсполняемогоФайлаПриложения(Истина); + ИмяИсполняемогоФайлаКлиента = КаталогПрограммы + СтандартныеПодсистемыКлиент.ИмяИсполняемогоФайлаПриложения(); + + ИспользоватьCOMСоединитель = Не (ПараметрыРаботыКлиента.ЭтоБазоваяВерсияКонфигурации Или ПараметрыРаботыКлиента.ЭтоУчебнаяПлатформа); + + ПараметрыСкрипта = ПолучитьПараметрыАутентификацииАдминистратораОбновления(ПараметрыАдминистрирования); + СтрокаСоединенияИнформационнойБазы = ПараметрыСкрипта.СтрокаСоединенияИнформационнойБазы + ПараметрыСкрипта.СтрокаПодключения; + Если СтрЗаканчиваетсяНа(СтрокаСоединенияИнформационнойБазы, ";") Тогда + СтрокаСоединенияИнформационнойБазы = Лев(СтрокаСоединенияИнформационнойБазы, СтрДлина(СтрокаСоединенияИнформационнойБазы) - 1); + КонецЕсли; + + // Определение пути к информационной базе. + ПутьКИнформационнойБазе = СоединенияИБКлиентСервер.ПутьКИнформационнойБазе(, ПараметрыАдминистрирования.ПортКластера); + ПараметрПутиКИнформационнойБазе = ?(ЭтоФайловаяБаза, "/F", "/S") + ПутьКИнформационнойБазе; + СтрокаПутиКИнформационнойБазе = ?(ЭтоФайловаяБаза, ПутьКИнформационнойБазе, ""); + СтрокаПутиКИнформационнойБазе = ОбщегоНазначенияКлиентСервер.ДобавитьКонечныйРазделительПути(СтрЗаменить(СтрокаПутиКИнформационнойБазе, """", "")) + "1Cv8.1CD"; + + АдресЭлектроннойПочты = ?(Параметры.РежимОбновления = 2 И Параметры.ВыслатьОтчетНаПочту, Параметры.АдресЭлектроннойПочты, ""); + КаталогРезервнойКопии = ?(Параметры.СоздаватьРезервнуюКопию = 2, ОбщегоНазначенияКлиентСервер.ДобавитьКонечныйРазделительПути(Параметры.ИмяКаталогаРезервнойКопииИБ), ""); + СоздаватьРезервнуюКопию = ЭтоФайловаяБаза И Параметры.СоздаватьРезервнуюКопию <> 0; + + ВыполнитьОтложенныеОбработчики = Ложь; + ТекстыМакетов = ОбновлениеКонфигурацииВызовСервера.ТекстыМакетов(ИнтерактивныйРежим, + ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"], ВыполнитьОтложенныеОбработчики); + ИмяПользователя = ПараметрыАдминистрирования.ИмяАдминистратораИнформационнойБазы; + + ОбластьПараметров = ТекстыМакетов.ОбластьПараметров; + ВставитьПараметрСкрипта("ИмяИсполняемогоФайлаКонфигуратора" , ИмяИсполняемогоФайлаКонфигуратора , Истина, ОбластьПараметров); + ВставитьПараметрСкрипта("ИмяИсполняемогоФайлаКлиента" , ИмяИсполняемогоФайлаКлиента , Истина, ОбластьПараметров); + ВставитьПараметрСкрипта("ПараметрПутиКИнформационнойБазе" , ПараметрПутиКИнформационнойБазе , Истина, ОбластьПараметров); + ВставитьПараметрСкрипта("СтрокаПутиКФайлуИнформационнойБазы", СтрокаПутиКИнформационнойБазе , Истина, ОбластьПараметров); + ВставитьПараметрСкрипта("СтрокаСоединенияИнформационнойБазы", СтрокаСоединенияИнформационнойБазы , Истина, ОбластьПараметров); + ВставитьПараметрСкрипта("СобытиеЖурналаРегистрации" , СобытиеЖурналаРегистрации() , Истина, ОбластьПараметров); + ВставитьПараметрСкрипта("АдресЭлектроннойПочты" , АдресЭлектроннойПочты , Истина, ОбластьПараметров); + ВставитьПараметрСкрипта("ИмяАдминистратораОбновления" , ИмяПользователя , Истина, ОбластьПараметров); + ВставитьПараметрСкрипта("ИмяCOMСоединителя" , ПараметрыРаботыКлиента.ИмяCOMСоединителя , Истина, ОбластьПараметров); + ВставитьПараметрСкрипта("КаталогРезервнойКопии" , КаталогРезервнойКопии , Истина, ОбластьПараметров); + ВставитьПараметрСкрипта("СоздаватьРезервнуюКопию" , СоздаватьРезервнуюКопию , Ложь , ОбластьПараметров); + ВставитьПараметрСкрипта("ВосстанавливатьИнформационнуюБазу" , Параметры.ВосстанавливатьИнформационнуюБазу, Ложь , ОбластьПараметров); + ВставитьПараметрСкрипта("БлокироватьСоединенияИБ" , Не ЭтоФайловаяБаза , Ложь , ОбластьПараметров); + ВставитьПараметрСкрипта("ИспользоватьCOMСоединитель" , ИспользоватьCOMСоединитель , Ложь , ОбластьПараметров); + ВставитьПараметрСкрипта("ЗапускСеансаПослеОбновления" , Не Параметры.ЗавершениеРаботыСистемы , Ложь , ОбластьПараметров); + ВставитьПараметрСкрипта("ВыполнятьСжатиеТаблицИБ" , ЭтоФайловаяБаза , Ложь , ОбластьПараметров); + ВставитьПараметрСкрипта("ВыполнитьОтложенныеОбработчики" , ВыполнитьОтложенныеОбработчики , Ложь , ОбластьПараметров); + ОбластьПараметров = СтрЗаменить(ОбластьПараметров, "[ИменаФайловОбновления]", ИменаФайловОбновления(Параметры)); + + ТекстыМакетов.МакетФайлаОбновленияКонфигурации = ОбластьПараметров + ТекстыМакетов.МакетФайлаОбновленияКонфигурации; + ТекстыМакетов.Удалить("ОбластьПараметров"); + + Возврат СоздатьФайлыСкрипта(ТекстыМакетов, ИнтерактивныйРежим); #КонецЕсли + КонецФункции -// Возвращает параметры найденного (доступного) обновления конфигурации. -Функция ПолучитьДоступноеОбновлениеКонфигурации() Экспорт - ИмяПараметра = "СтандартныеПодсистемы.ДоступноеОбновлениеКонфигурации"; - Если ПараметрыПриложения[ИмяПараметра] = Неопределено Тогда - ПараметрыПриложения.Вставить(ИмяПараметра, Новый Структура); - ПараметрыПриложения[ИмяПараметра].Вставить("ИсточникОбновления", -1); - ПараметрыПриложения[ИмяПараметра].Вставить("НуженФайлОбновления", Ложь); - ПараметрыПриложения[ИмяПараметра].Вставить("ФлагАвтоПереходаНаСтраницуСОбновлением", Ложь); - ПараметрыПриложения[ИмяПараметра].Вставить("ПараметрыФайлаПроверкиОбновления", Неопределено); - ПараметрыПриложения[ИмяПараметра].Вставить("ИмяСтраницы", ""); - ПараметрыПриложения[ИмяПараметра].Вставить("ВремяПолученияОбновления", ОбщегоНазначенияКлиент.ДатаСеанса()); - ПараметрыПриложения[ИмяПараметра].Вставить("ПоследняяВерсияКонфигурации", ""); +Процедура ВставитьПараметрСкрипта(Знач ИмяПараметра, Знач ЗначениеПараметра, Форматировать, ОбластьПараметров) + Если Форматировать = Истина Тогда + ЗначениеПараметра = Форматировать(ЗначениеПараметра); + ИначеЕсли Форматировать = Ложь Тогда + ЗначениеПараметра = ?(ЗначениеПараметра, "true", "false"); + КонецЕсли; + ОбластьПараметров = СтрЗаменить(ОбластьПараметров, "[" + ИмяПараметра + "]", ЗначениеПараметра); +КонецПроцедуры + +Функция ИменаФайловОбновления(Параметры) + + ИмяПараметра = "СтандартныеПодсистемы.ИменаФайловОбновления"; + Если ПараметрыПриложения.Получить(ИмяПараметра) <> Неопределено Тогда + Возврат ПараметрыПриложения[ИмяПараметра]; КонецЕсли; - Возврат ПараметрыПриложения[ИмяПараметра]; + Если Параметры.Свойство("НуженФайлОбновления") И Не Параметры.НуженФайлОбновления Тогда + ИменаФайловОбновления = ""; + Иначе + Если ПустаяСтрока(Параметры.ИмяФайлаОбновления) Тогда + ИменаФайлов = Новый Массив; + Для Каждого ФайлОбновления Из Параметры.ФайлыОбновления Цикл + ПрефиксФайлаОбновления = ?(ФайлОбновления.ВыполнитьОбработчикиОбновления, "+", ""); + ИменаФайлов.Добавить(Форматировать(ПрефиксФайлаОбновления + ФайлОбновления.ПолноеИмяФайлаОбновления)); + КонецЦикла; + ИменаФайловОбновления = СтрСоединить(ИменаФайлов, ","); + Иначе + ИменаФайловОбновления = Форматировать(Параметры.ИмяФайлаОбновления); + КонецЕсли; + КонецЕсли; + + Возврат "[" + ИменаФайловОбновления + "]"; + КонецФункции -// Получить адрес страницы на веб-сервере поставщика конфигурации, на которой находится -// информация о доступных обновлениях. -// -// Возвращаемое значение: -// Строка - адрес веб-страницы. -// -Функция АдресРесурсовДляПроверкиНаличияОбновления(ПроверитьОбновленияДляНовойРедакции = Ложь) +Функция Форматировать(Знач Текст) + Текст = СтрЗаменить(Текст, "\", "\\"); + Текст = СтрЗаменить(Текст, """", "\"""); + Текст = СтрЗаменить(Текст, "'", "\'"); + Возврат "'" + Текст + "'"; +КонецФункции + +Функция СоздатьФайлыСкрипта(ТекстыМакетов, ИнтерактивныйРежим) - НастройкиОбновления = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().НастройкиОбновления; - КороткоеИмяКонфигурации = НастройкиОбновления.КороткоеИмяКонфигурации; - КороткоеИмяКонфигурации = СтрЗаменить(КороткоеИмяКонфигурации, "\", "/"); - Если ПроверитьОбновленияДляНовойРедакции Тогда - КороткоеИмяКонфигурации = СтрЗаменить(КороткоеИмяКонфигурации, ТекущаяРедакцияПлатформы(), СледующаяРедакцияПлатформы()); + КаталогВременныхФайловОбновления = КаталогВременныхФайлов() + "1Cv8Update." + Формат(ОбщегоНазначенияКлиент.ДатаСеанса(), "ДФ=ггММддЧЧммсс") + "\"; + СоздатьКаталог(КаталогВременныхФайловОбновления); + + ФайлСкрипта = Новый ТекстовыйДокумент; + ФайлСкрипта.Вывод = ИспользованиеВывода.Разрешить; + ФайлСкрипта.УстановитьТекст(ТекстыМакетов.МакетФайлаОбновленияКонфигурации); + + ИмяФайлаСкрипта = КаталогВременныхФайловОбновления + "main.js"; + ФайлСкрипта.Записать(ИмяФайлаСкрипта, КодировкаТекста.UTF16); + + // Вспомогательный файл: helpers.js. + ФайлСкрипта = Новый ТекстовыйДокумент; + ФайлСкрипта.Вывод = ИспользованиеВывода.Разрешить; + ФайлСкрипта.УстановитьТекст(ТекстыМакетов.ДопФайлОбновленияКонфигурации); + ФайлСкрипта.Записать(КаталогВременныхФайловОбновления + "helpers.js", КодировкаТекста.UTF16); + + Если ИнтерактивныйРежим Тогда + // Вспомогательный файл: splash.png. + БиблиотекаКартинок.ЗаставкаВнешнейОперации.Записать(КаталогВременныхФайловОбновления + "splash.png"); + // Вспомогательный файл: splash.ico. + БиблиотекаКартинок.ЗначокЗаставкиВнешнейОперации.Записать(КаталогВременныхФайловОбновления + "splash.ico"); + // Вспомогательный файл: progress.gif. + БиблиотекаКартинок.ДлительнаяОперация48.Записать(КаталогВременныхФайловОбновления + "progress.gif"); + // Главный файл заставки: splash.hta. + ИмяГлавногоФайлаСкрипта = КаталогВременныхФайловОбновления + "splash.hta"; + ФайлСкрипта = Новый ТекстовыйДокумент; + ФайлСкрипта.Вывод = ИспользованиеВывода.Разрешить; + ФайлСкрипта.УстановитьТекст(ТекстыМакетов.ЗаставкаОбновленияКонфигурации); + ФайлСкрипта.Записать(ИмяГлавногоФайлаСкрипта, КодировкаТекста.UTF16); + Иначе + ИмяГлавногоФайлаСкрипта = КаталогВременныхФайловОбновления + "updater.js"; + ФайлСкрипта = Новый ТекстовыйДокумент; + ФайлСкрипта.Вывод = ИспользованиеВывода.Разрешить; + ФайлСкрипта.УстановитьТекст(ТекстыМакетов.НеинтерактивноеОбновлениеКонфигурации); + ФайлСкрипта.Записать(ИмяГлавногоФайлаСкрипта, КодировкаТекста.UTF16); КонецЕсли; - Результат = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("%1%2/", ОбновлениеКонфигурацииКлиентСервер.ДобавитьКонечныйРазделительПути( - НастройкиОбновления.АдресРесурсаДляПроверкиНаличияОбновления), КороткоеИмяКонфигурации); + ФайлЛога = Новый ТекстовыйДокумент; + ФайлЛога.Вывод = ИспользованиеВывода.Разрешить; + ФайлЛога.УстановитьТекст(СтандартныеПодсистемыКлиент.ИнформацияДляПоддержки()); + ФайлЛога.Записать(КаталогВременныхФайловОбновления + "templog.txt", КодировкаТекста.Системная); + + Возврат ИмяГлавногоФайлаСкрипта; + +КонецФункции + +Функция ПолучитьПараметрыАутентификацииАдминистратораОбновления(ПараметрыАдминистрирования) + + Результат = Новый Структура("СтрокаПодключения, СтрокаСоединенияИнформационнойБазы"); + + ПортКластера = ПараметрыАдминистрирования.ПортКластера; + ТекущиеСоединения = СоединенияИБВызовСервера.ИнформацияОСоединениях(Истина, + ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"], ПортКластера); + Результат.СтрокаСоединенияИнформационнойБазы = ТекущиеСоединения.СтрокаСоединенияИнформационнойБазы; + Результат.СтрокаПодключения = "Usr=""{0}"";Pwd=""{1}"""; + Возврат Результат; КонецФункции -Функция ТекущаяРедакцияПлатформы() +Функция УдалитьЗадачуПланировщика(КодЗадачи) - СистемнаяИнформация = Новый СистемнаяИнформация; - МассивТекущейВерсии = СтрРазделить(СистемнаяИнформация.ВерсияПриложения, "."); - ТекущаяРедакция = МассивТекущейВерсии[0] + МассивТекущейВерсии[1]; + Если КодЗадачи = 0 Тогда + Возврат Истина; + КонецЕсли; - Возврат ТекущаяРедакция; + Если Не СуществуетЗадачаПланировщика(КодЗадачи) Тогда + Возврат Истина; + КонецЕсли; -КонецФункции - -Функция СледующаяРедакцияПлатформы() Экспорт - - СистемнаяИнформация = Новый СистемнаяИнформация; - МассивТекущейВерсии = СтрРазделить(СистемнаяИнформация.ВерсияПриложения, "."); - СледующаяРедакция = МассивТекущейВерсии[0] + Строка(Число(МассивТекущейВерсии[1]) +1); - - Возврат СледующаяРедакция; - -КонецФункции - -// Получить адрес веб-страницы с информацией о том, как получить доступ к -// пользовательскому разделу на сайте поставщика конфигурации. -// -// Возвращаемое значение: -// Строка - адрес веб-страницы. -Функция АдресСтраницыИнформацииОПолученииДоступаКПользовательскомуСайту() - - АдресСтраницы = "http://users.v8.1c.ru/Rules.aspx"; // Значение по умолчанию - ОбновлениеКонфигурацииКлиентПереопределяемый.ПриОпределенииАдресаСтраницыПолученияДоступаКСайтуОбновлений(АдресСтраницы); - - Возврат АдресСтраницы; - -КонецФункции - -// Получить адрес каталога файлов обновления на сервере обновлений. -// -// Возвращаемое значение: -// Строка - адрес каталога на веб-сервере. -// -Функция АдресКаталогаШаблоновНаСервереОбновлений() - - СерверОбновлений = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().НастройкиОбновления.КаталогОбновлений; - - Если СтрНайти(СерверОбновлений, "ftp://") <> 0 Тогда - Протокол = "ftp://"; + Если ВерсияWindowsВышеVista() Тогда + Возврат УдалитьЗадачуПланировщикаScheduleService(КодЗадачи); Иначе - Протокол = "http://"; + Возврат УдалитьЗадачуПланировщикаScheduledJob(КодЗадачи); КонецЕсли; - СерверОбновлений = СтрЗаменить(СерверОбновлений, Протокол, ""); - КаталогШаблоновНаСервере = ""; - Позиция = СтрНайти(СерверОбновлений, "/"); - Если Позиция > 0 Тогда - КаталогШаблоновНаСервере = Сред(СерверОбновлений, Позиция, СтрДлина(СерверОбновлений)); - КонецЕсли; - Возврат КаталогШаблоновНаСервере; - КонецФункции -// Получить адрес сервиса проверки легальности получения обновления. -// -// Возвращаемое значение: -// Строка - адрес сервиса. -// -Функция АдресСервисаПроверкиЛегальности() +Функция УдалитьЗадачуПланировщикаScheduledJob(КодЗадачи) - Возврат СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().НастройкиОбновления.АдресСервисаПроверкиЛегальности; + Попытка + + Сервис = ОбъектWMI(); + Задача = ПолучитьЗадачуПланировщикаScheduledJob(КодЗадачи); + КодОшибки = Задача.Delete(); + + Исключение + + ТекстСообщения = НСтр("ru = 'Ошибка при удалении задачи планировщика: %1'"); + ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Ошибка", + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, ОписаниеОшибки())); + Возврат Ложь; + КонецПопытки; + + Результат = КодОшибки = 0; + Если Не Результат Тогда // Коды ошибок: http://msdn2.microsoft.com/en-us/library/aa389957(VS.85).aspx. + ТекстСообщения = НСтр("ru = 'Ошибка при удалении задачи планировщика: %1'"); + ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Ошибка", + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, КодОшибки)); + Возврат Результат; + КонецЕсли; + ТекстСообщения = НСтр("ru = 'Задача планировщика успешно удалена (код задачи: %1).'"); + ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Информация", + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, КодЗадачи)); + КодЗадачи = 0; + + Возврат Результат; КонецФункции -// Получить адрес сервера обновлений. -// -// Возвращаемое значение: -// Строка - адрес веб-сервера. -// -Функция АдресСервераОбновлений() +Функция УдалитьЗадачуПланировщикаScheduleService(КодЗадачи) - СерверОбновлений = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().НастройкиОбновления.КаталогОбновлений; + ИмяЗадачи = ИмяЗадачиScheduleService(КодЗадачи); - Если СтрНайти(СерверОбновлений, "ftp://") <> 0 Тогда - Протокол = "ftp://"; + Попытка + + СлужбаПланировщика = СлужбаПланировщика(); + Корень = СлужбаПланировщика.GetFolder("\"); + Результат = Корень.DeleteTask(ИмяЗадачи, 0); + + Исключение + + ТекстСообщения = НСтр("ru = 'Ошибка при удалении задачи планировщика: %1'"); + ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Ошибка", + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, ОписаниеОшибки())); + Возврат Ложь; + + КонецПопытки; + + Возврат Истина; + +КонецФункции + +Функция ОбъектWMI() + // WMI: http://www.microsoft.com/technet/scriptcenter/resources/wmifaq.mspx. + Локатор = Новый COMObject("WbemScripting.SWbemLocator"); + Возврат Локатор.ConnectServer(".", "\root\cimv2"); +КонецФункции + +Функция СоздатьЗадачуПланировщика(Знач ИмяФайлаПрограммы, Знач ДатаВремя) + + Если ВерсияWindowsВышеVista() Тогда + Возврат СоздатьЗадачуПланировщикаScheduleService(ИмяФайлаПрограммы, ДатаВремя); Иначе - Протокол = "http://"; + Возврат СоздатьЗадачуПланировщикаScheduledJob(ИмяФайлаПрограммы, ДатаВремя); КонецЕсли; - СерверОбновлений = СтрЗаменить(СерверОбновлений, Протокол, ""); - Позиция = СтрНайти(СерверОбновлений, "/"); - Если Позиция > 0 Тогда - СерверОбновлений = Сред(СерверОбновлений, 1, Позиция - 1); - КонецЕсли; - - Возврат Протокол + СерверОбновлений; - КонецФункции -// Функция, выполняет включение и отключение проверки наличия обновления по расписанию. -// -// Параметры: -// ФлагПодключитьИЛИОтключить: Булево, если ИСТИНА - проводится включение проверки, иначе отключение. -Функция ПодключитьОтключитьПроверкуПоРасписанию(ФлагПодключитьИЛИОтключить = Истина) Экспорт - Если ФлагПодключитьИЛИОтключить Тогда - ПодключитьОбработчикОжидания("ОбработатьПроверкуОбновленияПоРасписанию", 60 * 5); // каждые 5 минут - Иначе - ОтключитьОбработчикОжидания("ОбработатьПроверкуОбновленияПоРасписанию"); - КонецЕсли; -КонецФункции - -// Процедура, выполняющая проверку наличия обновления для конфигурации через сеть Интернет. -// -// Параметры: -// ВыдаватьСообщения: Булево, признак вывода пользователю сообщений об ошибках. -Процедура ПроверитьНаличиеОбновленияЧерезИнтернет(ВыдаватьСообщения = Ложь, ДоступноОбновлениеДляНовойРедакции = Ложь) Экспорт - - Состояние(НСтр("ru = 'Проверка наличия обновления в Интернете'")); - Параметры = ПолучитьДоступноеОбновлениеКонфигурации(); - Если Параметры.ИсточникОбновления <> -1 Тогда - ВремяПолученияОбновления = Параметры.ВремяПолученияОбновления; - Если ВремяПолученияОбновления <> Неопределено И ОбщегоНазначенияКлиент.ДатаСеанса() - ВремяПолученияОбновления < 30 Тогда - Возврат; - КонецЕсли; - КонецЕсли; - - Параметры.ПараметрыФайлаПроверкиОбновления = ПолучитьФайлПроверкиНаличияОбновлений(ВыдаватьСообщения); - Если ТипЗнч(Параметры.ПараметрыФайлаПроверкиОбновления) = Тип("Строка") Тогда - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Предупреждение", - НСтр("ru = 'Невозможно подключиться к сети Интернет для проверки обновлений.'")); - Параметры.ИмяСтраницы = "ПодключениеКИнтернет"; - Возврат; - КонецЕсли; - - Параметры.ПоследняяВерсияКонфигурации = Параметры.ПараметрыФайлаПроверкиОбновления.Version; - ВерсияКонфигурации = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ВерсияКонфигурации; - Если ОбщегоНазначенияКлиентСервер.СравнитьВерсии(ВерсияКонфигурации, Параметры.ПоследняяВерсияКонфигурации) >= 0 Тогда - - ОбновленияНеОбнаружено = Истина; - - Если ПроверятьОбновлениеДляСледующейРедакцииПлатформы() Тогда - - Параметры.ПараметрыФайлаПроверкиОбновления = ПолучитьФайлПроверкиНаличияОбновлений(Ложь, Истина); - - Если ТипЗнч(Параметры.ПараметрыФайлаПроверкиОбновления) <> Тип("Строка") Тогда - - Параметры.ПоследняяВерсияКонфигурации = Параметры.ПараметрыФайлаПроверкиОбновления.Version; - ВерсияКонфигурации = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ВерсияКонфигурации; - - Если ОбщегоНазначенияКлиентСервер.СравнитьВерсии(ВерсияКонфигурации, Параметры.ПоследняяВерсияКонфигурации) < 0 Тогда - ОбновленияНеОбнаружено = Ложь; - ДоступноОбновлениеДляНовойРедакции = Истина; - КонецЕсли; - - КонецЕсли; - - КонецЕсли; - - Если ОбновленияНеОбнаружено Тогда - - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Информация", - НСтр("ru = 'Обновление не требуется: последняя версия конфигурации уже установлена.'")); - - Параметры.ИмяСтраницы = "ОбновленияНеОбнаружено"; - Возврат; - - КонецЕсли; - КонецЕсли; - - ТекстСообщения = НСтр("ru = 'Обнаружена более новая версия конфигурации в Интернете: %1.'"); - ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, Параметры.ПоследняяВерсияКонфигурации); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Информация", ТекстСообщения); - - Параметры.ИсточникОбновления = 0; - Параметры.ИмяСтраницы = "ДоступноеОбновление"; - Параметры.ВремяПолученияОбновления = ОбщегоНазначенияКлиент.ДатаСеанса(); - -КонецПроцедуры - -// Процедура проверяет возможность и при необходимости выполняет проверку наличия обновления конфигурации через сеть -// Интернет. -Процедура ПроверитьОбновлениеПоРасписанию() Экспорт - - ИмяПараметра = "СтандартныеПодсистемы.НастройкиОбновленияКонфигурации"; - Если ПараметрыПриложения[ИмяПараметра] = Неопределено Тогда - ПараметрыПриложения.Вставить(ИмяПараметра, Неопределено); - КонецЕсли; - ПараметрыПриложения[ИмяПараметра] = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().НастройкиОбновления.НастройкиОбновленияКонфигурации; - НастройкиОбновленияКонфигурации = ПараметрыПриложения[ИмяПараметра]; - - ОбновлениеКонфигурацииКлиентСервер.ПолучитьОбновленныеНастройкиОбновленияКонфигурации(ПараметрыПриложения[ИмяПараметра]); - РасписаниеПроверкиНаличияОбновления = НастройкиОбновленияКонфигурации.РасписаниеПроверкиНаличияОбновления; - Если НастройкиОбновленияКонфигурации.ПроверятьНаличиеОбновленияПриЗапуске <> 1 - ИЛИ РасписаниеПроверкиНаличияОбновления = Неопределено Тогда - Возврат; - КонецЕсли; - - Расписание = ОбщегоНазначенияКлиентСервер.СтруктураВРасписание(РасписаниеПроверкиНаличияОбновления); - ДатаПроверки = ОбщегоНазначенияКлиент.ДатаСеанса(); - Если НЕ Расписание.ТребуетсяВыполнение(ДатаПроверки, НастройкиОбновленияКонфигурации.ВремяПоследнейПроверкиОбновления) Тогда - Возврат; - КонецЕсли; - - НастройкиОбновленияКонфигурации.ВремяПоследнейПроверкиОбновления = ДатаПроверки; - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(),, - НСтр("ru = 'Проверка наличия обновления в сети Интернет по расписанию.'")); - - НаименованиеСтраницыДоступногоОбновления = "ДоступноеОбновление"; - ПроверитьНаличиеОбновленияЧерезИнтернет(); - Параметры = ПолучитьДоступноеОбновлениеКонфигурации(); - Если Параметры.ИсточникОбновления <> -1 И Параметры.ИмяСтраницы = НаименованиеСтраницыДоступногоОбновления Тогда - - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(),, - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Обнаружена новая версия конфигурации: %1'"), Параметры.ПараметрыФайлаПроверкиОбновления.Version)); - - НастройкиОбновленияКонфигурации.ИсточникОбновления = 0; - НастройкиОбновленияКонфигурации.РасписаниеПроверкиНаличияОбновления = РасписаниеПроверкиНаличияОбновления; - ОбновлениеКонфигурацииВызовСервера.ЗаписатьСтруктуруНастроекПомощника(НастройкиОбновленияКонфигурации, ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"]); - - Параметры.ИсточникОбновления = НастройкиОбновленияКонфигурации.ИсточникОбновления; - Параметры.НуженФайлОбновления = НастройкиОбновленияКонфигурации.НуженФайлОбновления; - Параметры.ФлагАвтоПереходаНаСтраницуСОбновлением = Истина; - ПоказатьОповещениеПользователя(НСтр("ru = 'Доступно обновление конфигурации'"), - "e1cib/app/Обработка.ПоискИУстановкаОбновлений", - НСтр("ru = 'Версия:'") + " " + Параметры.ПараметрыФайлаПроверкиОбновления.Version, - БиблиотекаКартинок.Информация32); - Иначе - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(),, - НСтр("ru = 'Доступных обновлений не обнаружено.'")); - КонецЕсли; - ОбновлениеКонфигурацииВызовСервера.ЗаписатьСтруктуруНастроекПомощника(НастройкиОбновленияКонфигурации, ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"]); - -КонецПроцедуры - -Функция ПроверятьОбновлениеДляСледующейРедакцииПлатформы() - - ПроверятьОбновление = Ложь; - ОбновлениеКонфигурацииКлиентПереопределяемый.ПриПроверкеОбновленияДляСледующейРедакцииПлатформы(ПроверятьОбновление); - - Возврат ПроверятьОбновление; - -КонецФункции - -// Функция, возвращает путь к каталогу временных файлов для проведения обновления. -Функция КаталогLocalAppData() - App = Новый COMОбъект("Shell.Application"); - Folder = App.Namespace(28); - Результат = Folder.Self.Path; - Возврат ОбновлениеКонфигурацииКлиентСервер.ДобавитьКонечныйРазделительПути(Результат); -КонецФункции - -// Функция, открывает интерактивно адрес в сети Интернет. +// Создать задачу планировщика ОС Windows. // // Параметры: -// АдресСтраницы - строка, путь к странице в сети Интернет, которую надо открыть. -// Заголовок - строка, заголовок окна "браузера". +// ИмяФайлаПрограммы - Строка - путь к запускаемому приложению или файлу. +// ДатаВремя - Дата - Дата и время запуска. Значение даты может быть +// в интервале [текущая дата, текущая дата + 30 дней). // -Процедура ОткрытьВебСтраницу(Знач АдресСтраницы, Знач Заголовок = "") Экспорт +// Возвращаемое значение: +// Число - код созданной задачи планировщика или "Неопределено" при ошибке. +// +Функция СоздатьЗадачуПланировщикаScheduledJob(Знач ИмяФайлаПрограммы, Знач ДатаВремя) - ОткрытьФорму("Обработка.ПоискИУстановкаОбновлений.Форма.Обозреватель", - Новый Структура("АдресСтраницы,Заголовок", АдресСтраницы, Заголовок)); + Попытка + + Планировщик = ОбъектWMI().Get("Win32_ScheduledJob"); + КодЗадачи = 0; + КодОшибки = Планировщик.Create(ИмяФайлаПрограммы, // Command + ПреобразоватьВремяВФорматCIM(ДатаВремя), // StartTime + Ложь, // RunRepeatedly + , // DaysOfWeek + Pow(2, День(ДатаВремя) - 1), // DaysOfMonth + Ложь, // InteractWithDesktop + КодЗадачи); // out JobId + + Исключение + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании задачи планировщика: %1'"), ОписаниеОшибки()); + ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Ошибка", ТекстСообщения); + Возврат 0; + КонецПопытки; + + Если КодОшибки <> 0 Тогда // Коды ошибок: http://msdn2.microsoft.com/en-us/library/aa389389(VS.85).aspx. + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании задачи планировщика: %1'"), КодОшибки); + ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Ошибка", ТекстСообщения); + Возврат 0; + КонецЕсли; + + ТекстСообщения = НСтр("ru = 'Задача планировщика успешно запланирована (команда: %1; дата: %2; код задачи: %3).'"); + ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), + "Информация", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, ИмяФайлаПрограммы, ДатаВремя, КодЗадачи)); + + Возврат КодЗадачи; + +КонецФункции -КонецПроцедуры +Функция СоздатьЗадачуПланировщикаScheduleService(Знач ИмяФайлаПрограммы, Знач ДатаВремя) + + ГенераторСлучайныхЧисел = Новый ГенераторСлучайныхЧисел; + КодЗадачи = Формат(ГенераторСлучайныхЧисел.СлучайноеЧисло(1000, 9999), "ЧГ=0"); + ИмяЗадачи = ИмяЗадачиScheduleService(КодЗадачи); + ДатаЗапуска = Формат(ДатаВремя, "ДФ=yyyy-MM-ddTHH:mm:ss"); + + РазделительИмениИПараметров = СтрНайти(ИмяФайлаПрограммы, ".exe") + 3; + ИмяПрограммы = Лев(ИмяФайлаПрограммы, РазделительИмениИПараметров); + ПараметрыЗапуска = Сред(ИмяФайлаПрограммы, РазделительИмениИПараметров + 2); + + Попытка + + СлужбаПланировщика = СлужбаПланировщика(); + ОписаниеЗадачи = СлужбаПланировщика.NewTask(0); + ОписаниеЗадачи.RegistrationInfo.Description = НСтр("ru = 'Обновление конфигурации 1С:Предприятие'"); + + ОписаниеЗадачи.Principal.RunLevel = 1; + + ОписаниеЗадачи.Settings.Enabled = Истина; + ОписаниеЗадачи.Settings.Hidden = Ложь; + + Триггер = ОписаниеЗадачи.Triggers.Create(1); + Триггер.StartBoundary = ДатаЗапуска; + Триггер.Enabled = Истина; + + Действие = ОписаниеЗадачи.Actions.Create(0); + Действие.Path = ИмяПрограммы; + Действие.Arguments = ПараметрыЗапуска; + + Корень = СлужбаПланировщика.GetFolder("\"); + Задача = Корень.RegisterTaskDefinition(ИмяЗадачи, ОписаниеЗадачи, 6, "SYSTEM", Неопределено, 4); + + Исключение + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании задачи планировщика: %1'"), ОписаниеОшибки()); + ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Ошибка", ТекстСообщения); + Возврат 0; + КонецПопытки; + + Возврат КодЗадачи; + +КонецФункции + +Функция ИмяЗадачиScheduleService(Знач КодЗадачи) + + Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Обновление конфигурации (%1)'"), Формат(КодЗадачи, "ЧГ=0")); + +КонецФункции + +Функция ПреобразоватьВремяВФорматCIM(ДатаВремя) + Локатор = Новый COMObject("WbemScripting.SWbemLocator"); + Сервис = Локатор.ConnectServer(".", "\root\cimv2"); + ComputerSystems = Сервис.ExecQuery("Select * from Win32_ComputerSystem"); + Для Каждого ComputerSystem Из ComputerSystems Цикл + Разница = ComputerSystem.CurrentTimeZone; + Час = Формат(ДатаВремя,"ДФ=ЧЧ"); + Минута = Формат(ДатаВремя,"ДФ=мм"); + Разница = ?(Разница > 0, "+" + Формат(Разница, "ЧГ=0"), Формат(Разница, "ЧГ=0")); + Возврат "********" + Час + Минута + "00.000000" + Разница; + КонецЦикла; + + Возврат Неопределено; +КонецФункции + +Функция СтрокаUnicode(Строка) + + Результат = ""; + + Для НомерСимвола = 1 По СтрДлина(Строка) Цикл + + Символ = Формат(КодСимвола(Сред(Строка, НомерСимвола, 1)), "ЧГ=0"); + Символ = СтроковыеФункцииКлиентСервер.ДополнитьСтроку(Символ, 4); + Результат = Результат + Символ; + + КонецЦикла; + + Возврат Результат; + +КонецФункции + +Функция СуществуетЗадачаПланировщика(Знач КодЗадачи) Экспорт + + Если КодЗадачи = 0 Тогда + Возврат Ложь; + КонецЕсли; + + Если ВерсияWindowsВышеVista() Тогда + ЗадачаПланировщика = ПолучитьЗадачуПланировщикаScheduleService(КодЗадачи); + Иначе + ЗадачаПланировщика = ПолучитьЗадачуПланировщикаScheduledJob(КодЗадачи); + КонецЕсли; + + Возврат ЗадачаПланировщика <> Неопределено; + +КонецФункции + +Функция ПолучитьЗадачуПланировщикаScheduledJob(Знач КодЗадачи) + + Попытка + Возврат ОбъектWMI().Get("Win32_ScheduledJob.JobID=" + КодЗадачи); + Исключение + Возврат Неопределено; + КонецПопытки; + +КонецФункции + +Функция ПолучитьЗадачуПланировщикаScheduleService(Знач КодЗадачи) + + НайденнаяЗадача = Неопределено; + ИмяЗадачи = ИмяЗадачиScheduleService(КодЗадачи); + + СлужбаПланировщика = СлужбаПланировщика(); + Корень = СлужбаПланировщика.GetFolder("\"); + СписокЗадач = Корень.GetTasks(0); + + Для Каждого Задача Из СписокЗадач Цикл + Если Задача.Name = ИмяЗадачи Тогда + НайденнаяЗадача = Задача; + КонецЕсли; + КонецЦикла; + + Возврат НайденнаяЗадача; + +КонецФункции // Возвращает имя события для записи журнала регистрации. Функция СобытиеЖурналаРегистрации() Экспорт Возврат НСтр("ru = 'Обновление конфигурации'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); КонецФункции +// Проверяет наличие обновления конфигурации при запуске программы. +// +Процедура ПроверитьОбновлениеКонфигурации() + + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда + Возврат; + КонецЕсли; + +#Если НЕ ВебКлиент Тогда + ПараметрыРаботыКлиента = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиентаПриЗапуске(); + Если ПараметрыРаботыКлиента.РазделениеВключено Или Не ПараметрыРаботыКлиента.ДоступноИспользованиеРазделенныхДанных Тогда + Возврат; + КонецЕсли; + + НастройкиОбновления = ПараметрыРаботыКлиента.НастройкиОбновления; + НаличиеОбновления = НастройкиОбновления.ПроверитьПрошлыеОбновленияБазы; + + Если НаличиеОбновления Тогда + // Надо завершить предыдущее обновление. + ПоказатьПоискИУстановкуОбновлений(); + Возврат; + КонецЕсли; + + Если НастройкиОбновления.КонфигурацияИзменена Тогда + ПоказатьОповещениеПользователя(НСтр("ru = 'Обновление конфигурации'"), + "e1cib/app/Обработка.УстановкаОбновлений", + НСтр("ru = 'Конфигурация отличается от основной конфигурации информационной базы.'"), + БиблиотекаКартинок.Информация32); + КонецЕсли; + +#КонецЕсли + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Обработчики условных вызовов в другие подсистемы. @@ -630,21 +742,24 @@ // Доопределяет список предупреждений пользователю перед завершением работы системы. // // Параметры: +// Отказ - Булево - Признак отказа от выхода из программы. Если в теле процедуры-обработчика установить +// данному параметру значение Истина, то работа с программой не будет завершена. // Предупреждения - Массив - в массив можно добавить элементы типа Структура, -// свойства которой см. в СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершениеРаботы. +// свойства которой см. в СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершенииРаботы. // -Процедура ПриПолученииСпискаПредупрежденийЗавершенияРаботы(Предупреждения) Экспорт +Процедура ПередЗавершениемРаботыСистемы(Отказ, Предупреждения) Экспорт // Предупреждение: при выставлении своего флажка подсистема "Обновление конфигурации" очищает список // всех ранее добавленных предупреждений. Если ПараметрыПриложения["СтандартныеПодсистемы.ПредлагатьОбновлениеИнформационнойБазыПриЗавершенииСеанса"] = Истина Тогда - ПараметрыПредупреждения = СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершениеРаботы(); + ПараметрыПредупреждения = СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершенииРаботы(); ПараметрыПредупреждения.ТекстФлажка = НСтр("ru = 'Установить обновление конфигурации'"); + ПараметрыПредупреждения.ТекстПредупреждения = НСтр("ru = 'Запланирована установка обновления'"); ПараметрыПредупреждения.Приоритет = 50; ПараметрыПредупреждения.ВывестиОдноПредупреждение = Истина; ДействиеПриУстановленномФлажке = ПараметрыПредупреждения.ДействиеПриУстановленномФлажке; - ДействиеПриУстановленномФлажке.Форма = ОбновлениеКонфигурацииКлиентСервер.ИмяФормыОбработкиОбновлениеКонфигурации(); + ДействиеПриУстановленномФлажке.Форма = "Обработка.УстановкаОбновлений.Форма.Форма"; ДействиеПриУстановленномФлажке.ПараметрыФормы = Новый Структура("ЗавершениеРаботыСистемы, ВыполнитьОбновление", Истина, Истина); Предупреждения.Добавить(ПараметрыПредупреждения); @@ -661,782 +776,4 @@ КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// Процедуры для проверки легальности получения обновления. - -#Если Не ВебКлиент Тогда - -// Возвращает структуру ответа веб-сервера. -// -Функция ПроверитьЛегальностьСкачиванияОбновления(ПараметрыЗапроса) Экспорт - - ПроверятьЛегальность = Истина; - ОбновлениеКонфигурацииКлиентПереопределяемый.ПриПроверкеЛегальностиСкачиванияОбновлений(ПроверятьЛегальность); - - Если Не ПроверятьЛегальность Тогда - Возврат Новый Структура("ЗначениеРезультата, ТекстОшибки", Истина, ""); - КонецЕсли; - - Попытка - // Создание описания сервиса - ОписаниеСервиса = ОписаниеСервисаПроверкиЛегальности(); - Исключение - ТекстОшибки = НСтр("ru = 'Ошибка создания описания веб-сервиса проверки легальности получения обновления.'"); - Возврат СтруктураОтветаВебСервера(ТекстОшибки, Истина,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - КонецПопытки; - - // Определение доступности веб-сервиса. - Попытка - - ОтветСервера = СервисДоступен(ОписаниеСервиса); - - Если НРег(СокрЛП(ОтветСервера)) <> "ready" Тогда - - ТекстОшибки = НСтр("ru = 'Сервис проверки легальности получения обновлений временно недоступен. - |Повторите попытку позднее'"); - Возврат СтруктураОтветаВебСервера(ТекстОшибки, Истина, ОтветСервера); - - КонецЕсли; - - Исключение - - ТекстОшибки = НСтр("ru = 'Не удалось подключиться к сервису проверки легальности получения обновлений. - |Проверьте параметры подключения к Интернету'"); - Возврат СтруктураОтветаВебСервера(ТекстОшибки, Истина,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - - КонецПопытки; - - // Получение ответа с веб-сервиса. - Возврат ПроверитьЛегальностьПолученияОбновлений(ПараметрыЗапроса, ОписаниеСервиса); - -КонецФункции - -//////////////////////////////////////////////////////////////////////////////// -// Процедуры и функции для работы с веб-сервисом проверки легальности на "высоком уровне". - -// Добавляет из структуры параметры в запрос. -// -// Параметры: -// ОписаниеСервисаПроверкиЛегальности (Структура) - описание соединения с веб-сервисом проверки легальности. -// ПараметрыЗапроса - Строка - уже сформированные параметры. -// СписокПараметров - ОбъектXDTO - список значений параметров. -// -Процедура ДобавитьПараметрыКЗапросу(ОписаниеСервисаПроверкиЛегальности, ПараметрыЗапроса, СписокПараметров) - - ТипПараметр = ОписаниеСервисаПроверкиЛегальности.ФабрикаXDTO.Тип(ОписаниеСервисаПроверкиЛегальности.URIСервиса, "Parameter"); - КоличествоПараметров = 0; - - Для Каждого ПараметрПередачи Из СписокПараметров Цикл - - // Определение объекта параметра (Объект XDTO). - Параметр = ОписаниеСервисаПроверкиЛегальности.ФабрикаXDTO.Создать(ТипПараметр); - - Параметр.name = СокрЛП(ПараметрПередачи.Ключ); - Параметр.value = СокрЛП(ПараметрПередачи.Значение); - Параметр.index = КоличествоПараметров; - - ПараметрыЗапроса.parameter.Добавить(Параметр); - - КоличествоПараметров = КоличествоПараметров + 1; - - КонецЦикла; - -КонецПроцедуры - -// Проверяет легальность скачивания обновления. -// -// Параметры: -// ДополнительныеПараметры - Структура - дополнительные параметры для передачи веб-сервису; -// ОписаниеСервисаПроверкиЛегальности (Структура) - описание соединения с веб-сервисом проверки легальности. -// -// Возвращаемое значение: -// Структура - структурированный ответ веб-сервера. -// -Функция ПроверитьЛегальностьПолученияОбновлений(ДополнительныеПараметры, ОписаниеСервисаПроверкиЛегальности) - - Попытка - - ТипОтвета = ОписаниеСервисаПроверкиЛегальности.ФабрикаXDTO.Тип(ОписаниеСервисаПроверкиЛегальности.URIСервиса, "ProcessResponseType"); - ТипЗапроса = ОписаниеСервисаПроверкиЛегальности.ФабрикаXDTO.Тип(ОписаниеСервисаПроверкиЛегальности.URIСервиса, "Parameters"); - - ПараметрыЗапроса = ОписаниеСервисаПроверкиЛегальности.ФабрикаXDTO.Создать(ТипЗапроса); - - // Если имеются передаваемые параметры, то добавляем их. - Если ДополнительныеПараметры <> Неопределено Тогда - ДобавитьПараметрыКЗапросу(ОписаниеСервисаПроверкиЛегальности, ПараметрыЗапроса, ДополнительныеПараметры); - КонецЕсли; - - // Выполнение метода "process" WEB-Сервиса. - ОтветСервера = ОбновлениеПолученоЛегально(ПараметрыЗапроса, ОписаниеСервисаПроверкиЛегальности); - - Исключение - - ТекстОшибки = НСтр("ru = 'Ошибка выполнения проверки легальности получения обновления. - |Обратитесь к администратору'"); - Возврат СтруктураОтветаВебСервера(ТекстОшибки, Истина,,,ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - - КонецПопытки; - - СтруктураКоманды = ОтветСервера.command[0]; - - Если СтруктураКоманды.name = "store.put" Тогда - - ПараметрыОтвета = СтруктураКоманды.parameters.parameter; - - Результат = Новый Структура; - Для Каждого Параметр Из ПараметрыОтвета Цикл - - Результат.Вставить(Параметр.name, Параметр.value); - - КонецЦикла; - - Результат = СтруктураОтветаВебСервера(Результат.resultTextError, Ложь, - Результат.resultCodeError, Результат.resultAvtorisation); - - Иначе - - Результат = СтруктураОтветаВебСервера(НСтр("ru = 'Неожиданный ответ сервиса проверки легальности получения обновлений'"), Истина); - - КонецЕсли; - - Возврат Результат; - -КонецФункции - -// Возвращает ответ сервера в виде структуры. -// -Функция СтруктураОтветаВебСервера(ТекстОшибки, ЗаписьВЖурналРегистрации, - КодОшибки = 0, ЗначениеРезультата = Ложь, ТекстСообщения = "") - - СтруктураОтвета = Новый Структура; - - СтруктураОтвета.Вставить("ЗначениеРезультата", Булево(ЗначениеРезультата)); - СтруктураОтвета.Вставить("ТекстОшибки", Строка(ТекстОшибки)); - - Если ЗаписьВЖурналРегистрации Тогда - - Если ПустаяСтрока(ТекстСообщения) Тогда - ТекстСообщения = НСтр("ru = '%ТекстОшибки. Код ошибки: %КодОшибки.'"); - ТекстСообщения = СтрЗаменить(ТекстСообщения, "%ТекстОшибки", ТекстОшибки); - ТекстСообщения = СтрЗаменить(ТекстСообщения, "%КодОшибки", КодОшибки); - КонецЕсли; - - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СобытиеЖурналаРегистрации(), "Ошибка", ТекстСообщения); - - КонецЕсли; - - Возврат СтруктураОтвета; - -КонецФункции - -//////////////////////////////////////////////////////////////////////////////// -// Процедуры и функции для работы с веб-сервисом проверки легальности на "низком уровне". - -// Формирует описание веб-сервиса из WSDL-документа для дальнейшей работы -// с веб-сервисом проверки легальности. -// -// Возвращаемое значение: -// Структура со свойствами: -// АдресWSDL (Строка) - URL WSDL-документа; -// выполняется с использованием временных файлов; -// ФабрикаXDTO (ФабрикаXDTO) - Фабрика XDTO веб-сервиса; -// URIСервиса (Строка) - URI веб-сервиса проверки легальности; -// СоединениеПорта (HTTPСоединение) - соединение с портом сервиса -// для выполнения вызовов методов веб-сервиса; -// ПутьПорта (Строка) - путь порта на сервере; -// -Функция ОписаниеСервисаПроверкиЛегальности() - - АдресWSDL = АдресСервисаПроверкиЛегальности(); - ПараметрыСоединения = ОбщегоНазначенияКлиентСервер.СтруктураURI(АдресWSDL); - - Результат = Новый Структура("АдресWSDL", АдресWSDL); - - ИнтернетПрокси = ПолучениеФайловИзИнтернетаКлиентСервер.ПолучитьПрокси(ПараметрыСоединения.Схема); - - ТаймаутСети = 10; - - HTTP = Новый HTTPСоединение(ПараметрыСоединения.Хост, - ПараметрыСоединения.Порт, - ПараметрыСоединения.Логин, - ПараметрыСоединения.Пароль, - ИнтернетПрокси, - ТаймаутСети, - ?(ПараметрыСоединения.Схема = "https", - Новый ЗащищенноеСоединениеOpenSSL(), - Неопределено)); - - Попытка - - HTTPЗапрос = Новый HTTPЗапрос(ПараметрыСоединения.ПутьНаСервере); - Ответ = HTTP.Получить(HTTPЗапрос); - ТекстWSDL = Ответ.ПолучитьТелоКакСтроку(); - - Исключение - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании описания веб-сервиса. - |Не удалось получить WSDL-описание с сервера проверки легальности скачивания обновления (%1): %2.'"), - АдресWSDL, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - ВызватьИсключение ТекстИсключения; - КонецПопытки; - - ЧтениеXML = Новый ЧтениеXML; - ЧтениеXML.УстановитьСтроку(ТекстWSDL); - - ПостроительDOM = Новый ПостроительDOM; - Попытка - ДокументDOM = ПостроительDOM.Прочитать(ЧтениеXML); - Исключение - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании описания веб-сервиса (%1). - |Ошибка чтения WSDL-описания веб-сервиса проверки легальности скачивания обновления: %2.'"), - АдресWSDL, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - ВызватьИсключение ТекстИсключения; - КонецПопытки; - - // Создание фабрики XDTO веб-сервиса проверки легальности. - - УзлыСхемы = ДокументDOM.ПолучитьЭлементыПоИмени("wsdl:types"); - Если УзлыСхемы.Количество() = 0 Тогда - - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании описания веб-сервиса (%1). - |Ошибка чтения WSDL-описания веб-сервиса проверки легальности скачивания обновления: - |Отсутствует элемент описания типов данных (<wsdl:types ...>).'"), АдресWSDL); - ВызватьИсключение ТекстИсключения; - - КонецЕсли; - - УзелОписанияСхемы = УзлыСхемы[0].ПервыйДочерний; - Если УзелОписанияСхемы = Неопределено Тогда - - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании описания веб-сервиса (%1). - |Ошибка чтения WSDL-описания веб-сервиса проверки легальности скачивания обновления: - |Отсутствует элемент описания типов данных (<xs:schema ...>)'"), АдресWSDL); - ВызватьИсключение ТекстИсключения; - - КонецЕсли; - - ПостроительСхемы = Новый ПостроительСхемXML; - - Попытка - СхемаДанныхСервиса = ПостроительСхемы.СоздатьСхемуXML(УзелОписанияСхемы); - Исключение - - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании описания веб-сервиса (%1). - |Ошибка при создании схемы данных из WSDL-описания веб-сервиса проверки легальности скачивания обновления: - |%2'"), АдресWSDL, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - ВызватьИсключение ТекстИсключения; - - КонецПопытки; - - НаборСхем = Новый НаборСхемXML; - НаборСхем.Добавить(СхемаДанныхСервиса); - - Попытка - ФабрикаСервиса = Новый ФабрикаXDTO(НаборСхем); - Исключение - - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании описания веб-сервиса (%1). - |Ошибка при создании фабрики XDTO из WSDL-описания веб-сервиса проверки легальности скачивания обновления: %2'"), - АдресWSDL, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - ВызватьИсключение ТекстИсключения; - - КонецПопытки; - - // Определение параметров подключения к порту сервиса. - - КорневойЭлемент = ДокументDOM.ПервыйДочерний; - - Результат.Вставить("ФабрикаXDTO", ФабрикаСервиса); - - URIСервиса = ЗначениеАтрибутаУзлаDOM(КорневойЭлемент, "targetNamespace"); - Если НЕ ЗначениеЗаполнено(URIСервиса) Тогда - - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании описания веб-сервиса (%1). - |Ошибка чтения WSDL-описания веб-сервиса проверки легальности скачивания обновления: - |Отсутствует URI пространства имен в WSDL-описании.'"), АдресWSDL); - ВызватьИсключение ТекстИсключения; - - КонецЕсли; - - Результат.Вставить("URIСервиса" , URIСервиса); - - // Определение адреса порта веб-сервиса. - УзлыСервисов = КорневойЭлемент.ПолучитьЭлементыПоИмени("wsdl:service"); - Если УзлыСервисов.Количество() = 0 Тогда - - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании описания веб-сервиса (%1). - |Ошибка чтения WSDL-описания веб-сервиса проверки легальности скачивания обновления: - |Отсутствует описание веб-сервисов в WSDL-описании (<wsdl:service ...>).'"), АдресWSDL); - ВызватьИсключение ТекстИсключения; - - КонецЕсли; - - УзелСервиса = УзлыСервисов[0]; - - ИмяСервиса = ЗначениеАтрибутаУзлаDOM(УзелСервиса, "name"); - - УзлыПортов = УзелСервиса.ПолучитьЭлементыПоИмени("wsdl:port"); - - Если УзлыПортов.Количество() = 0 Тогда - - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании описания веб-сервиса (%1). - |Ошибка чтения WSDL-описания веб-сервиса проверки легальности скачивания обновления: - |Отсутствует описание портов в WSDL-описании (<wsdl:port ...>).'"), АдресWSDL); - ВызватьИсключение ТекстИсключения; - - КонецЕсли; - - УзелПорта = УзлыПортов[0]; - ИмяПорта = ЗначениеАтрибутаУзлаDOM(УзелПорта, "name"); - - Если НЕ ЗначениеЗаполнено(ИмяПорта) Тогда - - ТекстИсключения = СтрЗаменить(НСтр("ru = 'Ошибка при создании описания веб-сервиса (%1). - |Ошибка чтения WSDL-описания веб-сервиса интернет-поддержки пользователей: - |Не удалось определить имя порта сервиса (%2)."), АдресWSDL, ИмяСервиса); - - ВызватьИсключение ТекстИсключения; - - КонецЕсли; - - АдресПорта = Неопределено; - УзлыАдреса = УзелПорта.ПолучитьЭлементыПоИмени("soap:address"); - Если УзлыАдреса.Количество() > 0 Тогда - АдресПорта = ЗначениеАтрибутаУзлаDOM(УзлыАдреса[0], "location"); - КонецЕсли; - - Если НЕ ЗначениеЗаполнено(АдресПорта) Тогда - - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании описания веб-сервиса (%1). - |Ошибка чтения WSDL-описания веб-сервиса интернет-поддержки пользователей: - |Не удалось определить URL заданного порта сервиса (%2).'"), АдресWSDL, ИмяПорта); - - ВызватьИсключение ТекстИсключения; - - КонецЕсли; - - СоединениеПорта = Новый HTTPСоединение(ПараметрыСоединения.Хост, - ПараметрыСоединения.Порт, - ПараметрыСоединения.Логин, - ПараметрыСоединения.Пароль, - ИнтернетПрокси, - ТаймаутСети, - ?(ПараметрыСоединения.Схема = "https", - Новый ЗащищенноеСоединениеOpenSSL(), - Неопределено)); - - Результат.Вставить("СоединениеПорта" , СоединениеПорта); - Результат.Вставить("ПутьПорта" , ПараметрыСоединения.ПутьНаСервере); - - Возврат Результат; - -КонецФункции - -// Прокси-функция для вызова метода isReady() веб-сервиса проверки легальности. -// -// Параметры: -// ОписаниеСервисаПроверкиЛегальности (Структура) - описание веб-сервиса проверки легальности, -// см. ОписаниеСервисаПроверкиЛегальности(); -// -// Возвращаемое значение: -// Строка: -// значение, возвращенное методом isReady() веб-сервиса проверки легальности; -// -Функция СервисДоступен(ОписаниеСервисаПроверкиЛегальности) - - ЗаписьКонверта = НовыйЗаписьКонвертаSOAP(); - ТекстКонверта = ТекстВКонвертеSOAP(ЗаписьКонверта); - - Попытка - ТелоОтвета = ОтправитьЗапросSOAP(ТекстКонверта, ОписаниеСервисаПроверкиЛегальности); - Исключение - - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при вызове операции isReady сервиса (%1): %2'"), - ОписаниеСервисаПроверкиЛегальности.АдресWSDL, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - ВызватьИсключение ТекстИсключения; - - КонецПопытки; - - ТипОбъекта = ТипЗначенияКорневогоСвойстваФабрикиСервисаЛегальности("isReadyResponse", ОписаниеСервисаПроверкиЛегальности); - Если ТипОбъекта = Неопределено Тогда - ТекстИсключения = СтрЗаменить(НСтр("ru = 'Ошибка при вызове операции isReady сервиса (%1). - |Не удалось определить тип корневого свойства isReadyResponse.'"), - "%1", - ОписаниеСервисаПроверкиЛегальности.АдресWSDL); - ВызватьИсключение ТекстИсключения; - КонецЕсли; - - Попытка - Значение = ПрочитатьОтветВКонвертеSOAP(ТелоОтвета, ОписаниеСервисаПроверкиЛегальности, ТипОбъекта); - Исключение - ТекстИсключения = СтрЗаменить(НСтр("ru = 'Ошибка при вызове операции isReady сервиса (%1).'"), - "%1", - ОписаниеСервисаПроверкиЛегальности.АдресWSDL) - + Символы.ПС - + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()) - + Символы.ПС + Символы.ПС - + НСтр("ru = 'Тело запроса:'") - + Символы.ПС - + ТекстКонверта; - - ВызватьИсключение ТекстИсключения; - КонецПопытки; - - Если ТипЗнч(Значение) = Тип("Структура") Тогда - - // Возвращено описание исключения SOAP. - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при вызове операции isReady сервиса (%1) - |Ошибка SOAP: %2'"), ОписаниеСервисаПроверкиЛегальности.АдресWSDL, ОписаниеИсключенияSOAPВСтроку(Значение)); - ВызватьИсключение ТекстИсключения; - - ИначеЕсли ТипЗнч(Значение) = Тип("ЗначениеXDTO") Тогда - Возврат Значение.Значение; - Иначе - Возврат Неопределено; - КонецЕсли; - -КонецФункции - -// Метод веб-сервиса для проверки легальности получения обновления. -// -// Параметры: -// ПараметрыЗапроса (ОбъектXDTO) - параметры запроса метода process(); -// ОписаниеСервисаПроверкиЛегальности (Структура) - описание веб-сервиса проверки легальности, -// см. ОписаниеСервисаПроверкиЛегальности(); -// -// Возвращаемое значение: -// ОбъектXDTO: -// значение, возвращенное методом process() веб-сервиса проверки легальности; -// -Функция ОбновлениеПолученоЛегально(ПараметрыЗапроса, ОписаниеСервисаПроверкиЛегальности) - - ЗаписьКонверта = НовыйЗаписьКонвертаSOAP(); - - ЗаписьКонверта.ЗаписатьНачалоЭлемента("m:processRequest"); - ЗаписьКонверта.ЗаписатьАтрибут("xmlns:m", ОписаниеСервисаПроверкиЛегальности.URIСервиса); - - ОписаниеСервисаПроверкиЛегальности.ФабрикаXDTO.ЗаписатьXML(ЗаписьКонверта, - ПараметрыЗапроса, - "parameters", - , - ФормаXML.Элемент, - НазначениеТипаXML.Явное); - - ЗаписьКонверта.ЗаписатьКонецЭлемента(); // </m:processRequest> - - ТекстКонверта = ТекстВКонвертеSOAP(ЗаписьКонверта); - - Попытка - ТелоОтвета = ОтправитьЗапросSOAP(ТекстКонверта, ОписаниеСервисаПроверкиЛегальности); - Исключение - - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при вызове операции process сервиса (%1): %2'"), - ОписаниеСервисаПроверкиЛегальности.АдресWSDL, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - ВызватьИсключение ТекстИсключения; - - КонецПопытки; - - ТипОбъекта = ТипЗначенияКорневогоСвойстваФабрикиСервисаЛегальности("processResponse", ОписаниеСервисаПроверкиЛегальности); - Если ТипОбъекта = Неопределено Тогда - ТекстИсключения = СтрЗаменить(НСтр("ru = 'Ошибка при вызове операции process сервиса (%1). - |Не удалось определить тип корневого свойства processResponse.'"), - "%1", - ОписаниеСервисаПроверкиЛегальности.АдресWSDL); - ВызватьИсключение ТекстИсключения; - КонецЕсли; - - Попытка - Значение = ПрочитатьОтветВКонвертеSOAP(ТелоОтвета, ОписаниеСервисаПроверкиЛегальности, ТипОбъекта); - Исключение - - ТекстИсключения = СтрЗаменить(НСтр("ru = 'Ошибка при вызове операции process сервиса (%1).'"), - "%1", - ОписаниеСервисаПроверкиЛегальности.АдресWSDL) - + Символы.ПС - + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()) - + Символы.ПС + Символы.ПС - + НСтр("ru = 'Тело запроса:'") - + Символы.ПС - + ТекстКонверта; - - ВызватьИсключение ТекстИсключения; - - КонецПопытки; - - Если ТипЗнч(Значение) = Тип("ОбъектXDTO") Тогда - Возврат Значение.commands; - Иначе - Возврат Неопределено; - КонецЕсли; - -КонецФункции - -// Возвращает строковое значение атрибута узла DOM-документа. -// -// Параметры: -// УзелDOM (УзелDOM) - узел DOM-документа; -// ИмяАтрибута (Строка) - полное имя атрибута; -// ЗначениеЕслиНеНайдено (Произвольный) - значение, если атрибут не найден; -// -// Возвращаемое значение: -// Строка: -// Строковое значение атрибута узла; -// -Функция ЗначениеАтрибутаУзлаDOM(УзелDOM, ИмяАтрибута, ЗначениеЕслиНеНайдено = Неопределено) - - Атрибут = УзелDOM.Атрибуты.ПолучитьИменованныйЭлемент(ИмяАтрибута); - - Если Атрибут = Неопределено Тогда - Возврат ЗначениеЕслиНеНайдено; - Иначе - Возврат Атрибут.Значение; - КонецЕсли; - -КонецФункции - -// Определяет тип значения корневого свойства пакета фабрики XDTO -// веб-сервиса проверки легальности. -// -// Параметры: -// ИмяСвойства (Строка) - имя корневого свойства; -// ОписаниеСервисаПроверкиЛегальности (Структура) - описание веб-сервиса проверки легальности, -// см. ОписаниеСервисаПроверкиЛегальности(); -// -// Возвращаемое значение: -// ТипЗначенияXDTO; -// ТипОбъектаXDTO; -// Неопределено - если корневое свойство не найдено; -// -Функция ТипЗначенияКорневогоСвойстваФабрикиСервисаЛегальности(ИмяСвойства, ОписаниеСервисаПроверкиЛегальности) - - Пакет = ОписаниеСервисаПроверкиЛегальности.ФабрикаXDTO.Пакеты.Получить(ОписаниеСервисаПроверкиЛегальности.URIСервиса); - КорневоеСвойство = Пакет.КорневыеСвойства.Получить(ИмяСвойства); - Если КорневоеСвойство = Неопределено Тогда - Возврат Неопределено; - Иначе - Возврат КорневоеСвойство.Тип; - КонецЕсли; - -КонецФункции - -// Формирует объект тип ЗаписьXML с уже записанными. -// SOAP-заголовками; -// -// Возвращаемое значение: -// ЗаписьXML: -// объект записи XML с записанными SOAP-заголовками; -// -Функция НовыйЗаписьКонвертаSOAP() - - ЗаписьXML = Новый ЗаписьXML; - ЗаписьXML.УстановитьСтроку(); - - ЗаписьXML.ЗаписатьНачалоЭлемента("soap:Envelope"); - ЗаписьXML.ЗаписатьАтрибут("xmlns:soap", "http://schemas.xmlsoap.org/soap/envelope/"); - ЗаписьXML.ЗаписатьНачалоЭлемента("soap:Header"); - ЗаписьXML.ЗаписатьКонецЭлемента(); // </soap:Header> - ЗаписьXML.ЗаписатьНачалоЭлемента("soap:Body"); - - Возврат ЗаписьXML; - -КонецФункции - -// Финализирует запись конверта SOAP и возвращает текст конверта. -// -// Параметры: -// ЗаписьКонверта (ЗаписьXML) - объект, в который выполнялась запись конверта; -// -// Возвращаемое значение: -// Строка: текст конверта SOAP; -// -Функция ТекстВКонвертеSOAP(ЗаписьКонверта) - - ЗаписьКонверта.ЗаписатьКонецЭлемента(); // </soap:Body> - ЗаписьКонверта.ЗаписатьКонецЭлемента(); // </soap:Envelope> - - Возврат ЗаписьКонверта.Закрыть(); - -КонецФункции - -// Выполняет отправку SOAP-конверта веб-сервису и получает ответный. -// SOAP-конверт. -// -// Параметры: -// ТекстКонверта (Строка) - текст конверта-запроса; -// ОписаниеСервисаПроверкиЛегальности (Структура) - описание веб-сервиса проверки легальности, -// см. ОписаниеСервисаПроверкиЛегальности(); -// -// Возвращаемое значение: -// Строка: текст SOAP-конверта-ответа; -// -Функция ОтправитьЗапросSOAP(ТекстКонверта, ОписаниеСервисаПроверкиЛегальности) - - HTTPЗапрос = Новый HTTPЗапрос(ОписаниеСервисаПроверкиЛегальности.ПутьПорта); - HTTPЗапрос.Заголовки["Content-Type"] = "text/xml;charset=UTF-8"; - HTTPЗапрос.УстановитьТелоИзСтроки(ТекстКонверта); - - Попытка - HTTPОтвет = ОписаниеСервисаПроверкиЛегальности.СоединениеПорта.ОтправитьДляОбработки(HTTPЗапрос); - Исключение - ТекстИсключения = НСтр("ru = 'Ошибка сетевого соединения при отправке SOAP-запроса.'") - + Символы.ПС - + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); - ВызватьИсключение ТекстИсключения; - КонецПопытки; - - ТелоОтвета = HTTPОтвет.ПолучитьТелоКакСтроку(); - - Возврат ТелоОтвета; - -КонецФункции - -// Выполняет чтение объекта или значения в ответном SOAP-конверте в -// соответствии с фабрикой типов XDTO веб-сервиса. -// -// Параметры: -// ТелоОтвета (Строка) - тело в SOAP-конверта-ответа; -// ОписаниеСервисаПроверкиЛегальности (Структура) - описание веб-сервиса проверки легальности, -// см. ОписаниеСервисаПроверкиЛегальности(); -// ТипЗначения (ТипЗначенияXDTO, ТипОбъектаXDTO) - тип читаемого значения; -// -Функция ПрочитатьОтветВКонвертеSOAP(ТелоОтвета, ОписаниеСервисаПроверкиЛегальности, ТипЗначения) - - ЧтениеОтвета = Новый ЧтениеXML; - ЧтениеОтвета.УстановитьСтроку(ТелоОтвета); - - Попытка - - // Переход к телу ответа - Пока ЧтениеОтвета.Имя <> "soap:Body" Цикл - ЧтениеОтвета.Прочитать(); - КонецЦикла; - - // Переход к описанию объекта ответа. - ЧтениеОтвета.Прочитать(); - - Исключение - - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка чтения ответа SOAP: - |%1 - |Тело ответа: - |%2'"), ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()), ТелоОтвета); - ВызватьИсключение ТекстИсключения; - - КонецПопытки; - - Если ЧтениеОтвета.ТипУзла = ТипУзлаXML.НачалоЭлемента - И ВРег(ЧтениеОтвета.Имя) = "SOAP:FAULT" Тогда - // Это исключение веб-сервиса - Попытка - ДеталиИсключения = ПрочитатьОписаниеИсключенияСервиса(ЧтениеОтвета); - Исключение - - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка чтения ответа SOAP: - |%1 - |Тело ответа: - |%2'"), ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()), ТелоОтвета); - ВызватьИсключение ТекстИсключения; - - КонецПопытки; - - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Ошибка SOAP-Сервера при обработке запроса: %1'"), ОписаниеИсключенияSOAPВСтроку(ДеталиИсключения)); - ВызватьИсключение ТекстИсключения; - - КонецЕсли; - - Попытка - Значение = ОписаниеСервисаПроверкиЛегальности.ФабрикаXDTO.ПрочитатьXML(ЧтениеОтвета, ТипЗначения); - Исключение - - ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка чтения объекта (%1) в конверте SOAP: - |%2 - |Тело ответа: - |%3'"), Строка(ТипЗначения), ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()), ТелоОтвета); - ВызватьИсключение ТекстИсключения; - - КонецПопытки; - - Возврат Значение; - -КонецФункции - -// Если в ответном SOAP-конверте содержится описание ошибки, -// то выполняется чтение описания ошибки. -// -// Параметры: -// ЧтениеОтвета (ЧтениеXML) - объект, используемый для чтения -// ответного SOAP-конверта. На момент вызова спозиционирован на описании. -// исключения SOAP; -// -// Возвращаемое значение: -// Структура со свойствами: -// FaultCode (Строка), FaultString (Строка), FaultActor (Строка); -// -Функция ПрочитатьОписаниеИсключенияСервиса(ЧтениеОтвета) - - ОписаниеИсключения = Новый Структура("FaultCode, FaultString, FaultActor", "", "", ""); - - Пока НЕ (ВРег(ЧтениеОтвета.Имя) = "SOAP:BODY" И ЧтениеОтвета.ТипУзла = ТипУзлаXML.КонецЭлемента) Цикл - - Если ЧтениеОтвета.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда - ИмяУзлаВРег = ВРег(ЧтениеОтвета.Имя); - - Если ИмяУзлаВРег = "FAULTCODE" - ИЛИ ИмяУзлаВРег = "FAULTSTRING" - ИЛИ ИмяУзлаВРег = "FAULTACTOR" Тогда - - ЧтениеОтвета.Прочитать(); // Прочитать текст узла - - Если ЧтениеОтвета.ТипУзла = ТипУзлаXML.Текст Тогда - ОписаниеИсключения[ИмяУзлаВРег] = ЧтениеОтвета.Значение; - КонецЕсли; - - ЧтениеОтвета.Прочитать(); // Прочитать конец элемента - - КонецЕсли; - - КонецЕсли; - - Если НЕ ЧтениеОтвета.Прочитать() Тогда - Прервать; - КонецЕсли; - - КонецЦикла; - - Возврат ОписаниеИсключения; - -КонецФункции - -// Выполняет преобразование структуры-описателя исключения SOAP -// в строку для пользовательского представления; -// -// Параметры: -// ИсключениеSOAP (Структура) - см. ПрочитатьОписаниеИсключенияСервиса(); -// -// Возвращаемое значение: -// Строка: пользовательское представление исключения SOAP; -// -Функция ОписаниеИсключенияSOAPВСтроку(ИсключениеSOAP) - - Результат = ""; - Если НЕ ПустаяСтрока(ИсключениеSOAP.FaultCode) Тогда - Результат = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Код ошибки: %1'"), ИсключениеSOAP.FaultCode); - КонецЕсли; - - Если НЕ ПустаяСтрока(ИсключениеSOAP.FaultString) Тогда - ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Строка ошибки: %1'"), ИсключениеSOAP.FaultString); - Результат = Результат + Символы.ПС + ТекстОшибки; - КонецЕсли; - - Если НЕ ПустаяСтрока(ИсключениеSOAP.FaultActor) Тогда - ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Источник ошибки: %1'"), ИсключениеSOAP.FaultActor); - Результат = Результат + Символы.ПС + ТекстОшибки; - КонецЕсли; - - Возврат Результат; - -КонецФункции - -#КонецЕсли - #КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/ОбновлениеКонфигурацииКлиентПереопределяемый/Module.bsl b/SSL/src/CommonModules/ОбновлениеКонфигурацииКлиентПереопределяемый/Module.bsl deleted file mode 100644 index b10fde2ac..000000000 --- a/SSL/src/CommonModules/ОбновлениеКонфигурацииКлиентПереопределяемый/Module.bsl +++ /dev/null @@ -1,87 +0,0 @@ -//////////////////////////////////////////////////////////////////////////////// -// Подсистема "Обновление конфигурации". -// -//////////////////////////////////////////////////////////////////////////////// - -#Область ПрограммныйИнтерфейс - -// Обработчик вызывается перед завершением работы системы при обновлении конфигурации из помощника. -// -// Пример реализации: -// #Если Клиент Тогда -//   глЗапрашиватьПодтверждениеПриЗакрытии = Ложь; -// #КонецЕсли -// -Процедура ПередЗавершениемРаботыСистемы() Экспорт - -КонецПроцедуры - -// Проверить, что информационную базу можно обновить. -// Например, если выясняется, что обновление конфигурации не пройдет или -// будет идти с проблемами, то пользователю выдается предупреждение, и -// предлагается самостоятельно устранить причины, после чего -// повторить попытку обновления. -// -// Параметры: -// КонфигурацияГотоваКОбновлению - Булево - признак готовности ИБ к проведению обновления. -// -// Пример реализации: -// -// КонфигурацияГотоваКОбновлению = ПроверитьКорректностьДанных(); -// Если Не КонфигурацияГотоваКОбновлению И ВыдаватьСообщения Тогда -// Предупреждение("Конфигурация не может быть обновлена, так как ..."); -// КонецЕсли; -// -Процедура ПриОпределенииГотовностиКОбновлениюКонфигурации(КонфигурацияГотоваКОбновлению) Экспорт - -КонецПроцедуры - -// Получить адрес веб-страницы с информацией о том, как получить доступ к -// пользовательскому разделу на сайте поставщика конфигурации. -// -// Параметры: -// АдресСтраницы - Строка - адрес веб-страницы. -// -Процедура ПриОпределенииАдресаСтраницыПолученияДоступаКСайтуОбновлений(АдресСтраницы) Экспорт - -КонецПроцедуры - -// Проверят необходимость проверки обновления для следующей редакции платформы. -// Рекомендуется устанавливать значение Истина, только при следующих условиях: -// - Для конфигурации используется обновление с сайта поддержки пользователей системы 1С:Предприятие. -// - Вышла новая редакция платформы. -// - Конфигурация поддерживает прямое обновление на новую версию, использующую новую редакцию платформы. -// -// Если процедура устанавливает значение Истина, то при проверке обновления на сайте поддержки пользователей -// в случае если не найдено обновлений для текущей редакции платформы программа автоматически проверит -// обновления для следующей редакции платформы. -// -// Параметры: -// ПроверятьОбновление - Булево - Признак необходимости проверки обновления для следующей редакции. -// -Процедура ПриПроверкеОбновленияДляСледующейРедакцииПлатформы(ПроверятьОбновление) Экспорт - -КонецПроцедуры - -// Признак необходимости использования проверки легальности скачивания обновления. -// Рекомендуется устанавливать значение Истина, если конфигурация поддерживает обновление -// с сайта поддержки пользователей. -// -Процедура ПриПроверкеЛегальностиСкачиванияОбновлений(ПроверятьЛегальность) Экспорт - -КонецПроцедуры - -// Обработчик вызывается при скачивании файла обновления из Интернета -// -// Параметры: -// URL, ПараметрыПолучения - см. описание одноименных параметров -// в ПолучениеФайловИзИнтернетаКлиент.СкачатьФайлНаКлиенте. -// Результат - см. описание возвращаемого значения в процедуре -// ПолучениеФайловИзИнтернетаКлиент.СкачатьФайлНаКлиенте. -// СтандартнаяОбработка - Булево - Признак использования стандартного получения файла -// -Процедура ПриСкачиванииФайлаОбновления(URL, ПараметрыПолучения, Результат, СтандартнаяОбработка) Экспорт - -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/CommonModules/ОбновлениеКонфигурацииКлиентСервер/Module.bsl b/SSL/src/CommonModules/ОбновлениеКонфигурацииКлиентСервер/Module.bsl deleted file mode 100644 index 9decc987f..000000000 --- a/SSL/src/CommonModules/ОбновлениеКонфигурацииКлиентСервер/Module.bsl +++ /dev/null @@ -1,149 +0,0 @@ -//////////////////////////////////////////////////////////////////////////////// -// Подсистема "Обновление конфигурации". -// -//////////////////////////////////////////////////////////////////////////////// - -#Область СлужебныеПроцедурыИФункции - -// Возвращает структуру настроек обновления конфигурации и обновляет их. -// -// Параметры: -// НастройкиОбновления - структура - старые настройки обновления, которые необходимо обновить. -// -// Возвращаемое значение: -// Структура - структура настроек обновления. -// -Функция ПолучитьОбновленныеНастройкиОбновленияКонфигурации(НастройкиОбновления) Экспорт - - Если НастройкиОбновления = Неопределено Тогда - НастройкиОбновления = НовыеНастройкиОбновленияКонфигурации(); - Иначе - НовыеНастройки = НовыеНастройкиОбновленияКонфигурации(); - Для каждого Настройка Из НовыеНастройки Цикл - Если НЕ НастройкиОбновления.Свойство(Настройка.Ключ) Тогда - НастройкиОбновления.Вставить(Настройка.Ключ, Настройка.Значение); - КонецЕсли; - КонецЦикла; - КонецЕсли; - Возврат НастройкиОбновления; - -КонецФункции - -// Заполняет структуру настроек обновления конфигурации и возвращает их. -// -// Возвращаемое значение: -// Структура - структура настроек обновления. -// -Функция НовыеНастройкиОбновленияКонфигурации() - - Результат = Новый Структура; - Результат.Вставить("КодПользователяСервераОбновлений", ""); - Результат.Вставить("ПарольСервераОбновлений", ""); - Результат.Вставить("ЗапомнитьПарольСервераОбновлений", Истина); - Результат.Вставить("ПроверятьНаличиеОбновленияПриЗапуске", Ложь); - Результат.Вставить("ИсточникОбновления", 0); -#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда - Результат.Вставить("РежимОбновления", ?(ОбщегоНазначения.ИнформационнаяБазаФайловая(), 0, 2)); - Результат.Вставить("ДатаВремяОбновления", ДобавитьДни(НачалоДня(ТекущаяДатаСеанса()), 1)); -#Иначе - Результат.Вставить("РежимОбновления", ?(СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ИнформационнаяБазаФайловая, 0, 2)); - Результат.Вставить("ДатаВремяОбновления", ДобавитьДни(НачалоДня(ОбщегоНазначенияКлиент.ДатаСеанса()), 1)); -#КонецЕсли - Результат.Вставить("ВыслатьОтчетНаПочту", Ложь); - Результат.Вставить("АдресЭлектроннойПочты", ""); - Результат.Вставить("КодЗадачиПланировщика", 0); - Результат.Вставить("РасписаниеПроверкиНаличияОбновления", Неопределено); - Результат.Вставить("ПовторныйЗапуск", Ложь); - Результат.Вставить("ИмяФайлаОбновления", ""); - Результат.Вставить("НуженФайлОбновления", 1); - Результат.Вставить("СоздаватьРезервнуюКопию", 1); - Результат.Вставить("ИмяКаталогаРезервнойКопииИБ", ""); - Результат.Вставить("ВосстанавливатьИнформационнуюБазу", Истина); - Результат.Вставить("АдресСервераДляПроверкиНаличияОбновления", ""); - Результат.Вставить("КаталогОбновлений", ""); - Результат.Вставить("АдресСервисаПроверкиЛегальности", ""); - Результат.Вставить("КороткоеИмяКонфигурации", ""); - Результат.Вставить("АдресРесурсаДляПроверкиНаличияОбновления", ""); - Результат.Вставить("КластерТребуетАутентификации", Ложь); - Результат.Вставить("ИмяАдминистратораКластера", ""); - Результат.Вставить("ПарольАдминистратораКластера", ""); - Результат.Вставить("НестандартныеПортыСервера", Ложь); - Результат.Вставить("ПортАгентаСервера", 0); - Результат.Вставить("ПортКластераСерверов", 0); - Результат.Вставить("ВремяПоследнейПроверкиОбновления", Дата(1, 1, 1)); - Результат.Вставить("ИменаФайловОбновления", ""); - Возврат Результат; - -КонецФункции - -// Добавляет заданное количество дней к дате. -// -// Параметры: -// Дата - Дата - Исходная дата. -// ЧислоДней - Число - Количество дней, добавляемых к исходной дате. -// -Функция ДобавитьДни(Знач Дата, Знач ЧислоДней) Экспорт - - Если ЧислоДней > 0 Тогда - Разница = День(Дата) + ЧислоДней - День(КонецМесяца(Дата)); - Если Разница > 0 Тогда - НоваяДата = ДобавитьМесяц(Дата, 1); - Возврат Дата(Год(НоваяДата), Месяц(НоваяДата), Разница, - Час(НоваяДата), Минута(НоваяДата), Секунда(НоваяДата)); - КонецЕсли; - ИначеЕсли ЧислоДней < 0 Тогда - Разница = День(Дата) + ЧислоДней - День(НачалоМесяца(Дата)); - Если Разница < 1 Тогда - НоваяДата = ДобавитьМесяц(Дата, -1); - Возврат Дата(Год(НоваяДата), Месяц(НоваяДата), День(КонецМесяца(НоваяДата)) - Разница, - Час(НоваяДата), Минута(НоваяДата), Секунда(НоваяДата)); - КонецЕсли; - КонецЕсли; - Возврат Дата(Год(Дата), Месяц(Дата), День(Дата) + ЧислоДней, Час(Дата), Минута(Дата), Секунда(Дата)); - -КонецФункции - -// Добавляет к переданному пути каталога конечный символ-разделитель, если он отсутствует. -// В случае, когда параметр "Платформа" не указан, разделитель выбирается, исходя из уже имеющихся -// разделителей в параметре "ПутьКаталога". -// -// Параметры: -// ПутьКаталога - Строка - путь к каталогу; -// Платформа - ТипПлатформы - тип платформы, в рамках которой осуществляется работа (влияет на выбор разделителя). -// -// Возвращаемое значение: -// Строка - путь к каталогу с конечным символом-разделителем. -// -// Примеры использования: -// Результат = ДобавитьКонечныйРазделительПути("C:\Мой каталог"); // возвращает "C:\Мой каталог\". -// Результат = ДобавитьКонечныйРазделительПути("C:\Мой каталог\"); // возвращает "C:\Мой каталог\". -// Результат = ДобавитьКонечныйРазделительПути("ftp://Мой каталог"); // возвращает "ftp://Мой каталог/". -// -Функция ДобавитьКонечныйРазделительПути(Знач ПутьКаталога) Экспорт - - Если ПустаяСтрока(ПутьКаталога) Тогда - Возврат ПутьКаталога; - КонецЕсли; - - ДобавляемыйСимвол = "\"; - Если СтрНайти(ПутьКаталога, "/") > 0 Тогда - ДобавляемыйСимвол = "/"; - КонецЕсли; - - Если Не СтрЗаканчиваетсяНа(ПутьКаталога, ДобавляемыйСимвол) Тогда - Возврат ПутьКаталога + ДобавляемыйСимвол; - Иначе - Возврат ПутьКаталога; - КонецЕсли; - -КонецФункции - -// Возвращает полное имя основной формы обработки ОбновлениеКонфигурации. -// -Функция ИмяФормыОбработкиОбновлениеКонфигурации() Экспорт - - Возврат "Обработка.ПоискИУстановкаОбновлений.Форма.Форма"; - -КонецФункции - -#КонецОбласти diff --git a/SSL/src/CommonModules/ОбновлениеКонфигурацииПереопределяемый/Module.bsl b/SSL/src/CommonModules/ОбновлениеКонфигурацииПереопределяемый/Module.bsl deleted file mode 100644 index 9aeae417e..000000000 --- a/SSL/src/CommonModules/ОбновлениеКонфигурацииПереопределяемый/Module.bsl +++ /dev/null @@ -1,64 +0,0 @@ -//////////////////////////////////////////////////////////////////////////////// -// Подсистема "Обновление конфигурации". -// -//////////////////////////////////////////////////////////////////////////////// - -#Область ПрограммныйИнтерфейс - -// Определяет короткое имя (идентификатор) конфигурации. -// -// Параметры: -// КраткоеИмя - Строка- короткое имя конфигурации. -// -Процедура ПриОпределенииКраткогоИмениКонфигурации(КраткоеИмя) Экспорт - - - -КонецПроцедуры - -// Получает адрес веб-сервера поставщика конфигурации, на котором находится -// информация о доступных обновлениях ("открытая" часть веб-сайта). -// -// Параметры: -// АдресСервера - Строка - адрес веб-сервера. -// -// Примеры реализации: -// АдресСервера = "localhost"; // локальный веб-сервер для тестирования. -// -Процедура ПриОпределенииАдресаСервераДляПроверкиНаличияОбновления(АдресСервера) Экспорт - -КонецПроцедуры - -// Получить адрес ресурса на веб-сервере для проверки наличия обновлений -// (на "открытой" части веб-сайта). -// -// Параметры: -// АдресРесурса - Строка - Адрес ресурса для проверки наличия обновления. -// -Процедура ПриОпределенииАдресаРесурсаДляПроверкиНаличияОбновления(АдресРесурса) Экспорт - -КонецПроцедуры - -// Получает адрес веб-сайта с каталогом обновлений ("закрытая" часть веб-сайта). -// -// Параметры: -// АдресКаталогаОбновлений - Строка - Адрес каталога обновлений. -// -// Примеры реализации: -// АдресКаталогаОбновлений = "localhost/tmplts/"; // локальный веб-сервер для тестирования. -// -Процедура ПриОпределенииАдресаКаталогаОбновлений(АдресКаталогаОбновлений) Экспорт - -КонецПроцедуры - -// Определяет группу версий конфигурации. Для каждой конфигурации возможно сквозное -// (без разрыва цепочки и необходимости запуска) обновление в пределах одной группы. -// -// Параметры: -// ГруппаВерсий - Число - Группа версий конфигурации. -// -Процедура ПриОпределенииГруппыВерсий(ГруппаВерсий) Экспорт - -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/CommonModules/ОбщегоНазначения/Module.bsl b/SSL/src/CommonModules/ОбщегоНазначения/Module.bsl index cc240b3b1..6f7c4fcf0 100644 --- a/SSL/src/CommonModules/ОбщегоНазначения/Module.bsl +++ b/SSL/src/CommonModules/ОбщегоНазначения/Module.bsl @@ -407,7 +407,8 @@ // Ложь - Запись ведется в режиме ОбменДанными.Загрузка = Истина. // // * ЗаменаПарыВТранзакции - Булево - Необязательный. Определяет размер транзакции. -// Истина - По умолчанию. Транзакция охватывает все места использования одного дубля. +// Истина - По умолчанию. Транзакция охватывает все места использования одного дубля. Может быть очень ресурсоемко +// в случае большого количества мест использований. // Ложь - Замена каждого места использования выполняется в отдельной транзакции. // // * ПривилегированнаяЗапись - Булево - Необязательный. Требуется ли устанавливать привилегированный режим перед запись. @@ -452,7 +453,7 @@ ПараметрыВыполнения.Вставить("ВключатьБизнесЛогику", Истина); ПараметрыВыполнения.Вставить("ПривилегированнаяЗапись", Ложь); ПараметрыВыполнения.Вставить("УчитыватьПрикладныеПравила", Ложь); - ДлиннаяТранзакция = Истина; + ЗаменаПарыВТранзакции = Истина; // Переданные значения. ЗначениеПараметра = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "СпособУдаления"); @@ -471,7 +472,7 @@ ЗначениеПараметра = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "ЗаменаПарыВТранзакции"); Если ТипЗнч(ЗначениеПараметра) = Тип("Булево") Тогда - ДлиннаяТранзакция = ЗначениеПараметра; + ЗаменаПарыВТранзакции = ЗначениеПараметра; КонецЕсли; ЗначениеПараметра = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "ПривилегированнаяЗапись"); @@ -521,7 +522,7 @@ Индекс = Дубли.Найти(Дубль); Если Индекс <> Неопределено Тогда - Дубли.Удалить(Индекс); // пропускаем проблемный элемент + Дубли.Удалить(Индекс); // пропускаем проблемный элемент. КонецЕсли; КонецЦикла; КонецЕсли; @@ -558,9 +559,9 @@ ПараметрыВыполнения.Вставить("ПарыЗамен", ПарыЗамен); ПараметрыВыполнения.Вставить("УспешныеЗамены", Новый Соответствие); - Если ДлиннаяТранзакция Тогда + Если ЗаменаПарыВТранзакции Тогда Для Каждого Дубль Из Дубли Цикл - ЗаменитьСсылкуДлиннойТранзакцией(Результат, Дубль, ПараметрыВыполнения, ТаблицаПоиска); + ЗаменитьСсылкуОднойТранзакцией(Результат, Дубль, ПараметрыВыполнения, ТаблицаПоиска); КонецЦикла; Иначе ЗаменитьСсылкиКороткимиТранзакциями(Результат, ПараметрыВыполнения, Дубли, ТаблицаПоиска); @@ -746,22 +747,6 @@ КонецФункции -// Устарела. Следует использовать ОбщегоНазначенияКлиентСервер.ДополнитьМассив, -// установив параметра ТолькоУникальныеЗначения в значение Истина. -// -// Заполняет массив-приемник уникальными значениями из массива-источника. -// Если элемент в массиве-приемнике уже существует, то добавления нового элемента не происходит. -// -// Параметры: -// МассивПриемник - Массив - массив, который заполняется уникальными значениями. -// МассивИсточник - Массив - массив, из которого подбираются элементы в массив-приемник. -// -Процедура ЗаполнитьМассивУникальнымиЗначениями(МассивПриемник, МассивИсточник) Экспорт - - ОбщегоНазначенияКлиентСервер.ДополнитьМассив(МассивПриемник, МассивИсточник, Истина); - -КонецПроцедуры - // Процедура удаляет из массива МассивРеквизитов элементы, соответствующие именам // реквизитов объекта из массива МассивНепроверяемыхРеквизитов. // Для использования в обработчиках события ОбработкаПроверкиЗаполнения. @@ -1599,7 +1584,7 @@ // Формирует соответствие для удаления объектов. // // Возвращаемое значение: -// Соответствие - Исключения поиска ссылок в разрезе объектов метаданных +// Соответствие - Исключения поиска ссылок в разрезе объектов метаданных. // * Ключ - ОбъектМетаданных - Объект метаданных, для которого применяются исключения. // * Значение - Строка, Массив - описание исключенных реквизитов. // - "*" - Исключены все реквизиты объекта метаданных. @@ -1729,40 +1714,48 @@ КонецФункции -// Функция возвращает объект WSПрокси созданный с переданными параметрами. +// Конструктор объекта WSПрокси. +// +// Отличия от конструктора Новый WSПрокси: +// - встроенный конструктор WSОпределения; +// - кэширует файл WSDL; +// - не требуется указание ИнтернетПрокси (используется автоматически, если настроен); +// - умеет делать быструю проверку доступности сервиса. // // Параметры: -// АдресWSDL - Строка - месторасположение wsdl. -// URIПространстваИмен - Строка - URI пространства имен web-сервиса. -// ИмяСервиса - Строка - имя сервиса. -// ИмяТочкиПодключения - Строка - если не задано, образуется как <ИмяСервиса>Soap. -// ИмяПользователя - Строка - имя пользователя для входа на сервер. -// Пароль - Строка - пароль пользователя. -// Таймаут - Число - таймаут на операции выполняемые через полученное прокси. +// Параметры - Структура - настройки подключения (необходимо использовать функцию ПараметрыПодключенияWSПрокси): +// * АдресWSDL - Строка - месторасположение wsdl. +// * URIПространстваИмен - Строка - URI пространства имен web-сервиса. +// * ИмяСервиса - Строка - имя сервиса. +// * ИмяТочкиПодключения - Строка - (необязательный) если не задано, образуется как <ИмяСервиса>Soap. +// * ИмяПользователя - Строка - (необязательный) имя пользователя для входа на сервер. +// * Пароль - Строка - (необязательный) пароль пользователя. +// * Таймаут - Число - (необязательный) таймаут на операции выполняемые через полученное прокси. +// * Местоположение - Строка - (необязательный) фактический адрес сервиса. Используется, если адрес реального +// расположения сервиса отличается от адреса, который указан в WSDL-файле. +// * ИспользоватьАутентификациюОС - Булево - (необязательный) включает использование авторизации NTLM или Negotiate на сервере. +// * ДелатьКонтрольныйВызов - Булево - (необязательный) выполнять проверку доступности сервиса (требуется +// поддержка этой команды веб-сервисом). // // Возвращаемое значение: -// WSПрокси +// WSПрокси. // -Функция WSПрокси(Знач АдресWSDL, - Знач URIПространстваИмен, - Знач ИмяСервиса, - Знач ИмяТочкиПодключения = "", - Знач ИмяПользователя, - Знач Пароль, - Знач Таймаут = 0, - Знач ДелатьКонтрольныйВызов = Ложь) Экспорт - +Функция СоздатьWSПрокси(ПереданныеПараметры) Экспорт + + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр("СоздатьWSПрокси", "Параметры", ПереданныеПараметры, Тип("Структура"), + Новый Структура("АдресWSDL,URIПространстваИмен,ИмяСервиса", Тип("Строка"), Тип("Строка"), Тип("Строка"))); + + ПараметрыПодключения = ПараметрыПодключенияWSПрокси(); + ЗаполнитьЗначенияСвойств(ПараметрыПодключения, ПереданныеПараметры); + + ДелатьКонтрольныйВызов = ПараметрыПодключения.ДелатьКонтрольныйВызов; + Таймаут = ПараметрыПодключения.Таймаут; + Если ДелатьКонтрольныйВызов И Таймаут <> Неопределено И Таймаут > 20 Тогда - - WSПроксиPing = ОбщегоНазначенияПовтИсп.WSПрокси( - АдресWSDL, - URIПространстваИмен, - ИмяСервиса, - ИмяТочкиПодключения, - ИмяПользователя, - Пароль, - 3); - + ПараметрыПодключения.Таймаут = 3; + ПараметрыПодключенияСтрокой = ЗначениеВСтрокуXML(ПараметрыПодключения); + WSПроксиPing = ОбщегоНазначенияПовтИсп.СоздатьWSПрокси(ПараметрыПодключенияСтрокой); + ПараметрыПодключения.Таймаут = Таймаут; Попытка WSПроксиPing.Ping(); Исключение @@ -1770,30 +1763,42 @@ УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); ВызватьИсключение; КонецПопытки; - КонецЕсли; - Возврат ОбщегоНазначенияПовтИсп.WSПрокси( - АдресWSDL, - URIПространстваИмен, - ИмяСервиса, - ИмяТочкиПодключения, - ИмяПользователя, - Пароль, - Таймаут); + ПараметрыПодключенияСтрокой = ЗначениеВСтрокуXML(ПараметрыПодключения); + Возврат ОбщегоНазначенияПовтИсп.СоздатьWSПрокси(ПараметрыПодключенияСтрокой); КонецФункции +// Возвращает структуру параметров для функции СоздатьWSПрокси. +Функция ПараметрыПодключенияWSПрокси() Экспорт + Результат = Новый Структура; + Результат.Вставить("АдресWSDL"); + Результат.Вставить("URIПространстваИмен"); + Результат.Вставить("ИмяСервиса"); + Результат.Вставить("ИмяТочкиПодключения", ""); + Результат.Вставить("ИмяПользователя"); + Результат.Вставить("Пароль"); + Результат.Вставить("Таймаут", 0); + Результат.Вставить("Местоположение"); + Результат.Вставить("ИспользоватьАутентификациюОС", Ложь); + Результат.Вставить("ДелатьКонтрольныйВызов", Ложь); + Возврат Результат; +КонецФункции + // Определяет доступность объекта метаданных по функциональным опциям. // // Параметры: // ОбъектМетаданных - ОбъектМетаданных - проверяемый объект метаданных. // -// Возвращаемое значение: -// Булево - Истина, если объект доступен. +// Возвращаемое значение: +// Булево - Истина, если объект доступен. // Функция ОбъектМетаданныхДоступенПоФункциональнымОпциям(ОбъектМетаданных) Экспорт - Возврат ОбщегоНазначенияПовтИсп.ДоступностьОбъектовПоОпциям()[ОбъектМетаданных] <> Ложь; + Если ОбъектМетаданных = Неопределено Тогда + Возврат Ложь; + КонецЕсли; + Возврат ОбщегоНазначенияПовтИсп.ДоступностьОбъектовПоОпциям()[ОбъектМетаданных.ПолноеИмя()] <> Ложь; КонецФункции // Устанавливает или снимает пометку удаления для всех объектов, которые ссылаются на заданный "объект-владелец". @@ -1816,9 +1821,7 @@ Для Каждого Ссылка Из Ссылки Цикл Если ЗначениеСсылочногоТипа(Ссылка[1]) Тогда - Ссылка[1].ПолучитьОбъект().УстановитьПометкуУдаления(ПометкаУдаления); - КонецЕсли; КонецЦикла; @@ -1892,7 +1895,7 @@ ОбщиеПараметры = Новый Структура; ОбщиеПараметры.Вставить("ИмяФормыПерсональныхНастроек", ""); - ОбщиеПараметры.Вставить("МинимальноНеобходимаяВерсияПлатформы", "8.3.6.2041"); + ОбщиеПараметры.Вставить("МинимальноНеобходимаяВерсияПлатформы", "8.3.8.1652"); ОбщиеПараметры.Вставить("РаботаВПрограммеЗапрещена", Ложь); // Блокировать запуск, если версия ниже минимальной. ОбщиеПараметры.Вставить("ЗапрашиватьПодтверждениеПриЗавершенииПрограммы", Истина); ОбщиеПараметры.Вставить("ОтключитьИдентификаторыОбъектовМетаданных", Ложь); @@ -1978,51 +1981,6 @@ КонецФункции -// Предназначена для вставки в начало обработчика ПриСозданииНаСервере управляемых форм, которые размещаются на рабочем -// столе. -// -// Предотвращает открытие формы в ряде особых случаев: -// - если рабочий стол открывается до завершения обновления данных ИБ -// (исключается возможность заведомо ошибочного обращения к еще необновленным данным); -// - если в разделенную ИБ выполняется вход в сеансе с неустановленным значением разделителя -// ОбластьДанныхОсновныеДанные -// (исключается возможность заведомо ошибочного обращения к разделенным данным из неразделенного сеанса); -// -// Не следует использовать в формах, которые используются перед началом работы системы, -// а также в формах, предназначенных для работы в неразделенном сеансе. -// -// Параметры: -// Форма - УправляемаяФорма - ссылка на форму, которая создается. -// Отказ - Булево - параметр переданный в обработчик формы ПриСозданииНаСервере. -// СтандартнаяОбработка - Булево - параметр переданный в обработчик формы ПриСозданииНаСервере. -// -// Возвращаемое значение: -// Булево - если Ложь, значит установлен отказ создания формы. -// -Функция ПриСозданииНаСервере(Форма, Отказ, СтандартнаяОбработка) Экспорт - - Если ОбщегоНазначенияПовтИсп.РазделениеВключено() - И Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда - Отказ = Истина; - Возврат Ложь; - КонецЕсли; - - Если Форма.Параметры.Свойство("АвтоТест") Тогда - // Возврат при получении формы для анализа. - Возврат Ложь; - КонецЕсли; - - УстановитьПривилегированныйРежим(Истина); - Если ПараметрыСеанса.ПараметрыКлиентаНаСервере.Получить("СкрытьРабочийСтолПриНачалеРаботыСистемы") <> Неопределено Тогда - Отказ = Истина; - Возврат Ложь; - КонецЕсли; - УстановитьПривилегированныйРежим(Ложь); - - Возврат Истина; - -КонецФункции - // Выполняет действия перед продолжением выполнения обработчика регламентного задания. // // Например, проверяет возможность выполнения обработчика регламентного задания. @@ -2160,47 +2118,97 @@ КонецФункции -// Устарела. Следует использовать СклонениеПредставленийОбъектов.Просклонять -// -// Функция склоняет переданную фразу. -// Только для работы на ОС Windows. -// -// Параметры: -// ФИО - Строка - фамилия, имя и отчество в именительном падеже, -// которые необходимо просклонять. -// Падеж - Число - падеж, в который необходимо поставить ФИО: -// 1 - Именительный -// 2 - Родительный -// 3 - Дательный -// 4 - Винительный -// 5 - Творительный -// 6 - Предложный -// Результат - Строка - в этот параметр помещается результат склонения. -// Если ФИО не удалось просклонять, то возвращается значение ФИО. -// Пол - Число - пол физического лица, 1 - мужской, 2 - женский. +// Возвращает адрес информационной базы для для пользователей, работающих в базе через Интернет. // // Возвращаемое значение: -// Булево - Истина, если ФИО удалось просклонять. +// Строка - значение константы. // -Функция Просклонять(Знач ФИО, Падеж, Результат, Пол = Неопределено) Экспорт +Функция АдресПубликацииИнформационнойБазыВИнтернете() Экспорт - Если ПодсистемаСуществует("СтандартныеПодсистемы.СклонениеПредставленийОбъектов") Тогда - МодульСклонениеПредставленийОбъектов = ОбщийМодуль("СклонениеПредставленийОбъектов"); - - Результат = МодульСклонениеПредставленийОбъектов.ПросклонятьФИО(ФИО, Падеж, , Пол); - Если ЗначениеЗаполнено(Результат) Тогда - Возврат Истина; - Иначе - Результат = ФИО; - Возврат Ложь; - КонецЕсли; - - КонецЕсли; + УстановитьПривилегированныйРежим(Истина); - ВызватьИсключение НСтр("ru = 'Для вызова ОбщегоНазначения.Просклонять необходима подсистема «Склонение представлений объектов».'"); + Возврат Константы.АдресПубликацииИнформационнойБазыВИнтернете.Получить(); КонецФункции +// Возвращает адрес информационной базы для для пользователей, работающих в базе из локальной сети. +// +// Возвращаемое значение: +// Строка - значение константы. +// +Функция АдресПубликацииИнформационнойБазыВЛокальнойСети() Экспорт + + УстановитьПривилегированныйРежим(Истина); + + Возврат Константы.АдресПубликацииИнформационнойБазыВЛокальнойСети.Получить(); + +КонецФункции + +// Возвращает адрес входа в программу для указанного пользователя. +// +// Параметры: +// Пользователь - Строка - логин пользователя для входа в программу; +// Пароль - Строка - пароль пользователя для входа в программу; +// ВидПубликацииИБ - Строка - через какую публикацию пользователь входит в программу: +// "ВИнтернете" или "ВЛокальнойСети". +// +// Возвращаемое значение: +// Строка, Неопределено. +Функция АдресВходаВПрограмму(Пользователь, Пароль, ВидПубликацииИБ) Экспорт + + Результат = ""; + + Если НРег(ВидПубликацииИБ) = НРег("ВИнтернете") Тогда + Результат = АдресПубликацииИнформационнойБазыВИнтернете(); + ИначеЕсли НРег(ВидПубликацииИБ) = НРег("ВЛокальнойСети") Тогда + Результат = АдресПубликацииИнформационнойБазыВЛокальнойСети(); + КонецЕсли; + + Если ПустаяСтрока(Результат) Тогда + Возврат Неопределено; + КонецЕсли; + + Если Не СтрЗаканчиваетсяНа(Результат, "/") Тогда + Результат = Результат + "/"; + КонецЕсли; + + Результат = Результат + "?n=" + КодироватьСтроку(Пользователь, СпособКодированияСтроки.КодировкаURL); + Если ЗначениеЗаполнено(Пароль) Тогда + Результат = Результат + "&p=" + КодироватьСтроку(Пароль, СпособКодированияСтроки.КодировкаURL); + КонецЕсли; + + Возврат Результат; + +КонецФункции + +// Сохраняет персональные настройки пользователя. +// +// Параметры: +// Структура со свойствами: +// * НапоминатьОбУстановкеРасширенияРаботыСФайлами - Булево - Признак необходимости +// напоминания об установке расширения. +// * ЗапрашиватьПодтверждениеПриЗавершенииПрограммы - Булево - Запрашивать подтверждение по завершении работы. +// +Процедура СохранитьПерсональныеНастройки(Настройки) Экспорт + + Если Настройки.Свойство("НапоминатьОбУстановкеРасширенияРаботыСФайлами") Тогда + ПараметрыКлиентаНаСервере = ПараметрыСеанса.ПараметрыКлиентаНаСервере; + Если ПараметрыКлиентаНаСервере.Получить("ЭтоВебКлиент") Тогда + ИдентификаторКлиента = ПараметрыКлиентаНаСервере.Получить("ИдентификаторКлиента"); + ХранилищеОбщихНастроекСохранить( + "НастройкиПрограммы/ПредлагатьУстановкуРасширенияРаботыСФайлами", + ИдентификаторКлиента, Настройки.НапоминатьОбУстановкеРасширенияРаботыСФайлами); + КонецЕсли; + КонецЕсли; + + Если Настройки.Свойство("ЗапрашиватьПодтверждениеПриЗавершенииПрограммы") Тогда + ХранилищеОбщихНастроекСохранить("ОбщиеНастройкиПользователя", + "ЗапрашиватьПодтверждениеПриЗавершенииПрограммы", + Настройки.ЗапрашиватьПодтверждениеПриЗавершенииПрограммы); + КонецЕсли; + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Процедуры и функции для работы с формами. @@ -2228,21 +2236,6 @@ КонецПроцедуры -// Устарела. Следует использовать ОбщегоНазначенияКлиентСервер.КартинкаКомментария. -// -// Получает картинку для вывода на странице с комментарием в зависимости -// от наличия текста в комментарии. -// -// Параметры: -// Комментарий - Строка - текст комментария. -// -// Возвращаемое значение: -// Картинка - Картинка, которая должна отображаться на странице с комментарием. -// -Функция ПолучитьКартинкуКомментария(Комментарий) Экспорт - Возврат ОбщегоНазначенияКлиентСервер.КартинкаКомментария(Комментарий); -КонецФункции - //////////////////////////////////////////////////////////////////////////////// // Процедуры и функции для работы с типами, объектами метаданных и их строковыми представлениями. @@ -4636,15 +4629,20 @@ //////////////////////////////////////////////////////////////////////////////// // Процедуры и функции для работы с хранилищем паролей. + // Записывает конфиденциальные данные в безопасное хранилище. // Вызывающий код должен самостоятельно устанавливать привилегированный режим. // // Параметры: -// Владелец - ПланОбменаСсылка, СправочникСсылка - ссылка на объект информационной базы, -// представляющий объект-владелец сохраняемого пароля. -// Для объектов других типов в качестве Владельца рекомендуется использовать ссылку на -// элемент метаданных этого типа в справочнике ИдентификаторыОбъектовМетаданных. -// Например, Владелец = ОбщегоНазначения.ИдентификаторОбъектаМетаданных("РегистрСведений.АдресныеОбъекты"); +// Владелец - ПланОбменаСсылка, СправочникСсылка, Строка - ссылка на объект информационной базы, +// представляющий объект-владелец сохраняемого пароля или строка до 128 символов. +// Для объектов других типов в качестве Владельца рекомендуется использовать ссылку на +// элемент метаданных этого типа в справочнике ИдентификаторыОбъектовМетаданных +// или ключ в виде строки с учетом имен подсистем. +// Например, для БСП: +// Владелец = ОбщегоНазначения.ИдентификаторОбъектаМетаданных("РегистрСведений.АдресныеОбъекты"); +// Владелец = "СтандартныеПодсистемы.УправлениеДоступом";, если нужно 1 хранилище на подсистему БСП +// Владелец = "СтандартныеПодсистемы.УправлениеДоступом.<Уточнение>";, если нужно более 1 хранилища на подсистему БСП. // Данные - Произвольный - Данные помещаемые в безопасное хранилище. Неопределенно - удаляет данные. // Ключ - Строка - Ключ сохраняемых настроек, по умолчанию "Пароль". // @@ -4692,8 +4690,8 @@ // Вызывающий код должен самостоятельно устанавливать привилегированный режим. // // Параметры: -// Владелец - ПланОбменаСсылка, СправочникСсылка - ссылка на объект информационной базы, -// представляющий объект-владелец сохраняемого пароля. +// Владелец - ПланОбменаСсылка, СправочникСсылка, Строка - ссылка на объект информационной базы, +// представляющий объект-владелец сохраняемого пароля или строка до 128 символов. // Ключи - Строка - Содержит список имен сохраненных данных, указанных через запятую. // ОбщиеДанные - Булево - Истина, если требуется в модели сервиса получить данные из общих данных в разделенном режиме. // @@ -4734,8 +4732,8 @@ // Вызывающий код должен самостоятельно устанавливать привилегированный режим. // // Параметры: -// Владелец - ПланОбменаСсылка, СправочникСсылка - ссылка на объект информационной базы, -// представляющий объект-владелец сохраняемого пароля. +// Владелец - ПланОбменаСсылка, СправочникСсылка, Строка - ссылка на объект информационной базы, +// представляющий объект-владелец сохраняемого пароля или строка до 128 символов. // Ключи - Строка - Содержит список имен удаляемых данных, указанных через запятую. // Неопределенно - удаляет все данные. // @@ -4817,7 +4815,7 @@ Функция ОбщийМодуль(Имя) Экспорт Если Метаданные.ОбщиеМодули.Найти(Имя) <> Неопределено Тогда - Модуль = РаботаВБезопасномРежиме.ВычислитьВБезопасномРежиме(Имя); + Модуль = Вычислить(Имя); // ВычислитьВБезопасномРежиме не требуется, т.к. проверка надежная. ИначеЕсли СтрЧислоВхождений(Имя, ".") = 1 Тогда Возврат СерверныйМодульМенеджера(Имя); Иначе @@ -4948,6 +4946,151 @@ КонецФункции +//////////////////////////////////////////////////////////////////////////////// +// Процедуры и функции для работы с предупреждениями безопасности. + +// Проверяет наличие механизма платформы, предупреждающего об опасных действиях. +// +// Возвращаемое значение: +// Булево - если Истина, тогда работает механизм предупреждений безопасности. +// +Функция ЕстьЗащитаОтОпасныхДействий() Экспорт + + Возврат СтандартныеПодсистемыПовтИсп.ЕстьЗащитаОтОпасныхДействий(); + +КонецФункции + +// Возвращает описание защиты от опасных действий с отключенными предупреждениями. +// Функция не приводит к ошибке компиляции при отсутствии в платформе механизмов +// предупреждений безопасности. +// +// Возвращаемое значение: +// ОписаниеЗащитыОтОпасныхДействий - со свойством ПредупреждатьОбОпасныхДействиях = Ложь. +// +Функция ОписаниеЗащитыБезПредупреждений() Экспорт + + ИмяТипа = "ОписаниеЗащитыОтОпасныхДействий"; + ОписаниеЗащиты = Новый(ИмяТипа); + ОписаниеЗащиты.ПредупреждатьОбОпасныхДействиях = Ложь; + + Возврат ОписаниеЗащиты; + +КонецФункции + +#Область УстаревшиеПроцедурыИФункции + +// Устарела. Следует использовать ОбщегоНазначенияКлиентСервер.ДополнитьМассив, +// установив параметра ТолькоУникальныеЗначения в значение Истина. +// +// Заполняет массив-приемник уникальными значениями из массива-источника. +// Если элемент в массиве-приемнике уже существует, то добавления нового элемента не происходит. +// +// Параметры: +// МассивПриемник - Массив - массив, который заполняется уникальными значениями. +// МассивИсточник - Массив - массив, из которого подбираются элементы в массив-приемник. +// +Процедура ЗаполнитьМассивУникальнымиЗначениями(МассивПриемник, МассивИсточник) Экспорт + + ОбщегоНазначенияКлиентСервер.ДополнитьМассив(МассивПриемник, МассивИсточник, Истина); + +КонецПроцедуры + +// Устарела. Следует использовать ОбщегоНазначенияКлиентСервер.КартинкаКомментария. +// +// Получает картинку для вывода на странице с комментарием в зависимости +// от наличия текста в комментарии. +// +// Параметры: +// Комментарий - Строка - текст комментария. +// +// Возвращаемое значение: +// Картинка - Картинка, которая должна отображаться на странице с комментарием. +// +Функция ПолучитьКартинкуКомментария(Комментарий) Экспорт + Возврат ОбщегоНазначенияКлиентСервер.КартинкаКомментария(Комментарий); +КонецФункции + +// Устарела. Следует использовать СклонениеПредставленийОбъектов.Просклонять. +// +// Функция склоняет переданную фразу. +// Только для работы на ОС Windows. +// +// Параметры: +// ФИО - Строка - фамилия, имя и отчество в именительном падеже, +// которые необходимо просклонять. +// Падеж - Число - падеж, в который необходимо поставить ФИО: +// 1 - Именительный +// 2 - Родительный +// 3 - Дательный +// 4 - Винительный +// 5 - Творительный +// 6 - Предложный +// Результат - Строка - в этот параметр помещается результат склонения. +// Если ФИО не удалось просклонять, то возвращается значение ФИО. +// Пол - Число - пол физического лица, 1 - мужской, 2 - женский. +// +// Возвращаемое значение: +// Булево - Истина, если ФИО удалось просклонять. +// +Функция Просклонять(Знач ФИО, Падеж, Результат, Пол = Неопределено) Экспорт + + Если ПодсистемаСуществует("СтандартныеПодсистемы.СклонениеПредставленийОбъектов") Тогда + МодульСклонениеПредставленийОбъектов = ОбщийМодуль("СклонениеПредставленийОбъектов"); + + Результат = МодульСклонениеПредставленийОбъектов.ПросклонятьФИО(ФИО, Падеж, , Пол); + Если ЗначениеЗаполнено(Результат) Тогда + Возврат Истина; + Иначе + Результат = ФИО; + Возврат Ложь; + КонецЕсли; + + КонецЕсли; + + ВызватьИсключение НСтр("ru = 'Для вызова ОбщегоНазначения.Просклонять необходима подсистема «Склонение представлений объектов».'"); + +КонецФункции + +// Устарела. Следует использовать СоздатьWSПрокси. +// +// Функция возвращает объект WSПрокси созданный с переданными параметрами. +// +// Параметры: +// АдресWSDL - Строка - месторасположение wsdl. +// URIПространстваИмен - Строка - URI пространства имен web-сервиса. +// ИмяСервиса - Строка - имя сервиса. +// ИмяТочкиПодключения - Строка - если не задано, образуется как <ИмяСервиса>Soap. +// ИмяПользователя - Строка - имя пользователя для входа на сервер. +// Пароль - Строка - пароль пользователя. +// Таймаут - Число - таймаут на операции выполняемые через полученное прокси. +// +// Возвращаемое значение: +// WSПрокси +// +Функция WSПрокси(Знач АдресWSDL, + Знач URIПространстваИмен, + Знач ИмяСервиса, + Знач ИмяТочкиПодключения = "", + Знач ИмяПользователя, + Знач Пароль, + Знач Таймаут = 0, + Знач ДелатьКонтрольныйВызов = Ложь) Экспорт + + ПараметрыПодключения = ПараметрыПодключенияWSПрокси(); + ПараметрыПодключения.АдресWSDL = АдресWSDL; + ПараметрыПодключения.URIПространстваИмен = URIПространстваИмен; + ПараметрыПодключения.ИмяСервиса = ИмяСервиса; + ПараметрыПодключения.ИмяТочкиПодключения = ИмяТочкиПодключения; + ПараметрыПодключения.ИмяПользователя = ИмяПользователя; + ПараметрыПодключения.Пароль = Пароль; + ПараметрыПодключения.Таймаут = Таймаут; + + Возврат СоздатьWSПрокси(ПараметрыПодключения); + +КонецФункции + +#КонецОбласти + #КонецОбласти #Область СлужебныйПрограммныйИнтерфейс @@ -4973,7 +5116,7 @@ КонецФункции // Выгружает запрос в строку XML, которую можно вставить в Консоль запросов. -// Для переноса запроса и всех его параметров в Консоль запросов, необходимо вызвать функцию в окне +// Для переноса запроса и всех его параметров в Консоль запросов, необходимо вызвать функцию в окне. // «Вычислить выражение»(Shift + F9), скопировать полученный XML в поле "Текст запроса" // консоли запросов и выполнить команду "Заполнить из XML" из меню "Еще". // Подробнее об использование функции смотрите в справке к консоли запросов. @@ -5205,22 +5348,17 @@ Возврат Определения; КонецФункции -// Функция возвращает объект WSПрокси созданный с переданными параметрами. -// -// Параметры: -// АдресWSDL - Строка - месторасположение wsdl. -// URIПространстваИмен - Строка - URI пространства имен web-сервиса. -// ИмяСервиса - Строка - имя сервиса. -// ИмяТочкиПодключения - Строка - если не задано, образуется как <ИмяСервиса>Soap. -// ИмяПользователя - Строка - имя пользователя для входа на сервер. -// Пароль - Строка - пароль пользователя. -// Таймаут - Число - таймаут на операции выполняемые через полученное прокси. -// -// Возвращаемое значение: -// WSПрокси -// -Функция ВнутренняяWSПрокси(Знач АдресWSDL, Знач URIПространстваИмен, Знач ИмяСервиса, - Знач ИмяТочкиПодключения, Знач ИмяПользователя, Знач Пароль, Знач Таймаут) Экспорт +Функция ВнутренняяWSПрокси(Параметры) Экспорт + + АдресWSDL = Параметры.АдресWSDL; + URIПространстваИмен = Параметры.URIПространстваИмен; + ИмяСервиса = Параметры.ИмяСервиса; + ИмяТочкиПодключения = Параметры.ИмяТочкиПодключения; + ИмяПользователя = Параметры.ИмяПользователя; + Пароль = Параметры.Пароль; + Таймаут = Параметры.Таймаут; + Местоположение = Параметры.Местоположение; + ИспользоватьАутентификациюОС = Параметры.ИспользоватьАутентификациюОС; WSОпределения = ОбщегоНазначенияПовтИсп.WSОпределения(АдресWSDL, ИмяПользователя, Пароль); @@ -5245,7 +5383,9 @@ ЗащищенноеСоединение = Новый ЗащищенноеСоединениеOpenSSL; КонецЕсли; - Прокси = Новый WSПрокси(WSОпределения, URIПространстваИмен, ИмяСервиса, ИмяТочкиПодключения, ИнтернетПрокси, Таймаут, ЗащищенноеСоединение); + Прокси = Новый WSПрокси(WSОпределения, URIПространстваИмен, ИмяСервиса, ИмяТочкиПодключения, + ИнтернетПрокси, Таймаут, ЗащищенноеСоединение, Местоположение, ИспользоватьАутентификациюОС); + Прокси.Пользователь = ИмяПользователя; Прокси.Пароль = Пароль; @@ -5319,9 +5459,17 @@ АдресСервиса = ПараметрыПодключения.URL + "/ws/InterfaceVersion?wsdl"; - ПроксиВерсионирования = WSПрокси(АдресСервиса, "http://www.1c.ru/SaaS/1.0/WS", - "InterfaceVersion", , ИмяПользователя, ПарольПользователя, 3); - + + ПараметрыПодключения = Новый Структура; + ПараметрыПодключения.Вставить("АдресWSDL", АдресСервиса); + ПараметрыПодключения.Вставить("URIПространстваИмен", "http://www.1c.ru/SaaS/1.0/WS"); + ПараметрыПодключения.Вставить("ИмяСервиса", "InterfaceVersion"); + ПараметрыПодключения.Вставить("ИмяПользователя", ИмяПользователя); + ПараметрыПодключения.Вставить("Пароль", ПарольПользователя); + ПараметрыПодключения.Вставить("Таймаут", 3); + + ПроксиВерсионирования = СоздатьWSПрокси(ПараметрыПодключения); + МассивXDTO = ПроксиВерсионирования.GetVersions(ИмяИнтерфейса); Если МассивXDTO = Неопределено Тогда Возврат Новый ФиксированныйМассив(Новый Массив); @@ -5560,7 +5708,7 @@ |либо для него не поддерживается получение модуля менеджера.'"), Имя); КонецЕсли; - Модуль = РаботаВБезопасномРежиме.ВычислитьВБезопасномРежиме(Имя); + Модуль = Вычислить(Имя); // ВычислитьВБезопасномРежиме не требуется, т.к. проверка надежная. Возврат Модуль; КонецФункции @@ -5649,7 +5797,7 @@ КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// -// ВСПОМОГАТЕЛЬНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ Замена ссылок. +// Вспомогательные процедуры и функции по замене ссылок. Функция ОписаниеТипаКлючиЗаписей() @@ -5732,32 +5880,35 @@ // Будем производить сразу все замены для этих данных. Фильтр = Новый Структура("Данные, КлючЗамены", Данные, "Константа"); ОбрабатываемыеСтроки = МестоИспользования.Владелец().НайтиСтроки(Фильтр); - + // Помечаем как обработанные + Для Каждого Строка Из ОбрабатываемыеСтроки Цикл + Строка.КлючЗамены = ""; + КонецЦикла; + СостояниеОперации = ""; - + Ошибка = ""; Если ВнутренняяТранзакция Тогда НачатьТранзакцию(); - - Блокировка = Новый БлокировкаДанных; - Блокировка.Добавить(Мета.ПолноеИмя()); + КонецЕсли; - Попытка - Блокировка.Заблокировать(); - Исключение - // Добавляем запись в результат о неудачной попытке блокировке. - Ошибка = НСтр("ru = 'Не удалось заблокировать константу %1'"); - Ошибка = СтрЗаменить(Ошибка, "%1", ПредставлениеДанных); - - СостояниеОперации = "ОшибкаБлокировки"; - КонецПопытки; - - КонецЕсли; // Необходимость блокировки + Попытка + Если ВнутренняяТранзакция Тогда + Блокировка = Новый БлокировкаДанных; + Блокировка.Добавить(Мета.ПолноеИмя()); + Попытка + Блокировка.Заблокировать(); + Исключение + Ошибка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не удалось заблокировать константу %1'"), + ПредставлениеДанных); + СостояниеОперации = "ОшибкаБлокировки"; + ВызватьИсключение; + КонецПопытки; + КонецЕсли; - Если СостояниеОперации = "" Тогда Менеджер = Константы[Мета.Имя].СоздатьМенеджерЗначения(); Менеджер.Прочитать(); - ЗаменаПроизведена = Истина; + ЗаменаПроизведена = Ложь; Для Каждого Строка Из ОбрабатываемыеСтроки Цикл Если Менеджер.Значение = Строка.Ссылка Тогда Менеджер.Значение = Строка.ЦелеваяСсылка; @@ -5765,58 +5916,52 @@ КонецЕсли; КонецЦикла; - Если ЗаменаПроизведена Тогда - // Пытаемся сохранить - Если Не ПараметрыЗаписи.ПривилегированнаяЗапись Тогда - УстановитьПривилегированныйРежим(Ложь); - КонецЕсли; - - Попытка - ЗаписатьОбъект(Менеджер, ПараметрыЗаписи); - Исключение - // Сохраняем причину - Информация = ИнформацияОбОшибке(); - ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииЗаменыСсылок(), - УровеньЖурналаРегистрации.Ошибка, Мета, ПодробноеПредставлениеОшибки(Информация)); - - // Добавляем запись в результат о ошибке записи. - ОписаниеОшибки = КраткоеПредставлениеОшибки(Информация); - Если ПустаяСтрока(ОписаниеОшибки) Тогда - ОписаниеОшибки = Информация.Описание; - КонецЕсли; - - Ошибка = НСтр("ru = 'Не удалось записать %1 по причине: %2'"); - Ошибка = СтрЗаменить(Ошибка, "%1", ПредставлениеДанных); - Ошибка = СтрЗаменить(Ошибка, "%2", ОписаниеОшибки); - - Для Каждого Строка Из ОбрабатываемыеСтроки Цикл - ЗарегистрироватьОшибкуЗамены(Результат, Строка.Ссылка, - ОписаниеОшибкиЗамены("ОшибкаЗаписи", Данные, ПредставлениеДанных, Ошибка)); - КонецЦикла; - - СостояниеОперации = "ОшибкаЗаписи"; - КонецПопытки; - - Если Не ПараметрыЗаписи.ПривилегированнаяЗапись Тогда - УстановитьПривилегированныйРежим(Истина); - КонецЕсли; - + Если Не ЗаменаПроизведена Тогда + Если ВнутренняяТранзакция Тогда + ОтменитьТранзакцию(); + КонецЕсли; + Возврат; + КонецЕсли; + + // Пытаемся сохранить + Если Не ПараметрыЗаписи.ПривилегированнаяЗапись Тогда + УстановитьПривилегированныйРежим(Ложь); КонецЕсли; - КонецЕсли; - - Если ВнутренняяТранзакция Тогда - Если СостояниеОперации = "" Тогда + + Попытка + ЗаписатьОбъект(Менеджер, ПараметрыЗаписи); + Исключение + ОписаниеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); + Ошибка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не удалось записать %1 по причине: %2'"), + ПредставлениеДанных, ОписаниеОшибки); + СостояниеОперации = "ОшибкаЗаписи"; + ВызватьИсключение; + КонецПопытки; + + Если Не ПараметрыЗаписи.ПривилегированнаяЗапись Тогда + УстановитьПривилегированныйРежим(Истина); + КонецЕсли; + + Если ВнутренняяТранзакция Тогда ЗафиксироватьТранзакцию(); - Иначе + КонецЕсли; + Исключение + Если ВнутренняяТранзакция Тогда ОтменитьТранзакцию(); - КонецЕсли; - КонецЕсли; + КонецЕсли; + ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииЗаменыСсылок(), УровеньЖурналаРегистрации.Ошибка, + Мета,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + Если СостояниеОперации = "ОшибкаЗаписи" Тогда + Для Каждого Строка Из ОбрабатываемыеСтроки Цикл + ЗарегистрироватьОшибкуЗамены(Результат, Строка.Ссылка, + ОписаниеОшибкиЗамены("ОшибкаЗаписи", Данные, ПредставлениеДанных, Ошибка)); + КонецЦикла; + Иначе + ЗарегистрироватьОшибкуЗамены(Результат, Строка.Ссылка, + ОписаниеОшибкиЗамены(СостояниеОперации, Данные, ПредставлениеДанных, Ошибка)); + КонецЕсли; + КонецПопытки; - // Помечаем как обработанные - Для Каждого Строка Из ОбрабатываемыеСтроки Цикл - Строка.КлючЗамены = ""; - КонецЦикла; - КонецПроцедуры Процедура ПроизвестиЗаменуВОбъекте(Результат, Знач МестоИспользования, Знач ПараметрыВыполнения, Знач ВнутренняяТранзакция = Истина) @@ -5830,37 +5975,30 @@ ОбрабатываемыеСтроки = МестоИспользования.Владелец().НайтиСтроки(Фильтр); ПредставлениеДанных = ПредметСтрокой(Данные); - СостояниеОперации = ""; - + ТекстОшибки = ""; Если ВнутренняяТранзакция Тогда НачатьТранзакцию(); - - Блокировка = Новый БлокировкаДанных; - ЗаблокироватьМестоИспользования(ПараметрыВыполнения, Блокировка, МестоИспользования); - - ИнформацияОбОшибке = Неопределено; - Попытка - Блокировка.Заблокировать(); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КонецПопытки; - Если ИнформацияОбОшибке <> Неопределено Тогда - СостояниеОперации = "ОшибкаБлокировки"; - ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Не удалось заблокировать объект ""%1"": - |%2'"), - ПредставлениеДанных, - СтандартныеПодсистемыКлиентСервер.ИсходнаяПричинаОшибки(ИнформацияОбОшибке)); - ОписаниеОшибки = ОписаниеОшибкиЗамены("ОшибкаБлокировки", Данные, ПредставлениеДанных, ТекстОшибки); - ЗарегистрироватьОшибкуЗамены(Результат, МестоИспользования.Ссылка, ОписаниеОшибки); - Для Каждого Строка Из ОбрабатываемыеСтроки Цикл - ЗарегистрироватьОшибкуЗамены(Результат, Строка.Ссылка, ОписаниеОшибки); - КонецЦикла; - КонецЕсли; КонецЕсли; - Если СостояниеОперации = "" Тогда + Попытка + + Если ВнутренняяТранзакция Тогда + Блокировка = Новый БлокировкаДанных; + ЗаблокироватьМестоИспользования(ПараметрыВыполнения, Блокировка, МестоИспользования); + Попытка + Блокировка.Заблокировать(); + Исключение + СостояниеОперации = "ОшибкаБлокировки"; + ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось заблокировать объект ""%1"": + |%2'"), + ПредставлениеДанных, + КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); + ВызватьИсключение; + КонецПопытки; + КонецЕсли; + ОбъектыЗаписи = ИзмененныеОбъектыПриЗаменеВОбъекте(ПараметрыВыполнения, МестоИспользования, ОбрабатываемыеСтроки); // Пытаемся сохранить, сам объект идет последним. @@ -5888,46 +6026,33 @@ КонецЦикла; КонецЕсли; Исключение - // Сохраняем причину - Информация = ИнформацияОбОшибке(); - ЗаписьЖурналаРегистрации( - СобытиеЖурналаРегистрацииЗаменыСсылок(), - УровеньЖурналаРегистрации.Ошибка, - МестоИспользования.Метаданные, - ПодробноеПредставлениеОшибки(Информация)); - - ОписаниеОшибки = КраткоеПредставлениеОшибки(Информация); - Если ПустаяСтрока(ОписаниеОшибки) Тогда - ОписаниеОшибки = Информация.Описание; - КонецЕсли; - - // Добавляем запись в результат о ошибке записи. - Ошибка = НСтр("ru = 'Не удалось записать %1 по причине: %2'"); - Ошибка = СтрЗаменить(Ошибка, "%1", ПредставлениеДанных); - Ошибка = СтрЗаменить(Ошибка, "%2", ОписаниеОшибки); - - Для Каждого Строка Из ОбрабатываемыеСтроки Цикл - ЗарегистрироватьОшибкуЗамены(Результат, Строка.Ссылка, - ОписаниеОшибкиЗамены("ОшибкаЗаписи", Данные, ПредставлениеДанных, Ошибка)); - КонецЦикла; - СостояниеОперации = "ОшибкаЗаписи"; + ОписаниеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); + ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не удалось записать %1 по причине: %2'"), + ПредставлениеДанных, ОписаниеОшибки); + ВызватьИсключение; КонецПопытки; - Если Не ПараметрыВыполнения.ПривилегированнаяЗапись Тогда - УстановитьПривилегированныйРежим(Истина); + Если ВнутренняяТранзакция Тогда + ЗафиксироватьТранзакцию(); КонецЕсли; - // Удаляем обработанные движения и последовательности из таблицы поиска. - КонецЕсли; - - Если ВнутренняяТранзакция Тогда - Если СостояниеОперации = "" Тогда - ЗафиксироватьТранзакцию(); - Иначе + Исключение + Если ВнутренняяТранзакция Тогда ОтменитьТранзакцию(); КонецЕсли; - КонецЕсли; + Информация = ИнформацияОбОшибке(); + ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииЗаменыСсылок(), УровеньЖурналаРегистрации.Ошибка, + МестоИспользования.Метаданные,, ПодробноеПредставлениеОшибки(Информация)); + Ошибка = ОписаниеОшибкиЗамены(СостояниеОперации, Данные, ПредставлениеДанных, ТекстОшибки); + Если СостояниеОперации = "ОшибкаЗаписи" Тогда + Для Каждого Строка Из ОбрабатываемыеСтроки Цикл + ЗарегистрироватьОшибкуЗамены(Результат, Строка.Ссылка, Ошибка); + КонецЦикла; + Иначе + ЗарегистрироватьОшибкуЗамены(Результат, МестоИспользования.Ссылка, Ошибка); + КонецЕсли; + КонецПопытки; // Помечаем как обработанные Для Каждого Строка Из ОбрабатываемыеСтроки Цикл @@ -5957,99 +6082,101 @@ ПарыЗамен.Вставить(Строка.Ссылка, Строка.ЦелеваяСсылка); КонецЦикла; - СостояниеОперации = ""; - - Если ВнутренняяТранзакция Тогда - НачатьТранзакцию(); - - // Блокировка и подготовка набора. - Блокировка = Новый БлокировкаДанных; - Для Каждого КлючЗначение Из ОписаниеНабора.СписокИзмерений Цикл - ТипИзмерения = КлючЗначение.Значение; - Имя = КлючЗначение.Ключ; - Значение = Данные[Имя]; - - Для Каждого Строка Из ОбрабатываемыеСтроки Цикл - ТекущаяСсылка = Строка.Ссылка; - Если ТипИзмерения.СодержитТип(ТипЗнч(ТекущаяСсылка)) Тогда - Блокировка.Добавить(ОписаниеНабора.ПространствоБлокировки).УстановитьЗначение(Имя, ТекущаяСсылка); - КонецЕсли; - КонецЦикла; - - НаборЗаписей.Отбор[Имя].Установить(Значение); - КонецЦикла; - - Попытка - Блокировка.Заблокировать(); - Исключение - // Добавляем запись в результат о неудачной попытке блокировке. - Ошибка = НСтр("ru = 'Не удалось заблокировать набор %1'"); - Ошибка = СтрЗаменить(Ошибка, "%1", ПредставлениеДанных); - - СостояниеОперации = "ОшибкаБлокировки"; - КонецПопытки; - - КонецЕсли; // Необходимость блокировки - - Если СостояниеОперации = "" Тогда - НаборЗаписей.Прочитать(); - ЗаменитьВКоллекцииСтрок("НаборЗаписей", "НаборЗаписей", НаборЗаписей, НаборЗаписей, ОписаниеНабора.СписокПолей, ПарыЗамен); - - Если НаборЗаписей.Модифицированность() Тогда - // Пытаемся сохранить - Если Не ПараметрыВыполнения.ПривилегированнаяЗапись Тогда - УстановитьПривилегированныйРежим(Ложь); - КонецЕсли; - - Попытка - ЗаписатьОбъект(НаборЗаписей, ПараметрыВыполнения); - Исключение - // Сохраняем причину - Информация = ИнформацияОбОшибке(); - ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииЗаменыСсылок(), - УровеньЖурналаРегистрации.Ошибка, Мета, ПодробноеПредставлениеОшибки(Информация)); - - ОписаниеОшибки = КраткоеПредставлениеОшибки(Информация); - Если ПустаяСтрока(ОписаниеОшибки) Тогда - ОписаниеОшибки = Информация.Описание; - КонецЕсли; - - // Добавляем запись в результат о ошибке записи. - Ошибка = НСтр("ru = 'Не удалось записать %1 по причине: %2'"); - Ошибка = СтрЗаменить(Ошибка, "%1", ПредставлениеДанных); - Ошибка = СтрЗаменить(Ошибка, "%2", ОписаниеОшибки); - - Для Каждого Строка Из ОбрабатываемыеСтроки Цикл - ЗарегистрироватьОшибкуЗамены(Результат, Строка.Ссылка, - ОписаниеОшибкиЗамены("ОшибкаЗаписи", Данные, ПредставлениеДанных, Ошибка)); - КонецЦикла; - - СостояниеОперации = "ОшибкаЗаписи"; - КонецПопытки; - - Если Не ПараметрыВыполнения.ПривилегированнаяЗапись Тогда - УстановитьПривилегированныйРежим(Истина); - КонецЕсли; - - КонецЕсли; - КонецЕсли; - - Если ВнутренняяТранзакция Тогда - Если СостояниеОперации = "" Тогда - ЗафиксироватьТранзакцию(); - Иначе - ОтменитьТранзакцию(); - КонецЕсли; - КонецЕсли; - // Помечаем как обработанные Для Каждого Строка Из ОбрабатываемыеСтроки Цикл Строка.КлючЗамены = ""; КонецЦикла; + СостояниеОперации = ""; + Ошибка = ""; + Если ВнутренняяТранзакция Тогда + НачатьТранзакцию(); + КонецЕсли; + + Попытка + + Если ВнутренняяТранзакция Тогда + // Блокировка и подготовка набора. + Блокировка = Новый БлокировкаДанных; + Для Каждого КлючЗначение Из ОписаниеНабора.СписокИзмерений Цикл + ТипИзмерения = КлючЗначение.Значение; + Имя = КлючЗначение.Ключ; + Значение = Данные[Имя]; + + Для Каждого Строка Из ОбрабатываемыеСтроки Цикл + ТекущаяСсылка = Строка.Ссылка; + Если ТипИзмерения.СодержитТип(ТипЗнч(ТекущаяСсылка)) Тогда + Блокировка.Добавить(ОписаниеНабора.ПространствоБлокировки).УстановитьЗначение(Имя, ТекущаяСсылка); + КонецЕсли; + КонецЦикла; + + НаборЗаписей.Отбор[Имя].Установить(Значение); + КонецЦикла; + + Попытка + Блокировка.Заблокировать(); + Исключение + Ошибка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не удалось заблокировать набор %1'"), + ПредставлениеДанных); + СостояниеОперации = "ОшибкаБлокировки"; + ВызватьИсключение; + КонецПопытки; + + КонецЕсли; + + НаборЗаписей.Прочитать(); + ЗаменитьВКоллекцииСтрок("НаборЗаписей", "НаборЗаписей", НаборЗаписей, НаборЗаписей, ОписаниеНабора.СписокПолей, ПарыЗамен); + + Если НаборЗаписей.Модифицированность() Тогда + Если ВнутренняяТранзакция Тогда + ОтменитьТранзакцию(); + КонецЕсли; + Возврат; + КонецЕсли; + + Если Не ПараметрыВыполнения.ПривилегированнаяЗапись Тогда + УстановитьПривилегированныйРежим(Ложь); + КонецЕсли; + + Попытка + ЗаписатьОбъект(НаборЗаписей, ПараметрыВыполнения); + Исключение + ОписаниеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); + Ошибка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не удалось записать %1 по причине: %2'"), + ПредставлениеДанных, ОписаниеОшибки); + СостояниеОперации = "ОшибкаЗаписи"; + ВызватьИсключение; + КонецПопытки; + + Если Не ПараметрыВыполнения.ПривилегированнаяЗапись Тогда + УстановитьПривилегированныйРежим(Истина); + КонецЕсли; + + Если ВнутренняяТранзакция Тогда + ЗафиксироватьТранзакцию(); + КонецЕсли; + + Исключение + Если ВнутренняяТранзакция Тогда + ОтменитьТранзакцию(); + КонецЕсли; + Информация = ИнформацияОбОшибке(); + ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииЗаменыСсылок(), УровеньЖурналаРегистрации.Ошибка, + Мета,, ПодробноеПредставлениеОшибки(Информация)); + Ошибка = ОписаниеОшибкиЗамены(СостояниеОперации, Данные, ПредставлениеДанных, Ошибка); + Если СостояниеОперации = "ОшибкаЗаписи" Тогда + Для Каждого Строка Из ОбрабатываемыеСтроки Цикл + ЗарегистрироватьОшибкуЗамены(Результат, Строка.Ссылка, Ошибка); + КонецЦикла; + Иначе + ЗарегистрироватьОшибкуЗамены(Результат, МестоИспользования.Ссылка, Ошибка); + КонецЕсли; + КонецПопытки; + КонецПроцедуры Процедура ПроизвестиЗаменуВРегистреСведений(Результат, Знач МестоИспользования, Знач ПараметрыВыполнения, Знач ВнутренняяТранзакция = Истина) + Если МестоИспользования.Обработано Тогда Возврат; КонецЕсли; @@ -6098,150 +6225,143 @@ Если ВнутренняяТранзакция Тогда НачатьТранзакцию(); - Блокировка = Новый БлокировкаДанных; - БлокировкаДубля = Блокировка.Добавить(Информация.ПолноеИмя); - Если ТребуетсяДваНабора Тогда - БлокировкаОригинала = Блокировка.Добавить(Информация.ПолноеИмя); - КонецЕсли; КонецЕсли; - Для Каждого КлючЗначение Из Информация.Измерения Цикл - ЗначениеИзмеренияДубля = КлючЗаписиРегистра[КлючЗначение.Ключ]; - - // Для решения проблемы уникальности - // выполняется замена старых значений измерений ключа записи на актуальные. - // Соответствие старых и актуальных обеспечивает соответствием УспешныеЗамены. - // Данные соответствия актуальны на текущий момент времени, - // т.к. пополняются только после успешной обработки очередной пары и фиксации транзакции. - НовоеЗначениеИзмеренияДубля = ПараметрыВыполнения.УспешныеЗамены[ЗначениеИзмеренияДубля]; - Если НовоеЗначениеИзмеренияДубля <> Неопределено Тогда - ЗначениеИзмеренияДубля = НовоеЗначениеИзмеренияДубля; - КонецЕсли; - - НаборЗаписейДубля.Отбор[КлючЗначение.Ключ].Установить(ЗначениеИзмеренияДубля); - - Если ВнутренняяТранзакция Тогда // Замена в конкретной паре и блокировка на конкретную замену - БлокировкаДубля.УстановитьЗначение(КлючЗначение.Ключ, ЗначениеИзмеренияДубля); - КонецЕсли; - - Если ТребуетсяДваНабора Тогда - Если ЗначениеИзмеренияДубля = Дубль Тогда - ЗначениеИзмеренияОригинала = Оригинал; - Иначе - ЗначениеИзмеренияОригинала = ЗначениеИзмеренияДубля; - КонецЕсли; - - НаборЗаписейОригинала.Отбор[КлючЗначение.Ключ].Установить(ЗначениеИзмеренияОригинала); - ЗначенияИзмеренийОригинала.Вставить(КлючЗначение.Ключ, ЗначениеИзмеренияОригинала); - - Если ВнутренняяТранзакция Тогда // Замена в конкретной паре и блокировка на конкретную замену - БлокировкаОригинала.УстановитьЗначение(КлючЗначение.Ключ, ЗначениеИзмеренияОригинала); + ВидОшибки = ""; + Попытка + Если ВнутренняяТранзакция Тогда + Блокировка = Новый БлокировкаДанных; + БлокировкаДубля = Блокировка.Добавить(Информация.ПолноеИмя); + Если ТребуетсяДваНабора Тогда + БлокировкаОригинала = Блокировка.Добавить(Информация.ПолноеИмя); КонецЕсли; КонецЕсли; - КонецЦикла; - - // Установка блокировки. - Если ВнутренняяТранзакция Тогда - ИнформацияОбОшибке = Неопределено; - Попытка - Блокировка.Заблокировать(); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КонецПопытки; - Если ИнформацияОбОшибке <> Неопределено Тогда - ЗарегистрироватьОшибкуВТаблицу(Результат, Дубль, Оригинал, КлючЗаписиРегистра, Информация, "БлокировкаДляРегистра", ИнформацияОбОшибке); - ОтменитьТранзакцию(); + + Для Каждого КлючЗначение Из Информация.Измерения Цикл + ЗначениеИзмеренияДубля = КлючЗаписиРегистра[КлючЗначение.Ключ]; + + // Для решения проблемы уникальности + // выполняется замена старых значений измерений ключа записи на актуальные. + // Соответствие старых и актуальных обеспечивает соответствием УспешныеЗамены. + // Данные соответствия актуальны на текущий момент времени, + // т.к. пополняются только после успешной обработки очередной пары и фиксации транзакции. + НовоеЗначениеИзмеренияДубля = ПараметрыВыполнения.УспешныеЗамены[ЗначениеИзмеренияДубля]; + Если НовоеЗначениеИзмеренияДубля <> Неопределено Тогда + ЗначениеИзмеренияДубля = НовоеЗначениеИзмеренияДубля; + КонецЕсли; + + НаборЗаписейДубля.Отбор[КлючЗначение.Ключ].Установить(ЗначениеИзмеренияДубля); + + Если ВнутренняяТранзакция Тогда // Замена в конкретной паре и блокировка на конкретную замену. + БлокировкаДубля.УстановитьЗначение(КлючЗначение.Ключ, ЗначениеИзмеренияДубля); + КонецЕсли; + + Если ТребуетсяДваНабора Тогда + Если ЗначениеИзмеренияДубля = Дубль Тогда + ЗначениеИзмеренияОригинала = Оригинал; + Иначе + ЗначениеИзмеренияОригинала = ЗначениеИзмеренияДубля; + КонецЕсли; + + НаборЗаписейОригинала.Отбор[КлючЗначение.Ключ].Установить(ЗначениеИзмеренияОригинала); + ЗначенияИзмеренийОригинала.Вставить(КлючЗначение.Ключ, ЗначениеИзмеренияОригинала); + + Если ВнутренняяТранзакция Тогда // Замена в конкретной паре и блокировка на конкретную замену. + БлокировкаОригинала.УстановитьЗначение(КлючЗначение.Ключ, ЗначениеИзмеренияОригинала); + КонецЕсли; + КонецЕсли; + КонецЦикла; + + // Установка блокировки. + Если ВнутренняяТранзакция Тогда + Попытка + Блокировка.Заблокировать(); + Исключение + ВидОшибки = "БлокировкаДляРегистра"; + ВызватьИсключение; + КонецПопытки; + КонецЕсли; + + // Откуда читаем? + НаборЗаписейДубля.Прочитать(); + Если НаборЗаписейДубля.Количество() = 0 Тогда // Нечего писать. + Если ВнутренняяТранзакция Тогда + ОтменитьТранзакцию(); // Замена не требуется. + КонецЕсли; Возврат; КонецЕсли; - КонецЕсли; - - // Откуда читаем? - НаборЗаписейДубля.Прочитать(); - Если НаборЗаписейДубля.Количество() = 0 Тогда // Нечего писать. + ЗаписьДубля = НаборЗаписейДубля[0]; + + // Куда пишем? + ЗаписьОригиналаЭтоНовый = Ложь; + Если ТребуетсяДваНабора Тогда + // Пишем в набор с другими измерениями. + НаборЗаписейОригинала.Прочитать(); + Если НаборЗаписейОригинала.Количество() = 0 Тогда + ЗаписьОригиналаЭтоНовый = Истина; + ЗаписьОригинала = НаборЗаписейОригинала.Добавить(); + ЗаполнитьЗначенияСвойств(ЗаписьОригинала, ЗаписьДубля); + ЗаполнитьЗначенияСвойств(ЗаписьОригинала, ЗначенияИзмеренийОригинала); + Иначе + ЗаписьОригинала = НаборЗаписейОригинала[0]; + КонецЕсли; + Иначе + // Пишем туда-же, откуда и читаем. + НаборЗаписейОригинала = НаборЗаписейДубля; + ЗаписьОригинала = ЗаписьДубля; // Ситуация с нулевым количеством записей в наборе обработана выше. + КонецЕсли; + + // Замена дубля на оригинал в ресурсах и реквизитах. + Для Каждого КлючЗначение Из Информация.Ресурсы Цикл + ЗначениеРеквизитаВОригинале = ЗаписьОригинала[КлючЗначение.Ключ]; + Если ЗначениеРеквизитаВОригинале = Дубль Тогда + ЗаписьОригинала[КлючЗначение.Ключ] = Оригинал; + Модифицированность = Истина; + КонецЕсли; + КонецЦикла; + Для Каждого КлючЗначение Из Информация.Реквизиты Цикл + ЗначениеРеквизитаВОригинале = ЗаписьОригинала[КлючЗначение.Ключ]; + Если ЗначениеРеквизитаВОригинале = Дубль Тогда + ЗаписьОригинала[КлючЗначение.Ключ] = Оригинал; + Модифицированность = Истина; + КонецЕсли; + КонецЦикла; + + Если Не ПараметрыВыполнения.ПривилегированнаяЗапись Тогда + УстановитьПривилегированныйРежим(Ложь); + КонецЕсли; + + // Удаление данных дубля. + Если ТребуетсяДваНабора Тогда + НаборЗаписейДубля.Очистить(); + Попытка + ЗаписатьОбъект(НаборЗаписейДубля, ПараметрыВыполнения); + Исключение + ВидОшибки = "УдалитьНаборДубля"; + ВызватьИсключение; + КонецПопытки; + КонецЕсли; + + // Запись данных оригинала. + Если НаборЗаписейОригинала.Модифицированность() Тогда + Попытка + ЗаписатьОбъект(НаборЗаписейОригинала, ПараметрыВыполнения); + Исключение + ВидОшибки = "ЗаписатьНаборОригинала"; + ВызватьИсключение; + КонецПопытки; + КонецЕсли; + Если ВнутренняяТранзакция Тогда - ОтменитьТранзакцию(); // Замена не требуется. - КонецЕсли; - Возврат; - КонецЕсли; - ЗаписьДубля = НаборЗаписейДубля[0]; - - // Куда пишем? - ЗаписьОригиналаЭтоНовый = Ложь; - Если ТребуетсяДваНабора Тогда - // Пишем в набор с другими измерениями. - НаборЗаписейОригинала.Прочитать(); - Если НаборЗаписейОригинала.Количество() = 0 Тогда - ЗаписьОригиналаЭтоНовый = Истина; - ЗаписьОригинала = НаборЗаписейОригинала.Добавить(); - ЗаполнитьЗначенияСвойств(ЗаписьОригинала, ЗаписьДубля); - ЗаполнитьЗначенияСвойств(ЗаписьОригинала, ЗначенияИзмеренийОригинала); - Иначе - ЗаписьОригинала = НаборЗаписейОригинала[0]; - КонецЕсли; - Иначе - // Пишем туда-же, откуда и читаем. - НаборЗаписейОригинала = НаборЗаписейДубля; - ЗаписьОригинала = ЗаписьДубля; // Ситуация с нулевым количеством записей в наборе обработана выше. - КонецЕсли; - - // Замена дубля на оригинал в ресурсах и реквизитах. - Для Каждого КлючЗначение Из Информация.Ресурсы Цикл - ЗначениеРеквизитаВОригинале = ЗаписьОригинала[КлючЗначение.Ключ]; - Если ЗначениеРеквизитаВОригинале = Дубль Тогда - ЗаписьОригинала[КлючЗначение.Ключ] = Оригинал; - Модифицированность = Истина; - КонецЕсли; - КонецЦикла; - Для Каждого КлючЗначение Из Информация.Реквизиты Цикл - ЗначениеРеквизитаВОригинале = ЗаписьОригинала[КлючЗначение.Ключ]; - Если ЗначениеРеквизитаВОригинале = Дубль Тогда - ЗаписьОригинала[КлючЗначение.Ключ] = Оригинал; - Модифицированность = Истина; - КонецЕсли; - КонецЦикла; - - Если Не ПараметрыВыполнения.ПривилегированнаяЗапись Тогда - УстановитьПривилегированныйРежим(Ложь); - КонецЕсли; - - ЕстьЧтоФиксировать = Ложь; - - // Удаление данных дубля. - Если ТребуетсяДваНабора Тогда - НаборЗаписейДубля.Очистить(); - ИнформацияОбОшибке = Неопределено; - Попытка - ЗаписатьОбъект(НаборЗаписейДубля, ПараметрыВыполнения); - ЕстьЧтоФиксировать = Истина; - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КонецПопытки; - Если ИнформацияОбОшибке <> Неопределено Тогда - ЗарегистрироватьОшибкуВТаблицу(Результат, Дубль, Оригинал, КлючЗаписиРегистра, Информация, "УдалитьНаборДубля", ИнформацияОбОшибке); - КонецЕсли; - КонецЕсли; - - // Запись данных оригинала. - Если НаборЗаписейОригинала.Модифицированность() Тогда - ИнформацияОбОшибке = Неопределено; - Попытка - ЗаписатьОбъект(НаборЗаписейОригинала, ПараметрыВыполнения); - ЕстьЧтоФиксировать = Истина; - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КонецПопытки; - Если ИнформацияОбОшибке <> Неопределено Тогда - ЗарегистрироватьОшибкуВТаблицу(Результат, Дубль, Оригинал, КлючЗаписиРегистра, Информация, "ЗаписатьНаборОригинала", ИнформацияОбОшибке); - КонецЕсли; - КонецЕсли; - - Если ВнутренняяТранзакция Тогда - Если ЕстьЧтоФиксировать Тогда ЗафиксироватьТранзакцию(); - Иначе + КонецЕсли; + Исключение + Если ВнутренняяТранзакция Тогда ОтменитьТранзакцию(); КонецЕсли; - КонецЕсли; + ЗарегистрироватьОшибкуВТаблицу(Результат, Дубль, Оригинал, КлючЗаписиРегистра, Информация, + "БлокировкаДляРегистра", ИнформацияОбОшибке()); + КонецПопытки КонецПроцедуры @@ -6391,19 +6511,7 @@ ВыполненныеЗамены.Добавить(ОписаниеЗамены); КонецПроцедуры -Процедура УдалитьСсылкиПометкой(Результат, Знач СписокСсылок, Знач ПараметрыВыполнения, Знач ВнутренняяТранзакция = Истина) - - УдалитьСсылкиНемонопольно(Результат, СписокСсылок, ПараметрыВыполнения, ВнутренняяТранзакция, Ложь); - -КонецПроцедуры - -Процедура УдалитьСсылкиНепосредственно(Результат, Знач СписокСсылок, Знач ПараметрыВыполнения, Знач ВнутренняяТранзакция = Истина) - - УдалитьСсылкиНемонопольно(Результат, СписокСсылок, ПараметрыВыполнения, ВнутренняяТранзакция, Истина); - -КонецПроцедуры - -Процедура УдалитьСсылкиНемонопольно(Результат, Знач СписокСсылок, Знач ПараметрыВыполнения, Знач ВнутренняяТранзакция, Знач УдалятьНепосредственно) +Процедура УдалитьСсылкиНемонопольно(Результат, Знач СписокСсылок, Знач ПараметрыВыполнения, Знач УдалятьНепосредственно) УстановитьПривилегированныйРежим(Истина); @@ -6413,77 +6521,80 @@ Если ЛокальнаяТранзакция Тогда НачатьТранзакцию(); КонецЕсли; - - Для Каждого Ссылка Из СписокСсылок Цикл - Информация = ИнформацияОТипе(ТипЗнч(Ссылка), ПараметрыВыполнения); - Блокировка = Новый БлокировкаДанных; - Блокировка.Добавить(Информация.ПолноеИмя).УстановитьЗначение("Ссылка", Ссылка); - ИнформацияОбОшибке = Неопределено; - Попытка - Блокировка.Заблокировать(); - Удаляемые.Добавить(Ссылка); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КонецПопытки; - Если ИнформацияОбОшибке <> Неопределено Тогда - ЗарегистрироватьОшибкуВТаблицу(Результат, Ссылка, Неопределено, Ссылка, Информация, "БлокировкаДляУдаленияДубля", ИнформацияОбОшибке); - КонецЕсли; - КонецЦикла; - - ТаблицаПоиска = МестаИспользования(Удаляемые); - Фильтр = Новый Структура("Ссылка"); - - Для Каждого Ссылка Из Удаляемые Цикл - ПредставлениеСсылки = ПредметСтрокой(Ссылка); - - Фильтр.Ссылка = Ссылка; - МестаИспользования = ТаблицаПоиска.НайтиСтроки(Фильтр); - - Индекс = МестаИспользования.ВГраница(); - Пока Индекс >= 0 Цикл - Если МестаИспользования[Индекс].ВспомогательныеДанные Тогда - МестаИспользования.Удалить(Индекс); - КонецЕсли; - Индекс = Индекс - 1; + ВидОшибки = ""; + Попытка + Для Каждого Ссылка Из СписокСсылок Цикл + Информация = ИнформацияОТипе(ТипЗнч(Ссылка), ПараметрыВыполнения); + Блокировка = Новый БлокировкаДанных; + Блокировка.Добавить(Информация.ПолноеИмя).УстановитьЗначение("Ссылка", Ссылка); + Попытка + Блокировка.Заблокировать(); + Удаляемые.Добавить(Ссылка); + Исключение + ЗарегистрироватьОшибкуВТаблицу(Результат, Ссылка, Неопределено, Ссылка, Информация, + "БлокировкаДляУдаленияДубля", ИнформацияОбОшибке()); + КонецПопытки; КонецЦикла; - Если МестаИспользования.Количество() > 0 Тогда - // Остались места использования, нельзя удалять. - ДобавитьРезультатыЗаменыИзмененныхОбъектов(Результат, МестаИспользования); - Продолжить; - КонецЕсли; + ТаблицаПоиска = МестаИспользования(Удаляемые); + Фильтр = Новый Структура("Ссылка"); - Объект = Ссылка.ПолучитьОбъект(); - Если Объект = Неопределено Тогда - // Уже удален - Продолжить; - КонецЕсли; + Для Каждого Ссылка Из Удаляемые Цикл + ПредставлениеСсылки = ПредметСтрокой(Ссылка); - Если Не ПараметрыВыполнения.ПривилегированнаяЗапись Тогда - УстановитьПривилегированныйРежим(Ложь); - КонецЕсли; + Фильтр.Ссылка = Ссылка; + МестаИспользования = ТаблицаПоиска.НайтиСтроки(Фильтр); - Попытка - Если УдалятьНепосредственно Тогда - ОбработатьОбъектСПерехватомСообщений(Объект, "НепосредственноеУдаление", Неопределено, ПараметрыВыполнения); - Иначе - ОбработатьОбъектСПерехватомСообщений(Объект, "ПометкаУдаления", Неопределено, ПараметрыВыполнения); + Индекс = МестаИспользования.ВГраница(); + Пока Индекс >= 0 Цикл + Если МестаИспользования[Индекс].ВспомогательныеДанные Тогда + МестаИспользования.Удалить(Индекс); + КонецЕсли; + Индекс = Индекс - 1; + КонецЦикла; + + Если МестаИспользования.Количество() > 0 Тогда + ДобавитьРезультатыЗаменыИзмененныхОбъектов(Результат, МестаИспользования); + Продолжить; // Остались места использования, нельзя удалять. КонецЕсли; - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - ЗарегистрироватьОшибкуЗамены(Результат, Ссылка, - ОписаниеОшибкиЗамены("ОшибкаУдаления", Ссылка, ПредставлениеСсылки, - НСтр("ru = 'Ошибка удаления'") + Символы.ПС + СокрЛП( КраткоеПредставлениеОшибки(ИнформацияОбОшибке)))); - КонецПопытки; - Если Не ПараметрыВыполнения.ПривилегированнаяЗапись Тогда - УстановитьПривилегированныйРежим(Истина); + Объект = Ссылка.ПолучитьОбъект(); + Если Объект = Неопределено Тогда + Продолжить; // Уже удален. + КонецЕсли; + + Если Не ПараметрыВыполнения.ПривилегированнаяЗапись Тогда + УстановитьПривилегированныйРежим(Ложь); + КонецЕсли; + + Попытка + Если УдалятьНепосредственно Тогда + ОбработатьОбъектСПерехватомСообщений(Объект, "НепосредственноеУдаление", Неопределено, ПараметрыВыполнения); + Иначе + ОбработатьОбъектСПерехватомСообщений(Объект, "ПометкаУдаления", Неопределено, ПараметрыВыполнения); + КонецЕсли; + Исключение + ТекстОшибки = НСтр("ru = 'Ошибка удаления'") + + Символы.ПС + + СокрЛП(КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); + ОписаниеОшибки = ОписаниеОшибкиЗамены("ОшибкаУдаления", Ссылка, ПредставлениеСсылки, ТекстОшибки); + ЗарегистрироватьОшибкуЗамены(Результат, Ссылка, ОписаниеОшибки); + КонецПопытки; + + Если Не ПараметрыВыполнения.ПривилегированнаяЗапись Тогда + УстановитьПривилегированныйРежим(Истина); + КонецЕсли; + КонецЦикла; + + Если ЛокальнаяТранзакция Тогда + ЗафиксироватьТранзакцию(); КонецЕсли; - КонецЦикла; + Исключение + Если ЛокальнаяТранзакция Тогда + ОтменитьТранзакцию(); + КонецЕсли; + КонецПопытки; - Если ЛокальнаяТранзакция Тогда - ЗафиксироватьТранзакцию(); - КонецЕсли; КонецПроцедуры Процедура ДобавитьРезультатыЗаменыИзмененныхОбъектов(Результат, ТаблицаПовторногоПоиска) @@ -6878,7 +6989,19 @@ КонецЕсли; ИначеЕсли Действие = "ПометкаУдаления" Тогда - Объект.УстановитьПометкуУдаления(Истина, Ложь); + + МетаданныеОбъекта = Объект.Метаданные(); + + Если ЭтоСправочник(МетаданныеОбъекта) + Или ЭтоПланВидовХарактеристик(МетаданныеОбъекта) + Или ЭтоПланСчетов(МетаданныеОбъекта) Тогда + + Объект.УстановитьПометкуУдаления(Истина, Ложь); + + Иначе + Объект.УстановитьПометкуУдаления(Истина); + + КонецЕсли; ИначеЕсли Действие = "НепосредственноеУдаление" Тогда Объект.Удалить(); @@ -6886,8 +7009,6 @@ КонецЕсли; Исключение - Информация = ИнформацияОбОшибке(); - // Перехватываем все сообщенное при ошибке и добавляем их в одно исключение. ТекстИсключения = ""; Для Каждого Сообщение Из ПолучитьСообщенияПользователю(Ложь) Цикл @@ -6899,7 +7020,11 @@ СообщитьОтложенныеСообщения(ПредыдущиеСообщения); КонецЕсли; - ВызватьИсключение СокрЛП(КраткоеПредставлениеОшибки(Информация) + Символы.ПС + СокрЛП(ТекстИсключения)); + Если ТекстИсключения = "" Тогда + ВызватьИсключение; + Иначе + ВызватьИсключение СокрЛП(КраткоеПредставлениеОшибки(ИнформацияОбОшибке()) + Символы.ПС + СокрЛП(ТекстИсключения)); + КонецЕсли; КонецПопытки; Если СообщатьПовторно Тогда @@ -7008,10 +7133,10 @@ // Окончательные действия Если ПараметрыВыполнения.УдалятьНепосредственно Тогда - УдалитьСсылкиНепосредственно(Результат, Дубли, ПараметрыВыполнения, Истина); + УдалитьСсылкиНемонопольно(Результат, Дубли, ПараметрыВыполнения, Истина); ИначеЕсли ПараметрыВыполнения.ПомечатьНаУдаление Тогда - УдалитьСсылкиПометкой(Результат, Дубли, ПараметрыВыполнения); + УдалитьСсылкиНемонопольно(Результат, Дубли, ПараметрыВыполнения, Ложь); Иначе // Поиск новых @@ -7021,102 +7146,84 @@ КонецПроцедуры -Процедура ЗаменитьСсылкуДлиннойТранзакцией(Результат, Знач Дубль, Знач ПараметрыВыполнения, Знач ТаблицаПоиска) +Процедура ЗаменитьСсылкуОднойТранзакцией(Результат, Знач Дубль, Знач ПараметрыВыполнения, Знач ТаблицаПоиска) УстановитьПривилегированныйРежим(Истина); - СостояниеОперации = ""; - - // 1. Блокирование всех мест использования. - Блокировка = Новый БлокировкаДанных; - - МестаИспользования = ТаблицаПоиска.НайтиСтроки(Новый Структура("Ссылка", Дубль)); - ЗаблокироватьМестаИспользования(ПараметрыВыполнения, Блокировка, МестаИспользования); - НачатьТранзакцию(); Попытка - Блокировка.Заблокировать(); - Исключение - // Добавляем запись в результат о неудачной попытке блокировке. - ПредставлениеОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); - Ошибка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не удалось заблокировать все места использования %1:'") + Символы.ПС + ПредставлениеОшибки, Дубль); - ЗарегистрироватьОшибкуЗамены(Результат, Дубль, - ОписаниеОшибкиЗамены("ОшибкаБлокировки", Неопределено, Неопределено, Ошибка)); + // 1. Блокирование всех мест использования. СостояниеОперации = "ОшибкаБлокировки"; - КонецПопытки; - - УстановитьПривилегированныйРежим(Ложь); - - БылиОшибки = Результат.ЕстьОшибки; - - // 2. Замена везде до первой ошибки. - Если СостояниеОперации = "" Тогда + Блокировка = Новый БлокировкаДанных; + + МестаИспользования = ТаблицаПоиска.НайтиСтроки(Новый Структура("Ссылка", Дубль)); + ЗаблокироватьМестаИспользования(ПараметрыВыполнения, Блокировка, МестаИспользования); + Блокировка.Заблокировать(); + СостояниеОперации = ""; + + УстановитьПривилегированныйРежим(Ложь); + + БылиОшибки = Результат.ЕстьОшибки; + + // 2. Замена везде до первой ошибки. Результат.ЕстьОшибки = Ложь; Для Каждого МестоИспользования Из МестаИспользования Цикл Если МестоИспользования.КлючЗамены = "Константа" Тогда - ПроизвестиЗаменуВКонстанте(Результат, МестоИспользования, ПараметрыВыполнения, Ложь); - ИначеЕсли МестоИспользования.КлючЗамены = "Объект" Тогда - ПроизвестиЗаменуВОбъекте(Результат, МестоИспользования, ПараметрыВыполнения, Ложь); - ИначеЕсли МестоИспользования.КлючЗамены = "Последовательность" Тогда - ПроизвестиЗаменуВНаборе(Результат, МестоИспользования, ПараметрыВыполнения, Ложь); - ИначеЕсли МестоИспользования.КлючЗамены = "КлючЗаписи" Тогда - ПроизвестиЗаменуВНаборе(Результат, МестоИспользования, ПараметрыВыполнения, Ложь); - ИначеЕсли МестоИспользования.КлючЗамены = "РегистрСведений" Тогда - ПроизвестиЗаменуВРегистреСведений(Результат, МестоИспользования, ПараметрыВыполнения, Ложь); - КонецЕсли; Если Результат.ЕстьОшибки Тогда - СостояниеОперации = "ОшибкаЗаписи"; - Прервать; + ОтменитьТранзакцию(); + Возврат; КонецЕсли; КонецЦикла; - КонецЕсли; - - // 3. Удаление - ПроизводимыеЗамены = Новый Массив; - ПроизводимыеЗамены.Добавить(Дубль); - - Если СостояниеОперации = "" Тогда - Результат.ЕстьОшибки = Ложь; + // 3. Удаление + ПроизводимыеЗамены = Новый Массив; + ПроизводимыеЗамены.Добавить(Дубль); Если ПараметрыВыполнения.УдалятьНепосредственно Тогда - УдалитьСсылкиНепосредственно(Результат, ПроизводимыеЗамены, ПараметрыВыполнения, Ложь); + УдалитьСсылкиНемонопольно(Результат, ПроизводимыеЗамены, ПараметрыВыполнения, Истина); ИначеЕсли ПараметрыВыполнения.ПомечатьНаУдаление Тогда - УдалитьСсылкиПометкой(Результат, ПроизводимыеЗамены, ПараметрыВыполнения, Ложь); + УдалитьСсылкиНемонопольно(Результат, ПроизводимыеЗамены, ПараметрыВыполнения, Ложь); - Иначе + Иначе // Поиск новых ТаблицаПовторногоПоиска = МестаИспользования(ПроизводимыеЗамены); ДобавитьРезультатыЗаменыИзмененныхОбъектов(Результат, ТаблицаПовторногоПоиска); КонецЕсли; Если Результат.ЕстьОшибки Тогда - СостояниеОперации = "ДанныеИзменены"; + ОтменитьТранзакцию(); + Возврат; КонецЕсли; - КонецЕсли; - - Результат.ЕстьОшибки = Результат.ЕстьОшибки Или БылиОшибки; - - Если СостояниеОперации = "" Тогда - ЗафиксироватьТранзакцию(); + ПараметрыВыполнения.УспешныеЗамены.Вставить(Дубль, ПараметрыВыполнения.ПарыЗамен[Дубль]); - Иначе + ЗафиксироватьТранзакцию(); + + Исключение ОтменитьТранзакцию(); - КонецЕсли; + Если СостояниеОперации = "ОшибкаБлокировки" Тогда + ПредставлениеОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); + Ошибка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не удалось заблокировать все места использования %1:'") + + Символы.ПС + ПредставлениеОшибки, Дубль); + ЗарегистрироватьОшибкуЗамены(Результат, Дубль, + ОписаниеОшибкиЗамены("ОшибкаБлокировки", Неопределено, Неопределено, Ошибка)); + Иначе + ВызватьИсключение; + КонецЕсли; + КонецПопытки КонецПроцедуры @@ -7220,6 +7327,7 @@ СобытиеЖурналаРегистрацииЗаменыСсылок(), УровеньЖурналаРегистрации.Ошибка, , + , ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); ПолноеПредставлениеДанных = Строка(Данные) + " (" + Информация.ПредставлениеЭлемента + ")"; @@ -7248,12 +7356,12 @@ НовыйШаблон = НовыйШаблон + Символы.ПС + Символы.ПС + НСтр("ru = 'Подробности в журнале регистрации.'"); - КраткоеПредставление = СтандартныеПодсистемыКлиентСервер.ИсходнаяПричинаОшибки(ИнформацияОбОшибке); + КраткоеПредставление = КраткоеПредставлениеОшибки(ИнформацияОбОшибке); Ошибка.ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НовыйШаблон, ПолноеПредставлениеДанных, КраткоеПредставление); КонецПроцедуры -// Формирует информацию о типе объекта метаданных, как то: полное имя, представления, вид и т.п. +// Формирует информацию о типе объекта метаданных: полное имя, представления, вид и т.п. Функция ИнформацияОТипе(ПолноеИмяИлиМетаданныеИлиТип, Кэш) ТипПервогоПараметра = ТипЗнч(ПолноеИмяИлиМетаданныеИлиТип); Если ТипПервогоПараметра = Тип("Строка") Тогда diff --git a/SSL/src/CommonModules/ОбщегоНазначенияКлиент/Module.bsl b/SSL/src/CommonModules/ОбщегоНазначенияКлиент/Module.bsl index 7a4a8d386..22034ce0c 100644 --- a/SSL/src/CommonModules/ОбщегоНазначенияКлиент/Module.bsl +++ b/SSL/src/CommonModules/ОбщегоНазначенияКлиент/Module.bsl @@ -182,9 +182,31 @@ ИдентификаторКлиента = СистемнаяИнформация.ИдентификаторКлиента; Возврат ОбщегоНазначенияВызовСервера.ХранилищеОбщихНастроекЗагрузить( "НастройкиПрограммы/ПредлагатьУстановкуРасширенияРаботыСФайлами", ИдентификаторКлиента, Истина); - -КонецФункции +КонецФункции + +// Сохраняет персональные настройки пользователя. +// +// Параметры: +// Структура со свойствами: +// * НапоминатьОбУстановкеРасширенияРаботыСФайлами - Булево - Признак необходимости +// напоминания об установке расширения. +// * ЗапрашиватьПодтверждениеПриЗавершенииПрограммы - Булево - Запрашивать подтверждение по завершении работы. +// +Процедура СохранитьПерсональныеНастройки(Настройки) Экспорт + + Если Настройки.Свойство("НапоминатьОбУстановкеРасширенияРаботыСФайлами") Тогда + ПараметрыПриложения["СтандартныеПодсистемы.ПредлагатьУстановкуРасширенияРаботыСФайлами"] = + Настройки.НапоминатьОбУстановкеРасширенияРаботыСФайлами; + КонецЕсли; + + Если Настройки.Свойство("ЗапрашиватьПодтверждениеПриЗавершенииПрограммы") Тогда + СтандартныеПодсистемыКлиент.УстановитьПараметрКлиента("ЗапрашиватьПодтверждениеПриЗавершенииПрограммы", + Настройки.ЗапрашиватьПодтверждениеПриЗавершенииПрограммы); + КонецЕсли; + +КонецПроцедуры + // Выполняет регистрацию компоненты "comcntr.dll" для текущей версии платформы. // В случае успешной регистрации, предлагает пользователю перезапустить клиентский сеанс // для того чтобы регистрация вступила в силу. @@ -248,17 +270,27 @@ КонецФункции -// Задает вопрос о продолжении действия, влекущего к потере изменений. +// Задает вопрос о продолжении действия, которое приведет к потере изменений: +// "Данные были изменены. Сохранить изменения?" // Для использования в обработчиках события ПередЗакрытием модулей форм. // // Параметры: // ОповещениеСохранитьИЗакрыть - ОписаниеОповещения - содержит имя процедуры, вызываемой при нажатии на кнопку OK. // Отказ - Булево - возвращаемый параметр, признак отказа от выполняемого действия. -// ТекстПредупреждения - Строка - переопределяемый текст предупреждения, выводимый пользователю. +// ЗавершениеРаботы - Булево - признак того, что форма закрывается в процессе завершения работы приложения. +// ТекстПредупреждения - Строка - текст предупреждения, выводимый пользователю. По умолчанию, выводится текст +// "Данные были изменены. Сохранить изменения?" +// ТекстПредупрежденияПриЗавершении - Строка - возвращаемый параметр с текстом предупреждения, выводимым пользователю +// при завершении приложения. Если параметр указан, то возвращается текст +// "Данные были изменены. Все изменения будут потеряны.". // -// Пример: -// Оповещение = Новый ОписаниеОповещения("ВыбратьИЗакрыть", ЭтотОбъект); -// ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); +// Пример: +// +// &НаКлиенте +// Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) +// Оповещение = Новый ОписаниеОповещения("ВыбратьИЗакрыть", ЭтотОбъект); +// ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, ЗавершениеРаботы, Отказ); +// КонецПроцедуры // // &НаКлиенте // Процедура ВыбратьИЗакрыть(Результат = Неопределено, ДополнительныеПараметры = Неопределено) Экспорт @@ -268,7 +300,8 @@ // Закрыть(<РезультатВыбораВФорме>); // КонецПроцедуры // -Процедура ПоказатьПодтверждениеЗакрытияФормы(ОповещениеСохранитьИЗакрыть, Отказ, ТекстПредупреждения = "") Экспорт +Процедура ПоказатьПодтверждениеЗакрытияФормы(Знач ОповещениеСохранитьИЗакрыть, Отказ, + Знач ЗавершениеРаботы, Знач ТекстПредупреждения = "", ТекстПредупрежденияПриЗавершении = Неопределено) Экспорт Форма = ОповещениеСохранитьИЗакрыть.Модуль; Если Не Форма.Модифицированность Тогда @@ -277,6 +310,13 @@ Отказ = Истина; + Если ЗавершениеРаботы Тогда + Если ТекстПредупрежденияПриЗавершении = "" Тогда // передан параметр из ПередЗакрытием + ТекстПредупрежденияПриЗавершении = НСтр("ru = 'Данные были изменены. Все изменения будут потеряны.'"); + КонецЕсли; + Возврат; + КонецЕсли; + Параметры = Новый Структура(); Параметры.Вставить("ОповещениеСохранитьИЗакрыть", ОповещениеСохранитьИЗакрыть); Параметры.Вставить("ТекстПредупреждения", ТекстПредупреждения); @@ -291,7 +331,7 @@ КонецПроцедуры -// Задает вопрос о продолжении действия, ведущего к закрытию формы. +// Задает вопрос о продолжении действия, которое приведет к закрытию формы. // Для использования в обработчиках события ПередЗакрытием модулей форм. // // Параметры: @@ -307,14 +347,17 @@ // ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы( // ЭтотОбъект, Отказ, ТекстПредупреждения, "ЗакрытьФормуБезПодтверждения"); // -Процедура ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(Форма, Отказ, ТекстПредупреждения, - ИмяРеквизитаЗакрытьФормуБезПодтверждения, ОписаниеОповещенияЗакрыть = Неопределено) Экспорт +Процедура ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(Знач Форма, Отказ, Знач ЗавершениеРаботы, + Знач ТекстПредупреждения, Знач ИмяРеквизитаЗакрытьФормуБезПодтверждения, Знач ОписаниеОповещенияЗакрыть = Неопределено) Экспорт Если Форма[ИмяРеквизитаЗакрытьФормуБезПодтверждения] Тогда Возврат; КонецЕсли; Отказ = Истина; + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; Параметры = Новый Структура(); Параметры.Вставить("Форма", Форма); diff --git a/SSL/src/CommonModules/ОбщегоНазначенияКлиентПереопределяемый/Module.bsl b/SSL/src/CommonModules/ОбщегоНазначенияКлиентПереопределяемый/Module.bsl index d71ec6e45..f2d488ef2 100644 --- a/SSL/src/CommonModules/ОбщегоНазначенияКлиентПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ОбщегоНазначенияКлиентПереопределяемый/Module.bsl @@ -76,6 +76,8 @@ Процедура ПриНачалеРаботыСистемы(Параметры) Экспорт + + КонецПроцедуры @@ -110,23 +112,17 @@ КонецПроцедуры // Выполняется перед интерактивном завершении работы пользователя с областью данных или в локальном режиме. -// // Соответствует обработчику ПередЗавершениемРаботыСистемы. +// Доопределяет список предупреждений пользователю перед завершением работы системы. // // Параметры: -// Параметры - Структура - структура со свойствами: -// * Отказ - Булево - Возвращаемое значение. Если установить Истина, -// то завершение работы программы будет отменено. -// * ИнтерактивнаяОбработка - ОписаниеОповещения - Возвращаемое значение. Для открытия окна, -// блокирующего выход из программы, следует присвоить в этот параметр -// описание обработчика оповещения, который открывает окно. -// См. пример выше (для обработчика ПередНачаломРаботыСистемы). -// * ОбработкаПродолжения - ОписаниеОповещения - если открывается окно, блокирующее выход -// из программы, то в обработке закрытия этого окна необходимо -// выполнить оповещение ОбработкаПродолжения. -// См. пример выше (для обработчика ПередНачаломРаботыСистемы). +// Отказ - Булево - Признак отказа от выхода из программы. Если в теле процедуры-обработчика установить +// данному параметру значение Истина, то работа с программой не будет завершена. +// Предупреждения - Массив - в массив можно добавить элементы типа Структура, +// свойства которой см. в СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершенииРаботы. // -Процедура ПередЗавершениемРаботыСистемы(Параметры) Экспорт +// +Процедура ПередЗавершениемРаботыСистемы(Отказ, Предупреждения) Экспорт КонецПроцедуры diff --git a/SSL/src/CommonModules/ОбщегоНазначенияКлиентСервер/Module.bsl b/SSL/src/CommonModules/ОбщегоНазначенияКлиентСервер/Module.bsl index 06c078446..f7d37e2ce 100644 --- a/SSL/src/CommonModules/ОбщегоНазначенияКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/ОбщегоНазначенияКлиентСервер/Module.bsl @@ -532,7 +532,7 @@ // Возвращаемое значение: // Массив - массив значений из отмеченных элементов списка значений. // -Функция ПолучитьМассивОтмеченныхЭлементовСписка(Список) Экспорт +Функция ОтмеченныеЭлементы(Список) Экспорт // Возвращаемое значение функции. Массив = Новый Массив; @@ -929,11 +929,8 @@ Результат = ""; Для Каждого Элемент Из Структура Цикл - СимволРазделителя = ?(ПустаяСтрока(Результат), "", Разделитель); - Результат = Результат + СимволРазделителя + Элемент.Ключ; - КонецЦикла; Возврат Результат; @@ -955,14 +952,18 @@ // Произвольный - Значение свойства структуры. ЗначениеПоУмолчанию если в структуре нет указанного свойства. // Функция СвойствоСтруктуры(Структура, Ключ, ЗначениеПоУмолчанию = Неопределено) Экспорт + Если Структура = Неопределено Тогда Возврат Неопределено; КонецЕсли; - Если Структура.Свойство(Ключ) Тогда - Возврат Структура[Ключ]; + + Результат = ЗначениеПоУмолчанию; + Если Структура.Свойство(Ключ, Результат) Тогда + Возврат Результат; Иначе Возврат ЗначениеПоУмолчанию; КонецЕсли; + КонецФункции // Возвращает имя COM-класса для работы с 1С:Предприятием 8 через COM-соединение. @@ -1042,14 +1043,14 @@ Результат.Вставить("ОшибкаПодключенияКомпоненты", Ложь); #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда - ЭтоLinux = ОбщегоНазначения.ЭтоLinuxСервер(); + ПодключениеНедоступно = ОбщегоНазначения.ЭтоLinuxСервер(); КраткоеОписаниеОшибки = НСтр("ru = 'Прямое подключение к информационной базе недоступно на сервере под управлением ОС Linux.'"); #Иначе - ЭтоLinux = ЭтоLinuxКлиент(); - КраткоеОписаниеОшибки = НСтр("ru = 'Прямое подключение к информационной базе недоступно на клиенте под управлением ОС Linux.'"); + ПодключениеНедоступно = ЭтоLinuxКлиент() Или ЭтоOSXКлиент(); + КраткоеОписаниеОшибки = НСтр("ru = 'Прямое подключение к информационной базе доступно только на клиенте под управлением ОС Windows.'"); #КонецЕсли - Если ЭтоLinux Тогда + Если ПодключениеНедоступно Тогда Результат.Соединение = Неопределено; Результат.КраткоеОписаниеОшибки = КраткоеОписаниеОшибки; Результат.ПодробноеОписаниеОшибки = КраткоеОписаниеОшибки; @@ -2511,7 +2512,7 @@ #Если НЕ ТонкийКлиент И НЕ ВебКлиент Тогда Возврат Метаданные.ОсновнойЯзык.КодЯзыка; #Иначе - Возврат СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().КодОсновногоЯзыка; + Возврат СтандартныеПодсистемыКлиент.ПараметрКлиента("КодОсновногоЯзыка"); #КонецЕсли КонецФункции @@ -2536,6 +2537,58 @@ КонецФункции +// Возвращает Истина, если клиентское приложение запущено под управлением ОС Windows. +// +// Возвращаемое значение: +// Булево. Если нет клиентского приложения, возвращается Ложь. +// +Функция ЭтоWindowsКлиент() Экспорт + +#Если Клиент Или ВнешнееСоединение Тогда + СистемнаяИнформация = Новый СистемнаяИнформация; + + ЭтоWindowsКлиент = СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86 + ИЛИ СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86_64; +#Иначе + УстановитьПривилегированныйРежим(Истина); + + ЭтоWindowsКлиент = СтандартныеПодсистемыСервер.ПараметрыКлиентаНаСервере().Получить("ЭтоWindowsКлиент"); + + Если ЭтоWindowsКлиент = Неопределено Тогда + Возврат Ложь; // Нет клиентского приложения. + КонецЕсли; +#КонецЕсли + + Возврат ЭтоWindowsКлиент; + +КонецФункции + +// Возвращает Истина, если клиентское приложение запущено под управлением ОС X. +// +// Возвращаемое значение: +// Булево. Если нет клиентского приложения, возвращается Ложь. +// +Функция ЭтоOSXКлиент() Экспорт + +#Если Клиент Или ВнешнееСоединение Тогда + СистемнаяИнформация = Новый СистемнаяИнформация; + + ЭтоOSXКлиент = СистемнаяИнформация.ТипПлатформы = ТипПлатформы.MacOS_x86 + ИЛИ СистемнаяИнформация.ТипПлатформы = ТипПлатформы.MacOS_x86_64; +#Иначе + УстановитьПривилегированныйРежим(Истина); + + ЭтоOSXКлиент = СтандартныеПодсистемыСервер.ПараметрыКлиентаНаСервере().Получить("ЭтоOSXКлиент"); + + Если ЭтоOSXКлиент = Неопределено Тогда + Возврат Ложь; // Нет клиентского приложения. + КонецЕсли; +#КонецЕсли + + Возврат ЭтоOSXКлиент; + +КонецФункции + // Возвращает Истина, если клиентское приложение запущено под управлением ОС Linux. // // Возвращаемое значение: diff --git a/SSL/src/CommonModules/ОбщегоНазначенияПереопределяемый/Module.bsl b/SSL/src/CommonModules/ОбщегоНазначенияПереопределяемый/Module.bsl index 8db0eae85..3289ecc4d 100644 --- a/SSL/src/CommonModules/ОбщегоНазначенияПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ОбщегоНазначенияПереопределяемый/Module.bsl @@ -18,6 +18,8 @@ + + КонецПроцедуры // Объекты метаданных, содержимое которых не должно учитывается в бизнес-логике приложения. @@ -74,6 +76,8 @@ + + КонецПроцедуры // Возвращает структуру параметров, необходимых для работы клиентского кода @@ -98,6 +102,8 @@ + + КонецПроцедуры // Возвращает структуру параметров, необходимых для работы клиентского кода @@ -115,22 +121,7 @@ -КонецПроцедуры - -// Возвращает структуру параметров, необходимых для работы клиентского кода -// конфигурации при завершении, т.е. в обработчиках: -// - ПередЗавершениемРаботыСистемы, -// - ПриЗавершенииРаботыСистемы -// -// Параметры: -// Параметры - Структура - (возвращаемое значение) структура параметров работы клиента при завершении. -// -// Пример реализации: -// Для установки параметров работы клиента при завершении можно использовать шаблон: -// -// Параметры.Вставить(<ИмяПараметра>, <код получения значения параметра>); -// -Процедура ПараметрыРаботыКлиентаПриЗавершении(Параметры) Экспорт + КонецПроцедуры @@ -159,6 +150,19 @@ +КонецПроцедуры + +// Позволяет виртуально отключать подсистемы для целей тестирования. +// В процедуре нельзя использовать метод ОбщегоНазначения.ПодсистемСуществует т.к. это приводит к рекурсии. +// +// Параметры: +// ОтключенныеПодсистемы - Соответствие - Если подсистема отключена, то метод ОбщегоНазначения.ПодсистемаСуществует вернет Ложь. +// В соответствии ключ - имя отключенной подсистемы, значение необходимо установить в Истина. +// +Процедура ПриОпределенииОтключенныхПодсистем(ОтключенныеПодсистемы) Экспорт + + + КонецПроцедуры // Обработчик события "Перед загрузкой приоритетных данных в подчиненном РИБ узле". diff --git a/SSL/src/CommonModules/ОбщегоНазначенияПовтИсп/Module.bsl b/SSL/src/CommonModules/ОбщегоНазначенияПовтИсп/Module.bsl index 42f762a0a..414ed321f 100644 --- a/SSL/src/CommonModules/ОбщегоНазначенияПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/ОбщегоНазначенияПовтИсп/Module.bsl @@ -167,32 +167,6 @@ КонецФункции -// Возвращает тип платформы сервера. -// -// Возвращаемое значение: -// ТипПлатформы; Неопределено. -// -Функция ТипПлатформыСервера() Экспорт - - ТипПлатформыСервераСтрокой = СтандартныеПодсистемыВызовСервера.ТипПлатформыСервераСтрокой(); - - Если ТипПлатформыСервераСтрокой = "Linux_x86" Тогда - Возврат ТипПлатформы.Linux_x86; - - ИначеЕсли ТипПлатформыСервераСтрокой = "Linux_x86_64" Тогда - Возврат ТипПлатформы.Linux_x86_64; - - ИначеЕсли ТипПлатформыСервераСтрокой = "Windows_x86" Тогда - Возврат ТипПлатформы.Windows_x86; - - ИначеЕсли ТипПлатформыСервераСтрокой = "Windows_x86_64" Тогда - Возврат ТипПлатформы.Windows_x86_64; - КонецЕсли; - - Возврат Неопределено; - -КонецФункции - // Определяет текущий режим работы программы. // В частности используется в панелях настроек программы // для скрытия специализированных интерфейсов, предназначенных не для всех режимов работы. @@ -257,8 +231,10 @@ РежимРаботы.Локальный И РежимРаботы.КлиентСерверный); // ЛКС // Режимы работы клиента. - РежимРаботы.Вставить("ЭтоLinuxКлиент", ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент()); - РежимРаботы.Вставить("ЭтоВебКлиент", ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент()); + РежимРаботы.Вставить("ЭтоWindowsКлиент", ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент()); + РежимРаботы.Вставить("ЭтоLinuxКлиент" , ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент()); + РежимРаботы.Вставить("ЭтоOSXКлиент" , ОбщегоНазначенияКлиентСервер.ЭтоOSXКлиент()); + РежимРаботы.Вставить("ЭтоВебКлиент" , ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент()); Возврат РежимРаботы; КонецФункции @@ -588,15 +564,9 @@ КонецФункции -// Возвращает объект WSПрокси созданный с переданными параметрами. -// -// Параметры соответствуют конструктору объекта WSПрокси. -// -Функция WSПрокси(Знач АдресWSDL, Знач URIПространстваИмен, Знач ИмяСервиса, - Знач ИмяТочкиПодключения, Знач ИмяПользователя, Знач Пароль, Знач Таймаут) Экспорт +Функция СоздатьWSПрокси(Параметры) Экспорт - Возврат ОбщегоНазначения.ВнутренняяWSПрокси(АдресWSDL, URIПространстваИмен, ИмяСервиса, - ИмяТочкиПодключения, ИмяПользователя, Пароль, Таймаут); + Возврат ОбщегоНазначения.ВнутренняяWSПрокси(ОбщегоНазначения.ЗначениеИзСтрокиXML(Параметры)); КонецФункции @@ -629,14 +599,18 @@ Для Каждого ФункциональнаяОпция Из Метаданные.ФункциональныеОпции Цикл Значение = -1; Для Каждого Элемент Из ФункциональнаяОпция.Состав Цикл + Если Элемент.Объект = Неопределено Тогда + Продолжить; + КонецЕсли; Если Значение = -1 Тогда Значение = ПолучитьФункциональнуюОпцию(ФункциональнаяОпция.Имя, Параметры); КонецЕсли; + ПолноеИмя = Элемент.Объект.ПолноеИмя(); Если Значение = Истина Тогда - ДоступностьОбъектов.Вставить(Элемент.Объект, Истина); + ДоступностьОбъектов.Вставить(ПолноеИмя, Истина); Иначе - Если ДоступностьОбъектов[Элемент.Объект] = Неопределено Тогда - ДоступностьОбъектов.Вставить(Элемент.Объект, Ложь); + Если ДоступностьОбъектов[ПолноеИмя] = Неопределено Тогда + ДоступностьОбъектов.Вставить(ПолноеИмя, Ложь); КонецЕсли; КонецЕсли; КонецЦикла; diff --git a/SSL/src/CommonModules/ОрганизацииСлужебный/Module.bsl b/SSL/src/CommonModules/ОрганизацииСлужебный/Module.bsl deleted file mode 100644 index a8deb385d..000000000 --- a/SSL/src/CommonModules/ОрганизацииСлужебный/Module.bsl +++ /dev/null @@ -1,175 +0,0 @@ -//////////////////////////////////////////////////////////////////////////////// -// Подсистема "Организации". -// -//////////////////////////////////////////////////////////////////////////////// - -#Область СлужебныйПрограммныйИнтерфейс - -// Возвращает организацию по умолчанию. -// Если в ИБ есть только одна организация, которая не помечена на удаление и не является предопределенной, -// то будет возвращена ссылка на нее, иначе будет возвращена пустая ссылка. -// -// Возвращаемое значение: -// СправочникСсылка.Организации - ссылка на организацию. -// -Функция ОрганизацияПоУмолчанию() Экспорт - - Возврат Справочники.Организации.ОрганизацияПоУмолчанию(); - -КонецФункции - -// Возвращает признак использования нескольких организаций. -Функция ИспользуетсяНесколькоОрганизаций() Экспорт - - Возврат ПолучитьФункциональнуюОпцию("ИспользоватьНесколькоОрганизаций"); - -КонецФункции - -//////////////////////////////////////////////////////////////////////////////// -// Условные вызовы подсистем БСП. - -// Определить объекты метаданных, в модулях менеджеров которых ограничивается возможность -// редактирования реквизитов при групповом изменении. -// -// Параметры: -// Объекты - Соответствие - в качестве ключа указать полное имя объекта метаданных, -// подключенного к подсистеме "Групповое изменение объектов". -// Дополнительно в значении могут быть перечислены имена экспортных функций: -// "РеквизитыНеРедактируемыеВГрупповойОбработке", -// "РеквизитыРедактируемыеВГрупповойОбработке". -// Каждое имя должно начинаться с новой строки. -// Если указана пустая строка, значит в модуле менеджера определены обе функции. -// -Процедура ПриОпределенииОбъектовСРедактируемымиРеквизитами(Объекты) Экспорт - Объекты.Вставить(Метаданные.Справочники.Организации.ПолноеИмя(), "РеквизитыНеРедактируемыеВГрупповойОбработке"); -КонецПроцедуры - -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -// См. описание этой же процедуры в модуле СтандартныеПодсистемыСервер. -Процедура ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики) Экспорт - - // СЕРВЕРНЫЕ ОБРАБОТЧИКИ. - - СерверныеОбработчики["СтандартныеПодсистемы.ОбновлениеВерсииИБ\ПриДобавленииОбработчиковОбновления"].Добавить( - "ОрганизацииСлужебный"); - - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда - СерверныеОбработчики["СтандартныеПодсистемы.УправлениеДоступом\ПриЗаполненииВидовОграниченийПравОбъектовМетаданных"].Добавить( - "ОрганизацииСлужебный"); - КонецЕсли; - - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда - СерверныеОбработчики["СтандартныеПодсистемы.УправлениеДоступом\ПриЗаполненииВидовДоступа"].Добавить( - "ОрганизацииСлужебный"); - КонецЕсли; - -КонецПроцедуры - -// Добавляет процедуры-обработчики обновления, необходимые данной подсистеме. -// -// Параметры: -// Обработчики - ТаблицаЗначений - см. описание функции НоваяТаблицаОбработчиковОбновления -// общего модуля ОбновлениеИнформационнойБазы. -// -Процедура ПриДобавленииОбработчиковОбновления(Обработчики) Экспорт - - Обработчик = Обработчики.Добавить(); - Обработчик.Версия = "2.1.3.16"; - Обработчик.НачальноеЗаполнение = Истина; - Обработчик.Процедура = "Справочники.Организации.ОбновитьПредопределенныеВидыКонтактнойИнформацииОрганизаций"; - - Обработчик = Обработчики.Добавить(); - Обработчик.Версия = "2.2.1.12"; - Обработчик.НачальноеЗаполнение = Истина; - Обработчик.Процедура = "Справочники.Организации.ЗаполнитьКонстантуИспользоватьНесколькоОрганизаций"; - -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Обработчики событий подсистем БСП. - -// Заполняет состав видов доступа, используемых при ограничении прав объектов метаданных. -// Если состав видов доступа не заполнен, отчет "Права доступа" покажет некорректные сведения. -// -// Обязательно требуется заполнить только виды доступа, используемые -// в шаблонах ограничения доступа явно, а виды доступа, используемые -// в наборах значений доступа могут быть получены из текущего состояния -// регистра сведений НаборыЗначенийДоступа. -// -// Для автоматической подготовки содержимого процедуры следует -// воспользоваться инструментами разработчика для подсистемы. -// Управление доступом. -// -// Параметры: -// Описание - Строка, многострочная строка формата <Таблица>.<Право>.<ВидДоступа>[.Таблица объекта]. -// Например, Документ.ПриходнаяНакладная.Чтение.Организации -// Документ.ПриходнаяНакладная.Чтение.Контрагенты -// Документ.ПриходнаяНакладная.Изменение.Организации -// Документ.ПриходнаяНакладная.Изменение.Контрагенты -// Документ.ЭлектронныеПисьма.Чтение.Объект.Документ.ЭлектронныеПисьма -// Документ.ЭлектронныеПисьма.Изменение.Объект.Документ.ЭлектронныеПисьма -// Документ.Файлы.Чтение.Объект.Справочник.ПапкиФайлов -// Документ.Файлы.Чтение.Объект.Документ.ЭлектронноеПисьмо -// Документ.Файлы.Изменение.Объект.Справочник.ПапкиФайлов -// Документ.Файлы.Изменение.Объект.Документ.ЭлектронноеПисьмо -// Вид доступа Объект предопределен, как литерал, его нет в предопределенных элементах. -// ПланыВидовХарактеристик.ВидыДоступа. Этот вид доступа используется в шаблонах ограничений доступа, -// как "ссылка" на другой объект, по которому ограничивается таблица. -// Когда вид доступа "Объект" задан, также требуется задать типы таблиц, которые используются -// для этого вида доступа. Т.е. перечислить типы, которые соответствующие полю, -// использованному в шаблоне ограничения доступа в паре с видом доступа "Объект". -// При перечислении типов по виду доступа "Объект" нужно перечислить только те типы поля, -// которые есть у поля РегистрыСведений.НаборыЗначенийДоступа.Объект, остальные типы лишние. -// -Процедура ПриЗаполненииВидовОграниченийПравОбъектовМетаданных(Описание) Экспорт - - - -КонецПроцедуры - -// Заполняет виды доступа, используемые в ограничениях прав доступа. -// Виды доступа Пользователи и ВнешниеПользователи уже заполнены. -// Их можно удалить, если они не требуются для ограничения прав доступа. -// -// Параметры: -// ВидыДоступа - ТаблицаЗначений - с колонками: -// * Имя - Строка - имя используемое в описании поставляемых -// профилей групп доступа и текстах ОДД. -// * Представление - Строка - представляет вид доступа в профилях и группах доступа. -// * ТипЗначений - Тип - тип ссылки значений доступа. -// Например, Тип("СправочникСсылка.Номенклатура"). -// * ТипГруппЗначений - Тип - тип ссылки групп значений доступа. -// Например, Тип("СправочникСсылка.ГруппыДоступаНоменклатуры"). -// * НесколькоГруппЗначений - Булево - Истина указывает, что для значения доступа (Номенклатуры), можно -// выбрать несколько групп значений (Групп доступа номенклатуры). -// -Процедура ПриЗаполненииВидовДоступа(ВидыДоступа) Экспорт - - ВидДоступа = ВидыДоступа.Добавить(); - ВидДоступа.Имя = "Организации"; - ВидДоступа.Представление = НСтр("ru = 'Организации'"); - ВидДоступа.ТипЗначений = Тип("СправочникСсылка.Организации"); - -КонецПроцедуры - -// Обработчик подписки на событие ПроверитьЗначениеОпцииИспользоватьНесколькоОрганизаций. -// Вызывается при записи элемента справочника "Организации". -// -Процедура ПроверитьЗначениеОпцииИспользоватьНесколькоОрганизацийПриЗаписи(Источник, Отказ) Экспорт - - Если НЕ Источник.ЭтоГруппа - И НЕ ПолучитьФункциональнуюОпцию("ИспользоватьНесколькоОрганизаций") - И Справочники.Организации.КоличествоОрганизаций() > 1 Тогда - - УстановитьПривилегированныйРежим(Истина); - Константы.ИспользоватьНесколькоОрганизаций.Установить(Истина); - УстановитьПривилегированныйРежим(Ложь); - - КонецЕсли; - -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/CommonModules/ОтправкаSMS/Module.bsl b/SSL/src/CommonModules/ОтправкаSMS/Module.bsl index 4115006a9..cedb60c0f 100644 --- a/SSL/src/CommonModules/ОтправкаSMS/Module.bsl +++ b/SSL/src/CommonModules/ОтправкаSMS/Module.bsl @@ -20,7 +20,7 @@ // ** ИдентификаторСообщения - Строка. // * ОписаниеОшибки - Строка - пользовательское представление ошибки, если пустая строка, // то ошибки нет. -Функция ОтправитьSMS(НомераПолучателей, Знач Текст, ИмяОтправителя = "", ПеревестиВТранслит = Ложь) Экспорт +Функция ОтправитьSMS(НомераПолучателей, Знач Текст, ИмяОтправителя = Неопределено, ПеревестиВТранслит = Ложь) Экспорт ПроверитьПрава(); @@ -35,7 +35,10 @@ Возврат Результат; КонецЕсли; - НастройкиОтправкиSMS = НастройкиОтправкиSMS(); + НастройкиОтправкиSMS = ОтправкаSMSПовтИсп.НастройкиОтправкиSMS(); + Если ИмяОтправителя = Неопределено Тогда + ИмяОтправителя = НастройкиОтправкиSMS.ИмяОтправителя; + КонецЕсли; Если НастройкиОтправкиSMS.Провайдер = Перечисления.ПровайдерыSMS.МТС Тогда // МТС Результат = ОтправкаSMSЧерезМТС.ОтправитьSMS(НомераПолучателей, Текст, ИмяОтправителя, @@ -43,6 +46,18 @@ ИначеЕсли НастройкиОтправкиSMS.Провайдер = Перечисления.ПровайдерыSMS.Билайн Тогда // Билайн Результат = ОтправкаSMSЧерезБилайн.ОтправитьSMS(НомераПолучателей, Текст, ИмяОтправителя, НастройкиОтправкиSMS.Логин, НастройкиОтправкиSMS.Пароль); + ИначеЕсли НастройкиОтправкиSMS.Провайдер = Перечисления.ПровайдерыSMS.SMSRU Тогда // SMS.RU + Результат = ОтправкаSMSЧерезSMSRU.ОтправитьSMS(НомераПолучателей, Текст, ИмяОтправителя, + НастройкиОтправкиSMS.Логин, НастройкиОтправкиSMS.Пароль); + ИначеЕсли НастройкиОтправкиSMS.Провайдер = Перечисления.ПровайдерыSMS.SMSЦЕНТР Тогда // SMS-ЦЕНТР + Результат = ОтправкаSMSЧерезSMSЦЕНТР.ОтправитьSMS(НомераПолучателей, Текст, ИмяОтправителя, + НастройкиОтправкиSMS.Логин, НастройкиОтправкиSMS.Пароль); + ИначеЕсли НастройкиОтправкиSMS.Провайдер = Перечисления.ПровайдерыSMS.СМСУслуги Тогда // СМС-услуги + Результат = ОтправкаSMSЧерезСМСУслуги.ОтправитьSMS(НомераПолучателей, Текст, ИмяОтправителя, + НастройкиОтправкиSMS.Логин, НастройкиОтправкиSMS.Пароль); + ИначеЕсли НастройкиОтправкиSMS.Провайдер = Перечисления.ПровайдерыSMS.GSMINFORM Тогда // GSM-INFORM + Результат = ОтправкаSMSЧерезGSMINFORM.ОтправитьSMS(НомераПолучателей, Текст, ИмяОтправителя, + НастройкиОтправкиSMS.Логин, НастройкиОтправкиSMS.Пароль); ИначеЕсли ЗначениеЗаполнено(НастройкиОтправкиSMS.Провайдер) Тогда // Другой ПараметрыОтправки = Новый Структура; ПараметрыОтправки.Вставить("НомераПолучателей", НомераПолучателей); @@ -53,6 +68,30 @@ ПараметрыОтправки.Вставить("Провайдер", НастройкиОтправкиSMS.Провайдер); ОтправкаSMSПереопределяемый.ОтправитьSMS(ПараметрыОтправки, Результат); + + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр( + "ОтправкаSMSПереопределяемый.ОтправитьSMS", + "Результат", + Результат, + Тип("Структура"), + Новый Структура("ОтправленныеСообщения,ОписаниеОшибки", Тип("Массив"), Тип("Строка"))); + Если Результат.ОтправленныеСообщения.Количество() > 0 Тогда + ОбщегоНазначенияКлиентСервер.Проверить( + ТипЗнч(Результат.ОтправленныеСообщения[0]) = Тип("Структура"), + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Неверный тип значения в коллекции Результат.ОтправленныеСообщения: + |ожидается тип ""Структура"", передан тип ""%1""'"), + ТипЗнч(Результат.ОтправленныеСообщения[0])), + "ОтправкаSMSПереопределяемый.ОтправитьSMS"); + Для Индекс = 0 По Результат.ОтправленныеСообщения.Количество() - 1 Цикл + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр( + "ОтправкаSMSПереопределяемый.ОтправитьSMS", + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("Результат.ОтправленныеСообщения[%1]", Формат(Индекс, "ЧН=; ЧГ=0")), + Результат.ОтправленныеСообщения[Индекс], + Тип("Структура"), + Новый Структура("НомерПолучателя,ИдентификаторСообщения", Тип("Строка"), Тип("Строка"))); + КонецЦикла; + КонецЕсли; КонецЕсли; Возврат Результат; @@ -75,7 +114,7 @@ // доставки от абонента истекло); // "Ошибка" - не удалось получить статус у поставщика услуг (статус неизвестен). // -Функция СтатусДоставки(ИдентификаторСообщения) Экспорт +Функция СтатусДоставки(Знач ИдентификаторСообщения) Экспорт ПроверитьПрава(); @@ -83,22 +122,20 @@ Возврат "НеОтправлялось"; КонецЕсли; - Результат = Неопределено; - НастройкиОтправкиSMS = НастройкиОтправкиSMS(); + НастройкиОтправкиSMS = ОтправкаSMSПовтИсп.НастройкиОтправкиSMS(); - Если НастройкиОтправкиSMS.Провайдер = Перечисления.ПровайдерыSMS.МТС Тогда - Результат = ОтправкаSMSЧерезМТС.СтатусДоставки(ИдентификаторСообщения, - НастройкиОтправкиSMS.Логин, - НастройкиОтправкиSMS.Пароль); - ИначеЕсли НастройкиОтправкиSMS.Провайдер = Перечисления.ПровайдерыSMS.Билайн Тогда - Результат = ОтправкаSMSЧерезБилайн.СтатусДоставки(ИдентификаторСообщения, - НастройкиОтправкиSMS.Логин, - НастройкиОтправкиSMS.Пароль); - ИначеЕсли ЗначениеЗаполнено(НастройкиОтправкиSMS.Провайдер) Тогда - ОтправкаSMSПереопределяемый.СтатусДоставки(ИдентификаторСообщения, НастройкиОтправкиSMS.Провайдер, - НастройкиОтправкиSMS.Логин, НастройкиОтправкиSMS.Пароль, Результат); - Иначе // провайдер не выбран - Результат = "Ошибка"; + Если НастройкиОтправкиSMS.Провайдер = Перечисления.ПровайдерыSMS.СМСУслуги Тогда + ЧастиИдентификатора = СтрРазделить(ИдентификаторСообщения, "/", Истина); + НомерПолучателя = ЧастиИдентификатора[0]; + ИдентификаторСообщения = ЧастиИдентификатора[1]; + КонецЕсли; + + Результат = ОтправкаSMSПовтИсп.СтатусДоставки(ИдентификаторСообщения); + Если ТипЗнч(Результат) = Тип("Соответствие") Тогда + Результат = Результат[НомерПолучателя]; + Если Результат = Неопределено Тогда + Результат = "НеОтправлялось"; + КонецЕсли; КонецЕсли; Возврат Результат; @@ -112,7 +149,7 @@ Результат = Истина; - НастройкиОтправкиSMS = НастройкиОтправкиSMS(); + НастройкиОтправкиSMS = ОтправкаSMSПовтИсп.НастройкиОтправкиSMS(); Провайдер = НастройкиОтправкиSMS.Провайдер; Если Провайдер = Перечисления.ПровайдерыSMS.МТС Или Провайдер = Перечисления.ПровайдерыSMS.Билайн Тогда Результат = Не ПустаяСтрока(НастройкиОтправкиSMS.Логин) И Не ПустаяСтрока(НастройкиОтправкиSMS.Пароль); @@ -130,7 +167,7 @@ // Проверяет возможность отправки SMS для текущего пользователя. Функция ДоступнаОтправкаSMS() Экспорт - Возврат Пользователи.РолиДоступны("ОтправкаSMS") И НастройкаОтправкиSMSВыполнена(); + Возврат Пользователи.РолиДоступны("ОтправкаSMS") И НастройкаОтправкиSMSВыполнена() Или Пользователи.ЭтоПолноправныйПользователь(); КонецФункции #КонецОбласти @@ -184,6 +221,18 @@ ЗапросыРазрешений.Добавить( РаботаВБезопасномРежиме.ЗапросНаИспользованиеВнешнихРесурсов(ОтправкаSMSЧерезМТС.Разрешения())); + ЗапросыРазрешений.Добавить( + РаботаВБезопасномРежиме.ЗапросНаИспользованиеВнешнихРесурсов(ОтправкаSMSЧерезSMSRU.Разрешения())); + + ЗапросыРазрешений.Добавить( + РаботаВБезопасномРежиме.ЗапросНаИспользованиеВнешнихРесурсов(ОтправкаSMSЧерезSMSЦЕНТР.Разрешения())); + + ЗапросыРазрешений.Добавить( + РаботаВБезопасномРежиме.ЗапросНаИспользованиеВнешнихРесурсов(ОтправкаSMSЧерезСМСУслуги.Разрешения())); + + ЗапросыРазрешений.Добавить( + РаботаВБезопасномРежиме.ЗапросНаИспользованиеВнешнихРесурсов(ОтправкаSMSЧерезGSMINFORM.Разрешения())); + ЗапросыРазрешений.Добавить( РаботаВБезопасномРежиме.ЗапросНаИспользованиеВнешнихРесурсов(ДополнительныеРазрешения())); @@ -196,20 +245,6 @@ Возврат Разрешения; КонецФункции -Функция НастройкиОтправкиSMS() - Результат = Новый Структура("Логин, Пароль, Провайдер"); - Если ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда - Владелец = ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Константа.ПровайдерSMS"); - УстановитьПривилегированныйРежим(Истина); - ПарольИЛогин = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(Владелец, "Пароль,Логин"); - УстановитьПривилегированныйРежим(Ложь); - Результат.Логин = ПарольИЛогин.Логин; - Результат.Пароль = ПарольИЛогин.Пароль; - Результат.Провайдер =Константы.ПровайдерSMS.Получить(); - КонецЕсли; - Возврат Результат; -КонецФункции - // Заполняет структуру параметров, необходимых для работы клиентского кода // конфигурации. // @@ -220,7 +255,7 @@ Параметры.Вставить("ДоступнаОтправкаSMS", ДоступнаОтправкаSMS()); КонецПроцедуры -Процедура ПроверитьПрава() +Процедура ПроверитьПрава() Экспорт Если Не Пользователи.РолиДоступны("ОтправкаSMS") Тогда ВызватьИсключение НСтр("ru = 'Недостаточно прав для выполнения операции.'"); КонецЕсли; diff --git a/SSL/src/CommonModules/ОтправкаSMSКлиент/Module.bsl b/SSL/src/CommonModules/ОтправкаSMSКлиент/Module.bsl index 9d164debf..9686b328d 100644 --- a/SSL/src/CommonModules/ОтправкаSMSКлиент/Module.bsl +++ b/SSL/src/CommonModules/ОтправкаSMSКлиент/Module.bsl @@ -1,3 +1,8 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Отправка SMS" +// +//////////////////////////////////////////////////////////////////////////////// + #Область ПрограммныйИнтерфейс // Открывает форму для отправки нового SMS. @@ -5,7 +10,7 @@ // Параметры: // НомераПолучателей - Массив - номера получателей в формате +<КодСтраны><КодDEF><номер>(строкой); // Текст - Строка - текст сообщения, длиной не более 1000 символов; -// ДополнительныеПараметры- Структура - дополнительные параметры отправки SMS +// ДополнительныеПараметры- Структура - дополнительные параметры отправки SMS. // * ИмяОтправителя - Строка - имя отправителя, которое будет отображаться вместо номера у получателей. // * ПеревестиВТранслит - Булево - Истина, если требуется переводить текст сообщения в транслит перед отправкой. Процедура ОтправитьSMS(НомераПолучателей, Текст, ДополнительныеПараметры) Экспорт @@ -22,12 +27,12 @@ ПараметрыОтправки.ДополнительныеПараметры = Новый Структура; КонецЕсли; Если НЕ ПараметрыОтправки.ДополнительныеПараметры.Свойство("ПеревестиВТранслит") Тогда - ПараметрыОтправки.ДополнительныеПараметры.Добавить("ПеревестиВТранслит", Ложь); + ПараметрыОтправки.ДополнительныеПараметры.Вставить("ПеревестиВТранслит", Ложь); КонецЕсли; Если НЕ ПараметрыОтправки.ДополнительныеПараметры.Свойство("ИсточникКонтактнойИнформации") Тогда - ПараметрыОтправки.ДополнительныеПараметры.Добавить("ИсточникКонтактнойИнформации", ""); + ПараметрыОтправки.ДополнительныеПараметры.Вставить("ИсточникКонтактнойИнформации", ""); КонецЕсли; - + ОписаниеОповещения = Новый ОписаниеОповещения("СоздатьНовоеSMSПроверкаНастроекВыполнена", ЭтотОбъект, ПараметрыОтправки); ПроверитьНаличиеНастроекДляОтправкиSMS(ОписаниеОповещения); КонецЕсли; diff --git a/SSL/src/CommonModules/ОтправкаSMSКлиентПереопределяемый/Module.bsl b/SSL/src/CommonModules/ОтправкаSMSКлиентПереопределяемый/Module.bsl index 9623a4900..d951d5163 100644 --- a/SSL/src/CommonModules/ОтправкаSMSКлиентПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ОтправкаSMSКлиентПереопределяемый/Module.bsl @@ -1,3 +1,8 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Отправка SMS" +// +//////////////////////////////////////////////////////////////////////////////// + #Область ПрограммныйИнтерфейс // Открывает форму для отправки нового SMS. @@ -5,11 +10,23 @@ // Параметры: // НомераПолучателей - Массив - номера получателей в формате +<КодСтраны><КодDEF><номер>(строкой); // Текст - Строка - текст сообщения, длиной не более 1000 символов; -// ДополнительныеПараметры - Структура - Дополнительные параметры отправки СМС +// ДополнительныеПараметры - Структура - Дополнительные параметры отправки SMS. // * ИмяОтправителя - Строка - Имя отправителя, которое будет отображаться вместо номера у получателей. // * ПеревестиВТранслит - Булево - Истина, если требуется переводить текст сообщения в транслит перед отправкой. // СтандартнаяОбработка - Булево - Флаг необходимости выполнения стандартной обработки отправки SMS. Процедура ПриОтправкеSMS(НомераПолучателей, Текст, ДополнительныеПараметры, СтандартнаяОбработка) Экспорт + +КонецПроцедуры + +// Определяет адрес страницы провайдера в сети Интернет. +// +// Параметры: +// Провайдер - ПеречислениеСсылка.ПровайдерыSMS - поставщик услуги по отправке SMS. +// АдресВИнтернете - Строка - адрес страницы провайдера в Интернете. +Процедура ПриПолученииАдресаПровайдераВИнтернете(Провайдер, АдресВИнтернете) Экспорт + + + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/CommonModules/ОтправкаSMSПереопределяемый/Module.bsl b/SSL/src/CommonModules/ОтправкаSMSПереопределяемый/Module.bsl index 7e53d0ade..7b543ea67 100644 --- a/SSL/src/CommonModules/ОтправкаSMSПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ОтправкаSMSПереопределяемый/Module.bsl @@ -5,7 +5,7 @@ #Область ПрограммныйИнтерфейс -// Отправляет SMS через настроенного поставщика услуги, возвращает идентификатор сообщения. +// Отправляет SMS через настроенного поставщика услуги. // // Параметры: // ПараметрыОтправки - Структура - @@ -47,7 +47,8 @@ // НастройкиОтправкиSMS - Структура: // * Провайдер - ПеречислениеСсылка.ПровайдерыSMS; // * Логин - Строка; -// * Пароль - Строка. +// * Пароль - Строка; +// * ИмяОтправителя - Строка. // Отказ - Булево - установить этот параметр в Истина, если настройки не заполнены или заполнены неверно. // Процедура ПриПроверкеНастроекОтправкиSMS(НастройкиОтправкиSMS, Отказ) Экспорт diff --git a/SSL/src/CommonModules/ОтправкаSMSПовтИсп/Module.bsl b/SSL/src/CommonModules/ОтправкаSMSПовтИсп/Module.bsl new file mode 100644 index 000000000..c1ad9f4db --- /dev/null +++ b/SSL/src/CommonModules/ОтправкаSMSПовтИсп/Module.bsl @@ -0,0 +1,57 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Отправка SMS" +// +//////////////////////////////////////////////////////////////////////////////// + +#Область СлужебныеПроцедурыИФункции + +Функция СтатусДоставки(ИдентификаторСообщения) Экспорт + + ОтправкаSMS.ПроверитьПрава(); + + Если ПустаяСтрока(ИдентификаторСообщения) Тогда + Возврат "НеОтправлялось"; + КонецЕсли; + + Результат = Неопределено; + НастройкиОтправкиSMS = НастройкиОтправкиSMS(); + + Если НастройкиОтправкиSMS.Провайдер = Перечисления.ПровайдерыSMS.МТС Тогда + Результат = ОтправкаSMSЧерезМТС.СтатусДоставки(ИдентификаторСообщения, НастройкиОтправкиSMS); + ИначеЕсли НастройкиОтправкиSMS.Провайдер = Перечисления.ПровайдерыSMS.Билайн Тогда + Результат = ОтправкаSMSЧерезБилайн.СтатусДоставки(ИдентификаторСообщения, НастройкиОтправкиSMS); + ИначеЕсли НастройкиОтправкиSMS.Провайдер = Перечисления.ПровайдерыSMS.SMSRU Тогда + Результат = ОтправкаSMSЧерезSMSRU.СтатусДоставки(ИдентификаторСообщения, НастройкиОтправкиSMS); + ИначеЕсли НастройкиОтправкиSMS.Провайдер = Перечисления.ПровайдерыSMS.SMSЦЕНТР Тогда + Результат = ОтправкаSMSЧерезSMSЦЕНТР.СтатусДоставки(ИдентификаторСообщения, НастройкиОтправкиSMS); + ИначеЕсли НастройкиОтправкиSMS.Провайдер = Перечисления.ПровайдерыSMS.СМСУслуги Тогда + Результат = ОтправкаSMSЧерезСМСУслуги.СтатусДоставки(ИдентификаторСообщения, НастройкиОтправкиSMS); + ИначеЕсли НастройкиОтправкиSMS.Провайдер = Перечисления.ПровайдерыSMS.GSMINFORM Тогда + Результат = ОтправкаSMSЧерезGSMINFORM.СтатусДоставки(ИдентификаторСообщения, НастройкиОтправкиSMS); + ИначеЕсли ЗначениеЗаполнено(НастройкиОтправкиSMS.Провайдер) Тогда + ОтправкаSMSПереопределяемый.СтатусДоставки(ИдентификаторСообщения, НастройкиОтправкиSMS.Провайдер, + НастройкиОтправкиSMS.Логин, НастройкиОтправкиSMS.Пароль, Результат); + Иначе // провайдер не выбран + Результат = "Ошибка"; + КонецЕсли; + + Возврат Результат; + +КонецФункции + +Функция НастройкиОтправкиSMS() Экспорт + Результат = Новый Структура("Логин, Пароль, Провайдер, ИмяОтправителя"); + Если ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда + Владелец = ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Константа.ПровайдерSMS"); + УстановитьПривилегированныйРежим(Истина); + НастройкиПровайдера = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(Владелец, "Пароль,Логин,ИмяОтправителя"); + УстановитьПривилегированныйРежим(Ложь); + Результат.Логин = НастройкиПровайдера.Логин; + Результат.Пароль = НастройкиПровайдера.Пароль; + Результат.ИмяОтправителя = НастройкиПровайдера.ИмяОтправителя; + Результат.Провайдер =Константы.ПровайдерSMS.Получить(); + КонецЕсли; + Возврат Результат; +КонецФункции + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/ОтправкаSMSПовтИсп/ОтправкаSMSПовтИсп.mdo b/SSL/src/CommonModules/ОтправкаSMSПовтИсп/ОтправкаSMSПовтИсп.mdo new file mode 100644 index 000000000..7a1dd9e84 --- /dev/null +++ b/SSL/src/CommonModules/ОтправкаSMSПовтИсп/ОтправкаSMSПовтИсп.mdo @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="a07971f5-ed6d-4829-a6bb-4b17cd5c6f6c"> + <name>ОтправкаSMSПовтИсп</name> + <synonym> + <key>ru</key> + <value>Отправка SMS повт исп</value> + </synonym> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> + <returnValuesReuse>DuringRequest</returnValuesReuse> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ОтправкаSMSЧерезGSMINFORM/Module.bsl b/SSL/src/CommonModules/ОтправкаSMSЧерезGSMINFORM/Module.bsl new file mode 100644 index 000000000..15b393388 --- /dev/null +++ b/SSL/src/CommonModules/ОтправкаSMSЧерезGSMINFORM/Module.bsl @@ -0,0 +1,304 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Отправка SMS" +// +//////////////////////////////////////////////////////////////////////////////// + +#Область СлужебныеПроцедурыИФункции + +// Отправляет SMS через GSM-INFORM. +// +// Параметры: +// НомераПолучателей - Массив - номера получателей в формате +7ХХХХХХХХХХ; +// Текст - Строка - текст сообщения, длиной не более 480 символов; +// ИмяОтправителя - Строка - имя отправителя, которое будет отображаться вместо номера входящего SMS; +// Логин - Строка - логин пользователя услуги отправки sms; +// Пароль - Строка - пароль пользователя услуги отправки sms. +// +// Возвращаемое значение: +// Структура: ОтправленныеСообщения - Массив структур: НомерОтправителя. +// ИдентификаторСообщения. +// ОписаниеОшибки - Строка - пользовательское представление ошибки, если пустая строка, +// то ошибки нет. +Функция ОтправитьSMS(НомераПолучателей, Текст, ИмяОтправителя, Логин, Пароль) Экспорт + + Результат = Новый Структура("ОтправленныеСообщения,ОписаниеОшибки", Новый Массив, ""); + + // Подготовка строки получателей. + СтрокаПолучателей = МассивПолучателейСтрокой(НомераПолучателей); + + // Проверка на заполнение обязательных параметров. + Если ПустаяСтрока(СтрокаПолучателей) Или ПустаяСтрока(Текст) Тогда + Результат.ОписаниеОшибки = НСтр("ru = 'Неверные параметры сообщения'"); + Возврат Результат; + КонецЕсли; + + // Подготовка параметров запроса. + ПараметрыЗапроса = Новый Структура; + ПараметрыЗапроса.Вставить("id", Логин); + ПараметрыЗапроса.Вставить("api_key", Пароль); + + ПараметрыЗапроса.Вставить("cmd", "send"); + ПараметрыЗапроса.Вставить("message", Текст); + ПараметрыЗапроса.Вставить("to", СтрокаПолучателей); + ПараметрыЗапроса.Вставить("sender", ИмяОтправителя); + + // отправка запроса + ИмяФайлаОтвета = ВыполнитьЗапрос(ПараметрыЗапроса); + + Если ПустаяСтрока(ИмяФайлаОтвета) Тогда + Результат.ОписаниеОшибки = Результат.ОписаниеОшибки + НСтр("ru = 'Соединение не установлено'"); + Возврат Результат; + КонецЕсли; + + ЧтениеJSON = Новый ЧтениеJSON; + ЧтениеJSON.ОткрытьФайл(ИмяФайлаОтвета); + ОтветСервера = ПрочитатьJSON(ЧтениеJSON); + ЧтениеJSON.Закрыть(); + УдалитьФайлы(ИмяФайлаОтвета); + + Если ОтветСервера["error_no"] = 0 Тогда + Для Каждого Элемент Из ОтветСервера["items"] Цикл + Если Элемент["error_no"] = 0 Тогда + ОтправленноеСообщение = Новый Структура("НомерПолучателя,ИдентификаторСообщения", Элемент["phone"], Формат(Элемент["sms_id"], "ЧГ=0")); + Результат.ОтправленныеСообщения.Добавить(ОтправленноеСообщение); + Иначе + КодОшибки = Элемент["error_no"]; + Результат.ОписаниеОшибки = Результат.ОписаниеОшибки + Элемент["phone"] + ": " + ОписаниеОшибкиПолученияСтатуса(КодОшибки) + Символы.ПС; + КонецЕсли; + КонецЦикла; + Если Не ПустаяСтрока(Результат.ОписаниеОшибки) Тогда + Результат.ОписаниеОшибки = НСтр("ru = 'Не удалось отправить SMS'") + ":" + СокрП(Результат.ОписаниеОшибки); + КонецЕсли; + Иначе + Результат.ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр( + "ru = 'Не удалось отправить SMS: + |%1 (код ошибки: %2)'"), ОписаниеОшибкиОтправки(ОтветСервера["error_no"]), ОтветСервера["error_no"]); + + ЗаписьЖурналаРегистрации(НСтр("ru = 'Отправка SMS'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, , , Результат.ОписаниеОшибки); + КонецЕсли; + + Возврат Результат; + +КонецФункции + +// Возвращает текстовое представление статуса доставки сообщения. +// +// Параметры: +// ИдентификаторСообщения - Строка - идентификатор, присвоенный sms при отправке; +// НастройкиОтправкиSMS - Структура - см. ОтправкаSMSПовтИсп.НастройкиОтправкиSMS; +// +// Возвращаемое значение: +// Строка - статус доставки. См. описание функции ОтправкаSMS.СтатусДоставки. +Функция СтатусДоставки(ИдентификаторСообщения, НастройкиОтправкиSMS) Экспорт + Логин = НастройкиОтправкиSMS.Логин; + Пароль = НастройкиОтправкиSMS.Пароль; + + // Подготовка параметров запроса. + ПараметрыЗапроса = Новый Структура; + ПараметрыЗапроса.Вставить("id", Логин); + ПараметрыЗапроса.Вставить("api_key", Пароль); + ПараметрыЗапроса.Вставить("sms_id", ИдентификаторСообщения); + ПараметрыЗапроса.Вставить("cmd", "status"); + + // отправка запроса + ИмяФайлаОтвета = ВыполнитьЗапрос(ПараметрыЗапроса); + Если ПустаяСтрока(ИмяФайлаОтвета) Тогда + Возврат "Ошибка"; + КонецЕсли; + + ЧтениеJSON = Новый ЧтениеJSON; + ЧтениеJSON.ОткрытьФайл(ИмяФайлаОтвета); + ОтветСервера = ПрочитатьJSON(ЧтениеJSON); + ЧтениеJSON.Закрыть(); + УдалитьФайлы(ИмяФайлаОтвета); + + ОписаниеОшибки = ""; + КодОшибки = Неопределено; + Результат = "Ошибка"; + + Если ОтветСервера["error_no"] = 0 Тогда + Для Каждого Элемент Из ОтветСервера["items"] Цикл + Если Элемент.Свойство("error_no") Тогда + КодОшибки = Элемент["error_no"]; + Прервать; + Иначе + Результат = СтатусДоставкиSMS(Элемент["status_no"]); + КонецЕсли; + КонецЦикла; + Иначе + КодОшибки = ОтветСервера["error_no"]; + КонецЕсли; + + Если КодОшибки <> Неопределено Тогда + ОписаниеОшибки = ОписаниеОшибкиПолученияСтатуса(КодОшибки); + Комментарий = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр( + "ru = 'Не удалось получить статус доставки SMS (id: ""%3""): + |%1 (код ошибки: %2)'"), ОписаниеОшибки, КодОшибки, ИдентификаторСообщения); + ЗаписьЖурналаРегистрации(НСтр("ru = 'Отправка SMS'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, , , Комментарий); + КонецЕсли; + + Возврат Результат; + +КонецФункции + +Функция СтатусДоставкиSMS(КодСостояния) + СоответствиеСтатусов = Новый Соответствие; + СоответствиеСтатусов.Вставить("1", "Отправлено"); + СоответствиеСтатусов.Вставить("2", "Доставлено"); + СоответствиеСтатусов.Вставить("3", "НеДоставлено"); + СоответствиеСтатусов.Вставить("4", "Отправляется"); + СоответствиеСтатусов.Вставить("6", "НеДоставлено"); + СоответствиеСтатусов.Вставить("7", "НеОтправлялось"); + СоответствиеСтатусов.Вставить("8", "Отправляется"); + СоответствиеСтатусов.Вставить("9", "НеОтправлено"); + СоответствиеСтатусов.Вставить("10", "Отправляется"); + СоответствиеСтатусов.Вставить("11", "Отправлено"); + + Результат = СоответствиеСтатусов[КодСостояния]; + Возврат ?(Результат = Неопределено, "НеОтправлялось", Результат); +КонецФункции + +Функция ОписанияОшибок() + Результат = Новый Соответствие; + Результат.Вставить(1, НСтр("ru = 'Неверный API-ключ.'")); + Результат.Вставить(2, НСтр("ru = 'Неизвестная команда.'")); + Результат.Вставить(3, НСтр("ru = 'Пользователь с указанным ID кабинета не найден.'")); + Результат.Вставить(4, НСтр("ru = 'Пустой список телефонов для отправки сообщений.'")); + Результат.Вставить(5, НСтр("ru = 'Не указан текст сообщения.'")); + Результат.Вставить(6, НСтр("ru = 'Не удалось отправить сообщение на указанный номер.'")); + Результат.Вставить(7, НСтр("ru = 'Не указан отправитель по приоритетному трафику.'")); + Результат.Вставить(8, НСтр("ru = 'Некорректный отправитель, допускается только латиница и цифры.'")); + Результат.Вставить(9, НСтр("ru = 'Пустой список идентификаторов сообщений для получения статусов.'")); + Результат.Вставить(10, НСтр("ru = 'Не найдено сообщение с таким идентификатором.'")); + Результат.Вставить(11, НСтр("ru = 'Не удалось оплатить рассылку, проверьте баланс.'")); + + Возврат Результат; +КонецФункции + +Функция ОписаниеОшибкиОтправки(КодОшибки) + ОписанияОшибок = ОписанияОшибок(); + ТекстСообщения = ОписанияОшибок[КодОшибки]; + Если ТекстСообщения = Неопределено Тогда + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Сообщение не отправлено (код ошибки: %1).'"), КодОшибки); + КонецЕсли; + Возврат ТекстСообщения; +КонецФункции + +Функция ОписаниеОшибкиПолученияСтатуса(КодОшибки) + ОписанияОшибок = ОписанияОшибок(); + ТекстСообщения = ОписанияОшибок[КодОшибки]; + Если ТекстСообщения = Неопределено Тогда + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Статус сообщения не получен (код ошибки: %1).'"), КодОшибки); + КонецЕсли; + Возврат ТекстСообщения; +КонецФункции + +Функция ВыполнитьЗапрос(ПараметрыЗапроса) + + Результат = ""; + + ИмяФайлаЗапроса = СформироватьФайлДляPOSTЗапроса(ПараметрыЗапроса); + ИмяФайлаОтвета = ПолучитьИмяВременногоФайла("txt"); + + // формирование заголовка + Заголовок = Новый Соответствие; + Заголовок.Вставить("Content-Type", "application/x-www-form-urlencoded"); + Заголовок.Вставить("Content-Length", XMLСтрока(РазмерФайла(ИмяФайлаЗапроса))); + + // Отправка запроса и получение ответа. + Попытка + Соединение = Новый HTTPСоединение("gsm-inform.ru", , , , ПолучениеФайловИзИнтернетаКлиентСервер.ПолучитьПрокси("http"), 60); + Соединение.ОтправитьДляОбработки(ИмяФайлаЗапроса, "/api/", ИмяФайлаОтвета, Заголовок); + Результат = ИмяФайлаОтвета; + Исключение + ЗаписьЖурналаРегистрации( + НСтр("ru = 'Отправка SMS'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, + , + , + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + КонецПопытки; + + УдалитьФайлы(ИмяФайлаЗапроса); + + Возврат Результат; + +КонецФункции + +Функция СформироватьФайлДляPOSTЗапроса(ПараметрыЗапроса) + СтрокаЗапроса = ""; + Для Каждого Параметр Из ПараметрыЗапроса Цикл + Если Не ПустаяСтрока(СтрокаЗапроса) Тогда + СтрокаЗапроса = СтрокаЗапроса + "&"; + КонецЕсли; + СтрокаЗапроса = СтрокаЗапроса + Параметр.Ключ + "=" + КодироватьСтроку(Параметр.Значение, СпособКодированияСтроки.КодировкаURL); + КонецЦикла; + + ИмяФайлаЗапроса = ПолучитьИмяВременногоФайла("txt"); + + ФайлЗапроса = Новый ЗаписьТекста(ИмяФайлаЗапроса, КодировкаТекста.ANSI); + ФайлЗапроса.Записать(СтрокаЗапроса); + ФайлЗапроса.Закрыть(); + + Возврат ИмяФайлаЗапроса; +КонецФункции + +Функция РазмерФайла(ИмяФайла) + Файл = Новый Файл(ИмяФайла); + Возврат Файл.Размер(); +КонецФункции + +Функция МассивПолучателейСтрокой(Массив) + Получатели = Новый Массив; + ОбщегоНазначенияКлиентСервер.ДополнитьМассив(Получатели, Массив, Истина); + + Результат = ""; + Для Каждого Получатель Из Получатели Цикл + Номер = ФорматироватьНомер(Получатель); + Если НЕ ПустаяСтрока(Номер) Тогда + Если Не ПустаяСтрока(Результат) Тогда + Результат = Результат + ","; + КонецЕсли; + Результат = Результат + Номер; + КонецЕсли; + КонецЦикла; + Возврат Результат; +КонецФункции + +Функция ФорматироватьНомер(Номер) + Результат = ""; + ДопустимыеСимволы = "+1234567890"; + Для Позиция = 1 По СтрДлина(Номер) Цикл + Символ = Сред(Номер,Позиция,1); + Если СтрНайти(ДопустимыеСимволы, Символ) > 0 Тогда + Результат = Результат + Символ; + КонецЕсли; + КонецЦикла; + Возврат Результат; +КонецФункции + +// Возвращает список разрешений для отправки SMS с использованием всех доступных провайдеров. +// +// Возвращаемое значение: +// Массив. +// +Функция Разрешения() Экспорт + + Протокол = "HTTP"; + Адрес = "gsm-inform.ru"; + Порт = Неопределено; + Описание = НСтр("ru = 'Отправка SMS через ""GSM-INFORM"".'"); + + Разрешения = Новый Массив; + Разрешения.Добавить( + РаботаВБезопасномРежиме.РазрешениеНаИспользованиеИнтернетРесурса(Протокол, Адрес, Порт, Описание)); + + Возврат Разрешения; +КонецФункции + +#КонецОбласти + diff --git a/SSL/src/CommonModules/ПерепрефиксацияОбъектов/ПерепрефиксацияОбъектов.mdo b/SSL/src/CommonModules/ОтправкаSMSЧерезGSMINFORM/ОтправкаSMSЧерезGSMINFORM.mdo similarity index 61% rename from SSL/src/CommonModules/ПерепрефиксацияОбъектов/ПерепрефиксацияОбъектов.mdo rename to SSL/src/CommonModules/ОтправкаSMSЧерезGSMINFORM/ОтправкаSMSЧерезGSMINFORM.mdo index 4fa5af48d..9dea9022c 100644 --- a/SSL/src/CommonModules/ПерепрефиксацияОбъектов/ПерепрефиксацияОбъектов.mdo +++ b/SSL/src/CommonModules/ОтправкаSMSЧерезGSMINFORM/ОтправкаSMSЧерезGSMINFORM.mdo @@ -1,9 +1,9 @@ <?xml version="1.0" encoding="UTF-8"?> -<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="a752fba8-5084-4fa2-9d0b-7074a42b1312"> - <name>ПерепрефиксацияОбъектов</name> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="06323ebd-5f74-494a-99a5-eb77e23d8637"> + <name>ОтправкаSMSЧерезGSMINFORM</name> <synonym> <key>ru</key> - <value>Перепрефиксация объектов</value> + <value>Отправка SMS через GSM-INFORM</value> </synonym> <server>true</server> <externalConnection>true</externalConnection> diff --git a/SSL/src/CommonModules/ОтправкаSMSЧерезSMSRU/Module.bsl b/SSL/src/CommonModules/ОтправкаSMSЧерезSMSRU/Module.bsl new file mode 100644 index 000000000..5ef26ef1f --- /dev/null +++ b/SSL/src/CommonModules/ОтправкаSMSЧерезSMSRU/Module.bsl @@ -0,0 +1,308 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Отправка SMS" +// +//////////////////////////////////////////////////////////////////////////////// + +#Область СлужебныеПроцедурыИФункции + +// Отправляет SMS через SMS.RU. +// +// Параметры: +// НомераПолучателей - Массив - номера получателей в формате +7ХХХХХХХХХХ; +// Текст - Строка - текст сообщения, длиной не более 480 символов; +// ИмяОтправителя - Строка - имя отправителя, которое будет отображаться вместо номера входящего SMS; +// Логин - Строка - логин пользователя услуги отправки sms; +// Пароль - Строка - пароль пользователя услуги отправки sms. +// +// Возвращаемое значение: +// Структура: ОтправленныеСообщения - Массив структур: НомерОтправителя. +// ИдентификаторСообщения. +// ОписаниеОшибки - Строка - пользовательское представление ошибки, если пустая строка, +// то ошибки нет. +Функция ОтправитьSMS(НомераПолучателей, Текст, ИмяОтправителя, Логин, Пароль) Экспорт + + Результат = Новый Структура("ОтправленныеСообщения,ОписаниеОшибки", Новый Массив, ""); + + // Подготовка строки получателей. + СтрокаПолучателей = МассивПолучателейСтрокой(НомераПолучателей); + + // Проверка на заполнение обязательных параметров. + Если ПустаяСтрока(СтрокаПолучателей) Или ПустаяСтрока(Текст) Тогда + Результат.ОписаниеОшибки = НСтр("ru = 'Неверные параметры сообщения'"); + Возврат Результат; + КонецЕсли; + + // Получение токена. + ИмяФайлаОтвета = ВыполнитьЗапрос("auth/get_token", Новый Структура); + ЧтениеТекста = Новый ЧтениеТекста(ИмяФайлаОтвета); + Токен = ЧтениеТекста.Прочитать(); + ЧтениеТекста.Закрыть(); + + // Подготовка передачи пароля. + ХешированиеДанных = Новый ХешированиеДанных(ХешФункция.MD5); + ХешированиеДанных.Добавить(КодироватьСтроку(Пароль, СпособКодированияСтроки.КодировкаURL)+Токен); + КодАвторизации = НРег(СтрЗаменить(ХешированиеДанных.ХешСумма, " ", "")); + + // Подготовка параметров запроса. + ПараметрыЗапроса = Новый Структура; + ПараметрыЗапроса.Вставить("login", Логин); + ПараметрыЗапроса.Вставить("token", Токен); + ПараметрыЗапроса.Вставить("sig", КодАвторизации); + + ПараметрыЗапроса.Вставить("text", Текст); + ПараметрыЗапроса.Вставить("to", СтрокаПолучателей); + ПараметрыЗапроса.Вставить("from", ИмяОтправителя); + + // отправка запроса + ИмяФайлаОтвета = ВыполнитьЗапрос("sms/send", ПараметрыЗапроса); + Если ПустаяСтрока(ИмяФайлаОтвета) Тогда + Результат.ОписаниеОшибки = Результат.ОписаниеОшибки + НСтр("ru = 'Соединение не установлено'"); + Возврат Результат; + КонецЕсли; + + ЧтениеТекста = Новый ЧтениеТекста(ИмяФайлаОтвета); + ОтветСервера = ЧтениеТекста.ПрочитатьСтроку(); + Если ОтветСервера = "100" Тогда + Для Каждого НомерПолучателя Из СтрРазделить(СтрокаПолучателей, ",", Ложь) Цикл + ИдентификаторСообщения = ЧтениеТекста.ПрочитатьСтроку(); + Если ИдентификаторСообщения = Неопределено Тогда + Результат.ОписаниеОшибки = НСтр("ru = 'Ответ сервера не распознан'"); + Прервать; + КонецЕсли; + + Если Не ПустаяСтрока(НомерПолучателя) Тогда + ОтправленноеСообщение = Новый Структура("НомерПолучателя,ИдентификаторСообщения", + НомерПолучателя,ИдентификаторСообщения); + Результат.ОтправленныеСообщения.Добавить(ОтправленноеСообщение); + КонецЕсли; + КонецЦикла; + Иначе + Результат.ОписаниеОшибки = ОписаниеОшибкиОтправки(ОтветСервера); + КонецЕсли; + ЧтениеТекста.Закрыть(); + УдалитьФайлы(ИмяФайлаОтвета); + + Возврат Результат; + +КонецФункции + +// Возвращает текстовое представление статуса доставки сообщения. +// +// Параметры: +// ИдентификаторСообщения - Строка - идентификатор, присвоенный sms при отправке; +// НастройкиОтправкиSMS - Структура - см. ОтправкаSMSПовтИсп.НастройкиОтправкиSMS; +// +// Возвращаемое значение: +// Строка - статус доставки. См. описание функции ОтправкаSMS.СтатусДоставки. +Функция СтатусДоставки(ИдентификаторСообщения, НастройкиОтправкиSMS) Экспорт + + Логин = НастройкиОтправкиSMS.Логин; + Пароль = НастройкиОтправкиSMS.Пароль; + + // Получение токена. + ИмяФайлаОтвета = ВыполнитьЗапрос("auth/get_token", Новый Структура); + ЧтениеТекста = Новый ЧтениеТекста(ИмяФайлаОтвета); + Токен = ЧтениеТекста.Прочитать(); + ЧтениеТекста.Закрыть(); + + // Подготовка передачи пароля. + ХешированиеДанных = Новый ХешированиеДанных(ХешФункция.MD5); + ХешированиеДанных.Добавить(КодироватьСтроку(Пароль, СпособКодированияСтроки.КодировкаURL)+Токен); + КодАвторизации = НРег(СтрЗаменить(ХешированиеДанных.ХешСумма, " ", "")); + + // Подготовка параметров запроса. + ПараметрыЗапроса = Новый Структура; + ПараметрыЗапроса.Вставить("login", Логин); + ПараметрыЗапроса.Вставить("token", Токен); + ПараметрыЗапроса.Вставить("sig", КодАвторизации); + ПараметрыЗапроса.Вставить("id", ИдентификаторСообщения); + + // отправка запроса + ИмяФайлаОтвета = ВыполнитьЗапрос("sms/status", ПараметрыЗапроса); + Если ПустаяСтрока(ИмяФайлаОтвета) Тогда + Возврат "Ошибка"; + КонецЕсли; + + ЧтениеТекста = Новый ЧтениеТекста(ИмяФайлаОтвета); + КодСостояния = ЧтениеТекста.ПрочитатьСтроку(); + ЧтениеТекста.Закрыть(); + УдалитьФайлы(ИмяФайлаОтвета); + + Результат = СтатусДоставкиSMS(КодСостояния); + Если Результат = "Ошибка" Тогда + ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр( + "ru = 'Не удалось получить статус доставки SMS (id: ""%3""): + |%1 (код ошибки: %2)'"), ОписаниеОшибкиПолученияСтатуса(КодСостояния), КодСостояния, ИдентификаторСообщения); + ЗаписьЖурналаРегистрации(НСтр("ru = 'Отправка SMS'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, , , ОписаниеОшибки); + КонецЕсли; + + Возврат Результат; + +КонецФункции + +Функция СтатусДоставкиSMS(КодСостояния) + СоответствиеСтатусов = Новый Соответствие; + СоответствиеСтатусов.Вставить("-1", "НеОтправлялось"); + СоответствиеСтатусов.Вставить("100", "НеОтправлялось"); + СоответствиеСтатусов.Вставить("101", "Отправляется"); + СоответствиеСтатусов.Вставить("102", "Отправлено"); + СоответствиеСтатусов.Вставить("103", "Доставлено"); + СоответствиеСтатусов.Вставить("104", "НеДоставлено"); + СоответствиеСтатусов.Вставить("105", "НеДоставлено"); + СоответствиеСтатусов.Вставить("106", "НеДоставлено"); + СоответствиеСтатусов.Вставить("107", "НеДоставлено"); + СоответствиеСтатусов.Вставить("108", "НеДоставлено"); + + Результат = СоответствиеСтатусов[НРег(КодСостояния)]; + Возврат ?(Результат = Неопределено, "Ошибка", Результат); +КонецФункции + +Функция ОписанияОшибок() + ОписанияОшибок = Новый Соответствие; + ОписанияОшибок.Вставить("200", НСтр("ru = 'Авторизация не выполнена: неверный api_id.'")); + ОписанияОшибок.Вставить("201", НСтр("ru = 'Не достаточно средств на лицевом счету.'")); + ОписанияОшибок.Вставить("202", НСтр("ru = 'Неправильно указан получатель.'")); + ОписанияОшибок.Вставить("203", НСтр("ru = 'Нет текста сообщения.'")); + ОписанияОшибок.Вставить("204", НСтр("ru = 'Имя отправителя не согласовано с провайдером (SMS.RU).'")); + ОписанияОшибок.Вставить("205", НСтр("ru = 'Сообщение слишком длинное (превышает 8 SMS).'")); + ОписанияОшибок.Вставить("206", НСтр("ru = 'Достигнут дневной лимит на отправку сообщений.'")); + ОписанияОшибок.Вставить("207", НСтр("ru = 'На этот номер (или один из номеров) нельзя отправлять сообщения, либо указано более 100 номеров в списке получателей'")); + ОписанияОшибок.Вставить("208", НСтр("ru = 'Параметр time указан неправильно.'")); + ОписанияОшибок.Вставить("209", НСтр("ru = 'Номер получателя (или один из номеров) в стоп-листе (см. в личном кабинете на сайте).'")); + ОписанияОшибок.Вставить("210", НСтр("ru = 'Используется GET, где необходимо использовать POST.'")); + ОписанияОшибок.Вставить("211", НСтр("ru = 'Метод не найден.'")); + ОписанияОшибок.Вставить("212", НСтр("ru = 'Неверная кодировка текста сообщения (необходимо использовать UTF-8).'")); + ОписанияОшибок.Вставить("220", НСтр("ru = 'Сервис временно недоступен.'")); + ОписанияОшибок.Вставить("230", НСтр("ru = 'Сообщение не принято к отправке: достигнут дневной лимит сообщений на один номер (60 шт).'")); + ОписанияОшибок.Вставить("300", НСтр("ru = 'Авторизация не выполнена: token устарел (истек срок действия, либо изменился IP отправителя.'")); + ОписанияОшибок.Вставить("301", НСтр("ru = 'Авторизация не выполнена: логин или пароль указаны неверно.'")); + ОписанияОшибок.Вставить("302", НСтр("ru = 'Авторизация не выполнена: пользователь авторизован, но аккаунт не подтвержден (пользователь не ввел код, присланный в регистрационной SMS.)'")); + + Возврат ОписанияОшибок; +КонецФункции + +Функция ОписаниеОшибкиОтправки(КодОшибки) + ОписанияОшибок = ОписанияОшибок(); + ТекстСообщения = ОписанияОшибок[КодОшибки]; + Если ТекстСообщения = Неопределено Тогда + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Сообщение не отправлено (код ошибки: %1).'"), КодОшибки); + КонецЕсли; + Возврат ТекстСообщения; +КонецФункции + +Функция ОписаниеОшибкиПолученияСтатуса(КодОшибки) + ОписанияОшибок =ОписанияОшибок(); + ТекстСообщения = ОписанияОшибок[КодОшибки]; + Если ТекстСообщения = Неопределено Тогда + ТекстСообщения = НСтр("ru = 'Отказ выполнения операции'"); + КонецЕсли; + Возврат ТекстСообщения; +КонецФункции + +Функция ВыполнитьЗапрос(ИмяМетода, ПараметрыЗапроса) + + Результат = ""; + + ИмяФайлаЗапроса = СформироватьФайлДляPOSTЗапроса(ПараметрыЗапроса); + ИмяФайлаОтвета = ПолучитьИмяВременногоФайла("txt"); + + // формирование заголовка + Заголовок = Новый Соответствие; + Заголовок.Вставить("Content-Type", "application/x-www-form-urlencoded"); + Заголовок.Вставить("Content-Length", XMLСтрока(РазмерФайла(ИмяФайлаЗапроса))); + + // Отправка запроса и получение ответа. + Попытка + Соединение = Новый HTTPСоединение("sms.ru", , , , ПолучениеФайловИзИнтернетаКлиентСервер.ПолучитьПрокси("http"), 60); + Соединение.ОтправитьДляОбработки(ИмяФайлаЗапроса, "/" + ИмяМетода, ИмяФайлаОтвета, Заголовок); + Результат = ИмяФайлаОтвета; + Исключение + ЗаписьЖурналаРегистрации( + НСтр("ru = 'Отправка SMS'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, + , + , + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + КонецПопытки; + + УдалитьФайлы(ИмяФайлаЗапроса); + + Возврат Результат; + +КонецФункции + +Функция СформироватьФайлДляPOSTЗапроса(ПараметрыЗапроса) + СтрокаЗапроса = ""; + Для Каждого Параметр Из ПараметрыЗапроса Цикл + Если Не ПустаяСтрока(СтрокаЗапроса) Тогда + СтрокаЗапроса = СтрокаЗапроса + "&"; + КонецЕсли; + СтрокаЗапроса = СтрокаЗапроса + Параметр.Ключ + "=" + КодироватьСтроку(Параметр.Значение, СпособКодированияСтроки.КодировкаURL); + КонецЦикла; + + ИмяФайлаЗапроса = ПолучитьИмяВременногоФайла("txt"); + + ФайлЗапроса = Новый ЗаписьТекста(ИмяФайлаЗапроса, КодировкаТекста.ANSI); + ФайлЗапроса.Записать(СтрокаЗапроса); + ФайлЗапроса.Закрыть(); + + Возврат ИмяФайлаЗапроса; +КонецФункции + +Функция РазмерФайла(ИмяФайла) + Файл = Новый Файл(ИмяФайла); + Возврат Файл.Размер(); +КонецФункции + +Функция МассивПолучателейСтрокой(Массив) + Получатели = Новый Массив; + ОбщегоНазначенияКлиентСервер.ДополнитьМассив(Получатели, Массив, Истина); + + Результат = ""; + Для Каждого Получатель Из Получатели Цикл + Номер = ФорматироватьНомер(Получатель); + Если НЕ ПустаяСтрока(Номер) Тогда + Если Не ПустаяСтрока(Результат) Тогда + Результат = Результат + ","; + КонецЕсли; + Результат = Результат + Номер; + КонецЕсли; + КонецЦикла; + Возврат Результат; +КонецФункции + +Функция ФорматироватьНомер(Номер) + Результат = ""; + ДопустимыеСимволы = "+1234567890"; + Для Позиция = 1 По СтрДлина(Номер) Цикл + Символ = Сред(Номер,Позиция,1); + Если СтрНайти(ДопустимыеСимволы, Символ) > 0 Тогда + Результат = Результат + Символ; + КонецЕсли; + КонецЦикла; + Возврат Результат; +КонецФункции + +// Возвращает список разрешений для отправки SMS с использованием всех доступных провайдеров. +// +// Возвращаемое значение: +// Массив. +// +Функция Разрешения() Экспорт + + Протокол = "HTTP"; + Адрес = "sms.ru"; + Порт = Неопределено; + Описание = НСтр("ru = 'Отправка SMS через ""SMS.RU"".'"); + + Разрешения = Новый Массив; + Разрешения.Добавить( + РаботаВБезопасномРежиме.РазрешениеНаИспользованиеИнтернетРесурса(Протокол, Адрес, Порт, Описание)); + + Возврат Разрешения; +КонецФункции + +#КонецОбласти + diff --git a/SSL/src/CommonModules/ОтправкаSMSЧерезSMSRU/ОтправкаSMSЧерезSMSRU.mdo b/SSL/src/CommonModules/ОтправкаSMSЧерезSMSRU/ОтправкаSMSЧерезSMSRU.mdo new file mode 100644 index 000000000..ddca3c06c --- /dev/null +++ b/SSL/src/CommonModules/ОтправкаSMSЧерезSMSRU/ОтправкаSMSЧерезSMSRU.mdo @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="9b7b6d0e-68d6-4a73-837c-2a6fd456b236"> + <name>ОтправкаSMSЧерезSMSRU</name> + <synonym> + <key>ru</key> + <value>Отправка SMS через SMS.RU</value> + </synonym> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ОтправкаSMSЧерезSMSЦЕНТР/Module.bsl b/SSL/src/CommonModules/ОтправкаSMSЧерезSMSЦЕНТР/Module.bsl new file mode 100644 index 000000000..8ed64ef90 --- /dev/null +++ b/SSL/src/CommonModules/ОтправкаSMSЧерезSMSЦЕНТР/Module.bsl @@ -0,0 +1,307 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Отправка SMS" +// +//////////////////////////////////////////////////////////////////////////////// + +#Область СлужебныеПроцедурыИФункции + +// Отправляет SMS через SMS-ЦЕНТР. +// +// Параметры: +// НомераПолучателей - Массив - номера получателей в формате +7ХХХХХХХХХХ; +// Текст - Строка - текст сообщения, длиной не более 480 символов; +// ИмяОтправителя - Строка - имя отправителя, которое будет отображаться вместо номера входящего SMS; +// Логин - Строка - логин пользователя услуги отправки sms; +// Пароль - Строка - пароль пользователя услуги отправки sms. +// +// Возвращаемое значение: +// Структура: ОтправленныеСообщения - Массив структур: НомерОтправителя. +// ИдентификаторСообщения. +// ОписаниеОшибки - Строка - пользовательское представление ошибки, если пустая строка, +// то ошибки нет. +Функция ОтправитьSMS(НомераПолучателей, Текст, ИмяОтправителя, Логин, Пароль) Экспорт + + Результат = Новый Структура("ОтправленныеСообщения,ОписаниеОшибки", Новый Массив, ""); + + // Подготовка строки получателей. + СтрокаПолучателей = МассивПолучателейСтрокой(НомераПолучателей); + + // Проверка на заполнение обязательных параметров. + Если ПустаяСтрока(СтрокаПолучателей) Или ПустаяСтрока(Текст) Тогда + Результат.ОписаниеОшибки = НСтр("ru = 'Неверные параметры сообщения'"); + Возврат Результат; + КонецЕсли; + + // Подготовка передачи пароля. + ХешированиеДанных = Новый ХешированиеДанных(ХешФункция.MD5); + ХешированиеДанных.Добавить(Пароль); + КодАвторизации = НРег(СтрЗаменить(ХешированиеДанных.ХешСумма, " ", "")); + + // Подготовка параметров запроса. + ПараметрыЗапроса = Новый Структура; + ПараметрыЗапроса.Вставить("login", Логин); + ПараметрыЗапроса.Вставить("psw", КодАвторизации); + + ПараметрыЗапроса.Вставить("mes", Текст); + ПараметрыЗапроса.Вставить("phones", СтрокаПолучателей); + ПараметрыЗапроса.Вставить("sender", ИмяОтправителя); + ПараметрыЗапроса.Вставить("fmt", 3); // Ответ в формате JSON. + ПараметрыЗапроса.Вставить("op", 1); // Выводить информацию по каждому номеру отдельно. + ПараметрыЗапроса.Вставить("charset", "utf-8"); + + // отправка запроса + ИмяФайлаОтвета = ВыполнитьЗапрос("send.php", ПараметрыЗапроса); + Если ПустаяСтрока(ИмяФайлаОтвета) Тогда + Результат.ОписаниеОшибки = Результат.ОписаниеОшибки + НСтр("ru = 'Соединение не установлено'"); + Возврат Результат; + КонецЕсли; + + ЧтениеJSON = Новый ЧтениеJSON; + ЧтениеJSON.ОткрытьФайл(ИмяФайлаОтвета); + ОтветСервера = ПрочитатьJSON(ЧтениеJSON); + ЧтениеJSON.Закрыть(); + + Если ОтветСервера.Свойство("error") Тогда + Результат.ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр( + "ru = 'Не удалось отправить SMS: + |%1 (код ошибки: %2)'"), ОписаниеОшибкиОтправки(ОтветСервера["error_code"]), ОтветСервера["error_code"]); + + ЗаписьЖурналаРегистрации(НСтр("ru = 'Отправка SMS'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, , , Результат.ОписаниеОшибки); + Иначе + ИдентификаторСообщения = ОтветСервера["id"]; + Для Каждого СведенияОбОтправке Из ОтветСервера["phones"] Цикл + НомерПолучателя = ФорматироватьНомер(СведенияОбОтправке["phone"]); + Если СведенияОбОтправке.Свойство("status") И ЗначениеЗаполнено(СведенияОбОтправке["status"]) Тогда + Продолжить; + КонецЕсли; + ОтправленноеСообщение = Новый Структура("НомерПолучателя,ИдентификаторСообщения", НомерПолучателя, + "" + НомерПолучателя + "/" + Формат(ИдентификаторСообщения, "ЧГ=0")); + Результат.ОтправленныеСообщения.Добавить(ОтправленноеСообщение); + КонецЦикла; + КонецЕсли; + УдалитьФайлы(ИмяФайлаОтвета); + + Возврат Результат; + +КонецФункции + +// Возвращает текстовое представление статуса доставки сообщения. +// +// Параметры: +// ИдентификаторСообщения - Строка - идентификатор, присвоенный sms при отправке; +// НастройкиОтправкиSMS - Структура - см. ОтправкаSMSПовтИсп.НастройкиОтправкиSMS; +// +// Возвращаемое значение: +// Строка - статус доставки. См. описание функции ОтправкаSMS.СтатусДоставки. +Функция СтатусДоставки(ИдентификаторСообщения, НастройкиОтправкиSMS) Экспорт + Логин = НастройкиОтправкиSMS.Логин; + Пароль = НастройкиОтправкиSMS.Пароль; + + ЧастиИдентификатора = СтрРазделить(ИдентификаторСообщения, "/", Истина); + + // Подготовка передачи пароля. + ХешированиеДанных = Новый ХешированиеДанных(ХешФункция.MD5); + ХешированиеДанных.Добавить(Пароль); + КодАвторизации = НРег(СтрЗаменить(ХешированиеДанных.ХешСумма, " ", "")); + + // Подготовка параметров запроса. + ПараметрыЗапроса = Новый Структура; + ПараметрыЗапроса.Вставить("login", Логин); + ПараметрыЗапроса.Вставить("psw", КодАвторизации); + ПараметрыЗапроса.Вставить("phone", ЧастиИдентификатора[0]); + ПараметрыЗапроса.Вставить("id", Число(ЧастиИдентификатора[1])); + ПараметрыЗапроса.Вставить("fmt", 3); + + // отправка запроса + ИмяФайлаОтвета = ВыполнитьЗапрос("status.php", ПараметрыЗапроса); + Если ПустаяСтрока(ИмяФайлаОтвета) Тогда + Возврат "Ошибка"; + КонецЕсли; + + ЧтениеJSON = Новый ЧтениеJSON; + ЧтениеJSON.ОткрытьФайл(ИмяФайлаОтвета); + ОтветСервера = ПрочитатьJSON(ЧтениеJSON); + ЧтениеJSON.Закрыть(); + УдалитьФайлы(ИмяФайлаОтвета); + + Если ОтветСервера.Свойство("error") Тогда + ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр( + "ru = 'Не удалось получить статус доставки SMS (id: ""%3""): + |%1 (код ошибки: %2)'"), ОписаниеОшибкиПолученияСтатуса(ОтветСервера["error_code"]), ОтветСервера["error_code"], ИдентификаторСообщения); + ЗаписьЖурналаРегистрации(НСтр("ru = 'Отправка SMS'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, , , ОписаниеОшибки); + Возврат "Ошибка"; + КонецЕсли; + + Возврат СтатусДоставкиSMS(ОтветСервера["status"]); + +КонецФункции + +Функция СтатусДоставкиSMS(КодСостояния) + СоответствиеСтатусов = Новый Соответствие; + СоответствиеСтатусов.Вставить(-3, "НеОтправлялось"); + СоответствиеСтатусов.Вставить(-1, "Отправляется"); + СоответствиеСтатусов.Вставить(0, "Отправлено"); + СоответствиеСтатусов.Вставить(1, "Доставлено"); + СоответствиеСтатусов.Вставить(3, "НеДоставлено"); + СоответствиеСтатусов.Вставить(20, "НеДоставлено"); + СоответствиеСтатусов.Вставить(22, "НеОтправлено"); + СоответствиеСтатусов.Вставить(23, "НеОтправлено"); + СоответствиеСтатусов.Вставить(24, "НеОтправлено"); + СоответствиеСтатусов.Вставить(25, "НеОтправлено"); + + Результат = СоответствиеСтатусов[КодСостояния]; + Возврат ?(Результат = Неопределено, "Ошибка", Результат); +КонецФункции + +Функция ОписаниеОшибкиОтправки(КодОшибки) + ОписанияОшибок = Новый Соответствие; + ОписанияОшибок.Вставить(1, НСтр("ru = 'Ошибка в параметрах.'")); + ОписанияОшибок.Вставить(2, НСтр("ru = 'Неверный логин или пароль.'")); + ОписанияОшибок.Вставить(3, НСтр("ru = 'Недостаточно средств на счете.'")); + ОписанияОшибок.Вставить(4, НСтр("ru = 'IP-адрес временно заблокирован из-за частых ошибок в запросах.Подробнее см. http://smsc.ru/faq/99'")); + ОписанияОшибок.Вставить(5, НСтр("ru = 'Неверный формат даты.'")); + ОписанияОшибок.Вставить(6, НСтр("ru = 'Сообщение запрещено (по тексту или по имени отправителя).'")); + ОписанияОшибок.Вставить(7, НСтр("ru = 'Неверный формат номера телефона.'")); + ОписанияОшибок.Вставить(8, НСтр("ru = 'Сообщение на указанный номер не может быть доставлено.'")); + ОписанияОшибок.Вставить(9, НСтр("ru = 'Отправка более одного одинакового запроса на передачу SMS-сообщения в течение минуты.'")); + + ТекстСообщения = ОписанияОшибок[КодОшибки]; + Если ТекстСообщения = Неопределено Тогда + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Сообщение не отправлено (код ошибки: %1).'"), КодОшибки); + КонецЕсли; + Возврат ТекстСообщения; +КонецФункции + +Функция ОписаниеОшибкиПолученияСтатуса(КодОшибки) + ОписанияОшибок = Новый Соответствие; + ОписанияОшибок.Вставить(1, НСтр("ru = 'Ошибка в параметрах.'")); + ОписанияОшибок.Вставить(2, НСтр("ru = 'Неверный логин или пароль.'")); + ОписанияОшибок.Вставить(5, НСтр("ru = 'Ошибка удаления сообщения.'")); + ОписанияОшибок.Вставить(4, НСтр("ru = 'IP-адрес временно заблокирован из-за частых ошибок в запросах. Подробнее см. http://smsc.ru/faq/99'")); + ОписанияОшибок.Вставить(9, НСтр("ru = 'Отправка более пяти запросов на получения статуса одного и того же сообщения в течение минуты.'")); + + ТекстСообщения = ОписанияОшибок[КодОшибки]; + Если ТекстСообщения = Неопределено Тогда + ТекстСообщения = НСтр("ru = 'Отказ выполнения операции'"); + КонецЕсли; + Возврат ТекстСообщения; +КонецФункции + +Функция ВыполнитьЗапрос(ИмяМетода, ПараметрыЗапроса) + + Результат = ""; + + ИмяФайлаЗапроса = СформироватьФайлДляPOSTЗапроса(ПараметрыЗапроса); + ИмяФайлаОтвета = ПолучитьИмяВременногоФайла("txt"); + + // формирование заголовка + Заголовок = Новый Соответствие; + Заголовок.Вставить("Content-Type", "application/x-www-form-urlencoded"); + Заголовок.Вставить("Content-Length", XMLСтрока(РазмерФайла(ИмяФайлаЗапроса))); + + // Отправка запроса и получение ответа. + Попытка + Соединение = Новый HTTPСоединение("smsc.ru", , , , ПолучениеФайловИзИнтернетаКлиентСервер.ПолучитьПрокси("http"), 60); + Соединение.ОтправитьДляОбработки(ИмяФайлаЗапроса, "/sys/" + ИмяМетода, ИмяФайлаОтвета, Заголовок); + Результат = ИмяФайлаОтвета; + Исключение + ЗаписьЖурналаРегистрации( + НСтр("ru = 'Отправка SMS'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, + , + , + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + КонецПопытки; + + УдалитьФайлы(ИмяФайлаЗапроса); + + Возврат Результат; + +КонецФункции + +Функция СформироватьФайлДляPOSTЗапроса(ПараметрыЗапроса) + СтрокаЗапроса = ""; + Для Каждого Параметр Из ПараметрыЗапроса Цикл + Если Не ПустаяСтрока(СтрокаЗапроса) Тогда + СтрокаЗапроса = СтрокаЗапроса + "&"; + КонецЕсли; + СтрокаЗапроса = СтрокаЗапроса + Параметр.Ключ + "=" + КодироватьСтроку(Параметр.Значение, СпособКодированияСтроки.КодировкаURL); + КонецЦикла; + + ИмяФайлаЗапроса = ПолучитьИмяВременногоФайла("txt"); + + ФайлЗапроса = Новый ЗаписьТекста(ИмяФайлаЗапроса, КодировкаТекста.ANSI); + ФайлЗапроса.Записать(СтрокаЗапроса); + ФайлЗапроса.Закрыть(); + + Возврат ИмяФайлаЗапроса; +КонецФункции + +Функция РазмерФайла(ИмяФайла) + Файл = Новый Файл(ИмяФайла); + Возврат Файл.Размер(); +КонецФункции + +Функция МассивПолучателейСтрокой(Массив) + Получатели = Новый Массив; + ОбщегоНазначенияКлиентСервер.ДополнитьМассив(Получатели, Массив, Истина); + + Результат = ""; + Для Каждого Получатель Из Получатели Цикл + Номер = ФорматироватьНомер(Получатель); + Если НЕ ПустаяСтрока(Номер) Тогда + Если Не ПустаяСтрока(Результат) Тогда + Результат = Результат + ","; + КонецЕсли; + Результат = Результат + Номер; + КонецЕсли; + КонецЦикла; + Возврат Результат; +КонецФункции + +Функция ФорматироватьНомер(Номер) + Результат = ""; + ДопустимыеСимволы = "+1234567890"; + Для Позиция = 1 По СтрДлина(Номер) Цикл + Символ = Сред(Номер,Позиция,1); + Если СтрНайти(ДопустимыеСимволы, Символ) > 0 Тогда + Результат = Результат + Символ; + КонецЕсли; + КонецЦикла; + + Если СтрДлина(Результат) > 10 Тогда + ПервыйСимвол = Лев(Результат, 1); + Если ПервыйСимвол = "8" Тогда + Результат = "+7" + Сред(Результат, 2); + ИначеЕсли ПервыйСимвол <> "+" Тогда + Результат = "+" + Результат; + КонецЕсли; + КонецЕсли; + + Возврат Результат; +КонецФункции + +// Возвращает список разрешений для отправки SMS с использованием всех доступных провайдеров. +// +// Возвращаемое значение: +// Массив. +// +Функция Разрешения() Экспорт + + Протокол = "HTTP"; + Адрес = "smsc.ru"; + Порт = Неопределено; + Описание = НСтр("ru = 'Отправка SMS через ""SMS-ЦЕНТР"".'"); + + Разрешения = Новый Массив; + Разрешения.Добавить( + РаботаВБезопасномРежиме.РазрешениеНаИспользованиеИнтернетРесурса(Протокол, Адрес, Порт, Описание)); + + Возврат Разрешения; +КонецФункции + +#КонецОбласти + diff --git a/SSL/src/CommonModules/ОтправкаSMSЧерезSMSЦЕНТР/ОтправкаSMSЧерезSMSЦЕНТР.mdo b/SSL/src/CommonModules/ОтправкаSMSЧерезSMSЦЕНТР/ОтправкаSMSЧерезSMSЦЕНТР.mdo new file mode 100644 index 000000000..369ef413e --- /dev/null +++ b/SSL/src/CommonModules/ОтправкаSMSЧерезSMSЦЕНТР/ОтправкаSMSЧерезSMSЦЕНТР.mdo @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="7f6222c1-1a50-4565-b66b-bcb430674efc"> + <name>ОтправкаSMSЧерезSMSЦЕНТР</name> + <synonym> + <key>ru</key> + <value>Отправка SMS через SMS-ЦЕНТР</value> + </synonym> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ОтправкаSMSЧерезБилайн/Module.bsl b/SSL/src/CommonModules/ОтправкаSMSЧерезБилайн/Module.bsl index e31fc330a..f916fb785 100644 --- a/SSL/src/CommonModules/ОтправкаSMSЧерезБилайн/Module.bsl +++ b/SSL/src/CommonModules/ОтправкаSMSЧерезБилайн/Module.bsl @@ -5,7 +5,7 @@ #Область СлужебныеПроцедурыИФункции -// Отправляет SMS через веб-сервис МТС, возвращает идентификатор сообщения. +// Отправляет SMS через Билайн. // // Параметры: // НомераПолучателей - Массив - номера получателей в формате +7ХХХХХХХХХХ; @@ -89,13 +89,14 @@ // // Параметры: // ИдентификаторСообщения - Строка - идентификатор, присвоенный sms при отправке; -// Логин - Строка - логин пользователя услуги отправки sms; -// Пароль - Строка - пароль пользователя услуги отправки sms. +// НастройкиОтправкиSMS - Структура - см. ОтправкаSMSПовтИсп.НастройкиОтправкиSMS; // // Возвращаемое значение: // Строка - статус доставки. См. описание функции ОтправкаSMS.СтатусДоставки. -Функция СтатусДоставки(ИдентификаторСообщения, Логин, Пароль) Экспорт - +Функция СтатусДоставки(ИдентификаторСообщения, НастройкиОтправкиSMS) Экспорт + Логин = НастройкиОтправкиSMS.Логин; + Пароль = НастройкиОтправкиSMS.Пароль; + // Подготовка параметров запроса. ПараметрыЗапроса = Новый Структура; ПараметрыЗапроса.Вставить("user", Логин); diff --git a/SSL/src/CommonModules/ОтправкаSMSЧерезМТС/Module.bsl b/SSL/src/CommonModules/ОтправкаSMSЧерезМТС/Module.bsl index 0960ea810..d881e3fa9 100644 --- a/SSL/src/CommonModules/ОтправкаSMSЧерезМТС/Module.bsl +++ b/SSL/src/CommonModules/ОтправкаSMSЧерезМТС/Module.bsl @@ -5,7 +5,7 @@ #Область СлужебныеПроцедурыИФункции -// Отправляет SMS через веб-сервис МТС, возвращает идентификатор сообщения. +// Отправляет SMS через МТС. // // Параметры: // НомераПолучателей - Массив - номера получателей в формате +7ХХХХХХХХХХ (строкой); @@ -24,31 +24,48 @@ Пароль = ВычислитьХешСтрокиПоАлгоритмуMD5(Пароль); - ВебСервис = ПодключитьВебСервис(); + ИдентификаторыПолучателей = Новый Массив; Для Каждого Элемент Из НомераПолучателей Цикл - НомерПолучателя = ФорматироватьНомер(Элемент); - Если Не ПустаяСтрока(НомерПолучателя) Тогда - Попытка - ИдентификаторСообщения = ВебСервис.SendMessage(НомерПолучателя, Лев(Текст, 1000), ИмяОтправителя, Логин, Пароль); - Результат.ОтправленныеСообщения.Добавить(Новый Структура("НомерПолучателя,ИдентификаторСообщения", - "+" + НомерПолучателя, Формат(ИдентификаторСообщения, "ЧГ="))); - Исключение - ЗаписьЖурналаРегистрации( - НСтр("ru = 'Отправка SMS'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), - УровеньЖурналаРегистрации.Ошибка, - , - , - ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - Результат.ОписаниеОшибки = Результат.ОписаниеОшибки - + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'SMS на номер %1 не отправлено'"), Элемент) - + ": " + КраткоеПредставлениеОшибки(ИнформацияОбОшибке()) - + Символы.ПС; - КонецПопытки; + ИдентификаторПолучателя = ФорматироватьНомер(Элемент); + Если ИдентификаторыПолучателей.Найти(ИдентификаторПолучателя) = Неопределено Тогда + ИдентификаторыПолучателей.Добавить(ИдентификаторПолучателя); КонецЕсли; КонецЦикла; - Результат.ОписаниеОшибки = СокрП(Результат.ОписаниеОшибки); + ВебСервис = ПодключитьВебСервис(); + ТипArrayOfString = ВебСервис.ФабрикаXDTO.Пакеты.Получить("http://mcommunicator.ru/M2M").Получить("ArrayOfString"); + ArrayOfString = ВебСервис.ФабрикаXDTO.Создать(ТипArrayOfString); + + Для Каждого ИдентификаторПолучателя Из ИдентификаторыПолучателей Цикл + ArrayOfString.string.Добавить(ИдентификаторПолучателя); + КонецЦикла; + + Если ИдентификаторыПолучателей.Количество() > 0 Тогда + ОтветПолучен = Ложь; + Попытка + ArrayOfSendMessageIDs = ВебСервис.SendMessages(ArrayOfString, Лев(Текст, 1000), ИмяОтправителя, Логин, Пароль); + ОтветПолучен = Истина; + Исключение + ЗаписьЖурналаРегистрации( + НСтр("ru = 'Отправка SMS'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, + , + , + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + Результат.ОписаниеОшибки = НСтр("ru = 'Не удалось отправить SMS'") + + ": " + КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); + КонецПопытки; + + Если ОтветПолучен Тогда + Для Каждого SendMessageID Из ArrayOfSendMessageIDs.SendMessageIDs Цикл + НомерПолучателя = SendMessageID.Msid; + ИдентификаторСообщения = SendMessageID.MessageID; + Результат.ОтправленныеСообщения.Добавить(Новый Структура("НомерПолучателя,ИдентификаторСообщения", + "+" + НомерПолучателя, Формат(ИдентификаторСообщения, "ЧГ="))); + КонецЦикла; + КонецЕсли; + КонецЕсли; Возврат Результат; КонецФункции @@ -57,15 +74,14 @@ // // Параметры: // ИдентификаторСообщения - Строка - идентификатор, присвоенный sms при отправке; -// Логин - Строка - логин пользователя услуги отправки sms; -// Пароль - Строка - пароль пользователя услуги отправки sms. +// НастройкиОтправкиSMS - Структура - см. ОтправкаSMSПовтИсп.НастройкиОтправкиSMS; // // Возвращаемое значение: // Строка - статус доставки. См. описание функции ОтправкаSMS.СтатусДоставки. -Функция СтатусДоставки(ИдентификаторСообщения, Логин, Знач Пароль) Экспорт - Пароль = ВычислитьХешСтрокиПоАлгоритмуMD5(Пароль); +Функция СтатусДоставки(ИдентификаторСообщения, НастройкиОтправкиSMS) Экспорт + Логин = НастройкиОтправкиSMS.Логин; + Пароль = ВычислитьХешСтрокиПоАлгоритмуMD5(НастройкиОтправкиSMS.Пароль); ВебСервис = ПодключитьВебСервис(); - Попытка ArrayOfDeliveryInfo = ВебСервис.GetMessageStatus(ИдентификаторСообщения, Логин, Пароль); Исключение @@ -73,11 +89,9 @@ УровеньЖурналаРегистрации.Ошибка, , , ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); Возврат "Ошибка"; КонецПопытки; - Для Каждого DeliveryInfo Из ArrayOfDeliveryInfo.DeliveryInfo Цикл Возврат СтатусДоставкиSMS(DeliveryInfo.DeliveryStatus); КонецЦикла; - Возврат "Ошибка"; КонецФункции @@ -107,15 +121,16 @@ КонецФункции Функция ПодключитьВебСервис() - Возврат ОбщегоНазначения.WSПрокси( - "http://www.mcommunicator.ru/m2m/m2m_api.asmx?WSDL", - "http://mcommunicator.ru/M2M", - "MTS_x0020_Communicator_x0020_M2M_x0020_XML_x0020_API", - "MTS_x0020_Communicator_x0020_M2M_x0020_XML_x0020_APISoap12", - "", - "", - 60, - Ложь); + + ПараметрыПодключения = ОбщегоНазначения.ПараметрыПодключенияWSПрокси(); + ПараметрыПодключения.АдресWSDL = "http://www.mcommunicator.ru/m2m/m2m_api.asmx?WSDL"; + ПараметрыПодключения.URIПространстваИмен = "http://mcommunicator.ru/M2M"; + ПараметрыПодключения.ИмяСервиса = "MTS_x0020_Communicator_x0020_M2M_x0020_XML_x0020_API"; + ПараметрыПодключения.ИмяТочкиПодключения = "MTS_x0020_Communicator_x0020_M2M_x0020_XML_x0020_APISoap12"; + ПараметрыПодключения.Таймаут = 60; + + Возврат ОбщегоНазначения.СоздатьWSПрокси(ПараметрыПодключения); + КонецФункции Функция ВычислитьХешСтрокиПоАлгоритмуMD5(Знач Строка) diff --git a/SSL/src/CommonModules/ОтправкаSMSЧерезСМСУслуги/Module.bsl b/SSL/src/CommonModules/ОтправкаSMSЧерезСМСУслуги/Module.bsl new file mode 100644 index 000000000..4da2d3d28 --- /dev/null +++ b/SSL/src/CommonModules/ОтправкаSMSЧерезСМСУслуги/Module.bsl @@ -0,0 +1,263 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Отправка SMS" +// +//////////////////////////////////////////////////////////////////////////////// + +#Область СлужебныеПроцедурыИФункции + +// Отправляет SMS через СМС-Услуги. +// +// Параметры: +// НомераПолучателей - Массив - номера получателей в формате +7ХХХХХХХХХХ; +// Текст - Строка - текст сообщения, длиной не более 480 символов; +// ИмяОтправителя - Строка - имя отправителя, которое будет отображаться вместо номера входящего SMS; +// Логин - Строка - логин пользователя услуги отправки sms; +// Пароль - Строка - пароль пользователя услуги отправки sms. +// +// Возвращаемое значение: +// Структура: ОтправленныеСообщения - Массив структур: НомерОтправителя. +// ИдентификаторСообщения. +// ОписаниеОшибки - Строка - пользовательское представление ошибки, если пустая строка, +// то ошибки нет. +Функция ОтправитьSMS(НомераПолучателей, Текст, ИмяОтправителя, Логин, Пароль) Экспорт + + Результат = Новый Структура("ОтправленныеСообщения,ОписаниеОшибки", Новый Массив, ""); + + // Подготовка получателей. + Получатели = Новый Массив; + Для Каждого Элемент Из НомераПолучателей Цикл + Получатель = ФорматироватьНомерДляОтправки(Элемент); + Если Получатели.Найти(Получатель) = Неопределено Тогда + Получатели.Добавить(Получатель); + КонецЕсли; + КонецЦикла; + + // Проверка на заполнение обязательных параметров. + Если НомераПолучателей.Количество() = 0 Или ПустаяСтрока(Текст) Тогда + Результат.ОписаниеОшибки = НСтр("ru = 'Неверные параметры сообщения'"); + Возврат Результат; + КонецЕсли; + + // Подготовка параметров запроса. + ПараметрыЗапроса = Новый Структура; + ПараметрыЗапроса.Вставить("login", Логин); + ПараметрыЗапроса.Вставить("password", Пароль); + ПараметрыЗапроса.Вставить("action", "send"); + ПараметрыЗапроса.Вставить("text", Текст); + ПараметрыЗапроса.Вставить("to", Получатели); + ПараметрыЗапроса.Вставить("source", ИмяОтправителя); + + // отправка запроса + ИмяФайлаОтвета = ВыполнитьЗапрос("send.php", ПараметрыЗапроса); + Если ПустаяСтрока(ИмяФайлаОтвета) Тогда + Результат.ОписаниеОшибки = Результат.ОписаниеОшибки + НСтр("ru = 'Соединение не установлено'"); + Возврат Результат; + КонецЕсли; + + ЧтениеXML = Новый ЧтениеXML; + ЧтениеXML.ОткрытьФайл(ИмяФайлаОтвета); + ОтветСервера = Новый Структура("code,descr,smsid"); + ЗаполнитьЗначенияСвойств(ОтветСервера, ФабрикаXDTO.ПрочитатьXML(ЧтениеXML)); + ЧтениеXML.Закрыть(); + УдалитьФайлы(ИмяФайлаОтвета); + + КодРезультата = ОтветСервера.code; + Если КодРезультата = "1" Тогда + ИдентификаторСообщения = ОтветСервера.smsid; + Для Каждого Получатель Из Получатели Цикл + ОтправленноеСообщение = Новый Структура("НомерПолучателя,ИдентификаторСообщения", + ФорматироватьНомерИзРезультатаОтправки(Получатель), Получатель + "/" + ИдентификаторСообщения); + Результат.ОтправленныеСообщения.Добавить(ОтправленноеСообщение); + КонецЦикла; + Иначе + Результат.ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр( + "ru = 'Не удалось отправить SMS: + |%1 (код ошибки: %2)'"), ОтветСервера.descr, КодРезультата); + ЗаписьЖурналаРегистрации(НСтр("ru = 'Отправка SMS'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, , , Результат.ОписаниеОшибки); + КонецЕсли; + + Возврат Результат; + +КонецФункции + +// Возвращает текстовое представление статуса доставки сообщения. +// +// Параметры: +// ИдентификаторСообщения - Строка - идентификатор, присвоенный sms при отправке; +// НастройкиОтправкиSMS - Структура - см. ОтправкаSMSПовтИсп.НастройкиОтправкиSMS; +// +// Возвращаемое значение: +// Строка - статус доставки. См. описание функции ОтправкаSMS.СтатусДоставки. +Функция СтатусДоставки(ИдентификаторСообщения, НастройкиОтправкиSMS) Экспорт + Логин = НастройкиОтправкиSMS.Логин; + Пароль = НастройкиОтправкиSMS.Пароль; + + Результат = Новый Соответствие; + + // Подготовка параметров запроса. + ПараметрыЗапроса = Новый Структура; + ПараметрыЗапроса.Вставить("login", Логин); + ПараметрыЗапроса.Вставить("password", Пароль); + ПараметрыЗапроса.Вставить("smsid", ИдентификаторСообщения); + + // отправка запроса + ИмяФайлаОтвета = ВыполнитьЗапрос("report.php", ПараметрыЗапроса); + Если ПустаяСтрока(ИмяФайлаОтвета) Тогда + Возврат "Ошибка"; + КонецЕсли; + + ЧтениеXML = Новый ЧтениеXML; + ЧтениеXML.ОткрытьФайл(ИмяФайлаОтвета); + ОтветСервера = Новый Структура("code,descr,detail"); + ЗаполнитьЗначенияСвойств(ОтветСервера, ФабрикаXDTO.ПрочитатьXML(ЧтениеXML)); + ЧтениеXML.Закрыть(); + УдалитьФайлы(ИмяФайлаОтвета); + + КодРезультата = ОтветСервера.code; + Если КодРезультата = "1" Тогда + Для Каждого Статус Из ОтветСервера.detail.Свойства() Цикл + Получатели = ОтветСервера.detail[Статус.Имя].Последовательность(); + Для Индекс = 0 По Получатели.Количество()-1 Цикл + Получатель = Получатели.ПолучитьЗначение(Индекс); + Результат.Вставить(Получатель, СтатусДоставкиSMS(Статус.Имя)); + КонецЦикла; + КонецЦикла; + Иначе + ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр( + "ru = 'Не удалось получить статус доставки SMS (smsid: ""%3""): + |%1 (код ошибки: %2)'"), ОтветСервера.descr, КодРезультата, ИдентификаторСообщения); + ЗаписьЖурналаРегистрации(НСтр("ru = 'Отправка SMS'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, , , ОписаниеОшибки); + Возврат "Ошибка"; + КонецЕсли; + + Возврат Результат; +КонецФункции + +Функция СтатусДоставкиSMS(КодСостояния) + СоответствиеСтатусов = Новый Соответствие; + СоответствиеСтатусов.Вставить("enqueued", "Отправляется"); + СоответствиеСтатусов.Вставить("onModer", "Отправляется"); + СоответствиеСтатусов.Вставить("process", "Отправляется"); + СоответствиеСтатусов.Вставить("waiting", "Отправлено"); + СоответствиеСтатусов.Вставить("delivered", "Доставлено"); + СоответствиеСтатусов.Вставить("notDelivered", "НеДоставлено"); + СоответствиеСтатусов.Вставить("cancel", "НеОтправлено"); + + Результат = СоответствиеСтатусов[КодСостояния]; + Возврат ?(Результат = Неопределено, "НеОтправлялось", Результат); +КонецФункции + +Функция ВыполнитьЗапрос(ИмяМетода, ПараметрыЗапроса) + + Результат = ""; + + ИмяФайлаЗапроса = СформироватьФайлДляPOSTЗапроса(ПараметрыЗапроса); + ИмяФайлаОтвета = ПолучитьИмяВременногоФайла("xml"); + + // формирование заголовка + Заголовок = Новый Соответствие; + Заголовок.Вставить("Content-Type", "application/x-www-form-urlencoded"); + Заголовок.Вставить("Content-Length", XMLСтрока(РазмерФайла(ИмяФайлаЗапроса))); + + // Отправка запроса и получение ответа. + Попытка + Соединение = Новый HTTPСоединение("lcab.sms-uslugi.ru", , , , ПолучениеФайловИзИнтернетаКлиентСервер.ПолучитьПрокси("http"), 60); + Соединение.ОтправитьДляОбработки(ИмяФайлаЗапроса, "/API/XML/" + ИмяМетода, ИмяФайлаОтвета, Заголовок); + Результат = ИмяФайлаОтвета; + Исключение + ЗаписьЖурналаРегистрации( + НСтр("ru = 'Отправка SMS'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, + , + , + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + КонецПопытки; + + УдалитьФайлы(ИмяФайлаЗапроса); + + Возврат Результат; + +КонецФункции + +Функция СформироватьФайлДляPOSTЗапроса(ПараметрыЗапроса) + + ИмяФайлаЗапроса = ПолучитьИмяВременногоФайла("txt"); + + ЗаписьXML = Новый ЗаписьXML; + ЗаписьXML.ОткрытьФайл(ИмяФайлаЗапроса, "utf-8"); + ЗаписьXML.ЗаписатьОбъявлениеXML(); + ЗаписьXML.ЗаписатьНачалоЭлемента("data"); + Для Каждого Параметр Из ПараметрыЗапроса Цикл + Если Параметр.Ключ = "to" Тогда + Для Каждого Номер Из Параметр.Значение Цикл + ЗаписьXML.ЗаписатьНачалоЭлемента(Параметр.Ключ); + ЗаписьXML.ЗаписатьАтрибут("number", Номер); + ЗаписьXML.ЗаписатьКонецЭлемента(); + КонецЦикла; + Иначе + ЗаписьXML.ЗаписатьНачалоЭлемента(Параметр.Ключ); + ЗаписьXML.ЗаписатьТекст(Параметр.Значение); + ЗаписьXML.ЗаписатьКонецЭлемента(); + КонецЕсли; + КонецЦикла; + ЗаписьXML.ЗаписатьКонецЭлемента(); + ЗаписьXML.Закрыть(); + + Возврат ИмяФайлаЗапроса; +КонецФункции + +Функция РазмерФайла(ИмяФайла) + Файл = Новый Файл(ИмяФайла); + Возврат Файл.Размер(); +КонецФункции + +Функция ФорматироватьНомерДляОтправки(Номер) + Результат = ""; + ДопустимыеСимволы = "1234567890"; + Для Позиция = 1 По СтрДлина(Номер) Цикл + Символ = Сред(Номер,Позиция,1); + Если СтрНайти(ДопустимыеСимволы, Символ) > 0 Тогда + Результат = Результат + Символ; + КонецЕсли; + КонецЦикла; + Возврат Результат; +КонецФункции + +Функция ФорматироватьНомерИзРезультатаОтправки(Номер) + Результат = Номер; + + Если СтрДлина(Результат) > 10 Тогда + ПервыйСимвол = Лев(Результат, 1); + Если ПервыйСимвол = "8" Тогда + Результат = "+7" + Сред(Результат, 2); + ИначеЕсли ПервыйСимвол <> "+" Тогда + Результат = "+" + Результат; + КонецЕсли; + КонецЕсли; + + Возврат Результат; +КонецФункции + +// Возвращает список разрешений для отправки SMS с использованием всех доступных провайдеров. +// +// Возвращаемое значение: +// Массив. +// +Функция Разрешения() Экспорт + + Протокол = "HTTP"; + Адрес = "lcab.sms-uslugi.ru"; + Порт = Неопределено; + Описание = НСтр("ru = 'Отправка SMS через ""СМС-Услуги"".'"); + + Разрешения = Новый Массив; + Разрешения.Добавить( + РаботаВБезопасномРежиме.РазрешениеНаИспользованиеИнтернетРесурса(Протокол, Адрес, Порт, Описание)); + + Возврат Разрешения; +КонецФункции + +#КонецОбласти + diff --git a/SSL/src/CommonModules/ОтправкаSMSЧерезСМСУслуги/ОтправкаSMSЧерезСМСУслуги.mdo b/SSL/src/CommonModules/ОтправкаSMSЧерезСМСУслуги/ОтправкаSMSЧерезСМСУслуги.mdo new file mode 100644 index 000000000..390dd743c --- /dev/null +++ b/SSL/src/CommonModules/ОтправкаSMSЧерезСМСУслуги/ОтправкаSMSЧерезСМСУслуги.mdo @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="2fb5650f-a5e5-4db8-a6a7-ca1101b41d3e"> + <name>ОтправкаSMSЧерезСМСУслуги</name> + <synonym> + <key>ru</key> + <value>Отправка SMS через СМС-Услуги</value> + </synonym> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ОтчетыКлиент/Module.bsl b/SSL/src/CommonModules/ОтчетыКлиент/Module.bsl index f56abb59e..febaa4753 100644 --- a/SSL/src/CommonModules/ОтчетыКлиент/Module.bsl +++ b/SSL/src/CommonModules/ОтчетыКлиент/Module.bsl @@ -94,7 +94,7 @@ //////////////////////////////////////////////////////////////////////////////// // Методы работы с СКД из формы отчета. -Функция ПараметрыВыбораОтбора(Форма, Элемент) +Функция ПараметрыВыбораОтбора(Форма, Элемент) Экспорт ИдентификаторЭлемента = Прав(Элемент.Имя, 32); ЭлементКД = Форма.НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); @@ -106,7 +106,7 @@ Возврат Неопределено; КонецЕсли; - Результат = Новый Структура("Представление, ЗначенияДляВыбора, ОграничиватьВыборУказаннымиЗначениями, ОписаниеТипов, ВводСписком"); + Результат = Новый Структура("Представление, ЗначенияДляВыбора, БыстрыйВыбор, ОграничиватьВыборУказаннымиЗначениями, ОписаниеТипов, ВводСписком"); ЗаполнитьЗначенияСвойств(Результат, ДополнительныеНастройки); Если ТипЗнч(ЭлементКД) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда @@ -157,8 +157,7 @@ // Динамические связи от ведущих. Связи = Форма.ОтключаемыеСвязи.НайтиСтроки(Новый Структура("ПодчиненныйИдентификаторВФорме", ИдентификаторЭлемента)); Для Каждого Связь Из Связи Цикл - Если Не ЗначениеЗаполнено(Связь.ВедущийИдентификаторВФорме) - Или Не ЗначениеЗаполнено(Связь.ПодчиненныйИмяПараметра) Тогда + Если Не ЗначениеЗаполнено(Связь.ВедущийИдентификаторВФорме) Тогда Продолжить; КонецЕсли; ВедущийНастройкаКД = Форма.НайтиПользовательскуюНастройкуЭлемента(Связь.ВедущийИдентификаторВФорме); @@ -183,16 +182,37 @@ ТипЗначенияВедущего = ТипЗнч(ЗначениеВедущего); Если Связь.ТипСвязи = "ПоТипу" Тогда - Если УсловиеВедущего <> ВидСравненияКомпоновкиДанных.Равно Тогда + Если УсловиеВедущего <> ВидСравненияКомпоновкиДанных.Равно + И УсловиеВедущего <> ВидСравненияКомпоновкиДанных.ВИерархии Тогда Продолжить; КонецЕсли; - Результат.Вставить("ОграничениеТипа", ТипЗначенияВедущего); - Если Результат.ОписаниеТипов.СодержитТип(ТипЗначенияВедущего) Тогда - Вычитаемые = Результат.ОписаниеТипов.Типы(); - Вычитаемые.Удалить(Вычитаемые.Найти(ТипЗначенияВедущего)); - Результат.ОписаниеТипов = Новый ОписаниеТипов(Результат.ОписаниеТипов, , Вычитаемые); + Если ТипЗнч(Связь.ПодчиненныйИмяПараметра) = Тип("Число") И Связь.ПодчиненныйИмяПараметра > 0 Тогда + ТипСубконто = ВариантыОтчетовВызовСервера.ТипСубконто(ЗначениеВедущего, Связь.ПодчиненныйИмяПараметра); + Если ТипЗнч(ТипСубконто) = Тип("ОписаниеТипов") Тогда + ФильтрПоТипам = ТипСубконто.Типы(); + Иначе + Продолжить; + КонецЕсли; + Иначе + ФильтрПоТипам = Новый Массив; + ФильтрПоТипам.Добавить(ТипЗначенияВедущего); + КонецЕсли; + ВычитаемыеТипы = Результат.ОписаниеТипов.Типы(); + ОписанияТиповПересекаются = Ложь; + Для Каждого ТипКоторыйНадоОставить Из ФильтрПоТипам Цикл + Индекс = ВычитаемыеТипы.Найти(ТипКоторыйНадоОставить); + Если Индекс <> Неопределено Тогда + ВычитаемыеТипы.Удалить(Индекс); + ОписанияТиповПересекаются = Истина; + КонецЕсли; + КонецЦикла; + Если ОписанияТиповПересекаются Тогда + Результат.ОписаниеТипов = Новый ОписаниеТипов(Результат.ОписаниеТипов, , ВычитаемыеТипы); КонецЕсли; ИначеЕсли Связь.ТипСвязи = "ПоМетаданным" Или Связь.ТипСвязи = "ПараметровВыбора" Тогда + Если Не ЗначениеЗаполнено(Связь.ПодчиненныйИмяПараметра) Тогда + Продолжить; + КонецЕсли; Если Связь.ТипСвязи = "ПоМетаданным" И Не Связь.ВедущийТип.СодержитТип(ТипЗначенияВедущего) Тогда Продолжить; КонецЕсли; @@ -457,7 +477,10 @@ #КонецЕсли КонецПроцедуры -Процедура ВыбратьПериод(Форма, ЗначениеИмя, ИдентификаторЭлемента) Экспорт +Процедура ВыбратьПериод(Форма, КнопкаВыбораИмя) Экспорт + ЗначениеИмя = СтрЗаменить(КнопкаВыбораИмя, "_КнопкаВыбора_", "_Значение_"); + ИдентификаторЭлемента = Прав(КнопкаВыбораИмя, 32); + Значение = Форма[ЗначениеИмя]; Контекст = Новый Структура; diff --git a/SSL/src/CommonModules/ОтчетыКлиентСервер/Module.bsl b/SSL/src/CommonModules/ОтчетыКлиентСервер/Module.bsl index 1c53a0f3f..4eab26fd1 100644 --- a/SSL/src/CommonModules/ОтчетыКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/ОтчетыКлиентСервер/Module.bsl @@ -71,7 +71,7 @@ // // КлючСхемы - Строка - // // Идентификатор текущей схемы компоновщика настроек. // // По умолчанию не заполнен (это означает что компоновщик инициализирован на основании основной схемы). -// // Используется для оптимизации, чтобы переинициализировать компоновщик как можно реже). +// // Используется для оптимизации, чтобы переинициализировать компоновщик как можно реже. // // Может не использоваться если переинициализация выполняется безусловно. // // КлючВарианта - Строка, Неопределено - // // Имя предопределенного или уникальный идентификатор пользовательского варианта отчета. @@ -236,7 +236,7 @@ // // данные которых выводятся в отчете. // // // // Пример: -// // ИспользуемыеТаблицы.Добавить(Метаданные.Документы._ДемоЗаказПокупателя.ПолноеИмя()); +// // ИспользуемыеТаблицы.Добавить(Метаданные.Документы.<ИмяДокумента>.ПолноеИмя()); // // // Процедура ПриОпределенииИспользуемыхТаблиц(КлючВарианта, ИспользуемыеТаблицы) Экспорт // // Обработка события. @@ -290,15 +290,7 @@ Настройки.Вставить("Печать", Печать); Настройки.Вставить("События", События); - // Устарели: - // Вместо свойства "ПараметрыПечатиПоУмолчанию" следует использовать свойство "Печать". - Настройки.Вставить("ПараметрыПечатиПоУмолчанию", Печать); - // Вместо свойства "СоответствиеПериодичностиПараметров" следует использовать событие - // ПриНажатииКнопкиВыбораПериода общего модуля ОтчетыКлиентПереопределяемый. - Настройки.Вставить("СоответствиеПериодичностиПараметров", Новый Соответствие); - Возврат Настройки; - КонецФункции #КонецОбласти @@ -573,6 +565,41 @@ Возврат КомпоновщикНастроекКД.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(ПараметрКД); КонецФункции +// Находит параметры и отборы по значению. +// +// Параметры: +// КоллекцияНастроекКД - КомпоновщикНастроекКомпоновкиДанных - Компоновщик настроек. +// Фильтр - Структура - Критерии поиска. +// * Использование - Булево - Использование настройки. +// * Значение - * - Значение настройки. +// Результат - Массив, Неопределено - См. возвращаемое значение. +// +// Возвращаемое значение: +// Массив - Найденные пользовательские настройки. +// +Функция НайтиНастройки(КоллекцияНастроекКД, Фильтр, Результат = Неопределено) Экспорт + Если Результат = Неопределено Тогда + Результат = Новый Массив; + КонецЕсли; + + Для Каждого НастройкаКД Из КоллекцияНастроекКД Цикл + Если ТипЗнч(НастройкаКД) = Тип("ЭлементОтбораКомпоновкиДанных") + И НастройкаКД.Использование = Фильтр.Использование + И НастройкаКД.ПравоеЗначение = Фильтр.Значение Тогда + Результат.Добавить(НастройкаКД); + ИначеЕсли ТипЗнч(НастройкаКД) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") + И НастройкаКД.Использование = Фильтр.Использование + И НастройкаКД.Значение = Фильтр.Значение Тогда + Результат.Добавить(НастройкаКД); + ИначеЕсли ТипЗнч(НастройкаКД) = Тип("ОтборКомпоновкиДанных") + Или ТипЗнч(НастройкаКД) = Тип("ГруппаЭлементовОтбораКомпоновкиДанных") Тогда + НайтиНастройки(НастройкаКД.Элементы, Фильтр, Результат); + КонецЕсли; + КонецЦикла; + + Возврат Результат; +КонецФункции + // Возвращает вид периода. Функция ПолучитьВидПериода(НачалоПериода, КонецПериода, ДоступныеПериоды = Неопределено) Экспорт @@ -641,40 +668,6 @@ КонецФункции -// Устарела. Следует использовать НайтиДоступнуюНастройку(). -Функция ПолучитьДоступноеПоле(ДоступныеПоля, Поле) Экспорт - - Если ТипЗнч(Поле) = Тип("Строка") Тогда - ПолеДоступа = Новый ПолеКомпоновкиДанных(Поле); - ИначеЕсли ТипЗнч(Поле) = Тип("ПолеКомпоновкиДанных") Тогда - ПолеДоступа = Поле; - Иначе - Возврат Неопределено; - КонецЕсли; - - Возврат ДоступныеПоля.НайтиПоле(ПолеДоступа); - -КонецФункции - -// Устарела. Следует использовать НайтиДоступнуюНастройку(). -Функция ПолучитьДоступныйПараметр(ДоступныеПараметры, Параметр) Экспорт - - Если ТипЗнч(ДоступныеПараметры) <> Тип("ДоступныеПараметрыКомпоновкиДанных") Тогда - Возврат Неопределено; - КонецЕсли; - - Если ТипЗнч(Параметр) = Тип("Строка") Тогда - ПараметрДоступа = Новый ПараметрКомпоновкиДанных(Параметр); - ИначеЕсли ТипЗнч(Параметр) = Тип("ПараметрКомпоновкиДанных") Тогда - ПараметрДоступа = Параметр; - Иначе - Возврат Неопределено; - КонецЕсли; - - Возврат ДоступныеПараметры.НайтиПараметр(ПараметрДоступа); - -КонецФункции - #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -957,6 +950,29 @@ Возврат ЭлементКД; КонецФункции +// Загружает новые настройки в компоновщик без сброса пользовательских настроек. +// +// Параметры: +// КомпоновщикНастроекКД - КомпоновщикНастроекКомпоновкиДанных - Куда надо загрузить настройки. +// НастройкиКД - НастройкиКомпоновкиДанных - Загружаемые настройки варианта. +// ПользовательскиеНастройкиКД - ПользовательскиеНастройкиКомпоновкиДанных, Неопределено - Необязательный. +// Загружаемые пользовательские настройки. Если не указан, то пользовательские настройки не загружаются. +// +Функция ЗагрузитьНастройки(КомпоновщикНастроекКД, НастройкиКД, ПользовательскиеНастройкиКД = Неопределено) Экспорт + НастройкиЗагружены = (ТипЗнч(НастройкиКД) = Тип("НастройкиКомпоновкиДанных") И НастройкиКД <> КомпоновщикНастроекКД.Настройки); + Если НастройкиЗагружены Тогда + Если ТипЗнч(ПользовательскиеНастройкиКД) <> Тип("ПользовательскиеНастройкиКомпоновкиДанных") Тогда + ПользовательскиеНастройкиКД = КомпоновщикНастроекКД.ПользовательскиеНастройки; + КонецЕсли; + КомпоновщикНастроекКД.ЗагрузитьНастройки(НастройкиКД); + КонецЕсли; + Если ТипЗнч(ПользовательскиеНастройкиКД) = Тип("ПользовательскиеНастройкиКомпоновкиДанных") + И ПользовательскиеНастройкиКД <> КомпоновщикНастроекКД.ПользовательскиеНастройки Тогда + КомпоновщикНастроекКД.ЗагрузитьПользовательскиеНастройки(ПользовательскиеНастройкиКД); + КонецЕсли; + Возврат НастройкиЗагружены; +КонецФункции + //////////////////////////////////////////////////////////////////////////////// // Локальные служебные процедуры и функции. @@ -1259,6 +1275,9 @@ Представление = ""; Для Каждого ЭлементКД Из НаборСтрокКД Цикл + Если Не ЭлементКД.Использование Тогда + Продолжить; + КонецЕсли; Если ТипЗнч(ЭлементКД) = Тип("ГруппаЭлементовОтбораКомпоновкиДанных") Тогда @@ -1613,9 +1632,9 @@ КонецЕсли; Если ПараметрыКопирования.ЕстьВыбор Тогда - // Выбор (ВыбранныеПоляКомпоновкиДанных) - // Выбор.Элементы (КоллекцияВыбранныхПолейКомпоновкиДанных). + // Выбор (ВыбранныеПоляКомпоновкиДанных). ЗаполнитьЗначенияСвойств(ЧтоЗаполнить.Выбор, ЧемЗаполнить.Выбор, , "ДоступныеПоляВыбора, Элементы"); + // Выбор.Элементы (КоллекцияВыбранныхПолейКомпоновкиДанных). КоллекцияВложенных = ЧемЗаполнить.Выбор.Элементы; Если КоллекцияВложенных.Количество() > 0 Тогда НоваяКоллекцияВложенных = ЧтоЗаполнить.Выбор.Элементы; @@ -1626,9 +1645,9 @@ КонецЕсли; Если ПараметрыКопирования.ЕстьОтбор Тогда - // Отбор (ОтборКомпоновкиДанных) - // Отбор.Элементы (КоллекцияЭлементовОтбораКомпоновкиДанных). + // Отбор (ОтборКомпоновкиДанных). ЗаполнитьЗначенияСвойств(ЧтоЗаполнить.Отбор, ЧемЗаполнить.Отбор, , "ДоступныеПоляОтбора, Элементы"); + // Отбор.Элементы (КоллекцияЭлементовОтбораКомпоновкиДанных). КоллекцияВложенных = ЧемЗаполнить.Отбор.Элементы; Если КоллекцияВложенных.Количество() > 0 Тогда НоваяКоллекцияВложенных = ЧтоЗаполнить.Отбор.Элементы; @@ -1644,7 +1663,7 @@ // ЗначенияПараметровВыводаГруппировкиТаблицыКомпоновкиДанных, // ЗначенияПараметровВыводаГруппировкиДиаграммыКомпоновкиДанных, // ЗначенияПараметровВыводаТаблицыКомпоновкиДанных, - // ЗначенияПараметровВыводаДиаграммыКомпоновкиДанных) + // ЗначенияПараметровВыводаДиаграммыКомпоновкиДанных). // ПараметрыВывода.Элементы (КоллекцияЗначенийПараметровКомпоновкиДанных). КоллекцияВложенных = ЧемЗаполнить.ПараметрыВывода.Элементы; Если КоллекцияВложенных.Количество() > 0 Тогда @@ -1659,7 +1678,7 @@ КонецЕсли; Если ПараметрыКопирования.ЕстьПараметрыДанных Тогда - // ПараметрыДанных (ЗначенияПараметровДанныхКомпоновкиДанных) + // ПараметрыДанных (ЗначенияПараметровДанныхКомпоновкиДанных). // ПараметрыДанных.Элементы (КоллекцияЗначенийПараметровКомпоновкиДанных). КоллекцияВложенных = ЧемЗаполнить.ПараметрыДанных.Элементы; Если КоллекцияВложенных.Количество() > 0 Тогда @@ -1674,7 +1693,7 @@ КонецЕсли; Если ПараметрыКопирования.ЕстьПользовательскиеПоля Тогда - // ПользовательскиеПоля (ПользовательскиеПоляКомпоновкиДанных) + // ПользовательскиеПоля (ПользовательскиеПоляКомпоновкиДанных). // ПользовательскиеПоля.Элементы (КоллекцияПользовательскихПолейКомпоновкиДанных). КоллекцияВложенных = ЧемЗаполнить.ПользовательскиеПоля.Элементы; Если КоллекцияВложенных.Количество() > 0 Тогда @@ -1686,7 +1705,7 @@ КонецЕсли; Если ПараметрыКопирования.ЕстьПоляГруппировки Тогда - // ПоляГруппировки (ПоляГруппировкиКомпоновкиДанных) + // ПоляГруппировки (ПоляГруппировкиКомпоновкиДанных). // ПоляГруппировки.Элементы (КоллекцияПолейГруппировкиКомпоновкиДанных). КоллекцияВложенных = ЧемЗаполнить.ПоляГруппировки.Элементы; Если КоллекцияВложенных.Количество() > 0 Тогда @@ -1698,9 +1717,9 @@ КонецЕсли; Если ПараметрыКопирования.ЕстьПорядок Тогда - // Порядок (ПорядокКомпоновкиДанных) - // Порядок.Элементы (КоллекцияЭлементовПорядкаКомпоновкиДанных). + // Порядок (ПорядокКомпоновкиДанных). ЗаполнитьЗначенияСвойств(ЧтоЗаполнить.Порядок, ЧемЗаполнить.Порядок, , "ДоступныеПоляПорядка, Элементы"); + // Порядок.Элементы (КоллекцияЭлементовПорядкаКомпоновкиДанных). КоллекцияВложенных = ЧемЗаполнить.Порядок.Элементы; Если КоллекцияВложенных.Количество() > 0 Тогда НоваяКоллекцияВложенных = ЧтоЗаполнить.Порядок.Элементы; @@ -1725,9 +1744,9 @@ КонецЕсли; Если ПараметрыКопирования.ЕстьУсловноеОформление Тогда - // УсловноеОформление (УсловноеОформлениеКомпоновкиДанных) - // УсловноеОформление.Элементы (КоллекцияЭлементовУсловногоОформленияКомпоновкиДанных). + // УсловноеОформление (УсловноеОформлениеКомпоновкиДанных). ЗаполнитьЗначенияСвойств(ЧтоЗаполнить.УсловноеОформление, ЧемЗаполнить.УсловноеОформление, , "ДоступныеПоляОтбора, ДоступныеПоляПолей, Элементы"); + // УсловноеОформление.Элементы (КоллекцияЭлементовУсловногоОформленияКомпоновкиДанных). КоллекцияВложенных = ЧемЗаполнить.УсловноеОформление.Элементы; Если КоллекцияВложенных.Количество() > 0 Тогда НоваяКоллекцияВложенных = ЧтоЗаполнить.УсловноеОформление.Элементы; @@ -1794,9 +1813,6 @@ Приемник = ЧтоЗаполнить.Оформление.НайтиЗначениеПараметра(Источник.Параметр); Если Приемник <> Неопределено Тогда ЗаполнитьЗначенияСвойств(Приемник, Источник, , "Родитель"); - Если Источник.ЗначенияВложенныхПараметров = Неопределено Тогда - Продолжить; - КонецЕсли; Для Каждого ВложенныйИсточник Из Источник.ЗначенияВложенныхПараметров Цикл ВложенныйПриемник = ЧтоЗаполнить.Оформление.НайтиЗначениеПараметра(Источник.Параметр); Если ВложенныйПриемник <> Неопределено Тогда @@ -1879,6 +1895,7 @@ КонецЕсли; ЗаменятьСуществующие = Истина; + ЗаменятьПредставление = ЗаменятьСуществующие И ДобавлятьНовые; Результат = Новый Структура; Результат.Вставить("Всего", 0); @@ -1910,7 +1927,7 @@ Иначе Если ЗаменятьСуществующие Тогда Результат.Обновлено = Результат.Обновлено + 1; - ЗаполнитьЗначенияСвойств(ЭлементПриемник, ЭлементИсточник); + ЗаполнитьЗначенияСвойств(ЭлементПриемник, ЭлементИсточник, , ?(ЗаменятьПредставление, "", "Представление")); Иначе Результат.Пропущено = Результат.Пропущено + 1; КонецЕсли; @@ -2128,107 +2145,4 @@ КонецЕсли; КонецПроцедуры -// Возвращает список полей группировок всех группировок компоновщика настроек. -// -// Параметры: -// КомпоновщикНастроек - компоновщик настроек. -// БезПользовательскихПолей - признак не включения пользовательских настроек СКД. -// -Функция ПолучитьПоляГруппировок(КомпоновщикНастроек, БезПользовательскихПолей = Ложь) Экспорт - - СписокПолей = Новый СписокЗначений; - - Структура = КомпоновщикНастроек.Настройки.Структура; - ДобавитьПоляГруппировки(Структура, СписокПолей, БезПользовательскихПолей); - Возврат СписокПолей; - -КонецФункции - -// Добавляет вложенные поля группировки. -Процедура ДобавитьПоляГруппировки(Структура, СписокПолей, БезПользовательскихПолей) - - Для каждого ЭлементСтруктуры Из Структура Цикл - Если ТипЗнч(ЭлементСтруктуры) = Тип("ТаблицаКомпоновкиДанных") Тогда - ДобавитьПоляГруппировки(ЭлементСтруктуры.Строки, СписокПолей, БезПользовательскихПолей); - ДобавитьПоляГруппировки(ЭлементСтруктуры.Колонки, СписокПолей, БезПользовательскихПолей); - ИначеЕсли ТипЗнч(ЭлементСтруктуры) = Тип("ДиаграммаКомпоновкиДанных") Тогда - ДобавитьПоляГруппировки(ЭлементСтруктуры.Серии, СписокПолей, БезПользовательскихПолей); - ДобавитьПоляГруппировки(ЭлементСтруктуры.Точки, СписокПолей, БезПользовательскихПолей); - Иначе - Для каждого ТекущееПолеГруппировки Из ЭлементСтруктуры.ПоляГруппировки.Элементы Цикл - ДоступноеПоле = ЭлементСтруктуры.Выбор.ДоступныеПоляВыбора.НайтиПоле(ТекущееПолеГруппировки.Поле); - Если ДоступноеПоле <> Неопределено - И (ДоступноеПоле.Родитель = Неопределено ИЛИ Не БезПользовательскихПолей ИЛИ ДоступноеПоле.Родитель.Поле <> Новый ПолеКомпоновкиДанных("UserFields")) Тогда - СписокПолей.Добавить(Строка(ДоступноеПоле.Поле), ДоступноеПоле.Заголовок); - КонецЕсли; - КонецЦикла; - ДобавитьПоляГруппировки(ЭлементСтруктуры.Структура, СписокПолей, БезПользовательскихПолей); - КонецЕсли; - КонецЦикла; - -КонецПроцедуры - -// Возвращает последний элемент структуры - группировку. -// -// Параметры: -// ЭлементСтруктурыНастроек - элемент структуры компоновки данных. -// Строки - признак для получения последний группировки строк (Серий) или колонок (точек). -// -Функция ПолучитьПоследнийЭлементСтруктуры(ЭлементСтруктурыНастроек, Строки = Истина) Экспорт - - Если ТипЗнч(ЭлементСтруктурыНастроек) = Тип("КомпоновщикНастроекКомпоновкиДанных") Тогда - Настройки = ЭлементСтруктурыНастроек.Настройки; - ИначеЕсли ТипЗнч(ЭлементСтруктурыНастроек) = Тип("НастройкиКомпоновкиДанных") Тогда - Настройки = ЭлементСтруктурыНастроек; - Иначе - Возврат Неопределено; - КонецЕсли; - - Структура = Настройки.Структура; - Если Структура.Количество() = 0 Тогда - Возврат Настройки; - КонецЕсли; - - Если Строки Тогда - ИмяСтруктурыТаблицы = "Строки"; - ИмяСтруктурыДиаграммы = "Серии"; - Иначе - ИмяСтруктурыТаблицы = "Колонки"; - ИмяСтруктурыДиаграммы = "Точки"; - КонецЕсли; - - Пока Истина Цикл - ЭлементСтруктуры = Структура[0]; - Если ТипЗнч(ЭлементСтруктуры) = Тип("ТаблицаКомпоновкиДанных") И ЭлементСтруктуры[ИмяСтруктурыТаблицы].Количество() > 0 Тогда - Если ЭлементСтруктуры[ИмяСтруктурыТаблицы][0].Структура.Количество() = 0 Тогда - Структура = ЭлементСтруктуры[ИмяСтруктурыТаблицы]; - Прервать; - КонецЕсли; - Структура = ЭлементСтруктуры[ИмяСтруктурыТаблицы][0].Структура; - ИначеЕсли ТипЗнч(ЭлементСтруктуры) = Тип("ДиаграммаКомпоновкиДанных") И ЭлементСтруктуры[ИмяСтруктурыДиаграммы].Количество() > 0 Тогда - Если ЭлементСтруктуры[ИмяСтруктурыДиаграммы][0].Структура.Количество() = 0 Тогда - Структура = ЭлементСтруктуры[ИмяСтруктурыДиаграммы]; - Прервать; - КонецЕсли; - Структура = ЭлементСтруктуры[ИмяСтруктурыДиаграммы][0].Структура; - ИначеЕсли ТипЗнч(ЭлементСтруктуры) = Тип("ГруппировкаКомпоновкиДанных") - ИЛИ ТипЗнч(ЭлементСтруктуры) = Тип("ГруппировкаТаблицыКомпоновкиДанных") - ИЛИ ТипЗнч(ЭлементСтруктуры) = Тип("ГруппировкаДиаграммыКомпоновкиДанных") Тогда - Если ЭлементСтруктуры.Структура.Количество() = 0 Тогда - Прервать; - КонецЕсли; - Структура = ЭлементСтруктуры.Структура; - ИначеЕсли ТипЗнч(ЭлементСтруктуры) = Тип("ТаблицаКомпоновкиДанных") Тогда - Возврат ЭлементСтруктуры[ИмяСтруктурыТаблицы]; - ИначеЕсли ТипЗнч(ЭлементСтруктуры) = Тип("ДиаграммаКомпоновкиДанных") Тогда - Возврат ЭлементСтруктуры[ИмяСтруктурыДиаграммы]; - Иначе - Возврат ЭлементСтруктуры; - КонецЕсли; - КонецЦикла; - - Возврат Структура[0]; - -КонецФункции - #КонецОбласти diff --git a/SSL/src/CommonModules/ОтчетыСервер/Module.bsl b/SSL/src/CommonModules/ОтчетыСервер/Module.bsl index e77ce7a6b..ae58e556e 100644 --- a/SSL/src/CommonModules/ОтчетыСервер/Module.bsl +++ b/SSL/src/CommonModules/ОтчетыСервер/Module.bsl @@ -367,6 +367,7 @@ Результат.Колонки.Добавить("ЗначенияДляВыбора"); Результат.Колонки.Добавить("ЗапросЗначенийВыбора"); Результат.Колонки.Добавить("СписокЗначенийПереопределен", Новый ОписаниеТипов("Булево")); + Результат.Колонки.Добавить("БыстрыйВыбор", Новый ОписаниеТипов("Булево")); Результат.Колонки.Добавить("ОграничиватьВыборУказаннымиЗначениями", Новый ОписаниеТипов("Булево")); Результат.Колонки.Добавить("СобытиеПриИзменении", Новый ОписаниеТипов("Булево")); Результат.Колонки.Добавить("Ширина", Новый ОписаниеТипов("Число")); @@ -421,6 +422,7 @@ Результат.Колонки.Добавить("ОписаниеТипов"); Результат.Колонки.Добавить("ЗначенияДляВыбора"); Результат.Колонки.Добавить("ЗапросЗначенийВыбора"); + Результат.Колонки.Добавить("БыстрыйВыбор", Новый ОписаниеТипов("Булево")); Результат.Колонки.Добавить("ОграничиватьВыборУказаннымиЗначениями", Новый ОписаниеТипов("Булево")); // Вывод. @@ -549,9 +551,9 @@ ЗарегистрироватьУзелНастроек(НастройкиКД, Информация, СтрокаДерева, "УсловноеОформление"); - // Настройки, свойство ПараметрыВывода - // Таблица, свойство ПараметрыВывода - // Диаграмма, свойство ПараметрыВывода + // Настройки, свойство ПараметрыВывода. + // Таблица, свойство ПараметрыВывода. + // Диаграмма, свойство ПараметрыВывода. // Группировка, свойство ПараметрыВывода // ГруппировкаДиаграммы, свойство ПараметрыВывода // ГруппировкаТаблицы, свойство ПараметрыВывода. @@ -689,6 +691,7 @@ Если СвойстваНастройки <> Неопределено Тогда СвойстваНастройки.ЗначенияДляВыбора = НастройкаВарианта.ЗначенияДляВыбора; СвойстваНастройки.ПараметрыВыбора = НастройкаВарианта.ПараметрыВыбора; + СвойстваНастройки.БыстрыйВыбор = НастройкаВарианта.БыстрыйВыбор; СвойстваНастройки.ОграничиватьВыборУказаннымиЗначениями = НастройкаВарианта.ОграничиватьВыборУказаннымиЗначениями; КонецЕсли; КонецЦикла; @@ -765,7 +768,8 @@ КонецЕсли; НастройкаВарианта.ОписаниеТипов = ДоступнаяНастройкаКД.ТипЗначения; - НастройкаВарианта.ФормаВыбора = ДоступнаяНастройкаКД.ФормаВыбора; + НастройкаВарианта.ФормаВыбора = ДоступнаяНастройкаКД.ФормаВыбора; + НастройкаВарианта.БыстрыйВыбор = ДоступнаяНастройкаКД.БыстрыйВыбор; Если Информация.Поиск.НастройкиВариантаПоПолюКД.Получить(НастройкаВарианта.ПолеКД) = Неопределено Тогда Информация.Поиск.НастройкиВариантаПоПолюКД.Вставить(НастройкаВарианта.ПолеКД, НастройкаВарианта); @@ -787,19 +791,15 @@ КонецЕсли; НастройкаВарианта.ЗапросЗначенийВыбора = Новый Запрос; - ШаблонЗапросаПеречислений = "ВЫБРАТЬ Ссылка ИЗ &ИмяПеречисления"; - ТекстЗапросаЗначений = ""; + ТекстЗапросаСсылок = ""; ИнформацияОТипах = ОтчетыКлиентСервер.АнализТипов(НастройкаВарианта.ОписаниеТипов, Истина); ИнформацияОТипах.Вставить("СодержитСсылочныеТипы", Ложь); - ИнформацияОТипах.Вставить("КоличествоПеречислений", 0); - ИнформацияОТипах.Вставить("КоличествоПрочихСсылочныхТипов", 0); - ИнформацияОТипах.Вставить("Перечисления", Новый Массив); - ИнформацияОТипах.Вставить("ПрочиеСсылочныеТипы", Новый Массив); + ИнформацияОТипах.Вставить("КоличествоСБыстрымВыбором", 0); Для Каждого Тип Из ИнформацияОТипах.ОбъектныеТипы Цикл + ОбъектМетаданных = Метаданные.НайтиПоТипу(Тип); ПолноеИмя = Информация.СоответствиеИменОбъектовМетаданных.Получить(Тип); Если ПолноеИмя = Неопределено Тогда // Регистрация имени объекта метаданных. - ОбъектМетаданных = Метаданные.НайтиПоТипу(Тип); Если ОбъектМетаданных = Неопределено Тогда ПолноеИмя = -1; Иначе @@ -813,16 +813,29 @@ ИнформацияОТипах.СодержитСсылочныеТипы = Истина; - Если ВРег(Лев(ПолноеИмя, 13)) = "ПЕРЕЧИСЛЕНИЕ." Тогда - ИнформацияОТипах.Перечисления.Добавить(ПолноеИмя); - ИнформацияОТипах.КоличествоПеречислений = ИнформацияОТипах.КоличествоПеречислений + 1; - Если ТекстЗапросаЗначений <> "" Тогда - ТекстЗапросаЗначений = ТекстЗапросаЗначений + Символы.ПС + Символы.ПС + "ОБЪЕДИНИТЬ ВСЕ" + Символы.ПС + Символы.ПС; + ДляВыбораЭтогоТипаИспользуетсяБыстрыйВыбор = НастройкаВарианта.БыстрыйВыбор; + Вид = ВРег(СтрЛев(ПолноеИмя, ".")); + Если Вид = "ПЕРЕЧИСЛЕНИЕ" Тогда + ДляВыбораЭтогоТипаИспользуетсяБыстрыйВыбор = Истина; + ИначеЕсли Вид = "СПРАВОЧНИК" + Или Вид = "ПЛАНВИДОВРАСЧЕТА" + Или Вид = "ПЛАНВИДОВХАРАКТЕРИСТИК" + Или Вид = "ПЛАНОБМЕНА" + Или Вид = "ПЛАНСЧЕТОВ" Тогда + Если ОбъектМетаданных.СпособВыбора = Метаданные.СвойстваОбъектов.СпособВыбора.БыстрыйВыбор Тогда + ДляВыбораЭтогоТипаИспользуетсяБыстрыйВыбор = Истина; + КонецЕсли; + КонецЕсли; + Если ДляВыбораЭтогоТипаИспользуетсяБыстрыйВыбор Тогда + ИнформацияОТипах.КоличествоСБыстрымВыбором = ИнформацияОТипах.КоличествоСБыстрымВыбором + 1; + ФрагментЗапросаИз = " ИЗ " + ПолноеИмя + Символы.ПС; + Если ТекстЗапросаСсылок = "" Тогда + ТекстЗапросаСсылок = "ВЫБРАТЬ РАЗЛИЧНЫЕ РАЗРЕШЕННЫЕ Ссылка" + ФрагментЗапросаИз; + ИначеЕсли СтрНайти(ТекстЗапросаСсылок, ФрагментЗапросаИз) = 0 Тогда + ТекстЗапросаСсылок = ТекстЗапросаСсылок + Символы.ПС + + "ОБЪЕДИНИТЬ ВСЕ" + Символы.ПС + Символы.ПС + + "ВЫБРАТЬ РАЗЛИЧНЫЕ Ссылка" + ФрагментЗапросаИз; КонецЕсли; - ТекстЗапросаЗначений = ТекстЗапросаЗначений + СтрЗаменить(ШаблонЗапросаПеречислений, "&ИмяПеречисления", ПолноеИмя); - Иначе - ИнформацияОТипах.ПрочиеСсылочныеТипы.Добавить(ПолноеИмя); - ИнформацияОТипах.КоличествоПрочихСсылочныхТипов = ИнформацияОТипах.КоличествоПрочихСсылочныхТипов + 1; КонецЕсли; // Поиск типа в глобальных связях среди подчиненных. @@ -841,9 +854,13 @@ СвязьПоМетаданным.Ведущие.Добавить(НастройкаВарианта); КонецЦикла; КонецЕсли; - КонецЦикла; + // Только перечисления или типы с быстрым выбором. + Если ИнформацияОТипах.КоличествоСБыстрымВыбором = ИнформацияОТипах.КоличествоТипов Тогда + НастройкаВарианта.БыстрыйВыбор = Истина; + КонецЕсли; + НастройкаВарианта.ИнформацияОТипах = ИнформацияОТипах; НастройкаВарианта.ОписаниеТипов = ИнформацияОТипах.ОписаниеТиповДляФормы; @@ -881,9 +898,9 @@ НастройкаВарианта.ЗначенияДляВыбора = ДоступнаяНастройкаКД.ДоступныеЗначения; НастройкаВарианта.ОграничиватьВыборУказаннымиЗначениями = НастройкаВарианта.ЗначенияДляВыбора.Количество() > 0; Иначе - Если ИнформацияОТипах.КоличествоПеречислений = ИнформацияОТипах.КоличествоТипов Тогда - НастройкаВарианта.ЗапросЗначенийВыбора.Текст = ТекстЗапросаЗначений; - НастройкаВарианта.ОграничиватьВыборУказаннымиЗначениями = Истина; // Только перечисления. + Если НастройкаВарианта.БыстрыйВыбор Тогда + НастройкаВарианта.ЗапросЗначенийВыбора.Текст = ТекстЗапросаСсылок; + НастройкаВарианта.ОграничиватьВыборУказаннымиЗначениями = Истина; КонецЕсли; НастройкаВарианта.ЗначенияДляВыбора = Новый СписокЗначений; @@ -1385,6 +1402,18 @@ Возврат ОтчетОбъектИлиПолноеИмя; КонецФункции +Функция СтрЛев(Знач Строка, Знач Разделитель, Остаток = Неопределено) + Позиция = Найти(Строка, Разделитель); + Если Позиция = 0 Тогда + СтрокаДоРазделителя = Строка; + Остаток = ""; + Иначе + СтрокаДоРазделителя = Лев(Строка, Позиция - 1); + Остаток = Сред(Строка, Позиция + 1); + КонецЕсли; + Возврат СтрокаДоРазделителя; +КонецФункции + //////////////////////////////////////////////////////////////////////////////// // Вывод @@ -1473,7 +1502,7 @@ // Сохранение параметров выбора настройки в дополнительных свойствах пользовательских настроек. НастройкиЭлемента = Новый Структура("Представление, ВыводитьФлажок, |ВводСписком, ОписаниеТипов, ПараметрыВыбора, ЗначенияДляВыбора, - |ОграничиватьВыборУказаннымиЗначениями, ВыборГруппИЭлементов, ФормаВыбора"); + |БыстрыйВыбор, ОграничиватьВыборУказаннымиЗначениями, ВыборГруппИЭлементов, ФормаВыбора"); НастройкиЭлемента.ФормаВыбора = СвойстваНастройки.ДоступнаяНастройкаКД.ФормаВыбора; ЗаполнитьЗначенияСвойств(НастройкиЭлемента, СвойстваНастройки); Прочее.ДополнительныеНастройкиЭлементов.Вставить(СвойстваНастройки.ИдентификаторЭлемента, НастройкиЭлемента); @@ -1541,22 +1570,22 @@ // Связь с СКД. ПолеВвода.ПутьКДанным = Прочее.ПутьККомпоновщику + ".ПользовательскиеНастройки[" + СвойстваНастройки.ИндексВКоллекции + "].Значение"; - Если СвойстваНастройки.ВводСписком Тогда - ПолеВвода.УстановитьДействие("НачалоВыбора", "Подключаемый_СписокКомпоновщика_НачалоВыбора"); - ИначеЕсли СвойстваНастройки.ДоступнаяНастройкаКД <> Неопределено - И СвойстваНастройки.ДоступнаяНастройкаКД.БыстрыйВыбор <> Истина Тогда - // Когда есть отключаемые связи "ПоМетаданным" или "ПараметровВыбора" от подчиненного, - // тогда для выбора используется прикладная логика. - Если СвойстваНастройки.НастройкаВарианта.СвязиПараметровВыбора.Количество() > 0 - Или СвойстваНастройки.НастройкаВарианта.СвязиПоМетаданным.Количество() > 0 Тогда - ПолеВвода.УстановитьДействие("НачалоВыбора", "Подключаемый_ЗначениеКомпоновщика_НачалоВыбора"); - КонецЕсли; - КонецЕсли; - Если СвойстваНастройки.Тип = "ЗначениеПараметраНастроек" Или СвойстваНастройки.Тип = "ЭлементОтбора" Тогда - ЗаполнитьЗначенияСвойств(ПолеВвода, СвойстваНастройки.ДоступнаяНастройкаКД, "БыстрыйВыбор, Маска, ФормаВыбора, ФорматРедактирования"); + Если СвойстваНастройки.ВводСписком Тогда + ПолеВвода.УстановитьДействие("НачалоВыбора", "Подключаемый_СписокКомпоновщика_НачалоВыбора"); + ИначеЕсли Не СвойстваНастройки.БыстрыйВыбор Тогда + // Когда есть отключаемые связи "ПоМетаданным" или "ПараметровВыбора" от подчиненного, + // тогда для выбора используется прикладная логика. + Если СвойстваНастройки.НастройкаВарианта.СвязиПараметровВыбора.Количество() > 0 + Или СвойстваНастройки.НастройкаВарианта.СвязиПоМетаданным.Количество() > 0 Тогда + ПолеВвода.УстановитьДействие("НачалоВыбора", "Подключаемый_ЗначениеКомпоновщика_НачалоВыбора"); + КонецЕсли; + КонецЕсли; + + ПолеВвода.БыстрыйВыбор = СвойстваНастройки.БыстрыйВыбор; + ЗаполнитьЗначенияСвойств(ПолеВвода, СвойстваНастройки.ДоступнаяНастройкаКД, "Маска, ФормаВыбора, ФорматРедактирования"); Если СвойстваНастройки.Тип = "ЗначениеПараметраНастроек" Тогда ПолеВвода.АвтоОтметкаНезаполненного = СвойстваНастройки.ДоступнаяНастройкаКД.ЗапрещатьНезаполненныеЗначения; @@ -1596,6 +1625,13 @@ КонецЕсли; КонецЕсли; + // Для платформы (увеличение размера поля типа 'Дата' чтобы вмещались варианты выбора 'СтандартнаяДатаНачала'). + Если ПолеВвода.РастягиватьПоГоризонтали = Ложь И ИнформацияОТипах.СодержитТипДата И ИнформацияОТипах.КоличествоТипов = 1 Тогда + ПолеВвода.РастягиватьПоГоризонтали = Истина; + ПолеВвода.АвтоМаксимальнаяШирина = Ложь; + ПолеВвода.МаксимальнаяШирина = 25; + КонецЕсли; + // Условие. Если ВыводитьУсловие Тогда КнопкаВидСравнения = Элементы.Добавить(КомандаВидСравненияИмя, Тип("КнопкаФормы"), ПолеВвода.КонтекстноеМеню); @@ -1703,6 +1739,7 @@ ПустаяДекорация = Элементы.Добавить(ДекорацияИмя, Тип("ДекорацияФормы"), ГруппаЗаголовокТаблицы); ПустаяДекорация.Вид = ВидДекорацииФормы.Надпись; ПустаяДекорация.Заголовок = ?(СвойстваНастройки.ВыводитьФлажок, " ", СвойстваНастройки.Представление + ":"); + ПустаяДекорация.АвтоМаксимальнаяШирина = Ложь; ПустаяДекорация.РастягиватьПоГоризонтали = Истина; // Кнопки. @@ -1789,8 +1826,9 @@ // Колонка "Значение". КолонкаЗначениеЭлемент = Элементы.Добавить(КолонкаЗначениеИмя, Тип("ПолеФормы"), ГруппаКолонок); КолонкаЗначениеЭлемент.Вид = ВидПоляФормы.ПолеВвода; + КолонкаЗначениеЭлемент.БыстрыйВыбор = СвойстваНастройки.БыстрыйВыбор; - ЗаполнитьЗначенияСвойств(КолонкаЗначениеЭлемент, СвойстваНастройки.ДоступнаяНастройкаКД, "БыстрыйВыбор, Маска, ФормаВыбора, ФорматРедактирования"); + ЗаполнитьЗначенияСвойств(КолонкаЗначениеЭлемент, СвойстваНастройки.ДоступнаяНастройкаКД, "Маска, ФормаВыбора, ФорматРедактирования"); КолонкаЗначениеЭлемент.ВыборГруппИЭлементов = СвойстваНастройки.ВыборГруппИЭлементов; @@ -1910,12 +1948,12 @@ ТекущаяГруппа2 = Неопределено; КонецЕсли; - Если ЭлементВывода.ИмяЭлемента2 = Неопределено Тогда // Вывод в одну колонку. - Если ТекущаяГруппа2 <> Неопределено Тогда - ТекущаяГруппа2 = Неопределено; - КонецЕсли; + Если ЭлементВывода.ИмяЭлемента2 = Неопределено Тогда + // Вывод в одну колонку. + ТекущаяГруппа2 = Неопределено; Элементы.Переместить(Элементы[ЭлементВывода.ИмяЭлемента1], КолонкаВерхнегоУровня); Иначе + // Вывод в две колонки. Если ТекущаяГруппа2 = Неопределено Тогда НомерПодгруппы = НомерПодгруппы + 1; @@ -1930,12 +1968,14 @@ ТекущаяГруппа1.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Вертикальная; ТекущаяГруппа1.Отображение = ОтображениеОбычнойГруппы.Нет; ТекущаяГруппа1.ОтображатьЗаголовок = Ложь; + ТекущаяГруппа1.Объединенная = Ложь; ТекущаяГруппа2 = Элементы.Добавить(РодительИмя + НомерКолонки + "_" + НомерПодгруппы + "_2", Тип("ГруппаФормы"), Колонки); ТекущаяГруппа2.Вид = ВидГруппыФормы.ОбычнаяГруппа; ТекущаяГруппа2.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Вертикальная; ТекущаяГруппа2.Отображение = ОтображениеОбычнойГруппы.Нет; ТекущаяГруппа2.ОтображатьЗаголовок = Ложь; + ТекущаяГруппа2.Объединенная = Ложь; КонецЕсли; Элементы.Переместить(Элементы[ЭлементВывода.ИмяЭлемента1], ТекущаяГруппа1); Элементы.Переместить(Элементы[ЭлементВывода.ИмяЭлемента2], ТекущаяГруппа2); diff --git a/SSL/src/CommonModules/ОценкаПроизводительности/Module.bsl b/SSL/src/CommonModules/ОценкаПроизводительности/Module.bsl index 706fce611..7b1c134f0 100644 --- a/SSL/src/CommonModules/ОценкаПроизводительности/Module.bsl +++ b/SSL/src/CommonModules/ОценкаПроизводительности/Module.bsl @@ -1,15 +1,251 @@ +//////////////////////////////////////////////////////////////////////////////// +// Методы, позволяющие начать и закончить замер времени выполнения ключевой операции на сервере. +// +//////////////////////////////////////////////////////////////////////////////// + +#Область ПрограммныйИнтерфейс + +// Начинает замер времени ключевой операции. Закончить замер нужно явно вызовом +// процедуры ЗакончитьЗамерВремени или ЗакончитьЗамерВремениТехнологический. +// +// Возвращаемое значение: +// Число(14,0) - время UTC начала с точностью до миллисекунд. +// +Функция НачатьЗамерВремени() Экспорт + + ВремяНачала = 0; + + Если ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда + ВремяНачала = ТекущаяУниверсальнаяДатаВМиллисекундах(); + КонецЕсли; + + Возврат ВремяНачала; + +КонецФункции + +// Завершает замер времени ключевой операции +// и записывает результат в регистр сведений ЗамерыВремени. +// +// Параметры: +// КлючеваяОперация - СправочникСсылка.КлючевыеОперации, Строка - ключевая операция. +// ВремяНачала - Число(14,0) - универсальная дата в миллисекундах, +// возвращаемая при начале замера функцией ОценкаПроизводительности.НачатьЗамерВремени. +// ВесЗамера - Число (10,0) - количественный показатель замера, например количество строк в документе. +// Комментарий - Строка(900), Соответствие - произвольная информация замера. +// +Процедура ЗакончитьЗамерВремени(КлючеваяОперация, ВремяНачала, ВесЗамера = 1, Комментарий = Неопределено) Экспорт + Если ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда + ВремяОкончания = ТекущаяУниверсальнаяДатаВМиллисекундах(); + Длительность = (ВремяОкончания - ВремяНачала)/1000; + ЗафиксироватьДлительностьКлючевойОперации( + КлючеваяОперация, + Длительность, + ВремяНачала, + ВремяОкончания, + ВесЗамера, + Комментарий); + КонецЕсли; +КонецПроцедуры + +// Завершает замер времени ключевой операции +// и записывает результат в регистр сведений ЗамерыВремениТехнологические. +// +// Параметры: +// КлючеваяОперация - СправочникСсылка.КлючевыеОперации, Строка - ключевая операция. +// ВремяНачала - Число(14,0) - универсальная дата в миллисекундах, +// возвращаемая при начале замера функцией ОценкаПроизводительности.НачатьЗамерВремени. +// ВесЗамера - Число (10,0) - количественный показатель замера, например количество строк в документе. +// Комментарий - Строка(900), Соответствие - произвольная информация замера. +// при выполнении замера. +// +Процедура ЗакончитьЗамерВремениТехнологический(КлючеваяОперация, ВремяНачала, ВесЗамера = 1, Комментарий = Неопределено) Экспорт + Если ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда + ВремяОкончания = ТекущаяУниверсальнаяДатаВМиллисекундах(); + Длительность = (ВремяОкончания - ВремяНачала)/1000; + ЗафиксироватьДлительностьКлючевойОперации( + КлючеваяОперация, + Длительность, + ВремяНачала, + ВремяОкончания, + ВесЗамера, + Комментарий, + Истина); + КонецЕсли; +КонецПроцедуры + +// Создает ключевые операции в случае их отсутствия. +// +// Параметры: +// КлючевыеОперации - Массив - ключевые операции, элемент массива - Структура("ИмяКлючевойОперации, ЦелевоеВремя"). +// +Процедура СоздатьКлючевыеОперации(КлючевыеОперации) Экспорт + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 + | КлючевыеОперации.Ссылка КАК Ссылка + |ИЗ + | Справочник.КлючевыеОперации КАК КлючевыеОперации + |ГДЕ + | КлючевыеОперации.Имя = &Имя + |УПОРЯДОЧИТЬ ПО + | Ссылка"; + + Для Каждого КлючеваяОперация Из КлючевыеОперации Цикл + Запрос.УстановитьПараметр("Имя", КлючеваяОперация.ИмяКлючевойОперации); + РезультатЗапроса = Запрос.Выполнить(); + Если РезультатЗапроса.Пустой() Тогда + СоздатьКлючевуюОперацию(КлючеваяОперация.ИмяКлючевойОперации, КлючеваяОперация.ЦелевоеВремя); + КонецЕсли; + КонецЦикла; +КонецПроцедуры + +// Устанавливает ключевой операции новое целевое время. +// +// Параметры: +// КлючевыеОперации - Массив - ключевые операции, элемент массива - Структура("ИмяКлючевойОперации, ЦелевоеВремя"). +// +Процедура УстановитьЦелевоеВремя (КлючевыеОперации) Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 + | КлючевыеОперации.Ссылка КАК Ссылка + |ИЗ + | Справочник.КлючевыеОперации КАК КлючевыеОперации + |ГДЕ + | КлючевыеОперации.Имя = &Имя + |УПОРЯДОЧИТЬ ПО + | Ссылка"; + + НачатьТранзакцию(); + Попытка + + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("Справочник.КлючевыеОперации"); + Блокировка.Заблокировать(); + + Для Каждого КлючеваяОперация Из КлючевыеОперации Цикл + Запрос.УстановитьПараметр("Имя", КлючеваяОперация.ИмяКлючевойОперации); + РезультатЗапроса = Запрос.Выполнить(); + Если НЕ РезультатЗапроса.Пустой() Тогда + Выборка = РезультатЗапроса.Выбрать(); + Выборка.Следующий(); + КлючеваяОперацияСсылка = Выборка.Ссылка; + КлючеваяОперацияОбъект = КлючеваяОперацияСсылка.ПолучитьОбъект(); + КлючеваяОперацияОбъект.ЦелевоеВремя = КлючеваяОперация.ЦелевоеВремя; + + КлючеваяОперацияОбъект.Записать(); + КонецЕсли; + КонецЦикла; + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + +КонецПроцедуры + +// Устанавливает ключевой операции признака ошибки. +// +// Параметры: +// КлючевыеОперации - Массив - ключевые операции, элемент массива - Структура("ИмяКлючевойОперации, Признак"). +// +Процедура УстановитьПризнакЗавершенияСОшибкой(КлючевыеОперации) Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 + | КлючевыеОперации.Ссылка КАК Ссылка + |ИЗ + | Справочник.КлючевыеОперации КАК КлючевыеОперации + |ГДЕ + | КлючевыеОперации.Имя = &Имя + |УПОРЯДОЧИТЬ ПО + | Ссылка"; + + НачатьТранзакцию(); + Попытка + + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("Справочник.КлючевыеОперации"); + Блокировка.Заблокировать(); + + Для Каждого КлючеваяОперация Из КлючевыеОперации Цикл + Запрос.УстановитьПараметр("Имя", КлючеваяОперация.ИмяКлючевойОперации); + РезультатЗапроса = Запрос.Выполнить(); + Если НЕ РезультатЗапроса.Пустой() Тогда + Выборка = РезультатЗапроса.Выбрать(); + Выборка.Следующий(); + КлючеваяОперацияСсылка = Выборка.Ссылка; + КлючеваяОперацияОбъект = КлючеваяОперацияСсылка.ПолучитьОбъект(); + КлючеваяОперацияОбъект.ЗавершенаСОшибкой = КлючеваяОперация.Признак; + + КлючеваяОперацияОбъект.Записать(); + КонецЕсли; + КонецЦикла; + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + +КонецПроцедуры + +// Изменяет ключевые операции. +// +// Параметры: +// КлючевыеОперации - Массив - ключевые операции, +// элемент массива - Структура("ИмяКлючевойОперацииСтарое, ИмяКлючевойОперацииНовое , ЦелевоеВремя") +// или +// элемент массива - Структура("ИмяКлючевойОперацииСтарое, ИмяКлючевойОперацииНовое"), +// целевое время не изменяется. +// +Процедура ИзменитьКлючевыеОперации(КлючевыеОперации) Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 + | КлючевыеОперации.Ссылка КАК Ссылка + |ИЗ + | Справочник.КлючевыеОперации КАК КлючевыеОперации + |ГДЕ + | КлючевыеОперации.Имя = &Имя + |УПОРЯДОЧИТЬ ПО + | Ссылка"; + + НачатьТранзакцию(); + Попытка + + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("Справочник.КлючевыеОперации"); + Блокировка.Заблокировать(); + + Для Каждого КлючеваяОперация Из КлючевыеОперации Цикл + Запрос.УстановитьПараметр("Имя", КлючеваяОперация.ИмяКлючевойОперацииСтарое); + РезультатЗапроса = Запрос.Выполнить(); + Если НЕ РезультатЗапроса.Пустой() Тогда + Выборка = РезультатЗапроса.Выбрать(); + Выборка.Следующий(); + КлючеваяОперацияСсылка = Выборка.Ссылка; + КлючеваяОперацияОбъект = КлючеваяОперацияСсылка.ПолучитьОбъект(); + КлючеваяОперацияОбъект.Имя = КлючеваяОперация.ИмяКлючевойОперацииНовое; + КлючеваяОперацияОбъект.Наименование = РазложитьСтрокуПоСловам(КлючеваяОперация.ИмяКлючевойОперацииНовое); + Если КлючеваяОперация.Свойство("ЦелевоеВремя") Тогда + КлючеваяОперацияОбъект.ЦелевоеВремя = КлючеваяОперация.ЦелевоеВремя; + КонецЕсли; + + КлючеваяОперацияОбъект.Записать(); + КонецЕсли; + КонецЦикла; + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + +КонецПроцедуры + +#КонецОбласти #Область СлужебныйПрограммныйИнтерфейс -// Получает признак выполнения замеров производительности. -// -// Возвращаемое значение: -// Булево -Функция ВыполнятьЗамерыПроизводительности() Экспорт - Возврат Константы.ВыполнятьЗамерыПроизводительности.Получить(); -КонецФункции - -// Процедура включает/выключает замеры производительности +// Включает/выключает замеры производительности // Процедура ВключитьЗамерыПроизводительности(Параметр) Экспорт @@ -17,52 +253,23 @@ КонецПроцедуры - #КонецОбласти #Область СлужебныеПроцедурыИФункции -// Процедура обработки регламентного задания по выгрузке данных -// -// Параметры: -// КаталогиЭкспорта - Структура со значением типа Массив. -// -Процедура ЭкспортОценкиПроизводительности(КаталогиЭкспорта) Экспорт - - ОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(Метаданные.РегламентныеЗадания.ЭкспортОценкиПроизводительности); - - // Если система отключена, то выгрузку данных делать не будем. - Если Не ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда - Возврат; - КонецЕсли; - - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | МАКСИМУМ(Замеры.ДатаЗаписи) КАК ДатаЗамера - |ИЗ - | РегистрСведений.ЗамерыВремени КАК Замеры"; - Выборка = Запрос.Выполнить().Выбрать(); - Если Выборка.Следующий() И Выборка.ДатаЗамера <> Null Тогда - ВерхняяГраньДатыЗамеров = Выборка.ДатаЗамера; - Иначе - Возврат; - КонецЕсли; - - МассивыЗамеров = ЗамерыСРазделениемПоКлючевымОперациям(ВерхняяГраньДатыЗамеров); - ВыгрузитьРезультаты(КаталогиЭкспорта, МассивыЗамеров); - -КонецПроцедуры - -// Функция создает новый элемент справочника "Ключевые операции". +// Создает новый элемент справочника "Ключевые операции". // // Параметры: // ИмяКлючевойОперации - Строка - название ключевой операции. +// ЦелевоеВремя - Число - целевое время ключевой операции. +// ВыполненаСОшибкой - Булево - признак выполнения ключевой операции. // // Возвращаемое значение: -// СправочникСсылка.КлючевыеОперации +// СправочникСсылка.КлючевыеОперации. // -Функция СоздатьКлючевуюОперацию(ИмяКлючевойОперации, ЦелевоеВремя = 1) Экспорт +Функция СоздатьКлючевуюОперацию(ИмяКлючевойОперации, ЦелевоеВремя = 1, ВыполненаСОшибкой = Ложь) Экспорт + + УстановитьПривилегированныйРежим(Истина); НачатьТранзакцию(); @@ -98,6 +305,7 @@ НовыйЭлемент.Имя = ИмяКлючевойОперации; НовыйЭлемент.Наименование = Наименование; НовыйЭлемент.ЦелевоеВремя = ЦелевоеВремя; + НовыйЭлемент.ВыполненаСОшибкой = ВыполненаСОшибкой; НовыйЭлемент.Записать(); КлючеваяОперацияСсылка = НовыйЭлемент.Ссылка; Иначе @@ -116,283 +324,6 @@ КонецФункции -// Процедура записи единичного замера -// -// Параметры: -// КлючеваяОперация - СправочникСсылка.КлючевыеОперации - ключевая операция -// либо Строка - название ключевой операции -// Длительность - Число -// ДатаНачалаКлючевойОперации - Дата. -Процедура ЗафиксироватьДлительностьКлючевойОперации( - КлючеваяОперация, - Длительность, - ДатаНачалаКлючевойОперации, - ДатаОкончанияКлючевойОперации = Неопределено, - Комментарий = Неопределено, - Технологический = Ложь) Экспорт - - Если БезопасныйРежим() <> Ложь Тогда - ЗаписьЖурналаРегистрации(НСтр("ru = 'Работа подсистемы оценка производительности в безопасном режиме не поддерживается'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), - УровеньЖурналаРегистрации.Информация,,,Строка(КлючеваяОперация)); - - Возврат; - КонецЕсли; - - УстановитьПривилегированныйРежим(Истина); - - Если ТипЗнч(КлючеваяОперация) = Тип("Строка") Тогда - КлючеваяОперацияСсылка = ОценкаПроизводительностиПовтИсп.ПолучитьКлючевуюОперациюПоИмени(КлючеваяОперация); - Иначе - КлючеваяОперацияСсылка = КлючеваяОперация; - КонецЕсли; - - Если Комментарий = Неопределено Тогда - Комментарий = ПараметрыСеанса.КомментарийЗамераВремени; - КонецЕсли; - - Если НЕ Технологический Тогда - Запись = РегистрыСведений.ЗамерыВремени.СоздатьМенеджерЗаписи(); - Иначе - Запись = РегистрыСведений.ЗамерыВремениТехнологические.СоздатьМенеджерЗаписи(); - КонецЕсли; - - Запись.КлючеваяОперация = КлючеваяОперацияСсылка; - - // Получаем дату в UTC - Запись.ДатаНачалаЗамера = Дата(1,1,1) + ДатаНачалаКлючевойОперации; - Запись.НомерСеанса = НомерСеансаИнформационнойБазы(); - - Запись.ВремяВыполнения = ?(Длительность = 0, 0.001, Длительность); // Длительность меньше разрешения таймера - - Запись.ДатаЗаписи = Дата(1,1,1) + ТекущаяУниверсальнаяДатаВМиллисекундах()/1000; - Если ДатаОкончанияКлючевойОперации <> Неопределено Тогда - // Получаем дату в UTC - Запись.ДатаОкончания = Дата(1,1,1) + ДатаОкончанияКлючевойОперации; - КонецЕсли; - Запись.Пользователь = ПользователиИнформационнойБазы.ТекущийПользователь(); - Запись.ДатаЗаписиЛокальная = ТекущаяДатаСеанса(); - Запись.Комментарий = Комментарий; - - Запись.Записать(); - -КонецПроцедуры - -// Функция преобразования ДатыЗамеры -// -// Параметры: -// ДатаЗамера - Дата -// либо Число - результат ТекущаяУниверсальнаяДатаВМиллисекундах(). -Функция ДатаПоТипуЗамера(ДатаЗамера) - Если ТипЗнч(ДатаЗамера) = Тип("Число") Тогда - ДатаЗамера = Дата("00010101") + ДатаЗамера / 1000; - КонецЕсли; - - Возврат ДатаЗамера; -КонецФункции - -// Регламентное задание экспорта -Функция ЗамерыСРазделениемПоКлючевымОперациям(ВерхняяГраньДатыЗамеров) - Запрос = Новый Запрос; - - УровниПроизводительностиЧисло = Новый Соответствие; - УровниПроизводительностиЧисло.Вставить(Перечисления.УровниПроизводительности.Идеально, 1); - УровниПроизводительностиЧисло.Вставить(Перечисления.УровниПроизводительности.Отлично, 0.94); - УровниПроизводительностиЧисло.Вставить(Перечисления.УровниПроизводительности.Хорошо, 0.85); - УровниПроизводительностиЧисло.Вставить(Перечисления.УровниПроизводительности.Удовлетворительно, 0.70); - УровниПроизводительностиЧисло.Вставить(Перечисления.УровниПроизводительности.Плохо, 0.50); - - ДатаПоследнейВыгрузки = Константы.ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC.Получить(); - Константы.ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC.Установить(ВерхняяГраньДатыЗамеров); - УсловиеВсе = Константы.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций.Получить(); - - Запрос.УстановитьПараметр("ДатаПоследнейВыгрузки", ДатаПоследнейВыгрузки); - Запрос.УстановитьПараметр("ВерхняяГраньДатыЗамеров", ВерхняяГраньДатыЗамеров); - - ТекстЗапроса = " - |ВЫБРАТЬ - | Замеры.КлючеваяОперация КАК КлючеваяОперация, - | Замеры.ДатаНачалаЗамера КАК ДатаНачалаЗамера, - | Замеры.ВремяВыполнения КАК ВремяВыполнения, - | Замеры.Пользователь КАК Пользователь, - | Замеры.ДатаЗаписи КАК ДатаЗаписи, - | Замеры.НомерСеанса КАК НомерСеанса, - | Замеры.Комментарий КАК Комментарий, - | КлючевыеОперации.Наименование КАК КлючеваяОперацияСтрока, - | КлючевыеОперации.Приоритет КАК КлючеваяОперацияПриоритет, - | КлючевыеОперации.ЦелевоеВремя КАК КлючеваяОперацияЦелевоеВремя, - | КлючевыеОперации.МинимальноДопустимыйУровень КАК МинимальноДопустимыйУровень - |ИЗ - | РегистрСведений.ЗамерыВремени КАК Замеры - |ВНУТРЕННЕЕ СОЕДИНЕНИЕ - | Справочник.КлючевыеОперации КАК КлючевыеОперации - |ПО - | КлючевыеОперации.Ссылка = Замеры.КлючеваяОперация - | %УсловиеВсе - |ГДЕ - | Замеры.ДатаЗаписи > &ДатаПоследнейВыгрузки - | И Замеры.ДатаЗаписи <= &ВерхняяГраньДатыЗамеров - |УПОРЯДОЧИТЬ ПО - | Замеры.КлючеваяОперация - |"; - - Если УсловиеВсе Тогда - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "%УсловиеВсе", ""); - Иначе - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "%УсловиеВсе", "И (КлючевыеОперации.Приоритет <> 0 И КлючевыеОперации.ЦелевоеВремя <> 0)"); - КонецЕсли; - - - Запрос.Текст = ТекстЗапроса; - Результат = Запрос.Выполнить(); - - ЗамерыСРазделением = Новый Соответствие; - Выборка = Результат.Выбрать(); - Пока Выборка.Следующий() Цикл - КлючеваяОперация = ЗамерыСРазделением.Получить(Выборка.КлючеваяОперация); - Если КлючеваяОперация = Неопределено Тогда - КлючеваяОперация = Новый Соответствие; - КлючеваяОперация.Вставить("uid", Строка(Выборка.КлючеваяОперация.УникальныйИдентификатор())); - КлючеваяОперация.Вставить("name", Выборка.КлючеваяОперацияСтрока); - КлючеваяОперация.Вставить("priority", Выборка.КлючеваяОперацияПриоритет); - КлючеваяОперация.Вставить("targetValue", Выборка.КлючеваяОперация.ЦелевоеВремя); - КлючеваяОперация.Вставить("minimalApdexValue", УровниПроизводительностиЧисло[Выборка.КлючеваяОперация.МинимальноДопустимыйУровень]); - КлючеваяОперация.Вставить("Замеры", Новый Массив); - - ЗамерыСРазделением.Вставить(Выборка.КлючеваяОперация, КлючеваяОперация); - КонецЕсли; - - КлючеваяОперацияЗамеры = КлючеваяОперация.Получить("Замеры"); - - ЗамерСтруктура = Новый Структура; - ЗамерСтруктура.Вставить("value", Выборка.ВремяВыполнения); - ЗамерСтруктура.Вставить("tUTC", ДатаПоТипуЗамера(Выборка.ДатаНачалаЗамера)); - ЗамерСтруктура.Вставить("userName", Выборка.Пользователь); - ЗамерСтруктура.Вставить("tSaveUTC", Выборка.ДатаЗаписи); - ЗамерСтруктура.Вставить("sessionNumber", Выборка.НомерСеанса); - ЗамерСтруктура.Вставить("comment", Выборка.Комментарий); - - КлючеваяОперацияЗамеры.Добавить(ЗамерСтруктура); - КонецЦикла; - - Возврат ЗамерыСРазделением; -КонецФункции - -// Сохраняет результаты вычисления APDEX в файл -// -// Параметры: -// КаталогиЭкспорта - Структура со значением типа Массив. -// ВыборкаАпдекс - Результат запроса -// МассивыЗамеров - Структура со значением типа Массив. -Процедура ВыгрузитьРезультаты(КаталогиЭкспорта, МассивыЗамеров) - - ДатаФормированияФайла = УниверсальноеВремя(ТекущаяДатаСеанса()); - ПространствоИмен = "www.v8.1c.ru/ssl/performace-assessment/apdexExport"; - ИмяВременногоФайла = ПолучитьИмяВременногоФайла(".xml"); - - ЗаписьXML = Новый ЗаписьXML; - ЗаписьXML.ОткрытьФайл(ИмяВременногоФайла, "UTF-8"); - ЗаписьXML.ЗаписатьОбъявлениеXML(); - ЗаписьXML.ЗаписатьНачалоЭлемента("Performance", ПространствоИмен); - ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("prf", ПространствоИмен); - ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("xs", "http://www.w3.org/2001/XMLSchema"); - ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("xsi", "http://www.w3.org/2001/XMLSchema-instance"); - - ЗаписьXML.ЗаписатьАтрибут("version", ПространствоИмен, "1.0.0.1"); - ЗаписьXML.ЗаписатьАтрибут("period", ПространствоИмен, Строка(ДатаФормированияФайла)); - - ТипКлючеваяОперация = ФабрикаXDTO.Тип(ПространствоИмен, "KeyOperation"); - ТипИзмерение = ФабрикаXDTO.Тип(ПространствоИмен, "Measurement"); - - Для Каждого ТекЗамер Из МассивыЗамеров Цикл - КлючеваяОперацияЗамеры = ТекЗамер.Значение; - - КлючеваяОперация = ФабрикаXDTO.Создать(ТипКлючеваяОперация); - КлючеваяОперация.name = КлючеваяОперацияЗамеры["name"]; - КлючеваяОперация.currentApdexValue = 0; - - minimalApdexValue = КлючеваяОперацияЗамеры["minimalApdexValue"]; - Если minimalApdexValue = Неопределено Тогда - minimalApdexValue = 0; - КонецЕсли; - КлючеваяОперация.minimalApdexValue = minimalApdexValue; - - КлючеваяОперация.priority = КлючеваяОперацияЗамеры["priority"]; - КлючеваяОперация.targetValue = КлючеваяОперацияЗамеры["targetValue"]; - КлючеваяОперация.uid = КлючеваяОперацияЗамеры["uid"]; - - Замеры = КлючеваяОперацияЗамеры["Замеры"]; - Для Каждого Замер Из Замеры Цикл - ЗамерXML = ФабрикаXDTO.Создать(ТипИзмерение); - ЗамерXML.value = Замер.value; - ЗамерXML.tUTC = Замер.tUTC; - ЗамерXML.userName = Замер.userName; - ЗамерXML.tSaveUTC = Замер.tSaveUTC; - ЗамерXML.sessionNumber = Замер.sessionNumber; - ЗамерXML.comment = Замер.comment; - - КлючеваяОперация.measurement.Добавить(ЗамерXML); - КонецЦикла; - - ФабрикаXDTO.ЗаписатьXML(ЗаписьXML, КлючеваяОперация); - КонецЦикла; - ЗаписьXML.ЗаписатьКонецЭлемента(); - ЗаписьXML.Закрыть(); - - Для Каждого КлючВыполнятьКаталог Из КаталогиЭкспорта Цикл - ВыполнятьКаталог = КлючВыполнятьКаталог.Значение; - Выполнять = ВыполнятьКаталог[0]; - Если НЕ Выполнять Тогда - Продолжить; - КонецЕсли; - - КаталогЭкспорта = ВыполнятьКаталог[1]; - Ключ = КлючВыполнятьКаталог.Ключ; - Если Ключ = ОценкаПроизводительностиКлиентСервер.ЛокальныйКаталогЭкспортаКлючЗадания() Тогда - СоздатьКаталог(КаталогЭкспорта); - КонецЕсли; - - КопироватьФайл(ИмяВременногоФайла, ПолноеИмяФайлаЭкспорта(КаталогЭкспорта, ДатаФормированияФайла, ".xml")); - КонецЦикла; - УдалитьФайлы(ИмяВременногоФайла); -КонецПроцедуры - -// Генерирует имя файла для экспорта -// -// Параметры: -// Каталог - Строка, -// ДатаФормированияФайла - Дата, дата и время выполнения замера -// РасширениеСТочкой - Строка, задающая расширение файла, в виде ".xxx". -// Возвращаемое значение: -// Строка - полный путь к файлу экспорта. -// -Функция ПолноеИмяФайлаЭкспорта(Каталог, ДатаФормированияФайла, РасширениеСТочкой) - - Разделитель = ?(ВРег(Лев(Каталог, 3)) = "FTP", "/", ПолучитьРазделительПути()); - Возврат УбратьРазделителиНаКонцеИмениФайла(Каталог, Разделитель) + Разделитель + Формат(ДатаФормированияФайла, "ДФ=""гггг-ММ-дд ЧЧ-мм-сс""") + РасширениеСТочкой; - -КонецФункции - -// Проверить путь на наличие завершающего слеша и если он есть, удалить его -// -// Параметры: -// ИмяФайла - Строка -// Разделитель - Строка -Функция УбратьРазделителиНаКонцеИмениФайла(Знач ИмяФайла, Разделитель) - - ДлинаПути = СтрДлина(ИмяФайла); - Если ДлинаПути = 0 Тогда - Возврат ИмяФайла; - КонецЕсли; - - Пока ДлинаПути > 0 И СтрЗаканчиваетсяНа(ИмяФайла, Разделитель) Цикл - ИмяФайла = Лев(ИмяФайла, ДлинаПути - 1); - ДлинаПути = СтрДлина(ИмяФайла); - КонецЦикла; - - Возврат ИмяФайла; - -КонецФункции - // Разбивает строку из нескольких объединенных слов в строку с отдельными словами. // Признаком начала нового слова считается символ в верхнем регистре. // @@ -414,8 +345,8 @@ Для ПозицияСимвола = 1 По СтрДлина(Строка) Цикл ТекСимвол = Сред(Строка, ПозицияСимвола, 1); Если ТекСимвол = ВРег(ТекСимвол) - И (СтроковыеФункцииКлиентСервер.ТолькоКириллицаВСтроке(ТекСимвол) - Или СтроковыеФункцииКлиентСервер.ТолькоЛатиницаВСтроке(ТекСимвол)) Тогда + И (ОценкаПроизводительностиКлиентСервер.ТолькоКириллицаВСтроке(ТекСимвол) + Или ОценкаПроизводительностиКлиентСервер.ТолькоЛатиницаВСтроке(ТекСимвол)) Тогда ПозицииСлов.Добавить(ПозицияСимвола); КонецЕсли; КонецЦикла; @@ -452,4 +383,465 @@ КонецФункции +// Текущее значение периода записи результатов замеров на сервере +// +// Возвращаемое значение: +// Число - значение в секундах. +// +Функция ПериодЗаписи() Экспорт + ТекущийПериод = Константы.ОценкаПроизводительностиПериодЗаписи.Получить(); + Возврат ?(ТекущийПериод >= 1, ТекущийПериод, 60); +КонецФункции + +// Процедура записи единичного замера +// +// Параметры: +// КлючеваяОперация - СправочникСсылка.КлючевыеОперации - ключевая операция +// либо Строка - название ключевой операции +// Длительность - Число +// ДатаНачалаКлючевойОперации - Дата. +// +Процедура ЗафиксироватьДлительностьКлючевойОперации( + КлючеваяОперация, + Длительность, + ДатаНачалаКлючевойОперации, + ДатаОкончанияКлючевойОперации, + ВесЗамера, + Комментарий, + Технологический = Ложь) + + Если БезопасныйРежим() <> Ложь Тогда + ЗаписьЖурналаРегистрации(НСтр("ru = 'Работа подсистемы оценка производительности в безопасном режиме не поддерживается'", Метаданные.ОсновнойЯзык.КодЯзыка), + УровеньЖурналаРегистрации.Информация,,,Строка(КлючеваяОперация)); + + Возврат; + КонецЕсли; + + УстановитьПривилегированныйРежим(Истина); + + Если ТипЗнч(КлючеваяОперация) = Тип("Строка") Тогда + КлючеваяОперацияСсылка = ОценкаПроизводительностиПовтИсп.ПолучитьКлючевуюОперациюПоИмени(КлючеваяОперация); + Иначе + КлючеваяОперацияСсылка = КлючеваяОперация; + КонецЕсли; + + Если Комментарий = Неопределено Тогда + Комментарий = ПараметрыСеанса.КомментарийЗамераВремени; + Иначе + ЧтениеJSON = Новый ЧтениеJSON(); + ЧтениеJSON.УстановитьСтроку(ПараметрыСеанса.КомментарийЗамераВремени); + КомментарийПоУмолчанию = ПрочитатьJSON(ЧтениеJSON, Истина); + КомментарийПоУмолчанию.Вставить("ДопИнф", Комментарий); + + ЗаписьJSON = Новый ЗаписьJSON; + ЗаписьJSON.УстановитьСтроку(Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет)); + ЗаписатьJSON(ЗаписьJSON, КомментарийПоУмолчанию); + Комментарий = ЗаписьJSON.Закрыть(); + КонецЕсли; + + Если НЕ Технологический Тогда + Запись = РегистрыСведений.ЗамерыВремени.СоздатьМенеджерЗаписи(); + Иначе + Запись = РегистрыСведений.ЗамерыВремениТехнологические.СоздатьМенеджерЗаписи(); + КонецЕсли; + + Запись.КлючеваяОперация = КлючеваяОперацияСсылка; + + // Получаем дату в UTC + Запись.ДатаНачалаЗамера = ДатаНачалаКлючевойОперации; + Запись.НомерСеанса = НомерСеансаИнформационнойБазы(); + + Запись.ВремяВыполнения = ?(Длительность = 0, 0.001, Длительность); // Длительность меньше разрешения таймера + Запись.ВесЗамера = ВесЗамера; + + Запись.ДатаЗаписи = Дата(1,1,1) + ТекущаяУниверсальнаяДатаВМиллисекундах()/1000; + Запись.ДатаЗаписиНачалоЧаса = НачалоЧаса(Запись.ДатаЗаписи); + Если ДатаОкончанияКлючевойОперации <> Неопределено Тогда + // Получаем дату в UTC + Запись.ДатаОкончания = ДатаОкончанияКлючевойОперации; + КонецЕсли; + Запись.Пользователь = ПользователиИнформационнойБазы.ТекущийПользователь(); + Запись.ДатаЗаписиЛокальная = ТекущаяДатаСеанса(); + Запись.Комментарий = Комментарий; + + Запись.Записать(); + +КонецПроцедуры + +// Процедура обработки регламентного задания по выгрузке данных +// +// Параметры: +// КаталогиЭкспорта - Структура со значением типа Массив. +// +Процедура ЭкспортОценкиПроизводительности(КаталогиЭкспорта, ДопПараметры = Неопределено) Экспорт + + Если ОценкаПроизводительностиСлужебный.ПодсистемаСуществует("СтандартныеПодсистемы.БазоваяФункциональность") Тогда + МодульОбщегоНазначения = ОценкаПроизводительностиСлужебный.ОбщийМодуль("ОбщегоНазначения"); + МодульОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(Метаданные.РегламентныеЗадания.ЭкспортОценкиПроизводительности); + КонецЕсли; + + // Если система отключена, то выгрузку данных делать не будем. + Если ДопПараметры = Неопределено И Не ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда + Возврат; + КонецЕсли; + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | МАКСИМУМ(Замеры.ДатаЗаписи) КАК ДатаЗамера + |ИЗ + | РегистрСведений.ЗамерыВремени КАК Замеры + |ГДЕ + | Замеры.ДатаЗаписи <= &ТекДата"; + + Если ДопПараметры = Неопределено Тогда + Запрос.УстановитьПараметр("ТекДата", ТекущаяУниверсальнаяДата() - 1); + Иначе + Запрос.УстановитьПараметр("ТекДата", ДопПараметры.ДатаОкончания); + КонецЕсли; + + Выборка = Запрос.Выполнить().Выбрать(); + Если Выборка.Следующий() И Выборка.ДатаЗамера <> Null Тогда + ВерхняяГраньДатыЗамеров = Выборка.ДатаЗамера; + Иначе + Возврат; + КонецЕсли; + + МассивыЗамеров = ЗамерыСРазделениемПоКлючевымОперациям(ВерхняяГраньДатыЗамеров, ДопПараметры); + + ПорядковыйНомерФайла = 0; + ТекДата = ТекущаяУниверсальнаяДатаВМиллисекундах(); + Если ДопПараметры <> Неопределено Тогда + ВременныйКаталог = ПолучитьИмяВременногоФайла(); + СоздатьКаталог(ВременныйКаталог); + + КаталогиЭкспорта = Новый Структура("ЛокальныйКаталогЭкспорта, FTPКаталогЭкспорта", Новый Массив, Новый Массив); + КаталогиЭкспорта.ЛокальныйКаталогЭкспорта.Добавить(Истина); + КаталогиЭкспорта.ЛокальныйКаталогЭкспорта.Добавить(ВременныйКаталог); + КаталогиЭкспорта.FTPКаталогЭкспорта.Добавить(Ложь); + КаталогиЭкспорта.FTPКаталогЭкспорта.Добавить(""); + КонецЕсли; + + Для Каждого МассивЗамеров Из МассивыЗамеров Цикл + ПорядковыйНомерФайла = ПорядковыйНомерФайла + 1; + ВыгрузитьРезультаты(КаталогиЭкспорта, МассивЗамеров, ТекДата, ПорядковыйНомерФайла); + КонецЦикла; + + Если ДопПараметры <> Неопределено Тогда + ФайлыДанных = НайтиФайлы(ВременныйКаталог, "*.xml"); + ЗаписьZipФайла = Новый ЗаписьZipФайла(); + ИмяАрхива = ПолучитьИмяВременногоФайла("zip"); + ЗаписьZipФайла.Открыть(ИмяАрхива,,,МетодСжатияZIP.Сжатие); + Для Каждого ФайлДанных Из ФайлыДанных Цикл + ЗаписьZipФайла.Добавить(ФайлДанных.ПолноеИмя); + КонецЦикла; + ЗаписьZipФайла.Записать(); + + ДвоичныеДанныеАрхив = Новый ДвоичныеДанные(ИмяАрхива); + ПоместитьВоВременноеХранилище(ДвоичныеДанныеАрхив, ДопПараметры.АдресХранилища); + + УдалитьФайлы(ВременныйКаталог); + УдалитьФайлы(ИмяАрхива); + КонецЕсли; + +КонецПроцедуры + +// Процедура обработки регламентного задания по очистке регистров замеров +Процедура ОчиститьРегистрыЗамерыВремени() Экспорт + + Если ОценкаПроизводительностиСлужебный.ПодсистемаСуществует("СтандартныеПодсистемы.БазоваяФункциональность") Тогда + МодульОбщегоНазначения = ОценкаПроизводительностиСлужебный.ОбщийМодуль("ОбщегоНазначения"); + МодульОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(Метаданные.РегламентныеЗадания.ЭкспортОценкиПроизводительности); + КонецЕсли; + + ГраницаУдаления = НачалоДня(ТекущаяУниверсальнаяДата() - 86400*Константы.ПериодХраненияЗамеров.Получить()); + + ЗапросЗамерыВремени = Новый Запрос; + ЗапросЗамерыВремени.Текст = " + |ВЫБРАТЬ + | МИНИМУМ(ДатаЗаписиНачалоЧаса) КАК ДатаЗаписиНачалоЧаса + |ИЗ + | РегистрСведений.ЗамерыВремени + |ГДЕ + | ДатаЗаписиНачалоЧаса < &ГраницаУдаления + |"; + ЗапросЗамерыВремени.УстановитьПараметр("ГраницаУдаления", ГраницаУдаления); + + ЗапросЗамерыВремениТехнологические = Новый Запрос; + ЗапросЗамерыВремениТехнологические.Текст = " + |ВЫБРАТЬ + | МИНИМУМ(ДатаЗаписиНачалоЧаса) КАК ДатаЗаписиНачалоЧаса + |ИЗ + | РегистрСведений.ЗамерыВремениТехнологические + |ГДЕ + | ДатаЗаписиНачалоЧаса < &ГраницаУдаления + |"; + ЗапросЗамерыВремениТехнологические.УстановитьПараметр("ГраницаУдаления", ГраницаУдаления); + + НаборЗаписей = РегистрыСведений.ЗамерыВремени.СоздатьНаборЗаписей(); + НаборЗаписейТехнологические = РегистрыСведений.ЗамерыВремениТехнологические.СоздатьНаборЗаписей(); + + ЕстьУдаление = Истина; + ЕстьУдалениеТехнологические = Истина; + Пока ЕстьУдаление ИЛИ ЕстьУдалениеТехнологические Цикл + + Если ЕстьУдаление Тогда + ЕстьУдаление = Ложь; + + Результат = ЗапросЗамерыВремени.Выполнить(); + Выборка = Результат.Выбрать(); + Выборка.Следующий(); + ДатаЗаписиНачалоЧаса = Выборка.ДатаЗаписиНачалоЧаса; + + Если НЕ ДатаЗаписиНачалоЧаса = Null Тогда + НаборЗаписей.Отбор.ДатаЗаписиНачалоЧаса.Установить(ДатаЗаписиНачалоЧаса); + НаборЗаписей.Записать(Истина); + ЕстьУдаление = Истина; + КонецЕсли; + КонецЕсли; + + Если ЕстьУдалениеТехнологические Тогда + ЕстьУдалениеТехнологические = Ложь; + Результат = ЗапросЗамерыВремениТехнологические.Выполнить(); + Выборка = Результат.Выбрать(); + Выборка.Следующий(); + ДатаЗаписиНачалоЧаса = Выборка.ДатаЗаписиНачалоЧаса; + Если НЕ ДатаЗаписиНачалоЧаса = Null Тогда + НаборЗаписейТехнологические.Отбор.ДатаЗаписиНачалоЧаса.Установить(ДатаЗаписиНачалоЧаса); + НаборЗаписейТехнологические.Записать(Истина); + ЕстьУдалениеТехнологические = Истина; + КонецЕсли; + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры + +// Регламентное задание экспорта +Функция ЗамерыСРазделениемПоКлючевымОперациям(ВерхняяГраньДатыЗамеров, ДопПараметры = Неопределено) + + Запрос = Новый Запрос; + + УровниПроизводительностиЧисло = Новый Соответствие; + УровниПроизводительностиЧисло.Вставить(Перечисления.УровниПроизводительности.Идеально, 1); + УровниПроизводительностиЧисло.Вставить(Перечисления.УровниПроизводительности.Отлично, 0.94); + УровниПроизводительностиЧисло.Вставить(Перечисления.УровниПроизводительности.Хорошо, 0.85); + УровниПроизводительностиЧисло.Вставить(Перечисления.УровниПроизводительности.Удовлетворительно, 0.70); + УровниПроизводительностиЧисло.Вставить(Перечисления.УровниПроизводительности.Плохо, 0.50); + + ТекстЗапроса = " + |ВЫБРАТЬ + | Замеры.КлючеваяОперация КАК КлючеваяОперация, + | Замеры.ДатаНачалаЗамера КАК ДатаНачалаЗамера, + | Замеры.ВремяВыполнения КАК ВремяВыполнения, + | Замеры.ВесЗамера КАК ВесЗамера, + | Замеры.Пользователь КАК Пользователь, + | Замеры.ДатаЗаписи КАК ДатаЗаписи, + | Замеры.НомерСеанса КАК НомерСеанса, + | Замеры.Комментарий КАК Комментарий, + | КлючевыеОперации.Наименование КАК КлючеваяОперацияСтрока, + | КлючевыеОперации.Приоритет КАК КлючеваяОперацияПриоритет, + | КлючевыеОперации.ЦелевоеВремя КАК КлючеваяОперацияЦелевоеВремя, + | КлючевыеОперации.МинимальноДопустимыйУровень КАК МинимальноДопустимыйУровень, + | КлючевыеОперации.ВыполненаСОшибкой КАК ВыполненаСОшибкой + |ИЗ + | РегистрСведений.ЗамерыВремени КАК Замеры + |ВНУТРЕННЕЕ СОЕДИНЕНИЕ + | Справочник.КлючевыеОперации КАК КлючевыеОперации + |ПО + | КлючевыеОперации.Ссылка = Замеры.КлючеваяОперация + |ГДЕ + | Замеры.ДатаЗаписи > &ДатаПоследнейВыгрузки + | И Замеры.ДатаЗаписи <= &ВерхняяГраньДатыЗамеров + |УПОРЯДОЧИТЬ ПО + | Замеры.КлючеваяОперация, + | Замеры.Комментарий + |"; + + Запрос.Текст = ТекстЗапроса; + + Если ДопПараметры = Неопределено Тогда + Запрос.УстановитьПараметр("ДатаПоследнейВыгрузки", Константы.ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC.Получить()); + Запрос.УстановитьПараметр("ВерхняяГраньДатыЗамеров", ВерхняяГраньДатыЗамеров); + Константы.ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC.Установить(ВерхняяГраньДатыЗамеров); + Иначе + Запрос.УстановитьПараметр("ДатаПоследнейВыгрузки", ДопПараметры.ДатаНачала); + Запрос.УстановитьПараметр("ВерхняяГраньДатыЗамеров", ДопПараметры.ДатаОкончания); + КонецЕсли; + + Результат = Запрос.Выполнить(); + + КоличествоЗамеровВФайле = Константы.КоличествоЗамеровВПакетеЭкспорта.Получить(); + КоличествоЗамеровВФайле = ?(КоличествоЗамеровВФайле <> 0, КоличествоЗамеровВФайле, 1000); + + ЗамерыПоФайлам = Новый Массив; + + ЗамерыСРазделением = Новый Соответствие; + ТекКоличествоЗамеров = 0; + + Выборка = Результат.Выбрать(); + Пока Выборка.Следующий() Цикл + КлючеваяОперация = ЗамерыСРазделением.Получить(Выборка.КлючеваяОперация); + + Если КлючеваяОперация = Неопределено Тогда + КлючеваяОперация = Новый Соответствие; + КлючеваяОперация.Вставить("uid", Строка(Выборка.КлючеваяОперация.УникальныйИдентификатор())); + КлючеваяОперация.Вставить("name", Выборка.КлючеваяОперацияСтрока); + КлючеваяОперация.Вставить("comments", Новый Соответствие); + КлючеваяОперация.Вставить("priority", Выборка.КлючеваяОперацияПриоритет); + КлючеваяОперация.Вставить("targetValue", Выборка.КлючеваяОперация.ЦелевоеВремя); + КлючеваяОперация.Вставить("minimalApdexValue", УровниПроизводительностиЧисло[Выборка.КлючеваяОперация.МинимальноДопустимыйУровень]); + КлючеваяОперация.Вставить("runningError", Выборка.ВыполненаСОшибкой); + + ЗамерыСРазделением.Вставить(Выборка.КлючеваяОперация, КлючеваяОперация); + КонецЕсли; + + Комментарий = ЗамерыСРазделением[Выборка.КлючеваяОперация]["comments"][Выборка.Комментарий]; + Если Комментарий = Неопределено Тогда + Комментарий = Новый Соответствие; + Комментарий.Вставить("Замеры", Новый Массив); + КлючеваяОперация["comments"].Вставить(Выборка.Комментарий, Комментарий); + КонецЕсли; + + КлючеваяОперацияЗамеры = Комментарий.Получить("Замеры"); + + ЗамерСтруктура = Новый Структура; + ЗамерСтруктура.Вставить("value", Выборка.ВремяВыполнения); + ЗамерСтруктура.Вставить("weight", Выборка.ВесЗамера); + ЗамерСтруктура.Вставить("tUTC", Выборка.ДатаНачалаЗамера); + ЗамерСтруктура.Вставить("userName", Выборка.Пользователь); + ЗамерСтруктура.Вставить("tSaveUTC", Выборка.ДатаЗаписи); + ЗамерСтруктура.Вставить("sessionNumber", Выборка.НомерСеанса); + ЗамерСтруктура.Вставить("comment", Выборка.Комментарий); + + КлючеваяОперацияЗамеры.Добавить(ЗамерСтруктура); + + ТекКоличествоЗамеров = ТекКоличествоЗамеров + 1; + + Если ТекКоличествоЗамеров = КоличествоЗамеровВФайле Тогда + ЗамерыПоФайлам.Добавить(ЗамерыСРазделением); + ЗамерыСРазделением = Новый Соответствие; + КлючеваяОперация = Неопределено; + ТекКоличествоЗамеров = 0; + КонецЕсли; + КонецЦикла; + ЗамерыПоФайлам.Добавить(ЗамерыСРазделением); + + Возврат ЗамерыПоФайлам; +КонецФункции + +// Сохраняет результаты вычисления APDEX в файл +// +// Параметры: +// КаталогиЭкспорта - Структура со значением типа Массив. +// ВыборкаАпдекс - Результат запроса +// МассивыЗамеров - Структура со значением типа Массив. +Процедура ВыгрузитьРезультаты(КаталогиЭкспорта, МассивыЗамеров, ТекДата, ПорядковыйНомерФайла) + + ПространствоИмен = "www.v8.1c.ru/ssl/performace-assessment/apdexExport/1.0.0.2"; + ИмяВременногоФайла = ПолучитьИмяВременногоФайла(".xml"); + + ЗаписьXML = Новый ЗаписьXML; + ЗаписьXML.ОткрытьФайл(ИмяВременногоФайла, "UTF-8"); + ЗаписьXML.ЗаписатьОбъявлениеXML(); + ЗаписьXML.ЗаписатьНачалоЭлемента("Performance", ПространствоИмен); + ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("prf", ПространствоИмен); + ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("xs", "http://www.w3.org/2001/XMLSchema"); + ЗаписьXML.ЗаписатьСоответствиеПространстваИмен("xsi", "http://www.w3.org/2001/XMLSchema-instance"); + + ЗаписьXML.ЗаписатьАтрибут("version", ПространствоИмен, "1.0.0.2"); + ЗаписьXML.ЗаписатьАтрибут("period", ПространствоИмен, Строка(Дата(1,1,1) + ТекДата/1000)); + + ТипКлючеваяОперация = ФабрикаXDTO.Тип(ПространствоИмен, "KeyOperation"); + ТипИзмерение = ФабрикаXDTO.Тип(ПространствоИмен, "Measurement"); + + Для Каждого ТекЗамер Из МассивыЗамеров Цикл + КлючеваяОперацияЗамеры = ТекЗамер.Значение; + + Для Каждого Комментарий Из КлючеваяОперацияЗамеры["comments"] Цикл + КлючеваяОперация = ФабрикаXDTO.Создать(ТипКлючеваяОперация); + КлючеваяОперация.name = КлючеваяОперацияЗамеры["name"]; + КлючеваяОперация.comment = Комментарий.Ключ; + КлючеваяОперация.priority = КлючеваяОперацияЗамеры["priority"]; + КлючеваяОперация.targetValue = КлючеваяОперацияЗамеры["targetValue"]; + КлючеваяОперация.uid = КлючеваяОперацияЗамеры["uid"]; + КлючеваяОперация.runningError = КлючеваяОперацияЗамеры["runningError"]; + + Замеры = Комментарий.Значение["Замеры"]; + Для Каждого Замер Из Замеры Цикл + ЗамерXML = ФабрикаXDTO.Создать(ТипИзмерение); + ЗамерXML.value = Замер.value; + ЗамерXML.weight = Замер.weight; + ЗамерXML.tUTC = Замер.tUTC; + ЗамерXML.userName = Замер.userName; + ЗамерXML.tSaveUTC = Замер.tSaveUTC; + ЗамерXML.sessionNumber = Замер.sessionNumber; + + КлючеваяОперация.measurement.Добавить(ЗамерXML); + КонецЦикла; + + ФабрикаXDTO.ЗаписатьXML(ЗаписьXML, КлючеваяОперация); + КонецЦикла; + КонецЦикла; + ЗаписьXML.ЗаписатьКонецЭлемента(); + ЗаписьXML.Закрыть(); + + Для Каждого КлючВыполнятьКаталог Из КаталогиЭкспорта Цикл + ВыполнятьКаталог = КлючВыполнятьКаталог.Значение; + Выполнять = ВыполнятьКаталог[0]; + Если НЕ Выполнять Тогда + Продолжить; + КонецЕсли; + + КаталогЭкспорта = ВыполнятьКаталог[1]; + Ключ = КлючВыполнятьКаталог.Ключ; + Если Ключ = ОценкаПроизводительностиКлиентСервер.ЛокальныйКаталогЭкспортаКлючЗадания() Тогда + СоздатьКаталог(КаталогЭкспорта); + КонецЕсли; + + КопироватьФайл(ИмяВременногоФайла, ПолноеИмяФайлаЭкспорта(КаталогЭкспорта, ТекДата, ПорядковыйНомерФайла, ".xml")); + КонецЦикла; + УдалитьФайлы(ИмяВременногоФайла); +КонецПроцедуры + +// Генерирует имя файла для экспорта +// +// Параметры: +// Каталог - Строка, +// ДатаФормированияФайла - Дата, дата и время выполнения замера +// РасширениеСТочкой - Строка, задающая расширение файла, в виде ".xxx". +// Возвращаемое значение: +// Строка - полный путь к файлу экспорта. +// +Функция ПолноеИмяФайлаЭкспорта(Каталог, ТекДата, ПорядковыйНомерФайла, РасширениеСТочкой) + + ДатаФормированияФайла = Дата(1,1,1) + ТекДата/1000; + ПорядковыйНомерФайлаФормат = Формат(ПорядковыйНомерФайла, "ЧЦ=5; ЧВН=; ЧГ=0"); + + Разделитель = ?(ВРег(Лев(Каталог, 3)) = "FTP", "/", ПолучитьРазделительПути()); + Возврат УбратьРазделителиНаКонцеИмениФайла(Каталог, Разделитель) + Разделитель + Формат(ДатаФормированияФайла, "ДФ='гггг-ММ-дд ЧЧ-мм-сс-" + ПорядковыйНомерФайлаФормат + "'") + РасширениеСТочкой; + +КонецФункции + +// Проверить путь на наличие завершающего слеша и если он есть, удалить его +// +// Параметры: +// ИмяФайла - Строка +// Разделитель - Строка +Функция УбратьРазделителиНаКонцеИмениФайла(Знач ИмяФайла, Разделитель) + + ДлинаПути = СтрДлина(ИмяФайла); + Если ДлинаПути = 0 Тогда + Возврат ИмяФайла; + КонецЕсли; + + Пока ДлинаПути > 0 И СтрЗаканчиваетсяНа(ИмяФайла, Разделитель) Цикл + ИмяФайла = Лев(ИмяФайла, ДлинаПути - 1); + ДлинаПути = СтрДлина(ИмяФайла); + КонецЦикла; + + Возврат ИмяФайла; + +КонецФункции + #КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/ОценкаПроизводительности/ОценкаПроизводительности.mdo b/SSL/src/CommonModules/ОценкаПроизводительности/ОценкаПроизводительности.mdo index 03d4bfe20..cf715bd9b 100644 --- a/SSL/src/CommonModules/ОценкаПроизводительности/ОценкаПроизводительности.mdo +++ b/SSL/src/CommonModules/ОценкаПроизводительности/ОценкаПроизводительности.mdo @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="c24f0014-fc8c-485b-9743-0a1398d02749"> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="8b83324c-e10e-49d1-99d7-5bc468c25975"> <name>ОценкаПроизводительности</name> <synonym> <key>ru</key> diff --git a/SSL/src/CommonModules/ОценкаПроизводительностиВызовСервера/Module.bsl b/SSL/src/CommonModules/ОценкаПроизводительностиВызовСервера/Module.bsl index 71d62f165..2bf3959a8 100644 --- a/SSL/src/CommonModules/ОценкаПроизводительностиВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/ОценкаПроизводительностиВызовСервера/Module.bsl @@ -12,58 +12,127 @@ // // Возвращаемое значение: // Число - текущее значение периода записи замеров на сервере в секундах в случае записи замеров. -// +//Функция ЗафиксироватьДлительностьКлючевыхОпераций(Замеры, ИнформацияПрограммыПросмотра) Экспорт Функция ЗафиксироватьДлительностьКлючевыхОпераций(АдресХранилища) Экспорт + ПериодЗаписи = ОценкаПроизводительности.ПериодЗаписи(); + Если МонопольныйРежим() Тогда - Возврат Неопределено; + Возврат ПериодЗаписи; КонецЕсли; - Замеры = ПолучитьИзВременногоХранилища(АдресХранилища); - - Для Каждого КлючеваяОперацияЗамер Из Замеры Цикл - КлючеваяОперацияСсылка = КлючеваяОперацияЗамер.Ключ; - Буфер = КлючеваяОперацияЗамер.Значение; - Для Каждого ДатаДанные Из Буфер Цикл - Данные = ДатаДанные.Значение; - Длительность = Данные.Получить("Длительность"); - Если Длительность = Неопределено Тогда - // Неоконченный замер, писать его пока рано - Продолжить; - КонецЕсли; - ОценкаПроизводительности.ЗафиксироватьДлительностьКлючевойОперации( - КлючеваяОперацияСсылка, - Длительность, - Данные["ДатаНачала"], - Данные["ДатаОкончания"], - Данные["Комментарий"], - Данные["Технологический"]); - КонецЦикла; - КонецЦикла; + Если НЕ Константы.ВыполнятьЗамерыПроизводительности.Получить() Тогда + Возврат ПериодЗаписи; + КонецЕсли; - Возврат ПериодЗаписи(); + ЗамерыДляЗаписи = ПолучитьИзВременногоХранилища(АдресХранилища); + Замеры = ЗамерыДляЗаписи.ЗамерыЗавершенные; + ИнформацияПрограммыПросмотра = ЗамерыДляЗаписи.ИнформацияПрограммыПросмотра; + + УстановитьПривилегированныйРежим(Истина); + + НаборЗаписей = РегистрыСведений.ЗамерыВремени.СоздатьНаборЗаписей(); + НаборЗаписейТехнологический = РегистрыСведений.ЗамерыВремениТехнологические.СоздатьНаборЗаписей(); + НомерСеанса = НомерСеансаИнформационнойБазы(); + ДатаЗаписи = Дата(1,1,1) + ТекущаяУниверсальнаяДатаВМиллисекундах()/1000; + ДатаЗаписиНачалоЧаса = НачалоЧаса(ДатаЗаписи); + Пользователь = ПользователиИнформационнойБазы.ТекущийПользователь(); + ДатаЗаписиЛокальная = ТекущаяДатаСеанса(); + + ЧтениеJSON = Новый ЧтениеJSON(); + ЧтениеJSON.УстановитьСтроку(ПараметрыСеанса.КомментарийЗамераВремени); + КомментарийПоУмолчанию = ПрочитатьJSON(ЧтениеJSON, Истина); + КомментарийПоУмолчанию.Вставить("ИнфКл", ИнформацияПрограммыПросмотра); + + ЗаписьJSON = Новый ЗаписьJSON; + ЗаписьJSON.УстановитьСтроку(Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет)); + ЗаписатьJSON(ЗаписьJSON, КомментарийПоУмолчанию); + КомментарийПоУмолчаниюСтрока = ЗаписьJSON.Закрыть(); + + Для Каждого Замер Из Замеры Цикл + ПараметрыЗамера = Замер.Значение; + Длительность = (ПараметрыЗамера["ВремяОкончания"] - ПараметрыЗамера["ВремяНачала"])/1000; + Длительность = ?(Длительность = 0, 0.001, Длительность); + + Если ПараметрыЗамера["Технологический"] Тогда + НоваяЗапись = НаборЗаписейТехнологический.Добавить(); + Иначе + НоваяЗапись = НаборЗаписей.Добавить(); + КонецЕсли; + + КлючеваяОперация = ПараметрыЗамера["КлючеваяОперация"]; + ВыполненаСОшибкой = ПараметрыЗамера["ВыполненаСОшибкой"]; + + Если НЕ ЗначениеЗаполнено(КлючеваяОперация) Тогда + Продолжить; + КонецЕсли; + + Если ТипЗнч(КлючеваяОперация) = Тип("Строка") Тогда + КлючеваяОперацияСсылка = ОценкаПроизводительностиПовтИсп.ПолучитьКлючевуюОперациюПоИмени(КлючеваяОперация, ВыполненаСОшибкой); + Иначе + КлючеваяОперацияСсылка = КлючеваяОперация; + КонецЕсли; + + + Если ПараметрыЗамера["Комментарий"] <> Неопределено Тогда + КомментарийПоУмолчанию.Вставить("ДопИнф", ПараметрыЗамера["Комментарий"]); + ЗаписьJSON = Новый ЗаписьJSON; + ЗаписьJSON.УстановитьСтроку(Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет)); + ЗаписатьJSON(ЗаписьJSON, КомментарийПоУмолчанию); + КомментарийПоУмолчаниюСтрока = ЗаписьJSON.Закрыть(); + КонецЕсли; + + НоваяЗапись.КлючеваяОперация = КлючеваяОперацияСсылка; + НоваяЗапись.ДатаНачалаЗамера = ПараметрыЗамера["ВремяНачала"]; + НоваяЗапись.НомерСеанса = НомерСеанса; + НоваяЗапись.ВремяВыполнения = Длительность; + НоваяЗапись.ВесЗамера = ПараметрыЗамера["ВесЗамера"]; + НоваяЗапись.ДатаЗаписи = ДатаЗаписи; + НоваяЗапись.ДатаЗаписиНачалоЧаса = ДатаЗаписиНачалоЧаса; + НоваяЗапись.ДатаОкончания = ПараметрыЗамера["ВремяОкончания"]; + + НоваяЗапись.Пользователь = Пользователь; + НоваяЗапись.ДатаЗаписиЛокальная = ДатаЗаписиЛокальная; + НоваяЗапись.Комментарий = КомментарийПоУмолчаниюСтрока; + КонецЦикла; + + Если НаборЗаписей.Количество() > 0 Тогда + Попытка + НаборЗаписей.Записать(Ложь); + Исключение + ЗаписьЖурналаРегистрации(НСтр("ru = 'Не удалось сохранить замеры производительности'", Метаданные.ОсновнойЯзык.КодЯзыка), + УровеньЖурналаРегистрации.Ошибка,,,ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + КонецПопытки; + КонецЕсли; + + Если НаборЗаписейТехнологический.Количество() > 0 Тогда + Попытка + НаборЗаписейТехнологический.Записать(Ложь); + Исключение + ЗаписьЖурналаРегистрации(НСтр("ru = 'Не удалось сохранить технологические замеры производительности'", Метаданные.ОсновнойЯзык.КодЯзыка), + УровеньЖурналаРегистрации.Ошибка,,,ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + КонецПопытки; + КонецЕсли; + + Возврат ПериодЗаписи; КонецФункции -// Текущее значение периода записи результатов замеров на сервере +// Параметры оценки производительности // // Возвращаемое значение: -// Число - значение в секундах. -Функция ПериодЗаписи() Экспорт +// Структура - параметры, полученные на сервере. +Функция ПолучитьПараметрыНаСервере() Экспорт + + Параметры = Новый Структура("ДатаИВремяНаСервере, ПериодЗаписи"); + Параметры.ДатаИВремяНаСервере = ТекущаяУниверсальнаяДатаВМиллисекундах(); УстановитьПривилегированныйРежим(Истина); ТекущийПериод = Константы.ОценкаПроизводительностиПериодЗаписи.Получить(); + Параметры.ПериодЗаписи = ?(ТекущийПериод >= 1, ТекущийПериод, 60); - Возврат ?(ТекущийПериод >= 1, ТекущийПериод, 60); + Возврат Параметры; КонецФункции -// Текущая дата на сервере -// -// Возвращаемое значение: -// Число - текущая универсальная дата в миллисекундах. -Функция ДатаИВремяНаСервере() Экспорт - Возврат Дата(1,1,1) + ТекущаяУниверсальнаяДатаВМиллисекундах()/1000; -КонецФункции - #КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/ОценкаПроизводительностиВызовСервера/ОценкаПроизводительностиВызовСервера.mdo b/SSL/src/CommonModules/ОценкаПроизводительностиВызовСервера/ОценкаПроизводительностиВызовСервера.mdo index 5976b77b8..7f9235d3a 100644 --- a/SSL/src/CommonModules/ОценкаПроизводительностиВызовСервера/ОценкаПроизводительностиВызовСервера.mdo +++ b/SSL/src/CommonModules/ОценкаПроизводительностиВызовСервера/ОценкаПроизводительностиВызовСервера.mdo @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="8b81b415-adaf-42ca-bc89-1857d00b96b3"> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="ddb75923-27bf-4996-b024-4bc6eb0f59a7"> <name>ОценкаПроизводительностиВызовСервера</name> <synonym> <key>ru</key> diff --git a/SSL/src/CommonModules/ОценкаПроизводительностиВызовСервераПовтИсп/Module.bsl b/SSL/src/CommonModules/ОценкаПроизводительностиВызовСервераПовтИсп/Module.bsl index 56f3a915f..c7865e7d0 100644 --- a/SSL/src/CommonModules/ОценкаПроизводительностиВызовСервераПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/ОценкаПроизводительностиВызовСервераПовтИсп/Module.bsl @@ -3,7 +3,7 @@ // //////////////////////////////////////////////////////////////////////////////// -#Область СлужебныеПроцедурыИФункции +#Область СлужебныйПрограммныйИнтерфейс // Функция определяет необходимость выполнения замеров. // diff --git a/SSL/src/CommonModules/ОценкаПроизводительностиГлобальный/Module.bsl b/SSL/src/CommonModules/ОценкаПроизводительностиГлобальный/Module.bsl index 37546402a..ea6cb24fa 100644 --- a/SSL/src/CommonModules/ОценкаПроизводительностиГлобальный/Module.bsl +++ b/SSL/src/CommonModules/ОценкаПроизводительностиГлобальный/Module.bsl @@ -1,19 +1,19 @@ //////////////////////////////////////////////////////////////////////////////// -// Обработчики ожидания для подсистемы оценки производительности +// Обработчики ожидания для подсистемы оценки производительности. // //////////////////////////////////////////////////////////////////////////////// #Область СлужебныеПроцедурыИФункции -// Процедура заканчивает замер времени выполнения ключевой операции +// Процедура заканчивает замер времени выполнения ключевой операции. // Вызывается из обработчика ожидания. Процедура ЗакончитьЗамерВремениАвто() Экспорт - ОценкаПроизводительностиКлиент.ЗакончитьЗамерВремениАвтоНеГлобальный(); - + ОценкаПроизводительностиКлиент.ЗавершитьЗамерВремениНаКлиентеАвто(); + КонецПроцедуры -// Процедура вызывает функцию записи результатов замеров на сервере +// Процедура вызывает функцию записи результатов замеров на сервере. // Вызывается из обработчика ожидания. Процедура ЗаписатьРезультатыАвто() Экспорт diff --git a/SSL/src/CommonModules/ОценкаПроизводительностиКлиент/Module.bsl b/SSL/src/CommonModules/ОценкаПроизводительностиКлиент/Module.bsl index 54ebefb1a..0252cb80a 100644 --- a/SSL/src/CommonModules/ОценкаПроизводительностиКлиент/Module.bsl +++ b/SSL/src/CommonModules/ОценкаПроизводительностиКлиент/Module.bsl @@ -3,22 +3,465 @@ // //////////////////////////////////////////////////////////////////////////////// -#Область СлужебныеПроцедурыИФункции +#Область ПрограммныйИнтерфейс -// Метод завершающий замер времени на клиенте +// Начинает замер времени ключевой операции. +// Результат замера будет записан в регистр сведений ЗамерыВремени. // -Процедура ЗакончитьЗамерВремениАвтоНеГлобальный() Экспорт +// Параметры: +// АвтоЗавершение - Булево - признак автоматического завершения замера. +// Истина - завершение замера будет выполнено автоматически +// через глобальный обработчик ожидания. +// Ложь - завершить замер необходимо явно вызовом процедуры +// ЗавершитьЗамерВремени. +// КлючеваяОперация - Строка - имя ключевой операции. Если Неопределено> то ключевую операцию +// необходимо указать явно вызовом процедуры +// УстановитьКлючевуюОперациюЗамера. +// +// Возвращаемое значение: +// УникальныйИдентификатор - уникальный идентификатор замера, который позволяет идентифицировать замер. +// +Функция НачатьЗамерВремени(АвтоЗавершение = Истина, КлючеваяОперация = Неопределено) Экспорт - ЗакончитьЗамерВремени(); + УИДЗамера = Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000"); + + Если ВыполнятьЗамерыПроизводительности() Тогда + УИДЗамера = Новый УникальныйИдентификатор(); + Параметры = Новый Структура; + Параметры.Вставить("КлючеваяОперация", КлючеваяОперация); + Параметры.Вставить("УИДЗамера", УИДЗамера); + Параметры.Вставить("АвтоЗавершение", АвтоЗавершение); + Параметры.Вставить("ВыполненаСОшибкой", Ложь); + + НачатьЗамерВремениНаКлиентеСлужебный(Параметры); + КонецЕсли; + + Возврат УИДЗамера; + +КонецФункции + +// Начинает технологический замер времени ключевой операции. +// Результат замера будет записан в РегистрСведений.ЗамерыВремени. +// +// Параметры: +// АвтоЗавершение - Булево - признак автоматического завершения замера. +// Истина - завершение замера будет выполнено автоматически +// через глобальный обработчик ожидания. +// Ложь - завершить замер необходимо явно вызовом процедуры +// ЗавершитьЗамерВремени. +// КлючеваяОперация - Строка - имя ключевой операции. Если Неопределено> то ключевую операцию +// необходимо указать явно вызовом процедуры +// УстановитьКлючевуюОперациюЗамера. +// +// Возвращаемое значение: +// УникальныйИдентификатор - уникальный идентификатор замера, который позволяет идентифицировать замер. +// +Функция НачатьЗамерВремениТехнологический(АвтоЗавершение = Истина, КлючеваяОперация = Неопределено) Экспорт + + УИДЗамера = Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000"); + + Если ВыполнятьЗамерыПроизводительности() Тогда + УИДЗамера = Новый УникальныйИдентификатор(); + Параметры = Новый Структура; + Параметры.Вставить("КлючеваяОперация", КлючеваяОперация); + Параметры.Вставить("УИДЗамера", УИДЗамера); + Параметры.Вставить("АвтоЗавершение", АвтоЗавершение); + Параметры.Вставить("Технологический", Истина); + Параметры.Вставить("ВыполненаСОшибкой", Ложь); + + НачатьЗамерВремениНаКлиентеСлужебный(Параметры); + КонецЕсли; + + Возврат УИДЗамера; + +КонецФункции + +// Завершает замер времени на клиенте. +// +// Параметры: +// УИДЗамера - УникальныйИдентификатор - уникальный идентификатор замера. +// +Процедура ЗавершитьЗамерВремени(УИДЗамера) Экспорт + + Если ВыполнятьЗамерыПроизводительности() Тогда + ВремяОкончания = ТекущаяУниверсальнаяДатаВМиллисекундах(); + ЗавершитьЗамерВремениСлужебный(УИДЗамера, ВремяОкончания); + + Замеры = ПараметрыПриложения["СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"]["Замеры"]; + Замер = Замеры[УИДЗамера]; + Если Замер <> Неопределено Тогда + ЗамерыЗавершенные = ПараметрыПриложения["СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"]["ЗамерыЗавершенные"]; + ЗамерыЗавершенные.Вставить(УИДЗамера, Замер); + Замеры.Удалить(УИДЗамера); + КонецЕсли; + КонецЕсли; КонецПроцедуры -// Метод завершающий замер времени на клиенте +// Устанавливает параметры замера. // -Процедура ЗакончитьРучнойЗамерВремениНеГлобальный(УИДЗамера) Экспорт +// Параметры: +// УИДЗамера - УникальныйИдентификатор - уникальный идентификатор замера. +// ПараметрыЗамера - Структура - структура со свойствами: +// * КлючеваяОперация - Строка - имя ключевой операции. +// * ВесЗамера - Число - количественный показатель сложности замера +// * Комментарий - Строка, Соответствие - дополнительная произвольной информации замера. +// * ВыполненаСОшибкой - Булево - признак выполнения замера с ошибкой, +// см. процедуру УстановитьПризнакОшибкиЗамера. +// +Процедура УстановитьПараметрыЗамера(УИДЗамера, ПараметрыЗамера) Экспорт + Если ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда - ЗакончитьЗамерВремени(УИДЗамера); + ИмяПараметра = "СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"; + Замеры = ПараметрыПриложения[ИмяПараметра]["Замеры"]; + Для Каждого Параметр Из ПараметрыЗамера Цикл + Замеры[УИДЗамера][Параметр.Ключ] = Параметр.Значение; + КонецЦикла; + КонецЕсли; + +КонецПроцедуры + +// Устанавливает ключевую операцию замера. +// +// Параметры: +// УИДЗамера - УникальныйИдентификатор - уникальный идентификатор замера. +// КлючеваяОперация - Строка - наименование ключевой операции. +// +// Если на момент начала замера имя ключевой операции еще неизвестно, +// то с помощью этой процедуры в любой момент до завершения замера можно +// доопределить имя ключевой операции. +// Например, при проведении документа, т.к. в момент начала проведения +// мы не можем гарантировать, что проведение документа завершиться и не будет отказа. +// +// &НаКлиенте +// Процедура ПередЗаписью(Отказ, ПараметрыЗаписи) +// Если ПараметрыЗаписи.РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда +// ИдентификаторЗамераПроведение = ОценкаПроизводительностиКлиент.НачатьЗамерВремени(Истина); +// КонецЕсли; +// КонецПроцедуры +// +// &НаКлиенте +// Процедура ПослеЗаписи(ПараметрыЗаписи) +// Если ПараметрыЗаписи.РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда +// ОценкаПроизводительностиКлиент.УстановитьКлючевуюОперациюЗамера(ИдентификаторЗамераПроведение, "_ДемоПроведениеДокумента"); +// КонецЕсли; +// КонецПроцедуры +// +Процедура УстановитьКлючевуюОперациюЗамера(УИДЗамера, КлючеваяОперация) Экспорт + + Если ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда + ИмяПараметра = "СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"; + Замеры = ПараметрыПриложения[ИмяПараметра]["Замеры"]; + Замеры[УИДЗамера]["КлючеваяОперация"] = КлючеваяОперация; + КонецЕсли; + +КонецПроцедуры + +// Устанавливает вес операции замера. +// +// Параметры: +// УИДЗамера - УникальныйИдентификатор - уникальный идентификатор замера. +// ВесЗамера - Число(10,0) - количественный показатель сложности +// замера, например количество строк в документе. +// +Процедура УстановитьВесЗамера(УИДЗамера, ВесЗамера) Экспорт + + Если ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда + ИмяПараметра = "СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"; + Замеры = ПараметрыПриложения[ИмяПараметра]["Замеры"]; + Замеры[УИДЗамера]["ВесЗамера"] = ВесЗамера; + КонецЕсли; + +КонецПроцедуры + +// Устанавливает комментарий операции замера. +// +// Параметры: +// УИДЗамера - УникальныйИдентификатор - уникальный идентификатор замера. +// Комментарий - Строка(900), Соответствие - дополнительная произвольной информации замера. +// +Процедура УстановитьКомментарийЗамера(УИДЗамера, Комментарий) Экспорт + + Если ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда + ИмяПараметра = "СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"; + Замеры = ПараметрыПриложения[ИмяПараметра]["Замеры"]; + Замеры[УИДЗамера]["Комментарий"] = Комментарий; + КонецЕсли; + +КонецПроцедуры + +// Устанавливает признак ошибки операции замера. +// +// Параметры: +// УИДЗамера - УникальныйИдентификатор - уникальный идентификатор замера. +// Признак - Булево - признак замера. Истина - замер выполнился без ошибок. +// Ложь - при выполнении замера есть ошибка. +// +// При проведении замеров производительности ключевые операции разделяются на "Хорошие" +// и "Плохие". Для примера, если документ при проведении прошел все проверки, не возникло исключений, +// то это "Хорошая" ключевая операция. Если же документ при проведении не прошел проверку заполнения, +// то это "Плохая" ключевая операция, т.е. не выполнялся весь программный код при проведении и такой +// замер может быть намного меньше "Хорошего". +// +// Например, +// &НаКлиенте +// Процедура ПередЗаписью(Отказ, ПараметрыЗаписи) +// Если ПараметрыЗаписи.РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда +// ИдентификаторЗамераПроведение = ОценкаПроизводительностиКлиент.НачатьЗамерВремени(Истина, "_ДемоПроведениеДокументаОшибка"); +// ОценкаПроизводительностиКлиент.УстановитьПризнакОшибкиЗамера(ИдентификаторЗамераПроведение, Истина); +// КонецЕсли; +// КонецПроцедуры +// +// &НаКлиенте +// Процедура ПослеЗаписи(ПараметрыЗаписи) +// Если ПараметрыЗаписи.РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда +// ОценкаПроизводительностиКлиент.УстановитьКлючевуюОперациюЗамера(ИдентификаторЗамераПроведение, "_ДемоПроведениеДокумента"); +// ОценкаПроизводительностиКлиент.УстановитьПризнакОшибкиЗамера(ИдентификаторЗамераПроведение, Ложь); +// КонецЕсли; +// КонецПроцедуры +// +Процедура УстановитьПризнакОшибкиЗамера(УИДЗамера, Признак) Экспорт + + Если ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда + ИмяПараметра = "СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"; + Замеры = ПараметрыПриложения[ИмяПараметра]["Замеры"]; + Замеры[УИДЗамера]["ВыполненаСОшибкой"] = Признак; + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныйПрограммныйИнтерфейс + +// Начинает замер времени ключевой операции. +// Результат замера будет записан в регистр сведений ЗамерыВремени. +// +// Параметры: +// Смещение - Число - дата и время начала замера в миллисекундах (см. ТекущаяУниверсальнаяДатаВМиллисекундах). +// АвтоЗавершение - Булево - признак автоматического завершения замера. +// Истина - завершение замера будет выполнено автоматически +// через глобальный обработчик ожидания. +// Ложь - завершить замер необходимо явно вызовом процедуры +// ЗавершитьЗамерВремени. +// КлючеваяОперация - Строка - имя ключевой операции. Если Неопределено> то ключевую операцию +// необходимо указать явно вызовом процедуры +// УстановитьКлючевуюОперациюЗамера. +// +// Возвращаемое значение: +// УникальныйИдентификатор - уникальный идентификатор замера, который позволяет идентифицировать замер. +// +Функция НачатьЗамерВремениСоСмещением(Смещение, АвтоЗавершение = Истина, КлючеваяОперация = Неопределено) Экспорт + + УИДЗамера = Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000"); + + Если ВыполнятьЗамерыПроизводительности() Тогда + УИДЗамера = Новый УникальныйИдентификатор(); + Параметры = Новый Структура; + Параметры.Вставить("КлючеваяОперация", КлючеваяОперация); + Параметры.Вставить("УИДЗамера", УИДЗамера); + Параметры.Вставить("АвтоЗавершение", АвтоЗавершение); + Параметры.Вставить("ВыполненаСОшибкой", Ложь); + Параметры.Вставить("Смещение", Смещение); + + НачатьЗамерВремениНаКлиентеСлужебный(Параметры); + КонецЕсли; + + Возврат УИДЗамера; + +КонецФункции + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +Функция ВыполнятьЗамерыПроизводительности() + + ВыполнятьЗамерыПроизводительности = Ложь; + + ИмяПараметраСтандартныеПодсистемы = "СтандартныеПодсистемы.ПараметрыКлиента"; + + Если ПараметрыПриложения[ИмяПараметраСтандартныеПодсистемы] = Неопределено Тогда + ВыполнятьЗамерыПроизводительности = ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности(); + Иначе + Если ПараметрыПриложения[ИмяПараметраСтандартныеПодсистемы].Свойство("ОценкаПроизводительности") Тогда + ВыполнятьЗамерыПроизводительности = ПараметрыПриложения[ИмяПараметраСтандартныеПодсистемы]["ОценкаПроизводительности"]["ВыполнятьЗамерыПроизводительности"]; + Иначе + ВыполнятьЗамерыПроизводительности = ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности(); + КонецЕсли; + КонецЕсли; + + Возврат ВыполнятьЗамерыПроизводительности; + +КонецФункции + +Процедура НачатьЗамерВремениНаКлиентеСлужебный(Параметры) + + ВремяНачала = ТекущаяУниверсальнаяДатаВМиллисекундах(); + + Если ПараметрыПриложения = Неопределено Тогда + ПараметрыПриложения = Новый Соответствие; + КонецЕсли; + + ИмяПараметра = "СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"; + Если ПараметрыПриложения[ИмяПараметра] = Неопределено Тогда + ПараметрыПриложения.Вставить(ИмяПараметра, Новый Структура); + ПараметрыПриложения[ИмяПараметра].Вставить("Замеры", Новый Соответствие); + ПараметрыПриложения[ИмяПараметра].Вставить("ЗамерыЗавершенные", Новый Соответствие); + ПараметрыПриложения[ИмяПараметра].Вставить("ЕстьОбработчик", Ложь); + ПараметрыПриложения[ИмяПараметра].Вставить("ВремяПодключенияОбработчика", ВремяНачала); + + ИмяПараметраСтандартныеПодсистемы = "СтандартныеПодсистемы.ПараметрыКлиента"; + Если ПараметрыПриложения[ИмяПараметраСтандартныеПодсистемы] = Неопределено Тогда + ПараметрыОценкиПроизводительности = ОценкаПроизводительностиВызовСервера.ПолучитьПараметрыНаСервере(); + ТекущийПериодЗаписи = ПараметрыОценкиПроизводительности.ПериодЗаписи; + ДатаИВремяНаСервере = ПараметрыОценкиПроизводительности.ДатаИВремяНаСервере; + + // Получаем дату в UTC + ДатаИВремяНаКлиенте = ТекущаяУниверсальнаяДатаВМиллисекундах(); + ПараметрыПриложения[ИмяПараметра].Вставить("СмещениеДатыКлиента", ДатаИВремяНаСервере - ДатаИВремяНаКлиенте); + Иначе + ПараметрыПриложенияСтандартныеПодсистемы = ПараметрыПриложения[ИмяПараметраСтандартныеПодсистемы]; + Если ПараметрыПриложенияСтандартныеПодсистемы.Свойство("ОценкаПроизводительности") Тогда + ТекущийПериодЗаписи = ПараметрыПриложенияСтандартныеПодсистемы["ОценкаПроизводительности"]["ПериодЗаписи"]; + ПараметрыПриложения[ИмяПараметра].Вставить("СмещениеДатыКлиента", ПараметрыПриложенияСтандартныеПодсистемы["СмещениеДатыКлиента"]); + Иначе + ПараметрыОценкиПроизводительности = ОценкаПроизводительностиВызовСервера.ПолучитьПараметрыНаСервере(); + ТекущийПериодЗаписи = ПараметрыОценкиПроизводительности.ПериодЗаписи; + ДатаИВремяНаСервере = ПараметрыОценкиПроизводительности.ДатаИВремяНаСервере; + + // Получаем дату в UTC + ДатаИВремяНаКлиенте = ТекущаяУниверсальнаяДатаВМиллисекундах(); + ПараметрыПриложения[ИмяПараметра].Вставить("СмещениеДатыКлиента", ДатаИВремяНаСервере - ДатаИВремяНаКлиенте); + КонецЕсли; + КонецЕсли; + + ИнформацияПрограммыПросмотра = ""; + #Если ТолстыйКлиентУправляемоеПриложение Тогда + ИнформацияПрограммыПросмотра = "ТолстыйКлиентУправляемоеПриложение"; + #ИначеЕсли ТолстыйКлиентОбычноеПриложение Тогда + ИнформацияПрограммыПросмотра = "ТолстыйКлиент"; + #ИначеЕсли ТонкийКлиент Тогда + ИнформацияПрограммыПросмотра = "ТонкийКлиент"; + #ИначеЕсли ВебКлиент Тогда + ИнфоКлиента = Новый СистемнаяИнформация(); + ИнформацияПрограммыПросмотра = ИнфоКлиента.ИнформацияПрограммыПросмотра; + #КонецЕсли + ПараметрыПриложения[ИмяПараметра].Вставить("ИнформацияПрограммыПросмотра", ИнформацияПрограммыПросмотра); + + ПодключитьОбработчикОжидания("ЗаписатьРезультатыАвто", ТекущийПериодЗаписи, Истина); + КонецЕсли; + + // Фактическое начало замера времени на клиенте. + // Выше поднять нельзя, т.к. при замере времени открытия приложения ПараметрыПриложения + // еще не инициализированы. + // + + Если Параметры.Свойство("Смещение") Тогда + ВремяНачала = Параметры.Смещение + ПараметрыПриложения[ИмяПараметра]["СмещениеДатыКлиента"];; + Иначе + ВремяНачала = ВремяНачала + ПараметрыПриложения[ИмяПараметра]["СмещениеДатыКлиента"]; + КонецЕсли; + + КлючеваяОперация = Параметры.КлючеваяОперация; + УИДЗамера = Параметры.УИДЗамера; + АвтоЗавершение = Параметры.АвтоЗавершение; + + Если Параметры.Свойство("Комментарий") Тогда + Комментарий = Параметры.Комментарий; + Иначе + Комментарий = Неопределено; + КонецЕсли; + + Если Параметры.Свойство("Технологический") Тогда + Технологический = Параметры.Технологический; + Иначе + Технологический = Ложь; + КонецЕсли; + + Замеры = ПараметрыПриложения[ИмяПараметра]["Замеры"]; + Замеры.Вставить(УИДЗамера, Новый Соответствие); + Замер = Замеры[УИДЗамера]; + Замер.Вставить("КлючеваяОперация", КлючеваяОперация); + Замер.Вставить("АвтоЗавершение", АвтоЗавершение); + Замер.Вставить("ВремяНачала", ВремяНачала); + Замер.Вставить("Комментарий", Комментарий); + Замер.Вставить("Технологический", Технологический); + Замер.Вставить("ВесЗамера", 1); + + Если АвтоЗавершение Тогда + Если НЕ ПараметрыПриложения[ИмяПараметра]["ЕстьОбработчик"] Тогда + ПодключитьОбработчикОжидания("ЗакончитьЗамерВремениАвто", 0.1, Истина); + ПараметрыПриложения[ИмяПараметра]["ЕстьОбработчик"] = Истина; + ПараметрыПриложения[ИмяПараметра]["ВремяПодключенияОбработчика"] = ТекущаяУниверсальнаяДатаВМиллисекундах() + ПараметрыПриложения[ИмяПараметра]["СмещениеДатыКлиента"]; + КонецЕсли; КонецЕсли; + +КонецПроцедуры + +// Автоматически завершает замер времени на клиенте. +// +Процедура ЗавершитьЗамерВремениНаКлиентеАвто() Экспорт + + ВремяОкончания = ТекущаяУниверсальнаяДатаВМиллисекундах(); + + ОценкаПроизводительностиЗамерВремени = ПараметрыПриложения["СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"]; + ВремяПодключенияОбработчика = ОценкаПроизводительностиЗамерВремени["ВремяПодключенияОбработчика"]; + + Если ОценкаПроизводительностиЗамерВремени <> Неопределено Тогда + + Замеры = ПараметрыПриложения["СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"]["Замеры"]; + ЗамерыЗавершенные = ПараметрыПриложения["СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"]["ЗамерыЗавершенные"]; + + ДляУдаления = Новый Массив; + + КоличествоНеЗавершенныхАвтоЗамеров = 0; + Для Каждого Замер Из Замеры Цикл + ЗамерЗначение = Замер.Значение; + Если ЗамерЗначение["АвтоЗавершение"] Тогда + Если ЗамерЗначение["ВремяНачала"] <= ВремяПодключенияОбработчика И ЗамерЗначение["ВремяОкончания"] = Неопределено Тогда + // Смещение даты клиента рассчитывается внутри процедуры + ЗавершитьЗамерВремениСлужебный(Замер.Ключ, ВремяОкончания); + Если ЗначениеЗаполнено(Замер.Значение["КлючеваяОперация"]) Тогда + ЗамерыЗавершенные.Вставить(Замер.Ключ, Замер.Значение); + КонецЕсли; + ДляУдаления.Добавить(Замер.Ключ); + Иначе + КоличествоНеЗавершенныхАвтоЗамеров = КоличествоНеЗавершенныхАвтоЗамеров + 1; + КонецЕсли; + КонецЕсли; + КонецЦикла; + + Для Каждого ТекЗамер Из ДляУдаления Цикл + Замеры.Удалить(ТекЗамер); + КонецЦикла; + КонецЕсли; + + Если КоличествоНеЗавершенныхАвтоЗамеров = 0 Тогда + ОценкаПроизводительностиЗамерВремени["ЕстьОбработчик"] = Ложь; + Иначе + ПодключитьОбработчикОжидания("ЗакончитьЗамерВремениАвто", 0.1, Истина); + ОценкаПроизводительностиЗамерВремени["ЕстьОбработчик"] = Истина; + ОценкаПроизводительностиЗамерВремени["ВремяПодключенияОбработчика"] = ТекущаяУниверсальнаяДатаВМиллисекундах() + ОценкаПроизводительностиЗамерВремени["СмещениеДатыКлиента"]; + КонецЕсли; +КонецПроцедуры + +Процедура ЗавершитьЗамерВремениСлужебный(УИДЗамера, Знач ВремяОкончания) + + Если ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда + ОценкаПроизводительностиЗамерВремени = ПараметрыПриложения["СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"]; + Если ОценкаПроизводительностиЗамерВремени <> Неопределено Тогда + СмещениеДатыКлиента = ПараметрыПриложения["СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"]["СмещениеДатыКлиента"]; + ВремяОкончания = ВремяОкончания + СмещениеДатыКлиента; + + Замеры = ПараметрыПриложения["СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"]["Замеры"]; + Замер = Замеры[УИДЗамера]; + Если Замер <> Неопределено Тогда + Замер.Вставить("ВремяОкончания", ВремяОкончания); + КонецЕсли; + КонецЕсли; + КонецЕсли; + КонецПроцедуры // Произвести запись накопленных замеров времени выполнения ключевых операций на сервере. @@ -31,87 +474,33 @@ ОценкаПроизводительностиЗамерВремени = ПараметрыПриложения["СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"]; Если ОценкаПроизводительностиЗамерВремени <> Неопределено Тогда - Если ОценкаПроизводительностиЗамерВремени["Замеры"].Количество() = 0 Тогда - НовыйПериодЗаписи = ОценкаПроизводительностиЗамерВремени["ПериодЗаписи"]; - Иначе - Замеры = ОценкаПроизводительностиЗамерВремени["Замеры"]; - АдресХранилища = ПоместитьВоВременноеХранилище(Замеры, Новый УникальныйИдентификатор("cd097b4b-fcda-4ac8-bf4f-f99e42ed928c")); - НовыйПериодЗаписи = ОценкаПроизводительностиВызовСервера.ЗафиксироватьДлительностьКлючевыхОпераций(АдресХранилища); - - Если НовыйПериодЗаписи = Неопределено Тогда - НовыйПериодЗаписи = ОценкаПроизводительностиЗамерВремени["ПериодЗаписи"]; - Иначе - Если ПередЗавершением Тогда - Возврат; - КонецЕсли; - - ОценкаПроизводительностиЗамерВремени["ПериодЗаписи"] = НовыйПериодЗаписи; - - Для Каждого КлючеваяОперацияДатаДанные Из Замеры Цикл - Буфер = КлючеваяОперацияДатаДанные.Значение; - НаУдаление = Новый Массив; - Для Каждого ДатаДанные Из Буфер Цикл - КлючЗаписи = ДатаДанные.Ключ; - Данные = ДатаДанные.Значение; - Длительность = Данные.Получить("Длительность"); - // Это означает, что операция уже закончилась, удалять ее из буфера нужно. - Если Длительность <> Неопределено Тогда - НаУдаление.Добавить(КлючЗаписи); - КонецЕсли; - КонецЦикла; - Для Каждого КлючЗаписи Из НаУдаление Цикл - ОценкаПроизводительностиЗамерВремени["Замеры"][КлючеваяОперацияДатаДанные.Ключ].Удалить(КлючЗаписи); - КонецЦикла; - КонецЦикла; - КонецЕсли; - КонецЕсли; + ЗамерыЗавершенные = ОценкаПроизводительностиЗамерВремени["ЗамерыЗавершенные"]; + ОценкаПроизводительностиЗамерВремени["ЗамерыЗавершенные"] = Новый Соответствие; + + ЗамерыДляЗаписи = Новый Структура; + ЗамерыДляЗаписи.Вставить("ЗамерыЗавершенные", ЗамерыЗавершенные); + ЗамерыДляЗаписи.Вставить("ИнформацияПрограммыПросмотра", ОценкаПроизводительностиЗамерВремени["ИнформацияПрограммыПросмотра"]); + АдресХранилища = ПоместитьВоВременноеХранилище(ЗамерыДляЗаписи, Новый УникальныйИдентификатор("cd097b4b-fcda-4ac8-bf4f-f99e42ed928c")); + + НовыйПериодЗаписи = ОценкаПроизводительностиВызовСервера.ЗафиксироватьДлительностьКлючевыхОпераций(АдресХранилища); + УдалитьИзВременногоХранилища(АдресХранилища); + ПодключитьОбработчикОжидания("ЗаписатьРезультатыАвто", НовыйПериодЗаписи, Истина); КонецЕсли; -КонецПроцедуры - -// Процедура завершает замер времени на клиенте -// Параметры: -// АвтоЗамер - Булево, закончен ли замер по обработчику -// ожидания или же нет. -Процедура ЗакончитьЗамерВремени(УИДЗамера = Неопределено) - Если УИДЗамера = Неопределено Тогда - УИДЗамера = Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000"); - КонецЕсли; - - ОценкаПроизводительностиЗамерВремени = ПараметрыПриложения["СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"]; - Если ОценкаПроизводительностиЗамерВремени <> Неопределено Тогда - ДатаОкончания = ОценкаПроизводительностиКлиентСервер.ЗначениеТаймера(Ложь); - ВремяОкончания = ОценкаПроизводительностиКлиентСервер.ЗначениеТаймера(); - - СмещениеДатыКлиента = ПараметрыПриложения["СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"]["СмещениеДатыКлиента"]; - ДатаОкончания = ДатаОкончания + СмещениеДатыКлиента; - - Замеры = ПараметрыПриложения["СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"]["Замеры"]; - Для Каждого КлючеваяОперацияБуферы Из Замеры Цикл - Для Каждого ДатаДанные Из КлючеваяОперацияБуферы.Значение Цикл - Буфер = ДатаДанные.Значение; - ВремяНачала = Буфер["ВремяНачала"]; - Длительность = Буфер.Получить("Длительность"); - Если Длительность = Неопределено И Буфер["УИДЗамера"] = УИДЗамера Тогда - Буфер.Вставить("Длительность", ВремяОкончания - ВремяНачала); - Буфер.Вставить("ВремяОкончания", ВремяОкончания); - Буфер.Вставить("ДатаОкончания", ДатаОкончания); - КонецЕсли; - КонецЦикла; - КонецЦикла; - КонецЕсли; -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Обработчики событий подсистем БСП - -// Вызывается перед интерактивным завершением работы пользователя с областью данных. -// Соответствует событию ПередЗавершениемРаботыСистемы модулей приложения. -// -Процедура ПередЗавершениемРаботыСистемы(Параметры) Экспорт - - ЗаписатьРезультатыАвтоНеГлобальный(Истина); КонецПроцедуры -#КонецОбласти +// Процедура изменяет уникальный идентификатор замера +// Необходима для обратной совместимости, не использовать +// Параметры: +// УИДЗамераСтарый - предыдущий УникальныйИдентификатор замера. +// УИДЗамераНовый - новый УникальныйИдентификатор замера. +Процедура ИзменитьУИДЗамера(УИДЗамераСтарый, УИДЗамераНовый) Экспорт + + ИмяПараметра = "СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"; + Замеры = ПараметрыПриложения[ИмяПараметра]["Замеры"]; + Замеры.Вставить(УИДЗамераНовый, Замеры[УИДЗамераСтарый]); + Замеры.Удалить(УИДЗамераСтарый); + +КонецПроцедуры +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/ОценкаПроизводительностиКлиентСервер/Module.bsl b/SSL/src/CommonModules/ОценкаПроизводительностиКлиентСервер/Module.bsl index 433689891..f44152faf 100644 --- a/SSL/src/CommonModules/ОценкаПроизводительностиКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/ОценкаПроизводительностиКлиентСервер/Module.bsl @@ -4,8 +4,11 @@ //////////////////////////////////////////////////////////////////////////////// #Область ПрограммныйИнтерфейс -#Область ПрограммныйИнтерфейсОценкаПроизводительности +#Область УстаревшиеПроцедурыИФункции +// Устарела. Будет удалена в следующей редакции библиотеки. +// Необходимо использовать процедуру +// ОценкаПроизводительности.СоздатьКлючевыеОперации // Создает ключевые операции в случае их отсутствия. // // Параметры: @@ -14,27 +17,15 @@ // #Если Сервер Тогда Процедура СоздатьКлючевыеОперации(КлючевыеОперации) Экспорт - Запрос = Новый Запрос; - Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 - | КлючевыеОперации.Ссылка КАК Ссылка - |ИЗ - | Справочник.КлючевыеОперации КАК КлючевыеОперации - |ГДЕ - | КлючевыеОперации.Имя = &Имя - |УПОРЯДОЧИТЬ ПО - | Ссылка"; - - Для Каждого КлючеваяОперация Из КлючевыеОперации Цикл - Запрос.УстановитьПараметр("Имя", КлючеваяОперация.ИмяКлючевойОперации); - РезультатЗапроса = Запрос.Выполнить(); - Если РезультатЗапроса.Пустой() Тогда - ОценкаПроизводительности.СоздатьКлючевуюОперацию(КлючеваяОперация.ИмяКлючевойОперации, КлючеваяОперация.ЦелевоеВремя); - КонецЕсли; - КонецЦикла; + ОценкаПроизводительности.СоздатьКлючевыеОперации(КлючевыеОперации); КонецПроцедуры #КонецЕсли - +// Устарела. Будет удалена в следующей редакции библиотеки. +// Необходимо использовать +// на сервере - ОценкаПроизводительности.НачатьЗамерВремени. +// на клиенте - ОценкаПроизводительностиКлиент.НачатьЗамерВремени. +// // Активизирует замер времени выполнения ключевой операции. // Может вызываться как с клиента, так и с сервера. // Результат замера будет записан в <РегистрСведений.ЗамерыВремени>. @@ -64,24 +55,31 @@ Возврат ВремяНачала; КонецФункции -// Активизирует замер времени выполнения ключевой операции с произвольным комментарием +// Устарела. Будет удалена в следующей редакции библиотеки. +// НеобходимоИспользовать +// на сервере - ОценкаПроизводительности.НачатьЗамерВремени. +// на клиенте - ОценкаПроизводительностиКлиент.НачатьЗамерВремени. +// на клиенте - для установки комментария замера необходимо использовать +// процедуру ОценкаПроизводительностиКлиент.УстановитьКомментарийЗамера. +// +// Активизирует замер времени выполнения ключевой операции с произвольным комментарием. // Может вызываться как с клиента, так и с сервера. -// Результат замера будет записан в <РегистрСведений.ЗамерыВремени>. +// Результат замера будет записан в регистр сведений ЗамерыВремени. // // В случае вызова с клиента, заканчивать замер не нужно, время завершения замера зафиксируется -// через глобальный обработчик ожидания <ЗакончитьЗамерВремениАвто>. +// через глобальный обработчик ожидания ЗакончитьЗамерВремениАвто. // Возвращает время начала замера. // // В случае вызова с сервера функция только возвращает время начала -// Закончить замер нужно явно вызовом процедуры -// <ОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремени(КлючеваяОперация, ВремяНачала, Комментарий = Неопределено)> +// закончить замер нужно явно вызовом процедуры общего +// модуля ОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремени. // // Параметры: -// КлючеваяОперация - СправочникСсылка.КлючевыеОперации - ключевая операция -// либо Строка - название ключевой операции -// При вызове с сервера аргумент игнорируется +// КлючеваяОперация - СправочникСсылка.КлючевыеОперации - ключевая операция, +// либо Строка - название ключевой операции. +// При вызове с сервера аргумент игнорируется. // Комментарий - Строка(256) для записи произвольной информации -// при выполнении замера +// при выполнении замера. // При вызове с сервера аргумент игнорируется. // // Возвращаемое значение: @@ -98,6 +96,10 @@ КонецФункции #Если Сервер Тогда +// Устарела. Будет удалена в следующей редакции библиотеки. +// Необходимо использовать +// ОценкаПроизводительности.ЗакончитьЗамерВремени +// // Процедура завершает замер времени ключевой операции на сервере // и записывает результат на сервере в <РегистрСведений.ЗамерыВремени> // Вызывается только с сервера. @@ -109,27 +111,15 @@ // Комментарий - Строка(256) для записи произвольной информации // при выполнении замера. Процедура ЗакончитьЗамерВремени(КлючеваяОперация, ВремяНачала, Комментарий = Неопределено) Экспорт - Если ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда - ДатаОкончания = ЗначениеТаймера(Ложь); - ВремяОкончания = ЗначениеТаймера(Истина); - Если ТипЗнч(ВремяНачала) = Тип("Число") Тогда - Длительность = (ВремяОкончания - ВремяНачала); - ДатаНачала = ДатаОкончания - Длительность; - Иначе - Длительность = (ДатаОкончания - ВремяНачала); - ДатаНачала = ВремяНачала; - КонецЕсли; - ОценкаПроизводительности.ЗафиксироватьДлительностьКлючевойОперации( - КлючеваяОперация, - Длительность, - ДатаНачала, - ДатаОкончания, - Комментарий); - КонецЕсли; + ОценкаПроизводительности.ЗакончитьЗамерВремени(КлючеваяОперация, ВремяНачала * 1000, 1, Комментарий); КонецПроцедуры #КонецЕсли #Если Клиент Тогда +// Устарела. Будет удалена в следующей редакции библиотеки. +// Необходимо использовать +// ОценкаПроизводительностиКлиент.НачатьЗамерВремени +// // Активизирует замер времени выполнения ключевой операции. Для завершения замера необходимо // явно вызвать в общем модуле <ОценкаПроизводительностиГлобальный> // процедуру <Процедура ЗакончитьРучнойЗамерВремени(УИДЗамера)>, необходимо передать точно такой же @@ -154,7 +144,7 @@ Параметры.Вставить("КлючеваяОперация", КлючеваяОперация); Параметры.Вставить("УИДЗамера", УИДЗамера); Параметры.Вставить("Комментарий", Комментарий); - Параметры.Вставить("АвтоЗавершения", Ложь); + Параметры.Вставить("АвтоЗавершение", Ложь); НачатьЗамерВремениСлужебный(Параметры); @@ -163,6 +153,10 @@ #КонецЕсли #Если Клиент Тогда +// Устарела. Будет удалена в следующей редакции библиотеки. +// Необходимо использовать +// ОценкаПроизводительностиКлиент.ЗавершитьЗамерВремени +// // Процедура завершает ручной замер времени ключевой операции // Вызывается только на клиенте. // @@ -170,14 +164,14 @@ // УИДЗамера - УникальныйИдентификатор. // Процедура ЗакончитьРучнойЗамерВремени(УИДЗамера) Экспорт - ОценкаПроизводительностиКлиент.ЗакончитьРучнойЗамерВремениНеГлобальный(УИДЗамера); + ОценкаПроизводительностиКлиент.ЗавершитьЗамерВремени(УИДЗамера); КонецПроцедуры #КонецЕсли -#КонецОбласти - -#Область ПрограммныйИнтерфейсОценкаПроизводительностиТехнологическая - +// Устарела. Будет удалена в следующей редакции библиотеки. +// НеобходимоИспользовать +// на сервере - ОценкаПроизводительности.НачатьЗамерВремениНаСервере +// на клиенте - ОценкаПроизводительностиКлиент.НачатьЗамерВремениТехнологическийНаКлиенте // Активизирует замер времени выполнения технологической ключевой операции. // Может вызываться как с клиента, так и с сервера. // Результат замера будет записан в <РегистрСведений.ЗамерыВремениТехнологические>. @@ -211,6 +205,9 @@ КонецФункции #Если Сервер Тогда +// Устарела. Будет удалена в следующей редакции библиотеки. +// Необходимо использовать +// ОценкаПроизводительности.ЗакончитьЗамерВремениТехнологическийНаСервере // Процедура завершает замер времени технологической ключевой операции на сервере // и записывает результат на сервере в <РегистрСведений.ЗамерыВремениТехнологические> // Вызывается только с сервера. @@ -222,27 +219,13 @@ // Комментарий - Строка(256) для записи произвольной информации // при выполнении замера. Процедура ЗакончитьЗамерВремениТехнологический(КлючеваяОперация, ВремяНачала, Комментарий = Неопределено) Экспорт - Если ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда - ДатаОкончания = ЗначениеТаймера(Ложь); - ВремяОкончания = ЗначениеТаймера(Истина); - Если ТипЗнч(ВремяНачала) = Тип("Число") Тогда - Длительность = (ВремяОкончания - ВремяНачала); - ДатаНачала = ДатаОкончания - Длительность; - Иначе - Длительность = (ДатаОкончания - ВремяНачала); - ДатаНачала = ВремяНачала; - КонецЕсли; - ОценкаПроизводительности.ЗафиксироватьДлительностьКлючевойОперации( - КлючеваяОперация, - Длительность, - ДатаНачала, - ДатаОкончания, - Комментарий, - Истина); - КонецЕсли; + ОценкаПроизводительности.ЗакончитьЗамерВремениТехнологический(КлючеваяОперация, ВремяНачала * 1000, Комментарий); КонецПроцедуры #КонецЕсли +// Устарела. Будет удалена в следующей редакции библиотеки. +// Необходимо использовать +// ОценкаПроизводительностиКлиент.НачатьЗамерВремениТехнологическийНаКлиенте // Активизирует замер времени выполнения технологической ключевой операции с явным завершением времени // длительности ключевой операции. Вызывается только с клиента. // Для завершения замера необходимо вызвать в общем модуле <ОценкаПроизводительностиГлобальный> @@ -277,6 +260,9 @@ #КонецЕсли #Если Клиент Тогда +// Устарела. Будет удалена в следующей редакции библиотеки. +// Необходимо использовать +// ОценкаПроизводительностиКлиент.ЗавершитьЗамерВремениНаКлиенте // Процедура завершает ручной технологический замер времени ключевой операции // Вызывается только на клиенте. // @@ -284,7 +270,7 @@ // УИДЗамера - УникальныйИдентификатор. // Процедура ЗакончитьРучнойЗамерВремениТехнологический(УИДЗамера) Экспорт - ОценкаПроизводительностиКлиент.ЗакончитьРучнойЗамерВремениНеГлобальный(УИДЗамера); + ОценкаПроизводительностиКлиент.ЗавершитьЗамерВремени(УИДЗамера); КонецПроцедуры #КонецЕсли @@ -302,9 +288,9 @@ КонецЕсли; Если Параметры.Свойство("УИДЗамера") И Параметры.УИДЗамера <> Неопределено Тогда - УИДЗамера = Параметры.УИДЗамера; + УИДЗамераВходящий = Параметры.УИДЗамера; Иначе - УИДЗамера = Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000"); + УИДЗамераВходящий = Неопределено; КонецЕсли; Если Параметры.Свойство("Комментарий") Тогда @@ -325,82 +311,39 @@ Технологический = Ложь; КонецЕсли; - Если ТипЗнч(УИДЗамера) <> Тип("УникальныйИдентификатор") Тогда - ВызватьИсключение НСтр("ru = 'Не верный тип УИДа замера.'"); - КонецЕсли; - ВремяНачала = 0; Если ОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности() Тогда - ДатаНачала = ЗначениеТаймера(Ложь); - ВремяНачала = ЗначениеТаймера(); - #Если Клиент И ТолстыйКлиентУправляемоеПриложение И Сервер Тогда Если Не ЗначениеЗаполнено(КлючеваяОперация) Тогда // Считаем, что вызов пришел с сервера. Возвращаем начало замера - Возврат ВремяНачала; + Возврат ОценкаПроизводительности.НачатьЗамерВремени()/1000; КонецЕсли; #КонецЕсли #Если Клиент Тогда + Если Не ЗначениеЗаполнено(КлючеваяОперация) Тогда ВызватьИсключение НСтр("ru = 'Не указана ключевая операция.'"); КонецЕсли; - ИмяПараметра = "СтандартныеПодсистемы.ОценкаПроизводительностиЗамерВремени"; - Если ПараметрыПриложения[ИмяПараметра] = Неопределено Тогда - ПараметрыПриложения.Вставить(ИмяПараметра, Новый Структура); - ПараметрыПриложения[ИмяПараметра].Вставить("Замеры", Новый Соответствие); - - ТекущийПериодЗаписи = ОценкаПроизводительностиВызовСервера.ПериодЗаписи(); - ПараметрыПриложения[ИмяПараметра].Вставить("ПериодЗаписи", ТекущийПериодЗаписи); - - ДатаИВремяНаСервере = ОценкаПроизводительностиВызовСервера.ДатаИВремяНаСервере(); - // Получаем дату в UTC - ДатаИВремяНаКлиенте = Дата(1,1,1) + ТекущаяУниверсальнаяДатаВМиллисекундах()/1000; - ПараметрыПриложения[ИмяПараметра].Вставить( - "СмещениеДатыКлиента", - ДатаИВремяНаСервере - ДатаИВремяНаКлиенте); - - ПодключитьОбработчикОжидания("ЗаписатьРезультатыАвто", ТекущийПериодЗаписи, Истина); - КонецЕсли; - Замеры = ПараметрыПриложения[ИмяПараметра]["Замеры"]; - - БуферКлючевойОперации = Замеры.Получить(КлючеваяОперация); - Если БуферКлючевойОперации = Неопределено Тогда - БуферКлючевойОперации = Новый Соответствие; - Замеры.Вставить(КлючеваяОперация, БуферКлючевойОперации); + Если НЕ Технологический Тогда + УИДЗамера = ОценкаПроизводительностиКлиент.НачатьЗамерВремени(АвтоЗавершение, КлючеваяОперация); + Иначе + УИДЗамера = ОценкаПроизводительностиКлиент.НачатьЗамерВремениТехнологический(АвтоЗавершение, КлючеваяОперация); КонецЕсли; - СмещениеДатыКлиента = ПараметрыПриложения[ИмяПараметра]["СмещениеДатыКлиента"]; - ДатаНачала = ДатаНачала + СмещениеДатыКлиента; - НачатыйЗамер = БуферКлючевойОперации.Получить(ДатаНачала); - Если НачатыйЗамер = Неопределено Тогда - БуферЗамера = Новый Соответствие; - БуферЗамера.Вставить("УИДЗамера", УИДЗамера); - БуферЗамера.Вставить("ДатаНачала", ДатаНачала); - БуферЗамера.Вставить("ВремяНачала", ВремяНачала); - БуферЗамера.Вставить("Комментарий", Комментарий); - БуферЗамера.Вставить("Технологический", Технологический); - БуферКлючевойОперации.Вставить(Новый УникальныйИдентификатор(), БуферЗамера); - КонецЕсли; - - Если АвтоЗавершение Тогда - ПодключитьОбработчикОжидания("ЗакончитьЗамерВремениАвто", 0.1, Истина); + ОценкаПроизводительностиКлиент.УстановитьКомментарийЗамера(УИДЗамера, Комментарий); + Если НЕ АвтоЗавершение И УИДЗамераВходящий <> Неопределено Тогда + ОценкаПроизводительностиКлиент.ИзменитьУИДЗамера(УИДЗамера, УИДЗамераВходящий); КонецЕсли; + #КонецЕсли КонецЕсли; - Возврат ВремяНачала; + Возврат ТекущаяУниверсальнаяДатаВМиллисекундах()/1000; КонецФункции -// Возвращаемое значение: -// Дата - время начала замера -// -Функция ЗначениеТаймера(ВысокаяТочность = Истина) Экспорт - Возврат ТекущаяУниверсальнаяДатаВМиллисекундах() / 1000.0; -КонецФункции - // Получает имя дополнительного свойства не проверять приоритеты при записи ключевой операции. // // Возвращаемое значение: @@ -447,4 +390,577 @@ КонецФункции -#КонецОбласти \ No newline at end of file +#Область ОбщегоНазначенияКлиентСерверКопия + +// Разбирает строку URI на составные части и возвращает в виде структуры. +// На основе RFC 3986. +// +// Параметры: +// СтрокаURI - Строка - ссылка на ресурс в формате: +// <схема>://<логин>:<пароль>@<хост>:<порт>/<путь>?<параметры>#<якорь>. +// +// Возвращаемое значение: +// Структура - составные части URI согласно формату: +// * Схема - Строка. +// * Логин - Строка. +// * Пароль - Строка. +// * ИмяСервера - Строка - часть <хост>:<порт> входного параметра. +// * Хост - Строка. +// * Порт - Строка. +// * ПутьНаСервере - Строка - часть <путь>?<параметры>#<якорь> входного параметра. +// +Функция СтруктураURI(Знач СтрокаURI) Экспорт + + СтрокаURI = СокрЛП(СтрокаURI); + + // схема + Схема = ""; + Позиция = СтрНайти(СтрокаURI, "://"); + Если Позиция > 0 Тогда + Схема = НРег(Лев(СтрокаURI, Позиция - 1)); + СтрокаURI = Сред(СтрокаURI, Позиция + 3); + КонецЕсли; + + // Строка соединения и путь на сервере. + СтрокаСоединения = СтрокаURI; + ПутьНаСервере = ""; + Позиция = СтрНайти(СтрокаСоединения, "/"); + Если Позиция > 0 Тогда + ПутьНаСервере = Сред(СтрокаСоединения, Позиция + 1); + СтрокаСоединения = Лев(СтрокаСоединения, Позиция - 1); + КонецЕсли; + + // Информация пользователя и имя сервера. + СтрокаАвторизации = ""; + ИмяСервера = СтрокаСоединения; + Позиция = СтрНайти(СтрокаСоединения, "@"); + Если Позиция > 0 Тогда + СтрокаАвторизации = Лев(СтрокаСоединения, Позиция - 1); + ИмяСервера = Сред(СтрокаСоединения, Позиция + 1); + КонецЕсли; + + // логин и пароль + Логин = СтрокаАвторизации; + Пароль = ""; + Позиция = СтрНайти(СтрокаАвторизации, ":"); + Если Позиция > 0 Тогда + Логин = Лев(СтрокаАвторизации, Позиция - 1); + Пароль = Сред(СтрокаАвторизации, Позиция + 1); + КонецЕсли; + + // хост и порт + Хост = ИмяСервера; + Порт = ""; + Позиция = СтрНайти(ИмяСервера, ":"); + Если Позиция > 0 Тогда + Хост = Лев(ИмяСервера, Позиция - 1); + Порт = Сред(ИмяСервера, Позиция + 1); + Если Не ТолькоЦифрыВСтроке(Порт) Тогда + Порт = ""; + КонецЕсли; + КонецЕсли; + + Результат = Новый Структура; + Результат.Вставить("Схема", Схема); + Результат.Вставить("Логин", Логин); + Результат.Вставить("Пароль", Пароль); + Результат.Вставить("ИмяСервера", ИмяСервера); + Результат.Вставить("Хост", Хост); + Результат.Вставить("Порт", ?(ПустаяСтрока(Порт), Неопределено, Число(Порт))); + Результат.Вставить("ПутьНаСервере", ПутьНаСервере); + + Возврат Результат; + +КонецФункции + +// Формирует и выводит сообщение, которое может быть связано с элементом +// управления формы. +// +// Параметры +// ТекстСообщенияПользователю - Строка - текст сообщения. +// КлючДанных - ЛюбаяСсылка - на объект информационной базы. +// Ссылка на объект информационной базы, к которому это сообщение относится, +// или ключ записи. +// Поле - Строка - наименование реквизита формы. +// ПутьКДанным - Строка - путь к данным (путь к реквизиту формы). +// Отказ - Булево - Выходной параметр. +// Всегда устанавливается в значение Истина. +// +// Пример: +// +// 1. Для вывода сообщения у поля управляемой формы, связанного с реквизитом объекта: +// ОбщегоНазначенияКлиентСервер.СообщитьПользователю( +// НСтр("ru = 'Сообщение об ошибке.'"), , +// "ПолеВРеквизитеФормыОбъект", +// "Объект"); +// +// Альтернативный вариант использования в форме объекта: +// ОбщегоНазначенияКлиентСервер.СообщитьПользователю( +// НСтр("ru = 'Сообщение об ошибке.'"), , +// "Объект.ПолеВРеквизитеФормыОбъект"); +// +// 2. Для вывода сообщения рядом с полем управляемой формы, связанным с реквизитом формы: +// ОбщегоНазначенияКлиентСервер.СообщитьПользователю( +// НСтр("ru = 'Сообщение об ошибке.'"), , +// "ИмяРеквизитаФормы"); +// +// 3. Для вывода сообщения связанного с объектом информационной базы. +// ОбщегоНазначенияКлиентСервер.СообщитьПользователю( +// НСтр("ru = 'Сообщение об ошибке.'"), ОбъектИнформационнойБазы, "Ответственный",,Отказ); +// +// 4. Для вывода сообщения по ссылке на объект информационной базы. +// ОбщегоНазначенияКлиентСервер.СообщитьПользователю( +// НСтр("ru = 'Сообщение об ошибке.'"), Ссылка, , , Отказ); +// +// Случаи некорректного использования: +// 1. Передача одновременно параметров КлючДанных и ПутьКДанным. +// 2. Передача в параметре КлючДанных значения типа отличного от допустимых. +// 3. Установка ссылки без установки поля (и/или пути к данным). +// +Процедура СообщитьПользователю( + Знач ТекстСообщенияПользователю, + Знач КлючДанных = Неопределено, + Знач Поле = "", + Знач ПутьКДанным = "", + Отказ = Ложь) Экспорт + + Сообщение = Новый СообщениеПользователю; + Сообщение.Текст = ТекстСообщенияПользователю; + Сообщение.Поле = Поле; + + ЭтоОбъект = Ложь; + +#Если НЕ ТонкийКлиент И НЕ ВебКлиент Тогда + Если КлючДанных <> Неопределено + И XMLТипЗнч(КлючДанных) <> Неопределено Тогда + ТипЗначенияСтрокой = XMLТипЗнч(КлючДанных).ИмяТипа; + ЭтоОбъект = СтрНайти(ТипЗначенияСтрокой, "Object.") > 0; + КонецЕсли; +#КонецЕсли + + Если ЭтоОбъект Тогда + Сообщение.УстановитьДанные(КлючДанных); + Иначе + Сообщение.КлючДанных = КлючДанных; + КонецЕсли; + + Если НЕ ПустаяСтрока(ПутьКДанным) Тогда + Сообщение.ПутьКДанным = ПутьКДанным; + КонецЕсли; + + Сообщение.Сообщить(); + + Отказ = Истина; + +КонецПроцедуры + +// Добавить элемент компоновки в контейнер элементов компоновки. +// +// Параметры: +// ОбластьДобавления - контейнер с элементами и группами отбора, например. +// Список.Отбор или группа в отборе. +// ИмяПоля - Строка - имя поля компоновки данных (заполняется всегда). +// ПравоеЗначение - произвольный - сравниваемое значение. +// ВидСравнения - ВидСравненияКомпоновкиДанных - вид сравнения. +// Представление - Строка - представление элемента компоновки данных. +// Использование - Булево - использование элемента. +// РежимОтображения - РежимОтображенияЭлементаНастройкиКомпоновкиДанных - режим отображения. +// ИдентификаторПользовательскойНастройки - Строка - см. ОтборКомпоновкиДанных.ИдентификаторПользовательскойНастройки +// в синтакс-помощнике. +// +Функция ДобавитьЭлементКомпоновки(ОбластьДобавления, + Знач ИмяПоля, + Знач ВидСравнения, + Знач ПравоеЗначение = Неопределено, + Знач Представление = Неопределено, + Знач Использование = Неопределено, + знач РежимОтображения = Неопределено, + знач ИдентификаторПользовательскойНастройки = Неопределено) + + Элемент = ОбластьДобавления.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + Элемент.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(ИмяПоля); + Элемент.ВидСравнения = ВидСравнения; + + Если РежимОтображения = Неопределено Тогда + Элемент.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный; + Иначе + Элемент.РежимОтображения = РежимОтображения; + КонецЕсли; + + Если ПравоеЗначение <> Неопределено Тогда + Элемент.ПравоеЗначение = ПравоеЗначение; + КонецЕсли; + + Если Представление <> Неопределено Тогда + Элемент.Представление = Представление; + КонецЕсли; + + Если Использование <> Неопределено Тогда + Элемент.Использование = Использование; + КонецЕсли; + + // Важно: установка идентификатора должна выполняться + // в конце настройки элемента, иначе он будет скопирован + // в пользовательские настройки частично заполненным. + Если ИдентификаторПользовательскойНастройки <> Неопределено Тогда + Элемент.ИдентификаторПользовательскойНастройки = ИдентификаторПользовательскойНастройки; + ИначеЕсли Элемент.РежимОтображения <> РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный Тогда + Элемент.ИдентификаторПользовательскойНастройки = ИмяПоля; + КонецЕсли; + + Возврат Элемент; + +КонецФункции + +// Изменить элемент отбора с заданным именем поля или представлением. +// +// Параметры: +// ИмяПоля - Строка - имя поля компоновки данных (заполняется всегда). +// Представление - Строка - представление элемента компоновки данных. +// ПравоеЗначение - произвольный - сравниваемое значение. +// ВидСравнения - ВидСравненияКомпоновкиДанных - вид сравнения. +// Использование - Булево - использование элемента. +// РежимОтображения - РежимОтображенияЭлементаНастройкиКомпоновкиДанных - режим отображения. +// +Функция ИзменитьЭлементыОтбора(ОбластьПоиска, + Знач ИмяПоля = Неопределено, + Знач Представление = Неопределено, + Знач ПравоеЗначение = Неопределено, + Знач ВидСравнения = Неопределено, + Знач Использование = Неопределено, + Знач РежимОтображения = Неопределено, + Знач ИдентификаторПользовательскойНастройки = Неопределено) + + Если ЗначениеЗаполнено(ИмяПоля) Тогда + ЗначениеПоиска = Новый ПолеКомпоновкиДанных(ИмяПоля); + СпособПоиска = 1; + Иначе + СпособПоиска = 2; + ЗначениеПоиска = Представление; + КонецЕсли; + + МассивЭлементов = Новый Массив; + + НайтиРекурсивно(ОбластьПоиска.Элементы, МассивЭлементов, СпособПоиска, ЗначениеПоиска); + + Для Каждого Элемент Из МассивЭлементов Цикл + Если ИмяПоля <> Неопределено Тогда + Элемент.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(ИмяПоля); + КонецЕсли; + Если Представление <> Неопределено Тогда + Элемент.Представление = Представление; + КонецЕсли; + Если Использование <> Неопределено Тогда + Элемент.Использование = Использование; + КонецЕсли; + Если ВидСравнения <> Неопределено Тогда + Элемент.ВидСравнения = ВидСравнения; + КонецЕсли; + Если ПравоеЗначение <> Неопределено Тогда + Элемент.ПравоеЗначение = ПравоеЗначение; + КонецЕсли; + Если РежимОтображения <> Неопределено Тогда + Элемент.РежимОтображения = РежимОтображения; + КонецЕсли; + Если ИдентификаторПользовательскойНастройки <> Неопределено Тогда + Элемент.ИдентификаторПользовательскойНастройки = ИдентификаторПользовательскойНастройки; + КонецЕсли; + КонецЦикла; + + Возврат МассивЭлементов.Количество(); + +КонецФункции + +// Добавить или заменить существующий элемент отбора. +// +// Параметры: +// ОбластьПоискаДобавления - контейнер с элементами и группами отбора, например. +// Список.Отбор или группа в отборе. +// ИмяПоля - Строка - имя поля компоновки данных (заполняется всегда). +// ПравоеЗначение - произвольный - сравниваемое значение. +// ВидСравнения - ВидСравненияКомпоновкиДанных - вид сравнения. +// Представление - Строка - представление элемента компоновки данных. +// Использование - Булево - использование элемента. +// РежимОтображения - РежимОтображенияЭлементаНастройкиКомпоновкиДанных - режим отображения. +// ИдентификаторПользовательскойНастройки - Строка - см. ОтборКомпоновкиДанных.ИдентификаторПользовательскойНастройки +// в синтакс-помощнике. +// +Процедура УстановитьЭлементОтбора(ОбластьПоискаДобавления, + Знач ИмяПоля, + Знач ПравоеЗначение = Неопределено, + Знач ВидСравнения = Неопределено, + Знач Представление = Неопределено, + Знач Использование = Неопределено, + Знач РежимОтображения = Неопределено, + Знач ИдентификаторПользовательскойНастройки = Неопределено) Экспорт + + ЧислоИзмененных = ИзменитьЭлементыОтбора(ОбластьПоискаДобавления, ИмяПоля, Представление, + ПравоеЗначение, ВидСравнения, Использование, РежимОтображения, ИдентификаторПользовательскойНастройки); + + Если ЧислоИзмененных = 0 Тогда + Если ВидСравнения = Неопределено Тогда + Если ТипЗнч(ПравоеЗначение) = Тип("Массив") + Или ТипЗнч(ПравоеЗначение) = Тип("ФиксированныйМассив") + Или ТипЗнч(ПравоеЗначение) = Тип("СписокЗначений") Тогда + ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке; + Иначе + ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + КонецЕсли; + КонецЕсли; + Если РежимОтображения = Неопределено Тогда + РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный; + КонецЕсли; + ДобавитьЭлементКомпоновки(ОбластьПоискаДобавления, ИмяПоля, ВидСравнения, + ПравоеЗначение, Представление, Использование, РежимОтображения, ИдентификаторПользовательскойНастройки); + КонецЕсли; + +КонецПроцедуры + +// Добавить или заменить существующий элемент отбора динамического списка. +// +// Параметры: +// ДинамическийСписок - ДинамическийСписок - Список, в котором требуется установить отбор. +// ИмяПоля - Строка - Поле, по которому необходимо установить отбор. +// ПравоеЗначение - Произвольный - Значение отбора. +// Необязательный. Значение по умолчанию: Неопределено. +// Внимание! Если передать Неопределено, то значение не будет изменено. +// ВидСравнения - ВидСравненияКомпоновкиДанных - Условие отбора. +// Представление - Строка - Представление элемента компоновки данных. +// Необязательный. Значение по умолчанию: Неопределено. +// Если указано, то выводится только флажок использования с указанным представлением (значение не выводится). +// Для очистки (чтобы значение снова выводилось) следует передать пустую строку. +// Использование - Булево - Флажок использования этого отбора. +// Необязательный. Значение по умолчанию: Неопределено. +// РежимОтображения - РежимОтображенияЭлементаНастройкиКомпоновкиДанных - Способ отображения этого отбора +// пользователю. +// * РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ - В группе быстрых настроек над списком. +// * РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный - В настройка списка (в подменю Еще). +// * РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный - Запретить пользователю менять этот отбор. +// ИдентификаторПользовательскойНастройки - Строка - Уникальный идентификатор этого отбора. +// Используется для связи с пользовательскими настройками. +// +// См. также: +// Одноименные свойства объекта "ЭлементОтбораКомпоновкиДанных" в синтакс-помощнике. +// +Процедура УстановитьЭлементОтбораДинамическогоСписка(ДинамическийСписок, ИмяПоля, + ПравоеЗначение = Неопределено, + ВидСравнения = Неопределено, + Представление = Неопределено, + Использование = Неопределено, + РежимОтображения = Неопределено, + ИдентификаторПользовательскойНастройки = Неопределено) Экспорт + + Если РежимОтображения = Неопределено Тогда + РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный; + КонецЕсли; + + Если РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный Тогда + ОтборДинамическогоСписка = ДинамическийСписок.КомпоновщикНастроек.ФиксированныеНастройки.Отбор; + Иначе + ОтборДинамическогоСписка = ДинамическийСписок.КомпоновщикНастроек.Настройки.Отбор; + КонецЕсли; + + УстановитьЭлементОтбора( + ОтборДинамическогоСписка, + ИмяПоля, + ПравоеЗначение, + ВидСравнения, + Представление, + Использование, + РежимОтображения, + ИдентификаторПользовательскойНастройки); + +КонецПроцедуры + +Процедура НайтиРекурсивно(КоллекцияЭлементов, МассивЭлементов, СпособПоиска, ЗначениеПоиска) + + Для каждого ЭлементОтбора Из КоллекцияЭлементов Цикл + + Если ТипЗнч(ЭлементОтбора) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда + + Если СпособПоиска = 1 Тогда + Если ЭлементОтбора.ЛевоеЗначение = ЗначениеПоиска Тогда + МассивЭлементов.Добавить(ЭлементОтбора); + КонецЕсли; + ИначеЕсли СпособПоиска = 2 Тогда + Если ЭлементОтбора.Представление = ЗначениеПоиска Тогда + МассивЭлементов.Добавить(ЭлементОтбора); + КонецЕсли; + КонецЕсли; + Иначе + + НайтиРекурсивно(ЭлементОтбора.Элементы, МассивЭлементов, СпособПоиска, ЗначениеПоиска); + + Если СпособПоиска = 2 И ЭлементОтбора.Представление = ЗначениеПоиска Тогда + МассивЭлементов.Добавить(ЭлементОтбора); + КонецЕсли; + + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры + +#КонецОбласти + +#Область СтроковыеФункцииКлиентСерверКопия + +// Проверяет, содержит ли строка только цифры. +// +// Параметры: +// СтрокаПроверки - Строка - Строка для проверки. +// УчитыватьЛидирующиеНули - Булево - Флаг учета лидирующих нулей, если Истина, то ведущие нули пропускаются. +// УчитыватьПробелы - Булево - Флаг учета пробелов, если Истина, то пробелы при проверке игнорируются. +// +// Возвращаемое значение: +// Булево - Истина - строка содержит только цифры или пустая, Ложь - строка содержит иные символы. +// +Функция ТолькоЦифрыВСтроке(Знач СтрокаПроверки, Знач УчитыватьЛидирующиеНули = Истина, Знач УчитыватьПробелы = Истина) + + Если ТипЗнч(СтрокаПроверки) <> Тип("Строка") Тогда + Возврат Ложь; + КонецЕсли; + + Если Не УчитыватьПробелы Тогда + СтрокаПроверки = СтрЗаменить(СтрокаПроверки, " ", ""); + КонецЕсли; + + Если ПустаяСтрока(СтрокаПроверки) Тогда + Возврат Истина; + КонецЕсли; + + Если Не УчитыватьЛидирующиеНули Тогда + Позиция = 1; + // Взятие символа за границей строки возвращает пустую строку. + Пока Сред(СтрокаПроверки, Позиция, 1) = "0" Цикл + Позиция = Позиция + 1; + КонецЦикла; + СтрокаПроверки = Сред(СтрокаПроверки, Позиция); + КонецЕсли; + + // Если содержит только цифры, то в результате замен должна быть получена пустая строка. + // Проверять при помощи ПустаяСтрока нельзя, так как в исходной строке могут быть пробельные символы. + Возврат СтрДлина( + СтрЗаменить( СтрЗаменить( СтрЗаменить( СтрЗаменить( СтрЗаменить( + СтрЗаменить( СтрЗаменить( СтрЗаменить( СтрЗаменить( СтрЗаменить( + СтрокаПроверки, "0", ""), "1", ""), "2", ""), "3", ""), "4", ""), "5", ""), "6", ""), "7", ""), "8", ""), "9", "")) = 0; + +КонецФункции + +// Проверяет, содержит ли строка только символы кириллического алфавита. +// +// Параметры: +// УчитыватьРазделителиСлов - Булево - учитывать ли разделители слов или они являются исключением. +// ДопустимыеСимволы - строка для проверки. +// +// Возвращаемое значение: +// Булево - Истина, если строка содержит только кириллические (или допустимые) символы или пустая; +// Ложь, если строка содержит иные символы. +// +Функция ТолькоКириллицаВСтроке(Знач СтрокаПроверки, Знач УчитыватьРазделителиСлов = Истина, ДопустимыеСимволы = "") Экспорт + + Если ТипЗнч(СтрокаПроверки) <> Тип("Строка") Тогда + Возврат Ложь; + КонецЕсли; + + Если НЕ ЗначениеЗаполнено(СтрокаПроверки) Тогда + Возврат Истина; + КонецЕсли; + + КодыДопустимыхСимволов = Новый Массив; + КодыДопустимыхСимволов.Добавить(1105); // "ё" + КодыДопустимыхСимволов.Добавить(1025); // "Ё" + + Для Индекс = 1 По СтрДлина(ДопустимыеСимволы) Цикл + КодыДопустимыхСимволов.Добавить(КодСимвола(Сред(ДопустимыеСимволы, Индекс, 1))); + КонецЦикла; + + Для Индекс = 1 По СтрДлина(СтрокаПроверки) Цикл + КодСимвола = КодСимвола(Сред(СтрокаПроверки, Индекс, 1)); + Если ((КодСимвола < 1040) Или (КодСимвола > 1103)) + И (КодыДопустимыхСимволов.Найти(КодСимвола) = Неопределено) + И Не (Не УчитыватьРазделителиСлов И ЭтоРазделительСлов(КодСимвола)) Тогда + Возврат Ложь; + КонецЕсли; + КонецЦикла; + + Возврат Истина; + +КонецФункции + +// Проверяет, содержит ли строка только символы латинского алфавита. +// +// Параметры: +// УчитыватьРазделителиСлов - Булево - учитывать ли разделители слов или они являются исключением. +// ДопустимыеСимволы - строка для проверки. +// +// Возвращаемое значение: +// Булево - Истина, если строка содержит только латинские (или допустимые) символы; +// - Ложь, если строка содержит иные символы. +// +Функция ТолькоЛатиницаВСтроке(Знач СтрокаПроверки, Знач УчитыватьРазделителиСлов = Истина, ДопустимыеСимволы = "") Экспорт + + Если ТипЗнч(СтрокаПроверки) <> Тип("Строка") Тогда + Возврат Ложь; + КонецЕсли; + + Если НЕ ЗначениеЗаполнено(СтрокаПроверки) Тогда + Возврат Истина; + КонецЕсли; + + КодыДопустимыхСимволов = Новый Массив; + + Для Индекс = 1 По СтрДлина(ДопустимыеСимволы) Цикл + КодыДопустимыхСимволов.Добавить(КодСимвола(Сред(ДопустимыеСимволы, Индекс, 1))); + КонецЦикла; + + Для Индекс = 1 По СтрДлина(СтрокаПроверки) Цикл + КодСимвола = КодСимвола(Сред(СтрокаПроверки, Индекс, 1)); + Если ((КодСимвола < 65) Или (КодСимвола > 90 И КодСимвола < 97) Или (КодСимвола > 122)) + И (КодыДопустимыхСимволов.Найти(КодСимвола) = Неопределено) + И Не (Не УчитыватьРазделителиСлов И ЭтоРазделительСлов(КодСимвола)) Тогда + Возврат Ложь; + КонецЕсли; + КонецЦикла; + + Возврат Истина; + +КонецФункции + +// Определяет, является ли символ разделителем. +// +// Параметры: +// КодСимвола - Число - код проверяемого символа; +// РазделителиСлов - Строка - символы разделителей. +// +// Возвращаемое значение: +// Булево - истина, если символ является разделителем. +// +Функция ЭтоРазделительСлов(КодСимвола, РазделителиСлов = Неопределено) + + Если РазделителиСлов <> Неопределено Тогда + Возврат СтрНайти(РазделителиСлов, Символ(КодСимвола)) > 0; + КонецЕсли; + + Диапазоны = Новый Массив; + Диапазоны.Добавить(Новый Структура("Мин,Макс", 48, 57)); // цифры + Диапазоны.Добавить(Новый Структура("Мин,Макс", 65, 90)); // латиница большие + Диапазоны.Добавить(Новый Структура("Мин,Макс", 97, 122)); // латиница маленькие + Диапазоны.Добавить(Новый Структура("Мин,Макс", 1040, 1103)); // кириллица + Диапазоны.Добавить(Новый Структура("Мин,Макс", 1025, 1025)); // символ "Ё" + Диапазоны.Добавить(Новый Структура("Мин,Макс", 1105, 1105)); // символ "ё" + Диапазоны.Добавить(Новый Структура("Мин,Макс", 95, 95)); // символ "_" + + Для Каждого Диапазон Из Диапазоны Цикл + Если КодСимвола >= Диапазон.Мин И КодСимвола <= Диапазон.Макс Тогда + Возврат Ложь; + КонецЕсли; + КонецЦикла; + + Возврат Истина; + +КонецФункции + +#КонецОбласти + +#КонецОбласти diff --git a/SSL/src/CommonModules/ОценкаПроизводительностиПовтИсп/Module.bsl b/SSL/src/CommonModules/ОценкаПроизводительностиПовтИсп/Module.bsl index 75d653ea2..1a21e765b 100644 --- a/SSL/src/CommonModules/ОценкаПроизводительностиПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/ОценкаПроизводительностиПовтИсп/Module.bsl @@ -16,7 +16,7 @@ // Возвращаемое значение: // СправочникСсылка.КлючевыеОперации // -Функция ПолучитьКлючевуюОперациюПоИмени(ИмяКлючевойОперации) Экспорт +Функция ПолучитьКлючевуюОперациюПоИмени(ИмяКлючевойОперации, ВыполненаСОшибкой = Ложь) Экспорт УстановитьПривилегированныйРежим(Истина); @@ -39,7 +39,7 @@ Запрос.УстановитьПараметр("ИмяХеш", ИмяХеш); РезультатЗапроса = Запрос.Выполнить(); Если РезультатЗапроса.Пустой() Тогда - КлючеваяОперацияСсылка = ОценкаПроизводительности.СоздатьКлючевуюОперацию(ИмяКлючевойОперации, 1); + КлючеваяОперацияСсылка = ОценкаПроизводительности.СоздатьКлючевуюОперацию(ИмяКлючевойОперации, 1, ВыполненаСОшибкой); Иначе Выборка = РезультатЗапроса.Выбрать(); Выборка.Следующий(); @@ -50,4 +50,69 @@ КонецФункции +#Область СтандартныеПодсистемыПовтИспКопия + +// Возвращает соответствие имен "функциональных" подсистем и значения Истина. +// У "функциональной" подсистемы снят флажок "Включать в командный интерфейс". +// +Функция ИменаПодсистем() Экспорт + + ОтключенныеПодсистемы = ОценкаПроизводительностиСлужебный.ОбщиеПараметрыБазовойФункциональности().ОтключенныеПодсистемы; + + Имена = Новый Соответствие; + ВставитьИменаПодчиненныхПодсистем(Имена, Метаданные, ОтключенныеПодсистемы); + + Возврат Новый ФиксированноеСоответствие(Имена); + +КонецФункции + +Процедура ВставитьИменаПодчиненныхПодсистем(Имена, РодительскаяПодсистема, ОтключенныеПодсистемы, ИмяРодительскойПодсистемы = "") + + Для Каждого ТекущаяПодсистема Из РодительскаяПодсистема.Подсистемы Цикл + + Если ТекущаяПодсистема.ВключатьВКомандныйИнтерфейс Тогда + Продолжить; + КонецЕсли; + + ИмяТекущейПодсистемы = ИмяРодительскойПодсистемы + ТекущаяПодсистема.Имя; + Если ОтключенныеПодсистемы.Получить(ИмяТекущейПодсистемы) = Истина Тогда + Продолжить; + Иначе + Имена.Вставить(ИмяТекущейПодсистемы, Истина); + КонецЕсли; + + Если ТекущаяПодсистема.Подсистемы.Количество() = 0 Тогда + Продолжить; + КонецЕсли; + + ВставитьИменаПодчиненныхПодсистем(Имена, ТекущаяПодсистема, ОтключенныеПодсистемы, ИмяТекущейПодсистемы + "."); + КонецЦикла; + +КонецПроцедуры + +#КонецОбласти + +#Область ОбщегоНазначенияПовтИспКопия + +// Возвращает массив существующих в конфигурации разделителей. +// +// Возвращаемое значение: ФиксированныйМассив(Строка) - массив имен общих реквизитов, которые +// являются разделителями. +// +Функция РазделителиКонфигурации() Экспорт + + МассивРазделителей = Новый Массив; + + Для Каждого ОбщийРеквизит Из Метаданные.ОбщиеРеквизиты Цикл + Если ОбщийРеквизит.РазделениеДанных = Метаданные.СвойстваОбъектов.РазделениеДанныхОбщегоРеквизита.Разделять Тогда + МассивРазделителей.Добавить(ОбщийРеквизит.Имя); + КонецЕсли; + КонецЦикла; + + Возврат Новый ФиксированныйМассив(МассивРазделителей); + +КонецФункции + +#КонецОбласти + #КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/ОценкаПроизводительностиПовтИсп/ОценкаПроизводительностиПовтИсп.mdo b/SSL/src/CommonModules/ОценкаПроизводительностиПовтИсп/ОценкаПроизводительностиПовтИсп.mdo index a988a27fd..a60630d50 100644 --- a/SSL/src/CommonModules/ОценкаПроизводительностиПовтИсп/ОценкаПроизводительностиПовтИсп.mdo +++ b/SSL/src/CommonModules/ОценкаПроизводительностиПовтИсп/ОценкаПроизводительностиПовтИсп.mdo @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="b3e0efae-67f6-409a-93dd-750b7f860831"> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="3be0acc7-223a-46ec-9ea2-ec99b869fa78"> <name>ОценкаПроизводительностиПовтИсп</name> <synonym> <key>ru</key> diff --git a/SSL/src/CommonModules/ОценкаПроизводительностиСлужебный/Module.bsl b/SSL/src/CommonModules/ОценкаПроизводительностиСлужебный/Module.bsl index 48ebb511f..39b2b3592 100644 --- a/SSL/src/CommonModules/ОценкаПроизводительностиСлужебный/Module.bsl +++ b/SSL/src/CommonModules/ОценкаПроизводительностиСлужебный/Module.bsl @@ -8,13 +8,12 @@ // См. описание этой же процедуры в модуле СтандартныеПодсистемыСервер. Процедура ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики) Экспорт - // КЛИЕНТСКИЕ ОБРАБОТЧИКИ. - - КлиентскиеОбработчики["СтандартныеПодсистемы.БазоваяФункциональность\ПередЗавершениемРаботыСистемы"].Добавить( - "ОценкаПроизводительностиКлиент"); - // СЕРВЕРНЫЕ ОБРАБОТЧИКИ. - + + СерверныеОбработчики[ + "СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПараметровРаботыКлиентаПриЗапуске"].Добавить( + "ОценкаПроизводительностиСлужебный"); + СерверныеОбработчики[ "СтандартныеПодсистемы.БазоваяФункциональность\ПриЗаполненииРазрешенийНаДоступКВнешнимРесурсам"].Добавить( "ОценкаПроизводительностиСлужебный"); @@ -33,6 +32,10 @@ // Процедура ПриДобавленииОбработчиковОбновления(Обработчики) Экспорт + Обработчик = Обработчики.Добавить(); + Обработчик.НачальноеЗаполнение = Истина; + Обработчик.Процедура = "ОценкаПроизводительностиСлужебный.ПервоначальноеЗаполнение"; + Обработчик = Обработчики.Добавить(); Обработчик.Версия = "2.3.1.38"; Обработчик.Процедура = "ОценкаПроизводительностиСлужебный.ЗаполнитьИмяХеш"; @@ -42,6 +45,13 @@ Обработчик.Версия = "2.3.1.74"; Обработчик.Процедура = "ОценкаПроизводительностиСлужебный.ЗаполнитьИмяХеш"; + + Обработчик = Обработчики.Добавить(); + Обработчик.МонопольныйРежим = Истина; + Обработчик.ОбщиеДанные = Истина; + Обработчик.Версия = "2.3.3.45"; + Обработчик.Процедура = "ОценкаПроизводительностиСлужебный.УстановитьЗначенияКонстант_2_3_3_45"; + КонецПроцедуры // Возвращает соответствие имен параметров сеанса и обработчиков для их инициализации. @@ -52,20 +62,20 @@ КонецПроцедуры -// Получает N худших замеров производительности за период +// Получает N худших замеров производительности за период. // Параметры: -// ДатаНачала - ДатаВремя - Начало периода выборки -// ДатаОкончания - ДатаВремя - Окончание периода выборка +// ДатаНачала - ДатаВремя - Начало периода выборки. +// ДатаОкончания - ДатаВремя - Окончание периода выборка. // ТопApdexКоличество - Число - Количество худших замеров, если но, то возвращаются все замеры. // Функция ПолучитьТопAPDEX(ДатаНачала, ДатаОкончания, ПериодАгрегации, ТопApdexКоличество) Экспорт Возврат РегистрыСведений.ЗамерыВремени.ПолучитьТопAPDEX(ДатаНачала, ДатаОкончания, ПериодАгрегации, ТопApdexКоличество); КонецФункции -// Получает N худших замеров производительности технологической за период +// Получает N худших замеров производительности технологической за период. // Параметры: -// ДатаНачала - ДатаВремя - Начало периода выборки -// ДатаОкончания - ДатаВремя - Окончание периода выборка +// ДатаНачала - ДатаВремя - Начало периода выборки. +// ДатаОкончания - ДатаВремя - Окончание периода выборка. // ТопApdexКоличество - Число - Количество худших замеров, если но, то возвращаются все замеры. // Функция ПолучитьТопAPDEXТехнологический(ДатаНачала, ДатаОкончания, ПериодАгрегации, ТопApdexКоличество) Экспорт @@ -97,7 +107,22 @@ #Область СлужебныеПроцедурыИФункции //////////////////////////////////////////////////////////////////////////////// -// Обработчики событий подсистем БСП +// Обработчики событий подсистем БСП. + +Процедура ПервоначальноеЗаполнение() Экспорт + + Если ПодсистемаСуществует("СтандартныеПодсистемы.БазоваяФункциональность") Тогда + МодульОбщегоНазначенияПовтИсп = ОбщийМодуль("ОбщегоНазначенияПовтИсп"); + Если МодульОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда + Возврат; + КонецЕсли; + КонецЕсли; + + Константы.КоличествоЗамеровВПакетеЭкспорта.Установить(1000); + Константы.ОценкаПроизводительностиПериодЗаписи.Установить(300); + Константы.ПериодХраненияЗамеров.Установить(100); + +КонецПроцедуры // Устанавливает параметры сеанса подсистемы оценки производительности. // @@ -125,8 +150,12 @@ // Процедура ПриЗаполненииРазрешенийНаДоступКВнешнимРесурсам(ЗапросыРазрешений) Экспорт - Если ОбщегоНазначенияПовтИсп.РазделениеВключено() И ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда - Возврат; + БазоваяФункциональностьСуществует = ПодсистемаСуществует("СтандартныеПодсистемы.БазоваяФункциональность"); + Если БазоваяФункциональностьСуществует Тогда + МодульОбщегоНазначенияПовтИсп = ОбщийМодуль("ОбщегоНазначенияПовтИсп"); + Если МодульОбщегоНазначенияПовтИсп.РазделениеВключено() И МодульОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда + Возврат; + КонецЕсли; КонецЕсли; КаталогиЭкспорта = КаталогиЭкспортаОценкиПроизводительности(); @@ -134,60 +163,89 @@ Возврат; КонецЕсли; - СтруктураURI = ОбщегоНазначенияКлиентСервер.СтруктураURI(КаталогиЭкспорта.FTPКаталогЭкспорта); + СтруктураURI = ОценкаПроизводительностиКлиентСервер.СтруктураURI(КаталогиЭкспорта.FTPКаталогЭкспорта); КаталогиЭкспорта.Вставить("FTPКаталогЭкспорта", СтруктураURI.ИмяСервера); Если ЗначениеЗаполнено(СтруктураURI.Порт) Тогда КаталогиЭкспорта.Вставить("FTPКаталогЭкспортаПорт", СтруктураURI.Порт); КонецЕсли; - ЗапросыРазрешений.Добавить( - РаботаВБезопасномРежиме.ЗапросНаИспользованиеВнешнихРесурсов( - РазрешенияНаРесурсыСервера(КаталогиЭкспорта), - ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Константа.ВыполнятьЗамерыПроизводительности"))); - + Если БазоваяФункциональностьСуществует Тогда + МодульРаботаВБезопасномРежиме = ОбщийМодуль("РаботаВБезопасномРежиме"); + МодульОбщегоНазначения = ОбщийМодуль("ОбщегоНазначения"); + ЗапросыРазрешений.Добавить( + МодульРаботаВБезопасномРежиме.ЗапросНаИспользованиеВнешнихРесурсов( + РазрешенияНаРесурсыСервера(КаталогиЭкспорта), + МодульОбщегоНазначения.ИдентификаторОбъектаМетаданных("Константа.ВыполнятьЗамерыПроизводительности"))); + КонецЕсли; + КонецПроцедуры // Заполняет параметр сеанса "КомментарийЗамераВремени" // при запуске программы. // Функция ПолучитьКомментарийЗамераВремени() + + КомментарийЗамераВремени = Новый Соответствие; + СистемнаяИнформация = Новый СистемнаяИнформация(); ВерсияПриложения = СистемнаяИнформация.ВерсияПриложения; - ВерсияКонфигурации = Метаданные.Синоним + ", версия " + Метаданные.Версия; - Разделители = ""; + + КомментарийЗамераВремени.Вставить("Платф", ВерсияПриложения); + КомментарийЗамераВремени.Вставить("Конф", Метаданные.Синоним); + КомментарийЗамераВремени.Вставить("КонфВер", Метаданные.Версия); РазделениеДанных = ПользователиИнформационнойБазы.ТекущийПользователь().РазделениеДанных; + РазделениеДанныхЗначения = Новый Массив; Если РазделениеДанных.Количество() <> 0 Тогда Для Каждого ТекРазделитель Из РазделениеДанных Цикл - Разделители = Разделители + ТекРазделитель.Значение + ","; + РазделениеДанныхЗначения.Добавить(ТекРазделитель.Значение); КонецЦикла; Иначе - Разделители = "0,"; + РазделениеДанныхЗначения.Добавить(0); КонецЕсли; - Разделители = Лев(Разделители, СтрДлина(Разделители) - 1); + КомментарийЗамераВремени.Вставить("Разд", РазделениеДанныхЗначения); - КомментарийЗамераВремени = ВерсияПриложения - + ";" - + ВерсияКонфигурации - + ";" - + Разделители; + ЗаписьJSON = Новый ЗаписьJSON; + ЗаписьJSON.УстановитьСтроку(Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет)); + ЗаписатьJSON(ЗаписьJSON, КомментарийЗамераВремени); - Возврат КомментарийЗамераВремени; + Возврат ЗаписьJSON.Закрыть(); + КонецФункции // Только для внутреннего использования. Функция ЗапросНаИспользованиеВнешнихРесурсов(Каталоги) Экспорт - - Возврат РаботаВБезопасномРежиме.ЗапросНаИспользованиеВнешнихРесурсов( - РазрешенияНаРесурсыСервера(Каталоги), - ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Константа.ВыполнятьЗамерыПроизводительности")); - + БазоваяФункциональностьСуществует = ПодсистемаСуществует("СтандартныеПодсистемы.БазоваяФункциональность"); + Если БазоваяФункциональностьСуществует Тогда + МодульРаботаВБезопасномРежиме = ОбщийМодуль("РаботаВБезопасномРежиме"); + МодульОбщегоНазначения = ОбщийМодуль("ОбщегоНазначения"); + Возврат МодульРаботаВБезопасномРежиме.ЗапросНаИспользованиеВнешнихРесурсов( + РазрешенияНаРесурсыСервера(Каталоги), + МодульОбщегоНазначения.ИдентификаторОбъектаМетаданных("Константа.ВыполнятьЗамерыПроизводительности")); + КонецЕсли; КонецФункции -//////////////////////////////////////////////////////////////////////////////// -// Экспортные служебные процедуры и функции +// Заполняет параметры, которые используется клиентским кодом на запуске конфигурации. +// +// Параметры: +// Параметры (Структура) Параметры запуска. +// +Процедура ПриДобавленииПараметровРаботыКлиентаПриЗапуске(Параметры) Экспорт + + ПараметрыРаботыКлиента = Новый Структура("ПериодЗаписи, ВыполнятьЗамерыПроизводительности"); + + УстановитьПривилегированныйРежим(Истина); + ТекущийПериод = Константы.ОценкаПроизводительностиПериодЗаписи.Получить(); + ПараметрыРаботыКлиента.ПериодЗаписи = ?(ТекущийПериод >= 1, ТекущийПериод, 60); + ПараметрыРаботыКлиента.ВыполнятьЗамерыПроизводительности = Константы.ВыполнятьЗамерыПроизводительности.Получить(); -// Находит и возвращает регламентное задание экспорта замеров времени + Параметры.Вставить("ОценкаПроизводительности", Новый ФиксированнаяСтруктура(ПараметрыРаботыКлиента)); + +КонецПроцедуры +//////////////////////////////////////////////////////////////////////////////// +// Экспортные служебные процедуры и функции. + +// Находит и возвращает регламентное задание экспорта замеров времени. // // Возвращаемое значение: // РегламентноеЗадание - РегламентноеЗадание.ЭкспортОценкиПроизводительности, найденное задание. @@ -208,7 +266,7 @@ КонецФункции -// Возвращает каталоги экспорта файлов с результатами замеров +// Возвращает каталоги экспорта файлов с результатами замеров. // // Параметры: // Нет @@ -269,7 +327,7 @@ КонецФункции // Возвращает ссылку на элемент "Общая производительность", -// Если существует предопределенный элемент "ОбщаяПроизводительностьСистемы", то возвращается этот элемент +// Если существует предопределенный элемент "ОбщаяПроизводительностьСистемы", то возвращается этот элемент. // В противном случае возвращается пустая ссылка. // // Параметры: @@ -327,10 +385,23 @@ КонецФункции -//////////////////////////////////////////////////////////////////////////////// -// Локальные служебные процедуры и функции +Процедура УстановитьЗначенияКонстант_2_3_3_45() Экспорт + + Константы.КоличествоЗамеровВПакетеЭкспорта.Установить(1000); + Константы.ПериодХраненияЗамеров.Установить(3650); + + РегЗадание = РегламентныеЗадания.НайтиПредопределенное(Метаданные.РегламентныеЗадания.ОчисткаЗамеровВремени); + Если РегЗадание <> Неопределено Тогда + РегЗадание.Использование = Константы.ВыполнятьЗамерыПроизводительности.Получить(); + РегЗадание.Записать(); + КонецЕсли + +КонецПроцедуры -// Формирует массив разрешений для экспорта данных замеров +//////////////////////////////////////////////////////////////////////////////// +// Локальные служебные процедуры и функции. + +// Формирует массив разрешений для экспорта данных замеров. // // Параметры - КаталогиЭкспорта - Структура // @@ -340,26 +411,31 @@ Разрешения = Новый Массив; - Если Каталоги <> Неопределено Тогда - Если Каталоги.Свойство("ВыполнятьЭкспортВЛокальныйКаталог") И Каталоги.ВыполнятьЭкспортВЛокальныйКаталог = Истина Тогда - Если Каталоги.Свойство("ЛокальныйКаталогЭкспорта") И ЗначениеЗаполнено(Каталоги.ЛокальныйКаталогЭкспорта) Тогда - Элемент = РаботаВБезопасномРежиме.РазрешениеНаИспользованиеКаталогаФайловойСистемы( - Каталоги.ЛокальныйКаталогЭкспорта, - Истина, - Истина, - НСтр("ru = 'Сетевой каталог для экспорта результатов замеров производительности.'")); - Разрешения.Добавить(Элемент); + БазоваяФункциональностьСуществует = ПодсистемаСуществует("СтандартныеПодсистемы.БазоваяФункциональность"); + Если БазоваяФункциональностьСуществует Тогда + МодульРаботаВБезопасномРежиме = ОбщийМодуль("РаботаВБезопасномРежиме"); + МодульОбщегоНазначения = ОбщийМодуль("ОбщегоНазначения"); + Если Каталоги <> Неопределено Тогда + Если Каталоги.Свойство("ВыполнятьЭкспортВЛокальныйКаталог") И Каталоги.ВыполнятьЭкспортВЛокальныйКаталог = Истина Тогда + Если Каталоги.Свойство("ЛокальныйКаталогЭкспорта") И ЗначениеЗаполнено(Каталоги.ЛокальныйКаталогЭкспорта) Тогда + Элемент = МодульРаботаВБезопасномРежиме.РазрешениеНаИспользованиеКаталогаФайловойСистемы( + Каталоги.ЛокальныйКаталогЭкспорта, + Истина, + Истина, + НСтр("ru = 'Сетевой каталог для экспорта результатов замеров производительности.'")); + Разрешения.Добавить(Элемент); + КонецЕсли; КонецЕсли; - КонецЕсли; - - Если Каталоги.Свойство("ВыполнятьЭкспортНаFTP") И Каталоги.ВыполнятьЭкспортНаFTP = Истина Тогда - Если Каталоги.Свойство("FTPКаталогЭкспорта") И ЗначениеЗаполнено(Каталоги.FTPКаталогЭкспорта) Тогда - Элемент = РаботаВБезопасномРежиме.РазрешениеНаИспользованиеИнтернетРесурса( - "FTP", - Каталоги.FTPКаталогЭкспорта, - ?(Каталоги.Свойство("FTPКаталогЭкспортаПорт"), Каталоги.FTPКаталогЭкспортаПорт, Неопределено), - НСтр("ru = 'FTP-ресурс для экспорта результатов замеров производительности.'")); - Разрешения.Добавить(Элемент); + + Если Каталоги.Свойство("ВыполнятьЭкспортНаFTP") И Каталоги.ВыполнятьЭкспортНаFTP = Истина Тогда + Если Каталоги.Свойство("FTPКаталогЭкспорта") И ЗначениеЗаполнено(Каталоги.FTPКаталогЭкспорта) Тогда + Элемент = МодульРаботаВБезопасномРежиме.РазрешениеНаИспользованиеИнтернетРесурса( + "FTP", + Каталоги.FTPКаталогЭкспорта, + ?(Каталоги.Свойство("FTPКаталогЭкспортаПорт"), Каталоги.FTPКаталогЭкспортаПорт, Неопределено), + НСтр("ru = 'FTP-ресурс для экспорта результатов замеров производительности.'")); + Разрешения.Добавить(Элемент); + КонецЕсли; КонецЕсли; КонецЕсли; КонецЕсли; @@ -404,11 +480,436 @@ ЗафиксироватьТранзакцию(); Исключение ОтменитьТранзакцию(); - ЗаписьЖурналаРегистрации(НСтр("ru = 'Выполнение операции'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - ВызватьИсключение; + ЗаписьЖурналаРегистрации(НСтр("ru = 'Выполнение операции'", Метаданные.ОсновнойЯзык.КодЯзыка), УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ВызватьИсключение; КонецПопытки; КонецПроцедуры +#Область ОбщегоНазначенияКопия + +// Возвращает Истина, если "функциональная" подсистема существует в конфигурации. +// Предназначена для реализации вызова необязательной подсистемы (условного вызова). +// +// У "функциональной" подсистемы снят флажок "Включать в командный интерфейс". +// +// Параметры: +// ПолноеИмяПодсистемы - Строка - полное имя объекта метаданных подсистема +// без слов "Подсистема." и с учетом регистра символов. +// Например: "СтандартныеПодсистемы.ВариантыОтчетов". +// +// Пример: +// +// Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ВариантыОтчетов") Тогда +// МодульВариантыОтчетов = ОбщегоНазначения.ОбщийМодуль("ВариантыОтчетов"); +// МодульВариантыОтчетов.<Имя метода>(); +// КонецЕсли; +// +// Возвращаемое значение: +// Булево. +// +Функция ПодсистемаСуществует(ПолноеИмяПодсистемы) Экспорт + + Если ЕстьБазоваяФункциональность() Тогда + МодульОбщегоНазначения = Вычислить("ОбщегоНазначения"); + Возврат МодульОбщегоНазначения.ПодсистемаСуществует(ПолноеИмяПодсистемы); + Иначе + ИменаПодсистем = ОценкаПроизводительностиПовтИсп.ИменаПодсистем(); + Возврат ИменаПодсистем.Получить(ПолноеИмяПодсистемы) <> Неопределено; + КонецЕсли; + +КонецФункции + +// Возвращает общие параметры базовой функциональности. +// +// Возвращаемое значение: +// Структура - структура со свойствами: +// * ИмяФормыПерсональныхНастроек - Строка - имя формы для редактирования персональных настроек. +// Ранее определялись в +// ОбщегоНазначенияПереопределяемый.ИмяФормыПерсональныхНастроек. +// * МинимальноНеобходимаяВерсияПлатформы - Строка - полный номер версии платформы для запуска программы. +// Например, "8.3.4.365". +// Ранее определялись в +// ОбщегоНазначенияПереопределяемый.ПолучитьМинимальноНеобходимуюВерсиюПлатформы. +// * РаботаВПрограммеЗапрещена - Булево - Начальное значение Ложь. +// * ЗапрашиватьПодтверждениеПриЗавершенииПрограммы - Булево - по умолчанию Истина. Если установить Ложь, то +// подтверждение при завершении работы программы не +// будет запрашиваться, если явно не разрешить в +// персональных настройках программы. +// * ОтключитьИдентификаторыОбъектовМетаданных - Булево - отключает заполнение справочников ИдентификаторыОбъектовМетаданных +// и ИдентификаторыОбъектовРасширений, процедуру выгрузки и загрузки в узлах РИБ. +// Для частичного встраивания отдельных функций библиотеки в конфигурации без постановки на поддержку. +// * ОтключенныеПодсистемы - Соответствие - Позволяет виртуально отключать подсистемы для целей тестирования. +// Если подсистема отключена, то метод ОбщегоНазначения.ПодсистемаСуществует +// вернет Ложь. В соответствии ключ - имя отключенной подсистемы, +// значение необходимо установить в Истина. +// +Функция ОбщиеПараметрыБазовойФункциональности() Экспорт + + ОбщиеПараметры = Новый Структура; + ОбщиеПараметры.Вставить("ОтключенныеПодсистемы", Новый Соответствие); + + Возврат ОбщиеПараметры; + +КонецФункции + +Функция ЕстьБазоваяФункциональность() + + ЕстьСтандартныеПодсистемы = Метаданные.Подсистемы.Найти("СтандартныеПодсистемы"); + + Если ЕстьСтандартныеПодсистемы = Неопределено Тогда + Возврат Ложь; + Иначе + Если ЕстьСтандартныеПодсистемы.Подсистемы.Найти("БазоваяФункциональность") = Неопределено Тогда + Возврат Ложь; + Иначе + Возврат Истина; + КонецЕсли; + КонецЕсли; + +КонецФункции + + +// Возвращает ссылку на общий модуль по имени. +// +// Параметры: +// Имя - Строка - имя общего модуля, например: +// "ОбщегоНазначения", +// "ОбщегоНазначенияКлиент". +// +// Возвращаемое значение: +// ОбщийМодуль. +// +Функция ОбщийМодуль(Имя) Экспорт + + Если ЕстьБазоваяФункциональность() Тогда + МодульОбщегоНазначения = Вычислить("ОбщегоНазначения"); + Модуль = МодульОбщегоНазначения.ОбщийМодуль(Имя); + Иначе + Если Метаданные.ОбщиеМодули.Найти(Имя) <> Неопределено Тогда + Модуль = ВычислитьВБезопасномРежиме(Имя); + ИначеЕсли СтрЧислоВхождений(Имя, ".") = 1 Тогда + Возврат СерверныйМодульМенеджера(Имя); + Иначе + Модуль = Неопределено; + КонецЕсли; + + Если ТипЗнч(Модуль) <> Тип("ОбщийМодуль") Тогда + СообщениеИсключения = НСтр("ru = 'Общий модуль ""%1"" не найден.'"); + ВызватьИсключение СтрЗаменить(СообщениеИсключения, "%1", Имя); + КонецЕсли; + КонецЕсли; + + Возврат Модуль; + +КонецФункции + +// Возвращает серверный модуль менеджера по имени объекта. +Функция СерверныйМодульМенеджера(Имя) + ОбъектНайден = Ложь; + + ЧастиИмени = СтрРазделить(Имя, "."); + Если ЧастиИмени.Количество() = 2 Тогда + + ИмяВида = ВРег(ЧастиИмени[0]); + ИмяОбъекта = ЧастиИмени[1]; + + Если ИмяВида = ВРег(ИмяТипаКонстанты()) Тогда + Если Метаданные.Константы.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + ИначеЕсли ИмяВида = ВРег(ИмяТипаРегистрыСведений()) Тогда + Если Метаданные.РегистрыСведений.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + ИначеЕсли ИмяВида = ВРег(ИмяТипаРегистрыНакопления()) Тогда + Если Метаданные.РегистрыНакопления.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + ИначеЕсли ИмяВида = ВРег(ИмяТипаРегистрыБухгалтерии()) Тогда + Если Метаданные.РегистрыБухгалтерии.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + ИначеЕсли ИмяВида = ВРег(ИмяТипаРегистрыРасчета()) Тогда + Если Метаданные.РегистрыРасчета.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + ИначеЕсли ИмяВида = ВРег(ИмяТипаСправочники()) Тогда + Если Метаданные.Справочники.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + ИначеЕсли ИмяВида = ВРег(ИмяТипаДокументы()) Тогда + Если Метаданные.Документы.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + ИначеЕсли ИмяВида = ВРег(ИмяТипаОтчеты()) Тогда + Если Метаданные.Отчеты.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + ИначеЕсли ИмяВида = ВРег(ИмяТипаОбработки()) Тогда + Если Метаданные.Обработки.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + ИначеЕсли ИмяВида = ВРег(ИмяТипаБизнесПроцессы()) Тогда + Если Метаданные.БизнесПроцессы.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + ИначеЕсли ИмяВида = ВРег(ИмяТипаЖурналыДокументов()) Тогда + Если Метаданные.ЖурналыДокументов.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + ИначеЕсли ИмяВида = ВРег(ИмяТипаЗадачи()) Тогда + Если Метаданные.Задачи.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + ИначеЕсли ИмяВида = ВРег(ИмяТипаПланыСчетов()) Тогда + Если Метаданные.ПланыСчетов.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + ИначеЕсли ИмяВида = ВРег(ИмяТипаПланыОбмена()) Тогда + Если Метаданные.ПланыОбмена.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + ИначеЕсли ИмяВида = ВРег(ИмяТипаПланыВидовХарактеристик()) Тогда + Если Метаданные.ПланыВидовХарактеристик.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + ИначеЕсли ИмяВида = ВРег(ИмяТипаПланыВидовРасчета()) Тогда + Если Метаданные.ПланыВидовРасчета.Найти(ИмяОбъекта) <> Неопределено Тогда + ОбъектНайден = Истина; + КонецЕсли; + КонецЕсли; + + КонецЕсли; + + Если Не ОбъектНайден Тогда + СообщениеИсключения = НСтр("ru = 'Объект метаданных ""%1"" не найден, + |либо для него не поддерживается получение модуля менеджера.'"); + ВызватьИсключение СтрЗаменить(СообщениеИсключения, "%1", Имя); + КонецЕсли; + + Модуль = ВычислитьВБезопасномРежиме(Имя); + + Возврат Модуль; +КонецФункции + +// Возвращает значение для идентификации общего типа "Регистры сведений". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаРегистрыСведений() + + Возврат "РегистрыСведений"; + +КонецФункции + +// Возвращает значение для идентификации общего типа "Регистры накопления". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаРегистрыНакопления() + + Возврат "РегистрыНакопления"; + +КонецФункции + +// Возвращает значение для идентификации общего типа "Регистры бухгалтерии". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаРегистрыБухгалтерии() + + Возврат "РегистрыБухгалтерии"; + +КонецФункции + +// Возвращает значение для идентификации общего типа "Регистры расчета". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаРегистрыРасчета() + + Возврат "РегистрыРасчета"; + +КонецФункции + +// Возвращает значение для идентификации общего типа "Документы". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаДокументы() + + Возврат "Документы"; + +КонецФункции + +// Возвращает значение для идентификации общего типа "Справочники". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаСправочники() + + Возврат "Справочники"; + +КонецФункции + +// Возвращает значение для идентификации общего типа "Отчеты". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаОтчеты() + + Возврат "Отчеты"; + +КонецФункции + +// Возвращает значение для идентификации общего типа "Обработки". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаОбработки() + + Возврат "Обработки"; + +КонецФункции + +// Возвращает значение для идентификации общего типа "ПланыОбмена". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаПланыОбмена() + + Возврат "ПланыОбмена"; + +КонецФункции + +// Возвращает значение для идентификации общего типа "Планы видов характеристик". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаПланыВидовХарактеристик() + + Возврат "ПланыВидовХарактеристик"; + +КонецФункции + +// Возвращает значение для идентификации общего типа "Бизнес-процессы". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаБизнесПроцессы() + + Возврат "БизнесПроцессы"; + +КонецФункции + +// Возвращает значение для идентификации общего типа "Задачи". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаЗадачи() + + Возврат "Задачи"; + +КонецФункции + +// Возвращает значение для идентификации общего типа "Планы счетов". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаПланыСчетов() + + Возврат "ПланыСчетов"; + +КонецФункции + +// Возвращает значение для идентификации общего типа "Планы видов расчета". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаПланыВидовРасчета() + + Возврат "ПланыВидовРасчета"; + +КонецФункции + +// Возвращает значение для идентификации общего типа "Константы". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаКонстанты() + + Возврат "Константы"; + +КонецФункции + +// Возвращает значение для идентификации общего типа "Журналы документов". +// +// Возвращаемое значение: +// Строка. +// +Функция ИмяТипаЖурналыДокументов() + + Возврат "ЖурналыДокументов"; + +КонецФункции + #КонецОбласти +#Область РаботаВБезопасномРежимеКопия + +// Вычисляет переданное выражение, предварительно устанавливая безопасный режим выполнения кода +// и безопасный режим разделения данных для всех разделителей, присутствующих в составе конфигурации. +// В результате при вычислении выражения: +// - игнорируются попытки установки привилегированного режима, +// - запрещаются все внешние (по отношению к платформе 1С:Предприятие) действия (COM, +// загрузка внешних компонент, запуск внешних приложений и команд операционной системы, +// доступ к файловой системе и Интернет-ресурсам), +// - запрещается отключение использования разделителей сеанса, +// - запрещается изменение значений разделителей сеанса (если разделение данным разделителем не +// является условно выключенным), +// - запрещается изменение объектов, которые управляют состоянием условного разделения. +// +// Параметры: +// Выражение - Строка - выражение, которое требуется вычислить. Например, "МойМодуль.МояФункция(Параметры)". +// Параметры - Произвольный - в качестве значения данного параметра может быть передано значение, +// которое требуется для вычисления выражения (при этом в тексте выражения обращение к данному +// значению должно осуществляться как к имени переменной Параметры). +// +// Возвращаемое значение: +// Произвольный - результат вычисления выражения. +// +Функция ВычислитьВБезопасномРежиме(Знач Выражение, Знач Параметры = Неопределено) + + УстановитьБезопасныйРежим(Истина); + + МассивРазделителей = ОценкаПроизводительностиПовтИсп.РазделителиКонфигурации(); + + Для Каждого ИмяРазделителя Из МассивРазделителей Цикл + + УстановитьБезопасныйРежимРазделенияДанных(ИмяРазделителя, Истина); + + КонецЦикла; + + Возврат Вычислить(Выражение); + +КонецФункции + +#КонецОбласти + +#КонецОбласти diff --git a/SSL/src/CommonModules/ОчередьЗаданийСлужебный/Module.bsl b/SSL/src/CommonModules/ОчередьЗаданийСлужебный/Module.bsl index d0686bbc0..5a118f64c 100644 --- a/SSL/src/CommonModules/ОчередьЗаданийСлужебный/Module.bsl +++ b/SSL/src/CommonModules/ОчередьЗаданийСлужебный/Module.bsl @@ -652,7 +652,7 @@ Результат = ОбщегоНазначения.ВыполнитьЗапросВнеТранзакции(Запрос); Выборка = Результат.Выбрать(); - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.БазоваяФункциональностьВМоделиСервиса") Тогда МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса"); Иначе МодульРаботаВМоделиСервиса = Неопределено; @@ -679,9 +679,11 @@ // Перепланируем завершившиеся регламентные задания и аварийно завершившиеся фоновые, удаляем выполненные фоновые. ЗапланироватьЗадание(Выборка); + РазблокироватьДанныеДляРедактирования(Выборка.Идентификатор); + КонецЦикла; - // Вычисление количество требуемых исполняющих фоновых заданий. + // Вычисление количества требуемых исполняющих фоновых заданий. КоличествоЗапускаемыхФоновыхЗаданий = КоличествоИсполняющихФоновыхЗаданийКЗапуску(); // Запуск исполняющих фоновых заданий. @@ -889,7 +891,7 @@ РазмерВыборкиТекст = Формат(МаксимальноеКоличествоИсполняющихФоновыхЗаданий * 3, "ЧН=; ЧГ="); Запрос.Текст = СтрЗаменить(Запрос.Текст, "111", РазмерВыборкиТекст); - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.БазоваяФункциональностьВМоделиСервиса") Тогда МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса"); Иначе МодульРаботаВМоделиСервиса = Неопределено; @@ -1007,36 +1009,37 @@ // Процедура ОбработатьОшибку(Знач Задание, Знач ИнформацияОбОшибкеВыполненияЗадания = Неопределено) Экспорт - Попытка + ПараметрыОбработчикаОшибок = ПолучитьПараметрыОбработчикаОшибок(Задание, ИнформацияОбОшибкеВыполненияЗадания); + + Если ПараметрыОбработчикаОшибок.ОбработчикСуществует Тогда - ЗаблокироватьДанныеДляРедактирования(Задание); - - ПараметрыОбработчикаОшибок = ПолучитьПараметрыОбработчикаОшибок(Задание, ИнформацияОбОшибкеВыполненияЗадания); - Если ПараметрыОбработчикаОшибок.ОбработчикСуществует Тогда + Попытка + ВыполнитьМетодКонфигурации(ПараметрыОбработчикаОшибок.ИмяМетода, ПараметрыОбработчикаОшибок.ПараметрыВызоваОбработчика); - КонецЕсли; - - Исключение - - ШаблонКомментария = НСтр("ru = 'Ошибка при выполнении обработчика ошибок - |Псевдоним метода: %1 - |Метод обработчика ошибок: %2 - |По причине: - |%3'"); - ТекстКомментария = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонКомментария, - ПараметрыОбработчикаОшибок.ИмяМетодаЗадания, - ПараметрыОбработчикаОшибок.ИмяМетода, - ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - ЗаписьЖурналаРегистрации( - НСтр("ru = 'Очередь регламентных заданий.Ошибка обработчика ошибок'", - ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), - УровеньЖурналаРегистрации.Ошибка, - , - , - ТекстКомментария); + Исключение - КонецПопытки; + ШаблонКомментария = НСтр("ru = 'Ошибка при выполнении обработчика ошибок + |Псевдоним метода: %1 + |Метод обработчика ошибок: %2 + |По причине: + |%3'"); + ТекстКомментария = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонКомментария, + ПараметрыОбработчикаОшибок.ИмяМетодаЗадания, + ПараметрыОбработчикаОшибок.ИмяМетода, + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + + ЗаписьЖурналаРегистрации( + НСтр("ru = 'Очередь регламентных заданий.Ошибка обработчика ошибок'", + ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, + , + , + ТекстКомментария); + + КонецПопытки; + + КонецЕсли; Если ОбщегоНазначения.СсылкаСуществует(Задание) И Задание.СостояниеЗадания = Перечисления.СостоянияЗаданий.ОбработкаОшибкиПриАварийномЗавершении Тогда @@ -1047,8 +1050,6 @@ КонецЕсли; - РазблокироватьДанныеДляРедактирования(Задание); - КонецПроцедуры // Служебная процедура, которая снимает задания обработчика ошибок и свои собственные. Необходима для случая, когда @@ -1318,7 +1319,7 @@ // ТаблицаЗначений - таблица, которую необходимо заполнить // регламентными заданиями и признаком использования. // -Функция ПолучитьТаблицуИспользованияРегламентныхЗаданий() +Функция ИспользованиеРегламентныхЗаданий() ТаблицаИспользования = Новый ТаблицаЗначений; ТаблицаИспользования.Колонки.Добавить("РегламентноеЗадание", Новый ОписаниеТипов("Строка")); @@ -1457,22 +1458,53 @@ ЧасовойПояс = Неопределено; КонецЕсли; + Если Выборка.ОбластьДанных <> -1 Тогда + + Попытка + + ОбщегоНазначения.УстановитьРазделениеСеанса(Истина, Выборка.ОбластьДанных); + + Исключение + + ОбщегоНазначения.УстановитьРазделениеСеанса(Ложь); + + ШаблонСообщения = + НСтр("ru = 'Задание очереди с именем метода %1 в области %2 не запланировано по причине: + |%3'"); + + Если ЗначениеЗаполнено(Выборка.Шаблон) Тогда + + ИмяМетода = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Выборка.Шаблон, "ИмяМетода"); + + Иначе + + ИмяМетода = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Выборка.Идентификатор, "ИмяМетода"); + + КонецЕсли; + + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонСообщения, ИмяМетода, Выборка.ОбластьДанных, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации( + НСтр("ru = 'Очередь заданий.Планирование'", + ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка,,, + ТекстСообщения); + + Возврат; + + КонецПопытки; + + КонецЕсли; + НачатьТранзакцию(); Попытка - Если Выборка.ОбластьДанных <> -1 Тогда - ОбщегоНазначения.УстановитьРазделениеСеанса(Истина, Выборка.ОбластьДанных); - КонецЕсли; - Блокировка = Новый БлокировкаДанных; ЭлементБлокировки = Блокировка.Добавить(Выборка.Идентификатор.Метаданные().ПолноеИмя()); ЭлементБлокировки.УстановитьЗначение("Ссылка", Выборка.Идентификатор); Блокировка.Заблокировать(); Если НЕ ОбщегоНазначения.СсылкаСуществует(Выборка.Идентификатор) Тогда - Блокировка.Заблокировать(); - РазблокироватьДанныеДляРедактирования(Выборка.Идентификатор); ОтменитьТранзакцию(); Возврат; КонецЕсли; @@ -1495,7 +1527,6 @@ ТекстСообщения); ОбщегоНазначения.УстановитьРазделениеСеанса(Ложь); - РазблокироватьДанныеДляРедактирования(Выборка.Идентификатор); ОтменитьТранзакцию(); Возврат; @@ -1586,7 +1617,6 @@ ОбщегоНазначения.УстановитьРазделениеСеанса(Ложь); ОтменитьТранзакцию(); - РазблокироватьДанныеДляРедактирования(Выборка.Идентификатор); Возврат; КонецЕсли; @@ -1601,14 +1631,35 @@ ОбщегоНазначения.УстановитьРазделениеСеанса(Ложь); ЗафиксироватьТранзакцию(); - РазблокироватьДанныеДляРедактирования(Выборка.Идентификатор); Исключение - ОбщегоНазначения.УстановитьРазделениеСеанса(Ложь); ОтменитьТранзакцию(); - РазблокироватьДанныеДляРедактирования(Выборка.Идентификатор); - ВызватьИсключение; + ОбщегоНазначения.УстановитьРазделениеСеанса(Ложь); + + ШаблонСообщения = + НСтр("ru = 'Задание очереди с именем метода %1 не запланировано по причине: + |%2'"); + + Если ЗначениеЗаполнено(Выборка.Шаблон) Тогда + + ИмяМетода = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Выборка.Шаблон, "ИмяМетода"); + + Иначе + + ИмяМетода = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Выборка.Идентификатор, "ИмяМетода"); + + КонецЕсли; + + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонСообщения, ИмяМетода, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + + ЗаписьЖурналаРегистрации( + НСтр("ru = 'Очередь заданий.Планирование'", + ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка,,, + ТекстСообщения); + + Возврат; КонецПопытки; @@ -1784,7 +1835,7 @@ // Процедура УстановитьИспользованиеРегламентныхЗаданий() Экспорт - ТаблицаИспользованияРегламентныхЗаданийВМоделиСервиса = ПолучитьТаблицуИспользованияРегламентныхЗаданий(); + ТаблицаИспользованияРегламентныхЗаданийВМоделиСервиса = ИспользованиеРегламентныхЗаданий(); Для Каждого Строка Из ТаблицаИспользованияРегламентныхЗаданийВМоделиСервиса Цикл diff --git a/SSL/src/CommonModules/ОчередьЗаданийСлужебныйРазделениеДанных/Module.bsl b/SSL/src/CommonModules/ОчередьЗаданийСлужебныйРазделениеДанных/Module.bsl index 5dd3b4e36..fed5f570d 100644 --- a/SSL/src/CommonModules/ОчередьЗаданийСлужебныйРазделениеДанных/Module.bsl +++ b/SSL/src/CommonModules/ОчередьЗаданийСлужебныйРазделениеДанных/Module.bsl @@ -436,12 +436,16 @@ // Процедура ПослеЗагрузкиДанныхИзДругойМодели() Экспорт - Если НЕ ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда - Возврат; - КонецЕсли; - СоздатьЗаданияОчередиПоШаблонамВТекущейОбласти(); + // Устанавливать использование регламентных заданий только после создания заданий очереди. + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РегламентныеЗадания") Тогда + + МодульРегламентныеЗаданияСлужебный = ОбщегоНазначения.ОбщийМодуль("РегламентныеЗаданияСлужебный"); + МодульРегламентныеЗаданияСлужебный.УстановитьИспользованиеРегламентныхЗаданийПоФункциональнымОпциям(Истина); + + КонецЕсли; + КонецПроцедуры // Заполняет массив типов, исключаемых из выгрузки и загрузки данных. @@ -498,7 +502,7 @@ ТаблицаШаблонов.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(150, ДопустимаяДлина.Переменная))); ТаблицаШаблонов.Колонки.Добавить("Имя", Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(255, ДопустимаяДлина.Переменная))); - ИменаШаблонов = ПолучитьСписокШаблоновЗаданийОчереди(); + ИменаШаблонов = ШаблоныЗаданийОчереди(); Задания = РегламентныеЗадания.ПолучитьРегламентныеЗадания(); Для Каждого Задание Из Задания Цикл @@ -630,7 +634,7 @@ КонецФункции -Функция ПолучитьСписокШаблоновЗаданийОчереди() +Функция ШаблоныЗаданийОчереди() Шаблоны = Новый Массив; diff --git a/SSL/src/CommonModules/ПерепрефиксацияОбъектов/Module.bsl b/SSL/src/CommonModules/ПерепрефиксацияОбъектов/Module.bsl deleted file mode 100644 index 534aac807..000000000 --- a/SSL/src/CommonModules/ПерепрефиксацияОбъектов/Module.bsl +++ /dev/null @@ -1,1524 +0,0 @@ -//////////////////////////////////////////////////////////////////////////////// -// Подсистема "Префиксация объектов". -// -//////////////////////////////////////////////////////////////////////////////// - -#Область ПрограммныйИнтерфейс - -// Устанавливает новый префикс информационной базы и изменяет коды и номера объектов -// в соответствии с новым префиксом и форматом кода/номера. -// Обработке подлежат только объекты, созданные в текущей информационной базе. -// Место создания объекта определяется по префиксу его номера или кода. -// -// Параметры: -// НовыйПрефиксИБ - Строка - Новый префикс информационной базы, который требуется установить. -// НачалоПериодаПерепрефиксации - Дата - Дата, начиная с которой будет установлен новый префикс ИБ у документов, -// бизнес-процессов и задач. -// ПредыдущийПрефиксИБ - Строка - Префикс информационной базы, который был установлен раньше. -// Задавать значение переменной имеет смысл только в том случае, -// если произошла утеря значения префикса ИБ, например, -// при переходе из локального режима работы в модель сервиса. -// А также, если номера и коды объектов имеют нестандартный -// формат, отличный от формата БСП. -// ОбъектовОбработано - Число - В этот параметр возвращается количество объектов, для которых был изменен номер или -// код. -// -Процедура УстановитьПрефиксИБИПерепрефиксоватьОбъектыСозданныеВЭтойИБ( - Знач НовыйПрефиксИБ, - Знач НачалоПериодаПерепрефиксации = Неопределено, - Знач ПредыдущийПрефиксИБ = Неопределено, - ОбъектовОбработано = 0) Экспорт - - СлужебнаяУстановитьПрефиксИБИПерепрефиксоватьОбъектыСозданныеВЭтойИБ(НовыйПрефиксИБ, НачалоПериодаПерепрефиксации, ПредыдущийПрефиксИБ, ОбъектовОбработано); - -КонецПроцедуры - -// Устанавливает новый префикс информационной базы и изменяет коды и номера объектов -// в соответствии с новым префиксом и форматом кода/номера. -// Обработке подлежат все объекты, вне зависимости от того, в какой информационной базе был создан объект. -// Место создания объекта определяется по префиксу его номера или кода. -// -// Параметры: -// НовыйПрефиксИБ - Строка - Новый префикс информационной базы, который требуется установить. -// НачалоПериодаПерепрефиксации - Дата - Дата, начиная с которой будет установлен новый префикс ИБ у документов, -// бизнес-процессов и задач. -// ПредыдущийПрефиксИБ - Строка - Префикс информационной базы, который был установлен раньше. -// Задавать значение переменной имеет смысл только в том случае, -// если произошла утеря значения префикса ИБ, например, -// при переходе из локального режима работы в модель сервиса. -// А также, если номера и коды объектов имеют нестандартный -// формат, отличный от формата БСП. -// ОбъектовОбработано - Число - В этот параметр возвращается количество объектов, для которых был изменен номер или -// код. -// -Процедура УстановитьПрефиксИБИПерепрефиксоватьВсеОбъекты( - Знач НовыйПрефиксИБ, - Знач НачалоПериодаПерепрефиксации = Неопределено, - Знач ПредыдущийПрефиксИБ = Неопределено, - ОбъектовОбработано = 0) Экспорт - - СлужебнаяУстановитьПрефиксИБИПерепрефиксоватьВсеОбъекты(НовыйПрефиксИБ, НачалоПериодаПерепрефиксации, ПредыдущийПрефиксИБ, ОбъектовОбработано); - -КонецПроцедуры - -// Устанавливает новый префикс информационной базы и создает новые объекты -// по одному на каждый тип данных с новым префиксом информационной базы и форматом номера/кода БСП. -// Обработке подлежат только объекты, созданные в текущей информационной базе. -// Место создания объекта определяется по префиксу его номера или кода. -// -// Параметры: -// НовыйПрефиксИБ - Строка - Новый префикс информационной базы, который требуется установить. -// НачалоПериодаПерепрефиксации - Дата - Дата, начиная с которой будет выполнен анализ данных. -// ПредыдущийПрефиксИБ - Строка - Префикс информационной базы, который был установлен раньше. -// Задавать значение переменной имеет смысл только в том случае, -// если произошла утеря значения префикса ИБ, например, -// при переходе из локального режима работы в модель сервиса. -// А также, если номера и коды объектов имеют нестандартный -// формат, отличный от формата БСП. -// ОбъектовОбработано - Число - В этот параметр возвращается количество созданных объектов. -// -Процедура УстановитьПрефиксИБИСоздатьОбъекты( - Знач НовыйПрефиксИБ, - Знач НачалоПериодаПерепрефиксации = Неопределено, - Знач ПредыдущийПрефиксИБ = Неопределено, - ОбъектовОбработано = 0) Экспорт - - СлужебнаяУстановитьПрефиксИБИСоздатьОбъекты(НовыйПрефиксИБ, НачалоПериодаПерепрефиксации, ПредыдущийПрефиксИБ, ОбъектовОбработано); - -КонецПроцедуры - -// Устанавливает новый префикс информационной базы и изменяет код или номер -// последнего актуального объекта для каждого типа данных. -// Обработке подлежат только объекты, созданные в текущей информационной базе. -// Место создания объекта определяется по префиксу его номера или кода. -// -// Параметры: -// НовыйПрефиксИБ - Строка - Новый префикс информационной базы, который требуется установить. -// НачалоПериодаПерепрефиксации - Дата - Дата, начиная с которой будет выполнен анализ данных. -// ПредыдущийПрефиксИБ - Строка - Префикс информационной базы, который был установлен раньше. -// Задавать значение переменной имеет смысл только в том случае, -// если произошла утеря значения префикса ИБ, например, -// при переходе из локального режима работы в модель сервиса. -// А также, если номера и коды объектов имеют нестандартный -// формат, отличный от формата БСП. -// ОбъектовОбработано - Число - В этот параметр возвращается количество измененных объектов. -// -Процедура УстановитьПрефиксИБИПерепрефиксоватьПоследниеОбъекты( - Знач НовыйПрефиксИБ, - Знач НачалоПериодаПерепрефиксации = Неопределено, - Знач ПредыдущийПрефиксИБ = Неопределено, - ОбъектовОбработано = 0) Экспорт - - СлужебнаяУстановитьПрефиксИБИПерепрефиксоватьПоследниеОбъекты(НовыйПрефиксИБ, НачалоПериодаПерепрефиксации, ПредыдущийПрефиксИБ, ОбъектовОбработано); - -КонецПроцедуры - -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -Процедура СлужебнаяУстановитьПрефиксИБИПерепрефиксоватьОбъектыСозданныеВЭтойИБ( - Знач НовыйПрефикс, - Знач СДаты = Неопределено, - Знач ПредыдущийПрефиксИнформационнойБазы = Неопределено, - СчетчикОбработанныхОбъектов = 0) - - Если ТранзакцияАктивна() Тогда - - ВызватьИсключение НСтр("ru = 'Изменение префикса информационной базы не может выполняться в транзакции.'"); - - ИначеЕсли Не Пользователи.ЭтоПолноправныйПользователь() Тогда - - ВызватьИсключение НСтр("ru = 'Недостаточно прав для изменения префикса информационной базы.'"); - - КонецЕсли; - - Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда - УстановитьПривилегированныйРежим(Истина); - КонецЕсли; - - СДаты = ?(СДаты = Дата('00010101'), Неопределено, СДаты); - - СтандартныйПрефикс = (ПредыдущийПрефиксИнформационнойБазы = Неопределено); - - СчетчикОбработанныхОбъектов = 0; - - Если СтандартныйПрефикс Тогда - - УстановитьНовыйПрефиксИВыполнитьОбработкуДанныхСоСтандартнымФорматомКода(СчетчикОбработанныхОбъектов, НовыйПрефикс, СДаты, ПредыдущийПрефиксИнформационнойБазы); - - Иначе - - УстановитьНовыйПрефиксИВыполнитьОбработкуДанныхСНестандартнымФорматомКода(СчетчикОбработанныхОбъектов, НовыйПрефикс, СДаты, ПредыдущийПрефиксИнформационнойБазы); - - КонецЕсли; - -КонецПроцедуры - -Процедура СлужебнаяУстановитьПрефиксИБИПерепрефиксоватьВсеОбъекты( - Знач НовыйПрефикс, - Знач СДаты = Неопределено, - Знач ПредыдущийПрефиксИнформационнойБазы = Неопределено, - СчетчикОбработанныхОбъектов = 0) - - Если ТранзакцияАктивна() Тогда - - ВызватьИсключение НСтр("ru = 'Изменение префикса информационной базы не может выполняться в транзакции.'"); - - ИначеЕсли Не Пользователи.ЭтоПолноправныйПользователь() Тогда - - ВызватьИсключение НСтр("ru = 'Недостаточно прав для изменения префикса информационной базы.'"); - - КонецЕсли; - - Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда - УстановитьПривилегированныйРежим(Истина); - КонецЕсли; - - СДаты = ?(СДаты = Дата('00010101'), Неопределено, СДаты); - - СтандартныйПрефикс = (ПредыдущийПрефиксИнформационнойБазы = Неопределено); - - СчетчикОбработанныхОбъектов = 0; - - Если СтандартныйПрефикс Тогда - - УстановитьНовыйПрефиксИВыполнитьОбработкуДанныхСоСтандартнымФорматомКода(СчетчикОбработанныхОбъектов, НовыйПрефикс, СДаты,, Истина); - - Иначе - - УстановитьНовыйПрефиксИВыполнитьОбработкуДанныхСНестандартнымФорматомКода(СчетчикОбработанныхОбъектов, НовыйПрефикс, СДаты,, Истина); - - КонецЕсли; - -КонецПроцедуры - -Процедура СлужебнаяУстановитьПрефиксИБИСоздатьОбъекты( - Знач НовыйПрефикс, - Знач СДаты = Неопределено, - Знач ПредыдущийПрефиксИнформационнойБазы = Неопределено, - СчетчикОбработанныхОбъектов = 0) - - СчетчикОбработанныхОбъектов = 0; - - УстановитьПрефиксИБИСоздатьИзменитьОбъекты(СчетчикОбработанныхОбъектов, НовыйПрефикс, СДаты, ПредыдущийПрефиксИнформационнойБазы, Ложь); - -КонецПроцедуры - -Процедура СлужебнаяУстановитьПрефиксИБИПерепрефиксоватьПоследниеОбъекты( - Знач НовыйПрефикс, - Знач СДаты = Неопределено, - Знач ПредыдущийПрефиксИнформационнойБазы = Неопределено, - СчетчикОбработанныхОбъектов = 0) - - СчетчикОбработанныхОбъектов = 0; - - УстановитьПрефиксИБИСоздатьИзменитьОбъекты(СчетчикОбработанныхОбъектов, НовыйПрефикс, СДаты, ПредыдущийПрефиксИнформационнойБазы, Истина); - -КонецПроцедуры - -// - -Процедура УстановитьНовыйПрефиксИВыполнитьОбработкуДанныхСНестандартнымФорматомКода( - СчетчикОбработанныхОбъектов, - Знач НовыйПрефикс, - Знач СДаты, - Знач ПредыдущийПрефиксИнформационнойБазы = Неопределено, - Знач ОбрабатыватьВсеДанные = Ложь) - - ПроверитьВозможностьУстановкиПрефикса(); - - СтандартныйПрефикс = Ложь; - - Если ПредыдущийПрефиксИнформационнойБазы = Неопределено Тогда - - ПриОпределенииПрефиксаИнформационнойБазы(ПредыдущийПрефиксИнформационнойБазы); - - ДополнитьСтрокуНулямиСлева(ПредыдущийПрефиксИнформационнойБазы, 2); - - КонецЕсли; - - Попытка - - УстановитьПрефиксИнформационнойБазы(НовыйПрефикс); - - ВнешнийМонопольныйРежим = МонопольныйРежим(); - Если Не ВнешнийМонопольныйРежим Тогда - ОбщегоНазначения.ЗаблокироватьИБ(Ложь); - КонецЕсли; - - Для Каждого ОписаниеОбъекта Из МетаданныеИспользующиеПрефиксИнформационнойБазы() Цикл - - Выборка = ВыборкаДанных( - ОписаниеОбъекта.ИмяОбъекта, - СДаты, - ОписаниеОбъекта.ЭтоДокумент, - СтандартныйПрефикс, - ПредыдущийПрефиксИнформационнойБазы, - ОбрабатыватьВсеДанные); - - Если Выборка.Пустой() Тогда - Продолжить; - КонецЕсли; - - Выборка = Выборка.Выбрать(); - - Пока Выборка.Следующий() Цикл - - // {Фильтр: По месту создания объекта}. - Если Не ОбрабатыватьВсеДанные Тогда - - ПолныйПрефиксОбъекта = ПолныйПрефикс(Выборка.Код); - - Если Не ПустаяСтрока(ПолныйПрефиксОбъекта) - И СтрНайти(ПолныйПрефиксОбъекта, ПредыдущийПрефиксИнформационнойБазы) = 0 Тогда - Продолжить; // Обрабатываем объекты, созданные только в текущей информационной базе. - КонецЕсли; - - КонецЕсли; - - Объект = Выборка.Ссылка.ПолучитьОбъект(); - - Если ОписаниеОбъекта.ЭтоДокумент Тогда - - Объект.УстановитьНовыйНомер(); - - ФорматКода = Объект.Номер; - - Иначе - - Объект.УстановитьНовыйКод(); - - ФорматКода = Объект.Код; - - КонецЕсли; - - // {Обработчик: ПриИзмененииНомера} Начало - СтандартнаяОбработка = Истина; - БазовыйКод = ""; - - Если ОписаниеОбъекта.ЭтоДокумент Тогда - - ПрефиксацияОбъектовПереопределяемый.ПриИзмененииНомера(Объект, Выборка.Код, БазовыйКод, СтандартнаяОбработка); - - Иначе - - ПрефиксацияОбъектовПереопределяемый.ПриИзмененииКода(Объект, Выборка.Код, БазовыйКод, СтандартнаяОбработка); - - КонецЕсли; - - Если СтандартнаяОбработка = Истина Тогда - - КодНовый = НовыйКодОбъекта(ФорматКода, Выборка.Код, ОписаниеОбъекта.ЭтоДокумент, Объект); - - Иначе - - КодНовый = НовыйКодОбъектаПоБазовомуКоду(ФорматКода, БазовыйКод, ОписаниеОбъекта.ЭтоДокумент, Объект); - - КонецЕсли; - // {Обработчик: ПриИзмененииНомера} Окончание - - ОбъектМодифицирован = (Выборка.Код <> КодНовый); - - Если ОбъектМодифицирован Тогда - - Объект[?(ОписаниеОбъекта.ЭтоДокумент, "Номер", "Код")] = КодНовый; - - Объект.ОбменДанными.Загрузка = Истина; - Объект.Записать(); - - УвеличитьСчетчикОбработанныхОбъектов(СчетчикОбработанныхОбъектов); - - КонецЕсли; - - КонецЦикла; - - КонецЦикла; - - Если Не ВнешнийМонопольныйРежим Тогда - ОбщегоНазначения.РазблокироватьИБ(); - КонецЕсли; - - Исключение - - Если Не ВнешнийМонопольныйРежим Тогда - ОбщегоНазначения.РазблокироватьИБ(); - КонецЕсли; - - УстановитьПрефиксИнформационнойБазы(ПредыдущийПрефиксИнформационнойБазы); - - ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииПерепрефиксацияОбъектов(), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - ВызватьИсключение; - КонецПопытки; - -КонецПроцедуры - -Процедура УстановитьНовыйПрефиксИВыполнитьОбработкуДанныхСоСтандартнымФорматомКода( - СчетчикОбработанныхОбъектов, - Знач НовыйПрефикс, - Знач СДаты, - Знач ПредыдущийПрефиксИнформационнойБазы = Неопределено, - Знач ОбрабатыватьВсеДанные = Ложь) - - ПроверитьВозможностьУстановкиПрефикса(); - - НовыйПрефиксПолный = СтроковыеФункцииКлиентСервер.ДополнитьСтроку(НовыйПрефикс, 2); - - СтандартныйПрефикс = Истина; - - Если ПредыдущийПрефиксИнформационнойБазы = Неопределено Тогда - - ПриОпределенииПрефиксаИнформационнойБазы(ПредыдущийПрефиксИнформационнойБазы); - - ДополнитьСтрокуНулямиСлева(ПредыдущийПрефиксИнформационнойБазы, 2); - - КонецЕсли; - - Попытка - - УстановитьПрефиксИнформационнойБазы(НовыйПрефикс); - - ВнешнийМонопольныйРежим = МонопольныйРежим(); - Если Не ВнешнийМонопольныйРежим Тогда - ОбщегоНазначения.ЗаблокироватьИБ(Ложь); - КонецЕсли; - - // Префиксация по префиксу информационной базы. - Для Каждого ОписаниеОбъекта Из МетаданныеИспользующиеТолькоПрефиксИнформационнойБазы() Цикл - - УстановитьНовыйПрефикс( - 2, - ОписаниеОбъекта, - СДаты, - ПредыдущийПрефиксИнформационнойБазы, - ОбрабатыватьВсеДанные, - НовыйПрефиксПолный, - СчетчикОбработанныхОбъектов); - - КонецЦикла; - - // Префиксация по префиксу информационной базы и организации. - Для Каждого ОписаниеОбъекта Из МетаданныеИспользующиеПрефиксИнформационнойБазыИОрганизации() Цикл - - УстановитьНовыйПрефикс( - 4, - ОписаниеОбъекта, - СДаты, - ПредыдущийПрефиксИнформационнойБазы, - ОбрабатыватьВсеДанные, - НовыйПрефиксПолный, - СчетчикОбработанныхОбъектов); - - КонецЦикла; - - Если Не ВнешнийМонопольныйРежим Тогда - ОбщегоНазначения.РазблокироватьИБ(); - КонецЕсли; - - Исключение - - Если Не ВнешнийМонопольныйРежим Тогда - ОбщегоНазначения.РазблокироватьИБ(); - КонецЕсли; - - УстановитьПрефиксИнформационнойБазы(ПредыдущийПрефиксИнформационнойБазы); - - ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииПерепрефиксацияОбъектов(), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - ВызватьИсключение; - КонецПопытки; - -КонецПроцедуры - -// Для внутреннего использования. -// -Процедура УстановитьПрефиксИБИСоздатьИзменитьОбъекты( - СчетчикОбработанныхОбъектов, - Знач НовыйПрефикс, - Знач СДаты, - Знач ПредыдущийПрефиксИнформационнойБазы = Неопределено, - Знач ОбрабатыватьПоследниеОбъекты = Ложь) - - ПроверитьВозможностьУстановкиПрефикса(); - - СДаты = ?(СДаты = Дата('00010101'), Неопределено, СДаты); - - СтандартныйПрефикс = (ПредыдущийПрефиксИнформационнойБазы = Неопределено); - - ОбрабатыватьВсеДанные = Ложь; - - Если ТранзакцияАктивна() Тогда - - ВызватьИсключение НСтр("ru = 'Изменение префикса информационной базы не может выполняться в транзакции.'"); - - ИначеЕсли Не Пользователи.ЭтоПолноправныйПользователь() Тогда - - ВызватьИсключение НСтр("ru = 'Недостаточно прав для изменения префикса информационной базы.'"); - - КонецЕсли; - - Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда - УстановитьПривилегированныйРежим(Истина); - КонецЕсли; - - Если ПредыдущийПрефиксИнформационнойБазы = Неопределено Тогда - - ПриОпределенииПрефиксаИнформационнойБазы(ПредыдущийПрефиксИнформационнойБазы); - - ДополнитьСтрокуНулямиСлева(ПредыдущийПрефиксИнформационнойБазы, 2); - - КонецЕсли; - - Попытка - - УстановитьПрефиксИнформационнойБазы(НовыйПрефикс); - - ВнешнийМонопольныйРежим = МонопольныйРежим(); - Если Не ВнешнийМонопольныйРежим Тогда - ОбщегоНазначения.ЗаблокироватьИБ(Ложь); - КонецЕсли; - - // Префиксация по префиксу информационной базы. - Для Каждого ОписаниеОбъекта Из МетаданныеИспользующиеТолькоПрефиксИнформационнойБазы() Цикл - - Выборка = ВыборкаДанных( - ОписаниеОбъекта.ИмяОбъекта, - СДаты, - ОписаниеОбъекта.ЭтоДокумент, - СтандартныйПрефикс, - ПредыдущийПрефиксИнформационнойБазы, - ОбрабатыватьВсеДанные); - - Если Выборка.Пустой() Тогда - Продолжить; - КонецЕсли; - - Объекты = Новый ТаблицаЗначений; - Объекты.Колонки.Добавить("Код"); - Объекты.Колонки.Добавить("Дата"); - Объекты.Колонки.Добавить("Период"); - Объекты.Колонки.Добавить("Объект"); - - Выборка = Выборка.Выбрать(); - - Пока Выборка.Следующий() Цикл - - // {Фильтр: По месту создания объекта для нестандартного префикса}. - Если Не ОбрабатыватьВсеДанные - И Не СтандартныйПрефикс Тогда - - ПолныйПрефиксОбъекта = ПолныйПрефикс(Выборка.Код); - - Если Не ПустаяСтрока(ПолныйПрефиксОбъекта) - И СтрНайти(ПолныйПрефиксОбъекта, ПредыдущийПрефиксИнформационнойБазы) = 0 Тогда - Продолжить; // Обрабатываем объекты, созданные только в текущей информационной базе. - КонецЕсли; - - КонецЕсли; - - СтрокаТаблицы = Объекты.Добавить(); - СтрокаТаблицы.Код = ЧисловойКодОбъекта(Выборка.Код); - СтрокаТаблицы.Дата = Выборка.Дата; - СтрокаТаблицы.Период = ДатаПериода(Выборка.Дата, ОписаниеОбъекта.ПериодичностьНомера); - СтрокаТаблицы.Объект = Выборка.Ссылка; - - КонецЦикла; - - Если Объекты.Количество() > 0 Тогда - - Если ОбрабатыватьПоследниеОбъекты Тогда - - Объекты.Сортировать("Период Убыв, Код Убыв"); - - Объект = Объекты[0]["Объект"].ПолучитьОбъект(); - - КодПредыдущий = Объект[?(ОписаниеОбъекта.ЭтоДокумент, "Номер", "Код")]; - - Если ОписаниеОбъекта.ЭтоДокумент Тогда - - Объект.УстановитьНовыйНомер(); - - ФорматКода = Объект.Номер; - - Иначе - - Объект.УстановитьНовыйКод(); - - ФорматКода = Объект.Код; - - КонецЕсли; - - Если СтандартныйПрефикс Тогда - - КодНовый = НовыйКодОбъекта(ФорматКода, КодПредыдущий, ОписаниеОбъекта.ЭтоДокумент, Объект); - - Иначе - - // {Обработчик: ПриИзмененииНомера} Начало - СтандартнаяОбработка = Истина; - БазовыйКод = ""; - - Если ОписаниеОбъекта.ЭтоДокумент Тогда - - ПрефиксацияОбъектовПереопределяемый.ПриИзмененииНомера(Объект, КодПредыдущий, БазовыйКод, СтандартнаяОбработка); - - Иначе - - ПрефиксацияОбъектовПереопределяемый.ПриИзмененииКода(Объект, КодПредыдущий, БазовыйКод, СтандартнаяОбработка); - - КонецЕсли; - - Если СтандартнаяОбработка = Истина Тогда - - КодНовый = НовыйКодОбъекта(ФорматКода, КодПредыдущий, ОписаниеОбъекта.ЭтоДокумент, Объект); - - Иначе - - КодНовый = НовыйКодОбъектаПоБазовомуКоду(ФорматКода, БазовыйКод, ОписаниеОбъекта.ЭтоДокумент, Объект); - - КонецЕсли; - // {Обработчик: ПриИзмененииНомера} Окончание - - КонецЕсли; - - ОбъектМодифицирован = (КодПредыдущий <> КодНовый); - - Если ОбъектМодифицирован Тогда - - Объект[?(ОписаниеОбъекта.ЭтоДокумент, "Номер", "Код")] = КодНовый; - - Объект.ОбменДанными.Загрузка = Истина; - Объект.Записать(); - - УвеличитьСчетчикОбработанныхОбъектов(СчетчикОбработанныхОбъектов); - - КонецЕсли; - - Иначе // Создаем новые объекты - - Объекты.Сортировать("Период Убыв, Код Убыв"); - - МаксимальныйКод = Объекты[0]["Код"]; - - Объекты.Сортировать("Дата Убыв"); - - МаксимальнаяДата = Объекты[0]["Дата"]; - - Объект = СоздатьОбъект(ОписаниеОбъекта); - - Если ОписаниеОбъекта.ЭтоДокумент Тогда - - Объект.Дата = МаксимальнаяДата + 1; - Объект.УстановитьНовыйНомер(); - - ФорматКода = Объект.Номер; - - Иначе - - Объект.УстановитьНовыйКод(); - - ФорматКода = Объект.Код; - - КонецЕсли; - - КодНовый = НовыйКодОбъекта(ФорматКода, МаксимальныйКод + 1, ОписаниеОбъекта.ЭтоДокумент, Объект); - - Объект[?(ОписаниеОбъекта.ЭтоДокумент, "Номер", "Код")] = КодНовый; - - Объект.ОбменДанными.Загрузка = Истина; - Объект.Записать(); - - УвеличитьСчетчикОбработанныхОбъектов(СчетчикОбработанныхОбъектов); - - КонецЕсли; - - КонецЕсли; - - КонецЦикла; - - // Префиксация по префиксу информационной базы и организации. - Для Каждого ОписаниеОбъекта Из МетаданныеИспользующиеПрефиксИнформационнойБазыИОрганизации() Цикл - - Выборка = ВыборкаДанных( - ОписаниеОбъекта.ИмяОбъекта, - СДаты, - ОписаниеОбъекта.ЭтоДокумент, - СтандартныйПрефикс, - ПредыдущийПрефиксИнформационнойБазы, - ОбрабатыватьВсеДанные, - Истина); - - Если Выборка.Пустой() Тогда - Продолжить; - КонецЕсли; - - ОрганизацияБезПрефикса = "{ОрганизацияБезПрефикса}"; - - Объекты = Новый ТаблицаЗначений; - Объекты.Колонки.Добавить("Код"); - Объекты.Колонки.Добавить("Дата"); - Объекты.Колонки.Добавить("Период"); - Объекты.Колонки.Добавить("Объект"); - - Группировка = Новый Соответствие; - Группировка.Вставить(ОрганизацияБезПрефикса, Объекты); - - Выборка = Выборка.Выбрать(); - - Пока Выборка.Следующий() Цикл - - // {Фильтр: По месту создания объекта для нестандартного префикса}. - Если Не ОбрабатыватьВсеДанные - И Не СтандартныйПрефикс Тогда - - ПолныйПрефиксОбъекта = ПолныйПрефикс(Выборка.Код); - - Если Не ПустаяСтрока(ПолныйПрефиксОбъекта) - И СтрНайти(ПолныйПрефиксОбъекта, ПредыдущийПрефиксИнформационнойБазы) = 0 Тогда - Продолжить; // Обрабатываем объекты, созданные только в текущей информационной базе. - КонецЕсли; - - КонецЕсли; - - Если Выборка.ПрефиксОрганизацииЗадан Тогда - - Если Группировка[Выборка.Организация] = Неопределено Тогда - - Объекты = Новый ТаблицаЗначений; - Объекты.Колонки.Добавить("Код"); - Объекты.Колонки.Добавить("Дата"); - Объекты.Колонки.Добавить("Период"); - Объекты.Колонки.Добавить("Объект"); - - СтрокаТаблицы = Объекты.Добавить(); - СтрокаТаблицы.Код = ЧисловойКодОбъекта(Выборка.Код); - СтрокаТаблицы.Дата = Выборка.Дата; - СтрокаТаблицы.Период = ДатаПериода(Выборка.Дата, ОписаниеОбъекта.ПериодичностьНомера); - СтрокаТаблицы.Объект = Выборка.Ссылка; - - Группировка.Вставить(Выборка.Организация, Объекты); - - Иначе - - СтрокаТаблицы = Группировка[Выборка.Организация].Добавить(); - СтрокаТаблицы.Код = ЧисловойКодОбъекта(Выборка.Код); - СтрокаТаблицы.Дата = Выборка.Дата; - СтрокаТаблицы.Период = ДатаПериода(Выборка.Дата, ОписаниеОбъекта.ПериодичностьНомера); - СтрокаТаблицы.Объект = Выборка.Ссылка; - - КонецЕсли; - - Иначе - - СтрокаТаблицы = Группировка[ОрганизацияБезПрефикса].Добавить(); - СтрокаТаблицы.Код = ЧисловойКодОбъекта(Выборка.Код); - СтрокаТаблицы.Дата = Выборка.Дата; - СтрокаТаблицы.Период = ДатаПериода(Выборка.Дата, ОписаниеОбъекта.ПериодичностьНомера); - СтрокаТаблицы.Объект = Выборка.Ссылка; - - КонецЕсли; - - КонецЦикла; - - Для Каждого ЭлементГруппировки Из Группировка Цикл - - Объекты = ЭлементГруппировки.Значение; - Организация = ЭлементГруппировки.Ключ; - - Если Объекты.Количество() > 0 Тогда - - Если ОбрабатыватьПоследниеОбъекты Тогда - - Объекты.Сортировать("Период Убыв, Код Убыв"); - - Объект = Объекты[0]["Объект"].ПолучитьОбъект(); - - КодПредыдущий = Объект[?(ОписаниеОбъекта.ЭтоДокумент, "Номер", "Код")]; - - Если ОписаниеОбъекта.ЭтоДокумент Тогда - - Объект.УстановитьНовыйНомер(); - - ФорматКода = Объект.Номер; - - Иначе - - Объект.УстановитьНовыйКод(); - - ФорматКода = Объект.Код; - - КонецЕсли; - - Если СтандартныйПрефикс Тогда - - КодНовый = НовыйКодОбъекта(ФорматКода, КодПредыдущий, ОписаниеОбъекта.ЭтоДокумент, Объект); - - Иначе - - // {Обработчик: ПриИзмененииНомера} Начало - СтандартнаяОбработка = Истина; - БазовыйКод = ""; - - Если ОписаниеОбъекта.ЭтоДокумент Тогда - - ПрефиксацияОбъектовПереопределяемый.ПриИзмененииНомера(Объект, КодПредыдущий, БазовыйКод, СтандартнаяОбработка); - - Иначе - - ПрефиксацияОбъектовПереопределяемый.ПриИзмененииКода(Объект, КодПредыдущий, БазовыйКод, СтандартнаяОбработка); - - КонецЕсли; - - Если СтандартнаяОбработка = Истина Тогда - - КодНовый = НовыйКодОбъекта(ФорматКода, КодПредыдущий, ОписаниеОбъекта.ЭтоДокумент, Объект); - - Иначе - - КодНовый = НовыйКодОбъектаПоБазовомуКоду(ФорматКода, БазовыйКод, ОписаниеОбъекта.ЭтоДокумент, Объект); - - КонецЕсли; - // {Обработчик: ПриИзмененииНомера} Окончание - - КонецЕсли; - - ОбъектМодифицирован = (КодПредыдущий <> КодНовый); - - Если ОбъектМодифицирован Тогда - - Объект[?(ОписаниеОбъекта.ЭтоДокумент, "Номер", "Код")] = КодНовый; - - Объект.ОбменДанными.Загрузка = Истина; - Объект.Записать(); - - УвеличитьСчетчикОбработанныхОбъектов(СчетчикОбработанныхОбъектов); - - КонецЕсли; - - Иначе - - Объекты.Сортировать("Период Убыв, Код Убыв"); - - МаксимальныйКод = Объекты[0]["Код"]; - - Объекты.Сортировать("Дата Убыв"); - - МаксимальнаяДата = Объекты[0]["Дата"]; - - Объект = СоздатьОбъект(ОписаниеОбъекта); - - Объект[ПрефиксацияОбъектовСобытия.ИмяРеквизитаОрганизация( - Объект.Метаданные())] = ?(Организация = ОрганизацияБезПрефикса, Неопределено, Организация); - - Если ОписаниеОбъекта.ЭтоДокумент Тогда - - Объект.Дата = МаксимальнаяДата + 1; - - Объект.УстановитьНовыйНомер(); - - ФорматКода = Объект.Номер; - - Иначе - - Объект.УстановитьНовыйКод(); - - ФорматКода = Объект.Код; - - КонецЕсли; - - КодНовый = НовыйКодОбъекта(ФорматКода, МаксимальныйКод + 1, ОписаниеОбъекта.ЭтоДокумент, Объект); - - Объект[?(ОписаниеОбъекта.ЭтоДокумент, "Номер", "Код")] = КодНовый; - - Объект.ОбменДанными.Загрузка = Истина; - Объект.Записать(); - - УвеличитьСчетчикОбработанныхОбъектов(СчетчикОбработанныхОбъектов); - - КонецЕсли; - - КонецЕсли; - - КонецЦикла; - - КонецЦикла; - - Если Не ВнешнийМонопольныйРежим Тогда - ОбщегоНазначения.РазблокироватьИБ(); - КонецЕсли; - - Исключение - - Если Не ВнешнийМонопольныйРежим Тогда - ОбщегоНазначения.РазблокироватьИБ(); - КонецЕсли; - - УстановитьПрефиксИнформационнойБазы(ПредыдущийПрефиксИнформационнойБазы); - - ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииПерепрефиксацияОбъектов(), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - ВызватьИсключение; - КонецПопытки; - -КонецПроцедуры - -Функция ВыборкаДанных( - Знач ИмяОбъекта, - Знач СДаты, - Знач ЭтоДокумент, - Знач СтандартныйПрефикс, - Знач ПредыдущийПрефикс, - Знач ОбрабатыватьВсеДанные, - Знач ВыбиратьОрганизацию = Ложь) - - Запрос = Новый Запрос; - - Если ОбрабатыватьВсеДанные Тогда - - Если ЭтоДокумент И СДаты <> Неопределено Тогда - - ТекстЗапроса = - "ВЫБРАТЬ - | [ВыборкаОрганизации] - | [ПрефиксОрганизацииЗадан] - | [ВыборкаДаты] - | Таблица.[Код] КАК Код, - | Таблица.Ссылка КАК Ссылка - |ИЗ - | [ИмяОбъекта] КАК Таблица - |ГДЕ - | Таблица.Дата >= &Дата - | - |УПОРЯДОЧИТЬ ПО - | Таблица.Дата"; - - Запрос.УстановитьПараметр("Дата", НачалоДня(СДаты)); - - Иначе - - ТекстЗапроса = - "ВЫБРАТЬ - | [ВыборкаОрганизации] - | [ПрефиксОрганизацииЗадан] - | [ВыборкаДаты] - | Таблица.[Код] КАК Код, - | Таблица.Ссылка КАК Ссылка - |ИЗ - | [ИмяОбъекта] КАК Таблица"; - - КонецЕсли; - - Иначе - - Если СтандартныйПрефикс Тогда - - Если ЭтоДокумент И СДаты <> Неопределено Тогда - - ТекстЗапроса = - "ВЫБРАТЬ - | [ВыборкаОрганизации] - | [ПрефиксОрганизацииЗадан] - | [ВыборкаДаты] - | Таблица.[Код] КАК Код, - | Таблица.Ссылка КАК Ссылка - |ИЗ - | [ИмяОбъекта] КАК Таблица - |ГДЕ - | Таблица.Дата >= &Дата - | И Таблица.[Код] ПОДОБНО &Префикс - | - |УПОРЯДОЧИТЬ ПО - | Таблица.Дата"; - - Запрос.УстановитьПараметр("Дата", НачалоДня(СДаты)); - - Иначе - - ТекстЗапроса = - "ВЫБРАТЬ - | [ВыборкаОрганизации] - | [ПрефиксОрганизацииЗадан] - | [ВыборкаДаты] - | Таблица.[Код] КАК Код, - | Таблица.Ссылка КАК Ссылка - |ИЗ - | [ИмяОбъекта] КАК Таблица - |ГДЕ - | Таблица.[Код] ПОДОБНО &Префикс"; - - КонецЕсли; - - // Обрабатываем объекты, созданные только в текущей информационной базе. - Префикс = "%[Префикс]-%"; - Префикс = СтрЗаменить(Префикс, "[Префикс]", ПредыдущийПрефикс); - Запрос.УстановитьПараметр("Префикс", Префикс); - - Иначе - - Если ЭтоДокумент И СДаты <> Неопределено Тогда - - ТекстЗапроса = - "ВЫБРАТЬ - | [ВыборкаОрганизации] - | [ПрефиксОрганизацииЗадан] - | [ВыборкаДаты] - | Таблица.[Код] КАК Код, - | Таблица.Ссылка КАК Ссылка - |ИЗ - | [ИмяОбъекта] КАК Таблица - |ГДЕ - | Таблица.Дата >= &Дата - | - |УПОРЯДОЧИТЬ ПО - | Таблица.Дата"; - - Запрос.УстановитьПараметр("Дата", НачалоДня(СДаты)); - - Иначе - - ТекстЗапроса = - "ВЫБРАТЬ - | [ВыборкаОрганизации] - | [ПрефиксОрганизацииЗадан] - | [ВыборкаДаты] - | Таблица.[Код] КАК Код, - | Таблица.Ссылка КАК Ссылка - |ИЗ - | [ИмяОбъекта] КАК Таблица"; - - КонецЕсли; - - КонецЕсли; - - КонецЕсли; - - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "[ИмяОбъекта]", ИмяОбъекта); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "[Код]", ?(ЭтоДокумент, "Номер", "Код")); - Если ВыбиратьОрганизацию Тогда - ИмяПоляОрганизации = ПрефиксацияОбъектовСобытия.ИмяРеквизитаОрганизация(ИмяОбъекта); - КонецЕсли; - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "[ВыборкаОрганизации]", - ?(ВыбиратьОрганизацию, "Таблица." + ИмяПоляОрганизации + " КАК Организация,", "")); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "[ПрефиксОрганизацииЗадан]", - ?(ВыбиратьОрганизацию, - "ВЫБОР КОГДА Таблица." + ИмяПоляОрганизации + ".Префикс = """" ТОГДА Ложь ИНАЧЕ Истина КОНЕЦ КАК ПрефиксОрганизацииЗадан,", - "Ложь КАК ПрефиксОрганизацииЗадан,")); - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "[ВыборкаДаты]", ?(ЭтоДокумент, "Таблица.Дата КАК Дата,", "Неопределено КАК Дата,")); - - Запрос.Текст = ТекстЗапроса; - - Возврат Запрос.Выполнить(); -КонецФункции - -Функция НовыйКодОбъекта(Знач ФорматНовогоКода, Знач Код, Знач ЭтоДокумент, Объект) - - Если ТипЗнч(Код) = Тип("Строка") Тогда - - КодЧислом = ЧисловойКодОбъекта(Код); - - ИначеЕсли ТипЗнч(Код) = Тип("Число") Тогда - - КодЧислом = Код; - - КонецЕсли; - - НовыйПолныйПрефикс = ПолныйПрефикс(ФорматНовогоКода); - - ДлинаКода = СтрДлина(ФорматНовогоКода); - - КодСтрокой = Формат(КодЧислом, "ЧН=0; ЧГ=0"); - - КоличествоЛидирующихНулей = ДлинаКода - СтрДлина(НовыйПолныйПрефикс) - СтрДлина(КодСтрокой); - - Если КоличествоЛидирующихНулей < 0 Тогда - - СтрокаСообщения = НСтр("ru = 'Преобразование %1 объекта %2 не может быть выполнено. - |Недостаточная длина %1. Минимальная длина %1 объекта должна составлять %3 символов.'"); - СтрокаСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаСообщения, ?(ЭтоДокумент, НСтр("ru = 'номера'"), НСтр("ru = 'кода'")), - Строка(Объект), Строка(СтрДлина(НовыйПолныйПрефикс) + СтрДлина(КодСтрокой))); - ВызватьИсключение СтрокаСообщения; - - КонецЕсли; - - ДлинаКодаСЛидирующимиНулями = ДлинаКода - СтрДлина(НовыйПолныйПрефикс); - - Если КодЧислом = 0 Тогда - - КодСЛидирующимиНулями = Лев("00000000000000000000000000000000000000000000000000", ДлинаКодаСЛидирующимиНулями); - - Иначе - - ФорматнаяСтрока = "ЧЦ=%1; ЧВН=; ЧГ=0"; - ФорматнаяСтрока = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ФорматнаяСтрока, Строка(ДлинаКодаСЛидирующимиНулями)); - КодСЛидирующимиНулями = Формат(КодЧислом, ФорматнаяСтрока); - - КонецЕсли; - - Возврат НовыйПолныйПрефикс + КодСЛидирующимиНулями; -КонецФункции - -Функция НовыйКодОбъектаПоБазовомуКоду(Знач ФорматНовогоКода, Знач БазовыйКод, Знач ЭтоДокумент, Объект) - - НовыйПолныйПрефикс = ПолныйПрефикс(ФорматНовогоКода); - - ДлинаКода = СтрДлина(ФорматНовогоКода); - - БазовыйКод = УдалитьЛидирующиеНули(БазовыйКод); - - КоличествоЛидирующихНулей = ДлинаКода - СтрДлина(НовыйПолныйПрефикс) - СтрДлина(БазовыйКод); - - Если КоличествоЛидирующихНулей < 0 Тогда - - СтрокаСообщения = НСтр("ru = 'Преобразование %1 объекта %2 не может быть выполнено. - |Недостаточная длина %1. Минимальная длина %1 объекта должна составлять %3 символов.'"); - СтрокаСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаСообщения, ?(ЭтоДокумент, НСтр("ru = 'номера'"), НСтр("ru = 'кода'")), - Строка(Объект), Строка(СтрДлина(НовыйПолныйПрефикс) + СтрДлина(БазовыйКод))); - ВызватьИсключение СтрокаСообщения; - - КонецЕсли; - - СтрокаНулей = Лев("00000000000000000000000000000000000000000000000000", КоличествоЛидирующихНулей); - - Возврат НовыйПолныйПрефикс + СтрокаНулей + БазовыйКод; -КонецФункции - -Функция ЧисловойКодОбъекта(Знач Код) - - Результат = ""; - - Пока СтрДлина(Код) > 0 Цикл - - Символ = Прав(Код, 1); - - Если СтрНайти("0123456789", Символ) > 0 Тогда - Результат = Символ + Результат; - Иначе - Прервать; - КонецЕсли; - - Код = Лев(Код, СтрДлина(Код) - 1); - - КонецЦикла; - - Возврат ?(ПустаяСтрока(Результат), 0, Число(Результат)); -КонецФункции - -Функция ПолныйПрефикс(Знач Код) - - Пока СтрДлина(Код) > 0 Цикл - - Символ = Прав(Код, 1); - - Если СтрНайти("0123456789", Символ) = 0 Тогда - Прервать; - КонецЕсли; - - Код = Лев(Код, СтрДлина(Код) - 1); - - КонецЦикла; - - Возврат Код; -КонецФункции - -Функция ПодпискиНаСобытияПоИмениОбработчика(Знач ИмяОбработчика) - - Результат = Новый Массив; - - ВРегИмяОбработчика = ВРег(ИмяОбработчика); - - Для Каждого ОбъектМетаданных Из Метаданные.ПодпискиНаСобытия Цикл - - Если ВРег(ОбъектМетаданных.Обработчик) = ВРегИмяОбработчика Тогда - - Результат.Добавить(ОбъектМетаданных); - - КонецЕсли; - - КонецЦикла; - - Возврат Результат; -КонецФункции - -Функция УдалитьЛидирующиеНули(Знач Код) - - Пока СтрДлина(Код) > 0 Цикл - - Если Не СтрНачинаетсяС(Код, "0") Тогда - Прервать; - КонецЕсли; - - Код = Прав(Код, СтрДлина(Код) - 1); - - КонецЦикла; - - Возврат ?(ПустаяСтрока(Код), "0", Код); -КонецФункции - -Процедура ДополнитьТаблицуМетаданных(Результат, Знач ИмяОбработчика) - - РазделениеВключено = ОбщегоНазначенияПовтИсп.РазделениеВключено(); - - Для Каждого Подписка Из ПодпискиНаСобытияПоИмениОбработчика(ИмяОбработчика) Цикл - - Для Каждого ТипИсточника Из Подписка.Источник.Типы() Цикл - - МетаданныеИсточника = Метаданные.НайтиПоТипу(ТипИсточника); - - ИмяОбъекта = МетаданныеИсточника.ПолноеИмя(); - - Если Результат.Найти(ИмяОбъекта, "ИмяОбъекта") <> Неопределено Тогда - - Продолжить; - - ИначеЕсли РазделениеВключено Тогда - - Если Не ОбщегоНазначенияПовтИсп.ЭтоРазделенныйОбъектМетаданных(ИмяОбъекта, ОбщегоНазначенияПовтИсп.РазделительВспомогательныхДанных()) - И Не ОбщегоНазначенияПовтИсп.ЭтоРазделенныйОбъектМетаданных(ИмяОбъекта, ОбщегоНазначенияПовтИсп.РазделительОсновныхДанных())Тогда - - Продолжить; - - КонецЕсли; - - КонецЕсли; - - Справочник = Ложь; - ПланВидовХарактеристик = Ложь; - Документ = Ложь; - БизнесПроцесс = Ложь; - Задача = Ложь; - - Если ОбщегоНазначения.ЭтоСправочник(МетаданныеИсточника) Тогда - - Справочник = Истина; - - ИначеЕсли ОбщегоНазначения.ЭтоДокумент(МетаданныеИсточника) Тогда - - Документ = Истина; - - ИначеЕсли ОбщегоНазначения.ЭтоПланВидовХарактеристик(МетаданныеИсточника) Тогда - - ПланВидовХарактеристик = Истина; - - ИначеЕсли ОбщегоНазначения.ЭтоБизнесПроцесс(МетаданныеИсточника) Тогда - - БизнесПроцесс = Истина; - - ИначеЕсли ОбщегоНазначения.ЭтоЗадача(МетаданныеИсточника) Тогда - - Задача = Истина; - - Иначе - Продолжить; - КонецЕсли; - - ЭтоСправочник = Справочник ИЛИ ПланВидовХарактеристик; - ЭтоДокумент = Документ ИЛИ БизнесПроцесс ИЛИ Задача; - - ОписаниеОбъекта = Результат.Добавить(); - ОписаниеОбъекта.Имя = МетаданныеИсточника.Имя; - ОписаниеОбъекта.ИмяОбъекта = ИмяОбъекта; - - ОписаниеОбъекта.Справочник = Справочник; - ОписаниеОбъекта.ПланВидовХарактеристик = ПланВидовХарактеристик; - ОписаниеОбъекта.Документ = Документ; - ОписаниеОбъекта.БизнесПроцесс = БизнесПроцесс; - ОписаниеОбъекта.Задача = Задача; - - ОписаниеОбъекта.ЭтоСправочник = ЭтоСправочник; - ОписаниеОбъекта.ЭтоДокумент = ЭтоДокумент; - - ОписаниеОбъекта.ПериодичностьНомера = ПериодичностьНомераОбъекта(МетаданныеИсточника, Документ, БизнесПроцесс); - - КонецЦикла; - - КонецЦикла; - -КонецПроцедуры - -Процедура УвеличитьСчетчикОбработанныхОбъектов(СчетчикОбработанныхОбъектов) - - СчетчикОбработанныхОбъектов = СчетчикОбработанныхОбъектов + 1; - -КонецПроцедуры - -Процедура ДополнитьСтрокуНулямиСлева(Строка, ДлинаСтроки) - - Строка = СтроковыеФункцииКлиентСервер.ДополнитьСтроку(Строка, ДлинаСтроки, "0", "Слева"); - -КонецПроцедуры - -// - -Функция МетаданныеИспользующиеПрефиксИнформационнойБазы() - - Результат = Новый ТаблицаЗначений; - Результат.Колонки.Добавить("Имя"); - Результат.Колонки.Добавить("ИмяОбъекта"); - Результат.Колонки.Добавить("ЭтоСправочник"); - Результат.Колонки.Добавить("ЭтоДокумент"); - Результат.Колонки.Добавить("Справочник"); - Результат.Колонки.Добавить("ПланВидовХарактеристик"); - Результат.Колонки.Добавить("Документ"); - Результат.Колонки.Добавить("БизнесПроцесс"); - Результат.Колонки.Добавить("Задача"); - Результат.Колонки.Добавить("ПериодичностьНомера"); - - ДополнитьТаблицуМетаданных(Результат, "ПрефиксацияОбъектовСобытия.УстановитьПрефиксИнформационнойБазы"); - ДополнитьТаблицуМетаданных(Результат, "ПрефиксацияОбъектовСобытия.УстановитьПрефиксИнформационнойБазыИОрганизации"); - - Возврат Результат; -КонецФункции - -Функция МетаданныеИспользующиеПрефиксИнформационнойБазыИОрганизации() - - Результат = Новый ТаблицаЗначений; - Результат.Колонки.Добавить("Имя"); - Результат.Колонки.Добавить("ИмяОбъекта"); - Результат.Колонки.Добавить("ЭтоСправочник"); - Результат.Колонки.Добавить("ЭтоДокумент"); - Результат.Колонки.Добавить("Справочник"); - Результат.Колонки.Добавить("ПланВидовХарактеристик"); - Результат.Колонки.Добавить("Документ"); - Результат.Колонки.Добавить("БизнесПроцесс"); - Результат.Колонки.Добавить("Задача"); - Результат.Колонки.Добавить("ПериодичностьНомера"); - - ДополнитьТаблицуМетаданных(Результат, "ПрефиксацияОбъектовСобытия.УстановитьПрефиксИнформационнойБазыИОрганизации"); - - Возврат Результат; -КонецФункции - -Функция МетаданныеИспользующиеТолькоПрефиксИнформационнойБазы() - - Результат = Новый ТаблицаЗначений; - Результат.Колонки.Добавить("Имя"); - Результат.Колонки.Добавить("ИмяОбъекта"); - Результат.Колонки.Добавить("ЭтоСправочник"); - Результат.Колонки.Добавить("ЭтоДокумент"); - Результат.Колонки.Добавить("Справочник"); - Результат.Колонки.Добавить("ПланВидовХарактеристик"); - Результат.Колонки.Добавить("Документ"); - Результат.Колонки.Добавить("БизнесПроцесс"); - Результат.Колонки.Добавить("Задача"); - Результат.Колонки.Добавить("ПериодичностьНомера"); - - ДополнитьТаблицуМетаданных(Результат, "ПрефиксацияОбъектовСобытия.УстановитьПрефиксИнформационнойБазы"); - - Возврат Результат; -КонецФункции - -Функция СоздатьОбъект(ОписаниеОбъекта) - - Если ОписаниеОбъекта.Справочник Тогда - - Возврат Справочники[ОписаниеОбъекта.Имя].СоздатьЭлемент(); - - ИначеЕсли ОписаниеОбъекта.Документ Тогда - - Возврат Документы[ОписаниеОбъекта.Имя].СоздатьДокумент(); - - ИначеЕсли ОписаниеОбъекта.ПланВидовХарактеристик Тогда - - Возврат ПланыВидовХарактеристик[ОписаниеОбъекта.Имя].СоздатьЭлемент(); - - ИначеЕсли ОписаниеОбъекта.БизнесПроцесс Тогда - - Возврат БизнесПроцессы[ОписаниеОбъекта.Имя].СоздатьБизнесПроцесс(); - - ИначеЕсли ОписаниеОбъекта.Задача Тогда - - Возврат Задачи[ОписаниеОбъекта.Имя].СоздатьЗадачу(); - - КонецЕсли; - - Возврат Неопределено; -КонецФункции - -Функция ПериодичностьНомераОбъекта(Объект, Знач Документ, Знач БизнесПроцесс) - - Результат = Метаданные.СвойстваОбъектов.ПериодичностьНомераДокумента.Непериодический; - - Если Документ Тогда - - Результат = Объект.ПериодичностьНомера; - - ИначеЕсли БизнесПроцесс Тогда - - Если Объект.ПериодичностьНомера = Метаданные.СвойстваОбъектов.ПериодичностьНомераБизнесПроцесса.Год Тогда - - Результат = Метаданные.СвойстваОбъектов.ПериодичностьНомераДокумента.Год; - - ИначеЕсли Объект.ПериодичностьНомера = Метаданные.СвойстваОбъектов.ПериодичностьНомераБизнесПроцесса.День Тогда - - Результат = Метаданные.СвойстваОбъектов.ПериодичностьНомераДокумента.День; - - ИначеЕсли Объект.ПериодичностьНомера = Метаданные.СвойстваОбъектов.ПериодичностьНомераБизнесПроцесса.Квартал Тогда - - Результат = Метаданные.СвойстваОбъектов.ПериодичностьНомераДокумента.Квартал; - - ИначеЕсли Объект.ПериодичностьНомера = Метаданные.СвойстваОбъектов.ПериодичностьНомераБизнесПроцесса.Месяц Тогда - - Результат = Метаданные.СвойстваОбъектов.ПериодичностьНомераДокумента.Месяц; - - ИначеЕсли Объект.ПериодичностьНомера = Метаданные.СвойстваОбъектов.ПериодичностьНомераБизнесПроцесса.Непериодический Тогда - - Результат = Метаданные.СвойстваОбъектов.ПериодичностьНомераДокумента.Непериодический; - - КонецЕсли; - - КонецЕсли; - - Возврат Результат; -КонецФункции - -Функция ДатаПериода(Знач Дата, Знач Периодичность) - - Если Периодичность = Метаданные.СвойстваОбъектов.ПериодичностьНомераДокумента.Год Тогда - - Возврат НачалоГода(Дата); - - ИначеЕсли Периодичность = Метаданные.СвойстваОбъектов.ПериодичностьНомераДокумента.Квартал Тогда - - Возврат НачалоКвартала(Дата); - - ИначеЕсли Периодичность = Метаданные.СвойстваОбъектов.ПериодичностьНомераДокумента.Месяц Тогда - - Возврат НачалоМесяца(Дата); - - ИначеЕсли Периодичность = Метаданные.СвойстваОбъектов.ПериодичностьНомераДокумента.День Тогда - - Возврат НачалоДня(Дата); - - ИначеЕсли Периодичность = Метаданные.СвойстваОбъектов.ПериодичностьНомераДокумента.Непериодический Тогда - - Возврат Дата('00010101'); - - КонецЕсли; - - Возврат Дата('00010101'); -КонецФункции - -Процедура УстановитьНовыйПрефикс( - Знач ДлинаПрефикса, - Знач ОписаниеОбъекта, - Знач СДаты, - Знач ПредыдущийПрефиксИнформационнойБазы, - Знач ОбрабатыватьВсеДанные, - Знач НовыйПрефиксПолный, - СчетчикОбработанныхОбъектов) - - Выборка = ВыборкаДанных( - ОписаниеОбъекта.ИмяОбъекта, - СДаты, - ОписаниеОбъекта.ЭтоДокумент, - Истина, - ПредыдущийПрефиксИнформационнойБазы, - ОбрабатыватьВсеДанные); - - Если Выборка.Пустой() Тогда - Возврат; - КонецЕсли; - - Выборка = Выборка.Выбрать(); - - Пока Выборка.Следующий() Цикл - - Если ДлинаПрефикса = 2 Тогда - - Если Сред(Выборка.Код, 3, 1) <> "-" Тогда - Продолжить; // Нестандартный формат кода - КонецЕсли; - - КодНовый = НовыйПрефиксПолный + Сред(Выборка.Код, 3); - - Иначе // ДлинаПрефикса = 4 - - Если Сред(Выборка.Код, 5, 1) <> "-" Тогда - Продолжить; // Нестандартный формат кода - КонецЕсли; - - КодНовый = Лев(Выборка.Код, 2) + НовыйПрефиксПолный + Сред(Выборка.Код, 5); - - КонецЕсли; - - ОбъектМодифицирован = (Выборка.Код <> КодНовый); - - Если ОбъектМодифицирован Тогда - - Объект = Выборка.Ссылка.ПолучитьОбъект(); - - Объект[?(ОписаниеОбъекта.ЭтоДокумент, "Номер", "Код")] = КодНовый; - - Объект.ОбменДанными.Загрузка = Истина; - Объект.Записать(); - - УвеличитьСчетчикОбработанныхОбъектов(СчетчикОбработанныхОбъектов); - - КонецЕсли; - - КонецЦикла; - -КонецПроцедуры - -Процедура ПроверитьВозможностьУстановкиПрефикса() - - Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда - - ВызватьИсключение НСтр("ru='Перепрефиксация объектов недоступна.'"); - - КонецЕсли; - -КонецПроцедуры - -Функция СобытиеЖурналаРегистрацииПерепрефиксацияОбъектов() - - Возврат НСтр("ru = 'Префиксация объектов.Изменение префикса информационной базы'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); - -КонецФункции - -//////////////////////////////////////////////////////////////////////////////// -// Обработчики условных вызовов в другие подсистемы. - -// Возвращает префикс этой информационной базы. -// -Процедура ПриОпределенииПрефиксаИнформационнойБазы(ПрефиксИнформационнойБазы) Экспорт - - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда - МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); - ПрефиксИнформационнойБазы = МодульОбменДаннымиСервер.ПрефиксИнформационнойБазы(); - Иначе - ПрефиксИнформационнойБазы = ""; - КонецЕсли; - -КонецПроцедуры - -// Возвращает префикс организации. -// -// Параметры: -// Организация - СправочникСсылка.Организации - организация для которой надо получить префикс. -// ПрефиксОрганизации - Строка - префикс организации. -// -Процедура ПриОпределенииПрефиксаОрганизации(Знач Организация, ПрефиксОрганизации) Экспорт - - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда - ИмяФункциональнойОпции = "ПрефиксыОрганизаций"; - ПрефиксОрганизации = ПолучитьФункциональнуюОпцию(ИмяФункциональнойОпции, Новый Структура("Организация", Организация)); - Иначе - ПрефиксОрганизации = ""; - КонецЕсли; - -КонецПроцедуры - -// Устанавливает префикс этой информационной базы. -// -Процедура УстановитьПрефиксИнформационнойБазы(Знач Префикс) - - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда - МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); - МодульОбменДаннымиСервер.УстановитьПрефиксИнформационнойБазы(Префикс); - КонецЕсли; - -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/CommonModules/ПодключаемыеКоманды/Module.bsl b/SSL/src/CommonModules/ПодключаемыеКоманды/Module.bsl new file mode 100644 index 000000000..2eb43777e --- /dev/null +++ b/SSL/src/CommonModules/ПодключаемыеКоманды/Module.bsl @@ -0,0 +1,1666 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Базовая функциональность" (сервер). +// Обслуживает подключаемые команды. +//////////////////////////////////////////////////////////////////////////////// + +#Область ПрограммныйИнтерфейс + +// Выводит подключенные команды в форме. +// +// Параметры: +// Форма - УправляемаяФорма - Форма, в которой необходимо разместить команды. +// ПараметрыРазмещения - Неопределено, Структура - Параметры размещения команд. +// Используется когда в форме несколько списков +// (в этом случае размещается несколько вызовов этой процедуры с указанием 2го параметра), +// или когда типы источников зависят от параметров открытия формы. +// Состав ключей см. в функции ПараметрыРазмещения(). +// Версия_2_4 - Булево - Истина, если форма настроена для использования подключаемых команд версии 2.4.0.1 и выше. +// +Процедура ПриСозданииНаСервере(Форма, ПараметрыРазмещения = Неопределено, Версия_2_4 = Ложь) Экспорт + + Если Версия_2_4 Тогда + + ИмяФормы = Форма.ИмяФормы; + + ИсточникиЧерезЗапятую = ""; + Если ПараметрыРазмещения = Неопределено Тогда + ПараметрыРазмещения = ПараметрыРазмещения(); + Иначе + Если ТипЗнч(ПараметрыРазмещения.Источники) = Тип("ОписаниеТипов") Тогда + Типы = ПараметрыРазмещения.Источники.Типы(); + Для Каждого Тип Из Типы Цикл + ОбъектМетаданных = Метаданные.НайтиПоТипу(Тип); + Если ОбъектМетаданных <> Неопределено Тогда + ИсточникиЧерезЗапятую = ИсточникиЧерезЗапятую + ?(ИсточникиЧерезЗапятую = "", "", ",") + ОбъектМетаданных.ПолноеИмя(); + КонецЕсли; + КонецЦикла; + ИначеЕсли ТипЗнч(ПараметрыРазмещения.Источники) = Тип("Массив") Тогда + Для Каждого ОбъектМетаданных Из ПараметрыРазмещения.Источники Цикл + Если ТипЗнч(ОбъектМетаданных) = Тип("ОбъектМетаданных") Тогда + ИсточникиЧерезЗапятую = ИсточникиЧерезЗапятую + ?(ИсточникиЧерезЗапятую = "", "", ",") + ОбъектМетаданных.ПолноеИмя(); + ИначеЕсли ОбъектМетаданных <> Неопределено Тогда + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр( + "ПодключаемыеКоманды.ПриСозданииНаСервере", + "ПараметрыРазмещения.Источники[...]", + ОбъектМетаданных, + Новый ОписаниеТипов("ОбъектМетаданных")); + КонецЕсли; + КонецЦикла; + ИначеЕсли ПараметрыРазмещения.Источники <> Неопределено Тогда + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр( + "ПодключаемыеКоманды.ПриСозданииНаСервере", + "ПараметрыРазмещения.Источники", + ПараметрыРазмещения.Источники, + Новый ОписаниеТипов("ОписаниеТипов, Массив")); + КонецЕсли; + КонецЕсли; + + ЭтоФормаОбъекта = Неопределено; + Параметры = Форма.Параметры; + ЕстьПараметрыСписка = Параметры.Свойство("Отбор") И Параметры.Свойство("ТекущаяСтрока"); + ЕстьПараметрыОбъекта = Параметры.Свойство("Ключ") И Параметры.Свойство("Основание"); + Если ЕстьПараметрыСписка <> ЕстьПараметрыОбъекта Тогда + ЭтоФормаОбъекта = ЕстьПараметрыОбъекта; + КонецЕсли; + // Для форм внешних отчетов и обработок невозможно получить метаданные имея только имя формы, + // поэтому определение источников команд выполняется до вызова ПовтИсп. + Если ИсточникиЧерезЗапятую = "" И ЭтоВнешняяФорма(ИмяФормы) Тогда + Если ЕстьПараметрыОбъекта Тогда + ОбъектМетаданных = Метаданные.НайтиПоТипу(ТипЗнч(Параметры.Ключ)); + Если ОбъектМетаданных <> Неопределено Тогда + ИсточникиЧерезЗапятую = ОбъектМетаданных.ПолноеИмя(); + КонецЕсли; + КонецЕсли; + Если ИсточникиЧерезЗапятую = "" Тогда + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'В формах внешних отчетов и обработок + |при вызове процедуры ""%1"" + |требуется явно указывать параметр ""%2""'"), + "ПодключаемыеКоманды.ПриСозданииНаСервере", + "ПараметрыРазмещения.Источники"); + КонецЕсли; + КонецЕсли; + + КэшФормы = ПодключаемыеКомандыПовтИсп.КэшФормы(ИмяФормы, ИсточникиЧерезЗапятую, ЭтоФормаОбъекта); + ПараметрыРазмещения.Вставить("ЕстьУсловияВидимости", КэшФормы.ЕстьУсловияВидимости); + ПараметрыРазмещения.Вставить("ЭтоФормаОбъекта", КэшФормы.ЭтоФормаОбъекта); + + Если КэшФормы.ФункциональныеОпции.Количество() > 0 Тогда + Форма.УстановитьПараметрыФункциональныхОпцийФормы(КэшФормы.ФункциональныеОпции); + КонецЕсли; + + Команды = КэшФормы.Команды.Скопировать(); + ВывестиКоманды_2_4(Форма, Команды, ПараметрыРазмещения); + + Иначе + + ИмяФормы = Форма.ИмяФормы; + ИспользуемыеПодменю = Новый Массив; + ИнтеграцияСтандартныхПодсистем.ПриОпределенииИспользуемыхПодменю(Форма, ИспользуемыеПодменю); + Если ИспользуемыеПодменю.Количество() = 0 Тогда + Возврат; + КонецЕсли; + + ИспользуемыеПодменюЧерезЗапятую = СтрСоединить(ИспользуемыеПодменю, ","); + НастройкиРазмещения = ПодключаемыеКомандыПовтИсп.НастройкиРазмещения(ИмяФормы, ИспользуемыеПодменюЧерезЗапятую); + + ВывестиКоманды(Форма, ИспользуемыеПодменю, НастройкиРазмещения.Команды.Скопировать()); + + КонецЕсли; + +КонецПроцедуры + +// Конструктор одноименного параметра процедуры ПриСозданииНаСервере. +// +// Возвращаемое значение: +// Структура - Параметры размещения подключаемых команд. +// * Источники - ОписаниеТипов, Массив из ОбъектМетаданных - Источники команд. +// Используется для второстепенных списков, +// а также в формах объектов, не являющихся поставщиками команд (обработки, общие формы). +// * КоманднаяПанель - ГруппаФормы - Командная панель или группа команд, в которой выводятся подменю. +// Используется как родитель для создания подменю в случае их отсутствия. +// Если не указан то в первую очередь ищется группа "ПодключаемыеКоманды". +// * ПрефиксГрупп - Строка - Добавка к именам подменю и имени командной панели. +// Используется при необходимости префиксации групп с командами (в частности, когда в форме несколько таблиц). +// В качестве префикса рекомендуется использовать имя таблицы формы, для которой выводятся команды. +// Например, если ПрефиксГрупп = "СкладскиеДокументы" (имя второстепенной таблицы формы), +// то используются подменю с именами "СкладскиеДокументыПодменюПечать", "СкладскиеДокументыПодменюОтчеты" и т.д. +// +Функция ПараметрыРазмещения() Экспорт + Результат = Новый Структура("Источники, КоманднаяПанель, ПрефиксГрупп"); + Результат.ПрефиксГрупп = ""; + Возврат Результат; +КонецФункции + +// Обработчик команды формы, требующей контекстный вызов сервера. +// +// Параметры: +// Форма - УправляемаяФорма - Форма, из которой выполняется команда. +// ПараметрыВызова - Структура - Параметры вызова. +// Источник - ТаблицаФормы, ДанныеФормыСтруктура - Объект или список формы с полем "Ссылка". +// Результат - Структура - Результат выполнения команды. +// +Процедура ВыполнитьКоманду(Знач Форма, Знач ПараметрыВызова, Знач Источник, Результат) Экспорт + Результат = Новый Структура; + Результат.Вставить("Текст", Неопределено); + Результат.Вставить("Подробно", Неопределено); + + Если ТипЗнч(ПараметрыВызова) <> Тип("Структура") + Или ПараметрыВызова.Количество() <> 2 + Или ТипЗнч(Форма) <> Тип("УправляемаяФорма") Тогда + Возврат; + КонецЕсли; + + АдресНастроек = Форма.Команды.Найти("АдресНастроекКомандВоВременномХранилище").Действие; + ОписаниеКоманды = ОписаниеКоманды(ПараметрыВызова.ИмяКомандыВФорме, АдресНастроек); + + Контекст = ПараметрыВыполненияКоманды(); + Контекст.ОписаниеКоманды = Новый Структура(ОписаниеКоманды); + Контекст.Форма = Форма; + Если Не Контекст.ЭтоФормаОбъекта И ЗначениеЗаполнено(ОписаниеКоманды.ИмяСписка) Тогда + Источник = Форма.Элементы.Найти(ОписаниеКоманды.ИмяСписка); + КонецЕсли; + Контекст.ЭтоФормаОбъекта = ТипЗнч(Источник) = Тип("ДанныеФормыСтруктура"); + Контекст.Источник = Источник; + Контекст.Вставить("Результат", Результат); + + ПараметрыЭкспортнойПроцедуры = Новый Массив; + ПараметрыЭкспортнойПроцедуры.Добавить(ПараметрыВызова.ПараметрКоманды); + ПараметрыЭкспортнойПроцедуры.Добавить(Контекст); + + РаботаВБезопасномРежиме.ВыполнитьМетодКонфигурации(ОписаниеКоманды.Обработчик, ПараметрыЭкспортнойПроцедуры); +КонецПроцедуры + +// Задает условия видимости команды на форме в зависимости от контекста. +// +// Параметры: +// Команда - СтрокаТаблицыЗначений - Команда, для которой добавляется условие видимости. +// Реквизит - Строка - Имя реквизита объекта. +// Значение - Произвольный - Значение реквизита объекта. +// ВидСравнения - ВидСравненияКомпоновкиДанных - Вид сравнения значений. +// Допустимо использовать следующие виды сравнения: +// ВидСравненияКомпоновкиДанных.Равно, +// ВидСравненияКомпоновкиДанных.НеРавно, +// ВидСравненияКомпоновкиДанных.Заполнено, +// ВидСравненияКомпоновкиДанных.НеЗаполнено, +// ВидСравненияКомпоновкиДанных.ВСписке, +// ВидСравненияКомпоновкиДанных.НеВСписке, +// ВидСравненияКомпоновкиДанных.Больше, +// ВидСравненияКомпоновкиДанных.Меньше, +// ВидСравненияКомпоновкиДанных.БольшеИлиРавно, +// ВидСравненияКомпоновкиДанных.МеньшеИлиРавно. +// Значение по умолчанию: ВидСравненияКомпоновкиДанных.Равно. +// +Процедура ДобавитьУсловиеВидимостиКоманды(Команда, Реквизит, Значение, Знач ВидСравнения = Неопределено) Экспорт + Если ВидСравнения = Неопределено Тогда + ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + КонецЕсли; + УсловиеВидимости = Новый Структура; + УсловиеВидимости.Вставить("Реквизит", Реквизит); + УсловиеВидимости.Вставить("ВидСравнения", ВидСравнения); + УсловиеВидимости.Вставить("Значение", Значение); + Команда.УсловияВидимости.Добавить(УсловиеВидимости); +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныйПрограммныйИнтерфейс + +//////////////////////////////////////////////////////////////////////////////// +// Обработчики условных вызовов. + +// См. описание этой же процедуры в модуле СтандартныеПодсистемыСервер. +Процедура ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики) Экспорт + Событие = "СтандартныеПодсистемы.ОбновлениеВерсииИБ\ПриДобавленииОбработчиковОбновления"; + СерверныеОбработчики[Событие].Добавить("ПодключаемыеКоманды"); +КонецПроцедуры + +// Обработчик обновления кэшей, связанных с расширениями. +Функция ПриЗаполненииВсехПараметровРаботыРасширений() Экспорт + Возврат ОперативноеОбновлениеОбщихДанных(Тип("СправочникСсылка.ИдентификаторыОбъектовРасширений")); +КонецФункции + +// Формирует таблицу общих настроек всех расширений, подключенных к объекту метаданных. +Функция НастройкиРасширенийПодключенныхКОбъектуМетаданных(СсылкаОбъектаМетаданных) Экспорт + Результат = Новый ТаблицаЗначений; + СтруктураКолонок = НастройкиПодключаемыхОтчетовИОбработок(); + Для Каждого КлючИЗначение Из СтруктураКолонок Цикл + Результат.Колонки.Добавить(КлючИЗначение.Ключ, КлючИЗначение.Значение); + КонецЦикла; + Результат.Колонки.Добавить("ПолноеИмя", Новый ОписаниеТипов("Строка")); + Результат.Колонки.Добавить("Менеджер"); + + Если СсылкаОбъектаМетаданных = Неопределено Тогда + Возврат Результат; + КонецЕсли; + ПодключенныеОбъекты = ПодключаемыеКомандыПовтИсп.Параметры().ПодключенныеОбъекты[СсылкаОбъектаМетаданных]; + Если ПодключенныеОбъекты = Неопределено Тогда + Возврат Результат; + КонецЕсли; + Для Каждого ПолноеИмя Из ПодключенныеОбъекты Цикл + Настройки = НастройкиПоставщика(ПолноеИмя); + Если Настройки = Неопределено Тогда + Продолжить; + КонецЕсли; + ЗаполнитьЗначенияСвойств(Результат.Добавить(), Настройки); + КонецЦикла; + + Возврат Результат; +КонецФункции + +// Получает настройки интеграции объекта метаданных (отчета или обработки). +// +// Параметры: +// ПолноеИмя - Строка - Полное имя объекта метаданных. +// +// Возвращаемое значение: +// Структура - Настройки интеграции этого объекта. +// См. возвращаемое значение функции НастройкиПодключаемыхОтчетовИОбработок(). +// Дополнительно содержит следующие поля: +// * ПолноеИмя - Строка - Полное имя объекта метаданных. +// * Менеджер - ОбработкаМенеджер, ОтчетМенеджер - Менеджер объекта метаданных. +// +Функция НастройкиПоставщика(ПолноеИмя) Экспорт + ЧастиИмени = СтрРазделить(ПолноеИмя, "."); + Если ЧастиИмени.Количество() <> 2 Тогда + Возврат Неопределено; + КонецЕсли; + Вид = ВРег(ЧастиИмени[0]); + Имя = ЧастиИмени[1]; + Если Вид = "ОТЧЕТ" Тогда + Узел = Отчеты; + ИначеЕсли Вид = "ОБРАБОТКА" Тогда + Узел = Обработки; + Иначе + Возврат Неопределено; + КонецЕсли; + + Настройки = НастройкиПодключаемыхОтчетовИОбработок(); + Для Каждого КлючИЗначение Из Настройки Цикл + Настройки.Вставить(КлючИЗначение.Ключ, КлючИЗначение.Значение.ПривестиЗначение()); + КонецЦикла; + + Менеджер = Узел[Имя]; + Менеджер.ПриОпределенииНастроек(Настройки); + + Настройки.Вставить("ПолноеИмя", ПолноеИмя); + Настройки.Вставить("Менеджер", Менеджер); + Возврат Настройки; +КонецФункции + +//////////////////////////////////////////////////////////////////////////////// +// Обработчики служебных событий. + +// Добавляет процедуры-обработчики обновления, необходимые данной подсистеме. +// +// Параметры: +// Обработчики - ТаблицаЗначений - Обработчики обновления. +// См. описание метода ОбновлениеИнформационнойБазы.НоваяТаблицаОбработчиковОбновления(). +// +Процедура ПриДобавленииОбработчиковОбновления(Обработчики) Экспорт + Обработчик = Обработчики.Добавить(); + Обработчик.ВыполнятьВГруппеОбязательных = Ложь; + Обработчик.ОбщиеДанные = Истина; + Обработчик.УправлениеОбработчиками = Ложь; + Обработчик.РежимВыполнения = "Оперативно"; + Обработчик.Версия = "*"; + Обработчик.Процедура = "ПодключаемыеКоманды.ОперативноеОбновлениеОбщихДанныхКонфигурации"; + Обработчик.Приоритет = 90; +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +//////////////////////////////////////////////////////////////////////////////// +// Обработчики событий. + +// Формирует таблицу общих настроек всех расширений, подключенных к объекту метаданных. +Функция ПодключенныеОбъекты(Источник, ПодключенныеОбъекты = Неопределено, НастройкиПрограммногоИнтерфейса = Неопределено) + Если ПодключенныеОбъекты = Неопределено Тогда + ПодключенныеОбъекты = ТаблицаПодключаемыхОбъектов(НастройкиПрограммногоИнтерфейса); + КонецЕсли; + Если Источник.СсылкаМетаданных = Неопределено Тогда + Возврат ПодключенныеОбъекты; + КонецЕсли; + + ПолныеИменаПодключенныхОбъектов = ПодключаемыеКомандыПовтИсп.Параметры().ПодключенныеОбъекты[Источник.СсылкаМетаданных]; + Если ПолныеИменаПодключенныхОбъектов = Неопределено Тогда + Возврат ПодключенныеОбъекты; + КонецЕсли; + + Для Каждого ПолноеИмя Из ПолныеИменаПодключенныхОбъектов Цикл + ПодключенныйОбъект = ПодключенныеОбъекты.Найти(ПолноеИмя, "ПолноеИмя"); + Если ПодключенныйОбъект = Неопределено Тогда + НастройкиПодключаемогоОбъекта = НастройкиПодключаемогоОбъекта(ПолноеИмя, НастройкиПрограммногоИнтерфейса); + Если НастройкиПодключаемогоОбъекта = Неопределено Тогда + Продолжить; + КонецЕсли; + ПодключенныйОбъект = ПодключенныеОбъекты.Добавить(); + ЗаполнитьЗначенияСвойств(ПодключенныйОбъект, НастройкиПодключаемогоОбъекта); + ПодключенныйОбъект.ТипСсылкиДанных = Источник.ТипСсылкиДанных; + ПодключенныйОбъект.Метаданные = Метаданные.НайтиПоПолномуИмени(ПолноеИмя); + Иначе + ПодключенныйОбъект.ТипСсылкиДанных = ОбъединитьТипы(ПодключенныйОбъект.ТипСсылкиДанных, Источник.ТипСсылкиДанных); + КонецЕсли; + КонецЦикла; + + Возврат ПодключенныеОбъекты; +КонецФункции + +// Получает настройки интеграции объекта метаданных - поставщика команд (отчета или обработки). +// +// Параметры: +// ПолноеИмя - Строка - Полное имя объекта метаданных. +// НастройкиПрограммногоИнтерфейса - Произвольный - Необязательный. Результат выполнения функции +// НастройкиПрограммногоИнтерфейсаПодключаемыхОбъектов(). +// +// Возвращаемое значение: +// Структура - Настройки интеграции этого объекта. +// Состав полей см. в блоке "Параметры процедуры ПриОпределенииНастроек" +// процедуры ПодключаемыеКомандыПереопределяемый.ПриОпределенииСоставаНастроекПодключаемыхОбъектов(). +// Дополнительно содержит следующие поля: +// * Вид - Строка - Вид имя объекта метаданных в верхнем регистре. +// * ПолноеИмя - Строка - Полное имя объекта метаданных. +// * Менеджер - ОбработкаМенеджер, ОтчетМенеджер - Менеджер объекта метаданных. +// +Функция НастройкиПодключаемогоОбъекта(ПолноеИмя, НастройкиПрограммногоИнтерфейса = Неопределено) + ЧастиИмени = СтрРазделить(ПолноеИмя, "."); + Если ЧастиИмени.Количество() <> 2 Тогда + Возврат Неопределено; + КонецЕсли; + ВидВРег = ВРег(ЧастиИмени[0]); + Имя = ЧастиИмени[1]; + Если ВидВРег = "ОТЧЕТ" Тогда + Узел = Отчеты; + ИначеЕсли ВидВРег = "ОБРАБОТКА" Тогда + Узел = Обработки; + Иначе + Возврат Неопределено; + КонецЕсли; + + Если НастройкиПрограммногоИнтерфейса = Неопределено Тогда + НастройкиПрограммногоИнтерфейса = НастройкиПрограммногоИнтерфейсаПодключаемыхОбъектов(); + КонецЕсли; + + Настройки = Новый Структура; + Для Каждого Настройка Из НастройкиПрограммногоИнтерфейса Цикл + Если Настройка.ВидыПодключаемыхОбъектов = "" + Или СтрНайти(ВРег(Настройка.ВидыПодключаемыхОбъектов), ВидВРег) > 0 Тогда + Настройки.Вставить(Настройка.Ключ, Настройка.ОписаниеТипов.ПривестиЗначение()); + КонецЕсли; + КонецЦикла; + + Менеджер = Узел[Имя]; + Менеджер.ПриОпределенииНастроек(Настройки); + + Настройки.Вставить("Вид", ВидВРег); + Настройки.Вставить("ПолноеИмя", ПолноеИмя); + Настройки.Вставить("Менеджер", Менеджер); + Возврат Настройки; +КонецФункции + +// Добавляет типы в массив. +// +// Параметры: +// Массив - Массив - Массив типов. +// ТипИлиОписаниеТипов - Тип, ОписаниеТипов - Добавляемые типы. +// +Процедура ДополнитьМассивТипов(Массив, ТипИлиОписаниеТипов) + Если ТипЗнч(ТипИлиОписаниеТипов) = Тип("ОписаниеТипов") Тогда + ОбщегоНазначенияКлиентСервер.ДополнитьМассив(Массив, ТипИлиОписаниеТипов.Типы(), Истина); + ИначеЕсли ТипЗнч(ТипИлиОписаниеТипов) = Тип("Тип") И Массив.Найти(ТипИлиОписаниеТипов) = Неопределено Тогда + Массив.Добавить(ТипИлиОписаниеТипов); + КонецЕсли; +КонецПроцедуры + +// Регистрирует в дереве источников команд объект метаданных, а также вспомогательные объекты метаданных, +// подключенных к указанному объекту метаданных. +// +// Параметры: +// ОбъектМетаданных - ОбъектМетаданных - Объект метаданных, к которому подключены источники команд. +// Источники - ДеревоЗначений - См. описание одноименного параметра +// процедуры ПодключаемыеКомандыПереопределяемый.ПриОпределенииКомандПодключенныхКОбъекту(). +// ПодключенныеОбъекты - ТаблицаЗначений - См. описание возвращаемого значения +// функции ПодключаемыеКоманды.ТаблицаПодключаемыхОбъектов(). +// НастройкиПрограммногоИнтерфейса - Структура - Необязательный. См. описание возвращаемого значения +// функции ПодключаемыеКоманды.НастройкиПрограммногоИнтерфейсаПодключаемыхОбъектов(). +// +// Возвращаемое значение: +// СтрокаДереваЗначений - Настройки объекта метаданных. См. описание 2 параметра +// процедуры ПодключаемыеКомандыПереопределяемый.ПриОпределенииКомандПодключенныхКОбъекту(). +// +Функция ЗарегистрироватьИсточник(ОбъектМетаданных, Источники, ПодключенныеОбъекты, НастройкиПрограммногоИнтерфейса) + Если ОбъектМетаданных = Неопределено Тогда + Возврат Неопределено; + КонецЕсли; + ПолноеИмя = ОбъектМетаданных.ПолноеИмя(); + Менеджер = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ПолноеИмя); + Если Менеджер = Неопределено Тогда + Возврат Неопределено; // Объект не может быть источником команд. + КонецЕсли; + + Источник = Источники.Строки.Добавить(); + Источник.Метаданные = ОбъектМетаданных; + Источник.ПолноеИмя = ПолноеИмя; + Источник.Менеджер = Менеджер; + Источник.СсылкаМетаданных = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ПолноеИмя); + Источник.Вид = ВРег(СтрЛев(ПолноеИмя, ".")); + Источник.ЭтоЖурналДокументов = (Источник.Вид = "ЖУРНАЛДОКУМЕНТОВ"); + + Если Источник.ЭтоЖурналДокументов Тогда + МассивТипов = Новый Массив; + Для Каждого МетаданныеДокумента Из ОбъектМетаданных.РегистрируемыеДокументы Цикл + Документ = ЗарегистрироватьИсточник(МетаданныеДокумента, Источник, ПодключенныеОбъекты, НастройкиПрограммногоИнтерфейса); + Если Документ <> Неопределено Тогда + МассивТипов.Добавить(Документ.ТипСсылкиДанных); + КонецЕсли; + КонецЦикла; + Источник.ТипСсылкиДанных = Новый ОписаниеТипов(МассивТипов); + Иначе + Источник.ТипСсылкиДанных = Тип(Источник.Вид + "Ссылка." + ОбъектМетаданных.Имя); + КонецЕсли; + + ПодключенныеОбъекты(Источник, ПодключенныеОбъекты, НастройкиПрограммногоИнтерфейса); + + Возврат Источник; +КонецФункции + +//////////////////////////////////////////////////////////////////////////////// +// Кэш формы ПриСозданииНаСервере. + +// Кэш формы, в которой будут выводиться подключаемые команды. +Функция КэшФормы(ИмяФормы, ИсточникиЧерезЗапятую, ЭтоФормаОбъекта) Экспорт + Команды = ТаблицаКоманд(); + Источники = ДеревоИсточниковКоманд(); + НастройкиПрограммногоИнтерфейса = НастройкиПрограммногоИнтерфейсаПодключаемыхОбъектов(); + ПодключенныеОбъекты = ТаблицаПодключаемыхОбъектов(НастройкиПрограммногоИнтерфейса); + + КэшФормы = Новый Структура; + КэшФормы.Вставить("Команды", Команды); + КэшФормы.Вставить("ЕстьУсловияВидимости", Ложь); + КэшФормы.Вставить("ФункциональныеОпции", Новый Структура); + + МетаданныеФормы = Метаданные.НайтиПоПолномуИмени(ИмяФормы); + МетаданныеРодителя = ?(МетаданныеФормы = Неопределено, Неопределено, МетаданныеФормы.Родитель()); + ВидВРег = ВРег(СтрЛев(ИмяФормы, ".")); + ТипыИсточников = Новый Массив; + Если ИсточникиЧерезЗапятую = "" Тогда + Источник = ЗарегистрироватьИсточник(МетаданныеРодителя, Источники, ПодключенныеОбъекты, НастройкиПрограммногоИнтерфейса); + ДополнитьМассивТипов(ТипыИсточников, Источник.ТипСсылкиДанных); + Иначе + ПолныеИменаИсточников = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ИсточникиЧерезЗапятую, ",", Истина, Истина); + Для Каждого ПолноеИмя Из ПолныеИменаИсточников Цикл + ОбъектМетаданных = Метаданные.НайтиПоПолномуИмени(ПолноеИмя); + Источник = ЗарегистрироватьИсточник(ОбъектМетаданных, Источники, ПодключенныеОбъекты, НастройкиПрограммногоИнтерфейса); + ДополнитьМассивТипов(ТипыИсточников, Источник.ТипСсылкиДанных); + КонецЦикла; + КонецЕсли; + + Если ЭтоФормаОбъекта = Неопределено Тогда + Если ТипыИсточников.Количество() > 1 Тогда + ЭтоФормаОбъекта = Ложь; + ИначеЕсли МетаданныеРодителя <> Неопределено Тогда + Коллекция = Новый Структура("ОсновнаяФормаСписка, ОсновнаяФормаОбъекта"); + ЗаполнитьЗначенияСвойств(Коллекция, МетаданныеРодителя); + Если МетаданныеФормы = Коллекция.ОсновнаяФормаСписка Тогда + ЭтоФормаОбъекта = Ложь; + ИначеЕсли МетаданныеФормы = Коллекция.ОсновнаяФормаОбъекта Тогда + ЭтоФормаОбъекта = Истина; + Иначе + Если ВидВРег = ВРег("ЖурналДокументов") Тогда + ЭтоФормаОбъекта = Ложь; + ИначеЕсли ВидВРег = ВРег("Обработка") Тогда + ЭтоФормаОбъекта = Ложь; + Иначе + ЭтоФормаОбъекта = Истина; + КонецЕсли; + КонецЕсли; + Иначе + ЭтоФормаОбъекта = Ложь; + КонецЕсли; + КонецЕсли; + КэшФормы.Вставить("ЭтоФормаОбъекта", ЭтоФормаОбъекта); + + Контекст = Новый Структура; + Контекст.Вставить("ВидВРег", ВидВРег); + Контекст.Вставить("ИмяФормы", ИмяФормы); + Контекст.Вставить("МетаданныеФормы", МетаданныеФормы); + Контекст.Вставить("ТипыИсточников", ТипыИсточников); + Контекст.Вставить("ЭтоФормаОбъекта", ЭтоФормаОбъекта); + Контекст.Вставить("ФункциональныеОпции", КэшФормы.ФункциональныеОпции); + + ПодключаемыеКомандыПереопределяемый.ПриОпределенииКомандПодключенныхКОбъекту(Контекст, Источники, ПодключенныеОбъекты, Команды); + + // Фильтр команд по именам форм и функциональным опциям. + ЧастиИмени = СтрРазделить(ИмяФормы, "."); + КраткоеИмяФормы = ЧастиИмени[ЧастиИмени.ВГраница()]; + Количество = Команды.Количество(); + Для Номер = 1 По Количество Цикл + Команда = Команды[Количество - Номер]; + // Значения по умолчанию. + Если Команда.ИзменяетВыбранныеОбъекты = Неопределено Тогда + Команда.ИзменяетВыбранныеОбъекты = Ложь; + КонецЕсли; + // Фильтр по именам форм. + ВидимостьВФормах = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ВРег(Команда.ВидимостьВФормах), ",", Истина, Истина); + Если ВидимостьВФормах.Количество() > 0 + И ВидимостьВФормах.Найти(ВРег(КраткоеИмяФормы)) = Неопределено + И ВидимостьВФормах.Найти(ВРег(ИмяФормы)) = Неопределено Тогда + Команды.Удалить(Команда); + Продолжить; + КонецЕсли; + // Фильтр по функциональным опциям. + ФункциональныеОпции = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(Команда.ФункциональныеОпции, ",", Истина, Истина); + ВидимостьКоманды = ФункциональныеОпции.Количество() = 0; + Для Каждого ИмяОпции Из ФункциональныеОпции Цикл + Если ПолучитьФункциональнуюОпцию(СокрЛП(ИмяОпции)) Тогда + ВидимостьКоманды = Истина; + Прервать; + КонецЕсли; + КонецЦикла; + Если Не ВидимостьКоманды Тогда + Команды.Удалить(Команда); + Продолжить; + КонецЕсли; + // Динамические применяемые условия видимости. + Если ТипЗнч(Команда.ТипПараметра) = Тип("Тип") Тогда + МассивТипов = Новый Массив; + МассивТипов.Добавить(Команда.ТипПараметра); + Команда.ТипПараметра = Новый ОписаниеТипов(МассивТипов); + КонецЕсли; + Если ТипЗнч(Команда.ТипПараметра) = Тип("ОписаниеТипов") И ЗначениеЗаполнено(Команда.ТипПараметра) Тогда + СодержитХотьОдинТип = Ложь; + Для Каждого Тип Из ТипыИсточников Цикл + Если Команда.ТипПараметра.СодержитТип(Тип) Тогда + СодержитХотьОдинТип = Истина; + Иначе + Команда.ЕстьУсловияВидимости = Истина; + КонецЕсли; + КонецЦикла; + Если Не СодержитХотьОдинТип Тогда + Команды.Удалить(Команда); + Продолжить; + КонецЕсли; + КонецЕсли; + Если ТипЗнч(Команда.УсловияВидимости) = Тип("Массив") И Команда.УсловияВидимости.Количество() > 0 Тогда + Команда.ЕстьУсловияВидимости = Истина; + КонецЕсли; + Если Команда.МножественныйВыбор = Неопределено Тогда + Команда.МножественныйВыбор = Истина; + КонецЕсли; + Команда.ПорядокВажности = ?(Команда.Важность = "Важное", 1, ?(Команда.Важность = "СмТакже", 3, 2)); + КэшФормы.ЕстьУсловияВидимости = КэшФормы.ЕстьУсловияВидимости Или Команда.ЕстьУсловияВидимости; + + Если ПустаяСтрока(Команда.Идентификатор) Тогда + Команда.Идентификатор = "Авто_" + КонтрольнаяСуммаСтрокой(Команда.Менеджер + "/" + Команда.ИмяФормы + "/" + Команда.Обработчик); + КонецЕсли; + КонецЦикла; + + Возврат КэшФормы; +КонецФункции + +Функция ВидыКоманд() + Виды = Новый ТаблицаЗначений; + Виды.Колонки.Добавить("Имя", Новый ОписаниеТипов("Строка")); + Виды.Колонки.Добавить("ИмяПодменю", Новый ОписаниеТипов("Строка")); + Виды.Колонки.Добавить("Заголовок", Новый ОписаниеТипов("Строка")); + Виды.Колонки.Добавить("Порядок", Новый ОписаниеТипов("Число")); + Виды.Колонки.Добавить("Картинка"); // Картинка, Неопределено. + Виды.Колонки.Добавить("Отображение"); // ОтображениеКнопки, Неопределено. + + // Вид с пустой группой для команд, которые следует размещать в командной панели. + Вид = Виды.Добавить(); + Вид.Имя = "КоманднаяПанель"; + Вид.ИмяПодменю = ""; + Вид.Порядок = 90; + + ПодключаемыеКомандыПереопределяемый.ПриОпределенииВидовПодключаемыхКоманд(Виды); + + Виды.Сортировать("Порядок Возр"); + + Возврат Виды; +КонецФункции + +Процедура ПроверитьИмяВидаКоманд(ИмяВида) + Структура = Новый Структура; + Попытка + Структура.Вставить(ИмяВида, Неопределено); + Исключение + ТекстОшибки = НСтр("ru = 'Имя вида команд ""%1"" не удовлетворяет требованиям именования переменных.'"); + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстОшибки, ИмяВида); + КонецПопытки; +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Вывод. + +// Размещает подключенные команды в форме. +// +// Параметры: +// Форма - УправляемаяФорма - форма, в которой необходимо разместить команды. +// +Процедура ВывестиКоманды(Форма, ИспользуемыеПодменю, Команды) + Команды.Сортировать("Группа, Порядок Возр, Представление Возр"); + + ИмяГруппы = Неопределено; + ГруппаФормы = Неопределено; + КомандаФормы = Неопределено; + СчетчикКомандСАвтогенерируемымИменем = 0; + ИнформацияОВсехПодменю = Новый Соответствие; + + УдаляемыеКоманды = Новый Массив; + Для Каждого Команда Из Команды Цикл + // При смене группы сбрасываются счетчики. + Если ИмяГруппы <> Команда.Группа Тогда + ИмяГруппы = Команда.Группа; + ГруппаФормы = Форма.Элементы.Найти(ИмяГруппы); + СчетчикКомандСАвтогенерируемымИменем = 0; + ИнформацияОПодменю = СформироватьИнформациюОПодменю(ИнформацияОВсехПодменю, ГруппаФормы); + КонецЕсли; + // Группы нет - команда не выводится. + Если ГруппаФормы = Неопределено Тогда + УдаляемыеКоманды.Добавить(Команда); + Продолжить; + КонецЕсли; + + // Уникальное имя добавляемого элемента. + Команда.ИмяВФорме = ОпределитьИмяКоманды(Форма, ИмяГруппы, Команда.Идентификатор, СчетчикКомандСАвтогенерируемымИменем); + + КомандаФормы = Форма.Команды.Добавить(Команда.ИмяВФорме); + КомандаФормы.Действие = "Подключаемый_ВыполнитьКоманду"; + КомандаФормы.Заголовок = Команда.Представление; + КомандаФормы.Отображение = ОтображениеКнопки.КартинкаИТекст; + Если ТипЗнч(Команда.Картинка) = Тип("Картинка") Тогда + КомандаФормы.Картинка = Команда.Картинка; + КонецЕсли; + Если ТипЗнч(Команда.СочетаниеКлавиш) = Тип("СочетаниеКлавиш") Тогда + КомандаФормы.СочетаниеКлавиш = Команда.СочетаниеКлавиш; + КонецЕсли; + + КнопкаФормы = Форма.Элементы.Добавить(Команда.ИмяВФорме, Тип("КнопкаФормы"), ГруппаФормы); + КнопкаФормы.Вид = ВидКнопкиФормы.КнопкаКоманднойПанели; + КнопкаФормы.ИмяКоманды = Команда.ИмяВФорме; + + ИнформацияОПодменю.КоличествоКоманд = ИнформацияОПодменю.КоличествоКоманд + 1; + ИнформацияОПодменю.ИмяПоследнейКнопки = Команда.ИмяВФорме; + КонецЦикла; + + // Формирование информации о подменю с 0 динамических команд и 1 фиксированной командой. + Для Каждого ИмяГруппы Из ИспользуемыеПодменю Цикл + СформироватьИнформациюОПодменю(ИнформацияОВсехПодменю, Форма.Элементы.Найти(ИмяГруппы)); + КонецЦикла; + + Для Каждого Команда Из УдаляемыеКоманды Цикл + Команды.Удалить(Команда); + КонецЦикла; + + // Смена вида групп, в которых всего 1 команда. + Для Каждого КлючИЗначение Из ИнформацияОВсехПодменю Цикл + ИнформацияОПодменю = КлючИЗначение.Значение; + Если ИнформацияОПодменю.КоличествоКоманд <> 1 Тогда + Продолжить; + КонецЕсли; + Подменю = Форма.Элементы.Найти(КлючИЗначение.Ключ); + Если ТипЗнч(Подменю) <> Тип("ГруппаФормы") Или Подменю.Вид <> ВидГруппыФормы.Подменю Тогда + Продолжить; + КонецЕсли; + КомандаФормы = Форма.Элементы.Найти(ИнформацияОПодменю.ИмяПоследнейКнопки); + Если ТипЗнч(КомандаФормы) <> Тип("КнопкаФормы") Тогда + Продолжить; + КонецЕсли; + Если Не ЗначениеЗаполнено(КомандаФормы.Картинка) Тогда + КомандаФормы.Картинка = Подменю.Картинка; + КонецЕсли; + Подменю.Вид = ВидГруппыФормы.ГруппаКнопок; + КонецЦикла; + + КомандаФормы = Форма.Команды.Найти("АдресНастроекКомандВоВременномХранилище"); + Если КомандаФормы = Неопределено Тогда + КомандаФормы = Форма.Команды.Добавить("АдресНастроекКомандВоВременномХранилище"); + КомандаФормы.Действие = ПоместитьВоВременноеХранилище(Команды, Форма.УникальныйИдентификатор); + Иначе + ПоместитьВоВременноеХранилище(Команды, КомандаФормы.Действие); + КонецЕсли; +КонецПроцедуры + +// Размещает подключенные команды в форме. +// +// Параметры: +// Форма - УправляемаяФорма - форма, в которой необходимо разместить команды. +// +Процедура ВывестиКоманды_2_4(Форма, Команды, ПараметрыРазмещения) + Элементы = Форма.Элементы; + ПрефиксГрупп = ?(ЗначениеЗаполнено(ПараметрыРазмещения.ПрефиксГрупп), ПараметрыРазмещения.ПрефиксГрупп, ""); + КоманднаяПанель = ПараметрыРазмещения.КоманднаяПанель; + Если КоманднаяПанель = Неопределено Тогда + КоманднаяПанель = Элементы.Найти(ПрефиксГрупп + "ПодключаемыеКоманды"); + Если КоманднаяПанель = Неопределено Тогда + КоманднаяПанель = Элементы.Найти(ПрефиксГрупп + "КоманднаяПанель"); + Если КоманднаяПанель = Неопределено Тогда + КоманднаяПанель = Элементы.Найти(ПрефиксГрупп + "ОсновнаяКоманднаяПанель"); + Если КоманднаяПанель = Неопределено И ЗначениеЗаполнено(ПрефиксГрупп) Тогда + ТаблицаФормы = Элементы.Найти(ПрефиксГрупп); + Если ТипЗнч(ТаблицаФормы) = Тип("ТаблицаФормы") Тогда + КоманднаяПанель = ТаблицаФормы.КоманднаяПанель; + КонецЕсли; + КонецЕсли; + Если Не ПараметрыРазмещения.ЭтоФормаОбъекта + И КоманднаяПанель = Неопределено + И Не ЗначениеЗаполнено(ПрефиксГрупп) Тогда + ТаблицаФормы = Элементы.Найти("Список"); + Если ТипЗнч(ТаблицаФормы) = Тип("ТаблицаФормы") + И ТаблицаФормы.ПоложениеКоманднойПанели <> ПоложениеКоманднойПанелиЭлементаФормы.Нет Тогда + КоманднаяПанель = ТаблицаФормы.КоманднаяПанель; + КонецЕсли; + КонецЕсли; + Если КоманднаяПанель = Неопределено Тогда + КоманднаяПанель = Форма.КоманднаяПанель; + КонецЕсли; + КонецЕсли; + КонецЕсли; + КонецЕсли; + + СведенияОВсехПодменю = Новый ТаблицаЗначений; + СведенияОВсехПодменю.Колонки.Добавить("Подменю"); + СведенияОВсехПодменю.Колонки.Добавить("ВыведеноКоманд", Новый ОписаниеТипов("Число")); + СведенияОВсехПодменю.Колонки.Добавить("ЕстьКомандыСУсловиямиВидимости", Новый ОписаниеТипов("Булево")); + СведенияОВсехПодменю.Колонки.Добавить("ЕстьКомандыБезУсловийВидимости", Новый ОписаниеТипов("Булево")); + СведенияОВсехПодменю.Колонки.Добавить("Группы", Новый ОписаниеТипов("Структура")); + СведенияОВсехПодменю.Колонки.Добавить("ГруппаПоУмолчанию"); + СведенияОВсехПодменю.Колонки.Добавить("ПоследняяКоманда"); + СведенияОВсехПодменю.Колонки.Добавить("КомандыСУсловиямиВидимости", Новый ОписаниеТипов("Массив")); + БыстрыйПоискСведенийОПодменю = Новый Соответствие; + + // Создание и начальное заполнение реквизита формы "ПараметрыПодключаемыхКоманд", если его еще нет. + Структура = Новый Структура("ПараметрыПодключаемыхКоманд", Null); + ЗаполнитьЗначенияСвойств(Структура, Форма); + ПараметрыКлиента = Структура.ПараметрыПодключаемыхКоманд; + Если ТипЗнч(ПараметрыКлиента) <> Тип("Структура") Тогда + Если ПараметрыКлиента = Null Тогда + ДобавляемыеРеквизиты = Новый Массив; + ДобавляемыеРеквизиты.Добавить(Новый РеквизитФормы("ПараметрыПодключаемыхКоманд", Новый ОписаниеТипов)); + Форма.ИзменитьРеквизиты(ДобавляемыеРеквизиты); + КонецЕсли; + ПараметрыКлиента = Новый Структура; + ПараметрыКлиента.Вставить("ЕстьУсловияВидимости", ПараметрыРазмещения.ЕстьУсловияВидимости); + ПараметрыКлиента.Вставить("ПодменюСУсловиямиВидимости", Новый Массив); + ПараметрыКлиента.Вставить("КорневыеПодменюИКоманды", Новый Массив); + ПараметрыКлиента.Вставить("ДоступностьКоманд", Истина); + ПараметрыКлиента.Вставить("АдресТаблицыКоманд", Неопределено); + Форма.ПараметрыПодключаемыхКоманд = ПараметрыКлиента; + Иначе + ПараметрыКлиента.ЕстьУсловияВидимости = ПараметрыКлиента.ЕстьУсловияВидимости Или ПараметрыРазмещения.ЕстьУсловияВидимости; + КонецЕсли; + КорневыеПодменюИКоманды = ПараметрыКлиента.КорневыеПодменюИКоманды; + + // Вывод команд. + Команды.Сортировать("Вид, Подменю, ПорядокВажности Возр, Порядок Возр, Представление Возр"); + СчетчикКомандСАвтогенерируемымИменем = 0; + ВидыКоманд = ВидыКоманд(); + Для Каждого ВидКоманд Из ВидыКоманд Цикл + ПроверитьИмяВидаКоманд(ВидКоманд.Имя); + КомандыВида = Команды.НайтиСтроки(Новый Структура("Вид", ВидКоманд.Имя)); + Количество = КомандыВида.Количество(); + Если Количество = 0 Тогда + Продолжить; + КонецЕсли; + + ИмяПодменюПоУмолчанию = ПрефиксГрупп + ВидКоманд.ИмяПодменю; + СведенияОПодменюПоУмолчанию = БыстрыйПоискСведенийОПодменю.Получить(НРег(ИмяПодменюПоУмолчанию)); + Если СведенияОПодменюПоУмолчанию = Неопределено Тогда + СведенияОПодменюПоУмолчанию = ЗарегистрироватьПодменю(Элементы, СведенияОВсехПодменю, ИмяПодменюПоУмолчанию, ВидКоманд, КоманднаяПанель); + БыстрыйПоискСведенийОПодменю.Вставить(НРег(ИмяПодменюПоУмолчанию), СведенияОПодменюПоУмолчанию); + КонецЕсли; + + Для Каждого Команда Из КомандыВида Цикл + Если ПустаяСтрока(Команда.Подменю) Тогда + СведенияОПодменюКоманды = СведенияОПодменюПоУмолчанию; + Иначе + ИмяПодменю = ПрефиксГрупп + Команда.Подменю; + СведенияОПодменюКоманды = БыстрыйПоискСведенийОПодменю.Получить(НРег(ИмяПодменю)); + Если СведенияОПодменюКоманды = Неопределено Тогда + СведенияОПодменюКоманды = ЗарегистрироватьПодменю(Элементы, СведенияОВсехПодменю, ИмяПодменю, , , СведенияОПодменюПоУмолчанию); + БыстрыйПоискСведенийОПодменю.Вставить(НРег(ИмяПодменю), СведенияОПодменюКоманды); + КонецЕсли; + КонецЕсли; + + ГруппаФормы = Неопределено; + Если Не ЗначениеЗаполнено(Команда.Важность) + Или Не СведенияОПодменюКоманды.Группы.Свойство(Команда.Важность, ГруппаФормы) Тогда + ГруппаФормы = СведенияОПодменюКоманды.ГруппаПоУмолчанию; + КонецЕсли; + + Команда.ИмяВФорме = ОпределитьИмяКоманды(Форма, ГруппаФормы.Имя, Команда.Идентификатор, СчетчикКомандСАвтогенерируемымИменем); + + ИмяКорневогоЭлемента = ?(ВидКоманд.Имя = "КоманднаяПанель", Команда.ИмяВФорме, СведенияОПодменюКоманды.Подменю.Имя); + Если КорневыеПодменюИКоманды.Найти(ИмяКорневогоЭлемента) = Неопределено Тогда + КорневыеПодменюИКоманды.Добавить(ИмяКорневогоЭлемента); + КонецЕсли; + + КомандаФормы = Форма.Команды.Добавить(Команда.ИмяВФорме); + КомандаФормы.Действие = "Подключаемый_ВыполнитьКоманду"; + КомандаФормы.Заголовок = Команда.Представление; + КомандаФормы.Отображение = ОтображениеКнопки.КартинкаИТекст; + Если ТипЗнч(Команда.Картинка) = Тип("Картинка") Тогда + КомандаФормы.Картинка = Команда.Картинка; + КонецЕсли; + Если ТипЗнч(Команда.СочетаниеКлавиш) = Тип("СочетаниеКлавиш") Тогда + КомандаФормы.СочетаниеКлавиш = Команда.СочетаниеКлавиш; + КонецЕсли; + Если СведенияОПодменюКоманды.Подменю = КоманднаяПанель + И СтрДлина(Команда.Представление) > 35 + И ЗначениеЗаполнено(КомандаФормы.Картинка) Тогда + КомандаФормы.Отображение = ОтображениеКнопки.Картинка; + КомандаФормы.Подсказка = КомандаФормы.Заголовок; + КонецЕсли; + + КнопкаФормы = Элементы.Добавить(Команда.ИмяВФорме, Тип("КнопкаФормы"), ГруппаФормы); + КнопкаФормы.Вид = ВидКнопкиФормы.КнопкаКоманднойПанели; + КнопкаФормы.ИмяКоманды = Команда.ИмяВФорме; + + Если Команда.ИзменяетВыбранныеОбъекты И Форма.ТолькоПросмотр Тогда + КнопкаФормы.Доступность = Ложь; + КонецЕсли; + + СведенияОПодменюКоманды.ВыведеноКоманд = СведенияОПодменюКоманды.ВыведеноКоманд + 1; + СведенияОПодменюКоманды.ПоследняяКоманда = КомандаФормы; + Если Команда.ЕстьУсловияВидимости Тогда + СведенияОПодменюКоманды.ЕстьКомандыСУсловиямиВидимости = Истина; + СведенияОКоманде = Новый Структура("ИмяВФорме, ТипПараметра, УсловияВидимости"); + ЗаполнитьЗначенияСвойств(СведенияОКоманде, Команда); + СведенияОПодменюКоманды.КомандыСУсловиямиВидимости.Добавить(СведенияОКоманде); + Иначе + СведенияОПодменюКоманды.ЕстьКомандыБезУсловийВидимости = Истина; + КонецЕсли; + КонецЦикла; + КонецЦикла; + + // Команда-заглушка нужна всегда. + КомандаЗаглушка = Форма.Команды.Найти("КомандаДляВыводаВПустоеПодменю"); + Если КомандаЗаглушка = Неопределено Тогда + КомандаЗаглушка = Форма.Команды.Добавить("КомандаДляВыводаВПустоеПодменю"); + КомандаЗаглушка.Заголовок = НСтр("ru = '(нет)'"); + КонецЕсли; + + // Постобработка задействованных подменю. + Для Каждого СведенияОПодменю Из СведенияОВсехПодменю Цикл + Если СведенияОПодменю.ВыведеноКоманд = 0 Тогда + Продолжить; + КонецЕсли; + ЭтоКоманднаяПанель = (СведенияОПодменю.Подменю = КоманднаяПанель); + КомандаФормы = СведенияОПодменю.ПоследняяКоманда; + Подменю = СведенияОПодменю.Подменю; + + Если Не ЭтоКоманднаяПанель Тогда + Если СведенияОПодменю.ВыведеноКоманд = 1 Тогда + // Превращение подменю в кнопку когда выведена 1 команда с коротким заголовком. + Если Не ЗначениеЗаполнено(КомандаФормы.Картинка) И Подменю.Вид = ВидГруппыФормы.Подменю Тогда + КомандаФормы.Картинка = Подменю.Картинка; + КонецЕсли; + Если СтрДлина(КомандаФормы.Заголовок) <= 35 Тогда + КомандаФормы.Отображение = ОтображениеКнопки.КартинкаИТекст; + Иначе + КомандаФормы.Отображение = ОтображениеКнопки.Картинка; + КомандаФормы.Подсказка = КомандаФормы.Заголовок; + КонецЕсли; + Подменю.Вид = ВидГруппыФормы.ГруппаКнопок; + Иначе + // Добавление кнопок-заглушек, которые показываются когда в подменю скрыты все команды. + ИмяКомандыЗаглушки = Подменю.Имя + "Заглушка"; + Если Элементы.Найти(ИмяКомандыЗаглушки) = Неопределено Тогда + КнопкаФормы = Элементы.Добавить(ИмяКомандыЗаглушки, Тип("КнопкаФормы"), Подменю); + КнопкаФормы.Вид = ВидКнопкиФормы.КнопкаКоманднойПанели; + КнопкаФормы.ИмяКоманды = "КомандаДляВыводаВПустоеПодменю"; + КнопкаФормы.Видимость = Ложь; + КнопкаФормы.Доступность = Ложь; + КонецЕсли; + КонецЕсли; + КонецЕсли; + + Если СведенияОПодменю.ЕстьКомандыСУсловиямиВидимости Тогда + КраткиеСведенияОПодменю = Новый Структура("Имя, КомандыСУсловиямиВидимости, ЕстьКомандыБезУсловийВидимости"); + ЗаполнитьЗначенияСвойств(КраткиеСведенияОПодменю, СведенияОПодменю); + КраткиеСведенияОПодменю.Имя = СведенияОПодменю.Подменю.Имя; + ПараметрыКлиента.ПодменюСУсловиямиВидимости.Добавить(КраткиеСведенияОПодменю); + КонецЕсли; + КонецЦикла; + + Если ПараметрыКлиента.АдресТаблицыКоманд <> Неопределено И ЭтоАдресВременногоХранилища(ПараметрыКлиента.АдресТаблицыКоманд) Тогда + РанееДобавленныеКоманды = ПолучитьИзВременногоХранилища(ПараметрыКлиента.АдресТаблицыКоманд); + Если ТипЗнч(РанееДобавленныеКоманды) = Тип("ТаблицаЗначений") Тогда + Индекс = -1; + Для Каждого СтрокаТаблицы Из РанееДобавленныеКоманды Цикл + Индекс = Индекс + 1; + ЗаполнитьЗначенияСвойств(Команды.Вставить(Индекс), СтрокаТаблицы); + КонецЦикла; + КонецЕсли; + УдалитьИзВременногоХранилища(ПараметрыКлиента.АдресТаблицыКоманд); + КонецЕсли; + ПараметрыКлиента.АдресТаблицыКоманд = ПоместитьВоВременноеХранилище(Команды, Форма.УникальныйИдентификатор); + +КонецПроцедуры + +Функция ЗарегистрироватьПодменю(Элементы, СведенияОВсехПодменю, ИмяПодменю, ШаблонНового = Неопределено, КоманднаяПанель = Неопределено, ПодменюПоУмолчанию = Неопределено) + + Группы = Новый Структура; + Если ЗначениеЗаполнено(ИмяПодменю) Тогда + Подменю = Элементы.Найти(ИмяПодменю); + Если Подменю = Неопределено Тогда + Если ШаблонНового = Неопределено Тогда + Возврат ПодменюПоУмолчанию; + КонецЕсли; + Подменю = Элементы.Добавить(ИмяПодменю, Тип("ГруппаФормы"), КоманднаяПанель); + Подменю.Вид = ВидГруппыФормы.Подменю; + Подменю.Заголовок = ШаблонНового.Заголовок; + Подменю.Картинка = ШаблонНового.Картинка; + Подменю.Отображение = ШаблонНового.Отображение; + Иначе + ГруппаПоУмолчанию = Подменю; + Для Каждого Группа Из Подменю.ПодчиненныеЭлементы Цикл + Если ТипЗнч(Группа) <> Тип("ГруппаФормы") Тогда + Продолжить; + КонецЕсли; + КраткоеИмя = Группа.Имя; + Если СтрНачинаетсяС(НРег(КраткоеИмя), НРег(ИмяПодменю)) Тогда + КраткоеИмя = Сред(КраткоеИмя, СтрДлина(ИмяПодменю) + 1); + Если НРег(КраткоеИмя) = НРег("Обычное") Тогда + ГруппаПоУмолчанию = Группа; + КонецЕсли; + КонецЕсли; + Группы.Вставить(КраткоеИмя, Группа); + КонецЦикла; + КонецЕсли; + + Если Не Группы.Свойство("Важное") Тогда + ГруппаВажное = Элементы.Добавить(ИмяПодменю + "Важное", Тип("ГруппаФормы"), Подменю); + ГруппаВажное.Вид = ВидГруппыФормы.ГруппаКнопок; + Группы.Вставить("Важное", ГруппаВажное); + КонецЕсли; + Если Не Группы.Свойство("Обычное") Тогда + ГруппаПоУмолчанию = Элементы.Добавить(ИмяПодменю + "Обычное", Тип("ГруппаФормы"), Подменю); + ГруппаПоУмолчанию.Вид = ВидГруппыФормы.ГруппаКнопок; + Группы.Вставить("Обычное", ГруппаПоУмолчанию); + КонецЕсли; + Если Не Группы.Свойство("СмТакже") Тогда + ГруппаСмТакже = Элементы.Добавить(ИмяПодменю + "СмТакже", Тип("ГруппаФормы"), Подменю); + ГруппаСмТакже.Вид = ВидГруппыФормы.ГруппаКнопок; + Группы.Вставить("СмТакже", ГруппаСмТакже); + КонецЕсли; + + Иначе + Если ШаблонНового = Неопределено Тогда + Возврат ПодменюПоУмолчанию; + КонецЕсли; + Подменю = КоманднаяПанель; + ГруппаПоУмолчанию = КоманднаяПанель; + КонецЕсли; + + Результат = СведенияОВсехПодменю.Добавить(); + Результат.Подменю = Подменю; + Результат.ГруппаПоУмолчанию = ГруппаПоУмолчанию; + Результат.Группы = Группы; + + Возврат Результат; +КонецФункции + +Функция СформироватьИнформациюОПодменю(Соответствие, ГруппаФормы) + Если ГруппаФормы = Неопределено Тогда + Возврат Неопределено; + КонецЕсли; + Подменю = ГруппаФормы; + Если ГруппаФормы.Вид = ВидГруппыФормы.ГруппаКнопок + И ТипЗнч(ГруппаФормы.Родитель) = Тип("ГруппаФормы") + И ГруппаФормы.Родитель.Вид = ВидГруппыФормы.Подменю Тогда + Подменю = ГруппаФормы.Родитель; + КонецЕсли; + ИнформацияОПодменю = Соответствие[НРег(Подменю.Имя)]; + Если ИнформацияОПодменю = Неопределено Тогда + ИнформацияОПодменю = Новый Структура("КоличествоКоманд, ИмяПоследнейКнопки", 0, ""); + Соответствие.Вставить(НРег(Подменю.Имя), ИнформацияОПодменю); + ЗарегистрироватьФиксированныеКомандыПодменю(Подменю, ИнформацияОПодменю); + КонецЕсли; + Возврат ИнформацияОПодменю; +КонецФункции + +Процедура ЗарегистрироватьФиксированныеКомандыПодменю(ГруппаФормы, ИнформацияОПодменю) + Для Каждого ЭлементФормы Из ГруппаФормы.ПодчиненныеЭлементы Цикл + Если ТипЗнч(ЭлементФормы) = Тип("КнопкаФормы") И ЭлементФормы.Видимость Тогда + ИнформацияОПодменю.КоличествоКоманд = ИнформацияОПодменю.КоличествоКоманд + 1; + ИнформацияОПодменю.ИмяПоследнейКнопки = ЭлементФормы.Имя; + ИначеЕсли ТипЗнч(ЭлементФормы) = Тип("ГруппаФормы") Тогда + ЗарегистрироватьФиксированныеКомандыПодменю(ЭлементФормы, ИнформацияОПодменю) + КонецЕсли; + Если ИнформацияОПодменю.КоличествоКоманд > 1 Тогда + Возврат; // Оптимизация. + КонецЕсли; + КонецЦикла; +КонецПроцедуры + +Функция ОпределитьИмяКоманды(Форма, ИмяГруппы, ИдентификаторКоманды, СчетчикКомандСАвтогенерируемымИменем) + Если ИмяСоответствуетТребованиямИменованияСвойств(ИдентификаторКоманды) Тогда + ИмяКоманды = ИмяГруппы + "_" + ИдентификаторКоманды; + Иначе + СчетчикКомандСАвтогенерируемымИменем = СчетчикКомандСАвтогенерируемымИменем + 1; + ИмяКоманды = ИмяГруппы + "_" + Формат(СчетчикКомандСАвтогенерируемымИменем, "ЧН=; ЧГ="); + КонецЕсли; + Пока Форма.Элементы.Найти(ИмяКоманды) <> Неопределено + Или Форма.Команды.Найти(ИмяКоманды) <> Неопределено Цикл + СчетчикКомандСАвтогенерируемымИменем = СчетчикКомандСАвтогенерируемымИменем + 1; + ИмяКоманды = ИмяГруппы + "_" + Формат(СчетчикКомандСАвтогенерируемымИменем, "ЧН=; ЧГ="); + КонецЦикла; + Возврат ИмяКоманды; +КонецФункции + +Функция ИмяСоответствуетТребованиямИменованияСвойств(Имя) + Если СтрНайти(Имя, " ") > 0 Или СтрНайти(Имя, ",") > 0 Или СтрНайти(Имя, "(") > 0 Тогда + Возврат Ложь; + КонецЕсли; + Попытка + Структура = Новый Структура(Имя, Неопределено); + Результат = Истина; + Исключение + Результат = Ложь; + КонецПопытки; + Возврат Результат; +КонецФункции + +//////////////////////////////////////////////////////////////////////////////// +// Обновление информационной базы. + +Функция ОперативноеОбновлениеОбщихДанныхКонфигурации() Экспорт + Возврат ОперативноеОбновлениеОбщихДанных(Тип("СправочникСсылка.ИдентификаторыОбъектовМетаданных")); +КонецФункции + +// Обновляет кэш объектов метаданных указанного типа. +// +// Параметры: +// ФильтрПоТипуИдентификаторов - * - Тип объектов метаданных. +// - СправочникСсылка.ИдентификаторыОбъектовМетаданных - Обновлять кэш конфигурации. +// Структура с ключом "ПодключенныеОбъекты" записывается в константу ПараметрыПодключаемыхКоманд. +// - СправочникСсылка.ИдентификаторыОбъектовРасширений - Обновлять кэш расширений. +// Структура с ключом "ПодключенныеОбъекты" записывается в регистр ПараметрыРаботыВерсийРасширений. +// +// Возвращаемое значение: +// Структура - описание +// * ЕстьИзменения - Булево - Истина когда обновление прошло не "в холостую". +// * ПодключенныеОбъекты - Соответствие - Кэш для быстрого определения списка объектов, +// подключенных к объектам конфигурации. +// Ключами и значениям являются ссылки объектов метаданных конфигурации и расширений. +// +Функция ОперативноеОбновлениеОбщихДанных(ФильтрПоТипуИдентификаторов) + Результат = Новый Структура; + Результат.Вставить("ЕстьИзменения", Ложь); + + Если ФильтрПоТипуИдентификаторов = Тип("СправочникСсылка.ИдентификаторыОбъектовРасширений") + И Не ЗначениеЗаполнено(ПараметрыСеанса.ВерсияРасширений) Тогда + Возврат Результат; + КонецЕсли; + + ПодключенныеОбъекты = Новый Соответствие; + + ПодсистемаПодключаемыеОтчетыИОбработки = Метаданные.Подсистемы.Найти("ПодключаемыеОтчетыИОбработки"); + Если ПодсистемаПодключаемыеОтчетыИОбработки = Неопределено Тогда + ВызватьИсключение НСтр("ru = 'Не внедрена обязательная подсистема ""Подключаемые отчеты и обработки"". + |Подробнее см. документацию БСП.'"); + КонецЕсли; + + Состав = ПодсистемаПодключаемыеОтчетыИОбработки.Состав; + Для Каждого ОбъектМетаданныхПоставщика Из Состав Цикл + СсылкаПодключенногоОМ = СтандартныеПодсистемыСервер.ИдентификаторОбъектаМетаданных(ОбъектМетаданныхПоставщика); + Если ТипЗнч(СсылкаПодключенногоОМ) <> ФильтрПоТипуИдентификаторов Тогда + Продолжить; + КонецЕсли; + ПолноеИмя = ОбъектМетаданныхПоставщика.ПолноеИмя(); + Настройки = НастройкиПоставщика(ПолноеИмя); + Если Настройки = Неопределено Тогда + Продолжить; + КонецЕсли; + Для Каждого ОбъектМетаданных Из Настройки.Размещение Цикл + СсылкаОМ = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ОбъектМетаданных); + МассивПриемник = ПодключенныеОбъекты[СсылкаОМ]; + Если МассивПриемник = Неопределено Тогда + МассивПриемник = Новый Массив; + ПодключенныеОбъекты.Вставить(СсылкаОМ, МассивПриемник); + КонецЕсли; + Если МассивПриемник.Найти(ПолноеИмя) = Неопределено Тогда + МассивПриемник.Добавить(ПолноеИмя); + КонецЕсли; + КонецЦикла; + КонецЦикла; + + Если ФильтрПоТипуИдентификаторов = Тип("СправочникСсылка.ИдентификаторыОбъектовМетаданных") Тогда + СтароеХранилищеЗначения = Константы.ПараметрыПодключаемыхКоманд.Получить(); + ИначеЕсли ФильтрПоТипуИдентификаторов = Тип("СправочникСсылка.ИдентификаторыОбъектовРасширений") Тогда + СтароеХранилищеЗначения = СтандартныеПодсистемыСервер.ПараметрРаботыРасширения(ПолноеИмяПодсистемы()); + Иначе + Возврат Результат; + КонецЕсли; + + НовоеХранилищеЗначения = Новый ХранилищеЗначения(Новый Структура("ПодключенныеОбъекты", ПодключенныеОбъекты)); + Если Не ОбщегоНазначения.ДанныеСовпадают(СтароеХранилищеЗначения, НовоеХранилищеЗначения) Тогда + Результат.ЕстьИзменения = Истина; + Если ФильтрПоТипуИдентификаторов = Тип("СправочникСсылка.ИдентификаторыОбъектовМетаданных") Тогда + КонстантаОбъект = Константы.ПараметрыПодключаемыхКоманд.СоздатьМенеджерЗначения(); + КонстантаОбъект.Значение = НовоеХранилищеЗначения; + ОбновлениеИнформационнойБазы.ЗаписатьДанные(КонстантаОбъект, Ложь, Ложь); + ИначеЕсли ФильтрПоТипуИдентификаторов = Тип("СправочникСсылка.ИдентификаторыОбъектовРасширений") Тогда + СтандартныеПодсистемыСервер.УстановитьПараметрРаботыРасширения(ПолноеИмяПодсистемы(), НовоеХранилищеЗначения); + КонецЕсли; + КонецЕсли; + + Результат.Вставить("ПодключенныеОбъекты", ПодключенныеОбъекты); + Возврат Результат; +КонецФункции + +//////////////////////////////////////////////////////////////////////////////// +// Вызовы из модулей ПовтИсп. + +Функция НастройкиРазмещения(ИмяФормы, ИспользуемыеПодменю) Экспорт + ИспользуемыеПодменю = СтрРазделить(ИспользуемыеПодменю, ","); + + Команды = ТаблицаКоманд(); + + НастройкиФормы = Новый Структура; + НастройкиФормы.Вставить("ИмяФормы", ИмяФормы); + НастройкиФормы.Вставить("ИспользуемыеПодменю", ИспользуемыеПодменю); + + // Определение параметров объекта и заполнение списка команд. + НастройкиОбъекта = НастройкиОбъекта(); + ОбъектМетаданных = Метаданные.НайтиПоПолномуИмени(ИмяФормы); + Если ОбъектМетаданных <> Неопределено Тогда + ОбъектМетаданных = ОбъектМетаданных.Родитель(); + Если ОбъектМетаданных <> Неопределено Тогда + НастройкиОбъекта.Метаданные = ОбъектМетаданных; + НастройкиОбъекта.ПолноеИмя = ОбъектМетаданных.ПолноеИмя(); + НастройкиОбъекта.Менеджер = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(НастройкиОбъекта.ПолноеИмя); + НастройкиОбъекта.Ссылка = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(НастройкиОбъекта.ПолноеИмя); + НастройкиОбъекта.ЭтоЖурналДокументов = ОбщегоНазначения.ЭтоЖурналДокументов(ОбъектМетаданных); + КонецЕсли; + КонецЕсли; + + НастройкиРасширений = НастройкиРасширенийПодключенныхКОбъектуМетаданных(НастройкиОбъекта.Ссылка); + + Попытка + ИнтеграцияСтандартныхПодсистем.ПриОпределенииКомандПодключенныхКОбъекту(НастройкиФормы, НастройкиОбъекта, НастройкиРасширений, Команды); + Исключение + Если ОбщегоНазначенияКлиентСервер.РежимОтладки() Тогда + ВызватьИсключение; + Иначе + ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'При определении команд, подключенных к форме ""%1"", возникла ошибка: + |%2'"), + ИмяФормы, + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации( + НСтр("ru = 'Подключаемые команды'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, + НастройкиОбъекта.Метаданные, + ИмяФормы, + ТекстОшибки); + Команды.Очистить(); + КонецЕсли; + КонецПопытки; + + // Фильтр команд по именам форм и функциональным опциям. + ЧастиИмени = СтрРазделить(ИмяФормы, "."); + КраткоеИмяФормы = ЧастиИмени[ЧастиИмени.ВГраница()]; + Количество = Команды.Количество(); + Для Номер = 1 По Количество Цикл + Команда = Команды[Количество - Номер]; + // Фильтр по именам форм. + ВидимостьВФормах = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ВРег(Команда.ВидимостьВФормах), ",", Истина, Истина); + Если ВидимостьВФормах.Количество() > 0 + И ВидимостьВФормах.Найти(ВРег(КраткоеИмяФормы)) = Неопределено + И ВидимостьВФормах.Найти(ВРег(ИмяФормы)) = Неопределено Тогда + Команды.Удалить(Команда); + Продолжить; + КонецЕсли; + // Фильтр по функциональным опциям. + ФункциональныеОпции = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(Команда.ФункциональныеОпции, ",", Истина, Истина); + ВидимостьКоманды = ФункциональныеОпции.Количество() = 0; + Для Каждого ИмяОпции Из ФункциональныеОпции Цикл + Если ПолучитьФункциональнуюОпцию(СокрЛП(ИмяОпции)) Тогда + ВидимостьКоманды = Истина; + Прервать; + КонецЕсли; + КонецЦикла; + Если Не ВидимостьКоманды Тогда + Команды.Удалить(Команда); + КонецЕсли; + КонецЦикла; + + НастройкиОбъекта.Вставить("Команды", Команды); + Возврат НастройкиОбъекта; +КонецФункции + +//////////////////////////////////////////////////////////////////////////////// +// Вызовы из модулей ВызовСервера. + +// Возвращает описание команды по имени элемента формы. +Функция ОписаниеКоманды(ИмяКомандыВФорме, АдресНастроек) Экспорт + Команды = ПолучитьИзВременногоХранилища(АдресНастроек); + Команда = Команды.Найти(ИмяКомандыВФорме, "ИмяВФорме"); + ОписаниеКоманды = ОбщегоНазначения.СтрокаТаблицыЗначенийВСтруктуру(Команда); + + Если ЗначениеЗаполнено(ОписаниеКоманды.ИмяФормы) Тогда + ОписаниеКоманды.Вставить("Серверная", Ложь); + МассивПодстрок = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ОписаниеКоманды.ИмяФормы, ".", Истина, Истина); + КоличествоПодстрок = МассивПодстрок.Количество(); + Если КоличествоПодстрок = 1 + Или (КоличествоПодстрок = 2 И ВРег(МассивПодстрок[0]) <> "ОБЩАЯФОРМА") Тогда + ОписаниеКоманды.ИмяФормы = ОписаниеКоманды.Менеджер + "." + ОписаниеКоманды.ИмяФормы; + КонецЕсли; + Иначе + ОписаниеКоманды.Вставить("Серверная", Истина); + Если ЗначениеЗаполнено(ОписаниеКоманды.Обработчик) Тогда + Если Не ПустаяСтрока(ОписаниеКоманды.Менеджер) И СтрНайти(ОписаниеКоманды.Обработчик, ".") = 0 Тогда + ОписаниеКоманды.Обработчик = ОписаниеКоманды.Менеджер + "." + ОписаниеКоманды.Обработчик; + КонецЕсли; + Если СтрНачинаетсяС(ВРег(ОписаниеКоманды.Обработчик), ВРег("ОбщийМодуль.")) Тогда + ПозицияТочки = СтрНайти(ОписаниеКоманды.Обработчик, "."); + ОписаниеКоманды.Обработчик = Сред(ОписаниеКоманды.Обработчик, ПозицияТочки + 1); + КонецЕсли; + МассивПодстрок = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ОписаниеКоманды.Обработчик, ".", Истина, Истина); + КоличествоПодстрок = МассивПодстрок.Количество(); + Если КоличествоПодстрок = 2 Тогда + ИмяМодуля = МассивПодстрок[0]; + ОбъектМетаданныхОбщийМодуль = Метаданные.ОбщиеМодули.Найти(ИмяМодуля); + Если ОбъектМетаданныхОбщийМодуль = Неопределено Тогда + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Общий модуль ""%1"" не найден.'"), + ИмяМодуля); + КонецЕсли; + Если ОбъектМетаданныхОбщийМодуль.КлиентУправляемоеПриложение Тогда + ОписаниеКоманды.Серверная = Ложь; + КонецЕсли; + Иначе + Вид = ВРег(МассивПодстрок[0]); + ВидВоМножественномЧисле = ВидОбъектаМетаданныхВоМножественномЧисле(Вид); + Если ВидВоМножественномЧисле <> Неопределено Тогда + МассивПодстрок.Установить(0, ВидВоМножественномЧисле); + ОписаниеКоманды.Обработчик = СтрСоединить(МассивПодстрок, "."); + КонецЕсли; + КонецЕсли; + КонецЕсли; + КонецЕсли; + ОписаниеКоманды.Удалить("Менеджер"); + + Возврат Новый ФиксированнаяСтруктура(ОписаниеКоманды); +КонецФункции + +//////////////////////////////////////////////////////////////////////////////// +// Работа с объектами метаданных. + +// Возвращает вид объекта во множественном числе. +Функция ВидОбъектаМетаданныхВоМножественномЧисле(Знач Вид) + Вид = ВРег(СокрЛП(Вид)); + Если Вид = "ПЛАНОБМЕНА" Тогда + Возврат "ПланыОбмена"; + ИначеЕсли Вид = "СПРАВОЧНИК" Тогда + Возврат "Справочники"; + ИначеЕсли Вид = "ДОКУМЕНТ" Тогда + Возврат "Документы"; + ИначеЕсли Вид = "ЖУРНАЛДОКУМЕНТОВ" Тогда + Возврат "ЖурналыДокументов"; + ИначеЕсли Вид = "ПЕРЕЧИСЛЕНИЕ" Тогда + Возврат "Перечисления"; + ИначеЕсли Вид = "ОТЧЕТ" Тогда + Возврат "Отчеты"; + ИначеЕсли Вид = "ОБРАБОТКА" Тогда + Возврат "Обработки"; + ИначеЕсли Вид = "ПЛАНВИДОВХАРАКТЕРИСТИК" Тогда + Возврат "ПланыВидовХарактеристик"; + ИначеЕсли Вид = "ПЛАНСЧЕТОВ" Тогда + Возврат "ПланыСчетов"; + ИначеЕсли Вид = "ПЛАНВИДОВРАСЧЕТА" Тогда + Возврат "ПланыВидовРасчета"; + ИначеЕсли Вид = "РЕГИСТРСВЕДЕНИЙ" Тогда + Возврат "РегистрыСведений"; + ИначеЕсли Вид = "РЕГИСТРНАКОПЛЕНИЯ" Тогда + Возврат "РегистрыНакопления"; + ИначеЕсли Вид = "РЕГИСТРБУХГАЛТЕРИИ" Тогда + Возврат "РегистрыБухгалтерии"; + ИначеЕсли Вид = "РЕГИСТРРАСЧЕТА" Тогда + Возврат "РегистрыРасчета"; + ИначеЕсли Вид = "ПЕРЕРАСЧЕТ" Тогда + Возврат "Перерасчеты"; + ИначеЕсли Вид = "БИЗНЕСПРОЦЕСС" Тогда + Возврат "БизнесПроцессы"; + ИначеЕсли Вид = "ЗАДАЧА" Тогда + Возврат "Задачи"; + ИначеЕсли Вид = "КОНСТАНТА" Тогда + Возврат "Константы"; + ИначеЕсли Вид = "ПОСЛЕДОВАТЕЛЬНОСТЬ" Тогда + Возврат "Последовательности"; + Иначе + Возврат Неопределено; + КонецЕсли; +КонецФункции + +//////////////////////////////////////////////////////////////////////////////// +// Шаблоны. + +// Шаблон первого параметра процедуры "ПриОпределенииНастроек" объектов, +// включенных в состав подсистемы ПодключаемыеОтчетыИОбработки. +// +// Возвращаемое значение: +// Структура - Настройки интеграции объекта (отчета или обработки), +// включенного в состав подсистемы ПодключаемыеОтчетыИОбработки. +// +// * Размещение - Массив из ОбъектМетаданных - Массив объектов, к которым подключен этот объект. +// +// * ДобавитьКомандыПечати - Если Истина то в модуле менеджера следует определить процедуру по шаблону: +// // Заполняет список команд печати. +// // +// // Параметры: +// // КомандыПечати - ТаблицаЗначений - Подробнее см. в УправлениеПечатью.СоздатьКоллекциюКомандПечати(). +// // +// Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт +// // Код по добавлению команд печати. +// КонецПроцедуры +// +// * ДобавитьКомандыЗаполнения - Если Истина то в модуле менеджера следует определить процедуру по шаблону: +// // Определяет список команд заполнения. +// // +// // Параметры: +// // КомандыЗаполнения - ТаблицаЗначений - Таблица с командами заполнения. Для изменения. +// // См. описание 1 параметра процедуры ЗаполнениеОбъектовПереопределяемый.ПередДобавлениемКомандЗаполнения(). +// // Параметры - Структура - Вспомогательные параметры. Для чтения. +// // См. описание 2 параметра процедуры ЗаполнениеОбъектовПереопределяемый.ПередДобавлениемКомандЗаполнения(). +// // +// Процедура ДобавитьКомандыЗаполнения(КомандыЗаполнения, Параметры) Экспорт +// // Код по добавлению команд заполнения. +// КонецПроцедуры +// +Функция НастройкиПодключаемыхОтчетовИОбработок() + Настройки = Новый Структура; + Настройки.Вставить("Размещение", Новый ОписаниеТипов("Массив")); + ИнтеграцияСтандартныхПодсистем.ПриОпределенииСтруктурыНастроекПодключаемыхОбъектов(Настройки); + Возврат Настройки; +КонецФункции + +// Шаблон таблицы подключаемых команд. +// +// Возвращаемое значение: +// ТаблицаЗначений - Таблица с подключаемыми командами. +// Общие настройки: +// * Идентификатор - Строка - Идентификатор команды. +// Настройки внешнего вида: +// * Представление - Строка - Представление команды в форме. +// * Группа - Строка - Имя группы в командной панели, в которой будет выводиться эта команда. +// * Порядок - Число - Порядок размещения команды в подменю. Используется для настройки под конкретное рабочее место. +// * Картинка - Картинка - Картинка команды. Необязательный. +// * СочетаниеКлавиш - СочетаниеКлавиш - Сочетание клавиш для быстрого вызова команды. Необязательный. +// Настройки видимости: +// * ТипПараметра - ОписаниеТипов - Типы объектов, для которых предназначена эта команда. +// * ВидимостьВФормах - Строка - Имена форм через запятую, в которых должна отображаться команда. +// Используется когда состав команд отличается для различных форм. +// * ФункциональныеОпции - Строка - Имена функциональных опций через запятую, определяющих видимость команды. +// Настройки процесса выполнения: +// * ИмяСписка - Строка - Имя таблицы формы, связанной с динамическим списком, для которого выводится команда. +// Используется когда в форме несколько списков и команда предназначена для второстепенного списка. +// * МножественныйВыбор - Булево, Неопределено - Если Истина, то команда поддерживает множественный выбор. +// В этом случае в параметре выполнения будет передан список ссылок. +// Необязательный. Значение по умолчанию: Истина. +// * РежимЗаписи - Строка - Действия, связанные с записью объекта, которые выполняются перед обработчиком команды. +// ** "НеЗаписывать" - Объект не записывается, а в параметрах обработчика вместо ссылок передается вся форма. +// В этом режиме рекомендуется работать напрямую с формой, +// которая передается в структуре 2 параметра обработчика команды. +// ** "ЗаписыватьТолькоНовые" - Записывать только новые объекты. +// ** "Записывать" - Записывать новые и модифицированные объекты. +// ** "Проводить" - Проводить документы. +// Перед записью и проведением у пользователя запрашивается подтверждение. +// Необязательный. Значение по умолчанию: "ЗаписыватьТолькоНовые". +// * ТребуетсяРаботаСФайлами - Булево - Если Истина, то в веб-клиенте предлагается +// установить расширение работы с файлами. +// Необязательный. Значение по умолчанию: Ложь. +// Настройки обработчика: +// * Менеджер - Строка - Объект, отвечающий за выполнение команды. +// * ИмяФормы - Строка - Имя формы, которую требуется получить для выполнения команды. +// Если Обработчик не указан, то у формы вызывается метод "Открыть". +// * ПараметрыФормы - Неопределено, ФиксированнаяСтруктура - Необязательный. Параметры формы, указанной в ИмяФормы. +// * Обработчик - Строка - Описание процедуры, обрабатывающей основное действие команды. +// Формат "<ИмяОбщегоМодуля>.<ИмяПроцедуры>" используется когда процедура размещена в общем модуле. +// Формат "<ИмяПроцедуры>" используется в следующих случаях: +// - Если ИмяФормы заполнено то в модуле указанной формы ожидается клиентская процедура. +// - Если ИмяФормы не заполнено то в модуле менеджера этого объекта ожидается серверная процедура. +// * ДополнительныеПараметры - Неопределено, ФиксированнаяСтруктура - Необязательный. Параметры обработчика, указанного в Обработчик. +// +Функция ТаблицаКоманд() + Таблица = Новый ТаблицаЗначений; + Таблица.Колонки.Добавить("Вид", Новый ОписаниеТипов("Строка")); + Таблица.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка")); + // Настройки внешнего вида: + Таблица.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); + Таблица.Колонки.Добавить("Группа", Новый ОписаниеТипов("Строка")); + Таблица.Колонки.Добавить("Подменю", Новый ОписаниеТипов("Строка")); + Таблица.Колонки.Добавить("Важность", Новый ОписаниеТипов("Строка")); + Таблица.Колонки.Добавить("Порядок", Новый ОписаниеТипов("Число")); + Таблица.Колонки.Добавить("Картинка"); // Картинка. + Таблица.Колонки.Добавить("СочетаниеКлавиш"); // СочетаниеКлавиш. + // Настройки видимости и доступность: + Таблица.Колонки.Добавить("ТипПараметра"); // ОписаниеТипов. + Таблица.Колонки.Добавить("ВидимостьВФормах", Новый ОписаниеТипов("Строка")); + Таблица.Колонки.Добавить("ФункциональныеОпции", Новый ОписаниеТипов("Строка")); + Таблица.Колонки.Добавить("УсловияВидимости", Новый ОписаниеТипов("Массив")); + Таблица.Колонки.Добавить("ИзменяетВыбранныеОбъекты"); // Булево или Неопределено. + // Настройки процесса выполнения: + Таблица.Колонки.Добавить("ИмяСписка", Новый ОписаниеТипов("Строка")); + Таблица.Колонки.Добавить("МножественныйВыбор"); // Булево или Неопределено. + Таблица.Колонки.Добавить("РежимЗаписи", Новый ОписаниеТипов("Строка")); + Таблица.Колонки.Добавить("ТребуетсяРаботаСФайлами", Новый ОписаниеТипов("Булево")); + // Настройки обработчика: + Таблица.Колонки.Добавить("Менеджер", Новый ОписаниеТипов("Строка")); + Таблица.Колонки.Добавить("Обработчик", Новый ОписаниеТипов("Строка")); + Таблица.Колонки.Добавить("ДополнительныеПараметры"); // Структура или Неопределено. + Таблица.Колонки.Добавить("ИмяФормы", Новый ОписаниеТипов("Строка")); + Таблица.Колонки.Добавить("ПараметрыФормы"); // Структура или Неопределено. + Таблица.Колонки.Добавить("ИмяПараметраФормы", Новый ОписаниеТипов("Строка")); + // Служебные: + Таблица.Колонки.Добавить("ПорядокВажности", Новый ОписаниеТипов("Число")); + Таблица.Колонки.Добавить("ИмяВФорме", Новый ОписаниеТипов("Строка")); + Таблица.Колонки.Добавить("ЕстьУсловияВидимости", Новый ОписаниеТипов("Булево")); + Возврат Таблица; +КонецФункции + +// Шаблон сведений об объекте метаданных, к которому принадлежит форма. +// +// Возвращаемое значение: +// Структура - Вспомогательные параметры. +// * Метаданные - ОбъектМетаданных - Метаданные объекта, к которому принадлежит форма. +// * ПолноеИмя - Строка - Полное имя объекта. Например: "Документ.ИмяДокумента". +// * Менеджер - Произвольный - Модуль менеджера объекта. +// * Ссылка - СправочникСсылка.ИдентификаторыОбъектовМетаданных - Ссылка объекта. +// * ЭтоЖурналДокументов - Булево - Истина если объект является журналом документов. +// +Функция НастройкиОбъекта() + Структура = Новый Структура("Метаданные, ПолноеИмя, Менеджер, Ссылка"); + Структура.Вставить("ЭтоЖурналДокументов", Ложь); + Возврат Структура; +КонецФункции + +// Шаблон второго параметра обработчика команды. +// +// Возвращаемое значение: +// Структура - Вспомогательные параметры. +// * ОписаниеКоманды - Структура - Описание команды. +// Структура аналогична таблице ПодключаемыеКоманды.ТаблицаКоманд(). +// ** Идентификатор - Строка - Идентификатор команды. +// ** Представление - Строка - Представление команды в форме. +// ** ДополнительныеПараметры - Неопределено, ФиксированнаяСтруктура - Дополнительные параметры команды. +// * Форма - УправляемаяФорма - Форма, из которой вызвана команда. +// * ЭтоФормаОбъекта - Булево - Истина, если команда вызвана из формы объекта. +// * Источник - ТаблицаФормы, ДанныеФормыСтруктура - Объект или список формы с полем "Ссылка". +// +Функция ПараметрыВыполненияКоманды() + Структура = Новый Структура("ОписаниеКоманды, Форма, Источник"); + Структура.Вставить("ЭтоФормаОбъекта", Ложь); + Возврат Структура; +КонецФункции + +// Шаблон сведений об объектах метаданных - источников команд. +// +// Возвращаемое значение: +// См. описание 2 параметра процедуры ПодключаемыеКомандыПереопределяемый.ПриОпределенииКомандПодключенныхКОбъекту(). +// +Функция ДеревоИсточниковКоманд() + Результат = Новый ДеревоЗначений; + Результат.Колонки.Добавить("Метаданные"); + Результат.Колонки.Добавить("ПолноеИмя", Новый ОписаниеТипов("Строка")); + Результат.Колонки.Добавить("Менеджер"); + Результат.Колонки.Добавить("СсылкаМетаданных"); + Результат.Колонки.Добавить("ТипСсылкиДанных"); + Результат.Колонки.Добавить("Вид", Новый ОписаниеТипов("Строка")); + Результат.Колонки.Добавить("ЭтоЖурналДокументов", Новый ОписаниеТипов("Булево")); + Возврат Результат; +КонецФункции + +// Шаблон сведений об отчетах и обработках, подключенных к источникам команд. +// +// Возвращаемое значение: +// ТаблицаЗначений - Вспомогательные параметры. +// * ПолноеИмя - Строка - Полное имя объекта. Например: "Документ.ИмяДокумента". +// * Менеджер - Произвольный - Модуль менеджера объекта. +// * Размещение - Массив - Список объектов, к которым подключен отчет или обработка. +// * ТипСсылкиДанных - Тип, ОписаниеТипов - Тип объектов, к которым подключен отчет или обработка.. +// +Функция ТаблицаПодключаемыхОбъектов(НастройкиПрограммногоИнтерфейса = Неопределено) + Если НастройкиПрограммногоИнтерфейса = Неопределено Тогда + НастройкиПрограммногоИнтерфейса = НастройкиПрограммногоИнтерфейсаПодключаемыхОбъектов(); + КонецЕсли; + Таблица = Новый ТаблицаЗначений; + Таблица.Колонки.Добавить("ПолноеИмя", Новый ОписаниеТипов("Строка")); + Таблица.Колонки.Добавить("Менеджер"); + Таблица.Колонки.Добавить("Метаданные"); + Таблица.Колонки.Добавить("ТипСсылкиДанных"); + + Для Каждого Настройка Из НастройкиПрограммногоИнтерфейса Цикл + Попытка + Таблица.Колонки.Добавить(Настройка.Ключ, Настройка.ОписаниеТипов); + Исключение + ТекстОшибки = НСтр("ru = 'Не удалось зарегистрировать настройку программного интерфейса подключаемых объектов. + |Ключ: ""%1"", описание типов: ""%2"", описание ошибки: ""%3"".'"); + ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + ТекстОшибки, + Настройка.Ключ, + Строка(Настройка.ОписаниеТипов), + КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); + ВызватьИсключение ТекстОшибки; + КонецПопытки; + КонецЦикла; + + Таблица.Индексы.Добавить("ПолноеИмя"); + + Возврат Таблица; +КонецФункции + +// Шаблон сведений об отчетах и обработках, подключенных к источникам команд. +// +// Возвращаемое значение: +// ТаблицаЗначений - Описание параметра Настройки процедуры ПриОпределенииНастроек объектов, +// включенных в состав подсистемы ПодключаемыеОтчетыИОбработки. +// * Ключ - Строка - Имя настройки. +// * ОписаниеТипов - ОписаниеТипов - Тип настройки. +// * ВидыПодключаемыхОбъектов - Строка - Вид объекта метаданных в верхнем регистре. +// Например: "ОТЧЕТ" или "ОБРАБОТКА". +// +Функция НастройкиПрограммногоИнтерфейсаПодключаемыхОбъектов() + Таблица = Новый ТаблицаЗначений; + Таблица.Колонки.Добавить("Ключ", Новый ОписаниеТипов("Строка")); + Таблица.Колонки.Добавить("ОписаниеТипов", Новый ОписаниеТипов("ОписаниеТипов")); + Таблица.Колонки.Добавить("ВидыПодключаемыхОбъектов", Новый ОписаниеТипов("Строка")); + + Настройка = Таблица.Добавить(); + Настройка.Ключ = "Размещение"; + Настройка.ОписаниеТипов = Новый ОписаниеТипов("Массив"); + Настройка.ВидыПодключаемыхОбъектов = "Отчет, Обработка"; + + ПодключаемыеКомандыПереопределяемый.ПриОпределенииСоставаНастроекПодключаемыхОбъектов(Таблица); + + Возврат Таблица; +КонецФункции + +//////////////////////////////////////////////////////////////////////////////// +// Прочее. + +// Возвращает полное имя подсистемы. +Функция ПолноеИмяПодсистемы() Экспорт + Возврат "СтандартныеПодсистемы.ПодключаемыеКоманды"; +КонецФункции + +// Возвращает левую часть строки до разделителя. Правая часть строки возвращается в параметре Остаток. +Функция СтрЛев(Знач Строка, Знач Разделитель, Остаток = Неопределено) + Позиция = Найти(Строка, Разделитель); + Если Позиция = 0 Тогда + СтрокаДоРазделителя = Строка; + Остаток = ""; + Иначе + СтрокаДоРазделителя = Лев(Строка, Позиция - 1); + Остаток = Сред(Строка, Позиция + СтрДлина(Разделитель)); + КонецЕсли; + Возврат СтрокаДоРазделителя; +КонецФункции + +Функция ОбъединитьТипы(Тип1, Тип2) + Тип1ЭтоОписаниеТипов = ТипЗнч(Тип1) = Тип("ОписаниеТипов"); + Тип2ЭтоОписаниеТипов = ТипЗнч(Тип2) = Тип("ОписаниеТипов"); + Если Тип1ЭтоОписаниеТипов И Тип1.Типы().Количество() > 0 Тогда + ИсходноеОписаниеТипов = Тип1; + ДобавляемыеТипы = ?(Тип2ЭтоОписаниеТипов, Тип2.Типы(), ЗначениеВМассив(Тип2)); + ИначеЕсли Тип2ЭтоОписаниеТипов И Тип2.Типы().Количество() > 0 Тогда + ИсходноеОписаниеТипов = Тип2; + ДобавляемыеТипы = ЗначениеВМассив(Тип1); + ИначеЕсли ТипЗнч(Тип1) <> Тип("Тип") Тогда + Возврат Тип2; + ИначеЕсли ТипЗнч(Тип2) <> Тип("Тип") Тогда + Возврат Тип1; + Иначе + Типы = Новый Массив; + Типы.Добавить(Тип1); + Типы.Добавить(Тип2); + Возврат Новый ОписаниеТипов(Типы); + КонецЕсли; + Если ДобавляемыеТипы.Количество() = 0 Тогда + Возврат ИсходноеОписаниеТипов; + Иначе + Возврат Новый ОписаниеТипов(ИсходноеОписаниеТипов, ДобавляемыеТипы); + КонецЕсли; +КонецФункции + +Функция ЗначениеВМассив(Значение) + Результат = Новый Массив; + Результат.Добавить(Значение); + Возврат Результат; +КонецФункции + +Функция ЭтоВнешняяФорма(ПолноеИмяОбъектаМетаданных) + ВидОбъектаМетаданныхНРег = НРег(СтрЛев(ПолноеИмяОбъектаМетаданных, ".")); + Возврат ВидОбъектаМетаданныхНРег = НРег("ВнешняяОбработка") + Или ВидОбъектаМетаданныхНРег = НРег("ВнешнийОтчет"); +КонецФункции + +// Вычисляет контрольную сумму для произвольных данных по указанному алгоритму. +// +// Параметры: +// Данные - Произвольный - любое сериализуемое значение. +// Алгоритм - ХешФункция - алгоритм расчета контрольной суммы. По умолчанию, MD5. +// +// Возвращаемое значение: +// Строка - контрольная сумма строкой без пробелов, 32 байта. +Функция КонтрольнаяСуммаСтрокой(Знач Данные, Знач Алгоритм = Неопределено) + Если Алгоритм = Неопределено Тогда + Алгоритм = ХешФункция.MD5; + КонецЕсли; + + ХешированиеДанных = Новый ХешированиеДанных(Алгоритм); + Если ТипЗнч(Данные) <> Тип("Строка") И ТипЗнч(Данные) <> Тип("ДвоичныеДанные") Тогда + Данные = ОбщегоНазначения.ЗначениеВСтрокуXML(Данные); + КонецЕсли; + ХешированиеДанных.Добавить(Данные); + Результат = СтрЗаменить(ХешированиеДанных.ХешСумма, " ", ""); + + Возврат Результат; +КонецФункции + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/ПодключаемыеКоманды/ПодключаемыеКоманды.mdo b/SSL/src/CommonModules/ПодключаемыеКоманды/ПодключаемыеКоманды.mdo new file mode 100644 index 000000000..9b6b6e255 --- /dev/null +++ b/SSL/src/CommonModules/ПодключаемыеКоманды/ПодключаемыеКоманды.mdo @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="cf7bc2ca-fb57-4b1a-98cf-f2caa7e611f5"> + <name>ПодключаемыеКоманды</name> + <synonym> + <key>ru</key> + <value>Подключаемые команды</value> + </synonym> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ПодключаемыеКомандыВызовСервера/Module.bsl b/SSL/src/CommonModules/ПодключаемыеКомандыВызовСервера/Module.bsl new file mode 100644 index 000000000..fcec6fc7f --- /dev/null +++ b/SSL/src/CommonModules/ПодключаемыеКомандыВызовСервера/Module.bsl @@ -0,0 +1,90 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Базовая функциональность" (вызов сервера). +// Обслуживает подключаемые команды. +// Выполняется на сервере, может вызываться с клиента. +//////////////////////////////////////////////////////////////////////////////// + +#Область СлужебныеПроцедурыИФункции + +// Возвращает описание команды по имени элемента формы. +Функция ОписаниеКоманды(ИмяКомандыВФорме, АдресНастроек) Экспорт + Возврат ПодключаемыеКоманды.ОписаниеКоманды(ИмяКомандыВФорме, АдресНастроек); +КонецФункции + +// Проводит анализ массива документов на предмет проведенности и наличия прав на их проведение. +Функция ИнформацияОДокументах(МассивСсылок) Экспорт + Результат = Новый Структура; + Результат.Вставить("ПроведенныеИСправочники", Новый Массив); + Результат.Вставить("НеПроведенные", Новый Массив); + Результат.Вставить("КоличествоНеПроведенных", 0); + Результат.Вставить("ЕстьПравоПроведенияХотяБыОдногоНепроведенного", Ложь); + + Запрос = Новый Запрос; + + ШаблонЗапроса = + "ВЫБРАТЬ + | Таблица.Ссылка КАК Ссылка + |ИЗ + | &ПолноеИмяДокумента КАК Таблица + |ГДЕ + | Таблица.Ссылка В(&МассивДокументов) + | И НЕ Таблица.Проведен"; + + МассивЗапросов = Новый Массив; + ИнформацияОТипах = Новый Соответствие; + КоличествоПараметров = 0; + + Для Каждого Ссылка Из МассивСсылок Цикл + Тип = ТипЗнч(Ссылка); + ИнформацияОТипе = ИнформацияОТипах[Тип]; + Если ИнформацияОТипе = Неопределено Тогда + ИнформацияОТипе = Новый Структура; + ИнформацияОТипе.Вставить("Метаданные", Ссылка.Метаданные()); + ИнформацияОТипе.Вставить("ПолноеИмя", ИнформацияОТипе.Метаданные.ПолноеИмя()); + ИнформацияОТипе.Вставить("ЭтоДокумент", ВРег(СтрРазделить(ИнформацияОТипе.ПолноеИмя, ".")[0]) = "ДОКУМЕНТ" + И ИнформацияОТипе.Метаданные.Проведение = Метаданные.СвойстваОбъектов.Проведение.Разрешить); + ИнформацияОТипе.Вставить("ПравоПроведения", Неопределено); + ИнформацияОТипе.Вставить("МассивСсылок", Новый Массив); + Если ИнформацияОТипе.ЭтоДокумент Тогда + ИнформацияОТипе.ПравоПроведения = ПравоДоступа("Проведение", ИнформацияОТипе.Метаданные); + КоличествоПараметров = КоличествоПараметров + 1; + ИмяПараметра = "Массив" + Формат(КоличествоПараметров, "ЧН=; ЧГ="); + ТекстЗапроса = ШаблонЗапроса; + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ПолноеИмяДокумента", ИнформацияОТипе.ПолноеИмя); + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "МассивДокументов", ИмяПараметра); + МассивЗапросов.Добавить(ТекстЗапроса); + Запрос.УстановитьПараметр(ИмяПараметра, ИнформацияОТипе.МассивСсылок); + КонецЕсли; + ИнформацияОТипах.Вставить(Тип, ИнформацияОТипе); + КонецЕсли; + Если ИнформацияОТипе.ЭтоДокумент Тогда + ИнформацияОТипе.МассивСсылок.Добавить(Ссылка); + Иначе + Результат.ПроведенныеИСправочники.Добавить(Ссылка); + КонецЕсли; + КонецЦикла; + + Запрос.Текст = СтрСоединить(МассивЗапросов, Символы.ПС + Символы.ПС + "ОБЪЕДИНИТЬ ВСЕ" + Символы.ПС + Символы.ПС); + Результат.НеПроведенные = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка"); + + Для Каждого КлючИЗначение Из ИнформацияОТипах Цикл + ИнформацияОТипе = КлючИЗначение.Значение; + Если Не ИнформацияОТипе.ЭтоДокумент Тогда + Продолжить; + КонецЕсли; + Для Каждого Ссылка Из ИнформацияОТипе.МассивСсылок Цикл + Если Результат.НеПроведенные.Найти(Ссылка) = Неопределено Тогда + Результат.ПроведенныеИСправочники.Добавить(Ссылка); + Иначе + Если ИнформацияОТипе.ПравоПроведения Тогда + Результат.ЕстьПравоПроведенияХотяБыОдногоНепроведенного = Истина; + КонецЕсли; + КонецЕсли; + КонецЦикла; + КонецЦикла; + Результат.КоличествоНеПроведенных = Результат.НеПроведенные.Количество(); + + Возврат Результат; +КонецФункции + +#КонецОбласти diff --git a/SSL/src/CommonModules/ПодключаемыеКомандыВызовСервера/ПодключаемыеКомандыВызовСервера.mdo b/SSL/src/CommonModules/ПодключаемыеКомандыВызовСервера/ПодключаемыеКомандыВызовСервера.mdo new file mode 100644 index 000000000..52c5ee825 --- /dev/null +++ b/SSL/src/CommonModules/ПодключаемыеКомандыВызовСервера/ПодключаемыеКомандыВызовСервера.mdo @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="486083d8-33b1-453f-9f05-5ff867e2f4ba"> + <name>ПодключаемыеКомандыВызовСервера</name> + <synonym> + <key>ru</key> + <value>Подключаемые команды вызов сервера</value> + </synonym> + <server>true</server> + <serverCall>true</serverCall> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ПодключаемыеКомандыКлиент/Module.bsl b/SSL/src/CommonModules/ПодключаемыеКомандыКлиент/Module.bsl new file mode 100644 index 000000000..743cee20d --- /dev/null +++ b/SSL/src/CommonModules/ПодключаемыеКомандыКлиент/Module.bsl @@ -0,0 +1,355 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Базовая функциональность" (клиент). +// Обслуживает подключаемые команды. +// Выполняется на клиенте. +//////////////////////////////////////////////////////////////////////////////// + +#Область ПрограммныйИнтерфейс + +// Обработчик команды формы. +// +// Параметры: +// Форма - УправляемаяФорма - Форма, из которой выполняется команда. +// Команда - КомандаФормы - Выполняемая команда. +// Источник - ТаблицаФормы, ДанныеФормыСтруктура - Объект или список формы с полем "Ссылка". +// Версия_2_4 - Булево - Истина, если форма настроена для использования подключаемых команд версии 2.4.0.1 и выше. +// +Процедура ВыполнитьКоманду(Форма, Команда, Источник, Версия_2_4 = Ложь) Экспорт + + Если Версия_2_4 Тогда + + ИмяКоманды = Команда.Имя; + АдресНастроек = Форма.ПараметрыПодключаемыхКоманд.АдресТаблицыКоманд; + ОписаниеКоманды = ПодключаемыеКомандыКлиентПовтИсп.ОписаниеКоманды(ИмяКоманды, АдресНастроек); + + Контекст = ПодключаемыеКомандыКлиентСервер.ШаблонПараметровВыполненияКоманды(); + Контекст.ОписаниеКоманды = Новый Структура(ОписаниеКоманды); + Контекст.Форма = Форма; + Контекст.Источник = Источник; + Контекст.ЭтоФормаОбъекта = ТипЗнч(Источник) = Тип("ДанныеФормыСтруктура"); + Контекст.Вставить("ТребуетсяОпределитьСсылки", Истина); + Контекст.Вставить("ТребуетсяЗапись", Контекст.ЭтоФормаОбъекта И ОписаниеКоманды.РежимЗаписи <> "НеЗаписывать"); + Контекст.Вставить("ТребуетсяПроведение", ОписаниеКоманды.РежимЗаписи = "Проводить"); + Контекст.Вставить("ТребуетсяРаботаСФайлами", ОписаниеКоманды.ТребуетсяРаботаСФайлами И Не ПодключитьРасширениеРаботыСФайлами()); + + ПродолжитьВыполнениеКоманды(Контекст); + + Иначе + + ИмяКоманды = Команда.Имя; + АдресНастроек = Форма.Команды.Найти("АдресНастроекКомандВоВременномХранилище").Действие; + ОписаниеКоманды = ПодключаемыеКомандыКлиентПовтИсп.ОписаниеКоманды(ИмяКоманды, АдресНастроек); + + Контекст = ПараметрыВыполненияКоманды(); + Контекст.ОписаниеКоманды = Новый Структура(ОписаниеКоманды); + Контекст.Форма = Форма; + Если Не Контекст.ЭтоФормаОбъекта И ЗначениеЗаполнено(ОписаниеКоманды.ИмяСписка) Тогда + Источник = Форма.Элементы.Найти(ОписаниеКоманды.ИмяСписка); + КонецЕсли; + Контекст.Источник = Источник; + Контекст.ЭтоФормаОбъекта = ТипЗнч(Источник) = Тип("ДанныеФормыСтруктура"); + Контекст.Вставить("ТребуетсяОпределитьСсылки", Истина); + Контекст.Вставить("ТребуетсяЗапись", Контекст.ЭтоФормаОбъекта И ОписаниеКоманды.РежимЗаписи <> "НеЗаписывать"); + Контекст.Вставить("ТребуетсяПроведение", ОписаниеКоманды.РежимЗаписи = "Проводить"); + Контекст.Вставить("ТребуетсяРаботаСФайлами", ОписаниеКоманды.ТребуетсяРаботаСФайлами И Не ПодключитьРасширениеРаботыСФайлами()); + + ПродолжитьВыполнениеКоманды(Контекст); + + КонецЕсли; + +КонецПроцедуры + +// Запускает отложенный процесс обновления команд печати на форме. +// +// Параметры: +// Форма - УправляемаяФорма - форма, на которой необходимо обновить команды печати. +// +Процедура НачатьОбновлениеКоманд(Форма) Экспорт + Форма.ОтключитьОбработчикОжидания("Подключаемый_ОбновитьКоманды"); + Форма.ПодключитьОбработчикОжидания("Подключаемый_ОбновитьКоманды", 0.2, Истина); +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныйПрограммныйИнтерфейс + +//////////////////////////////////////////////////////////////////////////////// +// Шаблоны. + +// Шаблон второго параметра обработчика команды. +// +// Возвращаемое значение: +// Структура - Вспомогательные параметры. +// * ОписаниеКоманды - Структура - Описание команды. +// Структура аналогична таблице ПодключаемыеКоманды.ТаблицаКоманд(). +// ** Идентификатор - Строка - Идентификатор команды. +// ** Представление - Строка - Представление команды в форме. +// ** ДополнительныеПараметры - Неопределено, ФиксированнаяСтруктура - Дополнительные параметры команды. +// * Форма - УправляемаяФорма - Форма, из которой вызвана команда. +// * ЭтоФормаОбъекта - Булево - Истина, если команда вызвана из формы объекта. +// * Источник - ТаблицаФормы, ДанныеФормыСтруктура - Объект или список формы с полем "Ссылка". +// +Функция ПараметрыВыполненияКоманды() + Структура = Новый Структура("ОписаниеКоманды, Форма, Источник"); + Структура.Вставить("ЭтоФормаОбъекта", Ложь); + Возврат Структура; +КонецФункции + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +// Выполняет команду, подключенную к форме. +Процедура ПродолжитьВыполнениеКоманды(Контекст) + Источник = Контекст.Источник; + ОписаниеКоманды = Контекст.ОписаниеКоманды; + + // Установка расширения работы с файлами. + Если Контекст.ТребуетсяРаботаСФайлами Тогда + Контекст.ТребуетсяРаботаСФайлами = Ложь; + Обработчик = Новый ОписаниеОповещения("ПродолжитьВыполнениеКомандыПослеУстановкиРасширенияРаботыСФайлами", ЭтотОбъект, Контекст); + ТекстСообщения = НСтр("ru = 'Для продолжения необходимо установить расширение для веб-клиента 1С:Предприятие.'"); + ОбщегоНазначенияКлиент.ПоказатьВопросОбУстановкеРасширенияРаботыСФайлами(Обработчик, ТекстСообщения, Ложь); + Возврат; + КонецЕсли; + + // Запись в форме объекта. + Если Контекст.ТребуетсяЗапись Тогда + Контекст.ТребуетсяЗапись = Ложь; + Если Источник.Ссылка.Пустая() + Или (ОписаниеКоманды.РежимЗаписи <> "ЗаписыватьТолькоНовые" И Контекст.Форма.Модифицированность) Тогда + ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Данные еще не записаны. + |Выполнение действия ""%1"" возможно только после записи данных. + |Данные будут записаны.'"), + ОписаниеКоманды.Представление); + Обработчик = Новый ОписаниеОповещения("ПродолжитьВыполнениеКомандыПослеПодтверждениеЗаписи", ЭтотОбъект, Контекст); + ПоказатьВопрос(Обработчик, ТекстВопроса, РежимДиалогаВопрос.ОКОтмена); + Возврат; + КонецЕсли; + КонецЕсли; + + // Определение ссылок объектов. + Если Контекст.ТребуетсяОпределитьСсылки Тогда + Контекст.ТребуетсяОпределитьСсылки = Ложь; + МассивСсылок = Новый Массив; + Если Контекст.ЭтоФормаОбъекта Тогда + ДобавитьСсылкуВСписок(Источник, МассивСсылок, ОписаниеКоманды.ТипПараметра); + ИначеЕсли Не ОписаниеКоманды.МножественныйВыбор Тогда + ДобавитьСсылкуВСписок(Источник.ТекущиеДанные, МассивСсылок, ОписаниеКоманды.ТипПараметра); + Иначе + Для Каждого Идентификатор Из Источник.ВыделенныеСтроки Цикл + ДобавитьСсылкуВСписок(Источник.ДанныеСтроки(Идентификатор), МассивСсылок, ОписаниеКоманды.ТипПараметра); + КонецЦикла; + КонецЕсли; + Если МассивСсылок.Количество() = 0 И ОписаниеКоманды.РежимЗаписи <> "НеЗаписывать" Тогда + ВызватьИсключение НСтр("ru = 'Команда не может быть выполнена для указанного объекта.'"); + КонецЕсли; + Контекст.Вставить("МассивСсылок", МассивСсылок); + КонецЕсли; + + // Проведение документов. + Если Контекст.ТребуетсяПроведение Тогда + Контекст.ТребуетсяПроведение = Ложь; + ИнформацияОДокументах = ПодключаемыеКомандыВызовСервера.ИнформацияОДокументах(Контекст.МассивСсылок); + Если ИнформацияОДокументах.КоличествоНеПроведенных > 0 Тогда + Если ИнформацияОДокументах.ЕстьПравоПроведенияХотяБыОдногоНепроведенного Тогда + Если ИнформацияОДокументах.КоличествоНеПроведенных = 1 Тогда + ТекстВопроса = НСтр("ru = 'Для выполнения команды необходимо предварительно провести документ. Выполнить проведение документа и продолжить?'"); + Иначе + ТекстВопроса = НСтр("ru = 'Для выполнения команды необходимо предварительно провести документы. Выполнить проведение документов и продолжить?'"); + КонецЕсли; + Контекст.Вставить("НепроведенныеДокументы", ИнформацияОДокументах.НеПроведенные); + Обработчик = Новый ОписаниеОповещения("ПродолжитьВыполнениеКомандыПослеПодтверждениеПроведения", ЭтотОбъект, Контекст); + ПоказатьВопрос(Обработчик, ТекстВопроса, РежимДиалогаВопрос.ОКОтмена); + Иначе + Если ИнформацияОДокументах.КоличествоНеПроведенных = 1 Тогда + ТекстПредупреждения = НСтр("ru = 'Для выполнения команды необходимо предварительно провести документ. Недостаточно прав для проведения документа.'"); + Иначе + ТекстПредупреждения = НСтр("ru = 'Для выполнения команды необходимо предварительно провести документы. Недостаточно прав для проведения документов.'"); + КонецЕсли; + ПоказатьПредупреждение(, ТекстПредупреждения); + КонецЕсли; + Возврат; + КонецЕсли; + КонецЕсли; + + // Выполнение команды. + Если ОписаниеКоманды.МножественныйВыбор Тогда + ПараметрКоманды = Контекст.МассивСсылок; + ИначеЕсли Контекст.МассивСсылок.Количество() = 0 Тогда + ПараметрКоманды = Неопределено; + Иначе + ПараметрКоманды = Контекст.МассивСсылок[0]; + КонецЕсли; + Если ОписаниеКоманды.Серверная Тогда + СерверныйКонтекст = Новый Структура; + СерверныйКонтекст.Вставить("ПараметрКоманды", ПараметрКоманды); + СерверныйКонтекст.Вставить("ИмяКомандыВФорме", ОписаниеКоманды.ИмяВФорме); + Результат = Новый Структура; + Контекст.Форма.Подключаемый_ВыполнитьКомандуНаСервере(СерверныйКонтекст, Результат); + Если ЗначениеЗаполнено(Результат.Текст) Тогда + ПараметрыПредупреждения = Новый Структура("Текст, Подробно"); + ПараметрыПредупреждения.Текст = Результат.Текст; + ПараметрыПредупреждения.Подробно = Результат.Подробно; + СтандартныеПодсистемыКлиент.ВывестиПредупреждение(Контекст.Форма, ПараметрыПредупреждения); + Иначе + ОбновитьФорму(Контекст); + КонецЕсли; + Иначе + Если ЗначениеЗаполнено(ОписаниеКоманды.Обработчик) Тогда + МассивПодстрок = СтрРазделить(ОписаниеКоманды.Обработчик, "."); + Если МассивПодстрок.Количество() = 1 Тогда + КлиентскийМодуль = ПолучитьФорму(ОписаниеКоманды.ИмяФормы, ПараметрыФормы(Контекст, ПараметрКоманды), Контекст.Форма, Истина); + ИмяПроцедуры = ОписаниеКоманды.Обработчик; + Иначе + КлиентскийМодуль = ОбщегоНазначенияКлиент.ОбщийМодуль(МассивПодстрок[0]); + ИмяПроцедуры = МассивПодстрок[1]; + КонецЕсли; + Обработчик = Новый ОписаниеОповещения(ИмяПроцедуры, КлиентскийМодуль, Контекст); + ВыполнитьОбработкуОповещения(Обработчик, ПараметрКоманды); + ИначеЕсли ЗначениеЗаполнено(ОписаниеКоманды.ИмяФормы) Тогда + ОткрытьФорму(ОписаниеКоманды.ИмяФормы, ПараметрыФормы(Контекст, ПараметрКоманды), Контекст.Форма, Истина); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +// Ветка процедуры, возникающая после диалога подтверждения записи. +Процедура ПродолжитьВыполнениеКомандыПослеПодтверждениеЗаписи(Ответ, Контекст) Экспорт + Если Ответ = КодВозвратаДиалога.ОК Тогда + ОчиститьСообщения(); + Контекст.Форма.Записать(); + Если Контекст.Источник.Ссылка.Пустая() Или Контекст.Форма.Модифицированность Тогда + Возврат; // Запись не удалась, сообщения о причинах выводит платформа. + КонецЕсли; + ИначеЕсли Ответ = КодВозвратаДиалога.Отмена Тогда + Возврат; + КонецЕсли; + ПродолжитьВыполнениеКоманды(Контекст) +КонецПроцедуры + +// Ветка процедуры, возникающая после диалога подтверждения проведения. +Процедура ПродолжитьВыполнениеКомандыПослеПодтверждениеПроведения(Ответ, Контекст) Экспорт + Если Ответ <> КодВозвратаДиалога.Да Тогда + Возврат; + КонецЕсли; + + ОчиститьСообщения(); + ДанныеОНепроведенныхДокументах = ОбщегоНазначенияВызовСервера.ПровестиДокументы(Контекст.НепроведенныеДокументы); + ШаблонСообщения = НСтр("ru = 'Документ %1 не проведен: %2'"); + НепроведенныеДокументы = Новый Массив; + Для Каждого ИнформацияОДокументе Из ДанныеОНепроведенныхДокументах Цикл + ОбщегоНазначенияКлиентСервер.СообщитьПользователю( + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + ШаблонСообщения, + Строка(ИнформацияОДокументе.Ссылка), + ИнформацияОДокументе.ОписаниеОшибки), + ИнформацияОДокументе.Ссылка); + НепроведенныеДокументы.Добавить(ИнформацияОДокументе.Ссылка); + КонецЦикла; + Контекст.Вставить("НепроведенныеДокументы", НепроведенныеДокументы); + + Контекст.МассивСсылок = ОбщегоНазначенияКлиентСервер.СократитьМассив(Контекст.МассивСсылок, НепроведенныеДокументы); + + // Оповещаем открытые формы о том, что были проведены документы. + ТипыПроведенныхДокументов = Новый Соответствие; + Для Каждого ПроведенныйДокумент Из Контекст.МассивСсылок Цикл + ТипыПроведенныхДокументов.Вставить(ТипЗнч(ПроведенныйДокумент)); + КонецЦикла; + Для Каждого Тип Из ТипыПроведенныхДокументов Цикл + ОповеститьОбИзменении(Тип.Ключ); + КонецЦикла; + + // Если команда была вызвана из формы, то зачитываем в форму актуальную (проведенную) копию из базы. + Если ТипЗнч(Контекст.Форма) = Тип("УправляемаяФорма") Тогда + Если Контекст.ЭтоФормаОбъекта Тогда + Контекст.Форма.Прочитать(); + КонецЕсли; + Контекст.ОбновитьОтображениеДанных(); + КонецЕсли; + + Если НепроведенныеДокументы.Количество() > 0 Тогда + // Спрашиваем пользователя о необходимости продолжения создания на основании при наличии непроведенных документов. + ТекстДиалога = НСтр("ru = 'Не удалось провести один или несколько документов.'"); + + КнопкиДиалога = Новый СписокЗначений; + Если Контекст.МассивСсылок.Количество() = 0 Тогда + КнопкиДиалога.Добавить(КодВозвратаДиалога.Отмена, НСтр("ru = 'ОК'")); + Иначе + ТекстДиалога = ТекстДиалога + " " + НСтр("ru = 'Продолжить?'"); + КнопкиДиалога.Добавить(КодВозвратаДиалога.Пропустить, НСтр("ru = 'Продолжить'")); + КнопкиДиалога.Добавить(КодВозвратаДиалога.Отмена); + КонецЕсли; + + Обработчик = Новый ОписаниеОповещения("ПродолжитьВыполнениеКомандыПослеПодтверждениеПродолжения", ЭтотОбъект, Контекст); + ПоказатьВопрос(Обработчик, ТекстДиалога, КнопкиДиалога); + Возврат; + КонецЕсли; + + ПродолжитьВыполнениеКоманды(Контекст); +КонецПроцедуры + +// Ветка процедуры, возникающая после диалога подтверждения продолжения когда есть непроведенные документы. +Процедура ПродолжитьВыполнениеКомандыПослеПодтверждениеПродолжения(Ответ, Контекст) Экспорт + Если Ответ <> КодВозвратаДиалога.Пропустить Тогда + Возврат; + КонецЕсли; + ПродолжитьВыполнениеКоманды(Контекст); +КонецПроцедуры + +// Ветка процедуры, возникающая после установки расширения работы с файлами. +Процедура ПродолжитьВыполнениеКомандыПослеУстановкиРасширенияРаботыСФайлами(РасширениеРаботыСФайламиПодключено, Контекст) Экспорт + Если Не ПодключитьРасширениеРаботыСФайлами() Тогда + Возврат; + КонецЕсли; + ПродолжитьВыполнениеКоманды(Контекст); +КонецПроцедуры + +// Получает ссылку из строки таблицы, проверяет что ссылка соответствует типу и добавляет в массив. +Процедура ДобавитьСсылкуВСписок(ДанныеФормыСтруктура, МассивСсылок, ТипПараметра) + Ссылка = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ДанныеФормыСтруктура, "Ссылка"); + Если ТипПараметра <> Неопределено И Не ТипПараметра.СодержитТип(ТипЗнч(Ссылка)) Тогда + Возврат; + ИначеЕсли Ссылка = Неопределено Или ТипЗнч(Ссылка) = Тип("СтрокаГруппировкиДинамическогоСписка") Тогда + Возврат; + КонецЕсли; + МассивСсылок.Добавить(Ссылка); +КонецПроцедуры + +// Формирует параметры формы подключенного объекта в контексте выполняемой команды. +Функция ПараметрыФормы(Контекст, ПараметрКоманды) + Результат = Контекст.ОписаниеКоманды.ПараметрыФормы; + Если ТипЗнч(Результат) <> Тип("Структура") Тогда + Результат = Новый Структура; + КонецЕсли; + Контекст.ОписаниеКоманды.Удалить("ПараметрыФормы"); + Результат.Вставить("ОписаниеКоманды", Контекст.ОписаниеКоманды); + Результат.Вставить("ПараметрКоманды", ПараметрКоманды); + Возврат Результат; +КонецФункции + +// Обновляет форму целевого объекта после окончания выполнения команды. +Процедура ОбновитьФорму(Контекст) + Если Контекст.ЭтоФормаОбъекта И Контекст.ОписаниеКоманды.РежимЗаписи <> "НеЗаписывать" И Не Контекст.Форма.Модифицированность Тогда + Попытка + Контекст.Форма.Прочитать(); + Исключение + // Если метода Прочитать нет, значит печать выполнена не из формы объекта. + КонецПопытки; + КонецЕсли; + Если Контекст.ОписаниеКоманды.РежимЗаписи <> "НеЗаписывать" Тогда + ТипыИзмененныхОбъектов = Новый Массив; + Для Каждого Ссылка Из Контекст.МассивСсылок Цикл + Тип = ТипЗнч(Ссылка); + Если ТипыИзмененныхОбъектов.Найти(Ссылка) = Неопределено Тогда + ТипыИзмененныхОбъектов.Добавить(Ссылка); + КонецЕсли; + КонецЦикла; + Для Каждого Тип Из ТипыИзмененныхОбъектов Цикл + ОповеститьОбИзменении(Тип); + КонецЦикла; + КонецЕсли; + Контекст.Форма.ОбновитьОтображениеДанных(); +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/CommonModules/ОбновлениеКонфигурацииГлобальный/ОбновлениеКонфигурацииГлобальный.mdo b/SSL/src/CommonModules/ПодключаемыеКомандыКлиент/ПодключаемыеКомандыКлиент.mdo similarity index 54% rename from SSL/src/CommonModules/ОбновлениеКонфигурацииГлобальный/ОбновлениеКонфигурацииГлобальный.mdo rename to SSL/src/CommonModules/ПодключаемыеКомандыКлиент/ПодключаемыеКомандыКлиент.mdo index 47d1f5d2a..532fa3371 100644 --- a/SSL/src/CommonModules/ОбновлениеКонфигурацииГлобальный/ОбновлениеКонфигурацииГлобальный.mdo +++ b/SSL/src/CommonModules/ПодключаемыеКомандыКлиент/ПодключаемыеКомандыКлиент.mdo @@ -1,11 +1,10 @@ <?xml version="1.0" encoding="UTF-8"?> -<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="19b9cbbb-1fcc-4492-9385-687742cb3d0b"> - <name>ОбновлениеКонфигурацииГлобальный</name> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="e4f9d9f6-38d7-4056-a95a-987ad2da2211"> + <name>ПодключаемыеКомандыКлиент</name> <synonym> <key>ru</key> - <value>Обновление конфигурации глобальный</value> + <value>Подключаемые команды клиент</value> </synonym> - <global>true</global> <clientManagedApplication>true</clientManagedApplication> <clientOrdinaryApplication>true</clientOrdinaryApplication> </mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ПодключаемыеКомандыКлиентПовтИсп/Module.bsl b/SSL/src/CommonModules/ПодключаемыеКомандыКлиентПовтИсп/Module.bsl new file mode 100644 index 000000000..f70ea11ce --- /dev/null +++ b/SSL/src/CommonModules/ПодключаемыеКомандыКлиентПовтИсп/Module.bsl @@ -0,0 +1,14 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Базовая функциональность" (клиент, повт. исп.). +// Обслуживает подключаемые команды. +// Выполняется на клиенте, возвращаемые значения кэшируются на время сеанса. +//////////////////////////////////////////////////////////////////////////////// + +#Область СлужебныеПроцедурыИФункции + +// Возвращает описание команды по имени элемента формы. +Функция ОписаниеКоманды(ИмяКоманды, АдресНастроек) Экспорт + Возврат ПодключаемыеКомандыВызовСервера.ОписаниеКоманды(ИмяКоманды, АдресНастроек); +КонецФункции + +#КонецОбласти diff --git a/SSL/src/CommonModules/ПодключаемыеКомандыКлиентПовтИсп/ПодключаемыеКомандыКлиентПовтИсп.mdo b/SSL/src/CommonModules/ПодключаемыеКомандыКлиентПовтИсп/ПодключаемыеКомандыКлиентПовтИсп.mdo new file mode 100644 index 000000000..c11f67c99 --- /dev/null +++ b/SSL/src/CommonModules/ПодключаемыеКомандыКлиентПовтИсп/ПодключаемыеКомандыКлиентПовтИсп.mdo @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="22c21c2b-4297-43b2-88f0-9555d22f7a14"> + <name>ПодключаемыеКомандыКлиентПовтИсп</name> + <synonym> + <key>ru</key> + <value>Подключаемые команды клиент повт исп</value> + </synonym> + <clientManagedApplication>true</clientManagedApplication> + <clientOrdinaryApplication>true</clientOrdinaryApplication> + <returnValuesReuse>DuringSession</returnValuesReuse> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ПодключаемыеКомандыКлиентСервер/Module.bsl b/SSL/src/CommonModules/ПодключаемыеКомандыКлиентСервер/Module.bsl new file mode 100644 index 000000000..3ad63a032 --- /dev/null +++ b/SSL/src/CommonModules/ПодключаемыеКомандыКлиентСервер/Module.bsl @@ -0,0 +1,196 @@ +#Область ПрограммныйИнтерфейс + +// Обновляет список команд в зависимости от текущего контекста. +// +// Параметры: +// Форма - УправляемаяФорма - форма, для которой требуется обновление команд. +// Источник - ДанныеФормыСтруктура, ТаблицаФормы - контекст для проверки условий (Форма.Объект или Форма.Элементы.Список). +// +Процедура ОбновитьКоманды(Форма, Источник) Экспорт + Структура = Новый Структура("ПараметрыПодключаемыхКоманд", Null); + ЗаполнитьЗначенияСвойств(Структура, Форма); + ПараметрыКлиента = Структура.ПараметрыПодключаемыхКоманд; + Если ТипЗнч(ПараметрыКлиента) <> Тип("Структура") Тогда + Возврат; + КонецЕсли; + + Если ТипЗнч(Источник) = Тип("ТаблицаФормы") Тогда + ДоступностьКоманд = (Источник.ТекущаяСтрока <> Неопределено); + Иначе + ДоступностьКоманд = Истина; + КонецЕсли; + Если ДоступностьКоманд <> ПараметрыКлиента.ДоступностьКоманд Тогда + ПараметрыКлиента.ДоступностьКоманд = ДоступностьКоманд; + Для Каждого ИмяКнопкиИлиПодменю Из ПараметрыКлиента.КорневыеПодменюИКоманды Цикл + КнопкаИлиПодменю = Форма.Элементы[ИмяКнопкиИлиПодменю]; + КнопкаИлиПодменю.Доступность = ДоступностьКоманд; + Если ТипЗнч(КнопкаИлиПодменю) = Тип("ГруппаФормы") И КнопкаИлиПодменю.Вид = ВидГруппыФормы.Подменю Тогда + СкрытьПоказатьВсеПодчиненныеКнопки(КнопкаИлиПодменю, ДоступностьКоманд); + КомандаЗаглушка = Форма.Элементы.Найти(ИмяКнопкиИлиПодменю + "Заглушка"); + Если КомандаЗаглушка <> Неопределено Тогда + КомандаЗаглушка.Видимость = Не ДоступностьКоманд; + КонецЕсли; + КонецЕсли; + КонецЦикла; + КонецЕсли; + + Если Не ДоступностьКоманд Или Не ПараметрыКлиента.ЕстьУсловияВидимости Тогда + Возврат; + КонецЕсли; + + ВыбранныеОбъекты = Новый Массив; + ПроверятьОписаниеТипов = Ложь; + + Если ТипЗнч(Источник) = Тип("ТаблицаФормы") Тогда + #Если Клиент Тогда + ВыделенныеСтроки = Источник.ВыделенныеСтроки; + Для Каждого ВыделеннаяСтрока Из ВыделенныеСтроки Цикл + Если ТипЗнч(ВыделеннаяСтрока) = Тип("СтрокаГруппировкиДинамическогоСписка") Тогда + Продолжить; + КонецЕсли; + ТекущаяСтрока = Источник.ДанныеСтроки(ВыделеннаяСтрока); + Если ТекущаяСтрока <> Неопределено Тогда + ВыбранныеОбъекты.Добавить(ТекущаяСтрока); + КонецЕсли; + КонецЦикла; + ПроверятьОписаниеТипов = Истина; + #Иначе + Возврат; + #КонецЕсли + Иначе + ВыбранныеОбъекты.Добавить(Источник); + КонецЕсли; + + Для Каждого КраткиеСведенияОПодменю Из ПараметрыКлиента.ПодменюСУсловиямиВидимости Цикл + ЕстьВидимыеКоманды = Ложь; + Подменю = Форма.Элементы.Найти(КраткиеСведенияОПодменю.Имя); + ИзменятьВидимость = (ТипЗнч(Подменю) = Тип("ГруппаФормы") И Подменю.Вид = ВидГруппыФормы.Подменю); + + Для Каждого Команда Из КраткиеСведенияОПодменю.КомандыСУсловиямиВидимости Цикл + КомандаЭлемент = Форма.Элементы[Команда.ИмяВФорме]; + Видимость = Истина; + Для Каждого Объект Из ВыбранныеОбъекты Цикл + Если ПроверятьОписаниеТипов + И ТипЗнч(Команда.ТипПараметра) = Тип("ОписаниеТипов") + И Не Команда.ТипПараметра.СодержитТип(ТипЗнч(Объект.Ссылка)) Тогда + Видимость = Ложь; + Прервать; + КонецЕсли; + Если ТипЗнч(Команда.УсловияВидимости) = Тип("Массив") + И Не УсловияВыполняются(Команда.УсловияВидимости, Объект) Тогда + Видимость = Ложь; + Прервать; + КонецЕсли; + КонецЦикла; + Если ИзменятьВидимость Тогда + КомандаЭлемент.Видимость = Видимость; + Иначе + КомандаЭлемент.Доступность = Видимость; + КонецЕсли; + ЕстьВидимыеКоманды = ЕстьВидимыеКоманды Или Видимость; + КонецЦикла; + + Если Не КраткиеСведенияОПодменю.ЕстьКомандыБезУсловийВидимости Тогда + КомандаЗаглушка = Форма.Элементы.Найти(КраткиеСведенияОПодменю.Имя + "Заглушка"); + Если КомандаЗаглушка <> Неопределено Тогда + КомандаЗаглушка.Видимость = Не ЕстьВидимыеКоманды; + КонецЕсли; + КонецЕсли; + КонецЦикла; +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +// Шаблон второго параметра обработчика команды. +// +// Возвращаемое значение: +// Структура - Вспомогательные параметры. +// * ОписаниеКоманды - Структура - Описание команды. +// Структура аналогична таблице ПодключаемыеКоманды.ТаблицаКоманд(). +// ** Идентификатор - Строка - Идентификатор команды. +// ** Представление - Строка - Представление команды в форме. +// ** ДополнительныеПараметры - Структура - Дополнительные параметры команды. +// * Форма - УправляемаяФорма - Форма, из которой вызвана команда. +// * ЭтоФормаОбъекта - Булево - Истина, если команда вызвана из формы объекта. +// * Источник - ТаблицаФормы, ДанныеФормыСтруктура - Объект или список формы с полем "Ссылка". +// +Функция ШаблонПараметровВыполненияКоманды() Экспорт + Структура = Новый Структура("ОписаниеКоманды, Форма, Источник"); + Структура.Вставить("ЭтоФормаОбъекта", Ложь); + Возврат Структура; +КонецФункции + +Функция УсловияВыполняются(Условия, ЗначенияРеквизитов) + Перем Значение; + Для Каждого Условие Из Условия Цикл + ИмяРеквизита = Условие.Реквизит; + Если Не ЗначенияРеквизитов.Свойство(ИмяРеквизита, Значение) Тогда + Продолжить; + КонецЕсли; + ПроверяемоеЗначение = Условие.Значение; + Если Условие.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно Тогда + Если Не (Значение = ПроверяемоеЗначение) Тогда + Возврат Ложь; + КонецЕсли; + ИначеЕсли Условие.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно Тогда + Если Не (Значение <> ПроверяемоеЗначение) Тогда + Возврат Ложь; + КонецЕсли; + ИначеЕсли Условие.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке Тогда + Если Не (ПроверяемоеЗначение.Найти(Значение) <> Неопределено) Тогда + Возврат Ложь; + КонецЕсли; + ИначеЕсли Условие.ВидСравнения = ВидСравненияКомпоновкиДанных.НеВСписке Тогда + Если Не (ПроверяемоеЗначение.Найти(Значение) = Неопределено) Тогда + Возврат Ложь; + КонецЕсли; + ИначеЕсли Условие.ВидСравнения = ВидСравненияКомпоновкиДанных.Заполнено Тогда + Если Не (Заполнено(Значение)) Тогда + Возврат Ложь; + КонецЕсли; + ИначеЕсли Условие.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено Тогда + Если Не (Не Заполнено(Значение)) Тогда + Возврат Ложь; + КонецЕсли; + ИначеЕсли Условие.ВидСравнения = ВидСравненияКомпоновкиДанных.Больше Тогда + Если Не (Значение > ПроверяемоеЗначение) Тогда + Возврат Ложь; + КонецЕсли; + ИначеЕсли Условие.ВидСравнения = ВидСравненияКомпоновкиДанных.Меньше Тогда + Если Не (Значение < ПроверяемоеЗначение) Тогда + Возврат Ложь; + КонецЕсли; + ИначеЕсли Условие.ВидСравнения = ВидСравненияКомпоновкиДанных.БольшеИлиРавно Тогда + Если Не (Значение >= ПроверяемоеЗначение) Тогда + Возврат Ложь; + КонецЕсли; + ИначеЕсли Условие.ВидСравнения = ВидСравненияКомпоновкиДанных.МеньшеИлиРавно Тогда + Если Не (Значение <= ПроверяемоеЗначение) Тогда + Возврат Ложь; + КонецЕсли; + КонецЕсли; + КонецЦикла; + Возврат Истина; +КонецФункции + +Функция Заполнено(Значение, ВСлучаеНевозможностиПроверки = Истина) + Попытка + Возврат ЗначениеЗаполнено(Значение); + Исключение + Возврат ВСлучаеНевозможностиПроверки; + КонецПопытки; +КонецФункции + +Процедура СкрытьПоказатьВсеПодчиненныеКнопки(ГруппаФормы, Видимость) + Для Каждого ПодчиненныйЭлемент Из ГруппаФормы.ПодчиненныеЭлементы Цикл + Если ТипЗнч(ПодчиненныйЭлемент) = Тип("ГруппаФормы") Тогда + СкрытьПоказатьВсеПодчиненныеКнопки(ПодчиненныйЭлемент, Видимость); + ИначеЕсли ТипЗнч(ПодчиненныйЭлемент) = Тип("КнопкаФормы") Тогда + ПодчиненныйЭлемент.Видимость = Видимость; + КонецЕсли; + КонецЦикла; +КонецПроцедуры + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/ОбновлениеКонфигурацииКлиентСервер/ОбновлениеКонфигурацииКлиентСервер.mdo b/SSL/src/CommonModules/ПодключаемыеКомандыКлиентСервер/ПодключаемыеКомандыКлиентСервер.mdo similarity index 60% rename from SSL/src/CommonModules/ОбновлениеКонфигурацииКлиентСервер/ОбновлениеКонфигурацииКлиентСервер.mdo rename to SSL/src/CommonModules/ПодключаемыеКомандыКлиентСервер/ПодключаемыеКомандыКлиентСервер.mdo index 0d7b8188f..30e06e200 100644 --- a/SSL/src/CommonModules/ОбновлениеКонфигурацииКлиентСервер/ОбновлениеКонфигурацииКлиентСервер.mdo +++ b/SSL/src/CommonModules/ПодключаемыеКомандыКлиентСервер/ПодключаемыеКомандыКлиентСервер.mdo @@ -1,9 +1,9 @@ <?xml version="1.0" encoding="UTF-8"?> -<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="dbad3cee-0d5c-41f6-819f-1a2b5251b62c"> - <name>ОбновлениеКонфигурацииКлиентСервер</name> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="734f61c4-5429-4a09-8697-8949ac5e6bd1"> + <name>ПодключаемыеКомандыКлиентСервер</name> <synonym> <key>ru</key> - <value>Обновление конфигурации клиент сервер</value> + <value>Подключаемые команды клиент сервер</value> </synonym> <clientManagedApplication>true</clientManagedApplication> <server>true</server> diff --git a/SSL/src/CommonModules/ПодключаемыеКомандыПереопределяемый/Module.bsl b/SSL/src/CommonModules/ПодключаемыеКомандыПереопределяемый/Module.bsl new file mode 100644 index 000000000..5c004d32c --- /dev/null +++ b/SSL/src/CommonModules/ПодключаемыеКомандыПереопределяемый/Module.bsl @@ -0,0 +1,183 @@ +#Область ПрограммныйИнтерфейс + +// Определение структуры параметра Настройки процедуры ПриОпределенииНастроек отчетов и обработок, +// включенных в состав подсистемы ПодключаемыеОтчетыИОбработки. +// +// Параметры: +// ВидыПодключаемыхКоманд - ТаблицаЗначений - Поддерживаемые виды команд. +// * Имя - Строка - Имя вида команд. Может соответствовать имени подсистемы, поставляющей команды. +// Должно удовлетворять требованиям именования переменных. +// Также должно быть уникальным (не совпадать с именами других видов). +// Подсистемами БСП зарезервированы следующие имена: +// "Печать", "Отчеты", "ЗаполнениеОбъектов". +// * ИмяПодменю - Строка - Имя подменю "по умолчанию" для размещения команд этого вида. +// * Заголовок - Строка - Наименование подменю. +// * Картинка - Картинка - Картинка подменю. +// * Отображение - ОтображениеКнопки - Режим отображения подменю. +// * Порядок - Число - Порядок подменю в командной панели по отношению к другим подменю. +// Используется при автоматическом создании подменю. +// +Процедура ПриОпределенииВидовПодключаемыхКоманд(ВидыПодключаемыхКоманд) Экспорт + + + +КонецПроцедуры + +// Позволяет расширить состав параметра Настройки процедуры ПриОпределенииНастроек в модулях менеджеров отчетов и +// обработок, включенных в состав подсистемы ПодключаемыеОтчетыИОбработки, с помощью чего отчеты и обработки могут +// сообщить о себе, что они предоставляют определенные виды команд и взаимодействуют с подсистемами через их +// программный интерфейс. +// +// При внедрении в конфигурацию подсистем "Печать", "Заполнение объектов" и "Варианты отчетов" в параметре Настройки +// процедуры ПриОпределенииНастроек модулей менеджеров отчетов и обработок, предопределен ряд стандартных свойств, +// в которых возможно задать следующее: +// * Размещение - Массив - перечислить объекты метаданных конфигурации (ОбъектМетаданных), к которым подключен данный +// отчет или обработка. +// * ДобавитьКомандыПечати - Булево - если указать Истина, то в модуле менеджера отчета (обработки) предусмотрена +// процедура ДобавитьКомандыПечати, которую вызывает подсистема "Печать" при выводе команд +// печати в объектах, перечисленных в параметре Размещение. Это эквивалентно указанию +// этого отчета (обработки) в процедуре +// УправлениеПечатьюПереопределяемый.ПриОпределенииОбъектовСКомандамиПечати. +// * ДобавитьКомандыЗаполнения - Булево - если указать Истина, то в модуле менеджера отчета (обработки) предусмотрена +// процедура ДобавитьКомандыЗаполнения, которую вызывает подсистема "Заполнение объектов" +// при выводе команд заполнения в объектах, перечисленных в параметре Размещение. +// Это эквивалентно указанию этого отчета (обработки) в процедуре +// ЗаполнениеОбъектовПереопределяемый.ПриОпределенииОбъектовСКомандамиЗаполнения. +// * ДобавитьКомандыОтчетов - Булево - только для отчетов. Если указать Истина, то в модуле менеджера отчета +// определена процедура ДобавитьКомандыОтчетов, которую вызывает подсистема +// "Варианты отчетов" при формировании списка контекстных отчетов, открываемых прямо +// из форм объектов, перечисленных в параметре Размещение. Это эквивалентно указанию +// этого отчета в процедуре +// ВариантыОтчетовПереопределяемый.ОпределитьОбъектыСКомандамиОтчетов. +// * НастроитьВариантыОтчета - Булево - только для отчетов. Если указать Истина, то в модуле менеджера отчета +// определена процедура НастроитьВариантыОтчета, которую вызывает подсистема +// "Варианты отчетов" при получении списка вариантов данного отчета. +// Подробнее см. ВариантыОтчетовПереопределяемый.НастроитьВариантыОтчетов. +// * ОпределитьНастройкиФормы - Булево - только для отчетов, подключенных к общей форме отчета ФормаОтчета. +// Если указать Истина, то в модуле объекта отчета определена процедура +// ОпределитьНастройкиФормы, которую вызывает подсистема "Варианты отчетов" для +// переопределения стандартного вида и поведения формы отчета ФормаОтчета. +// Подробнее см. ВариантыОтчетовПереопределяемый.НастроитьВариантыОтчетов. +// +// Если в конфигурации отсутствует одна из подсистем "Печать", "Заполнение объектов" и "Варианты отчетов", то +// соответствующие свойства в параметре Настройки также отсутствуют. +// +// Параметры: +// НастройкиПрограммногоИнтерфейса - ТаблицаЗначений - для добавления нового свойства в параметр Настройки процедуры +// ПриОпределенииНастроек модулей менеджеров отчетов и обработок, +// включенных в состав подсистемы ПодключаемыеОтчетыИОбработки, +// добавить строку таблицы с колонками: +// * Ключ - Строка - имя настройки, например, "ДобавитьМотиваторы". +// * ОписаниеТипов - ОписаниеТипов - тип настройки, например: Новый ОписаниеТипов("Булево"). +// * ВидыПодключаемыхОбъектов - Строка - имена видов объектов метаданных, для которых будет доступна эта настройка, +// перечисленные через запятую. Например: "Отчет" или "Отчет, Обработка". +// +// Пример: +// Для того чтобы в ПриОпределенииНастроек модуля обработки предусмотреть собственный признак ДобавитьМотиваторы: +// Процедура ПриОпределенииНастроек(Настройки) Экспорт +// Настройки.ДобавитьМотиваторы = Истина; // вызывается процедура ДобавитьМотиваторы +// Настройки.Размещение.Добавить(Метаданные.Документы.Анкеты); +// КонецПроцедуры +// +// следует реализовать следующий код: +// Настройка = НастройкиПрограммногоИнтерфейса.Добавить(); +// Настройка.Ключ = "ДобавитьМотиваторы"; +// Настройка.ОписаниеТипов = Новый ОписаниеТипов("Булево"); +// Настройка.ВидыПодключаемыхОбъектов = "Обработка"; +// +Процедура ПриОпределенииСоставаНастроекПодключаемыхОбъектов(НастройкиПрограммногоИнтерфейса) Экспорт + + + +КонецПроцедуры + +// Заполнение списка команд, подключенных к форме. +// Событие возникает в процессе вызова модуля повторного использования. +// +// Параметры: +// НастройкиФормы - Структура - Сведения о форме, в которой выводятся команды. Для чтения. +// * ИмяФормы - Строка - Полное имя формы, в которой выводятся подключаемые команды. +// +// Источники - ДеревоЗначений - Сведения об основных поставщиках команд этой формы. Для чтения. +// * Метаданные - ОбъектМетаданных - Метаданные объекта. +// * ПолноеИмя - Строка - Полное имя объекта. Например: "Документ.ИмяДокумента". +// * Вид - Строка - Вид объекта в верхнем регистре. Например: "СПРАВОЧНИК". +// * Менеджер - Произвольный - Модуль менеджера объекта. +// - Неопределено - Если у объекта нет модуля менеджера или если его не удалось получить. +// * Ссылка - СправочникСсылка.ИдентификаторыОбъектовМетаданных - Ссылка объекта метаданных. +// * ЭтоЖурналДокументов - Булево - Истина если объект является журналом документов. +// * ТипСсылкиДанных - Тип, ОписаниеТипов - Тип ссылки элемента. +// На 2 уровне могут располагаться источники, регистрируемые автоматически при регистрации владельца. +// Например, документы-регистраторы журналов. +// +// ПодключенныеОтчетыИОбработки - ТаблицаЗначений - Настройки отчетов и обработок, +// подключенных к основным поставщикам команд. Для чтения. +// * ПолноеИмя - Строка - Полное имя объекта метаданных. +// * Менеджер - Произвольный - Модуль менеджера объекта метаданных. +// Состав колонок определяется в процедуре ПриОпределенииНастроекПрограммногоИнтерфейсаПодключаемыхОбъектов. +// +// Команды - ТаблицаЗначений - Таблица команд для вывода в подменю. Для изменения. +// * Вид - Строка - Вид команды. +// Подробнее см. ПодключаемыеКомандыПереопределяемый.ПриОпределенииВидовПодключаемыхКоманд(). +// * Идентификатор - Строка - Идентификатор команды. +// +// Настройки внешнего вида: +// * Представление - Строка - Представление команды в форме. +// * Важность - Строка - Суффикс подгруппы в меню, в которой следует вывести эту команду. +// Допустимо использовать: "Важное", "Обычное" и "СмТакже". +// * Порядок - Число - Порядок размещения команды в группе. Используется для настройки под конкретное рабочее место. +// Допустимо задавать в диапазоне от 1 до 100. По умолчанию порядок 50. +// * Картинка - Картинка - Картинка команды. Необязательный. +// * СочетаниеКлавиш - СочетаниеКлавиш - Сочетание клавиш для быстрого вызова команды. Необязательный. +// +// Настройки видимости и доступности: +// * ТипПараметра - ОписаниеТипов - Типы объектов, для которых предназначена эта команда. +// * ВидимостьВФормах - Строка - Имена форм через запятую, в которых должна отображаться команда. +// Используется когда состав команд отличается для различных форм. +// * ФункциональныеОпции - Строка - Имена функциональных опций через запятую, определяющих видимость команды. +// * УсловияВидимости - Массив - Определяет видимость команды в зависимости от контекста. +// Для регистрации условий следует использовать процедуру +// ПодключаемыеКоманды.ДобавитьУсловиеВидимостиКоманды(). +// Условия объединяются по "И". +// * ИзменяетВыбранныеОбъекты - Булево - Определяет доступность команды в ситуации, +// когда у пользователя нет прав на изменение объекта. +// Если Истина, то в описанной выше ситуации кнопка будет недоступна. +// Необязательный. Значение по умолчанию: Ложь. +// +// Настройки процесса выполнения: +// * МножественныйВыбор - Булево - Если Истина, то команда поддерживает множественный выбор. +// В этом случае в параметре выполнения будет передан список ссылок. +// Необязательный. Значение по умолчанию: Истина. +// * РежимЗаписи - Строка - Действия, связанные с записью объекта, которые выполняются перед обработчиком команды. +// ** "НеЗаписывать" - Объект не записывается, а в параметрах обработчика вместо ссылок передается вся форма. +// В этом режиме рекомендуется работать напрямую с формой, +// которая передается в структуре 2 параметра обработчика команды. +// ** "ЗаписыватьТолькоНовые" - Записывать новые объекты. +// ** "Записывать" - Записывать новые и модифицированные объекты. +// ** "Проводить" - Проводить документы. +// Перед записью и проведением у пользователя запрашивается подтверждение. +// Необязательный. Значение по умолчанию: "Записывать". +// * ТребуетсяРаботаСФайлами - Булево - Если Истина, то в веб-клиенте предлагается +// установить расширение работы с файлами. +// Необязательный. Значение по умолчанию: Ложь. +// +// Настройки обработчика: +// * Менеджер - Строка - Объект, отвечающий за выполнение команды. +// * ИмяФормы - Строка - Имя формы, которую требуется получить для выполнения команды. +// Если Обработчик не указан, то у формы вызывается метод "Открыть". +// * ИмяПараметраФормы - Строка - Имя параметра формы, в который следует передать ссылку или массив ссылок. +// * ПараметрыФормы - Неопределено, Структура - Необязательный. Параметры формы, указанной в ИмяФормы. +// * Обработчик - Строка - Описание процедуры, обрабатывающей основное действие команды. +// Формат "<ИмяОбщегоМодуля>.<ИмяПроцедуры>" используется когда процедура размещена в общем модуле. +// Формат "<ИмяПроцедуры>" используется в следующих случаях: +// - Если ИмяФормы заполнено то в модуле указанной формы ожидается клиентская процедура. +// - Если ИмяФормы не заполнено то в модуле менеджера этого объекта ожидается серверная процедура. +// * ДополнительныеПараметры - Структура - Необязательный. Параметры обработчика, указанного в Обработчик. +// +Процедура ПриОпределенииКомандПодключенныхКОбъекту(НастройкиФормы, Источники, ПодключенныеОтчетыИОбработки, Команды) Экспорт + + + +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/CommonModules/ПодключаемыеКомандыПереопределяемый/ПодключаемыеКомандыПереопределяемый.mdo b/SSL/src/CommonModules/ПодключаемыеКомандыПереопределяемый/ПодключаемыеКомандыПереопределяемый.mdo new file mode 100644 index 000000000..2d8463da0 --- /dev/null +++ b/SSL/src/CommonModules/ПодключаемыеКомандыПереопределяемый/ПодключаемыеКомандыПереопределяемый.mdo @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="d04e0e2d-0a5f-4866-b0b3-b582915db899"> + <name>ПодключаемыеКомандыПереопределяемый</name> + <synonym> + <key>ru</key> + <value>Подключаемые команды переопределяемый</value> + </synonym> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ПодключаемыеКомандыПовтИсп/Module.bsl b/SSL/src/CommonModules/ПодключаемыеКомандыПовтИсп/Module.bsl new file mode 100644 index 000000000..9049b6374 --- /dev/null +++ b/SSL/src/CommonModules/ПодключаемыеКомандыПовтИсп/Module.bsl @@ -0,0 +1,64 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Базовая функциональность" (сервер, повт. исп.). +// Обслуживает подключаемые команды. +// Выполняется на сервере, возвращаемые значения кэшируются на время сеанса. +//////////////////////////////////////////////////////////////////////////////// + +#Область СлужебныеПроцедурыИФункции + +Функция КэшФормы(Знач ИмяФормы, Знач ИсточникиЧерезЗапятую, Знач ЭтоФормаОбъекта) Экспорт + Возврат ПодключаемыеКоманды.КэшФормы(ИмяФормы, ИсточникиЧерезЗапятую, ЭтоФормаОбъекта); +КонецФункции + +Функция НастройкиРазмещения(Знач ИмяФормы, Знач ИспользуемыеПодменю) Экспорт + Возврат ПодключаемыеКоманды.НастройкиРазмещения(ИмяФормы, ИспользуемыеПодменю); +КонецФункции + +Функция Параметры() Экспорт + Параметры = Константы.ПараметрыПодключаемыхКоманд.Получить().Получить(); + Если Параметры = Неопределено Тогда + ПодключаемыеКоманды.ОперативноеОбновлениеОбщихДанныхКонфигурации(); + Параметры = Константы.ПараметрыПодключаемыхКоманд.Получить().Получить(); + Если Параметры = Неопределено Тогда + Возврат Новый Структура("ПодключенныеОбъекты", Новый Соответствие); + КонецЕсли; + КонецЕсли; + + Если ЗначениеЗаполнено(ПараметрыСеанса.ВерсияРасширений) Тогда + ХранилищеЗначения = СтандартныеПодсистемыСервер.ПараметрРаботыРасширения(ПодключаемыеКоманды.ПолноеИмяПодсистемы()); + Если ХранилищеЗначения = Неопределено Тогда + Если Не Пользователи.ЭтоПолноправныйПользователь() Тогда + УстановитьПривилегированныйРежим(Истина); + Если Не ПривилегированныйРежим() Тогда + ВызватьИсключение НСтр("ru = 'Не удалось обновить вспомогательные данные расширений. Обратитесь к администратору.'"); + КонецЕсли; + КонецЕсли; + ПодключаемыеКоманды.ПриЗаполненииВсехПараметровРаботыРасширений(); + ХранилищеЗначения = СтандартныеПодсистемыСервер.ПараметрРаботыРасширения(ПодключаемыеКоманды.ПолноеИмяПодсистемы()); + Если ХранилищеЗначения = Неопределено Тогда + Возврат Параметры; + КонецЕсли; + КонецЕсли; + ПараметрыРасширений = ХранилищеЗначения.Получить(); + ДополнитьСоответствиеСМассивами(Параметры.ПодключенныеОбъекты, ПараметрыРасширений.ПодключенныеОбъекты); + КонецЕсли; + + Возврат Параметры; +КонецФункции + +Процедура ДополнитьСоответствиеСМассивами(СоответствиеПриемник, СоответствиеИсточник) + Для Каждого КлючИЗначение Из СоответствиеИсточник Цикл + МассивПриемника = СоответствиеПриемник[КлючИЗначение.Ключ]; + Если МассивПриемника = Неопределено Тогда + СоответствиеПриемник.Вставить(КлючИЗначение.Ключ, КлючИЗначение.Значение); + Иначе + Для Каждого Значение Из КлючИЗначение.Значение Цикл + Если МассивПриемника.Найти(Значение) = Неопределено Тогда + МассивПриемника.Добавить(Значение); + КонецЕсли; + КонецЦикла; + КонецЕсли; + КонецЦикла; +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/CommonModules/ПодключаемыеКомандыПовтИсп/ПодключаемыеКомандыПовтИсп.mdo b/SSL/src/CommonModules/ПодключаемыеКомандыПовтИсп/ПодключаемыеКомандыПовтИсп.mdo new file mode 100644 index 000000000..12005916c --- /dev/null +++ b/SSL/src/CommonModules/ПодключаемыеКомандыПовтИсп/ПодключаемыеКомандыПовтИсп.mdo @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="19649d3f-52aa-4054-bb84-a6a11d212495"> + <name>ПодключаемыеКомандыПовтИсп</name> + <synonym> + <key>ru</key> + <value>Подключаемые команды повт исп</value> + </synonym> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> + <returnValuesReuse>DuringSession</returnValuesReuse> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ПодсистемыКонфигурацииПереопределяемый/Module.bsl b/SSL/src/CommonModules/ПодсистемыКонфигурацииПереопределяемый/Module.bsl index a2555850f..ea3770c08 100644 --- a/SSL/src/CommonModules/ПодсистемыКонфигурацииПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ПодсистемыКонфигурацииПереопределяемый/Module.bsl @@ -26,6 +26,8 @@ + + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/CommonModules/ПоискИУдалениеДублейПереопределяемый/Module.bsl b/SSL/src/CommonModules/ПоискИУдалениеДублейПереопределяемый/Module.bsl index 1d6a483e8..efccb142c 100644 --- a/SSL/src/CommonModules/ПоискИУдалениеДублейПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ПоискИУдалениеДублейПереопределяемый/Module.bsl @@ -6,24 +6,28 @@ #Область ПрограммныйИнтерфейс // Определить объекты, в модулях менеджеров которых предусмотрена возможность параметризации -// алгоритма поиска дублей с помощью экспортных процедур ПараметрыПоискаДублей, ПриПоискеДублей -// и ВозможностьЗаменыЭлементов. +// алгоритма поиска дублей с помощью экспортных процедур ПараметрыПоискаДублей, ПриПоискеДублей +// и ВозможностьЗаменыЭлементов. // // Параметры: -// Объекты - Соответствие - в качестве ключа указать полное имя объекта метаданных, -// подключенного к подсистеме "Поиск и удаление дублей". -// В значении могут быть перечислены имена экспортных процедур: -// "ПараметрыПоискаДублей", -// "ПриПоискеДублей", -// "ВозможностьЗаменыЭлементов". -// Каждое имя должно начинаться с новой строки. -// Если указана пустая строка, значит в модуле менеджера определены все процедуры. +// Объекты - Соответствие - Объекты, в модулях менеджеров которых размещены экспортные процедуры. +// ** Ключ - Строка - Полное имя объекта метаданных, подключенного к подсистеме "Поиск и удаление дублей". +// ** Значение - Строка - Имена экспортных процедур, определенных в модуле менеджера. +// Могут быть перечислены: +// "ПараметрыПоискаДублей", +// "ПриПоискеДублей", +// "ВозможностьЗаменыЭлементов". +// Каждое имя должно начинаться с новой строки. +// Если указана пустая строка, значит в модуле менеджера определены все процедуры. // -// Пример: -// Объекты.Вставить(Метаданные.Документы.ЗаказПокупателя.ПолноеИмя(), ""); // определены все процедуры -// Объекты.Вставить(Метаданные.БизнесПроцессы.ЗаданиеСРолевойАдресацией.ПолноеИмя(), "ПараметрыПоискаДублей -// |ПриПоискеДублей -// |ВозможностьЗаменыЭлементов"); +// Примеры: +// +// 1. Определены все процедуры. +// Объекты.Вставить(Метаданные.Документы.ЗаказПокупателя.ПолноеИмя(), ""); +// +// 2. Определены процедуры ПараметрыПоискаДублей и ПриПоискеДублей. +// Объекты.Вставить(Метаданные.БизнесПроцессы.ЗаданиеСРолевойАдресацией.ПолноеИмя(), "ПараметрыПоискаДублей +// |ПриПоискеДублей"); // Процедура ПриОпределенииОбъектовСПоискомДублей(Объекты) Экспорт diff --git a/SSL/src/CommonModules/ПолнотекстовыйПоискСервер/Module.bsl b/SSL/src/CommonModules/ПолнотекстовыйПоискСервер/Module.bsl index 47e756ff4..fca32defd 100644 --- a/SSL/src/CommonModules/ПолнотекстовыйПоискСервер/Module.bsl +++ b/SSL/src/CommonModules/ПолнотекстовыйПоискСервер/Module.bsl @@ -78,7 +78,7 @@ Процедура ПриЗаполненииСпискаТекущихДел(ТекущиеДела) Экспорт МодульТекущиеДелаСервер = ОбщегоНазначения.ОбщийМодуль("ТекущиеДелаСервер"); Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.НастройкиПрограммы") - Или Не Пользователи.ЭтоПолноправныйПользователь() + Или Не Пользователи.ЭтоПолноправныйПользователь(, Истина) Или Не ПолучитьФункциональнуюОпцию("ИспользоватьПолнотекстовыйПоиск") Или МодульТекущиеДелаСервер.ДелоОтключено("ПолнотекстовыйПоискВДанных") Тогда Возврат; diff --git a/SSL/src/CommonModules/ПолучениеФайловИзИнтернета/Module.bsl b/SSL/src/CommonModules/ПолучениеФайловИзИнтернета/Module.bsl index 74cb38728..2e484c7e4 100644 --- a/SSL/src/CommonModules/ПолучениеФайловИзИнтернета/Module.bsl +++ b/SSL/src/CommonModules/ПолучениеФайловИзИнтернета/Module.bsl @@ -10,18 +10,19 @@ // Параметры: // URL - Строка - url файла в формате [Протокол://]<Сервер>/<Путь к файлу на сервере>. // ПараметрыПолучения - Структура со свойствами: -// * ПутьДляСохранения - Строка - путь на сервере (включая имя файла), для сохранения скачанного файла. -// * Пользователь - Строка - пользователь от имени которого установлено соединение. -// * Пароль - Строка - пароль пользователя от которого установлено соединение. -// * Порт - Число - порт сервера с которым установлено соединение. -// * Таймаут - Число - таймаут на получение файла, в секундах. -// * ЗащищенноеСоединение - Булево - признак использования защищенного соединения ftps или https. -// - ЗащищенноеСоединение - см. описание свойства ЗащищенноеСоединение объектов -// FTPСоединение и HTTPСоединение. -// - Неопределено - в случае, если защищенное соединение не используется. -// * ПассивноеСоединение - Булево - для случая ftp загрузки флаг указывает, что соединение должно пассивным -// (или активным). -// * Заголовки - Соответствие - см. описание параметра Заголовки объекта HTTPЗапрос. +// * ПутьДляСохранения - Строка - путь на сервере (включая имя файла), для сохранения скачанного файла. +// * Пользователь - Строка - пользователь от имени которого установлено соединение. +// * Пароль - Строка - пароль пользователя от которого установлено соединение. +// * Порт - Число - порт сервера с которым установлено соединение. +// * Таймаут - Число - таймаут на получение файла, в секундах. +// * ЗащищенноеСоединение - Булево - признак использования защищенного соединения ftps или https. +// - ЗащищенноеСоединение - см. описание свойства ЗащищенноеСоединение объектов +// FTPСоединение и HTTPСоединение. +// - Неопределено - в случае, если защищенное соединение не используется. +// * ПассивноеСоединение - Булево - для случая ftp загрузки флаг указывает, что соединение должно пассивным +// (или активным). +// * Заголовки - Соответствие - см. описание параметра Заголовки объекта HTTPЗапрос. +// * ИспользоватьАутентификациюОС - Булево - см. описание параметра ИспользоватьАутентификациюОС объекта HTTPСоединение. // ЗаписыватьОшибку - Булево - Признак необходимости записи ошибки в журнал регистрации при получении файла. // // Возвращаемое значение: @@ -29,6 +30,7 @@ // * Статус - Булево - результат получения файла. // * Путь - Строка - путь к файлу на сервере, ключ используется только если статус Истина. // * СообщениеОбОшибке - Строка - сообщение об ошибке, если статус Ложь. +// * Заголовки - Соответствие - см. описание параметра Заголовки объекта HTTPОтвет. // * КодСостояния - Число - Добавляется при возникновении ошибки. // См. описание параметра КодСостояния объекта HTTPОтвет. // @@ -56,17 +58,19 @@ // Параметры: // URL - Строка - url файла в формате [Протокол://]<Сервер>/<Путь к файлу на сервере>. // ПараметрыПолучения - Структура со свойствами: -// * Пользователь - Строка - пользователь от имени которого установлено соединение. -// * Пароль - Строка - пароль пользователя от которого установлено соединение. -// * Порт - Число - порт сервера с которым установлено соединение. -// * Таймаут - Число - таймаут на получение файла, в секундах. -// * ЗащищенноеСоединение - Булево - признак использования защищенного соединения ftps или https. -// - ЗащищенноеСоединение - см. описание свойства ЗащищенноеСоединение объектов -// FTPСоединение и HTTPСоединение. -// - Неопределено - в случае, если защищенное соединение не используется. -// * ПассивноеСоединение - Булево - для случая ftp загрузки флаг указывает, что соединение должно пассивным -// (или активным). -// * Заголовки - Соответствие - см. описание параметра Заголовки объекта HTTPЗапрос. +// * ПутьДляСохранения - Строка - путь на сервере (включая имя файла), для сохранения скачанного файла. +// * Пользователь - Строка - пользователь от имени которого установлено соединение. +// * Пароль - Строка - пароль пользователя от которого установлено соединение. +// * Порт - Число - порт сервера с которым установлено соединение. +// * Таймаут - Число - таймаут на получение файла, в секундах. +// * ЗащищенноеСоединение - Булево - признак использования защищенного соединения ftps или https. +// - ЗащищенноеСоединение - см. описание свойства ЗащищенноеСоединение объектов +// FTPСоединение и HTTPСоединение. +// - Неопределено - в случае, если защищенное соединение не используется. +// * ПассивноеСоединение - Булево - для случая ftp загрузки флаг указывает, что соединение должно пассивным +// (или активным). +// * Заголовки - Соответствие - см. описание параметра Заголовки объекта HTTPЗапрос. +// * ИспользоватьАутентификациюОС - Булево - см. описание параметра ИспользоватьАутентификациюОС объекта HTTPСоединение. // ЗаписыватьОшибку - Булево - Признак необходимости записи ошибки в журнал регистрации при получении файла. // // Возвращаемое значение: @@ -75,6 +79,7 @@ // * Путь - Строка - адрес временного хранилища с двоичными данными файла, ключ используется только если // статус Истина. // * СообщениеОбОшибке - Строка - сообщение об ошибке, если статус Ложь. +// * Заголовки - Соответствие - см. описание параметра Заголовки объекта HTTPОтвет. // * КодСостояния - Число - Добавляется при возникновении ошибки. // См. описание параметра КодСостояния объекта HTTPОтвет. // diff --git a/SSL/src/CommonModules/ПолучениеФайловИзИнтернетаКлиент/Module.bsl b/SSL/src/CommonModules/ПолучениеФайловИзИнтернетаКлиент/Module.bsl index 07bbac5a5..0f8211f7d 100644 --- a/SSL/src/CommonModules/ПолучениеФайловИзИнтернетаКлиент/Module.bsl +++ b/SSL/src/CommonModules/ПолучениеФайловИзИнтернетаКлиент/Module.bsl @@ -10,18 +10,19 @@ // Параметры: // URL - Строка - url файла в формате [Протокол://]<Сервер>/<Путь к файлу на сервере>. // ПараметрыПолучения - Структура со свойствами: -// * ПутьДляСохранения - Строка - путь на сервере (включая имя файла), для сохранения скачанного файла. -// * Пользователь - Строка - пользователь от имени которого установлено соединение. -// * Пароль - Строка - пароль пользователя от которого установлено соединение. -// * Порт - Число - порт сервера с которым установлено соединение. -// * Таймаут - Число - таймаут на получение файла, в секундах. -// * ЗащищенноеСоединение - Булево - признак использования защищенного соединения ftps или https. -// - ЗащищенноеСоединение - см. описание свойства ЗащищенноеСоединение объектов -// FTPСоединение и HTTPСоединение. -// - Неопределено - в случае, если защищенное соединение не используется. -// * ПассивноеСоединение - Булево - для случая ftp загрузки флаг указывает, что соединение должно пассивным -// (или активным). -// * Заголовки - Соответствие - см. описание параметра Заголовки объекта HTTPЗапрос. +// * ПутьДляСохранения - Строка - путь на сервере (включая имя файла), для сохранения скачанного файла. +// * Пользователь - Строка - пользователь от имени которого установлено соединение. +// * Пароль - Строка - пароль пользователя от которого установлено соединение. +// * Порт - Число - порт сервера с которым установлено соединение. +// * Таймаут - Число - таймаут на получение файла, в секундах. +// * ЗащищенноеСоединение - Булево - признак использования защищенного соединения ftps или https. +// - ЗащищенноеСоединение - см. описание свойства ЗащищенноеСоединение объектов +// FTPСоединение и HTTPСоединение. +// - Неопределено - в случае, если защищенное соединение не используется. +// * ПассивноеСоединение - Булево - для случая ftp загрузки флаг указывает, что соединение должно пассивным +// (или активным). +// * Заголовки - Соответствие - см. описание параметра Заголовки объекта HTTPЗапрос. +// * ИспользоватьАутентификациюОС - Булево - см. описание параметра ИспользоватьАутентификациюОС объекта HTTPСоединение. // ЗаписыватьОшибку - Булево - Признак необходимости записи ошибки в журнал регистрации при получении файла. // // Возвращаемое значение: @@ -29,6 +30,7 @@ // * Статус - Булево - результат получения файла. // * Путь - Строка - путь к файлу на сервере, ключ используется только если статус Истина. // * СообщениеОбОшибке - Строка - сообщение об ошибке, если статус Ложь. +// * Заголовки - Соответствие - см. описание параметра Заголовки объекта HTTPОтвет. // * КодСостояния - Число - Добавляется при возникновении ошибки. // См. описание параметра КодСостояния объекта HTTPОтвет. // @@ -52,9 +54,9 @@ // Открывает форму для ввода параметров прокси сервера. // -Процедура ОткрытьФормуПараметровПроксиСервера() Экспорт +Процедура ОткрытьФормуПараметровПроксиСервера(ПараметрыФормы = Неопределено) Экспорт - ОткрытьФорму("ОбщаяФорма.ПараметрыПроксиСервера"); + ОткрытьФорму("ОбщаяФорма.ПараметрыПроксиСервера", ПараметрыФормы); КонецПроцедуры diff --git a/SSL/src/CommonModules/ПолучениеФайловИзИнтернетаКлиентСервер/Module.bsl b/SSL/src/CommonModules/ПолучениеФайловИзИнтернетаКлиентСервер/Module.bsl index da3f6291a..4222f1686 100644 --- a/SSL/src/CommonModules/ПолучениеФайловИзИнтернетаКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/ПолучениеФайловИзИнтернетаКлиентСервер/Module.bsl @@ -74,16 +74,17 @@ // Параметры: // URL - строка - url файла в формате: // НастройкиПолучения - Структура со свойствами. -// ПутьДляСохранения - Строка - путь на сервере (включая имя файла), для сохранения скачанного файла. -// Пользователь - Строка - пользователь от имени которого установлено соединение. -// Пароль - Строка - пароль пользователя от которого установлено соединение. -// Порт - Число - порт сервера с которым установлено соединение. -// Таймаут - Число - таймаут на получение файла, в секундах. -// ЗащищенноеСоединение - Булево - для случая http загрузки флаг указывает, -// что соединение должно производиться через https. -// ПассивноеСоединение - Булево - для случая ftp загрузки флаг указывает, -// что соединение должно пассивным (или активным). -// Заголовки - Соответствие - см. описание параметра Заголовки объекта HTTPЗапрос. +// * ПутьДляСохранения - Строка - путь на сервере (включая имя файла), для сохранения скачанного файла. +// * Пользователь - Строка - пользователь от имени которого установлено соединение. +// * Пароль - Строка - пароль пользователя от которого установлено соединение. +// * Порт - Число - порт сервера с которым установлено соединение. +// * Таймаут - Число - таймаут на получение файла, в секундах. +// * ЗащищенноеСоединение - Булево - для случая http загрузки флаг указывает, +// что соединение должно производиться через https. +// * ПассивноеСоединение - Булево - для случая ftp загрузки флаг указывает, +// что соединение должно пассивным (или активным). +// * Заголовки - Соответствие - см. описание параметра Заголовки объекта HTTPЗапрос. +// * ИспользоватьАутентификациюОС - Булево - см. описание параметра ИспользоватьАутентификациюОС объекта HTTPСоединение. // // НастройкаСохранения - соответствие - содержит параметры для сохранения скачанного файла // ключи: @@ -110,6 +111,7 @@ НастройкаСоединения.Вставить("Порт", НастройкиПолучения.Порт); НастройкаСоединения.Вставить("Таймаут", НастройкиПолучения.Таймаут); НастройкаСоединения.Вставить("ЗащищенноеСоединение", НастройкиПолучения.ЗащищенноеСоединение); + НастройкаСоединения.Вставить("ИспользоватьАутентификациюОС", НастройкиПолучения.ИспользоватьАутентификациюОС); Протокол = РазделитьURL(URL).Протокол; @@ -137,10 +139,11 @@ ПараметрыПолучения.Вставить("Пользователь", Неопределено); ПараметрыПолучения.Вставить("Пароль", Неопределено); ПараметрыПолучения.Вставить("Порт", Неопределено); - ПараметрыПолучения.Вставить("Таймаут", Неопределено); + ПараметрыПолучения.Вставить("Таймаут", 10); ПараметрыПолучения.Вставить("ЗащищенноеСоединение", Неопределено); ПараметрыПолучения.Вставить("ПассивноеСоединение", Неопределено); ПараметрыПолучения.Вставить("Заголовки", Новый Соответствие()); + ПараметрыПолучения.Вставить("ИспользоватьАутентификациюОС", Ложь); Возврат ПараметрыПолучения; @@ -186,8 +189,8 @@ // либо адрес во временном хранилище // в случае неуспеха сообщение об ошибке. // -Функция ПолучитьФайлИзИнтернет(Знач URL, Знач НастройкаСохранения, Знач НастройкаСоединения = Неопределено, - Знач НастройкиПрокси = Неопределено, Знач ЗаписыватьОшибку = Истина) +Функция ПолучитьФайлИзИнтернет(Знач URL, Знач НастройкаСохранения, Знач НастройкаСоединения, + Знач НастройкиПрокси, Знач ЗаписыватьОшибку, КоличествоПеренаправлений = 0) // Объявление переменных перед первым использованием в качестве // параметра метода Свойство, при анализе параметров получения файлов @@ -210,6 +213,7 @@ Порт = НастройкаСоединения.Получить("Порт"); Таймаут = НастройкаСоединения.Получить("Таймаут"); Заголовки = НастройкаСоединения.Получить("Заголовки"); + ИспользоватьАутентификациюОС = НастройкаСоединения.Получить("ИспользоватьАутентификациюОС"); Если (Протокол = "https" Или Протокол = "ftps") И ЗащищенноеСоединение = Неопределено Тогда ЗащищенноеСоединение = Истина; @@ -250,7 +254,7 @@ Иначе Попытка - Соединение = Новый HTTPСоединение(ИмяСервера, Порт, ИмяПользователя, ПарольПользователя, Прокси, Таймаут, ЗащищенноеСоединение); + Соединение = Новый HTTPСоединение(ИмяСервера, Порт, ИмяПользователя, ПарольПользователя, Прокси, Таймаут, ЗащищенноеСоединение, ИспользоватьАутентификациюОС); Исключение ИнформацияОбОшибке = ИнформацияОбОшибке(); СообщениеОбОшибке = НСтр("ru = 'Не удалось установить HTTP-соединение с сервером %1: @@ -282,9 +286,13 @@ HTTPЗапрос.Заголовки.Вставить("Accept-Charset", "utf-8"); HTTPОтвет = Соединение.Получить(HTTPЗапрос, ПутьДляСохранения); - Если HTTPОтвет.КодСостояния = 301 Тогда + Если HTTPОтвет.КодСостояния = 301 Или HTTPОтвет.КодСостояния = 302 Тогда НовыйURL = HTTPОтвет.Заголовки["Location"]; - Возврат ПолучитьФайлИзИнтернет(НовыйURL, НастройкаСохранения, НастройкаСоединения, НастройкиПрокси, ЗаписыватьОшибку); + Если КоличествоПеренаправлений > 20 Тогда + ВызватьИсключение НСтр("ru = 'Обнаружена циклическая переадресация.'"); + КонецЕсли; + Возврат ПолучитьФайлИзИнтернет(НовыйURL, НастройкаСохранения, НастройкаСоединения, + НастройкиПрокси, ЗаписыватьОшибку, КоличествоПеренаправлений + 1); КонецЕсли; Если HTTPОтвет.КодСостояния < 200 Или HTTPОтвет.КодСостояния >= 300 Тогда @@ -301,10 +309,10 @@ Исключение ИнформацияОбОшибке = ИнформацияОбОшибке(); - СообщениеОбОшибке = НСтр("ru = 'Не удалось получить файл с сервера %1:'") + Символы.ПС + "%2"; + СообщениеОбОшибке = НСтр("ru = 'Не удалось получить файл %1 с сервера:'") + Символы.ПС + "%2"; Если ЗаписыватьОшибку Тогда ЗаписатьОшибкуВЖурналРегистрации( - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СообщениеОбОшибке, ИмяСервера, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке))); + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СообщениеОбОшибке, URL, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке))); КонецЕсли; Возврат СформироватьРезультат(Ложь, КраткоеПредставлениеОшибки(ИнформацияОбОшибке), HTTPОтвет); КонецПопытки; @@ -318,7 +326,7 @@ ИЛИ НастройкаСохранения["МестоХранения"] = "Сервер" Тогда Возврат СформироватьРезультат(Истина, ПутьДляСохранения, HTTPОтвет); Иначе - Возврат Неопределено; + ВызватьИсключение НСтр("ru = 'Не указано место для сохранения файла.'"); КонецЕсли; КонецФункции @@ -334,6 +342,7 @@ // Порт - порт прокси-сервера. // Пользователь - имя пользователя для авторизации на прокси-сервере. // Пароль - пароль пользователя. +// ИспользоватьАутентификациюОС - Булево - признак использования аутентификации средствами операционной системы. // Протокол - строка - протокол для которого устанавливаются параметры прокси сервера, например "http", "https", // "ftp". // @@ -369,12 +378,15 @@ ПроксиПоПротоколу = ДополнительныеНастройки.Получить(Протокол); КонецЕсли; + ИспользоватьАутентификациюОС = НастройкаПроксиСервера.Получить("ИспользоватьАутентификациюОС"); + ИспользоватьАутентификациюОС = ?(ИспользоватьАутентификациюОС = Истина, Истина, Ложь); + Если ТипЗнч(ПроксиПоПротоколу) = Тип("Структура") Тогда Прокси.Установить(Протокол, ПроксиПоПротоколу.Адрес, ПроксиПоПротоколу.Порт, - НастройкаПроксиСервера["Пользователь"], НастройкаПроксиСервера["Пароль"]); + НастройкаПроксиСервера["Пользователь"], НастройкаПроксиСервера["Пароль"], ИспользоватьАутентификациюОС); Иначе Прокси.Установить(Протокол, НастройкаПроксиСервера["Сервер"], НастройкаПроксиСервера["Порт"], - НастройкаПроксиСервера["Пользователь"], НастройкаПроксиСервера["Пароль"]); + НастройкаПроксиСервера["Пользователь"], НастройкаПроксиСервера["Пароль"], ИспользоватьАутентификациюОС); КонецЕсли; Прокси.НеИспользоватьПроксиДляЛокальныхАдресов = НастройкаПроксиСервера["НеИспользоватьПроксиДляЛокальныхАдресов"]; diff --git a/SSL/src/CommonModules/Пользователи/Module.bsl b/SSL/src/CommonModules/Пользователи/Module.bsl index 5693687fc..2cbc0c745 100644 --- a/SSL/src/CommonModules/Пользователи/Module.bsl +++ b/SSL/src/CommonModules/Пользователи/Module.bsl @@ -53,64 +53,71 @@ ПривилегированныйРежимУстановлен = ПривилегированныйРежим(); УстановитьПривилегированныйРежим(Истина); - Свойства = СвойстваПроверяемогоПользователяИБ(Пользователь); - ПользовательИБ = Свойства.ПользовательИБ; + СвойстваПользователяИБ = СвойстваПроверяемогоПользователяИБ(Пользователь); + + Если СвойстваПользователяИБ = Неопределено Тогда + Возврат Ложь; + КонецЕсли; ПроверитьРольПолныеПрава = Не ПроверятьПраваАдминистрированияСистемы; ПроверитьРольАдминистратораСистемы = ПроверятьПраваАдминистрированияСистемы; - Если ПользовательИБ = Неопределено Тогда - Возврат Ложь; - ИначеЕсли НЕ Свойства.УказанТекущийПользовательИБ Тогда + Если Не СвойстваПользователяИБ.УказанТекущийПользовательИБ Тогда + Роли = СвойстваПользователяИБ.ПользовательИБ.Роли; + // Для не текущего пользователя ИБ проверяются роли в записанном пользователе ИБ. Если ПроверитьРольПолныеПрава - И НЕ ПользовательИБ.Роли.Содержит(Метаданные.Роли.ПолныеПрава) Тогда + И Не Роли.Содержит(Метаданные.Роли.ПолныеПрава) Тогда Возврат Ложь; КонецЕсли; + Если ПроверитьРольАдминистратораСистемы - И НЕ ПользовательИБ.Роли.Содержит(РольАдминистратораСистемы(Истина)) Тогда + И Не Роли.Содержит(РольАдминистратораСистемы(Истина)) Тогда Возврат Ложь; КонецЕсли; - Возврат Истина; - Иначе - Если УчитыватьПривилегированныйРежим И ПривилегированныйРежимУстановлен Тогда - Возврат Истина; - КонецЕсли; - Если СтандартныеПодсистемыПовтИсп.ПривилегированныйРежимУстановленПриЗапуске() Тогда - // Когда клиентское приложение запущено с параметром UsePrivilegedMode, тогда - // пользователь является полноправным, если привилегированный режим установлен. - Возврат Истина; - КонецЕсли; - - Если НЕ ЗначениеЗаполнено(ПользовательИБ.Имя) И Метаданные.ОсновныеРоли.Количество() = 0 Тогда - // Когда основные роли не указаны, тогда у неуказанного пользователя - // есть все права (как в привилегированном режиме). - Возврат Истина; - КонецЕсли; - - Если НЕ ЗначениеЗаполнено(ПользовательИБ.Имя) - И ПривилегированныйРежимУстановлен - И ПравоДоступа("Администрирование", Метаданные, ПользовательИБ) Тогда - // Когда у неуказанного пользователя есть право Администрирование, - // тогда привилегированный режим учитывается всегда для поддержки - // параметра запуска UsePrivilegedMode у не клиентских приложений. - Возврат Истина; - КонецЕсли; - - // Для текущего пользователя ИБ проверяются роли не в записанном пользователе ИБ, - // а роли в текущем сеансе. - Если ПроверитьРольПолныеПрава - И НЕ РольДоступна(Метаданные.Роли.ПолныеПрава) Тогда // Не заменять на РолиДоступны. - Возврат Ложь; - КонецЕсли; - Если ПроверитьРольАдминистратораСистемы - И НЕ РольДоступна(РольАдминистратораСистемы(Истина)) Тогда // Не заменять на РолиДоступны. - Возврат Ложь; - КонецЕсли; Возврат Истина; КонецЕсли; + Если УчитыватьПривилегированныйРежим И ПривилегированныйРежимУстановлен Тогда + Возврат Истина; + КонецЕсли; + + Если СтандартныеПодсистемыПовтИсп.ПривилегированныйРежимУстановленПриЗапуске() Тогда + // Когда клиентское приложение запущено с параметром UsePrivilegedMode, тогда + // пользователь является полноправным, если привилегированный режим установлен. + Возврат Истина; + КонецЕсли; + + Если Не ЗначениеЗаполнено(СвойстваПользователяИБ.Имя) И Метаданные.ОсновныеРоли.Количество() = 0 Тогда + // Когда основные роли не указаны, тогда у неуказанного пользователя + // есть все права (как в привилегированном режиме). + Возврат Истина; + КонецЕсли; + + Если Не ЗначениеЗаполнено(СвойстваПользователяИБ.Имя) + И ПривилегированныйРежимУстановлен + И СвойстваПользователяИБ.ПравоАдминистрирование Тогда + // Когда у неуказанного пользователя есть право Администрирование, + // тогда привилегированный режим учитывается всегда для поддержки + // параметра запуска UsePrivilegedMode у не клиентских приложений. + Возврат Истина; + КонецЕсли; + + // Для текущего пользователя ИБ проверяются роли не в записанном пользователе ИБ, + // а роли в текущем сеансе. + Если ПроверитьРольПолныеПрава + И Не СвойстваПользователяИБ.РольДоступнаПолныеПрава Тогда // Не заменять на РолиДоступны. + Возврат Ложь; + КонецЕсли; + + Если ПроверитьРольАдминистратораСистемы + И Не СвойстваПользователяИБ.РольДоступнаАдминистраторСистемы Тогда // Не заменять на РолиДоступны. + Возврат Ложь; + КонецЕсли; + + Возврат Истина; + КонецФункции // Возвращает доступность хотя бы одной из указанных ролей или полноправность @@ -161,30 +168,26 @@ КонецЕсли; УстановитьПривилегированныйРежим(Истина); - Свойства = СвойстваПроверяемогоПользователяИБ(Пользователь); - ПользовательИБ = Свойства.ПользовательИБ; + СвойстваПользователяИБ = СвойстваПроверяемогоПользователяИБ(Пользователь); - Если ПользовательИБ = Неопределено Тогда + Если СвойстваПользователяИБ = Неопределено Тогда Возврат Ложь; КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда - МодульУправлениеДоступомСлужебный = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступомСлужебный"); - МодульУправлениеДоступомСлужебный.ПередПроверкойДоступностиРолей(МассивИменРолей); - КонецЕсли; - - Для Каждого ИмяРоли Из МассивИменРолей Цикл - - Если Свойства.УказанТекущийПользовательИБ Тогда + Если СвойстваПользователяИБ.УказанТекущийПользовательИБ Тогда + Для Каждого ИмяРоли Из МассивИменРолей Цикл Если РольДоступна(СокрЛП(ИмяРоли)) Тогда // Не заменять на РолиДоступны. Возврат Истина; КонецЕсли; - Иначе - Если ПользовательИБ.Роли.Содержит(Метаданные.Роли.Найти(СокрЛП(ИмяРоли))) Тогда + КонецЦикла; + Иначе + Роли = СвойстваПользователяИБ.ПользовательИБ.Роли; + Для Каждого ИмяРоли Из МассивИменРолей Цикл + Если Роли.Содержит(Метаданные.Роли.Найти(СокрЛП(ИмяРоли))) Тогда Возврат Истина; КонецЕсли; - КонецЕсли; - КонецЦикла; + КонецЦикла; + КонецЕсли; Возврат Ложь; @@ -193,14 +196,14 @@ // Проверяет наличие хотя бы одного вида аутентификации у пользователя ИБ. // // Параметры: -// ОписаниеПользователяИБ - УникальныйИдентификатор - пользователя ИБ. +// ОписаниеПользователяИБ - УникальныйИдентификатор - идентификатор пользователя ИБ. // - Структура - содержит 3 свойства аутентификации: -// * АутентификацияСтандартная - Булево - -// * АутентификацияОС - Булево - -// * АутентификацияOpenID - Булево - -// - ПользовательИнформационнойБазы - -// - СправочникСсылка.Пользователи - -// - СправочникСсылка.ВнешниеПользователи - +// * АутентификацияСтандартная - Булево - аутентификация 1С:Предприятия. +// * АутентификацияОС - Булево - аутентификация операционной системы. +// * АутентификацияOpenID - Булево - аутентификация OpenID. +// - ПользовательИнформационнойБазы - пользователь ИБ. +// - СправочникСсылка.Пользователи - пользователь. +// - СправочникСсылка.ВнешниеПользователи - внешний пользователь. // // Возвращаемое значение: // Булево - Истина, если хотя бы одно свойство аутентификации равно Истина. @@ -629,8 +632,7 @@ Пользователь.ДополнительныеСвойства.Вставить( "ОписаниеПользователяИБ", ОписаниеПользователяИБ); - Пользователь.ДополнительныеСвойства.Вставить( - "СозданиеАдминистратора", + Пользователь.ДополнительныеСвойства.Вставить("СозданиеАдминистратора", ?(ПользовательИБ = Неопределено, НСтр("ru = 'Выполнено создание первого администратора.'"), ?(ПользовательСоздан, @@ -982,12 +984,12 @@ СтарыеСвойства.Имя, НовыеСвойства.Имя, Истина); КонецЕсли; - ПользователиПереопределяемый.ПриЗаписиПользователяИнформационнойБазы(СтарыеСвойства, НовыеСвойства); - - Если СоздатьНового = Неопределено ИЛИ СоздатьНового = Истина Тогда - ПользователиСлужебный.УстановитьНачальныеНастройки(НовыеСвойства.Имя, Пользователь); + Если СоздатьНового = Неопределено Или СоздатьНового = Истина Тогда + ПользователиСлужебный.УстановитьНачальныеНастройки(ПользовательИБ.Имя, Пользователь); КонецЕсли; + ПользователиПереопределяемый.ПриЗаписиПользователяИнформационнойБазы(СтарыеСвойства, НовыеСвойства); + ОбновляемыеСвойства.Вставить("УникальныйИдентификатор", ПользовательИБ.УникальныйИдентификатор); Пользователь = ПользовательИБ; Возврат Истина; @@ -1624,29 +1626,37 @@ Функция СвойстваПроверяемогоПользователяИБ(Пользователь) - Свойства = Новый Структура; - Свойства.Вставить("ТекущийПользовательИБ", ПользователиИнформационнойБазы.ТекущийПользователь()); - Свойства.Вставить("ПользовательИБ", Неопределено); + СвойстваТекущегоПользовательИБ = ПользователиСлужебныйПовтИсп.СвойстваТекущегоПользователяИБ(); + ПользовательИБ = Неопределено; Если ТипЗнч(Пользователь) = Тип("ПользовательИнформационнойБазы") Тогда - Свойства.Вставить("ПользовательИБ", Пользователь); + ПользовательИБ = Пользователь; - ИначеЕсли Пользователь = Неопределено ИЛИ Пользователь = АвторизованныйПользователь() Тогда - Свойства.Вставить("ПользовательИБ", Свойства.ТекущийПользовательИБ); + ИначеЕсли Пользователь = Неопределено Или Пользователь = АвторизованныйПользователь() Тогда + Возврат СвойстваТекущегоПользовательИБ; Иначе // Задан не текущий пользователь. Если ЗначениеЗаполнено(Пользователь) Тогда - Свойства.Вставить("ПользовательИБ", ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору( - ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Пользователь, "ИдентификаторПользователяИБ"))); + ИдентификаторПользователяИБ = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Пользователь, "ИдентификаторПользователяИБ"); + Если СвойстваТекущегоПользовательИБ.УникальныйИдентификатор = ИдентификаторПользователяИБ Тогда + Возврат СвойстваТекущегоПользовательИБ; + КонецЕсли; + ПользовательИБ = ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору(ИдентификаторПользователяИБ); КонецЕсли; КонецЕсли; - Если Свойства.ПользовательИБ <> Неопределено Тогда - Свойства.Вставить("УказанТекущийПользовательИБ", - Свойства.ПользовательИБ.УникальныйИдентификатор - = Свойства.ТекущийПользовательИБ.УникальныйИдентификатор); + Если ПользовательИБ = Неопределено Тогда + Возврат Неопределено; КонецЕсли; + Если СвойстваТекущегоПользовательИБ.УникальныйИдентификатор = ПользовательИБ.УникальныйИдентификатор Тогда + Возврат СвойстваТекущегоПользовательИБ; + КонецЕсли; + + Свойства = Новый Структура; + Свойства.Вставить("УказанТекущийПользовательИБ", Ложь); + Свойства.Вставить("ПользовательИБ", ПользовательИБ); + Возврат Свойства; КонецФункции diff --git a/SSL/src/CommonModules/ПользователиКлиентСервер/Module.bsl b/SSL/src/CommonModules/ПользователиКлиентСервер/Module.bsl index ac8a38590..6f29b1b31 100644 --- a/SSL/src/CommonModules/ПользователиКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/ПользователиКлиентСервер/Module.bsl @@ -10,18 +10,15 @@ // Рекомендуется использовать в коде, который поддерживает работу в обоих случаях. // // Возвращаемое значение: -// - СправочникСсылка.Пользователи, СправочникСсылка.ВнешниеПользователи - -// +// СправочникСсылка.Пользователи, СправочникСсылка.ВнешниеПользователи - пользователь +// или внешний пользователь. +// Функция АвторизованныйПользователь() Экспорт #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда - УстановитьПривилегированныйРежим(Истина); - - Возврат ?(ЗначениеЗаполнено(ПараметрыСеанса.ТекущийПользователь), - ПараметрыСеанса.ТекущийПользователь, - ПараметрыСеанса.ТекущийВнешнийПользователь); + Возврат ПользователиСлужебный.АвторизованныйПользователь(); #Иначе - Возврат СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиентаПриЗапуске().АвторизованныйПользователь; + Возврат СтандартныеПодсистемыКлиент.ПараметрКлиента("АвторизованныйПользователь"); #КонецЕсли КонецФункции @@ -32,7 +29,7 @@ // Если вход в сеанс выполнил внешний пользователь, тогда будет вызвано исключение. // // Возвращаемое значение: -// СправочникСсылка.Пользователи. +// СправочникСсылка.Пользователи - пользователь. // Функция ТекущийПользователь() Экспорт @@ -54,7 +51,7 @@ // Если вход в сеанс выполнил не внешний пользователь, тогда будет вызвано исключение. // // Возвращаемое значение: -// СправочникСсылка.ВнешниеПользователи. +// СправочникСсылка.ВнешниеПользователи - внешний пользователь. // Функция ТекущийВнешнийПользователь() Экспорт @@ -80,7 +77,7 @@ #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда Возврат ПользователиСлужебныйПовтИсп.ЭтоСеансВнешнегоПользователя(); #Иначе - Возврат СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиентаПриЗапуске().ЭтоСеансВнешнегоПользователя; + Возврат СтандартныеПодсистемыКлиент.ПараметрКлиента("ЭтоСеансВнешнегоПользователя"); #КонецЕсли КонецФункции diff --git a/SSL/src/CommonModules/ПользователиПереопределяемый/Module.bsl b/SSL/src/CommonModules/ПользователиПереопределяемый/Module.bsl index 2a216fbdb..e8dfad642 100644 --- a/SSL/src/CommonModules/ПользователиПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ПользователиПереопределяемый/Module.bsl @@ -58,13 +58,15 @@ // // * СовместноДляПользователейИВнешнихПользователей - Массив - имена ролей, которые предназначены // для любых пользователей (и внутренних, и внешних, и неразделенных), например: -// ЧтениеОтветовНаВопросыАнкет, ИспользованиеВариантовОтчетов. +// ЧтениеОтветовНаВопросыАнкет, ДобавлениеИзменениеЛичныхВариантовОтчетов. // Такие роли существуют и в БСП, и в прикладных решениях (если используются внешние пользователи). // Процедура ПриОпределенииНазначенияРолей(НазначениеРолей) Экспорт + + КонецПроцедуры // Переопределяет поведение формы пользователя и формы внешнего пользователя, @@ -89,7 +91,9 @@ КонецПроцедуры // Доопределяет действия при записи пользователя информационной базы. -// Вызывается из процедуры ЗаписатьПользователяИБ(), если пользователь был действительно изменен. +// Вызывается из процедуры ЗаписатьПользователяИБ(), если пользователь был действительно изменен. +// Используется, если при записи пользователя ИБ требуется сделать синхронные действия, +// например, обновить запись в соответствующем регистре. // // Параметры: // СтарыеСвойства - Структура - см. параметры возвращаемые функцией Пользователи.ПрочитатьПользователяИБ(). diff --git a/SSL/src/CommonModules/ПользователиСлужебный/Module.bsl b/SSL/src/CommonModules/ПользователиСлужебный/Module.bsl index 4928cc1a2..472b37a05 100644 --- a/SSL/src/CommonModules/ПользователиСлужебный/Module.bsl +++ b/SSL/src/CommonModules/ПользователиСлужебный/Module.bsl @@ -24,7 +24,7 @@ // Вызывается при создании элемента справочника "Пользователи" в момент интерактивного входа пользователя. // // Параметры: - // НовыйПользователь - СправочникОбъект.Пользователи. + // НовыйПользователь - СправочникОбъект.Пользователи - новый пользователь перед записью. // // Синтаксис: // Процедура ПриСозданииПользователяВМоментВхода(НовыйПользователь) Экспорт @@ -172,186 +172,6 @@ КонецПроцедуры -Функция ЗначенияПараметровСеансаТекущийПользователь() - - Если НЕ ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда - Возврат - НСтр("ru = 'Недопустимое получение параметра сеанса ТекущийПользователь - |в сеансе без указания всех разделителей.'"); - КонецЕсли; - - ЗаголовокОшибки = НСтр("ru = 'Не удалось установить параметр сеанса ТекущийПользователь.'") + Символы.ПС; - - НачатьТранзакцию(); - Попытка - ПользовательНеНайден = Ложь; - СоздатьПользователя = Ложь; - СсылкаНового = Неопределено; - Служебный = Ложь; - - ТекущийПользователь = Неопределено; - ТекущийВнешнийПользователь = Неопределено; - - ТекущийПользовательИБ = ПользователиИнформационнойБазы.ТекущийПользователь(); - - Если ПустаяСтрока(ТекущийПользовательИБ.Имя) Тогда - - ТекущийВнешнийПользователь = Справочники.ВнешниеПользователи.ПустаяСсылка(); - - СвойстваНеуказанногоПользователя = СвойстваНеуказанногоПользователя(); - - ИмяПользователя = СвойстваНеуказанногоПользователя.ПолноеИмя; - ПолноеИмяПользователя = СвойстваНеуказанногоПользователя.ПолноеИмя; - СсылкаНового = СвойстваНеуказанногоПользователя.СтандартнаяСсылка; - - Если СвойстваНеуказанногоПользователя.Ссылка = Неопределено Тогда - ПользовательНеНайден = Истина; - СоздатьПользователя = Истина; - Служебный = Истина; - ИдентификаторПользователяИБ = ""; - Иначе - ТекущийПользователь = СвойстваНеуказанногоПользователя.Ссылка; - КонецЕсли; - Иначе - ИмяПользователя = ТекущийПользовательИБ.Имя; - ИдентификаторПользователяИБ = ТекущийПользовательИБ.УникальныйИдентификатор; - - Пользователи.НайтиНеоднозначныхПользователейИБ(Неопределено, ИдентификаторПользователяИБ); - - Запрос = Новый Запрос; - Запрос.Параметры.Вставить("ИдентификаторПользователяИБ", ИдентификаторПользователяИБ); - - Запрос.Текст = - "ВЫБРАТЬ ПЕРВЫЕ 1 - | Пользователи.Ссылка КАК Ссылка - |ИЗ - | Справочник.Пользователи КАК Пользователи - |ГДЕ - | Пользователи.ИдентификаторПользователяИБ = &ИдентификаторПользователяИБ"; - РезультатПользователи = Запрос.Выполнить(); - - Запрос.Текст = - "ВЫБРАТЬ ПЕРВЫЕ 1 - | ВнешниеПользователи.Ссылка КАК Ссылка - |ИЗ - | Справочник.ВнешниеПользователи КАК ВнешниеПользователи - |ГДЕ - | ВнешниеПользователи.ИдентификаторПользователяИБ = &ИдентификаторПользователяИБ"; - РезультатВнешниеПользователи = Запрос.Выполнить(); - - Если НЕ РезультатВнешниеПользователи.Пустой() Тогда - - Выборка = РезультатВнешниеПользователи.Выбрать(); - Выборка.Следующий(); - ТекущийПользователь = Справочники.Пользователи.ПустаяСсылка(); - ТекущийВнешнийПользователь = Выборка.Ссылка; - - Если НЕ ВнешниеПользователи.ИспользоватьВнешнихПользователей() Тогда - Возврат НСтр("ru = 'Внешние пользователи отключены.'"); - КонецЕсли; - Иначе - ТекущийВнешнийПользователь = Справочники.ВнешниеПользователи.ПустаяСсылка(); - - Если РезультатПользователи.Пустой() Тогда - РазделениеВключено = ОбщегоНазначенияПовтИсп.РазделениеВключено(); - - Если РолиАдминистратораДоступны() Тогда - ИдентификаторПользователяИБ = ТекущийПользовательИБ.УникальныйИдентификатор; - - ПолноеИмяПользователя = ТекущийПользовательИБ.ПолноеИмя; - ПользовательПоНаименованию = СсылкаПользователяПоПолномуНаименованию(ПолноеИмяПользователя); - - Если ПользовательПоНаименованию = Неопределено Тогда - ПользовательНеНайден = Истина; - СоздатьПользователя = Истина; - Иначе - ТекущийПользователь = ПользовательПоНаименованию; - КонецЕсли; - Иначе - ПользовательНеНайден = Истина; - КонецЕсли; - Иначе - Выборка = РезультатПользователи.Выбрать(); - Выборка.Следующий(); - ТекущийПользователь = Выборка.Ссылка; - КонецЕсли; - КонецЕсли; - КонецЕсли; - - Если СоздатьПользователя Тогда - - НачатьТранзакцию(); - Попытка - - Если СсылкаНового = Неопределено Тогда - СсылкаНового = Справочники.Пользователи.ПолучитьСсылку(); - КонецЕсли; - - ТекущийПользователь = СсылкаНового; - - ПараметрыСеанса.ТекущийПользователь = ТекущийПользователь; - ПараметрыСеанса.ТекущийВнешнийПользователь = ТекущийВнешнийПользователь; - ПараметрыСеанса.АвторизованныйПользователь = ТекущийПользователь; - - НовыйПользователь = Справочники.Пользователи.СоздатьЭлемент(); - НовыйПользователь.Служебный = Служебный; - НовыйПользователь.Наименование = ПолноеИмяПользователя; - НовыйПользователь.УстановитьСсылкуНового(СсылкаНового); - - Если ЗначениеЗаполнено(ИдентификаторПользователяИБ) Тогда - - ОписаниеПользователяИБ = Новый Структура; - ОписаниеПользователяИБ.Вставить("Действие", "Записать"); - ОписаниеПользователяИБ.Вставить("УникальныйИдентификатор", ИдентификаторПользователяИБ); - - НовыйПользователь.ДополнительныеСвойства.Вставить( - "ОписаниеПользователяИБ", ОписаниеПользователяИБ); - КонецЕсли; - - Обработчики = ОбщегоНазначения.ОбработчикиСлужебногоСобытия("СтандартныеПодсистемы.Пользователи\ПриСозданииПользователяВМоментВхода"); - Для Каждого Обработчик Из Обработчики Цикл - Обработчик.Модуль.ПриСозданииПользователяВМоментВхода(НовыйПользователь); - КонецЦикла; - - НовыйПользователь.Записать(); - - ЗафиксироватьТранзакцию(); - Исключение - ОтменитьТранзакцию(); - ОчищаемыеПараметры = Новый Массив; - ОчищаемыеПараметры.Добавить("ТекущийПользователь"); - ОчищаемыеПараметры.Добавить("ТекущийВнешнийПользователь"); - ОчищаемыеПараметры.Добавить("АвторизованныйПользователь"); - ПараметрыСеанса.Очистить(ОчищаемыеПараметры); - ВызватьИсключение; - КонецПопытки; - КонецЕсли; - - ЗафиксироватьТранзакцию(); - Исключение - ОтменитьТранзакцию(); - ВызватьИсключение; - КонецПопытки; - - Если Не СоздатьПользователя И ПользовательНеНайден Тогда - Возврат ЗаголовокОшибки + ТекстСообщенияПользовательНеНайденВСправочнике(ИмяПользователя); - КонецЕсли; - - Если ТекущийПользователь = Неопределено - ИЛИ ТекущийВнешнийПользователь = Неопределено Тогда - - Возврат ЗаголовокОшибки + ТекстСообщенияПользовательНеНайденВСправочнике(ИмяПользователя) + Символы.ПС - + НСтр("ru = 'Возникла внутренняя ошибка при поиске пользователя.'"); - КонецЕсли; - - Значения = Новый Структура; - Значения.Вставить("ТекущийПользователь", ТекущийПользователь); - Значения.Вставить("ТекущийВнешнийПользователь", ТекущийВнешнийПользователь); - - Возврат Значения; - -КонецФункции - // Вызывается при начале работы системы, чтобы проверить возможность выполнения авторизации и // вызвать заполнение значений параметров сеанса ТекущийПользователь и ТекущийВнешнийПользователь. // Также вызывается при входе в область данных. @@ -364,7 +184,7 @@ // Функция АвторизоватьТекущегоПользователя(ПриНачалеРаботыСистемы = Ложь, РегистрироватьВЖурнале = Ложь) Экспорт - Если НЕ ПриНачалеРаботыСистемы Тогда + Если Не ПриНачалеРаботыСистемы Тогда ОбновитьПовторноИспользуемыеЗначения(); КонецЕсли; @@ -916,6 +736,7 @@ Иначе + КлючПредупрежденияБезопасности = КлючПредупрежденияБезопасностиПриЗапуске(); Если ЗначениеЗаполнено(КлючПредупрежденияБезопасности) Тогда Параметры.Вставить("КлючПредупрежденияБезопасности", КлючПредупрежденияБезопасности); @@ -1230,7 +1051,7 @@ Обработчик.Процедура = "ПользователиСлужебный.ПеренестиНастройкиДлиныИСложностиПаролейКонфигуратора"; Обработчик = Обработчики.Добавить(); - Обработчик.Версия = "2.3.2.72"; + Обработчик.Версия = "2.3.4.4"; Обработчик.ОбщиеДанные = Истина; Обработчик.РежимВыполнения = "Оперативно"; Обработчик.Процедура = "ПользователиСлужебный.ДобавитьАдминистраторамПравоОткрытияВнешнихОтчетовИОбработок"; @@ -1408,21 +1229,20 @@ // регистра сведений НаборыЗначенийДоступа. // // Для автоматической подготовки содержимого процедуры следует -// воспользоваться инструментами разработчика для подсистемы. -// Управление доступом. +// воспользоваться инструментами разработчика для подсистемы Управление доступом. // // Параметры: -// Описание - Строка, многострочная строка формата <Таблица>.<Право>.<ВидДоступа>[.Таблица объекта]. -// Например, Документ.ПриходнаяНакладная.Чтение.Организации -// Документ.ПриходнаяНакладная.Чтение.Контрагенты -// Документ.ПриходнаяНакладная.Изменение.Организации -// Документ.ПриходнаяНакладная.Изменение.Контрагенты -// Документ.ЭлектронныеПисьма.Чтение.Объект.Документ.ЭлектронныеПисьма -// Документ.ЭлектронныеПисьма.Изменение.Объект.Документ.ЭлектронныеПисьма -// Документ.Файлы.Чтение.Объект.Справочник.ПапкиФайлов -// Документ.Файлы.Чтение.Объект.Документ.ЭлектронноеПисьмо -// Документ.Файлы.Изменение.Объект.Справочник.ПапкиФайлов -// Документ.Файлы.Изменение.Объект.Документ.ЭлектронноеПисьмо +// Описание - Строка, многострочная строка формата <Таблица>.<Право>.<ВидДоступа>[.Таблица объекта], +// например, "Документ.ПриходнаяНакладная.Чтение.Организации", +// "Документ.ПриходнаяНакладная.Чтение.Контрагенты", +// "Документ.ПриходнаяНакладная.Изменение.Организации", +// "Документ.ПриходнаяНакладная.Изменение.Контрагенты", +// "Документ.ЭлектронныеПисьма.Чтение.Объект.Документ.ЭлектронныеПисьма", +// "Документ.ЭлектронныеПисьма.Изменение.Объект.Документ.ЭлектронныеПисьма", +// "Документ.Файлы.Чтение.Объект.Справочник.ПапкиФайлов", +// "Документ.Файлы.Чтение.Объект.Документ.ЭлектронноеПисьмо", +// "Документ.Файлы.Изменение.Объект.Справочник.ПапкиФайлов", +// "Документ.Файлы.Изменение.Объект.Документ.ЭлектронноеПисьмо". // Вид доступа Объект предопределен, как литерал. Этот вид доступа используется в // шаблонах ограничений доступа, как "ссылка" на другой объект, по которому // ограничивается текущий объект таблицы. @@ -1430,8 +1250,8 @@ // которые используются для этого вида доступа. Т.е. перечислить типы, // которые соответствуют полю, использованному в шаблоне ограничения доступа // в паре с видом доступа "Объект". При перечислении типов по виду доступа "Объект" -// нужно перечислить только те типы поля, которые есть у поля. -// РегистрыСведений.НаборыЗначенийДоступа.Объект, остальные типы лишние. +// нужно перечислить только те типы поля, которые есть +// у поля РегистрыСведений.НаборыЗначенийДоступа.Объект, остальные типы лишние. // Процедура ПриЗаполненииВидовОграниченийПравОбъектовМетаданных(Описание) Экспорт @@ -1525,9 +1345,9 @@ // Вызывает обновление представления внешнего пользователя при изменении // представления его объекта авторизации. // -// В состав подписки следует включить типы объектов авторизации: -// Метаданные.Справочники.ВнешниеПользователи.Реквизиты.ОбъектАвторизации.Тип. -// Например: Справочник.ФизическиеЛица, Справочник.Контрагенты. +// В состав подписки следует включить типы объектов авторизации: +// "Метаданные.Справочники.ВнешниеПользователи.Реквизиты.ОбъектАвторизации.Тип". +// Например: "СправочникОбъект.ФизическиеЛица", "СправочникОбъект.Контрагенты". // Процедура ОбновитьПредставлениеВнешнегоПользователяПриЗаписи(Знач Объект, Отказ) Экспорт @@ -2177,6 +1997,7 @@ ТекстОшибки); КонецЕсли; + ТекстОшибки = ""; СохраняемоеЗначениеПароля = СохраняемоеЗначениеСтрокиПароля(НовыйПароль); Блокировка = Новый БлокировкаДанных; @@ -2204,55 +2025,59 @@ КонецЕсли; Если ПользователиСлужебныйПовтИсп.Настройки().ОбщиеНастройкиВхода - И ЗначениеЗаполнено(НастройкиВхода.ЗапретитьПовторениеПароляСредиПоследних) Тогда + И ЗначениеЗаполнено(НастройкиВхода.ЗапретитьПовторениеПароляСредиПоследних) + И ИспользованныеПароли.Найти(СохраняемоеЗначениеПароля) <> Неопределено Тогда - Если ИспользованныеПароли.Найти(СохраняемоеЗначениеПароля) <> Неопределено Тогда - ОтменитьТранзакцию(); - Возврат НСтр("ru = 'Новый пароль использовался ранее.'"); - КонецЕсли; - ИспользованныеПароли.Добавить(СохраняемоеЗначениеПароля); - Пока ИспользованныеПароли.Количество() > НастройкиВхода.ЗапретитьПовторениеПароляСредиПоследних Цикл - ИспользованныеПароли.Удалить(0); - КонецЦикла; - Иначе - ИспользованныеПароли.Очистить(); - КонецЕсли; - Если ВызовИзФормыСменаПароля И Параметры.ТолькоПроверить Тогда - ОтменитьТранзакцию(); - Возврат ""; - КонецЕсли; - - Если ВызовИзФормыСменаПароля Тогда - ОписаниеПользователяИБ = Новый Структура; - ОписаниеПользователяИБ.Вставить("Действие", "Записать"); - ОписаниеПользователяИБ.Вставить("Пароль", НовыйПароль); + ТекстОшибки = НСтр("ru = 'Новый пароль использовался ранее.'"); - ТекущийОбъект = Пользователь.ПолучитьОбъект(); - ТекущийОбъект.ДополнительныеСвойства.Вставить("ОписаниеПользователяИБ", ОписаниеПользователяИБ); - Если Параметры.ПриВходеВПрограмму Тогда - ТекущийОбъект.ДополнительныеСвойства.Вставить("СменаПароляПриВходеВПрограмму"); - КонецЕсли; - Если ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда - Если ДополнительныеПараметры.ЭтоТекущийПользовательИБ Тогда - ТекущийОбъект.ДополнительныеСвойства.Вставить("ПарольПользователяСервиса", СтарыйПароль); - Иначе - ТекущийОбъект.ДополнительныеСвойства.Вставить("ПарольПользователяСервиса", Параметры.ПарольПользователяСервиса); + ИначеЕсли Не (ВызовИзФормыСменаПароля И Параметры.ТолькоПроверить) Тогда + + Если ВызовИзФормыСменаПароля Тогда + ОписаниеПользователяИБ = Новый Структура; + ОписаниеПользователяИБ.Вставить("Действие", "Записать"); + ОписаниеПользователяИБ.Вставить("Пароль", НовыйПароль); + + ТекущийОбъект = Пользователь.ПолучитьОбъект(); + ТекущийОбъект.ДополнительныеСвойства.Вставить("ОписаниеПользователяИБ", + ОписаниеПользователяИБ); + + Если Параметры.ПриВходеВПрограмму Тогда + ТекущийОбъект.ДополнительныеСвойства.Вставить("СменаПароляПриВходеВПрограмму"); КонецЕсли; - ТекущийОбъект.ДополнительныеСвойства.Вставить("СинхронизироватьССервисом", Истина); + Если ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда + Если ДополнительныеПараметры.ЭтоТекущийПользовательИБ Тогда + ТекущийОбъект.ДополнительныеСвойства.Вставить("ПарольПользователяСервиса", + СтарыйПароль); + Иначе + ТекущийОбъект.ДополнительныеСвойства.Вставить("ПарольПользователяСервиса", + Параметры.ПарольПользователяСервиса); + КонецЕсли; + ТекущийОбъект.ДополнительныеСвойства.Вставить("СинхронизироватьССервисом", Истина); + КонецЕсли; + Попытка + ТекущийОбъект.Записать(); + Исключение + Параметры.ПарольПользователяСервиса = Неопределено; + ВызватьИсключение; + КонецПопытки; + Иначе + СведенияОПользователе.ДатаНачалаИспользованияПароля = Неопределено; + Если Параметры.Пользователь.ДополнительныеСвойства.Свойство("СменаПароляПриВходеВПрограмму") Тогда + СведенияОПользователе.ПотребоватьСменуПароляПриВходе = Ложь; + КонецЕсли; + Если ПользователиСлужебныйПовтИсп.Настройки().ОбщиеНастройкиВхода + И ЗначениеЗаполнено(НастройкиВхода.ЗапретитьПовторениеПароляСредиПоследних) Тогда + + ИспользованныеПароли.Добавить(СохраняемоеЗначениеПароля); + Пока ИспользованныеПароли.Количество() > НастройкиВхода.ЗапретитьПовторениеПароляСредиПоследних Цикл + ИспользованныеПароли.Удалить(0); + КонецЦикла; + Иначе + ИспользованныеПароли.Очистить(); + КонецЕсли; + СведенияОПользователе.ИспользованныеПароли = Новый ХранилищеЗначения(ИспользованныеПароли); + НаборЗаписей.Записать(); КонецЕсли; - Попытка - ТекущийОбъект.Записать(); - Исключение - Параметры.ПарольПользователяСервиса = Неопределено; - ВызватьИсключение; - КонецПопытки; - Иначе - СведенияОПользователе.ДатаНачалаИспользованияПароля = Неопределено; - Если Параметры.Пользователь.ДополнительныеСвойства.Свойство("СменаПароляПриВходеВПрограмму") Тогда - СведенияОПользователе.ПотребоватьСменуПароляПриВходе = Ложь; - КонецЕсли; - СведенияОПользователе.ИспользованныеПароли = Новый ХранилищеЗначения(ИспользованныеПароли); - НаборЗаписей.Записать(); КонецЕсли; ЗафиксироватьТранзакцию(); @@ -2270,12 +2095,12 @@ НСтр("ru = 'Не удалось сменить пароль пользователя ""%1"" по причине: |%2'"), Пользователь, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке))); - Возврат КраткоеПредставлениеОшибки(ИнформацияОбОшибке); + Параметры.Вставить("ОшибкаЗаписанаВЖурналРегистрации"); КонецЕсли; ВызватьИсключение; КонецПопытки; - Возврат ""; + Возврат ТекстОшибки; КонецФункции @@ -2285,8 +2110,8 @@ Возврат НСтр("ru = 'Надежный пароль: |- имеет не менее 7 символов; - |- содержит любые 3 из 4-х типов символов: заглавные буквы, - | строчные буквы, цифры, специальные символы; + |- содержит любые 3 из 4-х типов символов: заглавные + | буквы, строчные буквы, цифры, специальные символы; |- не совпадает с именем (для входа).'"); КонецФункции @@ -2294,6 +2119,22 @@ //////////////////////////////////////////////////////////////////////////////// // Процедуры и функции работы с пользователями. +// Только для внутреннего использования. +Функция АвторизованныйПользователь() Экспорт + + УстановитьПривилегированныйРежим(Истина); + + Если Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда + ТекстОшибки = ТекстСообщенияТекущийПользовательНедоступенВСеансеБезРазделителей(); + ВызватьИсключение ТекстОшибки; + КонецЕсли; + + Возврат ?(ЗначениеЗаполнено(ПараметрыСеанса.ТекущийПользователь), + ПараметрыСеанса.ТекущийПользователь, + ПараметрыСеанса.ТекущийВнешнийПользователь); + +КонецФункции + // Возвращает сохраняемое значение пароля для указанного пароля. // // Параметры: @@ -2574,7 +2415,7 @@ ПараметрыОбработки.Вставить("УровеньДоступа", УровеньДоступа); // ПередНачаломОбработкиПользователяИБ - поддержка модели сервиса. - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ПользователиВМоделиСервиса") Тогда МодульПользователиСлужебныйВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ПользователиСлужебныйВМоделиСервиса"); МодульПользователиСлужебныйВМоделиСервиса.ПередНачаломОбработкиПользователяИБ(ПользовательОбъект, ПараметрыОбработки); КонецЕсли; @@ -2785,7 +2626,7 @@ КонецЕсли; // ПослеНачалаОбработкиПользователяИБ - поддержка модели сервиса. - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ПользователиВМоделиСервиса") Тогда МодульПользователиСлужебныйВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ПользователиСлужебныйВМоделиСервиса"); МодульПользователиСлужебныйВМоделиСервиса.ПослеНачалаОбработкиПользователяИБ(ПользовательОбъект, ПараметрыОбработки); КонецЕсли; @@ -2805,7 +2646,7 @@ ПроверитьИзмененияРеквизитовПользователя(ПользовательОбъект, ПараметрыОбработки); // ПередЗавершениемОбработкиПользователяИБ - поддержка модели сервиса. - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ПользователиВМоделиСервиса") Тогда МодульПользователиСлужебныйВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ПользователиСлужебныйВМоделиСервиса"); МодульПользователиСлужебныйВМоделиСервиса.ПередЗавершениемОбработкиПользователяИБ(ПользовательОбъект, ПараметрыОбработки); КонецЕсли; @@ -2817,7 +2658,7 @@ ОбновлятьРоли = Истина; // ПриЗавершенииОбработкиПользователяИБ - поддержка модели сервиса. - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ПользователиВМоделиСервиса") Тогда МодульПользователиСлужебныйВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ПользователиСлужебныйВМоделиСервиса"); МодульПользователиСлужебныйВМоделиСервиса.ПриЗавершенииОбработкиПользователяИБ( ПользовательОбъект, ПараметрыОбработки, ОбновлятьРоли); @@ -2984,7 +2825,7 @@ // Создает пользователя <Не указан>. // // Возвращаемое значение: -// СправочникСсылка.Пользователи. +// СправочникСсылка.Пользователи - ссылка на пользователя <Не указан>. // Функция СоздатьНеуказанногоПользователя() Экспорт @@ -4346,7 +4187,6 @@ ПараметрыВида = МодульУправлениеКонтактнойИнформацией.ПараметрыВидаКонтактнойИнформации("АдресЭлектроннойПочты"); ПараметрыВида.Вид = "EmailПользователя"; - ПараметрыВида.Подсказка = НСтр("ru='Адрес электронной почты пользователя'"); ПараметрыВида.МожноИзменятьСпособРедактирования = Истина; ПараметрыВида.РазрешитьВводНесколькихЗначений = Истина; ПараметрыВида.Порядок = 1; @@ -4354,7 +4194,6 @@ ПараметрыВида = МодульУправлениеКонтактнойИнформацией.ПараметрыВидаКонтактнойИнформации("Телефон"); ПараметрыВида.Вид = "ТелефонПользователя"; - ПараметрыВида.Подсказка = НСтр("ru='Контактный телефон пользователя'"); ПараметрыВида.МожноИзменятьСпособРедактирования = Истина; ПараметрыВида.РазрешитьВводНесколькихЗначений = Истина; ПараметрыВида.Порядок = 2; @@ -4601,7 +4440,7 @@ КонецПроцедуры -// Вызывается при переходе на новую версию конфигурации 2.3.2.72. +// Вызывается при переходе на новую версию конфигурации 2.3.4.4. Процедура ДобавитьАдминистраторамПравоОткрытияВнешнихОтчетовИОбработок() Экспорт Если ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() И Не ОбщегоНазначенияПовтИсп.ЭтоАвтономноеРабочееМесто() Тогда @@ -4652,6 +4491,27 @@ КонецПроцедуры +//////////////////////////////////////////////////////////////////////////////// +// Работа с настройками пользователей. + +// Вызывается из обработки НастройкиПользователей и формирует +// список настроек пользователей. +// +Процедура ЗаполнитьСпискиНастроек(Параметры, АдресХранилища) Экспорт + + Обработки.НастройкиПользователей.ЗаполнитьСпискиНастроек(Параметры); + + Результат = Новый Структура; + Результат.Вставить("НастройкиВнешнегоВида"); + Результат.Вставить("НастройкиОтчетовДерево"); + Результат.Вставить("ПрочиеНастройкиДерево"); + Результат.Вставить("ПользовательскиеВариантыОтчетов"); + + ЗаполнитьЗначенияСвойств(Результат, Параметры); + ПоместитьВоВременноеХранилище(Результат, АдресХранилища); + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Прочие пользовательские настройки. @@ -4777,6 +4637,210 @@ КонецФункции +Функция ЗначенияПараметровСеансаТекущийПользователь() + + Если Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда + Возврат ТекстСообщенияТекущийПользовательНедоступенВСеансеБезРазделителей(); + КонецЕсли; + + ЗаголовокОшибки = НСтр("ru = 'Не удалось установить параметр сеанса ТекущийПользователь.'") + Символы.ПС; + + НачатьТранзакцию(); + Попытка + СведенияОПользователе = НайтиТекущегоПользователяВСправочнике(); + + Если СведенияОПользователе.СоздатьПользователя Тогда + СоздатьТекущегоПользователяВСправочнике(СведенияОПользователе); + КонецЕсли; + + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + + Если Не СведенияОПользователе.СоздатьПользователя + И Не СведенияОПользователе.ПользовательНайден Тогда + + Возврат ЗаголовокОшибки + ТекстСообщенияПользовательНеНайденВСправочнике( + СведенияОПользователе.ИмяПользователя); + КонецЕсли; + + Если СведенияОПользователе.ТекущийПользователь = Неопределено + Или СведенияОПользователе.ТекущийВнешнийПользователь = Неопределено Тогда + + Возврат ЗаголовокОшибки + ТекстСообщенияПользовательНеНайденВСправочнике( + СведенияОПользователе.ИмяПользователя) + Символы.ПС + + НСтр("ru = 'Возникла внутренняя ошибка при поиске пользователя.'"); + КонецЕсли; + + Значения = Новый Структура; + Значения.Вставить("ТекущийПользователь", СведенияОПользователе.ТекущийПользователь); + Значения.Вставить("ТекущийВнешнийПользователь", СведенияОПользователе.ТекущийВнешнийПользователь); + + Возврат Значения; + +КонецФункции + +Функция ТекстСообщенияТекущийПользовательНедоступенВСеансеБезРазделителей() + + Возврат + НСтр("ru = 'Недопустимое получение параметра сеанса ТекущийПользователь + |в сеансе без указания всех разделителей.'"); + +КонецФункции + +Функция НайтиТекущегоПользователяВСправочнике() + + Результат = Новый Структура; + Результат.Вставить("ИмяПользователя", Неопределено); + Результат.Вставить("ПолноеИмяПользователя", Неопределено); + Результат.Вставить("ИдентификаторПользователяИБ", Неопределено); + Результат.Вставить("ПользовательНайден", Истина); + Результат.Вставить("СоздатьПользователя", Ложь); + Результат.Вставить("СсылкаНового", Неопределено); + Результат.Вставить("Служебный", Ложь); + Результат.Вставить("ТекущийПользователь", Неопределено); + Результат.Вставить("ТекущийВнешнийПользователь", Справочники.ВнешниеПользователи.ПустаяСсылка()); + + ТекущийПользовательИБ = ПользователиИнформационнойБазы.ТекущийПользователь(); + + Если ПустаяСтрока(ТекущийПользовательИБ.Имя) Тогда + СвойстваНеуказанногоПользователя = СвойстваНеуказанногоПользователя(); + + Результат.ИмяПользователя = СвойстваНеуказанногоПользователя.ПолноеИмя; + Результат.ПолноеИмяПользователя = СвойстваНеуказанногоПользователя.ПолноеИмя; + Результат.СсылкаНового = СвойстваНеуказанногоПользователя.СтандартнаяСсылка; + + Если СвойстваНеуказанногоПользователя.Ссылка = Неопределено Тогда + Результат.ПользовательНайден = Ложь; + Результат.СоздатьПользователя = Истина; + Результат.Служебный = Истина; + Результат.ИдентификаторПользователяИБ = ""; + Иначе + Результат.ТекущийПользователь = СвойстваНеуказанногоПользователя.Ссылка; + КонецЕсли; + + Возврат Результат; + КонецЕсли; + + Результат.ИмяПользователя = ТекущийПользовательИБ.Имя; + Результат.ИдентификаторПользователяИБ = ТекущийПользовательИБ.УникальныйИдентификатор; + + Пользователи.НайтиНеоднозначныхПользователейИБ(Неопределено, Результат.ИдентификаторПользователяИБ); + + Запрос = Новый Запрос; + Запрос.Параметры.Вставить("ИдентификаторПользователяИБ", Результат.ИдентификаторПользователяИБ); + + Запрос.Текст = + "ВЫБРАТЬ ПЕРВЫЕ 1 + | ВнешниеПользователи.Ссылка КАК Ссылка + |ИЗ + | Справочник.ВнешниеПользователи КАК ВнешниеПользователи + |ГДЕ + | ВнешниеПользователи.ИдентификаторПользователяИБ = &ИдентификаторПользователяИБ"; + Выборка = Запрос.Выполнить().Выбрать(); + + Если Выборка.Следующий() Тогда + + Если Не ВнешниеПользователи.ИспользоватьВнешнихПользователей() Тогда + Возврат НСтр("ru = 'Внешние пользователи отключены.'"); + КонецЕсли; + + Результат.ТекущийПользователь = Справочники.Пользователи.ПустаяСсылка(); + Результат.ТекущийВнешнийПользователь = Выборка.Ссылка; + + Возврат Результат; + КонецЕсли; + + Запрос.Текст = + "ВЫБРАТЬ ПЕРВЫЕ 1 + | Пользователи.Ссылка КАК Ссылка + |ИЗ + | Справочник.Пользователи КАК Пользователи + |ГДЕ + | Пользователи.ИдентификаторПользователяИБ = &ИдентификаторПользователяИБ"; + Выборка = Запрос.Выполнить().Выбрать(); + + Если Выборка.Следующий() Тогда + Результат.ТекущийПользователь = Выборка.Ссылка; + Возврат Результат; + КонецЕсли; + + РазделениеВключено = ОбщегоНазначенияПовтИсп.РазделениеВключено(); + + Если Не РолиАдминистратораДоступны() Тогда + Результат.ПользовательНайден = Ложь; + Возврат Результат; + КонецЕсли; + + Результат.ИдентификаторПользователяИБ = ТекущийПользовательИБ.УникальныйИдентификатор; + Результат.ПолноеИмяПользователя = ТекущийПользовательИБ.ПолноеИмя; + + ПользовательПоНаименованию = СсылкаПользователяПоПолномуНаименованию( + Результат.ПолноеИмяПользователя); + + Если ПользовательПоНаименованию <> Неопределено Тогда + Результат.ТекущийПользователь = ПользовательПоНаименованию; + Иначе + Результат.ПользовательНайден = Ложь; + Результат.СоздатьПользователя = Истина; + КонецЕсли; + + Возврат Результат; + +КонецФункции + +Процедура СоздатьТекущегоПользователяВСправочнике(СведенияОПользователе) + + НачатьТранзакцию(); + Попытка + Если СведенияОПользователе.СсылкаНового = Неопределено Тогда + СведенияОПользователе.СсылкаНового = Справочники.Пользователи.ПолучитьСсылку(); + КонецЕсли; + + СведенияОПользователе.ТекущийПользователь = СведенияОПользователе.СсылкаНового; + + ПараметрыСеанса.ТекущийПользователь = СведенияОПользователе.ТекущийПользователь; + ПараметрыСеанса.ТекущийВнешнийПользователь = СведенияОПользователе.ТекущийВнешнийПользователь; + ПараметрыСеанса.АвторизованныйПользователь = СведенияОПользователе.ТекущийПользователь; + + НовыйПользователь = Справочники.Пользователи.СоздатьЭлемент(); + НовыйПользователь.Служебный = СведенияОПользователе.Служебный; + НовыйПользователь.Наименование = СведенияОПользователе.ПолноеИмяПользователя; + НовыйПользователь.УстановитьСсылкуНового(СведенияОПользователе.СсылкаНового); + + Если ЗначениеЗаполнено(СведенияОПользователе.ИдентификаторПользователяИБ) Тогда + + ОписаниеПользователяИБ = Новый Структура; + ОписаниеПользователяИБ.Вставить("Действие", "Записать"); + ОписаниеПользователяИБ.Вставить("УникальныйИдентификатор", + СведенияОПользователе.ИдентификаторПользователяИБ); + + НовыйПользователь.ДополнительныеСвойства.Вставить( + "ОписаниеПользователяИБ", ОписаниеПользователяИБ); + КонецЕсли; + + Обработчики = ОбщегоНазначения.ОбработчикиСлужебногоСобытия("СтандартныеПодсистемы.Пользователи\ПриСозданииПользователяВМоментВхода"); + Для Каждого Обработчик Из Обработчики Цикл + Обработчик.Модуль.ПриСозданииПользователяВМоментВхода(НовыйПользователь); + КонецЦикла; + + НовыйПользователь.Записать(); + + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ОчищаемыеПараметры = Новый Массив; + ОчищаемыеПараметры.Добавить("ТекущийПользователь"); + ОчищаемыеПараметры.Добавить("ТекущийВнешнийПользователь"); + ОчищаемыеПараметры.Добавить("АвторизованныйПользователь"); + ПараметрыСеанса.Очистить(ОчищаемыеПараметры); + ВызватьИсключение; + КонецПопытки; + +КонецПроцедуры + Функция ТекстСообщенияПользовательНеНайденВСправочнике(ИмяПользователя) Если ВнешниеПользователи.ИспользоватьВнешнихПользователей() Тогда @@ -4786,10 +4850,10 @@ | |Обратитесь к администратору.'"); Иначе - ШаблонСообщенияОбОшибке - = НСтр("ru = 'Пользователь ""%1"" не найден в справочнике ""Пользователи"". - | - |Обратитесь к администратору.'"); + ШаблонСообщенияОбОшибке = + НСтр("ru = 'Пользователь ""%1"" не найден в справочнике ""Пользователи"". + | + |Обратитесь к администратору.'"); КонецЕсли; Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонСообщенияОбОшибке, ИмяПользователя); @@ -4886,20 +4950,25 @@ // ОбновитьСоставыГруппВнешнихПользователей. // // Параметры: -// Таблица - полное имя объекта метаданных. +// Таблица - полное имя объекта метаданных. // // Возвращаемое значение: -// ТаблицаЗначений (Ссылка, Родитель). +// ТаблицаЗначений - с колонками: +// * Ссылка - ссылка на элемент справочника. +// * Родитель - ссылка на родителя элемента справочника. // Функция СсылкиВИерархииРодителей(Таблица) // Подготовка состава групп родителей. - Запрос = Новый Запрос( + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ | СсылкиРодителей.Ссылка КАК Ссылка, | СсылкиРодителей.Родитель КАК Родитель |ИЗ - | " + Таблица + " КАК СсылкиРодителей"); + | &Таблица КАК СсылкиРодителей"; + Запрос.Текст = СтрЗаменить(Запрос.Текст, "&Таблица", Таблица); + СсылкиРодителей = Запрос.Выполнить().Выгрузить(); СсылкиРодителей.Индексы.Добавить("Родитель"); СсылкиВИерархииРодителей = СсылкиРодителей.Скопировать(Новый Массив); @@ -5463,7 +5532,6 @@ И НазначениеРолей.ТолькоДляПользователейСистемы.Получить(ИмяРоли) <> Неопределено Тогда ТекстШаблона = НСтр("ru = '""%1"" (предназначена только для пользователей системы)'"); - Иначе Если ОписаниеРоли.ЭтоУдаляемаяРоль Тогда Продолжить; @@ -5730,7 +5798,9 @@ УстановитьПривилегированныйРежим(Истина); ПараметрыАдминистрирования = СтандартныеПодсистемыСервер.ПараметрыАдминистрирования(); - РешениеПринято = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыАдминистрирования, "ПринятоРешениеПоОткрытиюВнешнихОтчетовИОбработок"); + РешениеПринято = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры( + ПараметрыАдминистрирования, + "ПринятоРешениеПоОткрытиюВнешнихОтчетовИОбработок"); УстановитьПривилегированныйРежим(Ложь); ЭтоАдминистраторСистемы = Пользователи.ЭтоПолноправныйПользователь(, Истина, Ложь); @@ -5805,9 +5875,9 @@ ИЛИ ТипЗнч(ЭлементДанных) = Тип("СправочникОбъект.ВнешниеПользователи") Тогда СписокСвойств = - "ИдентификаторПользователяИБ, - |Подготовлен, - |СвойстваПользователяИБ"; + "ИдентификаторПользователяИБ, + |Подготовлен, + |СвойстваПользователяИБ"; ЗаполнитьЗначенияСвойств(ЭлементДанных, ОбщегоНазначения.ЗначенияРеквизитовОбъекта( ЭлементДанных.Ссылка, СписокСвойств)); @@ -6307,15 +6377,6 @@ ВызватьИсключение ТекстОшибки; КонецЕсли; - // Поддержка обратной совместимости до версии "2.3.3" (начало). - Если Не ПользовательОбъект.ДополнительныеСвойства.Свойство("СозданиеАдминистратора") - И РолиАдминистратораДоступны(ПользовательИБ) Тогда - - ПользовательОбъект.ДополнительныеСвойства.Вставить("СозданиеАдминистратора", - НСтр("ru = 'Запись пользователя с ролями администратора.'")); - КонецЕсли; - // Поддержка обратной совместимости до версии "2.3.3" (окончание). - Если ПользовательОбъект.ДополнительныеСвойства.Свойство("СозданиеАдминистратора") И ЗначениеЗаполнено(ПользовательОбъект.ДополнительныеСвойства.СозданиеАдминистратора) И РолиАдминистратораДоступны(ПользовательИБ) Тогда @@ -7067,12 +7128,6 @@ БылУстановленАдминистративныйДоступ = Параметры.КоллекцияРолей.НайтиСтроки( Новый Структура("Роль", "ПолныеПрава")).Количество() > 0; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда - МодульУправлениеДоступомСлужебный = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступомСлужебный"); - Иначе - МодульУправлениеДоступомСлужебный = Неопределено; - КонецЕсли; - // Обработка всех. КоллекцияРолей = Параметры.КоллекцияРолей; КоллекцияРолей.Очистить(); @@ -7082,9 +7137,7 @@ Если ИмяРоли = "ПолныеПрава" Или ИмяРоли = "АдминистраторСистемы" Или НедоступныеРоли.Получить(ИмяРоли) <> Неопределено - Или ВРег(Лев(ИмяРоли, СтрДлина("Удалить"))) = ВРег("Удалить") - Или МодульУправлениеДоступомСлужебный <> Неопределено - И МодульУправлениеДоступомСлужебный.ЭтоПрофильнаяРоль(ИмяРоли) Тогда + Или ВРег(Лев(ИмяРоли, СтрДлина("Удалить"))) = ВРег("Удалить") Тогда Продолжить; КонецЕсли; diff --git a/SSL/src/CommonModules/ПользователиСлужебныйКлиент/Module.bsl b/SSL/src/CommonModules/ПользователиСлужебныйКлиент/Module.bsl index 2c1f1bb33..aace794be 100644 --- a/SSL/src/CommonModules/ПользователиСлужебныйКлиент/Module.bsl +++ b/SSL/src/CommonModules/ПользователиСлужебныйКлиент/Module.bsl @@ -85,28 +85,6 @@ КонецПроцедуры -// Выполняется при интерактивном начале работы пользователя с областью данных или в локальном режиме. -// Вызывается после завершения действий ПриНачалеРаботыСистемы. -// Используется для подключения обработчиков ожидания, которые не должны вызываться -// в случае интерактивных действий перед и при начале работы системы. -// -// Начальная страница (рабочий стол) в этот момент еще не открыта, поэтому запрещено открывать -// формы напрямую, а следует использовать для этих целей обработчик ожидания. -// Запрещено использовать это событие для интерактивного взаимодействия с пользователем -// (ПоказатьВопрос и аналогичные действия). Для этих целей следует использовать -// событие ПриНачалеРаботыСистемы, который поддерживает продолжение своего выполнения. -// -Процедура ПослеНачалаРаботыСистемы() Экспорт - - ПараметрыРаботыКлиента = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиентаПриЗапуске(); - Ключ = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыРаботыКлиента, "КлючПредупрежденияБезопасности"); - Если ЗначениеЗаполнено(Ключ) Тогда - // Небольшая задержка чтобы платформа успела отрисовать текущее окно, поверх которого выводится окно предупреждения. - ПодключитьОбработчикОжидания("ПоказатьПредупреждениеБезопасностиПослеЗапуска", 0.3, Истина); - КонецЕсли; - -КонецПроцедуры - // Проверяет авторизацию пользователя и уведомляет об ошибке. Процедура ПередНачаломРаботыСистемыДоАвторизации(Параметры) Экспорт @@ -135,6 +113,28 @@ КонецПроцедуры +// Выполняется при интерактивном начале работы пользователя с областью данных или в локальном режиме. +// Вызывается после завершения действий ПриНачалеРаботыСистемы. +// Используется для подключения обработчиков ожидания, которые не должны вызываться +// в случае интерактивных действий перед и при начале работы системы. +// +// Начальная страница (рабочий стол) в этот момент еще не открыта, поэтому запрещено открывать +// формы напрямую, а следует использовать для этих целей обработчик ожидания. +// Запрещено использовать это событие для интерактивного взаимодействия с пользователем +// (ПоказатьВопрос и аналогичные действия). Для этих целей следует использовать +// событие ПриНачалеРаботыСистемы, который поддерживает продолжение своего выполнения. +// +Процедура ПослеНачалаРаботыСистемы() Экспорт + + ПараметрыРаботыКлиента = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиентаПриЗапуске(); + Ключ = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыРаботыКлиента, "КлючПредупрежденияБезопасности"); + Если ЗначениеЗаполнено(Ключ) Тогда + // Небольшая задержка чтобы платформа успела отрисовать текущее окно, поверх которого выводится окно предупреждения. + ПодключитьОбработчикОжидания("ПоказатьПредупреждениеБезопасностиПослеЗапуска", 0.3, Истина); + КонецЕсли; + +КонецПроцедуры + // Обработчик ожидания проверяет, что срок действия учетной записи истек и нужно завершить работу. Процедура ПриВыполненииСтандартныхПериодическихПроверок(Параметры, ОбработкаПродолжения) Экспорт @@ -217,7 +217,7 @@ КонецПроцедуры -// Записывает в форму результат выбора назначения +// Записывает в форму результат выбора назначения. Процедура ПослеВыбораНазначения(РезультатЗакрытия, ДополнительныеПараметры) Экспорт Если РезультатЗакрытия = Неопределено Тогда diff --git a/SSL/src/CommonModules/ПользователиСлужебныйПовтИсп/Module.bsl b/SSL/src/CommonModules/ПользователиСлужебныйПовтИсп/Module.bsl index d37e1b76b..f254b2022 100644 --- a/SSL/src/CommonModules/ПользователиСлужебныйПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/ПользователиСлужебныйПовтИсп/Module.bsl @@ -213,19 +213,11 @@ ЗаполнитьПодсистемыИРоли(Дерево.Строки, , НедоступныеРоли); КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда - МодульУправлениеДоступомСлужебный = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступомСлужебный"); - Иначе - МодульУправлениеДоступомСлужебный = Неопределено; - КонецЕсли; - // Добавление ненайденных ролей. Для Каждого Роль Из Метаданные.Роли Цикл Если НедоступныеРоли.Получить(Роль.Имя) <> Неопределено - Или ВРег(Лев(Роль.Имя, СтрДлина("Удалить"))) = ВРег("Удалить") - Или МодульУправлениеДоступомСлужебный <> Неопределено - И МодульУправлениеДоступомСлужебный.ЭтоПрофильнаяРоль(Роль.Имя) Тогда + Или ВРег(Лев(Роль.Имя, СтрДлина("Удалить"))) = ВРег("Удалить") Тогда Продолжить; КонецЕсли; @@ -245,6 +237,30 @@ КонецФункции +// См. Пользователи.СвойстваПроверяемогоПользователяИБ. +Функция СвойстваТекущегоПользователяИБ() Экспорт + + ПользовательИБ = ПользователиИнформационнойБазы.ТекущийПользователь(); + + Свойства = Новый Структура; + Свойства.Вставить("УказанТекущийПользовательИБ", Истина); + Свойства.Вставить("УникальныйИдентификатор", ПользовательИБ.УникальныйИдентификатор); + Свойства.Вставить("Имя", ПользовательИБ.Имя); + + Свойства.Вставить("ПравоАдминистрирование", ?(ПривилегированныйРежим(), + ПравоДоступа("Администрирование", Метаданные, ПользовательИБ), + ПравоДоступа("Администрирование", Метаданные))); + + Свойства.Вставить("РольДоступнаАдминистраторСистемы", + РольДоступна(Пользователи.РольАдминистратораСистемы(Истина))); // Не заменять на РолиДоступны. + + Свойства.Вставить("РольДоступнаПолныеПрава", + РольДоступна(Метаданные.Роли.ПолныеПрава)); // Не заменять на РолиДоступны. + + Возврат Новый ФиксированнаяСтруктура(Свойства); + +КонецФункции + //////////////////////////////////////////////////////////////////////////////// // Вспомогательные процедуры и функции. diff --git a/SSL/src/CommonModules/ПоставляемыеДанные/Module.bsl b/SSL/src/CommonModules/ПоставляемыеДанные/Module.bsl index bff582f89..a73b9e31c 100644 --- a/SSL/src/CommonModules/ПоставляемыеДанные/Module.bsl +++ b/SSL/src/CommonModules/ПоставляемыеДанные/Module.bsl @@ -636,9 +636,15 @@ АдресСервиса = URL + "/ws/SuppliedData?wsdl"; - Возврат ОбщегоНазначения.WSПрокси(АдресСервиса, - "http://www.1c.ru/SaaS/1.0/WS", "SuppliedData", , ИмяПользователя, ПарольПользователя); - + ПараметрыПодключения = ОбщегоНазначения.ПараметрыПодключенияWSПрокси(); + ПараметрыПодключения.АдресWSDL = АдресСервиса; + ПараметрыПодключения.URIПространстваИмен = "http://www.1c.ru/SaaS/1.0/WS"; + ПараметрыПодключения.ИмяСервиса = "SuppliedData"; + ПараметрыПодключения.ИмяПользователя = ИмяПользователя; + ПараметрыПодключения.Пароль = ПарольПользователя; + + Возврат ОбщегоНазначения.СоздатьWSПрокси(ПараметрыПодключения); + КонецФункции // Получить запрос, возвращающий ссылки на данные с указанными характеристиками. diff --git a/SSL/src/CommonModules/ПрефиксацияОбъектовКлиентСервер/Module.bsl b/SSL/src/CommonModules/ПрефиксацияОбъектовКлиентСервер/Module.bsl index 4ec8d5215..28c281f57 100644 --- a/SSL/src/CommonModules/ПрефиксацияОбъектовКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/ПрефиксацияОбъектовКлиентСервер/Module.bsl @@ -83,7 +83,7 @@ // Функция УдалитьЛидирующиеНулиИзНомераОбъекта(Знач НомерОбъекта) Экспорт - ПользовательскийПрефикс = ПолучитьПользовательскийПрефикс(НомерОбъекта); + ПользовательскийПрефикс = ПользовательскийПрефикс(НомерОбъекта); Если НомерСодержитСтандартныйПрефикс(НомерОбъекта) Тогда @@ -166,7 +166,7 @@ // Параметры: // НомерОбъекта - Строка - номер или код объекта из которого требуется получить пользовательский префикс. // -Функция ПолучитьПользовательскийПрефикс(Знач НомерОбъекта) Экспорт +Функция ПользовательскийПрефикс(Знач НомерОбъекта) Экспорт // Возвращаемое значение функции (пользовательский префикс). Результат = ""; @@ -205,12 +205,13 @@ // отбрасывает пользовательские префиксы (опционально), // удаляет лидирующие нули в номере объекта. // -Функция ПолучитьНомерНаПечать(Знач НомерОбъекта, УдалитьПрефиксИнформационнойБазы = Ложь, УдалитьПользовательскийПрефикс = Ложь) Экспорт +Функция НомерНаПечать(Знач НомерОбъекта, УдалитьПрефиксИнформационнойБазы = Ложь, УдалитьПользовательскийПрефикс = Ложь) Экспорт // {Обработчик: ПриПолученииНомераНаПечать} Начало СтандартнаяОбработка = Истина; - ПрефиксацияОбъектовКлиентСерверПереопределяемый.ПриПолученииНомераНаПечать(НомерОбъекта, СтандартнаяОбработка); + ПрефиксацияОбъектовКлиентСерверПереопределяемый.ПриПолученииНомераНаПечать(НомерОбъекта, СтандартнаяОбработка, + УдалитьПрефиксИнформационнойБазы, УдалитьПользовательскийПрефикс); Если СтандартнаяОбработка = Ложь Тогда Возврат НомерОбъекта; @@ -233,6 +234,20 @@ Возврат НомерОбъекта; КонецФункции +#Область УстаревшиеПроцедурыИФункции + +// Устарела. Следует использовать ПользовательскийПрефикс. +Функция ПолучитьПользовательскийПрефикс(Знач НомерОбъекта) Экспорт + Возврат ПользовательскийПрефикс(НомерОбъекта); +КонецФункции + +// Устарела. Следует использовать НомерНаПечать. +Функция ПолучитьНомерНаПечать(Знач НомерОбъекта, УдалитьПрефиксИнформационнойБазы = Ложь, УдалитьПользовательскийПрефикс = Ложь) Экспорт + Возврат НомерНаПечать(НомерОбъекта, УдалитьПрефиксИнформационнойБазы, УдалитьПользовательскийПрефикс); +КонецФункции + +#КонецОбласти + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git a/SSL/src/CommonModules/ПрефиксацияОбъектовКлиентСерверПереопределяемый/Module.bsl b/SSL/src/CommonModules/ПрефиксацияОбъектовКлиентСерверПереопределяемый/Module.bsl index d731c46a0..5a3fd520e 100644 --- a/SSL/src/CommonModules/ПрефиксацияОбъектовКлиентСерверПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ПрефиксацияОбъектовКлиентСерверПереопределяемый/Module.bsl @@ -10,16 +10,22 @@ // В обработчике можно переопределить стандартное поведение системы при формировании номера на печать. // // Параметры: -// НомерОбъекта - Строка - номер или код объекта, который обрабатывается. -// СтандартнаяОбработка - Булево - флаг стандартной обработки; если установить значение флага в Ложь, -// то стандартная обработка формирования номера на печать выполняться не будет. -// +// НомерОбъекта - Строка - номер или код объекта, который обрабатывается. +// СтандартнаяОбработка - Булево - флаг стандартной обработки; если установить значение флага в Ложь, +// то стандартная обработка формирования номера на печать выполняться +// не будет. +// УдалитьПрефиксИнформационнойБазы - Булево - признак удаления префикса информационной базы; +// по умолчанию равен Ложь. +// УдалитьПользовательскийПрефикс - Булево - признак удаления пользовательского префикса; +// по умолчанию равен Ложь. +// // Пример реализации кода обработчика: -// -// НомерОбъекта = ПрефиксацияОбъектовКлиентСервер.УдалитьПользовательскиеПрефиксыИзНомераОбъекта(НомерОбъекта); -// СтандартнаяОбработка = Ложь; -// -Процедура ПриПолученииНомераНаПечать(НомерОбъекта, СтандартнаяОбработка) Экспорт +// +// НомерОбъекта = ПрефиксацияОбъектовКлиентСервер.УдалитьПользовательскиеПрефиксыИзНомераОбъекта(НомерОбъекта); +// СтандартнаяОбработка = Ложь; +// +Процедура ПриПолученииНомераНаПечать(НомерОбъекта, СтандартнаяОбработка, + УдалитьПрефиксИнформационнойБазы, УдалитьПользовательскийПрефикс) Экспорт КонецПроцедуры diff --git a/SSL/src/CommonModules/ПрефиксацияОбъектовСлужебный/Module.bsl b/SSL/src/CommonModules/ПрефиксацияОбъектовСлужебный/Module.bsl index cde8989c1..9d3a3ed2a 100644 --- a/SSL/src/CommonModules/ПрефиксацияОбъектовСлужебный/Module.bsl +++ b/SSL/src/CommonModules/ПрефиксацияОбъектовСлужебный/Module.bsl @@ -44,7 +44,7 @@ Выборка.Следующий(); ПрефиксОрганизацииПослеИзменения = Неопределено; - ПерепрефиксацияОбъектов.ПриОпределенииПрефиксаОрганизации(ОрганизацияПослеИзменения, ПрефиксОрганизацииПослеИзменения); + ПрефиксацияОбъектовСобытия.ПриОпределенииПрефиксаОрганизации(ОрганизацияПослеИзменения, ПрефиксОрганизацииПослеИзменения); // Если задана пустая ссылка на организацию. ПрефиксОрганизацииПослеИзменения = ?(ПрефиксОрганизацииПослеИзменения = Ложь, "", ПрефиксОрганизацииПослеИзменения); @@ -86,7 +86,7 @@ Выборка.Следующий(); ПрефиксОрганизацииПослеИзменения = Неопределено; - ПерепрефиксацияОбъектов.ПриОпределенииПрефиксаОрганизации(ОрганизацияПослеИзменения, ПрефиксОрганизацииПослеИзменения); + ПрефиксацияОбъектовСобытия.ПриОпределенииПрефиксаОрганизации(ОрганизацияПослеИзменения, ПрефиксОрганизацииПослеИзменения); // Если задана пустая ссылка на организацию. ПрефиксОрганизацииПослеИзменения = ?(ПрефиксОрганизацииПослеИзменения = Ложь, "", ПрефиксОрганизацииПослеИзменения); diff --git a/SSL/src/CommonModules/ПрефиксацияОбъектовСобытия/Module.bsl b/SSL/src/CommonModules/ПрефиксацияОбъектовСобытия/Module.bsl index f575ab5da..4b0fa43fe 100644 --- a/SSL/src/CommonModules/ПрефиксацияОбъектовСобытия/Module.bsl +++ b/SSL/src/CommonModules/ПрефиксацияОбъектовСобытия/Module.bsl @@ -131,6 +131,45 @@ КонецПроцедуры +//////////////////////////////////////////////////////////////////////////////// +// Получение префикса + +// Возвращает префикс этой информационной базы. +// +Процедура ПриОпределенииПрефиксаИнформационнойБазы(ПрефиксИнформационнойБазы) Экспорт + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда + МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); + ПрефиксИнформационнойБазы = МодульОбменДаннымиСервер.ПрефиксИнформационнойБазы(); + Иначе + ПрефиксИнформационнойБазы = ""; + КонецЕсли; + +КонецПроцедуры + +// Возвращает префикс организации. +// +// Параметры: +// Организация - СправочникСсылка.Организации - организация для которой надо получить префикс. +// ПрефиксОрганизации - Строка - префикс организации. +// +Процедура ПриОпределенииПрефиксаОрганизации(Знач Организация, ПрефиксОрганизации) Экспорт + + Если Метаданные.ОпределяемыеТипы.Организация.Тип.СодержитТип(Тип("Строка")) Тогда + ПрефиксОрганизации = ""; + Возврат; + КонецЕсли; + + ИмяФункциональнойОпции = "ПрефиксыОрганизаций"; + ИмяПараметраФункциональнойОпции = "Организация"; + + + + ПрефиксОрганизации = ПолучитьФункциональнуюОпцию(ИмяФункциональнойОпции, + Новый Структура(ИмяПараметраФункциональнойОпции, Организация)); + +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -142,7 +181,7 @@ Если УстановитьПрефиксИнформационнойБазы Тогда - ПерепрефиксацияОбъектов.ПриОпределенииПрефиксаИнформационнойБазы(ПрефиксИнформационнойБазы); + ПриОпределенииПрефиксаИнформационнойБазы(ПрефиксИнформационнойБазы); ДополнитьСтрокуНулямиСлева(ПрефиксИнформационнойБазы, 2); КонецЕсли; @@ -151,7 +190,7 @@ Если РеквизитОрганизацияДоступен(Источник) Тогда - ПерепрефиксацияОбъектов.ПриОпределенииПрефиксаОрганизации( + ПриОпределенииПрефиксаОрганизации( Источник[ИмяРеквизитаОрганизация(Источник.Метаданные())], ПрефиксОрганизации); // Если задана пустая ссылка на организацию. Если ПрефиксОрганизации = Ложь Тогда diff --git a/SSL/src/CommonModules/ПрисоединенныеФайлы/Module.bsl b/SSL/src/CommonModules/ПрисоединенныеФайлы/Module.bsl index 7aa541fd5..7d01536d0 100644 --- a/SSL/src/CommonModules/ПрисоединенныеФайлы/Module.bsl +++ b/SSL/src/CommonModules/ПрисоединенныеФайлы/Module.bsl @@ -6,6 +6,7 @@ #Область ПрограммныйИнтерфейс // Возвращает двоичные данные присоединенного файла. +// Если двоичные данные файла не найдены в информационной базе или в томах, будет вызвано исключение. // // Параметры: // ПрисоединенныйФайл - СправочникСсылка - ссылка на справочник с именем "*ПрисоединенныеФайлы". @@ -322,165 +323,8 @@ ПрисоединенныйФайл.СтатусИзвлеченияТекста = СтатусИзвлеченияТекста; ПрисоединенныйФайл.ТекстХранилище = Новый ХранилищеЗначения(ИзвлеченныйТекст); ПрисоединенныйФайл.Автор = Автор; - ПрисоединенныйФайл.Заполнить(Неопределено); - ПрисоединенныйФайл.Записать(); - Если СвояТранзакцияОткрыта Тогда - ЗафиксироватьТранзакцию(); - КонецЕсли; - - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - - Если СвояТранзакцияОткрыта Тогда - ОтменитьТранзакцию(); - КонецЕсли; - - ШаблонСообщения = НСтр("ru = 'Ошибка при добавлении присоединенного файла ""%1"": - |%2'"); - КомментарийЖурналаРегистрации = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - ШаблонСообщения, - ИмяБезРасширения + "." + РасширениеБезТочки, - ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); - - ЗаписьЖурналаРегистрации( - НСтр("ru = 'Файлы.Добавление присоединенного файла'", - ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), - УровеньЖурналаРегистрации.Ошибка, - , - , - КомментарийЖурналаРегистрации); - - ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - ШаблонСообщения, - ИмяБезРасширения + "." + РасширениеБезТочки, - КраткоеПредставлениеОшибки(ИнформацияОбОшибке)); - КонецПопытки; - - Возврат ПрисоединенныйФайл.Ссылка; - -КонецФункции - -// Устарела. Следует использовать функцию ДобавитьПрисоединенныйФайл. -// -// Создает объект в справочнике для хранения файла и заполняет его реквизиты переданными свойствами. -// -// Параметры: -// ВладелецФайлов - Ссылка - объект, к которому добавляется файл. -// ИмяБезРасширения - Строка - имя файла без расширения. -// РасширениеБезТочки - Строка - расширение файла (без точки вначале). -// ВремяИзменения - Дата - (не используется) дата и время изменения файла (местное время). -// ВремяИзмененияУниверсальное - Дата - дата и время изменения файла (UTC+0:00), -// если не указана, тогда используется ТекущаяУниверсальнаяДата(). -// АдресФайлаВоВременномХранилище - Строка - адрес, указывающий на двоичные данные во временном хранилище. -// АдресВременногоХранилищаТекста - Строка - адрес, указывающий на извлеченный текст из файла во временном хранилище. -// Описание - Строка - текстовое описание файла. -// -// НоваяСсылкаНаФайл - Неопределено - создать новую ссылку на файл в стандартном справочнике -// или в нестандартном, но единственном справочнике. Когда у владельца файла несколько -// справочников, требуется обязательно передать ссылку, иначе будет вызвано -// исключение. -// - Ссылка - ссылка на элемент справочника хранения файлов, -// которую следует использовать для добавляемого файла. -// Должна соответствовать одному из типов справочников хранения файлов владельца -// файлов. -// -// Возвращаемое значение: -// СправочникСсылка - ссылка на созданный присоединенный файл. -// -Функция ДобавитьФайл(Знач ВладелецФайлов, - Знач ИмяБезРасширения, - Знач РасширениеБезТочки = Неопределено, - Знач ВремяИзменения = Неопределено, - Знач ВремяИзмененияУниверсальное = Неопределено, - Знач АдресФайлаВоВременномХранилище, - Знач АдресВременногоХранилищаТекста = "", - Знач Описание = "", - Знач НоваяСсылкаНаФайл = Неопределено) Экспорт - - // Если расширение не задано явно, выделяем его из имени файла. - Если РасширениеБезТочки = Неопределено Тогда - ЧастиИмениФайла = СтрРазделить(ИмяБезРасширения, ".", Ложь); - Если ЧастиИмениФайла.Количество() > 1 Тогда - РасширениеБезТочки = ЧастиИмениФайла[ЧастиИмениФайла.Количество()-1]; - ИмяБезРасширения = Лев(ИмяБезРасширения, СтрДлина(ИмяБезРасширения) - (СтрДлина(РасширениеБезТочки)+1)); - КонецЕсли; - КонецЕсли; - - Если Не ЗначениеЗаполнено(ВремяИзмененияУниверсальное) - Или ВремяИзмененияУниверсальное > ТекущаяУниверсальнаяДата() Тогда - ВремяИзмененияУниверсальное = ТекущаяУниверсальнаяДата(); - КонецЕсли; - - ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресФайлаВоВременномХранилище); - - ЗаголовокОшибки = НСтр("ru = 'Ошибка при добавлении присоединенного файла.'"); - - Если НоваяСсылкаНаФайл = Неопределено Тогда - ИмяСправочника = ПрисоединенныеФайлыСлужебный.ИмяСправочникаХраненияФайлов(ВладелецФайлов, "", ЗаголовокОшибки, - НСтр("ru = 'В этом случае параметр ""НоваяСсылкаНаФайл"" должен быть указан.'")); - - НоваяСсылкаНаФайл = Справочники[ИмяСправочника].ПолучитьСсылку(); - Иначе - Если Не Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(НоваяСсылкаНаФайл)) - Или Не ЗначениеЗаполнено(НоваяСсылкаНаФайл) Тогда - - ВызватьИсключение НСтр("ru = 'Ошибка при добавлении присоединенного файла. - |Ссылка на новый файл не заполнена.'"); - КонецЕсли; - - ИмяСправочника = ПрисоединенныеФайлыСлужебный.ИмяСправочникаХраненияФайлов( - ВладелецФайлов, НоваяСсылкаНаФайл.Метаданные().Имя, ЗаголовокОшибки); - КонецЕсли; - - ПрисоединенныйФайл = Справочники[ИмяСправочника].СоздатьЭлемент(); - ПрисоединенныйФайл.УстановитьСсылкуНового(НоваяСсылкаНаФайл); - - ПрисоединенныйФайл.ВладелецФайла = ВладелецФайлов; - ПрисоединенныйФайл.ДатаМодификацииУниверсальная = ВремяИзмененияУниверсальное; - ПрисоединенныйФайл.ДатаСоздания = ТекущаяДатаСеанса(); - ПрисоединенныйФайл.Описание = Описание; - ПрисоединенныйФайл.ПодписанЭП = Ложь; - ПрисоединенныйФайл.Наименование = ИмяБезРасширения; - ПрисоединенныйФайл.Расширение = РасширениеБезТочки; - ПрисоединенныйФайл.ТипХраненияФайла = ФайловыеФункцииСлужебный.ТипХраненияФайлов(); - ПрисоединенныйФайл.Размер = ДвоичныеДанные.Размер(); - - СвояТранзакцияОткрыта = Ложь; - - Попытка - Если ПрисоединенныйФайл.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВИнформационнойБазе Тогда - НачатьТранзакцию(); - СвояТранзакцияОткрыта = Истина; - ПрисоединенныеФайлыСлужебный.ЗаписатьФайлВИнформационнуюБазу(НоваяСсылкаНаФайл, ДвоичныеДанные); - ПрисоединенныйФайл.Том = Справочники.ТомаХраненияФайлов.ПустаяСсылка(); - ПрисоединенныйФайл.ПутьКФайлу = ""; - Иначе - // Добавление в один из томов (где есть свободное место). - СведенияОФайле = ФайловыеФункцииСлужебный.ДобавитьФайлВТом(ДвоичныеДанные, ВремяИзмененияУниверсальное, - ИмяБезРасширения, РасширениеБезТочки, , ПрисоединенныйФайл.Зашифрован); - ПрисоединенныйФайл.Том = СведенияОФайле.Том; - ПрисоединенныйФайл.ПутьКФайлу = СведенияОФайле.ПутьКФайлу; - КонецЕсли; - - СтатусИзвлеченияТекста = Перечисления.СтатусыИзвлеченияТекстаФайлов.НеИзвлечен; - ИзвлеченныйТекст = ""; - - Если ЭтоАдресВременногоХранилища(АдресВременногоХранилищаТекста) Тогда - ИзвлеченныйТекст = ФайловыеФункцииСлужебный.ПолучитьСтрокуИзВременногоХранилища(АдресВременногоХранилищаТекста); - СтатусИзвлеченияТекста = Перечисления.СтатусыИзвлеченияТекстаФайлов.Извлечен; - - ИначеЕсли НЕ ФайловыеФункцииСлужебный.ИзвлекатьТекстыФайловНаСервере() Тогда - // Тексты извлекаются сразу, а не в фоновом задании. - СтатусИзвлеченияТекста = ПрисоединенныеФайлыСлужебный.ИзвлечьТекст( - ДвоичныеДанные, ПрисоединенныйФайл.Расширение, ИзвлеченныйТекст); - КонецЕсли; - - ПрисоединенныйФайл.СтатусИзвлеченияТекста = СтатусИзвлеченияТекста; - ПрисоединенныйФайл.ТекстХранилище = Новый ХранилищеЗначения(ИзвлеченныйТекст); - - ПрисоединенныйФайл.Заполнить(Неопределено); ПрисоединенныйФайл.Записать(); Если СвояТранзакцияОткрыта Тогда @@ -750,8 +594,8 @@ НоваяСтрока = ПрисоединенныйФайл.ЭлектронныеПодписи.Добавить(); ЗаполнитьЗначенияСвойств(НоваяСтрока, ЭПСтрока); КонецЦикла; - ПрисоединенныйФайл.Заполнить(Неопределено); + ПрисоединенныйФайл.Записать(); Если ПрисоединенныйФайл.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВИнформационнойБазе Тогда @@ -971,6 +815,166 @@ КонецПроцедуры +#Область УстаревшиеПроцедурыИФункции + +// Устарела. Следует использовать функцию ДобавитьПрисоединенныйФайл. +// +// Создает объект в справочнике для хранения файла и заполняет его реквизиты переданными свойствами. +// +// Параметры: +// ВладелецФайлов - Ссылка - объект, к которому добавляется файл. +// ИмяБезРасширения - Строка - имя файла без расширения. +// РасширениеБезТочки - Строка - расширение файла (без точки вначале). +// ВремяИзменения - Дата - (не используется) дата и время изменения файла (местное время). +// ВремяИзмененияУниверсальное - Дата - дата и время изменения файла (UTC+0:00), +// если не указана, тогда используется ТекущаяУниверсальнаяДата(). +// АдресФайлаВоВременномХранилище - Строка - адрес, указывающий на двоичные данные во временном хранилище. +// АдресВременногоХранилищаТекста - Строка - адрес, указывающий на извлеченный текст из файла во временном хранилище. +// Описание - Строка - текстовое описание файла. +// +// НоваяСсылкаНаФайл - Неопределено - создать новую ссылку на файл в стандартном справочнике +// или в нестандартном, но единственном справочнике. Когда у владельца файла несколько +// справочников, требуется обязательно передать ссылку, иначе будет вызвано +// исключение. +// - Ссылка - ссылка на элемент справочника хранения файлов, +// которую следует использовать для добавляемого файла. +// Должна соответствовать одному из типов справочников хранения файлов владельца +// файлов. +// +// Возвращаемое значение: +// СправочникСсылка - ссылка на созданный присоединенный файл. +// +Функция ДобавитьФайл(Знач ВладелецФайлов, + Знач ИмяБезРасширения, + Знач РасширениеБезТочки = Неопределено, + Знач ВремяИзменения = Неопределено, + Знач ВремяИзмененияУниверсальное = Неопределено, + Знач АдресФайлаВоВременномХранилище, + Знач АдресВременногоХранилищаТекста = "", + Знач Описание = "", + Знач НоваяСсылкаНаФайл = Неопределено) Экспорт + + // Если расширение не задано явно, выделяем его из имени файла. + Если РасширениеБезТочки = Неопределено Тогда + ЧастиИмениФайла = СтрРазделить(ИмяБезРасширения, ".", Ложь); + Если ЧастиИмениФайла.Количество() > 1 Тогда + РасширениеБезТочки = ЧастиИмениФайла[ЧастиИмениФайла.Количество()-1]; + ИмяБезРасширения = Лев(ИмяБезРасширения, СтрДлина(ИмяБезРасширения) - (СтрДлина(РасширениеБезТочки)+1)); + КонецЕсли; + КонецЕсли; + + Если Не ЗначениеЗаполнено(ВремяИзмененияУниверсальное) + Или ВремяИзмененияУниверсальное > ТекущаяУниверсальнаяДата() Тогда + ВремяИзмененияУниверсальное = ТекущаяУниверсальнаяДата(); + КонецЕсли; + + ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресФайлаВоВременномХранилище); + + ЗаголовокОшибки = НСтр("ru = 'Ошибка при добавлении присоединенного файла.'"); + + Если НоваяСсылкаНаФайл = Неопределено Тогда + ИмяСправочника = ПрисоединенныеФайлыСлужебный.ИмяСправочникаХраненияФайлов(ВладелецФайлов, "", ЗаголовокОшибки, + НСтр("ru = 'В этом случае параметр ""НоваяСсылкаНаФайл"" должен быть указан.'")); + + НоваяСсылкаНаФайл = Справочники[ИмяСправочника].ПолучитьСсылку(); + Иначе + Если Не Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(НоваяСсылкаНаФайл)) + Или Не ЗначениеЗаполнено(НоваяСсылкаНаФайл) Тогда + + ВызватьИсключение НСтр("ru = 'Ошибка при добавлении присоединенного файла. + |Ссылка на новый файл не заполнена.'"); + КонецЕсли; + + ИмяСправочника = ПрисоединенныеФайлыСлужебный.ИмяСправочникаХраненияФайлов( + ВладелецФайлов, НоваяСсылкаНаФайл.Метаданные().Имя, ЗаголовокОшибки); + КонецЕсли; + + ПрисоединенныйФайл = Справочники[ИмяСправочника].СоздатьЭлемент(); + ПрисоединенныйФайл.УстановитьСсылкуНового(НоваяСсылкаНаФайл); + + ПрисоединенныйФайл.ВладелецФайла = ВладелецФайлов; + ПрисоединенныйФайл.ДатаМодификацииУниверсальная = ВремяИзмененияУниверсальное; + ПрисоединенныйФайл.ДатаСоздания = ТекущаяДатаСеанса(); + ПрисоединенныйФайл.Описание = Описание; + ПрисоединенныйФайл.ПодписанЭП = Ложь; + ПрисоединенныйФайл.Наименование = ИмяБезРасширения; + ПрисоединенныйФайл.Расширение = РасширениеБезТочки; + ПрисоединенныйФайл.ТипХраненияФайла = ФайловыеФункцииСлужебный.ТипХраненияФайлов(); + ПрисоединенныйФайл.Размер = ДвоичныеДанные.Размер(); + + СвояТранзакцияОткрыта = Ложь; + + Попытка + Если ПрисоединенныйФайл.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВИнформационнойБазе Тогда + НачатьТранзакцию(); + СвояТранзакцияОткрыта = Истина; + ПрисоединенныеФайлыСлужебный.ЗаписатьФайлВИнформационнуюБазу(НоваяСсылкаНаФайл, ДвоичныеДанные); + ПрисоединенныйФайл.Том = Справочники.ТомаХраненияФайлов.ПустаяСсылка(); + ПрисоединенныйФайл.ПутьКФайлу = ""; + Иначе + // Добавление в один из томов (где есть свободное место). + СведенияОФайле = ФайловыеФункцииСлужебный.ДобавитьФайлВТом(ДвоичныеДанные, ВремяИзмененияУниверсальное, + ИмяБезРасширения, РасширениеБезТочки, , ПрисоединенныйФайл.Зашифрован); + ПрисоединенныйФайл.Том = СведенияОФайле.Том; + ПрисоединенныйФайл.ПутьКФайлу = СведенияОФайле.ПутьКФайлу; + КонецЕсли; + + СтатусИзвлеченияТекста = Перечисления.СтатусыИзвлеченияТекстаФайлов.НеИзвлечен; + ИзвлеченныйТекст = ""; + + Если ЭтоАдресВременногоХранилища(АдресВременногоХранилищаТекста) Тогда + ИзвлеченныйТекст = ФайловыеФункцииСлужебный.ПолучитьСтрокуИзВременногоХранилища(АдресВременногоХранилищаТекста); + СтатусИзвлеченияТекста = Перечисления.СтатусыИзвлеченияТекстаФайлов.Извлечен; + + ИначеЕсли НЕ ФайловыеФункцииСлужебный.ИзвлекатьТекстыФайловНаСервере() Тогда + // Тексты извлекаются сразу, а не в фоновом задании. + СтатусИзвлеченияТекста = ПрисоединенныеФайлыСлужебный.ИзвлечьТекст( + ДвоичныеДанные, ПрисоединенныйФайл.Расширение, ИзвлеченныйТекст); + КонецЕсли; + + ПрисоединенныйФайл.СтатусИзвлеченияТекста = СтатусИзвлеченияТекста; + ПрисоединенныйФайл.ТекстХранилище = Новый ХранилищеЗначения(ИзвлеченныйТекст); + ПрисоединенныйФайл.Заполнить(Неопределено); + ПрисоединенныйФайл.Записать(); + + Если СвояТранзакцияОткрыта Тогда + ЗафиксироватьТранзакцию(); + КонецЕсли; + + Исключение + ИнформацияОбОшибке = ИнформацияОбОшибке(); + + Если СвояТранзакцияОткрыта Тогда + ОтменитьТранзакцию(); + КонецЕсли; + + ШаблонСообщения = НСтр("ru = 'Ошибка при добавлении присоединенного файла ""%1"": + |%2'"); + КомментарийЖурналаРегистрации = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + ШаблонСообщения, + ИмяБезРасширения + "." + РасширениеБезТочки, + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); + + ЗаписьЖурналаРегистрации( + НСтр("ru = 'Файлы.Добавление присоединенного файла'", + ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, + , + , + КомментарийЖурналаРегистрации); + + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + ШаблонСообщения, + ИмяБезРасширения + "." + РасширениеБезТочки, + КраткоеПредставлениеОшибки(ИнформацияОбОшибке)); + КонецПопытки; + + Возврат ПрисоединенныйФайл.Ссылка; + +КонецФункции + +#КонецОбласти + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git a/SSL/src/CommonModules/ПрисоединенныеФайлыКлиент/Module.bsl b/SSL/src/CommonModules/ПрисоединенныеФайлыКлиент/Module.bsl index e31f60236..16cdaae4d 100644 --- a/SSL/src/CommonModules/ПрисоединенныеФайлыКлиент/Module.bsl +++ b/SSL/src/CommonModules/ПрисоединенныеФайлыКлиент/Module.bsl @@ -361,7 +361,7 @@ НапечататьФайлПриложением(ПараметрыВыполнения.ДанныеФайла, Результат.ПолноеИмяФайла); - // переходим к печати следующего файла + // переходим к печати следующего файла. ПараметрыВыполнения.НомерФайла = ПараметрыВыполнения.НомерФайла + 1; Обработчик = Новый ОписаниеОповещения("НапечататьФайлыВыполнение", ЭтотОбъект, ПараметрыВыполнения); ВыполнитьОбработкуОповещения(Обработчик); diff --git a/SSL/src/CommonModules/ПрисоединенныеФайлыПереопределяемый/Module.bsl b/SSL/src/CommonModules/ПрисоединенныеФайлыПереопределяемый/Module.bsl index 74027095e..9d9b66c78 100644 --- a/SSL/src/CommonModules/ПрисоединенныеФайлыПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ПрисоединенныеФайлыПереопределяемый/Module.bsl @@ -28,7 +28,7 @@ // МассивИсключений - Массив - метаданные, которые не должны выводиться в настройках очистки файлов. // // Например: -// МассивИсключений.Добавить(Метаданные.Справочники._ДемоНоменклатураПрисоединенныеФайлы); +// МассивИсключений.Добавить(Метаданные.Справочники.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы); // Процедура ПриОпределенииОбъектовИсключенияОчисткиФайлов(МассивИсключений) Экспорт @@ -40,21 +40,11 @@ // МассивИсключений -Массив - метаданные, которые не должны выводиться в настройках синхронизации файлов. // // Например: -// МассивИсключений.Добавить(Метаданные.Справочники._ДемоНоменклатураПрисоединенныеФайлы); +// МассивИсключений.Добавить(Метаданные.Справочники.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы); // Процедура ПриОпределенииОбъектовИсключенияСинхронизацииФайлов(МассивИсключений) Экспорт КонецПроцедуры -// Устарела.Следует использовать ПриОпределенииОбъектовИсключенияОчисткиФайлов. -// -Функция ОбъектыИсключенияПриОчисткеФайлов() Экспорт - - Массив = Новый Массив; - - Возврат Массив; - -КонецФункции - #КонецОбласти diff --git a/SSL/src/CommonModules/ПрисоединенныеФайлыСлужебный/Module.bsl b/SSL/src/CommonModules/ПрисоединенныеФайлыСлужебный/Module.bsl index 5579471cb..3feda4dd3 100644 --- a/SSL/src/CommonModules/ПрисоединенныеФайлыСлужебный/Module.bsl +++ b/SSL/src/CommonModules/ПрисоединенныеФайлыСлужебный/Module.bsl @@ -5,6 +5,106 @@ #Область СлужебныйПрограммныйИнтерфейс +// Используется при выгрузке файлов для перехода в сервис (БТС). +// +Процедура ВыгрузитьФайл(Знач ОбъектФайла, Знач ИмяНовогоФайла) Экспорт + + Если ОбъектФайла.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске Тогда + + ПолныйПуть = ФайловыеФункцииСлужебный.ПолныйПутьТома(ОбъектФайла.Том) + ОбъектФайла.ПутьКФайлу; + КопироватьФайл(ПолныйПуть, ИмяНовогоФайла); + + Иначе // Перечисления.ТипыХраненияФайлов.ВИнформационнойБаза + + ДвоичныеДанныеФайла = ПрисоединенныеФайлы.ПолучитьДвоичныеДанныеФайла(ОбъектФайла.Ссылка); + ДвоичныеДанныеФайла.Записать(ИмяНовогоФайла); + + КонецЕсли; + +КонецПроцедуры + +// Используется при загрузке файлов для переходе в сервис (БТС). +// +Процедура ЗагрузитьФайл(Знач ОбъектФайла, Знач ПутьКФайлу) Экспорт + + ДвоичныеДанные = Новый ДвоичныеДанные(ПутьКФайлу); + + Если ФайловыеФункцииСлужебный.ТипХраненияФайлов() = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске Тогда + + // Добавление файла в один из томов (где есть свободное место). + СведенияОФайле = ФайловыеФункцииСлужебный.ДобавитьФайлВТом(ДвоичныеДанные, ОбъектФайла.ДатаМодификацииУниверсальная, + ОбъектФайла.Наименование, ОбъектФайла.Расширение, ОбъектФайла.НомерВерсии, ОбъектФайла.Зашифрован); + ОбъектФайла.ПутьКФайлу = СведенияОФайле.ПутьКФайлу; + ОбъектФайла.Том = СведенияОФайле.Том; + ОбъектФайла.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске; + ОбъектФайла.ФайлХранилище = Новый ХранилищеЗначения(Неопределено); + + Иначе + + ОбъектФайла.ДополнительныеСвойства.Вставить("ДвоичныеДанныеФайла", ДвоичныеДанные); + ОбъектФайла.ФайлХранилище = Новый ХранилищеЗначения(Неопределено); + ОбъектФайла.Том = Справочники.ТомаХраненияФайлов.ПустаяСсылка(); + ОбъектФайла.ПутьКФайлу = ""; + ОбъектФайла.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВИнформационнойБазе; + + КонецЕсли; + +КонецПроцедуры + +// Обновляет свойства файла - двоичные данные, текст, дату изменения, +// а также другие необязательные свойства. +// +Процедура ОбновитьПрисоединенныйФайлОбъект(Знач ПрисоединенныйФайлОбъект, Знач ИнформацияОФайле) Экспорт + + РеквизитыЗначения = Новый Структура; + + Если ИнформацияОФайле.Свойство("ИмяБезРасширения") И ЗначениеЗаполнено(ИнформацияОФайле.ИмяБезРасширения) Тогда + РеквизитыЗначения.Вставить("Наименование", ИнформацияОФайле.ИмяБезРасширения); + КонецЕсли; + + Если НЕ ИнформацияОФайле.Свойство("ДатаМодификацииУниверсальная") + ИЛИ НЕ ЗначениеЗаполнено(ИнформацияОФайле.ДатаМодификацииУниверсальная) + ИЛИ ИнформацияОФайле.ДатаМодификацииУниверсальная > ТекущаяУниверсальнаяДата() Тогда + + // Заполнение текущей даты в формате универсального времени. + РеквизитыЗначения.Вставить("ДатаМодификацииУниверсальная", ТекущаяУниверсальнаяДата()); + Иначе + РеквизитыЗначения.Вставить("ДатаМодификацииУниверсальная", ИнформацияОФайле.ДатаМодификацииУниверсальная); + КонецЕсли; + + Если ИнформацияОФайле.Свойство("Редактирует") Тогда + РеквизитыЗначения.Вставить("Редактирует", ИнформацияОФайле.Редактирует); + КонецЕсли; + + Если ИнформацияОФайле.Свойство("Расширение") Тогда + РеквизитыЗначения.Вставить("Расширение", ИнформацияОФайле.Расширение); + КонецЕсли; + + ДвоичныеДанные = ПолучитьИзВременногоХранилища(ИнформацияОФайле.АдресФайлаВоВременномХранилище); + + РеквизитыЗначения.Вставить("СтатусИзвлеченияТекста", Перечисления.СтатусыИзвлеченияТекстаФайлов.НеИзвлечен); + ИзвлеченныйТекст = ""; + + Если ЭтоАдресВременногоХранилища(ИнформацияОФайле.АдресВременногоХранилищаТекста) Тогда + + ИзвлеченныйТекст = ФайловыеФункцииСлужебный.ПолучитьСтрокуИзВременногоХранилища( + ИнформацияОФайле.АдресВременногоХранилищаТекста); + + РеквизитыЗначения.СтатусИзвлеченияТекста = Перечисления.СтатусыИзвлеченияТекстаФайлов.Извлечен; + + ИначеЕсли НЕ ФайловыеФункцииСлужебный.ИзвлекатьТекстыФайловНаСервере() Тогда + // Тексты извлекаются сразу, а не в фоновом задании. + РеквизитыЗначения.СтатусИзвлеченияТекста = ИзвлечьТекст( + ДвоичныеДанные, ПрисоединенныйФайлОбъект.Расширение, ИзвлеченныйТекст); + КонецЕсли; + + РеквизитыЗначения.Вставить("ТекстХранилище", Новый ХранилищеЗначения(ИзвлеченныйТекст)); + + ОбновитьДвоичныеДанныеФайлаНаСервере( + ПрисоединенныйФайлОбъект, ДвоичныеДанные, РеквизитыЗначения); + +КонецПроцедуры + // Объявляет события подсистемы ПрисоединенныеФайлы: // // Серверные события: @@ -547,7 +647,7 @@ Иначе // Копируем файл из тома на диске в каталог создания начального образа. - ИмяКаталогаФайлов = ХранилищеОбщихНастроек.Загрузить("ОбменФайлами", "ВременныйКаталог"); + ИмяКаталогаФайлов = Строка(ХранилищеОбщихНастроек.Загрузить("ОбменФайлами", "ВременныйКаталог")); ПолныйПуть = ФайловыеФункцииСлужебный.ПолныйПутьТома(ЭлементДанных.Том) + ЭлементДанных.ПутьКФайлу; УникальныйИдентификатор = ЭлементДанных.Ссылка.УникальныйИдентификатор(); @@ -618,24 +718,6 @@ КонецПроцедуры -// Только для внутреннего использования. -// -Процедура ВыгрузитьФайл(Знач ОбъектФайла, Знач ИмяНовогоФайла) Экспорт - - Если ОбъектФайла.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске Тогда - - ПолныйПуть = ФайловыеФункцииСлужебный.ПолныйПутьТома(ОбъектФайла.Том) + ОбъектФайла.ПутьКФайлу; - КопироватьФайл(ПолныйПуть, ИмяНовогоФайла); - - Иначе // Перечисления.ТипыХраненияФайлов.ВИнформационнойБаза - - АдресВоВременномХранилище = ПрисоединенныеФайлы.ПолучитьДанныеФайла(ОбъектФайла.Ссылка).СсылкаНаДвоичныеДанныеФайла; - ПолучитьИзВременногоХранилища(АдресВоВременномХранилище).Записать(ИмяНовогоФайла); - - КонецЕсли; - -КонецПроцедуры - // Для служебного использования. Процедура ПриПолученииФайла(ЭлементДанных, ПолучениеЭлемента) @@ -718,34 +800,6 @@ КонецПроцедуры -// Только для внутреннего использования. -// -Процедура ЗагрузитьФайл(Знач ОбъектФайла, Знач ПутьКФайлу) Экспорт - - ДвоичныеДанные = Новый ДвоичныеДанные(ПутьКФайлу); - - Если ФайловыеФункцииСлужебный.ТипХраненияФайлов() = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске Тогда - - // Добавление файла в один из томов (где есть свободное место). - СведенияОФайле = ФайловыеФункцииСлужебный.ДобавитьФайлВТом(ДвоичныеДанные, ОбъектФайла.ДатаМодификацииУниверсальная, - ОбъектФайла.Наименование, ОбъектФайла.Расширение, ОбъектФайла.НомерВерсии, ОбъектФайла.Зашифрован); - ОбъектФайла.ПутьКФайлу = СведенияОФайле.ПутьКФайлу; - ОбъектФайла.Том = СведенияОФайле.Том; - ОбъектФайла.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске; - ОбъектФайла.ФайлХранилище = Новый ХранилищеЗначения(Неопределено); - - Иначе - - ОбъектФайла.ДополнительныеСвойства.Вставить("ДвоичныеДанныеФайла", ДвоичныеДанные); - ОбъектФайла.ФайлХранилище = Новый ХранилищеЗначения(Неопределено); - ОбъектФайла.Том = Справочники.ТомаХраненияФайлов.ПустаяСсылка(); - ОбъектФайла.ПутьКФайлу = ""; - ОбъектФайла.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВИнформационнойБазе; - - КонецЕсли; - -КонецПроцедуры - // Отменяет редактирование файла. // // Параметры: @@ -841,7 +895,7 @@ ИначеЕсли ВсеДокументы.СодержитТип(ТипЗнч(ТипОбъекта.ЗначениеПустойСсылки)) Тогда Документ = Метаданные.Документы[ТипОбъекта.Имя]; Для Каждого Реквизит Из Документ.Реквизиты Цикл - Если Реквизит.Тип = Новый ОписаниеТипов("Дата") Тогда + Если Реквизит.Тип.СодержитТип(Тип("Дата")) Тогда ТекстЗапроса = ТекстЗапроса + Символы.ПС + "РАЗНОСТЬДАТ(" + Реквизит.Имя + ", &ТекущаяДата, ДЕНЬ) Как ДнейДоУдаленияОт" + Реквизит.Имя + ","; КонецЕсли; ТекстЗапроса = ТекстЗапроса + Символы.ПС + "СправочникФайлы." + Реквизит.Имя + ","; @@ -957,6 +1011,8 @@ Выборка = РезультатЗапроса.Выбрать(); + ПолныйПутьТома = ФайловыеФункцииСлужебный.ПолныйПутьТома(Том); + Пока Выборка.Следующий() Цикл ВерсияСсылка = Выборка.Ссылка; @@ -969,10 +1025,11 @@ ПутьКФайлу = Лев(ПутьКФайлу, СтрДлина(ПутьКФайлу) - 1); КонецЕсли; - ПолныйПутьФайла = ФайловыеФункцииСлужебный.ПолныйПутьТома(Выборка.Том) + ПутьКФайлу; + ПолныйПутьФайла = ПолныйПутьТома + ПутьКФайлу; - Файл = Новый Файл(ПолныйПутьФайла); - Если Не Файл.Существует() Тогда + СуществующийФайл = ТаблицаФайловНаДиске.НайтиСтроки(Новый Структура("ПолноеИмя", ПолныйПутьФайла)); + + Если СуществующийФайл.Количество() = 0 Тогда НесуществующийФайл = ТаблицаФайловНаДиске.Добавить(); НесуществующийФайл.СтатусПроверки = НСтр("ru = 'Отсутствуют данные в томе на диске'"); НесуществующийФайл.Файл = ВерсияСсылка; @@ -985,7 +1042,6 @@ НесуществующийФайл.Количество = 1; Иначе - СуществующийФайл = ТаблицаФайловНаДиске.НайтиСтроки(Новый Структура("ПолноеИмя",ПолныйПутьФайла)); СуществующийФайл[0].Файл = ВерсияСсылка; СуществующийФайл[0].СтатусПроверки = НСтр("ru = 'Целостные данные'"); @@ -1010,18 +1066,19 @@ Попытка + ТекстОписания = НСтр("ru = 'Файл удален при очистке ненужных файлов.'") + + " " + Формат(ТекущаяДатаСеанса(),"ДЛФ=D") + Символы.ПС; + Если ФайлОбъект.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске Тогда ИмяФайлаСПутем = ФайловыеФункцииСлужебный.ПолныйПутьТома(ФайлОбъект.Том) + ФайлОбъект.ПутьКФайлу; ИмяФайлаСПутемДляУдаления = ИмяФайлаСПутем + ".del"; ФайлНаДиске = Новый Файл(ИмяФайлаСПутем); Если ФайлНаДиске.Существует() Тогда ФайлНаДиске.УстановитьТолькоЧтение(Ложь); - // Переместим файл во временный + // Переместим файл во временный. ПереместитьФайл(ИмяФайлаСПутем, ИмяФайлаСПутемДляУдаления); ФайлОбъект.Том = Справочники.ТомаХраненияФайлов.ПустаяСсылка(); ФайлОбъект.ПутьКФайлу = ""; - ТекстОписания = НСтр("ru = 'Файл удален при очистке ненужных файлов.'") - + " " + Формат(ТекущаяДатаСеанса(),"ДЛФ=D") + Символы.ПС; ФайлОбъект.Описание = ТекстОписания + ФайлОбъект.Описание; ФайлОбъект.Записать(); ФайлОбъект.УстановитьПометкуУдаления(Истина); @@ -1030,6 +1087,8 @@ КонецЕсли; Иначе УдалитьЗаписьИзРегистраПрисоединенныеФайлы(ФайлСсылка); + ФайлОбъект.Описание = ТекстОписания + ФайлОбъект.Описание; + ФайлОбъект.Записать(); ФайлОбъект.УстановитьПометкуУдаления(Истина); КонецЕсли; diff --git a/SSL/src/CommonModules/ПрисоединенныеФайлыСлужебныйКлиент/Module.bsl b/SSL/src/CommonModules/ПрисоединенныеФайлыСлужебныйКлиент/Module.bsl index dc5d64947..a05982d74 100644 --- a/SSL/src/CommonModules/ПрисоединенныеФайлыСлужебныйКлиент/Module.bsl +++ b/SSL/src/CommonModules/ПрисоединенныеФайлыСлужебныйКлиент/Module.bsl @@ -66,6 +66,7 @@ Если ПрисоединенныеФайлыМассив.Количество() > 0 Тогда ОповеститьОбИзменении(ПрисоединенныеФайлыМассив[0]); + ОповеститьОбИзменении(ВладелецФайла); Оповестить("Запись_ПрисоединенныйФайл", Новый Структура("ЭтоНовый, ВладелецФайла", Истина, ВладелецФайла), ПрисоединенныеФайлыМассив); КонецЕсли; @@ -200,7 +201,8 @@ Если ПрисоединенныеФайлыМассив.Количество() > 0 Тогда ОповеститьОбИзменении(ПрисоединенныеФайлыМассив[0]); - Оповестить("Запись_ПрисоединенныйФайл", + ОповеститьОбИзменении(ВладелецФайла); + Оповестить("Запись_ПрисоединенныйФайл", Новый Структура("ЭтоНовый, ВладелецФайла", Истина, ВладелецФайла), ПрисоединенныеФайлыМассив); КонецЕсли; @@ -1495,6 +1497,7 @@ ВладелецФайла = ДополнительныеПараметры.ВладелецФайла; ОповеститьОбИзменении(ПрисоединенныйФайл); + ОповеститьОбИзменении(ВладелецФайла); Оповестить("Запись_ПрисоединенныйФайл", Новый Структура("ЭтоНовый, ВладелецФайла", Истина, ВладелецФайла), ПрисоединенныйФайл); diff --git a/SSL/src/CommonModules/ПроверкаКонтрагентов/Module.bsl b/SSL/src/CommonModules/ПроверкаКонтрагентов/Module.bsl index 32aadb09a..be4b4e6cc 100644 --- a/SSL/src/CommonModules/ПроверкаКонтрагентов/Module.bsl +++ b/SSL/src/CommonModules/ПроверкаКонтрагентов/Module.bsl @@ -13,7 +13,7 @@ // // Параметры: // Параметры - Структура - Параметры запуска фонового задания. Ключи структуры: -// "Контрагент" - СправочникСсылка.<Контрагенты> - Проверяемый контрагент. +// "Контрагент" - ОпределяемыйТип.Контрагент - Проверяемый контрагент. // "ИНН" - Строка - ИНН Контрагента. // "КПП" - Строка - КПП Контрагента. // "Дата" - Дата - Дата, на которую выполняется проверка контрагента. Может быть не указана, @@ -33,12 +33,17 @@ КонецЕсли; ЗаполнитьЗначенияСвойств(НоваяСтрока, Параметры); + ЭтоПроверкаПоКнопке = Параметры.Свойство("ЭтоПроверкаПоКнопке") И Параметры.ЭтоПроверкаПоКнопке; + + ВыполнятьПредварительнуюПроверкуКонтрагента = Параметры.Свойство("ВыполнятьПредварительнуюПроверкуКонтрагента") + И Параметры.ВыполнятьПредварительнуюПроверкуКонтрагента; + ДополнительныеПараметры = Новый Структура(); ДополнительныеПараметры.Вставить("АдресХранилища", АдресХранилища); ДополнительныеПараметры.Вставить("ЭтоПроверкаСправочника", Истина); ДополнительныеПараметры.Вставить("СохранятьРезультатСразуПослеПроверки", Параметры.СохранятьРезультатСразуПослеПроверки); - ДополнительныеПараметры.Вставить("ВыполнятьПредварительнуюПроверкуКонтрагента", - Параметры.Свойство("ВыполнятьПредварительнуюПроверкуКонтрагента") И Параметры.ВыполнятьПредварительнуюПроверкуКонтрагента); + ДополнительныеПараметры.Вставить("ВыполнятьПредварительнуюПроверкуКонтрагента", ВыполнятьПредварительнуюПроверкуКонтрагента); + ДополнительныеПараметры.Вставить("ЭтоПроверкаПоКнопке", ЭтоПроверкаПоКнопке); ПроверитьВебСервисомФНС(ДанныеКонтрагентов, ДополнительныеПараметры); @@ -92,8 +97,8 @@ // - АдресХранилища - адрес, по которому будет сохранен результат проверки при проверке // в режиме ЭтоПроверкаСправочника = Истина. // - ВыполнятьПредварительнуюПроверкуКонтрагента - флаг, действующий при проверке -// в режиме ЭтоПроверкаСправочника = Истина, который показывает, что предварительная проверка -// ИНН, КПП и Даты уже была выполнена ранее и здесь проверку можно пропустить. +// в режиме ЭтоПроверкаСправочника = Истина, который показывает, что предварительная проверка ИНН, КПП +// и Даты уже была выполнена ранее и здесь проверку можно пропустить. Процедура ПроверитьВебСервисомФНС(ДанныеКонтрагентов, ДополнительныеПараметры) Экспорт ЭтоПроверкаОтчета = ДополнительныеПараметры.Свойство("ЭтоПроверкаОтчета") И ДополнительныеПараметры.ЭтоПроверкаОтчета; @@ -136,15 +141,18 @@ // "АдресХранилища" - Строка - Адрес, в который будет помещен результат проверки контрагента // "СохранятьРезультатСразуПослеПроверки" - Булево - Признак, указывающий нужно ли результат проверки контрагента // сразу сохранять в регистр. +// "ЭтоПроверкаПоКнопке" - Булево - Если Истина, то данные берутся не из кэша, а из Интернета. Процедура ПроверитьКонтрагентовВДокументе(Параметры) Экспорт ПроверяемыеКонтрагенты = Параметры.ДанныеКонтрагентов; АдресХранилища = Параметры.АдресХранилища; + ЭтоПроверкаПоКнопке = Параметры.Свойство("ЭтоПроверкаПоКнопке") И Параметры.ЭтоПроверкаПоКнопке; ДанныеКонтрагентов = ПроверяемыеКонтрагенты.Скопировать(); ДополнительныеПараметры = Новый Структура(); - ДополнительныеПараметры.Вставить("ЭтоПроверкаДокумента", Истина); + ДополнительныеПараметры.Вставить("ЭтоПроверкаДокумента", Истина); + ДополнительныеПараметры.Вставить("ЭтоПроверкаПоКнопке", ЭтоПроверкаПоКнопке); ПроверитьВебСервисомФНС(ДанныеКонтрагентов, ДополнительныеПараметры); @@ -258,8 +266,16 @@ Попытка - ФоновыеЗадания.Выполнить("ПроверкаКонтрагентов.ПроверитьКонтрагентовПослеВключенияПроверки", - , "ПроверкаПослеВключенияМеханизма", НСтр("ru = 'Проверка контрагентов'")); + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(Новый УникальныйИдентификатор); + ПараметрыВыполнения.КлючФоновогоЗадания = "ПроверкаПослеВключенияМеханизма"; + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Проверка контрагентов'"); + + ПараметрыПроцедуры = Новый Структура; + + ДлительныеОперации.ВыполнитьВФоне( + "ПроверкаКонтрагентов.ПроверитьКонтрагентовПослеВключенияПроверкиВФоне", + ПараметрыПроцедуры, + ПараметрыВыполнения); Исключение @@ -285,6 +301,13 @@ // - ИзКэша - результат проверки выбирается только из кэша. // - АктуальныеДанные - результат проверки получается только на основе данных, возвращенных веб-сервисом проверки. // - Смешанный - сначала выбираются данные из кэша, затем идет обращение к веб-сервису проверки. +// ДополнительныеПараметры - Структура - Может содержать один из следующих ключей. +// - ЭтоПроверкаДокумента. Особенность для документов: если дата документа больше текущей, то сервис ФСН +// выдает ошибку. Чтобы такого не было, документы с будущей датой проверяем на текущую дату. +// - ЭтоПроверкаОтчета. Для отчетов предварительная проверка не выполняется, все данные сразу уходят +// на веб-сервис ФНС. +// - ЭтоПроверкаСправочника. Для справочника часть состояний берется из кэша в режиме +// проверки ИзКэша или Смешанный. После проверки данные проверки сохраняются в регистр сведений. Процедура ВыполнитьПроверкуКонтрагентов(ПроверяемыеКонтрагенты, Знач ВидПроверки = "Смешанный", Знач ДополнительныеПараметры = Неопределено) Экспорт // Проверка корректности переданного параметра. @@ -300,7 +323,7 @@ ДополнительныеПараметры.Вставить("Смешанный", ВидПроверки = "Смешанный"); Если ПроверяемыеКонтрагенты.Колонки.Найти("Состояние") = Неопределено Тогда - ПроверяемыеКонтрагенты.Колонки.Добавить("Состояние",Новый ОписаниеТипов("ПеречислениеСсылка.СостоянияСуществованияКонтрагента")); + ПроверяемыеКонтрагенты.Колонки.Добавить("Состояние", Новый ОписаниеТипов("ПеречислениеСсылка.СостоянияСуществованияКонтрагента")); КонецЕсли; ДанныеКонтрагентов = ПроверяемыеКонтрагенты.Скопировать(); @@ -314,7 +337,7 @@ Иначе ЗаполнитьСостояния(ПроверяемыеКонтрагенты, ДанныеКонтрагентов); КонецЕсли; - + КонецПроцедуры #КонецОбласти @@ -328,9 +351,9 @@ // Параметры: // Описание - ТаблицаЗначений - таблица, хранящая описание расположения контрагентов в документе. // Ссылка - ДокументСсылка - Документ, в котором выполняется проверка контрагента. -// Элемент - Элемент коллекции ЭлементыФормы - Элемент, в котором находится проверяемый контрагент или счет-фактура. -// Контрагент - СправочникСсылка.<Контрагенты> - Проверяемый контрагент. -// ЭлементРодитель - Элемент коллекции ЭлементыФормы - Группа, которая содержит элемент с контрагентом или +// Элемент - ЭлементыФормы - Элемент, в котором находится проверяемый контрагент или счет-фактура. +// Контрагент - ОпределяемыйТип.Контрагент - Проверяемый контрагент. +// ЭлементРодитель - ЭлементыФормы - Группа, которая содержит элемент с контрагентом или // счетом-фактурой. // Данный элемент будет подкрашен по результату проверки контрагентов. Может не указываться. Процедура ДополнитьОписание( @@ -365,7 +388,7 @@ КонецЕсли; СтрокаОписания = Описание.Добавить(); - + // ТЧ СтрокаОписания.ИмяТаблицыФормы = ИмяТаблицыФормы; СтрокаОписания.ИмяТабличнойЧасти = ИмяРеквизита(Форма, ИмяТаблицыФормы); @@ -373,11 +396,12 @@ // Контрагент СтрокаОписания.ИмяПоляСКонтрагентом = ИмяПоляСКонтрагентом; СтрокаОписания.ИмяКолонкиСКонтрагентом = ИмяРеквизита(Форма, ИмяПоляСКонтрагентом); + СтрокаОписания.КонтрагентСкрытФункциональнойОпцией = ПолеКонтрагентаСкрытоФункциональнойОпцией(Форма, СтрокаОписания); // Дата СтрокаОписания.ИмяПоляСДатой = ИмяПоляСДатой; СтрокаОписания.ИмяКолонкиСДатой = ИмяРеквизита(Форма, ИмяПоляСДатой); - + КонецПроцедуры // Устанавливает текст и видимость предупреждения про тестовый режим работы сервиса. @@ -394,8 +418,10 @@ КонецПроцедуры // Тестовый режим работы сервиса завершился. +// // Возвращаемое значение: -// Булево - Истина, если тестовый режим работы сервиса завершился. +// Булево - Истина, если тестовый режим работы сервиса завершился. +// Функция ТестовыйРежимРаботыСервисаЗавершился() Экспорт Возврат Ложь; @@ -471,6 +497,7 @@ ПараметрыЗапуска.Вставить("ДанныеКонтрагентов", ДанныеКонтрагентов); ПараметрыЗапуска.Вставить("АдресХранилища", Форма.РеквизитыПроверкиКонтрагентов.АдресХранилища); ПараметрыЗапуска.Вставить("СохранятьРезультатСразуПослеПроверки", СохранятьРезультатСразуПослеПроверки); + ПараметрыЗапуска.Вставить("ЭтоПроверкаПоКнопке", Форма.РеквизитыПроверкиКонтрагентов.ЭтоПроверкаПоКнопке); Параметры = Новый Массив; Параметры.Добавить(ПараметрыЗапуска); @@ -587,7 +614,7 @@ Если Форма.РеквизитыПроверкиКонтрагентов.ИнициализацияВыполненаПолностью Тогда // Для документов с табличными частями. - Если ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВТабличнойЧасти(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВТабличнойЧасти Тогда ДанныеКонтрагентов = ДанныеКонтрагентовВДокументе(Форма); ТекущийОбъект.ДополнительныеСвойства.Вставить("ДанныеКонтрагентов", ДанныеКонтрагентов); @@ -640,7 +667,7 @@ Если Форма.РеквизитыПроверкиКонтрагентов.ИнициализацияВыполненаПолностью Тогда - Если ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВТабличнойЧасти(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВТабличнойЧасти Тогда ВосстановитьРезультатПроверкиКонтрагентовВТабличныхЧастяхПослеЗаписи(Форма, ТекущийОбъект); КонецЕсли; @@ -662,13 +689,15 @@ КонецПроцедуры -// Вспомогательный API. Инициализировать реквизиты проверки контрагента в форме документа. +// Вспомогательный API. Инициализировать реквизиты проверки контрагента в форме документа +// при создании на сервере документа. // // Параметры: // Форма - УправляемаяФорма - Форма документа, в котором выполняется проверка контрагентов. Процедура ИнициализироватьРеквизитыФормыДокумент(Форма) Экспорт ИнициализироватьРеквизитыПроверкиКонтрагентовВДокументе(Форма, Ложь); + Форма.РеквизитыПроверкиКонтрагентов.ЭтоПроверкаКонтрагентовПриОткрытии = Истина; КонецПроцедуры @@ -679,9 +708,15 @@ // Форма - УправляемаяФорма - Форма документа, в котором выполняется проверка контрагентов. Функция ОписаниеДокументов(Форма) Экспорт + Если НЕ Форма.РеквизитыПроверкиКонтрагентов.ИнициализацияВыполненаПолностью Тогда + // Принудительная инициализация. + ИнициализироватьРеквизитыПроверкиКонтрагентовВДокументе(Форма, Истина); + УправлениеФормойДокументаПриИнициализации(Форма); + КонецЕсли; + ОбщееОписание = ШаблонТаблицыОписания(); - Если ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВШапке(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВШапке Тогда Описание = ШаблонТаблицыОписания(); РаботаСКонтрагентамиПереопределяемый.СформироватьОписаниеДокументовСКонтрагентомВШапке(Форма, Описание); @@ -695,7 +730,7 @@ КонецЕсли; - Если ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСоСчетомФактуройВПодвале(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСоСчетомФактуройВПодвале Тогда Описание = ШаблонТаблицыОписания(); РаботаСКонтрагентамиПереопределяемый.СформироватьОписаниеДокументовСоСчетомФактуройВПодвале(Форма, Описание); @@ -709,7 +744,7 @@ КонецЕсли; - Если ПроверкаКонтрагентовКлиентСервер.ЭтоСчетФактура(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоСчетФактура Тогда Описание = ШаблонТаблицыОписания(); РаботаСКонтрагентамиПереопределяемый.СформироватьОписаниеСчетовФактур(Форма, Описание); @@ -740,7 +775,7 @@ // Ссылка - ДокументСсылка - Документ, в котором выполняется проверка контрагентов. // ДанныеКонтрагентов - ТаблицаЗначений - Содержит данные проверяемых контрагентов. // Структуру колонок таблицы см в функции ШаблонТаблицыДанныеКонтрагента. -// Контрагент - СправочникСсылка.<Контрагенты> - Контрагент, данными которого дополняются данные таблицы +// Контрагент - ОпределяемыйТип.Контрагент - Контрагент, данными которого дополняются данные таблицы // ДанныеКонтрагентов. // Дата - Дата - Дата, на которую выполняется проверка контрагента. // Состояние - Перечисления.СостоянияСуществованияКонтрагента - Результат проверки контрагента. @@ -766,13 +801,12 @@ // Определяет итоговое состояние контрагентов в документе. // // Параметры: -// ДанныеКонтрагентов - ТаблицаЗначений - Содержит данные проверяемых контрагентов. -// Структуру колонок таблицы см в функции ШаблонТаблицыДанныеКонтрагента. -// Отбор - Структура - отбор, накладываемый на таблицу данные контрагента. +// ДанныеКонтрагентов - ТаблицаЗначений - Содержит данные проверяемых контрагентов. +// Структуру колонок таблицы см в функции ШаблонТаблицыДанныеКонтрагента. +// Отбор - Структура - отбор, накладываемый на таблицу данные контрагента. // -// // Возвращаемое значение: -// Структура +// Структура - описание состояния контрагентов - заполнен ли контрагент, его состояние, количество контрагентов. // Функция ИтоговоеСостояниеКонтрагентаВДокументе(ДанныеКонтрагентов, Отбор = Неопределено) Экспорт @@ -1080,7 +1114,7 @@ // Параметры: // Форма - УправляемаяФорма - Форма отчета, в котором выполняется проверка контрагентов. // ПараметрыОтчета - Структура - Параметры формирования отчета. -// ЭтоПервоеФормированиеОтчета - Булево - Истина, если это формирование отчета перед проверкой контрагентов +// ЭтоПервоеФормированиеОтчета - Булево - Истина, если это формирование отчета перед проверкой контрагентов. // Ложь, если это формирование отчета при проверке контрагентов. // ПолныйОтчет - ТабличныйДокумент - Табличный документ, содержащий в себе сформированный отчет // в исходном виде (до проверки контрагентов). Если ЭтоПервоеФормированиеОтчета = Истина, то ПолныйОтчет можно не @@ -1264,8 +1298,6 @@ // Данный ключ формируется в процедуре ДобавитьПараметрыДляПроверкиКонтрагентов. Процедура ПроверитьКонтрагентовВОтчете(Форма, СтруктураПараметров) Экспорт - Форма.РеквизитыПроверкиКонтрагентов.ИдентификаторЗадания = Неопределено; - Если НЕ Форма.РеквизитыПроверкиКонтрагентов.ОтчетСРазделами Тогда Если Форма.РеквизитыПроверкиКонтрагентов.ОтчетПоНекорректнымКонтрагентам <> Неопределено Тогда @@ -1274,18 +1306,16 @@ КонецЕсли; - НаименованиеЗадания = НСтр("ru = 'Проверка контрагентов в отчете'"); + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(Форма.УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Проверка контрагентов в отчете'"); - РезультатПроверки = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - Форма.УникальныйИдентификатор, + ДлительнаяОперация = ДлительныеОперации.ВыполнитьВФоне( "ПроверкаКонтрагентов.ОпределитьНедействующихКонтрагентовВОтчетеФоновоеЗадание", СтруктураПараметров, - НаименованиеЗадания); + ПараметрыВыполнения); + + Форма.РеквизитыПроверкиКонтрагентов.ДлительнаяОперация = ДлительнаяОперация; - Форма.РеквизитыПроверкиКонтрагентов.АдресХранилища = РезультатПроверки.АдресХранилища; - Форма.РеквизитыПроверкиКонтрагентов.ИдентификаторЗадания = РезультатПроверки.ИдентификаторЗадания; - Форма.РеквизитыПроверкиКонтрагентов.ЗаданиеВыполнено = РезультатПроверки.ЗаданиеВыполнено; - КонецПроцедуры // Отображение результата проверки контрагента в отчете. @@ -1313,7 +1343,7 @@ УдалитьИзВременногоХранилища(РеквизитыПроверкиКонтрагентов.АдресДанныхОтчета); КонецЕсли; - // Запоминаем новый адрес хранилища с отчетом + // Запоминаем новый адрес хранилища с отчетом. РеквизитыПроверкиКонтрагентов.АдресРезультатаЗаполненияОтчета = РеквизитыПроверкиКонтрагентов.АдресХранилища; // Количество некорректных контрагентов. @@ -1486,7 +1516,7 @@ // Служебный реквизит для работы фонового задания. НовыеРеквизиты.Вставить("АдресХранилища"); // Служебный реквизит для работы фонового задания. - НовыеРеквизиты.Вставить("ИдентификаторЗадания", Новый УникальныйИдентификатор); + НовыеРеквизиты.Вставить("ДлительнаяОперация", Неопределено); // Служебный реквизит для работы фонового задания. НовыеРеквизиты.Вставить("ЗаданиеВыполнено", Истина); // Служебный реквизит для отображения отчета. @@ -1498,7 +1528,7 @@ // Наличие доступа к сервису проверки. НовыеРеквизиты.Вставить("ЕстьДоступКВебСервисуФНС", Истина); // Включена ли проверка и есть ли доступ на использование проверки. - НовыеРеквизиты.Вставить("ПроверкаИспользуется", ПроверкаКонтрагентовВызовСервера.ИспользованиеПроверкиВозможно()); + НовыеРеквизиты.Вставить("ПроверкаИспользуется", ПроверкаКонтрагентовВызовСервераПовтИсп.ИспользованиеПроверкиВозможно()); // Табличный документ, отчет, содержащий только некорректных контрагентов. НовыеРеквизиты.Вставить("ОтчетПоНекорректнымКонтрагентам", Новый ТабличныйДокумент); // Признак того, что отчет содержит разделы. @@ -1519,7 +1549,7 @@ // Функция возвращает новую таблицу разделов отчета. // // Возвращаемое значение: -// ТаблицаЗначений, содержащая колонки: +// ТаблицаЗначений - таблица, содержащая колонки: // * НазваниеРаздела - Строка - Название раздела отчета. // * НомерРаздела - Число - Номер раздела отчета. // * ХранилищеОтчета - ХранилищеЗначения - Содержит табличный документ. @@ -1672,8 +1702,13 @@ Форма.РеквизитыПроверкиКонтрагентов.СостояниеКонтрагента = ПроверкаКонтрагентовВызовСервера.ТекущееСохраненноеСостояниеКонтрагента(КонтрагентСсылка, ИНН, КПП); - - Если ЗначениеЗаполнено(Форма.РеквизитыПроверкиКонтрагентов.СостояниеКонтрагента) Тогда + + СостояниеКонтрагента = Форма.РеквизитыПроверкиКонтрагентов.СостояниеКонтрагента; + ПроверкаНеТребуется = СостояниеКонтрагента = Перечисления.СостоянияСуществованияКонтрагента.КонтрагентНеПодлежитПроверке; + ЭтоИностранныйКонтрагент = Форма.РеквизитыПроверкиКонтрагентов.ЭтоИностранныйКонтрагент; + + Если ЭтоИностранныйКонтрагент И ПроверкаНеТребуется + ИЛИ НЕ ЭтоИностранныйКонтрагент И ЗначениеЗаполнено(СостояниеКонтрагента) Тогда ПроверкаКонтрагентовКлиентСервер.ОтобразитьРезультатПроверкиКонтрагентаВСправочнике(Форма); Иначе // В режиме при проверке по кнопке показываем только результат из кэша. @@ -1683,7 +1718,7 @@ ЗапуститьПроверкуПриСозданииНаСервереКонтрагента(Форма, Параметры, КонтрагентСсылка); КонецЕсли; КонецЕсли; - + КонецЕсли; КонецПроцедуры @@ -1723,7 +1758,7 @@ НовыеРеквизиты = Новый Структура; - ПроверкаИспользуется = ПроверкаКонтрагентовВызовСервера.ИспользованиеПроверкиВозможно(); + ПроверкаИспользуется = ПроверкаКонтрагентовВызовСервераПовтИсп.ИспользованиеПроверкиВозможно(); // Включена ли проверка и есть ли доступ на использование проверки. НовыеРеквизиты.Вставить("ПроверкаИспользуется", ПроверкаИспользуется); // Служебный реквизит @@ -1739,8 +1774,8 @@ // Если Истина, то перед запуском фонового задания по проверке контрагентов из // карточки контрагента выполняется предварительная проверка ИНН и КПП. НовыеРеквизиты.Вставить("ВыполнятьПредварительнуюПроверкуКонтрагента", Истина); - НовыеРеквизиты.Вставить("ЭтоИностранныйКонтрагент", Неопределено); - НовыеРеквизиты.Вставить("ЭтоЮридическоеЛицо", Неопределено); + НовыеРеквизиты.Вставить("ЭтоИностранныйКонтрагент", Ложь); + НовыеРеквизиты.Вставить("ЭтоЮридическоеЛицо", Истина); // Результат проверки контрагента. НовыеРеквизиты.Вставить("ЭтоПроверкаПоКнопке", Ложь); @@ -1916,6 +1951,9 @@ "ПроверкаКонтрагентов"); КонецЕсли; + Событие = "СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПереименованийОбъектовМетаданных"; + СерверныеОбработчики[Событие].Добавить("ПроверкаКонтрагентов"); + КонецПроцедуры // Добавляет процедуры-обработчики обновления, необходимые данной подсистеме. @@ -1935,7 +1973,6 @@ Обработчик = Обработчики.Добавить(); Обработчик.Версия = "2.2.5.14"; Обработчик.Процедура = "ПроверкаКонтрагентов.ПроверитьКонтрагентовПослеВключенияПроверки"; - Обработчик.НачальноеЗаполнение = Истина; Обработчик.РежимВыполнения = "Отложенно"; Обработчик.Идентификатор = Новый УникальныйИдентификатор("c4bcb537-61e2-4fbf-af66-a5854048948f"); Обработчик.Комментарий = НСтр("ru = 'Проверяет существование контрагентов по базе ФНС. @@ -1946,7 +1983,7 @@ // Заполняет соответствие имен методов их псевдонимам для вызова из очереди заданий. // // Параметры: -// СоответствиеИменПсевдонимам - Соответствие +// СоответствиеИменПсевдонимам - Соответствие - // Ключ - Псевдоним метода, например ОчиститьОбластьДанных. // Значение - Имя метода для вызова, например РаботаВМоделиСервиса.ОчиститьОбластьДанных. // В качестве значения можно указать Неопределено, в этом случае считается что имя @@ -2007,15 +2044,16 @@ КонецЕсли; Константы.ИспользоватьПроверкуКонтрагентов.Установить(НовоеЗначение); + ОбновитьПовторноИспользуемыеЗначения(); КонецПроцедуры // Запуск проверки контрагентов в фоне после включения проверки. Процедура ЗапуститьФоновуюПроверкуКонтрагентовПослеИзмененияНастройкиПриНеобходимости() Экспорт - ПроверкаКонтрагентовВключена = ПроверкаКонтрагентовВключена(); + ИспользоватьСервис = ПроверкаКонтрагентовВключена(); - ЗапуститьФоновуюПроверку = ПроверкаКонтрагентовВключена + ЗапуститьФоновуюПроверку = ИспользоватьСервис И НЕ ОбновлениеИнформационнойБазы.ВыполняетсяОбновлениеИнформационнойБазы() И НЕ МонопольныйРежим(); @@ -2036,8 +2074,10 @@ КонецПроцедуры // Показывает, включена ли проверка контрагентов. +// // Возвращаемое значение: -// Булево - Значение константы ИспользоватьПроверкуКонтрагентов - включена ли проверка контрагентов в базе. +// Булево - Значение константы ИспользоватьПроверкуКонтрагентов - включена ли проверка контрагентов в базе. +// Функция ПроверкаКонтрагентовВключена() Экспорт Возврат ЗначениеКонстантыИспользоватьПроверкуКонтрагентов() = 1; @@ -2045,8 +2085,10 @@ КонецФункции // Определяем наличие права на использование проверки контрагентов. +// // Возвращаемое значение: -// Булево - наличие права на использование проверки контрагентов. +// Булево - наличие права на использование проверки контрагентов. +// Функция ЕстьПравоНаИспользованиеПроверки() Экспорт Возврат ПравоДоступа("Чтение", Метаданные.Константы.ИспользоватьПроверкуКонтрагентов); @@ -2054,8 +2096,10 @@ КонецФункции // Определяем наличие права на включение проверки контрагентов. +// // Возвращаемое значение: -// Булево - наличие права на включение проверки контрагентов. +// Булево - наличие права на включение проверки контрагентов. +// Функция ЕстьПравоНаРедактированиеНастроек() Экспорт Возврат ПравоДоступа("Изменение", Метаданные.Константы.ИспользоватьПроверкуКонтрагентов); @@ -2063,11 +2107,13 @@ КонецФункции // Проверяет наличие доступа к веб-сервису ФНС. +// // Возвращаемое значение: -// Булево - наличие доступа к веб-сервису ФНС. +// Булево - наличие доступа к веб-сервису ФНС. +// Функция ЕстьДоступКВебСервисуФНС() Экспорт - Таймаут = 5; + Таймаут = 15; Прокси = ПроксиСервиса(Таймаут); Если Прокси = Неопределено Тогда @@ -2103,8 +2149,10 @@ КонецФункции // Определяет, отказался ли пользователь от использования сервиса в предложении на подключение. +// // Возвращаемое значение: -// Булево - пользователь отказался от использования сервиса в предложении на подключение. +// Булево - пользователь отказался от использования сервиса в предложении на подключение. +// Функция БольшеНеПоказыватьПредложениеПодключиться() Экспорт Возврат ПроверкуОтключили(); @@ -2185,7 +2233,7 @@ // // Параметры: // Параметры - Структура - Параметры запуска фонового задания. Ключи структуры: -// "Контрагент" - СправочникСсылка.<Контрагенты> - Проверяемый контрагент. +// "Контрагент" - ОпределяемыйТип.Контрагент - Проверяемый контрагент. // "ИНН" - Строка - ИНН Контрагента // "КПП" - Строка - КПП Контрагента // "Дата" - Дата - Дата, на которую выполняется проверка контрагента. Может быть не указана, тогда берется текущая @@ -2216,6 +2264,24 @@ #Область СлужебныеПроцедурыИФункции +// Заполняет переименования тех объектов метаданных, которые невозможно +// автоматически найти по типу, но ссылки на которые требуется сохранять +// в базе данных (например: подсистемы, роли). +// +// См. также: +// ОбщегоНазначения.ДобавитьПереименование(). +// +Процедура ПриДобавленииПереименованийОбъектовМетаданных(Итог) Экспорт + + // 2.3.3.33 + ОбщегоНазначения.ДобавитьПереименование( + Итог, "2.3.3.33", + "Роль.ИспользованиеДосьеКонтрагента", + "Роль.ПросмотрОтчетаДосьеКонтрагента", + "СтандартныеПодсистемы"); + +КонецПроцедуры + #Область РаботаСВебСервисом // Значения настроек @@ -2230,7 +2296,7 @@ Результат.Вставить("АдресСервиса", АдресСервиса); Результат.Вставить("ИмяТипаКонтрагентаФабрикиXDTO", "NdsRequest2_NP"); Результат.Вставить("ИмяТипаЗапросаФабрикиXDTO", "NdsRequest2"); - Результат.Вставить("АдресWSDL", "http://npchk.nalog.ru/FNSNDSCAWS_2?wsdl"); + Результат.Вставить("АдресWSDL", АдресСервиса); Результат.Вставить("URIПространстваИмен", "http://ws.unisoft"); Результат.Вставить("ИмяСервиса", "FNSNDSCAWS2"); Результат.Вставить("ИмяТочкиПодключения", "FNSNDSCAWS2_Port"); @@ -2413,17 +2479,12 @@ Функция ПолучитьWSПрокси(Таймаут) - Параметры = ПараметрыРаботыСервиса(); + ПараметрыПодключения = ОбщегоНазначения.ПараметрыПодключенияWSПрокси(); + ЗаполнитьЗначенияСвойств(ПараметрыПодключения, ПараметрыРаботыСервиса()); + ПараметрыПодключения.Таймаут = Таймаут; + + WSПрокси = ОбщегоНазначения.СоздатьWSПрокси(ПараметрыПодключения); - WSПрокси = ОбщегоНазначения.WSПрокси( - Параметры.АдресWSDL, - Параметры.URIПространстваИмен, - Параметры.ИмяСервиса, - Параметры.ИмяТочкиПодключения, - Неопределено, - Неопределено, - Таймаут); - Возврат WSПрокси; КонецФункции @@ -2434,6 +2495,15 @@ #Область ПрочиеПроцедуры +// Оболочка для процедуры, которая так же используется для отложенного обновления. +// Необходима потому, что обработчик отложенного обновления может иметь только один параметр, +// а при запуске фонового задания новым методом в процедуре два обязательных параметра. +Процедура ПроверитьКонтрагентовПослеВключенияПроверкиВФоне(Параметры, АдресХранилища) Экспорт + + ПроверитьКонтрагентовПослеВключенияПроверки(); + +КонецПроцедуры + Функция ЭтоМедленныйРежимРаботы() Экспорт ОперативнаяПамять = ПараметрыСеанса.ПараметрыКлиентаНаСервере.Получить("ОперативнаяПамять"); @@ -2657,7 +2727,7 @@ ДополнитьДанныеКонтрагентов(ДанныеКонтрагентовДляПроверки, ДанныеКонтрагентов); // Состояния с ошибками получаем из кэша. - ВзятьСостоянияИзКэшаПриПроверкеСправочника(ДанныеКонтрагентов, ДополнительныеПараметры); + ВзятьСостоянияИзКэша(ДанныеКонтрагентов, ДополнительныеПараметры); // Исключаем из проверяемых контрагентов тех, к которым нет доступа. ОставитьРазрешенныхКонтрагентов(ДанныеКонтрагентов); @@ -2736,12 +2806,12 @@ Для каждого ДанныеКонтрагента Из ДанныеКонтрагентов Цикл - // Заполняем только пустые значения + // Заполняем только пустые значения. Если ЕстьКолонкаЭтоЮридическоеЛицо И НЕ ЗначениеЗаполнено(ДанныеКонтрагента.ЭтоЮридическоеЛицо) Тогда ДанныеКонтрагента.ЭтоЮридическоеЛицо = ЭтоЮридическоеЛицо(ДанныеКонтрагента); КонецЕсли; - // Заполняем только пустые значения + // Заполняем только пустые значения. Если ЕстьКолонкаЭтоИностранныйКонтрагент И НЕ ЗначениеЗаполнено(ДанныеКонтрагента.ЭтоИностранныйКонтрагент) Тогда ДанныеКонтрагента.ЭтоИностранныйКонтрагент = ЭтоИностранныйКонтрагент(ДанныеКонтрагента); КонецЕсли; @@ -2802,7 +2872,7 @@ | ВсеДанныеКонтрагентов.Контрагент КАК Контрагент |ПОМЕСТИТЬ ВсеКонтрагенты |ИЗ - | Справочник.%1 КАК СправочникКонтрагентов + | #СправочникКонтрагентов КАК СправочникКонтрагентов | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВсеДанныеКонтрагентов КАК ВсеДанныеКонтрагентов | ПО СправочникКонтрагентов.Ссылка = ВсеДанныеКонтрагентов.Контрагент |; @@ -2836,7 +2906,7 @@ |ИЗ | ВсеДанныеКонтрагентов КАК ВсеДанныеКонтрагентов |ГДЕ - | ВсеДанныеКонтрагентов.Контрагент = ЗНАЧЕНИЕ(Справочник.%1.ПустаяСсылка)"; + | ВсеДанныеКонтрагентов.Контрагент = &ПустойКонтрагент"; Если НЕ ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда @@ -2853,9 +2923,11 @@ КонецЕсли; СвойстваСправочника = ПроверкаКонтрагентовКлиентСервер.СвойстваСправочникаКонтрагенты(); - Запрос.Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Запрос.Текст, СвойстваСправочника.Имя); + Запрос.Текст = СтрЗаменить(Запрос.Текст, "#СправочникКонтрагентов", "Справочник." + СвойстваСправочника.Имя); Запрос.УстановитьПараметр("ДанныеКонтрагентов", ДанныеКонтрагентов); + Запрос.УстановитьПараметр("ПустойКонтрагент", Справочники[СвойстваСправочника.Имя].ПустаяСсылка()); + ДанныеКонтрагентов = Запрос.Выполнить().Выгрузить(); // В результате запроса поле "Дополнительные параметры" было "отрезано", @@ -2980,7 +3052,7 @@ КонецФункции -Процедура ВзятьСостоянияИзКэшаПриПроверкеСправочника(ДанныеКонтрагентов, ДополнительныеПараметрыПроверки = Неопределено) +Процедура ВзятьСостоянияИзКэша(ДанныеКонтрагентов, ДополнительныеПараметрыПроверки = Неопределено) // Если по некоторым контрагентам можно определить, что они не существуют, не обращаясь к сервису, то к сервису по ним // обращаться не будем. @@ -3000,19 +3072,31 @@ ЭтоСмешанныйРежимПолученияСостояний = ДополнительныеПараметрыПроверки.Свойство("Смешанный") И ДополнительныеПараметрыПроверки.Смешанный; + + ЭтоПроверкаПоКнопке = ДополнительныеПараметрыПроверки.Свойство("ЭтоПроверкаПоКнопке") + И ДополнительныеПараметрыПроверки.ЭтоПроверкаПоКнопке; ЕстьДоступКВебСервисуФНС = НЕ ДополнительныеПараметрыПроверки.Свойство("ЕстьДоступКВебСервисуФНС") ИЛИ ДополнительныеПараметрыПроверки.Свойство("ЕстьДоступКВебСервисуФНС") И ДополнительныеПараметрыПроверки.ЕстьДоступКВебСервисуФНС; + Если ЭтоПроверкаПоКнопке И ЕстьДоступКВебСервисуФНС Тогда + // Если есть доступ в Интернет и это проверка по кнопке + // в документе или справочнике, то данные из кэша не берем - + // получаем свежие данные. + Возврат; + КонецЕсли; + Если ЭтоПроверкаСправочника ИЛИ БратьСостоянияТолькоИзКэша ИЛИ ЭтоСмешанныйРежимПолученияСостояний ИЛИ ЭтоПроверкаДокумента И НЕ ЕстьДоступКВебСервисуФНС Тогда + // Берем состояния из кэша, если принудительно указано брать из кэша + // или при проверке в документе, когда нет доступа в интернет. ПолучатьВсеСостоянияИзРегистра = БратьСостоянияТолькоИзКэша - ИЛИ ЭтоПроверкаДокумента И НЕ ЕстьДоступКВебСервисуФНС; + ИЛИ ЭтоПроверкаДокумента И НЕ ЕстьДоступКВебСервисуФНС; ПолучитьСостоянияКонтрагентовИзКэша(ДанныеКонтрагентов, ПолучатьВсеСостоянияИзРегистра); @@ -3061,8 +3145,7 @@ | ТОГДА СостоянияКонтрагентов.Состояние | ИНАЧЕ ЗНАЧЕНИЕ(Перечисление.СостоянияСуществованияКонтрагента.ПустаяСсылка) | КОНЕЦ - | КОНЕЦ КАК Состояние, - | СостоянияКонтрагентов.ИНН КАК ИНН2 + | КОНЕЦ КАК Состояние |ИЗ | ДанныеКонтрагентов КАК ДанныеКонтрагентов | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияКонтрагентов КАК СостоянияКонтрагентов @@ -3186,47 +3269,47 @@ // Выбираем контрагентов, которых нет в регистре сведений. Запрос = Новый Запрос; Текст = - "ВЫБРАТЬ %5 + "ВЫБРАТЬ РАЗЛИЧНЫЕ | Контрагенты.Ссылка КАК Контрагент, - | Контрагенты.%1 КАК ИНН, - | Контрагенты.%2 КАК КПП, + | &ИмяПоляИНН КАК ИНН, + | &ИмяПоляКПП КАК КПП, | &ОбластьДанныхВспомогательныеДанные КАК ОбластьДанныхВспомогательныеДанные, | ЛОЖЬ КАК ЭтоИностранныйКонтрагент, | ВЫБОР - | КОГДА ПОДСТРОКА(Контрагенты.%1, 12, 1) <> """" + | КОГДА ПОДСТРОКА(&ИмяПоляИНН, 12, 1) <> """" | ТОГДА ЛОЖЬ | ИНАЧЕ ИСТИНА | КОНЕЦ КАК ЭтоЮридическоеЛицо, | &Дата КАК Дата |ИЗ - | Справочник.%3 КАК Контрагенты + | #СправочникКонтрагентов КАК Контрагенты | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияКонтрагентов КАК СостоянияКонтрагентов | ПО Контрагенты.Ссылка = СостоянияКонтрагентов.Контрагент |ГДЕ - | СостоянияКонтрагентов.Состояние ЕСТЬ NULL - | %4 - | + | СостоянияКонтрагентов.Состояние ЕСТЬ NULL + | И &УсловиеНаГруппу + | |ОБЪЕДИНИТЬ ВСЕ - | - |ВЫБРАТЬ %5 - | Контрагенты.Ссылка КАК Контрагент, - | Контрагенты.%1 КАК ИНН, - | Контрагенты.%2 КАК КПП, - | &ОбластьДанныхВспомогательныеДанные КАК ОбластьДанныхВспомогательныеДанные, + | + |ВЫБРАТЬ РАЗЛИЧНЫЕ + | Контрагенты.Ссылка, + | &ИмяПоляИНН, + | &ИмяПоляКПП, + | &ОбластьДанныхВспомогательныеДанные, | ЛОЖЬ КАК ЭтоИностранныйКонтрагент, | ВЫБОР - | КОГДА ПОДСТРОКА(Контрагенты.%1, 12, 1) <> """" + | КОГДА ПОДСТРОКА(&ИмяПоляИНН, 12, 1) <> """" | ТОГДА ЛОЖЬ | ИНАЧЕ ИСТИНА | КОНЕЦ КАК ЭтоЮридическоеЛицо, - | &Дата КАК Дата + | &Дата |ИЗ - | Справочник.%3 КАК Контрагенты + | #СправочникКонтрагентов КАК Контрагенты | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияКонтрагентов КАК СостоянияКонтрагентов | ПО Контрагенты.Ссылка = СостоянияКонтрагентов.Контрагент |ГДЕ | СостоянияКонтрагентов.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияСуществованияКонтрагента.ПустаяСсылка) - | %4"; + | И &УсловиеНаГруппу"; Если НЕ ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда @@ -3239,31 +3322,33 @@ СвойстваСправочника = ПроверкаКонтрагентовКлиентСервер.СвойстваСправочникаКонтрагенты(); - УсловиеНаГруппу = ""; Если СправочникКонтрагентовИерархический() Тогда - УсловиеНаГруппу = "И Контрагенты.ЭтоГруппа = ЛОЖЬ"; + УсловиеНаГруппу = " Контрагенты.ЭтоГруппа = ЛОЖЬ"; + Иначе + УсловиеНаГруппу = " Истина"; КонецЕсли; - ОграничениеНаПрава = ""; Если ЭтоОбновлениеИБВМоделиСервиса Тогда РазмерПорции = 1000; - ОграничениеНаПрава = "РАЗЛИЧНЫЕ ПЕРВЫЕ " + Формат(РазмерПорции, "ЧГ=0"); + ОграничениеНаКоличество = "РАЗЛИЧНЫЕ ПЕРВЫЕ " + Формат(РазмерПорции, "ЧГ=0"); Иначе - ОграничениеНаПрава = "РАЗЛИЧНЫЕ"; + ОграничениеНаКоличество = "РАЗЛИЧНЫЕ"; КонецЕсли; - Запрос.Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Текст, - СвойстваСправочника.ИНН, - СвойстваСправочника.КПП, - СвойстваСправочника.Имя, - УсловиеНаГруппу, - ОграничениеНаПрава); - + Текст = СтрЗаменить(Текст, "РАЗЛИЧНЫЕ", ОграничениеНаКоличество); + Текст = СтрЗаменить(Текст, "&ИмяПоляИНН", "Контрагенты." + СвойстваСправочника.ИНН); + Текст = СтрЗаменить(Текст, "&ИмяПоляКПП", "Контрагенты." + СвойстваСправочника.КПП); + Текст = СтрЗаменить(Текст, "#СправочникКонтрагентов", "Справочник." + СвойстваСправочника.Имя); + Текст = СтрЗаменить(Текст, "&УсловиеНаГруппу", УсловиеНаГруппу); + + Запрос.Текст = Текст; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда Запрос.УстановитьПараметр("ОбластьДанныхВспомогательныеДанные", ОбщегоНазначения.ЗначениеРазделителяСеанса()); КонецЕсли; Запрос.УстановитьПараметр("Дата", НачалоДня(ТекущаяДатаСеанса())); + ДанныеКонтрагентов = Запрос.Выполнить().Выгрузить(); // Прерываем обновление, если не осталось необработанных данных. @@ -3294,14 +3379,25 @@ ПроверяемыеКонтрагенты.Колонки.Удалить("Состояние"); КонецЕсли; - ПоместитьТаблицуЗначенийВоВременнуюТаблицу(ПроверяемыеКонтрагенты, Запрос, "ПроверяемыеКонтрагенты", ,"ДополнительныеПараметры"); - ПоместитьТаблицуЗначенийВоВременнуюТаблицу(ДанныеКонтрагентов, Запрос, "ДанныеКонтрагентов", ,"ДополнительныеПараметры"); + ПоместитьТаблицуЗначенийВоВременнуюТаблицу( + ПроверяемыеКонтрагенты, + Запрос, + "ПроверяемыеКонтрагенты", + , + "ДополнительныеПараметры"); + + ПоместитьТаблицуЗначенийВоВременнуюТаблицу( + ДанныеКонтрагентов, + Запрос, + "ДанныеКонтрагентов", + , + "ДополнительныеПараметры"); // По всем контрагентам определяем состояние. // В таблице оставляем только контрагентов с ошибками. Запрос.Текст = Запрос.Текст + " |ВЫБРАТЬ РАЗЛИЧНЫЕ - | " + ПредставлениеКолонок(ПроверяемыеКонтрагенты, "ПроверяемыеКонтрагенты.",, "ДополнительныеПараметры") + ", + | &ВыбираемыеПоля, | ДанныеКонтрагентов.Состояние КАК Состояние |ИЗ | ПроверяемыеКонтрагенты КАК ПроверяемыеКонтрагенты @@ -3323,6 +3419,10 @@ Запрос.УстановитьПараметр("Состояния", Состояния); КонецЕсли; + // Имена выбираемых колонок собираются программно. + ВыбираемыеПоля = ПредставлениеКолонок(ПроверяемыеКонтрагенты, "ПроверяемыеКонтрагенты.",, "ДополнительныеПараметры"); + Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ВыбираемыеПоля", ВыбираемыеПоля); + Запрос.УстановитьПараметр("ТекущаяДата", НачалоДня(ТекущаяДатаСеанса())); ПроверяемыеКонтрагенты = Запрос.Выполнить().Выгрузить(); @@ -3605,24 +3705,24 @@ Дата, Состояние = Неопределено) - // Добавляем в таблицу только разрешенных контрагентов + // Добавляем в таблицу только разрешенных контрагентов. Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ | Контрагенты.Ссылка КАК Контрагент, - | Контрагенты.%1 КАК ИНН, - | Контрагенты.%2 КАК КПП + | &ИмяПоляИНН КАК ИНН, + | &ИмяПоляКПП КАК КПП |ИЗ - | Справочник.%3 КАК Контрагенты - |ГДЕ Контрагенты.Ссылка = &Контрагент"; + | #СправочникКонтрагентов КАК Контрагенты + |ГДЕ + | Контрагенты.Ссылка = &Контрагент"; СвойстваСправочника = ПроверкаКонтрагентовКлиентСервер.СвойстваСправочникаКонтрагенты(); - Запрос.Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - Запрос.Текст, - СвойстваСправочника.ИНН, - СвойстваСправочника.КПП, - СвойстваСправочника.Имя); - + + Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ИмяПоляИНН", "Контрагенты." + СвойстваСправочника.ИНН); + Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ИмяПоляКПП", "Контрагенты." + СвойстваСправочника.КПП); + Запрос.Текст = СтрЗаменить(Запрос.Текст, "#СправочникКонтрагентов", "Справочник." + СвойстваСправочника.Имя); + Запрос.УстановитьПараметр("Контрагент", Контрагент); ДанныеКонтрагента = Запрос.Выполнить().Выбрать(); @@ -3677,6 +3777,7 @@ Описание.Колонки.Добавить("ИмяПоляСКонтрагентом"); // Имя колонки табличной части документа, в которой находится контрагент. Описание.Колонки.Добавить("ИмяКолонкиСКонтрагентом"); + Описание.Колонки.Добавить("КонтрагентСкрытФункциональнойОпцией"); // Имя колонки таблицы формы, в которой находится дата, на которую необходимо выполнять проверку. // Может быть пустой, если в табличной части нет даты. Описание.Колонки.Добавить("ИмяПоляСДатой"); @@ -3735,10 +3836,13 @@ Функция ОписаниеТабличныхЧастей(Форма) - ОписаниеТабличныхЧастей = ШаблонТаблицыОписанияТабличныхЧастей(); - РаботаСКонтрагентамиПереопределяемый.СформироватьОписаниеДокументовСТабличнымиЧастями(Форма, ОписаниеТабличныхЧастей); + Описание = ШаблонТаблицыОписанияТабличныхЧастей(); + РаботаСКонтрагентамиПереопределяемый.СформироватьОписаниеДокументовСТабличнымиЧастями(Форма, Описание); - Возврат ОписаниеТабличныхЧастей; + // Преобразование в массив структур. + Описание = ОбщегоНазначения.ТаблицаЗначенийВМассив(Описание); + + Возврат Описание; КонецФункции @@ -3780,13 +3884,9 @@ // для того, чтобы ускорить открытие документа. // Поэтому инициализация выполняется сейчас непосредственно перед проверкой. Если НЕ Форма.РеквизитыПроверкиКонтрагентов.ИнициализацияВыполненаПолностью Тогда - - // При инициализации признак ЭтоПроверкаПоКнопке сбрасывается, поэтому запоминаем его. - ЭтоПроверкаПоКнопке = Форма.РеквизитыПроверкиКонтрагентов.ЭтоПроверкаПоКнопке; // Принудительная инициализация. ИнициализироватьРеквизитыПроверкиКонтрагентовВДокументе(Форма, Истина); - Форма.РеквизитыПроверкиКонтрагентов.ЭтоПроверкаПоКнопке = ЭтоПроверкаПоКнопке; - + Форма.РеквизитыПроверкиКонтрагентов.ЭтоПроверкаКонтрагентовПриОткрытии = Ложь; УправлениеФормойДокументаПриИнициализации(Форма); КонецЕсли; @@ -3819,48 +3919,61 @@ Процедура ИнициализироватьРеквизитыПроверкиКонтрагентовВДокументе(Форма, ЭтоПринудительнаяИнициализация = Ложь) - Форма.РеквизитыПроверкиКонтрагентов = Новый Структура; + Если Форма.РеквизитыПроверкиКонтрагентов = Неопределено Тогда + Форма.РеквизитыПроверкиКонтрагентов = Новый Структура; + КонецЕсли; - НовыеРеквизиты = Форма.РеквизитыПроверкиКонтрагентов; + Если НЕ Форма.РеквизитыПроверкиКонтрагентов.Свойство("ПроверкаИспользуется") Тогда + ПроверкаИспользуется = ПроверкаКонтрагентовВызовСервераПовтИсп.ИспользованиеПроверкиВозможно(); + // Включена ли проверка и есть ли доступ на использование проверки. + Форма.РеквизитыПроверкиКонтрагентов.Вставить("ПроверкаИспользуется", ПроверкаИспользуется); + КонецЕсли; + + Если НЕ Форма.РеквизитыПроверкиКонтрагентов.Свойство("НужноПоказатьПредложениеВключитьПроверкуКонтрагентов") Тогда + ДобавитьРеквизитПроверкиКонтрагентов( + Форма, + "НужноПоказатьПредложениеВключитьПроверкуКонтрагентов", + НЕ Форма.РеквизитыПроверкиКонтрагентов.ПроверкаИспользуется И НужноПоказатьПредложениеВключитьПроверкуКонтрагентов()); + КонецЕсли; - ПроверкаИспользуется = ПроверкаКонтрагентовВызовСервера.ИспользованиеПроверкиВозможно(); - // Включена ли проверка и есть ли доступ на использование проверки. - НовыеРеквизиты.Вставить("ПроверкаИспользуется", ПроверкаИспользуется); - // Служебный реквизит - НовыеРеквизиты.Вставить("НужноПоказатьПредложениеВключитьПроверкуКонтрагентов", - НЕ ПроверкаИспользуется И НужноПоказатьПредложениеВключитьПроверкуКонтрагентов()); - // Служебный реквизит для работы фонового задания. - НовыеРеквизиты.Вставить("АдресХранилища"); + ДобавитьРеквизитПроверкиКонтрагентов(Форма, "АдресХранилища", Неопределено); + // Служебный реквизит для работы фонового задания. - НовыеРеквизиты.Вставить("ИдентификаторЗадания", Новый УникальныйИдентификатор); + ДобавитьРеквизитПроверкиКонтрагентов(Форма, "ИдентификаторЗадания", Новый УникальныйИдентификатор); + // Служебный реквизит для работы фонового задания. - НовыеРеквизиты.Вставить("ЗаданиеВыполнено", Истина); + ДобавитьРеквизитПроверкиКонтрагентов(Форма, "ЗаданиеВыполнено", Истина); + // Результат проверки контрагентов в документе. Содержит ли документ некорректных контрагентов. - НовыеРеквизиты.Вставить("ЭтоДокументСОшибкой", Ложь); + ДобавитьРеквизитПроверкиКонтрагентов(Форма, "ЭтоДокументСОшибкой", Ложь); + // Реквизит, предназначенный для определения необходимости перерисовывать список // после проверки контрагентов. - НовыеРеквизиты.Вставить("ЭтотДокументБылСОшибкой", Ложь); + ДобавитьРеквизитПроверкиКонтрагентов(Форма, "ЭтотДокументБылСОшибкой", Ложь); + // Результат проверки контрагентов в документе. Итоговое состояние контрагентов в документе. - НовыеРеквизиты.Вставить("СостояниеКонтрагентов", Перечисления.СостоянияСуществованияКонтрагента.ПустаяСсылка()); + ДобавитьРеквизитПроверкиКонтрагентов(Форма, "СостояниеКонтрагентов", Перечисления.СостоянияСуществованияКонтрагента.ПустаяСсылка()); + // Позволяет не прорисовывать результат проверки контрагентов, // если начато редактирование табличной части документа. // Позволяет избежать ошибки сброса редактируемого значений при выводе результатов проверки. - НовыеРеквизиты.Вставить("ОтложитьПрорисовкуРезультатаПроверкиКонтрагентов", Ложь); + ДобавитьРеквизитПроверкиКонтрагентов(Форма, "ОтложитьПрорисовкуРезультатаПроверкиКонтрагентов", Ложь); + // Служебный реквизит - НовыеРеквизиты.Вставить("АдресДанныхКонтрагентовИзКэша", Неопределено); - НовыеРеквизиты.Вставить("СохранятьРезультатСразуПослеПроверки", Истина); - НовыеРеквизиты.Вставить("ЭтоПроверкаКонтрагентовПриОткрытии", НЕ ЭтоПринудительнаяИнициализация); - НовыеРеквизиты.Вставить("АдресДанныхКонтрагентовПриОткрытии", Неопределено); - НовыеРеквизиты.Вставить("УникальныйИдентификаторФормы", Форма.УникальныйИдентификатор); - НовыеРеквизиты.Вставить("ЭтоПроверкаПоКнопке", Ложь); + ДобавитьРеквизитПроверкиКонтрагентов(Форма, "АдресДанныхКонтрагентовИзКэша", Неопределено); + ДобавитьРеквизитПроверкиКонтрагентов(Форма, "СохранятьРезультатСразуПослеПроверки", Истина); + ДобавитьРеквизитПроверкиКонтрагентов(Форма, "ЭтоПроверкаКонтрагентовПриОткрытии", Ложь); + ДобавитьРеквизитПроверкиКонтрагентов(Форма, "АдресДанныхКонтрагентовПриОткрытии", Неопределено); + ДобавитьРеквизитПроверкиКонтрагентов(Форма, "УникальныйИдентификаторФормы", Форма.УникальныйИдентификатор); + ДобавитьРеквизитПроверкиКонтрагентов(Форма, "ЭтоПроверкаПоКнопке", Ложь); - НовыеРеквизиты.Вставить("ИнициализацияВыполненаПолностью", Ложь); - - Если ПроверкаИспользуется + ДобавитьРеквизитПроверкиКонтрагентов(Форма, "ИнициализацияВыполненаПолностью", Ложь); + + Если Форма.РеквизитыПроверкиКонтрагентов.ПроверкаИспользуется ИЛИ ЭтоПринудительнаяИнициализация Тогда - НовыеРеквизиты.Вставить("ИнициализацияВыполненаПолностью", Истина); + Форма.РеквизитыПроверкиКонтрагентов.Вставить("ИнициализацияВыполненаПолностью", Истина); ВидДокумента = ПроверкаКонтрагентовКлиентСервер.ВидДокумента(Форма); @@ -3880,22 +3993,35 @@ ВидДокумента.Свойство("ЯвляетсяСчетомФактурой") И ВидДокумента.ЯвляетсяСчетомФактурой; - НовыеРеквизиты.Вставить("ЭтоДокументСКонтрагентомВШапке", ЭтоДокументСКонтрагентомВШапке); - НовыеРеквизиты.Вставить("ЭтоДокументСКонтрагентомВТабличнойЧасти", ЭтоДокументСКонтрагентомВТабличнойЧасти); - НовыеРеквизиты.Вставить("ЭтоДокументСоСчетомФактуройВПодвале", ЭтоДокументСоСчетомФактуройВПодвале); - НовыеРеквизиты.Вставить("ЭтоСчетФактура", ЭтоСчетФактура); + Форма.РеквизитыПроверкиКонтрагентов.Вставить("ЭтоДокументСКонтрагентомВШапке", ЭтоДокументСКонтрагентомВШапке); + Форма.РеквизитыПроверкиКонтрагентов.Вставить("ЭтоДокументСКонтрагентомВТабличнойЧасти", ЭтоДокументСКонтрагентомВТабличнойЧасти); + Форма.РеквизитыПроверкиКонтрагентов.Вставить("ЭтоДокументСоСчетомФактуройВПодвале", ЭтоДокументСоСчетомФактуройВПодвале); + Форма.РеквизитыПроверкиКонтрагентов.Вставить("ЭтоСчетФактура", ЭтоСчетФактура); Если ЭтоДокументСКонтрагентомВШапке Тогда // Результат проверки контрагента в шапке документа. - НовыеРеквизиты.Вставить("СостояниеКонтрагента", Перечисления.СостоянияСуществованияКонтрагента.ПустаяСсылка()); + Форма.РеквизитыПроверкиКонтрагентов.Вставить( + "СостояниеКонтрагента", + Перечисления.СостоянияПроверкиКонтрагентов.ПустаяСсылка()); КонецЕсли; // Результат проверки контрагентов в счете-фактуре. Если ЭтоДокументСоСчетомФактуройВПодвале ИЛИ ЭтоСчетФактура Тогда + // Итоговое состояние контрагентов в счете-фактуре. - НовыеРеквизиты.Вставить("СостояниеКонтрагентовВСчетеФактуре", Перечисления.СостоянияСуществованияКонтрагента.ПустаяСсылка()); + Форма.РеквизитыПроверкиКонтрагентов.Вставить( + "СостояниеКонтрагентовВСчетеФактуре", + Перечисления.СостоянияПроверкиКонтрагентов.ПустаяСсылка()); + // Итоговое состояние счета-фактуры. - НовыеРеквизиты.Вставить("ЭтоСчетФактураСОшибкой", Ложь); + Форма.РеквизитыПроверкиКонтрагентов.Вставить( + "ЭтоСчетФактураСОшибкой", + Ложь); + + КонецЕсли; + + Если ЭтоДокументСКонтрагентомВТабличнойЧасти Тогда + Форма.РеквизитыПроверкиКонтрагентов.Вставить("ОписаниеТабличныхЧастей", ОписаниеТабличныхЧастей(Форма)); КонецЕсли; Если ЭтоСчетФактура Тогда @@ -3903,13 +4029,13 @@ // Состояния проверки каждого контрагента в счете-фактуре. Описание = ШаблонТаблицыОписания(); РаботаСКонтрагентамиПереопределяемый.СформироватьОписаниеСчетовФактур(Форма, Описание); - + Для Каждого СтрокаОписания Из Описание Цикл ИмяРеквизитаСчетаФактуры = ИмяРеквизита(Форма, СтрокаОписания.Элемент.Имя); Свойство = ИмяРеквизитаСостоянияКонтрагентаВСчетеФактуре(ИмяРеквизитаСчетаФактуры); - Форма.РеквизитыПроверкиКонтрагентов.Вставить(Свойство, Перечисления.СостоянияСуществованияКонтрагента.ПустаяСсылка()); + Форма.РеквизитыПроверкиКонтрагентов.Вставить(Свойство, Перечисления.СостоянияПроверкиКонтрагентов.ПустаяСсылка()); КонецЦикла; @@ -3922,6 +4048,15 @@ КонецПроцедуры +Процедура ДобавитьРеквизитПроверкиКонтрагентов(Форма, НовыйРеквизит, ЗначениеНовогоРеквизита) + + Если Не Форма.РеквизитыПроверкиКонтрагентов.Свойство(НовыйРеквизит) Тогда + Форма.РеквизитыПроверкиКонтрагентов.Вставить(НовыйРеквизит, ЗначениеНовогоРеквизита); + КонецЕсли; + +КонецПроцедуры + + Процедура УстановитьУсловноеОформлениеСпискаДокументов(Список) СтандартнаяОбработка = Истина; @@ -3955,7 +4090,7 @@ Процедура ЗапомнитьНаличиеНекорректныхКонтрагентов(Форма) - Если ПроверкаКонтрагентовКлиентСервер.ЭтоСчетФактура(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоСчетФактура Тогда Форма.РеквизитыПроверкиКонтрагентов.ЭтоСчетФактураСОшибкой = ПроверкаКонтрагентовКлиентСерверПовтИсп.ЭтоНекорректноеСостояниеКонтрагента(Форма.РеквизитыПроверкиКонтрагентов.СостояниеКонтрагентов); @@ -3964,7 +4099,7 @@ Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСОшибкой = ЭтоДокументСОшибкой(Форма); - Если ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСоСчетомФактуройВПодвале(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСоСчетомФактуройВПодвале Тогда Форма.РеквизитыПроверкиКонтрагентов.ЭтоСчетФактураСОшибкой = ПроверкаКонтрагентовКлиентСерверПовтИсп.ЭтоНекорректноеСостояниеКонтрагента(Форма.РеквизитыПроверкиКонтрагентов.СостояниеКонтрагентовВСчетеФактуре); КонецЕсли; @@ -3979,7 +4114,7 @@ Если Форма.РеквизитыПроверкиКонтрагентов.ИнициализацияВыполненаПолностью Тогда - Если ПроверкаКонтрагентовКлиентСервер.ЭтоСчетФактура(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоСчетФактура Тогда // Определение объекта и ссылки. ОбъектИСсылкаПоФорме = ПроверкаКонтрагентовКлиентСервер.ОбъектИСсылкаПоФорме(Форма); @@ -3989,12 +4124,12 @@ Иначе // Заполняем данные по контрагенту из документа-основания. - Если ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВШапке(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВШапке Тогда ЗаполнитьДанныеКонтрагентовВДокументеОсновании(Форма, ДанныеКонтрагентов); КонецЕсли; // Заполняем данные по контрагенту из счета-фактуры. - Если ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСоСчетомФактуройВПодвале(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСоСчетомФактуройВПодвале Тогда СчетФактура = ПроверкаКонтрагентовКлиентСервер.СчетФактура(Форма); Если ЗначениеЗаполнено(СчетФактура) Тогда @@ -4006,7 +4141,7 @@ КонецЕсли; // Заполняем данные по контрагентам из табличных частей. - Если ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВТабличнойЧасти(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВТабличнойЧасти Тогда ЗаполнитьДанныеКонтрагентовВТабличнойЧасти(Форма, ДанныеКонтрагентов); КонецЕсли; @@ -4030,7 +4165,7 @@ Описание = ОписаниеДокументов(Форма); // Если контрагент в шапке - Если ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВШапке(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВШапке Тогда СтрокиПоДокументу = Описание.НайтиСтроки(Новый Структура("Ссылка", ДокументСсылка)); Для каждого СтрокаОписания Из СтрокиПоДокументу Цикл @@ -4046,7 +4181,7 @@ КонецЕсли; // Если есть счет-фактура на форме. - Если ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСоСчетомФактуройВПодвале(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСоСчетомФактуройВПодвале Тогда СтандартнаяОбработка = Истина; РаботаСКонтрагентамиПереопределяемый.ЗапомнитьРезультатПроверкиКонтрагентовСчетФактурыВДокументе(СтандартнаяОбработка, ДанныеКонтрагентов, Форма); @@ -4062,7 +4197,7 @@ КонецЕсли; // Если контрагент в ТЧ - Если ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВТабличнойЧасти(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВТабличнойЧасти Тогда ЗапомнитьРезультатПроверкиКонтрагентовВТабличнойЧасти(Форма, ДанныеКонтрагентов); @@ -4078,12 +4213,10 @@ ДокументОбъект = ОбъектИСсылкаПоФорме.Объект; ДокументСсылка = ОбъектИСсылкаПоФорме.Ссылка; - Если ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВТабличнойЧасти(Форма) Тогда - - ОписаниеТабличныхЧастей = ОписаниеТабличныхЧастей(Форма); + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВТабличнойЧасти Тогда // Перебираем все табличные части. - Для каждого ОписаниеТабличнойЧасти Из ОписаниеТабличныхЧастей Цикл + Для каждого ОписаниеТабличнойЧасти Из Форма.РеквизитыПроверкиКонтрагентов.ОписаниеТабличныхЧастей Цикл ИмяТабличнойЧасти = ОписаниеТабличнойЧасти.ИмяТабличнойЧасти; ИмяКолонкиСКонтрагентом = ОписаниеТабличнойЧасти.ИмяКолонкиСКонтрагентом; @@ -4120,10 +4253,10 @@ ДокументОбъект = ТекущийОбъект; ДокументСсылка = ДокументОбъект.Ссылка; - ЭтоДокументСКонтрагентомВШапке = ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВШапке(Форма); - ЭтоДокументСКонтрагентомВТабличнойЧасти = ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВТабличнойЧасти(Форма); - ЭтоДокументСоСчетомФактуройВПодвале = ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСоСчетомФактуройВПодвале(Форма); - ЭтоСчетФактура = ПроверкаКонтрагентовКлиентСервер.ЭтоСчетФактура(Форма); + ЭтоДокументСКонтрагентомВШапке = Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВШапке; + ЭтоДокументСКонтрагентомВТабличнойЧасти = Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВТабличнойЧасти; + ЭтоДокументСоСчетомФактуройВПодвале = Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСоСчетомФактуройВПодвале; + ЭтоСчетФактура = Форма.РеквизитыПроверкиКонтрагентов.ЭтоСчетФактура; СохраняемоеЗначение = Новый Соответствие; @@ -4168,9 +4301,7 @@ ДокументОбъект = ОбъектИСсылкаПоФорме.Объект; ДокументСсылка = ОбъектИСсылкаПоФорме.Ссылка; - ОписаниеТабличныхЧастей = ОписаниеТабличныхЧастей(Форма); - - Для каждого ОписаниеТабличнойЧасти Из ОписаниеТабличныхЧастей Цикл + Для каждого ОписаниеТабличнойЧасти Из Форма.РеквизитыПроверкиКонтрагентов.ОписаниеТабличныхЧастей Цикл ИмяТабличнойЧасти = ОписаниеТабличнойЧасти.ИмяТабличнойЧасти; ИмяКолонкиСКонтрагентом = ОписаниеТабличнойЧасти.ИмяКолонкиСКонтрагентом; @@ -4198,7 +4329,7 @@ Процедура ЗаполнитьДанныеКонтрагентовВДокументеОсновании(Форма, ДанныеКонтрагентов) - Если ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВШапке(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВШапке Тогда // Определение объекта и ссылки. ОбъектИСсылкаПоФорме = ПроверкаКонтрагентовКлиентСервер.ОбъектИСсылкаПоФорме(Форма); @@ -4222,10 +4353,10 @@ ОбъектИСсылкаПоФорме = ПроверкаКонтрагентовКлиентСервер.ОбъектИСсылкаПоФорме(Форма); ДокументСсылка = ОбъектИСсылкаПоФорме.Ссылка; - ЭтоДокументСКонтрагентомВШапке = ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВШапке(Форма); - ЭтоДокументСКонтрагентомВТабличнойЧасти = ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВТабличнойЧасти(Форма); - ЭтоДокументСоСчетомФактуройВПодвале = ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСоСчетомФактуройВПодвале(Форма); - ЭтоСчетФактура = ПроверкаКонтрагентовКлиентСервер.ЭтоСчетФактура(Форма); + ЭтоДокументСКонтрагентомВШапке = Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВШапке; + ЭтоДокументСКонтрагентомВТабличнойЧасти = Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВТабличнойЧасти; + ЭтоДокументСоСчетомФактуройВПодвале = Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСоСчетомФактуройВПодвале; + ЭтоСчетФактура = Форма.РеквизитыПроверкиКонтрагентов.ЭтоСчетФактура; Если ЭтоДокументСКонтрагентомВШапке ИЛИ ЭтоДокументСоСчетомФактуройВПодвале ИЛИ ЭтоСчетФактура Тогда @@ -4273,14 +4404,14 @@ // Это передано имя таблицы формы и идентификатор строки. СвойстваТаблица = ДополнительныеПараметры.ИзменившаясяТаблица; - ОписаниеТабличныхЧастей = ОписаниеТабличныхЧастей(Форма); - ОписанияТабличныхЧастей = ОписаниеТабличныхЧастей.НайтиСтроки(Новый Структура("ИмяТаблицыФормы", СвойстваТаблица.ИмяТаблицы)); - - Для каждого ОписаниеТабличнойЧасти Из ОписанияТабличныхЧастей Цикл - ТабличнаяЧасть = ДокументОбъект[ОписаниеТабличнойЧасти.ИмяТабличнойЧасти]; - СтрокаТабличнойЧасти = ТабличнаяЧасть.НайтиПоИдентификатору(СвойстваТаблица.Идентификатор); + Для каждого ОписаниеТабличнойЧасти Из Форма.РеквизитыПроверкиКонтрагентов.ОписаниеТабличныхЧастей Цикл - ОчиститьРезультатПроверкиВСтроке(СтрокаТабличнойЧасти); + Если ОписаниеТабличнойЧасти.ИмяТаблицыФормы = СвойстваТаблица.ИмяТаблицы Тогда + ТабличнаяЧасть = ДокументОбъект[ОписаниеТабличнойЧасти.ИмяТабличнойЧасти]; + СтрокаТабличнойЧасти = ТабличнаяЧасть.НайтиПоИдентификатору(СвойстваТаблица.Идентификатор); + + ОчиститьРезультатПроверкиВСтроке(СтрокаТабличнойЧасти); + КонецЕсли; КонецЦикла; @@ -4305,12 +4436,10 @@ ОбъектИСсылкаПоФорме = ПроверкаКонтрагентовКлиентСервер.ОбъектИСсылкаПоФорме(Форма); ДокументОбъект = ОбъектИСсылкаПоФорме.Объект; - Если ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВТабличнойЧасти(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВТабличнойЧасти Тогда - ОписаниеТабличныхЧастей = ОписаниеТабличныхЧастей(Форма); - // Перебираем все табличные части. - Для каждого ОписаниеТабличнойЧасти Из ОписаниеТабличныхЧастей Цикл + Для каждого ОписаниеТабличнойЧасти Из Форма.РеквизитыПроверкиКонтрагентов.ОписаниеТабличныхЧастей Цикл ИмяТабличнойЧасти = ОписаниеТабличнойЧасти.ИмяТабличнойЧасти; ИмяКолонкиСКонтрагентом = ОписаниеТабличнойЧасти.ИмяКолонкиСКонтрагентом; @@ -4384,8 +4513,8 @@ ОбъектИСсылкаПоФорме = ПроверкаКонтрагентовКлиентСервер.ОбъектИСсылкаПоФорме(Форма); ДокументОбъект = ОбъектИСсылкаПоФорме.Объект; - ЭтоДокументСКонтрагентомВШапке = ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВШапке(Форма); - ЭтоДокументСКонтрагентомВТабличнойЧасти = ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВТабличнойЧасти(Форма); + ЭтоДокументСКонтрагентомВШапке = Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВШапке; + ЭтоДокументСКонтрагентомВТабличнойЧасти = Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВТабличнойЧасти; ЕстьОшибкаВШапке = Ложь; ЕстьОшибкаВТабличнойЧасти = Ложь; @@ -4399,10 +4528,8 @@ Если ЭтоДокументСКонтрагентомВТабличнойЧасти Тогда - ОписаниеТабличныхЧастей = ОписаниеТабличныхЧастей(Форма); - // Перебираем все табличные части. - Для каждого ОписаниеТабличнойЧасти Из ОписаниеТабличныхЧастей Цикл + Для каждого ОписаниеТабличнойЧасти Из Форма.РеквизитыПроверкиКонтрагентов.ОписаниеТабличныхЧастей Цикл ИмяТабличнойЧасти = ОписаниеТабличнойЧасти.ИмяТабличнойЧасти; ТабличнаяЧасть = ДокументОбъект[ОписаниеТабличнойЧасти.ИмяТабличнойЧасти]; @@ -4434,7 +4561,7 @@ Процедура ВосстановитьРезультатПроверкиКонтрагентовВТабличныхЧастяхПослеЗаписи(Форма, ТекущийОбъект) - ЭтоДокументСКонтрагентомВТабличнойЧасти = ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВТабличнойЧасти(Форма); + ЭтоДокументСКонтрагентомВТабличнойЧасти = Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВТабличнойЧасти; // Восстанавливаем результат проверки в табличной части. Если ЭтоДокументСКонтрагентомВТабличнойЧасти Тогда @@ -4459,13 +4586,13 @@ Процедура УправлениеФормойДокументаПриИнициализации(Форма) - ЭтоДокументСКонтрагентомВТабличнойЧасти = ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВТабличнойЧасти(Форма); + ЭтоДокументСКонтрагентомВТабличнойЧасти = Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВТабличнойЧасти; Если ЭтоДокументСКонтрагентомВТабличнойЧасти Тогда // Реквизиты объекта - ДобавитьКолонкиТабличнойЧастиСРезультатамиПроверкиВТабличныеЧасти(Форма); + ДобавитьКолонкиВТаблицу(Форма); // Элементы формы - ДобавитьКолонкиТаблицыФормыСРезультатамиПроверкиВТабличныеЧасти(Форма); + ДобавитьЭлементыФормыВТаблицу(Форма); // Условное оформление УстановитьУсловноеОформлениеТабличнойЧастиДокумента(Форма); КонецЕсли; @@ -4479,7 +4606,7 @@ ДокументСсылка = ОбъектИСсылкаПоФорме.Ссылка; // Корректность каждого контрагента. - Если ПроверкаКонтрагентовКлиентСервер.ЭтоСчетФактура(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоСчетФактура Тогда ЗапомнитьРезультатПроверкиКонтрагентовВСчетеФактуре(Форма, ДанныеКонтрагентов); Иначе ЗапомнитьРезультатПроверкиКонтрагентовВДокументе(Форма, ДанныеКонтрагентов); @@ -4500,7 +4627,7 @@ Процедура ОбновитьВРегистреСостоянияКонтрагентовНеСовпадающихСКэшем(Форма, ДанныеКонтрагентов) - // Получаем результат проверки контрагента из кэша + // Получаем результат проверки контрагента из кэша. ДанныеКонтрагентовИзКэша = Неопределено; Если ЗначениеЗаполнено(Форма.РеквизитыПроверкиКонтрагентов.АдресДанныхКонтрагентовИзКэша) И ЭтоАдресВременногоХранилища(Форма.РеквизитыПроверкиКонтрагентов.АдресДанныхКонтрагентовИзКэша) Тогда @@ -4540,10 +4667,10 @@ Возврат; КонецЕсли; - ЭтоДокументСКонтрагентомВШапке = ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВШапке(Форма); - ЭтоДокументСКонтрагентомВТабличнойЧасти = ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСКонтрагентомВТабличнойЧасти(Форма); - ЭтоДокументСоСчетомФактуройВПодвале = ПроверкаКонтрагентовКлиентСервер.ЭтоДокументСоСчетомФактуройВПодвале(Форма); - ЭтоСчетФактура = ПроверкаКонтрагентовКлиентСервер.ЭтоСчетФактура(Форма); + ЭтоДокументСКонтрагентомВШапке = Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВШапке; + ЭтоДокументСКонтрагентомВТабличнойЧасти = Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСКонтрагентомВТабличнойЧасти; + ЭтоДокументСоСчетомФактуройВПодвале = Форма.РеквизитыПроверкиКонтрагентов.ЭтоДокументСоСчетомФактуройВПодвале; + ЭтоСчетФактура = Форма.РеквизитыПроверкиКонтрагентов.ЭтоСчетФактура; Если ЭтоДокументСКонтрагентомВШапке ИЛИ ЭтоДокументСоСчетомФактуройВПодвале @@ -4639,7 +4766,7 @@ Возврат Истина; КонецЕсли; - // Получаем результат проверки контрагента из кэша + // Получаем результат проверки контрагента из кэша. ДанныеКонтрагентовИзКэша = Неопределено; Если ЗначениеЗаполнено(РеквизитыПроверкиКонтрагентов.АдресДанныхКонтрагентовИзКэша) И ЭтоАдресВременногоХранилища(РеквизитыПроверкиКонтрагентов.АдресДанныхКонтрагентовИзКэша) Тогда @@ -4661,25 +4788,56 @@ Запрос = Новый Запрос; - ПоместитьТаблицуЗначенийВоВременнуюТаблицу(ДанныеКонтрагентовИзКэша, Запрос, "ДанныеКонтрагентовИзКэша", "ИзКэша", "ДополнительныеПараметры"); - ПоместитьТаблицуЗначенийВоВременнуюТаблицу(ДанныеКонтрагентов, Запрос, "ДанныеКонтрагентов", , "ДополнительныеПараметры"); - - // В таблице оставляем строки с различающимся состоянием - Запрос.Текст = Запрос.Текст + " - |ВЫБРАТЬ - | " + ПредставлениеКолонок(ДанныеКонтрагентовИзКэша, "ДанныеКонтрагентовИзКэша.", "ИзКэша", "ДополнительныеПараметры") + ", - | " + ПредставлениеКолонок(ДанныеКонтрагентов, "ДанныеКонтрагентов.",, "ДополнительныеПараметры") + " - |ИЗ - | ДанныеКонтрагентовИзКэша КАК ДанныеКонтрагентовИзКэша - | ПОЛНОЕ СОЕДИНЕНИЕ ДанныеКонтрагентов КАК ДанныеКонтрагентов - | ПО ДанныеКонтрагентовИзКэша.Контрагент = ДанныеКонтрагентов.Контрагент - | И ДанныеКонтрагентовИзКэша.ИНН = ДанныеКонтрагентов.ИНН - | И ДанныеКонтрагентовИзКэша.КПП = ДанныеКонтрагентов.КПП - | И ДанныеКонтрагентовИзКэша.Ссылка = ДанныеКонтрагентов.Ссылка - | И (НАЧАЛОПЕРИОДА(ДанныеКонтрагентовИзКэша.Дата, ДЕНЬ) = НАЧАЛОПЕРИОДА(ДанныеКонтрагентов.Дата, ДЕНЬ)) - |ГДЕ - | ЕСТЬNULL(ДанныеКонтрагентов.Состояние,Неопределено) <> ЕСТЬNULL(ДанныеКонтрагентовИзКэша.Состояние,Неопределено)"; + // Данные из кэша. + ПоместитьТаблицуЗначенийВоВременнуюТаблицу( + ДанныеКонтрагентовИзКэша, + Запрос, + "ДанныеКонтрагентовИзКэша", + "ИзКэша", + "ДополнительныеПараметры"); + // Данные контрагентов. + ПоместитьТаблицуЗначенийВоВременнуюТаблицу( + ДанныеКонтрагентов, + Запрос, + "ДанныеКонтрагентов", + , + "ДополнительныеПараметры"); + + // В таблице оставляем строки с различающимся состоянием. + Запрос.Текст = Запрос.Текст + " + |ВЫБРАТЬ + | &ВыбираемыеПоляДанныхКонтрагентовИзКэша, + | &ВыбираемыеПоляДанныхКонтрагентов + |ИЗ + | ДанныеКонтрагентовИзКэша КАК ДанныеКонтрагентовИзКэша + | ПОЛНОЕ СОЕДИНЕНИЕ ДанныеКонтрагентов КАК ДанныеКонтрагентов + | ПО ДанныеКонтрагентовИзКэша.Контрагент = ДанныеКонтрагентов.Контрагент + | И ДанныеКонтрагентовИзКэша.ИНН = ДанныеКонтрагентов.ИНН + | И ДанныеКонтрагентовИзКэша.КПП = ДанныеКонтрагентов.КПП + | И ДанныеКонтрагентовИзКэша.Ссылка = ДанныеКонтрагентов.Ссылка + | И (НАЧАЛОПЕРИОДА(ДанныеКонтрагентовИзКэша.Дата, ДЕНЬ) = НАЧАЛОПЕРИОДА(ДанныеКонтрагентов.Дата, ДЕНЬ)) + |ГДЕ + | ЕСТЬNULL(ДанныеКонтрагентов.Состояние, НЕОПРЕДЕЛЕНО) <> ЕСТЬNULL(ДанныеКонтрагентовИзКэша.Состояние, НЕОПРЕДЕЛЕНО)"; + + // Имена выбираемых колонок собираются программно. + ВыбираемыеПоляДанныхКонтрагентовИзКэша = ПредставлениеКолонок( + ДанныеКонтрагентовИзКэша, + "ДанныеКонтрагентовИзКэша.", + "ИзКэша", + "ДополнительныеПараметры"); + + Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ВыбираемыеПоляДанныхКонтрагентовИзКэша", ВыбираемыеПоляДанныхКонтрагентовИзКэша); + + ВыбираемыеПоляДанныхКонтрагентов = ПредставлениеКолонок( + ДанныеКонтрагентов, + "ДанныеКонтрагентов." + , + , + "ДополнительныеПараметры"); + + Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ВыбираемыеПоляДанныхКонтрагентов", ВыбираемыеПоляДанныхКонтрагентов); + Возврат Запрос.Выполнить(); КонецФункции @@ -4740,15 +4898,14 @@ НекорректныеСостоянияКонтрагента = Новый СписокЗначений; НекорректныеСостоянияКонтрагента.ЗагрузитьЗначения(Состояния); - ОписаниеТабличныхЧастей = ОписаниеТабличныхЧастей(Форма); - Для каждого ОписаниеТабличнойЧасти Из ОписаниеТабличныхЧастей Цикл + Для каждого ОписаниеТабличнойЧасти Из Форма.РеквизитыПроверкиКонтрагентов.ОписаниеТабличныхЧастей Цикл ИмяТабличнойЧасти = ОписаниеТабличнойЧасти.ИмяТабличнойЧасти; ИмяПоляСКонтрагентом = ОписаниеТабличнойЧасти.ИмяПоляСКонтрагентом; ПолеСКонтрагентом = Форма.Элементы[ОписаниеТабличнойЧасти.ИмяПоляСКонтрагентом]; // Если поле с контрагентом скрыто функциональной опцией, то условное оформление не добавляем. - Если ПолеКонтрагентаСкрытоФункциональнойОпцией(Форма, ОписаниеТабличнойЧасти) Тогда + Если ОписаниеТабличнойЧасти.КонтрагентСкрытФункциональнойОпцией Тогда Продолжить; КонецЕсли; @@ -4777,19 +4934,17 @@ КонецПроцедуры -Процедура ДобавитьКолонкиТабличнойЧастиСРезультатамиПроверкиВТабличныеЧасти(Форма) +Процедура ДобавитьКолонкиВТаблицу(Форма) // Определение объекта и ссылки. ОбъектИСсылкаПоФорме = ПроверкаКонтрагентовКлиентСервер.ОбъектИСсылкаПоФорме(Форма); ДокументОбъект = ОбъектИСсылкаПоФорме.Объект; - ОписаниеТабличныхЧастей = ОписаниеТабличныхЧастей(Форма); - - Для каждого ОписаниеТабличнойЧасти Из ОписаниеТабличныхЧастей Цикл + Для каждого ОписаниеТабличнойЧасти Из Форма.РеквизитыПроверкиКонтрагентов.ОписаниеТабличныхЧастей Цикл // Если поле с контрагентом скрыто функциональной опцией, то колонку для отображения результата проверки контрагента // не выводим. - Если ПолеКонтрагентаСкрытоФункциональнойОпцией(Форма, ОписаниеТабличнойЧасти) Тогда + Если ОписаниеТабличнойЧасти.КонтрагентСкрытФункциональнойОпцией Тогда Продолжить; КонецЕсли; @@ -4812,7 +4967,7 @@ КонецПроцедуры -Процедура ДобавитьКолонкиТаблицыФормыСРезультатамиПроверкиВТабличныеЧасти(Форма) +Процедура ДобавитьЭлементыФормыВТаблицу(Форма) СтандартнаяОбработка = Истина; РаботаСКонтрагентамиПереопределяемый.ДобавитьКолонкиТаблицыФормыСРезультатамиПроверкиВТабличныеЧасти(Форма, СтандартнаяОбработка); @@ -4826,14 +4981,7 @@ ОбъектИСсылкаПоФорме = ПроверкаКонтрагентовКлиентСервер.ОбъектИСсылкаПоФорме(Форма); ДокументСсылка = ОбъектИСсылкаПоФорме.Ссылка; - ОписаниеТабличныхЧастей = ОписаниеТабличныхЧастей(Форма); - Для каждого ОписаниеТабличнойЧасти Из ОписаниеТабличныхЧастей Цикл - - // Если поле с контрагентом скрыто функциональной опцией, то колонку для отображения результата проверки контрагента - // не выводим. - Если ПолеКонтрагентаСкрытоФункциональнойОпцией(Форма, ОписаниеТабличнойЧасти) Тогда - Продолжить; - КонецЕсли; + Для каждого ОписаниеТабличнойЧасти Из Форма.РеквизитыПроверкиКонтрагентов.ОписаниеТабличныхЧастей Цикл ИмяТабличнойЧасти = ОписаниеТабличнойЧасти.ИмяТабличнойЧасти; ИмяКолонкиСКонтрагентом = ОписаниеТабличнойЧасти.ИмяКолонкиСКонтрагентом; @@ -4849,12 +4997,29 @@ // Если колонки с результатом проверки контрагента нет в табличной части, то добавляем ее. Если НовоеПолеКартинки = Неопределено Тогда - НовоеПолеКартинки = НовоеПолеКартинки(Форма, ТаблицаФормы, ПолеСКонтрагентом.Родитель, ПолеСКонтрагентом); - НоваяГруппаКолонок = НоваяГруппаКолонок(Форма, ПолеСКонтрагентом.Родитель, ПолеСКонтрагентом, ОписаниеТабличнойЧасти); + НовоеПолеКартинки = НовоеПолеКартинки( + Форма, + ТаблицаФормы, + ПолеСКонтрагентом.Родитель, + ПолеСКонтрагентом); + + НоваяГруппаКолонок = НоваяГруппаКолонок( + Форма, + ПолеСКонтрагентом.Родитель, + ПолеСКонтрагентом, + ОписаниеТабличнойЧасти, + НовоеПолеКартинки); + + Иначе - // Перемещаем колонки в группу. - Элементы.Переместить(ПолеСКонтрагентом, НоваяГруппаКолонок); - Элементы.Переместить(НовоеПолеКартинки, НоваяГруппаКолонок); + // Колонка с картинкой уже есть. + // Если поле с контрагентом скрыто функциональной опцией, то колонку для отображения результата проверки контрагента + // не выводим. + + Если ОписаниеТабличнойЧасти.КонтрагентСкрытФункциональнойОпцией Тогда + НовоеПолеКартинки.Видимость = Ложь; + Продолжить; + КонецЕсли; КонецЕсли; @@ -4908,11 +5073,16 @@ КонецФункции -Функция НовоеПолеКартинки(Форма, ТаблицаФормы, Родитель, СледующийЭлемент) +Функция НовоеПолеКартинки(Форма, ТаблицаФормы, Родитель, ПолеСКонтрагентом) Элементы = Форма.Элементы; - НовоеПоле = Элементы.Вставить(ПроверкаКонтрагентовКлиентСервер.ИмяПоляКартинки(ТаблицаФормы), Тип("ПолеФормы"), Родитель, СледующийЭлемент); + НовоеПоле = Элементы.Вставить( + ПроверкаКонтрагентовКлиентСервер.ИмяПоляКартинки(ТаблицаФормы), + Тип("ПолеФормы"), + Родитель, + ПолеСКонтрагентом); + НовоеПоле.Заголовок = НСтр("ru = 'Есть ошибка по данным ФНС'"); НовоеПоле.Вид = ВидПоляФормы.ПолеКартинки; НовоеПоле.КартинкаЗначений = БиблиотекаКартинок.НекорректныйКонтрагент; @@ -4927,7 +5097,7 @@ КонецФункции -Функция НоваяГруппаКолонок(Форма, Родитель, СледующийЭлемент, ОписаниеТабличнойЧасти) +Функция НоваяГруппаКолонок(Форма, Родитель, ПолеСКонтрагентом, ОписаниеТабличнойЧасти, НовоеПолеКартинки) // Определение объекта и ссылки. ОбъектИСсылкаПоФорме = ПроверкаКонтрагентовКлиентСервер.ОбъектИСсылкаПоФорме(Форма); @@ -4935,9 +5105,9 @@ Элементы = Форма.Элементы; - НоваяГруппаКолонок = Элементы.Вставить(СледующийЭлемент.Имя + "Группа", Тип("ГруппаФормы"), Родитель, СледующийЭлемент); + НоваяГруппаКолонок = Элементы.Вставить(ПолеСКонтрагентом.Имя + "Группа", Тип("ГруппаФормы"), Родитель, ПолеСКонтрагентом); - Заголовок = СледующийЭлемент.Заголовок; + Заголовок = ПолеСКонтрагентом.Заголовок; Если НЕ ЗначениеЗаполнено(Заголовок) Тогда ИмяТабличнойЧасти = ОписаниеТабличнойЧасти.ИмяТабличнойЧасти; @@ -4951,9 +5121,13 @@ НоваяГруппаКолонок.ОтображатьЗаголовок = Истина; НоваяГруппаКолонок.Группировка = ГруппировкаКолонок.Горизонтальная; НоваяГруппаКолонок.ОтображатьВШапке = Истина; - НоваяГруппаКолонок.ФиксацияВТаблице = СледующийЭлемент.ФиксацияВТаблице; + НоваяГруппаКолонок.ФиксацияВТаблице = ПолеСКонтрагентом.ФиксацияВТаблице; НоваяГруппаКолонок.Ширина = 17; НоваяГруппаКолонок.РастягиватьПоГоризонтали = Ложь; + + // Перемещаем колонки в группу. + Элементы.Переместить(ПолеСКонтрагентом, НоваяГруппаКолонок); + Элементы.Переместить(НовоеПолеКартинки, НоваяГруппаКолонок); Возврат НоваяГруппаКолонок; @@ -5081,7 +5255,7 @@ ДокументОбъект = ОбъектИСсылкаПоФорме.Объект; ДокументСсылка = ОбъектИСсылкаПоФорме.Ссылка; - Если ПроверкаКонтрагентовКлиентСервер.ЭтоСчетФактура(Форма) Тогда + Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоСчетФактура Тогда Описание = ОписаниеКонтрагентовВСчетеФактуре(ТипЗнч(ДокументСсылка)); Для каждого СтрокаОписания Из Описание Цикл @@ -5210,9 +5384,7 @@ Возврат; КонецЕсли; - ИспользованиеПроверкиВозможно = ПроверкаКонтрагентовВызовСервера.ИспользованиеПроверкиВозможно(); - - Если НЕ ИспользованиеПроверкиВозможно + Если НЕ ПроверкаКонтрагентовВызовСервераПовтИсп.ИспользованиеПроверкиВозможно() ИЛИ СправочникКонтрагентовИерархический() И КонтрагентОбъект.ЭтоГруппа Тогда Возврат; КонецЕсли; @@ -5224,9 +5396,6 @@ СостояниеКонтрагента = Перечисления.СостоянияСуществованияКонтрагента.ПустаяСсылка(); КонтрагентОбъект.ДополнительныеСвойства.Свойство("ПроверкаКонтрагентовСостояниеКонтрагента", СостояниеКонтрагента); - // Если в режиме проверки по кнопке не записывать в регистр пустое состояние, - // то получится, что у контрагента сохранится старое состояние. - // Лучше пусть оно будет пустым, чем старым. Так пользователь не будет введен в заблуждение. Если НЕ ЗначениеЗаполнено(СостояниеКонтрагента) Тогда Возврат; КонецЕсли; diff --git a/SSL/src/CommonModules/ПроверкаКонтрагентовВызовСервера/Module.bsl b/SSL/src/CommonModules/ПроверкаКонтрагентовВызовСервера/Module.bsl index 299b6bcb4..2e463e600 100644 --- a/SSL/src/CommonModules/ПроверкаКонтрагентовВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/ПроверкаКонтрагентовВызовСервера/Module.bsl @@ -58,7 +58,7 @@ // существует ли контрагент. // // Параметры: -// КонтрагентСсылка - СправочникСсылка.<Контрагенты> - Проверяемый контрагент. +// КонтрагентСсылка - ОпределяемыйТип.Контрагент - Проверяемый контрагент. // ИНН - Строка - ИНН контрагента. // КПП - Строка - КПП контрагента. // Возвращаемое значение: @@ -81,7 +81,7 @@ // Получает состояние контрагента из регистра сведений. // // Параметры: -// КонтрагентСсылка - СправочникСсылка.<Контрагенты> - Проверяемый контрагент. +// КонтрагентСсылка - ОпределяемыйТип.Контрагент - Проверяемый контрагент. // ИНН - Строка - ИНН контрагента. // КПП - Строка - КПП контрагента. // Возвращаемое значение: @@ -167,17 +167,6 @@ КонецПроцедуры -// Проверяет, что проверка включена и есть необходимые права. -// Возвращаемое значение: -// Булево - Истина, если есть нужные права на проверку и проверка включена. -// -Функция ИспользованиеПроверкиВозможно() Экспорт - - Возврат ПроверкаКонтрагентов.ЕстьПравоНаИспользованиеПроверки() - И ПроверкаКонтрагентов.ПроверкаКонтрагентовВключена(); - -КонецФункции - // Выполняет действия при включении и отключении проверки. // // Параметры: @@ -191,8 +180,9 @@ КонецПроцедуры // Результат проверки параметров доступа к веб-сервису ФНС. +// // Возвращаемое значение: -// Булево - Доступ к веб-сервису ФНС по проверке контрагентов есть. +// Булево - Доступ к веб-сервису ФНС по проверке контрагентов есть. // Функция РезультатПроверкиПараметровДоступа() Экспорт @@ -224,6 +214,21 @@ #КонецОбласти +#Область УстаревшиеПроцедурыИФункции + +// Проверяет, что проверка включена и есть необходимые права. +// Возвращаемое значение: +// Булево - Истина, если есть нужные права на проверку и проверка включена. +// +Функция ИспользованиеПроверкиВозможно() Экспорт + + Возврат ПроверкаКонтрагентов.ЕстьПравоНаИспользованиеПроверки() + И ПроверкаКонтрагентов.ПроверкаКонтрагентовВключена(); + +КонецФункции + +#КонецОбласти + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -261,4 +266,4 @@ КонецПроцедуры -#КонецОбласти +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/ПроверкаКонтрагентовВызовСервераПовтИсп/Module.bsl b/SSL/src/CommonModules/ПроверкаКонтрагентовВызовСервераПовтИсп/Module.bsl index b601b12af..52c8f3936 100644 --- a/SSL/src/CommonModules/ПроверкаКонтрагентовВызовСервераПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/ПроверкаКонтрагентовВызовСервераПовтИсп/Module.bsl @@ -13,24 +13,43 @@ Функция ЦветаРезультатовПроверки() Экспорт Цвета = Новый Структура(); + Цвета.Вставить("ЦветТекстаКонтрагентаПрекратившегоДеятельность", ЦветаСтиля.ЦветТекстаКонтрагентаПрекратившегоДеятельность);// серый + Цвета.Вставить("ЦветТекстаНекорректногоКонтрагента", ЦветаСтиля.ЦветТекстаНекорректногоКонтрагента);// красный + Цвета.Вставить("ЦветТекстаКонтрагентаДействующего", ЦветаСтиля.ЦветТекстаКонтрагентаДействующего); // зеленый + Цвета.Вставить("ЦветФонаДокументаСНекорректнымиКонтрагентамиВСпискеДокументов", ЦветаСтиля.ЦветФонаДокументаСНекорректнымиКонтрагентамиВСпискеДокументов); // розовый + Цвета.Вставить("ЦветФонаКорректногоКонтрагентаВДокументе", ЦветаСтиля.ЦветФонаКорректногоКонтрагентаВДокументе); // зеленый + Цвета.Вставить("ЦветФонаНекорректногоКонтрагентаВДокументе", ЦветаСтиля.ЦветФонаНекорректногоКонтрагентаВДокументе); // красный + Цвета.Вставить("ЦветФонаФормы", ЦветаСтиля.ЦветФонаФормы); // белый + РаботаСКонтрагентамиПереопределяемый.ОпределитьЦветаРезультатовПроверки(Цвета); Возврат Цвета; КонецФункции +// Проверяет, что проверка включена и есть необходимые права. +// Возвращаемое значение: +// Булево - Истина, если есть нужные права на проверку и проверка включена. +// +Функция ИспользованиеПроверкиВозможно() Экспорт + + Возврат ПроверкаКонтрагентов.ЕстьПравоНаИспользованиеПроверки() + И ПроверкаКонтрагентов.ПроверкаКонтрагентовВключена(); + +КонецФункции + #КонецОбласти diff --git a/SSL/src/CommonModules/ПроверкаКонтрагентовКлиент/Module.bsl b/SSL/src/CommonModules/ПроверкаКонтрагентовКлиент/Module.bsl index 07f962dc8..750efaf8b 100644 --- a/SSL/src/CommonModules/ПроверкаКонтрагентовКлиент/Module.bsl +++ b/SSL/src/CommonModules/ПроверкаКонтрагентовКлиент/Module.bsl @@ -48,7 +48,7 @@ // передан адрес. // // Параметры: -// КонтрагентСсылка - СправочникСсылка.<Контрагенты> - Проверяемый контрагент. +// КонтрагентСсылка - ОпределяемыйТип.Контрагент - Проверяемый контрагент. // ИНН - Строка - ИНН контрагента. // КПП - Строка - КПП контрагента. // АдресХранилища - Строка - Адрес временного хранилища, в котором может содержаться @@ -176,6 +176,9 @@ И ДополнительныеПараметры.Свойство("ЭтоПроверкаПоКнопке") И ДополнительныеПараметры.ЭтоПроверкаПоКнопке; + Форма.РеквизитыПроверкиКонтрагентов.ЭтоПроверкаКонтрагентовПриОткрытии = + НЕ Форма.РеквизитыПроверкиКонтрагентов.ЭтоПроверкаПоКнопке; + // Для предотвращения проверки при отключенной автоматической проверке, // когда меняется контрагент в документе. Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоПроверкаПоКнопке @@ -222,7 +225,8 @@ ИначеЕсли НЕ ОтложитьПрорисовкуРезультатаПроверкиКонтрагентов Тогда - Результат = ПроверкаКонтрагентовВызовСервера.РезультатРаботыФоновогоЗаданияПроверкиКонтрагентовВДокументе(Форма.РеквизитыПроверкиКонтрагентов); + Результат = ПроверкаКонтрагентовВызовСервера.РезультатРаботыФоновогоЗаданияПроверкиКонтрагентовВДокументе( + Форма.РеквизитыПроверкиКонтрагентов); Если Результат.ЗаданиеВыполнено Тогда @@ -393,30 +397,25 @@ Если Форма.РеквизитыПроверкиКонтрагентов.ЕстьДоступКВебСервисуФНС Тогда - Форма.ОтключитьОбработчикОжидания("Подключаемый_ОбработатьРезультатПроверкиКонтрагентов"); - Форма.ПроверитьКонтрагентов(); - ПроверкаКонтрагентовКлиентСервер.УстановитьВидПанелиПроверкиКонтрагентовВОтчете(Форма, "ПроверкаВПроцессеВыполнения"); - Если Форма.РеквизитыПроверкиКонтрагентов.ЗаданиеВыполнено Тогда - - Форма.ОтобразитьРезультатПроверкиКонтрагента(); - Форма.РеквизитыПроверкиКонтрагентов.ИдентификаторЗадания = Неопределено; - - Иначе - - // Результата еще нет, но есть шансы дождаться. - ИнициализироватьПараметрыОбработчикаОжиданияВОтчете( - Форма.ПроверкаКонтрагентовПараметрыОбработчикаОжидания, - Форма.РеквизитыПроверкиКонтрагентов.НедействующиеКонтрагентыКоличество); + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(Форма); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + + ДополнительныеПараметры = Новый Структура(); + ДополнительныеПараметры.Вставить("Форма", Форма); - Форма.ПодключитьОбработчикОжидания( - "Подключаемый_ОбработатьРезультатПроверкиКонтрагентов", - Форма.ПроверкаКонтрагентовПараметрыОбработчикаОжидания.ТекущийИнтервал, - Истина); - - КонецЕсли; + ОповещениеОЗавершении = Новый ОписаниеОповещения( + "ПроверкаКонтрагентовВОтчетеЗавершение", + ЭтотОбъект, + ДополнительныеПараметры); + + ДлительныеОперацииКлиент.ОжидатьЗавершение( + Форма.РеквизитыПроверкиКонтрагентов.ДлительнаяОперация, + ОповещениеОЗавершении, + ПараметрыОжидания); + Иначе ПроверкаКонтрагентовКлиентСервер.ВывестиНужнуюПанельПроверкиКонтрагентовВОтчете(Форма); КонецЕсли; @@ -426,27 +425,6 @@ КонецПроцедуры -// Обработка результата проверки контрагентов в отчете. -// -// Параметры: -// Форма - УправляемаяФорма - Форма документа, в котором выполняется проверка контрагентов. -Процедура ОбработатьРезультатПроверкиКонтрагентовВОтчете(Форма) Экспорт - - Попытка - Если ПроверкаКонтрагентовВызовСервера.ЗаданиеВыполнено(Форма.РеквизитыПроверкиКонтрагентов.ИдентификаторЗадания) Тогда - Форма.ОтобразитьРезультатПроверкиКонтрагента(); - Форма.РеквизитыПроверкиКонтрагентов.ИдентификаторЗадания = Неопределено; - Иначе - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(Форма.ПроверкаКонтрагентовПараметрыОбработчикаОжидания); - Форма.ПодключитьОбработчикОжидания("Подключаемый_ОбработатьРезультатПроверкиКонтрагентов", - Форма.ПроверкаКонтрагентовПараметрыОбработчикаОжидания.ТекущийИнтервал, Истина); - КонецЕсли; - Исключение - ВызватьИсключение; - КонецПопытки; - -КонецПроцедуры - #КонецОбласти #Область ПроверкаКонтрагентовВСправочнике @@ -588,7 +566,7 @@ // Сброс актуальности, сброс вида панели проверки контрагентов при изменении отборов отчета. // // Параметры: -// Форма - УправляемаяФорма - Форма отчета, в котором выполняется проверка контрагентов. +// Форма - УправляемаяФорма - Форма отчета, в котором выполняется проверка контрагентов. Процедура СброситьАктуальностьОтчета(Форма) Экспорт ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Форма.Элементы.Результат, "НеАктуальность"); @@ -596,12 +574,43 @@ КонецПроцедуры +// Обработка результата проверки контрагентов в отчете. +// +// Параметры: +// Форма - УправляемаяФорма - Форма документа, в котором выполняется проверка контрагентов. +Процедура ОбработатьРезультатПроверкиКонтрагентовВОтчете(Форма) Экспорт + + Попытка + Если ПроверкаКонтрагентовВызовСервера.ЗаданиеВыполнено(Форма.РеквизитыПроверкиКонтрагентов.ИдентификаторЗадания) Тогда + Форма.ОтобразитьРезультатПроверкиКонтрагента(); + Форма.РеквизитыПроверкиКонтрагентов.ИдентификаторЗадания = Неопределено; + Иначе + ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(Форма.ПроверкаКонтрагентовПараметрыОбработчикаОжидания); + Форма.ПодключитьОбработчикОжидания("Подключаемый_ОбработатьРезультатПроверкиКонтрагентов", + Форма.ПроверкаКонтрагентовПараметрыОбработчикаОжидания.ТекущийИнтервал, Истина); + КонецЕсли; + Исключение + ВызватьИсключение; + КонецПопытки; + +КонецПроцедуры + #КонецОбласти #КонецОбласти #Область СлужебныеПроцедурыИФункции +Процедура ПроверкаКонтрагентовВОтчетеЗавершение(Результат, ДополнительныеПараметры) Экспорт + + Форма = ДополнительныеПараметры.Форма; + + Форма.РеквизитыПроверкиКонтрагентов.АдресХранилища = Результат.АдресРезультата; + Форма.ОтобразитьРезультатПроверкиКонтрагента(); + Форма.РеквизитыПроверкиКонтрагентов.ДлительнаяОперация = Неопределено; + +КонецПроцедуры + Процедура ОповеститьОбИзмененииСостоянияДокумента(Форма) // Перерисовка списка выполняется всегда, не только когда данные в регистре не совпадают с @@ -655,9 +664,9 @@ Иначе ПроверкаКонтрагентовКлиентСервер.ОтобразитьРезультатПроверкиКонтрагентаВСправочнике(Форма); - // Проверяем результат через 1,3 и 9 сек. - Если Форма.РеквизитыПроверкиКонтрагентов.ИнтервалПроверкиРезультата < 9 Тогда - Форма.РеквизитыПроверкиКонтрагентов.ИнтервалПроверкиРезультата = Форма.РеквизитыПроверкиКонтрагентов.ИнтервалПроверкиРезультата * 3; + // Проверяем результат через каждые 2 сек до 25 сек + Если Форма.РеквизитыПроверкиКонтрагентов.ИнтервалПроверкиРезультата <= 25 Тогда + Форма.РеквизитыПроверкиКонтрагентов.ИнтервалПроверкиРезультата = Форма.РеквизитыПроверкиКонтрагентов.ИнтервалПроверкиРезультата + 2; Форма.ПодключитьОбработчикОжидания("Подключаемый_ОбработатьРезультатПроверкиКонтрагентов", Форма.РеквизитыПроверкиКонтрагентов.ИнтервалПроверкиРезультата, Истина); Возврат; Иначе @@ -666,7 +675,7 @@ // Была выполнена проверка по кнопке. // Пользователь ждет результата. - // Если результат через 9 секунд не получен - предупреждаем пользователя. + // Если результат через 25 секунд не получен - предупреждаем пользователя. Если Форма.РеквизитыПроверкиКонтрагентов.ЭтоПроверкаПоКнопке Тогда УведомитьОбОтсутствииДоступа(); // в справочнике КонецЕсли; @@ -691,19 +700,6 @@ КонецПроцедуры -Процедура ИнициализироватьПараметрыОбработчикаОжиданияВОтчете(ПараметрыОбработчикаОжидания, КоличествоКонтрагентов) - - ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания); - - Если КоличествоКонтрагентов >= 10000 Тогда - ПараметрыОбработчикаОжидания.МаксимальныйИнтервал = 60; - ПараметрыОбработчикаОжидания.ТекущийИнтервал = 30; - ИначеЕсли КоличествоКонтрагентов >= 1000 Тогда - ПараметрыОбработчикаОжидания.ТекущийИнтервал = Мин(2 * Цел(КоличествоКонтрагентов / 1000), ПараметрыОбработчикаОжидания.МаксимальныйИнтервал); - КонецЕсли; - -КонецПроцедуры - Процедура ОчиститьРезультатПроверкиКонтрагента(Форма) Форма.РеквизитыПроверкиКонтрагентов.СостояниеКонтрагента = diff --git a/SSL/src/CommonModules/ПроверкаКонтрагентовКлиентСервер/Module.bsl b/SSL/src/CommonModules/ПроверкаКонтрагентовКлиентСервер/Module.bsl index e5ff66f48..4e5d5dab9 100644 --- a/SSL/src/CommonModules/ПроверкаКонтрагентовКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/ПроверкаКонтрагентовКлиентСервер/Module.bsl @@ -158,7 +158,7 @@ // Параметры: // Источник - Произвольный - Источник обработки оповещения. // Возвращаемое значение: -// - +// Булево - является ли источник контрагентом. // Функция ЭтоКонтрагент(Источник) Экспорт @@ -195,8 +195,10 @@ СостояниеКонтрагента = ПараметрыПрорисовки.СостояниеКонтрагента; КонтрагентовНесколько = ПараметрыПрорисовки.КонтрагентовНесколько; - ЦветФона = Новый Цвет(); - Подстроки = Новый Массив; + Цвета = ПроверкаКонтрагентовВызовСервераПовтИсп.ЦветаРезультатовПроверки(); + ЦветФона = Цвета.ЦветФонаФормы; + + Подстроки = Новый Массив; РекламаСервиса = Новый ФорматированнаяСтрока( НСтр("ru = 'Проверьте контрагента по кнопке в подменю Еще'")); @@ -220,8 +222,6 @@ И ЗначениеЗаполнено(СостояниеКонтрагента) Тогда // Проверка завершилась - Цвета = ПроверкаКонтрагентовВызовСервераПовтИсп.ЦветаРезультатовПроверки(); - ЦветНекорректногоКонтрагента = Цвета.ЦветФонаНекорректногоКонтрагентаВДокументе; ЦветКорректногоКонтрагента = Цвета.ЦветФонаКорректногоКонтрагентаВДокументе; @@ -320,7 +320,7 @@ // Предназначена для определения имени справочника, имени реквизитов ИНН и КПП. // // Возвращаемое значение: -// Структура - Структура с ключами Имя, ИНН и КПП справочника контрагенты. +// Структура - Структура с ключами Имя, ИНН и КПП справочника контрагенты. // Функция СвойстваСправочникаКонтрагенты() Экспорт @@ -400,13 +400,29 @@ // - Дата - Дата документа, в случае если произошло изменение даты. // - ТаблицаФормы - Если изменения произошли в табличной части. // - ПолеФормы - Если изменился контрагент в определенном поле произошли в табличной части. -// - СправочникСсылка.<Контрагенты> - Если произошла запись контрагента и сработало оповещение. -// - ДокументСсылка.<СчетФактура> - Если произошла запись счета-фактуры и сработало оповещение. +// - ОпределяемыйТип.Контрагент - Если произошла запись контрагента и сработало оповещение. +// - ДокументСсылка - Если произошла запись счета-фактуры и сработало оповещение. // - Булево - определяет, нужно ли сохранять результат проверки // сразу в фоновом задании или после выхода из него. -// Результат - - +// Результат - Структура - параметры фонового задания с одним или несколькими значениями, указанным ниже: +// * ИзменившаясяТаблица - Структура - Описание таблицы: +// ** ИмяТаблицы - Строка - Имя редактируемой таблицы. +// ** Идентификатор - Число - Идентификатор редактируемой строки. +// * ИзменившеесяПоле - Строка - Имя поля формы. +// * ИзменившийсяКонтрагент - ОпределяемыйТип.Контрагент - Изменившийся контрагент. +// * ИзменившаясяДата - Дата - Изменившаяся дата. +// * СохранятьРезультатСразуПослеПроверки - Булево - Определяет, сохранить ли результат сразу. +// * ИзменившийсяСчетФактура - ДокументСсылка - Изменившийся счет-фактура. // Возвращаемое значение: -// - +// Структура - параметры фонового задания с одним или несколькими значениями, указанным ниже: +// * ИзменившаясяТаблица - Структура - Описание таблицы: +// ** ИмяТаблицы - Строка - Имя редактируемой таблицы. +// ** Идентификатор - Число - Идентификатор редактируемой строки. +// * ИзменившеесяПоле - Строка - Имя поля формы. +// * ИзменившийсяКонтрагент - ОпределяемыйТип.Контрагент - Изменившийся контрагент. +// * ИзменившаясяДата - Дата - Изменившаяся дата. +// * СохранятьРезультатСразуПослеПроверки - Булево - Определяет, сохранить ли результат сразу. +// * ИзменившийсяСчетФактура - ДокументСсылка - Изменившийся счет-фактура. // Функция ПараметрыФоновогоЗадания(Параметр, Знач Результат = Неопределено) Экспорт @@ -568,7 +584,7 @@ // Предварительная проверка НайденыОшибки = НайденыОшибкиВДанных(ДанныеКонтрагента, ДополнительныеПараметрыПроверки); - // Сохранение результатов проверки + // Сохранение результатов проверки. Если НайденыОшибки Тогда // Сохранение результата в реквизит. @@ -725,6 +741,7 @@ Форма.РеквизитыПроверкиКонтрагентов.ВыполнятьПредварительнуюПроверкуКонтрагента); ПараметрыЗапуска.Вставить("ЭтоЮридическоеЛицо", Форма.РеквизитыПроверкиКонтрагентов.ЭтоЮридическоеЛицо); ПараметрыЗапуска.Вставить("ЭтоИностранныйКонтрагент", Форма.РеквизитыПроверкиКонтрагентов.ЭтоИностранныйКонтрагент); + ПараметрыЗапуска.Вставить("ЭтоПроверкаПоКнопке", Форма.РеквизитыПроверкиКонтрагентов.ЭтоПроверкаПоКнопке); РаботаСКонтрагентамиКлиентСерверПереопределяемый.ДополнитьПараметрыЗапускаФоновогоЗадания(ПараметрыЗапуска.ДополнительныеПараметры, Форма); diff --git a/SSL/src/CommonModules/ПроверкаКонтрагентовКлиентСерверПовтИсп/Module.bsl b/SSL/src/CommonModules/ПроверкаКонтрагентовКлиентСерверПовтИсп/Module.bsl index 29e450655..a6c93c165 100644 --- a/SSL/src/CommonModules/ПроверкаКонтрагентовКлиентСерверПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/ПроверкаКонтрагентовКлиентСерверПовтИсп/Module.bsl @@ -96,7 +96,7 @@ // Перечень состояний контрагента с ошибками в данных. // // Возвращаемое значение: -// Массив - Состояния контрагента, при которых он имеет ошибки в данных. +// Массив - Состояния контрагента, при которых он имеет ошибки в данных. // Функция СостоянияКонтрагентаСОшибкой() Экспорт @@ -107,7 +107,7 @@ // Перечень недействующих состояний и состояний с ошибками. // // Возвращаемое значение: -// Массив - Состояния контрагента, при которых он имеет ошибки в данных. +// Массив - Состояния контрагента, при которых он имеет ошибки в данных. // Функция НекорректныеСостоянияКонтрагента() Экспорт diff --git a/SSL/src/CommonModules/ПроверкаЛегальностиПолученияОбновленияКлиент/Module.bsl b/SSL/src/CommonModules/ПроверкаЛегальностиПолученияОбновленияКлиент/Module.bsl index 58f6ffb1e..24d12657b 100644 --- a/SSL/src/CommonModules/ПроверкаЛегальностиПолученияОбновленияКлиент/Module.bsl +++ b/SSL/src/CommonModules/ПроверкаЛегальностиПолученияОбновленияКлиент/Module.bsl @@ -10,13 +10,11 @@ // (см. параметр ЗавершатьРаботуСистемы). // // Параметры: +// Оповещение - ОписаниеОповещения - содержит обработчик, вызываемый после +// подтверждения легальности получения обновления. // ЗавершатьРаботуСистемы - Булево - завершать работу системы, если пользователь // указал что обновление получено не легально. // -// Возвращаемое значение: -// Булево - Истина, если проверка завершилась успешно (пользователь -// подтвердил, что обновление получено легально). -// Процедура ПоказатьПроверкуЛегальностиПолученияОбновления(Оповещение, ЗавершатьРаботуСистемы = Ложь) Экспорт Если СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЭтоБазоваяВерсияКонфигурации Тогда diff --git a/SSL/src/CommonModules/РаботаВБезопасномРежиме/Module.bsl b/SSL/src/CommonModules/РаботаВБезопасномРежиме/Module.bsl index 76cdec065..43484babf 100644 --- a/SSL/src/CommonModules/РаботаВБезопасномРежиме/Module.bsl +++ b/SSL/src/CommonModules/РаботаВБезопасномРежиме/Module.bsl @@ -403,12 +403,13 @@ // - запрещается изменение объектов, которые управляют состоянием условного разделения. // // Параметры: -// Выражение - Строка - выражение, которое требуется вычислить, +// Выражение - Строка - выражение, которое требуется вычислить. Например, "МойМодуль.МояФункция(Параметры)". // Параметры - Произвольный - в качестве значения данного параметра может быть передано значение, // которое требуется для вычисления выражения (при этом в тексте выражения обращение к данному // значению должно осуществляться как к имени переменной Параметры). // -// Возвращаемое значение: Произвольный - результат вычисления выражения. +// Возвращаемое значение: +// Произвольный - результат вычисления выражения. // Функция ВычислитьВБезопасномРежиме(Знач Выражение, Знач Параметры = Неопределено) Экспорт @@ -479,13 +480,7 @@ // Процедура ВыполнитьМетодКонфигурации(Знач ИмяМетода, Знач Параметры = Неопределено) Экспорт - Попытка - ПроверитьИмяМетодаКонфигурации(ИмяМетода); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - ВызватьИсключение НСтр("ru = 'Ошибка при вызове процедуры ВыполнитьМетодКонфигурации общего модуля РаботаВБезопасномРежиме.'") - + Символы.ПС + КраткоеПредставлениеОшибки(ИнформацияОбОшибке); - КонецПопытки; + ПроверитьИмяМетодаКонфигурации(ИмяМетода); Если ПолучитьФункциональнуюОпцию("ИспользуютсяПрофилиБезопасности") И Не УстановленБезопасныйРежим() Тогда @@ -531,7 +526,8 @@ Попытка Тест = Новый Структура(ИмяМетода, ИмяМетода); Исключение - ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='Некорректное значение параметра ИмяМетода (%1)'"), ИмяМетода); + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru='Некорректное значение параметра ИмяМетода (%1) в РаботаВБезопасномРежиме.ВыполнитьМетодОбъекта'"), ИмяМетода); КонецПопытки; Если ПолучитьФункциональнуюОпцию("ИспользуютсяПрофилиБезопасности") И Не УстановленБезопасныйРежим() Тогда @@ -573,13 +569,14 @@ // Проверка предусловий на формат ИмяЭкспортнойПроцедуры. ЧастиИмени = СтрРазделить(ИмяМетода, "."); Если ЧастиИмени.Количество() <> 2 И ЧастиИмени.Количество() <> 3 Тогда - ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Неправильный формат параметра ИмяМетода (%1)'"), ИмяМетода); + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Неправильный формат параметра ИмяМетода (передано значение: ""%1"") в РаботаВБезопасномРежиме.ПроверитьИмяМетодаКонфигурации'"), ИмяМетода); КонецЕсли; ИмяОбъекта = ЧастиИмени[0]; Если ЧастиИмени.Количество() = 2 И Метаданные.ОбщиеМодули.Найти(ИмяОбъекта) = Неопределено Тогда ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Неправильный формат параметра ИмяМетода (%1): + НСтр("ru = 'Неправильный формат параметра ИмяМетода (передано значение: ""%1"") в РаботаВБезопасномРежиме.ПроверитьИмяМетодаКонфигурации: |Не найден общий модуль ""%2"".'"), ИмяМетода, ИмяОбъекта); @@ -594,7 +591,7 @@ КонецПопытки; Если Менеджер = Неопределено Тогда ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Неправильный формат параметра ИмяМетода (%1): + НСтр("ru = 'Неправильный формат параметра ИмяМетода (передано значение: ""%1"") в РаботаВБезопасномРежиме.ПроверитьИмяМетодаКонфигурации: |Не найден менеджер объекта ""%2"".'"), ИмяМетода, ПолноеИмяОбъекта); @@ -611,7 +608,7 @@ ЗаписьЖурналаРегистрации(НСтр("ru = 'Безопасное выполнение метода'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), УровеньЖурналаРегистрации.Ошибка, , , ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Неправильный формат параметра ИмяМетода (%1): + НСтр("ru = 'Неправильный формат параметра ИмяМетода (передано значение: ""%1"") в РаботаВБезопасномРежиме.ПроверитьИмяМетодаКонфигурации: |Имя метода ""%2"" не соответствует требованиям образования имен процедур и функций.'"), ИмяМетода, ИмяМетодаОбъекта); diff --git a/SSL/src/CommonModules/РаботаВБезопасномРежимеСлужебный/Module.bsl b/SSL/src/CommonModules/РаботаВБезопасномРежимеСлужебный/Module.bsl index 359563c44..52ad9da19 100644 --- a/SSL/src/CommonModules/РаботаВБезопасномРежимеСлужебный/Module.bsl +++ b/SSL/src/CommonModules/РаботаВБезопасномРежимеСлужебный/Module.bsl @@ -7,54 +7,6 @@ #Область СлужебныйПрограммныйИнтерфейс -// Создает запрос на создание профиля безопасности для внешнего модуля. -// Только для внутреннего использования. -// -// Параметры: -// ВнешнийМодуль - ЛюбаяСсылка - ссылка, соответствующая внешнему модулю, для которого запрашиваются -// разрешения. (Неопределено при запросе разрешений для конфигурации, а не для внешних модулей). -// -// Возвращаемое значение - УникальныйИдентификатор - идентификатор созданного запроса. -// -Функция ЗапросСозданияПрофиляБезопасности(Знач ПрограммныйМодуль) Экспорт - - СтандартнаяОбработка = Истина; - Результат = Неопределено; - Операция = Перечисления.ОперацииАдминистрированияПрофилейБезопасности.Создание; - - ОбработчикиСобытия = ОбщегоНазначения.ОбработчикиСлужебногоСобытия( - "СтандартныеПодсистемы.БазоваяФункциональность\ПриЗапросеСозданияПрофиляБезопасности"); - Для Каждого Обработчик Из ОбработчикиСобытия Цикл - - Обработчик.Модуль.ПриЗапросеСозданияПрофиляБезопасности( - ПрограммныйМодуль, СтандартнаяОбработка, Результат); - - Если Не СтандартнаяОбработка Тогда - Прервать; - КонецЕсли; - - КонецЦикла; - - Если СтандартнаяОбработка Тогда - РаботаВБезопасномРежимеПереопределяемый.ПриЗапросеСозданияПрофиляБезопасности( - ПрограммныйМодуль, СтандартнаяОбработка, Результат); - КонецЕсли; - - Если СтандартнаяОбработка Тогда - - Результат = РегистрыСведений.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.ЗапросАдминистрированияРазрешений( - ПрограммныйМодуль, Операция); - - КонецЕсли; - - Возврат Результат; - -КонецФункции - -#КонецОбласти - -#Область СлужебныйПрограммныйИнтерфейс - //////////////////////////////////////////////////////////////////////////////// // Внешние модули // @@ -140,6 +92,50 @@ #Область СлужебныеПроцедурыИФункции +// Создает запрос на создание профиля безопасности для внешнего модуля. +// Только для внутреннего использования. +// +// Параметры: +// ВнешнийМодуль - ЛюбаяСсылка - ссылка, соответствующая внешнему модулю, для которого запрашиваются +// разрешения. (Неопределено при запросе разрешений для конфигурации, а не для внешних модулей). +// +// Возвращаемое значение - УникальныйИдентификатор - идентификатор созданного запроса. +// +Функция ЗапросСозданияПрофиляБезопасности(Знач ПрограммныйМодуль) + + СтандартнаяОбработка = Истина; + Результат = Неопределено; + Операция = Перечисления.ОперацииАдминистрированияПрофилейБезопасности.Создание; + + ОбработчикиСобытия = ОбщегоНазначения.ОбработчикиСлужебногоСобытия( + "СтандартныеПодсистемы.БазоваяФункциональность\ПриЗапросеСозданияПрофиляБезопасности"); + Для Каждого Обработчик Из ОбработчикиСобытия Цикл + + Обработчик.Модуль.ПриЗапросеСозданияПрофиляБезопасности( + ПрограммныйМодуль, СтандартнаяОбработка, Результат); + + Если Не СтандартнаяОбработка Тогда + Прервать; + КонецЕсли; + + КонецЦикла; + + Если СтандартнаяОбработка Тогда + РаботаВБезопасномРежимеПереопределяемый.ПриЗапросеСозданияПрофиляБезопасности( + ПрограммныйМодуль, СтандартнаяОбработка, Результат); + КонецЕсли; + + Если СтандартнаяОбработка Тогда + + Результат = РегистрыСведений.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.ЗапросАдминистрированияРазрешений( + ПрограммныйМодуль, Операция); + + КонецЕсли; + + Возврат Результат; + +КонецФункции + //////////////////////////////////////////////////////////////////////////////// // Использование профилей безопасности. // diff --git a/SSL/src/CommonModules/РаботаВМоделиСервиса/Module.bsl b/SSL/src/CommonModules/РаботаВМоделиСервиса/Module.bsl index 49b91ed1d..fb46636c0 100644 --- a/SSL/src/CommonModules/РаботаВМоделиСервиса/Module.bsl +++ b/SSL/src/CommonModules/РаботаВМоделиСервиса/Module.bsl @@ -127,6 +127,7 @@ НСтр("ru = 'Операция не может быть выполнена, т.к. в приложении работают другие пользователи: %1'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), ТекстСеансы); + ВызватьИсключение ТекстИсключения; КонецЕсли; @@ -217,17 +218,38 @@ Функция ОбластьДанныхЗаблокирована(Знач ОбластьДанных) Экспорт Ключ = СоздатьКлючЗаписиРегистраСведенийВспомогательныхДанных( - РегистрыСведений.ОбластиДанных, - Новый Структура(РазделительВспомогательныхДанных(), ОбластьДанных)); + РегистрыСведений.ОбластиДанных, + Новый Структура(РазделительВспомогательныхДанных(), ОбластьДанных)); Попытка + ЗаблокироватьДанныеДляРедактирования(Ключ); + Исключение + Возврат Истина; + КонецПопытки; РазблокироватьДанныеДляРедактирования(Ключ); + Если НЕ ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда + + Попытка + + ОбщегоНазначения.УстановитьРазделениеСеанса(Истина, ОбластьДанных); + + Исключение + + ОбщегоНазначения.УстановитьРазделениеСеанса(Ложь); + Возврат Истина; + + КонецПопытки; + + ОбщегоНазначения.УстановитьРазделениеСеанса(Ложь); + + КонецЕсли; + Возврат Ложь; КонецФункции @@ -257,9 +279,7 @@ Попытка МенеджерЗаписи = ПолучитьМенеджерЗаписиОбластиДанных(ОбластьДанных, Перечисления.СтатусыОбластейДанных.Новая); - // Список пользователей не пустой и не фоновое задание из регламентного. - // В этом случае требуется авторизовать пользователя. - Если ПользователиИнформационнойБазы.ТекущийПользователь().Имя <> "" Тогда + Если ТекущийРежимЗапуска() <> Неопределено Тогда ПользователиСлужебный.АвторизоватьТекущегоПользователя(); @@ -811,9 +831,15 @@ ИмяПользователя = ИмяПользователя(); КонецЕсли; - Прокси = ОбщегоНазначения.WSПрокси(АдресСервиса, "http://www.1c.ru/SaaS/ManageApplication/1.0.3.1", - "ManageApplication_1_0_3_1", , ИмяПользователя, ПарольПользователя, 20); - + ПараметрыПодключения = ОбщегоНазначения.ПараметрыПодключенияWSПрокси(); + ПараметрыПодключения.АдресWSDL = АдресСервиса; + ПараметрыПодключения.URIПространстваИмен = "http://www.1c.ru/SaaS/ManageApplication/1.0.3.1"; + ПараметрыПодключения.ИмяСервиса = "ManageApplication_1_0_3_1"; + ПараметрыПодключения.ИмяПользователя = ИмяПользователя; + ПараметрыПодключения.Пароль = ПарольПользователя; + ПараметрыПодключения.Таймаут = 20; + Прокси = ОбщегоНазначения.СоздатьWSПрокси(ПараметрыПодключения); + Возврат Прокси; КонецФункции @@ -922,7 +948,7 @@ ПриЗаполненииТаблицыПараметровИБ(ТаблицаПараметров); - РаботаВМоделиСервисаПереопределяемый.ПолучитьТаблицуПараметровИБ(ТаблицаПараметров); + РаботаВМоделиСервисаПереопределяемый.ПриЗаполненииТаблицыПараметровИБ(ТаблицаПараметров); Возврат ТаблицаПараметров; @@ -1975,39 +2001,30 @@ ОчиститьВсеПараметрыСеансаКромеРазделителей(); - Если НЕ ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда + Если ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() + И ТекущийРежимЗапуска() <> Неопределено Тогда - Возврат; + МенеджерЗаписи = РегистрыСведений.ОбластиДанных.СоздатьМенеджерЗаписи(); + МенеджерЗаписи.Прочитать(); - КонецЕсли; - - // Пустой список пользователей или фоновое задание из регламентного. - // В этом случае авторизовать пользователя не требуется. - Если ПользователиИнформационнойБазы.ТекущийПользователь().Имя = "" Тогда - - Возврат; - - КонецЕсли; - - МенеджерЗаписи = РегистрыСведений.ОбластиДанных.СоздатьМенеджерЗаписи(); - МенеджерЗаписи.Прочитать(); - - Если МенеджерЗаписи.Выбран() Тогда + Если МенеджерЗаписи.Выбран() Тогда + + Если НЕ (МенеджерЗаписи.ОшибкаОбработки + ИЛИ МенеджерЗаписи.Статус = Перечисления.СтатусыОбластейДанных.КУдалению + ИЛИ МенеджерЗаписи.Статус = Перечисления.СтатусыОбластейДанных.Удалена) Тогда - Если НЕ (МенеджерЗаписи.ОшибкаОбработки - ИЛИ МенеджерЗаписи.Статус = Перечисления.СтатусыОбластейДанных.КУдалению - ИЛИ МенеджерЗаписи.Статус = Перечисления.СтатусыОбластейДанных.Удалена) Тогда - + ПользователиСлужебный.АвторизоватьТекущегоПользователя(); + + КонецЕсли; + + Иначе + ПользователиСлужебный.АвторизоватьТекущегоПользователя(); - + КонецЕсли; - Иначе - - ПользователиСлужебный.АвторизоватьТекущегоПользователя(); - КонецЕсли; - + КонецПроцедуры // Регистрирует обработчики поставляемых данных за день и за все время. @@ -2032,14 +2049,20 @@ Процедура ДоступныНовыеДанные(Знач Дескриптор, Загружать) Экспорт Если Дескриптор.DataType = "ЭталонОбластиДанных" Тогда + УсловиеИмениКонфигурации = Ложь; + УсловиеВерсииКонфигурации = Ложь; Для каждого Характеристика Из Дескриптор.Properties.Property Цикл - Если Характеристика.Code = "ИмяКонфигурации" И Характеристика.Value = Метаданные.Имя Тогда - Загружать = Истина; - Прервать; + Если Не УсловиеИмениКонфигурации Тогда + УсловиеИмениКонфигурации = Характеристика.Code = "ИмяКонфигурации" И Характеристика.Value = Метаданные.Имя; + КонецЕсли; + Если Не УсловиеВерсииКонфигурации Тогда + УсловиеВерсииКонфигурации = Характеристика.Code = "ВерсияКонфигурации" + И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(Характеристика.Value, Метаданные.Версия) >= 0; КонецЕсли; КонецЦикла; + Загружать = УсловиеИмениКонфигурации И УсловиеВерсииКонфигурации; КонецЕсли; - + КонецПроцедуры // Вызывается после вызова ДоступныНовыеДанные, позволяет разобрать данные. @@ -2539,7 +2562,8 @@ УстановитьПривилегированныйРежим(Истина); - ТипПлатформыСервера = ОбщегоНазначенияПовтИсп.ТипПлатформыСервера(); + СистемнаяИнфо = Новый СистемнаяИнформация; + ТипПлатформыСервера = СистемнаяИнфо.ТипПлатформы; Если ТипПлатформыСервера = ТипПлатформы.Linux_x86 ИЛИ ТипПлатформыСервера = ТипПлатформы.Linux_x86_64 Тогда @@ -2947,7 +2971,7 @@ // Процедура ПриУстановкеЗначенийПараметровИБ(Знач ЗначенияПараметров) Экспорт - // Для служебного пользователя Менеджера сервиса + // Для служебного пользователя Менеджера сервиса. Владелец = ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Константа.ВнутреннийАдресМенеджераСервиса"); Если ЗначенияПараметров.Свойство("ИмяСлужебногоПользователяМенеджераСервиса") Тогда УстановитьПривилегированныйРежим(Истина); @@ -3019,11 +3043,17 @@ // Функция ПоместитьФайлВХранилище(Знач АдресДанныеФайл, Знач ПараметрыПодключения, Знач ИмяФайла = "") + УдалятьВременныйФайл = Ложь; НачалоВыполнения = ТекущаяУниверсальнаяДата(); ОписаниеПрокси = ОписаниеПроксиСервисаПередачиФайлов(ПараметрыПодключения); Описание = ПолучитьИмяФайлаСДанными(АдресДанныеФайл, ИмяФайла); + Если ПустаяСтрока(Описание.Имя) Тогда + Описание.Имя = ПолучитьИмяВременногоФайла(); + УдалятьВременныйФайл = Истина; + КонецЕсли; + СвойстваФайла = Новый Файл(Описание.Имя); ОбменЧерезФС = МожноПередаватьЧерезФСНаСервер(ОписаниеПрокси.Прокси, ОписаниеПрокси.ЕстьПоддержка2йВерсии); @@ -3072,6 +3102,9 @@ КонецПопытки; УдалитьВременныеФайлы(ЦелевойФайл.ПолноеИмя); + Если УдалятьВременныйФайл Тогда + УдалитьВременныеФайлы(Описание.Имя) + КонецЕсли; КонецЕсли; // ОбменЧерезФС @@ -3158,6 +3191,10 @@ ОписаниеПрокси.Прокси.SaveFileFromParts(ИдентификаторПередачи, КоличествоЧастей, Результат); КонецЕсли; + Если УдалятьВременныйФайл Тогда + УдалитьВременныеФайлы(Описание.Имя) + КонецЕсли; + ЗаписатьВЖурналСобытиеФайловогоХранилища( НСтр("ru = 'Помещение'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), Результат, @@ -3202,10 +3239,6 @@ ВызватьИсключение(НСтр("ru = 'Неверный тип данных'")); КонецЕсли; - Если ПустаяСтрока(ИмяФайла) Тогда - ИмяФайла = ПолучитьИмяВременногоФайла(); - КонецЕсли; - Возврат Новый Структура("Данные, Имя", ДанныеФайла, ИмяФайла); КонецФункции @@ -3365,9 +3398,15 @@ АдресСервиса = ПараметрыПодключения.URL + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("/ws/%1?wsdl", ИмяСервиса); - Прокси = ОбщегоНазначения.WSПрокси(АдресСервиса, - "http://www.1c.ru/SaaS/1.0/WS", ИмяСервиса, , ИмяПользователя, ПарольПользователя, 600); - + ПараметрыПодключения = ОбщегоНазначения.ПараметрыПодключенияWSПрокси(); + ПараметрыПодключения.АдресWSDL = АдресСервиса; + ПараметрыПодключения.URIПространстваИмен = "http://www.1c.ru/SaaS/1.0/WS"; + ПараметрыПодключения.ИмяСервиса = ИмяСервиса; + ПараметрыПодключения.ИмяПользователя = ИмяПользователя; + ПараметрыПодключения.Пароль = ПарольПользователя; + ПараметрыПодключения.Таймаут = 600; + Прокси = ОбщегоНазначения.СоздатьWSПрокси(ПараметрыПодключения); + Возврат Новый Структура("Прокси, ЕстьПоддержка2йВерсии", Прокси, ЕстьПоддержка2йВерсии); КонецФункции @@ -3996,6 +4035,8 @@ ПоставляемыеДанные.СохранитьПоставляемыеДанныеВКэш(Дескриптор, ПутьКФайлу); + УдалитьНеактуальныеЭталоныОбластейДанных(Метаданные.Версия); + Иначе Фильтр = Новый Массив; @@ -4014,6 +4055,31 @@ КонецПроцедуры +// Удаляет неактуальные эталоны областей данных: те эталоны, версия которых меньше указанной (актуальной). +// +// Параметры: +// АктуальнаяВерсияКонфигурации - Строка - актуальная версия конфигурации. +// +Процедура УдалитьНеактуальныеЭталоныОбластейДанных(АктуальнаяВерсияКонфигурации) + + Запрос = Новый Запрос( + "ВЫБРАТЬ РАЗЛИЧНЫЕ + | ПоставляемыеДанныеХарактеристикиДанных.Ссылка.Ссылка КАК ПоставляемыеДанные, + | ВЫРАЗИТЬ(ПоставляемыеДанныеХарактеристикиДанных.Значение КАК СТРОКА(150)) КАК ВерсияКонфигурации + |ИЗ + | Справочник.ПоставляемыеДанные.ХарактеристикиДанных КАК ПоставляемыеДанныеХарактеристикиДанных + |ГДЕ + | ПоставляемыеДанныеХарактеристикиДанных.Характеристика = ""ВерсияКонфигурации"" + | И ПоставляемыеДанныеХарактеристикиДанных.Ссылка.ВидДанных = ""ЭталонОбластиДанных"""); + Выборка = Запрос.Выполнить().Выбрать(); + Пока Выборка.Следующий() Цикл + Если ОбщегоНазначенияКлиентСервер.СравнитьВерсии(АктуальнаяВерсияКонфигурации, Выборка.ВерсияКонфигурации) > 0 Тогда + ПоставляемыеДанные.УдалитьПоставляемыеДанныеИзКэша(Выборка.ПоставляемыеДанные); + КонецЕсли; + КонецЦикла; + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // ОБРАБОТЧИКИ ОБНОВЛЕНИЯ ИНФОРМАЦИОННОЙ БАЗЫ diff --git a/SSL/src/CommonModules/РаботаВМоделиСервисаПереопределяемый/Module.bsl b/SSL/src/CommonModules/РаботаВМоделиСервисаПереопределяемый/Module.bsl index 854191f3f..0b4a67995 100644 --- a/SSL/src/CommonModules/РаботаВМоделиСервисаПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/РаботаВМоделиСервисаПереопределяемый/Module.bsl @@ -23,7 +23,7 @@ // ТаблицаПараметров - ТаблицаЗначений - таблица описания параметров. // Описание состав колонок - см. РаботаВМоделиСервиса.ПолучитьТаблицуПараметровИБ(). // -Процедура ПолучитьТаблицуПараметровИБ(Знач ТаблицаПараметров) Экспорт +Процедура ПриЗаполненииТаблицыПараметровИБ(Знач ТаблицаПараметров) Экспорт КонецПроцедуры diff --git a/SSL/src/CommonModules/РаботаСБанками/Module.bsl b/SSL/src/CommonModules/РаботаСБанками/Module.bsl index fee329069..7055ca2c1 100644 --- a/SSL/src/CommonModules/РаботаСБанками/Module.bsl +++ b/SSL/src/CommonModules/РаботаСБанками/Module.bsl @@ -101,7 +101,9 @@ СерверныеОбработчики["СтандартныеПодсистемы.БазоваяФункциональность\ПриЗаполненииРазрешенийНаДоступКВнешнимРесурсам"].Добавить( "РаботаСБанками"); - + + СерверныеОбработчики["СтандартныеПодсистемы.ОбновлениеВерсииИБ\ПриДобавленииОбработчиковОбновления"].Добавить( + "РаботаСБанками"); КонецПроцедуры // Определить список справочников, доступных для загрузки с помощью подсистемы "Загрузка данных из файла". @@ -160,10 +162,74 @@ Зависимость.ДоступноВПодчиненномУзлеРИБ = Ложь; КонецПроцедуры +// См. ИнтернетПоддержкаПользователейПереопределяемый.ПриСохраненииДанныхАутентификацииПользователяИнтернетПоддержки. +Процедура ПриСохраненииДанныхАутентификацииПользователяИнтернетПоддержки(ДанныеПользователя) Экспорт + УстановитьПараметрыРегламентногоЗадания(Новый Структура("Использование", Истина)); +КонецПроцедуры + +// См. ИнтернетПоддержкаПользователейПереопределяемый.ПриУдаленииДанныхАутентификацииПользователяИнтернетПоддержки. +Процедура ПриУдаленииДанныхАутентификацииПользователяИнтернетПоддержки() Экспорт + УстановитьПараметрыРегламентногоЗадания(Новый Структура("Использование", Ложь)); +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции +// См. ОбновлениеИнформационнойБазыБСП.ПриДобавленииОбработчиковОбновления. +Процедура ПриДобавленииОбработчиковОбновления(Обработчики) Экспорт + + Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда + Обработчик = Обработчики.Добавить(); + Обработчик.Версия = "2.3.4.69"; + Обработчик.Процедура = "РаботаСБанками.УстановитьРасписаниеРегламентногоЗадания"; + Обработчик.РежимВыполнения = "Оперативно"; + Обработчик.НачальноеЗаполнение = Истина; + КонецЕсли; + +КонецПроцедуры + +Процедура УстановитьРасписаниеРегламентногоЗадания() Экспорт + + ГенераторСлучайныхЧисел = Новый ГенераторСлучайныхЧисел(ТекущаяУниверсальнаяДатаВМиллисекундах()); + Задержка = ГенераторСлучайныхЧисел.СлучайноеЧисло(0, 21600); // С 0 до 6 часов утра. + + Расписание = Новый РасписаниеРегламентногоЗадания; + Расписание.ПериодПовтораДней = 1; + Расписание.ПериодНедель = 1; + Расписание.ВремяНачала = '00010101000000' + Задержка; + + ПараметрыЗадания = Новый Структура; + ПараметрыЗадания.Вставить("Расписание", Расписание); + ПараметрыЗадания.Вставить("ИнтервалПовтораПриАварийномЗавершении", 600); + ПараметрыЗадания.Вставить("КоличествоПовторовПриАварийномЗавершении", 10); + + УстановитьПараметрыРегламентногоЗадания(ПараметрыЗадания); + +КонецПроцедуры + +Процедура УстановитьПараметрыРегламентногоЗадания(ИзменяемыеПараметры) + РегламентноеЗадание = Метаданные.РегламентныеЗадания.ЗагрузкаКлассификатораБанковРФССайтаРБК; + ПараметрыЗадания = Новый Структура; + ПараметрыЗадания.Вставить("Метаданные", РегламентноеЗадание); + + УстановитьПривилегированныйРежим(Истина); + + СписокЗаданий = РегламентныеЗаданияСервер.НайтиЗадания(ПараметрыЗадания); + Если СписокЗаданий.Количество() = 0 Тогда + ПараметрыЗадания = Новый Структура; + Для Каждого ИзменяемыйПараметр Из ИзменяемыеПараметры Цикл + ПараметрыЗадания.Вставить(ИзменяемыйПараметр.Ключ, ИзменяемыйПараметр.Значение); + КонецЦикла; + ПараметрыЗадания.Вставить("Метаданные", РегламентноеЗадание); + РегламентныеЗаданияСервер.ДобавитьЗадание(ПараметрыЗадания); + Иначе + Для Каждого Задание Из СписокЗаданий Цикл + РегламентныеЗаданияСервер.ИзменитьЗадание(Задание, ИзменяемыеПараметры); + КонецЦикла; + КонецЕсли; +КонецПроцедуры + // Заполняет параметры, которые используется клиентским кодом на запуске конфигурации. // // Параметры: @@ -270,15 +336,22 @@ // Функция Разрешения() + Разрешения = Новый Массив; + Протокол = "HTTP"; Адрес = "cbrates.rbc.ru"; Порт = Неопределено; Описание = НСтр("ru = 'Загрузка классификатора банков из интернета.'"); - - Разрешения = Новый Массив; Разрешения.Добавить( РаботаВБезопасномРежиме.РазрешениеНаИспользованиеИнтернетРесурса(Протокол, Адрес, Порт, Описание)); - + + Протокол = "HTTPS"; + Адрес = "bankregister.1c.ru"; + Порт = Неопределено; + Описание = НСтр("ru = 'Загрузка классификатора банков из интернета.'"); + Разрешения.Добавить( + РаботаВБезопасномРежиме.РазрешениеНаИспользованиеИнтернетРесурса(Протокол, Адрес, Порт, Описание)); + Возврат Разрешения; КонецФункции @@ -362,7 +435,7 @@ Попытка ZIPФайлРБК = Новый ЧтениеZipФайла(ПараметрыПолученияФайловРБК["ПутьКФайлуРБК"]); Исключение - ТекстСообщения = НСтр("ru ='Возникли проблемы с файлом классификатора банков, полученным с сайта РБК.'"); + ТекстСообщения = НСтр("ru ='Возникли проблемы с файлом классификатора банков, полученным из Интернета.'"); ТекстСообщения = ТекстСообщения + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); КонецПопытки; @@ -377,7 +450,7 @@ Попытка ZIPФайлРБК.ИзвлечьВсе(ВременныйКаталог); Исключение - ТекстСообщения = НСтр("ru ='Возникли проблемы с файлом классификатора банков, полученным с сайта РБК.'"); + ТекстСообщения = НСтр("ru ='Возникли проблемы с файлом классификатора банков, полученным из Интернета.'"); ТекстСообщения = ТекстСообщения + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); КонецПопытки; @@ -397,7 +470,7 @@ ФайлБИКРБК = Новый Файл(ПутьКФайлуБИКРБК); Если Не ФайлБИКРБК.Существует() Тогда - ТекстСообщения = НСтр("ru ='Возникли проблемы с файлом классификатора банков, полученным с сайта РБК. + ТекстСообщения = НСтр("ru ='Возникли проблемы с файлом классификатора банков, полученным из Интернета. |Архив не содержит информацию - классификатор банков.'"); ПараметрыЗагрузкиКлассификатора.Вставить("ТекстСообщения", ТекстСообщения); Если НЕ ПустаяСтрока(АдресХранилища) Тогда @@ -409,7 +482,7 @@ ПутьКФайлуРегионовРБК = ОбщегоНазначенияКлиентСервер.ДобавитьКонечныйРазделительПути(ВременныйКаталог) + "reg.txt"; ФайлРегионовРБК = Новый Файл(ПутьКФайлуРегионовРБК); Если Не ФайлРегионовРБК.Существует() Тогда - ТекстСообщения = НСтр("ru ='Возникли проблемы с файлом классификатора банков, полученным с сайта РБК. + ТекстСообщения = НСтр("ru ='Возникли проблемы с файлом классификатора банков, полученным из Интернета. |Архив не содержит информацию о регионах.'"); ПараметрыЗагрузкиКлассификатора.Вставить("ТекстСообщения", ТекстСообщения); Если НЕ ПустаяСтрока(АдресХранилища) Тогда @@ -421,7 +494,7 @@ ПутьКФайлуНедействующихБанков = ИмяФайлаНедействующихБанков(ВременныйКаталог); ФайлНедействующихБанков = Новый Файл(ПутьКФайлуНедействующихБанков); Если Не ФайлНедействующихБанков.Существует() Тогда - ТекстСообщения = НСтр("ru ='Возникли проблемы с файлом классификатора банков, полученным с сайта РБК. + ТекстСообщения = НСтр("ru ='Возникли проблемы с файлом классификатора банков, полученным из Интернета. |Архив не содержит информацию о недействующих банках.'"); ПараметрыЗагрузкиКлассификатора.Вставить("ТекстСообщения", ТекстСообщения); Если НЕ ПустаяСтрока(АдресХранилища) Тогда @@ -563,14 +636,19 @@ // ВременныйКаталог - Строка - путь к временному каталогу. // ТекстСообщения - Строка - текст сообщения об ошибке. Процедура ПолучитьДанныеРБКИзИнтернета(ПараметрыПолученияФайловРБК) - - СерверИсточник = "cbrates.rbc.ru"; - Адрес = "bnk"; - ФайлБИК = "bnk.zip"; - ФайлРБКНаВебСервере = "http://" + СерверИсточник + "/" + Адрес+ "/" + ФайлБИК; - ВременныйФайлРБК = ПараметрыПолученияФайловРБК["ВременныйКаталог"]+ "\" + ФайлБИК; + УстановитьПривилегированныйРежим(Истина); + ИспользоватьАльтернативныйСервер = Константы.ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков.Получить(); + УстановитьПривилегированныйРежим(Ложь); - ПараметрыПолучения = Новый Структура; + Если ИспользоватьАльтернативныйСервер Тогда + ФайлРБКНаВебСервере = "http://cbrates.rbc.ru/bnk/bnk.zip"; + Иначе + ФайлРБКНаВебСервере = "https://bankregister.1c.ru/bankregister/v1/bnk.zip"; + КонецЕсли; + + ВременныйФайлРБК = ПараметрыПолученияФайловРБК["ВременныйКаталог"]+ "\bnk.zip"; + + ПараметрыПолучения = ПараметрыАутентификацииНаСайте(); ПараметрыПолучения.Вставить("ПутьДляСохранения", ВременныйФайлРБК); ДатаПоследнегоОбновления = ПараметрыПолученияФайловРБК["ВерсияКлассификатора"]; @@ -604,6 +682,20 @@ КонецПроцедуры +Функция ПараметрыАутентификацииНаСайте() + Результат = Новый Структура; + Если ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + МодульИнтернетПоддержкаПользователей = ОбщегоНазначения.ОбщийМодуль("ИнтернетПоддержкаПользователей"); + ДанныеАутентификации = МодульИнтернетПоддержкаПользователей.ДанныеАутентификацииПользователяИнтернетПоддержки(); + Если ДанныеАутентификации <> Неопределено Тогда + Результат.Вставить("Пользователь", ДанныеАутентификации.Логин); + Результат.Вставить("Пароль", ДанныеАутентификации.Пароль); + КонецЕсли; + КонецЕсли; + + Возврат Результат; +КонецФункции + // Преобразует дату формата rfc1123-date в обычную универсальную дату. // См. https://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html, п. 3.3.1. Функция ПрочитатьДатуHTTP(ДатаHTTP) @@ -863,8 +955,15 @@ КонецПроцедуры Функция ИмяСобытияВЖурналеРегистрации() + УстановитьПривилегированныйРежим(Истина); + ИспользоватьАльтернативныйСервер = Константы.ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков.Получить(); + УстановитьПривилегированныйРежим(Ложь); - Возврат НСтр("ru = 'Загрузка классификатора банков.РБК'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); + Если ИспользоватьАльтернативныйСервер Тогда + Возврат НСтр("ru = 'Загрузка классификатора банков.РБК'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); + КонецЕсли; + + Возврат НСтр("ru = 'Загрузка классификатора банков.1С'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); КонецФункции diff --git a/SSL/src/CommonModules/РаботаСКонтрагентамиКлиентПереопределяемый/Module.bsl b/SSL/src/CommonModules/РаботаСКонтрагентамиКлиентПереопределяемый/Module.bsl index a5b16d2b7..034b639cb 100644 --- a/SSL/src/CommonModules/РаботаСКонтрагентамиКлиентПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/РаботаСКонтрагентамиКлиентПереопределяемый/Module.bsl @@ -26,7 +26,7 @@ // Позволяет заменить стандартное предложение включить проверку контрагентов. // // Параметры: -// СтандартнаяОбработка - Булево - Истина, если нужно сохранить стандартное поведение +// СтандартнаяОбработка - Булево - Истина, если нужно сохранить стандартное поведение. // Процедура ПредложитьВключитьПроверкуКонтрагентов(СтандартнаяОбработка) Экспорт diff --git a/SSL/src/CommonModules/РаботаСКонтрагентамиКлиентСерверПереопределяемый/Module.bsl b/SSL/src/CommonModules/РаботаСКонтрагентамиКлиентСерверПереопределяемый/Module.bsl index ea3697eb9..862f89b60 100644 --- a/SSL/src/CommonModules/РаботаСКонтрагентамиКлиентСерверПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/РаботаСКонтрагентамиКлиентСерверПереопределяемый/Module.bsl @@ -119,7 +119,7 @@ // // Параметры: // ДополнительныеПараметрыЗапуска - Структура - содержит параметры запуска. -// Форма - УправляемаяФорма - форма, из которой запускается фоновое задание +// Форма - УправляемаяФорма - форма, из которой запускается фоновое задание. // Процедура ДополнитьПараметрыЗапускаФоновогоЗадания(ДополнительныеПараметрыЗапуска, Форма) Экспорт diff --git a/SSL/src/CommonModules/РаботаСКонтрагентамиПереопределяемый/Module.bsl b/SSL/src/CommonModules/РаботаСКонтрагентамиПереопределяемый/Module.bsl index 40314f7bf..f0a9ab4ca 100644 --- a/SSL/src/CommonModules/РаботаСКонтрагентамиПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/РаботаСКонтрагентамиПереопределяемый/Module.bsl @@ -89,12 +89,12 @@ КонецПроцедуры -// Возможность переопределить стандартное заполнение данных о контрагентах в счет-фактурах, созданных на основании документа +// Возможность переопределить стандартное заполнение данных о контрагентах в счет-фактурах, созданных на основании документа. // // Параметры: // СтандартнаяОбработка - Булево - необходимо установить в Ложь, если стандартная обработка переопределяется. // ДокументОбъект - Произвольный - данные содержащие информацию о счет-фактурах. -// ДанныеКонтрагентов - ТаблицаЗначений - подготавливаемая таблица с данными о контрагентах +// ДанныеКонтрагентов - ТаблицаЗначений - подготавливаемая таблица с данными о контрагентах. // Форма - УправляемаяФорма, Неопределено - Форма из которой выполняется вызов. // Процедура ЗаполнитьДанныеКонтрагентовВСчетеФактуре(СтандартнаяОбработка, ДокументОбъект, ДанныеКонтрагентов, Форма) Экспорт @@ -104,11 +104,11 @@ КонецПроцедуры // Возможность переопределить стандартное сохранение результатов проверки контрагентов счет-фактур, выписанных на основании -// документа основания в форме документа основания +// документа основания в форме документа основания. // // Параметры: // СтандартнаяОбработка - Булево - необходимо установить в Ложь, если стандартная обработка переопределяется. -// ДанныеКонтрагентов - ТаблицаЗначений - подготавливаемая таблица с данными о контрагентах +// ДанныеКонтрагентов - ТаблицаЗначений - подготавливаемая таблица с данными о контрагентах. // Форма - УправляемаяФорма, Неопределено - Форма из которой выполняется вызов. // Процедура ЗапомнитьРезультатПроверкиКонтрагентовСчетФактурыВДокументе(СтандартнаяОбработка, ДанныеКонтрагентов, Форма) Экспорт @@ -117,7 +117,7 @@ КонецПроцедуры -// Возможность дополнить структуру РеквизитыПроверкиКонтрагентов при создании в форме документа +// Возможность дополнить структуру РеквизитыПроверкиКонтрагентов при создании в форме документа. // // Параметры: // Форма - УправляемаяФорма, Неопределено - Форма из которой выполняется вызов. @@ -132,7 +132,7 @@ // // Параметры: // СтандартнаяОбработка - Булево - необходимо установить в Ложь, если стандартная обработка переопределяется. -// СохраняемоеЗначение - Соответствие - сохраняемые данные +// СохраняемоеЗначение - Соответствие - сохраняемые данные. // Форма - УправляемаяФорма, Неопределено - Форма из которой выполняется вызов. // Процедура СохраняемыеРезультатыПроверкиСчетФактурыВДокументе(СтандартнаяОбработка, СохраняемоеЗначение, Форма) Экспорт @@ -317,7 +317,7 @@ // // Параметры: // ДанныеКонтрагента - СтрокаТаблицыЗначений - Содержит информацию о контрагенте. -// Подробнее о колонках таблицы можно узнать в описании к процедуре ПроверкаКонтрагентов.ШаблонТаблицыДанныеКонтрагента() +// Подробнее о колонках таблицы можно узнать в описании к процедуре ПроверкаКонтрагентов.ШаблонТаблицыДанныеКонтрагента(). // ЯвляетсяИностранным - Булево - Результат проверки. Процедура ОпределитьЯвляетсяЛиКонтрагентИностранным(ДанныеКонтрагента, ЯвляетсяИностранным) Экспорт @@ -325,11 +325,11 @@ КонецПроцедуры -// Возможность дополнить структуру РеквизитыПроверкиКонтрагентов для формы справочника +// Возможность дополнить структуру РеквизитыПроверкиКонтрагентов для формы справочника. // // Параметры: -// Форма - УправляемаяФорма - форма, для которой дополняется структура РеквизитыПроверкиКонтрагентов -// НовыеРеквизиты - Структура - структура, которая транслируется в реквизит формы РеквизитыПроверкиКонтрагентов +// Форма - УправляемаяФорма - форма, для которой дополняется структура РеквизитыПроверкиКонтрагентов. +// НовыеРеквизиты - Структура - структура, которая транслируется в реквизит формы РеквизитыПроверкиКонтрагентов. // Процедура ДополнитьРеквизитыФормыКонтрагент(Форма, НовыеРеквизиты) Экспорт @@ -337,7 +337,7 @@ КонецПроцедуры -// Определяет, является ли контрагент физическим или юридическим лицом +// Определяет, является ли контрагент физическим или юридическим лицом. // // Параметры: // СтандартнаяОбработка - Булево - если стандартный механизм переопределяется, то должно быть установлено значение "Ложь". @@ -389,6 +389,8 @@ // ВидыДеятельности - ТаблицаЗначений - см. ДанныеЕдиныхГосРеестров.НоваяТаблицаВидыДеятельности. // В процедуре необходимо заполнить в строках таблицы поле НаименованиеОКВЭД, // соответствующее заполненному полю КодОКВЭД. +// Если в строке поле ЭтоОКВЭД2 - Истина - наименование заполняется из редакции 2 классификатора ОКВЭД. +// Если в строке поле ЭтоОКВЭД2 - Ложь - наименование заполняется из редакции 1 классификатора ОКВЭД. // Процедура ЗаполнитьНаименованияВидовДеятельностиКонтрагента(ВидыДеятельности) Экспорт diff --git a/SSL/src/CommonModules/РаботаСКурсамиВалют/Module.bsl b/SSL/src/CommonModules/РаботаСКурсамиВалют/Module.bsl index eb35c6a13..3fbc4d045 100644 --- a/SSL/src/CommonModules/РаботаСКурсамиВалют/Module.bsl +++ b/SSL/src/CommonModules/РаботаСКурсамиВалют/Module.bsl @@ -133,8 +133,7 @@ ОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(Метаданные.РегламентныеЗадания.ЗагрузкаКурсовВалют); - ИмяСобытия = НСтр("ru = 'Валюты.Загрузка курсов валют'", - ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); + ИмяСобытия = ИмяСобытияЖурналаРегистрации(); ЗаписьЖурналаРегистрации(ИмяСобытия, УровеньЖурналаРегистрации.Информация, , , НСтр("ru = 'Начата регламентная загрузка курсов валют'")); @@ -184,6 +183,7 @@ , , НСтр("ru = 'Во время регламентного задания загрузки курсов валют возникли ошибки'")); + ВызватьИсключение НСтр("ru = 'Загрузка курсов не выполнена. Подробности см. в журнале регистрации.'"); Иначе ЗаписьЖурналаРегистрации( ИмяСобытия, @@ -332,6 +332,16 @@ КонецПроцедуры +// См. ИнтернетПоддержкаПользователейПереопределяемый.ПриСохраненииДанныхАутентификацииПользователяИнтернетПоддержки. +Процедура ПриСохраненииДанныхАутентификацииПользователяИнтернетПоддержки(ДанныеПользователя) Экспорт + УстановитьПараметрыРегламентногоЗадания(Новый Структура("Использование", Истина)); +КонецПроцедуры + +// См. ИнтернетПоддержкаПользователейПереопределяемый.ПриУдаленииДанныхАутентификацииПользователяИнтернетПоддержки. +Процедура ПриУдаленииДанныхАутентификацииПользователяИнтернетПоддержки() Экспорт + УстановитьПараметрыРегламентногоЗадания(Новый Структура("Использование", Ложь)); +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -398,15 +408,22 @@ // Функция Разрешения() + Разрешения = Новый Массив; + Протокол = "HTTP"; Адрес = "cbrates.rbc.ru"; Порт = Неопределено; Описание = НСтр("ru = 'Загрузка курсов валют из Интернета.'"); - - Разрешения = Новый Массив; Разрешения.Добавить( РаботаВБезопасномРежиме.РазрешениеНаИспользованиеИнтернетРесурса(Протокол, Адрес, Порт, Описание)); + Протокол = "HTTPS"; + Адрес = "currencyrates.1c.ru"; + Порт = Неопределено; + Описание = НСтр("ru = 'Загрузка курсов валют из Интернета.'"); + Разрешения.Добавить( + РаботаВБезопасномРежиме.РазрешениеНаИспользованиеИнтернетРесурса(Протокол, Адрес, Порт, Описание)); + Возврат Разрешения; КонецФункции @@ -442,7 +459,7 @@ // Возвращает массив валют, курсы которых загружаются с сайта РБК. // -Функция ПолучитьМассивЗагружаемыхВалют() Экспорт +Функция ЗагружаемыеВалюты() Экспорт Запрос = Новый Запрос; Запрос.Текст = @@ -559,7 +576,6 @@ ПодчиненнаяВалюта = Параметры.ПодчиненнаяВалюта; СпособУстановкиКурса = Параметры.СпособУстановкиКурса; - // Ожидание завершения транзакции записи валюты. НачатьТранзакцию(); Попытка Блокировка = Новый БлокировкаДанных; @@ -678,11 +694,23 @@ Обработчик.РежимВыполнения = "Монопольно"; Обработчик = Обработчики.Добавить(); - Обработчик.Версия = "2.3.2.76"; + Обработчик.Версия = "2.3.4.10"; Обработчик.Процедура = "Справочники.Валюты.ОтключитьЗагрузкуКурсаВалюты643ИзИнтернета"; Обработчик.РежимВыполнения = "Отложенно"; Обработчик.Идентификатор = Новый УникальныйИдентификатор("dc79c561-8657-4852-bbc5-38ced6996fff"); Обработчик.Комментарий = НСтр("ru = 'Отключает ошибочно включенную загрузку курсов валюты ""Российский рубль (643)"" из интернета.'"); + Обработчик.ОчередьОтложеннойОбработки = 1; + Обработчик.ПроцедураЗаполненияДанныхОбновления = "Справочники.Валюты.ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию"; + Обработчик.ЧитаемыеОбъекты = "Справочник.Валюты"; + Обработчик.ИзменяемыеОбъекты = "Справочник.Валюты"; + + Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда + Обработчик = Обработчики.Добавить(); + Обработчик.Версия = "2.3.4.69"; + Обработчик.Процедура = "РаботаСКурсамиВалют.УстановитьРасписаниеРегламентногоЗадания"; + Обработчик.РежимВыполнения = "Оперативно"; + Обработчик.НачальноеЗаполнение = Истина; + КонецЕсли; КонецПроцедуры @@ -741,6 +769,61 @@ КонецЦикла; КонецПроцедуры +Процедура УстановитьРасписаниеРегламентногоЗадания() Экспорт + + ГенераторСлучайныхЧисел = Новый ГенераторСлучайныхЧисел(ТекущаяУниверсальнаяДатаВМиллисекундах()); + Задержка = ГенераторСлучайныхЧисел.СлучайноеЧисло(0, 21600); // С 0 до 6 часов утра. + + Расписание = Новый РасписаниеРегламентногоЗадания; + Расписание.ПериодПовтораДней = 1; + Расписание.ПериодНедель = 1; + Расписание.ВремяНачала = '00010101000000' + Задержка; + + ПараметрыЗадания = Новый Структура; + ПараметрыЗадания.Вставить("Расписание", Расписание); + ПараметрыЗадания.Вставить("ИнтервалПовтораПриАварийномЗавершении", 600); + ПараметрыЗадания.Вставить("КоличествоПовторовПриАварийномЗавершении", 10); + + УстановитьПараметрыРегламентногоЗадания(ПараметрыЗадания); + +КонецПроцедуры + +Процедура УстановитьПараметрыРегламентногоЗадания(ИзменяемыеПараметры) + РегламентноеЗадание = Метаданные.РегламентныеЗадания.ЗагрузкаКурсовВалют; + ПараметрыЗадания = Новый Структура; + ПараметрыЗадания.Вставить("Метаданные", РегламентноеЗадание); + + УстановитьПривилегированныйРежим(Истина); + + СписокЗаданий = РегламентныеЗаданияСервер.НайтиЗадания(ПараметрыЗадания); + Если СписокЗаданий.Количество() = 0 Тогда + ПараметрыЗадания = Новый Структура; + Для Каждого ИзменяемыйПараметр Из ИзменяемыеПараметры Цикл + ПараметрыЗадания.Вставить(ИзменяемыйПараметр.Ключ, ИзменяемыйПараметр.Значение); + КонецЦикла; + ПараметрыЗадания.Вставить("Метаданные", РегламентноеЗадание); + РегламентныеЗаданияСервер.ДобавитьЗадание(ПараметрыЗадания); + Иначе + Для Каждого Задание Из СписокЗаданий Цикл + РегламентныеЗаданияСервер.ИзменитьЗадание(Задание, ИзменяемыеПараметры); + КонецЦикла; + КонецЕсли; +КонецПроцедуры + +Функция ПараметрыАутентификацииНаСайте() + Результат = Новый Структура; + Если ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + МодульИнтернетПоддержкаПользователей = ОбщегоНазначения.ОбщийМодуль("ИнтернетПоддержкаПользователей"); + ДанныеАутентификации = МодульИнтернетПоддержкаПользователей.ДанныеАутентификацииПользователяИнтернетПоддержки(); + Если ДанныеАутентификации <> Неопределено Тогда + Результат.Вставить("Пользователь", ДанныеАутентификации.Логин); + Результат.Вставить("Пароль", ДанныеАутентификации.Пароль); + КонецЕсли; + КонецЕсли; + + Возврат Результат; +КонецФункции + //////////////////////////////////////////////////////////////////////////////// // Обновление курсов валют @@ -806,43 +889,68 @@ // СтатусОперации - завершилась ли загрузка успешно. // Сообщение - пояснение о загрузке (текст сообщения об ошибке или поясняющее сообщение). // -Функция ЗагрузитьКурсыВалютПоПараметрам(Знач Валюты, Знач НачалоПериодаЗагрузки, Знач ОкончаниеПериодаЗагрузки, - ПриЗагрузкеВозниклиОшибки = Ложь) +Функция ЗагрузитьКурсыВалютПоПараметрам(Знач Валюты, Знач НачалоПериодаЗагрузки, Знач ОкончаниеПериодаЗагрузки, ПриЗагрузкеВозниклиОшибки = Ложь) СостояниеЗагрузки = Новый Массив; - ПриЗагрузкеВозниклиОшибки = Ложь; + ПараметрыПолучения = Неопределено; + ИмяФайлаДневногоКурса = Формат(ОкончаниеПериодаЗагрузки, "ДФ=/yyyy/MM/dd"); - СерверИсточник = "cbrates.rbc.ru"; + УстановитьПривилегированныйРежим(Истина); + ИспользоватьАльтернативныйСервер = Константы.ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют.Получить(); + УстановитьПривилегированныйРежим(Ложь); - Если НачалоПериодаЗагрузки = ОкончаниеПериодаЗагрузки Тогда - Адрес = "tsv/"; - ТМП = Формат(ОкончаниеПериодаЗагрузки, "ДФ=/yyyy/MM/dd"); // Не локализуется - путь к файлу на сервере. - Иначе - Адрес = "tsv/cb/"; - ТМП = ""; - КонецЕсли; - - Для Каждого Валюта Из Валюты Цикл - ФайлНаВебСервере = "http://" + СерверИсточник + "/" + Адрес + Прав(Валюта.КодВалюты, 3) + ТМП + ".tsv"; - Результат = ПолучениеФайловИзИнтернета.СкачатьФайлНаСервере(ФайлНаВебСервере); - - Если Результат.Статус Тогда - ПоясняющееСообщение = ЗагрузитьКурсВалютыИзФайла(Валюта.Валюта, Результат.Путь, НачалоПериодаЗагрузки, ОкончаниеПериодаЗагрузки) + Символы.ПС; - УдалитьФайлы(Результат.Путь); - СтатусОперации = ПустаяСтрока(ПоясняющееСообщение); + Если ИспользоватьАльтернативныйСервер Тогда + СерверИсточник = "http://cbrates.rbc.ru"; + Если НачалоПериодаЗагрузки = ОкончаниеПериодаЗагрузки Тогда + ШаблонИмениФайла = СерверИсточник + "/tsv/%1" + ИмяФайлаДневногоКурса + ".tsv"; Иначе - ПоясняющееСообщение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Невозможно получить файл данных с курсами валюты (%1 - %2): - |%3 - |Возможно, нет доступа к веб сайту с курсами валют, либо указана несуществующая валюта.'"), - Валюта.КодВалюты, - Валюта.Валюта, - Результат.СообщениеОбОшибке); - СтатусОперации = Ложь; - ПриЗагрузкеВозниклиОшибки = Истина; + ШаблонИмениФайла = СерверИсточник + "/tsv/cb/%1.tsv"; + КонецЕсли; + Иначе + СерверИсточник = "https://currencyrates.1c.ru/exchangerate/v1"; + Если НачалоПериодаЗагрузки = ОкончаниеПериодаЗагрузки Тогда + ШаблонИмениФайла = СерверИсточник + "/%1" + ИмяФайлаДневногоКурса + ".tsv"; + Иначе + ШаблонИмениФайла = СерверИсточник + "/%1.tsv"; КонецЕсли; + ПараметрыПолучения = ПараметрыАутентификацииНаСайте(); + КонецЕсли; + + ВалютыЗагружаемыеИзИнтернета = ВалютыЗагружаемыеИзИнтернета(); + + Для Каждого Валюта Из Валюты Цикл + Если ВалютыЗагружаемыеИзИнтернета.Найти(Валюта.Валюта) = Неопределено Тогда + ПриЗагрузкеВозниклиОшибки = Истина; + СтатусОперации = Ложь; + ПоясняющееСообщение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Невозможно получить файл данных с курсами валюты (%1 - %2): + |Курсы данной валюты не предоставляются.'"), + Валюта.КодВалюты, + Валюта.Валюта); + + ЗаписьЖурналаРегистрации(ИмяСобытияЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка, , , ПоясняющееСообщение); + Иначе + ФайлНаВебСервере = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонИмениФайла, Валюта.КодВалюты); + Результат = ПолучениеФайловИзИнтернета.СкачатьФайлНаСервере(ФайлНаВебСервере, ПараметрыПолучения); + + Если Результат.Статус Тогда + ПоясняющееСообщение = ЗагрузитьКурсВалютыИзФайла(Валюта.Валюта, Результат.Путь, НачалоПериодаЗагрузки, ОкончаниеПериодаЗагрузки) + Символы.ПС; + УдалитьФайлы(Результат.Путь); + СтатусОперации = ПустаяСтрока(ПоясняющееСообщение); + Иначе + ПоясняющееСообщение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Невозможно получить файл данных с курсами валюты (%1 - %2): + |%3 + |Возможно, нет доступа к веб сайту с курсами валют, либо указана несуществующая валюта.'"), + Валюта.КодВалюты, + Валюта.Валюта, + Результат.СообщениеОбОшибке); + СтатусОперации = Ложь; + ПриЗагрузкеВозниклиОшибки = Истина; + КонецЕсли; + КонецЕсли; СостояниеЗагрузки.Добавить(Новый Структура("Валюта,СтатусОперации,Сообщение", Валюта.Валюта, СтатусОперации, ПоясняющееСообщение)); КонецЦикла; @@ -1018,4 +1126,32 @@ КонецФункции +Функция ВалютыЗагружаемыеИзИнтернета() + КлассификаторXML = Справочники.Валюты.ПолучитьМакет("ОбщероссийскийКлассификаторВалют").ПолучитьТекст(); + КлассификаторТаблица = ОбщегоНазначения.ПрочитатьXMLВТаблицу(КлассификаторXML).Данные; + + НайденныеСтроки = КлассификаторТаблица.НайтиСтроки(Новый Структура("RBCLoading", "истина")); + ЗагружаемыеПоКлассификатору = КлассификаторТаблица.Скопировать(НайденныеСтроки, "Code").ВыгрузитьКолонку("Code"); + + ТекстЗапроса = + "ВЫБРАТЬ + | Валюты.Ссылка КАК Ссылка + |ИЗ + | Справочник.Валюты КАК Валюты + |ГДЕ + | НЕ Валюты.ПометкаУдаления + | И Валюты.СпособУстановкиКурса = ЗНАЧЕНИЕ(Перечисление.СпособыУстановкиКурсаВалюты.ЗагрузкаИзИнтернета) + | И Валюты.Код В(&ЗагружаемыеПоКлассификатору)"; + + Запрос = Новый Запрос(ТекстЗапроса); + Запрос.УстановитьПараметр("ЗагружаемыеПоКлассификатору", ЗагружаемыеПоКлассификатору); + Результат = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка"); + + Возврат Результат; +КонецФункции + +Функция ИмяСобытияЖурналаРегистрации() + Возврат НСтр("ru = 'Валюты.Загрузка курсов валют'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); +КонецФункции + #КонецОбласти diff --git a/SSL/src/CommonModules/РаботаСКурсамиВалютКлиентСервер/Module.bsl b/SSL/src/CommonModules/РаботаСКурсамиВалютКлиентСервер/Module.bsl index 615556cf6..cbd59dcb4 100644 --- a/SSL/src/CommonModules/РаботаСКурсамиВалютКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/РаботаСКурсамиВалютКлиентСервер/Module.bsl @@ -48,6 +48,8 @@ Возврат Окр((Сумма * ПараметрыТекущегоКурса.Курс * ПараметрыНовогоКурса.Кратность) / (ПараметрыНовогоКурса.Курс * ПараметрыТекущегоКурса.Кратность), 2); КонецФункции +#Область УстаревшиеПроцедурыИФункции + // Устарела. Следует использовать функцию ПересчитатьПоКурсу. // // Пересчитывает сумму из валюты ВалютаНач по курсу ПоКурсуНач @@ -76,3 +78,5 @@ КонецФункции #КонецОбласти + +#КонецОбласти diff --git a/SSL/src/CommonModules/РаботаСПочтовымиСообщениями/Module.bsl b/SSL/src/CommonModules/РаботаСПочтовымиСообщениями/Module.bsl index 25ad66cc7..e18f0f698 100644 --- a/SSL/src/CommonModules/РаботаСПочтовымиСообщениями/Module.bsl +++ b/SSL/src/CommonModules/РаботаСПочтовымиСообщениями/Module.bsl @@ -37,12 +37,11 @@ // * ключ - Строка - наименование вложения // * значение - ДвоичныеДанные, АдресВоВременномХранилище - данные вложения; // - Структура - содержащая следующие свойства: -// * ДвоичныеДанные - ДвоичныеДанные - двоичные данные вложения +// * ДвоичныеДанные - ДвоичныеДанные - двоичные данные вложения. // * Идентификатор - Строка - идентификатор вложения, используется для хранения картинок, // отображаемых в теле письма. // // * АдресОтвета - Соответствие - см. описание поля Кому. -// * Пароль - Строка - пароль для доступа к учетной записи. // * ИдентификаторыОснований - Строка - идентификаторы оснований данного письма. // * ОбрабатыватьТексты - Булево - необходимость обрабатывать тексты письма при отправке. // * УведомитьОДоставке - Булево - необходимость запроса уведомления о доставке. @@ -58,6 +57,8 @@ // // Соединение - ИнтернетПочта - существующее соединение с почтовым сервером. Если не указано, то соединение // устанавливается в теле функции. +// ПротоколПочты - Строка - если указано значение "IMAP", то письмо будет передано по протоколу IMAP. +// в другом случае по протоколу SMTP. // // Возвращаемое значение: // Строка - идентификатор отправленного почтового сообщения на SMTP сервере. @@ -65,8 +66,9 @@ // ПРИМЕЧАНИЕ: функция может вызвать исключение, которое требуется обработать. // Функция ОтправитьПочтовоеСообщение(Знач УчетнаяЗапись, - Знач ПараметрыПисьма, - Знач Соединение = Неопределено) Экспорт + Знач ПараметрыПисьма, + Знач Соединение = Неопределено, + ПротоколПочты = "") Экспорт Если ТипЗнч(УчетнаяЗапись) <> Тип("СправочникСсылка.УчетныеЗаписиЭлектроннойПочты") Или НЕ ЗначениеЗаполнено(УчетнаяЗапись) Тогда @@ -107,18 +109,7 @@ ПараметрыПисьма.АдресОтвета = ОбщегоНазначенияКлиентСервер.РазобратьСтрокуСПочтовымиАдресами(ПараметрыПисьма.АдресОтвета); КонецЕсли; - Если ПараметрыПисьма.Свойство("Вложения") Тогда - Если ТипЗнч(ПараметрыПисьма.Вложения) = Тип("Соответствие") Тогда - Для Каждого Вложение Из ПараметрыПисьма.Вложения Цикл - ДанныеВложения = Вложение.Значение; - Если РаботаСПочтовымиСообщениямиСлужебный.ПривестиВложениеДляВставкиВПисьмо(ДанныеВложения) Тогда - ПараметрыПисьма.Вложения.Вставить(Вложение.Ключ, ДанныеВложения); - КонецЕсли; - КонецЦикла; - КонецЕсли; - КонецЕсли; - - ИдентификаторСообщения = РаботаСПочтовымиСообщениямиСлужебный.ОтправитьСообщение(УчетнаяЗапись, ПараметрыПисьма, Соединение); + ИдентификаторСообщения = РаботаСПочтовымиСообщениямиСлужебный.ОтправитьСообщение(УчетнаяЗапись, ПараметрыПисьма, Соединение, ПротоколПочты); Если ЗначениеЗаполнено(ИдентификаторСообщения) Тогда РаботаСПочтовымиСообщениямиПереопределяемый.ПослеОтправкиПисьма(ПараметрыПисьма); @@ -128,10 +119,38 @@ КонецФункции -// Функция для загрузки сообщений. Проверяет корректность заполнения учетной -// записи и вызывает функцию, реализующую механику загрузки сообщений. -// -// Параметры к функции см. в функции ЗагрузитьСообщения. +// Загружает сообщения с сервера электронной почты для указанной учетной записи. +// Предварительно, проверяется корректность заполнения учетной записи. +// +// Параметры: +// УчетнаяЗапись - СправочникСсылка.УчетныеЗаписиЭлектроннойПочты - учетная запись электронной почты. +// +// ПараметрыЗагрузки - Структура - со свойствами: +// * Колонки - Массив - массив строк названий колонок +// названия колонок должны соответствовать полям объекта +// ИнтернетПочтовоеСообщение. +// * РежимТестирования - Булево - если Истина то вызов сделан в режиме тестирования +// учетной записи - при этом выборка писем происходит, +// но в возвращаемом значении они не попадают; по умолчанию +// режим тестирования отключен. +// * ПолучениеЗаголовков - Булево - если Истина, то в возвращаемом наборе есть только +// заголовки писем. +// * ЗаголовкиИдентификаторы - Массив - заголовки или идентификаторы сообщений, полные +// сообщения по которым требуется получить. +// * ПриводитьСообщенияКТипу - Булево - возвращать набор полученных почтовых сообщений +// в виде таблицы значений, с простыми типами. По умолчанию Истина. +// +// Возвращаемое значение: +// НаборСообщений - ТаблицаЗначений, Булево - список почтовых сообщений с колонками: +// Важность, Вложения**, ДатаОтправления, ДатаПолучения, Заголовок, ИмяОтправителя, +// Идентификатор, Копии, Обратный адрес, Отправитель, Получатели, Размер, Тексты, +// Кодировка, СпособКодированияНеASCIIСимволов, Частичное +// заполняется если статус Истина. +// +// В режиме тестирования возвращается Истина. +// Прим. ** - в случае, если вложениями являются другие почтовые сообщения, +// они сами не возвращаются но возвращаются их вложения - двоичные +// данные и их тексты в виде двоичных данных, рекурсивно. // Функция ЗагрузитьПочтовыеСообщения(Знач УчетнаяЗапись, Знач ПараметрыЗагрузки = Неопределено) Экспорт @@ -146,7 +165,6 @@ КонецЕсли; Результат = РаботаСПочтовымиСообщениямиСлужебный.ЗагрузитьСообщения(УчетнаяЗапись, ПараметрыЗагрузки); - Возврат Результат; КонецФункции @@ -290,8 +308,14 @@ // // Возвращаемое значение: // Булево. -Функция УчетнаяЗаписьНастроена(УчетнаяЗапись, ДляОтправки = Истина, ДляПолучения = Истина) Экспорт - Параметры = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(УчетнаяЗапись, "АдресЭлектроннойПочты,СерверВходящейПочты,СерверИсходящейПочты"); +Функция УчетнаяЗаписьНастроена(УчетнаяЗапись, Знач ДляОтправки = Неопределено, Знач ДляПолучения = Неопределено) Экспорт + Параметры = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(УчетнаяЗапись, "АдресЭлектроннойПочты,СерверВходящейПочты,СерверИсходящейПочты,ИспользоватьДляПолучения,ИспользоватьДляОтправки"); + Если ДляОтправки = Неопределено Тогда + ДляОтправки = Параметры.ИспользоватьДляОтправки; + КонецЕсли; + Если ДляПолучения = Неопределено Тогда + ДляПолучения = Параметры.ИспользоватьДляПолучения; + КонецЕсли; Возврат Не (ПустаяСтрока(Параметры.АдресЭлектроннойПочты) Или ДляПолучения И ПустаяСтрока(Параметры.СерверВходящейПочты) Или ДляОтправки И ПустаяСтрока(Параметры.СерверИсходящейПочты)); diff --git a/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиВызовСервера/Module.bsl b/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиВызовСервера/Module.bsl index 92e36e7f3..390943e57 100644 --- a/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиВызовСервера/Module.bsl @@ -26,7 +26,7 @@ КонецФункции Функция УчетнаяЗаписьНастроена(УчетнаяЗапись) Экспорт - Возврат РаботаСПочтовымиСообщениями.УчетнаяЗаписьНастроена(УчетнаяЗапись); + Возврат РаботаСПочтовымиСообщениями.УчетнаяЗаписьНастроена(УчетнаяЗапись, Ложь, Ложь); КонецФункции #КонецОбласти diff --git a/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиКлиент/Module.bsl b/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиКлиент/Module.bsl index 2c956d9bd..04ab3e1ea 100644 --- a/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиКлиент/Module.bsl +++ b/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиКлиент/Module.bsl @@ -21,6 +21,10 @@ // - СписокЗначений - Список адресов. // ** Представление - Строка - представление получателя, // ** Значение - Строка - почтовый адрес. +// - Массив - массив структур, описывающий получателей: +// ** Адрес - Строка - почтовый адрес получателя сообщения; +// ** Представление - Строка - представление адресата; +// ** ИсточникКонтактнойИнформации - СправочникСсылка - владелец контактной информации. // // * Тема - Строка - тема письма. // @@ -135,7 +139,6 @@ ПараметрыОтправки.Свойство("Вложения", Вложения); ПараметрыОтправки.Свойство("УдалятьФайлыПослеОтправки", УдалятьФайлыПослеОтправки); - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.Взаимодействия") И СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().СозданиеИсходящихПисемДоступно Тогда МодульВзаимодействияКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ВзаимодействияКлиент"); diff --git a/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиПереопределяемый/Module.bsl b/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиПереопределяемый/Module.bsl index 4b20a5950..35318347a 100644 --- a/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиПереопределяемый/Module.bsl @@ -33,7 +33,7 @@ // * ключ - Строка - наименование вложения // * значение - ДвоичныеДанные, АдресВоВременномХранилище - данные вложения; // - Структура - содержащая следующие свойства: -// * ДвоичныеДанные - ДвоичныеДанные - двоичные данные вложения +// * ДвоичныеДанные - ДвоичныеДанные - двоичные данные вложения. // * Идентификатор - Строка - идентификатор вложения, используется для хранения картинок, // отображаемых в теле письма. // diff --git a/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиСлужебный/Module.bsl b/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиСлужебный/Module.bsl index f36739bb5..6a4f7ae16 100644 --- a/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиСлужебный/Module.bsl +++ b/SSL/src/CommonModules/РаботаСПочтовымиСообщениямиСлужебный/Module.bsl @@ -103,41 +103,39 @@ СписокСвойствPOP3 = "АдресСервераPOP3,ПортPOP3,ИспользоватьSSLPOP3,Пользователь,ТолькоЗащищеннаяАутентификацияPOP3"; СписокСвойствSMTP = "АдресСервераSMTP,ПортSMTP,ИспользоватьSSLSMTP,ПользовательSMTP,ТолькоЗащищеннаяАутентификацияSMTP"; + УстановитьПривилегированныйРежим(Истина); + Пароли = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(УчетнаяЗапись, "Пароль,ПарольSMTP"); + УстановитьПривилегированныйРежим(Ложь); + Результат = Новый ИнтернетПочтовыйПрофиль; Если ДляПолучения Тогда Если Выборка.Протокол = "IMAP" Тогда ТребуемыеСвойства = СписокСвойствIMAP; - УстановитьПривилегированныйРежим(Истина); - Результат.ПарольIMAP = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(УчетнаяЗапись); - УстановитьПривилегированныйРежим(Ложь); + Результат.ПарольIMAP = Пароли.Пароль; Иначе ТребуемыеСвойства = СписокСвойствPOP3; - УстановитьПривилегированныйРежим(Истина); - Результат.Пароль = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(УчетнаяЗапись); - УстановитьПривилегированныйРежим(Ложь); + Результат.Пароль = Пароли.Пароль; КонецЕсли; Иначе ТребуемыеСвойства = СписокСвойствSMTP; + Результат.ПарольSMTP = Пароли.ПарольSMTP; Если Выборка.Протокол <> "IMAP" И Выборка.POP3ПередSMTP Тогда ТребуемыеСвойства = ТребуемыеСвойства + ",POP3ПередSMTP," + СписокСвойствPOP3; + Результат.Пароль = Пароли.Пароль; + КонецЕсли; + Если Выборка.Протокол = "IMAP" Тогда + ТребуемыеСвойства = ТребуемыеСвойства + "," + СписокСвойствIMAP; + Результат.ПарольIMAP =Пароли.Пароль; КонецЕсли; - УстановитьПривилегированныйРежим(Истина); - Результат.ПарольSMTP = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(УчетнаяЗапись, "ПарольSMTP"); - УстановитьПривилегированныйРежим(Ложь); КонецЕсли; ТребуемыеСвойства = ТребуемыеСвойства + ",Таймаут"; ЗаполнитьЗначенияСвойств(Результат, Выборка, ТребуемыеСвойства); КонецЕсли; Возврат Результат; - КонецФункции -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - // См. описание этой же процедуры в модуле СтандартныеПодсистемыСервер. Процедура ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики) Экспорт @@ -167,6 +165,9 @@ СерверныеОбработчики["СтандартныеПодсистемы.БазоваяФункциональность\ПриЗаполненииРазрешенийНаДоступКВнешнимРесурсам"].Добавить( "РаботаСПочтовымиСообщениямиСлужебный"); + + СерверныеОбработчики["СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПереименованийОбъектовМетаданных"].Добавить( + "РаботаСПочтовымиСообщениямиСлужебный"); КонецПроцедуры @@ -191,21 +192,191 @@ КонецПроцедуры -// Преобразовывает внутренние форматы вложений к двоичным данным. +// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной +// информационной базе. // -Функция ПривестиВложениеДляВставкиВПисьмо(Вложение) Экспорт - Если ТипЗнч(Вложение) = Тип("Строка") И ЭтоАдресВременногоХранилища(Вложение) Тогда - Вложение = ПолучитьИзВременногоХранилища(Вложение); - ПривестиВложениеДляВставкиВПисьмо(Вложение); - Возврат Истина; - ИначеЕсли ТипЗнч(Вложение) = Тип("Картинка") Тогда - Вложение = Вложение.ПолучитьДвоичныеДанные(); - Возврат Истина; - ИначеЕсли ТипЗнч(Вложение) = Тип("Файл") И Вложение.Существует() И Вложение.ЭтоФайл() Тогда - Вложение = Новый ДвоичныеДанные(Вложение.ПолноеИмя); - Возврат Истина; +// Параметры: +// см. описание обработчика события ПриПолученииДанныхОтГлавного() в синтаксис-помощнике. +// +Процедура ПриПолученииДанныхОтГлавного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель) Экспорт + + ПриПолученииДанных(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель); + +КонецПроцедуры + +// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной +// информационной базе. +// +// Параметры: +// см. описание обработчика события ПриПолученииДанныхОтПодчиненного() в синтаксис-помощнике. +// +Процедура ПриПолученииДанныхОтПодчиненного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель) Экспорт + + ПриПолученииДанных(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель); + +КонецПроцедуры + +// Обработчик начальной настройки ИБ после создания узла РИБ. +// Вызывается в момент первого запуска подчиненного узла РИБ (в том числе АРМ). +// +Процедура ПриНастройкеПодчиненногоУзлаРИБ() Экспорт + + ОтключитьИспользованиеУчетныхЗаписей(); + +КонецПроцедуры + +// Добавляет процедуры-обработчики обновления, необходимые данной подсистеме. +// +// Параметры: +// Обработчики - ТаблицаЗначений - см. описание функции НоваяТаблицаОбработчиковОбновления +// общего модуля ОбновлениеИнформационнойБазы. +// +Процедура ПриДобавленииОбработчиковОбновления(Обработчики) Экспорт + + Обработчик = Обработчики.Добавить(); + Обработчик.НачальноеЗаполнение = Истина; + Обработчик.Процедура = "РаботаСПочтовымиСообщениямиСлужебный.ЗаполнитьСистемнуюУчетнуюЗапись"; + Обработчик.Версия = "1.0.0.1"; + + Обработчик = Обработчики.Добавить(); + Обработчик.Процедура = "РаботаСПочтовымиСообщениямиСлужебный.ЗаполнитьНовыеРеквизитыУчетныхЗаписей"; + Обработчик.Версия = "2.2.2.5"; + +КонецПроцедуры + +// Заполняет виды доступа, используемые в ограничениях прав доступа. +// Виды доступа Пользователи и ВнешниеПользователи уже заполнены. +// Их можно удалить, если они не требуются для ограничения прав доступа. +// +// Параметры: +// ВидыДоступа - ТаблицаЗначений - с колонками: +// * Имя - Строка - имя используемое в описании поставляемых +// профилей групп доступа и текстах ОДД. +// * Представление - Строка - представляет вид доступа в профилях и группах доступа. +// * ТипЗначений - Тип - тип ссылки значений доступа. +// Например, Тип("СправочникСсылка.Номенклатура"). +// * ТипГруппЗначений - Тип - тип ссылки групп значений доступа. +// Например, Тип("СправочникСсылка.ГруппыДоступаНоменклатуры"). +// * НесколькоГруппЗначений - Булево - Истина указывает, что для значения доступа (Номенклатуры), можно +// выбрать несколько групп значений (Групп доступа номенклатуры). +// +Процедура ПриЗаполненииВидовДоступа(ВидыДоступа) Экспорт + + ВидДоступа = ВидыДоступа.Добавить(); + ВидДоступа.Имя = "УчетныеЗаписиЭлектроннойПочты"; + ВидДоступа.Представление = НСтр("ru = 'Учетные записи электронной почты'"); + ВидДоступа.ТипЗначений = Тип("СправочникСсылка.УчетныеЗаписиЭлектроннойПочты"); + +КонецПроцедуры + +// Заполняет состав видов доступа, используемых при ограничении прав объектов метаданных. +// Если состав видов доступа не заполнен, отчет "Права доступа" покажет некорректные сведения. +// +// Обязательно требуется заполнить только виды доступа, используемые +// в шаблонах ограничения доступа явно, а виды доступа, используемые +// в наборах значений доступа могут быть получены из текущего состояния +// регистра сведений НаборыЗначенийДоступа. +// +// Для автоматической подготовки содержимого процедуры следует +// воспользоваться инструментами разработчика для подсистемы. +// Управление доступом. +// +// Параметры: +// Описание - Строка, многострочная строка формата <Таблица>.<Право>.<ВидДоступа>[.Таблица объекта]. +// Например, Документ.ПриходнаяНакладная.Чтение.Организации +// Документ.ПриходнаяНакладная.Чтение.Контрагенты +// Документ.ПриходнаяНакладная.Изменение.Организации +// Документ.ПриходнаяНакладная.Изменение.Контрагенты +// Документ.ЭлектронныеПисьма.Чтение.Объект.Документ.ЭлектронныеПисьма +// Документ.ЭлектронныеПисьма.Изменение.Объект.Документ.ЭлектронныеПисьма +// Документ.Файлы.Чтение.Объект.Справочник.ПапкиФайлов +// Документ.Файлы.Чтение.Объект.Документ.ЭлектронноеПисьмо +// Документ.Файлы.Изменение.Объект.Справочник.ПапкиФайлов +// Документ.Файлы.Изменение.Объект.Документ.ЭлектронноеПисьмо +// Вид доступа Объект предопределен, как литерал, его нет в предопределенных элементах. +// ПланыВидовХарактеристик.ВидыДоступа. Этот вид доступа используется в шаблонах ограничений доступа, +// как "ссылка" на другой объект, по которому ограничивается таблица. +// Когда вид доступа "Объект" задан, также требуется задать типы таблиц, которые используются +// для этого вида доступа. Т.е. перечислить типы, которые соответствующие полю, +// использованному в шаблоне ограничения доступа в паре с видом доступа "Объект". +// При перечислении типов по виду доступа "Объект" нужно перечислить только те типы поля, +// которые есть у поля РегистрыСведений.НаборыЗначенийДоступа.Объект, остальные типы лишние. +// +Процедура ПриЗаполненииВидовОграниченийПравОбъектовМетаданных(Описание) Экспорт + + Если НЕ ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда + Возврат; КонецЕсли; - Возврат Ложь; + + МодульУправлениеДоступомСлужебный = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступомСлужебный"); + + Если МодульУправлениеДоступомСлужебный.ВидДоступаСуществует("УчетныеЗаписиЭлектроннойПочты") Тогда + + Описание = Описание + " + |Справочник.УчетныеЗаписиЭлектроннойПочты.Чтение.УчетныеЗаписиЭлектроннойПочты + |"; + + КонецЕсли; + +КонецПроцедуры + +// Заполняет переименования тех объектов метаданных, которые невозможно +// автоматически найти по типу, но ссылки на которые требуется сохранять +// в базе данных (например: подсистемы, роли). +// +// См. также: +// ОбщегоНазначения.ДобавитьПереименование(). +// +Процедура ПриДобавленииПереименованийОбъектовМетаданных(Итог) Экспорт + + Библиотека = "СтандартныеПодсистемы"; + + СтароеИмя = "Роль.ИспользованиеУчетныхЗаписейЭлектроннойПочты"; + НовоеИмя = "Роль.ЧтениеУчетныхЗаписейЭлектроннойПочты"; + ОбщегоНазначения.ДобавитьПереименование(Итог, "2.3.3.11", СтароеИмя, НовоеИмя, Библиотека); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +// Преобразует внутренние форматы вложений к двоичным данным. +Функция ПривестиВложениеДляВставкиВПисьмо(Вложение) + Если ТипЗнч(Вложение) = Тип("Строка") И ЭтоАдресВременногоХранилища(Вложение) Тогда + Возврат ПривестиВложениеДляВставкиВПисьмо(ПолучитьИзВременногоХранилища(Вложение)); + + ИначеЕсли ТипЗнч(Вложение) = Тип("Картинка") Тогда + Возврат Вложение.ПолучитьДвоичныеДанные(); + + ИначеЕсли ТипЗнч(Вложение) = Тип("Файл") И Вложение.Существует() И Вложение.ЭтоФайл() Тогда + Возврат Новый ДвоичныеДанные(Вложение.ПолноеИмя); + + Иначе + Возврат Вложение; + КонецЕсли; +КонецФункции + +// Преобразует коды текст письма к формату вставки картинок. +Функция ПривестиТекстПисьмаДляВставкиКартинок(ТекстПисьма) + // Конвертация HTML текста в ДокументHTML. + Построитель = Новый ПостроительDOM; + ЧтениеHTML = Новый ЧтениеHTML; + ЧтениеHTML.УстановитьСтроку(ТекстПисьма); + ДокументHTML = Построитель.Прочитать(ЧтениеHTML); + + // Замена имен картинок в документе HTML на идентификаторы. + Для Каждого Картинка Из ДокументHTML.Картинки Цикл + АтрибутИсточникКартинки = Картинка.Атрибуты.ПолучитьИменованныйЭлемент("src"); + АтрибутИсточникКартинки.ТекстовоеСодержимое = "cid:" + АтрибутИсточникКартинки.ТекстовоеСодержимое; + КонецЦикла; + + // Конвертация ДокументHTML обратно в текст HTML. + ЗаписьDOM = Новый ЗаписьDOM; + ЗаписьHTML = Новый ЗаписьHTML; + ЗаписьHTML.УстановитьСтроку(); + ЗаписьDOM.Записать(ДокументHTML, ЗаписьHTML); + Возврат ЗаписьHTML.Закрыть(); КонецФункции // Проверяет, что предопределенная системная учетная запись электронной почты @@ -237,69 +408,12 @@ КонецФункции //////////////////////////////////////////////////////////////////////////////// -// Функция отправления - непосредственная реализация механики отправления -// электронного сообщения. -// -// Функция, реализующая механику отправки сообщения электронной почты. -// -// Параметры: -// УчетнаяЗапись - СправочникСсылка.УчетныеЗаписиЭлектроннойПочты - ссылка на -// учетную запись электронной почты. -// ПараметрыПисьма - структура - содержит всю необходимую информацию о письме: -// содержит следующие ключи: -// Кому* - Массив структур, строка - Интернет адрес получателя письма. -// Адрес - строка - почтовый адрес. -// Представление - строка - имя адресата. -// Копии - массив структур, строка - Интернет адреса получателей письма -// используется при формировании письма для поля копий -// в случае массива структур, формат каждой структуры: -// Адрес - строка - почтовый адрес (должно быть обязательно заполнено). -// Представление - строка - имя адресата. -// СлепыеКопии - массив структур, строка - Интернет адреса получателей письма -// используется при формировании письма для поля скрытых копий -// в случае массива структур, формат каждой структуры: -// Адрес - строка - почтовый адрес (должно быть обязательно заполнено). -// Представление - строка - имя адресата. -// -// Тема* - Строка - тема почтового сообщения. -// Тело* - тело почтового сообщения (простой текст в кодировке win-1251). -// Важность - ВажностьИнтернетПочтовогоСообщения -// Вложения - Соответствие -// ключ - наименованиеВложения - строка - наименование вложения -// значение - ДвоичныеДанные,Структура - либо двоичные данные вложения, либо структура, -// содержащая следующие свойства: -// "ДвоичныеДанные" - ДвоичныеДанные - двоичные данные вложения -// "Идентификатор" - Строка - идентификатор вложения, используется для хранения картинок, -// отображаемых в теле письма. -// -// Дополнительные ключи структуры, которые могут использоваться: -// АдресОтвета - Соответствие - см. такие же поля как и кому. -// ИдентификаторыОснований - строка - идентификаторы оснований данного письма. -// ОбрабатыватьТексты - Булево - необходимость обрабатывать тексты письма при отправке. -// УведомитьОДоставке - Булево - необходимость запроса уведомления о доставке. -// УведомитьОПрочтении - Булево - необходимость запроса уведомления о прочтении. -// ТипТекста - Строка / Перечисление.ТипыТекстовЭлектронныхПисем/ТипТекстаПочтовогоСообщения определяет тип -// переданного теста допустимые значения: -// HTML/ТипыТекстовЭлектронныхПисем.HTML - текст почтового сообщения в формате HTML. -// ПростойТекст/ТипыТекстовЭлектронныхПисем.ПростойТекст - простой текст почтового сообщения. -// Отображается "как есть" (значение по -// умолчанию). -// РазмеченныйТекст/ТипыТекстовЭлектронныхПисем.РазмеченныйТекст - текст почтового сообщения в формате -// Rich Text. -// -// Прим.: параметры письма помеченные символом '*' являются обязательными -// т.е. к началу работы функции считается что они уже заполнены. -// Соединение - ИнтернетПочта - существующее соединение с почтовым сервером, если не указано, то соединение -// устанавливается в теле функции. -// -// Возвращаемое значение: -// Строка - идентификатор отправленного почтового сообщения на smtp сервере. -// -// ПРИМЕЧАНИЕ: функция может вызвать исключение, которое требуется обработать. +// Состав параметров см. в РаботаСПочтовымиСообщениями.ОтправитьПочтовоеСообщение. // Функция ОтправитьСообщение(Знач УчетнаяЗапись, - Знач ПараметрыПисьма, - Соединение = Неопределено) Экспорт + Знач ПараметрыПисьма, + Соединение = Неопределено, + ПротоколПочты = "") Экспорт // Объявление переменных перед первым использованием в качестве // параметра метода Свойство структуры ПараметрыПисьма. @@ -382,12 +496,22 @@ НовоеВложение.Кодировка = Вложение.Значение.Кодировка; КонецЕсли; Иначе - Письмо.Вложения.Добавить(Вложение.Значение, Вложение.Ключ); + Письмо.Вложения.Добавить(ПривестиВложениеДляВставкиВПисьмо(Вложение.Значение), Вложение.Ключ); КонецЕсли; КонецЕсли; КонецЦикла; КонецЕсли; - + + Если ПараметрыПисьма.Свойство("Картинки") И ТипЗнч(ПараметрыПисьма.Картинки) = Тип("Структура") Тогда + Тело = ПривестиТекстПисьмаДляВставкиКартинок(Тело); + + // Запись картинок с именами в качестве идентификаторов. + Для Каждого КлючИЗначение Из ПараметрыПисьма.Картинки Цикл + НовоеВложение = Письмо.Вложения.Добавить(ПривестиВложениеДляВставкиВПисьмо(КлючИЗначение.Значение), КлючИЗначение.Ключ); + НовоеВложение.Идентификатор = КлючИЗначение.Ключ; + КонецЦикла; + КонецЕсли; + // Установим строку с идентификаторами оснований. Если ПараметрыПисьма.Свойство("ИдентификаторыОснований") Тогда Письмо.УстановитьПолеЗаголовка("References", ПараметрыПисьма.ИдентификаторыОснований); @@ -454,48 +578,16 @@ Соединение.Подключиться(Профиль); КонецЕсли; - Соединение.Послать(Письмо, ОбрабатыватьТекстСообщения); + Соединение.Послать(Письмо, + ОбрабатыватьТекстСообщения, + ?(ПротоколПочты = "IMAP", ПротоколИнтернетПочты.IMAP, ПротоколИнтернетПочты.SMTP)); Возврат Письмо.ИдентификаторСообщения; КонецФункции //////////////////////////////////////////////////////////////////////////////// -// Функция просмотра почты - непосредственная реализация механики отправления -// электронного сообщения. -// -// Функция, реализующая механику загрузки сообщений с сервера электронной почты -// для указанной учетной записи электронной почты. -// -// Параметры: -// УчетнаяЗапись - СправочникСсылка.УчетныеЗаписиЭлектроннойПочты - учетная запись электронной почты. -// -// ПараметрыЗагрузки - Структура - со свойствами: -// * Колонки - Массив - массив строк названий колонок -// названия колонок должны соответствовать полям объекта -// ИнтернетПочтовоеСообщение -// * РежимТестирования - Булево - если Истина то вызов сделан в режиме тестирования -// учетной записи - при этом выборка писем происходит, -// но в возвращаемом значении они не попадают; по умолчанию -// режим тестирования отключен. -// * ПолучениеЗаголовков - Булево - если Истина, то в возвращаемом наборе есть только -// заголовки писем. -// * ЗаголовкиИдентификаторы - Массив - заголовки или идентификаторы сообщений, полные -// сообщения по которым требуется получить. -// * ПриводитьСообщенияКТипу - Булево - возвращать набор полученных почтовых сообщений -// в виде таблицы значений, с простыми типами. По умолчанию Истина. -// -// Возвращаемое значение: -// НаборСообщений - ТаблицаЗначений, Булево - список почтовых сообщений с колонками: -// Важность, Вложения**, ДатаОтправления, ДатаПолучения, Заголовок, ИмяОтправителя, -// Идентификатор, Копии, Обратный адрес, Отправитель, Получатели, Размер, Тексты, -// Кодировка, СпособКодированияНеASCIIСимволов, Частичное -// заполняется если статус Истина. -// -// В режиме тестирования возвращается Истина. -// Прим. ** - в случае, если вложениями являются другие почтовые сообщения, -// они сами не возвращаются но возвращаются их вложения - двоичные -// данные и их тексты в виде двоичных данных, рекурсивно. +// Состав параметров см. в РаботаСПочтовымиСообщениями.ЗагрузитьПочтовыеСообщения. // Функция ЗагрузитьСообщения(Знач УчетнаяЗапись, Знач ПараметрыЗагрузки = Неопределено) Экспорт @@ -757,25 +849,6 @@ //////////////////////////////////////////////////////////////////////////////// // Первоначальное заполнение и обновление ИБ. -// Добавляет процедуры-обработчики обновления, необходимые данной подсистеме. -// -// Параметры: -// Обработчики - ТаблицаЗначений - см. описание функции НоваяТаблицаОбработчиковОбновления -// общего модуля ОбновлениеИнформационнойБазы. -// -Процедура ПриДобавленииОбработчиковОбновления(Обработчики) Экспорт - - Обработчик = Обработчики.Добавить(); - Обработчик.НачальноеЗаполнение = Истина; - Обработчик.Процедура = "РаботаСПочтовымиСообщениямиСлужебный.ЗаполнитьСистемнуюУчетнуюЗапись"; - Обработчик.Версия = "1.0.0.1"; - - Обработчик = Обработчики.Добавить(); - Обработчик.Процедура = "РаботаСПочтовымиСообщениямиСлужебный.ЗаполнитьНовыеРеквизитыУчетныхЗаписей"; - Обработчик.Версия = "2.2.2.5"; - -КонецПроцедуры - // Выполняет заполнение системной учетной записи значениями по умолчанию. // Процедура ЗаполнитьСистемнуюУчетнуюЗапись() Экспорт @@ -824,11 +897,6 @@ КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// -// Проверка учетной записи -// - // Служебная функция используется для проверки учетной записи электронной почты. // Процедура ПроверитьВозможностьОтправкиИПолученияЭлектроннойПочты(УчетнаяЗапись, СообщениеОбОшибке, ДополнительноеСообщение) Экспорт @@ -886,52 +954,6 @@ КонецПроцедуры -// РИБ - -// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной -// информационной базе. -// -// Параметры: -// см. описание обработчика события ПриПолученииДанныхОтПодчиненного() в синтаксис-помощнике. -// -Процедура ПриПолученииДанныхОтПодчиненного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель) Экспорт - - ПриПолученииДанных(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель); - -КонецПроцедуры - -// Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной -// информационной базе. -// -// Параметры: -// см. описание обработчика события ПриПолученииДанныхОтГлавного() в синтаксис-помощнике. -// -Процедура ПриПолученииДанныхОтГлавного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель) Экспорт - - ПриПолученииДанных(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель); - -КонецПроцедуры - -// Процедура является обработчиком событий ПриПолученииДанныхОтГлавного и ПриПолученииДанныхОтПодчиненного, возникающих -// при обмене данными в распределенной информационной базе. -// -// Параметры: -// см. описание соответствующих обработчиков событий в синтаксис-помощнике. -// -Процедура ПриПолученииДанных(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель) - - Если ТипЗнч(ЭлементДанных) = Тип("СправочникОбъект.УчетныеЗаписиЭлектроннойПочты") Тогда - Если ЭлементДанных.ЭтоНовый() Тогда - ЭлементДанных.ИспользоватьДляПолучения = Ложь; - ЭлементДанных.ИспользоватьДляОтправки = Ложь; - Иначе - ЭлементДанных.ИспользоватьДляПолучения = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ЭлементДанных.Ссылка, "ИспользоватьДляПолучения"); - ЭлементДанных.ИспользоватьДляОтправки = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ЭлементДанных.Ссылка, "ИспользоватьДляОтправки"); - КонецЕсли; - КонецЕсли; - -КонецПроцедуры - // Отключает все учетные записи. Используется при начальной настройке узла РИБ. Процедура ОтключитьИспользованиеУчетныхЗаписей() @@ -964,91 +986,22 @@ КонецПроцедуры -// Обработчики событий подсистемы Обмен данными. - -// Обработчик начальной настройки ИБ после создания узла РИБ. -// Вызывается в момент первого запуска подчиненного узла РИБ (в том числе АРМ). -// -Процедура ПриНастройкеПодчиненногоУзлаРИБ() Экспорт - - ОтключитьИспользованиеУчетныхЗаписей(); - -КонецПроцедуры - -// Управление доступом - -// Заполняет виды доступа, используемые в ограничениях прав доступа. -// Виды доступа Пользователи и ВнешниеПользователи уже заполнены. -// Их можно удалить, если они не требуются для ограничения прав доступа. +// Процедура является обработчиком событий ПриПолученииДанныхОтГлавного и ПриПолученииДанныхОтПодчиненного, возникающих +// при обмене данными в распределенной информационной базе. // // Параметры: -// ВидыДоступа - ТаблицаЗначений - с колонками: -// * Имя - Строка - имя используемое в описании поставляемых -// профилей групп доступа и текстах ОДД. -// * Представление - Строка - представляет вид доступа в профилях и группах доступа. -// * ТипЗначений - Тип - тип ссылки значений доступа. -// Например, Тип("СправочникСсылка.Номенклатура"). -// * ТипГруппЗначений - Тип - тип ссылки групп значений доступа. -// Например, Тип("СправочникСсылка.ГруппыДоступаНоменклатуры"). -// * НесколькоГруппЗначений - Булево - Истина указывает, что для значения доступа (Номенклатуры), можно -// выбрать несколько групп значений (Групп доступа номенклатуры). -// -Процедура ПриЗаполненииВидовДоступа(ВидыДоступа) Экспорт - - ВидДоступа = ВидыДоступа.Добавить(); - ВидДоступа.Имя = "УчетныеЗаписиЭлектроннойПочты"; - ВидДоступа.Представление = НСтр("ru = 'Учетные записи электронной почты'"); - ВидДоступа.ТипЗначений = Тип("СправочникСсылка.УчетныеЗаписиЭлектроннойПочты"); - -КонецПроцедуры - -// Заполняет состав видов доступа, используемых при ограничении прав объектов метаданных. -// Если состав видов доступа не заполнен, отчет "Права доступа" покажет некорректные сведения. -// -// Обязательно требуется заполнить только виды доступа, используемые -// в шаблонах ограничения доступа явно, а виды доступа, используемые -// в наборах значений доступа могут быть получены из текущего состояния -// регистра сведений НаборыЗначенийДоступа. -// -// Для автоматической подготовки содержимого процедуры следует -// воспользоваться инструментами разработчика для подсистемы. -// Управление доступом. -// -// Параметры: -// Описание - Строка, многострочная строка формата <Таблица>.<Право>.<ВидДоступа>[.Таблица объекта]. -// Например, Документ.ПриходнаяНакладная.Чтение.Организации -// Документ.ПриходнаяНакладная.Чтение.Контрагенты -// Документ.ПриходнаяНакладная.Изменение.Организации -// Документ.ПриходнаяНакладная.Изменение.Контрагенты -// Документ.ЭлектронныеПисьма.Чтение.Объект.Документ.ЭлектронныеПисьма -// Документ.ЭлектронныеПисьма.Изменение.Объект.Документ.ЭлектронныеПисьма -// Документ.Файлы.Чтение.Объект.Справочник.ПапкиФайлов -// Документ.Файлы.Чтение.Объект.Документ.ЭлектронноеПисьмо -// Документ.Файлы.Изменение.Объект.Справочник.ПапкиФайлов -// Документ.Файлы.Изменение.Объект.Документ.ЭлектронноеПисьмо -// Вид доступа Объект предопределен, как литерал, его нет в предопределенных элементах. -// ПланыВидовХарактеристик.ВидыДоступа. Этот вид доступа используется в шаблонах ограничений доступа, -// как "ссылка" на другой объект, по которому ограничивается таблица. -// Когда вид доступа "Объект" задан, также требуется задать типы таблиц, которые используются -// для этого вида доступа. Т.е. перечислить типы, которые соответствующие полю, -// использованному в шаблоне ограничения доступа в паре с видом доступа "Объект". -// При перечислении типов по виду доступа "Объект" нужно перечислить только те типы поля, -// которые есть у поля РегистрыСведений.НаборыЗначенийДоступа.Объект, остальные типы лишние. +// см. описание соответствующих обработчиков событий в синтаксис-помощнике. // -Процедура ПриЗаполненииВидовОграниченийПравОбъектовМетаданных(Описание) Экспорт +Процедура ПриПолученииДанных(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель) - Если НЕ ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда - Возврат; - КонецЕсли; - - МодульУправлениеДоступомСлужебный = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступомСлужебный"); - - Если МодульУправлениеДоступомСлужебный.ВидДоступаСуществует("УчетныеЗаписиЭлектроннойПочты") Тогда - - Описание = Описание + " - |Справочник.УчетныеЗаписиЭлектроннойПочты.Чтение.УчетныеЗаписиЭлектроннойПочты - |"; - + Если ТипЗнч(ЭлементДанных) = Тип("СправочникОбъект.УчетныеЗаписиЭлектроннойПочты") Тогда + Если ЭлементДанных.ЭтоНовый() Тогда + ЭлементДанных.ИспользоватьДляПолучения = Ложь; + ЭлементДанных.ИспользоватьДляОтправки = Ложь; + Иначе + ЭлементДанных.ИспользоватьДляПолучения = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ЭлементДанных.Ссылка, "ИспользоватьДляПолучения"); + ЭлементДанных.ИспользоватьДляОтправки = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ЭлементДанных.Ссылка, "ИспользоватьДляОтправки"); + КонецЕсли; КонецЕсли; КонецПроцедуры diff --git a/SSL/src/CommonModules/РаботаСФайламиКлиент/Module.bsl b/SSL/src/CommonModules/РаботаСФайламиКлиент/Module.bsl index f214bb7da..6312729ed 100644 --- a/SSL/src/CommonModules/РаботаСФайламиКлиент/Module.bsl +++ b/SSL/src/CommonModules/РаботаСФайламиКлиент/Module.bsl @@ -63,6 +63,7 @@ ПараметрыВыполнения = Новый Структура; ПараметрыВыполнения.Вставить("ОбработчикРезультата", ОбработчикРезультата); ПараметрыВыполнения.Вставить("ВладелецФайла", ВладелецФайла); + ПараметрыВыполнения.Вставить("ЭтоФайл", Истина); ПараметрыВыполнения.Вставить("ФормаВладелец", ФормаВладелец); ПараметрыВыполнения.Вставить("НеОткрыватьКарточкуПослеСозданияИзФайла", НеОткрыватьКарточку); РаботаСФайламиСлужебныйКлиент.ДобавитьПослеВыбораРежимаСоздания(РежимСоздания, ПараметрыВыполнения); @@ -80,7 +81,8 @@ КонецПроцедуры -// Задает вопрос о продолжении закрытия формы если в форме остались захваченные файлы. +// Задает вопрос о продолжении закрытия формы если в форме остались захваченные файлы: +// "Один или несколько файлов заняты вами для редактирования. Продолжить?" // Вызывается из ПередЗакрытием форм с файлами. // // По ссылке объекта проверяет остались ли захваченные файлы. @@ -90,39 +92,48 @@ // Если пользователь ответил утвердительно, тогда форма снова закрывается. // // Параметры: -// Форма - УправляемаяФорма - форма, в которой можно редактировать файл. -// Отказ - Булево - параметр события ПередЗакрытием. -// ОбъектСсылка - ЛюбаяСсылка - ссылка на владельца файла. -// ИмяРеквизита - Строка - имя реквизита типа Булево, в котором хранится признак того, -// что вопрос уже выводился. +// Форма - УправляемаяФорма - форма, в которой редактируется файл. +// Отказ - Булево - параметр события ПередЗакрытием. +// ЗавершениеРаботы - Булево - признак того, что форма закрывается в процессе завершения работы приложения. +// ОбъектСсылка - ЛюбаяСсылка - ссылка на владельца файла. +// ИмяРеквизита - Строка - имя реквизита типа Булево, в котором хранится признак того, +// что вопрос уже выводился. // // Пример: +// // &НаКлиенте -// Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) -// РаботаСФайламиКлиент.ПоказатьПодтверждениеЗакрытияФормыСФайлами(ЭтотОбъект, Отказ, Объект.Ссылка); -// // <Если есть другой код:>. -// Если Отказ Тогда -// Возврат; -// КонецЕсли; -// // <Другой прикладной код...>. +// Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) +// РаботаСФайламиКлиент.ПоказатьПодтверждениеЗакрытияФормыСФайлами(ЭтотОбъект, Отказ, ЗавершениеРаботы, Объект.Ссылка); // КонецПроцедуры // -Процедура ПоказатьПодтверждениеЗакрытияФормыСФайлами(Форма, Отказ, ОбъектСсылка, ИмяРеквизита = "МожноЗакрытьФормуСФайлами") Экспорт +Процедура ПоказатьПодтверждениеЗакрытияФормыСФайлами(Форма, Отказ, ЗавершениеРаботы, ОбъектСсылка, + ИмяРеквизита = "МожноЗакрытьФормуСФайлами") Экспорт + ИмяПроцедуры = "РаботаСФайламиКлиент.ПоказатьПодтверждениеЗакрытияФормыСФайлами"; + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр(ИмяПроцедуры, "Форма", Форма, Тип("УправляемаяФорма")); + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр(ИмяПроцедуры, "Отказ", Отказ, Тип("Булево")); + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр(ИмяПроцедуры, "ЗавершениеРаботы", ЗавершениеРаботы, Тип("Булево")); + ОбщегоНазначенияКлиентСервер.ПроверитьПараметр(ИмяПроцедуры, "ИмяРеквизита", ИмяРеквизита, Тип("Строка")); + Если Форма[ИмяРеквизита] Тогда Возврат; КонецЕсли; + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + Количество = РаботаСФайламиСлужебныйВызовСервера.КоличествоФайловЗанятыхТекущимПользователем(ОбъектСсылка); Если Количество = 0 Тогда Возврат; КонецЕсли; Отказ = Истина; + ТекстВопроса = НСтр("ru = 'Один или несколько файлов заняты вами для редактирования. | |Продолжить?'"); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(Форма, Отказ, ТекстВопроса, ИмяРеквизита); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(Форма, Отказ, ЗавершениеРаботы, ТекстВопроса, ИмяРеквизита); КонецПроцедуры @@ -207,7 +218,7 @@ КонецЕсли; - // переходим к печати следующего файла + // переходим к печати следующего файла. ПараметрыВыполнения.НомерФайла = ПараметрыВыполнения.НомерФайла + 1; Обработчик = Новый ОписаниеОповещения("НапечататьФайлыВыполнение", ЭтотОбъект, ПараметрыВыполнения); ВыполнитьОбработкуОповещения(Обработчик); diff --git a/SSL/src/CommonModules/РаботаСФайламиПереопределяемый/Module.bsl b/SSL/src/CommonModules/РаботаСФайламиПереопределяемый/Module.bsl index b9cfb633c..db7e8cf94 100644 --- a/SSL/src/CommonModules/РаботаСФайламиПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/РаботаСФайламиПереопределяемый/Module.bsl @@ -68,7 +68,7 @@ // МассивИсключений - Массив - метаданные, которые не должны выводиться в настройках очистки файлов. // // Например: -// МассивИсключений.Добавить(Метаданные.Справочники._ДемоНоменклатураПрисоединенныеФайлы); +// МассивИсключений.Добавить(Метаданные.Справочники.Файлы); // Процедура ПриОпределенииОбъектовИсключенияОчисткиФайлов(МассивИсключений) Экспорт @@ -80,21 +80,11 @@ // МассивИсключений - Массив - метаданные, которые не должны выводиться в настройках синхронизации файлов. // // Например: -// МассивИсключений.Добавить(Метаданные.Справочники._ДемоНоменклатураПрисоединенныеФайлы); +// МассивИсключений.Добавить(Метаданные.Справочники.Файлы); // Процедура ПриОпределенииОбъектовИсключенияСинхронизацииФайлов(МассивИсключений) Экспорт КонецПроцедуры -// Устарела.Следует использовать ПриОпределенииОбъектовИсключенияОчисткиФайлов. -// -Функция ОбъектыИсключенияПриОчисткеФайлов() Экспорт - - Массив = Новый Массив; - - Возврат Массив; - -КонецФункции - #КонецОбласти diff --git a/SSL/src/CommonModules/РаботаСФайламиСлужебный/Module.bsl b/SSL/src/CommonModules/РаботаСФайламиСлужебный/Module.bsl index bed4c8d36..0f0785a54 100644 --- a/SSL/src/CommonModules/РаботаСФайламиСлужебный/Module.bsl +++ b/SSL/src/CommonModules/РаботаСФайламиСлужебный/Module.bsl @@ -5,18 +5,65 @@ #Область СлужебныйПрограммныйИнтерфейс +// Используется при выгрузке файлов для перехода в сервис (БТС). +// +Процедура ВыгрузитьФайл(Знач ОбъектФайла, Знач ИмяНовогоФайла) Экспорт + + Если ОбъектФайла.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске Тогда + + ПолныйПуть = ФайловыеФункцииСлужебный.ПолныйПутьТома(ОбъектФайла.Том) + ОбъектФайла.ПутьКФайлу; + КопироватьФайл(ПолныйПуть, ИмяНовогоФайла); + + Иначе // Перечисления.ТипыХраненияФайлов.ВИнформационнойБаза + + АдресВоВременномХранилище = РаботаСФайламиСлужебныйВызовСервера.ПолучитьНавигационнуюСсылкуВоВременномХранилище(ОбъектФайла.Ссылка); + ПолучитьИзВременногоХранилища(АдресВоВременномХранилище).Записать(ИмяНовогоФайла); + + КонецЕсли; + +КонецПроцедуры + +// Используется при загрузке файлов для переходе в сервис (БТС). +// +Процедура ЗагрузитьФайл(Знач ОбъектФайла, Знач ПутьКФайлу) Экспорт + + ДвоичныеДанные = Новый ДвоичныеДанные(ПутьКФайлу); + + Если ФайловыеФункцииСлужебный.ТипХраненияФайлов() = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске Тогда + + // Добавление файла в один из томов (где есть свободное место). + СведенияОФайле = ФайловыеФункцииСлужебный.ДобавитьФайлВТом(ДвоичныеДанные, + ОбъектФайла.ДатаМодификацииУниверсальная, ОбъектФайла.Наименование, ОбъектФайла.Расширение, + ОбъектФайла.НомерВерсии, ОбъектФайла.Зашифрован); + ОбъектФайла.Том = СведенияОФайле.Том; + ОбъектФайла.ПутьКФайлу = СведенияОФайле.ПутьКФайлу; + ОбъектФайла.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске; + ОбъектФайла.ФайлХранилище = Новый ХранилищеЗначения(Неопределено); + + Иначе + + ОбъектФайла.ДополнительныеСвойства.Вставить("ДвоичныеДанныеФайла", ДвоичныеДанные); + ОбъектФайла.ФайлХранилище = Новый ХранилищеЗначения(Неопределено); + ОбъектФайла.Том = Справочники.ТомаХраненияФайлов.ПустаяСсылка(); + ОбъектФайла.ПутьКФайлу = ""; + ОбъектФайла.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВИнформационнойБазе; + + КонецЕсли; + +КонецПроцедуры + // См. описание этой же процедуры в модуле СтандартныеПодсистемыСервер. Процедура ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики) Экспорт // КЛИЕНТСКИЕ ОБРАБОТЧИКИ. КлиентскиеОбработчики[ - "СтандартныеПодсистемы.БазоваяФункциональность\ПриПолученииСпискаПредупрежденийЗавершенияРаботы"].Добавить( + "СтандартныеПодсистемы.БазоваяФункциональность\ПередЗавершениемРаботыСистемы"].Добавить( "РаботаСФайламиСлужебныйКлиент"); // СЕРВЕРНЫЕ ОБРАБОТЧИКИ. - - СерверныеОбработчики["СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПараметровРаботыКлиентаПриЗавершении"].Добавить( + + СерверныеОбработчики["СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПараметровРаботыКлиентаПриЗапуске"].Добавить( "РаботаСФайламиСлужебный"); СерверныеОбработчики["СтандартныеПодсистемы.БазоваяФункциональность\ПриОтправкеДанныхПодчиненному"].Добавить( @@ -91,6 +138,16 @@ КонецПроцедуры +Процедура ПриСохраненииНастроекРаботыСФайлами(КлючиОбъектовНастроекРаботыСФайлами) Экспорт + + КлючиОбъектовНастроекРаботыСФайлами.Вставить("СпрашиватьРежимРедактированияПриОткрытииФайла" ,"НастройкиОткрытияФайлов"); + КлючиОбъектовНастроекРаботыСФайлами.Вставить("ДействиеПоДвойномуЩелчкуМыши", "НастройкиОткрытияФайлов"); + КлючиОбъектовНастроекРаботыСФайлами.Вставить("ПоказыватьКолонкуРазмер" , "НастройкиПрограммы"); + КлючиОбъектовНастроекРаботыСФайлами.Вставить("ПоказыватьЗанятыеФайлыПриЗавершенииРаботы", "НастройкиПрограммы"); + КлючиОбъектовНастроекРаботыСФайлами.Вставить("СпособСравненияВерсийФайлов", "НастройкиСравненияФайлов"); + +КонецПроцедуры + // Возвращает Истина, если это элемент данных, относящийся к подсистеме РаботаСФайлами. // Функция ЭтоЭлементРаботаСФайлами(ЭлементДанных) @@ -226,24 +283,6 @@ КонецПроцедуры -// Только для внутреннего использования. -// -Процедура ВыгрузитьФайл(Знач ОбъектФайла, Знач ИмяНовогоФайла) Экспорт - - Если ОбъектФайла.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске Тогда - - ПолныйПуть = ФайловыеФункцииСлужебный.ПолныйПутьТома(ОбъектФайла.Том) + ОбъектФайла.ПутьКФайлу; - КопироватьФайл(ПолныйПуть, ИмяНовогоФайла); - - Иначе // Перечисления.ТипыХраненияФайлов.ВИнформационнойБаза - - АдресВоВременномХранилище = РаботаСФайламиСлужебныйВызовСервера.ПолучитьНавигационнуюСсылкуВоВременномХранилище(ОбъектФайла.Ссылка); - ПолучитьИзВременногоХранилища(АдресВоВременномХранилище).Записать(ИмяНовогоФайла); - - КонецЕсли; - -КонецПроцедуры - // Только для внутреннего использования. // Процедура ПриПолученииФайла(ЭлементДанных, ПолучениеЭлемента) @@ -313,35 +352,6 @@ КонецПроцедуры -// Только для внутреннего использования. -// -Процедура ЗагрузитьФайл(Знач ОбъектФайла, Знач ПутьКФайлу) Экспорт - - ДвоичныеДанные = Новый ДвоичныеДанные(ПутьКФайлу); - - Если ФайловыеФункцииСлужебный.ТипХраненияФайлов() = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске Тогда - - // Добавление файла в один из томов (где есть свободное место). - СведенияОФайле = ФайловыеФункцииСлужебный.ДобавитьФайлВТом(ДвоичныеДанные, - ОбъектФайла.ДатаМодификацииУниверсальная, ОбъектФайла.Наименование, ОбъектФайла.Расширение, - ОбъектФайла.НомерВерсии, ОбъектФайла.Зашифрован); - ОбъектФайла.Том = СведенияОФайле.Том; - ОбъектФайла.ПутьКФайлу = СведенияОФайле.ПутьКФайлу; - ОбъектФайла.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске; - ОбъектФайла.ФайлХранилище = Новый ХранилищеЗначения(Неопределено); - - Иначе - - ОбъектФайла.ДополнительныеСвойства.Вставить("ДвоичныеДанныеФайла", ДвоичныеДанные); - ОбъектФайла.ФайлХранилище = Новый ХранилищеЗначения(Неопределено); - ОбъектФайла.Том = Справочники.ТомаХраненияФайлов.ПустаяСсылка(); - ОбъектФайла.ПутьКФайлу = ""; - ОбъектФайла.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВИнформационнойБазе; - - КонецЕсли; - -КонецПроцедуры - // Возвращает объекты, имеющие в наличии присоединенные (средствами подсистемы "Работа с файлами") файлы. // // Используется совместно с функцией ПрисоединенныеФайлы.СконвертироватьФайлыВПрисоединенные(). @@ -558,7 +568,7 @@ ВсеДокументы.СодержитТип(ТипЗнч(ТипОбъекта.ЗначениеПустойСсылки)) Тогда Документ = Метаданные.Документы[ТипОбъекта.Имя]; Для Каждого Реквизит Из Документ.Реквизиты Цикл - Если Реквизит.Тип = Новый ОписаниеТипов("Дата") Тогда + Если Реквизит.Тип.СодержитТип(Тип("Дата")) Тогда ТекстЗапроса = ТекстЗапроса + Символы.ПС + "РАЗНОСТЬДАТ(" + Реквизит.Имя + ", &ТекущаяДата, ДЕНЬ) Как ДнейДоУдаленияОт" + Реквизит.Имя + ","; КонецЕсли; ТекстЗапроса = ТекстЗапроса + Символы.ПС + ТипОбъекта.Имя + "." + Реквизит.Имя + ","; @@ -655,6 +665,8 @@ Выборка = РезультатЗапроса.Выбрать(); + ПолныйПутьТома = ФайловыеФункцииСлужебный.ПолныйПутьТома(Том); + Пока Выборка.Следующий() Цикл ВерсияСсылка = Выборка.Ссылка; @@ -667,10 +679,10 @@ ПутьКФайлу = Лев(ПутьКФайлу, СтрДлина(ПутьКФайлу) - 1); КонецЕсли; - ПолныйПутьФайла = ФайловыеФункцииСлужебный.ПолныйПутьТома(Выборка.Том) + ПутьКФайлу; + ПолныйПутьФайла = ПолныйПутьТома + ПутьКФайлу; + СуществующийФайл = ТаблицаФайловНаДиске.НайтиСтроки(Новый Структура("ПолноеИмя", ПолныйПутьФайла)); - Файл = Новый Файл(ПолныйПутьФайла); - Если Не Файл.Существует() Тогда + Если СуществующийФайл.Количество() = 0 Тогда НесуществующийФайл = ТаблицаФайловНаДиске.Добавить(); НесуществующийФайл.СтатусПроверки = НСтр("ru = 'Отсутствуют данные в томе на диске'"); @@ -682,9 +694,9 @@ НесуществующийФайл.Отредактировал = Выборка.Отредактировал; НесуществующийФайл.ДатаРедактирования = Выборка.ДатаМодификацииФайла; НесуществующийФайл.Количество = 1; + Иначе - СуществующийФайл = ТаблицаФайловНаДиске.НайтиСтроки(Новый Структура("ПолноеИмя",ПолныйПутьФайла)); СуществующийФайл[0].Файл = ВерсияСсылка; СуществующийФайл[0].СтатусПроверки = НСтр("ru = 'Целостные данные'"); @@ -706,22 +718,23 @@ Попытка + ТекстКомментария = НСтр("ru = 'Файл удален при очистке ненужных файлов.'") + + " " + Формат(ТекущаяДатаСеанса(),"ДЛФ=D") + Символы.ПС; + Если ФайлОбъект.ТипХраненияФайла = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске Тогда ИмяФайлаСПутем = ФайловыеФункцииСлужебный.ПолныйПутьТома(ФайлОбъект.Том) + ФайлОбъект.ПутьКФайлу; ИмяФайлаСПутемДляУдаления = ИмяФайлаСПутем + ".del"; ФайлНаДиске = Новый Файл(ИмяФайлаСПутем); Если ФайлНаДиске.Существует() Тогда ФайлНаДиске.УстановитьТолькоЧтение(Ложь); - // Переместим файл во временный + // Переместим файл во временный. ПереместитьФайл(ИмяФайлаСПутем, ИмяФайлаСПутемДляУдаления); ФайлОбъект.Том = Справочники.ТомаХраненияФайлов.ПустаяСсылка(); ФайлОбъект.ПутьКФайлу = ""; - ТекстКомментария = НСтр("ru = 'Файл удален при очистке ненужных файлов.'") - + " " + Формат(ТекущаяДатаСеанса(),"ДЛФ=D") + Символы.ПС; ФайлОбъект.Комментарий = ТекстКомментария + ФайлОбъект.Комментарий; ФайлОбъект.Записать(); ФайлОбъект.УстановитьПометкуУдаления(Истина); - // Удалим временный файл, т.к. успешно обновили данные о файле + // Удалим временный файл, т.к. успешно обновили данные о файле. УдалитьФайлы(ИмяФайлаСПутемДляУдаления); КонецЕсли; Иначе @@ -740,11 +753,11 @@ Если Не ПустаяСтрока(ИмяФайлаСПутем) Тогда - // Записать ошибку в журнал регистрации + // Записать ошибку в журнал регистрации. ЗаписьЖурналаРегистрации(НСтр("ru = 'Очистка ненужных файлов'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), УровеньЖурналаРегистрации.Ошибка,, ФайлСсылка, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - // Вернем файл на прежнее место в случае ошибки + // Вернем файл на прежнее место в случае ошибки. ПереместитьФайл(ИмяФайлаСПутемДляУдаления, ИмяФайлаСПутем); КонецЕсли; @@ -754,7 +767,7 @@ КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// -// Синхронизация файлов с облачным сервисом +// Синхронизация файлов с облачным сервисом. Функция ТекстЗапросаДляСинхронизацииФайлов(ВладелецФайла, НастройкаСинхронизации, МассивИсключений, ЭлементИсключение) Экспорт @@ -877,6 +890,7 @@ Если ЭлементИсключение <> Неопределено Тогда ТекстЗапроса = ТекстЗапроса + " | И СправочникПапок.Ссылка В ИЕРАРХИИ (&ЭлементИсключение)"; + КонецЕсли; Возврат ТекстЗапроса; @@ -907,17 +921,19 @@ //////////////////////////////////////////////////////////////////////////////// // Обработчики событий подсистем БСП. -// Заполняет структуру параметров, необходимых для работы клиентского кода -// при завершении работы конфигурации, т.е. в обработчиках: -// - ПередЗавершениемРаботыСистемы, -// - ПриЗавершенииРаботыСистемы. +// Добавляет параметры работы клиентской логики при запуске системы для подсистемы обмена данными в модели сервиса. // -// Параметры: -// Параметры - Структура - структура параметров. -// -Процедура ПриДобавленииПараметровРаботыКлиентаПриЗавершении(Параметры) Экспорт +Процедура ПриДобавленииПараметровРаботыКлиентаПриЗапуске(Параметры) Экспорт - Параметры.Вставить("РаботаСФайлами", ПолучитьПараметрыПриЗавершенииРаботы()); + КоличествоЗанятыхФайлов = 0; + Если ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда + Пользователь = ПользователиКлиентСервер.АвторизованныйПользователь(); + Если ТипЗнч(Пользователь) = Тип("СправочникСсылка.Пользователи") Тогда + КоличествоЗанятыхФайлов = РаботаСФайламиСлужебныйВызовСервера.ПолучитьКоличествоЗанятыхФайлов(, Пользователь); + КонецЕсли; + КонецЕсли; + + Параметры.Вставить("КоличествоЗанятыхФайлов", КоличествоЗанятыхФайлов); КонецПроцедуры @@ -1263,7 +1279,7 @@ // - Значение (Строка) - например "ibm852". // - Представление (Строка) - например "ibm852 (Центральноевропейская DOS)". // -Функция ПолучитьСписокКодировок() Экспорт +Функция Кодировки() Экспорт СписокКодировок = Новый СписокЗначений; @@ -1493,25 +1509,6 @@ КонецПроцедуры -Функция ПолучитьПараметрыПриЗавершенииРаботы() - - ПараметрыПриЗавершении = Новый Структура; - ПараметрыПриЗавершении.Вставить("КоличествоЗанятыхФайлов", 0); - - Если ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда - - Пользователь = ПользователиКлиентСервер.АвторизованныйПользователь(); - Если ТипЗнч(Пользователь) = Тип("СправочникСсылка.Пользователи") Тогда - - ПараметрыПриЗавершении.Вставить("КоличествоЗанятыхФайлов", - РаботаСФайламиСлужебныйВызовСервера.ПолучитьКоличествоЗанятыхФайлов(, Пользователь)); - КонецЕсли; - КонецЕсли; - - Возврат ПараметрыПриЗавершении; - -КонецФункции - // Возвращает количество занятых файлов у переданного пользователя. // // Параметры: diff --git a/SSL/src/CommonModules/РаботаСФайламиСлужебныйВызовСервера/Module.bsl b/SSL/src/CommonModules/РаботаСФайламиСлужебныйВызовСервера/Module.bsl index 908b8bc71..28d2113cb 100644 --- a/SSL/src/CommonModules/РаботаСФайламиСлужебныйВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/РаботаСФайламиСлужебныйВызовСервера/Module.bsl @@ -121,7 +121,9 @@ ПерсональныеНастройки.Вставить("ПоказыватьЗанятыеФайлыПриЗавершенииРаботы", ПоказыватьЗанятыеФайлыПриЗавершенииРаботы); - КонецПроцедуры + ПерсональныеНастройки.Вставить("ПоказыватьКолонкуРазмер", ПолучитьПоказыватьКолонкуРазмер()); + +КонецПроцедуры // Вернет размер файлов на томе - в байтах. Функция ПодсчитатьРазмерФайловНаТоме(СсылкаТома) Экспорт @@ -262,6 +264,12 @@ // ХранилищеЗначения, с двоичными данными файла. Функция ПолучитьХранилищеФайлаИзИнформационнойБазы(ВерсияСсылка) Экспорт + ЕстьПраваНаОбъект = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ВерсияСсылка, "Ссылка"); + + Если ЕстьПраваНаОбъект = Неопределено Тогда + Возврат Неопределено; + КонецЕсли; + УстановитьПривилегированныйРежим(Истина); МенеджерЗаписи = РегистрыСведений.ХранимыеФайлыВерсий.СоздатьМенеджерЗаписи(); @@ -311,6 +319,12 @@ // Функция СоздатьВерсию(ФайлСсылка, СведенияОФайле) Экспорт + ЕстьПраваНаОбъект = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ФайлСсылка, "Ссылка"); + + Если ЕстьПраваНаОбъект = Неопределено Тогда + Возврат Неопределено; + КонецЕсли; + ХранилищеФайла = Неопределено; УстановитьПривилегированныйРежим(Истина); @@ -701,7 +715,7 @@ ДанныеФайла.Вставить("ДатаЗаема", Выборка.ДатаЗаема); Если ДанныеФайла.Зашифрован Тогда - МассивСертификатовШифрования = ПолучитьМассивСертификатовШифрования(ДанныеФайла.Ссылка); + МассивСертификатовШифрования = СертификатыШифрования(ДанныеФайла.Ссылка); ДанныеФайла.Вставить("МассивСертификатовШифрования", МассивСертификатовШифрования); КонецЕсли; @@ -777,6 +791,12 @@ ЕстьПравоСохранения = ПравоДоступа("СохранениеДанныхПользователя", Метаданные); + ЕстьПраваНаОбъект = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ФайлСсылка, "Ссылка"); + + Если ЕстьПраваНаОбъект = Неопределено Тогда + Возврат Неопределено; + КонецЕсли; + УстановитьПривилегированныйРежим(Истина); ВремяИзмененияУниверсальное = СведенияОФайле.ВремяИзмененияУниверсальное; @@ -2034,6 +2054,12 @@ ВРабочемКаталогеНаЧтение, ВРабочемКаталогеВладельца) Экспорт + ЕстьПраваНаОбъект = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Версия, "Ссылка"); + + Если ЕстьПраваНаОбъект = Неопределено Тогда + Возврат Неопределено; + КонецЕсли; + УстановитьПривилегированныйРежим(Истина); ПолноеИмяФайла = ""; @@ -2543,39 +2569,6 @@ КонецФункции -// Вернет Истина, если в указанном элементе справочника Файлы есть файл с таким именем. -// Параметры: -// ИмяФайла - имя файла -// Родитель - ЛюбаяСсылка - владелец файла. -// ПерваяПапкаСТакимЖеИменем - СправочникСсылка.ПапкиФайлов - первая же найденная папка с указанным именем. -// -// Возвращаемое значение: -// Булево - есть дочерний элемент с таким именем. -// -Функция ЕстьФайлСТакимИменем(ИмяФайла, Родитель) Экспорт - - ЗапросВПапки = Новый Запрос; - ЗапросВПапки.УстановитьПараметр("Наименование", ИмяФайла); - ЗапросВПапки.УстановитьПараметр("Родитель", Родитель); - ЗапросВПапки.Текст = - "ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1 - | Файлы.Ссылка КАК Ссылка - |ИЗ - | Справочник.Файлы КАК Файлы - |ГДЕ - | Файлы.ПолноеНаименование = &Наименование - | И Файлы.ВладелецФайла = &Родитель"; - - РезультатЗапроса = ЗапросВПапки.Выполнить(); - - Если НЕ РезультатЗапроса.Пустой() Тогда - Возврат Истина; - КонецЕсли; - - Возврат Ложь; - -КонецФункции - // Для справочника ВерсииФайлов переименует файл на диске, если ТипХраненияФайла = ВТомахНаДиске. // Параметры: // Версия - СправочникСсылка.ВерсииФайлов - версия файла. @@ -3191,7 +3184,7 @@ // // Возвращаемое значение: // Массив - массив структур -Функция ПолучитьМассивСертификатовШифрования(Ссылка) Экспорт +Функция СертификатыШифрования(Ссылка) Экспорт УстановитьПривилегированныйРежим(Истина); Запрос = Новый Запрос; diff --git a/SSL/src/CommonModules/РаботаСФайламиСлужебныйКлиент/Module.bsl b/SSL/src/CommonModules/РаботаСФайламиСлужебныйКлиент/Module.bsl index f91ffa4c5..860812436 100644 --- a/SSL/src/CommonModules/РаботаСФайламиСлужебныйКлиент/Module.bsl +++ b/SSL/src/CommonModules/РаботаСФайламиСлужебныйКлиент/Module.bsl @@ -22,52 +22,6 @@ КонецПроцедуры -// Формирует список предупреждений для пользователя при завершении работы программы. -// -// Параметры: -// см. ПриПолученииСпискаПредупрежденийЗавершенияРаботы. -// -Процедура ПриЗавершенииРаботыСистемы(Предупреждения) - - Ответ = ПроверитьЗанятыеФайлыПриЗавершенииРаботы(); - Если Ответ = Неопределено Тогда - Возврат; - КонецЕсли; - - Если ТипЗнч(Ответ) <> Тип("Структура") Тогда - Возврат; - КонецЕсли; - - ПредупреждениеПользователю = СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершениеРаботы(); - ПредупреждениеПользователю.ТекстГиперссылки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Открыть список редактируемых файлов (%1)'"), - Ответ.КоличествоЗанятыхФайлов); - - ДействиеПриНажатииГиперссылки = ПредупреждениеПользователю.ДействиеПриНажатииГиперссылки; - - ПрикладнаяФормаПредупреждения = Неопределено; - Ответ.Свойство("ПрикладнаяФормаПредупреждения", ПрикладнаяФормаПредупреждения); - ПараметрыПрикладнойФормыПредупреждения = Неопределено; - Ответ.Свойство("ПараметрыПрикладнойФормыПредупреждения", ПараметрыПрикладнойФормыПредупреждения); - - Форма = Неопределено; - Ответ.Свойство("Форма", Форма); - ПараметрыФормы = Неопределено; - Ответ.Свойство("ПараметрыФормы", ПараметрыФормы); - - Если ПрикладнаяФормаПредупреждения <> Неопределено Тогда - ДействиеПриНажатииГиперссылки.ПрикладнаяФормаПредупреждения = ПрикладнаяФормаПредупреждения; - ДействиеПриНажатииГиперссылки.ПараметрыПрикладнойФормыПредупреждения = ПараметрыПрикладнойФормыПредупреждения; - КонецЕсли; - Если Форма <> Неопределено Тогда - ДействиеПриНажатииГиперссылки.Форма = Форма; - ДействиеПриНажатииГиперссылки.ПараметрыФормы = ПараметрыФормы; - КонецЕсли; - - Предупреждения.Добавить(ПредупреждениеПользователю); - -КонецПроцедуры - Процедура ПеренестиВсеФайлыВТома() Экспорт ОткрытьФорму("Обработка.ПереносФайловВТома.Форма"); @@ -423,7 +377,6 @@ // Запрос комментария и признака хранения версии. Если ПараметрыВыполнения.СоздатьНовуюВерсию = Неопределено Тогда - ФормаВозврата = РаботаСФайламиСлужебныйКлиентПовтИсп.ФормаВозвратаФайла(); ПараметрыВыполнения.СоздатьНовуюВерсию = Истина; СоздатьНовуюВерсиюДоступность = Истина; @@ -449,12 +402,9 @@ СтруктураПараметров.Вставить("СоздатьНовуюВерсию", ПараметрыВыполнения.СоздатьНовуюВерсию); СтруктураПараметров.Вставить("СоздатьНовуюВерсиюДоступность", СоздатьНовуюВерсиюДоступность); - ФормаВозврата.УстановитьПараметрыИспользования(СтруктураПараметров); - Обработчик = Новый ОписаниеОповещения("ЗакончитьРедактированиеСРасширениемПослеПомещенияФайлаНаСервер", ЭтотОбъект, ПараметрыВыполнения); - УстановитьОповещениеФормы(ФормаВозврата, Обработчик); - ФормаВозврата.Открыть(); + ОткрытьФорму("Справочник.Файлы.Форма.ФормаВозвратаФайла", СтруктураПараметров, , , , , Обработчик); Иначе // Параметры СоздатьНовуюВерсию и КомментарийКВерсии переданы извне. @@ -742,7 +692,6 @@ ПараметрыВыполнения.Вставить("ПолныйПутьКФайлу", ""); Если ПараметрыВыполнения.СоздатьНовуюВерсию = Неопределено Тогда - ФормаВозврата = РаботаСФайламиСлужебныйКлиентПовтИсп.ФормаВозвратаФайла(); ПараметрыВыполнения.СоздатьНовуюВерсию = Истина; СоздатьНовуюВерсиюДоступность = Истина; @@ -768,12 +717,9 @@ СтруктураПараметров.Вставить("СоздатьНовуюВерсию", ПараметрыВыполнения.СоздатьНовуюВерсию); СтруктураПараметров.Вставить("СоздатьНовуюВерсиюДоступность", СоздатьНовуюВерсиюДоступность); - ФормаВозврата.УстановитьПараметрыИспользования(СтруктураПараметров); - Обработчик = Новый ОписаниеОповещения("ЗакончитьРедактированиеБезРасширенияПослеПомещенияФайлаНаСервер", ЭтотОбъект, ПараметрыВыполнения); - УстановитьОповещениеФормы(ФормаВозврата, Обработчик); - ФормаВозврата.Открыть(); + ОткрытьФорму("Справочник.Файлы.Форма.ФормаВозвратаФайла", СтруктураПараметров, , , , , Обработчик); Иначе // Параметры СоздатьНовуюВерсию и КомментарийКВерсии переданы извне. @@ -2093,8 +2039,6 @@ // Запрос комментария и признака хранения версии. Если ПараметрыВыполнения.СоздатьНовуюВерсию = Неопределено Тогда - ФормаВозврата = РаботаСФайламиСлужебныйКлиентПовтИсп.ФормаВозвратаФайла(); - ПараметрыВыполнения.СоздатьНовуюВерсию = Истина; СоздатьНовуюВерсиюДоступность = Истина; @@ -2119,12 +2063,9 @@ СтруктураПараметров.Вставить("СоздатьНовуюВерсию", ПараметрыВыполнения.СоздатьНовуюВерсию); СтруктураПараметров.Вставить("СоздатьНовуюВерсиюДоступность", СоздатьНовуюВерсиюДоступность); - ФормаВозврата.УстановитьПараметрыИспользования(СтруктураПараметров); - Обработчик = Новый ОписаниеОповещения("СохранитьИзмененияФайлаСРасширениемПослеПомещенияФайлаНаСервер", ЭтотОбъект, ПараметрыВыполнения); - УстановитьОповещениеФормы(ФормаВозврата, Обработчик); - ФормаВозврата.Открыть(); + ОткрытьФорму("Справочник.Файлы.Форма.ФормаВозвратаФайла", СтруктураПараметров, , , , , Обработчик); Иначе // Параметры СоздатьНовуюВерсию и КомментарийКВерсии переданы извне. @@ -2316,8 +2257,6 @@ Если ПараметрыВыполнения.СоздатьНовуюВерсию = Неопределено Тогда // Запрос комментария и признака хранения версии. - ФормаВозврата = РаботаСФайламиСлужебныйКлиентПовтИсп.ФормаВозвратаФайла(); - ПараметрыВыполнения.СоздатьНовуюВерсию = Истина; СоздатьНовуюВерсиюДоступность = Истина; @@ -2342,12 +2281,9 @@ СтруктураПараметров.Вставить("СоздатьНовуюВерсию", ПараметрыВыполнения.СоздатьНовуюВерсию); СтруктураПараметров.Вставить("СоздатьНовуюВерсиюДоступность", СоздатьНовуюВерсиюДоступность); - ФормаВозврата.УстановитьПараметрыИспользования(СтруктураПараметров); - Обработчик = Новый ОписаниеОповещения("СохранитьИзмененияФайлаБезРасширенияПослеПомещенияФайлаНаСервер", ЭтотОбъект, ПараметрыВыполнения); - УстановитьОповещениеФормы(ФормаВозврата, Обработчик); - ФормаВозврата.Открыть(); + ОткрытьФорму("Справочник.Файлы.Форма.ФормаВозвратаФайла", СтруктураПараметров, , , , , Обработчик); Иначе // Параметры СоздатьНовуюВерсию и КомментарийКВерсии переданы извне. @@ -4532,11 +4468,7 @@ ПараметрыВыполнения.Вставить("КоличествоСуммарное", Результат.КоличествоСуммарное); Если ПараметрыВыполнения.КоличествоСуммарное = 0 Тогда - Если ПараметрыВыполнения.РежимЗагрузки Тогда - ВернутьРезультат(ПараметрыВыполнения.ОбработчикРезультата, Неопределено); - Иначе - ВернутьРезультатПослеПоказаПредупреждения(ПараметрыВыполнения.ОбработчикРезультата, НСтр("ru = 'Нет файлов для добавления'"), Неопределено); - КонецЕсли; + ВернутьРезультатПослеПоказаПредупреждения(ПараметрыВыполнения.ОбработчикРезультата, НСтр("ru = 'Нет файлов для добавления'"), Неопределено); Возврат; КонецЕсли; @@ -4583,19 +4515,14 @@ ПараметрыВыполнения.ПапкаУжеНайдена = Ложь; Если РаботаСФайламиСлужебныйВызовСервера.ЕстьПапкаСТакимИменем(ПараметрыВыполнения.ИмяПапки, ПараметрыВыполнения.Владелец, ПараметрыВыполнения.ПерваяПапкаСТакимЖеИменем) Тогда - Если ПараметрыВыполнения.РежимЗагрузки Тогда - ПараметрыВыполнения.ПапкаУжеНайдена = Истина; - ПараметрыВыполнения.ПапкаДляДобавленияТекущая = ПараметрыВыполнения.ПерваяПапкаСТакимЖеИменем; - Иначе - ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Папка ""%1"" уже существует. - | - |Продолжить импорт папки?'"), - ПараметрыВыполнения.ИмяПапки); - Обработчик = Новый ОписаниеОповещения("ИмпортФайловЦиклПослеОтветаНаВопросПродолжить", ЭтотОбъект, ПараметрыВыполнения); - ПоказатьВопрос(Обработчик, ТекстВопроса, РежимДиалогаВопрос.ДаНет); - Возврат; - КонецЕсли; + ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Папка ""%1"" уже существует. + | + |Продолжить импорт папки?'"), + ПараметрыВыполнения.ИмяПапки); + Обработчик = Новый ОписаниеОповещения("ИмпортФайловЦиклПослеОтветаНаВопросПродолжить", ЭтотОбъект, ПараметрыВыполнения); + ПоказатьВопрос(Обработчик, ТекстВопроса, РежимДиалогаВопрос.ДаНет); + Возврат; КонецЕсли; ИмпортФайловЦиклПродолжитьИмпорт(ПараметрыВыполнения); Если ПараметрыВыполнения.АсинхронныйДиалог.Открыт = Истина Тогда @@ -4673,11 +4600,6 @@ ТекстСостояния = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Импорт файлов завершен. Импортировано файлов: %1'"), Строка(ПараметрыВыполнения.МассивСтруктурВсехФайлов.Количество()) ); - Если ПараметрыВыполнения.РежимЗагрузки Тогда - ТекстСостояния = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Загрузка файлов завершена. Загружено файлов: %1'"), Строка(ПараметрыВыполнения.МассивСтруктурВсехФайлов.Количество()) ); - КонецЕсли; - Состояние(ТекстСостояния); Иначе Состояние(); @@ -4685,7 +4607,7 @@ Если ПараметрыВыполнения.УдалятьФайлыПослеДобавления = Истина Тогда ФайловыеФункцииСлужебныйКлиентСервер.УдалитьФайлыПослеДобавления( - ПараметрыВыполнения.МассивСтруктурВсехФайлов, ПараметрыВыполнения.МассивВсехПапок, ПараметрыВыполнения.РежимЗагрузки); + ПараметрыВыполнения.МассивСтруктурВсехФайлов, ПараметрыВыполнения.МассивВсехПапок); КонецЕсли; Если ПараметрыВыполнения.МассивСтруктурВсехФайлов.Количество() = 1 Тогда @@ -4702,9 +4624,6 @@ Если ПараметрыВыполнения.МассивИменФайловСОшибками.Количество() <> 0 Тогда Параметры = Новый Структура; Параметры.Вставить("МассивИменФайловСОшибками", ПараметрыВыполнения.МассивИменФайловСОшибками); - Если ПараметрыВыполнения.РежимЗагрузки Тогда - Параметры.Вставить("Заголовок", НСтр("ru = 'Отчет о загрузке файлов'")); - КонецЕсли; ОткрытьФорму("Справочник.Файлы.Форма.ФормаОтчета", Параметры); КонецЕсли; @@ -5077,10 +4996,7 @@ ПерсональныеНастройки = ФайловыеФункцииСлужебныйКлиентСервер.ПерсональныеНастройкиРаботыСФайлами(); Если ПерсональныеНастройки.ПоказыватьПодсказкиПриРедактированииФайлов = Истина Тогда Если Не ФайловыеФункцииСлужебныйКлиент.РасширениеРаботыСФайламиПодключено() Тогда - // Кэшируем форму на клиенте - Форма = РаботаСФайламиСлужебныйКлиентПовтИсп.ФормаНапоминанияПередПоместитьФайл(); - УстановитьОповещениеФормы(Форма, ОбработчикРезультата); - Форма.Открыть(); + ОткрытьФорму("Справочник.Файлы.Форма.ФормаНапоминанияПередПоместитьФайл", , , , , , ОбработчикРезультата); Возврат; КонецЕсли; КонецЕсли; @@ -5101,7 +5017,6 @@ // * Рекурсивно - Булево - Рекурсивно обходить подкаталоги. // * ПсевдоФайловаяСистема - Соответствие - эмуляция файловой системы - для строки (каталога) возвращает массив // строк (подкаталоги и файлы). -// * РежимЗагрузки - Булево - Режим загрузки (из фонового задания ЗагрузкаФайлов). // // Возвращаемое значение: // Структура - результат: @@ -5166,7 +5081,6 @@ КонецЦикла; Параметры.Вставить("ФайлыБольшие", ФайлыБольшие); - Параметры.Вставить("РежимЗагрузки", ПараметрыПроверки.РежимЗагрузки); Параметры.Вставить("Заголовок", НСтр("ru = 'Предупреждение при загрузке файлов'")); Обработчик = Новый ОписаниеОповещения("ПроверитьПредельныйРазмерФайловПослеОтветаНаВопрос", ЭтотОбъект, ПараметрыВыполнения); @@ -5244,6 +5158,8 @@ ОповеститьОбИзменении(ПараметрыВыполнения.ПараметрКоманды); Оповестить("Запись_Файл", Новый Структура("Событие", "ДанныеФайлаИзменены"), ПараметрыВыполнения.ПараметрКоманды); Оповестить("Запись_Файл", Новый Структура("Событие", "ВерсияСохранена"), ПараметрыВыполнения.ПараметрКоманды); + КоличествоЗанятыхФайлов = СтандартныеПодсистемыКлиент.ПараметрКлиента("КоличествоЗанятыхФайлов"); + СтандартныеПодсистемыКлиент.УстановитьПараметрКлиента("КоличествоЗанятыхФайлов", КоличествоЗанятыхФайлов - 1); КонецЕсли; ВернутьРезультат(ПараметрыВыполнения.ОбработчикРезультата, Неопределено); @@ -5280,6 +5196,8 @@ ОповеститьОбИзменении(ПараметрыВыполнения.ОбъектСсылка); Оповестить("Запись_Файл", Новый Структура("Событие", "ДанныеФайлаИзменены"), ПараметрыВыполнения.ОбъектСсылка); Оповестить("Запись_Файл", Новый Структура("Событие", "ФайлРедактировался"), ПараметрыВыполнения.ОбъектСсылка); + КоличествоЗанятыхФайлов = СтандартныеПодсистемыКлиент.ПараметрКлиента("КоличествоЗанятыхФайлов"); + СтандартныеПодсистемыКлиент.УстановитьПараметрКлиента("КоличествоЗанятыхФайлов", КоличествоЗанятыхФайлов + 1); КонецЕсли; ВернутьРезультат(ПараметрыВыполнения.ОбработчикРезультата, Неопределено); @@ -5389,6 +5307,8 @@ Если Результат = Истина Тогда ОповеститьОбИзменении(ПараметрыВыполнения.ПараметрКоманды); Оповестить("Запись_Файл", Новый Структура("Событие", "ДанныеФайлаИзменены"), ПараметрыВыполнения.ПараметрКоманды); + КоличествоЗанятыхФайлов = СтандартныеПодсистемыКлиент.ПараметрКлиента("КоличествоЗанятыхФайлов"); + СтандартныеПодсистемыКлиент.УстановитьПараметрКлиента("КоличествоЗанятыхФайлов", КоличествоЗанятыхФайлов - 1); КонецЕсли; ВернутьРезультат(ПараметрыВыполнения.ОбработчикРезультата, Неопределено); @@ -5972,13 +5892,13 @@ ПараметрыВыполнения.Вставить("НеОткрыватьКарточкуПослеСозданияИзФайла", НеОткрыватьКарточкуПослеСозданияИзФайла); ПараметрыВыполнения.Вставить("ЭтоФайл", Истина); - ФормаВозврата = РаботаСФайламиСлужебныйКлиентПовтИсп.ФормаВыбораВариантаСозданияНовогоФайла(); - ФормаВозврата.УстановитьПараметрыИспользования(РежимСоздания); - Обработчик = Новый ОписаниеОповещения("ДобавитьПослеВыбораРежимаСоздания", ЭтотОбъект, ПараметрыВыполнения); - УстановитьОповещениеФормы(ФормаВозврата, Обработчик); - ФормаВозврата.Открыть(); + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("РежимСоздания", РежимСоздания); + ПараметрыФормы.Вставить("ДоступнаКомандаСканировать", РаботаСФайламиСлужебныйКлиентПовтИсп.ДоступнаКомандаСканировать()); + + ОткрытьФорму("Справочник.Файлы.Форма.ФормаНового", ПараметрыФормы, , , , , Обработчик); КонецПроцедуры @@ -6416,7 +6336,6 @@ // * ИдентификаторФормы - УникальныйИдентификатор - идентификатор формы. // * ПсевдоФайловаяСистема - Соответствие - эмуляция файловой системы - для строки (каталога) возвращает массив // строк (подкаталоги и файлы). -// * РежимЗагрузки - Булево - Режим загрузки (из фонового задания ЗагрузкаФайлов). // * Кодировка - Строка - кодировка для текстовых файлов. // * ДобавленныеФайлы - Массив - Добавленные файлы, выходной параметр. // @@ -6431,7 +6350,6 @@ ПараметрыВыполнения.Вставить("Рекурсивно"); ПараметрыВыполнения.Вставить("ИдентификаторФормы"); ПараметрыВыполнения.Вставить("ПсевдоФайловаяСистема", Новый Соответствие); - ПараметрыВыполнения.Вставить("РежимЗагрузки", Ложь); ПараметрыВыполнения.Вставить("Кодировка"); ПараметрыВыполнения.Вставить("ДобавленныеФайлы", Новый Массив); Возврат ПараметрыВыполнения; @@ -6460,7 +6378,6 @@ // строк (подкаталоги и файлы). // * ДобавленныеФайлы - Массив - Добавленные файлы, выходной параметр. // * МассивВсехПапок - Массив - Массив всех папок. -// * РежимЗагрузки - Булево - Режим загрузки (из фонового задания ЗагрузкаФайлов). // * Кодировка - Строка - кодировка для текстовых файлов. // Процедура ИмпортФайловРекурсивно(Владелец, ВыбранныеФайлы, ПараметрыВыполнения) @@ -6579,14 +6496,9 @@ Если РаботаСФайламиСлужебныйВызовСервера.ЕстьПапкаСТакимИменем(ИмяФайла, Владелец, ПерваяПапкаСТакимЖеИменем) Тогда - Если ПараметрыВыполнения.РежимЗагрузки Тогда - ПапкаУжеНайдена = Истина; - ПапкаФайловСсылка = ПерваяПапкаСТакимЖеИменем; - Иначе - Если ЗадаватьВопросПапкаУжеСуществует Тогда - ПараметрыВыполнения.МассивПапокДляВопросаПапкаУжеСуществует.Добавить(ВыбранныйФайл); - Продолжить; - КонецЕсли; + Если ЗадаватьВопросПапкаУжеСуществует Тогда + ПараметрыВыполнения.МассивПапокДляВопросаПапкаУжеСуществует.Добавить(ВыбранныйФайл); + Продолжить; КонецЕсли; КонецЕсли; @@ -6620,9 +6532,6 @@ ФайловыеФункцииСлужебныйКлиентСервер.ПолучитьСтрокуСРазмеромФайла(РазмерВМб)); ТекстСостояния = НСтр("ru = 'Импорт файлов с диска...'"); - Если ПараметрыВыполнения.РежимЗагрузки Тогда - ТекстСостояния = НСтр("ru = 'Загрузка файлов с диска...'"); - КонецЕсли; Состояние(ТекстСостояния, ПараметрыВыполнения.Индикатор, @@ -6633,16 +6542,6 @@ ИмяБезРасширения = ВыбранныйФайл.ИмяБезРасширения; Расширение = ВыбранныйФайл.Расширение; - Если ПараметрыВыполнения.РежимЗагрузки Тогда - Если РаботаСФайламиСлужебныйВызовСервера.ЕстьФайлСТакимИменем(ИмяБезРасширения, Владелец) Тогда - Запись = Новый Структура; - Запись.Вставить("ИмяФайла", ВыбранныйФайл.ПолноеИмя); - Запись.Вставить("Ошибка", НСтр("ru = 'Файл с таким именем уже есть в хранилище файлов.'")); - ПараметрыВыполнения.МассивИменФайловСОшибками.Добавить(Запись); - Продолжить; - КонецЕсли; - КонецЕсли; - АдресВременногоХранилищаФайла = ""; ПомещаемыеФайлы = Новый Массив; @@ -6956,8 +6855,8 @@ Возврат Неопределено; КонецЕсли; - ПоказыватьЗанятыеФайлыПриЗавершенииРаботы = - ФайловыеФункцииСлужебныйКлиентСервер.ПерсональныеНастройкиРаботыСФайлами().ПоказыватьЗанятыеФайлыПриЗавершенииРаботы; + ПерсональныеНастройкиРаботыСФайлами = СтандартныеПодсистемыКлиент.ПараметрКлиента("ПерсональныеНастройкиРаботыСФайлами"); + ПоказыватьЗанятыеФайлыПриЗавершенииРаботы = ПерсональныеНастройкиРаботыСФайлами.ПоказыватьЗанятыеФайлыПриЗавершенииРаботы; Если Не ПоказыватьЗанятыеФайлыПриЗавершенииРаботы Тогда Возврат Неопределено; @@ -6965,7 +6864,7 @@ ТекущийПользователь = ПользователиКлиентСервер.ТекущийПользователь(); - КоличествоЗанятыхФайлов = СтандартныеПодсистемыКлиент.ПараметрыРаботыКлиентаПриЗавершении().РаботаСФайлами.КоличествоЗанятыхФайлов; + КоличествоЗанятыхФайлов = СтандартныеПодсистемыКлиент.ПараметрКлиента("КоличествоЗанятыхФайлов"); Если КоличествоЗанятыхФайлов = 0 Тогда Возврат Неопределено; КонецЕсли; @@ -7132,12 +7031,50 @@ // Доопределяет список предупреждений пользователю перед завершением работы системы. // // Параметры: +// Отказ - Булево - Признак отказа от выхода из программы. Если в теле процедуры-обработчика установить +// данному параметру значение Истина, то работа с программой не будет завершена. // Предупреждения - Массив - в массив можно добавить элементы типа Структура, -// свойства которой см. в СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершениеРаботы. +// свойства которой см. в СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершенииРаботы. // -Процедура ПриПолученииСпискаПредупрежденийЗавершенияРаботы(Предупреждения) Экспорт +Процедура ПередЗавершениемРаботыСистемы(Отказ, Предупреждения) Экспорт - ПриЗавершенииРаботыСистемы(Предупреждения); + Ответ = ПроверитьЗанятыеФайлыПриЗавершенииРаботы(); + Если Ответ = Неопределено Тогда + Возврат; + КонецЕсли; + + Если ТипЗнч(Ответ) <> Тип("Структура") Тогда + Возврат; + КонецЕсли; + + ПредупреждениеПользователю = СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершенииРаботы(); + ПредупреждениеПользователю.ТекстГиперссылки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Открыть список редактируемых файлов (%1)'"), + Ответ.КоличествоЗанятыхФайлов); + ПредупреждениеПользователю.ТекстПредупреждения = НСтр("ru = 'Имеются занятые для редактирования файлы'"); + + ДействиеПриНажатииГиперссылки = ПредупреждениеПользователю.ДействиеПриНажатииГиперссылки; + + ПрикладнаяФормаПредупреждения = Неопределено; + Ответ.Свойство("ПрикладнаяФормаПредупреждения", ПрикладнаяФормаПредупреждения); + ПараметрыПрикладнойФормыПредупреждения = Неопределено; + Ответ.Свойство("ПараметрыПрикладнойФормыПредупреждения", ПараметрыПрикладнойФормыПредупреждения); + + Форма = Неопределено; + Ответ.Свойство("Форма", Форма); + ПараметрыФормы = Неопределено; + Ответ.Свойство("ПараметрыФормы", ПараметрыФормы); + + Если ПрикладнаяФормаПредупреждения <> Неопределено Тогда + ДействиеПриНажатииГиперссылки.ПрикладнаяФормаПредупреждения = ПрикладнаяФормаПредупреждения; + ДействиеПриНажатииГиперссылки.ПараметрыПрикладнойФормыПредупреждения = ПараметрыПрикладнойФормыПредупреждения; + КонецЕсли; + Если Форма <> Неопределено Тогда + ДействиеПриНажатииГиперссылки.Форма = Форма; + ДействиеПриНажатииГиперссылки.ПараметрыФормы = ПараметрыФормы; + КонецЕсли; + + Предупреждения.Добавить(ПредупреждениеПользователю); КонецПроцедуры @@ -7328,13 +7265,11 @@ Функция РазыменоватьLnkФайл(ВыбранныйФайл) #Если Не ВебКлиент Тогда - Если Не СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЭтоБазоваяВерсияКонфигурации Тогда - ShellApp = Новый COMОбъект("shell.application"); - FolderObj = ShellApp.NameSpace(ВыбранныйФайл.Путь);// Полный (только) путь на lnk-файл. - FolderObjItem = FolderObj.items().item(ВыбранныйФайл.Имя); // только имя lnk-файла - Link = FolderObjItem.GetLink(); - Возврат Новый Файл(Link.path); - КонецЕсли; + ShellApp = Новый COMОбъект("shell.application"); + FolderObj = ShellApp.NameSpace(ВыбранныйФайл.Путь);// Полный (только) путь на lnk-файл. + FolderObjItem = FolderObj.items().item(ВыбранныйФайл.Имя); // только имя lnk-файла + Link = FolderObjItem.GetLink(); + Возврат Новый Файл(Link.path); #КонецЕсли Возврат ВыбранныйФайл; @@ -7444,7 +7379,7 @@ #Если ВебКлиент Тогда Возврат РабочийКаталогДанныхПользователя(); #Иначе - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда Возврат РабочийКаталогДанныхПользователя(); Иначе Оболочка = Новый COMОбъект("WScript.Shell"); @@ -7590,24 +7525,4 @@ КонецФункции -// Устанавливает обработчик закрытия формы, полученной при помощи ПолучитьФорму(). -Процедура УстановитьОповещениеФормы(Форма, Обработчик) Экспорт - - Если Обработчик <> Неопределено Тогда - // Установка обработчика закрытия формы. - Форма.ОписаниеОповещенияОЗакрытии = Обработчик; - // Форма, возвращающая значение, должна: - Если Форма.ВладелецФормы = Неопределено Тогда - // Без установленного владельца - блокировать весь интерфейс. - Форма.РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс; - Иначе - // С установленным владельцем - блокировать окно владельца или весь интерфейс. - Если Форма.РежимОткрытияОкна = РежимОткрытияОкнаФормы.Независимый Тогда - Форма.РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; - КонецЕсли; - КонецЕсли; - КонецЕсли; - -КонецПроцедуры - #КонецОбласти diff --git a/SSL/src/CommonModules/РаботаСФайламиСлужебныйКлиентПовтИсп/Module.bsl b/SSL/src/CommonModules/РаботаСФайламиСлужебныйКлиентПовтИсп/Module.bsl index 3098323ed..1a50b15c8 100644 --- a/SSL/src/CommonModules/РаботаСФайламиСлужебныйКлиентПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/РаботаСФайламиСлужебныйКлиентПовтИсп/Module.bsl @@ -5,32 +5,11 @@ #Область СлужебныеПроцедурыИФункции -// Возвращает форму, которая используется при создании нового файла -// для выбора варианта создания. -Функция ФормаВыбораВариантаСозданияНовогоФайла() Экспорт +// Проверяет установлена ли компонента сканирования и есть ли хоть один сканер. +Функция ДоступнаКомандаСканировать() Экспорт - ДоступнаКомандаСканировать = ФайловыеФункцииСлужебныйКлиент.ДоступнаКомандаСканировать(); - ПараметрыФормы = Новый Структура("ДоступнаКомандаСканировать", ДоступнаКомандаСканировать); - Возврат ПолучитьФорму("Справочник.Файлы.Форма.ФормаНового", ПараметрыФормы); + Возврат ФайловыеФункцииСлужебныйКлиент.ДоступнаКомандаСканировать(); КонецФункции -// Возвращает форму, которая используется для информирования -// пользователей об особенностях возврата файлов в веб-клиенте. -Функция ФормаНапоминанияПередПоместитьФайл() Экспорт - Возврат ПолучитьФорму("Справочник.Файлы.Форма.ФормаНапоминанияПередПоместитьФайл"); -КонецФункции - -// Возвращает форму, которая используется при возврате отредактированного -// файла на сервер. -Функция ФормаВозвратаФайла() Экспорт - Возврат ПолучитьФорму("Справочник.Файлы.Форма.ФормаВозвратаФайла"); -КонецФункции - -// Возвращает форму, которая используется для ввода -// режима сохранения при экспорте папки, если на диске уже есть файл с таким именем. -Функция ФормаЭкспортаПапкиФайлСуществует() Экспорт - Возврат ПолучитьФорму("Справочник.Файлы.Форма.ФайлСуществует"); -КонецФункции - #КонецОбласти diff --git a/SSL/src/CommonModules/РассылкаОтчетов/Module.bsl b/SSL/src/CommonModules/РассылкаОтчетов/Module.bsl index 130fcc7b3..9209ee665 100644 --- a/SSL/src/CommonModules/РассылкаОтчетов/Module.bsl +++ b/SSL/src/CommonModules/РассылкаОтчетов/Module.bsl @@ -1,6 +1,6 @@ //////////////////////////////////////////////////////////////////////////////// // Подсистема "Рассылка отчетов" (сервер). -// +// //////////////////////////////////////////////////////////////////////////////// #Область ПрограммныйИнтерфейс @@ -23,7 +23,6 @@ // * Ложь - Рассылка не выполнена. // Функция ПодготовитьПараметрыИВыполнитьРассылку(Рассылка, ПараметрыЖурнала = Неопределено, ПредварительныеНастройки = Неопределено) Экспорт - // Параметры записи в журнал регистрации. Если ПараметрыЖурнала = Неопределено Тогда ПараметрыЖурнала = Новый Структура; @@ -64,8 +63,11 @@ КонецЕсли; - // Регистрация запуска (запущена, но не выполнена). - РегистрыСведений.СостоянияРассылокОтчетов.ЗафиксироватьЗапускРассылки(Рассылка); + ЗапускЗафиксирован = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПредварительныеНастройки, "ЗапускЗафиксирован"); + Если ЗапускЗафиксирован <> Истина Тогда + // Регистрация запуска (запущена, но не выполнена). + РегистрыСведений.СостоянияРассылокОтчетов.ЗафиксироватьЗапускРассылки(Рассылка); + КонецЕсли; // Таблица отчетов ТаблицаОтчетов = Новый ТаблицаЗначений; @@ -225,37 +227,13 @@ // Вложения ПараметрыДоставки.ПараметрыПисьма.Вставить("ТипТекста", ?(Рассылка.ПисьмоВФорматеHTML, "HTML", "ПростойТекст")); - ПараметрыДоставки.ПараметрыПисьма.Вставить("Вложения", Новый Соответствие); + ПараметрыДоставки.ПараметрыПисьма.Вставить("Картинки", Новый Структура); Если Рассылка.ПисьмоВФорматеHTML Тогда - СтруктураКартинок = Рассылка.КартинкиПисьмаВФорматеHTML.Получить(); - Если ТипЗнч(СтруктураКартинок) = Тип("Структура") Тогда - // Конвертация HTML текста в ДокументHTML. - Построитель = Новый ПостроительDOM; - ЧтениеHTML = Новый ЧтениеHTML; - ЧтениеHTML.УстановитьСтроку(ПараметрыДоставки.ШаблонТекста); - ДокументHTML = Построитель.Прочитать(ЧтениеHTML); - - // Замена имен картинок в документе HTML на идентификаторы. - Для Каждого Картинка Из ДокументHTML.Картинки Цикл - АтрибутИсточникКартинки = Картинка.Атрибуты.ПолучитьИменованныйЭлемент("src"); - АтрибутИсточникКартинки.ТекстовоеСодержимое = "cid:" + АтрибутИсточникКартинки.ТекстовоеСодержимое; - КонецЦикла; - - // Конвертация ДокументHTML обратно в текст HTML. - ЗаписьDOM = Новый ЗаписьDOM; - ЗаписьHTML = Новый ЗаписьHTML; - ЗаписьHTML.УстановитьСтроку(); - ЗаписьDOM.Записать(ДокументHTML, ЗаписьHTML); - ПараметрыДоставки.ШаблонТекста = ЗаписьHTML.Закрыть(); - - // Запись картинок с именами в качестве идентификаторов. - Для Каждого КлючИЗначение Из СтруктураКартинок Цикл - ПараметрыДоставки.ПараметрыПисьма.Вложения.Вставить(КлючИЗначение.Ключ, КлючИЗначение.Значение); - КонецЦикла; - КонецЕсли; + ПараметрыДоставки.ПараметрыПисьма.Картинки = Рассылка.КартинкиПисьмаВФорматеHTML.Получить(); КонецЕсли; - КонецЕсли; + КонецЕсли; + Возврат ВыполнитьРассылку(ТаблицаОтчетов, ПараметрыДоставки, Рассылка, ПараметрыЖурнала); КонецФункции @@ -307,16 +285,17 @@ // * ПассивноеСоединение - Булево - Использовать пассивное соединение. // // Обязательные реквизиты когда { ИспользоватьЭлектроннуюПочту = Истина }: -// * УчетнаяЗапись - СправочникСсылка.УчетныеЗаписиЭлектроннойПочты - Учетная запись для отправки почтового -// сообщения. +// * УчетнаяЗапись - СправочникСсылка.УчетныеЗаписиЭлектроннойПочты - +// Учетная запись для отправки почтового сообщения. // * Получатели - Соответствие - Набор получателей и их e-mail адресов. // ** Ключ - СправочникСсылка - Получатель. // ** Значение - Строка - Набор e-mail адресов получателя в строке с разделителями. // // Необязательные реквизиты: -// * Архивировать - Булево, Ложь - Архивировать все файлы сформированных отчетов в один архив. -// * ИмяАрхива - Строка - Архивация может потребоваться для отчетов, которые при сохранении. -// * ПарольАрхива - Строка - в формат создают каталоги (например html). +// * Архивировать - Булево - Архивировать все файлы сформированных отчетов в один архив. +// Архивация может потребоваться, например, при рассылке графиков в формате html. +// * ИмяАрхива - Строка - Имя архива. +// * ПарольАрхива - Строка - Пароль архива. // // Необязательные реквизиты когда { ИспользоватьЭлектроннуюПочту = Истина }: // * Персонализирована - Булево - Рассылка персонализирована получателями. @@ -340,12 +319,12 @@ // Подсистемой "РассылкаОтчетов" могут использоваться: // ** ТипТекста - ТипТекстаПочтовогоСообщения, Строка, ПеречислениеСсылка.ТипыТекстовЭлектронныхПисем - // Тип текста письма. -// ** Вложения - Соответствие - Вложения письма. +// ** Вложения - Соответствие - Картинки письма. // *** Ключ - Строка - Наименование. -// *** Значение - Данные вложения. -// - Строка - Адрес во временном хранилище, по которому размещено вложение. -// - ДвоичныеДанные - Двоичные данные вложения. -// - ИнтернетПочтовоеСообщение - В виде вложения может участвовать письмо. +// *** Значение - Данные картинки. +// - Строка - Адрес во временном хранилище, по которому размещена картинка. +// - ДвоичныеДанные - Двоичные данные картинки. +// - Картинка - Данные картинки. // ** АдресОтвета - Строка - E-mail адрес ответа. // // Рассылка - Произвольный - Объект-инициатор. @@ -372,7 +351,7 @@ ДеревоОтчетов = СоздатьДеревоОтчетов(); // Заполнение параметрами по умолчанию и проверка на заполненность ключевых параметров доставки. - Если Не ЗаполнитьПараметрыРассылкиПараметрамиПоУмолчанию(ТаблицаОтчетов, ПараметрыДоставки, Рассылка, ПараметрыЖурнала) Тогда + Если Не ПроверитьИДозаполнитьПараметрыВыполнения(ТаблицаОтчетов, ПараметрыДоставки, Рассылка, ПараметрыЖурнала) Тогда Возврат Ложь; КонецЕсли; @@ -740,14 +719,9 @@ КонецЕсли; Результат = Новый Структура; - ТекстОшибок = РассылкаОтчетовКлиентСервер.СтрокаСообщенийПользователю(МассивСообщений); - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение(Результат, ТекстСообщения, ТекстОшибок); - - Если Всего > 0 Тогда - ТипДляОбновления = ?(Всего = 1, ТаблицаРассылок[0].Рассылка, Тип("СправочникСсылка.РассылкиОтчетов")); - СтандартныеПодсистемыКлиентСервер.ОповеститьДинамическиеСписки(Результат, ТипДляОбновления); - КонецЕсли; - + Результат.Вставить("Рассылки", ТаблицаРассылок.ВыгрузитьКолонку("Рассылка")); + Результат.Вставить("Текст", ТекстСообщения); + Результат.Вставить("Подробно", РассылкаОтчетовКлиентСервер.СтрокаСообщенийПользователю(МассивСообщений)); ПоместитьВоВременноеХранилище(Результат, АдресРезультата); КонецПроцедуры @@ -763,6 +737,9 @@ // СЕРВЕРНЫЕ ОБРАБОТЧИКИ. СерверныйМодуль = "РассылкаОтчетов"; + Событие = "СтандартныеПодсистемы.ОбновлениеВерсииИБ\ПриДобавленииОбработчиковОбновления"; + СерверныеОбработчики[Событие].Добавить(СерверныйМодуль); + Событие = "СтандартныеПодсистемы.БазоваяФункциональность\ПриЗаполненииРазрешенийНаДоступКВнешнимРесурсам"; СерверныеОбработчики[Событие].Добавить(СерверныйМодуль); @@ -776,6 +753,28 @@ //////////////////////////////////////////////////////////////////////////////// // Обработчики служебных событий. +// Добавляет процедуры-обработчики обновления, необходимые данной подсистеме. +// +// Параметры: +// Обработчики - ТаблицаЗначений - Обработчики обновления. +// См. описание метода ОбновлениеИнформационнойБазы.НоваяТаблицаОбработчиковОбновления(). +// +Процедура ПриДобавленииОбработчиковОбновления(Обработчики) Экспорт + + Обработчик = Обработчики.Добавить(); + Обработчик.РежимВыполнения = "Отложенно"; + Обработчик.ОбщиеДанные = Ложь; + Обработчик.Версия = "2.3.3.30"; + Обработчик.Комментарий = НСтр("ru = 'Отключает неиспользуемые регламентные задания рассылок отчетов.'"); + Обработчик.Идентификатор = Новый УникальныйИдентификатор("b1467977-94b3-4282-9ece-09f127e54775"); + Обработчик.Процедура = "РассылкаОтчетов.АктуализироватьСписокРегламентныхЗаданий"; + Обработчик.ОчередьОтложеннойОбработки = 1; + Обработчик.ПроцедураЗаполненияДанныхОбновления = "РассылкаОтчетов.ЗарегистрироватьДанныеДляАктуализацииСпискаРегламентныхЗаданий"; + Обработчик.ЧитаемыеОбъекты = "Справочник.РассылкиОтчетов"; + Обработчик.ИзменяемыеОбъекты = "РегламентноеЗадание.РассылкаОтчетов"; + +КонецПроцедуры + // Заполняет перечень запросов внешних разрешений, которые обязательно должны быть предоставлены // при создании информационной базы или обновлении программы. // @@ -928,9 +927,6 @@ КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// Обработчики условных вызовов из других подсистемы. - // Определить объекты метаданных, в модулях менеджеров которых ограничивается возможность // редактирования реквизитов при групповом изменении. // @@ -1005,6 +1001,70 @@ #Область СлужебныеПроцедурыИФункции +//////////////////////////////////////////////////////////////////////////////// +// Обновление информационной базы. + +// [2.3.3.30] Регистрирует данные для выполнения обработчика "АктуализироватьСписокРегламентныхЗаданий". +Процедура ЗарегистрироватьДанныеДляАктуализацииСпискаРегламентныхЗаданий(Параметры) Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ + | РассылкиОтчетов.Ссылка + |ИЗ + | Справочник.РассылкиОтчетов КАК РассылкиОтчетов + |ГДЕ + | НЕ(РассылкиОтчетов.Подготовлена + | И РассылкиОтчетов.ВыполнятьПоРасписанию) + |И РассылкиОтчетов.ЭтоГруппа = ЛОЖЬ"; + МассивСсылок = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка"); + ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры, МассивСсылок); + +КонецПроцедуры + +// [2.3.3.30] Отключает не используемые регламентные задания рассылок отчетов. +Процедура АктуализироватьСписокРегламентныхЗаданий(Параметры) Экспорт + + РассылкиОтчетов = ОбновлениеИнформационнойБазы.ВыбратьСсылкиДляОбработки(Параметры.Очередь, "Справочник.РассылкиОтчетов"); + ПроблемныхОбъектов = 0; + ОбъектовОбработано = 0; + + Пока РассылкиОтчетов.Следующий() Цикл + Попытка + Задание = РегламентныеЗадания.НайтиПоУникальномуИдентификатору(РассылкиОтчетов.Ссылка.РегламентноеЗадание); + Если Задание <> Неопределено И Задание.Использование Тогда + Задание.Использование = Ложь; + Задание.Записать(); + КонецЕсли; + ОбъектовОбработано = ОбъектовОбработано + 1; + ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(РассылкиОтчетов.Ссылка); + Исключение + // Если не удалось обработать какую-либо рассылку отчетов, повторяем попытку снова. + ПроблемныхОбъектов = ПроблемныхОбъектов + 1; + + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось обработать регламентное задание рассылки отчетов: %1 по причине: %2'"), + РассылкиОтчетов.Ссылка, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение, + Метаданные.Справочники.РассылкиОтчетов, РассылкиОтчетов.Ссылка, ТекстСообщения); + КонецПопытки; + КонецЦикла; + + Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(Параметры.Очередь, "Справочник.РассылкиОтчетов"); + + Если ОбъектовОбработано = 0 И ПроблемныхОбъектов <> 0 Тогда + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Процедуре АктуализироватьСписокРегламентныхЗаданий не удалось обработать некоторые регламентные задания рассылки отчетов (пропущены): %1'"), + ПроблемныхОбъектов); + ВызватьИсключение ТекстСообщения; + Иначе + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Информация, + Метаданные.Справочники.РассылкиОтчетов,, + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Процедура АктуализироватьСписокРегламентныхЗаданий обработала очередную порцию рассылки отчетов: %1'"), + ОбъектовОбработано)); + КонецЕсли; + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Выполнение регламентных заданий. @@ -1014,13 +1074,28 @@ // Рассылка - СправочникСсылка.РассылкиОтчетов - Выполняемая рассылка отчетов. // Процедура ВыполнитьРассылкуПоРасписанию(Рассылка) Экспорт + // Регистрация запуска (запущена, но не выполнена). + РегистрыСведений.СостоянияРассылокОтчетов.ЗафиксироватьЗапускРассылки(Рассылка); + // Проверки. ОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(Метаданные.РегламентныеЗадания.РассылкаОтчетов); - - // Проверки - Если Не Рассылка.ВыполнятьПоРасписанию Тогда + Если Не ПравоДоступа("Чтение", Метаданные.Справочники.РассылкиОтчетов) Тогда + ВызватьИсключение + НСтр("ru = 'У текущего пользователя недостаточно прав для чтения рассылок отчетов. + |Рекомендуется отключить все рассылки этого пользователя или сменить автора его рассылок (на вкладке ""Расписание"").'"); + КонецЕсли; + Запрос = Новый Запрос("ВЫБРАТЬ РАЗРЕШЕННЫЕ ВыполнятьПоРасписанию ИЗ Справочник.РассылкиОтчетов ГДЕ Ссылка = &Ссылка"); + Запрос.УстановитьПараметр("Ссылка", Рассылка); + Выборка = Запрос.Выполнить().Выбрать(); + Если Не Выборка.Следующий() Тогда + ВызватьИсключение + НСтр("ru = 'У текущего пользователя недостаточно прав для чтения этой рассылки. + |Рекомендуется сменить автора рассылки (на вкладке ""Расписание"").'"); + КонецЕсли; + Если Не Выборка.ВыполнятьПоРасписанию Тогда ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'У рассылки отчетов ""%1"" отключен флажок ""Выполнять по расписанию""'"), + НСтр("ru = 'У рассылки отчетов ""%1"" отключен флажок ""Выполнять по расписанию"" + |Рекомендуется отключить соответствующее регламентное задание или перезаписать эту рассылку.'"), Строка(Рассылка)); КонецЕсли; @@ -1031,7 +1106,7 @@ ПараметрыЖурнала.Данные = Рассылка; // Рассылка - ПодготовитьПараметрыИВыполнитьРассылку(Рассылка, ПараметрыЖурнала); + ПодготовитьПараметрыИВыполнитьРассылку(Рассылка, ПараметрыЖурнала, Новый Структура("ЗапускЗафиксирован", Истина)); КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// @@ -1226,11 +1301,12 @@ Если СписокПолучателей.Количество() = 0 Тогда ТекстОшибок = НСтр("ru = 'Не удалось сформировать список получателей %1 рассылки %2 по одной из возможных причин: - | - У получателей не заполнен почтовый адрес %3 - | - Не заполнен список получателей - | - Выбраны пустые группы получателей - | - Получатели помечены на удаление - | - Недостаточно прав доступа к справочнику'"); + | - У получателей не заполнен почтовый адрес %3; + | - Не заполнен список получателей; + | - Выбраны пустые группы получателей; + | - Получатели помечены на удаление; + | - Исключены все получатели (исключение имеет наивысший приоритет; участники исключенных групп также исключаются из списка); + | - Недостаточно прав доступа к справочнику.'"); ЗаписьЖурнала(ПараметрыЖурнала, УровеньЖурналаРегистрации.Ошибка, ТекстОшибок, "", @@ -1296,7 +1372,7 @@ ПараметрыОтчета.Вставить("КомпоновщикНастроекКД", Неопределено); ПараметрыПодключения = Новый Структура; - ПараметрыПодключения.Вставить("СсылкаВарианта", ПараметрыОтчета.Отчет); + ПараметрыПодключения.Вставить("СсылкаВарианта", ПараметрыОтчета.Отчет); ПараметрыПодключения.Вставить("ИдентификаторФормы", УникальныйИдентификаторФормы); ПараметрыПодключения.Вставить("ПользовательскиеНастройкиКД", ПараметрыОтчета.Настройки); Если ТипЗнч(ПараметрыПодключения.ПользовательскиеНастройкиКД) <> Тип("ПользовательскиеНастройкиКомпоновкиДанных") Тогда @@ -1349,28 +1425,12 @@ // Установка персональных отборов. Если ПерсонализацияВозможна Тогда ПользовательскиеНастройкиКД = ПараметрыОтчета.КомпоновщикНастроекКД.ПользовательскиеНастройки; - - Для Каждого Настройка Из ПользовательскиеНастройкиКД.Элементы Цикл - Если ТипЗнч(Настройка) = Тип("ЭлементОтбораКомпоновкиДанных") - И Настройка.Использование - И ТипЗнч(Настройка.ПравоеЗначение) = Тип("Строка") Тогда - - ЗначениеНастройки = Настройка.ПравоеЗначение; - - ИначеЕсли ТипЗнч(Настройка) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") - И Настройка.Использование - И ТипЗнч(Настройка.Значение) = Тип("Строка")Тогда - - ЗначениеНастройки = Настройка.Значение; - - Иначе - - Продолжить; - - КонецЕсли; - - Если ЗначениеНастройки = "[Получатель]" Тогда - ПараметрыОтчета.ПерсональныеОтборы.Вставить(ПользовательскиеНастройкиКД.ПолучитьИдентификаторПоОбъекту(Настройка)); + Фильтр = Новый Структура("Использование, Значение", Истина, "[Получатель]"); + Найденные = ОтчетыКлиентСервер.НайтиНастройки(ПользовательскиеНастройкиКД.Элементы, Фильтр); + Для Каждого ПользовательскаяНастройкаКД Из Найденные Цикл + ИдентификаторКД = ПользовательскиеНастройкиКД.ПолучитьИдентификаторПоОбъекту(ПользовательскаяНастройкаКД); + Если ИдентификаторКД <> Неопределено Тогда + ПараметрыОтчета.ПерсональныеОтборы.Вставить(ИдентификаторКД); КонецЕсли; КонецЦикла; КонецЕсли; @@ -1390,7 +1450,11 @@ // Подготовка соответствий персональных отборов. // Установка статичных значений реквизитов. Для Каждого ОписаниеНастройки Из ПараметрыОтчета.Настройки Цикл - ИмяРеквизита = ОписаниеНастройки.Реквизит; + Если Тип(ОписаниеНастройки) = Тип("СтрокаТаблицыЗначений") Тогда + ИмяРеквизита = ОписаниеНастройки.Реквизит; + Иначе + ИмяРеквизита = ОписаниеНастройки.Ключ; + КонецЕсли; ЗначениеНастройки = ОписаниеНастройки.Значение; // Доступность реквизита @@ -1442,8 +1506,7 @@ КонецЕсли; // Настройки подключения отчета. - ПараметрыФормирования = Новый Структура("Объект, ПолноеИмя, СсылкаОтчета, СсылкаВарианта, КлючВарианта, Метаданные, НастройкиКД, АдресСхемы"); - ЗаполнитьЗначенияСвойств(ПараметрыФормирования, ПараметрыОтчета); + ПараметрыФормирования = Новый Структура; // Заполнение персонализированных данных получателей. Если Получатель <> Неопределено И ПараметрыОтчета.Свойство("ПерсональныеОтборы") Тогда @@ -1465,6 +1528,7 @@ КонецЕсли; КонецЕсли; + ПараметрыФормирования.Вставить("Подключение", ПараметрыОтчета); Формирование = ВариантыОтчетов.СформироватьОтчет(ПараметрыФормирования, Истина, Не ПараметрыОтчета.ОтправлятьЕслиПустой); Если Не Формирование.Успех Тогда @@ -1501,6 +1565,7 @@ Функция ВыполнитьДоставку(ПараметрыЖурнала, ПараметрыДоставки, Вложения) Экспорт Результат = Ложь; ШаблонСообщенияОбОшибке = НСтр("ru = 'Ошибка доставки отчетов'"); + РежимТестирования = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыДоставки, "РежимТестирования", Ложь); //////////////////////////////////////////////////////////////////////////// // В сетевой каталог. @@ -1508,7 +1573,8 @@ Если ПараметрыДоставки.ИспользоватьСетевойКаталог Тогда СетевойКаталогСервера = ПараметрыДоставки.СетевойКаталогWindows; - ТипПлатформыСервера = ОбщегоНазначенияПовтИсп.ТипПлатформыСервера(); + СистемнаяИнфо = Новый СистемнаяИнформация; + ТипПлатформыСервера = СистемнаяИнфо.ТипПлатформы; Если ТипПлатформыСервера = ТипПлатформы.Linux_x86 Или ТипПлатформыСервера = ТипПлатформы.Linux_x86_64 Тогда @@ -1527,6 +1593,12 @@ КонецЦикла; Результат = Истина; ПараметрыДоставки.ВыполненаВСетевойКаталог = Истина; + + Если РежимТестирования Тогда // Удалить все, что создали. + Для Каждого Вложение Из Вложения Цикл + УдалитьФайлы(СетевойКаталогСервера + Вложение.Ключ); + КонецЦикла; + КонецЕсли; Исключение ЗаписьЖурнала(ПараметрыЖурнала, , ШаблонСообщенияОбОшибке, ИнформацияОбОшибке()); @@ -1577,6 +1649,12 @@ Результат = Истина; ПараметрыДоставки.ВыполненаНаFTP = Истина; + + Если РежимТестирования Тогда // Удалить все, что создали. + Для Каждого Вложение Из Вложения Цикл + Соединение.Удалить(ПараметрыДоставки.Каталог + Вложение.Ключ); + КонецЦикла; + КонецЕсли; Исключение ЗаписьЖурнала(ПараметрыЖурнала, , ШаблонСообщенияОбОшибке, ИнформацияОбОшибке(),); @@ -1672,8 +1750,8 @@ // Когда тип = ИнформацияОбОшибке то Ошибка, // когда тип = Строка то Предупреждение, // в противном случае Информация. -// Текст - Строка - Комментарий, который может содержать параметры %1, %2, %3 и %4. -// ОписаниеПроблемы - ИнформацияОбОшибке, Строка - Описание возникшей проблемы, которое добавляется после комментария. +// Текст - Строка - Краткое описание проблемы, который может содержать параметры %1, %2, %3 и %4. +// ОписаниеПроблемы - ИнформацияОбОшибке, Строка - Описание возникшей проблемы, которое добавляется после текста. // Пользователю выводится краткое представление ошибки, а в журнал записывается подробное представление ошибки. // Параметр1 - Строка - Для подстановки в Текст вместо %1. // Параметр2 - Строка - Для подстановки в Текст вместо %2. @@ -1712,7 +1790,7 @@ ТекстДляПользователя = Текст; Если ТипЗнч(ОписаниеПроблемы) = Тип("ИнформацияОбОшибке") Тогда ТекстДляЖурнала = ТекстДляЖурнала + Символы.ПС + ПодробноеПредставлениеОшибки(ОписаниеПроблемы); - ТекстДляПользователя = ТекстДляПользователя + Символы.ПС + СтандартныеПодсистемыКлиентСервер.ИсходнаяПричинаОшибки(ОписаниеПроблемы); + ТекстДляПользователя = ТекстДляПользователя + Символы.ПС + КраткоеПредставлениеОшибки(ОписаниеПроблемы); ИначеЕсли ТипЗнч(ОписаниеПроблемы) = Тип("Строка") Тогда ТекстДляЖурнала = ТекстДляЖурнала + Символы.ПС + ОписаниеПроблемы; ТекстДляПользователя = ТекстДляПользователя + Символы.ПС + ОписаниеПроблемы; @@ -1973,21 +2051,17 @@ // Параметры и возвращаемое значение: // См. ВыполнитьРассылку(). // -Функция ЗаполнитьПараметрыРассылкиПараметрамиПоУмолчанию(ТаблицаОтчетов, ПараметрыДоставки, Рассылка, ПараметрыЖурнала) - +Функция ПроверитьИДозаполнитьПараметрыВыполнения(ТаблицаОтчетов, ПараметрыДоставки, Рассылка, ПараметрыЖурнала) // Параметры записи в журнал регистрации. Если ТипЗнч(ПараметрыЖурнала) <> Тип("Структура") Тогда ПараметрыЖурнала = Новый Структура; КонецЕсли; - Если Не ПараметрыЖурнала.Свойство("ИмяСобытия") Тогда ПараметрыЖурнала.Вставить("ИмяСобытия", НСтр("ru = 'Рассылка отчетов. Запуск по требованию'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка())); КонецЕсли; - Если Не ПараметрыЖурнала.Свойство("Данные") Тогда ПараметрыЖурнала.Вставить("Данные", Рассылка); КонецЕсли; - Если Не ПараметрыЖурнала.Свойство("Метаданные") Тогда ПараметрыЖурнала.Вставить("Метаданные", Неопределено); ТипДанных = ТипЗнч(ПараметрыЖурнала.Данные); @@ -1996,11 +2070,21 @@ КонецЕсли; КонецЕсли; - // Проверка прав доступа + // Проверка прав доступа. Если Не ПравоВывода(ПараметрыЖурнала) Тогда Возврат Ложь; КонецЕсли; + ДоступностьОтчетов = ВариантыОтчетов.ДоступностьОтчетов(ТаблицаОтчетов.ВыгрузитьКолонку("Отчет")); + Недоступные = ДоступностьОтчетов.Скопировать(Новый Структура("Доступен", Ложь)); + Если Недоступные.Количество() > 0 Тогда + ЗаписьЖурнала(ПараметрыЖурнала, УровеньЖурналаРегистрации.Ошибка, + НСтр("ru = 'В рассылке есть недоступные отчеты (%1):%2'"), , + Недоступные.Количество(), + Символы.ПС + Символы.Таб + СтрСоединить(Недоступные.ВыгрузитьКолонку("Представление"), Символы.ПС + Символы.Таб)); + Возврат Ложь; + КонецЕсли; + ПараметрыДоставки.Вставить("Рассылка", СокрЛП(Строка(Рассылка))); ПараметрыДоставки.Вставить("ДатаВыполнения", ТекущаяДатаСеанса()); ПараметрыДоставки.Вставить("БылиОшибки", Ложь); @@ -2024,13 +2108,13 @@ ПравоДоступа = Истина; КонецЕсли; Если Не ПравоДоступа Тогда - ПараметрыДоставки.ИспользоватьПапку = Ложь; УстановитьПривилегированныйРежим(Истина); ПредставлениеПапки = Строка(ПараметрыДоставки.Папка); УстановитьПривилегированныйРежим(Ложь); ЗаписьЖурнала(ПараметрыЖурнала, УровеньЖурналаРегистрации.Ошибка, - НСтр("ru = 'Недостаточно прав на изменение файлов папки %1, доставка в папку отключена'"), , - "'"+ ПредставлениеПапки +"'"); + НСтр("ru = 'Недостаточно прав для создания файлов в папке ""%1"".'"), , + ПредставлениеПапки); + Возврат Ложь; КонецЕсли; КонецЕсли; КонецЕсли; @@ -2110,12 +2194,10 @@ Возврат Ложь; КонецЕсли; - // + // Параметры письма. Если Не ПараметрыДоставки.Свойство("СкрытыеКопии") Тогда ПараметрыДоставки.Вставить("СкрытыеКопии", Ложь); КонецЕсли; - - // Параметры письма Если Не ПараметрыДоставки.Свойство("ПараметрыПисьма") Тогда ПараметрыДоставки.Вставить("ПараметрыПисьма", Новый Структура); КонецЕсли; @@ -2131,9 +2213,9 @@ ПараметрыДоставки.Вставить("ПисьмоВФорматеHTML", ПараметрыПисьма.ТипТекста = "HTML" Или ПараметрыПисьма.ТипТекста = ТипТекстаПочтовогоСообщения.HTML); - // Тип текста почтового сообщения. + // Для обратной совместимости. Если ПараметрыПисьма.Свойство("Вложения") Тогда - ПараметрыПисьма.Вставить("ПредустановленныеВложения", ПараметрыПисьма.Вложения); + ПараметрыПисьма.Вставить("Картинки", ПараметрыПисьма.Вложения); КонецЕсли; // Шаблон темы @@ -2198,13 +2280,13 @@ ПараметрыДоставки.Вставить("ПредставлениеОтчетовПолучателя", ""); КонецЕсли; - // Каталог временных файлов. RP = report publishing, RD = report distribution. + // Каталог временных файлов (RP = report publishing). ПараметрыДоставки.Вставить("КаталогВременныхФайлов", СтандартныеПодсистемыСервер.СоздатьКаталогВременныхФайлов("RP")); // Соответствие каталогов временных файлов получателей. ПараметрыДоставки.Вставить("НастройкиПолучателей", Новый Соответствие); - // Признак архивирования и пароль архива. + // Параметры архивации: флажок и пароль архива. Если Не ПараметрыДоставки.Свойство("Архивировать") Тогда ПараметрыДоставки.Вставить("Архивировать", Ложь); ПараметрыДоставки.Вставить("ПарольАрхива", ""); @@ -2212,26 +2294,20 @@ ПараметрыДоставки.Вставить("ПарольАрхива", ""); КонецЕсли; + // Имя архива (удаление запрещенных символов, заполнение шаблона) и расширение. Если ПараметрыДоставки.Архивировать Тогда - // Имя архива Если Не ПараметрыДоставки.Свойство("ИмяАрхива") Или Не ЗначениеЗаполнено(ПараметрыДоставки.ИмяАрхива) Тогда ПараметрыДоставки.Вставить("ИмяАрхива", РассылкаОтчетовКлиентСервер.ШаблонИмениАрхива()); КонецЕсли; - - // Удаление запрещенных символов, заполнение шаблона. - ПараметрыДоставки.ИмяАрхива = ПривестиИмяФайла( - РассылкаОтчетовКлиентСервер.ЗаполнитьШаблон(ПараметрыДоставки.ИмяАрхива, - Новый Структура("НаименованиеРассылки, ДатаВыполнения", - ПараметрыДоставки.Рассылка, - ТекущаяДатаСеанса()))); - - // Расширение + Структура = Новый Структура("НаименованиеРассылки, ДатаВыполнения", ПараметрыДоставки.Рассылка, ТекущаяДатаСеанса()); + ИмяАрхива = РассылкаОтчетовКлиентСервер.ЗаполнитьШаблон(ПараметрыДоставки.ИмяАрхива, Структура); + ПараметрыДоставки.ИмяАрхива = ПривестиИмяФайла(ИмяАрхива); Если НРег(Прав(ПараметрыДоставки.ИмяАрхива, 4)) <> ".zip" Тогда ПараметрыДоставки.ИмяАрхива = ПараметрыДоставки.ИмяАрхива +".zip"; КонецЕсли; КонецЕсли; - // Параметры форматов + // Параметры форматов. ПараметрыДоставки.Вставить("ПараметрыФорматов", Новый Соответствие); Для Каждого ФорматМД Из Метаданные.Перечисления.ФорматыСохраненияОтчетов.ЗначенияПеречисления Цикл Формат = Перечисления.ФорматыСохраненияОтчетов[ФорматМД.Имя]; @@ -2276,22 +2352,7 @@ ПараметрыПисьма = ПараметрыДоставки.ПараметрыПисьма; // Вложения - отчеты - ПараметрыПисьма.Вставить("Вложения", Вложения); - - // Вложения - предустановленные. - Если ПараметрыПисьма.Свойство("ПредустановленныеВложения") Тогда - ЭтоМассив = ТипЗнч(ПараметрыПисьма.Вложения) = Тип("Массив"); - Для Каждого КлючИЗначение Из ПараметрыПисьма.ПредустановленныеВложения Цикл - Вложение = КлючИЗначение.Значение; - РаботаСПочтовымиСообщениямиСлужебный.ПривестиВложениеДляВставкиВПисьмо(Вложение); - ИнформацияОКартинке = Новый Структура("ДвоичныеДанные, Идентификатор", Вложение, КлючИЗначение.Ключ); - Если ЭтоМассив Тогда - ПараметрыПисьма.Вложения.Добавить(Новый Структура("Ключ, Значение", КлючИЗначение.Ключ, ИнформацияОКартинке)); - Иначе - ПараметрыПисьма.Вложения.Вставить(КлючИЗначение.Ключ, ИнформацияОКартинке); - КонецЕсли; - КонецЦикла; - КонецЕсли; + ПараметрыПисьма.Вставить("Вложения", ПреобразоватьВСоответствие(Вложения, "Ключ", "Значение")); // Шаблоны тема и тела ШаблонТемы = ПараметрыДоставки.ШаблонТемы; @@ -2310,7 +2371,7 @@ // Способ доставки заполняется ранее (за пределами этой процедуры). Если ПараметрыДоставки.ЗаполнитьСпособДоставкиВШаблонеСообщения Тогда - ШаблонТекста = СтрЗаменить(ШаблонТекста, "[СпособДоставки]", ПредставлениеСпособовДоставки(ПараметрыДоставки)); + ШаблонТекста = СтрЗаменить(ШаблонТекста, "[СпособДоставки]", РассылкаОтчетовКлиентСервер.ПредставлениеСпособовДоставки(ПараметрыДоставки)); КонецЕсли; // Тема и тело сообщения @@ -2375,6 +2436,18 @@ КонецПроцедуры +// Преобразует коллекцию в соответствие. +Функция ПреобразоватьВСоответствие(Коллекция, ИмяКлюча, ИмяЗначения) + Если ТипЗнч(Коллекция) = Тип("Соответствие") Тогда + Возврат Новый Соответствие(Новый ФиксированноеСоответствие(Коллекция)); + КонецЕсли; + Результат = Новый Соответствие; + Для Каждого Элемент Из Коллекция Цикл + Результат.Вставить(Элемент[ИмяКлюча], Элемент[ИмяЗначения]); + КонецЦикла; + Возврат Результат; +КонецФункции + // Объединяет массивы, возвращая результат объединения. Функция ОбъединитьМассивы(Массив1, Массив2) Массив = Новый Массив; @@ -2415,7 +2488,7 @@ КонецЦикла; ЗаписьZipФайла.Записать(); - + Вложения = Новый Соответствие; Вложения.Вставить(ПараметрыДоставки.ИмяАрхива, ПолноеИмяФайла); @@ -2559,22 +2632,21 @@ // Дерево значений, необходимое для формирования и доставки отчетов. Функция СоздатьДеревоОтчетов() - // Уровень вложенности: + // Структура дерева по уровням вложенности: // - // 1 - Получатели - // Ключ - Ссылка - // Значение - каталог получателя. + // 1 - Получатели: + // Ключ - Ссылка. + // Значение - Каталог получателя. // - // 2 - Табличные документы получателей. - // Ключ - Имя отчета + // 2 - Табличные документы получателей: + // Ключ - Имя отчета. // Значение - Табличный документ. - // Настройки - ............. все параметры отчета ................. + // Настройки - Все параметры отчета... // - // 3 - Файлы получателей - // Ключ - имя файла - // Значение - полный путь к файлу. + // 3 - Файлы получателей: + // Ключ - Имя файла. + // Значение - Полный путь к файлу. // Настройки - ФайлСКаталогом, ИмяФайла, ПолноеИмяФайла, ИмяКаталога, ПолноеИмяКаталога, Формат, Имя, Расширение, ТипФайла. - // ДеревоОтчетов = Новый ДеревоЗначений; ДеревоОтчетов.Колонки.Добавить("Уровень", Новый ОписаниеТипов("Число")); @@ -2596,114 +2668,6 @@ Возврат ПравоВывода; КонецФункции -// Формирует представление способов доставки в соответствии с параметрами доставки. -// -// Параметры: -// ПараметрыДоставки - Структура - См. ВыполнитьРассылку(), параметр ПараметрыДоставки. -// -// Возвращаемое значение: -// Строка - Представление способов доставки. -// -Функция ПредставлениеСпособовДоставки(ПараметрыДоставки) - Префикс = НСтр("ru = 'Результат'"); - ТекстПредставления = ""; - Суффикс = ""; - - Если Не ПараметрыДоставки.ТолькоУведомить Тогда - - ТекстПредставления = ТекстПредставления - + ?(ТекстПредставления = "", Префикс, " " + НСтр("ru = 'и'")) - + " " - + НСтр("ru = 'отправлен по почте (см. вложения)'"); - - КонецЕсли; - - Если ПараметрыДоставки.ВыполненаВПапку Тогда - - ТекстПредставления = ТекстПредставления - + ?(ТекстПредставления = "", Префикс, " " + НСтр("ru = 'и'")) - + " " - + НСтр("ru = 'доставлен в папку'") - + " "; - - Ссылка = ПолучитьНавигационнуюСсылкуИнформационнойБазы() +"#"+ ПолучитьНавигационнуюСсылку(ПараметрыДоставки.Папка); - - Если ПараметрыДоставки.ПисьмоВФорматеHTML Тогда - ТекстПредставления = ТекстПредставления - + "<a href = '" - + Ссылка - + "'>" - + Строка(ПараметрыДоставки.Папка) - + "</a>"; - Иначе - ТекстПредставления = ТекстПредставления - + """" - + Строка(ПараметрыДоставки.Папка) - + """"; - Суффикс = Суффикс + ":" + Символы.ПС + "<" + Ссылка + ">"; - КонецЕсли; - - КонецЕсли; - - Если ПараметрыДоставки.ВыполненаВСетевойКаталог Тогда - - ТекстПредставления = ТекстПредставления - + ?(ТекстПредставления = "", Префикс, " " + НСтр("ru = 'и'")) - + " " - + НСтр("ru = 'доставлен в сетевой каталог'") - + " "; - - Если ПараметрыДоставки.ПисьмоВФорматеHTML Тогда - ТекстПредставления = ТекстПредставления - + "<a href = '" - + ПараметрыДоставки.СетевойКаталогWindows - + "'>" - + ПараметрыДоставки.СетевойКаталогWindows - + "</a>"; - Иначе - ТекстПредставления = ТекстПредставления - + "<" - + ПараметрыДоставки.СетевойКаталогWindows - + ">"; - КонецЕсли; - - КонецЕсли; - - Если ПараметрыДоставки.ВыполненаНаFTP Тогда - - ТекстПредставления = ТекстПредставления - + ?(ТекстПредставления = "", Префикс, " " + НСтр("ru = 'и'")) - + " " - + НСтр("ru = 'доставлен на FTP ресурс'") - + " "; - - Ссылка = "ftp://" - + ПараметрыДоставки.Сервер - + ":" - + Формат(ПараметрыДоставки.Порт, "ЧН=0; ЧГ=0") - + ПараметрыДоставки.Каталог; - - Если ПараметрыДоставки.ПисьмоВФорматеHTML Тогда - ТекстПредставления = ТекстПредставления - + "<a href = '" - + Ссылка - + "'>" - + Ссылка - + "</a>"; - Иначе - ТекстПредставления = ТекстПредставления - + "<" - + Ссылка - + ">"; - КонецЕсли; - - КонецЕсли; - - ТекстПредставления = ТекстПредставления + ?(Суффикс = "", ".", Суффикс); - - Возврат ТекстПредставления; -КонецФункции - // Если файл существует - добавляет суффикс в имя файла. // // Параметры: diff --git a/SSL/src/CommonModules/РассылкаОтчетовВызовСервера/Module.bsl b/SSL/src/CommonModules/РассылкаОтчетовВызовСервера/Module.bsl index 54ed95a06..5b52b6268 100644 --- a/SSL/src/CommonModules/РассылкаОтчетовВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/РассылкаОтчетовВызовСервера/Module.bsl @@ -1,7 +1,6 @@ //////////////////////////////////////////////////////////////////////////////// // Подсистема "Рассылка отчетов" (вызов сервера). -// -// Выполняется на сервере, но может вызываться с клиента. +// //////////////////////////////////////////////////////////////////////////////// #Область СлужебныеПроцедурыИФункции @@ -27,20 +26,14 @@ Возврат РезультатВыполнения; КонецФункции -// Обновляет состояние фонового задания и получает результат его выполнения из временного хранилища. -Функция ПроверитьВыполнениеФоновогоЗадания(ИдентификаторЗадания, АдресХранилища) Экспорт - Результат = Новый Структура("Статус, Детали"); - Попытка - Если ДлительныеОперации.ЗаданиеВыполнено(ИдентификаторЗадания) Тогда - Результат.Статус = "ВыполненоУспешно"; // Не локализуется - Результат.Детали = ПолучитьИзВременногоХранилища(АдресХранилища); - Иначе - Результат.Статус = "Выполняется"; // Не локализуется - КонецЕсли; - Исключение - Результат.Статус = "Исключение"; // Не локализуется - КонецПопытки; - Возврат Результат; +// Запускает фоновое задание. +Функция ЗапуститьФоновоеЗадание(Знач ПараметрыМетода, Знач УникальныйИдентификатор) Экспорт + ИмяМетода = "РассылкаОтчетов.ВыполнитьРассылкиВФоновомЗадании"; + + НастройкиЗапуска = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + НастройкиЗапуска.НаименованиеФоновогоЗадания = НСтр("ru = 'Рассылки отчетов: Выполнение рассылок в фоне'"); + + Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяМетода, ПараметрыМетода, НастройкиЗапуска); КонецФункции #КонецОбласти diff --git a/SSL/src/CommonModules/РассылкаОтчетовКлиент/Module.bsl b/SSL/src/CommonModules/РассылкаОтчетовКлиент/Module.bsl index ed68280b8..1ea296835 100644 --- a/SSL/src/CommonModules/РассылкаОтчетовКлиент/Module.bsl +++ b/SSL/src/CommonModules/РассылкаОтчетовКлиент/Module.bsl @@ -1,7 +1,8 @@ //////////////////////////////////////////////////////////////////////////////// -// Подсистема "Рассылка отчетов" (клиент). -// -// Выполняется на клиенте. +// Подсистема "Рассылка отчетов" (клиент, переопределяемый). +// +// Выполняется на клиенте, изменяется под специфику прикладной конфигурации, +// но предназначен для использования только данной подсистемой. //////////////////////////////////////////////////////////////////////////////// #Область СлужебныйПрограммныйИнтерфейс @@ -100,14 +101,24 @@ КонецЕсли; Получатели = РезультатВыполнения.Получатели; + Если Получатели.Количество() = 1 Тогда + Результат = Получатели; + Если Не ВозвращатьСоответствие Тогда + Для Каждого КлючИЗначение Из Получатели Цикл + Результат = Новый Структура("Получатель, ПочтовыйАдрес", КлючИЗначение.Ключ, КлючИЗначение.Значение); + КонецЦикла; + КонецЕсли; + ВыполнитьОбработкуОповещения(ОбработчикРезультата, Результат); + Возврат; + КонецЕсли; ВозможныеПолучатели = Новый СписокЗначений; - Если МножественныйВыбор Тогда - ВозможныеПолучатели.Добавить(Неопределено, НСтр("ru = 'Всем получателям'")); - КонецЕсли; Для Каждого КлючИЗначение Из Получатели Цикл ВозможныеПолучатели.Добавить(КлючИЗначение.Ключ, Строка(КлючИЗначение.Ключ) +" <"+ КлючИЗначение.Значение +">"); КонецЦикла; + Если МножественныйВыбор Тогда + ВозможныеПолучатели.Вставить(0, Неопределено, НСтр("ru = 'Всем получателям'")); + КонецЕсли; ДополнительныеПараметры = Новый Структура; ДополнительныеПараметры.Вставить("ОбработчикРезультата", ОбработчикРезультата); @@ -116,13 +127,7 @@ Обработчик = Новый ОписаниеОповещения("ВыбратьПолучателяЗавершение", ЭтотОбъект, ДополнительныеПараметры); - Количество = ВозможныеПолучатели.Количество(); - - Если Объект.Личная И ВозможныеПолучатели.Количество() = 1 Тогда - ВыполнитьОбработкуОповещения(Обработчик, ВозможныеПолучатели[0]); - Иначе - ВозможныеПолучатели.ПоказатьВыборЭлемента(Обработчик, НСтр("ru = 'Выбор получателя'")); - КонецЕсли; + ВозможныеПолучатели.ПоказатьВыборЭлемента(Обработчик, НСтр("ru = 'Выбор получателя'")); КонецПроцедуры // Обработчик результата работы процедуры ВыбратьПолучателя. @@ -145,28 +150,78 @@ ВыполнитьОбработкуОповещения(ДополнительныеПараметры.ОбработчикРезультата, Результат); КонецПроцедуры -// Контролирует состояние фонового задания и выводит пользователю его результат. -Процедура ПроверитьВыполнениеФоновогоЗадания(Форма) Экспорт - - ИдентификаторЗадания = Форма.ПараметрыФоновогоЗадания[0].Значение; - АдресХранилища = Форма.ПараметрыФоновогоЗадания[1].Значение; - ПараметрыОбработчика = Форма.ПараметрыФоновогоЗадания[2].Значение; - ФормаДлительнойОперации = Форма.ПараметрыФоновогоЗадания[3].Значение; - - Результат = РассылкаОтчетовВызовСервера.ПроверитьВыполнениеФоновогоЗадания(ИдентификаторЗадания, АдресХранилища); - Если Результат.Статус = "ВыполненоУспешно" Тогда - ДлительныеОперацииКлиент.ЗакрытьФормуДлительнойОперации(ФормаДлительнойОперации); - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(Форма, Результат.Детали); - Форма.ПараметрыФоновогоЗадания.Очистить(); - ИначеЕсли Результат.Статус = "Исключение" Тогда - ПоказатьПредупреждение(, - НСтр("ru = 'Рассылки не выполнены из-за ошибки, - |Подробности см. в журнале регистрации.'")); - ИначеЕсли Результат.Статус = "Выполняется" Тогда - Форма.ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеФоновогоЗадания", ПараметрыОбработчика.ТекущийИнтервал, Истина); - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(Форма.ПараметрыФоновогоЗадания[2].Значение); +// Выполняет рассылки в фоне. +Процедура ВыполнитьСейчас(Параметры) Экспорт + Обработчик = Новый ОписаниеОповещения("ЗапускФоновогоЗадания", ЭтотОбъект, Параметры); + Если Параметры.ЭтоФормаЭлемента Тогда + Объект = Параметры.Форма.Объект; + Если Не Объект.Подготовлена Тогда + ПоказатьПредупреждение(, НСтр("ru = 'Рассылка не подготовлена'")); + Возврат; + КонецЕсли; + Если Объект.ИспользоватьЭлектроннуюПочту Тогда + ВыбратьПолучателя(Обработчик, Параметры.Форма.Объект, Истина, Истина); + Возврат; + КонецЕсли; + КонецЕсли; + ВыполнитьОбработкуОповещения(Обработчик, Неопределено); +КонецПроцедуры + +// Запускает фоновое задание, вызывается когда все параметры уже готовы. +Процедура ЗапускФоновогоЗадания(Получатели, Параметры) Экспорт + ПредварительныеНастройки = Неопределено; + Если Параметры.ЭтоФормаЭлемента Тогда + Если Параметры.Форма.Объект.ИспользоватьЭлектроннуюПочту Тогда + Если Получатели = Неопределено Тогда + Возврат; + КонецЕсли; + ПредварительныеНастройки = Новый Структура("Получатели", Получатели); + КонецЕсли; + ТекстСостояния = НСтр("ru = 'Выполняется рассылка отчетов'"); + Иначе + ТекстСостояния = НСтр("ru = 'Выполняются рассылки отчетов'"); КонецЕсли; + Состояние(ТекстСостояния); + + ПараметрыМетода = Новый Структура; + ПараметрыМетода.Вставить("МассивРассылок", Параметры.МассивРассылок); + ПараметрыМетода.Вставить("ПредварительныеНастройки", ПредварительныеНастройки); + + Задание = РассылкаОтчетовВызовСервера.ЗапуститьФоновоеЗадание(ПараметрыМетода, Параметры.Форма.УникальныйИдентификатор); + + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(Параметры.Форма); + НастройкиОжидания.ВыводитьОкноОжидания = Истина; + НастройкиОжидания.ТекстСообщения = ТекстСостояния; + НастройкиОжидания.ПолучатьРезультат = Истина; + + Обработчик = Новый ОписаниеОповещения("ПослеЗавершенияФоновогоЗадания", ЭтотОбъект, Параметры); + + ДлительныеОперацииКлиент.ОжидатьЗавершение(Задание, Обработчик, НастройкиОжидания); +КонецПроцедуры + +// Принимает результат выполнения фонового задания. +Процедура ПослеЗавершенияФоновогоЗадания(Задание, Параметры) Экспорт + Если Задание = Неопределено Тогда + Возврат; // Отменено. + КонецЕсли; + Если Задание.Статус = "Выполнено" Тогда + Результат = ПолучитьИзВременногоХранилища(Задание.АдресРезультата); + КоличествоРассылок = Результат.Рассылки.Количество(); + Если КоличествоРассылок > 0 Тогда + ОповеститьОбИзменении(?(КоличествоРассылок > 1, Тип("СправочникСсылка.РассылкиОтчетов"), Результат.Рассылки[0])); + КонецЕсли; + СтандартныеПодсистемыКлиент.ВывестиПредупреждение(ЭтотОбъект, Результат); + Иначе + Предупреждение = Новый Структура("Текст, Подробно"); + Предупреждение.Текст = НСтр("ru = 'Не удалось выполнить рассылки отчетов.'") + + Символы.ПС + + Задание.КраткоеПредставлениеОшибки; + Предупреждение.Подробно = Задание.ПодробноеПредставлениеОшибки + + Символы.ПС + + НСтр("ru = 'Подробности см. в журнале регистрации.'"); + СтандартныеПодсистемыКлиент.ВывестиПредупреждение(ЭтотОбъект, Предупреждение); + КонецЕсли; КонецПроцедуры // Открывает рассылку отчетов из формы отчета. diff --git a/SSL/src/CommonModules/РассылкаОтчетовКлиентСервер/Module.bsl b/SSL/src/CommonModules/РассылкаОтчетовКлиентСервер/Module.bsl index e0ac04a0a..226a2aa48 100644 --- a/SSL/src/CommonModules/РассылкаОтчетовКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/РассылкаОтчетовКлиентСервер/Module.bsl @@ -1,14 +1,14 @@ //////////////////////////////////////////////////////////////////////////////// // Подсистема "Рассылка отчетов" (клиент, сервер). -// -// Выполняется на клиенте и на сервере. +// //////////////////////////////////////////////////////////////////////////////// #Область СлужебныеПроцедурыИФункции // Разбирает строку FTP адреса на Логин, Пароль, Сервер, Порт и Каталог. // Подробнее - см. RFC 1738 (http://tools.ietf.org/html/rfc1738#section-3.1). -// Шаблон: ftp://<user>:<password>@<host>:<port>/<url-path>. +// Шаблон: "ftp://<user>:<password>@<host>:<port>/<url-path>". +// Фрагменты "<user>:<password>@", ":<password>", ":<port>" и "/<url-path>" могут отсутствовать. // // Параметры: // FTPАдрес - Строка - Полный путь к ftp ресурсу. @@ -32,20 +32,20 @@ FTPАдрес = ПолныйFTPАдрес; - // Вырезать 'ftp://' + // Вырезать "ftp://". Поз = СтрНайти(FTPАдрес, "://"); Если Поз > 0 Тогда FTPАдрес = Сред(FTPАдрес, Поз + 3); КонецЕсли; - // Каталог + // Каталог. Поз = СтрНайти(FTPАдрес, "/"); Если Поз > 0 Тогда Результат.Каталог = Сред(FTPАдрес, Поз); FTPАдрес = Лев(FTPАдрес, Поз - 1); КонецЕсли; - // Логин и пароль + // Логин и пароль. Поз = СтрНайти(FTPАдрес, "@"); Если Поз > 0 Тогда ЛогинПароль = Лев(FTPАдрес, Поз - 1); @@ -60,7 +60,7 @@ КонецЕсли; КонецЕсли; - // Сервер и порт + // Сервер и порт. Поз = СтрНайти(FTPАдрес, ":"); Если Поз > 0 Тогда Результат.Сервер = Лев(FTPАдрес, Поз - 1); @@ -81,31 +81,26 @@ // Параметры - Структура - Набор параметров, которые необходимо подставить в шаблон. // * Ключ - Имя параметра. Например "ФИО". // * Значение - Строка подстановки. Например "Иванов Иван Иванович". -// Левый - Строка - Необязательный. Начало обрамления параметра. -// Правый - Строка - Необязательный. Конец обрамления параметра. -// ФорматЛевый - Строка - Необязательный. Начало обрамления формата параметра. -// ФорматПравый - Строка - Необязательный. Конец обрамления формата параметра. -// ВырезатьОбрамление - Булево - Необязательный. Истина означает, что обрамление параметра будет убрано из результата. // // Возвращаемое значение: // Строка - Шаблон с заполненными параметрами. // Функция ЗаполнитьШаблон(Шаблон, Параметры) Экспорт - Левый = "["; - Правый = "]"; - ФорматЛевый = "("; - ФорматПравый = ")"; - ВырезатьОбрамление = Истина; + Левый = "["; // Начало обрамления параметра. + Правый = "]"; // Конец обрамления параметра. + ФорматЛевый = "("; // Начало обрамления формата. + ФорматПравый = ")"; // Конец обрамления формата. + ВырезатьОбрамление = Истина; // Истина означает, что обрамление параметра будет убрано из результата. Результат = Шаблон; Для Каждого КлючИЗначение Из Параметры Цикл - // Замена [ключ] на [значение]. + // Замена "[ключ]" на "значение". Результат = СтрЗаменить( Результат, Левый + КлючИЗначение.Ключ + Правый, ?(ВырезатьОбрамление, "", Левый) + КлючИЗначение.Значение + ?(ВырезатьОбрамление, "", Правый)); ДлинаФорматЛевый = СтрДлина(Левый + КлючИЗначение.Ключ + ФорматЛевый); - // Замена [ключ(формат)] на [значение] в формате. + // Замена "[ключ(формат)]" на "значение в формате". Поз1 = СтрНайти(Результат, Левый + КлючИЗначение.Ключ + ФорматЛевый); Пока Поз1 > 0 Цикл Поз2 = СтрНайти(Результат, ФорматПравый + Правый); @@ -215,6 +210,114 @@ Возврат ?(Результат = 0, ЗначениеПоУмолчанию, Результат); КонецФункции +// Формирует представление способов доставки в соответствии с параметрами доставки. +// +// Параметры: +// ПараметрыДоставки - Структура - См. ВыполнитьРассылку(), параметр ПараметрыДоставки. +// +// Возвращаемое значение: +// Строка - Представление способов доставки. +// +Функция ПредставлениеСпособовДоставки(ПараметрыДоставки) Экспорт + Префикс = НСтр("ru = 'Результат'"); + ТекстПредставления = ""; + Суффикс = ""; + + Если Не ПараметрыДоставки.ТолькоУведомить Тогда + + ТекстПредставления = ТекстПредставления + + ?(ТекстПредставления = "", Префикс, " " + НСтр("ru = 'и'")) + + " " + + НСтр("ru = 'отправлен по почте (см. вложения)'"); + + КонецЕсли; + + Если ПараметрыДоставки.ВыполненаВПапку Тогда + + ТекстПредставления = ТекстПредставления + + ?(ТекстПредставления = "", Префикс, " " + НСтр("ru = 'и'")) + + " " + + НСтр("ru = 'доставлен в папку'") + + " "; + + Ссылка = ПолучитьНавигационнуюСсылкуИнформационнойБазы() +"#"+ ПолучитьНавигационнуюСсылку(ПараметрыДоставки.Папка); + + Если ПараметрыДоставки.ПисьмоВФорматеHTML Тогда + ТекстПредставления = ТекстПредставления + + "<a href = '" + + Ссылка + + "'>" + + Строка(ПараметрыДоставки.Папка) + + "</a>"; + Иначе + ТекстПредставления = ТекстПредставления + + """" + + Строка(ПараметрыДоставки.Папка) + + """"; + Суффикс = Суффикс + ":" + Символы.ПС + "<" + Ссылка + ">"; + КонецЕсли; + + КонецЕсли; + + Если ПараметрыДоставки.ВыполненаВСетевойКаталог Тогда + + ТекстПредставления = ТекстПредставления + + ?(ТекстПредставления = "", Префикс, " " + НСтр("ru = 'и'")) + + " " + + НСтр("ru = 'доставлен в сетевой каталог'") + + " "; + + Если ПараметрыДоставки.ПисьмоВФорматеHTML Тогда + ТекстПредставления = ТекстПредставления + + "<a href = '" + + ПараметрыДоставки.СетевойКаталогWindows + + "'>" + + ПараметрыДоставки.СетевойКаталогWindows + + "</a>"; + Иначе + ТекстПредставления = ТекстПредставления + + "<" + + ПараметрыДоставки.СетевойКаталогWindows + + ">"; + КонецЕсли; + + КонецЕсли; + + Если ПараметрыДоставки.ВыполненаНаFTP Тогда + + ТекстПредставления = ТекстПредставления + + ?(ТекстПредставления = "", Префикс, " " + НСтр("ru = 'и'")) + + " " + + НСтр("ru = 'доставлен на FTP ресурс'") + + " "; + + Ссылка = "ftp://" + + ПараметрыДоставки.Сервер + + ":" + + Формат(ПараметрыДоставки.Порт, "ЧН=0; ЧГ=0") + + ПараметрыДоставки.Каталог; + + Если ПараметрыДоставки.ПисьмоВФорматеHTML Тогда + ТекстПредставления = ТекстПредставления + + "<a href = '" + + Ссылка + + "'>" + + Ссылка + + "</a>"; + Иначе + ТекстПредставления = ТекстПредставления + + "<" + + Ссылка + + ">"; + КонецЕсли; + + КонецЕсли; + + ТекстПредставления = ТекстПредставления + ?(Суффикс = "", ".", Суффикс); + + Возврат ТекстПредставления; +КонецФункции + Функция ПредставлениеСписка(Коллекция, ИмяКолонки = "", МаксимумСимволов = 60) Экспорт Результат = Новый Структура; Результат.Вставить("Всего", 0); diff --git a/SSL/src/CommonModules/РассылкаОтчетовПереопределяемый/Module.bsl b/SSL/src/CommonModules/РассылкаОтчетовПереопределяемый/Module.bsl index 13b07162f..d278d25ef 100644 --- a/SSL/src/CommonModules/РассылкаОтчетовПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/РассылкаОтчетовПереопределяемый/Module.bsl @@ -1,7 +1,7 @@ //////////////////////////////////////////////////////////////////////////////// // Подсистема "Рассылка отчетов" (сервер, переопределяемый). -// -// Выполняется на сервере, изменяется под специфику прикладной конфигурации, +// +// Выполняется на сервере, изменяется под специфику прикладной конфигурации, // но предназначен для использования только данной подсистемой. //////////////////////////////////////////////////////////////////////////////// diff --git a/SSL/src/CommonModules/РассылкаОтчетовПовтИсп/Module.bsl b/SSL/src/CommonModules/РассылкаОтчетовПовтИсп/Module.bsl index c551501cc..4af45bb3b 100644 --- a/SSL/src/CommonModules/РассылкаОтчетовПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/РассылкаОтчетовПовтИсп/Module.bsl @@ -1,7 +1,6 @@ //////////////////////////////////////////////////////////////////////////////// -// Подсистема "Рассылка отчетов" (сервер, повт. исп.). -// -// Выполняется на сервере, возвращаемые значения кэшируются на время сеанса. +// Подсистема "Рассылка отчетов" (сервер, результат кэшируется). +// //////////////////////////////////////////////////////////////////////////////// #Область СлужебныеПроцедурыИФункции diff --git a/SSL/src/CommonModules/РегламентированныеДанныеКлиентСервер/Module.bsl b/SSL/src/CommonModules/РегламентированныеДанныеКлиентСервер/Module.bsl index 4710e9c89..61589bbc8 100644 --- a/SSL/src/CommonModules/РегламентированныеДанныеКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/РегламентированныеДанныеКлиентСервер/Module.bsl @@ -153,38 +153,48 @@ КонецФункции // Проверяет соответствие КПП требованиям. +// Согласно приложению к приказу ФНС России от 29.06.2012 N ММВ-7-6/435@ +// "Об утверждении Порядка и условий присвоения, применения, а также изменения +// идентификационного номера налогоплательщика". // // Параметры: -// КПП - Строка - Проверяемый код причины постановки на учет. -// ТекстСообщения - Строка - Текст сообщения о найденных ошибках. +// КПП - Строка - проверяемый код причины постановки на учет. +// ТекстСообщения - Строка - текст сообщения о найденных ошибках. // // Возвращаемое значение: -// Истина - КПП соответствует требованиям; -// Ложь - КПП не соответствует требованиям. +// Булево - Истина, если соответствует. // Функция КППСоответствуетТребованиям(Знач КПП, ТекстСообщения) Экспорт - СоответствуетТребованиям = Истина; - ТекстСообщения = ""; - - КПП = СокрЛП(КПП); - ДлинаКПП = СтрДлина(КПП); - - Если НЕ СтроковыеФункцииКлиентСервер.ТолькоЦифрыВСтроке(КПП) Тогда - СоответствуетТребованиям = Ложь; - ТекстСообщения = ТекстСообщения + НСтр("ru = 'КПП должен состоять только из цифр.'"); + Ошибки = Новый Массив; + КПП = СокрЛП(КПП); + + Если СтрДлина(КПП) <> 9 Тогда + Ошибки.Добавить(НСтр("ru = 'КПП должен состоять из 9 символов.'")); + Иначе + Если Не СтроковыеФункцииКлиентСервер.ТолькоЦифрыВСтроке(Лев(КПП, 4)) Тогда + Ошибки.Добавить(НСтр("ru = 'Первые 4 символа КПП (код налогового органа) должны быть цифрами.'")); + КонецЕсли; + + ДопустимыеСимволы = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; + Для НомерСимвола = 5 По 6 Цикл + Символ = Сред(КПП, НомерСимвола, 1); + Если СтрНайти(ДопустимыеСимволы, Символ) = 0 Тогда + Ошибки.Добавить(НСтр("ru = 'Символы 5-6 КПП (причина постановки на учет) должны быть цифрами и/или заглавными буквами латинского алфавита от A до Z.'")); + Прервать; + КонецЕсли; + КонецЦикла; + + Если Не СтроковыеФункцииКлиентСервер.ТолькоЦифрыВСтроке(Прав(КПП, 3)) Тогда + Ошибки.Добавить(НСтр("ru = 'Последние 3 символа КПП (порядковый номер постановки на учет) должны быть цифрами.'")); + КонецЕсли; КонецЕсли; + + ТекстСообщения = СтрСоединить(Ошибки, Символы.ПС); + + Возврат Ошибки.Количество() = 0; - Если ДлинаКПП <> 9 Тогда - СоответствуетТребованиям = Ложь; - ТекстСообщения = ТекстСообщения + ?(ЗначениеЗаполнено(ТекстСообщения), Символы.ПС, "") - + НСтр("ru = 'КПП должен состоять из 9 цифр.'"); - КонецЕсли; - - Возврат СоответствуетТребованиям; - -КонецФункции - +КонецФункции // Проверяет соответствие ОГРН требованиям. // // Параметры: diff --git a/SSL/src/CommonModules/РегламентныеЗаданияКлиент/Module.bsl b/SSL/src/CommonModules/РегламентныеЗаданияКлиент/Module.bsl index c3e8f9404..9e7c7421e 100644 --- a/SSL/src/CommonModules/РегламентныеЗаданияКлиент/Module.bsl +++ b/SSL/src/CommonModules/РегламентныеЗаданияКлиент/Module.bsl @@ -21,8 +21,9 @@ // Только для внутреннего использования. Процедура ПоказатьФормуБлокировкиРаботыСВнешнимиРесурсами(Параметры, ДополнительныеПараметры) Экспорт + ПараметрыФормы = Новый Структура("ПринятиеРешенияОБлокировке", Истина); Оповещение = Новый ОписаниеОповещения("ПослеОткрытияОкнаБлокировкиРаботыСВнешнимиРесурсами", ЭтотОбъект, Параметры); - Форма = ОткрытьФорму("ОбщаяФорма.БлокировкаРаботыСВнешнимиРесурсами",,,,,, Оповещение); + ОткрытьФорму("ОбщаяФорма.БлокировкаРаботыСВнешнимиРесурсами", ПараметрыФормы,,,,, Оповещение); КонецПроцедуры diff --git a/SSL/src/CommonModules/РегламентныеЗаданияПереопределяемый/Module.bsl b/SSL/src/CommonModules/РегламентныеЗаданияПереопределяемый/Module.bsl index c571758e7..a09d00df3 100644 --- a/SSL/src/CommonModules/РегламентныеЗаданияПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/РегламентныеЗаданияПереопределяемый/Module.bsl @@ -35,8 +35,9 @@ // задание доступно в модели сервиса. // По умолчанию - неопределено. // * РаботаетСВнешнимиРесурсами - Булево - Истина, если регламентное задание модифицирует данные -// во внешних источниках (получение почты, синхронизация данных и т.п.). -// По умолчанию - Ложь. +// во внешних источниках (получение почты, синхронизация данных и т.п.). Не следует устанавливать +// значение Истина, для регламентных заданий, не модифицирующих данные во внешних источниках. +// Например, регламентное задание ЗагрузкаКурсовВалют. По умолчанию - Ложь. // * Параметризуется - Булево - Истина, если регламентное задание параметризованное. // По умолчанию - Ложь. // diff --git a/SSL/src/CommonModules/РегламентныеЗаданияСлужебный/Module.bsl b/SSL/src/CommonModules/РегламентныеЗаданияСлужебный/Module.bsl index 6f1b4f3c4..0de8bb2d8 100644 --- a/SSL/src/CommonModules/РегламентныеЗаданияСлужебный/Module.bsl +++ b/SSL/src/CommonModules/РегламентныеЗаданияСлужебный/Module.bsl @@ -232,6 +232,62 @@ КонецФункции +// Разрешает работу с внешними ресурсами после перемещения базы. +// +Процедура РазрешитьРаботуСВнешнимиРесурсами(ПараметрыБлокировки = Неопределено) Экспорт + + Если ПараметрыБлокировки = Неопределено Тогда + ПараметрыБлокировки = Константы.ПараметрыБлокировкиРаботыСВнешнимиРесурсами.Получить().Получить(); + КонецЕсли; + + Отбор = Новый Структура("УникальныйИдентификатор"); + Для Каждого ИдентификаторЗадания Из ПараметрыБлокировки.ОтключенныеЗадания Цикл + + Если ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ОчередьЗаданий") Тогда + + ПараметрыЗадания = Новый Структура; + ПараметрыЗадания.Вставить("ОбластьДанных", ОбщегоНазначения.ЗначениеРазделителяСеанса()); + ПараметрыЗадания.Вставить("Идентификатор", ИдентификаторЗадания); + ПараметрыЗадания.Вставить("Использование", Ложь); + МодульОчередьЗаданий = ОбщегоНазначения.ОбщийМодуль("ОчередьЗаданий"); + СписокЗаданий = МодульОчередьЗаданий.ПолучитьЗадания(ПараметрыЗадания); + + ПараметрыЗадания = Новый Структура("Использование", Истина); + Для Каждого Задание Из СписокЗаданий Цикл + МодульОчередьЗаданий.ИзменитьЗадание(Задание.Идентификатор, ПараметрыЗадания); + КонецЦикла; + КонецЕсли; + Иначе + Отбор.УникальныйИдентификатор = ИдентификаторЗадания; + НайденныеЗадания = РегламентныеЗадания.ПолучитьРегламентныеЗадания(Отбор); + + Для Каждого ОтключенноеЗадание Из НайденныеЗадания Цикл + ОтключенноеЗадание.Использование = Истина; + ОтключенноеЗадание.Записать(); + КонецЦикла; + КонецЕсли; + + КонецЦикла; + + СтрокаСоединения = СтрокаСоединенияИнформационнойБазы(); + ЭтоФайловаяБаза = ОбщегоНазначения.ИнформационнаяБазаФайловая(СтрокаСоединения); + + ПараметрыБлокировки.ЭтоФайловаяБаза = ЭтоФайловаяБаза; + ПараметрыБлокировки.СтрокаСоединения = СтрокаСоединения; + ПараметрыБлокировки.РаботаСВнешнимиРесурсамиЗаблокирована = Ложь; + ПараметрыБлокировки.ОтключенныеЗадания.Очистить(); + ПараметрыБлокировки.ИдентификаторБазы = ИдентификаторФайловойБазы(ЭтоФайловаяБаза); + ПараметрыБлокировки.РазделениеВключено = ОбщегоНазначенияПовтИсп.РазделениеВключено(); + ПараметрыБлокировки.ИмяКомпьютера = ИмяКомпьютера(); + + ХранилищеЗначения = Новый ХранилищеЗначения(ПараметрыБлокировки); + Константы.ПараметрыБлокировкиРаботыСВнешнимиРесурсами.Установить(ХранилищеЗначения); + + ПараметрыСеанса.РаботаСВнешнимиРесурсамиЗаблокирована = Ложь; + +КонецПроцедуры + // Возвращает соответствие имен параметров сеанса и обработчиков для их инициализации. // Процедура ПриДобавленииОбработчиковУстановкиПараметровСеанса(Обработчики) Экспорт @@ -241,6 +297,106 @@ КонецПроцедуры +// Запрещает работу с внешними ресурсами. +// +Процедура ЗапретитьРаботуСВнешнимиРесурсами() Экспорт + + ПараметрыБлокировки = Константы.ПараметрыБлокировкиРаботыСВнешнимиРесурсами.Получить().Получить(); + + Если ПараметрыБлокировки = Неопределено Тогда + ИнициализироватьПараметрыБлокировкиРаботыСВнешнимиРесурсами(Истина); + Иначе + ПараметрыБлокировки.РаботаСВнешнимиРесурсамиЗаблокирована = Истина; + ХранилищеЗначения = Новый ХранилищеЗначения(ПараметрыБлокировки); + Константы.ПараметрыБлокировкиРаботыСВнешнимиРесурсами.Установить(ХранилищеЗначения); + КонецЕсли; + + ПараметрыСеанса.РаботаСВнешнимиРесурсамиЗаблокирована = Истина; + +КонецПроцедуры + +// Возвращает признак установленной блокировки работы с внешними ресурсами. +// +// Возвращаемое значение: +// Булево - Истина, если работа с внешними ресурсами заблокирована. +// +Функция РаботаСВнешнимиРесурсамиЗаблокирована() Экспорт + + Возврат ПараметрыСеанса.РаботаСВнешнимиРесурсамиЗаблокирована; + +КонецФункции + +// Устанавливает признак использования регламентных заданий в информационной базе +// в зависимости от значений функциональных опций. +// +// Параметры: +// ВключатьЗадания - Булево - если Истина, отключенные регламентные задания будут включаться +// при доступности по функциональным опциям. По умолчанию Ложь. +// +Процедура УстановитьИспользованиеРегламентныхЗаданийПоФункциональнымОпциям(ВключатьЗадания = Ложь) Экспорт + + ЭтоПодчиненныйУзелРИБ = ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ(); + ЭтоАвтономноеРабочееМесто = ОбщегоНазначенияПовтИсп.ЭтоАвтономноеРабочееМесто(); + + ЗависимыеРегламентныеЗадания = РегламентныеЗаданияЗависимыеОтФункциональныхОпций(); + Задания = ЗависимыеРегламентныеЗадания.Скопировать(,"РегламентноеЗадание"); + Задания.Свернуть("РегламентноеЗадание"); + + Для Каждого СтрокаЗадание Из Задания Цикл + + Использование = Неопределено; + ОтключитьЗадание = Истина; + ОтключитьВПодчиненномУзлеРИБ = Ложь; + ОтключитьВАвтономномРабочемМесте = Ложь; + + НайденныеСтроки = ЗависимыеРегламентныеЗадания.НайтиСтроки(Новый Структура("РегламентноеЗадание", СтрокаЗадание.РегламентноеЗадание)); + + Для Каждого СтрокаЗависимости Из НайденныеСтроки Цикл + ОтключитьВПодчиненномУзлеРИБ = (СтрокаЗависимости.ДоступноВПодчиненномУзлеРИБ = Ложь) И ЭтоПодчиненныйУзелРИБ; + ОтключитьВАвтономномРабочемМесте = (СтрокаЗависимости.ДоступноВАвтономномРабочемМесте = Ложь) И ЭтоАвтономноеРабочееМесто; + Если ОтключитьВПодчиненномУзлеРИБ Или ОтключитьВАвтономномРабочемМесте Тогда + Использование = Ложь; + Прервать; + КонецЕсли; + + Если СтрокаЗависимости.ФункциональнаяОпция = Неопределено Тогда + Продолжить; + КонецЕсли; + + ЗначениеФО = ПолучитьФункциональнуюОпцию(СтрокаЗависимости.ФункциональнаяОпция.Имя); + + Если СтрокаЗависимости.ВключатьПриВключенииФункциональнойОпции = Ложь Тогда + Если ОтключитьЗадание Тогда + ОтключитьЗадание = Не ЗначениеФО; + КонецЕсли; + ЗначениеФО = Ложь; + КонецЕсли; + + Если Использование = Неопределено Тогда + Использование = ЗначениеФО; + ИначеЕсли СтрокаЗависимости.ЗависимостьПоИ Тогда + Использование = Использование И ЗначениеФО; + Иначе + Использование = Использование Или ЗначениеФО; + КонецЕсли; + КонецЦикла; + + Если Использование = Неопределено + Или (Использование И Не ВключатьЗадания) // Автоматически при обновлении только отключаем регламентные задания. + Или (Не Использование И Не ОтключитьЗадание) Тогда + Продолжить; + КонецЕсли; + + СписокЗаданий = РегламентныеЗаданияСервер.НайтиЗадания(Новый Структура("Метаданные", СтрокаЗадание.РегламентноеЗадание)); + Для Каждого РегламентноеЗадание Из СписокЗаданий Цикл + ПараметрыЗадания = Новый Структура("Использование", Использование); + РегламентныеЗаданияСервер.ИзменитьЗадание(РегламентноеЗадание, ПараметрыЗадания); + КонецЦикла; + + КонецЦикла; + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Обработчики подписок на события. @@ -248,7 +404,7 @@ // при изменении функциональной опции. // // Параметры: -// Источник - КонстантаМенеджерЗначения - константа хранения значения ФО +// Источник - КонстантаМенеджерЗначения - константа хранения значения ФО. // Отказ - Булево - Отказ при записи константы. // Процедура ВключитьРегламентноеЗаданиеПриИзмененииФункциональнойОпции(Источник, Отказ) Экспорт @@ -320,6 +476,136 @@ КонецПроцедуры +Функция ОбновленнаяТаблицаРегламентныхЗаданий(Параметры, АдресХранилища) Экспорт + + ИдентификаторРегламентногоЗадания = Параметры.ИдентификаторРегламентногоЗадания; + Таблица = Параметры.Таблица; + ОтключенныеЗадания = Параметры.ОтключенныеЗадания; + + // Обновление таблицы РегламентныеЗадания и списка СписокВыбора регламентного задания для отбора. + ТекущиеЗадания = РегламентныеЗадания.ПолучитьРегламентныеЗадания(); + ОтключенныеЗадания.Очистить(); + + ПараметрыРегламентныхЗаданий = РегламентныеЗаданияЗависимыеОтФункциональныхОпций(); + ПараметрыОтбора = Новый Структура; + ПараметризуемыеЗадания = Новый Массив; + ПараметрыОтбора.Вставить("Параметризуется", Истина); + РезультатПоиска = ПараметрыРегламентныхЗаданий.НайтиСтроки(ПараметрыОтбора); + Для Каждого СтрокаРезультата Из РезультатПоиска Цикл + ПараметризуемыеЗадания.Добавить(СтрокаРезультата.РегламентноеЗадание); + КонецЦикла; + + ЗаданияВМоделиСервиса = Новый Соответствие; + ПодсистемаРаботаВМоделиСервиса = Метаданные.Подсистемы.СтандартныеПодсистемы.Подсистемы.Найти("РаботаВМоделиСервиса"); + Для Каждого ОбъектМетаданных Из Метаданные.РегламентныеЗадания Цикл + Если Не РегламентноеЗаданиеДоступноПоФункциональнымОпциям(ОбъектМетаданных, ПараметрыРегламентныхЗаданий) Тогда + ОтключенныеЗадания.Добавить(ОбъектМетаданных.Имя); + Продолжить; + КонецЕсли; + Если НЕ ОбщегоНазначенияПовтИсп.РазделениеВключено() И ПодсистемаРаботаВМоделиСервиса <> Неопределено Тогда + Если ПодсистемаРаботаВМоделиСервиса.Состав.Содержит(ОбъектМетаданных) Тогда + ЗаданияВМоделиСервиса.Вставить(ОбъектМетаданных.Имя, Истина); + Продолжить; + КонецЕсли; + Для каждого Подсистема Из ПодсистемаРаботаВМоделиСервиса.Подсистемы Цикл + Если Подсистема.Состав.Содержит(ОбъектМетаданных) Тогда + ЗаданияВМоделиСервиса.Вставить(ОбъектМетаданных.Имя, Истина); + Продолжить; + КонецЕсли; + КонецЦикла; + КонецЕсли; + КонецЦикла; + + Если ИдентификаторРегламентногоЗадания = Неопределено Тогда + + Индекс = 0; + Для каждого Задание Из ТекущиеЗадания Цикл + Если НЕ ОбщегоНазначенияПовтИсп.РазделениеВключено() + И ЗаданияВМоделиСервиса[Задание.Метаданные.Имя] <> Неопределено Тогда + + Продолжить; + КонецЕсли; + + Идентификатор = Строка(Задание.УникальныйИдентификатор); + + Если Индекс >= Таблица.Количество() + ИЛИ Таблица[Индекс].Идентификатор <> Идентификатор Тогда + + // Вставка нового задания. + Обновляемое = Таблица.Вставить(Индекс); + + // Установка уникального идентификатора. + Обновляемое.Идентификатор = Идентификатор; + Иначе + Обновляемое = Таблица[Индекс]; + КонецЕсли; + + Если ПараметризуемыеЗадания.Найти(Задание.Метаданные) <> Неопределено Тогда + Обновляемое.Параметризуемое = Истина; + КонецЕсли; + + ОбновитьСтрокуТаблицыРегламентныхЗаданий(Обновляемое, Задание); + Индекс = Индекс + 1; + КонецЦикла; + + // Удаление лишних строк. + Пока Индекс < Таблица.Количество() Цикл + Таблица.Удалить(Индекс); + КонецЦикла; + Иначе + Задание = РегламентныеЗадания.НайтиПоУникальномуИдентификатору( + Новый УникальныйИдентификатор(ИдентификаторРегламентногоЗадания)); + + Строки = Таблица.НайтиСтроки( + Новый Структура("Идентификатор", ИдентификаторРегламентногоЗадания)); + + Если Задание <> Неопределено + И Строки.Количество() > 0 Тогда + + СтрокаЗадание = Строки[0]; + Если ПараметризуемыеЗадания.Найти(Задание.Метаданные) <> Неопределено Тогда + СтрокаЗадание.Параметризуемое = Истина; + КонецЕсли; + ОбновитьСтрокуТаблицыРегламентныхЗаданий(СтрокаЗадание, Задание); + КонецЕсли; + КонецЕсли; + + Результат = Новый Структура; + Результат.Вставить("Таблица", Таблица); + Результат.Вставить("ОтключенныеЗадания", ОтключенныеЗадания); + + ПоместитьВоВременноеХранилище(Результат, АдресХранилища); + +КонецФункции + +Процедура ОбновитьСтрокуТаблицыРегламентныхЗаданий(Строка, Задание) + + ЗаполнитьЗначенияСвойств(Строка, Задание); + + // Уточнение наименования + Строка.Наименование = ПредставлениеРегламентногоЗадания(Задание); + + // Установка Даты завершения и Состояния завершения по последней фоновой процедуре. + СвойстваПоследнегоФоновогоЗадания = РегламентныеЗаданияСлужебный + .ПолучитьСвойстваПоследнегоФоновогоЗаданияВыполненияРегламентногоЗадания(Задание); + + Строка.ИмяЗадания = Задание.Метаданные.Имя; + Если СвойстваПоследнегоФоновогоЗадания = Неопределено Тогда + Строка.ДатаНачала = ТекстНеОпределено(); + Строка.ДатаОкончания = ТекстНеОпределено(); + Строка.СостояниеВыполнения = ТекстНеОпределено(); + Иначе + Строка.ДатаНачала = ?(ЗначениеЗаполнено(СвойстваПоследнегоФоновогоЗадания.Начало), + СвойстваПоследнегоФоновогоЗадания.Начало, + "<>"); + Строка.ДатаОкончания = ?(ЗначениеЗаполнено(СвойстваПоследнегоФоновогоЗадания.Конец), + СвойстваПоследнегоФоновогоЗадания.Конец, + "<>"); + Строка.СостояниеВыполнения = СвойстваПоследнегоФоновогоЗадания.Состояние; + КонецЕсли; + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Обработчики событий подсистем БСП. @@ -331,7 +617,7 @@ // Процедура ПриЗаполненииТаблицыПараметровИБ(Знач ТаблицаПараметров) Экспорт - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.БазоваяФункциональностьВМоделиСервиса") Тогда МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса"); МодульРаботаВМоделиСервиса.ДобавитьКонстантуВТаблицуПараметровИБ(ТаблицаПараметров, "МаксимальнаяДлительностьВыполненияИсполняющегоФоновогоЗадания"); МодульРаботаВМоделиСервиса.ДобавитьКонстантуВТаблицуПараметровИБ(ТаблицаПараметров, "МаксимальноеКоличествоИсполняющихФоновыхЗаданий"); @@ -353,7 +639,7 @@ Обработчик.РежимВыполнения = "Монопольно"; Обработчик = Обработчики.Добавить(); - Обработчик.Версия = "2.3.2.42"; + Обработчик.Версия = "2.3.3.12"; Обработчик.НачальноеЗаполнение = Истина; Обработчик.РежимВыполнения = "Монопольно"; Обработчик.Процедура = "РегламентныеЗаданияСлужебный.ОбновитьПараметрыБлокировкиРаботыСВнешнимиРесурсами"; @@ -582,7 +868,7 @@ // Функция ТаблицаСвойствФоновыхЗаданийВФоне(Параметры, АдресХранилища) Экспорт - ТаблицаСвойств = ПолучитьТаблицуСвойствФоновыхЗаданий(Параметры.Отбор); + ТаблицаСвойств = СвойстваФоновыхЗаданий(Параметры.Отбор); Результат = Новый Структура; Результат.Вставить("ТаблицаСвойств", ТаблицаСвойств); @@ -602,12 +888,12 @@ // Возвращаемое значение: // ТаблицаЗначений - возвращается таблица после отбора. // -Функция ПолучитьТаблицуСвойствФоновыхЗаданий(Отбор = Неопределено) Экспорт +Функция СвойстваФоновыхЗаданий(Отбор = Неопределено) Экспорт ВызватьИсключениеЕслиНетПраваАдминистрирования(); УстановитьПривилегированныйРежим(Истина); - Таблица = ПустаяТаблицаСвойствФоновыхЗаданий(); + Таблица = НовыеСвойстваФоновыхЗаданий(); Если ЗначениеЗаполнено(Отбор) И Отбор.Свойство("ПолучитьПоследнееФоновоеЗаданиеРегламентногоЗадания") Тогда Отбор.Удалить("ПолучитьПоследнееФоновоеЗаданиеРегламентногоЗадания"); @@ -766,7 +1052,7 @@ УстановитьПривилегированныйРежим(Истина); Отбор = Новый Структура("Идентификатор", Идентификатор); - ТаблицаСвойствФоновыхЗаданий = ПолучитьТаблицуСвойствФоновыхЗаданий(Отбор); + ТаблицаСвойствФоновыхЗаданий = СвойстваФоновыхЗаданий(Отбор); Если ТаблицаСвойствФоновыхЗаданий.Количество() > 0 Тогда Если ЗначениеЗаполнено(ИменаСвойств) Тогда @@ -801,7 +1087,7 @@ Отбор = Новый Структура; Отбор.Вставить("ИдентификаторРегламентногоЗадания", ИдентификаторРегламентногоЗадания); Отбор.Вставить("ПолучитьПоследнееФоновоеЗаданиеРегламентногоЗадания"); - ТаблицаСвойствФоновыхЗаданий = ПолучитьТаблицуСвойствФоновыхЗаданий(Отбор); + ТаблицаСвойствФоновыхЗаданий = СвойстваФоновыхЗаданий(Отбор); ТаблицаСвойствФоновыхЗаданий.Сортировать("Конец Возр"); Если ТаблицаСвойствФоновыхЗаданий.Количество() = 0 Тогда @@ -856,100 +1142,6 @@ КонецФункции -//////////////////////////////////////////////////////////////////////////////// -// Обработчики обновления информационной базы. - -Процедура УстановитьИспользованиеРегламентныхЗаданийПоФункциональнымОпциям() Экспорт - - ЭтоПодчиненныйУзелРИБ = ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ(); - ЭтоАвтономноеРабочееМесто = ОбщегоНазначенияПовтИсп.ЭтоАвтономноеРабочееМесто(); - - ЗависимыеРегламентныеЗадания = РегламентныеЗаданияЗависимыеОтФункциональныхОпций(); - Задания = ЗависимыеРегламентныеЗадания.Скопировать(,"РегламентноеЗадание"); - Задания.Свернуть("РегламентноеЗадание"); - - Для Каждого СтрокаЗадание Из Задания Цикл - - Использование = Неопределено; - ОтключитьЗадание = Истина; - ОтключитьВПодчиненномУзлеРИБ = Ложь; - ОтключитьВАвтономномРабочемМесте = Ложь; - - НайденныеСтроки = ЗависимыеРегламентныеЗадания.НайтиСтроки(Новый Структура("РегламентноеЗадание", СтрокаЗадание.РегламентноеЗадание)); - - Для Каждого СтрокаЗависимости Из НайденныеСтроки Цикл - ОтключитьВПодчиненномУзлеРИБ = (СтрокаЗависимости.ДоступноВПодчиненномУзлеРИБ = Ложь) И ЭтоПодчиненныйУзелРИБ; - ОтключитьВАвтономномРабочемМесте = (СтрокаЗависимости.ДоступноВАвтономномРабочемМесте = Ложь) И ЭтоАвтономноеРабочееМесто; - Если ОтключитьВПодчиненномУзлеРИБ Или ОтключитьВАвтономномРабочемМесте Тогда - Использование = Ложь; - Прервать; - КонецЕсли; - - Если СтрокаЗависимости.ФункциональнаяОпция = Неопределено Тогда - Продолжить; - КонецЕсли; - - ЗначениеФО = ПолучитьФункциональнуюОпцию(СтрокаЗависимости.ФункциональнаяОпция.Имя); - - Если СтрокаЗависимости.ВключатьПриВключенииФункциональнойОпции = Ложь Тогда - Если ОтключитьЗадание Тогда - ОтключитьЗадание = Не ЗначениеФО; - КонецЕсли; - ЗначениеФО = Ложь; - КонецЕсли; - - Если Использование = Неопределено Тогда - Использование = ЗначениеФО; - ИначеЕсли СтрокаЗависимости.ЗависимостьПоИ Тогда - Использование = Использование И ЗначениеФО; - Иначе - Использование = Использование Или ЗначениеФО; - КонецЕсли; - КонецЦикла; - - Если Использование = Неопределено - Или Использование // Автоматически при обновлении только отключаем регламентные задания. - Или (Не Использование И Не ОтключитьЗадание) Тогда - Продолжить; - КонецЕсли; - - Если ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда - - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ОчередьЗаданий") Тогда - ОбластьДанных = ОбщегоНазначения.ЗначениеРазделителяСеанса(); - ИмяМетода = СтрокаЗадание.РегламентноеЗадание.ИмяМетода; - - ПараметрыЗадания = Новый Структура; - ПараметрыЗадания.Вставить("ОбластьДанных", ОбластьДанных); - ПараметрыЗадания.Вставить("ИмяМетода", ИмяМетода); - - МодульОчередьЗаданий = ОбщегоНазначения.ОбщийМодуль("ОчередьЗаданий"); - СписокЗаданий = МодульОчередьЗаданий.ПолучитьЗадания(ПараметрыЗадания); - ПараметрыЗадания = Новый Структура("Использование", Использование); - Для Каждого Задание Из СписокЗаданий Цикл - МодульОчередьЗаданий.ИзменитьЗадание(Задание.Идентификатор, ПараметрыЗадания); - КонецЦикла; - КонецЕсли; - - Иначе - - МассивЗаданий = РегламентныеЗадания.ПолучитьРегламентныеЗадания(Новый Структура("Метаданные", СтрокаЗадание.РегламентноеЗадание)); - - Для каждого Задание Из МассивЗаданий Цикл - - Если Задание.Использование <> Использование Тогда - - Задание.Использование = Использование; - Задание.Записать(); - - КонецЕсли; - КонецЦикла; - - КонецЕсли; - КонецЦикла; - -КонецПроцедуры - //////////////////////////////////////////////////////////////////////////////// // Вспомогательные процедуры и функции. @@ -1059,7 +1251,7 @@ // Возвращаемое значение: // ТаблицаЗначений. // -Функция ПустаяТаблицаСвойствФоновыхЗаданий() +Функция НовыеСвойстваФоновыхЗаданий() НоваяТаблица = Новый ТаблицаЗначений; НоваяТаблица.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка")); @@ -1180,80 +1372,6 @@ КонецПроцедуры -// Разрешает работу с внешними ресурсами после перемещения базы. -// -Процедура РазрешитьРаботуСВнешнимиРесурсами(ПараметрыБлокировки = Неопределено) Экспорт - - Если ПараметрыБлокировки = Неопределено Тогда - ПараметрыБлокировки = Константы.ПараметрыБлокировкиРаботыСВнешнимиРесурсами.Получить().Получить(); - КонецЕсли; - - Отбор = Новый Структура("УникальныйИдентификатор"); - Для Каждого ИдентификаторЗадания Из ПараметрыБлокировки.ОтключенныеЗадания Цикл - - Если ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ОчередьЗаданий") Тогда - - ПараметрыЗадания = Новый Структура; - ПараметрыЗадания.Вставить("ОбластьДанных", ОбщегоНазначения.ЗначениеРазделителяСеанса()); - ПараметрыЗадания.Вставить("Идентификатор", ИдентификаторЗадания); - ПараметрыЗадания.Вставить("Использование", Ложь); - МодульОчередьЗаданий = ОбщегоНазначения.ОбщийМодуль("ОчередьЗаданий"); - СписокЗаданий = МодульОчередьЗаданий.ПолучитьЗадания(ПараметрыЗадания); - - ПараметрыЗадания = Новый Структура("Использование", Истина); - Для Каждого Задание Из СписокЗаданий Цикл - МодульОчередьЗаданий.ИзменитьЗадание(Задание.Идентификатор, ПараметрыЗадания); - КонецЦикла; - КонецЕсли; - Иначе - Отбор.УникальныйИдентификатор = ИдентификаторЗадания; - НайденныеЗадания = РегламентныеЗадания.ПолучитьРегламентныеЗадания(Отбор); - - Для Каждого ОтключенноеЗадание Из НайденныеЗадания Цикл - ОтключенноеЗадание.Использование = Истина; - ОтключенноеЗадание.Записать(); - КонецЦикла; - КонецЕсли; - - КонецЦикла; - - СтрокаСоединения = СтрокаСоединенияИнформационнойБазы(); - ЭтоФайловаяБаза = ОбщегоНазначения.ИнформационнаяБазаФайловая(СтрокаСоединения); - - ПараметрыБлокировки.ЭтоФайловаяБаза = ЭтоФайловаяБаза; - ПараметрыБлокировки.СтрокаСоединения = СтрокаСоединения; - ПараметрыБлокировки.РаботаСВнешнимиРесурсамиЗаблокирована = Ложь; - ПараметрыБлокировки.ОтключенныеЗадания.Очистить(); - ПараметрыБлокировки.ИдентификаторБазы = ИдентификаторФайловойБазы(ЭтоФайловаяБаза); - ПараметрыБлокировки.РазделениеВключено = ОбщегоНазначенияПовтИсп.РазделениеВключено(); - ПараметрыБлокировки.ИмяКомпьютера = ИмяКомпьютера(); - - ХранилищеЗначения = Новый ХранилищеЗначения(ПараметрыБлокировки); - Константы.ПараметрыБлокировкиРаботыСВнешнимиРесурсами.Установить(ХранилищеЗначения); - - ПараметрыСеанса.РаботаСВнешнимиРесурсамиЗаблокирована = Ложь; - -КонецПроцедуры - -// Запрещает работу с внешними ресурсами. -// -Процедура ЗапретитьРаботуСВнешнимиРесурсами() Экспорт - - ПараметрыБлокировки = Константы.ПараметрыБлокировкиРаботыСВнешнимиРесурсами.Получить().Получить(); - - Если ПараметрыБлокировки = Неопределено Тогда - ИнициализироватьПараметрыБлокировкиРаботыСВнешнимиРесурсами(Истина); - Иначе - ПараметрыБлокировки.РаботаСВнешнимиРесурсамиЗаблокирована = Истина; - ХранилищеЗначения = Новый ХранилищеЗначения(ПараметрыБлокировки); - Константы.ПараметрыБлокировкиРаботыСВнешнимиРесурсами.Установить(ХранилищеЗначения); - КонецЕсли; - - ПараметрыСеанса.РаботаСВнешнимиРесурсамиЗаблокирована = Истина; - -КонецПроцедуры - // Определяет установлена ли блокировка работы с внешними ресурсами. // Функция УстановленаБлокировкаРаботыСВнешнимиРесурсами(ЭтоВызовПередНачаломРаботыСистемы = Ложь, ПоказатьФорму = Ложь) Экспорт @@ -1288,8 +1406,7 @@ Возврат Ложь; КонецЕсли; - Если ПараметрыБлокировки.Свойство("РазделениеВключено") - И РазделениеВключено <> ПараметрыБлокировки.РазделениеВключено Тогда + Если РазделениеВключено <> ПараметрыБлокировки.РазделениеВключено Тогда // Разделение не включено. ТекстСообщения = НСтр("ru = 'Информационная база была перемещена из приложения в Интернете.'"); УстановитьПризнакНеобходимостиПринятияРешенияОБлокировке(ПараметрыБлокировки, ТекстСообщения); @@ -1339,6 +1456,7 @@ СохраненноеИмяБазы = НРег(СтроковыеФункцииКлиентСервер.ПолучитьПараметрыИзСтроки(ПараметрыБлокировки.СтрокаСоединения).Ref); СохраненноеИмяКомпьютера = НРег(ПараметрыБлокировки.ИмяКомпьютера); СохраненноеИмяСервера = НРег(СтроковыеФункцииКлиентСервер.ПолучитьПараметрыИзСтроки(ПараметрыБлокировки.СтрокаСоединения).Srvr); + Если ИмяБазы <> СохраненноеИмяБазы Или (ПараметрыБлокировки.ПроверятьИмяСервера И (ИмяКомпьютера <> СохраненноеИмяКомпьютера @@ -1357,17 +1475,6 @@ КонецФункции -// Возвращает признак установленной блокировки работы с внешними ресурсами. -// -// Возвращаемое значение: -// Булево - Истина, если работа с внешними ресурсами заблокирована. -// -Функция РаботаСВнешнимиРесурсамиЗаблокирована() Экспорт - - Возврат ПараметрыСеанса.РаботаСВнешнимиРесурсамиЗаблокирована; - -КонецФункции - // Инициализирует константу ПараметрыБлокировкиРаботыСВнешнимиРесурсами. // Процедура ИнициализироватьПараметрыБлокировкиРаботыСВнешнимиРесурсами(РаботаСВнешнимиРесурсамиЗаблокирована = Ложь) diff --git a/SSL/src/CommonModules/РезервноеКопированиеИБКлиент/Module.bsl b/SSL/src/CommonModules/РезервноеКопированиеИБКлиент/Module.bsl index 21f4dc741..edacaaeb0 100644 --- a/SSL/src/CommonModules/РезервноеКопированиеИБКлиент/Module.bsl +++ b/SSL/src/CommonModules/РезервноеКопированиеИБКлиент/Module.bsl @@ -20,7 +20,7 @@ // Процедура ПриНачалеРаботыСистемы(Параметры) Экспорт - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Или ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент() Тогда + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Или ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент() Тогда Возврат; КонецЕсли; @@ -117,33 +117,35 @@ // Доопределяет список предупреждений пользователю перед завершением работы системы. // // Параметры: +// Отказ - Булево - Признак отказа от выхода из программы. Если в теле процедуры-обработчика установить +// данному параметру значение Истина, то работа с программой не будет завершена. // Предупреждения - Массив - в массив можно добавить элементы типа Структура, -// свойства которой см. в СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершениеРаботы. +// свойства которой см. в СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершенииРаботы. // -Процедура ПриПолученииСпискаПредупрежденийЗавершенияРаботы(Предупреждения) Экспорт +Процедура ПередЗавершениемРаботыСистемы(Отказ, Предупреждения) Экспорт #Если ВебКлиент Тогда Возврат; #КонецЕсли - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда Возврат; КонецЕсли; - ПараметрыРаботыКлиента = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента(); - Если ПараметрыРаботыКлиента.РазделениеВключено Или Не ПараметрыРаботыКлиента.ИнформационнаяБазаФайловая Тогда + Параметры = СтандартныеПодсистемыКлиент.ПараметрКлиента(); + Если Параметры.РазделениеВключено Или Не Параметры.ИнформационнаяБазаФайловая Тогда Возврат; КонецЕсли; - Параметры = СтандартныеПодсистемыКлиент.ПараметрыРаботыКлиентаПриЗавершении(); - Если Не Параметры.РезервноеКопированиеИБ.ДоступностьРолейОповещения - Или Не Параметры.РезервноеКопированиеИБ.ВыполнятьПриЗавершенииРаботы Тогда + Если Не Параметры.РезервноеКопированиеИБПриЗавершенииРаботы.ДоступностьРолейОповещения + Или Не Параметры.РезервноеКопированиеИБПриЗавершенииРаботы.ВыполнятьПриЗавершенииРаботы Тогда Возврат; КонецЕсли; - ПараметрыПредупреждения = СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершениеРаботы(); + ПараметрыПредупреждения = СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершенииРаботы(); ПараметрыПредупреждения.ТекстФлажка = НСтр("ru = 'Выполнить резервное копирование'"); ПараметрыПредупреждения.Приоритет = 50; + ПараметрыПредупреждения.ТекстПредупреждения = НСтр("ru = 'Не выполнено резервное копирование при завершении работы.'"); ДействиеПриУстановленномФлажке = ПараметрыПредупреждения.ДействиеПриУстановленномФлажке; ДействиеПриУстановленномФлажке.Форма = "Обработка.РезервноеКопированиеИБ.Форма.РезервноеКопированиеДанных"; @@ -158,28 +160,12 @@ //////////////////////////////////////////////////////////////////////////////// // Экспортные служебные процедуры и функции. -// Возвращает имя формы настроек резервного копирования в зависимости от режима работы. -// -Функция ИмяФормыНастроекРезервногоКопирования() Экспорт - - Если СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ИнформационнаяБазаФайловая Тогда - - Возврат "Обработка.НастройкаРезервногоКопированияИБ.Форма.НастройкаРезервногоКопирования"; - - Иначе - - Возврат "Обработка.НастройкаРезервногоКопированияИБ.Форма.НастройкаРезервногоКопированияКлиентСервер"; - - КонецЕсли; - -КонецФункции - // Проверяет необходимость запуска автоматического резервного копирования // в процессе работы пользователя, а также повторного оповещения после игнорировании первоначального. // Процедура ОбработчикОжиданияЗапуска() Экспорт - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Или ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент() Тогда + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Или ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент() Тогда Возврат; КонецЕсли; @@ -383,9 +369,7 @@ ИначеЕсли ВариантОповещения = "ЕщеНеНастроено" Тогда - ИмяФормыНастроек = "e1cib/app/%1"; - ИмяФормыНастроек = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ИмяФормыНастроек, ИмяФормыНастроекРезервногоКопирования()); - + ИмяФормыНастроек = "e1cib/app/Обработка.НастройкаРезервногоКопированияИБ/"; ТекстПояснения = НСтр("ru = 'Рекомендуется настроить резервное копирование информационной базы.'"); ПоказатьОповещениеПользователя(НСтр("ru = 'Резервное копирование'"), ИмяФормыНастроек, ТекстПояснения, БиблиотекаКартинок.Предупреждение32); @@ -416,7 +400,6 @@ #Если НЕ ВебКлиент Тогда СтруктураПараметров = Новый Структура(); - СтруктураПараметров.Вставить("ДатаВремяОбновленияУстановлена", Ложь); СтруктураПараметров.Вставить("ИмяФайлаПрограммы", СтандартныеПодсистемыКлиент.ИмяИсполняемогоФайлаПриложения()); СтруктураПараметров.Вставить("СобытиеЖурналаРегистрации", НСтр("ru = 'Резервное копирование ИБ'")); diff --git a/SSL/src/CommonModules/РезервноеКопированиеИБСервер/Module.bsl b/SSL/src/CommonModules/РезервноеКопированиеИБСервер/Module.bsl index e92835117..0011c54d3 100644 --- a/SSL/src/CommonModules/РезервноеКопированиеИБСервер/Module.bsl +++ b/SSL/src/CommonModules/РезервноеКопированиеИБСервер/Module.bsl @@ -11,7 +11,7 @@ // КЛИЕНТСКИЕ ОБРАБОТЧИКИ. КлиентскиеОбработчики[ - "СтандартныеПодсистемы.БазоваяФункциональность\ПриПолученииСпискаПредупрежденийЗавершенияРаботы"].Добавить( + "СтандартныеПодсистемы.БазоваяФункциональность\ПередЗавершениемРаботыСистемы"].Добавить( "РезервноеКопированиеИБКлиент"); КлиентскиеОбработчики[ @@ -28,9 +28,6 @@ // СЕРВЕРНЫЕ ОБРАБОТЧИКИ. - СерверныеОбработчики["СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПараметровРаботыКлиентаПриЗавершении"].Добавить( - "РезервноеКопированиеИБСервер"); - СерверныеОбработчики[ "СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПараметровРаботыКлиентаПриЗапуске"].Добавить( "РезервноеКопированиеИБСервер"); @@ -92,6 +89,50 @@ КонецФункции +// Возвращает текущую настройку резервного копирования строкой. +// Два варианта использования функции - или с передачей всех параметров или без параметров. +// +Функция ТекущаяНастройкаРезервногоКопирования() Экспорт + + НастройкиРезервногоКопирования = НастройкиРезервногоКопирования(); + Если НастройкиРезервногоКопирования = Неопределено Тогда + Возврат НСтр("ru = 'Для настройки резервного копирования необходимо обратиться к администратору.'"); + КонецЕсли; + + ТекущаяНастройка = НСтр("ru = 'Резервное копирование не настроено, информационная база подвергается риску потери данных.'"); + + Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда + + Если НастройкиРезервногоКопирования.ВыполнятьАвтоматическоеРезервноеКопирование Тогда + + Если НастройкиРезервногоКопирования.ВариантВыполнения = "ПриЗавершенииРаботы" Тогда + ТекущаяНастройка = НСтр("ru = 'Резервное копирование выполняется регулярно при завершении работы.'"); + ИначеЕсли НастройкиРезервногоКопирования.ВариантВыполнения = "ПоРасписанию" Тогда // По расписанию + Расписание = ОбщегоНазначенияКлиентСервер.СтруктураВРасписание(НастройкиРезервногоКопирования.РасписаниеКопирования); + Если Не ПустаяСтрока(Расписание) Тогда + ТекущаяНастройка = НСтр("ru = 'Резервное копирование выполняется регулярно по расписанию: %1'"); + ТекущаяНастройка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекущаяНастройка, Расписание); + КонецЕсли; + КонецЕсли; + + Иначе + + Если НастройкиРезервногоКопирования.РезервноеКопированиеНастроено Тогда + ТекущаяНастройка = НСтр("ru = 'Резервное копирование не выполняется (организовано сторонними программами).'"); + КонецЕсли; + + КонецЕсли; + + Иначе + + ТекущаяНастройка = НСтр("ru = 'Резервное копирование не выполняется (организовано средствами СУБД).'"); + + КонецЕсли; + + Возврат ТекущаяНастройка; + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -321,9 +362,24 @@ Результат = ПараметрыРезервногоКопирования(); - ВариантОповещения = ВариантОповещения(); - + // Определение варианта оповещения пользователя. + ВариантОповещения = "НеОповещать"; + ОповещатьОНеобходимостиРезервногоКопирования = ТекущаяДатаСеанса() >= (Результат.ДатаПоследнегоОповещения + 3600 * 24); + Если Результат.ВыполнятьАвтоматическоеРезервноеКопирование Тогда + ВариантОповещения = ?(НеобходимостьАвтоматическогоРезервногоКопирования(), "Просрочено", "Настроено"); + ИначеЕсли Не Результат.РезервноеКопированиеНастроено Тогда + Если ОповещатьОНеобходимостиРезервногоКопирования Тогда + НастройкиРезервногоКопирования = Константы.ПараметрыРезервногоКопирования.Получить().Получить(); + Если НастройкиРезервногоКопирования <> Неопределено + И НастройкиРезервногоКопирования.Пользователь <> ПользователиКлиентСервер.ТекущийПользователь() Тогда + ВариантОповещения = "НеОповещать"; + Иначе + ВариантОповещения = "ЕщеНеНастроено"; + КонецЕсли; + КонецЕсли; + КонецЕсли; Результат.Вставить("ПараметрОповещения", ВариантОповещения); + Если Результат.ПроведеноКопирование И Результат.РезультатКопирования Тогда ТекущаяДатаСеанса = ТекущаяДатаСеанса(); Результат.ДатаПоследнегоРезервногоКопирования = ТекущаяДатаСеанса; @@ -356,56 +412,7 @@ КонецПроцедуры -// Выбирает, какой вариант оповещения показать пользователю. -// Вызывается из формы помощника резервного копирования для определения стартовой формы. -// -// Возвращаемое значение: -// Строка: -// "Настроено" - настроено автоматическое резервное копирование. -// "Просрочено" - просрочено автоматическое резервное копирование. -// "ЕщеНеНастроено" - резервное копирование еще не настроено. -// "НеОповещать" - не оповещать о необходимости выполнения резервного копирования (например, если выполняется -// сторонними средствами). -// -Функция ВариантОповещения() - - Результат = "НеОповещать"; - Если Не Пользователи.ЭтоПолноправныйПользователь(,Истина) Тогда - Возврат Результат; - КонецЕсли; - - ПараметрыОповещенияОКопировании = ПараметрыРезервногоКопирования(); - ОповещатьОНеобходимостиРезервногоКопирования = ТекущаяДатаСеанса() >= (ПараметрыОповещенияОКопировании.ДатаПоследнегоОповещения + 3600 * 24); - - Если ПараметрыОповещенияОКопировании.ВыполнятьАвтоматическоеРезервноеКопирование Тогда - - Если НеобходимостьАвтоматическогоРезервногоКопирования() Тогда - Результат = "Просрочено"; - Иначе - Результат = "Настроено"; - КонецЕсли; - - ИначеЕсли Не ПараметрыОповещенияОКопировании.РезервноеКопированиеНастроено Тогда - - Если ОповещатьОНеобходимостиРезервногоКопирования Тогда - - НастройкиРезервногоКопирования = Константы.ПараметрыРезервногоКопирования.Получить().Получить(); - Если НастройкиРезервногоКопирования <> Неопределено - И НастройкиРезервногоКопирования.Пользователь <> ПользователиКлиентСервер.ТекущийПользователь() Тогда - Результат = "НеОповещать"; - Иначе - Результат = "ЕщеНеНастроено"; - КонецЕсли; - - КонецЕсли; - - КонецЕсли; - - Возврат Результат; - -КонецФункции - -// Возвращает информацию о текущем пользователе +// Возвращает информацию о текущем пользователе. // Функция ИнформацияОПользователе() Экспорт @@ -457,50 +464,6 @@ КонецПроцедуры -// Возвращает текущую настройку резервного копирования строкой. -// Два варианта использования функции - или с передачей всех параметров или без параметров. -// -Функция ТекущаяНастройкаРезервногоКопирования() Экспорт - - НастройкиРезервногоКопирования = НастройкиРезервногоКопирования(); - Если НастройкиРезервногоКопирования = Неопределено Тогда - Возврат НСтр("ru = 'Для настройки резервного копирования необходимо обратиться к администратору.'"); - КонецЕсли; - - ТекущаяНастройка = НСтр("ru = 'Резервное копирование не настроено, информационная база подвергается риску потери данных.'"); - - Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда - - Если НастройкиРезервногоКопирования.ВыполнятьАвтоматическоеРезервноеКопирование Тогда - - Если НастройкиРезервногоКопирования.ВариантВыполнения = "ПриЗавершенииРаботы" Тогда - ТекущаяНастройка = НСтр("ru = 'Резервное копирование выполняется регулярно при завершении работы.'"); - ИначеЕсли НастройкиРезервногоКопирования.ВариантВыполнения = "ПоРасписанию" Тогда // По расписанию - Расписание = ОбщегоНазначенияКлиентСервер.СтруктураВРасписание(НастройкиРезервногоКопирования.РасписаниеКопирования); - Если Не ПустаяСтрока(Расписание) Тогда - ТекущаяНастройка = НСтр("ru = 'Резервное копирование выполняется регулярно по расписанию: %1'"); - ТекущаяНастройка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекущаяНастройка, Расписание); - КонецЕсли; - КонецЕсли; - - Иначе - - Если НастройкиРезервногоКопирования.РезервноеКопированиеНастроено Тогда - ТекущаяНастройка = НСтр("ru = 'Резервное копирование не выполняется (организовано сторонними программами).'"); - КонецЕсли; - - КонецЕсли; - - Иначе - - ТекущаяНастройка = НСтр("ru = 'Резервное копирование не выполняется (организовано средствами СУБД).'"); - - КонецЕсли; - - Возврат ТекущаяНастройка; - -КонецФункции - Функция ПараметрыУдаленияРезервныхКопийПоУмолчанию() ПараметрыУдаления = Новый Структура; @@ -731,20 +694,6 @@ //////////////////////////////////////////////////////////////////////////////// // Обработчики событий подсистем БСП. -// Заполняет структуру параметров, необходимых для работы клиентского кода -// при завершении работы конфигурации, т.е. в обработчиках: -// - ПередЗавершениемРаботыСистемы, -// - ПриЗавершенииРаботыСистемы. -// -// Параметры: -// Параметры - Структура - структура параметров. -// -Процедура ПриДобавленииПараметровРаботыКлиентаПриЗавершении(Параметры) Экспорт - - Параметры.Вставить("РезервноеКопированиеИБ", ПараметрыПриЗавершенииРаботы()); - -КонецПроцедуры - // Заполняет структуру параметров, необходимых для работы клиентского кода // конфигурации. // @@ -754,6 +703,7 @@ Процедура ПриДобавленииПараметровРаботыКлиентаПриЗапуске(Параметры) Экспорт Параметры.Вставить("РезервноеКопированиеИБ", НастройкиРезервногоКопирования(Истина)); + Параметры.Вставить("РезервноеКопированиеИБПриЗавершенииРаботы", ПараметрыПриЗавершенииРаботы()); КонецПроцедуры @@ -836,7 +786,8 @@ // Процедура ПриЗаполненииСпискаТекущихДел(ТекущиеДела) Экспорт - Если ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент() Тогда // В веб-клиенте не поддерживается. + Если ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент() + Или ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда Возврат; КонецЕсли; @@ -851,13 +802,15 @@ КонецЕсли; НастройкиРезервногоКопирования = НастройкиРезервногоКопирования(); + Если НастройкиРезервногоКопирования = Неопределено Тогда + Возврат; + КонецЕсли; ВариантОповещения = НастройкиРезервногоКопирования.ПараметрОповещения; // Процедура вызывается только при наличии подсистемы "Текущие дела", поэтому здесь // не делается проверка существования подсистемы. Разделы = МодульТекущиеДелаСервер.РазделыДляОбъекта(Метаданные.Обработки.НастройкаРезервногоКопированияИБ.ПолноеИмя()); - НеобходимоВыполнитьРезервноеКопирование = НеобходимостьАвтоматическогоРезервногоКопирования(); Для Каждого Раздел Из Разделы Цикл Если Не ОтключеноУведомлениеОНастройкеРезервногоКопирования Тогда diff --git a/SSL/src/CommonModules/РезервноеКопированиеОбластейДанных/Module.bsl b/SSL/src/CommonModules/РезервноеКопированиеОбластейДанных/Module.bsl index fdc207342..132bb1276 100644 --- a/SSL/src/CommonModules/РезервноеКопированиеОбластейДанных/Module.bsl +++ b/SSL/src/CommonModules/РезервноеКопированиеОбластейДанных/Module.bsl @@ -173,7 +173,7 @@ // Процедура ПриЗаполненииТаблицыПараметровИБ(ТаблицаПараметров) Экспорт - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.БазоваяФункциональностьВМоделиСервиса") Тогда МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса"); СтрокаПараметра = МодульРаботаВМоделиСервиса.ДобавитьКонстантуВТаблицуПараметровИБ(ТаблицаПараметров, "ПоддержкаРезервногоКопирования"); КонецЕсли; diff --git a/SSL/src/CommonModules/РезервноеКопированиеОбластейДанныхДанныеФормИнтерфейс/Module.bsl b/SSL/src/CommonModules/РезервноеКопированиеОбластейДанныхДанныеФормИнтерфейс/Module.bsl index 373ff5615..1f9aa05ec 100644 --- a/SSL/src/CommonModules/РезервноеКопированиеОбластейДанныхДанныеФормИнтерфейс/Module.bsl +++ b/SSL/src/CommonModules/РезервноеКопированиеОбластейДанныхДанныеФормИнтерфейс/Module.bsl @@ -38,7 +38,7 @@ Функция Реализация() Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РезервноеКопированиеОбластейДанныхМС") Тогда - Возврат ОбщегоНазначения.ОбщийМодуль("РезервноеКопированиеОбластейДанныхДанныеФормРеализацияИБ"); + Возврат ОбщегоНазначения.ОбщийМодуль("РезервноеКопированиеОбластейДанныхДанныеФормИнтерфейс"); Иначе Возврат ОбщегоНазначения.ОбщийМодуль("РезервноеКопированиеОбластейДанныхДанныеФормРеализацияWebСервис"); КонецЕсли; diff --git a/SSL/src/CommonModules/РезервноеКопированиеОбластейДанныхДанныеФормРеализацияWebСервис/Module.bsl b/SSL/src/CommonModules/РезервноеКопированиеОбластейДанныхДанныеФормРеализацияWebСервис/Module.bsl index 38e8955a3..09547d52b 100644 --- a/SSL/src/CommonModules/РезервноеКопированиеОбластейДанныхДанныеФормРеализацияWebСервис/Module.bsl +++ b/SSL/src/CommonModules/РезервноеКопированиеОбластейДанныхДанныеФормРеализацияWebСервис/Module.bsl @@ -78,9 +78,16 @@ ИмяПользователя = РаботаВМоделиСервиса.ИмяСлужебногоПользователяМенеджераСервиса(); ПарольПользователя = РаботаВМоделиСервиса.ПарольСлужебногоПользователяМенеджераСервиса(); - Прокси = ОбщегоНазначения.WSПрокси(АдресСервиса, "http://www.1c.ru/1cFresh/ZoneBackupControl/1.0.2.1", - "ZoneBackupControl_1_0_2_1", , ИмяПользователя, ПарольПользователя, 10); - + ПараметрыПодключения = ОбщегоНазначения.ПараметрыПодключенияWSПрокси(); + ПараметрыПодключения.АдресWSDL = АдресСервиса; + ПараметрыПодключения.URIПространстваИмен = "http://www.1c.ru/1cFresh/ZoneBackupControl/1.0.2.1"; + ПараметрыПодключения.ИмяСервиса = "ZoneBackupControl_1_0_2_1"; + ПараметрыПодключения.ИмяПользователя = ИмяПользователя; + ПараметрыПодключения.Пароль = ПарольПользователя; + ПараметрыПодключения.Таймаут = 10; + + Прокси = ОбщегоНазначения.СоздатьWSПрокси(ПараметрыПодключения); + Возврат Прокси; КонецФункции diff --git a/SSL/src/CommonModules/РезервноеКопированиеОбластейДанныхПовтИсп/Module.bsl b/SSL/src/CommonModules/РезервноеКопированиеОбластейДанныхПовтИсп/Module.bsl index 87d1b8495..ad361c037 100644 --- a/SSL/src/CommonModules/РезервноеКопированиеОбластейДанныхПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/РезервноеКопированиеОбластейДанныхПовтИсп/Module.bsl @@ -69,9 +69,16 @@ ИмяПользователя = РаботаВМоделиСервиса.ИмяСлужебногоПользователяМенеджераСервиса(); ПарольПользователя = РаботаВМоделиСервиса.ПарольСлужебногоПользователяМенеджераСервиса(); - Прокси = ОбщегоНазначения.WSПрокси(АдресСервиса, "http://www.1c.ru/SaaS/1.0/WS", - "ZoneBackupControl", , ИмяПользователя, ПарольПользователя, 10); - + ПараметрыПодключения = ОбщегоНазначения.ПараметрыПодключенияWSПрокси(); + ПараметрыПодключения.АдресWSDL = АдресСервиса; + ПараметрыПодключения.URIПространстваИмен = "http://www.1c.ru/SaaS/1.0/WS"; + ПараметрыПодключения.ИмяСервиса = "ZoneBackupControl"; + ПараметрыПодключения.ИмяПользователя = ИмяПользователя; + ПараметрыПодключения.Пароль = ПарольПользователя; + ПараметрыПодключения.Таймаут = 10; + + Прокси = ОбщегоНазначения.СоздатьWSПрокси(ПараметрыПодключения); + Возврат Прокси; КонецФункции diff --git a/SSL/src/CommonModules/СклонениеПредставленийОбъектов/Module.bsl b/SSL/src/CommonModules/СклонениеПредставленийОбъектов/Module.bsl index 7f67f9024..139c16d96 100644 --- a/SSL/src/CommonModules/СклонениеПредставленийОбъектов/Module.bsl +++ b/SSL/src/CommonModules/СклонениеПредставленийОбъектов/Module.bsl @@ -10,15 +10,15 @@ // Только для работы на ОС Windows. // // Параметры: -// ФИО - Строка - Строка, в которой содержится ФИО для склонения -// Падеж - Число - падеж, в который необходимо просклонять представление объекта -// 1 - Именительный -// 2 - Родительный -// 3 - Дательный -// 4 - Винительный -// 5 - Творительный -// 6 - Предложный -// Объект - ОбъектСклонения - Ссылка на объект, реквизит которого склоняется +// ФИО - Строка - Строка, в которой содержится ФИО для склонения. +// Падеж - Число - падеж, в который необходимо просклонять представление объекта. +// 1 - Именительный. +// 2 - Родительный. +// 3 - Дательный. +// 4 - Винительный. +// 5 - Творительный. +// 6 - Предложный. +// Объект - ОбъектСклонения - Ссылка на объект, реквизит которого склоняется. // Пол - Число - Число - пол физического лица, // 1 - мужской, // 2 - женский. @@ -32,18 +32,18 @@ КонецФункции -// Склоняет представление объекта +// Склоняет представление объекта. // Только для работы на ОС Windows. // // Параметры: -// Представление - Строка - Строка, в которой содержится ФИО для склонения -// Падеж - Число - падеж, в который необходимо просклонять представление объекта -// 1 - Именительный -// 2 - Родительный -// 3 - Дательный -// 4 - Винительный -// 5 - Творительный -// 6 - Предложный +// Представление - Строка - Строка, в которой содержится ФИО для склонения. +// Падеж - Число - падеж, в который необходимо просклонять представление объекта. +// 1 - Именительный. +// 2 - Родительный. +// 3 - Дательный. +// 4 - Винительный. +// 5 - Творительный. +// 6 - Предложный. // Объект - ОбъектСклонения - Ссылка на объект, реквизит которого склоняется. // // Возвращаемое значение: @@ -58,8 +58,8 @@ // Выполняет с формой действия, необходимые для подключения подсистемы Склонения. // // Параметры: -// Форма - УправляемаяФорма - форма для подключения механизма склонения -// Представление - Строка - Строка для склонения +// Форма - УправляемаяФорма - форма для подключения механизма склонения. +// Представление - Строка - Строка для склонения. // ИмяОсновногоРеквизитаФормы - Строка - Имя основного реквизита формы. // Процедура ПриСозданииНаСервере(Форма, Представление, ИмяОсновногоРеквизитаФормы = "Объект") Экспорт @@ -81,13 +81,13 @@ КонецПроцедуры -// Обработчик события ПриЗаписиНаСервере управляемой формы объекта для склонения +// Обработчик события ПриЗаписиНаСервере управляемой формы объекта для склонения. // // Параметры: -// Форма - Управляемая форма - форма объекта склонения -// Представление - Строка - Строка для склонения -// Объект - ОбъектСклонения - Объект для склонения -// ЭтоФИО - Булево - Признак склонения ФИО +// Форма - Управляемая форма - форма объекта склонения. +// Представление - Строка - Строка для склонения. +// Объект - ОбъектСклонения - Объект для склонения. +// ЭтоФИО - Булево - Признак склонения ФИО. // Пол - Число - Пол физического лица (в случае склонения ФИО) // 1 - мужской // 2 - женский. @@ -106,7 +106,7 @@ КонецПроцедуры -// Устанавливает признак доступности сервиса склонения +// Устанавливает признак доступности сервиса склонения. // // Параметры: // Доступность - Булево - Признак доступности сервиса склонения. @@ -132,12 +132,12 @@ // ФИО - Строка - фамилия, имя и отчество в именительном падеже, // которые необходимо просклонять. // Падеж - Число - падеж, в который необходимо поставить ФИО: -// 1 - Именительный -// 2 - Родительный -// 3 - Дательный -// 4 - Винительный -// 5 - Творительный -// 6 - Предложный +// 1 - Именительный. +// 2 - Родительный. +// 3 - Дательный. +// 4 - Винительный. +// 5 - Творительный. +// 6 - Предложный. // Результат - Строка - в этот параметр помещается результат склонения. // Если ФИО не удалось просклонять, то возвращается значение ФИО. // Пол - Число - пол физического лица, 1 - мужской, 2 - женский. @@ -196,7 +196,7 @@ КонецФункции -// Определяет доступен ли сервис склонения +// Определяет доступен ли сервис склонения. // // Возвращаемое значение: // Булево - Истина, если веб-сервис склонения доступен. @@ -217,24 +217,24 @@ #Область СлужебныйПрограммныйИнтерфейс -// Склоняет переданную фразу по всем падежам +// Склоняет переданную фразу по всем падежам. // // Параметры: -// Представление - Строка - Строка для склонения -// ЭтоФИО - Булево - Признак склонения ФИО +// Представление - Строка - Строка для склонения. +// ЭтоФИО - Булево - Признак склонения ФИО. // Пол - Число - Пол физического лица (в случае склонения ФИО) // 1 - мужской -// 2 - женский +// 2 - женский. // ПоказыватьСообщения - Булево - Признак, определяющий нужно ли показывать пользователю сообщения об ошибках. // // Возвращаемое значение: // Структура - со свойствами: -// *ИменительныйПадеж - Строка -// *РодительныйПадеж - Строка +// *ИменительныйПадеж - Строка. +// *РодительныйПадеж - Строка. // *ДательныйПадеж - Строка -// *ВинительныйПадеж - Строка -// *ТворительныйПадеж - Строка -// *ПредложныйПадеж - Строка +// *ВинительныйПадеж - Строка. +// *ТворительныйПадеж - Строка. +// *ПредложныйПадеж - Строка. // Функция ПросклонятьПредставлениеПоВсемПадежам(Представление, ЭтоФИО = Ложь, Пол = Неопределено, ПоказыватьСообщения = Ложь) Экспорт @@ -250,24 +250,24 @@ КонецФункции -// Получает данные склонения по всем падежам +// Получает данные склонения по всем падежам. // // Параметры: -// Представление - Строка - Строка для склонения -// ЭтоФИО - Булево - Признак склонения ФИО +// Представление - Строка - Строка для склонения. +// ЭтоФИО - Булево - Признак склонения ФИО. // Пол - Число - Пол физического лица (в случае склонения ФИО) // 1 - мужской -// 2 - женский +// 2 - женский. // ПоказыватьСообщения - Булево - Признак, определяющий нужно ли показывать пользователю сообщения об ошибках. // // Возвращаемое значение: // Структура - со свойствами: -// *ИменительныйПадеж - Строка -// *РодительныйПадеж - Строка +// *ИменительныйПадеж - Строка. +// *РодительныйПадеж - Строка. // *ДательныйПадеж - Строка -// *ВинительныйПадеж - Строка -// *ТворительныйПадеж - Строка -// *ПредложныйПадеж - Строка +// *ВинительныйПадеж - Строка. +// *ТворительныйПадеж - Строка. +// *ПредложныйПадеж - Строка. // Функция ДанныеСклонения(Представление, ЭтоФИО = Ложь, Пол = Неопределено, ПоказыватьСообщения = Ложь) Экспорт @@ -339,18 +339,18 @@ #Область СлужебныеПроцедурыИФункции -// Склоняет представление объекта +// Склоняет представление объекта. // Только для работы на ОС Windows. // // Параметры: -// Объект - ОбъектСклонения - Ссылка на объект, в котором содержится реквизит для склонения -// ВидПредставления - Строка - Имя реквизита объекта для склонения -// Падеж - Число - падеж, в который необходимо просклонять представление объекта -// 1 - Именительный -// 2 - Родительный -// 3 - Дательный -// 4 - Винительный -// 5 - Творительный +// Объект - ОбъектСклонения - Ссылка на объект, в котором содержится реквизит для склонения. +// ВидПредставления - Строка - Имя реквизита объекта для склонения. +// Падеж - Число - падеж, в который необходимо просклонять представление объекта. +// 1 - Именительный. +// 2 - Родительный. +// 3 - Дательный. +// 4 - Винительный. +// 5 - Творительный. // 6 - Предложный. // // Возвращаемое значение: @@ -370,7 +370,7 @@ Возврат ПредставлениеВПадеже; КонецЕсли; - // сначала получаем склонения из регистра СклоненияПредставленийОбъектов + // сначала получаем склонения из регистра СклоненияПредставленийОбъектов. СтруктураСклоненияИзРегистра = СклоненияИзРегистра(Представление, Объект); Если СтруктураСклоненияИзРегистра <> Неопределено И ЗначениеЗаполнено(СтруктураСклоненияИзРегистра[ИмяПадежа]) Тогда @@ -379,10 +379,10 @@ Если ЭтоФИО Тогда - // Если склоняем ФИО, то используем компоненту склонения ФИО + // Если склоняем ФИО, то используем компоненту склонения ФИО. ПросклонятьСПомощьюКомпоненты(Представление, СтруктураСклонения, , Пол); - // Запись в регистр СклоненияПредставленийОбъектов успешного склонения + // Запись в регистр СклоненияПредставленийОбъектов успешного склонения. Если ЗначениеЗаполнено(Объект) Тогда ЗаписатьВРегистрСклонения(Представление, Объект, СтруктураСклонения); КонецЕсли; @@ -409,7 +409,7 @@ УстановитьДоступностьСервисаСклонения(Истина); - // Запись в регистр СклоненияПредставленийОбъектов успешного склонения + // Запись в регистр СклоненияПредставленийОбъектов успешного склонения. Если ЗначениеЗаполнено(Объект) Тогда ЗаписатьВРегистрСклонения(Представление, Объект, СтруктураСклонения); КонецЕсли; @@ -511,26 +511,28 @@ Результат = Неопределено; + ПараметрыПодключения = ОбщегоНазначения.ПараметрыПодключенияWSПрокси(); + ПараметрыПодключения.АдресWSDL = URL; + ПараметрыПодключения.URIПространстваИмен = "http://morpher.ru/"; + ПараметрыПодключения.ИмяСервиса = "WebService"; + ПараметрыПодключения.Таймаут = 10; + Попытка - + Если ЗначениеЗаполнено(Логин) Тогда - Пароль = ""; УстановитьПривилегированныйРежим(Истина); Пароль = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(ОбщегоНазначения.ИдентификаторОбъектаМетаданных("РегистрСведений.СклоненияПредставленийОбъектов"), "ПарольДоступаКСервисуMorpher"); УстановитьПривилегированныйРежим(Ложь); - Морфер = ОбщегоНазначения.WSПрокси(URL, "http://morpher.ru/", "WebService", - "WebServiceSoap", Логин, Пароль, 10); - - Иначе - Морфер = ОбщегоНазначения.WSПрокси(URL, "http://morpher.ru/", "WebService", - "WebServiceSoap", "", "", 10); - КонецЕсли; + ПараметрыПодключения.ИмяПользователя = Логин; + ПараметрыПодключения.Пароль = Пароль; + КонецЕсли; + Морфер = ОбщегоНазначения.СоздатьWSПрокси(ПараметрыПодключения); Результат = Морфер.GetXml(Представление); - + Исключение Если НЕ ПустаяСтрока(СообщениеОбОшибке) Тогда diff --git a/SSL/src/CommonModules/СклонениеПредставленийОбъектовВызовСервера/Module.bsl b/SSL/src/CommonModules/СклонениеПредставленийОбъектовВызовСервера/Module.bsl index 21b7c522f..3b0a4fcf5 100644 --- a/SSL/src/CommonModules/СклонениеПредставленийОбъектовВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/СклонениеПредставленийОбъектовВызовСервера/Module.bsl @@ -6,15 +6,15 @@ #Область СлужебныеПроцедурыИФункции -// Склоняет переданную фразу по всем падежам +// Склоняет переданную фразу по всем падежам. // // Параметры: -// Форма - Управляемая форма - форма объекта склонения -// Представление - Строка - Строка для склонения -// ЭтоФИО - Булево - Признак склонения ФИО +// Форма - Управляемая форма - форма объекта склонения. +// Представление - Строка - Строка для склонения. +// ЭтоФИО - Булево - Признак склонения ФИО. // Пол - Число - Пол физического лица (в случае склонения ФИО) // 1 - мужской -// 2 - женский +// 2 - женский. // ПоказыватьСообщения - Булево - Признак, определяющий нужно ли показывать пользователю сообщения об ошибках. // Процедура ПросклонятьПредставлениеПоВсемПадежам(Представление, Склонения, ЭтоФИО = Ложь, Пол = Неопределено, ПоказыватьСообщения = Ложь) Экспорт diff --git a/SSL/src/CommonModules/СклонениеПредставленийОбъектовКлиент/Module.bsl b/SSL/src/CommonModules/СклонениеПредставленийОбъектовКлиент/Module.bsl index 0237e00fd..761edfcf6 100644 --- a/SSL/src/CommonModules/СклонениеПредставленийОбъектовКлиент/Module.bsl +++ b/SSL/src/CommonModules/СклонениеПредставленийОбъектовКлиент/Module.bsl @@ -6,7 +6,7 @@ #Область ПрограммныйИнтерфейс -// Обработчик события ПриИзменении элемента формы, подлежащего склонению +// Обработчик события ПриИзменении элемента формы, подлежащего склонению. // // Параметры: // Форма - Управляемая форма - форма, содержащая элемент, подлежащий склонению. @@ -18,15 +18,15 @@ КонецПроцедуры -// Склоняет переданную фразу по всем падежам +// Склоняет переданную фразу по всем падежам. // // Параметры: -// Форма - Управляемая форма - форма объекта склонения -// Представление - Строка - Строка для склонения -// ЭтоФИО - Булево - Признак склонения ФИО +// Форма - Управляемая форма - форма объекта склонения. +// Представление - Строка - Строка для склонения. +// ЭтоФИО - Булево - Признак склонения ФИО. // Пол - Число - Пол физического лица (в случае склонения ФИО) // 1 - мужской -// 2 - женский +// 2 - женский. // ПоказыватьСообщения - Булево - Признак, определяющий нужно ли показывать пользователю сообщения об ошибках. // Процедура ПросклонятьПредставлениеПоВсемПадежам(Форма, Представление, ЭтоФИО = Ложь, Пол = Неопределено, ПоказыватьСообщения = Ложь) Экспорт @@ -38,12 +38,12 @@ КонецПроцедуры -// Обработчик команды "Склонения" формы объекта склонения +// Обработчик команды "Склонения" формы объекта склонения. // // Параметры: -// Форма - Управляемая форма - форма объекта склонения -// Представление - Строка - Строка для склонения -// ЭтоФИО - Булево - Признак склонения ФИО +// Форма - Управляемая форма - форма объекта склонения. +// Представление - Строка - Строка для склонения. +// ЭтоФИО - Булево - Признак склонения ФИО. // Пол - Число - Пол физического лица (в случае склонения ФИО) // 1 - мужской // 2 - женский. @@ -64,7 +64,6 @@ ОткрытьФорму("ОбщаяФорма.Склонения", СтруктураПараметров, Форма, , , , Оповещение); - Форма.ИзмененоПредставление = Ложь; Форма.ОтключитьОбработчикОжидания("Подключаемый_ПросклонятьПредставлениеПоВсемПадежам"); КонецПроцедуры @@ -73,7 +72,7 @@ #Область СлужебныеПроцедурыИФункции -// Завершение процедуры ОбработатьКомандуСклонения +// Завершение процедуры ОбработатьКомандуСклонения. // Процедура ОткрытьФормуСклоненияЗавершение(РезультатРедактирования, ДополнительныеПараметры) Экспорт @@ -82,6 +81,7 @@ Форма.Склонения = Новый ФиксированнаяСтруктура(РезультатРедактирования); Форма.Модифицированность = Истина; + Форма.ИзмененоПредставление = Ложь; КонецЕсли; diff --git a/SSL/src/CommonModules/СклонениеПредставленийОбъектовКлиентСервер/Module.bsl b/SSL/src/CommonModules/СклонениеПредставленийОбъектовКлиентСервер/Module.bsl index 5d4bee7d1..0aaaf0a87 100644 --- a/SSL/src/CommonModules/СклонениеПредставленийОбъектовКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/СклонениеПредставленийОбъектовКлиентСервер/Module.bsl @@ -6,16 +6,16 @@ #Область СлужебныеПроцедурыИФункции -// Возвращает пустую структуру склонения +// Возвращает пустую структуру склонения. // // Возвращаемое значение: // Структура - со свойствами: -// *ИменительныйПадеж - Строка -// *РодительныйПадеж - Строка +// *ИменительныйПадеж - Строка. +// *РодительныйПадеж - Строка. // *ДательныйПадеж - Строка -// *ВинительныйПадеж - Строка -// *ТворительныйПадеж - Строка -// *ПредложныйПадеж - Строка +// *ВинительныйПадеж - Строка. +// *ТворительныйПадеж - Строка. +// *ПредложныйПадеж - Строка. // Функция СтруктураСклонения() Экспорт diff --git a/SSL/src/CommonModules/СоединенияИБ/Module.bsl b/SSL/src/CommonModules/СоединенияИБ/Module.bsl index 8175424b7..c9587a76c 100644 --- a/SSL/src/CommonModules/СоединенияИБ/Module.bsl +++ b/SSL/src/CommonModules/СоединенияИБ/Module.bsl @@ -169,6 +169,50 @@ КонецФункции +// Возвращает информацию о текущих соединениях с информационной базой. +// При необходимости записывает сообщение в журнал регистрации. +// +Функция ИнформацияОСоединениях(ПолучатьСтрокуСоединения = Ложь, + СообщенияДляЖурналаРегистрации = Неопределено, ПортКластера = 0) Экспорт + + УстановитьПривилегированныйРежим(Истина); + + Результат = Новый Структура(); + Результат.Вставить("НаличиеАктивныхСоединений", Ложь); + Результат.Вставить("НаличиеCOMСоединений", Ложь); + Результат.Вставить("НаличиеСоединенияКонфигуратором", Ложь); + Результат.Вставить("ЕстьАктивныеПользователи", Ложь); + + Если ПользователиИнформационнойБазы.ПолучитьПользователей().Количество() > 0 Тогда + Результат.ЕстьАктивныеПользователи = Истина; + КонецЕсли; + + Если ПолучатьСтрокуСоединения Тогда + Результат.Вставить("СтрокаСоединенияИнформационнойБазы", + СоединенияИБКлиентСервер.ПолучитьСтрокуСоединенияИнформационнойБазы()); + КонецЕсли; + + ЖурналРегистрации.ЗаписатьСобытияВЖурналРегистрации(СообщенияДляЖурналаРегистрации); + + МассивСеансов = ПолучитьСеансыИнформационнойБазы(); + Если МассивСеансов.Количество() = 1 Тогда + Возврат Результат; + КонецЕсли; + + Результат.НаличиеАктивныхСоединений = Истина; + + Для Каждого Сеанс Из МассивСеансов Цикл + Если ВРег(Сеанс.ИмяПриложения) = ВРег("COMConnection") Тогда // COM соединение + Результат.НаличиеCOMСоединений = Истина; + ИначеЕсли ВРег(Сеанс.ИмяПриложения) = ВРег("Designer") Тогда // Конфигуратор + Результат.НаличиеСоединенияКонфигуратором = Истина; + КонецЕсли; + КонецЦикла; + + Возврат Результат; + +КонецФункции + //////////////////////////////////////////////////////////////////////////////// // Блокировка сеансов областей данных. @@ -410,50 +454,6 @@ КонецФункции -// Возвращает информацию о текущих соединениях с информационной базой. -// При необходимости записывает сообщение в журнал регистрации. -// -Функция ИнформацияОСоединениях(ПолучатьСтрокуСоединения = Ложь, - СообщенияДляЖурналаРегистрации = Неопределено, ПортКластера = 0) Экспорт - - УстановитьПривилегированныйРежим(Истина); - - Результат = Новый Структура(); - Результат.Вставить("НаличиеАктивныхСоединений", Ложь); - Результат.Вставить("НаличиеCOMСоединений", Ложь); - Результат.Вставить("НаличиеСоединенияКонфигуратором", Ложь); - Результат.Вставить("ЕстьАктивныеПользователи", Ложь); - - Если ПользователиИнформационнойБазы.ПолучитьПользователей().Количество() > 0 Тогда - Результат.ЕстьАктивныеПользователи = Истина; - КонецЕсли; - - Если ПолучатьСтрокуСоединения Тогда - Результат.Вставить("СтрокаСоединенияИнформационнойБазы", - СоединенияИБКлиентСервер.ПолучитьСтрокуСоединенияИнформационнойБазы()); - КонецЕсли; - - ЖурналРегистрации.ЗаписатьСобытияВЖурналРегистрации(СообщенияДляЖурналаРегистрации); - - МассивСеансов = ПолучитьСеансыИнформационнойБазы(); - Если МассивСеансов.Количество() = 1 Тогда - Возврат Результат; - КонецЕсли; - - Результат.НаличиеАктивныхСоединений = Истина; - - Для Каждого Сеанс Из МассивСеансов Цикл - Если ВРег(Сеанс.ИмяПриложения) = ВРег("COMConnection") Тогда // COM соединение - Результат.НаличиеCOMСоединений = Истина; - ИначеЕсли ВРег(Сеанс.ИмяПриложения) = ВРег("Designer") Тогда // Конфигуратор - Результат.НаличиеСоединенияКонфигуратором = Истина; - КонецЕсли; - КонецЦикла; - - Возврат Результат; - -КонецФункции - //////////////////////////////////////////////////////////////////////////////// // Объявление служебных событий, к которым можно добавлять обработчики. @@ -467,11 +467,11 @@ // КЛИЕНТСКИЕ СОБЫТИЯ. - // Вызывается при завершении сеанса средствами подсистемы ЗавершениеРаботыПользователей. + // Вызывается при завершении сеансов средствами подсистемы ЗавершениеРаботыПользователей. // // Параметры: // ФормаВладелец - УправляемаяФорма, из которой выполняется завершение сеанса, - // НомерСеанса - Число (8,0,+) - номер сеанса, который будет завершен, + // МассивСеансов - Массив(Число (8,0,+)) - массив номеров сеанса, который будет завершен, // СтандартнаяОбработка - Булево, флаг выполнения стандартной обработки завершения сеанса // (подключение к агенту сервера через COM-соединение или сервер администрирования с // запросом параметров подключения к кластеру у текущего пользователя). Может быть @@ -487,9 +487,9 @@ // следует. // // Синтаксис: - // Процедура ПриЗавершенииСеанса(ФормаВладелец, Знач НомерСеанса, СтандартнаяОбработка, Знач ОповещениеПослеЗавершенияСеанса = Неопределено) Экспорт + // Процедура ПриЗавершенииСеансов(ФормаВладелец, Знач МассивСеансов, СтандартнаяОбработка, Знач ОповещениеПослеЗавершенияСеансов = Неопределено) Экспорт // - КлиентскиеСобытия.Добавить("СтандартныеПодсистемы.ЗавершениеРаботыПользователей\ПриЗавершенииСеанса"); + КлиентскиеСобытия.Добавить("СтандартныеПодсистемы.ЗавершениеРаботыПользователей\ПриЗавершенииСеансов"); КонецПроцедуры @@ -555,7 +555,7 @@ // Процедура ПриЗаполненииТаблицыПараметровИБ(Знач ТаблицаПараметров) Экспорт - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.БазоваяФункциональностьВМоделиСервиса") Тогда МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса"); МодульРаботаВМоделиСервиса.ДобавитьКонстантуВТаблицуПараметровИБ(ТаблицаПараметров, "СообщениеБлокировкиПриОбновленииКонфигурации"); КонецЕсли; diff --git a/SSL/src/CommonModules/СоединенияИБВызовСервера/Module.bsl b/SSL/src/CommonModules/СоединенияИБВызовСервера/Module.bsl index d26ef296e..beba1f3a8 100644 --- a/SSL/src/CommonModules/СоединенияИБВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/СоединенияИБВызовСервера/Module.bsl @@ -90,7 +90,7 @@ КонецПроцедуры -// Возвращает номер текущего сеанса информационной базы +// Возвращает номер текущего сеанса информационной базы. // Функция НомерТекущегоСеанса() Экспорт diff --git a/SSL/src/CommonModules/СоединенияИБГлобальный/Module.bsl b/SSL/src/CommonModules/СоединенияИБГлобальный/Module.bsl index 6e87d2f47..5ddadb2ea 100644 --- a/SSL/src/CommonModules/СоединенияИБГлобальный/Module.bsl +++ b/SSL/src/CommonModules/СоединенияИБГлобальный/Module.bsl @@ -17,7 +17,7 @@ Если Не БлокировкаУстановлена Тогда Возврат; КонецЕсли; - + ВремяНачалаБлокировки = ТекущийРежим.Начало; ВремяОкончанияБлокировки = ТекущийРежим.Конец; @@ -100,23 +100,7 @@ КонецЕсли; БлокировкаУстановлена = ТекущийРежим.Установлена; - Если НЕ БлокировкаУстановлена Тогда - Возврат; - КонецЕсли; - - ИнтервалОтключения = - ТекущийРежим.ИнтервалОжиданияЗавершенияРаботыПользователей; - ПринудительноеЗавершение = НЕ ЗначениеЗаполнено(ВремяНачалаБлокировки) - ИЛИ ВремяНачалаБлокировки - ТекущийМомент <= ИнтервалОтключения; - - Если НЕ ПринудительноеЗавершение Тогда - - ТекстСообщения = НСтр("ru = 'Активных сеансов: %1. - |Следующая проверка сеансов будет выполнена через минуту.'"); - ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, КоличествоСеансов); - ПоказатьОповещениеПользователя(НСтр("ru = 'Завершение работы пользователей'"), - "e1cib/app/Обработка.БлокировкаРаботыПользователей", - ТекстСообщения, БиблиотекаКартинок.Информация32); - Оповестить("ЗавершениеРаботыПользователей", Новый Структура("Статус,КоличествоСеансов", "Выполняется", КоличествоСеансов)); + Если Не БлокировкаУстановлена Тогда Возврат; КонецЕсли; @@ -125,14 +109,12 @@ ОтключитьОбработчикОжидания("ЗавершитьРаботуПользователей"); Попытка - ПараметрыАдминистрирования = СоединенияИБКлиент.СохраненныеПараметрыАдминистрирования(); СоединенияИБКлиентСервер.УдалитьВсеСеансыКромеТекущего(ПараметрыАдминистрирования); СоединенияИБКлиент.СохранитьПараметрыАдминистрирования(Неопределено); - Исключение СоединенияИБКлиент.УстановитьПризнакРаботаПользователейЗавершается(Ложь); - ПоказатьОповещениеПользователя(НСтр("ru = 'Завершение работы пользователей'"), + ПоказатьОповещениеПользователя(НСтр("ru = 'Завершение работы пользователей'"), "e1cib/app/Обработка.БлокировкаРаботыПользователей", НСтр("ru = 'Завершение сеансов не выполнено. Подробности см. в Журнале регистрации.'"), БиблиотекаКартинок.Предупреждение32); ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(СоединенияИБКлиентСервер.СобытиеЖурналаРегистрации(), diff --git a/SSL/src/CommonModules/СоединенияИБКлиент/Module.bsl b/SSL/src/CommonModules/СоединенияИБКлиент/Module.bsl index 6dd2f5d49..4046af3c7 100644 --- a/SSL/src/CommonModules/СоединенияИБКлиент/Module.bsl +++ b/SSL/src/CommonModules/СоединенияИБКлиент/Module.bsl @@ -120,7 +120,7 @@ // См. использование в процедуре ЗавершитьРаботуПользователей(). ИначеЕсли ЗначениеПараметраЗапуска = ВРег("ЗавершитьРаботуПользователей") Тогда - Если Не СоединенияИБВызовСервера.УстановитьБлокировкуСоединений() Тогда + Если НЕ СоединенияИБВызовСервера.УстановитьБлокировкуСоединений() Тогда ТекстСообщения = НСтр("ru = 'Параметр запуска ЗавершитьРаботуПользователей не отработан. Нет прав на администрирование информационной базы.'"); ПоказатьПредупреждение(,ТекстСообщения); Возврат Ложь; @@ -231,7 +231,7 @@ КонецПроцедуры -// Открывает форму блокировки работы пользователей +// Открывает форму блокировки работы пользователей. // Процедура ПриОткрытииФормыБлокировкиРаботыПользователей(Оповещение = Неопределено, ПараметрыФормы = Неопределено) Экспорт diff --git a/SSL/src/CommonModules/СообщенияУдаленногоАдминистрированияРеализация/Module.bsl b/SSL/src/CommonModules/СообщенияУдаленногоАдминистрированияРеализация/Module.bsl index e2729a801..e88e62092 100644 --- a/SSL/src/CommonModules/СообщенияУдаленногоАдминистрированияРеализация/Module.bsl +++ b/SSL/src/CommonModules/СообщенияУдаленногоАдминистрированияРеализация/Module.bsl @@ -25,13 +25,13 @@ УстановитьПривилегированныйРежим(Истина); - ЯзыкПользователя = ПолучитьЯзыкПоКоду(КодЯзыка); + ЯзыкПользователя = ЯзыкПоКоду(КодЯзыка); Почта = АдресЭлектроннойПочты; Телефон = НомерТелефона; - СтруктураАдресаЭП = ПолучитьСтруктуруАдресаЭлектроннойПочты(Почта); + СтруктураАдресаЭП = СоставПочтовогоАдреса(Почта); НачатьТранзакцию(); Попытка @@ -262,7 +262,7 @@ ПользовательОбластиДанных = ПолучитьПользователяОбластиПоИдентификаторуПользователяСервиса(ИдентификаторПользователяСервиса); - ЯзыкПользователяИБ = ПолучитьЯзыкПоКоду(КодЯзыка); + ЯзыкПользователяИБ = ЯзыкПоКоду(КодЯзыка); ОписаниеПользователяИБ = Пользователи.НовоеОписаниеПользователяИБ(); ОписаниеПользователяИБ.Вставить("Действие", "Записать"); @@ -551,7 +551,7 @@ // Создание администраторов в области. Для каждого ОписаниеПользователя Из Параметры.UsersList.Item Цикл - ЯзыкПользователя = ПолучитьЯзыкПоКоду(ОписаниеПользователя.Language); + ЯзыкПользователя = ЯзыкПоКоду(ОписаниеПользователя.Language); Почта = ""; Телефон = ""; @@ -563,7 +563,7 @@ Телефон = ОписаниеПользователя.Phone; КонецЕсли; - СтруктураАдресаЭП = ПолучитьСтруктуруАдресаЭлектроннойПочты(Почта); + СтруктураАдресаЭП = СоставПочтовогоАдреса(Почта); Запрос = Новый Запрос; Запрос.Текст = @@ -683,7 +683,7 @@ #Область СлужебныеПроцедурыИФункции -Функция ПолучитьЯзыкПоКоду(Знач КодЯзыка) +Функция ЯзыкПоКоду(Знач КодЯзыка) Если ЗначениеЗаполнено(КодЯзыка) Тогда @@ -705,16 +705,16 @@ КонецФункции -Функция ПолучитьСтруктуруАдресаЭлектроннойПочты(Знач АдресЭлектроннойПочты) +Функция СоставПочтовогоАдреса(Знач АдресЭП) - Если ЗначениеЗаполнено(АдресЭлектроннойПочты) Тогда + Если ЗначениеЗаполнено(АдресЭП) Тогда Попытка - СтруктураАдресаЭП = ОбщегоНазначенияКлиентСервер.РазобратьСтрокуСПочтовымиАдресами(АдресЭлектроннойПочты); + СтруктураАдресаЭП = ОбщегоНазначенияКлиентСервер.РазобратьСтрокуСПочтовымиАдресами(АдресЭП); Исключение ШаблонСообщения = НСтр("ru = 'Указан некорректный адрес электронной почты: %1 |Ошибка: %2'"); - ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонСообщения, АдресЭлектроннойПочты, ИнформацияОбОшибке().Описание); + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонСообщения, АдресЭП, ИнформацияОбОшибке().Описание); ВызватьИсключение(ТекстСообщения); КонецПопытки; diff --git a/SSL/src/CommonModules/СтандартныеПодсистемыВызовСервера/Module.bsl b/SSL/src/CommonModules/СтандартныеПодсистемыВызовСервера/Module.bsl index aa9c4edd7..972a5fdbe 100644 --- a/SSL/src/CommonModules/СтандартныеПодсистемыВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/СтандартныеПодсистемыВызовСервера/Module.bsl @@ -3,20 +3,6 @@ // //////////////////////////////////////////////////////////////////////////////// -#Область ПрограммныйИнтерфейс - -// Записать настройку подтверждения завершения работы программы -// для текущего пользователя. -// -// Параметры: -// Значение - Булево - значение настройки. -// -Процедура СохранитьНастройкуПодтвержденияПриЗавершенииПрограммы(Значение) Экспорт - ОбщегоНазначения.ХранилищеОбщихНастроекСохранить("ОбщиеНастройкиПользователя", "ЗапрашиватьПодтверждениеПриЗавершенииПрограммы", Значение); -КонецПроцедуры - -#КонецОбласти - #Область СлужебныйПрограммныйИнтерфейс // Возвращает структуру параметров, необходимых для работы клиентского кода @@ -27,60 +13,20 @@ Функция ПараметрыРаботыКлиентаПриЗапуске(Параметры) Экспорт ЗапомнитьВременныеПараметры(Параметры); + ОбработатьПараметрыКлиентаНаСервере(Параметры); Если Параметры.ПолученныеПараметрыКлиента <> Неопределено Тогда Если НЕ Параметры.Свойство("ПропуститьОчисткуСкрытияРабочегоСтола") Тогда - СкрытьРабочийСтолПриНачалеРаботыСистемы(Ложь); + // Обновить состояние скрытия рабочего стола, если при предыдущем + // запуске произошел сбой до момента штатного восстановления. + СкрытьРабочийСтолПриНачалеРаботыСистемы(Неопределено); КонецЕсли; КонецЕсли; - ПривилегированныйРежимУстановленПриЗапуске = ПривилегированныйРежим(); - - УстановитьПривилегированныйРежим(Истина); - Если ПараметрыСеанса.ПараметрыКлиентаНаСервере.Количество() = 0 Тогда - // Первый серверный вызов с клиента при запуске. - ПараметрыКлиента = Новый Соответствие; - ПараметрыКлиента.Вставить("ПараметрЗапуска", Параметры.ПараметрЗапуска); - ПараметрыКлиента.Вставить("СтрокаСоединенияИнформационнойБазы", Параметры.СтрокаСоединенияИнформационнойБазы); - ПараметрыКлиента.Вставить("ПривилегированныйРежимУстановленПриЗапуске", ПривилегированныйРежимУстановленПриЗапуске); - ПараметрыКлиента.Вставить("ЭтоВебКлиент", Параметры.ЭтоВебКлиент); - ПараметрыКлиента.Вставить("ЭтоВебКлиентПодMacOS", Параметры.ЭтоВебКлиентПодMacOS); - ПараметрыКлиента.Вставить("ЭтоLinuxКлиент", Параметры.ЭтоLinuxКлиент); - ПараметрыКлиента.Вставить("ИспользуемыйКлиент", Параметры.ИспользуемыйКлиент); - ПараметрыКлиента.Вставить("ОперативнаяПамять", Параметры.ОперативнаяПамять); - ПараметрыКлиента.Вставить("КаталогПрограммы", Параметры.КаталогПрограммы); - ПараметрыСеанса.ПараметрыКлиентаНаСервере = Новый ФиксированноеСоответствие(ПараметрыКлиента); - - Если СтрНайти(НРег(Параметры.ПараметрЗапуска), НРег("ЗапуститьОбновлениеИнформационнойБазы")) > 0 Тогда - ОбновлениеИнформационнойБазыСлужебный.УстановитьЗапускОбновленияИнформационнойБазы(Истина); - КонецЕсли; - Справочники.ВерсииРасширений.ПеререгистрироватьВерсиюРасширенийВРежимеОтладки(); - - Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда - Если ПланыОбмена.ГлавныйУзел() <> Неопределено - Или ЗначениеЗаполнено(Константы.ГлавныйУзел.Получить()) Тогда - // Предотвращение случайного обновления предопределенных данных в подчиненном узле РИБ: - // - при запуске с временно отмененным главным узлом; - // - при реструктуризации данных в процессе восстановления узла. - Если ПолучитьОбновлениеПредопределенныхДанныхИнформационнойБазы() - <> ОбновлениеПредопределенныхДанных.НеОбновлятьАвтоматически Тогда - УстановитьОбновлениеПредопределенныхДанныхИнформационнойБазы( - ОбновлениеПредопределенныхДанных.НеОбновлятьАвтоматически); - КонецЕсли; - Если ПланыОбмена.ГлавныйУзел() <> Неопределено - И Не ЗначениеЗаполнено(Константы.ГлавныйУзел.Получить()) Тогда - // Сохранение главного узла для возможности восстановления. - СтандартныеПодсистемыСервер.СохранитьГлавныйУзел(); - - КонецЕсли; - КонецЕсли; - КонецЕсли; - КонецЕсли; - УстановитьПривилегированныйРежим(Ложь); - Если НЕ СтандартныеПодсистемыСервер.ДобавитьПараметрыРаботыКлиентаПриЗапуске(Параметры) Тогда - ФиксированныеПараметры = ФиксированныеПараметрыКлиентаБезВременныхПараметров(Параметры); - Возврат ФиксированныеПараметры; + // Фиксируем текущую дату непосредственно перед самым возвратом на клиент. + Параметры.Вставить("ТекущаяУниверсальнаяДатаВМиллисекундахНаСервере", ТекущаяУниверсальнаяДатаВМиллисекундах()); + Возврат ФиксированныеПараметрыКлиентаБезВременныхПараметров(Параметры); КонецЕсли; ПользователиСлужебный.ПриДобавленииПараметровРаботыКлиентаПриЗапуске(Параметры, Неопределено, Ложь); @@ -99,8 +45,9 @@ Параметры.Вставить(Параметр.Ключ, Параметр.Значение); КонецЦикла; - ФиксированныеПараметры = ФиксированныеПараметрыКлиентаБезВременныхПараметров(Параметры); - Возврат ФиксированныеПараметры; + // Фиксируем текущую дату непосредственно перед самым возвратом на клиент. + Параметры.Вставить("ТекущаяУниверсальнаяДатаВМиллисекундахНаСервере", ТекущаяУниверсальнаяДатаВМиллисекундах()); + Возврат ФиксированныеПараметрыКлиентаБезВременныхПараметров(Параметры); КонецФункции @@ -144,18 +91,62 @@ // в модуле СтандартныеПодсистемыКлиент. // // Параметры: -// Скрыть - Булево. Если установить Истина, состояние будет установлено, +// Скрыть - Булево - если установить Истина, состояние будет установлено, // если установить Ложь, состояние будет снято (после этого // можно выполнить метод ОбновитьИнтерфейс и формы рабочего // стола будут пересозданы). // Процедура СкрытьРабочийСтолПриНачалеРаботыСистемы(Скрыть = Истина) Экспорт + Если ТекущийРежимЗапуска() = Неопределено Тогда + Возврат; + КонецЕсли; + УстановитьПривилегированныйРежим(Истина); + // Сохранение или восстановление состава форм начальной страницы. + КлючОбъекта = "Общее/НастройкиНачальнойСтраницы"; + КлючОбъектаХранения = "Общее/НастройкиНачальнойСтраницыПередОчисткой"; + СохраненныеНастройки = ХранилищеСистемныхНастроек.Загрузить(КлючОбъектаХранения, ""); + + Если ТипЗнч(Скрыть) <> Тип("Булево") Тогда + Скрыть = ТипЗнч(СохраненныеНастройки) = Тип("ХранилищеЗначения"); + КонецЕсли; + + Если Скрыть Тогда + ТекущиеНастройки = ХранилищеСистемныхНастроек.Загрузить(КлючОбъекта); + Если ТипЗнч(СохраненныеНастройки) <> Тип("ХранилищеЗначения") Тогда + СохраняемыеНастройки = Новый ХранилищеЗначения(ТекущиеНастройки); + ХранилищеСистемныхНастроек.Сохранить(КлючОбъектаХранения, "", СохраняемыеНастройки); + КонецЕсли; + Если ТипЗнч(ТекущиеНастройки) <> Тип("НастройкиНачальнойСтраницы") + Или ТекущиеНастройки.ПолучитьСоставФорм().ПраваяКолонка.Количество() <> 0 + Или ТекущиеНастройки.ПолучитьСоставФорм().ЛеваяКолонка.Количество() <> 1 + Или ТекущиеНастройки.ПолучитьСоставФорм().ЛеваяКолонка[0] <> "ОбщаяФорма.ПустойРабочийСтол" Тогда + + СоставФорм = Новый СоставФормНачальнойСтраницы; + СоставФорм.ЛеваяКолонка.Добавить("ОбщаяФорма.ПустойРабочийСтол"); + ВременныеНастройки = Новый НастройкиНачальнойСтраницы; + ВременныеНастройки.УстановитьСоставФорм(СоставФорм); + ХранилищеСистемныхНастроек.Сохранить(КлючОбъекта, "", ВременныеНастройки); + КонецЕсли; + Иначе + Если ТипЗнч(СохраненныеНастройки) = Тип("ХранилищеЗначения") Тогда + СохраненныеНастройки = СохраненныеНастройки.Получить(); + Если СохраненныеНастройки = Неопределено Тогда + ХранилищеСистемныхНастроек.Удалить(КлючОбъекта, Неопределено, + ПользователиИнформационнойБазы.ТекущийПользователь().Имя); + Иначе + ХранилищеСистемныхНастроек.Сохранить(КлючОбъекта, "", СохраненныеНастройки); + КонецЕсли; + ХранилищеСистемныхНастроек.Удалить(КлючОбъектаХранения, Неопределено, + ПользователиИнформационнойБазы.ТекущийПользователь().Имя); + КонецЕсли; + КонецЕсли; + ТекущиеПараметры = Новый Соответствие(ПараметрыСеанса.ПараметрыКлиентаНаСервере); - Если Скрыть = Истина Тогда + Если Скрыть Тогда ТекущиеПараметры.Вставить("СкрытьРабочийСтолПриНачалеРаботыСистемы", Истина); ИначеЕсли ТекущиеПараметры.Получить("СкрытьРабочийСтолПриНачалеРаботыСистемы") <> Неопределено Тогда @@ -166,60 +157,10 @@ КонецПроцедуры -// Возвращает тип платформы строкой. -Функция ТипПлатформыСервераСтрокой() Экспорт - - СистемнаяИнфо = Новый СистемнаяИнформация; - - Если СистемнаяИнфо.ТипПлатформы = ТипПлатформы.Linux_x86 Тогда - Возврат "Linux_x86"; - - ИначеЕсли СистемнаяИнфо.ТипПлатформы = ТипПлатформы.Linux_x86_64 Тогда - Возврат "Linux_x86_64"; - - ИначеЕсли СистемнаяИнфо.ТипПлатформы = ТипПлатформы.Windows_x86 Тогда - Возврат "Windows_x86"; - - ИначеЕсли СистемнаяИнфо.ТипПлатформы = ТипПлатформы.Windows_x86_64 Тогда - Возврат "Windows_x86_64"; - - ИначеЕсли СистемнаяИнфо.ТипПлатформы = Неопределено Тогда - Возврат Неопределено; - КонецЕсли; - - ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Неизвестный тип платформы ""%1""'"), Строка(СистемнаяИнфо.ТипПлатформы)); - -КонецФункции - #КонецОбласти #Область СлужебныеПроцедурыИФункции -// Возвращает структуру параметров, необходимых для работы клиентского кода -// конфигурации при завершении работы. -// -Функция ПараметрыРаботыКлиентаПриЗавершении() Экспорт - - Параметры = Новый Структура(); - - ОбработчикиСобытия = ОбщегоНазначения.ОбработчикиСлужебногоСобытия( - "СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПараметровРаботыКлиентаПриЗавершении"); - - Для каждого Обработчик Из ОбработчикиСобытия Цикл - Обработчик.Модуль.ПриДобавленииПараметровРаботыКлиентаПриЗавершении(Параметры); - КонецЦикла; - - ПрикладныеПараметры = Новый Структура; - ОбщегоНазначенияПереопределяемый.ПараметрыРаботыКлиентаПриЗавершении(ПрикладныеПараметры); - - Для Каждого Параметр Из ПрикладныеПараметры Цикл - Параметры.Вставить(Параметр.Ключ, Параметр.Значение); - КонецЦикла; - - Возврат ОбщегоНазначения.ФиксированныеДанные(Параметры); - -КонецФункции - // Только для внутреннего использования. Процедура ПриОшибкеПолученияОбработчиковСобытия() Экспорт @@ -302,6 +243,13 @@ Возврат ОбъектМетаданных.ПолноеИмя(); КонецФункции +// См. СтандартныеПодсистемыСервер.ВерсияБиблиотеки. +Функция ВерсияБиблиотеки() Экспорт + + Возврат СтандартныеПодсистемыСервер.ВерсияБиблиотеки(); + +КонецФункции + //////////////////////////////////////////////////////////////////////////////// // Работа с предопределенными данными. @@ -327,6 +275,54 @@ КонецПроцедуры +Процедура ОбработатьПараметрыКлиентаНаСервере(Знач Параметры) + + ПривилегированныйРежимУстановленПриЗапуске = ПривилегированныйРежим(); + УстановитьПривилегированныйРежим(Истина); + + Если ПараметрыСеанса.ПараметрыКлиентаНаСервере.Количество() = 0 Тогда + // Первый серверный вызов с клиента при запуске. + ПараметрыКлиента = Новый Соответствие; + ПараметрыКлиента.Вставить("ПараметрЗапуска", Параметры.ПараметрЗапуска); + ПараметрыКлиента.Вставить("СтрокаСоединенияИнформационнойБазы", Параметры.СтрокаСоединенияИнформационнойБазы); + ПараметрыКлиента.Вставить("ПривилегированныйРежимУстановленПриЗапуске", ПривилегированныйРежимУстановленПриЗапуске); + ПараметрыКлиента.Вставить("ЭтоВебКлиент", Параметры.ЭтоВебКлиент); + ПараметрыКлиента.Вставить("ЭтоВебКлиентПодMacOS", Параметры.ЭтоВебКлиентПодMacOS); + ПараметрыКлиента.Вставить("ЭтоLinuxКлиент", Параметры.ЭтоLinuxКлиент); + ПараметрыКлиента.Вставить("ЭтоOSXКлиент", Параметры.ЭтоOSXКлиент); + ПараметрыКлиента.Вставить("ЭтоWindowsКлиент", Параметры.ЭтоWindowsКлиент); + ПараметрыКлиента.Вставить("ИспользуемыйКлиент", Параметры.ИспользуемыйКлиент); + ПараметрыКлиента.Вставить("ОперативнаяПамять", Параметры.ОперативнаяПамять); + ПараметрыКлиента.Вставить("КаталогПрограммы", Параметры.КаталогПрограммы); + ПараметрыКлиента.Вставить("ИдентификаторКлиента", Параметры.ИдентификаторКлиента); + ПараметрыСеанса.ПараметрыКлиентаНаСервере = Новый ФиксированноеСоответствие(ПараметрыКлиента); + + Если СтрНайти(НРег(Параметры.ПараметрЗапуска), НРег("ЗапуститьОбновлениеИнформационнойБазы")) > 0 Тогда + ОбновлениеИнформационнойБазыСлужебный.УстановитьЗапускОбновленияИнформационнойБазы(Истина); + КонецЕсли; + + Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда + Если ПланыОбмена.ГлавныйУзел() <> Неопределено + Или ЗначениеЗаполнено(Константы.ГлавныйУзел.Получить()) Тогда + // Предотвращение случайного обновления предопределенных данных в подчиненном узле РИБ: + // - при запуске с временно отмененным главным узлом; + // - при реструктуризации данных в процессе восстановления узла. + Если ПолучитьОбновлениеПредопределенныхДанныхИнформационнойБазы() + <> ОбновлениеПредопределенныхДанных.НеОбновлятьАвтоматически Тогда + УстановитьОбновлениеПредопределенныхДанныхИнформационнойБазы( + ОбновлениеПредопределенныхДанных.НеОбновлятьАвтоматически); + КонецЕсли; + Если ПланыОбмена.ГлавныйУзел() <> Неопределено + И Не ЗначениеЗаполнено(Константы.ГлавныйУзел.Получить()) Тогда + // Сохранение главного узла для возможности восстановления. + СтандартныеПодсистемыСервер.СохранитьГлавныйУзел(); + КонецЕсли; + КонецЕсли; + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + Функция ФиксированныеПараметрыКлиентаБезВременныхПараметров(Параметры) ПараметрыКлиента = Параметры; diff --git a/SSL/src/CommonModules/СтандартныеПодсистемыГлобальный/Module.bsl b/SSL/src/CommonModules/СтандартныеПодсистемыГлобальный/Module.bsl index 11ff54230..0306909b3 100644 --- a/SSL/src/CommonModules/СтандартныеПодсистемыГлобальный/Module.bsl +++ b/SSL/src/CommonModules/СтандартныеПодсистемыГлобальный/Module.bsl @@ -47,4 +47,17 @@ СтандартныеПодсистемыКлиент.ОповеститьОНехваткеПамяти(); КонецПроцедуры +// Отображает всплывающее предупреждение о необходимости выполнения дополнительных +// действий перед завершением работы системы. +// +Процедура ПоказатьПредупрежденияПриЗавершенииРаботы() Экспорт + Предупреждения = СтандартныеПодсистемыКлиент.ПараметрКлиента("ПредупрежденияПриЗавершенииРаботы"); + Пояснение = НСтр("ru = 'Выполнить дополнительные действия и завершить работу'"); + Если Предупреждения.Количество() = 1 И Не ПустаяСтрока(Предупреждения[0].ТекстГиперссылки) Тогда + Пояснение = Предупреждения[0].ТекстГиперссылки; + КонецЕсли; + ПоказатьОповещениеПользователя(, "e1cib/command/ОбщаяКоманда.ПредупрежденияПриЗавершенииРаботы", + Пояснение, БиблиотекаКартинок.Информация32); +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/CommonModules/СтандартныеПодсистемыКлиент/Module.bsl b/SSL/src/CommonModules/СтандартныеПодсистемыКлиент/Module.bsl index 6fc812551..181407f53 100644 --- a/SSL/src/CommonModules/СтандартныеПодсистемыКлиент/Module.bsl +++ b/SSL/src/CommonModules/СтандартныеПодсистемыКлиент/Module.bsl @@ -1,4 +1,4 @@ -//////////////////////////////////////////////////////////////////////////////// + // Подсистема "Базовая функциональность". // //////////////////////////////////////////////////////////////////////////////// @@ -8,8 +8,8 @@ //////////////////////////////////////////////////////////////////////////////// // Процедуры и функции интерактивной работы. -// Устанавливает заголовок главного окна приложения, используя представление текущего пользователя, -// значение константы ЗаголовокПриложения и заголовок приложения по умолчанию. +// Устанавливает заголовок главного окна приложения, используя значение константы +// ЗаголовокПриложения и заголовок приложения по умолчанию. // // Параметры: // ПриЗапуске - Булево - Истина, если вызывается при начале работы программы. @@ -21,22 +21,21 @@ Если ПараметрыКлиента.ДоступноИспользованиеРазделенныхДанных Тогда ПредставлениеЗаголовка = ПараметрыКлиента.ЗаголовокПриложения; - ПредставлениеПользователя = ПараметрыКлиента.ПредставлениеПользователя; ПредставлениеКонфигурации = ПараметрыКлиента.ПодробнаяИнформация; Если ПустаяСтрока(СокрЛП(ПредставлениеЗаголовка)) Тогда Если ПараметрыКлиента.Свойство("ПредставлениеОбластиДанных") Тогда - ШаблонЗаголовка = "%1 / %2 / %3"; - ЗаголовокПриложения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонЗаголовка, ПараметрыКлиента.ПредставлениеОбластиДанных, - ПредставлениеКонфигурации, ПредставлениеПользователя); - Иначе ШаблонЗаголовка = "%1 / %2"; - ЗаголовокПриложения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонЗаголовка, ПредставлениеКонфигурации, ПредставлениеПользователя); + ЗаголовокПриложения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонЗаголовка, ПараметрыКлиента.ПредставлениеОбластиДанных, + ПредставлениеКонфигурации); + Иначе + ШаблонЗаголовка = "%1"; + ЗаголовокПриложения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонЗаголовка, ПредставлениеКонфигурации); КонецЕсли; Иначе - ШаблонЗаголовка = "%1 / %2 / %3"; - ЗаголовокПриложения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонЗаголовка, СокрЛП(ПредставлениеЗаголовка), - ПредставлениеПользователя, ПредставлениеКонфигурации); + ШаблонЗаголовка = "%1 / %2"; + ЗаголовокПриложения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонЗаголовка, + СокрЛП(ПредставлениеЗаголовка), ПредставлениеКонфигурации); КонецЕсли; Иначе ШаблонЗаголовка = "%1 / %2"; @@ -157,6 +156,28 @@ КонецФункции +// Вызывается при необходимости открыть форму списка активных пользователей, +// которые в данный момент времени работают с системой. +// +Процедура ОткрытьСписокАктивныхПользователей(ПараметрыФормы = Неопределено, ВладелецФормы = Неопределено) Экспорт + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ЗавершениеРаботыПользователей") Тогда + + ИмяФормы = ""; + МодульСоединенияИБКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("СоединенияИБКлиент"); + МодульСоединенияИБКлиент.ПриОпределенииФормыАктивныхПользователей(ИмяФормы); + ОткрытьФорму(ИмяФормы, ПараметрыФормы, ВладелецФормы); + + Иначе + + ПоказатьПредупреждение(, + НСтр("ru = 'Для того чтобы открыть список активных пользователей, перейдите в меню + |Все функции - Стандартные - Активные пользователи.'")); + + КонецЕсли; + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Запуск и завершение работы. @@ -184,6 +205,8 @@ // Процедура ПередНачаломРаботыСистемы(Знач ОповещениеЗавершения = Неопределено) Экспорт + ВремяНачала = ТекущаяУниверсальнаяДатаВМиллисекундах(); + Если ПараметрыПриложения = Неопределено Тогда ПараметрыПриложения = Новый Соответствие; КонецЕсли; @@ -249,8 +272,8 @@ ВыполнитьОбработкуОповещения(Параметры.ОбработкаПродолжения); Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности") Тогда - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - МодульОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени("ОбщееВремяЗапускаПриложения"); + МодульОценкаПроизводительностиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиент"); + МодульОценкаПроизводительностиКлиент.НачатьЗамерВремениСоСмещением(ВремяНачала, Истина, "ОбщееВремяЗапускаПриложения"); КонецЕсли; КонецПроцедуры @@ -342,30 +365,21 @@ // либо потребовалась интерактивная обработка. В случае успешного взаимодействия // с пользователем, завершение работы будет продолжено. // -// ОповещениеЗавершения - ОписаниеОповещения - не задается при вызове из обработчика ПередЗавершениемРаботыСистемы -// модулей управляемого и обычного приложения. В других случаях, при завершении будет вызвано -// оповещение с параметром типа Структура со свойством: -// - Отказ - Булево - Ложь, если завершение работы выполнено успешно, -// или Истина, если завершение работы следует отменить; -// -Процедура ПередЗавершениемРаботыСистемы(Отказ = Ложь, Знач ОповещениеЗавершения = Неопределено) Экспорт +Процедура ПередЗавершениемРаботыСистемы(Отказ = Ложь, ТекстПредупреждения = "") Экспорт Если ОтключенаЛогикаНачалаРаботыСистемы() Тогда Возврат; КонецЕсли; - ПараметрыПриЗапускеИЗавершенииПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеИЗавершенииПрограммы"]; + ПараметрыПриЗапускеПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеПрограммы"]; - Если ПараметрыПриЗапускеИЗавершенииПрограммы.Свойство("СкрытьРабочийСтолПриНачалеРаботыСистемы") Тогда + Если ПараметрыПриЗапускеПрограммы.Свойство("СкрытьРабочийСтолПриНачалеРаботыСистемы") Тогда // Произошла попытка закрытия до окончания запуска. #Если ВебКлиент Тогда // В веб-клиенте это возможно в штатном случае (при закрытии страницы в целом), // поэтому закрытие блокируется, так как его все равно можно выполнить принудительно, // а в случае случайного закрытия у пользователя должна быть возможность остаться на странице. - // Исключением является выход из области данных, т.е. когда "ОповещениеЗавершения <> Неопределено". - Если ОповещениеЗавершения = Неопределено Тогда - Отказ = Истина; - КонецЕсли; + Отказ = Истина; #Иначе // Не в веб-клиенте это возможно в случае ошибок в немодальной последовательности запуска. // То есть нет ни одного окна блокирующего весь интерфейс. Закрытие нужно разрешить, @@ -375,85 +389,60 @@ Возврат; КонецЕсли; - ОбщегоНазначенияКлиентСервер.ПроверитьПараметр( - "СтандартныеПодсистемыКлиент.ПередЗавершениемРаботыСистемы", "Отказ", Отказ, Тип("Булево")); + // В режиме работы толстый клиент (обычное приложение) не выводится список предупреждений. +#Если ТолстыйКлиентОбычноеПриложение Тогда + Возврат; +#КонецЕсли - Если ОповещениеЗавершения <> Неопределено Тогда - ОбщегоНазначенияКлиентСервер.ПроверитьПараметр("СтандартныеПодсистемыКлиент.ПередЗавершениемРаботыСистемы", - "ОповещениеЗавершения", ОповещениеЗавершения, Тип("ОписаниеОповещения")); + Если ПараметрыПриложения["СтандартныеПодсистемы.ПропуститьПредупреждениеПередЗавершениемРаботыСистемы"] = Истина Тогда + Возврат; КонецЕсли; - Если ОповещениеЗавершения = Неопределено Тогда - Если ПараметрыПриЗапускеИЗавершенииПрограммы.Свойство("ДействияПередЗавершениемРаботыСистемыВыполнены") Тогда - ПараметрыПриЗапускеИЗавершенииПрограммы.Удалить("ДействияПередЗавершениемРаботыСистемыВыполнены"); + Если Не ПараметрКлиента("ДоступноИспользованиеРазделенныхДанных") Тогда + Возврат; + КонецЕсли; + + Предупреждения = Новый Массив; + + ОбработчикиСобытия = ОбщегоНазначенияКлиент.ОбработчикиСлужебногоСобытия( + "СтандартныеПодсистемы.БазоваяФункциональность\ПередЗавершениемРаботыСистемы"); + + Для Каждого Обработчик Из ОбработчикиСобытия Цикл + Обработчик.Модуль.ПередЗавершениемРаботыСистемы(Отказ, Предупреждения); + КонецЦикла; + + ОбщегоНазначенияКлиентПереопределяемый.ПередЗавершениемРаботыСистемы(Отказ, Предупреждения); + + Если Предупреждения.Количество() = 0 Тогда + Если Не ПараметрКлиента("ЗапрашиватьПодтверждениеПриЗавершенииПрограммы") Тогда Возврат; КонецЕсли; - КонецЕсли; - - // При очередном выходе из приложения параметры клиента при завершении нужно получать заново. - Если ПараметрыПриЗапускеИЗавершенииПрограммы.Свойство("ПараметрыРаботыКлиентаПриЗавершении") Тогда - ПараметрыПриЗапускеИЗавершенииПрограммы.Удалить("ПараметрыРаботыКлиентаПриЗавершении"); - КонецЕсли; - - Параметры = Новый Структура; - - // Внешние параметры описания результата. - Параметры.Вставить("Отказ", Ложь); - - // Внешние параметры управления выполнением. - Параметры.Вставить("ИнтерактивнаяОбработка", Неопределено); // ОписаниеОповещения. - Параметры.Вставить("ОбработкаПродолжения", Неопределено); // ОписаниеОповещения. - Параметры.Вставить("НепрерывноеВыполнение", Истина); - - // Внутренние параметры. - Параметры.Вставить("ОповещениеЗавершения", ОповещениеЗавершения); - Параметры.Вставить("ОбработкаЗавершения", Новый ОписаниеОповещения( - "ДействияПередЗавершениемРаботыСистемыОбработкаЗавершения", ЭтотОбъект, Параметры)); - - Параметры.Вставить("НомерСледующегоОбработчика", 1); - Параметры.Вставить("ОбработкаПродолжения", Новый ОписаниеОповещения( - "ДействияПередЗавершениемРаботыСистемыВОбработчикахСлужебногоСобытия", ЭтотОбъект, Параметры)); - - ВыполнитьОбработкуОповещения(Параметры.ОбработкаПродолжения); - - Если Параметры.Отказ Или НЕ Параметры.НепрерывноеВыполнение Тогда + ТекстПредупреждения = НСтр("ru = 'Завершить работу с программой?'"); Отказ = Истина; + Иначе + Отказ = Истина; + МассивПредупреждений = Новый Массив; + Для Каждого Предупреждение Из Предупреждения Цикл + МассивПредупреждений.Добавить(Предупреждение.ТекстПредупреждения); + КонецЦикла; + Если Не ПустаяСтрока(ТекстПредупреждения) Тогда + ТекстПредупреждения = ТекстПредупреждения + Символы.ПС; + КонецЕсли; + ТекстПредупреждения = ТекстПредупреждения + СтрСоединить(МассивПредупреждений, Символы.ПС); + ПодключитьОбработчикОжидания("ПоказатьПредупрежденияПриЗавершенииРаботы", 0.1, Истина); КонецЕсли; + УстановитьПараметрКлиента("ПредупрежденияПриЗавершенииРаботы", Предупреждения); КонецПроцедуры -// Возвращает структуру параметров, необходимых для работы -// конфигурации на клиенте при завершении, т.е. в обработчиках событий. -// - ПередЗавершениемРаботыСистемы, -// - ПриЗавершенииРаботыСистемы. -// -// Возвращаемое значение: -// ФиксированнаяСтруктура - структура параметров работы клиента при завершении. -// -Функция ПараметрыРаботыКлиентаПриЗавершении() Экспорт - - ПараметрыПриЗапускеИЗавершенииПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеИЗавершенииПрограммы"]; - - Если НЕ ПараметрыПриЗапускеИЗавершенииПрограммы.Свойство("ПараметрыРаботыКлиентаПриЗавершении") Тогда - ПараметрыПриЗапускеИЗавершенииПрограммы.Вставить("ПараметрыРаботыКлиентаПриЗавершении", - СтандартныеПодсистемыВызовСервера.ПараметрыРаботыКлиентаПриЗавершении()); - КонецЕсли; - - Возврат ПараметрыПриЗапускеИЗавершенииПрограммы.ПараметрыРаботыКлиентаПриЗавершении; - -КонецФункции - -#КонецОбласти - -#Область СлужебныйПрограммныйИнтерфейс - // Возвращает новую структуру параметров для вывода предупреждения перед завершением работы программы. // // Возвращаемое значение: // Структура - со свойствами: -// ТекстФлажка - Строка - текст флажка. -// ПоясняющийТекст - Строка - текст, выводимый в форме сверху управляющего элемента (флажок или гиперссылка). -// ТекстГиперссылки - Строка - текст гиперссылки. +// ТекстФлажка - Строка - текст флажка. +// ПоясняющийТекст - Строка - текст, выводимый в форме сверху управляющего элемента (флажок или гиперссылка). +// ТекстПредупреждения - Строка - текст, выводимый в платформенном окне при завершении работы. +// ТекстГиперссылки - Строка - текст гиперссылки. // РасширеннаяПодсказка - Строка - текст подсказки, выводимый по кнопке справа от управляющего элемента (флажок или // гиперссылка). // Приоритет - Число - определяет относительный порядок вывода предупреждений в форме (чем больше, тем выше). @@ -470,7 +459,9 @@ // предупреждений оказывается только одно данное предупреждение. // * ПараметрыПрикладнойФормыПредупреждения - Структура - произвольная структура // параметров для вышеописанной формы. -Функция ПредупреждениеПриЗавершениеРаботы() Экспорт +// * РежимОткрытияОкна - РежимОткрытияОкнаФормы - Содержит варианты открытия управляемой формы. +// +Функция ПредупреждениеПриЗавершенииРаботы() Экспорт ДействиеПриУстановленномФлажке = Новый Структура; ДействиеПриУстановленномФлажке.Вставить("Форма", ""); @@ -481,10 +472,12 @@ ДействиеПриНажатииГиперссылки.Вставить("ПараметрыФормы", Неопределено); ДействиеПриНажатииГиперссылки.Вставить("ПрикладнаяФормаПредупреждения", ""); ДействиеПриНажатииГиперссылки.Вставить("ПараметрыПрикладнойФормыПредупреждения", Неопределено); + ДействиеПриНажатииГиперссылки.Вставить("РежимОткрытияОкна", Неопределено); ПараметрыПредупреждения = Новый Структура; ПараметрыПредупреждения.Вставить("ТекстФлажка", ""); ПараметрыПредупреждения.Вставить("ПоясняющийТекст", ""); + ПараметрыПредупреждения.Вставить("ТекстПредупреждения", ""); ПараметрыПредупреждения.Вставить("РасширеннаяПодсказка", ""); ПараметрыПредупреждения.Вставить("ТекстГиперссылки", ""); ПараметрыПредупреждения.Вставить("ДействиеПриУстановленномФлажке", ДействиеПриУстановленномФлажке); @@ -494,7 +487,55 @@ Возврат ПараметрыПредупреждения; -КонецФункции +КонецФункции + +#КонецОбласти + +#Область СлужебныйПрограммныйИнтерфейс + +Функция ПараметрКлиента(ИмяПараметра = Неопределено) Экспорт + ИмяГлобальногоПараметра = "СтандартныеПодсистемы.ПараметрыКлиента"; + Если ИмяПараметра = Неопределено Тогда + Возврат ПараметрыПриложения[ИмяГлобальногоПараметра]; + Иначе + Возврат ПараметрыПриложения[ИмяГлобальногоПараметра][ИмяПараметра]; + КонецЕсли; +КонецФункции + +Процедура УстановитьПараметрКлиента(ИмяПараметра, Значение) Экспорт + ИмяГлобальногоПараметра = "СтандартныеПодсистемы.ПараметрыКлиента"; + ПараметрыПриложения[ИмяГлобальногоПараметра].Вставить(ИмяПараметра, Значение); +КонецПроцедуры + +Процедура ЗаполнитьПараметрыКлиента(ПараметрыКлиента) Экспорт + + ТекущаяУниверсальнаяДатаВМиллисекундахНаКлиенте = ТекущаяУниверсальнаяДатаВМиллисекундах(); + + ИмяПараметра = "СтандартныеПодсистемы.ПараметрыКлиента"; + Если ТипЗнч(ПараметрыПриложения[ИмяПараметра]) <> Тип("Структура") Тогда + ПараметрыПриложения[ИмяПараметра] = Новый Структура; + ПараметрыПриложения[ИмяПараметра].Вставить("РазделениеВключено"); + ПараметрыПриложения[ИмяПараметра].Вставить("ИнформационнаяБазаФайловая"); + ПараметрыПриложения[ИмяПараметра].Вставить("ОбработчикиКлиентскихСобытий"); + ПараметрыПриложения[ИмяПараметра].Вставить("ЭтоСеансВнешнегоПользователя"); + ПараметрыПриложения[ИмяПараметра].Вставить("АвторизованныйПользователь"); + ПараметрыПриложения[ИмяПараметра].Вставить("ЗапрашиватьПодтверждениеПриЗавершенииПрограммы"); + ПараметрыПриложения[ИмяПараметра].Вставить("ДоступноИспользованиеРазделенныхДанных"); + ПараметрыПриложения[ИмяПараметра].Вставить("ПараметрыАвтономнойРаботы"); + ПараметрыПриложения[ИмяПараметра].Вставить("ПерсональныеНастройкиРаботыСФайлами"); + ПараметрыПриложения[ИмяПараметра].Вставить("КоличествоЗанятыхФайлов"); + ПараметрыПриложения[ИмяПараметра].Вставить("РезервноеКопированиеИБПриЗавершенииРаботы"); + ПараметрыПриложения[ИмяПараметра].Вставить("СмещениеДатыКлиента"); + ПараметрыПриложения[ИмяПараметра].Вставить("КодОсновногоЯзыка"); + Если ПараметрыКлиента.Свойство("ОценкаПроизводительности") Тогда + ПараметрыПриложения[ИмяПараметра].Вставить("ОценкаПроизводительности"); + КонецЕсли; + КонецЕсли; + + ЗаполнитьЗначенияСвойств(ПараметрыПриложения[ИмяПараметра], ПараметрыКлиента); + ПараметрыПриложения[ИмяПараметра]["СмещениеДатыКлиента"] = ПараметрыКлиента.ТекущаяУниверсальнаяДатаВМиллисекундахНаСервере - ТекущаяУниверсальнаяДатаВМиллисекундахНаКлиенте; + +КонецПроцедуры // После предупреждения вызывает процедуру с параметрами Результат, ДополнительныеПараметры. // @@ -504,44 +545,45 @@ // содержит процедуру с двумя параметрами: // Результат, ДополнительныеПараметры. // -// ТекстПредупреждения - Строка - текст предупреждения, который нужно показать. +// ОписаниеПредупреждения - Неопределено - предупреждение не требуется. +// ОписаниеПредупреждения - Строка - текст предупреждения, который нужно показать. +// ОписаниеПредупреждения - Структура - со свойствами: +// * ТекстПредупреждения - Строка - текст предупреждения, который нужно показать. +// * Кнопки - СписокЗначений - для процедуры ПоказатьВопросПользователю. +// * ПараметрыВопроса - Структура - содержит подмножество свойств, +// которые нужно переопределить, из числа +// возвращаемых функцией ПараметрыВопросаПользователю. // -Процедура ПоказатьПредупреждениеИПродолжить(Параметры, ТекстПредупреждения) Экспорт +Процедура ПоказатьПредупреждениеИПродолжить(Параметры, ОписаниеПредупреждения) Экспорт ОповещениеСРезультатом = Параметры.ОбработкаПродолжения; - Если ТекстПредупреждения = Неопределено Тогда + Если ОписаниеПредупреждения = Неопределено Тогда ВыполнитьОбработкуОповещения(ОповещениеСРезультатом); Возврат; КонецЕсли; - + + Кнопки = Новый СписокЗначений; + ПараметрыВопроса = ПараметрыВопросаПользователю(); + ПараметрыВопроса.ПредлагатьБольшеНеЗадаватьЭтотВопрос = Ложь; + ПараметрыВопроса.БлокироватьВесьИнтерфейс = Истина; + ПараметрыВопроса.Картинка = БиблиотекаКартинок.Предупреждение32; + Если Параметры.Отказ Тогда - - Кнопки = Новый СписокЗначений(); - Кнопки.Добавить("Завершить", НСтр("ru = 'Завершить работу'")); - Кнопки.Добавить("Перезапустить", НСтр("ru = 'Перезапустить'")); - - ПараметрыВопроса = ПараметрыВопросаПользователю(); - ПараметрыВопроса.КнопкаПоУмолчанию = "Завершить"; - ПараметрыВопроса.ПредлагатьБольшеНеЗадаватьЭтотВопрос = Ложь; - ПараметрыВопроса.БлокироватьВесьИнтерфейс = Истина; - ПараметрыВопроса.Картинка = БиблиотекаКартинок.Предупреждение32; - - Иначе - - Кнопки = Новый СписокЗначений(); - Кнопки.Добавить("Продолжить", НСтр("ru = 'Продолжить'")); - Если Параметры.Свойство("Перезапустить") Тогда - Кнопки.Добавить("Перезапустить", НСтр("ru = 'Перезапустить'")); - КонецЕсли; Кнопки.Добавить("Завершить", НСтр("ru = 'Завершить работу'")); - - ПараметрыВопроса = ПараметрыВопросаПользователю(); + ПараметрыВопроса.КнопкаПоУмолчанию = "Завершить"; + Иначе + Кнопки.Добавить("Продолжить", НСтр("ru = 'Продолжить'")); + Кнопки.Добавить("Завершить", НСтр("ru = 'Завершить работу'")); ПараметрыВопроса.КнопкаПоУмолчанию = "Продолжить"; - ПараметрыВопроса.ПредлагатьБольшеНеЗадаватьЭтотВопрос = Ложь; - ПараметрыВопроса.БлокироватьВесьИнтерфейс = Истина; - ПараметрыВопроса.Картинка = БиблиотекаКартинок.Предупреждение32; - + КонецЕсли; + + Если ТипЗнч(ОписаниеПредупреждения) = Тип("Структура") Тогда + ТекстПредупреждения = ОписаниеПредупреждения.ТекстПредупреждения; + Кнопки = ОписаниеПредупреждения.Кнопки; + ЗаполнитьЗначенияСвойств(ПараметрыВопроса, ОписаниеПредупреждения.ПараметрыВопроса); + Иначе + ТекстПредупреждения = ОписаниеПредупреждения; КонецЕсли; ОповещениеОЗакрытии = Новый ОписаниеОповещения("ПоказатьПредупреждениеИПродолжитьЗавершение", ЭтотОбъект, Параметры); @@ -585,19 +627,6 @@ ОбщегоНазначенияКлиент.ПоказатьВопросОбУстановкеРасширенияРаботыСФайлами(ОписаниеОповещения); КонецПроцедуры -// Открыть диалог для ввода логина и пароля пользователя Интернет-поддержки. -// -Процедура АвторизоватьНаСайтеПоддержкиПользователей(ВладелецФормы = Неопределено, ОповещениеОЗакрытии = Неопределено) Экспорт - - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда - МодульИнтернетПоддержкаПользователейКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ИнтернетПоддержкаПользователейКлиент"); - МодульИнтернетПоддержкаПользователейКлиент.ПодключитьИнтернетПоддержкуПользователей(ОповещениеОЗакрытии); - Иначе - ОткрытьФорму("ОбщаяФорма.АвторизацияНаСайтеПоддержкиПользователей",, ВладелецФормы,,,, ОповещениеОЗакрытии); - КонецЕсли; - -КонецПроцедуры - // Возвращает имя исполняемого файла в зависимости от вида клиента и версии платформы. // Функция ИмяИсполняемогоФайлаПриложения(ПолучитьФайлаКонфигуратора = Ложь) Экспорт @@ -641,27 +670,41 @@ КонецПроцедуры -// Вызывается при необходимости открыть форму списка активных пользователей, -// которые в данный момент времени работают с системой. +// Проверяет, что текущие данные определены и не являются группировкой. +// Предназначена для обработчиков таблиц формы динамических списков. // -Процедура ОткрытьСписокАктивныхПользователей(ПараметрыФормы = Неопределено, ВладелецФормы = Неопределено) Экспорт +// Параметры: +// ТаблицаИлиТекущиеДанные - ТаблицаФормы - таблица формы динамического списка для проверки текущих данных. +// - Неопределено, ДанныеФормыСтруктура, Структура - текущие данные для проверки. +// +// Возвращаемое значение: +// Булево. +// +Функция ЭтоЭлементДинамическогоСписка(ТаблицаИлиТекущиеДанные) Экспорт - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ЗавершениеРаботыПользователей") Тогда - - ИмяФормы = ""; - МодульСоединенияИБКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("СоединенияИБКлиент"); - МодульСоединенияИБКлиент.ПриОпределенииФормыАктивныхПользователей(ИмяФормы); - ОткрытьФорму(ИмяФормы, ПараметрыФормы, ВладелецФормы); - + Если ТипЗнч(ТаблицаИлиТекущиеДанные) = Тип("ТаблицаФормы") Тогда + ТекущиеДанные = ТаблицаИлиТекущиеДанные.ТекущиеДанные; Иначе - - ПоказатьПредупреждение(, - НСтр("ru = 'Для того чтобы открыть список активных пользователей, перейдите в меню - |Все функции - Стандартные - Активные пользователи.'")); - + ТекущиеДанные = ТаблицаИлиТекущиеДанные; КонецЕсли; -КонецПроцедуры + Если ТипЗнч(ТекущиеДанные) <> Тип("ДанныеФормыСтруктура") + И ТипЗнч(ТекущиеДанные) <> Тип("Структура") Тогда + Возврат Ложь; + КонецЕсли; + + Если ТекущиеДанные.Свойство("ГруппировкаСтроки") Тогда + Возврат Ложь; + КонецЕсли; + + Возврат Истина; + +КонецФункции + +// Проверяет, выполнено ли опасное отключение процедур запуска для целей автоматического тестирования. +Функция ОтключенаЛогикаНачалаРаботыСистемы() Экспорт + Возврат СтрНайти(ПараметрЗапуска, "ОтключитьЛогикуНачалаРаботыСистемы") > 0; +КонецФункции //////////////////////////////////////////////////////////////////////////////// // Табличный документ @@ -755,42 +798,6 @@ //////////////////////////////////////////////////////////////////////////////// // Вывод результата выполнения. -// Выводит результат работы прикладного кода. -// -// Параметры: -// Форма - УправляемаяФорма - Форма, для которой требуется вывод. -// Результат - Структура - Результат выполнения операции, который необходимо вывести. -// * Шаги - СписокЗначений - Информация, которую необходимо вывести на клиенте. -// Шаги добавляются только при помощи процедур: -// ** СтандартныеПодсистемыКлиентСервер.ОповеститьДинамическиеСписки() -// ** СтандартныеПодсистемыКлиентСервер.РазвернутьУзлыДерева() -// ** СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение() -// ** СтандартныеПодсистемыКлиентСервер.ВывестиСообщение() -// ** СтандартныеПодсистемыКлиентСервер.ВывестиОповещение() -// ** СтандартныеПодсистемыКлиентСервер.ВывестиФорму() -// Ручное редактирование коллекции Шаги не рекомендуется. -// ОбработчикЗавершения - ОписаниеОповещения - Описание процедуры, -// которая будет вызвана после завершения показа (со значением Неопределено). -// -Процедура ПоказатьРезультатВыполнения(Форма, Результат, ОбработчикЗавершения = Неопределено) Экспорт - Сценарий = Новый Структура; - Сценарий.Вставить("Шаги", ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Результат, "Шаги")); - Сценарий.Вставить("Форма", Форма); - Сценарий.Вставить("ОбработчикЗавершения", ОбработчикЗавершения); - Если ТипЗнч(Сценарий.Шаги) <> Тип("СписокЗначений") Тогда - ВернутьРезультат(Сценарий); - Возврат; - КонецЕсли; - Сценарий.Вставить("КоличествоШагов", Сценарий.Шаги.Количество()); - Сценарий.Вставить("НомерШага", 0); - Сценарий.Вставить("ТекущийШаг", Неопределено); - Сценарий.Вставить("Параметры", Неопределено); - Сценарий.Вставить("МестоОстановки", Неопределено); - Сценарий.Вставить("Результат", Неопределено); - - ВыполнитьСценарий(Сценарий); -КонецПроцедуры - // Выводит предупреждение или текст ошибки. // // Параметры: @@ -805,11 +812,9 @@ // Процедура ВывестиПредупреждение(Форма, ПараметрыПредупреждения, ОбработчикЗавершения = Неопределено) Экспорт Контекст = Новый Структура("Текст, Подробно, Заголовок, ПутьКРеквизитуФормы, Форма, ОбработчикЗавершения"); + ЗаполнитьЗначенияСвойств(Контекст, ПараметрыПредупреждения); Контекст.Форма = Форма; Контекст.ОбработчикЗавершения = ОбработчикЗавершения; - Если ПараметрыПредупреждения <> Неопределено Тогда - ЗаполнитьЗначенияСвойств(Контекст, ПараметрыПредупреждения); - КонецЕсли; Если Не ЗначениеЗаполнено(Контекст.Текст) Тогда ВывестиПредупреждениеЗавершение(Неопределено, Контекст); @@ -822,100 +827,63 @@ КнопкаПоУмолчанию = КодВозвратаДиалога.ОК; Кнопки = Новый СписокЗначений; - Если ЗначениеЗаполнено(Контекст.Подробно) Тогда - КнопкаПоУмолчанию = 1; + Если ЗначениеЗаполнено(Контекст.Подробно) И Контекст.Подробно <> Контекст.Текст Тогда Кнопки.Добавить(1, НСтр("ru = 'Подробнее...'")); КонецЕсли; Если ТипЗнч(Форма) = Тип("УправляемаяФорма") И ЗначениеЗаполнено(Контекст.ПутьКРеквизитуФормы) Тогда Кнопки.Добавить(2, НСтр("ru = 'Перейти к реквизиту'")); КонецЕсли; + // Кнопка "Закрыть" должна быть крайней справа, + // т.к. это ее стандартное место в диалогах, в которых команды размещаются внизу формы. Кнопки.Добавить(КодВозвратаДиалога.ОК, НСтр("ru = 'Закрыть'")); Обработчик = Новый ОписаниеОповещения("ВывестиПредупреждениеПродолжение", ЭтотОбъект, Контекст); ПоказатьВопрос(Обработчик, Контекст.Текст, Кнопки, , КнопкаПоУмолчанию, Контекст.Заголовок); КонецПроцедуры -// Продолжение процедуры ВывестиПредупреждение. -Процедура ВывестиПредупреждениеПродолжение(Ответ, Контекст) Экспорт - Если Ответ = 1 Тогда - - Обработчик = Новый ОписаниеОповещения("ВывестиПредупреждениеЗавершение", ЭтотОбъект, Контекст); - ПолныйТекст = Строка(Контекст.Текст) + Символы.ПС + Символы.ПС + Контекст.Подробно; - ПоказатьПодробнуюИнформацию(Обработчик, ПолныйТекст, Контекст.Заголовок); - - Возврат; - - ИначеЕсли Ответ = 2 Тогда - - Сообщение = Новый СообщениеПользователю; - Сообщение.ИдентификаторНазначения = Контекст.Форма.УникальныйИдентификатор; - Сообщение.Текст = Контекст.Текст; - Сообщение.Поле = Контекст.ПутьКРеквизитуФормы; - Сообщение.Сообщить(); - - КонецЕсли; - - ВывестиПредупреждениеЗавершение(Неопределено, Контекст); -КонецПроцедуры - -// Продолжение процедуры ВывестиПредупреждение. -Процедура ВывестиПредупреждениеЗавершение(Ответ, Контекст) Экспорт - Если ТипЗнч(Контекст.ОбработчикЗавершения) = Тип("ОписаниеОповещения") Тогда - ВыполнитьОбработкуОповещения(Контекст.ОбработчикЗавершения, Неопределено); - КонецЕсли; -КонецПроцедуры - -// Выводит текст, который пользователь может скопировать. +// Разворачивает узлы указанного дерева на форме. // // Параметры: -// Обработчик - ОписаниеОповещения - Описание процедуры, которая будет вызвана после завершения показа. -// Возвращаемое значение аналогично ПоказатьВопросПользователю(). -// Текст - Строка - Текст информации. -// Заголовок - Строка - Необязательный. Заголовок окна. По умолчанию "Подробнее". +// Форма - УправляемаяФорма - форма, на которой размещен элемент управления с деревом значений. +// ИмяЭлементаФормы - Строка - имя элемента с таблицей формы (деревом значений) и связанного с ней реквизита формы +// (должны совпадать). +// ИдентификаторСтрокиДерева - Произвольный - идентификатор строки дерева, которую требуется развернуть. +// Если указано "*", то будут развернуты все узлы верхнего уровня. +// Если указано Неопределено, то строки дерева развернуты не будут. +// Значение по умолчанию: "*". +// РазвернутьСПодчиненными - Булево - если Истина, то следует раскрыть также и все подчиненные узлы. +// По умолчанию Ложь. // -Процедура ПоказатьПодробнуюИнформацию(Обработчик, Текст, Заголовок = Неопределено) Экспорт - НастройкиДиалога = Новый Структура; - НастройкиДиалога.Вставить("ПредлагатьБольшеНеЗадаватьЭтотВопрос", Ложь); - НастройкиДиалога.Вставить("Картинка", Неопределено); - НастройкиДиалога.Вставить("ПоказыватьКартинку", Ложь); - НастройкиДиалога.Вставить("МожноКопировать", Истина); - НастройкиДиалога.Вставить("КнопкаПоУмолчанию", 0); - НастройкиДиалога.Вставить("ВыделятьКнопкуПоУмолчанию", Ложь); - НастройкиДиалога.Вставить("Заголовок", Заголовок); +Процедура РазвернутьУзлыДерева(Форма, ИмяЭлементаФормы, ИдентификаторСтрокиДерева = "*", РазвернутьСПодчиненными = Ложь) Экспорт - Если Не ЗначениеЗаполнено(НастройкиДиалога.Заголовок) Тогда - НастройкиДиалога.Заголовок = НСтр("ru = 'Подробнее'"); - КонецЕсли; - - Кнопки = Новый СписокЗначений; - Кнопки.Добавить(0, НСтр("ru = 'Закрыть'")); - - ПоказатьВопросПользователю(Обработчик, Текст, Кнопки, НастройкиДиалога); -КонецПроцедуры - -// Разворачивает узлы дерева. -// -// Параметры: -// Форма - УправляемаяФорма - Форма, для которой требуется вывод. -// РазворачиваемыйУзел - Структура - Параметры разворачивания. -// * ИмяТаблицы - Строка - Имя таблицы формы (дерева значений), в которой требуется развернуть узел. -// * Идентификатор - Произвольный - Необязательный. Идентификатор строки дерева, которую требуется развернуть. -// Если указано "*", то будут развернуты все узлы верхнего уровня. -// Если указано Неопределено, то строки дерева развернуты не будут. -// Значение по умолчанию: "*". -// * СПодчиненными - Булево - Необязательный. Раскрывать ли подчиненные узлы. -// Значение по умолчанию: Ложь (не раскрывать подчиненные узлы). -// -Процедура РазвернутьУзлыДерева(Форма, РазворачиваемыйУзел) Экспорт - ТаблицаЭлемент = Форма.Элементы[РазворачиваемыйУзел.ИмяТаблицы]; - Если РазворачиваемыйУзел.Идентификатор = "*" Тогда - Узлы = Форма[РазворачиваемыйУзел.ИмяТаблицы].ПолучитьЭлементы(); + ТаблицаЭлемент = Форма.Элементы[ИмяЭлементаФормы]; + Если ИдентификаторСтрокиДерева = "*" Тогда + Узлы = Форма[ИмяЭлементаФормы].ПолучитьЭлементы(); Для Каждого Узел Из Узлы Цикл - ТаблицаЭлемент.Развернуть(Узел.ПолучитьИдентификатор(), РазворачиваемыйУзел.СПодчиненными); + ТаблицаЭлемент.Развернуть(Узел.ПолучитьИдентификатор(), РазвернутьСПодчиненными); КонецЦикла; Иначе - ТаблицаЭлемент.Развернуть(РазворачиваемыйУзел.Идентификатор, РазворачиваемыйУзел.СПодчиненными); + ТаблицаЭлемент.Развернуть(ИдентификаторСтрокиДерева, РазвернутьСПодчиненными); КонецЕсли; + +КонецПроцедуры + +// Оповещает открытые форм и динамические списки о массовых изменениях объектов различных типов +// с помощью методов глобального контекста Оповестить и ОповеститьОбИзменении. +// +// Параметры: +// ТипыИзмененныхОбъектов - Соответствие - см. СтандартныеПодсистемыСервер.ПодготовитьОповещениеФормОбИзменении +// ПараметрОповещенияФорм - Произвольный - параметр сообщения для метода Оповестить. +// +Процедура ОповеститьФормыОбИзменении(ТипыИзмененныхОбъектов, ПараметрОповещенияФорм = Неопределено) Экспорт + + Для Каждого ТипОбъекта Из ТипыИзмененныхОбъектов Цикл + Оповестить(ТипОбъекта.Значение.ИмяСобытия, + ?(ПараметрОповещенияФорм <> Неопределено, ПараметрОповещенияФорм, Новый Структура), + ТипОбъекта.Значение.ПустаяСсылка); + ОповеститьОбИзменении(ТипОбъекта.Ключ); + КонецЦикла; + КонецПроцедуры // Открывает форму списка объекта с позиционированием на объекте. @@ -950,6 +918,94 @@ Форма.ВыполнитьПереход(Ссылка); КонецПроцедуры +// Выводит текст, который пользователь может скопировать. +// +// Параметры: +// Обработчик - ОписаниеОповещения - Описание процедуры, которая будет вызвана после завершения показа. +// Возвращаемое значение аналогично ПоказатьВопросПользователю(). +// Текст - Строка - Текст информации. +// Заголовок - Строка - Необязательный. Заголовок окна. По умолчанию "Подробнее". +// +Процедура ПоказатьПодробнуюИнформацию(Обработчик, Текст, Заголовок = Неопределено) Экспорт + НастройкиДиалога = Новый Структура; + НастройкиДиалога.Вставить("ПредлагатьБольшеНеЗадаватьЭтотВопрос", Ложь); + НастройкиДиалога.Вставить("Картинка", Неопределено); + НастройкиДиалога.Вставить("ПоказыватьКартинку", Ложь); + НастройкиДиалога.Вставить("МожноКопировать", Истина); + НастройкиДиалога.Вставить("КнопкаПоУмолчанию", 0); + НастройкиДиалога.Вставить("ВыделятьКнопкуПоУмолчанию", Ложь); + НастройкиДиалога.Вставить("Заголовок", Заголовок); + + Если Не ЗначениеЗаполнено(НастройкиДиалога.Заголовок) Тогда + НастройкиДиалога.Заголовок = НСтр("ru = 'Подробнее'"); + КонецЕсли; + + Кнопки = Новый СписокЗначений; + Кнопки.Добавить(0, НСтр("ru = 'Закрыть'")); + + ПоказатьВопросПользователю(Обработчик, Текст, Кнопки, НастройкиДиалога); +КонецПроцедуры + +// Папка системных приложений. +// Используется только для Windows. +Функция ПапкаСистемныхПриложений() Экспорт + + Shell = Новый COMОбъект("Shell.Application"); + + СистемнаяИнформация = Новый СистемнаяИнформация; + Если СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86 Тогда + // Для 32-битной системы "C:\Windows\System32". + // Для 64-битной системы "C:\Windows\SysWOW64". + Folder = Shell.Namespace(41); + Возврат Folder.Self.Path + "\"; + ИначеЕсли СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86_64 Тогда + // Для любой системы "C:\Windows\System32". + Folder = Shell.Namespace(37); + Возврат Folder.Self.Path + "\"; + КонецЕсли; + +КонецФункции + +// Шапка файла для технической поддержки +Функция ИнформацияДляПоддержки() Экспорт + + Текст = НСтр("ru = 'Название программы: [НазваниеПрограммы] + |Версия программы: [ВерсияПрограммы]; + |Версия Платформы 1С:Предприятие: [ВерсияПлатформы] [РазрядностьПлатформы]; + |Версия Библиотеки стандартных подсистем: [ВерсияБСП]; + |Операционная система: [ОперационнаяСистема]; + |Размер оперативной памяти: [ОперативнаяПамять]; + |Имя COM соединителя: [ИмяCOMСоединителя]; + |Базовая: [ЭтоБазоваяВерсияКонфигурации] + |Полноправный пользователь: [ЭтоПолноправныйПользователь] + |Учебная: [ЭтоУчебнаяПлатформа] + |Конфигурация изменена: [КонфигурацияИзменена] + |'"); + + Параметры = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента(); + + СистемнаяИнформация = Новый СистемнаяИнформация; + + Текст = СтрЗаменить(Текст, "[НазваниеПрограммы]", Параметры.ПодробнаяИнформация); + Текст = СтрЗаменить(Текст, "[ВерсияПрограммы]", Параметры.ВерсияКонфигурации); + Текст = СтрЗаменить(Текст, "[ВерсияПлатформы]", СистемнаяИнформация.ВерсияПриложения); + Текст = СтрЗаменить(Текст, "[РазрядностьПлатформы]", СистемнаяИнформация.ТипПлатформы); + Текст = СтрЗаменить(Текст, "[ВерсияБСП]", СтандартныеПодсистемыВызовСервера.ВерсияБиблиотеки()); + Текст = СтрЗаменить(Текст, "[ОперационнаяСистема]", СистемнаяИнформация.ВерсияОС); + Текст = СтрЗаменить(Текст, "[ОперативнаяПамять]", СистемнаяИнформация.ОперативнаяПамять); + Текст = СтрЗаменить(Текст, "[ИмяCOMСоединителя]", Параметры.ИмяCOMСоединителя); + Текст = СтрЗаменить(Текст, "[ЭтоБазоваяВерсияКонфигурации]", Параметры.ЭтоБазоваяВерсияКонфигурации); + Текст = СтрЗаменить(Текст, "[ЭтоПолноправныйПользователь]", Параметры.ЭтоПолноправныйПользователь); + Текст = СтрЗаменить(Текст, "[ЭтоУчебнаяПлатформа]", Параметры.ЭтоУчебнаяПлатформа); + + Если Параметры.Свойство("НастройкиОбновления") Тогда + Текст = СтрЗаменить(Текст, "[КонфигурацияИзменена]", Параметры.НастройкиОбновления.КонфигурацияИзменена); + КонецЕсли; + + Возврат Текст; + +КонецФункции + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -1274,8 +1330,8 @@ // Только для внутреннего использования. Завершение процедуры ПередНачаломРаботыСистемы. Процедура ДействияПередНачаломРаботыСистемыОбработкаЗавершения(Неопределен, Параметры) Экспорт - ПараметрыПриЗапускеИЗавершенииПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеИЗавершенииПрограммы"]; - ПараметрыПриЗапускеИЗавершенииПрограммы.Удалить("ПолученныеПараметрыКлиента"); + ПараметрыПриЗапускеПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеПрограммы"]; + ПараметрыПриЗапускеПрограммы.Удалить("ПолученныеПараметрыКлиента"); Если Параметры.ОповещениеЗавершения <> Неопределено Тогда Результат = Новый Структура; @@ -1296,8 +1352,8 @@ КонецЕсли; ИначеЕсли НЕ Параметры.НепрерывноеВыполнение Тогда - Если ПараметрыПриЗапускеИЗавершенииПрограммы.Свойство("ПараметрыОбработки") Тогда - ПараметрыПриЗапускеИЗавершенииПрограммы.Удалить("ПараметрыОбработки"); + Если ПараметрыПриЗапускеПрограммы.Свойство("ПараметрыОбработки") Тогда + ПараметрыПриЗапускеПрограммы.Удалить("ПараметрыОбработки"); КонецЕсли; ПодключитьОбработчикОжидания("ОбработчикОжиданияПриНачалеРаботыСистемы", 0.1, Истина); КонецЕсли; @@ -1408,9 +1464,9 @@ Процедура ДействияПриНачалеРаботыСистемыОбработкаЗавершения(Неопределен, Параметры) Экспорт Если НЕ Параметры.Отказ Тогда - ПараметрыПриЗапускеИЗавершенииПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеИЗавершенииПрограммы"]; - Если ПараметрыПриЗапускеИЗавершенииПрограммы.Свойство("ПропуститьОчисткуСкрытияРабочегоСтола") Тогда - ПараметрыПриЗапускеИЗавершенииПрограммы.Удалить("ПропуститьОчисткуСкрытияРабочегоСтола"); + ПараметрыПриЗапускеПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеПрограммы"]; + Если ПараметрыПриЗапускеПрограммы.Свойство("ПропуститьОчисткуСкрытияРабочегоСтола") Тогда + ПараметрыПриЗапускеПрограммы.Удалить("ПропуститьОчисткуСкрытияРабочегоСтола"); КонецЕсли; СкрытьРабочийСтолПриНачалеРаботыСистемы(Ложь); КонецЕсли; @@ -1474,66 +1530,7 @@ // ПередЗавершениемРаботыСистемы // Только для внутреннего использования. Продолжение процедуры ПередЗавершениемРаботыСистемы. -Процедура ДействияПередЗавершениемРаботыСистемыВОбработчикахСлужебногоСобытия(Неопределен, Параметры) Экспорт - - Если Параметры.Отказ Тогда - ВыполнитьОбработкуОповещения(Параметры.ОбработкаЗавершения); - Возврат; - КонецЕсли; - - ОбработчикиСобытия = ОбщегоНазначенияКлиент.ОбработчикиСлужебногоСобытия( - "СтандартныеПодсистемы.БазоваяФункциональность\ПередЗавершениемРаботыСистемы"); - - КоличествоОбработчиков = ОбработчикиСобытия.Количество(); - НачальныйНомер = Параметры.НомерСледующегоОбработчика; - - Для Номер = НачальныйНомер По КоличествоОбработчиков Цикл - Параметры.НомерСледующегоОбработчика = Номер + 1; - Обработчик = ОбработчикиСобытия.Получить(Номер - 1); - Попытка - Обработчик.Модуль.ПередЗавершениемРаботыСистемы(Параметры); - Исключение - ОбработатьОшибкуПриЗапускеИлиЗавершении(Параметры, ИнформацияОбОшибке(), "Завершение"); - КонецПопытки; - Если ИнтерактивнаяОбработкаПередЗавершениемРаботыСистемы(Параметры) Тогда - Возврат; - КонецЕсли; - КонецЦикла; - - Параметры.Вставить("ОбработкаПродолжения", Новый ОписаниеОповещения( - "ДействияПередЗавершениемРаботыСистемыПослеОбработчиковСлужебногоСобытия", ЭтотОбъект, Параметры)); - - Попытка - ОбщегоНазначенияКлиентПереопределяемый.ПередЗавершениемРаботыСистемы(Параметры); - Исключение - ОбработатьОшибкуПриЗапускеИлиЗавершении(Параметры, ИнформацияОбОшибке(), "Завершение"); - КонецПопытки; - Если ИнтерактивнаяОбработкаПередЗавершениемРаботыСистемы(Параметры) Тогда - Возврат; - КонецЕсли; - - ВыполнитьОбработкуОповещения(Параметры.ОбработкаПродолжения); - -КонецПроцедуры - -// Только для внутреннего использования. Продолжение процедуры ПередЗавершениемРаботыСистемы. -Процедура ДействияПередЗавершениемРаботыСистемыПослеОбработчиковСлужебногоСобытия(Неопределен, Параметры) Экспорт - - Если Параметры.Отказ Тогда - ВыполнитьОбработкуОповещения(Параметры.ОбработкаЗавершения); - Возврат; - КонецЕсли; - - // Если перед завершение работы есть незаписанные сообщения для журнала регистрации, - // накопленные в переменной, то их необходимо записать. - ИмяПараметра = "СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"; - Если ПараметрыПриложения[ИмяПараметра] = Неопределено Тогда - ПараметрыПриложения.Вставить(ИмяПараметра, Новый СписокЗначений); - КонецЕсли; - - Если ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"].Количество() <> 0 Тогда - ЖурналРегистрацииВызовСервера.ЗаписатьСобытияВЖурналРегистрации(ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"]); - КонецЕсли; +Процедура ДействияПередЗавершениемРаботыСистемы(Параметры) Экспорт Параметры.Вставить("ОбработкаПродолжения", Параметры.ОбработкаЗавершения); Если СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ДоступноИспользованиеРазделенныхДанных Тогда @@ -1554,15 +1551,10 @@ // Только для внутреннего использования. Завершение процедуры ПередЗавершениемРаботыСистемы. Процедура ДействияПередЗавершениемРаботыСистемыОбработкаЗавершения(Неопределен, Параметры) Экспорт - Если Параметры.ОповещениеЗавершения <> Неопределено Тогда + Если Не Параметры.Отказ И Не Параметры.НепрерывноеВыполнение Тогда - Результат = Новый Структура; - Результат.Вставить("Отказ", Параметры.Отказ); - ВыполнитьОбработкуОповещения(Параметры.ОповещениеЗавершения, Результат); - - ИначеЕсли НЕ Параметры.Отказ И НЕ Параметры.НепрерывноеВыполнение Тогда - - ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеИЗавершенииПрограммы"].Вставить("ДействияПередЗавершениемРаботыСистемыВыполнены"); + ИмяПараметра = "СтандартныеПодсистемы.ПропуститьПредупреждениеПередЗавершениемРаботыСистемы"; + ПараметрыПриложения.Вставить(ИмяПараметра, Истина); ЗавершитьРаботуСистемы(); КонецЕсли; @@ -1750,18 +1742,19 @@ // Процедура СкрытьРабочийСтолПриНачалеРаботыСистемы(Скрыть = Истина, УжеВыполненоНаСервере = Ложь) Экспорт - ПараметрыПриЗапускеИЗавершенииПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеИЗавершенииПрограммы"]; + ПараметрыПриЗапускеПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеПрограммы"]; Если Скрыть Тогда - Если НЕ ПараметрыПриЗапускеИЗавершенииПрограммы.Свойство("СкрытьРабочийСтолПриНачалеРаботыСистемы") Тогда - ПараметрыПриЗапускеИЗавершенииПрограммы.Вставить("СкрытьРабочийСтолПриНачалеРаботыСистемы"); + Если НЕ ПараметрыПриЗапускеПрограммы.Свойство("СкрытьРабочийСтолПриНачалеРаботыСистемы") Тогда + ПараметрыПриЗапускеПрограммы.Вставить("СкрытьРабочийСтолПриНачалеРаботыСистемы"); Если НЕ УжеВыполненоНаСервере Тогда СтандартныеПодсистемыВызовСервера.СкрытьРабочийСтолПриНачалеРаботыСистемы(); КонецЕсли; + ОбновитьИнтерфейс(); КонецЕсли; Иначе - Если ПараметрыПриЗапускеИЗавершенииПрограммы.Свойство("СкрытьРабочийСтолПриНачалеРаботыСистемы") Тогда - ПараметрыПриЗапускеИЗавершенииПрограммы.Удалить("СкрытьРабочийСтолПриНачалеРаботыСистемы"); + Если ПараметрыПриЗапускеПрограммы.Свойство("СкрытьРабочийСтолПриНачалеРаботыСистемы") Тогда + ПараметрыПриЗапускеПрограммы.Удалить("СкрытьРабочийСтолПриНачалеРаботыСистемы"); Если НЕ УжеВыполненоНаСервере Тогда СтандартныеПодсистемыВызовСервера.СкрытьРабочийСтолПриНачалеРаботыСистемы(Ложь); КонецЕсли; @@ -1785,13 +1778,13 @@ // Только для внутреннего использования. Процедура НачатьИнтерактивнуюОбработкуПередЗавершениемРаботыСистемы() Экспорт - ПараметрыПриЗапускеИЗавершенииПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеИЗавершенииПрограммы"]; - Если НЕ ПараметрыПриЗапускеИЗавершенииПрограммы.Свойство("ПараметрыОбработкиЗавершения") Тогда + ПараметрыПриЗапускеПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеПрограммы"]; + Если НЕ ПараметрыПриЗапускеПрограммы.Свойство("ПараметрыОбработкиЗавершения") Тогда Возврат; КонецЕсли; - Параметры = ПараметрыПриЗапускеИЗавершенииПрограммы.ПараметрыОбработкиЗавершения; - ПараметрыПриЗапускеИЗавершенииПрограммы.Удалить("ПараметрыОбработкиЗавершения"); + Параметры = ПараметрыПриЗапускеПрограммы.ПараметрыОбработкиЗавершения; + ПараметрыПриЗапускеПрограммы.Удалить("ПараметрыОбработкиЗавершения"); ИнтерактивнаяОбработка = Параметры.ИнтерактивнаяОбработка; Параметры.ИнтерактивнаяОбработка = Неопределено; @@ -1806,11 +1799,6 @@ Если ДополнительныеПараметры.ВариантФормы = "Вопрос" Тогда - Если Результат <> Неопределено И Результат.БольшеНеЗадаватьЭтотВопрос Тогда - СтандартныеПодсистемыВызовСервера.СохранитьНастройкуПодтвержденияПриЗавершенииПрограммы( - НЕ Результат.БольшеНеЗадаватьЭтотВопрос); - КонецЕсли; - Если Результат = Неопределено Или Результат.Значение <> КодВозвратаДиалога.Да Тогда Параметры.Отказ = Истина; КонецЕсли; @@ -1889,9 +1877,10 @@ // Только для внутреннего использования. Процедура ИдентификаторыОбъектовМетаданныхФормаСпискаСписокВыборЗначения(Форма, Элемент, Значение, СтандартнаяОбработка) Экспорт - Если НЕ Форма.ВыбиратьГруппыОбъектовМетаданных + Если Не Форма.ВыбиратьГруппыОбъектовМетаданных И Элемент.ТекущиеДанные <> Неопределено - И НЕ ЗначениеЗаполнено(Элемент.ТекущиеДанные.Родитель) Тогда + И Не Элемент.ТекущиеДанные.ПометкаУдаления + И Не ЗначениеЗаполнено(Элемент.ТекущиеДанные.Родитель) Тогда СтандартнаяОбработка = Ложь; @@ -2007,7 +1996,7 @@ Процедура ОбновитьПараметрыРаботыКлиента(Параметры, ПервыйВызов = Ложь, ОбновитьПовторноИспользуемыеЗначения = Истина) Если ПервыйВызов Тогда - ИмяПараметра = "СтандартныеПодсистемы.ПараметрыПриЗапускеИЗавершенииПрограммы"; + ИмяПараметра = "СтандартныеПодсистемы.ПараметрыПриЗапускеПрограммы"; Если ПараметрыПриложения[ИмяПараметра] = Неопределено Тогда ПараметрыПриложения.Вставить(ИмяПараметра, Новый Структура); КонецЕсли; @@ -2017,7 +2006,7 @@ Параметры.Вставить("КоличествоПолученныхПараметровКлиента", Параметры.ПолученныеПараметрыКлиента.Количество()); - ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеИЗавершенииПрограммы"].Вставить( + ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеПрограммы"].Вставить( "ПолученныеПараметрыКлиента", Параметры.ПолученныеПараметрыКлиента); Если ОбновитьПовторноИспользуемыеЗначения Тогда @@ -2028,20 +2017,20 @@ Функция ВыполняетсяИнтерактивнаяОбработкаПередНачаломРаботыСистемы() - ПараметрыПриЗапускеИЗавершенииПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеИЗавершенииПрограммы"]; + ПараметрыПриЗапускеПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеПрограммы"]; - Если НЕ ПараметрыПриЗапускеИЗавершенииПрограммы.Свойство("ПараметрыОбработки") Тогда + Если НЕ ПараметрыПриЗапускеПрограммы.Свойство("ПараметрыОбработки") Тогда Возврат Ложь; КонецЕсли; - Параметры = ПараметрыПриЗапускеИЗавершенииПрограммы.ПараметрыОбработки; + Параметры = ПараметрыПриЗапускеПрограммы.ПараметрыОбработки; Если Параметры.ИнтерактивнаяОбработка <> Неопределено Тогда Параметры.НепрерывноеВыполнение = Ложь; ИнтерактивнаяОбработка = Параметры.ИнтерактивнаяОбработка; Параметры.ИнтерактивнаяОбработка = Неопределено; ВыполнитьОбработкуОповещения(ИнтерактивнаяОбработка, Параметры); - ПараметрыПриЗапускеИЗавершенииПрограммы.Удалить("ПараметрыОбработки"); + ПараметрыПриЗапускеПрограммы.Удалить("ПараметрыОбработки"); Возврат Истина; КонецЕсли; @@ -2051,7 +2040,7 @@ Функция ИнтерактивнаяОбработкаПередНачаломРаботыСистемы(Параметры) - ПараметрыПриЗапускеИЗавершенииПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеИЗавершенииПрограммы"]; + ПараметрыПриЗапускеПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеПрограммы"]; Если Параметры.ИнтерактивнаяОбработка = Неопределено Тогда Если Параметры.Отказ Тогда @@ -2068,26 +2057,24 @@ Параметры.ИнтерактивнаяОбработка = Неопределено; ВыполнитьОбработкуОповещения(ИнтерактивнаяОбработка, Параметры); - ИначеЕсли Параметры.ОповещениеЗавершения = Неопределено Тогда - // Выполнен вызов из обработчика события ПередНачаломРаботыСистемы для подготовки - // выполнения интерактивной обработки в обработчике события ПриНачалеРаботыСистемы. - - ПараметрыПриЗапускеИЗавершенииПрограммы.Вставить("ПараметрыОбработки", Параметры); - СкрытьРабочийСтолПриНачалеРаботыСистемы(); - ПараметрыПриЗапускеИЗавершенииПрограммы.Вставить("ПропуститьОчисткуСкрытияРабочегоСтола"); - УстановитьПараметрыФункциональныхОпцийИнтерфейсаПриЗапуске(); Иначе - // Выполнен вызов из процедуры ПередНачаломРаботыСистемы для немедленного - // начала интерактивной обработки, т.к. процедура была вызвана программно, а не из - // обработчика события ПередНачаломРаботыСистемы. - Если ПараметрыПриЗапускеИЗавершенииПрограммы.Свойство("ПараметрыОбработки") Тогда - ПараметрыПриЗапускеИЗавершенииПрограммы.Удалить("ПараметрыОбработки"); - КонецЕсли; + // Требуется подготовка к выполнению интерактивной обработки, затребованной + // в процессе выполнения обработчика ПередНачаломРаботыСистемы, которая + // предполагает скрытие рабочего стола и обновление интерфейса перед + // продолжением при первом вызове процедуры ПриНачалеРаботыСистемы. + ПараметрыПриЗапускеПрограммы.Вставить("ПараметрыОбработки", Параметры); + СкрытьРабочийСтолПриНачалеРаботыСистемы(); + ПараметрыПриЗапускеПрограммы.Вставить("ПропуститьОчисткуСкрытияРабочегоСтола"); - Параметры.НепрерывноеВыполнение = Ложь; - ИнтерактивнаяОбработка = Параметры.ИнтерактивнаяОбработка; - Параметры.ИнтерактивнаяОбработка = Неопределено; - ВыполнитьОбработкуОповещения(ИнтерактивнаяОбработка, Параметры); + Если Параметры.ОповещениеЗавершения = Неопределено Тогда + // Вызов процедуры ПередНачаломРаботыСистемы выполнен платформой, + // как обработчика события, до открытия главного окна 1С:Предприятия 8. + УстановитьПараметрыФункциональныхОпцийИнтерфейсаПриЗапуске(); + Иначе + // Вызов процедуры ПередНачаломРаботыСистемы выполнен программно, как вход в область данных, + // поэтому продолжение после обновления интерфейса возможно только через обработчик ожидания. + ПодключитьОбработчикОжидания("ОбработчикОжиданияПриНачалеРаботыСистемы", 0.1, Истина); + КонецЕсли; КонецЕсли; Возврат Истина; @@ -2125,28 +2112,18 @@ Возврат Ложь; КонецЕсли; - Если НЕ Параметры.НепрерывноеВыполнение Тогда + Если Не Параметры.НепрерывноеВыполнение Тогда ИнтерактивнаяОбработка = Параметры.ИнтерактивнаяОбработка; Параметры.ИнтерактивнаяОбработка = Неопределено; ВыполнитьОбработкуОповещения(ИнтерактивнаяОбработка, Параметры); - ИначеЕсли Параметры.ОповещениеЗавершения = Неопределено Тогда + Иначе // Выполнен вызов из обработчика события ПередЗавершениемРаботыСистемы для подготовки // выполнения интерактивной обработки через обработчик ожидания. - - ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеИЗавершенииПрограммы"].Вставить("ПараметрыОбработкиЗавершения", Параметры); + ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеПрограммы"].Вставить("ПараметрыОбработкиЗавершения", Параметры); Параметры.НепрерывноеВыполнение = Ложь; ПодключитьОбработчикОжидания( "ОбработчикОжиданияИнтерактивнаяОбработкаПередЗавершениемРаботыСистемы", 0.1, Истина); - Иначе - // Выполнен вызов из процедуры ПередЗавершениемРаботыСистемы для немедленного - // начала интерактивной обработки, т.к. процедура была вызвана программно, а не из - // обработчика события ПередЗавершениемРаботыСистемы. - - Параметры.НепрерывноеВыполнение = Ложь; - ИнтерактивнаяОбработка = Параметры.ИнтерактивнаяОбработка; - Параметры.ИнтерактивнаяОбработка = Неопределено; - ВыполнитьОбработкуОповещения(ИнтерактивнаяОбработка, Параметры); КонецЕсли; Возврат Истина; @@ -2156,69 +2133,44 @@ // Выводит форму сообщений пользователю при закрытии программы, либо выводит сообщение. Процедура ОткрытьФормуПредупрежденийПриЗавершенииРаботы(Параметры) - // В режимах работы веб-клиент и толстый клиент (обычное приложение) не выводится список предупреждений. -#Если ВебКлиент Или ТолстыйКлиентОбычноеПриложение Тогда - Возврат; -#КонецЕсли - - Если ПараметрыПриложения["СтандартныеПодсистемы.ПропуститьПредупреждениеПередЗавершениемРаботыСистемы"] = Истина Тогда - Возврат; - КонецЕсли; - - Предупреждения = Новый Массив; - - ОбработчикиСобытия = ОбщегоНазначенияКлиент.ОбработчикиСлужебногоСобытия( - "СтандартныеПодсистемы.БазоваяФункциональность\ПриПолученииСпискаПредупрежденийЗавершенияРаботы"); - - Для Каждого Обработчик Из ОбработчикиСобытия Цикл - Обработчик.Модуль.ПриПолученииСпискаПредупрежденийЗавершенияРаботы(Предупреждения); - КонецЦикла; - ДополнительныеПараметры = Новый Структура; ДополнительныеПараметры.Вставить("Параметры", Параметры); ДополнительныеПараметры.Вставить("ВариантФормы", "Вопрос"); ОбработкаОтвета = Новый ОписаниеОповещения("ПослеЗакрытияФормыПредупрежденийПриЗавершенииРаботы", ЭтотОбъект, ДополнительныеПараметры); + + Предупреждения = Параметры.Предупреждения; + Параметры.Удалить("Предупреждения"); - Если Предупреждения.Количество() = 0 Тогда - - БольшеНеЗадаватьЭтотВопрос = - Не СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЗапрашиватьПодтверждениеПриЗавершенииПрограммы; - - Если БольшеНеЗадаватьЭтотВопрос Тогда - Возврат; - КонецЕсли; - Параметры.ИнтерактивнаяОбработка = Новый ОписаниеОповещения( - "ВопросПользователюПередЗавершениемРаботыСистемы", ЭтотОбъект, ОбработкаОтвета); - Иначе - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("Предупреждения", Предупреждения); - - ИмяФормы = "ОбщаяФорма.ПредупрежденияПриЗавершенииРаботы"; - - Если Предупреждения.Количество() = 1 Тогда - Если Не ПустаяСтрока(Предупреждения[0].ТекстФлажка) Тогда - ДополнительныеПараметры.Вставить("ВариантФормы", "СтандартнаяФорма"); - ПараметрыОткрытияФормы = Новый Структура; - ПараметрыОткрытияФормы.Вставить("ИмяФормы", ИмяФормы); - ПараметрыОткрытияФормы.Вставить("ПараметрыФормы", ПараметрыФормы); - ПараметрыОткрытияФормы.Вставить("ОбработкаОтвета", ОбработкаОтвета); - Параметры.ИнтерактивнаяОбработка = Новый ОписаниеОповещения( - "ИнтерактивнаяОбработкаПредупрежденийПриЗавершенииРаботы", ЭтотОбъект, ПараметрыОткрытияФормы); - Иначе - ДополнительныеПараметры.Вставить("ВариантФормы", "ПрикладнаяФорма"); - ОткрытьПрикладнуюФормуПредупреждения(Параметры, ОбработкаОтвета, Предупреждения[0], ИмяФормы, ПараметрыФормы); - КонецЕсли; - Иначе + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("Предупреждения", Предупреждения); + + ИмяФормы = "ОбщаяФорма.ПредупрежденияПриЗавершенииРаботы"; + + Если Предупреждения.Количество() = 1 Тогда + Если Не ПустаяСтрока(Предупреждения[0].ТекстФлажка) Тогда ДополнительныеПараметры.Вставить("ВариантФормы", "СтандартнаяФорма"); ПараметрыОткрытияФормы = Новый Структура; ПараметрыОткрытияФормы.Вставить("ИмяФормы", ИмяФормы); ПараметрыОткрытияФормы.Вставить("ПараметрыФормы", ПараметрыФормы); ПараметрыОткрытияФормы.Вставить("ОбработкаОтвета", ОбработкаОтвета); + ПараметрыОткрытияФормы.Вставить("РежимОткрытияОкна", Неопределено); Параметры.ИнтерактивнаяОбработка = Новый ОписаниеОповещения( "ИнтерактивнаяОбработкаПредупрежденийПриЗавершенииРаботы", ЭтотОбъект, ПараметрыОткрытияФормы); + Иначе + ДополнительныеПараметры.Вставить("ВариантФормы", "ПрикладнаяФорма"); + ОткрытьПрикладнуюФормуПредупреждения(Параметры, ОбработкаОтвета, Предупреждения[0], ИмяФормы, ПараметрыФормы); КонецЕсли; + Иначе + ДополнительныеПараметры.Вставить("ВариантФормы", "СтандартнаяФорма"); + ПараметрыОткрытияФормы = Новый Структура; + ПараметрыОткрытияФормы.Вставить("ИмяФормы", ИмяФормы); + ПараметрыОткрытияФормы.Вставить("ПараметрыФормы", ПараметрыФормы); + ПараметрыОткрытияФормы.Вставить("ОбработкаОтвета", ОбработкаОтвета); + ПараметрыОткрытияФормы.Вставить("РежимОткрытияОкна", Неопределено); + Параметры.ИнтерактивнаяОбработка = Новый ОписаниеОповещения( + "ИнтерактивнаяОбработкаПредупрежденийПриЗавершенииРаботы", ЭтотОбъект, ПараметрыОткрытияФормы); КонецЕсли; КонецПроцедуры @@ -2229,7 +2181,8 @@ ОткрытьФорму( ПараметрыОткрытияФормы.ИмяФормы, ПараметрыОткрытияФормы.ПараметрыФормы, , , , , - ПараметрыОткрытияФормы.ОбработкаОтвета); + ПараметрыОткрытияФормы.ОбработкаОтвета, + ПараметрыОткрытияФормы.РежимОткрытияОкна); КонецПроцедуры @@ -2248,23 +2201,6 @@ КонецПроцедуры -// Показывает пользователю диалог подтверждения выхода из программы. -Процедура ВопросПользователюПередЗавершениемРаботыСистемы(Параметры, ОбработкаОтвета) Экспорт - - Кнопки = Новый СписокЗначений; - Кнопки.Добавить("КодВозвратаДиалога.Да", НСтр("ru = 'Завершить'")); - Кнопки.Добавить("КодВозвратаДиалога.Нет", НСтр("ru = 'Отмена'")); - - ПараметрыВопроса = ПараметрыВопросаПользователю(); - ПараметрыВопроса.БлокироватьВесьИнтерфейс = Истина; - ПараметрыВопроса.КнопкаПоУмолчанию = "КодВозвратаДиалога.Да"; - ПараметрыВопроса.Заголовок = НСтр("ru = 'Завершение работы'"); - ПараметрыВопроса.БольшеНеЗадаватьЭтотВопрос = Ложь; - - ПоказатьВопросПользователю(ОбработкаОтвета, НСтр("ru = 'Завершить работу с программой?'"), Кнопки, ПараметрыВопроса); - -КонецПроцедуры - // Формирует отображение одного вопроса. // // Если в ПредупреждениеПользователю есть свойство "ТекстГиперссылки", то открывается "ФормаИндивидуальногоОткрытия" из @@ -2315,6 +2251,7 @@ ПараметрыОткрытияФормы.Вставить("ИмяФормы", Форма); ПараметрыОткрытияФормы.Вставить("ПараметрыФормы", ПараметрыФормы); ПараметрыОткрытияФормы.Вставить("ОбработкаОтвета", ОбработкаОтвета); + ПараметрыОткрытияФормы.Вставить("РежимОткрытияОкна", ДействиеГиперссылка.РежимОткрытияОкна); Параметры.ИнтерактивнаяОбработка = Новый ОписаниеОповещения( "ИнтерактивнаяОбработкаПредупрежденийПриЗавершенииРаботы", ЭтотОбъект, ПараметрыОткрытияФормы); @@ -2332,6 +2269,7 @@ ПараметрыОткрытияФормы.Вставить("ИмяФормы", Форма); ПараметрыОткрытияФормы.Вставить("ПараметрыФормы", ПараметрыФормы); ПараметрыОткрытияФормы.Вставить("ОбработкаОтвета", ОбработкаОтвета); + ПараметрыОткрытияФормы.Вставить("РежимОткрытияОкна", ДействиеГиперссылка.РежимОткрытияОкна); Параметры.ИнтерактивнаяОбработка = Новый ОписаниеОповещения( "ИнтерактивнаяОбработкаПредупрежденийПриЗавершенииРаботы", ЭтотОбъект, ПараметрыОткрытияФормы); @@ -2358,6 +2296,7 @@ НачалоОписанияОшибки = СтандартныеПодсистемыВызовСервера.ЗаписатьОшибкуВЖурналРегистрацииПриЗапускеИлиЗавершении( ПрекратитьРаботу, Событие, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); + НачалоОписанияОшибки = ""; ТекстПредупреждения = НачалоОписанияОшибки + Символы.ПС + НСтр("ru = 'Техническая информация об ошибке записана в журнал регистрации.'") @@ -2470,164 +2409,34 @@ Текст, БиблиотекаКартинок.Предупреждение32); КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// Движок сценария по выводу результата выполнения. - -// Только для внутреннего использования. -Процедура ВыполнитьСценарий(Сценарий) - Пока НайтиСледующийШаг(Сценарий) Цикл - Если Не ВыполнитьШаг(Сценарий) Тогда - Возврат; // Сценарий остановлен. - КонецЕсли; - КонецЦикла; - ВернутьРезультат(Сценарий); +// Продолжение процедуры ВывестиПредупреждение. +Процедура ВывестиПредупреждениеПродолжение(Ответ, Контекст) Экспорт + Если Ответ = 1 Тогда + + Обработчик = Новый ОписаниеОповещения("ВывестиПредупреждениеЗавершение", ЭтотОбъект, Контекст); + ПолныйТекст = Строка(Контекст.Текст) + Символы.ПС + Символы.ПС + Контекст.Подробно; + ПоказатьПодробнуюИнформацию(Обработчик, ПолныйТекст, Контекст.Заголовок); + + Возврат; + + ИначеЕсли Ответ = 2 Тогда + + Сообщение = Новый СообщениеПользователю; + Сообщение.ИдентификаторНазначения = Контекст.Форма.УникальныйИдентификатор; + Сообщение.Текст = Контекст.Текст; + Сообщение.Поле = Контекст.ПутьКРеквизитуФормы; + Сообщение.Сообщить(); + + КонецЕсли; + + ВывестиПредупреждениеЗавершение(Неопределено, Контекст); КонецПроцедуры -// Только для внутреннего использования. -Функция НайтиСледующийШаг(Сценарий) - Если Сценарий.НомерШага = Сценарий.КоличествоШагов Тогда - Возврат Ложь; - КонецЕсли; - ЭлементСписка = Сценарий.Шаги[Сценарий.НомерШага]; // Индекс следующего шага это номер текущего. - Сценарий.НомерШага = Сценарий.НомерШага + 1; - Сценарий.ТекущийШаг = ЭлементСписка.Представление; - Сценарий.Параметры = ЭлементСписка.Значение; - Сценарий.МестоОстановки = Неопределено; - Возврат Истина; -КонецФункции - -// Только для внутреннего использования. -Функция Обработчик(Сценарий, КоличествоПараметров = 2) - Если КоличествоПараметров = 1 Тогда - Возврат Новый ОписаниеОповещения("ВозобновитьСценарийПослеЗакрытияПростогоДиалога", ЭтотОбъект, Сценарий); - ИначеЕсли КоличествоПараметров = 2 Тогда - Возврат Новый ОписаниеОповещения("ВозобновитьСценарий", ЭтотОбъект, Сценарий); - Иначе - ВызватьИсключение НСтр("ru = 'Обработчик оповещения для более чем 2 параметров не поддерживается'"); - КонецЕсли; -КонецФункции - -// Только для внутреннего использования. -Процедура ВозобновитьСценарий(ВыборПользователя, Сценарий) Экспорт - Сценарий.Результат = ВыборПользователя; - Если Не ВыполнитьШаг(Сценарий) Тогда // Продолжить шаг сценария. - Возврат; // Сценарий остановлен. - КонецЕсли; - ВыполнитьСценарий(Сценарий); -КонецПроцедуры - -// Только для внутреннего использования. -Процедура ВозобновитьСценарийПослеЗакрытияПростогоДиалога(Сценарий) Экспорт - Сценарий.Результат = Неопределено; - Если Не ВыполнитьШаг(Сценарий) Тогда // Продолжить шаг сценария. - Возврат; // Сценарий остановлен. - КонецЕсли; - ВыполнитьСценарий(Сценарий); -КонецПроцедуры - -// Только для внутреннего использования. -Процедура ВернутьРезультат(Сценарий) - ОбработчикЗавершения = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Сценарий, "ОбработчикЗавершения"); - Если ТипЗнч(ОбработчикЗавершения) = Тип("ОписаниеОповещения") Тогда - ВыполнитьОбработкуОповещения(ОбработчикЗавершения, Сценарий.Результат); +// Продолжение процедуры ВывестиПредупреждение. +Процедура ВывестиПредупреждениеЗавершение(Ответ, Контекст) Экспорт + Если ТипЗнч(Контекст.ОбработчикЗавершения) = Тип("ОписаниеОповещения") Тогда + ВыполнитьОбработкуОповещения(Контекст.ОбработчикЗавершения, Неопределено); КонецЕсли; КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// Шаги сценария по выводу результата выполнения. - -// Только для внутреннего использования. -Функция ВыполнитьШаг(Сценарий) - - Если Сценарий.ТекущийШаг = "ВывестиОповещение" Тогда - Возврат ВывестиОповещение(Сценарий); - - ИначеЕсли Сценарий.ТекущийШаг = "ВывестиСообщение" Тогда - Возврат ВывестиСообщение(Сценарий); - - ИначеЕсли Сценарий.ТекущийШаг = "ВывестиПредупреждение" Тогда - - Если Сценарий.МестоОстановки = Неопределено Тогда - Сценарий.МестоОстановки = "ЗаданВопрос"; - ВывестиПредупреждение( - Сценарий.Форма, - Сценарий.Параметры, - Обработчик(Сценарий)); - Возврат Ложь; // Приостановить сценарий - Иначе - Возврат Истина; // Продолжить сценарий. - КонецЕсли; - - ИначеЕсли Сценарий.ТекущийШаг = "ОповеститьОткрытыеФормы" Тогда - Возврат ОповеститьОткрытыеФормы(Сценарий); - - ИначеЕсли Сценарий.ТекущийШаг = "ОповеститьДинамическиеСписки" Тогда - Возврат ОповеститьДинамическиеСписки(Сценарий); - - ИначеЕсли Сценарий.ТекущийШаг = "РазвернутьУзлыДерева" Тогда - РазвернутьУзлыДерева(Сценарий.Форма, Сценарий.Параметры); - Возврат Истина; // Продолжить сценарий. - - ИначеЕсли Сценарий.ТекущийШаг = "ВывестиФорму" Тогда - Возврат ВывестиФорму(Сценарий); - - КонецЕсли; - -КонецФункции - -// Только для внутреннего использования. -Функция ВывестиОповещение(Сценарий) - ВыводОповещения = Сценарий.Параметры; - ПоказатьОповещениеПользователя( - ВыводОповещения.Заголовок, - ВыводОповещения.Ссылка, - ВыводОповещения.Текст, - ВыводОповещения.Картинка); - Возврат Истина; // Продолжить сценарий. -КонецФункции - -// Только для внутреннего использования. -Функция ВывестиСообщение(Сценарий) - ВыводСообщения = Сценарий.Параметры; - Сообщение = Новый СообщениеПользователю; - Если ТипЗнч(Сценарий.Форма) = Тип("УправляемаяФорма") Тогда - Сообщение.ИдентификаторНазначения = Сценарий.Форма.УникальныйИдентификатор; - КонецЕсли; - Сообщение.Текст = ВыводСообщения.Текст; - Сообщение.Поле = ВыводСообщения.ПутьКРеквизитуФормы; - Сообщение.Сообщить(); - Возврат Истина; // Продолжить сценарий. -КонецФункции - -// Только для внутреннего использования. -Функция ОповеститьОткрытыеФормы(Сценарий) - ОповещениеФорм = Сценарий.Параметры; - Оповестить(ОповещениеФорм.ИмяСобытия, ОповещениеФорм.Параметр, ОповещениеФорм.Источник); - Возврат Истина; // Продолжить сценарий. -КонецФункции - -// Только для внутреннего использования. -Функция ОповеститьДинамическиеСписки(Сценарий) - ОповещениеСписков = Сценарий.Параметры; - Для Каждого СсылкаИлиТип Из ОповещениеСписков.МассивТипов Цикл - ОповеститьОбИзменении(СсылкаИлиТип); - КонецЦикла; - Возврат Истина; // Продолжить сценарий. -КонецФункции - -// Только для внутреннего использования. -Функция ВывестиФорму(Сценарий) - ВыводФормы = Сценарий.Параметры; - Если Сценарий.МестоОстановки = Неопределено Тогда - ОткрытьФорму(ВыводФормы.ПолноеИмя, ВыводФормы.Параметры, Сценарий.Форма, , , , Обработчик(Сценарий), ВыводФормы.РежимОкна); - Сценарий.МестоОстановки = "КонецШага"; - Возврат Ложь; // Приостановить сценарий. - КонецЕсли; - Возврат Истина; // Продолжить сценарий. -КонецФункции - -Функция ОтключенаЛогикаНачалаРаботыСистемы() - Возврат СтрНайти(ПараметрЗапуска, "ОтключитьЛогикуНачалаРаботыСистемы") > 0; -КонецФункции - #КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/СтандартныеПодсистемыКлиентПовтИсп/Module.bsl b/SSL/src/CommonModules/СтандартныеПодсистемыКлиентПовтИсп/Module.bsl index a9e7e0777..de88565dc 100644 --- a/SSL/src/CommonModules/СтандартныеПодсистемыКлиентПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/СтандартныеПодсистемыКлиентПовтИсп/Module.bsl @@ -19,23 +19,23 @@ // Функция ПараметрыРаботыКлиентаПриЗапуске() Экспорт - ИмяПараметра = "СтандартныеПодсистемы.ПараметрыПриЗапускеИЗавершенииПрограммы"; + ИмяПараметра = "СтандартныеПодсистемы.ПараметрыПриЗапускеПрограммы"; Если ПараметрыПриложения[ИмяПараметра] = Неопределено Тогда ПараметрыПриложения.Вставить(ИмяПараметра, Новый Структура); КонецЕсли; - ПараметрыПриЗапускеИЗавершенииПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеИЗавершенииПрограммы"]; + ПараметрыПриЗапускеПрограммы = ПараметрыПриложения["СтандартныеПодсистемы.ПараметрыПриЗапускеПрограммы"]; Параметры = Новый Структура; Параметры.Вставить("ПолученныеПараметрыКлиента", Неопределено); - Если ПараметрыПриЗапускеИЗавершенииПрограммы.Свойство("ПолученныеПараметрыКлиента") - И ТипЗнч(ПараметрыПриЗапускеИЗавершенииПрограммы.ПолученныеПараметрыКлиента) = Тип("Структура") Тогда + Если ПараметрыПриЗапускеПрограммы.Свойство("ПолученныеПараметрыКлиента") + И ТипЗнч(ПараметрыПриЗапускеПрограммы.ПолученныеПараметрыКлиента) = Тип("Структура") Тогда Параметры.Вставить("ПолученныеПараметрыКлиента", - ПараметрыПриЗапускеИЗавершенииПрограммы.ПолученныеПараметрыКлиента); + ПараметрыПриЗапускеПрограммы.ПолученныеПараметрыКлиента); КонецЕсли; - Если ПараметрыПриЗапускеИЗавершенииПрограммы.Свойство("ПропуститьОчисткуСкрытияРабочегоСтола") Тогда + Если ПараметрыПриЗапускеПрограммы.Свойство("ПропуститьОчисткуСкрытияРабочегоСтола") Тогда Параметры.Вставить("ПропуститьОчисткуСкрытияРабочегоСтола"); КонецЕсли; @@ -65,16 +65,23 @@ СистемнаяИнформация = Новый СистемнаяИнформация; ЭтоLinuxКлиент = СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Linux_x86 - ИЛИ СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Linux_x86_64; - - Параметры.Вставить("ПараметрЗапуска", ПараметрЗапуска); + Или СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Linux_x86_64; + ЭтоOSXКлиент = СистемнаяИнформация.ТипПлатформы = ТипПлатформы.MacOS_x86 + Или СистемнаяИнформация.ТипПлатформы = ТипПлатформы.MacOS_x86_64; + ЭтоWindowsКлиент = СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86 + Или СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86_64; + + Параметры.Вставить("ПараметрЗапуска", ПараметрЗапуска); Параметры.Вставить("СтрокаСоединенияИнформационнойБазы", СтрокаСоединенияИнформационнойБазы()); Параметры.Вставить("ЭтоВебКлиент", ЭтоВебКлиент); Параметры.Вставить("ЭтоВебКлиентПодMacOS", ОбщегоНазначенияКлиентПовтИсп.ЭтоВебКлиентПодMacOS()); Параметры.Вставить("ЭтоLinuxКлиент", ЭтоLinuxКлиент); + Параметры.Вставить("ЭтоOSXКлиент", ЭтоOSXКлиент); + Параметры.Вставить("ЭтоWindowsКлиент", ЭтоWindowsКлиент); Параметры.Вставить("ИспользуемыйКлиент", ИспользуемыйКлиент); + Параметры.Вставить("КаталогПрограммы", КаталогПрограммы); + Параметры.Вставить("ИдентификаторКлиента", СистемнаяИнформация.ИдентификаторКлиента); Параметры.Вставить("СкрытьРабочийСтолПриНачалеРаботыСистемы", Ложь); - Параметры.Вставить("КаталогПрограммы", КаталогПрограммы); СистемнаяИнформация = Новый СистемнаяИнформация; ОперативнаяПамять = Окр(СистемнаяИнформация.ОперативнаяПамять / 1024, 1); @@ -82,6 +89,8 @@ ПараметрыКлиента = СтандартныеПодсистемыВызовСервера.ПараметрыРаботыКлиентаПриЗапуске(Параметры); + СтандартныеПодсистемыКлиент.ЗаполнитьПараметрыКлиента(ПараметрыКлиента); + // Обновление состояния скрытия рабочего стола на клиенте по состоянию на сервере. СтандартныеПодсистемыКлиент.СкрытьРабочийСтолПриНачалеРаботыСистемы( Параметры.СкрытьРабочийСтолПриНачалеРаботыСистемы, Истина); @@ -257,7 +266,7 @@ Функция ПодготовленныеОбработчикиКлиентскогоСобытия(Событие, Служебное = Ложь, ПерваяПопытка = Истина) - Параметры = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиентаПриЗапуске().ОбработчикиКлиентскихСобытий; + Параметры = СтандартныеПодсистемыКлиент.ПараметрКлиента("ОбработчикиКлиентскихСобытий"); Если Служебное Тогда Обработчики = Параметры.ОбработчикиСлужебныхСобытий.Получить(Событие); diff --git a/SSL/src/CommonModules/СтандартныеПодсистемыКлиентСервер/Module.bsl b/SSL/src/CommonModules/СтандартныеПодсистемыКлиентСервер/Module.bsl index b6424b8f8..f840ad721 100644 --- a/SSL/src/CommonModules/СтандартныеПодсистемыКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/СтандартныеПодсистемыКлиентСервер/Module.bsl @@ -5,320 +5,6 @@ #Область СлужебныйПрограммныйИнтерфейс -//////////////////////////////////////////////////////////////////////////////// -// Регистрация результата работы для вывода на клиенте. - -// Формирует структуру для регистрации результата выполнения и последующего вывода. -// -// Возвращаемое значение: -// Результат - Структура - Результат выполнения операции, который необходимо вывести. -// * Шаги - СписокЗначений - Шаги сценария. -// * Представление - Имя шага. -// * Значение - Параметры шага. -// -// См. также: -// СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(). -// -Функция ОписаниеРезультатаВыполнения(Результат = Неопределено) Экспорт - Если Результат = Неопределено Тогда - Результат = Новый Структура; - КонецЕсли; - Если Не Результат.Свойство("Шаги") Тогда - Результат.Вставить("Шаги", Новый СписокЗначений); - КонецЕсли; - Возврат Результат; -КонецФункции - -// Добавляет в структуру информацию о типах, которые необходимо обновить в динамических списках. -// Действие выполняется после вызова процедуры СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(Форма, Результат). -// Для этого структуру Результат следует передать на клиент и передать в соответствующем параметре указанной процедуры. -// -// Параметры: -// Результат - Структура - Структура, которая может быть использована для передачи информации на клиент. -// При вызове данного метода в этой структуре будет создан ключ "Шаги": -// * Шаги - СписокЗначений - Необязательный. Список, в который будет добавлена информация для вывода на клиенте. -// Структуру Результат допустимо использовать для хранения параметров вызывающего кода, -// но при этом следует контролировать чтобы вызывающий код не использовал ключ "Шаги", -// поскольку он зарезервирован для хранения и вывода результата выполнения. -// СсылкаИлиТипИлиМассив - Массив - Тип или ссылки измененных объектов, -// которые требуется обновить в динамических списках. -// ИсточникОповещенияФорм - Произвольный - Источник широковещательного оповещения открытых форм. -// Заполняется в случае, если помимо оповещения динамических списков -// также требуется разослать широковещательное оповещение открытых форм с именем события "Запись_<ИмяОбъектаМетаданных>". -// Используется только при вызове с сервера. -// -Процедура ОповеститьДинамическиеСписки(Результат, СсылкаИлиТипИлиМассив, ПараметрОповещенияФорм = Неопределено) Экспорт - Если СсылкаИлиТипИлиМассив = Неопределено Тогда - Возврат; - КонецЕсли; - - // Преобразование оповещения в массив. - - МассивТипов = Новый Массив; - ИспользоватьШироковещательноеОповещение = (ПараметрОповещенияФорм <> Неопределено); - Если ИспользоватьШироковещательноеОповещение Тогда - МассивСсылокВРазрезахТипов = Новый Соответствие; - КонецЕсли; - ТипСсылкиИлиТипаИлиМассива = ТипЗнч(СсылкаИлиТипИлиМассив); - Если ТипСсылкиИлиТипаИлиМассива = Тип("Массив") Тогда - Для Каждого Элемент Из СсылкаИлиТипИлиМассив Цикл - ТипЭлемента = ТипЗнч(Элемент); - Если ТипЭлемента = Тип("Тип") Тогда - ТипЭлемента = Элемент; - КонецЕсли; - Если МассивТипов.Найти(ТипЭлемента) = Неопределено Тогда - МассивТипов.Добавить(ТипЭлемента); - Если ИспользоватьШироковещательноеОповещение Тогда - МассивСсылокВРазрезахТипов.Вставить(ТипЭлемента, Новый Массив); - КонецЕсли; - КонецЕсли; - Если ИспользоватьШироковещательноеОповещение И ТипЭлемента <> Тип("Тип") Тогда - МассивСсылокВРазрезахТипов[ТипЭлемента].Добавить(Элемент); - КонецЕсли; - КонецЦикла; - Иначе - МассивТипов.Добавить(СсылкаИлиТипИлиМассив); - Если ИспользоватьШироковещательноеОповещение Тогда - Если ТипСсылкиИлиТипаИлиМассива = Тип("Тип") Тогда - ТипЭлемента = СсылкаИлиТипИлиМассив; - Иначе - ТипЭлемента = ТипСсылкиИлиТипаИлиМассива; - КонецЕсли; - МассивСсылокВРазрезахТипов.Вставить(ТипЭлемента, Новый Массив); - Если ТипСсылкиИлиТипаИлиМассива <> Тип("Тип") Тогда - МассивСсылокВРазрезахТипов[ТипЭлемента].Добавить(ТипСсылкиИлиТипаИлиМассива); - КонецЕсли; - КонецЕсли; - КонецЕсли; - - Если ИспользоватьШироковещательноеОповещение Тогда - Для Каждого КлючИЗначение Из МассивСсылокВРазрезахТипов Цикл - ОповеститьОткрытыеФормы(Результат, КлючИЗначение.Ключ, ПараметрОповещенияФорм, КлючИЗначение.Значение); - КонецЦикла; - КонецЕсли; - - ДобавитьШаг(Результат, "ОповеститьДинамическиеСписки", Новый Структура("МассивТипов", МассивТипов)); -КонецПроцедуры - -// Добавляет в структуру информацию об узлах дерева, которые необходимо "развернуть". -// Действие выполняется после вызова процедуры СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(Форма, Результат). -// Для этого структуру Результат следует передать на клиент и передать в соответствующем параметре указанной процедуры. -// -// Параметры: -// Результат - Структура - Структура, которая может быть использована для передачи информации на клиент. -// При вызове данного метода в этой структуре будет создан ключ "Шаги": -// * Шаги - СписокЗначений - Необязательный. Список, в который будет добавлена информация для вывода на клиенте. -// Структуру Результат допустимо использовать для хранения параметров вызывающего кода, -// но при этом следует контролировать чтобы вызывающий код не использовал ключ "Шаги", -// поскольку он зарезервирован для хранения и вывода результата выполнения. -// ИмяТаблицы - Строка - Имя таблицы формы (дерева значений), в которой требуется развернуть узел. -// Идентификатор - Произвольный - Необязательный. Идентификатор строки дерева, которую требуется развернуть. -// Если указано "*", то будут развернуты все узлы верхнего уровня. -// Если указано Неопределено, то строки дерева развернуты не будут. -// Значение по умолчанию: "*". -// СПодчиненными - Булево - Необязательный. Раскрывать ли подчиненные узлы. -// Значение по умолчанию: Ложь (не раскрывать подчиненные узлы). -// -Процедура РазвернутьУзлыДерева(Результат, ИмяТаблицы, Идентификатор = "*", СПодчиненными = Ложь) Экспорт - Если ИмяТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - РазворачиваемыйУзел = Новый Структура("ИмяТаблицы, Идентификатор, СПодчиненными"); - РазворачиваемыйУзел.ИмяТаблицы = ИмяТаблицы; - РазворачиваемыйУзел.Идентификатор = Идентификатор; - РазворачиваемыйУзел.СПодчиненными = СПодчиненными; - - ДобавитьШаг(Результат, "РазвернутьУзлыДерева", РазворачиваемыйУзел); -КонецПроцедуры - -// Добавляет в структуру информацию, необходимую для вывода предупреждения или текста ошибки. -// Действие выполняется после вызова процедуры СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(Форма, Результат). -// Для этого структуру Результат следует передать на клиент и передать в соответствующем параметре указанной процедуры. -// -// Параметры: -// Результат - Структура - Структура, которая может быть использована для передачи информации на клиент. -// При вызове данного метода в этой структуре будет создан ключ "Шаги": -// * Шаги - СписокЗначений - Необязательный. Список, в который будет добавлена информация для вывода на клиенте. -// Структуру Результат допустимо использовать для хранения параметров вызывающего кода, -// но при этом следует контролировать чтобы вызывающий код не использовал ключ "Шаги", -// поскольку он зарезервирован для хранения и вывода результата выполнения. -// Текст - Строка - Текст предупреждения. -// Подробно - Строка - Необязательный. Тексты ошибок, которые при желании может просмотреть пользователь. -// Заголовок - Строка - Необязательный. Заголовок окна. -// ПутьКРеквизитуФормы - Строка - Необязательный. Путь к реквизиту формы, значение которого вызывало ошибку. -// -Процедура ВывестиПредупреждение(Результат, Текст, Подробно = "", Заголовок = "", ПутьКРеквизитуФормы = "") Экспорт - Если ПустаяСтрока(Текст) Тогда - Возврат; - КонецЕсли; - - ВыводПредупреждения = Новый Структура("Заголовок, Текст, ПутьКРеквизитуФормы, Подробно"); - ВыводПредупреждения.Заголовок = Заголовок; - ВыводПредупреждения.Текст = Текст; - ВыводПредупреждения.Подробно = Подробно; - ВыводПредупреждения.ПутьКРеквизитуФормы = ПутьКРеквизитуФормы; - - ДобавитьШаг(Результат, "ВывестиПредупреждение", ВыводПредупреждения); -КонецПроцедуры - -// Добавляет в структуру информацию, необходимую для вывода сообщения о неверно заполненных полях формы. -// Действие выполняется после вызова процедуры СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(Форма, Результат). -// Для этого структуру Результат следует передать на клиент и передать в соответствующем параметре указанной процедуры. -// -// Параметры: -// Результат - Структура - Структура, которая может быть использована для передачи информации на клиент. -// При вызове данного метода в этой структуре будет создан ключ "Шаги": -// * Шаги - СписокЗначений - Необязательный. Список, в который будет добавлена информация для вывода на клиенте. -// Структуру Результат допустимо использовать для хранения параметров вызывающего кода, -// но при этом следует контролировать чтобы вызывающий код не использовал ключ "Шаги", -// поскольку он зарезервирован для хранения и вывода результата выполнения. -// Текст - Строка - Текст сообщения. -// ПутьКРеквизитуФормы - Строка - Необязательный. Путь к реквизиту формы, значение которого вызывало ошибку. -// -Процедура ВывестиСообщение(Результат, Текст, ПутьКРеквизитуФормы = "") Экспорт - Если ПустаяСтрока(Текст) Тогда - Возврат; - КонецЕсли; - - ВыводСообщения = Новый Структура("Текст, ПутьКРеквизитуФормы"); - ВыводСообщения.Текст = Текст; - ВыводСообщения.ПутьКРеквизитуФормы = ПутьКРеквизитуФормы; - - ДобавитьШаг(Результат, "ВывестиСообщение", ВыводСообщения); -КонецПроцедуры - -// Добавляет в структуру информацию, необходимую для вывода всплывающего оповещения. -// Действие выполняется после вызова процедуры СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(Форма, Результат). -// Для этого структуру Результат следует передать на клиент и передать в соответствующем параметре указанной процедуры. -// -// Параметры: -// Результат - Структура - Структура, которая может быть использована для передачи информации на клиент. -// При вызове данного метода в этой структуре будет создан ключ "Шаги": -// * Шаги - СписокЗначений - Необязательный. Список, в который будет добавлена информация для вывода на клиенте. -// Структуру Результат допустимо использовать для хранения параметров вызывающего кода, -// но при этом следует контролировать чтобы вызывающий код не использовал ключ "Шаги", -// поскольку он зарезервирован для хранения и вывода результата выполнения. -// Заголовок - Строка - Заголовок оповещения. Чтобы выводилась вся строка рекомендуется длина 40 или меньше. -// См. также в синтакс-помощнике описание метода глобального контекста "ПоказатьОповещениеПользователя", -// параметр "Текст". -// Текст - Строка - Текст оповещения. Чтобы выводилась вся строка рекомендуется длина 40 или меньше. -// См. также в синтакс-помощнике описание метода глобального контекста "ПоказатьОповещениеПользователя", -// параметр "Пояснение". -// Ссылка - Строка - Навигационная ссылка для перехода к объекту конфигурации. -// См. также в синтакс-помощнике описание метода глобального контекста "ПоказатьОповещениеПользователя", -// параметр "НавигационнаяСсылка". -// Картинка - Картинка - Картинка оповещения. -// См. также в синтакс-помощнике описание метода глобального контекста "ПоказатьОповещениеПользователя", -// параметр "Картинка". -// -Процедура ВывестиОповещение(Результат, Заголовок, Текст = "", Картинка = Неопределено, Ссылка = "") Экспорт - Если ПустаяСтрока(Заголовок) И ПустаяСтрока(Текст) Тогда - Возврат; - КонецЕсли; - - ВыводОповещения = Новый Структура("Заголовок, Ссылка, Текст, Картинка"); - ВыводОповещения.Заголовок = Заголовок; - ВыводОповещения.Ссылка = Ссылка; - ВыводОповещения.Текст = Текст; - ВыводОповещения.Картинка = Картинка; - - ДобавитьШаг(Результат, "ВывестиОповещение", ВыводОповещения); -КонецПроцедуры - -// Добавляет в структуру информацию, необходимую для открытия формы. -// Действие выполняется после вызова процедуры СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(Форма, Результат). -// Для этого структуру Результат следует передать на клиент и передать в соответствующем параметре указанной процедуры. -// -// Параметры: -// Результат - Структура - Структура, которая может быть использована для передачи информации на клиент. -// При вызове данного метода в этой структуре будет создан ключ "Шаги": -// * Шаги - СписокЗначений - Необязательный. Список, в который будет добавлена информация для вывода на клиенте. -// Структуру Результат допустимо использовать для хранения параметров вызывающего кода, -// но при этом следует контролировать чтобы вызывающий код не использовал ключ "Шаги", -// поскольку он зарезервирован для хранения и вывода результата выполнения. -// ПолноеИмя - Строка - Полный путь к открываемой форме. -// Параметры - Структура - Необязательный. Параметры открываемой формы. -// РежимОкна - РежимОткрытияОкнаФормы - Необязательный. Блокировать ли окно владельца. -// -Процедура ВывестиФорму(Результат, ПолноеИмя, Параметры = Неопределено, РежимОкна = Неопределено) Экспорт - Если ПустаяСтрока(ПолноеИмя) Тогда - Возврат; - КонецЕсли; - - ВыводФормы = Новый Структура("ПолноеИмя, Параметры, РежимОкна"); - ВыводФормы.ПолноеИмя = ПолноеИмя; - ВыводФормы.Параметры = Параметры; - ВыводФормы.РежимОкна = РежимОкна; - - ДобавитьШаг(Результат, "ВывестиФорму", ВыводФормы); -КонецПроцедуры - -// Добавляет в структуру информацию, необходимую для вывода предупреждения и текста ошибки. -// Действие выполняется на клиенте после вызова СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(Результат). -// -// Параметры: -// Результат - Структура - См. СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(). -// ВводныйТекст - Строка - Текст предупреждения. -// ИнформацияОбОшибке - ИнформацияОбОшибке - Необязательный. Тексты ошибок, которые при желании может просмотреть пользователь. -// -// См. также: -// СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(). -// -Процедура ВывестиИнформациюОбОшибке(Результат, ВводныйТекст, ИнформацияОбОшибке) Экспорт - Кратко = ВводныйТекст + Символы.ПС + ИсходнаяПричинаОшибки(ИнформацияОбОшибке); - Подробно = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); - ВывестиПредупреждение(Результат, Кратко, Подробно); -КонецПроцедуры - -// Устарела. Следует использовать метод глобального контекста Оповестить. -// -// Добавляет в структуру информацию о событии, о котором надо оповестить все открытые формы. -// Действие выполняется после вызова процедуры СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(Форма, Результат). -// Для этого структуру Результат следует передать на клиент и передать в соответствующем параметре указанной процедуры. -// -// Параметры: -// Результат - Структура - Структура, которая может быть использована для передачи информации на клиент. -// При вызове данного метода в этой структуре будет создан ключ "Шаги": -// * Шаги - СписокЗначений - Необязательный. Список, в который будет добавлена информация для вывода на клиенте. -// Структуру Результат допустимо использовать для хранения параметров вызывающего кода, -// но при этом следует контролировать чтобы вызывающий код не использовал ключ "Шаги", -// поскольку он зарезервирован для хранения и вывода результата выполнения. -// ИмяСобытия - Строка - Имя события, которое используется для первичной идентификации сообщения принимающими формами. -// Параметр - Произвольный - Набор данных, который может использоваться принимающей формой для обновления. -// Источник - Произвольный - Источник оповещения. -// -Процедура ОповеститьОткрытыеФормы(Результат, Знач ИмяСобытия, Знач Параметр = Неопределено, Знач Источник = Неопределено) Экспорт - Если ИмяСобытия = Неопределено Тогда - Возврат; - КонецЕсли; - Если ТипЗнч(ИмяСобытия) = Тип("Тип") Тогда - #Если Сервер Тогда - ОбъектМетаданных = Метаданные.НайтиПоТипу(ИмяСобытия); - Если ТипЗнч(ОбъектМетаданных) <> Тип("ОбъектМетаданных") Тогда - Возврат; - КонецЕсли; - ИмяСобытия = "Запись_" + ОбъектМетаданных.Имя; - Если Параметр = Неопределено Тогда - Попытка - Параметр = ПредопределенноеЗначение(ОбъектМетаданных.ПолноеИмя() + ".ПустаяСсылка"); - Исключение - Параметр = Неопределено; - КонецПопытки; - КонецЕсли; - #Иначе - Возврат; - #КонецЕсли - КонецЕсли; - - ОповещениеФорм = Новый Структура("ИмяСобытия, Параметр, Источник"); - ОповещениеФорм.ИмяСобытия = ИмяСобытия; - ОповещениеФорм.Параметр = Параметр; - ОповещениеФорм.Источник = Источник; - - ДобавитьШаг(Результат, "ОповеститьОткрытыеФормы", ОповещениеФорм); -КонецПроцедуры - //////////////////////////////////////////////////////////////////////////////// // Табличный документ @@ -452,45 +138,10 @@ КонецФункции -//////////////////////////////////////////////////////////////////////////////// -// Работа с ошибками. - -// Формирует краткое представление исходной проблемы из информации об ошибке. -// -// Параметры: -// ИнформацияОбОшибке - ИнформацияОбОшибке - Информация об ошибке. -// -// Возвращаемое значение: -// Строка - Краткое представление ошибки. -// -Функция ИсходнаяПричинаОшибки(ИнформацияОбОшибке) Экспорт - ОписаниеОшибки = ИнформацияОбОшибке.Описание; - ПричинаОшибки = ИнформацияОбОшибке.Причина; - Пока ПричинаОшибки <> Неопределено Цикл - ОписаниеОшибки = ПричинаОшибки.Описание; - ПричинаОшибки = ПричинаОшибки.Причина; - КонецЦикла; - Возврат ОписаниеОшибки; -КонецФункции - #КонецОбласти #Область СлужебныеПроцедурыИФункции -//////////////////////////////////////////////////////////////////////////////// -// Регистрация результата работы для последующего вывода на клиенте. - -// Регистрирует сведения для вывода информации. -Процедура ДобавитьШаг(Результат, ИмяПроцедуры, ПараметрыПроцедуры) - Если Не Результат.Свойство("Шаги") Тогда - Результат.Вставить("Шаги", Новый СписокЗначений); - КонецЕсли; - Результат.Шаги.Добавить(ПараметрыПроцедуры, ИмяПроцедуры); -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Работа со строками (кандидат для строковых функций). - // Определяет примерное число строк с учетом переносов. Функция ЧислоСтрок(Текст, ОтсечкаПоШирине, ПриводитьКРазмерамЭлементовФормы = Истина) Экспорт ЧислоСтрок = СтрЧислоСтрок(Текст); @@ -508,6 +159,9 @@ КонецЕсли; ПримерноеЧислоСтрок = Цел((ПримерноеЧислоСтрок+1)*Коэффициент); КонецЕсли; + Если ТекущийВариантИнтерфейсаКлиентскогоПриложения() <> ВариантИнтерфейсаКлиентскогоПриложения.Версия8_2 И ПримерноеЧислоСтрок = 2 Тогда + ПримерноеЧислоСтрок = 3; + КонецЕсли; Возврат ПримерноеЧислоСтрок; КонецФункции diff --git a/SSL/src/CommonModules/СтандартныеПодсистемыПовтИсп/Module.bsl b/SSL/src/CommonModules/СтандартныеПодсистемыПовтИсп/Module.bsl index ec3da96cd..ccada92e1 100644 --- a/SSL/src/CommonModules/СтандартныеПодсистемыПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/СтандартныеПодсистемыПовтИсп/Module.bsl @@ -398,7 +398,7 @@ // Анализ подписок на события для более сложных вариантов использования, // когда механизм платформенной авторегистрации отключен для объекта метаданных. Для каждого Подписка Из Метаданные.ПодпискиНаСобытия Цикл - НачалоНазванияПодписки = ИмяПланаОбмена + "Зарегистрировать"; + НачалоНазванияПодписки = ИмяПланаОбмена + "Регистрация"; Если ВРег(Лев(Подписка.Имя, СтрДлина(НачалоНазванияПодписки))) = ВРег(НачалоНазванияПодписки) Тогда Для каждого Тип Из Подписка.Источник.Типы() Цикл Если ОбъектМетаданных = Метаданные.НайтиПоТипу(Тип) Тогда @@ -479,8 +479,11 @@ // Функция ИменаПодсистем() Экспорт + ОтключенныеПодсистемы = Новый Соответствие; + ОбщегоНазначенияПереопределяемый.ПриОпределенииОтключенныхПодсистем(ОтключенныеПодсистемы); + Имена = Новый Соответствие; - ВставитьИменаПодчиненныхПодсистем(Имена, Метаданные); + ВставитьИменаПодчиненныхПодсистем(Имена, Метаданные, ОтключенныеПодсистемы); Возврат Новый ФиксированноеСоответствие(Имена); @@ -499,6 +502,21 @@ КонецФункции +// Проверяет наличие механизма платформы, предупреждающего об опасных действиях. +// +// Возвращаемое значение: +// Булево - если Истина, тогда работает механизм предупреждений безопасности. +// +Функция ЕстьЗащитаОтОпасныхДействий() Экспорт + + Свойства = Новый Структура("ЗащитаОтОпасныхДействий, UnsafeActionProtection"); + ЗаполнитьЗначенияСвойств(Свойства, ПользователиИнформационнойБазы.ТекущийПользователь()); + + Возврат Свойства.ЗащитаОтОпасныхДействий <> Неопределено + Или Свойства.UnsafeActionProtection <> Неопределено; + +КонецФункции + //////////////////////////////////////////////////////////////////////////////// // Для справочника ИдентификаторыОбъектовМетаданных. @@ -577,20 +595,20 @@ // Режим выполнения отложенных обработчиков обновления. // По умолчанию Последовательно. Описание.Вставить("РежимВыполненияОтложенныхОбработчиков", "Последовательно"); - Описание.Вставить("ОбновлятьПараллельноСПодсистемами", Новый Массив); + Описание.Вставить("ПараллельноеОтложенноеОбновлениеСВерсии", ""); // <СВОЙСТВА ТОЛЬКО ДЛЯ БИБЛИОТЕКИ СТАНДАРТНЫХ ПОДСИСТЕМ> Описание.Вставить("ДобавлятьСобытия", Ложь); Описание.Вставить("ДобавлятьОбработчикиСобытий", Ложь); - // ДобавлятьСлужебныеСобытия - Булево - если Истина, будет вызвана стандартная процедура - // ПриДобавленииСлужебныхСобытий(КлиентскиеСобытия, СерверныеСобытия) - // из основного модуля библиотеки. + // ДобавлятьСлужебныеСобытия - Булево - если Истина, будет вызвана + // стандартная процедура ПриДобавленииСлужебныхСобытий(КлиентскиеСобытия, СерверныеСобытия) + // из основного модуля библиотеки. // - // ДобавлятьОбработчикиСлужебныхСобытий - Булево - если Истина, будет вызвана стандартная процедура - // ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики) - // из основного модуля библиотеки. + // ДобавлятьОбработчикиСлужебныхСобытий - Булево - если Истина, будет вызвана + // стандартная процедура ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики) + // из основного модуля библиотеки. Описание.Вставить("ДобавлятьСлужебныеСобытия", Ложь); Описание.Вставить("ДобавлятьОбработчикиСлужебныхСобытий", Ложь); @@ -599,22 +617,26 @@ КонецФункции -Процедура ВставитьИменаПодчиненныхПодсистем(Имена, РодительскаяПодсистема, Все = Ложь, ИмяРодительскойПодсистемы = "") +Процедура ВставитьИменаПодчиненныхПодсистем(Имена, РодительскаяПодсистема, ОтключенныеПодсистемы, ИмяРодительскойПодсистемы = "") - Для каждого ТекущаяПодсистема Из РодительскаяПодсистема.Подсистемы Цикл + Для Каждого ТекущаяПодсистема Из РодительскаяПодсистема.Подсистемы Цикл - Если ТекущаяПодсистема.ВключатьВКомандныйИнтерфейс И Не Все Тогда + Если ТекущаяПодсистема.ВключатьВКомандныйИнтерфейс Тогда Продолжить; КонецЕсли; ИмяТекущейПодсистемы = ИмяРодительскойПодсистемы + ТекущаяПодсистема.Имя; - Имена.Вставить(ИмяТекущейПодсистемы, Истина); + Если ОтключенныеПодсистемы.Получить(ИмяТекущейПодсистемы) = Истина Тогда + Продолжить; + Иначе + Имена.Вставить(ИмяТекущейПодсистемы, Истина); + КонецЕсли; Если ТекущаяПодсистема.Подсистемы.Количество() = 0 Тогда Продолжить; КонецЕсли; - ВставитьИменаПодчиненныхПодсистем(Имена, ТекущаяПодсистема, Все, ИмяТекущейПодсистемы + "."); + ВставитьИменаПодчиненныхПодсистем(Имена, ТекущаяПодсистема, ОтключенныеПодсистемы, ИмяТекущейПодсистемы + "."); КонецЦикла; КонецПроцедуры diff --git a/SSL/src/CommonModules/СтандартныеПодсистемыСервер/Module.bsl b/SSL/src/CommonModules/СтандартныеПодсистемыСервер/Module.bsl index d821d220d..67c5868cd 100644 --- a/SSL/src/CommonModules/СтандартныеПодсистемыСервер/Module.bsl +++ b/SSL/src/CommonModules/СтандартныеПодсистемыСервер/Module.bsl @@ -24,10 +24,7 @@ Если ИменаПараметровСеанса = Неопределено Тогда ПараметрыСеанса.ПараметрыКлиентаНаСервере = Новый ФиксированноеСоответствие(Новый Соответствие); - ПараметрыСеанса.УстановленныеРасширения = КонтрольныеСуммыРасширений(); - Если ТекущийРежимЗапуска() <> Неопределено Тогда - Справочники.ВерсииРасширений.ЗарегистрироватьИспользованиеВерсииРасширений(); - КонецЕсли; + Справочники.ВерсииРасширений.УстановкаПараметровСеанса(ИменаПараметровСеанса, УстановленныеПараметры); // При установке соединения с информационной базой до вызова всех остальных обработчиков. ПередЗапускомПрограммы(); @@ -39,20 +36,7 @@ УстановленныеПараметры.Добавить("ПараметрыКлиентаНаСервере"); КонецЕсли; - Если ИменаПараметровСеанса.Найти("УстановленныеРасширения") <> Неопределено Тогда - ПараметрыСеанса.УстановленныеРасширения = КонтрольныеСуммыРасширений(); - УстановленныеПараметры.Добавить("УстановленныеРасширения"); - КонецЕсли; - - Если ИменаПараметровСеанса.Найти("ВерсияРасширений") <> Неопределено Тогда - ПараметрыСеанса.ВерсияРасширений = Справочники.ВерсииРасширений.ВерсияРасширений(); - УстановленныеПараметры.Добавить("ВерсияРасширений"); - КонецЕсли; - - Если ИменаПараметровСеанса.Найти("АдресСвойствРасширений") <> Неопределено Тогда - Справочники.ИдентификаторыОбъектовМетаданных.УстановитьПараметрСеансаАдресСвойствРасширений(); - УстановленныеПараметры.Добавить("АдресСвойствРасширений"); - КонецЕсли; + Справочники.ВерсииРасширений.УстановкаПараметровСеанса(ИменаПараметровСеанса, УстановленныеПараметры); Если ИменаПараметровСеанса.Найти("БуферОбмена") <> Неопределено Тогда ПараметрыСеанса.БуферОбмена = Новый ФиксированнаяСтруктура(Новый Структура("Источник, Данные")); @@ -134,6 +118,34 @@ КонецПроцедуры +// Возвращает номер версии Библиотеки стандартных подсистем. +// +Функция ВерсияБиблиотеки() Экспорт + + Возврат СтандартныеПодсистемыПовтИсп.ОписанияПодсистем().ПоИменам["СтандартныеПодсистемы"].Версия; + +КонецФункции + +// Получает идентификатор информационной базы. +// Если идентификатор не заполнен, то устанавливает его значение. +// Константа ИдентификаторИнформационнойБазы не должна входить в составы планов обмена и иметь +// различные значения в каждой информационной базе. +// +Функция ИдентификаторИнформационнойБазы() Экспорт + + ИдентификаторИнформационнойБазы = Константы.ИдентификаторИнформационнойБазы.Получить(); + + Если ПустаяСтрока(ИдентификаторИнформационнойБазы) Тогда + + ИдентификаторИнформационнойБазы = Строка(Новый УникальныйИдентификатор()); + Константы.ИдентификаторИнформационнойБазы.Установить(ИдентификаторИнформационнойБазы); + + КонецЕсли; + + Возврат ИдентификаторИнформационнойБазы; + +КонецФункции + //////////////////////////////////////////////////////////////////////////////// // Параметры администрирования информационной базы и кластера серверов. @@ -161,8 +173,18 @@ УстановитьПривилегированныйРежим(Истина); ПараметрыАдминистрированияИБ = Константы.ПараметрыАдминистрированияИБ.Получить().Получить(); + ПараметрыАдминистрированияПоУмолчанию = ПараметрыАдминистрированияПоУмолчанию(); + Если ПараметрыАдминистрированияИБ = Неопределено Тогда - ПараметрыАдминистрированияИБ = ПараметрыАдминистрированияПоУмолчанию(); + ПараметрыАдминистрированияИБ = ПараметрыАдминистрированияПоУмолчанию; + Иначе + Если ПараметрыАдминистрированияИБ.Свойство("РазрешеноОткрытиеВнешнихОтчетовИОбработок") Тогда + ПараметрыАдминистрированияПоУмолчанию.Вставить("РазрешеноОткрытиеВнешнихОтчетовИОбработок"); + КонецЕсли; + Если ПараметрыАдминистрированияИБ.Свойство("ПринятоРешениеПоОткрытиюВнешнихОтчетовИОбработок") Тогда + ПараметрыАдминистрированияПоУмолчанию.Вставить("ПринятоРешениеПоОткрытиюВнешнихОтчетовИОбработок"); + КонецЕсли; + ЗаполнитьЗначенияСвойств(ПараметрыАдминистрированияПоУмолчанию, ПараметрыАдминистрированияИБ); КонецЕсли; Если Не ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда @@ -185,60 +207,6 @@ КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// Аутентификации пользователя на сайте ИТС - -// Возвращает логин и пароль пользователя Интернет-поддержки, -// сохраненные в информационной базе. -// -// Возвращаемое значение: -// Структура - текущие значения: -// * Логин - Строка - логин пользователя Интернет-поддержки; -// * Пароль - Строка - пароль пользователя Интернет-поддержки. -// Неопределено - если параметры еще не были введены. -// -Функция ПараметрыАутентификацииНаСайте() Экспорт - - Если ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда - МодульИнтернетПоддержкаПользователей = ОбщегоНазначения.ОбщийМодуль("ИнтернетПоддержкаПользователей"); - Возврат МодульИнтернетПоддержкаПользователей.ДанныеАутентификацииПользователяИнтернетПоддержки(); - Иначе - Владелец = ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Справочник.ИдентификаторыОбъектовМетаданных"); - УстановитьПривилегированныйРежим(Истина); - Результат = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(Владелец, "Логин, Пароль"); - УстановитьПривилегированныйРежим(Ложь); - Возврат ?(ЗначениеЗаполнено(Результат.Логин), Результат, Неопределено); - КонецЕсли; - -КонецФункции - -// Сохраняет параметры аутентификации пользователя (логин и пароль) на пользовательском сайте 1С. -// -// Параметры: -// СохраняемыеПараметры - Структура - сохраняемые значения: -// * Логин - Строка - логин пользователя Интернет-поддержки; -// * Пароль - Строка - пароль пользователя Интернет-поддержки. -// -Процедура СохранитьПараметрыАутентификацииНаСайте(СохраняемыеПараметры) Экспорт - - ОбщегоНазначенияКлиентСервер.Проверить(Не ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей"), - НСтр("ru = 'Недопустимый вызов процедуры.'"), "СтандартныеПодсистемыСервер.СохранитьПараметрыАутентификацииНаСайте"); - - Владелец = ОбщегоНазначения.ИдентификаторОбъектаМетаданных("Справочник.ИдентификаторыОбъектовМетаданных"); - Если СохраняемыеПараметры <> Неопределено Тогда - УстановитьПривилегированныйРежим(Истина); - ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(Владелец, СохраняемыеПараметры.Пароль); - ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(Владелец, СохраняемыеПараметры.Логин, "Логин"); - УстановитьПривилегированныйРежим(Ложь); - Иначе - УстановитьПривилегированныйРежим(Истина); - ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(Владелец, Неопределено); - ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(Владелец, Неопределено, "Логин"); - УстановитьПривилегированныйРежим(Ложь); - КонецЕсли; - -КонецПроцедуры - //////////////////////////////////////////////////////////////////////////////// // Процедуры и функции работы с формами. @@ -275,6 +243,46 @@ КонецПроцедуры +// Добавляет в форму со списком условное оформление для поля Дата с составом "Дата и время". +// +// Параметры: +// Форма - УправляемаяФорма - Форма со списком. +// ПолноеИмяРеквизита - Строка - Полный путь к реквизиту типа "Дата" в формате "<ИмяСписка>.<ИмяПоля>". +// ИмяЭлемента - Строка - Имя элемента формы, связанного с реквизитом списка типа "Дата". +// +Процедура УстановитьУсловноеОформлениеПоляДата(Форма, ПолноеИмяРеквизита = "Список.Дата", ИмяЭлемента = "Дата") Экспорт + УсловноеОформлениеКД = Форма.УсловноеОформление; + УсловноеОформлениеКД.ИдентификаторПользовательскойНастройки = "ОсновноеОформление"; + + // По умолчанию используется представление "10.06.2012". + ЭлементОформления = УсловноеОформлениеКД.Элементы.Добавить(); + ЭлементОформления.Использование = Истина; + ЭлементОформления.Представление = НСтр("ru = 'Представление даты: ""10.06.2012""'"); + ЭлементОформления.Оформление.УстановитьЗначениеПараметра("Формат", "ДЛФ=D"); + + ОформляемоеПоле = ЭлементОформления.Поля.Элементы.Добавить(); + ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных(ИмяЭлемента); + + // Для сегодняшнего дня используется представления "09:46". + ЭлементОформления = УсловноеОформлениеКД.Элементы.Добавить(); + ЭлементОформления.Использование = Истина; + ЭлементОформления.Представление = НСтр("ru = 'Представление даты сегодня: ""09:46""'"); + ЭлементОформления.Оформление.УстановитьЗначениеПараметра("Формат", "ДФ=ЧЧ:мм"); + + ОформляемоеПоле = ЭлементОформления.Поля.Элементы.Добавить(); + ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных(ИмяЭлемента); + + ЭлементОтбора = ЭлементОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(ПолноеИмяРеквизита); + ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.БольшеИлиРавно; + ЭлементОтбора.ПравоеЗначение = Новый СтандартнаяДатаНачала(ВариантСтандартнойДатыНачала.НачалоЭтогоДня); + + ЭлементОтбора = ЭлементОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(ПолноеИмяРеквизита); + ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Меньше; + ЭлементОтбора.ПравоеЗначение = Новый СтандартнаяДатаНачала(ВариантСтандартнойДатыНачала.НачалоСледующегоДня); +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Подтверждение завершения работы программы. @@ -289,7 +297,8 @@ Если Результат = Неопределено Тогда Результат = ОбщегоНазначения.ОбщиеПараметрыБазовойФункциональности().ЗапрашиватьПодтверждениеПриЗавершенииПрограммы; - СтандартныеПодсистемыВызовСервера.СохранитьНастройкуПодтвержденияПриЗавершенииПрограммы(Результат); + Настройки = Новый Структура("ЗапрашиватьПодтверждениеПриЗавершенииПрограммы", Результат); + ОбщегоНазначения.СохранитьПерсональныеНастройки(Настройки); КонецЕсли; Возврат Результат; @@ -567,7 +576,7 @@ МодульПрисоединенныеФайлыСлужебный.ПриДобавленииСлужебныхСобытий(КлиентскиеСобытия, СерверныеСобытия); КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.БазоваяФункциональностьВМоделиСервиса") Тогда МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса"); МодульРаботаВМоделиСервиса.ПриДобавленииСлужебныхСобытий(КлиентскиеСобытия, СерверныеСобытия); КонецЕсли; @@ -636,6 +645,7 @@ ПриДобавленииОбработчиковСлужебныхСобытийБазовойФункциональности(КлиентскиеОбработчики, СерверныеОбработчики); РаботаВБезопасномРежимеСлужебный.ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики); + ПодключаемыеКоманды.ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики); Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); @@ -756,11 +766,6 @@ МодульОбновлениеКонфигурации.ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики); КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда - МодульОрганизацииСлужебный = ОбщегоНазначения.ОбщийМодуль("ОрганизацииСлужебный"); - МодульОрганизацииСлужебный.ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики); - КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОтправкаSMS") Тогда МодульОтправкаSMS = ОбщегоНазначения.ОбщийМодуль("ОтправкаSMS"); МодульОтправкаSMS.ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики); @@ -806,7 +811,7 @@ МодульПрисоединенныеФайлыСлужебный.ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики); КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.БазоваяФункциональностьВМоделиСервиса") Тогда МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса"); МодульРаботаВМоделиСервиса.ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики); КонецЕсли; @@ -910,6 +915,16 @@ МодульУправлениеСвойствамиСлужебный.ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики); КонецЕсли; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.СтруктураПодчиненности") Тогда + МодульСтруктураПодчиненностиСлужебный = ОбщегоНазначения.ОбщийМодуль("СтруктураПодчиненностиСлужебный"); + МодульСтруктураПодчиненностиСлужебный.ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики); + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ТекущиеДела") Тогда + МодульТекущиеДелаСлужебный = ОбщегоНазначения.ОбщийМодуль("ТекущиеДелаСлужебный"); + МодульТекущиеДелаСлужебный.ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики); + КонецЕсли; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УдалениеПомеченныхОбъектов") Тогда МодульУдалениеПомеченныхОбъектовСлужебный = ОбщегоНазначения.ОбщийМодуль("УдалениеПомеченныхОбъектовСлужебный"); МодульУдалениеПомеченныхОбъектовСлужебный.ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики); @@ -991,26 +1006,6 @@ КонецПроцедуры -// Получает идентификатор информационной базы. -// Если идентификатор не заполнен, то устанавливает его значение. -// Константа ИдентификаторИнформационнойБазы не должна входить в составы планов обмена и иметь -// различные значения в каждой информационной базе. -// -Функция ИдентификаторИнформационнойБазы() Экспорт - - ИдентификаторИнформационнойБазы = Константы.ИдентификаторИнформационнойБазы.Получить(); - - Если ПустаяСтрока(ИдентификаторИнформационнойБазы) Тогда - - ИдентификаторИнформационнойБазы = Новый УникальныйИдентификатор(); - Константы.ИдентификаторИнформационнойБазы.Установить(Строка(ИдентификаторИнформационнойБазы)); - - КонецЕсли; - - Возврат ИдентификаторИнформационнойБазы; - -КонецФункции - //////////////////////////////////////////////////////////////////////////////// // Дополнительная базовая функциональность для анализа параметров клиента на сервере. @@ -1114,12 +1109,10 @@ Иначе ВызватьИсключение НСтр("ru = 'Недопустимое обращение к необновленным параметрам работы программы - |(например, к некоторым параметрам сеанса): - |- если это обращение выполняется из формы на начальной странице - | (рабочем столе), то необходимо убедиться, что в ней имеется вызов - | процедуры ОбщегоНазначения.ПриСозданииНаСервере; - |- в остальных случаях необходимо перенести вызов прикладного кода - | после обновления параметров работы программы.'"); + |(например, к некоторым параметрам сеанса). + | + |Необходимо перенести вызов прикладного кода + |после обновления параметров работы программы.'"); КонецЕсли; КонецЕсли; КонецЕсли; @@ -1191,6 +1184,52 @@ КонецФункции +// Обновляет вспомогательные данные для работы программы, хранимые в неразделенных константах. +// +// Параметры: +// ИмяКонстанты - Строка - имя неразделенной константы, в которой сохраняется значение параметра. +// ИмяПараметра - Строка - имя параметра, который нужно установить (без приставки ИзмененияПараметра). +// ЗначениеПараметра - фиксированные данные, которые устанавливаются в качестве значения параметра, +// если отличаются от ранее установленных. +// ЕстьИзменения - Булево - (возвращаемое значение). Устанавливается Истина, если старое и новое +// значения параметра не совпадают. +// ТолькоПроверка - Булево - если указать Истина, тогда обновление не будет выполнено, а будет +// выполнено только сравнение старого и нового значения параметра, а также +// будет установлен параметр ЕстьИзменения, если значения не совпадают. +// Параметры - ФиксированнаяСтруктура - можно получить с помощью функции ПараметрыРаботыПрограммы. +// - Неопределено - (возвращаемое значение) функции ПараметрыРаботыПрограммы. +// +Процедура ОбновитьПараметрРаботыПрограммы(ИмяКонстанты, ИмяПараметра, ЗначениеПараметра, + ЕстьИзменения = Ложь, ТолькоПроверка = Ложь, Параметры = Неопределено) Экспорт + + Если Параметры = Неопределено Тогда + Параметры = ПараметрыРаботыПрограммы(ИмяКонстанты); + КонецЕсли; + + СохраненноеЗначение = Неопределено; + + Если Параметры.Свойство(ИмяПараметра) Тогда + СохраненноеЗначение = Параметры[ИмяПараметра]; + + Если Не ОбщегоНазначения.ДанныеСовпадают(ЗначениеПараметра, СохраненноеЗначение) Тогда + СохраненноеЗначение = Неопределено; + КонецЕсли; + КонецЕсли; + + Если СохраненноеЗначение <> Неопределено Тогда + Возврат; + КонецЕсли; + + ЕстьИзменения = Истина; + + Если ТолькоПроверка Тогда + Возврат; + КонецЕсли; + + УстановитьПараметрРаботыПрограммы(ИмяКонстанты, ИмяПараметра, ЗначениеПараметра); + +КонецПроцедуры + // Устанавливает вспомогательные данные для работы программы, хранимые в неразделенных константах. // // Параметры: @@ -1436,10 +1475,10 @@ // Только для внутреннего использования. Процедура ЗагрузитьОбновитьПараметрыРаботыПрограммы(ОшибкаУстановкиМонопольногоРежима = Неопределено, ВФоне = Ложь) Экспорт - МодульОценкаПроизводительностиКлиентСервер = Неопределено; + МодульОценкаПроизводительности = Неопределено; Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности") Тогда - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - ВремяНачала = МодульОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени(); + МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности"); + ВремяНачала = МодульОценкаПроизводительности.НачатьЗамерВремени(); КонецЕсли; Если ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда @@ -1447,14 +1486,14 @@ ПараметрЗапускаКлиента = ПараметрыСеанса.ПараметрыКлиентаНаСервере.Получить("ПараметрЗапуска"); УстановитьПривилегированныйРежим(Ложь); Если СтрНайти(НРег(ПараметрЗапускаКлиента), НРег("ЗапуститьОбновлениеИнформационнойБазы")) > 0 Тогда - ОчиститьВсеПараметрыРаботыРасширений(); + РегистрыСведений.ПараметрыРаботыВерсийРасширений.ОчиститьВсеПараметрыРаботыРасширений(); КонецЕсли; КонецЕсли; Если ОбщегоНазначенияПовтИсп.РазделениеВключено() И ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда - ЗаполнитьВсеПараметрыРаботыРасширений(); + РегистрыСведений.ПараметрыРаботыВерсийРасширений.ЗаполнитьВсеПараметрыРаботыРасширений(); Возврат; КонецЕсли; @@ -1505,7 +1544,7 @@ КонецЕсли; Если ВФоне Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю("ПрибавкаНаШагеПрогресса=5"); + ДлительныеОперации.СообщитьПрогресс(5); КонецЕсли; КонецЕсли; @@ -1514,8 +1553,9 @@ Попытка Справочники.ИдентификаторыОбъектовМетаданных.ВыполнитьОбновлениеДанных(Ложь, Ложь, Истина, , СписокКритичныхИзменений); Исключение + // Переход в режим открытия формы повторной синхронизации данных перед запуском + // с одним вариантом "Синхронизировать и продолжить". Если ВыполнитьЗагрузку И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда - // Сброс кэша сообщения обмена. МодульОбменДаннымиСервер.ВключитьПовторениеЗагрузкиСообщенияОбменаДаннымиПередЗапуском(); КонецЕсли; ВызватьИсключение; @@ -1528,8 +1568,9 @@ ЗаписьЖурналаРегистрации(ИмяСобытия, УровеньЖурналаРегистрации.Ошибка, , , СписокКритичныхИзменений); + // Переход в режим открытия формы повторной синхронизации данных перед запуском + // с одним вариантом "Синхронизировать и продолжить". Если ВыполнитьЗагрузку И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда - // Сброс кэша сообщения обмена. МодульОбменДаннымиСервер.ВключитьПовторениеЗагрузкиСообщенияОбменаДаннымиПередЗапуском(); КонецЕсли; @@ -1559,7 +1600,7 @@ ВызватьИсключение ТекстОшибки; КонецЕсли; Если ВФоне Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю("ПрибавкаНаШагеПрогресса=10"); + ДлительныеОперации.СообщитьПрогресс(10); КонецЕсли; КонецЕсли; @@ -1569,8 +1610,10 @@ // или обновление после загрузки справочника "Идентификаторы объектов метаданных" из главного узла. ОбновитьПараметрыРаботыПрограммы(ОшибкаУстановкиМонопольногоРежима, ВФоне); - // Заполнение параметров работы расширений - ЗаполнитьВсеПараметрыРаботыРасширений(); + // Заполнение параметров работы расширений. + Если Не ЗначениеЗаполнено(ОшибкаУстановкиМонопольногоРежима) Тогда + РегистрыСведений.ПараметрыРаботыВерсийРасширений.ЗаполнитьВсеПараметрыРаботыРасширений(); + КонецЕсли; Исключение Если СнятьМонопольныйРежим Тогда УстановитьМонопольныйРежим(Ложь); @@ -1578,8 +1621,8 @@ ВызватьИсключение; КонецПопытки; - Если МодульОценкаПроизводительностиКлиентСервер <> Неопределено Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремени("ВремяОбновленияКэшейМетаданных", ВремяНачала); + Если МодульОценкаПроизводительности <> Неопределено Тогда + МодульОценкаПроизводительности.ЗакончитьЗамерВремени("ВремяОбновленияКэшейМетаданных", ВремяНачала); КонецЕсли; КонецПроцедуры @@ -1589,10 +1632,7 @@ Если ПараметрыВыполнения.Свойство("ПараметрыКлиентаНаСервере") Тогда ПараметрыСеанса.ПараметрыКлиентаНаСервере = ПараметрыВыполнения.ПараметрыКлиентаНаСервере; - Если ПараметрыВыполнения.Свойство("ХранилищеСвойствРасширений") Тогда - Справочники.ИдентификаторыОбъектовМетаданных.УстановитьПараметрСеансаАдресСвойствРасширений( - ПараметрыВыполнения.УстановленныеРасширения, ПараметрыВыполнения.ХранилищеСвойствРасширений); - КонецЕсли; + Справочники.ВерсииРасширений.ЗарегистрироватьИспользованиеВерсииРасширений(); ВФоне = Истина; Иначе ВФоне = Ложь; @@ -1609,6 +1649,13 @@ ИнформацияОбОшибке = ИнформацияОбОшибке(); РезультатВыполнения.КраткоеСообщениеОбОшибке = КраткоеПредставлениеОшибки(ИнформацияОбОшибке); РезультатВыполнения.ПодробноеСообщениеОбОшибке = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); + // Переход в режим открытия формы повторной синхронизации данных перед запуском + // с двумя вариантами "Синхронизировать и продолжить" и "Продолжить". + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") + И ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда + МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); + МодульОбменДаннымиСервер.ВключитьПовторениеЗагрузкиСообщенияОбменаДаннымиПередЗапуском(); + КонецЕсли; КонецПопытки; Если ИнформацияОбОшибке = Неопределено @@ -1692,24 +1739,7 @@ // Функция ПараметрРаботыРасширения(ИмяПараметра) Экспорт - Запрос = Новый Запрос; - Запрос.УстановитьПараметр("ВерсияРасширений", ПараметрыСеанса.ВерсияРасширений); - Запрос.УстановитьПараметр("ИмяПараметра", ИмяПараметра); - Запрос.Текст = - "ВЫБРАТЬ - | ПараметрыРаботыВерсийРасширений.ХранилищеПараметра - |ИЗ - | РегистрСведений.ПараметрыРаботыВерсийРасширений КАК ПараметрыРаботыВерсийРасширений - |ГДЕ - | ПараметрыРаботыВерсийРасширений.ВерсияРасширений = &ВерсияРасширений - | И ПараметрыРаботыВерсийРасширений.ИмяПараметра = &ИмяПараметра"; - - Выборка = Запрос.Выполнить().Выбрать(); - Если Выборка.Следующий() Тогда - Возврат Выборка.ХранилищеПараметра; - КонецЕсли; - - Возврат Неопределено; + Возврат РегистрыСведений.ПараметрыРаботыВерсийРасширений.ПараметрРаботыРасширения(ИмяПараметра); КонецФункции @@ -1725,21 +1755,31 @@ // Процедура УстановитьПараметрРаботыРасширения(ИмяПараметра, Хранилище) Экспорт - ВерсияРасширений = ПараметрыСеанса.ВерсияРасширений; - - НаборЗаписей = РегистрыСведений.ПараметрыРаботыВерсийРасширений.СоздатьНаборЗаписей(); - НаборЗаписей.Отбор.ВерсияРасширений.Установить(ВерсияРасширений); - НаборЗаписей.Отбор.ИмяПараметра.Установить(ИмяПараметра); - - НоваяЗапись = НаборЗаписей.Добавить(); - НоваяЗапись.ВерсияРасширений = ВерсияРасширений; - НоваяЗапись.ИмяПараметра = ИмяПараметра; - НоваяЗапись.ХранилищеПараметра = Хранилище; - - НаборЗаписей.Записать(); + РегистрыСведений.ПараметрыРаботыВерсийРасширений.УстановитьПараметрРаботыРасширения(ИмяПараметра, Хранилище); КонецПроцедуры +// Проверяет, что объект метаданных относится к неразделенному расширению, +// поэтому его не следует учитывать при работе с разделенными данными, +// так как при входе в область с указанием разделителей будет другой состав +// расширений конфигурации и произойдет рассинхронизация разделенных данных. +// +// Параметры: +// ОбъектМетаданных - ОбъектМетаданных - проверяемый объект метаданных. +// +// Возвращаемое значение: +// Булево - если Истина, значит объект метаданных неразделенного расширения. +// +Функция ОбъектМетаданныхНеразделенногоРасширения(ОбъектМетаданных) + + Если Справочники.ВерсииРасширений.УстановленныеРасширенияДоступны() Тогда + Возврат Ложь; + КонецЕсли; + + Возврат ОбъектМетаданных.РасширениеКонфигурации() <> Неопределено; + +КонецФункции + // Обработчик регламентного задания УдалениеУстаревшихПараметровРаботыВерсийРасширений. Процедура УдалениеУстаревшихПараметровРаботыВерсийРасширенийОбработчикЗадания() Экспорт @@ -1750,128 +1790,43 @@ КонецПроцедуры -// Вызывает принудительное заполнение всех параметров работы для текущей версии расширений. -Процедура ЗаполнитьВсеПараметрыРаботыРасширений() - - Если УстановленныеРасширенияНедоступны() Тогда - Возврат; - КонецЕсли; - - // Заполнить идентификаторы объектов метаданных расширений. - Если ЗначениеЗаполнено(ПараметрыСеанса.УстановленныеРасширения) Тогда - СтандартныеПодсистемыПовтИсп.ИдентификаторыОбъектовМетаданныхПроверкаИспользования(Истина, Истина); - Иначе - Справочники.ИдентификаторыОбъектовРасширений.ОбновитьДанныеСправочника(); - КонецЕсли; - - ИнтеграцияСтандартныхПодсистем.ПриЗаполненииВсехПараметровРаботыРасширений(); - -КонецПроцедуры - -// Вызывает принудительную очистку всех параметров работы для текущей версии расширений. -// Очищаются только регистры, справочники не изменяются. Вызывается, чтобы вызвать -// перезаполнение параметров работы расширений, например, при использовании параметра -// запуска ЗапуститьОбновлениеИнформационнойБазы. -// -// Общий регистр ПараметрыРаботыВерсийРасширений очищается, встраиваться в -// событие ПриОчисткеВсехПараметровРаботыРасширений общего модуля ИнтеграцияСтандартныхПодсистем -// требуется только, если используются собственные регистры сведений, которых хранят версии -// кэшей объектов метаданных расширений. -// -Процедура ОчиститьВсеПараметрыРаботыРасширений() - - Если Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда - Возврат; - КонецЕсли; - - УстановитьПривилегированныйРежим(Истина); - - НачатьТранзакцию(); - Попытка - НаборЗаписей = РегистрыСведений.ИдентификаторыОбъектовВерсийРасширений.СоздатьНаборЗаписей(); - НаборЗаписей.Отбор.ВерсияРасширений.Установить(ПараметрыСеанса.ВерсияРасширений); - НаборЗаписей.Записать(); - - НаборЗаписей = РегистрыСведений.ПараметрыРаботыВерсийРасширений.СоздатьНаборЗаписей(); - НаборЗаписей.Отбор.ВерсияРасширений.Установить(ПараметрыСеанса.ВерсияРасширений); - НаборЗаписей.Записать(); - - ИнтеграцияСтандартныхПодсистем.ПриОчисткеВсехПараметровРаботыРасширений(); - - ЗафиксироватьТранзакцию(); - Исключение - ОтменитьТранзакцию(); - ВызватьИсключение; - КонецПопытки - -КонецПроцедуры - // Только для внутреннего использования. Процедура ЗаполнитьВсеПараметрыРаботыРасширенийФоновоеЗадание(Параметры) Экспорт - Справочники.ИдентификаторыОбъектовМетаданных.УстановитьПараметрСеансаАдресСвойствРасширений( - Параметры.УстановленныеРасширения, Параметры.ХранилищеСвойствРасширений); - - ЗаполнитьВсеПараметрыРаботыРасширений(); + РегистрыСведений.ПараметрыРаботыВерсийРасширений.ЗаполнитьВсеПараметрыРаботыРасширенийФоновоеЗадание(Параметры); КонецПроцедуры -// Возвращает контрольные суммы всех установленных расширений. -// -// Вызывается при запуске для установки параметра сеанса УстановленныеРасширения, -// который требуется для анализа наличия расширений и контроля динамического обновления, -// а также из формы установки расширений конфигурации в режиме 1С:Предприятия. +// Возвращает ссылку, соответствующую объекту метаданных, для использования в базе данных. // // Параметры: -// Расширения - Неопределено - получить контрольные суммы установленных расширений. -// - ДанныеФормыКоллекция - получить контрольные суммы из указанного списка. +// ОбъектМетаданных +// - ОбъектМетаданных - Объект метаданных конфигурации или расширения. +// - Тип - Тип, который можно успешно использовать в функции Метаданные.НайтиПоТипу(). +// - Строка - Полное имя объекта метаданных, +// которое можно успешно использовать в функции Метаданные.НайтиПоПолномуИмени(). // // Возвращаемое значение: -// Строка - строки вида "<Имя расширения> (<Версия расширения>) <Контрольная сумма>". -// -Функция КонтрольныеСуммыРасширений(Расширения = Неопределено) Экспорт - - Если Расширения = Неопределено Тогда - Расширения = РасширенияКонфигурации.Получить(); - КонецЕсли; - - КонтрольныеСуммы = ""; - - Для Каждого Расширение Из Расширения Цикл - Если ТипЗнч(Расширение) = Тип("РасширениеКонфигурации") Тогда - КонтрольнаяСумма = Base64Строка(Расширение.ХешСумма); - Иначе - КонтрольнаяСумма = Расширение.КонтрольнаяСумма; - КонецЕсли; - КонтрольныеСуммы = КонтрольныеСуммы + Символы.ПС - + Расширение.Имя + " (" + Расширение.Версия + ") " + КонтрольнаяСумма; - КонецЦикла; - - Возврат СокрЛ(КонтрольныеСуммы); - -КонецФункции - -// Только для внутреннего использования. -Функция РасширенияИзмененыДинамически() Экспорт - - Если УстановленныеРасширенияНедоступны() Тогда - Возврат Ложь; - КонецЕсли; - - УстановитьПривилегированныйРежим(Истина); - - Возврат ПараметрыСеанса.УстановленныеРасширения <> КонтрольныеСуммыРасширений(); - -КонецФункции - -// Расширения подключаются только в разделенном режиме, когда -// вход в область данных выполнен под разделенным пользователем, -// поэтому обновление кэшей недопустимо выполнять только в этом случае. +// СправочникСсылка.ИдентификаторыОбъектовМетаданных - Ссылка объекта метаданных конфигурации. +// СправочникСсылка.ИдентификаторыОбъектовРасширений - Ссылка объекта метаданных расширения. +// Строка - Если у данного объекта метаданных нет ссылки, то возвращается полное имя объекта метаданных. // -Функция УстановленныеРасширенияНедоступны() Экспорт +Функция ИдентификаторОбъектаМетаданных(ОписаниеОбъектаМетаданных) Экспорт - Возврат ОбщегоНазначенияПовтИсп.РазделениеВключено() - И ОбщегоНазначенияПовтИсп.СеансЗапущенБезРазделителей(); + Тип = ТипЗнч(ОписаниеОбъектаМетаданных); + Если Тип = Тип("Тип") Тогда + ОбъектМетаданных = Метаданные.НайтиПоТипу(ОписаниеОбъектаМетаданных); + ИначеЕсли Тип = Тип("Строка") Тогда + ОбъектМетаданных = Метаданные.НайтиПоПолномуИмени(ОписаниеОбъектаМетаданных); + Иначе + ОбъектМетаданных = ОписаниеОбъектаМетаданных; + КонецЕсли; + Если ТипЗнч(ОбъектМетаданных) = Тип("ОбъектМетаданных") + И ОбъектМетаданныхНеразделенногоРасширения(ОбъектМетаданных) Тогда + Возврат ОбъектМетаданных.ПолноеИмя(); + КонецЕсли; + + Возврат ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ОписаниеОбъектаМетаданных); КонецФункции @@ -2000,18 +1955,14 @@ // Параметры: // см. описание обработчика события ПриОтправкеДанныхПодчиненному() в синтаксис-помощнике. // -Процедура ПриОтправкеДанныхПодчиненному(ЭлементДанных, ОтправкаЭлемента, СозданиеНачальногоОбраза, Получатель) Экспорт - - ПодсистемаОбменДаннымиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными"); - Если ПодсистемаОбменДаннымиСуществует Тогда - МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); - МодульОбменДаннымиСервер.РассчитатьПроцентВыгрузкиРИБ(Получатель, СозданиеНачальногоОбраза); - КонецЕсли; +Процедура ПриОтправкеДанныхПодчиненному(ЭлементДанных, ОтправкаЭлемента, Знач СозданиеНачальногоОбраза, Знач Получатель) Экспорт Если ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать Тогда Возврат; КонецЕсли; + ПодсистемаОбменДаннымиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными"); + // Отправка идентификаторов объектов метаданных выполняется в другой секции сообщения обмена. ИгнорироватьОтправкуИдентификаторовОбъектовМетаданных(ЭлементДанных, ОтправкаЭлемента, СозданиеНачальногоОбраза); @@ -2042,7 +1993,7 @@ КонецЕсли; КонецЦикла; - // Вставка кода от подсистемы обмена данными в модели сервиса должна быть последней. + // Вставка кода от подсистемы обмена данными в модели сервиса должна быть последней, влияющей на логику отправки. Если ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса.РаботаВМоделиСервиса.ОбменДаннымиВМоделиСервиса") Тогда МодульОбменДаннымиВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиВМоделиСервиса"); МодульОбменДаннымиВМоделиСервиса.ПриОтправкеДанныхПодчиненному(ЭлементДанных, ОтправкаЭлемента, СозданиеНачальногоОбраза, Получатель); @@ -2052,6 +2003,11 @@ КонецЕсли; КонецЕсли; + Если ПодсистемаОбменДаннымиСуществует Тогда + МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); + МодульОбменДаннымиСервер.РассчитатьПроцентВыгрузкиРИБ(Получатель, СозданиеНачальногоОбраза); + КонецЕсли; + КонецПроцедуры // Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной @@ -2060,12 +2016,7 @@ // Параметры: // см. описание обработчика события ПриОтправкеДанныхГлавному() в синтаксис-помощнике. // -Процедура ПриОтправкеДанныхГлавному(ЭлементДанных, ОтправкаЭлемента, Получатель) - - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда - МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); - МодульОбменДаннымиСервер.РассчитатьПроцентВыгрузкиРИБ(Получатель, Ложь); - КонецЕсли; +Процедура ПриОтправкеДанныхГлавному(ЭлементДанных, ОтправкаЭлемента, Знач Получатель) Если ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать Тогда Возврат; @@ -2092,6 +2043,11 @@ КонецЕсли; КонецЦикла; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда + МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); + МодульОбменДаннымиСервер.РассчитатьПроцентВыгрузкиРИБ(Получатель, Ложь); + КонецЕсли; + КонецПроцедуры // Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной @@ -2100,13 +2056,7 @@ // Параметры: // см. описание обработчика события ПриПолученииДанныхОтПодчиненного() в синтаксис-помощнике. // -Процедура ПриПолученииДанныхОтПодчиненного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель) Экспорт - - ПодсистемаОбменДаннымиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными"); - Если ПодсистемаОбменДаннымиСуществует Тогда - МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); - МодульОбменДаннымиСервер.РассчитатьПроцентЗагрузкиРИБ(Отправитель); - КонецЕсли; +Процедура ПриПолученииДанныхОтПодчиненного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Знач Отправитель) Экспорт Если ПолучениеЭлемента = ПолучениеЭлементаДанных.Игнорировать Тогда Возврат; @@ -2123,12 +2073,19 @@ КонецЕсли; КонецЦикла; - // Вставка кода от подсистемы обмена данными должна быть последней. + ПодсистемаОбменДаннымиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными"); + + // Вставка кода от подсистемы обмена данными должна быть последней, влияющей на логику получения. Если ПодсистемаОбменДаннымиСуществует Тогда МодульОбменДаннымиСобытия = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСобытия"); МодульОбменДаннымиСобытия.ПриПолученииДанныхОтПодчиненногоВКонце(ЭлементДанных, ПолучениеЭлемента, Отправитель); КонецЕсли; + Если ПодсистемаОбменДаннымиСуществует Тогда + МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); + МодульОбменДаннымиСервер.РассчитатьПроцентЗагрузкиРИБ(Отправитель); + КонецЕсли; + КонецПроцедуры // Процедура является обработчиком одноименного события, возникающего при обмене данными в распределенной @@ -2140,16 +2097,12 @@ // Процедура ПриПолученииДанныхОтГлавного(ЭлементДанных, ПолучениеЭлемента, ОтправкаНазад, Отправитель = Неопределено) Экспорт - ПодсистемаОбменДаннымиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными"); - Если ПодсистемаОбменДаннымиСуществует Тогда - МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); - МодульОбменДаннымиСервер.РассчитатьПроцентЗагрузкиРИБ(Отправитель); - КонецЕсли; - Если ПолучениеЭлемента = ПолучениеЭлементаДанных.Игнорировать Тогда Возврат; КонецЕсли; + ПодсистемаОбменДаннымиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными"); + // Вставка кода от подсистемы обмена данными должна быть первой. Если ПодсистемаОбменДаннымиСуществует Тогда МодульОбменДаннымиСобытия = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСобытия"); @@ -2172,7 +2125,7 @@ КонецЕсли; КонецЦикла; - // Вставка кода от подсистемы обмена данными должна быть последней. + // Вставка кода от подсистемы обмена данными должна быть последней, влияющей на логику получения. Если ПодсистемаОбменДаннымиСуществует И Не СозданиеНачальногоОбраза(ЭлементДанных) Тогда @@ -2181,6 +2134,11 @@ КонецЕсли; + Если ПодсистемаОбменДаннымиСуществует Тогда + МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); + МодульОбменДаннымиСервер.РассчитатьПроцентЗагрузкиРИБ(Отправитель); + КонецЕсли; + КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// @@ -2232,6 +2190,9 @@ // Процедура ПриЗаполненииТиповИсключаемыхИзВыгрузкиЗагрузки(Типы) Экспорт + Типы.Добавить(Метаданные.Константы.АдресПубликацииИнформационнойБазыВИнтернете); + Типы.Добавить(Метаданные.Константы.АдресПубликацииИнформационнойБазыВЛокальнойСети); + Типы.Добавить(Метаданные.Справочники.ВерсииРасширений); Типы.Добавить(Метаданные.Справочники.ИдентификаторыОбъектовРасширений); Типы.Добавить(Метаданные.РегистрыСведений.ИдентификаторыОбъектовВерсийРасширений); @@ -2350,6 +2311,7 @@ Метаданные.Роли.СохранениеДанныхПользователя.Имя); КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Дополнительные функции для работы с типами. @@ -2503,7 +2465,7 @@ Процедура УстановитьИспользованиеПредопределенногоРегламентногоЗадания(ЗаданиеМетаданные, Использование) Экспорт Если ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.БазоваяФункциональностьВМоделиСервиса") Тогда МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса"); МодульРаботаВМоделиСервиса.УстановитьИспользованиеПредопределенногоРегламентногоЗадания(ЗаданиеМетаданные, Использование); КонецЕсли; @@ -2533,15 +2495,7 @@ КонецФункции -// Возвращает номер версии Библиотеки стандартных подсистем. -// -Функция ВерсияБиблиотеки() Экспорт - - Возврат СтандартныеПодсистемыПовтИсп.ОписанияПодсистем().ПоИменам["СтандартныеПодсистемы"].Версия; - -КонецФункции - -// Возвращает текущего пользователя информационной базы +// Возвращает текущего пользователя информационной базы. // Функция ТекущийПользователь() Экспорт @@ -2611,6 +2565,80 @@ Возврат Результат; КонецФункции +// Формирует сведения, необходимые для оповещения на клиенте открытых форм и динамических списков +// о массовых изменениях объектов, которые произошли на сервере. +// +// Параметры: +// ИзмененныеОбъекты - ЛюбаяСсылка, Тип, Массив - содержит сведения об измененных объектах. +// Может быть передана ссылка или массив ссылок на измененные объекты, +// либо можно указать тип или массив типов измененных объектов. +// +Функция ПодготовитьОповещениеФормОбИзменении(ИзмененныеОбъекты) Экспорт + + Результат = Новый Соответствие; + Если ИзмененныеОбъекты = Неопределено Тогда + Возврат Результат; + КонецЕсли; + + МассивТипов = Новый Массив; + ТипСсылкиИлиТипаИлиМассива = ТипЗнч(ИзмененныеОбъекты); + Если ТипСсылкиИлиТипаИлиМассива = Тип("Массив") Тогда + Для Каждого Элемент Из ИзмененныеОбъекты Цикл + ТипЭлемента = ТипЗнч(Элемент); + Если ТипЭлемента = Тип("Тип") Тогда + ТипЭлемента = Элемент; + КонецЕсли; + Если МассивТипов.Найти(ТипЭлемента) = Неопределено Тогда + МассивТипов.Добавить(ТипЭлемента); + КонецЕсли; + КонецЦикла; + Иначе + МассивТипов.Добавить(ИзмененныеОбъекты); + КонецЕсли; + + Для Каждого ТипЭлемента Из МассивТипов Цикл + ОбъектМетаданных = Метаданные.НайтиПоТипу(ТипЭлемента); + Если ТипЗнч(ОбъектМетаданных) <> Тип("ОбъектМетаданных") Тогда + Продолжить; + КонецЕсли; + ИмяСобытия = "Запись_" + ОбъектМетаданных.Имя; + Попытка + ПустаяСсылка = ПредопределенноеЗначение(ОбъектМетаданных.ПолноеИмя() + ".ПустаяСсылка"); + Исключение + ПустаяСсылка = Неопределено; + КонецПопытки; + Результат.Вставить(ТипЭлемента, Новый Структура("ИмяСобытия,ПустаяСсылка", ИмяСобытия, ПустаяСсылка)); + КонецЦикла; + Возврат Результат; + +КонецФункции + +// Устанавливает общую форму ПустойРабочийСтол на рабочий стол с пустым составом форм. +// +// Для корректного отображения разделенного рабочего стола в веб-клиенте +// неразделенный рабочий стол должен иметь не пустой состав форм, и наоборот. +// +Процедура УстановитьПустуюФормуНаПустойРабочийСтол() Экспорт + + КлючОбъекта = "Общее/НастройкиНачальнойСтраницы"; + + ТекущиеНастройки = ХранилищеСистемныхНастроек.Загрузить(КлючОбъекта); + Если ТекущиеНастройки = Неопределено Тогда + ТекущиеНастройки = Новый НастройкиНачальнойСтраницы; + КонецЕсли; + + ТекущийСоставФорм = ТекущиеНастройки.ПолучитьСоставФорм(); + + Если ТекущийСоставФорм.ЛеваяКолонка.Количество() = 0 + И ТекущийСоставФорм.ПраваяКолонка.Количество() = 0 Тогда + + ТекущийСоставФорм.ЛеваяКолонка.Добавить("ОбщаяФорма.ПустойРабочийСтол"); + ТекущиеНастройки.УстановитьСоставФорм(ТекущийСоставФорм); + ХранилищеСистемныхНастроек.Сохранить(КлючОбъекта, "", ТекущиеНастройки); + КонецЕсли; + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Условное оформление управляемой формы. @@ -2720,9 +2748,9 @@ КонецФункции //////////////////////////////////////////////////////////////////////////////// -// Процедуры и функции работы со статистикой использования конфигурации +// Процедуры и функции работы со статистикой использования конфигурации. -// Собирает статистику использования конфигурации +// Собирает статистику использования конфигурации. // Процедура СобратьСтатистикуКонфигурации() Экспорт @@ -2833,6 +2861,8 @@ Параметры.Вставить("ИмяCOMСоединителя", ОбщегоНазначенияКлиентСервер.ИмяCOMСоединителя()); Параметры.Вставить("КодОсновногоЯзыка", Метаданные.ОсновнойЯзык.КодЯзыка); + Параметры.Вставить("ЗапрашиватьПодтверждениеПриЗавершенииПрограммы", ЗапрашиватьПодтверждениеПриЗавершенииПрограммы()); + ОбщиеПараметры = ОбщегоНазначения.ОбщиеПараметрыБазовойФункциональности(); Параметры.Вставить("МинимальноНеобходимаяВерсияПлатформы", ОбщиеПараметры.МинимальноНеобходимаяВерсияПлатформы); Параметры.Вставить("РаботаВПрограммеЗапрещена", ОбщиеПараметры.РаботаВПрограммеЗапрещена); @@ -2895,7 +2925,7 @@ Если ЭтоВызовПередНачаломРаботыСистемы И НЕ (Параметры.РазделениеВключено И Не Параметры.ДоступноИспользованиеРазделенныхДанных) - И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.БазоваяФункциональностьВМоделиСервиса") Тогда МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса"); ОписаниеОшибки = ""; @@ -2988,8 +3018,8 @@ КонецЕсли; Если ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса.РаботаВМоделиСервиса.ОбменДаннымиВМоделиСервиса") Тогда - МодульАвтономнаяРаботаСлужебный = ОбщегоНазначения.ОбщийМодуль("АвтономнаяРаботаСлужебный"); - Если МодульАвтономнаяРаботаСлужебный.ПродолжитьНастройкуАвтономногоРабочегоМеста(Параметры) Тогда + МодульАвтономнаяРабота = ОбщегоНазначения.ОбщийМодуль("АвтономнаяРабота"); + Если МодульАвтономнаяРабота.ПродолжитьНастройкуАвтономногоРабочегоМеста(Параметры) Тогда Возврат Ложь; КонецЕсли; КонецЕсли; @@ -3064,7 +3094,6 @@ УстановитьПривилегированныйРежим(Истина); Параметры.Вставить("АвторизованныйПользователь", Пользователи.АвторизованныйПользователь()); - Параметры.Вставить("ПредставлениеПользователя", Строка(Параметры.АвторизованныйПользователь)); Параметры.Вставить("ЗаголовокПриложения", СокрЛП(Константы.ЗаголовокСистемы.Получить())); УстановитьПривилегированныйРежим(Ложь); @@ -3313,17 +3342,6 @@ КонецФункции -//////////////////////////////////////////////////////////////////////////////// -// Для справочника ИдентификаторыОбъектовМетаданных. - -// Только для внутреннего использования. -Процедура ЗаполнитьИменаОбъектовМетаданныхФоновоеЗадание(АдресВременногоХранилища) Экспорт - - Справочники.ИдентификаторыОбъектовМетаданных.ЗаполнитьИменаОбъектовМетаданныхФоновоеЗадание( - АдресВременногоХранилища); - -КонецПроцедуры - //////////////////////////////////////////////////////////////////////////////// // Обновление информационной базы. @@ -3501,7 +3519,7 @@ // Используется в обработчике обновления ИБ. Процедура ПеренестиПаролиВБезопасноеХранилище() Экспорт - // Аутентификация на пользовательском сайте + // Аутентификация на пользовательском сайте. Результат = Новый Структура("Логин,Пароль"); Результат.Логин = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить("АутентификацияНаПользовательскомСайте", "КодПользователя", ""); Результат.Пароль = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить("АутентификацияНаПользовательскомСайте", "Пароль", ""); @@ -3731,7 +3749,7 @@ // Проверка настройки совместимости конфигурации с версией платформы. СистемнаяИнформация = Новый СистемнаяИнформация; - МинимальнаяВерсияПлатформы = "8.3.6.2041"; + МинимальнаяВерсияПлатформы = "8.3.8.1652"; Если ОбщегоНазначенияКлиентСервер.СравнитьВерсии(СистемнаяИнформация.ВерсияПриложения, МинимальнаяВерсияПлатформы) < 0 Тогда ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Для запуска необходима версия платформы 1С:Предприятие %1 или выше.'"), МинимальнаяВерсияПлатформы); @@ -3758,6 +3776,10 @@ НедоступныйРежим = "8.3.4"; ИначеЕсли ТекущийРежим = Режимы.Версия8_3_5 Тогда НедоступныйРежим = "8.3.5"; + ИначеЕсли ТекущийРежим = Режимы.Версия8_3_6 Тогда + НедоступныйРежим = "8.3.6"; + ИначеЕсли ТекущийРежим = Режимы.Версия8_3_7 Тогда + НедоступныйРежим = "8.3.7"; Иначе НедоступныйРежим = ""; КонецЕсли; @@ -3766,7 +3788,7 @@ ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Режим совместимости конфигурации с 1С:Предприятием версии %1 не поддерживается. |Для запуска установите в конфигурации режим совместимости с 1С:Предприятием - |версии не ниже 8.3.6 или ""Не использовать"".'"), + |версии не ниже 8.3.8 или ""Не использовать"".'"), НедоступныйРежим); КонецЕсли; @@ -3810,7 +3832,7 @@ ПользователиСлужебный.УстановитьНачальныеНастройки(""); КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.БазоваяФункциональностьВМоделиСервиса") Тогда МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса"); МодульРаботаВМоделиСервиса.ПриПроверкеВключенияБезопасногоРежимаРазделенияДанных(); КонецЕсли; @@ -3820,6 +3842,36 @@ МодульРезервноеКопированиеОбластейДанных = ОбщегоНазначения.ОбщийМодуль("РезервноеКопированиеОбластейДанных"); МодульРезервноеКопированиеОбластейДанных.УстановитьФлагАктивностиПользователяВОбласти(); КонецЕсли; + + ОчиститьНачальнуюСтраницуНеразделенногоПользователяПриПервомВходе(); + +КонецПроцедуры + +// Для процедуры ПередЗапускомПрограммы. +Процедура ОчиститьНачальнуюСтраницуНеразделенногоПользователяПриПервомВходе() + + Если ТекущийРежимЗапуска() = Неопределено + Или Не ОбщегоНазначенияПовтИсп.РазделениеВключено() + Или Не ОбщегоНазначенияПовтИсп.СеансЗапущенБезРазделителей() Тогда + Возврат; + КонецЕсли; + + КлючОбъекта = "БазоваяФункциональность"; + КлючНастроек = "ОчисткаНачальнойСтраницыНеразделенногоПользователяВыполнена"; + + Если ХранилищеОбщихНастроек.Загрузить(КлючОбъекта, КлючНастроек) = 1 Тогда + УстановитьПустуюФормуНаПустойРабочийСтол(); + Возврат; + КонецЕсли; + + СоставФорм = Новый СоставФормНачальнойСтраницы; + СоставФорм.ЛеваяКолонка.Добавить("ОбщаяФорма.ПустойРабочийСтол"); + Настройки = Новый НастройкиНачальнойСтраницы; + Настройки.УстановитьСоставФорм(СоставФорм); + ХранилищеСистемныхНастроек.Сохранить("Общее/НастройкиНачальнойСтраницы", "", Настройки); + + ХранилищеОбщихНастроек.Сохранить(КлючОбъекта, КлючНастроек, 1); + КонецПроцедуры Процедура ВыполнитьОбработчикиУстановкиПараметровСеанса(ИменаПараметровСеанса, Обработчики, УстановленныеПараметры) @@ -4144,15 +4196,13 @@ // ПередНачаломРаботыСистемы, // ПриНачалеРаботыСистемы, // ПриОбработкеПараметровЗапуска, -// ПередЗавершениемРаботыСистемы, -// ПриПолученииСпискаПредупрежденийЗавершенияРаботы. +// ПередЗавершениемРаботыСистемы. // // Серверные события: // ПриДобавленииИсключенийПоискаСсылок, // ПриДобавленииПереименованийОбъектовМетаданных, // ПриДобавленииПараметровРаботыКлиентаПриЗапуске, // ПриДобавленииПараметровРаботыКлиента, -// ПриДобавленииПараметровРаботыКлиентаПриЗавершении, // ПриВключенииРазделенияПоОбластямДанных, // ПриОтправкеДанныхПодчиненному, // ПриОтправкеДанныхГлавному, @@ -4223,29 +4273,19 @@ КлиентскиеСобытия.Добавить( "СтандартныеПодсистемы.БазоваяФункциональность\ПриОбработкеПараметровЗапуска"); - // Вызывается перед интерактивным завершением работы пользователя с областью данных или в локальном режиме. - // Соответствует событию ПередЗавершениемРаботыСистемы модулей приложения. - // - // Параметры см. в модуле ОбщегоНазначенияКлиентПереопределяемый. - // - // Синтаксис: - // Процедура ПередЗавершениемРаботыСистемы(Параметры) Экспорт - // - // (То же, что ОбщегоНазначенияКлиентПереопределяемый.ПередЗавершениемРаботыСистемы). - КлиентскиеСобытия.Добавить( - "СтандартныеПодсистемы.БазоваяФункциональность\ПередЗавершениемРаботыСистемы"); - // Доопределяет список предупреждений пользователю перед завершением работы системы. // // Параметры: + // Отказ - Булево - Признак отказа от выхода из программы. Если в теле процедуры-обработчика установить + // данному параметру значение Истина, то работа с программой не будет завершена. // Предупреждения - Массив - в массив можно добавить элементы типа Структура, - // свойства которой см. в СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершениеРаботы. + // свойства которой см. в СтандартныеПодсистемыКлиент.ПредупреждениеПриЗавершенииРаботы. // // Синтаксис: - // Процедура ПриПолученииСпискаПредупрежденийЗавершенияРаботы(Предупреждения) Экспорт + // Процедура ПередЗавершениемРаботыСистемы(Отказ, Предупреждения) Экспорт // КлиентскиеСобытия.Добавить( - "СтандартныеПодсистемы.БазоваяФункциональность\ПриПолученииСпискаПредупрежденийЗавершенияРаботы"); + "СтандартныеПодсистемы.БазоваяФункциональность\ПередЗавершениемРаботыСистемы"); // Проверяет возможность выполнения резервного копирования в пользовательском режиме. // @@ -4360,26 +4400,6 @@ СерверныеСобытия.Добавить( "СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПараметровРаботыКлиента"); - // Доопределяет структуру параметров, необходимых для работы клиентского кода - // конфигурации при завершении, т.е. в обработчиках: - // - ПередЗавершениемРаботыСистемы, - // - ПриЗавершенииРаботыСистемы. - // - // Параметры: - // Параметры - Структура, в которую можно вставить параметры работы клиента при запуске. - // Ключ - имя параметра, - // Значение - значение параметра. - // - // Пример использования: - // Параметры.Вставить(<ИмяПараметра>, <Код получения значения параметра>); - // - // Синтаксис: - // Процедура ПриДобавленииПараметровРаботыКлиентаПриЗавершении(Параметры) Экспорт - // - // (То же, что ОбщегоНазначенияПереопределяемый.ПараметрыРаботыКлиентаПриЗавершении). - СерверныеСобытия.Добавить( - "СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПараметровРаботыКлиентаПриЗавершении"); - // Вызывается при включении разделения данных по областям данных. // // Синтаксис: @@ -4620,8 +4640,8 @@ "СтандартныеПодсистемыСервер"); СерверныеОбработчики[ - "ТехнологияСервиса.ВыгрузкаЗагрузкаДанных\ПриЗаполненииТиповИсключаемыхИзВыгрузкиЗагрузки"].Добавить( - "СтандартныеПодсистемыСервер"); + "ТехнологияСервиса.ВыгрузкаЗагрузкаДанных\ПриЗаполненииТиповИсключаемыхИзВыгрузкиЗагрузки" + ].Добавить("СтандартныеПодсистемыСервер"); КонецЕсли; Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ТекущиеДела") Тогда @@ -4629,6 +4649,7 @@ "СтандартныеПодсистемыСервер"); КонецЕсли; + КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// @@ -4664,7 +4685,7 @@ Если ТипЗнч(Событие) = Тип("Строка") Тогда // Имя события в виде строки. ОбработчикиСобытий.Вставить(Событие, Новый Массив); - Иначе // Описание события в виде структуры + Иначе // Описание события в виде структуры. ОбработчикиСобытий.Вставить(Событие.Имя, Новый Массив); Если Событие.Обязательное Тогда Если ОбязательныеСобытия.Получить(Событие.Имя) = Неопределено Тогда @@ -4879,7 +4900,7 @@ БезИзменений.Вставить("БазоваяФункциональностьСлужебныеСобытия"); КонецЕсли; Если ВФоне Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю("ПрибавкаНаШагеПрогресса=20"); + ДлительныеОперации.СообщитьПрогресс(20); КонецЕсли; КонецЕсли; @@ -4901,7 +4922,7 @@ КонецЕсли; КонецЕсли; Если ВФоне Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю("ПрибавкаНаШагеПрогресса=50"); + ДлительныеОперации.СообщитьПрогресс(50); КонецЕсли; КонецЕсли; @@ -4918,7 +4939,7 @@ БезИзменений.Вставить("ПользователиПараметрыРаботы"); КонецЕсли; Если ВФоне Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю("ПрибавкаНаШагеПрогресса=80"); + ДлительныеОперации.СообщитьПрогресс(80); КонецЕсли; КонецЕсли; @@ -4941,7 +4962,7 @@ КонецЕсли; КонецЕсли; Если ВФоне Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю("ПрибавкаНаШагеПрогресса=100"); + ДлительныеОперации.СообщитьПрогресс(100); КонецЕсли; КонецЕсли; diff --git a/SSL/src/CommonModules/СтроковыеФункцииКлиентСервер/Module.bsl b/SSL/src/CommonModules/СтроковыеФункцииКлиентСервер/Module.bsl index bc30cfca5..0ffd80f06 100644 --- a/SSL/src/CommonModules/СтроковыеФункцииКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/СтроковыеФункцииКлиентСервер/Module.bsl @@ -275,36 +275,29 @@ // Структура - структура параметров, где ключ - имя параметра, значение - значение параметра. // Функция ПолучитьПараметрыИзСтроки(Знач СтрокаПараметров, Знач Разделитель = ";") Экспорт - Результат = Новый Структура; - СимволДвойныеКавычки = Символ(34); // (") - - МассивПодстрок = СтрРазделить(СтрокаПараметров, Разделитель, Ложь); - - Для Каждого СтрокаПараметра Из МассивПодстрок Цикл - - ПозицияПервогоЗнакаРавенства = СтрНайти(СтрокаПараметра, "="); - - // Получаем имя параметра - ИмяПараметра = СокрЛП(Лев(СтрокаПараметра, ПозицияПервогоЗнакаРавенства - 1)); - - // Получаем значение параметра. - ЗначениеПараметра = СокрЛП(Сред(СтрокаПараметра, ПозицияПервогоЗнакаРавенства + 1)); - - Если СтрНачинаетсяС(ЗначениеПараметра, СимволДвойныеКавычки) - И СтрЗаканчиваетсяНа(ЗначениеПараметра, СимволДвойныеКавычки) Тогда - - ЗначениеПараметра = Сред(ЗначениеПараметра, 2, СтрДлина(ЗначениеПараметра) - 2); - + ОписаниеПараметра = ""; + НайденоНачалоСтроки = Ложь; + НомерПоследнегоСимвола = СтрДлина(СтрокаПараметров); + Для НомерСимвола = 1 По НомерПоследнегоСимвола Цикл + Символ =Сред(СтрокаПараметров, НомерСимвола, 1); + Если Символ = """" Тогда + НайденоНачалоСтроки = Не НайденоНачалоСтроки; КонецЕсли; - - Если Не ПустаяСтрока(ИмяПараметра) Тогда - - Результат.Вставить(ИмяПараметра, ЗначениеПараметра); - + Если Символ <> Разделитель Или НайденоНачалоСтроки Тогда + ОписаниеПараметра = ОписаниеПараметра + Символ; + КонецЕсли; + Если Символ = Разделитель И Не НайденоНачалоСтроки Или НомерСимвола = НомерПоследнегоСимвола Тогда + Позиция = СтрНайти(ОписаниеПараметра, "="); + Если Позиция > 0 Тогда + ИмяПараметра = СокрЛП(Лев(ОписаниеПараметра, Позиция - 1)); + ЗначениеПараметра = СокрЛП(Сред(ОписаниеПараметра, Позиция + 1)); + ЗначениеПараметра = СократитьДвойныеКавычки(ЗначениеПараметра); + Результат.Вставить(ИмяПараметра, ЗначениеПараметра); + КонецЕсли; + ОписаниеПараметра = ""; КонецЕсли; - КонецЦикла; Возврат Результат; @@ -942,9 +935,7 @@ КонецФункции -// Преобразует исходную строку в число. -// Превращает строку в число без вызова исключений. Стандартная функция преобразования. -// Число() строго контролирует отсутствие каких-либо символов кроме числовых. +// Преобразует исходную строку в число без вызова исключений. // // Параметры: // ИсходнаяСтрока - Строка - Строка, которую необходимо привести к числу. @@ -999,7 +990,7 @@ Возврат Результат; КонецФункции -// Преобразует исходную строку в дату +// Преобразует исходную строку в дату. // // Параметры: // ДатаСтрока - Строка - Строка, которую необходимо привести к дате. @@ -1144,7 +1135,7 @@ Пока Позиция > 0 Цикл Результат = Результат + Лев(СтрокаПодстановки, Позиция - 1); СимволПослеПроцента = Сред(СтрокаПодстановки, Позиция + 1, 1); - ПодставляемыйПараметр = ""; + ПодставляемыйПараметр = Неопределено; Если СимволПослеПроцента = "1" Тогда ПодставляемыйПараметр = Параметр1; ИначеЕсли СимволПослеПроцента = "2" Тогда @@ -1164,7 +1155,7 @@ ИначеЕсли СимволПослеПроцента = "9" Тогда ПодставляемыйПараметр = Параметр9; КонецЕсли; - Если ПодставляемыйПараметр = "" Тогда + Если ПодставляемыйПараметр = Неопределено Тогда Результат = Результат + "%"; СтрокаПодстановки = Сред(СтрокаПодстановки, Позиция + 1); Иначе diff --git a/SSL/src/CommonModules/СтруктураПодчиненностиПереопределяемый/Module.bsl b/SSL/src/CommonModules/СтруктураПодчиненностиПереопределяемый/Module.bsl index a85aa6439..7c018d580 100644 --- a/SSL/src/CommonModules/СтруктураПодчиненностиПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/СтруктураПодчиненностиПереопределяемый/Module.bsl @@ -14,7 +14,7 @@ // Возвращаемое значение: // Массив - массив наименований реквизитов документа. // -Функция МассивДополнительныхРеквизитовДокумента(ИмяДокумента) Экспорт +Функция МассивРеквизитовОбъектаДляФормированияПредставления(ИмяДокумента) Экспорт МассивДопРеквизитов = Новый Массив; @@ -29,14 +29,14 @@ // Параметры: // Выборка - КоллекцияДанных - структура или выборка из результатов запроса // в которой содержатся дополнительные реквизиты, на основании -// которых можно сформировать переопределенное представление +// которых можно сформировать переопределенное представление // документа для вывода в отчет "Структура подчиненности". // // Возвращаемое значение: // Строка,Неопределено - переопределенное представление документа, или Неопределено, // если для данного типа документов такое не задано. // -Функция ПолучитьПредставлениеДокументаДляПечати(Выборка) Экспорт +Функция ПредставлениеОбъектаДляВыводаВОтчет(Выборка) Экспорт diff --git a/SSL/src/CommonModules/СтруктураПодчиненностиСлужебный/Module.bsl b/SSL/src/CommonModules/СтруктураПодчиненностиСлужебный/Module.bsl new file mode 100644 index 000000000..ff0711284 --- /dev/null +++ b/SSL/src/CommonModules/СтруктураПодчиненностиСлужебный/Module.bsl @@ -0,0 +1,43 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Связанные документы". +// +//////////////////////////////////////////////////////////////////////////////// + +#Область СлужебныйПрограммныйИнтерфейс + +//////////////////////////////////////////////////////////////////////////////// +// Добавление обработчиков служебных событий (подписок). + +// См. описание этой же процедуры в модуле СтандартныеПодсистемыСервер. +Процедура ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики) Экспорт + + // СЕРВЕРНЫЕ ОБРАБОТЧИКИ. + + ИмяСобытия = "СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПереименованийОбъектовМетаданных"; + СерверныеОбработчики[ИмяСобытия].Добавить("СтруктураПодчиненностиСлужебный"); + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Обработчики служебных событий. + + +// Заполняет переименования тех объектов метаданных, которые невозможно +// автоматически найти по типу, но ссылки на которые требуется сохранять +// в базе данных (например: подсистемы, роли). +// +// См. также: +// ОбщегоНазначения.ДобавитьПереименование(). +// +Процедура ПриДобавленииПереименованийОбъектовМетаданных(Итог) Экспорт + + Библиотека = "СтандартныеПодсистемы"; + + СтароеИмя = "Роль.ИспользованиеСтруктурыПодчиненности"; + НовоеИмя = "Роль.ПросмотрСвязанныеДокументы"; + ОбщегоНазначения.ДобавитьПереименование(Итог, "2.3.3.5", СтароеИмя, НовоеИмя, Библиотека); + +КонецПроцедуры + + +#КонецОбласти diff --git a/SSL/src/CommonModules/СтруктураПодчиненностиСлужебный/СтруктураПодчиненностиСлужебный.mdo b/SSL/src/CommonModules/СтруктураПодчиненностиСлужебный/СтруктураПодчиненностиСлужебный.mdo new file mode 100644 index 000000000..9ee11da58 --- /dev/null +++ b/SSL/src/CommonModules/СтруктураПодчиненностиСлужебный/СтруктураПодчиненностиСлужебный.mdo @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="393074c4-0afc-4232-8101-11a4ea6ed28a"> + <name>СтруктураПодчиненностиСлужебный</name> + <synonym> + <key>ru</key> + <value>Структура подчиненности служебный</value> + </synonym> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ТекущиеДелаПереопределяемый/Module.bsl b/SSL/src/CommonModules/ТекущиеДелаПереопределяемый/Module.bsl index 5fc4e133c..97627f76f 100644 --- a/SSL/src/CommonModules/ТекущиеДелаПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ТекущиеДелаПереопределяемый/Module.bsl @@ -5,31 +5,38 @@ #Область ПрограммныйИнтерфейс -// Заполняет список обработчиков текущих дел. +// Вызывается для получения списка обработчиков для формирования (или обновления) +// списка всех текущих дел, предусмотренных в конфигурации. Обработчики - это модули +// менеджеров объектов или общие модули, в которых определена процедура ПриЗаполненииСпискаТекущихДел. // // Параметры: -// Обработчики - Массив - массив ссылок на модули менеджеров или общие модули, в которых -// определена процедура ПриЗаполненииСпискаТекущихДел. +// Обработчики - Массив - массив ссылок на модули менеджеров или общие модули, +// например, Документы.ЗаказПокупателя, ТекущиеДелаПоПродажам. // Процедура ПриОпределенииОбработчиковТекущихДел(Обработчики) Экспорт + + КонецПроцедуры -// Получает список разделов командного интерфейса в заданном порядке. +// Задает начальный порядок разделов в панели текущих дел. // // Параметры: // Разделы - Массив - массив разделов командного интерфейса. -// Задает начальный порядок разделов в панели текущих дел. +// Разделы в панели текущих дел выводятся в +// том порядке, в котором они были добавлены в массив. // Процедура ПриОпределенииПорядкаРазделовКомандногоИнтерфейса(Разделы) Экспорт + + КонецПроцедуры -// Отключает текущие дела. +// Определяет текущие дела, которые не будут выводиться пользователю. // // Параметры: // ОтключаемыеДела - Массив - массив строк идентификаторов текущих дел, которые нужно отключать. @@ -38,8 +45,12 @@ КонецПроцедуры -// Устанавливает общие параметры запросов для расчета текущих дел. -// См. ТекущиеДела.УстановитьОбщиеПараметрыЗапросов(). +// Позволяет установить параметры запросов, общие для нескольких текущих дел. +// +// Например, если в нескольких обработчиках получения текущих дел устанавливается +// параметр "ТекущаяДата", то установку параметра можно прописать в данной +// процедуре, а в обработчике формирования дела сделать вызов процедуры +// ТекущиеДела.УстановитьОбщиеПараметрыЗапросов(), которая установить данный параметр. // // Параметры: // Запрос - выполняемый запрос. @@ -49,8 +60,8 @@ КонецПроцедуры -// Процедура-обработчик, вызываемая в форме расшифровки текущего дела. -// Устанавливает параметры открытия формы и необходимые отборы списка формы. +// Процедура-обработчик, которую можно вызывать в формах расшифровки текущих дел +// для переопределения параметров открытия формы и установки необходимых отборов списках формы. // // Параметры: // Форма - УправляемаяФорма @@ -60,9 +71,8 @@ КонецПроцедуры -// Процедура-обработчик, вызываемая в форме расшифровки текущего дела. -// Позволяет заменить сохраненные значения реквизитов формы. -// Заменяет сохраненные значения реквизитов формы на свойства Форма.Параметры.СтруктураБыстрогоОтбора. +// Процедура-обработчик, которую можно вызывать в соответствующем обработчике форм +// расшифровки текущих дел для замены сохраненных значений реквизитов формы. // // Параметры: // Форма - УправляемаяФорма diff --git a/SSL/src/CommonModules/ТекущиеДелаСервер/Module.bsl b/SSL/src/CommonModules/ТекущиеДелаСервер/Module.bsl index dc5f68ba7..83a29966c 100644 --- a/SSL/src/CommonModules/ТекущиеДелаСервер/Module.bsl +++ b/SSL/src/CommonModules/ТекущиеДелаСервер/Module.bsl @@ -19,6 +19,7 @@ ПодсистемыКомандногоИнтерфейса = ПринадлежностьОбъектов[ИмяОбъектаМетаданных]; Если ПодсистемыКомандногоИнтерфейса = Неопределено Тогда ПодсистемыКомандногоИнтерфейса = Новый Массив; + ПодсистемыКомандногоИнтерфейса.Добавить(Обработки.ТекущиеДела); КонецЕсли; Возврат ПодсистемыКомандногоИнтерфейса; diff --git a/SSL/src/CommonModules/ТекущиеДелаСлужебный/Module.bsl b/SSL/src/CommonModules/ТекущиеДелаСлужебный/Module.bsl index b05219763..2c51ed53e 100644 --- a/SSL/src/CommonModules/ТекущиеДелаСлужебный/Module.bsl +++ b/SSL/src/CommonModules/ТекущиеДелаСлужебный/Module.bsl @@ -38,6 +38,18 @@ КонецПроцедуры +// См. описание этой же процедуры в модуле СтандартныеПодсистемыСервер. +Процедура ПриДобавленииОбработчиковСлужебныхСобытий(КлиентскиеОбработчики, СерверныеОбработчики) Экспорт + + // СЕРВЕРНЫЕ ОБРАБОТЧИКИ. + + ИмяМодуля = "ТекущиеДелаСлужебный"; + + ИмяСобытия = "СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПереименованийОбъектовМетаданных"; + СерверныеОбработчики[ИмяСобытия].Добавить(ИмяМодуля); + +КонецПроцедуры + // Заполняет список текущих дел пользователя. // // Параметры: @@ -64,8 +76,9 @@ ОбработчикиСобытия = ОбщегоНазначения.ОбработчикиСлужебногоСобытия( "СтандартныеПодсистемы.ТекущиеДела\ПриЗаполненииСпискаТекущихДел"); - Для каждого Обработчик Из ОбработчикиСобытия Цикл - Обработчик.Модуль.ПриЗаполненииСпискаТекущихДел(ТекущиеДела); + КоличествоДел = 0; + Для Каждого Обработчик Из ОбработчикиСобытия Цикл + ДобавитьДело(ТекущиеДела, Обработчик.Модуль, КоличествоДел); КонецЦикла; // Добавление дел от прикладных конфигураций. @@ -73,7 +86,7 @@ ТекущиеДелаПереопределяемый.ПриОпределенииОбработчиковТекущихДел(ОбработчикиЗаполненияДел); Для Каждого Обработчик Из ОбработчикиЗаполненияДел Цикл - Обработчик.ПриЗаполненииСпискаТекущихДел(ТекущиеДела); + ДобавитьДело(ТекущиеДела, Обработчик, КоличествоДел); КонецЦикла; // Постобработка результата. @@ -115,7 +128,7 @@ // СовместноДляПользователейИВнешнихПользователей. НазначениеРолей.СовместноДляПользователейИВнешнихПользователей.Добавить( - Метаданные.Роли.ИспользованиеТекущихДел.Имя); + Метаданные.Роли.ИспользованиеОбработкиТекущиеДела.Имя); КонецПроцедуры @@ -123,6 +136,24 @@ #Область СлужебныеПроцедурыИФункции +// Заполняет переименования тех объектов метаданных, которые невозможно +// автоматически найти по типу, но ссылки на которые требуется сохранять +// в базе данных (например: подсистемы, роли). +// +// См. также: +// ОбщегоНазначения.ДобавитьПереименование(). +// +Процедура ПриДобавленииПереименованийОбъектовМетаданных(Итог) Экспорт + + Библиотека = "СтандартныеПодсистемы"; + + СтароеИмя = "Роль.ИспользованиеТекущихДел"; + НовоеИмя = "Роль.ИспользованиеОбработкиТекущиеДела"; + ОбщегоНазначения.ДобавитьПереименование(Итог, "2.3.3.25", СтароеИмя, НовоеИмя, Библиотека); + + +КонецПроцедуры + // Получает числовые значения дел из переданного запроса. // // Запрос с данными должен содержать только одну строку с произвольным количеством полей. @@ -260,11 +291,18 @@ Дело.ЭтоРаздел = Истина; Дело.ПредставлениеРаздела = ?(ЗначениеЗаполнено(Дело.Владелец.Синоним), Дело.Владелец.Синоним, Дело.Владелец.Имя); Иначе + Если ТипЗнч(Дело.Владелец) = Тип("ОбработкаМенеджер.ТекущиеДела") Тогда + Дело.Владелец = Дело.Владелец.ПолноеИмя(); + Дело.Идентификатор = СтрЗаменить(Дело.Идентификатор, " ", ""); + КонецЕсли; + ЭтоИдентификаторДела = (ТекущиеДела.Найти(Дело.Владелец, "Идентификатор") <> Неопределено); - Если ЭтоИдентификаторДела Тогда - Дело.ИдентификаторВладельца = Дело.Владелец; - Иначе - Дело.ИдентификаторВладельца = СтрЗаменить(Дело.Владелец, " ", ""); + Если Не ЭтоИдентификаторДела Тогда + ЭтоИдентификаторДела = (ТекущиеДела.Найти(СтрЗаменить(Дело.Владелец, " ", ""), "Идентификатор") <> Неопределено); + КонецЕсли; + + Дело.ИдентификаторВладельца = СтрЗаменить(Дело.Владелец, " ", ""); + Если Не ЭтоИдентификаторДела Тогда Дело.ЭтоРаздел = Истина; Дело.ПредставлениеРаздела = Дело.Владелец; КонецЕсли; @@ -316,4 +354,33 @@ КонецФункции +Процедура ДобавитьДело(ТекущиеДела, Менеджер, КоличествоДел) + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности") Тогда + МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности"); + НачалоЗамера = МодульОценкаПроизводительности.НачатьЗамерВремени(); + КонецЕсли; + + Менеджер.ПриЗаполненииСпискаТекущихДел(ТекущиеДела); + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности") + И ТекущиеДела.Количество() <> КоличествоДел Тогда + КоличествоДел = ТекущиеДела.Количество(); + ПоследнееДело = ТекущиеДела.Получить(КоличествоДел - 1); + Владелец = ПоследнееДело.Владелец; + Если ТипЗнч(Владелец) = Тип("ОбъектМетаданных") Тогда + ПредставлениеДела = ПоследнееДело.Представление; + Иначе + ОписаниеВладельца = ТекущиеДела.Найти(ПоследнееДело.Владелец, "Идентификатор"); + Если ОписаниеВладельца = Неопределено Тогда + ПредставлениеДела = ПоследнееДело.Представление; + Иначе + ПредставлениеДела = ОписаниеВладельца.Представление; + КонецЕсли; + КонецЕсли; + + КлючеваяОперация = "ОбновлениеТекущихДел." + ПредставлениеДела; + МодульОценкаПроизводительности.ЗакончитьЗамерВремени(КлючеваяОперация, НачалоЗамера); + КонецЕсли; +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/CommonModules/УдалениеПомеченныхОбъектовСлужебный/Module.bsl b/SSL/src/CommonModules/УдалениеПомеченныхОбъектовСлужебный/Module.bsl index 87d63488d..779f88f34 100644 --- a/SSL/src/CommonModules/УдалениеПомеченныхОбъектовСлужебный/Module.bsl +++ b/SSL/src/CommonModules/УдалениеПомеченныхОбъектовСлужебный/Module.bsl @@ -29,7 +29,7 @@ // СЕРВЕРНЫЕ ОБРАБОТЧИКИ. СерверныйМодуль = "УдалениеПомеченныхОбъектовСлужебный"; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ОчередьЗаданий") Тогда Событие = "СтандартныеПодсистемы.РаботаВМоделиСервиса.ОчередьЗаданий\ПриПолученииСпискаШаблонов"; СерверныеОбработчики[Событие].Добавить(СерверныйМодуль); КонецЕсли; diff --git a/SSL/src/CommonModules/УправлениеДоступом/Module.bsl b/SSL/src/CommonModules/УправлениеДоступом/Module.bsl index 2170e48f2..2094aca0a 100644 --- a/SSL/src/CommonModules/УправлениеДоступом/Module.bsl +++ b/SSL/src/CommonModules/УправлениеДоступом/Module.bsl @@ -787,7 +787,8 @@ // Процедура НастроитьОтборыДинамическогоСписка(Список, ОписаниеОтборов) Экспорт - Если Пользователи.ЭтоПолноправныйПользователь(,, Ложь) Тогда + Если Не ОграничиватьДоступНаУровнеЗаписей() + Или Пользователи.ЭтоПолноправныйПользователь(,, Ложь) Тогда Возврат; КонецЕсли; @@ -815,7 +816,8 @@ Для Каждого ОписаниеОтбора Из ОписаниеОтборов Цикл ИмяПоля = ОписаниеОтбора.Ключ; - Значения = РазрешенныеЗначенияДляДинамическогоСписка(Список.ОсновнаяТаблица, ОписаниеОтбора.Значение); + Значения = УправлениеДоступомСлужебный.РазрешенныеЗначенияДляДинамическогоСписка( + Список.ОсновнаяТаблица, ОписаниеОтбора.Значение); Если Значения = Неопределено Тогда Продолжить; КонецЕсли; @@ -864,209 +866,44 @@ // Функция РазрешенныеЗначенияДляДинамическогоСписка(Таблица, ТипЗначений) Экспорт - Если ТипЗнч(ТипЗначений) <> Тип("Массив") Тогда - ТипыЗначений = Новый Массив; - ТипыЗначений.Добавить(ТипЗначений); - - ИначеЕсли ТипЗначений.Количество() = 0 Тогда + Если Не ОграничиватьДоступНаУровнеЗаписей() + Или Пользователи.ЭтоПолноправныйПользователь( , , Ложь) Тогда Возврат Неопределено; - Иначе - ТипыЗначений = ТипЗначений; КонецЕсли; - УстановитьПривилегированныйРежим(Истина); + Возврат УправлениеДоступомСлужебный.РазрешенныеЗначенияДляДинамическогоСписка(Таблица, ТипЗначений); - ТекстЗапросаГруппДоступа = - "ВЫБРАТЬ - | ГруппыДоступа.Ссылка КАК Ссылка - |ПОМЕСТИТЬ ГруппыДоступаПользователя - |ИЗ - | Справочник.ИдентификаторыОбъектовМетаданных КАК СвойстваТекущейТаблицы - | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ГруппыДоступа КАК ГруппыДоступа - | ПО (СвойстваТекущейТаблицы.ПолноеИмя = &ИмяОсновнойТаблицыСписка) - | И (ИСТИНА В - | (ВЫБРАТЬ ПЕРВЫЕ 1 - | ИСТИНА - | ИЗ - | РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступа - | ГДЕ - | ТаблицыГруппДоступа.Таблица = СвойстваТекущейТаблицы.Ссылка - | И ТаблицыГруппДоступа.ГруппаДоступа = ГруппыДоступа.Ссылка)) - | И (ГруппыДоступа.Ссылка В - | (ВЫБРАТЬ - | ГруппыДоступаПользователи.Ссылка КАК ГруппаДоступа - | ИЗ - | Справочник.ГруппыДоступа.Пользователи КАК ГруппыДоступаПользователи - | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - | ПО - | СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - | И СоставыГруппПользователей.ГруппаПользователей = ГруппыДоступаПользователи.Пользователь))"; +КонецФункции + +// Возвращает права доступа к объектам метаданных ссылочного типа по указанным идентификаторам. +// +// Параметры: +// Идентификаторы - Массив - значения СправочникСсылка.ИдентификаторыОбъектовМетаданных, +// объектов ссылочного типа, для которых нужно вернуть права. +// +// Возвращаемое значение: +// Соответствие - с полями: +// * Ключ - СправочникСсылка.ИдентификаторыОбъектовМетаданных - идентификатор типа; +// * Значение - Структура - со свойствами: +// * Ключ - Строка - имя права доступа ("Чтение", "Изменение", "Добавление"); +// * Значение - Булево - если Истина, тогда право есть, иначе нет. +// +Функция ПраваПоИдентификаторам(Идентификаторы = Неопределено) Экспорт - ТекстЗапросаЗначенийБезГрупп = - "ВЫБРАТЬ ПЕРВЫЕ 100 - | ЗначенияБезГрупп.Ссылка КАК Ссылка - |ИЗ - | (ВЫБРАТЬ - | &ЗначениеПустойСсылки КАК Ссылка - | - | ОБЪЕДИНИТЬ ВСЕ - | - | ВЫБРАТЬ - | ЗначенияБезПустойСсылки.Ссылка - | ИЗ - | &ТаблицаЗначенийДоступа КАК ЗначенияБезПустойСсылки) КАК ЗначенияБезГрупп - |ГДЕ - | ИСТИНА В - | (ВЫБРАТЬ ПЕРВЫЕ 1 - | ИСТИНА - | ИЗ - | ГруппыДоступаПользователя КАК ГруппыДоступа - | ГДЕ - | ВЫБОР - | КОГДА ИСТИНА В - | (ВЫБРАТЬ ПЕРВЫЕ 1 - | ИСТИНА - | ИЗ - | РегистрСведений.ЗначенияГруппДоступа КАК Значения - | ГДЕ - | Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - | И Значения.ЗначениеДоступа = ЗначенияБезГрупп.Ссылка) - | ТОГДА ИСТИНА - | ИНАЧЕ ЛОЖЬ - | КОНЕЦ = ВЫБОР - | КОГДА ИСТИНА В - | (ВЫБРАТЬ ПЕРВЫЕ 1 - | ИСТИНА - | ИЗ - | РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - | ГДЕ - | ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - | И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(ЗначенияБезГрупп.Ссылка) - | И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ) - | ТОГДА ИСТИНА - | ИНАЧЕ ЛОЖЬ - | КОНЕЦ)"; + ОбъектыМетаданныхИдентификаторов = + Справочники.ИдентификаторыОбъектовМетаданных.ОбъектыМетаданныхПоИдентификаторам(Идентификаторы); - ТекстЗапросаЗначенийСГруппами = - "ВЫБРАТЬ ПЕРВЫЕ 100 - | ЗначенияСГруппами.Ссылка КАК Ссылка - |ИЗ - | (ВЫБРАТЬ - | &ЗначениеПустойСсылки КАК Ссылка - | - | ОБЪЕДИНИТЬ ВСЕ - | - | ВЫБРАТЬ - | ЗначенияБезПустойСсылки.Ссылка - | ИЗ - | &ТаблицаЗначенийДоступа КАК ЗначенияБезПустойСсылки) КАК ЗначенияСГруппами - |ГДЕ - | ИСТИНА В - | (ВЫБРАТЬ ПЕРВЫЕ 1 - | ИСТИНА - | ИЗ - | ГруппыДоступаПользователя КАК ГруппыДоступа - | ГДЕ - | ВЫБОР - | КОГДА ИСТИНА В - | (ВЫБРАТЬ ПЕРВЫЕ 1 - | ИСТИНА - | ИЗ - | РегистрСведений.ЗначенияГруппДоступа КАК Значения - | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - | ПО - | Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - | И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - | И ГруппыЗначений.ЗначениеДоступа = ЗначенияСГруппами.Ссылка) - | ТОГДА ИСТИНА - | ИНАЧЕ ЛОЖЬ - | КОНЕЦ = ВЫБОР - | КОГДА ИСТИНА В - | (ВЫБРАТЬ ПЕРВЫЕ 1 - | ИСТИНА - | ИЗ - | РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - | ГДЕ - | ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - | И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(ЗначенияСГруппами.Ссылка) - | И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ) - | ТОГДА ИСТИНА - | ИНАЧЕ ЛОЖЬ - | КОНЕЦ)"; - - ТекстЗапросаВсеЗначения = - "ВЫБРАТЬ ПЕРВЫЕ 100 - | ВсеЗначения.Ссылка КАК Ссылка - |ИЗ - | (ВЫБРАТЬ - | &ЗначениеПустойСсылки КАК Ссылка - | - | ОБЪЕДИНИТЬ ВСЕ - | - | ВЫБРАТЬ - | ЗначенияБезПустойСсылки.Ссылка - | ИЗ - | &ТаблицаЗначенийДоступа КАК ЗначенияБезПустойСсылки) КАК ВсеЗначения"; - - СвойстваВидовДоступа = УправлениеДоступомСлужебныйПовтИсп.Параметры().СвойстваВидовДоступа; - ТекстЗапроса = ""; - АвторизованныйПользователь = Пользователи.АвторизованныйПользователь(); - ДобавитьТекущегоПользователя = Ложь; - ЕстьИспользуемыеВидыДоступа = Ложь; - - Для Каждого ТекущийТип Из ТипыЗначений Цикл - Свойства = СвойстваВидовДоступа.ПоТипамЗначений.Получить(ТекущийТип); - Если Свойства = Неопределено Тогда - ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Тип ""%1"" не является типом значений доступа'"), Строка(ТекущийТип)); - КонецЕсли; - Если Не УправлениеДоступомСлужебный.ВидДоступаИспользуется(Свойства.Имя) Тогда - ТекущийТекстЗапроса = ТекстЗапросаВсеЗначения; - Иначе - Если СвойстваВидовДоступа.ТипыЗначенийДоступаСГруппами.Получить(ТекущийТип) = Неопределено Тогда - ТекущийТекстЗапроса = ТекстЗапросаЗначенийБезГрупп; - Иначе - ТекущийТекстЗапроса = ТекстЗапросаЗначенийСГруппами; - КонецЕсли; - ЕстьИспользуемыеВидыДоступа = Истина; - КонецЕсли; - ТаблицаЗначенийДоступа = Метаданные.НайтиПоТипу(ТекущийТип).ПолноеИмя(); - ТекущийТекстЗапроса = СтрЗаменить(ТекущийТекстЗапроса, "&ТаблицаЗначенийДоступа", ТаблицаЗначенийДоступа); - ТекущийТекстЗапроса = СтрЗаменить(ТекущийТекстЗапроса, "&ЗначениеПустойСсылки", - "ЗНАЧЕНИЕ(" + ТаблицаЗначенийДоступа + ".ПустаяСсылка)"); - Если ЗначениеЗаполнено(ТекстЗапроса) Тогда - ОбъединитьЗапросСЗапросом(ТекстЗапроса, ТекущийТекстЗапроса); - Иначе - ТекстЗапроса = ТекущийТекстЗапроса; - КонецЕсли; - Если ТекущийТип = ТипЗнч(АвторизованныйПользователь) Тогда - ДобавитьТекущегоПользователя = Истина; - КонецЕсли; + ПраваПоИдентификаторам = Новый Соответствие; + Для Каждого ОбъектМетаданныхИдентификатора Из ОбъектыМетаданныхИдентификаторов Цикл + ОбъектМетаданных = ОбъектМетаданныхИдентификатора.Значение; + Права = Новый Структура; + Права.Вставить("Чтение", ПравоДоступа("Чтение", ОбъектМетаданных)); + Права.Вставить("Изменение", ПравоДоступа("Изменение", ОбъектМетаданных)); + Права.Вставить("Добавление", ПравоДоступа("Добавление", ОбъектМетаданных)); + ПраваПоИдентификаторам.Вставить(ОбъектМетаданныхИдентификатора.Ключ, Права); КонецЦикла; - Если Не ЕстьИспользуемыеВидыДоступа Тогда - Возврат Неопределено; - КонецЕсли; - - Запрос = Новый Запрос; - Запрос.УстановитьПараметр("ИмяОсновнойТаблицыСписка", Таблица); - Запрос.УстановитьПараметр("АвторизованныйПользователь", АвторизованныйПользователь); - Запрос.Текст = ТекстЗапросаГруппДоступа; - - ДобавитьЗапросВПакет(Запрос.Текст, ТекстЗапроса); - - Выгрузка = Запрос.Выполнить().Выгрузить(); - Если Выгрузка.Количество() > 100 Тогда - Возврат Неопределено; - КонецЕсли; - - РазрешенныеЗначения = Выгрузка.ВыгрузитьКолонку("Ссылка"); - - Если ДобавитьТекущегоПользователя Тогда - РазрешенныеЗначения.Добавить(АвторизованныйПользователь); - КонецЕсли; - - Возврат РазрешенныеЗначения; + Возврат ПраваПоИдентификаторам; КонецФункции @@ -1455,9 +1292,7 @@ // ОписаниеПрофиля = УправлениеДоступом.НовоеОписаниеПрофиляГруппДоступа(); // ОписаниеПрофиля.Имя = "Пользователь"; // ОписаниеПрофиля.Идентификатор = "09e56dbf-90a0-11de-862c-001d600d9ad2"; -// ОписаниеПрофиля.Наименование = -// НСтр("ru = 'Пользователь'", -// Метаданные.ОсновнойЯзык.КодЯзыка); +// ОписаниеПрофиля.Наименование = НСтр("ru = 'Пользователь'", Метаданные.ОсновнойЯзык.КодЯзыка); // // Переопределение назначения. // ОбщегоНазначенияКлиентСервер.ДополнитьМассив(ОписаниеПрофиля.Назначение, // Метаданные.ОпределяемыеТипы.ВнешнийПользователь.Тип.Типы()); @@ -1480,12 +1315,12 @@ // ОписаниеПрофиля.Роли.Добавить("ЧтениеОбщейБазовойНСИ"); // // ... // // Типовые возможности. -// ОписаниеПрофиля.Роли.Добавить("ИспользованиеВариантовОтчетов"); -// ОписаниеПрофиля.Роли.Добавить("ИспользованиеСтруктурыПодчиненности"); +// ОписаниеПрофиля.Роли.Добавить("ДобавлениеИзменениеЛичныхВариантовОтчетов"); +// ОписаниеПрофиля.Роли.Добавить("ПросмотрСвязанныеДокументы"); // // ... // // Основные возможности профиля. -// ОписаниеПрофиля.Роли.Добавить("ИспользованиеЗаметок"); -// ОписаниеПрофиля.Роли.Добавить("ИспользованиеНапоминаний"); +// ОписаниеПрофиля.Роли.Добавить("ДобавлениеИзменениеЗаметок"); +// ОписаниеПрофиля.Роли.Добавить("ДобавлениеИзменениеНапоминаний"); // ОписаниеПрофиля.Роли.Добавить("ДобавлениеИзменениеЗаданий"); // ОписаниеПрофиля.Роли.Добавить("ИзменениеВыполнениеЗадач"); // // ... @@ -1825,8 +1660,8 @@ // перед записью объекта с табличной частью НаборыЗначенийДоступа. // // Параметры: -// СсылкаНаОбъект - СправочникСсылка.*, ДокументСсылка.*, ... -// Таблица - РегистрСведенийНаборЗаписей.НаборыЗначенийДоступа. +// СсылкаНаОбъект - СправочникСсылка.*, ДокументСсылка.*, ... - объект для которого записываются наборы. +// Таблица - РегистрСведенийНаборЗаписей.НаборыЗначенийДоступа - наборы, которые нужно уточнить. // Процедура УточнитьНаборыЗначенийДоступа(СсылкаНаОбъект, Таблица) @@ -1885,7 +1720,7 @@ КонецПроцедуры -// Дополнение к процедуре ДобавитьНаборыЗначенийДоступа. +// Для процедуры ДобавитьНаборыЗначенийДоступа. Функция НаборыТаблицы(Таблица, НормализацияПрав = Ложь) @@ -2237,10 +2072,7 @@ КонецФункции -// Дополнение к процедурам: -// - ПриСозданииФормыЗначенияДоступа -// - ГруппыЗначенийДоступаРазрешающиеИзменениеЗначенийДоступа. - +// Для процедур ПриСозданииФормыЗначенияДоступа, ГруппыЗначенийДоступаРазрешающиеИзменениеЗначенийДоступа. Функция СвойстваГруппЗначенияДоступа(ТипЗначенияДоступа, ЗаголовокОшибки) УстановитьПривилегированныйРежим(Истина); @@ -2270,35 +2102,7 @@ КонецФункции -// Для функции РазрешенныеЗначения. -Процедура ДобавитьЗапросВПакет(ТекстПакета, ТекстЗапроса) - - Разделитель = - " - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |"; - - ТекстПакета = ТекстПакета + Разделитель + ТекстЗапроса; - -КонецПроцедуры - -// Для функции РазрешенныеЗначения. -Процедура ОбъединитьЗапросСЗапросом(ТекстЗапроса, ДобавляемыйТекстЗапроса) - - Объединитель = - " - | - |ОБЪЕДИНИТЬ ВСЕ - | - |"; - - ТекстПакета = ТекстЗапроса + Объединитель + ДобавляемыйТекстЗапроса; - -КонецПроцедуры - -// Для функции РазрешенныеЗначения. +// Для функции НастроитьОтборыДинамическогоСписка. Процедура ОбновитьЗначениеПараметраКомпоновкиДанных(Знач ВладелецПараметров, Знач ИмяПараметра, Знач ЗначениеПараметра) diff --git a/SSL/src/CommonModules/УправлениеДоступомПереопределяемый/Module.bsl b/SSL/src/CommonModules/УправлениеДоступомПереопределяемый/Module.bsl index dde13c7ae..468cff6e9 100644 --- a/SSL/src/CommonModules/УправлениеДоступомПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/УправлениеДоступомПереопределяемый/Module.bsl @@ -14,10 +14,10 @@ // * Имя - Строка - имя используемое в описании поставляемых // профилей групп доступа и текстах ОДД. // * Представление - Строка - представляет вид доступа в профилях и группах доступа. -// * ТипЗначений - Тип - тип ссылки значений доступа. -// Например, Тип("СправочникСсылка.Номенклатура"). -// * ТипГруппЗначений - Тип - тип ссылки групп значений доступа. -// Например, Тип("СправочникСсылка.ГруппыДоступаНоменклатуры"). +// * ТипЗначений - Тип - тип ссылки значений доступа, +// например, Тип("СправочникСсылка.Номенклатура"). +// * ТипГруппЗначений - Тип - тип ссылки групп значений доступа, +// например, Тип("СправочникСсылка.ГруппыДоступаНоменклатуры"). // * НесколькоГруппЗначений - Булево - Истина указывает, что для значения доступа (Номенклатуры), можно // выбрать несколько групп значений (Групп доступа номенклатуры). // @@ -122,17 +122,17 @@ // разработчика для подсистемы Управление доступом. // // Параметры: -// Описание - Строка - многострочная строка формата <Таблица>.<Право>.<ВидДоступа>[.Таблица объекта]. -// Например, Документ.ПриходнаяНакладная.Чтение.Организации -// Документ.ПриходнаяНакладная.Чтение.Контрагенты -// Документ.ПриходнаяНакладная.Изменение.Организации -// Документ.ПриходнаяНакладная.Изменение.Контрагенты -// Документ.ЭлектронныеПисьма.Чтение.Объект.Документ.ЭлектронныеПисьма -// Документ.ЭлектронныеПисьма.Изменение.Объект.Документ.ЭлектронныеПисьма -// Документ.Файлы.Чтение.Объект.Справочник.ПапкиФайлов -// Документ.Файлы.Чтение.Объект.Документ.ЭлектронноеПисьмо -// Документ.Файлы.Изменение.Объект.Справочник.ПапкиФайлов -// Документ.Файлы.Изменение.Объект.Документ.ЭлектронноеПисьмо +// Описание - Строка - многострочная строка формата <Таблица>.<Право>.<ВидДоступа>[.Таблица объекта], +// например, "Документ.ПриходнаяНакладная.Чтение.Организации", +// "Документ.ПриходнаяНакладная.Чтение.Контрагенты", +// "Документ.ПриходнаяНакладная.Изменение.Организации", +// "Документ.ПриходнаяНакладная.Изменение.Контрагенты", +// "Документ.ЭлектронныеПисьма.Чтение.Объект.Документ.ЭлектронныеПисьма", +// "Документ.ЭлектронныеПисьма.Изменение.Объект.Документ.ЭлектронныеПисьма", +// "Документ.Файлы.Чтение.Объект.Справочник.ПапкиФайлов", +// "Документ.Файлы.Чтение.Объект.Документ.ЭлектронноеПисьмо", +// "Документ.Файлы.Изменение.Объект.Справочник.ПапкиФайлов", +// "Документ.Файлы.Изменение.Объект.Документ.ЭлектронноеПисьмо". // Вид доступа Объект предопределен, как литерал. Этот вид доступа используется в // шаблонах ограничений доступа, как "ссылка" на другой объект, по которому // ограничивается текущий объект таблицы. @@ -140,8 +140,8 @@ // которые используются для этого вида доступа. Т.е. перечислить типы, // которые соответствуют полю, использованному в шаблоне ограничения доступа // в паре с видом доступа "Объект". При перечислении типов по виду доступа "Объект" -// нужно перечислить только те типы поля, которые есть у поля. -// РегистрыСведений.НаборыЗначенийДоступа.Объект, остальные типы лишние. +// нужно перечислить только те типы поля, которые есть +// у поля РегистрыСведений.НаборыЗначенийДоступа.Объект, остальные типы лишние. // Процедура ПриЗаполненииВидовОграниченийПравОбъектовМетаданных(Описание) Экспорт diff --git a/SSL/src/CommonModules/УправлениеДоступомСлужебный/Module.bsl b/SSL/src/CommonModules/УправлениеДоступомСлужебный/Module.bsl index bb8d9a517..ea70ea1ed 100644 --- a/SSL/src/CommonModules/УправлениеДоступомСлужебный/Module.bsl +++ b/SSL/src/CommonModules/УправлениеДоступомСлужебный/Module.bsl @@ -74,30 +74,29 @@ // регистра сведений НаборыЗначенийДоступа. // // Для автоматической подготовки содержимого процедуры следует - // воспользоваться инструментами разработчика для подсистемы - // Управление доступом. + // воспользоваться инструментами разработчика для подсистемы Управление доступом. // // Параметры: - // Описание - Строка, многострочная строка формата <Таблица>.<Право>.<ВидДоступа>[.Таблица объекта]. - // Например, Документ.ПриходнаяНакладная.Чтение.Организации - // Документ.ПриходнаяНакладная.Чтение.Контрагенты - // Документ.ПриходнаяНакладная.Изменение.Организации - // Документ.ПриходнаяНакладная.Изменение.Контрагенты - // Документ.ЭлектронныеПисьма.Чтение.Объект.Документ.ЭлектронныеПисьма - // Документ.ЭлектронныеПисьма.Изменение.Объект.Документ.ЭлектронныеПисьма - // Документ.Файлы.Чтение.Объект.Справочник.ПапкиФайлов - // Документ.Файлы.Чтение.Объект.Документ.ЭлектронноеПисьмо - // Документ.Файлы.Изменение.Объект.Справочник.ПапкиФайлов - // Документ.Файлы.Изменение.Объект.Документ.ЭлектронноеПисьмо - // Вид доступа Объект предопределен, как литерал. Этот вид доступа используется в - // шаблонах ограничений доступа, как "ссылка" на другой объект, по которому - // ограничивается текущий объект таблицы. - // Когда вид доступа "Объект" задан, также требуется задать типы таблиц, - // которые используются для этого вида доступа. Т.е. перечислить типы, - // которые соответствуют полю, использованному в шаблоне ограничения доступа - // в паре с видом доступа "Объект". При перечислении типов по виду доступа "Объект" - // нужно перечислить только те типы поля, которые есть у поля - // РегистрыСведений.НаборыЗначенийДоступа.Объект, остальные типы лишние. + // Описание - Строка, многострочная строка формата <Таблица>.<Право>.<ВидДоступа>[.Таблица объекта], + // например, "Документ.ПриходнаяНакладная.Чтение.Организации", + // "Документ.ПриходнаяНакладная.Чтение.Контрагенты", + // "Документ.ПриходнаяНакладная.Изменение.Организации", + // "Документ.ПриходнаяНакладная.Изменение.Контрагенты", + // "Документ.ЭлектронныеПисьма.Чтение.Объект.Документ.ЭлектронныеПисьма", + // "Документ.ЭлектронныеПисьма.Изменение.Объект.Документ.ЭлектронныеПисьма", + // "Документ.Файлы.Чтение.Объект.Справочник.ПапкиФайлов", + // "Документ.Файлы.Чтение.Объект.Документ.ЭлектронноеПисьмо", + // "Документ.Файлы.Изменение.Объект.Справочник.ПапкиФайлов", + // "Документ.Файлы.Изменение.Объект.Документ.ЭлектронноеПисьмо". + // Вид доступа Объект предопределен, как литерал. Этот вид доступа используется в + // шаблонах ограничений доступа, как "ссылка" на другой объект, по которому + // ограничивается текущий объект таблицы. + // Когда вид доступа "Объект" задан, также требуется задать типы таблиц, + // которые используются для этого вида доступа. Т.е. перечислить типы, + // которые соответствуют полю, использованному в шаблоне ограничения доступа + // в паре с видом доступа "Объект". При перечислении типов по виду доступа "Объект" + // нужно перечислить только те типы поля, которые есть + // у поля РегистрыСведений.НаборыЗначенийДоступа.Объект, остальные типы лишние. // // Синтаксис: // Процедура ПриЗаполненииВидовОграниченийПравОбъектовМетаданных(Описание) Экспорт @@ -133,8 +132,7 @@ // переопределяет параметры обновления профилей и групп доступа. // // Для автоматической подготовки содержимого процедуры следует - // воспользоваться инструментами разработчика для подсистемы - // Управление доступом. + // воспользоваться инструментами разработчика для подсистемы Управление доступом. // // Параметры: // ОписанияПрофилей - Массив в который нужно добавить описания. @@ -222,9 +220,6 @@ СерверныеОбработчики["СтандартныеПодсистемы.ОбновлениеВерсииИБ\ПриДобавленииОбработчиковОбновления"].Добавить( "УправлениеДоступомСлужебный"); - СерверныеОбработчики["СтандартныеПодсистемы.ОбновлениеВерсииИБ\ПослеОбновленияИнформационнойБазы"].Добавить( - "УправлениеДоступомСлужебный"); - СерверныеОбработчики["СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПараметровРаботыКлиента"].Добавить( "УправлениеДоступомСлужебный"); @@ -317,54 +312,6 @@ КонецПроцедуры -// Удаляет пользователя из группы доступа, соответствующей поставляемому профилю. -// Группа доступа определяется по идентификатору ссылки поставляемого профиля. -// Если группа доступа не будет найдена, никаких действий не будет выполнено. -// -// Параметры: -// Пользователь - СправочникСсылка.Пользователи, -// СправочникСсылка.ВнешниеПользователи, -// СправочникСсылка.ГруппыПользователей, -// СправочникСсылка.ГруппыВнешнихПользователей -// - участник, которого нужно исключить из группы доступа. -// -// ПоставляемыйПрофиль - Строка - строка идентификатора поставляемого профиля. -// - СправочникСсылка.ПрофилиГруппДоступа - ссылка на профиль, который -// создан по описанию в модуле УправлениеДоступомПереопределяемый -// в процедуре ЗаполнитьПоставляемыеПрофилиГруппДоступа. -// Профили с непустым списком видов доступа не поддерживаются. -// Профиль групп доступа Администратор не поддерживается. -// -Процедура ИсключитьПользователяИзГруппыДоступа(Пользователь, ПоставляемыйПрофиль) Экспорт - - ОбработатьСвязьПользователяСГруппойДоступа(Пользователь, ПоставляемыйПрофиль, Ложь); - -КонецПроцедуры - -// Найти пользователя в группе доступа, соответствующей поставляемому профилю. -// Группа доступа определяется по идентификатору ссылки поставляемого профиля. -// Если группа доступа не будет найдена, никаких действий не будет выполнено. -// -// Параметры: -// Пользователь - СправочникСсылка.Пользователи, -// СправочникСсылка.ВнешниеПользователи, -// СправочникСсылка.ГруппыПользователей, -// СправочникСсылка.ГруппыВнешнихПользователей -// - участник, которого нужно найти в группе доступа. -// -// ПоставляемыйПрофиль - Строка - строка идентификатора поставляемого профиля. -// - СправочникСсылка.ПрофилиГруппДоступа - ссылка на профиль, который -// создан по описанию в модуле УправлениеДоступомПереопределяемый -// в процедуре ЗаполнитьПоставляемыеПрофилиГруппДоступа. -// Профили с непустым списком видов доступа не поддерживаются. -// Профиль групп доступа Администратор не поддерживается. -// -Функция НайтиПользователяВГруппеДоступа(Пользователь, ПоставляемыйПрофиль) Экспорт - - Возврат ОбработатьСвязьПользователяСГруппойДоступа(Пользователь, ПоставляемыйПрофиль); - -КонецФункции - // Устанавливает параметры сеанса по текущим настройкам констант и // настройкам групп доступа пользователей. // Вызывается ПриНачалеРаботыСистемы. @@ -373,9 +320,10 @@ УстановитьПривилегированныйРежим(Истина); - Если НЕ Константы.ОграничиватьДоступНаУровнеЗаписей.Получить() Тогда + Если Не Константы.ОграничиватьДоступНаУровнеЗаписей.Получить() Тогда // Для корректной работы препроцессора в ограничениях доступа, требуется инициализации всех // параметров сеанса, которые могут быть востребованы в работе препроцессора. + ПараметрыСеанса.ОграничениеДоступаНаУровнеЗаписейВключено = Ложь; ПараметрыСеанса.ВсеВидыДоступаКромеСпециальных = ""; ПараметрыСеанса.ВидыДоступаСОтключеннымИспользованием = ""; ПараметрыСеанса.ВидыДоступаБезГруппДляЗначенияДоступа = ""; @@ -392,6 +340,7 @@ ПараметрыСеанса.ТипыВладельцевНастроекПрав = Новый ФиксированныйМассив(Новый Массив); + УстановленныеПараметры.Добавить("ОграничениеДоступаНаУровнеЗаписейВключено"); УстановленныеПараметры.Добавить("ВсеВидыДоступаКромеСпециальных"); УстановленныеПараметры.Добавить("ВидыДоступаСОтключеннымИспользованием"); УстановленныеПараметры.Добавить("ВидыДоступаБезГруппДляЗначенияДоступа"); @@ -403,6 +352,8 @@ Возврат; КонецЕсли; + ПараметрыСеанса.ОграничениеДоступаНаУровнеЗаписейВключено = Истина; + Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийПользователь", Пользователи.АвторизованныйПользователь()); Запрос.Текст = @@ -556,6 +507,257 @@ КонецФункции +// Возвращает массив разрешенных значений указанных типов в рамках всех групп доступа. +// Используется в процедуре НастроитьОтборыДинамическогоСписка для ускорения открытия динамических списков. +// +// Параметры: +// Таблица - Строка - полное имя объекта метаданных, например, "Документ.РасходнаяНакладная". +// ТипЗначений - Тип - тип значений доступа, разрешенные значения которых нужно вернуть. +// - Массив - массив указанных выше типов. +// +// Значения - Неопределено - не учитывать. +// - Массив - массив значений типов, указанных в параметре ТипЗначений. +// +// Возвращаемое значение: +// Неопределено - если количество разрешенных значений превышает 100 (когда параметр Значения не определен). +// Массив - ссылки разрешенных значений указанных типов. +// +Функция РазрешенныеЗначенияДляДинамическогоСписка(Таблица, ТипЗначений, Значения = Неопределено) Экспорт + + Если ТипЗнч(ТипЗначений) <> Тип("Массив") Тогда + ТипыЗначений = Новый Массив; + ТипыЗначений.Добавить(ТипЗначений); + + ИначеЕсли ТипЗначений.Количество() = 0 Тогда + Возврат Неопределено; + Иначе + ТипыЗначений = ТипЗначений; + КонецЕсли; + + УстановитьПривилегированныйРежим(Истина); + + ТекстЗапросаГруппДоступа = + "ВЫБРАТЬ + | ГруппыДоступа.Ссылка КАК Ссылка + |ПОМЕСТИТЬ ГруппыДоступаПользователя + |ИЗ + | Справочник.ИдентификаторыОбъектовМетаданных КАК СвойстваТекущейТаблицы + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ГруппыДоступа КАК ГруппыДоступа + | ПО (СвойстваТекущейТаблицы.ПолноеИмя = &ИмяОсновнойТаблицыСписка) + | И (ИСТИНА В + | (ВЫБРАТЬ ПЕРВЫЕ 1 + | ИСТИНА + | ИЗ + | РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступа + | ГДЕ + | ТаблицыГруппДоступа.Таблица = СвойстваТекущейТаблицы.Ссылка + | И ТаблицыГруппДоступа.ГруппаДоступа = ГруппыДоступа.Ссылка)) + | И (ГруппыДоступа.Ссылка В + | (ВЫБРАТЬ + | ГруппыДоступаПользователи.Ссылка КАК ГруппаДоступа + | ИЗ + | Справочник.ГруппыДоступа.Пользователи КАК ГруппыДоступаПользователи + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + | ПО + | СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + | И СоставыГруппПользователей.ГруппаПользователей = ГруппыДоступаПользователи.Пользователь))"; + + ТекстЗапросаЗначенийБезГрупп = + "ВЫБРАТЬ ПЕРВЫЕ 101 + | ЗначенияБезГрупп.Ссылка КАК Ссылка + |ИЗ + | (ВЫБРАТЬ + | &ЗначениеПустойСсылки КАК Ссылка + | + | ОБЪЕДИНИТЬ ВСЕ + | + | ВЫБРАТЬ + | ЗначенияБезПустойСсылки.Ссылка + | ИЗ + | &ТаблицаЗначенийДоступа КАК ЗначенияБезПустойСсылки) КАК ЗначенияБезГрупп + |ГДЕ + | ИСТИНА В + | (ВЫБРАТЬ ПЕРВЫЕ 1 + | ИСТИНА + | ИЗ + | ГруппыДоступаПользователя КАК ГруппыДоступа + | ГДЕ + | ВЫБОР + | КОГДА ИСТИНА В + | (ВЫБРАТЬ ПЕРВЫЕ 1 + | ИСТИНА + | ИЗ + | РегистрСведений.ЗначенияГруппДоступа КАК Значения + | ГДЕ + | Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + | И Значения.ЗначениеДоступа = ЗначенияБезГрупп.Ссылка) + | ТОГДА ИСТИНА + | ИНАЧЕ ЛОЖЬ + | КОНЕЦ = ВЫБОР + | КОГДА ИСТИНА В + | (ВЫБРАТЬ ПЕРВЫЕ 1 + | ИСТИНА + | ИЗ + | РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + | ГДЕ + | ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + | И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(ЗначенияБезГрупп.Ссылка) + | И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ) + | ТОГДА ИСТИНА + | ИНАЧЕ ЛОЖЬ + | КОНЕЦ) + | И ЗначенияБезГрупп.Ссылка В(&Значения)"; + + Если ТипЗнч(Значения) = Тип("Массив") Тогда + ТекстЗапросаЗначенийБезГрупп = СтрЗаменить(ТекстЗапросаЗначенийБезГрупп, "ПЕРВЫЕ 101", ""); + Иначе + ТекстЗапросаЗначенийБезГрупп = СтрЗаменить(ТекстЗапросаЗначенийБезГрупп, "ЗначенияБезГрупп.Ссылка В(&Значения)", "Истина"); + КонецЕсли; + + ТекстЗапросаЗначенийСГруппами = + "ВЫБРАТЬ ПЕРВЫЕ 101 + | ЗначенияСГруппами.Ссылка КАК Ссылка + |ИЗ + | (ВЫБРАТЬ + | &ЗначениеПустойСсылки КАК Ссылка + | + | ОБЪЕДИНИТЬ ВСЕ + | + | ВЫБРАТЬ + | ЗначенияБезПустойСсылки.Ссылка + | ИЗ + | &ТаблицаЗначенийДоступа КАК ЗначенияБезПустойСсылки) КАК ЗначенияСГруппами + |ГДЕ + | ИСТИНА В + | (ВЫБРАТЬ ПЕРВЫЕ 1 + | ИСТИНА + | ИЗ + | ГруппыДоступаПользователя КАК ГруппыДоступа + | ГДЕ + | ВЫБОР + | КОГДА ИСТИНА В + | (ВЫБРАТЬ ПЕРВЫЕ 1 + | ИСТИНА + | ИЗ + | РегистрСведений.ЗначенияГруппДоступа КАК Значения + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + | ПО + | Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + | И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + | И ГруппыЗначений.ЗначениеДоступа = ЗначенияСГруппами.Ссылка) + | ТОГДА ИСТИНА + | ИНАЧЕ ЛОЖЬ + | КОНЕЦ = ВЫБОР + | КОГДА ИСТИНА В + | (ВЫБРАТЬ ПЕРВЫЕ 1 + | ИСТИНА + | ИЗ + | РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + | ГДЕ + | ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + | И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(ЗначенияСГруппами.Ссылка) + | И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ) + | ТОГДА ИСТИНА + | ИНАЧЕ ЛОЖЬ + | КОНЕЦ) + | И ЗначенияСГруппами.Ссылка В(&Значения)"; + + Если ТипЗнч(Значения) = Тип("Массив") Тогда + ТекстЗапросаЗначенийСГруппами = СтрЗаменить(ТекстЗапросаЗначенийСГруппами, "ПЕРВЫЕ 101", ""); + Иначе + ТекстЗапросаЗначенийСГруппами = СтрЗаменить(ТекстЗапросаЗначенийСГруппами, "ЗначенияСГруппами.Ссылка В(&Значения)", "Истина"); + КонецЕсли; + + ТекстЗапросаВсеЗначения = + "ВЫБРАТЬ ПЕРВЫЕ 101 + | ВсеЗначения.Ссылка КАК Ссылка + |ИЗ + | (ВЫБРАТЬ + | &ЗначениеПустойСсылки КАК Ссылка + | + | ОБЪЕДИНИТЬ ВСЕ + | + | ВЫБРАТЬ + | ЗначенияБезПустойСсылки.Ссылка + | ИЗ + | &ТаблицаЗначенийДоступа КАК ЗначенияБезПустойСсылки) КАК ВсеЗначения + |ГДЕ + | ВсеЗначения.Ссылка В(&Значения)"; + + Если ТипЗнч(Значения) = Тип("Массив") Тогда + ТекстЗапросаВсеЗначения = СтрЗаменить(ТекстЗапросаВсеЗначения, "ПЕРВЫЕ 101", ""); + Иначе + ТекстЗапросаВсеЗначения = СтрЗаменить(ТекстЗапросаВсеЗначения, "ВсеЗначения.Ссылка В(&Значения)", "Истина"); + КонецЕсли; + + СвойстваВидовДоступа = УправлениеДоступомСлужебныйПовтИсп.Параметры().СвойстваВидовДоступа; + ТекстЗапроса = ""; + АвторизованныйПользователь = Пользователи.АвторизованныйПользователь(); + ДобавитьТекущегоПользователя = Ложь; + ЕстьИспользуемыеВидыДоступа = Ложь; + + Для Каждого ТекущийТип Из ТипыЗначений Цикл + Свойства = СвойстваВидовДоступа.ПоТипамЗначений.Получить(ТекущийТип); + Если Свойства = Неопределено Тогда + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Тип ""%1"" не является типом значений доступа'"), Строка(ТекущийТип)); + КонецЕсли; + Если Не ВидДоступаИспользуется(Свойства.Имя) Тогда + ТекущийТекстЗапроса = ТекстЗапросаВсеЗначения; + Иначе + Если СвойстваВидовДоступа.ТипыЗначенийДоступаСГруппами.Получить(ТекущийТип) = Неопределено Тогда + ТекущийТекстЗапроса = ТекстЗапросаЗначенийБезГрупп; + Иначе + ТекущийТекстЗапроса = ТекстЗапросаЗначенийСГруппами; + КонецЕсли; + ЕстьИспользуемыеВидыДоступа = Истина; + КонецЕсли; + ТаблицаЗначенийДоступа = Метаданные.НайтиПоТипу(ТекущийТип).ПолноеИмя(); + ТекущийТекстЗапроса = СтрЗаменить(ТекущийТекстЗапроса, "&ТаблицаЗначенийДоступа", ТаблицаЗначенийДоступа); + ТекущийТекстЗапроса = СтрЗаменить(ТекущийТекстЗапроса, "&ЗначениеПустойСсылки", + "ЗНАЧЕНИЕ(" + ТаблицаЗначенийДоступа + ".ПустаяСсылка)"); + Если ЗначениеЗаполнено(ТекстЗапроса) Тогда + ОбъединитьЗапросСЗапросом(ТекстЗапроса, ТекущийТекстЗапроса); + Иначе + ТекстЗапроса = ТекущийТекстЗапроса; + КонецЕсли; + Если ТекущийТип = ТипЗнч(АвторизованныйПользователь) Тогда + ДобавитьТекущегоПользователя = Истина; + КонецЕсли; + КонецЦикла; + + Если Не ЕстьИспользуемыеВидыДоступа Тогда + Возврат Неопределено; + КонецЕсли; + + Запрос = Новый Запрос; + Запрос.УстановитьПараметр("ИмяОсновнойТаблицыСписка", Таблица); + Запрос.УстановитьПараметр("АвторизованныйПользователь", АвторизованныйПользователь); + Запрос.Текст = ТекстЗапросаГруппДоступа; + Если ТипЗнч(Значения) = Тип("Массив") Тогда + Запрос.УстановитьПараметр("Значения", Значения); + КонецЕсли; + + ДобавитьЗапросВПакет(Запрос.Текст, ТекстЗапроса); + + Выгрузка = Запрос.Выполнить().Выгрузить(); + + Если ТипЗнч(Значения) <> Тип("Массив") + И Выгрузка.Количество() > 100 Тогда + + Возврат Неопределено; + КонецЕсли; + + РазрешенныеЗначения = Выгрузка.ВыгрузитьКолонку("Ссылка"); + + Если ДобавитьТекущегоПользователя Тогда + РазрешенныеЗначения.Добавить(АвторизованныйПользователь); + КонецЕсли; + + Возврат РазрешенныеЗначения; + +КонецФункции + //////////////////////////////////////////////////////////////////////////////// // Обработчики условных вызовов в эту подсистему. @@ -571,6 +773,9 @@ // Процедура ПриДобавленииОбработчиковУстановкиПараметровСеанса(Обработчики) Экспорт + Обработчики.Вставить("ОграничениеДоступаНаУровнеЗаписейВключено", + "УправлениеДоступомСлужебный.УстановкаПараметровСеанса"); + Обработчики.Вставить("ВидыДоступа*", "УправлениеДоступомСлужебный.УстановкаПараметровСеанса"); @@ -602,17 +807,6 @@ КонецПроцедуры -// См. одноименную процедуру в общем модуле ПользователиПереопределяемый. -Процедура ПриОпределенииНазначенияРолей(НазначениеРолей) Экспорт - - Для Каждого Роль Из Метаданные.Роли Цикл - Если ЭтоПрофильнаяРоль(Роль.Имя) Тогда - НазначениеРолей.ТолькоДляПользователейСистемы.Добавить(Роль.Имя); - КонецЕсли; - КонецЦикла; - -КонецПроцедуры - // См. процедуру ИзменитьДействияВФорме в общем модуле ПользователиПереопределяемый. Процедура ПриОпределенииДействийВФорме(Ссылка, ДействияВФорме) Экспорт @@ -666,9 +860,10 @@ // Процедура ПриОпределенииТекстаВопросаПередЗаписьюПервогоАдминистратора(ТекстВопроса) Экспорт - ТекстВопроса = НСтр("ru = 'В список пользователей программы добавляется первый пользователь, - |поэтому он будет автоматически включен в группу доступа Администраторы. - |Продолжить?'") + ТекстВопроса = + НСтр("ru = 'В список пользователей программы добавляется первый пользователь, + |поэтому он будет автоматически включен в группу доступа Администраторы. + |Продолжить?'") КонецПроцедуры @@ -807,32 +1002,6 @@ КонецПроцедуры -// Дополняет массив проверяемых ролей профильными ролями. -Процедура ПередПроверкойДоступностиРолей(МассивИменРолей) Экспорт - - Если ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда - Возврат; - КонецЕсли; - - ДополнительныеРоли = Новый Соответствие; - ВхожденияРолейВПрофильныеРоли = УправлениеДоступомСлужебныйПовтИсп.ВхожденияРолейВПрофильныеРоли(); - - Для каждого ИмяРоли Из МассивИменРолей Цикл - ВхожденияРолиВПрофильныеРоли = ВхожденияРолейВПрофильныеРоли.Получить(ИмяРоли); - Если ВхожденияРолиВПрофильныеРоли = Неопределено Тогда - Продолжить; - КонецЕсли; - Для каждого ПрофильнаяРоль Из ВхожденияРолиВПрофильныеРоли Цикл - ДополнительныеРоли.Вставить(ПрофильнаяРоль, Истина); - КонецЦикла; - КонецЦикла; - - Для каждого КлючИЗначение Из ДополнительныеРоли Цикл - МассивИменРолей.Добавить(КлючИЗначение.Ключ); - КонецЦикла; - -КонецПроцедуры - // Добавляет администраторов системы в группу, связанную с предопределенным профилем ОткрытиеВнешнихОтчетовИОбработок. Процедура УстановитьПравоОткрытияВнешнихОтчетовИОбработок(ОткрытиеРазрешено) Экспорт // В модели сервиса право открытия внешних отчетов и обработок не используется для пользователей областей данных. @@ -946,60 +1115,6 @@ КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// Прочие процедуры и функции. - -// Определяет принадлежность роли специальной группе профильных ролей. -// -// Возвращаемое значение: -// Булево. -// -Функция ЭтоПрофильнаяРоль(ИмяРоли) Экспорт - - Возврат ВРег(Лев(ИмяРоли, СтрДлина("Профиль"))) = ВРег("Профиль"); - -КонецФункции - -// Возвращает профили текущего пользователя у которых есть роль БазовыеПрава или -// или это профиль Администратор. -// -// Возвращаемое значение: -// Массив - содержит элементы типа СправочникСсылка.ПрофилиГруппДоступа. -// -Функция ОсновныеПрофилиПользователя() Экспорт - - Запрос = Новый Запрос; - Запрос.Параметры.Вставить("АвторизованныйПользователь", Пользователи.АвторизованныйПользователь()); - Запрос.Параметры.Вставить("РольБазовыеПрава", ОбщегоНазначения.ИдентификаторОбъектаМетаданных( - Метаданные.Роли.БазовыеПрава)); - - Запрос.Текст = - "ВЫБРАТЬ РАЗЛИЧНЫЕ - | ГруппыДоступа.Профиль КАК Профиль - |ИЗ - | Справочник.ГруппыДоступа.Пользователи КАК ГруппыДоступаПользователи - | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - | ПО (СоставыГруппПользователей.ГруппаПользователей = ГруппыДоступаПользователи.Пользователь) - | И (СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь) - | И (СоставыГруппПользователей.Используется) - | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ГруппыДоступа КАК ГруппыДоступа - | ПО (ГруппыДоступа.Ссылка = ГруппыДоступаПользователи.Ссылка) - | И (НЕ ГруппыДоступа.ПометкаУдаления) - | И (НЕ ГруппыДоступа.Профиль.ПометкаУдаления) - | И (НЕ(НЕ ГруппыДоступа.Профиль = ЗНАЧЕНИЕ(Справочник.ПрофилиГруппДоступа.Администратор) - | И НЕ ИСТИНА В - | (ВЫБРАТЬ ПЕРВЫЕ 1 - | ИСТИНА - | ИЗ - | Справочник.ПрофилиГруппДоступа.Роли КАК РолиПрофилей - | ГДЕ - | РолиПрофилей.Ссылка = ГруппыДоступа.Профиль - | И РолиПрофилей.Роль = &РольБазовыеПрава)))"; - - Возврат Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Профиль"); - -КонецФункции - #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -1400,26 +1515,6 @@ КонецПроцедуры -// См. комментарий одноименной процедуры общего модуля ОбновлениеИнформационнойБазыПереопределяемый. -Процедура ПослеОбновленияИнформационнойБазы(Знач ПредыдущаяВерсияИБ, Знач ТекущаяВерсияИБ, - Знач ВыполненныеОбработчики, ВыводитьОписаниеОбновлений, МонопольныйРежим) Экспорт - - Если ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда - Возврат; - КонецЕсли; - - УстановитьПривилегированныйРежим(Истина); - Запустить = ПараметрыСеанса.ПараметрыКлиентаНаСервере.Получить("ЗапуститьОбновлениеИнформационнойБазы"); - УстановитьПривилегированныйРежим(Ложь); - - Если Запустить = Истина Тогда - // При ручном запуске обновления требуется полное обновление ролей - // так как в режиме отладки профильные роли отключены, а в обычном режиме включены. - УправлениеДоступом.ОбновитьРолиПользователей(); - КонецЕсли; - -КонецПроцедуры - // Заполняет структуру параметров, необходимых для работы клиентского кода // конфигурации. // @@ -1624,13 +1719,22 @@ КонецЕсли; ИначеЕсли ТипЗнч(ЭлементДанных) = Тип("КонстантаМенеджерЗначения.ОграничиватьДоступНаУровнеЗаписей") + ИЛИ ТипЗнч(ЭлементДанных) = Тип("КонстантаМенеджерЗначения.ПараметрыОграниченияДоступа") ИЛИ ТипЗнч(ЭлементДанных) = Тип("СправочникОбъект.ГруппыДоступа") ИЛИ ТипЗнч(ЭлементДанных) = Тип("СправочникОбъект.ПрофилиГруппДоступа") + ИЛИ ТипЗнч(ЭлементДанных) = Тип("ПланВидовХарактеристикОбъект.УдалитьВидыДоступа") ИЛИ ТипЗнч(ЭлементДанных) = Тип("РегистрСведенийНаборЗаписей.ГруппыЗначенийДоступа") + ИЛИ ТипЗнч(ЭлементДанных) = Тип("РегистрСведенийНаборЗаписей.ЗависимостиПравДоступа") ИЛИ ТипЗнч(ЭлементДанных) = Тип("РегистрСведенийНаборЗаписей.ЗначенияГруппДоступа") + ИЛИ ТипЗнч(ЭлементДанных) = Тип("РегистрСведенийНаборЗаписей.ЗначенияГруппДоступаПоУмолчанию") ИЛИ ТипЗнч(ЭлементДанных) = Тип("РегистрСведенийНаборЗаписей.НаборыЗначенийДоступа") + ИЛИ ТипЗнч(ЭлементДанных) = Тип("РегистрСведенийНаборЗаписей.НаследованиеНастроекПравОбъектов") ИЛИ ТипЗнч(ЭлементДанных) = Тип("РегистрСведенийНаборЗаписей.НастройкиПравОбъектов") - ИЛИ ТипЗнч(ЭлементДанных) = Тип("РегистрСведенийНаборЗаписей.ТаблицыГруппДоступа") Тогда + ИЛИ ТипЗнч(ЭлементДанных) = Тип("РегистрСведенийНаборЗаписей.ПраваРолей") + ИЛИ ТипЗнч(ЭлементДанных) = Тип("РегистрСведенийНаборЗаписей.ТаблицыГруппДоступа") + ИЛИ ТипЗнч(ЭлементДанных) = Тип("РегистрСведенийНаборЗаписей.УдалитьГруппыЗначенийДоступа") + ИЛИ ТипЗнч(ЭлементДанных) = Тип("РегистрСведенийНаборЗаписей.УдалитьНаборыЗначенийДоступа") + ИЛИ ТипЗнч(ЭлементДанных) = Тип("РегистрСведенийНаборЗаписей.УдалитьПраваПоЗначениямДоступа") Тогда // Получение данных из автономного рабочего места пропускается, а для соответствия // данных в узлах, текущие данные отправляются обратно в автономное рабочее место. @@ -1737,7 +1841,7 @@ // Обработчик подписки ОбновитьГруппыЗначенийДоступа на событие ПередЗаписью: // - вызывает метод записи групп значений доступа в -// РегистрСведений.ГруппыЗначенийДоступа для требуемых объектов метаданных; +// регистр сведений ГруппыЗначенийДоступа для требуемых объектов метаданных; // Процедура ОбновитьГруппыЗначенийДоступа(Знач Объект, Отказ) Экспорт @@ -1760,7 +1864,7 @@ // Обработчик подписки ОбновитьГруппыВладельцевНастроекПрав на событие ПередЗаписью: // - вызывает метод записи иерархии владельцев настроек прав объектов в -// РегистрСведений.НаследованиеНастроекПравОбъектов для требуемых объектов метаданных. +// регистр сведений НаследованиеНастроекПравОбъектов для требуемых объектов метаданных. // Процедура ОбновитьГруппыВладельцевНастроекПрав(Знач Объект, Отказ) Экспорт @@ -2117,8 +2221,8 @@ // Неопределено - когда для вида доступа свойств не найдено, // Структура - свойства найденного вида доступа, // Массив Структур со свойствами, -// описание которых см. в комментарии к функции -// СвойстваВидовДоступа в модуле менеджера константы ПараметрыОграниченияДоступа. +// описание которых см. в комментарии к функции СвойстваВидовДоступа +// в модуле менеджера константы ПараметрыОграниченияДоступа. // Функция СвойстваВидаДоступа(Знач ВидДоступа = Неопределено) Экспорт @@ -2597,8 +2701,8 @@ // свойство ЕстьИзменения. // // * ДополнительныеСвойства - Неопределено, Структура. Если Структура, тогда в -// объекты <Регистр*>НаборЗаписей в свойство -// ДополнительныеСвойства будут вставлены все параметры структуры. +// объекты <Регистр*>НаборЗаписей в свойство ДополнительныеСвойства +// будут вставлены все параметры структуры. // // * ОбновлениеИБ - Булево - если Истина, то необходимо выполнять запись данных, // не выполняя лишних, избыточных действий с данными. @@ -2611,13 +2715,7 @@ // возвращает таблицу значений в формате регистра с полем ВидИзмененияСтроки // типа Число (-1 запись удалена, 1 запись добавлена). // -// ТранзакцияОткрыта - Неопределено - не открывать транзакцию. -// Истина - транзакция уже открыта, ее не требуется открывать. -// Другое значение - требуется открыть транзакцию и -// установить ТранзакцияОткрыта в Истина. -// -Процедура ОбновитьНаборЗаписей(Знач Данные, ЕстьИзменения = Неопределено, - ИзмененныеЗаписи = Неопределено, ТранзакцияОткрыта = Неопределено) Экспорт +Процедура ОбновитьНаборЗаписей(Знач Данные, ЕстьИзменения = Неопределено, ИзмененныеЗаписи = Неопределено) Экспорт ВсеПараметры = Новый Структура; ВсеПараметры.Вставить("НаборЗаписей"); @@ -2736,12 +2834,6 @@ Если Данные.ТолькоПроверка Тогда Возврат; КонецЕсли; - Если ТранзакцияОткрыта <> Неопределено // Требуется использовать внешнюю транзакцию. - И ТранзакцияОткрыта <> Истина Тогда // Внешняя транзакция еще не открыта. - // Открытие внешней транзакции. - НачатьТранзакцию(); - ТранзакцияОткрыта = Истина; - КонецЕсли; Если Данные.БезПерезаписи Тогда УстановитьДополнительныеСвойства(НаборЗаписи, Данные.ДополнительныеСвойства); Для каждого Строка Из УдаляемыеЗаписи Цикл @@ -2856,7 +2948,6 @@ УпорядочитьГруппыПараметровИзмерений(Данные); // Проверка и обновление данных. - Данные.Вставить("ТранзакцияОткрыта", ?(ТранзакцияАктивна(), Неопределено, Ложь)); Данные.Вставить("НаборЗаписей", Данные.МенеджерРегистра.СоздатьНаборЗаписей()); Данные.Вставить("МетаданныеРегистра", Метаданные.НайтиПоТипу(ТипЗнч(Данные.НаборЗаписей))); Данные.Вставить("ПолноеИмяРегистра", Данные.МетаданныеРегистра.ПолноеИмя()); @@ -2871,96 +2962,117 @@ КонецЦикла; КонецЕсли; - Попытка - Если Данные.НовыеЗаписиСодержатТолькоРазличия Тогда - - Если Данные.ИмяПервогоИзмерения = Неопределено Тогда - ВызватьИсключение - НСтр("ru = 'Некорректные параметры в процедуре ОбновитьНаборыЗаписей.'"); - Иначе - Если Данные.ИмяВторогоИзмерения = Неопределено Тогда - ЗаписьНесколькимиНаборами = Ложь; - Иначе - ЗаписьНесколькимиНаборами = ЗаписьНесколькимиНаборами( - Данные, Новый Структура, Данные.ИмяПервогоИзмерения, Данные.ЗначенияПервогоИзмерения); - КонецЕсли; - - Если ЗаписьНесколькимиНаборами Тогда - СписокПолей = Данные.ИмяПервогоИзмерения + ", " + Данные.ИмяВторогоИзмерения; - Данные.НовыеЗаписи.Индексы.Добавить(СписокПолей); - - КоличествоПоЗначениямПервогоИзмерения = Данные.КоличествоПоЗначениям; - - Для каждого ПервоеЗначение Из Данные.ЗначенияПервогоИзмерения Цикл - Отбор = Новый Структура(Данные.ИмяПервогоИзмерения, ПервоеЗначение); - УстановитьОтбор(Данные.НаборЗаписей.Отбор[Данные.ИмяПервогоИзмерения], ПервоеЗначение); - - Если Данные.ИмяТретьегоИзмерения = Неопределено Тогда - ЗаписьНесколькимиНаборами = Ложь; - Иначе - ЗаписьНесколькимиНаборами = ЗаписьНесколькимиНаборами( - Данные, Отбор, Данные.ИмяВторогоИзмерения, Данные.ЗначенияВторогоИзмерения); - КонецЕсли; - - Если ЗаписьНесколькимиНаборами Тогда - Для каждого ВтороеЗначение Из Данные.ЗначенияВторогоИзмерения Цикл - Отбор.Вставить(Данные.ИмяВторогоИзмерения, ВтороеЗначение); - УстановитьОтбор(Данные.НаборЗаписей.Отбор[Данные.ИмяВторогоИзмерения], ВтороеЗначение); - - // Обновление по трем измерениям. - ОбновитьНовыеЗаписиНабораПоРазличнымНовымЗаписям(Данные, Отбор, ЕстьИзменения); - КонецЦикла; - Данные.НаборЗаписей.Отбор[Данные.ИмяВторогоИзмерения].Использование = Ложь; - Иначе - // Обновление по двум измерениям. - Данные.Вставить("КоличествоПоЗначениям", КоличествоПоЗначениямПервогоИзмерения); - ОбновитьНовыеЗаписиНабораПоРазличнымНовымЗаписям(Данные, Отбор, ЕстьИзменения); - КонецЕсли; - КонецЦикла; - Иначе - // Обновление по одному измерению. - ПрочитатьКоличествоДляЧтения(Данные); - ОбновитьНовыеЗаписиНабораПоРазличнымНовымЗаписям(Данные, Новый Структура, ЕстьИзменения); - КонецЕсли; - КонецЕсли; + Если Данные.НовыеЗаписиСодержатТолькоРазличия Тогда + + Если Данные.ИмяПервогоИзмерения = Неопределено Тогда + ВызватьИсключение + НСтр("ru = 'Некорректные параметры в процедуре ОбновитьНаборыЗаписей.'"); Иначе - Если Данные.ИмяПервогоИзмерения = Неопределено Тогда - // Обновление всех записей. - - ТекущиеДанные = Новый Структура("НаборЗаписей, НовыеЗаписи, ПоляСравнения, ТолькоПроверка, ДополнительныеСвойства"); - ЗаполнитьЗначенияСвойств(ТекущиеДанные, Данные); - ОбновитьНаборЗаписей(ТекущиеДанные, ЕстьИзменения, , Данные.ТранзакцияОткрыта); - - ИначеЕсли Данные.ИмяВторогоИзмерения = Неопределено Тогда - // Обновление по одному измерению. - Отбор = Новый Структура(Данные.ИмяПервогоИзмерения); - Для каждого Значение Из Данные.ЗначенияПервогоИзмерения Цикл - - УстановитьОтбор(Данные.НаборЗаписей.Отбор[Данные.ИмяПервогоИзмерения], Значение); - Отбор[Данные.ИмяПервогоИзмерения] = Значение; - - Если Данные.ЗначенияПервогоИзмерения.Количество() <> 1 Тогда - НовыеЗаписиНабора = Данные.НовыеЗаписи; - Иначе - НовыеЗаписиНабора = Данные.НовыеЗаписи.Скопировать(Отбор); - КонецЕсли; - - ТекущиеДанные = Новый Структура("НаборЗаписей, ПоляСравнения, ТолькоПроверка, ДополнительныеСвойства"); - ЗаполнитьЗначенияСвойств(ТекущиеДанные, Данные); - ТекущиеДанные.Вставить("НовыеЗаписи", НовыеЗаписиНабора); - - ОбновитьНаборЗаписей(ТекущиеДанные, ЕстьИзменения, , Данные.ТранзакцияОткрыта); - КонецЦикла; - - ИначеЕсли Данные.ИмяТретьегоИзмерения = Неопределено Тогда - // Обновление по двум измерениям. + Если Данные.ИмяВторогоИзмерения = Неопределено Тогда + ЗаписьНесколькимиНаборами = Ложь; + Иначе + ЗаписьНесколькимиНаборами = ЗаписьНесколькимиНаборами( + Данные, Новый Структура, Данные.ИмяПервогоИзмерения, Данные.ЗначенияПервогоИзмерения); + КонецЕсли; + + Если ЗаписьНесколькимиНаборами Тогда СписокПолей = Данные.ИмяПервогоИзмерения + ", " + Данные.ИмяВторогоИзмерения; Данные.НовыеЗаписи.Индексы.Добавить(СписокПолей); - Отбор = Новый Структура(СписокПолей); + + КоличествоПоЗначениямПервогоИзмерения = Данные.КоличествоПоЗначениям; Для каждого ПервоеЗначение Из Данные.ЗначенияПервогоИзмерения Цикл + Отбор = Новый Структура(Данные.ИмяПервогоИзмерения, ПервоеЗначение); УстановитьОтбор(Данные.НаборЗаписей.Отбор[Данные.ИмяПервогоИзмерения], ПервоеЗначение); - Отбор[Данные.ИмяПервогоИзмерения] = ПервоеЗначение; + + Если Данные.ИмяТретьегоИзмерения = Неопределено Тогда + ЗаписьНесколькимиНаборами = Ложь; + Иначе + ЗаписьНесколькимиНаборами = ЗаписьНесколькимиНаборами( + Данные, Отбор, Данные.ИмяВторогоИзмерения, Данные.ЗначенияВторогоИзмерения); + КонецЕсли; + + Если ЗаписьНесколькимиНаборами Тогда + Для каждого ВтороеЗначение Из Данные.ЗначенияВторогоИзмерения Цикл + Отбор.Вставить(Данные.ИмяВторогоИзмерения, ВтороеЗначение); + УстановитьОтбор(Данные.НаборЗаписей.Отбор[Данные.ИмяВторогоИзмерения], ВтороеЗначение); + + // Обновление по трем измерениям. + ОбновитьНовыеЗаписиНабораПоРазличнымНовымЗаписям(Данные, Отбор, ЕстьИзменения); + КонецЦикла; + Данные.НаборЗаписей.Отбор[Данные.ИмяВторогоИзмерения].Использование = Ложь; + Иначе + // Обновление по двум измерениям. + Данные.Вставить("КоличествоПоЗначениям", КоличествоПоЗначениямПервогоИзмерения); + ОбновитьНовыеЗаписиНабораПоРазличнымНовымЗаписям(Данные, Отбор, ЕстьИзменения); + КонецЕсли; + КонецЦикла; + Иначе + // Обновление по одному измерению. + ПрочитатьКоличествоДляЧтения(Данные); + ОбновитьНовыеЗаписиНабораПоРазличнымНовымЗаписям(Данные, Новый Структура, ЕстьИзменения); + КонецЕсли; + КонецЕсли; + Иначе + Если Данные.ИмяПервогоИзмерения = Неопределено Тогда + // Обновление всех записей. + + ТекущиеДанные = Новый Структура("НаборЗаписей, НовыеЗаписи, ПоляСравнения, ТолькоПроверка, ДополнительныеСвойства"); + ЗаполнитьЗначенияСвойств(ТекущиеДанные, Данные); + ОбновитьНаборЗаписей(ТекущиеДанные, ЕстьИзменения); + + ИначеЕсли Данные.ИмяВторогоИзмерения = Неопределено Тогда + // Обновление по одному измерению. + Отбор = Новый Структура(Данные.ИмяПервогоИзмерения); + Для каждого Значение Из Данные.ЗначенияПервогоИзмерения Цикл + + УстановитьОтбор(Данные.НаборЗаписей.Отбор[Данные.ИмяПервогоИзмерения], Значение); + Отбор[Данные.ИмяПервогоИзмерения] = Значение; + + Если Данные.ЗначенияПервогоИзмерения.Количество() <> 1 Тогда + НовыеЗаписиНабора = Данные.НовыеЗаписи; + Иначе + НовыеЗаписиНабора = Данные.НовыеЗаписи.Скопировать(Отбор); + КонецЕсли; + + ТекущиеДанные = Новый Структура("НаборЗаписей, ПоляСравнения, ТолькоПроверка, ДополнительныеСвойства"); + ЗаполнитьЗначенияСвойств(ТекущиеДанные, Данные); + ТекущиеДанные.Вставить("НовыеЗаписи", НовыеЗаписиНабора); + + ОбновитьНаборЗаписей(ТекущиеДанные, ЕстьИзменения); + КонецЦикла; + + ИначеЕсли Данные.ИмяТретьегоИзмерения = Неопределено Тогда + // Обновление по двум измерениям. + СписокПолей = Данные.ИмяПервогоИзмерения + ", " + Данные.ИмяВторогоИзмерения; + Данные.НовыеЗаписи.Индексы.Добавить(СписокПолей); + Отбор = Новый Структура(СписокПолей); + + Для каждого ПервоеЗначение Из Данные.ЗначенияПервогоИзмерения Цикл + УстановитьОтбор(Данные.НаборЗаписей.Отбор[Данные.ИмяПервогоИзмерения], ПервоеЗначение); + Отбор[Данные.ИмяПервогоИзмерения] = ПервоеЗначение; + + ОбновитьНовыеЗаписиНабораПоВсемНовымЗаписям( + Данные, + Отбор, + СписокПолей, + Данные.ИмяВторогоИзмерения, + Данные.ЗначенияВторогоИзмерения, + ЕстьИзменения); + КонецЦикла; + Иначе + // Обновление по трем измерениям. + СписокПолей = Данные.ИмяПервогоИзмерения + ", " + Данные.ИмяВторогоИзмерения + ", " + Данные.ИмяТретьегоИзмерения; + Данные.НовыеЗаписи.Индексы.Добавить(СписокПолей); + Отбор = Новый Структура(СписокПолей); + + Для каждого ПервоеЗначение Из Данные.ЗначенияПервогоИзмерения Цикл + УстановитьОтбор(Данные.НаборЗаписей.Отбор[Данные.ИмяПервогоИзмерения], ПервоеЗначение); + Отбор[Данные.ИмяПервогоИзмерения] = ПервоеЗначение; + + Для каждого ВтороеЗначение Из Данные.ЗначенияВторогоИзмерения Цикл + УстановитьОтбор(Данные.НаборЗаписей.Отбор[Данные.ИмяВторогоИзмерения], ВтороеЗначение); + Отбор[Данные.ИмяВторогоИзмерения] = ВтороеЗначение; ОбновитьНовыеЗаписиНабораПоВсемНовымЗаписям( Данные, @@ -2970,41 +3082,9 @@ Данные.ЗначенияВторогоИзмерения, ЕстьИзменения); КонецЦикла; - Иначе - // Обновление по трем измерениям. - СписокПолей = Данные.ИмяПервогоИзмерения + ", " + Данные.ИмяВторогоИзмерения + ", " + Данные.ИмяТретьегоИзмерения; - Данные.НовыеЗаписи.Индексы.Добавить(СписокПолей); - Отбор = Новый Структура(СписокПолей); - - Для каждого ПервоеЗначение Из Данные.ЗначенияПервогоИзмерения Цикл - УстановитьОтбор(Данные.НаборЗаписей.Отбор[Данные.ИмяПервогоИзмерения], ПервоеЗначение); - Отбор[Данные.ИмяПервогоИзмерения] = ПервоеЗначение; - - Для каждого ВтороеЗначение Из Данные.ЗначенияВторогоИзмерения Цикл - УстановитьОтбор(Данные.НаборЗаписей.Отбор[Данные.ИмяВторогоИзмерения], ВтороеЗначение); - Отбор[Данные.ИмяВторогоИзмерения] = ВтороеЗначение; - - ОбновитьНовыеЗаписиНабораПоВсемНовымЗаписям( - Данные, - Отбор, - СписокПолей, - Данные.ИмяВторогоИзмерения, - Данные.ЗначенияВторогоИзмерения, - ЕстьИзменения); - КонецЦикла; - КонецЦикла; - КонецЕсли; + КонецЦикла; КонецЕсли; - - Если Данные.ТранзакцияОткрыта = Истина Тогда - ЗафиксироватьТранзакцию(); - КонецЕсли; - Исключение - Если Данные.ТранзакцияОткрыта = Истина Тогда - ОтменитьТранзакцию(); - КонецЕсли; - ВызватьИсключение; - КонецПопытки; + КонецЕсли; КонецПроцедуры @@ -3557,7 +3637,7 @@ КонецПроцедуры -// Заменят удаленные роли на новые +// Заменят удаленные роли на новые. Процедура ЗаменитьУдаленныеРолиВПрофиляхГруппДоступа() Экспорт // Заполнение списка удаленных ролей и соответствующих новых ролей. @@ -3643,7 +3723,7 @@ КонецЕсли; СоответствиеРолей.Вставить(ИмяРоли, МассивРолей); - // Найти профили, использующие удаленные роли + // Найти профили, использующие удаленные роли. Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | РолиПрофилей.Ссылка КАК Профиль, @@ -4579,7 +4659,7 @@ |ВЫБРАТЬ РАЗЛИЧНЫЕ | ПроверяемыеПользователи.Пользователь КАК Пользователь, | ГруппыДоступаПользователи.Ссылка.Профиль КАК Профиль - |ПОМЕСТИТЬ ВсеПрофилиПользователей + |ПОМЕСТИТЬ ПрофилиПользователей |ИЗ | ПроверяемыеПользователи КАК ПроверяемыеПользователи | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей @@ -4589,30 +4669,7 @@ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ГруппыДоступа.Пользователи КАК ГруппыДоступаПользователи | ПО (СоставыГруппПользователей.ГруппаПользователей = ГруппыДоступаПользователи.Пользователь) | И (НЕ ГруппыДоступаПользователи.Ссылка.ПометкаУдаления) - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ РАЗЛИЧНЫЕ - | ПрофильныеРоли.Профиль КАК Профиль, - | ПрофильныеРоли.Роль КАК Роль - |ПОМЕСТИТЬ ПрофильныеРоли - |ИЗ - | &ПрофильныеРоли КАК ПрофильныеРоли - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ РАЗЛИЧНЫЕ - | ВсеПрофилиПользователей.Пользователь, - | ВсеПрофилиПользователей.Профиль, - | ПрофильныеРоли.Роль КАК ПрофильнаяРоль - |ПОМЕСТИТЬ ПрофилиПользователей - |ИЗ - | ВсеПрофилиПользователей КАК ВсеПрофилиПользователей - | ЛЕВОЕ СОЕДИНЕНИЕ ПрофильныеРоли КАК ПрофильныеРоли - | ПО (ПрофильныеРоли.Профиль = ВсеПрофилиПользователей.Профиль) - | И (НЕ ВсеПрофилиПользователей.Профиль.ПоставляемыйПрофильИзменен) - |ГДЕ - | НЕ ВсеПрофилиПользователей.Профиль.ПометкаУдаления + | И (НЕ ГруппыДоступаПользователи.Ссылка.Профиль.ПометкаУдаления) |; | |//////////////////////////////////////////////////////////////////////////////// @@ -4622,18 +4679,7 @@ |ИЗ | ПрофилиПользователей КАК ПрофилиПользователей | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ПрофилиГруппДоступа.Роли КАК Роли - | ПО (Роли.Ссылка = ПрофилиПользователей.Профиль) - | И (ПрофилиПользователей.ПрофильнаяРоль ЕСТЬ NULL ) - | - |ОБЪЕДИНИТЬ ВСЕ - | - |ВЫБРАТЬ - | ПрофилиПользователей.Пользователь, - | ПрофилиПользователей.ПрофильнаяРоль - |ИЗ - | ПрофилиПользователей КАК ПрофилиПользователей - |ГДЕ - | НЕ ПрофилиПользователей.ПрофильнаяРоль ЕСТЬ NULL "; + | ПО (Роли.Ссылка = ПрофилиПользователей.Профиль)"; Запрос.Текст = Запрос.Текст + " |; @@ -4641,21 +4687,6 @@ |//////////////////////////////////////////////////////////////////////////////// |" + ТекстЗапроса; - ПрофильныеРоли = Новый ТаблицаЗначений; - ПрофильныеРоли.Колонки.Добавить("Профиль", Новый ОписаниеТипов("СправочникСсылка.ПрофилиГруппДоступа")); - ПрофильныеРоли.Колонки.Добавить("Роль", Новый ОписаниеТипов("Строка",, Новый КвалификаторыСтроки(255))); - - Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() - И ИспользоватьПрофильныеРоли() Тогда - - ОписаниеПрофильныхРолей = УправлениеДоступомСлужебныйПовтИсп.ОписаниеПрофильныхРолей(); - Для Каждого ОписаниеПрофильнойРоли Из ОписаниеПрофильныхРолей Цикл - ЗаполнитьЗначенияСвойств(ПрофильныеРоли.Добавить(), ОписаниеПрофильнойРоли); - КонецЦикла; - КонецЕсли; - - Запрос.УстановитьПараметр("ПрофильныеРоли", ПрофильныеРоли); - Если Константы.ИспользоватьВнешнихПользователей.Получить() Тогда Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ИсключитьВнешнихПользователей", "Истина"); Иначе @@ -4669,11 +4700,11 @@ Итог.Вставить("Администраторы", Новый Соответствие); - Для каждого Строка Из РезультатыЗапросов[ПоследнийРезультат-5].Выгрузить() Цикл + Для каждого Строка Из РезультатыЗапросов[ПоследнийРезультат-3].Выгрузить() Цикл Итог.Администраторы.Вставить(Строка.Ссылка, Истина); КонецЦикла; - Итог.Вставить("ИдентификаторыПользователейИБ", РезультатыЗапросов[ПоследнийРезультат-4].Выгрузить()); + Итог.Вставить("ИдентификаторыПользователейИБ", РезультатыЗапросов[ПоследнийРезультат-2].Выгрузить()); Итог.ИдентификаторыПользователейИБ.Индексы.Добавить("Пользователь"); Итог.Вставить("РолиПользователей", РезультатыЗапросов[ПоследнийРезультат].Выгрузить()); @@ -4683,11 +4714,6 @@ КонецФункции -Функция ИспользоватьПрофильныеРоли() - - Возврат Не ОбщегоНазначенияКлиентСервер.РежимОтладки(); -КонецФункции - Функция ПрофилиПользователяСРолью(ТекущийПользователь, Роль) Запрос = Новый Запрос; @@ -4718,7 +4744,7 @@ Процедура ОбновитьРолиПользователейИБ(ОбновляемыеПользователиИБ, ПарольПользователяСервиса) - Для каждого КлючИЗначение Из ОбновляемыеПользователиИБ Цикл + Для Каждого КлючИЗначение Из ОбновляемыеПользователиИБ Цикл РолиДляДобавления = КлючИЗначение.Значение.РолиДляДобавления; РолиДляУдаления = КлючИЗначение.Значение.РолиДляУдаления; ПользовательИБ = КлючИЗначение.Значение.ПользовательИБ; @@ -4734,54 +4760,49 @@ ПользовательИБ.Роли.Удалить(Метаданные.Роли[КлючИЗначение.Ключ]); КонецЦикла; - ЗаписатьПользователяПриОбновленииРолей(ПользовательСсылка, ПользовательИБ, БылиПолныеПрава, ПарольПользователяСервиса); + НачатьТранзакцию(); + Попытка + ЗаписатьПользователяПриОбновленииРолей(ПользовательСсылка, + ПользовательИБ, БылиПолныеПрава, ПарольПользователяСервиса); + + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; КонецЦикла; КонецПроцедуры Процедура ЗаписатьПользователяПриОбновленииРолей(ПользовательСсылка, ПользовательИБ, БылиПолныеПрава, ПарольПользователяСервиса) - НачатьТранзакцию(); + ПользователиСлужебный.ЗаписатьПользователяИнформационнойБазы(ПользовательИБ, ПользовательСсылка); - Попытка - ПользователиСлужебный.ЗаписатьПользователяИнформационнойБазы(ПользовательИБ, ПользовательСсылка); - - Если НЕ ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда - ЗафиксироватьТранзакцию(); + Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда + Возврат; + КонецЕсли; + + ЕстьПолныеПрава = ПользовательИБ.Роли.Содержит(Метаданные.Роли.ПолныеПрава); + Если ЕстьПолныеПрава = БылиПолныеПрава Тогда + Возврат; + КонецЕсли; + + Если ПарольПользователяСервиса = Неопределено Тогда + Если ОбщегоНазначенияПовтИсп.СеансЗапущенБезРазделителей() Тогда Возврат; КонецЕсли; - ЕстьПолныеПрава = ПользовательИБ.Роли.Содержит(Метаданные.Роли.ПолныеПрава); - Если ЕстьПолныеПрава = БылиПолныеПрава Тогда - ЗафиксироватьТранзакцию(); - Возврат; - КонецЕсли; - - Если ПарольПользователяСервиса = Неопределено Тогда - - Если ОбщегоНазначенияПовтИсп.СеансЗапущенБезРазделителей() Тогда - ЗафиксироватьТранзакцию(); - Возврат; - КонецЕсли; - - ВызватьИсключение - НСтр("ru = 'Для изменения административного доступа - |требуется пароль пользователя сервиса. - | - |Операция может быть выполнена только интерактивно.'"); - КонецЕсли; - - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ПользователиВМоделиСервиса") Тогда - МодульПользователиСлужебныйВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ПользователиСлужебныйВМоделиСервиса"); - МодульПользователиСлужебныйВМоделиСервиса.ЗаписатьПользователяСервиса(ПользовательСсылка, Ложь, ПарольПользователяСервиса); - КонецЕсли; - - ЗафиксироватьТранзакцию(); - - Исключение - ОтменитьТранзакцию(); - ВызватьИсключение; - КонецПопытки; + ВызватьИсключение + НСтр("ru = 'Для изменения административного доступа + |требуется пароль пользователя сервиса. + | + |Операция может быть выполнена только интерактивно.'"); + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.ПользователиВМоделиСервиса") Тогда + МодульПользователиСлужебныйВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("ПользователиСлужебныйВМоделиСервиса"); + МодульПользователиСлужебныйВМоделиСервиса.ЗаписатьПользователяСервиса(ПользовательСсылка, Ложь, ПарольПользователяСервиса); + КонецЕсли; КонецПроцедуры @@ -4900,15 +4921,6 @@ Знач ЗначенияИзмерения, ЕстьИзменения) - // Открытие транзакции, если ее нет или она еще не открыта - // для выполнения управляемой блокировки на читаемый набор записей. - // Может быть ситуации, когда транзакция будет зафиксирована без - // фактического изменения данных, т.е. если заблокированные данные совпадут. - Если Данные.ТранзакцияОткрыта = Ложь Тогда - Данные.ТранзакцияОткрыта = Истина; - НачатьТранзакцию(); - КонецЕсли; - ЗаблокироватьОбластьНабораЗаписей(Данные.НаборЗаписей, Данные.ПолноеИмяРегистра); Данные.НаборЗаписей.Прочитать(); @@ -4931,17 +4943,12 @@ ТекущиеДанные.Вставить("НовыеЗаписи", НовыеЗаписиНабора); ТекущиеДанные.Вставить("НаборЗаписейПрочитан", Истина); - ОбновитьНаборЗаписей(ТекущиеДанные, ЕстьИзменения, , Данные.ТранзакцияОткрыта); + ОбновитьНаборЗаписей(ТекущиеДанные, ЕстьИзменения); КонецФункции Процедура ОбновитьНовыеЗаписиНабораПоРазличнымНовымЗаписям(Знач Данные, Знач Отбор, ЕстьИзменения) - Если Данные.ТранзакцияОткрыта = Ложь Тогда - Данные.ТранзакцияОткрыта = Истина; - НачатьТранзакцию(); - КонецЕсли; - // Получение количества записей для чтения. Если Отбор.Количество() = 0 Тогда @@ -5008,7 +5015,7 @@ ТекущиеДанные.Вставить("НовыеЗаписи", НовыеЗаписиНабора); ТекущиеДанные.Вставить("НаборЗаписейПрочитан", Истина); - ОбновитьНаборЗаписей(ТекущиеДанные, ЕстьИзменения, , Данные.ТранзакцияОткрыта); + ОбновитьНаборЗаписей(ТекущиеДанные, ЕстьИзменения); Иначе // Построчное обновление. УстановитьДополнительныеСвойства(Данные.НаборДляОднойЗаписи, Данные.ДополнительныеСвойства); @@ -5622,4 +5629,32 @@ КонецФункции +// Для функции РазрешенныеЗначенияДляДинамическогоСписка. +Процедура ДобавитьЗапросВПакет(ТекстПакета, ТекстЗапроса) + + Разделитель = + " + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |"; + + ТекстПакета = ТекстПакета + Разделитель + ТекстЗапроса; + +КонецПроцедуры + +// Для функции РазрешенныеЗначенияДляДинамическогоСписка. +Процедура ОбъединитьЗапросСЗапросом(ТекстЗапроса, ДобавляемыйТекстЗапроса) + + Объединитель = + " + | + |ОБЪЕДИНИТЬ ВСЕ + | + |"; + + ТекстПакета = ТекстЗапроса + Объединитель + ДобавляемыйТекстЗапроса; + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/CommonModules/УправлениеДоступомСлужебныйКлиентСервер/Module.bsl b/SSL/src/CommonModules/УправлениеДоступомСлужебныйКлиентСервер/Module.bsl index 080a18e64..c566608f9 100644 --- a/SSL/src/CommonModules/УправлениеДоступомСлужебныйКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/УправлениеДоступомСлужебныйКлиентСервер/Module.bsl @@ -128,9 +128,9 @@ НСтр("ru = 'Все разрешены, без исключений'"), НСтр("ru = 'Все запрещены, без исключений'")); Иначе - ЧислоИПредмет = Формат(КоличествоЗначений, "ЧГ=") + ЧислоИПредмет = Формат(КоличествоЗначений, "ЧГ=") + " " + ПользователиСлужебныйКлиентСервер.ПредметЦелогоЧисла(КоличествоЗначений, - "Л = ru_RU", НСтр("ru = '-го значения,-х значений,-и значений,,,,,,0'")); + "Л = ru_RU", НСтр("ru = 'значения,значений,значений,,,,,,0'")); Представление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( ?(ОписаниеВидаДоступа.ВсеРазрешены, diff --git a/SSL/src/CommonModules/УправлениеДоступомСлужебныйПовтИсп/Module.bsl b/SSL/src/CommonModules/УправлениеДоступомСлужебныйПовтИсп/Module.bsl index c1d2b2874..0d85fd175 100644 --- a/SSL/src/CommonModules/УправлениеДоступомСлужебныйПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/УправлениеДоступомСлужебныйПовтИсп/Module.bsl @@ -58,11 +58,11 @@ // текущее состояние регистра сведений НаборыЗначенийДоступа. // // Параметры: -// ДляПроверки - Булево - не добавлять виды ограничений, которые вычисляются -// на основе связей через вид доступа Объект. +// ДляПроверки - Булево - вернуть текстовое описание ограничений прав, заполненное +// в переопределяемых модулях без проверки. // // Возвращаемое значение: -// ТаблицаЗначений: +// ТаблицаЗначений - если ДляПроверки = Ложь, состав колонок: // Таблица - Строка - имя таблицы объекта метаданных, например, Справочник.Файлы. // Право - Строка: "Чтение", "Изменение". // ВидДоступа - Ссылка - пустая ссылка основного типа значений вида доступа, @@ -72,6 +72,8 @@ // используя наборы значений доступа, например, Справочник.ПапкиФайлов. // - Неопределено, если ВидДоступа <> Неопределено. // +// Строка - если ДляПроверки = Истина - ограничения прав, как они добавлены в переопределяемом модуле. +// Функция ПостоянныеВидыОграниченийПравОбъектовМетаданных(ДляПроверки = Ложь) Экспорт УстановитьПривилегированныйРежим(Истина); @@ -82,12 +84,6 @@ ВидыДоступаПрав.Колонки.Добавить("ВидДоступа", ОписаниеТиповЗначенийДоступаИВладельцевНастроекПрав()); ВидыДоступаПрав.Колонки.Добавить("ТаблицаОбъекта", Метаданные.РегистрыСведений.НаборыЗначенийДоступа.Измерения.Объект.Тип); - Если ДляПроверки Тогда - ВидыДоступаПрав.Колонки.Добавить("ПолноеИмяТаблицы", Новый ОписаниеТипов("Строка")); - ВидыДоступаПрав.Колонки.Добавить("ИмяВидаДоступа", Новый ОписаниеТипов("Строка")); - ВидыДоступаПрав.Колонки.Добавить("ПолноеИмяТаблицыОбъекта", Новый ОписаниеТипов("Строка")); - КонецЕсли; - ОграниченияПрав = ""; ОбработчикиСобытия = ОбщегоНазначения.ОбработчикиСлужебногоСобытия( @@ -99,6 +95,10 @@ УправлениеДоступомПереопределяемый.ПриЗаполненииВидовОграниченийПравОбъектовМетаданных(ОграниченияПрав); + Если ДляПроверки Тогда + Возврат ОграниченияПрав; + КонецЕсли; + ВидыДоступаПоИменам = УправлениеДоступомСлужебныйПовтИсп.Параметры().СвойстваВидовДоступа.ПоИменам; Для НомерСтроки = 1 По СтрЧислоСтрок(ОграниченияПрав) Цикл @@ -176,19 +176,10 @@ НовоеОписание.Право = Право; НовоеОписание.ВидДоступа = ВидДоступаСсылка; НовоеОписание.ТаблицаОбъекта = ТаблицаОбъектаСсылка; - Если ДляПроверки Тогда - НовоеОписание.ПолноеИмяТаблицы = Таблица; - НовоеОписание.ИмяВидаДоступа = ВидДоступа; - НовоеОписание.ПолноеИмяТаблицыОбъекта = ТаблицаОбъекта; - КонецЕсли; КонецЕсли; КонецЕсли; КонецЦикла; - Если ДляПроверки Тогда - Возврат ВидыДоступаПрав; - КонецЕсли; - // Добавление видов доступа объектов, которые определяются не только через наборы значений доступа. Запрос = Новый Запрос; Запрос.Текст = @@ -537,98 +528,4 @@ КонецФункции -// Только для внутреннего использования. -Функция ОписаниеПрофильныхРолей() Экспорт - - ТекущиеПараметры = УправлениеДоступомСлужебныйПовтИсп.Параметры(); - ОписанияПрофилей = ТекущиеПараметры.ПоставляемыеПрофилиГруппДоступа.ОписанияПрофилейМассив; - - ПрофильныеРоли = Новый Соответствие; - Идентификаторы = Новый Массив; - ВсеРоли = ПользователиСлужебный.ВсеРоли().Соответствие; - - Для каждого ОписаниеПрофиля Из ОписанияПрофилей Цикл - - Если Не ЗначениеЗаполнено(ОписаниеПрофиля.Имя) - Или ОписаниеПрофиля.Имя = "Администратор" Тогда - - Продолжить; - КонецЕсли; - - ИмяПрофильнойРоли = "Профиль" + ОписаниеПрофиля.Имя; - Если ВсеРоли.Получить(ИмяПрофильнойРоли) = Неопределено Тогда - Продолжить; - КонецЕсли; - - Идентификатор = Новый УникальныйИдентификатор(ОписаниеПрофиля.Идентификатор); - Идентификаторы.Добавить(Идентификатор); - ПрофильныеРоли.Вставить(Идентификатор, ИмяПрофильнойРоли); - КонецЦикла; - - Запрос = Новый Запрос; - Запрос.УстановитьПараметр("Идентификаторы", Идентификаторы); - Запрос.Текст = - "ВЫБРАТЬ - | Профили.Ссылка КАК Ссылка, - | Профили.ИдентификаторПоставляемыхДанных КАК Идентификатор - |ИЗ - | Справочник.ПрофилиГруппДоступа КАК Профили - |ГДЕ - | Профили.ИдентификаторПоставляемыхДанных В(&Идентификаторы)"; - - Выборка = Запрос.Выполнить().Выбрать(); - ОписаниеПрофильныхРолей = Новый Массив; - - Пока Выборка.Следующий() Цикл - ПрофильнаяРоль = ПрофильныеРоли[Выборка.Идентификатор]; - ОписаниеПрофильнойРоли = Новый Структура; - ОписаниеПрофильнойРоли.Вставить("Профиль", Выборка.Ссылка); - ОписаниеПрофильнойРоли.Вставить("Роль", ПрофильнаяРоль); - ОписаниеПрофильныхРолей.Добавить(Новый ФиксированнаяСтруктура(ОписаниеПрофильнойРоли)); - КонецЦикла; - - Возврат Новый ФиксированныйМассив(ОписаниеПрофильныхРолей); - -КонецФункции - -// Только для внутреннего использования. -Функция ВхожденияРолейВПрофильныеРоли() Экспорт - - ТекущиеПараметры = УправлениеДоступомСлужебныйПовтИсп.Параметры(); - ОписанияПрофилей = ТекущиеПараметры.ПоставляемыеПрофилиГруппДоступа.ОписанияПрофилейМассив; - - ВхожденияРолейВПрофильныеРоли = Новый Соответствие; - ВсеРоли = ПользователиСлужебный.ВсеРоли().Соответствие; - - Для каждого ОписаниеПрофиля Из ОписанияПрофилей Цикл - - Если Не ЗначениеЗаполнено(ОписаниеПрофиля.Имя) - Или ОписаниеПрофиля.Имя = "Администратор" Тогда - - Продолжить; - КонецЕсли; - - ИмяПрофильнойРоли = "Профиль" + ОписаниеПрофиля.Имя; - Если ВсеРоли.Получить(ИмяПрофильнойРоли) = Неопределено Тогда - Продолжить; - КонецЕсли; - - Для каждого Роль Из ОписаниеПрофиля.Роли Цикл - ПрофильныеРоли = ВхожденияРолейВПрофильныеРоли.Получить(Роль); - Если ПрофильныеРоли = Неопределено Тогда - ПрофильныеРоли = Новый Массив; - ВхожденияРолейВПрофильныеРоли.Вставить(Роль, ПрофильныеРоли); - КонецЕсли; - ПрофильныеРоли.Добавить(ИмяПрофильнойРоли); - КонецЦикла; - КонецЦикла; - - Для Каждого КлючИЗначение Из ВхожденияРолейВПрофильныеРоли Цикл - ВхожденияРолейВПрофильныеРоли[КлючИЗначение.Ключ] = Новый ФиксированныйМассив(КлючИЗначение.Значение); - КонецЦикла; - - Возврат Новый ФиксированноеСоответствие(ВхожденияРолейВПрофильныеРоли); - -КонецФункции - #КонецОбласти diff --git a/SSL/src/CommonModules/УправлениеИтогамиИАгрегатамиСлужебный/Module.bsl b/SSL/src/CommonModules/УправлениеИтогамиИАгрегатамиСлужебный/Module.bsl index 4af1dded8..b270405c4 100644 --- a/SSL/src/CommonModules/УправлениеИтогамиИАгрегатамиСлужебный/Module.bsl +++ b/SSL/src/CommonModules/УправлениеИтогамиИАгрегатамиСлужебный/Module.bsl @@ -170,7 +170,8 @@ Продолжить; КонецЕсли; РегистрНакопленияМенеджер.УстановитьМаксимальныйПериодРассчитанныхИтогов(РегистрНакопленияПериод); - Если Не РегистрНакопленияМенеджер.ПолучитьИспользованиеТекущихИтогов() Тогда + Если Не РегистрНакопленияМенеджер.ПолучитьИспользованиеИтогов() + Или Не РегистрНакопленияМенеджер.ПолучитьИспользованиеТекущихИтогов() Тогда Продолжить; КонецЕсли; РегистрНакопленияМенеджер.ПересчитатьТекущиеИтоги(); @@ -186,7 +187,8 @@ Продолжить; КонецЕсли; РегистрБухгалтерииМенеджер.УстановитьМаксимальныйПериодРассчитанныхИтогов(РегистрБухгалтерииПериод); - Если Не РегистрБухгалтерииМенеджер.ПолучитьИспользованиеТекущихИтогов() Тогда + Если Не РегистрБухгалтерииМенеджер.ПолучитьИспользованиеИтогов() + Или Не РегистрБухгалтерииМенеджер.ПолучитьИспользованиеТекущихИтогов() Тогда Продолжить; КонецЕсли; РегистрБухгалтерииМенеджер.ПересчитатьТекущиеИтоги(); diff --git a/SSL/src/CommonModules/УправлениеКонтактнойИнформацией/Module.bsl b/SSL/src/CommonModules/УправлениеКонтактнойИнформацией/Module.bsl index 1b2ce3850..77b574bdb 100644 --- a/SSL/src/CommonModules/УправлениеКонтактнойИнформацией/Module.bsl +++ b/SSL/src/CommonModules/УправлениеКонтактнойИнформацией/Module.bsl @@ -14,12 +14,14 @@ // Параметры: // Форма - УправляемаяФорма - Форма объекта-владельца, предназначенная для вывода контактной. // Информации. -// Объект - Произвольный - Объект-владелец контактной информации. -// ПоложениеЗаголовкаКИ - ПоложениеЗаголовкаЭлементаФормы - Может принимать значения -// ПоложениеЗаголовкаЭлементаФормы.Лево или -// ПоложениеЗаголовкаЭлементаФормы.Верх (по умолчанию). +// Объект - Произвольный - Объект-владелец контактной информации. Если это ссылка, то контактная информация +// будет получена из объекта по ссылке, иначе из таблицы КонтактнаяИнформация объекта. +// ИмяЭлементаДляРазмещения - Строка - группа, куда будут размещены элементы контактной информации. +// ПоложениеЗаголовкаКИ - ПоложениеЗаголовкаЭлементаФормы - Может принимать значения. +// ПоложениеЗаголовкаЭлементаФормы.Верх или +// ПоложениеЗаголовкаЭлементаФормы.Лево (по умолчанию). // -Процедура ПриСозданииНаСервере(Форма, Объект, ИмяЭлементаДляРазмещения = "", ПоложениеЗаголовкаКИ = "", +Процедура ПриСозданииНаСервере(Форма, Объект, ИмяЭлементаДляРазмещения = "ГруппаКонтактнаяИнформация", ПоложениеЗаголовкаКИ = "", Знач ИсключаемыеВиды = Неопределено, ОтложеннаяИнициализация = Ложь) Экспорт Если ИсключаемыеВиды = Неопределено Тогда @@ -34,8 +36,7 @@ СсылкаНаОбъект = Объект.Ссылка; МетаданныеОбъекта = СсылкаНаОбъект.Метаданные(); ПолноеИмяОбъектаМетаданных = МетаданныеОбъекта.ПолноеИмя(); - ИмяГруппыВидовКИ = СтрЗаменить(ПолноеИмяОбъектаМетаданных, ".", ""); - ГруппаВидовКИ = Справочники.ВидыКонтактнойИнформации[ИмяГруппыВидовКИ]; + ГруппаВидовКИ = ГруппаВидовКонтактнойИнформацииОбъекта(СсылкаНаОбъект); ИмяОбъекта = МетаданныеОбъекта.Имя; ИспользуетсяКонтактнаяИнформация = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ГруппаВидовКИ, "Используется"); @@ -50,15 +51,12 @@ ДобавленныеРеквизиты.Добавить(СтрокаРеквизита.Имя); КонецЕсли; КонецЦикла; - Форма.ПараметрыКонтактнойИнформации = Новый Структура; - Форма.ПараметрыКонтактнойИнформации.Вставить("ГруппаДляРазмещения", ИмяЭлементаДляРазмещения); - Форма.ПараметрыКонтактнойИнформации.Вставить("ПоложениеЗаголовка", ЗначениеПоложенияЗаголовкаКИ(ПоложениеЗаголовкаКИ)); - Форма.ПараметрыКонтактнойИнформации.Вставить("ДобавленныеРеквизиты", ДобавленныеРеквизиты); - Форма.ПараметрыКонтактнойИнформации.Вставить("ОтложеннаяИнициализация", ОтложеннаяИнициализация); - Форма.ПараметрыКонтактнойИнформации.Вставить("ИсключаемыеВиды", ИсключаемыеВиды); - Форма.ПараметрыКонтактнойИнформации.Вставить("ВыполненаОтложеннаяИнициализация", Ложь); - Форма.ПараметрыКонтактнойИнформации.Вставить("ДобавленныеЭлементы", Новый СписокЗначений); - Форма.ПараметрыКонтактнойИнформации.Вставить("Владелец", СсылкаНаОбъект); + + ПараметрыКонтактнойИнформации = ПараметрыКонтактнойИнформации(Форма, ИмяЭлементаДляРазмещения, ПоложениеЗаголовкаКИ, + ОтложеннаяИнициализация, ИсключаемыеВиды); + ПараметрыКонтактнойИнформации.ДобавленныеРеквизиты = ДобавленныеРеквизиты; + ПараметрыКонтактнойИнформации.Владелец = СсылкаНаОбъект; + Если Не ПустаяСтрока(ИмяЭлементаДляРазмещения) Тогда Форма.Элементы[ИмяЭлементаДляРазмещения].Видимость = Ложь; КонецЕсли; @@ -69,7 +67,7 @@ ЕстьКолонкаДействуетС = (РеквизитыОбъекта.Найти("ДействуетС") <> Неопределено); ЕстьКолонкаИдентификаторСтрокиТабличнойЧасти = (РеквизитыОбъекта.Найти("ИдентификаторСтрокиТабличнойЧасти") <> Неопределено); - Если ЗначениеЗаполнено(СсылкаНаОбъект) Тогда + Если ОбщегоНазначения.ЭтоСсылка(ТипЗнч(Объект)) Тогда ТекстЗапроса = "ВЫБРАТЬ | КонтактнаяИнформация.Представление КАК Представление, | КонтактнаяИнформация.НомерСтроки КАК НомерСтроки, @@ -134,7 +132,7 @@ ТекстЗапросаИсторическаяИнформация = "ЛОЖЬ КАК ЭтоИсторическаяКонтактнаяИнформация,0 КАК ДействуетС, "; КонецЕсли; - ТекстЗапроса =" ВЫБРАТЬ + ТекстЗапроса = " ВЫБРАТЬ | КонтактнаяИнформация.Представление КАК Представление, | КонтактнаяИнформация.ЗначенияПолей КАК ЗначенияПолей, | КонтактнаяИнформация.НомерСтроки КАК НомерСтроки, " + ТекстЗапросаИсторическаяИнформация + " @@ -153,8 +151,7 @@ | ВидыКонтактнойИнформации.ИмяПредопределенныхДанных КАК ИмяПредопределенныхДанных, | ВидыКонтактнойИнформации.Тип КАК Тип, | ВидыКонтактнойИнформации.ОбязательноеЗаполнение КАК ОбязательноеЗаполнение, - | ВидыКонтактнойИнформации.МногострочноеПоле КАК МногострочноеПоле, - | ВидыКонтактнойИнформации.Подсказка КАК Подсказка, + | ВидыКонтактнойИнформации.ВидПоляДругое КАК ВидПоляДругое, | ВидыКонтактнойИнформации.Наименование КАК Наименование, | ВидыКонтактнойИнформации.ХранитьИсториюИзменений КАК ХранитьИсториюИзменений, | ВидыКонтактнойИнформации.РедактированиеТолькоВДиалоге КАК РедактированиеТолькоВДиалоге, @@ -166,7 +163,7 @@ | ЕСТЬNULL(КонтактнаяИнформация.ДействуетС, 0) КАК ДействуетС, | ЕСТЬNULL(КонтактнаяИнформация.НомерСтроки, 0) КАК НомерСтроки, | 0 КАК ИдентификаторСтрокиТабличнойЧасти, - | ВЫРАЗИТЬ("""""""" КАК СТРОКА(200)) КАК ИмяРеквизита, + | ВЫРАЗИТЬ("""" КАК СТРОКА(200)) КАК ИмяРеквизита, | ВЫРАЗИТЬ("""" КАК СТРОКА) КАК Комментарий |ИЗ | Справочник.ВидыКонтактнойИнформации КАК ВидыКонтактнойИнформации @@ -189,10 +186,9 @@ ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "0 КАК ИдентификаторСтрокиТабличнойЧасти", "ЕСТЬNULL(КонтактнаяИнформация.ИдентификаторСтрокиТабличнойЧасти, 0) КАК ИдентификаторСтрокиТабличнойЧасти"); КонецЕсли; - + Запрос = Новый Запрос(ТекстЗапроса); Запрос.УстановитьПараметр("ТаблицаКонтактнойИнформации", КонтактнаяИнформация); - Запрос.УстановитьПараметр("ГруппаВидовКИ", ГруппаВидовКИ); Запрос.УстановитьПараметр("Владелец", СсылкаНаОбъект); @@ -292,7 +288,6 @@ ОбъектКонтактнойИнформации.ИмяРеквизита); КонецПопытки; КонецЕсли; - КонецЦикла; // Добавим новые реквизиты @@ -300,15 +295,9 @@ Форма.ИзменитьРеквизиты(МассивДобавляемыхРеквизитов); КонецЕсли; - Форма.ПараметрыКонтактнойИнформации = Новый Структура; - Форма.ПараметрыКонтактнойИнформации.Вставить("ПоложениеЗаголовка", ЗначениеПоложенияЗаголовкаКИ(ПоложениеЗаголовкаКИ)); - Форма.ПараметрыКонтактнойИнформации.Вставить("ГруппаДляРазмещения", ИмяЭлементаДляРазмещения); - Форма.ПараметрыКонтактнойИнформации.Вставить("СписокДобавляемыхЭлементов", Новый СписокЗначений); - Форма.ПараметрыКонтактнойИнформации.Вставить("ДобавленныеЭлементы", Новый СписокЗначений); - Форма.ПараметрыКонтактнойИнформации.Вставить("ИсключаемыеВиды", ИсключаемыеВиды); - Форма.ПараметрыКонтактнойИнформации.Вставить("ОтложеннаяИнициализация", ОтложеннаяИнициализация); - Форма.ПараметрыКонтактнойИнформации.Вставить("ВыполненаОтложеннаяИнициализация", Ложь); - Форма.ПараметрыКонтактнойИнформации.Вставить("Владелец", СсылкаНаОбъект); + ПараметрыКонтактнойИнформации = ПараметрыКонтактнойИнформации(Форма, ИмяЭлементаДляРазмещения, ПоложениеЗаголовкаКИ, + ОтложеннаяИнициализация, ИсключаемыеВиды); + ПараметрыКонтактнойИнформации.Владелец = СсылкаНаОбъект; ПредыдущийВид = Неопределено; @@ -316,19 +305,8 @@ КоличествоАдресов = КонтактнаяИнформация.НайтиСтроки(Отбор).Количество(); // Создадим элементы на форме и заполним значения реквизитов. - Родитель = ?(ПустаяСтрока(ИмяЭлементаДляРазмещения), Форма, Форма.Элементы[ИмяЭлементаДляРазмещения]); - // Создаем группы для контактной информации. - ГруппаКомпоновки = Группа("ГруппаКомпоновкиКонтактнойИнформации", - Форма, Родитель, ГруппировкаПодчиненныхЭлементовФормы.Горизонтальная, 5); - ГруппаЗаголовков = Группа("ГруппаЗаголовковКонтактнойИнформации", - Форма, ГруппаКомпоновки, ГруппировкаПодчиненныхЭлементовФормы.Вертикальная, 4); - ГруппаПолейВвода = Группа("ГруппаПолейВводаКонтактнойИнформации", - Форма, ГруппаКомпоновки, ГруппировкаПодчиненныхЭлементовФормы.Вертикальная, 4); - ГруппаДействий = Группа("ГруппаДействийКонтактнойИнформации", - Форма, ГруппаКомпоновки, ГруппировкаПодчиненныхЭлементовФормы.Вертикальная, 4); - - ЗаголовокСлева = ЗаголовокСлева(Форма.ПараметрыКонтактнойИнформации.ПоложениеЗаголовка); + ЗаголовокСлева = ЗаголовокСлева(Форма.ПараметрыКонтактнойИнформации[ИмяЭлементаДляРазмещения].ПоложениеЗаголовка); СозданныеЭлементы = ОбщегоНазначенияКлиентСервер.СкопироватьМассив(ИсключаемыеВиды); СтатусКонтекстногоМеню = 0; ПредыдущийЭлемент = Неопределено; @@ -370,8 +348,10 @@ Элемент.АвтоОтметкаНезаполненного = Истина; КонецЕсли; - ДобавитьОписаниеЭлемента(Форма, СтрокаТабличнойЧастиКИ.ИмяРеквизита, 2); - ДобавитьРеквизитВОписание(Форма, СтрокаТабличнойЧастиКИ, Ложь, Истина); + Форма.ПараметрыКонтактнойИнформации[ИмяЭлементаДляРазмещения].ДобавленныеЭлементы.Добавить(СтрокаТабличнойЧастиКИ.ИмяРеквизита, + 2, Ложь); + + ДобавитьРеквизитВОписание(Форма, СтрокаТабличнойЧастиКИ, Ложь, Истина,, ИмяЭлементаДляРазмещения); ПредыдущийВидТЧ = ВидТЧ; КонецЕсли; @@ -382,13 +362,10 @@ СтрокиТаблицы = Форма.Объект[ИмяТабличнойЧасти].НайтиСтроки(Отбор); Если СтрокиТаблицы.Количество() = 1 Тогда - СтрокаТаблицы = СтрокиТаблицы[0]; СтрокаТаблицы[СтрокаТабличнойЧастиКИ.ИмяРеквизита] = СтрокаТабличнойЧастиКИ.Представление; СтрокаТаблицы[СтрокаТабличнойЧастиКИ.ИмяРеквизита + "ЗначенияПолей"] = СтрокаТабличнойЧастиКИ.ЗначенияПолей; - КонецЕсли; - КонецЦикла; Продолжить; @@ -402,27 +379,24 @@ Если ОтложеннаяИнициализация Тогда - ДобавитьРеквизитВОписание(Форма, СтрокаКИ, ЭтоНовыйВидКИ,, СтатическийЭлемент); + ДобавитьРеквизитВОписание(Форма, СтрокаКИ, ЭтоНовыйВидКИ,, СтатическийЭлемент, ИмяЭлементаДляРазмещения); Если СтатическийЭлемент Тогда СозданныеЭлементы.Удалить(ИндексЭлемента); КонецЕсли; Продолжить; - КонецЕсли; - ДобавитьРеквизитВОписание(Форма, СтрокаКИ, ЭтоНовыйВидКИ,, НЕ СтрокаКИ.ЭтоИсторическаяКонтактнаяИнформация); + ДобавитьРеквизитВОписание(Форма, СтрокаКИ, ЭтоНовыйВидКИ,, НЕ СтрокаКИ.ЭтоИсторическаяКонтактнаяИнформация, ИмяЭлементаДляРазмещения); Если СтатическийЭлемент Тогда - СозданныеЭлементы.Удалить(ИндексЭлемента); - Иначе СледующаяСтрока = ?(СозданныеЭлементы.Количество() = 0, Неопределено, ОпределитьСледующуюСтроку(Форма, КонтактнаяИнформация, СтрокаКИ)); - - Если НЕ СтрокаКИ.ЭтоИсторическаяКонтактнаяИнформация Тогда - ДобавитьСтрокуКонтактнойИнформации(Форма, СтрокаКИ, ЭтоНовыйВидКИ, КоличествоАдресов, СледующаяСтрока); + + Если НЕ СтрокаКИ.ЭтоИсторическаяКонтактнаяИнформация Тогда + ДобавитьСтрокуКонтактнойИнформации(Форма, СтрокаКИ, ИмяЭлементаДляРазмещения, ЭтоНовыйВидКИ, КоличествоАдресов, СледующаяСтрока); КонецЕсли; КонецЕсли; @@ -433,49 +407,52 @@ КонецЦикла; - Если Не ОтложеннаяИнициализация И Форма.ПараметрыКонтактнойИнформации.СписокДобавляемыхЭлементов.Количество() > 0 Тогда - - ГруппаКоманды = Группа("ГруппаКонтактнаяИнформацияДобавитьПолеВвода", - Форма, Родитель, ГруппировкаПодчиненныхЭлементовФормы.Горизонтальная, 5); + Если Не ОтложеннаяИнициализация + И Форма.ПараметрыКонтактнойИнформации[ИмяЭлементаДляРазмещения].СписокДобавляемыхЭлементов.Количество() > 0 Тогда + Описание = НСтр("ru = 'Добавить дополнительное поле контактной информации'"); + ГруппаКоманды = Группа("ГруппаКонтактнаяИнформацияДобавитьПолеВвода" + ИмяЭлементаДляРазмещения, Форма, Описание, ИмяЭлементаДляРазмещения); ГруппаКоманды.Отображение = ОтображениеОбычнойГруппы.ОбычноеВыделение; - ИмяКоманды = "КонтактнаяИнформацияДобавитьПолеВвода"; + ИмяКоманды = "КонтактнаяИнформацияДобавитьПолеВвода" + ИмяЭлементаДляРазмещения; Команда = Форма.Команды.Добавить(ИмяКоманды); - Команда.Подсказка = НСтр("ru = 'Добавить дополнительное поле контактной информации'"); + Команда.Подсказка = Описание; Команда.Отображение = ОтображениеКнопки.КартинкаИТекст; Команда.Картинка = БиблиотекаКартинок.ДобавитьЭлементСписка; Команда.Действие = "Подключаемый_КонтактнаяИнформацияВыполнитьКоманду"; - ДобавитьОписаниеЭлемента(Форма, ИмяКоманды, 9, Истина); + Форма.ПараметрыКонтактнойИнформации[ИмяЭлементаДляРазмещения].ДобавленныеЭлементы.Добавить(ИмяКоманды, 9, Истина); Кнопка = Форма.Элементы.Добавить(ИмяКоманды,Тип("КнопкаФормы"), ГруппаКоманды); + Кнопка.Доступность = НЕ Форма.Элементы[ИмяЭлементаДляРазмещения].ТолькоПросмотр; Кнопка.Заголовок = НСтр("ru = 'Добавить'"); Команда.ИзменяетСохраняемыеДанные = Истина; Кнопка.ИмяКоманды = ИмяКоманды; - ДобавитьОписаниеЭлемента(Форма, ИмяКоманды, 2); - - ИначеЕсли ОтложеннаяИнициализация - И Форма.Элементы.Найти("КонтактнаяИнформацияЗаглушка") = Неопределено - И Родитель.Вид = ВидГруппыФормы.Страница Тогда - + Форма.ПараметрыКонтактнойИнформации[ИмяЭлементаДляРазмещения].ДобавленныеЭлементы.Добавить(ИмяКоманды, 2, Ложь); + Иначе + ГруппаДляРазмещения = Форма.Элементы[ИмяЭлементаДляРазмещения]; // Если отложенная инициализация и на странице нет элементов, то платформа скрывает страницу, // поэтому надо создавать временный элемент, который при переходе на страницу удаляется. - ГруппаСтраниц = Родитель.Родитель; - ЗаголовокСтраницы = ?(ЗначениеЗаполнено(Родитель.Заголовок), Родитель.Заголовок, Родитель.Имя); - ЗаголовокГруппыСтраниц = ?(ЗначениеЗаполнено(ГруппаСтраниц.Заголовок), ГруппаСтраниц.Заголовок, ГруппаСтраниц.Имя); - - ПредупреждениеОРазмещении = НСтр("ru = 'Для отображения контактной информации необходимо разместить группу ""%1"" не первым элементом (после любой другой группы) в группе ""%2"" (меню Еще - Изменить форму).'"); - ПредупреждениеОРазмещении = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ПредупреждениеОРазмещении, - ЗаголовокСтраницы, ЗаголовокГруппыСтраниц); - ТекстПодсказки = НСтр("ru = 'Также можно установить стандартные настройки формы: - | • в меню Еще выбрать пункт Изменить форму...; - | • в открывшейся форме ""Настройка формы"" в меню Еще выбрать пункт ""Установить стандартные настройки"".'"); - - Декорация = Форма.Элементы.Добавить("КонтактнаяИнформацияЗаглушка", Тип("ДекорацияФормы"), Родитель); - Декорация.Заголовок = ПредупреждениеОРазмещении; - Декорация.ОтображениеПодсказки = ОтображениеПодсказки.Кнопка; - Декорация.Подсказка = ТекстПодсказки; - Декорация.ЦветТекста = ЦветаСтиля.ПоясняющийОшибкуТекст; + Если ОтложеннаяИнициализация + И ГруппаДляРазмещения.Вид = ВидГруппыФормы.Страница + И Форма.Элементы.Найти("КонтактнаяИнформацияЗаглушка") = Неопределено Тогда + ГруппаСтраниц = ГруппаДляРазмещения.Родитель; + ЗаголовокСтраницы = ?(ЗначениеЗаполнено(ГруппаДляРазмещения.Заголовок), ГруппаДляРазмещения.Заголовок, ГруппаДляРазмещения.Имя); + ЗаголовокГруппыСтраниц = ?(ЗначениеЗаполнено(ГруппаСтраниц.Заголовок), ГруппаСтраниц.Заголовок, ГруппаСтраниц.Имя); + + ПредупреждениеОРазмещении = НСтр("ru = 'Для отображения контактной информации необходимо разместить группу ""%1"" не первым элементом (после любой другой группы) в группе ""%2"" (меню Еще - Изменить форму).'"); + ПредупреждениеОРазмещении = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ПредупреждениеОРазмещении, + ЗаголовокСтраницы, ЗаголовокГруппыСтраниц); + ТекстПодсказки = НСтр("ru = 'Также можно установить стандартные настройки формы: + | • в меню Еще выбрать пункт Изменить форму...; + | • в открывшейся форме ""Настройка формы"" в меню Еще выбрать пункт ""Установить стандартные настройки"".'"); + + Декорация = Форма.Элементы.Добавить("КонтактнаяИнформацияЗаглушка", Тип("ДекорацияФормы"), ГруппаДляРазмещения); + Декорация.Заголовок = ПредупреждениеОРазмещении; + Декорация.ОтображениеПодсказки = ОтображениеПодсказки.Кнопка; + Декорация.Подсказка = ТекстПодсказки; + Декорация.ЦветТекста = ЦветаСтиля.ПоясняющийОшибкуТекст; + Декорация.АвтоМаксимальнаяВысота = Ложь; + КонецЕсли; КонецЕсли; КонецПроцедуры @@ -486,8 +463,9 @@ // Параметры: // Форма - УправляемаяФорма - Форма объекта-владельца, предназначенная для вывода контактной информации. // Объект - Произвольный - Объект-владелец контактной информации. +// ИмяЭлементаДляРазмещения - Строка - группа, куда будут размещены элементы контактной информации. // -Процедура ПриЧтенииНаСервере(Форма, Объект) Экспорт +Процедура ПриЧтенииНаСервере(Форма, Объект, ИмяЭлементаДляРазмещения = "ГруппаКонтактнаяИнформация") Экспорт СписокРеквизитовФормы = Форма.ПолучитьРеквизиты(); @@ -503,17 +481,16 @@ Возврат; КонецЕсли; + Параметры = ПараметрыКонтактнойИнформацииФормы(Форма.ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения); + СсылкаНаОбъект = Объект.Ссылка; МетаданныеОбъекта = СсылкаНаОбъект.Метаданные(); ПолноеИмяОбъектаМетаданных = МетаданныеОбъекта.ПолноеИмя(); ИмяГруппыВидовКИ = СтрЗаменить(ПолноеИмяОбъектаМетаданных, ".", ""); ГруппаВидовКИ = Справочники.ВидыКонтактнойИнформации[ИмяГруппыВидовКИ]; - - Параметры = Форма.ПараметрыКонтактнойИнформации; - ИмяЭлементаДляРазмещения = Параметры.ГруппаДляРазмещения; - ПоложениеЗаголовкаКИ = Параметры.ПоложениеЗаголовка; - ПоложениеЗаголовкаКИ = ?(ЗначениеЗаполнено(ПоложениеЗаголовкаКИ), ПоложениеЗаголовкаЭлементаФормы[ПоложениеЗаголовкаКИ], ПоложениеЗаголовкаЭлементаФормы.Верх); + + ПоложениеЗаголовкаКИ = ?(ЗначениеЗаполнено(Параметры.ПоложениеЗаголовка), ПредопределенноеЗначение(Параметры.ПоложениеЗаголовка), ПоложениеЗаголовкаЭлементаФормы.Лево); ВыполненаОтложеннаяИнициализация = Параметры.ВыполненаОтложеннаяИнициализация; ОтложеннаяИнициализация = Параметры.ОтложеннаяИнициализация И Не ВыполненаОтложеннаяИнициализация; @@ -521,7 +498,7 @@ Если ИспользуетсяКонтактнаяИнформация = Ложь Тогда МассивУдаляемыхРеквизитов = Параметры.ДобавленныеРеквизиты; Иначе - УдалитьКомандыИЭлементыФормы(Форма); + УдалитьКомандыИЭлементыФормы(Форма, ИмяЭлементаДляРазмещения); МассивУдаляемыхРеквизитов = Новый Массив; ИмяОбъекта = Объект.Ссылка.Метаданные().Имя; @@ -529,13 +506,15 @@ СтатическиеРеквизиты = ОбщегоНазначенияКлиентСервер.СкопироватьМассив(Параметры.ИсключаемыеВиды); ИменаТабличныхЧастейПоВидамКИ = Неопределено; - Для Каждого РеквизитФормы Из Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов Цикл + Отбор = Новый Структура("ИмяЭлементаДляРазмещения", ИмяЭлементаДляРазмещения); + КонтактнаяИнформацияОписаниеДополнительныхРеквизитов = Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Отбор); + Для Каждого РеквизитФормы Из КонтактнаяИнформацияОписаниеДополнительныхРеквизитов Цикл Если РеквизитФормы.ЭтоРеквизитТабличнойЧасти Тогда Если ИменаТабличныхЧастейПоВидамКИ = Неопределено Тогда Отбор = Новый Структура("ЭтоРеквизитТабличнойЧасти", Истина); - ВидыКИТабличнойЧасти = Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Выгрузить(Отбор , "Вид"); + ВидыКИТабличнойЧасти = Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Выгрузить(Отбор, "Вид"); ИменаТабличныхЧастейПоВидамКИ = ИменаТабличныхЧастейПоВидамКИ(ВидыКИТабличнойЧасти, ИмяОбъекта); КонецЕсли; @@ -548,8 +527,8 @@ Индекс = СтатическиеРеквизиты.Найти(РеквизитФормы.Вид); - Если Индекс = Неопределено Тогда // Реквизит создается динамически - Если Не ОтложеннаяИнициализация Тогда + Если Индекс = Неопределено Тогда // Реквизит создается динамически. + Если Не ОтложеннаяИнициализация И ЗначениеЗаполнено(РеквизитФормы.ИмяРеквизита) Тогда МассивУдаляемыхРеквизитов.Добавить(РеквизитФормы.ИмяРеквизита); КонецЕсли; Иначе @@ -558,11 +537,14 @@ КонецЕсли; КонецЦикла; - Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Очистить(); + Для Каждого РеквизитФормы Из КонтактнаяИнформацияОписаниеДополнительныхРеквизитов Цикл + Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Удалить(РеквизитФормы); + КонецЦикла; КонецЕсли; Форма.ИзменитьРеквизиты(, МассивУдаляемыхРеквизитов); ПриСозданииНаСервере(Форма, Объект, ИмяЭлементаДляРазмещения, ПоложениеЗаголовкаКИ, Параметры.ИсключаемыеВиды, ОтложеннаяИнициализация); + Параметры = ПараметрыКонтактнойИнформацииФормы(Форма.ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения); Параметры.ВыполненаОтложеннаяИнициализация = ВыполненаОтложеннаяИнициализация; КонецПроцедуры @@ -578,7 +560,7 @@ ИмяОбъекта = Объект.Ссылка.Метаданные().Имя; - // Только для контактной информации в составе табличной части + // Только для контактной информации в составе табличной части. Отбор = Новый Структура("ЭтоРеквизитТабличнойЧасти", Истина); СтрокиТабличнойЧасти = Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Выгрузить(Отбор); ИменаТабличныхЧастейПоВидамКИ = ИменаТабличныхЧастейПоВидамКИ(СтрокиТабличнойЧасти, ИмяОбъекта); @@ -638,7 +620,7 @@ ИменаТабличныхЧастейПоВидамКИ = ИменаТабличныхЧастейПоВидамКИ(ВидыКИТабличнойЧасти, ИмяОбъекта); КонецЕсли; - ИмяТабличнойЧасти = ИменаТабличныхЧастейПоВидамКИ[ВидИнформации]; + ИмяТабличнойЧасти = ИменаТабличныхЧастейПоВидамКИ[ВидИнформации]; // ИмяТабличнойЧастиПоВидуКИ(ВидИнформации, ИмяОбъекта); ТабличнаяЧастьФормы = Форма.Объект[ИмяТабличнойЧасти]; Для Каждого СтрокаТабличнойЧастиФормы Из ТабличнаяЧастьФормы Цикл @@ -717,6 +699,7 @@ Объект.КонтактнаяИнформация.Очистить(); ИмяОбъекта = Объект.Ссылка.Метаданные().Имя; + ГруппаВидовКИ = ГруппаВидовКонтактнойИнформацииОбъекта(Объект.Ссылка); ПредыдущийВид = Неопределено; ИменаТабличныхЧастейПоВидамКИ = Неопределено; @@ -729,13 +712,13 @@ ОбязательноеЗаполнение = ВидИнформации.ОбязательноеЗаполнение; Если НЕ Форма.Элементы.Найти(СтрокаТаблицы.ИмяРеквизита) = Неопределено Тогда - Элемент = Форма.Элементы[СтрокаТаблицы.ИмяРеквизита]; - Если Элемент.Вид = ВидПоляФормы.ПолеНадписи И Элемент.Гиперссылка Тогда - Если ПустаяСтрока(СтрокаТаблицы.Представление) - ИЛИ СтрокаТаблицы.Представление = УправлениеКонтактнойИнформациейКлиентСервер.ТекстПустогоАдресаВВидеГиперссылки() Тогда - Продолжить; - КонецЕсли; + Элемент = Форма.Элементы[СтрокаТаблицы.ИмяРеквизита]; + Если Элемент.Вид = ВидПоляФормы.ПолеНадписи И Элемент.Гиперссылка Тогда + Если ПустаяСтрока(СтрокаТаблицы.Представление) + ИЛИ СтрокаТаблицы.Представление = УправлениеКонтактнойИнформациейКлиентСервер.ТекстПустогоАдресаВВидеГиперссылки() Тогда + Продолжить; КонецЕсли; + КонецЕсли; КонецЕсли; Если СтрокаТаблицы.ЭтоРеквизитТабличнойЧасти Тогда @@ -761,8 +744,12 @@ ЗаписатьКонтактнуюИнформацию(Объект, ЗначенияПолей, ВидИнформации, ТипИнформации, ИдентификаторСтроки); КонецЦикла; - + Иначе + Если ВидИнформации.Родитель <> ГруппаВидовКИ Тогда + Продолжить; + КонецЕсли; + ДействуетС = ?(СтрокаТаблицы.Свойство("ДействуетС"), СтрокаТаблицы.ДействуетС, Неопределено); ЗаписатьКонтактнуюИнформацию(Объект, СтрокаТаблицы.ЗначенияПолей, ВидИнформации, ТипИнформации,, ДействуетС); КонецЕсли; @@ -791,42 +778,26 @@ КонецЕсли; Если Результат.Свойство("ЭтоДобавлениеКомментария") Тогда - ИзменитьКомментарий(Форма, Результат.ИмяРеквизита, Результат.ЭтоДобавлениеКомментария); - + ИзменитьКомментарий(Форма, Результат.ИмяРеквизита, Результат.ИмяЭлементаДляРазмещения); ИначеЕсли Результат.Свойство("ДобавляемыйВид") Тогда - ДобавитьСтрокуКонтактнойИнформации(Форма, Результат); + ДобавитьСтрокуКонтактнойИнформации(Форма, Результат, Результат.ИмяЭлементаДляРазмещения); ИначеЕсли Результат.Свойство("ПоменятьМестамиЭлементы") Тогда ЗначениеПервогоЭлемента = Форма[Результат.ПервыйЭлемент]; Форма[Результат.ПервыйЭлемент] = Форма[Результат.ВторойЭлемент]; Форма[Результат.ВторойЭлемент] = ЗначениеПервогоЭлемента ; - // перемещение комментариев если они есть + // Перемещение комментариев, если они есть. Отбор = Новый Структура("ИмяРеквизита", Результат.ПервыйЭлемент); ОписаниеКонтактнойИнформации = Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов; НайденнаяСтрокаПервыйЭлемент = ОписаниеКонтактнойИнформации.НайтиСтроки(Отбор)[0]; Отбор = Новый Структура("ИмяРеквизита", Результат.ВторойЭлемент); НайденнаяСтрокаВторойЭлемент = ОписаниеКонтактнойИнформации.НайтиСтроки(Отбор)[0]; - Если ЗначениеЗаполнено(НайденнаяСтрокаПервыйЭлемент.Комментарий) - И ЗначениеЗаполнено(НайденнаяСтрокаВторойЭлемент.Комментарий) Тогда - КомментарийПервыйЭлемент = НайденнаяСтрокаПервыйЭлемент.Комментарий; - НайденнаяСтрокаПервыйЭлемент.Комментарий = НайденнаяСтрокаВторойЭлемент.Комментарий; - НайденнаяСтрокаВторойЭлемент.Комментарий = КомментарийПервыйЭлемент; - Если Форма.Элементы.Найти("Комментарий" + Результат.ПервыйЭлемент) <> Неопределено Тогда - Форма.Элементы["Комментарий" + Результат.ПервыйЭлемент].Заголовок = НайденнаяСтрокаПервыйЭлемент.Комментарий; - КонецЕсли; - Если Форма.Элементы.Найти("Комментарий" + Результат.ВторойЭлемент) <> Неопределено Тогда - Форма.Элементы["Комментарий" + Результат.ВторойЭлемент].Заголовок = НайденнаяСтрокаВторойЭлемент.Комментарий; - КонецЕсли; - - ИначеЕсли ЗначениеЗаполнено(НайденнаяСтрокаПервыйЭлемент.Комментарий) - ИЛИ ЗначениеЗаполнено(НайденнаяСтрокаВторойЭлемент.Комментарий) Тогда - КомментарийПервыйЭлемент = НайденнаяСтрокаПервыйЭлемент.Комментарий; - НайденнаяСтрокаПервыйЭлемент.Комментарий = НайденнаяСтрокаВторойЭлемент.Комментарий; - НайденнаяСтрокаВторойЭлемент.Комментарий = КомментарийПервыйЭлемент; - - ИзменитьКомментарий(Форма, Результат.ПервыйЭлемент, ЗначениеЗаполнено(НайденнаяСтрокаПервыйЭлемент.Комментарий)); - ИзменитьКомментарий(Форма, Результат.ВторойЭлемент, ЗначениеЗаполнено(НайденнаяСтрокаВторойЭлемент.Комментарий)); - КонецЕсли; + + КомментарийПервыйЭлемент = НайденнаяСтрокаПервыйЭлемент.Комментарий; + НайденнаяСтрокаПервыйЭлемент.Комментарий = НайденнаяСтрокаВторойЭлемент.Комментарий; + НайденнаяСтрокаВторойЭлемент.Комментарий = КомментарийПервыйЭлемент; + Форма.Элементы[Результат.ПервыйЭлемент].Подсказка = НайденнаяСтрокаПервыйЭлемент.Комментарий; + Форма.Элементы[Результат.ВторойЭлемент].Подсказка = НайденнаяСтрокаВторойЭлемент.Комментарий; КонецЕсли; Возврат Неопределено; @@ -834,6 +805,12 @@ // Обработчик подписки события "ОбработкаЗаполнения". // +// Параметры: +// Источник - СправочникОбъект, ДокументОбъект - объект, содержащий контактную информацию. +// ДанныеЗаполнения - Структура - данные для заполнения контактной информации. +// ТекстЗаполнения - Строка - не используется. +// СтандартнаяОбработка - Булево - флаг необходимости выполнения стандартной обработки. +// Процедура ОбработкаЗаполненияКонтактнойИнформации(Источник, ДанныеЗаполнения, ТекстЗаполнения, СтандартнаяОбработка) Экспорт ОбработкаЗаполненияКонтактнойИнформацииОбъекта(Источник, ДанныеЗаполнения); @@ -842,6 +819,10 @@ // Обработчик подписки события "ПередЗаписью" для обновления контактной информации для списков. // +// Параметры: +// Объект - СправочникОбъект, ДокументОбъект - объект, содержащий контактную информацию. +// Отказ - Булево - флаг отказа от выполнения обработчика. +// Процедура ОбработкаОбновленияКонтактнойИнформации(Объект, Отказ) Экспорт Если Объект.ОбменДанными.Загрузка Тогда @@ -854,34 +835,41 @@ // Обработчик подписки события "ОбработкаЗаполнения" для документов. // +// Параметры: +// Источник - ДокументОбъект - объект, содержащий контактную информацию. +// ДанныеЗаполнения - Структура - данные для заполнения контактной информации. +// СтандартнаяОбработка - Булево - флаг необходимости выполнения стандартной обработки. +// Процедура ОбработкаЗаполненияКонтактнойИнформацииДокумента(Источник, ДанныеЗаполнения, СтандартнаяОбработка) Экспорт ОбработкаЗаполненияКонтактнойИнформацииОбъекта(Источник, ДанныеЗаполнения); КонецПроцедуры -// Выполняет отложенную инициализацию реквизитов и элементов контактной информации +// Выполняет отложенную инициализацию реквизитов и элементов контактной информации. // // Параметры: // Форма - УправляемаяФорма - Форма объекта-владельца, предназначенная для вывода контактной. // Информации. // Объект - Произвольный - Объект-владелец контактной информации. // -Процедура ВыполнитьОтложеннуюИнициализацию(Форма, Объект) Экспорт +Процедура ВыполнитьОтложеннуюИнициализацию(Форма, Объект, ИмяЭлементаДляРазмещения = "ГруппаКонтактнаяИнформация") Экспорт КонтактнаяИнформацияЗаглушка = Форма.Элементы.Найти("КонтактнаяИнформацияЗаглушка"); // временный элемент Если КонтактнаяИнформацияЗаглушка <> Неопределено Тогда Форма.Элементы.Удалить(КонтактнаяИнформацияЗаглушка); КонецЕсли; + ПараметрыКонтактнойИнформации = ПараметрыКонтактнойИнформацииФормы(Форма.ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения); + КонтактнаяИнформацияОписаниеДополнительныхРеквизитов = Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Выгрузить(, "Вид, Представление, ЗначенияПолей, Комментарий"); Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Очистить(); - ИмяЭлементаДляРазмещения = Форма.ПараметрыКонтактнойИнформации.ГруппаДляРазмещения; - ПоложениеЗаголовкаКИ = Форма.ПараметрыКонтактнойИнформации.ПоложениеЗаголовка; - ПоложениеЗаголовкаКИ = ?(ЗначениеЗаполнено(ПоложениеЗаголовкаКИ), ПоложениеЗаголовкаЭлементаФормы[ПоложениеЗаголовкаКИ], ПоложениеЗаголовкаЭлементаФормы.Верх); - ПриСозданииНаСервере(Форма, Объект, ИмяЭлементаДляРазмещения, ПоложениеЗаголовкаКИ, Форма.ПараметрыКонтактнойИнформации.ИсключаемыеВиды); - Для Каждого ВидКонтактнойИнформации Из Форма.ПараметрыКонтактнойИнформации.ИсключаемыеВиды Цикл + ПоложениеЗаголовкаКИ = ?(ЗначениеЗаполнено(ПараметрыКонтактнойИнформации.ПоложениеЗаголовка), ПредопределенноеЗначение(ПараметрыКонтактнойИнформации.ПоложениеЗаголовка), ПоложениеЗаголовкаЭлементаФормы.Лево); + ПриСозданииНаСервере(Форма, Объект, ИмяЭлементаДляРазмещения, ПоложениеЗаголовкаКИ, ПараметрыКонтактнойИнформации.ИсключаемыеВиды); + ПараметрыКонтактнойИнформации = ПараметрыКонтактнойИнформацииФормы(Форма.ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения); + + Для Каждого ВидКонтактнойИнформации Из ПараметрыКонтактнойИнформации.ИсключаемыеВиды Цикл Отбор = Новый Структура("Вид", ВидКонтактнойИнформации); МассивСтрок = Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Отбор); @@ -892,15 +880,13 @@ ЗаполнитьЗначенияСвойств(ТекущееЗначение, СохраненноеЗначение); Форма[ТекущееЗначение.ИмяРеквизита] = СохраненноеЗначение.Представление; КонецЕсли; - КонецЦикла; - Если Форма.Элементы.Найти("ПустаяДекорацияКонтактнаяИнформация") <> Неопределено - И Форма.Элементы.ГруппаПолейВводаКонтактнойИнформации.ПодчиненныеЭлементы.Количество() > 0 Тогда + Если Форма.Элементы.Найти("ПустаяДекорацияКонтактнаяИнформация") <> Неопределено Тогда Форма.Элементы.ПустаяДекорацияКонтактнаяИнформация.Видимость = Ложь; КонецЕсли; - Форма.ПараметрыКонтактнойИнформации.ВыполненаОтложеннаяИнициализация = Истина; + ПараметрыКонтактнойИнформации.ВыполненаОтложеннаяИнициализация = Истина; КонецПроцедуры @@ -929,7 +915,7 @@ // ЗначенияПолей - Строка, Структура, Соответствие, СписокЗначений - описание полей контактной информации. // Представление - Строка - представления. Используется, если невозможно определить представление из параметра. // ЗначенияПолей (отсутствие поля "Представление"). -// ОжидаемыйВид - СправочникСсылка.ВидыКонтактнойИнформации, ПеречислениеСсылка.ТипыКонтактнойИнформации - +// ОжидаемыйВид - СправочникСсылка.ВидыКонтактнойИнформации, ПеречислениеСсылка.ТипыКонтактнойИнформации - // Используется для определения типа, если его невозможно вычислить по полю ЗначенияПолей. // // Возвращаемое значение: @@ -1213,11 +1199,11 @@ // - Строка - контактная информация в формате XML. // - Структура - описание контактной информацию. Ожидаются поля: // * ЗначенияПолей - Строка, Структура, СписокЗначений, Соответствие - поля контактной информации. -// * Представление - Строка - Представление. Используется в случае, если не удалось вычислить +// * Представление - Строка - Представление. Используется в случае, если не удалось вычислить // представление из ЗначенияПолей (отсутствие в них поля Представление). -// * Комментарий - Строка - комментарий. Используется в случае, если не удалось вычислить комментарий +// * Комментарий - Строка - комментарий. Используется в случае, если не удалось вычислить комментарий // из ЗначенияПолей. -// * ВидКонтактнойИнформации - СправочникСсылка.ВидыКонтактнойИнформации, ПеречислениеСсылка.ТипыКонтактнойИнформации, Структура +// * ВидКонтактнойИнформации - СправочникСсылка.ВидыКонтактнойИнформации, ПеречислениеСсылка.ТипыКонтактнойИнформации, Структура - // Используется в случае, если не удалось вычислить тип из ЗначенияПолей. // Данные2 - ОбъектXTDO, Строка, Структура - аналогично Данные1. // @@ -1262,9 +1248,9 @@ // // Параметры: // МенеджерВременныхТаблиц - МенеджерВременныхТаблиц - для формирования. -// МассивОбъектов - Массив - владельцы контактной информации, все элементы должны быть одного типа. -// ТипыКИ - Массив - необязательный, используется если не задан все типы. -// ВидыКИ - Массив - необязательный, используется если не задан все виды. +// МассивОбъектов - Массив - владельцы контактной информации. +// ТипыКИ - Массив - необязательный, используется, если не задан все типы. +// ВидыКИ - Массив - необязательный, используется, если не задан все виды. // Дата - Дата - необязательный, дата с которой действует запись контактной информации, // используется при хранении истории изменения контактной информации. // Если владелец хранит историю изменений, то при несоответствии параметра @@ -1279,117 +1265,146 @@ // Процедура СоздатьВТКонтактнаяИнформация(МенеджерВременныхТаблиц, МассивОбъектов, ТипыКИ = Неопределено, ВидыКИ = Неопределено, Дата = Неопределено) Экспорт - Если ТипЗнч(МассивОбъектов) = Тип("Массив") И МассивОбъектов.Количество() > 0 Тогда - Ссылка = МассивОбъектов.Получить(0); - Иначе + Если ТипЗнч(МассивОбъектов) <> Тип("Массив") ИЛИ МассивОбъектов.Количество() = 0 Тогда ВызватьИсключение НСтр("ru = 'Неверное значение для массива владельцев контактной информации.'"); КонецЕсли; - МетаданныеОбъекта = Ссылка.Метаданные(); - Если МетаданныеОбъекта.ТабличныеЧасти.Найти("КонтактнаяИнформация") = Неопределено Тогда - ВызватьИсключение МетаданныеОбъекта.Имя + " " + НСтр("ru = 'не содержит контактную информацию.'"); - КонецЕсли; - - Если МетаданныеОбъекта.ТабличныеЧасти.КонтактнаяИнформация.Реквизиты.Найти("ДействуетС") <> Неопределено Тогда - Если ТипЗнч(Дата) <> Тип("Дата") Тогда - Дата = ТекущаяДатаСеанса(); - КонецЕсли; - - УсловияОтбора = ?(ВидыКИ = Неопределено, "", " КонтактнаяИнформация.Вид В (&ВидыКИ)"); - Если ПустаяСтрока(УсловияОтбора) Тогда - УсловиеИ = ""; + ОбъектыСГруппировкойПоТипам = Новый Соответствие; + Для каждого Ссылка Из МассивОбъектов Цикл + ТипОбъекта = ТипЗнч(Ссылка); + НайденныйОбъект = ОбъектыСГруппировкойПоТипам.Получить(ТипОбъекта); + Если НайденныйОбъект = Неопределено Тогда + НаборСсылок = Новый Массив; + НаборСсылок.Добавить(Ссылка); + ОбъектыСГруппировкойПоТипам.Вставить(ТипОбъекта, НаборСсылок); Иначе - УсловиеИ = " И "; + НайденныйОбъект.Добавить(Ссылка); КонецЕсли; - УсловияОтбора = УсловияОтбора + ?(ТипыКИ = Неопределено, "", УсловиеИ + " КонтактнаяИнформация.Тип В (&ТипыКИ)"); - Если НЕ ПустаяСтрока(УсловияОтбора) Тогда - УсловияОтбора = " ГДЕ " + УсловияОтбора; + КонецЦикла; + + Запрос = Новый Запрос(); + ТекстЗапросаПодготовкаДанных = ""; + ЕстьКонтактнаяИнформацияСДатой = Ложь; + СтрокаРАЗРЕШЕННЫЕ = " РАЗРЕШЕННЫЕ "; + СтрокаВременнойТаблицы = "ПОМЕСТИТЬ ВТКонтактнаяИнформация"; + + Для каждого ОбъектСКонтактнойИнформацией Из ОбъектыСГруппировкойПоТипам Цикл + МетаданныеОбъекта = Метаданные.НайтиПоТипу(ОбъектСКонтактнойИнформацией.Ключ); + Если МетаданныеОбъекта = Неопределено Тогда + Возврат; КонецЕсли; - - Запрос = Новый Запрос("ВЫБРАТЬ РАЗРЕШЕННЫЕ + Если МетаданныеОбъекта.ТабличныеЧасти.Найти("КонтактнаяИнформация") = Неопределено Тогда + ВызватьИсключение МетаданныеОбъекта.Имя + " " + НСтр("ru = 'не содержит контактную информацию.'"); + КонецЕсли; + ИмяТаблицы = МетаданныеОбъекта.Имя; + Если МетаданныеОбъекта.ТабличныеЧасти.КонтактнаяИнформация.Реквизиты.Найти("ДействуетС") <> Неопределено Тогда + ТекстЗапросаПодготовкаДанных = ТекстЗапросаПодготовкаДанных + "ВЫБРАТЬ РАЗРЕШЕННЫЕ | КонтактнаяИнформация.Ссылка КАК Объект, | КонтактнаяИнформация.Вид КАК Вид, | МАКСИМУМ(КонтактнаяИнформация.ДействуетС) КАК ДействуетС - |ПОМЕСТИТЬ СрезКонтактнойИнформации + |ПОМЕСТИТЬ СрезКонтактнойИнформации" + ИмяТаблицы + " |ИЗ | " + МетаданныеОбъекта.ПолноеИмя() + ".КонтактнаяИнформация КАК КонтактнаяИнформация |ГДЕ - | КонтактнаяИнформация.Ссылка В (&МассивОбъектов) + | КонтактнаяИнформация.Ссылка В (&МассивОбъектов" + ИмяТаблицы + ") | И КонтактнаяИнформация.ДействуетС <= &ДействуетС | И КонтактнаяИнформация.Вид <> ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ПустаяСсылка) + | И КонтактнаяИнформация.Тип <> ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.ПустаяСсылка) | |СГРУППИРОВАТЬ ПО | КонтактнаяИнформация.Вид, КонтактнаяИнформация.Ссылка - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ РАЗРЕШЕННЫЕ - | КонтактнаяИнформация.Ссылка КАК Объект, - | КонтактнаяИнформация.Вид КАК Вид, - | КонтактнаяИнформация.Тип КАК Тип, - | КонтактнаяИнформация.ДействуетС КАК ДействуетС, - | КонтактнаяИнформация.Представление КАК Представление, - | КонтактнаяИнформация.ЗначенияПолей - |ПОМЕСТИТЬ ВТКонтактнаяИнформация - |ИЗ - | СрезКонтактнойИнформации КАК СрезКонтактнойИнформации - | ЛЕВОЕ СОЕДИНЕНИЕ " + МетаданныеОбъекта.ПолноеИмя() + ".КонтактнаяИнформация КАК КонтактнаяИнформация - | ПО СрезКонтактнойИнформации.Вид = КонтактнаяИнформация.Вид - | И СрезКонтактнойИнформации.ДействуетС = КонтактнаяИнформация.ДействуетС - | И СрезКонтактнойИнформации.Объект = КонтактнаяИнформация.Ссылка " + УсловияОтбора); - - Запрос.УстановитьПараметр("ДействуетС", Дата); - Иначе - Дата = ""; - Запрос = Новый Запрос(" - |ВЫБРАТЬ РАЗРЕШЕННЫЕ + |;" + КонецЕсли; + КонецЦикла; + + ТекстЗапроса = ""; + Для каждого ОбъектСКонтактнойИнформацией Из ОбъектыСГруппировкойПоТипам Цикл + ТекстЗапроса = ТекстЗапроса + ?(НЕ ПустаяСтрока(ТекстЗапроса), Символы.ПС + " ОБЪЕДИНИТЬ ВСЕ " + Символы.ПС, ""); + МетаданныеОбъекта = Метаданные.НайтиПоТипу(ОбъектСКонтактнойИнформацией.Ключ); + ИмяТаблицы = МетаданныеОбъекта.Имя; + + Если МетаданныеОбъекта.ТабличныеЧасти.КонтактнаяИнформация.Реквизиты.Найти("ДействуетС") <> Неопределено Тогда + Если ТипЗнч(Дата) <> Тип("Дата") Тогда + Дата = ТекущаяДатаСеанса(); + КонецЕсли; + + УсловияОтбора = ?(ВидыКИ = Неопределено, "", " КонтактнаяИнформация.Вид В (&ВидыКИ)"); + Если ПустаяСтрока(УсловияОтбора) Тогда + УсловиеИ = ""; + Иначе + УсловиеИ = " И "; + КонецЕсли; + УсловияОтбора = УсловияОтбора + ?(ТипыКИ = Неопределено, "", УсловиеИ + " КонтактнаяИнформация.Тип В (&ТипыКИ)"); + Если НЕ ПустаяСтрока(УсловияОтбора) Тогда + УсловияОтбора = " ГДЕ " + УсловияОтбора; + КонецЕсли; + + ТекстЗапроса = ТекстЗапроса + "ВЫБРАТЬ " + СтрокаРАЗРЕШЕННЫЕ + " | КонтактнаяИнформация.Ссылка КАК Объект, | КонтактнаяИнформация.Вид КАК Вид, | КонтактнаяИнформация.Тип КАК Тип, - | КонтактнаяИнформация.ЗначенияПолей КАК ЗначенияПолей, " + Дата + " - | КонтактнаяИнформация.Представление КАК Представление - |ПОМЕСТИТЬ ВТКонтактнаяИнформация + | КонтактнаяИнформация.ДействуетС КАК ДействуетС, + | КонтактнаяИнформация.Представление КАК Представление, + | КонтактнаяИнформация.ЗначенияПолей + | " + СтрокаВременнойТаблицы + " + |ИЗ + | СрезКонтактнойИнформации" + ИмяТаблицы + " КАК СрезКонтактнойИнформации + | ЛЕВОЕ СОЕДИНЕНИЕ " + МетаданныеОбъекта.ПолноеИмя() + ".КонтактнаяИнформация КАК КонтактнаяИнформация + | ПО СрезКонтактнойИнформации.Вид = КонтактнаяИнформация.Вид + | И СрезКонтактнойИнформации.ДействуетС = КонтактнаяИнформация.ДействуетС + | И СрезКонтактнойИнформации.Объект = КонтактнаяИнформация.Ссылка " + УсловияОтбора; + Иначе + ТекстЗапроса = ТекстЗапроса + "ВЫБРАТЬ " + СтрокаРАЗРЕШЕННЫЕ + " + | КонтактнаяИнформация.Ссылка КАК Объект, + | КонтактнаяИнформация.Вид КАК Вид, + | КонтактнаяИнформация.Тип КАК Тип, + | ДАТАВРЕМЯ(1,1,1) КАК ДействуетС, + | КонтактнаяИнформация.Представление КАК Представление, + | КонтактнаяИнформация.ЗначенияПолей КАК ЗначенияПолей + | " + СтрокаВременнойТаблицы + " |ИЗ | " + МетаданныеОбъекта.ПолноеИмя() + ".КонтактнаяИнформация КАК КонтактнаяИнформация |ГДЕ - | КонтактнаяИнформация.Ссылка В (&МассивОбъектов) - | И КонтактнаяИнформация.Вид <> ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ПустаяСсылка) + | КонтактнаяИнформация.Вид <> ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ПустаяСсылка) + | И КонтактнаяИнформация.Тип <> ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.ПустаяСсылка) + | И КонтактнаяИнформация.Ссылка В (&МассивОбъектов" + ИмяТаблицы + ") | " + ?(ТипыКИ = Неопределено, "", "И КонтактнаяИнформация.Тип В (&ТипыКИ)") + " | " + ?(ВидыКИ = Неопределено, "", "И КонтактнаяИнформация.Вид В (&ВидыКИ)") + " - |"); - - КонецЕсли; + |"; + КонецЕсли; + СтрокаРАЗРЕШЕННЫЕ =""; + СтрокаВременнойТаблицы = ""; + + Запрос.УстановитьПараметр("МассивОбъектов" + ИмяТаблицы, ОбъектСКонтактнойИнформацией.Значение); + КонецЦикла; + Запрос.Текст = ТекстЗапросаПодготовкаДанных + ТекстЗапроса; Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц; - Запрос.УстановитьПараметр("МассивОбъектов", МассивОбъектов); + Запрос.УстановитьПараметр("ДействуетС", Дата); Запрос.УстановитьПараметр("ТипыКИ", ТипыКИ); Запрос.УстановитьПараметр("ВидыКИ", ВидыКИ); - Запрос.Выполнить(); КонецПроцедуры // Предназначена для получения контактной информации для нескольких объектов. // // Параметры: -// МассивОбъектов - Массив - владельцы контактной информации, все элементы должны быть одного типа. -// ТипыКИ - Массив - необязательный, используется если не задан все типы. -// ВидыКИ - Массив - необязательный, используется если не задан все виды. +// МассивОбъектов - Массив - владельцы контактной информации. +// ТипыКИ - Массив - необязательный, используется, если не задан все типы. +// ВидыКИ - Массив - необязательный, используется, если не задан все виды. // Дата - Дата - необязательный, дата с которой действует запись контактной информации, // используется при хранении истории изменения контактной информации. // Если владелец хранит историю изменений, то при несоответствии параметра // дате будет вызвано исключение. // -// Возвращаемое значение +// Возвращаемое значение: // Таблица значений - результат. Колонки: // * Объект - Ссылка - владелец КИ. // * Вид - СправочникСсылка.ВидыКонтактнойИнформации // * Тип - ПеречислениеСсылка.ТипыКонтактнойИнформации // * ЗначенияПолей - Строка - данные значений полей. // * Представление - Строка - представление КИ. -// * ДействуетС - Дата - Дата с которой действует запись контактной информации, -// поле присутствует только для владельцев контактной -// информации которые хранят историю изменений. // Функция КонтактнаяИнформацияОбъектов(МассивОбъектов, ТипыКИ = Неопределено, ВидыКИ = Неопределено, Дата = Неопределено) Экспорт @@ -1397,25 +1412,13 @@ Дата = ТекущаяДатаСеанса(); КонецЕсли; - Если ТипЗнч(МассивОбъектов) = Тип("Массив") И МассивОбъектов.Количество() > 0 Тогда - Ссылка = МассивОбъектов.Получить(0); - Иначе - ВызватьИсключение НСтр("ru = 'Неверное значение для массива владельцев контактной информации.'"); - КонецЕсли; - Запрос = Новый Запрос; Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; СоздатьВТКонтактнаяИнформация(Запрос.МенеджерВременныхТаблиц, МассивОбъектов, ТипыКИ, ВидыКИ, Дата); + ДействуетС = " КонтактнаяИнформация.ДействуетС КАК ДействуетС, "; - Если ТипЗнч(Дата) = Тип("Дата") Тогда - ДействуетС = " КонтактнаяИнформация.ДействуетС КАК ДействуетС, "; - Иначе - ДействуетС = ""; - КонецЕсли; - - Запрос.Текст = - "ВЫБРАТЬ + Запрос.Текст = "ВЫБРАТЬ | КонтактнаяИнформация.Объект КАК Объект, | КонтактнаяИнформация.Вид КАК Вид, | КонтактнаяИнформация.Тип КАК Тип, @@ -1464,7 +1467,7 @@ ИмяТабличнойЧасти = ИмяТабличнойЧастиПоВидуКИ(ВидКИ, ИмяОбъектаПриемника); Если ПустаяСтрока(ИмяТабличнойЧасти) Тогда - ЗаполнитьКонтактнуюИнформациюТабличнойЧасти(Приемник, ВидКИ, СтрокаЗаполнения.СтруктураКИ, Дата); + ЗаполнитьКонтактнуюИнформациюТабличнойЧасти(Приемник, ВидКИ, СтрокаЗаполнения.СтруктураКИ,, Дата); Иначе Если ТипЗнч(СтрокаЗаполнения.КлючСтроки) <> Тип("Структура") Тогда Продолжить; @@ -1522,15 +1525,15 @@ КонецПроцедуры -// Проверяет контактную информацию +// Проверяет контактную информацию. // // Параметры: // Представление - Строка - Строка - представления. Используется, если невозможно определить представление из параметра. // ЗначенияПолей (отсутствие поля "Представление"). // ЗначенияПолей - Строка, Структура, Соответствие, СписокЗначений - описание полей контактной информации. // ВидИнформации - СправочникСсылка.ВидыКонтактнойИнформации - Используется для определения типа, если его невозможно вычислить по полю ЗначенияПолей. -// ТипИнформации - ПеречислениеСсылка.ТипыКонтактнойИнформации - Тип контактной информации -// ИмяРеквизита - Строка - Имя реквизита на форме +// ТипИнформации - ПеречислениеСсылка.ТипыКонтактнойИнформации - Тип контактной информации. +// ИмяРеквизита - Строка - Имя реквизита на форме. // Комментарий - Строка - Комментарий // ПутьКРеквизиту - Строка - Путь к реквизиту. // @@ -1572,14 +1575,14 @@ КонецФункции -// Возвращает сведения об адресах в виде структуру частей адреса и кодов КЛАДР +// Возвращает сведения об адресах в виде структуру частей адреса и кодов КЛАДР. // // Параметры: -// Адреса - Массив - XDTO объекты или строки XML контактной информации +// Адреса - Массив - XDTO объекты или строки XML контактной информации. // ДополнительныеПараметры - Структура - параметры контактной информации. // * БезПредставлений - Булево - Если Истина, то поле представления адреса будет отсутствовать. -// * КодыКЛАДР - Булево - Если Истина, то возвращает структуру с кодами КЛАДР по всем частям адреса -// * ПолныеНаименованияСокращений - Булево - Если Истина, то возвращает полное наименование адресных объектов +// * КодыКЛАДР - Булево - Если Истина, то возвращает структуру с кодами КЛАДР по всем частям адреса. +// * ПолныеНаименованияСокращений - Булево - Если Истина, то возвращает полное наименование адресных объектов. // * НаименованиеВключаетСокращение - Булево - Если Истина, то поля содержат сокращениям в наименованиях адресных объектов. // Возвращаемое значение: // Массив - содержит массив структур, содержимое структуры см. описание функции СведенияОбАдресе. @@ -1588,14 +1591,14 @@ Возврат УправлениеКонтактнойИнформациейСлужебный.СведенияОбАдресахВВидеСтруктуры(Адреса, ДополнительныеПараметры); КонецФункции -// Возвращает сведения об адресах в виде структуру частей адреса и кодов КЛАДР +// Возвращает сведения об адресах в виде структуру частей адреса и кодов КЛАДР. // // Параметры: -// Адрес - Строка, ОбъектXDTO - XDTO объект или строка XML контактной информации +// Адрес - Строка, ОбъектXDTO - XDTO объект или строка XML контактной информации. // ДополнительныеПараметры - Структура - параметры контактной информации. // * БезПредставлений - Булево - Если Истина, то поле представления адреса будет отсутствовать. -// * КодыКЛАДР - Булево - Если Истина, то возвращает структуру с кодами КЛАДР по всем частям адреса -// * ПолныеНаименованияСокращений - Булево - Если Истина, то возвращает полное наименование адресных объектов +// * КодыКЛАДР - Булево - Если Истина, то возвращает структуру с кодами КЛАДР по всем частям адреса. +// * ПолныеНаименованияСокращений - Булево - Если Истина, то возвращает полное наименование адресных объектов. // * НаименованиеВключаетСокращение - Булево - Если Истина, то поля содержат сокращениям в наименованиях адресных объектов. // Возвращаемое значение: // Структура - набор пар ключ-значение. Состав свойств для адреса: @@ -1609,9 +1612,9 @@ // * ОкругСокращение - Строка - сокращение округа. // * Район - Строка - текстовое представление района. // * РайонСокращение - Строка - сокращение района. -// * Город - Строка - текстовое представление города +// * Город - Строка - текстовое представление города. // * ГородСокращение - Строка - сокращение города. -// * ВнутригородскойРайон - Строка - текстовое представление внутригородского района +// * ВнутригородскойРайон - Строка - текстовое представление внутригородского района. // * ВнутригородскойРайонСокращение - Строка - сокращение внутригородского района. // * НаселенныйПункт - Строка - текстовое представление населенного пункта. // * НаселенныйПунктСокращение - Строка - сокращение населенного пункта. @@ -1621,7 +1624,7 @@ // * ДополнительнаяТерриторияСокращение - Строка - сокращение дополнительной территории. // * ЭлементДополнительнойТерритории - Строка - текстовое представление элемента дополнительной территории. // * ЭлементДополнительнойТерриторииСокращение - Строка - сокращение элемента дополнительной территории. -// * Здание - Структура - структура с информацией о здании адреса +// * Здание - Структура - структура с информацией о здании адреса. // ** ТипЗдания - Строка - тип объекта адресации адреса РФ согласно приказу ФНС ММВ-7-1/525 от 31.08.2011. // ** Номер - Строка - текстовое представление номера дома (только для адресов РФ). // * Корпуса - Массив - содержит структуры(поля структуры: ТипКорпуса, Номер) с перечнем корпусов адреса. @@ -1802,6 +1805,64 @@ Возврат УправлениеКонтактнойИнформациейКлиентСервер.СтруктураЗначенийПолей(Данные, ВидКонтактнойИнформации); КонецФункции +// Преобразует адреса нового формата XML ФИАС в адрес формата КЛАДР. +// +// Параметры: +// Данные - Строка - XML контактной информации или пары ключ-значение. +// +// Возвращаемое значение: +// Структура - набор пар ключ-значение. Состав свойств для адреса: +// ** Страна - Строка - текстовое представление страны. +// ** КодСтраны - Строка - код страны по ОКСМ. +// ** Индекс - Строка - почтовый индекс (только для адресов РФ). +// ** Регион - Строка - текстовое представление региона РФ (только для адресов РФ). +// ** КодРегиона - Строка - код региона РФ (только для адресов РФ). +// ** РегионСокращение - Строка - сокращение региона (если СтарыйСоставПолей = Ложь). +// ** Район - Строка - текстовое представление района (только для адресов РФ). +// ** РайонСокращение - Строка - сокращение района (если СтарыйСоставПолей = Ложь). +// ** Город - Строка - текстовое представление города (только для адресов РФ). +// ** ГородСокращение - Строка - сокращение города (только для адресов РФ). +// ** НаселенныйПункт - Строка - текстовое представление населенного пункта (только для адресов РФ). +// ** НаселенныйПунктСокращение - Строка - сокращение населенного пункта (если СтарыйСоставПолей = Ложь). +// ** Улица - Строка - текстовое представление улицы (только для адресов РФ). +// ** УлицаСокращение - Строка - сокращение улицы (если СтарыйСоставПолей = Ложь). +// ** ТипДома - Строка - см. ТипыОбъектовАдресацииАдресаРФ(). +// ** Дом - Строка - текстовое представление дома (только для адресов РФ). +// ** ТипКорпуса - Строка - см. ТипыОбъектовАдресацииАдресаРФ(). +// ** Корпус - Строка - текстовое представление корпуса (только для адресов РФ). +// ** ТипКвартиры - Строка - см. ТипыОбъектовАдресацииАдресаРФ(). +// ** Квартира - Строка - текстовое представление квартиры (только для адресов РФ). +// ** АдресРФ - Булево - Если Истина, то адрес российский. +// ** Представление - Строка - текстовое представление адреса. +// +Функция АдресВФорматеКЛАДР(Знач Данные) Экспорт + + Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(Данные) Тогда + // Новый формат КИ + Результат = УправлениеКонтактнойИнформациейКлиентСервер.СтруктураЗначенийПолей( + ПредыдущийФорматКонтактнойИнформацииXML(Данные)); + Представление = ПредставлениеКонтактнойИнформации(Данные); + + ИначеЕсли ПустаяСтрока(Данные) Тогда + // Генерируем пустую структуру по виду + Результат = УправлениеКонтактнойИнформациейКлиентСервер.СтруктураКонтактнойИнформацииПоТипу( + Перечисления.ТипыКонтактнойИнформации.Адрес); + Представление = ""; + КонецЕсли; + + + Если Результат.Свойство("Страна") + И СтрСравнить(Результат.Страна, Справочники.СтраныМира.Россия.Наименование) = 0 Тогда + Результат.Вставить("АдресРФ", Истина); + Иначе + Результат.Вставить("АдресРФ", Ложь); + КонецЕсли; + Результат.Вставить("Представление", Представление); + + Возврат Результат; +КонецФункции + + //////////////////////////////////////////////////////////////////////////////////////////////////// // Определяет данные страны по справочнику стран или классификатору ОКСМ. @@ -1867,13 +1928,13 @@ // Получить значения определенного типа контактной информации у объекта. // -// Параметры -// Ссылка - ЛюбаяСсылка - ссылка на объект-владелец контактной информации (организация, контрагент, партнер и т.д.) +// Параметры: +// Ссылка - ЛюбаяСсылка - ссылка на объект-владелец контактной информации (организация, контрагент, партнер и т.д.). // ТипКонтактнойИнформации - ПеречислениеСсылка.ТипыКонтактнойИнформации. // // Возвращаемое значение: -// ТаблицаЗначений - колонки -// * Значение - строка - строковое представление значения +// ТаблицаЗначений - колонки. +// * Значение - строка - строковое представление значения. // * Вид - строка - представление вида контактной информации. // Функция ЗначенияКонтактнойИнформацииОбъекта(Ссылка, ТипКонтактнойИнформации) Экспорт @@ -1915,7 +1976,6 @@ // идентификатор предопределенного элемента. // * Тип - ПеречислениеСсылка.ТипыКонтактнойИнформации - Тип контактной информации или его // идентификатор. -// * Подсказка - Строка - Подсказка к виду контактной информации. // * Порядок - Число, Неопределено - Порядок вида контактной информации, положение в // списке относительно других элементов: // Неопределено - не переназначать; @@ -1932,8 +1992,13 @@ // * ЗапретитьРедактированиеПользователем - Булево - Признак недоступности редактирования // пользователем свойства вида контактной // информации. -// * Используется - Булево - Признак использования вида контактной информации +// * ХранитьИсториюИзменений - Булево - Признак хранения истории изменений вида контактной информации. +// Значение по умолчанию Ложь. +// * Используется - Булево - Признак использования вида контактной информации. // Значение по умолчанию Истина. +// * ВидПоляДругое - Строка - Внешний вид поля типа "Другое". Возможные значения: +// МногострочноеШирокое, ОднострочноеШирокое, ОднострочноеУзкое. +// Значение по умолчанию - ОднострочноеШирокое. // * НастройкиПроверки - Структура, Неопределено - Настройки проверки вида контактной информации. // Для типа Адрес - Структура, содержащая поля: // * АдресТолькоРоссийский - Булево - Истина, если возможен ввод только российских адресов. @@ -1978,7 +2043,6 @@ КонецЕсли; Объект.Тип = Параметры.Тип; - Объект.Подсказка = Параметры.Подсказка; Объект.МожноИзменятьСпособРедактирования = Параметры.МожноИзменятьСпособРедактирования; Объект.РедактированиеТолькоВДиалоге = Параметры.РедактированиеТолькоВДиалоге; Объект.ОбязательноеЗаполнение = Параметры.ОбязательноеЗаполнение; @@ -1986,7 +2050,10 @@ Объект.ЗапретитьРедактированиеПользователем = Параметры.ЗапретитьРедактированиеПользователем; Объект.Используется = Параметры.Используется; Объект.ХранитьИсториюИзменений = Параметры.ХранитьИсториюИзменений; - Объект.МногострочноеПоле = Параметры.МногострочноеПоле; + + Если Параметры.Тип = Перечисления.ТипыКонтактнойИнформации.Другое Тогда + Объект.ВидПоляДругое = Параметры.ВидПоляДругое; + КонецЕсли; НастройкиПроверки = Параметры.НастройкиПроверки; ПроверятьНастройки = ТипЗнч(НастройкиПроверки) = Тип("Структура"); @@ -1995,6 +2062,8 @@ ЗаполнитьЗначенияСвойств(Объект, НастройкиПроверки); ИначеЕсли ПроверятьНастройки И Параметры.Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты Тогда УстановитьЗначенияРеквизитовПроверки(Объект, НастройкиПроверки); + ИначеЕсли ПроверятьНастройки И Параметры.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда + Объект.ТелефонCДобавочнымНомером = НастройкиПроверки.ТелефонCДобавочнымНомером; Иначе УстановитьЗначенияРеквизитовПроверки(Объект); КонецЕсли; @@ -2025,7 +2094,6 @@ // идентификатор предопределенного элемента. // * Тип - ПеречислениеСсылка.ТипыКонтактнойИнформации - Тип контактной информации или его // идентификатор. -// * Подсказка - Строка - Подсказка к виду контактной информации. // * Порядок - Число, Неопределено - Порядок вида контактной информации, положение в // списке относительно других элементов: // Неопределено - не переназначать; @@ -2042,7 +2110,7 @@ // * ЗапретитьРедактированиеПользователем - Булево - Признак недоступности редактирования // пользователем свойства вида контактной // информации. -// * Используется - Булево - Признак использования вида контактной информации +// * Используется - Булево - Признак использования вида контактной информации. // Значение по умолчанию Истина. // * НастройкиПроверки - Структура, Неопределено - Настройки проверки вида контактной информации. // Для типа Адрес - Структура, содержащая поля: @@ -2072,7 +2140,6 @@ ПараметрыВида = Новый Структура; ПараметрыВида.Вставить("Вид"); ПараметрыВида.Вставить("Тип", УстанавливаемыйТип); - ПараметрыВида.Вставить("Подсказка"); ПараметрыВида.Вставить("Порядок"); ПараметрыВида.Вставить("МожноИзменятьСпособРедактирования", Ложь); ПараметрыВида.Вставить("РедактированиеТолькоВДиалоге", Ложь); @@ -2081,7 +2148,6 @@ ПараметрыВида.Вставить("ЗапретитьРедактированиеПользователем", Ложь); ПараметрыВида.Вставить("ХранитьИсториюИзменений", Ложь); ПараметрыВида.Вставить("Используется", Истина); - ПараметрыВида.Вставить("МногострочноеПоле", Ложь); Если УстанавливаемыйТип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда НастройкиПроверки = Новый Структура; @@ -2098,6 +2164,9 @@ НастройкиПроверки = Новый Структура; НастройкиПроверки.Вставить("ТелефонCДобавочнымНомером", Истина); Иначе + Если УстанавливаемыйТип = Перечисления.ТипыКонтактнойИнформации.Другое Тогда + ПараметрыВида.Вставить("ВидПоляДругое", "ОднострочноеШирокое"); + КонецЕсли; НастройкиПроверки = Неопределено; КонецЕсли; @@ -2176,10 +2245,10 @@ КонецПроцедуры -// Выполняет отложенное обновление контактной информации для списков +// Выполняет отложенное обновление контактной информации для списков. // // Параметры: -// Параметры - Структура - Параметры обработчика обновления +// Параметры - Структура - Параметры обработчика обновления. // РазмерПорции - Число - Необязательный параметр размер порции обрабатываемых данных за один запуск. // Процедура ОбновитьКонтактнуюИнформациюДляСписковОтложенно(Параметры, РазмерПорции = 1000) Экспорт @@ -2302,15 +2371,15 @@ #Область СлужебныйПрограммныйИнтерфейс -// Устанавливает доступность элементов контактной информации на форме +// Устанавливает доступность элементов контактной информации на форме. // // Параметры: // Форма - УправляемаяФорма - передаваемая форма. -// Элементы - Соответствие - Список видов контактной информации, для которых устанавливается доступ +// Элементы - Соответствие - Список видов контактной информации, для которых устанавливается доступ. // ** Ключ - ОбъектМетаданных - Подсистема, в которой размещается отчет или вариант отчета. // ** Значение - Булево - Если ЛОЖЬ, то элемент доступен только для просмотра. // -Процедура УстановитьДоступностьЭлементовКонтактнойИнформации(Форма, Элементы) Экспорт +Процедура УстановитьДоступностьЭлементовКонтактнойИнформации(Форма, Элементы, ИмяЭлементаДляРазмещения = "ГруппаКонтактнаяИнформация") Экспорт Для каждого Элемент Из Элементы Цикл Отбор = Новый Структура("Вид", Элемент.Ключ); @@ -2321,10 +2390,11 @@ ЭлементКИ.ТолькоПросмотр = НЕ Элемент.Значение; КонецЦикла; // Если у элемента только просмотр, то удаляем возможность добавления этого элемента на форму. + ПараметрыКонтактнойИнформации = ПараметрыКонтактнойИнформацииФормы(Форма.ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения); Если НЕ Элемент.Значение Тогда - Для каждого ЭлементКонтекстногоМеню Из Форма.ПараметрыКонтактнойИнформации.СписокДобавляемыхЭлементов Цикл + Для каждого ЭлементКонтекстногоМеню Из ПараметрыКонтактнойИнформации.СписокДобавляемыхЭлементов Цикл Если ЭлементКонтекстногоМеню.Значение.Ссылка = Элемент.Ключ Тогда - Форма.ПараметрыКонтактнойИнформации.СписокДобавляемыхЭлементов.Удалить(ЭлементКонтекстногоМеню); + ПараметрыКонтактнойИнформации.СписокДобавляемыхЭлементов.Удалить(ЭлементКонтекстногоМеню); Продолжить; КонецЕсли; КонецЦикла; @@ -2333,18 +2403,20 @@ КонецЦикла; - Если Форма.Элементы.Найти("КонтактнаяИнформацияДобавитьПолеВвода") <> Неопределено - И Форма.ПараметрыКонтактнойИнформации.СписокДобавляемыхЭлементов.Количество() = 0 Тогда - // Делаем кнопку Добавить недоступной, т.к. контекстное меню пустое. - Форма.Элементы.КонтактнаяИнформацияДобавитьПолеВвода.Доступность = Ложь; + Если Форма.Элементы.Найти("КонтактнаяИнформацияДобавитьПолеВвода") <> Неопределено Тогда + ПараметрыКонтактнойИнформации = ПараметрыКонтактнойИнформацииФормы(Форма.ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения); + Если ПараметрыКонтактнойИнформации.СписокДобавляемыхЭлементов.Количество() = 0 Тогда + // Делаем кнопку Добавить недоступной, т.к. контекстное меню пустое. + Форма.Элементы.КонтактнаяИнформацияДобавитьПолеВвода.Доступность = Ложь; + КонецЕсли; КонецЕсли; КонецПроцедуры -// Дополняет список колонки для загрузки данных колонками контактной информации +// Дополняет список колонки для загрузки данных колонками контактной информации. // // Параметры: -// МетаданныеСправочника - ОбъектМетаданных - Метаданные справочника +// МетаданныеСправочника - ОбъектМетаданных - Метаданные справочника. // ИнформацияПоКолонкам - ТаблицаЗначение - колонки макета. // Процедура КолонкиДляЗагрузкиДанных(МетаданныеСправочника, ИнформацияПоКолонкам) Экспорт @@ -2368,7 +2440,6 @@ СтрокаИнфоПроКолонки.Позиция = Позиция; СтрокаИнфоПроКолонки.Группа = НСтр("ru = 'Контактная информация'"); СтрокаИнфоПроКолонки.Видимость = Истина; - СтрокаИнфоПроКолонки.Примечание = ВидКонтактнойИнформации.Подсказка; СтрокаИнфоПроКолонки.Ширина = 30; Позиция = Позиция + 1; КонецЕсли; @@ -2376,7 +2447,7 @@ КонецПроцедуры -// Виды контактной информация объекта +// Виды контактной информация объекта. // // Параметры: // ВладелецКонтактнойИнформации - Ссылка на владельца контактной информации. @@ -2429,7 +2500,6 @@ "ВЫБРАТЬ | ВидыКонтактнойИнформации.Ссылка, | ВидыКонтактнойИнформации.Представление, - | ВидыКонтактнойИнформации.Подсказка, | ВидыКонтактнойИнформации.Наименование, | ВидыКонтактнойИнформации.РазрешитьВводНесколькихЗначений, | ВидыКонтактнойИнформации.РеквизитДопУпорядочивания КАК РеквизитДопУпорядочивания, @@ -2457,63 +2527,23 @@ //////////////////////////////////////////////////////////////////////////////// // Инициализация элементов на форме объект-владельца контактной информации. -Процедура ДобавитьОписаниеЭлемента(Форма, ИмяЭлемента, Приоритет, ЭтоКоманда = Ложь) - - Форма.ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.Добавить(ИмяЭлемента, Приоритет, ЭтоКоманда); - -КонецПроцедуры - -Процедура УдалитьОписаниеЭлемента(Форма, ИмяЭлемента) - - ДобавленныеЭлементы = Форма.ПараметрыКонтактнойИнформации.ДобавленныеЭлементы; - НайденнаяСтрока = ДобавленныеЭлементы.НайтиПоЗначению(ИмяЭлемента); - ДобавленныеЭлементы.Удалить(НайденнаяСтрока); - -КонецПроцедуры - Функция ЗаголовокСлева(Знач ПоложениеЗаголовкаКИ = Неопределено) Если ЗначениеЗаполнено(ПоложениеЗаголовкаКИ) Тогда - ПоложениеЗаголовкаКИ = ПоложениеЗаголовкаЭлементаФормы[ПоложениеЗаголовкаКИ]; + ПоложениеЗаголовкаКИ = ПредопределенноеЗначение(ПоложениеЗаголовкаКИ); Иначе - ПоложениеЗаголовкаКИ = ПоложениеЗаголовкаЭлементаФормы.Верх; + ПоложениеЗаголовкаКИ = ПоложениеЗаголовкаЭлементаФормы.Лево; КонецЕсли; Возврат (ПоложениеЗаголовкаКИ = ПоложениеЗаголовкаЭлементаФормы.Лево); КонецФункции -// Определяет значение положения заголовка. Для поддержки локализованных конфигураций. -// -// Параметры: -// ПоложениеЗаголовкаКИ - Строка - положение заголовка в текстовом представление на языке локализации. -// -// Возвращаемое значение: -// Строка - положение заголовка. -// -Функция ЗначениеПоложенияЗаголовкаКИ(ПоложениеЗаголовкаКИ) +Процедура ИзменитьКомментарий(Форма, ИмяРеквизита, ИмяЭлементаДляРазмещения) - Если СтрСравнить(Строка(ПоложениеЗаголовкаЭлементаФормы.Лево), ПоложениеЗаголовкаКИ) = 0 Тогда - Возврат "Лево"; - ИначеЕсли СтрСравнить(Строка(ПоложениеЗаголовкаЭлементаФормы.Верх), ПоложениеЗаголовкаКИ) = 0 Тогда - Возврат "Верх"; - ИначеЕсли СтрСравнить(Строка(ПоложениеЗаголовкаЭлементаФормы.Низ), ПоложениеЗаголовкаКИ) = 0 Тогда - Возврат "Низ"; - ИначеЕсли СтрСравнить(Строка(ПоложениеЗаголовкаЭлементаФормы.Право), ПоложениеЗаголовкаКИ) = 0 Тогда - Возврат "Право"; - ИначеЕсли СтрСравнить(Строка(ПоложениеЗаголовкаЭлементаФормы.Нет), ПоложениеЗаголовкаКИ) = 0 Тогда - Возврат "Нет"; - ИначеЕсли СтрСравнить(Строка(ПоложениеЗаголовкаЭлементаФормы.Авто), ПоложениеЗаголовкаКИ) = 0 Тогда - Возврат "Авто"; - КонецЕсли; + ПараметрыКонтактнойИнформации = ПараметрыКонтактнойИнформацииФормы(Форма.ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения); - Возврат ""; - -КонецФункции - -Процедура ИзменитьКомментарий(Форма, ИмяРеквизита, ЭтоДобавлениеКомментария) - - Если Форма.ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.НайтиПоЗначению(ИмяРеквизита) = Неопределено Тогда + Если ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.НайтиПоЗначению(ИмяРеквизита) = Неопределено Тогда Возврат; КонецЕсли; @@ -2521,108 +2551,22 @@ Отбор = Новый Структура("ИмяРеквизита", ИмяРеквизита); НайденнаяСтрока = ОписаниеКонтактнойИнформации.НайтиСтроки(Отбор)[0]; - ИмяКомментария = "Комментарий" + ИмяРеквизита; - Если ЭтоДобавлениеКомментария И Форма.Элементы.Найти(ИмяКомментария) <> Неопределено Тогда - // Комментарий уже существует, просто обновим его - Форма.Элементы[ИмяКомментария].Заголовок = НайденнаяСтрока.Комментарий; - Возврат; - КонецЕсли; - - // Заголовок и поле ввода - ЗаголовокЭлемента = Форма.Элементы.Найти("Заголовок" + ИмяРеквизита); - ЗаголовокСлева = ЗаголовокСлева(Форма.ПараметрыКонтактнойИнформации.ПоложениеЗаголовка); - - Если ЭтоДобавлениеКомментария Тогда - ПолеВвода = Форма.Элементы.Найти(ИмяРеквизита); - - ГруппаПолейВвода = Форма.Элементы.ГруппаПолейВводаКонтактнойИнформации; - - ТекущийЭлемент = ?(ГруппаПолейВвода.ПодчиненныеЭлементы.Найти(ПолеВвода.Имя) = Неопределено, ПолеВвода.Родитель, ПолеВвода); - ИндексТекущегоЭлемента = ГруппаПолейВвода.ПодчиненныеЭлементы.Индекс(ТекущийЭлемент); - СледующийЭлемент = ГруппаПолейВвода.ПодчиненныеЭлементы.Получить(ИндексТекущегоЭлемента + 1); - - Комментарий = Комментарий(Форма, НайденнаяСтрока.Комментарий, ИмяКомментария, ГруппаПолейВвода); - Форма.Элементы.Переместить(Комментарий, ГруппаПолейВвода, СледующийЭлемент); - Если ЗаголовокСлева Тогда - - ГруппаЗаголовков = Форма.Элементы.ГруппаЗаголовковКонтактнойИнформации; - ИндексЗаголовка = ГруппаЗаголовков.ПодчиненныеЭлементы.Индекс(ЗаголовокЭлемента); - СледующийЗаголовок = ГруппаЗаголовков.ПодчиненныеЭлементы.Получить(ИндексЗаголовка + 1); - - ИмяЗаглушки = "ЗаглушкаЗаголовка" + ИмяРеквизита; - Заглушка = Форма.Элементы.Добавить(ИмяЗаглушки, Тип("ДекорацияФормы"), ГруппаЗаголовков); - Форма.Элементы.Переместить(Заглушка, ГруппаЗаголовков, СледующийЗаголовок); - ДобавитьОписаниеЭлемента(Форма, ИмяЗаглушки, 2); - КонецЕсли; - Иначе - Комментарий = Форма.Элементы[ИмяКомментария]; - Форма.Элементы.Удалить(Комментарий); - УдалитьОписаниеЭлемента(Форма, ИмяКомментария); - - Если ЗаголовокСлева Тогда - - ЗаголовокЭлемента.Высота = 1; - - ИмяЗаглушки = "ЗаглушкаЗаголовка" + ИмяРеквизита; - ЗаглушкаЗаголовка = Форма.Элементы[ИмяЗаглушки]; - Форма.Элементы.Удалить(ЗаглушкаЗаголовка); - УдалитьОписаниеЭлемента(Форма, ИмяЗаглушки); - - КонецЕсли; - - КонецЕсли; - - // Действие - ГруппаДействий = Форма.Элементы.ГруппаДействийКонтактнойИнформации; - ИмяЗаглушкиДействия = "ЗаглушкаДействия" + ИмяРеквизита; - ЗаглушкаДействия = Форма.Элементы.Найти(ИмяЗаглушкиДействия); - - Если ЭтоДобавлениеКомментария Тогда - - Если ЗаглушкаДействия = Неопределено Тогда - - ЗаглушкаДействия = Форма.Элементы.Добавить(ИмяЗаглушкиДействия, Тип("ДекорацияФормы"), ГруппаДействий); - ЗаглушкаДействия.Высота = 1; - Действие = Форма.Элементы["Команда" + ИмяРеквизита]; - ИндексКоманды = ГруппаДействий.ПодчиненныеЭлементы.Индекс(Действие); - СледующийЭлемент = ГруппаДействий.ПодчиненныеЭлементы.Получить(ИндексКоманды + 1); - Если ЗаглушкаДействия <> СледующийЭлемент Тогда - Форма.Элементы.Переместить(ЗаглушкаДействия, ГруппаДействий, СледующийЭлемент); - КонецЕсли; - ДобавитьОписаниеЭлемента(Форма, ИмяЗаглушкиДействия, 2); - - Иначе - - ЗаглушкаДействия.Высота = 2; - - КонецЕсли; - - Иначе - - Если ЗаглушкаДействия.Высота = 1 Тогда - - Форма.Элементы.Удалить(ЗаглушкаДействия); - УдалитьОписаниеЭлемента(Форма, ИмяЗаглушкиДействия); - - Иначе - - ЗаглушкаДействия.Высота = 1; - - КонецЕсли; - - КонецЕсли; + ПолеВвода = Форма.Элементы.Найти(ИмяРеквизита); + ПолеВвода.Подсказка = НайденнаяСтрока.Комментарий; КонецПроцедуры -Процедура ДобавитьСтрокуКонтактнойИнформации(Форма, Результат, ЭтоНовыйВидКИ = Ложь, КоличествоАдресов = Неопределено, СледующаяСтрока = Неопределено) +Процедура ДобавитьСтрокуКонтактнойИнформации(Форма, Результат, ИмяЭлементаДляРазмещения, ЭтоНовыйВидКИ = Ложь, КоличествоАдресов = Неопределено, СледующаяСтрока = Неопределено) ДобавлениеНовогоЗначения = ТипЗнч(Результат) = Тип("Структура"); Если ДобавлениеНовогоЗначения Тогда + Результат.Свойство("ИмяЭлементаДляРазмещения", ИмяЭлементаДляРазмещения); + ДобавляемыйВид = Результат.ДобавляемыйВид; Если ТипЗнч(ДобавляемыйВид)= Тип("СправочникСсылка.ВидыКонтактнойИнформации") Тогда - ИнформацияОВидеКИ = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ДобавляемыйВид, "Тип, Наименование, РедактированиеТолькоВДиалоге, Подсказка, МногострочноеПоле"); + ИнформацияОВидеКИ = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(ДобавляемыйВид, "Тип, Наименование, РедактированиеТолькоВДиалоге, ВидПоляДругое"); Иначе ИнформацияОВидеКИ = ДобавляемыйВид; ДобавляемыйВид = ДобавляемыйВид.Ссылка; @@ -2640,8 +2584,13 @@ НайденныеСтроки = ТаблицаКонтактнойИнформации.НайтиСтроки(ОтборПоВиду); КоличествоСтрокВида = НайденныеСтроки.Количество(); - ПоследняяСтрока = НайденныеСтроки.Получить(КоличествоСтрокВида - 1); - ИндексДобавляемойСтроки = ТаблицаКонтактнойИнформации.Индекс(ПоследняяСтрока) + 1; + Если КоличествоСтрокВида > 0 Тогда + ПоследняяСтрока = НайденныеСтроки.Получить(КоличествоСтрокВида - 1); + ИндексДобавляемойСтроки = ТаблицаКонтактнойИнформации.Индекс(ПоследняяСтрока) + 1; + Иначе + ИндексДобавляемойСтроки = 0; + КонецЕсли; + ЭтоПоследняяСтрока = Ложь; Если ИндексДобавляемойСтроки = ТаблицаКонтактнойИнформации.Количество() Тогда ЭтоПоследняяСтрока = Истина; @@ -2657,6 +2606,7 @@ НоваяСтрока.ИмяРеквизита = ИмяРеквизита; НоваяСтрока.Вид = ДобавляемыйВид; НоваяСтрока.Тип = ИнформацияОВидеКИ.Тип; + НоваяСтрока.ИмяЭлементаДляРазмещения = ИмяЭлементаДляРазмещения; НоваяСтрока.ЭтоРеквизитТабличнойЧасти = Ложь; МассивДобавляемыхРеквизитов = Новый Массив; @@ -2675,167 +2625,70 @@ ОбязательноеЗаполнение = ИнформацияОВидеКИ.ОбязательноеЗаполнение; КонецЕсли; - ЗаголовокСлева = ЗаголовокСлева(Форма.ПараметрыКонтактнойИнформации.ПоложениеЗаголовка); - // Отрисовка на форме - Если ЗаголовокСлева Тогда - ГруппаЗаголовков = Форма.Элементы.ГруппаЗаголовковКонтактнойИнформации; - Заголовок = Заголовок(Форма, ИнформацияОВидеКИ, ИмяРеквизита, ГруппаЗаголовков, ЭтоНовыйВидКИ); - - Если Не ЭтоПоследняяСтрока Тогда - СледующийЗаголовок = Форма.Элементы["Заголовок" + ИмяСледующегоРеквизита]; - Форма.Элементы.Переместить(Заголовок, ГруппаЗаголовков, СледующийЗаголовок); - - Если ЕстьКомментарий Тогда - - ИмяЗаглушки = "ЗаглушкаЗаголовка" + ИмяРеквизита; - Заглушка = Форма.Элементы.Добавить(ИмяЗаглушки, Тип("ДекорацияФормы"), ГруппаЗаголовков); - ДобавитьОписаниеЭлемента(Форма, ИмяЗаглушки, 2); - Форма.Элементы.Переместить(Заглушка, ГруппаЗаголовков, СледующийЗаголовок); - - КонецЕсли; - КонецЕсли; - КонецЕсли; - - ГруппаПолейВвода = Форма.Элементы.ГруппаПолейВводаКонтактнойИнформации; - ПолеВвода = ПолеВвода(Форма, ИнформацияОВидеКИ, ИмяРеквизита, ЭтоНовыйВидКИ, ОбязательноеЗаполнение); + ГруппаСтроки = Группа("Группа" + ИмяРеквизита, Форма, ДобавляемыйВид.Наименование, ИмяЭлементаДляРазмещения); + Родитель = Родитель(Форма, ИмяЭлементаДляРазмещения); Если Не ЭтоПоследняяСтрока Тогда - Если СледующаяСтрока = Неопределено Тогда - - ИмяСледующегоЭлемента = ПоследняяСтрока.ИмяРеквизита; - - Если ЗначениеЗаполнено(ПоследняяСтрока.Комментарий) Тогда - ИмяСледующегоЭлемента = "Комментарий" + ИмяСледующегоЭлемента; + ИмяСледующейГруппы = "Группа" + ПоследняяСтрока.ИмяРеквизита; + Если Форма.Элементы.Найти(ИмяСледующейГруппы) <> Неопределено Тогда + ИндексСледующейГруппы = Родитель.ПодчиненныеЭлементы.Индекс(Форма.Элементы[ИмяСледующейГруппы]) + 1; + СледующаяГруппа = Родитель.ПодчиненныеЭлементы.Получить(ИндексСледующейГруппы); КонецЕсли; - - ИндексСледующегоЭлемента = ГруппаПолейВвода.ПодчиненныеЭлементы.Индекс(Форма.Элементы[ИмяСледующегоЭлемента]) + 1; - СледующийЭлемент = ГруппаПолейВвода.ПодчиненныеЭлементы.Получить(ИндексСледующегоЭлемента); - Иначе - СледующийЭлемент = Форма.Элементы[СледующаяСтрока.ИмяРеквизита]; + ИмяГруппы = "Группа" + СледующаяСтрока.ИмяРеквизита; + Если Форма.Элементы.Найти(ИмяГруппы) <> Неопределено Тогда + СледующаяГруппа = Форма.Элементы[ИмяГруппы]; + КонецЕсли; КонецЕсли; - - Форма.Элементы.Переместить(ПолеВвода, ГруппаПолейВвода, СледующийЭлемент); - + Форма.Элементы.Переместить(ГруппаСтроки, Родитель, СледующаяГруппа); + ИначеЕсли ДобавлениеНовогоЗначения Тогда + СледующаяГруппа = Форма.Элементы[Результат.ИмяКоманды].Родитель; + Форма.Элементы.Переместить(ГруппаСтроки, Родитель, СледующаяГруппа); КонецЕсли; - ГруппаДействий = Форма.Элементы.ГруппаДействийКонтактнойИнформации; + ПолеВвода = ПолеВвода(Форма, ГруппаСтроки, ИнформацияОВидеКИ, ИмяРеквизита, ИмяЭлементаДляРазмещения, ЭтоНовыйВидКИ, ОбязательноеЗаполнение); + Если КоличествоАдресов = Неопределено Тогда ОтборПоТипу = Новый Структура("Тип", Перечисления.ТипыКонтактнойИнформации.Адрес); КоличествоАдресов = ТаблицаКонтактнойИнформации.НайтиСтроки(ОтборПоТипу).Количество(); КонецЕсли; - ИмяДействия = "Команда" + ИмяСледующегоРеквизита; - ИмяЗаглушки = "ДекорацияВерх" + ИмяСледующегоРеквизита; - - Если Форма.Элементы.Найти(ИмяЗаглушки) <> Неопределено Тогда - ИмяСледующегоДействия = ИмяЗаглушки; - ИначеЕсли Форма.Элементы.Найти(ИмяДействия) <> Неопределено Тогда - ИмяСледующегоДействия = ИмяДействия; - Иначе - ИмяСледующегоДействия = "ЗаглушкаДействия" + ИмяСледующегоРеквизита; - КонецЕсли; - - // Выводим комментарий Если ЕстьКомментарий Тогда - - ИмяКомментария = "Комментарий" + ИмяРеквизита; - Комментарий = Комментарий(Форма, Результат.Комментарий, ИмяКомментария, ГруппаПолейВвода); - - Если Не ЭтоПоследняяСтрока Тогда - - Если ЗначениеЗаполнено(ПоследняяСтрока) Тогда - ИмяСледующегоЭлемента = ПоследняяСтрока.ИмяРеквизита; - - Если ЗначениеЗаполнено(ПоследняяСтрока.Комментарий) Тогда - ИмяСледующегоЭлемента = "Комментарий" + ИмяСледующегоЭлемента; - КонецЕсли; - - ИндексСледующегоЭлемента = ГруппаПолейВвода.ПодчиненныеЭлементы.Индекс(Форма.Элементы[ИмяСледующегоЭлемента]) + 1; - СледующийЭлемент = ГруппаПолейВвода.ПодчиненныеЭлементы.Получить(ИндексСледующегоЭлемента); - Иначе - Если СледующаяСтрока <> Неопределено Тогда - СледующийЭлемент = Форма.Элементы[СледующаяСтрока.ИмяРеквизита]; - Иначе - СледующийЭлемент = Неопределено; - КонецЕсли; - КонецЕсли; - - Форма.Элементы.Переместить(Комментарий, ГруппаПолейВвода, СледующийЭлемент); - - КонецЕсли; - + ПолеВвода.Подсказка = Результат.Комментарий; КонецЕсли; - // Заглушка , если заголовок у поля сверху. - Если Не ЗаголовокСлева И ЭтоНовыйВидКИ Тогда - - ИмяДекорации = "ДекорацияВерх" + ИмяРеквизита; - Декорация = Форма.Элементы.Добавить(ИмяДекорации, Тип("ДекорацияФормы"), ГруппаДействий); - ДобавитьОписаниеЭлемента(Форма, ИмяДекорации, 2); - - КонецЕсли; - - Если Не ЭтоПоследняяСтрока Тогда - СледующееДействие = Форма.Элементы.Найти(ИмяСледующегоДействия); - Иначе - СледующееДействие = Неопределено; - КонецЕсли; - - Действие = Действие(Форма, ИнформацияОВидеКИ, ИмяРеквизита, ГруппаДействий, КоличествоАдресов, ЕстьКомментарий, СледующееДействие); + СоздатьДействие(Форма, ИнформацияОВидеКИ, ИмяРеквизита, ГруппаСтроки, КоличествоАдресов, ЕстьКомментарий, ИмяЭлементаДляРазмещения); Если Не ЭтоНовыйВидКИ Тогда Если ТаблицаКонтактнойИнформации.Количество() > 1 И ТаблицаКонтактнойИнформации[0].Свойство("ЭтоИсторическаяКонтактнаяИнформация") Тогда - ПунктКонтекстногоМенюПеремещения(ПолеВвода, Форма, 1); + ПунктКонтекстногоМенюПеремещения(ПолеВвода, Форма, 1, ИмяЭлементаДляРазмещения); НайденныеСтроки = ТаблицаКонтактнойИнформации.НайтиСтроки(ОтборПоВиду); Если НайденныеСтроки.Количество() > 1 Тогда ПредыдущаяСтрока = НайденныеСтроки.Получить(НайденныеСтроки.Количество() - 2); - ПунктКонтекстногоМенюПеремещения(Форма.Элементы[ПредыдущаяСтрока.ИмяРеквизита], Форма, - 1); + ПунктКонтекстногоМенюПеремещения(Форма.Элементы[ПредыдущаяСтрока.ИмяРеквизита], Форма, - 1, ИмяЭлементаДляРазмещения); КонецЕсли; КонецЕсли; КонецЕсли; Если ДобавлениеНовогоЗначения Тогда - Форма.ТекущийЭлемент = Форма.Элементы[ИмяРеквизита]; - Если ИнформацияОВидеКИ.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес И ИнформацияОВидеКИ.РедактированиеТолькоВДиалоге Тогда - Результат.Вставить("ЭлементФормыАдреса", ИмяРеквизита); + Результат.Вставить("ЭлементФормыАдреса", ИмяРеквизита); КонецЕсли; КонецЕсли; КонецПроцедуры -Функция Заголовок(Форма, ИнформацияОВидеКИ, ИмяРеквизита, ГруппаЗаголовков, ЭтоНовыйВидКИ = Ложь) +Функция ПолеВвода(Форма, Родитель, ИнформацияОВидеКИ, ИмяРеквизита, ИмяЭлементаДляРазмещения,ЭтоНовыйВидКИ = Ложь, ОбязательноеЗаполнение = Ложь) - ИмяЗаголовка = "Заголовок" + ИмяРеквизита; - Элемент = Форма.Элементы.Добавить(ИмяЗаголовка, Тип("ДекорацияФормы"), ГруппаЗаголовков); - Элемент.Заголовок = ?(ЭтоНовыйВидКИ, ИнформацияОВидеКИ.Наименование + ":", ""); + ПараметрыКонтактнойИнформации = ПараметрыКонтактнойИнформацииФормы(Форма.ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения); - Если ИнформацияОВидеКИ.Тип = Перечисления.ТипыКонтактнойИнформации.Другое Тогда - Элемент.Высота = ?(ИнформацияОВидеКИ.МногострочноеПоле, 5, 1); - Элемент.ВертикальноеПоложение = ВертикальноеПоложениеЭлемента.Верх; - Иначе - Элемент.ВертикальноеПоложение = ВертикальноеПоложениеЭлемента.Центр; - КонецЕсли; - - ДобавитьОписаниеЭлемента(Форма, ИмяЗаголовка, 2); - - Возврат Элемент; - -КонецФункции - -Функция ПолеВвода(Форма, ИнформацияОВидеКИ, ИмяРеквизита, ЭтоНовыйВидКИ = Ложь, ОбязательноеЗаполнение = Ложь) - - ЗаголовокСлева = ЗаголовокСлева(Форма.ПараметрыКонтактнойИнформации.ПоложениеЗаголовка); - Элемент = Форма.Элементы.Добавить(ИмяРеквизита, Тип("ПолеФормы"), Форма.Элементы.ГруппаПолейВводаКонтактнойИнформации); - Элемент.Подсказка = ИнформацияОВидеКИ.Подсказка; + ЗаголовокСлева = ЗаголовокСлева(ПараметрыКонтактнойИнформации.ПоложениеЗаголовка); + Элемент = Форма.Элементы.Добавить(ИмяРеквизита, Тип("ПолеФормы"), Родитель); Элемент.ПутьКДанным = ИмяРеквизита; - Элемент.РастягиватьПоГоризонтали = Истина; - Элемент.ПоложениеЗаголовка = ?(ЗаголовокСлева Или Не ЭтоНовыйВидКИ, ПоложениеЗаголовкаЭлементаФормы.Нет, ПоложениеЗаголовкаЭлементаФормы.Верх); Если ИнформацияОВидеКИ.РедактированиеТолькоВДиалоге И ИнформацияОВидеКИ.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда Элемент.Вид = ВидПоляФормы.ПолеНадписи; @@ -2849,20 +2702,48 @@ Элемент.УстановитьДействие("Очистка", "Подключаемый_КонтактнаяИнформацияОчистка"); КонецЕсли; - ДобавитьОписаниеЭлемента(Форма, ИмяРеквизита, 2); + Элемент.ОтображениеПодсказки = ОтображениеПодсказки.ОтображатьСнизу; + Элемент.РастягиватьПоГоризонтали = Ложь; + Элемент.РастягиватьПоВертикали = Ложь; + Элемент.ВысотаЗаголовка = 2; - // Устанавливаем свойства поля ввода. - Если ИнформацияОВидеКИ.Тип = Перечисления.ТипыКонтактнойИнформации.Другое Тогда - Если ИнформацияОВидеКИ.МногострочноеПоле Тогда - Элемент.Высота = 5; + Если ИнформацияОВидеКИ.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда + Элемент.Ширина = 50; + ИначеЕсли ИнформацияОВидеКИ.Тип = Перечисления.ТипыКонтактнойИнформации.Другое Тогда + Если ИнформацияОВидеКИ.ВидПоляДругое = "МногострочноеШирокое" Тогда + Элемент.Высота = 3; + Элемент.Ширина = 50; Элемент.МногострочныйРежим = Истина; - Иначе + ИначеЕсли ИнформацияОВидеКИ.ВидПоляДругое = "ОднострочноеШирокое" Тогда Элемент.Высота = 1; + Элемент.Ширина = 50; + Элемент.МногострочныйРежим = Ложь; + Иначе // ОднострочноеУзкое + Элемент.Высота = 1; + Элемент.Ширина = 25; Элемент.МногострочныйРежим = Ложь; КонецЕсли; - Элемент.РастягиватьПоВертикали = Ложь; Иначе - + Элемент.Ширина = 25; + КонецЕсли; + + Если Не ЭтоНовыйВидКИ Тогда + Элемент.ГоризонтальноеПоложениеВГруппе = ГоризонтальноеПоложениеЭлемента.Право; + Элемент.ЦветТекстаЗаголовка = ЦветаСтиля.ЦветФонаФормы; + КонецЕсли; + + Элемент.ПоложениеЗаголовка = ?(ЗаголовокСлева, ПоложениеЗаголовкаЭлементаФормы.Лево, ПоложениеЗаголовкаЭлементаФормы.Верх); + + Если ЗаголовокСлева Тогда + Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Лево; + Иначе + Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Верх; + КонецЕсли; + + ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.Добавить(ИмяРеквизита, 2, Ложь); + + // Устанавливаем свойства поля ввода. + Если ИнформацияОВидеКИ.Тип <> Перечисления.ТипыКонтактнойИнформации.Другое Тогда // Ввод комментария через контекстное меню. ИмяКоманды = "КонтекстноеМеню" + ИмяРеквизита; Кнопка = Форма.Элементы.Добавить(ИмяКоманды,Тип("КнопкаФормы"), Элемент.КонтекстноеМеню); @@ -2874,8 +2755,8 @@ Команда.ИзменяетСохраняемыеДанные = Истина; Кнопка.ИмяКоманды = ИмяКоманды; - ДобавитьОписаниеЭлемента(Форма, ИмяКоманды, 1); - ДобавитьОписаниеЭлемента(Форма, ИмяКоманды, 9, Истина); + ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.Добавить(ИмяКоманды, 1); + ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.Добавить(ИмяКоманды, 9, Истина); КонецЕсли; Если ИнформацияОВидеКИ.ХранитьИсториюИзменений Тогда @@ -2890,8 +2771,8 @@ Команда.ИзменяетСохраняемыеДанные = Ложь; Кнопка.ИмяКоманды = ИмяКоманды; - ДобавитьОписаниеЭлемента(Форма, ИмяКоманды, 1); - ДобавитьОписаниеЭлемента(Форма, ИмяКоманды, 9, Истина); + ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.Добавить(ИмяКоманды, 1); + ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.Добавить(ИмяКоманды, 9, Истина); КонецЕсли; Если ИнформацияОВидеКИ.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда @@ -2904,8 +2785,8 @@ Команда.Действие = "Подключаемый_КонтактнаяИнформацияВыполнитьКоманду"; Кнопка.ИмяКоманды = ИмяКоманды; - ДобавитьОписаниеЭлемента(Форма, ИмяКоманды, 1); - ДобавитьОписаниеЭлемента(Форма, ИмяКоманды, 9, Истина); + ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.Добавить(ИмяКоманды, 1); + ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.Добавить(ИмяКоманды, 9, Истина); ИмяКоманды = "КонтекстноеМенюКартаGoogle" + ИмяРеквизита; Кнопка = Форма.Элементы.Добавить(ИмяКоманды,Тип("КнопкаФормы"), Элемент.КонтекстноеМеню); @@ -2916,12 +2797,11 @@ Команда.Действие = "Подключаемый_КонтактнаяИнформацияВыполнитьКоманду"; Кнопка.ИмяКоманды = ИмяКоманды; - ДобавитьОписаниеЭлемента(Форма, ИмяКоманды, 1); - ДобавитьОписаниеЭлемента(Форма, ИмяКоманды, 9, Истина); + ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.Добавить(ИмяКоманды, 1); + ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.Добавить(ИмяКоманды, 9, Истина); КонецЕсли; - Если ОбязательноеЗаполнение И ЭтоНовыйВидКИ И Элемент.Вид = ВидПоляФормы.ПолеВвода Тогда Элемент.АвтоОтметкаНезаполненного = Истина; КонецЕсли; @@ -2931,7 +2811,6 @@ И Элемент.Вид = ВидПоляФормы.ПолеВвода Тогда Элемент.КнопкаВыбора = Истина; - Если ИнформацияОВидеКИ.РедактированиеТолькоВДиалоге Тогда Элемент.РедактированиеТекста = Ложь; Элемент.ЦветФона = ЦветаСтиля.КонтактнаяИнформацияСРедактированиемВДиалогеЦвет; @@ -2945,13 +2824,14 @@ КонецФункции -Процедура ПунктКонтекстногоМенюПеремещения(ПредыдущийЭлемент, Форма, Направление) +Процедура ПунктКонтекстногоМенюПеремещения(ПредыдущийЭлемент, Форма, Направление, ИмяЭлементаДляРазмещения) Если Направление > 0 Тогда ИмяКоманды = "КонтекстноеМенюВверх" + ПредыдущийЭлемент.Имя; Иначе ИмяКоманды = "КонтекстноеМенюВниз" + ПредыдущийЭлемент.Имя; КонецЕсли; + Команда = Форма.Команды.Добавить(ИмяКоманды); Кнопка = Форма.Элементы.Добавить(ИмяКоманды, Тип("КнопкаФормы"), ПредыдущийЭлемент.КонтекстноеМеню); @@ -2968,136 +2848,12 @@ Кнопка.ИмяКоманды = ИмяКоманды; Команда.ИзменяетСохраняемыеДанные = Истина; Кнопка.Доступность = Истина; - ДобавитьОписаниеЭлемента(Форма, ИмяКоманды, 1); - ДобавитьОписаниеЭлемента(Форма, ИмяКоманды, 9, Истина); - + ПараметрыКонтактнойИнформации = ПараметрыКонтактнойИнформацииФормы(Форма.ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения); + ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.Добавить(ИмяКоманды, 1); + ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.Добавить(ИмяКоманды, 9, Истина); + КонецПроцедуры -Функция Действие(Форма, ВидКонтактнойИнформации, ИмяРеквизита, ГруппаДействий, КоличествоАдресов, ЕстьКомментарий = Ложь, СледующееДействие = Неопределено) - - Тип = ВидКонтактнойИнформации.Тип; - СоздаватьДействиеДляТипа = Новый Соответствие(); - СоздаватьДействиеДляТипа.Вставить(Перечисления.ТипыКонтактнойИнформации.ВебСтраница, Истина); - СоздаватьДействиеДляТипа.Вставить(Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты, Истина); - СоздаватьДействиеДляТипа.Вставить(Перечисления.ТипыКонтактнойИнформации.Телефон, Истина); - СоздаватьДействиеДляТипа.Вставить(Перечисления.ТипыКонтактнойИнформации.Адрес, ?(КоличествоАдресов > 1, Истина, Ложь)); - СоздаватьДействиеДляТипа.Вставить(Перечисления.ТипыКонтактнойИнформации.Skype, Истина); - - Если Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты Тогда - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСПочтовымиСообщениями") Тогда - МодульРаботаСПочтовымиСообщениями = ОбщегоНазначения.ОбщийМодуль("РаботаСПочтовымиСообщениями"); - Если НЕ МодульРаботаСПочтовымиСообщениями.ДоступнаОтправкаПисем() Тогда - СоздаватьДействиеДляТипа[Тип] = Ложь; - КонецЕсли; - Иначе - СоздаватьДействиеДляТипа[Тип] = Ложь; - КонецЕсли; - - ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда - СоздаватьДействиеДляТипа[Тип] = Истина; - ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.Адрес И ВидКонтактнойИнформации.РедактированиеТолькоВДиалоге Тогда - СоздаватьДействиеДляТипа[Тип] = Ложь; - КонецЕсли; - - Если СоздаватьДействиеДляТипа[Тип] = Истина Тогда - - // Есть действие - ИмяКоманды = "Команда" + ИмяРеквизита; - Команда = Форма.Команды.Добавить(ИмяКоманды); - ДобавитьОписаниеЭлемента(Форма, ИмяКоманды, 9, Истина); - Команда.Отображение = ОтображениеКнопки.Картинка; - Команда.Действие = "Подключаемый_КонтактнаяИнформацияВыполнитьКоманду"; - - Элемент = Форма.Элементы.Добавить(ИмяКоманды,Тип("КнопкаФормы"), ГруппаДействий); - ДобавитьОписаниеЭлемента(Форма, ИмяКоманды, 2); - Элемент.ИмяКоманды = ИмяКоманды; - - Если Тип = Перечисления.ТипыКонтактнойИнформации.Адрес - И НЕ ВидКонтактнойИнформации.РедактированиеТолькоВДиалоге Тогда - - Элемент.Заголовок = НСтр("ru = 'Заполнить'"); - Команда.Подсказка = НСтр("ru = 'Заполнить адрес из другого поля'"); - Команда.Картинка = БиблиотекаКартинок.ПереместитьВлево; - Команда.ИзменяетСохраняемыеДанные = Истина; - - ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.ВебСтраница Тогда - - Элемент.Заголовок = НСтр("ru = 'Перейти'"); - Команда.Подсказка = НСтр("ru = 'Перейти по ссылке'"); - Команда.Картинка = БиблиотекаКартинок.КонтактнаяИнформацияПерейтиПоСсылке; - - ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты Тогда - - Элемент.Заголовок = НСтр("ru = 'Написать письмо'"); - Команда.Подсказка = НСтр("ru = 'Написать письмо'"); - Команда.Картинка = БиблиотекаКартинок.ОтправитьЭлектронноеПисьмо; - - ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда - - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОтправкаSMS") Тогда - Элемент.Заголовок = НСтр("ru = 'Позвонить или отправить SMS'"); - Команда.Подсказка = НСтр("ru = 'Позвонить или отправить SMS'"); - Команда.Картинка = БиблиотекаКартинок.ПозвонитьИлиОтправитьSMS; - Иначе - Элемент.Заголовок = НСтр("ru = 'Позвонить'"); - Команда.Подсказка = НСтр("ru = 'Позвонить по телефону'"); - Команда.Картинка = БиблиотекаКартинок.Позвонить; - КонецЕсли; - - ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.Skype Тогда - Элемент.Заголовок = НСтр("ru = 'Skype'"); - Команда.Подсказка = НСтр("ru = 'Skype'"); - Команда.Картинка = БиблиотекаКартинок.Skype; - КонецЕсли; - - Если ЕстьКомментарий Тогда - - ИмяЗаглушкиДействия = "ЗаглушкаДействия" + ИмяРеквизита; - ЗаглушкаДействия = Форма.Элементы.Добавить(ИмяЗаглушкиДействия, Тип("ДекорацияФормы"), ГруппаДействий); - ЗаглушкаДействия.Высота = 1; - ДобавитьОписаниеЭлемента(Форма, ИмяЗаглушкиДействия, 2); - - Если СледующееДействие <> Неопределено Тогда - Форма.Элементы.Переместить(ЗаглушкаДействия, ГруппаДействий, СледующееДействие); - КонецЕсли; - КонецЕсли; - - Иначе - - // Действия нет, ставим заглушку. - ИмяЗаглушкиДействия = "ЗаглушкаДействия" + ИмяРеквизита; - Элемент = Форма.Элементы.Добавить(ИмяЗаглушкиДействия, Тип("ДекорацияФормы"), ГруппаДействий); - ДобавитьОписаниеЭлемента(Форма, ИмяЗаглушкиДействия, 2); - Если ЕстьКомментарий Тогда - Элемент.Высота = 2; - ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.Другое Тогда - Элемент.Высота = ?(ВидКонтактнойИнформации.МногострочноеПоле, 5, 1); - КонецЕсли; - КонецЕсли; - - Возврат Элемент; - -КонецФункции - -Функция Комментарий(Форма, Комментарий, ИмяКомментария, ГруппаДляРазмещения) - - Элемент = Форма.Элементы.Добавить(ИмяКомментария, Тип("ДекорацияФормы"), ГруппаДляРазмещения); - Элемент.Заголовок = Комментарий; - - Элемент.ЦветТекста = ЦветаСтиля.ПоясняющийТекст; - - Элемент.РастягиватьПоГоризонтали = Истина; - Элемент.РастягиватьПоВертикали = Ложь; - Элемент.ВертикальноеПоложение = ВертикальноеПоложениеЭлемента.Верх; - - Элемент.Высота = 1; - - ДобавитьОписаниеЭлемента(Форма, ИмяКомментария, 2); - - Возврат Элемент; - -КонецФункции - // Убирает разделители в номере телефона. // // Параметры: @@ -3121,18 +2877,20 @@ КонецФункции -Функция Группа(ИмяГруппы, Форма, Родитель, Группировка, ПорядокУдаления) +Функция Группа(ИмяГруппы, Форма, Заголовок, ИмяЭлементаДляРазмещения) Группа = Форма.Элементы.Найти(ИмяГруппы); Если Группа = Неопределено Тогда - Группа = Форма.Элементы.Добавить(ИмяГруппы, Тип("ГруппаФормы"), Родитель); + Группа = Форма.Элементы.Добавить(ИмяГруппы, Тип("ГруппаФормы"), Родитель(Форма, ИмяЭлементаДляРазмещения)); Группа.Вид = ВидГруппыФормы.ОбычнаяГруппа; + Группа.Заголовок = Заголовок; Группа.ОтображатьЗаголовок = Ложь; + Группа.РазрешитьИзменениеСостава = Ложь; Группа.Отображение = ОтображениеОбычнойГруппы.Нет; - Группа.Группировка = Группировка; - ДобавитьОписаниеЭлемента(Форма, ИмяГруппы, ПорядокУдаления); - + Группа.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Горизонтальная; + ПараметрыКонтактнойИнформации = ПараметрыКонтактнойИнформацииФормы(Форма.ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения); + ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.Добавить(ИмяГруппы, 5); КонецЕсли; Возврат Группа; @@ -3155,8 +2913,13 @@ Строка500 = Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(500)); ИмяОписания = "КонтактнаяИнформацияОписаниеДополнительныхРеквизитов"; + Если СоздатьТаблицуКонтактнойИнформации Тогда + + Строка500 = Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(500)); + // Создадим таблицу значений + ИмяОписания = "КонтактнаяИнформацияОписаниеДополнительныхРеквизитов"; МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы(ИмяОписания, Новый ОписаниеТипов("ТаблицаЗначений"))); МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("ИмяРеквизита", Строка500, ИмяОписания)); МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("Вид", Новый ОписаниеТипов("СправочникСсылка.ВидыКонтактнойИнформации"), ИмяОписания)); @@ -3168,9 +2931,11 @@ МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("ЭтоИсторическаяКонтактнаяИнформация", Новый ОписаниеТипов("Булево"), ИмяОписания)); МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("ДействуетС", Новый ОписаниеТипов("Дата"), ИмяОписания)); МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("ХранитьИсториюИзменений", Новый ОписаниеТипов("Булево"), ИмяОписания)); + МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("ИмяЭлементаДляРазмещения", Строка500, ИмяОписания)); Иначе РеквизитыТаблицы = Форма.ПолучитьРеквизиты("КонтактнаяИнформацияОписаниеДополнительныхРеквизитов"); РеквизитыДляСоздания = Новый Соответствие; + РеквизитыДляСоздания.Вставить("ИмяЭлементаДляРазмещения", Истина); РеквизитыДляСоздания.Вставить("ХранитьИсториюИзменений", Истина); РеквизитыДляСоздания.Вставить("ДействуетС", Истина); РеквизитыДляСоздания.Вставить("ЭтоИсторическаяКонтактнаяИнформация", Истина); @@ -3181,6 +2946,9 @@ КонецЕсли; КонецЦикла; + Если РеквизитыДляСоздания["ИмяЭлементаДляРазмещения"] Тогда + МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("ИмяЭлементаДляРазмещения", Строка500, ИмяОписания)); + КонецЕсли; Если РеквизитыДляСоздания["ХранитьИсториюИзменений"] Тогда МассивДобавляемыхРеквизитов.Добавить(Новый РеквизитФормы("ХранитьИсториюИзменений", Новый ОписаниеТипов("Булево"), ИмяОписания)); КонецЕсли; @@ -3213,30 +2981,13 @@ КонецПроцедуры -Функция ОпределитьСледующуюСтроку(Форма, КонтактнаяИнформация, СтрокаКИ) - - Позиция = КонтактнаяИнформация.Индекс(СтрокаКИ) + 1; - Пока Позиция < КонтактнаяИнформация.Количество() Цикл - СледующаяСтрока = КонтактнаяИнформация.Получить(Позиция); - Если СледующаяСтрока = Неопределено Тогда - Возврат Неопределено; - КонецЕсли; - Если Форма.Элементы.Найти(СледующаяСтрока.ИмяРеквизита) <> Неопределено Тогда - Возврат СледующаяСтрока; - КонецЕсли; - Позиция = Позиция + 1; - КонецЦикла; - - Возврат Неопределено; - -КонецФункции - -Процедура ДобавитьРеквизитВОписание(Форма, СтрокаКИ, ЭтоНовыйВидКИ, ЭтоРеквизитТабличнойЧасти = Ложь, ЗаполнятьЗначениеРеквизита = Истина) +Процедура ДобавитьРеквизитВОписание(Форма, СтрокаКИ, ЭтоНовыйВидКИ, ЭтоРеквизитТабличнойЧасти = Ложь, ЗаполнятьЗначениеРеквизита = Истина, ИмяЭлементаДляРазмещения = "ГруппаКонтактнаяИнформация") НоваяСтрока = Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); НоваяСтрока.ИмяРеквизита = СтрокаКИ.ИмяРеквизита; НоваяСтрока.Вид = СтрокаКИ.Вид; НоваяСтрока.Тип = СтрокаКИ.Тип; + НоваяСтрока.ИмяЭлементаДляРазмещения = ИмяЭлементаДляРазмещения; НоваяСтрока.ЭтоРеквизитТабличнойЧасти = ЭтоРеквизитТабличнойЧасти; Если НоваяСтрока.Свойство("ЭтоИсторическаяКонтактнаяИнформация") Тогда НоваяСтрока.ЭтоИсторическаяКонтактнаяИнформация = СтрокаКИ.ЭтоИсторическаяКонтактнаяИнформация; @@ -3265,22 +3016,23 @@ Иначе Форма[СтрокаКИ.ИмяРеквизита] = СтрокаКИ.Представление; КонецЕсли; + КонецЕсли; СтруктураВидаКИ = УправлениеКонтактнойИнформациейСлужебный.СтруктураВидаКонтактнойИнформации(СтрокаКИ.Вид); СтруктураВидаКИ.Вставить("Ссылка", СтрокаКИ.Вид); Если ЭтоНовыйВидКИ И СтруктураВидаКИ.РазрешитьВводНесколькихЗначений И Не ЭтоРеквизитТабличнойЧасти Тогда - - Форма.ПараметрыКонтактнойИнформации.СписокДобавляемыхЭлементов.Добавить(СтруктураВидаКИ, СтрокаКИ.Вид.Наименование); - + ПараметрыКонтактнойИнформации = ПараметрыКонтактнойИнформацииФормы(Форма.ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения); + ПараметрыКонтактнойИнформации.СписокДобавляемыхЭлементов.Добавить(СтруктураВидаКИ, СтрокаКИ.Вид.Наименование); КонецЕсли; КонецПроцедуры -Процедура УдалитьКомандыИЭлементыФормы(Форма) +Процедура УдалитьКомандыИЭлементыФормы(Форма, ИмяЭлементаДляРазмещения) - ДобавленныеЭлементы = Форма.ПараметрыКонтактнойИнформации.ДобавленныеЭлементы; + ПараметрыКонтактнойИнформации = ПараметрыКонтактнойИнформацииФормы(Форма.ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения); + ДобавленныеЭлементы = ПараметрыКонтактнойИнформации.ДобавленныеЭлементы; ДобавленныеЭлементы.СортироватьПоПредставлению(); Для Каждого УдаляемыйЭлемент Из ДобавленныеЭлементы Цикл @@ -3676,10 +3428,10 @@ КонецПроцедуры -// Проверяет контактную информацию и перезаполняет значение полей +// Проверяет контактную информацию. // Функция ПроверитьЗаполнениеКонтактнойИнформации(Представление, ЗначенияПолей, ВидИнформации, ТипИнформации, - ИмяРеквизита, Комментарий = Неопределено, ПутьКРеквизиту = "") Экспорт + ИмяРеквизита, Комментарий = Неопределено, ПутьКРеквизиту = "") ТекстСериализации = ?(ПустаяСтрока(ЗначенияПолей), Представление, ЗначенияПолей); @@ -3826,4 +3578,183 @@ КонецПроцедуры +Функция Родитель(Форма, ИмяЭлементаДляРазмещения) + + Возврат ?(ПустаяСтрока(ИмяЭлементаДляРазмещения), Форма, Форма.Элементы[ИмяЭлементаДляРазмещения]) + +КонецФункции + +Функция ПараметрыКонтактнойИнформации(Форма, ИмяЭлементаДляРазмещения, ПоложениеЗаголовкаКИ, ОтложеннаяИнициализация, ИсключаемыеВиды) + + Если ТипЗнч(Форма.ПараметрыКонтактнойИнформации) <> Тип("Структура") Тогда + Форма.ПараметрыКонтактнойИнформации = Новый Структура; + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОтправкаSMS") Тогда + МодульОтправкаSMS = ОбщегоНазначения.ОбщийМодуль("ОтправкаSMS"); + МожноОтправлятьSMS = МодульОтправкаSMS.ДоступнаОтправкаSMS(); + Иначе + МожноОтправлятьSMS = Ложь; + КонецЕсли; + + ПараметрыКонтактнойИнформации = Новый Структура; + ПараметрыКонтактнойИнформации.Вставить("ГруппаДляРазмещения", ИмяЭлементаДляРазмещения); + ПараметрыКонтактнойИнформации.Вставить("ПоложениеЗаголовка", ЗначениеПоложенияЗаголовкаКИ(ПоложениеЗаголовкаКИ)); + ПараметрыКонтактнойИнформации.Вставить("ДобавленныеРеквизиты", Новый СписокЗначений); // + ПараметрыКонтактнойИнформации.Вставить("ОтложеннаяИнициализация", ОтложеннаяИнициализация); + ПараметрыКонтактнойИнформации.Вставить("ИсключаемыеВиды", ИсключаемыеВиды); + ПараметрыКонтактнойИнформации.Вставить("ВыполненаОтложеннаяИнициализация", Ложь); + ПараметрыКонтактнойИнформации.Вставить("ДобавленныеЭлементы", Новый СписокЗначений); + ПараметрыКонтактнойИнформации.Вставить("СписокДобавляемыхЭлементов", Новый СписокЗначений); + ПараметрыКонтактнойИнформации.Вставить("МожноОтправлятьSMS", МожноОтправлятьSMS); + ПараметрыКонтактнойИнформации.Вставить("Владелец", Неопределено); + + Форма.ПараметрыКонтактнойИнформации.Вставить(ИмяЭлементаДляРазмещения, ПараметрыКонтактнойИнформации); + + Возврат Форма.ПараметрыКонтактнойИнформации[ИмяЭлементаДляРазмещения]; + +КонецФункции + +Функция ГруппаВидовКонтактнойИнформацииОбъекта(СсылкаНаОбъект) + + ПолноеИмяОбъектаМетаданных = СсылкаНаОбъект.Метаданные().ПолноеИмя(); + ИмяГруппыВидовКИ = СтрЗаменить(ПолноеИмяОбъектаМетаданных, ".", ""); + ГруппаВидовКонтактнойИнформации = Справочники.ВидыКонтактнойИнформации[ИмяГруппыВидовКИ]; + + Возврат ГруппаВидовКонтактнойИнформации; + +КонецФункции + +// Определяет значение положения заголовка. Для поддержки локализованных конфигураций. +// +// Параметры: +// ПоложениеЗаголовкаКИ - Строка - положения заголовка в текстовом представление на языке локализации. +// +// Возвращаемое значение: +// Строка - положения заголовка. +// +Функция ЗначениеПоложенияЗаголовкаКИ(ПоложениеЗаголовкаКИ) + + Если ПоложениеЗаголовкаЭлементаФормы.Лево = ПоложениеЗаголовкаКИ Тогда + Возврат "ПоложениеЗаголовкаЭлементаФормы.Лево"; + ИначеЕсли ПоложениеЗаголовкаЭлементаФормы.Верх = ПоложениеЗаголовкаКИ Тогда + Возврат "ПоложениеЗаголовкаЭлементаФормы.Верх"; + ИначеЕсли ПоложениеЗаголовкаЭлементаФормы.Низ = ПоложениеЗаголовкаКИ Тогда + Возврат "ПоложениеЗаголовкаЭлементаФормы.Низ"; + ИначеЕсли ПоложениеЗаголовкаЭлементаФормы.Право = ПоложениеЗаголовкаКИ Тогда + Возврат "ПоложениеЗаголовкаЭлементаФормы.Право"; + ИначеЕсли ПоложениеЗаголовкаЭлементаФормы.Нет = ПоложениеЗаголовкаКИ Тогда + Возврат "ПоложениеЗаголовкаЭлементаФормы.Нет"; + ИначеЕсли ПоложениеЗаголовкаЭлементаФормы.Авто = ПоложениеЗаголовкаКИ Тогда + Возврат "ПоложениеЗаголовкаЭлементаФормы.Авто"; + КонецЕсли; + + Возврат ""; + +КонецФункции + +Процедура СоздатьДействие(Форма, ВидКонтактнойИнформации, ИмяРеквизита, ГруппаДействий, КоличествоАдресов, ЕстьКомментарий = Ложь, ИмяЭлементаДляРазмещения = "ГруппаКонтактнаяИнформация") + + Тип = ВидКонтактнойИнформации.Тип; + СоздаватьДействиеДляТипа = Новый Соответствие(); + СоздаватьДействиеДляТипа.Вставить(Перечисления.ТипыКонтактнойИнформации.ВебСтраница, Истина); + СоздаватьДействиеДляТипа.Вставить(Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты, Истина); + СоздаватьДействиеДляТипа.Вставить(Перечисления.ТипыКонтактнойИнформации.Телефон, Истина); + СоздаватьДействиеДляТипа.Вставить(Перечисления.ТипыКонтактнойИнформации.Адрес, ?(КоличествоАдресов > 1, Истина, Ложь)); + СоздаватьДействиеДляТипа.Вставить(Перечисления.ТипыКонтактнойИнформации.Skype, Истина); + + Если Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСПочтовымиСообщениями") Тогда + МодульРаботаСПочтовымиСообщениями = ОбщегоНазначения.ОбщийМодуль("РаботаСПочтовымиСообщениями"); + Если НЕ МодульРаботаСПочтовымиСообщениями.ДоступнаОтправкаПисем() Тогда + СоздаватьДействиеДляТипа[Тип] = Ложь; + КонецЕсли; + Иначе + СоздаватьДействиеДляТипа[Тип] = Ложь; + КонецЕсли; + ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.Адрес И ВидКонтактнойИнформации.РедактированиеТолькоВДиалоге Тогда + СоздаватьДействиеДляТипа[Тип] = Ложь; + КонецЕсли; + + Если СоздаватьДействиеДляТипа[Тип] = Истина Тогда + + // Есть действие + ИмяКоманды = "Команда" + ИмяРеквизита; + Команда = Форма.Команды.Добавить(ИмяКоманды); + ПараметрыКонтактнойИнформации = ПараметрыКонтактнойИнформацииФормы(Форма.ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения); + ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.Добавить(ИмяКоманды, 9, Истина); + Команда.Отображение = ОтображениеКнопки.Картинка; + Команда.Действие = "Подключаемый_КонтактнаяИнформацияВыполнитьКоманду"; + + Элемент = Форма.Элементы.Добавить(ИмяКоманды,Тип("КнопкаФормы"), ГруппаДействий); + ПараметрыКонтактнойИнформации.ДобавленныеЭлементы.Добавить(ИмяКоманды, 2); + Элемент.ИмяКоманды = ИмяКоманды; + + Если Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда + + Элемент.Заголовок = НСтр("ru = 'Заполнить'"); + Команда.Подсказка = НСтр("ru = 'Заполнить адрес из другого поля'"); + Команда.Картинка = БиблиотекаКартинок.ПереместитьВлево; + Команда.ИзменяетСохраняемыеДанные = Истина; + + ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.ВебСтраница Тогда + + Элемент.Заголовок = НСтр("ru = 'Перейти'"); + Команда.Подсказка = НСтр("ru = 'Перейти по ссылке'"); + Команда.Картинка = БиблиотекаКартинок.КонтактнаяИнформацияПерейтиПоСсылке; + + ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты Тогда + + Элемент.Заголовок = НСтр("ru = 'Написать письмо'"); + Команда.Подсказка = НСтр("ru = 'Написать письмо'"); + Команда.Картинка = БиблиотекаКартинок.ОтправитьЭлектронноеПисьмо; + + ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда + Если Форма.ПараметрыКонтактнойИнформации[ИмяЭлементаДляРазмещения].МожноОтправлятьSMS Тогда + Элемент.Заголовок = НСтр("ru = 'Позвонить или отправить SMS'"); + Команда.Подсказка = НСтр("ru = 'Позвонить или отправить SMS'"); + Команда.Картинка = БиблиотекаКартинок.ПозвонитьИлиОтправитьSMS; + Иначе + Элемент.Заголовок = НСтр("ru = 'Позвонить'"); + Команда.Подсказка = НСтр("ru = 'Позвонить по телефону'"); + Команда.Картинка = БиблиотекаКартинок.Позвонить; + КонецЕсли; + + ИначеЕсли Тип = Перечисления.ТипыКонтактнойИнформации.Skype Тогда + Элемент.Заголовок = НСтр("ru = 'Skype'"); + Команда.Подсказка = НСтр("ru = 'Skype'"); + Команда.Картинка = БиблиотекаКартинок.Skype; + КонецЕсли; + + КонецЕсли; + +КонецПроцедуры + +Функция ПараметрыКонтактнойИнформацииФормы(ПараметрыКонтактнойИнформации, ИмяЭлементаДляРазмещения) + Если НЕ ЗначениеЗаполнено(ИмяЭлементаДляРазмещения) ИЛИ НЕ ПараметрыКонтактнойИнформации.Свойство(ИмяЭлементаДляРазмещения) Тогда + Для каждого ПерваяЗапись Из ПараметрыКонтактнойИнформации Цикл + Возврат ПерваяЗапись.Значение; + КонецЦикла; + Возврат ПараметрыКонтактнойИнформации; + КонецЕсли; + Возврат ПараметрыКонтактнойИнформации[ИмяЭлементаДляРазмещения]; +КонецФункции + +Функция ОпределитьСледующуюСтроку(Форма, КонтактнаяИнформация, СтрокаКИ) + + Позиция = КонтактнаяИнформация.Индекс(СтрокаКИ) + 1; + Пока Позиция < КонтактнаяИнформация.Количество() Цикл + СледующаяСтрока = КонтактнаяИнформация.Получить(Позиция); + Если СледующаяСтрока = Неопределено Тогда + Возврат Неопределено; + КонецЕсли; + Если Форма.Элементы.Найти(СледующаяСтрока.ИмяРеквизита) <> Неопределено Тогда + Возврат СледующаяСтрока; + КонецЕсли; + Позиция = Позиция + 1; + КонецЦикла; + + Возврат Неопределено; +КонецФункции + #КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/УправлениеКонтактнойИнформациейКлиент/Module.bsl b/SSL/src/CommonModules/УправлениеКонтактнойИнформациейКлиент/Module.bsl index e1435981d..c38b97f3b 100644 --- a/SSL/src/CommonModules/УправлениеКонтактнойИнформациейКлиент/Module.bsl +++ b/SSL/src/CommonModules/УправлениеКонтактнойИнформациейКлиент/Module.bsl @@ -43,12 +43,14 @@ Возврат; КонецЕсли; - Если ДанныеСтроки.ХранитьИсториюИзменений И НачалоДня(ДанныеСтроки.ДействуетС) <> НачалоДня(ОбщегоНазначенияКлиент.ДатаСеанса()) Тогда - ИсторическаяКонтактнаяИнформация = Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); - ЗаполнитьЗначенияСвойств(ИсторическаяКонтактнаяИнформация, ДанныеСтроки); - ИсторическаяКонтактнаяИнформация.ЭтоИсторическаяКонтактнаяИнформация = Истина; - ИсторическаяКонтактнаяИнформация.ИмяРеквизита = ""; - ДанныеСтроки.ДействуетС = НачалоДня(ОбщегоНазначенияКлиент.ДатаСеанса()); + Если ДанныеСтроки.Свойство("ХранитьИсториюИзменений") + И ДанныеСтроки.ХранитьИсториюИзменений + И НачалоДня(ДанныеСтроки.ДействуетС) <> НачалоДня(ОбщегоНазначенияКлиент.ДатаСеанса()) Тогда + ИсторическаяКонтактнаяИнформация = Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); + ЗаполнитьЗначенияСвойств(ИсторическаяКонтактнаяИнформация, ДанныеСтроки); + ИсторическаяКонтактнаяИнформация.ЭтоИсторическаяКонтактнаяИнформация = Истина; + ИсторическаяКонтактнаяИнформация.ИмяРеквизита = ""; + ДанныеСтроки.ДействуетС = НачалоДня(ОбщегоНазначенияКлиент.ДатаСеанса()); КонецЕсли; ДанныеСтроки.ЗначенияПолей = УправлениеКонтактнойИнформациейСлужебныйВызовСервера.КонтактнаяИнформацияXMLПоПредставлению(Текст, ДанныеСтроки.Вид); @@ -68,8 +70,9 @@ // Элемент - ПолеФормы - Элемент формы, содержащий представление контактной информации. // Модифицированность - Булево - Устанавливаемый флаг модифицированности формы. // СтандартнаяОбработка - Булево - Устанавливаемый флаг стандартной обработки события формы. +// ПараметрыОткрытия - Структура - Параметры открытия формы ввода контактной информации. // -Процедура НачалоВыбора(Форма, Элемент, Модифицированность = Истина, СтандартнаяОбработка = Ложь) Экспорт +Процедура НачалоВыбора(Форма, Элемент, Модифицированность = Истина, СтандартнаяОбработка = Ложь, ПараметрыОткрытия = Неопределено) Экспорт СтандартнаяОбработка = Ложь; Результат = Новый Структура; @@ -100,26 +103,33 @@ ТекстРедактирования = ?(ЗначениеЗаполнено(ДанныеСтроки.ЗначенияПолей), Форма[Элемент.Имя], ""); КонецЕсли; - ПараметрыОткрытия = Новый Структура; - ПараметрыОткрытия.Вставить("ВидКонтактнойИнформации", ДанныеСтроки.Вид); - ПараметрыОткрытия.Вставить("ЗначенияПолей", ДанныеСтроки.ЗначенияПолей); - ПараметрыОткрытия.Вставить("Представление", ТекстРедактирования); - ПараметрыОткрытия.Вставить("ТолькоПросмотр", Форма.ТолькоПросмотр); - ПараметрыОткрытия.Вставить("КонтактнаяИнформацияОписаниеДополнительныхРеквизитов", Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов); + ПараметрыОткрытияФормы = Новый Структура; + ПараметрыОткрытияФормы.Вставить("ВидКонтактнойИнформации", ДанныеСтроки.Вид); + ПараметрыОткрытияФормы.Вставить("ЗначенияПолей", ДанныеСтроки.ЗначенияПолей); + ПараметрыОткрытияФормы.Вставить("Представление", ТекстРедактирования); + ПараметрыОткрытияФормы.Вставить("ТолькоПросмотр", Форма.ТолькоПросмотр); + ПараметрыОткрытияФормы.Вставить("КонтактнаяИнформацияОписаниеДополнительныхРеквизитов", Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов); Если Не ЭтоТабличнаяЧасть Тогда - ПараметрыОткрытия.Вставить("Комментарий", ДанныеСтроки.Комментарий); + ПараметрыОткрытияФормы.Вставить("Комментарий", ДанныеСтроки.Комментарий); + КонецЕсли; + + Если ЗначениеЗаполнено(ПараметрыОткрытия) И ТипЗнч(ПараметрыОткрытия) = Тип("Структура") Тогда + Для каждого ЗначениеИКлюч Из ПараметрыОткрытия Цикл + ПараметрыОткрытияФормы.Вставить(ЗначениеИКлюч.Ключ, ЗначениеИКлюч.Значение); + КонецЦикла; КонецЕсли; Оповещение = Новый ОписаниеОповещения("ПредставлениеНачалоВыбораЗавершение", ЭтотОбъект, Новый Структура); Оповещение.ДополнительныеПараметры.Вставить("ДанныеЗаполнения", ДанныеЗаполнения); Оповещение.ДополнительныеПараметры.Вставить("ЭтоТабличнаяЧасть", ЭтоТабличнаяЧасть); + Оповещение.ДополнительныеПараметры.Вставить("ИмяЭлементаРазмещения", ДанныеСтроки.ИмяЭлементаДляРазмещения); Оповещение.ДополнительныеПараметры.Вставить("ДанныеСтроки", ДанныеСтроки); Оповещение.ДополнительныеПараметры.Вставить("Элемент", Элемент); Оповещение.ДополнительныеПараметры.Вставить("Результат", Результат); Оповещение.ДополнительныеПараметры.Вставить("Форма", Форма); - ОткрытьФормуКонтактнойИнформации(ПараметрыОткрытия,, Оповещение); + ОткрытьФормуКонтактнойИнформации(ПараметрыОткрытияФормы,, Оповещение); КонецПроцедуры // Обработчик события Очистка поля формы контактной информации. @@ -152,11 +162,14 @@ // Процедура ВыполнитьКоманду(Знач Форма, Знач ИмяКоманды) Экспорт - Если ИмяКоманды = "КонтактнаяИнформацияДобавитьПолеВвода" Тогда + Если СтрНачинаетсяС(ИмяКоманды, "КонтактнаяИнформацияДобавитьПолеВвода") Тогда + + ИмяЭлементаДляРазмещения = Сред(ИмяКоманды, СтрДлина("КонтактнаяИнформацияДобавитьПолеВвода") + 1); Оповещение = Новый ОписаниеОповещения("КонтактнаяИнформацияДобавитьПолеВводаЗавершение", ЭтотОбъект, Новый Структура); - Оповещение.ДополнительныеПараметры.Вставить("Форма", Форма); - Форма.ПоказатьВыборИзМеню(Оповещение, Форма.ПараметрыКонтактнойИнформации.СписокДобавляемыхЭлементов, Форма.Элементы.КонтактнаяИнформацияДобавитьПолеВвода); + Оповещение.ДополнительныеПараметры.Вставить("ИмяЭлементаДляРазмещения", ИмяЭлементаДляРазмещения); + Оповещение.ДополнительныеПараметры.Вставить("ИмяКоманды", ИмяКоманды); + Форма.ПоказатьВыборИзМеню(Оповещение, Форма.ПараметрыКонтактнойИнформации[ИмяЭлементаДляРазмещения].СписокДобавляемыхЭлементов, Форма.Элементы[ИмяКоманды]); Возврат; ИначеЕсли СтрНачинаетсяС(ИмяКоманды, "Команда") Тогда @@ -170,6 +183,8 @@ Результат = Новый Структура("ИмяРеквизита", ИмяРеквизита); НайденнаяСтрока = Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Результат)[0]; ТипКонтактнойИнформации = НайденнаяСтрока.Тип; + ИмяЭлементаДляРазмещения = НайденнаяСтрока.ИмяЭлементаДляРазмещения; + Результат.Вставить("ИмяЭлементаДляРазмещения", ИмяЭлементаДляРазмещения); Если КомандаКонтекстногоМеню <> Неопределено Тогда Если КомандаКонтекстногоМеню.Команда = "Комментарий" Тогда @@ -201,25 +216,28 @@ ИначеЕсли ТипКонтактнойИнформации = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты") Тогда АдресПочты = Форма.Элементы[ИмяРеквизита].ТекстРедактирования; - СоздатьЭлектронноеПисьмо("", АдресПочты, ТипКонтактнойИнформации); + ИсточникКонтактнойИнформации = Форма.ПараметрыКонтактнойИнформации[ИмяЭлементаДляРазмещения].Владелец; + СоздатьЭлектронноеПисьмо("", АдресПочты , ТипКонтактнойИнформации, ИсточникКонтактнойИнформации); ИначеЕсли ТипКонтактнойИнформации = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Телефон") Тогда + МожноОтправлятьSMS = Форма.ПараметрыКонтактнойИнформации[ИмяЭлементаДляРазмещения].МожноОтправлятьSMS; Параметры = Новый Структура("НомерТелефона, ТипКонтактнойИнформации, ИсточникКонтактнойИнформации"); Параметры.НомерТелефона = Форма.Элементы[ИмяРеквизита].ТекстРедактирования; Параметры.ТипКонтактнойИнформации = ТипКонтактнойИнформации; - Параметры.ИсточникКонтактнойИнформации = Форма.ПараметрыКонтактнойИнформации.Владелец; + Параметры.ИсточникКонтактнойИнформации = Форма.ПараметрыКонтактнойИнформации[ИмяЭлементаДляРазмещения].Владелец; Если ПустаяСтрока(Параметры.НомерТелефона) Тогда - ПоказатьПредупреждение(,НСтр("ru = 'Для совершения звонка или отправки SMS требуется ввести номер телефона.'")); - Возврат; - КонецЕсли; - - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ОтправкаSMS") Тогда + Если МожноОтправлятьSMS Тогда + ТекстПредупреждения = НСтр("ru = 'Для совершения звонка или отправки SMS требуется ввести номер телефона.'"); + Иначе + ТекстПредупреждения = НСтр("ru = 'Для совершения звонка требуется ввести номер телефона.'"); + КонецЕсли; + ПоказатьПредупреждение(, ТекстПредупреждения); + ИначеЕсли МожноОтправлятьSMS Тогда Список = Новый СписокЗначений; Список.Добавить("Позвонить", НСтр("ru = 'Позвонить'"),, БиблиотекаКартинок.Позвонить); Список.Добавить("ОтправитьSMS", НСтр("ru = 'Отправить SMS...'"),, БиблиотекаКартинок.ОтправитьSMS); ОповещениеМеню = Новый ОписаниеОповещения("ПослеВыбораИзМенюТелефон", ЭтотОбъект, Параметры); - Форма.ПоказатьВыборИзМеню(ОповещениеМеню, Список, Форма.Элементы[ИмяКоманды]); Иначе ПозвонитьПоТелефону(Параметры.НомерТелефона); @@ -312,18 +330,44 @@ // Конструктор для структуры параметров открытия формы контактной информации. // // Параметры: -// ВидКонтактнойИнформации - СправочникСсылка.ВидыКонтактнойИнформации - вид редактируемой информации, -// Значение - Строка - сериализованное значение полей контактной информации. -// Представление - Строка - необязательное представление. -// +// ВидКонтактнойИнформации - СправочникСсылка.ВидыКонтактнойИнформации - Вид редактируемой контактной информации. +// Значение - Строка - Сериализованное значение полей контактной информации в формате XML. +// Представление - Строка - Необязательный. Представление контактной информации. +// ТипКонтактнойИнформации - ПеречислениеСсылка.ТипыКонтактнойИнформации - Необязательный. Тип контактной информации. +// Если указан, то в возвращаемую структуру добавляются поля соответствующие типу. +// Возвращаемое значение: +// ВидКонтактнойИнформации - СправочникСсылка.ВидыКонтактнойИнформации - Вид редактируемой информации, +// Значение - Строка - Сериализованное значение полей контактной информации. +// Представление - Строка - Необязательное представление. +// ТипКонтактнойИнформации - ПеречислениеСсылка.ТипыКонтактнойИнформации - Тип контактной информации, если был указан в параметрах. +// Страна - Строка - Страна мира, только если указан тип контактной информации Адрес. +// Регион - Строка - Значение поле региона, только если указан тип контактной информации Адрес. Актуально для стран ЕАЭС. +// Индекс - Строка - Страна мира, только если указан тип контактной информации Адрес. +// КодСтраны - Строка - Телефонный код страны мира, только если указан тип контактной информации Телефон. +// КодГорода - Строка - Телефонный код города, только если указан тип контактной информации Телефон. +// НомерТелефона - Строка - Телефонный номер, только если указан тип контактной информации Телефон. +// Добавочный - Строка - Добавочный телефонный номер, только если указан тип контактной информации Телефон. Функция ПараметрыФормыКонтактнойИнформации(ВидКонтактнойИнформации, Значение, - Представление = Неопределено, Комментарий = Неопределено) Экспорт + Представление = Неопределено, Комментарий = Неопределено, ТипКонтактнойИнформации = Неопределено) Экспорт ПараметрыФормы = Новый Структура; ПараметрыФормы.Вставить("ВидКонтактнойИнформации", ВидКонтактнойИнформации); ПараметрыФормы.Вставить("ЗначенияПолей", Значение); ПараметрыФормы.Вставить("Представление", Представление); ПараметрыФормы.Вставить("Комментарий", Комментарий); + Если ТипКонтактнойИнформации <> Неопределено Тогда + ПараметрыФормы.Вставить("ТипКонтактнойИнформации", ТипКонтактнойИнформации); + Если ТипКонтактнойИнформации = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Адрес") Тогда + ПараметрыФормы.Вставить("Страна"); + ПараметрыФормы.Вставить("Регион"); + ПараметрыФормы.Вставить("Индекс"); + ИначеЕсли ТипКонтактнойИнформации = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Телефон") Тогда + ПараметрыФормы.Вставить("КодСтраны"); + ПараметрыФормы.Вставить("КодГорода"); + ПараметрыФормы.Вставить("НомерТелефона"); + ПараметрыФормы.Вставить("Добавочный"); + КонецЕсли; + КонецЕсли; Возврат ПараметрыФормы; @@ -336,7 +380,8 @@ // Владелец - Произвольный - параметр для открываемой формы. // Оповещение - ОписаниеОповещения - для обработки закрытия формы. // -// Возвращаемое значение: необходимая форма. +// Возвращаемое значение: +// УправляемаяФорма - необходимая форма. // Функция ОткрытьФормуКонтактнойИнформации(Параметры, Владелец = Неопределено, Оповещение = Неопределено) Экспорт Параметры.Вставить("ОткрытаПоСценарию", Истина); @@ -346,13 +391,14 @@ // Создает письмо по контактной информации. // // Параметры: -// ЗначенияПолей - Строка, Структура, Соответствие, Список значений - контактная информация. +// ЗначенияПолей - Строка, Структура, Соответствие, СписокЗначений - контактная информация. // Представление - Строка - представление. Используется, если невозможно определить представление из параметра. // ЗначенияПолей (отсутствие поля "Представление"). -// ОжидаемыйВид - СправочникСсылка.ВидыКонтактнойИнформации, ПеречислениеСсылка.ТипыКонтактнойИнформации, Структура +// ОжидаемыйВид - СправочникСсылка.ВидыКонтактнойИнформации, ПеречислениеСсылка.ТипыКонтактнойИнформации, Структура - // Используется для определения типа, если его невозможно вычислить по полю ЗначенияПолей. +// ИсточникКонтактнойИнформации - ЛюбаяСсылка - Ссылка на источник являющийся владельцем адрес электронной почты. // -Процедура СоздатьЭлектронноеПисьмо(Знач ЗначенияПолей, Знач Представление = "", ОжидаемыйВид = Неопределено) Экспорт +Процедура СоздатьЭлектронноеПисьмо(Знач ЗначенияПолей, Знач Представление = "", ОжидаемыйВид = Неопределено, ИсточникКонтактнойИнформации = Неопределено) Экспорт КонтактнаяИнформация = УправлениеКонтактнойИнформациейСлужебныйВызовСервера.ПривестиКонтактнуюИнформациюXML( Новый Структура("ЗначенияПолей, Представление, ВидКонтактнойИнформации", ЗначенияПолей, Представление, ОжидаемыйВид)); @@ -376,9 +422,11 @@ Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСПочтовымиСообщениями") Тогда МодульРаботаСПочтовымиСообщениямиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РаботаСПочтовымиСообщениямиКлиент"); - ПараметрыОтправки = Новый Структура("Получатель", АдресПочты); + Получатель = Новый Массив; + Получатель.Добавить(Новый Структура("Адрес, Представление, ИсточникКонтактнойИнформации", АдресПочты, Строка(ИсточникКонтактнойИнформации), ИсточникКонтактнойИнформации)); + ПараметрыОтправки = Новый Структура("Получатель", Получатель); МодульРаботаСПочтовымиСообщениямиКлиент.СоздатьНовоеПисьмо(ПараметрыОтправки); - Возврат; + Возврат; КонецЕсли; // Нет подсистемы почты, запускаем системное. @@ -391,7 +439,7 @@ // Создает письмо по контактной информации. // // Параметры: -// ЗначенияПолей - Строка, Структура, Соответствие, Список значений - контактная информация. +// ЗначенияПолей - Строка, Структура, Соответствие, СписокЗначений - контактная информация. // Представление - Строка - представление. Используется, если невозможно определить представление из параметра. // ЗначенияПолей (отсутствие поля "Представление"). // ОжидаемыйВид - СправочникСсылка.ВидыКонтактнойИнформации, ПеречислениеСсылка.ТипыКонтактнойИнформации, Структура @@ -438,7 +486,7 @@ // Открывает ссылку по контактной информации. // // Параметры: -// ЗначенияПолей - Строка, Структура, Соответствие, Список значений - контактная информация. +// ЗначенияПолей - Строка, Структура, Соответствие, СписокЗначений - контактная информация. // Представление - Строка - представление. Используется, если невозможно определить представление из параметра. // ЗначенияПолей (отсутствие поля "Представление"). // ОжидаемыйВид - СправочникСсылка.ВидыКонтактнойИнформации, ПеречислениеСсылка.ТипыКонтактнойИнформации, Структура @@ -468,14 +516,14 @@ КонецЕсли; КонецПроцедуры -// Показывает адрес в браузере на картах Яндекс или Google +// Показывает адрес в браузере на картах Яндекс или Google. // // Параметры: -// Адрес - Строка - Текстовое представление адреса +// Адрес - Строка - Текстовое представление адреса. // ИмяКартографическогоСервиса - Строка - Имя картографического сервиса в котором необходимо показать адрес: Яндекс.Карты или GoogleMaps. // Процедура ПоказатьАдресНаКарте(Адрес, ИмяКартографическогоСервиса) Экспорт - АдресКодированный = Адрес; + АдресКодированный = URLEncode(Адрес); Если ИмяКартографическогоСервиса = "GoogleMaps" Тогда СтрокаЗапуска = "https://maps.google.ru/?q=" + АдресКодированный; Иначе @@ -486,13 +534,17 @@ КонецПроцедуры -// Отображает форму с историей изменения контактной информации +// Отображает форму с историей изменения контактной информации. +// +// Параметры: +// Форма - УправляемаяФорма - Форма владельца контактной информации. +// ПараметрыКонтактнойИнформации - Структура -параметры контактной информации. // Процедура ОткрытьФормуИсторииИзменений(Форма, ПараметрыКонтактнойИнформации) Экспорт Результат = Новый Структура("Вид", ПараметрыКонтактнойИнформации.Вид); НайденныеСтроки = Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Результат); - + СписокКонтактнойИнформации = Новый Массив; Для каждого СтрокаКонтактнойИнформации Из НайденныеСтроки Цикл КонтактнаяИнформация = Новый Структура("Представление, ЗначенияПолей, ДействуетС"); @@ -503,37 +555,77 @@ ДополнительныеПараметры = Новый Структура("Форма"); ДополнительныеПараметры.Вставить("ИмяЭлемента", ПараметрыКонтактнойИнформации.ИмяРеквизита); ДополнительныеПараметры.Вставить("Вид", ПараметрыКонтактнойИнформации.Вид); + ДополнительныеПараметры.Вставить("ИмяЭлементаДляРазмещения", ПараметрыКонтактнойИнформации.ИмяЭлементаДляРазмещения); ДополнительныеПараметры.Форма = Форма; ПараметрыФормы = Новый Структура("СписокКонтактнойИнформации", СписокКонтактнойИнформации); ПараметрыФормы.Вставить("ВидКонтактнойИнформации", ПараметрыКонтактнойИнформации.Вид); ПараметрыФормы.Вставить("ТолькоПросмотр", Форма.ТолькоПросмотр); - + ОповещениеОЗакрытие = Новый ОписаниеОповещения("ПослеЗакрытияФормыИстории", УправлениеКонтактнойИнформациейКлиент, ДополнительныеПараметры); ОткрытьФорму("Обработка.ВводКонтактнойИнформации.Форма.ИсторияКонтактнойИнформации", ПараметрыФормы, Форма,,,, ОповещениеОЗакрытие); КонецПроцедуры +#Область УстаревшиеПроцедурыИФункции + // Устарела. Следует использовать ПриИзменении(). +// Обработчик события ПриИзменении поля формы контактной информации. +// Вызывается из подключаемых действий при внедрении подсистемы "Контактная информация". +// +// Параметры: +// Форма - УправляемаяФорма - Форма владельца контактной информации. +// Элемент - ПолеФормы - Элемент формы, содержащий представление контактной информации. +// ЭтоТабличнаяЧасть - Булево - Флаг того, что элемент является частью таблицы формы. // Процедура ПредставлениеПриИзменении(Форма, Элемент, ЭтоТабличнаяЧасть = Ложь) Экспорт ПриИзменении(Форма, Элемент, ЭтоТабличнаяЧасть); КонецПроцедуры -// Устарела. Следует использовать НачалоВыбора() +// Устарела. Следует использовать НачалоВыбора(). +// Обработчик события НачалоВыбора поля формы контактной информации. +// Вызывается из подключаемых действий при внедрении подсистемы "Контактная информация". +// +// Параметры: +// Форма - УправляемаяФорма - Форма владельца контактной информации. +// Элемент - ПолеФормы - Элемент формы, содержащий представление контактной информации. +// Модифицированность - Булево - Устанавливаемый флаг модифицированности формы. +// СтандартнаяОбработка - Булево - Устанавливаемый флаг стандартной обработки события формы. +// +// Возвращаемое значение: +// Неопределено - не используется, оставлено для обратной совместимости. // Функция ПредставлениеНачалоВыбора(Форма, Элемент, Модифицированность = Истина, СтандартнаяОбработка = Ложь) Экспорт НачалоВыбора(Форма, Элемент, Модифицированность, СтандартнаяОбработка); Возврат Неопределено; КонецФункции -// Устарела. Следует использовать Очистка() +// Устарела. Следует использовать Очистка(). +// Обработчик события Очистка поля формы контактной информации. +// Вызывается из подключаемых действий при внедрении подсистемы "Контактная информация". +// +// Параметры: +// Форма - УправляемаяФорма - Форма владельца контактной информации. +// ИмяРеквизита - Строка - Имя реквизита формы, связанного с представление контактной информации. +// +// Возвращаемое значение: +// Неопределено - не используется, оставлено для обратной совместимости. +// Функция ПредставлениеОчистка(Форма, ИмяРеквизита) Экспорт Очистка(Форма, ИмяРеквизита); Возврат Неопределено; КонецФункции -// Устарела. Следует использовать ВыполнитьКоманду() +// Устарела. Следует использовать ВыполнитьКоманду(). +// Обработчик команды, связанной с контактной информации (написать письмо, открыть адрес, и т.п.). +// Вызывается из подключаемых действий при внедрении подсистемы "Контактная информация". +// +// Параметры: +// Форма - УправляемаяФорма - Форма владельца контактной информации. +// ИмяКоманды - Строка - Имя автоматически сгенерированной команды действия. +// +// Возвращаемое значение: +// Неопределено - не используется, оставлено для обратной совместимости. // Функция ПодключаемаяКоманда(Форма, ИмяКоманды) Экспорт ВыполнитьКоманду(Форма, ИмяКоманды); @@ -542,6 +634,8 @@ #КонецОбласти +#КонецОбласти + #Область СлужебныйПрограммныйИнтерфейс // Завершение немодальных диалогов. @@ -567,14 +661,23 @@ ЭтоИсторическаяКонтактнаяИнформация = Ложь; ПараметрыОбновления = Новый Структура; - Для Каждого СтрокаКонтактнойИнформации Из Результат Цикл + Для Каждого СтрокаКонтактнойИнформации Из Результат.История Цикл ДанныеСтроки = Форма.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); ЗаполнитьЗначенияСвойств(ДанныеСтроки, СтрокаКонтактнойИнформации); Если НЕ СтрокаКонтактнойИнформации.ЭтоИсторическаяКонтактнаяИнформация Тогда - Форма[ДополнительныеПараметры.ИмяЭлемента] = СтрокаКонтактнойИнформации.Представление; + Если ПустаяСтрока(СтрокаКонтактнойИнформации.Представление) + И Результат.Свойство("РедактированиеТолькоВДиалоге") + И Результат.РедактированиеТолькоВДиалоге Тогда + Представление = УправлениеКонтактнойИнформациейКлиентСервер.ТекстПустогоАдресаВВидеГиперссылки(); + Иначе + Представление = СтрокаКонтактнойИнформации.Представление; + КонецЕсли; + Форма[ДополнительныеПараметры.ИмяЭлемента] = Представление; ДанныеСтроки.ИмяРеквизита = ДополнительныеПараметры.ИмяЭлемента; + ДанныеСтроки.ИмяЭлементаДляРазмещения = ДополнительныеПараметры.ИмяЭлементаДляРазмещения; Если ДанныеСтроки.Комментарий <> СтарыйКомментарий Тогда - ПараметрыОбновления.Вставить("ЭтоДобавлениеКомментария", ЗначениеЗаполнено(ДанныеСтроки.Комментарий)); + ПараметрыОбновления.Вставить("ЭтоДобавлениеКомментария", Истина); + ПараметрыОбновления.Вставить("ИмяЭлементаДляРазмещения", ДополнительныеПараметры.ИмяЭлементаДляРазмещения); ПараметрыОбновления.Вставить("ИмяРеквизита", ДополнительныеПараметры.ИмяЭлемента); КонецЕсли; КонецЕсли; @@ -599,6 +702,8 @@ Форма = ДополнительныеПараметры.Форма; ТекстПредставления = РезультатЗакрытия.Представление; + ЗначенияПолей = РезультатЗакрытия.КонтактнаяИнформация; + Комментарий = РезультатЗакрытия.Комментарий; Если НоваяСтрока.Свойство("ХранитьИсториюИзменений") И НоваяСтрока.ХранитьИсториюИзменений Тогда КонтактнаяИнформацияОписаниеДополнительныхРеквизитов = ДанныеЗаполнения.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов; @@ -613,43 +718,48 @@ ЭтоИсторическаяКонтактнаяИнформация = Ложь; ПоследниеЗначениеПолей = ""; - Если НайденныеСтроки.Количество() = 1 И ПустаяСтрока(НайденныеСтроки[0].ЗначенияПолей) Тогда - // Новая контактная информация (первый адрес). - НоваяКонтактнаяИнформация = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); - ЗаполнитьЗначенияСвойств(НоваяКонтактнаяИнформация, РезультатЗакрытия); - НоваяКонтактнаяИнформация.ЗначенияПолей = РезультатЗакрытия.КонтактнаяИнформация; - НоваяКонтактнаяИнформация.ИмяРеквизита = Элемент.Имя; - НоваяКонтактнаяИнформация.ХранитьИсториюИзменений = Истина; - НоваяКонтактнаяИнформация.ЭтоИсторическаяКонтактнаяИнформация = Ложь; - Иначе + Если НайденныеСтроки.Количество() > 1 Тогда + + СтрокаСДействующимАдресом = Неопределено; + МинимальнаяДата = Неопределено; + Для Каждого СтрокаКонтактнойИнформации Из НайденныеСтроки Цикл - Если НЕ СтрокаКонтактнойИнформации.ЭтоИсторическаяКонтактнаяИнформация Тогда - Если СтрСравнить(СтрокаКонтактнойИнформации.ЗначенияПолей, РезультатЗакрытия.КонтактнаяИнформация) <> 0 Тогда - Если СтрокаКонтактнойИнформации.ДействуетС < НачалоДня(ОбщегоНазначенияКлиент.ДатаСеанса()) Тогда - // Контактная информация стала историей. - НоваяКонтактнаяИнформация = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); - ЗаполнитьЗначенияСвойств(НоваяКонтактнаяИнформация, СтрокаКонтактнойИнформации); - НоваяКонтактнаяИнформация.ЭтоИсторическаяКонтактнаяИнформация = Истина; - НоваяКонтактнаяИнформация.ИмяРеквизита= ""; - КонецЕсли; - // Новая контактная информация. - НоваяКонтактнаяИнформация = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); - ЗаполнитьЗначенияСвойств(НоваяКонтактнаяИнформация, РезультатЗакрытия); - НоваяКонтактнаяИнформация.ЗначенияПолей = РезультатЗакрытия.КонтактнаяИнформация; - НоваяКонтактнаяИнформация.ДействуетС = НачалоДня(ОбщегоНазначенияКлиент.ДатаСеанса()); - НоваяКонтактнаяИнформация.ИмяРеквизита = Элемент.Имя; - НоваяКонтактнаяИнформация.ХранитьИсториюИзменений = Истина; - НоваяКонтактнаяИнформация.ЭтоИсторическаяКонтактнаяИнформация = Ложь; - Иначе - НоваяКонтактнаяИнформация = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); - ЗаполнитьЗначенияСвойств(НоваяКонтактнаяИнформация, СтрокаКонтактнойИнформации); - КонецЕсли; - Иначе - НоваяКонтактнаяИнформация = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); - ЗаполнитьЗначенияСвойств(НоваяКонтактнаяИнформация, СтрокаКонтактнойИнформации); + + НоваяКонтактнаяИнформация = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); + ЗаполнитьЗначенияСвойств(НоваяКонтактнаяИнформация, СтрокаКонтактнойИнформации); + + Если СтрокаСДействующимАдресом = Неопределено + ИЛИ СтрокаКонтактнойИнформации.ДействуетС > СтрокаСДействующимАдресом.ДействуетС Тогда + СтрокаСДействующимАдресом = СтрокаКонтактнойИнформации; КонецЕсли; + Если МинимальнаяДата = Неопределено + ИЛИ СтрокаКонтактнойИнформации.ДействуетС < МинимальнаяДата Тогда + МинимальнаяДата = СтрокаКонтактнойИнформации.ДействуетС; + КонецЕсли; + КонецЦикла; + + // Исправление некорректных адресов, без первоначальной даты заполнения + Если ЗначениеЗаполнено(МинимальнаяДата) Тогда + Отбор = Новый Структура("ДействуетС", МинимальнаяДата); + СтрокиСМинимальнойДатой = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Отбор); + Если СтрокиСМинимальнойДатой.Количество() > 0 Тогда + СтрокиСМинимальнойДатой[0].ДействуетС = Дата(1, 1, 1); + КонецЕсли; + КонецЕсли; + + Если СтрокаСДействующимАдресом <> Неопределено Тогда + ТекстПредставления = СтрокаСДействующимАдресом.Представление; + ЗначенияПолей = СтрокаСДействующимАдресом.ЗначенияПолей; + Комментарий = СтрокаСДействующимАдресом.Комментарий; + КонецЕсли; + + ИначеЕсли НайденныеСтроки.Количество() = 1 Тогда + НоваяКонтактнаяИнформация = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); + ЗаполнитьЗначенияСвойств(НоваяКонтактнаяИнформация, НайденныеСтроки[0],, "ДействуетС"); + НоваяСтрока.ДействуетС = Дата(1, 1, 1); КонецЕсли; + КонецЕсли; Если ДополнительныеПараметры.ЭтоТабличнаяЧасть Тогда @@ -671,10 +781,11 @@ КонецЕсли; КонецЕсли; + Результат.Вставить("ИмяЭлементаДляРазмещения", ДополнительныеПараметры.ИмяЭлементаРазмещения); НоваяСтрока.Представление = ТекстПредставления; - НоваяСтрока.ЗначенияПолей = РезультатЗакрытия.КонтактнаяИнформация; - НоваяСтрока.Комментарий = РезультатЗакрытия.Комментарий; + НоваяСтрока.ЗначенияПолей = ЗначенияПолей; + НоваяСтрока.Комментарий = Комментарий; КонецЕсли; Если РезультатЗакрытия.Свойство("АдресВВидеГиперссылки") @@ -695,7 +806,10 @@ Возврат; КонецЕсли; - Результат = Новый Структура("ДобавляемыйВид", ВыбранныйЭлемент.Значение); + Результат = Новый Структура(); + Результат.Вставить("ДобавляемыйВид", ВыбранныйЭлемент.Значение); + Результат.Вставить("ИмяЭлементаДляРазмещения", ДополнительныеПараметры.ИмяЭлементаДляРазмещения); + Результат.Вставить("ИмяКоманды", ДополнительныеПараметры.ИмяКоманды); ОбновитьКонтактнуюИнформациюФормы(ДополнительныеПараметры.Форма, Результат); КонецПроцедуры @@ -729,7 +843,8 @@ Параметры.Вставить("Родитель", ИдентификаторНаселенногоПункта); Параметры.Вставить("ПредставлениеУлицы", ТекущееЗначение); Параметры.Вставить("Уровень", 7); - Параметры.Вставить("СкрыватьНеактуальныеАдреса", СкрыватьНеактуальныеАдреса); + Параметры.Вставить("СкрыватьНеактуальныеАдреса", СкрыватьНеактуальныеАдреса); + Параметры.Вставить("НаселенныйПунктДетально", ДополнительныеПараметры.НаселенныйПунктДетально); ОткрытьФорму("Обработка.ВводКонтактнойИнформации.Форма.ВыборУлицы", Параметры, Владелец, ,,,, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); @@ -747,19 +862,25 @@ Возврат; КонецЕсли; - ТипПараметраРегиона = ТипЗнч(Регион); - ПараметрыЗагрузки = Новый Структура; - - Если ТипПараметраРегиона = Тип("Число") Тогда - ПараметрыЗагрузки.Вставить("КодРегионаДляЗагрузки", Регион); + НеЗагружатьАдресныйКлассификатор = ПараметрыПриложения.Получить("АдресныйКлассификатор.НеЗагружатьКлассификатор"); + Если НеЗагружатьАдресныйКлассификатор = Неопределено ИЛИ НеЗагружатьАдресныйКлассификатор = Ложь Тогда + ТипПараметраРегиона = ТипЗнч(Регион); + ПараметрыФормы = Новый Структура; + ПараметрыЗагрузки = Новый Структура; + ПараметрыФормы.Вставить("ТекстПредупреждения", Текст); - ИначеЕсли ТипПараметраРегиона = Тип("Строка") Тогда - ПараметрыЗагрузки.Вставить("НазваниеРегионаДляЗагрузки", Регион); + Если ТипПараметраРегиона = Тип("Число") Тогда + ПараметрыЗагрузки.Вставить("КодРегионаДляЗагрузки", Регион); + + ИначеЕсли ТипПараметраРегиона = Тип("Строка") Тогда + ПараметрыЗагрузки.Вставить("НазваниеРегиона", Регион); + ПараметрыФормы.Вставить("НазваниеРегиона", Регион); + КонецЕсли; + + Оповещение = Новый ОписаниеОповещения("ПредложениеЗагрузкиКлассификатораЗавершение", ЭтотОбъект, ПараметрыЗагрузки); + ОткрытьФорму("Обработка.ВводКонтактнойИнформации.Форма.ЗагрузкаАдресногоКлассификатора", ПараметрыФормы, ЭтотОбъект,,,, Оповещение, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); КонецЕсли; - Оповещение = Новый ОписаниеОповещения("ПредложениеЗагрузкиКлассификатораЗавершение", ЭтотОбъект, ПараметрыЗагрузки); - ОткрытьФорму("Обработка.ВводКонтактнойИнформации.Форма.ЗагрузкаАдресногоКлассификатора", ПараметрыЗагрузки, ЭтотОбъект,,,, Оповещение, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); - КонецПроцедуры Процедура ПредложениеЗагрузкиКлассификатораЗавершение(Знач РезультатВопроса, Знач ДополнительныеПараметры) Экспорт @@ -782,10 +903,10 @@ КонецПроцедуры -// Страны ЕАЭС поддерживающие структурированный ввод +// Страны ЕАЭС поддерживающие структурированный ввод. // // Возвращаемое значение: -// Соответствие - Список стран +// Соответствие - Список стран. // Функция СтраныПоддерживающиеСтруктурированныйВвод() Экспорт СписокСтран = Новый Соответствие; @@ -801,8 +922,7 @@ // Завершение модального диалога создания письма. Процедура СоздатьПисьмоПоКонтактнойИнформацииЗавершение(Действие, АдресПочты) Экспорт - ОписаниеОповещения = Новый ОписаниеОповещения("СоздатьПисьмоПоКонтактнойИнформацииПослеЗапускаПриложения", ЭтотОбъект); - НачатьЗапускПриложения(ОписаниеОповещения, "mailto:" + АдресПочты); + ПерейтиПоНавигационнойСсылке("mailto:" + АдресПочты); КонецПроцедуры @@ -862,7 +982,7 @@ НомерТелефона = СтроковыеФункцииКлиентСервер.ЗаменитьОдниСимволыДругими("()_- ", НомерТелефона, ""); - // по умолчанию используем "tel" + // по умолчанию используем "tel". ИмяПротокола = "tel"; #Если НЕ ВебКлиент Тогда @@ -992,6 +1112,7 @@ Оповещение.ДополнительныеПараметры.Вставить("НайденнаяСтрока", НайденнаяСтрока); Оповещение.ДополнительныеПараметры.Вставить("ПредыдущийКомментарий", Комментарий); Оповещение.ДополнительныеПараметры.Вставить("Результат", Результат); + Оповещение.ДополнительныеПараметры.Вставить("ИмяЭлементаДляРазмещения", НайденнаяСтрока.ИмяЭлементаДляРазмещения); ОбщегоНазначенияКлиент.ПоказатьФормуРедактированияМногострочногоТекста(Оповещение, Комментарий, НСтр("ru = 'Комментарий'")); @@ -1014,8 +1135,12 @@ ИначеЕсли Не КомментарийБылПустой И КомментарийСталПустой Тогда ДополнительныеПараметры.Результат.Вставить("ЭтоДобавлениеКомментария", Ложь); Иначе - Элемент = ДополнительныеПараметры.Форма.Элементы[ДополнительныеПараметры.ИмяРеквизитаКомментария]; - Элемент.Заголовок = Комментарий; + Если ДополнительныеПараметры.Форма.Элементы.Найти(ДополнительныеПараметры.ИмяРеквизитаКомментария) <> Неопределено Тогда + Элемент = ДополнительныеПараметры.Форма.Элементы[ДополнительныеПараметры.ИмяРеквизитаКомментария]; + Элемент.Заголовок = Комментарий; + Иначе + ДополнительныеПараметры.Результат.Вставить("ЭтоДобавлениеКомментария", Истина); + КонецЕсли; КонецЕсли; ДополнительныеПараметры.Форма.Модифицированность = Истина; @@ -1047,7 +1172,7 @@ КонецФункции -// определение команды контекстного меню +// определение команды контекстного меню. Функция КомандаКонтекстногоМеню(ИмяКоманды) Результат = Новый Структура("Команда, НаправлениеПеремещения, ИмяРеквизита", Неопределено, 0, Неопределено); @@ -1082,10 +1207,6 @@ //////////////////////////////////////////////////////////////////////////////// // Обработчики условных вызовов в другие подсистемы. -Процедура СоздатьПисьмоПоКонтактнойИнформацииПослеЗапускаПриложения(КодВозврата, ДополнительныеПараметры) Экспорт - // Действие не требуется -КонецПроцедуры - // Проверяет, установлена ли программа телефонии на компьютер. // Проверка возможна только в тонком клиенте для Windows. // @@ -1099,22 +1220,22 @@ // Функция ПрограммаТелефонииУстановлена(ИмяПротокола = Неопределено) - Если НЕ ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда - Если ЗначениеЗаполнено(ИмяПротокола) Тогда - Возврат ?(ИмяПротоколаЗарегистрированоВРеестре(ИмяПротокола), ИмяПротокола, ""); - Иначе - СписокПротоколов = Новый Массив; - СписокПротоколов.Добавить("tel"); - СписокПротоколов.Добавить("sip"); - СписокПротоколов.Добавить("skype"); - Для каждого ИмяПротокола Из СписокПротоколов Цикл - Если ИмяПротоколаЗарегистрированоВРеестре(ИмяПротокола) Тогда - Возврат ИмяПротокола; - КонецЕсли; - КонецЦикла; - Возврат Неопределено; - КонецЕсли; + Если ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда + Если ЗначениеЗаполнено(ИмяПротокола) Тогда + Возврат ?(ИмяПротоколаЗарегистрированоВРеестре(ИмяПротокола), ИмяПротокола, ""); + Иначе + СписокПротоколов = Новый Массив; + СписокПротоколов.Добавить("tel"); + СписокПротоколов.Добавить("sip"); + СписокПротоколов.Добавить("skype"); + Для каждого ИмяПротокола Из СписокПротоколов Цикл + Если ИмяПротоколаЗарегистрированоВРеестре(ИмяПротокола) Тогда + Возврат ИмяПротокола; + КонецЕсли; + КонецЦикла; + Возврат Неопределено; КонецЕсли; + КонецЕсли; Возврат ""; КонецФункции @@ -1130,5 +1251,121 @@ Возврат Истина; КонецФункции +//////////////////////////////////////////////////////////////////////////////// +// Возвращает строку, в которой все не алфавитно-числовые символы (кроме -_.) +// заменены на знак процентов (%) с последующими двумя шестнадцатеричными цифрами и +// пробелами, кодированными как знаки плюс (+).Она кодируется тем же способом, что и +// post данные WWW-формы, то есть как в типе носителя application/x-www-form-urlencoded. + +Функция URLEncode(Строка) + Результат = ""; + НаборСимволов = "0123456789ABCDEF"; + Для НомерСимвола = 1 По СтрДлина(Строка) Цикл + КодСимвола = КодСимвола(Строка, НомерСимвола); + Символ = Сред(Строка, НомерСимвола, 1); + + // пропускаем A..Z, a..z, 0..9 + Если Найти("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", Символ) > 0 Тогда // символы -_.!~*\() кодируем как небезопасные + Результат = Результат + Символ; + Продолжить; + КонецЕсли; + + Если Символ = " " Тогда + Результат = Результат + "+"; + Продолжить; + КонецЕсли; + + Если КодСимвола <= 127 Тогда // 0x007F + Результат = Результат + ПредставлениеБайта(КодСимвола); + ИначеЕсли КодСимвола <= 2047 Тогда // 0x07FF + Результат = Результат + + ПредставлениеБайта( + БинарныйМассивВЧисло( + ПобитовоеИли( + ЧислоВБинарныйМассив(192,8), + ЧислоВБинарныйМассив(Цел(КодСимвола / Pow(2,6)),8)))); // 0xc0 | (ch >> 6) + Результат = Результат + + ПредставлениеБайта( + БинарныйМассивВЧисло( + ПобитовоеИли( + ЧислоВБинарныйМассив(128,8), + ПобитовоеИ( + ЧислоВБинарныйМассив(КодСимвола,8), + ЧислоВБинарныйМассив(63,8))))); //0x80 | (ch & 0x3F) + Иначе // 0x7FF < ch <= 0xFFFF + Результат = Результат + + ПредставлениеБайта ( + БинарныйМассивВЧисло( + ПобитовоеИли( + ЧислоВБинарныйМассив(224,8), + ЧислоВБинарныйМассив(Цел(КодСимвола / Pow(2,12)),8)))); // 0xe0 | (ch >> 12) + + Результат = Результат + + ПредставлениеБайта( + БинарныйМассивВЧисло( + ПобитовоеИли( + ЧислоВБинарныйМассив(128,8), + ПобитовоеИ( + ЧислоВБинарныйМассив(Цел(КодСимвола / Pow(2,6)),8), + ЧислоВБинарныйМассив(63,8))))); //0x80 | ((ch >> 6) & 0x3F) + + Результат = Результат + + ПредставлениеБайта( + БинарныйМассивВЧисло( + ПобитовоеИли( + ЧислоВБинарныйМассив(128,8), + ПобитовоеИ( + ЧислоВБинарныйМассив(КодСимвола,8), + ЧислоВБинарныйМассив(63,8))))); //0x80 | (ch & 0x3F) + + КонецЕсли; + КонецЦикла; + Возврат Результат; +КонецФункции + +Функция ПредставлениеБайта(Знач Байт) + Результат = ""; + СтрокаСимволов = "0123456789ABCDEF"; + Для Счетчик = 1 По 2 Цикл + Результат = Сред(СтрокаСимволов, Байт % 16 + 1, 1) + Результат; + Байт = Цел(Байт / 16); + КонецЦикла; + Возврат "%" + Результат; +КонецФункции + +Функция ЧислоВБинарныйМассив(Знач Число, Знач ВсегоРазрядов = 32) + Результат = Новый Массив; + ТекущийРазряд = 0; + Пока ТекущийРазряд < ВсегоРазрядов Цикл + ТекущийРазряд = ТекущийРазряд + 1; + Результат.Добавить(Булево(Число % 2)); + Число = Цел(Число / 2); + КонецЦикла; + Возврат Результат; +КонецФункции + +Функция БинарныйМассивВЧисло(Массив) + Результат = 0; + Для НомерРазряда = -(Массив.Количество()-1) По 0 Цикл + Результат = Результат * 2 + Число(Массив[-НомерРазряда]); + КонецЦикла; + Возврат Результат; +КонецФункции + +Функция ПобитовоеИ(БинарныйМассив1, БинарныйМассив2) + Результат = Новый Массив; + Для Индекс = 0 По БинарныйМассив1.Количество()-1 Цикл + Результат.Добавить(БинарныйМассив1[Индекс] И БинарныйМассив2[Индекс]); + КонецЦикла; + Возврат Результат; +КонецФункции + +Функция ПобитовоеИли(БинарныйМассив1, БинарныйМассив2) + Результат = Новый Массив; + Для Индекс = 0 По БинарныйМассив1.Количество()-1 Цикл + Результат.Добавить(БинарныйМассив1[Индекс] Или БинарныйМассив2[Индекс]); + КонецЦикла; + Возврат Результат; +КонецФункции #КонецОбласти diff --git a/SSL/src/CommonModules/УправлениеКонтактнойИнформациейКлиентСервер/Module.bsl b/SSL/src/CommonModules/УправлениеКонтактнойИнформациейКлиентСервер/Module.bsl index ddce5dd83..b4b88f5dc 100644 --- a/SSL/src/CommonModules/УправлениеКонтактнойИнформациейКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/УправлениеКонтактнойИнформациейКлиентСервер/Module.bsl @@ -9,7 +9,7 @@ // // Параметры: // СтруктураАдреса - Структура - Адрес в виде структуры. Описание структур см. в функциях -// СведенияОбАдресе и ПредыдущаяСтруктураКонтактнойИнформацииXML +// СведенияОбАдресе и ПредыдущаяСтруктураКонтактнойИнформацииXML. // Представление - Строка - Представление адреса. // НаименованиеВида - Строка - Наименование вида. // @@ -212,7 +212,6 @@ #КонецОбласти - #Область СлужебныеПроцедурыИФункции // Возвращает код дополнительной части адреса для сериализации. @@ -386,7 +385,6 @@ Возврат Результат; КонецФункции - Функция СтрокаОбъектаАдресации(Код, Наименование, Тип = 0, Порядок = 0, КодФИАС = 0) СтруктураОбъектаАдресации = Новый Структура; @@ -401,7 +399,6 @@ КонецФункции - // Функция формирует полное наименование из массив адреса. // // Параметры: @@ -791,7 +788,7 @@ Значение = Неопределено; - Если Структура.Свойство(Ключ, Значение) Тогда + Если Структура.Свойство(Ключ, Значение) Тогда Возврат Строка(Значение); КонецЕсли; @@ -816,7 +813,6 @@ КонецЕсли; КонецПроцедуры - // Возвращает пустую структура адреса. // // Возвращаемое значение: @@ -859,6 +855,7 @@ КонецФункции + // Возвращает пустую структура телефона. // // Возвращаемое значение: diff --git a/SSL/src/CommonModules/УправлениеКонтактнойИнформациейСлужебный/Module.bsl b/SSL/src/CommonModules/УправлениеКонтактнойИнформациейСлужебный/Module.bsl index 0c51c75dc..2c084ef20 100644 --- a/SSL/src/CommonModules/УправлениеКонтактнойИнформациейСлужебный/Module.bsl +++ b/SSL/src/CommonModules/УправлениеКонтактнойИнформациейСлужебный/Module.bsl @@ -16,28 +16,6 @@ КонецПроцедуры -// Возвращает значение перечисления тип вида контактной информации. -// -// Параметры: -// ВидИнформации - СправочникСсылка.ВидыКонтактнойИнформации, Структура - источник данных. -// -Функция ТипВидаКонтактнойИнформации(Знач ВидИнформации) Экспорт - Результат = Неопределено; - - Тип = ТипЗнч(ВидИнформации); - Если Тип = Тип("ПеречислениеСсылка.ТипыКонтактнойИнформации") Тогда - Результат = ВидИнформации; - ИначеЕсли Тип = Тип("СправочникСсылка.ВидыКонтактнойИнформации") Тогда - Результат = ВидИнформации.Тип; - ИначеЕсли ВидИнформации <> Неопределено Тогда - Данные = Новый Структура("Тип"); - ЗаполнитьЗначенияСвойств(Данные, ВидИнформации); - Результат = Данные.Тип; - КонецЕсли; - - Возврат Результат; -КонецФункции - // Определить список справочников, доступных для загрузки с помощью подсистемы "Загрузка данных из файла". // // Параметры: @@ -87,7 +65,7 @@ Объекты.Вставить(Метаданные.Справочники.ВидыКонтактнойИнформации.ПолноеИмя(), "РеквизитыНеРедактируемыеВГрупповойОбработке"); КонецПроцедуры -// Возвращает сведения об адресах в виде структуру частей адреса и кодов КЛАДР +// Возвращает сведения об адресах в виде структуру частей адреса и кодов КЛАДР. // Функция СведенияОбАдресахВВидеСтруктуры(Адреса, ДополнительныеПараметры) Экспорт Результат = Новый Массив; @@ -97,7 +75,7 @@ Возврат Результат; КонецФункции -// Возвращает сведения об адресе в виде структуру частей адреса и кодов КЛАДР +// Возвращает сведения об адресе в виде структуру частей адреса и кодов КЛАДР. // Функция СведенияОбАдресеВВидеСтруктуры(Адрес, ДополнительныеПараметры) Экспорт @@ -111,9 +89,7 @@ ЗаполнятьКоды = Ложь; КонецЕсли; - ЗаполнятьКоды = Истина; НаименованиеСтраны = ""; - Результат = Новый Структура; Формат9Запятых = Ложь; @@ -201,7 +177,7 @@ ЭлементыАдреса.Вставить("Дом",""); ЭлементыАдреса.Вставить("Корпус", ""); ЭлементыАдреса.Вставить("Квартира", ""); - ЭлементыАдреса.Вставить("ДополнительнаяТерритория", НайтиДополнительныйЭлементАдреса(АдресРФ)); + ЭлементыАдреса.Вставить("ДополнительнаяТерритория", НайтиДополнительныйЭлементАдреса(АдресРФ).Значение); ЭлементыАдреса.Вставить("ЭлементДополнительнойТерритории", ДополнительныйЭлементАдреса(АдресРФ, УправлениеКонтактнойИнформациейКлиентСервер.XPathДополнительногоОбъектаАдресации(91))); КонецЕсли; @@ -216,41 +192,15 @@ Результат.Вставить("Индекс", ЭлементыАдреса.Получить("Индекс")); - Регион = УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(ЭлементыАдреса["Регион"]); - Результат.Вставить("Регион", ?(НаименованиеВключаетСокращение, ЭлементыАдреса["Регион"], Регион.Наименование)); - СоответствиеСокращений.Вставить(1, Регион.Сокращение); - - Округ = УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(ЭлементыАдреса["Округ"]); - Результат.Вставить("Округ", ?(НаименованиеВключаетСокращение, ЭлементыАдреса["Округ"], Округ.Наименование)); - СоответствиеСокращений.Вставить(2, Округ.Сокращение); - - Район = УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(ЭлементыАдреса["Район"]); - Результат.Вставить("Район", ?(НаименованиеВключаетСокращение, ЭлементыАдреса["Район"], Район.Наименование)); - СоответствиеСокращений.Вставить(3, Район.Сокращение); - - Город = УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(ЭлементыАдреса["Город"]); - Результат.Вставить("Город", ?(НаименованиеВключаетСокращение, ЭлементыАдреса["Город"], Город.Наименование)); - СоответствиеСокращений.Вставить(4, Город.Сокращение); - - ВнутригРайон = УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(ЭлементыАдреса["ВнутригРайон"]); - Результат.Вставить("ВнутригородскойРайон", ?(НаименованиеВключаетСокращение, ЭлементыАдреса["ВнутригРайон"], ВнутригРайон.Наименование)); - СоответствиеСокращений.Вставить(5, ВнутригРайон.Сокращение); - - НаселПункт = УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(ЭлементыАдреса["НаселенныйПункт"]); - Результат.Вставить("НаселенныйПункт", ?(НаименованиеВключаетСокращение, ЭлементыАдреса["НаселенныйПункт"], НаселПункт.Наименование)); - СоответствиеСокращений.Вставить(6, НаселПункт.Сокращение); - - Улица = УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(ЭлементыАдреса["Улица"]); - Результат.Вставить("Улица", ?(НаименованиеВключаетСокращение, ЭлементыАдреса["Улица"], Улица.Наименование)); - СоответствиеСокращений.Вставить(7, Улица.Сокращение); - - ДополнительнаяТерритория = УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(ЭлементыАдреса["ДополнительнаяТерритория"]); - Результат.Вставить("ДополнительнаяТерритория", ?(НаименованиеВключаетСокращение, ЭлементыАдреса["ДополнительнаяТерритория"], ДополнительнаяТерритория.Наименование)); - СоответствиеСокращений.Вставить(90, ДополнительнаяТерритория.Сокращение); - - ЭлементДополнительнойТерритории = УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(ЭлементыАдреса["ЭлементДополнительнойТерритории"]); - Результат.Вставить("ЭлементДополнительнойТерритории", ?(НаименованиеВключаетСокращение, ЭлементыАдреса["ЭлементДополнительнойТерритории"], ЭлементДополнительнойТерритории.Наименование)); - СоответствиеСокращений.Вставить(91, ЭлементДополнительнойТерритории.Сокращение); + ОпределитьСоответствиеСокращений(Результат, ЭлементыАдреса["Регион"], "Регион", СоответствиеСокращений, НаименованиеВключаетСокращение, 1); + ОпределитьСоответствиеСокращений(Результат, ЭлементыАдреса["Округ"], "Округ", СоответствиеСокращений, НаименованиеВключаетСокращение, 2); + ОпределитьСоответствиеСокращений(Результат, ЭлементыАдреса["Район"], "Район", СоответствиеСокращений, НаименованиеВключаетСокращение, 3); + ОпределитьСоответствиеСокращений(Результат, ЭлементыАдреса["Город"], "Город", СоответствиеСокращений, НаименованиеВключаетСокращение, 4); + ОпределитьСоответствиеСокращений(Результат, ЭлементыАдреса["ВнутригРайон"], "ВнутригородскойРайон", СоответствиеСокращений, НаименованиеВключаетСокращение, 5); + ОпределитьСоответствиеСокращений(Результат, ЭлементыАдреса["НаселенныйПункт"], "НаселенныйПункт", СоответствиеСокращений, НаименованиеВключаетСокращение, 6); + ОпределитьСоответствиеСокращений(Результат, ЭлементыАдреса["Улица"], "Улица", СоответствиеСокращений, НаименованиеВключаетСокращение, 7); + ОпределитьСоответствиеСокращений(Результат, ЭлементыАдреса["ДополнительнаяТерритория"], "ДополнительнаяТерритория", СоответствиеСокращений, НаименованиеВключаетСокращение, 90); + ОпределитьСоответствиеСокращений(Результат, ЭлементыАдреса["ЭлементДополнительнойТерритории"], "ЭлементДополнительнойТерритории", СоответствиеСокращений, НаименованиеВключаетСокращение, 91); Если ПолноеНаименованиеСокращений = Истина Тогда Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда @@ -304,11 +254,10 @@ ЗаполнитьКодыАдреса(Результат, Адрес); ОпределитьФорматКодов(Результат, АдресРФ); КонецЕсли; - // Из XDTO пустые значение приходят как Неопределено ЗаменитьВСтруктуреНеопределеноНаПустуюСтроку(Результат); + Возврат Результат; - КонецФункции Функция СтруктураАдресаПоФормату9Запятых(АдресВФормате9Запятых) @@ -451,27 +400,6 @@ КонецПроцедуры -// Обновляет поля контактной информации из ТаблицыЗначений (например объекта другого вида справочника). -// -// Параметры: -// Источник - ТаблицаЗначений - таблица значений с контактной информацией. -// Приемник - УправляемаяФорма - форма объекта. куда надо передать контактную информацию. -// -Процедура ЗаполнитьКонтактнуюИнформацию(Источник, Приемник) Экспорт - КоллекцияПолейКонтактнойИнформации = Приемник.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов; - - Для Каждого ЭлементКоллекцияПолейКонтактнойИнформации Из КоллекцияПолейКонтактнойИнформации Цикл - - СтрокаВКИ = Источник.Найти(ЭлементКоллекцияПолейКонтактнойИнформации.Вид, "Вид"); - Если СтрокаВКИ <> Неопределено Тогда - Приемник[ЭлементКоллекцияПолейКонтактнойИнформации.ИмяРеквизита] = СтрокаВКИ.Представление; - ЭлементКоллекцияПолейКонтактнойИнформации.ЗначенияПолей = УправлениеКонтактнойИнформациейКлиентСервер.ПреобразоватьСтрокуВСписокПолей(СтрокаВКИ.ЗначенияПолей); - КонецЕсли; - - КонецЦикла; - -КонецПроцедуры - #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -485,8 +413,31 @@ Результат.ДополнительныеКоды.ОКАТО = Формат(АдресРФ.ОКАТО, "ЧГ=0"); КонецЕсли; КонецЕсли; + КонецПроцедуры +// Возвращает значение перечисления тип вида контактной информации. +// +// Параметры: +// ВидИнформации - СправочникСсылка.ВидыКонтактнойИнформации, Структура - источник данных. +// +Функция ТипВидаКонтактнойИнформации(Знач ВидИнформации) + Результат = Неопределено; + + Тип = ТипЗнч(ВидИнформации); + Если Тип = Тип("ПеречислениеСсылка.ТипыКонтактнойИнформации") Тогда + Результат = ВидИнформации; + ИначеЕсли Тип = Тип("СправочникСсылка.ВидыКонтактнойИнформации") Тогда + Результат = ВидИнформации.Тип; + ИначеЕсли ВидИнформации <> Неопределено Тогда + Данные = Новый Структура("Тип"); + ЗаполнитьЗначенияСвойств(Данные, ВидИнформации); + Результат = Данные.Тип; + КонецЕсли; + + Возврат Результат; +КонецФункции + #Область ОбновлениеИнформационнойБазы // Добавляет процедуры-обработчики обновления, необходимые данной подсистеме. @@ -519,20 +470,6 @@ Обработчик.ОбщиеДанные = Ложь; Обработчик.НачальноеЗаполнение = Истина; - Обработчик = Обработчики.Добавить(); - Обработчик.Версия = "2.3.1.8"; - Обработчик.Процедура = "УправлениеКонтактнойИнформациейСлужебный.ОбновитьНастройкуДобавочногоНомераТелефона"; - Обработчик.РежимВыполнения = "Оперативно"; - Обработчик.ОбщиеДанные = Ложь; - Обработчик.НачальноеЗаполнение = Истина; - - Обработчик = Обработчики.Добавить(); - Обработчик.Версия = "2.3.1.15"; - Обработчик.Процедура = "УправлениеКонтактнойИнформациейСлужебный.УстановитьЗначениеПризнакаИспользуется"; - Обработчик.РежимВыполнения = "Оперативно"; - Обработчик.ОбщиеДанные = Ложь; - Обработчик.НачальноеЗаполнение = Истина; - Обработчик = Обработчики.Добавить(); Обработчик.Версия = "2.3.2.39"; Обработчик.Идентификатор = Новый УникальныйИдентификатор("f663ee3c-68b7-45db-bd6c-eebe6665fc7c"); @@ -552,13 +489,46 @@ Обработчик.НачальноеЗаполнение = Ложь; Обработчик = Обработчики.Добавить(); - Обработчик.Версия = "2.3.2.195"; + Обработчик.Версия = "2.3.1.8"; + Обработчик.Процедура = "УправлениеКонтактнойИнформациейСлужебный.ОбновитьНастройкуДобавочногоНомераТелефона"; + Обработчик.РежимВыполнения = "Оперативно"; + Обработчик.ОбщиеДанные = Ложь; + Обработчик.НачальноеЗаполнение = Истина; + + Обработчик = Обработчики.Добавить(); + Обработчик.Версия = "2.3.1.15"; + Обработчик.Процедура = "УправлениеКонтактнойИнформациейСлужебный.УстановитьЗначениеПризнакаИспользуется"; + Обработчик.РежимВыполнения = "Оперативно"; + Обработчик.ОбщиеДанные = Ложь; + Обработчик.НачальноеЗаполнение = Истина; + + Обработчик = Обработчики.Добавить(); + Обработчик.Версия = "2.3.3.15"; + Обработчик.Идентификатор = Новый УникальныйИдентификатор("72f43d1a-9c4f-4789-81a9-e610cd56f8b2"); + Обработчик.Процедура = "Справочники.ВидыКонтактнойИнформации.ОбновитьВидПоляДругое"; + Обработчик.РежимВыполнения = "Отложенно"; + Обработчик.ПроцедураЗаполненияДанныхОбновления = "Справочники.ВидыКонтактнойИнформации.ЗаполнитьВидыКонтактнойИнформацииСПолемДругоеКОбработке"; + Обработчик.ОчередьОтложеннойОбработки = 1; + Обработчик.ЧитаемыеОбъекты = "Справочник.ВидыКонтактнойИнформации"; + Обработчик.ИзменяемыеОбъекты = "Справочник.ВидыКонтактнойИнформации"; + Обработчик.БлокируемыеОбъекты = "Справочник.ВидыКонтактнойИнформации"; + Обработчик.ПроцедураПроверки = "ОбновлениеИнформационнойБазы.ДанныеОбновленыНаНовуюВерсиюПрограммы"; + Обработчик.Комментарий = НСтр("ru = 'Заполнение значения поля ""Другое"" у видов контактной информации. + |До завершения обработки данные документов будут отображаться некорректно.'"); + + Обработчик = Обработчики.Добавить(); + Обработчик.Версия = "2.3.5.41"; Обработчик.Идентификатор = Новый УникальныйИдентификатор("dfc6a0fa-7c7b-4096-9d04-2c67d5eb17a4"); - Обработчик.Процедура = "УправлениеКонтактнойИнформациейСлужебный.ОбновитьСтраныМираПоОКСМ"; + Обработчик.Процедура = "Справочники.СтраныМира.ОбновитьСтраныМираПоОКСМ"; + Обработчик.РежимВыполнения = "Отложенно"; + Обработчик.ПроцедураЗаполненияДанныхОбновления = "Справочники.СтраныМира.ЗаполнитьСписокСтранКОбработке"; + Обработчик.ОчередьОтложеннойОбработки = 1; + Обработчик.ЧитаемыеОбъекты = "Справочник.СтраныМира"; + Обработчик.ИзменяемыеОбъекты = "Справочник.СтраныМира"; + Обработчик.БлокируемыеОбъекты = "Справочник.СтраныМира"; + Обработчик.ПроцедураПроверки = "ОбновлениеИнформационнойБазы.ДанныеОбновленыНаНовуюВерсиюПрограммы"; Обработчик.Комментарий = НСтр("ru = 'Обновление сведений о странах мирах в соответствии с общероссийским классификатором стран мира. |До завершения обработки данные документов будут отображаться некорректно.'"); - Обработчик.РежимВыполнения = "Отложенно"; - Обработчик.НачальноеЗаполнение = Ложь; КонецПроцедуры @@ -675,55 +645,56 @@ // Обновляем только существующие элементы стран мира по классификатору. Процедура ОбновитьСуществующиеСтраныМира() Экспорт - Справочники.СтраныМира.ОбновитьСтраныМираПоКлассификатору(); + ВсеОшибки = ""; + Добавлять = Ложь; -КонецПроцедуры - -Процедура ОбновитьНастройкуДобавочногоНомераТелефона() Экспорт + Фильтр = Новый Структура("Код"); - // Устанавливает флаг ТелефонCДобавочнымНомером для обратной совместимости. - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | ВидыКонтактнойИнформации.Ссылка - |ИЗ - | Справочник.ВидыКонтактнойИнформации КАК ВидыКонтактнойИнформации - |ГДЕ - | ВидыКонтактнойИнформации.Тип = Значение(Перечисление.ТипыКонтактнойИнформации.Телефон)"; - - РезультатЗапроса = Запрос.Выполнить().Выбрать(); - - Пока РезультатЗапроса.Следующий() Цикл - ВидКонтактнойИнформации = РезультатЗапроса.Ссылка.ПолучитьОбъект(); - ВидКонтактнойИнформации.ТелефонCДобавочнымНомером = Истина; - ОбновлениеИнформационнойБазы.ЗаписатьДанные(ВидКонтактнойИнформации); - КонецЦикла; - -КонецПроцедуры - -// Инициализирует значение реквизита Используется справочника ВидыКонтактнойИнформации. -// -Процедура УстановитьЗначениеПризнакаИспользуется() Экспорт - - Запрос = Новый Запрос; - Запрос.Текст = "ВЫБРАТЬ - | ВидыКонтактнойИнформации.Ссылка - |ИЗ - | Справочник.ВидыКонтактнойИнформации КАК ВидыКонтактнойИнформации - |ГДЕ - | НЕ ВидыКонтактнойИнформации.Используется"; - - Результат = Запрос.Выполнить(); - Выборка = Результат.Выбрать(); - - Пока Выборка.Следующий() Цикл + // Сравнивать в запросе нельзя из-за возможной регистронезависимости базы данных. + Для Каждого СтрокаКлассификатора Из Справочники.СтраныМира.ТаблицаКлассификатора() Цикл + Фильтр.Код = СтрокаКлассификатора.Код; + Выборка = Справочники.СтраныМира.Выбрать(,, Фильтр); + СтранаНайдена = Выборка.Следующий(); + Если Не СтранаНайдена И Добавлять Тогда + // Добавление страны + Страна = Справочники.СтраныМира.СоздатьЭлемент(); + ИначеЕсли СтранаНайдена И ( + Выборка.Наименование <> СтрокаКлассификатора.Наименование + Или Выборка.КодАльфа2 <> СтрокаКлассификатора.КодАльфа2 + Или Выборка.КодАльфа3 <> СтрокаКлассификатора.КодАльфа3 + Или Выборка.НаименованиеПолное <> СтрокаКлассификатора.НаименованиеПолное) Тогда + // Изменение страны + Страна = Выборка.ПолучитьОбъект(); + Иначе + Продолжить; + КонецЕсли; - ВидКонтактнойИнформацииОбъект = Выборка.Ссылка.ПолучитьОбъект(); - ВидКонтактнойИнформацииОбъект.Используется = Истина; - ОбновлениеИнформационнойБазы.ЗаписатьДанные(ВидКонтактнойИнформацииОбъект); + НачатьТранзакцию(); + Попытка + Если Не Страна.ЭтоНовый() Тогда + ЗаблокироватьДанныеДляРедактирования(Страна.Ссылка); + КонецЕсли; + ЗаполнитьЗначенияСвойств(Страна, СтрокаКлассификатора, "Код, Наименование, КодАльфа2, КодАльфа3, НаименованиеПолное"); + Страна.ДополнительныеСвойства.Вставить("НеПроверятьУникальность"); + Страна.Записать(); + ЗафиксироватьТранзакцию(); + Исключение + Инфо = ИнформацияОбОшибке(); + ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='Ошибка записи страны мира %1 (код %2) при обновлении классификатора, %3'"), + Выборка.Код, Выборка.Наименование, КраткоеПредставлениеОшибки(Инфо)); + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), + УровеньЖурналаРегистрации.Ошибка,,, + ТекстОшибки + Символы.ПС + ПодробноеПредставлениеОшибки(Инфо)); + ВсеОшибки = ВсеОшибки + Символы.ПС + ТекстОшибки; + ОтменитьТранзакцию(); + КонецПопытки; КонецЦикла; + Если Не ПустаяСтрока(ВсеОшибки) Тогда + ВызватьИсключение СокрЛП(ВсеОшибки); + КонецЕсли; + КонецПроцедуры Процедура УдалитьАдресаСТекстомЗаполнить(Параметры, РазмерПорции = 1000) Экспорт @@ -931,45 +902,50 @@ КонецПроцедуры -Процедура ОбновитьСтраныМираПоОКСМ(Параметры, РазмерПорции = 1000) Экспорт +Процедура ОбновитьНастройкуДобавочногоНомераТелефона() Экспорт - ОбновляемыеСтраныМира = Неопределено; - Параметры.Свойство("ОбновляемыеСтраныМира", ОбновляемыеСтраныМира); + // Устанавливает флаг ТелефонCДобавочнымНомером для обратной совместимости. + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ВидыКонтактнойИнформации.Ссылка + |ИЗ + | Справочник.ВидыКонтактнойИнформации КАК ВидыКонтактнойИнформации + |ГДЕ + | ВидыКонтактнойИнформации.Тип = Значение(Перечисление.ТипыКонтактнойИнформации.Телефон)"; - Если Параметры.ПрогрессВыполнения.ВсегоОбъектов = 0 Тогда - ОбновляемыеСтраныМира = СписокСтранКОбработке(); - Параметры.ПрогрессВыполнения.ВсегоОбъектов = ОбновляемыеСтраныМира.Количество(); - КонецЕсли; + РезультатЗапроса = Запрос.Выполнить().Выбрать(); - Если ОбновляемыеСтраныМира = Неопределено ИЛИ ОбновляемыеСтраныМира.Количество() = 0 Тогда - Возврат; - КонецЕсли; - - Позиция = ОбновляемыеСтраныМира.Количество() - 1; - КоличествоОбработанных = 0; - - Пока Позиция >= 0 И КоличествоОбработанных < РазмерПорции Цикл - - ДанныеОКСМ = УправлениеКонтактнойИнформацией.ДанныеКлассификатораСтранМираПоКоду(ОбновляемыеСтраныМира.Получить(Позиция).Код); - - Если ДанныеОКСМ <> Неопределено Тогда - СтранаМира = ОбновляемыеСтраныМира.Получить(Позиция).ПолучитьОбъект(); - ЗаполнитьЗначенияСвойств(СтранаМира, ДанныеОКСМ); - ОбновлениеИнформационнойБазы.ЗаписатьДанные(СтранаМира); - КонецЕсли; - - ОбновляемыеСтраныМира.Удалить(Позиция); - Позиция = Позиция - 1; - КоличествоОбработанных = КоличествоОбработанных + 1; - + Пока РезультатЗапроса.Следующий() Цикл + ВидКонтактнойИнформации = РезультатЗапроса.Ссылка.ПолучитьОбъект(); + ВидКонтактнойИнформации.ТелефонCДобавочнымНомером = Истина; + ОбновлениеИнформационнойБазы.ЗаписатьДанные(ВидКонтактнойИнформации); КонецЦикла; - Если ОбновляемыеСтраныМира.Количество() > 0 Тогда - Параметры.ОбработкаЗавершена = Ложь; - КонецЕсли; +КонецПроцедуры + +// Инициализирует значение реквизита Используется справочника ВидыКонтактнойИнформации. +// +Процедура УстановитьЗначениеПризнакаИспользуется() Экспорт - Параметры.ПрогрессВыполнения.ОбработаноОбъектов = Параметры.ПрогрессВыполнения.ОбработаноОбъектов + КоличествоОбработанных; - Параметры.Вставить("ОбновляемыеСтраныМира", ОбновляемыеСтраныМира); + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ + | ВидыКонтактнойИнформации.Ссылка + |ИЗ + | Справочник.ВидыКонтактнойИнформации КАК ВидыКонтактнойИнформации + |ГДЕ + | НЕ ВидыКонтактнойИнформации.Используется"; + + Результат = Запрос.Выполнить(); + Выборка = Результат.Выбрать(); + + Пока Выборка.Следующий() Цикл + + ВидКонтактнойИнформацииОбъект = Выборка.Ссылка.ПолучитьОбъект(); + ВидКонтактнойИнформацииОбъект.Используется = Истина; + ОбновлениеИнформационнойБазы.ЗаписатьДанные(ВидКонтактнойИнформацииОбъект); + + КонецЦикла; КонецПроцедуры @@ -1043,43 +1019,54 @@ // // Параметры: // Текст - Строка - текст автоподбора. -// СкрыватьНеактуальныеАдреса - Булево - флаг того, что неактуальные адреса не должны попадать в автоподбор. -// ВыбиратьСтрок - Число - ограничение на количество результатов. -// УточняющаяУлица - Строка - уточняющее представление улицы. -Функция НаселенныеПунктыПоПредставлению(Знач Текст, Знач СкрыватьНеактуальныеАдреса = Ложь, Знач ВыбиратьСтрок = 50, Знач УточняющаяУлица = "") Экспорт +Функция НаселенныеПунктыПоПредставлению(Знач Текст) Экспорт Результат = Новый СписокЗначений; + + ДанныеАнализа = ЧастиАдресаТаблицей(Текст); + Если ДанныеАнализа.Количество() = 0 Тогда + Возврат Результат; + КонецЕсли; + + ПространствоИмен = УправлениеКонтактнойИнформациейКлиентСервер.ПространствоИмен(); + АдресРФ = ФабрикаXDTO.Создать(ФабрикаXDTO.Тип(ПространствоИмен, "АдресРФ")); Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда - ДанныеАнализа = ЧастиАдресаТаблицей(Текст); - Если ДанныеАнализа.Количество() = 0 Тогда - Возврат Результат; - КонецЕсли; - ПространствоИмен = УправлениеКонтактнойИнформациейКлиентСервер.ПространствоИмен(); - АдресРФ = ФабрикаXDTO.Создать(ФабрикаXDTO.Тип(ПространствоИмен, "АдресРФ")); МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); АдресПоУровням = МодульАдресныйКлассификаторСлужебный.УстановитьСоответствиеЧастейАдресаИхУровнюДляНаселенногоПункта(ДанныеАнализа, УровниАдресныхОбъектов("НаселенныйПункт")); Если АдресПоУровням <> Неопределено Тогда ПоместитьАдресВXDTO(АдресРФ, АдресПоУровням); - КонецЕсли; - - // Что-то осталось, добавляем это на уровень населенного пункта. - Фильтр = Новый Структура("Уровень", 0); - СтрокиСУровнем0 = АдресПоУровням.НайтиСтроки(Фильтр); - Разделитель = ""; - НаселПункт = ""; - Для каждого ЭлементАдреса Из СтрокиСУровнем0 Цикл - НаселПункт = НаселПункт + Разделитель + ЭлементАдреса.Значение; - Разделитель = ", "; - КонецЦикла; - Если НЕ ПустаяСтрока(НаселПункт) Тогда - НаселПункт = НаселПункт + ?(ЗначениеЗаполнено(АдресРФ.НаселПункт), ", " +АдресРФ.НаселПункт, ""); - УстановитьСвойствоПоXPath(АдресРФ, "НаселПункт", НаселПункт); - КонецЕсли; - Возврат АдресРФ; + // Что-то осталось, добавляем это на уровень населенного пункта. + Фильтр = Новый Структура("Уровень", 0); + СтрокиСУровнем0 = АдресПоУровням.НайтиСтроки(Фильтр); + Разделитель = ""; + НаселПункт = ""; + Для каждого ЭлементАдреса Из СтрокиСУровнем0 Цикл + НаселПункт = НаселПункт + Разделитель + ЭлементАдреса.Значение; + Разделитель = ", "; + КонецЦикла; + Иначе + НаселПункт = Текст; + КонецЕсли; + Иначе + ПозицияСубъектРФ = СтрНайти(Текст, ",", НаправлениеПоиска.СКонца); + Если ПозицияСубъектРФ > 0 Тогда + Регион = СокрЛП(Сред(Текст, ПозицияСубъектРФ + 1)); + УстановитьСвойствоПоXPath(АдресРФ, "СубъектРФ", Регион); + НаселПункт = СокрЛП(Лев(Текст, ПозицияСубъектРФ - 1)); + Иначе + НаселПункт = Текст; + КонецЕсли; КонецЕсли; - Возврат Неопределено; + Если НЕ ПустаяСтрока(НаселПункт) Тогда + Если ЗначениеЗаполнено(АдресРФ.НаселПункт) Тогда + НаселПункт = НаселПункт + ", " + АдресРФ.НаселПункт; + КонецЕсли; + УстановитьСвойствоПоXPath(АдресРФ, "НаселПункт", НаселПункт); + КонецЕсли; + + Возврат АдресРФ; КонецФункции @@ -1115,54 +1102,7 @@ КонецФункции -// Возвращает идентификатор классификатора для объекта, представленного в полях. -// -// Параметры: -// ЧастиАдреса - Структура - описание частей адреса. -// СкрыватьНеактуальные - Булево - флаг скрытия актуальных. -// -// Возвращаемое значение: -// УникальныйИдентификатор - идентификатор классификатора. -// -Функция ИдентификаторНаселенногоПунктаПоЧастямАдреса(ЧастиАдреса) Экспорт - - // Пробуем взять из части адреса. - Результат = УправлениеКонтактнойИнформациейКлиентСервер.ИдентификаторЭлементаПоЧастямАдреса(ЧастиАдреса); - Если Результат <> Неопределено Тогда - Возврат Результат; - КонецЕсли; - - Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда - Возврат Неопределено; - КонецЕсли; - - // Запрос к классификатору об идентификаторе. - АдресXDTO = ФабрикаXDTO.Создать(ФабрикаXDTO.Тип("http://www.v8.1c.ru/ssl/contactinfo", "АдресРФ")); - Для Каждого КлючЗначение Из ЧастиАдреса Цикл - Часть = КлючЗначение.Значение; - УстановитьXDTOРеквизитОбъекта(АдресXDTO, Часть.ПутьXPath, Часть.Представление); - КонецЦикла; - - Варианты = Новый Массив; - Варианты.Добавить(Новый Структура("Адрес, ФорматАдреса", АдресXDTO, "ФИАС")); - - МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); - СтруктураДанных = МодульАдресныйКлассификаторСлужебный.РезультатПроверкиАдресовПоКлассификатору(Варианты); - - Если Не СтруктураДанных.Отказ Тогда - Для каждого Элемент Из СтруктураДанных.Данные Цикл - Варианты = Элемент.Варианты; - Если Варианты.Количество() > 0 Тогда - Возврат Варианты[0].Идентификатор; - КонецЕсли; - КонецЦикла; - КонецЕсли; - - // Не соответствует классификатору или классификатор на обслуживании. - Возврат Неопределено; -КонецФункции - -// Возвращает структуру, описывающую населенный пункт в иерархии младший-старший +// Возвращает структуру, описывающую населенный пункт в иерархии младший-старший // для текущего адресного классификатора. Имена ключей структуры зависят от // классификатора. // @@ -1255,10 +1195,27 @@ КонецЕсли; Эталон = ДанныеАдреса.Данные; + КодСериализацииПочтовогоИндекса = УправлениеКонтактнойИнформациейКлиентСервер.КодСериализацииПочтовогоИндекса(); + КодСериализацииДополнительногоОбъектаАдресации = УправлениеКонтактнойИнформациейКлиентСервер.КодСериализацииДополнительногоОбъектаАдресации(91); ЧастиАдреса = УправлениеКонтактнойИнформациейКлиентСервер.СтруктураЧастейАдресаНаселенногоПункта(); Для Каждого КлючЗначение Из ЧастиАдреса Цикл - Если КлючЗначение.Значение.Уровень > 6 Тогда + Если КлючЗначение.Значение.Уровень = 90 Тогда + Для каждого ДопАдрЭл Из Эталон.ДопАдрЭл Цикл + Если ДопАдрЭл.ТипАдрЭл <> КодСериализацииДополнительногоОбъектаАдресации + И ДопАдрЭл.ТипАдрЭл <> КодСериализацииПочтовогоИндекса Тогда + Путь = "ДопАдрЭл[ТипАдрЭл='" + ДопАдрЭл.ТипАдрЭл + "']"; + УстановитьXDTOРеквизитОбъекта(XDTOАдрес, Путь, ПолучитьXDTOРеквизитОбъекта(Эталон, Путь)); + КонецЕсли; + КонецЦикла; + ИначеЕсли КлючЗначение.Значение.Уровень = 91 Тогда + Для каждого ДопАдрЭл Из Эталон.ДопАдрЭл Цикл + Если ДопАдрЭл.ТипАдрЭл = КодСериализацииДополнительногоОбъектаАдресации Тогда + Путь = УправлениеКонтактнойИнформациейКлиентСервер.XPathДополнительногоОбъектаАдресации(91, ДопАдрЭл.ТипАдрЭл); + УстановитьXDTOРеквизитОбъекта(XDTOАдрес, Путь, ПолучитьXDTOРеквизитОбъекта(Эталон, Путь)); + КонецЕсли; + КонецЦикла; + ИначеЕсли КлючЗначение.Значение.Уровень = 7 Тогда Путь = КлючЗначение.Значение.ПутьXPath; УстановитьXDTOРеквизитОбъекта(XDTOАдрес, Путь, ПолучитьXDTOРеквизитОбъекта(Эталон, Путь)); КонецЕсли; @@ -1272,11 +1229,11 @@ // НаселенныйПунктДетально - Структура - части адреса. // ИдентификаторАдреса - УникальныйИдентификатор - Источник данных для заполнения. // -Процедура ЗаполнитьИдентификаторыНаселенногоПункта(НаселенныйПунктДетально, ИдентификаторНаселенногоПункта = Неопределено) Экспорт +Процедура ЗаполнитьИдентификаторыНаселенногоПункта(НаселенныйПунктДетально) Экспорт Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); - МодульАдресныйКлассификаторСлужебный.УстановитьИдентификаторыНаселенногоПункта(НаселенныйПунктДетально, ИдентификаторНаселенногоПункта); + МодульАдресныйКлассификаторСлужебный.УстановитьИдентификаторыНаселенногоПункта(НаселенныйПунктДетально); КонецЕсли; КонецПроцедуры @@ -1322,11 +1279,13 @@ КонецФункции -Процедура ПроверитьДоступностьКлассификатора(ДоступностьКлассификатораАдрес) Экспорт +// Проверяет доступность классификатора и помещает результат в хранилище +// +Процедура ПроверитьДоступностьКлассификатора(ДоступностьКлассификатораАдрес, АдресРезультата) Экспорт - ПоместитьВоВременноеХранилище(ВерсияПоставщикаДанныхКлассификатора(), ДоступностьКлассификатораАдрес); + ПоместитьВоВременноеХранилище(ВерсияПоставщикаДанныхКлассификатора(), АдресРезультата); -КонецПроцедуры +КонецПроцедуры Функция ПроверитьАдресВXML(АдресВXML, ПараметрыПроверкиАдреса = Неопределено) Экспорт @@ -1551,13 +1510,14 @@ ЧастиАдреса = УправлениеКонтактнойИнформациейКлиентСервер.СтруктураЧастейАдресаНаселенногоПункта(ДополнительныеПараметры.ФорматАдреса); Родитель = Неопределено; - Уровни = Новый Массив; + Уровни = Новый Массив; Для Каждого КлючЗначение Из ЧастиАдреса Цикл Если КлючЗначение.Значение.Уровень < 7 Тогда Уровни.Добавить(КлючЗначение.Значение.Уровень); КонецЕсли; КонецЦикла; + ПреобразоватьВводАдреса(Текст); МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); Результат = МодульАдресныйКлассификаторСлужебный.ВариантыАвтоподбора(Текст, Родитель, Уровни, ДополнительныеПараметры); @@ -1608,6 +1568,7 @@ КонецЕсли; КонецЦикла; + ПреобразоватьВводАдреса(Текст); МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); Результат = МодульАдресныйКлассификаторСлужебный.ВариантыАвтоподбора(Текст, НаселенныйПункт, Уровни, ДополнительныеПараметры); @@ -1799,20 +1760,16 @@ Процедура ЗаполнитьСписокАвтоподбораИзТаблицы(Результат, ТабличныеДанные, ЭтоПодборУлицы) - КартинкаНеактуальности = БиблиотекаКартинок.КонтактнаяИнформацияНеактуально; - КартинкаАктуальности = Неопределено; - Для Каждого Строка Из ТабличныеДанные Цикл - Представление = Строка.Представление; Если Строка.Неактуален Тогда - Предупреждение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Адрес ""%1"" неактуален.'"), Представление); Пометка = Истина; - Картинка = КартинкаНеактуальности; + Представление = Новый ФорматированнаяСтрока(Строка.Представление,, ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + Предупреждение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Адрес ""%1"" неактуален.'"), Строка.Представление); Иначе Предупреждение = Неопределено; Пометка = Ложь; - Картинка = КартинкаАктуальности; + Представление = Строка.Представление; КонецЕсли; ЗначениеЭлемента = Новый Структура; @@ -1821,15 +1778,42 @@ ЗначениеЭлемента.Вставить("Автоподбор", Истина); ЗначениеЭлемента.Вставить("РегионЗагружен", Строка.РегионЗагружен); Если ЭтоПодборУлицы Тогда - ЗначениеЭлемента.Вставить("Улица", Строка.Представление); - ЗначениеЭлемента.Вставить("ДополнительныйЭлемент", ""); - ЗначениеЭлемента.Вставить("ПодчиненныйЭлемент", ""); + Если Строка.Уровень = 90 Тогда + ЗначениеЭлемента.Вставить("Улица", ""); + ЗначениеЭлемента.Вставить("ДополнительныйЭлемент", Строка.Представление); + ЗначениеЭлемента.Вставить("ПодчиненныйЭлемент", ""); + ИначеЕсли Строка.Уровень = 91 Тогда + ЗначениеЭлемента.Вставить("Улица", ""); + ЗначениеЭлемента.Вставить("ДополнительныйЭлемент", ""); + ЗначениеЭлемента.Вставить("ПодчиненныйЭлемент", Строка.Представление); + Иначе + ЗначениеЭлемента.Вставить("Улица", Строка.Представление); + ЗначениеЭлемента.Вставить("ДополнительныйЭлемент", ""); + ЗначениеЭлемента.Вставить("ПодчиненныйЭлемент", ""); + КонецЕсли; + ЗначениеЭлемента.Вставить("ТипАдресногоЭлемента", Строка.ТипАдресногоЭлемента); КонецЕсли; Результат.Добавить( Новый Структура("Предупреждение, Значение", Предупреждение, ЗначениеЭлемента), - Представление, Пометка, Картинка); + Представление, Пометка); + КонецЦикла; + +КонецПроцедуры + +// Преобразует введенные английские буквы к русской раскладке при подборе адреса +// +Процедура ПреобразоватьВводАдреса(Текст) + РусскиеКлавиши = "ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮЁ"; + АнглийскиеКлавиши = "QWERTYUIOP[]ASDFGHJKL;'ZXCVBNM,.`"; + Текст = ВРег(Текст); + Для Позиция = 0 По СтрДлина(Текст) Цикл + Символ = Сред(Текст, Позиция, 1); + ПозицияСимвола = СтрНайти(АнглийскиеКлавиши, Символ); + Если ПозицияСимвола > 0 Тогда + Текст = СтрЗаменить(Текст, Символ, Сред(РусскиеКлавиши, ПозицияСимвола, 1)); + КонецЕсли; КонецЦикла; КонецПроцедуры @@ -2090,6 +2074,7 @@ ПространствоИмен = УправлениеКонтактнойИнформациейКлиентСервер.ПространствоИмен(); Результат = ФабрикаXDTO.Создать(ФабрикаXDTO.Тип(ПространствоИмен, "КонтактнаяИнформация")); Результат.Состав = ФабрикаXDTO.Создать(ФабрикаXDTO.Тип(ПространствоИмен, "Адрес")); + Результат.Состав.Состав = Представление; Результат.Представление = Представление; Возврат Результат; @@ -2500,7 +2485,7 @@ КонецЕсли; ОбъектXDTO = ?(ЭтоСтрока, КонтактнаяИнформацияИзXML(XMLСтрока), XMLСтрока); - Если Не ПустаяСтрока(ОбъектXDTO.Представление) И Вид.ФорматАдреса = "ФИАС" Тогда + Если Не ПустаяСтрока(ОбъектXDTO.Представление) Тогда Возврат ОбъектXDTO.Представление; // Возвращаем ранее сформированное представление. КонецЕсли; @@ -2656,7 +2641,7 @@ КонецЕсли; - ДополнительныйЭлементАдреса = НайтиДополнительныйЭлементАдреса(АдресРФ); + ДополнительныйЭлементАдреса = НайтиДополнительныйЭлементАдреса(АдресРФ).Значение; Результат.ДополнительныйЭлемент = ДополнительныйЭлементАдреса; Результат.ПодчиненныйЭлемент = ДополнительныйЭлементАдреса(АдресРФ, УправлениеКонтактнойИнформациейКлиентСервер.XPathДополнительногоОбъектаАдресации(91)); @@ -2730,17 +2715,31 @@ // Функция НайтиДополнительныйЭлементАдреса(АдресРФ) Экспорт - ДополнительныйЭлементАдреса = ДополнительныйЭлементАдреса(АдресРФ, УправлениеКонтактнойИнформациейКлиентСервер.XPathДополнительногоОбъектаАдресации(90, "СНТ")); - Если ДополнительныйЭлементАдреса = Неопределено Тогда - ДополнительныйЭлементАдреса = ДополнительныйЭлементАдреса(АдресРФ, УправлениеКонтактнойИнформациейКлиентСервер.XPathДополнительногоОбъектаАдресации(90, "ГСК")); - Если ДополнительныйЭлементАдреса = Неопределено Тогда - ДополнительныйЭлементАдреса = ДополнительныйЭлементАдреса(АдресРФ, УправлениеКонтактнойИнформациейКлиентСервер.XPathДополнительногоОбъектаАдресации(90, "ТЕР")); - Если ДополнительныйЭлементАдреса = Неопределено Тогда - ДополнительныйЭлементАдреса = ДополнительныйЭлементАдреса(АдресРФ, УправлениеКонтактнойИнформациейКлиентСервер.XPathДополнительногоОбъектаАдресации(90)); - КонецЕсли; + ВариантыДополнительногоЭлементаАдреса = ВариантыДополнительногоЭлементаАдреса(); + + XPath = ""; + ДополнительныйЭлементАдреса = Неопределено; + Для каждого ВариантДополнительныйЭлементАдреса Из ВариантыДополнительногоЭлементаАдреса Цикл + XPath = УправлениеКонтактнойИнформациейКлиентСервер.XPathДополнительногоОбъектаАдресации(90, ВариантДополнительныйЭлементАдреса); + ДополнительныйЭлементАдреса = ДополнительныйЭлементАдреса(АдресРФ, XPath); + Если ДополнительныйЭлементАдреса <> Неопределено Тогда + Прервать; КонецЕсли; - КонецЕсли; - Возврат ДополнительныйЭлементАдреса; + КонецЦикла; + + Возврат Новый Структура("Значение, XPath", ДополнительныйЭлементАдреса, XPath); + +КонецФункции + +Функция ВариантыДополнительногоЭлементаАдреса() + + ВариантыДополнительногоЭлементаАдреса = Новый Массив; + ВариантыДополнительногоЭлементаАдреса.Добавить("СНТ"); + ВариантыДополнительногоЭлементаАдреса.Добавить("ГСК"); + ВариантыДополнительногоЭлементаАдреса.Добавить("ТЕР"); + ВариантыДополнительногоЭлементаАдреса.Добавить(""); + Возврат ВариантыДополнительногоЭлементаАдреса; + КонецФункции // Добавляет дополнительные элемент адреса по его пути. @@ -2779,7 +2778,7 @@ // // Возвращаемое значение: // Структура - почтовый индекс и ОКТМО. -// * Индекс - почтовый индекс +// * Индекс - почтовый индекс. // * ОКТМО - ОКТМО // Неопределено - индекс не найден или адрес иностранный. // @@ -3066,7 +3065,7 @@ Представление = СокрЛП(АдресРФ); Если СтрЧислоВхождений(Представление, ",") = 9 Тогда - // Удаляем пустые значения и страну + // Удаляем пустые значения и страну. ПредставлениеМассивом = СтрРазделить(Представление, ",", Ложь); Если ПредставлениеМассивом.Количество() > 0 Тогда Для Индекс = 0 По ПредставлениеМассивом.ВГраница() Цикл @@ -3225,7 +3224,7 @@ Результат = Новый СписокЗначений; Для Каждого Группа Из ВсеОшибки Цикл Для Каждого Поле Из Группа.Поля Цикл - Результат.Добавить(Поле.ИмяПоля, Поле.Сообщение); + Результат.Добавить(Поле.ИмяПоля, Поле.Сообщение, Истина); КонецЦикла; КонецЦикла; Для Каждого ЭлементСписка Из ОшибкиКлассификатора Цикл @@ -3309,43 +3308,10 @@ КонецЕсли; ЗданияПомещения = ЗданияИПомещенияАдреса(АдресРФ); - Если ИсключатьПроверкуДомаВАдресе(АдресРФ) Тогда - // Должно быть заполнено хоть какое-нибудь здание. - - ЗданиеНеУказано = Истина; - Для Каждого ДанныеДома Из ЗданияПомещения.Здания Цикл - Если Не ПустаяСтрока(ДанныеДома.Значение) Тогда - ЗданиеНеУказано = Ложь; - Прервать; - КонецЕсли; - КонецЦикла; - Если ЗданиеНеУказано Тогда - ДобавитьОшибкуЗаполненияАдреса(НеЗаполненыОбязательныеПоля, - УправлениеКонтактнойИнформациейКлиентСервер.XPathНомераДополнительногоОбъектаАдресации("Дом"), - НСтр("ru = 'Не указан дом или корпус'"), - НСтр("ru = 'Дом'")); - КонецЕсли; - - Иначе - // Должен быть указан дом (владение и т.п) с возможным уточнением корпусом, строением и т.п. - - ДанныеДома = ЗданияПомещения.Здания.Найти(1, "Вид"); // 1 - Вид по признаку владения. - Если ДанныеДома = Неопределено Тогда - ДобавитьОшибкуЗаполненияАдреса(НеЗаполненыОбязательныеПоля, - УправлениеКонтактнойИнформациейКлиентСервер.XPathНомераДополнительногоОбъектаАдресации("Дом"), - НСтр("ru = 'Не указан дом или владение (домовладение).'"), - НСтр("ru = 'Дом'")); - ИначеЕсли ПустаяСтрока(ДанныеДома.Значение) Тогда - ДобавитьОшибкуЗаполненияАдреса(НеЗаполненыОбязательныеПоля, ДанныеДома.ПутьXPath, - НСтр("ru = 'Не заполнено значение дома или владения (домовладения).'"), - НСтр("ru = 'Дом'")); - КонецЕсли; - - КонецЕсли; - // 3) Регион, Район, Город, НаселенныйПункт, Улица должны: - // - иметь сокращение - // - не длинней 50 символов + // 3) Регион, Район, Город, НаселенныйПункт, Улица должны: + // - иметь сокращение. + // - не длинней 50 символов. // - только кириллица. ДопустимоКромеКириллицы = "/,-. 0123456789_N"; @@ -3443,7 +3409,7 @@ КонецЕсли; // Дополнительный элемент - ДополнительныйЭлемент = НайтиДополнительныйЭлементАдреса(АдресРФ); + ДополнительныйЭлемент = НайтиДополнительныйЭлементАдреса(АдресРФ).Значение; Если ЗначениеЗаполнено(ДополнительныйЭлемент) Тогда Поле = "Улица"; Если ПустаяСтрока(УправлениеКонтактнойИнформациейКлиентСервер.Сокращение(ДополнительныйЭлемент)) Тогда @@ -3473,22 +3439,22 @@ КонецЕсли; КонецЕсли; - // 5) Дом, Корпус, Квартира не длинней 10 символов. + // 5) Дом, Корпус, Квартира не длинней 12 символов. Для Каждого ДанныеЗдания Из ЗданияПомещения.Здания Цикл - Если СтрДлина(ДанныеЗдания.Значение) > 10 Тогда + Если СтрДлина(ДанныеЗдания.Значение) > 12 Тогда ДобавитьОшибкуЗаполненияАдреса(НеСоответствуетДлинаПолей, ДанныеЗдания.ПутьXPath, - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Значение поля ""%1"" должно быть короче 10 символов.'"), ДанныеЗдания.Тип), ДанныеЗдания.Тип); + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Значение поля ""%1"" должно быть короче 12 символов.'"), ДанныеЗдания.Тип), ДанныеЗдания.Тип); КонецЕсли; КонецЦикла; Для Каждого ДанныеПомещения Из ЗданияПомещения.Помещения Цикл - Если СтрДлина(ДанныеПомещения.Значение) > 10 Тогда + Если СтрДлина(ДанныеПомещения.Значение) > 12 Тогда ДобавитьОшибкуЗаполненияАдреса(НеСоответствуетДлинаПолей, ДанныеПомещения.ПутьXPath, - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Значение поля ""%1"" должно быть короче 10 символов.'"), ДанныеПомещения.Тип), ДанныеПомещения.Тип); + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Значение поля ""%1"" должно быть короче 12 символов.'"), ДанныеПомещения.Тип), ДанныеПомещения.Тип); КонецЕсли; КонецЦикла; // 6) Поля Город и НаселенныйПункт могут быть одновременно пустые только в регионе - городе ФЗ. - Если ПустаяСтрока(Город) И ПустаяСтрока(НаселенныйПункт) Тогда + Если ПустаяСтрока(Город) И ПустаяСтрока(НаселенныйПункт) И ПустаяСтрока(Район) Тогда Если НазванияГородовФедеральногоЗначения().Найти(ВРег(Регион)) = Неопределено Тогда ДобавитьОшибкуЗаполненияАдреса(НеЗаполненыОбязательныеПоля, "Город", НСтр("ru = 'Город может быть не указан только в регионе - городе федерального значения.'"), @@ -3502,7 +3468,7 @@ // 7) Улица не может быть пустой если НаселенныйПункт пустой. Если Не ИсключатьПроверкуУлицыВАдресе(АдресРФ) Тогда - Если ПустаяСтрока(НаселенныйПункт) И ПустаяСтрока(Улица) И НЕ ЗначениеЗаполнено(ДополнительныйЭлемент) Тогда + Если ПустаяСтрока(Город) И ПустаяСтрока(НаселенныйПункт) И ПустаяСтрока(Улица) И НЕ ЗначениеЗаполнено(ДополнительныйЭлемент) Тогда ДобавитьОшибкуЗаполненияАдреса(НеЗаполненыОбязательныеПоля, "Улица", НСтр("ru = 'Город или населенный пункт должен содержать название улицы.'"), НСтр("ru = 'Улица'")); @@ -3534,23 +3500,6 @@ Возврат Результат; КонецФункции -// Локальные исключения при проверке адреса. -// -Функция ИсключатьПроверкуДомаВАдресе(Знач АдресРФ) - Результат = Ложь; - - // В Зеленограде может быть указан непосредственно корпус, без дома/владения. - Если ВРег(СокрЛП(АдресРФ.СубъектРФ)) = НСтр("ru = 'МОСКВА Г'") И ВРег(СокрЛП(АдресРФ.Город)) = НСтр("ru = 'ЗЕЛЕНОГРАД Г'") Тогда - Результат = Истина; - КонецЕсли; - - Если ВРег(СокрЛП(АдресРФ.СубъектРФ)) = НСтр("ru = 'САМАРСКАЯ ОБЛ'") И ВРег(СокрЛП(АдресРФ.Город)) = НСтр("ru = 'САМАРА Г'") Тогда - Результат = Истина; - КонецЕсли; - - Возврат Результат; -КонецФункции - // Локальные исключения при проверке адреса. // Функция ИсключатьПроверкуУлицыВАдресе(Знач АдресРФ) @@ -3570,7 +3519,7 @@ Возврат Результат; КонецФункции -// Возвращает массив наименований регионов - городов федерального значения. +// Возвращает массив наименований регионов - городов федерального значения. Функция НазванияГородовФедеральногоЗначения() Результат = Новый Массив; @@ -3593,7 +3542,7 @@ КонецФункции -// Возвращает представление факса. +// Возвращает представление факса. // // Параметры: // XDTOДанные - ОбъектXDTO - контактная информация. @@ -3645,18 +3594,20 @@ Реквизиты = Реквизиты + "," + МетаданныеРеквизита.Имя; КонецЦикла; - Возврат ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Источник, Реквизиты); - КонецЕсли; - - Результат = Новый Структура("Наименование", ""); - Для Каждого МетаданныеРеквизита Из МетаданныеРеквизитов Цикл - Результат.Вставить(МетаданныеРеквизита.Имя, МетаданныеРеквизита.Тип.ПривестиЗначение()); - КонецЦикла; - Если Источник <> Неопределено Тогда - ЗаполнитьЗначенияСвойств(Результат, Источник); + Результат = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Источник, Реквизиты); + Иначе + Результат = Новый Структура("Наименование", ""); + Для Каждого МетаданныеРеквизита Из МетаданныеРеквизитов Цикл + Результат.Вставить(МетаданныеРеквизита.Имя, МетаданныеРеквизита.Тип.ПривестиЗначение()); + КонецЦикла; + Если Источник <> Неопределено Тогда + ЗаполнитьЗначенияСвойств(Результат, Источник); + КонецЕсли; КонецЕсли; + Результат.Вставить("Ссылка", Источник); Возврат Результат; + КонецФункции // Обновляет агрегатное поле ВидДляСписка контактной информацию у объекта. @@ -3902,7 +3853,7 @@ // ВидКонтактнойИнформации - СправочникСсылка.ВидыКонтактнойИнформации - Проверяемый вид контактной информации. // // Возвращаемое значение: -// Структура - Результат проверки вида контактной информации +// Структура - Результат проверки вида контактной информации. // * ЕстьОшибки - Булево - признак наличия ошибок в виде контактной информации. // * ТекстОшибки - Строка - информация об ошибке. Функция ПроверитьПараметрыВидаКонтактнойИнформации(ВидКонтактнойИнформации) Экспорт @@ -4070,10 +4021,10 @@ ДобавитьЗначение(Список, "ГородСокращение", УправлениеКонтактнойИнформациейКлиентСервер.Сокращение(АдресРФ.Город)); КонецЕсли; - // преобразование ФИАС в КЛАДР + // преобразование ФИАС в КЛАДР НаселПункт = АдресРФ.НаселПункт; Улица = АдресРФ.Улица; - ДополнительныйЭлементАдреса = НайтиДополнительныйЭлементАдреса(АдресРФ); + ДополнительныйЭлементАдреса = НайтиДополнительныйЭлементАдреса(АдресРФ).Значение; ПодчиненныйЭлементЭлементАдреса = ДополнительныйЭлементАдреса(АдресРФ, УправлениеКонтактнойИнформациейКлиентСервер.XPathДополнительногоОбъектаАдресации(91)); @@ -4235,7 +4186,6 @@ // Только уникальные ошибки - мы могли проверить адрес два раза. Обработанные = Новый Соответствие; Для Каждого РезультатПроверки Из РезультатыАнализа.Данные Цикл - Если РезультатПроверки.АдресПроверен Тогда Для Каждого ОшибкаАдреса Из РезультатПроверки.Ошибки Цикл Ключ = ОшибкаАдреса.Ключ; Если Обработанные[Ключ] = Неопределено Тогда @@ -4244,7 +4194,6 @@ Обработанные[Ключ] = Истина; КонецЕсли; КонецЦикла; - КонецЕсли; КонецЦикла; КонецПроцедуры @@ -4555,13 +4504,21 @@ Возврат АдресРФ.СвРайМО; КонецФункции -Процедура ЗаменитьВСтруктуреНеопределеноНаПустуюСтроку(Результат) +Процедура ОпределитьСоответствиеСокращений(Результат, ЭлементаАдреса, ИмяЭлемента, СоответствиеСокращений, НаименованиеВключаетСокращение, Уровень) - Для каждого КлючЗначение Из Результат Цикл + НаименованиеСокращение = УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(ЭлементаАдреса); + Результат.Вставить(ИмяЭлемента, ?(НаименованиеВключаетСокращение, ЭлементаАдреса, НаименованиеСокращение.Наименование)); + СоответствиеСокращений.Вставить(Уровень, НаименованиеСокращение.Сокращение); + +КонецПроцедуры + +Процедура ЗаменитьВСтруктуреНеопределеноНаПустуюСтроку(СтруктураДляОбхода) + + Для каждого КлючЗначение Из СтруктураДляОбхода Цикл Если ТипЗнч(КлючЗначение.Значение) = Тип("Структура")Тогда - ЗаменитьВСтруктуреНеопределеноНаПустуюСтроку(Результат[КлючЗначение.Ключ]); + ЗаменитьВСтруктуреНеопределеноНаПустуюСтроку(СтруктураДляОбхода[КлючЗначение.Ключ]); ИначеЕсли КлючЗначение.Значение = Неопределено Тогда - Результат[КлючЗначение.Ключ] = ""; + СтруктураДляОбхода[КлючЗначение.Ключ] = ""; КонецЕсли; КонецЦикла; @@ -5034,7 +4991,7 @@ // Проверяются только строки и атрибуты, без пробельных, CDATA и т.п. Порядок важен. // // Параметры: -// Текст1 - Строка - Строка XML +// Текст1 - Строка - Строка XML. // Текст2 - Строка - Строка XML. // // Возвращаемое значение: @@ -5476,62 +5433,6 @@ КонецФункции -#КонецОбласти - -#Область ОбновлениеИнформационнойБазы - -// Регистрирует к обработке страны мира. -// -Функция СписокСтранКОбработке() - - ПредыдущиеЗначенияОКСМ = Новый ТаблицаЗначений; - ПредыдущиеЗначенияОКСМ.Колонки.Добавить("Код", ОбщегоНазначения.ОписаниеТипаСтрока(3)); - ПредыдущиеЗначенияОКСМ.Колонки.Добавить("Наименование", ОбщегоНазначения.ОписаниеТипаСтрока(60)); - ПредыдущиеЗначенияОКСМ.Колонки.Добавить("КодАльфа2", ОбщегоНазначения.ОписаниеТипаСтрока(2)); - ПредыдущиеЗначенияОКСМ.Колонки.Добавить("КодАльфа3", ОбщегоНазначения.ОписаниеТипаСтрока(3)); - ПредыдущиеЗначенияОКСМ.Колонки.Добавить("НаименованиеПолное", ОбщегоНазначения.ОписаниеТипаСтрока(100)); - - НоваяСтрока = ПредыдущиеЗначенияОКСМ.Добавить(); - НоваяСтрока.Код = "203"; - НоваяСтрока.Наименование = "ЧЕШСКАЯ РЕСПУБЛИКА"; - НоваяСтрока.КодАльфа2 = "CZ"; - НоваяСтрока.КодАльфа3 = "CZE"; - - НоваяСтрока = ПредыдущиеЗначенияОКСМ.Добавить(); - НоваяСтрока.Код = "270"; - НоваяСтрока.Наименование = "ГАМБИЯ"; - НоваяСтрока.КодАльфа2 = "GM"; - НоваяСтрока.КодАльфа3 = "GMB"; - НоваяСтрока.НаименованиеПолное = "Республика Гамбия"; - - Запрос = Новый Запрос; - Запрос.Текст = "ВЫБРАТЬ - | СписокСтран.Код КАК Код, - | СписокСтран.Наименование КАК Наименование, - | СписокСтран.КодАльфа2 КАК КодАльфа2, - | СписокСтран.КодАльфа3 КАК КодАльфа3, - | СписокСтран.НаименованиеПолное КАК НаименованиеПолное - |ПОМЕСТИТЬ СписокСтран - |ИЗ - | &СписокСтран КАК СписокСтран - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ - | СтраныМира.Ссылка КАК Ссылка - |ИЗ - | СписокСтран КАК СписокСтран - | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.СтраныМира КАК СтраныМира - | ПО (СтраныМира.Код = СписокСтран.Код) - | И (СтраныМира.Наименование = СписокСтран.Наименование) - | И (СтраныМира.КодАльфа2 = СписокСтран.КодАльфа2) - | И (СтраныМира.КодАльфа3 = СписокСтран.КодАльфа3) - | И (СтраныМира.НаименованиеПолное = СписокСтран.НаименованиеПолное)"; - - Запрос.УстановитьПараметр("СписокСтран", ПредыдущиеЗначенияОКСМ); - Возврат Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка"); - -КонецФункции #КонецОбласти diff --git a/SSL/src/CommonModules/УправлениеПечатью/Module.bsl b/SSL/src/CommonModules/УправлениеПечатью/Module.bsl index 6381b94ce..964af7b06 100644 --- a/SSL/src/CommonModules/УправлениеПечатью/Module.bsl +++ b/SSL/src/CommonModules/УправлениеПечатью/Module.bsl @@ -114,19 +114,28 @@ // Форма - УправляемаяФорма - форма, в которой необходимо разместить подменю Печать. // МестоРазмещенияКомандПоУмолчанию - ЭлементФормы - группа, в которую необходимо разместить подменю Печать, // по умолчанию размещается в командную панель формы. -// ОбъектыПечати - Массив - список объектов метаданных, для которых необходимо сформировать +// ОбъектыПечати - Массив - список объектов метаданных, для которых необходимо сформировать // объединенное подменю Печать. -Процедура ПриСозданииНаСервере(Форма, МестоРазмещенияКомандПоУмолчанию = Неопределено, ОбъектыПечати = Неопределено) Экспорт +Процедура ПриСозданииНаСервере(Форма, МестоРазмещенияКомандПоУмолчанию = Неопределено, Знач ОбъектыПечати = Неопределено) Экспорт + Если Форма.Команды.Найти("АдресНастроекКомандВоВременномХранилище") <> Неопределено Тогда + Возврат; // Команды печати уже выведены при помощи механики подключаемых команд. + КонецЕсли; ИмяФормы = Форма.ИмяФормы; - Если ОбъектыПечати = Неопределено Тогда - КомандыПечати = УправлениеПечатьюПовтИсп.КомандыПечатиФормы(ИмяФормы, ОбъектыПечати).Скопировать(); - ОпределитьВидимостьКомандПечатиПоФункциональнымОпциям(КомандыПечати, Форма); - Иначе - КомандыПечати = КомандыПечатиФормы(Форма, ОбъектыПечати).Скопировать(); + СписокОбъектов = Неопределено; + Если ОбъектыПечати <> Неопределено Тогда + СписокОбъектов = Новый Массив; + Для Каждого ОбъектМетаданных Из ОбъектыПечати Цикл + СписокОбъектов.Добавить(ОбъектМетаданных.ПолноеИмя()); + КонецЦикла; + СписокОбъектов = ОбщегоНазначения.ЗначениеВСтрокуXML(СписокОбъектов); КонецЕсли; + КомандыПечати = УправлениеПечатьюПовтИсп.КомандыПечатиФормы(ИмяФормы, СписокОбъектов).Скопировать(); + Если МестоРазмещенияКомандПоУмолчанию = Неопределено Тогда + МестоРазмещенияКомандПоУмолчанию = Форма.Элементы.Найти("ПодменюПечать"); + КонецЕсли; Если МестоРазмещенияКомандПоУмолчанию <> Неопределено Тогда Для Каждого КомандаПечати Из КомандыПечати Цикл Если ПустаяСтрока(КомандаПечати.МестоРазмещения) Тогда @@ -135,8 +144,6 @@ КонецЦикла; КонецЕсли; - КомандыПечати.Колонки.Добавить("ИмяКомандыНаФорме", Новый ОписаниеТипов("Строка")); - ТаблицаКоманд = КомандыПечати.Скопировать(,"МестоРазмещения"); ТаблицаКоманд.Свернуть("МестоРазмещения"); МестаРазмещения = ТаблицаКоманд.ВыгрузитьКолонку("МестоРазмещения"); @@ -172,10 +179,23 @@ // // Параметры: // Форма - УправляемаяФорма, Строка - форма или полное имя формы, для которой необходимо получить список команд печати. +// ИсточникиКоманд - Массив - список объектов метаданных, из которых необходимо брать команды печати. // // Возвращаемое значение: // ТаблицаЗначений - описание см. в СоздатьКоллекциюКомандПечати(). -Функция КомандыПечатиФормы(Форма, СписокОбъектов = Неопределено) Экспорт +Функция КомандыПечатиФормы(Форма, ИсточникиКоманд = Неопределено) Экспорт + + СписокОбъектов = Неопределено; + Если ТипЗнч(ИсточникиКоманд) = Тип("Массив") И ИсточникиКоманд.Количество() > 0 Тогда + Если ТипЗнч(ИсточникиКоманд[0]) = Тип("Строка") Тогда + СписокОбъектов = Новый Массив; + Для Каждого ИмяОбъектаМетаданных Из ИсточникиКоманд Цикл + СписокОбъектов.Добавить(Метаданные.НайтиПоПолномуИмени(ИмяОбъектаМетаданных)); + КонецЦикла; + Иначе + СписокОбъектов = ИсточникиКоманд; + КонецЕсли; + КонецЕсли; Если ТипЗнч(Форма) = Тип("УправляемаяФорма") Тогда ИмяФормы = Форма.ИмяФормы; @@ -183,17 +203,23 @@ ИмяФормы = Форма; КонецЕсли; + ОбъектМетаданных = Метаданные.НайтиПоПолномуИмени(ИмяФормы); + Если ОбъектМетаданных <> Неопределено И Не Метаданные.ОбщиеФормы.Содержит(ОбъектМетаданных) Тогда + ОбъектМетаданных = ОбъектМетаданных.Родитель(); + Иначе + ОбъектМетаданных = Неопределено; + КонецЕсли; + + Если ОбъектМетаданных <> Неопределено Тогда + СсылкаОМ = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ОбъектМетаданных); + КонецЕсли; + КомандыПечати = СоздатьКоллекциюКомандПечати(); СтандартнаяОбработка = Истина; УправлениеПечатьюПереопределяемый.ПередДобавлениемКомандПечати(ИмяФормы, КомандыПечати, СтандартнаяОбработка); Если СтандартнаяОбработка Тогда - ОбъектМетаданных = Метаданные.НайтиПоПолномуИмени(ИмяФормы); - Если ОбъектМетаданных <> Неопределено Тогда - ОбъектМетаданных = ОбъектМетаданных.Родитель(); - КонецЕсли; - Если СписокОбъектов <> Неопределено Тогда ЗаполнитьКомандыПечатиДляСпискаОбъектов(СписокОбъектов, КомандыПечати); ИначеЕсли ОбъектМетаданных = Неопределено Тогда @@ -217,7 +243,7 @@ МенеджерПечати.ДобавитьКомандыПечати(ДобавляемыеКомандыПечати); Для Каждого КомандаПечати Из ДобавляемыеКомандыПечати Цикл - Если ПустаяСтрока(КомандаПечати.МенеджерПечати) Тогда + Если КомандаПечати.МенеджерПечати = Неопределено Тогда КомандаПечати.МенеджерПечати = ОбъектМетаданных.ПолноеИмя(); КонецЕсли; ЗаполнитьЗначенияСвойств(КомандыПечати.Добавить(), КомандаПечати); @@ -231,6 +257,18 @@ КонецЕсли; КонецЕсли; + Если ОбъектМетаданных <> Неопределено Тогда + НастройкиРасширений = ПодключаемыеКоманды.НастройкиРасширенийПодключенныхКОбъектуМетаданных(СсылкаОМ); + РасширенияПечати = НастройкиРасширений.НайтиСтроки(Новый Структура("ДобавитьКомандыПечати", Истина)); + Для Каждого Расширение Из РасширенияПечати Цикл + Расширение.Менеджер.ДобавитьКомандыПечати(КомандыПечати); + ДобавленныеКоманды = КомандыПечати.НайтиСтроки(Новый Структура("МенеджерПечати", Неопределено)); + Для Каждого Команда Из ДобавленныеКоманды Цикл + Команда.МенеджерПечати = Расширение.ПолноеИмя; + КонецЦикла; + КонецЦикла; + КонецЕсли; + Для Каждого КомандаПечати Из КомандыПечати Цикл Если КомандаПечати.Порядок = 0 Тогда КомандаПечати.Порядок = 50; @@ -239,7 +277,7 @@ КонецЦикла; Если ОбъектМетаданных <> Неопределено Тогда - УстановитьНастройкиКомандПечати(КомандыПечати, ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ОбъектМетаданных)); + УстановитьНастройкиКомандПечати(КомандыПечати, СсылкаОМ); КонецЕсли; КомандыПечати.Сортировать("Порядок Возр, Представление Возр"); @@ -309,7 +347,26 @@ // * Обработчик - Строка - (необязательный) Клиентский обработчик команды, в который необходимо передать // управление вместо стандартного обработчика команды печать. Используется, // например, когда печатная форма формируется на клиенте. +// Формат "<ИмяОбщегоМодуля>.<ИмяПроцедуры>" используется когда процедура размещена +// в общем модуле. +// Формат "<ИмяПроцедуры>" используется когда процедура размещена +// в модуле основной формы отчета или обработки. // Пример: "ОбработчикиПечатиКлиент.ПечатьСчетовНаОплатуПокупателю". +// Пример обработчика в модуле формы: +// // Формирует печатную форму <представление печатной формы>. +// // +// // Параметры: +// // ПараметрыПечати - Структура - Сведения о печатной форме. +// // * ОбъектыПечати - Массив - Массив ссылок выбранных объектов. +// // * Форма - УправляемаяФорма - Форма, из которой вызвана команда печати. +// // * ДополнительныеПараметры - Структура - Дополнительные параметры печати. +// // Прочие ключи структуры соответствуют колонкам таблицы КомандыПечати, +// // подробнее см. в функции УправлениеПечатью.СоздатьКоллекциюКомандПечати. +// // +// &НаКлиенте +// Функция <ИмяПроцедуры>(ПараметрыПечати) Экспорт +// // Обработчик печати. +// КонецФункции // // * Порядок - Число - (необязательный) Значение от 1 до 100, указывающее порядок размещения команды // по отношению к другим командам. Сортировка команд меню Печать осуществляется @@ -337,6 +394,11 @@ // * ФункциональныеОпции - Строка - (необязательный) Имена функциональных опций через запятую, от которых зависит // доступность команды печати. // +// * УсловияВидимости - Массив - - (необязательный) Коллекция условий видимости команды в зависимости от +// контекста. Условия видимости команды задаются при помощи процедуры +// ДобавитьУсловиеВидимостиКоманды. +// Если параметр не задан, команда видна вне зависимости от контекста. +// // * ПроверкаПроведенияПередПечатью - Булево - (необязательный) Признак необходимости проверки проведенности // документов перед печатью. Если параметр не указан, то проверка проведенности // не выполняется. @@ -392,7 +454,7 @@ // Опции (необязательные параметры). // менеджер печати - Результат.Колонки.Добавить("МенеджерПечати", Новый ОписаниеТипов("Строка")); + Результат.Колонки.Добавить("МенеджерПечати", Неопределено); Результат.Колонки.Добавить("ТипыОбъектовПечати", Новый ОписаниеТипов("Массив")); // Альтернативный обработчик команды. @@ -408,6 +470,9 @@ // Имена функциональных опций, влияющих на видимость команды, разделитель - запятая. Результат.Колонки.Добавить("ФункциональныеОпции", Новый ОписаниеТипов("Строка")); + // Динамические условия видимости. + Результат.Колонки.Добавить("УсловияВидимости", Новый ОписаниеТипов("Массив")); + // проверка проведения Результат.Колонки.Добавить("ПроверкаПроведенияПередПечатью", Новый ОписаниеТипов("Булево")); @@ -434,11 +499,34 @@ Результат.Колонки.Добавить("СкрытаФункциональнымиОпциями", Новый ОписаниеТипов("Булево")); Результат.Колонки.Добавить("УникальныйИдентификатор", Новый ОписаниеТипов("Строка")); Результат.Колонки.Добавить("Отключена", Новый ОписаниеТипов("Булево")); + Результат.Колонки.Добавить("ИмяКомандыНаФорме", Новый ОписаниеТипов("Строка")); Возврат Результат; КонецФункции +// Задает условия видимости команды печати на форме в зависимости от контекста. +// +// Параметры: +// КомандаПечати - СтрокаТаблицыЗначений - элемент коллекции КомандыПечати в процедуре ДобавитьКомандыПечати, +// описание см. в функции СоздатьКоллекциюКомандПечати. +// Реквизит - Строка - имя реквизита объекта; +// Значение - Произвольный - значение реквизита объекта; +// МетодСравнения - ВидСравнения - вид сравнения значений. Допустимые для использования виды: +// Равно, НеРавно, Больше, БольшеИлиРавно, Меньше, МеньшеИлиРавно, ВСписке, НеВСписке. +// Значение по умолчанию: Равно. +// +Процедура ДобавитьУсловиеВидимостиКоманды(КомандаПечати, Реквизит, Значение, Знач МетодСравнения = Неопределено) Экспорт + Если МетодСравнения = Неопределено Тогда + МетодСравнения = ВидСравнения.Равно; + КонецЕсли; + УсловиеВидимости = Новый Структура; + УсловиеВидимости.Вставить("Реквизит", Реквизит); + УсловиеВидимости.Вставить("ВидСравнения", МетодСравнения); + УсловиеВидимости.Вставить("Значение", Значение); + КомандаПечати.УсловияВидимости.Добавить(УсловиеВидимости); +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Работа с шаблонами офисных документов. @@ -801,6 +889,16 @@ КонецФункции +#Область УстаревшиеПроцедурыИФункции + +// Устарела. Настройка ЛокальныйКаталогФайловПечати больше не используется. +// Возвращает путь к каталогу, используемому при печати. +Функция ПолучитьЛокальныйКаталогФайловПечати() Экспорт + Возврат ""; +КонецФункции + +#КонецОбласти + #КонецОбласти #Область СлужебныйПрограммныйИнтерфейс @@ -972,6 +1070,131 @@ КонецФункции +// Подготавливает печатные формы для шаблонов сообщений +// +Функция ПодготовитьПечатныеФормы(Знач ИмяМенеджераПечати, Знач ИменаМакетов, Знач МассивОбъектов, Знач ПараметрыПечати, + ДопустимыеТипыОбъектовПечати = Неопределено) Экспорт + Возврат СформироватьПечатныеФормы(ИмяМенеджераПечати, ИменаМакетов, МассивОбъектов, ПараметрыПечати, ДопустимыеТипыОбъектовПечати); +КонецФункции + +// Возвращает допустимые для сохранения форматы печатных форм для шаблонов сообщений. +// +Функция ФорматыСохраненияТабличногоДокумента() Экспорт + Возврат НастройкиФорматовСохраненияТабличногоДокумента(); +КонецФункции + +Функция КомандыПечатиОбъектаДоступныеДляВложений(ОбъектМетаданных) Экспорт + Возврат КомандыПечатиОбъекта(ОбъектМетаданных); +КонецФункции + +//////////////////////////////////////////////////////////////////////////////// +// Обработчики условных вызовов. + +// См. описание этой же процедуры в модуле ИнтеграцияСтандартныхПодсистем. +Процедура ПриОпределенииСтруктурыНастроекПодключаемыхОбъектов(СтруктураНастроек) Экспорт + СтруктураНастроек.Вставить("ДобавитьКомандыПечати", Новый ОписаниеТипов("Булево")); +КонецПроцедуры + +// См. описание этой же процедуры в модуле ИнтеграцияСтандартныхПодсистем. +Процедура ПриОпределенииИспользуемыхПодменю(Форма, ИспользуемыеПодменю) Экспорт + Если Форма.Команды.Найти("АдресКомандПечатиВоВременномХранилище") <> Неопределено Тогда + Возврат; // Команды печати уже выведены при помощи механики печати. + КонецЕсли; + Если Форма.Элементы.Найти("ПодменюПечать") <> Неопределено Тогда + ИспользуемыеПодменю.Добавить("ПодменюПечать"); + КонецЕсли; +КонецПроцедуры + +// См. описание этой же процедуры в модуле ИнтеграцияСтандартныхПодсистем. +Процедура ПриОпределенииКомандПодключенныхКОбъекту(НастройкиФормы, НастройкиОбъекта, НастройкиРасширений, Команды) Экспорт + Если НастройкиФормы.ИспользуемыеПодменю.Найти("ПодменюПечать") = Неопределено Тогда + Возврат; + КонецЕсли; + + КомандыПечати = СоздатьКоллекциюКомандПечати(); + + СтандартнаяОбработка = НастройкиОбъекта.Менеджер <> Неопределено; + УправлениеПечатьюПереопределяемый.ПередДобавлениемКомандПечати(НастройкиФормы.ИмяФормы, КомандыПечати, СтандартнаяОбработка); + + Если СтандартнаяОбработка Тогда + НастройкиСписка = Новый Структура; + НастройкиСписка.Вставить("МенеджерКомандПечати", НастройкиОбъекта.Менеджер); + НастройкиСписка.Вставить("АвтоматическоеЗаполнение", НастройкиОбъекта.ЭтоЖурналДокументов); + Если НастройкиСписка.АвтоматическоеЗаполнение Тогда + УправлениеПечатьюПереопределяемый.ПриПолученииНастроекСпискаКомандПечати(НастройкиСписка); + КонецЕсли; + Если НастройкиСписка.АвтоматическоеЗаполнение Тогда + ЗаполнитьКомандыПечатиДляСпискаОбъектов(НастройкиОбъекта.Метаданные.РегистрируемыеДокументы, КомандыПечати); + Иначе + НастройкиОбъекта.Менеджер.ДобавитьКомандыПечати(КомандыПечати); + ДобавленныеКоманды = КомандыПечати.НайтиСтроки(Новый Структура("МенеджерПечати", Неопределено)); + Для Каждого КомандаПечати Из ДобавленныеКоманды Цикл + КомандаПечати.МенеджерПечати = НастройкиОбъекта.ПолноеИмя; + КонецЦикла; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда + МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки"); + МодульДополнительныеОтчетыИОбработки.ПриПолученииКомандПечати(КомандыПечати, НастройкиОбъекта.ПолноеИмя); + КонецЕсли; + КонецЕсли; + КонецЕсли; + + РасширенияПечати = НастройкиРасширений.НайтиСтроки(Новый Структура("ДобавитьКомандыПечати", Истина)); + Для Каждого Расширение Из РасширенияПечати Цикл + Расширение.Менеджер.ДобавитьКомандыПечати(КомандыПечати); + ДобавленныеКоманды = КомандыПечати.НайтиСтроки(Новый Структура("МенеджерПечати", Неопределено)); + Для Каждого КомандаПечати Из ДобавленныеКоманды Цикл + КомандаПечати.МенеджерПечати = Расширение.ПолноеИмя; + КонецЦикла; + КонецЦикла; + + Если КомандыПечати.Количество() = 0 Тогда + Возврат; + КонецЕсли; + + ОтключенныеКомандыПечати = ОтключенныеКомандыПечати(НастройкиОбъекта.Ссылка); + ЕстьФильтрПоОтключенным = ОтключенныеКомандыПечати.Количество() > 0; + + КлючиПараметровОбработчика = "Обработчик, МенеджерПечати, ЗаголовокФормы, СразуНаПринтер, ФорматСохранения, + |ПереопределитьПользовательскиеНастройкиКоличества, ДополнитьКомплектВнешнимиПечатнымиФормами, + |ФиксированныйКомплект, ДополнительныеПараметры"; + Для Каждого КомандаПечати Из КомандыПечати Цикл + Если ЕстьФильтрПоОтключенным Тогда + КомандаПечати.УникальныйИдентификатор = УникальныйИдентификаторКомандыПечати(КомандаПечати); + Если ОтключенныеКомандыПечати.Найти(КомандаПечати.УникальныйИдентификатор) <> Неопределено Тогда + Продолжить; + КонецЕсли; + КонецЕсли; + КомандаПечати.ДополнительныеПараметры.Вставить("ДополнитьКомплектВнешнимиПечатнымиФормами", КомандаПечати.ДополнитьКомплектВнешнимиПечатнымиФормами); + + Команда = Команды.Добавить(); + ЗаполнитьЗначенияСвойств(Команда, КомандаПечати, , "Обработчик"); + Если Команда.Порядок = 0 Тогда + Команда.Порядок = 50; + КонецЕсли; + Команда.Группа = КомандаПечати.МестоРазмещения; + Если ПустаяСтрока(Команда.Группа) Тогда + Команда.Группа = "ПодменюПечать"; + КонецЕсли; + Команда.МножественныйВыбор = Истина; + Если ТипЗнч(КомандаПечати.ТипыОбъектовПечати) = Тип("Массив") И КомандаПечати.ТипыОбъектовПечати.Количество() > 0 Тогда + Команда.ТипПараметра = Новый ОписаниеТипов(КомандаПечати.ТипыОбъектовПечати); + КонецЕсли; + Команда.ВидимостьВФормах = КомандаПечати.СписокФорм; + Если КомандаПечати.НеВыполнятьЗаписьВФорме Тогда + Команда.РежимЗаписи = "БезЗаписи"; + ИначеЕсли КомандаПечати.ПроверкаПроведенияПередПечатью Тогда + Команда.РежимЗаписи = "Проведение"; + Иначе + Команда.РежимЗаписи = "Запись"; + КонецЕсли; + Команда.ТребуетсяРаботаСФайлами = КомандаПечати.ТребуетсяРасширениеРаботыСФайлами; + + Команда.Обработчик = "УправлениеПечатьюСлужебныйКлиент.ОбработчикКоманды"; + Команда.ДополнительныеПараметры = Новый Структура(КлючиПараметровОбработчика); + ЗаполнитьЗначенияСвойств(Команда.ДополнительныеПараметры, КомандаПечати); + КонецЦикла; +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -1034,10 +1257,13 @@ // Если нет раздела администрирование, дело не добавляется. Подсистема = Метаданные.Подсистемы.Найти("Администрирование"); - Если Подсистема <> Неопределено - И Не ПравоДоступа("Просмотр", Подсистема) - И Не ОбщегоНазначения.ОбъектМетаданныхДоступенПоФункциональнымОпциям(Подсистема) Тогда - Возврат; + Если Подсистема = Неопределено + Или Не ПравоДоступа("Просмотр", Подсистема) + Или Не ОбщегоНазначения.ОбъектМетаданныхДоступенПоФункциональнымОпциям(Подсистема) Тогда + Разделы = МодульТекущиеДелаСервер.РазделыДляОбъекта("РегистрСведений.ПользовательскиеМакетыПечати"); + Иначе + Разделы = Новый Массив; + Разделы.Добавить(Подсистема); КонецЕсли; ВывестиДело = Истина; @@ -1052,35 +1278,39 @@ КоличествоПользовательскихМакетов = КоличествоИспользуемыхПользовательскихМакетов(); - // Добавление дела. - Дело = ТекущиеДела.Добавить(); - Дело.Идентификатор = "МакетыПечатныхФорм"; - Дело.ЕстьДела = ВывестиДело И КоличествоПользовательскихМакетов > 0; - Дело.Представление = НСтр("ru = 'Макеты печатных форм'"); - Дело.Количество = КоличествоПользовательскихМакетов; - Дело.Форма = "РегистрСведений.ПользовательскиеМакетыПечати.Форма.ПроверкаПечатныхФорм"; - Дело.Владелец = "ПроверитьСовместимостьСТекущейВерсией"; - - // Проверка наличия группы дела. Если группа отсутствует - добавляем. - ГруппаДела = ТекущиеДела.Найти("ПроверитьСовместимостьСТекущейВерсией", "Идентификатор"); - Если ГруппаДела = Неопределено Тогда - ГруппаДела = ТекущиеДела.Добавить(); - ГруппаДела.Идентификатор = "ПроверитьСовместимостьСТекущейВерсией"; - ГруппаДела.ЕстьДела = Дело.ЕстьДела; - ГруппаДела.Представление = НСтр("ru = 'Проверить совместимость'"); - Если Дело.ЕстьДела Тогда - ГруппаДела.Количество = Дело.Количество; - КонецЕсли; - ГруппаДела.Владелец = Подсистема; - Иначе - Если Не ГруппаДела.ЕстьДела Тогда - ГруппаДела.ЕстьДела = Дело.ЕстьДела; - КонецЕсли; + Для Каждого Раздел Из Разделы Цикл + ИдентификаторРаздела = "ПроверитьСовместимостьСТекущейВерсией" + СтрЗаменить(Раздел.ПолноеИмя(), ".", ""); - Если Дело.ЕстьДела Тогда - ГруппаДела.Количество = ГруппаДела.Количество + Дело.Количество; + // Добавление дела. + Дело = ТекущиеДела.Добавить(); + Дело.Идентификатор = "МакетыПечатныхФорм"; + Дело.ЕстьДела = ВывестиДело И КоличествоПользовательскихМакетов > 0; + Дело.Представление = НСтр("ru = 'Макеты печатных форм'"); + Дело.Количество = КоличествоПользовательскихМакетов; + Дело.Форма = "РегистрСведений.ПользовательскиеМакетыПечати.Форма.ПроверкаПечатныхФорм"; + Дело.Владелец = ИдентификаторРаздела; + + // Проверка наличия группы дела. Если группа отсутствует - добавляем. + ГруппаДела = ТекущиеДела.Найти(ИдентификаторРаздела, "Идентификатор"); + Если ГруппаДела = Неопределено Тогда + ГруппаДела = ТекущиеДела.Добавить(); + ГруппаДела.Идентификатор = ИдентификаторРаздела; + ГруппаДела.ЕстьДела = Дело.ЕстьДела; + ГруппаДела.Представление = НСтр("ru = 'Проверить совместимость'"); + Если Дело.ЕстьДела Тогда + ГруппаДела.Количество = Дело.Количество; + КонецЕсли; + ГруппаДела.Владелец = Раздел; + Иначе + Если Не ГруппаДела.ЕстьДела Тогда + ГруппаДела.ЕстьДела = Дело.ЕстьДела; + КонецЕсли; + + Если Дело.ЕстьДела Тогда + ГруппаДела.Количество = ГруппаДела.Количество + Дело.Количество; + КонецЕсли; КонецЕсли; - КонецЕсли; + КонецЦикла; КонецПроцедуры @@ -1551,11 +1781,26 @@ ОписаниеКомандыПечати.ИмяКомандыНаФорме = ИмяКоманды; - НовыйЭлемент = Форма.Элементы.Добавить(МестоРазмещенияКоманд.Имя + ИмяКоманды, Тип("КнопкаФормы"), МестоРазмещенияКоманд); + НовыйЭлемент = Форма.Элементы.Добавить(ИмяКоманды, Тип("КнопкаФормы"), МестоРазмещенияКоманд); НовыйЭлемент.Вид = ВидКнопкиФормы.КнопкаКоманднойПанели; НовыйЭлемент.ИмяКоманды = ИмяКоманды; КонецЦикла; + // заглушка + ИмяКоманды = МестоРазмещенияКоманд.Имя + "КомандаПечатиЗаглушка"; + + КомандаФормы = Форма.Команды.Добавить(ИмяКоманды); + КомандаФормы.Действие = ""; + КомандаФормы.Заголовок = НСтр("ru = '(нет печатных форм)'"); + КомандаФормы.ИзменяетСохраняемыеДанные = Ложь; + КомандаФормы.Отображение = ОтображениеКнопки.КартинкаИТекст; + + НовыйЭлемент = Форма.Элементы.Добавить(ИмяКоманды, Тип("КнопкаФормы"), МестоРазмещенияКоманд); + НовыйЭлемент.Вид = ВидКнопкиФормы.КнопкаКоманднойПанели; + НовыйЭлемент.ИмяКоманды = ИмяКоманды; + НовыйЭлемент.Видимость = Ложь; + НовыйЭлемент.Доступность = Ложь; + КонецПроцедуры // Возвращает описание команды по имени элемента формы. @@ -1571,6 +1816,39 @@ КонецФункции +Функция СписокКомандЭкземпляраФормы(АдресКомандПечатиВоВременномХранилище) Экспорт + Команды = ПолучитьИзВременногоХранилища(АдресКомандПечатиВоВременномХранилище); + Если Команды.Колонки.Найти("ИмяКомандыНаФорме") = Неопределено Тогда + КомандыПечати = СоздатьКоллекциюКомандПечати(); + Для Каждого Команда Из Команды Цикл + КомандаПечати = КомандыПечати.Добавить(); + ЗаполнитьЗначенияСвойств(КомандаПечати, Команда, , "Обработчик"); + ЗаполнитьЗначенияСвойств(КомандаПечати, Команда.ДополнительныеПараметры); + КомандаПечати.МестоРазмещения = Команда.Группа; + Если ТипЗнч(Команда.ТипПараметра) = Тип("ОписаниеТипов") Тогда + КомандаПечати.ТипыОбъектовПечати = Команда.ТипПараметра.Типы(); + КонецЕсли; + КомандаПечати.СписокФорм = Команда.ВидимостьВФормах; + Если Команда.РежимЗаписи = "БезЗаписи" Тогда + КомандаПечати.НеВыполнятьЗаписьВФорме = Истина; + Иначе + КомандаПечати.НеВыполнятьЗаписьВФорме = Ложь; + Если Команда.РежимЗаписи = "Проведение" Тогда + КомандаПечати.ПроверкаПроведенияПередПечатью = Истина; + Иначе + КомандаПечати.ПроверкаПроведенияПередПечатью = Ложь; + КонецЕсли; + КонецЕсли; + КомандаПечати.ТребуетсяРасширениеРаботыСФайлами = Команда.ТребуетсяРаботаСФайлами; + КомандаПечати.ИмяКомандыНаФорме = Команда.ИмяВФорме; + КонецЦикла; + Иначе + КомандыПечати = Команды; + КонецЕсли; + + Возврат ОбщегоНазначения.ТаблицаЗначенийВМассив(КомандыПечати); +КонецФункции + // Фильтрует список команд печати в соответствии с установленными функциональными опциями. Процедура ОпределитьВидимостьКомандПечатиПоФункциональнымОпциям(КомандыПечати, Форма = Неопределено) Для НомерКоманды = -КомандыПечати.Количество() + 1 По 0 Цикл @@ -1829,6 +2107,7 @@ Функция ПакетДокументов(ТабличныеДокументы, ОбъектыПечати, ПечататьКомплектами, КоличествоЭкземпляров = 1) Экспорт ПакетОтображаемыхДокументов = Новый ПакетОтображаемыхДокументов; + ПакетОтображаемыхДокументов.РазборПоКопиям = Истина; КоллекцияПечатныхФорм = ТабличныеДокументы.ВыгрузитьЗначения(); Для Каждого ПечатнаяФорма Из КоллекцияПечатныхФорм Цикл @@ -1845,7 +2124,7 @@ КонецЕсли; ТабличныйДокумент = ПечатнаяФорма.ПолучитьОбласть(Область.Верх, , Область.Низ); - ЗаполнитьЗначенияСвойств(ТабличныйДокумент, ПечатнаяФорма, "АвтоМасштаб,Вывод,ВысотаСтраницы,ДвусторонняяПечать,Защита,ИмяПринтера,КодЯзыкаМакета,КоличествоЭкземпляров,МасштабПечати,ОриентацияСтраницы,ПолеСверху,ПолеСлева,ПолеСнизу,ПолеСправа,РазборПоКопиям,РазмерКолонтитулаСверху,РазмерКолонтитулаСнизу,РазмерСтраницы,ТочностьПечати,ЧерноБелаяПечать,ШиринаСтраницы,ЭкземпляровНаСтранице"); + ЗаполнитьЗначенияСвойств(ТабличныйДокумент, ПечатнаяФорма, "АвтоМасштаб,Вывод,ВысотаСтраницы,ДвусторонняяПечать,Защита,ИмяПринтера,КодЯзыка,КоличествоЭкземпляров,МасштабПечати,ОриентацияСтраницы,ПолеСверху,ПолеСлева,ПолеСнизу,ПолеСправа,РазборПоКопиям,РазмерКолонтитулаСверху,РазмерКолонтитулаСнизу,РазмерСтраницы,ТочностьПечати,ЧерноБелаяПечать,ШиринаСтраницы,ЭкземпляровНаСтранице"); ПакетОтображаемыхДокументов.Состав.Добавить().Данные = ПакетСОднимТабличнымДокументом(ТабличныйДокумент); КонецЦикла; @@ -1854,16 +2133,21 @@ Для Каждого ПечатнаяФорма Из КоллекцияПечатныхФорм Цикл ТабличныйДокумент = Новый ТабличныйДокумент; ТабличныйДокумент.Вывести(ПечатнаяФорма); - ЗаполнитьЗначенияСвойств(ТабличныйДокумент, ПечатнаяФорма, "АвтоМасштаб,Вывод,ВысотаСтраницы,ДвусторонняяПечать,Защита,ИмяПринтера,КодЯзыкаМакета,КоличествоЭкземпляров,МасштабПечати,ОриентацияСтраницы,ПолеСверху,ПолеСлева,ПолеСнизу,ПолеСправа,РазборПоКопиям,РазмерКолонтитулаСверху,РазмерКолонтитулаСнизу,РазмерСтраницы,ТочностьПечати,ЧерноБелаяПечать,ШиринаСтраницы,ЭкземпляровНаСтранице"); + ЗаполнитьЗначенияСвойств(ТабличныйДокумент, ПечатнаяФорма, "АвтоМасштаб,Вывод,ВысотаСтраницы,ДвусторонняяПечать,Защита,ИмяПринтера,КодЯзыка,КоличествоЭкземпляров,МасштабПечати,ОриентацияСтраницы,ПолеСверху,ПолеСлева,ПолеСнизу,ПолеСправа,РазборПоКопиям,РазмерКолонтитулаСверху,РазмерКолонтитулаСнизу,РазмерСтраницы,ТочностьПечати,ЧерноБелаяПечать,ШиринаСтраницы,ЭкземпляровНаСтранице"); ПакетОтображаемыхДокументов.Состав.Добавить().Данные = ПакетСОднимТабличнымДокументом(ТабличныйДокумент); КонецЦикла; КонецЕсли; ПакетКомплектов = Новый ПакетОтображаемыхДокументов; + ПакетКомплектов.РазборПоКопиям = Истина; Для Номер = 1 По КоличествоЭкземпляров Цикл ПакетКомплектов.Состав.Добавить().Данные = ПакетОтображаемыхДокументов; КонецЦикла; + Если КоллекцияПечатныхФорм.Количество() > 0 Тогда + ПакетКомплектов.ИмяПринтера = КоллекцияПечатныхФорм[0].ИмяПринтера; + КонецЕсли; + Возврат ПакетКомплектов; КонецФункции @@ -1874,6 +2158,7 @@ ПакетСОднимДокументом = Новый ПакетОтображаемыхДокументов; ПакетСОднимДокументом.Состав.Добавить(АдресТабличногоДокументаВоВременномХранилище); ЗаполнитьЗначенияСвойств(ПакетСОднимДокументом, ТабличныйДокумент, "Вывод, ДвусторонняяПечать, ИмяПринтера, КоличествоЭкземпляров, ТочностьПечати"); + ПакетСОднимДокументом.РазборПоКопиям = Истина; Если ТабличныйДокумент.РазборПоКопиям <> Неопределено Тогда ПакетСОднимДокументом.РазборПоКопиям = ТабличныйДокумент.РазборПоКопиям; КонецЕсли; @@ -1917,7 +2202,7 @@ Если ДобавляемаяКомандаПечати.ТипыОбъектовПечати.Количество() = 0 Тогда ДобавляемаяКомандаПечати.ТипыОбъектовПечати.Добавить(Тип(СтрЗаменить(ОбъектМетаданных.ПолноеИмя(), ".", "Ссылка."))); КонецЕсли; - ЗаполнитьЗначенияСвойств(КомандыПечати.Добавить(), ДобавляемаяКомандаПечати, , "СписокФорм,МестоРазмещения"); + ЗаполнитьЗначенияСвойств(КомандыПечати.Добавить(), ДобавляемаяКомандаПечати, , "МестоРазмещения"); КонецЦикла; КонецЦикла; КонецПроцедуры @@ -1995,13 +2280,14 @@ КомандыПечати = СоздатьКоллекциюКомандПечати(); ИмяОбъекта = ОбъектМетаданных.ПолноеИмя(); + СсылкаОМ = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ОбъектМетаданных); МенеджерПечати = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ИмяОбъекта); ДобавляемыеКомандыПечати = СоздатьКоллекциюКомандПечати(); МенеджерПечати.ДобавитьКомандыПечати(ДобавляемыеКомандыПечати); Для Каждого КомандаПечати Из ДобавляемыеКомандыПечати Цикл - Если ПустаяСтрока(КомандаПечати.МенеджерПечати) Тогда + Если КомандаПечати.МенеджерПечати = Неопределено Тогда КомандаПечати.МенеджерПечати = ИмяОбъекта; КонецЕсли; Если КомандаПечати.Порядок = 0 Тогда @@ -2015,22 +2301,41 @@ МодульДополнительныеОтчетыИОбработки.ПриПолученииКомандПечати(КомандыПечати, ИмяОбъекта); КонецЕсли; + НастройкиРасширений = ПодключаемыеКоманды.НастройкиРасширенийПодключенныхКОбъектуМетаданных(СсылкаОМ); + РасширенияПечати = НастройкиРасширений.НайтиСтроки(Новый Структура("ДобавитьКомандыПечати", Истина)); + Для Каждого Расширение Из РасширенияПечати Цикл + Расширение.Менеджер.ДобавитьКомандыПечати(КомандыПечати); + ДобавленныеКоманды = КомандыПечати.НайтиСтроки(Новый Структура("МенеджерПечати", Неопределено)); + Для Каждого Команда Из ДобавленныеКоманды Цикл + Команда.МенеджерПечати = Расширение.ПолноеИмя; + КонецЦикла; + КонецЦикла; + Для Каждого КомандаПечати Из КомандыПечати Цикл КомандаПечати.ДополнительныеПараметры.Вставить("ДополнитьКомплектВнешнимиПечатнымиФормами", КомандаПечати.ДополнитьКомплектВнешнимиПечатнымиФормами); КонецЦикла; КомандыПечати.Сортировать("Порядок Возр, Представление Возр"); - УстановитьНастройкиКомандПечати(КомандыПечати, ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ОбъектМетаданных)); + УстановитьНастройкиКомандПечати(КомандыПечати, СсылкаОМ); ОпределитьВидимостьКомандПечатиПоФункциональнымОпциям(КомандыПечати); Возврат КомандыПечати; КонецФункции -// Устарела. Настройка ЛокальныйКаталогФайловПечати больше не используется. -// Возвращает путь к каталогу, используемому при печати. -Функция ПолучитьЛокальныйКаталогФайловПечати() Экспорт - Возврат ""; +Функция ОтключенныеКомандыПечати(СсылкаОбъектаМетаданных) + УстановитьПривилегированныйРежим(Истина); + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | НастройкиКомандПечати.УникальныйИдентификатор + |ИЗ + | РегистрСведений.НастройкиКомандПечати КАК НастройкиКомандПечати + |ГДЕ + | НастройкиКомандПечати.Владелец = &Владелец + | И НастройкиКомандПечати.Видимость = ЛОЖЬ"; + Запрос.УстановитьПараметр("Владелец", СсылкаОбъектаМетаданных); + Возврат Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("УникальныйИдентификатор"); КонецФункции //////////////////////////////////////////////////////////////////////////////// diff --git a/SSL/src/CommonModules/УправлениеПечатьюOOWriterКлиент/Module.bsl b/SSL/src/CommonModules/УправлениеПечатьюOOWriterКлиент/Module.bsl index 9054e5fef..79a8d3a67 100644 --- a/SSL/src/CommonModules/УправлениеПечатьюOOWriterКлиент/Module.bsl +++ b/SSL/src/CommonModules/УправлениеПечатьюOOWriterКлиент/Module.bsl @@ -499,14 +499,14 @@ Процедура НеУдалосьСформироватьПечатнуюФорму(ИнформацияОбОшибке) #Если ВебКлиент Тогда - ТекстУточнения = НСтр("ru = 'При работе через веб, требуется браузер Internet Explorer под управлением операционной системы Windows.'"); + ТекстУточнения = Символы.ПС + НСтр("ru = 'При работе через веб, требуется браузер Internet Explorer под управлением операционной системы Windows.'"); #Иначе ТекстУточнения = ""; #КонецЕсли ТекстИсключения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Не удалось сформировать печатную форму: %1. - |Для вывода печатных форм в формате OpenOffice.org Writer требуется, чтобы на компьютере был установлен пакет OpenOffice.org. %2'"), - КраткоеПредставлениеОшибки(ИнформацияОбОшибке), ТекстУточнения); + НСтр("ru = 'Для вывода печатных форм в формате OpenOffice.org Writer требуется, чтобы на компьютере был установлен пакет OpenOffice.org. %1 + |Технические подробности: %2'"), + ТекстУточнения, КраткоеПредставлениеОшибки(ИнформацияОбОшибке)); ВызватьИсключение ТекстИсключения; КонецПроцедуры diff --git a/SSL/src/CommonModules/УправлениеПечатьюВызовСервера/Module.bsl b/SSL/src/CommonModules/УправлениеПечатьюВызовСервера/Module.bsl index eff455353..293ce4532 100644 --- a/SSL/src/CommonModules/УправлениеПечатьюВызовСервера/Module.bsl +++ b/SSL/src/CommonModules/УправлениеПечатьюВызовСервера/Module.bsl @@ -86,4 +86,25 @@ Возврат ОбщегоНазначения.ТаблицаЗначенийВМассив(УправлениеПечатью.ПодготовитьКоллекциюПечатныхФорм(Идентификаторы)); КонецФункции +Функция СписокКомандЭкземпляраФормы(АдресКомандПечатиВоВременномХранилище) Экспорт + Возврат УправлениеПечатью.СписокКомандЭкземпляраФормы(АдресКомандПечатиВоВременномХранилище); +КонецФункции + +Функция ПровестиДокументы(Документы) Экспорт + Результат = Новый Структура; + Результат.Вставить("Непроведенные", ОбщегоНазначения.ПровестиДокументы(Документы)); + + Проведенные = Новый Массив; + Для Каждого Документ Из Документы Цикл + Если Результат.Непроведенные.Найти(Документ) = Неопределено Тогда + Проведенные.Добавить(Документ); + КонецЕсли; + КонецЦикла; + + ДанныеДляОповещения = СтандартныеПодсистемыСервер.ПодготовитьОповещениеФормОбИзменении(Проведенные); + Результат.Вставить("ДанныеДляОповещения", ДанныеДляОповещения); + + Возврат Результат; +КонецФункции + #КонецОбласти diff --git a/SSL/src/CommonModules/УправлениеПечатьюКлиент/Module.bsl b/SSL/src/CommonModules/УправлениеПечатьюКлиент/Module.bsl index bc5bace17..8e6e96b84 100644 --- a/SSL/src/CommonModules/УправлениеПечатьюКлиент/Module.bsl +++ b/SSL/src/CommonModules/УправлениеПечатьюКлиент/Module.bsl @@ -225,6 +225,24 @@ Возврат Неопределено; КонецФункции +// Запускает отложенный процесс обновления команд печати на форме. +// +// Параметры: +// Форма - УправляемаяФорма - форма, на которой необходимо обновить команды печати. +// +Процедура НачатьОбновлениеКоманд(Форма) Экспорт + Форма.ОтключитьОбработчикОжидания("Подключаемый_ОбновитьКоманды"); + Форма.ПодключитьОбработчикОжидания("Подключаемый_ОбновитьКоманды", 0.2, Истина); +КонецПроцедуры + +// Открывает форму выбора режима открытия макетов. +// +Процедура ЗадатьДействиеПриВыбореМакетаПечатнойФормы() Экспорт + + ОткрытьФорму("РегистрСведений.ПользовательскиеМакетыПечати.Форма.ВыбораРежимаОткрытияМакета"); + +КонецПроцедуры + #Область РаботаСМакетамиОфисныхДокументов //////////////////////////////////////////////////////////////////////////////// diff --git a/SSL/src/CommonModules/УправлениеПечатьюКлиентПовтИсп/Module.bsl b/SSL/src/CommonModules/УправлениеПечатьюКлиентПовтИсп/Module.bsl index b8a87a3c2..e611328ad 100644 --- a/SSL/src/CommonModules/УправлениеПечатьюКлиентПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/УправлениеПечатьюКлиентПовтИсп/Module.bsl @@ -15,4 +15,8 @@ КонецФункции +Функция СписокКомандЭкземпляраФормы(АдресКомандПечатиВоВременномХранилище) Экспорт + Возврат УправлениеПечатьюВызовСервера.СписокКомандЭкземпляраФормы(АдресКомандПечатиВоВременномХранилище); +КонецФункции + #КонецОбласти diff --git a/SSL/src/CommonModules/УправлениеПечатьюКлиентСервер/Module.bsl b/SSL/src/CommonModules/УправлениеПечатьюКлиентСервер/Module.bsl new file mode 100644 index 000000000..de3127cc6 --- /dev/null +++ b/SSL/src/CommonModules/УправлениеПечатьюКлиентСервер/Module.bsl @@ -0,0 +1,136 @@ +//////////////////////////////////////////////////////////////////////////////// +// Подсистема "Печать". +// +//////////////////////////////////////////////////////////////////////////////// + +#Область ПрограммныйИнтерфейс + +// Обновляет список команд печати в зависимости от текущего контекста. +// +// Параметры: +// Форма - УправляемаяФорма - форма, для которой требуется обновление команд печати. +// Источник - ДанныеФормыСтруктура, ТаблицаФормы - контекст для проверки условий (Форма.Объект или Форма.Элементы.Список). +// +Процедура ОбновитьКоманды(Форма, Источник) Экспорт + Если ТипЗнч(Источник) = Тип("ТаблицаФормы") Тогда + ВыбранныеОбъекты = Новый Массив; + #Если Клиент Тогда + ВыделенныеСтроки = Источник.ВыделенныеСтроки; + Для Каждого ВыделеннаяСтрока Из ВыделенныеСтроки Цикл + Если ТипЗнч(ВыделеннаяСтрока) = Тип("СтрокаГруппировкиДинамическогоСписка") Тогда + Продолжить; + КонецЕсли; + ТекущаяСтрока = Источник.ДанныеСтроки(ВыделеннаяСтрока); + Если ТекущаяСтрока <> Неопределено Тогда + ВыбранныеОбъекты.Добавить(ТекущаяСтрока); + КонецЕсли; + КонецЦикла; + #КонецЕсли + ОбновитьКомандыПечатиСпискаФормы(Форма, ВыбранныеОбъекты); + Иначе + ОбновитьКомандыПечатиФормыОбъекта(Форма, Источник); + КонецЕсли; +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +Функция КомандыНаФорме(Форма) + КомандаФормы = Форма.Команды.Найти("АдресКомандПечатиВоВременномХранилище"); + Если КомандаФормы = Неопределено Тогда + Возврат Новый Массив; + КонецЕсли; +#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда + Результат = УправлениеПечатью.СписокКомандЭкземпляраФормы(КомандаФормы.Действие); +#Иначе + Результат = УправлениеПечатьюКлиентПовтИсп.СписокКомандЭкземпляраФормы(КомандаФормы.Действие); +#КонецЕсли + Возврат Результат; +КонецФункции + +Процедура ОбновитьКомандыПечатиСпискаФормы(Форма, ВыбранныеОбъекты) + ГруппыПечать = Новый Соответствие; + КомандыНаФорме = КомандыНаФорме(Форма); + Для Каждого Команда Из КомандыНаФорме Цикл + Если Не ЗначениеЗаполнено(Команда.ИмяКомандыНаФорме) Тогда + Продолжить; + КонецЕсли; + ПоказыватьКоманду = Истина; + Для Каждого Объект Из ВыбранныеОбъекты Цикл + ПоказыватьКоманду = ПоказыватьКоманду И (Команда.ТипыОбъектовПечати.Количество() = 0 + Или Команда.ТипыОбъектовПечати.Найти(ТипЗнч(Объект.Ссылка)) <> Неопределено); + Если ПоказыватьКоманду Тогда + ПоказыватьКоманду = ПоказыватьКоманду И УсловияВыполняются(Команда.УсловияВидимости, Объект); + КонецЕсли; + Если Не ПоказыватьКоманду Тогда + Прервать; + КонецЕсли; + КонецЦикла; + КомандаЭлемент = Форма.Элементы[Команда.ИмяКомандыНаФорме]; + КомандаЭлемент.Видимость = ПоказыватьКоманду; + ГруппыПечать.Вставить(КомандаЭлемент.Родитель); + КонецЦикла; + + Для Каждого Элемент Из ГруппыПечать Цикл + ОбновитьВидГруппыПечать(Элемент.Ключ); + КонецЦикла; +КонецПроцедуры + +Процедура ОбновитьКомандыПечатиФормыОбъекта(Форма, Объект) + КомандыНаФорме = КомандыНаФорме(Форма); + Для Каждого Команда Из КомандыНаФорме Цикл + Если Не ЗначениеЗаполнено(Команда.ИмяКомандыНаФорме) Тогда + Продолжить; + КонецЕсли; + Видимость = УсловияВыполняются(Команда.УсловияВидимости, Объект); + КомандаЭлемент = Форма.Элементы[Команда.ИмяКомандыНаФорме]; + КомандаЭлемент.Видимость = Видимость; + КонецЦикла; +КонецПроцедуры + +Процедура ОбновитьВидГруппыПечать(Группа) + ИмяЭлементаЗаглушки = Группа.Имя + "КомандаПечатиЗаглушка"; + КоличествоВидимых = 0; + Для Каждого Элемент Из Группа.ПодчиненныеЭлементы Цикл + Если Элемент.Имя <> ИмяЭлементаЗаглушки И Элемент.Видимость Тогда + КоличествоВидимых = КоличествоВидимых + 1; + КонецЕсли; + КонецЦикла; + ЭлементЗаглушка = Группа.ПодчиненныеЭлементы.Найти(ИмяЭлементаЗаглушки); + ЭлементЗаглушка.Видимость = КоличествоВидимых = 0; +КонецПроцедуры + +Функция УсловияВыполняются(Условия, ЗначенияРеквизитов) + Результат = Истина; + Для Каждого Условие Из Условия Цикл + ИмяРеквизита = Условие.Реквизит; + Если ТипЗнч(ЗначенияРеквизитов) = Тип("ДанныеФормыСтруктура") + И Не ЗначенияРеквизитов.Свойство(ИмяРеквизита) Тогда + Продолжить; + КонецЕсли; + Если Условие.ВидСравнения = ВидСравнения.Равно Тогда + Результат = Результат И ЗначенияРеквизитов[ИмяРеквизита] = Условие.Значение; + ИначеЕсли Условие.ВидСравнения = ВидСравнения.Больше Тогда + Результат = Результат И ЗначенияРеквизитов[ИмяРеквизита] > Условие.Значение; + ИначеЕсли Условие.ВидСравнения = ВидСравнения.БольшеИлиРавно Тогда + Результат = Результат И ЗначенияРеквизитов[ИмяРеквизита] >= Условие.Значение; + ИначеЕсли Условие.ВидСравнения = ВидСравнения.Меньше Тогда + Результат = Результат И ЗначенияРеквизитов[ИмяРеквизита] < Условие.Значение; + ИначеЕсли Условие.ВидСравнения = ВидСравнения.МеньшеИлиРавно Тогда + Результат = Результат И ЗначенияРеквизитов[ИмяРеквизита] <= Условие.Значение; + ИначеЕсли Условие.ВидСравнения = ВидСравнения.НеРавно Тогда + Результат = Результат И ЗначенияРеквизитов[ИмяРеквизита] <> Условие.Значение; + ИначеЕсли Условие.ВидСравнения = ВидСравнения.ВСписке Тогда + Результат = Результат И Условие.Значение.Найти(ЗначенияРеквизитов[ИмяРеквизита]) <> Неопределено; + ИначеЕсли Условие.ВидСравнения = ВидСравнения.НеВСписке Тогда + Результат = Результат И Условие.Значение.Найти(ЗначенияРеквизитов[ИмяРеквизита]) = Неопределено; + КонецЕсли; + Если Не Результат Тогда + Прервать; + КонецЕсли; + КонецЦикла; + Возврат Результат; +КонецФункции + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/УправлениеПечатьюКлиентСервер/УправлениеПечатьюКлиентСервер.mdo b/SSL/src/CommonModules/УправлениеПечатьюКлиентСервер/УправлениеПечатьюКлиентСервер.mdo new file mode 100644 index 000000000..91537c632 --- /dev/null +++ b/SSL/src/CommonModules/УправлениеПечатьюКлиентСервер/УправлениеПечатьюКлиентСервер.mdo @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="1d49b1bb-5f90-46e4-adcf-55ad46442648"> + <name>УправлениеПечатьюКлиентСервер</name> + <synonym> + <key>ru</key> + <value>Управление печатью клиент сервер</value> + </synonym> + <clientManagedApplication>true</clientManagedApplication> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/УправлениеПечатьюПереопределяемый/Module.bsl b/SSL/src/CommonModules/УправлениеПечатьюПереопределяемый/Module.bsl index ba321dbb2..845e32ebf 100644 --- a/SSL/src/CommonModules/УправлениеПечатьюПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/УправлениеПечатьюПереопределяемый/Module.bsl @@ -86,10 +86,10 @@ // * Тема - Строка // * Текст - Строка // * Вложения - Структура: -// ** АдресВоВременномХранилище - Строка +// ** АдресВоВременномХранилище - Строка. // ** Представление - Строка - имя файла. -// ОбъектыПечати - Массив - параметр МассивСсылок в вызове процедуры Печать -// ПараметрыВывода - Структура - параметр ПараметрыВывода в вызове процедуры Печать +// ОбъектыПечати - Массив - параметр МассивСсылок в вызове процедуры Печать. +// ПараметрыВывода - Структура - параметр ПараметрыВывода в вызове процедуры Печать. // ПечатныеФормы - ТаблицаЗначений - коллекция табличных документов: // * Название - Строка - название печатной формы; // * ТабличныйДокумент - ТабличныйДокумент - печатая форма. diff --git a/SSL/src/CommonModules/УправлениеПечатьюПовтИсп/Module.bsl b/SSL/src/CommonModules/УправлениеПечатьюПовтИсп/Module.bsl index 9dac2b9e0..e7eccc806 100644 --- a/SSL/src/CommonModules/УправлениеПечатьюПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/УправлениеПечатьюПовтИсп/Module.bsl @@ -6,7 +6,14 @@ #Область СлужебныеПроцедурыИФункции Функция КомандыПечатиФормы(ИмяФормы, СписокОбъектов = Неопределено) Экспорт - Возврат УправлениеПечатью.КомандыПечатиФормы(ИмяФормы, СписокОбъектов); + ОбъектыПечати = Неопределено; + Если СписокОбъектов <> Неопределено Тогда + ОбъектыПечати = Новый Массив; + Для Каждого ИмяОбъекта Из ОбщегоНазначения.ЗначениеИзСтрокиXML(СписокОбъектов) Цикл + ОбъектыПечати.Добавить(Метаданные.НайтиПоПолномуИмени(ИмяОбъекта)); + КонецЦикла; + КонецЕсли; + Возврат УправлениеПечатью.КомандыПечатиФормы(ИмяФормы, ОбъектыПечати); КонецФункции #КонецОбласти diff --git a/SSL/src/CommonModules/УправлениеПечатьюСлужебныйКлиент/Module.bsl b/SSL/src/CommonModules/УправлениеПечатьюСлужебныйКлиент/Module.bsl index cef87ac93..c53296a67 100644 --- a/SSL/src/CommonModules/УправлениеПечатьюСлужебныйКлиент/Module.bsl +++ b/SSL/src/CommonModules/УправлениеПечатьюСлужебныйКлиент/Module.bsl @@ -3,6 +3,41 @@ // //////////////////////////////////////////////////////////////////////////////// +#Область СлужебныйПрограммныйИнтерфейс + +// Обработчик подключенной команды. +// +// Параметры +// МассивСсылок - Массив - Массив ссылок выбранных объектов, для которых выполняется команда. +// ПараметрыВыполнения - Структура - Контекст команды. +// * ОписаниеКоманды - Структура - Сведения о выполняемой команде. +// ** Идентификатор - Строка - Идентификатор команды. +// ** Представление - Строка - Представление команды в форме. +// ** Имя - Строка - Имя команды в форме. +// * Форма - УправляемаяФорма - Форма, из которой была вызвана команда. +// * Источник - ДанныеФормыСтруктура, ТаблицаФормы - Объект или список формы с полем "Ссылка". +// +Процедура ОбработчикКоманды(Знач МассивСсылок, Знач ПараметрыВыполнения) Экспорт + ПараметрыВыполнения.Вставить("ОбъектыПечати", МассивСсылок); + ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(ПараметрыВыполнения.ОписаниеКоманды, ПараметрыВыполнения.ОписаниеКоманды.ДополнительныеПараметры, Истина); + ВыполнитьПодключаемуюКомандуПечатиЗавершение(Истина, ПараметрыВыполнения); +КонецПроцедуры + +// Открыть форму для выбора вариантов формата вложений +// +// Параметры: +// НастройкиФормата - Структура - Описание настроек +// * УпаковатьВАрхив - Булево - Признак необходимости упаковки вложений в архив. +// * ФорматыСохранения - Массив - Список выбранных форматов вложений. +// Оповещение - ОписаниеОповещения - - оповещение, которое вызывается после закрытие формы для обработки результатов выбора. +// +Процедура ОткрытьФормуВыбораФорматаВложений(НастройкиФормата, Оповещение) Экспорт + ПараметрыФормы = Новый Структура("НастройкиФормата", НастройкиФормата); + ОткрытьФорму("ОбщаяФорма.ВыборФорматаВложений", ПараметрыФормы,,,,, Оповещение, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); +КонецПроцедуры + +#КонецОбласти + #Область СлужебныеПроцедурыИФункции // Продолжение процедуры УправлениеПечатьюКлиент.ВыполнитьПодключаемуюКомандуПечати. @@ -13,6 +48,7 @@ Источник = ДополнительныеПараметры.Источник; Если РезультатВопроса = КодВозвратаДиалога.ОК Тогда + ОчиститьСообщения(); Форма.Записать(); Если Источник.Ссылка.Пустая() Или Форма.Модифицированность Тогда Возврат; // Запись не удалась, сообщения о причинах выводит платформа. @@ -34,7 +70,7 @@ КонецЕсли; Если ОбъектыПечати.Количество() = 0 Тогда - ВызватьИсключение НСтр("ru = 'Команда не может быть выполнена для указанного объекта!'") + ВызватьИсключение НСтр("ru = 'Команда не может быть выполнена для указанного объекта.'") КонецЕсли; Если ДополнительныеПараметры.ОписаниеКоманды.ТипыОбъектовПечати.Количество() <> 0 Тогда // требуется проверка типа @@ -81,7 +117,7 @@ ВыполнитьПодключаемуюКомандуПечатиЗавершение(Истина, ДополнительныеПараметры); КонецПроцедуры - + // Продолжение процедуры УправлениеПечатьюКлиент.ВыполнитьПодключаемуюКомандуПечати. Процедура ВыполнитьПодключаемуюКомандуПечатиЗавершение(РасширениеРаботыСФайламиПодключено, ДополнительныеПараметры) Экспорт @@ -97,7 +133,7 @@ ОписаниеКоманды.Вставить("ОбъектыПечати", ОбъектыПечати); Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности") Тогда - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); + МодульОценкаПроизводительностиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиент"); ИмяПоказателя = НСтр("ru = 'Печать'") + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("/%1/%2/%3/%4/%5/%6/%7", ОписаниеКоманды.Идентификатор, @@ -108,7 +144,7 @@ ОписаниеКоманды.ФорматСохранения, ?(ОписаниеКоманды.ФиксированныйКомплект, "Фиксированный", "")); - МодульОценкаПроизводительностиКлиентСервер.НачатьЗамерВремениТехнологический(НРег(ИмяПоказателя)); + МодульОценкаПроизводительностиКлиент.НачатьЗамерВремениТехнологический(Истина, НРег(ИмяПоказателя)); КонецЕсли; Если ОписаниеКоманды.МенеджерПечати = "СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки" @@ -121,6 +157,10 @@ Если Не ПустаяСтрока(ОписаниеКоманды.Обработчик) Тогда ОписаниеКоманды.Вставить("Форма", Форма); ИмяОбработчика = ОписаниеКоманды.Обработчик; + Если СтрЧислоВхождений(ИмяОбработчика, ".") = 0 И ЭтоОтчетИлиОбработка(ОписаниеКоманды.МенеджерПечати) Тогда + ОсновнаяФорма = ПолучитьФорму(ОписаниеКоманды.МенеджерПечати + ".Форма", , Форма, Истина); + ИмяОбработчика = "ОсновнаяФорма." + ИмяОбработчика; + КонецЕсли; Обработчик = ИмяОбработчика + "(ОписаниеКоманды)"; Результат = Вычислить(Обработчик); Возврат; @@ -167,7 +207,8 @@ КонецЕсли; ОчиститьСообщения(); - ДанныеОНепроведенныхДокументах = ОбщегоНазначенияВызовСервера.ПровестиДокументы(ДополнительныеПараметры.НепроведенныеДокументы); + РезультатПроведения = УправлениеПечатьюВызовСервера.ПровестиДокументы(ДополнительныеПараметры.НепроведенныеДокументы); + ДанныеОНепроведенныхДокументах = РезультатПроведения.Непроведенные; ШаблонСообщения = НСтр("ru = 'Документ %1 не проведен: %2'"); НепроведенныеДокументы = Новый Массив; Для Каждого ИнформацияОДокументе Из ДанныеОНепроведенныхДокументах Цикл @@ -182,14 +223,8 @@ ДополнительныеПараметры.Вставить("ПроведенныеДокументы", ПроведенныеДокументы); // Оповещаем открытые формы о том, что были проведены документы. - ТипыПроведенныхДокументов = Новый Соответствие; - Для Каждого ПроведенныйДокумент Из ПроведенныеДокументы Цикл - ТипыПроведенныхДокументов.Вставить(ТипЗнч(ПроведенныйДокумент)); - КонецЦикла; - Для Каждого Тип Из ТипыПроведенныхДокументов Цикл - ОповеститьОбИзменении(Тип.Ключ); - КонецЦикла; - + СтандартныеПодсистемыКлиент.ОповеститьФормыОбИзменении(РезультатПроведения.ДанныеДляОповещения); + // Если команда была вызвана из формы, то зачитываем в форму актуальную (проведенную) копию из базы. Если ТипЗнч(ДополнительныеПараметры.Форма) = Тип("УправляемаяФорма") Тогда Попытка @@ -256,6 +291,19 @@ КонецФункции +// Проверяет что менеджер печати является отчетом или обработкой. +Функция ЭтоОтчетИлиОбработка(МенеджерПечати) + Если Не ЗначениеЗаполнено(МенеджерПечати) Тогда + Возврат Ложь; + КонецЕсли; + МассивПодстрок = СтрРазделить(МенеджерПечати, "."); + Если МассивПодстрок.Количество() = 0 Тогда + Возврат Ложь; + КонецЕсли; + Вид = ВРег(СокрЛП(МассивПодстрок[0])); + Возврат Вид = "ОТЧЕТ" Или Вид = "ОБРАБОТКА"; +КонецФункции + // Проверяет наличие установленного расширения работы с файлами в веб-клиенте и предлагает установку в случае // отсутствия. // diff --git a/SSL/src/CommonModules/УправлениеСвойствами/Module.bsl b/SSL/src/CommonModules/УправлениеСвойствами/Module.bsl index 5e125dc3f..6126701ac 100644 --- a/SSL/src/CommonModules/УправлениеСвойствами/Module.bsl +++ b/SSL/src/CommonModules/УправлениеСвойствами/Module.bsl @@ -128,7 +128,9 @@ Структура = Новый Структура("Свойства_ИспользоватьСвойства"); ЗаполнитьЗначенияСвойств(Структура, Форма); - Если ТипЗнч(Структура.Свойства_ИспользоватьСвойства) = Тип("Булево") Тогда + Если ТипЗнч(Структура.Свойства_ИспользоватьСвойства) = Тип("Булево") + И Структура.Свойства_ИспользоватьСвойства Тогда + Если Форма.ПараметрыСвойств.Свойство("ВыполненаОтложеннаяИнициализация") И Не Форма.ПараметрыСвойств.ВыполненаОтложеннаяИнициализация Тогда Возврат; @@ -375,7 +377,7 @@ ОбновитьКлючНазначенияФормы(Форма, КлючНазначения); - ОписаниеСвойств = УправлениеСвойствамиСлужебный.ПолучитьТаблицуЗначенийСвойств( + ОписаниеСвойств = УправлениеСвойствамиСлужебный.ЗначенияСвойств( ОписаниеОбъекта.ДополнительныеРеквизиты.Выгрузить(), Форма.Свойства_НаборыДополнительныхРеквизитовОбъекта, Ложь); @@ -440,12 +442,17 @@ ЗаполнитьЗначенияСвойств(ФормаОписаниеСвойства, ОписаниеСвойства); // Заполнение таблицы зависимых дополнительных реквизитов. - Если ОписаниеСвойства.ЗависимостиДополнительныхРеквизитов.Количество() > 0 Тогда + Если ОписаниеСвойства.ЗависимостиДополнительныхРеквизитов.Количество() > 0 + И Не ОписаниеСвойства.Удалено Тогда ОписаниеЗависимогоРеквизита = Форма.Свойства_ОписаниеЗависимыхДополнительныхРеквизитов.Добавить(); ЗаполнитьЗначенияСвойств(ОписаниеЗависимогоРеквизита, ОписаниеСвойства); КонецЕсли; Для Каждого СтрокаТаблицы Из ОписаниеСвойства.ЗависимостиДополнительныхРеквизитов Цикл + Если ОписаниеСвойства.Удалено Тогда + Продолжить; + КонецЕсли; + Если ТипЗнч(СтрокаТаблицы.Реквизит) = Тип("Строка") Тогда ПутьКРеквизиту = "ОписаниеОбъекта." + СтрокаТаблицы.Реквизит; Иначе @@ -531,6 +538,7 @@ Родитель.Отображение = ОтображениеОбычнойГруппы.Нет; КонецЕсли; Родитель.ОтображатьЗаголовок = Ложь; + Родитель.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Вертикальная; ЗаполненныеСвойстваГруппы = Новый Структура; Для каждого Колонка Из НаборыСвойствОбъекта.Колонки Цикл @@ -552,12 +560,14 @@ Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Право; Иначе Если ПоляНадписей Тогда - Элемент.Вид = ВидПоляФормы.ПолеНадписи; - Элемент.Рамка = Новый Рамка(ТипРамкиЭлементаУправления.Одинарная); + Элемент.Вид = ВидПоляФормы.ПолеВвода; Иначе Элемент.Вид = ВидПоляФормы.ПолеВвода; Элемент.АвтоОтметкаНезаполненного = ОписаниеСвойства.ЗаполнятьОбязательно И НЕ ОписаниеСвойства.Удалено; КонецЕсли; + + Элемент.РастягиватьПоВертикали = Ложь; + Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Лево; КонецЕсли; Элемент.ПутьКДанным = ОписаниеСвойства.ИмяРеквизитаЗначение; @@ -649,9 +659,6 @@ Прервать; КонецЕсли; КонецЦикла; - Если ИспользуетсяТипДополнительныхЗначений Тогда - Элемент.КнопкаОткрытия = Ложь; - КонецЕсли; КонецЕсли; Если НЕ ПоляНадписей И ОписаниеСвойства.ДополнительноеЗначение Тогда @@ -843,11 +850,7 @@ "ВЫБРАТЬ [РАЗРЕШЕННЫЕ] | ТаблицаСвойств.Свойство КАК Свойство, | ТаблицаСвойств.Значение КАК Значение, - | ВЫБОР - | КОГДА ДополнительныеРеквизитыИСведения.МногострочноеПолеВвода > 0 - | ТОГДА ТаблицаСвойств.ТекстоваяСтрока - | ИНАЧЕ """" - | КОНЕЦ КАК ТекстоваяСтрока + | ТаблицаСвойств.ТекстоваяСтрока |ИЗ | [ИмяОбъектаСоСвойствами].ДополнительныеРеквизиты КАК ТаблицаСвойств | ЛЕВОЕ СОЕДИНЕНИЕ ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения КАК ДополнительныеРеквизитыИСведения @@ -1154,24 +1157,34 @@ КонецПроцедуры -// Устанавливает параметры набора свойств +// Устанавливает параметры набора свойств. // // Параметры: -// ИмяНабораСвойств - Строка - Имя предопределенного набора свойств +// ИмяНабораСвойств - Строка - Имя предопределенного набора свойств. // Параметры - Структура - см. описание функции СтруктураПараметровНабораСвойств. // Процедура УстановитьПараметрыНабораСвойств(ИмяНабораСвойств, Параметры) Экспорт + ЗаписатьОбъект = Ложь; НаборСвойств = Справочники.НаборыДополнительныхРеквизитовИСведений[ИмяНабораСвойств]; НаборСвойствОбъект = НаборСвойств.ПолучитьОбъект(); - ЗаполнитьЗначенияСвойств(НаборСвойствОбъект, Параметры); - ОбновлениеИнформационнойБазы.ЗаписатьДанные(НаборСвойствОбъект); + Для Каждого Параметр Из Параметры Цикл + Если НаборСвойствОбъект[Параметр.Ключ] = Параметр.Значение Тогда + Продолжить; + КонецЕсли; + ЗаписатьОбъект = Истина; + КонецЦикла; + + Если ЗаписатьОбъект Тогда + ЗаполнитьЗначенияСвойств(НаборСвойствОбъект, Параметры); + ОбновлениеИнформационнойБазы.ЗаписатьДанные(НаборСвойствОбъект); + КонецЕсли; КонецПроцедуры -// Получает структуру параметров для набора свойств +// Получает структуру параметров для набора свойств. // -// Возвращаемое значение: Структура с полями +// Возвращаемое значение: Структура с полями. // * Используется - Булево - Признак использования набора свойств. // Устанавливается в Ложь, например, если объект отключен функциональной опцией. // @@ -1342,7 +1355,7 @@ И ОтложеннаяИнициализация И ИмяЭлементаДляРазмещения <> "" Тогда ГруппаФормы = Форма.Элементы[Контекст.ИмяЭлементаДляРазмещения]; - Форма.Элементы.Добавить("Свойства_ПустаяДекорация", Тип("ДекорацияФормы"), ГруппаФормы); + Декорация = Форма.Элементы.Добавить("Свойства_ПустаяДекорация", Тип("ДекорацияФормы"), ГруппаФормы); Форма.ПараметрыСвойств.Вставить("ДобавленаПустаяДекорация", Истина); Если ГруппаФормы.Вид <> ВидГруппыФормы.Страница Тогда Родитель = СтраницаРодитель(ГруппаФормы); @@ -1356,15 +1369,16 @@ ЗаголовокГруппыСтраниц = ?(ЗначениеЗаполнено(ГруппаСтраниц.Заголовок), ГруппаСтраниц.Заголовок, ГруппаСтраниц.Имя); ПредупреждениеОРазмещении = НСтр("ru = 'Для отображения дополнительных реквизитов необходимо разместить группу ""%1"" не первым элементом (после любой другой группы) в группе ""%2"" (меню Еще - Изменить форму).'"); - ТекстПодсказки = НСтр("ru = 'Также можно установить стандартные настройки формы: - | • в меню Еще выбрать пункт Изменить форму... - | • в открывшейся форме ""Настройка формы"" в меню Еще выбрать пункт ""Установить стандартные настройки""'"); ПредупреждениеОРазмещении = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ПредупреждениеОРазмещении, ЗаголовокСтраницы, ЗаголовокГруппыСтраниц); - Форма.Элементы.Свойства_ПустаяДекорация.ОтображениеПодсказки = ОтображениеПодсказки.Кнопка; - Форма.Элементы.Свойства_ПустаяДекорация.Заголовок = ПредупреждениеОРазмещении; - Форма.Элементы.Свойства_ПустаяДекорация.Подсказка = ТекстПодсказки; - Форма.Элементы.Свойства_ПустаяДекорация.ЦветТекста = Метаданные.ЭлементыСтиля.ПоясняющийОшибкуТекст.Значение; + ТекстПодсказки = НСтр("ru = 'Также можно установить стандартные настройки формы: + | • в меню Еще выбрать пункт Изменить форму...; + | • в открывшейся форме ""Настройка формы"" в меню Еще выбрать пункт ""Установить стандартные настройки"".'"); + + Декорация.ОтображениеПодсказки = ОтображениеПодсказки.Кнопка; + Декорация.Заголовок = ПредупреждениеОРазмещении; + Декорация.Подсказка = ТекстПодсказки; + Декорация.ЦветТекста = ЦветаСтиля.ПоясняющийОшибкуТекст; КонецЕсли; ГруппаФормы.РазрешитьИзменениеСостава = Ложь; diff --git a/SSL/src/CommonModules/УправлениеСвойствамиПереопределяемый/Module.bsl b/SSL/src/CommonModules/УправлениеСвойствамиПереопределяемый/Module.bsl index abe65dc1f..7659872d4 100644 --- a/SSL/src/CommonModules/УправлениеСвойствамиПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/УправлениеСвойствамиПереопределяемый/Module.bsl @@ -38,8 +38,7 @@ // Группировка - ГруппировкаПодчиненныхЭлементовФормы. // // // Для обычной группы. -// Отображение - ОтображениеОбычнойГруппы. -// ШиринаПодчиненныхЭлементов - ШиринаПодчиненныхЭлементовФормы. +// Отображение - ОтображениеОбычнойГруппы. // // // Для страницы. // Картинка - Картинка. diff --git a/SSL/src/CommonModules/УправлениеСвойствамиСлужебный/Module.bsl b/SSL/src/CommonModules/УправлениеСвойствамиСлужебный/Module.bsl index c4de45909..83f4478c2 100644 --- a/SSL/src/CommonModules/УправлениеСвойствамиСлужебный/Module.bsl +++ b/SSL/src/CommonModules/УправлениеСвойствамиСлужебный/Module.bsl @@ -144,7 +144,7 @@ // Дополняет список колонки для загрузки данных колонками дополнительных реквизитов и свойств. // // Параметры: -// МетаданныеСправочника - ОбъектМетаданных - Метаданные справочника +// МетаданныеСправочника - ОбъектМетаданных - Метаданные справочника. // ИнформацияПоКолонкам - ТаблицаЗначение - колонки макета. // Процедура КолонкиДляЗагрузкиДанных(МетаданныеСправочника, ИнформацияПоКолонкам) Экспорт @@ -328,10 +328,6 @@ Продолжить; КонецЕсли; - Если Не РеквизитВиденИДоступен(Форма, Строка.ИмяРеквизитаЗначение, ОписаниеОбъекта) Тогда - Продолжить; - КонецЕсли; - Если Строка.Удалено Тогда Если ЗначениеЗаполнено(Значение) И Не (ПередЗаписью И Форма.Свойства_СкрытьУдаленные) Тогда НайденнаяСтрока = СтарыеЗначения.Найти(Строка.Свойство, "Свойство"); @@ -394,9 +390,10 @@ НаборыСвойств.Колонки.Добавить("ШрифтЗаголовка"); НаборыСвойств.Колонки.Добавить("Группировка"); НаборыСвойств.Колонки.Добавить("Отображение"); - НаборыСвойств.Колонки.Добавить("ШиринаПодчиненныхЭлементов"); НаборыСвойств.Колонки.Добавить("Картинка"); НаборыСвойств.Колонки.Добавить("ОтображатьЗаголовок"); + // Устарело: + НаборыСвойств.Колонки.Добавить("ШиринаПодчиненныхЭлементов"); УправлениеСвойствамиПереопределяемый.ЗаполнитьНаборыСвойствОбъекта( ВладелецСвойств, ТипСсылки, НаборыСвойств, ПолучатьОсновнойНабор, КлючНазначения); @@ -416,7 +413,7 @@ КонецФункции // Возвращает заполненную таблицу значений свойств объекта. -Функция ПолучитьТаблицуЗначенийСвойств(ДополнительныеСвойстваОбъекта, Наборы, ЭтоДополнительноеСведение) Экспорт +Функция ЗначенияСвойств(ДополнительныеСвойстваОбъекта, Наборы, ЭтоДополнительноеСведение) Экспорт Если ДополнительныеСвойстваОбъекта.Количество() = 0 Тогда // Предварительная быстрая проверка использования дополнительных свойств. @@ -715,7 +712,8 @@ Если ТипЗначенияСвойства.СодержитТип(Тип("Строка")) И ТипЗначенияСвойства.Типы().Количество() = 1 - И МногострочноеПолеВвода > 1 Тогда + И (ТипЗначенияСвойства.КвалификаторыСтроки.Длина = 0 + Или МногострочноеПолеВвода > 1) Тогда Возврат Истина; Иначе Возврат Ложь; @@ -1066,37 +1064,6 @@ //////////////////////////////////////////////////////////////////////////////// // Вспомогательные процедуры и функции. -// Проверяет видимость и доступность дополнительного реквизита. -// -Функция РеквизитВиденИДоступен(Форма, ИмяРеквизита, ОписаниеОбъекта) - - Доступен = Истина; - Виден = Истина; - Если Форма.Свойства_ОписаниеЗависимыхДополнительныхРеквизитов.Количество() = 0 Тогда - Возврат Истина; - КонецЕсли; - - ПараметрыОтбора = Новый Структура; - ПараметрыОтбора.Вставить("ИмяРеквизитаЗначение", ИмяРеквизита); - РезультатПоиска = Форма.Свойства_ОписаниеЗависимыхДополнительныхРеквизитов.НайтиСтроки(ПараметрыОтбора); - Если РезультатПоиска.Количество() = 0 Тогда - Возврат Истина; - КонецЕсли; - ОписаниеЗависимогоРеквизита = РезультатПоиска[0]; - - Если ОписаниеЗависимогоРеквизита.УсловиеДоступности <> Неопределено Тогда - ЗначенияПараметров = ОписаниеЗависимогоРеквизита.УсловиеДоступности.ЗначенияПараметров; - Доступен = Вычислить(ОписаниеЗависимогоРеквизита.УсловиеДоступности.КодУсловия); - КонецЕсли; - Если ОписаниеЗависимогоРеквизита.УсловиеВидимости <> Неопределено Тогда - ЗначенияПараметров = ОписаниеЗависимогоРеквизита.УсловиеВидимости.ЗначенияПараметров; - Виден = Вычислить(ОписаниеЗависимогоРеквизита.УсловиеВидимости.КодУсловия); - КонецЕсли; - - Возврат Доступен И Виден; - -КонецФункции - // Возвращает основной набор свойств владельца. // // Параметры: diff --git a/SSL/src/CommonModules/УправлениеЭлектроннойПочтой/Module.bsl b/SSL/src/CommonModules/УправлениеЭлектроннойПочтой/Module.bsl index 96506cdc3..4e9444f61 100644 --- a/SSL/src/CommonModules/УправлениеЭлектроннойПочтой/Module.bsl +++ b/SSL/src/CommonModules/УправлениеЭлектроннойПочтой/Module.bsl @@ -51,21 +51,33 @@ УровеньЖурналаРегистрации.Информация, , , НСтр("ru = 'Начато регламентное получение и отправка электронной почты'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка())); - МассивПисем = Новый Массив; + СтруктураМассивовПисем = СтруктураМассиваПисем(); // Получение писем Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ - | УчетныеЗаписиЭлектроннойПочты.Ссылка, - | УчетныеЗаписиЭлектроннойПочты.Наименование, - | ЕСТЬNULL(НастройкиУчетныхЗаписейЭлектроннойПочты.ПомещатьПисьмоВПапкуПисьмаОснования, ЛОЖЬ) КАК ПомещатьПисьмоВПапкуПисьмаОснования, - | УчетныеЗаписиЭлектроннойПочты.ОставлятьКопииСообщенийНаСервере КАК ОставлятьКопии, - | УчетныеЗаписиЭлектроннойПочты.ПериодХраненияСообщенийНаСервере КАК ОставлятьДней + | УчетныеЗаписиЭлектроннойПочты.Ссылка КАК Ссылка, + | УчетныеЗаписиЭлектроннойПочты.АдресЭлектроннойПочты КАК АдресЭлектроннойПочты, + | УчетныеЗаписиЭлектроннойПочты.Наименование КАК Наименование, + | ЕСТЬNULL(НастройкиУчетныхЗаписейЭлектроннойПочты.ПомещатьПисьмоВПапкуПисьмаОснования, ЛОЖЬ) КАК ПомещатьПисьмоВПапкуПисьмаОснования, + | ЕСТЬNULL(НастройкиУчетныхЗаписейЭлектроннойПочты.ОтветственныйЗаОбработкуПисем, ЗНАЧЕНИЕ(Справочник.Пользователи.ПустаяСсылка)) КАК ОтветственныйЗаОбработкуПисем, + | УчетныеЗаписиЭлектроннойПочты.ОставлятьКопииСообщенийНаСервере КАК ОставлятьКопии, + | УчетныеЗаписиЭлектроннойПочты.ПериодХраненияСообщенийНаСервере КАК ОставлятьДней, + | УчетныеЗаписиЭлектроннойПочты.ИмяПользователя КАК ИмяПользователя, + | УчетныеЗаписиЭлектроннойПочты.ПротоколВходящейПочты КАК ПротоколВходящейПочты, + | ЕСТЬNULL(ДатыПоследнейЗагрузкиПочтовыхСообщений.ДатаЗагрузкиПисем, ДАТАВРЕМЯ(1, 1, 1, 1, 1, 1)) КАК ДатаЗагрузкиПисем, + | ВЫБОР + | КОГДА УчетныеЗаписиЭлектроннойПочты.ПротоколВходящейПочты = ""IMAP"" + | ТОГДА ЕСТЬNULL(НастройкиУчетныхЗаписейЭлектроннойПочты.ОбработкаПисемВыполняетсяВДругомПочтовомКлиенте, ЛОЖЬ) + | ИНАЧЕ ЛОЖЬ + | КОНЕЦ КАК ОбработкаПисемВедетсяВДругомПочтовомКлиенте |ИЗ | Справочник.УчетныеЗаписиЭлектроннойПочты КАК УчетныеЗаписиЭлектроннойПочты | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НастройкиУчетныхЗаписейЭлектроннойПочты КАК НастройкиУчетныхЗаписейЭлектроннойПочты | ПО (НастройкиУчетныхЗаписейЭлектроннойПочты.УчетнаяЗаписьЭлектроннойПочты = УчетныеЗаписиЭлектроннойПочты.Ссылка) + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДатыПоследнейЗагрузкиПочтовыхСообщений КАК ДатыПоследнейЗагрузкиПочтовыхСообщений + | ПО (ДатыПоследнейЗагрузкиПочтовыхСообщений.УчетнаяЗапись = УчетныеЗаписиЭлектроннойПочты.Ссылка) |ГДЕ | УчетныеЗаписиЭлектроннойПочты.ИспользоватьДляПолучения | И НЕ ЕСТЬNULL(НастройкиУчетныхЗаписейЭлектроннойПочты.НеИспользоватьВоВстроенномПочтовомКлиенте, ЛОЖЬ)"; @@ -75,7 +87,7 @@ Пока Выборка.Следующий() Цикл Получено = 0; - ПолучитьПисьма(Выборка, Ложь, Получено, МассивПисем); + ПолучитьПисьма(Выборка, Ложь, Получено, СтруктураМассивовПисем); КонецЦикла; @@ -122,10 +134,26 @@ Пока ВыборкаУчетныеЗаписи.Следующий() Цикл Профиль = РаботаСПочтовымиСообщениямиСлужебный.ИнтернетПочтовыйПрофиль(ВыборкаУчетныеЗаписи.УчетнаяЗапись); - + Попытка + Соединение = Новый ИнтернетПочта; - Соединение.Подключиться(Профиль); + ПротоколПодключения = ?(ПустаяСтрока(Профиль.АдресСервераIMAP),ПротоколИнтернетПочты.POP3, ПротоколИнтернетПочты.IMAP); + Соединение.Подключиться(Профиль, ПротоколПодключения); + + Если ПротоколПодключения = ПротоколИнтернетПочты.IMAP Тогда + ПочтовыеЯщики = Соединение.ПолучитьПочтовыеЯщики(); + Для Каждого ПочтовыйЯщик Из ПочтовыеЯщики Цикл + Если НРег(ПочтовыйЯщик) = "отправленные" + Или НРег(ПочтовыйЯщик) = "sent" Тогда + + Соединение.ТекущийПочтовыйЯщик = ПочтовыйЯщик; + Прервать; + + КонецЕсли; + КонецЦикла; + КонецЕсли; + Исключение ТекстСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( @@ -147,7 +175,8 @@ ПисьмоОбъект = ВыборкаПисьма.Ссылка.ПолучитьОбъект(); Попытка - ИдентификаторПисьма = Взаимодействия.ВыполнитьОтправкуПисьма(ПисьмоОбъект,Соединение); + ПараметрыПисьма = Неопределено; + ИдентификаторПисьма = Взаимодействия.ВыполнитьОтправкуПисьма(ПисьмоОбъект, Соединение, ПараметрыПисьма); Исключение ТекстСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( @@ -169,18 +198,44 @@ Продолжить; КонецПопытки; + ИдентификаторСообщенияОтправкаIMAP = ""; + Если ВыборкаПисьма.УдалятьПослеОтправки Тогда ПисьмоОбъект.Удалить(); Иначе - ПисьмоОбъект.ИдентификаторСообщения = ИдентификаторПисьма; - ПисьмоОбъект.СтатусПисьма = Перечисления.СтатусыИсходящегоЭлектронногоПисьма.Отправлено; - ПисьмоОбъект.Размер = Взаимодействия.ОценитьРазмерИсходящегоЭлектронногоПисьма(ПисьмоОбъект.Ссылка); - ПисьмоОбъект.ДатаОтправления = ТекущаяДатаСеанса(); + + Попытка + + Если ПротоколПодключения = ПротоколИнтернетПочты.IMAP Тогда + ИдентификаторСообщенияОтправкаIMAP = Взаимодействия.ВыполнитьОтправкуПисьма(ПисьмоОбъект, Соединение, ПараметрыПисьма, "IMAP"); + КонецЕсли; + + Исключение + + ТекстСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Во время передачи электронного письма %1 на сервер произошла ошибка + |%2. + |Письмо отправлено, но не сохранено на почтовом сервере.'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + ВыборкаПисьма.ПредставлениеПисьма, + КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); + + ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), + УровеньЖурналаРегистрации.Ошибка, , , + ТекстСообщенияОбОшибке); + + КонецПопытки; + + ПисьмоОбъект.ИдентификаторСообщения = ИдентификаторПисьма; + ПисьмоОбъект.ИдентификаторСообщенияОтправкаIMAP = ИдентификаторСообщенияОтправкаIMAP; + ПисьмоОбъект.СтатусПисьма = Перечисления.СтатусыИсходящегоЭлектронногоПисьма.Отправлено; + ПисьмоОбъект.Размер = Взаимодействия.ОценитьРазмерИсходящегоЭлектронногоПисьма(ПисьмоОбъект.Ссылка); + ПисьмоОбъект.ДатаОтправления = ТекущаяДатаСеанса(); ПисьмоОбъект.ДополнительныеСвойства.Вставить("НеЗаписыватьКонтакты", Истина); ПисьмоОбъект.Записать(РежимЗаписиДокумента.Запись); Если ВыборкаПисьма.ТребуетсяОпределениеПапки Тогда - МассивПисем.Добавить(ВыборкаПисьма.Ссылка); + СтруктураМассивовПисем.ПисьмаДляОпределенияПапок.Добавить(ВыборкаПисьма.Ссылка); КонецЕсли; + СтруктураМассивовПисем.ВсеПолученныеПисьма.Добавить(ВыборкаПисьма.Ссылка); КонецЕсли; КонецЦикла; @@ -189,10 +244,11 @@ КонецЦикла; - Взаимодействия.ЗаполнитьКонтактыМассиваВзаимодействий(МассивПисем); - Взаимодействия.УстановитьПапкиДляМассиваПисем(МассивПисем); - Взаимодействия.РассчитатьРассмотреноПоПредметам(МассивПисем); - Взаимодействия.РассчитатьРассмотреноПоКонтактам(МассивПисем); + ОпределитьЗагруженныеРанееПодчиненныеПисьма(Выборка.Ссылка, СтруктураМассивовПисем.ВсеПолученныеПисьма); + Взаимодействия.ЗаполнитьКонтактыМассиваВзаимодействий(СтруктураМассивовПисем.ВсеПолученныеПисьма); + Взаимодействия.УстановитьПапкиДляМассиваПисем(СтруктураМассивовПисем.ПисьмаДляОпределенияПапок); + Взаимодействия.РассчитатьРассмотреноПоПредметам(СтруктураМассивовПисем.ВсеПолученныеПисьма); + Взаимодействия.РассчитатьРассмотреноПоКонтактам(СтруктураМассивовПисем.ВсеПолученныеПисьма); // Отправим уведомления о прочтении. Запрос = Новый Запрос; @@ -275,14 +331,27 @@ // Процедура ЗагрузитьПочтуПользователя(ПолученоПисем, ДоступноУчетныхЗаписей, ЕстьОшибки) Экспорт + МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; + Запрос = Новый Запрос; + Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц; Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ - | УчетныеЗаписиЭлектроннойПочты.Ссылка, - | УчетныеЗаписиЭлектроннойПочты.Наименование, - | ЕСТЬNULL(НастройкиУчетныхЗаписейЭлектроннойПочты.ПомещатьПисьмоВПапкуПисьмаОснования, ЛОЖЬ) КАК ПомещатьПисьмоВПапкуПисьмаОснования, - | УчетныеЗаписиЭлектроннойПочты.ОставлятьКопииСообщенийНаСервере КАК ОставлятьКопии, - | УчетныеЗаписиЭлектроннойПочты.ПериодХраненияСообщенийНаСервере КАК ОставлятьДней + | УчетныеЗаписиЭлектроннойПочты.Ссылка КАК Ссылка, + | УчетныеЗаписиЭлектроннойПочты.АдресЭлектроннойПочты КАК АдресЭлектроннойПочты, + | УчетныеЗаписиЭлектроннойПочты.Наименование КАК Наименование, + | ЕСТЬNULL(НастройкиУчетныхЗаписейЭлектроннойПочты.ПомещатьПисьмоВПапкуПисьмаОснования, ЛОЖЬ) КАК ПомещатьПисьмоВПапкуПисьмаОснования, + | ЕСТЬNULL(НастройкиУчетныхЗаписейЭлектроннойПочты.ОтветственныйЗаОбработкуПисем, ЗНАЧЕНИЕ(Справочник.Пользователи.ПустаяСсылка)) КАК ОтветственныйЗаОбработкуПисем, + | УчетныеЗаписиЭлектроннойПочты.ОставлятьКопииСообщенийНаСервере КАК ОставлятьКопии, + | УчетныеЗаписиЭлектроннойПочты.ПериодХраненияСообщенийНаСервере КАК ОставлятьДней, + | УчетныеЗаписиЭлектроннойПочты.ПротоколВходящейПочты КАК ПротоколВходящейПочты, + | УчетныеЗаписиЭлектроннойПочты.ИмяПользователя КАК ИмяПользователя, + | ВЫБОР + | КОГДА УчетныеЗаписиЭлектроннойПочты.ПротоколВходящейПочты = ""IMAP"" + | ТОГДА ЕСТЬNULL(НастройкиУчетныхЗаписейЭлектроннойПочты.ОбработкаПисемВыполняетсяВДругомПочтовомКлиенте, ЛОЖЬ) + | ИНАЧЕ ЛОЖЬ + | КОНЕЦ КАК ОбработкаПисемВедетсяВДругомПочтовомКлиенте + |ПОМЕСТИТЬ УчетныеЗаписиПользователя |ИЗ | Справочник.УчетныеЗаписиЭлектроннойПочты КАК УчетныеЗаписиЭлектроннойПочты | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НастройкиУчетныхЗаписейЭлектроннойПочты КАК НастройкиУчетныхЗаписейЭлектроннойПочты @@ -291,6 +360,29 @@ | УчетныеЗаписиЭлектроннойПочты.ИспользоватьДляПолучения | И НЕ ЕСТЬNULL(НастройкиУчетныхЗаписейЭлектроннойПочты.НеИспользоватьВоВстроенномПочтовомКлиенте, ЛОЖЬ)"; + Результат = Запрос.Выполнить(); + + Запрос = Новый Запрос; + Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц; + Запрос.Текст = + "ВЫБРАТЬ РАЗРЕШЕННЫЕ + | УчетныеЗаписиЭлектроннойПочты.Ссылка КАК Ссылка, + | УчетныеЗаписиЭлектроннойПочты.АдресЭлектроннойПочты КАК АдресЭлектроннойПочты, + | УчетныеЗаписиЭлектроннойПочты.Наименование КАК Наименование, + | УчетныеЗаписиЭлектроннойПочты.ПомещатьПисьмоВПапкуПисьмаОснования КАК ПомещатьПисьмоВПапкуПисьмаОснования, + | УчетныеЗаписиЭлектроннойПочты.ОтветственныйЗаОбработкуПисем КАК ОтветственныйЗаОбработкуПисем, + | УчетныеЗаписиЭлектроннойПочты.ОставлятьКопии КАК ОставлятьКопии, + | УчетныеЗаписиЭлектроннойПочты.ОставлятьДней КАК ОставлятьДней, + | УчетныеЗаписиЭлектроннойПочты.ПротоколВходящейПочты КАК ПротоколВходящейПочты, + | УчетныеЗаписиЭлектроннойПочты.ИмяПользователя КАК ИмяПользователя, + | УчетныеЗаписиЭлектроннойПочты.ОбработкаПисемВедетсяВДругомПочтовомКлиенте КАК ОбработкаПисемВедетсяВДругомПочтовомКлиенте, + | ЕСТЬNULL(ДатыПоследнейЗагрузкиПочтовыхСообщений.ДатаЗагрузкиПисем, ДАТАВРЕМЯ(1, 1, 1, 1, 1, 1)) КАК ДатаЗагрузкиПисем + |ИЗ + | УчетныеЗаписиПользователя КАК УчетныеЗаписиЭлектроннойПочты + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДатыПоследнейЗагрузкиПочтовыхСообщений КАК ДатыПоследнейЗагрузкиПочтовыхСообщений + | ПО УчетныеЗаписиЭлектроннойПочты.Ссылка = ДатыПоследнейЗагрузкиПочтовыхСообщений.УчетнаяЗапись"; + + УстановитьПривилегированныйРежим(Истина); Выборка = Запрос.Выполнить().Выбрать(); ПолученоПисем = 0; @@ -300,19 +392,18 @@ Возврат; КонецЕсли; - УстановитьПривилегированныйРежим(Истина); - Пока Выборка.Следующий() Цикл Получено = 0; - МассивПисем = Новый Массив; + СтруктураМассивовПисем = СтруктураМассиваПисем(); - ПолучитьПисьма(Выборка, ЕстьОшибки, Получено, МассивПисем); + ПолучитьПисьма(Выборка, ЕстьОшибки, Получено, СтруктураМассивовПисем); ПолученоПисем = ПолученоПисем + Получено; - Взаимодействия.ЗаполнитьКонтактыМассиваВзаимодействий(МассивПисем); - Взаимодействия.УстановитьПапкиДляМассиваПисем(МассивПисем); - Взаимодействия.РассчитатьРассмотреноПоПредметам(МассивПисем); - Взаимодействия.РассчитатьРассмотреноПоКонтактам(МассивПисем); + ОпределитьЗагруженныеРанееПодчиненныеПисьма(Выборка.Ссылка, СтруктураМассивовПисем.ВсеПолученныеПисьма); + Взаимодействия.ЗаполнитьКонтактыМассиваВзаимодействий(СтруктураМассивовПисем.ВсеПолученныеПисьма); + Взаимодействия.УстановитьПапкиДляМассиваПисем(СтруктураМассивовПисем.ПисьмаДляОпределенияПапок); + Взаимодействия.РассчитатьРассмотреноПоПредметам(СтруктураМассивовПисем.ВсеПолученныеПисьма); + Взаимодействия.РассчитатьРассмотреноПоКонтактам(СтруктураМассивовПисем.ВсеПолученныеПисьма); КонецЦикла; @@ -341,7 +432,7 @@ | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПапкиЭлектронныхПисем КАК ПапкиЭлектронныхПисем | ПО ПредметыПапкиВзаимодействий.ПапкаЭлектронногоПисьма = ПапкиЭлектронныхПисем.Ссылка | ПО (ПредметыПапкиВзаимодействий.Взаимодействие = ЭлектронноеПисьмоИсходящее.Ссылка) - | ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НастройкиУчетныхЗаписейЭлектроннойПочты КАК НастройкиУчетныхЗаписейЭлектроннойПочты + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НастройкиУчетныхЗаписейЭлектроннойПочты КАК НастройкиУчетныхЗаписейЭлектроннойПочты | ПО ЭлектронноеПисьмоИсходящее.УчетнаяЗапись = НастройкиУчетныхЗаписейЭлектроннойПочты.УчетнаяЗаписьЭлектроннойПочты | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НепринятыеКОбработкеПочтовымСерверомИсходящиеПисьма КАК НепринятыеКОбработкеПочтовымСерверомИсходящиеПисьма | ПО НепринятыеКОбработкеПочтовымСерверомИсходящиеПисьма.Письмо = ЭлектронноеПисьмоИсходящее.Ссылка @@ -373,10 +464,26 @@ Пока ВыборкаУчетныеЗаписи.Следующий() Цикл Профиль = РаботаСПочтовымиСообщениямиСлужебный.ИнтернетПочтовыйПрофиль(ВыборкаУчетныеЗаписи.УчетнаяЗапись); - + Попытка + Соединение = Новый ИнтернетПочта; - Соединение.Подключиться(Профиль); + ПротоколПодключения = ?(ПустаяСтрока(Профиль.АдресСервераIMAP),ПротоколИнтернетПочты.POP3, ПротоколИнтернетПочты.IMAP); + Соединение.Подключиться(Профиль, ПротоколПодключения); + + Если ПротоколПодключения = ПротоколИнтернетПочты.IMAP Тогда + ПочтовыеЯщики = Соединение.ПолучитьПочтовыеЯщики(); + Для Каждого ПочтовыйЯщик Из ПочтовыеЯщики Цикл + Если НРег(ПочтовыйЯщик) = "отправленные" + Или НРег(ПочтовыйЯщик) = "sent" Тогда + + Соединение.ТекущийПочтовыйЯщик = ПочтовыйЯщик; + Прервать; + + КонецЕсли; + КонецЦикла; + КонецЕсли; + Исключение ТекстСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( @@ -395,8 +502,10 @@ Пока ВыборкаПисьма.Следующий() Цикл ПисьмоОбъект = ВыборкаПисьма.Ссылка.ПолучитьОбъект(); + Попытка - ИдентификаторПисьма = Взаимодействия.ВыполнитьОтправкуПисьма(ПисьмоОбъект, Соединение); + ПараметрыПисьма = Неопределено; + ИдентификаторПисьма = Взаимодействия.ВыполнитьОтправкуПисьма(ПисьмоОбъект, Соединение, ПараметрыПисьма); Исключение ТекстСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Во время отправки электронного письма %1 произошла ошибка @@ -415,10 +524,33 @@ Продолжить; КонецПопытки; + ИдентификаторСообщенияОтправкаIMAP = ""; + Если ВыборкаПисьма.УдалятьПослеОтправки Тогда ПисьмоОбъект.Удалить(); Иначе + + Попытка + + Если ПротоколПодключения = ПротоколИнтернетПочты.IMAP Тогда + ИдентификаторСообщенияОтправкаIMAP = Взаимодействия.ВыполнитьОтправкуПисьма(ПисьмоОбъект, Соединение, ПараметрыПисьма, "IMAP"); + КонецЕсли; + + Исключение + + ТекстСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Во время передачи электронного письма %1 на сервер произошла ошибка + |%2. + |Письмо отправлено, но не сохранено на почтовом сервере.'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + ВыборкаПисьма.ПредставлениеПисьма, + КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); + + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщенияОбОшибке, ВыборкаПисьма.Ссылка); + + КонецПопытки; + ПисьмоОбъект.ИдентификаторСообщения = ИдентификаторПисьма; + ПисьмоОбъект.ИдентификаторСообщенияОтправкаIMAP = ИдентификаторСообщенияОтправкаIMAP; ПисьмоОбъект.СтатусПисьма = Перечисления.СтатусыИсходящегоЭлектронногоПисьма.Отправлено; ПисьмоОбъект.Размер = Взаимодействия.ОценитьРазмерИсходящегоЭлектронногоПисьма(ПисьмоОбъект.Ссылка); ПисьмоОбъект.ДатаОтправления = ТекущаяДатаСеанса(); @@ -505,7 +637,7 @@ КонецПроцедуры -Процедура ПолучитьПисьма(ДанныеУчетнойЗаписи, ЕстьОшибки, Получено, МассивСозданныхПисем) +Процедура ПолучитьПисьма(ДанныеУчетнойЗаписи, ЕстьОшибки, Получено, СтруктураМассивовСозданныхПисем) // Проверим блокировку учетной записи и если она доступна для получения, установим блокировку. Запрос = Новый Запрос; @@ -539,7 +671,7 @@ Профиль = РаботаСПочтовымиСообщениямиСлужебный.ИнтернетПочтовыйПрофиль(ДанныеУчетнойЗаписи.Ссылка, Истина); Протокол = ПротоколИнтернетПочты.POP3; - Если ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДанныеУчетнойЗаписи.Ссылка, "ПротоколВходящейПочты") = "IMAP" Тогда + Если ДанныеУчетнойЗаписи.ПротоколВходящейПочты = "IMAP" Тогда Протокол = ПротоколИнтернетПочты.IMAP; КонецЕсли; @@ -565,6 +697,219 @@ Возврат; КонецПопытки; + + Если Протокол = ПротоколИнтернетПочты.POP3 Тогда + ПолучитьПочтуПоПроколуPOP3(ДанныеУчетнойЗаписи, Почта, Получено, СтруктураМассивовСозданныхПисем); + Иначе + ПолучитьПочтуПоПроколуIMAP(ДанныеУчетнойЗаписи, Почта, Получено, СтруктураМассивовСозданныхПисем); + СинхронизироватьПризнакРассмотреноССервером(Почта, ДанныеУчетнойЗаписи, СтруктураМассивовСозданныхПисем.ВсеПолученныеПисьма); + КонецЕсли; + + Почта.Отключиться(); + + СнятьБлокировкуУчетнойЗаписиДляПолучения(ДанныеУчетнойЗаписи.Ссылка); + +КонецПроцедуры + +Процедура ПолучитьПисьмаПоМассивуИдентификаторов(Почта, + ДанныеУчетнойЗаписи, + ИдЗагружать, + Получено, + СтруктураМассивовСозданныхПисем, + ВсеИдентификаторы = Неопределено) + + Получено = 0; + + Если ИдЗагружать.Количество() <> 0 Тогда + + ОтветственныйЗаОбработкуПисем = ДанныеУчетнойЗаписи.ОтветственныйЗаОбработкуПисем; + КоличествоОшибокПриЗаписи = 0; + КоличествоНеАктуальныхСообщений = 0; + + Пока ИдЗагружать.Количество() > (Получено + КоличествоОшибокПриЗаписи + КоличествоНеАктуальныхСообщений) Цикл + + КоличествоВПорции = 0; + МассивИдентификаторовПорцииДляЗагрузки = Новый Массив; + + Для Инд = (Получено + КоличествоОшибокПриЗаписи) По ИдЗагружать.Количество() - 1 Цикл + + МассивИдентификаторовПорцииДляЗагрузки.Добавить(ИдЗагружать.Получить(Инд)); + КоличествоВПорции = КоличествоВПорции + 1; + + Если КоличествоВПорции = 10 Тогда + Прервать; + КонецЕсли; + + КонецЦикла; + + // Получим нужные сообщения + Сообщения = Почта.Выбрать(Ложь, + МассивИдентификаторовПорцииДляЗагрузки, + ?(ДанныеУчетнойЗаписи.ПротоколВходящейПочты = "IMAP",Ложь, Истина)); + + КоличествоНеАктуальныхСообщений = КоличествоНеАктуальныхСообщений + (КоличествоВПорции - Сообщения.Количество()); + + // Запишем их + Для Каждого Сообщение Из Сообщения Цикл + + ДобавлятьВМассивПисемДляПолученияПапки = Ложь; + + НачатьТранзакцию(); + + Попытка + + ЭтоИсходящееПисьмо = ПочтовыеАдресаРавны(ДанныеУчетнойЗаписи.АдресЭлектроннойПочты, + АдресОтправителяИнтернетПочтовогоСообщения(Сообщение.Отправитель)); + + СозданноеПисьмо = ЗаписатьЭлектронноеПисьмо(ДанныеУчетнойЗаписи, + Сообщение, + ОтветственныйЗаОбработкуПисем, + ДанныеУчетнойЗаписи.ПомещатьПисьмоВПапкуПисьмаОснования, + ДобавлятьВМассивПисемДляПолученияПапки, + ЭтоИсходящееПисьмо); + + Получено = Получено + 1; + + ЗафиксироватьТранзакцию(); + + Исключение + + ОтменитьТранзакцию(); + ЕстьОшибки = Истина; + ТекстСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'При получении письма %1 от %2, отправленное c адреса %3 произошла ошибка + |%4'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + Сообщение.Тема, + Сообщение.ДатаОтправления, + Сообщение.Отправитель.Адрес, + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + + ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), + УровеньЖурналаРегистрации.Ошибка, , , + ТекстСообщенияОбОшибке); + + КоличествоОшибокПриЗаписи = КоличествоОшибокПриЗаписи + 1; + + Если ВсеИдентификаторы <> Неопределено Тогда + Для Каждого ИдентификаторСообщения Из Сообщение.Идентификатор Цикл + ИндексИдентификатораВМассиве = ВсеИдентификаторы.Найти(ИдентификаторСообщения); + Если ИндексИдентификатораВМассиве <> Неопределено Тогда + ВсеИдентификаторы.Удалить(ИндексИдентификатораВМассиве); + КонецЕсли; + Продолжить; + КонецЦикла; + КонецЕсли; + + КонецПопытки; + + СтруктураМассивовСозданныхПисем.ВсеПолученныеПисьма.Добавить(СозданноеПисьмо); + Если ДобавлятьВМассивПисемДляПолученияПапки Тогда + СтруктураМассивовСозданныхПисем.ПисьмаДляОпределенияПапок.Добавить(СозданноеПисьмо); + КонецЕсли; + + КонецЦикла; + + КонецЦикла; + + КонецЕсли; + +КонецПроцедуры + +Процедура ПолучитьПочтуПоПроколуIMAP(ДанныеУчетнойЗаписи, Почта, Получено, СтруктураМассивовСозданныхПисем) + + МассивИменАктивныхПапок = МассивИменАктивныхПапок(Почта); + + КвалификаторСтроки150 = Новый ОписаниеТипов("Строка",,,,Новый КвалификаторыСтроки(150,ДопустимаяДлина.Переменная)); + + ТаблицаИдентификаторов = Новый ТаблицаЗначений; + ТаблицаИдентификаторов.Колонки.Добавить("ИдентификаторНаСервере", КвалификаторСтроки150); + ТаблицаИдентификаторов.Колонки.Добавить("ИдентификаторПисьма", КвалификаторСтроки150); + + ДатаЗагрузкиПисем = ТекущаяДатаСеанса(); + + Для каждого ИмяАктивнойПапки Из МассивИменАктивныхПапок Цикл + + Попытка + Почта.ТекущийПочтовыйЯщик = ИмяАктивнойПапки; + Исключение + Продолжить; + КонецПопытки; + + ПараметрыОтбора = Новый Структура; + + Если Не ДанныеУчетнойЗаписи.ДатаЗагрузкиПисем = Дата(1,1,1,1,1,1) Тогда + ПараметрыОтбора.Вставить("ПослеДатыОтправления",ДанныеУчетнойЗаписи.ДатаЗагрузкиПисем); + Иначе + ПараметрыОтбора.Вставить("Удаленные", Ложь); + КонецЕсли; + + МассивИдентификаторовДляЗагрузки = Новый Массив; + + Попытка + ЗаголовкиПисемДляЗагрузки = Почта.ПолучитьЗаголовки(ПараметрыОтбора); + Исключение + Продолжить; + КонецПопытки; + + ТаблицаИдентификаторов.Очистить(); + Для Каждого ЗаголовокПисьма Из ЗаголовкиПисемДляЗагрузки Цикл + + Если ПустаяСтрока(ЗаголовокПисьма.ИдентификаторСообщения) Тогда + Продолжить; + КонецЕсли; + + НоваяСтрокаТаблицыИдентификаторов = ТаблицаИдентификаторов.Добавить(); + НоваяСтрокаТаблицыИдентификаторов.ИдентификаторНаСервере = ?(ЗаголовокПисьма.Идентификатор.Количество() = 0, "", ЗаголовокПисьма.Идентификатор[0]); + НоваяСтрокаТаблицыИдентификаторов.ИдентификаторПисьма = ЗаголовокПисьма.ИдентификаторСообщения; + + КонецЦикла; + + Запрос = Новый Запрос; + Запрос.Текст = " + |ВЫБРАТЬ + | ИдентификаторыПисемКЗагрузке.ИдентификаторПисьма, + | ИдентификаторыПисемКЗагрузке.ИдентификаторНаСервере + |ПОМЕСТИТЬ ИдентификаторыПисемКЗагрузке + |ИЗ + | &ИдентификаторыПисемКЗагрузке КАК ИдентификаторыПисемКЗагрузке + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | ИдентификаторыПисемКЗагрузке.ИдентификаторПисьма, + | ИдентификаторыПисемКЗагрузке.ИдентификаторНаСервере + |ИЗ + | ИдентификаторыПисемКЗагрузке КАК ИдентификаторыПисемКЗагрузке + | ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЭлектронноеПисьмоВходящее КАК ЭлектронноеПисьмоВходящее + | ПО (ИдентификаторыПисемКЗагрузке.ИдентификаторПисьма = ЭлектронноеПисьмоВходящее.ИдентификаторСообщения + | И ЭлектронноеПисьмоВходящее.УчетнаяЗапись = &УчетнаяЗапись) + | ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЭлектронноеПисьмоИсходящее КАК ЭлектронноеПисьмоИсходящее + | ПО (ИдентификаторыПисемКЗагрузке.ИдентификаторПисьма = ЭлектронноеПисьмоИсходящее.ИдентификаторСообщения + | И ЭлектронноеПисьмоИсходящее.УчетнаяЗапись = &УчетнаяЗапись) + |ГДЕ + | ЭлектронноеПисьмоВходящее.Ссылка ЕСТЬ NULL + | И ЭлектронноеПисьмоИсходящее.Ссылка ЕСТЬ NULL "; + + Запрос.УстановитьПараметр("ИдентификаторыПисемКЗагрузке", ТаблицаИдентификаторов); + Запрос.УстановитьПараметр("УчетнаяЗапись", ДанныеУчетнойЗаписи.Ссылка); + + ИдЗагружать = Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("ИдентификаторНаСервере"); + + ПолученоПисемВТекущемПочтовомЯщике = 0; + ПолучитьПисьмаПоМассивуИдентификаторов(Почта, + ДанныеУчетнойЗаписи, + ИдЗагружать, + ПолученоПисемВТекущемПочтовомЯщике, + СтруктураМассивовСозданныхПисем); + Получено = Получено + ПолученоПисемВТекущемПочтовомЯщике; + + КонецЦикла; + + УстановитьДатуПоследнейЗагрузкиПисем(ДанныеУчетнойЗаписи.Ссылка, ДатаЗагрузкиПисем); + +КонецПроцедуры + +Процедура ПолучитьПочтуПоПроколуPOP3(ДанныеУчетнойЗаписи, Почта, Получено, СтруктураМассивовСозданныхПисем) // Получим идентификаторы сообщений на сервере. Идентификаторы = Почта.ПолучитьИдентификаторы(); @@ -572,128 +917,226 @@ // Если на сервере сообщений нет, то удалим все записи по учетной записи в регистре сведений // ИдентификаторыПолученныхЭлектронныхПисем. УдалитьИдентификаторыВсехРанееПолученныхПисем(ДанныеУчетнойЗаписи.Ссылка); - Почта.Отключиться(); - СнятьБлокировкуУчетнойЗаписиДляПолучения(ДанныеУчетнойЗаписи.Ссылка); Возврат; КонецЕсли; // ----------------------------------------------------------------- // Определим какие сообщения нужно получать. ИдЗагружать = ПолучитьИдентификаторыПисемДляЗагрузки(Идентификаторы, ДанныеУчетнойЗаписи.Ссылка); - Получено = 0; - Если ИдЗагружать.Количество() <> 0 Тогда - - ОтветственныйЗаОбработкуПисем = ПолучитьОтветственногоЗаОбработкуПисьмаПоУмолчанию(ДанныеУчетнойЗаписи.Ссылка); - КоличествоОшибокПриЗаписи = 0; - Получено = 0; - - Пока ИдЗагружать.Количество() > (Получено + КоличествоОшибокПриЗаписи) Цикл - - КоличествоВПорции = 0; - МассивИдентификаторовПорцииДляЗагрузки = Новый Массив; - - Для Инд = (Получено + КоличествоОшибокПриЗаписи) По ИдЗагружать.Количество() - 1 Цикл - - МассивИдентификаторовПорцииДляЗагрузки.Добавить(ИдЗагружать.Получить(Инд)); - КоличествоВПорции = КоличествоВПорции + 1; - - Если КоличествоВПорции = 10 Тогда - Прервать; - КонецЕсли; - - КонецЦикла; - - // Получим нужные сообщения - Сообщения = Почта.Выбрать(Ложь, МассивИдентификаторовПорцииДляЗагрузки); - - // Запишем их - Для Каждого Сообщение Из Сообщения Цикл - ДобавлятьВМассивСозданныхПисем = ЛОЖЬ; - Попытка - СозданноеПисьмо = ЗаписатьВходящееЭлектронноеПисьмо( - ДанныеУчетнойЗаписи.Ссылка, - Сообщение, - ОтветственныйЗаОбработкуПисем, - ДанныеУчетнойЗаписи.ПомещатьПисьмоВПапкуПисьмаОснования, - ДобавлятьВМассивСозданныхПисем); - - Получено = Получено + 1; - - Исключение - - ОтменитьТранзакцию(); - ЕстьОшибки = Истина; - ТекстСообщенияОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'При получении письма %1 от %2, отправленное c адреса %3 произошла ошибка - |%4'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), - Сообщение.Тема, - Сообщение.ДатаОтправления, - Сообщение.Отправитель.Адрес, - ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - - ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), - УровеньЖурналаРегистрации.Ошибка, , , - ТекстСообщенияОбОшибке); - - КоличествоОшибокПриЗаписи = КоличествоОшибокПриЗаписи + 1; - Для Каждого ИдентификаторСообщения Из Сообщение.Идентификатор Цикл - ИндексИдентификатораВМассиве = Идентификаторы.Найти(ИдентификаторСообщения); - Если ИндексИдентификатораВМассиве <> Неопределено Тогда - Идентификаторы.Удалить(ИндексИдентификатораВМассиве); - КонецЕсли; - Продолжить; - КонецЦикла; - КонецПопытки; - Если ДобавлятьВМассивСозданныхПисем Тогда - МассивСозданныхПисем.Добавить(СозданноеПисьмо); - КонецЕсли; - КонецЦикла; - - КонецЦикла; - - КонецЕсли; + ПолученоПоДаннойУчетнойЗаписи = 0; + ПолучитьПисьмаПоМассивуИдентификаторов(Почта, + ДанныеУчетнойЗаписи, + ИдЗагружать, + ПолученоПоДаннойУчетнойЗаписи, + СтруктураМассивовСозданныхПисем, + Идентификаторы); + + Получено = Получено + ПолученоПоДаннойУчетнойЗаписи; // ----------------------------------------------------------------- // Удалим ненужные сообщения на сервере. - Если Протокол = ПротоколИнтернетПочты.POP3 Тогда - Если Не ДанныеУчетнойЗаписи.ОставлятьКопии Тогда - // удалять все - МассивКУдалению = Идентификаторы; - УдалятьВсе = Истина; + Если Не ДанныеУчетнойЗаписи.ОставлятьКопии Тогда + // удалять все + МассивКУдалению = Идентификаторы; + УдалятьВсе = Истина; + Иначе + УдалятьВсе = Ложь; + Если ДанныеУчетнойЗаписи.ОставлятьДней > 0 Тогда + МассивКУдалению = ПолучитьИдентификаторыПисемДляУдаленияНаСервере( + Идентификаторы, + ДанныеУчетнойЗаписи.Ссылка, + ТекущаяДатаСеанса() - ДанныеУчетнойЗаписи.ОставлятьДней * 24 * 60 * 60); Иначе - УдалятьВсе = Ложь; - Если ДанныеУчетнойЗаписи.ОставлятьДней > 0 Тогда - МассивКУдалению = ПолучитьИдентификаторыПисемДляУдаленияНаСервере( - Идентификаторы, - ДанныеУчетнойЗаписи.Ссылка, - ТекущаяДатаСеанса() - ДанныеУчетнойЗаписи.ОставлятьДней * 24 * 60 * 60); - Иначе - МассивКУдалению = Новый Массив; - КонецЕсли; - КонецЕсли; - - Если МассивКУдалению.Количество() <> 0 Тогда - Почта.УдалитьСообщения(МассивКУдалению); - КонецЕсли; - - // ----------------------------------------------------------------- - // Удалим ненужные идентификаторы в регистре сведений. - Если УдалятьВсе Тогда - УдалитьИдентификаторыВсехРанееПолученныхПисем(ДанныеУчетнойЗаписи.Ссылка); - Иначе - УдалитьИдентификаторыРанееПолученныхПисем(ДанныеУчетнойЗаписи.Ссылка, Идентификаторы, МассивКУдалению); + МассивКУдалению = Новый Массив; КонецЕсли; КонецЕсли; - // ----------------------------------------------------------------- - // Отключимся от почтового сервера. - Почта.Отключиться(); + Если МассивКУдалению.Количество() <> 0 Тогда + Почта.УдалитьСообщения(МассивКУдалению); + КонецЕсли; - СнятьБлокировкуУчетнойЗаписиДляПолучения(ДанныеУчетнойЗаписи.Ссылка); + // ----------------------------------------------------------------- + // Удалим ненужные идентификаторы в регистре сведений. + Если УдалятьВсе Тогда + УдалитьИдентификаторыВсехРанееПолученныхПисем(ДанныеУчетнойЗаписи.Ссылка); + Иначе + УдалитьИдентификаторыРанееПолученныхПисем(ДанныеУчетнойЗаписи.Ссылка, Идентификаторы, МассивКУдалению); + КонецЕсли; КонецПроцедуры +Функция ПочтовыеАдресаРавны(ПервыйАдрес, ВторойАдрес) + + ОбработанныйПервыйАдрес = НРег(СокрЛП(ПервыйАдрес)); + ОбработанныйВторойАдрес = НРег(СокрЛП(ВторойАдрес)); + + ИзменитьДоменВПочтовомАдресеЕслиНеобходимо(ОбработанныйПервыйАдрес); + ИзменитьДоменВПочтовомАдресеЕслиНеобходимо(ОбработанныйВторойАдрес); + + Возврат (ОбработанныйПервыйАдрес = ОбработанныйВторойАдрес); + +КонецФункции + +Функция СоответствиеПодменяемыхДоменовЭлектроннойПочты() + + СоответствиеДоменов = Новый Соответствие; + СоответствиеДоменов.Вставить("yandex.ru","ya.ru"); + + Возврат СоответствиеДоменов; + +КонецФункции + +Функция СтруктураАдресаЭлектроннойПочты(АдресЭлектроннойПочты) + + МассивАдреса = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(АдресЭлектроннойПочты,"@"); + + Если МассивАдреса.Количество() = 2 Тогда + + СтруктураАдреса = Новый Структура; + СтруктураАдреса.Вставить("ИмяПочтовогоЯщика", МассивАдреса[0]); + СтруктураАдреса.Вставить("Домен" , МассивАдреса[1]); + + Возврат СтруктураАдреса; + Иначе + Возврат Неопределено; + КонецЕсли; + +КонецФункции + +Функция СтруктураМассиваПисем() + + СтруктураМассивовПисем = Новый Структура; + СтруктураМассивовПисем.Вставить("ВсеПолученныеПисьма", Новый Массив); + СтруктураМассивовПисем.Вставить("ПисьмаДляОпределенияПапок", Новый Массив); + + Возврат СтруктураМассивовПисем; + +КонецФункции + +Процедура УстановитьДатуПоследнейЗагрузкиПисем(УчетнаяЗапись, ДатаЗагрузки) + + МенеджерЗаписи = РегистрыСведений.ДатыПоследнейЗагрузкиПочтовыхСообщений.СоздатьМенеджерЗаписи(); + МенеджерЗаписи.УчетнаяЗапись = УчетнаяЗапись; + МенеджерЗаписи.ДатаЗагрузкиПисем = ДатаЗагрузки; + МенеджерЗаписи.Записать(); + +КонецПроцедуры + +Процедура СинхронизироватьПризнакРассмотреноССервером(Почта, ДанныеУчетнойЗаписи, МассивЗагруженныхПисем) + + Если НЕ ДанныеУчетнойЗаписи.ОбработкаПисемВедетсяВДругомПочтовомКлиенте Тогда + Возврат; + КонецЕсли; + + МассивИменАктивныхПапок = МассивИменАктивныхПапок(Почта); + + МассивИдентификаторовНеПрочитанныхПисем = Новый Массив; + + Для каждого ИмяАктивнойПапки Из МассивИменАктивныхПапок Цикл + + Попытка + Почта.ТекущийПочтовыйЯщик = ИмяАктивнойПапки; + Исключение + Продолжить; + КонецПопытки; + + ПараметрыОтбора = Новый Структура; + ПараметрыОтбора.Вставить("Прочитанные", Ложь); + + Попытка + ЗаголовкиПрочитанныхПисем = Почта.ПолучитьЗаголовки(ПараметрыОтбора); + Исключение + Продолжить; + КонецПопытки; + + + Для Каждого ЗаголовокПисьма Из ЗаголовкиПрочитанныхПисем Цикл + + МассивИдентификаторовНеПрочитанныхПисем.Добавить(ЗаголовокПисьма.ИдентификаторСообщения); + + КонецЦикла; + + КонецЦикла; + + ТаблицаИдентификаторов = Новый ТаблицаЗначений; + ТаблицаИдентификаторов.Колонки.Добавить("Идентификатор", + Новый ОписаниеТипов("Строка",,,,Новый КвалификаторыСтроки(150,ДопустимаяДлина.Переменная))); + + ОбщегоНазначенияКлиентСервер.ДополнитьТаблицуИзМассива(ТаблицаИдентификаторов, + МассивИдентификаторовНеПрочитанныхПисем, + "Идентификатор"); + + Запрос = Новый Запрос; + Запрос.Текст = " + |ВЫБРАТЬ + | ИдентификаторыПрочтенныхПисем.Идентификатор + |ПОМЕСТИТЬ ИдентификаторыПрочтенныхПисем + |ИЗ + | &ИдентификаторыПрочтенныхПисем КАК ИдентификаторыПрочтенныхПисем + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | Взаимодействия.Ссылка КАК Ссылка, + | ЛОЖЬ КАК Рассмотрено + |ИЗ + | ИдентификаторыПрочтенныхПисем КАК ИдентификаторыПрочтенныхПисем + | ЛЕВОЕ СОЕДИНЕНИЕ ЖурналДокументов.Взаимодействия КАК Взаимодействия + | ПО ИдентификаторыПрочтенныхПисем.Идентификатор = Взаимодействия.ИдентификаторСообщения + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПредметыПапкиВзаимодействий КАК ПредметыПапкиВзаимодействий + | ПО (Взаимодействия.Ссылка = ПредметыПапкиВзаимодействий.Взаимодействие) + |ГДЕ + | Взаимодействия.УчетнаяЗапись = &УчетнаяЗапись + | И ЕСТЬNULL(ПредметыПапкиВзаимодействий.Рассмотрено, ЛОЖЬ) = ИСТИНА + | + |ОБЪЕДИНИТЬ ВСЕ + | + |ВЫБРАТЬ + | Взаимодействия.Ссылка, + | ИСТИНА + |ИЗ + | ЖурналДокументов.Взаимодействия КАК Взаимодействия + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПредметыПапкиВзаимодействий КАК ПредметыПапкиВзаимодействий + | ПО Взаимодействия.Ссылка = ПредметыПапкиВзаимодействий.Взаимодействие + | ЛЕВОЕ СОЕДИНЕНИЕ ИдентификаторыПрочтенныхПисем КАК ИдентификаторыПрочтенныхПисем + | ПО ИдентификаторыПрочтенныхПисем.Идентификатор = Взаимодействия.ИдентификаторСообщения + |ГДЕ + | ЕСТЬNULL(ПредметыПапкиВзаимодействий.Рассмотрено, ЛОЖЬ) = ЛОЖЬ + | И Взаимодействия.УчетнаяЗапись = &УчетнаяЗапись + | И ИдентификаторыПрочтенныхПисем.Идентификатор IS NULL"; + + Запрос.УстановитьПараметр("ИдентификаторыПрочтенныхПисем", ТаблицаИдентификаторов); + Запрос.УстановитьПараметр("УчетнаяЗапись", ДанныеУчетнойЗаписи.Ссылка); + + Результат = Запрос.Выполнить(); + Если Результат.Пустой() Тогда + Возврат; + КонецЕсли; + + МассивПисемРассмотрено = Новый Массив; + МассивПисемНеРассмотрено = Новый Массив; + + Выборка = Результат.Выбрать(); + + Пока Выборка.Следующий() Цикл + Если Выборка.Рассмотрено Тогда + МассивПисемРассмотрено.Добавить(Выборка.Ссылка); + Иначе + МассивПисемНеРассмотрено.Добавить(Выборка.Ссылка); + КонецЕсли; + КонецЦикла; + + ЕстьИзменения = Ложь; + + Взаимодействия.УстановитьПризнакРассмотрено(МассивПисемРассмотрено, Истина, ЕстьИзменения); + Взаимодействия.УстановитьПризнакРассмотрено(МассивПисемНеРассмотрено, Ложь, ЕстьИзменения); + + ОбщегоНазначенияКлиентСервер.ДополнитьМассив(МассивЗагруженныхПисем, МассивПисемРассмотрено, Ложь); + ОбщегоНазначенияКлиентСервер.ДополнитьМассив(МассивЗагруженныхПисем, МассивПисемНеРассмотрено, Ложь); + +КонецПроцедуры + Процедура УдалитьИдентификаторыВсехРанееПолученныхПисем(УчетнаяЗапись) Запрос = Новый Запрос; @@ -841,26 +1284,33 @@ КонецФункции -Функция ЗаписатьВходящееЭлектронноеПисьмо( - УчетнаяЗапись, - Сообщение, - ОтветственныйЗаОбработкуПисем, - ПомещатьПисьмоВПапкуПисьмаОснования, - ДобавлятьВМассивСозданныхПисем) +Функция ЗаписатьЭлектронноеПисьмо(ДанныеУчетнойЗаписи, + Сообщение, + ОтветственныйЗаОбработкуПисем, + ПомещатьПисьмоВПапкуПисьмаОснования, + ДобавлятьВМассивПисемДляПолученияПапки, + ЭтоИсходящееПисьмо); - НачатьТранзакцию(); - // Создадим документ и заполним его реквизиты на основе сообщения. - Письмо = Документы.ЭлектронноеПисьмоВходящее.СоздатьДокумент(); - Письмо.УчетнаяЗапись = УчетнаяЗапись; - ЗаполнитьДокументЭлектронноеПисьмоВходящее(Письмо, Сообщение); - + Если ЭтоИсходящееПисьмо Тогда + Письмо = Документы.ЭлектронноеПисьмоИсходящее.СоздатьДокумент(); + Иначе + Письмо = Документы.ЭлектронноеПисьмоВходящее.СоздатьДокумент(); + КонецЕсли; + + + ЗаполнитьДокументЭлектронноеПисьмо(Письмо, Сообщение, ЭтоИсходящееПисьмо); + Письмо.УчетнаяЗапись = ДанныеУчетнойЗаписи.Ссылка; + // Найдем основание письма, определим предмет и контакты. Предмет = Неопределено; Папка = Неопределено; + ЗаполнитьПредметИКонтакты(Письмо, + ДанныеУчетнойЗаписи.Ссылка, Предмет, Папка, + ЭтоИсходящееПисьмо, ПомещатьПисьмоВПапкуПисьмаОснования); // Заполним ответственного @@ -870,8 +1320,19 @@ Письмо.Записать(); // Установим папку письма и предмет. + Если ДанныеУчетнойЗаписи.ОбработкаПисемВедетсяВДругомПочтовомКлиенте Тогда + ПризнакРассмотрено = Истина; + Иначе + ПризнакРассмотрено = ?(ЭтоИсходящееПисьмо, Истина, Ложь); + КонецЕсли; + СтруктураДляЗаписи = ВзаимодействияКлиентСервер.СтруктураРеквизитовВзаимодействияДляЗаписи( - Папка,?(ЗначениеЗаполнено(Предмет),Предмет,Письмо.Ссылка), , , Ложь); + Папка, + ?(ЗначениеЗаполнено(Предмет),Предмет,Письмо.Ссылка), + ПризнакРассмотрено, + , + Ложь); + ВзаимодействияВызовСервера.ЗаписьРегистрРеквизитыВзаимодействия(Письмо.Ссылка, СтруктураДляЗаписи); МассивИменВложений = Новый Массив; МассивДублирующихсяИменВложений = Новый Массив; @@ -897,7 +1358,7 @@ ОбщегоНазначения.ОбщийМодуль("ЭлектроннаяПодписьСлужебныйКлиентСервер"); СоответствиеВложенийИПодписей = - МодульЭлектроннаяПодписьСлужебныйКлиентСервер.ПолучитьСоответствиеФайловИПодписей( + МодульЭлектроннаяПодписьСлужебныйКлиентСервер.ИменаФайловПодписейИменФайловДанных( МассивИменВложений); Иначе СоответствиеВложенийИПодписей = Новый Соответствие; @@ -947,33 +1408,98 @@ КонецЦикла; КонецЕсли; - Если Письмо.НепринятыеВложения.Количество() Тогда + Если Письмо.НепринятыеВложения.Количество() > 0 Тогда Письмо.Записать(); КонецЕсли; // Запишем идентификатор - ЗаписатьИдентификаторПолученногоПисьма(УчетнаяЗапись, - Письмо.ИдентификаторНаСервере, - Сообщение.ДатаПолучения); - - Если Письмо.УведомитьОПрочтении Тогда - ЗаписатьНеобходимостьОбработкиУведомленияОПрочтении(Письмо.Ссылка); + Если Не ДанныеУчетнойЗаписи.ПротоколВходящейПочты = "IMAP" Тогда + + ЗаписатьИдентификаторПолученногоПисьма(ДанныеУчетнойЗаписи.Ссылка, + Письмо.ИдентификаторНаСервере, + Сообщение.ДатаПолучения); + КонецЕсли; - - ЗафиксироватьТранзакцию(); + + Если Не ЭтоИсходящееПисьмо И Письмо.УведомитьОПрочтении Тогда + + ЗаписатьНеобходимостьОбработкиУведомленияОПрочтении(Письмо.Ссылка); + + КонецЕсли; + Если (НЕ ПомещатьПисьмоВПапкуПисьмаОснования) ИЛИ (НЕ ЗначениеЗаполнено(Папка)) Тогда - ДобавлятьВМассивСозданныхПисем = Истина; + ДобавлятьВМассивПисемДляПолученияПапки = Истина; КонецЕсли; Возврат Письмо.Ссылка; КонецФункции -Процедура ЗаполнитьПредметИКонтакты( - Письмо, - Предмет, - Папка, - ПомещатьПисьмоВПапкуПисьмаОснования) +Процедура ЗаполнитьДокументЭлектронноеПисьмо(Письмо, Сообщение, ЭтоИсходящееПисьмо) + + ОтправительАдрес = АдресОтправителяИнтернетПочтовогоСообщения(Сообщение.Отправитель); + + Если Не ЭтоИсходящееПисьмо Тогда + + Письмо.ДатаПолучения = Сообщение.ДатаОтправления; + Письмо.ОтправительАдрес = ОтправительАдрес; + + Иначе + + Письмо.СтатусПисьма = Перечисления.СтатусыИсходящегоЭлектронногоПисьма.Отправлено; + Письмо.ДатаОтправления = Сообщение.ДатаПолучения; + + КонецЕсли; + + ИмяОтправителя = ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыXML(Сообщение.ИмяОтправителя, ""); + Письмо.ОтправительПредставление = ?(ПустаяСтрока(Сообщение.ИмяОтправителя), + ОтправительАдрес, + ИмяОтправителя + " <"+ ОтправительАдрес +">"); + + Письмо.Важность = ПолучитьВажностьЭлектронногоПисьма(Сообщение.Важность); + Письмо.Дата = ?(Сообщение.ДатаОтправления = Дата(1,1,1), ТекущаяДатаСеанса(), Сообщение.ДатаОтправления); + Письмо.ВнутреннийЗаголовок = Сообщение.Заголовок; + Письмо.ИдентификаторНаСервере = ?(Сообщение.Идентификатор.Количество() = 0, "", Сообщение.Идентификатор[0]); + Письмо.ИдентификаторСообщения = Сообщение.ИдентификаторСообщения; + Письмо.Кодировка = Сообщение.Кодировка; + Письмо.УведомитьОДоставке = Сообщение.УведомитьОДоставке; + Письмо.УведомитьОПрочтении = Сообщение.УведомитьОПрочтении; + + Письмо.Размер = Сообщение.Размер; + Письмо.Тема = ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыXML(Сообщение.Тема); + + УстановитьТекстПисьма(Письмо, Сообщение); + + ЗаполнитьИнтернетПочтовыеАдреса(Письмо.ПолучателиКопий , Сообщение.Копии); + ЗаполнитьИнтернетПочтовыеАдреса(Письмо.ПолучателиОтвета, Сообщение.ОбратныйАдрес); + ЗаполнитьИнтернетПочтовыеАдреса(Письмо.ПолучателиПисьма, Сообщение.Получатели); + + Если ЭтоИсходящееПисьмо Тогда + ЗаполнитьИнтернетПочтовыеАдреса(Письмо.ПолучателиСкрытыхКопий, + Сообщение.СлепыеКопии); + Иначе + ЗаполнитьИнтернетПочтовыеАдреса(Письмо.АдресаУведомленияОПрочтении, + Сообщение.АдресаУведомленияОПрочтении); + КонецЕсли; + + Письмо.ИдентификаторОснования = ИзПисьмаПолучитьИдентификаторОснования(Сообщение); + Письмо.ИдентификаторыОснований = Сообщение.ПолучитьПолеЗаголовка("References", "Строка"); + + Для каждого Вложение Из Сообщение.Вложения Цикл + Если ПустаяСтрока(Вложение.Идентификатор) И ТипЗнч(Вложение.Данные) = Тип("ДвоичныеДанные") Тогда + Письмо.ЕстьВложения = Истина; + Прервать; + КонецЕсли; + КонецЦикла; + +КонецПроцедуры + +Процедура ЗаполнитьПредметИКонтакты(Письмо, + УчетнаяЗапись, + Предмет, + Папка, + ЭтоИсходящееПисьмо, + ПомещатьПисьмоВПапкуПисьмаОснования) // ----------------------------------------------------------------- // Получим идентификаторы писем оснований. @@ -1014,7 +1540,6 @@ // ----------------------------------------------------------------- // Получим все основания Запрос = Новый Запрос; - Запрос.УстановитьПараметр("ТаблицаИдентификаторов", ТаблицаИдентификаторов); Запрос.Текст = "ВЫБРАТЬ | ТаблицаИдентификаторов.Идентификатор @@ -1026,83 +1551,117 @@ |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ЭлектронноеПисьмоВходящее.Ссылка КАК Ссылка, - | ЭлектронноеПисьмоВходящее.Дата КАК Дата + | ЭлектронноеПисьмоВходящее.Дата КАК Дата, + | 0 КАК Приоритет |ПОМЕСТИТЬ ВсеЭлектронныеПисьма |ИЗ | ТаблицаИдентификаторов КАК ТаблицаИдентификаторов | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЭлектронноеПисьмоВходящее КАК ЭлектронноеПисьмоВходящее | ПО ТаблицаИдентификаторов.Идентификатор = ЭлектронноеПисьмоВходящее.ИдентификаторСообщения + |ГДЕ + | ЭлектронноеПисьмоВходящее.УчетнаяЗапись = &УчетнаяЗапись | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ - | ЭлектронноеПисьмоИсходящее.Ссылка, - | ЭлектронноеПисьмоИсходящее.Дата + | ЭлектронноеПисьмоИсходящее.Ссылка КАК Ссылка, + | ЭлектронноеПисьмоИсходящее.Дата КАК Дата, + | 0 КАК Приоритет |ИЗ | ТаблицаИдентификаторов КАК ТаблицаИдентификаторов | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЭлектронноеПисьмоИсходящее КАК ЭлектронноеПисьмоИсходящее | ПО ТаблицаИдентификаторов.Идентификатор = ЭлектронноеПисьмоИсходящее.ИдентификаторСообщения + |ГДЕ + | ЭлектронноеПисьмоИсходящее.УчетнаяЗапись = &УчетнаяЗапись + | + |ОБЪЕДИНИТЬ ВСЕ + | + |ВЫБРАТЬ + | ЭлектронноеПисьмоВходящее.Ссылка КАК Ссылка, + | ЭлектронноеПисьмоВходящее.Дата КАК Дата, + | 1 КАК Приоритет + |ИЗ + | Документ.ЭлектронноеПисьмоВходящее КАК ЭлектронноеПисьмоВходящее + |ГДЕ + | ЭлектронноеПисьмоВходящее.УчетнаяЗапись = &УчетнаяЗапись + | И ЭлектронноеПисьмоВходящее.ИдентификаторОснования = &ИдентификаторСообщения + | + |ОБЪЕДИНИТЬ ВСЕ + | + |ВЫБРАТЬ + | ЭлектронноеПисьмоИсходящее.Ссылка КАК Ссылка, + | ЭлектронноеПисьмоИсходящее.Дата КАК Дата, + | 1 КАК Приоритет + |ИЗ + | Документ.ЭлектронноеПисьмоИсходящее КАК ЭлектронноеПисьмоИсходящее + |ГДЕ + | ЭлектронноеПисьмоИсходящее.УчетнаяЗапись = &УчетнаяЗапись + | И ЭлектронноеПисьмоИсходящее.ИдентификаторОснования = &ИдентификаторСообщения |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ ПЕРВЫЕ 1 | ВсеЭлектронныеПисьма.Ссылка, - | ВсеЭлектронныеПисьма.Дата КАК Дата + | ВсеЭлектронныеПисьма.Приоритет, + | ВсеЭлектронныеПисьма.Дата КАК Дата, + | ЕСТЬNULL(ПредметыПапкиВзаимодействий.Предмет, НЕОПРЕДЕЛЕНО) КАК Предмет, + | ЕСТЬNULL(ПредметыПапкиВзаимодействий.ПапкаЭлектронногоПисьма, ЗНАЧЕНИЕ(Справочник.ПапкиЭлектронныхПисем.ПустаяСсылка)) КАК Папка, + | ЕСТЬNULL(ПапкиЭлектронныхПисем.ПредопределеннаяПапка, ЛОЖЬ) КАК ПредопределеннаяПапка |ИЗ | ВсеЭлектронныеПисьма КАК ВсеЭлектронныеПисьма + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПредметыПапкиВзаимодействий КАК ПредметыПапкиВзаимодействий + | ПО ВсеЭлектронныеПисьма.Ссылка = ПредметыПапкиВзаимодействий.Взаимодействие + | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПапкиЭлектронныхПисем КАК ПапкиЭлектронныхПисем + | ПО (ПредметыПапкиВзаимодействий.ПапкаЭлектронногоПисьма = ПапкиЭлектронныхПисем.Ссылка) | |УПОРЯДОЧИТЬ ПО + | ВсеЭлектронныеПисьма.Приоритет Возр, | Дата УБЫВ"; - Выборка = Запрос.Выполнить().Выбрать(); - Письмо.ВзаимодействиеОснование = ?(Выборка.Следующий(), Выборка.Ссылка, Неопределено); + Запрос.УстановитьПараметр("ТаблицаИдентификаторов", ТаблицаИдентификаторов); + Запрос.УстановитьПараметр("УчетнаяЗапись", УчетнаяЗапись); + Запрос.УстановитьПараметр("ИдентификаторСообщения", Письмо.ИдентификаторСообщения); - // ----------------------------------------------------------------- - // Получим предмет взаимодействия. - Если ЗначениеЗаполнено(Письмо.ВзаимодействиеОснование) Тогда + Результат = Запрос.Выполнить(); + Если Не Результат.Пустой() Тогда - Запрос = Новый Запрос; - Запрос.Текст = " - |ВЫБРАТЬ - | ПредметыПапкиВзаимодействий.Предмет, - | ПредметыПапкиВзаимодействий.ПапкаЭлектронногоПисьма КАК Папка, - | ЕСТЬNULL(ПапкиЭлектронныхПисем.ПредопределеннаяПапка, ИСТИНА) КАК ПредопределеннаяПапка - |ИЗ - | РегистрСведений.ПредметыПапкиВзаимодействий КАК ПредметыПапкиВзаимодействий - | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ПапкиЭлектронныхПисем КАК ПапкиЭлектронныхПисем - | ПО ПредметыПапкиВзаимодействий.ПапкаЭлектронногоПисьма = ПапкиЭлектронныхПисем.Ссылка - |ГДЕ - | ПредметыПапкиВзаимодействий.Взаимодействие = &ВзаимодействиеОснование"; - - Запрос.УстановитьПараметр("ВзаимодействиеОснование", Письмо.ВзаимодействиеОснование ); - - Результат = Запрос.Выполнить(); - Если Результат.Пустой() Тогда - Предмет = Письмо.Ссылка; - Иначе - Выборка = Результат.Выбрать(); - Выборка.Следующий(); - Предмет = Выборка.Предмет; + Выборка = Результат.Выбрать(); + Выборка.Следующий(); + Предмет = Выборка.Предмет; + Если Выборка.Приоритет = 0 Тогда + Письмо.ВзаимодействиеОснование = Выборка.Ссылка; Если ПомещатьПисьмоВПапкуПисьмаОснования И Не Выборка.ПредопределеннаяПапка Тогда Папка = Выборка.Папка; КонецЕсли; - КонецЕсли; + КонецЕсли; + + КонецЕсли; + + Если Предмет = Неопределено Тогда + Предмет = Письмо.Ссылка; КонецЕсли; // ----------------------------------------------------------------- // Получим проставленные контакты в предмете. - СоответствиеКонтактов = ПолучитьСоответствиеКонтактовВПисьме(Письмо.ВзаимодействиеОснование); + СоответствиеКонтактов = СоответствиеКонтактовВПисьме(Письмо.ВзаимодействиеОснование); // ----------------------------------------------------------------- // Проставим контакты на основании предмета. НеопределенныеАдреса = Новый Массив; - УстановитьКонтактыВоВходящемПисьме(Письмо, СоответствиеКонтактов, НеопределенныеАдреса); + УстановитьКонтактыВПисьме(Письмо, СоответствиеКонтактов, НеопределенныеАдреса, ЭтоИсходящееПисьмо); // ----------------------------------------------------------------- // Если есть неопределенные адреса, то поищем их по контактной информации. СоответствиеКонтактов = НайтиАдресаЭлектроннойПочтыВКонтактнойИнформации(НеопределенныеАдреса); Если СоответствиеКонтактов.Количество() > 0 Тогда - УстановитьКонтактыВоВходящемПисьме(Письмо, СоответствиеКонтактов, НеопределенныеАдреса); + УстановитьКонтактыВПисьме(Письмо, СоответствиеКонтактов, НеопределенныеАдреса, ЭтоИсходящееПисьмо); + КонецЕсли; + + Письмо.СписокПолучателейПисьма = ВзаимодействияКлиентСервер.ПолучитьПредставлениеСпискаАдресатов(Письмо.ПолучателиПисьма, Ложь); + Письмо.СписокПолучателейКопий = ВзаимодействияКлиентСервер.ПолучитьПредставлениеСпискаАдресатов(Письмо.ПолучателиКопий, Ложь); + + Если ТипЗнч(Письмо) = Тип("ДокументОбъект.ЭлектронноеПисьмоИсходящее") Тогда + Письмо.СписокПолучателейКопий = ВзаимодействияКлиентСервер.ПолучитьПредставлениеСпискаАдресатов(Письмо.ПолучателиКопий, Ложь); КонецЕсли; КонецПроцедуры @@ -1128,7 +1687,7 @@ | И НЕ(КонтактнаяИнформация.Ссылка.ПометкаУдаления) |"; - МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); Для каждого ЭлементМассиваОписания Из МассивОписанияТиповКонтактов Цикл Если ЭлементМассиваОписания.Имя = "Пользователи" Тогда @@ -1147,7 +1706,7 @@ | КонтактнаяИнформация.АдресЭП В(&МассивАдресов) | И КонтактнаяИнформация.Тип = &Тип | И (НЕ КонтактнаяИнформация.Ссылка.ПометкаУдаления) - |"; + |"; КонецЦикла; @@ -1170,9 +1729,7 @@ КонецФункции -Процедура УстановитьКонтактыВоВходящемПисьме(Письмо, СоответствиеКонтактов, НеопределенныеАдреса) - - ОбработатьПоляКонтактИАдрес(Письмо.ОтправительАдрес, Письмо.ОтправительКонтакт, СоответствиеКонтактов, НеопределенныеАдреса); +Процедура УстановитьКонтактыВПисьме(Письмо, СоответствиеКонтактов, НеопределенныеАдреса, ЭтоИсходящееПисьмо) Для Каждого СтрокаТаблицы Из Письмо.ПолучателиПисьма Цикл ОбработатьПоляКонтактИАдрес(СтрокаТаблицы.Адрес, СтрокаТаблицы.Контакт, СоответствиеКонтактов, НеопределенныеАдреса); @@ -1185,6 +1742,14 @@ Для Каждого СтрокаТаблицы Из Письмо.ПолучателиОтвета Цикл ОбработатьПоляКонтактИАдрес(СтрокаТаблицы.Адрес, СтрокаТаблицы.Контакт, СоответствиеКонтактов, НеопределенныеАдреса); КонецЦикла; + + Если ЭтоИсходящееПисьмо Тогда + Для Каждого СтрокаТаблицы Из Письмо.ПолучателиСкрытыхКопий Цикл + ОбработатьПоляКонтактИАдрес(СтрокаТаблицы.Адрес, СтрокаТаблицы.Контакт, СоответствиеКонтактов, НеопределенныеАдреса); + КонецЦикла; + Иначе + ОбработатьПоляКонтактИАдрес(Письмо.ОтправительАдрес, Письмо.ОтправительКонтакт, СоответствиеКонтактов, НеопределенныеАдреса); + КонецЕсли; КонецПроцедуры @@ -1206,7 +1771,7 @@ КонецПроцедуры -Функция ПолучитьСоответствиеКонтактовВПисьме(Письмо) +Функция СоответствиеКонтактовВПисьме(Письмо) СоответствиеКонтактов = Новый Соответствие; Если Не ЗначениеЗаполнено(Письмо) Тогда @@ -1285,51 +1850,6 @@ КонецПроцедуры -Процедура ЗаполнитьДокументЭлектронноеПисьмоВходящее(Письмо, Сообщение) - - Письмо.Важность = ПолучитьВажностьЭлектронногоПисьма(Сообщение.Важность); - Письмо.Дата = ?(Сообщение.ДатаОтправления = Дата(1,1,1), ТекущаяДатаСеанса(), Сообщение.ДатаОтправления); - Письмо.ДатаПолучения = Сообщение.ДатаПолучения; - Письмо.ВнутреннийЗаголовок = Сообщение.Заголовок; - Письмо.ИдентификаторНаСервере = ?(Сообщение.Идентификатор.Количество() = 0, "", Сообщение.Идентификатор[0]); - Письмо.ИдентификаторСообщения = Сообщение.ИдентификаторСообщения; - Письмо.Кодировка = Сообщение.Кодировка; - Письмо.УведомитьОДоставке = Сообщение.УведомитьОДоставке; - Письмо.УведомитьОПрочтении = Сообщение.УведомитьОПрочтении; - - Если ТипЗнч(Сообщение.Отправитель) = Тип("ИнтернетПочтовыйАдрес") Тогда - Письмо.ОтправительАдрес = Сообщение.Отправитель.Адрес; - Иначе - Письмо.ОтправительАдрес = Сообщение.Отправитель; - КонецЕсли; - Письмо.ОтправительАдрес = ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыXML(Письмо.ОтправительАдрес, ""); - ИмяОтправителя = ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыXML(Сообщение.ИмяОтправителя, ""); - - Письмо.ОтправительПредставление = - ?(ПустаяСтрока(ИмяОтправителя), Письмо.ОтправительАдрес, ИмяОтправителя + " <"+ Письмо.ОтправительАдрес +">"); - - Письмо.Размер = Сообщение.Размер; - Письмо.Тема = ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыXML(Сообщение.Тема); - - УстановитьТекстПисьма(Письмо, Сообщение); - - ЗаполнитьИнтернетПочтовыеАдреса(Письмо.ПолучателиКопий, Сообщение.Копии); - ЗаполнитьИнтернетПочтовыеАдреса(Письмо.ПолучателиОтвета, Сообщение.ОбратныйАдрес); - ЗаполнитьИнтернетПочтовыеАдреса(Письмо.ПолучателиПисьма, Сообщение.Получатели); - ЗаполнитьИнтернетПочтовыеАдреса(Письмо.АдресаУведомленияОПрочтении,Сообщение.АдресаУведомленияОПрочтении); - - Письмо.ИдентификаторОснования = ИзПисьмаПолучитьИдентификаторОснования(Сообщение); - Письмо.ИдентификаторыОснований = Сообщение.ПолучитьПолеЗаголовка("References", "Строка"); - - Для каждого Вложение Из Сообщение.Вложения Цикл - Если ПустаяСтрока(Вложение.Идентификатор) И ТипЗнч(Вложение.Данные) = Тип("ДвоичныеДанные") Тогда - Письмо.ЕстьВложения = Истина; - Прервать; - КонецЕсли; - КонецЦикла; - -КонецПроцедуры - Процедура ЗаполнитьИнтернетПочтовыеАдреса(ТабличнаяЧасть, Адреса) Для Каждого Адрес Из Адреса Цикл @@ -1396,39 +1916,233 @@ КонецПроцедуры -// Получает ответственного за обработку электронных писем по умолчанию. -// -// Параметры: -// УчетнаяЗапись - СправочникСсылка.УчетныеЗаписиЭлектроннойПочты - учетная запись, для которой определяется -// ответственный. -// -// Возвращаемое значение: -// СправочникСсылка.Пользователи - ответственный за обработку электронных писем. -// -Функция ПолучитьОтветственногоЗаОбработкуПисьмаПоУмолчанию(УчетнаяЗапись) +Функция АдресОтправителяИнтернетПочтовогоСообщения(Отправитель) - УстановитьПривилегированныйРежим(Истина); + Если ТипЗнч(Отправитель) = Тип("ИнтернетПочтовыйАдрес") Тогда + ОтправительАдрес = Отправитель.Адрес; + Иначе + ОтправительАдрес = Отправитель; + КонецЕсли; + Возврат ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыXML(ОтправительАдрес, ""); + +КонецФункции + +Процедура ИзменитьДоменВПочтовомАдресеЕслиНеобходимо(ПочтовыйАдрес) + + СтруктураАдреса = СтруктураАдресаЭлектроннойПочты(ПочтовыйАдрес); + Если СтруктураАдреса <> Неопределено Тогда + СоответствиеПодменяемыхДоменов = СоответствиеПодменяемыхДоменовЭлектроннойПочты(); + ДоменНаКоторыйНеобходимоЗаменить = СоответствиеПодменяемыхДоменов.Получить(СтруктураАдреса.Домен); + Если ДоменНаКоторыйНеобходимоЗаменить <> Неопределено Тогда + ПочтовыйАдрес = СтруктураАдреса.ИмяПочтовогоЯщика + "@" + ДоменНаКоторыйНеобходимоЗаменить; + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +Функция МассивИменАктивныхПапок(Почта) + + МассивИменАктивныхПапок = Новый Массив; + + ИменаАктивныхПапок = Почта.ПолучитьПочтовыеЯщикиПоПодписке(); + Если ИменаАктивныхПапок.Количество() = 0 Тогда + ИменаАктивныхПапок = Почта.ПолучитьПочтовыеЯщики(); + КонецЕсли; + + Разделитель = ""; + Попытка + Разделитель = Почта.СимволРазделитель; + Исключение + // Некоторые почтовые сервера не поддерживают эту команду. + КонецПопытки; + + МассивИгнорируемыхИмен = МассивИменПапокДляКоторыхНеВыполняетсяЗагрузкаПисем(); + + Для Каждого ИмяАктивнойПапки Из ИменаАктивныхПапок Цикл + + Если Не ПустаяСтрока(Разделитель) Тогда + + МассивСтрокИмениПапки = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивСлов(ИмяАктивнойПапки,Разделитель); + Если МассивСтрокИмениПапки.Количество() = 0 Тогда + Продолжить; + КонецЕсли; + ИмяПапкиБезРазделителя = МассивСтрокИмениПапки[МассивСтрокИмениПапки.Количество()-1]; + Если ПустаяСтрока(ИмяПапкиБезРазделителя) Тогда + Продолжить; + КонецЕсли; + Если Лев(ИмяПапкиБезРазделителя,1) = "[" И Прав(ИмяПапкиБезРазделителя,1) = "]" Тогда + Продолжить; + КонецЕсли; + + Если МассивИгнорируемыхИмен.Найти(НРег(ИмяПапкиБезРазделителя)) <> Неопределено Тогда + Продолжить; + КонецЕсли; + + Иначе + + Если Лев(ИмяАктивнойПапки,1) = "[" И Прав(ИмяАктивнойПапки,1) = "]" Тогда + Продолжить; + КонецЕсли; + + Если МассивИгнорируемыхИмен.Найти(НРег(ИмяАктивнойПапки)) <> Неопределено Тогда + Продолжить; + КонецЕсли; + + КонецЕсли; + + МассивИменАктивныхПапок.Добавить(ИмяАктивнойПапки); + + КонецЦикла; + + Возврат МассивИменАктивныхПапок; + +КонецФункции + +Функция МассивИменПапокДляКоторыхНеВыполняетсяЗагрузкаПисем() + + МассивИмен = Новый Массив; + МассивИмен.Добавить("спам"); + МассивИмен.Добавить("удаленные"); + МассивИмен.Добавить("черновики"); + МассивИмен.Добавить("корзина"); + МассивИмен.Добавить("spam"); + МассивИмен.Добавить("trash"); + МассивИмен.Добавить("drafts"); + МассивИмен.Добавить("draftBox"); + МассивИмен.Добавить("deleted"); + МассивИмен.Добавить("junk"); + МассивИмен.Добавить("bulk mail"); + Возврат МассивИмен; + +КонецФункции + +Процедура ОпределитьЗагруженныеРанееПодчиненныеПисьма(УчетнаяЗапись, МассивЗагруженныхПисем); + + Если МассивЗагруженныхПисем.Количество() = 0 Тогда + Возврат; + КонецЕсли; + + МассивДобавляемыхКОбработкеПисем = Новый Массив; + Запрос = Новый Запрос; - Запрос.Текст = "ВЫБРАТЬ - | НастройкиУчетныхЗаписейЭлектроннойПочты.ОтветственныйЗаОбработкуПисем + Запрос.Текст = " + |ВЫБРАТЬ + | ЭлектронноеПисьмоИсходящее.Ссылка, + | ЭлектронноеПисьмоИсходящее.ИдентификаторСообщения + |ПОМЕСТИТЬ ПолученныеПисьмаИдентификаторы |ИЗ - | РегистрСведений.НастройкиУчетныхЗаписейЭлектроннойПочты КАК НастройкиУчетныхЗаписейЭлектроннойПочты + | Документ.ЭлектронноеПисьмоИсходящее КАК ЭлектронноеПисьмоИсходящее |ГДЕ - | НастройкиУчетныхЗаписейЭлектроннойПочты.УчетнаяЗаписьЭлектроннойПочты = &УчетнаяЗаписьЭлектроннойПочты"; + | ЭлектронноеПисьмоИсходящее.Ссылка В(&МассивПисем) + | + |ОБЪЕДИНИТЬ ВСЕ + | + |ВЫБРАТЬ + | ЭлектронноеПисьмоВходящее.Ссылка, + | ЭлектронноеПисьмоВходящее.ИдентификаторСообщения + |ИЗ + | Документ.ЭлектронноеПисьмоВходящее КАК ЭлектронноеПисьмоВходящее + |ГДЕ + | ЭлектронноеПисьмоВходящее.Ссылка В(&МассивПисем) + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | ЭлектронноеПисьмоИсходящее.Ссылка КАК Письмо, + | ЭлектронноеПисьмоИсходящее.ВзаимодействиеОснование КАК ТекущееОснование, + | ПолученныеПисьмаИдентификаторы.Ссылка КАК СсылкаНаОснование, + | ЕСТЬNULL(ПредметыПапкиВзаимодействийОснования.Предмет, НЕОПРЕДЕЛЕНО) КАК ПредметПисьмаОснования, + | ЕСТЬNULL(ПредметыПапкиВзаимодействийПодчиненные.Предмет, НЕОПРЕДЕЛЕНО) КАК ПредметПисьмаПодчиненное + |ИЗ + | ПолученныеПисьмаИдентификаторы КАК ПолученныеПисьмаИдентификаторы + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЭлектронноеПисьмоИсходящее КАК ЭлектронноеПисьмоИсходящее + | ПО ПолученныеПисьмаИдентификаторы.ИдентификаторСообщения = ЭлектронноеПисьмоИсходящее.ИдентификаторОснования + | И (ЭлектронноеПисьмоИсходящее.ВзаимодействиеОснование <> ПолученныеПисьмаИдентификаторы.Ссылка) + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПредметыПапкиВзаимодействий КАК ПредметыПапкиВзаимодействийПодчиненные + | ПО (ЭлектронноеПисьмоИсходящее.Ссылка = ПредметыПапкиВзаимодействийПодчиненные.Взаимодействие) + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПредметыПапкиВзаимодействий КАК ПредметыПапкиВзаимодействийОснования + | ПО ПолученныеПисьмаИдентификаторы.Ссылка = ПредметыПапкиВзаимодействийОснования.Взаимодействие + |ГДЕ + | ЭлектронноеПисьмоИсходящее.УчетнаяЗапись = &УчетнаяЗапись + | + |ОБЪЕДИНИТЬ ВСЕ + | + |ВЫБРАТЬ + | ЭлектронноеПисьмоВходящее.Ссылка, + | ЭлектронноеПисьмоВходящее.ВзаимодействиеОснование, + | ПолученныеПисьмаИдентификаторы.Ссылка, + | ЕСТЬNULL(ПредметыПапкиВзаимодействийОснования.Предмет, НЕОПРЕДЕЛЕНО), + | ЕСТЬNULL(ПредметыПапкиВзаимодействийПодчиненные.Предмет, НЕОПРЕДЕЛЕНО) + |ИЗ + | ПолученныеПисьмаИдентификаторы КАК ПолученныеПисьмаИдентификаторы + | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ЭлектронноеПисьмоВходящее КАК ЭлектронноеПисьмоВходящее + | ПО ПолученныеПисьмаИдентификаторы.ИдентификаторСообщения = ЭлектронноеПисьмоВходящее.ИдентификаторОснования + | И (ЭлектронноеПисьмоВходящее.ВзаимодействиеОснование <> ПолученныеПисьмаИдентификаторы.Ссылка) + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПредметыПапкиВзаимодействий КАК ПредметыПапкиВзаимодействийПодчиненные + | ПО (ЭлектронноеПисьмоВходящее.Ссылка = ПредметыПапкиВзаимодействийПодчиненные.Взаимодействие) + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПредметыПапкиВзаимодействий КАК ПредметыПапкиВзаимодействийОснования + | ПО ПолученныеПисьмаИдентификаторы.Ссылка = ПредметыПапкиВзаимодействийОснования.Взаимодействие + |ГДЕ + | ЭлектронноеПисьмоВходящее.УчетнаяЗапись = &УчетнаяЗапись"; - Запрос.УстановитьПараметр("УчетнаяЗаписьЭлектроннойПочты", УчетнаяЗапись); + Запрос.УстановитьПараметр("УчетнаяЗапись", УчетнаяЗапись); + Запрос.УстановитьПараметр("МассивПисем", МассивЗагруженныхПисем); Результат = Запрос.Выполнить(); Если Результат.Пустой() Тогда - Возврат Справочники.Пользователи.ПустаяСсылка(); + Возврат; КонецЕсли; + Выборка = Результат.Выбрать(); - Выборка.Следующий(); - Возврат Выборка.ОтветственныйЗаОбработкуПисем; + Пока Выборка.Следующий() Цикл + + ПисьмоОбъект = Выборка.Письмо.ПолучитьОбъект(); + ПисьмоОбъект.ВзаимодействиеОснование = Выборка.СсылкаНаОснование; + ПисьмоОбъект.Записать(); + + Если Выборка.ПредметПисьмаОснования <> Выборка.ПредметПисьмаПодчиненное Тогда + + Если Выборка.ПредметПисьмаПодчиненное = Выборка.Письмо Тогда + + Взаимодействия.УстановитьПредмет(Выборка.Письмо, Выборка.ПредметПисьмаОснования, Ложь); + + ИначеЕсли НЕ ВзаимодействияКлиентСервер.ЯвляетсяПредметом(Выборка.ПредметПисьмаПодчиненное) Тогда + + Если ВзаимодействияКлиентСервер.ЯвляетсяПредметом(Выборка.ПредметПисьмаОснования) Тогда + + Взаимодействия.УстановитьПредмет(Выборка.Письмо, Выборка.ПредметПисьмаОснования, Ложь); + МассивДобавляемыхКОбработкеПисем.Добавить(Выборка.Письмо); + + Иначе + + Взаимодействия.УстановитьПредмет(Выборка.СсылкаНаОснование, Выборка.ПредметПисьмаПодчиненное, Ложь); + + КонецЕсли; + + Иначе + + Если ВзаимодействияКлиентСервер.ЯвляетсяПредметом(Выборка.ПредметПисьмаОснования) Тогда + + Взаимодействия.УстановитьПредмет(Выборка.Письмо, Выборка.ПредметПисьмаОснования, Ложь); + МассивДобавляемыхКОбработкеПисем.Добавить(Выборка.Письмо); + + Иначе + + Взаимодействия.УстановитьПредмет(Выборка.СсылкаНаОснование, Выборка.ПредметПисьмаПодчиненное, Ложь); + + КонецЕсли; + + КонецЕсли; + + КонецЕсли; -КонецФункции + КонецЦикла; + + ОбщегоНазначенияКлиентСервер.ДополнитьМассив(МассивЗагруженныхПисем, МассивДобавляемыхКОбработкеПисем, Истина); + +КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// // Работа с вложения электронных писем. @@ -1450,6 +2164,14 @@ Адрес = ПоместитьВоВременноеХранилище(Вложение.Данные, ""); + Если Не ПустаяСтрока(Вложение.Идентификатор) + И (СтрНайти(Объект.ТекстHTML, Вложение.Имя) > 0 + Или СтрНайти(Объект.ТекстHTML, Вложение.Идентификатор) = 0) Тогда + + Вложение.Идентификатор = ""; + + КонецЕсли; + ВложениеПисьмаСсылка = ЗаписатьВложениеЭлектронногоПисьмаИзВременногоХранилища( ПисьмоСсылка, Адрес, Вложение.ИмяФайла, Размер,КоличествоПустыхИменВоВложениях); @@ -1508,7 +2230,7 @@ УстановитьПривилегированныйРежим(Истина); - ДанныеПрисоединенныхФайловПисьма = ВзаимодействияПереопределяемый.ПолучитьДанныеОбъектаМетаданныхПрисоединенныхФайловПисьма(Письмо); + ДанныеПрисоединенныхФайловПисьма = ВзаимодействияПереопределяемый.ДанныеОбъектаМетаданныхПрисоединенныхФайловПисьма(Письмо); Если ДанныеПрисоединенныхФайловПисьма = Неопределено Тогда ИмяОбъектаМетаданных = ПолучитьИмяОбъектаМетаданныхПрисоединенныхФайловПисьма(Письмо); ВладелецФайлов = Письмо; @@ -1535,7 +2257,7 @@ | Файлы.ИндексКартинки, | Файлы.Размер, | Файлы.ИДФайлаЭлектронногоПисьма, - | Файлы.ПодписанЭП, + | &ПодписанЭП КАК ПодписанЭП, | ВЫБОР | КОГДА Файлы.Расширение = &ПустаяСтрока | ТОГДА Файлы.Наименование @@ -1547,6 +2269,14 @@ | Файлы.ВладелецФайла = &Письмо | И НЕ Файлы.ПометкаУдаления"; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЭлектроннаяПодпись") Тогда + СтрокаПодписанЭП = "Файлы.ПодписанЭП"; + Иначе + СтрокаПодписанЭП = "ЛОЖЬ"; + КонецЕсли; + + Запрос.Текст = СтрЗаменить(Запрос.Текст, "&ПодписанЭП", СтрокаПодписанЭП); + Запрос.УстановитьПараметр("Письмо", ВладелецФайлов); Запрос.УстановитьПараметр("ПустаяСтрока",""); @@ -1588,7 +2318,7 @@ ИмяБезРасширения, Лев(ИмяБезРасширения, СтрДлина(ИмяБезРасширения) - СтрДлина(РасширениеБезТочки) - 1)); КонецЕсли; - + ПараметрыФайла = Новый Структура; ПараметрыФайла.Вставить("ВладелецФайлов", Письмо); ПараметрыФайла.Вставить("Автор", Неопределено); diff --git a/SSL/src/CommonModules/УправлениеЭлектроннойПочтойКлиент/Module.bsl b/SSL/src/CommonModules/УправлениеЭлектроннойПочтойКлиент/Module.bsl index ea4b46065..be5642eeb 100644 --- a/SSL/src/CommonModules/УправлениеЭлектроннойПочтойКлиент/Module.bsl +++ b/SSL/src/CommonModules/УправлениеЭлектроннойПочтойКлиент/Module.bsl @@ -13,13 +13,34 @@ // СправочникСсылка.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы - ссылка на файл, который необходимо // открыть. // -Процедура ОткрытьВложение(Ссылка, УникальныйИдентификаторФормы) Экспорт +Процедура ОткрытьВложение(Ссылка, Форма) Экспорт - ПрисоединенныеФайлыКлиент.ОткрытьФайл( - ПрисоединенныеФайлыКлиент.ПолучитьДанныеФайла(Ссылка, УникальныйИдентификаторФормы)); + ДанныеФайла = ПрисоединенныеФайлыКлиент.ПолучитьДанныеФайла(Ссылка, Форма.УникальныйИдентификатор); + + Если Форма.ЗапрещенныеРасширения.НайтиПоЗначению(ДанныеФайла.Расширение) <> Неопределено Тогда + + ДополнительныеПараметры = Новый Структура("ДанныеФайла", ДанныеФайла); + Оповещение = Новый ОписаниеОповещения("ОткрытьФайлПослеПодтверждения", ЭтотОбъект, ДополнительныеПараметры); + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("Ключ", "ПередОткрытиемФайла"); + ПараметрыФормы.Вставить("ИмяФайла", ДанныеФайла.ИмяФайла); + ОткрытьФорму("ОбщаяФорма.ПредупреждениеБезопасности", ПараметрыФормы, , , , , Оповещение); + Возврат; + + КонецЕсли; + + ПрисоединенныеФайлыКлиент.ОткрытьФайл(ДанныеФайла); КонецПроцедуры +Процедура ОткрытьФайлПослеПодтверждения(Результат, ДополнительныеПараметры) Экспорт + + Если Результат <> Неопределено И Результат = "Продолжить" Тогда + ПрисоединенныеФайлыКлиент.ОткрытьФайл(ДополнительныеПараметры.ДанныеФайла); + КонецЕсли; + +КонецПроцедуры + // Возвращает массив, содержащий структуры с информацией о контактах взаимодействия // или участниках предмета взаимодействия. // Параметры: @@ -54,7 +75,7 @@ ВзаимодействияВызовСервера.ОтправитьЗагрузитьПочтуПользователя(ПолученоПисем, ДоступноУчетныхЗаписей, ЕстьОшибки); Состояние(); - ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Получено писем: %1'"), ПолученоПисем); + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Загружено писем: %1'"), ПолученоПисем); Если ДоступноУчетныхЗаписей > 1 Тогда ТекстСообщения = ТекстСообщения + " " + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '(учетных записей: %1)'"), ДоступноУчетныхЗаписей); КонецЕсли; diff --git a/SSL/src/CommonModules/ФайловыеФункции/Module.bsl b/SSL/src/CommonModules/ФайловыеФункции/Module.bsl index 9ef516dcf..3eba49da4 100644 --- a/SSL/src/CommonModules/ФайловыеФункции/Module.bsl +++ b/SSL/src/CommonModules/ФайловыеФункции/Module.bsl @@ -5,6 +5,72 @@ #Область ПрограммныйИнтерфейс +// Возвращает структуру, содержащую персональные настройки работы с файлами. +// +// Возвращаемое значение: +// Структура - со свойствами: +// * ПоказыватьЗанятыеФайлыПриЗавершенииРаботы - Булево - Существует, только если внедрена подсистема Работа с файлами. +// * СпрашиватьРежимРедактированияПриОткрытииФайла - Булево - Существует, только если внедрена подсистема Работа с файлами. +// * ПоказыватьКолонкуРазмер - Булево - Существует, только если внедрена подсистема Работа с файлами. +// * ДействиеПоДвойномуЩелчкуМыши - Строка - Существует, только если внедрена подсистема Работа с файлами. +// * СпособСравненияВерсийФайлов - Строка - Существует, только если внедрена подсистема Работа с файлами. +// * ГрафическиеСхемыРасширение - Строка - +// * ГрафическиеСхемыСпособОткрытия - ПеречислениеСсылка.СпособыОткрытияФайлаНаПросмотр - +// * ТекстовыеФайлыРасширение - Строка - +// * ТекстовыеФайлыСпособОткрытия - ПеречислениеСсылка.СпособыОткрытияФайлаНаПросмотр - +// * МаксимальныйРазмерЛокальногоКэшаФайлов - Число - +// * ПодтверждатьПриУдаленииИзЛокальногоКэшаФайлов - Булево - +// * ПоказыватьИнформациюЧтоФайлНеБылИзменен - Булево - +// * ПоказыватьПодсказкиПриРедактированииФайлов - Булево - +// * ПутьКЛокальномуКэшуФайлов - Строка - +// * ЭтоПолноправныйПользователь - Булево - +// * УдалятьФайлИзЛокальногоКэшаФайловПриЗавершенииРедактирования - Булево - . +// +Функция НастройкиРаботыСФайлами() Экспорт + + Возврат ФайловыеФункцииСлужебныйКлиентСервер.ПерсональныеНастройкиРаботыСФайлами(); + +КонецФункции + +// Сохраняет настройки работы с файлами. +// +// Параметры: +// НастройкиРаботыСФайлами - Структура настроек работы с файлами с их значениями. +// В качестве ключа настройки возможно указывать строки с именем настроек: +// ПоказыватьИнформациюЧтоФайлНеБылИзменен, +// ПоказыватьЗанятыеФайлыПриЗавершенииРаботы, +// ПоказыватьКолонкуРазмер, +// ТекстовыеФайлыРасширение, +// ТекстовыеФайлыСпособОткрытия, +// ГрафическиеСхемыРасширение, +// ПоказыватьПодсказкиПриРедактированииФайлов, +// СпрашиватьРежимРедактированияПриОткрытииФайла, +// СпособСравненияВерсийФайлов, +// ДействиеПоДвойномуЩелчкуМыши, +// ГрафическиеСхемыСпособОткрытия. +// +Процедура СохранитьНастройкиРаботыСФайлами(НастройкиРаботыСФайлами) Экспорт + + КлючиОбъектовНастроекРаботыСФайлами = КлючиОбъектовНастроекРаботыСФайлами(); + + Для Каждого Настройка Из НастройкиРаботыСФайлами Цикл + + КлючОбъектаНастройки = КлючиОбъектовНастроекРаботыСФайлами[Настройка.Ключ]; + Если КлючОбъектаНастройки <> Неопределено Тогда + Если СтрНачинаетсяС(КлючОбъектаНастройки, "НастройкиОткрытияФайлов\") Тогда + ТипФайловНастройки = СтрЗаменить(КлючОбъектаНастройки, "НастройкиОткрытияФайлов\", ""); + ОбщегоНазначения.ХранилищеОбщихНастроекСохранить(КлючОбъектаНастройки, + СтрЗаменить(Настройка.Ключ, ТипФайловНастройки, ""), Настройка.Значение); + Иначе + ОбщегоНазначения.ХранилищеОбщихНастроекСохранить(КлючОбъектаНастройки, Настройка.Ключ, Настройка.Значение); + КонецЕсли; + + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры + // Возвращает максимальный размер файла. // // Возвращаемое значение: @@ -118,3 +184,28 @@ КонецПроцедуры #КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +// Возвращает ключи объектов настроек работы с файлами. +// +Функция КлючиОбъектовНастроекРаботыСФайлами() + + КлючиОбъектовНастроекРаботыСФайлами = Новый Соответствие; + + ФайловыеФункцииСлужебный.ПриСохраненииНастроекРаботыСФайлами( + КлючиОбъектовНастроекРаботыСФайлами); + + КлючиОбъектовНастроекРаботыСФайлами.Вставить("ТекстовыеФайлыРасширение" , "НастройкиОткрытияФайлов\ТекстовыеФайлы"); + КлючиОбъектовНастроекРаботыСФайлами.Вставить("ТекстовыеФайлыСпособОткрытия" , "НастройкиОткрытияФайлов\ТекстовыеФайлы"); + КлючиОбъектовНастроекРаботыСФайлами.Вставить("ГрафическиеСхемыРасширение" , "НастройкиОткрытияФайлов\ГрафическиеСхемы"); + КлючиОбъектовНастроекРаботыСФайлами.Вставить("ГрафическиеСхемыСпособОткрытия" ,"НастройкиОткрытияФайлов\ГрафическиеСхемы"); + КлючиОбъектовНастроекРаботыСФайлами.Вставить("ПоказыватьПодсказкиПриРедактированииФайлов" ,"НастройкиПрограммы"); + КлючиОбъектовНастроекРаботыСФайлами.Вставить("ПоказыватьИнформациюЧтоФайлНеБылИзменен" , "НастройкиПрограммы"); + + Возврат КлючиОбъектовНастроекРаботыСФайлами; + +КонецФункции + +#КонецОбласти + diff --git a/SSL/src/CommonModules/ФайловыеФункцииКлиент/Module.bsl b/SSL/src/CommonModules/ФайловыеФункцииКлиент/Module.bsl index b5c24dd77..855294d7e 100644 --- a/SSL/src/CommonModules/ФайловыеФункцииКлиент/Module.bsl +++ b/SSL/src/CommonModules/ФайловыеФункцииКлиент/Module.bsl @@ -11,8 +11,8 @@ // Открывает форму настройки сканирования. Процедура ОткрытьФормуНастройкиСканирования() Экспорт - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда - ТекстСообщения = НСтр("ru = 'Сканирование не поддерживается в клиенте под управлением ОС Linux.'"); + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда + ТекстСообщения = НСтр("ru = 'Сканирование поддерживается только в клиенте под управлением ОС Windows.'"); ПоказатьПредупреждение(, ТекстСообщения); Возврат; КонецЕсли; diff --git a/SSL/src/CommonModules/ФайловыеФункцииСлужебный/Module.bsl b/SSL/src/CommonModules/ФайловыеФункцииСлужебный/Module.bsl index a1597b171..79a85a602 100644 --- a/SSL/src/CommonModules/ФайловыеФункцииСлужебный/Module.bsl +++ b/SSL/src/CommonModules/ФайловыеФункцииСлужебный/Module.bsl @@ -122,6 +122,10 @@ СерверныеОбработчики[ "СтандартныеПодсистемы.БазоваяФункциональность\ПриЗаполненииРазрешенийНаДоступКВнешнимРесурсам"].Добавить( "ФайловыеФункцииСлужебный"); + + СерверныеОбработчики[ + "СтандартныеПодсистемы.БазоваяФункциональность\ПриДобавленииПараметровРаботыКлиентаПриЗапуске"].Добавить( + "ФайловыеФункцииСлужебный"); Если ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса.ВыгрузкаЗагрузкаДанных") Тогда СерверныеОбработчики[ @@ -277,10 +281,11 @@ // Возвращает полный путь тома - в зависимости от ОС. Функция ПолныйПутьТома(СсылкаНаТом) Экспорт - ТипПлатформыСервера = ОбщегоНазначенияПовтИсп.ТипПлатформыСервера(); - + СистемнаяИнфо = Новый СистемнаяИнформация; + ТипПлатформыСервера = СистемнаяИнфо.ТипПлатформы; + Если ТипПлатформыСервера = ТипПлатформы.Windows_x86 - ИЛИ ТипПлатформыСервера = ТипПлатформы.Windows_x86_64 Тогда + Или ТипПлатформыСервера = ТипПлатформы.Windows_x86_64 Тогда Возврат СсылкаНаТом.ПолныйПутьWindows; Иначе @@ -512,7 +517,7 @@ Шифрование = Ложь; Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЭлектроннаяПодпись") - И Пользователи.РолиДоступны("ИспользованиеЭлектроннойПодписиИШифрования") + И Пользователи.РолиДоступны("ДобавлениеИзменениеЭлектронныхПодписейИШифрование") И Не ОбщегоНазначенияКлиентСервер.ЭтоВебКлиентПодMacOS() Тогда МодульЭлектроннаяПодпись = ОбщегоНазначения.ОбщийМодуль("ЭлектроннаяПодпись"); @@ -654,14 +659,11 @@ // Возвращает Истина, если сервер работает под Windows. Функция ЭтоПлатформаWindows() Экспорт - ТипПлатформыСервера = ОбщегоНазначенияПовтИсп.ТипПлатформыСервера(); + СистемнаяИнфо = Новый СистемнаяИнформация; + ТипПлатформыСервера = СистемнаяИнфо.ТипПлатформы; - Если ТипПлатформыСервера = ТипПлатформы.Windows_x86 - ИЛИ ТипПлатформыСервера = ТипПлатформы.Windows_x86_64 Тогда - Возврат Истина; - Иначе - Возврат Ложь; - КонецЕсли; + Возврат (ТипПлатформыСервера = ТипПлатформы.Windows_x86) + Или (ТипПлатформыСервера = ТипПлатформы.Windows_x86_64); КонецФункции @@ -767,7 +769,7 @@ Функция СписокРасширенийДляПредпросмотра() Экспорт - // См. также перечисление ФорматКартинки + // См. также перечисление ФорматКартинки. РасширенияДляПредпросмотра = Новый СписокЗначений; РасширенияДляПредпросмотра.Добавить("bmp"); РасширенияДляПредпросмотра.Добавить("emf"); @@ -901,7 +903,7 @@ КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// -// Синхронизация файлов с облачным сервисом +// Синхронизация файлов с облачным сервисом. Процедура ДобавитьДоступныеПоляОтбора(ТекстЗапроса, ТипОбъекта) Экспорт ВсеСправочники = Справочники.ТипВсеСсылки(); @@ -943,24 +945,24 @@ Обработчик.Процедура = "ФайловыеФункцииСлужебный.ПеренестиКонстантыРасширений"; Обработчик = Обработчики.Добавить(); - Обработчик.Версия = "2.3.2.70"; + Обработчик.Версия = "2.3.4.5"; Обработчик.ОбщиеДанные = Истина; Обработчик.НачальноеЗаполнение = Истина; Обработчик.Процедура = "ФайловыеФункцииСлужебный.ОбновитьСписокЗапрещенныхРасширений"; Обработчик.РежимВыполнения = "Оперативно"; Обработчик = Обработчики.Добавить(); - Обработчик.Версия = "2.3.2.70"; + Обработчик.Версия = "2.3.4.5"; Обработчик.НачальноеЗаполнение = Истина; Обработчик.Процедура = "ФайловыеФункцииСлужебный.ОбновитьСписокЗапрещенныхРасширенийВОбластиДанных"; Обработчик.РежимВыполнения = "Оперативно"; Обработчик = Обработчики.Добавить(); - Обработчик.Версия = "2.3.2.105"; + Обработчик.Версия = "2.3.4.52"; Обработчик.ОбщиеДанные = Истина; Обработчик.Процедура = "ФайловыеФункцииСлужебный.ОбновитьПутьТомаLinux"; Обработчик.РежимВыполнения = "Оперативно"; - + КонецПроцедуры // Заполняет структуру параметров, необходимых для работы клиентского кода @@ -985,6 +987,21 @@ КонецПроцедуры +// Добавляет параметры работы клиентской логики при запуске системы для подсистемы обмена данными в модели сервиса. +// +Процедура ПриДобавленииПараметровРаботыКлиентаПриЗапуске(Параметры) Экспорт + + Если Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда + Возврат; + КонецЕсли; + + НастройкиРаботыСФайлами = ФайловыеФункцииСлужебныйПовтИсп.НастройкиРаботыСФайлами(); + + Параметры.Вставить("ПерсональныеНастройкиРаботыСФайлами", Новый ФиксированнаяСтруктура( + НастройкиРаботыСФайлами.ПерсональныеНастройки)); + +КонецПроцедуры + // Заполняет перечень запросов внешних разрешений, которые обязательно должны быть предоставлены // при создании информационной базы или обновлении программы. // @@ -1072,7 +1089,8 @@ ЕстьФайлыВТомах = ЕстьФайлыВТомах(); КонецЕсли; - ТипПлатформыСервера = ОбщегоНазначенияПовтИсп.ТипПлатформыСервера(); + СистемнаяИнфо = Новый СистемнаяИнформация; + ТипПлатформыСервера = СистемнаяИнфо.ТипПлатформы; Если ТипПлатформыСервера = ТипПлатформы.Windows_x86 ИЛИ ТипПлатформыСервера = ТипПлатформы.Windows_x86_64 Тогда @@ -1123,11 +1141,11 @@ Файл = Новый Файл(ПутьКАрхивуСФайламиТомов); Если Файл.Существует() И ФайлБазы.Существует() Тогда - Результат.ТекстВопроса = СтрШаблон(НСтр("ru = 'Файлы ""%1"" и ""%2"" уже существуют. + Результат.ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Файлы ""%1"" и ""%2"" уже существуют. |Заменить существующие файлы?'"), ПутьКАрхивуСФайламиТомов, ПолноеИмяФайловойБазы); Результат.ТребуетсяПодтверждение = Истина; ИначеЕсли Файл.Существует() Тогда - Результат.ТекстВопроса = СтрШаблон(НСтр("ru = 'Файл ""%1"" уже существует. + Результат.ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Файл ""%1"" уже существует. |Заменить существующий файл?'"), ПутьКАрхивуСФайламиТомов); Результат.ТребуетсяПодтверждение = Истина; КонецЕсли; @@ -1136,7 +1154,7 @@ Если Результат.ДанныеПодготовлены Тогда Если ФайлБазы.Существует() И НЕ Результат.ТребуетсяПодтверждение Тогда - Результат.ТекстВопроса = СтрШаблон(НСтр("ru = 'Файл ""%1"" уже существует. + Результат.ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Файл ""%1"" уже существует. |Заменить существующий файл?'"), ПолноеИмяФайловойБазы); Результат.ТребуетсяПодтверждение = Истина; КонецЕсли; @@ -1165,34 +1183,22 @@ КонецФункции -// Создать файловый начальный образ на сервере. . Запускается регламентным заданием. +// Создать файловый начальный образ на сервере. // -Процедура СоздатьФайловыйНачальныйОбразНаСервере(СтруктураПараметров, АдресХранилища) Экспорт - - Узел = СтруктураПараметров.Узел; - Язык = СтруктураПараметров.Язык; - ИмяКаталога = СтруктураПараметров.ИмяКаталога; - ИмяКаталогаФайлов = СтруктураПараметров.ИмяКаталогаФайлов; - ЕстьФайлыВТомах = СтруктураПараметров.ЕстьФайлыВТомах; - ПутьКАрхивуСФайламиТомов = СтруктураПараметров.ПутьКАрхивуСФайламиТомов; - ПолноеИмяФайловойБазы = СтруктураПараметров.ПолноеИмяФайловойБазы; - ПоместитьВоВременноеХранилище(СтруктураПараметров, АдресХранилища); - - ZIP = Неопределено; - Запись = Неопределено; +Процедура СоздатьФайловыйНачальныйОбразНаСервере(Параметры, АдресХранилища) Экспорт Попытка - СтрокаСоединения = "File=""" + ИмяКаталога + """;" - + "Locale=""" + Язык + """;"; - ПланыОбмена.СоздатьНачальныйОбраз(Узел, СтрокаСоединения); // Собственно создание начального образа. + СтрокаСоединения = "File=""" + Параметры.ИмяКаталога + """;" + + "Locale=""" + Параметры.Язык + """;"; + ПланыОбмена.СоздатьНачальныйОбраз(Параметры.Узел, СтрокаСоединения); // Собственно создание начального образа. - Если ЕстьФайлыВТомах Тогда + Если Параметры.ЕстьФайлыВТомах Тогда ZIP = Новый ЗаписьZipФайла; - ZIP.Открыть(ПутьКАрхивуСФайламиТомов); + ZIP.Открыть(Параметры.ПутьКАрхивуСФайламиТомов); ВременныеФайлы = Новый Массив; - ВременныеФайлы = НайтиФайлы(ИмяКаталогаФайлов, "*.*"); + ВременныеФайлы = НайтиФайлы(Параметры.ИмяКаталогаФайлов, "*.*"); Для Каждого ВременныйФайл Из ВременныеФайлы Цикл Если ВременныйФайл.ЭтоФайл() Тогда @@ -1203,21 +1209,21 @@ ZIP.Записать(); - УдалитьФайлы(ИмяКаталогаФайлов); // Удаляем вместе с файлами внутри. + УдалитьФайлы(Параметры.ИмяКаталогаФайлов); // Удаляем вместе с файлами внутри. КонецЕсли; Исключение - УдалитьФайлы(ИмяКаталога); + УдалитьФайлы(Параметры.ИмяКаталога); ВызватьИсключение; КонецПопытки; - ПутьВременногоФайлаБазы = ИмяКаталога + "\1Cv8.1CD"; - ПереместитьФайл(ПутьВременногоФайлаБазы, ПолноеИмяФайловойБазы); + ПутьВременногоФайлаБазы = Параметры.ИмяКаталога + "\1Cv8.1CD"; + ПереместитьФайл(ПутьВременногоФайлаБазы, Параметры.ПолноеИмяФайловойБазы); // очистка - УдалитьФайлы(ИмяКаталога); + УдалитьФайлы(Параметры.ИмяКаталога); КонецПроцедуры @@ -1241,7 +1247,8 @@ ЕстьФайлыВТомах = ЕстьФайлыВТомах(); КонецЕсли; - ТипПлатформыСервера = ОбщегоНазначенияПовтИсп.ТипПлатформыСервера(); + СистемнаяИнфо = Новый СистемнаяИнформация; + ТипПлатформыСервера = СистемнаяИнфо.ТипПлатформы; Если ТипПлатформыСервера = ТипПлатформы.Windows_x86 ИЛИ ТипПлатформыСервера = ТипПлатформы.Windows_x86_64 Тогда @@ -1276,7 +1283,7 @@ Если ЕстьФайлыВТомах Тогда Файл = Новый Файл(ПутьКАрхивуСФайламиТомов); Если Файл.Существует() Тогда - Результат.ТекстВопроса = СтрШаблон(НСтр("ru = 'Файл ""%1"" уже существует. + Результат.ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Файл ""%1"" уже существует. |Заменить существующий файл?'"), ПутьКАрхивуСФайламиТомов); Результат.ТребуетсяПодтверждение = Истина; КонецЕсли; @@ -1305,31 +1312,21 @@ КонецФункции -// Создать серверный начальный образ на сервере. Запускается регламентным заданием. +// Создать серверный начальный образ на сервере. // -Процедура СоздатьСерверныйНачальныйОбразНаСервере(СтруктураПараметров, АдресХранилища) Экспорт - Узел = СтруктураПараметров.Узел; - СтрокаСоединения = СтруктураПараметров.СтрокаСоединения; - ЕстьФайлыВТомах = СтруктураПараметров.ЕстьФайлыВТомах; - ПутьФайла = СтруктураПараметров.ПутьФайла; - ИмяКаталога = СтруктураПараметров.ИмяКаталога; - ИмяКаталогаФайлов = СтруктураПараметров.ИмяКаталогаФайлов; - ПоместитьВоВременноеХранилище(СтруктураПараметров, АдресХранилища); - - ZIP = Неопределено; - Запись = Неопределено; +Процедура СоздатьСерверныйНачальныйОбразНаСервере(Параметры, АдресРезультата) Экспорт Попытка - ПланыОбмена.СоздатьНачальныйОбраз(Узел, СтрокаСоединения); + ПланыОбмена.СоздатьНачальныйОбраз(Параметры.Узел, Параметры.СтрокаСоединения); - Если ЕстьФайлыВТомах Тогда + Если Параметры.ЕстьФайлыВТомах Тогда ZIP = Новый ЗаписьZipФайла; - ПутьZIP = ПутьФайла; + ПутьZIP = Параметры.ПутьФайла; ZIP.Открыть(ПутьZIP); ВременныеФайлы = Новый Массив; - ВременныеФайлы = НайтиФайлы(ИмяКаталогаФайлов, "*.*"); + ВременныеФайлы = НайтиФайлы(Параметры.ИмяКаталогаФайлов, "*.*"); Для Каждого ВременныйФайл Из ВременныеФайлы Цикл Если ВременныйФайл.ЭтоФайл() Тогда @@ -1339,18 +1336,18 @@ КонецЦикла; ZIP.Записать(); - УдалитьФайлы(ИмяКаталогаФайлов); // Удаляем вместе с файлами внутри. + УдалитьФайлы(Параметры.ИмяКаталогаФайлов); // Удаляем вместе с файлами внутри. КонецЕсли; Исключение - УдалитьФайлы(ИмяКаталога); + УдалитьФайлы(Параметры.ИмяКаталога); ВызватьИсключение; КонецПопытки; // очистка - УдалитьФайлы(ИмяКаталога); + УдалитьФайлы(Параметры.ИмяКаталога); КонецПроцедуры @@ -1359,8 +1356,8 @@ Функция ДобавитьФайлыВТома(ПутьКАрхивуWindows, ПутьКАрхивуLinux) Экспорт ПолноеИмяФайлаZip = ""; - ТипПлатформыСервера = ОбщегоНазначенияПовтИсп.ТипПлатформыСервера(); - + СистемнаяИнфо = Новый СистемнаяИнформация; + ТипПлатформыСервера = СистемнаяИнфо.ТипПлатформы; Если ТипПлатформыСервера = ТипПлатформы.Windows_x86 ИЛИ ТипПлатформыСервера = ТипПлатформы.Windows_x86_64 Тогда ПолноеИмяФайлаZip = ПутьКАрхивуWindows; Иначе @@ -1456,8 +1453,6 @@ УстановитьПривилегированныйРежим(Истина); - ТипПлатформыСервера = ОбщегоНазначенияПовтИсп.ТипПлатформыСервера(); - Если НЕ ЭтоПлатформаWindows() Тогда Возврат; // Извлечение текста работает только под Windows. КонецЕсли; @@ -1603,6 +1598,43 @@ КонецПроцедуры +Процедура ОбновитьПутьТомаLinux() Экспорт + + УстановитьПривилегированныйРежим(Истина); + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ТомаХраненияФайлов.Ссылка + |ИЗ + | Справочник.ТомаХраненияФайлов КАК ТомаХраненияФайлов + |ГДЕ + | ТомаХраненияФайлов.ПолныйПутьLinux ПОДОБНО ""%/\"""; + + Выборка = Запрос.Выполнить().Выбрать(); + + Пока Выборка.Следующий() Цикл + + НачатьТранзакцию(); + Попытка + Том = Выборка.Ссылка.ПолучитьОбъект(); + Том.ПолныйПутьLinux = СтрЗаменить(Том.ПолныйПутьLinux , "/\", "/"); + Том.Записать(); + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось обработать том хранения файлов: %1 по причине: + |%2'"), + Выборка.Ссылка, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение, + Выборка.Ссылка.Метаданные(), Выборка.Ссылка, ТекстСообщения); + КонецПопытки; + + КонецЦикла; + +КонецПроцедуры + Процедура ОбновитьСписокЗапрещенныхРасширений() Экспорт СписокЗапрещенныхРасширенийДляЗагрузки = СписокЗапрещенныхРасширений(); @@ -1643,43 +1675,6 @@ КонецПроцедуры -Процедура ОбновитьПутьТомаLinux() Экспорт - - УстановитьПривилегированныйРежим(Истина); - - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | ТомаХраненияФайлов.Ссылка - |ИЗ - | Справочник.ТомаХраненияФайлов КАК ТомаХраненияФайлов - |ГДЕ - | ТомаХраненияФайлов.ПолныйПутьLinux ПОДОБНО ""%/\"""; - - Выборка = Запрос.Выполнить().Выбрать(); - - Пока Выборка.Следующий() Цикл - - НачатьТранзакцию(); - Попытка - Том = Выборка.Ссылка.ПолучитьОбъект(); - Том.ПолныйПутьLinux = СтрЗаменить(Том.ПолныйПутьLinux , "/\", "/"); - Том.Записать(); - ЗафиксироватьТранзакцию(); - Исключение - ОтменитьТранзакцию(); - ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Не удалось обработать том хранения файлов: %1 по причине: - |%2'"), - Выборка.Ссылка, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение, - Выборка.Ссылка.Метаданные(), Выборка.Ссылка, ТекстСообщения); - КонецПопытки; - - КонецЦикла; - -КонецПроцедуры - //////////////////////////////////////////////////////////////////////////////// // Обработчики условных вызовов в другие подсистемы. @@ -1693,6 +1688,15 @@ КонецПроцедуры +Процедура ПриСохраненииНастроекРаботыСФайлами(КлючиОбъектовНастроекРаботыСФайлами) Экспорт + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда + МодульРаботаСФайламиСлужебный = ОбщегоНазначения.ОбщийМодуль("РаботаСФайламиСлужебный"); + МодульРаботаСФайламиСлужебный.ПриСохраненииНастроекРаботыСФайлами(КлючиОбъектовНастроекРаботыСФайлами); + КонецЕсли; + +КонецПроцедуры + // Вычисляет объем файлов тома в байтах, результат возвращается в параметр РазмерФайлов. Процедура ПриОпределенииРазмераФайловНаТоме(СсылкаТома, РазмерФайлов) Экспорт @@ -1799,7 +1803,7 @@ //////////////////////////////////////////////////////////////////////////////// // Очистка ненужных файлов -Процедура ОчиститьНенужныеФайлы() Экспорт +Процедура ОчиститьНенужныеФайлы(Параметры = Неопределено, АдресРезультата = Неопределено) Экспорт ОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(Метаданные.РегламентныеЗадания.ОчисткаНенужныхФайлов); @@ -1879,7 +1883,7 @@ Если НастройкаОчистки.Действие = Перечисления.ВариантыОчисткиФайлов.ОчиститьФайлыИВерсии Тогда ФайлДляПометки = Файл.ФайлСсылка.ПолучитьОбъект(); - // Пропускаем удаление, если файл занят для редактирования + // Пропускаем удаление, если файл занят для редактирования. Если ЗначениеЗаполнено(ФайлДляПометки.Редактирует) Тогда Продолжить; КонецЕсли; @@ -2078,31 +2082,23 @@ Функция ОбъектыИсключенияПриОчисткеФайлов() Экспорт - Массив = Новый Массив; + МассивОбъектов = Новый Массив; Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСФайлами") Тогда МодульРаботаСФайламиПереопределяемый = ОбщегоНазначения.ОбщийМодуль("РаботаСФайламиПереопределяемый"); - МассивОбъектов = МодульРаботаСФайламиПереопределяемый.ОбъектыИсключенияПриОчисткеФайлов(); МодульРаботаСФайламиПереопределяемый.ПриОпределенииОбъектовИсключенияОчисткиФайлов(МассивОбъектов); - Для Каждого ОбъектМетаданных Из МассивОбъектов Цикл - Массив.Добавить(ОбъектМетаданных); - КонецЦикла; КонецЕсли; Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПрисоединенныеФайлы") Тогда МодульПрисоединенныеПереопределяемый = ОбщегоНазначения.ОбщийМодуль("ПрисоединенныеФайлыПереопределяемый"); - МассивОбъектов = МодульПрисоединенныеПереопределяемый.ОбъектыИсключенияПриОчисткеФайлов(); МодульПрисоединенныеПереопределяемый.ПриОпределенииОбъектовИсключенияОчисткиФайлов(МассивОбъектов); - Для Каждого ОбъектМетаданных Из МассивОбъектов Цикл - Массив.Добавить(ОбъектМетаданных); - КонецЦикла; КонецЕсли; - Возврат Массив; + Возврат МассивОбъектов; КонецФункции @@ -2139,7 +2135,7 @@ КонецЕсли; КонецПроцедуры -// Выполняет метод протокола webdav +// Выполняет метод протокола webdav. Процедура ВыполнитьМетодWebdav(ИмяМетода, Href, СоответствиеЗаголовков, СтруктураОбмена, XMLЗапрос="", ТекстПротокола = Неопределено) СтруктураHref = СтруктураURIРаскодированная(Href); @@ -2172,7 +2168,7 @@ КонецПроцедуры -// Обновляет уникальный служебный реквизит файла на сервере webdav +// Обновляет уникальный служебный реквизит файла на сервере webdav. Процедура ОбновитьUID1CФайла(Href, UID1C, ПараметрыСинхронизации) ЗаголовкиHTTP = Новый Соответствие; @@ -2190,7 +2186,7 @@ КонецПроцедуры -// Считывает уникальный служебный реквизит файла на сервере webdav +// Считывает уникальный служебный реквизит файла на сервере webdav. Функция ПолучитьUID1C(Href,ПараметрыСинхронизации) ЗаголовкиHTTP = Новый Соответствие; @@ -2216,7 +2212,7 @@ КонецФункции -// Проверяет, поддерживает ли сервер webdav пользовательские свойства для файла +// Проверяет, поддерживает ли сервер webdav пользовательские свойства для файла. Функция ПроверитьВозможностьUID1C(Href, UID1C, ПараметрыСинхронизации) Попытка @@ -2234,7 +2230,7 @@ КонецФункции -// Выполняет MCKOL на сервере webdav +// Выполняет MCKOL на сервере webdav. Процедура ВызватьМетодMKCOL(Href, ПараметрыСинхронизации) ЗаголовкиHTTP = Новый Соответствие; @@ -2243,7 +2239,7 @@ КонецПроцедуры // ВызватьМетодMKCOL() -// Выполняет DELETE на сервере webdav +// Выполняет DELETE на сервере webdav. Процедура ВызватьМетодDELETE(Href, ПараметрыСинхронизации) HrefБезСлеша = ЗакончитьБезСлеша(Href); @@ -2253,7 +2249,7 @@ КонецПроцедуры -// Получает Etag файла на сервере +// Получает Etag файла на сервере. Функция ПолучитьEtag(Href,ПараметрыСинхронизации) ЗаголовкиHTTP = Новый Соответствие; @@ -2278,7 +2274,7 @@ Возврат ""; КонецФункции -// Инициализирует объект HTTPСоединение +// Инициализирует объект HTTPСоединение. Функция СоздатьHTTPСоединениеWebdav(СтруктураHref,ПараметрыСинхронизации) Если НЕ ЗначениеЗаполнено(СтруктураHref.Порт) Тогда @@ -2288,7 +2284,7 @@ ПараметрыСинхронизации.Логин, ПараметрыСинхронизации.Пароль, , - , + 20, ?(СтруктураHref.Схема="https",Новый(Тип("ЗащищенноеСоединениеOpenSSL")),Неопределено)); Иначе HTTP = Новый HTTPСоединение( @@ -2297,7 +2293,7 @@ ПараметрыСинхронизации.Логин, ПараметрыСинхронизации.Пароль, , - , + 20, ?(СтруктураHref.Схема="https",Новый(Тип("ЗащищенноеСоединениеOpenSSL")),Неопределено)); КонецЕсли; @@ -2487,7 +2483,7 @@ КонецПроцедуры -// Записывает событие в журнал регистрации +// Записывает событие в журнал регистрации. Процедура ЗаписатьВЖурналСобытийСинхронизацииФайлов(ТекстСообщения, ПараметрыСинхронизации) ЗаписьЖурналаРегистрации(НСтр("ru = 'Синхронизация файлов с облачным сервисом:'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), @@ -2498,22 +2494,22 @@ КонецПроцедуры -// Возвращает дату, преобразованную из формата RFC 1123 в тип Дата +// Возвращает дату, преобразованную из формата RFC 1123 в тип Дата. Функция ДатаRFC1123(ДатаСтрокойHTTP) ИменаМесяцев = "janfebmaraprmayjunjulaugsepoctnovdec"; - // rfc1123-date = wkday "," SP date1 SP time SP "GMT" - ПозицияПервогоПробела = СтрНайти(ДатаСтрокойHTTP, " ");//с первого пробела до второго пробела идет дата + // rfc1123-date = wkday "," SP date1 SP time SP "GMT". + ПозицияПервогоПробела = СтрНайти(ДатаСтрокойHTTP, " ");//с первого пробела до второго пробела идет дата. ПодстрокаДата = Сред(ДатаСтрокойHTTP,ПозицияПервогоПробела+1); ПодстрокаВремя = Сред(ПодстрокаДата,13); ПодстрокаДата = Лев(ПодстрокаДата,11); ПозицияПервогоПробела = СтрНайти(ПодстрокаВремя, " "); ПодстрокаВремя = Лев(ПодстрокаВремя,ПозицияПервогоПробела-1); - // date1 = 2DIGIT SP month SP 4DIGIT + // date1 = 2DIGIT SP month SP 4DIGIT. ПодстрокаДень = Лев(ПодстрокаДата,2); ПодстрокаМесяц = Формат(Цел(СтрНайти(ИменаМесяцев,НРег(Сред(ПодстрокаДата,4,3))) / 3)+1,"ЧЦ=2; ЧН=00; ЧВН="); ПодстрокаГод = Сред(ПодстрокаДата,8); - // time = 2DIGIT ":" 2DIGIT ":" 2DIGIT + // time = 2DIGIT ":" 2DIGIT ":" 2DIGIT. ПодстрокаЧас = Лев(ПодстрокаВремя,2); ПодстрокаМинута = Сред(ПодстрокаВремя,4,2); ПодстрокаСекунда = Прав(ПодстрокаВремя,2); @@ -2608,7 +2604,7 @@ СтрокаURI = Сред(СтрокаURI, Позиция + 3); КонецЕсли; - // Строка соединения и путь на сервере + // Строка соединения и путь на сервере. СтрокаСоединения = СтрокаURI; ПутьНаСервере = ""; Позиция = СтрНайти(СтрокаСоединения, "/"); @@ -2618,7 +2614,7 @@ СтрокаСоединения = Лев(СтрокаСоединения, Позиция - 1); КонецЕсли; - // Информация пользователя и имя сервера + // Информация пользователя и имя сервера. СтрокаАвторизации = ""; ИмяСервера = СтрокаСоединения; Позиция = СтрНайти(СтрокаСоединения, "@"); @@ -2659,7 +2655,7 @@ КонецФункции -// Возвращает URI, составленный из структуры +// Возвращает URI, составленный из структуры. Функция КодироватьURIПоСтруктуре(Знач СтруктураURI, ВключаяПутьНаСервере = Истина) Результат = ""; @@ -2686,12 +2682,12 @@ КонецФункции -// Возвращает строку, гарантированно начинающуюся прямым слешем +// Возвращает строку, гарантированно начинающуюся прямым слешем. Функция НачатьСлешем(Знач ИсходнаяСтрока) Возврат ?(Лев(ИсходнаяСтрока,1)="/",ИсходнаяСтрока,"/"+ИсходнаяСтрока); КонецФункции -// Возвращает строку, гарантированно заканчивающуюся без прямого слэша +// Возвращает строку, гарантированно заканчивающуюся без прямого слэша. Функция ЗакончитьБезСлеша(Знач ИсходнаяСтрока) Возврат ?(Прав(ИсходнаяСтрока,1)="/",Лев(ИсходнаяСтрока,СтрДлина(ИсходнаяСтрока)-1),ИсходнаяСтрока); КонецФункции @@ -2700,7 +2696,7 @@ // кодирования спецсимволов, а так же адреса сервера. Функция ЭтоОдинаковыеПутиURI(URI1,URI2,ЧувствительноКРегистру = Истина) - // Гарантирует идентичность вне зависимости от слэшей и кодирования + // Гарантирует идентичность вне зависимости от слэшей и кодирования. СтруктураURI1 = СтруктураURIРаскодированная(URI1); СтруктураURI2 = СтруктураURIРаскодированная(URI2); Если НЕ ЧувствительноКРегистру Тогда @@ -2712,13 +2708,13 @@ КонецФункции -// Возвращает имя файла по Href +// Возвращает имя файла по Href. Функция ИмяФайлаПоHref(Href) URI = ЗакончитьБезСлеша(Href); ДлинаURI = СтрДлина(URI); - // Находим последний слэш, после него будет имя файла + // Находим последний слэш, после него будет имя файла. Для Сч = 1 По ДлинаURI Цикл СимволURI = Сред(URI,ДлинаURI - Сч + 1, 1); @@ -2731,7 +2727,7 @@ КонецФункции -// Сохраняет данные о Href и Etag файла или папки в базе данных +// Сохраняет данные о Href и Etag файла или папки в базе данных. Процедура ЗапомнитьСерверныеДанныеСсылки( Ссылка, Href, @@ -2754,7 +2750,7 @@ КонецПроцедуры -// Удаляет данные о Href и Etag файла или папки в базе данных +// Удаляет данные о Href и Etag файла или папки в базе данных. Процедура УдалитьСерверныеДанныеСсылки(Ссылка, УчетнаяЗапись) НаборРегистра = РегистрыСведений.СтатусыСинхронизацииФайловСОблачнымСервисом.СоздатьНаборЗаписей(); @@ -2776,7 +2772,7 @@ КонецФункции -// Вычисляет выражение xpath для контекста xml +// Вычисляет выражение xpath для контекста xml. Функция ВычислитьXPath(Выражение, Контекст, УзелКонтекста = Неопределено) Возврат Контекст.ДокументDOM.ВычислитьВыражениеXPath(Выражение,?(УзелКонтекста=Неопределено,Контекст.ДокументDOM,УзелКонтекста),Контекст.РазыменовательDOM); @@ -2785,7 +2781,7 @@ // Возвращает Href, рассчитанный для строки из таблицы файлов, методом поиска всех родителей. Функция РассчитатьHref(СтрокаФайлов,ТаблицаФайлов) - // Рекурсивно собираем наименования + // Рекурсивно собираем наименования. НайденыСтрокиФайлов = ТаблицаФайлов.Найти(СтрокаФайлов.Родитель,"ФайлСсылка"); Если НайденыСтрокиФайлов = Неопределено Тогда Возврат ?(ЗначениеЗаполнено(СтрокаФайлов.Наименование), КодироватьСтроку(СтрокаФайлов.Наименование,СпособКодированияСтроки.КодировкаURL)+"/",""); @@ -2808,10 +2804,10 @@ КонецФункции -// Вычисляется уровень строки файлов, рекурсивным алгоритмом +// Вычисляется уровень строки файлов, рекурсивным алгоритмом. Функция РекурсивноУровень(СтрокаФайлов,ТаблицаФайлов) - // Равен уровню в базе или на сервере, в зависимости от того, где он меньше + // Равен уровню в базе или на сервере, в зависимости от того, где он меньше. НайденыСтрокиФайлов = ТаблицаФайлов.НайтиСтроки(Новый Структура("ФайлСсылка", СтрокаФайлов.Родитель)); КоличествоПрибавления = ?(НайденыСтрокиФайлов.Количество()=0,0,1); Для каждого НайденнаяСтрокаФайлов Из НайденыСтрокиФайлов Цикл @@ -2822,7 +2818,7 @@ КонецФункции -// Вычисляется уровень файла на сервере webdav, рекурсивным алгоритмом +// Вычисляется уровень файла на сервере webdav, рекурсивным алгоритмом. Функция РекурсивноУровеньНаСервере(СтрокаФайлов,ТаблицаФайлов) НайденыСтрокиФайлов = ТаблицаФайлов.НайтиСтроки(Новый Структура("ФайлСсылка", СтрокаФайлов.РодительСервер)); @@ -2835,11 +2831,11 @@ КонецФункции -// Вычисляет уровни всех строк таблицы файлов +// Вычисляет уровни всех строк таблицы файлов. Процедура ВычислитьУровеньРекурсивно(ТаблицаФайлов) Для каждого СтрокаФайлов Из ТаблицаФайлов Цикл - // Равен уровню в базе или на сервере, в зависимости от того, где он меньше + // Равен уровню в базе или на сервере, в зависимости от того, где он меньше. УровеньВБазе = РекурсивноУровень(СтрокаФайлов, ТаблицаФайлов); УровеньНаСервере = РекурсивноУровеньНаСервере(СтрокаФайлов, ТаблицаФайлов); Если УровеньНаСервере = 0 Тогда @@ -2861,7 +2857,7 @@ // При изменении серверного пути к папке необходимо заменить пути к подчиненным файлам, что и делает эта процедура. Процедура РекурсивноОбновитьСсылкиПодчиненных(СтрокаФайлов,знач ToHref,знач ToHref2,ТаблицаФайлов) - // Меняем корневую ссылку, всегда должна быть закодирована + // Меняем корневую ссылку, всегда должна быть закодирована. СтрокаФайлов.ToHref = КодироватьСтроку( СтрЗаменить( РаскодироватьСтроку(ЗакончитьБезСлеша(СтрокаФайлов.ToHref), СпособКодированияСтроки.URLВКодировкеURL), @@ -2876,7 +2872,7 @@ КонецПроцедуры -// Рекурсивно загружает перечень файлов с сервера в таблицу файлов +// Рекурсивно загружает перечень файлов с сервера в таблицу файлов. Процедура СкачатьДеревоФайловРекурсивно(ТекущиеСтрокиДереваФайлов, HttpАдрес, ПараметрыСинхронизации, Отказ=Ложь) СтруктураАдресаHTTP = СтруктураURIРаскодированная(HttpАдрес); @@ -2906,7 +2902,7 @@ Пока НайденныйResponse <> Неопределено Цикл - // Href есть всегда, иначе это критическая ошибка + // Href есть всегда, иначе это критическая ошибка. НайденныйHref = ВычислитьXPath("./*[local-name()='href']", КонтекстДокументаXML, НайденныйResponse).ПолучитьСледующий(); Если НайденныйHref = Неопределено Тогда ТекстОшибки = НСтр("ru = 'Ошибка ответа от сервера: не найден HREF в %1'"); @@ -3078,7 +3074,7 @@ СтараяСтрокаТаблицыФайлов.ЕстьНаСервере = Истина; СтараяСтрокаТаблицыФайлов.ИзмененНаСервере = НЕ ЭтоОдинаковыеПутиURI(СтараяСтрокаТаблицыФайлов.ToHref,СтараяСтрокаТаблицыФайлов.Href); КонецЕсли; - // Для подчиненных строк это теперь родитель + // Для подчиненных строк это теперь родитель. ЗагрузитьНовыеПрисоединенныеФайлы(СтрокаДереваФайлов.Строки, ТаблицаФайлов, ПараметрыСинхронизации, ТекущаяПапкаФайлов.Ссылка); Иначе @@ -3090,7 +3086,7 @@ ТекущийФайл = НайтиСтрокуПоURI(СтрокаДереваФайлов.Href, ТаблицаФайлов, "Href"); Если (ТекущийФайл = Неопределено) ИЛИ (ТаблицаФайлов.Найти(ТекущийФайл.ФайлСсылка ,"ФайлСсылка") = Неопределено) Тогда - // Это новый файл на сервере - грузим его + // Это новый файл на сервере - грузим его. Если НЕ ПроверитьВозможностьUID1C(СтрокаДереваФайлов.Href, Строка(Новый УникальныйИдентификатор), ПараметрыСинхронизации) Тогда ТекстСобытия = НСтр("ru = 'Невозможно сохранение дополнительных свойств файла, он не будет загружен: %1'"); ЗаписатьВЖурналСобытийСинхронизацииФайлов(СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСобытия, СтрокаДереваФайлов.ИмяФайла), ПараметрыСинхронизации); @@ -3170,7 +3166,7 @@ КонецЕсли; Если ТекущаяПапкаФайлов = Неопределено Тогда - ТекущаяПапкаФайлов = НайтиСтрокуПоURI(СтрокаДереваФайлов.Href, ТаблицаФайлов,"Href");// может быть помечена на удаление, тогда у нее нет Href, и тут она не будет найдена + ТекущаяПапкаФайлов = НайтиСтрокуПоURI(СтрокаДереваФайлов.Href, ТаблицаФайлов,"Href");// может быть помечена на удаление, тогда у нее нет Href, и тут она не будет найдена. КонецЕсли; Если (ТекущаяПапкаФайлов <> Неопределено) ИЛИ (ТаблицаФайлов.Найти(ТекущаяПапкаФайлов.Ссылка,"ФайлСсылка") <> Неопределено) Тогда @@ -3182,7 +3178,7 @@ СтараяСтрокаТаблицыФайлов.ЕстьНаСервере = Истина; СтараяСтрокаТаблицыФайлов.ИзмененНаСервере = НЕ ЭтоОдинаковыеПутиURI(СтараяСтрокаТаблицыФайлов.ToHref,СтараяСтрокаТаблицыФайлов.Href); КонецЕсли; - // Для подчиненных строк это теперь родитель + // Для подчиненных строк это теперь родитель. ЗаполнитьДанныеИзОблачногоСервиса(СтрокаДереваФайлов.Строки, ТаблицаФайлов, ПараметрыСинхронизации, ТекущаяПапкаФайлов.Ссылка); Иначе @@ -3210,7 +3206,7 @@ КонецПроцедуры -// Подготавливает структуру обмена, содержащую значения на время сеанса обмена +// Подготавливает структуру обмена, содержащую значения на время сеанса обмена. Функция ОсновныеОбъектыСинхронизации(УчетнаяЗапись) СтруктураВозврата = Новый Структура("СтруктураАдресаСервера, Ответ, Логин, Пароль"); @@ -3326,6 +3322,7 @@ Если СозданНовыйВБазе И НЕ УдаленВБазе Тогда // отправим новый на сервер + СтрокаТаблицы.Наименование = ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыВИмениФайла(СтрокаТаблицы.Наименование, "-"); СтрокаТаблицы.ToHref = ЗакончитьБезСлеша(АдресСервера) + НачатьСлешем(ЗакончитьБезСлеша(РассчитатьHref(СтрокаТаблицы,ТаблицаФайлов))); Если СтрокаТаблицы.ЭтоПапка Тогда ВызватьМетодMKCOL(СтрокаТаблицы.ToHref, ПараметрыСинхронизации); @@ -3382,7 +3379,7 @@ Если ИзмененНаСервере И НЕ ИзмененВБазе Тогда // загрузим с сервера Если СтрокаТаблицы.ЭтоПапка Тогда - // Возможно можно отследить переименование + // Возможно можно отследить переименование. ОбъектСтрокиТаблицы = СтрокаТаблицы.ФайлСсылка.ПолучитьОбъект(); ОбъектСтрокиТаблицы.Наименование = СтрокаТаблицы.НаименованиеСервер; ОбъектСтрокиТаблицы.Родитель = Неопределено; @@ -3465,9 +3462,9 @@ КонецЕсли; Если ОбновитьСтатусСинхронизацииФайла Тогда - // Записываем обновления в регистр сведений статусов + // Записываем обновления в регистр сведений статусов. Если СтрокаТаблицы.ПометкаУдаления Тогда - // Удаляем последний Href, чтобы повторно не идентифицировать + // Удаляем последний Href, чтобы повторно не идентифицировать. УдалитьСерверныеДанныеСсылки(СтрокаТаблицы.ФайлСсылка, УчетнаяЗапись); Иначе ЗапомнитьСерверныеДанныеСсылки( @@ -3778,35 +3775,31 @@ КонецФункции -Процедура РегламентнаяСинхронизацияФайловWebdav(УчетнаяЗапись = Неопределено) Экспорт +Процедура РегламентнаяСинхронизацияФайловWebdav(Параметры = Неопределено, АдресРезультата = Неопределено) Экспорт ОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(Метаданные.РегламентныеЗадания.СинхронизацияФайлов); УстановитьПривилегированныйРежим(Истина); - Если УчетнаяЗапись = Неопределено Тогда - Запрос = Новый Запрос; - Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ - | УчетныеЗаписиСинхронизацииФайлов.Ссылка, - | УчетныеЗаписиСинхронизацииФайлов.Сервис - |ИЗ - | РегистрСведений.НастройкиСинхронизацииФайлов КАК НастройкиСинхронизацииФайлов - | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.УчетныеЗаписиСинхронизацииФайлов КАК УчетныеЗаписиСинхронизацииФайлов - | ПО НастройкиСинхронизацииФайлов.УчетнаяЗапись = УчетныеЗаписиСинхронизацииФайлов.Ссылка - |ГДЕ - | НЕ УчетныеЗаписиСинхронизацииФайлов.ПометкаУдаления - | И НастройкиСинхронизацииФайлов.Синхронизировать"; + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ + | УчетныеЗаписиСинхронизацииФайлов.Ссылка, + | УчетныеЗаписиСинхронизацииФайлов.Сервис + |ИЗ + | РегистрСведений.НастройкиСинхронизацииФайлов КАК НастройкиСинхронизацииФайлов + | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.УчетныеЗаписиСинхронизацииФайлов КАК УчетныеЗаписиСинхронизацииФайлов + | ПО НастройкиСинхронизацииФайлов.УчетнаяЗапись = УчетныеЗаписиСинхронизацииФайлов.Ссылка + |ГДЕ + | НЕ УчетныеЗаписиСинхронизацииФайлов.ПометкаУдаления + | И НастройкиСинхронизацииФайлов.Синхронизировать"; - Результат = Запрос.Выполнить().Выгрузить(); - Для каждого Выборка Из Результат Цикл - Если ПустаяСтрока(Выборка.Сервис) Тогда - Продолжить; - КонецЕсли; - СинхронизироватьФайлыСОблачнымСервисом(Выборка.Ссылка); - КонецЦикла; - Иначе - СинхронизироватьФайлыСОблачнымСервисом(УчетнаяЗапись); - КонецЕсли; + Результат = Запрос.Выполнить().Выгрузить(); + Для каждого Выборка Из Результат Цикл + Если ПустаяСтрока(Выборка.Сервис) Тогда + Продолжить; + КонецЕсли; + СинхронизироватьФайлыСОблачнымСервисом(Выборка.Ссылка); + КонецЦикла; ОсвободитьЗахваченныеФайлы(); @@ -3964,7 +3957,7 @@ КонецЕсли; - // Удаляем последний Href, чтобы повторно не идентифицировать + // Удаляем последний Href, чтобы повторно не идентифицировать. УдалитьСерверныеДанныеСсылки(СтрокаТаблицы.ФайлСсылка, УчетнаяЗапись); ЗафиксироватьТранзакцию(); diff --git a/SSL/src/CommonModules/ФайловыеФункцииСлужебныйКлиент/Module.bsl b/SSL/src/CommonModules/ФайловыеФункцииСлужебныйКлиент/Module.bsl index 0ca08c5d6..80265b497 100644 --- a/SSL/src/CommonModules/ФайловыеФункцииСлужебныйКлиент/Module.bsl +++ b/SSL/src/CommonModules/ФайловыеФункцииСлужебныйКлиент/Module.bsl @@ -15,9 +15,7 @@ ПерсональныеНастройки = ФайловыеФункцииСлужебныйКлиентСервер.ПерсональныеНастройкиРаботыСФайлами(); Если ПерсональныеНастройки.ПоказыватьПодсказкиПриРедактированииФайлов = Истина Тогда Если НЕ РасширениеРаботыСФайламиПодключено() Тогда - Форма = ФайловыеФункцииСлужебныйКлиентПовтИсп.ПолучитьФормуНапоминанияПриРедактировании(); - УстановитьОповещениеФормы(Форма, ОбработчикРезультата); - Форма.Открыть(); + ОткрытьФорму("ОбщаяФорма.НапоминаниеПриРедактировании", , , , , , ОбработчикРезультата); Возврат; КонецЕсли; КонецЕсли; @@ -32,8 +30,8 @@ // Процедура ПоказатьПредупреждениеОНеобходимостиРасширенияРаботыСФайлами(ОбработчикРезультата, ПредставлениеКоманды = "") Экспорт Если Не КлиентПоддерживаетСинхронныеВызовы() Тогда - ТекстПредупреждения = НСтр("ru = 'Выполнение команды ""%1"" в браузере - |Google Chrome не поддерживается.'"); + ТекстПредупреждения = НСтр("ru = 'Выполнение команды ""%1"" в браузерах + |Google Chrome и Mozilla Firefox не поддерживается.'"); Иначе ТекстПредупреждения = НСтр("ru = 'Для выполнения команды ""%1"" необходимо |установить расширение для веб-клиента 1С:Предприятие.'"); @@ -179,7 +177,7 @@ // Показывает пользователю диалог выбора файлов и возвращает // массив - выбранные файлы для импорта. // -Функция ПолучитьСписокИмпортируемыхФайлов() Экспорт +Функция ИмпортируемыеФайлы() Экспорт ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие); ДиалогОткрытияФайла.ПолноеИмяФайла = ""; @@ -202,43 +200,6 @@ КонецФункции -// Добавляет концевой слэш к имени каталога, если это надо, -// удаляет все запрещенные символы из имени каталога и заменяет "/" на "\". -// -Функция НормализоватьКаталог(ИмяКаталога) Экспорт - - Результат = СокрЛП(ИмяКаталога); - - // Запоминание имени диска в начале пути "Диск:" без двоеточия. - СтрДиск = ""; - Если Сред(Результат, 2, 1) = ":" Тогда - СтрДиск = Сред(Результат, 1, 2); - Результат = Сред(Результат, 3); - Иначе - - // Проверка, это не UNC-путь (Т.е. вначале нет "\\"). - Если Сред(Результат, 2, 2) = "\\" Тогда - СтрДиск = Сред(Результат, 1, 2); - Результат = Сред(Результат, 3); - КонецЕсли; - КонецЕсли; - - // Преобразование слэшей к Windows-формату. - Результат = СтрЗаменить(Результат, "/", "\"); - - // Добавление конечного слэша. - Результат = СокрЛП(Результат); - Если Не СтрЗаканчиваетсяНа(Результат, "\") Тогда - Результат = Результат + "\"; - КонецЕсли; - - // Замена всех двойных слэшей на одинарные и получение полного пути. - Результат = СтрДиск + СтрЗаменить(Результат, "\\", "\"); - - Возврат Результат; - -КонецФункции - // Проверяет имя файла на наличие некорректных символов. // // Параметры: @@ -329,12 +290,12 @@ Возврат Ложь; КонецЕсли; - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда - ЗапуститьПриложение(ФайлНаДиске.Путь); - Иначе + Если ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда ЗапуститьПриложение("explorer.exe /select, """ + ФайлНаДиске.ПолноеИмя + """"); + Иначе + ЗапуститьПриложение(ФайлНаДиске.Путь); КонецЕсли; - + Возврат Истина; КонецФункции @@ -735,7 +696,7 @@ // Проверяет установлена ли компонента сканирования и есть ли хоть один сканер. Функция ДоступнаКомандаСканировать() Экспорт - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда Возврат Ложь; КонецЕсли; @@ -754,7 +715,7 @@ // Открывает диалог сканирования и просмотра картинки. Процедура ДобавитьСоСканера(ПараметрыВыполнения) Экспорт - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда ВернутьРезультат(ПараметрыВыполнения.ОбработчикРезультата, Неопределено); Возврат; КонецЕсли; @@ -987,7 +948,7 @@ КонецПроцедуры // Продолжение процедуры ОбработатьФайл. -Процедура ОбработатьФайлПослеСозданияКаталога(Каталог, Контекст) Экспорт +Процедура ОбработатьФайлПослеСозданияКаталога(ИмяКаталога, Контекст) Экспорт ОбработатьФайлЦиклНачало(Контекст); @@ -1339,7 +1300,7 @@ // Инициализация компоненты сканирования. Функция ПроинициализироватьКомпоненту() Экспорт - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда Возврат Ложь; КонецЕсли; @@ -1370,7 +1331,7 @@ // Процедура УстановитьКомпоненту(ОбработчикРезультата) Экспорт - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда ВернутьРезультат(ОбработчикРезультата, Ложь); Возврат; КонецЕсли; @@ -1428,7 +1389,7 @@ // Функция ПолучитьНастройку(ИмяУстройства, ИмяНастройки) Экспорт - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда Возврат -1; КонецЕсли; @@ -1501,24 +1462,15 @@ КонецЕсли; КонецПроцедуры -// Устанавливает обработчик закрытия окна формы, полученной при помощи метода ПолучитьФорму. -Процедура УстановитьОповещениеФормы(Форма, ОбработчикРезультата) - Если ТипЗнч(ОбработчикРезультата) = Тип("ОписаниеОповещения") Тогда - Форма.ОписаниеОповещенияОЗакрытии = ОбработчикРезультата; - КонецЕсли; -КонецПроцедуры - Функция КлиентПоддерживаетСинхронныеВызовы() #Если ВебКлиент Тогда - // В Firefox для платформы 8.3.7 и Chrome синхронные методы не поддерживаются. + // В Chrome и Firefox синхронные методы не поддерживаются. СистемнаяИнформация = Новый СистемнаяИнформация; ИнформацияПрограммыМассив = СтрРазделить(СистемнаяИнформация.ИнформацияПрограммыПросмотра, " ", Ложь); Для Каждого ИнформацияПрограммы Из ИнформацияПрограммыМассив Цикл - Если СтрНайти(ИнформацияПрограммы, "Chrome") > 0 Тогда - Возврат Ложь; - ИначеЕсли СтрНайти(ИнформацияПрограммы, "Firefox") > 0 И СтрНайти(СистемнаяИнформация.ВерсияПриложения, "8.3.7.") > 0 Тогда + Если СтрНайти(ИнформацияПрограммы, "Chrome") > 0 ИЛИ СтрНайти(ИнформацияПрограммы, "Firefox") > 0 Тогда Возврат Ложь; КонецЕсли; КонецЦикла; diff --git a/SSL/src/CommonModules/ФайловыеФункцииСлужебныйКлиентПовтИсп/Module.bsl b/SSL/src/CommonModules/ФайловыеФункцииСлужебныйКлиентПовтИсп/Module.bsl index 964daf9f8..ef2abb576 100644 --- a/SSL/src/CommonModules/ФайловыеФункцииСлужебныйКлиентПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/ФайловыеФункцииСлужебныйКлиентПовтИсп/Module.bsl @@ -5,16 +5,6 @@ #Область СлужебныеПроцедурыИФункции -// Возвращает форму, которая используется для информирования -// пользователей об особенностях заема и редактирования файлов -// в веб-клиенте. -// -Функция ПолучитьФормуНапоминанияПриРедактировании() Экспорт - - Возврат ПолучитьФорму("ОбщаяФорма.НапоминаниеПриРедактировании"); - -КонецФункции - // Возвращает структуру, содержащую различные персональные настройки. Функция ПерсональныеНастройкиРаботыСФайлами() Экспорт diff --git a/SSL/src/CommonModules/ФайловыеФункцииСлужебныйКлиентСервер/Module.bsl b/SSL/src/CommonModules/ФайловыеФункцииСлужебныйКлиентСервер/Module.bsl index 5b17b6344..ff3524dba 100644 --- a/SSL/src/CommonModules/ФайловыеФункцииСлужебныйКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/ФайловыеФункцииСлужебныйКлиентСервер/Module.bsl @@ -569,7 +569,7 @@ // Прочие // Удаляет файлы после импорта или загрузки. -Процедура УдалитьФайлыПослеДобавления(МассивСтруктурВсехФайлов, МассивВсехПапок, РежимЗагрузки) Экспорт +Процедура УдалитьФайлыПослеДобавления(МассивСтруктурВсехФайлов, МассивВсехПапок) Экспорт Для Каждого Элемент Из МассивСтруктурВсехФайлов Цикл ВыбранныйФайл = Новый Файл(Элемент.ИмяФайла); @@ -577,18 +577,7 @@ УдалитьФайлы(ВыбранныйФайл.ПолноеИмя); КонецЦикла; - Если РежимЗагрузки Тогда - Для Каждого Элемент Из МассивВсехПапок Цикл - НайденныеФайлы = НайтиФайлы(Элемент, "*.*"); - Если НайденныеФайлы.Количество() = 0 Тогда - ВыбранныйФайл = Новый Файл(Элемент); - ВыбранныйФайл.УстановитьТолькоЧтение(Ложь); - УдалитьФайлы(ВыбранныйФайл.ПолноеИмя); - КонецЕсли; - КонецЦикла; - КонецЕсли; - -КонецПроцедуры +КонецПроцедуры // Возвращает массив файлов, эмулируя работу НайтиФайлы - но не по файловой системе, а по Соответствию // если ПсевдоФайловаяСистема пуста - работает с файловой системой. @@ -627,10 +616,8 @@ СтрокаПодписи.Статус = НСтр("ru = 'Верна'"); ИначеЕсли ЗначениеЗаполнено(ТекстОшибки) Тогда - СтрокаПодписи.Статус = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Неверна. %1'"), ТекстОшибки); - Если Прав(СтрокаПодписи.Статус, 1) = "." Тогда - СтрокаПодписи.Статус = Лев(СтрокаПодписи.Статус, СтрДлина(СтрокаПодписи.Статус)-1); - КонецЕсли; + СтрокаПодписи.Статус = НСтр("ru = 'Неверна'"); + СтрокаПодписи.ОписаниеОшибки = ТекстОшибки; Иначе СтрокаПодписи.Статус = НСтр("ru = 'Неверна'"); КонецЕсли; @@ -693,15 +680,15 @@ ЧтениеXML.ОткрытьФайл(ВременнаяПапкаДляРазархивирования + "/content.xml"); ИзвлеченныйТекст = ИзвлечьТекстИзContentXML(ЧтениеXML); ЧтениеXML.Закрыть(); + + УдалитьФайлы(ВременнаяПапкаДляРазархивирования); + УдалитьФайлы(ВременныйZIPФайл); Исключение // Не считаем ошибкой, т.к. например расширение OTF может быть как OpenDocument, так и шрифт OpenType. Отказ = Истина; ИзвлеченныйТекст = ""; КонецПопытки; - УдалитьФайлы(ВременнаяПапкаДляРазархивирования); - УдалитьФайлы(ВременныйZIPФайл); - #КонецЕсли Возврат ИзвлеченныйТекст; diff --git a/SSL/src/CommonModules/ЦентрМониторинга/Module.bsl b/SSL/src/CommonModules/ЦентрМониторинга/Module.bsl index 31064c8f7..8b7411d52 100644 --- a/SSL/src/CommonModules/ЦентрМониторинга/Module.bsl +++ b/SSL/src/CommonModules/ЦентрМониторинга/Module.bsl @@ -10,7 +10,7 @@ // Параметры: // ИмяОперации - Строка(1000) - имя операции статистики, в случае отсутствия - создается новое; // Значение - Число(15,3) - количественное значение операции статистики; -// Комментарий - Строка(1000) - произвольный комментарий +// Комментарий - Строка(1000) - произвольный комментарий. // Разделитель - Строка - разделитель значений в <ИмяОперации>, если разделитель не точка. // Процедура ЗаписатьОперациюБизнесСтатистики(ИмяОперации, Значение, Комментарий = Неопределено, Разделитель = ".") Экспорт @@ -25,7 +25,7 @@ // СоответствиеИменМетаданных - Структура; // * Ключ - Строка - Имя объекта метаданных; // * Значение - Строка - Текст запроса выборки данных, обязательно должно -// присутствовать поле <Количество> +// присутствовать поле <Количество>. // Ограничения // можно вызывать только из ЦентрМониторингаПереопределяемый.ПриСбореПоказателейСтатистикиКонфигурации. // @@ -51,26 +51,31 @@ // ИмяОбъекта - Строка(1000) - имя операции статистики, в случае отсутствия - создается новое; // Значение - Число(15,3) - количественное значение операции статистики; // Ограничения -// можно вызывать только из ЦентрМониторингаПереопределяемый.ПриСбореПоказателейСтатистикиКонфигурации. +// можно вызывать только из ЦентрМониторингаПереопределяемый.ПриСбореПоказателейСтатистикиКонфигурации, +// значение равное нулю не записывается. // Процедура ЗаписатьСтатистикуОбъектаКонфигурации(ИмяОбъекта, Значение) Экспорт - ОперацияСтатистики = РегистрыСведений.ОперацииСтатистики.ПолучитьСсылку(ИмяОбъекта); - - Если ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда - ОбластьДанныхСтрока = Строка(ОбщегоНазначения.ЗначениеРазделителяСеанса()); - Иначе - ОбластьДанныхСтрока = "0"; - КонецЕсли; - ОбластьДанныхСсылка = РегистрыСведений.ОбластиСтатистики.ПолучитьСсылку(ОбластьДанныхСтрока); - - НаборЗаписей = РегистрыСведений.СтатистикаКонфигурации.СоздатьНаборЗаписей(); - НаборЗаписей.Отбор.ОперацияСтатистики.Установить(ОперацияСтатистики); - - НовЗапись = НаборЗаписей.Добавить(); - НовЗапись.ИдентификаторОбластиСтатистики = ОбластьДанныхСсылка; - НовЗапись.ОперацияСтатистики = ОперацияСтатистики; - НовЗапись.Значение = Значение; - НаборЗаписей.Записать(Истина); + + Если Значение <> 0 Тогда + ОперацияСтатистики = РегистрыСведений.ОперацииСтатистики.ПолучитьСсылку(ИмяОбъекта); + + Если ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда + ОбластьДанныхСтрока = Строка(ОбщегоНазначения.ЗначениеРазделителяСеанса()); + Иначе + ОбластьДанныхСтрока = "0"; + КонецЕсли; + ОбластьДанныхСсылка = РегистрыСведений.ОбластиСтатистики.ПолучитьСсылку(ОбластьДанныхСтрока); + + НаборЗаписей = РегистрыСведений.СтатистикаКонфигурации.СоздатьНаборЗаписей(); + НаборЗаписей.Отбор.ОперацияСтатистики.Установить(ОперацияСтатистики); + + НовЗапись = НаборЗаписей.Добавить(); + НовЗапись.ИдентификаторОбластиСтатистики = ОбластьДанныхСсылка; + НовЗапись.ОперацияСтатистики = ОперацияСтатистики; + НовЗапись.Значение = Значение; + НаборЗаписей.Записать(Истина); + КонецЕсли; + КонецПроцедуры #КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonModules/ЦентрМониторингаСлужебный/Module.bsl b/SSL/src/CommonModules/ЦентрМониторингаСлужебный/Module.bsl index 811aad74a..70ef9904e 100644 --- a/SSL/src/CommonModules/ЦентрМониторингаСлужебный/Module.bsl +++ b/SSL/src/CommonModules/ЦентрМониторингаСлужебный/Module.bsl @@ -149,8 +149,8 @@ ОценкаПроизводительностиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности"); Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - ВремяНачала = МодульОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени(); + МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности"); + ВремяНачала = МодульОценкаПроизводительности.НачатьЗамерВремени(); КонецЕсли; ДатаЗапуска = ТекущаяУниверсальнаяДата(); @@ -189,6 +189,7 @@ , , Комментарий); + УстановитьПараметрЦентраМониторинга("РегистрироватьДампы", Ложь); ЦентрМониторинга.ЗаписатьОперациюБизнесСтатистики("ЦентрМониторинга.РегистрацияДампов.Ошибка", 1, Комментарий); КонецПопытки; @@ -301,7 +302,7 @@ КонецЕсли; Если ОценкаПроизводительностиСуществует И НеобходимаЗаписьОценкиПроизводительности Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремени("ЦентрМониторингаСборИОтправкаСтатистики", ВремяНачала); + МодульОценкаПроизводительности.ЗакончитьЗамерВремени("ЦентрМониторингаСборИОтправкаСтатистики", ВремяНачала); КонецЕсли; КонецПроцедуры @@ -312,8 +313,8 @@ Процедура РазобратьБуферОперацийСтатистики(ТекущаяДата) ОценкаПроизводительностиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности"); Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - ВремяНачала = МодульОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени(); + МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности"); + ВремяНачала = МодульОценкаПроизводительности.НачатьЗамерВремени(); КонецЕсли; ПериодАгрегации = ЦентрМониторингаВызовСервераПовтИсп.ПолучитьПараметрыЦентраМониторинга("ПериодАгрегацииМалый"); @@ -341,15 +342,15 @@ КонецПопытки; Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремени("ЦентрМониторингаРазобратьБуферОперацийСтатистики", ВремяНачала); + МодульОценкаПроизводительности.ЗакончитьЗамерВремени("ЦентрМониторингаРазобратьБуферОперацийСтатистики", ВремяНачала); КонецЕсли; КонецПроцедуры Процедура АгрегироватьЗамерыОперацийСтатистики(ТекущаяДата) ОценкаПроизводительностиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности"); Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - ВремяНачала = МодульОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени(); + МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности"); + ВремяНачала = МодульОценкаПроизводительности.НачатьЗамерВремени(); КонецЕсли; ПериодАгрегации = ЦентрМониторингаВызовСервераПовтИсп.ПолучитьПараметрыЦентраМониторинга("ПериодАгрегации"); @@ -385,15 +386,15 @@ КонецЕсли; Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремени("ЦентрМониторингаАгрегироватьЗамерыОперацийСтатистики", ВремяНачала); + МодульОценкаПроизводительности.ЗакончитьЗамерВремени("ЦентрМониторингаАгрегироватьЗамерыОперацийСтатистики", ВремяНачала); КонецЕсли; КонецПроцедуры Процедура РегистрацияОперацийСтатистики() ОценкаПроизводительностиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности"); Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - ВремяНачала = МодульОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени(); + МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности"); + ВремяНачала = МодульОценкаПроизводительности.НачатьЗамерВремени(); КонецЕсли; ТекущаяДата = ТекущаяУниверсальнаяДата(); @@ -403,15 +404,15 @@ УдалитьУстаревшиеДанныеОперацийСтатистики(); Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремени("ЦентрМониторингаРегистрацияОперацийСтатистики", ВремяНачала); + МодульОценкаПроизводительности.ЗакончитьЗамерВремени("ЦентрМониторингаРегистрацияОперацийСтатистики", ВремяНачала); КонецЕсли; КонецПроцедуры Процедура УдалитьУстаревшиеДанныеОперацийСтатистики() ОценкаПроизводительностиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности"); Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - ВремяНачала = МодульОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени(); + МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности"); + ВремяНачала = МодульОценкаПроизводительности.НачатьЗамерВремени(); КонецЕсли; ПараметрыЦентраМониторинга = ЦентрМониторингаВызовСервераПовтИсп.ПолучитьПараметрыЦентраМониторинга(); @@ -436,7 +437,7 @@ КонецПопытки; Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремени("ЦентрМониторингаУдалитьУстаревшиеДанныеОперацийСтатистики", ВремяНачала); + МодульОценкаПроизводительности.ЗакончитьЗамерВремени("ЦентрМониторингаУдалитьУстаревшиеДанныеОперацийСтатистики", ВремяНачала); КонецЕсли; КонецПроцедуры @@ -925,57 +926,61 @@ Процедура РегистрацияДампов() ОценкаПроизводительностиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности"); Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - ВремяНачала = МодульОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени(); + МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности"); + ВремяНачала = МодульОценкаПроизводительности.НачатьЗамерВремени(); КонецЕсли; КаталогДампов = ПолучитьКаталогДампов(); - Если КаталогДампов.УдалятьДампы Тогда - ДампыДляУдаления = РегистрыСведений.ДампыПлатформы.ПолучитьДампыДляУдаления(); - - Для Каждого ДампДляУдаления Из ДампыДляУдаления Цикл - Файл = Новый Файл(ДампДляУдаления.ИмяФайла); - Если Файл.Существует() Тогда - Попытка - УдалитьФайлы(Файл.ПолноеИмя); + Если КаталогДампов.Путь <> Неопределено Тогда + Если КаталогДампов.УдалятьДампы Тогда + ДампыДляУдаления = РегистрыСведений.ДампыПлатформы.ПолучитьДампыДляУдаления(); + + Для Каждого ДампДляУдаления Из ДампыДляУдаления Цикл + Файл = Новый Файл(ДампДляУдаления.ИмяФайла); + Если Файл.Существует() Тогда + Попытка + УдалитьФайлы(Файл.ПолноеИмя); + ДампДляУдаления.ИмяФайла = ""; + РегистрыСведений.ДампыПлатформы.ИзменитьЗапись(ДампДляУдаления); + Исключение + ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииЦентрМониторингаУдалениеДампа(), УровеньЖурналаРегистрации.Ошибка,,, + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + КонецПопытки; + Иначе ДампДляУдаления.ИмяФайла = ""; РегистрыСведений.ДампыПлатформы.ИзменитьЗапись(ДампДляУдаления); - Исключение - ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииЦентрМониторингаУдалениеДампа(), УровеньЖурналаРегистрации.Ошибка,,, - ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - КонецПопытки; - Иначе - ДампДляУдаления.ИмяФайла = ""; - РегистрыСведений.ДампыПлатформы.ИзменитьЗапись(ДампДляУдаления); + КонецЕсли; + КонецЦикла; + КонецЕсли; + + ФайлыДампов = НайтиФайлы(КаталогДампов.Путь, "*.mdmp"); + ИменаФайловДампов = Новый Массив; + Для Каждого ФайлДампа Из ФайлыДампов Цикл + ИменаФайловДампов.Добавить(ФайлДампа.ПолноеИмя); + КонецЦикла; + + ФайлыДамповЗарегистрированные = РегистрыСведений.ДампыПлатформы.ПолучитьЗарегистрированныеДампы(ИменаФайловДампов); + + Для Каждого ФайлДампа Из ФайлыДампов Цикл + Если ФайлыДамповЗарегистрированные[ФайлДампа.ПолноеИмя] = Неопределено Тогда + ДампНовый = Новый Структура; + СтруктураДампа = ОписаниеДампа(ФайлДампа.Имя); + + ДампНовый.Вставить("ДатаРегистрации", ТекущаяУниверсальнаяДатаВМиллисекундах()); + ДампНовый.Вставить("ВариантДампа", СтруктураДампа.Процесс + "_" + СтруктураДампа.ВерсияПлатформы + "_" + СтруктураДампа.Смещение); + ДампНовый.Вставить("ВерсияПлатформы", ВерсияПлатформыВЧисло(СтруктураДампа.ВерсияПлатформы)); + ДампНовый.Вставить("ИмяФайла", ФайлДампа.ПолноеИмя); + + РегистрыСведений.ДампыПлатформы.ИзменитьЗапись(ДампНовый); КонецЕсли; КонецЦикла; + Иначе + УстановитьПараметрЦентраМониторинга("РегистрироватьДампы", Ложь); КонецЕсли; - ФайлыДампов = НайтиФайлы(КаталогДампов.Путь, "*.mdmp"); - ИменаФайловДампов = Новый Массив; - Для Каждого ФайлДампа Из ФайлыДампов Цикл - ИменаФайловДампов.Добавить(ФайлДампа.ПолноеИмя); - КонецЦикла; - - ФайлыДамповЗарегистрированные = РегистрыСведений.ДампыПлатформы.ПолучитьЗарегистрированныеДампы(ИменаФайловДампов); - - Для Каждого ФайлДампа Из ФайлыДампов Цикл - Если ФайлыДамповЗарегистрированные[ФайлДампа.ПолноеИмя] = Неопределено Тогда - ДампНовый = Новый Структура; - СтруктураДампа = ОписаниеДампа(ФайлДампа.Имя); - - ДампНовый.Вставить("ДатаРегистрации", ТекущаяУниверсальнаяДатаВМиллисекундах()); - ДампНовый.Вставить("ВариантДампа", СтруктураДампа.Процесс + "_" + СтруктураДампа.ВерсияПлатформы + "_" + СтруктураДампа.Смещение); - ДампНовый.Вставить("ВерсияПлатформы", ВерсияПлатформыВЧисло(СтруктураДампа.ВерсияПлатформы)); - ДампНовый.Вставить("ИмяФайла", ФайлДампа.ПолноеИмя); - - РегистрыСведений.ДампыПлатформы.ИзменитьЗапись(ДампНовый); - КонецЕсли; - КонецЦикла; - Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремени("ЦентрМониторингаРегистрацияДампов", ВремяНачала); + МодульОценкаПроизводительности.ЗакончитьЗамерВремени("ЦентрМониторингаРегистрацияДампов", ВремяНачала); КонецЕсли; КонецПроцедуры @@ -1001,8 +1006,8 @@ ОценкаПроизводительностиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности"); Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - ВремяНачала = МодульОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени(); + МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности"); + ВремяНачала = МодульОценкаПроизводительности.НачатьЗамерВремени(); КонецЕсли; СтатистикаКонфигурации = Неопределено; @@ -1015,7 +1020,7 @@ КонецЕсли; Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремени("ЦентрМониторингаСобратьСтатистикуКонфигурацииБазовая", ВремяНачала); + МодульОценкаПроизводительности.ЗакончитьЗамерВремени("ЦентрМониторингаСобратьСтатистикуКонфигурацииБазовая", ВремяНачала); КонецЕсли; КонецЕсли; @@ -1029,7 +1034,7 @@ Если ПараметрыЦентраМониторинга.РегистрироватьСтатистикуКонфигурации Тогда Если ОценкаПроизводительностиСуществует Тогда - ВремяНачала = МодульОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени(); + ВремяНачала = МодульОценкаПроизводительности.НачатьЗамерВремени(); КонецЕсли; РазделениеПоОбластямДанныхВключено = РазделениеПоОбластямДанныхВключено(); @@ -1062,7 +1067,7 @@ КонецЕсли; Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремени("ЦентрМониторингаСобратьСтатистикуКонфигурацииСтандартныеПодсистемы", ВремяНачала); + МодульОценкаПроизводительности.ЗакончитьЗамерВремени("ЦентрМониторингаСобратьСтатистикуКонфигурацииСтандартныеПодсистемы", ВремяНачала); КонецЕсли; КонецЕсли; @@ -1076,7 +1081,7 @@ Если ПараметрыЦентраМониторинга.РегистрироватьСтатистикуКонфигурации Тогда Если ОценкаПроизводительностиСуществует Тогда - ВремяНачала = МодульОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени(); + ВремяНачала = МодульОценкаПроизводительности.НачатьЗамерВремени(); КонецЕсли; РазделениеПоОбластямДанныхВключено = РазделениеПоОбластямДанныхВключено(); @@ -1109,7 +1114,7 @@ КонецЕсли; Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремени("ЦентрМониторингаСобратьСтатистикуКонфигурацииПереопределяемая", ВремяНачала); + МодульОценкаПроизводительности.ЗакончитьЗамерВремени("ЦентрМониторингаСобратьСтатистикуКонфигурацииПереопределяемая", ВремяНачала); КонецЕсли; КонецЕсли; @@ -1123,8 +1128,8 @@ Процедура СформироватьПакетДляОтправки() ОценкаПроизводительностиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности"); Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - ВремяНачала = МодульОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени(); + МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности"); + ВремяНачала = МодульОценкаПроизводительности.НачатьЗамерВремени(); КонецЕсли; ТекДата = ТекущаяУниверсальнаяДата(); @@ -1160,7 +1165,7 @@ РегистрыСведений.ПакетыДляОтправки.УдалитьСтарыеПакеты(); Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремени("ЦентрМониторингаСформироватьПакетДляОтправки", ВремяНачала); + МодульОценкаПроизводительности.ЗакончитьЗамерВремени("ЦентрМониторингаСформироватьПакетДляОтправки", ВремяНачала); КонецЕсли; КонецПроцедуры @@ -1169,8 +1174,8 @@ ОценкаПроизводительностиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности"); Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - ВремяНачала = МодульОценкаПроизводительностиКлиентСервер.НачатьЗамерВремени(); + МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности"); + ВремяНачала = МодульОценкаПроизводительности.НачатьЗамерВремени(); КонецЕсли; НомераПакетовДляОтправки = РегистрыСведений.ПакетыДляОтправки.ПолучитьНомераПакетов(); @@ -1209,7 +1214,7 @@ КонецЦикла; Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьЗамерВремени("ЦентрМониторингаОтправитьДанныеМониторинга", ВремяНачала); + МодульОценкаПроизводительности.ЗакончитьЗамерВремени("ЦентрМониторингаОтправитьДанныеМониторинга", ВремяНачала); КонецЕсли; Возврат HTTPОтвет; @@ -1222,8 +1227,8 @@ Функция ВыполнятьЗамерыПроизводительности() ОценкаПроизводительностиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности"); Если ОценкаПроизводительностиСуществует Тогда - МодульОценкаПроизводительности = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительности"); - ВыполнятьЗамерыПроизводительности = МодульОценкаПроизводительности.ВыполнятьЗамерыПроизводительности(); + МодульОценкаПроизводительностиВызовСервераПовтИсп = ОбщегоНазначения.ОбщийМодуль("ОценкаПроизводительностиВызовСервераПовтИсп"); + ВыполнятьЗамерыПроизводительности = МодульОценкаПроизводительностиВызовСервераПовтИсп.ВыполнятьЗамерыПроизводительности(); Иначе ВыполнятьЗамерыПроизводительности = Неопределено; КонецЕсли; @@ -1239,7 +1244,8 @@ ПараметрыКонстанты.Вставить("ВключитьЦентрМониторинга", Ложь); // Признак центра обработки - // Истина - сторонний разработчик. + // Истина - сторонний разработчик. + // ПараметрыКонстанты.Вставить("ЦентрОбработкиИнформацииОПрограмме", Ложь); // Идентификатор информационной базы. @@ -1283,6 +1289,7 @@ // Если параметр ОценкаПроизводительностиВключена равна двум, тогда включена оценкой производительности. // ПараметрыКонстанты.Вставить("ОценкаПроизводительностиВключена", 0); + ПараметрыКонстанты.Вставить("РегистрироватьПроизводительность", Ложь); ПараметрыКонстанты.Вставить("TopApdex", 10); ПараметрыКонстанты.Вставить("РегистрироватьПроизводительностьТехнологическую", Ложь); @@ -1600,7 +1607,7 @@ Функция ПолучитьКаталогДампов() КаталогНастроек = ПолучитьКаталогНастроекТехнологическогоЖурнала(); КаталогДампов = НайтиКаталогДампов(КаталогНастроек); - + Возврат КаталогДампов; КонецФункции @@ -1615,7 +1622,7 @@ Возврат Путь; КонецФункции -Функция НайтиКаталогДампов(КаталогНастроек) +Функция НайтиКаталогДампов(КаталогНастроек) КаталогДампов = Новый Структура("Путь, УдалятьДампы", "", Ложь); ИмяФайлаНастроек = "logcfg.xml"; @@ -1639,54 +1646,46 @@ КонецЦикла; Исключение Сообщение = НСтр("ru='Ошибка чтения файла настроек технологического журнала'"); - Сообщение = Сообщение + " """ +Файл.ПолноеИмя + """."; + Сообщение = Сообщение + " """ +Файл.ПолноеИмя + """." + Символы.ПС; Сообщение = Сообщение + НСтр("ru='Скорее всего файл поврежден. Регистрация дампов не возможна. Удалите поврежденный файл или восстановите настройки.'"); - ВызватьИсключение Сообщение; + + ЗаписьЖурналаРегистрации(НСтр("ru = 'Центр мониторинга'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), УровеньЖурналаРегистрации.Предупреждение,,,Сообщение); + + КаталогДампов.Путь = Неопределено; + Возврат КаталогДампов; КонецПопытки; + Если ПараметрыДампов <> Неопределено Тогда + Если НЕ ПараметрыДампов.Свойство("location") ИЛИ НЕ ПараметрыДампов.Свойство("create") ИЛИ НЕ ПараметрыДампов.Свойство("type") Тогда + Сообщение = НСтр("ru='Ошибка секции сбора дампов в файле настроек технологического журнала'"); + Сообщение = Сообщение + " """ +Файл.ПолноеИмя + """." + Символы.ПС; + Сообщение = Сообщение + НСтр("ru='Регистрация дампов не возможна. Удалите файл или восстановите настройки.'"); + ЧтениеXML.Закрыть(); + + ЗаписьЖурналаРегистрации(НСтр("ru = 'Центр мониторинга'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), УровеньЖурналаРегистрации.Предупреждение,,,Сообщение); + + КаталогДампов.Путь = Неопределено; + Возврат КаталогДампов; + КонецЕсли; + КонецЕсли; + Если ПараметрыДампов <> Неопределено Тогда КаталогДампов.Путь = СформироватьПутьСРазделителем(ПараметрыДампов.Location); Если ПараметрыДампов.type = "0" ИЛИ СтрНайти(КаталогДампов.Путь, "80af5716-b134-4b1c-a38d-4658d1ac4196") > 0 Тогда КаталогДампов.УдалятьДампы = Истина; КонецЕсли; ЧтениеXML.Закрыть(); - Иначе - ЧтениеXML.Закрыть(); - ЧтениеXML.ОткрытьФайл(Файл.ПолноеИмя, Новый ПараметрыЧтенияXML(,,,,,,,Ложь, Ложь)); - ПостроительDOM = Новый ПостроительDOM; - ДокументDOM = ПостроительDOM.Прочитать(ЧтениеXML); - ДокументDOM.Нормализовать(); - ЧтениеXML.Закрыть(); - - Если ДокументDOM.ЕстьДочерниеУзлы() Тогда - ПервыйДочерний = ДокументDOM.ПервыйДочерний; - Если ВРЕГ(ПервыйДочерний.ИмяУзла) = "CONFIG" Тогда - КаталогДампов.Путь = СформироватьПутьСРазделителем(СформироватьПутьСРазделителем(КаталогВременныхФайлов() + "Dumps") + "80af5716-b134-4b1c-a38d-4658d1ac4196"); - КаталогДампов.УдалятьДампы = Истина; - - ЭлементДампы = ДокументDOM.СоздатьЭлемент("dump"); - ЭлементДампы.УстановитьАтрибут("location", КаталогДампов.Путь); - ЭлементДампы.УстановитьАтрибут("create", "1"); - ЭлементДампы.УстановитьАтрибут("type", "0"); - ЭлементДампы.УстановитьАтрибут("externaldump", "1"); - ПервыйДочерний.ДобавитьДочерний(ЭлементДампы); - - Попытка - ЗаписьXML = Новый ЗаписьXML; - ЗаписьDOM = Новый ЗаписьDOM; - ЗаписьXML.ОткрытьФайл(Файл.ПолноеИмя, Новый ПараметрыЗаписиXML(,,Истина,Истина)); - ЗаписьDOM.Записать(ДокументDOM, ЗаписьXML); - ЗаписьXML.Закрыть(); - Исключение - Сообщение = НСтр("ru='Ошибка записи файла настроек технологического журнала'"); - Сообщение = Сообщение + " """ +Файл.ПолноеИмя + """."; - Сообщение = Сообщение + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); - ВызватьИсключение Сообщение; - КонецПопытки; + Если СтрНайти(КаталогДампов.Путь, "80af5716-b134-4b1c-a38d-4658d1ac4196") > 0 Тогда + Если НЕ ПараметрыДампов.Свойство("externaldump") Тогда + СоздатьСекциюСбораДампов(Файл, ЧтениеXML, КаталогДампов); + ИначеЕсли ПараметрыДампов.externaldump <> "1" Тогда + СоздатьСекциюСбораДампов(Файл, ЧтениеXML, КаталогДампов); КонецЕсли; КонецЕсли; - + Иначе + ЧтениеXML.Закрыть(); + СоздатьСекциюСбораДампов(Файл, ЧтениеXML, КаталогДампов); КонецЕсли; Иначе @@ -1697,6 +1696,54 @@ Возврат КаталогДампов; КонецФункции +Функция СоздатьСекциюСбораДампов(Файл, ЧтениеXML, КаталогДампов) + ЧтениеXML.ОткрытьФайл(Файл.ПолноеИмя, Новый ПараметрыЧтенияXML(,,,,,,,Ложь, Ложь)); + + ПостроительDOM = Новый ПостроительDOM; + ДокументDOM = ПостроительDOM.Прочитать(ЧтениеXML); + ДокументDOM.Нормализовать(); + ЧтениеXML.Закрыть(); + Если ДокументDOM.ЕстьДочерниеУзлы() Тогда + ПервыйДочерний = ДокументDOM.ПервыйДочерний; + Если ВРЕГ(ПервыйДочерний.ИмяУзла) = "CONFIG" Тогда + КаталогДампов.Путь = СформироватьПутьСРазделителем(СформироватьПутьСРазделителем(КаталогВременныхФайлов() + "Dumps") + "80af5716-b134-4b1c-a38d-4658d1ac4196"); + КаталогДампов.УдалятьДампы = Истина; + + ЭлементыДампы = ДокументDOM.ПолучитьЭлементыПоИмени("dump"); + Если ЭлементыДампы.Количество() = 0 Тогда + + ЭлементДампы = ДокументDOM.СоздатьЭлемент("dump"); + ЭлементДампы.УстановитьАтрибут("location", КаталогДампов.Путь); + ЭлементДампы.УстановитьАтрибут("create", "1"); + ЭлементДампы.УстановитьАтрибут("type", "0"); + ЭлементДампы.УстановитьАтрибут("externaldump", "1"); + ПервыйДочерний.ДобавитьДочерний(ЭлементДампы); + Иначе + Для Каждого ТекЭлемент Из ЭлементыДампы Цикл + ТекЭлемент.УстановитьАтрибут("externaldump", "1"); + КонецЦикла; + КонецЕсли; + + Попытка + ЗаписьXML = Новый ЗаписьXML; + ЗаписьDOM = Новый ЗаписьDOM; + ЗаписьXML.ОткрытьФайл(Файл.ПолноеИмя, Новый ПараметрыЗаписиXML(,,Истина,Истина)); + ЗаписьDOM.Записать(ДокументDOM, ЗаписьXML); + ЗаписьXML.Закрыть(); + Исключение + Сообщение = НСтр("ru='Ошибка записи файла настроек технологического журнала. Регистрация дампов не возможна.'"); + Сообщение = Сообщение + " """ +Файл.ПолноеИмя + """." + Символы.ПС; + Сообщение = Сообщение + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); + + ЗаписьЖурналаРегистрации(НСтр("ru = 'Центр мониторинга - регистрация дампов'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), УровеньЖурналаРегистрации.Предупреждение,,,Сообщение); + + КаталогДампов.Путь = Неопределено; + Возврат КаталогДампов; + КонецПопытки; + КонецЕсли; + КонецЕсли; +КонецФункции + Функция СоздатьФайлНастроекСбораДампов(ПутьКаталога) ИмяФайлаНастроек = "logcfg.xml"; @@ -1712,10 +1759,14 @@ ЗаписьXML.ЗаписатьБезОбработки(СборДампов); ЗаписьXML.Закрыть(); Исключение - Сообщение = НСтр("ru='Ошибка записи файла настроек технологического журнала'"); - Сообщение = Сообщение + " """ +ПутьКаталога + ИмяФайлаНастроек + """."; + Сообщение = НСтр("ru='Ошибка создания файла настроек технологического журнала. Регистрация дампов не возможна.'"); + Сообщение = Сообщение + " """ +ПутьКаталога + ИмяФайлаНастроек + """." + Символы.ПС; Сообщение = Сообщение + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); - ВызватьИсключение Сообщение; + + ЗаписьЖурналаРегистрации(НСтр("ru = 'Центр мониторинга'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), УровеньЖурналаРегистрации.Предупреждение,,,Сообщение); + + КаталогДампов = Неопределено; + КонецПопытки; Возврат КаталогДампов; diff --git a/SSL/src/CommonModules/ШаблоныСообщений/Module.bsl b/SSL/src/CommonModules/ШаблоныСообщений/Module.bsl new file mode 100644 index 000000000..33a8e07ef --- /dev/null +++ b/SSL/src/CommonModules/ШаблоныСообщений/Module.bsl @@ -0,0 +1,308 @@ +#Область ПрограммныйИнтерфейс + +// Создает сообщение на основании предмета по шаблону сообщения. +// +// Параметры: +// Шаблон - СправочникСсылка.ШаблоныСообщений - ссылка на шаблон сообщения. +// Предмет - Произвольный - Объект основания для шаблона сообщений, типы объектов перечислены в определяемом типе ПредметШаблонаСообщения. +// УникальныйИдентификатор - УникальныйИдентификатор - Идентификатор формы, необходим для размещения вложений во временном хранилище при клиент-серверном вызове. +// Если вызов происходит только на сервере, то можно использовать любой идентификатор. +// ДополнительныеПараметры - Структура - Необязательный, список дополнительных параметров, который будет передан в параметр Сообщение +// в процедурах ПриФормированииСообщения при создании сообщения. +// * ПреобразовыватьHTMLДляФорматированногоДокумента - Булево - необязательный, по умолчанию Ложь, определяет необходимо ли преобразование HTML текста сообщения +// содержащего картинки в тексте письма из-за особенностей вывода изображений в форматированном документе. +// +// Возвращаемое значение: +// Структура - подготовленное сообщение на основание шаблона для отправки. +// * Тема - Строка - тема письма +// * Текст - Строка - текст письма +// * Получатель - СписокЗначений - список получателей письма +// * ДополнительныеПараметры - Структура - параметры шаблона сообщения. +// * Вложения - ТаблицаЗначений - список вложений +// ** Представление - Строка - имя файла вложения. +// ** АдресВоВременномХранилище - Строка - адрес двоичных данных вложения во временном хранилище. +// ** Кодировка - Строка - кодировка вложения (используется, если отличается от кодировки письма). +// ** Идентификатор - Строка - необязательный, идентификатор вложения, используется для хранения +// картинок, отображаемых в теле письма. +// +Функция СформироватьСообщение(Шаблон, Предмет, УникальныйИдентификатор, ДополнительныеПараметры = Неопределено) Экспорт + + ПараметрыОтправки = СформироватьПараметрыОтправки(Шаблон, Предмет, УникальныйИдентификатор, ДополнительныеПараметры); + Возврат ШаблоныСообщенийСлужебный.СформироватьСообщение(ПараметрыОтправки); + +КонецФункции + +// Отправляет сообщение почты или SMS на основании предмета по шаблону сообщения. +// +// Параметры: +// Шаблон - СправочникСсылка.ШаблоныСообщений - ссылка на шаблон сообщения. +// Предмет - Произвольный - объект основания для шаблона сообщений, типы объектов перечислены в определяемом типе ПредметШаблонаСообщения. +// УникальныйИдентификатор - УникальныйИдентификатор - идентификатор формы, необходим для размещения вложений во временном хранилище. +// ДополнительныеПараметры - Структура - Необязательный, список дополнительных параметров, который будет передан в параметр Сообщение +// в процедурах ПриФормированииСообщения при создании сообщения. +// * ПреобразовыватьHTMLДляФорматированногоДокумента - Булево - необязательный, по умолчанию Ложь, определяет необходимо ли преобразование HTML текста сообщения +// содержащего картинки в тексте письма из-за особенностей вывода изображений в форматированном документе. +// +// Возвращаемое значение: +// Структура - результат отправки сообщения. +// * Отправлено - Булево - Если Истина, то сообщение было успешно отправлено. +// * ОписаниеОшибки - Строка - Содержит описание ошибка, если письмо не было отправлено. +// +Функция СформироватьСообщениеИОтправить(Шаблон, Предмет, УникальныйИдентификатор, ДополнительныеПараметры = Неопределено) Экспорт + ПараметрыОтправки = СформироватьПараметрыОтправки(Шаблон, Предмет, УникальныйИдентификатор, ДополнительныеПараметры); + Возврат ШаблоныСообщенийСлужебный.СформироватьСообщениеИОтправить(ПараметрыОтправки); +КонецФункции + +// Заполняет список реквизитов шаблона сообщений на основание макета СКД. +// +// Параметры: +// Реквизиты - ДеревоЗначений - Заполняемый список реквизитов. +// Макет - Макет - Макет СКД. +// +Процедура СформироватьСписокРеквизитовПоСКД(Реквизиты, Макет) Экспорт + ШаблоныСообщенийСлужебный.РеквизитыПоСКД(Реквизиты, Макет); +КонецПроцедуры + +// Создать шаблон сообщения +// +// Параметры: +// Наименование - Строка - Наименование шаблона. +// ПараметрыШаблона - Структура - Параметры шаблона сообщения. +// +// Возвращаемое значение: +// СправочникСсылка.ШаблоныСообщений - Ссылка на созданный шаблон. +// +Функция СоздатьШаблон(Наименование, ПараметрыШаблона) Экспорт + + ПараметрыШаблона.Вставить("Наименование", Наименование); + + Шаблон = Справочники.ШаблоныСообщений.СоздатьЭлемент(); + Шаблон.Заполнить(ПараметрыШаблона); + Шаблон.Записать(); + + Возврат Шаблон.Ссылка; + +КонецФункции + +// Возвращает описание параметров шаблона +// +// Возвращаемое значение: +// Структура - параметры шаблона. +// +Функция ОписаниеПараметровШаблона() Экспорт + + ПараметрыШаблона = ШаблоныСообщенийСлужебный.ОписаниеПараметровШаблона(); + ПараметрыШаблона.Удалить("РазворачиватьСсылочныеРеквизиты"); + + Возврат ПараметрыШаблона; + +КонецФункции + +// Создает подчиненные реквизиты у ссылочного реквизита в дереве значений +// +// Параметры: +// Имя - Строка - Имя ссылочный реквизит в дереве значений у которого необходимо добавить подчиненные реквизиты. +// Узел - КоллекцияСтрокДереваЗначений - Узел в дереве значений для которого необходимо создать дочерние элементы. +// СписокРеквизитов - Строка - список добавляемых реквизитов через запятую, если указано, то будет добавлены только они. +// ИсключаяРеквизиты - Строка - список исключаемых реквизитов через запятую. +// +Процедура РазвернутьРеквизит(Имя, Узел, СписокРеквизитов = "", ИсключаяРеквизиты = "") Экспорт + ШаблоныСообщенийСлужебный.РазвернутьРеквизит(Имя, Узел, СписокРеквизитов, ИсключаяРеквизиты); +КонецПроцедуры + +// Добавляет адреса почты или номера телефонов из контактной информации объекта в список получателей. +// +// Параметры: +// ПолучателиПисьма - ТаблицаЗначений - Список получателей письма или сообщения SMS +// ПредметСообщения - Произвольный - Объект-родитель, у которого есть реквизиты, содержащие контактной информацию. +// ИмяРеквизита - Строка - Имя реквизита в объекте-родителе, из которого следует получить адреса почты или номера телефонов. +// ТипКонтактнойИнформации - ПеречислениеСсылка.ТипыКонтактнойИнформации - Если тип Адрес, то будут добавлены адреса почта, если Телефон, то номера телефонов. +// +Процедура ЗаполнитьПолучателей(ПолучателиПисьма, ПредметСообщения, ИмяРеквизита, ТипКонтактнойИнформации = Неопределено) Экспорт + + Если ТипЗнч(ПредметСообщения) = Тип("Структура") Тогда + Предмет = ПредметСообщения.Предмет; + Иначе + Предмет = ПредметСообщения; + КонецЕсли; + + + Если Предмет.Метаданные().Реквизиты.Найти(ИмяРеквизита) = Неопределено Тогда + Возврат; + КонецЕсли; + + Если ТипКонтактнойИнформации = Неопределено Тогда + ТипКонтактнойИнформации = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты; + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда + МодульУправлениеКонтактнойИнформацией = ОбщегоНазначения.ОбщийМодуль("УправлениеКонтактнойИнформацией"); + + Если Предмет[ИмяРеквизита] = Неопределено Тогда + Возврат; + КонецЕсли; + + ОбъектыКонтактнойИнформации = Новый Массив; + ОбъектыКонтактнойИнформации.Добавить(Предмет[ИмяРеквизита]); + + КонтактнойИнформация = МодульУправлениеКонтактнойИнформацией.КонтактнаяИнформацияОбъектов(ОбъектыКонтактнойИнформации, ТипКонтактнойИнформации); + Для каждого ЭлементКонтактнойИнформации Из КонтактнойИнформация Цикл + Получатель = ПолучателиПисьма.Добавить(); + Если ТипКонтактнойИнформации = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда + Получатель.НомерТелефона = ЭлементКонтактнойИнформации.Представление; + Получатель.Представление = ЭлементКонтактнойИнформации.Представление + " <" + Строка(ЭлементКонтактнойИнформации.Объект) + ">"; + Получатель.Контакт = ОбъектыКонтактнойИнформации[0]; + Иначе + Получатель.Адрес = ЭлементКонтактнойИнформации.Представление; + Получатель.Представление = ЭлементКонтактнойИнформации.Представление + " <" + Строка(ЭлементКонтактнойИнформации.Объект) + ">"; + КонецЕсли; + + КонецЦикла; + КонецЕсли + +КонецПроцедуры + +// Программный интерфейс для внешних обработок. + +// Создает описание таблицы параметров шаблона сообщения. +// +// Возвращаемое значение: +// ТаблицаЗначений - сформированная пустая таблица значений. +// +Функция ТаблицаПараметров() Экспорт + + ПараметрыШаблона = Новый ТаблицаЗначений; + + ПараметрыШаблона.Колонки.Добавить("ИмяПараметра" , Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(50, ДопустимаяДлина.Переменная))); + ПараметрыШаблона.Колонки.Добавить("ОписаниеТипа" , Новый ОписаниеТипов("ОписаниеТипов")); + ПараметрыШаблона.Колонки.Добавить("ЭтоПредопределенныйПараметр" , Новый ОписаниеТипов("Булево")); + ПараметрыШаблона.Колонки.Добавить("ПредставлениеПараметра" , Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(150, ДопустимаяДлина.Переменная))); + + Возврат ПараметрыШаблона; + +КонецФункции + +// Добавить параметр шаблона для внешней обработки. +// +// Параметры: +// ТаблицаПараметров - ТаблицаЗначений - таблица со списком параметров. +// ИмяПараметра - Строка - Имя добавляемого параметра. +// ОписаниеТипа - ОписаниеТипов - Тип параметра. +// ЭтоПредопределенныйПараметр - Булево - Если Истина, то параметр предопределенный. +// ПредставлениеПараметра - Строка - Представление параметра. +// +Процедура ДобавитьПараметрШаблона(ТаблицаПараметров, ИмяПараметра, ОписаниеТипа, ЭтоПредопределенныйПараметр, ПредставлениеПараметра = "") Экспорт + + НоваяСтрока = ТаблицаПараметров.Добавить(); + НоваяСтрока.ИмяПараметра = ИмяПараметра; + НоваяСтрока.ОписаниеТипа = ОписаниеТипа; + НоваяСтрока.ЭтоПредопределенныйПараметр = ЭтоПредопределенныйПараметр; + НоваяСтрока.ПредставлениеПараметра = ?(ПустаяСтрока(ПредставлениеПараметра),ИмяПараметра, ПредставлениеПараметра); + +КонецПроцедуры + +// Инициализирует структуру Получатели для заполнения возможных получателей сообщения. +// +// Возвращаемое значение: +// Структура - созданная структура. +// +Функция ИнициализироватьСтруктуруПолучатели() Экспорт + + Возврат Новый Структура("Получатель", Новый Массив); + +КонецФункции + +// Инициализирует структуру сообщения по шаблону, которую должна вернуть внешняя обработка. +// +// Возвращаемое значение: +// Структура - созданная структура. +// +Функция ИнициализироватьСтруктуруСообщения() Экспорт + + СтруктураСообщения = Новый Структура; + СтруктураСообщения.Вставить("ТекстСообщенияSMS", ""); + СтруктураСообщения.Вставить("ТемаПисьма", ""); + СтруктураСообщения.Вставить("ТекстПисьма", ""); + СтруктураСообщения.Вставить("СтруктураВложений", Новый Структура); + СтруктураСообщения.Вставить("ТекстПисьмаHTML", "<HTML></HTML>"); + + Возврат СтруктураСообщения; + +КонецФункции + +// Обратная совместимость. + +// Подставляет в шаблон значения параметров сообщения и формирует текст сообщения. +// +// Параметры: +// ШаблонСтроки - Строка - Шаблон, в который будут подставляться значения, согласно таблице параметров. +// ВставляемыеЗначения - Соответствие - Соответствие, содержащая ключи параметров и значения параметров. +// Префикс - Строка - Префикс параметра. +// +// Возвращаемое значение: +// Строка - строка, в которую были подставлены значения параметров шаблона. +// +Функция ВставитьПараметрыВСтрокуСогласноТаблицеПараметров(Знач ШаблонСтроки, ВставляемыеЗначения, Знач Префикс = "") Экспорт + Возврат ШаблоныСообщенийСлужебный.ВставитьПараметрыВСтрокуСогласноТаблицеПараметров(ШаблонСтроки, ВставляемыеЗначения, Префикс); +КонецФункции + +// Возвращает соответствие параметров текста сообщения шаблона. +// +// Параметры: +// ПараметрыШаблона - Структура - Сведения о шаблоне. +// +// Возвращаемое значение: +// Соответствие - соответствие имеющихся в тексте сообщения параметров. +// +Функция ПараметрыИзТекстаСообщения(ПараметрыШаблона) Экспорт + Возврат ШаблоныСообщенийСлужебный.ПараметрыИзТекстаСообщения(ПараметрыШаблона); +КонецФункции + +// Возвращает сведения о шаблоне сообщения. +// +// Параметры: +// Шаблон - ДанныеФормыСтруктура, СправочникСсылка.ШаблоныСообщений - Шаблон сообщения. +// +// Возвращаемое значение: +// Структура - Сведения о шаблоне. +// +Функция ПараметрыШаблона(Шаблон) Экспорт + Возврат ШаблоныСообщенийСлужебный.ПараметрыШаблона(Шаблон); +КонецФункции + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +// Заполняет список реквизитов шаблона сообщений на основание макета СКД. +// +// Параметры: +// Реквизиты - Соответствие - Список реквизитов. +// Предмет - Произвольный - Ссылка на объект основания для шаблона сообщений. +// ПараметрыШаблона - Структура - Список параметров шаблона. см функцию ПараметрыШаблона. +// +Процедура ЗаполнитьРеквизитыПоСКД(Реквизиты, Предмет, ПараметрыШаблона) Экспорт + ШаблоныСообщенийСлужебный.ЗаполнитьРеквизитыПоСКД(Реквизиты, Предмет, ПараметрыШаблона); +КонецПроцедуры + +Функция СформироватьПараметрыОтправки(Шаблон, Предмет, УникальныйИдентификатор, ДополнительныеПараметры = Неопределено) + + ПараметрыОтправки = Новый Структура(); + ПараметрыОтправки.Вставить("Шаблон", Шаблон); + ПараметрыОтправки.Вставить("Предмет", Предмет); + ПараметрыОтправки.Вставить("УникальныйИдентификатор", УникальныйИдентификатор); + Если ДополнительныеПараметры = Неопределено Тогда + ДополнительныеПараметры = Новый Структура; + КонецЕсли; + + Если НЕ ДополнительныеПараметры.Свойство("ПреобразовыватьHTMLДляФорматированногоДокумента") + Или ТипЗнч(ДополнительныеПараметры.ПреобразовыватьHTMLДляФорматированногоДокумента) <> Тип("Булево") Тогда + ДополнительныеПараметры.Вставить("ПреобразовыватьHTMLДляФорматированногоДокумента", Ложь); + КонецЕсли; + ПараметрыОтправки.Вставить("ДополнительныеПараметры", ДополнительныеПараметры); + Возврат ПараметрыОтправки; + +КонецФункции + +#КонецОбласти + diff --git a/SSL/src/CommonModules/ШаблоныСообщений/ШаблоныСообщений.mdo b/SSL/src/CommonModules/ШаблоныСообщений/ШаблоныСообщений.mdo new file mode 100644 index 000000000..158b34eb1 --- /dev/null +++ b/SSL/src/CommonModules/ШаблоныСообщений/ШаблоныСообщений.mdo @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="439129dd-ad00-484c-b84a-fb325af979ed"> + <name>ШаблоныСообщений</name> + <synonym> + <key>ru</key> + <value>Шаблоны сообщений</value> + </synonym> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ШаблоныСообщенийКлиент/Module.bsl b/SSL/src/CommonModules/ШаблоныСообщенийКлиент/Module.bsl new file mode 100644 index 000000000..6dae2b3f9 --- /dev/null +++ b/SSL/src/CommonModules/ШаблоныСообщенийКлиент/Module.bsl @@ -0,0 +1,30 @@ +#Область ПрограммныйИнтерфейс + +// Открывает форму для выбора шаблона. +// +// Параметры: +// Оповещение - ОписаниеОповещения - оповещение, которое будет вызвано после выбора шаблона с готовым сообщением. +// +Процедура ВыбратьШаблон(Оповещение) Экспорт + + ДополнительныеПараметры = Новый Структура("Оповещение", Оповещение); + ПараметрыФормы = Новый Структура("Назначение, РежимВыбора, ВидСообщения", "Общий", Истина, "ЭлектронноеПисьмо"); + Оповещение = Новый ОписаниеОповещения("ЗаполнитьПоШаблонуПослеВыбораШаблона", ЭтотОбъект, ДополнительныеПараметры); + ОткрытьФорму("Справочник.ШаблоныСообщений.Форма.СформироватьСообщение", ПараметрыФормы, ЭтотОбъект,,,, Оповещение); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +Процедура ЗаполнитьПоШаблонуПослеВыбораШаблона(Результат, ДополнительныеПараметры) Экспорт + Если Результат <> Неопределено Тогда + ВыполнитьОбработкуОповещения(ДополнительныеПараметры.Оповещение, Результат); + КонецЕсли; +КонецПроцедуры + +#КонецОбласти + + + diff --git a/SSL/src/CommonModules/ОбновлениеКонфигурацииКлиентПереопределяемый/ОбновлениеКонфигурацииКлиентПереопределяемый.mdo b/SSL/src/CommonModules/ШаблоныСообщенийКлиент/ШаблоныСообщенийКлиент.mdo similarity index 51% rename from SSL/src/CommonModules/ОбновлениеКонфигурацииКлиентПереопределяемый/ОбновлениеКонфигурацииКлиентПереопределяемый.mdo rename to SSL/src/CommonModules/ШаблоныСообщенийКлиент/ШаблоныСообщенийКлиент.mdo index 5ff7de6b3..69e300e08 100644 --- a/SSL/src/CommonModules/ОбновлениеКонфигурацииКлиентПереопределяемый/ОбновлениеКонфигурацииКлиентПереопределяемый.mdo +++ b/SSL/src/CommonModules/ШаблоныСообщенийКлиент/ШаблоныСообщенийКлиент.mdo @@ -1,9 +1,9 @@ <?xml version="1.0" encoding="UTF-8"?> -<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="247c41dd-c8dc-43dd-b348-1ba31ee92065"> - <name>ОбновлениеКонфигурацииКлиентПереопределяемый</name> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="dcae6376-f44c-421e-87f2-df83413c021e"> + <name>ШаблоныСообщенийКлиент</name> <synonym> <key>ru</key> - <value>Обновление конфигурации клиент переопределяемый</value> + <value>Шаблоны сообщений клиент</value> </synonym> <clientManagedApplication>true</clientManagedApplication> <clientOrdinaryApplication>true</clientOrdinaryApplication> diff --git a/SSL/src/CommonModules/ШаблоныСообщенийКлиентСервер/Module.bsl b/SSL/src/CommonModules/ШаблоныСообщенийКлиентСервер/Module.bsl new file mode 100644 index 000000000..5e8f384c3 --- /dev/null +++ b/SSL/src/CommonModules/ШаблоныСообщенийКлиентСервер/Module.bsl @@ -0,0 +1,61 @@ +#Область ПрограммныйИнтерфейс + +// Описывает параметр шаблона для использования их в внешних обработках. +// +// Параметры: +// ТаблицаПараметров - ТаблицаЗначений - Таблица с параметрами. +// ИмяПараметра - Строка - Имя используемого параметра. +// ОписаниеТипа - ОписаниеТипов - Тип параметра. +// ЭтоПредопределенныйПараметр - Булево - Если Ложь, то это произвольный параметр, иначе основной. +// ПредставлениеПараметра - Строка - Выводимое представление параметра. +// +Процедура ДобавитьПараметрШаблона(ТаблицаПараметров, ИмяПараметра, ОписаниеТипа, ЭтоПредопределенныйПараметр, ПредставлениеПараметра = "") Экспорт + + НоваяСтрока = ТаблицаПараметров.Добавить(); + НоваяСтрока.ИмяПараметра = ИмяПараметра; + НоваяСтрока.ОписаниеТипа = ОписаниеТипа; + НоваяСтрока.ЭтоПредопределенныйПараметр = ЭтоПредопределенныйПараметр; + НоваяСтрока.ПредставлениеПараметра = ?(ПустаяСтрока(ПредставлениеПараметра),ИмяПараметра, ПредставлениеПараметра); + +КонецПроцедуры + +// Инициализирует структуру сообщения по шаблону, которую должна вернуть внешняя обработка. +// +// Возвращаемое значение: +// Структура - созданная структура. +// +Функция ИнициализироватьСтруктуруСообщения() Экспорт + + СтруктураСообщения = Новый Структура; + СтруктураСообщения.Вставить("ТекстСообщенияSMS", ""); + СтруктураСообщения.Вставить("ТемаПисьма", ""); + СтруктураСообщения.Вставить("ТекстПисьма", ""); + СтруктураСообщения.Вставить("СтруктураВложений", Новый Структура); + СтруктураСообщения.Вставить("ТекстПисьмаHTML", "<HTML></HTML>"); + + Возврат СтруктураСообщения; + +КонецФункции + +// Инициализирует структуру Получатели для заполнения возможных получателей сообщения. +// +// Возвращаемое значение: +// Структура - созданная структура. +// +Функция ИнициализироватьСтруктуруПолучатели() Экспорт + + Возврат Новый Структура("Получатель", Новый Массив); + +КонецФункции + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + + +Функция ЗаголовокПроизвольныхПараметров() Экспорт + Возврат НСтр("ru = 'Произвольные'"); +КонецФункции + + +#КонецОбласти diff --git a/SSL/src/CommonModules/ШаблоныСообщенийКлиентСервер/ШаблоныСообщенийКлиентСервер.mdo b/SSL/src/CommonModules/ШаблоныСообщенийКлиентСервер/ШаблоныСообщенийКлиентСервер.mdo new file mode 100644 index 000000000..a67e7bbea --- /dev/null +++ b/SSL/src/CommonModules/ШаблоныСообщенийКлиентСервер/ШаблоныСообщенийКлиентСервер.mdo @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="dbdcdcab-4cd5-44af-b52c-6ce14a26ca9c"> + <name>ШаблоныСообщенийКлиентСервер</name> + <synonym> + <key>ru</key> + <value>Шаблоны сообщений клиент сервер</value> + </synonym> + <clientManagedApplication>true</clientManagedApplication> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ШаблоныСообщенийПереопределяемый/Module.bsl b/SSL/src/CommonModules/ШаблоныСообщенийПереопределяемый/Module.bsl new file mode 100644 index 000000000..86ab4d5d9 --- /dev/null +++ b/SSL/src/CommonModules/ШаблоныСообщенийПереопределяемый/Module.bsl @@ -0,0 +1,110 @@ + +#Область ПрограммныйИнтерфейс + +// Определяет состав назначений и общие реквизиты в шаблонах сообщений +// +// Параметры: +// Настройки - Структура - Структура с ключами: +// * ПредметыШаблонов - ТаблицаЗначений - Содержит варианты предметов для шаблонов. Колонки: +// ** Имя - Строка - Уникальное имя назначения. +// ** Представление - Строка - Представление варианта. +// ** Макет - Строка - Имя макета СКД, если состав реквизитов определяется посредством СКД. +// ** ЗначенияПараметровСКД - Структура - Значения параметров СКД для текущего предмета шаблона сообщения. +// * ОбщиеРеквизиты - ТаблицаЗначений - Содержит описание общих реквизитов доступных во всех шаблонах. Колонки: +// ** Имя - Строка - Уникальное имя общего реквизита. +// ** Представление - Строка - Представление общего реквизита. +// ** Тип - Тип - Тип общего реквизита. По умолчанию строка. +// * ИспользоватьПроизвольныеПараметры - Булево - указывает, можно ли использовать произвольные пользовательские параметры в шаблонах сообщений. +// * ЗначенияПараметровСКД - Структура - Общие значения параметров СКД, для всех макетов, где состав реквизитов определяется средствами СКД. +// +Процедура ПриОпределенииНастроек(Настройки) Экспорт + + + +КонецПроцедуры + +// Вызывается при подготовке шаблонов сообщений и позволяет переопределить список реквизитов и вложений. +// +// Параметры: +// Реквизиты - ДеревоЗначений - список реквизитов шаблона. +// ** Имя - Строка - Уникальное имя общего реквизита. +// ** Представление - Строка - Представление общего реквизита. +// ** Тип - Тип - Тип реквизита. По умолчанию строка. +// ** Подсказка - Строка - Расширенная информация о реквизите. +// ** Формат - Строка - Формат вывода значения для чисел, дат, строк и булевых значений. +// Вложения - ТаблицаЗначений - печатные формы и вложения +// ** Имя - Строка - Уникальное имя вложения. +// ** Представление - Строка - Представление варианта. +// ** Подсказка - Строка - Расширенная информация о вложении. +// ** ТипФайла - Строка - Тип вложения, который соответствует расширению файла: "pdf", "png", "jpg", mxl" и др. +// НазначениеШаблона - Строка - Имя назначения шаблон сообщения. +// ДополнительныеПараметры - Структура - дополнительные сведения о шаблоне сообщений. +// +Процедура ПриПодготовкеШаблонаСообщения(Реквизиты, Вложения, НазначениеШаблона, ДополнительныеПараметры) Экспорт + + + +КонецПроцедуры + +// Вызывается в момент создания сообщений по шаблону для заполнения значений реквизитов и вложений. +// +// Параметры: +// Сообщение - Структура - структура с ключами: +// * ЗначенияРеквизитов - Соответствие - список используемых в шаблоне реквизитов. +// ** Ключ - Строка - имя реквизита в шаблоне; +// ** Значение - Строка - значение заполнения в шаблоне. +// * ЗначенияОбщихРеквизитов - Соответствие - список используемых в шаблоне общих реквизитов. +// ** Ключ - Строка - имя реквизита в шаблоне; +// ** Значение - Строка - значение заполнения в шаблоне. +// * Вложения - Соответствие - значения реквизитов +// ** Ключ - Строка - имя вложения в шаблоне; +// ** Значение - ДвоичныеДанные, Строка - двоичные данные или адрес во временном хранилище вложения. +// * ДополнительныеПараметры - Структура - Дополнительные параметры сообщения. +// НазначениеШаблона - Строка - полное имя назначения шаблон сообщения. +// ПредметСообщения - ЛюбаяСсылка - ссылка на объект являющийся источником данных. +// ПараметрыШаблона - Структура - Дополнительная информация о шаблоне сообщения. +// +Процедура ПриФормированииСообщения(Сообщение, НазначениеШаблона, ПредметСообщения, ПараметрыШаблона) Экспорт + + + +КонецПроцедуры + +// Заполняет список получателей SMS при отправке сообщения сформированного по шаблону. +// +// Параметры: +// ПолучателиSMS - ТаблицаЗначений - список получается SMS. +// * НомерТелефона - Строка - номер телефона, куда будет отправлено сообщение SMS. +// * Представление - Строка - представление получателя сообщения SMS. +// * Контакт - Произвольный - контакт, которому принадлежит номер телефона. +// НазначениеШаблона - Строка - идентификатор назначения шаблона +// ПредметСообщения - ЛюбаяСсылка, Структура - ссылка на объект являющийся источником данных, либо структура, +// если шаблон содержит произвольные параметры: +// * Предмет - ЛюбаяСсылка - ссылка на объект являющийся источником данных +// * ПроизвольныеПараметры - Соответствие - заполненный список произвольных параметров. +// +Процедура ПриЗаполненииТелефоновПолучателейВСообщении(ПолучателиSMS, НазначениеШаблона, ПредметСообщения) Экспорт + +КонецПроцедуры + +// Заполняет список получателей почты при отправки сообщения сформированного по шаблону. +// +// Параметры: +// ПолучателиПисьма - ТаблицаЗначений - список получается письма. +// * Адрес - Строка - адрес электронной почты получателя. +// * Представление - Строка - представление получается письма. +// * Контакт - Произвольный - контакт, которому принадлежит адрес электронной почты. +// НазначениеШаблона - Строка - идентификатор назначения шаблона +// ПредметСообщения - ЛюбаяСсылка, Структура - ссылка на объект являющийся источником данных, либо структура, +// если шаблон содержит произвольные параметры: +// * Предмет - ЛюбаяСсылка - ссылка на объект являющийся источником данных +// * ПроизвольныеПараметры - Соответствие - заполненный список произвольных параметров. +// +Процедура ПриЗаполненииПочтыПолучателейВСообщении(ПолучателиПисьма, НазначениеШаблона, ПредметСообщения) Экспорт + + + +КонецПроцедуры + +#КонецОбласти + diff --git a/SSL/src/CommonModules/ШаблоныСообщенийПереопределяемый/ШаблоныСообщенийПереопределяемый.mdo b/SSL/src/CommonModules/ШаблоныСообщенийПереопределяемый/ШаблоныСообщенийПереопределяемый.mdo new file mode 100644 index 000000000..5d063ed31 --- /dev/null +++ b/SSL/src/CommonModules/ШаблоныСообщенийПереопределяемый/ШаблоныСообщенийПереопределяемый.mdo @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="151f2d0a-cc43-490d-ad7d-71390703aa72"> + <name>ШаблоныСообщенийПереопределяемый</name> + <synonym> + <key>ru</key> + <value>Шаблоны сообщений переопределяемый</value> + </synonym> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ШаблоныСообщенийСервер/Module.bsl b/SSL/src/CommonModules/ШаблоныСообщенийСервер/Module.bsl new file mode 100644 index 000000000..9e43cd88b --- /dev/null +++ b/SSL/src/CommonModules/ШаблоныСообщенийСервер/Module.bsl @@ -0,0 +1,24 @@ + +#Область ПрограммныйИнтерфейс + + +// Обратная совместимость. +// Создает описание таблицы параметров шаблона сообщения. +// +// Возвращаемое значение: +// ТаблицаЗначений - сформированная пустая таблица значений. +// +Функция ТаблицаПараметров() Экспорт + + ПараметрыШаблона = Новый ТаблицаЗначений; + + ПараметрыШаблона.Колонки.Добавить("ИмяПараметра" , Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(50, ДопустимаяДлина.Переменная))); + ПараметрыШаблона.Колонки.Добавить("ОписаниеТипа" , Новый ОписаниеТипов("ОписаниеТипов")); + ПараметрыШаблона.Колонки.Добавить("ЭтоПредопределенныйПараметр" , Новый ОписаниеТипов("Булево")); + ПараметрыШаблона.Колонки.Добавить("ПредставлениеПараметра" , Новый ОписаниеТипов("Строка", , Новый КвалификаторыСтроки(150, ДопустимаяДлина.Переменная))); + + Возврат ПараметрыШаблона; + +КонецФункции + +#КонецОбласти diff --git a/SSL/src/CommonModules/ШаблоныСообщенийСервер/ШаблоныСообщенийСервер.mdo b/SSL/src/CommonModules/ШаблоныСообщенийСервер/ШаблоныСообщенийСервер.mdo new file mode 100644 index 000000000..cd2913843 --- /dev/null +++ b/SSL/src/CommonModules/ШаблоныСообщенийСервер/ШаблоныСообщенийСервер.mdo @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="2a515a4f-683b-4674-b097-62dd2d940c39"> + <name>ШаблоныСообщенийСервер</name> + <synonym> + <key>ru</key> + <value>Шаблоны сообщений сервер</value> + </synonym> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ШаблоныСообщенийСлужебный/Module.bsl b/SSL/src/CommonModules/ШаблоныСообщенийСлужебный/Module.bsl new file mode 100644 index 000000000..7ea1647ee --- /dev/null +++ b/SSL/src/CommonModules/ШаблоныСообщенийСлужебный/Module.bsl @@ -0,0 +1,2032 @@ +#Область СлужебныйПрограммныйИнтерфейс + +// Создание сообщения по шаблону + +Функция СформироватьСообщение(ПараметрыОтправки) Экспорт + + Если ПараметрыОтправки.Шаблон = Справочники.ШаблоныСообщений.ПустаяСсылка() Тогда + Возврат СообщениеБезШаблона(ПараметрыОтправки); + КонецЕсли; + + ПараметрыШаблона = ПараметрыШаблона(ПараметрыОтправки.Шаблон); + Если ПараметрыОтправки.Шаблон = Неопределено Тогда + Если ПараметрыОтправки.Свойство("ДополнительныеПараметры") + И ПараметрыОтправки.ДополнительныеПараметры.Свойство("ВидСообщения") Тогда + ПараметрыШаблона.ТипШаблона = ПараметрыОтправки.ДополнительныеПараметры.ВидСообщения; + КонецЕсли; + КонецЕсли; + + МенеджерОбъекта = Неопределено; + СведенияОШаблоне = Неопределено; + Если ПараметрыОтправки.Предмет <> Неопределено Тогда + СведенияОШаблоне = СведенияОШаблоне(ПараметрыШаблона); + КонецЕсли; + Если ЗначениеЗаполнено(ПараметрыШаблона.ПолноеИмяТипаНазначения) Тогда + МетаданныеОбъекта = Метаданные.НайтиПоПолномуИмени(ПараметрыШаблона.ПолноеИмяТипаНазначения); + Если МетаданныеОбъекта <> Неопределено Тогда + МенеджерОбъекта = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ПараметрыШаблона.ПолноеИмяТипаНазначения); + КонецЕсли; + КонецЕсли; + + СформированноеСообщение = КонструкторСообщения(ПараметрыШаблона); + Если ПараметрыШаблона = Неопределено Тогда + Возврат СформированноеСообщение; + КонецЕсли; + + Если ПараметрыШаблона.ШаблонПоВнешнейОбработке Тогда + Возврат СформироватьСообщениеВнешнейОбработкой(ПараметрыШаблона, СведенияОШаблоне, ПараметрыОтправки); + КонецЕсли; + + // Извлекаем из шаблона параметры + ПараметрыТекстаСообщения = ПараметрыИзТекстаСообщения(ПараметрыШаблона); + + // Заполняем параметры + Сообщение = ЗаполнитьПараметрыСообщения(ПараметрыШаблона, ПараметрыТекстаСообщения, ПараметрыОтправки); + Сообщение.ДополнительныеПараметры = ПараметрыОтправки.ДополнительныеПараметры; + + // Вложения + Если ПараметрыШаблона.ТипШаблона = "Письмо" И СведенияОШаблоне <> Неопределено Тогда + ДобавитьВыбранныеПечатныеФормыВоВложения(ПараметрыОтправки, СведенияОШаблоне, Сообщение.Вложения, ПараметрыШаблона); + КонецЕсли; + ДобавитьПрисоединенныеФайлыВоВложения(ПараметрыОтправки, Сообщение); + + ШаблоныСообщенийПереопределяемый.ПриФормированииСообщения(Сообщение, ПараметрыШаблона.ПолноеИмяТипаНазначения, ПараметрыОтправки.Предмет, ПараметрыШаблона); + Если МенеджерОбъекта <> Неопределено Тогда + МенеджерОбъекта.ПриФормированииСообщения(Сообщение, ПараметрыОтправки.Предмет, ПараметрыШаблона); + КонецЕсли; + + // Заполнение значений параметров + СообщениеРезультат = УстановитьЗначенияРеквизитовВТекстСообщения(ПараметрыШаблона, ПараметрыТекстаСообщения, ПараметрыОтправки.Предмет); + + СформированноеСообщение.Тема = СообщениеРезультат.Тема; + СформированноеСообщение.Текст = СообщениеРезультат.Текст; + + Для каждого Вложение Из Сообщение.Вложения Цикл + НовоеВложение = СформированноеСообщение.Вложения.Добавить(); + НовоеВложение.Представление = Вложение.Ключ; + НовоеВложение.АдресВоВременномХранилище = Вложение.Значение; + КонецЦикла; + + Если ПараметрыШаблона.ТипШаблона = "Письмо" И ПараметрыШаблона.ФорматПисьма = Перечисления.СпособыРедактированияЭлектронныхПисем.HTML Тогда + ОбработатьHTMLДляФорматированногоДокумента(ПараметрыОтправки, СформированноеСообщение, ПараметрыОтправки.ДополнительныеПараметры.ПреобразовыватьHTMLДляФорматированногоДокумента); + КонецЕсли; + + ЗаполнитьПолучателейСообщения(ПараметрыОтправки, ПараметрыШаблона, СформированноеСообщение, МенеджерОбъекта); + СформированноеСообщение.СообщенияПользователю = ПолучитьСообщенияПользователю(Истина); + + Возврат СформированноеСообщение; + +КонецФункции + +Функция СформироватьСообщениеИОтправить(ПараметрыОтправки) Экспорт + + Результат = Новый Структура("Отправлено, ОписаниеОшибки", Ложь); + + Если ПараметрыОтправки.Шаблон.ПредназначенДляSMS Тогда + Сообщение = СформироватьСообщение(ПараметрыОтправки); + Если Сообщение.Получатель.Количество() = 0 Тогда + Результат.ОписаниеОшибки = НСтр("ru = 'Для отправки сообщения необходимо ввести номер телефонов получателей.'"); + Возврат Результат; + КонецЕсли; + НомераПолучателей = Новый Массив; + Для каждого Получатель Из Сообщение.Получатель Цикл + НомераПолучателей.Добавить(Получатель.Значение); + КонецЦикла; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОтправкаSMS") Тогда + МодульОтправкаSMS = ОбщегоНазначения.ОбщийМодуль("ОтправкаSMS"); + Если МодульОтправкаSMS.ДоступнаОтправкаSMS() Тогда + РезультатОтправкаSMS = МодульОтправкаSMS.ОтправитьSMS(НомераПолучателей, Сообщение.Текст, Сообщение.ДополнительныеПараметры.Отправитель, Сообщение.ДополнительныеПараметры.ПеревестиВТранслит); + Результат.Отправлено = ПустаяСтрока(РезультатОтправкаSMS .ОписаниеОшибки); + Результат.ОписаниеОшибки = РезультатОтправкаSMS.ОписаниеОшибки; + Иначе + Результат.ОписаниеОшибки = НСтр("ru = 'Сообщение SMS не может быть отправлено сразу.'"); + КонецЕсли; + Возврат Результат; + КонецЕсли; + Иначе + Сообщение = СформироватьСообщение(ПараметрыОтправки); + Если Сообщение.Получатель.Количество() = 0 Тогда + Результат.ОписаниеОшибки = НСтр("ru = 'Сообщение не может быть отправлено сразу, т.к необходимо ввести адрес электронной почты.'"); + Возврат Результат; + КонецЕсли; + ПараметрыПисьма = Новый Структура(); + ПараметрыПисьма.Вставить("Тема", Сообщение.Тема); + ПараметрыПисьма.Вставить("Вложения", Новый Соответствие); + Для каждого Вложение Из Сообщение.Вложения Цикл + НовоеВложение = Новый Структура("ДвоичныеДанные, Идентификатор"); + НовоеВложение.ДвоичныеДанные = ПолучитьИзВременногоХранилища(Вложение.АдресВоВременномХранилище); + НовоеВложение.Идентификатор = Вложение.Идентификатор; + ПараметрыПисьма.Вложения.Вставить(Вложение.Представление, НовоеВложение); + КонецЦикла; + ПараметрыПисьма.Вставить("Тело", Сообщение.Текст); + + ПараметрыПисьма.Вставить("Кодировка", "utf-8"); + Если Сообщение.ДополнительныеПараметры.ФорматПисьма = Перечисления.СпособыРедактированияЭлектронныхПисем.HTML Тогда + ТипТекста = Перечисления.ТипыТекстовЭлектронныхПисем.HTMLСКартинками; + Иначе + ТипТекста = Перечисления.ТипыТекстовЭлектронныхПисем.ПростойТекст; + КонецЕсли; + ПараметрыПисьма.Вставить("ТипТекста", ТипТекста); + Кому = Новый Массив; + Для каждого Получатель Из Сообщение.Получатель Цикл + ПолучательСообщения = Новый Структура(); + ПолучательСообщения.Вставить("Адрес", Получатель.Значение); + ПолучательСообщения.Вставить("Представление", Получатель.Представление); + Кому.Добавить(ПолучательСообщения); + КонецЦикла; + ПараметрыПисьма.Вставить("Кому", Кому); + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСПочтовымиСообщениями") Тогда + МодульРаботаСПочтовымиСообщениями = ОбщегоНазначения.ОбщийМодуль("РаботаСПочтовымиСообщениями"); + Если МодульРаботаСПочтовымиСообщениями.ДоступнаОтправкаПисем() Тогда + УчетнаяЗапись = МодульРаботаСПочтовымиСообщениями.СистемнаяУчетнаяЗапись(); + МодульРаботаСПочтовымиСообщениями.ОтправитьПочтовоеСообщение(УчетнаяЗапись, ПараметрыПисьма); + Результат.Отправлено = Истина; + Иначе + Результат.ОписаниеОшибки = НСтр("ru = 'Сообщение не может быть отправлено сразу.'"); + Возврат Результат; + КонецЕсли; + КонецЕсли + КонецЕсли; + + Возврат Результат; + +КонецФункции + +Функция ЕстьДоступныеШаблоны(ТипШаблона, Предмет = Неопределено) Экспорт + Запрос = ПодготовитьЗапросДляПолученияСпискаШаблонов(ТипШаблона, Предмет); + Возврат НЕ Запрос.Выполнить().Пустой(); +КонецФункции + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +Функция КонструкторСообщения(ПараметрыШаблона = Неопределено) Экспорт + + Сообщение = Новый Структура(); + Сообщение.Вставить("Тема", ""); + Сообщение.Вставить("Текст", ""); + Сообщение.Вставить("Получатель", Новый СписокЗначений); + Сообщение.Вставить("ДополнительныеПараметры", + ?(ПараметрыШаблона <> Неопределено, ПараметрыШаблона, Новый Структура())); + Сообщение.Вставить("СообщенияПользователю"); + + ТипСтрока = Новый ОписаниеТипов("Строка"); + Вложения = Новый ТаблицаЗначений; + Вложения.Колонки.Добавить("Представление", ТипСтрока); + Вложения.Колонки.Добавить("АдресВоВременномХранилище", ТипСтрока); + Вложения.Колонки.Добавить("Кодировка", ТипСтрока); + Вложения.Колонки.Добавить("Идентификатор", ТипСтрока); + Сообщение.Вставить("Вложения", Вложения); + + Если ПараметрыШаблона <> Неопределено Тогда + ЗаполнитьЗначенияСвойств(Сообщение, ПараметрыШаблона); + КонецЕсли; + + Возврат Сообщение; +КонецФункции + +Функция СведенияОШаблоне(ПараметрыШаблона) Экспорт + + СведенияОШаблоне = Новый Структура("Реквизиты, ОбщиеРеквизиты, Вложения, Назначение"); + СведенияОШаблоне.Реквизиты = ДеревоРеквизитов(); + СведенияОШаблоне.Вложения = ТаблицаВложений(); + + НастройкиШаблоновСообщений = ПриОпределенииНастроек(); + СведенияОШаблоне.ОбщиеРеквизиты = НастройкиШаблоновСообщений.ОбщиеРеквизиты; + ИмяУзлаОбщихРеквизитов = ИмяУзлаОбщихРеквизитов(); + Если ТипЗнч(СведенияОШаблоне.ОбщиеРеквизиты) = Тип("ДеревоЗначений") Тогда + Для каждого ОбщийРеквизит Из ОбщиеРеквизиты(СведенияОШаблоне.ОбщиеРеквизиты).Строки Цикл + Если Не СтрНачинаетсяС(ОбщийРеквизит.Имя, ИмяУзлаОбщихРеквизитов + ".") Тогда + ОбщийРеквизит.Имя = ИмяУзлаОбщихРеквизитов + "." + ОбщийРеквизит.Имя; + КонецЕсли; + КонецЦикла; + Иначе + СведенияОШаблоне.ОбщиеРеквизиты = ДеревоРеквизитов(); + ОбщиеРеквизитыДерево = ОпределитьОбщиеРеквизиты(); + СведенияОШаблоне.ОбщиеРеквизиты = ОбщиеРеквизиты(ОбщиеРеквизитыДерево); + КонецЕсли; + + ОпределитьСписокРеквизитовИВложений(СведенияОШаблоне, ПараметрыШаблона); + + Возврат СведенияОШаблоне; +КонецФункции + +Процедура ОпределитьСписокРеквизитовИВложений(СведенияОШаблоне, ПараметрыШаблона) + + Если ЗначениеЗаполнено(ПараметрыШаблона.ПолноеИмяТипаНазначения) Тогда + // Реквизиты + МетаданныеОбъект = Метаданные.НайтиПоПолномуИмени(ПараметрыШаблона.ПолноеИмяТипаНазначения); + РеквизитыОбъектаНазначения = РеквизитыОбъектаНазначения(СведенияОШаблоне.Реквизиты, ПараметрыШаблона.ПолноеИмяТипаНазначения, ПараметрыШаблона.Назначение); + + Если МетаданныеОбъект <> Неопределено Тогда + МенеджерОбъекта = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(МетаданныеОбъект.ПолноеИмя()); + Если ПустаяСтрока(ПараметрыШаблона.Макет) Тогда + РеквизитыПоМетаданнымОбъекта(РеквизитыОбъектаНазначения, МетаданныеОбъект,,, МетаданныеОбъект.Имя + "."); + Иначе + МакетСКД = МенеджерОбъекта.ПолучитьМакет(ПараметрыШаблона.Макет); + РеквизитыПоСКД(РеквизитыОбъектаНазначения, МакетСКД, МетаданныеОбъект.Имя); + КонецЕсли; + + ОпределитьСписокПечатныхФорм(МетаданныеОбъект, СведенияОШаблоне); + КонецЕсли; + + ШаблоныСообщенийПереопределяемый.ПриПодготовкеШаблонаСообщения(РеквизитыОбъектаНазначения, СведенияОШаблоне.Вложения, ПараметрыШаблона.ПолноеИмяТипаНазначения, ПараметрыШаблона); + + Если МетаданныеОбъект <> Неопределено Тогда + МенеджерОбъекта.ПриПодготовкеШаблонаСообщения(РеквизитыОбъектаНазначения, СведенияОШаблоне.Вложения, ПараметрыШаблона); + Префикс = МетаданныеОбъект.Имя + "."; + Представление = МетаданныеОбъект.Представление(); + Иначе + Префикс = ПараметрыШаблона.ПолноеИмяТипаНазначения +"."; + Представление = ПараметрыШаблона.Назначение + КонецЕсли; + + Для каждого РеквизитОбъектаНазначения Из РеквизитыОбъектаНазначения Цикл + Если Не СтрНачинаетсяС(РеквизитОбъектаНазначения.Имя, Префикс) Тогда + РеквизитОбъектаНазначения.Имя = Префикс + РеквизитОбъектаНазначения.Имя; + КонецЕсли; + Если ПараметрыШаблона.РазворачиватьСсылочныеРеквизиты Тогда + Если РеквизитОбъектаНазначения.Тип.Типы().Количество() = 1 Тогда + ТипОбъекта = Метаданные.НайтиПоТипу(РеквизитОбъектаНазначения.Тип.Типы()[0]); + Если ТипОбъекта <> Неопределено И СтрНачинаетсяС(ТипОбъекта.ПолноеИмя(), "Справочник") Тогда + РазвернутьРеквизит(РеквизитОбъектаНазначения.Имя, РеквизитыОбъектаНазначения); + КонецЕсли; + КонецЕсли; + КонецЕсли; + КонецЦикла; + + СсылкаНаОбъект = РеквизитыОбъектаНазначения.Добавить(); + СсылкаНаОбъект.Представление = НСтр("ru = 'Ссылка на'") + " """ + Представление + """"; + СсылкаНаОбъект.Имя = Префикс + "ВнешняяСсылкаНаОбъект"; + СсылкаНаОбъект.Тип = Новый ОписаниеТипов("Строка"); + КонецЕсли; + + Для каждого ПроизвольныйПараметр Из ПараметрыШаблона.Параметры Цикл + + Если ПроизвольныйПараметр.Значение.ОписаниеТипа.Типы().Количество() > 0 Тогда + Тип = ПроизвольныйПараметр.Значение.ОписаниеТипа.Типы()[0]; + МетаданныеОбъект = Метаданные.НайтиПоТипу(Тип); + Если МетаданныеОбъект <> Неопределено Тогда + МенеджерОбъекта = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(МетаданныеОбъект.ПолноеИмя()); + Если МенеджерОбъекта <> Неопределено Тогда + РеквизитыОбъектаНазначения = РеквизитыОбъектаНазначения(СведенияОШаблоне.Реквизиты, ПроизвольныйПараметр.Ключ); + РеквизитыОбъектаНазначения.Родитель.Представление = ПроизвольныйПараметр.Значение.Представление; + РеквизитыОбъектаНазначения.Родитель.Тип = ПроизвольныйПараметр.Значение.ОписаниеТипа; + РеквизитыОбъектаНазначения.Родитель.ПроизвольныйПараметр = Истина; + РеквизитыПоМетаданнымОбъекта(РеквизитыОбъектаНазначения, МетаданныеОбъект,,, МетаданныеОбъект.Имя + "."); + КонецЕсли; + ОпределитьСписокПечатныхФорм(МетаданныеОбъект, СведенияОШаблоне, ПроизвольныйПараметр.Ключ); + Иначе + Префикс = НСтр("ru='Произвольные'"); + РеквизитыОбъектаНазначения = РеквизитыОбъектаНазначения(СведенияОШаблоне.Реквизиты, Префикс); + НовыйСтрока = РеквизитыОбъектаНазначения.Добавить(); + НовыйСтрока.Имя = Префикс + "." + ПроизвольныйПараметр.Ключ; + НовыйСтрока.Представление = ПроизвольныйПараметр.Значение.Представление; + НовыйСтрока.Тип = ПроизвольныйПараметр.Значение.ОписаниеТипа; + НовыйСтрока.ПроизвольныйПараметр = Истина; + КонецЕсли; + Иначе + Префикс = НСтр("ru='Произвольные'"); + РеквизитыОбъектаНазначения = РеквизитыОбъектаНазначения(СведенияОШаблоне.Реквизиты, Префикс); + НовыйСтрока = РеквизитыОбъектаНазначения.Добавить(); + НовыйСтрока.Имя = Префикс + "." + ПроизвольныйПараметр.Ключ; + НовыйСтрока.Представление = ПроизвольныйПараметр.Значение.Представление; + НовыйСтрока.Тип = ОбщегоНазначения.ОписаниеТипаСтрока(150); + НовыйСтрока.ПроизвольныйПараметр = Истина; + КонецЕсли; + КонецЦикла; + +КонецПроцедуры + +Функция СформироватьСообщениеВнешнейОбработкой(ПараметрыШаблона, СведенияОШаблоне, ПараметрыОтправки) + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда + + МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки"); + + СформированноеСообщение = КонструкторСообщения(ПараметрыШаблона); + ВнешнийОбъект = МодульДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(ПараметрыШаблона.ВнешняяОбработка); + ПараметрыШаблона = ВнешнийОбъект.ПараметрыШаблона(); + + Значения = Новый Структура; + Для каждого ПараметрШаблона Из ПараметрыШаблона Цикл + ЭтоПроизвольныйПараметр = Истина; + Для каждого ОписаниеТипа Из ПараметрШаблона.ОписаниеТипа.Типы() Цикл + Если ОписаниеТипа = ТипЗнч(ПараметрыОтправки.Предмет) Тогда + Значения.Вставить(ПараметрыОтправки.Предмет.Метаданные().Имя, ПараметрыОтправки.Предмет); + ЭтоПроизвольныйПараметр = Ложь; + Прервать; + КонецЕсли; + КонецЦикла; + Если ЭтоПроизвольныйПараметр Тогда + Значение = ПараметрыОтправки.ДополнительныеПараметры.ПроизвольныеПараметры[ПараметрШаблона.ИмяПараметра]; + Значения.Вставить(ПараметрШаблона.ИмяПараметра, Значение); + КонецЕсли; + КонецЦикла; + + Сообщение = ВнешнийОбъект.СформироватьСообщениеПоШаблону(Значения); + СтандартнаяОбработка = Ложь; + Получатели = ВнешнийОбъект.СтруктураДанныхПолучатели(Значения, СтандартнаяОбработка); + Если ТипЗнч(Сообщение) = Тип("Структура") И Сообщение.Свойство("СтруктураВложений") Тогда + // Обратная совместимость + СформированноеСообщение.Текст = Сообщение.ТекстПисьмаHTML; + СформированноеСообщение.Тема = Сообщение.ТемаПисьма; + Для каждого Вложение Из Сообщение.СтруктураВложений Цикл + НовоеВложение = СформированноеСообщение.Вложения.Добавить(); + НовоеВложение.АдресВоВременномХранилище = ПоместитьВоВременноеХранилище(Вложение.Значение.ПолучитьДвоичныеДанные(), ПараметрыОтправки.УникальныйИдентификатор); + НовоеВложение.Идентификатор = Вложение.Ключ; + НовоеВложение.Представление = Вложение.Ключ; + КонецЦикла; + + Для каждого Получатель Из Получатели Цикл + СформированноеСообщение.Получатель.Добавить(Получатель.Адрес, Получатель.Представление); + КонецЦикла; + + КонецЕсли; + + Возврат СформированноеСообщение; + КонецЕсли + +КонецФункции + +Функция СообщениеБезШаблона(ПараметрыОтправки) + + ПараметрыШаблона = ОписаниеПараметровШаблона(); + Если ПараметрыОтправки.ДополнительныеПараметры.Свойство("ВидСообщения") + И ПараметрыОтправки.ДополнительныеПараметры.ВидСообщения = "СообщениеSMS" Тогда + ПараметрыШаблона.ТипШаблона = "SMS"; + КонецЕсли; + + СформированноеСообщение = КонструкторСообщения(); + ЗаполнитьПолучателейСообщения(ПараметрыОтправки, ПараметрыШаблона, СформированноеСообщение, Неопределено); + + Возврат СформированноеСообщение; + +КонецФункции + +// Настройки + +Функция ПриОпределенииНастроек() Экспорт + + Настройки = Новый Структура("ПредметыШаблонов, ОбщиеРеквизиты"); + Настройки.Вставить("ИспользоватьПроизвольныеПараметры", Ложь); + Настройки.Вставить("ЗначенияПараметровСКД", Новый Структура); + + ОбщиеРеквизитыДерево = ОпределитьОбщиеРеквизиты(); + Настройки.ОбщиеРеквизиты = ОбщиеРеквизиты(ОбщиеРеквизитыДерево); + Настройки.ПредметыШаблонов = ОпределитьПредметыШаблонов(); + + ШаблоныСообщенийПереопределяемый.ПриОпределенииНастроек(Настройки); + Настройки.ОбщиеРеквизиты = ОбщиеРеквизитыДерево; + + Для каждого ПредметШаблона Из Настройки.ПредметыШаблонов Цикл + Для каждого ПараметрСКД Из Настройки.ЗначенияПараметровСКД Цикл + Если НЕ ПредметШаблона.ЗначенияПараметровСКД.Свойство(ПараметрСКД.Ключ) + ИЛИ ПредметШаблона.ЗначенияПараметровСКД[ПараметрСКД.Ключ] = Null Тогда + ПредметШаблона.ЗначенияПараметровСКД.Вставить(ПараметрСКД.Ключ, Настройки.ЗначенияПараметровСКД[ПараметрСКД.Ключ]); + КонецЕсли; + КонецЦикла; + КонецЦикла; + + Настройки.ПредметыШаблонов.Сортировать("Представление"); + + Возврат Настройки; + +КонецФункции + +Функция ОпределитьПредметыШаблонов() + ИмяМакетаШаблонаПоУмолчанию = "ДанныеШаблонаСообщений"; + + ОснованияДляШаблоновСообщений = Новый ТаблицаЗначений; + ОснованияДляШаблоновСообщений.Колонки.Добавить("Имя", Новый ОписаниеТипов("Строка")); + ОснованияДляШаблоновСообщений.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); + ОснованияДляШаблоновСообщений.Колонки.Добавить("Макет", Новый ОписаниеТипов("Строка")); + ОснованияДляШаблоновСообщений.Колонки.Добавить("ЗначенияПараметровСКД", Новый ОписаниеТипов("Структура")); + + ТипыПредметовШаблоновСообщений = Метаданные.ОпределяемыеТипы.ПредметШаблонаСообщения.Тип.Типы(); + Для каждого ТипПредметаШаблонаСообщения Из ТипыПредметовШаблоновСообщений Цикл + Если ТипПредметаШаблонаСообщения <> Тип("СправочникСсылка.ИдентификаторыОбъектовМетаданных") Тогда + Назначение = ОснованияДляШаблоновСообщений.Добавить(); + МетаданныеОбъект = Метаданные.НайтиПоТипу(ТипПредметаШаблонаСообщения); + Назначение.Имя = МетаданныеОбъект.ПолноеИмя(); + Назначение.Представление = МетаданныеОбъект.Представление(); + Если МетаданныеОбъект.Макеты.Найти(ИмяМакетаШаблонаПоУмолчанию) <> Неопределено Тогда + Назначение.Макет = ИмяМакетаШаблонаПоУмолчанию; + + // Параметры СКД + МенеджерОбъекта = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(Назначение.Имя); + МакетСКД = МенеджерОбъекта.ПолучитьМакет(ИмяМакетаШаблонаПоУмолчанию); + АдресСхемы = ПоместитьВоВременноеХранилище(МакетСКД); + КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных; + КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(АдресСхемы)); + Для Каждого ДоступныйПараметр Из КомпоновщикНастроек.Настройки.ПараметрыДанных.ДоступныеПараметры.Элементы Цикл + ИмяПараметра = Строка(ДоступныйПараметр.Параметр); + Если НЕ (СтрСравнить(ИмяПараметра , "Период") = 0 + ИЛИ СтрСравнить(ИмяПараметра, МетаданныеОбъект.Имя) = 0) Тогда + Назначение.ЗначенияПараметровСКД.Вставить(ИмяПараметра, NULL); + КонецЕсли; + КонецЦикла; + КонецЕсли; + КонецЕсли; + КонецЦикла; + + Возврат ОснованияДляШаблоновСообщений; + +КонецФункции + +Функция ВидыШаблонов() Экспорт + ТипыШаблонов = Новый СписокЗначений; + ТипыШаблонов.Добавить("Email", НСтр("ru = 'Электронного письма'")); + ТипыШаблонов.Добавить("SMS", НСтр("ru = 'Сообщения SMS'")); + Возврат ТипыШаблонов; +КонецФункции + +Функция ПодготовитьЗапросДляПолученияСпискаШаблонов(ТипШаблона, Предмет = Неопределено) Экспорт + +Если ТипШаблона = "SMS" Тогда + ПредназначенДляSMS = Истина; + ПредназначенДляЭлектронныхПисем = Ложь; + Иначе + ПредназначенДляSMS = Ложь; + ПредназначенДляЭлектронныхПисем = Истина; + КонецЕсли; + + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ + | ШаблоныСообщений.Ссылка, + | ШаблоныСообщений.Представление, + | ШаблоныСообщений.Наименование КАК Имя, + | ШаблоныСообщений.ВнешняяОбработка КАК ВнешняяОбработка, + | ШаблоныСообщений.ШаблонПоВнешнейОбработке КАК ШаблонПоВнешнейОбработке, + | ВЫБОР + | КОГДА ШаблоныСообщений.ПредназначенДляЭлектронныхПисем + | ТОГДА ВЫБОР + | КОГДА ШаблоныСообщений.ТипТекстаПисьма = ЗНАЧЕНИЕ(Перечисление.СпособыРедактированияЭлектронныхПисем.HTML) + | ТОГДА ШаблоныСообщений.ТекстШаблонаПисьмаHTML + | ИНАЧЕ ШаблоныСообщений.ТекстШаблонаПисьма + | КОНЕЦ + | ИНАЧЕ ШаблоныСообщений.ТекстШаблонаSMS + | КОНЕЦ КАК ТекстШаблона, + | ШаблоныСообщений.ТипТекстаПисьма, + | ШаблоныСообщений.ТемаПисьма, + | ВЫБОР + | КОГДА КОЛИЧЕСТВО(ШаблоныСообщений.Параметры.ИмяПараметра) > 0 + | ТОГДА ИСТИНА + | ИНАЧЕ ЛОЖЬ + | КОНЕЦ КАК ЕстьПроизвольныеПараметры + |ИЗ + | Справочник.ШаблоныСообщений КАК ШаблоныСообщений + |ГДЕ + | (ШаблоныСообщений.ТолькоДляАвтора = ЛОЖЬ ИЛИ ШаблоныСообщений.Автор = &Пользователь) И + | ШаблоныСообщений.ПредназначенДляSMS = &ПредназначенДляSMS + | И ШаблоныСообщений.ПредназначенДляЭлектронныхПисем = &ПредназначенДляЭлектронныхПисем + | И ШаблоныСообщений.Назначение <> ""Служебный"" + | И ШаблоныСообщений.ПометкаУдаления = ЛОЖЬ"; + + Запрос.УстановитьПараметр("ПредназначенДляSMS", ПредназначенДляSMS); + Запрос.УстановитьПараметр("ПредназначенДляЭлектронныхПисем", ПредназначенДляЭлектронныхПисем); + Запрос.УстановитьПараметр("Пользователь", Пользователи.АвторизованныйПользователь()); + + Если ЗначениеЗаполнено(Предмет) Тогда + Запрос.Текст = Запрос.Текст + " И (ШаблоныСообщений.ПредназначенДляВводаНаОсновании = ЛОЖЬ ИЛИ ШаблоныСообщений.ПолноеИмяТипаПараметраВводаНаОсновании = &ПолноеИмяТипаПредмета)"; + Запрос.УстановитьПараметр("ПолноеИмяТипаПредмета", + ?(ТипЗнч(Предмет) = Тип("Строка"), Предмет, Предмет.Метаданные().ПолноеИмя())); + Иначе + Запрос.Текст = Запрос.Текст + " И ШаблоныСообщений.ПредназначенДляВводаНаОсновании = ЛОЖЬ"; + КонецЕсли; + + Возврат Запрос; + +КонецФункции + +// Реквизиты объекты основания. + +Функция РеквизитыОбъектаНазначения(Реквизиты, ПолноеИмяТипаНазначения, Знач Представление = "") + + МетаданныеОбъект = Метаданные.НайтиПоПолномуИмени(ПолноеИмяТипаНазначения); + Если МетаданныеОбъект <> Неопределено Тогда + ИмяРодителя = МетаданныеОбъект.Имя; + Представление = МетаданныеОбъект.Представление(); + Иначе + ИмяРодителя = ПолноеИмяТипаНазначения; + Представление = ?(ЗначениеЗаполнено(Представление), Представление, ПолноеИмяТипаНазначения); + КонецЕсли; + + УзелРеквизитовОбъектаНазначения = Реквизиты.Строки.Найти(ИмяРодителя, "Имя"); + Если УзелРеквизитовОбъектаНазначения = Неопределено Тогда + УзелРеквизитовОбъектаНазначения = Реквизиты.Строки.Добавить(); + УзелРеквизитовОбъектаНазначения.Имя = ИмяРодителя; + УзелРеквизитовОбъектаНазначения.Представление = Представление; + КонецЕсли; + + Возврат УзелРеквизитовОбъектаНазначения.Строки; + +КонецФункции + +Процедура СкрываемыеСтандартныеРеквизиты(Массив) + + ДобавитьВМассивУникальноеЗначение(Массив, "ПометкаУдаления"); + ДобавитьВМассивУникальноеЗначение(Массив, "Проведен"); + ДобавитьВМассивУникальноеЗначение(Массив, "Ссылка"); + ДобавитьВМассивУникальноеЗначение(Массив, "Предопределенный"); + ДобавитьВМассивУникальноеЗначение(Массив, "ИмяПредопределенныхДанных"); + ДобавитьВМассивУникальноеЗначение(Массив, "ЭтоГруппа"); + ДобавитьВМассивУникальноеЗначение(Массив, "Родитель"); + ДобавитьВМассивУникальноеЗначение(Массив, "Владелец"); + +КонецПроцедуры + +Процедура ДобавитьВМассивУникальноеЗначение(Массив, Значение) + Если Массив.Найти(Значение) = Неопределено Тогда + Массив.Добавить(ВРег(Значение)); + КонецЕсли; +КонецПроцедуры + +// Печатные формы и вложения + +Процедура ОпределитьСписокПечатныхФорм(МетаданныеОбъект, Знач ПараметрыШаблона, ИмяПараметра = "") + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда + МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью"); + ИсточникиКомандПечати = МодульУправлениеПечатью.ИсточникиКомандПечати(); + Если ИсточникиКомандПечати.Найти(МетаданныеОбъект) <> Неопределено Тогда + КомандыПечатиОбъекта = МодульУправлениеПечатью.КомандыПечатиОбъектаДоступныеДляВложений(МетаданныеОбъект); + ПроверкаНаДубли = Новый Соответствие; + Для каждого Вложение Из КомандыПечатиОбъекта Цикл + Если НЕ Вложение.Отключена + И СтрНайти(Вложение.Идентификатор, ",") = 0 + И НЕ ПустаяСтрока(Вложение.МенеджерПечати) + И НЕ Вложение.СразуНаПринтер + И НЕ Вложение.СкрытаФункциональнымиОпциями + И ПроверкаНаДубли[Вложение.УникальныйИдентификатор] = Неопределено Тогда + НоваяСтрока = ПараметрыШаблона.Вложения.Добавить(); + НоваяСтрока.Имя = Вложение.Идентификатор; + НоваяСтрока.Идентификатор = Вложение.УникальныйИдентификатор; + НоваяСтрока.Представление = Вложение.Представление; + НоваяСтрока.МенеджерПечати = Вложение.МенеджерПечати; + НоваяСтрока.ТипФайла = "MXL"; + НоваяСтрока.Статус = "ПечатнаяФорма"; + ПроверкаНаДубли.Вставить(Вложение.УникальныйИдентификатор, Истина); + КонецЕсли; + КонецЦикла; + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +// Записывает вложение электронного письма, расположенное во временном хранилище в файл. +Функция ЗаписатьВложениеЭлектронногоПисьмаИзВременногоХранилища(Владелец, Сведения, ИмяФайла, Размер, КоличествоПустыхИменВоВложениях = 0) Экспорт + + АдресВоВременномХранилище = Сведения.Имя; + Описание = Сведения.Идентификатор; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПрисоединенныеФайлы") Тогда + МодульПрисоединенныеФайлы = ОбщегоНазначения.ОбщийМодуль("ПрисоединенныеФайлы"); + + ИмяФайлаДляРазбора = ИмяФайла; + РасширениеБезТочки = ПолучитьРасширениеФайла(ИмяФайлаДляРазбора); + ИмяБезРасширения = ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыВИмениФайла(ИмяФайлаДляРазбора); + Если ПустаяСтрока(ИмяБезРасширения) Тогда + + ИмяФайлаБезРасширения = + НСтр("ru = 'Вложение без имени'") + ?(КоличествоПустыхИменВоВложениях = 0, ""," " + Строка(КоличествоПустыхИменВоВложениях + 1)); + КоличествоПустыхИменВоВложениях = КоличествоПустыхИменВоВложениях + 1; + + Иначе + ИмяБезРасширения = ?(РасширениеБезТочки = "", ИмяБезРасширения, Лев(ИмяБезРасширения, СтрДлина(ИмяБезРасширения) - СтрДлина(РасширениеБезТочки) - 1)); + КонецЕсли; + + ПараметрыФайла = Новый Структура; + ПараметрыФайла.Вставить("ВладелецФайлов", Владелец); + ПараметрыФайла.Вставить("Автор", Неопределено); + ПараметрыФайла.Вставить("ИмяБезРасширения", ИмяБезРасширения); + ПараметрыФайла.Вставить("РасширениеБезТочки", РасширениеБезТочки); + ПараметрыФайла.Вставить("ВремяИзменения", Неопределено); + ПараметрыФайла.Вставить("ВремяИзмененияУниверсальное", Неопределено); + Возврат МодульПрисоединенныеФайлы.ДобавитьПрисоединенныйФайл(ПараметрыФайла, АдресВоВременномХранилище, "", Описание); + КонецЕсли; + + Возврат Неопределено; + +КонецФункции + +// Процедура - Добавить вложение печатную форму +// +// Параметры: +// ПараметрыОтправки - - +// СведенияОШаблоне - - +// Вложения - - +// ПараметрыШаблоны - - +// +Процедура ДобавитьВыбранныеПечатныеФормыВоВложения(ПараметрыОтправки, СведенияОШаблоне, Вложения, ПараметрыШаблона) + + Для каждого ВложениеПечатнаяФорма Из СведенияОШаблоне.Вложения Цикл + ИмяПараметраВыбраннойПечатнойФормы = ПараметрыШаблона.ВыбранныеВложения[ВложениеПечатнаяФорма.Идентификатор]; + Если ВложениеПечатнаяФорма.Статус = "ПечатнаяФорма" И ИмяПараметраВыбраннойПечатнойФормы <> Неопределено Тогда + ИмяМенеджераПечати = ВложениеПечатнаяФорма.МенеджерПечати; + ПараметрыПечати = ВложениеПечатнаяФорма.ПараметрыПечати; + МассивОбъектов = Новый Массив; + Если ПустаяСтрока(ИмяПараметраВыбраннойПечатнойФормы) Тогда + МассивОбъектов.Добавить(ПараметрыОтправки.Предмет); + Иначе + МассивОбъектов.Добавить(ПараметрыОтправки.ДополнительныеПараметры.ПроизвольныеПараметры[ИмяПараметраВыбраннойПечатнойФормы]); + КонецЕсли; + ИменаМакетов = ?(ПустаяСтрока(ВложениеПечатнаяФорма.Имя), ВложениеПечатнаяФорма.Идентификатор, ВложениеПечатнаяФорма.Имя); + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда + МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью"); + Если ИмяМенеджераПечати = "СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки" Тогда + ИменаМакетов = "ВнешняяПечатнаяФорма." + ИменаМакетов; + КонецЕсли; + + Попытка + КоллекцияПечатныхФорм = МодульУправлениеПечатью.ПодготовитьПечатныеФормы(ИмяМенеджераПечати, ИменаМакетов, МассивОбъектов, ПараметрыПечати); + Исключение + // Ошибка при создании внешний печатной формы. Создаем дальше письмо, без этой печатной формы. + ЗаписьЖурналаРегистрации( + ИмяСобытияЖурналаРегистрации(), + УровеньЖурналаРегистрации.Ошибка,,, НСтр("ru = 'Ошибка при создании внешний печатной формы.'")); + Прервать; + КонецПопытки; + + Для Каждого ПечатнаяФорма Из КоллекцияПечатныхФорм.КоллекцияПечатныхФорм Цикл + Если ПечатнаяФорма = Неопределено Или ПечатнаяФорма.ТабличныйДокумент.ВысотаТаблицы = 0 Тогда + Продолжить; + КонецЕсли; + Результат = ПоместитьТабличныйДокументВоВременноеХранилище(ПечатнаяФорма, ПараметрыШаблона, ПараметрыОтправки.УникальныйИдентификатор); + Для Каждого СохраненнаяПечатнаяФорма Из Результат Цикл + Вложения.Вставить(СохраненнаяПечатнаяФорма.ИмяФайла, СохраненнаяПечатнаяФорма.АдресВоВременномХранилище); + КонецЦикла; + КонецЦикла; + + КонецЕсли; + КонецЕсли; + КонецЦикла; + +КонецПроцедуры + +Функция ПоместитьТабличныйДокументВоВременноеХранилище(ПечатнаяФорма, ПараметрыШаблоны, УникальныйИдентификатор) + + Результат = Новый ТаблицаЗначений; + Результат.Колонки.Добавить("АдресВоВременномХранилище"); + Результат.Колонки.Добавить("ИмяФайла"); + Результат.Колонки.Добавить("Размер"); + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") Тогда + МодульУправлениеПечатью = ОбщегоНазначения.ОбщийМодуль("УправлениеПечатью"); + Если ПараметрыШаблоны.УпаковатьВАрхив Тогда + ИмяАрхива = ПолучитьИмяВременногоФайла("zip"); + ЗаписьZipФайла = Новый ЗаписьZipФайла(ИмяАрхива); + КонецЕсли; + + // подготовка временной папки + ИмяВременнойПапки = ПолучитьИмяВременногоФайла(); + СоздатьКаталог(ИмяВременнойПапки); + ИспользованныеИменаФайлов = Новый Соответствие; + ТаблицаФорматов = МодульУправлениеПечатью.ФорматыСохраненияТабличногоДокумента(); + + Для Каждого ЭлементСписка Из ПараметрыШаблоны.ФорматыВложений Цикл + + НастройкиФормата = ТаблицаФорматов.НайтиСтроки(Новый Структура("ТипФайлаТабличногоДокумента", ЭлементСписка.Значение))[0]; + ТабличныйДокумент = ПечатнаяФорма.ТабличныйДокумент; + + ИмяФайла = ПолучитьИмяВременногоФайлаДляПечатнойФормы(ПечатнаяФорма.СинонимМакета, НастройкиФормата.Расширение, ИспользованныеИменаФайлов); + ПолноеИмяФайла = ОбщегоНазначенияКлиентСервер.ДобавитьКонечныйРазделительПути(ИмяВременнойПапки) + ИмяФайла; + + ТабличныйДокумент.Записать(ПолноеИмяФайла, ЭлементСписка.Значение); + + Если ЗаписьZipФайла <> Неопределено Тогда + ЗаписьZipФайла.Добавить(ПолноеИмяФайла); + Иначе + ДвоичныеДанные = Новый ДвоичныеДанные(ПолноеИмяФайла); + АдресВоВременномХранилище = ПоместитьВоВременноеХранилище(ДвоичныеДанные, УникальныйИдентификатор); + НоваяСтрока = Результат.Добавить(); + НоваяСтрока.АдресВоВременномХранилище = АдресВоВременномХранилище; + НоваяСтрока.ИмяФайла = ИмяФайла; + НоваяСтрока.Размер = ДвоичныеДанные.Размер(); + КонецЕсли; + + КонецЦикла; + + // если архив подготовлен, записываем и помещаем его во временное хранилище + Если ЗаписьZipФайла <> Неопределено Тогда + ЗаписьZipФайла.Записать(); + ФайлАрхива = Новый Файл(ИмяАрхива); + ДвоичныеДанные = Новый ДвоичныеДанные(ИмяАрхива); + АдресВоВременномХранилище = ПоместитьВоВременноеХранилище(ДвоичныеДанные, УникальныйИдентификатор); + НоваяСтрока = Результат.Добавить(); + НоваяСтрока.ИмяФайла = ИмяФайлаДляАрхива(ИмяФайла); + НоваяСтрока.Размер = ДвоичныеДанные.Размер(); + НоваяСтрока.АдресВоВременномХранилище = АдресВоВременномХранилище; + КонецЕсли; + + УдалитьФайлы(ИмяВременнойПапки); + Если ЗначениеЗаполнено(ИмяАрхива) Тогда + УдалитьФайлы(ИмяАрхива); + КонецЕсли; + + КонецЕсли; + + Возврат Результат; + +КонецФункции + +Функция ПолучитьИмяВременногоФайлаДляПечатнойФормы(ИмяМакета, Расширение, ИспользованныеИменаФайлов) + + ШаблонИмениФайла = "%1%2.%3"; + + ИмяВременногоФайла = ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыВИмениФайла( + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонИмениФайла, ИмяМакета, "", Расширение)); + + НомерИспользования = ?(ИспользованныеИменаФайлов[ИмяВременногоФайла] <> Неопределено, + ИспользованныеИменаФайлов[ИмяВременногоФайла] + 1, + 1); + + ИспользованныеИменаФайлов.Вставить(ИмяВременногоФайла, НомерИспользования); + + // если имя уже было ранее использовано, прибавляем счетчик в конце имени + Если НомерИспользования > 1 Тогда + ИмяВременногоФайла = ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыВИмениФайла( + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + ШаблонИмениФайла, + ИмяМакета, + " (" + НомерИспользования + ")", + Расширение)); + КонецЕсли; + + Возврат ИмяВременногоФайла; + +КонецФункции + +Функция ИмяФайлаДляАрхива(ИмяФайла) + + МассивСтрок = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ИмяФайла,"."); + Если МассивСтрок.Количество() = 2 Тогда + Возврат МассивСтрок[0] +".zip"; + ИначеЕсли МассивСтрок.Количество() = 1 Тогда + Возврат ИмяФайла + ".zip"; + Иначе + Возврат ИмяФайла; + КонецЕсли; + +КонецФункции + +Функция ТаблицаВложений() + + ТипСтрока = Новый ОписаниеТипов("Строка"); + Вложения = Новый ТаблицаЗначений; + Вложения.Колонки.Добавить("Имя", ТипСтрока); + Вложения.Колонки.Добавить("Идентификатор", ТипСтрока); + Вложения.Колонки.Добавить("Представление", ТипСтрока); + Вложения.Колонки.Добавить("МенеджерПечати", ТипСтрока); + Вложения.Колонки.Добавить("ПараметрыПечати", Новый ОписаниеТипов("Структура")); + Вложения.Колонки.Добавить("ТипФайла", ТипСтрока); + Вложения.Колонки.Добавить("Статус", ТипСтрока); + Вложения.Колонки.Добавить("Реквизит", ТипСтрока); + Вложения.Колонки.Добавить("ИмяПараметра", ТипСтрока); + + Возврат Вложения; + +КонецФункции + +// Получает расширение для переданного имени файла. +// +// Параметры: +// ИмяФайла - Строка - имя файла, для которого необходимо получить расширение. +// +// Возвращаемое значение: +// Строка - расширение, полученное из переданного имени файла. +// +Функция ПолучитьРасширениеФайла(Знач ИмяФайла) + + РасширениеФайла = ""; + МассивСтрок = СтрРазделить(ИмяФайла, ".", Ложь); + Если МассивСтрок.Количество() > 1 Тогда + РасширениеФайла = МассивСтрок[МассивСтрок.Количество() - 1]; + КонецЕсли; + + Возврат РасширениеФайла; + +КонецФункции + +// Определение и заполнение параметров(реквизитов) в тексте сообщения +// +Функция ПараметрыШаблона(Шаблон) Экспорт + + Результат = ОписаниеПараметровШаблона(); + + Если ТипЗнч(Шаблон) = Тип("ДанныеФормыСтруктура") Тогда + + Результат.ТипШаблона = ?(Шаблон.ПредназначенДляSMS, "SMS", "Письмо"); + Результат.Тема = Шаблон.ТемаПисьма; + Если Шаблон.ПредназначенДляВводаНаОсновании Тогда + Результат.ПолноеИмяТипаНазначения = Шаблон.ПолноеИмяТипаПараметраВводаНаОсновании; + Результат.Назначение = Шаблон.Назначение; + КонецЕсли; + Результат.ФорматПисьма = Шаблон.ТипТекстаПисьма; + Результат.УпаковатьВАрхив = Шаблон.УпаковатьВАрхив; + Результат.ПеревестиВТранслит = Шаблон.ОтправлятьВТранслите; + Результат.Отправитель = Шаблон.Отправитель; + Если Результат.ТипШаблона = "SMS" Тогда + Результат.Текст = Шаблон.ТекстШаблонаSMS; + ИначеЕсли Шаблон.ТипТекстаПисьма = Перечисления.СпособыРедактированияЭлектронныхПисем.HTML Тогда + Результат.Текст = Шаблон.ТекстШаблонаПисьмаHTML; + Иначе + Результат.Текст = Шаблон.ТекстШаблонаПисьма; + КонецЕсли; + Результат.ШаблонПоВнешнейОбработке = Шаблон.ШаблонПоВнешнейОбработке; + Результат.ВнешняяОбработка = Шаблон.ВнешняяОбработка; + + Для каждого ПечатныеФормыИВложения Из Шаблон.ПечатныеФормыИВложения Цикл + Результат.ВыбранныеВложения.Вставить(ПечатныеФормыИВложения.Идентификатор, ПечатныеФормыИВложения.Имя); + КонецЦикла; + + Если СтрНачинаетсяС(Результат.Назначение, "Служебный") Тогда + Результат.Служебный = Истина; + КонецЕсли; + + Для каждого СтрокаПараметр Из Шаблон.Параметры Цикл + Результат.Параметры.Вставить(СтрокаПараметр.ИмяПараметра, Новый Структура("ОписаниеТипа, Представление", СтрокаПараметр.ОписаниеТипа, СтрокаПараметр.ПредставлениеПараметра)); + КонецЦикла; + + ИначеЕсли ТипЗнч(Шаблон) = Тип("СправочникСсылка.ШаблоныСообщений") Тогда + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ + | ШаблоныСообщений.ПредназначенДляВводаНаОсновании, + | ШаблоныСообщений.ПолноеИмяТипаПараметраВводаНаОсновании, + | ШаблоныСообщений.Назначение, + | ШаблоныСообщений.ПредназначенДляЭлектронныхПисем, + | ШаблоныСообщений.ТипТекстаПисьма, + | ВЫБОР + | КОГДА ШаблоныСообщений.ПредназначенДляЭлектронныхПисем + | ТОГДА ВЫБОР + | КОГДА ШаблоныСообщений.ТипТекстаПисьма = ЗНАЧЕНИЕ(Перечисление.СпособыРедактированияЭлектронныхПисем.HTML) + | ТОГДА ШаблоныСообщений.ТекстШаблонаПисьмаHTML + | ИНАЧЕ ШаблоныСообщений.ТекстШаблонаПисьма + | КОНЕЦ + | ИНАЧЕ ШаблоныСообщений.ТекстШаблонаSMS + | КОНЕЦ КАК ТекстШаблона, + | ШаблоныСообщений.ТемаПисьма, + | ШаблоныСообщений.УпаковатьВАрхив, + | ШаблоныСообщений.ФорматВложений, + | ШаблоныСообщений.ПредназначенДляSMS, + | ШаблоныСообщений.ОтправлятьВТранслите, + | ШаблоныСообщений.ШаблонПоВнешнейОбработке, + | ШаблоныСообщений.ВнешняяОбработка + |ИЗ + | Справочник.ШаблоныСообщений КАК ШаблоныСообщений + |ГДЕ + | ШаблоныСообщений.Ссылка = &Шаблон + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | ШаблоныСообщенийПечатныеФормыИВложения.Идентификатор, + | ШаблоныСообщенийПечатныеФормыИВложения.Имя + |ИЗ + | Справочник.ШаблоныСообщений.ПечатныеФормыИВложения КАК ШаблоныСообщенийПечатныеФормыИВложения + |ГДЕ + | ШаблоныСообщенийПечатныеФормыИВложения.Ссылка = &Шаблон + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | ШаблоныСообщенийПараметры.ПредставлениеПараметра, + | ШаблоныСообщенийПараметры.ТипПараметра, + | ШаблоныСообщенийПараметры.ИмяПараметра + |ИЗ + | Справочник.ШаблоныСообщений.Параметры КАК ШаблоныСообщенийПараметры + |ГДЕ + | ШаблоныСообщенийПараметры.Ссылка = &Шаблон"; + + Запрос.УстановитьПараметр("Шаблон", Шаблон); + + РезультатЗапроса = Запрос.ВыполнитьПакет(); + СведенияОШаблоне = РезультатЗапроса[0].Выгрузить(); + + Если СведенияОШаблоне.Количество() > 0 Тогда + + СтрокаСведенийОШаблоне = СведенияОШаблоне[0]; + + Для каждого ВыбраннаяПечатнаяФорма Из РезультатЗапроса[1].Выгрузить() Цикл + Результат.ВыбранныеВложения.Вставить(ВыбраннаяПечатнаяФорма.Идентификатор, ВыбраннаяПечатнаяФорма.Имя); + КонецЦикла; + Результат.Текст = СтрокаСведенийОШаблоне.ТекстШаблона; + Результат.ТипШаблона = ?(СтрокаСведенийОШаблоне.ПредназначенДляSMS, "SMS", "Письмо"); + + Если СтрокаСведенийОШаблоне.ПредназначенДляВводаНаОсновании Тогда + Результат.Назначение = СтрокаСведенийОШаблоне.Назначение; + Результат.ПолноеИмяТипаНазначения = СтрокаСведенийОШаблоне.ПолноеИмяТипаПараметраВводаНаОсновании; + КонецЕсли; + Результат.ФорматПисьма = СтрокаСведенийОШаблоне.ТипТекстаПисьма; + + Если СтрНачинаетсяС(Результат.Назначение, "Служебный") Тогда + Результат.Служебный = Истина; + КонецЕсли; + + Если Результат.ТипШаблона = "SMS" Тогда + Результат.ПеревестиВТранслит = СтрокаСведенийОШаблоне.ОтправлятьВТранслите; + Иначе + Результат.Тема = СтрокаСведенийОШаблоне.ТемаПисьма; + Результат.УпаковатьВАрхив = СтрокаСведенийОШаблоне.УпаковатьВАрхив; + Результат.ФорматПисьма = СтрокаСведенийОШаблоне.ТипТекстаПисьма; + КонецЕсли; + + Результат.ВнешняяОбработка = СтрокаСведенийОШаблоне.ВнешняяОбработка; + Результат.ШаблонПоВнешнейОбработке = СтрокаСведенийОШаблоне.ШаблонПоВнешнейОбработке; + Результат.ФорматыВложений = СтрокаСведенийОШаблоне.ФорматВложений.Получить(); + + Для каждого СтрокаПараметр Из РезультатЗапроса[2].Выгрузить() Цикл + Результат.Параметры.Вставить(СтрокаПараметр.ИмяПараметра, Новый Структура("ОписаниеТипа, Представление", СтрокаПараметр.ТипПараметра.Получить(), СтрокаПараметр.ПредставлениеПараметра)); + КонецЦикла; + + КонецЕсли; + КонецЕсли; + + НастройкиШаблоновСообщений = ПриОпределенииНастроек(); + СведенияОПредмете = НастройкиШаблоновСообщений.ПредметыШаблонов.Найти(Результат.ПолноеИмяТипаНазначения, "Имя"); + Если СведенияОПредмете <> Неопределено Тогда + Результат.Макет = СведенияОПредмете.Макет; + Результат.ПараметрыСКД = СведенияОПредмете.ЗначенияПараметровСКД; + КонецЕсли; + + Возврат Результат; + +КонецФункции + +Функция ОписаниеПараметровШаблона() Экспорт + Результат = Новый Структура; + + Результат.Вставить("Текст", ""); + Результат.Вставить("Тема", ""); + Результат.Вставить("ТипШаблона", "Письмо"); + Результат.Вставить("Назначение", ""); + Результат.Вставить("ПолноеИмяТипаНазначения", ""); + Результат.Вставить("ФорматПисьма", Перечисления.СпособыРедактированияЭлектронныхПисем.HTML); + Результат.Вставить("УпаковатьВАрхив", Ложь); + Результат.Вставить("ПеревестиВТранслит", Ложь); + Результат.Вставить("Отправитель", ""); + Результат.Вставить("ВнешняяОбработка", Неопределено); + Результат.Вставить("ШаблонПоВнешнейОбработке", Ложь); + Результат.Вставить("РазворачиватьСсылочныеРеквизиты", Истина); + Результат.Вставить("ФорматыВложений", Новый СписокЗначений); + Результат.Вставить("ВыбранныеВложения", Новый Соответствие); + Результат.Вставить("Макет", ""); + Результат.Вставить("Параметры", Новый Соответствие); + Результат.Вставить("ПараметрыСКД", Новый Соответствие); + Результат.Вставить("Служебный", Ложь); + + Возврат Результат; + +КонецФункции + +// Возвращает соответствие параметров текста сообщения шаблона. +// +// Параметры: +// ПараметрыШаблона - Структура - Сведения о шаблоне. +// +// Возвращаемое значение: +// Соответствие - соответствие имеющихся в тексте сообщения параметров. +// +Функция ПараметрыИзТекстаСообщения(ПараметрыШаблона) Экспорт + + Если ПараметрыШаблона.ТипШаблона = "Письмо" Тогда + Возврат ОпределитьПараметрыТекстаСообщения(ПараметрыШаблона.Текст + " " + ПараметрыШаблона.Тема); + ИначеЕсли ПараметрыШаблона.ТипШаблона = "SMS" Тогда + Возврат ОпределитьПараметрыТекстаСообщения(ПараметрыШаблона.Текст); + Иначе + Возврат Новый Соответствие; + КонецЕсли; + +КонецФункции + +Функция ОпределитьПараметрыТекстаСообщения(ТекстСообщения) + + МассивПараметров = Новый Соответствие; + + ДлинаСообщения = СтрДлина(ТекстСообщения); + + Текст = ТекстСообщения; + Позиция = СтрНайти(Текст, "["); + Пока Позиция > 0 Цикл + Если Позиция + 1 > ДлинаСообщения Тогда + Прервать; + КонецЕсли; + ПозицияОкончание = СтрНайти(Текст, "]", НаправлениеПоиска.СНачала, Позиция + 1); + Если ПозицияОкончание > 0 Тогда + НайденныйПараметр = Сред(Текст, Позиция + 1, ПозицияОкончание - Позиция - 1); + МассивПараметров.Вставить(НайденныйПараметр, ""); + ИначеЕсли ПозицияОкончание = 0 Тогда + ПозицияОкончание = Позиция + 1; + КонецЕсли; + Если ПозицияОкончание > ДлинаСообщения Тогда + Прервать; + КонецЕсли; + Позиция = СтрНайти(Текст, "[", НаправлениеПоиска.СНачала, ПозицияОкончание); + КонецЦикла; + + СоответствиеПараметров = Новый Соответствие; + Для каждого ЭлементаМассиваПараметров Из МассивПараметров Цикл + ПозицияФормат = СтрНайти(ЭлементаМассиваПараметров.Ключ, "{"); + Если ПозицияФормат > 0 Тогда + ИмяПараметра = Лев(ЭлементаМассиваПараметров.Ключ, ПозицияФормат - 1); + СтрокаФормата = Сред(ЭлементаМассиваПараметров.Ключ, ПозицияФормат ); + Иначе + ИмяПараметра = ЭлементаМассиваПараметров.Ключ; + СтрокаФормата = ""; + КонецЕсли; + МассивРазобранныйПараметр = СтрРазделить(ИмяПараметра, ".", Ложь); + Если МассивРазобранныйПараметр.Количество() < 2 Тогда + Продолжить; + КонецЕсли; + + УстановитьЭлементСоответствия(СоответствиеПараметров, МассивРазобранныйПараметр, СтрокаФормата); + КонецЦикла; + + Возврат СоответствиеПараметров; + +КонецФункции + +Процедура УстановитьЭлементСоответствия(СоответствиеПараметров, Знач МассивРазобранныйПараметр, СтрокаФормата) + ЭлементСоответствия = СоответствиеПараметров.Получить(МассивРазобранныйПараметр[0]); + Если ЭлементСоответствия = Неопределено Тогда + Если МассивРазобранныйПараметр.Количество() > 1 Тогда + ВнутреннийЭлементСоответствия = Новый Соответствие; + СоответствиеПараметров.Вставить(МассивРазобранныйПараметр[0], ВнутреннийЭлементСоответствия); + МассивРазобранныйПараметр.Удалить(0); + УстановитьЭлементСоответствия(ВнутреннийЭлементСоответствия, МассивРазобранныйПараметр, СтрокаФормата) + Иначе + Если СоответствиеПараметров[МассивРазобранныйПараметр[0] + СтрокаФормата] = Неопределено Тогда + СоответствиеПараметров.Вставить(МассивРазобранныйПараметр[0] + СтрокаФормата, ""); + КонецЕсли; + КонецЕсли; + Иначе + Если МассивРазобранныйПараметр.Количество() > 1 Тогда + МассивРазобранныйПараметр.Удалить(0); + УстановитьЭлементСоответствия(ЭлементСоответствия, МассивРазобранныйПараметр, СтрокаФормата) + Иначе + Если СоответствиеПараметров[МассивРазобранныйПараметр[0] + СтрокаФормата] = Неопределено Тогда + СоответствиеПараметров.Вставить(МассивРазобранныйПараметр[0] + СтрокаФормата, ""); + КонецЕсли; + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +Функция СписокПараметров(ПараметрыТекстаСообщения, Префикс = "") + + СписокРеквизитов = ""; + Для каждого Реквизит Из ПараметрыТекстаСообщения Цикл + Если ТипЗнч(Реквизит.Значение) = Тип("Соответствие") Тогда + СписокРеквизитов = СписокРеквизитов + СписокПараметров(Реквизит.Значение, Реквизит.Ключ + "."); // + " КАК " + СтрЗаменить(Реквизит.Ключ, ".", "_"); + Иначе + Если ПустаяСтрока(Реквизит.Значение) Тогда + ИмяРеквизита = Реквизит.Ключ; + ПозицияФормат = СтрНайти(ИмяРеквизита, "{"); + Если ПозицияФормат > 0 Тогда + ИмяРеквизита = Лев(ИмяРеквизита, ПозицияФормат - 1); + КонецЕсли; + СписокРеквизитов = СписокРеквизитов + ", " + Префикс + ИмяРеквизита + " КАК " + СтрЗаменить(Префикс + ИмяРеквизита, ".", "_"); + КонецЕсли; + КонецЕсли; + КонецЦикла; + + Возврат СписокРеквизитов; + +КонецФункции + +Функция ЗаполнитьПараметрыСообщения(ПараметрыШаблона, ПараметрыТекстаСообщения, ПараметрыОтправки) + + Предмет = ПараметрыОтправки.Предмет; + Сообщение = Новый Структура("ЗначенияРеквизитов, ЗначенияОбщихРеквизитов, Вложения, ДополнительныеПараметры"); + Сообщение.Вложения = Новый Соответствие; + Сообщение.ЗначенияОбщихРеквизитов = Новый Соответствие; + Сообщение.ЗначенияРеквизитов = Новый Соответствие; + + Если Предмет <> Неопределено + И ЗначениеЗаполнено(ПараметрыШаблона.ПолноеИмяТипаНазначения) Тогда + ИмяОбъекта = Предмет.Метаданные().Имя; + + Если ПараметрыТекстаСообщения[ИмяОбъекта] <> Неопределено Тогда + + Если ЗначениеЗаполнено(ПараметрыШаблона.Макет) Тогда + ЗаполнитьРеквизитыПоСКД(ПараметрыТекстаСообщения[ИмяОбъекта], Предмет, ПараметрыШаблона); + Иначе + ЗаполнитьРеквизитыПоПредмету(ПараметрыТекстаСообщения[ИмяОбъекта], Предмет); + КонецЕсли; + ЗаполнитьРеквизитыСвойствИКонтактнойИнформации(ПараметрыТекстаСообщения[ИмяОбъекта], Предмет); + Сообщение.ЗначенияРеквизитов = ПараметрыТекстаСообщения[ИмяОбъекта]; + + Если ПараметрыТекстаСообщения[ИмяОбъекта]["ВнешняяСсылкаНаОбъект"] <> Неопределено Тогда + ПараметрыТекстаСообщения[ИмяОбъекта]["ВнешняяСсылкаНаОбъект"] = ВнешняяСсылкаНаОбъект(Предмет); + КонецЕсли; + Иначе + Сообщение.ЗначенияРеквизитов = ?(ПараметрыТекстаСообщения[ПараметрыШаблона.ПолноеИмяТипаНазначения] <> Неопределено, + ПараметрыТекстаСообщения[ПараметрыШаблона.ПолноеИмяТипаНазначения], Новый Соответствие); + КонецЕсли; + + КонецЕсли; + + Если ПараметрыОтправки.ДополнительныеПараметры.Свойство("ПроизвольныеПараметры") Тогда + Для каждого ПроизвольныйПараметр Из ПараметрыОтправки.ДополнительныеПараметры.ПроизвольныеПараметры Цикл + + Если НЕ ЗначениеЗаполнено(ПроизвольныйПараметр.Значение) Тогда + Продолжить; + КонецЕсли; + + Если ТипЗнч(ПроизвольныйПараметр.Значение) = Тип("Строка") + Или ТипЗнч(ПроизвольныйПараметр.Значение) = Тип("Дата") Тогда + ПроизвольныеРеквизиты = ПараметрыТекстаСообщения[ШаблоныСообщенийКлиентСервер.ЗаголовокПроизвольныхПараметров()]; + Если ТипЗнч(ПроизвольныеРеквизиты ) = Тип("Соответствие") Тогда + ПараметрыТекстаСообщения[ШаблоныСообщенийКлиентСервер.ЗаголовокПроизвольныхПараметров()][ПроизвольныйПараметр.Ключ] = ПроизвольныйПараметр.Значение; + КонецЕсли; + Иначе + ИмяОбъекта = ПроизвольныйПараметр.Значение.Метаданные().Имя; + Если ПараметрыТекстаСообщения[ИмяОбъекта] <> Неопределено Тогда + ЗаполнитьРеквизитыПоПредмету(ПараметрыТекстаСообщения[ИмяОбъекта], ПроизвольныйПараметр.Значение); + ЗаполнитьРеквизитыСвойствИКонтактнойИнформации(ПараметрыТекстаСообщения[ИмяОбъекта], ПроизвольныйПараметр.Значение); + Сообщение.ЗначенияРеквизитов = ПараметрыТекстаСообщения[ИмяОбъекта]; + Иначе + Сообщение.ЗначенияРеквизитов = ПараметрыТекстаСообщения; + КонецЕсли; + КонецЕсли; + КонецЦикла; + КонецЕсли; + + Если ПараметрыТекстаСообщения[ИмяУзлаОбщихРеквизитов()] <> Неопределено Тогда + ЗаполнитьОбщиеРеквизиты(ПараметрыТекстаСообщения[ИмяУзлаОбщихРеквизитов()]); + Сообщение.ЗначенияОбщихРеквизитов = ПараметрыТекстаСообщения[ШаблоныСообщенийСлужебный.ИмяУзлаОбщихРеквизитов()]; + КонецЕсли; + + Возврат Сообщение; + +КонецФункции + +Функция УстановитьЗначенияРеквизитовВТекстСообщения(ПараметрыШаблона, ПараметрыТекстаСообщения, Предмет) + + Результат = Новый Структура("Тема, Текст, Вложения"); + + Если ПараметрыШаблона.ТипШаблона = "Письмо" Тогда + Результат.Тема = ВставитьПараметрыВСтрокуСогласноТаблицеПараметров(ПараметрыШаблона.Тема, ПараметрыТекстаСообщения); + КонецЕсли; + Результат.Текст = ВставитьПараметрыВСтрокуСогласноТаблицеПараметров(ПараметрыШаблона.Текст, ПараметрыТекстаСообщения); + + Возврат Результат; + +КонецФункции + +Процедура УстановитьПараметрыИзЗапроса(Параметры, Результат, Знач Префикс = "") + + Если ЗначениеЗаполнено(Префикс) Тогда + Префикс = Префикс + "_"; + КонецЕсли; + Для каждого ЗначениеПараметра Из Параметры Цикл + Если ТипЗнч(Параметры[ЗначениеПараметра.Ключ]) = Тип("Соответствие") Тогда + УстановитьПараметрыИзЗапроса(Параметры[ЗначениеПараметра.Ключ], Результат, Префикс + ЗначениеПараметра.Ключ); + Иначе + Если ПустаяСтрока(ЗначениеПараметра.Значение) Тогда + ПозицияФормата = СтрНайти(ЗначениеПараметра.Ключ, "{"); + Если ПозицияФормата > 0 Тогда + ИмяПараметра = Лев(ЗначениеПараметра.Ключ, ПозицияФормата - 1); + СтрокаФормата =Сред(ЗначениеПараметра.Ключ, ПозицияФормата + 1, СтрДлина(ЗначениеПараметра.Ключ) - СтрДлина(ИмяПараметра) -2); + Значение = Результат.Получить(Префикс + ИмяПараметра); + Если СтрНачинаетсяС(СтрокаФормата , "Д") Тогда + Параметры[ЗначениеПараметра.Ключ] = Формат(ПреобразоватьСтрокиКТипу(Значение, "Дата"), СтрокаФормата); + ИначеЕсли СтрНачинаетсяС(СтрокаФормата , "Ч") Тогда + Параметры[ЗначениеПараметра.Ключ] = Формат(ПреобразоватьСтрокиКТипу(Значение, "Число"), СтрокаФормата); + ИначеЕсли СтрНачинаетсяС(СтрокаФормата , "Б") Тогда + Параметры[ЗначениеПараметра.Ключ] = Формат(ПреобразоватьСтрокиКТипу(Значение, "Булево"), СтрокаФормата); + Иначе + Параметры[ЗначениеПараметра.Ключ] = Формат(Результат.Получить(Префикс + ИмяПараметра), СтрокаФормата); + КонецЕсли; + Иначе + Параметры[ЗначениеПараметра.Ключ] = ?(Результат[Префикс + ЗначениеПараметра.Ключ] <> Неопределено, Результат[Префикс + ЗначениеПараметра.Ключ], ""); + КонецЕсли; + КонецЕсли; + КонецЕсли; + КонецЦикла; +КонецПроцедуры + +Функция ПреобразоватьСтрокиКТипу(Значение, Тип) + ОписаниеТипа = Новый ОписаниеТипов(Тип); + Возврат ОписаниеТипа.ПривестиЗначение(Значение); +КонецФункции + +Функция ОпределитьОбщиеРеквизиты() + + ОбщиеРеквизиты = ДеревоРеквизитов(); + ОбщиеРеквизитыСтроки = ОбщиеРеквизиты(ОбщиеРеквизиты); + + ДобавитьОбщийРеквизит(ОбщиеРеквизитыСтроки, "ТекущаяДата", НСтр("ru = 'Текущая дата'"), Новый ОписаниеТипов("Дата")); + ДобавитьОбщийРеквизит(ОбщиеРеквизитыСтроки, "ЗаголовокСистемы", НСтр("ru = 'Заголовок системы'")); + ДобавитьОбщийРеквизит(ОбщиеРеквизитыСтроки, "ТекущийПользователь", НСтр("ru = 'Текущий пользователь'"), Новый ОписаниеТипов("СправочникСсылка.Пользователи")); + РазвернутьРеквизит(ИмяУзлаОбщихРеквизитов() + ".ТекущийПользователь", ОбщиеРеквизитыСтроки.Строки,, "Недействителен, ИдентификаторПользователяИБ, ИдентификаторПользователяСервиса, Подготовлен, Служебный"); + + Возврат ОбщиеРеквизиты; + +КонецФункции + +Процедура ЗаполнитьОбщиеРеквизиты(ОбщиеРеквизиты) + + Если ТипЗнч(ОбщиеРеквизиты) = Тип("Соответствие") Тогда + Если ОбщиеРеквизиты.Получить("ТекущаяДата") <> Неопределено Тогда + ОбщиеРеквизиты["ТекущаяДата"] = ТекущаяДатаСеанса(); + КонецЕсли; + Если ОбщиеРеквизиты.Получить("ЗаголовокСистемы") <> Неопределено Тогда + ОбщиеРеквизиты["ЗаголовокСистемы"] = ИмяЭтойИнформационнойБазы(); + КонецЕсли; + Если ТипЗнч(ОбщиеРеквизиты.Получить("ТекущийПользователь")) = Тип("Соответствие") Тогда + ТекущийПользователь = Пользователи.АвторизованныйПользователь(); + ЗаполнитьРеквизитыПоПредмету(ОбщиеРеквизиты.Получить("ТекущийПользователь"), ТекущийПользователь); + ЗаполнитьРеквизитыСвойствИКонтактнойИнформации(ОбщиеРеквизиты.Получить("ТекущийПользователь"), ТекущийПользователь); + КонецЕсли; + + КонецЕсли; + +КонецПроцедуры + +Процедура ЗаполнитьРеквизитыПоСКД(Реквизиты, Предмет, ПараметрыШаблона) Экспорт + + ИмяМакета = ПараметрыШаблона.Макет; + + ПараметрыЗапроса = Новый Массив; + МетаданныеОбъекта = Предмет.Метаданные(); + ИмяОбъекта = МетаданныеОбъекта.Имя; + МенеджерОбъекта = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(МетаданныеОбъекта.ПолноеИмя()); + МакетСКД = МенеджерОбъекта.ПолучитьМакет(ИмяМакета); + + АдресСхемы = ПоместитьВоВременноеХранилище(МакетСКД); + КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных; + КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(АдресСхемы)); + Для Каждого ДоступныйПараметр Из КомпоновщикНастроек.Настройки.ПараметрыДанных.ДоступныеПараметры.Элементы Цикл + Если СтрСравнить(ДоступныйПараметр.Заголовок, "Период") <> 0 Тогда + ПараметрыЗапроса.Добавить(Строка(ДоступныйПараметр.Параметр)); + КонецЕсли; + КонецЦикла; + + КомпоновщикНастроек.ЗагрузитьНастройки(МакетСКД.НастройкиПоУмолчанию); + КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных(); + + Для Каждого Реквизит Из Реквизиты Цикл + ВыбранноеПоле = КомпоновщикНастроек.Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных")); + ВыбранноеПоле.Поле = Новый ПолеКомпоновкиДанных(Реквизит.Ключ); + КонецЦикла; + + МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(МакетСКД, КомпоновщикНастроек.ПолучитьНастройки(),,, Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений")); + ТекстЗапросаМакет = МакетКомпоновкиДанных.НаборыДанных.Данные.Запрос; + + Запрос = Новый Запрос; + Запрос.Текст = ТекстЗапросаМакет; + + ЕстьНезаполненныйПараметр = Ложь; + Для каждого ТребуемыйПараметр Из ПараметрыЗапроса Цикл + Если СтрСравнить(ТребуемыйПараметр, "ТекущаяДата") = 0 Тогда + Запрос.УстановитьПараметр(ТребуемыйПараметр, ТекущаяДатаСеанса()); + ИначеЕсли СтрСравнить(ТребуемыйПараметр, ИмяОбъекта) = 0 Тогда + Запрос.УстановитьПараметр(ТребуемыйПараметр, Предмет); + Иначе + Если ПараметрыШаблона.ПараметрыСКД.Свойство(ТребуемыйПараметр) Тогда + Запрос.УстановитьПараметр(ТребуемыйПараметр, ПараметрыШаблона.ПараметрыСКД[ТребуемыйПараметр]); + Иначе + ЕстьНезаполненныйПараметр = Истина; + Прервать; + КонецЕсли; + + КонецЕсли; + КонецЦикла; + + Если ЕстьНезаполненныйПараметр Тогда + ВызватьИсключение НСтр("ru = 'Не удалось сформировать сообщение, т.к. отсутствуют необходимые параметры.'"); + КонецЕсли; + + РезультатЗапроса = Запрос.Выполнить().Выгрузить(); + Если РезультатЗапроса.Количество() > 0 Тогда + РезультатЗапроса = СтрокаТаблицыЗначенийВСоответствие(РезультатЗапроса[0]); + УстановитьПараметрыИзЗапроса(Реквизиты, РезультатЗапроса); + КонецЕсли; + +КонецПроцедуры + +Процедура ЗаполнитьРеквизитыПоПредмету(Реквизиты, Предмет) + + МетаданныеОбъекта = Предмет.Метаданные(); + ПараметрыОснования = ОпределитьРеквизитыДляЗапросаПоМетаданным(Реквизиты, МетаданныеОбъекта); + + СписокРеквизитов = Сред(СписокПараметров(ПараметрыОснования), 3); + Если ЗначениеЗаполнено(СписокРеквизитов) Тогда + Запрос = Новый Запрос; + ЗапросТекст = + "ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1 + | %1 + |ИЗ + | %2 КАК %3 + |ГДЕ + | %3.Ссылка = &Ссылка"; + + ЗапросТекст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ЗапросТекст, СписокРеквизитов, МетаданныеОбъекта.ПолноеИмя(), МетаданныеОбъекта.Имя); + + Запрос.УстановитьПараметр("Ссылка", Предмет); + Запрос.Текст = ЗапросТекст; + + РезультатЗапроса = Запрос.Выполнить().Выгрузить(); + Если РезультатЗапроса.Количество() > 0 Тогда + РезультатЗапроса = СтрокаТаблицыЗначенийВСоответствие(РезультатЗапроса[0]); + УстановитьПараметрыИзЗапроса(Реквизиты, РезультатЗапроса); + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +Функция СтрокаТаблицыЗначенийВСоответствие(СтрокаТаблицыЗначений) + + Соответствие = Новый Соответствие; + Для каждого Колонка Из СтрокаТаблицыЗначений.Владелец().Колонки Цикл + Соответствие.Вставить(Колонка.Имя, СтрокаТаблицыЗначений[Колонка.Имя]); + КонецЦикла; + + Возврат Соответствие; + +КонецФункции + +// Подставляет в шаблон значения параметров сообщения и формирует текст сообщения. +// +Функция ВставитьПараметрыВСтрокуСогласноТаблицеПараметров(Знач ШаблонСтроки, ВставляемыеЗначения, Знач Префикс = "") Экспорт + + Результат = ШаблонСтроки; + Для каждого СписокРеквизитов Из ВставляемыеЗначения Цикл + Если ТипЗнч(СписокРеквизитов.Значение) = Тип("Соответствие") Тогда + Результат = ВставитьПараметрыВСтрокуСогласноТаблицеПараметров(Результат, СписокРеквизитов.Значение, Префикс + СписокРеквизитов.Ключ + "."); + Иначе + Результат = СтрЗаменить(Результат, "[" + Префикс + СписокРеквизитов.Ключ + "]", СписокРеквизитов.Значение); + КонецЕсли; + КонецЦикла; + + Возврат Результат; + +КонецФункции + +// Обрабатывает текст HTML для помещения в форматированный документ. +// +Процедура ОбработатьHTMLДляФорматированногоДокумента(ПараметрыШаблона, СформированноеСообщение, ПреобразовыватьHTMLДляФорматированногоДокумента, СписокФайлов = Неопределено) Экспорт + + Если ПустаяСтрока(СформированноеСообщение.Текст) Тогда + Возврат; + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПрисоединенныеФайлы") Тогда + МодульПрисоединенныеФайлы = ОбщегоНазначения.ОбщийМодуль("ПрисоединенныеФайлы"); + + Если СписокФайлов = Неопределено Тогда + СписокФайлов = Новый Массив; + МодульПрисоединенныеФайлы.ПолучитьПрикрепленныеФайлыКОбъекту(ПараметрыШаблона.Шаблон, СписокФайлов); + КонецЕсли; + + ДокументHTML = ПолучитьОбъектДокументHTMLИзТекстаHTML(СформированноеСообщение.Текст); + Для каждого Картинка Из ДокументHTML.Картинки Цикл + + АтрибутИсточникКартинки = Картинка.Атрибуты.ПолучитьИменованныйЭлемент("src"); + + ИзображениеОтсутствуетВПрисоединенныхФайлах = Истина; + Для Каждого ПрисоединенныйФайл Из СписокФайлов Цикл + Если СтрЧислоВхождений(АтрибутИсточникКартинки.Значение, ПрисоединенныйФайл.ИДФайлаЭлектронногоПисьма) > 0 Тогда + ДанныеФайла = МодульПрисоединенныеФайлы .ПолучитьДанныеФайла(ПрисоединенныйФайл.Ссылка, ПараметрыШаблона.УникальныйИдентификатор); + ОбработатьКартинкуВТекстеHTMLДляФорматированногоДокумента(Картинка, ДанныеФайла, СформированноеСообщение, + АтрибутИсточникКартинки, ПрисоединенныйФайл.Наименование, ПрисоединенныйФайл.ИДФайлаЭлектронногоПисьма); + ИзображениеОтсутствуетВПрисоединенныхФайлах = Ложь; + Прервать; + ИначеЕсли СтрНачинаетсяС(АтрибутИсточникКартинки.Значение, "cid:" + ПрисоединенныйФайл.Наименование) Тогда + НайденнаяСтрока = СформированноеСообщение.Вложения.Найти(ПрисоединенныйФайл.Наименование, "Представление"); + Если НайденнаяСтрока <> Неопределено Тогда + СформированноеСообщение.Вложения.Удалить(НайденнаяСтрока); + КонецЕсли; + + ДанныеФайла = МодульПрисоединенныеФайлы .ПолучитьДанныеФайла(ПрисоединенныйФайл.Ссылка, ПараметрыШаблона.УникальныйИдентификатор); + ОбработатьКартинкуВТекстеHTMLДляФорматированногоДокумента(Картинка, ДанныеФайла, СформированноеСообщение, + АтрибутИсточникКартинки, ПрисоединенныйФайл.Наименование, ПрисоединенныйФайл.Наименование); + ИзображениеОтсутствуетВПрисоединенныхФайлах = Ложь; + Прервать; + КонецЕсли; + КонецЦикла; + Если ИзображениеОтсутствуетВПрисоединенныхФайлах Тогда + ИмяКартинки = Сред(АтрибутИсточникКартинки.Значение, 5); + НайденнаяСтрока = СформированноеСообщение.Вложения.Найти(ИмяКартинки, "Представление"); + Если НайденнаяСтрока <> Неопределено Тогда + ДвоичныеДанные = ПолучитьИзВременногоХранилища(НайденнаяСтрока.АдресВоВременномХранилище); + АдресВоВременномХранилище = ПоместитьВоВременноеХранилище(ДвоичныеДанные, ПараметрыШаблона.УникальныйИдентификатор); + + НайденнаяСтрока.Идентификатор = ИмяКартинки; + НайденнаяСтрока.АдресВоВременномХранилище = АдресВоВременномХранилище; + НовыйАтрибутКартинки = АтрибутИсточникКартинки.КлонироватьУзел(Ложь); + НовыйАтрибутКартинки.ТекстовоеСодержимое = ИмяКартинки; + Картинка.Атрибуты.УстановитьИменованныйЭлемент(НовыйАтрибутКартинки); + КонецЕсли; + КонецЕсли; + КонецЦикла; + + Если ПреобразовыватьHTMLДляФорматированногоДокумента Тогда + ТекстHTML = ПолучитьТекстHTMLИзОбъектаДокументHTML(ДокументHTML); + СформированноеСообщение.Текст = ТекстHTML; + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +//Процедура ОбработатьКартинкуВТекстеHTMLДляФорматированногоДокумента(Картинка, ПрисоединенныйФайл, СформированноеСообщение, АтрибутИсточникКартинки, ПараметрыОтправки) +Процедура ОбработатьКартинкуВТекстеHTMLДляФорматированногоДокумента(Картинка, ПрисоединенныйФайл, СформированноеСообщение, АтрибутИсточникКартинки, Представление, Идентификатор) + + НовыйАтрибутКартинки = АтрибутИсточникКартинки.КлонироватьУзел(Ложь); + НовыйАтрибутКартинки.ТекстовоеСодержимое = ПрисоединенныйФайл.Наименование; + Картинка.Атрибуты.УстановитьИменованныйЭлемент(НовыйАтрибутКартинки); + + НовоеВложение = СформированноеСообщение.Вложения.Добавить(); + НовоеВложение.Представление = Представление; + НовоеВложение.АдресВоВременномХранилище = ПрисоединенныйФайл.СсылкаНаДвоичныеДанныеФайла; + НовоеВложение.Идентификатор = Идентификатор; + +КонецПроцедуры + +// Получает текст HTML из объекта ДокументHTML. +// +// Параметры: +// ДокументHTML - ДокументHTML - документ, из которого будет извлекаться текст. +// +// Возвращаемое значение: +// Строка - текст HTML +// +Функция ПолучитьТекстHTMLИзОбъектаДокументHTML(ДокументHTML) Экспорт + + ЗаписьDOM = Новый ЗаписьDOM; + ЗаписьHTML = Новый ЗаписьHTML; + ЗаписьHTML.УстановитьСтроку(); + ЗаписьDOM.Записать(ДокументHTML, ЗаписьHTML); + Возврат ЗаписьHTML.Закрыть(); + +КонецФункции + +// Получает объект ДокументHTML из текста HTML. +// +// Параметры: +// ТекстHTML - Строка - HTML текст. +// +// Возвращаемое значение: +// ДокументHTML - созданный документ HTML. +Функция ПолучитьОбъектДокументHTMLИзТекстаHTML(ТекстHTML,Кодировка = Неопределено) Экспорт + + Построитель = Новый ПостроительDOM; + ЧтениеHTML = Новый ЧтениеHTML; + + НовыйТекстHTML = ТекстHTML; + ПозицияОткрытиеXML = СтрНайти(НовыйТекстHTML,"<?xml"); + + Если ПозицияОткрытиеXML > 0 Тогда + + ПозицияЗакрытиеXML = СтрНайти(НовыйТекстHTML,"?>"); + Если ПозицияЗакрытиеXML > 0 Тогда + + НовыйТекстHTML = ЛЕВ(НовыйТекстHTML,ПозицияОткрытиеXML - 1) + ПРАВ(НовыйТекстHTML,СтрДлина(НовыйТекстHTML) - ПозицияЗакрытиеXML -1); + + КонецЕсли; + + КонецЕсли; + + Если Кодировка = Неопределено Тогда + ЧтениеHTML.УстановитьСтроку(ТекстHTML); + Иначе + ЧтениеHTML.УстановитьСтроку(ТекстHTML, Кодировка); + КонецЕсли; + Возврат Построитель.Прочитать(ЧтениеHTML); + +КонецФункции + +// Работа с реквизитами + +Процедура РеквизитыПоСКД(Реквизиты, Макет, Знач Префикс = "") Экспорт + + Если ЗначениеЗаполнено(Префикс) Тогда + Если НЕ СтрЗаканчиваетсяНа(Префикс, ".") Тогда + Префикс = Префикс + "."; + КонецЕсли; + КонецЕсли; + + АдресСхемы = ПоместитьВоВременноеХранилище(Макет); + КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных; + КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(АдресСхемы)); + + Для Каждого ДоступноеПоле Из КомпоновщикНастроек.Настройки.ДоступныеПоляВыбора.Элементы Цикл + + Если ДоступноеПоле.Папка Тогда + Продолжить; + КонецЕсли; + + НовыйСтрока = ДобавитьРеквизит(Префикс + ДоступноеПоле.Поле, Реквизиты); + НовыйСтрока.Представление = ДоступноеПоле.Заголовок; + + КонецЦикла; + +КонецПроцедуры + +Процедура РеквизитыПоМетаданнымОбъекта(Реквизиты, МетаданныеОбъект, СписокРеквизитов = "", ИсключаяРеквизиты = "", Знач Префикс = "") + + СведенияОСпискеРеквизитов = Новый Структура("СписокРеквизитов, СписокСодержитДанные"); + СведенияОСпискеРеквизитов.СписокРеквизитов = СтрРазделить(ВРег(СписокРеквизитов), ",", Ложь); + СведенияОСпискеРеквизитов.СписокСодержитДанные = (СведенияОСпискеРеквизитов.СписокРеквизитов.Количество() > 0); + + СведенияОИсключаемыхРеквизитах = Новый Структура("СписокРеквизитов, СписокСодержитДанные"); + СведенияОИсключаемыхРеквизитах.СписокРеквизитов = СтрРазделить(ВРег(ИсключаяРеквизиты), ",", Ложь); + СведенияОИсключаемыхРеквизитах.СписокСодержитДанные = (СведенияОИсключаемыхРеквизитах.СписокРеквизитов.Количество() > 0); + + Если НЕ ОбщегоНазначения.ЭтоПеречисление(МетаданныеОбъект) Тогда + Для каждого Реквизит Из МетаданныеОбъект.Реквизиты Цикл + Если НЕ СтрНачинаетсяС(Реквизит.Имя, "Удалить") Тогда + Если Реквизит.Тип.Типы().Количество() = 1 И Реквизит.Тип.Типы()[0] = Тип("ХранилищеЗначения") Тогда + Продолжить; + КонецЕсли; + ДобавитьРеквизитПоМетаданнымОбъекта(Реквизиты, Реквизит, Префикс, СведенияОСпискеРеквизитов, СведенияОИсключаемыхРеквизитах); + КонецЕсли; + КонецЦикла; + КонецЕсли; + + СкрываемыеСтандартныеРеквизиты(СведенияОИсключаемыхРеквизитах.СписокРеквизитов); + СведенияОИсключаемыхРеквизитах.СписокСодержитДанные = Истина; + Для каждого Реквизит Из МетаданныеОбъект.СтандартныеРеквизиты Цикл + ДобавитьРеквизитПоМетаданнымОбъекта(Реквизиты, Реквизит, Префикс, СведенияОСпискеРеквизитов, СведенияОИсключаемыхРеквизитах); + КонецЦикла; + + Если НЕ ОбщегоНазначения.ЭтоПеречисление(МетаданныеОбъект) Тогда + ДобавитьРеквизитыСвойств(МетаданныеОбъект, Префикс, Реквизиты, СведенияОИсключаемыхРеквизитах, СведенияОСпискеРеквизитов); + ДобавитьРеквизитыКонтактнойИнформации(МетаданныеОбъект, Префикс, Реквизиты, СведенияОИсключаемыхРеквизитах, СведенияОСпискеРеквизитов); + КонецЕсли; + +КонецПроцедуры + +Процедура ДобавитьРеквизитыКонтактнойИнформации(МетаданныеОбъект, Префикс, Реквизиты, СведенияОИсключаемыхРеквизитах, СведенияОСпискеРеквизитов) + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда + Ссылка = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(МетаданныеОбъект.ПолноеИмя()).ПустаяСсылка(); + МодульУправлениеКонтактнойИнформацией = ОбщегоНазначения.ОбщийМодуль("УправлениеКонтактнойИнформацией"); + ВидыКонтактнойИнформацией = МодульУправлениеКонтактнойИнформацией.ВидыКонтактнойИнформацияОбъекта(Ссылка); + Если ВидыКонтактнойИнформацией.Количество() > 0 Тогда + Для каждого ВидКонтактнойИнформацией Из ВидыКонтактнойИнформацией Цикл + ДобавитьРеквизитПоМетаданнымОбъекта(Реквизиты, ВидКонтактнойИнформацией.Ссылка, Префикс, СведенияОСпискеРеквизитов, СведенияОИсключаемыхРеквизитах); + КонецЦикла; + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +Процедура ДобавитьРеквизитыСвойств(МетаданныеОбъект, Префикс, Реквизиты, СведенияОИсключаемыхРеквизитах, СведенияОСпискеРеквизитов) + + Свойства = Новый Массив; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Свойства") Тогда + МодульУправлениеСвойствами = ОбщегоНазначения.ОбщийМодуль("УправлениеСвойствами"); + ПустаяСсылка = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(МетаданныеОбъект.ПолноеИмя()).ПустаяСсылка(); + ПолучатьДопСведения = МодульУправлениеСвойствами.ИспользоватьДопСведения(ПустаяСсылка); + ПолучатьДопРеквизиты = МодульУправлениеСвойствами.ИспользоватьДопРеквизиты(ПустаяСсылка); + + Если ПолучатьДопРеквизиты Или ПолучатьДопСведения Тогда + Свойства = МодульУправлениеСвойствами.ПолучитьСписокСвойств(ПустаяСсылка, ПолучатьДопРеквизиты, ПолучатьДопСведения); + Для каждого Свойство Из Свойства Цикл + ДобавитьРеквизитПоМетаданнымОбъекта(Реквизиты, Свойство, Префикс, СведенияОСпискеРеквизитов, СведенияОИсключаемыхРеквизитах); + КонецЦикла; + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +Процедура ДобавитьРеквизитПоМетаданнымОбъекта(Реквизиты, Реквизит, Префикс, СведенияОСпискеРеквизитов, СведенияОИсключаемыхРеквизитах); + + Если ТипЗнч(Реквизит) = Тип("ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения") Тогда + ИмяРеквизита = Реквизит.Наименование; + Представление = Реквизит.Наименование; + Тип = Реквизит.ТипЗначения; + Формат = Реквизит.ФорматСвойства; + ИначеЕсли ТипЗнч(Реквизит) = Тип("СправочникСсылка.ВидыКонтактнойИнформации") Тогда + ИмяРеквизита = Реквизит.Наименование; + Представление = Реквизит.Наименование; + Тип = Новый ОписаниеТипов("Строка"); + Формат = ""; + Иначе + ИмяРеквизита = Реквизит.Имя; + Представление = Реквизит.Представление(); + Тип = Реквизит.Тип; + Формат = Реквизит.Формат; + КонецЕсли; + + Если СведенияОСпискеРеквизитов.СписокСодержитДанные + И СведенияОСпискеРеквизитов.СписокРеквизитов.Найти(ВРег(СокрЛП(ИмяРеквизита))) = Неопределено Тогда + Возврат; + КонецЕсли; + + Если СведенияОИсключаемыхРеквизитах.СписокСодержитДанные + И СведенияОИсключаемыхРеквизитах.СписокРеквизитов.Найти(ВРег(СокрЛП(ИмяРеквизита))) <> Неопределено Тогда + Возврат; + КонецЕсли; + + НовыйСтрока = Реквизиты.Добавить(); + НовыйСтрока.Имя = Префикс + ИмяРеквизита; + НовыйСтрока.Представление = Представление; + НовыйСтрока.Тип = Тип; + НовыйСтрока.Формат = Формат; + +КонецПроцедуры + +Функция ЗначенияРеквизитовСвойств(Предмет) + + ЗначенияСвойств = Новый ТаблицаЗначений; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Свойства") Тогда + МодульУправлениеСвойствами = ОбщегоНазначения.ОбщийМодуль("УправлениеСвойствами"); + ПолучатьДопСведения = МодульУправлениеСвойствами.ИспользоватьДопСведения(Предмет); + ПолучатьДопРеквизиты = МодульУправлениеСвойствами.ИспользоватьДопРеквизиты(Предмет); + + Если ПолучатьДопРеквизиты Или ПолучатьДопСведения Тогда + ЗначенияСвойств = МодульУправлениеСвойствами.ПолучитьЗначенияСвойств(Предмет, ПолучатьДопРеквизиты, ПолучатьДопСведения); + КонецЕсли; + + КонецЕсли; + + Возврат ЗначенияСвойств; + +КонецФункции + +Функция ОпределитьРеквизитыДляЗапросаПоМетаданным(Знач ПараметрыТекстаСообщения, МетаданныеОбъекта) + + ПараметрыОснования = СкопироватьСоответствие(ПараметрыТекстаСообщения); + ОбработатьОпределитьРеквизитыДляЗапросаПоМетаданным(ПараметрыОснования, МетаданныеОбъекта); + Возврат ПараметрыОснования; + +КонецФункции + +Функция ОбработатьОпределитьРеквизитыДляЗапросаПоМетаданным(ПараметрыОснования, МетаданныеОбъекта) + + Для каждого ПараметрОснования Из ПараметрыОснования Цикл + Позиция = СтрНайти(ПараметрОснования.Ключ, "{"); + Если Позиция > 0 Тогда + ИмяПараметра = Лев(ПараметрОснования.Ключ, Позиция - 1); + Иначе + ИмяПараметра = ПараметрОснования.Ключ; + КонецЕсли; + Если ТипЗнч(ПараметрОснования.Значение) = Тип("Соответствие") Тогда + МетаданныеОбъектаПоКлючу = МетаданныеОбъекта.Реквизиты.Найти(ИмяПараметра); + Если МетаданныеОбъектаПоКлючу <> Неопределено Тогда + Для каждого Тип Из МетаданныеОбъектаПоКлючу.Тип.Типы() Цикл + ОбработатьОпределитьРеквизитыДляЗапросаПоМетаданным(ПараметрОснования.Значение, Метаданные.НайтиПоТипу(Тип)); + КонецЦикла; + Иначе + ПараметрыОснования.Удалить(ПараметрОснования.Ключ); + КонецЕсли; + ИначеЕсли МетаданныеОбъекта.Реквизиты.Найти(ИмяПараметра) = Неопределено Тогда + РеквизитНеНайден = Истина; + Для каждого СтандартныеРеквизиты Из МетаданныеОбъекта.СтандартныеРеквизиты Цикл + Если СтрСравнить(СтандартныеРеквизиты.Имя, ИмяПараметра) = 0 Тогда + РеквизитНеНайден = Ложь; + Прервать; + КонецЕсли; + КонецЦикла; + + Если РеквизитНеНайден Тогда + ПараметрыОснования.Удалить(ПараметрОснования.Ключ); + КонецЕсли; + КонецЕсли; + КонецЦикла; + +КонецФункции + +Процедура ОпределитьОшибочныеРеквизиты(ПараметрыТекстаСообщения, ОшибочныеРеквизиты, СведенияОШаблоне, Префикс = "") Экспорт + + ИмяУзлаОбщихРеквизитов = ИмяУзлаОбщихРеквизитов(); + Для каждого Реквизит Из ПараметрыТекстаСообщения Цикл + Если ТипЗнч(Реквизит.Значение) = Тип("Соответствие") Тогда + ОпределитьОшибочныеРеквизиты(Реквизит.Значение, ОшибочныеРеквизиты, СведенияОШаблоне, Префикс + Реквизит.Ключ + "."); + Иначе + ПозицияФорматТекст = СтрНайти(Реквизит.Ключ, "{", НаправлениеПоиска.СКонца); + Если ПозицияФорматТекст > 0 Тогда + ИмяПараметра = Префикс + Лев(Реквизит.Ключ, ПозицияФорматТекст - 1); + Иначе + ИмяПараметра = Префикс + Реквизит.Ключ; + КонецЕсли; + Если СтрНачинаетсяС(Префикс, ИмяУзлаОбщихРеквизитов) Тогда + НайденныйРеквизит = СведенияОШаблоне.ОбщиеРеквизиты.Строки.Найти(ИмяПараметра, "Имя", Истина); + Иначе + НайденныйРеквизит = СведенияОШаблоне.Реквизиты.Строки.Найти(ИмяПараметра, "Имя", Истина); + КонецЕсли; + Если НайденныйРеквизит = Неопределено Тогда + ОшибочныеРеквизиты.Добавить(ИмяПараметра); + КонецЕсли; + КонецЕсли; + КонецЦикла; + +КонецПроцедуры + +Процедура ЗаполнитьРеквизитыСвойствИКонтактнойИнформации(ПараметрыТекстаСообщения, Предмет); + + МетаданныеОбъекта = Предмет.Метаданные(); + ЗначенияСвойств = ЗначенияРеквизитовСвойств(Предмет); + КонтактнаяИнформацияОбъектов = ЗначенияРеквизитовКонтактнойИнформации(Предмет); + + Для каждого ПараметрОснования Из ПараметрыТекстаСообщения Цикл + Если ТипЗнч(ПараметрОснования.Значение) = Тип("Соответствие") Тогда + МетаданныеОбъектаПоКлючу = МетаданныеОбъекта.Реквизиты.Найти(ПараметрОснования.Ключ); + Если МетаданныеОбъектаПоКлючу <> Неопределено Тогда + Для каждого Тип Из МетаданныеОбъектаПоКлючу.Тип.Типы() Цикл + ЗаполнитьРеквизитыСвойствИКонтактнойИнформации(ПараметрОснования.Значение, Предмет[ПараметрОснования.Ключ]); + КонецЦикла; + КонецЕсли; + Иначе + РеквизитНеНайден = Истина; + Если ЗначенияСвойств <> Неопределено Тогда + Для каждого СтрокаСвойство Из ЗначенияСвойств Цикл + Если СтрСравнить(СтрокаСвойство.Свойство.Наименование, ПараметрОснования.Ключ) = 0 Тогда + ПараметрыТекстаСообщения[ПараметрОснования.Ключ] = Строка(СтрокаСвойство.Значение); + РеквизитНеНайден = Ложь; + Прервать; + КонецЕсли; + КонецЦикла; + КонецЕсли; + + Если РеквизитНеНайден И КонтактнаяИнформацияОбъектов <> Неопределено Тогда + Для каждого КонтактнаяИнформацияОбъекта Из КонтактнаяИнформацияОбъектов Цикл + Если СтрСравнить(КонтактнаяИнформацияОбъекта.Вид.Наименование, ПараметрОснования.Ключ) = 0 Тогда + Если ЗначениеЗаполнено(ПараметрыТекстаСообщения[ПараметрОснования.Ключ]) Тогда + ПредыдущиеЗначение = ПараметрыТекстаСообщения[ПараметрОснования.Ключ] +", "; + Иначе + ПредыдущиеЗначение = ""; + КонецЕсли; + ПараметрыТекстаСообщения[ПараметрОснования.Ключ] = ПредыдущиеЗначение + Строка(КонтактнаяИнформацияОбъекта.Представление); + КонецЕсли; + КонецЦикла; + КонецЕсли; + + КонецЕсли; + КонецЦикла; + +КонецПроцедуры + +Функция ЗначенияРеквизитовКонтактнойИнформации(Предмет) + + КонтактнаяИнформацияОбъектов = Неопределено; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда + МодульУправлениеКонтактнойИнформацией = ОбщегоНазначения.ОбщийМодуль("УправлениеКонтактнойИнформацией"); + + ОбъектыСКонтактнойИнформацией = Новый Массив; + ОбъектыСКонтактнойИнформацией.Добавить(Предмет); + ВидыКонтактнойИнформации = МодульУправлениеКонтактнойИнформацией.ВидыКонтактнойИнформацияОбъекта(Предмет.Ссылка); + Если ВидыКонтактнойИнформации.Количество() > 0 Тогда + КонтактнаяИнформацияОбъектов = МодульУправлениеКонтактнойИнформацией.КонтактнаяИнформацияОбъектов(ОбъектыСКонтактнойИнформацией); + КонецЕсли; + КонецЕсли; + + Возврат КонтактнаяИнформацияОбъектов; + +КонецФункции + +Функция ЗаголовокОбщиеРеквизиты() Экспорт + Возврат НСтр("ru = 'Общие реквизиты'"); +КонецФункции + +// Работа с реквизитами вспомогательные методы +Функция ДеревоРеквизитов() + + ТипСтрока = Новый ОписаниеТипов("Строка"); + Реквизиты = Новый ДеревоЗначений; + Реквизиты.Колонки.Добавить("Имя", ТипСтрока); + Реквизиты.Колонки.Добавить("Представление", ТипСтрока); + Реквизиты.Колонки.Добавить("Подсказка", ТипСтрока); + Реквизиты.Колонки.Добавить("Формат", ТипСтрока); + Реквизиты.Колонки.Добавить("Тип", Новый ОписаниеТипов("ОписаниеТипов")); + Реквизиты.Колонки.Добавить("ПроизвольныйПараметр", Новый ОписаниеТипов("Булево")); + + Возврат Реквизиты; + +КонецФункции + +Функция ИмяУзлаОбщихРеквизитов() Экспорт + Возврат НСтр("ru = 'ОбщиеРеквизиты'"); +КонецФункции + +Функция ОбщиеРеквизиты(Реквизиты) + + УзелРеквизитов = Реквизиты.Строки.Найти(ИмяУзлаОбщихРеквизитов(), "Имя"); + Если УзелРеквизитов = Неопределено Тогда + УзелРеквизитов = Реквизиты.Строки.Добавить(); + УзелРеквизитов.Имя = ИмяУзлаОбщихРеквизитов(); + УзелРеквизитов.Представление = ЗаголовокОбщиеРеквизиты(); + КонецЕсли; + + Возврат УзелРеквизитов; + +КонецФункции + +Процедура ДобавитьОбщийРеквизит(ОбщиеРеквизиты, Имя, Представление, Тип = Неопределено) + + НовыйРеквизит = ОбщиеРеквизиты.Строки.Добавить(); + НовыйРеквизит.Имя = ИмяУзлаОбщихРеквизитов() + "." + Имя; + НовыйРеквизит.Представление = Представление; + Если Тип = Неопределено Тогда + НовыйРеквизит.Тип = Новый ОписаниеТипов("Строка"); + Иначе + НовыйРеквизит.Тип = Тип; + КонецЕсли; + +КонецПроцедуры + +Функция ДобавитьРеквизит(Знач Имя, Узел) + + ИмяУзла = Узел.Родитель.Имя; + Если НЕ СтрНачинаетсяС(Имя, ИмяУзла + ".") Тогда + Имя = ИмяУзла + "." + Имя; + КонецЕсли; + + НовыйРеквизит = Узел.Добавить(); + НовыйРеквизит.Имя = Имя; + НовыйРеквизит.Представление = Имя; + + Возврат НовыйРеквизит; + +КонецФункции + +Функция РазвернутьРеквизит(Знач Имя, Узел, СписокРеквизитов = "", ИсключаяРеквизиты = "") Экспорт + + Реквизит = Узел.Найти(Имя, "Имя", Ложь); + Если Реквизит <> Неопределено Тогда + РазвернутьРеквизитПоМетаданнымОбъекта(Реквизит, СписокРеквизитов, ИсключаяРеквизиты, Имя); + Иначе + Имя = Узел.Родитель.Имя + "." + Имя; + Реквизит = Узел.Найти(Имя, "Имя", Ложь); + Если СтрЧислоВхождений(Имя, ".") > 1 Тогда + Возврат Реквизит.Строки; + КонецЕсли; + + Если Реквизит <> Неопределено Тогда + РазвернутьРеквизитПоМетаданнымОбъекта(Реквизит, СписокРеквизитов, ИсключаяРеквизиты, Имя); + КонецЕсли; + КонецЕсли; + + Возврат Реквизит.Строки; + +КонецФункции + +Процедура РазвернутьРеквизитПоМетаданнымОбъекта(Реквизит, СписокРеквизитов, ИсключаяРеквизиты, Знач Префикс) + + Если ТипЗнч(Реквизит.Тип) = Тип("ОписаниеТипов") Тогда + УзелРеквизитов = Реквизит.Строки; + Префикс = Префикс + ?(Прав(Префикс, 1) <> ".", ".", ""); + Для каждого Тип Из Реквизит.Тип.Типы() Цикл + МетаданныеОбъект = Метаданные.НайтиПоТипу(Тип); + Если МетаданныеОбъект <> Неопределено Тогда + РеквизитыПоМетаданнымОбъекта(УзелРеквизитов, МетаданныеОбъект, СписокРеквизитов, ИсключаяРеквизиты, Префикс); + КонецЕсли; + КонецЦикла; + КонецЕсли; + +КонецПроцедуры + +// Файлы +Процедура ДобавитьПрисоединенныеФайлыВоВложения(Знач ПараметрыОтправки, Знач Сообщение) + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПрисоединенныеФайлы") Тогда + МодульПрисоединенныеФайлы = ОбщегоНазначения.ОбщийМодуль("ПрисоединенныеФайлы"); + СписокПрисоединенныхФайлов = Новый Массив; + МодульПрисоединенныеФайлы.ПолучитьПрикрепленныеФайлыКОбъекту(ПараметрыОтправки.Шаблон, СписокПрисоединенныхФайлов); + + Для каждого ПрисоединенныйФайл Из СписокПрисоединенныхФайлов Цикл + Если ПустаяСтрока(ПрисоединенныйФайл.ИДФайлаЭлектронногоПисьма) Тогда + ОписаниеФайла = МодульПрисоединенныеФайлы.ПолучитьДанныеФайла(ПрисоединенныйФайл.Ссылка, ПараметрыОтправки.УникальныйИдентификатор); + Если Прав(ОписаниеФайла.ИмяФайла, 1) = "." Тогда + ОписаниеФайлаИмяФайла = Лев(ОписаниеФайла.ИмяФайла, СтрДлина(ОписаниеФайла.ИмяФайла) - 1); + Иначе + ОписаниеФайлаИмяФайла = ОписаниеФайла.ИмяФайла; + КонецЕсли; + Сообщение.Вложения.Вставить(ОписаниеФайлаИмяФайла, ОписаниеФайла.СсылкаНаДвоичныеДанныеФайла); + КонецЕсли; + КонецЦикла; + КонецЕсли; + +КонецПроцедуры + +// Получает заголовок системы, а если он не задан - синоним метаданных конфигурации. +Функция ИмяЭтойИнформационнойБазы() + + УстановитьПривилегированныйРежим(Истина); + + Результат = Константы.ЗаголовокСистемы.Получить(); + + Если ПустаяСтрока(Результат) Тогда + + Результат = Метаданные.Синоним; + + КонецЕсли; + + Возврат Результат; +КонецФункции + +Функция ВнешняяСсылкаНаОбъект(Параметр) + + Возврат ОбщегоНазначения.АдресПубликацииИнформационнойБазыВИнтернете() + "#" + ПолучитьНавигационнуюСсылку(Параметр); + +КонецФункции + +Процедура ЗаполнитьПолучателейСообщения(ПараметрыОтправки, ПараметрыШаблона, Результат, МенеджерОбъекта) + + Если ПараметрыОтправки.Свойство("ДополнительныеПараметры") + И ПараметрыОтправки.ДополнительныеПараметры.Свойство("ПроизвольныеПараметры") Тогда + ПредметСообщения = Новый Структура("Предмет, ПроизвольныеПараметры"); + ПредметСообщения.Предмет = ПараметрыОтправки.Предмет; + ПредметСообщения.ПроизвольныеПараметры = ПараметрыОтправки.ДополнительныеПараметры.ПроизвольныеПараметры; + Иначе + ПредметСообщения = ПараметрыОтправки.Предмет; + КонецЕсли; + + Если ПараметрыШаблона.ТипШаблона = "Письмо" Тогда + Получатели = СформироватьПолучателейПоУмолчанию(ПараметрыОтправки.Предмет, Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты); + ШаблоныСообщенийПереопределяемый.ПриЗаполненииПочтыПолучателейВСообщении(Получатели, ПараметрыШаблона.ПолноеИмяТипаНазначения, ПредметСообщения); + Если МенеджерОбъекта <> Неопределено Тогда + МенеджерОбъекта.ПриЗаполненииПочтыПолучателейВСообщении(Получатели, ПредметСообщения); + КонецЕсли; + + Для каждого Получатели Из Получатели Цикл + Если ЗначениеЗаполнено(Получатели.Адрес) Тогда + Результат.Получатель.Добавить(Получатели.Адрес, Получатели.Представление); + КонецЕсли; + КонецЦикла; + Иначе + Получатели = СформироватьПолучателейПоУмолчанию(ПараметрыОтправки.Предмет, Перечисления.ТипыКонтактнойИнформации.Телефон); + ШаблоныСообщенийПереопределяемый.ПриЗаполненииТелефоновПолучателейВСообщении(Получатели, ПараметрыШаблона.ПолноеИмяТипаНазначения, ПредметСообщения); + Если МенеджерОбъекта <> Неопределено Тогда + МенеджерОбъекта.ПриЗаполненииТелефоновПолучателейВСообщении(Получатели, ПредметСообщения); + КонецЕсли; + + Для каждого Получатели Из Получатели Цикл + Если ЗначениеЗаполнено(Получатели.НомерТелефона) Тогда + Результат.Получатель.Добавить(Получатели.НомерТелефона, Получатели.Представление); + КонецЕсли; + КонецЦикла; + КонецЕсли; + +КонецПроцедуры + +Функция СформироватьПолучателейПоУмолчанию(Предмет, ТипКонтактнойИнформации); + + Получатели = Новый ТаблицаЗначений; + Если ТипКонтактнойИнформации = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты Тогда + Получатели.Колонки.Добавить("Адрес", Новый ОписаниеТипов("Строка")); + ИмяКолонки = "Адрес"; + Иначе + Получатели.Колонки.Добавить("НомерТелефона", Новый ОписаниеТипов("Строка")); + ИмяКолонки = "НомерТелефона"; + КонецЕсли; + Получатели.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); + Получатели.Колонки.Добавить("Контакт"); + + Если Предмет = Неопределено Тогда + Возврат Получатели; + КонецЕсли; + + // Наше заполнение, если у объекта есть контактная информация. + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") Тогда + МодульУправлениеКонтактнойИнформацией = ОбщегоНазначения.ОбщийМодуль("УправлениеКонтактнойИнформацией"); + + ОбъектыСКонтактнойИнформацией = Новый Массив; + ОбъектыСКонтактнойИнформацией.Добавить(Предмет); + ВидыКонтактнойИнформацияОбъекта = МодульУправлениеКонтактнойИнформацией.ВидыКонтактнойИнформацияОбъекта(Предмет); + Если ВидыКонтактнойИнформацияОбъекта.Количество() > 0 Тогда + КонтактнаяИнформацияОбъектов = МодульУправлениеКонтактнойИнформацией.КонтактнаяИнформацияОбъектов(ОбъектыСКонтактнойИнформацией, ТипКонтактнойИнформации); + Если КонтактнаяИнформацияОбъектов.Количество() > 0 Тогда + Для каждого КонтактнаяИнформацияОбъекта Из КонтактнаяИнформацияОбъектов Цикл + НоваяСтрока= Получатели.Добавить(); + НоваяСтрока[ИмяКолонки] = КонтактнаяИнформацияОбъекта.Представление; + НоваяСтрока.Представление = Строка(КонтактнаяИнформацияОбъекта.Объект) + " <" + КонтактнаяИнформацияОбъекта.Представление + ">"; + КонецЦикла; + КонецЕсли; + КонецЕсли; + + КонецЕсли; + + Возврат Получатели; + +КонецФункции + +Функция СкопироватьСоответствие(Источник) + + Получатель = Новый Соответствие; + + Для каждого Элемент Из Источник Цикл + Если ТипЗнч(Элемент.Значение) = Тип("Соответствие") Тогда + Получатель[Элемент.Ключ] = СкопироватьСоответствие(Элемент.Значение); + Иначе + Получатель[Элемент.Ключ] = Элемент.Значение; + КонецЕсли; + КонецЦикла; + + Возврат Получатель; + +КонецФункции + +Функция ИмяСобытияЖурналаРегистрации() + + Возврат НСтр("ru = 'Формирование шаблона сообщений'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); + +КонецФункции + +#КонецОбласти diff --git a/SSL/src/CommonModules/ШаблоныСообщенийСлужебный/ШаблоныСообщенийСлужебный.mdo b/SSL/src/CommonModules/ШаблоныСообщенийСлужебный/ШаблоныСообщенийСлужебный.mdo new file mode 100644 index 000000000..b8dbee9c0 --- /dev/null +++ b/SSL/src/CommonModules/ШаблоныСообщенийСлужебный/ШаблоныСообщенийСлужебный.mdo @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="d14058f5-dfd4-47eb-ae6d-01b7062f5940"> + <name>ШаблоныСообщенийСлужебный</name> + <synonym> + <key>ru</key> + <value>Шаблоны сообщений служебный</value> + </synonym> + <server>true</server> + <externalConnection>true</externalConnection> + <clientOrdinaryApplication>true</clientOrdinaryApplication> +</mdclass:CommonModule> diff --git a/SSL/src/CommonModules/ЭлектроннаяПодпись/Module.bsl b/SSL/src/CommonModules/ЭлектроннаяПодпись/Module.bsl index bcc06228f..f41ca0ad9 100644 --- a/SSL/src/CommonModules/ЭлектроннаяПодпись/Module.bsl +++ b/SSL/src/CommonModules/ЭлектроннаяПодпись/Module.bsl @@ -35,7 +35,6 @@ КонецФункции - // Возвращает менеджер криптографии (на сервере) для указанной программы. // // Параметры: @@ -485,8 +484,9 @@ // Если программа с указанными именем и типом уже существует, то ее свойства перезаполняются // указанными. При заполнении не проверяется корректность указанных свойств. // -// При заполнении можно использовать поставляемые описания программ, список которых находится в процедуре -// ПоставляемыеНастройкиПрограмм модуля менеджера справочника ПрограммыЭлектроннойПодписиИШифрования. +// При заполнении можно использовать поставляемые описания программ, +// список которых находится в процедуре ПоставляемыеНастройкиПрограмм +// модуля менеджера справочника ПрограммыЭлектроннойПодписиИШифрования. // // Параметры: // ОписаниеПрограмм - Массив - содержит значения типа Структура со свойствами: @@ -735,10 +735,6 @@ ОбновитьЗначение(СертификатОбъект.КемВыдан, СтруктураСертификата.КемВыдан); ОбновитьЗначение(СертификатОбъект.ДействителенДо, СтруктураСертификата.ДействителенДо); - Если Не ДополнительныеПараметры.Свойство("Наименование") Тогда - ОбновитьЗначение(СертификатОбъект.Наименование, СтруктураСертификата.Представление); - КонецЕсли; - СвойстваСубъекта = ЭлектроннаяПодписьКлиентСервер.СвойстваСубъектаСертификата(СертификатКриптографии); ОбновитьЗначение(СертификатОбъект.Фамилия, СвойстваСубъекта.Фамилия, Истина); ОбновитьЗначение(СертификатОбъект.Имя, СвойстваСубъекта.Имя, Истина); @@ -746,6 +742,13 @@ ОбновитьЗначение(СертификатОбъект.Должность, СвойстваСубъекта.Должность, Истина); ОбновитьЗначение(СертификатОбъект.Фирма, СвойстваСубъекта.Организация, Истина); + Если СертификатОбъект.ЭтоНовый() + И Не ДополнительныеПараметры.Свойство("Наименование") Тогда + + ДополнительныеПараметры.Вставить("Наименование", + ЭлектроннаяПодписьКлиентСервер.ПредставлениеСертификата(СертификатКриптографии)); + КонецЕсли; + Для Каждого КлючИЗначение Из ДополнительныеПараметры Цикл ОбновитьЗначение(СертификатОбъект[КлючИЗначение.Ключ], КлючИЗначение.Значение); КонецЦикла; diff --git a/SSL/src/CommonModules/ЭлектроннаяПодписьКлиент/Module.bsl b/SSL/src/CommonModules/ЭлектроннаяПодписьКлиент/Module.bsl index 2e4ae4509..169e793c4 100644 --- a/SSL/src/CommonModules/ЭлектроннаяПодписьКлиент/Module.bsl +++ b/SSL/src/CommonModules/ЭлектроннаяПодписьКлиент/Module.bsl @@ -175,6 +175,10 @@ // В результат передается входной параметр ОписаниеДанных, который в успешном случае, дополняется свойствами: // * Успех - Булево - Истина, если все прошло успешно. Если Успех = Ложь, то частичное завершение // определяется по наличию свойства СвойстваПодписи. Если есть, то шаг выполнен. +// * ПользовательНажалКнопкуПодписать - Булево - если Истина, то пользователь хотя бы раз +// нажал на кнопку Подписать. Используется для сценариев, когда для продолжения бизнес-процесса +// достаточно простой подписи (намерения установить подпись), а установка квалифицированной подписи +// является дополнением, которое можно реализовать позднее, если возникли технические проблемы. // * ВыбранныйСертификат - Структура - содержит свойства сертификата: // * Ссылка - СправочникСсылка.СертификатыКлючейЭлектроннойПодписиИШифрования - ссылка на сертификат. // * Отпечаток - Строка - отпечаток сертификата в формате строки Base64. @@ -317,7 +321,7 @@ Обработчик = Новый ОписаниеОповещения("СтандартноеЗавершение", ЭлектроннаяПодписьСлужебныйКлиент, КлиентскиеПараметры); - ФормаДобавления = ОткрытьФорму("ОбщаяФорма.ДобавлениеЭлектроннойПодписиИзФайла", СерверныеПараметры,,,,, + ФормаДобавления = ОткрытьФорму("ОбщаяФорма.ДобавлениеЭлектроннойПодписиИзФайла", СерверныеПараметры,,,,, Новый ОписаниеОповещения("СтандартноеЗавершение", ЭлектроннаяПодписьСлужебныйКлиент, КлиентскиеПараметры)); Если ФормаДобавления = Неопределено Тогда @@ -812,8 +816,8 @@ // * ПроверкиНаСервере - Неопределено - проверка не выполнялась на сервере: // - Структура - со свойствами, как в следующем параметре. // * ПроверкиНаКлиенте - Структура - со свойствами: -// * НаличиеСертификата - Булево, Неопределено - если Истина, тогда проверка прошла успешно, если -// Ложь - проверка прошла не успешно, если Неопределено - не выполнялась. +// * НаличиеСертификата - Булево, Неопределено - если Истина, тогда проверка прошла успешно, +// если Ложь - проверка прошла не успешно, если Неопределено - не выполнялась. // Если стандартные проверки скрыты в процедуре ПриСозданииФормыПроверкаСертификата, // общего модуля ЭлектроннаяПодписьПереопределяемый, тогда свойства нет. // * ДанныеСертификата - Булево, Неопределено - также, как указано выше. @@ -930,6 +934,15 @@ КонецПроцедуры +// Открывает инструкцию с описанием типичных проблем при работе с программами +// электронной подписи и вариантами их решения. +// +Процедура ОткрытьИнструкциюПоТипичнымПроблемамПриРаботеСПрограммами() Экспорт + + ПерейтиПоНавигационнойСсылке("http://its.1c.ru/bmk/dsig/errors"); + +КонецПроцедуры + // Устанавливает пароль в хранилище паролей на клиенте на время сеанса. // Установка пароля позволяют не вводить пароль пользователю при очередной // операции, что полезно при выполнении пакета операций. @@ -1033,8 +1046,8 @@ СвойстваПодписи = Новый Структура( "ДатаПодписи, Комментарий, КомуВыданСертификат, Отпечаток, |АдресПодписи, УстановившийПодпись, АдресСертификата, - |Статус, ПодписьВерна, ДатаПроверкиПодписи"); - + |Статус, ОписаниеОшибки, ПодписьВерна, ДатаПроверкиПодписи"); + ЗаполнитьЗначенияСвойств(СвойстваПодписи, ТекущиеДанные); ПараметрыФормы = Новый Структура("СвойстваПодписи", СвойстваПодписи); diff --git a/SSL/src/CommonModules/ЭлектроннаяПодписьКлиентСервер/Module.bsl b/SSL/src/CommonModules/ЭлектроннаяПодписьКлиентСервер/Module.bsl index 66dd256fd..3a28f9c61 100644 --- a/SSL/src/CommonModules/ЭлектроннаяПодписьКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/ЭлектроннаяПодписьКлиентСервер/Module.bsl @@ -350,18 +350,30 @@ Если Субъект.Свойство("OGRN")Тогда Свойства.ОГРН = ПодготовитьСтроку(Субъект.OGRN); + + ИначеЕсли Субъект.Свойство("OID1_2_643_100_1") Тогда + Свойства.ОГРН = ПодготовитьСтроку(Субъект.OID1_2_643_100_1); КонецЕсли; Если Субъект.Свойство("OGRNIP") Тогда Свойства.ОГРНИП = ПодготовитьСтроку(Субъект.OGRNIP); + + ИначеЕсли Субъект.Свойство("OID1_2_643_100_5") Тогда + Свойства.ОГРНИП = ПодготовитьСтроку(Субъект.OID1_2_643_100_5); КонецЕсли; Если Субъект.Свойство("SNILS") Тогда Свойства.СНИЛС = ПодготовитьСтроку(Субъект.SNILS); + + ИначеЕсли Субъект.Свойство("OID1_2_643_100_3") Тогда + Свойства.СНИЛС = ПодготовитьСтроку(Субъект.OID1_2_643_100_3); КонецЕсли; Если Субъект.Свойство("INN") Тогда Свойства.ИНН = ПодготовитьСтроку(Субъект.INN); + + ИначеЕсли Субъект.Свойство("OID1_2_643_3_131_1_1")Тогда + Свойства.ИНН = ПодготовитьСтроку(Субъект.OID1_2_643_3_131_1_1); КонецЕсли; Если Субъект.Свойство("SN") Тогда // Наличие фамилии (обычно для должностного лица). @@ -380,16 +392,18 @@ КонецЕсли; КонецЕсли; - Если Субъект.Свойство("T") Тогда - Свойства.Должность = ПодготовитьСтроку(Субъект.T); - КонецЕсли; - - ИначеЕсли Субъект.Свойство("OGRNIP") // Признак индивидуального предпринимателя. - Или Субъект.Свойство("SNILS") // Признак физического лица. - Или ЭтоИННФизЛица(Субъект.Свойство("INN")) Тогда // Признак физического лица. + ИначеЕсли Субъект.Свойство("OGRNIP") // Признак индивидуального предпринимателя. + Или Субъект.Свойство("OID1_2_643_100_5") // Признак индивидуального предпринимателя. + Или Субъект.Свойство("T") // Признак должностного лица. + Или Субъект.Свойство("OID2_5_4_12") // Признак должностного лица. + Или Субъект.Свойство("SNILS") // Признак физического лица. + Или Субъект.Свойство("OID1_2_643_100_3") // Признак физического лица. + Или ЭтоИННФизЛица(Субъект.Свойство("INN")) // Признак физического лица. + Или ЭтоИННФизЛица(Субъект.Свойство("OID1_2_643_3_131_1_1")) Тогда // Признак физического лица. Если Свойства.ОбщееИмя <> Свойства.Организация - И Не (Субъект.Свойство("T") И Свойства.ОбщееИмя = ПодготовитьСтроку(Субъект.T)) Тогда + И Не (Субъект.Свойство("T") И Свойства.ОбщееИмя = ПодготовитьСтроку(Субъект.T)) + И Не (Субъект.Свойство("OID2_5_4_12") И Свойства.ОбщееИмя = ПодготовитьСтроку(Субъект.OID2_5_4_12)) Тогда // Извлечение ФИО из поля CN. Массив = СтрРазделить(Свойства.ОбщееИмя, " ", Ложь); @@ -408,6 +422,17 @@ КонецЕсли; КонецЕсли; + Если ЗначениеЗаполнено(Свойства.Фамилия) + Или ЗначениеЗаполнено(Свойства.Имя) Тогда + + Если Субъект.Свойство("T") Тогда + Свойства.Должность = ПодготовитьСтроку(Субъект.T); + + ИначеЕсли Субъект.Свойство("OID2_5_4_12") Тогда + Свойства.Должность = ПодготовитьСтроку(Субъект.OID2_5_4_12); + КонецЕсли; + КонецЕсли; + Возврат Свойства; КонецФункции @@ -506,10 +531,16 @@ Если Издатель.Свойство("OGRN") Тогда Свойства.ОГРН = ПодготовитьСтроку(Издатель.OGRN); + + ИначеЕсли Издатель.Свойство("OID1_2_643_100_1") Тогда + Свойства.ОГРН = ПодготовитьСтроку(Издатель.OID1_2_643_100_1); КонецЕсли; Если Издатель.Свойство("INN") Тогда Свойства.ИНН = ПодготовитьСтроку(Издатель.INN); + + ИначеЕсли Издатель.Свойство("OID1_2_643_3_131_1_1")Тогда + Свойства.ИНН = ПодготовитьСтроку(Издатель.OID1_2_643_3_131_1_1); КонецЕсли; Возврат Свойства; @@ -519,12 +550,21 @@ // Заполняет таблицу описания сертификата из четырех полей: КомуВыдан, КемВыдан, ДействуетДо, Назначение. Функция ЗаполнитьОписаниеДанныхСертификата(Таблица, Сертификат) Экспорт - СтруктураСертификата = ЗаполнитьСтруктуруСертификата(Сертификат); + Если ТипЗнч(Сертификат) = Тип("СертификатКриптографии") Или ТипЗнч(Сертификат) = Тип("ФиксированнаяСтруктура") Тогда + СтруктураСертификата = ЗаполнитьСтруктуруСертификата(Сертификат); + ДляПодписи = Сертификат.ИспользоватьДляПодписи; + ДляШифрования = Сертификат.ИспользоватьДляШифрования; + + Иначе // Это ДанныеФормыСтруктура объекта справочника. + СтруктураСертификата = Сертификат; + ДляПодписи = Сертификат.Подписание; + ДляШифрования = Сертификат.Шифрование; + КонецЕсли; - Если Сертификат.ИспользоватьДляПодписи И Сертификат.ИспользоватьДляШифрования Тогда + Если ДляПодписи И ДляШифрования Тогда Назначение = НСтр("ru = 'Подписание данных, Шифрование данных'"); - ИначеЕсли Сертификат.ИспользоватьДляПодписи Тогда + ИначеЕсли ДляПодписи Тогда Назначение = НСтр("ru = 'Подписание данных'"); Иначе Назначение = НСтр("ru = 'Шифрование данных'"); @@ -533,11 +573,11 @@ Таблица.Очистить(); Строка = Таблица.Добавить(); Строка.Свойство = НСтр("ru = 'Кому выдан:'"); - Строка.Значение = СтруктураСертификата.КомуВыдан; + Строка.Значение = СокрЛП(СтруктураСертификата.КомуВыдан); Строка = Таблица.Добавить(); Строка.Свойство = НСтр("ru = 'Кем выдан:'"); - Строка.Значение = СтруктураСертификата.КемВыдан; + Строка.Значение = СокрЛП(СтруктураСертификата.КемВыдан); Строка = Таблица.Добавить(); Строка.Свойство = НСтр("ru = 'Действителен до:'"); diff --git a/SSL/src/CommonModules/ЭлектроннаяПодписьПереопределяемый/Module.bsl b/SSL/src/CommonModules/ЭлектроннаяПодписьПереопределяемый/Module.bsl index 51091c217..b26b98061 100644 --- a/SSL/src/CommonModules/ЭлектроннаяПодписьПереопределяемый/Module.bsl +++ b/SSL/src/CommonModules/ЭлектроннаяПодписьПереопределяемый/Module.bsl @@ -13,7 +13,7 @@ // * Организация - СправочникСсылка.Организации - организация, которую нужно заполнить. // Если организация уже заполнена, требуется перезаполнить ее свойства, например, // при повтором вызове, когда пользователь выбрал другую организацию. -// - Неопределено, если подсистема "СтандартныеПодсистемы.Организации" не встроена. +// - Неопределено, если ОпределяемыйТип.Организации не настроен. // Пользователю недоступен выбор организации. // // * ЭтоИндивидуальныйПредприниматель - Булево - (возвращаемое значение): @@ -52,7 +52,7 @@ // Параметры: // Параметры - Структура - со свойствами: // * Организация - СправочникСсылка.Организации - выбранная организация, на которую оформляется сертификат. -// - Неопределено, если подсистема "СтандартныеПодсистемы.Организации" не встроена. +// - Неопределено, если ОпределяемыйТип.Организации не настроен. // // * ТипВладельца - ОписаниеТипов - (возвращаемое значение) содержит ссылочные типы из которых можно сделать выбор. // - Неопределено - (возвращаемое значение) выбор владельца не поддерживается. @@ -94,6 +94,9 @@ // номер для паспорта гражданина РФ). // // * ДокументКемВыдан - Строка - (возвращаемое значение) кем выдан документ сотрудника. +// +// * ДокументКодПодразделения - Строка - (возвращаемое значение) - код подразделения, если вид документа 21. +// // * ДокументДатаВыдачи - Дата - (возвращаемое значение) дата выдачи документа сотрудника. // // * ЭлектроннаяПочта - Строка - (возвращаемое значение) адрес электронной почты сотрудника в формате XML, как его @@ -114,7 +117,7 @@ // Параметры: // Параметры - Структура - со свойствами: // * Организация - СправочникСсылка.Организации - выбранная организация, на которую оформляется сертификат. -// - Неопределено, если подсистема "СтандартныеПодсистемы.Организации" не встроена. +// - Неопределено, если ОпределяемыйТип.Организации не настроен. // // * ТипРуководителя - ОписаниеТипов - (возвращаемое значение) содержит ссылочные типы из которых можно сделать // выбор. @@ -145,7 +148,7 @@ // Параметры: // Параметры - Структура - со свойствами: // * Организация - СправочникСсылка.Организации - выбранная организация, на которую оформляется сертификат. -// - Неопределено, если подсистема "СтандартныеПодсистемы.Организации" не встроена. +// - Неопределено, если ОпределяемыйТип.Организации не настроен. // // * ТипПартнера - ОписаниеТипов - содержит ссылочные типы из которых можно сделать выбор. // - Неопределено - выбор партнера не поддерживается. diff --git a/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебный/Module.bsl b/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебный/Module.bsl index 4499a6ad4..8bf22c775 100644 --- a/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебный/Module.bsl +++ b/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебный/Module.bsl @@ -46,6 +46,12 @@ Обработчик.Процедура = "ЭлектроннаяПодписьСлужебный.ПеренестиНастройкиМенеджераКриптографии"; Обработчик.РежимВыполнения = "Монопольно"; + Обработчик = Обработчики.Добавить(); + Обработчик.НачальноеЗаполнение = Истина; + Обработчик.Версия = "2.3.3.28"; + Обработчик.Процедура = "Справочники.ПрограммыЭлектроннойПодписиИШифрования.ЗаполнитьНачальныеНастройкиВОблачномСервисе"; + Обработчик.РежимВыполнения = "Монопольно"; + КонецПроцедуры // Заполняет переименования тех объектов метаданных, которые невозможно @@ -71,6 +77,10 @@ НовоеИмя = "Роль.ИспользованиеЭлектроннойПодписиИШифрования"; ОбщегоНазначения.ДобавитьПереименование(Итог, "2.3.1.10", СтароеИмя, НовоеИмя, Библиотека); + СтароеИмя = "Роль.ИспользованиеЭлектроннойПодписиИШифрования"; + НовоеИмя = "Роль.ДобавлениеИзменениеЭлектронныхПодписейИШифрование"; + ОбщегоНазначения.ДобавитьПереименование(Итог, "2.3.3.2", СтароеИмя, НовоеИмя, Библиотека); + КонецПроцедуры // Определяет параметры работы клиента. @@ -312,7 +322,7 @@ Если Не ЗначениеЗаполнено(ПредставлениеОшибки) Тогда Попытка - ХранилищеСертификатов = МенеджерКриптографии.ПолучитьХранилищеСертификатов(ТипХранилища); + ХранилищеСертификатовКриптографии = МенеджерКриптографии.ПолучитьХранилищеСертификатов(ТипХранилища); Исключение Если ПоказатьОшибку Тогда ВызватьИсключение; @@ -324,7 +334,7 @@ Если Не ЗначениеЗаполнено(ПредставлениеОшибки) Тогда Попытка - Сертификат = ХранилищеСертификатов.НайтиПоОтпечатку(ДвоичныеДанныеОтпечатка); + Сертификат = ХранилищеСертификатовКриптографии.НайтиПоОтпечатку(ДвоичныеДанныеОтпечатка); Исключение Если ПоказатьОшибку Тогда ВызватьИсключение; @@ -445,11 +455,12 @@ ТаблицаСвойствСертификатов.Колонки.Добавить("Отпечаток", Новый ОписаниеТипов("Строка",,,, Новый КвалификаторыСтроки(255))); ТаблицаСвойствСертификатов.Колонки.Добавить("КемВыдан"); ТаблицаСвойствСертификатов.Колонки.Добавить("Представление"); - ТаблицаСвойствСертификатов.Колонки.Добавить("НаКлиенте", Новый ОписаниеТипов("Булево")); - ТаблицаСвойствСертификатов.Колонки.Добавить("НаСервере", Новый ОписаниеТипов("Булево")); - ТаблицаСвойствСертификатов.Колонки.Добавить("ЭтоЗаявление", Новый ОписаниеТипов("Булево")); + ТаблицаСвойствСертификатов.Колонки.Добавить("НаКлиенте", Новый ОписаниеТипов("Булево")); + ТаблицаСвойствСертификатов.Колонки.Добавить("НаСервере", Новый ОписаниеТипов("Булево")); + ТаблицаСвойствСертификатов.Колонки.Добавить("ЭтоЗаявление", Новый ОписаниеТипов("Булево")); + ТаблицаСвойствСертификатов.Колонки.Добавить("ВОблачномСервисе", Новый ОписаниеТипов("Булево")); - Для каждого СвойстваСертификата Из СвойстваСертификатовНаКлиенте Цикл + Для Каждого СвойстваСертификата Из СвойстваСертификатовНаКлиенте Цикл НоваяСтрока = ТаблицаСвойствСертификатов.Добавить(); ЗаполнитьЗначенияСвойств(НоваяСтрока, СвойстваСертификата); НоваяСтрока.НаКлиенте = Истина; @@ -479,6 +490,29 @@ КонецЕсли; КонецЕсли; + Если ИспользоватьЭлектроннуюПодписьВМоделиСервиса() Тогда + МодульЭлектроннаяПодписьВМоделиСервисаКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ЭлектроннаяПодписьВМоделиСервисаКлиентСервер"); + Если МодульЭлектроннаяПодписьВМоделиСервисаКлиентСервер.ИспользованиеВозможно() Тогда + + МассивСертификатов = Новый Массив; + МодульХранилищеСертификатов = ОбщегоНазначения.ОбщийМодуль("ХранилищеСертификатов"); + ПерсональныеСертификаты = МодульХранилищеСертификатов.Получить("ПерсональныеСертификаты"); + Для Каждого ПерсональныйСертификат Из ПерсональныеСертификаты Цикл + МассивСертификатов.Добавить(ПерсональныйСертификат); + КонецЦикла; + + Если Не Личные Тогда + СертификатыПолучателей = МодульХранилищеСертификатов.Получить("СертификатыПолучателей"); + Для Каждого СертификатПолучателя Из СертификатыПолучателей Цикл + МассивСертификатов.Добавить(СертификатПолучателя); + КонецЦикла; + КонецЕсли; + + ЭлектроннаяПодписьСлужебныйКлиентСервер.ДобавитьСвойстваСертификатов( + ТаблицаСвойствСертификатов, МассивСертификатов, БезОтбора, , Истина); + КонецЕсли; + КонецЕсли; + ОбработатьДобавленныеСертификаты(ТаблицаСвойствСертификатов, Не БезОтбора И КромеУжеДобавленных); ТаблицаСвойствСертификатов.Индексы.Добавить("Представление"); @@ -505,12 +539,13 @@ КонецЕсли; КонецЕсли; // Обновление только измененных значений, чтобы таблица формы не обновлялась лишний раз. - ОбновитьЗначение(Строка.Отпечаток, СвойстваСертификата.Отпечаток); - ОбновитьЗначение(Строка.Представление, СвойстваСертификата.Представление); - ОбновитьЗначение(Строка.КемВыдан, СвойстваСертификата.КемВыдан); - ОбновитьЗначение(Строка.НаКлиенте, СвойстваСертификата.НаКлиенте); - ОбновитьЗначение(Строка.НаСервере, СвойстваСертификата.НаСервере); - ОбновитьЗначение(Строка.ЭтоЗаявление, СвойстваСертификата.ЭтоЗаявление); + ОбновитьЗначение(Строка.Отпечаток, СвойстваСертификата.Отпечаток); + ОбновитьЗначение(Строка.Представление, СвойстваСертификата.Представление); + ОбновитьЗначение(Строка.КемВыдан, СвойстваСертификата.КемВыдан); + ОбновитьЗначение(Строка.НаКлиенте, СвойстваСертификата.НаКлиенте); + ОбновитьЗначение(Строка.НаСервере, СвойстваСертификата.НаСервере); + ОбновитьЗначение(Строка.ЭтоЗаявление, СвойстваСертификата.ЭтоЗаявление); + ОбновитьЗначение(Строка.ВОблачномСервисе, СвойстваСертификата.ВОблачномСервисе); ОбработанныеСтроки.Вставить(Строка, Истина); Индекс = Индекс + 1; КонецЦикла; @@ -566,7 +601,7 @@ Если Расшифровка Тогда ЗаполнитьОтборОтпечатков(Форма); ИначеЕсли Не Шифрование Тогда // Подписание - Элементы.ГруппаКомментарий.Видимость = Параметры.ПоказатьКомментарий И Не Форма.БезПодтверждения; + Элементы.Комментарий.Видимость = Параметры.ПоказатьКомментарий И Не Форма.БезПодтверждения; КонецЕсли; ЗаполнитьСуществующиеСертификатыПользователя(Форма.СертификатСписокВыбора, @@ -681,15 +716,27 @@ СертификатКриптографии = Новый СертификатКриптографии(ПолучитьИзВременногоХранилища(Адрес)); + ЗначенияЗаполнения = ПараметрыРеквизитов; + ПараметрыРеквизитов = Неопределено; // Заполняется в процедуре ПередНачаломРедактированияСертификатаКлюча. + Выборка = Запрос.Выполнить().Выбрать(); Если Выборка.Следующий() Тогда ЗаполнитьЗначенияСвойств(СохраненныеСвойства, Выборка); Иначе СохраненныеСвойства.Ссылка = Справочники.СертификатыКлючейЭлектроннойПодписиИШифрования.ПустаяСсылка(); - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда - МодульОрганизацииСлужебный = ОбщегоНазначения.ОбщийМодуль("ОрганизацииСлужебный"); + + Если ТипЗнч(ЗначенияЗаполнения) = Тип("Структура") + И ЗначенияЗаполнения.Свойство("Организация") + И ЗначениеЗаполнено(ЗначенияЗаполнения.Организация) Тогда + + СохраненныеСвойства.Организация = ЗначенияЗаполнения.Организация; + + ИначеЕсли Не Метаданные.ОпределяемыеТипы.Организация.Тип.СодержитТип(Тип("Строка")) Тогда + ПолноеИмя = Метаданные.НайтиПоТипу(Метаданные.ОпределяемыеТипы.Организация.Тип.Типы()[0]).ПолноеИмя(); + ИмяСправочникаОрганизации = "Справочники." + СтрРазделить(ПолноеИмя, ".")[1]; + МодульОрганизации = ОбщегоНазначения.ОбщийМодуль(ИмяСправочникаОрганизации); Если Не ДляШифрования Тогда - СохраненныеСвойства.Организация = МодульОрганизацииСлужебный.ОрганизацияПоУмолчанию(); + СохраненныеСвойства.Организация = МодульОрганизации.ОрганизацияПоУмолчанию(); КонецЕсли; КонецЕсли; СохраненныеСвойства.Наименование = ЭлектроннаяПодписьКлиентСервер.ПредставлениеСертификата(СертификатКриптографии); @@ -708,6 +755,19 @@ ЗаполнитьРеквизит(СохраненныеСвойства, ПараметрыРеквизитов, "УсиленнаяЗащитаЗакрытогоКлюча"); КонецЕсли; + Если Не ЗначениеЗаполнено(СохраненныеСвойства.Ссылка) + И ТипЗнч(ЗначенияЗаполнения) = Тип("Структура") + И ЗначенияЗаполнения.Свойство("Организация") + И ЗначениеЗаполнено(ЗначенияЗаполнения.Организация) + И Не ПараметрыРеквизитов.Свойство("Организация") Тогда + + Параметры = Новый Структура; + Параметры.Вставить("ТолькоПросмотр", Истина); + Параметры.Вставить("ПроверкаЗаполнения", Ложь); + Параметры.Вставить("Видимость", Истина); + ПараметрыРеквизитов.Вставить("Организация", Параметры); + КонецЕсли; + Возврат СохраненныеСвойства; КонецФункции @@ -1067,7 +1127,7 @@ ТипКриптопровайдера = ЭлектроннаяПодписьСлужебныйПовтИсп.ТипыПрограммЭлектроннойПодписи()[ИмяКриптопровайдера]; Если ТипКриптопровайдера = Неопределено Тогда - ВызватьИсключение СтрШаблон(НСтр("ru = 'Не удалось определить тип криптопровайдера %1'"), ИмяКриптопровайдера); + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не удалось определить тип криптопровайдера %1'"), ИмяКриптопровайдера); КонецЕсли; Возврат ТипКриптопровайдера; @@ -1170,7 +1230,7 @@ OIDАлгоритмаПодписи = GetSignOIDFromCert(ОбъектКомпоненты, СертификатКриптографииBase64); Если OIDАлгоритмаПодписи <> ДанныеАлгоритмаПодписания.OIDАлгоритмаПодписи Тогда - ВызватьИсключение СтрШаблон( + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Алгоритм подписи сертификата криптографии отличается от алгоритма %1.'"), ДанныеАлгоритмаПодписания.ИмяАлгоритмаПодписи); КонецЕсли; @@ -1561,6 +1621,7 @@ Форма.СертификатОтпечаток = ЗначенияРеквизитов.Отпечаток; Форма.СертификатПрограмма = ЗначенияРеквизитов.Программа; + Форма.ВыполнятьВМоделиСервиса = ЗначенияРеквизитов.Программа.ЭтоПрограммаОблачногоСервиса; Форма.СертификатДействителенДо = ЗначенияРеквизитов.ДействителенДо; Форма.СертификатУсиленнаяЗащитаЗакрытогоКлюча = ЗначенияРеквизитов.УсиленнаяЗащитаЗакрытогоКлюча; @@ -1680,5 +1741,16 @@ КонецФункции +Функция ИспользоватьЭлектроннуюПодписьВМоделиСервиса() Экспорт + + Если ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса.РаботаВМоделиСервиса.ЭлектроннаяПодписьВМоделиСервиса") Тогда + МодульЭлектроннаяПодписьВМоделиСервисаКлиентСервер = ОбщегоНазначения.ОбщийМодуль("ЭлектроннаяПодписьВМоделиСервисаКлиентСервер"); + Возврат МодульЭлектроннаяПодписьВМоделиСервисаКлиентСервер.ИспользованиеВозможно(); + КонецЕсли; + + Возврат Ложь; + +КонецФункции + #КонецОбласти diff --git a/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебныйКлиент/Module.bsl b/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебныйКлиент/Module.bsl index 5c2c6ce49..11f34fb12 100644 --- a/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебныйКлиент/Module.bsl +++ b/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебныйКлиент/Module.bsl @@ -467,9 +467,9 @@ КонецПроцедуры // Продолжение процедуры ПолучитьСертификатПоОтпечатку. -Процедура ПолучитьСертификатПоОтпечаткуПослеПолученияХранилища(ХранилищеСертификатов, Контекст) Экспорт +Процедура ПолучитьСертификатПоОтпечаткуПослеПолученияХранилища(ХранилищеСертификатовКриптографии, Контекст) Экспорт - ХранилищеСертификатов.НачатьПоискПоОтпечатку(Новый ОписаниеОповещения( + ХранилищеСертификатовКриптографии.НачатьПоискПоОтпечатку(Новый ОписаниеОповещения( "ПолучитьСертификатПоОтпечаткуПослеПоиска", ЭтотОбъект, Контекст, "ПолучитьСертификатПоОтпечаткуПослеОшибкиПоиска", ЭтотОбъект), Контекст.ДвоичныеДанныеОтпечатка); @@ -611,12 +611,16 @@ Контекст.Вставить("ПроверятьНаСервере", ЭлектроннаяПодписьКлиентСервер.ОбщиеНастройки().ПроверятьЭлектронныеПодписиНаСервере); - Если МенеджерКриптографии = Неопределено Тогда - СоздатьМенеджерКриптографии(Новый ОписаниеОповещения( - "ПроверитьПодписьПослеСозданияМенеджераКриптографии", ЭтотОбъект, Контекст), - "ПроверкаПодписи", ПоказатьОшибку И Не Контекст.ПроверятьНаСервере); + Если ИспользоватьЭлектроннуюПодписьВМоделиСервиса() Тогда + ПроверитьПодписьВМоделиСервиса(Контекст); Иначе - ПроверитьПодписьПослеСозданияМенеджераКриптографии(МенеджерКриптографии, Контекст); + Если МенеджерКриптографии = Неопределено Тогда + СоздатьМенеджерКриптографии(Новый ОписаниеОповещения( + "ПроверитьПодписьПослеСозданияМенеджераКриптографии", ЭтотОбъект, Контекст), + "ПроверкаПодписи", ПоказатьОшибку И Не Контекст.ПроверятьНаСервере); + Иначе + ПроверитьПодписьПослеСозданияМенеджераКриптографии(МенеджерКриптографии, Контекст); + КонецЕсли; КонецЕсли; КонецПроцедуры @@ -727,12 +731,10 @@ Контекст.МенеджерКриптографии); Иначе - Контекст.МенеджерКриптографии.НачатьПроверкуПодписи(Новый ОписаниеОповещения( "ПроверитьПодписьНаКлиентеПослеПроверкиПодписи", ЭтотОбъект, Контекст, "ПроверитьПодписьНаКлиентеПослеОшибкиПроверкиПодписи", ЭтотОбъект), Контекст.ИсходныеДанные, Контекст.ДанныеПодписи); - КонецЕсли; КонецПроцедуры @@ -759,6 +761,7 @@ КонецПроцедуры + // Продолжение процедуры ПроверитьПодпись. Процедура ПроверитьПодписьНаКлиентеПослеОшибкиПроверкиПодписи(ИнформацияОбОшибке, СтандартнаяОбработка, Контекст) Экспорт @@ -870,7 +873,11 @@ "ПроверитьСертификатПослеСозданияМенеджераКриптографии", ЭтотОбъект, Контекст), "ПроверкаСертификата", Контекст.ПоказатьОшибку И Контекст.ОписаниеОшибкиНаСервере = Неопределено); Иначе - ПроверитьСертификатПослеСозданияМенеджераКриптографии(Контекст.МенеджерКриптографии, Контекст); + Если Контекст.МенеджерКриптографии = "СервисКриптографии" Тогда + ПроверитьСертификатВМоделиСервиса(Контекст.МенеджерКриптографии, Контекст); + Иначе + ПроверитьСертификатПослеСозданияМенеджераКриптографии(Контекст.МенеджерКриптографии, Контекст); + КонецЕсли; КонецЕсли; КонецПроцедуры @@ -1067,7 +1074,8 @@ Контекст.Вставить("ЗаголовокФормы", ЗаголовокФормы); Контекст.Вставить("ЗаголовокОшибки", ЗаголовокОшибки); Контекст.Вставить("СвойстваОшибки", СвойстваОшибки); - Контекст.Вставить("ЭтоLinux", ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент()); + // Здесь проверяется что это Linux или OS X клиент. + Контекст.Вставить("ЭтоLinux", Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент()); СвойстваОшибки.Вставить("Ошибки", Новый Массив); @@ -1303,7 +1311,7 @@ КонецЕсли; Если Назначение = "ТолькоДляШифрованияИзФайла" Тогда - ДобавитьСертификатТолькоДляШифрованияИзФайла(ПараметрыСоздания.ВЛичныйСписок); + ДобавитьСертификатТолькоДляШифрованияИзФайла(ПараметрыСоздания); Возврат; КонецЕсли; @@ -1339,7 +1347,13 @@ ПараметрыФормы = Новый Структура; ПараметрыФормы.Вставить("СвойстваСертификатовНаКлиенте", Результат.СвойстваСертификатовНаКлиенте); ПараметрыФормы.Вставить("ОшибкаПолученияСертификатовНаКлиенте", Результат.ОшибкаПолученияСертификатовНаКлиенте); - ПараметрыФормы.Вставить("ЛичныйСписокПриДобавлении", Контекст.ПараметрыСоздания.ВЛичныйСписок); + + Если Контекст.ПараметрыСоздания.Свойство("ВЛичныйСписок") Тогда + ПараметрыФормы.Вставить("ЛичныйСписокПриДобавлении", Контекст.ПараметрыСоздания.ВЛичныйСписок); + КонецЕсли; + Если Контекст.ПараметрыСоздания.Свойство("Организация") Тогда + ПараметрыФормы.Вставить("Организация", Контекст.ПараметрыСоздания.Организация); + КонецЕсли; Форма = ОткрытьФорму("Справочник.СертификатыКлючейЭлектроннойПодписиИШифрования.Форма.ДобавлениеСертификатаДляШифрования", ПараметрыФормы); @@ -1443,9 +1457,9 @@ // Только для внутреннего назначения. -Процедура ДобавитьСертификатТолькоДляШифрованияИзФайла(ВЛичныйСписок = Ложь) Экспорт +Процедура ДобавитьСертификатТолькоДляШифрованияИзФайла(ПараметрыСоздания) Экспорт - Контекст = Новый Структура("ВЛичныйСписок", ВЛичныйСписок); + Контекст = Новый Структура("ПараметрыСоздания", ПараметрыСоздания); НачатьПодключениеРасширенияРаботыСФайлами(Новый ОписаниеОповещения( "ДобавитьСертификатТолькоДляШифрованияИзФайлаПослеПодключенияРасширения", ЭтотОбъект, Контекст)); @@ -1497,7 +1511,8 @@ ПараметрыФормы = Новый Структура; ПараметрыФормы.Вставить("АдресДанныхСертификата", Адрес); - ПараметрыФормы.Вставить("ЛичныйСписокПриДобавлении", Контекст.ВЛичныйСписок); + ПараметрыФормы.Вставить("ЛичныйСписокПриДобавлении", Контекст.ПараметрыСоздания.ВЛичныйСписок); + ПараметрыФормы.Вставить("Организация", Контекст.ПараметрыСоздания.Организация); Форма = ОткрытьФорму("Справочник.СертификатыКлючейЭлектроннойПодписиИШифрования.Форма.ДобавлениеСертификатаДляШифрования", ПараметрыФормы); @@ -2244,7 +2259,6 @@ КонецПроцедуры - // Показывает диалог установки расширения для работы с электронной подписью и шифрованием. // // Параметры: @@ -2402,7 +2416,7 @@ // Продолжение процедуры ПродолжитьОткрытиеНачало. Процедура ПродолжитьОткрытиеНачалоПослеСозданияМенеджераКриптографии(Результат, Контекст) Экспорт - Если ТипЗнч(Результат) <> Тип("МенеджерКриптографии") Тогда + Если ТипЗнч(Результат) <> Тип("МенеджерКриптографии") И Не ИспользоватьЭлектроннуюПодписьВМоделиСервиса() Тогда ПоказатьОшибкуОбращенияКПрограмме( НСтр("ru = 'Требуется программа электронной подписи и шифрования'"), @@ -2445,9 +2459,9 @@ КонецПроцедуры // Продолжение процедуры ПолучитьОтпечаткиСертификатовНаКлиенте. -Процедура ПолучитьОтпечаткиСертификатовНаКлиентеПослеПолученияХранилища(ХранилищеСертификатов, Контекст) Экспорт +Процедура ПолучитьОтпечаткиСертификатовНаКлиентеПослеПолученияХранилища(ХранилищеСертификатовКриптографии, Контекст) Экспорт - ХранилищеСертификатов.НачатьПолучениеВсех(Новый ОписаниеОповещения( + ХранилищеСертификатовКриптографии.НачатьПолучениеВсех(Новый ОписаниеОповещения( "ПолучитьОтпечаткиСертификатовНаКлиентеПослеПолученияВсех", ЭтотОбъект, Контекст)); КонецПроцедуры @@ -2522,11 +2536,9 @@ КонецЕсли; Если ДополнительныеПараметры.УсиленнаяЗащитаЗакрытогоКлюча Тогда - Элементы.ПарольЗаголовок.Доступность = Ложь; Элементы.Пароль.Доступность = Ложь; Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаПояснениеУсиленногоПароля; Иначе - Элементы.ПарольЗаголовок.Доступность = Истина; Если ДополнительныеПараметры.ПарольУстановленПрограммно Тогда Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаПояснениеУстановленногоПароля; @@ -2651,9 +2663,19 @@ Контекст.Вставить("НаСторонеКлиента", СторонаВыполнения = "НаСторонеКлиента"); Если Контекст.НаСторонеКлиента Тогда - СоздатьМенеджерКриптографии(Новый ОписаниеОповещения( - "ВыполнитьНаСторонеПослеСозданияМенеджераКриптографии", ЭтотОбъект, Контекст), - Null, Неопределено, Контекст.Форма.СертификатПрограмма); + Если Контекст.Операция = "Шифрование" И ИспользоватьЭлектроннуюПодписьВМоделиСервиса() Тогда + Контекст.Вставить("МенеджерКриптографии", "СервисКриптографии"); + ВыполнитьНаСторонеВМоделиСервиса(Null, Контекст); + ИначеЕсли (Контекст.Операция = "Расшифровка" Или Контекст.Операция = "Подписание") + И ИспользоватьЭлектроннуюПодписьВМоделиСервиса() + И Контекст.Форма.ВыполнятьВМоделиСервиса Тогда + Контекст.Вставить("МенеджерКриптографии", "СервисКриптографии"); + ВыполнитьНаСторонеВМоделиСервиса(Null, Контекст); + Иначе + СоздатьМенеджерКриптографии(Новый ОписаниеОповещения( + "ВыполнитьНаСторонеПослеСозданияМенеджераКриптографии", ЭтотОбъект, Контекст), + Null, Неопределено, Контекст.Форма.СертификатПрограмма); + КонецЕсли; Иначе ВыполнитьНаСторонеЦиклЗапуск(Контекст); КонецЕсли; @@ -2834,7 +2856,6 @@ КонецПроцедуры - // Продолжение процедуры ВыполнитьНаСтороне. Процедура ВыполнитьНаСторонеЦиклПослеПолученияДанных(Результат, Контекст) Экспорт @@ -2851,11 +2872,9 @@ Данные = Результат; Если Контекст.НаСторонеКлиента Тогда - МенеджерКриптографии = Контекст.МенеджерКриптографии; Если ЭтоXMLDSig Тогда - Если Контекст.Операция <> "Подписание" Тогда Ошибка = Новый Структура("ОписаниеОшибки", ЭлектроннаяПодписьСлужебныйКлиентСервер.ЗаголовокОшибкиПолученияДанных(Контекст.Операция) @@ -2880,22 +2899,34 @@ Результат.ПараметрыXMLDSig, Контекст.СертификатКриптографии, Контекст.МенеджерКриптографии); - Иначе - Оповещение = Новый ОписаниеОповещения( "ВыполнитьНаСторонеЦиклПослеОперацииНаКлиенте", ЭтотОбъект, Контекст, "ВыполнитьНаСторонеЦиклПослеОшибкиОперацииНаКлиенте", ЭтотОбъект); - Если Контекст.Операция = "Подписание" Тогда - МенеджерКриптографии.НачатьПодписывание(Оповещение, Данные, Контекст.СертификатКриптографии); + Если МенеджерКриптографии = "СервисКриптографии" Тогда + СертификатДляПодписи = ПолучитьИзВременногоХранилища(Контекст.ОписаниеДанных.ВыбранныйСертификат.Данные); + МодульСервисКриптографииКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("СервисКриптографииКлиент"); + МодульСервисКриптографииКлиент.Подписать(Оповещение, Данные, СертификатДляПодписи); + Иначе + МенеджерКриптографии.НачатьПодписывание(Оповещение, Данные, Контекст.СертификатКриптографии); + КонецЕсли; ИначеЕсли Контекст.Операция = "Шифрование" Тогда - МенеджерКриптографии.НачатьШифрование(Оповещение, Данные, Контекст.СертификатыШифрования); + Если МенеджерКриптографии = "СервисКриптографии" Тогда + МодульСервисКриптографииКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("СервисКриптографииКлиент"); + МодульСервисКриптографииКлиент.Зашифровать(Оповещение, Данные, Контекст.СертификатыШифрования); + Иначе + МенеджерКриптографии.НачатьШифрование(Оповещение, Данные, Контекст.СертификатыШифрования); + КонецЕсли; Иначе - МенеджерКриптографии.НачатьРасшифровку(Оповещение, Данные); + Если МенеджерКриптографии = "СервисКриптографии" Тогда + МодульСервисКриптографииКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("СервисКриптографииКлиент"); + МодульСервисКриптографииКлиент.Расшифровать(Оповещение, Данные); + Иначе + МенеджерКриптографии.НачатьРасшифровку(Оповещение, Данные); + КонецЕсли; КонецЕсли; - КонецЕсли; Возврат; @@ -2967,6 +2998,24 @@ // Продолжение процедуры ВыполнитьНаСтороне. Процедура ВыполнитьНаСторонеЦиклПослеОперацииНаКлиенте(ДвоичныеДанные, Контекст) Экспорт + Если Контекст.Свойство("МенеджерКриптографии") И Контекст.МенеджерКриптографии = "СервисКриптографии" Тогда + + Если Не ДвоичныеДанные.Выполнено Тогда + ОшибкаНаКлиенте = Новый Структура("ОписаниеОшибки", ДвоичныеДанные.ИнформацияОбОшибке.Описание); + ВыполнитьНаСторонеПослеЦикла(ОшибкаНаКлиенте, Контекст); + Возврат; + КонецЕсли; + + Если Контекст.Операция = "Подписание" Тогда + ДвоичныеДанные = ДвоичныеДанные.Подпись; + ИначеЕсли Контекст.Операция = "Шифрование" Тогда + ДвоичныеДанные = ДвоичныеДанные.ЗашифрованныеДанные; + Иначе + ДвоичныеДанные = ДвоичныеДанные.РасшифрованныеДанные; + КонецЕсли; + + КонецЕсли; + ОписаниеОшибки = ""; Если Контекст.Операция = "Подписание" И ЭлектроннаяПодписьСлужебныйКлиентСервер.ПустыеДанныеПодписи(ДвоичныеДанные, ОписаниеОшибки) @@ -3512,7 +3561,7 @@ ЗавершитьОперациюСОшибкой( Контекст, - СтрШаблон( + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Не удалось определить тип криптопровайдера %1'"), ИнформацияМодуляКриптографии.Имя) + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); Возврат; @@ -3563,7 +3612,7 @@ ЗавершитьОперациюСОшибкой( Контекст, - СтрШаблон( + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Алгоритм подписи сертификата криптографии отличается от алгоритма %1.'"), Контекст.ДанныеАлгоритмаПодписания.ИмяАлгоритмаПодписи)); @@ -3730,7 +3779,7 @@ ЗавершитьОперациюСОшибкой( Контекст, - СтрШаблон( + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Не удалось определить тип криптопровайдера %1'"), ИнформацияМодуляКриптографии.Имя) + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); Возврат; @@ -4289,4 +4338,123 @@ КонецФункции +// Продолжение процедуры ПроверитьПодпись. +Процедура ПроверитьПодписьВМоделиСервиса(Контекст) Экспорт + + Если Не ЭлектроннаяПодписьКлиентСервер.ОбщиеНастройки().ПроверятьЭлектронныеПодписиНаСервере Тогда + + Если ТипЗнч(Контекст.ИсходныеДанные) = Тип("Строка") + И ЭтоАдресВременногоХранилища(Контекст.ИсходныеДанные) Тогда + Контекст.ИсходныеДанные = ПолучитьИзВременногоХранилища(Контекст.ИсходныеДанные); + КонецЕсли; + + Контекст.Вставить("ПроверитьСертификатНаКлиенте"); + + ПроверитьПодписьНаКлиентеВМоделиСервиса(Контекст); + Возврат; + КонецЕсли; + +КонецПроцедуры + +// Продолжение процедуры ПроверитьПодпись. +Процедура ПроверитьПодписьНаКлиентеВМоделиСервиса(Контекст) + + Подпись = Контекст.Подпись; + + Если ТипЗнч(Подпись) = Тип("Строка") И ЭтоАдресВременногоХранилища(Подпись) Тогда + Подпись = ПолучитьИзВременногоХранилища(Подпись); + КонецЕсли; + + Контекст.Вставить("ДанныеПодписи", Подпись); + Контекст.Вставить("МенеджерКриптографии", "СервисКриптографии"); + + МодульСервисКриптографииКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("СервисКриптографииКлиент"); + МодульСервисКриптографииКлиент.ПроверитьПодпись(Новый ОписаниеОповещения( + "ПроверитьПодписьНаКлиентеПослеПроверкиПодписи", ЭтотОбъект, Контекст, + "ПроверитьПодписьНаКлиентеПослеОшибкиПроверкиПодписи", ЭтотОбъект), + Контекст.ИсходныеДанные, + Контекст.ДанныеПодписи); + +КонецПроцедуры + +// Продолжение процедуры ПроверитьСертификат. +Процедура ПроверитьСертификатВМоделиСервиса(Результат, Контекст) Экспорт + + ВыполнитьОбработкуОповещения(Контекст.Оповещение, Истина); + +КонецПроцедуры + +// Продолжение процедуры ВыполнитьНаСтороне. +Процедура ВыполнитьНаСторонеВМоделиСервиса(Результат, Контекст) Экспорт + + Контекст.Вставить("СертификатКриптографии", Результат); + + Если Контекст.Операция = "Подписание" Тогда + СертификатПодписи = Контекст.ОписаниеДанных.ВыбранныйСертификат; + СертификатПодписи.Отпечаток = Base64Значение(СертификатПодписи.Отпечаток); + МодульХранилищеСертификатовКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ХранилищеСертификатовКлиент"); + МодульХранилищеСертификатовКлиент.НайтиСертификат(Новый ОписаниеОповещения( + "ВыполнитьНаСторонеПослеВыгрузкиСертификатаВМоделиСервиса", ЭтотОбъект, Контекст), СертификатПодписи); + + ИначеЕсли Контекст.Операция = "Шифрование" Тогда + СвойстваСертификатов = Контекст.ОписаниеДанных.СертификатыШифрования; + Если ТипЗнч(СвойстваСертификатов) = Тип("Строка") Тогда + СвойстваСертификатов = ПолучитьИзВременногоХранилища(СвойстваСертификатов); + КонецЕсли; + Контекст.Вставить("Индекс", -1); + Контекст.Вставить("СвойстваСертификатов", СвойстваСертификатов); + Контекст.Вставить("СертификатыШифрования", Новый Массив); + ВыполнитьНаСторонеПодготовкаСертификатовВМоделиСервисаЦиклНачало(Контекст); + Возврат; + Иначе + ВыполнитьНаСторонеЦиклЗапуск(Контекст); + КонецЕсли; + +КонецПроцедуры + +// Продолжение процедуры ВыполнитьНаСтороне. +Процедура ВыполнитьНаСторонеПодготовкаСертификатовВМоделиСервисаЦиклНачало(Контекст) + + Если Контекст.СвойстваСертификатов.Количество() <= Контекст.Индекс + 1 Тогда + ВыполнитьНаСторонеЦиклЗапуск(Контекст); + Возврат; + КонецЕсли; + Контекст.Индекс = Контекст.Индекс + 1; + + ВыполнитьНаСторонеПодготовкаСертификатовПослеИнициализацииСертификатаВМоделиСервиса( + Контекст.СвойстваСертификатов[Контекст.Индекс].Сертификат, Контекст); + +КонецПроцедуры + +// Продолжение процедуры ВыполнитьНаСтороне. +Процедура ВыполнитьНаСторонеПодготовкаСертификатовПослеИнициализацииСертификатаВМоделиСервиса(СертификатКриптографии, Контекст) + + Контекст.СертификатыШифрования.Добавить(СертификатКриптографии); + + ВыполнитьНаСторонеПодготовкаСертификатовВМоделиСервисаЦиклНачало(Контекст); + +КонецПроцедуры + +// Продолжение процедуры ВыполнитьНаСтороне. +Процедура ВыполнитьНаСторонеПослеВыгрузкиСертификатаВМоделиСервиса(ВыгруженныеДанные, Контекст) Экспорт + + Контекст.Вставить("СвойстваСертификата", ЭлектроннаяПодписьКлиентСервер.ЗаполнитьСтруктуруСертификата( + ВыгруженныеДанные.Сертификат)); + Контекст.СвойстваСертификата.Вставить("ДвоичныеДанные", ВыгруженныеДанные.Сертификат.Сертификат); + + ВыполнитьНаСторонеЦиклЗапуск(Контекст); + +КонецПроцедуры + +Функция ИспользоватьЭлектроннуюПодписьВМоделиСервиса() Экспорт + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ТехнологияСервиса.РаботаВМоделиСервиса.ЭлектроннаяПодписьВМоделиСервиса") Тогда + МодульЭлектроннаяПодписьВМоделиСервисаКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ЭлектроннаяПодписьВМоделиСервисаКлиентСервер"); + Возврат МодульЭлектроннаяПодписьВМоделиСервисаКлиентСервер.ИспользованиеВозможно(); + КонецЕсли; + + Возврат Ложь; + +КонецФункции + #КонецОбласти diff --git a/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебныйКлиентСервер/Module.bsl b/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебныйКлиентСервер/Module.bsl index b6b61bce7..2d93735ef 100644 --- a/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебныйКлиентСервер/Module.bsl +++ b/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебныйКлиентСервер/Module.bsl @@ -5,20 +5,22 @@ #Область СлужебныйПрограммныйИнтерфейс -// Функция пытается по переданным именам файлов сделать сопоставление -// на файлы данных и файлы их подписей. -// Сопоставление происходит на основе правила формирования имени подписи, -// и расширения файла подписи (p7s). +// Из переданных имен файлов выделяются имена файлов данных и имена файлов их подписей. +// Сопоставление происходит по правилам формирования имени подписи и расширения файла подписи (p7s). // Например: -// Имя файла данных: "example.txt" -// имя файла подписи: "example-Ivanov Petr.p7s" -// имя файла подписи: "example-Ivanov Petr (1).p7s". +// Имя файла данных: "example.txt" +// имя файла подписи: "example-Ivanov Petr.p7s" +// имя файла подписи: "example-Ivanov Petr (1).p7s". // -// Возвращает соответствие, в котором: -// ключ - имя файла -// значение - массив найденных соответствий - подписей. +// Параметры: +// ИменаФайлов - Массив - имена файлов типа Строка. +// +// Возвращаемое значение: +// Соответствие - содержит: +// * Ключ - Строка - имя файла. +// * Значение - Массив - имена файлов подписей типа Строка. // -Функция ПолучитьСоответствиеФайловИПодписей(ИменаФайлов) Экспорт +Функция ИменаФайловПодписейИменФайловДанных(ИменаФайлов) Экспорт ПерсональныеНастройки = ЭлектроннаяПодписьКлиентСервер.ПерсональныеНастройки(); РасширениеДляФайловПодписи = ПерсональныеНастройки.РасширениеДляФайловПодписи; @@ -263,7 +265,7 @@ КонецФункции // Только для внутреннего использования. -Процедура ДобавитьСвойстваСертификатов(Таблица, МассивСертификатов, БезОтбора, ТолькоОтпечатки = Ложь) Экспорт +Процедура ДобавитьСвойстваСертификатов(Таблица, МассивСертификатов, БезОтбора, ТолькоОтпечатки = Ложь, ВОблачномСервисе = Ложь) Экспорт #Если ВебКлиент Или ТонкийКлиент Тогда ДатаУниверсальная = ОбщегоНазначенияКлиент.ДатаУниверсальная(); @@ -300,6 +302,9 @@ Если НаСервере Тогда Строка = Таблица.Найти(Отпечаток, "Отпечаток"); Если Строка <> Неопределено Тогда + Если ВОблачномСервисе Тогда + Строка.ВОблачномСервисе = Истина; + КонецЕсли; Продолжить; // Пропуск уже добавленных на клиенте. КонецЕсли; КонецЕсли; @@ -316,7 +321,9 @@ Если ТипЗнч(Таблица) = Тип("Массив") Тогда Таблица.Добавить(СвойстваСертификата); Иначе - Если НаСервере Тогда + Если ВОблачномСервисе Тогда + СвойстваСертификата.Вставить("ВОблачномСервисе", Истина); + ИначеЕсли НаСервере Тогда СвойстваСертификата.Вставить("НаСервере", Истина); КонецЕсли; ЗаполнитьЗначенияСвойств(Таблица.Добавить(), СвойстваСертификата); diff --git a/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебныйПовтИсп/Module.bsl b/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебныйПовтИсп/Module.bsl index 082250beb..55c66599c 100644 --- a/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебныйПовтИсп/Module.bsl +++ b/SSL/src/CommonModules/ЭлектроннаяПодписьСлужебныйПовтИсп/Module.bsl @@ -37,12 +37,14 @@ // 2. Подсистема Адресный классификатор - код региона по наименованию. // 3. Подсистема Печать - стандартная печатная форма для заявления на выпуск сертификата. // 4. Подсистема Работа с контрагентами - проверка ИНН, КПП, ОГРН, лицевого счета по БИК, СНИЛС. + // 5. Подсистема Интернет поддержка пользователей - подключение сервисам 1С. ОбщиеНастройки.Вставить("ЗаявлениеНаВыпускСертификатаДоступно", ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.КонтактнаяИнформация") И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Печать") - И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСКонтрагентами")); + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСКонтрагентами") + И ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей")); Запрос = Новый Запрос; Запрос.Текст = diff --git a/SSL/src/CommonPictures/ДобавитьКомплексныйВопрос/Picture.png b/SSL/src/CommonPictures/ДобавитьКомплексныйВопрос/Picture.png new file mode 100644 index 000000000..1126ab107 Binary files /dev/null and b/SSL/src/CommonPictures/ДобавитьКомплексныйВопрос/Picture.png differ diff --git a/SSL/src/CommonPictures/ДобавитьКомплексныйВопрос/ДобавитьКомплексныйВопрос.mdo b/SSL/src/CommonPictures/ДобавитьКомплексныйВопрос/ДобавитьКомплексныйВопрос.mdo new file mode 100644 index 000000000..a905ed8e8 --- /dev/null +++ b/SSL/src/CommonPictures/ДобавитьКомплексныйВопрос/ДобавитьКомплексныйВопрос.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="7185a8f8-48c4-43a9-b31f-102302b8f152"> + <name>ДобавитьКомплексныйВопрос</name> + <synonym> + <key>ru</key> + <value>Добавить комплексный вопрос</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/ДокументЗаписанКоннекторВерх/Picture.png b/SSL/src/CommonPictures/ДокументЗаписанКоннекторВерх/Picture.png index e22a24ad2..5fb62338f 100644 Binary files a/SSL/src/CommonPictures/ДокументЗаписанКоннекторВерх/Picture.png and b/SSL/src/CommonPictures/ДокументЗаписанКоннекторВерх/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументЗаписанКоннекторВерхНиз/Picture.png b/SSL/src/CommonPictures/ДокументЗаписанКоннекторВерхНиз/Picture.png index 1eca2ff2f..29eda4a2b 100644 Binary files a/SSL/src/CommonPictures/ДокументЗаписанКоннекторВерхНиз/Picture.png and b/SSL/src/CommonPictures/ДокументЗаписанКоннекторВерхНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументЗаписанКоннекторЛево/Picture.png b/SSL/src/CommonPictures/ДокументЗаписанКоннекторЛево/Picture.png index ae87b4736..911868cda 100644 Binary files a/SSL/src/CommonPictures/ДокументЗаписанКоннекторЛево/Picture.png and b/SSL/src/CommonPictures/ДокументЗаписанКоннекторЛево/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументЗаписанКоннекторЛевоВерх/Picture.png b/SSL/src/CommonPictures/ДокументЗаписанКоннекторЛевоВерх/Picture.png index b8a5870f4..a7c072c78 100644 Binary files a/SSL/src/CommonPictures/ДокументЗаписанКоннекторЛевоВерх/Picture.png and b/SSL/src/CommonPictures/ДокументЗаписанКоннекторЛевоВерх/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументЗаписанКоннекторЛевоНиз/Picture.png b/SSL/src/CommonPictures/ДокументЗаписанКоннекторЛевоНиз/Picture.png index b733d0f23..9808bcc23 100644 Binary files a/SSL/src/CommonPictures/ДокументЗаписанКоннекторЛевоНиз/Picture.png and b/SSL/src/CommonPictures/ДокументЗаписанКоннекторЛевоНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументЗаписанКоннекторНиз/Picture.png b/SSL/src/CommonPictures/ДокументЗаписанКоннекторНиз/Picture.png index bed431a90..c31009928 100644 Binary files a/SSL/src/CommonPictures/ДокументЗаписанКоннекторНиз/Picture.png and b/SSL/src/CommonPictures/ДокументЗаписанКоннекторНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторВерх/Picture.png b/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторВерх/Picture.png index e42e1169f..06418a2b4 100644 Binary files a/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторВерх/Picture.png and b/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторВерх/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторВерхНиз/Picture.png b/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторВерхНиз/Picture.png index 82c834eae..a241dc25d 100644 Binary files a/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторВерхНиз/Picture.png and b/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторВерхНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторЛево/Picture.png b/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторЛево/Picture.png index 9970e4119..affa2a4a2 100644 Binary files a/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторЛево/Picture.png and b/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторЛево/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторЛевоВерх/Picture.png b/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторЛевоВерх/Picture.png index f4b133d62..c3416b9c8 100644 Binary files a/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторЛевоВерх/Picture.png and b/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторЛевоВерх/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторЛевоНиз/Picture.png b/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторЛевоНиз/Picture.png index d859d6914..8ec0b8df8 100644 Binary files a/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторЛевоНиз/Picture.png and b/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторЛевоНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторНиз/Picture.png b/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторНиз/Picture.png index 2e6cb273f..c852b516a 100644 Binary files a/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторНиз/Picture.png and b/SSL/src/CommonPictures/ДокументПомеченНаУдалениеКоннекторНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументПроведенКоннекторВерх/Picture.png b/SSL/src/CommonPictures/ДокументПроведенКоннекторВерх/Picture.png index 6fa792ea6..889408115 100644 Binary files a/SSL/src/CommonPictures/ДокументПроведенКоннекторВерх/Picture.png and b/SSL/src/CommonPictures/ДокументПроведенКоннекторВерх/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументПроведенКоннекторВерхНиз/Picture.png b/SSL/src/CommonPictures/ДокументПроведенКоннекторВерхНиз/Picture.png index ee6953568..2c5059b67 100644 Binary files a/SSL/src/CommonPictures/ДокументПроведенКоннекторВерхНиз/Picture.png and b/SSL/src/CommonPictures/ДокументПроведенКоннекторВерхНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументПроведенКоннекторЛево/Picture.png b/SSL/src/CommonPictures/ДокументПроведенКоннекторЛево/Picture.png index 90d42fc76..e50808a6a 100644 Binary files a/SSL/src/CommonPictures/ДокументПроведенКоннекторЛево/Picture.png and b/SSL/src/CommonPictures/ДокументПроведенКоннекторЛево/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументПроведенКоннекторЛевоВерх/Picture.png b/SSL/src/CommonPictures/ДокументПроведенКоннекторЛевоВерх/Picture.png index 422027356..696924981 100644 Binary files a/SSL/src/CommonPictures/ДокументПроведенКоннекторЛевоВерх/Picture.png and b/SSL/src/CommonPictures/ДокументПроведенКоннекторЛевоВерх/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументПроведенКоннекторЛевоНиз/Picture.png b/SSL/src/CommonPictures/ДокументПроведенКоннекторЛевоНиз/Picture.png index 3f39f5589..d237f33dd 100644 Binary files a/SSL/src/CommonPictures/ДокументПроведенКоннекторЛевоНиз/Picture.png and b/SSL/src/CommonPictures/ДокументПроведенКоннекторЛевоНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/ДокументПроведенКоннекторНиз/Picture.png b/SSL/src/CommonPictures/ДокументПроведенКоннекторНиз/Picture.png index f9ec7525e..1b17e500b 100644 Binary files a/SSL/src/CommonPictures/ДокументПроведенКоннекторНиз/Picture.png and b/SSL/src/CommonPictures/ДокументПроведенКоннекторНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/ЗаставкаВнешнейОперации/Picture.png b/SSL/src/CommonPictures/ЗаставкаВнешнейОперации/Picture.png index f8dcc4156..3530b318c 100644 Binary files a/SSL/src/CommonPictures/ЗаставкаВнешнейОперации/Picture.png and b/SSL/src/CommonPictures/ЗаставкаВнешнейОперации/Picture.png differ diff --git a/SSL/src/CommonPictures/ЗначокЗаставкиВнешнейОперации/Picture.ico b/SSL/src/CommonPictures/ЗначокЗаставкиВнешнейОперации/Picture.ico index 4dcdb185d..6e3365fe3 100644 Binary files a/SSL/src/CommonPictures/ЗначокЗаставкиВнешнейОперации/Picture.ico and b/SSL/src/CommonPictures/ЗначокЗаставкиВнешнейОперации/Picture.ico differ diff --git a/SSL/src/CommonPictures/КоллекцияДеревоАнкеты/Picture.png b/SSL/src/CommonPictures/КоллекцияДеревоАнкеты/Picture.png index 8d0774817..70cc00a3f 100644 Binary files a/SSL/src/CommonPictures/КоллекцияДеревоАнкеты/Picture.png and b/SSL/src/CommonPictures/КоллекцияДеревоАнкеты/Picture.png differ diff --git a/SSL/src/CommonPictures/КоллекцияПиктограммПараметрыШаблонаСообщения/Picture.png b/SSL/src/CommonPictures/КоллекцияПиктограммПараметрыШаблонаСообщения/Picture.png new file mode 100644 index 000000000..d3410100d Binary files /dev/null and b/SSL/src/CommonPictures/КоллекцияПиктограммПараметрыШаблонаСообщения/Picture.png differ diff --git a/SSL/src/CommonPictures/КоллекцияПиктограммПараметрыШаблонаСообщения/КоллекцияПиктограммПараметрыШаблонаСообщения.mdo b/SSL/src/CommonPictures/КоллекцияПиктограммПараметрыШаблонаСообщения/КоллекцияПиктограммПараметрыШаблонаСообщения.mdo new file mode 100644 index 000000000..6bfdba0b9 --- /dev/null +++ b/SSL/src/CommonPictures/КоллекцияПиктограммПараметрыШаблонаСообщения/КоллекцияПиктограммПараметрыШаблонаСообщения.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="a3131bf3-88b1-431c-a01c-be6e26396f91"> + <name>КоллекцияПиктограммПараметрыШаблонаСообщения</name> + <synonym> + <key>ru</key> + <value>Коллекция пиктограмм параметры шаблона сообщения</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/КоннекторВерхНиз/Picture.png b/SSL/src/CommonPictures/КоннекторВерхНиз/Picture.png index bbca1693d..9663c3832 100644 Binary files a/SSL/src/CommonPictures/КоннекторВерхНиз/Picture.png and b/SSL/src/CommonPictures/КоннекторВерхНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/КоннекторВерхПраво/Picture.png b/SSL/src/CommonPictures/КоннекторВерхПраво/Picture.png index 10280787f..cf7b46946 100644 Binary files a/SSL/src/CommonPictures/КоннекторВерхПраво/Picture.png and b/SSL/src/CommonPictures/КоннекторВерхПраво/Picture.png differ diff --git a/SSL/src/CommonPictures/КоннекторВерхПравоНиз/Picture.png b/SSL/src/CommonPictures/КоннекторВерхПравоНиз/Picture.png index eebd4b0ab..de2d665c8 100644 Binary files a/SSL/src/CommonPictures/КоннекторВерхПравоНиз/Picture.png and b/SSL/src/CommonPictures/КоннекторВерхПравоНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/КоннекторЛевоНизПраво/Picture.png b/SSL/src/CommonPictures/КоннекторЛевоНизПраво/Picture.png index 73dd9152e..d4fb2e206 100644 Binary files a/SSL/src/CommonPictures/КоннекторЛевоНизПраво/Picture.png and b/SSL/src/CommonPictures/КоннекторЛевоНизПраво/Picture.png differ diff --git a/SSL/src/CommonPictures/КоннекторЛевоПраво/Picture.png b/SSL/src/CommonPictures/КоннекторЛевоПраво/Picture.png index 7954b4a2f..de6ce0108 100644 Binary files a/SSL/src/CommonPictures/КоннекторЛевоПраво/Picture.png and b/SSL/src/CommonPictures/КоннекторЛевоПраво/Picture.png differ diff --git a/SSL/src/CommonPictures/КоннекторПравоНиз/Picture.png b/SSL/src/CommonPictures/КоннекторПравоНиз/Picture.png index 00ffc2502..8bae5e771 100644 Binary files a/SSL/src/CommonPictures/КоннекторПравоНиз/Picture.png and b/SSL/src/CommonPictures/КоннекторПравоНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/ПроцессОтложен/Picture.png b/SSL/src/CommonPictures/ПроцессОтложен/Picture.png new file mode 100644 index 000000000..7e0f44c2c Binary files /dev/null and b/SSL/src/CommonPictures/ПроцессОтложен/Picture.png differ diff --git a/SSL/src/CommonPictures/ПроцессОтложен/ПроцессОтложен.mdo b/SSL/src/CommonPictures/ПроцессОтложен/ПроцессОтложен.mdo new file mode 100644 index 000000000..f8b8544c6 --- /dev/null +++ b/SSL/src/CommonPictures/ПроцессОтложен/ПроцессОтложен.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="529cc5b5-835f-4e70-9232-a9649fdc7ae5"> + <name>ПроцессОтложен</name> + <synonym> + <key>ru</key> + <value>Процесс отложен</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/СостоянияПроцессов/Picture.png b/SSL/src/CommonPictures/СостоянияПроцессов/Picture.png new file mode 100644 index 000000000..8d3b97bb4 Binary files /dev/null and b/SSL/src/CommonPictures/СостоянияПроцессов/Picture.png differ diff --git a/SSL/src/CommonPictures/СостоянияПроцессов/СостоянияПроцессов.mdo b/SSL/src/CommonPictures/СостоянияПроцессов/СостоянияПроцессов.mdo new file mode 100644 index 000000000..0156f1af1 --- /dev/null +++ b/SSL/src/CommonPictures/СостоянияПроцессов/СостоянияПроцессов.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="2cea7641-6f1d-4bc7-9d38-8d99f196e0f5"> + <name>СостоянияПроцессов</name> + <synonym> + <key>ru</key> + <value>Состояния процессов</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/СостоянияРасширенийКонфигурации/Picture.png b/SSL/src/CommonPictures/СостоянияРасширенийКонфигурации/Picture.png new file mode 100644 index 000000000..a177a35a4 Binary files /dev/null and b/SSL/src/CommonPictures/СостоянияРасширенийКонфигурации/Picture.png differ diff --git a/SSL/src/CommonPictures/СостоянияРасширенийКонфигурации/СостоянияРасширенийКонфигурации.mdo b/SSL/src/CommonPictures/СостоянияРасширенийКонфигурации/СостоянияРасширенийКонфигурации.mdo new file mode 100644 index 000000000..eb4525820 --- /dev/null +++ b/SSL/src/CommonPictures/СостоянияРасширенийКонфигурации/СостоянияРасширенийКонфигурации.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="7fa6a20a-26e2-41ad-be66-a43b50d0bbcd"> + <name>СостоянияРасширенийКонфигурации</name> + <synonym> + <key>ru</key> + <value>Состояния расширений конфигурации</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/СправочникПВХКоннекторВверх/Picture.png b/SSL/src/CommonPictures/СправочникПВХКоннекторВверх/Picture.png new file mode 100644 index 000000000..4780a0ad0 Binary files /dev/null and b/SSL/src/CommonPictures/СправочникПВХКоннекторВверх/Picture.png differ diff --git a/SSL/src/CommonPictures/СправочникПВХКоннекторВверх/СправочникПВХКоннекторВверх.mdo b/SSL/src/CommonPictures/СправочникПВХКоннекторВверх/СправочникПВХКоннекторВверх.mdo new file mode 100644 index 000000000..6f4945986 --- /dev/null +++ b/SSL/src/CommonPictures/СправочникПВХКоннекторВверх/СправочникПВХКоннекторВверх.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="6f21c34c-26aa-493d-aa08-2d4366b4064a"> + <name>СправочникПВХКоннекторВверх</name> + <synonym> + <key>ru</key> + <value>Справочник ПВХКоннектор вверх</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/СправочникПВХКоннекторВерхНиз/Picture.png b/SSL/src/CommonPictures/СправочникПВХКоннекторВерхНиз/Picture.png new file mode 100644 index 000000000..4a8443e81 Binary files /dev/null and b/SSL/src/CommonPictures/СправочникПВХКоннекторВерхНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/СправочникПВХКоннекторВерхНиз/СправочникПВХКоннекторВерхНиз.mdo b/SSL/src/CommonPictures/СправочникПВХКоннекторВерхНиз/СправочникПВХКоннекторВерхНиз.mdo new file mode 100644 index 000000000..753f89bfb --- /dev/null +++ b/SSL/src/CommonPictures/СправочникПВХКоннекторВерхНиз/СправочникПВХКоннекторВерхНиз.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="0f55650a-2422-42a9-8258-61df4c17f1ef"> + <name>СправочникПВХКоннекторВерхНиз</name> + <synonym> + <key>ru</key> + <value>Справочник ПВХКоннектор верх низ</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/СправочникПВХКоннекторЛево/Picture.png b/SSL/src/CommonPictures/СправочникПВХКоннекторЛево/Picture.png new file mode 100644 index 000000000..e3dfe3677 Binary files /dev/null and b/SSL/src/CommonPictures/СправочникПВХКоннекторЛево/Picture.png differ diff --git a/SSL/src/CommonPictures/СправочникПВХКоннекторЛево/СправочникПВХКоннекторЛево.mdo b/SSL/src/CommonPictures/СправочникПВХКоннекторЛево/СправочникПВХКоннекторЛево.mdo new file mode 100644 index 000000000..2b776d86f --- /dev/null +++ b/SSL/src/CommonPictures/СправочникПВХКоннекторЛево/СправочникПВХКоннекторЛево.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="2ef4ea1d-fd86-4ef3-a7e0-73abba89474d"> + <name>СправочникПВХКоннекторЛево</name> + <synonym> + <key>ru</key> + <value>Справочник ПВХКоннектор лево</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/СправочникПВХКоннекторЛевоВерх/Picture.png b/SSL/src/CommonPictures/СправочникПВХКоннекторЛевоВерх/Picture.png new file mode 100644 index 000000000..5acadec07 Binary files /dev/null and b/SSL/src/CommonPictures/СправочникПВХКоннекторЛевоВерх/Picture.png differ diff --git a/SSL/src/CommonPictures/СправочникПВХКоннекторЛевоВерх/СправочникПВХКоннекторЛевоВерх.mdo b/SSL/src/CommonPictures/СправочникПВХКоннекторЛевоВерх/СправочникПВХКоннекторЛевоВерх.mdo new file mode 100644 index 000000000..ec523df7a --- /dev/null +++ b/SSL/src/CommonPictures/СправочникПВХКоннекторЛевоВерх/СправочникПВХКоннекторЛевоВерх.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="3eaece9d-c9be-4b0b-a6f6-a3932274b806"> + <name>СправочникПВХКоннекторЛевоВерх</name> + <synonym> + <key>ru</key> + <value>Справочник ПВХКоннектор лево верх</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/СправочникПВХКоннекторЛевоНиз/Picture.png b/SSL/src/CommonPictures/СправочникПВХКоннекторЛевоНиз/Picture.png new file mode 100644 index 000000000..e0f6992d3 Binary files /dev/null and b/SSL/src/CommonPictures/СправочникПВХКоннекторЛевоНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/СправочникПВХКоннекторЛевоНиз/СправочникПВХКоннекторЛевоНиз.mdo b/SSL/src/CommonPictures/СправочникПВХКоннекторЛевоНиз/СправочникПВХКоннекторЛевоНиз.mdo new file mode 100644 index 000000000..e06934d63 --- /dev/null +++ b/SSL/src/CommonPictures/СправочникПВХКоннекторЛевоНиз/СправочникПВХКоннекторЛевоНиз.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="5d9427ec-981d-4fb5-878b-8dba0d3a5536"> + <name>СправочникПВХКоннекторЛевоНиз</name> + <synonym> + <key>ru</key> + <value>Справочник ПВХКоннектор лево низ</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/СправочникПВХКоннекторНиз/Picture.png b/SSL/src/CommonPictures/СправочникПВХКоннекторНиз/Picture.png new file mode 100644 index 000000000..9023f2e3d Binary files /dev/null and b/SSL/src/CommonPictures/СправочникПВХКоннекторНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/СправочникПВХКоннекторНиз/СправочникПВХКоннекторНиз.mdo b/SSL/src/CommonPictures/СправочникПВХКоннекторНиз/СправочникПВХКоннекторНиз.mdo new file mode 100644 index 000000000..1af7b129a --- /dev/null +++ b/SSL/src/CommonPictures/СправочникПВХКоннекторНиз/СправочникПВХКоннекторНиз.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="c5dd6184-96e5-4abc-8c1e-5270e6547ee5"> + <name>СправочникПВХКоннекторНиз</name> + <synonym> + <key>ru</key> + <value>Справочник ПВХКоннектор низ</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторВерх/Picture.png b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторВерх/Picture.png new file mode 100644 index 000000000..ae5fdbd4c Binary files /dev/null and b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторВерх/Picture.png differ diff --git a/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторВерх/СправочникПВХПомеченНаУдалениеКоннекторВерх.mdo b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторВерх/СправочникПВХПомеченНаУдалениеКоннекторВерх.mdo new file mode 100644 index 000000000..9b9532648 --- /dev/null +++ b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторВерх/СправочникПВХПомеченНаУдалениеКоннекторВерх.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="a0047712-5769-495d-97af-20d06751a5b4"> + <name>СправочникПВХПомеченНаУдалениеКоннекторВерх</name> + <synonym> + <key>ru</key> + <value>Справочник ПВХПомечен на удаление коннектор верх</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторВерхНиз/Picture.png b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторВерхНиз/Picture.png new file mode 100644 index 000000000..57f4bad1e Binary files /dev/null and b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторВерхНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторВерхНиз/СправочникПВХПомеченНаУдалениеКоннекторВерхНиз.mdo b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторВерхНиз/СправочникПВХПомеченНаУдалениеКоннекторВерхНиз.mdo new file mode 100644 index 000000000..2f594e4cb --- /dev/null +++ b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторВерхНиз/СправочникПВХПомеченНаУдалениеКоннекторВерхНиз.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="e729c3c6-16e5-405b-99b1-a88022300c6d"> + <name>СправочникПВХПомеченНаУдалениеКоннекторВерхНиз</name> + <synonym> + <key>ru</key> + <value>Справочник ПВХПомечен на удаление коннектор верх низ</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛево/Picture.png b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛево/Picture.png new file mode 100644 index 000000000..8fb51ecc6 Binary files /dev/null and b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛево/Picture.png differ diff --git a/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛево/СправочникПВХПомеченНаУдалениеКоннекторЛево.mdo b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛево/СправочникПВХПомеченНаУдалениеКоннекторЛево.mdo new file mode 100644 index 000000000..2746edc05 --- /dev/null +++ b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛево/СправочникПВХПомеченНаУдалениеКоннекторЛево.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="9c089520-8233-42f6-8eee-9839ac708c6f"> + <name>СправочникПВХПомеченНаУдалениеКоннекторЛево</name> + <synonym> + <key>ru</key> + <value>Справочник ПВХПомечен на удаление коннектор лево</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛевоВерх/Picture.png b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛевоВерх/Picture.png new file mode 100644 index 000000000..ec48dbecd Binary files /dev/null and b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛевоВерх/Picture.png differ diff --git a/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛевоВерх/СправочникПВХПомеченНаУдалениеКоннекторЛевоВерх.mdo b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛевоВерх/СправочникПВХПомеченНаУдалениеКоннекторЛевоВерх.mdo new file mode 100644 index 000000000..6d5b23072 --- /dev/null +++ b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛевоВерх/СправочникПВХПомеченНаУдалениеКоннекторЛевоВерх.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="24f2cfc7-6dc0-400c-8eb2-106ca2ea7034"> + <name>СправочникПВХПомеченНаУдалениеКоннекторЛевоВерх</name> + <synonym> + <key>ru</key> + <value>Справочник ПВХПомечен на удаление коннектор лево верх</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛевоНиз/Picture.png b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛевоНиз/Picture.png new file mode 100644 index 000000000..e6ad23ab7 Binary files /dev/null and b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛевоНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛевоНиз/СправочникПВХПомеченНаУдалениеКоннекторЛевоНиз.mdo b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛевоНиз/СправочникПВХПомеченНаУдалениеКоннекторЛевоНиз.mdo new file mode 100644 index 000000000..1f8aeffa5 --- /dev/null +++ b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторЛевоНиз/СправочникПВХПомеченНаУдалениеКоннекторЛевоНиз.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="5f3ffa44-49be-4da5-ab2a-a35c9bd76dee"> + <name>СправочникПВХПомеченНаУдалениеКоннекторЛевоНиз</name> + <synonym> + <key>ru</key> + <value>Справочник ПВХПомечен на удаление коннектор лево низ</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторНиз/Picture.png b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторНиз/Picture.png new file mode 100644 index 000000000..6e62ca178 Binary files /dev/null and b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторНиз/Picture.png differ diff --git a/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторНиз/СправочникПВХПомеченНаУдалениеКоннекторНиз.mdo b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторНиз/СправочникПВХПомеченНаУдалениеКоннекторНиз.mdo new file mode 100644 index 000000000..94d28d160 --- /dev/null +++ b/SSL/src/CommonPictures/СправочникПВХПомеченНаУдалениеКоннекторНиз/СправочникПВХПомеченНаУдалениеКоннекторНиз.mdo @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:CommonPicture xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="89055896-49dd-4cfd-ab78-8ac3698e12d5"> + <name>СправочникПВХПомеченНаУдалениеКоннекторНиз</name> + <synonym> + <key>ru</key> + <value>Справочник ПВХПомечен на удаление коннектор низ</value> + </synonym> +</mdclass:CommonPicture> diff --git a/SSL/src/CommonTemplates/КомпонентаTWAIN/Template.bin b/SSL/src/CommonTemplates/КомпонентаTWAIN/Template.bin index 0add052b1..7c60670a4 100644 Binary files a/SSL/src/CommonTemplates/КомпонентаTWAIN/Template.bin and b/SSL/src/CommonTemplates/КомпонентаTWAIN/Template.bin differ diff --git a/SSL/src/CommonTemplates/СтруктураПодчиненности/Template.mxlx b/SSL/src/CommonTemplates/СтруктураПодчиненности/Template.mxlx index ef1f30b3c..90e120b27 100644 --- a/SSL/src/CommonTemplates/СтруктураПодчиненности/Template.mxlx +++ b/SSL/src/CommonTemplates/СтруктураПодчиненности/Template.mxlx @@ -35,6 +35,18 @@ <formatIndex>4</formatIndex> </column> </columnsItem> + <columnsItem> + <index>17</index> + <column> + <formatIndex>5</formatIndex> + </column> + </columnsItem> + <columnsItem> + <index>18</index> + <column> + <formatIndex>2</formatIndex> + </column> + </columnsItem> </columns> <rowsItem> <index>0</index> @@ -54,7 +66,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -62,65 +74,65 @@ <rowsItem> <index>1</index> <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>1</i> <c> - <f>7</f> - <parameter>ПредставлениеДокумента</parameter> - <detailParameter>Документ</detailParameter> + <f>8</f> + <parameter>ПредставлениеОбъекта</parameter> + <detailParameter>Объект</detailParameter> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <i>7</i> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> <c> @@ -143,7 +155,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -151,59 +163,59 @@ <rowsItem> <index>3</index> <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>1</i> + <c> + <f>10</f> + <parameter>ПредставлениеОбъекта</parameter> + <detailParameter>Объект</detailParameter> + </c> + </c> + <c> <c> <f>9</f> - <parameter>ПредставлениеДокумента</parameter> - <detailParameter>Документ</detailParameter> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> - </c> - </c> - <c> - <c> - <f>8</f> + <f>9</f> </c> </c> <c> <i>7</i> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> @@ -215,7 +227,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -223,61 +235,56 @@ <rowsItem> <index>4</index> <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>1</i> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> + <f>11</f> </c> </c> <c> @@ -292,43 +299,48 @@ </c> <c> <c> - <f>10</f> + <f>13</f> + </c> + </c> + <c> + <c> + <f>11</f> <detailParameter>Документ</detailParameter> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> <c> <c> - <f>8</f> + <f>9</f> </c> </c> </row> @@ -336,130 +348,7 @@ <rowsItem> <index>5</index> <row> - <formatIndex>6</formatIndex> - <c> - <i>1</i> - <c> - <f>13</f> - </c> - </c> - <c> - <i>13</i> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - <detailParameter>Документ</detailParameter> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - </row> - </rowsItem> - <rowsItem> - <index>6</index> - <row> - <formatIndex>6</formatIndex> - <c> - <i>1</i> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - <tl/> - <detailParameter>Документ</detailParameter> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - </row> - </rowsItem> - <rowsItem> - <index>7</index> - <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>1</i> <c> @@ -467,70 +356,193 @@ </c> </c> <c> + <i>13</i> <c> - <f>8</f> + <f>11</f> </c> </c> <c> <c> - <f>8</f> - </c> - </c> - <c> - <c> - <f>8</f> - </c> - </c> - <c> - <i>7</i> - <c> - <f>8</f> - </c> - </c> - <c> - <c> - <f>8</f> - </c> - </c> - <c> - <c> - <f>8</f> - </c> - </c> - <c> - <c> - <f>8</f> - </c> - </c> - <c> - <c> - <f>8</f> - </c> - </c> - <c> - <c> - <f>8</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> + <f>11</f> <detailParameter>Документ</detailParameter> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> + </c> + </c> + </row> + </rowsItem> + <rowsItem> + <index>6</index> + <row> + <formatIndex>7</formatIndex> + <c> + <i>1</i> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + <tl/> + <detailParameter>Документ</detailParameter> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + </row> + </rowsItem> + <rowsItem> + <index>7</index> + <row> + <formatIndex>7</formatIndex> + <c> + <i>1</i> + <c> + <f>15</f> + </c> + </c> + <c> + <c> + <f>9</f> + </c> + </c> + <c> + <c> + <f>9</f> + </c> + </c> + <c> + <c> + <f>9</f> + </c> + </c> + <c> + <i>7</i> + <c> + <f>9</f> + </c> + </c> + <c> + <c> + <f>9</f> + </c> + </c> + <c> + <c> + <f>9</f> + </c> + </c> + <c> + <c> + <f>9</f> + </c> + </c> + <c> + <c> + <f>9</f> + </c> + </c> + <c> + <c> + <f>9</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + <detailParameter>Документ</detailParameter> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> </c> </c> </row> @@ -538,159 +550,71 @@ <rowsItem> <index>8</index> <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>1</i> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>15</f> - <detailParameter>Документ</detailParameter> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - </row> - </rowsItem> - <rowsItem> - <index>9</index> - <row> - <formatIndex>6</formatIndex> - <c> - <i>1</i> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>10</f> + <f>11</f> </c> </c> <c> @@ -701,12 +625,100 @@ </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> + </c> + </c> + </row> + </rowsItem> + <rowsItem> + <index>9</index> + <row> + <formatIndex>7</formatIndex> + <c> + <i>1</i> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>17</f> + <detailParameter>Документ</detailParameter> + </c> + </c> + <c> + <c> + <f>11</f> + </c> + </c> + <c> + <c> + <f>11</f> </c> </c> </row> @@ -714,87 +726,87 @@ <rowsItem> <index>10</index> <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>1</i> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>15</f> + <f>16</f> <detailParameter>Документ</detailParameter> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> </row> @@ -802,87 +814,87 @@ <rowsItem> <index>11</index> <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>1</i> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>15</f> + <f>16</f> <detailParameter>Документ</detailParameter> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> </row> @@ -890,87 +902,87 @@ <rowsItem> <index>12</index> <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>1</i> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> <detailParameter>Документ</detailParameter> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> </row> @@ -978,88 +990,88 @@ <rowsItem> <index>13</index> <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>1</i> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>17</f> + <f>18</f> <detailParameter>Документ</detailParameter> </c> </c> <c> <c> - <f>17</f> + <f>18</f> <detailParameter>Документ</detailParameter> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> </row> @@ -1067,76 +1079,71 @@ <rowsItem> <index>14</index> <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>1</i> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> + <f>11</f> </c> </c> <c> <c> - <f>10</f> - </c> - </c> - <c> - <c> - <f>18</f> + <f>11</f> </c> </c> <c> @@ -1146,7 +1153,12 @@ </c> <c> <c> - <f>10</f> + <f>20</f> + </c> + </c> + <c> + <c> + <f>11</f> </c> </c> </row> @@ -1154,11 +1166,11 @@ <rowsItem> <index>15</index> <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1166,11 +1178,11 @@ <rowsItem> <index>16</index> <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1178,7 +1190,7 @@ <rowsItem> <index>17</index> <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>14</i> <c> @@ -1188,7 +1200,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1196,7 +1208,7 @@ <rowsItem> <index>18</index> <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>14</i> <c> @@ -1206,7 +1218,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1214,11 +1226,11 @@ <rowsItem> <index>19</index> <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1226,11 +1238,11 @@ <rowsItem> <index>20</index> <row> - <formatIndex>6</formatIndex> + <formatIndex>7</formatIndex> <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1241,7 +1253,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1252,7 +1264,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1263,7 +1275,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1274,7 +1286,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1285,7 +1297,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1296,7 +1308,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1307,7 +1319,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1318,7 +1330,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1329,7 +1341,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1340,7 +1352,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1351,7 +1363,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1362,7 +1374,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1373,7 +1385,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1384,7 +1396,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1395,7 +1407,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1406,7 +1418,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1417,7 +1429,7 @@ <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1428,13 +1440,13 @@ <c> <i>7</i> <c> - <f>20</f> + <f>21</f> </c> </c> <c> <i>16</i> <c> - <f>5</f> + <f>6</f> </c> </c> </row> @@ -1442,7 +1454,7 @@ <drawing> <drawingType>Picture</drawingType> <id>4</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>5</beginRow> <beginRowOffset>2</beginRowOffset> <endRow>5</endRow> @@ -1452,14 +1464,14 @@ <endColumn>14</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>1</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>5</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>6</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>6</endRow> @@ -1469,14 +1481,14 @@ <endColumn>14</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>2</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>6</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>7</beginRow> <beginRowOffset>3</beginRowOffset> <endRow>8</endRow> @@ -1486,14 +1498,14 @@ <endColumn>14</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>3</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>15</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>10</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>10</endRow> @@ -1503,14 +1515,14 @@ <endColumn>14</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>4</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>17</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>9</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>9</endRow> @@ -1520,14 +1532,14 @@ <endColumn>14</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>5</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>22</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>12</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>12</endRow> @@ -1537,14 +1549,14 @@ <endColumn>14</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>6</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>24</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>4</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>4</endRow> @@ -1554,14 +1566,14 @@ <endColumn>14</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>7</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>23</id> - <formatIndex>22</formatIndex> + <formatIndex>23</formatIndex> <beginRow>8</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>8</endRow> @@ -1571,14 +1583,14 @@ <endColumn>14</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>8</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>31</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>13</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>13</endRow> @@ -1588,14 +1600,14 @@ <endColumn>14</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>9</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>45</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>4</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>4</endRow> @@ -1605,14 +1617,14 @@ <endColumn>16</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>10</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>46</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>5</beginRow> <beginRowOffset>2</beginRowOffset> <endRow>5</endRow> @@ -1622,14 +1634,14 @@ <endColumn>16</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>11</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>47</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>6</beginRow> <beginRowOffset>3</beginRowOffset> <endRow>7</endRow> @@ -1639,14 +1651,14 @@ <endColumn>16</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>12</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>48</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>7</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>7</endRow> @@ -1656,14 +1668,14 @@ <endColumn>16</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>13</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>49</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>8</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>8</endRow> @@ -1673,14 +1685,14 @@ <endColumn>16</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>14</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>50</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>10</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>10</endRow> @@ -1690,14 +1702,14 @@ <endColumn>16</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>15</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>51</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>11</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>11</endRow> @@ -1707,14 +1719,14 @@ <endColumn>16</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>16</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>52</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>12</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>12</endRow> @@ -1724,14 +1736,14 @@ <endColumn>16</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>17</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>53</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>13</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>13</endRow> @@ -1741,14 +1753,14 @@ <endColumn>16</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>18</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>54</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>14</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>14</endRow> @@ -1758,14 +1770,14 @@ <endColumn>16</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>19</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>55</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>16</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>16</endRow> @@ -1775,14 +1787,14 @@ <endColumn>16</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>20</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>56</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>17</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>17</endRow> @@ -1792,14 +1804,14 @@ <endColumn>16</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>21</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>57</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>18</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>18</endRow> @@ -1809,14 +1821,14 @@ <endColumn>16</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>22</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>58</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>19</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>19</endRow> @@ -1826,14 +1838,14 @@ <endColumn>16</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>23</pictureIndex> </drawing> <drawing> <drawingType>Picture</drawingType> <id>59</id> - <formatIndex>21</formatIndex> + <formatIndex>22</formatIndex> <beginRow>20</beginRow> <beginRowOffset>0</beginRowOffset> <endRow>20</endRow> @@ -1843,12 +1855,216 @@ <endColumn>16</endColumn> <endColumnOffset>57</endColumnOffset> <autoSize>false</autoSize> - <pictureSize>RealSize</pictureSize> + <pictureSize>Proportionally</pictureSize> <zOrder>0</zOrder> <pictureIndex>24</pictureIndex> </drawing> + <drawing> + <drawingType>Picture</drawingType> + <id>73</id> + <formatIndex>22</formatIndex> + <beginRow>15</beginRow> + <beginRowOffset>0</beginRowOffset> + <endRow>15</endRow> + <endRowOffset>57</endRowOffset> + <beginColumn>14</beginColumn> + <beginColumnOffset>0</beginColumnOffset> + <endColumn>14</endColumn> + <endColumnOffset>57</endColumnOffset> + <autoSize>false</autoSize> + <pictureSize>Proportionally</pictureSize> + <zOrder>0</zOrder> + <pictureIndex>25</pictureIndex> + </drawing> + <drawing> + <drawingType>Picture</drawingType> + <id>75</id> + <formatIndex>22</formatIndex> + <beginRow>17</beginRow> + <beginRowOffset>0</beginRowOffset> + <endRow>17</endRow> + <endRowOffset>57</endRowOffset> + <beginColumn>14</beginColumn> + <beginColumnOffset>0</beginColumnOffset> + <endColumn>14</endColumn> + <endColumnOffset>57</endColumnOffset> + <autoSize>false</autoSize> + <pictureSize>Proportionally</pictureSize> + <zOrder>0</zOrder> + <pictureIndex>26</pictureIndex> + </drawing> + <drawing> + <drawingType>Picture</drawingType> + <id>77</id> + <formatIndex>22</formatIndex> + <beginRow>19</beginRow> + <beginRowOffset>0</beginRowOffset> + <endRow>19</endRow> + <endRowOffset>57</endRowOffset> + <beginColumn>14</beginColumn> + <beginColumnOffset>0</beginColumnOffset> + <endColumn>14</endColumn> + <endColumnOffset>57</endColumnOffset> + <autoSize>false</autoSize> + <pictureSize>Proportionally</pictureSize> + <zOrder>0</zOrder> + <pictureIndex>27</pictureIndex> + </drawing> + <drawing> + <drawingType>Picture</drawingType> + <id>78</id> + <formatIndex>22</formatIndex> + <beginRow>20</beginRow> + <beginRowOffset>0</beginRowOffset> + <endRow>20</endRow> + <endRowOffset>57</endRowOffset> + <beginColumn>14</beginColumn> + <beginColumnOffset>0</beginColumnOffset> + <endColumn>14</endColumn> + <endColumnOffset>57</endColumnOffset> + <autoSize>false</autoSize> + <pictureSize>Proportionally</pictureSize> + <zOrder>0</zOrder> + <pictureIndex>28</pictureIndex> + </drawing> + <drawing> + <drawingType>Picture</drawingType> + <id>80</id> + <formatIndex>22</formatIndex> + <beginRow>9</beginRow> + <beginRowOffset>0</beginRowOffset> + <endRow>9</endRow> + <endRowOffset>57</endRowOffset> + <beginColumn>18</beginColumn> + <beginColumnOffset>0</beginColumnOffset> + <endColumn>18</endColumn> + <endColumnOffset>57</endColumnOffset> + <autoSize>false</autoSize> + <pictureSize>Proportionally</pictureSize> + <zOrder>0</zOrder> + <pictureIndex>29</pictureIndex> + </drawing> + <drawing> + <drawingType>Picture</drawingType> + <id>82</id> + <formatIndex>22</formatIndex> + <beginRow>10</beginRow> + <beginRowOffset>0</beginRowOffset> + <endRow>10</endRow> + <endRowOffset>57</endRowOffset> + <beginColumn>18</beginColumn> + <beginColumnOffset>0</beginColumnOffset> + <endColumn>18</endColumn> + <endColumnOffset>57</endColumnOffset> + <autoSize>false</autoSize> + <pictureSize>Proportionally</pictureSize> + <zOrder>0</zOrder> + <pictureIndex>30</pictureIndex> + </drawing> + <drawing> + <drawingType>Picture</drawingType> + <id>84</id> + <formatIndex>22</formatIndex> + <beginRow>11</beginRow> + <beginRowOffset>0</beginRowOffset> + <endRow>11</endRow> + <endRowOffset>57</endRowOffset> + <beginColumn>18</beginColumn> + <beginColumnOffset>0</beginColumnOffset> + <endColumn>18</endColumn> + <endColumnOffset>57</endColumnOffset> + <autoSize>false</autoSize> + <pictureSize>Proportionally</pictureSize> + <zOrder>0</zOrder> + <pictureIndex>31</pictureIndex> + </drawing> + <drawing> + <drawingType>Picture</drawingType> + <id>86</id> + <formatIndex>22</formatIndex> + <beginRow>12</beginRow> + <beginRowOffset>0</beginRowOffset> + <endRow>12</endRow> + <endRowOffset>57</endRowOffset> + <beginColumn>18</beginColumn> + <beginColumnOffset>0</beginColumnOffset> + <endColumn>18</endColumn> + <endColumnOffset>57</endColumnOffset> + <autoSize>false</autoSize> + <pictureSize>Proportionally</pictureSize> + <zOrder>0</zOrder> + <pictureIndex>32</pictureIndex> + </drawing> + <drawing> + <drawingType>Picture</drawingType> + <id>88</id> + <formatIndex>22</formatIndex> + <beginRow>13</beginRow> + <beginRowOffset>0</beginRowOffset> + <endRow>13</endRow> + <endRowOffset>57</endRowOffset> + <beginColumn>18</beginColumn> + <beginColumnOffset>0</beginColumnOffset> + <endColumn>18</endColumn> + <endColumnOffset>57</endColumnOffset> + <autoSize>false</autoSize> + <pictureSize>Proportionally</pictureSize> + <zOrder>0</zOrder> + <pictureIndex>33</pictureIndex> + </drawing> + <drawing> + <drawingType>Picture</drawingType> + <id>90</id> + <formatIndex>22</formatIndex> + <beginRow>14</beginRow> + <beginRowOffset>0</beginRowOffset> + <endRow>14</endRow> + <endRowOffset>57</endRowOffset> + <beginColumn>18</beginColumn> + <beginColumnOffset>0</beginColumnOffset> + <endColumn>18</endColumn> + <endColumnOffset>57</endColumnOffset> + <autoSize>false</autoSize> + <pictureSize>Proportionally</pictureSize> + <zOrder>0</zOrder> + <pictureIndex>34</pictureIndex> + </drawing> + <drawing> + <drawingType>Picture</drawingType> + <id>92</id> + <formatIndex>22</formatIndex> + <beginRow>18</beginRow> + <beginRowOffset>0</beginRowOffset> + <endRow>18</endRow> + <endRowOffset>57</endRowOffset> + <beginColumn>14</beginColumn> + <beginColumnOffset>0</beginColumnOffset> + <endColumn>14</endColumn> + <endColumnOffset>57</endColumnOffset> + <autoSize>false</autoSize> + <pictureSize>Proportionally</pictureSize> + <zOrder>0</zOrder> + <pictureIndex>35</pictureIndex> + </drawing> + <drawing> + <drawingType>Picture</drawingType> + <id>94</id> + <formatIndex>22</formatIndex> + <beginRow>16</beginRow> + <beginRowOffset>0</beginRowOffset> + <endRow>16</endRow> + <endRowOffset>57</endRowOffset> + <beginColumn>14</beginColumn> + <beginColumnOffset>0</beginColumnOffset> + <endColumn>14</endColumn> + <endColumnOffset>57</endColumnOffset> + <autoSize>false</autoSize> + <pictureSize>Proportionally</pictureSize> + <zOrder>0</zOrder> + <pictureIndex>36</pictureIndex> + </drawing> <templateMode>true</templateMode> - <defaultFormatIndex>8</defaultFormatIndex> + <defaultFormatIndex>9</defaultFormatIndex> <height>39</height> <vgRows>39</vgRows> <merge> @@ -1887,16 +2103,6 @@ <r>-1</r> <c>16</c> </merge> - <namedItem xsi:type="NamedItemCells"> - <name>Документ</name> - <area> - <type>Rectangle</type> - <beginRow>1</beginRow> - <endRow>1</endRow> - <beginColumn>1</beginColumn> - <endColumn>12</endColumn> - </area> - </namedItem> <namedItem xsi:type="NamedItemCells"> <name>ДокументЗаписан</name> <area> @@ -2137,6 +2343,16 @@ <endColumn>14</endColumn> </area> </namedItem> + <namedItem xsi:type="NamedItemCells"> + <name>Объект</name> + <area> + <type>Rectangle</type> + <beginRow>1</beginRow> + <endRow>1</endRow> + <beginColumn>1</beginColumn> + <endColumn>12</endColumn> + </area> + </namedItem> <namedItem xsi:type="NamedItemCells"> <name>Отступ</name> <area> @@ -2148,7 +2364,127 @@ </area> </namedItem> <namedItem xsi:type="NamedItemCells"> - <name>ТекущийДокумент</name> + <name>СправочникПВХКоннекторВерх</name> + <area> + <type>Rectangle</type> + <beginRow>16</beginRow> + <endRow>16</endRow> + <beginColumn>14</beginColumn> + <endColumn>14</endColumn> + </area> + </namedItem> + <namedItem xsi:type="NamedItemCells"> + <name>СправочникПВХКоннекторВерхНиз</name> + <area> + <type>Rectangle</type> + <beginRow>18</beginRow> + <endRow>18</endRow> + <beginColumn>14</beginColumn> + <endColumn>14</endColumn> + </area> + </namedItem> + <namedItem xsi:type="NamedItemCells"> + <name>СправочникПВХКоннекторЛево</name> + <area> + <type>Rectangle</type> + <beginRow>15</beginRow> + <endRow>15</endRow> + <beginColumn>14</beginColumn> + <endColumn>14</endColumn> + </area> + </namedItem> + <namedItem xsi:type="NamedItemCells"> + <name>СправочникПВХКоннекторЛевоВерх</name> + <area> + <type>Rectangle</type> + <beginRow>20</beginRow> + <endRow>20</endRow> + <beginColumn>14</beginColumn> + <endColumn>14</endColumn> + </area> + </namedItem> + <namedItem xsi:type="NamedItemCells"> + <name>СправочникПВХКоннекторЛевоНиз</name> + <area> + <type>Rectangle</type> + <beginRow>19</beginRow> + <endRow>19</endRow> + <beginColumn>14</beginColumn> + <endColumn>14</endColumn> + </area> + </namedItem> + <namedItem xsi:type="NamedItemCells"> + <name>СправочникПВХКоннекторНиз</name> + <area> + <type>Rectangle</type> + <beginRow>17</beginRow> + <endRow>17</endRow> + <beginColumn>14</beginColumn> + <endColumn>14</endColumn> + </area> + </namedItem> + <namedItem xsi:type="NamedItemCells"> + <name>СправочникПВХПомеченНаУдалениеКоннекторВерх</name> + <area> + <type>Rectangle</type> + <beginRow>10</beginRow> + <endRow>10</endRow> + <beginColumn>18</beginColumn> + <endColumn>18</endColumn> + </area> + </namedItem> + <namedItem xsi:type="NamedItemCells"> + <name>СправочникПВХПомеченНаУдалениеКоннекторВерхНиз</name> + <area> + <type>Rectangle</type> + <beginRow>12</beginRow> + <endRow>12</endRow> + <beginColumn>18</beginColumn> + <endColumn>18</endColumn> + </area> + </namedItem> + <namedItem xsi:type="NamedItemCells"> + <name>СправочникПВХПомеченНаУдалениеКоннекторЛево</name> + <area> + <type>Rectangle</type> + <beginRow>9</beginRow> + <endRow>9</endRow> + <beginColumn>18</beginColumn> + <endColumn>18</endColumn> + </area> + </namedItem> + <namedItem xsi:type="NamedItemCells"> + <name>СправочникПВХПомеченНаУдалениеКоннекторЛевоВерх</name> + <area> + <type>Rectangle</type> + <beginRow>14</beginRow> + <endRow>14</endRow> + <beginColumn>18</beginColumn> + <endColumn>18</endColumn> + </area> + </namedItem> + <namedItem xsi:type="NamedItemCells"> + <name>СправочникПВХПомеченНаУдалениеКоннекторЛевоНиз</name> + <area> + <type>Rectangle</type> + <beginRow>13</beginRow> + <endRow>13</endRow> + <beginColumn>18</beginColumn> + <endColumn>18</endColumn> + </area> + </namedItem> + <namedItem xsi:type="NamedItemCells"> + <name>СправочникПВХПомеченНаУдалениеКоннекторНиз</name> + <area> + <type>Rectangle</type> + <beginRow>11</beginRow> + <endRow>11</endRow> + <beginColumn>18</beginColumn> + <endColumn>18</endColumn> + </area> + </namedItem> + <namedItem xsi:type="NamedItemCells"> + <name>ТекущийОбъект</name> <area> <type>Rectangle</type> <beginRow>3</beginRow> @@ -2163,15 +2499,15 @@ <line width="1" gap="false"> <v8ui:style xsi:type="v8ui:SpreadsheetDocumentDrawingLineType">None</v8ui:style> </line> - <font faceName="Arial" height="9" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="9" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <font faceName="Arial" height="9" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="9" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> <format> <width>26</width> </format> <format> - <width>25</width> + <width>23</width> </format> <format> <width>24</width> @@ -2180,6 +2516,9 @@ <width>23</width> <horizontalAlignment>Center</horizontalAlignment> </format> + <format> + <width>29</width> + </format> <format> <horizontalAlignment>Center</horizontalAlignment> </format> @@ -2362,4 +2701,52 @@ <index>23</index> <picture t="false" ref="v8ui:ДокументЗаписанКоннекторЛевоВерх"/> </picture> + <picture> + <index>24</index> + <picture t="false" ref="v8ui:СправочникПВХКоннекторЛево"/> + </picture> + <picture> + <index>25</index> + <picture t="false" ref="v8ui:СправочникПВХКоннекторНиз"/> + </picture> + <picture> + <index>26</index> + <picture t="false" ref="v8ui:СправочникПВХКоннекторЛевоНиз"/> + </picture> + <picture> + <index>27</index> + <picture t="false" ref="v8ui:СправочникПВХКоннекторЛевоВерх"/> + </picture> + <picture> + <index>28</index> + <picture t="false" ref="v8ui:СправочникПВХПомеченНаУдалениеКоннекторЛево"/> + </picture> + <picture> + <index>29</index> + <picture t="false" ref="v8ui:СправочникПВХПомеченНаУдалениеКоннекторВерх"/> + </picture> + <picture> + <index>30</index> + <picture t="false" ref="v8ui:СправочникПВХПомеченНаУдалениеКоннекторНиз"/> + </picture> + <picture> + <index>31</index> + <picture t="false" ref="v8ui:СправочникПВХПомеченНаУдалениеКоннекторВерхНиз"/> + </picture> + <picture> + <index>32</index> + <picture t="false" ref="v8ui:СправочникПВХПомеченНаУдалениеКоннекторЛевоНиз"/> + </picture> + <picture> + <index>33</index> + <picture t="false" ref="v8ui:СправочникПВХПомеченНаУдалениеКоннекторЛевоВерх"/> + </picture> + <picture> + <index>34</index> + <picture t="false" ref="v8ui:СправочникПВХКоннекторВерхНиз"/> + </picture> + <picture> + <index>35</index> + <picture t="false" ref="v8ui:СправочникПВХКоннекторВверх"/> + </picture> </document> \ No newline at end of file diff --git a/SSL/src/Configuration/Configuration.mdo b/SSL/src/Configuration/Configuration.mdo index 3e1e6110c..0ea29c6bb 100644 --- a/SSL/src/Configuration/Configuration.mdo +++ b/SSL/src/Configuration/Configuration.mdo @@ -1,17 +1,17 @@ <?xml version="1.0" encoding="UTF-8"?> -<mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="2c65304d-af95-46ed-899d-ed725350e41f"> +<mdclass:Configuration xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="7d7b9c24-2075-419a-b307-abf8ca3a9c70"> <name>БиблиотекаСтандартныхПодсистем</name> <synonym> <key>ru</key> <value>Библиотека стандартных подсистем, редакция 2.3</value> </synonym> - <containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="c1679208-4c39-4022-a0aa-6b233efe05d4"/> - <containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="ddcd0d50-bd85-4437-8327-2c5a42d5935f"/> - <containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="fd91c70d-eb30-42e9-8eb6-04700a6b3ac0"/> - <containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="925ae191-e5b9-4f5c-8d1a-9a2b7f98886c"/> - <containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="c7ada553-8747-4716-b343-0ef10c113512"/> - <containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="55348ffa-1138-46ec-a30f-c5cd9f794ae3"/> - <containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="47fa785b-e6d7-4af3-8560-f0b3e9da67bd"/> + <containedObjects classId="9cd510cd-abfc-11d4-9434-004095e12fc7" objectId="6c949fca-4181-4f2b-8016-7efdcffb93e9"/> + <containedObjects classId="9fcd25a0-4822-11d4-9414-008048da11f9" objectId="f3a43863-854c-438f-a8ca-30142ce2fa5b"/> + <containedObjects classId="e3687481-0a87-462c-a166-9f34594f9bba" objectId="3189a0c2-e097-41c8-9637-c168abca5225"/> + <containedObjects classId="9de14907-ec23-4a07-96f0-85521cb6b53b" objectId="78fb70ee-1ccb-4772-80a3-892114b2dfd4"/> + <containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="0de238af-1f42-4127-b8aa-30d54e58567c"/> + <containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="11d8271f-df74-44bf-b97e-b4bbe6671eb8"/> + <containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="49d85c49-85cb-4153-b52c-70f1677d8cd8"/> <defaultRunMode>ManagedApplication</defaultRunMode> <usePurposes>PersonalComputer</usePurposes> <scriptVariant>Russian</scriptVariant> @@ -19,7 +19,7 @@ <defaultRoles>Role.АдминистраторСистемы</defaultRoles> <defaultRoles>Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</defaultRoles> <vendor>Фирма "1С"</vendor> - <version>2.3.2.205</version> + <version>2.3.5.52</version> <updateCatalogAddress>http://downloads.v8.1c.ru/tmplts/</updateCatalogAddress> <includeHelpInContents>true</includeHelpInContents> <usedMobileApplicationFunctionalities> @@ -56,7 +56,7 @@ <objectAutonumerationMode>NotAutoFree</objectAutonumerationMode> <modalityUseMode>UseWithWarnings</modalityUseMode> <interfaceCompatibilityMode>TaxiEnableVersion8_2</interfaceCompatibilityMode> - <compatibilityMode>8.3.6</compatibilityMode> + <compatibilityMode>8.3.8</compatibilityMode> <languages uuid="db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e"> <name>Русский</name> <synonym> @@ -66,6 +66,7 @@ <languageCode>ru</languageCode> </languages> <subsystems>Subsystem.Администрирование</subsystems> + <subsystems>Subsystem.ПодключаемыеОтчетыИОбработки</subsystems> <subsystems>Subsystem.СтандартныеПодсистемы</subsystems> <styleItems>StyleItem.ВидДняПроизводственногоКалендаряВоскресеньеЦвет</styleItems> <styleItems>StyleItem.ВидДняПроизводственногоКалендаряНеУказанЦвет</styleItems> @@ -94,6 +95,7 @@ <styleItems>StyleItem.ЗапрещенноеПравоДоступа</styleItems> <styleItems>StyleItem.ИзмененноеЗначениеРеквизитаФон</styleItems> <styleItems>StyleItem.ИзмененноеЗначениеРеквизитаЦвет</styleItems> + <styleItems>StyleItem.ИтогиФонГруппы</styleItems> <styleItems>StyleItem.КонтактнаяИнформацияСРедактированиемВДиалогеЦвет</styleItems> <styleItems>StyleItem.МоиВариантыОтчетовЦвет</styleItems> <styleItems>StyleItem.НепринятаяВерсия</styleItems> @@ -159,6 +161,7 @@ <commonPictures>CommonPicture.ГраницаСнизу</commonPictures> <commonPictures>CommonPicture.ГраницаСправа</commonPictures> <commonPictures>CommonPicture.ДлительнаяОперация48</commonPictures> + <commonPictures>CommonPicture.ДобавитьКомплексныйВопрос</commonPictures> <commonPictures>CommonPicture.ДобавитьПростойВопрос</commonPictures> <commonPictures>CommonPicture.ДобавитьРазделАнкеты</commonPictures> <commonPictures>CommonPicture.ДобавитьРодительский</commonPictures> @@ -221,6 +224,7 @@ <commonPictures>CommonPicture.КоллекцияКонтролируемыеСобытия152ФЗ</commonPictures> <commonPictures>CommonPicture.КоллекцияНапоминания</commonPictures> <commonPictures>CommonPicture.КоллекцияОбъектыМетаданных</commonPictures> + <commonPictures>CommonPicture.КоллекцияПиктограммПараметрыШаблонаСообщения</commonPictures> <commonPictures>CommonPicture.КоллекцияПиктограммФайлов</commonPictures> <commonPictures>CommonPicture.КоллекцияПиктограммЭлементов</commonPictures> <commonPictures>CommonPicture.КоллекцияСкрепка</commonPictures> @@ -303,6 +307,7 @@ <commonPictures>CommonPicture.ПриложитьФайл</commonPictures> <commonPictures>CommonPicture.ПрименитьПравилаОбработкиПисем</commonPictures> <commonPictures>CommonPicture.ПримечаниеЖурналаРегистрации</commonPictures> + <commonPictures>CommonPicture.ПроцессОтложен</commonPictures> <commonPictures>CommonPicture.ПрочиеПользовательскиеНастройки</commonPictures> <commonPictures>CommonPicture.Пустая</commonPictures> <commonPictures>CommonPicture.РабочийКаталогПоУмолчанию</commonPictures> @@ -350,10 +355,24 @@ <commonPictures>CommonPicture.СостояниеПользователя12</commonPictures> <commonPictures>CommonPicture.СостояниеРассылкиОтчетов</commonPictures> <commonPictures>CommonPicture.СостоянияПользователей</commonPictures> + <commonPictures>CommonPicture.СостоянияПроцессов</commonPictures> + <commonPictures>CommonPicture.СостоянияРасширенийКонфигурации</commonPictures> <commonPictures>CommonPicture.СохранитьВариантОтчета</commonPictures> <commonPictures>CommonPicture.СохранитьФайлКак</commonPictures> <commonPictures>CommonPicture.СправкаВНачало</commonPictures> <commonPictures>CommonPicture.СправкаПереходВниз</commonPictures> + <commonPictures>CommonPicture.СправочникПВХКоннекторВверх</commonPictures> + <commonPictures>CommonPicture.СправочникПВХКоннекторВерхНиз</commonPictures> + <commonPictures>CommonPicture.СправочникПВХКоннекторЛево</commonPictures> + <commonPictures>CommonPicture.СправочникПВХКоннекторЛевоВерх</commonPictures> + <commonPictures>CommonPicture.СправочникПВХКоннекторЛевоНиз</commonPictures> + <commonPictures>CommonPicture.СправочникПВХКоннекторНиз</commonPictures> + <commonPictures>CommonPicture.СправочникПВХПомеченНаУдалениеКоннекторВерх</commonPictures> + <commonPictures>CommonPicture.СправочникПВХПомеченНаУдалениеКоннекторВерхНиз</commonPictures> + <commonPictures>CommonPicture.СправочникПВХПомеченНаУдалениеКоннекторЛево</commonPictures> + <commonPictures>CommonPicture.СправочникПВХПомеченНаУдалениеКоннекторЛевоВерх</commonPictures> + <commonPictures>CommonPicture.СправочникПВХПомеченНаУдалениеКоннекторЛевоНиз</commonPictures> + <commonPictures>CommonPicture.СправочникПВХПомеченНаУдалениеКоннекторНиз</commonPictures> <commonPictures>CommonPicture.СтатусыДокумента</commonPictures> <commonPictures>CommonPicture.СтатусыСопоставленияОбъектов</commonPictures> <commonPictures>CommonPicture.СтрелкаВверх</commonPictures> @@ -394,7 +413,6 @@ <commonPictures>CommonPicture.ЭлектронноеПисьмоИсходящее</commonPictures> <commonPictures>CommonPicture.ЯндексКарты</commonPictures> <sessionParameters>SessionParameter.АвторизованныйПользователь</sessionParameters> - <sessionParameters>SessionParameter.АдресСвойствРасширений</sessionParameters> <sessionParameters>SessionParameter.БуферОбмена</sessionParameters> <sessionParameters>SessionParameter.ВерсияРасширений</sessionParameters> <sessionParameters>SessionParameter.ВидыДоступаБезГруппДляЗначенияДоступа</sessionParameters> @@ -410,11 +428,13 @@ <sessionParameters>SessionParameter.ОбластьДанныхЗначение</sessionParameters> <sessionParameters>SessionParameter.ОбластьДанныхИспользование</sessionParameters> <sessionParameters>SessionParameter.ОбновитьВерсиюДатЗапретаИзмененияПослеЗагрузкиДанных</sessionParameters> + <sessionParameters>SessionParameter.ОграничениеДоступаНаУровнеЗаписейВключено</sessionParameters> <sessionParameters>SessionParameter.ОшибкаРасхожденияВерсийПриПолученииДанных</sessionParameters> <sessionParameters>SessionParameter.ПараметрыКлиентаНаСервере</sessionParameters> <sessionParameters>SessionParameter.ПараметрыОбработчикаОбновления</sessionParameters> <sessionParameters>SessionParameter.ПараметрыСеансаСинхронизацииДанных</sessionParameters> <sessionParameters>SessionParameter.ПаролиСинхронизацииДанных</sessionParameters> + <sessionParameters>SessionParameter.ПодключенныеРасширения</sessionParameters> <sessionParameters>SessionParameter.ПравилаВыборочнойРегистрацииОбъектов</sessionParameters> <sessionParameters>SessionParameter.ПравилаРегистрацииОбъектов</sessionParameters> <sessionParameters>SessionParameter.ПриоритетныеДанныеОбмена</sessionParameters> @@ -444,14 +464,19 @@ <roles>Role.ДобавлениеИзменениеДополнительныхОтчетовИОбработок</roles> <roles>Role.ДобавлениеИзменениеДополнительныхРеквизитовИСведений</roles> <roles>Role.ДобавлениеИзменениеЗаданий</roles> + <roles>Role.ДобавлениеИзменениеЗаметок</roles> <roles>Role.ДобавлениеИзменениеКалендарныхГрафиков</roles> <roles>Role.ДобавлениеИзменениеКурсовВалют</roles> + <roles>Role.ДобавлениеИзменениеЛичныхВариантовОтчетов</roles> + <roles>Role.ДобавлениеИзменениеНапоминаний</roles> <roles>Role.ДобавлениеИзменениеОпросов</roles> <roles>Role.ДобавлениеИзменениеОтветовНаВопросыАнкет</roles> <roles>Role.ДобавлениеИзменениеПользователей</roles> <roles>Role.ДобавлениеИзменениеРассылокОтчетов</roles> <roles>Role.ДобавлениеИзменениеРолейИсполнителей</roles> <roles>Role.ДобавлениеИзменениеШаблоновАнкет</roles> + <roles>Role.ДобавлениеИзменениеШаблоновСообщений</roles> + <roles>Role.ДобавлениеИзменениеЭлектронныхПодписейИШифрование</roles> <roles>Role.ЗапускAutomation</roles> <roles>Role.ЗапускВебКлиента</roles> <roles>Role.ЗапускВнешнегоСоединения</roles> @@ -463,39 +488,35 @@ <roles>Role.ИзменениеУчастниковГруппДоступа</roles> <roles>Role.Интеграция1СБухфон</roles> <roles>Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</roles> - <roles>Role.ИспользованиеВариантовОтчетов</roles> - <roles>Role.ИспользованиеДополнительныхОтчетовИОбработок</roles> - <roles>Role.ИспользованиеДосьеКонтрагента</roles> - <roles>Role.ИспользованиеЗаметок</roles> - <roles>Role.ИспользованиеНапоминаний</roles> - <roles>Role.ИспользованиеСтруктурыПодчиненности</roles> - <roles>Role.ИспользованиеТекущихДел</roles> + <roles>Role.ИспользованиеОбработкиТекущиеДела</roles> <roles>Role.ИспользованиеУниверсальногоОтчета</roles> - <roles>Role.ИспользованиеУчетныхЗаписейЭлектроннойПочты</roles> - <roles>Role.ИспользованиеЭлектроннойПодписиИШифрования</roles> <roles>Role.НастройкаИОценкаПроизводительности</roles> <roles>Role.НастройкаСинхронизацииФайлов</roles> <roles>Role.ОбновлениеКонфигурацииБазыДанных</roles> <roles>Role.ОтправкаSMS</roles> <roles>Role.ПолныеПрава</roles> - <roles>Role.ПроверкаДоступныхОбновленийКонфигурации</roles> <roles>Role.ПросмотрЖурналаРегистрации</roles> <roles>Role.ПросмотрОписанияИзмененийПрограммы</roles> + <roles>Role.ПросмотрОтчетаДосьеКонтрагента</roles> + <roles>Role.ПросмотрСвязанныеДокументы</roles> <roles>Role.РаботаСПапкамиФайлов</roles> <roles>Role.РедактированиеРеквизитовОбъектов</roles> <roles>Role.РежимВсеФункции</roles> <roles>Role.СохранениеДанныхПользователя</roles> <roles>Role.УдаленныйДоступБазоваяФункциональность</roles> <roles>Role.УдаленныйДоступОбменСообщениями</roles> + <roles>Role.ЧтениеВариантовОтчетов</roles> <roles>Role.ЧтениеВерсийОбъектов</roles> <roles>Role.ЧтениеВнешнихПользователей</roles> <roles>Role.ЧтениеГрафиковРаботы</roles> + <roles>Role.ЧтениеДополнительныхОтчетовИОбработок</roles> <roles>Role.ЧтениеДополнительныхСведений</roles> <roles>Role.ЧтениеЗаданий</roles> <roles>Role.ЧтениеЗадач</roles> <roles>Role.ЧтениеИнформацииОВерсияхОбъектов</roles> <roles>Role.ЧтениеКурсовВалют</roles> <roles>Role.ЧтениеОтветовНаВопросыАнкет</roles> + <roles>Role.ЧтениеУчетныхЗаписейЭлектроннойПочты</roles> <commonTemplates>CommonTemplate.ИнструкцияКакВыполнитьУстановкуОбновленияВручную</commonTemplates> <commonTemplates>CommonTemplate.ИнструкцияПоПроверкеКонтрагентов</commonTemplates> <commonTemplates>CommonTemplate.КомпонентаTWAIN</commonTemplates> @@ -556,6 +577,7 @@ <commonModules>CommonModule.ДатыЗапретаИзменения</commonModules> <commonModules>CommonModule.ДатыЗапретаИзмененияПереопределяемый</commonModules> <commonModules>CommonModule.ДатыЗапретаИзмененияСлужебный</commonModules> + <commonModules>CommonModule.ДатыЗапретаИзмененияСлужебныйКлиентСервер</commonModules> <commonModules>CommonModule.ДатыЗапретаИзмененияСлужебныйПовтИсп</commonModules> <commonModules>CommonModule.ДлительныеОперации</commonModules> <commonModules>CommonModule.ДлительныеОперацииВызовСервера</commonModules> @@ -583,6 +605,8 @@ <commonModules>CommonModule.ЗагрузкаДанныхИзФайлаПереопределяемый</commonModules> <commonModules>CommonModule.ЗаметкиПользователя</commonModules> <commonModules>CommonModule.ЗаметкиПользователяСлужебный</commonModules> + <commonModules>CommonModule.ЗаполнениеОбъектов</commonModules> + <commonModules>CommonModule.ЗаполнениеОбъектовПереопределяемый</commonModules> <commonModules>CommonModule.ЗапретРедактированияРеквизитовОбъектов</commonModules> <commonModules>CommonModule.ЗапретРедактированияРеквизитовОбъектовКлиент</commonModules> <commonModules>CommonModule.ЗапретРедактированияРеквизитовОбъектовПереопределяемый</commonModules> @@ -615,6 +639,7 @@ <commonModules>CommonModule.НапоминанияПользователяКлиентПовтИсп</commonModules> <commonModules>CommonModule.НапоминанияПользователяКлиентСервер</commonModules> <commonModules>CommonModule.НапоминанияПользователяКлиентСерверПереопределяемый</commonModules> + <commonModules>CommonModule.НапоминанияПользователяПереопределяемый</commonModules> <commonModules>CommonModule.НапоминанияПользователяСлужебный</commonModules> <commonModules>CommonModule.НастройкаПорядкаЭлементов</commonModules> <commonModules>CommonModule.НастройкаПорядкаЭлементовКлиент</commonModules> @@ -654,11 +679,7 @@ <commonModules>CommonModule.ОбновлениеИнформационнойБазыСобытия</commonModules> <commonModules>CommonModule.ОбновлениеКонфигурации</commonModules> <commonModules>CommonModule.ОбновлениеКонфигурацииВызовСервера</commonModules> - <commonModules>CommonModule.ОбновлениеКонфигурацииГлобальный</commonModules> <commonModules>CommonModule.ОбновлениеКонфигурацииКлиент</commonModules> - <commonModules>CommonModule.ОбновлениеКонфигурацииКлиентПереопределяемый</commonModules> - <commonModules>CommonModule.ОбновлениеКонфигурацииКлиентСервер</commonModules> - <commonModules>CommonModule.ОбновлениеКонфигурацииПереопределяемый</commonModules> <commonModules>CommonModule.ОбщегоНазначения</commonModules> <commonModules>CommonModule.ОбщегоНазначенияВызовСервера</commonModules> <commonModules>CommonModule.ОбщегоНазначенияГлобальный</commonModules> @@ -668,13 +689,17 @@ <commonModules>CommonModule.ОбщегоНазначенияКлиентСервер</commonModules> <commonModules>CommonModule.ОбщегоНазначенияПереопределяемый</commonModules> <commonModules>CommonModule.ОбщегоНазначенияПовтИсп</commonModules> - <commonModules>CommonModule.ОрганизацииСлужебный</commonModules> <commonModules>CommonModule.ОтправкаSMS</commonModules> <commonModules>CommonModule.ОтправкаSMSКлиент</commonModules> <commonModules>CommonModule.ОтправкаSMSКлиентПереопределяемый</commonModules> <commonModules>CommonModule.ОтправкаSMSПереопределяемый</commonModules> + <commonModules>CommonModule.ОтправкаSMSПовтИсп</commonModules> + <commonModules>CommonModule.ОтправкаSMSЧерезGSMINFORM</commonModules> + <commonModules>CommonModule.ОтправкаSMSЧерезSMSRU</commonModules> + <commonModules>CommonModule.ОтправкаSMSЧерезSMSЦЕНТР</commonModules> <commonModules>CommonModule.ОтправкаSMSЧерезБилайн</commonModules> <commonModules>CommonModule.ОтправкаSMSЧерезМТС</commonModules> + <commonModules>CommonModule.ОтправкаSMSЧерезСМСУслуги</commonModules> <commonModules>CommonModule.ОтчетыКлиент</commonModules> <commonModules>CommonModule.ОтчетыКлиентПереопределяемый</commonModules> <commonModules>CommonModule.ОтчетыКлиентСервер</commonModules> @@ -693,7 +718,13 @@ <commonModules>CommonModule.ОчередьЗаданийСлужебный</commonModules> <commonModules>CommonModule.ОчередьЗаданийСлужебныйПовтИсп</commonModules> <commonModules>CommonModule.ОчередьЗаданийСлужебныйРазделениеДанных</commonModules> - <commonModules>CommonModule.ПерепрефиксацияОбъектов</commonModules> + <commonModules>CommonModule.ПодключаемыеКоманды</commonModules> + <commonModules>CommonModule.ПодключаемыеКомандыВызовСервера</commonModules> + <commonModules>CommonModule.ПодключаемыеКомандыКлиент</commonModules> + <commonModules>CommonModule.ПодключаемыеКомандыКлиентПовтИсп</commonModules> + <commonModules>CommonModule.ПодключаемыеКомандыКлиентСервер</commonModules> + <commonModules>CommonModule.ПодключаемыеКомандыПереопределяемый</commonModules> + <commonModules>CommonModule.ПодключаемыеКомандыПовтИсп</commonModules> <commonModules>CommonModule.ПодсистемыКонфигурацииПереопределяемый</commonModules> <commonModules>CommonModule.ПоискИУдалениеДублей</commonModules> <commonModules>CommonModule.ПоискИУдалениеДублейКлиент</commonModules> @@ -838,6 +869,7 @@ <commonModules>CommonModule.СтандартныеПодсистемыСервер</commonModules> <commonModules>CommonModule.СтроковыеФункцииКлиентСервер</commonModules> <commonModules>CommonModule.СтруктураПодчиненностиПереопределяемый</commonModules> + <commonModules>CommonModule.СтруктураПодчиненностиСлужебный</commonModules> <commonModules>CommonModule.ТекущиеДелаПереопределяемый</commonModules> <commonModules>CommonModule.ТекущиеДелаСервер</commonModules> <commonModules>CommonModule.ТекущиеДелаСлужебный</commonModules> @@ -869,6 +901,7 @@ <commonModules>CommonModule.УправлениеПечатьюВызовСервера</commonModules> <commonModules>CommonModule.УправлениеПечатьюКлиент</commonModules> <commonModules>CommonModule.УправлениеПечатьюКлиентПовтИсп</commonModules> + <commonModules>CommonModule.УправлениеПечатьюКлиентСервер</commonModules> <commonModules>CommonModule.УправлениеПечатьюПереопределяемый</commonModules> <commonModules>CommonModule.УправлениеПечатьюПовтИсп</commonModules> <commonModules>CommonModule.УправлениеПечатьюСлужебныйКлиент</commonModules> @@ -892,6 +925,12 @@ <commonModules>CommonModule.ЦентрМониторингаВызовСервераПовтИсп</commonModules> <commonModules>CommonModule.ЦентрМониторингаПереопределяемый</commonModules> <commonModules>CommonModule.ЦентрМониторингаСлужебный</commonModules> + <commonModules>CommonModule.ШаблоныСообщений</commonModules> + <commonModules>CommonModule.ШаблоныСообщенийКлиент</commonModules> + <commonModules>CommonModule.ШаблоныСообщенийКлиентСервер</commonModules> + <commonModules>CommonModule.ШаблоныСообщенийПереопределяемый</commonModules> + <commonModules>CommonModule.ШаблоныСообщенийСервер</commonModules> + <commonModules>CommonModule.ШаблоныСообщенийСлужебный</commonModules> <commonModules>CommonModule.ЭлектроннаяПодпись</commonModules> <commonModules>CommonModule.ЭлектроннаяПодписьКлиент</commonModules> <commonModules>CommonModule.ЭлектроннаяПодписьКлиентПереопределяемый</commonModules> @@ -908,15 +947,18 @@ <exchangePlans>ExchangePlan.ОбновлениеИнформационнойБазы</exchangePlans> <xDTOPackages>XDTOPackage.AgentScripts</xDTOPackages> <xDTOPackages>XDTOPackage.ApdexExport</xDTOPackages> + <xDTOPackages>XDTOPackage.ApdexExport_1_0_0_2</xDTOPackages> <xDTOPackages>XDTOPackage.ApplicationExtensionsManifest_1_0_0_1</xDTOPackages> <xDTOPackages>XDTOPackage.ApplicationExtensionsPermissions_1_0_0_1</xDTOPackages> <xDTOPackages>XDTOPackage.ApplicationPermissions_1_0_0_1</xDTOPackages> <xDTOPackages>XDTOPackage.ApplicationPermissions_1_0_0_2</xDTOPackages> <xDTOPackages>XDTOPackage.CurrencyRates</xDTOPackages> - <xDTOPackages>XDTOPackage.EnterpriseData_1_0_3</xDTOPackages> + <xDTOPackages>XDTOPackage.EnterpriseData_1_0_4</xDTOPackages> <xDTOPackages>XDTOPackage.EnterpriseData_1_0_beta</xDTOPackages> - <xDTOPackages>XDTOPackage.EnterpriseData_1_1_3</xDTOPackages> - <xDTOPackages>XDTOPackage.EnterpriseData_1_2_1</xDTOPackages> + <xDTOPackages>XDTOPackage.EnterpriseData_1_1_4</xDTOPackages> + <xDTOPackages>XDTOPackage.EnterpriseData_1_2_2</xDTOPackages> + <xDTOPackages>XDTOPackage.EnterpriseData_1_3_6</xDTOPackages> + <xDTOPackages>XDTOPackage.EnterpriseData_1_4_2</xDTOPackages> <xDTOPackages>XDTOPackage.EnterpriseDataExchange_1_0_1_1</xDTOPackages> <xDTOPackages>XDTOPackage.ExchangeMessage</xDTOPackages> <xDTOPackages>XDTOPackage.SuppliedData</xDTOPackages> @@ -962,6 +1004,7 @@ <eventSubscriptions>EventSubscription.ЗаполнитьЗначениеРеквизитаУпорядочивания</eventSubscriptions> <eventSubscriptions>EventSubscription.ЗаполнитьКонтактнуюИнформацию</eventSubscriptions> <eventSubscriptions>EventSubscription.ЗаполнитьНаборыЗначенийДоступаТабличныхЧастей</eventSubscriptions> + <eventSubscriptions>EventSubscription.ЗаполнитьНаборыЗначенийДоступаТабличныхЧастейДокументовВзаимодействия</eventSubscriptions> <eventSubscriptions>EventSubscription.ЗапретитьПометкуУдаленияПредопределенныхЭлементов</eventSubscriptions> <eventSubscriptions>EventSubscription.ЗапретитьУдалениеПредопределенныхЭлементов</eventSubscriptions> <eventSubscriptions>EventSubscription.ЗарегистрироватьИзмененияОбщихДанныхУзлов</eventSubscriptions> @@ -991,7 +1034,6 @@ <eventSubscriptions>EventSubscription.ПроверитьВозможностьИзмененияНастроекОбменаДанными</eventSubscriptions> <eventSubscriptions>EventSubscription.ПроверитьДатуЗапретаИзмененияПередЗаписьюДокументаЗащитаПерсональныхДанных</eventSubscriptions> <eventSubscriptions>EventSubscription.ПроверитьДатуЗапретаИзмененияПередУдалениемЗащитаПерсональныхДанных</eventSubscriptions> - <eventSubscriptions>EventSubscription.ПроверитьЗначениеОпцииИспользоватьНесколькоОрганизаций</eventSubscriptions> <eventSubscriptions>EventSubscription.ПроверитьИзменениеФильтровОграниченияМиграцииДанных</eventSubscriptions> <eventSubscriptions>EventSubscription.ПроверитьИзмененияДатВПредмете</eventSubscriptions> <eventSubscriptions>EventSubscription.ПроверитьУстранениеПроблемыДокумента</eventSubscriptions> @@ -1021,6 +1063,7 @@ <scheduledJobs>ScheduledJob.ОтложенноеОбновлениеИБ</scheduledJobs> <scheduledJobs>ScheduledJob.ОтправкаSMS</scheduledJobs> <scheduledJobs>ScheduledJob.ОтправкаИПолучениеСообщенийСистемы</scheduledJobs> + <scheduledJobs>ScheduledJob.ОчисткаЗамеровВремени</scheduledJobs> <scheduledJobs>ScheduledJob.ОчисткаНенужныхФайлов</scheduledJobs> <scheduledJobs>ScheduledJob.ОчисткаУстаревшихВерсийОбъектов</scheduledJobs> <scheduledJobs>ScheduledJob.ПерестроениеАгрегатов</scheduledJobs> @@ -1033,6 +1076,7 @@ <scheduledJobs>ScheduledJob.СинхронизацияДанных</scheduledJobs> <scheduledJobs>ScheduledJob.СинхронизацияФайлов</scheduledJobs> <scheduledJobs>ScheduledJob.СлияниеИндексаППД</scheduledJobs> + <scheduledJobs>ScheduledJob.СтартОтложенныхПроцессов</scheduledJobs> <scheduledJobs>ScheduledJob.УведомлениеИсполнителейОНовыхЗадачах</scheduledJobs> <scheduledJobs>ScheduledJob.УдалениеНеактуальнойИнформацииСинхронизации</scheduledJobs> <scheduledJobs>ScheduledJob.УдалениеПомеченных</scheduledJobs> @@ -1061,10 +1105,10 @@ <functionalOptions>FunctionalOption.ИспользоватьЗаметки</functionalOptions> <functionalOptions>FunctionalOption.ИспользоватьИнтеграцию1СБухфон</functionalOptions> <functionalOptions>FunctionalOption.ИспользоватьНапоминанияПользователя</functionalOptions> - <functionalOptions>FunctionalOption.ИспользоватьНесколькоОрганизаций</functionalOptions> <functionalOptions>FunctionalOption.ИспользоватьНесколькоПроизводственныхКалендарей</functionalOptions> <functionalOptions>FunctionalOption.ИспользоватьОбщиеДополнительныеЗначения</functionalOptions> <functionalOptions>FunctionalOption.ИспользоватьОбщиеДополнительныеРеквизитыИСведения</functionalOptions> + <functionalOptions>FunctionalOption.ИспользоватьОтправкуSMSВШаблонахСообщений</functionalOptions> <functionalOptions>FunctionalOption.ИспользоватьПодчиненныеБизнесПроцессы</functionalOptions> <functionalOptions>FunctionalOption.ИспользоватьПолнотекстовыйПоиск</functionalOptions> <functionalOptions>FunctionalOption.ИспользоватьПочтовыйКлиент</functionalOptions> @@ -1073,18 +1117,18 @@ <functionalOptions>FunctionalOption.ИспользоватьСинхронизациюДанных</functionalOptions> <functionalOptions>FunctionalOption.ИспользоватьСинхронизациюДанныхВЛокальномРежиме</functionalOptions> <functionalOptions>FunctionalOption.ИспользоватьСинхронизациюФайлов</functionalOptions> + <functionalOptions>FunctionalOption.ИспользоватьШаблоныСообщений</functionalOptions> <functionalOptions>FunctionalOption.ИспользоватьШифрование</functionalOptions> + <functionalOptions>FunctionalOption.ИспользоватьЭлектроннуюПочтуВШаблонахСообщений</functionalOptions> <functionalOptions>FunctionalOption.ИспользоватьЭлектронныеПодписи</functionalOptions> <functionalOptions>FunctionalOption.ИспользуютсяПрофилиБезопасности</functionalOptions> <functionalOptions>FunctionalOption.ИсточникДанныхАдресногоКлассификатора</functionalOptions> - <functionalOptions>FunctionalOption.НеИспользоватьНесколькоОрганизаций</functionalOptions> <functionalOptions>FunctionalOption.ОграничиватьДоступНаУровнеЗаписей</functionalOptions> <functionalOptions>FunctionalOption.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно</functionalOptions> <functionalOptions>FunctionalOption.ОтложенноеОбновлениеЗавершеноУспешно</functionalOptions> <functionalOptions>FunctionalOption.ОтправлятьПисьмаВФорматеHTML</functionalOptions> <functionalOptions>FunctionalOption.ПоддержкаРезервногоКопирования</functionalOptions> <functionalOptions>FunctionalOption.ПрефиксИнформационнойБазы</functionalOptions> - <functionalOptions>FunctionalOption.ПрефиксыОрганизаций</functionalOptions> <functionalOptions>FunctionalOption.ПроверятьЭлектронныеПодписиНаСервере</functionalOptions> <functionalOptions>FunctionalOption.РаботаВАвтономномРежиме</functionalOptions> <functionalOptions>FunctionalOption.РаботаВЛокальномРежиме</functionalOptions> @@ -1096,7 +1140,6 @@ <functionalOptions>FunctionalOption.ХранитьФайлыВТомахНаДиске</functionalOptions> <functionalOptionsParameters>FunctionalOptionsParameter.ДополнительныеОтчетыИОбработкиОбъектНазначения</functionalOptionsParameters> <functionalOptionsParameters>FunctionalOptionsParameter.ДополнительныеОтчетыИОбработкиТипФормы</functionalOptionsParameters> - <functionalOptionsParameters>FunctionalOptionsParameter.Организация</functionalOptionsParameters> <functionalOptionsParameters>FunctionalOptionsParameter.ТипВерсионируемогоОбъекта</functionalOptionsParameters> <definedTypes>DefinedType.АдресатЗапретаИзменения</definedTypes> <definedTypes>DefinedType.БезопасныйРежим</definedTypes> @@ -1118,6 +1161,7 @@ <definedTypes>DefinedType.ВнешнийПользовательОбъект</definedTypes> <definedTypes>DefinedType.ЗначениеДоступа</definedTypes> <definedTypes>DefinedType.ЗначениеДоступаСГруппамиЗначенийДоступаОбъект</definedTypes> + <definedTypes>DefinedType.Интервьюер</definedTypes> <definedTypes>DefinedType.КонтактВзаимодействия</definedTypes> <definedTypes>DefinedType.Контрагент</definedTypes> <definedTypes>DefinedType.КонтрагентОбъект</definedTypes> @@ -1126,6 +1170,8 @@ <definedTypes>DefinedType.ОбъектСДополнительнымиКомандами</definedTypes> <definedTypes>DefinedType.ОбъектСклонения</definedTypes> <definedTypes>DefinedType.ОбъектСНастраиваемымПорядком</definedTypes> + <definedTypes>DefinedType.Организация</definedTypes> + <definedTypes>DefinedType.ОтложенныеБизнесПроцессы</definedTypes> <definedTypes>DefinedType.Подразделение</definedTypes> <definedTypes>DefinedType.ПолучательРассылки</definedTypes> <definedTypes>DefinedType.Пользователь</definedTypes> @@ -1135,6 +1181,7 @@ <definedTypes>DefinedType.ПредметЗаметокОбъект</definedTypes> <definedTypes>DefinedType.ПредметНапоминания</definedTypes> <definedTypes>DefinedType.ПредметНапоминанияОбъект</definedTypes> + <definedTypes>DefinedType.ПредметШаблонаСообщения</definedTypes> <definedTypes>DefinedType.ПрисоединенныйФайл</definedTypes> <definedTypes>DefinedType.ПрисоединенныйФайлОбъект</definedTypes> <definedTypes>DefinedType.Респондент</definedTypes> @@ -1162,7 +1209,10 @@ <commonCommands>CommonCommand.НастройкаОбменаСообщениями</commonCommands> <commonCommands>CommonCommand.НастройкаСистемнойУчетнойЗаписиЭлектроннойПочты</commonCommands> <commonCommands>CommonCommand.НастройкиПроверкиКонтрагентов</commonCommands> + <commonCommands>CommonCommand.НастройкиСинхронизацииДанных</commonCommands> <commonCommands>CommonCommand.ОбменСообщениями</commonCommands> + <commonCommands>CommonCommand.ОтправитьSMS</commonCommands> + <commonCommands>CommonCommand.ОтправитьПисьмо</commonCommands> <commonCommands>CommonCommand.ОтчетыОбъекта</commonCommands> <commonCommands>CommonCommand.ПанельОтчетовАдминистрирование</commonCommands> <commonCommands>CommonCommand.ПереходКНастройкамДоступаКВебСервису</commonCommands> @@ -1170,13 +1220,13 @@ <commonCommands>CommonCommand.ПоказатьРезультатРезервногоКопирования</commonCommands> <commonCommands>CommonCommand.ПолучитьНастройкиСинхронизацииДляДругойПрограммы</commonCommands> <commonCommands>CommonCommand.ПраваДоступа</commonCommands> + <commonCommands>CommonCommand.ПредупрежденияПриЗавершенииРаботы</commonCommands> <commonCommands>CommonCommand.ПредупрежденияПриСинхронизацииДанных</commonCommands> <commonCommands>CommonCommand.ПрисоединенныеФайлы</commonCommands> <commonCommands>CommonCommand.ПрисоединенныеФайлыКОбъекту</commonCommands> <commonCommands>CommonCommand.РазместитьФайлыНачальногоОбраза</commonCommands> <commonCommands>CommonCommand.РолиИИсполнителиЗадач</commonCommands> <commonCommands>CommonCommand.СведенияОПользователе</commonCommands> - <commonCommands>CommonCommand.СинхронизацияДанных</commonCommands> <commonCommands>CommonCommand.Синхронизировать</commonCommands> <commonCommands>CommonCommand.СинхронизироватьСДополнительнымиПараметрами</commonCommands> <commonCommands>CommonCommand.СменитьПароль</commonCommands> @@ -1200,6 +1250,7 @@ <commandGroups>CommandGroup.СинхронизацияДанных</commandGroups> <constants>Constant.АвтоматическиНастраиватьРазрешенияВПрофиляхБезопасности</constants> <constants>Constant.АдресПубликацииИнформационнойБазыВИнтернете</constants> + <constants>Constant.АдресПубликацииИнформационнойБазыВЛокальнойСети</constants> <constants>Constant.БлокировкаОтправкиБыстрыхСообщений</constants> <constants>Constant.ВерсияДатЗапретаИзменения</constants> <constants>Constant.ВерсияКлассификатораБанковРФ</constants> @@ -1219,6 +1270,8 @@ <constants>Constant.ИдентификаторИнформационнойБазы</constants> <constants>Constant.ИзвлекатьТекстыФайловНаСервере</constants> <constants>Constant.ИзменятьЗаданияЗаднимЧислом</constants> + <constants>Constant.ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков</constants> + <constants>Constant.ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют</constants> <constants>Constant.ИспользоватьАнкетирование</constants> <constants>Constant.ИспользоватьБизнесПроцессыИЗадачи</constants> <constants>Constant.ИспользоватьВерсионированиеОбъектов</constants> @@ -1233,10 +1286,10 @@ <constants>Constant.ИспользоватьЗаметки</constants> <constants>Constant.ИспользоватьИнтеграцию1СБухфон</constants> <constants>Constant.ИспользоватьНапоминанияПользователя</constants> - <constants>Constant.ИспользоватьНесколькоОрганизаций</constants> <constants>Constant.ИспользоватьНесколькоПроизводственныхКалендарей</constants> <constants>Constant.ИспользоватьОбщиеДополнительныеЗначения</constants> <constants>Constant.ИспользоватьОбщиеДополнительныеРеквизитыИСведения</constants> + <constants>Constant.ИспользоватьОтправкуSMSВШаблонахСообщений</constants> <constants>Constant.ИспользоватьПодчиненныеБизнесПроцессы</constants> <constants>Constant.ИспользоватьПолнотекстовыйПоиск</constants> <constants>Constant.ИспользоватьПочтовыйКлиент</constants> @@ -1248,7 +1301,9 @@ <constants>Constant.ИспользоватьСинхронизациюДанных</constants> <constants>Constant.ИспользоватьСинхронизациюДанныхВЛокальномРежиме</constants> <constants>Constant.ИспользоватьСинхронизациюДанныхВМоделиСервиса</constants> + <constants>Constant.ИспользоватьШаблоныСообщений</constants> <constants>Constant.ИспользоватьШифрование</constants> + <constants>Constant.ИспользоватьЭлектроннуюПочтуВШаблонахСообщений</constants> <constants>Constant.ИспользоватьЭлектронныеПодписи</constants> <constants>Constant.ИспользуютсяПрофилиБезопасности</constants> <constants>Constant.ИсточникДанныхАдресногоКлассификатора</constants> @@ -1257,6 +1312,7 @@ <constants>Constant.КаталогСообщенийОбменаДаннымиДляLinux</constants> <constants>Constant.КаталогСообщенийОбменаДаннымиДляWindows</constants> <constants>Constant.КлючОбластиДанных</constants> + <constants>Constant.КоличествоЗамеровВПакетеЭкспорта</constants> <constants>Constant.КоличествоЭлементовВТранзакцииЗагрузкиДанных</constants> <constants>Constant.КонечнаяТочкаМенеджераСервиса</constants> <constants>Constant.КопироватьОбластиДанныхИзЭталонной</constants> @@ -1270,14 +1326,12 @@ <constants>Constant.НастройкиВходаПользователей</constants> <constants>Constant.НастройкиВыполненияРегламентныхЗаданий</constants> <constants>Constant.НастройкиПодчиненногоУзлаРИБ</constants> - <constants>Constant.НеИспользоватьНесколькоОрганизаций</constants> <constants>Constant.НеИспользоватьРазделениеПоОбластямДанных</constants> <constants>Constant.ОграничиватьДоступНаУровнеЗаписей</constants> <constants>Constant.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно</constants> <constants>Constant.ОтложенноеОбновлениеЗавершеноУспешно</constants> <constants>Constant.ОтправлятьПисьмаВФорматеHTML</constants> <constants>Constant.ОценкаПроизводительностиПериодЗаписи</constants> - <constants>Constant.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций</constants> <constants>Constant.ПараметрыАдминистрированияИБ</constants> <constants>Constant.ПараметрыАдресногоКлассификатора</constants> <constants>Constant.ПараметрыБлокировкиРаботыСВнешнимиРесурсами</constants> @@ -1285,10 +1339,12 @@ <constants>Constant.ПараметрыДополнительныхРеквизитовИСведений</constants> <constants>Constant.ПараметрыИтоговИАгрегатов</constants> <constants>Constant.ПараметрыОграниченияДоступа</constants> + <constants>Constant.ПараметрыПодключаемыхКоманд</constants> <constants>Constant.ПараметрыРаботыПользователей</constants> <constants>Constant.ПараметрыРезервногоКопирования</constants> <constants>Constant.ПараметрыСлужебныхСобытий</constants> <constants>Constant.ПараметрыЦентраМониторинга</constants> + <constants>Constant.ПериодХраненияЗамеров</constants> <constants>Constant.ПовторитьЗагрузкуСообщенияОбменаДаннымиПередЗапуском</constants> <constants>Constant.ПоддержкаРезервногоКопирования</constants> <constants>Constant.ПредставлениеОбластиДанных</constants> @@ -1324,7 +1380,6 @@ <constants>Constant.ХранитьФайлыВТомахНаДиске</constants> <constants>Constant.ЧасовойПоясОбластиДанных</constants> <constants>Constant.ЭтоАвтономноеРабочееМесто</constants> - <commonForms>CommonForm.АвторизацияНаСайтеПоддержкиПользователей</commonForms> <commonForms>CommonForm.АдреснаяКнига</commonForms> <commonForms>CommonForm.АутентификацияВСервисе</commonForms> <commonForms>CommonForm.БлокировкаРаботыСВнешнимиРесурсами</commonForms> @@ -1344,7 +1399,6 @@ <commonForms>CommonForm.ВыборОбъектовИнформационнойБазыКорреспондента</commonForms> <commonForms>CommonForm.ВыборОбъектовМетаданных</commonForms> <commonForms>CommonForm.ВыборПолучателейСообщения</commonForms> - <commonForms>CommonForm.ВыборПроизвольногоПериода</commonForms> <commonForms>CommonForm.ВыборПутиКАрхивуФайловТомов</commonForms> <commonForms>CommonForm.ВыборРолиИсполнителя</commonForms> <commonForms>CommonForm.ВыборТиповПользователей</commonForms> @@ -1352,7 +1406,6 @@ <commonForms>CommonForm.ВыборФорматаВложений</commonForms> <commonForms>CommonForm.ГруппыПользователей</commonForms> <commonForms>CommonForm.ДлительнаяОперация</commonForms> - <commonForms>CommonForm.ДлительнаяОперацияДополнительныхОтчетовИОбработок</commonForms> <commonForms>CommonForm.ДобавлениеЭлектроннойПодписиИзФайла</commonForms> <commonForms>CommonForm.ДополнительноеОписание</commonForms> <commonForms>CommonForm.ДополнительныеОтчетыИОбработки</commonForms> @@ -1393,8 +1446,11 @@ <commonForms>CommonForm.ПредупрежденияПриЗавершенииРаботы</commonForms> <commonForms>CommonForm.ПрисоединенныеФайлы</commonForms> <commonForms>CommonForm.ПрисоединенныйФайл</commonForms> + <commonForms>CommonForm.ПустойРабочийСтол</commonForms> + <commonForms>CommonForm.Расширения</commonForms> <commonForms>CommonForm.РедактированиеДополнительныхСведений</commonForms> <commonForms>CommonForm.РедактированиеТабличногоДокумента</commonForms> + <commonForms>CommonForm.РезультатПроверки</commonForms> <commonForms>CommonForm.Сервис1СКонтрагентНеПодключен</commonForms> <commonForms>CommonForm.Сертификат</commonForms> <commonForms>CommonForm.СинхронизацияДанных</commonForms> @@ -1406,7 +1462,6 @@ <commonForms>CommonForm.СохранениеПечатнойФормы</commonForms> <commonForms>CommonForm.СтруктураПодчиненности</commonForms> <commonForms>CommonForm.УстановкаВедущейКонечнойТочки</commonForms> - <commonForms>CommonForm.УстановленныеРасширения</commonForms> <commonForms>CommonForm.УточнениеКонтактов</commonForms> <commonForms>CommonForm.ФайлыВТоме</commonForms> <commonForms>CommonForm.ФормаВариантаОтчета</commonForms> @@ -1439,7 +1494,6 @@ <catalogs>Catalog.КлассификаторБанковРФ</catalogs> <catalogs>Catalog.КлючевыеОперации</catalogs> <catalogs>Catalog.НаборыДополнительныхРеквизитовИСведений</catalogs> - <catalogs>Catalog.Организации</catalogs> <catalogs>Catalog.ОчередьЗаданий</catalogs> <catalogs>Catalog.ОчередьЗаданийОбластейДанных</catalogs> <catalogs>Catalog.ПапкиФайлов</catalogs> @@ -1469,6 +1523,8 @@ <catalogs>Catalog.Файлы</catalogs> <catalogs>Catalog.ШаблоныАнкет</catalogs> <catalogs>Catalog.ШаблоныЗаданийОчереди</catalogs> + <catalogs>Catalog.ШаблоныСообщений</catalogs> + <catalogs>Catalog.ШаблоныСообщенийПрисоединенныеФайлы</catalogs> <catalogs>Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы</catalogs> <catalogs>Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы</catalogs> <documents>Document.Анкета</documents> @@ -1493,6 +1549,7 @@ <enums>Enum.ВидыДнейПроизводственногоКалендаря</enums> <enums>Enum.ВидыДополнительныхОтчетовИОбработок</enums> <enums>Enum.ВидыНазначенияДатЗапрета</enums> + <enums>Enum.ВидыПереключателяВАнкетах</enums> <enums>Enum.ВидыПравилДляОбменаДанными</enums> <enums>Enum.ВидыТранспортаСообщенийОбмена</enums> <enums>Enum.ДействияПриОбмене</enums> @@ -1508,6 +1565,7 @@ <enums>Enum.ПровайдерыSMS</enums> <enums>Enum.РазмерыБумаги</enums> <enums>Enum.РазрешенияСканированногоИзображения</enums> + <enums>Enum.РежимыАнкетирования</enums> <enums>Enum.РежимыВыгрузкиОбъектовОбмена</enums> <enums>Enum.РежимыИспользованияИнформационнойБазы</enums> <enums>Enum.РежимыСовместимостиРазрешенийДополнительныхОтчетовИОбработок</enums> @@ -1518,6 +1576,7 @@ <enums>Enum.СостоянияЗапросовНаИспользованиеВнешнихРесурсов</enums> <enums>Enum.СостоянияЗаявленияНаВыпускСертификата</enums> <enums>Enum.СостоянияПроверкиКонтрагентов</enums> + <enums>Enum.СостоянияПроцессовДляЗапуска</enums> <enums>Enum.СостоянияСообщенияSMS</enums> <enums>Enum.СостоянияСуществованияКонтрагента</enums> <enums>Enum.СпособыPOP3Аутентификации</enums> @@ -1525,6 +1584,7 @@ <enums>Enum.СпособыВызоваДополнительныхОбработок</enums> <enums>Enum.СпособыЗаполненияГрафикаРаботы</enums> <enums>Enum.СпособыОткрытияФайлаНаПросмотр</enums> + <enums>Enum.СпособыОтображенияПодсказок</enums> <enums>Enum.СпособыПоворотаИзображения</enums> <enums>Enum.СпособыРедактированияЭлектронныхПисем</enums> <enums>Enum.СпособыСравненияВерсийФайлов</enums> @@ -1581,6 +1641,7 @@ <dataProcessors>DataProcessor.АктивныеПользователи</dataProcessors> <dataProcessors>DataProcessor.БлокировкаРаботыПользователей</dataProcessors> <dataProcessors>DataProcessor.ВводКонтактнойИнформации</dataProcessors> + <dataProcessors>DataProcessor.ВыгрузкаЗагрузкаEnterpriseData</dataProcessors> <dataProcessors>DataProcessor.ВыполнениеОбменаДанными</dataProcessors> <dataProcessors>DataProcessor.ГрупповоеИзменениеРеквизитов</dataProcessors> <dataProcessors>DataProcessor.ЖурналРегистрации</dataProcessors> @@ -1607,7 +1668,6 @@ <dataProcessors>DataProcessor.ПанельАдминистрированияБСП</dataProcessors> <dataProcessors>DataProcessor.ПереносФайловВТома</dataProcessors> <dataProcessors>DataProcessor.ПоискИУдалениеДублей</dataProcessors> - <dataProcessors>DataProcessor.ПоискИУстановкаОбновлений</dataProcessors> <dataProcessors>DataProcessor.ПолнотекстовыйПоискВДанных</dataProcessors> <dataProcessors>DataProcessor.ПомощникИнтерактивногоОбменаДанными</dataProcessors> <dataProcessors>DataProcessor.ПомощникСозданияОбменаДанными</dataProcessors> @@ -1628,6 +1688,7 @@ <dataProcessors>DataProcessor.УдалениеПомеченныхОбъектов</dataProcessors> <dataProcessors>DataProcessor.УниверсальныйОбменДаннымиXML</dataProcessors> <dataProcessors>DataProcessor.УправлениеИтогамиИАгрегатами</dataProcessors> + <dataProcessors>DataProcessor.УстановкаОбновлений</dataProcessors> <informationRegisters>InformationRegister.АдресныеОбъекты</informationRegisters> <informationRegisters>InformationRegister.БезопасноеХранилищеДанных</informationRegisters> <informationRegisters>InformationRegister.БезопасноеХранилищеДанныхОбластейДанных</informationRegisters> @@ -1643,6 +1704,7 @@ <informationRegisters>InformationRegister.ДанныеОбъектовДляРегистрацииВОбменах</informationRegisters> <informationRegisters>InformationRegister.ДанныеПроизводственногоКалендаря</informationRegisters> <informationRegisters>InformationRegister.ДатыЗапретаИзменения</informationRegisters> + <informationRegisters>InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений</informationRegisters> <informationRegisters>InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов</informationRegisters> <informationRegisters>InformationRegister.ДомаЗданияСтроения</informationRegisters> <informationRegisters>InformationRegister.ДополнительныеАдресныеСведения</informationRegisters> @@ -1709,6 +1771,7 @@ <informationRegisters>InformationRegister.ПредопределенныеВариантыОтчетовВерсийРасширений</informationRegisters> <informationRegisters>InformationRegister.ПрисоединенныеФайлы</informationRegisters> <informationRegisters>InformationRegister.ПричиныИзмененияАдресныхСведений</informationRegisters> + <informationRegisters>InformationRegister.ПроцессыДляЗапуска</informationRegisters> <informationRegisters>InformationRegister.ПубличныеИдентификаторыСинхронизируемыхОбъектов</informationRegisters> <informationRegisters>InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux</informationRegisters> <informationRegisters>InformationRegister.РабочиеКаталогиФайлов</informationRegisters> @@ -1742,6 +1805,8 @@ <informationRegisters>InformationRegister.УдалитьВерсииПодсистем</informationRegisters> <informationRegisters>InformationRegister.УдалитьГруппыЗначенийДоступа</informationRegisters> <informationRegisters>InformationRegister.УдалитьЗамерыВремени</informationRegisters> + <informationRegisters>InformationRegister.УдалитьЗамерыВремени2</informationRegisters> + <informationRegisters>InformationRegister.УдалитьЗамерыВремениТехнологические</informationRegisters> <informationRegisters>InformationRegister.УдалитьНаборыЗначенийДоступа</informationRegisters> <informationRegisters>InformationRegister.УдалитьНастройкиВерсионированияОбъектов</informationRegisters> <informationRegisters>InformationRegister.УдалитьОбластиДанных</informationRegisters> diff --git a/SSL/src/Configuration/ExternalConnectionModule.bsl b/SSL/src/Configuration/ExternalConnectionModule.bsl new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/SSL/src/Configuration/ExternalConnectionModule.bsl @@ -0,0 +1 @@ + diff --git a/SSL/src/Configuration/ManagedApplicationModule.bsl b/SSL/src/Configuration/ManagedApplicationModule.bsl index 954c63774..bc6266f71 100644 --- a/SSL/src/Configuration/ManagedApplicationModule.bsl +++ b/SSL/src/Configuration/ManagedApplicationModule.bsl @@ -33,6 +33,8 @@ СтандартныеПодсистемыКлиент.ПередНачаломРаботыСистемы(); // Конец СтандартныеПодсистемы + + КонецПроцедуры Процедура ПриНачалеРаботыСистемы() @@ -43,10 +45,10 @@ КонецПроцедуры -Процедура ПередЗавершениемРаботыСистемы(Отказ) +Процедура ПередЗавершениемРаботыСистемы(Отказ, ТекстПредупреждения) // СтандартныеПодсистемы - СтандартныеПодсистемыКлиент.ПередЗавершениемРаботыСистемы(Отказ); + СтандартныеПодсистемыКлиент.ПередЗавершениемРаботыСистемы(Отказ, ТекстПредупреждения); // Конец СтандартныеПодсистемы КонецПроцедуры diff --git a/SSL/src/Configuration/OrdinaryApplicationModule.bsl b/SSL/src/Configuration/OrdinaryApplicationModule.bsl index 954c63774..bc6266f71 100644 --- a/SSL/src/Configuration/OrdinaryApplicationModule.bsl +++ b/SSL/src/Configuration/OrdinaryApplicationModule.bsl @@ -33,6 +33,8 @@ СтандартныеПодсистемыКлиент.ПередНачаломРаботыСистемы(); // Конец СтандартныеПодсистемы + + КонецПроцедуры Процедура ПриНачалеРаботыСистемы() @@ -43,10 +45,10 @@ КонецПроцедуры -Процедура ПередЗавершениемРаботыСистемы(Отказ) +Процедура ПередЗавершениемРаботыСистемы(Отказ, ТекстПредупреждения) // СтандартныеПодсистемы - СтандартныеПодсистемыКлиент.ПередЗавершениемРаботыСистемы(Отказ); + СтандартныеПодсистемыКлиент.ПередЗавершениемРаботыСистемы(Отказ, ТекстПредупреждения); // Конец СтандартныеПодсистемы КонецПроцедуры diff --git a/SSL/src/Configuration/ParentConfigurations.bin b/SSL/src/Configuration/ParentConfigurations.bin index 3605a39e4..46112ffc0 100644 --- a/SSL/src/Configuration/ParentConfigurations.bin +++ b/SSL/src/Configuration/ParentConfigurations.bin @@ -1 +1 @@ -{6,1,1,05051409-7b71-4286-8f3c-ea341fe50773,1,4049ef90-7512-4efb-8602-04457ff80145,"2.3.2.205","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",5209,1,0,2c65304d-af95-46ed-899d-ed725350e41f,2c65304d-af95-46ed-899d-ed725350e41f,1,0,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,1,0,9233322b-dfdb-4c66-91fe-1299292d40a5,9233322b-dfdb-4c66-91fe-1299292d40a5,1,0,0421b67e-ed26-491d-ab98-ec59002ed4ce,0421b67e-ed26-491d-ab98-ec59002ed4ce,1,0,bb47ced2-31f9-4870-8633-20b986e53ccc,bb47ced2-31f9-4870-8633-20b986e53ccc,1,0,7d8acec9-f5a9-411e-921c-446ed0dd3332,7d8acec9-f5a9-411e-921c-446ed0dd3332,1,0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,1,0,cdbd26b1-9583-46e8-adf7-8cc705639892,cdbd26b1-9583-46e8-adf7-8cc705639892,1,0,c0e38c3e-7088-4e35-9d84-2d0ab9655402,c0e38c3e-7088-4e35-9d84-2d0ab9655402,1,0,1098786f-dd24-4cce-b212-be0cb5f01735,1098786f-dd24-4cce-b212-be0cb5f01735,1,0,3c0037f3-4422-4836-b116-8c72e32bdd55,3c0037f3-4422-4836-b116-8c72e32bdd55,1,0,6f7c6c31-206b-4010-bdad-1ad2e304f154,6f7c6c31-206b-4010-bdad-1ad2e304f154,1,0,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,1,0,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,1,0,b4629308-42de-4ce8-8591-cf0c2399a9a2,b4629308-42de-4ce8-8591-cf0c2399a9a2,1,0,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,1,0,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,1,0,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,1,0,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1,0,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,1,0,b93b8760-6200-40ee-8bdc-875ba80a6155,b93b8760-6200-40ee-8bdc-875ba80a6155,1,0,e8b248d9-9049-456a-9c7d-7a0462cc67ab,e8b248d9-9049-456a-9c7d-7a0462cc67ab,1,0,d4562287-440d-4462-9de2-7097ccbf3764,d4562287-440d-4462-9de2-7097ccbf3764,1,0,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,1,0,ec797c75-02c5-4cf5-9dd4-26cd46c99519,ec797c75-02c5-4cf5-9dd4-26cd46c99519,1,0,6fccdf59-fc99-4a2b-a144-fffe438a147c,6fccdf59-fc99-4a2b-a144-fffe438a147c,1,0,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,1,0,da9b32e6-5b93-45a6-84b2-238d57541e18,da9b32e6-5b93-45a6-84b2-238d57541e18,1,0,e43d69c8-b284-47da-b236-611bc94a15b6,e43d69c8-b284-47da-b236-611bc94a15b6,1,0,31eeaa05-6c49-41fe-b840-1edbad4ccac7,31eeaa05-6c49-41fe-b840-1edbad4ccac7,1,0,842c8662-8f39-405e-9665-cbdabc116159,842c8662-8f39-405e-9665-cbdabc116159,1,0,fca4b033-02c4-4d61-9e51-87783c3cef1a,fca4b033-02c4-4d61-9e51-87783c3cef1a,1,0,396ef757-d7f6-411f-8c4c-1acb1106a009,396ef757-d7f6-411f-8c4c-1acb1106a009,1,0,cb8da2f3-f8bb-4736-8381-7c153670e3e2,cb8da2f3-f8bb-4736-8381-7c153670e3e2,1,0,9aecf4f5-46ed-4d1c-a584-cd028e467895,9aecf4f5-46ed-4d1c-a584-cd028e467895,1,0,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,1,0,a1f10624-22e9-4a04-b370-fd085bdd0f67,a1f10624-22e9-4a04-b370-fd085bdd0f67,1,0,3cffb795-2a28-4beb-92f4-5813f5994022,3cffb795-2a28-4beb-92f4-5813f5994022,1,0,3323ca68-1382-4710-a933-23fc56588935,3323ca68-1382-4710-a933-23fc56588935,1,0,d6b12775-3255-42b8-88b2-62684f873e7d,d6b12775-3255-42b8-88b2-62684f873e7d,1,0,cc23d903-ccc5-42f4-862f-5e7278c4e346,cc23d903-ccc5-42f4-862f-5e7278c4e346,1,0,98f033e0-fa40-46e0-b51a-87a066749a35,98f033e0-fa40-46e0-b51a-87a066749a35,1,0,c53df2d1-4564-47a7-b66e-6a23ba28270e,c53df2d1-4564-47a7-b66e-6a23ba28270e,1,0,e8b4cb2d-1180-4101-954a-4cb5464f198c,e8b4cb2d-1180-4101-954a-4cb5464f198c,1,0,f765c4ba-c677-42ac-8d0c-43bb485405b9,f765c4ba-c677-42ac-8d0c-43bb485405b9,1,0,83192b3e-e7a9-4595-8887-24cda84457a9,83192b3e-e7a9-4595-8887-24cda84457a9,1,0,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,1,0,c8a4c5da-bc88-4f6e-9787-1c22c2f41be7,c8a4c5da-bc88-4f6e-9787-1c22c2f41be7,1,0,08eeb8f1-944f-4450-83f6-ef20aaab7d86,08eeb8f1-944f-4450-83f6-ef20aaab7d86,1,0,8d77dd4a-e646-4105-8dcf-8ce8fc3da0b4,8d77dd4a-e646-4105-8dcf-8ce8fc3da0b4,1,0,2fd12dba-5311-4f31-949c-f6b15decc0cc,2fd12dba-5311-4f31-949c-f6b15decc0cc,1,0,d7cf3981-cf63-4a21-868b-8175a7704a8f,d7cf3981-cf63-4a21-868b-8175a7704a8f,1,0,35895e12-52b6-49a1-acdf-6d828a948af0,35895e12-52b6-49a1-acdf-6d828a948af0,1,0,0ae93712-74e8-41c7-8f2d-4dfc8983697d,0ae93712-74e8-41c7-8f2d-4dfc8983697d,1,0,060b6f18-538c-4ea1-9748-00efe0b1ab57,060b6f18-538c-4ea1-9748-00efe0b1ab57,1,0,307b6821-fd82-4a1c-9fdb-a26293d4f713,307b6821-fd82-4a1c-9fdb-a26293d4f713,1,0,a952960b-be1b-4ec4-bd76-80915065a60b,a952960b-be1b-4ec4-bd76-80915065a60b,1,0,64f548c8-c1fc-434e-b3ee-5be367ead1db,64f548c8-c1fc-434e-b3ee-5be367ead1db,1,0,9e4dfdfa-ec05-4c9e-89bd-fc24f60f2678,9e4dfdfa-ec05-4c9e-89bd-fc24f60f2678,1,0,ede5b7c8-42cd-4f79-90d2-b518e96d6b26,ede5b7c8-42cd-4f79-90d2-b518e96d6b26,1,0,cd592a5d-b184-4558-8a28-7079ccf28b89,cd592a5d-b184-4558-8a28-7079ccf28b89,1,0,2009c673-c1a5-45fc-8da2-a36c435085a6,2009c673-c1a5-45fc-8da2-a36c435085a6,1,0,ab7e5f9a-1dfe-4165-a540-21f45ae1d94d,ab7e5f9a-1dfe-4165-a540-21f45ae1d94d,1,0,5d16e042-3889-4851-86f1-bc43bf06ee88,5d16e042-3889-4851-86f1-bc43bf06ee88,1,0,e5a0e7c2-6186-43a3-a1c5-1f16990602a4,e5a0e7c2-6186-43a3-a1c5-1f16990602a4,1,0,3d47838b-e1aa-4acb-96bf-6de2f9be8bdb,3d47838b-e1aa-4acb-96bf-6de2f9be8bdb,1,0,e0d3efe0-a321-4790-ba5d-e549a91a3ec6,e0d3efe0-a321-4790-ba5d-e549a91a3ec6,1,0,e39ecc8a-ce81-483d-85de-b0488c8b7749,e39ecc8a-ce81-483d-85de-b0488c8b7749,1,0,8f3b124f-bf85-4307-8f0c-47be1fb5c8b0,8f3b124f-bf85-4307-8f0c-47be1fb5c8b0,1,0,e15c3525-3453-4b62-834e-7c69f9efea51,e15c3525-3453-4b62-834e-7c69f9efea51,1,0,1514eaff-faea-4d82-9465-d0d5292bb31d,1514eaff-faea-4d82-9465-d0d5292bb31d,1,0,6d39c6df-8cd4-47ad-9125-252b37d94575,6d39c6df-8cd4-47ad-9125-252b37d94575,1,0,739bd762-01fc-41a8-87df-844eb201962f,739bd762-01fc-41a8-87df-844eb201962f,1,0,ad73f3a3-1dad-4920-af41-bda2b947a2f7,ad73f3a3-1dad-4920-af41-bda2b947a2f7,1,0,ad7c6165-2e44-4808-a77a-526882cf5dea,ad7c6165-2e44-4808-a77a-526882cf5dea,1,0,b7e435a9-6107-4d02-a949-cff793462e31,b7e435a9-6107-4d02-a949-cff793462e31,1,0,f0cda8f5-56f5-423b-8c1c-7113433ebf25,f0cda8f5-56f5-423b-8c1c-7113433ebf25,1,0,1a220e88-428b-4d85-926d-e572bf19997c,1a220e88-428b-4d85-926d-e572bf19997c,1,0,ca0d938b-244e-421f-9fa4-320784b9f416,ca0d938b-244e-421f-9fa4-320784b9f416,1,0,a108b11d-a489-4684-84ea-d5377c7394de,a108b11d-a489-4684-84ea-d5377c7394de,1,0,289a2d84-2477-4177-a6ef-507e2cadeea2,289a2d84-2477-4177-a6ef-507e2cadeea2,1,0,757b547b-b79c-459a-a64a-eef19a09a38f,757b547b-b79c-459a-a64a-eef19a09a38f,1,0,61cd6eab-6bab-4382-986e-4c7fc44f369b,61cd6eab-6bab-4382-986e-4c7fc44f369b,1,0,950f8fd5-fefa-4bfb-97a0-38d77ae830dc,950f8fd5-fefa-4bfb-97a0-38d77ae830dc,1,0,cbbe7903-842c-470e-a2d6-7928df8f13e9,cbbe7903-842c-470e-a2d6-7928df8f13e9,1,0,e02597c4-bf45-4bb6-931d-62d2244f6c58,e02597c4-bf45-4bb6-931d-62d2244f6c58,1,0,42544966-445d-41b8-b6a0-a52c64758232,42544966-445d-41b8-b6a0-a52c64758232,1,0,c3d88576-8720-41d7-9d91-919ea45523c5,c3d88576-8720-41d7-9d91-919ea45523c5,1,0,e2c90080-4ed1-4b01-bcb7-3501018d652c,e2c90080-4ed1-4b01-bcb7-3501018d652c,1,0,f997854c-1b48-4d7e-b094-2166745a918c,f997854c-1b48-4d7e-b094-2166745a918c,1,0,16cdc2b4-9ea6-477e-b1bb-dfc8fec65a8d,16cdc2b4-9ea6-477e-b1bb-dfc8fec65a8d,1,0,9a4619e0-e76b-4607-9b1a-fcc79bdd356b,9a4619e0-e76b-4607-9b1a-fcc79bdd356b,1,0,34ce3078-9d00-402e-a9a1-0d05a43ec238,34ce3078-9d00-402e-a9a1-0d05a43ec238,1,0,799944ac-e6ef-4480-9f8e-032c95d4e3fc,799944ac-e6ef-4480-9f8e-032c95d4e3fc,1,0,da280465-d43d-4513-943d-6f91bdc8cefa,da280465-d43d-4513-943d-6f91bdc8cefa,1,0,a92d8a5c-b595-4c6c-9f1d-5e85b1c996b4,a92d8a5c-b595-4c6c-9f1d-5e85b1c996b4,1,0,bd68dd13-66bb-40ed-8f4b-0767b7063ffd,bd68dd13-66bb-40ed-8f4b-0767b7063ffd,1,0,9eea8645-1ba7-4faf-9c29-868bf99964dd,9eea8645-1ba7-4faf-9c29-868bf99964dd,1,0,e07ac651-07b9-4664-95e8-f3f5a51ea6c8,e07ac651-07b9-4664-95e8-f3f5a51ea6c8,1,0,0c44fdea-7b81-45be-87f5-d64456a9d379,0c44fdea-7b81-45be-87f5-d64456a9d379,1,0,d09d6f21-cdd0-485e-bd2c-92092a1aefef,d09d6f21-cdd0-485e-bd2c-92092a1aefef,1,0,2fc92784-d7b0-4209-ba06-e54bed2f160f,2fc92784-d7b0-4209-ba06-e54bed2f160f,1,0,e5b8ea5c-1d08-4f0a-a8f6-358b41e2e9f2,e5b8ea5c-1d08-4f0a-a8f6-358b41e2e9f2,1,0,a4e4c91c-fd95-4369-98e3-51ffba79937b,a4e4c91c-fd95-4369-98e3-51ffba79937b,1,0,d343d4e4-d07f-48c3-9db1-774b0d6c1134,d343d4e4-d07f-48c3-9db1-774b0d6c1134,1,0,14ef2331-6d9b-4cf1-90f3-7d4ac410439d,14ef2331-6d9b-4cf1-90f3-7d4ac410439d,1,0,04ab13b1-ffc2-47f5-aa0d-5850dcbd4a62,04ab13b1-ffc2-47f5-aa0d-5850dcbd4a62,1,0,968588bb-ee60-4399-955a-3ec4228d3c40,968588bb-ee60-4399-955a-3ec4228d3c40,1,0,23dbb528-7ea8-44ae-a1f2-b7608118666e,23dbb528-7ea8-44ae-a1f2-b7608118666e,1,0,b9627855-6773-4a59-b7d3-f9e2e565cd9e,b9627855-6773-4a59-b7d3-f9e2e565cd9e,1,0,ad87bd29-0ad1-4da4-ac62-38e714e0cb9f,ad87bd29-0ad1-4da4-ac62-38e714e0cb9f,1,0,283ce432-3553-4de9-94a2-ca9a590437f5,283ce432-3553-4de9-94a2-ca9a590437f5,1,0,0da019ca-1fc7-4aff-8998-3ddcccf10872,0da019ca-1fc7-4aff-8998-3ddcccf10872,1,0,7102d4fa-92f2-4fba-ad09-a33dbc71bef2,7102d4fa-92f2-4fba-ad09-a33dbc71bef2,1,0,34b0e268-497d-44d4-b822-84909d0685aa,34b0e268-497d-44d4-b822-84909d0685aa,1,0,8961a859-2203-4678-ae1f-63e2474a787a,8961a859-2203-4678-ae1f-63e2474a787a,1,0,fe63db47-3ece-4518-b6a2-0b6499f60a61,fe63db47-3ece-4518-b6a2-0b6499f60a61,1,0,654523be-93d9-4faa-9a35-ce2fede13820,654523be-93d9-4faa-9a35-ce2fede13820,1,0,671afc3e-7589-49d8-95a5-1cf195c3b2f8,671afc3e-7589-49d8-95a5-1cf195c3b2f8,1,0,47accdc7-8fa0-4996-9305-c42b6ca12df9,47accdc7-8fa0-4996-9305-c42b6ca12df9,1,0,5abc496c-5745-4220-9fdc-bac092717871,5abc496c-5745-4220-9fdc-bac092717871,1,0,256981be-18fd-4d92-91f3-6d55bbe2181b,256981be-18fd-4d92-91f3-6d55bbe2181b,1,0,d6bcf961-b863-486e-9a88-c237ae84f7c3,d6bcf961-b863-486e-9a88-c237ae84f7c3,1,0,1d75bfa4-5698-4cbc-98cb-591509fcfde8,1d75bfa4-5698-4cbc-98cb-591509fcfde8,1,0,26eb08f7-6c62-459f-b1f5-363cc40cae46,26eb08f7-6c62-459f-b1f5-363cc40cae46,1,0,cdbc7f5c-dbf9-49cd-a940-95b37bc7b734,cdbc7f5c-dbf9-49cd-a940-95b37bc7b734,1,0,7b802612-3034-4413-9ee8-60e94ebed6d6,7b802612-3034-4413-9ee8-60e94ebed6d6,1,0,59420cb5-d903-4e2c-a9e1-bc5494168daf,59420cb5-d903-4e2c-a9e1-bc5494168daf,1,0,5a88f624-7b7e-43fe-8bc4-ae85d832a855,5a88f624-7b7e-43fe-8bc4-ae85d832a855,1,0,42e39ef7-268f-4053-b4e5-4bceab17d3e4,42e39ef7-268f-4053-b4e5-4bceab17d3e4,1,0,7df36398-7752-4f51-9978-1bcb4bcdd062,7df36398-7752-4f51-9978-1bcb4bcdd062,1,0,9fd55b7f-209b-4b74-99d6-965b8f6f2df9,9fd55b7f-209b-4b74-99d6-965b8f6f2df9,1,0,f818fde9-1b06-4507-a69f-4dcb0ce8cd7a,f818fde9-1b06-4507-a69f-4dcb0ce8cd7a,1,0,a6690ef1-b16a-4d58-bc31-a8089b2c00d8,a6690ef1-b16a-4d58-bc31-a8089b2c00d8,1,0,fce03f58-7f68-4d7c-a999-687667c1f03d,fce03f58-7f68-4d7c-a999-687667c1f03d,1,0,316f94ec-81ed-4b5c-aa9d-98d2cfe1c641,316f94ec-81ed-4b5c-aa9d-98d2cfe1c641,1,0,f4885af5-6ed6-40e8-81a5-0e9537f943d7,f4885af5-6ed6-40e8-81a5-0e9537f943d7,1,0,87472d14-0d8c-4813-8a3e-2721bbb26811,87472d14-0d8c-4813-8a3e-2721bbb26811,1,0,44cf6d0a-0a5b-4ca1-b91e-af61f40fb825,44cf6d0a-0a5b-4ca1-b91e-af61f40fb825,1,0,dcdf2b25-b024-4a89-b2c4-0a2ee43ef623,dcdf2b25-b024-4a89-b2c4-0a2ee43ef623,1,0,9200527c-b6b9-4962-9440-10449583e1e3,9200527c-b6b9-4962-9440-10449583e1e3,1,0,e8faa1a9-807a-4916-b3c5-76ba2199754c,e8faa1a9-807a-4916-b3c5-76ba2199754c,1,0,99b5c632-61fe-41f5-ac00-ea530633bf28,99b5c632-61fe-41f5-ac00-ea530633bf28,1,0,a3c9c4e7-d36a-4db1-bd95-a50886c4be60,a3c9c4e7-d36a-4db1-bd95-a50886c4be60,1,0,4c53f94e-d7e8-457c-b337-59d3b3c5bf24,4c53f94e-d7e8-457c-b337-59d3b3c5bf24,1,0,bd6d7dcd-421c-402e-b6b8-f6ce6b18c140,bd6d7dcd-421c-402e-b6b8-f6ce6b18c140,1,0,485911f7-a964-450d-82da-cab020836eb2,485911f7-a964-450d-82da-cab020836eb2,1,0,484003f5-a6df-48fb-a395-d0e0ebc8cc0d,484003f5-a6df-48fb-a395-d0e0ebc8cc0d,1,0,cedd0b47-07cb-4dae-86b5-31d396b693c7,cedd0b47-07cb-4dae-86b5-31d396b693c7,1,0,8b4614aa-c769-49f4-a281-a0ffb101abf1,8b4614aa-c769-49f4-a281-a0ffb101abf1,1,0,c08391e1-c4e3-42aa-8738-061031d0cb75,c08391e1-c4e3-42aa-8738-061031d0cb75,1,0,b7a0d00f-fbf3-41fe-b72f-c17e163264f9,b7a0d00f-fbf3-41fe-b72f-c17e163264f9,1,0,bf4c6723-e586-4643-9f03-9e672afea26f,bf4c6723-e586-4643-9f03-9e672afea26f,1,0,4c3a39e3-40ee-423b-91f0-14b60e045b40,4c3a39e3-40ee-423b-91f0-14b60e045b40,1,0,23204b0b-bf77-4f7c-9945-e73ad924ebb4,23204b0b-bf77-4f7c-9945-e73ad924ebb4,1,0,dd9d3586-775b-4d5b-ab2d-78db0870ecdd,dd9d3586-775b-4d5b-ab2d-78db0870ecdd,1,0,44c610c3-9c0b-4bf0-95d6-f17100d3e98d,44c610c3-9c0b-4bf0-95d6-f17100d3e98d,1,0,a54f2d41-a05e-4878-80c6-81ca2899fa4c,a54f2d41-a05e-4878-80c6-81ca2899fa4c,1,0,23a898d9-5bcb-4744-ab6c-97b17dc98f20,23a898d9-5bcb-4744-ab6c-97b17dc98f20,1,0,50a04251-ac9c-4a21-a37f-ebc9ac3ef233,50a04251-ac9c-4a21-a37f-ebc9ac3ef233,1,0,f8f56806-ed7e-4059-a0c8-940538c14c98,f8f56806-ed7e-4059-a0c8-940538c14c98,1,0,9ff9f92b-c509-48da-82ce-15b524a895d6,9ff9f92b-c509-48da-82ce-15b524a895d6,1,0,c8bf96c8-f359-4940-8e87-3d190371d6d3,c8bf96c8-f359-4940-8e87-3d190371d6d3,1,0,477f0b81-0eb1-4de1-8cb5-38f1e0823947,477f0b81-0eb1-4de1-8cb5-38f1e0823947,1,0,d914eaa9-ce85-4df7-a545-2d411ef915b0,d914eaa9-ce85-4df7-a545-2d411ef915b0,1,0,41881344-82b7-4904-9ab8-0207d9bcd0a9,41881344-82b7-4904-9ab8-0207d9bcd0a9,1,0,21032fa5-9426-40bd-91e4-ace1e4ceb013,21032fa5-9426-40bd-91e4-ace1e4ceb013,1,0,ddfe5401-e136-4f20-aa65-aeb42a61a1f0,ddfe5401-e136-4f20-aa65-aeb42a61a1f0,1,0,27a80757-c0fd-40c7-ad24-4c819c1ba72b,27a80757-c0fd-40c7-ad24-4c819c1ba72b,1,0,c573a29f-4c39-402d-8af4-e0fff80877f8,c573a29f-4c39-402d-8af4-e0fff80877f8,1,0,7fce9e49-e558-4760-9d95-dde6ac6c1e78,7fce9e49-e558-4760-9d95-dde6ac6c1e78,1,0,e5aba4a3-6056-4ef3-827c-d74283175393,e5aba4a3-6056-4ef3-827c-d74283175393,1,0,63039e62-7314-42ff-bdc6-c251f38b3827,63039e62-7314-42ff-bdc6-c251f38b3827,1,0,8a4b7aab-b602-4581-8fa4-fab66791f701,8a4b7aab-b602-4581-8fa4-fab66791f701,1,0,7c92c579-4651-4fe3-90dc-6c9b594b76f0,7c92c579-4651-4fe3-90dc-6c9b594b76f0,1,0,a2be2d7a-cca0-460f-a915-dadfb9cd588b,a2be2d7a-cca0-460f-a915-dadfb9cd588b,1,0,35bac3e3-1329-4aa6-866f-f6fcaed8cd6e,35bac3e3-1329-4aa6-866f-f6fcaed8cd6e,1,0,ed53b24d-5338-4ae1-8659-0ea6450dc7bb,ed53b24d-5338-4ae1-8659-0ea6450dc7bb,1,0,6add2712-48e8-4b22-a7bb-7d8c808ac5fc,6add2712-48e8-4b22-a7bb-7d8c808ac5fc,1,0,1f4408f5-460e-431b-9842-bc6875ccf0ae,1f4408f5-460e-431b-9842-bc6875ccf0ae,1,0,ec09aa2d-758f-4ae8-96b7-0f05b8187dda,ec09aa2d-758f-4ae8-96b7-0f05b8187dda,1,0,7bfc6163-a62f-45e8-9112-40a5d675ba4a,7bfc6163-a62f-45e8-9112-40a5d675ba4a,1,0,542ff510-0245-4a08-80ac-a9941c66ae93,542ff510-0245-4a08-80ac-a9941c66ae93,1,0,03297623-eaa2-4db0-bf1b-ce2076faf20a,03297623-eaa2-4db0-bf1b-ce2076faf20a,1,0,3c6ef64e-c9bd-4cba-98a4-ffcc5b93b6da,3c6ef64e-c9bd-4cba-98a4-ffcc5b93b6da,1,0,700c2edd-c457-47b7-a7d3-5fb3d9078d1f,700c2edd-c457-47b7-a7d3-5fb3d9078d1f,1,0,82a3802c-b6d6-4511-bd8b-eeec003afa33,82a3802c-b6d6-4511-bd8b-eeec003afa33,1,0,8b59dec8-12b8-455f-8dfc-7c3f03b4ffa5,8b59dec8-12b8-455f-8dfc-7c3f03b4ffa5,1,0,b5eb2e12-c39c-44fa-b940-09b4dcd2817c,b5eb2e12-c39c-44fa-b940-09b4dcd2817c,1,0,5d5ffb56-e18b-4831-94f0-d7a76c2eee6f,5d5ffb56-e18b-4831-94f0-d7a76c2eee6f,1,0,590f29f4-2db1-47c6-83a0-f44d4bbe6e3e,590f29f4-2db1-47c6-83a0-f44d4bbe6e3e,1,0,a755cb43-492d-4069-9b6a-29b92ebb5b0e,a755cb43-492d-4069-9b6a-29b92ebb5b0e,1,0,2782420a-65fe-4714-bc91-732c88ba5b14,2782420a-65fe-4714-bc91-732c88ba5b14,1,0,3d170774-bd17-45a2-9d8a-4af3dbabeec4,3d170774-bd17-45a2-9d8a-4af3dbabeec4,1,0,86d09107-f511-4148-b5d9-d97e92addfde,86d09107-f511-4148-b5d9-d97e92addfde,1,0,c14c1f91-f4b9-44d6-b560-8dcdb5faf5f9,c14c1f91-f4b9-44d6-b560-8dcdb5faf5f9,1,0,55b78834-3d90-4858-a6f7-e0368b1d8c41,55b78834-3d90-4858-a6f7-e0368b1d8c41,1,0,059b9a75-f53a-4518-a48a-afc72ab9ee36,059b9a75-f53a-4518-a48a-afc72ab9ee36,1,0,bc0dcb68-bfb8-49f4-8eb4-2ca953d852bd,bc0dcb68-bfb8-49f4-8eb4-2ca953d852bd,1,0,31e95872-97c7-49e3-bd1b-8df4de07014d,31e95872-97c7-49e3-bd1b-8df4de07014d,1,0,8b9be02b-cd1f-4231-a895-6c9be26348c2,8b9be02b-cd1f-4231-a895-6c9be26348c2,1,0,c52c4b8c-6be7-460a-9b54-6cdf64e3f8fe,c52c4b8c-6be7-460a-9b54-6cdf64e3f8fe,1,0,64e03321-33a4-424d-a101-90f1e0da4c2e,64e03321-33a4-424d-a101-90f1e0da4c2e,1,0,fa4f0b33-5253-4a5f-8121-feae3e1968a6,fa4f0b33-5253-4a5f-8121-feae3e1968a6,1,0,e0d21be2-91dc-4a04-9078-49420ddddcd5,e0d21be2-91dc-4a04-9078-49420ddddcd5,1,0,56c97764-7dba-42e0-8ba0-82712aca20e9,56c97764-7dba-42e0-8ba0-82712aca20e9,1,0,03ad9b3d-8f3a-4482-a777-f6a3b3d953d6,03ad9b3d-8f3a-4482-a777-f6a3b3d953d6,1,0,3f05dcf9-be52-42e1-b5ff-dea14d97a26f,3f05dcf9-be52-42e1-b5ff-dea14d97a26f,1,0,ea868745-71fc-483c-aa6e-f242c06c673f,ea868745-71fc-483c-aa6e-f242c06c673f,1,0,7f3c6269-ea41-492f-87b7-7eaaf712762e,7f3c6269-ea41-492f-87b7-7eaaf712762e,1,0,a5d037b0-c666-4179-9d6a-5f48c4a126a8,a5d037b0-c666-4179-9d6a-5f48c4a126a8,1,0,f0850411-4dee-4f1d-baec-7d6c96b10637,f0850411-4dee-4f1d-baec-7d6c96b10637,1,0,12f95031-b81f-4802-b2f3-6f70def90db0,12f95031-b81f-4802-b2f3-6f70def90db0,1,0,5732112a-f31d-41cd-9a7f-312a27395502,5732112a-f31d-41cd-9a7f-312a27395502,1,0,bbf8342b-24f0-4d11-bb5a-4c89d5ea7766,bbf8342b-24f0-4d11-bb5a-4c89d5ea7766,1,0,691f9902-6b95-4579-a3d9-3b2b5b548776,691f9902-6b95-4579-a3d9-3b2b5b548776,1,0,06fc381d-f27a-433c-95c3-e0981e01f22b,06fc381d-f27a-433c-95c3-e0981e01f22b,1,0,f646835e-61eb-4ebd-811e-dac5e70bd1b4,f646835e-61eb-4ebd-811e-dac5e70bd1b4,1,0,61b49c4c-3021-4868-834a-9137476ae169,61b49c4c-3021-4868-834a-9137476ae169,1,0,58911911-5192-45fe-87cf-c4a222a521a1,58911911-5192-45fe-87cf-c4a222a521a1,1,0,70067937-9f27-4442-b87b-6c4576ce1b78,70067937-9f27-4442-b87b-6c4576ce1b78,1,0,115d5d06-a2fc-453e-aab5-c869b6d5850b,115d5d06-a2fc-453e-aab5-c869b6d5850b,1,0,d33ca006-d81d-4ef8-8503-7878e81c599f,d33ca006-d81d-4ef8-8503-7878e81c599f,1,0,123bb339-b95e-44c3-b1e9-482dcaa6f297,123bb339-b95e-44c3-b1e9-482dcaa6f297,1,0,f4119605-beb3-46b6-b372-ecdb74f10a33,f4119605-beb3-46b6-b372-ecdb74f10a33,1,0,d2a2e332-a52c-4277-bd19-5ea8ef198469,d2a2e332-a52c-4277-bd19-5ea8ef198469,1,0,e440c594-14bb-4a6e-af53-a4519c7d5548,e440c594-14bb-4a6e-af53-a4519c7d5548,1,0,4165bdaa-8e27-40de-bcdc-0379c34e8868,4165bdaa-8e27-40de-bcdc-0379c34e8868,1,0,a9a3fde2-99d5-4ebf-88b1-eccd9d74276e,a9a3fde2-99d5-4ebf-88b1-eccd9d74276e,1,0,e606f8eb-952a-4abb-b1ae-4211204bed84,e606f8eb-952a-4abb-b1ae-4211204bed84,1,0,7ddc3d13-fa6f-4fa9-870e-a34d5b2d9582,7ddc3d13-fa6f-4fa9-870e-a34d5b2d9582,1,0,1c2ad932-150a-4b15-b958-62eaa8a1eebc,1c2ad932-150a-4b15-b958-62eaa8a1eebc,1,0,b4deaebf-2c21-47d7-9436-10c94c94667c,b4deaebf-2c21-47d7-9436-10c94c94667c,1,0,2a12ce95-3214-4bd2-a0e6-c2af41875821,2a12ce95-3214-4bd2-a0e6-c2af41875821,1,0,bf05548c-babf-402b-b698-9a62e7c69add,bf05548c-babf-402b-b698-9a62e7c69add,1,0,f8295f29-2533-4013-981b-240f017d9f7c,f8295f29-2533-4013-981b-240f017d9f7c,1,0,538b316b-3876-4da6-8b97-ad8ef59de17d,538b316b-3876-4da6-8b97-ad8ef59de17d,1,0,f70f09fd-59e1-47b6-aaf3-cb4cc4ceaa7e,f70f09fd-59e1-47b6-aaf3-cb4cc4ceaa7e,1,0,ebc5f182-482b-4dec-9961-ce3a448abd0e,ebc5f182-482b-4dec-9961-ce3a448abd0e,1,0,83e618f5-1bf4-474a-9d65-389f1e4b16c3,83e618f5-1bf4-474a-9d65-389f1e4b16c3,1,0,1357512e-3ed3-455d-bc91-81db3b92f9fe,1357512e-3ed3-455d-bc91-81db3b92f9fe,1,0,82223d0f-41d9-45a6-9612-ae4d8408fa1b,82223d0f-41d9-45a6-9612-ae4d8408fa1b,1,0,3ee058a9-aff5-46f0-8928-8a417e7800d4,3ee058a9-aff5-46f0-8928-8a417e7800d4,1,0,c9a03f19-42bb-4e07-8ce8-1b954e431ada,c9a03f19-42bb-4e07-8ce8-1b954e431ada,1,0,ed4edc6f-048a-40d5-8f61-989895c95cf3,ed4edc6f-048a-40d5-8f61-989895c95cf3,1,0,dc17d8b6-d277-43eb-8823-71d440ae1e90,dc17d8b6-d277-43eb-8823-71d440ae1e90,1,0,c5b8bf21-5c8f-4e5b-8b85-bfac387ce99a,c5b8bf21-5c8f-4e5b-8b85-bfac387ce99a,1,0,2465986e-7519-4638-9f62-5f692bebeeac,2465986e-7519-4638-9f62-5f692bebeeac,1,0,66e24df5-f443-47c0-b0ad-97d00d6761c7,66e24df5-f443-47c0-b0ad-97d00d6761c7,1,0,d9a6706e-3dcd-4aec-b9d1-542330ba6e2e,d9a6706e-3dcd-4aec-b9d1-542330ba6e2e,1,0,7cbf0398-2bc7-4f40-9a9e-af4135c6a2d2,7cbf0398-2bc7-4f40-9a9e-af4135c6a2d2,1,0,cc770616-f6f6-4054-876c-f319b1f8c6cf,cc770616-f6f6-4054-876c-f319b1f8c6cf,1,0,3baffdec-a2cb-48c9-9c21-4fc469e81e3b,3baffdec-a2cb-48c9-9c21-4fc469e81e3b,1,0,8486e623-1a54-4ad9-ab44-591b6a559bc3,8486e623-1a54-4ad9-ab44-591b6a559bc3,1,0,dce82d28-9a7b-4d4c-af13-90f459cf4af2,dce82d28-9a7b-4d4c-af13-90f459cf4af2,1,0,cb9f2231-49bb-4b14-a124-8996628afead,cb9f2231-49bb-4b14-a124-8996628afead,1,0,6fe9a455-7fef-4a1b-8109-57eafc17e2b6,6fe9a455-7fef-4a1b-8109-57eafc17e2b6,1,0,dc1b8bce-49c5-4fd2-a597-27f1fbc98648,dc1b8bce-49c5-4fd2-a597-27f1fbc98648,1,0,ac4c6275-3c23-4a1f-b19e-c674fd685e8f,ac4c6275-3c23-4a1f-b19e-c674fd685e8f,1,0,896de79f-3c34-4436-a4e2-4dd4f45c3e20,896de79f-3c34-4436-a4e2-4dd4f45c3e20,1,0,25d118f0-bfb7-4f08-84b1-0511b0fc92e8,25d118f0-bfb7-4f08-84b1-0511b0fc92e8,1,0,e6c42b5d-57fd-42ce-a968-653620e797f6,e6c42b5d-57fd-42ce-a968-653620e797f6,1,0,724fb328-fec6-4afe-bc99-0ff0951b184b,724fb328-fec6-4afe-bc99-0ff0951b184b,1,0,7a0cdc94-9e53-4fcc-ac2f-97ad2ad939f5,7a0cdc94-9e53-4fcc-ac2f-97ad2ad939f5,1,0,f6259a3b-98f5-4649-8fd0-da0a0285f375,f6259a3b-98f5-4649-8fd0-da0a0285f375,1,0,c565bf25-c55e-4324-851a-cec497f5114a,c565bf25-c55e-4324-851a-cec497f5114a,1,0,2997e4da-d831-48e4-96e2-c29f9d077302,2997e4da-d831-48e4-96e2-c29f9d077302,1,0,30f59002-a23d-4eff-b84f-f280f11b220e,30f59002-a23d-4eff-b84f-f280f11b220e,1,0,b50994d0-23f9-4bf4-93d2-cf9bcffa6fc9,b50994d0-23f9-4bf4-93d2-cf9bcffa6fc9,1,0,5b0e250c-4d2d-4e37-ade1-593854610d3f,5b0e250c-4d2d-4e37-ade1-593854610d3f,1,0,14583452-805e-423d-be9a-e04683c7c46f,14583452-805e-423d-be9a-e04683c7c46f,1,0,148f63d5-23ad-4824-a24c-14d5a54c62d3,148f63d5-23ad-4824-a24c-14d5a54c62d3,1,0,d6cdd049-b31b-48aa-a2aa-a24b0bdf3337,d6cdd049-b31b-48aa-a2aa-a24b0bdf3337,1,0,eabfa8b7-fb65-43dd-9308-787f7cce88c9,eabfa8b7-fb65-43dd-9308-787f7cce88c9,1,0,4bf12710-aef2-43ec-b16f-9c6c9e8eb18d,4bf12710-aef2-43ec-b16f-9c6c9e8eb18d,1,0,b1e837ff-0edd-4525-b2e2-92cc7990e00e,b1e837ff-0edd-4525-b2e2-92cc7990e00e,1,0,30213cef-b2bc-4e6c-8094-74a61f28b2ed,30213cef-b2bc-4e6c-8094-74a61f28b2ed,1,0,037fd2f3-27f1-4d8f-a621-82fa5754e8c7,037fd2f3-27f1-4d8f-a621-82fa5754e8c7,1,0,8c72f824-b667-4d74-84aa-30eccfbbd2f0,8c72f824-b667-4d74-84aa-30eccfbbd2f0,1,0,ceb286e9-4e7c-49fa-a695-424073e0dffc,ceb286e9-4e7c-49fa-a695-424073e0dffc,1,0,727689c3-c0d8-496f-a47b-4f3243ad8974,727689c3-c0d8-496f-a47b-4f3243ad8974,1,0,057aadbd-f41f-4de4-95f4-9301557e6a0e,057aadbd-f41f-4de4-95f4-9301557e6a0e,1,0,ec7b492d-5d38-4f31-90e0-577ad181514e,ec7b492d-5d38-4f31-90e0-577ad181514e,1,0,f0f9cf2c-bbf9-4511-a1ab-3941c15310eb,f0f9cf2c-bbf9-4511-a1ab-3941c15310eb,1,0,da0686ce-25e2-4d2c-b152-283f5e4cf4b1,da0686ce-25e2-4d2c-b152-283f5e4cf4b1,1,0,4807629d-8421-4bd9-beb4-5b2940197958,4807629d-8421-4bd9-beb4-5b2940197958,1,0,4bad7c64-131a-42cb-9be7-d61f14f456d0,4bad7c64-131a-42cb-9be7-d61f14f456d0,1,0,d46e141b-7a10-4d65-971f-3a35f2114017,d46e141b-7a10-4d65-971f-3a35f2114017,1,0,cd6f96c7-33ee-42b1-bb81-ce7d9652337c,cd6f96c7-33ee-42b1-bb81-ce7d9652337c,1,0,766c7fb5-727e-4975-9ea1-3b0df4739620,766c7fb5-727e-4975-9ea1-3b0df4739620,1,0,ba59393c-c499-4999-91d4-b9e34d94db0e,ba59393c-c499-4999-91d4-b9e34d94db0e,1,0,626da0dd-d75b-4779-be1f-9b71d2f2d4e1,626da0dd-d75b-4779-be1f-9b71d2f2d4e1,1,0,1d4b7f71-6c72-4f41-a2ed-1f2fe2122c04,1d4b7f71-6c72-4f41-a2ed-1f2fe2122c04,1,0,fcf6a4cd-d0c9-4f83-b9b0-514baed3ccb9,fcf6a4cd-d0c9-4f83-b9b0-514baed3ccb9,1,0,3f92cffe-b4ea-45e3-b2b9-a9e316405a8c,3f92cffe-b4ea-45e3-b2b9-a9e316405a8c,1,0,e70a6eab-791f-4c70-bb92-f069c7486d1b,e70a6eab-791f-4c70-bb92-f069c7486d1b,1,0,f74f97b7-4cbf-4124-b441-d8bb5d9b1634,f74f97b7-4cbf-4124-b441-d8bb5d9b1634,1,0,a3a9a48b-f241-45b2-b93b-d34bba0a8a66,a3a9a48b-f241-45b2-b93b-d34bba0a8a66,1,0,ba5574bd-53ca-413f-a245-272f468a80fb,ba5574bd-53ca-413f-a245-272f468a80fb,1,0,772e7011-0019-4edc-b673-b7151cf4fa6c,772e7011-0019-4edc-b673-b7151cf4fa6c,1,0,21ac47fa-12c2-43e2-9b57-afdf521d3485,21ac47fa-12c2-43e2-9b57-afdf521d3485,1,0,f58bffe7-4a02-4c4e-bfed-7895177a400c,f58bffe7-4a02-4c4e-bfed-7895177a400c,1,0,fe285122-2257-4fb2-ab7e-1683c31db1c6,fe285122-2257-4fb2-ab7e-1683c31db1c6,1,0,0facc6eb-a178-45ee-a6bc-4bf085d80453,0facc6eb-a178-45ee-a6bc-4bf085d80453,1,0,f74eef36-9441-4b6f-b21c-de9643832f9f,f74eef36-9441-4b6f-b21c-de9643832f9f,1,0,8d1c44d7-52f2-4089-9d77-2f03bf051455,8d1c44d7-52f2-4089-9d77-2f03bf051455,1,0,ac2e5217-aaeb-4b6f-b063-538c84f2da06,ac2e5217-aaeb-4b6f-b063-538c84f2da06,1,0,b5e73fbe-499c-4666-a482-0ef399c97c1e,b5e73fbe-499c-4666-a482-0ef399c97c1e,1,0,a0811e0a-91b6-4c4b-a6d2-a57b9185983b,a0811e0a-91b6-4c4b-a6d2-a57b9185983b,1,0,4ac77dea-3c2b-4566-8857-ba99f7b025c9,4ac77dea-3c2b-4566-8857-ba99f7b025c9,1,0,8e87da88-9fa8-4dd8-b904-622b763239f4,8e87da88-9fa8-4dd8-b904-622b763239f4,1,0,09fec67d-6e45-428c-b858-9ae20979676c,09fec67d-6e45-428c-b858-9ae20979676c,1,0,4875a235-bcc8-47eb-83e3-a66f0f690b97,4875a235-bcc8-47eb-83e3-a66f0f690b97,1,0,58ffc4d9-d711-4b68-905c-d2ac4f78b547,58ffc4d9-d711-4b68-905c-d2ac4f78b547,1,0,114ab2a1-f7c3-4453-a6cc-4c5a23c00cb5,114ab2a1-f7c3-4453-a6cc-4c5a23c00cb5,1,0,93c347d8-66cb-406c-9ee6-b1962482893f,93c347d8-66cb-406c-9ee6-b1962482893f,1,0,94ab750f-46b4-427c-a7f2-4e94fb9b0678,94ab750f-46b4-427c-a7f2-4e94fb9b0678,1,0,397d9926-31a3-4c03-acb7-74478f9863e1,397d9926-31a3-4c03-acb7-74478f9863e1,1,0,264dd12a-b4c5-44bf-b3c0-ef9225505f76,264dd12a-b4c5-44bf-b3c0-ef9225505f76,1,0,90b8fdf3-3e42-442f-a002-6a28ad0edc99,90b8fdf3-3e42-442f-a002-6a28ad0edc99,1,0,92f35bea-50b8-4a1c-8fb2-a8c7df7a50db,92f35bea-50b8-4a1c-8fb2-a8c7df7a50db,1,0,82ba8c13-6567-4f0c-be0e-0884ce19bbcc,82ba8c13-6567-4f0c-be0e-0884ce19bbcc,1,0,f595539d-bdd1-4e7a-8279-3bb8a9344f45,f595539d-bdd1-4e7a-8279-3bb8a9344f45,1,0,697bd1de-bbef-4362-aa39-71f6008f4bd7,697bd1de-bbef-4362-aa39-71f6008f4bd7,1,0,a3e9afe9-1587-47c7-8e7b-b8df6b3a2664,a3e9afe9-1587-47c7-8e7b-b8df6b3a2664,1,0,0e31d69a-8d2c-4ad0-b3ac-93ba5afcefdf,0e31d69a-8d2c-4ad0-b3ac-93ba5afcefdf,1,0,3de28e34-3c1e-4e7f-a720-3418c8c9c496,3de28e34-3c1e-4e7f-a720-3418c8c9c496,1,0,7f2d69b4-2f87-40f4-a78c-fe4cabc2a502,7f2d69b4-2f87-40f4-a78c-fe4cabc2a502,1,0,dacb236e-42a5-47e5-b239-ff18ae48e21e,dacb236e-42a5-47e5-b239-ff18ae48e21e,1,0,5cdb6e71-fd20-461a-83db-d59ccdb5b366,5cdb6e71-fd20-461a-83db-d59ccdb5b366,1,0,388b8576-9ba4-460f-b71b-3d644663656a,388b8576-9ba4-460f-b71b-3d644663656a,1,0,d4d38827-fce6-4c39-a4b4-51c7d7edc475,d4d38827-fce6-4c39-a4b4-51c7d7edc475,1,0,2d40609d-b56f-4082-9a6f-8216817ebd24,2d40609d-b56f-4082-9a6f-8216817ebd24,1,0,b238b4b2-beaf-4b5d-a728-8aebac3bacb5,b238b4b2-beaf-4b5d-a728-8aebac3bacb5,1,0,732b19c8-4f22-4748-a796-71538e46fc2f,732b19c8-4f22-4748-a796-71538e46fc2f,1,0,9fb2169b-fc77-4a3f-a1d8-b939079d9d9d,9fb2169b-fc77-4a3f-a1d8-b939079d9d9d,1,0,3fe0ef25-ce56-435d-b343-eadfec91a636,3fe0ef25-ce56-435d-b343-eadfec91a636,1,0,74f02619-7fa8-4c6d-81d6-230156ee45f4,74f02619-7fa8-4c6d-81d6-230156ee45f4,1,0,62ef3558-5ad3-44ab-8578-1acbbfa54135,62ef3558-5ad3-44ab-8578-1acbbfa54135,1,0,a103cca0-8243-40e9-bcdd-97a1cc8a3943,a103cca0-8243-40e9-bcdd-97a1cc8a3943,1,0,c3572d8d-46ff-40bb-800c-2c07f884c219,c3572d8d-46ff-40bb-800c-2c07f884c219,1,0,80fd89d7-160d-4528-9aa0-05b8dac64b4c,80fd89d7-160d-4528-9aa0-05b8dac64b4c,1,0,4eb24fcd-85f6-4fa6-bc9f-baef3861664e,4eb24fcd-85f6-4fa6-bc9f-baef3861664e,1,0,da551cf6-4f86-4e37-8967-a84c80e1fb13,da551cf6-4f86-4e37-8967-a84c80e1fb13,1,0,5fb2c120-fd14-4e78-a35f-c8e9478b3235,5fb2c120-fd14-4e78-a35f-c8e9478b3235,1,0,9d514ce1-f9bd-4018-8107-545cdd372fbd,9d514ce1-f9bd-4018-8107-545cdd372fbd,1,0,fe6b732f-3a33-460f-9686-cffdd5f7d99b,fe6b732f-3a33-460f-9686-cffdd5f7d99b,1,0,06250212-aeb1-4cb8-8785-ea71b1dad848,06250212-aeb1-4cb8-8785-ea71b1dad848,1,0,0c068a61-e5e6-4475-96fa-b7c1d825da42,0c068a61-e5e6-4475-96fa-b7c1d825da42,1,0,1047e34d-397a-42cc-80e6-1be755bd6462,1047e34d-397a-42cc-80e6-1be755bd6462,1,0,1cd473c3-4e36-47a9-b466-73d86ec244b0,1cd473c3-4e36-47a9-b466-73d86ec244b0,1,0,c3e31dfd-b79b-49b9-9dc0-e2439bfe5ab7,c3e31dfd-b79b-49b9-9dc0-e2439bfe5ab7,1,0,b406b5f9-eeaf-43a0-8930-067554d783c9,b406b5f9-eeaf-43a0-8930-067554d783c9,1,0,47718840-2939-4e30-a72c-a20c88ac4c17,47718840-2939-4e30-a72c-a20c88ac4c17,1,0,58a38994-9fe4-4783-967d-79d1141b90f3,58a38994-9fe4-4783-967d-79d1141b90f3,1,0,6e23a4b2-f53c-41ea-9fef-8f4561b8e0cc,6e23a4b2-f53c-41ea-9fef-8f4561b8e0cc,1,0,7c2e35a8-d05d-4e52-baee-a1e13585c502,7c2e35a8-d05d-4e52-baee-a1e13585c502,1,0,5d8b60e5-d407-4d8a-b4fb-e26a36ab8180,5d8b60e5-d407-4d8a-b4fb-e26a36ab8180,1,0,ab5b0155-a4b1-47a1-ad87-12365dde20c1,ab5b0155-a4b1-47a1-ad87-12365dde20c1,1,0,f551f78a-2f05-4932-ac33-cfa1b077f46f,f551f78a-2f05-4932-ac33-cfa1b077f46f,1,0,a96091a7-d3a5-4893-8440-f360231bf468,a96091a7-d3a5-4893-8440-f360231bf468,1,0,9ce6eef0-5280-4374-9714-474ac571e4e2,9ce6eef0-5280-4374-9714-474ac571e4e2,1,0,aeb54e92-a1d0-46a1-b4cb-87d3c29fa30b,aeb54e92-a1d0-46a1-b4cb-87d3c29fa30b,1,0,8395bfb2-3cf4-4bec-b19b-eb6dd3aa7a39,8395bfb2-3cf4-4bec-b19b-eb6dd3aa7a39,1,0,672c4741-6d7b-4d3e-baa7-389bef0625d7,672c4741-6d7b-4d3e-baa7-389bef0625d7,1,0,04398ec0-1c13-43f8-8f5d-7b7619592a4d,04398ec0-1c13-43f8-8f5d-7b7619592a4d,1,0,ce463861-92df-47f2-bd0f-4a2dbf72aacc,ce463861-92df-47f2-bd0f-4a2dbf72aacc,1,0,eca79a64-3d00-4178-b4eb-cf5468622c96,eca79a64-3d00-4178-b4eb-cf5468622c96,1,0,1487d68c-7a2f-48cf-8c80-4074072ed52c,1487d68c-7a2f-48cf-8c80-4074072ed52c,1,0,6ed8c74c-6b6e-4ed1-95ff-a733f618b213,6ed8c74c-6b6e-4ed1-95ff-a733f618b213,1,0,d97c6536-fd62-4c9a-b83e-490a29a0721b,d97c6536-fd62-4c9a-b83e-490a29a0721b,1,0,60cd8bc4-6a5d-4d36-83d0-76a8477eda6a,60cd8bc4-6a5d-4d36-83d0-76a8477eda6a,1,0,6dc4c216-e49f-4833-b45f-6060b67995ef,6dc4c216-e49f-4833-b45f-6060b67995ef,1,0,4655fa12-9169-4d08-bdab-9b3174d0b223,4655fa12-9169-4d08-bdab-9b3174d0b223,1,0,6c07ddfb-8823-4953-9905-9550b847dc3f,6c07ddfb-8823-4953-9905-9550b847dc3f,1,0,2362a8d5-dca2-4527-acc0-63782377f28a,2362a8d5-dca2-4527-acc0-63782377f28a,1,0,dfd6d85c-a734-4458-83b0-87b5949f9c68,dfd6d85c-a734-4458-83b0-87b5949f9c68,1,0,4e3b0b9f-45b7-48a8-86c6-cc14a921aa78,4e3b0b9f-45b7-48a8-86c6-cc14a921aa78,1,0,79b6ecf5-8a6b-44a4-9587-5f8764463228,79b6ecf5-8a6b-44a4-9587-5f8764463228,1,0,cd49148c-e385-4b75-a758-a93196e73dba,cd49148c-e385-4b75-a758-a93196e73dba,1,0,ece15c4e-4a4b-421b-9f00-10f698da476b,ece15c4e-4a4b-421b-9f00-10f698da476b,1,0,6cb136cd-dc5c-4d85-8a0d-70b9f8bf70d5,6cb136cd-dc5c-4d85-8a0d-70b9f8bf70d5,1,0,300ecdd6-144f-48c8-9fd4-6166f1de1047,300ecdd6-144f-48c8-9fd4-6166f1de1047,1,0,b6bbfb59-8249-47af-9394-be262f118811,b6bbfb59-8249-47af-9394-be262f118811,1,0,15dab650-f7ed-42bc-8ca3-c104c3e68ce4,15dab650-f7ed-42bc-8ca3-c104c3e68ce4,1,0,fb63d488-fb91-4d08-8f8c-f4836538216f,fb63d488-fb91-4d08-8f8c-f4836538216f,1,0,b8be6c09-6880-45d3-a2d1-06ad72d069c9,b8be6c09-6880-45d3-a2d1-06ad72d069c9,1,0,3c1b10c7-3667-43f0-ac03-8cdaa84cb177,3c1b10c7-3667-43f0-ac03-8cdaa84cb177,1,0,148dd521-8754-451b-803b-cbee7c3d3965,148dd521-8754-451b-803b-cbee7c3d3965,1,0,38bc48c7-3938-47be-be3f-844f19561301,38bc48c7-3938-47be-be3f-844f19561301,1,0,4bdd09d5-6bc9-421f-99f0-ae905340f0d4,4bdd09d5-6bc9-421f-99f0-ae905340f0d4,1,0,147038fb-6154-41f3-aad6-547db27d1e43,147038fb-6154-41f3-aad6-547db27d1e43,1,0,832fa9d3-deab-4c57-b6e2-dee5d24d6100,832fa9d3-deab-4c57-b6e2-dee5d24d6100,1,0,dd4270ef-6b4c-491e-8871-959dbec14c53,dd4270ef-6b4c-491e-8871-959dbec14c53,1,0,c2b115d3-04f8-43c8-aed9-c61280b8cc3b,c2b115d3-04f8-43c8-aed9-c61280b8cc3b,1,0,8ccd9be8-ef26-49b9-8cee-03ae4e500386,8ccd9be8-ef26-49b9-8cee-03ae4e500386,1,0,ddca925c-fdcd-40ce-a504-4fca1758de3f,ddca925c-fdcd-40ce-a504-4fca1758de3f,1,0,f64de21f-5a7c-4a1a-a929-07fc53049f6c,f64de21f-5a7c-4a1a-a929-07fc53049f6c,1,0,470cdf43-07f4-46d5-aab2-d41f1e5da3cd,470cdf43-07f4-46d5-aab2-d41f1e5da3cd,1,0,ea653eca-f96a-447d-8b09-7a7cb6929ed6,ea653eca-f96a-447d-8b09-7a7cb6929ed6,1,0,ea07cd11-418c-4e4f-be9f-c160ee8a64e8,ea07cd11-418c-4e4f-be9f-c160ee8a64e8,1,0,5efc4bc4-b711-4620-8d2e-9d947c6cc141,5efc4bc4-b711-4620-8d2e-9d947c6cc141,1,0,ede6a379-b0e5-4b8d-a454-779c0fd8b0b3,ede6a379-b0e5-4b8d-a454-779c0fd8b0b3,1,0,1d8d0eed-caaa-494c-aeea-0df5846fc97a,1d8d0eed-caaa-494c-aeea-0df5846fc97a,1,0,6de9dab4-ee34-4584-a2e7-7a29c86794b0,6de9dab4-ee34-4584-a2e7-7a29c86794b0,1,0,ae52e48c-20ec-43cd-a9a5-b1753558e1d2,ae52e48c-20ec-43cd-a9a5-b1753558e1d2,1,0,5e08154e-bd8b-4e61-8a6c-b5b500f12b99,5e08154e-bd8b-4e61-8a6c-b5b500f12b99,1,0,39af0f4c-0f0d-4e9a-aa63-d0eee3985b4e,39af0f4c-0f0d-4e9a-aa63-d0eee3985b4e,1,0,2b72fe1c-afe1-4905-8db2-2bb1baca6295,2b72fe1c-afe1-4905-8db2-2bb1baca6295,1,0,aa8c4a71-3276-4b83-8be2-3528129e58b3,aa8c4a71-3276-4b83-8be2-3528129e58b3,1,0,4bc4c6db-0ef8-405f-8875-b4cb1540aeb5,4bc4c6db-0ef8-405f-8875-b4cb1540aeb5,1,0,dbd8391c-a174-43d6-a8db-d9ab76b4edbe,dbd8391c-a174-43d6-a8db-d9ab76b4edbe,1,0,e9a2441e-faf9-4158-acc7-b1a6178ae0f3,e9a2441e-faf9-4158-acc7-b1a6178ae0f3,1,0,ce5f5470-b704-4f55-8dc8-17cf2c2b367a,ce5f5470-b704-4f55-8dc8-17cf2c2b367a,1,0,0072986b-0463-4a39-9851-f9adeda99716,0072986b-0463-4a39-9851-f9adeda99716,1,0,fa44433b-1c44-45a0-9487-47aa092442cf,fa44433b-1c44-45a0-9487-47aa092442cf,1,0,041cecfd-cef2-45d9-90e8-afe0d97d2d95,041cecfd-cef2-45d9-90e8-afe0d97d2d95,1,0,0d4a26fb-7176-43f2-8767-d3e227c7306a,0d4a26fb-7176-43f2-8767-d3e227c7306a,1,0,7e4222fd-fb98-4ae5-9d98-d41c3d572a0c,7e4222fd-fb98-4ae5-9d98-d41c3d572a0c,1,0,d9d14a24-c023-4b69-ad57-30d1474e1232,d9d14a24-c023-4b69-ad57-30d1474e1232,1,0,b6e98aee-4936-491d-8c67-8490e1af2e34,b6e98aee-4936-491d-8c67-8490e1af2e34,1,0,b292eb46-df87-43c0-9a37-93c5a22af252,b292eb46-df87-43c0-9a37-93c5a22af252,1,0,0943dd00-1653-4760-a9fe-ebc083ffa660,0943dd00-1653-4760-a9fe-ebc083ffa660,1,0,4fb8564e-2338-4c23-84a4-31f768047ced,4fb8564e-2338-4c23-84a4-31f768047ced,1,0,6179c7bf-08d6-4600-8cdc-ea6d4187bd55,6179c7bf-08d6-4600-8cdc-ea6d4187bd55,1,0,f93c9a7f-0249-421e-b3d0-55f02d130017,f93c9a7f-0249-421e-b3d0-55f02d130017,1,0,062c507a-9d35-4eb5-bb91-d106a535a503,062c507a-9d35-4eb5-bb91-d106a535a503,1,0,ea1284f2-33f1-4e3d-b009-1ffad3aaf300,ea1284f2-33f1-4e3d-b009-1ffad3aaf300,1,0,fd317d96-380e-4ee7-a25b-401e8521cc7a,fd317d96-380e-4ee7-a25b-401e8521cc7a,1,0,3b380a63-9232-42c2-bfa2-e8fc89448bbd,3b380a63-9232-42c2-bfa2-e8fc89448bbd,1,0,e18b4527-8727-4a10-9e99-a80012debe6c,e18b4527-8727-4a10-9e99-a80012debe6c,1,0,1ed910db-e434-4efd-9b12-c25353a31d5a,1ed910db-e434-4efd-9b12-c25353a31d5a,1,0,10556a26-ea4b-46b4-84d1-175eb13b333f,10556a26-ea4b-46b4-84d1-175eb13b333f,1,0,f1e600b0-55ed-4611-b147-f04d5621796b,f1e600b0-55ed-4611-b147-f04d5621796b,1,0,e3b84128-95e1-45df-84db-5e1791779543,e3b84128-95e1-45df-84db-5e1791779543,1,0,76702e9e-fa7a-4b98-befa-f9b37db2dae0,76702e9e-fa7a-4b98-befa-f9b37db2dae0,1,0,101a4eb3-cdda-47af-8c69-615a6920347a,101a4eb3-cdda-47af-8c69-615a6920347a,1,0,cf19f220-f6d4-4c9e-b5d5-9d94234f0a2c,cf19f220-f6d4-4c9e-b5d5-9d94234f0a2c,1,0,e9d95895-8708-4035-89ad-72573b870491,e9d95895-8708-4035-89ad-72573b870491,1,0,f410a5db-8698-44ca-9ff6-2c530e1f5c2a,f410a5db-8698-44ca-9ff6-2c530e1f5c2a,1,0,f79bada2-838f-4e4f-a017-935cf671a70c,f79bada2-838f-4e4f-a017-935cf671a70c,1,0,312118ff-a2a4-479c-964a-5250cca0cd20,312118ff-a2a4-479c-964a-5250cca0cd20,1,0,f8d32d21-ea2f-42bb-a785-9bd3cf754cd9,f8d32d21-ea2f-42bb-a785-9bd3cf754cd9,1,0,3f3a0b1b-04ce-47c1-928d-5e3483e9fd73,3f3a0b1b-04ce-47c1-928d-5e3483e9fd73,1,0,8a310493-c06f-46db-b2b5-14d6ed203312,8a310493-c06f-46db-b2b5-14d6ed203312,1,0,caf8f0e8-7a2c-498b-9b74-ed6b87cce670,caf8f0e8-7a2c-498b-9b74-ed6b87cce670,1,0,b68ec95b-64f3-4a2b-9683-231d50f01eeb,b68ec95b-64f3-4a2b-9683-231d50f01eeb,1,0,89318397-b3a6-4468-985b-ed5cb8ab5cdb,89318397-b3a6-4468-985b-ed5cb8ab5cdb,1,0,5e5b0ad7-ef73-4a73-baf5-360a9244a1cc,5e5b0ad7-ef73-4a73-baf5-360a9244a1cc,1,0,4a008342-f72f-4ca1-bad1-64b59b509911,4a008342-f72f-4ca1-bad1-64b59b509911,1,0,4436b2cf-2d71-401f-99fd-012ff0c91fbd,4436b2cf-2d71-401f-99fd-012ff0c91fbd,1,0,cefa1723-a4d4-44c4-bd57-ffa713f9306c,cefa1723-a4d4-44c4-bd57-ffa713f9306c,1,0,5396be45-d7c0-43df-aed4-cad062a02b11,5396be45-d7c0-43df-aed4-cad062a02b11,1,0,017e3da8-e48e-488b-9bbf-4fef1a4f3417,017e3da8-e48e-488b-9bbf-4fef1a4f3417,1,0,4920aabf-6f53-4f91-932a-8ace24631a74,4920aabf-6f53-4f91-932a-8ace24631a74,1,0,ce7a7f72-9d7d-4240-b852-e83b4b8d944b,ce7a7f72-9d7d-4240-b852-e83b4b8d944b,1,0,7309e58d-b0d4-4e0f-a74d-68cab03fea8e,7309e58d-b0d4-4e0f-a74d-68cab03fea8e,1,0,bbec9c3d-31dd-484e-ab32-41ef845f1370,bbec9c3d-31dd-484e-ab32-41ef845f1370,1,0,8692ba41-d91d-4af0-8aba-69dd5409d593,8692ba41-d91d-4af0-8aba-69dd5409d593,1,0,a95b564a-c895-40f2-b947-ea08462bb2a0,a95b564a-c895-40f2-b947-ea08462bb2a0,1,0,ca63ca2f-703d-4317-8c5d-0650ea638f3f,ca63ca2f-703d-4317-8c5d-0650ea638f3f,1,0,aa2256c7-9847-40a5-9e49-11c508e0d45b,aa2256c7-9847-40a5-9e49-11c508e0d45b,1,0,a04493f4-508c-4047-b0e3-b7d4bde6427b,a04493f4-508c-4047-b0e3-b7d4bde6427b,1,0,418982cd-d403-47cf-a7ef-993a36104947,418982cd-d403-47cf-a7ef-993a36104947,1,0,485ebc6a-0e3e-4278-8ef1-c6194d6d5015,485ebc6a-0e3e-4278-8ef1-c6194d6d5015,1,0,816c8143-8b02-4f4a-8eb1-44c7fb36afcc,816c8143-8b02-4f4a-8eb1-44c7fb36afcc,1,0,35eea3b8-d017-442a-b5a0-a1571165b9a9,35eea3b8-d017-442a-b5a0-a1571165b9a9,1,0,7e84901c-cb7f-437c-a135-0902cd47acb6,7e84901c-cb7f-437c-a135-0902cd47acb6,1,0,da2b47f5-4109-4f72-a4a5-70be24a6881f,da2b47f5-4109-4f72-a4a5-70be24a6881f,1,0,f0152598-ffa3-4eb7-811f-906e569373e6,f0152598-ffa3-4eb7-811f-906e569373e6,1,0,849f034e-85dc-4515-aae6-240c1e0d46d9,849f034e-85dc-4515-aae6-240c1e0d46d9,1,0,de4d37c9-b278-4c0c-bc10-1b63ecd72947,de4d37c9-b278-4c0c-bc10-1b63ecd72947,1,0,1c7e9baa-7728-4afd-829a-806cee13ecdb,1c7e9baa-7728-4afd-829a-806cee13ecdb,1,0,38b48750-1411-493b-b18e-42d39312aad8,38b48750-1411-493b-b18e-42d39312aad8,1,0,5d75aae8-9d9c-4a47-b8c0-2ce56431fe53,5d75aae8-9d9c-4a47-b8c0-2ce56431fe53,1,0,5a741cf6-8160-4409-9396-2e6d1e67e6fa,5a741cf6-8160-4409-9396-2e6d1e67e6fa,1,0,8242daae-181a-47df-b28e-c1de3fce0359,8242daae-181a-47df-b28e-c1de3fce0359,1,0,5fbea8c7-48e3-4ed0-a8d0-cf942b37a166,5fbea8c7-48e3-4ed0-a8d0-cf942b37a166,1,0,d85ba2d1-63e9-4680-bd88-6c0c4dba5d0f,d85ba2d1-63e9-4680-bd88-6c0c4dba5d0f,1,0,5cc3a29d-aa98-42bf-9800-f584229c8e46,5cc3a29d-aa98-42bf-9800-f584229c8e46,1,0,db82191f-77bd-44da-8b33-86f01018e25a,db82191f-77bd-44da-8b33-86f01018e25a,1,0,acfa1919-07ce-4464-8552-6b104e284dca,acfa1919-07ce-4464-8552-6b104e284dca,1,0,cd74d617-8ebe-4a7d-b011-38c98d856d8c,cd74d617-8ebe-4a7d-b011-38c98d856d8c,1,0,f4cff4ff-68e9-4072-971e-1b359d3aa980,f4cff4ff-68e9-4072-971e-1b359d3aa980,1,0,f9a5bd40-7c56-4ced-bddb-a66c1fc31b81,f9a5bd40-7c56-4ced-bddb-a66c1fc31b81,1,0,fdb012c9-583a-42af-95da-070e75a58078,fdb012c9-583a-42af-95da-070e75a58078,1,0,40a52f83-f0e2-470d-9c17-7fdc8cc646b7,40a52f83-f0e2-470d-9c17-7fdc8cc646b7,1,0,7d069b11-cddd-463d-97be-3cbeaaf0954c,7d069b11-cddd-463d-97be-3cbeaaf0954c,1,0,8c5fae4c-b5b6-4e05-9453-4ac5de07c54c,8c5fae4c-b5b6-4e05-9453-4ac5de07c54c,1,0,7531fb7c-a4ae-42df-b8e5-d8bfcb66be52,7531fb7c-a4ae-42df-b8e5-d8bfcb66be52,1,0,d1b950b0-dd66-49f9-998e-3ae5e820ae7f,d1b950b0-dd66-49f9-998e-3ae5e820ae7f,1,0,57e39881-cbf9-4cac-9ed0-bf4a6ea667ee,57e39881-cbf9-4cac-9ed0-bf4a6ea667ee,1,0,b9004626-915c-44c8-9cb7-25e5b627ee83,b9004626-915c-44c8-9cb7-25e5b627ee83,1,0,63c6cfad-124d-491a-829d-b298463c95e6,63c6cfad-124d-491a-829d-b298463c95e6,1,0,737404de-5b9d-4445-81c5-2c5b50b36846,737404de-5b9d-4445-81c5-2c5b50b36846,1,0,1c1a5bf8-bbe6-4a69-973e-11445175dac2,1c1a5bf8-bbe6-4a69-973e-11445175dac2,1,0,f11ffcfd-3588-4785-b222-cebe80455303,f11ffcfd-3588-4785-b222-cebe80455303,1,0,789a2027-8601-434c-bf47-37696a3966ad,789a2027-8601-434c-bf47-37696a3966ad,1,0,5d216c28-0724-4e7d-86cf-b6f75e7e28b7,5d216c28-0724-4e7d-86cf-b6f75e7e28b7,1,0,bfdc6346-db5b-427f-acca-9b48db8fefd0,bfdc6346-db5b-427f-acca-9b48db8fefd0,1,0,1c3f258c-345e-47f6-9e29-98b1222fb348,1c3f258c-345e-47f6-9e29-98b1222fb348,1,0,dfafcdf3-cdeb-4822-9f41-a730d9d3fb24,dfafcdf3-cdeb-4822-9f41-a730d9d3fb24,1,0,4c3085e1-2f86-4af4-a392-ab45e30a7152,4c3085e1-2f86-4af4-a392-ab45e30a7152,1,0,35c938f4-065f-47f5-a75b-637ed0080725,35c938f4-065f-47f5-a75b-637ed0080725,1,0,e14c0841-226c-4c79-bec9-cfc8d2c3a160,e14c0841-226c-4c79-bec9-cfc8d2c3a160,1,0,73e4bce2-df4a-4f60-a369-55f588a46bd1,73e4bce2-df4a-4f60-a369-55f588a46bd1,1,0,6f3c5b90-b030-4267-a973-33d12c2c7680,6f3c5b90-b030-4267-a973-33d12c2c7680,1,0,1ff8210b-26c5-4429-b580-7c6ec7c9b63a,1ff8210b-26c5-4429-b580-7c6ec7c9b63a,1,0,c6af8b0f-3767-4198-88e2-f5763cb0294a,c6af8b0f-3767-4198-88e2-f5763cb0294a,1,0,b107a4a8-0db8-44f4-93f7-9f231e850398,b107a4a8-0db8-44f4-93f7-9f231e850398,1,0,88b879b7-1bb3-4478-b569-35bdb5c56939,88b879b7-1bb3-4478-b569-35bdb5c56939,1,0,7a62d031-c340-4b1e-90af-fff697a2e979,7a62d031-c340-4b1e-90af-fff697a2e979,1,0,18bf6916-83cc-41e5-a35b-1489450ae632,18bf6916-83cc-41e5-a35b-1489450ae632,1,0,ebab97cf-5335-4648-9845-8ca41f79fb49,ebab97cf-5335-4648-9845-8ca41f79fb49,1,0,bb29fa44-6772-4426-a0b8-422115e14288,bb29fa44-6772-4426-a0b8-422115e14288,1,0,904e1209-91d8-49b1-b291-364ef728cbbf,904e1209-91d8-49b1-b291-364ef728cbbf,1,0,1198f2ee-b8a8-456d-9461-61bc5d42c7a1,1198f2ee-b8a8-456d-9461-61bc5d42c7a1,1,0,b8ecb7f0-ef40-4d31-9ec2-a731439d3200,b8ecb7f0-ef40-4d31-9ec2-a731439d3200,1,0,e4da2959-0fb0-48fb-a5aa-e7a5589d69c3,e4da2959-0fb0-48fb-a5aa-e7a5589d69c3,1,0,b5365cb6-a4e7-479b-82f4-f4ad80fcd7c9,b5365cb6-a4e7-479b-82f4-f4ad80fcd7c9,1,0,e51ae56c-d311-46b7-8d4c-19a432f4cd16,e51ae56c-d311-46b7-8d4c-19a432f4cd16,1,0,e000d04e-37eb-4d95-a833-b0a9b10ee0b9,e000d04e-37eb-4d95-a833-b0a9b10ee0b9,1,0,40d3ed07-3b56-4c9f-8b96-d94455202ef0,40d3ed07-3b56-4c9f-8b96-d94455202ef0,1,0,23314bcd-2dd4-43f1-9fdb-ae182a48c886,23314bcd-2dd4-43f1-9fdb-ae182a48c886,1,0,c5f86fa3-4a36-4e22-8b57-7088dd250cd3,c5f86fa3-4a36-4e22-8b57-7088dd250cd3,1,0,9440a132-366f-4fc9-bd72-2544ba2b072a,9440a132-366f-4fc9-bd72-2544ba2b072a,1,0,84282afa-21f5-40db-9386-e6f741c9a06c,84282afa-21f5-40db-9386-e6f741c9a06c,1,0,5b3b3da9-8619-4fbd-b140-3528875cd179,5b3b3da9-8619-4fbd-b140-3528875cd179,1,0,99e5e866-7ac6-4916-ab66-3e2909822c56,99e5e866-7ac6-4916-ab66-3e2909822c56,1,0,03363877-2752-4a03-95f2-d73b732e0bfd,03363877-2752-4a03-95f2-d73b732e0bfd,1,0,8d9d2284-e592-44c5-93bb-247037ab6b95,8d9d2284-e592-44c5-93bb-247037ab6b95,1,0,0b0d2b7c-d52e-4163-83cf-a7e86bb47c47,0b0d2b7c-d52e-4163-83cf-a7e86bb47c47,1,0,78051e10-74ab-44be-adca-e4c93824a386,78051e10-74ab-44be-adca-e4c93824a386,1,0,73629419-83d8-4727-88a9-76c851d104c9,73629419-83d8-4727-88a9-76c851d104c9,1,0,cadb54f0-dcff-4f96-983e-a309fd72f330,cadb54f0-dcff-4f96-983e-a309fd72f330,1,0,a9c3065b-db68-4f59-9235-33f9fbfdaafd,a9c3065b-db68-4f59-9235-33f9fbfdaafd,1,0,3715cf3d-0abc-4711-8ac9-d41f0be7878f,3715cf3d-0abc-4711-8ac9-d41f0be7878f,1,0,8e8d8078-8b32-4c24-b26e-89a92bf60160,8e8d8078-8b32-4c24-b26e-89a92bf60160,1,0,f96cbb27-7619-41e0-8577-e623ef02dc58,f96cbb27-7619-41e0-8577-e623ef02dc58,1,0,ed5ff5b0-f980-4b9a-9299-eef68e3b42d5,ed5ff5b0-f980-4b9a-9299-eef68e3b42d5,1,0,d74dfd31-2016-435b-8652-15fdbca59490,d74dfd31-2016-435b-8652-15fdbca59490,1,0,ba8111a9-1d33-4615-ad0b-b3e923b2f3bd,ba8111a9-1d33-4615-ad0b-b3e923b2f3bd,1,0,27651e0e-d560-434b-a49c-f473a5b20c4d,27651e0e-d560-434b-a49c-f473a5b20c4d,1,0,dab1491b-0685-442d-b945-2bfde3f37933,dab1491b-0685-442d-b945-2bfde3f37933,1,0,ce85554b-81ba-4149-a951-d09bdc14fa16,ce85554b-81ba-4149-a951-d09bdc14fa16,1,0,23a1ef35-1469-44ea-8535-fa9c7f535cae,23a1ef35-1469-44ea-8535-fa9c7f535cae,1,0,9ff1c73e-71be-4ea6-97fb-e710d995ee62,9ff1c73e-71be-4ea6-97fb-e710d995ee62,1,0,8c7d74bf-2865-47d9-8a16-5b0db1104a3a,8c7d74bf-2865-47d9-8a16-5b0db1104a3a,1,0,2558d812-ac0a-49ba-87db-3f661209a3c4,2558d812-ac0a-49ba-87db-3f661209a3c4,1,0,20d712ef-77c1-4374-92e1-f20a3ebc7eab,20d712ef-77c1-4374-92e1-f20a3ebc7eab,1,0,65d23ce8-e326-45ee-86b0-6dcf35797201,65d23ce8-e326-45ee-86b0-6dcf35797201,1,0,a2683c3f-1b21-47d8-951d-7d30cde51efc,a2683c3f-1b21-47d8-951d-7d30cde51efc,1,0,54c77053-1728-4914-a354-73fe8853a0e1,54c77053-1728-4914-a354-73fe8853a0e1,1,0,21136691-078f-4bf7-bddd-f41416a76d86,21136691-078f-4bf7-bddd-f41416a76d86,1,0,30a121c7-c4f5-45c4-9504-9778ed85d9e3,30a121c7-c4f5-45c4-9504-9778ed85d9e3,1,0,c68e2157-2541-4f80-966a-d68ce603f131,c68e2157-2541-4f80-966a-d68ce603f131,1,0,e5dfee58-f748-48ee-81a3-7c6133f06365,e5dfee58-f748-48ee-81a3-7c6133f06365,1,0,68500931-89e0-491e-aba8-b013c9e6f8c3,68500931-89e0-491e-aba8-b013c9e6f8c3,1,0,70b79e56-bb71-4f38-93cf-94dda79d9b4c,70b79e56-bb71-4f38-93cf-94dda79d9b4c,1,0,5c4c9931-3fb0-47a8-9e4f-d552de12b355,5c4c9931-3fb0-47a8-9e4f-d552de12b355,1,0,dc1d0f97-e2f3-4e1d-b21c-411b46e39848,dc1d0f97-e2f3-4e1d-b21c-411b46e39848,1,0,ef6ccd0d-73c6-4314-9912-efa7ff27c823,ef6ccd0d-73c6-4314-9912-efa7ff27c823,1,0,2a498baf-ec2e-4dda-b568-801bb60db225,2a498baf-ec2e-4dda-b568-801bb60db225,1,0,8a32af97-cdb5-46b4-ab7b-e1509e26ecc3,8a32af97-cdb5-46b4-ab7b-e1509e26ecc3,1,0,9f59f8cd-8d61-4fbc-ae6e-32f28ce0035a,9f59f8cd-8d61-4fbc-ae6e-32f28ce0035a,1,0,35989876-16b1-4b02-9381-444a06a7a21d,35989876-16b1-4b02-9381-444a06a7a21d,1,0,f7608000-1e8a-4ca4-afb7-e04ef547b70a,f7608000-1e8a-4ca4-afb7-e04ef547b70a,1,0,f0a6de82-45ab-4153-bccf-df82fc960aa1,f0a6de82-45ab-4153-bccf-df82fc960aa1,1,0,77adf47b-6015-46fc-9e29-f1c025ea0d81,77adf47b-6015-46fc-9e29-f1c025ea0d81,1,0,26cea519-19d0-4707-be0a-1a43fde6e563,26cea519-19d0-4707-be0a-1a43fde6e563,1,0,9fb3e902-3154-4bab-9bfe-9a266dc49fa5,9fb3e902-3154-4bab-9bfe-9a266dc49fa5,1,0,60c04f0a-78a8-4c55-8844-b86906350fd1,60c04f0a-78a8-4c55-8844-b86906350fd1,1,0,851306a7-8847-4b43-8214-898bfc24b0ab,851306a7-8847-4b43-8214-898bfc24b0ab,1,0,af8d4bc9-2f0f-44d3-89ce-2593877055c8,af8d4bc9-2f0f-44d3-89ce-2593877055c8,1,0,344fb829-a1cc-4b17-8f98-2d4f93bfcd6a,344fb829-a1cc-4b17-8f98-2d4f93bfcd6a,1,0,eb35bff2-8467-48fe-bf93-ece2aa40f506,eb35bff2-8467-48fe-bf93-ece2aa40f506,1,0,68cf55da-b29e-4a65-815b-c9cdc8e5888e,68cf55da-b29e-4a65-815b-c9cdc8e5888e,1,0,a9f927ef-22a2-4d77-8648-4bb25eeaccf2,a9f927ef-22a2-4d77-8648-4bb25eeaccf2,1,0,1041ed81-c1f7-43b2-9087-914865a3076e,1041ed81-c1f7-43b2-9087-914865a3076e,1,0,5d7174d2-42b3-4e12-b705-4209dd73b53b,5d7174d2-42b3-4e12-b705-4209dd73b53b,1,0,b1b5bf08-1c57-4875-87bb-ad1fa1a3251f,b1b5bf08-1c57-4875-87bb-ad1fa1a3251f,1,0,e00dcab4-5e92-44e3-bcdf-a31dd32a195f,e00dcab4-5e92-44e3-bcdf-a31dd32a195f,1,0,5a4c6511-f8ed-40e4-a251-e28f62629cf2,5a4c6511-f8ed-40e4-a251-e28f62629cf2,1,0,cfe59dfd-a509-4f83-b926-b3ff94234a43,cfe59dfd-a509-4f83-b926-b3ff94234a43,1,0,17df1591-61b0-4204-8379-8d1f58445968,17df1591-61b0-4204-8379-8d1f58445968,1,0,9020fa9d-e7de-4574-ab65-db6651b5b610,9020fa9d-e7de-4574-ab65-db6651b5b610,1,0,fd5e72f7-3078-48eb-b01b-1800ffbd86d3,fd5e72f7-3078-48eb-b01b-1800ffbd86d3,1,0,e83ad33d-27df-4181-afd2-b7f416e6e705,e83ad33d-27df-4181-afd2-b7f416e6e705,1,0,ddeec7f4-8bd3-40af-bcac-00d18c0e6d6a,ddeec7f4-8bd3-40af-bcac-00d18c0e6d6a,1,0,f0438b0a-7916-4de4-a3a8-d43407c3295f,f0438b0a-7916-4de4-a3a8-d43407c3295f,1,0,3309648c-aae6-4684-ae8d-7ed636bc3468,3309648c-aae6-4684-ae8d-7ed636bc3468,1,0,f9aa933e-6684-48de-b802-96c8e61b1fe6,f9aa933e-6684-48de-b802-96c8e61b1fe6,1,0,9de4d430-95ec-4435-b3e8-4fc85778d517,9de4d430-95ec-4435-b3e8-4fc85778d517,1,0,205b8908-fa21-42bd-bff0-fb95e6787f15,205b8908-fa21-42bd-bff0-fb95e6787f15,1,0,4e309f26-35e8-49d9-bbd1-c7884e666dca,4e309f26-35e8-49d9-bbd1-c7884e666dca,1,0,84f05fe4-51d3-49a8-83e7-1cae2028147e,84f05fe4-51d3-49a8-83e7-1cae2028147e,1,0,8a9ab11b-5bb5-4da9-9053-8f9e8198d019,8a9ab11b-5bb5-4da9-9053-8f9e8198d019,1,0,5320abf1-b09b-4de0-9adf-4cb1da31df6f,5320abf1-b09b-4de0-9adf-4cb1da31df6f,1,0,3916ddbd-9023-42a4-849e-9cda6e591408,3916ddbd-9023-42a4-849e-9cda6e591408,1,0,5e9e42c5-dcbc-422f-acce-4f11a63dbb85,5e9e42c5-dcbc-422f-acce-4f11a63dbb85,1,0,6903ffe4-42c1-4708-a1b0-bb67cd3f9e4c,6903ffe4-42c1-4708-a1b0-bb67cd3f9e4c,1,0,c0e01a15-6937-4331-bdd7-2f5a68d0d3dd,c0e01a15-6937-4331-bdd7-2f5a68d0d3dd,1,0,d065c02e-9991-468a-ae32-b8c29d078d03,d065c02e-9991-468a-ae32-b8c29d078d03,1,0,c509683e-eb13-4e1a-91ed-cd6982ec5001,c509683e-eb13-4e1a-91ed-cd6982ec5001,1,0,88bf6f58-7943-42c4-bc0f-56b991590026,88bf6f58-7943-42c4-bc0f-56b991590026,1,0,f135b60e-6d28-4ba1-acd7-76090f14855d,f135b60e-6d28-4ba1-acd7-76090f14855d,1,0,96d66cdd-d40c-43a3-92ce-40aef2101b64,96d66cdd-d40c-43a3-92ce-40aef2101b64,1,0,9daa8270-4782-4d83-af03-c8d2b11057ff,9daa8270-4782-4d83-af03-c8d2b11057ff,1,0,4b8927df-e124-4bf6-9d70-6e91b4796d90,4b8927df-e124-4bf6-9d70-6e91b4796d90,1,0,871b63a2-c7a6-4343-8d8b-7dda1b0def87,871b63a2-c7a6-4343-8d8b-7dda1b0def87,1,0,52b45b3d-b01b-4aac-8a1e-e256957c39c3,52b45b3d-b01b-4aac-8a1e-e256957c39c3,1,0,fc78d8df-ab27-4544-a65c-73908b9c5425,fc78d8df-ab27-4544-a65c-73908b9c5425,1,0,f8a090d2-b2d1-4ead-a8bf-6325a7552743,f8a090d2-b2d1-4ead-a8bf-6325a7552743,1,0,84f935da-9fe5-44ea-845b-b447b8b0a6f5,84f935da-9fe5-44ea-845b-b447b8b0a6f5,1,0,33343620-673e-4aa3-9e58-c6a25f738001,33343620-673e-4aa3-9e58-c6a25f738001,1,0,8aaf780f-ed74-4f44-9598-c14180053ff9,8aaf780f-ed74-4f44-9598-c14180053ff9,1,0,dbd4d09d-f410-4453-9143-bd72da5464cc,dbd4d09d-f410-4453-9143-bd72da5464cc,1,0,c4fe10b6-d025-4736-be23-3113bd7fe7b4,c4fe10b6-d025-4736-be23-3113bd7fe7b4,1,0,65530aca-7cf2-4a52-b5be-5dcbc15a049e,65530aca-7cf2-4a52-b5be-5dcbc15a049e,1,0,15eb2c2d-305d-42c0-9aec-936b82114bdb,15eb2c2d-305d-42c0-9aec-936b82114bdb,1,0,bb99bc44-f83e-48bb-93fd-7b07ca7da6a7,bb99bc44-f83e-48bb-93fd-7b07ca7da6a7,1,0,cbca7272-2aae-4e21-b3f5-12786f085648,cbca7272-2aae-4e21-b3f5-12786f085648,1,0,7718bd0b-7b8a-4ffc-b228-f05683b5531a,7718bd0b-7b8a-4ffc-b228-f05683b5531a,1,0,38aeb32b-9e3b-4b4a-9a61-97da63cdea48,38aeb32b-9e3b-4b4a-9a61-97da63cdea48,1,0,881f53bc-a52e-4312-b09d-3d3f53ddf84b,881f53bc-a52e-4312-b09d-3d3f53ddf84b,1,0,2e36a7b3-5331-4fab-a0a3-31b42a8387fe,2e36a7b3-5331-4fab-a0a3-31b42a8387fe,1,0,e3476d0e-0ab4-4734-9261-04aef6281086,e3476d0e-0ab4-4734-9261-04aef6281086,1,0,945ae8d2-b74a-41e9-b740-c82acdd40d04,945ae8d2-b74a-41e9-b740-c82acdd40d04,1,0,29c37223-de1c-49fb-8488-77e44dd79edd,29c37223-de1c-49fb-8488-77e44dd79edd,1,0,976533bf-f162-42a1-a47e-6d681ee67b82,976533bf-f162-42a1-a47e-6d681ee67b82,1,0,19bc0dd8-9e6b-4855-bc42-b4e98443163f,19bc0dd8-9e6b-4855-bc42-b4e98443163f,1,0,a61e10af-eaba-4e7a-a641-65d77453a559,a61e10af-eaba-4e7a-a641-65d77453a559,1,0,4c8eb34e-0bb6-487a-a2ae-24083b1f6d2e,4c8eb34e-0bb6-487a-a2ae-24083b1f6d2e,1,0,276c42ca-f5e0-4bb4-9b89-a925def35cb1,276c42ca-f5e0-4bb4-9b89-a925def35cb1,1,0,41a9cabc-5667-4ca0-a798-ba0b22bd1aa0,41a9cabc-5667-4ca0-a798-ba0b22bd1aa0,1,0,1bf44c42-87c0-4f2e-846c-b04d0b7e8d7d,1bf44c42-87c0-4f2e-846c-b04d0b7e8d7d,1,0,8811ea1a-1221-47b7-9574-3f36ff15a3cf,8811ea1a-1221-47b7-9574-3f36ff15a3cf,1,0,a84891cc-e996-489a-abde-5b5af166a057,a84891cc-e996-489a-abde-5b5af166a057,1,0,1d715463-691b-4c01-ae39-57c261f2a6ad,1d715463-691b-4c01-ae39-57c261f2a6ad,1,0,4c3d007f-a62c-4fd9-beda-58dbf08ad188,4c3d007f-a62c-4fd9-beda-58dbf08ad188,1,0,c35373a9-f0b0-4ddb-a985-409ac9c64609,c35373a9-f0b0-4ddb-a985-409ac9c64609,1,0,c5b4d6e4-4c99-46cb-98cf-9a0024215a12,c5b4d6e4-4c99-46cb-98cf-9a0024215a12,1,0,c1c40916-fee5-46e3-90fc-10e7595866c9,c1c40916-fee5-46e3-90fc-10e7595866c9,1,0,19a307b1-9ef0-4fc6-bf4f-7636e9118399,19a307b1-9ef0-4fc6-bf4f-7636e9118399,1,0,666244a4-5636-4405-89dd-bbd8f4278071,666244a4-5636-4405-89dd-bbd8f4278071,1,0,8b79f0e3-9024-4073-aa6b-a42beed9b0c6,8b79f0e3-9024-4073-aa6b-a42beed9b0c6,1,0,29a627a9-debc-4074-88d0-ec3561e1ef9c,29a627a9-debc-4074-88d0-ec3561e1ef9c,1,0,5a01a002-8833-4c89-b8d6-9b63fc49d3b6,5a01a002-8833-4c89-b8d6-9b63fc49d3b6,1,0,39f5e272-9a10-40b0-8a10-92037828b206,39f5e272-9a10-40b0-8a10-92037828b206,1,0,87dad256-122b-4d7e-b249-a2c313a9cf33,87dad256-122b-4d7e-b249-a2c313a9cf33,1,0,57a030fb-ed57-4ffc-a462-c7bbd2435c3d,57a030fb-ed57-4ffc-a462-c7bbd2435c3d,1,0,f20a04a7-84fa-48e3-8ac5-28176c1fcada,f20a04a7-84fa-48e3-8ac5-28176c1fcada,1,0,b722d6e1-fd6f-4bb4-923d-01764393722d,b722d6e1-fd6f-4bb4-923d-01764393722d,1,0,ac5f945e-2d03-44fb-a8cf-5d786194cefd,ac5f945e-2d03-44fb-a8cf-5d786194cefd,1,0,698ec00f-bf75-420e-81ab-a98808daf3f7,698ec00f-bf75-420e-81ab-a98808daf3f7,1,0,f441907c-d02e-431e-baf4-1854e48a1f50,f441907c-d02e-431e-baf4-1854e48a1f50,1,0,4ad722ca-10fc-4a83-91c9-ef0012685f89,4ad722ca-10fc-4a83-91c9-ef0012685f89,1,0,783dd4ba-a597-45ba-8989-2ed5224d62bc,783dd4ba-a597-45ba-8989-2ed5224d62bc,1,0,3b033d29-0de7-49dd-90bc-f414b28426d7,3b033d29-0de7-49dd-90bc-f414b28426d7,1,0,97aaede5-d32f-4eba-b0e0-5ae5f094a8b7,97aaede5-d32f-4eba-b0e0-5ae5f094a8b7,1,0,d9e08c12-1999-41d8-b530-90187303be0a,d9e08c12-1999-41d8-b530-90187303be0a,1,0,dad9710a-73ca-4e0d-b98b-75f955d0822d,dad9710a-73ca-4e0d-b98b-75f955d0822d,1,0,d01beeab-7c42-4d5e-a2f6-f190b9f703a5,d01beeab-7c42-4d5e-a2f6-f190b9f703a5,1,0,19b9cbbb-1fcc-4492-9385-687742cb3d0b,19b9cbbb-1fcc-4492-9385-687742cb3d0b,1,0,2191939f-6f71-47c9-a3d2-57acbf7f411e,2191939f-6f71-47c9-a3d2-57acbf7f411e,1,0,247c41dd-c8dc-43dd-b348-1ba31ee92065,247c41dd-c8dc-43dd-b348-1ba31ee92065,1,0,dbad3cee-0d5c-41f6-819f-1a2b5251b62c,dbad3cee-0d5c-41f6-819f-1a2b5251b62c,1,0,da673406-078d-44c8-9d27-80ef172c4b5e,da673406-078d-44c8-9d27-80ef172c4b5e,1,0,75e77f99-b9d1-4bc0-93aa-c77a93d760d3,75e77f99-b9d1-4bc0-93aa-c77a93d760d3,1,0,a2c36563-126d-4c3a-9714-5b7a4903073b,a2c36563-126d-4c3a-9714-5b7a4903073b,1,0,2e4da82c-dddb-4462-b34f-6511cd2a8356,2e4da82c-dddb-4462-b34f-6511cd2a8356,1,0,c7da3115-3cee-4282-a2f2-4e0b5558e4fc,c7da3115-3cee-4282-a2f2-4e0b5558e4fc,1,0,2976c29f-f482-463d-8f6e-6a632fb50893,2976c29f-f482-463d-8f6e-6a632fb50893,1,0,701964a1-7762-45ee-a9a4-41dd9ce94783,701964a1-7762-45ee-a9a4-41dd9ce94783,1,0,55d1909e-f552-441f-8e14-47d2e604cf6a,55d1909e-f552-441f-8e14-47d2e604cf6a,1,0,eae627db-c52b-4e41-94d1-58db28cd0063,eae627db-c52b-4e41-94d1-58db28cd0063,1,0,cafc86e1-d7f1-4cd2-ac20-04fa0917556a,cafc86e1-d7f1-4cd2-ac20-04fa0917556a,1,0,0a646724-b49d-42cd-82e6-e800466ed127,0a646724-b49d-42cd-82e6-e800466ed127,1,0,47058e36-a281-43a5-a41d-691b3ef32b5b,47058e36-a281-43a5-a41d-691b3ef32b5b,1,0,4fc5c023-91e2-4b3e-8f61-4dfe3be78f3a,4fc5c023-91e2-4b3e-8f61-4dfe3be78f3a,1,0,646def82-bc88-4187-8be0-93938656a20f,646def82-bc88-4187-8be0-93938656a20f,1,0,e620e93c-4382-478f-a700-ad2faa67362b,e620e93c-4382-478f-a700-ad2faa67362b,1,0,a4a8693b-dc91-4762-92e6-35360c8768db,a4a8693b-dc91-4762-92e6-35360c8768db,1,0,2ae236ec-28a7-44e0-a0ba-be62fe52d817,2ae236ec-28a7-44e0-a0ba-be62fe52d817,1,0,52ae6431-afb3-4dea-b106-00e11b174ec7,52ae6431-afb3-4dea-b106-00e11b174ec7,1,0,b18bdc5f-a2b6-4b15-81c3-37b27a5a3176,b18bdc5f-a2b6-4b15-81c3-37b27a5a3176,1,0,c996916d-7f1c-4fbf-939f-3e1bafe81f7d,c996916d-7f1c-4fbf-939f-3e1bafe81f7d,1,0,528d96cc-8838-49ea-8d76-ea56747882e0,528d96cc-8838-49ea-8d76-ea56747882e0,1,0,b9166ea0-cce8-4f76-a9cb-a3d6eb4dfb95,b9166ea0-cce8-4f76-a9cb-a3d6eb4dfb95,1,0,c24f0014-fc8c-485b-9743-0a1398d02749,c24f0014-fc8c-485b-9743-0a1398d02749,1,0,8b81b415-adaf-42ca-bc89-1857d00b96b3,8b81b415-adaf-42ca-bc89-1857d00b96b3,1,0,fcb46a8a-3461-4ec2-9aa0-685aedb9dd50,fcb46a8a-3461-4ec2-9aa0-685aedb9dd50,1,0,ed137e05-1996-411d-9927-45a3d7e3ee3b,ed137e05-1996-411d-9927-45a3d7e3ee3b,1,0,bdde9030-5718-4f5e-a9e2-f641f4ce69f9,bdde9030-5718-4f5e-a9e2-f641f4ce69f9,1,0,fbebf341-9842-41e1-8e4d-490fa02065ce,fbebf341-9842-41e1-8e4d-490fa02065ce,1,0,b3e0efae-67f6-409a-93dd-750b7f860831,b3e0efae-67f6-409a-93dd-750b7f860831,1,0,067f88f6-ccd2-491e-a466-94345a1f220f,067f88f6-ccd2-491e-a466-94345a1f220f,1,0,642154b8-97da-4c4f-bf34-c1124215077d,642154b8-97da-4c4f-bf34-c1124215077d,1,0,abc10867-39ae-46bf-8bd7-90f645919235,abc10867-39ae-46bf-8bd7-90f645919235,1,0,b3396504-8ccb-43d6-9a0f-ab259ba0a542,b3396504-8ccb-43d6-9a0f-ab259ba0a542,1,0,f59f91c5-026a-4dc5-996e-0d59814a9604,f59f91c5-026a-4dc5-996e-0d59814a9604,1,0,aac9966f-e9ea-4106-97bb-6b9822939bc7,aac9966f-e9ea-4106-97bb-6b9822939bc7,1,0,a752fba8-5084-4fa2-9d0b-7074a42b1312,a752fba8-5084-4fa2-9d0b-7074a42b1312,1,0,640d7486-8abd-40aa-a244-2ed899b7225a,640d7486-8abd-40aa-a244-2ed899b7225a,1,0,58321939-f25a-456d-8dee-97e64743dc2e,58321939-f25a-456d-8dee-97e64743dc2e,1,0,416fba62-70c4-4f8c-b10b-56d47b27ca35,416fba62-70c4-4f8c-b10b-56d47b27ca35,1,0,ec48a164-bc30-4e36-a40a-a3cca07aea0d,ec48a164-bc30-4e36-a40a-a3cca07aea0d,1,0,c05f87b4-ec5f-4d14-981f-02ca8ba89863,c05f87b4-ec5f-4d14-981f-02ca8ba89863,1,0,b7736108-89bd-44eb-89c1-8a5a774058f1,b7736108-89bd-44eb-89c1-8a5a774058f1,1,0,560a5f44-e4e6-46d9-a9fe-3609842d0e3e,560a5f44-e4e6-46d9-a9fe-3609842d0e3e,1,0,98f68a75-ebf9-4c59-b6a8-b3634089ca6b,98f68a75-ebf9-4c59-b6a8-b3634089ca6b,1,0,875d1fc1-8172-4e48-8192-035882e1665d,875d1fc1-8172-4e48-8192-035882e1665d,1,0,26132b28-98cc-4690-92ad-139f91839ba2,26132b28-98cc-4690-92ad-139f91839ba2,1,0,0bd85b79-cc32-4c1d-b629-567a1bdfac56,0bd85b79-cc32-4c1d-b629-567a1bdfac56,1,0,b87ce4f9-aaa6-4a4c-af80-0bd9adc83506,b87ce4f9-aaa6-4a4c-af80-0bd9adc83506,1,0,ca81e0ea-c428-47f9-aedb-078214104a2f,ca81e0ea-c428-47f9-aedb-078214104a2f,1,0,9518d09c-6996-4439-9278-3c71d5ae8fce,9518d09c-6996-4439-9278-3c71d5ae8fce,1,0,9dd6e7d6-cd98-4928-b50c-38bdbc61c211,9dd6e7d6-cd98-4928-b50c-38bdbc61c211,1,0,5fbd9a13-012d-4c36-b72c-da3bc4157cff,5fbd9a13-012d-4c36-b72c-da3bc4157cff,1,0,1126157b-64c0-4d64-8551-f31c5ed0fd29,1126157b-64c0-4d64-8551-f31c5ed0fd29,1,0,6ae6e515-5cd4-4eca-8602-c6abe6d66276,6ae6e515-5cd4-4eca-8602-c6abe6d66276,1,0,44b8472b-0f70-49cc-8f71-9c9d3e9cfbcc,44b8472b-0f70-49cc-8f71-9c9d3e9cfbcc,1,0,b071a44e-9a34-4af3-a59a-35aa5f3a74b4,b071a44e-9a34-4af3-a59a-35aa5f3a74b4,1,0,35a28677-0653-47f9-82e1-02c4b9266fee,35a28677-0653-47f9-82e1-02c4b9266fee,1,0,2e17464f-9cef-4812-865f-4eb77ff16b6a,2e17464f-9cef-4812-865f-4eb77ff16b6a,1,0,e5ecbb1f-981d-4928-9335-22216879f7e2,e5ecbb1f-981d-4928-9335-22216879f7e2,1,0,461be12a-9f16-4826-978a-436608ca8733,461be12a-9f16-4826-978a-436608ca8733,1,0,9b143299-d300-4b6c-b667-5552fb3bdcde,9b143299-d300-4b6c-b667-5552fb3bdcde,1,0,0de070f4-d8b7-48bb-bfc9-027dd727a4ad,0de070f4-d8b7-48bb-bfc9-027dd727a4ad,1,0,74973d06-f57d-403e-945c-5cd2f4fc4869,74973d06-f57d-403e-945c-5cd2f4fc4869,1,0,259564b8-172e-4eed-9360-d561ec6dad69,259564b8-172e-4eed-9360-d561ec6dad69,1,0,91c799d7-2b3d-4d1a-87ff-221057a428c6,91c799d7-2b3d-4d1a-87ff-221057a428c6,1,0,a50fcacc-6d2d-496c-bea0-9c73cd153437,a50fcacc-6d2d-496c-bea0-9c73cd153437,1,0,a6846c5a-7cf6-4df2-a159-2fd33d18d18f,a6846c5a-7cf6-4df2-a159-2fd33d18d18f,1,0,0fb72f4b-e6f6-4b70-8ec7-fdb6d4ad928e,0fb72f4b-e6f6-4b70-8ec7-fdb6d4ad928e,1,0,a5633248-8611-4e9b-b223-2f59e7b84a65,a5633248-8611-4e9b-b223-2f59e7b84a65,1,0,6ec3463a-1e94-4de7-a8c0-b0e42f38573e,6ec3463a-1e94-4de7-a8c0-b0e42f38573e,1,0,e40b8882-737a-40c0-83b4-c35dc042f4a5,e40b8882-737a-40c0-83b4-c35dc042f4a5,1,0,d60c1e9d-1395-4293-8462-6ea2c93a0c86,d60c1e9d-1395-4293-8462-6ea2c93a0c86,1,0,a05fdefd-c0c6-4069-bb05-3fcd22819289,a05fdefd-c0c6-4069-bb05-3fcd22819289,1,0,1514f388-3c36-422f-9e23-83054934e4b3,1514f388-3c36-422f-9e23-83054934e4b3,1,0,841f4416-a85a-48f7-bae2-19865cf2979e,841f4416-a85a-48f7-bae2-19865cf2979e,1,0,8df13cd3-1b03-4c84-98e9-c771c1d5254a,8df13cd3-1b03-4c84-98e9-c771c1d5254a,1,0,a79ddc43-74f6-4997-bfc4-bdf7bc71cdd6,a79ddc43-74f6-4997-bfc4-bdf7bc71cdd6,1,0,29477058-cb8d-4fd4-b3a1-41565aeabf97,29477058-cb8d-4fd4-b3a1-41565aeabf97,1,0,5a2d5d8a-afd9-4954-9868-7c82bad00426,5a2d5d8a-afd9-4954-9868-7c82bad00426,1,0,26aea96b-20f8-4e35-b55f-4fe3602e6597,26aea96b-20f8-4e35-b55f-4fe3602e6597,1,0,a3a3a211-e361-4e41-a6f8-d731a366c163,a3a3a211-e361-4e41-a6f8-d731a366c163,1,0,c40d6fde-4d9a-4d9e-af86-42b7916e2abe,c40d6fde-4d9a-4d9e-af86-42b7916e2abe,1,0,4d5204ae-711d-4c31-8a18-280dbc9d2bf5,4d5204ae-711d-4c31-8a18-280dbc9d2bf5,1,0,ca01417c-0ffd-4e00-91e8-93cd305be82d,ca01417c-0ffd-4e00-91e8-93cd305be82d,1,0,14fcf5e5-5856-4b5f-8c3f-75eaba0f7268,14fcf5e5-5856-4b5f-8c3f-75eaba0f7268,1,0,0a0af8bf-0caa-40df-9a69-71f98ca9ff89,0a0af8bf-0caa-40df-9a69-71f98ca9ff89,1,0,6ac7db0c-18ed-4d3b-956a-5985214db474,6ac7db0c-18ed-4d3b-956a-5985214db474,1,0,267103e0-6703-4a74-bb4f-af610d7ef332,267103e0-6703-4a74-bb4f-af610d7ef332,1,0,b98ca634-25a5-4366-af04-815ba34c8bb2,b98ca634-25a5-4366-af04-815ba34c8bb2,1,0,14d69108-4d26-401a-b7ae-2c86dadf831c,14d69108-4d26-401a-b7ae-2c86dadf831c,1,0,d6251f65-d366-4bc9-a5db-42063fe03594,d6251f65-d366-4bc9-a5db-42063fe03594,1,0,22c60cbc-429f-40d9-bf8b-681b7786c41d,22c60cbc-429f-40d9-bf8b-681b7786c41d,1,0,d4e53d41-9335-4a1e-a06e-410c46de1d1c,d4e53d41-9335-4a1e-a06e-410c46de1d1c,1,0,4405bfaa-699a-497b-a15c-0302b86c834c,4405bfaa-699a-497b-a15c-0302b86c834c,1,0,3b3e7b9d-67f8-4cf2-ad1a-29d124169691,3b3e7b9d-67f8-4cf2-ad1a-29d124169691,1,0,31dd320b-06aa-4314-9914-2c2420f572a1,31dd320b-06aa-4314-9914-2c2420f572a1,1,0,56730848-3bef-4b8c-b449-fe9d09c9c374,56730848-3bef-4b8c-b449-fe9d09c9c374,1,0,43c477d2-1234-4c4a-a18a-022c0ddf2fd5,43c477d2-1234-4c4a-a18a-022c0ddf2fd5,1,0,91d8c5e4-eaec-4951-9224-16882fda08f6,91d8c5e4-eaec-4951-9224-16882fda08f6,1,0,4304ffb9-7ede-4c59-bef8-26fe3e8f0103,4304ffb9-7ede-4c59-bef8-26fe3e8f0103,1,0,4654d192-74bf-430f-abee-6f4dc431b182,4654d192-74bf-430f-abee-6f4dc431b182,1,0,1ea750ae-5ec4-43c5-b34f-fd28999d41d7,1ea750ae-5ec4-43c5-b34f-fd28999d41d7,1,0,4678c704-933a-45ef-9d41-89b8f39016bb,4678c704-933a-45ef-9d41-89b8f39016bb,1,0,8ceea1e8-42ce-469f-823a-ceffdbd6b112,8ceea1e8-42ce-469f-823a-ceffdbd6b112,1,0,80eb2a49-8c0e-4f92-b99c-7fdadca03e7b,80eb2a49-8c0e-4f92-b99c-7fdadca03e7b,1,0,3f7ee937-d853-47b7-a1f5-d821208e3531,3f7ee937-d853-47b7-a1f5-d821208e3531,1,0,086d69d6-e2fa-45cb-84b6-f8f3e2919160,086d69d6-e2fa-45cb-84b6-f8f3e2919160,1,0,6995ee71-5901-46d9-a5c1-b35d795bda20,6995ee71-5901-46d9-a5c1-b35d795bda20,1,0,e93a4293-0497-4f11-b8b9-40300104fb96,e93a4293-0497-4f11-b8b9-40300104fb96,1,0,93531e5d-5dfc-42e8-be52-2e83f37262b0,93531e5d-5dfc-42e8-be52-2e83f37262b0,1,0,61bf78c0-7004-4a74-b362-e979c7316e05,61bf78c0-7004-4a74-b362-e979c7316e05,1,0,c4351896-eff1-4e4d-8823-028d63a9d6bf,c4351896-eff1-4e4d-8823-028d63a9d6bf,1,0,475f83a2-ba5a-4072-94f8-1324b1f198a4,475f83a2-ba5a-4072-94f8-1324b1f198a4,1,0,cd7c15c1-c573-46c9-b109-339b8b54c3ee,cd7c15c1-c573-46c9-b109-339b8b54c3ee,1,0,efd89929-4db9-4c58-b3cb-a8d9a41a1df2,efd89929-4db9-4c58-b3cb-a8d9a41a1df2,1,0,deee8bde-381f-4094-8794-7a06248860dd,deee8bde-381f-4094-8794-7a06248860dd,1,0,2757ee75-4b36-4901-bff1-044708754edb,2757ee75-4b36-4901-bff1-044708754edb,1,0,0e6bab27-bf94-4732-8549-dbd9b8a5f4e9,0e6bab27-bf94-4732-8549-dbd9b8a5f4e9,1,0,774c92d6-9b9b-422a-83d7-8d42ae2a9f60,774c92d6-9b9b-422a-83d7-8d42ae2a9f60,1,0,90032ffa-f117-4a34-82f8-cc7e5a22a542,90032ffa-f117-4a34-82f8-cc7e5a22a542,1,0,71144539-6472-4727-8887-0139f6221370,71144539-6472-4727-8887-0139f6221370,1,0,bff07da4-ae19-48a9-806b-14b285d42485,bff07da4-ae19-48a9-806b-14b285d42485,1,0,659cd4f6-d18c-4d75-a7e6-7c124a63ab9a,659cd4f6-d18c-4d75-a7e6-7c124a63ab9a,1,0,b0ccc05d-8d39-4f57-8e87-6846014f92ea,b0ccc05d-8d39-4f57-8e87-6846014f92ea,1,0,49e787c9-753a-468a-b8dd-2e970d9a1fed,49e787c9-753a-468a-b8dd-2e970d9a1fed,1,0,e871dea7-1953-4511-90b0-e0957afac4c0,e871dea7-1953-4511-90b0-e0957afac4c0,1,0,64fbfed7-9dda-481b-a4f7-fe440f24ba7e,64fbfed7-9dda-481b-a4f7-fe440f24ba7e,1,0,b2835a5b-5c91-448c-9eb1-1bb1c9a5e727,b2835a5b-5c91-448c-9eb1-1bb1c9a5e727,1,0,447fb310-0588-4e0d-8f6d-5fc1f3bb1180,447fb310-0588-4e0d-8f6d-5fc1f3bb1180,1,0,d91441cf-d793-4dfa-9225-f0c16818edde,d91441cf-d793-4dfa-9225-f0c16818edde,1,0,8986c155-54be-4b1b-b31a-5c00b88bc40d,8986c155-54be-4b1b-b31a-5c00b88bc40d,1,0,40ae107d-67a8-404c-adf9-1a760bba94ff,40ae107d-67a8-404c-adf9-1a760bba94ff,1,0,42a39785-144c-4d2d-92c6-fd8b345f687b,42a39785-144c-4d2d-92c6-fd8b345f687b,1,0,f3bd841b-fb36-4462-9627-b51801e563cd,f3bd841b-fb36-4462-9627-b51801e563cd,1,0,0a23f273-5589-4a48-be3a-eee7565749aa,0a23f273-5589-4a48-be3a-eee7565749aa,1,0,494eb9d9-4a10-4e85-b511-375408f21bbe,494eb9d9-4a10-4e85-b511-375408f21bbe,1,0,3fbbca3f-d4fa-4d65-a08f-0a348b9030c6,3fbbca3f-d4fa-4d65-a08f-0a348b9030c6,1,0,a161dd07-4a6e-4d0f-b72c-702d0d3a83a3,a161dd07-4a6e-4d0f-b72c-702d0d3a83a3,1,0,7172bed5-b12b-4e83-b15d-1d95b63a6272,7172bed5-b12b-4e83-b15d-1d95b63a6272,1,0,25d75a3c-b801-4b1e-aed8-90e667f36c67,25d75a3c-b801-4b1e-aed8-90e667f36c67,1,0,addb3aa1-a9d6-4d30-b5db-7f3ce46bc1b2,addb3aa1-a9d6-4d30-b5db-7f3ce46bc1b2,1,0,63ebf7fd-d514-4fce-abc1-fb3f253d01cd,63ebf7fd-d514-4fce-abc1-fb3f253d01cd,1,0,a275802f-937a-49f4-92da-fcdd185a036d,a275802f-937a-49f4-92da-fcdd185a036d,1,0,ec6ed9cb-85a2-4303-9906-cfb4ce6500bf,ec6ed9cb-85a2-4303-9906-cfb4ce6500bf,1,0,f2dc9319-ba60-421a-8340-be3e3a291393,f2dc9319-ba60-421a-8340-be3e3a291393,1,0,bf4eb62a-bc74-4845-bad2-58a2a8302a65,bf4eb62a-bc74-4845-bad2-58a2a8302a65,1,0,b66eb190-1c16-4f20-a94f-954bcdf313b8,b66eb190-1c16-4f20-a94f-954bcdf313b8,1,0,49e21b87-beae-4640-a497-ef468da0cbbc,49e21b87-beae-4640-a497-ef468da0cbbc,1,0,bbdfeebd-cda0-4911-8f31-553d751340a7,bbdfeebd-cda0-4911-8f31-553d751340a7,1,0,dc7adfb7-41e7-4019-a18d-5d9f5d227b71,dc7adfb7-41e7-4019-a18d-5d9f5d227b71,1,0,20aad006-5b1e-4cc2-94ef-668dd002667b,20aad006-5b1e-4cc2-94ef-668dd002667b,1,0,af6af7ae-d68a-4e12-ba2c-a360ce2920a7,af6af7ae-d68a-4e12-ba2c-a360ce2920a7,1,0,b0f5bce4-2ad3-416e-9b1e-3fb23deaa040,b0f5bce4-2ad3-416e-9b1e-3fb23deaa040,1,0,2befb2e3-7354-4a01-83d6-b24262704a5e,2befb2e3-7354-4a01-83d6-b24262704a5e,1,0,5b93975e-b2a4-4102-a060-2667f5813c94,5b93975e-b2a4-4102-a060-2667f5813c94,1,0,ca75d086-cd01-4f54-b57d-1b35bcb1272a,ca75d086-cd01-4f54-b57d-1b35bcb1272a,1,0,b4a27991-2e18-4ead-80e8-f2956a7539e3,b4a27991-2e18-4ead-80e8-f2956a7539e3,1,0,ac8c40d6-be1e-4733-be2e-ae83bde4ec15,ac8c40d6-be1e-4733-be2e-ae83bde4ec15,1,0,dcdc9c65-c2d5-4531-a325-f64b3861cbab,dcdc9c65-c2d5-4531-a325-f64b3861cbab,1,0,ca542a9e-3040-419f-9a98-2a8de230b734,ca542a9e-3040-419f-9a98-2a8de230b734,1,0,c9fc5155-1df3-4872-a83d-72872baf43c4,c9fc5155-1df3-4872-a83d-72872baf43c4,1,0,9f9adb67-66bd-4c28-8319-44ae097ae1fe,9f9adb67-66bd-4c28-8319-44ae097ae1fe,1,0,0bae3704-b370-48be-b094-f18a2e62ad1b,0bae3704-b370-48be-b094-f18a2e62ad1b,1,0,e097bf94-9235-4a27-b0eb-d6387d22cd62,e097bf94-9235-4a27-b0eb-d6387d22cd62,1,0,eccded1c-f3ca-40d3-a8cd-71947bfed7b8,eccded1c-f3ca-40d3-a8cd-71947bfed7b8,1,0,4d243f2b-14d9-4e96-9707-4ead5d12e0a2,4d243f2b-14d9-4e96-9707-4ead5d12e0a2,1,0,8d2bfd40-f185-4eab-b374-872d49310eb2,8d2bfd40-f185-4eab-b374-872d49310eb2,1,0,523de426-e5a6-49e0-8144-c637f80d8ddd,523de426-e5a6-49e0-8144-c637f80d8ddd,1,0,09256328-6205-4b04-b908-3287ae8ded75,09256328-6205-4b04-b908-3287ae8ded75,1,0,05a6e161-9791-4c5b-8753-bd6370cc4cc9,05a6e161-9791-4c5b-8753-bd6370cc4cc9,1,0,6362facc-bf95-4adf-8ee7-c65f90972a1c,6362facc-bf95-4adf-8ee7-c65f90972a1c,1,0,08dbba81-68fb-49ef-8aac-9631fcfa87c6,08dbba81-68fb-49ef-8aac-9631fcfa87c6,1,0,dd7191b6-cbc0-4b0b-a51a-c27a1e1720fa,dd7191b6-cbc0-4b0b-a51a-c27a1e1720fa,1,0,8170a27d-45e9-48b1-860b-c2d9cc5961cd,8170a27d-45e9-48b1-860b-c2d9cc5961cd,1,0,f1c08fed-f3db-4f72-8a8e-7c626b8cc130,f1c08fed-f3db-4f72-8a8e-7c626b8cc130,1,0,e8c3b796-bfd8-4108-ab5f-d0f21b7bd9a6,e8c3b796-bfd8-4108-ab5f-d0f21b7bd9a6,1,0,f41d01ec-983a-4b39-9c11-a6d25d08df4f,f41d01ec-983a-4b39-9c11-a6d25d08df4f,1,0,3247e64e-b57e-4c33-8086-7ab93c5b6371,3247e64e-b57e-4c33-8086-7ab93c5b6371,1,0,e5dca369-dc9a-4332-a509-f734b8787e13,e5dca369-dc9a-4332-a509-f734b8787e13,1,0,722af623-156c-4e63-8b2a-93da760f1559,722af623-156c-4e63-8b2a-93da760f1559,1,0,5ff23123-450c-40ae-9b79-c540da53e2a0,5ff23123-450c-40ae-9b79-c540da53e2a0,1,0,639339a1-7de5-4b05-adf3-f60e7edd922c,639339a1-7de5-4b05-adf3-f60e7edd922c,1,0,dea9af9d-13c0-40d4-a9b0-1908e0a58795,dea9af9d-13c0-40d4-a9b0-1908e0a58795,1,0,9e9b8c05-787a-43c0-891d-3d9ad7e4976f,9e9b8c05-787a-43c0-891d-3d9ad7e4976f,1,0,1abeb10b-0558-4478-8f51-d0964ba3c274,1abeb10b-0558-4478-8f51-d0964ba3c274,1,0,38325a66-588a-4db0-8e0c-21d239408369,38325a66-588a-4db0-8e0c-21d239408369,1,0,7c27e885-33fd-4da2-a60d-50336c0189b0,7c27e885-33fd-4da2-a60d-50336c0189b0,1,0,0e1a45b0-d95d-415f-b954-5689610aa393,0e1a45b0-d95d-415f-b954-5689610aa393,1,0,4736b3d3-f696-4bdd-b0e3-0884ea88f623,4736b3d3-f696-4bdd-b0e3-0884ea88f623,1,0,4b849c66-6a36-4efd-815e-af4467c6f064,4b849c66-6a36-4efd-815e-af4467c6f064,1,0,f6939587-ff87-4eca-ae52-10e1bd2abfce,f6939587-ff87-4eca-ae52-10e1bd2abfce,1,0,a8e4d97f-e2da-4aa8-a221-3cbcc135f403,a8e4d97f-e2da-4aa8-a221-3cbcc135f403,1,0,f2b0eab2-e34b-42f8-9b24-5596b4c17d7f,f2b0eab2-e34b-42f8-9b24-5596b4c17d7f,1,0,3cb575a9-dc82-45e0-81f0-d651e12246da,3cb575a9-dc82-45e0-81f0-d651e12246da,1,0,01a73950-3e8f-4f56-903f-af0d9574e72e,01a73950-3e8f-4f56-903f-af0d9574e72e,1,0,14bd0844-c829-4325-aa7f-0f417bf955dc,14bd0844-c829-4325-aa7f-0f417bf955dc,1,0,7f1cd658-ca10-49c6-80ef-b8956f3269ea,7f1cd658-ca10-49c6-80ef-b8956f3269ea,1,0,b0d9086f-cef7-47a8-ad62-d85fea28ebda,b0d9086f-cef7-47a8-ad62-d85fea28ebda,1,0,49c010fc-f5cc-45f4-ba46-132e7661c3dd,49c010fc-f5cc-45f4-ba46-132e7661c3dd,1,0,3f3b592d-ca61-40c7-be1f-e5d3224a1eb3,3f3b592d-ca61-40c7-be1f-e5d3224a1eb3,1,0,2c02a558-8d12-44cf-be6b-9c399b9032e5,2c02a558-8d12-44cf-be6b-9c399b9032e5,1,0,d94d4931-7c81-4ee8-93ea-b2c54b152fa5,d94d4931-7c81-4ee8-93ea-b2c54b152fa5,1,0,c770bdd5-c7c0-4751-b31d-46c0ea1f49b7,c770bdd5-c7c0-4751-b31d-46c0ea1f49b7,1,0,6afcc089-7f15-42e8-97b5-6aad6cf2e6f9,6afcc089-7f15-42e8-97b5-6aad6cf2e6f9,1,0,cce4c615-dc29-42b3-9d3d-b277dde4a2e4,cce4c615-dc29-42b3-9d3d-b277dde4a2e4,1,0,9c267aa6-5f23-49f6-868a-3324ef2845ff,9c267aa6-5f23-49f6-868a-3324ef2845ff,1,0,495eeeee-d7bf-4063-99e2-86daa066451a,495eeeee-d7bf-4063-99e2-86daa066451a,1,0,b6184698-79e4-4c19-9440-092ccd9dabf8,b6184698-79e4-4c19-9440-092ccd9dabf8,1,0,7d01fc0c-378e-421d-ab70-6a418eed5941,7d01fc0c-378e-421d-ab70-6a418eed5941,1,0,6eeb4867-bf9d-48dc-b96b-934a0c293010,6eeb4867-bf9d-48dc-b96b-934a0c293010,1,0,c7f817ee-9f6a-454c-95a0-b279fd08055e,c7f817ee-9f6a-454c-95a0-b279fd08055e,1,0,e1803e54-ec5e-4a82-8097-5e2331820991,e1803e54-ec5e-4a82-8097-5e2331820991,1,0,259ede1f-05d3-4ece-8994-0ae3b2e89f49,259ede1f-05d3-4ece-8994-0ae3b2e89f49,1,0,f69ec1f9-826e-4eb4-b52c-3f6a3dfc3361,f69ec1f9-826e-4eb4-b52c-3f6a3dfc3361,1,0,4cbb0b91-dbdd-472f-93c5-061076b6a8d3,4cbb0b91-dbdd-472f-93c5-061076b6a8d3,1,0,8506dbe9-7066-444b-83b6-fb2d71a336e7,8506dbe9-7066-444b-83b6-fb2d71a336e7,1,0,240b4df5-0d75-4e5a-9ae8-d0bc7cc51722,240b4df5-0d75-4e5a-9ae8-d0bc7cc51722,1,0,6686d828-3129-4d44-a8a2-a64657d424cb,6686d828-3129-4d44-a8a2-a64657d424cb,1,0,90433152-f389-4d45-8ccc-3eb6c7a7e1f0,90433152-f389-4d45-8ccc-3eb6c7a7e1f0,1,0,ce235ab9-1dec-459a-9fec-498c262ece56,ce235ab9-1dec-459a-9fec-498c262ece56,1,0,9ec53d1a-ed7a-41e8-b5d0-6c2181fd63a5,9ec53d1a-ed7a-41e8-b5d0-6c2181fd63a5,1,0,97edd94a-4bf2-4ed7-b98f-677f869b0715,97edd94a-4bf2-4ed7-b98f-677f869b0715,1,0,39355e82-30a6-431e-9697-e2c42e82de83,39355e82-30a6-431e-9697-e2c42e82de83,1,0,a9ae364f-b668-4fb4-b976-f227951ffb6b,a9ae364f-b668-4fb4-b976-f227951ffb6b,1,0,edc01b03-8b01-4551-939a-f7e257892040,edc01b03-8b01-4551-939a-f7e257892040,1,0,15d09274-9508-4f64-9ea3-678c5aa50f0f,15d09274-9508-4f64-9ea3-678c5aa50f0f,1,0,4debe032-12e4-4777-b2fc-70b150f2aad1,4debe032-12e4-4777-b2fc-70b150f2aad1,1,0,37558fa2-0833-46d6-9e4f-63d4a3136870,37558fa2-0833-46d6-9e4f-63d4a3136870,1,0,d92cb614-ed09-47db-b70b-d3e533c44c6a,d92cb614-ed09-47db-b70b-d3e533c44c6a,1,0,e660c8bf-af5f-4525-a56e-68925d2b96fa,e660c8bf-af5f-4525-a56e-68925d2b96fa,1,0,2fad50a6-6a3e-4f87-ab84-907364427a63,2fad50a6-6a3e-4f87-ab84-907364427a63,1,0,9567765b-8e02-4262-89a9-5c354109cc4c,9567765b-8e02-4262-89a9-5c354109cc4c,1,0,3153b2b9-9e3e-4d6b-ab8c-5ccaac78a08a,3153b2b9-9e3e-4d6b-ab8c-5ccaac78a08a,1,0,588bd1b2-ee61-4a05-83cd-efb1b82ccb44,588bd1b2-ee61-4a05-83cd-efb1b82ccb44,1,0,1681dd7a-de80-4b8d-9657-c9702a19d653,1681dd7a-de80-4b8d-9657-c9702a19d653,1,0,10d796e9-a3d4-4ef0-87d5-8315aa12f1c8,10d796e9-a3d4-4ef0-87d5-8315aa12f1c8,1,0,fdb5b235-1978-4c2a-a03f-02341df00c3c,fdb5b235-1978-4c2a-a03f-02341df00c3c,1,0,9f593f27-8009-40c0-94d6-53f177ce55f4,9f593f27-8009-40c0-94d6-53f177ce55f4,1,0,38637f61-399a-4966-9e64-4751aecffa31,38637f61-399a-4966-9e64-4751aecffa31,1,0,0f38a18b-a36c-45fe-86c1-396634aaa5df,0f38a18b-a36c-45fe-86c1-396634aaa5df,1,0,f2b7b8d0-c0f7-46ba-907a-f8dfa76fc2da,f2b7b8d0-c0f7-46ba-907a-f8dfa76fc2da,1,0,a81c783d-2dea-4dde-9ca1-7b23d609eb22,a81c783d-2dea-4dde-9ca1-7b23d609eb22,1,0,137ec4ee-5053-47a7-8f5d-f6e63174608f,137ec4ee-5053-47a7-8f5d-f6e63174608f,1,0,820bb4b4-895b-4ccf-a350-2545bf8a2f7e,820bb4b4-895b-4ccf-a350-2545bf8a2f7e,1,0,530a3164-4ef1-4b3b-8269-13764ef4bf15,530a3164-4ef1-4b3b-8269-13764ef4bf15,1,0,6df2bb92-558c-4453-9de4-e4176e8f93dc,6df2bb92-558c-4453-9de4-e4176e8f93dc,1,0,0ce4c8a4-b20b-4550-bee3-f677e9ec64e9,0ce4c8a4-b20b-4550-bee3-f677e9ec64e9,1,0,30d5c2a6-b3cf-4ed5-ba75-850bcae932d1,30d5c2a6-b3cf-4ed5-ba75-850bcae932d1,1,0,0bf5e9c1-905a-4202-8b96-ed831b41be4b,0bf5e9c1-905a-4202-8b96-ed831b41be4b,1,0,e92ae368-0d7c-4fb7-b6d0-5ab63dc95a6a,e92ae368-0d7c-4fb7-b6d0-5ab63dc95a6a,1,0,f30c9c4b-aa6c-4b15-9ac7-888c0c0cabd9,f30c9c4b-aa6c-4b15-9ac7-888c0c0cabd9,1,0,be15e947-f671-4848-ada1-51239af73615,be15e947-f671-4848-ada1-51239af73615,1,0,3fc019d1-aec8-4835-96c5-3bbf43da0b94,3fc019d1-aec8-4835-96c5-3bbf43da0b94,1,0,5371672a-c8e0-4c12-834e-f23dd885b49a,5371672a-c8e0-4c12-834e-f23dd885b49a,1,0,d3e0dd8f-886a-4441-8f05-fd629da80f07,d3e0dd8f-886a-4441-8f05-fd629da80f07,1,0,6417d7c8-6436-4907-98eb-44cd7638f3f1,6417d7c8-6436-4907-98eb-44cd7638f3f1,1,0,ba49877b-6e30-4177-a67c-00e65aa498fb,ba49877b-6e30-4177-a67c-00e65aa498fb,1,0,25b39aeb-94c3-4199-9d56-5bd87e325bf2,25b39aeb-94c3-4199-9d56-5bd87e325bf2,1,0,b0b63551-4e83-4201-af9a-b4ab150c43a5,b0b63551-4e83-4201-af9a-b4ab150c43a5,1,0,ca85912b-87b4-481e-9184-017364b4603d,ca85912b-87b4-481e-9184-017364b4603d,1,0,2bd80198-4739-4e8f-9af1-40addc91a05b,2bd80198-4739-4e8f-9af1-40addc91a05b,1,0,572019eb-ffc4-4cfd-b4ba-c09267900c6c,572019eb-ffc4-4cfd-b4ba-c09267900c6c,1,0,bb7fad68-32d3-4e6a-be62-2c4c34c94737,bb7fad68-32d3-4e6a-be62-2c4c34c94737,1,0,da462777-f926-4308-92e5-c654da53d415,da462777-f926-4308-92e5-c654da53d415,1,0,2650db63-ca98-4a8a-8c36-165548aa5279,2650db63-ca98-4a8a-8c36-165548aa5279,1,0,a69525c7-27ff-48df-b26b-325ba580a53e,a69525c7-27ff-48df-b26b-325ba580a53e,1,0,24a7de1c-1c1f-4987-91ff-02f78f15dd9e,24a7de1c-1c1f-4987-91ff-02f78f15dd9e,1,0,33c66a15-e48e-406a-a77c-02af72ae96d5,33c66a15-e48e-406a-a77c-02af72ae96d5,1,0,ebd3dcc2-1176-4ee0-b590-ee39f85fb55b,ebd3dcc2-1176-4ee0-b590-ee39f85fb55b,1,0,3b78a9d0-7382-4115-a7dc-d06c9a1962d1,3b78a9d0-7382-4115-a7dc-d06c9a1962d1,1,0,9935d602-668e-4df9-a338-0f542def878b,9935d602-668e-4df9-a338-0f542def878b,1,0,459ed297-0c0d-4bdb-90a3-da387868f040,459ed297-0c0d-4bdb-90a3-da387868f040,1,0,ccb5b9a7-1a10-4803-b455-0350afe4b584,ccb5b9a7-1a10-4803-b455-0350afe4b584,1,0,ebce49ef-755a-4ace-aeb1-b99db2a8bf6c,ebce49ef-755a-4ace-aeb1-b99db2a8bf6c,1,0,0cd18f4c-aeb9-456b-9dcd-9649d1dd486b,0cd18f4c-aeb9-456b-9dcd-9649d1dd486b,1,0,ba5e7c41-0442-4f74-ba41-631d864eafb4,ba5e7c41-0442-4f74-ba41-631d864eafb4,1,0,c86aa97a-5898-4cb2-ae62-598bddf8e99f,c86aa97a-5898-4cb2-ae62-598bddf8e99f,1,0,d3c9b925-6b74-42db-8b21-ab21d24797d1,d3c9b925-6b74-42db-8b21-ab21d24797d1,1,0,4d348ec3-9de8-4f5b-960c-4b507d0fd7ce,4d348ec3-9de8-4f5b-960c-4b507d0fd7ce,1,0,39261a2d-7c46-40b1-9f8f-02d970aa04bc,39261a2d-7c46-40b1-9f8f-02d970aa04bc,1,0,3a07e5a5-2ab1-43ef-b97f-d45cd7775d67,3a07e5a5-2ab1-43ef-b97f-d45cd7775d67,1,0,124a516f-cdab-49ce-95d1-359921140342,124a516f-cdab-49ce-95d1-359921140342,1,0,e4294611-a770-4e67-9578-a1f370879476,e4294611-a770-4e67-9578-a1f370879476,1,0,c5033dd2-0911-4124-8688-dc9dabf3155f,c5033dd2-0911-4124-8688-dc9dabf3155f,1,0,274357df-cb5c-407d-ae72-58046c310db2,274357df-cb5c-407d-ae72-58046c310db2,1,0,5467001e-d025-4669-b16e-26381ac4403f,5467001e-d025-4669-b16e-26381ac4403f,1,0,cb3a5c5b-7bdc-4e12-96f1-11b1213b6853,cb3a5c5b-7bdc-4e12-96f1-11b1213b6853,1,0,e6fe7103-4dfa-4302-a58e-ccd7fac19c9d,e6fe7103-4dfa-4302-a58e-ccd7fac19c9d,1,0,bb3a9973-67ce-479e-8668-c2f3bb20301e,bb3a9973-67ce-479e-8668-c2f3bb20301e,1,0,e5250dfe-dda2-4547-9b9e-2470ea1be1ab,e5250dfe-dda2-4547-9b9e-2470ea1be1ab,1,0,2c3fccc6-c4c0-49ec-bfc2-05ce05f27ea9,2c3fccc6-c4c0-49ec-bfc2-05ce05f27ea9,1,0,37169451-1464-4f24-8ca6-802963ffb636,37169451-1464-4f24-8ca6-802963ffb636,1,0,c3a958b1-590f-4418-a74f-5982b478cf52,c3a958b1-590f-4418-a74f-5982b478cf52,1,0,ef0e618d-0942-460a-ac65-9aca2fed976e,ef0e618d-0942-460a-ac65-9aca2fed976e,1,0,fd1ed7ec-d848-41cd-8ce3-2e5a682abcf0,fd1ed7ec-d848-41cd-8ce3-2e5a682abcf0,1,0,2ac8bd69-9fbf-4f15-b58d-397d9e903532,2ac8bd69-9fbf-4f15-b58d-397d9e903532,1,0,2ff35814-7eaa-4ae5-bbac-f46bebb36c9d,2ff35814-7eaa-4ae5-bbac-f46bebb36c9d,1,0,5b460b92-2c74-4f59-88b2-18d9aac42c04,5b460b92-2c74-4f59-88b2-18d9aac42c04,1,0,db05d35b-5f53-4c27-ba80-b477b9a98299,db05d35b-5f53-4c27-ba80-b477b9a98299,1,0,fa872ae1-b699-46fe-9d6a-e42e1388752b,fa872ae1-b699-46fe-9d6a-e42e1388752b,1,0,1acf34e6-c428-4130-82f0-5160dfcc0858,1acf34e6-c428-4130-82f0-5160dfcc0858,1,0,57046262-b9ce-4670-9cf5-6db9e58dd0d5,57046262-b9ce-4670-9cf5-6db9e58dd0d5,1,0,a9824176-36d5-4be5-9984-f4312ff48515,a9824176-36d5-4be5-9984-f4312ff48515,1,0,8e980ca0-1627-45e8-bd27-5dd1ac199459,8e980ca0-1627-45e8-bd27-5dd1ac199459,1,0,8b653beb-af9f-4f39-b691-ae14f80b7cd6,8b653beb-af9f-4f39-b691-ae14f80b7cd6,1,0,77559c11-713f-454d-aff4-56649e1350e9,77559c11-713f-454d-aff4-56649e1350e9,1,0,0c965703-c1d0-48b7-80f9-b8d869ff98f5,0c965703-c1d0-48b7-80f9-b8d869ff98f5,1,0,51f8d5ff-aec5-4c0a-ad02-df8c6cb1b4ad,51f8d5ff-aec5-4c0a-ad02-df8c6cb1b4ad,1,0,7ba42162-557b-4e34-8aca-0cdee8cb2452,7ba42162-557b-4e34-8aca-0cdee8cb2452,1,0,eee99b8e-29b6-4b7a-81f1-3d91d740c0d7,eee99b8e-29b6-4b7a-81f1-3d91d740c0d7,1,0,ad4f2d1f-1e6f-4f6a-8061-202c0e42a8e4,ad4f2d1f-1e6f-4f6a-8061-202c0e42a8e4,1,0,dd577924-c6cb-4aa9-9db5-366d8958d00f,dd577924-c6cb-4aa9-9db5-366d8958d00f,1,0,8ed8f72e-404a-4be4-a44d-ddebbad5f411,8ed8f72e-404a-4be4-a44d-ddebbad5f411,1,0,e919bc4c-86e6-44f6-be27-5a729b63d042,e919bc4c-86e6-44f6-be27-5a729b63d042,1,0,ec580e4f-1518-4923-a10e-bc1da8688b37,ec580e4f-1518-4923-a10e-bc1da8688b37,1,0,91c3902a-314f-4d40-8bcc-8dd131fed2f4,91c3902a-314f-4d40-8bcc-8dd131fed2f4,1,0,ae2b21c5-9349-49e8-9627-26f05c21f43a,ae2b21c5-9349-49e8-9627-26f05c21f43a,1,0,7e4c0b74-e807-4aa9-ad69-3c85b147bb61,7e4c0b74-e807-4aa9-ad69-3c85b147bb61,1,0,917a19d7-73db-4247-b892-397598d67879,917a19d7-73db-4247-b892-397598d67879,1,0,1f866dc3-a4bc-4e8d-96a3-a26ee073926f,1f866dc3-a4bc-4e8d-96a3-a26ee073926f,1,0,d8066600-c669-449d-a187-fdd3af8f7afa,d8066600-c669-449d-a187-fdd3af8f7afa,1,0,dadf86a6-c118-4827-b1b9-6cfee731242f,dadf86a6-c118-4827-b1b9-6cfee731242f,1,0,45bf7b20-f048-491a-a989-e50bea13d028,45bf7b20-f048-491a-a989-e50bea13d028,1,0,9ad3b432-5b49-44ee-9d8d-83c36458d927,9ad3b432-5b49-44ee-9d8d-83c36458d927,1,0,a9967bff-53b9-4295-a253-3647d956d3cb,a9967bff-53b9-4295-a253-3647d956d3cb,1,0,75f0fd5b-c594-4f3a-8ff2-3fdadf1dc96d,75f0fd5b-c594-4f3a-8ff2-3fdadf1dc96d,1,0,b8a31397-8974-44ec-92b0-7cbdc481cf7e,b8a31397-8974-44ec-92b0-7cbdc481cf7e,1,0,b29c7c0d-03eb-422b-a899-ba9a7eba99f6,b29c7c0d-03eb-422b-a899-ba9a7eba99f6,1,0,fb16c4d5-854c-4525-92be-b21fa2df5b0d,fb16c4d5-854c-4525-92be-b21fa2df5b0d,1,0,5771de21-2086-432b-ad91-de14a39bd5bc,5771de21-2086-432b-ad91-de14a39bd5bc,1,0,b15bcf3b-0228-4d02-8f20-cd6ba82f7585,b15bcf3b-0228-4d02-8f20-cd6ba82f7585,1,0,ed96fbfa-bda7-405c-9073-d0b6feffedad,ed96fbfa-bda7-405c-9073-d0b6feffedad,1,0,50c724cb-dde1-4313-9492-b1750bd0afc1,50c724cb-dde1-4313-9492-b1750bd0afc1,1,0,12901981-6106-4471-ab3a-e127c2bb4ebd,12901981-6106-4471-ab3a-e127c2bb4ebd,1,0,17ad1497-fa0e-469f-b2e2-b94a6f848ec5,17ad1497-fa0e-469f-b2e2-b94a6f848ec5,1,0,d5ea5dea-233d-4106-b9ba-f030d4f762ef,d5ea5dea-233d-4106-b9ba-f030d4f762ef,1,0,903af05e-5ac5-46aa-843b-d74f9e417c1d,903af05e-5ac5-46aa-843b-d74f9e417c1d,1,0,4dc4862e-74c3-469d-863b-09fdbe0d6be0,4dc4862e-74c3-469d-863b-09fdbe0d6be0,1,0,a344290a-c9be-47a7-95ad-ced1b52a0995,a344290a-c9be-47a7-95ad-ced1b52a0995,1,0,a4e56049-4de9-40a3-8197-a5c84a11f516,a4e56049-4de9-40a3-8197-a5c84a11f516,1,0,339c9220-fd5b-45d3-b300-cdcc8788f87e,339c9220-fd5b-45d3-b300-cdcc8788f87e,1,0,02d7d401-3c0c-4fd0-b096-1f73b6ec14c3,02d7d401-3c0c-4fd0-b096-1f73b6ec14c3,1,0,9042a6de-5048-432d-a448-7e21f2d1d24a,9042a6de-5048-432d-a448-7e21f2d1d24a,1,0,350d46bf-114e-48e7-90c6-6708d949f20d,350d46bf-114e-48e7-90c6-6708d949f20d,1,0,d047caa8-7bcf-41ac-a18e-97877d6e0a2a,d047caa8-7bcf-41ac-a18e-97877d6e0a2a,1,0,aac20ff3-5873-432e-b763-14411e623d41,aac20ff3-5873-432e-b763-14411e623d41,1,0,fbc4df3e-c235-4197-8c1f-a5e39ac63a8c,fbc4df3e-c235-4197-8c1f-a5e39ac63a8c,1,0,6df44466-8750-481a-9baf-c924f0d45353,6df44466-8750-481a-9baf-c924f0d45353,1,0,110121eb-a0eb-4662-8911-3dcc3d341a73,110121eb-a0eb-4662-8911-3dcc3d341a73,1,0,f8980c18-6b9c-4e45-919a-22e976d2a846,f8980c18-6b9c-4e45-919a-22e976d2a846,1,0,c946efb7-c67e-49c1-bf56-d3c2d7220acd,c946efb7-c67e-49c1-bf56-d3c2d7220acd,1,0,7ed6bd83-b61d-4db4-8549-acacbdda6ca2,7ed6bd83-b61d-4db4-8549-acacbdda6ca2,1,0,6b7c9f74-f2b6-463e-acb9-9f82901986cf,6b7c9f74-f2b6-463e-acb9-9f82901986cf,1,0,fc4c1d64-132b-4687-a37d-05000fdb4ba5,fc4c1d64-132b-4687-a37d-05000fdb4ba5,1,0,528777cd-090b-4b70-82f5-56def98c5893,528777cd-090b-4b70-82f5-56def98c5893,1,0,49dbe467-8832-4ede-9a05-494248619aeb,49dbe467-8832-4ede-9a05-494248619aeb,1,0,460ed9ca-10c2-491c-a641-b92ffc2a8e7c,460ed9ca-10c2-491c-a641-b92ffc2a8e7c,1,0,bd5fadd3-9264-4c3b-9bd5-51e91847a6fb,bd5fadd3-9264-4c3b-9bd5-51e91847a6fb,1,0,09c73108-8528-4970-9b7f-fff9eda7816a,09c73108-8528-4970-9b7f-fff9eda7816a,1,0,40aa936e-cb1c-4ae9-85f1-6d930a5815cc,40aa936e-cb1c-4ae9-85f1-6d930a5815cc,1,0,f568245a-d158-45dc-af92-2d411f12db7b,f568245a-d158-45dc-af92-2d411f12db7b,1,0,0f17cdac-aa17-45e6-b3d0-220b13345390,0f17cdac-aa17-45e6-b3d0-220b13345390,1,0,c675db75-d0c3-4026-b97c-6b23ecbb336a,c675db75-d0c3-4026-b97c-6b23ecbb336a,1,0,469f67fa-98b0-44b0-abd4-cae136c02834,469f67fa-98b0-44b0-abd4-cae136c02834,1,0,16a18458-999c-420e-80df-8fc10855746c,16a18458-999c-420e-80df-8fc10855746c,1,0,b794f222-0fde-439f-97a3-0da74075b415,b794f222-0fde-439f-97a3-0da74075b415,1,0,3a716aad-9b2c-48a7-b802-80732066391b,3a716aad-9b2c-48a7-b802-80732066391b,1,0,480d959f-aac8-4241-875f-78e1c1f32621,480d959f-aac8-4241-875f-78e1c1f32621,1,0,496e5de8-d75c-4536-9993-75374f070b40,496e5de8-d75c-4536-9993-75374f070b40,1,0,b4e610ba-c9c8-4b25-903b-e567dcbc2556,b4e610ba-c9c8-4b25-903b-e567dcbc2556,1,0,48febdbd-a085-4113-8511-ed7ff6be7d3c,48febdbd-a085-4113-8511-ed7ff6be7d3c,1,0,49413232-c0c3-4983-9d10-291a0399281b,49413232-c0c3-4983-9d10-291a0399281b,1,0,032bb782-96a7-4c1b-8b8f-eb4e18b555b7,032bb782-96a7-4c1b-8b8f-eb4e18b555b7,1,0,b9b076bb-38ab-4a94-8226-41a4d4d7432c,b9b076bb-38ab-4a94-8226-41a4d4d7432c,1,0,e12da8db-4037-473e-ba2b-d0ceb4534dcb,e12da8db-4037-473e-ba2b-d0ceb4534dcb,1,0,789514e5-8ea3-4a5e-88c5-ed89c4135866,789514e5-8ea3-4a5e-88c5-ed89c4135866,1,0,a16768ff-6137-43d8-8784-4805ed83632a,a16768ff-6137-43d8-8784-4805ed83632a,1,0,61971286-9f94-4a27-aa34-e10848adb70a,61971286-9f94-4a27-aa34-e10848adb70a,1,0,1e75d143-3452-496e-a137-6d7f4c4ed019,1e75d143-3452-496e-a137-6d7f4c4ed019,1,0,e0619d14-c658-4eb5-841a-3a029de28be4,e0619d14-c658-4eb5-841a-3a029de28be4,1,0,99a3b660-7875-47f7-9c6c-c552e5673deb,99a3b660-7875-47f7-9c6c-c552e5673deb,1,0,2bdcf3a5-c8e1-492c-afee-f9db68e2fbb6,2bdcf3a5-c8e1-492c-afee-f9db68e2fbb6,1,0,41cbf934-ea54-41df-abf0-09f319d2e67a,41cbf934-ea54-41df-abf0-09f319d2e67a,1,0,47246084-a5f8-4d0f-b4e2-204c1b97483a,47246084-a5f8-4d0f-b4e2-204c1b97483a,1,0,e58233ec-6cfc-4a8b-9929-689fa69cdb07,e58233ec-6cfc-4a8b-9929-689fa69cdb07,1,0,3291a891-a47c-43ca-b088-aecd3867d38c,3291a891-a47c-43ca-b088-aecd3867d38c,1,0,56cde2b4-00f2-49ba-b407-16e241c17fd2,56cde2b4-00f2-49ba-b407-16e241c17fd2,1,0,bd84fb2b-4c52-4e2f-a8c5-f289b8336145,bd84fb2b-4c52-4e2f-a8c5-f289b8336145,1,0,219ed110-f2a0-41c1-ac5a-02301b248c54,219ed110-f2a0-41c1-ac5a-02301b248c54,1,0,1c722dfd-2b07-4985-9188-17353de24771,1c722dfd-2b07-4985-9188-17353de24771,1,0,1a630496-2cdd-4c89-a1aa-ed20545ad133,1a630496-2cdd-4c89-a1aa-ed20545ad133,1,0,b0dd02ee-ea6a-43f2-baa2-abac0a1ab4bb,b0dd02ee-ea6a-43f2-baa2-abac0a1ab4bb,1,0,b19cea0e-e57a-4969-8daf-f48d3d16705f,b19cea0e-e57a-4969-8daf-f48d3d16705f,1,0,d4059340-3361-4baa-ae48-ecbfb9800a2e,d4059340-3361-4baa-ae48-ecbfb9800a2e,1,0,f78f6c43-dd90-4117-acf7-ed5b951cb964,f78f6c43-dd90-4117-acf7-ed5b951cb964,1,0,8eebd519-4989-4784-82b8-39d77eebfb17,8eebd519-4989-4784-82b8-39d77eebfb17,1,0,0a2cb6e3-d9fa-4881-b136-7b6db9efca07,0a2cb6e3-d9fa-4881-b136-7b6db9efca07,1,0,c1561ed9-2fbf-4c12-a484-07f8adbe8fa3,c1561ed9-2fbf-4c12-a484-07f8adbe8fa3,1,0,4527877b-5723-4aa5-8705-98174ac9c337,4527877b-5723-4aa5-8705-98174ac9c337,1,0,d6b21e7b-df57-4280-8c95-c269b5316018,d6b21e7b-df57-4280-8c95-c269b5316018,1,0,808c468b-6322-428d-ac6a-ccf2228b05b6,808c468b-6322-428d-ac6a-ccf2228b05b6,1,0,13664bb2-738f-4d18-b382-a7bcf8105a5a,13664bb2-738f-4d18-b382-a7bcf8105a5a,1,0,f3f56abe-9248-4555-bf99-29560eb4f9ee,f3f56abe-9248-4555-bf99-29560eb4f9ee,1,0,0dbd5d55-a85f-4c7e-ac31-7ba4ab7cc371,0dbd5d55-a85f-4c7e-ac31-7ba4ab7cc371,1,0,dd9d09ef-3b4b-4bb5-9408-9c4080049bb3,dd9d09ef-3b4b-4bb5-9408-9c4080049bb3,1,0,3eb43a06-b32d-4904-8489-6264d0207623,3eb43a06-b32d-4904-8489-6264d0207623,1,0,a18098cf-5a61-46b5-bd55-cc61d15aa6bc,a18098cf-5a61-46b5-bd55-cc61d15aa6bc,1,0,18615fe1-cfee-4888-9c09-88d1c5db39eb,18615fe1-cfee-4888-9c09-88d1c5db39eb,1,0,63e363fa-8b0c-4d48-ab1b-9c953c5ed4c0,63e363fa-8b0c-4d48-ab1b-9c953c5ed4c0,1,0,087c83c0-75e7-476b-b7c6-5be55498a190,087c83c0-75e7-476b-b7c6-5be55498a190,1,0,ec5e5413-9e77-4929-83b8-6fee70688b28,ec5e5413-9e77-4929-83b8-6fee70688b28,1,0,59cd8e3f-ecf3-4e1d-bd98-41551d5d6f68,59cd8e3f-ecf3-4e1d-bd98-41551d5d6f68,1,0,8390c864-2b84-4c45-8583-cb4a4ab49168,8390c864-2b84-4c45-8583-cb4a4ab49168,1,0,1b2fefca-fef5-4319-90cc-325444cb63a6,1b2fefca-fef5-4319-90cc-325444cb63a6,1,0,34a128be-8fbb-4dd8-ac23-9f35041feb63,34a128be-8fbb-4dd8-ac23-9f35041feb63,1,0,baa31006-e0d6-496e-a60e-27b3dfd19397,baa31006-e0d6-496e-a60e-27b3dfd19397,1,0,3007d8ff-3942-45ed-bac5-8a6c40ca060c,3007d8ff-3942-45ed-bac5-8a6c40ca060c,1,0,8bfe1474-fd12-4744-a9ab-3383bfe766b3,8bfe1474-fd12-4744-a9ab-3383bfe766b3,1,0,3af97375-f776-4129-9521-b8d65d795db6,3af97375-f776-4129-9521-b8d65d795db6,1,0,0e98801b-a45b-44cb-a341-7e43d723f6ed,0e98801b-a45b-44cb-a341-7e43d723f6ed,1,0,5b71cd3b-d5b8-4632-9678-0ab1e1d2ea91,5b71cd3b-d5b8-4632-9678-0ab1e1d2ea91,1,0,103ac72d-c386-40ea-89d4-35798d064f1a,103ac72d-c386-40ea-89d4-35798d064f1a,1,0,645ceb40-1e9f-4a67-aa7f-b9002fa066b3,645ceb40-1e9f-4a67-aa7f-b9002fa066b3,1,0,d1fe15e9-8e5c-4819-85cd-24ab31409437,d1fe15e9-8e5c-4819-85cd-24ab31409437,1,0,c8c5bfe9-ead5-4e79-9fd5-60ad275faa1e,c8c5bfe9-ead5-4e79-9fd5-60ad275faa1e,1,0,8f9826b6-890e-4ba3-a1f2-bc9ebb3238dd,8f9826b6-890e-4ba3-a1f2-bc9ebb3238dd,1,0,74f68bda-17b1-4b3c-aa64-b1014300f9b5,74f68bda-17b1-4b3c-aa64-b1014300f9b5,1,0,90a195b0-7f64-4ccb-986e-8c8c2cf12ccd,90a195b0-7f64-4ccb-986e-8c8c2cf12ccd,1,0,9f9d1f8c-7ff9-420f-a426-48f33493d9f2,9f9d1f8c-7ff9-420f-a426-48f33493d9f2,1,0,ab7bc0bc-b4b8-4a4a-aecc-1cbe14fd4975,ab7bc0bc-b4b8-4a4a-aecc-1cbe14fd4975,1,0,9f8d9594-674f-49ef-9fb8-bb64d5c40a37,9f8d9594-674f-49ef-9fb8-bb64d5c40a37,1,0,47ee7d38-9fa9-458d-abee-e11270f79494,47ee7d38-9fa9-458d-abee-e11270f79494,1,0,bb6b83ff-81f4-4c39-ad8e-8cda9ccd9cb9,bb6b83ff-81f4-4c39-ad8e-8cda9ccd9cb9,1,0,076daecf-8fcb-496b-9f13-c4faa3a8a722,076daecf-8fcb-496b-9f13-c4faa3a8a722,1,0,f1a8357b-7083-42b3-ab5d-36223a3dd2a4,f1a8357b-7083-42b3-ab5d-36223a3dd2a4,1,0,296d7725-bdd3-4210-9db9-31de5711ea9b,296d7725-bdd3-4210-9db9-31de5711ea9b,1,0,6ecc5bc2-20b3-46f3-8019-ae1e1f3de319,6ecc5bc2-20b3-46f3-8019-ae1e1f3de319,1,0,1d05f89a-23dd-4d30-8786-abe8a9a39a40,1d05f89a-23dd-4d30-8786-abe8a9a39a40,1,0,245c2c6c-7b7f-4381-9304-1d7287a215fa,245c2c6c-7b7f-4381-9304-1d7287a215fa,1,0,fd17bbe4-34d9-4832-8eea-8eeb82194e4c,fd17bbe4-34d9-4832-8eea-8eeb82194e4c,1,0,d4c72d7f-7e1f-473c-9a2b-fa675fc78731,d4c72d7f-7e1f-473c-9a2b-fa675fc78731,1,0,8bb5be12-98df-4a38-bffe-432fb13d8101,8bb5be12-98df-4a38-bffe-432fb13d8101,1,0,94209023-ce88-401c-9aff-526fb7e43709,94209023-ce88-401c-9aff-526fb7e43709,1,0,22b99094-b52a-4244-ae91-53848d82560b,22b99094-b52a-4244-ae91-53848d82560b,1,0,22c9e2fa-c1f0-41ec-b6f2-9d7357dd3479,22c9e2fa-c1f0-41ec-b6f2-9d7357dd3479,1,0,b0002134-d5c9-4508-9f0e-97f92461b590,b0002134-d5c9-4508-9f0e-97f92461b590,1,0,1506ec71-cb38-4831-a29d-dac2c4deddda,1506ec71-cb38-4831-a29d-dac2c4deddda,1,0,e05fd82b-b77b-4b7f-b300-43653017f341,e05fd82b-b77b-4b7f-b300-43653017f341,1,0,d3b5e5ee-2317-43b4-b669-3af2ce635cf3,d3b5e5ee-2317-43b4-b669-3af2ce635cf3,1,0,f15a0526-c207-42fe-aed9-438ae0c4a4b8,f15a0526-c207-42fe-aed9-438ae0c4a4b8,1,0,9d444a41-7190-48fb-9a4a-08f8e7bc32a3,9d444a41-7190-48fb-9a4a-08f8e7bc32a3,1,0,8583cab0-0620-4346-96e0-bcac40981b8a,8583cab0-0620-4346-96e0-bcac40981b8a,1,0,e1dfba26-c682-42a2-8e15-fe6f535c9ce1,e1dfba26-c682-42a2-8e15-fe6f535c9ce1,1,0,095990b1-187b-400c-941a-275f272239ca,095990b1-187b-400c-941a-275f272239ca,1,0,ba108470-350d-40c3-bb44-9852c2aa8c97,ba108470-350d-40c3-bb44-9852c2aa8c97,1,0,a37c33fa-64b0-4a1b-846a-0a236bad44f8,a37c33fa-64b0-4a1b-846a-0a236bad44f8,1,0,d8481ce1-7f64-47b0-8fc0-6642ae93aca1,d8481ce1-7f64-47b0-8fc0-6642ae93aca1,1,0,a50f4324-da44-449b-b500-74228b2aa7e0,a50f4324-da44-449b-b500-74228b2aa7e0,1,0,04236716-9c36-4a1d-b4fb-4b8c65644ab4,04236716-9c36-4a1d-b4fb-4b8c65644ab4,1,0,97276702-6686-4ac4-8360-d85369a08b20,97276702-6686-4ac4-8360-d85369a08b20,1,0,e5450ee7-e891-4f58-9a01-d2d81d5ddd6d,e5450ee7-e891-4f58-9a01-d2d81d5ddd6d,1,0,068883fe-d7ae-40e7-ad82-864867916daa,068883fe-d7ae-40e7-ad82-864867916daa,1,0,c1b02568-2095-4f83-8543-2402f67dbe3d,c1b02568-2095-4f83-8543-2402f67dbe3d,1,0,8b749b7a-5e68-4523-adc2-8b3c5ce9701c,8b749b7a-5e68-4523-adc2-8b3c5ce9701c,1,0,bf3c7edc-0791-459e-a7ac-b7e8d7ed97fe,bf3c7edc-0791-459e-a7ac-b7e8d7ed97fe,1,0,7dc6d13e-4edf-4e6a-9ee9-4b32ad889ecf,7dc6d13e-4edf-4e6a-9ee9-4b32ad889ecf,1,0,aecbd726-6952-49e6-b544-4c5cc764c24c,aecbd726-6952-49e6-b544-4c5cc764c24c,1,0,d335cfbf-bc78-4274-a178-10f60372474a,d335cfbf-bc78-4274-a178-10f60372474a,1,0,0f4411b3-addf-4fcf-8da8-c5140dea356c,0f4411b3-addf-4fcf-8da8-c5140dea356c,1,0,c501f9ab-d01b-4137-8cd0-e66103117c84,c501f9ab-d01b-4137-8cd0-e66103117c84,1,0,8d5d4e0f-b7b5-4cdc-aedc-571517fa101f,8d5d4e0f-b7b5-4cdc-aedc-571517fa101f,1,0,66e65355-1424-4c74-801c-faf5357257aa,66e65355-1424-4c74-801c-faf5357257aa,1,0,0a93187b-7ae4-4985-8089-3099dfec2b48,0a93187b-7ae4-4985-8089-3099dfec2b48,1,0,044458f3-ed9b-4afb-ae73-8f9162c032bf,044458f3-ed9b-4afb-ae73-8f9162c032bf,1,0,578f618e-5f4a-4e86-959d-39b59e973936,578f618e-5f4a-4e86-959d-39b59e973936,1,0,f74ede2e-2d28-4224-ba44-773eda7760a4,f74ede2e-2d28-4224-ba44-773eda7760a4,1,0,217df06a-1bdf-4394-b617-ed756ff17bc6,217df06a-1bdf-4394-b617-ed756ff17bc6,1,0,a1572e97-a487-497a-9062-49315e237e0f,a1572e97-a487-497a-9062-49315e237e0f,1,0,969cdcb8-0f2a-427f-93a0-e7ae38f465e8,969cdcb8-0f2a-427f-93a0-e7ae38f465e8,1,0,3c5d87a0-cfce-464a-b946-64c5a589a376,3c5d87a0-cfce-464a-b946-64c5a589a376,1,0,2d22c67d-4795-4a6b-bc81-a3ed1eb28367,2d22c67d-4795-4a6b-bc81-a3ed1eb28367,1,0,763de8d1-7f53-41b6-8d97-7da724e9f763,763de8d1-7f53-41b6-8d97-7da724e9f763,1,0,75592ed4-2aab-4dfc-ae7b-d93e2a98370f,75592ed4-2aab-4dfc-ae7b-d93e2a98370f,1,0,4ad59c75-cca4-4968-82e6-babd72d8b318,4ad59c75-cca4-4968-82e6-babd72d8b318,1,0,c248de15-63a2-48ec-8695-7a5213d4fc9b,c248de15-63a2-48ec-8695-7a5213d4fc9b,1,0,272ff0f9-7266-4c22-be12-fe62682b56a5,272ff0f9-7266-4c22-be12-fe62682b56a5,1,0,9f141dd5-d866-4c25-b58a-a7766a08b4e7,9f141dd5-d866-4c25-b58a-a7766a08b4e7,1,0,0570d846-889d-4cfc-98fb-a1ad0181597f,0570d846-889d-4cfc-98fb-a1ad0181597f,1,0,19e17c58-953f-4917-8b6a-c88808fcca36,19e17c58-953f-4917-8b6a-c88808fcca36,1,0,4804316d-3765-4a83-8438-10e8e82656db,4804316d-3765-4a83-8438-10e8e82656db,1,0,59458556-e343-4215-8e6c-69f924ec4183,59458556-e343-4215-8e6c-69f924ec4183,1,0,dd553dca-7eba-41bf-8939-2c61e170ff65,dd553dca-7eba-41bf-8939-2c61e170ff65,1,0,b4ecf3dc-a2aa-406e-a593-1700ea8746bc,b4ecf3dc-a2aa-406e-a593-1700ea8746bc,1,0,933d7ce7-ea82-4b26-8d1b-dc92cb5ac92d,933d7ce7-ea82-4b26-8d1b-dc92cb5ac92d,1,0,8099e978-28cc-4ade-ac5a-3785f3a45f70,8099e978-28cc-4ade-ac5a-3785f3a45f70,1,0,11eff613-8077-41fa-8cb8-5e8dc27d0e4f,11eff613-8077-41fa-8cb8-5e8dc27d0e4f,1,0,fe023ca5-f11a-4b98-99c1-363508e4ea4a,fe023ca5-f11a-4b98-99c1-363508e4ea4a,1,0,6f8d515e-13d9-45f8-9793-3757f5b85f81,6f8d515e-13d9-45f8-9793-3757f5b85f81,1,0,25ec541c-c437-4318-b2a8-5146df6ae080,25ec541c-c437-4318-b2a8-5146df6ae080,1,0,148754ed-3063-40a7-a3c3-8ad105552370,148754ed-3063-40a7-a3c3-8ad105552370,1,0,ab3f0862-c355-4fd7-a2a7-4eb8278de510,ab3f0862-c355-4fd7-a2a7-4eb8278de510,1,0,85bbfe20-a6a4-49ca-8f20-342f4cbe8258,85bbfe20-a6a4-49ca-8f20-342f4cbe8258,1,0,c12c3f3b-3a96-4e70-b131-8d7bd765095f,c12c3f3b-3a96-4e70-b131-8d7bd765095f,1,0,70ee4b32-80d1-4b79-a322-0433f1b8c7f1,70ee4b32-80d1-4b79-a322-0433f1b8c7f1,1,0,c563588c-346e-499e-ae33-9ff3cb62e658,c563588c-346e-499e-ae33-9ff3cb62e658,1,0,40dbc001-97b6-4188-8de9-3adac670bac4,40dbc001-97b6-4188-8de9-3adac670bac4,1,0,a4ed8b24-bd23-45a7-9f34-61b25b91d0c6,a4ed8b24-bd23-45a7-9f34-61b25b91d0c6,1,0,65efaa10-3239-4f0f-a08e-88c89d9d8d5a,65efaa10-3239-4f0f-a08e-88c89d9d8d5a,1,0,93aa5247-6823-4f70-9d47-e5a0f409828a,93aa5247-6823-4f70-9d47-e5a0f409828a,1,0,030c6a22-a3d5-4cf2-9f7b-dc4fe3732f83,030c6a22-a3d5-4cf2-9f7b-dc4fe3732f83,1,0,b19f1223-5ebe-4446-bacc-bc7d53486f2e,b19f1223-5ebe-4446-bacc-bc7d53486f2e,1,0,6ea7e8e9-0faa-43fd-b9c8-1a7b8f899d6d,6ea7e8e9-0faa-43fd-b9c8-1a7b8f899d6d,1,0,7be1decf-feb1-422b-a3f2-f60d08fdb0e6,7be1decf-feb1-422b-a3f2-f60d08fdb0e6,1,0,bf3167d6-3047-482a-b280-184f446ae7a3,bf3167d6-3047-482a-b280-184f446ae7a3,1,0,50c47c0a-a199-4020-9df4-91b17c159454,50c47c0a-a199-4020-9df4-91b17c159454,1,0,c1d449af-8a6e-4cb0-b2c9-50ea5405c44c,c1d449af-8a6e-4cb0-b2c9-50ea5405c44c,1,0,faecdc33-fed8-4b44-96f4-4215c26959b6,faecdc33-fed8-4b44-96f4-4215c26959b6,1,0,09c29992-47a8-4fca-bd95-e7dbc53e8c4c,09c29992-47a8-4fca-bd95-e7dbc53e8c4c,1,0,f07cf7bd-6f3f-426a-8b71-ba1dcb827654,f07cf7bd-6f3f-426a-8b71-ba1dcb827654,1,0,9df3792e-a4ee-4a2c-9296-c1384925521e,9df3792e-a4ee-4a2c-9296-c1384925521e,1,0,03d423db-f98a-468f-9040-5b76454e5a98,03d423db-f98a-468f-9040-5b76454e5a98,1,0,08f394f9-d254-4fe5-8651-a69c96de7a62,08f394f9-d254-4fe5-8651-a69c96de7a62,1,0,e90ec54b-8b86-43df-8c3c-18c6676bf3f1,e90ec54b-8b86-43df-8c3c-18c6676bf3f1,1,0,6aff6b2f-660b-4d75-9064-fed7a6b0feac,6aff6b2f-660b-4d75-9064-fed7a6b0feac,1,0,53502127-9f47-4e2e-b3ed-eb3c3aae1c50,53502127-9f47-4e2e-b3ed-eb3c3aae1c50,1,0,2fcdd0b5-b738-4e19-8bbf-13a72d7014ec,2fcdd0b5-b738-4e19-8bbf-13a72d7014ec,1,0,59dc7e8d-6f5c-4e1b-816e-5fc15c0e96e0,59dc7e8d-6f5c-4e1b-816e-5fc15c0e96e0,1,0,e60a9221-7676-456f-8a01-b317b03a278b,e60a9221-7676-456f-8a01-b317b03a278b,1,0,4e81ec90-f668-49ca-9193-22337bafb01b,4e81ec90-f668-49ca-9193-22337bafb01b,1,0,104c7c31-5bbd-4242-b29a-2c0d8b69a1b9,104c7c31-5bbd-4242-b29a-2c0d8b69a1b9,1,0,cd60adec-52d6-4fa8-85ca-26551196432c,cd60adec-52d6-4fa8-85ca-26551196432c,1,0,4dfbabd7-d5e5-4b2a-b8d1-752e416629a0,4dfbabd7-d5e5-4b2a-b8d1-752e416629a0,1,0,b71ddbdb-08bb-46be-a79d-319c4a557e76,b71ddbdb-08bb-46be-a79d-319c4a557e76,1,0,d3dfa867-3d52-4872-a69e-f27636abe1bd,d3dfa867-3d52-4872-a69e-f27636abe1bd,1,0,6952d1aa-7132-4e40-8542-f64a4dc1e029,6952d1aa-7132-4e40-8542-f64a4dc1e029,1,0,51a1bc4c-9139-42a4-92c3-f45c837cbdb9,51a1bc4c-9139-42a4-92c3-f45c837cbdb9,1,0,1621811b-dfd3-4c58-8e15-ced16690147a,1621811b-dfd3-4c58-8e15-ced16690147a,1,0,3f266e51-0476-4b7f-8d61-6f9f4456049d,3f266e51-0476-4b7f-8d61-6f9f4456049d,1,0,2b9ce591-ff13-4c2d-85c4-632a2609a211,2b9ce591-ff13-4c2d-85c4-632a2609a211,1,0,689ca0ec-61ce-4590-b73b-ac81e8f1d459,689ca0ec-61ce-4590-b73b-ac81e8f1d459,1,0,3ea1895f-66d0-4bbb-a66b-0c9d411a7c55,3ea1895f-66d0-4bbb-a66b-0c9d411a7c55,1,0,55ad36d7-399e-4b82-8d1c-d45bd890abfe,55ad36d7-399e-4b82-8d1c-d45bd890abfe,1,0,0f3b9012-7bf6-4451-b0c3-139d98d9c2c1,0f3b9012-7bf6-4451-b0c3-139d98d9c2c1,1,0,1b39a65f-5425-4bcb-85bd-1425274af8a8,1b39a65f-5425-4bcb-85bd-1425274af8a8,1,0,392a0618-a41a-4713-a561-f3a80b85abd8,392a0618-a41a-4713-a561-f3a80b85abd8,1,0,a453384d-658d-40f1-ac69-578aa3a24e39,a453384d-658d-40f1-ac69-578aa3a24e39,1,0,2215a441-b9b1-4e5c-8df3-e6cee9226c43,2215a441-b9b1-4e5c-8df3-e6cee9226c43,1,0,2a8d4908-ea0d-4837-be3f-bd78f6b61254,2a8d4908-ea0d-4837-be3f-bd78f6b61254,1,0,ec1deb79-7369-4b26-8e91-f51399e8052a,ec1deb79-7369-4b26-8e91-f51399e8052a,1,0,75dde4fb-3a1a-450c-95c2-c1f95a781db9,75dde4fb-3a1a-450c-95c2-c1f95a781db9,1,0,0ae3ac56-160a-417e-9952-719d02e7f089,0ae3ac56-160a-417e-9952-719d02e7f089,1,0,f5b3983d-d22d-44a8-9069-0a60d8b858bf,f5b3983d-d22d-44a8-9069-0a60d8b858bf,1,0,a64b15fa-fc34-43fe-a366-d27c0f1c3df2,a64b15fa-fc34-43fe-a366-d27c0f1c3df2,1,0,8b13e848-8fd3-4326-bd18-5a5b12ed3dc5,8b13e848-8fd3-4326-bd18-5a5b12ed3dc5,1,0,b9a6b053-2b93-4946-9531-040d3131dcc5,b9a6b053-2b93-4946-9531-040d3131dcc5,1,0,9f36d26e-aa71-44d5-ac27-9aaa643555c3,9f36d26e-aa71-44d5-ac27-9aaa643555c3,1,0,87b8b5d7-d3d6-450a-adb1-5c875257ec80,87b8b5d7-d3d6-450a-adb1-5c875257ec80,1,0,e3640efe-e46c-4588-b251-dda23bf0641d,e3640efe-e46c-4588-b251-dda23bf0641d,1,0,bb6e6574-4328-4cf5-a043-a7d8f6c81414,bb6e6574-4328-4cf5-a043-a7d8f6c81414,1,0,b46b5090-5eb1-4950-9031-8b43f611fa9c,b46b5090-5eb1-4950-9031-8b43f611fa9c,1,0,522a4bff-34d3-46b2-8c66-0b30d881a86e,522a4bff-34d3-46b2-8c66-0b30d881a86e,1,0,3d7908b1-bd82-475e-8488-fafcbe3458ee,3d7908b1-bd82-475e-8488-fafcbe3458ee,1,0,1bac040b-83e4-402f-a9bf-d6a7b10c91e0,1bac040b-83e4-402f-a9bf-d6a7b10c91e0,1,0,e9c632b0-7977-4e44-ac56-882617ad7cdc,e9c632b0-7977-4e44-ac56-882617ad7cdc,1,0,e84acba7-7e0f-43e8-a545-6e53d529d5d4,e84acba7-7e0f-43e8-a545-6e53d529d5d4,1,0,3b089d90-7ece-4b74-a4dc-e436d9d31b3b,3b089d90-7ece-4b74-a4dc-e436d9d31b3b,1,0,0f9c08c2-e7fa-4ea0-a935-f927feb01131,0f9c08c2-e7fa-4ea0-a935-f927feb01131,1,0,6086d53f-f1b2-4126-ab46-64705fe63b87,6086d53f-f1b2-4126-ab46-64705fe63b87,1,0,62a6b1c9-8288-4fa1-a17d-241b85a5e4b0,62a6b1c9-8288-4fa1-a17d-241b85a5e4b0,1,0,6d042890-27b2-4efc-935e-8190bb57c037,6d042890-27b2-4efc-935e-8190bb57c037,1,0,23e79add-7f1c-422a-9df1-8f76ebf805df,23e79add-7f1c-422a-9df1-8f76ebf805df,1,0,9295d88f-0865-440c-a98a-4710c50211be,9295d88f-0865-440c-a98a-4710c50211be,1,0,90aa51ae-434d-48f4-bfe3-0e1dd3aeea6f,90aa51ae-434d-48f4-bfe3-0e1dd3aeea6f,1,0,38ac9a13-665a-4201-b5cc-687fe4a01130,38ac9a13-665a-4201-b5cc-687fe4a01130,1,0,97c59096-b2dc-45d0-a580-b3018a04f9af,97c59096-b2dc-45d0-a580-b3018a04f9af,1,0,5dcd8e28-b058-405a-bac4-defab7d4b789,5dcd8e28-b058-405a-bac4-defab7d4b789,1,0,6fbf63b7-1692-495e-a8ec-bdda182997a3,6fbf63b7-1692-495e-a8ec-bdda182997a3,1,0,077af11c-fd3c-4e87-b169-5f3137464f77,077af11c-fd3c-4e87-b169-5f3137464f77,1,0,8172256e-f51e-4de0-bd07-3668785f4cb9,8172256e-f51e-4de0-bd07-3668785f4cb9,1,0,ccb54dc9-3d12-43d0-af6a-138d3526f5d5,ccb54dc9-3d12-43d0-af6a-138d3526f5d5,1,0,da8f7f30-eb80-44db-a451-348306c90cd8,da8f7f30-eb80-44db-a451-348306c90cd8,1,0,b82bcff8-49c9-44a9-8a9f-4428b0cc54a5,b82bcff8-49c9-44a9-8a9f-4428b0cc54a5,1,0,870b4d6d-0b89-4eda-a2b3-5c6db7dbe864,870b4d6d-0b89-4eda-a2b3-5c6db7dbe864,1,0,c172aeaf-b444-47c0-baee-80ccd91fe934,c172aeaf-b444-47c0-baee-80ccd91fe934,1,0,757ea742-8c14-4e0a-a867-432eee5cfc64,757ea742-8c14-4e0a-a867-432eee5cfc64,1,0,b8c36d5a-7966-4978-9225-67502b9c60a4,b8c36d5a-7966-4978-9225-67502b9c60a4,1,0,37ea0c64-2fec-4c2e-922b-d3a2f01f3e22,37ea0c64-2fec-4c2e-922b-d3a2f01f3e22,1,0,9847676d-f44d-46a0-83e2-4a43a835caf8,9847676d-f44d-46a0-83e2-4a43a835caf8,1,0,43c18cae-21a9-413b-a350-d5cf826980f0,43c18cae-21a9-413b-a350-d5cf826980f0,1,0,16773cdb-b979-42d5-a2a5-d4b79e8737bd,16773cdb-b979-42d5-a2a5-d4b79e8737bd,1,0,c28a190a-f487-4e99-b8f8-6928268086f8,c28a190a-f487-4e99-b8f8-6928268086f8,1,0,94e02f76-8656-4999-9470-dd996118400c,94e02f76-8656-4999-9470-dd996118400c,1,0,9effd265-3783-44e2-8698-80dd82137546,9effd265-3783-44e2-8698-80dd82137546,1,0,bef52020-98f8-465b-8981-e5f8eed62308,bef52020-98f8-465b-8981-e5f8eed62308,1,0,19897ad0-bdb5-439c-b4a2-a773c0ce5cf5,19897ad0-bdb5-439c-b4a2-a773c0ce5cf5,1,0,e731dab7-df9e-48ae-8542-4c0c30666ae9,e731dab7-df9e-48ae-8542-4c0c30666ae9,1,0,f321e378-6d50-4567-8434-813f367d3a65,f321e378-6d50-4567-8434-813f367d3a65,1,0,27246fd8-a8a3-4244-b49a-c0372a812167,27246fd8-a8a3-4244-b49a-c0372a812167,1,0,6ac484a9-4d96-4521-9b8c-66212a365725,6ac484a9-4d96-4521-9b8c-66212a365725,1,0,0841ebfc-12e6-4b3e-a60f-861b15e1b63c,0841ebfc-12e6-4b3e-a60f-861b15e1b63c,1,0,bde05768-2dd6-4800-985d-27075f610cca,bde05768-2dd6-4800-985d-27075f610cca,1,0,d18956cf-e449-48cc-a127-01b5dc910ea2,d18956cf-e449-48cc-a127-01b5dc910ea2,1,0,8e5487a3-b5e5-40ca-88f3-5b0ea0c4d481,8e5487a3-b5e5-40ca-88f3-5b0ea0c4d481,1,0,5d338e31-a56b-45f0-8a62-0270ca543f6a,5d338e31-a56b-45f0-8a62-0270ca543f6a,1,0,e352fc19-96be-4410-a516-bc58cc234422,e352fc19-96be-4410-a516-bc58cc234422,1,0,9b742da4-1696-4c06-9dfa-dd85c9286c74,9b742da4-1696-4c06-9dfa-dd85c9286c74,1,0,a7098d41-a978-4c77-937c-8deebdfe0bcd,a7098d41-a978-4c77-937c-8deebdfe0bcd,1,0,db1062bc-4164-4095-9640-9804c0ebcd0b,db1062bc-4164-4095-9640-9804c0ebcd0b,1,0,c11d967b-1250-4345-90b0-011a96c5ae5e,c11d967b-1250-4345-90b0-011a96c5ae5e,1,0,ea7c61ff-745c-4908-9a94-bba022d12de4,ea7c61ff-745c-4908-9a94-bba022d12de4,1,0,ef8a82f2-d3e5-4f0d-8a16-024d9cdacce2,ef8a82f2-d3e5-4f0d-8a16-024d9cdacce2,1,0,24eed105-f612-4340-ad79-388a7b39b58c,24eed105-f612-4340-ad79-388a7b39b58c,1,0,8e4bd2ac-d555-490e-87ab-1b0cdd6f72e9,8e4bd2ac-d555-490e-87ab-1b0cdd6f72e9,1,0,4d6683a3-1edd-4d04-8e02-0be002e4e5a4,4d6683a3-1edd-4d04-8e02-0be002e4e5a4,1,0,c7ffd8ab-15e9-4cf1-a7fd-d05534dff000,c7ffd8ab-15e9-4cf1-a7fd-d05534dff000,1,0,53caada5-1d53-45dc-9432-90075ddca890,53caada5-1d53-45dc-9432-90075ddca890,1,0,d1472d23-954b-4069-b2d6-df08c6ec0be1,d1472d23-954b-4069-b2d6-df08c6ec0be1,1,0,93fe2ce6-7193-42bc-a966-4653b7989eaa,93fe2ce6-7193-42bc-a966-4653b7989eaa,1,0,6a2add61-edb7-4561-bae9-06b3741e7726,6a2add61-edb7-4561-bae9-06b3741e7726,1,0,a7fe0aa5-722c-4a09-889b-ee422421addc,a7fe0aa5-722c-4a09-889b-ee422421addc,1,0,798bd34c-d0ee-4590-9b1d-8bc47e42ca8c,798bd34c-d0ee-4590-9b1d-8bc47e42ca8c,1,0,0c838a31-2b08-447c-b39a-a613cfba526c,0c838a31-2b08-447c-b39a-a613cfba526c,1,0,b25083c5-9b97-49a4-b6c3-bbf8d7f91cd3,b25083c5-9b97-49a4-b6c3-bbf8d7f91cd3,1,0,86c679c0-3531-4622-9a1f-3d9d6ccdd431,86c679c0-3531-4622-9a1f-3d9d6ccdd431,1,0,3bc2ca38-4a10-4ebd-a5dc-3418db494f0c,3bc2ca38-4a10-4ebd-a5dc-3418db494f0c,1,0,670c62c1-1a33-4dec-9540-5b4c1fe29074,670c62c1-1a33-4dec-9540-5b4c1fe29074,1,0,cc664d81-d0af-4d25-ae29-64f422e51bf2,cc664d81-d0af-4d25-ae29-64f422e51bf2,1,0,e1314cd1-e662-4c29-ad51-492cb0029883,e1314cd1-e662-4c29-ad51-492cb0029883,1,0,0cf49621-afc5-4c8d-a1b5-f8c30db9f415,0cf49621-afc5-4c8d-a1b5-f8c30db9f415,1,0,4718392b-477c-496b-9d28-ddbdaa7a04f2,4718392b-477c-496b-9d28-ddbdaa7a04f2,1,0,879844f0-30b4-47f5-8d2e-5fea29910368,879844f0-30b4-47f5-8d2e-5fea29910368,1,0,303334ba-2785-47fe-a094-84f9dea33be2,303334ba-2785-47fe-a094-84f9dea33be2,1,0,9690842c-7a2c-4b5d-a238-f730afc49a7b,9690842c-7a2c-4b5d-a238-f730afc49a7b,1,0,04424730-6992-4a5b-838b-7a7c16dedbd0,04424730-6992-4a5b-838b-7a7c16dedbd0,1,0,cd6b749d-55a4-4e10-a933-8d97bfe2f9df,cd6b749d-55a4-4e10-a933-8d97bfe2f9df,1,0,240bec31-cd59-477b-8459-8e3278da22dc,240bec31-cd59-477b-8459-8e3278da22dc,1,0,b76c3bd6-924a-4378-acbe-6f17232b201b,b76c3bd6-924a-4378-acbe-6f17232b201b,1,0,e0519f0c-9c99-4f5c-a3a9-27adce45737d,e0519f0c-9c99-4f5c-a3a9-27adce45737d,1,0,45eec13d-e5e5-4a2e-ad6c-2780bde15ef2,45eec13d-e5e5-4a2e-ad6c-2780bde15ef2,1,0,0874a3c0-0d16-4172-b467-f0666d5fcaee,0874a3c0-0d16-4172-b467-f0666d5fcaee,1,0,cc380a19-ab29-4f20-93ad-9a58cd4de56e,cc380a19-ab29-4f20-93ad-9a58cd4de56e,1,0,6a5f7521-270e-476e-88ec-a8cf79ea61a6,6a5f7521-270e-476e-88ec-a8cf79ea61a6,1,0,9bb841e7-e629-4a1f-8ff6-f8bca0b2b133,9bb841e7-e629-4a1f-8ff6-f8bca0b2b133,1,0,74067eee-6cd4-4ae3-becc-457ecb51dc9a,74067eee-6cd4-4ae3-becc-457ecb51dc9a,1,0,e54a8786-86a4-48e3-a210-aaae4e5fce8c,e54a8786-86a4-48e3-a210-aaae4e5fce8c,1,0,86c86ea2-d14e-4443-b36c-c1c17c4f768a,86c86ea2-d14e-4443-b36c-c1c17c4f768a,1,0,14512818-58b0-44cc-b00d-d37913c57aad,14512818-58b0-44cc-b00d-d37913c57aad,1,0,57964dd6-4b0b-4590-bc44-de744cc423af,57964dd6-4b0b-4590-bc44-de744cc423af,1,0,364cbfe2-bc44-4387-aa7e-6b4aa086c9e9,364cbfe2-bc44-4387-aa7e-6b4aa086c9e9,1,0,343b979a-97e3-4eac-a314-3bd3eea9c15c,343b979a-97e3-4eac-a314-3bd3eea9c15c,1,0,b2f17ef1-3f6f-4029-b3e2-28d6b79c5b76,b2f17ef1-3f6f-4029-b3e2-28d6b79c5b76,1,0,f5bb88eb-c239-4ae3-a297-dfbbd679e008,f5bb88eb-c239-4ae3-a297-dfbbd679e008,1,0,bb350b39-1f4d-460a-98c9-8d2308cf22f0,bb350b39-1f4d-460a-98c9-8d2308cf22f0,1,0,f259b6b4-d582-429f-a16f-027a6bcb7438,f259b6b4-d582-429f-a16f-027a6bcb7438,1,0,9f32e85c-2ed6-41db-b0ec-6d8596940e80,9f32e85c-2ed6-41db-b0ec-6d8596940e80,1,0,46e0522b-b88b-43b2-9067-a5359e90994b,46e0522b-b88b-43b2-9067-a5359e90994b,1,0,727c7c01-83e6-4d59-afa4-ee36f1cbacf2,727c7c01-83e6-4d59-afa4-ee36f1cbacf2,1,0,72d41d01-9c9d-4fbe-8a39-932d82d171ef,72d41d01-9c9d-4fbe-8a39-932d82d171ef,1,0,697d5715-dd04-40be-9b28-539734725158,697d5715-dd04-40be-9b28-539734725158,1,0,d831a8ac-88a4-4191-ab0b-7538dfb3e7d7,d831a8ac-88a4-4191-ab0b-7538dfb3e7d7,1,0,d95fcb37-fc65-466d-93e2-489f41683276,d95fcb37-fc65-466d-93e2-489f41683276,1,0,c6b0d31e-7b68-4c7f-a565-0ac8a7c11143,c6b0d31e-7b68-4c7f-a565-0ac8a7c11143,1,0,a27a9296-46bb-49a1-8308-db675baa81d0,a27a9296-46bb-49a1-8308-db675baa81d0,1,0,1456f317-360c-4190-b2d1-1be7484369a5,1456f317-360c-4190-b2d1-1be7484369a5,1,0,5ac74bb3-a4df-47db-ad87-6cb95b85c51f,5ac74bb3-a4df-47db-ad87-6cb95b85c51f,1,0,4867948f-b027-44ae-b78c-a94e00eed52b,4867948f-b027-44ae-b78c-a94e00eed52b,1,0,aa0c32ae-da52-4df9-8b77-99ea31f8df81,aa0c32ae-da52-4df9-8b77-99ea31f8df81,1,0,d7dcd391-3a0e-4aa9-9b53-467a1de67593,d7dcd391-3a0e-4aa9-9b53-467a1de67593,1,0,39ed5463-b1c0-44bb-9d71-4ef08007a7d0,39ed5463-b1c0-44bb-9d71-4ef08007a7d0,1,0,3d4cb11a-7ce7-4c46-a427-99d6f41f08bf,3d4cb11a-7ce7-4c46-a427-99d6f41f08bf,1,0,56cc2ba7-fee3-4dcb-9a2a-93dc94a5ee1f,56cc2ba7-fee3-4dcb-9a2a-93dc94a5ee1f,1,0,ef044879-e731-418a-b917-6a685f27c5f4,ef044879-e731-418a-b917-6a685f27c5f4,1,0,618d13d5-fd1f-4b70-ad45-dd6a17a50730,618d13d5-fd1f-4b70-ad45-dd6a17a50730,1,0,58037b76-b548-4f07-bd67-67e552a5c6e5,58037b76-b548-4f07-bd67-67e552a5c6e5,1,0,00e48a23-eb5b-4a29-b36c-218ab9760f23,00e48a23-eb5b-4a29-b36c-218ab9760f23,1,0,68f19104-5fa3-4f28-a84b-bf68c3bed49b,68f19104-5fa3-4f28-a84b-bf68c3bed49b,1,0,ab0b6824-99ba-4b8d-857d-ed8ef017d499,ab0b6824-99ba-4b8d-857d-ed8ef017d499,1,0,f88ccd7a-8d15-4b24-addf-da522a0b4a43,f88ccd7a-8d15-4b24-addf-da522a0b4a43,1,0,0f8e87d4-ffb7-4cff-a2d3-6d5c5219ff0b,0f8e87d4-ffb7-4cff-a2d3-6d5c5219ff0b,1,0,1511c2e3-aeb4-422a-b6ae-03412b714c93,1511c2e3-aeb4-422a-b6ae-03412b714c93,1,0,349378d1-abe3-44de-84a4-d525b08e0474,349378d1-abe3-44de-84a4-d525b08e0474,1,0,1526b18d-7fab-414e-a5b2-377b67ac0b55,1526b18d-7fab-414e-a5b2-377b67ac0b55,1,0,c561fe6b-53ea-435b-a230-1850e2dc1ff5,c561fe6b-53ea-435b-a230-1850e2dc1ff5,1,0,aba7605f-6baf-42a8-b5ad-8f71c780b81f,aba7605f-6baf-42a8-b5ad-8f71c780b81f,1,0,8fc19eca-1a15-4758-af4b-79637e51edfb,8fc19eca-1a15-4758-af4b-79637e51edfb,1,0,be9144ce-5560-47bb-8c5e-9beefd15bfc3,be9144ce-5560-47bb-8c5e-9beefd15bfc3,1,0,ad09d1e6-5982-4e1c-864e-452ac5b2915a,ad09d1e6-5982-4e1c-864e-452ac5b2915a,1,0,c0bc4cc4-b5ca-47c2-b589-c0d25bb63f1e,c0bc4cc4-b5ca-47c2-b589-c0d25bb63f1e,1,0,84a159ed-bc5f-4497-94d1-94b187b0bffe,84a159ed-bc5f-4497-94d1-94b187b0bffe,1,0,0dcc3bbf-afbe-4a4e-bc4a-17534d5fab28,0dcc3bbf-afbe-4a4e-bc4a-17534d5fab28,1,0,bf75c4de-b36a-4a7f-8d84-9fa3d020a6cb,bf75c4de-b36a-4a7f-8d84-9fa3d020a6cb,1,0,f95adb50-fa0b-434c-93dd-b7fd211220b7,f95adb50-fa0b-434c-93dd-b7fd211220b7,1,0,d02fe5f5-412c-4c4f-bfc7-c1d7206cd092,d02fe5f5-412c-4c4f-bfc7-c1d7206cd092,1,0,2233ce53-b8a8-4c83-97a2-683c8575462a,2233ce53-b8a8-4c83-97a2-683c8575462a,1,0,d6a5083f-ca9a-42ed-b202-2983e4ba21c2,d6a5083f-ca9a-42ed-b202-2983e4ba21c2,1,0,bd69bf55-dee0-4553-8f90-5fd025c0f773,bd69bf55-dee0-4553-8f90-5fd025c0f773,1,0,2071f210-dc13-43c0-a58e-b982821d6842,2071f210-dc13-43c0-a58e-b982821d6842,1,0,3cda70d0-3116-4508-82ea-5ea0f0921262,3cda70d0-3116-4508-82ea-5ea0f0921262,1,0,d5588c0d-3e94-485b-a7e9-45f5cf74df9e,d5588c0d-3e94-485b-a7e9-45f5cf74df9e,1,0,c2ef8d6b-de7b-430d-ac30-76cdaf0579c2,c2ef8d6b-de7b-430d-ac30-76cdaf0579c2,1,0,f415296e-fceb-4835-abe9-17bb17a5d5e5,f415296e-fceb-4835-abe9-17bb17a5d5e5,1,0,0e805e1f-3797-4ef9-94d3-0ec58ac1b605,0e805e1f-3797-4ef9-94d3-0ec58ac1b605,1,0,8677bd53-5569-4d44-b7ce-d1b3fe12c78d,8677bd53-5569-4d44-b7ce-d1b3fe12c78d,1,0,19056365-9ff1-4733-876e-a7ebdbbe0557,19056365-9ff1-4733-876e-a7ebdbbe0557,1,0,c8679d82-075c-4556-8231-c004d144fe61,c8679d82-075c-4556-8231-c004d144fe61,1,0,5e09dc5e-bbb7-4c38-b609-940c24f63c84,5e09dc5e-bbb7-4c38-b609-940c24f63c84,1,0,017b28eb-8ba9-465e-a748-20eadbeb4ea2,017b28eb-8ba9-465e-a748-20eadbeb4ea2,1,0,c0bb2d66-94c9-4bc6-afd5-534075e8395b,c0bb2d66-94c9-4bc6-afd5-534075e8395b,1,0,db7cc693-1645-4416-a9d9-5a7584cd3bbc,db7cc693-1645-4416-a9d9-5a7584cd3bbc,1,0,c849fb09-7833-49c8-9461-98426dc6c0af,c849fb09-7833-49c8-9461-98426dc6c0af,1,0,6c58fc3a-37f8-44b7-b076-2c10ce09b554,6c58fc3a-37f8-44b7-b076-2c10ce09b554,1,0,8ca0258c-96d8-4a12-b94f-db968195ee0a,8ca0258c-96d8-4a12-b94f-db968195ee0a,1,0,245c07a9-98b0-452b-b899-dc8751ab7ce0,245c07a9-98b0-452b-b899-dc8751ab7ce0,1,0,b0ca1b85-e1de-4b7c-8261-7f9e8a6a72eb,b0ca1b85-e1de-4b7c-8261-7f9e8a6a72eb,1,0,ae67dfe5-bb36-4400-81f5-8dab1fd0ca6e,ae67dfe5-bb36-4400-81f5-8dab1fd0ca6e,1,0,91d7687b-7627-473f-a08d-433f9d385107,91d7687b-7627-473f-a08d-433f9d385107,1,0,83db1b00-e9e3-41da-8a59-47589dcfd618,83db1b00-e9e3-41da-8a59-47589dcfd618,1,0,91d2d798-1498-4c52-aa7b-99db4b992876,91d2d798-1498-4c52-aa7b-99db4b992876,1,0,e85a03d3-e7c7-4058-992a-515a557d9e52,e85a03d3-e7c7-4058-992a-515a557d9e52,1,0,d3a1d247-8f4a-45af-9861-7e313a100209,d3a1d247-8f4a-45af-9861-7e313a100209,1,0,83385f31-2cdf-44a1-85c3-461e4ad5fd45,83385f31-2cdf-44a1-85c3-461e4ad5fd45,1,0,b55b06db-604e-4fb9-9253-638c747bd8f9,b55b06db-604e-4fb9-9253-638c747bd8f9,1,0,9cd9a3e1-b52c-4151-abd3-2744ed03cc1b,9cd9a3e1-b52c-4151-abd3-2744ed03cc1b,1,0,9aa0c1ef-45b4-405b-ad6f-ebcf876e6318,9aa0c1ef-45b4-405b-ad6f-ebcf876e6318,1,0,deb69010-80b0-4e28-acc7-8c50e8e6f873,deb69010-80b0-4e28-acc7-8c50e8e6f873,1,0,1a9177fe-6699-42b3-9588-eed9c6008c2d,1a9177fe-6699-42b3-9588-eed9c6008c2d,1,0,4f49412a-fbbe-4ee1-9c2b-affe5266bba7,4f49412a-fbbe-4ee1-9c2b-affe5266bba7,1,0,ae698468-f42a-4400-aee6-fd849740e634,ae698468-f42a-4400-aee6-fd849740e634,1,0,d62bdb25-f261-4282-aa72-52e2b107642c,d62bdb25-f261-4282-aa72-52e2b107642c,1,0,ddec19a2-2a76-4eeb-9cbb-6bc2b4a32bc8,ddec19a2-2a76-4eeb-9cbb-6bc2b4a32bc8,1,0,6438435e-97cc-4bd2-98dc-e21cee55bb0f,6438435e-97cc-4bd2-98dc-e21cee55bb0f,1,0,00579e31-e97d-4d79-ba25-b8d500a17e7f,00579e31-e97d-4d79-ba25-b8d500a17e7f,1,0,5001bea4-c8f9-4950-9eda-d33125e3bb46,5001bea4-c8f9-4950-9eda-d33125e3bb46,1,0,e815010d-e03d-46e4-b482-c1556902cc26,e815010d-e03d-46e4-b482-c1556902cc26,1,0,98bdfd19-b993-43bd-b2e1-3535d001ff29,98bdfd19-b993-43bd-b2e1-3535d001ff29,1,0,00a1fdb2-d233-4179-b78a-a7e27d9c03c5,00a1fdb2-d233-4179-b78a-a7e27d9c03c5,1,0,dd03e170-4186-495b-ae1c-fc66385d7ccf,dd03e170-4186-495b-ae1c-fc66385d7ccf,1,0,81fbb02e-76b2-4bca-bb3b-871e4e969a3c,81fbb02e-76b2-4bca-bb3b-871e4e969a3c,1,0,cdef5df6-f3a1-4950-b197-4f375914f885,cdef5df6-f3a1-4950-b197-4f375914f885,1,0,c1caff49-dc4b-4b3e-be47-122ea8b70416,c1caff49-dc4b-4b3e-be47-122ea8b70416,1,0,a1185a4c-7351-48b0-b662-61f61a1ad715,a1185a4c-7351-48b0-b662-61f61a1ad715,1,0,28a25822-2306-409a-a7c8-6f7e42bf25e8,28a25822-2306-409a-a7c8-6f7e42bf25e8,1,0,a45fa0c3-c363-4465-861f-13cedfeb79dd,a45fa0c3-c363-4465-861f-13cedfeb79dd,1,0,a72517c3-8c91-4e40-81ac-83c762789e87,a72517c3-8c91-4e40-81ac-83c762789e87,1,0,0233b335-7e26-4661-9850-8ab09d3178e3,0233b335-7e26-4661-9850-8ab09d3178e3,1,0,d942d536-5d01-4571-b910-abd973996a38,d942d536-5d01-4571-b910-abd973996a38,1,0,b82a7103-b872-49c3-b632-81d5a0051136,b82a7103-b872-49c3-b632-81d5a0051136,1,0,4b17ac35-78cb-4d01-bb08-659c0a93e8ce,4b17ac35-78cb-4d01-bb08-659c0a93e8ce,1,0,20c2053c-8ebd-4c07-8d95-956b424d047c,20c2053c-8ebd-4c07-8d95-956b424d047c,1,0,7c9dee81-7e85-4d26-84c3-66b0d770ac5a,7c9dee81-7e85-4d26-84c3-66b0d770ac5a,1,0,bef6081e-f377-41d6-83a1-b0e218a3fb46,bef6081e-f377-41d6-83a1-b0e218a3fb46,1,0,9b67bfd5-ef23-4205-b7ba-9466517e9999,9b67bfd5-ef23-4205-b7ba-9466517e9999,1,0,ea2c4c8e-23cc-4884-812e-1e959da48afc,ea2c4c8e-23cc-4884-812e-1e959da48afc,1,0,9474b4f1-b1bb-4fcf-acdb-a149a09b8490,9474b4f1-b1bb-4fcf-acdb-a149a09b8490,1,0,46b0a5b3-1fa7-44ff-a941-c6de47d36e77,46b0a5b3-1fa7-44ff-a941-c6de47d36e77,1,0,ea97b67e-1182-49c3-b95a-8fcce4cd3d09,ea97b67e-1182-49c3-b95a-8fcce4cd3d09,1,0,592f55e1-b004-44ef-878a-6c2016ccbeb0,592f55e1-b004-44ef-878a-6c2016ccbeb0,1,0,19add2bd-eede-4a05-901b-cf8ce49a638f,19add2bd-eede-4a05-901b-cf8ce49a638f,1,0,becf53b6-3fbc-4c70-822f-4a70b0434353,becf53b6-3fbc-4c70-822f-4a70b0434353,1,0,7dc0429d-146a-4c4f-b122-5d5c053bd4ed,7dc0429d-146a-4c4f-b122-5d5c053bd4ed,1,0,f8dc2485-685b-4e41-834a-a2cbbbe4d53b,f8dc2485-685b-4e41-834a-a2cbbbe4d53b,1,0,c38d8135-e11f-4860-b370-84ff279b7fbd,c38d8135-e11f-4860-b370-84ff279b7fbd,1,0,ee0798f5-47a8-4118-a25c-cfd3473007c1,ee0798f5-47a8-4118-a25c-cfd3473007c1,1,0,652ee894-047b-4a5a-a500-2d61b4c4a473,652ee894-047b-4a5a-a500-2d61b4c4a473,1,0,8a95d199-9bd1-4cbb-9d1a-941e80fa2105,8a95d199-9bd1-4cbb-9d1a-941e80fa2105,1,0,fef727fa-f63b-4467-9367-73a2425b19e3,fef727fa-f63b-4467-9367-73a2425b19e3,1,0,3b9c03bc-8517-498f-8052-e53854fb0753,3b9c03bc-8517-498f-8052-e53854fb0753,1,0,33f8cd94-71e7-4703-92c3-22690fbd871a,33f8cd94-71e7-4703-92c3-22690fbd871a,1,0,b6e5de4d-0156-4342-b646-6e6920a4bd3a,b6e5de4d-0156-4342-b646-6e6920a4bd3a,1,0,c03f9972-5a1f-449b-b170-5a958c2b5846,c03f9972-5a1f-449b-b170-5a958c2b5846,1,0,25896075-2484-4879-8310-7f5680d80b48,25896075-2484-4879-8310-7f5680d80b48,1,0,09858042-6284-4499-8055-c1b5b783ce5f,09858042-6284-4499-8055-c1b5b783ce5f,1,0,1e3c444d-6f73-4eb0-a12d-7106daf36b14,1e3c444d-6f73-4eb0-a12d-7106daf36b14,1,0,e417e2ab-5e25-40a9-8dc2-9552a4fe1a38,e417e2ab-5e25-40a9-8dc2-9552a4fe1a38,1,0,1e63c656-a0e7-4b33-8bac-2a196e028ffa,1e63c656-a0e7-4b33-8bac-2a196e028ffa,1,0,085cbea9-1df1-4ee9-afb7-da2bf313697e,085cbea9-1df1-4ee9-afb7-da2bf313697e,1,0,36b080d5-a870-46fa-bf8d-0a06e3a9719f,36b080d5-a870-46fa-bf8d-0a06e3a9719f,1,0,b3152292-5546-4896-ad24-cb41057698d8,b3152292-5546-4896-ad24-cb41057698d8,1,0,bfa90848-930f-433d-8f6f-c11ac2c5eba2,bfa90848-930f-433d-8f6f-c11ac2c5eba2,1,0,a4d767a1-d2e6-4e0a-ab35-9207eef54998,a4d767a1-d2e6-4e0a-ab35-9207eef54998,1,0,f38069e7-6d69-4be9-8463-bc7a33158a1a,f38069e7-6d69-4be9-8463-bc7a33158a1a,1,0,e50cb13a-151b-45d2-a7b7-d23440ddfa24,e50cb13a-151b-45d2-a7b7-d23440ddfa24,1,0,cc3a7f15-4db6-445e-b282-f44d0460b7d3,cc3a7f15-4db6-445e-b282-f44d0460b7d3,1,0,0b8bfb71-d430-4bdf-8391-a534b3a15fc3,0b8bfb71-d430-4bdf-8391-a534b3a15fc3,1,0,0d8770aa-fa6e-471c-92c8-b96576927ef0,0d8770aa-fa6e-471c-92c8-b96576927ef0,1,0,e25b2b10-bf08-42db-9642-861efc5e583b,e25b2b10-bf08-42db-9642-861efc5e583b,1,0,b8a32c33-4e15-4c21-baab-64a86d44321b,b8a32c33-4e15-4c21-baab-64a86d44321b,1,0,e7d51ada-f286-4519-bfae-ece95dd4d7b0,e7d51ada-f286-4519-bfae-ece95dd4d7b0,1,0,d7dd9a03-6818-4987-8f39-58e1c906569f,d7dd9a03-6818-4987-8f39-58e1c906569f,1,0,fce028b8-b530-49f0-b6ad-a28d03e19b0f,fce028b8-b530-49f0-b6ad-a28d03e19b0f,1,0,301eea20-0e7f-441e-a531-28b4627dfd93,301eea20-0e7f-441e-a531-28b4627dfd93,1,0,38fc1e6e-7cd3-437b-b429-6655be34cd01,38fc1e6e-7cd3-437b-b429-6655be34cd01,1,0,47da49ee-b243-4e78-9c8f-bb26c60e6136,47da49ee-b243-4e78-9c8f-bb26c60e6136,1,0,39bee714-cacd-4d48-97a5-c838660e049a,39bee714-cacd-4d48-97a5-c838660e049a,1,0,9ed2c756-80a1-4559-8494-b7a9b82a4519,9ed2c756-80a1-4559-8494-b7a9b82a4519,1,0,69149ce1-d3f8-4e12-be8f-b328ade60882,69149ce1-d3f8-4e12-be8f-b328ade60882,1,0,ff592ecb-eb08-4554-87bf-1d2935b21d3c,ff592ecb-eb08-4554-87bf-1d2935b21d3c,1,0,d975aef4-8da8-4486-baeb-a99c48cff0ec,d975aef4-8da8-4486-baeb-a99c48cff0ec,1,0,75666bb9-f6d3-4dd6-8220-427a81f23fc9,75666bb9-f6d3-4dd6-8220-427a81f23fc9,1,0,9da27139-0bed-47b0-aef6-246929968502,9da27139-0bed-47b0-aef6-246929968502,1,0,68e82adf-bc03-4f23-9ec4-749ed42241da,68e82adf-bc03-4f23-9ec4-749ed42241da,1,0,7ae5d177-a3e6-4989-b10c-8e0a605c26d9,7ae5d177-a3e6-4989-b10c-8e0a605c26d9,1,0,41f87891-ddd5-4e0f-a4f2-8039fb71981b,41f87891-ddd5-4e0f-a4f2-8039fb71981b,1,0,29f2094a-d0d1-425c-8161-45a9ba186e19,29f2094a-d0d1-425c-8161-45a9ba186e19,1,0,a57f6dc1-59d7-4311-8acd-65ce57a9f386,a57f6dc1-59d7-4311-8acd-65ce57a9f386,1,0,893b2dd9-a939-4799-9b78-50d788a5f3ba,893b2dd9-a939-4799-9b78-50d788a5f3ba,1,0,68229ecd-7ecc-4194-a3e5-f8df39b55d6a,68229ecd-7ecc-4194-a3e5-f8df39b55d6a,1,0,e4842271-4fc0-4e15-afef-876f05af78c0,e4842271-4fc0-4e15-afef-876f05af78c0,1,0,31ee6430-b65d-42fa-859b-c4f1c40686ae,31ee6430-b65d-42fa-859b-c4f1c40686ae,1,0,c59e11f3-6bcb-404a-9d76-1416c12be354,c59e11f3-6bcb-404a-9d76-1416c12be354,1,0,c1a1f12b-3978-4047-956e-a5c7de8371a0,c1a1f12b-3978-4047-956e-a5c7de8371a0,1,0,ac39b903-0c60-417e-a50f-49ed375424f5,ac39b903-0c60-417e-a50f-49ed375424f5,1,0,135d57fe-d420-4bb0-9120-e43fd9b55c16,135d57fe-d420-4bb0-9120-e43fd9b55c16,1,0,9893e2d6-f3f8-4d73-bb06-19bf26d216ab,9893e2d6-f3f8-4d73-bb06-19bf26d216ab,1,0,16392cf6-dd83-4df0-a54b-6efc29778a89,16392cf6-dd83-4df0-a54b-6efc29778a89,1,0,a4ec7d3d-2d01-436c-98ec-ec42733ee5c6,a4ec7d3d-2d01-436c-98ec-ec42733ee5c6,1,0,10db9f99-c7d1-4b16-9ea2-9bfc2aa4ddb5,10db9f99-c7d1-4b16-9ea2-9bfc2aa4ddb5,1,0,230722e6-942f-4594-be89-eff59c6572bf,230722e6-942f-4594-be89-eff59c6572bf,1,0,b43abcf7-1f1d-4a59-b0d1-0a493c3a4785,b43abcf7-1f1d-4a59-b0d1-0a493c3a4785,1,0,eaf6045f-9ac0-43ef-b165-a45be75a4d44,eaf6045f-9ac0-43ef-b165-a45be75a4d44,1,0,237dab99-ed72-432c-ad01-c6045d74f000,237dab99-ed72-432c-ad01-c6045d74f000,1,0,a1130128-cc48-4555-93a2-99e7f74f77dc,a1130128-cc48-4555-93a2-99e7f74f77dc,1,0,9b4b7424-1af7-4d80-8404-8819fcfeae75,9b4b7424-1af7-4d80-8404-8819fcfeae75,1,0,94e08dcf-3885-4a73-82ab-cb291f1cf95f,94e08dcf-3885-4a73-82ab-cb291f1cf95f,1,0,405c52c4-25fe-45ff-abab-bf01041e768d,405c52c4-25fe-45ff-abab-bf01041e768d,1,0,55ce840b-5838-4107-886d-f935b9907bd8,55ce840b-5838-4107-886d-f935b9907bd8,1,0,0b3088c9-7fb9-4979-acce-16d7ae7ba6b7,0b3088c9-7fb9-4979-acce-16d7ae7ba6b7,1,0,f1753bda-16db-4b00-a16a-37ddade8403f,f1753bda-16db-4b00-a16a-37ddade8403f,1,0,a1875d63-4303-46f1-bdea-fc529b5891f3,a1875d63-4303-46f1-bdea-fc529b5891f3,1,0,59123b12-6052-4480-9c86-f4de1b5cdc04,59123b12-6052-4480-9c86-f4de1b5cdc04,1,0,133f181a-fade-4182-826d-904fac780326,133f181a-fade-4182-826d-904fac780326,1,0,f60cb71a-f451-426a-aa3a-aa266b8da149,f60cb71a-f451-426a-aa3a-aa266b8da149,1,0,641ebe22-7135-4adb-bbd6-e0c37d246a2d,641ebe22-7135-4adb-bbd6-e0c37d246a2d,1,0,f71ba01e-9f6b-4241-8048-4368c8888756,f71ba01e-9f6b-4241-8048-4368c8888756,1,0,6aa814fa-417e-428c-951e-6efd9d0775da,6aa814fa-417e-428c-951e-6efd9d0775da,1,0,a247efe1-8608-4780-9cc8-54e29944475b,a247efe1-8608-4780-9cc8-54e29944475b,1,0,4b8c3c82-6e8f-469e-8a80-144361d1d0b2,4b8c3c82-6e8f-469e-8a80-144361d1d0b2,1,0,a8f162e9-3f59-41a5-b82f-da20928213c7,a8f162e9-3f59-41a5-b82f-da20928213c7,1,0,ade68dfd-5037-4fd7-b043-9514e3fe6342,ade68dfd-5037-4fd7-b043-9514e3fe6342,1,0,7b008aad-9d05-43e1-8295-62ae58cfff42,7b008aad-9d05-43e1-8295-62ae58cfff42,1,0,fdaf9255-d621-4a98-9530-f618ed440795,fdaf9255-d621-4a98-9530-f618ed440795,1,0,48cefa96-46c7-4870-a096-951dcbae479a,48cefa96-46c7-4870-a096-951dcbae479a,1,0,d74e01cc-941b-4974-8771-0bd2e0d86724,d74e01cc-941b-4974-8771-0bd2e0d86724,1,0,0daac965-2026-4acc-8ba1-3c1f01779257,0daac965-2026-4acc-8ba1-3c1f01779257,1,0,65a331c0-7501-49f6-8027-35b703d11834,65a331c0-7501-49f6-8027-35b703d11834,1,0,c67fab0a-704f-43ae-bd03-4b5b1a880b24,c67fab0a-704f-43ae-bd03-4b5b1a880b24,1,0,aae09896-3b22-4d7d-9059-e47660f8b88b,aae09896-3b22-4d7d-9059-e47660f8b88b,1,0,c1703a14-61a0-4461-8ad8-7173e2c431fe,c1703a14-61a0-4461-8ad8-7173e2c431fe,1,0,b1b5841d-0cf9-4de5-8561-b35b8f286d21,b1b5841d-0cf9-4de5-8561-b35b8f286d21,1,0,aecf5653-3005-43f2-ab49-40977e70f02b,aecf5653-3005-43f2-ab49-40977e70f02b,1,0,4093fe34-7557-4f15-831b-d654b94b8010,4093fe34-7557-4f15-831b-d654b94b8010,1,0,ee10023f-5c63-4cb3-8e6c-db566c788c9d,ee10023f-5c63-4cb3-8e6c-db566c788c9d,1,0,475f8577-a141-496b-94e1-53215c0dd017,475f8577-a141-496b-94e1-53215c0dd017,1,0,97638762-c01e-4c8f-88e2-b356e517e18f,97638762-c01e-4c8f-88e2-b356e517e18f,1,0,074e34f2-e9be-4bd3-beca-8b916772e2be,074e34f2-e9be-4bd3-beca-8b916772e2be,1,0,28fecf1b-7cab-4087-b66e-2052edb8ce3a,28fecf1b-7cab-4087-b66e-2052edb8ce3a,1,0,252eb146-0d23-46ae-9feb-ee04531dd7d8,252eb146-0d23-46ae-9feb-ee04531dd7d8,1,0,d85b00b7-b0d8-4b91-8d7f-0c2da524d446,d85b00b7-b0d8-4b91-8d7f-0c2da524d446,1,0,cc906f05-5ea6-43cb-a084-c4ee51ca4bd5,cc906f05-5ea6-43cb-a084-c4ee51ca4bd5,1,0,ce5549bd-ba99-4259-86a3-36521bad59f5,ce5549bd-ba99-4259-86a3-36521bad59f5,1,0,f5417147-4d2a-4e49-911b-2bb5eccb8441,f5417147-4d2a-4e49-911b-2bb5eccb8441,1,0,20fbed2b-4393-4de0-a71d-017a336bdac0,20fbed2b-4393-4de0-a71d-017a336bdac0,1,0,2ca4fc58-798b-4fc3-8673-27688ce7a1f2,2ca4fc58-798b-4fc3-8673-27688ce7a1f2,1,0,41f6f6d1-b7cf-4477-907b-ce69fc08c799,41f6f6d1-b7cf-4477-907b-ce69fc08c799,1,0,0d124daf-dc52-4391-a2d9-3c43a45c422c,0d124daf-dc52-4391-a2d9-3c43a45c422c,1,0,a300ecc3-8031-4a50-a17d-b08cf3a72139,a300ecc3-8031-4a50-a17d-b08cf3a72139,1,0,e7e78b7e-b103-40d6-8064-f84e2d86ca3d,e7e78b7e-b103-40d6-8064-f84e2d86ca3d,1,0,44b28019-01c0-468d-9b60-e050ff8b71ac,44b28019-01c0-468d-9b60-e050ff8b71ac,1,0,69f6173c-a570-41ff-b07f-5b85f7187515,69f6173c-a570-41ff-b07f-5b85f7187515,1,0,9c443dd3-4acb-4c5a-9c4b-af8b0c87e861,9c443dd3-4acb-4c5a-9c4b-af8b0c87e861,1,0,98153b59-8cc6-4dc7-b945-99c1146d07da,98153b59-8cc6-4dc7-b945-99c1146d07da,1,0,3e2828b4-2b55-471e-ac69-55119c2480f8,3e2828b4-2b55-471e-ac69-55119c2480f8,1,0,df9db8d5-c5c2-4a9d-88fe-77247b2c417e,df9db8d5-c5c2-4a9d-88fe-77247b2c417e,1,0,9da32b56-ff89-4739-bb99-615074b72298,9da32b56-ff89-4739-bb99-615074b72298,1,0,08baf3ee-b8ca-4f29-89fc-c15344064ad3,08baf3ee-b8ca-4f29-89fc-c15344064ad3,1,0,4766c40e-6330-4c1d-a64f-0c8c672886a4,4766c40e-6330-4c1d-a64f-0c8c672886a4,1,0,01b85e3a-9920-425a-9de5-5079fffeef93,01b85e3a-9920-425a-9de5-5079fffeef93,1,0,82e12316-cc64-4d2f-83fa-054b5a738f02,82e12316-cc64-4d2f-83fa-054b5a738f02,1,0,6b70f7e1-8bdb-4fc4-9b95-0e045bfa288c,6b70f7e1-8bdb-4fc4-9b95-0e045bfa288c,1,0,a890be6b-f050-4ea4-a388-570948ffd22b,a890be6b-f050-4ea4-a388-570948ffd22b,1,0,b00c31d6-4fc6-4189-9f72-f91742ec705f,b00c31d6-4fc6-4189-9f72-f91742ec705f,1,0,1333101b-82e8-41a9-a793-5af5dcd6f68a,1333101b-82e8-41a9-a793-5af5dcd6f68a,1,0,766c9bee-b0fc-4a7f-b88e-cd8c4aad73b8,766c9bee-b0fc-4a7f-b88e-cd8c4aad73b8,1,0,3ba630c2-cdc1-40a8-a24e-538ddb1abe38,3ba630c2-cdc1-40a8-a24e-538ddb1abe38,1,0,0f25646a-90f9-4747-a778-7efdaabc284c,0f25646a-90f9-4747-a778-7efdaabc284c,1,0,3a2d9324-8260-478d-ad62-a964d860cb8f,3a2d9324-8260-478d-ad62-a964d860cb8f,1,0,9b9cd161-5bee-4433-a0ec-b67deb099b5e,9b9cd161-5bee-4433-a0ec-b67deb099b5e,1,0,ca179cb5-65e1-4a55-bf12-096b926accb0,ca179cb5-65e1-4a55-bf12-096b926accb0,1,0,d508b3e9-4dac-40a3-9a0b-1cc76b4196ea,d508b3e9-4dac-40a3-9a0b-1cc76b4196ea,1,0,63470706-f14b-4733-87c2-d1173f5d7e7a,63470706-f14b-4733-87c2-d1173f5d7e7a,1,0,472ce1c2-9e83-418b-b1ec-e15e126bc919,472ce1c2-9e83-418b-b1ec-e15e126bc919,1,0,9fe30414-8261-4403-a854-f22b61824f69,9fe30414-8261-4403-a854-f22b61824f69,1,0,c587a9f3-7512-4697-8156-c688fbb210d0,c587a9f3-7512-4697-8156-c688fbb210d0,1,0,07bb26ac-bd97-465f-a192-db7fedbb579b,07bb26ac-bd97-465f-a192-db7fedbb579b,1,0,76cdcc51-0e6a-4f9c-a115-1864998c2add,76cdcc51-0e6a-4f9c-a115-1864998c2add,1,0,71c3e5d3-7504-433f-9d48-7c287b2b863b,71c3e5d3-7504-433f-9d48-7c287b2b863b,1,0,bb129cf2-5a5a-433a-924a-a1d0d895644a,bb129cf2-5a5a-433a-924a-a1d0d895644a,1,0,faa34cb8-2d48-4851-a839-fc40536a0234,faa34cb8-2d48-4851-a839-fc40536a0234,1,0,0894db61-51f6-4068-9634-e55d95e2a8ac,0894db61-51f6-4068-9634-e55d95e2a8ac,1,0,ad3fb691-68b2-4d65-93ab-ab8fcb77e035,ad3fb691-68b2-4d65-93ab-ab8fcb77e035,1,0,67aed41e-9707-4007-bb3c-7273476664bb,67aed41e-9707-4007-bb3c-7273476664bb,1,0,0d8c215d-1210-47a2-897d-a3257b9f849a,0d8c215d-1210-47a2-897d-a3257b9f849a,1,0,954e7804-e8b1-42aa-9d49-bef73f9d13d1,954e7804-e8b1-42aa-9d49-bef73f9d13d1,1,0,c971e0ba-53b8-4454-92f7-40b0d639058a,c971e0ba-53b8-4454-92f7-40b0d639058a,1,0,ed297409-6215-4fd4-b47d-a2247e0343da,ed297409-6215-4fd4-b47d-a2247e0343da,1,0,5ae2a1de-6380-45cc-9c8f-5612cd5ba627,5ae2a1de-6380-45cc-9c8f-5612cd5ba627,1,0,e8aa2ba2-7dfa-47e3-bc18-6156f700ceed,e8aa2ba2-7dfa-47e3-bc18-6156f700ceed,1,0,8c472f51-47ec-43c4-9858-fd19ac3e17f3,8c472f51-47ec-43c4-9858-fd19ac3e17f3,1,0,c54f31ce-114b-46d3-b4c6-12c8f07727ca,c54f31ce-114b-46d3-b4c6-12c8f07727ca,1,0,5a9c82c1-d0cd-48ff-b91c-38b950591e4c,5a9c82c1-d0cd-48ff-b91c-38b950591e4c,1,0,59855d19-29cd-4efd-a453-b19e574113ef,59855d19-29cd-4efd-a453-b19e574113ef,1,0,249b6436-bd44-4950-b118-7f40f7aaf794,249b6436-bd44-4950-b118-7f40f7aaf794,1,0,712c2b73-4697-4581-a095-70555aee8be2,712c2b73-4697-4581-a095-70555aee8be2,1,0,c1508d67-ac6d-41e3-884d-b3bdd54659f8,c1508d67-ac6d-41e3-884d-b3bdd54659f8,1,0,3436b16e-ef5b-4abb-9aad-c70a7c8560ed,3436b16e-ef5b-4abb-9aad-c70a7c8560ed,1,0,9dd57f32-90a1-4a1d-bc2a-c1b12461d963,9dd57f32-90a1-4a1d-bc2a-c1b12461d963,1,0,ce6d1259-af90-482b-b19a-405512321bd9,ce6d1259-af90-482b-b19a-405512321bd9,1,0,eb276904-cad7-4401-bb78-2d13946291f1,eb276904-cad7-4401-bb78-2d13946291f1,1,0,79ff04ac-4625-469b-916e-938f04de4dd2,79ff04ac-4625-469b-916e-938f04de4dd2,1,0,35103a27-230c-45c0-a8c9-24bd46608bbb,35103a27-230c-45c0-a8c9-24bd46608bbb,1,0,c5e9f987-4466-4161-8e36-278b0b3ce056,c5e9f987-4466-4161-8e36-278b0b3ce056,1,0,b6566d54-e821-4a2a-a447-0f533f35de91,b6566d54-e821-4a2a-a447-0f533f35de91,1,0,46568b9a-a765-4037-8a86-b184a570ab37,46568b9a-a765-4037-8a86-b184a570ab37,1,0,4fcc7278-2fec-49ee-b0ef-c7d5f5f698a4,4fcc7278-2fec-49ee-b0ef-c7d5f5f698a4,1,0,547a6dec-6fe8-439d-a8d9-ac2612af20d2,547a6dec-6fe8-439d-a8d9-ac2612af20d2,1,0,2bc2c4b7-dacb-4cb3-b5b2-712b19bebcd7,2bc2c4b7-dacb-4cb3-b5b2-712b19bebcd7,1,0,84395058-d46a-428c-b782-a9fa89fea14a,84395058-d46a-428c-b782-a9fa89fea14a,1,0,64f667e5-6a8f-448f-aed5-a4d461232845,64f667e5-6a8f-448f-aed5-a4d461232845,1,0,a148cdff-0e67-48e6-9cc5-e8a6f5aa1ae8,a148cdff-0e67-48e6-9cc5-e8a6f5aa1ae8,1,0,037842ca-aeaf-4e27-9a0e-e929438b6f40,037842ca-aeaf-4e27-9a0e-e929438b6f40,1,0,ab6fdd75-2ea6-4408-8c03-0cfab775a7a0,ab6fdd75-2ea6-4408-8c03-0cfab775a7a0,1,0,2c8ab5a6-66d5-4b6f-94ae-4292724ded7f,2c8ab5a6-66d5-4b6f-94ae-4292724ded7f,1,0,de25a90c-4b46-4340-b649-93e16dde33de,de25a90c-4b46-4340-b649-93e16dde33de,1,0,4f2d0398-49f4-410c-a451-436cbf96a262,4f2d0398-49f4-410c-a451-436cbf96a262,1,0,b2c8bd74-21c9-4495-93e2-ca5355698350,b2c8bd74-21c9-4495-93e2-ca5355698350,1,0,39bc2bc6-2a4f-4e26-b1b9-fb8473234f09,39bc2bc6-2a4f-4e26-b1b9-fb8473234f09,1,0,cc9679a5-1ed2-4290-8c9b-8a2f6614d053,cc9679a5-1ed2-4290-8c9b-8a2f6614d053,1,0,93016393-c637-4d81-8675-aa5e51e678e0,93016393-c637-4d81-8675-aa5e51e678e0,1,0,d8621f68-106e-4058-963f-56010491ae2e,d8621f68-106e-4058-963f-56010491ae2e,1,0,670639a7-02a7-4108-81b8-cb93233fd2a5,670639a7-02a7-4108-81b8-cb93233fd2a5,1,0,f2e2df50-52fc-4e95-909b-80fc91a68f62,f2e2df50-52fc-4e95-909b-80fc91a68f62,1,0,1a1d8dd0-1559-426c-ad3c-baa6eb3a53db,1a1d8dd0-1559-426c-ad3c-baa6eb3a53db,1,0,7a944c45-9b3d-411f-b2ef-de3c896092bb,7a944c45-9b3d-411f-b2ef-de3c896092bb,1,0,d2762764-b5c0-4aeb-8e89-3371972f22d8,d2762764-b5c0-4aeb-8e89-3371972f22d8,1,0,d67a1377-f69f-48d9-824d-2ede2594e630,d67a1377-f69f-48d9-824d-2ede2594e630,1,0,573f1753-9194-4aaf-9217-5cac70ff108f,573f1753-9194-4aaf-9217-5cac70ff108f,1,0,50d3e00e-1a83-4bd5-91db-0561560caf42,50d3e00e-1a83-4bd5-91db-0561560caf42,1,0,1f7ec25a-05b1-468b-8857-2bb1aed3678a,1f7ec25a-05b1-468b-8857-2bb1aed3678a,1,0,c121b8bc-ecbf-4775-b210-3c1e3502a6ac,c121b8bc-ecbf-4775-b210-3c1e3502a6ac,1,0,9f4d5fe5-9bda-4ba9-a313-db1ab0ea14d1,9f4d5fe5-9bda-4ba9-a313-db1ab0ea14d1,1,0,4a1e6d25-89e7-468a-aef1-6ded0154dca2,4a1e6d25-89e7-468a-aef1-6ded0154dca2,1,0,44afff59-0590-4929-93b8-7b49735f21b5,44afff59-0590-4929-93b8-7b49735f21b5,1,0,905624ea-b253-413f-b651-1eb2c5a7d52a,905624ea-b253-413f-b651-1eb2c5a7d52a,1,0,b639ed30-3e37-4c65-a39f-00fe735950eb,b639ed30-3e37-4c65-a39f-00fe735950eb,1,0,76ef7f67-0ce8-4ee2-9134-e793c41b8de3,76ef7f67-0ce8-4ee2-9134-e793c41b8de3,1,0,f137eb0f-bde7-412d-9229-d7a4f9456e6c,f137eb0f-bde7-412d-9229-d7a4f9456e6c,1,0,90880131-8065-4a7e-a0fa-ecff9e27363c,90880131-8065-4a7e-a0fa-ecff9e27363c,1,0,57e9fcea-342c-4089-bd10-befb3faf0dbd,57e9fcea-342c-4089-bd10-befb3faf0dbd,1,0,f59f5511-87c5-4600-9d37-dc019bf0a6aa,f59f5511-87c5-4600-9d37-dc019bf0a6aa,1,0,6b10167a-f5c3-4d7b-b444-d5ff6e705ea4,6b10167a-f5c3-4d7b-b444-d5ff6e705ea4,1,0,f85ff11a-163e-4d18-98bc-b0ebe83d34e4,f85ff11a-163e-4d18-98bc-b0ebe83d34e4,1,0,51a0444d-13c8-45a8-97f6-f3f976964bf8,51a0444d-13c8-45a8-97f6-f3f976964bf8,1,0,9892f922-8745-4164-a200-94b5edc1ea0a,9892f922-8745-4164-a200-94b5edc1ea0a,1,0,38eb3fd1-57be-4dc2-bed4-d8107086bf2a,38eb3fd1-57be-4dc2-bed4-d8107086bf2a,1,0,6b6d541b-5dc1-4150-b8d1-5844a694ac6a,6b6d541b-5dc1-4150-b8d1-5844a694ac6a,1,0,2b1619a6-c841-4963-8c51-c1d8d6ba3746,2b1619a6-c841-4963-8c51-c1d8d6ba3746,1,0,eab50f82-4612-47fd-a5c2-9678016a1937,eab50f82-4612-47fd-a5c2-9678016a1937,1,0,4212bb94-7c24-4d4f-8bb8-4060bd21a135,4212bb94-7c24-4d4f-8bb8-4060bd21a135,1,0,2609ba3c-e4de-45b3-86e0-93db39a21eee,2609ba3c-e4de-45b3-86e0-93db39a21eee,1,0,00dcfeab-7ba1-4a50-996e-4fd693dd0514,00dcfeab-7ba1-4a50-996e-4fd693dd0514,1,0,d21971c9-9aa6-448a-ab37-49ad0b0547ec,d21971c9-9aa6-448a-ab37-49ad0b0547ec,1,0,627438b8-c738-4e02-a0e7-cfd7fbf8eca1,627438b8-c738-4e02-a0e7-cfd7fbf8eca1,1,0,30a87c95-4d55-4b68-877f-1055e1c1afa7,30a87c95-4d55-4b68-877f-1055e1c1afa7,1,0,00418e6c-77b2-4753-b9ff-3a8013436f8a,00418e6c-77b2-4753-b9ff-3a8013436f8a,1,0,8deaa3d0-b36b-4f20-a9a8-11d829f5ef9d,8deaa3d0-b36b-4f20-a9a8-11d829f5ef9d,1,0,4d660fec-4a76-470e-bba9-3d031941b289,4d660fec-4a76-470e-bba9-3d031941b289,1,0,26986f8d-d56d-4641-9184-2632d0881cca,26986f8d-d56d-4641-9184-2632d0881cca,1,0,144676de-f369-49f1-bb21-d60e073936df,144676de-f369-49f1-bb21-d60e073936df,1,0,d5537afb-df5f-4edf-a3d3-ff6b2a908ad9,d5537afb-df5f-4edf-a3d3-ff6b2a908ad9,1,0,d9f1f56b-75c8-43e9-8043-89076c225f78,d9f1f56b-75c8-43e9-8043-89076c225f78,1,0,a3c9a7eb-2104-4402-954c-3e12de4a7de3,a3c9a7eb-2104-4402-954c-3e12de4a7de3,1,0,38bf6d3b-5435-4bac-b9fc-23b80afeb760,38bf6d3b-5435-4bac-b9fc-23b80afeb760,1,0,a2a51b70-9570-4f53-9d30-e9a9b099a475,a2a51b70-9570-4f53-9d30-e9a9b099a475,1,0,556a0e57-5b3b-4303-a013-0bd296c506b8,556a0e57-5b3b-4303-a013-0bd296c506b8,1,0,21c1b2d3-cd96-4cdd-9ccc-ada27b127969,21c1b2d3-cd96-4cdd-9ccc-ada27b127969,1,0,fabbac92-cb98-4087-b3fa-387482ed0d86,fabbac92-cb98-4087-b3fa-387482ed0d86,1,0,304525f8-c697-4835-b0a6-4ed3cbcaf3c6,304525f8-c697-4835-b0a6-4ed3cbcaf3c6,1,0,fdcbe67c-55fb-444d-bed8-cee956ca3530,fdcbe67c-55fb-444d-bed8-cee956ca3530,1,0,e09534e3-ac6e-42a6-86e8-564acb20089a,e09534e3-ac6e-42a6-86e8-564acb20089a,1,0,6ff5b3cb-efff-430d-bf0a-957405f116ca,6ff5b3cb-efff-430d-bf0a-957405f116ca,1,0,d06e845a-9f54-40dd-b0df-6988def62017,d06e845a-9f54-40dd-b0df-6988def62017,1,0,7badb97b-c359-42af-9066-6bbfc0650cf9,7badb97b-c359-42af-9066-6bbfc0650cf9,1,0,63223883-06cf-4d01-be95-5e410cc58a22,63223883-06cf-4d01-be95-5e410cc58a22,1,0,1929139f-dabb-4c40-9423-158093360889,1929139f-dabb-4c40-9423-158093360889,1,0,dad92df4-685b-4260-b35f-4d031262dfea,dad92df4-685b-4260-b35f-4d031262dfea,1,0,4399c19a-ddba-42e9-88b4-c5c28abad237,4399c19a-ddba-42e9-88b4-c5c28abad237,1,0,982315ba-df74-4a31-8929-71d1e5e6f147,982315ba-df74-4a31-8929-71d1e5e6f147,1,0,8d1c01a9-9806-4e5d-bafb-ce6af11d5650,8d1c01a9-9806-4e5d-bafb-ce6af11d5650,1,0,fd3a6a7e-203d-447a-aebd-7626579387fb,fd3a6a7e-203d-447a-aebd-7626579387fb,1,0,8014684f-e1f1-4163-9083-459a009c0aac,8014684f-e1f1-4163-9083-459a009c0aac,1,0,ad6384d5-278b-44d3-993a-d5a39e7c98ca,ad6384d5-278b-44d3-993a-d5a39e7c98ca,1,0,ff976027-75e8-475c-abfa-876d36733c13,ff976027-75e8-475c-abfa-876d36733c13,1,0,7452d9c0-cb03-4d1b-afd4-8855950f2ad8,7452d9c0-cb03-4d1b-afd4-8855950f2ad8,1,0,32d4a42d-6e4d-49db-b5bc-1ea6dbe9fe4d,32d4a42d-6e4d-49db-b5bc-1ea6dbe9fe4d,1,0,ba026c72-2c07-4131-a711-339cd3c5fb95,ba026c72-2c07-4131-a711-339cd3c5fb95,1,0,3f823f5b-e5a8-40af-8fc3-e4c6ffb18fa3,3f823f5b-e5a8-40af-8fc3-e4c6ffb18fa3,1,0,b3554203-b930-496d-a712-353bc13a0946,b3554203-b930-496d-a712-353bc13a0946,1,0,59775ce0-f778-45f6-9453-bbd0a0ec1f27,59775ce0-f778-45f6-9453-bbd0a0ec1f27,1,0,f772abd3-8ea0-41e9-aaca-c5375778941a,f772abd3-8ea0-41e9-aaca-c5375778941a,1,0,a1e494f8-96a4-41bd-9234-b87e8d8742c5,a1e494f8-96a4-41bd-9234-b87e8d8742c5,1,0,ef6250de-a4ef-48d8-94d6-f4029e63d7d2,ef6250de-a4ef-48d8-94d6-f4029e63d7d2,1,0,b322b047-16eb-4500-826a-6dfebb7d997a,b322b047-16eb-4500-826a-6dfebb7d997a,1,0,bbbc2d1f-2f78-4b7e-b5fb-ca7c74051221,bbbc2d1f-2f78-4b7e-b5fb-ca7c74051221,1,0,83ead93b-4ff6-487d-934e-25088944fccc,83ead93b-4ff6-487d-934e-25088944fccc,1,0,764c76cc-0473-4633-868d-02f96aa43c10,764c76cc-0473-4633-868d-02f96aa43c10,1,0,c8da922f-e31e-49b0-b90e-1c060424bde5,c8da922f-e31e-49b0-b90e-1c060424bde5,1,0,41462827-fd8b-4ee6-a739-a884d704bba5,41462827-fd8b-4ee6-a739-a884d704bba5,1,0,7b01236c-5ab7-43fa-aa0e-1ae55c8a4efe,7b01236c-5ab7-43fa-aa0e-1ae55c8a4efe,1,0,eca025d2-4fe9-4542-b9f5-46ae2631256e,eca025d2-4fe9-4542-b9f5-46ae2631256e,1,0,35bc58df-8aff-48dd-83a9-b60b0461f94d,35bc58df-8aff-48dd-83a9-b60b0461f94d,1,0,0f46ae6b-9fe8-471a-a59f-af5e66cb9e00,0f46ae6b-9fe8-471a-a59f-af5e66cb9e00,1,0,cf13e2d9-72a0-47c0-bae2-f674024bbdb2,cf13e2d9-72a0-47c0-bae2-f674024bbdb2,1,0,feb1a5c1-c805-4079-8f05-8a44f51b0b02,feb1a5c1-c805-4079-8f05-8a44f51b0b02,1,0,ff7916bd-cbd1-4d9e-8aab-bad9fffaa0d4,ff7916bd-cbd1-4d9e-8aab-bad9fffaa0d4,1,0,1f55f330-7c0a-4a29-905f-51d664515bc5,1f55f330-7c0a-4a29-905f-51d664515bc5,1,0,6106e958-354c-4211-992c-3c3819e8828e,6106e958-354c-4211-992c-3c3819e8828e,1,0,9d6d77a9-1f55-4162-93a5-14bb3f3febaf,9d6d77a9-1f55-4162-93a5-14bb3f3febaf,1,0,61789ea5-aad2-4b3b-a1c7-3ff7409379eb,61789ea5-aad2-4b3b-a1c7-3ff7409379eb,1,0,2cd04d4c-2619-40c9-adf4-7bb281f045b6,2cd04d4c-2619-40c9-adf4-7bb281f045b6,1,0,1d6b8425-360c-4ab1-9bab-cc9a3b590bb2,1d6b8425-360c-4ab1-9bab-cc9a3b590bb2,1,0,9f67d228-79aa-44e6-8dc7-fae4fbdfef2a,9f67d228-79aa-44e6-8dc7-fae4fbdfef2a,1,0,231d3950-f363-4e63-83cd-8ddb81507c27,231d3950-f363-4e63-83cd-8ddb81507c27,1,0,87429f11-bf95-4013-bf13-da904570f88d,87429f11-bf95-4013-bf13-da904570f88d,1,0,6173cab2-e0f5-40c1-8e74-4f41fc8bd68f,6173cab2-e0f5-40c1-8e74-4f41fc8bd68f,1,0,feb41347-62db-41cf-ace0-d8b9de361af3,feb41347-62db-41cf-ace0-d8b9de361af3,1,0,5a088468-4065-4e0c-9b84-1162de8d3fdd,5a088468-4065-4e0c-9b84-1162de8d3fdd,1,0,dbdf3ae7-a0af-44b9-8e3d-c402d98cda03,dbdf3ae7-a0af-44b9-8e3d-c402d98cda03,1,0,cdce186a-229d-492d-8811-147fc4d7cdf5,cdce186a-229d-492d-8811-147fc4d7cdf5,1,0,5f91b00f-d8fc-4d63-8486-66339357ab22,5f91b00f-d8fc-4d63-8486-66339357ab22,1,0,16d44ab1-4bce-4df8-a215-6ed5173c75a8,16d44ab1-4bce-4df8-a215-6ed5173c75a8,1,0,543f976e-fea3-4a51-9962-b8e0fcd3f707,543f976e-fea3-4a51-9962-b8e0fcd3f707,1,0,375977c1-5745-4e78-a4df-cef966c0ccf8,375977c1-5745-4e78-a4df-cef966c0ccf8,1,0,2582a714-a6d6-4d37-b9a7-5e89e18b0f27,2582a714-a6d6-4d37-b9a7-5e89e18b0f27,1,0,c3796d85-2a24-43c4-9673-64e56249a1d0,c3796d85-2a24-43c4-9673-64e56249a1d0,1,0,fc1066b5-20d4-4c73-85f8-9889e554d6e1,fc1066b5-20d4-4c73-85f8-9889e554d6e1,1,0,a9b6b5fd-1862-4207-87e8-5c25a8f86c57,a9b6b5fd-1862-4207-87e8-5c25a8f86c57,1,0,731211c2-ef90-4883-9525-83cd91b742ac,731211c2-ef90-4883-9525-83cd91b742ac,1,0,0adf02da-940a-4bfc-afa5-59605494a169,0adf02da-940a-4bfc-afa5-59605494a169,1,0,50a1e3bf-8624-4474-854e-21b89aaf97ed,50a1e3bf-8624-4474-854e-21b89aaf97ed,1,0,6c7b82ca-37b0-4f67-b7fa-ab1b77c0fb61,6c7b82ca-37b0-4f67-b7fa-ab1b77c0fb61,1,0,24f9d1a6-73d0-4cc7-b3ca-d36c5c7a9892,24f9d1a6-73d0-4cc7-b3ca-d36c5c7a9892,1,0,847b97a3-d0bc-45e2-b06c-932bb22d8eca,847b97a3-d0bc-45e2-b06c-932bb22d8eca,1,0,503b3eab-b7f1-4ede-8845-3290a834cec7,503b3eab-b7f1-4ede-8845-3290a834cec7,1,0,8361991a-0f30-4a03-9a4c-90556b744f53,8361991a-0f30-4a03-9a4c-90556b744f53,1,0,3116fa60-bc42-4dea-aa03-387896168690,3116fa60-bc42-4dea-aa03-387896168690,1,0,5a3cc2a8-f519-45ac-af9b-c57a4f1acdc0,5a3cc2a8-f519-45ac-af9b-c57a4f1acdc0,1,0,08427a9a-fb3a-4bc1-b2e2-72e4f89680cd,08427a9a-fb3a-4bc1-b2e2-72e4f89680cd,1,0,f9196766-4ae2-4a73-bed6-4a8838323e02,f9196766-4ae2-4a73-bed6-4a8838323e02,1,0,ca797560-8802-4bdc-b21f-7a7fd795beae,ca797560-8802-4bdc-b21f-7a7fd795beae,1,0,56242b05-d722-4d4a-82d9-517e0e169d0b,56242b05-d722-4d4a-82d9-517e0e169d0b,1,0,5504f5d1-35d8-4a47-a0e1-003fe00395c1,5504f5d1-35d8-4a47-a0e1-003fe00395c1,1,0,73c1a829-0191-486b-97a0-7f333c6f8011,73c1a829-0191-486b-97a0-7f333c6f8011,1,0,4eeda6df-fb48-4c88-853f-9c35e2b3a3cf,4eeda6df-fb48-4c88-853f-9c35e2b3a3cf,1,0,06afe397-1c7e-400e-bb24-f8e611d114e8,06afe397-1c7e-400e-bb24-f8e611d114e8,1,0,f0105e51-9510-426a-8aa0-af827d93ffd9,f0105e51-9510-426a-8aa0-af827d93ffd9,1,0,3df19dbf-efe7-4e31-99ad-fafb59ec1329,3df19dbf-efe7-4e31-99ad-fafb59ec1329,1,0,baf12d47-fbfe-4563-aa23-26d9f7e83169,baf12d47-fbfe-4563-aa23-26d9f7e83169,1,0,e2046f49-6fea-4bf4-92b0-92f3c8357bcf,e2046f49-6fea-4bf4-92b0-92f3c8357bcf,1,0,0ba11486-1972-4434-ab1a-5bb75cc05e9f,0ba11486-1972-4434-ab1a-5bb75cc05e9f,1,0,4ed9c555-7dd0-4577-bf62-152b4c5ec9f2,4ed9c555-7dd0-4577-bf62-152b4c5ec9f2,1,0,11fe3a42-98c4-49ba-b697-86ffb172f16f,11fe3a42-98c4-49ba-b697-86ffb172f16f,1,0,07b53818-7318-4400-8af5-457fac012755,07b53818-7318-4400-8af5-457fac012755,1,0,292b47e7-5cf3-462d-a466-dac6253a7f03,292b47e7-5cf3-462d-a466-dac6253a7f03,1,0,8ecc070f-f6fb-46b1-9636-b77aa80f8804,8ecc070f-f6fb-46b1-9636-b77aa80f8804,1,0,8405be9d-465b-4744-b04f-03933b52f02e,8405be9d-465b-4744-b04f-03933b52f02e,1,0,a8021ff9-f0ae-49ab-b8ac-5e3d8fe90d82,a8021ff9-f0ae-49ab-b8ac-5e3d8fe90d82,1,0,f09b09ce-9e3c-406a-8508-b6e7e6ec966e,f09b09ce-9e3c-406a-8508-b6e7e6ec966e,1,0,9bf55587-1ffe-42bc-b8e8-3f956956f689,9bf55587-1ffe-42bc-b8e8-3f956956f689,1,0,2f67931e-543f-457e-80fd-78ca754e2e9c,2f67931e-543f-457e-80fd-78ca754e2e9c,1,0,595e5752-36a7-4bba-8a40-26920acae01d,595e5752-36a7-4bba-8a40-26920acae01d,1,0,28801fba-c429-4afa-bdcd-b3ec3ec22fda,28801fba-c429-4afa-bdcd-b3ec3ec22fda,1,0,d1a873ae-d45b-4600-9419-e701dce3da02,d1a873ae-d45b-4600-9419-e701dce3da02,1,0,e3a31f0d-a98f-43c6-bc39-087095ae8c39,e3a31f0d-a98f-43c6-bc39-087095ae8c39,1,0,e39d8ff3-52db-4ba4-b4ea-42d5ee787076,e39d8ff3-52db-4ba4-b4ea-42d5ee787076,1,0,b1c1c2eb-f9cd-468a-8398-b0b7f611f832,b1c1c2eb-f9cd-468a-8398-b0b7f611f832,1,0,4bb0f7c3-62f3-4352-9bc8-e243dd18fe4a,4bb0f7c3-62f3-4352-9bc8-e243dd18fe4a,1,0,bc106ef9-3eeb-40d4-aa59-ae1855ba1744,bc106ef9-3eeb-40d4-aa59-ae1855ba1744,1,0,73d8b319-9bea-4638-a602-23c12f37c227,73d8b319-9bea-4638-a602-23c12f37c227,1,0,cef55e64-d4ad-42dc-aa5a-ea65a3af7cfa,cef55e64-d4ad-42dc-aa5a-ea65a3af7cfa,1,0,a43e9de0-2921-4c58-a5f8-7446258be967,a43e9de0-2921-4c58-a5f8-7446258be967,1,0,307656e3-df7f-46e7-946c-bbd439265c95,307656e3-df7f-46e7-946c-bbd439265c95,1,0,eb3dfdc7-58b8-4b1f-b079-368c262364c9,eb3dfdc7-58b8-4b1f-b079-368c262364c9,1,0,5030a318-f8f7-4ec7-80d6-6eee0772562f,5030a318-f8f7-4ec7-80d6-6eee0772562f,1,0,242e911d-e49c-4b8a-8543-cc2e079220fd,242e911d-e49c-4b8a-8543-cc2e079220fd,1,0,9ea39d31-3775-4fb8-a3f3-202e54354d49,9ea39d31-3775-4fb8-a3f3-202e54354d49,1,0,73044e20-148c-46e9-b5b5-973c91de0d61,73044e20-148c-46e9-b5b5-973c91de0d61,1,0,f8ab477c-8e78-48c0-9f99-27748b109706,f8ab477c-8e78-48c0-9f99-27748b109706,1,0,24cff6c8-6c20-4383-b97c-6afa52738960,24cff6c8-6c20-4383-b97c-6afa52738960,1,0,462e2694-750d-49ef-93ac-17a7779be68d,462e2694-750d-49ef-93ac-17a7779be68d,1,0,c24ff02e-5afc-45df-81cf-64ea2b261c2d,c24ff02e-5afc-45df-81cf-64ea2b261c2d,1,0,2d51aae9-650d-4719-a94d-2609b69a2d36,2d51aae9-650d-4719-a94d-2609b69a2d36,1,0,6025f5b5-6dc7-46b8-96e6-02823c5b4de7,6025f5b5-6dc7-46b8-96e6-02823c5b4de7,1,0,5d9d88ea-b2e4-425c-bb4d-a005e867d56c,5d9d88ea-b2e4-425c-bb4d-a005e867d56c,1,0,b76d342c-0f9d-4eb0-b49e-a9f472a4dd0d,b76d342c-0f9d-4eb0-b49e-a9f472a4dd0d,1,0,85639a53-b367-49ce-84f2-4e21d81c489b,85639a53-b367-49ce-84f2-4e21d81c489b,1,0,24b59586-178e-4efc-90ae-529553f3bb6c,24b59586-178e-4efc-90ae-529553f3bb6c,1,0,20e75dd5-222a-4100-aa43-3684991e3f21,20e75dd5-222a-4100-aa43-3684991e3f21,1,0,3c611832-4bc2-4229-a27d-d5dc82f3a498,3c611832-4bc2-4229-a27d-d5dc82f3a498,1,0,50e9eb52-02e3-44ff-9c9e-e76dbe38da63,50e9eb52-02e3-44ff-9c9e-e76dbe38da63,1,0,5dadc422-1fbd-4918-9db3-09ec72c3404e,5dadc422-1fbd-4918-9db3-09ec72c3404e,1,0,ffdaf8a0-7a8f-4756-bdfc-a0c6ae6c3869,ffdaf8a0-7a8f-4756-bdfc-a0c6ae6c3869,1,0,ab1bcabf-ffb0-4914-8ad0-b94b5aaeab1d,ab1bcabf-ffb0-4914-8ad0-b94b5aaeab1d,1,0,c5478d09-c8d3-4cc6-878e-27656ecc8409,c5478d09-c8d3-4cc6-878e-27656ecc8409,1,0,01b97d2f-40b9-4f12-8bc5-ab75fd160b7c,01b97d2f-40b9-4f12-8bc5-ab75fd160b7c,1,0,75974146-5b1a-412c-b7d5-1575704bbdab,75974146-5b1a-412c-b7d5-1575704bbdab,1,0,949f87cb-258c-4b6b-95ee-8a7491a4b64e,949f87cb-258c-4b6b-95ee-8a7491a4b64e,1,0,8a348012-99dc-4dc9-8bec-0df3caf4cdc5,8a348012-99dc-4dc9-8bec-0df3caf4cdc5,1,0,5c089988-5381-41ed-9f05-f85db46b8d94,5c089988-5381-41ed-9f05-f85db46b8d94,1,0,85a36352-1569-4ce4-aeba-477db524c36d,85a36352-1569-4ce4-aeba-477db524c36d,1,0,ebfb6f80-88f5-4046-8ae7-e11a7b0c1beb,ebfb6f80-88f5-4046-8ae7-e11a7b0c1beb,1,0,d99991b8-3a81-4e18-b0ad-05fc3e3a199b,d99991b8-3a81-4e18-b0ad-05fc3e3a199b,1,0,dd383422-dddb-4a81-9326-015fd345b5c1,dd383422-dddb-4a81-9326-015fd345b5c1,1,0,9a4a0b04-3dfb-4551-90f0-16231f64b14f,9a4a0b04-3dfb-4551-90f0-16231f64b14f,1,0,b2e656c1-f4ff-4d95-b066-4ee11ce4dea8,b2e656c1-f4ff-4d95-b066-4ee11ce4dea8,1,0,2d86d1fc-5367-47b8-804e-7f9c5fc8f3b1,2d86d1fc-5367-47b8-804e-7f9c5fc8f3b1,1,0,98edcd6b-1c50-45c6-9a4c-390827a4ba52,98edcd6b-1c50-45c6-9a4c-390827a4ba52,1,0,b99c2068-15ea-43a1-9e9f-db29647e2387,b99c2068-15ea-43a1-9e9f-db29647e2387,1,0,346cb8b7-a20e-4a06-823e-26dfb2e3e741,346cb8b7-a20e-4a06-823e-26dfb2e3e741,1,0,782cb93d-36e6-4923-b2b6-75caa3459cd6,782cb93d-36e6-4923-b2b6-75caa3459cd6,1,0,0eea37cc-47f8-4819-85da-d4991f4e58ed,0eea37cc-47f8-4819-85da-d4991f4e58ed,1,0,b51eaf45-baa1-4d1c-bcb7-a89bb8bcc26a,b51eaf45-baa1-4d1c-bcb7-a89bb8bcc26a,1,0,5ea29362-0ab7-4ca3-865e-bf93db5ca24b,5ea29362-0ab7-4ca3-865e-bf93db5ca24b,1,0,64ff6058-c6f3-4682-b9a1-11ec438fa447,64ff6058-c6f3-4682-b9a1-11ec438fa447,1,0,ced01234-9417-49ce-adf0-8cdd15e6dd7d,ced01234-9417-49ce-adf0-8cdd15e6dd7d,1,0,c1272bfc-196a-4f99-935f-e2516bc138d2,c1272bfc-196a-4f99-935f-e2516bc138d2,1,0,aa7ceeee-3b3c-49e2-95c2-bfb34e381aa3,aa7ceeee-3b3c-49e2-95c2-bfb34e381aa3,1,0,313e0688-745a-4385-b040-7ef8317a0eb7,313e0688-745a-4385-b040-7ef8317a0eb7,1,0,7fe61c5d-30bc-440d-9e40-12ff3b296616,7fe61c5d-30bc-440d-9e40-12ff3b296616,1,0,37c37f15-f84b-456b-aab6-729562dc0908,37c37f15-f84b-456b-aab6-729562dc0908,1,0,45a2569e-820c-4d7d-ba74-4a781d26bb2b,45a2569e-820c-4d7d-ba74-4a781d26bb2b,1,0,996c7873-1cc9-44f6-915b-5c6ed7ef2370,996c7873-1cc9-44f6-915b-5c6ed7ef2370,1,0,8dc08932-0988-4e82-8a5f-385c0694f9ff,8dc08932-0988-4e82-8a5f-385c0694f9ff,1,0,13dee5d8-f165-48de-9ccb-3ef0239f4b27,13dee5d8-f165-48de-9ccb-3ef0239f4b27,1,0,2767473e-79fb-4c7c-a7d1-a83a8f2df71d,2767473e-79fb-4c7c-a7d1-a83a8f2df71d,1,0,8a13c899-1659-48cf-9aa2-07ca99547b7b,8a13c899-1659-48cf-9aa2-07ca99547b7b,1,0,9395eb9d-6aff-4af5-a6f1-5c39014ba67b,9395eb9d-6aff-4af5-a6f1-5c39014ba67b,1,0,eb3f959c-94a4-4e77-b9f9-e81954254079,eb3f959c-94a4-4e77-b9f9-e81954254079,1,0,f5ef3f75-7d12-4284-844f-54d19d1f7e2f,f5ef3f75-7d12-4284-844f-54d19d1f7e2f,1,0,7974e41d-5af3-4636-b405-c9405d89fb53,7974e41d-5af3-4636-b405-c9405d89fb53,1,0,21fad9b6-44df-417c-ba18-de4b8af98a34,21fad9b6-44df-417c-ba18-de4b8af98a34,1,0,11c086b0-c646-4701-983d-c38758286354,11c086b0-c646-4701-983d-c38758286354,1,0,92876c9e-52ff-480d-9878-5766f4f9d12c,92876c9e-52ff-480d-9878-5766f4f9d12c,1,0,b729d739-5249-4765-85ee-fd792bb22911,b729d739-5249-4765-85ee-fd792bb22911,1,0,d65c4485-7bac-4206-9a6c-7156f4bb876d,d65c4485-7bac-4206-9a6c-7156f4bb876d,1,0,d431d1e2-13dc-495c-9de1-b5ec872eceed,d431d1e2-13dc-495c-9de1-b5ec872eceed,1,0,e8bec681-d269-41ba-9184-556cbcc27d74,e8bec681-d269-41ba-9184-556cbcc27d74,1,0,b8aaef91-f72c-4127-a494-771c13694ca4,b8aaef91-f72c-4127-a494-771c13694ca4,1,0,433a114f-3198-4ef6-bbf8-ce9b54fdb736,433a114f-3198-4ef6-bbf8-ce9b54fdb736,1,0,02ac711c-e38e-422e-ac28-ba1b298df9cc,02ac711c-e38e-422e-ac28-ba1b298df9cc,1,0,3e090261-4aa2-4ece-9f77-62df83c890b3,3e090261-4aa2-4ece-9f77-62df83c890b3,1,0,bbfd9834-12b4-49ca-bdae-5c94efa80482,bbfd9834-12b4-49ca-bdae-5c94efa80482,1,0,9292034c-24e8-49a7-9b77-7974e117847d,9292034c-24e8-49a7-9b77-7974e117847d,1,0,3327b7d4-62fc-44cc-83b4-c449bfa4e706,3327b7d4-62fc-44cc-83b4-c449bfa4e706,1,0,43ecee25-68eb-48cf-bbaa-aee71052438f,43ecee25-68eb-48cf-bbaa-aee71052438f,1,0,93799f8b-0188-4546-8815-35e733bcc2b1,93799f8b-0188-4546-8815-35e733bcc2b1,1,0,9dc3a563-11bb-40a7-8431-c1d4367ccbaf,9dc3a563-11bb-40a7-8431-c1d4367ccbaf,1,0,c9ea4e72-5f01-42ae-88e3-52e49757b26f,c9ea4e72-5f01-42ae-88e3-52e49757b26f,1,0,38d92d75-c8b8-42d6-9e0a-6dc0811a8652,38d92d75-c8b8-42d6-9e0a-6dc0811a8652,1,0,0f564dbe-6a6e-48df-9718-5cea5d608ee6,0f564dbe-6a6e-48df-9718-5cea5d608ee6,1,0,a623fef1-96eb-41ba-93fe-09162698f419,a623fef1-96eb-41ba-93fe-09162698f419,1,0,45a8d7cb-c927-4a4e-a653-13fd9b1eda10,45a8d7cb-c927-4a4e-a653-13fd9b1eda10,1,0,d8e1f92f-9efa-422d-bb21-43bd1a363cec,d8e1f92f-9efa-422d-bb21-43bd1a363cec,1,0,c1416383-bd7e-4dc4-ad88-d98ac87157fd,c1416383-bd7e-4dc4-ad88-d98ac87157fd,1,0,5e8bddc7-7836-4ec8-b6e1-0c15d228f47e,5e8bddc7-7836-4ec8-b6e1-0c15d228f47e,1,0,d5d9976a-4cc0-43f7-afd6-d43cebb07940,d5d9976a-4cc0-43f7-afd6-d43cebb07940,1,0,899f1526-d6bc-42ef-852e-7297a06db9e3,899f1526-d6bc-42ef-852e-7297a06db9e3,1,0,c694c132-1ddb-4273-818a-d3cca88c082a,c694c132-1ddb-4273-818a-d3cca88c082a,1,0,cd4da06e-c06b-4233-befc-1bc4c4db58e3,cd4da06e-c06b-4233-befc-1bc4c4db58e3,1,0,918a01fe-f753-4a4a-9200-55bbd6edaf5f,918a01fe-f753-4a4a-9200-55bbd6edaf5f,1,0,51a8a209-2a9d-419f-9fda-f7aeac68bdbe,51a8a209-2a9d-419f-9fda-f7aeac68bdbe,1,0,ef43961f-8cac-4f3f-bcee-c6bc51c4148c,ef43961f-8cac-4f3f-bcee-c6bc51c4148c,1,0,d6704410-6297-481e-a6cb-6d6aa566b4f8,d6704410-6297-481e-a6cb-6d6aa566b4f8,1,0,398937ca-b035-43bd-b0da-8c5153a87cb8,398937ca-b035-43bd-b0da-8c5153a87cb8,1,0,5b441321-bd1e-4c56-8f09-365b05985eed,5b441321-bd1e-4c56-8f09-365b05985eed,1,0,559f1e66-e8da-437a-aa27-d0e1be6619b6,559f1e66-e8da-437a-aa27-d0e1be6619b6,1,0,704d69cd-d921-4957-a004-43bd7eb4d979,704d69cd-d921-4957-a004-43bd7eb4d979,1,0,f1594682-16ac-408c-8307-a7a8db79b09f,f1594682-16ac-408c-8307-a7a8db79b09f,1,0,863aebd2-ce32-4f1f-bb3d-d6062ab187fd,863aebd2-ce32-4f1f-bb3d-d6062ab187fd,1,0,4cb814d8-cb1b-4366-b500-e820ad526b0c,4cb814d8-cb1b-4366-b500-e820ad526b0c,1,0,7da5f3b4-6330-4112-9d3a-7bb42996aa4a,7da5f3b4-6330-4112-9d3a-7bb42996aa4a,1,0,6c43df9f-ca36-415b-afec-302807820d73,6c43df9f-ca36-415b-afec-302807820d73,1,0,c7fb7551-806a-40b2-8879-14cd897b60d8,c7fb7551-806a-40b2-8879-14cd897b60d8,1,0,68337023-d573-4d04-95b6-44f73258c2a4,68337023-d573-4d04-95b6-44f73258c2a4,1,0,7cf39337-b722-486f-8e37-a62239d0ccd2,7cf39337-b722-486f-8e37-a62239d0ccd2,1,0,2571cfaf-d876-4385-a60a-1488aacf7080,2571cfaf-d876-4385-a60a-1488aacf7080,1,0,4ea1dd0a-6eab-48e4-a6a7-314d0e211d6c,4ea1dd0a-6eab-48e4-a6a7-314d0e211d6c,1,0,44398566-3189-4584-8f8a-9deb1d07ce41,44398566-3189-4584-8f8a-9deb1d07ce41,1,0,6f4e3082-9c8c-4289-8cc2-704c8d2763ce,6f4e3082-9c8c-4289-8cc2-704c8d2763ce,1,0,accfa63a-479d-4996-95bc-cdf5acdf203c,accfa63a-479d-4996-95bc-cdf5acdf203c,1,0,351998e0-8939-4dd4-a833-f4756bcc53b8,351998e0-8939-4dd4-a833-f4756bcc53b8,1,0,cd69bad8-524e-4be4-88cc-7732a88b38b8,cd69bad8-524e-4be4-88cc-7732a88b38b8,1,0,0a32248c-6994-4988-90d1-30882bc9da6b,0a32248c-6994-4988-90d1-30882bc9da6b,1,0,b57b53cb-6972-4bda-ae46-96571be1ebec,b57b53cb-6972-4bda-ae46-96571be1ebec,1,0,1a1a9636-fb72-4e4a-af96-5858442b1e61,1a1a9636-fb72-4e4a-af96-5858442b1e61,1,0,bca9cf34-9e11-4014-976a-28c4330b136e,bca9cf34-9e11-4014-976a-28c4330b136e,1,0,65fffe1a-6f36-4f50-975f-4471ad29d3ec,65fffe1a-6f36-4f50-975f-4471ad29d3ec,1,0,8fe5dad5-686a-4631-ae05-2917c33f7d83,8fe5dad5-686a-4631-ae05-2917c33f7d83,1,0,edef86c6-73bf-4e47-b62d-b2b548a732cd,edef86c6-73bf-4e47-b62d-b2b548a732cd,1,0,a1715044-d76f-4238-ba3e-989d04078d83,a1715044-d76f-4238-ba3e-989d04078d83,1,0,e72e59c0-391d-497e-9407-063e0edf573e,e72e59c0-391d-497e-9407-063e0edf573e,1,0,ae8a1e69-ee1c-4efa-8d63-0279b18617f6,ae8a1e69-ee1c-4efa-8d63-0279b18617f6,1,0,a7ec91a5-2ed4-4ecd-b794-fcd3bb5ea4a2,a7ec91a5-2ed4-4ecd-b794-fcd3bb5ea4a2,1,0,299c47a7-0b30-4f62-8f5c-f087ad6411fb,299c47a7-0b30-4f62-8f5c-f087ad6411fb,1,0,4d4724df-24fb-4c59-9d04-3f984906214a,4d4724df-24fb-4c59-9d04-3f984906214a,1,0,95b10bc8-39ef-43f5-b74e-f36cfa9bc806,95b10bc8-39ef-43f5-b74e-f36cfa9bc806,1,0,cb9b73ee-8531-48d9-9266-9aaa4336a612,cb9b73ee-8531-48d9-9266-9aaa4336a612,1,0,b7b80237-d642-4c21-a9ee-64fc4ed20d2f,b7b80237-d642-4c21-a9ee-64fc4ed20d2f,1,0,aeee2eea-1bb9-4e8a-ac5c-c940eaa86511,aeee2eea-1bb9-4e8a-ac5c-c940eaa86511,1,0,d042687f-0725-4611-a868-f5b4f6a3a3a8,d042687f-0725-4611-a868-f5b4f6a3a3a8,1,0,bb143340-7fff-49ef-b121-355c96613f78,bb143340-7fff-49ef-b121-355c96613f78,1,0,cd5fbbcb-19b8-4c0b-93c7-ebdf642826db,cd5fbbcb-19b8-4c0b-93c7-ebdf642826db,1,0,f2f69644-80dc-4b5e-a208-ed1de131e25e,f2f69644-80dc-4b5e-a208-ed1de131e25e,1,0,73060f72-6d08-47da-aac8-d4d2ed8f871c,73060f72-6d08-47da-aac8-d4d2ed8f871c,1,0,f3a6219e-bff5-4d36-9baa-bb214cebc2ed,f3a6219e-bff5-4d36-9baa-bb214cebc2ed,1,0,82e8ac21-c2aa-47de-89ae-ea6cc10cc862,82e8ac21-c2aa-47de-89ae-ea6cc10cc862,1,0,13b27ec3-2be9-4959-92e5-94ba7bb64f03,13b27ec3-2be9-4959-92e5-94ba7bb64f03,1,0,9f832f4b-ae60-4d81-9ffd-6e00f7e02560,9f832f4b-ae60-4d81-9ffd-6e00f7e02560,1,0,6f6ef6ac-5bb7-41e4-b6d5-0f068e8cb176,6f6ef6ac-5bb7-41e4-b6d5-0f068e8cb176,1,0,821225ea-1bad-49a6-a422-80d8a09baf13,821225ea-1bad-49a6-a422-80d8a09baf13,1,0,d0106f3a-8490-4277-a278-75c318ec252c,d0106f3a-8490-4277-a278-75c318ec252c,1,0,5035aa55-d557-419a-89e2-10ed0f8d109b,5035aa55-d557-419a-89e2-10ed0f8d109b,1,0,5f93d2af-64ff-41cc-8403-4a0e83160fea,5f93d2af-64ff-41cc-8403-4a0e83160fea,1,0,c12c90e4-7c40-489b-b14b-6b9442016e0f,c12c90e4-7c40-489b-b14b-6b9442016e0f,1,0,6371e288-3502-4d66-9006-b5a36107c0b7,6371e288-3502-4d66-9006-b5a36107c0b7,1,0,245814f7-028c-4c13-98eb-15412e851f81,245814f7-028c-4c13-98eb-15412e851f81,1,0,0132e564-2cd3-4930-8962-1068532f4be4,0132e564-2cd3-4930-8962-1068532f4be4,1,0,57d0f9b0-18d0-48ba-9f3c-d106f66ac602,57d0f9b0-18d0-48ba-9f3c-d106f66ac602,1,0,3a7cfd4c-c943-43c2-a8d5-6d8ab3a10fc9,3a7cfd4c-c943-43c2-a8d5-6d8ab3a10fc9,1,0,36b8b08f-0da3-4dbd-9aa8-73220ca9101d,36b8b08f-0da3-4dbd-9aa8-73220ca9101d,1,0,7021fca5-d612-43e1-927b-7f822153cf75,7021fca5-d612-43e1-927b-7f822153cf75,1,0,9fd16d51-91bb-4973-a7c4-cf4db87da8bf,9fd16d51-91bb-4973-a7c4-cf4db87da8bf,1,0,ee0a8d23-660a-492b-a813-b57394acee05,ee0a8d23-660a-492b-a813-b57394acee05,1,0,d1eda8f4-ffdd-445a-882c-6124d9f7fcf2,d1eda8f4-ffdd-445a-882c-6124d9f7fcf2,1,0,ade21e2e-349f-414b-8f35-6ae3b6a4064d,ade21e2e-349f-414b-8f35-6ae3b6a4064d,1,0,cce823c6-3bd5-4e46-91f6-8715cb72b1d5,cce823c6-3bd5-4e46-91f6-8715cb72b1d5,1,0,f3a8dd22-4469-4a3b-a7dd-78a5624b7bf0,f3a8dd22-4469-4a3b-a7dd-78a5624b7bf0,1,0,83f51efe-e2af-459a-b59f-2c036124ac23,83f51efe-e2af-459a-b59f-2c036124ac23,1,0,6ed466d7-e016-4d9c-9c0e-8deed48cbd70,6ed466d7-e016-4d9c-9c0e-8deed48cbd70,1,0,b03829e9-ba22-4584-85f0-c36d63f48242,b03829e9-ba22-4584-85f0-c36d63f48242,1,0,084a7c95-a59b-4861-b8b3-b5710a57ac60,084a7c95-a59b-4861-b8b3-b5710a57ac60,1,0,efcea6da-6746-4e00-913a-14cab38b5d84,efcea6da-6746-4e00-913a-14cab38b5d84,1,0,aff367fb-7fca-44d0-adf9-3731f14834f6,aff367fb-7fca-44d0-adf9-3731f14834f6,1,0,a2782760-dd4c-44d2-a785-814d6f610455,a2782760-dd4c-44d2-a785-814d6f610455,1,0,245162d8-6ae1-47e5-a0c9-0d5f2e5d8ea8,245162d8-6ae1-47e5-a0c9-0d5f2e5d8ea8,1,0,6581ac1f-11ef-42b8-9f3b-590bb7546e63,6581ac1f-11ef-42b8-9f3b-590bb7546e63,1,0,ce952e88-35b7-4506-81ac-d7081e50a650,ce952e88-35b7-4506-81ac-d7081e50a650,1,0,5d7a53fa-1a89-4e6e-868c-4077bd84c0ce,5d7a53fa-1a89-4e6e-868c-4077bd84c0ce,1,0,3bf1281f-7570-4633-86b9-3e953a7e6647,3bf1281f-7570-4633-86b9-3e953a7e6647,1,0,715dc289-5b14-4ee0-8716-9c15958b9069,715dc289-5b14-4ee0-8716-9c15958b9069,1,0,92707138-5004-4378-8477-f909166d319d,92707138-5004-4378-8477-f909166d319d,1,0,43661775-43bb-4d9e-bfbb-c46e7d194ca3,43661775-43bb-4d9e-bfbb-c46e7d194ca3,1,0,532637ef-be0d-4f42-9747-a88e17eb3def,532637ef-be0d-4f42-9747-a88e17eb3def,1,0,61127152-3e24-40b4-8a23-5eb6cae568ff,61127152-3e24-40b4-8a23-5eb6cae568ff,1,0,ffd987e3-e8af-4d46-881e-1e312e74dbac,ffd987e3-e8af-4d46-881e-1e312e74dbac,1,0,ad1142ed-183d-47a3-800c-997a3770e11e,ad1142ed-183d-47a3-800c-997a3770e11e,1,0,ebef37c6-4808-4683-93be-036ce19cafd5,ebef37c6-4808-4683-93be-036ce19cafd5,1,0,66364cd4-aaa5-421d-96d6-3c283c14650d,66364cd4-aaa5-421d-96d6-3c283c14650d,1,0,fdbbbf8b-dacf-436e-8d8b-1e2b8e854b17,fdbbbf8b-dacf-436e-8d8b-1e2b8e854b17,1,0,3c54d440-e908-43d6-a5cc-bb64620c82d7,3c54d440-e908-43d6-a5cc-bb64620c82d7,1,0,23a240a2-52ee-46ab-89d9-50dcee2cc8d2,23a240a2-52ee-46ab-89d9-50dcee2cc8d2,1,0,bf1dd911-8ee1-407b-acae-10c85b74baf3,bf1dd911-8ee1-407b-acae-10c85b74baf3,1,0,e924058f-25c3-4744-a565-836b824991b7,e924058f-25c3-4744-a565-836b824991b7,1,0,bc6a47a1-a3f3-4d7e-9dad-099bd3dba751,bc6a47a1-a3f3-4d7e-9dad-099bd3dba751,1,0,518dcd70-4ccf-4866-a94f-7ceec7dd2801,518dcd70-4ccf-4866-a94f-7ceec7dd2801,1,0,f9950ab5-1077-4033-bbbf-53899a1bcf33,f9950ab5-1077-4033-bbbf-53899a1bcf33,1,0,8f16763b-86f0-4ad0-b786-cce7dcb3460e,8f16763b-86f0-4ad0-b786-cce7dcb3460e,1,0,0481bc65-6a32-46b9-ae87-993ba52a29a5,0481bc65-6a32-46b9-ae87-993ba52a29a5,1,0,36ebebbb-dff1-4dbd-870b-58bd4a71fa1f,36ebebbb-dff1-4dbd-870b-58bd4a71fa1f,1,0,dbc5f419-63b0-4cbe-90ff-c0101105e46c,dbc5f419-63b0-4cbe-90ff-c0101105e46c,1,0,c708f6e9-b7a0-4046-90f3-83527da7b872,c708f6e9-b7a0-4046-90f3-83527da7b872,1,0,0006b44a-3a0c-4be4-8dd0-bd0db9ddcc4d,0006b44a-3a0c-4be4-8dd0-bd0db9ddcc4d,1,0,14256e0a-a947-42a3-8e36-47bfbb052a0c,14256e0a-a947-42a3-8e36-47bfbb052a0c,1,0,1b1aa77a-d14b-4751-a7da-0b5bac4db461,1b1aa77a-d14b-4751-a7da-0b5bac4db461,1,0,c0dcdb22-6719-4597-a781-bca1370909e5,c0dcdb22-6719-4597-a781-bca1370909e5,1,0,7ebf99c3-33d2-4e4c-ac45-ca4ed0c3c100,7ebf99c3-33d2-4e4c-ac45-ca4ed0c3c100,1,0,7a34f723-cd14-4949-a40f-7ce579bf0449,7a34f723-cd14-4949-a40f-7ce579bf0449,1,0,5cdc9ac7-bba9-4ed1-845a-607976fc4679,5cdc9ac7-bba9-4ed1-845a-607976fc4679,1,0,295f3692-0721-4c41-a69b-171ef20a5018,295f3692-0721-4c41-a69b-171ef20a5018,1,0,86c22871-6d1c-44e0-8ade-ce4bdeb23321,86c22871-6d1c-44e0-8ade-ce4bdeb23321,1,0,da51de81-4d4f-46b5-a308-7b50db6c45a7,da51de81-4d4f-46b5-a308-7b50db6c45a7,1,0,8d31ce6a-4d44-46c6-a11c-47fb33e88691,8d31ce6a-4d44-46c6-a11c-47fb33e88691,1,0,c2a8c2d3-ff13-4a13-acd4-797118c4e767,c2a8c2d3-ff13-4a13-acd4-797118c4e767,1,0,bc6adf75-8666-49f3-9703-b0014dfee123,bc6adf75-8666-49f3-9703-b0014dfee123,1,0,30632f54-b779-4857-a5cc-c53fe8887ee5,30632f54-b779-4857-a5cc-c53fe8887ee5,1,0,087480bb-8c89-4b00-a29b-b7e29926478d,087480bb-8c89-4b00-a29b-b7e29926478d,1,0,685373b7-638a-439a-8cba-703d56e4e404,685373b7-638a-439a-8cba-703d56e4e404,1,0,eafaec9c-030b-4e5f-8fa8-e17dad2feec9,eafaec9c-030b-4e5f-8fa8-e17dad2feec9,1,0,df22b227-b2c3-4e65-9706-7582f99fe59c,df22b227-b2c3-4e65-9706-7582f99fe59c,1,0,35828c88-f1ec-42e7-b189-78748931ee4a,35828c88-f1ec-42e7-b189-78748931ee4a,1,0,8a41b8f1-93fc-44e6-bf45-0d1fa9d24f4a,8a41b8f1-93fc-44e6-bf45-0d1fa9d24f4a,1,0,1cfba08f-d5e5-4833-b494-a25d0477e9c3,1cfba08f-d5e5-4833-b494-a25d0477e9c3,1,0,ae22743b-6d21-4fbb-bb4c-fee53e2b87cb,ae22743b-6d21-4fbb-bb4c-fee53e2b87cb,1,0,921a0a14-8c06-4894-95ce-423000769364,921a0a14-8c06-4894-95ce-423000769364,1,0,3805ee39-a48a-499a-9ef8-9c2a5985404f,3805ee39-a48a-499a-9ef8-9c2a5985404f,1,0,07ccfe87-e1ab-4da7-92cb-a612e0972b0b,07ccfe87-e1ab-4da7-92cb-a612e0972b0b,1,0,08c2f92c-eb05-49e7-bfc9-4a89607b9864,08c2f92c-eb05-49e7-bfc9-4a89607b9864,1,0,6d751379-89a7-49b5-93e5-578329c63d9c,6d751379-89a7-49b5-93e5-578329c63d9c,1,0,c3f156ef-947e-4ebb-883f-4f099a116063,c3f156ef-947e-4ebb-883f-4f099a116063,1,0,5e3ab0a3-c0a6-4f41-85d3-2eede4abb555,5e3ab0a3-c0a6-4f41-85d3-2eede4abb555,1,0,a065ffc3-f50b-4a78-9b84-bfc4e5515a4b,a065ffc3-f50b-4a78-9b84-bfc4e5515a4b,1,0,4cba5a06-1484-4dd1-8e35-2d702c7d96d0,4cba5a06-1484-4dd1-8e35-2d702c7d96d0,1,0,e98e9e56-2995-430c-bd3b-f1070aec15a5,e98e9e56-2995-430c-bd3b-f1070aec15a5,1,0,d35c51b0-4cb7-4f9c-8aac-6a25a1b49adf,d35c51b0-4cb7-4f9c-8aac-6a25a1b49adf,1,0,8a7546f4-bfc9-4732-bf60-43a41e2c8753,8a7546f4-bfc9-4732-bf60-43a41e2c8753,1,0,16244165-d5a4-4012-8bb5-7f5fee1111af,16244165-d5a4-4012-8bb5-7f5fee1111af,1,0,290b72ad-004f-46ab-be5e-47557543b965,290b72ad-004f-46ab-be5e-47557543b965,1,0,e1b2ccf9-5a8f-4008-86f3-d2c7cf5581d1,e1b2ccf9-5a8f-4008-86f3-d2c7cf5581d1,1,0,fa0e0792-bffb-47ce-866f-9e8dbdab17a4,fa0e0792-bffb-47ce-866f-9e8dbdab17a4,1,0,263bcd20-9878-48d4-aac4-b371ec49d8d6,263bcd20-9878-48d4-aac4-b371ec49d8d6,1,0,da1d8660-2757-4cea-bae0-c2210b9406ae,da1d8660-2757-4cea-bae0-c2210b9406ae,1,0,d60329c6-8f48-481d-82e7-18da355cb09c,d60329c6-8f48-481d-82e7-18da355cb09c,1,0,c4b14162-b25b-4099-9ec3-7251848ef08a,c4b14162-b25b-4099-9ec3-7251848ef08a,1,0,8eb5ba97-eb38-4357-8bfc-e9618280800d,8eb5ba97-eb38-4357-8bfc-e9618280800d,1,0,b72f73d5-e274-472b-871b-16af72dab603,b72f73d5-e274-472b-871b-16af72dab603,1,0,b008d184-0b61-460d-9490-89ecc1cd58ba,b008d184-0b61-460d-9490-89ecc1cd58ba,1,0,c8340e2f-6958-4bcd-8e17-499c4adfe60b,c8340e2f-6958-4bcd-8e17-499c4adfe60b,1,0,c72831cd-d064-4fe8-9603-64e6d7b8ac4d,c72831cd-d064-4fe8-9603-64e6d7b8ac4d,1,0,03f68d82-752c-45d1-bf9a-60ecd21a2c81,03f68d82-752c-45d1-bf9a-60ecd21a2c81,1,0,307e8938-e347-4eff-b2fb-fd0b8f4aa27f,307e8938-e347-4eff-b2fb-fd0b8f4aa27f,1,0,d4fffc79-2841-49a9-a382-e9e4138984df,d4fffc79-2841-49a9-a382-e9e4138984df,1,0,84e4c572-5b32-46e0-82a0-0c76d4ef5d73,84e4c572-5b32-46e0-82a0-0c76d4ef5d73,1,0,9f41f903-d316-4189-8dc0-603ea9036c1c,9f41f903-d316-4189-8dc0-603ea9036c1c,1,0,e19e70d6-8707-4dde-ae69-7bd97035ca03,e19e70d6-8707-4dde-ae69-7bd97035ca03,1,0,425b5272-1130-457d-8a05-aee8fad681d9,425b5272-1130-457d-8a05-aee8fad681d9,1,0,8d583436-f2a6-4a33-8137-1376f5754643,8d583436-f2a6-4a33-8137-1376f5754643,1,0,4a864e74-41ce-4673-a080-bc3c2ba1b8ee,4a864e74-41ce-4673-a080-bc3c2ba1b8ee,1,0,d279958e-6dd4-4bb0-a65f-c8768b4c4d96,d279958e-6dd4-4bb0-a65f-c8768b4c4d96,1,0,2d66502d-77ab-4cc9-9ccf-5433458fae9f,2d66502d-77ab-4cc9-9ccf-5433458fae9f,1,0,cff48da7-3c46-4602-83e8-90c9ea53e107,cff48da7-3c46-4602-83e8-90c9ea53e107,1,0,7155472d-c791-402c-96e1-d25612024c88,7155472d-c791-402c-96e1-d25612024c88,1,0,fb90c261-24a7-4cef-8a2c-85c0e4fdd64a,fb90c261-24a7-4cef-8a2c-85c0e4fdd64a,1,0,9005911d-ea81-48b6-bf50-1a328ff4d7be,9005911d-ea81-48b6-bf50-1a328ff4d7be,1,0,7df12006-c0c0-42a6-b852-bdced72c62e3,7df12006-c0c0-42a6-b852-bdced72c62e3,1,0,9c00987d-3c55-40eb-bae8-f36e71e4ef87,9c00987d-3c55-40eb-bae8-f36e71e4ef87,1,0,29273130-5142-48c9-8399-00e5ab4b6203,29273130-5142-48c9-8399-00e5ab4b6203,1,0,9e14cd7e-1293-4008-baf8-88df6a98abf7,9e14cd7e-1293-4008-baf8-88df6a98abf7,1,0,211d226f-dac6-43d5-8720-952da4339e35,211d226f-dac6-43d5-8720-952da4339e35,1,0,df67cdcd-20ff-46d4-902b-dc4d81ee46bd,df67cdcd-20ff-46d4-902b-dc4d81ee46bd,1,0,98e3aace-52a6-4911-8205-92165adca6de,98e3aace-52a6-4911-8205-92165adca6de,1,0,91f4dbf9-d539-4239-a95d-c1d9e14e50f8,91f4dbf9-d539-4239-a95d-c1d9e14e50f8,1,0,577e5fea-b792-4c8b-b3b3-a03a14b64b04,577e5fea-b792-4c8b-b3b3-a03a14b64b04,1,0,ba5ec2d6-1791-42b5-8e6f-04d1d18e9469,ba5ec2d6-1791-42b5-8e6f-04d1d18e9469,1,0,b18d312b-f9c3-4f37-ac77-d499e949f154,b18d312b-f9c3-4f37-ac77-d499e949f154,1,0,ace2beea-d393-412f-8b71-b845b665e2c4,ace2beea-d393-412f-8b71-b845b665e2c4,1,0,3fd4bc77-2a1b-4750-a54a-4171c8d40027,3fd4bc77-2a1b-4750-a54a-4171c8d40027,1,0,5b27fde9-fa80-48b1-aea1-73e132b9a944,5b27fde9-fa80-48b1-aea1-73e132b9a944,1,0,00bf04d6-6a8e-4b13-94cf-36c1c6090cd8,00bf04d6-6a8e-4b13-94cf-36c1c6090cd8,1,0,a747ec6b-f230-49b4-a929-7ed1ba87b078,a747ec6b-f230-49b4-a929-7ed1ba87b078,1,0,796f8fb4-d9cd-40ae-936b-8a70d2eb1121,796f8fb4-d9cd-40ae-936b-8a70d2eb1121,1,0,4802e016-a9e9-47d0-916b-b42194a1f388,4802e016-a9e9-47d0-916b-b42194a1f388,1,0,a1740d1f-1b8f-4db5-be5e-0eac44e934b8,a1740d1f-1b8f-4db5-be5e-0eac44e934b8,1,0,4062674a-4a81-494d-82bc-4984cd7c7903,4062674a-4a81-494d-82bc-4984cd7c7903,1,0,782a8801-06ca-4d63-bf8b-63d2320766d8,782a8801-06ca-4d63-bf8b-63d2320766d8,1,0,93a73123-d98c-4286-9269-7bfcedd115e8,93a73123-d98c-4286-9269-7bfcedd115e8,1,0,c5985c02-1824-4ce9-b415-1621dd2ee864,c5985c02-1824-4ce9-b415-1621dd2ee864,1,0,993ce747-cdc9-445f-ad7d-daf53cd5f7e9,993ce747-cdc9-445f-ad7d-daf53cd5f7e9,1,0,e819aaf6-3dfb-492a-8a4a-50a7c6854790,e819aaf6-3dfb-492a-8a4a-50a7c6854790,1,0,62b95ba1-f213-42fb-90f3-a03e8094bc9e,62b95ba1-f213-42fb-90f3-a03e8094bc9e,1,0,619b534d-5605-40d3-9b8c-4443a21d7795,619b534d-5605-40d3-9b8c-4443a21d7795,1,0,a010bbf4-d547-4576-9797-28e3096ffed3,a010bbf4-d547-4576-9797-28e3096ffed3,1,0,a44c3eb2-1054-41ca-82e8-fc35336e7009,a44c3eb2-1054-41ca-82e8-fc35336e7009,1,0,01f67911-4ca7-4668-b970-62c299b98e56,01f67911-4ca7-4668-b970-62c299b98e56,1,0,20c89c94-f77f-4e14-8c97-2a70c1419ce3,20c89c94-f77f-4e14-8c97-2a70c1419ce3,1,0,aa509aa3-dd45-41f3-82c7-59662c2e2c47,aa509aa3-dd45-41f3-82c7-59662c2e2c47,1,0,c4552529-e69e-4c5c-bd66-04b2f7dac281,c4552529-e69e-4c5c-bd66-04b2f7dac281,1,0,381b49ba-793a-4418-9fd4-598844fb72a6,381b49ba-793a-4418-9fd4-598844fb72a6,1,0,1aee302d-df31-49ea-b542-436dc1d79ae1,1aee302d-df31-49ea-b542-436dc1d79ae1,1,0,593509da-d33c-49ff-a62c-a28cbc4651c1,593509da-d33c-49ff-a62c-a28cbc4651c1,1,0,5e346a0b-a322-4565-adb9-70131fb05fa3,5e346a0b-a322-4565-adb9-70131fb05fa3,1,0,9a69c559-194b-4f74-9879-82740260f5f6,9a69c559-194b-4f74-9879-82740260f5f6,1,0,93bf1dcf-670d-4c8b-bdbf-e43c2edf8056,93bf1dcf-670d-4c8b-bdbf-e43c2edf8056,1,0,8a06f980-78f3-42f4-9d96-da2e0f0f36a7,8a06f980-78f3-42f4-9d96-da2e0f0f36a7,1,0,fee2aa74-7a81-4ab2-a457-2edf8ac1aa2d,fee2aa74-7a81-4ab2-a457-2edf8ac1aa2d,1,0,2e19fb7b-270f-4181-b4a1-640280bbbc5c,2e19fb7b-270f-4181-b4a1-640280bbbc5c,1,0,aa773eef-0c4a-49be-9f5e-9131bc041415,aa773eef-0c4a-49be-9f5e-9131bc041415,1,0,9b31e474-01d4-4c3b-a633-3a2ff3917d62,9b31e474-01d4-4c3b-a633-3a2ff3917d62,1,0,1c09bf33-9b54-4bfd-bc92-e7324025fab0,1c09bf33-9b54-4bfd-bc92-e7324025fab0,1,0,8d7750e9-899f-4434-8702-44cd02681779,8d7750e9-899f-4434-8702-44cd02681779,1,0,d85244dc-c417-4e69-9aa7-7ad313ecb940,d85244dc-c417-4e69-9aa7-7ad313ecb940,1,0,3bebf5e9-68bb-48dc-a39d-cbdca2dbecb1,3bebf5e9-68bb-48dc-a39d-cbdca2dbecb1,1,0,cd392ef0-dedb-4f83-9a2c-a24190ee0dc0,cd392ef0-dedb-4f83-9a2c-a24190ee0dc0,1,0,bb2f0c1c-3cfb-4a26-b6de-5bbeb5614587,bb2f0c1c-3cfb-4a26-b6de-5bbeb5614587,1,0,0713de12-87d5-4877-bd8a-2b6466df67df,0713de12-87d5-4877-bd8a-2b6466df67df,1,0,b848aafc-44fb-4dfe-8eec-233dc08fbbb6,b848aafc-44fb-4dfe-8eec-233dc08fbbb6,1,0,c4d7c569-4649-4f98-a048-45f3c5933670,c4d7c569-4649-4f98-a048-45f3c5933670,1,0,6dc05d69-bd54-4e8a-8985-c2ddfa0aaffb,6dc05d69-bd54-4e8a-8985-c2ddfa0aaffb,1,0,426cbebb-880b-49c5-b046-83c5e071273e,426cbebb-880b-49c5-b046-83c5e071273e,1,0,ad08b104-01f8-4900-a06c-baa1d55eba84,ad08b104-01f8-4900-a06c-baa1d55eba84,1,0,9352d10d-188f-4074-8dd1-7be5c11525e3,9352d10d-188f-4074-8dd1-7be5c11525e3,1,0,1933634a-6f10-48e7-99f0-60ac338f7832,1933634a-6f10-48e7-99f0-60ac338f7832,1,0,655deec5-c079-4748-8521-b3f10c243394,655deec5-c079-4748-8521-b3f10c243394,1,0,f6d4d818-d54c-4337-82cf-abd5e6dbe770,f6d4d818-d54c-4337-82cf-abd5e6dbe770,1,0,656c447b-291f-4e62-81ac-1c004841aa72,656c447b-291f-4e62-81ac-1c004841aa72,1,0,c9a06c8d-2f6d-4e03-bc62-a1a19f17faf3,c9a06c8d-2f6d-4e03-bc62-a1a19f17faf3,1,0,5ba93404-58ad-4321-9a62-27db828f75f6,5ba93404-58ad-4321-9a62-27db828f75f6,1,0,3da20e86-1d83-4935-b425-a91392dc8f35,3da20e86-1d83-4935-b425-a91392dc8f35,1,0,b56f25d2-72a9-4d80-8998-77ac3097c873,b56f25d2-72a9-4d80-8998-77ac3097c873,1,0,03bd775a-e0a1-4205-82ce-6068e73ad134,03bd775a-e0a1-4205-82ce-6068e73ad134,1,0,40bed47b-7754-4a70-b51a-47385fd46e83,40bed47b-7754-4a70-b51a-47385fd46e83,1,0,773ef914-5e7e-4ec1-bcdb-b2d111b560e6,773ef914-5e7e-4ec1-bcdb-b2d111b560e6,1,0,1e5a4f93-1ab9-4775-9538-2a1772215d89,1e5a4f93-1ab9-4775-9538-2a1772215d89,1,0,c25db165-0734-4fef-b161-e5164954a616,c25db165-0734-4fef-b161-e5164954a616,1,0,37e3d914-643e-4963-b4a0-7bc6727c0c9b,37e3d914-643e-4963-b4a0-7bc6727c0c9b,1,0,b6902500-3e03-4e83-a077-00500abc00b6,b6902500-3e03-4e83-a077-00500abc00b6,1,0,4f97b909-68f9-482a-b958-b4caa9b83763,4f97b909-68f9-482a-b958-b4caa9b83763,1,0,c31e34db-41ff-4db3-a4d0-f780f67070f6,c31e34db-41ff-4db3-a4d0-f780f67070f6,1,0,7a014fcb-a4b8-4c1c-b0de-21907a917c25,7a014fcb-a4b8-4c1c-b0de-21907a917c25,1,0,1688ef5d-72df-4bc4-a879-89033d466ad7,1688ef5d-72df-4bc4-a879-89033d466ad7,1,0,30f18fbf-4240-4708-a71a-189f8fc324f3,30f18fbf-4240-4708-a71a-189f8fc324f3,1,0,344cb0de-315d-4d05-93f8-8a1f53208470,344cb0de-315d-4d05-93f8-8a1f53208470,1,0,cd869887-0b0e-43db-8b51-04fe4a1341d5,cd869887-0b0e-43db-8b51-04fe4a1341d5,1,0,98aa5d5e-6c0e-4b9b-a3fa-335635d15217,98aa5d5e-6c0e-4b9b-a3fa-335635d15217,1,0,a7973409-b18e-4b88-ad50-e2ae89470d8f,a7973409-b18e-4b88-ad50-e2ae89470d8f,1,0,a537875e-492e-4cf2-96e9-e2e97bb206da,a537875e-492e-4cf2-96e9-e2e97bb206da,1,0,cd8fd85f-f02e-4f11-b4b4-40670febfaca,cd8fd85f-f02e-4f11-b4b4-40670febfaca,1,0,085a08f3-9d93-429d-9b1b-9065ab8363f7,085a08f3-9d93-429d-9b1b-9065ab8363f7,1,0,a530c0a1-c1d2-40bb-9d0e-320074dbb684,a530c0a1-c1d2-40bb-9d0e-320074dbb684,1,0,55c63580-16f1-4d6f-a40b-e630f71ebb98,55c63580-16f1-4d6f-a40b-e630f71ebb98,1,0,0a136ad9-22ad-4ba7-a31a-40a193b49d26,0a136ad9-22ad-4ba7-a31a-40a193b49d26,1,0,208c7b8c-3df9-4441-8ebf-34ffa81572a2,208c7b8c-3df9-4441-8ebf-34ffa81572a2,1,0,8c17fd7c-74d7-496a-a843-42022afb0707,8c17fd7c-74d7-496a-a843-42022afb0707,1,0,091ccac1-9a63-4a89-bb0c-333b274b0c70,091ccac1-9a63-4a89-bb0c-333b274b0c70,1,0,b456d820-8034-4381-960d-66d9f86b0a4b,b456d820-8034-4381-960d-66d9f86b0a4b,1,0,bd55fd03-cf67-4333-a554-98e03d18f780,bd55fd03-cf67-4333-a554-98e03d18f780,1,0,6eac5f7b-0952-4c94-9028-529b14ffcd4f,6eac5f7b-0952-4c94-9028-529b14ffcd4f,1,0,1a7c774d-5b86-4051-b797-3081e19fa30a,1a7c774d-5b86-4051-b797-3081e19fa30a,1,0,00949768-5833-4fe2-8752-b009d1bceef8,00949768-5833-4fe2-8752-b009d1bceef8,1,0,167455d1-6658-409f-834c-f6ccfe7b25de,167455d1-6658-409f-834c-f6ccfe7b25de,1,0,c5b3ca21-8f7b-4933-853c-7d95b17b5631,c5b3ca21-8f7b-4933-853c-7d95b17b5631,1,0,8b0faa1e-09da-4ba4-894e-e86abc5d39df,8b0faa1e-09da-4ba4-894e-e86abc5d39df,1,0,cb50b309-1b6c-400c-9e9e-67204dcccaae,cb50b309-1b6c-400c-9e9e-67204dcccaae,1,0,e2b482cb-6954-4e6a-abe9-d0a01f64b73a,e2b482cb-6954-4e6a-abe9-d0a01f64b73a,1,0,b8a966ba-3452-44df-91d0-7040ecd3e4c2,b8a966ba-3452-44df-91d0-7040ecd3e4c2,1,0,80d6883d-c608-4fe5-acae-78bc45e40e5f,80d6883d-c608-4fe5-acae-78bc45e40e5f,1,0,213b173a-c3b7-449c-a618-d479c4dc38e8,213b173a-c3b7-449c-a618-d479c4dc38e8,1,0,7a64dffc-5cfe-41e2-bd55-fbf4957559a4,7a64dffc-5cfe-41e2-bd55-fbf4957559a4,1,0,a78249aa-ca9f-4bee-b00d-68ff59ea81a4,a78249aa-ca9f-4bee-b00d-68ff59ea81a4,1,0,7534148d-0124-49a2-a446-c6205d153153,7534148d-0124-49a2-a446-c6205d153153,1,0,32ed8a10-7177-4e45-866e-04a1b6831570,32ed8a10-7177-4e45-866e-04a1b6831570,1,0,e2a90d7a-5480-47cd-b296-8d60d8baf7f9,e2a90d7a-5480-47cd-b296-8d60d8baf7f9,1,0,8190a432-1037-4334-b2c7-bae39f7f9442,8190a432-1037-4334-b2c7-bae39f7f9442,1,0,4733e5c1-8198-408b-8903-866d3b0fdc43,4733e5c1-8198-408b-8903-866d3b0fdc43,1,0,e1fc5146-37c5-4207-af05-7250976bd406,e1fc5146-37c5-4207-af05-7250976bd406,1,0,60038cd9-8d01-44b1-9d3f-f3a31e59e5db,60038cd9-8d01-44b1-9d3f-f3a31e59e5db,1,0,f0bfb98b-cc43-4b6c-8166-9b81b4c22cb0,f0bfb98b-cc43-4b6c-8166-9b81b4c22cb0,1,0,f5e27159-789a-4d34-ac51-fd99d753b83a,f5e27159-789a-4d34-ac51-fd99d753b83a,1,0,0f565466-19e0-4edb-9827-dab5a2bb47d7,0f565466-19e0-4edb-9827-dab5a2bb47d7,1,0,e8d57e5d-14a4-485f-bf20-057f85fe2a64,e8d57e5d-14a4-485f-bf20-057f85fe2a64,1,0,f1cb02ff-a2f0-4a34-93fa-e47c6e210ee1,f1cb02ff-a2f0-4a34-93fa-e47c6e210ee1,1,0,981a74f4-cdc2-4016-b462-9b5fd0d6de4d,981a74f4-cdc2-4016-b462-9b5fd0d6de4d,1,0,1d89e2b7-8f66-4210-8ab4-29efde5e5295,1d89e2b7-8f66-4210-8ab4-29efde5e5295,1,0,fafff964-8daa-4921-9d53-fd6be3878d94,fafff964-8daa-4921-9d53-fd6be3878d94,1,0,7183d525-212a-42f3-a7e5-eb9deaeaa4a3,7183d525-212a-42f3-a7e5-eb9deaeaa4a3,1,0,b82b27cc-e81c-4b7c-9833-ea4f2ce21edb,b82b27cc-e81c-4b7c-9833-ea4f2ce21edb,1,0,4347f77e-bad9-4525-90a0-794787f03585,4347f77e-bad9-4525-90a0-794787f03585,1,0,cfde3330-2bed-4273-8d69-c213ebdde247,cfde3330-2bed-4273-8d69-c213ebdde247,1,0,2d6ca049-89a5-437e-971c-b8e42f61b460,2d6ca049-89a5-437e-971c-b8e42f61b460,1,0,c450ebe1-4223-4a7a-b9fa-374d5c13dc8c,c450ebe1-4223-4a7a-b9fa-374d5c13dc8c,1,0,271d58d0-4449-40cc-bae9-cc4c50eebd9b,271d58d0-4449-40cc-bae9-cc4c50eebd9b,1,0,58df9322-c786-4dd1-af49-7cd164b378da,58df9322-c786-4dd1-af49-7cd164b378da,1,0,8d48de7f-61d6-4462-9c14-f728206a482c,8d48de7f-61d6-4462-9c14-f728206a482c,1,0,a87e890a-8924-4f56-9e37-04579b95297a,a87e890a-8924-4f56-9e37-04579b95297a,1,0,c71d4fa4-86b0-41e2-8b6a-cfb91e131eaf,c71d4fa4-86b0-41e2-8b6a-cfb91e131eaf,1,0,4c1f2581-ee42-4df5-9169-20205a18a9be,4c1f2581-ee42-4df5-9169-20205a18a9be,1,0,bb3d9ea3-8895-4950-9ee9-4249ca983d48,bb3d9ea3-8895-4950-9ee9-4249ca983d48,1,0,86ea21fa-5ecc-4d81-b6ad-d71e7ed39009,86ea21fa-5ecc-4d81-b6ad-d71e7ed39009,1,0,b806d2b6-bbd1-4abd-9471-7791603a2fcf,b806d2b6-bbd1-4abd-9471-7791603a2fcf,1,0,d7aa519b-9a2e-4946-bd06-9ac22bb7c1e4,d7aa519b-9a2e-4946-bd06-9ac22bb7c1e4,1,0,ecee1ec8-aa1f-4b90-a1b3-2538a53c0dd7,ecee1ec8-aa1f-4b90-a1b3-2538a53c0dd7,1,0,34f50dd9-de16-4013-a2ef-6595d9c28930,34f50dd9-de16-4013-a2ef-6595d9c28930,1,0,56fcca65-3429-4409-bce7-f434f6530a74,56fcca65-3429-4409-bce7-f434f6530a74,1,0,5236ca8d-a4a6-4df8-a6a3-5cfe02c49aeb,5236ca8d-a4a6-4df8-a6a3-5cfe02c49aeb,1,0,bcfabf25-ae2f-4f73-836c-2cab3617a0b6,bcfabf25-ae2f-4f73-836c-2cab3617a0b6,1,0,b286f047-a4d0-4808-b1b4-27997ead6d49,b286f047-a4d0-4808-b1b4-27997ead6d49,1,0,49da2d3a-657a-4cfd-8e37-422b96d2cda5,49da2d3a-657a-4cfd-8e37-422b96d2cda5,1,0,fced16ae-abee-4fbe-9582-dfd368d5610a,fced16ae-abee-4fbe-9582-dfd368d5610a,1,0,afe60bad-1585-487f-9a39-9b9e031f9576,afe60bad-1585-487f-9a39-9b9e031f9576,1,0,4c4f0475-bd11-40c8-af0d-8affec6f838d,4c4f0475-bd11-40c8-af0d-8affec6f838d,1,0,7aee36ac-bbd1-4b06-8266-b7325fb9ce3c,7aee36ac-bbd1-4b06-8266-b7325fb9ce3c,1,0,855439d7-a621-48f5-b6d9-bc2bbd11ad90,855439d7-a621-48f5-b6d9-bc2bbd11ad90,1,0,4e0ec0f0-eb44-41b0-b950-88fdb6ac0db2,4e0ec0f0-eb44-41b0-b950-88fdb6ac0db2,1,0,2f25e742-555b-4db8-bff2-2d345ce2a93a,2f25e742-555b-4db8-bff2-2d345ce2a93a,1,0,303d8c17-4303-4f1d-8bed-51cd7ea0a4b2,303d8c17-4303-4f1d-8bed-51cd7ea0a4b2,1,0,46affd3a-f31c-4432-bd58-2f2b1ed9bc4e,46affd3a-f31c-4432-bd58-2f2b1ed9bc4e,1,0,a7fee9d3-569d-4b5b-bd47-44790e0095f5,a7fee9d3-569d-4b5b-bd47-44790e0095f5,1,0,a258fe12-7e55-4f89-86fa-962b1d2947ac,a258fe12-7e55-4f89-86fa-962b1d2947ac,1,0,93701593-5ac8-4266-b471-7e9ed35a9c3e,93701593-5ac8-4266-b471-7e9ed35a9c3e,1,0,0fdb864e-ede9-4777-835c-0804968ee544,0fdb864e-ede9-4777-835c-0804968ee544,1,0,04c45a51-4a8e-48fa-a39c-f67ce2079fc4,04c45a51-4a8e-48fa-a39c-f67ce2079fc4,1,0,b46546fe-3d6b-473f-a7cb-ff3b3ae0bafe,b46546fe-3d6b-473f-a7cb-ff3b3ae0bafe,1,0,e7b1810c-8e6c-4759-9e6f-c754b5a1ac77,e7b1810c-8e6c-4759-9e6f-c754b5a1ac77,1,0,5dee9814-fe38-4631-8148-8d6c87ef6f47,5dee9814-fe38-4631-8148-8d6c87ef6f47,1,0,37d17053-5c2b-4972-b6a5-a589f2ddbde6,37d17053-5c2b-4972-b6a5-a589f2ddbde6,1,0,c349968a-3f87-425b-8efb-d847934dee4b,c349968a-3f87-425b-8efb-d847934dee4b,1,0,3bb8dc33-970c-4c58-9036-ce716d963847,3bb8dc33-970c-4c58-9036-ce716d963847,1,0,fae0d2e0-1bcd-4a77-86d6-407ca05c1c95,fae0d2e0-1bcd-4a77-86d6-407ca05c1c95,1,0,b3ff39fa-f665-4d01-9a2a-69722e6b1071,b3ff39fa-f665-4d01-9a2a-69722e6b1071,1,0,0abacb0a-ce00-474e-8aec-35685c51ddef,0abacb0a-ce00-474e-8aec-35685c51ddef,1,0,ae407b17-03aa-4268-8603-58d6714dae89,ae407b17-03aa-4268-8603-58d6714dae89,1,0,5c0ce79b-97a9-4917-9b02-a4548a97d5a1,5c0ce79b-97a9-4917-9b02-a4548a97d5a1,1,0,c552cfac-d3ef-4b63-a0b9-7c79261ff9f3,c552cfac-d3ef-4b63-a0b9-7c79261ff9f3,1,0,5bb6e52c-ac26-4143-8e90-f04f703f823b,5bb6e52c-ac26-4143-8e90-f04f703f823b,1,0,579baaa4-6493-4d99-8744-6399757295c7,579baaa4-6493-4d99-8744-6399757295c7,1,0,ae6d0e12-8857-476c-b4b2-f03295cbed3e,ae6d0e12-8857-476c-b4b2-f03295cbed3e,1,0,cc8e3172-491d-45d8-a7eb-fc6c400845cb,cc8e3172-491d-45d8-a7eb-fc6c400845cb,1,0,d7cfc87f-ac09-44aa-91d9-6511c408c5cb,d7cfc87f-ac09-44aa-91d9-6511c408c5cb,1,0,7ee1e0d0-9735-45da-bd24-c0dbabfd5b1e,7ee1e0d0-9735-45da-bd24-c0dbabfd5b1e,1,0,bd0e3bd4-1207-41ea-8dfc-afa8f7d08cc2,bd0e3bd4-1207-41ea-8dfc-afa8f7d08cc2,1,0,51d83895-5692-4479-9612-07c790d19dff,51d83895-5692-4479-9612-07c790d19dff,1,0,9c1325af-7492-42be-b3af-51b692534510,9c1325af-7492-42be-b3af-51b692534510,1,0,dface15c-cd65-4fb1-b4dd-b513086d3f8e,dface15c-cd65-4fb1-b4dd-b513086d3f8e,1,0,d854b528-8456-4453-9c2d-4f96caf10481,d854b528-8456-4453-9c2d-4f96caf10481,1,0,245f870e-a53a-4d86-aa0a-c0c7709b8acb,245f870e-a53a-4d86-aa0a-c0c7709b8acb,1,0,476f6bfa-b10c-4e0f-8499-23c652715b3f,476f6bfa-b10c-4e0f-8499-23c652715b3f,1,0,65c9754b-53f6-4616-a9d4-74826f7b0ced,65c9754b-53f6-4616-a9d4-74826f7b0ced,1,0,eca2b076-d218-4d1c-948b-7894edf9fa49,eca2b076-d218-4d1c-948b-7894edf9fa49,1,0,d6969c1e-e13c-4542-abb7-9cf6bb50b8e2,d6969c1e-e13c-4542-abb7-9cf6bb50b8e2,1,0,ccd91f94-d3f1-4aa3-90cf-081d72c4cab1,ccd91f94-d3f1-4aa3-90cf-081d72c4cab1,1,0,aa7d5ca4-3c02-4ca1-a790-2435ee9f9f02,aa7d5ca4-3c02-4ca1-a790-2435ee9f9f02,1,0,b7e85f5c-4312-44c6-895a-3f636a8c78d8,b7e85f5c-4312-44c6-895a-3f636a8c78d8,1,0,3b6e7ee6-0ef5-464a-a01a-6143479c7a61,3b6e7ee6-0ef5-464a-a01a-6143479c7a61,1,0,1969e8d1-0a82-44cb-a0d4-e5badb1d28d4,1969e8d1-0a82-44cb-a0d4-e5badb1d28d4,1,0,a1afacc5-f49a-4df2-a44d-479594d50179,a1afacc5-f49a-4df2-a44d-479594d50179,1,0,fe70eba3-7477-4a38-a511-d69960abb928,fe70eba3-7477-4a38-a511-d69960abb928,1,0,6534ea96-2145-49e6-9739-f59459dc7f6b,6534ea96-2145-49e6-9739-f59459dc7f6b,1,0,f49bffa0-cad6-4801-b82e-21aa580e72e6,f49bffa0-cad6-4801-b82e-21aa580e72e6,1,0,bbbfb817-8db3-4415-86c3-af028276d6e9,bbbfb817-8db3-4415-86c3-af028276d6e9,1,0,6a91112c-f6cc-47a0-9d26-a36c7702af7d,6a91112c-f6cc-47a0-9d26-a36c7702af7d,1,0,40a59681-f31d-4fb9-9301-67c1430590e0,40a59681-f31d-4fb9-9301-67c1430590e0,1,0,cb92dc2e-6053-4233-a408-4464514b1257,cb92dc2e-6053-4233-a408-4464514b1257,1,0,8cd65ad3-a7a3-46f6-9061-e8751fd5073e,8cd65ad3-a7a3-46f6-9061-e8751fd5073e,1,0,85550a7a-8fe0-4296-ace5-63cf053536b4,85550a7a-8fe0-4296-ace5-63cf053536b4,1,0,cf1bd9cd-2ef2-4868-b6c0-5160860690f7,cf1bd9cd-2ef2-4868-b6c0-5160860690f7,1,0,9c3bc502-bcb1-4c90-ae43-53c798958339,9c3bc502-bcb1-4c90-ae43-53c798958339,1,0,3f8b6411-6606-4d27-891e-7c77be47c5f9,3f8b6411-6606-4d27-891e-7c77be47c5f9,1,0,bed3f0b2-40c6-4323-9bca-cb8864e38ec0,bed3f0b2-40c6-4323-9bca-cb8864e38ec0,1,0,5eb4ca7f-027a-4860-a167-e6b424527e7a,5eb4ca7f-027a-4860-a167-e6b424527e7a,1,0,f9b98ba5-1fa8-42a4-b1a2-dd71874083cb,f9b98ba5-1fa8-42a4-b1a2-dd71874083cb,1,0,6871015f-d959-4a77-a091-a23cb4ebd8f9,6871015f-d959-4a77-a091-a23cb4ebd8f9,1,0,e5e1631b-a494-4e73-b356-b4330b84cc88,e5e1631b-a494-4e73-b356-b4330b84cc88,1,0,f8f0857f-2c75-471a-ae0b-a3a265e1eb25,f8f0857f-2c75-471a-ae0b-a3a265e1eb25,1,0,a23f97fb-7ac9-4941-a2c6-bbff6c36ac12,a23f97fb-7ac9-4941-a2c6-bbff6c36ac12,1,0,80cf54ed-8677-4c89-a378-0abef6c64010,80cf54ed-8677-4c89-a378-0abef6c64010,1,0,f0dec7b3-2d6a-44ce-a1da-9c71ccd37539,f0dec7b3-2d6a-44ce-a1da-9c71ccd37539,1,0,56ee3afd-5ae6-421e-b9f3-26505e40f100,56ee3afd-5ae6-421e-b9f3-26505e40f100,1,0,63c9a839-78b2-4706-b380-5aedf6914930,63c9a839-78b2-4706-b380-5aedf6914930,1,0,40f5c1cb-2654-4738-bb44-6734b0e3490b,40f5c1cb-2654-4738-bb44-6734b0e3490b,1,0,2ec484b1-95eb-43a7-9430-1c1ef49f05af,2ec484b1-95eb-43a7-9430-1c1ef49f05af,1,0,1a314ce2-03bc-4267-89a9-bb5bb866f552,1a314ce2-03bc-4267-89a9-bb5bb866f552,1,0,e3b783a6-5ea2-4cd4-955b-df63d93c1f25,e3b783a6-5ea2-4cd4-955b-df63d93c1f25,1,0,f8ab62ad-7776-49ae-b1bb-51bea9a9992b,f8ab62ad-7776-49ae-b1bb-51bea9a9992b,1,0,e859dd18-8baf-49c0-b7a0-1205b6c125d3,e859dd18-8baf-49c0-b7a0-1205b6c125d3,1,0,da59378e-0a97-4cff-977b-cc51967068ee,da59378e-0a97-4cff-977b-cc51967068ee,1,0,bbaad46d-f60d-49e6-a077-075366bca47e,bbaad46d-f60d-49e6-a077-075366bca47e,1,0,0d9f5703-91e4-4769-bedd-5bd974f2f617,0d9f5703-91e4-4769-bedd-5bd974f2f617,1,0,926cdf17-1929-43d6-8205-858aab558ad9,926cdf17-1929-43d6-8205-858aab558ad9,1,0,5ec6838f-2d70-4f91-b41b-16adfe8ed587,5ec6838f-2d70-4f91-b41b-16adfe8ed587,1,0,6420ad7e-61ca-4af9-9715-f2b0c3e2c58f,6420ad7e-61ca-4af9-9715-f2b0c3e2c58f,1,0,bee8b8a0-f058-44cb-822c-620351567627,bee8b8a0-f058-44cb-822c-620351567627,1,0,26365e29-903b-47fd-ad96-e0d87f5d6e87,26365e29-903b-47fd-ad96-e0d87f5d6e87,1,0,569180cb-ce54-4267-94b9-332e35e3c17d,569180cb-ce54-4267-94b9-332e35e3c17d,1,0,9ec6fc35-e84e-4f82-b616-5c02e945cc8f,9ec6fc35-e84e-4f82-b616-5c02e945cc8f,1,0,a2c42946-1cdb-457a-a45b-97781cfb4a15,a2c42946-1cdb-457a-a45b-97781cfb4a15,1,0,20adf54c-044c-4bea-8028-b6d20917a030,20adf54c-044c-4bea-8028-b6d20917a030,1,0,dea6b05f-d3e1-4ff4-8f71-6a0c18134e94,dea6b05f-d3e1-4ff4-8f71-6a0c18134e94,1,0,fcb97a46-d5fd-4bb5-b899-17723a9fe346,fcb97a46-d5fd-4bb5-b899-17723a9fe346,1,0,a666af62-aa5d-4b2b-b9e5-017d1c93ae6a,a666af62-aa5d-4b2b-b9e5-017d1c93ae6a,1,0,7604b15a-8c5e-4515-84b9-c1d36f9efd0a,7604b15a-8c5e-4515-84b9-c1d36f9efd0a,1,0,a1a44832-6026-47ae-affd-5b6d52e84307,a1a44832-6026-47ae-affd-5b6d52e84307,1,0,d2fd8650-d13a-411d-8206-61b16016bd82,d2fd8650-d13a-411d-8206-61b16016bd82,1,0,f98bcdb8-6eed-4b4f-b3da-d80b5e8bed44,f98bcdb8-6eed-4b4f-b3da-d80b5e8bed44,1,0,fbaa5b0a-56dc-4bf1-b1b2-e48073f63d13,fbaa5b0a-56dc-4bf1-b1b2-e48073f63d13,1,0,a92acf0e-9132-4456-9a82-1543d98ca453,a92acf0e-9132-4456-9a82-1543d98ca453,1,0,4033eb31-8281-402a-afff-431fa36e589e,4033eb31-8281-402a-afff-431fa36e589e,1,0,5a1e1da5-7307-4f48-bb1c-2977fc4d7cef,5a1e1da5-7307-4f48-bb1c-2977fc4d7cef,1,0,f59488c7-4643-4988-8043-5c9724e04279,f59488c7-4643-4988-8043-5c9724e04279,1,0,cfe022b5-7647-4b5c-a2bd-f5d313f4a9db,cfe022b5-7647-4b5c-a2bd-f5d313f4a9db,1,0,3c0a9c45-8e57-43fa-8ae3-26b15571f2cd,3c0a9c45-8e57-43fa-8ae3-26b15571f2cd,1,0,85223d37-2503-4783-94dc-fe6265e718d5,85223d37-2503-4783-94dc-fe6265e718d5,1,0,0918cd76-56e5-4314-8a1c-c21d023ba6f8,0918cd76-56e5-4314-8a1c-c21d023ba6f8,1,0,9db21c2e-79fa-44e4-902e-416abfccb54a,9db21c2e-79fa-44e4-902e-416abfccb54a,1,0,fb082db3-197b-4d1e-b9ea-362624d547ee,fb082db3-197b-4d1e-b9ea-362624d547ee,1,0,c09dcf00-a45a-4487-99c5-d3a37956ec88,c09dcf00-a45a-4487-99c5-d3a37956ec88,1,0,531a5a0c-6ac9-4e93-8caa-42d9aad0bc82,531a5a0c-6ac9-4e93-8caa-42d9aad0bc82,1,0,2714e1b6-6b02-43a1-bc94-2934b429ed35,2714e1b6-6b02-43a1-bc94-2934b429ed35,1,0,e33c73b2-ef0b-49b7-a65f-ab2c814ad256,e33c73b2-ef0b-49b7-a65f-ab2c814ad256,1,0,4c7016da-9991-4917-8eaa-e760cc9e29d1,4c7016da-9991-4917-8eaa-e760cc9e29d1,1,0,febb3770-5c11-4ada-9e49-a27950bdaddf,febb3770-5c11-4ada-9e49-a27950bdaddf,1,0,d7b57669-e538-4e54-ab1b-8428f0586466,d7b57669-e538-4e54-ab1b-8428f0586466,1,0,9c484a15-039e-416d-af97-4c2bd90fd873,9c484a15-039e-416d-af97-4c2bd90fd873,1,0,534855e3-4cf2-471c-b982-7138917050c9,534855e3-4cf2-471c-b982-7138917050c9,1,0,4c72b944-d000-4920-aec8-54029f88ddf4,4c72b944-d000-4920-aec8-54029f88ddf4,1,0,b4033d05-05c2-4617-80d9-abfa389c47f4,b4033d05-05c2-4617-80d9-abfa389c47f4,1,0,aa29e1be-4e99-4136-8dc1-0124908979ad,aa29e1be-4e99-4136-8dc1-0124908979ad,1,0,0d76799d-7fc7-446b-88fb-dca839de00a5,0d76799d-7fc7-446b-88fb-dca839de00a5,1,0,cb5674c3-0d91-4948-bafd-d9ef44a2a69d,cb5674c3-0d91-4948-bafd-d9ef44a2a69d,1,0,ea4a869c-861c-412c-a3be-de1c57d1a251,ea4a869c-861c-412c-a3be-de1c57d1a251,1,0,eeafcc8c-fbe2-4bb4-8b8a-cf663208258d,eeafcc8c-fbe2-4bb4-8b8a-cf663208258d,1,0,6a3bd39a-59cb-4763-b49f-7ab67167a8b7,6a3bd39a-59cb-4763-b49f-7ab67167a8b7,1,0,50ac390d-324f-40bd-b3df-0468a63b94b6,50ac390d-324f-40bd-b3df-0468a63b94b6,1,0,80337710-2c60-45c4-ae1f-bb42731fb611,80337710-2c60-45c4-ae1f-bb42731fb611,1,0,9dcf467e-7701-4c7b-b747-95f4d9b9295c,9dcf467e-7701-4c7b-b747-95f4d9b9295c,1,0,77149f7a-8a76-4569-9487-991c41e132ef,77149f7a-8a76-4569-9487-991c41e132ef,1,0,9e1be65e-986f-4d21-91f0-15c66db0c947,9e1be65e-986f-4d21-91f0-15c66db0c947,1,0,75a0f8f1-6d8d-47d0-81c5-20b5e55b9cd1,75a0f8f1-6d8d-47d0-81c5-20b5e55b9cd1,1,0,d2fe4578-a1f8-4586-b052-fa71d25365c9,d2fe4578-a1f8-4586-b052-fa71d25365c9,1,0,f31f3dab-5796-47ac-a54d-3081f8cad817,f31f3dab-5796-47ac-a54d-3081f8cad817,1,0,cd59707e-b9e4-4038-8203-ae22a8060e8d,cd59707e-b9e4-4038-8203-ae22a8060e8d,1,0,db497857-33d3-49a1-b328-dfc62c973ecb,db497857-33d3-49a1-b328-dfc62c973ecb,1,0,139c001c-7b07-465a-9187-399ad32d294f,139c001c-7b07-465a-9187-399ad32d294f,1,0,5d228ce4-069e-4f98-beed-b8e1de17c3d9,5d228ce4-069e-4f98-beed-b8e1de17c3d9,1,0,9770fc09-87bf-4fce-9b0d-410efd30edae,9770fc09-87bf-4fce-9b0d-410efd30edae,1,0,f3d8590a-dcfa-4d41-8d03-642b99ffa040,f3d8590a-dcfa-4d41-8d03-642b99ffa040,1,0,3d73d5ff-995e-40ed-a401-cec2a3d12c8f,3d73d5ff-995e-40ed-a401-cec2a3d12c8f,1,0,20156709-1481-4007-8e89-9ce79fc589fc,20156709-1481-4007-8e89-9ce79fc589fc,1,0,fbcda361-0ef2-47b4-ba1c-1d1952898bd3,fbcda361-0ef2-47b4-ba1c-1d1952898bd3,1,0,7e7c5abd-b645-4de5-a40e-5805ec4456e2,7e7c5abd-b645-4de5-a40e-5805ec4456e2,1,0,763a16c3-a728-4b65-a485-705990310b4a,763a16c3-a728-4b65-a485-705990310b4a,1,0,65338920-c744-4d1e-b351-848b90a3feda,65338920-c744-4d1e-b351-848b90a3feda,1,0,2aedb1ac-caf1-45c7-913e-82a36637d5d4,2aedb1ac-caf1-45c7-913e-82a36637d5d4,1,0,e177e258-7d0c-4fe1-80e5-3b89de9e23d9,e177e258-7d0c-4fe1-80e5-3b89de9e23d9,1,0,3f25ac9f-c6b4-4ccc-bec4-a90c99403823,3f25ac9f-c6b4-4ccc-bec4-a90c99403823,1,0,56177464-5e9f-4598-96bc-eb311993c503,56177464-5e9f-4598-96bc-eb311993c503,1,0,c2308e60-2844-4bd8-bc8a-c9c20e5fc62d,c2308e60-2844-4bd8-bc8a-c9c20e5fc62d,1,0,bdfe65f4-4174-4e66-915c-943137981cf0,bdfe65f4-4174-4e66-915c-943137981cf0,1,0,5271de2d-d3a0-4128-90e0-cd8e1ea2ad30,5271de2d-d3a0-4128-90e0-cd8e1ea2ad30,1,0,c895d58a-5be1-4157-81af-f4f6db9b4b9e,c895d58a-5be1-4157-81af-f4f6db9b4b9e,1,0,8ce6cc1a-8570-4704-b9a3-44e815b2e753,8ce6cc1a-8570-4704-b9a3-44e815b2e753,1,0,71aa2bf7-85c9-40f3-a9b0-f6d666eddd28,71aa2bf7-85c9-40f3-a9b0-f6d666eddd28,1,0,497cbe4d-586d-48a2-8e98-d20e3e09ed42,497cbe4d-586d-48a2-8e98-d20e3e09ed42,1,0,38b7679d-3739-4572-baf2-d8c7b2a94f0a,38b7679d-3739-4572-baf2-d8c7b2a94f0a,1,0,1470f052-f032-46bc-b1ee-54555e725dfd,1470f052-f032-46bc-b1ee-54555e725dfd,1,0,4019a5e9-1f50-44b9-98ba-87c07a0ce4e5,4019a5e9-1f50-44b9-98ba-87c07a0ce4e5,1,0,7d336fdd-5cbf-4c92-a783-f451f7590502,7d336fdd-5cbf-4c92-a783-f451f7590502,1,0,ee8af8ee-e49a-4511-9a91-48814ab99d23,ee8af8ee-e49a-4511-9a91-48814ab99d23,1,0,3a7d9d49-b5e5-4c5c-958e-a4c6afda8b9d,3a7d9d49-b5e5-4c5c-958e-a4c6afda8b9d,1,0,bc10ad8f-383c-469a-8c0e-60805161055b,bc10ad8f-383c-469a-8c0e-60805161055b,1,0,86760ecb-2ddd-40ce-bc4f-94c23027a55e,86760ecb-2ddd-40ce-bc4f-94c23027a55e,1,0,6fbf844e-ee8d-490f-9177-6392d262312f,6fbf844e-ee8d-490f-9177-6392d262312f,1,0,703a3e8a-0204-4e8f-8fa0-a2ed1aeb7662,703a3e8a-0204-4e8f-8fa0-a2ed1aeb7662,1,0,f5d90a5a-1adb-49d6-8640-2e4054bdb99f,f5d90a5a-1adb-49d6-8640-2e4054bdb99f,1,0,37722a34-1148-4cc8-95e6-4645ae9cca98,37722a34-1148-4cc8-95e6-4645ae9cca98,1,0,11f32e0f-7d16-4ebd-9cef-fffd2d64e70a,11f32e0f-7d16-4ebd-9cef-fffd2d64e70a,1,0,cc34bd23-de0a-4b09-8333-e4693576b9f4,cc34bd23-de0a-4b09-8333-e4693576b9f4,1,0,b16d5e79-9d7e-4d3e-9be8-3b2a932abf78,b16d5e79-9d7e-4d3e-9be8-3b2a932abf78,1,0,903af13a-1f73-4145-a3d0-971c3be5fbe6,903af13a-1f73-4145-a3d0-971c3be5fbe6,1,0,fb42ad06-d5a4-40ea-817c-fa7ff385d8db,fb42ad06-d5a4-40ea-817c-fa7ff385d8db,1,0,bc110a6a-26fa-4aa1-a2ef-bdaeaa0a33af,bc110a6a-26fa-4aa1-a2ef-bdaeaa0a33af,1,0,953dbad6-4f5c-4319-874a-db358a77d001,953dbad6-4f5c-4319-874a-db358a77d001,1,0,05243f56-7e9b-4a61-8efb-1b5e525fff21,05243f56-7e9b-4a61-8efb-1b5e525fff21,1,0,7aa86a2d-2b47-447e-8901-806411011279,7aa86a2d-2b47-447e-8901-806411011279,1,0,fca0dfad-f853-4694-9ce9-53a3a10f59b7,fca0dfad-f853-4694-9ce9-53a3a10f59b7,1,0,934b8380-c6e0-49f8-a6c2-91c0ddb2f95e,934b8380-c6e0-49f8-a6c2-91c0ddb2f95e,1,0,57f4ee70-185e-4f2a-91a6-6c0bf93c1000,57f4ee70-185e-4f2a-91a6-6c0bf93c1000,1,0,b4cb92fb-ad82-44ed-9203-397b412b3453,b4cb92fb-ad82-44ed-9203-397b412b3453,1,0,69ceac29-06d3-45f2-b914-7966465cd0d3,69ceac29-06d3-45f2-b914-7966465cd0d3,1,0,b690721d-960b-4374-8d2c-feed3a2b354b,b690721d-960b-4374-8d2c-feed3a2b354b,1,0,271243d3-1871-4a0a-bf7f-63bacacf0a59,271243d3-1871-4a0a-bf7f-63bacacf0a59,1,0,b1ed134b-f2aa-4b06-b7a2-0e524ead04df,b1ed134b-f2aa-4b06-b7a2-0e524ead04df,1,0,150c9d05-4ccc-4cb7-879d-b1d9c3534343,150c9d05-4ccc-4cb7-879d-b1d9c3534343,1,0,65000437-bd07-4841-a458-679d44768c46,65000437-bd07-4841-a458-679d44768c46,1,0,1281fe19-bbca-4a4f-84d8-14187e62000f,1281fe19-bbca-4a4f-84d8-14187e62000f,1,0,9b7051d5-abc4-416c-a0e6-515d120d78e4,9b7051d5-abc4-416c-a0e6-515d120d78e4,1,0,86d1bc4e-f08d-48c7-8b3a-3c5feb0c843c,86d1bc4e-f08d-48c7-8b3a-3c5feb0c843c,1,0,869938e6-6310-4326-bd15-5b91fe2e0911,869938e6-6310-4326-bd15-5b91fe2e0911,1,0,8ed7254b-bbf8-49d9-8a73-9a91316fd02d,8ed7254b-bbf8-49d9-8a73-9a91316fd02d,1,0,a156521a-ece1-49d3-8056-1c3508273c45,a156521a-ece1-49d3-8056-1c3508273c45,1,0,075d39e0-a77a-4d0b-9260-7524fb5b2d0c,075d39e0-a77a-4d0b-9260-7524fb5b2d0c,1,0,10018f80-3138-4089-bf9a-a5f178f1e295,10018f80-3138-4089-bf9a-a5f178f1e295,1,0,43aba109-4b7f-45ef-9c30-8b754e81911b,43aba109-4b7f-45ef-9c30-8b754e81911b,1,0,4ccd72e1-7fd7-4a3b-8428-71b44992937e,4ccd72e1-7fd7-4a3b-8428-71b44992937e,1,0,46077650-2b2c-4319-8279-41f277971669,46077650-2b2c-4319-8279-41f277971669,1,0,4afe733d-64a0-4ea5-9d12-6e2c86eb91e4,4afe733d-64a0-4ea5-9d12-6e2c86eb91e4,1,0,612f3b95-d7db-4b33-92b5-4873205b424b,612f3b95-d7db-4b33-92b5-4873205b424b,1,0,d0b79c3d-b0c5-4eb3-9971-1def1c88698f,d0b79c3d-b0c5-4eb3-9971-1def1c88698f,1,0,e82ebd72-7b5a-4f45-b853-1001bf680a05,e82ebd72-7b5a-4f45-b853-1001bf680a05,1,0,a74879b8-c080-4cc0-b44f-2b7c4dae87fe,a74879b8-c080-4cc0-b44f-2b7c4dae87fe,1,0,e9e9b733-e97a-430d-95ce-45ea27751f64,e9e9b733-e97a-430d-95ce-45ea27751f64,1,0,86ffe9a7-9b3e-49ab-bd88-20269fec56bc,86ffe9a7-9b3e-49ab-bd88-20269fec56bc,1,0,3dd50c66-27f7-4f1e-86e9-c709995c8609,3dd50c66-27f7-4f1e-86e9-c709995c8609,1,0,45c0003f-0ed7-4582-b84e-217fdc4ddeaf,45c0003f-0ed7-4582-b84e-217fdc4ddeaf,1,0,ed1369c5-c274-45bd-ae91-7648565ae09f,ed1369c5-c274-45bd-ae91-7648565ae09f,1,0,8d0fce61-a22f-4033-9e03-3f00c4a21722,8d0fce61-a22f-4033-9e03-3f00c4a21722,1,0,bfb3f026-e940-49c3-ac30-408186f9e11e,bfb3f026-e940-49c3-ac30-408186f9e11e,1,0,e1dc83eb-a8cd-454b-8de8-cff2049be78c,e1dc83eb-a8cd-454b-8de8-cff2049be78c,1,0,9edd9288-1463-4d67-b9f0-40f351d978e9,9edd9288-1463-4d67-b9f0-40f351d978e9,1,0,c9db6c68-965f-4567-b26e-5d497a389de1,c9db6c68-965f-4567-b26e-5d497a389de1,1,0,4da2f65d-56bd-4140-9b31-e5ccac4a800a,4da2f65d-56bd-4140-9b31-e5ccac4a800a,1,0,eb163bba-b94c-4a78-9c2d-7b519325e3d4,eb163bba-b94c-4a78-9c2d-7b519325e3d4,1,0,58cdbd20-a7f4-4c4c-8a4e-638714cc2699,58cdbd20-a7f4-4c4c-8a4e-638714cc2699,1,0,616cd2cc-eaf4-4586-bca1-c044429b491a,616cd2cc-eaf4-4586-bca1-c044429b491a,1,0,939bdb9a-294b-4b42-a56f-030f69bc29c4,939bdb9a-294b-4b42-a56f-030f69bc29c4,1,0,ee7a763b-bcbf-4ff3-89af-eb7965b33515,ee7a763b-bcbf-4ff3-89af-eb7965b33515,1,0,e72b3ae6-00e9-45d7-a4f3-bc8a5a2f5ae4,e72b3ae6-00e9-45d7-a4f3-bc8a5a2f5ae4,1,0,81d900be-ddc1-417f-ae2c-1aacf040de9a,81d900be-ddc1-417f-ae2c-1aacf040de9a,1,0,c65f69ce-be78-4e8d-b91d-293c4108ce77,c65f69ce-be78-4e8d-b91d-293c4108ce77,1,0,521a5717-0b38-401d-bd72-30cee219bd14,521a5717-0b38-401d-bd72-30cee219bd14,1,0,977c30dc-6f27-4931-9fd5-d12ed147e3ec,977c30dc-6f27-4931-9fd5-d12ed147e3ec,1,0,eea4f72e-dd1b-46c7-b270-876a482236b3,eea4f72e-dd1b-46c7-b270-876a482236b3,1,0,25e8d286-dfbb-4fdf-974b-fe3f6f76eac0,25e8d286-dfbb-4fdf-974b-fe3f6f76eac0,1,0,2d249dad-8b4f-462b-ab13-892639a6e071,2d249dad-8b4f-462b-ab13-892639a6e071,1,0,f6249bf4-d2e7-48f3-808f-d776915d14cb,f6249bf4-d2e7-48f3-808f-d776915d14cb,1,0,75f11ecd-c87a-4a14-a7ca-c755f63d7cf8,75f11ecd-c87a-4a14-a7ca-c755f63d7cf8,1,0,883cdeb0-e747-4157-bbe7-0ebc423a82af,883cdeb0-e747-4157-bbe7-0ebc423a82af,1,0,ba62ac73-91da-4dad-abc7-3cf8acf7e315,ba62ac73-91da-4dad-abc7-3cf8acf7e315,1,0,6a71416d-dba1-4883-9264-597ecf9d6270,6a71416d-dba1-4883-9264-597ecf9d6270,1,0,ce3fc202-7893-4d1b-9c8f-1b3349a5c147,ce3fc202-7893-4d1b-9c8f-1b3349a5c147,1,0,6593baab-fce0-49ed-867e-be242bfc08d7,6593baab-fce0-49ed-867e-be242bfc08d7,1,0,403390cf-d3f8-4dfa-b83d-e2fca4ee0dff,403390cf-d3f8-4dfa-b83d-e2fca4ee0dff,1,0,57aed64d-da61-4c18-af21-dab3afdc5c03,57aed64d-da61-4c18-af21-dab3afdc5c03,1,0,452822b4-a590-44db-ab77-d8c01f7300e7,452822b4-a590-44db-ab77-d8c01f7300e7,1,0,62a71ba7-3226-4d10-8cc9-ac9908a00ae7,62a71ba7-3226-4d10-8cc9-ac9908a00ae7,1,0,6ce1d71d-7548-4ee7-be78-21ae23d5a08d,6ce1d71d-7548-4ee7-be78-21ae23d5a08d,1,0,f5ad6743-b19b-44c4-b3d1-2e39d74a4abd,f5ad6743-b19b-44c4-b3d1-2e39d74a4abd,1,0,4b89b7fb-31d9-43c7-9f7e-b0c31fa3331d,4b89b7fb-31d9-43c7-9f7e-b0c31fa3331d,1,0,19b29d30-e395-42f2-b700-7474bb2cdcb7,19b29d30-e395-42f2-b700-7474bb2cdcb7,1,0,b0deb957-624b-4bcb-824c-76aedf1affe9,b0deb957-624b-4bcb-824c-76aedf1affe9,1,0,9934e608-593d-45d0-9df3-539f0c8fc385,9934e608-593d-45d0-9df3-539f0c8fc385,1,0,80da4126-4319-425f-8427-7d60652cf754,80da4126-4319-425f-8427-7d60652cf754,1,0,05236ace-bcdd-4eb8-a1fb-5843ee311d10,05236ace-bcdd-4eb8-a1fb-5843ee311d10,1,0,0f1b284c-6c9e-4799-bc47-3326c4b7bec2,0f1b284c-6c9e-4799-bc47-3326c4b7bec2,1,0,449060fd-4711-4b9e-93e0-11b35c314fb3,449060fd-4711-4b9e-93e0-11b35c314fb3,1,0,e7efa9d5-ea93-4070-87bb-a4d95116d1b4,e7efa9d5-ea93-4070-87bb-a4d95116d1b4,1,0,0614d340-6524-4715-978d-87ab21377e72,0614d340-6524-4715-978d-87ab21377e72,1,0,d47daac5-ec3b-4d4e-8b01-045a37f7074d,d47daac5-ec3b-4d4e-8b01-045a37f7074d,1,0,9d6ed3b9-35cd-47c0-9dfc-732e5066a071,9d6ed3b9-35cd-47c0-9dfc-732e5066a071,1,0,912cbd30-1ed5-4888-a4b6-98e9215b28e9,912cbd30-1ed5-4888-a4b6-98e9215b28e9,1,0,abf093ce-be63-487d-8be4-be282aa475be,abf093ce-be63-487d-8be4-be282aa475be,1,0,7a910ad6-b922-4716-8140-1540d76296b2,7a910ad6-b922-4716-8140-1540d76296b2,1,0,a52450c7-af49-4f92-862f-47015826b447,a52450c7-af49-4f92-862f-47015826b447,1,0,2a19f8a7-4f9f-4e47-a8f4-271a6a13ddc0,2a19f8a7-4f9f-4e47-a8f4-271a6a13ddc0,1,0,3efa225a-db76-479a-b2fa-a40fd0ffb720,3efa225a-db76-479a-b2fa-a40fd0ffb720,1,0,807dd284-31cc-4725-8463-26b31a75d6bc,807dd284-31cc-4725-8463-26b31a75d6bc,1,0,00b7d44c-3f8a-4120-91f3-a63f073d8b37,00b7d44c-3f8a-4120-91f3-a63f073d8b37,1,0,d64f073e-4b58-4020-9233-ca8fbdcf85b2,d64f073e-4b58-4020-9233-ca8fbdcf85b2,1,0,5189beb9-b939-4f97-aca0-c2f3492ac8b9,5189beb9-b939-4f97-aca0-c2f3492ac8b9,1,0,b8931f98-c1d7-4e9b-be43-065064e7ba95,b8931f98-c1d7-4e9b-be43-065064e7ba95,1,0,ab2b472d-97d5-4c33-86fd-e2cdaedf3f3d,ab2b472d-97d5-4c33-86fd-e2cdaedf3f3d,1,0,60848308-931c-4da3-aa4b-37f6fb4b194f,60848308-931c-4da3-aa4b-37f6fb4b194f,1,0,08af8da8-d44b-46f0-a8d3-60421e7b5a1a,08af8da8-d44b-46f0-a8d3-60421e7b5a1a,1,0,54b14504-503b-45f6-9b5d-785b49829425,54b14504-503b-45f6-9b5d-785b49829425,1,0,80d3ee33-1cdc-4af6-85c2-787094526592,80d3ee33-1cdc-4af6-85c2-787094526592,1,0,c8b28660-6cb0-4ef5-85c2-a75da863ba96,c8b28660-6cb0-4ef5-85c2-a75da863ba96,1,0,1cd607b4-49fc-460e-a014-6afe50083b47,1cd607b4-49fc-460e-a014-6afe50083b47,1,0,a215e767-36e9-4408-9d18-7b4be757022a,a215e767-36e9-4408-9d18-7b4be757022a,1,0,a3e262bc-9f0d-480d-a1d1-c2326105d22d,a3e262bc-9f0d-480d-a1d1-c2326105d22d,1,0,8eae0c79-288b-4773-90bb-49299ad45628,8eae0c79-288b-4773-90bb-49299ad45628,1,0,2faa5594-f1b4-4312-b674-82fdf9623105,2faa5594-f1b4-4312-b674-82fdf9623105,1,0,185c1ad3-b5db-49b6-9342-d08e1bf64903,185c1ad3-b5db-49b6-9342-d08e1bf64903,1,0,3c69a4ad-001d-4421-88f6-412e15d710d6,3c69a4ad-001d-4421-88f6-412e15d710d6,1,0,d0373603-5abb-4f7b-8d2f-9f7fb52615aa,d0373603-5abb-4f7b-8d2f-9f7fb52615aa,1,0,f20a35fe-6029-4dc8-b6b4-b098dbce12e8,f20a35fe-6029-4dc8-b6b4-b098dbce12e8,1,0,6a68a08a-ea37-4573-ab9f-ec822f6d250b,6a68a08a-ea37-4573-ab9f-ec822f6d250b,1,0,00e87d04-8104-420b-b2c6-7304889a75b2,00e87d04-8104-420b-b2c6-7304889a75b2,1,0,bde86820-f7bb-463b-97d0-bfa5f8323af0,bde86820-f7bb-463b-97d0-bfa5f8323af0,1,0,289a6aac-dc4e-4fae-8815-853e78d450bb,289a6aac-dc4e-4fae-8815-853e78d450bb,1,0,557e7d89-83ed-45d0-86cc-6e355f14025d,557e7d89-83ed-45d0-86cc-6e355f14025d,1,0,d681b26b-dd8d-46d7-986e-10f05c37a1e4,d681b26b-dd8d-46d7-986e-10f05c37a1e4,1,0,4d3c216e-c04f-4884-8681-1c861c50ce7d,4d3c216e-c04f-4884-8681-1c861c50ce7d,1,0,4a41eee0-c973-4824-a07c-9fcf731f055e,4a41eee0-c973-4824-a07c-9fcf731f055e,1,0,ee756c33-f408-4449-a6bb-3186a0421362,ee756c33-f408-4449-a6bb-3186a0421362,1,0,fbfa8f64-52e4-48f6-b0fb-fd06976dd93d,fbfa8f64-52e4-48f6-b0fb-fd06976dd93d,1,0,6ff66622-4d20-4696-9fe9-4b4faeb21d96,6ff66622-4d20-4696-9fe9-4b4faeb21d96,1,0,46237eec-c206-4d21-883c-27599b9ed38c,46237eec-c206-4d21-883c-27599b9ed38c,1,0,92cbfe14-35c5-440b-9a13-ef8c8ab0630a,92cbfe14-35c5-440b-9a13-ef8c8ab0630a,1,0,8ce759ff-f579-461c-bb1e-9ac2b01e88df,8ce759ff-f579-461c-bb1e-9ac2b01e88df,1,0,8b451909-2c15-48f2-b869-65e7031cc542,8b451909-2c15-48f2-b869-65e7031cc542,1,0,ab6ff81a-56aa-4742-afe4-d7a652e9d2de,ab6ff81a-56aa-4742-afe4-d7a652e9d2de,1,0,7b377fca-4466-476f-9eb2-0b00141103d6,7b377fca-4466-476f-9eb2-0b00141103d6,1,0,9ce5eceb-f366-4035-956e-62721358b154,9ce5eceb-f366-4035-956e-62721358b154,1,0,1685c406-d0cb-4e0a-a3b0-036c8c22942a,1685c406-d0cb-4e0a-a3b0-036c8c22942a,1,0,892dc4c4-a72b-4dbf-af62-9f9ae0e05aa1,892dc4c4-a72b-4dbf-af62-9f9ae0e05aa1,1,0,81db41a6-2580-4a69-b1fd-57cfd48a7efa,81db41a6-2580-4a69-b1fd-57cfd48a7efa,1,0,0db8b3b2-bf24-4006-9897-797084c241ef,0db8b3b2-bf24-4006-9897-797084c241ef,1,0,fd9d34d9-9c9c-4c05-9c08-b93d4b237adf,fd9d34d9-9c9c-4c05-9c08-b93d4b237adf,1,0,381b7dae-6b34-42a7-9fee-2a4af8a1cc18,381b7dae-6b34-42a7-9fee-2a4af8a1cc18,1,0,31e9ca0d-9ae1-4740-a0a6-2739aa29c99f,31e9ca0d-9ae1-4740-a0a6-2739aa29c99f,1,0,20091427-d173-40ca-b2c4-53ee99b0b5ae,20091427-d173-40ca-b2c4-53ee99b0b5ae,1,0,14cbde39-a39a-48e5-9b72-b798a0bcea3f,14cbde39-a39a-48e5-9b72-b798a0bcea3f,1,0,56871c10-e3af-4679-afad-3baa910d73bb,56871c10-e3af-4679-afad-3baa910d73bb,1,0,f81b51c5-57e4-41f8-9ad5-3d2717351b95,f81b51c5-57e4-41f8-9ad5-3d2717351b95,1,0,3c09f0cd-fbec-46ae-95b0-a00cc53c07ef,3c09f0cd-fbec-46ae-95b0-a00cc53c07ef,1,0,de0a39e0-d37d-47c6-a019-e44836edc8d1,de0a39e0-d37d-47c6-a019-e44836edc8d1,1,0,1fdcc1e7-ad53-409e-ba13-84c6429740cd,1fdcc1e7-ad53-409e-ba13-84c6429740cd,1,0,71d544bf-15c1-4581-8baa-ac126308425c,71d544bf-15c1-4581-8baa-ac126308425c,1,0,1bd0b688-d0fb-4ca2-85aa-4bd82b72ccc2,1bd0b688-d0fb-4ca2-85aa-4bd82b72ccc2,1,0,7acfe30e-73cb-465a-88f2-92b7275dc49b,7acfe30e-73cb-465a-88f2-92b7275dc49b,1,0,8e387dac-5029-49da-a013-355df0a51a44,8e387dac-5029-49da-a013-355df0a51a44,1,0,13859664-8307-40e8-855b-557b9cf2f1ec,13859664-8307-40e8-855b-557b9cf2f1ec,1,0,e4397fba-507f-497c-9414-7d08ccd4d799,e4397fba-507f-497c-9414-7d08ccd4d799,1,0,794f5fb5-3b8f-4f45-9250-7a3b9d1db383,794f5fb5-3b8f-4f45-9250-7a3b9d1db383,1,0,f7a89bfc-e3c9-4894-a2df-6c229b4e0fd8,f7a89bfc-e3c9-4894-a2df-6c229b4e0fd8,1,0,1e8b70ce-27fc-418f-b3f3-e6efbce9f7a2,1e8b70ce-27fc-418f-b3f3-e6efbce9f7a2,1,0,d915d338-3e4c-45c3-aef5-a07cf41b05f6,d915d338-3e4c-45c3-aef5-a07cf41b05f6,1,0,978640a2-5c4b-4e21-857e-34f00840fba8,978640a2-5c4b-4e21-857e-34f00840fba8,1,0,da2913e3-a29b-423f-9aae-08fed56a7d90,da2913e3-a29b-423f-9aae-08fed56a7d90,1,0,149e72b8-cc03-4b4f-8ca4-07987600c34d,149e72b8-cc03-4b4f-8ca4-07987600c34d,1,0,7649bd7b-fe8c-4338-80fc-153160a5e538,7649bd7b-fe8c-4338-80fc-153160a5e538,1,0,7779cd6d-8fa1-49cb-9bbc-9dfd0979f3f4,7779cd6d-8fa1-49cb-9bbc-9dfd0979f3f4,1,0,3dec1ae7-90bb-45ab-aa04-48cfbc14742e,3dec1ae7-90bb-45ab-aa04-48cfbc14742e,1,0,6137605e-4850-44ec-b4ee-048bd8e0ec3a,6137605e-4850-44ec-b4ee-048bd8e0ec3a,1,0,ee28aa9b-0f31-4d8b-8444-43b8bc88bd23,ee28aa9b-0f31-4d8b-8444-43b8bc88bd23,1,0,0e6e9372-beb4-478e-9428-71b19a60739b,0e6e9372-beb4-478e-9428-71b19a60739b,1,0,32b11498-542f-46b2-829f-1525936ab7fa,32b11498-542f-46b2-829f-1525936ab7fa,1,0,64afa916-4750-4008-8c6c-2a470fb11283,64afa916-4750-4008-8c6c-2a470fb11283,1,0,f4a85bfb-40c7-4f81-af32-d07b96c53ad0,f4a85bfb-40c7-4f81-af32-d07b96c53ad0,1,0,35354abc-9a76-4ee8-8796-c24b37365ea0,35354abc-9a76-4ee8-8796-c24b37365ea0,1,0,7078977f-31bf-427e-ac37-e309d81fe999,7078977f-31bf-427e-ac37-e309d81fe999,1,0,bb39ae51-be82-4bb5-a30e-2bf2b53be59e,bb39ae51-be82-4bb5-a30e-2bf2b53be59e,1,0,d8854555-9e15-4d82-a1fd-656a848a8e8a,d8854555-9e15-4d82-a1fd-656a848a8e8a,1,0,53191842-ea05-4491-84d7-071cd201992d,53191842-ea05-4491-84d7-071cd201992d,1,0,86c70449-4cf7-4baf-9742-b82b134ed929,86c70449-4cf7-4baf-9742-b82b134ed929,1,0,af3b1881-163a-4c07-a1d9-77ceadf59c77,af3b1881-163a-4c07-a1d9-77ceadf59c77,1,0,b78be6fb-7db8-48c8-ba7b-aab1fea34890,b78be6fb-7db8-48c8-ba7b-aab1fea34890,1,0,bd27276a-e80c-4135-b341-f99a816ffe86,bd27276a-e80c-4135-b341-f99a816ffe86,1,0,35306678-147c-4ad1-a3c6-c80a11afa22f,35306678-147c-4ad1-a3c6-c80a11afa22f,1,0,0da75726-ae71-4d83-a696-a774c787a8a2,0da75726-ae71-4d83-a696-a774c787a8a2,1,0,5b30b0e9-f986-49b8-8668-5bb0e09f0cfe,5b30b0e9-f986-49b8-8668-5bb0e09f0cfe,1,0,896a7267-0198-4cbb-b6e6-7aa157c0cc61,896a7267-0198-4cbb-b6e6-7aa157c0cc61,1,0,2005bf54-219b-4111-bff1-e12e2c6dca3e,2005bf54-219b-4111-bff1-e12e2c6dca3e,1,0,abab8f73-d705-4350-b44d-f912649a2190,abab8f73-d705-4350-b44d-f912649a2190,1,0,20c9c25c-f8c9-429f-84bd-543cb809abef,20c9c25c-f8c9-429f-84bd-543cb809abef,1,0,dc5f451e-3275-43a8-9f48-45b83220d461,dc5f451e-3275-43a8-9f48-45b83220d461,1,0,028f5e81-61df-4d13-876d-781c5fd18ee6,028f5e81-61df-4d13-876d-781c5fd18ee6,1,0,3cbb59ef-7f64-4590-8a54-ba01e78283c3,3cbb59ef-7f64-4590-8a54-ba01e78283c3,1,0,a5b83672-2ead-4d0a-a4e5-ddd991f1addc,a5b83672-2ead-4d0a-a4e5-ddd991f1addc,1,0,388eb513-fadb-40cd-8a7b-33b904dd758e,388eb513-fadb-40cd-8a7b-33b904dd758e,1,0,0613c6aa-e1fe-4632-a396-a17ec773158f,0613c6aa-e1fe-4632-a396-a17ec773158f,1,0,1a330987-4c79-4ab7-b250-db8d32c78751,1a330987-4c79-4ab7-b250-db8d32c78751,1,0,555062ed-9a04-41d8-877f-0a667e9a08cd,555062ed-9a04-41d8-877f-0a667e9a08cd,1,0,5b1db523-b5cb-4ff8-8662-5feeb4282b4a,5b1db523-b5cb-4ff8-8662-5feeb4282b4a,1,0,ac160e1c-fef7-4625-84e0-964b397f6bdb,ac160e1c-fef7-4625-84e0-964b397f6bdb,1,0,b8946d9c-dda8-4b94-8cbf-db62b647c53e,b8946d9c-dda8-4b94-8cbf-db62b647c53e,1,0,24215916-7732-4030-9f88-163f644e94f7,24215916-7732-4030-9f88-163f644e94f7,1,0,69697945-9748-4cea-a20f-e244b46de2e8,69697945-9748-4cea-a20f-e244b46de2e8,1,0,68538fd1-262c-43ea-b09f-8a66643a0062,68538fd1-262c-43ea-b09f-8a66643a0062,1,0,d042a8e1-a7b9-4f26-abc4-d618bc73e9f5,d042a8e1-a7b9-4f26-abc4-d618bc73e9f5,1,0,82ad24cc-d9f8-440b-a720-e204101d85da,82ad24cc-d9f8-440b-a720-e204101d85da,1,0,aa63c001-c3da-4179-8fd8-fe2ff510511e,aa63c001-c3da-4179-8fd8-fe2ff510511e,1,0,b2e894b0-6443-4a52-95b6-6b564f809680,b2e894b0-6443-4a52-95b6-6b564f809680,1,0,8010065f-aec8-4768-85ec-9eb7b2b01e7e,8010065f-aec8-4768-85ec-9eb7b2b01e7e,1,0,a44348cb-e20c-4afd-8483-3b9c735b352c,a44348cb-e20c-4afd-8483-3b9c735b352c,1,0,ebfe4c74-6e16-4b64-8a52-cea95c446903,ebfe4c74-6e16-4b64-8a52-cea95c446903,1,0,ea9ed37c-7f58-43a8-990c-f1feb5d2d275,ea9ed37c-7f58-43a8-990c-f1feb5d2d275,1,0,d912e472-9553-4b96-8b16-7aaff6c14239,d912e472-9553-4b96-8b16-7aaff6c14239,1,0,b04018b5-a74d-43c9-8519-6cc8aa23fe09,b04018b5-a74d-43c9-8519-6cc8aa23fe09,1,0,8f5af22e-3e73-4a4f-b91e-eccd0f5084fd,8f5af22e-3e73-4a4f-b91e-eccd0f5084fd,1,0,9283277f-2b75-4c3a-810a-8d4071b3afcc,9283277f-2b75-4c3a-810a-8d4071b3afcc,1,0,d03d5b18-57a2-43c0-99ea-8ad9d5788179,d03d5b18-57a2-43c0-99ea-8ad9d5788179,1,0,c491a7fc-14f9-498a-b7dd-575dfc66878e,c491a7fc-14f9-498a-b7dd-575dfc66878e,1,0,db15f8eb-4736-4b47-9cee-3e6883f0888c,db15f8eb-4736-4b47-9cee-3e6883f0888c,1,0,59064eb2-2770-4f1c-96bd-801926fe68ef,59064eb2-2770-4f1c-96bd-801926fe68ef,1,0,df81cc63-26f2-4e66-bf0b-fd083a6a7d7b,df81cc63-26f2-4e66-bf0b-fd083a6a7d7b,1,0,8a8848b8-345a-452d-bf95-28f9c91c7e95,8a8848b8-345a-452d-bf95-28f9c91c7e95,1,0,a9441693-87ca-4157-98e1-63375852755c,a9441693-87ca-4157-98e1-63375852755c,1,0,6303ea55-e8ed-4acc-9717-941eefafc2a9,6303ea55-e8ed-4acc-9717-941eefafc2a9,1,0,5b4e1b83-fc10-4acc-bef7-81c73dbbc453,5b4e1b83-fc10-4acc-bef7-81c73dbbc453,1,0,d0b17206-3949-4513-a47f-02e1a8ba369a,d0b17206-3949-4513-a47f-02e1a8ba369a,1,0,cb4f20d4-13e6-4c27-b491-da7931f4bf05,cb4f20d4-13e6-4c27-b491-da7931f4bf05,1,0,6b2340d7-687f-43a3-8eb8-8ddb86712466,6b2340d7-687f-43a3-8eb8-8ddb86712466,1,0,40b08a20-51a3-438b-ba54-466917ea809f,40b08a20-51a3-438b-ba54-466917ea809f,1,0,9846e2f6-d82a-42a6-bf50-2a9cdf750a8f,9846e2f6-d82a-42a6-bf50-2a9cdf750a8f,1,0,9328da5c-4689-4a60-8136-ae9eac46ab38,9328da5c-4689-4a60-8136-ae9eac46ab38,1,0,ca5d586f-81bb-40ee-b3bd-de854857c984,ca5d586f-81bb-40ee-b3bd-de854857c984,1,0,af22406b-daac-475d-b6a9-577452502b84,af22406b-daac-475d-b6a9-577452502b84,1,0,7a925960-a579-4b06-90e0-5121dc774024,7a925960-a579-4b06-90e0-5121dc774024,1,0,32c10512-7bb8-423b-9503-ab2fa41386a4,32c10512-7bb8-423b-9503-ab2fa41386a4,1,0,888edfc4-8140-4675-b267-c32bf1d8d29d,888edfc4-8140-4675-b267-c32bf1d8d29d,1,0,2abbd53a-0ead-42af-8df6-fde663aea300,2abbd53a-0ead-42af-8df6-fde663aea300,1,0,24611bf9-5492-443a-935c-a0058e86493f,24611bf9-5492-443a-935c-a0058e86493f,1,0,42641296-64da-46e0-a407-de2d492f9c90,42641296-64da-46e0-a407-de2d492f9c90,1,0,b834af0b-086c-445d-a271-7e178c324551,b834af0b-086c-445d-a271-7e178c324551,1,0,ec34befe-3c0b-4a75-b943-840c52e7dda5,ec34befe-3c0b-4a75-b943-840c52e7dda5,1,0,7f18eb86-e9ac-4cb8-a9aa-389f61dff582,7f18eb86-e9ac-4cb8-a9aa-389f61dff582,1,0,b5e81952-e469-4f26-b8d2-90e7d9e7bc1d,b5e81952-e469-4f26-b8d2-90e7d9e7bc1d,1,0,6733f1bd-7878-4a33-8995-c07526e87c1a,6733f1bd-7878-4a33-8995-c07526e87c1a,1,0,f7e73257-fae1-465a-ae74-faaa0273a416,f7e73257-fae1-465a-ae74-faaa0273a416,1,0,73f89524-dbe8-426f-8ee6-1277eb1967cc,73f89524-dbe8-426f-8ee6-1277eb1967cc,1,0,ee7d970c-cef7-4740-a357-1fe78f88a6e6,ee7d970c-cef7-4740-a357-1fe78f88a6e6,1,0,ff18803b-4c3a-4720-a718-7547f04c6e2f,ff18803b-4c3a-4720-a718-7547f04c6e2f,1,0,0e0670d6-d8f7-4728-bd1b-f016fffa0570,0e0670d6-d8f7-4728-bd1b-f016fffa0570,1,0,13beb01d-dd08-4a6d-863b-651e70bbf51f,13beb01d-dd08-4a6d-863b-651e70bbf51f,1,0,a53f6e85-fbf7-4fb1-9301-d63e812fe16c,a53f6e85-fbf7-4fb1-9301-d63e812fe16c,1,0,57a0f5f3-6573-4b35-af25-cea3a25641f1,57a0f5f3-6573-4b35-af25-cea3a25641f1,1,0,0b7c4cb7-5126-4b5e-8941-cd56eaef76a0,0b7c4cb7-5126-4b5e-8941-cd56eaef76a0,1,0,144d5498-bb61-4bec-bef3-85a5a4aec3d5,144d5498-bb61-4bec-bef3-85a5a4aec3d5,1,0,ecaa0af8-549c-4c07-82ff-1c4e02ff15b8,ecaa0af8-549c-4c07-82ff-1c4e02ff15b8,1,0,45a8c780-c067-40d7-bbe9-81f854aacf7a,45a8c780-c067-40d7-bbe9-81f854aacf7a,1,0,57885cac-059a-4a08-aa2c-43b116d2c777,57885cac-059a-4a08-aa2c-43b116d2c777,1,0,c0403df4-b1f2-4d7e-adb5-9ed881c1359b,c0403df4-b1f2-4d7e-adb5-9ed881c1359b,1,0,56b570b1-93b0-468a-9672-9c71113753f3,56b570b1-93b0-468a-9672-9c71113753f3,1,0,e693eac3-f55d-4102-ac6d-b14ef33fb2e7,e693eac3-f55d-4102-ac6d-b14ef33fb2e7,1,0,e7b0ae70-0192-456c-9dc5-e66049fa9df2,e7b0ae70-0192-456c-9dc5-e66049fa9df2,1,0,68944d09-618e-4fa3-a7af-8c84218e0ac7,68944d09-618e-4fa3-a7af-8c84218e0ac7,1,0,91b12ce3-e8ba-4c9d-9daa-1d5532500314,91b12ce3-e8ba-4c9d-9daa-1d5532500314,1,0,733dc291-0bef-4fe8-ac9f-63440f0c2ad0,733dc291-0bef-4fe8-ac9f-63440f0c2ad0,1,0,5b7b7dc3-dbef-4854-9395-30a3ae4d751c,5b7b7dc3-dbef-4854-9395-30a3ae4d751c,1,0,cb57aabc-eeef-42b4-9bc2-873cebd9618c,cb57aabc-eeef-42b4-9bc2-873cebd9618c,1,0,2fcd2c85-6778-42fa-9bdd-a6ba47497ec0,2fcd2c85-6778-42fa-9bdd-a6ba47497ec0,1,0,52f30ed7-aa16-4ce2-9684-e50229ab0015,52f30ed7-aa16-4ce2-9684-e50229ab0015,1,0,79c2e2bd-f923-42ec-8bdc-3e517e08ee7c,79c2e2bd-f923-42ec-8bdc-3e517e08ee7c,1,0,0526492c-be48-4c84-8d68-19fa1c7e9d6e,0526492c-be48-4c84-8d68-19fa1c7e9d6e,1,0,54ecaf7b-9bc5-483c-96e1-270bcd323590,54ecaf7b-9bc5-483c-96e1-270bcd323590,1,0,2a1f77ba-fa2e-4281-8e68-7ec4ca0261b7,2a1f77ba-fa2e-4281-8e68-7ec4ca0261b7,1,0,58f6f8fa-7473-40f5-973a-6279335d8f33,58f6f8fa-7473-40f5-973a-6279335d8f33,1,0,ec0c3187-de61-4bc8-a52a-7617f47ffb6d,ec0c3187-de61-4bc8-a52a-7617f47ffb6d,1,0,1e71ec59-55a4-45e8-a8c9-f70c2cb56589,1e71ec59-55a4-45e8-a8c9-f70c2cb56589,1,0,fa3632fe-185b-49aa-85ae-dfb721835d40,fa3632fe-185b-49aa-85ae-dfb721835d40,1,0,a4f15108-477c-465e-aaea-cb495ef52cf5,a4f15108-477c-465e-aaea-cb495ef52cf5,1,0,9cda5c2c-f401-4f63-b445-cef160296e48,9cda5c2c-f401-4f63-b445-cef160296e48,1,0,e8ae4a26-3127-43ae-af7a-c2e278d2611d,e8ae4a26-3127-43ae-af7a-c2e278d2611d,1,0,b923c78f-d074-41b4-b832-086686258f19,b923c78f-d074-41b4-b832-086686258f19,1,0,8ff96413-6fdd-4b8d-a181-ea0d8633defc,8ff96413-6fdd-4b8d-a181-ea0d8633defc,1,0,54604ed2-766b-4308-b99e-447817d82799,54604ed2-766b-4308-b99e-447817d82799,1,0,7abdb07b-edbc-4c3b-aa53-afaa92dc9071,7abdb07b-edbc-4c3b-aa53-afaa92dc9071,1,0,f48b4475-2cd9-41df-962a-6529f84985ca,f48b4475-2cd9-41df-962a-6529f84985ca,1,0,2fbfe405-48e6-4abf-99c2-7f1f66a62b48,2fbfe405-48e6-4abf-99c2-7f1f66a62b48,1,0,5e6637c7-19b5-4ac2-a8e9-d119e49f444e,5e6637c7-19b5-4ac2-a8e9-d119e49f444e,1,0,bf94feb9-edf7-4df8-b5f5-805613663a0a,bf94feb9-edf7-4df8-b5f5-805613663a0a,1,0,6d852a13-c85e-4e84-8396-f91c1ed0596e,6d852a13-c85e-4e84-8396-f91c1ed0596e,1,0,9c2d5313-a4fd-417e-a340-ad4980d0028b,9c2d5313-a4fd-417e-a340-ad4980d0028b,1,0,4fb4a280-9426-4c41-a9ba-11f9d01a0740,4fb4a280-9426-4c41-a9ba-11f9d01a0740,1,0,1591ee7e-870c-4bf7-9450-be84f1b2506f,1591ee7e-870c-4bf7-9450-be84f1b2506f,1,0,8f088f33-92d7-4e35-915d-6cda1129dd80,8f088f33-92d7-4e35-915d-6cda1129dd80,1,0,9a8578a2-8a92-4ab3-a480-173340f8b34a,9a8578a2-8a92-4ab3-a480-173340f8b34a,1,0,4889d27b-435b-4059-a34d-6afdf3c77fa3,4889d27b-435b-4059-a34d-6afdf3c77fa3,1,0,4ebf0988-ccc3-440c-bd0f-2d01636bd730,4ebf0988-ccc3-440c-bd0f-2d01636bd730,1,0,c1be2a02-53b8-4c28-92b2-b6e0c83ab452,c1be2a02-53b8-4c28-92b2-b6e0c83ab452,1,0,4b54d626-dc59-4e49-a708-0a7f98833b9a,4b54d626-dc59-4e49-a708-0a7f98833b9a,1,0,1c90a423-ef1b-42dc-a43b-1fda89672481,1c90a423-ef1b-42dc-a43b-1fda89672481,1,0,095cf2d6-5a7c-452d-8d60-991afb6e52bd,095cf2d6-5a7c-452d-8d60-991afb6e52bd,1,0,f9213a70-bfd6-464f-b28b-ed35bdf351c0,f9213a70-bfd6-464f-b28b-ed35bdf351c0,1,0,ca5957af-69c9-4640-b9a9-b241c4f9eaa7,ca5957af-69c9-4640-b9a9-b241c4f9eaa7,1,0,7e32c295-a769-4cff-a3eb-992f7031475f,7e32c295-a769-4cff-a3eb-992f7031475f,1,0,eb81610a-eb2f-4068-ba74-75e0f5bbace8,eb81610a-eb2f-4068-ba74-75e0f5bbace8,1,0,21826316-0b49-4034-a49e-6d34c15ceb5c,21826316-0b49-4034-a49e-6d34c15ceb5c,1,0,3abffa47-8d47-4173-897b-708e1a06ef39,3abffa47-8d47-4173-897b-708e1a06ef39,1,0,0cf3d615-76a1-428d-9d25-0d7fdf09e4ae,0cf3d615-76a1-428d-9d25-0d7fdf09e4ae,1,0,5a398637-a06c-4442-9093-a864fa7f049f,5a398637-a06c-4442-9093-a864fa7f049f,1,0,38692186-a62a-42d1-87cd-7dbc6d4816ed,38692186-a62a-42d1-87cd-7dbc6d4816ed,1,0,6cfcdb89-ccb2-45fe-a7b1-5a29ccd6c5ae,6cfcdb89-ccb2-45fe-a7b1-5a29ccd6c5ae,1,0,3a28cea9-7fd7-4834-ab89-2a74331a64e3,3a28cea9-7fd7-4834-ab89-2a74331a64e3,1,0,0f881709-4520-4f18-af9d-cf08757693ff,0f881709-4520-4f18-af9d-cf08757693ff,1,0,c5151ca9-5103-42b2-8573-273c15416db8,c5151ca9-5103-42b2-8573-273c15416db8,1,0,fe4aa694-76c4-49c9-96ce-a2476f4ff58b,fe4aa694-76c4-49c9-96ce-a2476f4ff58b,1,0,ba8c43ad-678a-4b18-8bbe-5a1b12d19b74,ba8c43ad-678a-4b18-8bbe-5a1b12d19b74,1,0,115a6019-ef87-4126-8ebf-070c1e882940,115a6019-ef87-4126-8ebf-070c1e882940,1,0,162ce023-b2e1-41dc-bcaf-b8e30caccce0,162ce023-b2e1-41dc-bcaf-b8e30caccce0,1,0,52bdd3cc-7103-4dbf-a3c3-dd46cf03da12,52bdd3cc-7103-4dbf-a3c3-dd46cf03da12,1,0,c13fb1cd-fe72-48a6-b383-55b6323619ce,c13fb1cd-fe72-48a6-b383-55b6323619ce,1,0,956fc8ee-96be-4309-b1e8-209372f151ab,956fc8ee-96be-4309-b1e8-209372f151ab,1,0,526c688e-a4d4-45f7-8bba-b8ceff38fe27,526c688e-a4d4-45f7-8bba-b8ceff38fe27,1,0,67efa786-312f-4c9c-b970-0320e92069af,67efa786-312f-4c9c-b970-0320e92069af,1,0,12f85e09-1190-4483-b531-630ab718db7f,12f85e09-1190-4483-b531-630ab718db7f,1,0,52f4453e-e968-4290-a79a-470f68fbd07f,52f4453e-e968-4290-a79a-470f68fbd07f,1,0,5b952e35-1037-4447-8293-6d8889692c8b,5b952e35-1037-4447-8293-6d8889692c8b,1,0,05bc8b4e-8c90-4502-8b16-7b1e7625d569,05bc8b4e-8c90-4502-8b16-7b1e7625d569,1,0,ce34d88d-3017-4197-a962-ea23a6a96d32,ce34d88d-3017-4197-a962-ea23a6a96d32,1,0,2cbc16da-aa67-4ad6-82f8-fa6922447be6,2cbc16da-aa67-4ad6-82f8-fa6922447be6,1,0,19d7a1ba-c343-4575-95da-53dac6d4b2cb,19d7a1ba-c343-4575-95da-53dac6d4b2cb,1,0,6cc8b3a0-3377-4b39-b6b0-69c862a15465,6cc8b3a0-3377-4b39-b6b0-69c862a15465,1,0,acb193f4-52e5-4572-a79b-b825a2f6525f,acb193f4-52e5-4572-a79b-b825a2f6525f,1,0,5d46f719-e468-48e2-b4ec-acb85c710451,5d46f719-e468-48e2-b4ec-acb85c710451,1,0,9fb13bfe-80c7-43c3-b0da-9185ab197ce2,9fb13bfe-80c7-43c3-b0da-9185ab197ce2,1,0,cd80a520-1d1c-4d80-8a4a-360ac1ca98d8,cd80a520-1d1c-4d80-8a4a-360ac1ca98d8,1,0,e9aef0c8-9dc4-4c4a-8288-8b2d9860624d,e9aef0c8-9dc4-4c4a-8288-8b2d9860624d,1,0,5422610d-b92c-4213-a58c-8db067d93b66,5422610d-b92c-4213-a58c-8db067d93b66,1,0,8f59a635-9e0e-470d-8fda-a47a262a59c2,8f59a635-9e0e-470d-8fda-a47a262a59c2,1,0,ffb50eb9-149a-46ec-9472-d8f20ad09810,ffb50eb9-149a-46ec-9472-d8f20ad09810,1,0,5ae3bba3-dc98-4470-a73d-3bd951c0a3f2,5ae3bba3-dc98-4470-a73d-3bd951c0a3f2,1,0,7a6449e2-e90a-4720-a769-192284ef69c1,7a6449e2-e90a-4720-a769-192284ef69c1,1,0,02118b98-2349-46b1-a328-d6e2b5781f7e,02118b98-2349-46b1-a328-d6e2b5781f7e,1,0,67de9cbb-5c80-4cff-bfbe-269a958e08e6,67de9cbb-5c80-4cff-bfbe-269a958e08e6,1,0,2228a457-6805-41ee-85af-5ebca9568bf4,2228a457-6805-41ee-85af-5ebca9568bf4,1,0,96b71795-e230-4ecb-b98d-4feb3f8b9662,96b71795-e230-4ecb-b98d-4feb3f8b9662,1,0,04055821-03ce-4049-af2c-8670c80517f6,04055821-03ce-4049-af2c-8670c80517f6,1,0,0101305d-62eb-4802-9cd4-d615a518d842,0101305d-62eb-4802-9cd4-d615a518d842,1,0,898d2ba7-631a-4e7a-9bdf-cd2ef411e57a,898d2ba7-631a-4e7a-9bdf-cd2ef411e57a,1,0,bf1fc624-60d7-4a04-bb3a-b6e2882bebfe,bf1fc624-60d7-4a04-bb3a-b6e2882bebfe,1,0,7c424424-9660-462d-9cf2-4c1e6bd284fa,7c424424-9660-462d-9cf2-4c1e6bd284fa,1,0,e118f957-ab2c-473b-ab64-37032f727416,e118f957-ab2c-473b-ab64-37032f727416,1,0,e770e26e-a3a4-487d-b3bb-aeb63d8b7323,e770e26e-a3a4-487d-b3bb-aeb63d8b7323,1,0,21f64e5f-dc94-4ce9-b836-e75646ae3325,21f64e5f-dc94-4ce9-b836-e75646ae3325,1,0,82e8a180-f2e1-406c-9609-89d33504aff2,82e8a180-f2e1-406c-9609-89d33504aff2,1,0,e7437c81-3d5b-466e-880c-8febe4a68e88,e7437c81-3d5b-466e-880c-8febe4a68e88,1,0,99bc26f9-ba56-4c63-9fd1-c2f3d630b93c,99bc26f9-ba56-4c63-9fd1-c2f3d630b93c,1,0,307771e6-bcf7-4016-b369-e1655bbe9e94,307771e6-bcf7-4016-b369-e1655bbe9e94,1,0,bf8c60f7-7dea-4a2c-8ce2-7001a6a37bfa,bf8c60f7-7dea-4a2c-8ce2-7001a6a37bfa,1,0,38fc6a54-846c-40b0-9254-3261f540bf18,38fc6a54-846c-40b0-9254-3261f540bf18,1,0,d9134d0c-56cd-4b8f-ab11-ae37fc306801,d9134d0c-56cd-4b8f-ab11-ae37fc306801,1,0,9408d0ee-bd61-4b95-ac7c-98de139b5f9e,9408d0ee-bd61-4b95-ac7c-98de139b5f9e,1,0,8f2af24b-f5fa-4f6d-831e-28453bdedefc,8f2af24b-f5fa-4f6d-831e-28453bdedefc,1,0,d119e21d-0087-4f22-b3bd-b14707b65330,d119e21d-0087-4f22-b3bd-b14707b65330,1,0,dc9b4072-11de-40fe-bf2a-f7b15af0a250,dc9b4072-11de-40fe-bf2a-f7b15af0a250,1,0,e2cf5ca9-c2a0-4506-89e6-318cad0a48a3,e2cf5ca9-c2a0-4506-89e6-318cad0a48a3,1,0,5aecdfd1-1cd7-4523-be23-7e32fcb01a94,5aecdfd1-1cd7-4523-be23-7e32fcb01a94,1,0,932b1c1a-72eb-49cd-8218-d0ced9c454d8,932b1c1a-72eb-49cd-8218-d0ced9c454d8,1,0,96d70dc4-02bd-47ad-9465-81de6ff5bdc9,96d70dc4-02bd-47ad-9465-81de6ff5bdc9,1,0,38acaf7a-5a77-40bf-ba2a-17b31cccd37d,38acaf7a-5a77-40bf-ba2a-17b31cccd37d,1,0,cb604857-8e49-4f2f-b5c8-2a7d8a3cf8e4,cb604857-8e49-4f2f-b5c8-2a7d8a3cf8e4,1,0,f33e9c76-e523-4f4e-ab4b-3fc1b256d8dd,f33e9c76-e523-4f4e-ab4b-3fc1b256d8dd,1,0,5dd336c4-88c5-4f53-acf0-5f86a658c528,5dd336c4-88c5-4f53-acf0-5f86a658c528,1,0,c723112b-286d-46f1-989d-81252062a025,c723112b-286d-46f1-989d-81252062a025,1,0,67e8b47e-4bad-4b2f-b196-8a9708893051,67e8b47e-4bad-4b2f-b196-8a9708893051,1,0,39bddcde-697c-4e77-adfd-e4a77529ea97,39bddcde-697c-4e77-adfd-e4a77529ea97,1,0,a3b15381-bf9b-4b26-96eb-392fa2cc8223,a3b15381-bf9b-4b26-96eb-392fa2cc8223,1,0,a583e53a-3f3c-48c7-8928-37ce40b2bafe,a583e53a-3f3c-48c7-8928-37ce40b2bafe,1,0,a844dd4a-274a-4894-9446-031dbe006084,a844dd4a-274a-4894-9446-031dbe006084,1,0,9a740f81-5437-47af-8ed9-ea62edcb2ea1,9a740f81-5437-47af-8ed9-ea62edcb2ea1,1,0,cdf54c86-0a1c-4f74-93ee-6d8d8db0a778,cdf54c86-0a1c-4f74-93ee-6d8d8db0a778,1,0,77bdd30f-4933-4bda-9c7a-b0a097da0910,77bdd30f-4933-4bda-9c7a-b0a097da0910,1,0,a8d52851-4293-4fe4-b2cb-f9c8c166ed97,a8d52851-4293-4fe4-b2cb-f9c8c166ed97,1,0,d4879ecc-8f1a-4183-99a8-d6dfc1eed3f8,d4879ecc-8f1a-4183-99a8-d6dfc1eed3f8,1,0,a682e9e1-284f-4e32-86b2-6736f159f585,a682e9e1-284f-4e32-86b2-6736f159f585,1,0,84f0bd89-9b86-440f-b942-9b685e22233e,84f0bd89-9b86-440f-b942-9b685e22233e,1,0,f2d508b3-9425-4ce6-86d8-5893ca4a8cd6,f2d508b3-9425-4ce6-86d8-5893ca4a8cd6,1,0,ce61612f-bcbb-4a02-bca0-d88e0ee42bd7,ce61612f-bcbb-4a02-bca0-d88e0ee42bd7,1,0,c1c35035-44cc-4aa1-ae8e-db3513ddc5f3,c1c35035-44cc-4aa1-ae8e-db3513ddc5f3,1,0,ac52baa1-02cb-4ce8-8f4f-1f9441b1cda0,ac52baa1-02cb-4ce8-8f4f-1f9441b1cda0,1,0,fabf8a0b-366f-4f23-9377-315534bb854b,fabf8a0b-366f-4f23-9377-315534bb854b,1,0,7aac6439-64c9-4492-b866-bf91dda82d06,7aac6439-64c9-4492-b866-bf91dda82d06,1,0,6ffe3723-c6df-497b-a3ff-d817fbabfd8c,6ffe3723-c6df-497b-a3ff-d817fbabfd8c,1,0,528a82b7-ef06-4d90-bb32-bd6d76ed6c74,528a82b7-ef06-4d90-bb32-bd6d76ed6c74,1,0,08b86f29-64ef-467a-af1a-d27ffdf621ba,08b86f29-64ef-467a-af1a-d27ffdf621ba,1,0,6483d1ab-c53d-4985-ad7e-b799adbcd9da,6483d1ab-c53d-4985-ad7e-b799adbcd9da,1,0,82f66233-ed13-49ae-ab72-7cf91c88c760,82f66233-ed13-49ae-ab72-7cf91c88c760,1,0,75cddbcd-e960-4164-81d8-ac0a2a36e95b,75cddbcd-e960-4164-81d8-ac0a2a36e95b,1,0,e14d57f4-ae4a-4644-9ec1-a6af1b3e4c41,e14d57f4-ae4a-4644-9ec1-a6af1b3e4c41,1,0,314f8451-ba96-46cd-bf9f-3a87df7d2a5b,314f8451-ba96-46cd-bf9f-3a87df7d2a5b,1,0,d9151001-a911-45c1-a8e6-dcf0da623ed3,d9151001-a911-45c1-a8e6-dcf0da623ed3,1,0,30e06f80-b6d0-4fa9-a346-8e17dbe2fb68,30e06f80-b6d0-4fa9-a346-8e17dbe2fb68,1,0,e589a693-ff50-4c36-ae26-a8fcae966d57,e589a693-ff50-4c36-ae26-a8fcae966d57,1,0,8bacb87e-c2e9-41f5-bae1-c3a6b0e8179f,8bacb87e-c2e9-41f5-bae1-c3a6b0e8179f,1,0,90f023f5-5b48-4f98-bfc6-b704277a355d,90f023f5-5b48-4f98-bfc6-b704277a355d,1,0,99485603-706d-4301-be25-82b1c0ee8f4d,99485603-706d-4301-be25-82b1c0ee8f4d,1,0,e7a28021-c75e-41b2-9974-cf4beee34d28,e7a28021-c75e-41b2-9974-cf4beee34d28,1,0,21e3bdf3-7cec-42de-8ef3-5815b9a1b747,21e3bdf3-7cec-42de-8ef3-5815b9a1b747,1,0,2a603c61-4cbf-4c6d-a0b2-40c835d36737,2a603c61-4cbf-4c6d-a0b2-40c835d36737,1,0,a8d7f071-401b-499e-957c-d077d8002e54,a8d7f071-401b-499e-957c-d077d8002e54,1,0,b6206c73-cf17-4e74-a14d-f2a2ef2b2cc1,b6206c73-cf17-4e74-a14d-f2a2ef2b2cc1,1,0,b363f72f-3629-453c-9f7d-9828ef6de733,b363f72f-3629-453c-9f7d-9828ef6de733,1,0,211a539b-4be9-4816-98f6-f756e65eafd8,211a539b-4be9-4816-98f6-f756e65eafd8,1,0,e2d8167d-3ebf-4771-b9e0-e6382d68cc18,e2d8167d-3ebf-4771-b9e0-e6382d68cc18,1,0,e9b9da80-7806-4c9c-a002-01cfa3109169,e9b9da80-7806-4c9c-a002-01cfa3109169,1,0,a271041d-0203-4ecd-bb39-70256c50192e,a271041d-0203-4ecd-bb39-70256c50192e,1,0,73eff626-a363-4a5a-879e-61ef6ce0726f,73eff626-a363-4a5a-879e-61ef6ce0726f,1,0,acf15b79-a6c4-4c46-8013-50d3b223baf6,acf15b79-a6c4-4c46-8013-50d3b223baf6,1,0,f6a29b80-e4c3-4c4f-8e2c-d4dda851d813,f6a29b80-e4c3-4c4f-8e2c-d4dda851d813,1,0,2d8d5d74-2bc0-4282-af66-e4a37694c147,2d8d5d74-2bc0-4282-af66-e4a37694c147,1,0,cfd31341-287b-4684-9ac0-b28b4e066f15,cfd31341-287b-4684-9ac0-b28b4e066f15,1,0,81de1b0b-7f2d-4098-ae99-061c6a90dc29,81de1b0b-7f2d-4098-ae99-061c6a90dc29,1,0,f829e2a9-5bdb-4171-8b32-8d10d5968813,f829e2a9-5bdb-4171-8b32-8d10d5968813,1,0,647ba8f8-57f7-4c19-af59-525517c1e392,647ba8f8-57f7-4c19-af59-525517c1e392,1,0,39062cb3-4ae8-4c0d-889b-038a55179946,39062cb3-4ae8-4c0d-889b-038a55179946,1,0,c62d4212-36ca-4afb-bac9-269b6f64ca51,c62d4212-36ca-4afb-bac9-269b6f64ca51,1,0,5cec5e16-46ad-4f8c-b869-f5b1cc487884,5cec5e16-46ad-4f8c-b869-f5b1cc487884,1,0,ca0363bb-81c2-4fce-b2f0-e8f42d118a74,ca0363bb-81c2-4fce-b2f0-e8f42d118a74,1,0,7aacdf81-49fd-47a3-a36a-c483f1b05872,7aacdf81-49fd-47a3-a36a-c483f1b05872,1,0,857015e2-afb2-403d-bfb7-7acb5080797b,857015e2-afb2-403d-bfb7-7acb5080797b,1,0,5657286b-114b-41de-ab7d-45d0f0d95e2d,5657286b-114b-41de-ab7d-45d0f0d95e2d,1,0,42a0271e-6783-44db-95c1-09805ae01f58,42a0271e-6783-44db-95c1-09805ae01f58,1,0,8628783e-4fad-4dff-8220-9e0ddc8580f8,8628783e-4fad-4dff-8220-9e0ddc8580f8,1,0,356fc245-3034-42d1-84d0-632c6dc7a3d5,356fc245-3034-42d1-84d0-632c6dc7a3d5,1,0,07462664-6b58-4f5a-9b3f-2e5c376f17df,07462664-6b58-4f5a-9b3f-2e5c376f17df,1,0,6f23e946-f700-424b-b9bf-3a9c8846908d,6f23e946-f700-424b-b9bf-3a9c8846908d,1,0,f3ef5989-a848-4a7f-8ac5-0eca882a6aa1,f3ef5989-a848-4a7f-8ac5-0eca882a6aa1,1,0,4f5087ab-cc60-4d1e-ba83-a319536bf8ba,4f5087ab-cc60-4d1e-ba83-a319536bf8ba,1,0,07d0d6e9-e0a7-4543-9668-3850c1e0a15c,07d0d6e9-e0a7-4543-9668-3850c1e0a15c,1,0,c656771c-dcb7-4c78-9a16-e62806d5bb5a,c656771c-dcb7-4c78-9a16-e62806d5bb5a,1,0,ec42c45c-18ca-44b0-9c59-1cb204552a43,ec42c45c-18ca-44b0-9c59-1cb204552a43,1,0,2aafb1a1-4321-47e9-9783-03ab616a2873,2aafb1a1-4321-47e9-9783-03ab616a2873,1,0,71109997-6da0-4eaf-bbf2-f94fa24f37cc,71109997-6da0-4eaf-bbf2-f94fa24f37cc,1,0,a3deeef2-f8a2-462f-a57f-87d89e4ec12a,a3deeef2-f8a2-462f-a57f-87d89e4ec12a,1,0,d601281c-379d-4a9d-843e-478fd6567415,d601281c-379d-4a9d-843e-478fd6567415,1,0,fd9b3f7d-d25d-4ecb-8b87-218d5ccf1f7b,fd9b3f7d-d25d-4ecb-8b87-218d5ccf1f7b,1,0,427e6f15-334e-42be-9554-895d8f7ebfc6,427e6f15-334e-42be-9554-895d8f7ebfc6,1,0,e85a4314-7b63-4294-9bd0-ff77e3ae7c1e,e85a4314-7b63-4294-9bd0-ff77e3ae7c1e,1,0,36bc8523-41a5-48ff-9bd0-758d078c4408,36bc8523-41a5-48ff-9bd0-758d078c4408,1,0,94ca1b45-3cf0-4857-8299-999c93f4fb56,94ca1b45-3cf0-4857-8299-999c93f4fb56,1,0,ee8419c6-79ca-4546-9a66-bacaa08d2a73,ee8419c6-79ca-4546-9a66-bacaa08d2a73,1,0,e36ddb60-2f21-4c5f-b96c-947bcf2af42a,e36ddb60-2f21-4c5f-b96c-947bcf2af42a,1,0,d4a0ca3b-3985-4ba2-9e96-1c5baed28b46,d4a0ca3b-3985-4ba2-9e96-1c5baed28b46,1,0,ada11ea2-94d5-4172-a383-a51774599568,ada11ea2-94d5-4172-a383-a51774599568,1,0,50515bbc-43ee-4b00-bfc5-105b7981bd8f,50515bbc-43ee-4b00-bfc5-105b7981bd8f,1,0,1ea080b0-0a11-4152-b8bb-4918bc142a23,1ea080b0-0a11-4152-b8bb-4918bc142a23,1,0,a21cd1c1-4649-4dc2-9dbd-a913f2d6ca75,a21cd1c1-4649-4dc2-9dbd-a913f2d6ca75,1,0,6930e471-7935-4d68-a980-2acde93ba801,6930e471-7935-4d68-a980-2acde93ba801,1,0,2c425fa5-b10b-4a6f-926a-5cb4c1f2d491,2c425fa5-b10b-4a6f-926a-5cb4c1f2d491,1,0,5135cc48-c749-4acb-a225-d110f386f482,5135cc48-c749-4acb-a225-d110f386f482,1,0,15e6f31b-556a-4f47-9f40-2f69ac7fcb43,15e6f31b-556a-4f47-9f40-2f69ac7fcb43,1,0,53c4c3b2-9257-4d02-8df8-6b55fe9abdae,53c4c3b2-9257-4d02-8df8-6b55fe9abdae,1,0,d2dba2ae-e987-4c9d-a289-3dc19afa87cd,d2dba2ae-e987-4c9d-a289-3dc19afa87cd,1,0,2e9fa546-96fb-4ecb-b933-7921e131e89b,2e9fa546-96fb-4ecb-b933-7921e131e89b,1,0,4645b1ad-eb8f-484c-b29c-2093d9ef9dba,4645b1ad-eb8f-484c-b29c-2093d9ef9dba,1,0,637a132b-1a88-44ba-b45f-ed4ed1ac1001,637a132b-1a88-44ba-b45f-ed4ed1ac1001,1,0,699f734b-43d2-4351-bff8-e0e21e164a42,699f734b-43d2-4351-bff8-e0e21e164a42,1,0,95f0792a-7ac4-450a-b05c-219741e61abd,95f0792a-7ac4-450a-b05c-219741e61abd,1,0,742a2e8c-496e-4e02-931d-d33f7afe07a5,742a2e8c-496e-4e02-931d-d33f7afe07a5,1,0,c3efa853-cd29-4618-929f-e3bec33dfd65,c3efa853-cd29-4618-929f-e3bec33dfd65,1,0,62185c28-3d24-487a-9441-b309dcf11e31,62185c28-3d24-487a-9441-b309dcf11e31,1,0,9f264aeb-664d-4724-8248-11873d63ef3b,9f264aeb-664d-4724-8248-11873d63ef3b,1,0,b926d058-53a9-4eea-b4f9-98e77f798dd9,b926d058-53a9-4eea-b4f9-98e77f798dd9,1,0,495e2c77-4868-4191-ac18-f94e55a5982e,495e2c77-4868-4191-ac18-f94e55a5982e,1,0,20191a65-322c-457d-85f5-ed1258b6fe8e,20191a65-322c-457d-85f5-ed1258b6fe8e,1,0,23b46ecd-14dc-4cc5-8ff0-c676a8337aee,23b46ecd-14dc-4cc5-8ff0-c676a8337aee,1,0,769c60aa-44f4-4c98-a461-d3f5c2b67f61,769c60aa-44f4-4c98-a461-d3f5c2b67f61,1,0,f9809c99-0eaa-4249-967c-a4bef4763277,f9809c99-0eaa-4249-967c-a4bef4763277,1,0,37fa88a0-f2c1-455f-a28d-74165e8b933d,37fa88a0-f2c1-455f-a28d-74165e8b933d,1,0,e4476f09-909b-49f7-8e01-72eea8ceaca6,e4476f09-909b-49f7-8e01-72eea8ceaca6,1,0,2861412c-46f0-454e-b81d-fe081afb5c7a,2861412c-46f0-454e-b81d-fe081afb5c7a,1,0,2b4ece05-b694-42e9-8239-55722fd84294,2b4ece05-b694-42e9-8239-55722fd84294,1,0,6564ce89-134f-4726-8693-fd93aad46180,6564ce89-134f-4726-8693-fd93aad46180,1,0,0d743731-da5d-4c99-b19f-e93c69b77e14,0d743731-da5d-4c99-b19f-e93c69b77e14,1,0,d6f15367-23e2-4766-bc7c-8acd0063aa0c,d6f15367-23e2-4766-bc7c-8acd0063aa0c,1,0,966b1bde-5b0c-446d-b38b-dc037e2ff7ad,966b1bde-5b0c-446d-b38b-dc037e2ff7ad,1,0,fa4c5665-4d73-4db2-a055-8c1c8a302f82,fa4c5665-4d73-4db2-a055-8c1c8a302f82,1,0,e3e0caa1-6d3f-45a6-9043-d58a34f35b8f,e3e0caa1-6d3f-45a6-9043-d58a34f35b8f,1,0,9100b286-8ae9-4de3-b116-5ce0fa95b80c,9100b286-8ae9-4de3-b116-5ce0fa95b80c,1,0,3d315df6-e000-4cbd-810d-0b26c0d1bc54,3d315df6-e000-4cbd-810d-0b26c0d1bc54,1,0,fa429302-ccaf-4c89-8a11-3a1d30817c00,fa429302-ccaf-4c89-8a11-3a1d30817c00,1,0,9b4c49ce-93da-439a-8d67-f3774e92800a,9b4c49ce-93da-439a-8d67-f3774e92800a,1,0,5f8fa827-7017-4b45-b458-3571b8b611f5,5f8fa827-7017-4b45-b458-3571b8b611f5,1,0,79749167-2912-4e06-9deb-7915a1b4390d,79749167-2912-4e06-9deb-7915a1b4390d,1,0,1c93fcd3-53a1-403f-a30b-454fbc941d55,1c93fcd3-53a1-403f-a30b-454fbc941d55,1,0,0fc54be4-2e19-45cf-b62f-7cbc70a70d5f,0fc54be4-2e19-45cf-b62f-7cbc70a70d5f,1,0,adec3963-b22f-4463-a3f4-c9ec27d187a8,adec3963-b22f-4463-a3f4-c9ec27d187a8,1,0,d8dae0c8-8e11-44bf-bf60-d316220f3e82,d8dae0c8-8e11-44bf-bf60-d316220f3e82,1,0,12afec4d-1728-4aa8-86e5-23cd2f1572b3,12afec4d-1728-4aa8-86e5-23cd2f1572b3,1,0,16bc197b-5a2f-43f4-8ba0-ffabd9289f5c,16bc197b-5a2f-43f4-8ba0-ffabd9289f5c,1,0,ee0c3960-d1bf-411f-a51f-e6e27dabea87,ee0c3960-d1bf-411f-a51f-e6e27dabea87,1,0,d7fb9441-1aef-4257-af3f-7f16340ac85e,d7fb9441-1aef-4257-af3f-7f16340ac85e,1,0,d07c094c-2795-4e0c-b030-bdb82be7ba6d,d07c094c-2795-4e0c-b030-bdb82be7ba6d,1,0,62637860-2013-4f9d-9aed-7cbb0dce8983,62637860-2013-4f9d-9aed-7cbb0dce8983,1,0,331217f6-7ec2-425d-93bd-f2979c5f2e05,331217f6-7ec2-425d-93bd-f2979c5f2e05,1,0,7d5b2b73-27e6-4a61-9558-eb2410eb9f2f,7d5b2b73-27e6-4a61-9558-eb2410eb9f2f,1,0,d754ed75-2a32-4b86-a153-7b50c39f9836,d754ed75-2a32-4b86-a153-7b50c39f9836,1,0,b81f3ee1-66f7-4626-a35b-ef85388c678e,b81f3ee1-66f7-4626-a35b-ef85388c678e,1,0,2ad04793-c162-4915-a260-ca4da535cdac,2ad04793-c162-4915-a260-ca4da535cdac,1,0,6568d853-dfe5-4064-aa73-c1f546e951b4,6568d853-dfe5-4064-aa73-c1f546e951b4,1,0,7cee27a7-9827-47f8-96f3-d4f1f3dcabe9,7cee27a7-9827-47f8-96f3-d4f1f3dcabe9,1,0,9bfba5cd-551a-4685-99dd-ebfd9f7fd7d1,9bfba5cd-551a-4685-99dd-ebfd9f7fd7d1,1,0,bbe718b2-6b4c-4d78-a408-5369d356a1e6,bbe718b2-6b4c-4d78-a408-5369d356a1e6,1,0,4ecd85c4-5be7-4e6b-8c53-7dd32bd4d707,4ecd85c4-5be7-4e6b-8c53-7dd32bd4d707,1,0,c7e4e97f-fb85-4e95-bfdf-7706e867d89b,c7e4e97f-fb85-4e95-bfdf-7706e867d89b,1,0,b08fd921-c3d6-44eb-9401-fec5acab5d22,b08fd921-c3d6-44eb-9401-fec5acab5d22,1,0,1611855a-abf4-4269-aed3-3f78dce7bea5,1611855a-abf4-4269-aed3-3f78dce7bea5,1,0,c5bd277c-b258-43af-9c80-3e328b1581f5,c5bd277c-b258-43af-9c80-3e328b1581f5,1,0,d6fa2b86-1c3b-4c14-8a66-b6dbd40bca19,d6fa2b86-1c3b-4c14-8a66-b6dbd40bca19,1,0,f9cefef4-2182-42ca-93ef-b6a51d6555cc,f9cefef4-2182-42ca-93ef-b6a51d6555cc,1,0,71e1c7de-7367-424c-ae07-6ec04b408b83,71e1c7de-7367-424c-ae07-6ec04b408b83,1,0,b3956392-199c-4934-80d1-8cdab453d879,b3956392-199c-4934-80d1-8cdab453d879,1,0,5e26aeb7-617c-4983-b40d-5a61c77aa6a4,5e26aeb7-617c-4983-b40d-5a61c77aa6a4,1,0,d1bd7448-aa5f-43fc-9735-224f36960c3e,d1bd7448-aa5f-43fc-9735-224f36960c3e,1,0,94dbfc4c-d530-4fbd-b7cf-a58a56289b97,94dbfc4c-d530-4fbd-b7cf-a58a56289b97,1,0,6fa25c57-411d-4f9c-9c3e-c7ea1b1f7195,6fa25c57-411d-4f9c-9c3e-c7ea1b1f7195,1,0,1bfa15cf-222e-4e5b-beb7-7a50f8131799,1bfa15cf-222e-4e5b-beb7-7a50f8131799,1,0,25864028-1a53-4a8d-b6e4-189fa62c62f5,25864028-1a53-4a8d-b6e4-189fa62c62f5,1,0,e923beae-0bd8-4119-a802-fd6bfb729f10,e923beae-0bd8-4119-a802-fd6bfb729f10,1,0,d40bb9f7-3397-40ad-b658-f8942bdbbaee,d40bb9f7-3397-40ad-b658-f8942bdbbaee,1,0,67c1269a-79e6-44d9-9254-671c50fb3974,67c1269a-79e6-44d9-9254-671c50fb3974,1,0,5d455d2a-910d-48c7-bc74-ba5ad7855110,5d455d2a-910d-48c7-bc74-ba5ad7855110,1,0,7cf3feea-75e2-42cc-9c89-4a9182034910,7cf3feea-75e2-42cc-9c89-4a9182034910,1,0,930a0156-feb3-4e14-96a5-cd183a4891f4,930a0156-feb3-4e14-96a5-cd183a4891f4,1,0,cfa55ab3-1335-4712-8352-03c2f0277708,cfa55ab3-1335-4712-8352-03c2f0277708,1,0,fb176f8b-edb9-4e4b-926d-dabe9552bfa1,fb176f8b-edb9-4e4b-926d-dabe9552bfa1,1,0,cd5c52d4-f832-4a3b-b4c7-b4f3e0c98222,cd5c52d4-f832-4a3b-b4c7-b4f3e0c98222,1,0,e268a337-f576-4ec2-8a22-0500b79b2441,e268a337-f576-4ec2-8a22-0500b79b2441,1,0,eb33a8fa-75a6-4926-a025-05bc0abe4374,eb33a8fa-75a6-4926-a025-05bc0abe4374,1,0,c352da94-ea64-44b1-b2df-2c4ed9e2efc5,c352da94-ea64-44b1-b2df-2c4ed9e2efc5,1,0,6babd40a-8b8f-454b-b4a4-7cf2854f49a2,6babd40a-8b8f-454b-b4a4-7cf2854f49a2,1,0,bf480259-6e72-4ad1-ac41-0b0d41a75387,bf480259-6e72-4ad1-ac41-0b0d41a75387,1,0,a41f060a-f0f6-4940-960b-5056082b2c45,a41f060a-f0f6-4940-960b-5056082b2c45,1,0,5d45a926-513f-4bbc-a002-54a2db94b297,5d45a926-513f-4bbc-a002-54a2db94b297,1,0,73f5ce9e-d5a7-45c0-965a-8af1d776a98a,73f5ce9e-d5a7-45c0-965a-8af1d776a98a,1,0,073e14d4-5d43-428b-a9a7-985d173e94c7,073e14d4-5d43-428b-a9a7-985d173e94c7,1,0,61dc318a-c17d-402e-bf64-a0c0a63a1c93,61dc318a-c17d-402e-bf64-a0c0a63a1c93,1,0,c4b0c101-8cd9-441c-b94c-9dfa1ad58d45,c4b0c101-8cd9-441c-b94c-9dfa1ad58d45,1,0,2394775b-8910-4667-9c74-e1606e0b13bc,2394775b-8910-4667-9c74-e1606e0b13bc,1,0,43c88ffd-a036-4563-890b-bdc60180e841,43c88ffd-a036-4563-890b-bdc60180e841,1,0,af6e5e8e-6482-4820-a810-9e275ae039bf,af6e5e8e-6482-4820-a810-9e275ae039bf,1,0,fe3ccb8b-fee7-4825-a7bc-4b0fd432d382,fe3ccb8b-fee7-4825-a7bc-4b0fd432d382,1,0,7690620b-21d9-463a-8c22-60844927b4a0,7690620b-21d9-463a-8c22-60844927b4a0,1,0,e7f96a15-9f62-4a7f-85f3-06ba5d30b130,e7f96a15-9f62-4a7f-85f3-06ba5d30b130,1,0,b1db3255-38da-4684-b44e-4e2e9ee1dc35,b1db3255-38da-4684-b44e-4e2e9ee1dc35,1,0,4761f89b-7894-4dca-83b0-3be2d0828781,4761f89b-7894-4dca-83b0-3be2d0828781,1,0,573ff1f2-0ef5-4962-a0f6-eb84d430fe03,573ff1f2-0ef5-4962-a0f6-eb84d430fe03,1,0,7236d52f-9068-45ad-8b92-a7319e737e08,7236d52f-9068-45ad-8b92-a7319e737e08,1,0,3b0b708f-1b6c-4eb2-a2ad-86c088d9f1bf,3b0b708f-1b6c-4eb2-a2ad-86c088d9f1bf,1,0,9db23e96-d13a-4847-941a-462f64d0619d,9db23e96-d13a-4847-941a-462f64d0619d,1,0,7575fd54-c91b-4220-a2ef-2cf533f60426,7575fd54-c91b-4220-a2ef-2cf533f60426,1,0,1b751f19-bb0c-40c2-a5d1-068544c36c6b,1b751f19-bb0c-40c2-a5d1-068544c36c6b,1,0,26e2c83b-8873-4ad3-9c50-e94421473a43,26e2c83b-8873-4ad3-9c50-e94421473a43,1,0,f0b2ec05-8e01-4ccf-b927-671329a9013b,f0b2ec05-8e01-4ccf-b927-671329a9013b,1,0,ab442b11-2482-4f80-ac82-01966e0657ec,ab442b11-2482-4f80-ac82-01966e0657ec,1,0,14fe4d39-81a1-470e-9724-6642ce34ad89,14fe4d39-81a1-470e-9724-6642ce34ad89,1,0,457578ab-dfe2-4419-8d8a-64283b341f42,457578ab-dfe2-4419-8d8a-64283b341f42,1,0,67ef6671-f537-46bf-88e6-f5bcf34a17a4,67ef6671-f537-46bf-88e6-f5bcf34a17a4,1,0,de778ca7-feaf-4531-80ae-11a534c56928,de778ca7-feaf-4531-80ae-11a534c56928,1,0,0dfbe7a9-9c2e-4cbd-ac53-3b547fd73e91,0dfbe7a9-9c2e-4cbd-ac53-3b547fd73e91,1,0,0a76a84d-e883-477e-8b87-7bf984cdc1cf,0a76a84d-e883-477e-8b87-7bf984cdc1cf,1,0,2b6c4184-6d7d-48e5-bd4e-ad31e63398d6,2b6c4184-6d7d-48e5-bd4e-ad31e63398d6,1,0,86df8648-e195-4661-99ee-6052788eb276,86df8648-e195-4661-99ee-6052788eb276,1,0,a22cf6e9-1157-4be5-8d30-aa9bbf2b5e6e,a22cf6e9-1157-4be5-8d30-aa9bbf2b5e6e,1,0,35133725-9647-42dc-a76a-2e62b2918ac4,35133725-9647-42dc-a76a-2e62b2918ac4,1,0,fa9572ee-0303-4421-9125-70cf3dd5a8c7,fa9572ee-0303-4421-9125-70cf3dd5a8c7,1,0,4cdd7920-0c49-4950-b92f-fdf6e34578b2,4cdd7920-0c49-4950-b92f-fdf6e34578b2,1,0,0af48650-5fef-4a5b-8ac8-38a9ded23bd4,0af48650-5fef-4a5b-8ac8-38a9ded23bd4,1,0,c7b883dc-6c26-4eb5-bc19-7919ad57da27,c7b883dc-6c26-4eb5-bc19-7919ad57da27,1,0,7fc37008-c378-4a70-a9a9-07543c7248a6,7fc37008-c378-4a70-a9a9-07543c7248a6,1,0,6410853e-a17e-44db-b8cc-bfefd7c4d239,6410853e-a17e-44db-b8cc-bfefd7c4d239,1,0,df042e4e-01a6-4480-a9c5-c0d7a454bb41,df042e4e-01a6-4480-a9c5-c0d7a454bb41,1,0,5a4abb96-8a18-4249-9fbb-7270fe2ba25b,5a4abb96-8a18-4249-9fbb-7270fe2ba25b,1,0,6852c584-d989-418d-8d18-255492891ef0,6852c584-d989-418d-8d18-255492891ef0,1,0,6a4972f1-012c-438b-b1d3-81e7f6da3ddd,6a4972f1-012c-438b-b1d3-81e7f6da3ddd,1,0,ff7cfd75-e0ba-49a3-92e1-33ea26df46e2,ff7cfd75-e0ba-49a3-92e1-33ea26df46e2,1,0,bc37fc81-6a86-4e72-b75a-abb75bddc4b3,bc37fc81-6a86-4e72-b75a-abb75bddc4b3,1,0,ff830967-faa9-415f-aa6e-8d27779f91f8,ff830967-faa9-415f-aa6e-8d27779f91f8,1,0,34dd0dd6-880c-4a90-9b9c-0503c8dc4ef3,34dd0dd6-880c-4a90-9b9c-0503c8dc4ef3,1,0,88618d0f-97af-4055-a490-561d4b8065a7,88618d0f-97af-4055-a490-561d4b8065a7,1,0,faffa228-4f4f-43f6-99b9-ed8c93af85c0,faffa228-4f4f-43f6-99b9-ed8c93af85c0,1,0,7b816ca0-ba60-4637-8348-23b26ad23e3f,7b816ca0-ba60-4637-8348-23b26ad23e3f,1,0,814a6db4-a43c-44e6-ac44-11983642c5ad,814a6db4-a43c-44e6-ac44-11983642c5ad,1,0,0bd74786-e018-4a66-b994-cdb439c57657,0bd74786-e018-4a66-b994-cdb439c57657,1,0,f50fcf2b-90bb-4d73-9fda-f4575e7682fa,f50fcf2b-90bb-4d73-9fda-f4575e7682fa,1,0,a01b8078-a6cd-4184-9317-2f1e0bcefb3a,a01b8078-a6cd-4184-9317-2f1e0bcefb3a,1,0,54a279b1-9e6a-49b0-8fda-e2807cf3a2a3,54a279b1-9e6a-49b0-8fda-e2807cf3a2a3,1,0,09502176-c53d-4525-b8ed-32d0a2e21a5d,09502176-c53d-4525-b8ed-32d0a2e21a5d,1,0,75ad984e-d41f-4591-b207-e8a4b05757a7,75ad984e-d41f-4591-b207-e8a4b05757a7,1,0,3f020f90-7aeb-4b21-ad71-4572ac796d4c,3f020f90-7aeb-4b21-ad71-4572ac796d4c,1,0,759e2ba0-2941-4cc1-8409-50b8a3620058,759e2ba0-2941-4cc1-8409-50b8a3620058,1,0,491cf25d-091e-4e09-b145-92d7073326cf,491cf25d-091e-4e09-b145-92d7073326cf,1,0,9b9d4d10-a4f2-4b0d-a63a-15d55f30fb26,9b9d4d10-a4f2-4b0d-a63a-15d55f30fb26,1,0,579f18ce-a7ce-4eb8-a4e3-a134a9a27bc1,579f18ce-a7ce-4eb8-a4e3-a134a9a27bc1,1,0,e7d05eca-2fdd-4cbb-8e2c-537525326ffe,e7d05eca-2fdd-4cbb-8e2c-537525326ffe,1,0,900bc96e-fbcc-473e-970c-96f561420f8e,900bc96e-fbcc-473e-970c-96f561420f8e,1,0,c3bb7b85-1e90-45c4-9bc1-39bbd253d498,c3bb7b85-1e90-45c4-9bc1-39bbd253d498,1,0,21d5a0b0-9a2b-4989-a50a-781645513179,21d5a0b0-9a2b-4989-a50a-781645513179,1,0,22df0fa4-cb1c-45a2-bcce-d32ed44e462a,22df0fa4-cb1c-45a2-bcce-d32ed44e462a,1,0,d97c6204-3656-4591-aea9-6ebedffe1247,d97c6204-3656-4591-aea9-6ebedffe1247,1,0,7caabe33-184f-45db-bef4-59d4e9cd2394,7caabe33-184f-45db-bef4-59d4e9cd2394,1,0,3255033a-e922-412e-a825-a3e8bd284703,3255033a-e922-412e-a825-a3e8bd284703,1,0,1aa65c35-e8a0-4c8a-90a3-48b62314cb19,1aa65c35-e8a0-4c8a-90a3-48b62314cb19,1,0,f250f992-ad5a-4dab-ad38-240604adb0c4,f250f992-ad5a-4dab-ad38-240604adb0c4,1,0,c4a7efca-f27d-4fdd-86ab-cc22a2a96fb2,c4a7efca-f27d-4fdd-86ab-cc22a2a96fb2,1,0,e63671f6-c96d-4ea4-8300-af7dbd0d016f,e63671f6-c96d-4ea4-8300-af7dbd0d016f,1,0,2c511469-0df6-470f-a808-decb275e8b1a,2c511469-0df6-470f-a808-decb275e8b1a,1,0,1bbb289c-a78a-47d0-b082-c2225ae1dc83,1bbb289c-a78a-47d0-b082-c2225ae1dc83,1,0,99b40f9f-f8f1-4779-8afc-59d30612f3d6,99b40f9f-f8f1-4779-8afc-59d30612f3d6,1,0,6131e875-3254-4281-9343-9118564c5451,6131e875-3254-4281-9343-9118564c5451,1,0,69622ff8-8a23-42fc-b63d-5097e3f636ac,69622ff8-8a23-42fc-b63d-5097e3f636ac,1,0,b88450cc-0dd4-4881-b3d9-a9e4e07e08f5,b88450cc-0dd4-4881-b3d9-a9e4e07e08f5,1,0,ef326bd8-1570-455e-ae8c-063b5578ad15,ef326bd8-1570-455e-ae8c-063b5578ad15,1,0,3713c76d-6ff7-4d45-9f15-d061bdf7dee2,3713c76d-6ff7-4d45-9f15-d061bdf7dee2,1,0,cb6d4979-2d70-4ceb-af08-deb2b19daf14,cb6d4979-2d70-4ceb-af08-deb2b19daf14,1,0,bf30b754-84fb-4104-b52b-a4f7df6fba12,bf30b754-84fb-4104-b52b-a4f7df6fba12,1,0,7bbd0835-b3e9-40cb-a424-670828b60bbb,7bbd0835-b3e9-40cb-a424-670828b60bbb,1,0,3e2138ea-48f9-4a60-8f22-53933bea49db,3e2138ea-48f9-4a60-8f22-53933bea49db,1,0,16bda2eb-eab8-4230-b89f-517fb943e009,16bda2eb-eab8-4230-b89f-517fb943e009,1,0,00964512-297f-4b8b-8def-8e4fc0eba991,00964512-297f-4b8b-8def-8e4fc0eba991,1,0,4185fea3-baba-4ba5-8019-9023b3011d4d,4185fea3-baba-4ba5-8019-9023b3011d4d,1,0,ea790035-92d6-445e-9fa3-08e565634d2b,ea790035-92d6-445e-9fa3-08e565634d2b,1,0,cce8900a-51eb-487d-b380-227d1b9d3943,cce8900a-51eb-487d-b380-227d1b9d3943,1,0,c043c36c-90c6-483b-bc20-7c2d85109b90,c043c36c-90c6-483b-bc20-7c2d85109b90,1,0,a1e619a6-3bb2-468d-a225-c88ccc3b71f5,a1e619a6-3bb2-468d-a225-c88ccc3b71f5,1,0,91d2d40a-c271-412c-b344-1fc98b94ba21,91d2d40a-c271-412c-b344-1fc98b94ba21,1,0,7ce47046-aee8-4809-bac9-a98930a844e1,7ce47046-aee8-4809-bac9-a98930a844e1,1,0,f480b8b9-ecec-4207-a0aa-12c5be4c2250,f480b8b9-ecec-4207-a0aa-12c5be4c2250,1,0,32717d25-6644-4903-8950-03e4c9b1a8fe,32717d25-6644-4903-8950-03e4c9b1a8fe,1,0,3644d8f3-db88-4fce-a851-39c115acfe03,3644d8f3-db88-4fce-a851-39c115acfe03,1,0,4653da74-34b2-47b9-ad88-efd761d6f1e9,4653da74-34b2-47b9-ad88-efd761d6f1e9,1,0,abf8a23d-45c3-4feb-8df2-279b709d7722,abf8a23d-45c3-4feb-8df2-279b709d7722,1,0,b0cd056f-c601-4d07-89c4-f7137b88bab6,b0cd056f-c601-4d07-89c4-f7137b88bab6,1,0,5cc3ebef-8f09-443c-b131-e5c3a9f7d260,5cc3ebef-8f09-443c-b131-e5c3a9f7d260,1,0,b9a21b8f-8a95-4c86-9ab2-ee6c90164e18,b9a21b8f-8a95-4c86-9ab2-ee6c90164e18,1,0,96ed4d39-3bdc-480f-af86-218f22000514,96ed4d39-3bdc-480f-af86-218f22000514,1,0,c9f72e74-22ac-4dc0-8462-0aa7819a9342,c9f72e74-22ac-4dc0-8462-0aa7819a9342,1,0,ca650484-293f-403a-b916-5ec7c3a8969e,ca650484-293f-403a-b916-5ec7c3a8969e,1,0,b71e706d-623e-4039-9bf0-24f151d861d8,b71e706d-623e-4039-9bf0-24f151d861d8,1,0,528f4823-33d8-49bd-a8fe-756a08a107c2,528f4823-33d8-49bd-a8fe-756a08a107c2,1,0,4869095b-b76e-45ca-b77d-0e74f59673f0,4869095b-b76e-45ca-b77d-0e74f59673f0,1,0,bcca2442-448b-4760-923b-cc9621ecb441,bcca2442-448b-4760-923b-cc9621ecb441,1,0,ba7657df-429a-4737-b787-19ef09fdebb2,ba7657df-429a-4737-b787-19ef09fdebb2,1,0,867d72be-f406-45a5-a511-b90459683f11,867d72be-f406-45a5-a511-b90459683f11,1,0,88b22e62-c144-401f-9635-3fb4d914772e,88b22e62-c144-401f-9635-3fb4d914772e,1,0,efeb2914-6604-403a-a11e-5cb995ab2bc9,efeb2914-6604-403a-a11e-5cb995ab2bc9,1,0,4c2dd77f-adc7-4f11-8e8f-1f8e41e6c84b,4c2dd77f-adc7-4f11-8e8f-1f8e41e6c84b,1,0,8f2b8a8e-4cd3-45e3-89ae-1cc4bd0ff30a,8f2b8a8e-4cd3-45e3-89ae-1cc4bd0ff30a,1,0,24b3aecc-f92f-475b-862e-83dd6d6aa2b9,24b3aecc-f92f-475b-862e-83dd6d6aa2b9,1,0,de506523-241a-4845-9259-37066afbf16a,de506523-241a-4845-9259-37066afbf16a,1,0,0510206f-eef0-4a5e-aeb7-d53c26d34adb,0510206f-eef0-4a5e-aeb7-d53c26d34adb,1,0,e616e007-43e7-4740-a083-b85f5435718a,e616e007-43e7-4740-a083-b85f5435718a,1,0,727da5b1-e054-4832-8e44-f5d5e56f52e5,727da5b1-e054-4832-8e44-f5d5e56f52e5,1,0,6135ffd5-1510-4aa8-8bf5-d7c0ca624414,6135ffd5-1510-4aa8-8bf5-d7c0ca624414,1,0,6feaad7c-9680-4341-b215-14581e2e2b37,6feaad7c-9680-4341-b215-14581e2e2b37,1,0,d5656a92-adfb-4733-830d-2b1565798b1f,d5656a92-adfb-4733-830d-2b1565798b1f,1,0,2ee0d56b-cd7c-42db-8fb6-c1567fe1967d,2ee0d56b-cd7c-42db-8fb6-c1567fe1967d,1,0,b0f6ea83-2849-4151-930d-692866919db3,b0f6ea83-2849-4151-930d-692866919db3,1,0,05558ce4-8568-4009-b1d7-307d54967515,05558ce4-8568-4009-b1d7-307d54967515,1,0,74380324-9b7b-49f6-9458-88deb9405f98,74380324-9b7b-49f6-9458-88deb9405f98,1,0,5286ceb2-0f16-4d70-ad89-dc15a308bb8d,5286ceb2-0f16-4d70-ad89-dc15a308bb8d,1,0,0abf70e0-0d81-4d85-a288-a2134da5fbf1,0abf70e0-0d81-4d85-a288-a2134da5fbf1,1,0,392fc734-4251-4d28-bfd1-d6f2f33ec0e5,392fc734-4251-4d28-bfd1-d6f2f33ec0e5,1,0,f66cb2da-3b3c-481f-823a-506f8290f619,f66cb2da-3b3c-481f-823a-506f8290f619,1,0,b80ddaf8-c5c3-4bde-98ed-74a1a0446f38,b80ddaf8-c5c3-4bde-98ed-74a1a0446f38,1,0,e4f16dbf-609d-4a34-a0bf-b20e5925c1ba,e4f16dbf-609d-4a34-a0bf-b20e5925c1ba,1,0,0bdcf045-5132-4a68-839c-a30515dc569e,0bdcf045-5132-4a68-839c-a30515dc569e,1,0,683861f9-9a5f-47db-8b03-959f839d5a3a,683861f9-9a5f-47db-8b03-959f839d5a3a,1,0,56fda0b0-c0ae-4ea2-8f77-df22a9ca3e87,56fda0b0-c0ae-4ea2-8f77-df22a9ca3e87,1,0,125be5bf-f410-451d-aa96-22fabc6a4d8a,125be5bf-f410-451d-aa96-22fabc6a4d8a,1,0,e5017fd0-ecea-48ae-99c8-7fc8c4f1d72b,e5017fd0-ecea-48ae-99c8-7fc8c4f1d72b,1,0,0a46166a-4562-4a50-b139-39dbe8a1fc84,0a46166a-4562-4a50-b139-39dbe8a1fc84,1,0,9aa6d1d1-75ad-40e4-b01f-274826c0c9da,9aa6d1d1-75ad-40e4-b01f-274826c0c9da,1,0,6ce64d65-f710-4d3f-a85f-26ce6915451e,6ce64d65-f710-4d3f-a85f-26ce6915451e,1,0,33eb9806-e34f-42a0-9825-3ff2de92c503,33eb9806-e34f-42a0-9825-3ff2de92c503,1,0,4905fcc5-9bd7-4b1b-b51d-882b11ee3d74,4905fcc5-9bd7-4b1b-b51d-882b11ee3d74,1,0,bcb58235-7cd7-4c15-a1eb-194ee38259e6,bcb58235-7cd7-4c15-a1eb-194ee38259e6,1,0,e19aefe7-634d-4218-8d40-75802d1691e0,e19aefe7-634d-4218-8d40-75802d1691e0,1,0,b885dbb2-6e18-46a6-929c-3d6d392343ad,b885dbb2-6e18-46a6-929c-3d6d392343ad,1,0,d31e24cf-7493-45dc-ba81-3a00618e53bc,d31e24cf-7493-45dc-ba81-3a00618e53bc,1,0,ce2a8ff8-94fd-4ce2-9caa-4711e9b79ee9,ce2a8ff8-94fd-4ce2-9caa-4711e9b79ee9,1,0,f942d212-9be0-4d80-84b6-5b63070e33e4,f942d212-9be0-4d80-84b6-5b63070e33e4,1,0,bea6bbc1-c1e4-4306-a0ca-efd47b9a8b23,bea6bbc1-c1e4-4306-a0ca-efd47b9a8b23,1,0,64c91eaa-084f-4801-8dbf-4e075c689c2b,64c91eaa-084f-4801-8dbf-4e075c689c2b,1,0,c01bb4de-06f7-4c3d-8ea3-d861f89948c0,c01bb4de-06f7-4c3d-8ea3-d861f89948c0,1,0,3c8c4f7b-d267-422c-becd-b6e8a9d6fe49,3c8c4f7b-d267-422c-becd-b6e8a9d6fe49,1,0,3aa12805-823a-439b-b039-fb9940aee312,3aa12805-823a-439b-b039-fb9940aee312,1,0,87d53573-f266-4b74-94af-041ae4b6518f,87d53573-f266-4b74-94af-041ae4b6518f,1,0,65a8545a-e73c-4c6a-8f87-7734d7ff5c03,65a8545a-e73c-4c6a-8f87-7734d7ff5c03,1,0,801cf1f7-2c65-4126-a3e9-b66abfdde67a,801cf1f7-2c65-4126-a3e9-b66abfdde67a,1,0,b991eefb-0d97-48a1-89c8-3d83b3b8d97a,b991eefb-0d97-48a1-89c8-3d83b3b8d97a,1,0,29c2bc01-8838-4459-8ac2-79862aa1dbc9,29c2bc01-8838-4459-8ac2-79862aa1dbc9,1,0,ad556c33-6811-48b4-ae90-57700a4d3fd6,ad556c33-6811-48b4-ae90-57700a4d3fd6,1,0,6e0833f4-3b57-4a5f-810f-9e2a492335df,6e0833f4-3b57-4a5f-810f-9e2a492335df,1,0,78ccdf33-9c2b-4931-afa3-5d652f2bcbc5,78ccdf33-9c2b-4931-afa3-5d652f2bcbc5,1,0,977bc9d8-9843-4343-85af-11a3d91f9966,977bc9d8-9843-4343-85af-11a3d91f9966,1,0,02ff9ef0-1057-4bc2-b745-1c2ae41835e3,02ff9ef0-1057-4bc2-b745-1c2ae41835e3,1,0,5a86abe7-db6c-43a3-9bcd-9b3647519c6b,5a86abe7-db6c-43a3-9bcd-9b3647519c6b,1,0,a6582448-734d-4a4c-a32c-c4755ca1bc93,a6582448-734d-4a4c-a32c-c4755ca1bc93,1,0,6a0b9a91-51a0-4ef4-b630-4f1b5a1da2b7,6a0b9a91-51a0-4ef4-b630-4f1b5a1da2b7,1,0,53327cc4-22b0-40f9-bae7-db483f85901c,53327cc4-22b0-40f9-bae7-db483f85901c,1,0,098d904d-95c9-459e-86d0-357ba9a40191,098d904d-95c9-459e-86d0-357ba9a40191,1,0,e9ab9d00-6e42-439b-8efc-fcacf727016d,e9ab9d00-6e42-439b-8efc-fcacf727016d,1,0,2d58033f-e15d-4a91-8165-dd311025c7c4,2d58033f-e15d-4a91-8165-dd311025c7c4,1,0,49cb3a36-90b3-4154-b571-265fc5cee21e,49cb3a36-90b3-4154-b571-265fc5cee21e,1,0,10472d2c-18ca-49b0-bd9d-c750db8498c5,10472d2c-18ca-49b0-bd9d-c750db8498c5,1,0,8efe5daf-272d-4255-b5c4-66dca7463b50,8efe5daf-272d-4255-b5c4-66dca7463b50,1,0,65af25a6-f699-4c40-b13e-3b7dff3f16fe,65af25a6-f699-4c40-b13e-3b7dff3f16fe,1,0,c4d2486d-289c-4812-b223-5ccfcd7f29e3,c4d2486d-289c-4812-b223-5ccfcd7f29e3,1,0,7da57c89-af2c-445a-96f7-39250f70306f,7da57c89-af2c-445a-96f7-39250f70306f,1,0,b5b94d94-25f7-4cfa-b1e9-6009fb848763,b5b94d94-25f7-4cfa-b1e9-6009fb848763,1,0,a2accf54-5966-42e8-ab2e-e56e415963ee,a2accf54-5966-42e8-ab2e-e56e415963ee,1,0,d8eb5329-5900-4b5d-b45e-458513dddfef,d8eb5329-5900-4b5d-b45e-458513dddfef,1,0,6d521e58-24a3-4f19-b4b0-dff84f7ca86b,6d521e58-24a3-4f19-b4b0-dff84f7ca86b,1,0,d5afea8a-1b7a-4b23-8ae0-cefa0b937b17,d5afea8a-1b7a-4b23-8ae0-cefa0b937b17,1,0,6ffd2da8-db97-46fc-9a53-8e665a598e3c,6ffd2da8-db97-46fc-9a53-8e665a598e3c,1,0,8c413fa5-9e24-4b81-aa55-0e78c5e3e20f,8c413fa5-9e24-4b81-aa55-0e78c5e3e20f,1,0,a4322f22-7de0-4018-8e06-9f1aa7cf0c07,a4322f22-7de0-4018-8e06-9f1aa7cf0c07,1,0,eaaed107-69d4-4963-be83-74519e331715,eaaed107-69d4-4963-be83-74519e331715,1,0,38cddf96-8703-4396-8c73-47fb22828a48,38cddf96-8703-4396-8c73-47fb22828a48,1,0,2c2cb793-0177-4983-91ca-9c292c5b10f1,2c2cb793-0177-4983-91ca-9c292c5b10f1,1,0,2a2e7f51-a4e5-48ec-b969-b1fca18ba9b5,2a2e7f51-a4e5-48ec-b969-b1fca18ba9b5,1,0,221fa473-3327-44e6-a033-6fdfd2be713c,221fa473-3327-44e6-a033-6fdfd2be713c,1,0,7a5973f0-7e29-44af-8e7b-70af71f704a4,7a5973f0-7e29-44af-8e7b-70af71f704a4,1,0,2b2bf0f7-0946-4492-bba0-27f007a70e64,2b2bf0f7-0946-4492-bba0-27f007a70e64,1,0,22c9a703-5ed3-4156-8fa6-476b1c1452f1,22c9a703-5ed3-4156-8fa6-476b1c1452f1,1,0,27089e8e-2c75-431c-b808-5d4dcba3cdca,27089e8e-2c75-431c-b808-5d4dcba3cdca,1,0,9ab3980e-a480-4f90-a8cc-bde99d5ace35,9ab3980e-a480-4f90-a8cc-bde99d5ace35,1,0,ec928563-6e35-4b84-b477-90d2481cec1c,ec928563-6e35-4b84-b477-90d2481cec1c,1,0,5d3e9678-20fe-4128-867a-3f7addaa7831,5d3e9678-20fe-4128-867a-3f7addaa7831,1,0,bb878f73-8a0f-459a-9076-ce57fe7957dc,bb878f73-8a0f-459a-9076-ce57fe7957dc,1,0,a2b4110b-4d9c-40fd-ab46-bfa08d2eb993,a2b4110b-4d9c-40fd-ab46-bfa08d2eb993,1,0,4f262b7f-927e-45f2-ad90-9d5e1b3155d1,4f262b7f-927e-45f2-ad90-9d5e1b3155d1,1,0,9f4b8e36-83ff-4694-8540-b5f47b18395f,9f4b8e36-83ff-4694-8540-b5f47b18395f,1,0,b4c026eb-4271-4366-b529-1cdfe2874563,b4c026eb-4271-4366-b529-1cdfe2874563,1,0,314b0da2-24d3-48cc-8532-d36c45eb3bf8,314b0da2-24d3-48cc-8532-d36c45eb3bf8,1,0,2e3ac3fb-9f0e-463f-95c2-9f661ce2e015,2e3ac3fb-9f0e-463f-95c2-9f661ce2e015,1,0,4077e700-ec20-4afa-8155-bf7e516a70cb,4077e700-ec20-4afa-8155-bf7e516a70cb,1,0,5198c6db-2100-4902-82c8-85c8ea555e78,5198c6db-2100-4902-82c8-85c8ea555e78,1,0,b99f2a63-54e8-490b-a0a4-1941fbc38b3f,b99f2a63-54e8-490b-a0a4-1941fbc38b3f,1,0,f0b1e9f4-2e07-44e6-88d2-c11457135781,f0b1e9f4-2e07-44e6-88d2-c11457135781,1,0,e010c0f9-f770-4fdc-8607-50838c0262ef,e010c0f9-f770-4fdc-8607-50838c0262ef,1,0,f935399f-3554-4c08-b0a6-eba13074e1b7,f935399f-3554-4c08-b0a6-eba13074e1b7,1,0,10008125-3aeb-4912-8ad6-d92d283ea09a,10008125-3aeb-4912-8ad6-d92d283ea09a,1,0,765f9584-fefa-4695-b130-dd54c3b0d79d,765f9584-fefa-4695-b130-dd54c3b0d79d,1,0,dd050ca0-8335-4654-ab5c-7babcb4824ef,dd050ca0-8335-4654-ab5c-7babcb4824ef,1,0,706cbf55-626d-4cab-b589-a2464368f6c1,706cbf55-626d-4cab-b589-a2464368f6c1,1,0,d22a0a50-220d-459e-a23a-39730a1e67c4,d22a0a50-220d-459e-a23a-39730a1e67c4,1,0,2c1c9284-ba8b-4282-a89c-429f02ea41f6,2c1c9284-ba8b-4282-a89c-429f02ea41f6,1,0,1d3b9eff-5d0b-437b-932f-0ec466e092b2,1d3b9eff-5d0b-437b-932f-0ec466e092b2,1,0,fd7e5257-024c-46de-9ff3-edd302fadba5,fd7e5257-024c-46de-9ff3-edd302fadba5,1,0,a4168057-d99f-4b55-b762-214f95ae3a30,a4168057-d99f-4b55-b762-214f95ae3a30,1,0,ab4fe549-1c07-42d9-b412-8b89ed115591,ab4fe549-1c07-42d9-b412-8b89ed115591,1,0,0335804e-efe5-4fb9-9ae9-2ddca73d77f3,0335804e-efe5-4fb9-9ae9-2ddca73d77f3,1,0,b49c589d-b45d-4aff-8899-72cfe433e9a6,b49c589d-b45d-4aff-8899-72cfe433e9a6,1,0,f71a8d47-6a6c-4b7e-90b3-5b7a3be3ccd3,f71a8d47-6a6c-4b7e-90b3-5b7a3be3ccd3,1,0,273ad3f7-c645-434d-93b0-e832134f3043,273ad3f7-c645-434d-93b0-e832134f3043,1,0,d320803b-1de4-4e66-b455-0afe39be5c41,d320803b-1de4-4e66-b455-0afe39be5c41,1,0,483dfce4-9c66-4739-94d4-17a005d64f5b,483dfce4-9c66-4739-94d4-17a005d64f5b,1,0,19506116-43ef-433c-822c-ef8717b0da6b,19506116-43ef-433c-822c-ef8717b0da6b,1,0,464b92cc-b577-4350-ae9f-e697390248d7,464b92cc-b577-4350-ae9f-e697390248d7,1,0,5a1242c8-3817-4d2c-9bfd-f62a6b80730c,5a1242c8-3817-4d2c-9bfd-f62a6b80730c,1,0,b9be6caf-e5e0-45a9-8cc8-3c83721632a2,b9be6caf-e5e0-45a9-8cc8-3c83721632a2,1,0,97e853dc-065f-4c6d-84cb-3d3aff367b22,97e853dc-065f-4c6d-84cb-3d3aff367b22,1,0,2f1fdf47-2627-496f-9e1f-77019abb2104,2f1fdf47-2627-496f-9e1f-77019abb2104,1,0,c996532a-8795-4136-8a40-9bb4b263277c,c996532a-8795-4136-8a40-9bb4b263277c,1,0,64c77788-fc49-4979-8163-949a891bd8b7,64c77788-fc49-4979-8163-949a891bd8b7,1,0,c39750ca-e33f-40c2-b830-119423d9a2ae,c39750ca-e33f-40c2-b830-119423d9a2ae,1,0,9372ff6b-27b6-48f3-a2a2-762e7c485766,9372ff6b-27b6-48f3-a2a2-762e7c485766,1,0,f454595a-4a3d-451b-8e8b-b17aa8314591,f454595a-4a3d-451b-8e8b-b17aa8314591,1,0,d3b7f89e-eb04-404e-bcc1-1d3557fb8d1a,d3b7f89e-eb04-404e-bcc1-1d3557fb8d1a,1,0,442f9d7b-ae8f-4074-8ece-d5aa1c66e35c,442f9d7b-ae8f-4074-8ece-d5aa1c66e35c,1,0,bc708da8-7fc6-4da1-8129-9ef6a86667af,bc708da8-7fc6-4da1-8129-9ef6a86667af,1,0,061842fe-4077-4d6e-aefe-de79409da730,061842fe-4077-4d6e-aefe-de79409da730,1,0,86249619-8981-4fc4-85fc-ce30e4b9d542,86249619-8981-4fc4-85fc-ce30e4b9d542,1,0,da6e4bff-9835-4b92-b62b-291a5d6c86fe,da6e4bff-9835-4b92-b62b-291a5d6c86fe,1,0,8be35c43-32e6-418d-b3d6-e53ef56babb7,8be35c43-32e6-418d-b3d6-e53ef56babb7,1,0,3e4f5fd0-af15-41ae-896e-458ce9fb7e4d,3e4f5fd0-af15-41ae-896e-458ce9fb7e4d,1,0,935d01e1-232b-480e-a6bf-c21c617c6348,935d01e1-232b-480e-a6bf-c21c617c6348,1,0,9bc7cc99-1237-4f9c-8a4e-f3ab459186ef,9bc7cc99-1237-4f9c-8a4e-f3ab459186ef,1,0,05c702a1-2c74-45d5-b2ee-fdd795b0945a,05c702a1-2c74-45d5-b2ee-fdd795b0945a,1,0,3fadaeb7-2c41-42a4-bfa8-c585602b1028,3fadaeb7-2c41-42a4-bfa8-c585602b1028,1,0,171a0dfc-032e-4eaf-81a2-e5e0dfde8d56,171a0dfc-032e-4eaf-81a2-e5e0dfde8d56,1,0,083c709b-ed8c-47e4-a190-421e14259e73,083c709b-ed8c-47e4-a190-421e14259e73,1,0,b98dacc7-29e1-426b-a664-0a988f18186c,b98dacc7-29e1-426b-a664-0a988f18186c,1,0,d678856d-6e7c-443f-a6e3-350bbe8af659,d678856d-6e7c-443f-a6e3-350bbe8af659,1,0,d0979762-22ce-41be-b7a4-5e9ac149d94b,d0979762-22ce-41be-b7a4-5e9ac149d94b,1,0,ae23e70c-479e-47ad-9bfa-58560a903410,ae23e70c-479e-47ad-9bfa-58560a903410,1,0,c0d83781-bbda-43f7-bf0e-5defa3d47143,c0d83781-bbda-43f7-bf0e-5defa3d47143,1,0,21fa5fdd-acbc-403b-9acb-bbf95284bd20,21fa5fdd-acbc-403b-9acb-bbf95284bd20,1,0,576a01e3-4d6d-4241-a3c4-7661ba129bcb,576a01e3-4d6d-4241-a3c4-7661ba129bcb,1,0,9f7290dd-19f4-4163-9795-fe562e84f06d,9f7290dd-19f4-4163-9795-fe562e84f06d,1,0,c3b5c81f-b787-4f63-8cba-79def0921477,c3b5c81f-b787-4f63-8cba-79def0921477,1,0,1f0cb3d4-1344-451b-a257-be3cd854acfd,1f0cb3d4-1344-451b-a257-be3cd854acfd,1,0,0131fe59-ce47-48b7-8f7e-1544bf0fa031,0131fe59-ce47-48b7-8f7e-1544bf0fa031,1,0,c8b0a1be-97c6-4a16-b1dd-31901ac61cdc,c8b0a1be-97c6-4a16-b1dd-31901ac61cdc,1,0,372150e2-526e-4424-8c54-e4b16bdd25b5,372150e2-526e-4424-8c54-e4b16bdd25b5,1,0,752dc569-cf84-42d7-911d-49d455f7214e,752dc569-cf84-42d7-911d-49d455f7214e,1,0,fecab2b9-27e1-44d6-9082-79c3569b7477,fecab2b9-27e1-44d6-9082-79c3569b7477,1,0,07ae092f-8517-47b7-b54c-5dbcb6506929,07ae092f-8517-47b7-b54c-5dbcb6506929,1,0,db4c25bb-d199-43ec-833d-82972de04a41,db4c25bb-d199-43ec-833d-82972de04a41,1,0,43d19685-0794-41f2-9171-bf565133718d,43d19685-0794-41f2-9171-bf565133718d,1,0,b68c15c4-4966-4f13-8912-2d479b65089a,b68c15c4-4966-4f13-8912-2d479b65089a,1,0,8f6770c2-654c-4cc7-8ed5-15b5b2e3109a,8f6770c2-654c-4cc7-8ed5-15b5b2e3109a,1,0,f87e3935-dae1-4192-b6a7-05e3c700c590,f87e3935-dae1-4192-b6a7-05e3c700c590,1,0,ee635706-6ee2-4956-8d58-a235f64687f6,ee635706-6ee2-4956-8d58-a235f64687f6,1,0,a5a40ca7-d665-420b-a516-1355019d6901,a5a40ca7-d665-420b-a516-1355019d6901,1,0,adf9304c-ccf8-492e-95b1-0754764586a2,adf9304c-ccf8-492e-95b1-0754764586a2,1,0,fd175112-ec8f-4088-9b21-d8135056f0c5,fd175112-ec8f-4088-9b21-d8135056f0c5,1,0,ddd82a66-1eda-409f-b6c0-e22c4bd2c1b7,ddd82a66-1eda-409f-b6c0-e22c4bd2c1b7,1,0,df76a1b7-312a-4e77-bac1-79befadb4495,df76a1b7-312a-4e77-bac1-79befadb4495,1,0,ab39fad8-1039-491e-982a-c49637770ec0,ab39fad8-1039-491e-982a-c49637770ec0,1,0,7d93a6ba-3ca7-45ab-a540-743c79587535,7d93a6ba-3ca7-45ab-a540-743c79587535,1,0,76b58810-0527-4dfc-8858-bac68e7e65f3,76b58810-0527-4dfc-8858-bac68e7e65f3,1,0,aba97fd9-f05e-45cd-8404-ed702070e17a,aba97fd9-f05e-45cd-8404-ed702070e17a,1,0,f5c415cd-429b-469f-9332-c43ab5d1c8d6,f5c415cd-429b-469f-9332-c43ab5d1c8d6,1,0,458e9c6b-b828-404b-be5a-c6c0aeea34c9,458e9c6b-b828-404b-be5a-c6c0aeea34c9,1,0,7262eb4d-2d2d-454c-beaa-974645813af7,7262eb4d-2d2d-454c-beaa-974645813af7,1,0,45fa9f17-eeb1-43e2-b78c-f81a341f1bff,45fa9f17-eeb1-43e2-b78c-f81a341f1bff,1,0,49221b2f-aae2-4bee-9a1a-18263fc74244,49221b2f-aae2-4bee-9a1a-18263fc74244,1,0,da0cd264-da2f-4044-af28-c91d2efe1d5c,da0cd264-da2f-4044-af28-c91d2efe1d5c,1,0,f1b1db38-2d9f-4409-a6d6-fd7192b1f102,f1b1db38-2d9f-4409-a6d6-fd7192b1f102,1,0,fad26b16-8638-496b-bd12-381fc6f5b71f,fad26b16-8638-496b-bd12-381fc6f5b71f,1,0,ed3cfb74-a37a-4314-a2d7-4ce717a2edd9,ed3cfb74-a37a-4314-a2d7-4ce717a2edd9,1,0,324a56c9-02d9-4177-af84-a817b8c41169,324a56c9-02d9-4177-af84-a817b8c41169,1,0,1e44abfe-c173-4802-b535-96849d384983,1e44abfe-c173-4802-b535-96849d384983,1,0,2751a509-037b-49aa-9ca8-e87057d6d82c,2751a509-037b-49aa-9ca8-e87057d6d82c,1,0,35f62549-eb6a-4284-a6e3-406b0d9df0cf,35f62549-eb6a-4284-a6e3-406b0d9df0cf,1,0,cee94c04-7a46-47a5-bdd5-6f0dbd884e97,cee94c04-7a46-47a5-bdd5-6f0dbd884e97,1,0,fd66995b-ee76-41d3-983f-33d84bdcbbd4,fd66995b-ee76-41d3-983f-33d84bdcbbd4,1,0,73e97918-b34e-4ad2-8591-4c219eb92f2c,73e97918-b34e-4ad2-8591-4c219eb92f2c,1,0,445cf7eb-35d0-48f8-9579-c2ec574ef324,445cf7eb-35d0-48f8-9579-c2ec574ef324,1,0,1025657e-afd2-4c7b-96d5-ccbedaca4619,1025657e-afd2-4c7b-96d5-ccbedaca4619,1,0,64839c78-b2fa-4d80-bee0-b3d3a7e5db35,64839c78-b2fa-4d80-bee0-b3d3a7e5db35,1,0,e754ad5c-cf3c-4198-af81-128475924cb0,e754ad5c-cf3c-4198-af81-128475924cb0,1,0,ed65d504-b210-4014-85ec-275ad633ef04,ed65d504-b210-4014-85ec-275ad633ef04,1,0,dc31edb1-273e-4b1a-8e69-32393479ff36,dc31edb1-273e-4b1a-8e69-32393479ff36,1,0,3ab0649b-239f-4466-b897-73c0ab628927,3ab0649b-239f-4466-b897-73c0ab628927,1,0,4c697110-8941-4d6d-ba03-f2b9e96ff82e,4c697110-8941-4d6d-ba03-f2b9e96ff82e,1,0,7ea4112d-fc41-4f1e-bd22-f04adeac1d8f,7ea4112d-fc41-4f1e-bd22-f04adeac1d8f,1,0,b172631b-da0d-42f4-ae6b-ae122a46cced,b172631b-da0d-42f4-ae6b-ae122a46cced,1,0,1a25e744-37ae-46ca-a328-ff8eced21a82,1a25e744-37ae-46ca-a328-ff8eced21a82,1,0,dddabe54-a93b-4e4b-acbb-cc522e4d7c28,dddabe54-a93b-4e4b-acbb-cc522e4d7c28,1,0,46169f0b-8514-40a1-9d27-8489cab72503,46169f0b-8514-40a1-9d27-8489cab72503,1,0,d9cf39cc-8652-4c4d-bc5b-b4e455c0083f,d9cf39cc-8652-4c4d-bc5b-b4e455c0083f,1,0,4b0d7d39-5f79-4a21-b0bb-d3142a3bc8a9,4b0d7d39-5f79-4a21-b0bb-d3142a3bc8a9,1,0,c90243af-582c-4f5a-88e7-e0cbc0555fcb,c90243af-582c-4f5a-88e7-e0cbc0555fcb,1,0,14bf4066-15cb-4165-b854-45443ee27da1,14bf4066-15cb-4165-b854-45443ee27da1,1,0,a0861dd3-ced5-485e-8719-0ad0bc3adc0d,a0861dd3-ced5-485e-8719-0ad0bc3adc0d,1,0,5a94a307-3f54-4753-8ef5-ce9f88417827,5a94a307-3f54-4753-8ef5-ce9f88417827,1,0,0f09b6b8-72ac-4461-96c4-683be403e2ff,0f09b6b8-72ac-4461-96c4-683be403e2ff,1,0,b73d0f07-9c6e-41b1-9acc-8e83dacd7528,b73d0f07-9c6e-41b1-9acc-8e83dacd7528,1,0,19d1d74a-de5f-475a-896c-a32b7d28f918,19d1d74a-de5f-475a-896c-a32b7d28f918,1,0,4427cab9-4eea-4415-98ef-6021a447c60c,4427cab9-4eea-4415-98ef-6021a447c60c,1,0,fe46b4da-d865-468f-badd-83644bf88faa,fe46b4da-d865-468f-badd-83644bf88faa,1,0,2851c9d4-4366-4488-926d-a7fcd3b1548c,2851c9d4-4366-4488-926d-a7fcd3b1548c,1,0,31116aa2-cfbc-48e8-886b-45c1c17508fd,31116aa2-cfbc-48e8-886b-45c1c17508fd,1,0,6aa819d3-c56d-4561-a2e4-a1188ab1295a,6aa819d3-c56d-4561-a2e4-a1188ab1295a,1,0,2ddf344d-7065-40d5-9306-23870d8fc04a,2ddf344d-7065-40d5-9306-23870d8fc04a,1,0,c630ab2d-0a20-4136-88b6-220b2cad6a71,c630ab2d-0a20-4136-88b6-220b2cad6a71,1,0,00cd1dea-bc54-475c-956d-dc5221104932,00cd1dea-bc54-475c-956d-dc5221104932,1,0,3807f865-dd2c-44f7-9238-3db191f0a186,3807f865-dd2c-44f7-9238-3db191f0a186,1,0,8f184df5-bfe8-4df3-bc7c-18218cef7650,8f184df5-bfe8-4df3-bc7c-18218cef7650,1,0,387e273a-889f-454b-8b43-feaa12025fde,387e273a-889f-454b-8b43-feaa12025fde,1,0,1c38ad75-b294-4c05-89ce-69ce4d9a291f,1c38ad75-b294-4c05-89ce-69ce4d9a291f,1,0,078d1e8f-6d27-4761-9532-b1e7a60e4c13,078d1e8f-6d27-4761-9532-b1e7a60e4c13,1,0,4262193c-58ad-47c6-8088-735d8cd037ea,4262193c-58ad-47c6-8088-735d8cd037ea,1,0,36a2b5f9-ded5-4fc3-a7bd-e12b37cd6bab,36a2b5f9-ded5-4fc3-a7bd-e12b37cd6bab,1,0,de6d1aad-39eb-46ce-87aa-d29812bb37bf,de6d1aad-39eb-46ce-87aa-d29812bb37bf,1,0,4ad859ec-cc75-4bac-9e89-397798450e48,4ad859ec-cc75-4bac-9e89-397798450e48,1,0,d93ab94c-0f55-4b80-b226-41b44c73b3ea,d93ab94c-0f55-4b80-b226-41b44c73b3ea,1,0,94cbed80-5a35-471f-b354-439a11629210,94cbed80-5a35-471f-b354-439a11629210,1,0,1162cc0a-42e5-47cb-9507-68459579f110,1162cc0a-42e5-47cb-9507-68459579f110,1,0,17f9f188-d3fd-4fe1-a00c-b0dde64a0f9e,17f9f188-d3fd-4fe1-a00c-b0dde64a0f9e,1,0,bb49dc80-4934-4f44-8f27-9a363dca8dc4,bb49dc80-4934-4f44-8f27-9a363dca8dc4,1,0,7338e497-03a7-4ed4-85a2-ca802c065a9f,7338e497-03a7-4ed4-85a2-ca802c065a9f,1,0,49fe879c-8972-4c9a-bb08-e3e5b2e5ff84,49fe879c-8972-4c9a-bb08-e3e5b2e5ff84,1,0,5249687b-9ff4-46f5-be15-dbb5d5047fd1,5249687b-9ff4-46f5-be15-dbb5d5047fd1,1,0,d33df51c-3dcd-496c-90f2-7ee05582bdf7,d33df51c-3dcd-496c-90f2-7ee05582bdf7,1,0,24b39ebd-2424-4939-8e3e-d09eb674d409,24b39ebd-2424-4939-8e3e-d09eb674d409,1,0,08c751bb-9e57-4536-901e-bb316c8e96d7,08c751bb-9e57-4536-901e-bb316c8e96d7,1,0,de0afa6f-07c6-441c-a4ca-e7ed709a8da5,de0afa6f-07c6-441c-a4ca-e7ed709a8da5,1,0,034cdcef-08e5-4751-9885-400aa69e0b94,034cdcef-08e5-4751-9885-400aa69e0b94,1,0,efefebea-2032-4006-b9ca-50a23b7da1ef,efefebea-2032-4006-b9ca-50a23b7da1ef,1,0,4c794d37-3352-4acb-a939-5e90fb682db8,4c794d37-3352-4acb-a939-5e90fb682db8,1,0,5f3fea83-6ca8-481b-9e2b-789a6fd01e2e,5f3fea83-6ca8-481b-9e2b-789a6fd01e2e,1,0,008f5068-da9c-4dac-9c0a-a50366d27cbb,008f5068-da9c-4dac-9c0a-a50366d27cbb,1,0,950b3ee3-070f-4946-8b9b-0aa2058de986,950b3ee3-070f-4946-8b9b-0aa2058de986,1,0,bd04a870-0943-4bdb-9e30-50a69daa8a13,bd04a870-0943-4bdb-9e30-50a69daa8a13,1,0,a23e6c77-8c12-4f99-ae2d-68a12274be38,a23e6c77-8c12-4f99-ae2d-68a12274be38,1,0,3c4454cd-31e9-42a5-9127-fb66a628f0e1,3c4454cd-31e9-42a5-9127-fb66a628f0e1,1,0,c02c5cbf-b25a-4956-8aa7-74cfeb66d508,c02c5cbf-b25a-4956-8aa7-74cfeb66d508,1,0,31cac1e9-eb16-489c-9322-30d1e27a80b3,31cac1e9-eb16-489c-9322-30d1e27a80b3,1,0,0d100e33-7941-41c1-962d-7672c874e9c5,0d100e33-7941-41c1-962d-7672c874e9c5,1,0,c5ac53c9-c9b2-4b90-a21e-10f1daa756c5,c5ac53c9-c9b2-4b90-a21e-10f1daa756c5,1,0,6e61d717-de36-4dce-8af9-b6c14ed76acb,6e61d717-de36-4dce-8af9-b6c14ed76acb,1,0,474518fe-9cb5-4a12-9388-bc7a64511617,474518fe-9cb5-4a12-9388-bc7a64511617,1,0,64337614-b1c9-4931-b576-448721fa4602,64337614-b1c9-4931-b576-448721fa4602,1,0,1d73b59c-0594-4ed3-b584-cf1261941e1d,1d73b59c-0594-4ed3-b584-cf1261941e1d,1,0,8ff2547f-d596-4fa1-9e12-079e1cc4c057,8ff2547f-d596-4fa1-9e12-079e1cc4c057,1,0,1ab0c8f8-b908-4618-ae88-af37b8f1224e,1ab0c8f8-b908-4618-ae88-af37b8f1224e,1,0,bd3ec5a9-161d-487e-ab1d-e5e15a6e3a7b,bd3ec5a9-161d-487e-ab1d-e5e15a6e3a7b,1,0,b85b3a58-95e4-4698-b1ae-037901ecc1b1,b85b3a58-95e4-4698-b1ae-037901ecc1b1,1,0,b77d748a-d180-432d-91c3-774e6ccf7efa,b77d748a-d180-432d-91c3-774e6ccf7efa,1,0,e5b9c1b0-4690-442c-b160-e6c587e42e57,e5b9c1b0-4690-442c-b160-e6c587e42e57,1,0,e3adb576-6b33-475b-976b-7a6783de3184,e3adb576-6b33-475b-976b-7a6783de3184,1,0,c6cef8db-0689-42a6-9f43-c86b7c3cf0e9,c6cef8db-0689-42a6-9f43-c86b7c3cf0e9,1,0,78f5a205-dffb-4009-897a-e8f36372f33c,78f5a205-dffb-4009-897a-e8f36372f33c,1,0,f7597041-f182-42fb-803a-2521c70d627d,f7597041-f182-42fb-803a-2521c70d627d,1,0,ce988b8a-d0c1-400a-9466-aa757501bb58,ce988b8a-d0c1-400a-9466-aa757501bb58,1,0,ab98d665-8da8-406e-9e0e-3e130ab393ef,ab98d665-8da8-406e-9e0e-3e130ab393ef,1,0,9e823bb6-b0c0-439e-81e4-ebd46b79b99c,9e823bb6-b0c0-439e-81e4-ebd46b79b99c,1,0,118a0e62-c0bb-435b-9e3e-c64563efa602,118a0e62-c0bb-435b-9e3e-c64563efa602,1,0,b57bc8a9-8a59-4192-a442-2e1982e83179,b57bc8a9-8a59-4192-a442-2e1982e83179,1,0,5b06ccda-2a70-4621-8273-78408cbe72a9,5b06ccda-2a70-4621-8273-78408cbe72a9,1,0,89753385-64fd-4e76-9857-bfd5d7c23f71,89753385-64fd-4e76-9857-bfd5d7c23f71,1,0,1b3113f3-e7d4-4e6f-b6ed-08f5fd78c68e,1b3113f3-e7d4-4e6f-b6ed-08f5fd78c68e,1,0,53e72cf2-e2a5-4b59-b5b1-a1fc28fda5bf,53e72cf2-e2a5-4b59-b5b1-a1fc28fda5bf,1,0,e20bcb57-2f68-4709-8a11-105d561a2dda,e20bcb57-2f68-4709-8a11-105d561a2dda,1,0,3df3f61a-2c17-4278-8d82-91089f793e6a,3df3f61a-2c17-4278-8d82-91089f793e6a,1,0,ea8beea1-7d80-4613-b2f9-79ee612e977a,ea8beea1-7d80-4613-b2f9-79ee612e977a,1,0,afd62a32-fdbb-429a-9a64-89c61a07e018,afd62a32-fdbb-429a-9a64-89c61a07e018,1,0,027cef43-99bd-48d3-a1a3-2102ac003742,027cef43-99bd-48d3-a1a3-2102ac003742,1,0,00197ea9-de76-4e2a-97bc-93e44053e35e,00197ea9-de76-4e2a-97bc-93e44053e35e,1,0,540a47b8-f6d4-4531-ac87-3f7cfbef4c8c,540a47b8-f6d4-4531-ac87-3f7cfbef4c8c,1,0,a51f7c6f-2631-4d23-becc-c0e8b711fddd,a51f7c6f-2631-4d23-becc-c0e8b711fddd,1,0,37806357-d92c-4bea-a5ef-77f138578fda,37806357-d92c-4bea-a5ef-77f138578fda,1,0,91b100e6-fbbe-4bb0-8d51-d12595a2a3e8,91b100e6-fbbe-4bb0-8d51-d12595a2a3e8,1,0,0a880538-f97f-448e-a4a9-82b0194dbe28,0a880538-f97f-448e-a4a9-82b0194dbe28,1,0,179868b7-d342-4df0-9386-c114d75faf3a,179868b7-d342-4df0-9386-c114d75faf3a,1,0,bbc4cc8c-31c2-4fcf-b86c-9ec65b2772b0,bbc4cc8c-31c2-4fcf-b86c-9ec65b2772b0,1,0,b49ea672-5d01-46c2-8ece-2511afeb740d,b49ea672-5d01-46c2-8ece-2511afeb740d,1,0,77bb5aba-1364-4db9-aa93-69f001ce2709,77bb5aba-1364-4db9-aa93-69f001ce2709,1,0,d14528d6-c2dd-4184-98c5-0b444a2bd98b,d14528d6-c2dd-4184-98c5-0b444a2bd98b,1,0,48f81387-a409-4163-85b8-ad563cb6cf2e,48f81387-a409-4163-85b8-ad563cb6cf2e,1,0,739df12e-1b6b-45c6-802b-658641fb9e90,739df12e-1b6b-45c6-802b-658641fb9e90,1,0,878fe826-fa99-44ad-9891-5eada9744017,878fe826-fa99-44ad-9891-5eada9744017,1,0,0d61712a-dfaf-46f1-b728-62993dd94fbe,0d61712a-dfaf-46f1-b728-62993dd94fbe,1,0,3a6cf496-09b9-4947-9df5-06d23b474558,3a6cf496-09b9-4947-9df5-06d23b474558,1,0,625b498a-33d1-4162-9525-fb7790cbb6a8,625b498a-33d1-4162-9525-fb7790cbb6a8,1,0,28223f7b-d15a-4f12-b57c-1f6d08a902f9,28223f7b-d15a-4f12-b57c-1f6d08a902f9,1,0,dd9eb5b7-5aed-4e51-9939-9ff14492d240,dd9eb5b7-5aed-4e51-9939-9ff14492d240,1,0,b2a14899-d589-4990-b85e-7bffb427e8af,b2a14899-d589-4990-b85e-7bffb427e8af,1,0,0981d114-05bd-4ee1-a8fd-398fa6620d0b,0981d114-05bd-4ee1-a8fd-398fa6620d0b,1,0,3210ba40-382e-4917-ad0f-9bd88d23dc25,3210ba40-382e-4917-ad0f-9bd88d23dc25,1,0,835e3ead-d01f-410b-937a-902dd5e66aec,835e3ead-d01f-410b-937a-902dd5e66aec,1,0,40141982-d1d6-416f-844e-19143a407ff9,40141982-d1d6-416f-844e-19143a407ff9,1,0,618b8843-7413-4634-bd65-18d904c2582f,618b8843-7413-4634-bd65-18d904c2582f,1,0,253b97a6-4e04-40d0-a39e-99500d54accb,253b97a6-4e04-40d0-a39e-99500d54accb,1,0,46cf1217-4b49-4c35-9c2b-4739dd1b8bf5,46cf1217-4b49-4c35-9c2b-4739dd1b8bf5,1,0,db367faa-e417-40ff-a082-e93421d464ca,db367faa-e417-40ff-a082-e93421d464ca,1,0,55ad14cb-7647-4d16-ae68-ac45e4a39c01,55ad14cb-7647-4d16-ae68-ac45e4a39c01,1,0,f0363f45-9d63-4f0b-b7fc-95cb0d1660af,f0363f45-9d63-4f0b-b7fc-95cb0d1660af,1,0,d8a16236-89bc-4493-9b8e-fd5d3f9298a7,d8a16236-89bc-4493-9b8e-fd5d3f9298a7,1,0,b12a0998-905e-4956-af8b-6460dc945c10,b12a0998-905e-4956-af8b-6460dc945c10,1,0,6a958a2b-e914-4321-9e95-3203e8011b8c,6a958a2b-e914-4321-9e95-3203e8011b8c,1,0,176181ff-58af-4392-817e-49e37caa73ce,176181ff-58af-4392-817e-49e37caa73ce,1,0,917d059b-91d9-4f74-8c10-d0016162f77e,917d059b-91d9-4f74-8c10-d0016162f77e,1,0,95fd99eb-b139-4b7a-93db-70419e9a809b,95fd99eb-b139-4b7a-93db-70419e9a809b,1,0,c60b9f4f-870f-4478-b2b4-e8afa9324d54,c60b9f4f-870f-4478-b2b4-e8afa9324d54,1,0,e31d2420-266e-408a-a4bf-673194a555d3,e31d2420-266e-408a-a4bf-673194a555d3,1,0,31418550-c525-448b-a054-6b055aa11267,31418550-c525-448b-a054-6b055aa11267,1,0,2003c769-556e-41a6-a7a6-4c5c7263e48d,2003c769-556e-41a6-a7a6-4c5c7263e48d,1,0,66ec2482-c1f3-45d3-9257-e0b9f5ae772a,66ec2482-c1f3-45d3-9257-e0b9f5ae772a,1,0,d3211832-c8ca-437a-8810-82e06cbb48de,d3211832-c8ca-437a-8810-82e06cbb48de,1,0,8131d701-1014-4196-9b67-914e451f8a3a,8131d701-1014-4196-9b67-914e451f8a3a,1,0,2b102933-c660-4e74-ae9a-5061a88ed672,2b102933-c660-4e74-ae9a-5061a88ed672,1,0,56c897b7-d34e-4d7d-9a3b-d0779be5c189,56c897b7-d34e-4d7d-9a3b-d0779be5c189,1,0,3ac81c80-56bd-4750-b135-07ab522e3eab,3ac81c80-56bd-4750-b135-07ab522e3eab,1,0,5657872f-c7d5-446f-bcc3-d0b86ad63a42,5657872f-c7d5-446f-bcc3-d0b86ad63a42,1,0,d5214cb9-67e2-469f-989f-3f2b662ae830,d5214cb9-67e2-469f-989f-3f2b662ae830,1,0,69679e88-4f2b-4dd6-8cb2-b88293d07b55,69679e88-4f2b-4dd6-8cb2-b88293d07b55,1,0,68679208-9972-4854-8649-49bdf6212255,68679208-9972-4854-8649-49bdf6212255,1,0,98393093-7ba6-4b4d-86be-ee5826cd8cd5,98393093-7ba6-4b4d-86be-ee5826cd8cd5,1,0,87de486d-3f35-4432-a7cd-9d3832db63cf,87de486d-3f35-4432-a7cd-9d3832db63cf,1,0,246f17a0-93a7-4e2c-8fa6-f57405f0abeb,246f17a0-93a7-4e2c-8fa6-f57405f0abeb,1,0,ea6c4830-a34d-4026-a0ca-5cf7e44f089d,ea6c4830-a34d-4026-a0ca-5cf7e44f089d,1,0,bb7ce04a-8143-4c0b-a196-1b57f1640142,bb7ce04a-8143-4c0b-a196-1b57f1640142,1,0,4872f12c-705c-4dd3-802f-d27496a0d634,4872f12c-705c-4dd3-802f-d27496a0d634,1,0,3bacfd93-dfc7-4154-9d3f-b61ddc5c6721,3bacfd93-dfc7-4154-9d3f-b61ddc5c6721,1,0,0c0bbfba-c1c4-4bb5-a813-10da4bef7911,0c0bbfba-c1c4-4bb5-a813-10da4bef7911,1,0,f9ada91a-e673-4821-9bce-cb0dd75ca28b,f9ada91a-e673-4821-9bce-cb0dd75ca28b,1,0,9fcf68bb-43e2-4cd1-89ec-8797ad9c0e8b,9fcf68bb-43e2-4cd1-89ec-8797ad9c0e8b,1,0,90ce635a-0277-4056-980d-d1a16d91cb30,90ce635a-0277-4056-980d-d1a16d91cb30,1,0,e61a8360-a0f8-4d86-b91a-2ae9b8552bf0,e61a8360-a0f8-4d86-b91a-2ae9b8552bf0,1,0,1e77e873-632c-482b-8f46-8f8cc3cc8cef,1e77e873-632c-482b-8f46-8f8cc3cc8cef,1,0,766208a3-2780-427b-a7d3-93abe99d236b,766208a3-2780-427b-a7d3-93abe99d236b,1,0,63ce4c3c-5bad-409c-904f-18f34cf1da78,63ce4c3c-5bad-409c-904f-18f34cf1da78,1,0,62bddcee-bef6-42cc-9ba3-e99b8160dcc2,62bddcee-bef6-42cc-9ba3-e99b8160dcc2,1,0,26ac22f9-0bbb-4671-b446-626e345e2461,26ac22f9-0bbb-4671-b446-626e345e2461,1,0,0d63ee6d-e17f-4a86-b384-adf9793f3331,0d63ee6d-e17f-4a86-b384-adf9793f3331,1,0,f152945b-2a7b-449e-a915-176166af7bac,f152945b-2a7b-449e-a915-176166af7bac,1,0,77f5d86a-7fae-4490-9740-0e31102dab5c,77f5d86a-7fae-4490-9740-0e31102dab5c,1,0,5a54bc1a-d178-412c-bf4a-cf92d7f141aa,5a54bc1a-d178-412c-bf4a-cf92d7f141aa,1,0,24be43ec-d39e-46aa-9c11-2536b835e515,24be43ec-d39e-46aa-9c11-2536b835e515,1,0,c9ca80ef-c7b7-4425-b5c0-3d13af82f291,c9ca80ef-c7b7-4425-b5c0-3d13af82f291,1,0,df9af3ee-6a69-4a03-8ff5-0735e9a38013,df9af3ee-6a69-4a03-8ff5-0735e9a38013,1,0,1b27eb77-d535-43a5-8ae1-fa2fec15d92c,1b27eb77-d535-43a5-8ae1-fa2fec15d92c,1,0,7743fe24-b941-4dad-bc76-05fb6b26b1d7,7743fe24-b941-4dad-bc76-05fb6b26b1d7,1,0,5bf2da0d-f318-4036-9234-8a3a6eca88b2,5bf2da0d-f318-4036-9234-8a3a6eca88b2,1,0,288525fc-d3fa-4c8e-a1d7-d2d1ef4cd0ef,288525fc-d3fa-4c8e-a1d7-d2d1ef4cd0ef,1,0,c3634571-6fe5-45ab-9362-161305eef661,c3634571-6fe5-45ab-9362-161305eef661,1,0,ec11342f-594f-416f-a10f-bd1bfa695c08,ec11342f-594f-416f-a10f-bd1bfa695c08,1,0,31c3ac44-204e-43fd-bca3-fd18fa091c58,31c3ac44-204e-43fd-bca3-fd18fa091c58,1,0,74f03c35-5da0-406e-a938-e8e5d49975ef,74f03c35-5da0-406e-a938-e8e5d49975ef,1,0,c9ab3890-6d16-431f-ab2b-b5058e6202a4,c9ab3890-6d16-431f-ab2b-b5058e6202a4,1,0,5ee9eed7-3c6c-4264-ab9a-6f24f9c80598,5ee9eed7-3c6c-4264-ab9a-6f24f9c80598,1,0,3c33adc7-abea-4e0f-9e5d-d8f10abb63df,3c33adc7-abea-4e0f-9e5d-d8f10abb63df,1,0,4090c6f7-1d25-4b17-9baa-18daa0640b0f,4090c6f7-1d25-4b17-9baa-18daa0640b0f,1,0,26125e58-dfc8-4bbb-a3a4-80616471746e,26125e58-dfc8-4bbb-a3a4-80616471746e,1,0,b1c699cd-efdc-461c-ad37-10bfd4bc9674,b1c699cd-efdc-461c-ad37-10bfd4bc9674,1,0,6add1920-5073-4b1e-b7e0-13bf1e65e4c3,6add1920-5073-4b1e-b7e0-13bf1e65e4c3,1,0,f12c946c-98e4-4da6-8a88-c555e9dc3bdd,f12c946c-98e4-4da6-8a88-c555e9dc3bdd,1,0,ec5718b7-1c4d-4bdc-9426-40a339bb29cf,ec5718b7-1c4d-4bdc-9426-40a339bb29cf,1,0,ecd8772d-e33f-426f-a87a-e28bd94d5fdf,ecd8772d-e33f-426f-a87a-e28bd94d5fdf,1,0,96661303-1286-4f84-93b7-0e6da2bd7893,96661303-1286-4f84-93b7-0e6da2bd7893,1,0,68076431-36e6-46dc-92cb-e0d8e605bf66,68076431-36e6-46dc-92cb-e0d8e605bf66,1,0,239fa55a-6572-4e5c-9918-c2e14063c76d,239fa55a-6572-4e5c-9918-c2e14063c76d,1,0,8211a1b6-c3b1-466b-8d11-22603fb50c7a,8211a1b6-c3b1-466b-8d11-22603fb50c7a,1,0,7e7dfcb5-04eb-40f4-8f4c-f29644e81473,7e7dfcb5-04eb-40f4-8f4c-f29644e81473,1,0,daef68a3-c6c3-450d-b8fd-7af2a2f5572e,daef68a3-c6c3-450d-b8fd-7af2a2f5572e,1,0,a83cb338-5707-42c9-9e88-11f6c68fcc32,a83cb338-5707-42c9-9e88-11f6c68fcc32,1,0,985106b7-7476-4b48-90ac-ad86876395b5,985106b7-7476-4b48-90ac-ad86876395b5,1,0,0d8db0c9-adbc-478d-997c-3d7feccac99b,0d8db0c9-adbc-478d-997c-3d7feccac99b,1,0,3fd2ef04-c178-47bf-ab62-7baf83236d99,3fd2ef04-c178-47bf-ab62-7baf83236d99,1,0,b4cd1b51-dbc0-4bb0-879e-5ac0d58e78c1,b4cd1b51-dbc0-4bb0-879e-5ac0d58e78c1,1,0,320bf2e6-a3a8-490b-8aa0-21369ffb121b,320bf2e6-a3a8-490b-8aa0-21369ffb121b,1,0,a3bafc54-8fe4-4841-acc6-74a87baf9caf,a3bafc54-8fe4-4841-acc6-74a87baf9caf,1,0,f93741c9-ab94-464b-b0d4-4af99c9f92d5,f93741c9-ab94-464b-b0d4-4af99c9f92d5,1,0,0fddbd8d-12dd-4af1-9e34-feebf4bc38b1,0fddbd8d-12dd-4af1-9e34-feebf4bc38b1,1,0,2e9548a6-1fd8-4430-8864-91bde0d2a7a1,2e9548a6-1fd8-4430-8864-91bde0d2a7a1,1,0,c59fd3f8-c734-49d3-90ba-e608a22ac981,c59fd3f8-c734-49d3-90ba-e608a22ac981,1,0,b26235ed-374c-44ab-8b3c-01d7c4d82d4c,b26235ed-374c-44ab-8b3c-01d7c4d82d4c,1,0,5056db9f-9ebe-4cca-98f0-5f4817a1cba4,5056db9f-9ebe-4cca-98f0-5f4817a1cba4,1,0,475f76ea-f494-41f1-9b65-f39907e5a427,475f76ea-f494-41f1-9b65-f39907e5a427,1,0,986280d1-41bb-4b15-a5ae-516d6a04c1f4,986280d1-41bb-4b15-a5ae-516d6a04c1f4,1,0,43bfd29a-d254-4c33-8639-200b483578c1,43bfd29a-d254-4c33-8639-200b483578c1,1,0,6a274167-7f80-4613-9890-259ffd8ccfc4,6a274167-7f80-4613-9890-259ffd8ccfc4,1,0,4e90e1ab-b1ec-4795-ad45-1db151a5492c,4e90e1ab-b1ec-4795-ad45-1db151a5492c,1,0,91791e56-ca80-4d90-b8a8-16145f6a9721,91791e56-ca80-4d90-b8a8-16145f6a9721,1,0,b242c6a2-5ac9-4edb-b5dd-24eda8162151,b242c6a2-5ac9-4edb-b5dd-24eda8162151,1,0,8d080f3c-06ed-48bf-9709-eea73d676741,8d080f3c-06ed-48bf-9709-eea73d676741,1,0,57b31a5d-9fdc-43d2-ae81-67157822c4b6,57b31a5d-9fdc-43d2-ae81-67157822c4b6,1,0,d4e2da66-9a70-459f-a873-cb4ad71d17b2,d4e2da66-9a70-459f-a873-cb4ad71d17b2,1,0,a84a91d2-d326-4bf4-82e6-d573ee35d090,a84a91d2-d326-4bf4-82e6-d573ee35d090,1,0,39cbda23-db3f-4ddd-8981-8540247406db,39cbda23-db3f-4ddd-8981-8540247406db,1,0,c8a18d99-62ff-45a4-acb5-48e3310c1b53,c8a18d99-62ff-45a4-acb5-48e3310c1b53,1,0,a6eb0cb1-80f0-4390-80ff-7af53f8e63c3,a6eb0cb1-80f0-4390-80ff-7af53f8e63c3,1,0,fef27478-ddfd-4ad9-8161-148761f29698,fef27478-ddfd-4ad9-8161-148761f29698,1,0,3500c6fa-813a-49dd-a4bf-163500db5b7f,3500c6fa-813a-49dd-a4bf-163500db5b7f,1,0,1d02493a-dd89-4a51-b75e-9c49f9818b95,1d02493a-dd89-4a51-b75e-9c49f9818b95,1,0,2845c5d1-e836-4499-bcae-f3c8fdae75ee,2845c5d1-e836-4499-bcae-f3c8fdae75ee,1,0,fe4e8e4e-9471-4583-b9b3-576007db08ee,fe4e8e4e-9471-4583-b9b3-576007db08ee,1,0,49deaaa8-6d50-4b25-8153-6712d88fb0fb,49deaaa8-6d50-4b25-8153-6712d88fb0fb,1,0,1eeb7634-e924-4ad8-92e0-1c54c22b1ba6,1eeb7634-e924-4ad8-92e0-1c54c22b1ba6,1,0,46a06de8-06fd-4b49-835f-4f24b832b3c4,46a06de8-06fd-4b49-835f-4f24b832b3c4,1,0,3845a567-4375-4c3a-af61-5b82674060ab,3845a567-4375-4c3a-af61-5b82674060ab,1,0,ab210fb8-4fc4-47f8-b8ef-3a00eeb0ab8b,ab210fb8-4fc4-47f8-b8ef-3a00eeb0ab8b,1,0,a835a3a7-989b-4247-b836-d23bba2f391a,a835a3a7-989b-4247-b836-d23bba2f391a,1,0,58f5c354-8f1d-4064-ba35-527ea3d2f4a9,58f5c354-8f1d-4064-ba35-527ea3d2f4a9,1,0,9b149c20-9328-4e2d-a34b-95c883ae4dcc,9b149c20-9328-4e2d-a34b-95c883ae4dcc,1,0,dd6fdc0d-49bb-4fa1-aa17-bd9dc38a0992,dd6fdc0d-49bb-4fa1-aa17-bd9dc38a0992,1,0,f8dbf226-ea56-4b15-baf1-a41fceba2a32,f8dbf226-ea56-4b15-baf1-a41fceba2a32,1,0,fc1476f7-26e6-4374-b99b-e515d86c050a,fc1476f7-26e6-4374-b99b-e515d86c050a,1,0,e0eb7b4a-9a13-4752-9327-e13d2abc4fc5,e0eb7b4a-9a13-4752-9327-e13d2abc4fc5,1,0,c4753515-a483-453e-a48b-b12d8ef48fd9,c4753515-a483-453e-a48b-b12d8ef48fd9,1,0,2d9048eb-abdf-4980-96ed-788fbb0f4ea7,2d9048eb-abdf-4980-96ed-788fbb0f4ea7,1,0,98c3bc52-2351-460c-8b8e-0d3f45ca3131,98c3bc52-2351-460c-8b8e-0d3f45ca3131,1,0,b1ff31b9-c9f2-4be4-ac9a-62faa1d1eb81,b1ff31b9-c9f2-4be4-ac9a-62faa1d1eb81,1,0,c14ea7a0-1fb6-4d54-82d6-7f12f11b0c0b,c14ea7a0-1fb6-4d54-82d6-7f12f11b0c0b,1,0,29645810-44aa-402c-9561-7819d6f4a7ab,29645810-44aa-402c-9561-7819d6f4a7ab,1,0,46bf4911-5200-44ac-9b4d-eb0089c12e34,46bf4911-5200-44ac-9b4d-eb0089c12e34,1,0,6e1685bd-7269-401c-b36e-def6a36b41d5,6e1685bd-7269-401c-b36e-def6a36b41d5,1,0,9d77103a-9921-4f6c-98fc-d7f42f0f2d8d,9d77103a-9921-4f6c-98fc-d7f42f0f2d8d,1,0,e03b6592-b597-4795-a78e-775d4f2258db,e03b6592-b597-4795-a78e-775d4f2258db,1,0,6ae9e86a-a42f-4de0-a891-6abe1ed16cdd,6ae9e86a-a42f-4de0-a891-6abe1ed16cdd,1,0,3b207d5f-6584-4cf2-9173-20235484f9f4,3b207d5f-6584-4cf2-9173-20235484f9f4,1,0,878d9efe-b0e7-487f-b8f7-83470c131e09,878d9efe-b0e7-487f-b8f7-83470c131e09,1,0,8270573d-8ed6-449d-853b-462d2dabaaa9,8270573d-8ed6-449d-853b-462d2dabaaa9,1,0,baeec6cd-b220-4240-95f2-3a0c1ee06c2e,baeec6cd-b220-4240-95f2-3a0c1ee06c2e,1,0,f2502463-67e4-4bfe-8ad5-fb80aa73975a,f2502463-67e4-4bfe-8ad5-fb80aa73975a,1,0,59e885e6-d978-40c2-95b6-35fc61074fb4,59e885e6-d978-40c2-95b6-35fc61074fb4,1,0,267dc512-9ee1-4bc1-9034-3effb7fb2949,267dc512-9ee1-4bc1-9034-3effb7fb2949,1,0,0f211e73-5be9-4015-93e7-ccf63e793cb6,0f211e73-5be9-4015-93e7-ccf63e793cb6,1,0,6574d8f4-fb97-4a26-b166-711fad63aa07,6574d8f4-fb97-4a26-b166-711fad63aa07,1,0,fb3eddaf-3241-4d59-8314-97a5ae9258c4,fb3eddaf-3241-4d59-8314-97a5ae9258c4,1,0,6528bd7a-bac1-4c8b-9b00-6be01c0121b1,6528bd7a-bac1-4c8b-9b00-6be01c0121b1,1,0,d8601e95-af94-4805-974a-99c539725d74,d8601e95-af94-4805-974a-99c539725d74,1,0,6d98f877-f3bb-4795-9025-2631468a331f,6d98f877-f3bb-4795-9025-2631468a331f,1,0,89b9379d-ace9-48cc-b979-a66fd45aeb1d,89b9379d-ace9-48cc-b979-a66fd45aeb1d,1,0,c4a5c44d-329d-41b5-9a6c-bddbc15f6249,c4a5c44d-329d-41b5-9a6c-bddbc15f6249,1,0,9767a113-5a42-4749-bf40-0f349e85615d,9767a113-5a42-4749-bf40-0f349e85615d,1,0,a3b0494c-f436-45ea-9577-4c0c86b057c9,a3b0494c-f436-45ea-9577-4c0c86b057c9,1,0,5101c142-b25c-4bef-80e7-7407f2c15c90,5101c142-b25c-4bef-80e7-7407f2c15c90,1,0,6d7872f1-fd54-41c4-8253-5f2b125f31ae,6d7872f1-fd54-41c4-8253-5f2b125f31ae,1,0,0c218200-27a8-4f71-9b09-3632dd453644,0c218200-27a8-4f71-9b09-3632dd453644,1,0,2d8a74e5-eb29-448b-b4c0-1f41fa171b5e,2d8a74e5-eb29-448b-b4c0-1f41fa171b5e,1,0,b5d30250-18ab-4af1-b99a-ff5dba334d1f,b5d30250-18ab-4af1-b99a-ff5dba334d1f,1,0,936f1aa5-7516-444b-b451-1162fa5d705f,936f1aa5-7516-444b-b451-1162fa5d705f,1,0,e8d5533e-2669-44f6-9eed-eaedab666d42,e8d5533e-2669-44f6-9eed-eaedab666d42,1,0,dd8e0f41-51a3-4bf2-a32e-084f9ad09be7,dd8e0f41-51a3-4bf2-a32e-084f9ad09be7,1,0,9e323b0d-4e3b-45d4-9705-aa30e63014f5,9e323b0d-4e3b-45d4-9705-aa30e63014f5,1,0,5afa798a-958e-4e0c-a380-0104f4c037a7,5afa798a-958e-4e0c-a380-0104f4c037a7,1,0,c0295fd9-c749-41b3-8d0d-6af16f484b1f,c0295fd9-c749-41b3-8d0d-6af16f484b1f,1,0,bd32a863-3090-432d-89c4-356ba86a0bdc,bd32a863-3090-432d-89c4-356ba86a0bdc,1,0,4621bf5a-46b5-4b82-8ae4-cc8e11e81ba0,4621bf5a-46b5-4b82-8ae4-cc8e11e81ba0,1,0,ed5465b4-a556-4078-ab18-49fef2afba2e,ed5465b4-a556-4078-ab18-49fef2afba2e,1,0,7368ab8f-59d5-4270-a43b-0f3e422169ed,7368ab8f-59d5-4270-a43b-0f3e422169ed,1,0,eeb0571b-1b74-4889-b8b5-f94186d692d7,eeb0571b-1b74-4889-b8b5-f94186d692d7,1,0,9ef3b72c-caa3-486b-9917-04c00f6689c1,9ef3b72c-caa3-486b-9917-04c00f6689c1,1,0,cb3039d8-4b11-4d03-b0ca-eae5dfc01b0a,cb3039d8-4b11-4d03-b0ca-eae5dfc01b0a,1,0,9245417f-f247-47ba-a1b4-a17ec2e8776c,9245417f-f247-47ba-a1b4-a17ec2e8776c,1,0,a4b721d7-b119-47eb-80e0-7db34c83964f,a4b721d7-b119-47eb-80e0-7db34c83964f,1,0,512629d1-e8b7-4f66-b613-b8c0cb9c250b,512629d1-e8b7-4f66-b613-b8c0cb9c250b,1,0,b7cf4684-4432-4658-9c06-b315d470a3a6,b7cf4684-4432-4658-9c06-b315d470a3a6,1,0,d3bc8211-54d8-47dd-aecf-5da72b65195f,d3bc8211-54d8-47dd-aecf-5da72b65195f,1,0,33f11da8-f670-4ec3-9d40-96fce031c60f,33f11da8-f670-4ec3-9d40-96fce031c60f,1,0,97cbd5b5-5a39-418c-93b5-f9934fa1ba4e,97cbd5b5-5a39-418c-93b5-f9934fa1ba4e,1,0,f74c2d41-2433-4bed-8aef-adfeed198252,f74c2d41-2433-4bed-8aef-adfeed198252,1,0,3c2b8a8a-bfe7-4e37-9d83-55a695a06605,3c2b8a8a-bfe7-4e37-9d83-55a695a06605,1,0,56c9703a-751a-4e6c-81f4-a8756fb040e3,56c9703a-751a-4e6c-81f4-a8756fb040e3,1,0,c3a86eec-1ff5-4392-9904-91a12a2e253a,c3a86eec-1ff5-4392-9904-91a12a2e253a,1,0,f5df72a3-c71c-412b-8c3e-6329f1d3a7da,f5df72a3-c71c-412b-8c3e-6329f1d3a7da,1,0,f02b7246-dae9-4e15-b4cd-b06133664d34,f02b7246-dae9-4e15-b4cd-b06133664d34,1,0,77f20022-17ce-4e00-8a84-015238bce6f3,77f20022-17ce-4e00-8a84-015238bce6f3,1,0,3734619b-7059-4547-8b97-0b3393389d4d,3734619b-7059-4547-8b97-0b3393389d4d,1,0,a30bf95f-aabd-4da0-8287-61e08f9362fb,a30bf95f-aabd-4da0-8287-61e08f9362fb,1,0,f5a7df18-2ddb-4053-9aeb-57fc37ae557e,f5a7df18-2ddb-4053-9aeb-57fc37ae557e,1,0,4078867c-2972-47f9-bebd-935a6f1cc667,4078867c-2972-47f9-bebd-935a6f1cc667,1,0,8502fe39-c241-4be5-a313-fd887bbbdfa1,8502fe39-c241-4be5-a313-fd887bbbdfa1,1,0,67a71201-13e5-42a3-902f-fb3a59710dfb,67a71201-13e5-42a3-902f-fb3a59710dfb,1,0,3a79a951-a997-4596-ab62-ba376d67725d,3a79a951-a997-4596-ab62-ba376d67725d,1,0,dd4fe688-c113-4ac5-8114-b89cf1b0eb55,dd4fe688-c113-4ac5-8114-b89cf1b0eb55,1,0,884c28de-434f-440a-8c63-67e659c097ad,884c28de-434f-440a-8c63-67e659c097ad,1,0,92ead3b5-8c55-4e4d-bd47-009e025b22f8,92ead3b5-8c55-4e4d-bd47-009e025b22f8,1,0,50d8e365-aa58-4b60-8992-01943379d485,50d8e365-aa58-4b60-8992-01943379d485,1,0,9bb58c7c-d87d-435b-adf6-09c8f75d47b2,9bb58c7c-d87d-435b-adf6-09c8f75d47b2,1,0,b3f7f763-bea9-4f59-9450-df95e5c3d89d,b3f7f763-bea9-4f59-9450-df95e5c3d89d,1,0,9111e28e-c1c7-414b-9288-61bd06a04d04,9111e28e-c1c7-414b-9288-61bd06a04d04,1,0,bcd705ba-c9ac-4e73-94b1-7632c0f06c04,bcd705ba-c9ac-4e73-94b1-7632c0f06c04,1,0,fec102ea-a3f6-49b5-b4b8-6884b0654129,fec102ea-a3f6-49b5-b4b8-6884b0654129,1,0,246571fb-38c7-4da6-929d-d8b44bc3437c,246571fb-38c7-4da6-929d-d8b44bc3437c,1,0,047fd6d7-5e30-4184-a09a-6525de526cc7,047fd6d7-5e30-4184-a09a-6525de526cc7,1,0,beb44b02-5d5e-4127-aee7-e184a43a4210,beb44b02-5d5e-4127-aee7-e184a43a4210,1,0,1dedfbc2-9250-4229-a6ea-5e085f33e7c3,1dedfbc2-9250-4229-a6ea-5e085f33e7c3,1,0,e24641ed-3e92-46d7-852b-9958ab7bc520,e24641ed-3e92-46d7-852b-9958ab7bc520,1,0,bc2aa3f9-ef2c-49a5-8cd9-ddd8a8cbe19d,bc2aa3f9-ef2c-49a5-8cd9-ddd8a8cbe19d,1,0,b6ac4cd6-c68f-4464-88e9-a8d335d581c6,b6ac4cd6-c68f-4464-88e9-a8d335d581c6,1,0,2c61114f-abd7-4415-8cdf-4fe95d9fe354,2c61114f-abd7-4415-8cdf-4fe95d9fe354,1,0,abd7a766-5cc1-48db-8d29-797e9d666a78,abd7a766-5cc1-48db-8d29-797e9d666a78,1,0,1704b5e3-8e77-4df6-9223-e6e5c41a280d,1704b5e3-8e77-4df6-9223-e6e5c41a280d,1,0,62eca88f-025d-44de-b92c-46cd8bc7e4a1,62eca88f-025d-44de-b92c-46cd8bc7e4a1,1,0,b0dde395-8498-4469-9507-d290798117d7,b0dde395-8498-4469-9507-d290798117d7,1,0,999616ea-0faa-4ae2-9841-6a6997ea6694,999616ea-0faa-4ae2-9841-6a6997ea6694,1,0,c5f91669-13d8-4f0a-a054-2701078da38a,c5f91669-13d8-4f0a-a054-2701078da38a,1,0,34f9872b-e02e-4093-ba06-3cb5b8995850,34f9872b-e02e-4093-ba06-3cb5b8995850,1,0,18515c19-c9ef-4c9f-8d12-4f58ffa251e8,18515c19-c9ef-4c9f-8d12-4f58ffa251e8,1,0,3afe11f6-7424-4b41-a42f-91db33756fa3,3afe11f6-7424-4b41-a42f-91db33756fa3,1,0,94e68502-adf1-476e-be2f-8418385959fa,94e68502-adf1-476e-be2f-8418385959fa,1,0,bf80ccc5-f907-4e7f-a007-6030c7ba682e,bf80ccc5-f907-4e7f-a007-6030c7ba682e,1,0,134bbd7c-cadd-4395-b7a4-0249dfe7d0b1,134bbd7c-cadd-4395-b7a4-0249dfe7d0b1,1,0,05f1f184-50cb-47c5-b3a8-62be6a9780c1,05f1f184-50cb-47c5-b3a8-62be6a9780c1,1,0,58e92a42-b650-4282-a2b2-2fe2cc0cf50d,58e92a42-b650-4282-a2b2-2fe2cc0cf50d,1,0,8c1a0b0c-3618-4e66-98b8-8b9e7ca63ca2,8c1a0b0c-3618-4e66-98b8-8b9e7ca63ca2,1,0,6cd10bda-0741-4445-9ffa-17182c9c5a58,6cd10bda-0741-4445-9ffa-17182c9c5a58,1,0,5c874c9a-fe67-45a3-a1d3-7ec1d1c55090,5c874c9a-fe67-45a3-a1d3-7ec1d1c55090,1,0,68a623fa-099a-4688-a7e9-444fb42eb650,68a623fa-099a-4688-a7e9-444fb42eb650,1,0,36ed0626-e389-4106-81bc-77462598bb45,36ed0626-e389-4106-81bc-77462598bb45,1,0,faeefd44-4e11-4a7d-8d4e-4dc9c6b60d59,faeefd44-4e11-4a7d-8d4e-4dc9c6b60d59,1,0,737d5b7f-0ee9-46b5-a509-f06b6176a293,737d5b7f-0ee9-46b5-a509-f06b6176a293,1,0,42eb6f71-0ed7-486a-92fb-976d1b46b081,42eb6f71-0ed7-486a-92fb-976d1b46b081,1,0,4a389216-b4c9-4368-af2c-1e51e32671a5,4a389216-b4c9-4368-af2c-1e51e32671a5,1,0,58c3936c-4db0-45c8-a22e-b5dd49a61497,58c3936c-4db0-45c8-a22e-b5dd49a61497,1,0,9aa607bc-5870-436a-bbe1-296560393e3b,9aa607bc-5870-436a-bbe1-296560393e3b,1,0,1635be16-4861-4a7d-babc-4caff448a7f7,1635be16-4861-4a7d-babc-4caff448a7f7,1,0,9e399087-c957-4a7a-ab9d-2b689736caab,9e399087-c957-4a7a-ab9d-2b689736caab,1,0,e7542e37-a2f0-43b5-852e-4e2b24b1b71f,e7542e37-a2f0-43b5-852e-4e2b24b1b71f,1,0,3e94649c-7d69-4fb4-ada1-ae00eabf02b6,3e94649c-7d69-4fb4-ada1-ae00eabf02b6,1,0,2b7372be-af0d-464e-8d09-8172229790af,2b7372be-af0d-464e-8d09-8172229790af,1,0,d85346db-be25-4dab-a2db-647c3d40dd17,d85346db-be25-4dab-a2db-647c3d40dd17,1,0,c7bafd34-5b15-42ec-b329-0be3002775ad,c7bafd34-5b15-42ec-b329-0be3002775ad,1,0,6feb2278-9149-47f8-a0ec-eb4bd9f44716,6feb2278-9149-47f8-a0ec-eb4bd9f44716,1,0,c960082b-8c16-4d7b-b7fd-b1f2bfe07e0b,c960082b-8c16-4d7b-b7fd-b1f2bfe07e0b,1,0,cd6770d5-cd3c-47af-bc46-c865993adf63,cd6770d5-cd3c-47af-bc46-c865993adf63,1,0,97ec899d-a2a0-4691-83ff-25b78dd49ef6,97ec899d-a2a0-4691-83ff-25b78dd49ef6,1,0,411db885-f761-44e5-bdd1-9fdf9e741ac1,411db885-f761-44e5-bdd1-9fdf9e741ac1,1,0,9f9936fc-54a0-4812-b12d-2f8f91551440,9f9936fc-54a0-4812-b12d-2f8f91551440,1,0,a5667633-9264-4dfa-9e26-c45e96e61ae3,a5667633-9264-4dfa-9e26-c45e96e61ae3,1,0,2eeea138-481c-4fde-9e8a-709d751cc469,2eeea138-481c-4fde-9e8a-709d751cc469,1,0,43e37533-ed38-4000-a387-5749f8d9aaf3,43e37533-ed38-4000-a387-5749f8d9aaf3,1,0,e93bdb44-64b3-43d8-b15a-c561dbb91974,e93bdb44-64b3-43d8-b15a-c561dbb91974,1,0,a7c7c835-5402-4bdd-a0e3-d21746174d5a,a7c7c835-5402-4bdd-a0e3-d21746174d5a,1,0,07e81872-afac-4720-86b4-91e7bf4a2881,07e81872-afac-4720-86b4-91e7bf4a2881,1,0,02c5f3b2-d691-4eaf-84fd-763770e4b1cb,02c5f3b2-d691-4eaf-84fd-763770e4b1cb,1,0,845262f8-8208-4c90-98ec-c85dd5734cf0,845262f8-8208-4c90-98ec-c85dd5734cf0,1,0,ad066c0d-4f4c-48af-9cc8-bb835372150a,ad066c0d-4f4c-48af-9cc8-bb835372150a,1,0,a2145e81-239e-4267-8a43-ea3f7babe878,a2145e81-239e-4267-8a43-ea3f7babe878,1,0,39598414-9c1d-46ec-a534-8bd43e622e45,39598414-9c1d-46ec-a534-8bd43e622e45,1,0,b552c510-4fd4-4c16-9022-dc5babcafc52,b552c510-4fd4-4c16-9022-dc5babcafc52,1,0,3892c06d-28f1-4238-a929-201316cac1ed,3892c06d-28f1-4238-a929-201316cac1ed,1,0,c13dea2e-17fa-4a5f-a70f-96e623db8a6b,c13dea2e-17fa-4a5f-a70f-96e623db8a6b,1,0,339e8cba-a92e-42f6-8d00-3b8b56ce3b0f,339e8cba-a92e-42f6-8d00-3b8b56ce3b0f,1,0,d4beb6f3-ed8e-479f-89fd-841c29e8ba45,d4beb6f3-ed8e-479f-89fd-841c29e8ba45,1,0,d003fb4f-a11f-4eea-af75-b3d26560be15,d003fb4f-a11f-4eea-af75-b3d26560be15,1,0,1f587ff1-95a4-4f45-85b4-22bb97011177,1f587ff1-95a4-4f45-85b4-22bb97011177,1,0,567c68fd-74c7-4b6e-9119-56ac8d78073c,567c68fd-74c7-4b6e-9119-56ac8d78073c,1,0,3326bbcb-b277-44db-a252-2448119e8146,3326bbcb-b277-44db-a252-2448119e8146,1,0,61cac5f7-320c-4098-9078-44fadcdeb219,61cac5f7-320c-4098-9078-44fadcdeb219,1,0,304304b1-36a4-42bb-8ab9-b23b59795001,304304b1-36a4-42bb-8ab9-b23b59795001,1,0,a22d1a4f-cb7c-4bcc-b258-ecca282fb071,a22d1a4f-cb7c-4bcc-b258-ecca282fb071,1,0,e5beda2c-f4e2-4a6b-a1d0-a877eb0c9f5b,e5beda2c-f4e2-4a6b-a1d0-a877eb0c9f5b,1,0,cd454738-62dd-4f95-af33-b52750678428,cd454738-62dd-4f95-af33-b52750678428,1,0,2a479b8f-7569-43d0-8ca3-9001d6ec57f0,2a479b8f-7569-43d0-8ca3-9001d6ec57f0,1,0,e4abafc6-f859-4d96-9818-5b9bf8d66d69,e4abafc6-f859-4d96-9818-5b9bf8d66d69,1,0,535acd2c-26d2-4f32-9ae6-cc1956317c59,535acd2c-26d2-4f32-9ae6-cc1956317c59,1,0,801adeeb-8a7f-44c1-b649-a7dfffc7b65d,801adeeb-8a7f-44c1-b649-a7dfffc7b65d,1,0,ac4e0868-ba49-46b4-8872-d42483a5591f,ac4e0868-ba49-46b4-8872-d42483a5591f,1,0,45e6c4a6-1d63-4b94-a7d2-fbd3fb68061b,45e6c4a6-1d63-4b94-a7d2-fbd3fb68061b,1,0,0493dcf1-5f94-41f9-a4c7-a52e12a29068,0493dcf1-5f94-41f9-a4c7-a52e12a29068,1,0,ca4c0299-625a-4b03-be0e-36ffb45c6d08,ca4c0299-625a-4b03-be0e-36ffb45c6d08,1,0,7fa1119b-4321-4b8f-a879-1d940084145a,7fa1119b-4321-4b8f-a879-1d940084145a,1,0,5d9c0841-6ea6-48dc-a53b-9f19894750f8,5d9c0841-6ea6-48dc-a53b-9f19894750f8,1,0,86b5303b-d967-4bc6-b2da-066c5a58613f,86b5303b-d967-4bc6-b2da-066c5a58613f,1,0,853b824d-9377-475f-913e-d02bd60f5f64,853b824d-9377-475f-913e-d02bd60f5f64,1,0,ee1f8545-ea64-41de-a29a-2d40e15d4f16,ee1f8545-ea64-41de-a29a-2d40e15d4f16,1,0,25ba3c5d-ace1-43cd-987f-68364b9b6970,25ba3c5d-ace1-43cd-987f-68364b9b6970,1,0,75ec7461-ec33-417a-bdb8-6337a8d08fb4,75ec7461-ec33-417a-bdb8-6337a8d08fb4,1,0,b8f5019e-b53f-4508-a042-bbadda2d1fd4,b8f5019e-b53f-4508-a042-bbadda2d1fd4,1,0,b250d233-70a0-4baf-8b7d-6e1d414a11b9,b250d233-70a0-4baf-8b7d-6e1d414a11b9,1,0,d5a73869-381e-4878-8db7-596643937202,d5a73869-381e-4878-8db7-596643937202,1,0,0c5e261f-961e-4780-877a-06589400b88a,0c5e261f-961e-4780-877a-06589400b88a,1,0,4599ef83-5f1e-44af-ae0c-67988656a99e,4599ef83-5f1e-44af-ae0c-67988656a99e,1,0,acb0d7eb-2ed9-4419-b79d-7dc661d70c30,acb0d7eb-2ed9-4419-b79d-7dc661d70c30,1,0,e1b94dcf-ec37-4b2d-a7af-120eeee40944,e1b94dcf-ec37-4b2d-a7af-120eeee40944,1,0,7d2a37b1-a1a0-435a-846a-95e255655044,7d2a37b1-a1a0-435a-846a-95e255655044,1,0,109db64c-00dc-490e-99a5-4430d9344e99,109db64c-00dc-490e-99a5-4430d9344e99,1,0,85837a55-fed5-4b7b-a622-30d728b9a677,85837a55-fed5-4b7b-a622-30d728b9a677,1,0,0fd79cdb-dc7a-40ca-a3bc-2c7a7b4691bb,0fd79cdb-dc7a-40ca-a3bc-2c7a7b4691bb,1,0,6ede8b5c-7df0-44a5-9136-8109bbd8b5a9,6ede8b5c-7df0-44a5-9136-8109bbd8b5a9,1,0,325bacdd-793f-47d8-b987-57e9d5f2782b,325bacdd-793f-47d8-b987-57e9d5f2782b,1,0,da9821c3-4b16-48b7-9088-d3cf8ac536a6,da9821c3-4b16-48b7-9088-d3cf8ac536a6,1,0,fb36c775-1124-4ba6-8af8-133bf66fcb54,fb36c775-1124-4ba6-8af8-133bf66fcb54,1,0,51f9aff4-71da-4b1b-b48b-04122a17d855,51f9aff4-71da-4b1b-b48b-04122a17d855,1,0,d5142574-a040-4dd0-a482-cdc61c1d86ab,d5142574-a040-4dd0-a482-cdc61c1d86ab,1,0,62957889-503f-4923-a372-29776dc3b5e5,62957889-503f-4923-a372-29776dc3b5e5,1,0,778e79ee-eb1a-4d52-8a31-58e781c78fe4,778e79ee-eb1a-4d52-8a31-58e781c78fe4,1,0,90385850-d37b-4b2e-ac87-95c17f32197c,90385850-d37b-4b2e-ac87-95c17f32197c,1,0,f480ac52-e2f1-4ed0-a0b1-20a622f77302,f480ac52-e2f1-4ed0-a0b1-20a622f77302,1,0,5c63e7cd-ecdb-45ae-a589-f6c38f5a8e76,5c63e7cd-ecdb-45ae-a589-f6c38f5a8e76,1,0,b9b0fbdc-8fda-46d1-bb3e-561a03604971,b9b0fbdc-8fda-46d1-bb3e-561a03604971,1,0,eadfdbe3-bc85-4084-aef6-4cfd258ee6f1,eadfdbe3-bc85-4084-aef6-4cfd258ee6f1,1,0,672c2936-9771-4e32-a970-7ac7f12a21e8,672c2936-9771-4e32-a970-7ac7f12a21e8,1,0,73afaad8-dfa9-43e3-bdaf-543c3545d788,73afaad8-dfa9-43e3-bdaf-543c3545d788,1,0,c264441d-4805-4968-baa2-37b8970049c7,c264441d-4805-4968-baa2-37b8970049c7,1,0,4f0bda80-2246-43be-95f8-ae8480682cd5,4f0bda80-2246-43be-95f8-ae8480682cd5,1,0,ac4fa2a4-93a1-4aa6-986a-5f576457fc8a,ac4fa2a4-93a1-4aa6-986a-5f576457fc8a,1,0,6f683f46-9eef-4e78-bc2f-7174238bf53c,6f683f46-9eef-4e78-bc2f-7174238bf53c,1,0,7d1ed38b-98cf-4a0e-a605-680bb580d904,7d1ed38b-98cf-4a0e-a605-680bb580d904,1,0,b769eda0-11de-401c-a68b-4fce4555d4fc,b769eda0-11de-401c-a68b-4fce4555d4fc,1,0,fd7a668f-3099-4e15-956a-92c6295dd4d5,fd7a668f-3099-4e15-956a-92c6295dd4d5,1,0,afcbd830-ec5f-4865-a176-ea3014dff908,afcbd830-ec5f-4865-a176-ea3014dff908,1,0,dc5fc801-14e4-42e8-b396-76eb30b69eea,dc5fc801-14e4-42e8-b396-76eb30b69eea,1,0,f36150de-33af-4410-8a4c-8c9f4b545793,f36150de-33af-4410-8a4c-8c9f4b545793,1,0,62f97480-7d4a-48f3-9d1d-612909b242c9,62f97480-7d4a-48f3-9d1d-612909b242c9,1,0,2b4f6e2f-6cc4-4c7c-98a6-786f3793366b,2b4f6e2f-6cc4-4c7c-98a6-786f3793366b,1,0,3068be84-a401-4701-8ac9-411fae130f84,3068be84-a401-4701-8ac9-411fae130f84,1,0,957394a7-e5b8-47fc-8680-1e71efe2be7d,957394a7-e5b8-47fc-8680-1e71efe2be7d,1,0,ba49a9e4-6ec1-43ff-92cd-9dbf221bbf09,ba49a9e4-6ec1-43ff-92cd-9dbf221bbf09,1,0,4f25ef45-c8d9-401d-b0e8-2217ac310f04,4f25ef45-c8d9-401d-b0e8-2217ac310f04,1,0,504ca240-b5ae-433e-ae5f-d818263eea23,504ca240-b5ae-433e-ae5f-d818263eea23,1,0,32461819-9437-417d-8d1e-851c9a2dcee2,32461819-9437-417d-8d1e-851c9a2dcee2,1,0,74228950-8a4b-4dd6-a053-8650de202521,74228950-8a4b-4dd6-a053-8650de202521,1,0,6b9ce91e-08b9-4972-9878-1724c67b68ec,6b9ce91e-08b9-4972-9878-1724c67b68ec,1,0,640814f2-6082-475e-8006-25fd5b24afdb,640814f2-6082-475e-8006-25fd5b24afdb,1,0,6fcd2a3a-4d66-40e3-bde0-5c274b43783f,6fcd2a3a-4d66-40e3-bde0-5c274b43783f,1,0,569047c2-0879-4fba-a814-44812d21043b,569047c2-0879-4fba-a814-44812d21043b,1,0,f1b66ea8-262d-4b38-a039-b83a843f6ee8,f1b66ea8-262d-4b38-a039-b83a843f6ee8,1,0,bcae6e05-f1fd-413e-9eef-2e1cee42a962,bcae6e05-f1fd-413e-9eef-2e1cee42a962,1,0,40da1bca-ebb3-4c64-bf54-1f37b71d47b6,40da1bca-ebb3-4c64-bf54-1f37b71d47b6,1,0,778b4c8f-7a1e-4b4b-9f68-12cbf52bf195,778b4c8f-7a1e-4b4b-9f68-12cbf52bf195,1,0,91562fe8-e630-4bcb-a14e-c0e1e129141a,91562fe8-e630-4bcb-a14e-c0e1e129141a,1,0,c261abfd-3828-47b5-aa32-dfdd3a1636ad,c261abfd-3828-47b5-aa32-dfdd3a1636ad,1,0,e9aa6dab-0d96-42ce-9bd6-b8b10d755f8c,e9aa6dab-0d96-42ce-9bd6-b8b10d755f8c,1,0,84da1ef8-1784-4dfc-b17a-7728aa7ff62a,84da1ef8-1784-4dfc-b17a-7728aa7ff62a,1,0,9155c95b-6afb-41bb-bd0b-d37e503fc163,9155c95b-6afb-41bb-bd0b-d37e503fc163,1,0,d917c19e-be15-41cc-9c8a-a97c8de85309,d917c19e-be15-41cc-9c8a-a97c8de85309,1,0,5e33e655-2847-4237-87ff-74775fd36756,5e33e655-2847-4237-87ff-74775fd36756,1,0,f0907d81-656e-4dfb-81d8-14a8847cb38a,f0907d81-656e-4dfb-81d8-14a8847cb38a,1,0,0e3c6508-caa3-43ef-9647-0e3b96955898,0e3c6508-caa3-43ef-9647-0e3b96955898,1,0,ceb18abf-0390-450c-9e4c-cab9e43eb2e8,ceb18abf-0390-450c-9e4c-cab9e43eb2e8,1,0,1b1fa685-dccb-4d0f-ac01-adc6febf7f15,1b1fa685-dccb-4d0f-ac01-adc6febf7f15,1,0,47907538-9357-4885-8b50-17f2e16c260f,47907538-9357-4885-8b50-17f2e16c260f,1,0,17e1840f-fef3-4f17-8476-273e6af24cb4,17e1840f-fef3-4f17-8476-273e6af24cb4,1,0,a64566fa-b706-49bc-8277-4531145c400e,a64566fa-b706-49bc-8277-4531145c400e,1,0,a8f32b13-249c-4ce6-a521-f06a87f2e670,a8f32b13-249c-4ce6-a521-f06a87f2e670,1,0,815775e4-cfb7-495b-87c4-d134b90d93d4,815775e4-cfb7-495b-87c4-d134b90d93d4,1,0,e867f2f1-0550-4d15-9e40-ba36c9aabfbd,e867f2f1-0550-4d15-9e40-ba36c9aabfbd,1,0,8bdbb9ef-3a91-4374-b3c5-9447005bb1b7,8bdbb9ef-3a91-4374-b3c5-9447005bb1b7,1,0,7a27b378-89ac-4cad-8c69-a0cd14812d7e,7a27b378-89ac-4cad-8c69-a0cd14812d7e,1,0,d2433a11-8e1d-4e4c-966d-37cde6283f72,d2433a11-8e1d-4e4c-966d-37cde6283f72,1,0,59eb5919-3c33-48bf-b322-ec78018e4142,59eb5919-3c33-48bf-b322-ec78018e4142,1,0,63f308a5-b955-48a5-8052-50c5bede65d0,63f308a5-b955-48a5-8052-50c5bede65d0,1,0,1b614b97-5c1d-497a-9574-40114059f836,1b614b97-5c1d-497a-9574-40114059f836,1,0,477dfea4-e401-4cf0-b0a8-2df7c3836c58,477dfea4-e401-4cf0-b0a8-2df7c3836c58,1,0,294c000f-6979-4ed1-bbc7-7402facd9185,294c000f-6979-4ed1-bbc7-7402facd9185,1,0,db607fbc-f785-47d5-9550-577424aa3fe9,db607fbc-f785-47d5-9550-577424aa3fe9,1,0,b7111ddf-a623-4bae-90aa-636148492ca2,b7111ddf-a623-4bae-90aa-636148492ca2,1,0,905d9dcd-5793-4362-8fe8-2edce8c35e32,905d9dcd-5793-4362-8fe8-2edce8c35e32,1,0,a96cb6fd-54e0-4514-9210-7f4636acd336,a96cb6fd-54e0-4514-9210-7f4636acd336,1,0,3580e7a7-95d1-4a8e-bc12-a1449fe03757,3580e7a7-95d1-4a8e-bc12-a1449fe03757,1,0,13759790-6c70-4323-9321-a68b90c51663,13759790-6c70-4323-9321-a68b90c51663,1,0,d9704b20-c29c-4e7f-b777-0ac9080a5631,d9704b20-c29c-4e7f-b777-0ac9080a5631,1,0,c1372891-0f55-4868-ab97-906eff52be0e,c1372891-0f55-4868-ab97-906eff52be0e,1,0,33e96bda-1708-4ee4-8d4d-3b919bda3e38,33e96bda-1708-4ee4-8d4d-3b919bda3e38,1,0,53fb35a7-44ab-42e7-8dba-6fa08bf5ba2c,53fb35a7-44ab-42e7-8dba-6fa08bf5ba2c,1,0,93fcaa62-2a19-468b-9128-c7930583fbfd,93fcaa62-2a19-468b-9128-c7930583fbfd,1,0,2d885109-4c96-41c0-a996-785bfd793c2d,2d885109-4c96-41c0-a996-785bfd793c2d,1,0,e870a1bd-0c08-4d1e-832a-357922983c19,e870a1bd-0c08-4d1e-832a-357922983c19,1,0,9f71aeac-f889-40dc-91bd-d670da4efd2b,9f71aeac-f889-40dc-91bd-d670da4efd2b,1,0,62f8a9b2-9e56-4d5c-a7e2-a85f5b27a5b7,62f8a9b2-9e56-4d5c-a7e2-a85f5b27a5b7,1,0,614ef0bd-3298-408b-bf71-37df8ee60702,614ef0bd-3298-408b-bf71-37df8ee60702,1,0,26ff1be6-f72a-456a-9dce-302029752603,26ff1be6-f72a-456a-9dce-302029752603,1,0,db850a08-0c99-4a57-9b04-38be64bd38fb,db850a08-0c99-4a57-9b04-38be64bd38fb,1,0,abeca127-5ae9-46af-a5e8-d6438fd68367,abeca127-5ae9-46af-a5e8-d6438fd68367,1,0,bce81631-9f6d-42b3-b4b6-2199afb08f2f,bce81631-9f6d-42b3-b4b6-2199afb08f2f,1,0,67d6878f-3e47-4142-8f98-c5a207f0b8a8,67d6878f-3e47-4142-8f98-c5a207f0b8a8,1,0,7f4b872f-0e50-49dd-984d-f5fc3ac3f2f0,7f4b872f-0e50-49dd-984d-f5fc3ac3f2f0,1,0,68636657-4d46-4c2a-9b2f-11521a55dfb4,68636657-4d46-4c2a-9b2f-11521a55dfb4,1,0,18a83f43-dc84-4f8a-9580-681b19f571c4,18a83f43-dc84-4f8a-9580-681b19f571c4,1,0,01c588b0-d0ce-4978-b04d-084e6a00fcc7,01c588b0-d0ce-4978-b04d-084e6a00fcc7,1,0,a23642d9-8c4f-44a5-8865-bfb286e47c55,a23642d9-8c4f-44a5-8865-bfb286e47c55,1,0,7b37e038-dcef-41e1-b6e7-ed73c6958415,7b37e038-dcef-41e1-b6e7-ed73c6958415,1,0,24df2d14-5ebf-4ded-ba14-5daee7a0c536,24df2d14-5ebf-4ded-ba14-5daee7a0c536,1,0,13d6e2e9-b268-4c1b-8b8b-30c5296cfe4c,13d6e2e9-b268-4c1b-8b8b-30c5296cfe4c,1,0,03bb028a-ee8c-411e-8382-653046f803c6,03bb028a-ee8c-411e-8382-653046f803c6,1,0,c4fa80ca-32d6-4a44-9fe2-7ffd67e1cb30,c4fa80ca-32d6-4a44-9fe2-7ffd67e1cb30,1,0,8aa73dfd-41ac-4f79-bf73-cd2da51b1232,8aa73dfd-41ac-4f79-bf73-cd2da51b1232,1,0,38d5ed93-133b-44fe-827a-69a6cfc0461d,38d5ed93-133b-44fe-827a-69a6cfc0461d,1,0,cae8a6f2-bbe9-4b73-b839-9bf8e5e2818d,cae8a6f2-bbe9-4b73-b839-9bf8e5e2818d,1,0,0a79ee40-e6d6-4dbf-8378-98c2ec1e8ef9,0a79ee40-e6d6-4dbf-8378-98c2ec1e8ef9,1,0,5148d263-de26-4c92-b090-ae59f42dfb05,5148d263-de26-4c92-b090-ae59f42dfb05,1,0,dbefe81f-85cf-4d84-9600-b359598c2543,dbefe81f-85cf-4d84-9600-b359598c2543,1,0,1a624a06-93b8-4d1f-8c14-2061e1e7927c,1a624a06-93b8-4d1f-8c14-2061e1e7927c,1,0,4ad54ca8-8e4a-4a35-9537-0395851fcdfb,4ad54ca8-8e4a-4a35-9537-0395851fcdfb,1,0,3e427c09-79ed-45f7-b4c9-d9aa7ccc01b2,3e427c09-79ed-45f7-b4c9-d9aa7ccc01b2,1,0,1a4dd1f5-c2d6-4e06-b428-ab7870810bf3,1a4dd1f5-c2d6-4e06-b428-ab7870810bf3,1,0,d5967e0f-03cd-4190-a702-7e9290eae1eb,d5967e0f-03cd-4190-a702-7e9290eae1eb,1,0,78fdbce8-8479-4edd-89c0-1bbaf8ffd482,78fdbce8-8479-4edd-89c0-1bbaf8ffd482,1,0,8eb18de5-8283-4d0c-bb11-b882e78181d5,8eb18de5-8283-4d0c-bb11-b882e78181d5,1,0,27b27cc5-d1ad-4a2a-bcf4-ec2ebb3eba43,27b27cc5-d1ad-4a2a-bcf4-ec2ebb3eba43,1,0,7059b117-714c-4710-aebe-76f88c4d41d5,7059b117-714c-4710-aebe-76f88c4d41d5,1,0,ea050453-4947-40dc-aa2a-503ddd1a235a,ea050453-4947-40dc-aa2a-503ddd1a235a,1,0,37d0e6d4-702e-46f5-ae87-4d393fa0c701,37d0e6d4-702e-46f5-ae87-4d393fa0c701,1,0,1e963c1e-f914-46e1-81d3-90d126fc6f8d,1e963c1e-f914-46e1-81d3-90d126fc6f8d,1,0,3a62d88e-9298-42c0-bd87-c749ecd01d19,3a62d88e-9298-42c0-bd87-c749ecd01d19,1,0,abbf064e-c6ea-4712-930b-a9fef42e0ee1,abbf064e-c6ea-4712-930b-a9fef42e0ee1,1,0,fc13dd80-ce44-4ed1-a9d7-dae44602b954,fc13dd80-ce44-4ed1-a9d7-dae44602b954,1,0,a3fe224e-c3ef-4e30-90e4-c4ed5eb11824,a3fe224e-c3ef-4e30-90e4-c4ed5eb11824,1,0,433b23a1-a863-4775-b2f2-1384e8f3cbbb,433b23a1-a863-4775-b2f2-1384e8f3cbbb,1,0,a1677c47-b9a4-427a-972d-9bb2293445b6,a1677c47-b9a4-427a-972d-9bb2293445b6,1,0,e4a328c0-e73b-465d-ae36-38e5a71690fa,e4a328c0-e73b-465d-ae36-38e5a71690fa,1,0,bf66612b-aec4-414b-bee6-9bcab145c7cc,bf66612b-aec4-414b-bee6-9bcab145c7cc,1,0,811f356f-554a-4a63-90b6-dedb5fec7c05,811f356f-554a-4a63-90b6-dedb5fec7c05,1,0,85bebd81-a355-4010-889b-cff6f72dafcb,85bebd81-a355-4010-889b-cff6f72dafcb,1,0,49521f36-fd1b-47dd-81cc-48b6fb651e22,49521f36-fd1b-47dd-81cc-48b6fb651e22,1,0,1491cc2a-b3be-4bcc-a181-ce68d4b5d4cb,1491cc2a-b3be-4bcc-a181-ce68d4b5d4cb,1,0,bc946e21-53bb-4332-8c63-7b0aa78826eb,bc946e21-53bb-4332-8c63-7b0aa78826eb,1,0,4be2bdad-9a43-4593-acbc-a02e9144a89f,4be2bdad-9a43-4593-acbc-a02e9144a89f,1,0,64a86d5d-f925-45ee-82da-76df1cc20729,64a86d5d-f925-45ee-82da-76df1cc20729,1,0,eb4455f2-a5a0-44fb-8302-7312bc32df66,eb4455f2-a5a0-44fb-8302-7312bc32df66,1,0,cd6d2ab5-8e5c-4db3-8c8c-0526046a9b68,cd6d2ab5-8e5c-4db3-8c8c-0526046a9b68,1,0,9f20e59e-7db8-466f-b965-7045fc3f1489,9f20e59e-7db8-466f-b965-7045fc3f1489,1,0,cb057756-d3f7-4c50-a9d0-bac9ca2abd46,cb057756-d3f7-4c50-a9d0-bac9ca2abd46,1,0,89ac3d39-1915-4e67-a4e4-5a67a155cb75,89ac3d39-1915-4e67-a4e4-5a67a155cb75,1,0,d27b637d-5a51-49ff-bf73-343891534586,d27b637d-5a51-49ff-bf73-343891534586,1,0,b5a073a2-54e2-47c9-b533-f75fd2c9f343,b5a073a2-54e2-47c9-b533-f75fd2c9f343,1,0,0c8571be-f9b6-4292-add9-980cfe7fa2ec,0c8571be-f9b6-4292-add9-980cfe7fa2ec,1,0,989b8ccd-bc05-48c1-9969-b3733028b65f,989b8ccd-bc05-48c1-9969-b3733028b65f,1,0,6c70b13d-f9d0-459f-8d38-c01c11f356f1,6c70b13d-f9d0-459f-8d38-c01c11f356f1,1,0,45ca19df-90f3-4143-a659-bc0cb97efee9,45ca19df-90f3-4143-a659-bc0cb97efee9,1,0,bbaed1bd-0eb7-4f2b-b844-ab79c1d0a091,bbaed1bd-0eb7-4f2b-b844-ab79c1d0a091,1,0,2e7fbea4-57ac-4633-bb39-8725e57bc7ba,2e7fbea4-57ac-4633-bb39-8725e57bc7ba,1,0,83ae9b22-20ff-4e94-9282-19daf2274328,83ae9b22-20ff-4e94-9282-19daf2274328,1,0,dcad5d84-6643-4f0b-9e6e-73fe343db4a7,dcad5d84-6643-4f0b-9e6e-73fe343db4a7,1,0,e1ca1374-6dad-46d3-bb72-b67f3e6b1809,e1ca1374-6dad-46d3-bb72-b67f3e6b1809,1,0,a92b2b70-7e69-49d1-b921-c9d1b0718f94,a92b2b70-7e69-49d1-b921-c9d1b0718f94,1,0,d57a3300-0f9f-4fe5-b627-01c96b723053,d57a3300-0f9f-4fe5-b627-01c96b723053,1,0,19f690a3-d27b-43c1-94b7-585fc628da05,19f690a3-d27b-43c1-94b7-585fc628da05,1,0,d375fac5-098c-42b5-a0bd-9a4ae7516ada,d375fac5-098c-42b5-a0bd-9a4ae7516ada,1,0,29034f3e-d2eb-44e0-ac85-f2ffaf14eb90,29034f3e-d2eb-44e0-ac85-f2ffaf14eb90,1,0,ce65563d-03dc-46d8-96d4-c2d4ae2a2960,ce65563d-03dc-46d8-96d4-c2d4ae2a2960,1,0,5079f17e-dfd6-43f4-83fa-6ac408e5bd3b,5079f17e-dfd6-43f4-83fa-6ac408e5bd3b,1,0,7a4346c3-f1aa-4ce0-886e-76cd9abf563c,7a4346c3-f1aa-4ce0-886e-76cd9abf563c,1,0,cf783265-a4cb-436f-963a-1ff8220ae246,cf783265-a4cb-436f-963a-1ff8220ae246,1,0,3560f949-48f9-4fca-9fe2-81efc1ec0eee,3560f949-48f9-4fca-9fe2-81efc1ec0eee,1,0,662078f0-b75d-4c44-896f-7b7f74fd1ed4,662078f0-b75d-4c44-896f-7b7f74fd1ed4,1,0,4fa11304-fbd4-4c90-909d-5024283a6868,4fa11304-fbd4-4c90-909d-5024283a6868,1,0,207290c2-5221-48ad-99aa-bb0f7955df3f,207290c2-5221-48ad-99aa-bb0f7955df3f,1,0,162137ef-dea2-4ace-9e67-897dad0e7c3d,162137ef-dea2-4ace-9e67-897dad0e7c3d,1,0,d91a016e-cca9-4976-9c53-2c96fa95cf1a,d91a016e-cca9-4976-9c53-2c96fa95cf1a,1,0,012fb2f1-1c15-4800-8968-78a90c2a1348,012fb2f1-1c15-4800-8968-78a90c2a1348,1,0,a29a36aa-3c90-4be9-8ffc-20237721d1d0,a29a36aa-3c90-4be9-8ffc-20237721d1d0,1,0,aec8f9e6-d177-45f5-ba55-2d662428c2ae,aec8f9e6-d177-45f5-ba55-2d662428c2ae,1,0,b0bf8af5-d824-459c-bc40-17495406af3c,b0bf8af5-d824-459c-bc40-17495406af3c,1,0,7dfdd08b-7cd9-480c-829d-97f5e7152eec,7dfdd08b-7cd9-480c-829d-97f5e7152eec,1,0,64752b64-80ae-4537-986a-d61423dc546b,64752b64-80ae-4537-986a-d61423dc546b,1,0,2c37e123-ea35-4501-93e1-2fa295444bec,2c37e123-ea35-4501-93e1-2fa295444bec,1,0,c8bd3ac8-3b49-46bb-aadd-7270ad2868fc,c8bd3ac8-3b49-46bb-aadd-7270ad2868fc,1,0,a997a430-3ea8-4fde-9f53-7b507a04c215,a997a430-3ea8-4fde-9f53-7b507a04c215,1,0,f648e19d-026b-4fa7-8e70-1866b27b94f8,f648e19d-026b-4fa7-8e70-1866b27b94f8,1,0,d32081fc-47d3-4e66-837e-705c94ba8ca8,d32081fc-47d3-4e66-837e-705c94ba8ca8,1,0,69c207c2-7699-4467-b127-286ecd6d0f29,69c207c2-7699-4467-b127-286ecd6d0f29,1,0,e33df42d-4c64-4475-8294-6b05ecdb4e02,e33df42d-4c64-4475-8294-6b05ecdb4e02,1,0,6094a0ed-2051-4649-ad75-dfeb389d3cbb,6094a0ed-2051-4649-ad75-dfeb389d3cbb,1,0,6944a7e2-b9a1-492f-a6f2-9bf31d97ec78,6944a7e2-b9a1-492f-a6f2-9bf31d97ec78,1,0,f3750ea4-5f9e-4ab3-9495-3f182ecff407,f3750ea4-5f9e-4ab3-9495-3f182ecff407,1,0,14002d51-87d4-4647-92ef-a9b1935cb666,14002d51-87d4-4647-92ef-a9b1935cb666,1,0,e941a39d-1f3c-4e6e-af17-75f92a15dd40,e941a39d-1f3c-4e6e-af17-75f92a15dd40,1,0,d9bbedcb-4872-4183-83c2-6c2aae9634b0,d9bbedcb-4872-4183-83c2-6c2aae9634b0,1,0,72c695c3-66f6-4aa8-8a39-737ec6967a1d,72c695c3-66f6-4aa8-8a39-737ec6967a1d,1,0,2beef1e0-7a59-407e-b454-ee2ec38ca4b3,2beef1e0-7a59-407e-b454-ee2ec38ca4b3,1,0,b57a1d6f-8375-4d57-a2c1-f53e25318ddb,b57a1d6f-8375-4d57-a2c1-f53e25318ddb,1,0,d5d11480-d5c7-4569-80c1-f872655ff084,d5d11480-d5c7-4569-80c1-f872655ff084,1,0,b1e45d36-08e9-430e-976b-03e6e3320c6a,b1e45d36-08e9-430e-976b-03e6e3320c6a,1,0,b5384eb7-40e4-4437-b96b-eab9b7b5b8f2,b5384eb7-40e4-4437-b96b-eab9b7b5b8f2,1,0,8e21374f-5a65-406c-856d-2040607da4bc,8e21374f-5a65-406c-856d-2040607da4bc,1,0,1b63cbbb-77b1-4e78-a4c7-ddea8ea7294d,1b63cbbb-77b1-4e78-a4c7-ddea8ea7294d,1,0,3e5f5167-8978-4191-b0f6-6a262b848b95,3e5f5167-8978-4191-b0f6-6a262b848b95,1,0,ae3aef9e-df3b-4ebc-912d-2bc581063745,ae3aef9e-df3b-4ebc-912d-2bc581063745,1,0,5c4ecf15-b92d-4610-b2bb-f2331c5c7528,5c4ecf15-b92d-4610-b2bb-f2331c5c7528,1,0,a8c09e65-6e10-4772-b264-6ead83d52fe3,a8c09e65-6e10-4772-b264-6ead83d52fe3,1,0,256618cc-0956-4cda-9691-e4ced68a791f,256618cc-0956-4cda-9691-e4ced68a791f,1,0,e20593fd-b3e3-41d2-8c8d-97b5d6148fa4,e20593fd-b3e3-41d2-8c8d-97b5d6148fa4,1,0,4b9771a7-b924-4e61-8468-4633e3c54706,4b9771a7-b924-4e61-8468-4633e3c54706,1,0,bc846fc8-3c67-45f8-9c5c-69bf1190baf9,bc846fc8-3c67-45f8-9c5c-69bf1190baf9,1,0,667de710-cee5-4a97-8434-641d199f3b68,667de710-cee5-4a97-8434-641d199f3b68,1,0,e9a2320b-71a1-4974-8b5a-1990062ec7df,e9a2320b-71a1-4974-8b5a-1990062ec7df,1,0,2e459a7c-c448-4db4-ae21-e59646527030,2e459a7c-c448-4db4-ae21-e59646527030,1,0,891194d9-9f02-4b22-89cd-941181c83ecb,891194d9-9f02-4b22-89cd-941181c83ecb,1,0,a4d3b738-9ae3-46a9-ac21-7ac3d081c727,a4d3b738-9ae3-46a9-ac21-7ac3d081c727,1,0,f6e85eeb-d81b-4526-9a33-ab77bd447236,f6e85eeb-d81b-4526-9a33-ab77bd447236,1,0,470e37fe-d149-4007-b397-12fc84f93041,470e37fe-d149-4007-b397-12fc84f93041,1,0,f8d9068d-8a4e-4b23-b5ca-5b9ddce1f60f,f8d9068d-8a4e-4b23-b5ca-5b9ddce1f60f,1,0,7175cfa0-885c-4807-98ec-af255dcd55d9,7175cfa0-885c-4807-98ec-af255dcd55d9,1,0,1773ff66-ebe4-46e1-b505-d07d87c7fe3e,1773ff66-ebe4-46e1-b505-d07d87c7fe3e,1,0,f5b66759-8102-4cba-a3fd-ee96db5bc809,f5b66759-8102-4cba-a3fd-ee96db5bc809,1,0,6c205eae-9113-46c1-a245-25d29173646e,6c205eae-9113-46c1-a245-25d29173646e,1,0,4cc4aa90-49fb-4602-9f9c-d4d47d223988,4cc4aa90-49fb-4602-9f9c-d4d47d223988,1,0,e0227e4b-be22-4614-8980-5d573fae705d,e0227e4b-be22-4614-8980-5d573fae705d,1,0,66ef1631-277b-4c22-99d7-1434b4dbbb3f,66ef1631-277b-4c22-99d7-1434b4dbbb3f,1,0,7cfa5a37-b9f8-43e4-ae33-e3a7251dd052,7cfa5a37-b9f8-43e4-ae33-e3a7251dd052,1,0,2f8a5b9d-ab86-492b-85d1-5a28535b2ebc,2f8a5b9d-ab86-492b-85d1-5a28535b2ebc,1,0,898535ff-50cd-464a-aadc-5e4f9de15b04,898535ff-50cd-464a-aadc-5e4f9de15b04,1,0,6a25c089-38e8-49ae-b20a-d5f91bb5e1fd,6a25c089-38e8-49ae-b20a-d5f91bb5e1fd,1,0,737f6f1b-9ffc-4916-b378-7321eab1f886,737f6f1b-9ffc-4916-b378-7321eab1f886,1,0,01dedf5b-2cce-4d24-81ea-2e3af82f5794,01dedf5b-2cce-4d24-81ea-2e3af82f5794,1,0,385e209d-65aa-43b1-8591-f92544882740,385e209d-65aa-43b1-8591-f92544882740,1,0,8381bc76-0e0f-4196-9911-ec05730cb1c9,8381bc76-0e0f-4196-9911-ec05730cb1c9,1,0,c224e520-7204-4f4a-aac9-b6221ea9ce44,c224e520-7204-4f4a-aac9-b6221ea9ce44,1,0,771a1900-46be-49fe-a02d-584780de8363,771a1900-46be-49fe-a02d-584780de8363,1,0,f81b1f2d-6fde-4861-8fee-1dbe6acf3985,f81b1f2d-6fde-4861-8fee-1dbe6acf3985,1,0,b62eecf6-6ee3-4a70-a4d6-3f064ae35c43,b62eecf6-6ee3-4a70-a4d6-3f064ae35c43,1,0,9bf2525c-e8fc-44e6-ac14-7df3208dbb0f,9bf2525c-e8fc-44e6-ac14-7df3208dbb0f,1,0,827720ed-a9ec-4573-a91b-71d7a3e02c2a,827720ed-a9ec-4573-a91b-71d7a3e02c2a,1,0,a2faa3f8-5064-4fbf-a90e-26d15c021cd3,a2faa3f8-5064-4fbf-a90e-26d15c021cd3,1,0,527ea8ca-e723-454a-8e9e-f2e7a38e62ee,527ea8ca-e723-454a-8e9e-f2e7a38e62ee,1,0,ef257b20-da10-4cda-8b9d-7de2d68a2f71,ef257b20-da10-4cda-8b9d-7de2d68a2f71,1,0,de0d41b7-acc0-4ebc-8933-d6b5ad351860,de0d41b7-acc0-4ebc-8933-d6b5ad351860,1,0,9ef5dd5e-1f26-4187-90a0-a3ac7aaabc1d,9ef5dd5e-1f26-4187-90a0-a3ac7aaabc1d,1,0,1a354069-07ea-40e0-bbac-e1b6232750c2,1a354069-07ea-40e0-bbac-e1b6232750c2,1,0,df31548b-0b8e-412b-999a-761970ae3c23,df31548b-0b8e-412b-999a-761970ae3c23,1,0,05135747-43e7-4b61-bc30-57b3289ea923,05135747-43e7-4b61-bc30-57b3289ea923,1,0,6d63728d-3384-4131-b890-1b82d14a04b7,6d63728d-3384-4131-b890-1b82d14a04b7,1,0,f4554046-493e-4960-94df-0a8b9d02f474,f4554046-493e-4960-94df-0a8b9d02f474,1,0,06abad33-2d69-4e8b-a16c-8aa0d4422d5a,06abad33-2d69-4e8b-a16c-8aa0d4422d5a,1,0,9222a6c0-b785-4811-bfb6-44ac44a55925,9222a6c0-b785-4811-bfb6-44ac44a55925,1,0,ea84021d-2431-44ad-a446-f1fb979c9e96,ea84021d-2431-44ad-a446-f1fb979c9e96,1,0,d86acdeb-fa70-4d1c-bd0c-1b4ea30c03dd,d86acdeb-fa70-4d1c-bd0c-1b4ea30c03dd,1,0,8fa21575-177f-4b7c-94b5-dfeefe737cb4,8fa21575-177f-4b7c-94b5-dfeefe737cb4,1,0,4a749e8c-cb35-4bc4-9b31-fb5bc0eab474,4a749e8c-cb35-4bc4-9b31-fb5bc0eab474,1,0,da4a0c05-2285-434b-b7f8-83b2a0d7f23d,da4a0c05-2285-434b-b7f8-83b2a0d7f23d,1,0,8afa9a0e-04c1-4cac-82bb-6767cc0594d9,8afa9a0e-04c1-4cac-82bb-6767cc0594d9,1,0,ecbe625a-55eb-437a-8dee-33fb034d4c0d,ecbe625a-55eb-437a-8dee-33fb034d4c0d,1,0,5d4cefac-5dc4-4d73-8b4b-900a8464fbb2,5d4cefac-5dc4-4d73-8b4b-900a8464fbb2,1,0,84796b00-79db-42ba-94d0-5bf543e09cd6,84796b00-79db-42ba-94d0-5bf543e09cd6,1,0,948b10b3-0d7c-4dca-8816-75eb86e7881b,948b10b3-0d7c-4dca-8816-75eb86e7881b,1,0,9de91b5a-98e4-414b-b650-b669b0159b49,9de91b5a-98e4-414b-b650-b669b0159b49,1,0,840dc727-288a-4bf2-8b1a-47629d28229c,840dc727-288a-4bf2-8b1a-47629d28229c,1,0,314ac8ca-8845-40c2-b844-91beb05fb601,314ac8ca-8845-40c2-b844-91beb05fb601,1,0,3de3948d-40ff-4e0d-8445-9bf49c916161,3de3948d-40ff-4e0d-8445-9bf49c916161,1,0,37ae1946-9436-47ef-8b8c-17ed0a24971c,37ae1946-9436-47ef-8b8c-17ed0a24971c,1,0,d844d861-fbe9-4391-89e3-00e505b33b33,d844d861-fbe9-4391-89e3-00e505b33b33,1,0,c0688817-fd73-4ead-b9dd-ec966780a2c2,c0688817-fd73-4ead-b9dd-ec966780a2c2,1,0,b1fbfbfe-766f-4018-9491-507748193808,b1fbfbfe-766f-4018-9491-507748193808,1,0,e55dfadb-8e12-4808-ad90-e891a4644548,e55dfadb-8e12-4808-ad90-e891a4644548,1,0,a792b3dc-ac80-492b-bd94-83eb0438ba9f,a792b3dc-ac80-492b-bd94-83eb0438ba9f,1,0,73a093ea-1927-483b-b6f5-8f0cbd253753,73a093ea-1927-483b-b6f5-8f0cbd253753,1,0,345f04c0-0274-4e79-b523-f1fa3cf0d92a,345f04c0-0274-4e79-b523-f1fa3cf0d92a,1,0,f3a14787-de1b-4b65-8cb1-bc33a785821c,f3a14787-de1b-4b65-8cb1-bc33a785821c,1,0,b9ba3ce3-9059-4135-9d31-725f01907431,b9ba3ce3-9059-4135-9d31-725f01907431,1,0,4d2b3767-7c96-44a6-bb1b-ab74b103b90e,4d2b3767-7c96-44a6-bb1b-ab74b103b90e,1,0,fc9fc58f-c888-41f0-9f57-70748b21706e,fc9fc58f-c888-41f0-9f57-70748b21706e,1,0,fc761833-aa85-4c6d-a36c-d1ed060e3bb1,fc761833-aa85-4c6d-a36c-d1ed060e3bb1,1,0,f0ba2ff2-b353-4f84-8e45-23e47ee6c1b6,f0ba2ff2-b353-4f84-8e45-23e47ee6c1b6,1,0,bb8bade2-5c1b-49a6-b66f-79a3ebff86f7,bb8bade2-5c1b-49a6-b66f-79a3ebff86f7,1,0,33596560-3d45-4d3e-b6ec-1c22162110ad,33596560-3d45-4d3e-b6ec-1c22162110ad,1,0,d3e82a06-daae-4f4d-b3f8-45a406e31664,d3e82a06-daae-4f4d-b3f8-45a406e31664,1,0,af76c3c9-d8dc-4156-9e10-80ee02fcf4fe,af76c3c9-d8dc-4156-9e10-80ee02fcf4fe,1,0,ac6a184d-1247-4b54-a023-f0d16daa5fe9,ac6a184d-1247-4b54-a023-f0d16daa5fe9,1,0,f9af5fe6-0b4f-4d48-92a4-1f2a29972155,f9af5fe6-0b4f-4d48-92a4-1f2a29972155,1,0,3ca1682d-5ff5-4b2b-96c2-54d2dd5297a9,3ca1682d-5ff5-4b2b-96c2-54d2dd5297a9,1,0,a687d346-73cf-4aea-a4d0-f29824f0f6f1,a687d346-73cf-4aea-a4d0-f29824f0f6f1,1,0,f51fda72-56d9-4b45-a775-a0e1dfbf3a27,f51fda72-56d9-4b45-a775-a0e1dfbf3a27,1,0,8bf73614-81a4-4702-88b9-3c6f2594d204,8bf73614-81a4-4702-88b9-3c6f2594d204,1,0,b8d4410b-f626-41b8-87c8-67102256bae2,b8d4410b-f626-41b8-87c8-67102256bae2,1,0,484eeb5f-12af-4139-a081-4dcac067a712,484eeb5f-12af-4139-a081-4dcac067a712,1,0,44d8556f-5abf-4b8a-bbb1-637642e0ab4e,44d8556f-5abf-4b8a-bbb1-637642e0ab4e,1,0,d8f7ef22-57b4-468a-be46-d5cda556c254,d8f7ef22-57b4-468a-be46-d5cda556c254,1,0,ec61075e-fbcb-494a-b790-81548a212d2b,ec61075e-fbcb-494a-b790-81548a212d2b,1,0,2f3bdc3c-4c5d-4fcb-85bb-932fe1747d98,2f3bdc3c-4c5d-4fcb-85bb-932fe1747d98,1,0,0c444045-302b-4dbd-a9a3-81fd40004948,0c444045-302b-4dbd-a9a3-81fd40004948,1,0,16099d54-e84f-47c5-aaf3-f8ced3cba5e0,16099d54-e84f-47c5-aaf3-f8ced3cba5e0,1,0,1528b799-1c0f-4244-85e8-e738b827934a,1528b799-1c0f-4244-85e8-e738b827934a,1,0,45d79e4d-8c2a-432b-abb8-fb9046abea40,45d79e4d-8c2a-432b-abb8-fb9046abea40,1,0,8f4d2fa9-c6ed-4f85-b3ef-f9214468ffc4,8f4d2fa9-c6ed-4f85-b3ef-f9214468ffc4,1,0,cb73c8c2-3b09-42e9-ac26-1bd51854efb6,cb73c8c2-3b09-42e9-ac26-1bd51854efb6,1,0,6da034af-0481-4a3c-aff9-c50ced6f21d4,6da034af-0481-4a3c-aff9-c50ced6f21d4,1,0,d07016c8-7d97-42cd-865b-85b49075adfb,d07016c8-7d97-42cd-865b-85b49075adfb,1,0,491a2337-1bf9-45c1-8ae6-95605ef41992,491a2337-1bf9-45c1-8ae6-95605ef41992,1,0,9202335d-50bb-4282-9438-24c7fb9cf637,9202335d-50bb-4282-9438-24c7fb9cf637,1,0,a62906e5-27f8-4e72-8769-9a3eed6997d7,a62906e5-27f8-4e72-8769-9a3eed6997d7,1,0,6c5d0ac3-6086-434c-812b-1c1158ecc574,6c5d0ac3-6086-434c-812b-1c1158ecc574,1,0,783536d7-c0db-44c9-96e8-58b57804d7c8,783536d7-c0db-44c9-96e8-58b57804d7c8,1,0,a8295435-c2c4-4aff-874b-7412556aa76d,a8295435-c2c4-4aff-874b-7412556aa76d,1,0,f6c4e24b-172b-4ba3-8e3e-988306ade660,f6c4e24b-172b-4ba3-8e3e-988306ade660,1,0,9baab24c-a5a3-46f4-ad17-a28d4a49f851,9baab24c-a5a3-46f4-ad17-a28d4a49f851,1,0,d1952319-0e42-4684-a386-fbe7c24526c2,d1952319-0e42-4684-a386-fbe7c24526c2,1,0,01cd59fc-8577-4b3c-9d69-6db75e81e7c4,01cd59fc-8577-4b3c-9d69-6db75e81e7c4,1,0,83b47a9d-d44b-4c40-becd-df74f9cb2e91,83b47a9d-d44b-4c40-becd-df74f9cb2e91,1,0,d03e636e-ff88-4e96-bf3c-d795d10cbcb0,d03e636e-ff88-4e96-bf3c-d795d10cbcb0,1,0,86e2a2eb-160f-4e93-a449-b2f726286d1b,86e2a2eb-160f-4e93-a449-b2f726286d1b,1,0,8e6e1f24-83bf-42c2-9eda-b3874c7910c3,8e6e1f24-83bf-42c2-9eda-b3874c7910c3,1,0,364184c2-ec71-44be-b40c-ba719b4ab0e1,364184c2-ec71-44be-b40c-ba719b4ab0e1,1,0,7ef46c54-ec0c-4211-a750-e5949956b593,7ef46c54-ec0c-4211-a750-e5949956b593,1,0,04823681-875e-459a-b3cf-051c89527f38,04823681-875e-459a-b3cf-051c89527f38,1,0,8e115a0c-a17c-4d7e-bd2c-305fb53d09ca,8e115a0c-a17c-4d7e-bd2c-305fb53d09ca,1,0,38265f08-3301-40d1-b630-a319c983e826,38265f08-3301-40d1-b630-a319c983e826,1,0,5175c496-bac7-4c57-9628-793b727aecd0,5175c496-bac7-4c57-9628-793b727aecd0,1,0,1453309e-77d0-444d-ac3f-fd7c2cb65c0c,1453309e-77d0-444d-ac3f-fd7c2cb65c0c,1,0,fc42df4a-93f0-461f-acfe-fea09158030f,fc42df4a-93f0-461f-acfe-fea09158030f,1,0,9f0a7909-0b97-48a7-964f-a52cb3c19c4e,9f0a7909-0b97-48a7-964f-a52cb3c19c4e,1,0,6d002aef-00c9-4069-80df-153151218831,6d002aef-00c9-4069-80df-153151218831,1,0,4fec3a6c-5a99-4763-aa07-d5de8712559e,4fec3a6c-5a99-4763-aa07-d5de8712559e,1,0,968a1202-d271-43e0-bfd4-d38e49ceadd4,968a1202-d271-43e0-bfd4-d38e49ceadd4,1,0,c80e2ef7-93b6-4cef-806a-2dfcf2fd80e6,c80e2ef7-93b6-4cef-806a-2dfcf2fd80e6,1,0,b3b4fbf1-cbf0-4ee2-a490-4d657693479b,b3b4fbf1-cbf0-4ee2-a490-4d657693479b,1,0,ea61e442-273e-4ce4-a806-8090893729ba,ea61e442-273e-4ce4-a806-8090893729ba,1,0,e7100f2b-d169-4635-ab87-7a2225ff12ee,e7100f2b-d169-4635-ab87-7a2225ff12ee,1,0,1e2d790c-0076-413a-b5fb-f25c01ab6ad5,1e2d790c-0076-413a-b5fb-f25c01ab6ad5,1,0,0dcc537b-76b3-4e73-b060-6cbdcf6345db,0dcc537b-76b3-4e73-b060-6cbdcf6345db,1,0,ae662b53-e11e-4b59-be52-b9d4ab00c4a4,ae662b53-e11e-4b59-be52-b9d4ab00c4a4,1,0,ce55df94-71e4-46ac-9b3b-bdae5d336b0a,ce55df94-71e4-46ac-9b3b-bdae5d336b0a,1,0,7601fa7e-079a-4347-abea-e161b2d00783,7601fa7e-079a-4347-abea-e161b2d00783,1,0,ee84cb40-f82d-4558-91be-229d68ad9f4a,ee84cb40-f82d-4558-91be-229d68ad9f4a,1,0,101a7eff-9556-4165-879a-a7c8a852e236,101a7eff-9556-4165-879a-a7c8a852e236,1,0,01775932-3603-4efc-9235-abdb97490dea,01775932-3603-4efc-9235-abdb97490dea,1,0,7637844b-4059-4f8a-8436-b4f4e8cb4f74,7637844b-4059-4f8a-8436-b4f4e8cb4f74,1,0,b6bb4cbe-b6fa-4d28-b372-0b959951ad4d,b6bb4cbe-b6fa-4d28-b372-0b959951ad4d,1,0,0ee5b788-61dc-464b-86da-f985df7704b6,0ee5b788-61dc-464b-86da-f985df7704b6,1,0,2375c6a8-9799-4b7c-a48d-091a90c67693,2375c6a8-9799-4b7c-a48d-091a90c67693,1,0,3d3c3360-4502-4ad4-bbe9-35d4ba9b54b3,3d3c3360-4502-4ad4-bbe9-35d4ba9b54b3,1,0,9b0671c6-6e92-42e6-9cf4-13d4be11f27d,9b0671c6-6e92-42e6-9cf4-13d4be11f27d,1,0,63c6522f-be04-422a-b4f4-0f55f58b09a8,63c6522f-be04-422a-b4f4-0f55f58b09a8,1,0,be919dc1-a377-43e1-82e6-ce946cabdd55,be919dc1-a377-43e1-82e6-ce946cabdd55,1,0,6b17a0fc-4d6f-4189-9067-c58a95f04dd7,6b17a0fc-4d6f-4189-9067-c58a95f04dd7,1,0,9ded532e-9e60-4895-a4c5-4ea6697aa83c,9ded532e-9e60-4895-a4c5-4ea6697aa83c,1,0,106c5159-ffc7-4059-b3e3-acf74326a44f,106c5159-ffc7-4059-b3e3-acf74326a44f,1,0,d39fd717-1a69-4fd3-889e-4fa9abefea1c,d39fd717-1a69-4fd3-889e-4fa9abefea1c,1,0,5b85e6df-7493-4201-97ad-2aea14de6006,5b85e6df-7493-4201-97ad-2aea14de6006,1,0,061e6c0f-ba52-40ec-96ad-2eba3eee3097,061e6c0f-ba52-40ec-96ad-2eba3eee3097,1,0,d77e3c65-e9fd-4ba7-885f-a8a2f4c827d2,d77e3c65-e9fd-4ba7-885f-a8a2f4c827d2,1,0,4fb86bf3-02ad-4f0e-85a9-98be6c350a06,4fb86bf3-02ad-4f0e-85a9-98be6c350a06,1,0,4840753b-e2e1-4e67-b35f-2f5eab7754f5,4840753b-e2e1-4e67-b35f-2f5eab7754f5,1,0,4095c9e7-83ab-4db9-a2d0-a9f4ef9ee53e,4095c9e7-83ab-4db9-a2d0-a9f4ef9ee53e,1,0,6ffd9c17-d90b-4d19-b337-0fbc2c717557,6ffd9c17-d90b-4d19-b337-0fbc2c717557,1,0,9a11a6bd-0c13-4be2-9e34-b12b7554f3c9,9a11a6bd-0c13-4be2-9e34-b12b7554f3c9,1,0,3bb83275-7a0e-420f-8c6b-028038f11a8c,3bb83275-7a0e-420f-8c6b-028038f11a8c,1,0,e1950a23-f6e7-48af-b78a-77aa61f08ece,e1950a23-f6e7-48af-b78a-77aa61f08ece,1,0,1cc3d7c4-9178-4a40-86ea-2bbc1f5aa69f,1cc3d7c4-9178-4a40-86ea-2bbc1f5aa69f,1,0,790735cf-f6e2-4b0d-bb16-c5b9ea95efae,790735cf-f6e2-4b0d-bb16-c5b9ea95efae,1,0,5d726fa3-bde0-4d97-a577-415857bbb5c1,5d726fa3-bde0-4d97-a577-415857bbb5c1,1,0,f63d0e2d-4685-4ac5-b22c-1b83e3ab955f,f63d0e2d-4685-4ac5-b22c-1b83e3ab955f,1,0,49068231-202c-4ac6-a39a-69207cb597dd,49068231-202c-4ac6-a39a-69207cb597dd,1,0,5a470575-e012-42ad-9ad7-53930a8e843f,5a470575-e012-42ad-9ad7-53930a8e843f,1,0,5872d4ed-6503-422d-bcf9-63a8df3e777d,5872d4ed-6503-422d-bcf9-63a8df3e777d,1,0,e21cda29-2579-485e-a207-20b76f719c80,e21cda29-2579-485e-a207-20b76f719c80,1,0,1b232a57-2833-42c6-b318-38dae2af1ab2,1b232a57-2833-42c6-b318-38dae2af1ab2,1,0,007ade8c-b102-408b-b877-b531e046560b,007ade8c-b102-408b-b877-b531e046560b,1,0,a8dfea6c-0c21-456d-96ab-f4bb5d579b13,a8dfea6c-0c21-456d-96ab-f4bb5d579b13,1,0,305f1ef1-4f9c-40a2-a978-3a4c0ecf75d4,305f1ef1-4f9c-40a2-a978-3a4c0ecf75d4,1,0,eb69c41a-392d-43bb-9b67-a0adcb651b1e,eb69c41a-392d-43bb-9b67-a0adcb651b1e,1,0,93b01c88-48a2-4753-b443-0e9892395a8f,93b01c88-48a2-4753-b443-0e9892395a8f,1,0,0b7f8e05-bb34-47cc-9775-04362e814316,0b7f8e05-bb34-47cc-9775-04362e814316,1,0,e71e0297-3709-4247-933e-18a6350cbf39,e71e0297-3709-4247-933e-18a6350cbf39,1,0,0b32e372-c6ad-4dda-acd1-8b5d58537d37,0b32e372-c6ad-4dda-acd1-8b5d58537d37,1,0,602dac6f-abe6-407a-92d3-7f1613e5dda6,602dac6f-abe6-407a-92d3-7f1613e5dda6,1,0,db03a88b-2804-45c2-9089-7ddb87ef2f18,db03a88b-2804-45c2-9089-7ddb87ef2f18,1,0,df6417d1-c722-4a87-a543-5d2c31795b20,df6417d1-c722-4a87-a543-5d2c31795b20,1,0,526a85c9-3a8d-4044-adb9-fd0689c70601,526a85c9-3a8d-4044-adb9-fd0689c70601,1,0,c4203772-580c-4db1-9bde-8925faa90688,c4203772-580c-4db1-9bde-8925faa90688,1,0,f64a91c4-f5cb-4e8e-8387-9f242ce6de44,f64a91c4-f5cb-4e8e-8387-9f242ce6de44,1,0,9ab0fe18-4dd7-4eed-958d-8537d4896d84,9ab0fe18-4dd7-4eed-958d-8537d4896d84,1,0,2278dc46-46ce-4d00-9289-4de1640782d7,2278dc46-46ce-4d00-9289-4de1640782d7,1,0,1f983a04-c2df-40bb-bee2-b326474d89f8,1f983a04-c2df-40bb-bee2-b326474d89f8,1,0,f03f1b68-e924-4c06-b0aa-8033a9a2f592,f03f1b68-e924-4c06-b0aa-8033a9a2f592,1,0,5e453d10-235d-4e53-86b1-20eed3247992,5e453d10-235d-4e53-86b1-20eed3247992,1,0,0eefb856-0fb4-4c3e-bb08-e88b03a44065,0eefb856-0fb4-4c3e-bb08-e88b03a44065,1,0,21ba8b9f-de97-40a1-8ea1-85a29e8e53ef,21ba8b9f-de97-40a1-8ea1-85a29e8e53ef,1,0,738228ad-c30a-42f4-a6ad-bde0edba6266,738228ad-c30a-42f4-a6ad-bde0edba6266,1,0,c08aea99-ee33-488c-9ba0-f8b24a6d1d04,c08aea99-ee33-488c-9ba0-f8b24a6d1d04,1,0,df8e8344-d7bc-4cf2-b498-88d3abb66c09,df8e8344-d7bc-4cf2-b498-88d3abb66c09,1,0,e6d13536-3021-45b2-a8e1-bdb0e0be850c,e6d13536-3021-45b2-a8e1-bdb0e0be850c,1,0,b49f538c-b2b2-4a1f-a6b4-a911033b1666,b49f538c-b2b2-4a1f-a6b4-a911033b1666,1,0,794e952b-6b03-4a1e-ad3f-453376bccf45,794e952b-6b03-4a1e-ad3f-453376bccf45,1,0,3e2a0713-e6ed-4d38-8036-72f7b62ca64a,3e2a0713-e6ed-4d38-8036-72f7b62ca64a,1,0,5cd997ba-f123-47b3-8cde-fbba45a4a11c,5cd997ba-f123-47b3-8cde-fbba45a4a11c,1,0,0d746247-c4f4-47a5-a373-45ec4023d3ef,0d746247-c4f4-47a5-a373-45ec4023d3ef,1,0,a25bcf4e-1a47-472b-9f93-f6ab45abf461,a25bcf4e-1a47-472b-9f93-f6ab45abf461,1,0,958b7dab-0aba-423f-ab81-b70f2b93a027,958b7dab-0aba-423f-ab81-b70f2b93a027,1,0,a17ec3be-2255-42af-a6ee-d3fb8bb00519,a17ec3be-2255-42af-a6ee-d3fb8bb00519,1,0,add0b22d-ff5a-41f7-88a1-ef34880e50c9,add0b22d-ff5a-41f7-88a1-ef34880e50c9,1,0,4b714d9c-26f4-46e8-ac79-471522b3853b,4b714d9c-26f4-46e8-ac79-471522b3853b,1,0,411489de-f907-4d60-a776-64bb0aa12a0e,411489de-f907-4d60-a776-64bb0aa12a0e,1,0,58d9ba60-a0c7-405d-a76e-0b0a796daaf3,58d9ba60-a0c7-405d-a76e-0b0a796daaf3,1,0,9c47670e-9eb9-49ec-876c-cd545aaa093c,9c47670e-9eb9-49ec-876c-cd545aaa093c,1,0,f57e74e6-75e8-4136-911e-86793036a077,f57e74e6-75e8-4136-911e-86793036a077,1,0,8492ee20-3f15-45d8-b70d-19b5cd6f1ae3,8492ee20-3f15-45d8-b70d-19b5cd6f1ae3,1,0,3ba8c378-ef3d-4646-90b3-6d8078aa623e,3ba8c378-ef3d-4646-90b3-6d8078aa623e,1,0,b96b2e45-8fb3-4d48-ab53-d3bbf6ef0284,b96b2e45-8fb3-4d48-ab53-d3bbf6ef0284,1,0,5ac38b5a-92e5-47eb-b956-24d9f010cb9f,5ac38b5a-92e5-47eb-b956-24d9f010cb9f,1,0,2dd7eb87-8130-425a-be13-85235508cde6,2dd7eb87-8130-425a-be13-85235508cde6,1,0,8a62c997-4fda-4464-90bd-ab719161949f,8a62c997-4fda-4464-90bd-ab719161949f,1,0,28af52dd-3144-428b-956d-b6f27863ec4a,28af52dd-3144-428b-956d-b6f27863ec4a,1,0,c34c330a-991a-4ec9-a0ad-73c04c6a6fc3,c34c330a-991a-4ec9-a0ad-73c04c6a6fc3,1,0,8ac94328-2300-4681-9c35-fd7e2f830310,8ac94328-2300-4681-9c35-fd7e2f830310,1,0,da0ee165-1917-466b-ac5c-16c28e2318bb,da0ee165-1917-466b-ac5c-16c28e2318bb,1,0,4868cb2e-0892-42bc-9de1-73cb8a15a96f,4868cb2e-0892-42bc-9de1-73cb8a15a96f,1,0,e8b80879-33b3-4c45-ad68-1acabcf91faf,e8b80879-33b3-4c45-ad68-1acabcf91faf,1,0,4a87fafc-7ca7-478e-bb31-358c2b85fa92,4a87fafc-7ca7-478e-bb31-358c2b85fa92,1,0,239601eb-e8de-4d58-a32a-01ee52f6e698,239601eb-e8de-4d58-a32a-01ee52f6e698,1,0,11370667-bec5-4a2d-8aa1-97f4d795718f,11370667-bec5-4a2d-8aa1-97f4d795718f,1,0,2032162d-fbb5-4e6a-be72-cda79869b9ff,2032162d-fbb5-4e6a-be72-cda79869b9ff,1,0,95a8e790-25ef-4ef3-a44a-f150bf1ceb1f,95a8e790-25ef-4ef3-a44a-f150bf1ceb1f,1,0,10543f9a-4e3f-427a-b36a-9c66709dd6fb,10543f9a-4e3f-427a-b36a-9c66709dd6fb,1,0,973967e5-1702-4fb8-ba36-70fd5b3b7e7c,973967e5-1702-4fb8-ba36-70fd5b3b7e7c,1,0,96ab5424-7be1-416d-b74d-d0c815726b1f,96ab5424-7be1-416d-b74d-d0c815726b1f,1,0,3714e794-ddef-4ad9-a933-6130bbc84545,3714e794-ddef-4ad9-a933-6130bbc84545,1,0,282b089c-7411-40d6-9a0a-ceaf6abb5586,282b089c-7411-40d6-9a0a-ceaf6abb5586,1,0,678188aa-76e7-49bc-a4be-1c55ccd625b1,678188aa-76e7-49bc-a4be-1c55ccd625b1,1,0,6c27eece-2f8e-48eb-b9c7-f9c414ee15bd,6c27eece-2f8e-48eb-b9c7-f9c414ee15bd,1,0,b3415b4a-d8de-4536-aa4b-82e75fd986ee,b3415b4a-d8de-4536-aa4b-82e75fd986ee,1,0,acc996ab-672a-4602-b7ad-8eee83557e61,acc996ab-672a-4602-b7ad-8eee83557e61,1,0,bf9e9c2f-e5dc-4f82-8e9a-7f35e3ad9a0b,bf9e9c2f-e5dc-4f82-8e9a-7f35e3ad9a0b,1,0,371361b6-15fd-4e62-9f60-cc8ee3fbacf0,371361b6-15fd-4e62-9f60-cc8ee3fbacf0,1,0,97745768-ed35-44f1-beba-abb8b28a29ae,97745768-ed35-44f1-beba-abb8b28a29ae,1,0,69364942-bcd1-4b06-9b57-fa59b4e7c552,69364942-bcd1-4b06-9b57-fa59b4e7c552,1,0,ab201c5f-4134-42cf-a528-c1c4df02f2d7,ab201c5f-4134-42cf-a528-c1c4df02f2d7,1,0,303fb7b5-6a23-40ea-ae12-b54f4ebae026,303fb7b5-6a23-40ea-ae12-b54f4ebae026,1,0,634cd26b-78f1-4446-8aad-b96ed16e5329,634cd26b-78f1-4446-8aad-b96ed16e5329,1,0,d8e62f1a-92ca-4971-9609-e79da798c083,d8e62f1a-92ca-4971-9609-e79da798c083,1,0,61892a62-9381-401d-af31-9073ef2509fb,61892a62-9381-401d-af31-9073ef2509fb,1,0,eb74ebf0-a9c6-4c4c-b279-5a46f40ea0d3,eb74ebf0-a9c6-4c4c-b279-5a46f40ea0d3,1,0,d5e1806b-9827-40ab-9cfa-23c22456d137,d5e1806b-9827-40ab-9cfa-23c22456d137,1,0,b57b186a-ec1e-46a2-87ae-6ba27793ebf6,b57b186a-ec1e-46a2-87ae-6ba27793ebf6,1,0,d24170d7-5477-4ec8-acd2-0de8bd2067d6,d24170d7-5477-4ec8-acd2-0de8bd2067d6,1,0,f047da82-7574-4da4-b54e-480195280a11,f047da82-7574-4da4-b54e-480195280a11,1,0,a469f018-da26-485f-87c3-f580321a34f0,a469f018-da26-485f-87c3-f580321a34f0,1,0,adcb0dca-d810-461e-8f45-1d3cd6ffad4d,adcb0dca-d810-461e-8f45-1d3cd6ffad4d,1,0,9e16edb6-d841-48fa-bfe1-f9aabdcf9e46,9e16edb6-d841-48fa-bfe1-f9aabdcf9e46,1,0,628de771-c19c-4474-989f-8fb6cd7756a2,628de771-c19c-4474-989f-8fb6cd7756a2,1,0,6b0ddefa-ee70-4b27-989f-e23c734ab943,6b0ddefa-ee70-4b27-989f-e23c734ab943,1,0,ee873280-28ea-41fb-af52-c10c2018cbe4,ee873280-28ea-41fb-af52-c10c2018cbe4,1,0,6789e57b-1293-442c-97d0-b8007367602e,6789e57b-1293-442c-97d0-b8007367602e,1,0,0f193c89-b664-448e-bed3-2147430367f7,0f193c89-b664-448e-bed3-2147430367f7,1,0,4c9b2506-75a8-47d3-a5d5-d946088ba14a,4c9b2506-75a8-47d3-a5d5-d946088ba14a,1,0,36eacaa1-2efd-49c0-82de-2f8972535bf2,36eacaa1-2efd-49c0-82de-2f8972535bf2,1,0,c35a643d-fe3a-4293-93c0-074fa68a31e3,c35a643d-fe3a-4293-93c0-074fa68a31e3,1,0,9f7b9fd8-4bdd-4492-abf7-09b3f7f23e16,9f7b9fd8-4bdd-4492-abf7-09b3f7f23e16,1,0,72ee9a03-a320-4e60-be04-0ee813ea567f,72ee9a03-a320-4e60-be04-0ee813ea567f,1,0,f6f52cc8-23a3-4402-b1eb-0e41584c802a,f6f52cc8-23a3-4402-b1eb-0e41584c802a,1,0,8398e065-8b4b-4901-b057-2a048776bafe,8398e065-8b4b-4901-b057-2a048776bafe,1,0,073c56ca-bf45-422d-957a-f9c57aeee4d0,073c56ca-bf45-422d-957a-f9c57aeee4d0,1,0,d73e084f-9201-40c8-8ad4-f61b6cbb47c9,d73e084f-9201-40c8-8ad4-f61b6cbb47c9,1,0,68598d98-0c59-4cda-b0b2-6901d3aff88b,68598d98-0c59-4cda-b0b2-6901d3aff88b,1,0,219c1375-f26e-4698-aa82-4b9d735df783,219c1375-f26e-4698-aa82-4b9d735df783,1,0,ff5121c1-7f11-48cd-a9df-3588cf9f6d21,ff5121c1-7f11-48cd-a9df-3588cf9f6d21,1,0,32012b27-1b43-49be-b9af-df0c877e7a4c,32012b27-1b43-49be-b9af-df0c877e7a4c,1,0,e97d5152-9e58-4a91-a691-b4d358f1c89d,e97d5152-9e58-4a91-a691-b4d358f1c89d,1,0,1de4d7ee-7ddd-44db-bf7f-1b99b653652c,1de4d7ee-7ddd-44db-bf7f-1b99b653652c,1,0,dfe624ac-9f49-46dd-b821-1f1f5b5e0d15,dfe624ac-9f49-46dd-b821-1f1f5b5e0d15,1,0,296c478b-4103-46cb-9d14-97f59034ffd4,296c478b-4103-46cb-9d14-97f59034ffd4,1,0,fb918a68-f86d-46c0-9078-61d2b32b5aef,fb918a68-f86d-46c0-9078-61d2b32b5aef,1,0,9ca4d0c4-f5d3-4748-bf73-f3cd1bc4ac46,9ca4d0c4-f5d3-4748-bf73-f3cd1bc4ac46,1,0,1ddfc773-4f3c-4764-978e-585aab4666de,1ddfc773-4f3c-4764-978e-585aab4666de,1,0,e424d122-1dbb-4545-975c-177997129f2e,e424d122-1dbb-4545-975c-177997129f2e,1,0,c83bc626-dfdd-4451-92b0-b53eed40f534,c83bc626-dfdd-4451-92b0-b53eed40f534,1,0,7b9b1d11-4f78-4113-8fca-1a3a30953aef,7b9b1d11-4f78-4113-8fca-1a3a30953aef,1,0,7f84cb85-c3e4-4b53-b829-3b1e216f978a,7f84cb85-c3e4-4b53-b829-3b1e216f978a,1,0,7e621ecc-7d2b-42bf-a502-f8e59de56b63,7e621ecc-7d2b-42bf-a502-f8e59de56b63,1,0,798fd445-d02e-4e97-890a-0283f33317cf,798fd445-d02e-4e97-890a-0283f33317cf,1,0,095583ca-010d-43ad-8c7a-8938fa4cb761,095583ca-010d-43ad-8c7a-8938fa4cb761,1,0,178d210c-e847-4805-a8d4-31acdf4983af,178d210c-e847-4805-a8d4-31acdf4983af,1,0,aa214d9f-23b1-4996-8a43-9010dceeb53d,aa214d9f-23b1-4996-8a43-9010dceeb53d,1,0,26a5527e-dc2b-45a4-a51c-b1dfb31fa8a2,26a5527e-dc2b-45a4-a51c-b1dfb31fa8a2,1,0,aefc3149-90ee-4ccc-8fb6-b1f6096237f6,aefc3149-90ee-4ccc-8fb6-b1f6096237f6,1,0,d9d103bd-1dd6-48a9-8869-6c8485705393,d9d103bd-1dd6-48a9-8869-6c8485705393,1,0,cf2f7e1f-9b0b-4ae9-9c94-99d80bf95eae,cf2f7e1f-9b0b-4ae9-9c94-99d80bf95eae,1,0,ff0e8487-bdbf-4b21-877e-00008c81bc09,ff0e8487-bdbf-4b21-877e-00008c81bc09,1,0,39c9f8ac-56a0-4057-8359-7228bf97184a,39c9f8ac-56a0-4057-8359-7228bf97184a,1,0,763fbb4c-cab2-4c71-ba16-7e2ce8c3dc97,763fbb4c-cab2-4c71-ba16-7e2ce8c3dc97,1,0,2c0dd892-1d3e-4497-850b-080bdb9c59d8,2c0dd892-1d3e-4497-850b-080bdb9c59d8,1,0,3b727d49-c9ed-4d9e-af61-c13b9a170c75,3b727d49-c9ed-4d9e-af61-c13b9a170c75,1,0,1b264744-bdcd-4c5c-932b-0ac4b990dd78,1b264744-bdcd-4c5c-932b-0ac4b990dd78,1,0,a2dbf20e-1fe9-463d-8fd4-76ce2e4854d1,a2dbf20e-1fe9-463d-8fd4-76ce2e4854d1,1,0,37bde288-8e02-4127-bd80-de8ae7590a14,37bde288-8e02-4127-bd80-de8ae7590a14,1,0,a9b8e517-78cd-4428-b2fc-9e16af0069d7,a9b8e517-78cd-4428-b2fc-9e16af0069d7,1,0,5c592024-c009-4674-bbb8-283669e673ef,5c592024-c009-4674-bbb8-283669e673ef,1,0,e76f16b9-77a0-4033-90d0-6e04e4494747,e76f16b9-77a0-4033-90d0-6e04e4494747,1,0,cfb221fc-8639-4e15-9a78-f7837d657a99,cfb221fc-8639-4e15-9a78-f7837d657a99,1,0,4e61c8c3-756e-4937-adf6-6a1e9a89fc6a,4e61c8c3-756e-4937-adf6-6a1e9a89fc6a,1,0,022147c1-1ebe-4c8d-b367-4c47115b101d,022147c1-1ebe-4c8d-b367-4c47115b101d,1,0,2975d4c8-90d8-4791-8bc2-4adaa328ddc0,2975d4c8-90d8-4791-8bc2-4adaa328ddc0,1,0,fca6b230-a38e-4791-9cc5-3d215f79dc6f,fca6b230-a38e-4791-9cc5-3d215f79dc6f,1,0,04e87de4-940a-4533-8c81-8f145b201dc0,04e87de4-940a-4533-8c81-8f145b201dc0,1,0,573ef4f4-e9e6-4b7c-944d-30808a6a00b7,573ef4f4-e9e6-4b7c-944d-30808a6a00b7,1,0,fa488af9-a5ec-47d8-8661-fa5058a60a6b,fa488af9-a5ec-47d8-8661-fa5058a60a6b,1,0,97cc84c6-3565-474c-a028-83acb5390446,97cc84c6-3565-474c-a028-83acb5390446,1,0,9bf07c3e-7fdf-4a4f-ab00-98c7668349bd,9bf07c3e-7fdf-4a4f-ab00-98c7668349bd,1,0,ebbf6957-6ff6-4dc2-9e20-23d1da091f05,ebbf6957-6ff6-4dc2-9e20-23d1da091f05,1,0,9b80acf6-6bf0-42c4-abb3-2fa2fcf4088c,9b80acf6-6bf0-42c4-abb3-2fa2fcf4088c,1,0,1dcec107-9d5f-4b69-ad65-cc4cb1f27a9c,1dcec107-9d5f-4b69-ad65-cc4cb1f27a9c,1,0,b366d7eb-626c-4c0c-b4cc-c392763e6e94,b366d7eb-626c-4c0c-b4cc-c392763e6e94,1,0,4c7e24aa-726a-4595-82ad-ef1e525b14fa,4c7e24aa-726a-4595-82ad-ef1e525b14fa,1,0,b9e5bb39-ed0a-4e12-b7e4-2d9b5015bf9c,b9e5bb39-ed0a-4e12-b7e4-2d9b5015bf9c,1,0,dbced4aa-6432-4f0c-a99a-5a3e7b0f6755,dbced4aa-6432-4f0c-a99a-5a3e7b0f6755,1,0,e849e46c-2ce6-427b-92bc-06d7997f59bf,e849e46c-2ce6-427b-92bc-06d7997f59bf,1,0,5a971dc0-28bf-4426-9426-9f456aea080a,5a971dc0-28bf-4426-9426-9f456aea080a,1,0,aed2ceeb-cc0f-4bdc-bb94-2e15cd68aa96,aed2ceeb-cc0f-4bdc-bb94-2e15cd68aa96,1,0,04b5ae71-7fa4-4a64-b406-59dc603b80c5,04b5ae71-7fa4-4a64-b406-59dc603b80c5,1,0,f23a2023-f776-40db-8689-1fc3f7ebc482,f23a2023-f776-40db-8689-1fc3f7ebc482,1,0,1e7684f0-1b3b-4a32-8602-dd0672c5a800,1e7684f0-1b3b-4a32-8602-dd0672c5a800,1,0,ab178a93-8570-43b6-ae42-f34a7cc4f359,ab178a93-8570-43b6-ae42-f34a7cc4f359,1,0,4c82f31d-7a98-47dd-89dc-1846cb15bf3b,4c82f31d-7a98-47dd-89dc-1846cb15bf3b,1,0,168e3189-2676-4cdb-bc9d-78d85df51faf,168e3189-2676-4cdb-bc9d-78d85df51faf,1,0,ecf1a87f-4ca4-4efb-a84c-b2db1b0e8829,ecf1a87f-4ca4-4efb-a84c-b2db1b0e8829,1,0,470bbff8-20d0-475c-a61a-1a09ac14c2db,470bbff8-20d0-475c-a61a-1a09ac14c2db,1,0,6ea25680-c4db-4717-9498-62420ca16970,6ea25680-c4db-4717-9498-62420ca16970,1,0,14e20d48-635e-4c52-9099-e743323fc190,14e20d48-635e-4c52-9099-e743323fc190,1,0,c37a660e-16c5-495e-9486-e61bcb693fa0,c37a660e-16c5-495e-9486-e61bcb693fa0,1,0,8f44ebad-1160-474e-a566-fb9da55ffcba,8f44ebad-1160-474e-a566-fb9da55ffcba,1,0,11cf336e-7890-4972-bf71-32d7416ff647,11cf336e-7890-4972-bf71-32d7416ff647,1,0,4c4d61a6-6bb6-4a15-9a81-25fdcf96ec4b,4c4d61a6-6bb6-4a15-9a81-25fdcf96ec4b,1,0,14bd3392-36cd-4ed0-8847-44375d6fb861,14bd3392-36cd-4ed0-8847-44375d6fb861,1,0,759ede7a-e832-44e6-9b11-5bfb3c507820,759ede7a-e832-44e6-9b11-5bfb3c507820,1,0,64484611-b32c-4155-a063-7df5a3f924dd,64484611-b32c-4155-a063-7df5a3f924dd,1,0,2f2ac0db-db86-4ed2-a55a-b245b4d00d70,2f2ac0db-db86-4ed2-a55a-b245b4d00d70,1,0,821b93bd-f0dd-4468-972a-d9b2b4de72f1,821b93bd-f0dd-4468-972a-d9b2b4de72f1,1,0,56900066-90e3-40c0-b64a-8f7964a4dfc1,56900066-90e3-40c0-b64a-8f7964a4dfc1,1,0,56f0c4d6-9b13-486a-9586-05e657dca8be,56f0c4d6-9b13-486a-9586-05e657dca8be,1,0,c795c0d3-6a0d-4311-9821-df320663727e,c795c0d3-6a0d-4311-9821-df320663727e,1,0,512b8d89-8798-4549-9e79-b9c3f7d9098f,512b8d89-8798-4549-9e79-b9c3f7d9098f,1,0,e1fe71f8-f37c-4705-aca1-c25e2bdc5db6,e1fe71f8-f37c-4705-aca1-c25e2bdc5db6,1,0,7f356abf-9045-4a76-89f3-8b52d467122a,7f356abf-9045-4a76-89f3-8b52d467122a,1,0,625a61ac-4ad0-4b31-aa67-9f864154b9c4,625a61ac-4ad0-4b31-aa67-9f864154b9c4,1,0,51fa8d01-44a1-4e75-9b04-6a2504972f08,51fa8d01-44a1-4e75-9b04-6a2504972f08,1,0,73dae482-a1ee-4c57-8859-2dd8e8635a49,73dae482-a1ee-4c57-8859-2dd8e8635a49,1,0,e4ea640f-e3a4-44ad-b17d-51f32136372e,e4ea640f-e3a4-44ad-b17d-51f32136372e,1,0,7dca913d-e37a-4740-8e3d-677d379605ee,7dca913d-e37a-4740-8e3d-677d379605ee,1,0,bd1cf7ef-f3e2-4441-836b-16f2cc227aa9,bd1cf7ef-f3e2-4441-836b-16f2cc227aa9,1,0,e62e60ea-9f0c-4a7e-869f-4639f31f826c,e62e60ea-9f0c-4a7e-869f-4639f31f826c,1,0,c9035b0f-cfc4-4761-9ba0-a8aacfaa9c72,c9035b0f-cfc4-4761-9ba0-a8aacfaa9c72,1,0,7efb0bf4-d40c-417b-b9bc-f4a5af66ec09,7efb0bf4-d40c-417b-b9bc-f4a5af66ec09,1,0,4cd4694f-17f8-43ba-8940-07628bd937fe,4cd4694f-17f8-43ba-8940-07628bd937fe,1,0,9b9e81f9-e23f-4c77-bf6f-edbce8ebabfa,9b9e81f9-e23f-4c77-bf6f-edbce8ebabfa,1,0,d43438d8-713a-4ceb-b653-1b5d5083ab3b,d43438d8-713a-4ceb-b653-1b5d5083ab3b,1,0,7df6c94b-3cfe-4764-988e-858d733e35d9,7df6c94b-3cfe-4764-988e-858d733e35d9,1,0,8b251c7d-2d55-4734-a1da-7f1115d95080,8b251c7d-2d55-4734-a1da-7f1115d95080,1,0,87b3153d-bef0-4441-8b1c-a5fc7ba4c36a,87b3153d-bef0-4441-8b1c-a5fc7ba4c36a,1,0,5a8c3621-595a-4168-8bba-a7f8d499e47e,5a8c3621-595a-4168-8bba-a7f8d499e47e,1,0,fc4cfed6-e492-4420-b357-8143a8c2a41a,fc4cfed6-e492-4420-b357-8143a8c2a41a,1,0,4311a250-64af-443e-a711-93b7c41175cf,4311a250-64af-443e-a711-93b7c41175cf,1,0,804b6c57-1d7b-4927-be5b-84b7959fe55e,804b6c57-1d7b-4927-be5b-84b7959fe55e,1,0,f2655d85-79ea-4736-8f41-94a4f9b2b998,f2655d85-79ea-4736-8f41-94a4f9b2b998,1,0,21258174-3a95-4c10-bb8f-4d6db0c5ae0e,21258174-3a95-4c10-bb8f-4d6db0c5ae0e,1,0,a8eb5ed9-df99-405b-afad-eeaa98956eee,a8eb5ed9-df99-405b-afad-eeaa98956eee,1,0,a64d4b1b-fae4-43ae-ae98-bdc4e59a94c1,a64d4b1b-fae4-43ae-ae98-bdc4e59a94c1,1,0,26a1279f-91f0-4632-ad7c-21cf2f524208,26a1279f-91f0-4632-ad7c-21cf2f524208,1,0,bf751ed0-ee47-4eaf-81bd-f0da00bef343,bf751ed0-ee47-4eaf-81bd-f0da00bef343,1,0,14b65111-4c0e-4521-9fcd-2a8d4aaa6b4b,14b65111-4c0e-4521-9fcd-2a8d4aaa6b4b,1,0,1f1def7c-e0ee-4963-afea-1751bf1b812c,1f1def7c-e0ee-4963-afea-1751bf1b812c,1,0,9a4c0898-ab56-425c-8191-5ab90f4e12bf,9a4c0898-ab56-425c-8191-5ab90f4e12bf,1,0,6841ec47-7a84-441a-b975-69d089072ce7,6841ec47-7a84-441a-b975-69d089072ce7,1,0,ead4001a-0d8a-4b95-8212-2a40e5aa6659,ead4001a-0d8a-4b95-8212-2a40e5aa6659,1,0,22165c8a-2179-4cd5-b195-bd2721e9e232,22165c8a-2179-4cd5-b195-bd2721e9e232,1,0,b28c3a8f-8cad-45eb-90d3-6d90a0b3f881,b28c3a8f-8cad-45eb-90d3-6d90a0b3f881,1,0,3c5974ec-f76d-401c-a8e4-d51c7cd4c4fb,3c5974ec-f76d-401c-a8e4-d51c7cd4c4fb,1,0,609a9bc9-4225-4fe1-91fa-90c9c2e5cfba,609a9bc9-4225-4fe1-91fa-90c9c2e5cfba,1,0,d22ed498-c7df-45bb-869f-f16d3aa2d3d3,d22ed498-c7df-45bb-869f-f16d3aa2d3d3,1,0,4a966f6e-87dd-4dae-9cc0-dbabee9424dc,4a966f6e-87dd-4dae-9cc0-dbabee9424dc,1,0,9d9debfd-4a10-4f09-9d09-2aa5e058b525,9d9debfd-4a10-4f09-9d09-2aa5e058b525,1,0,fc19586c-d89c-495c-b473-6f85967ed48e,fc19586c-d89c-495c-b473-6f85967ed48e,1,0,2ac7c701-a281-4e77-a5f8-294526021e2d,2ac7c701-a281-4e77-a5f8-294526021e2d,1,0,979df549-889d-496a-b6ce-c56d54c771b5,979df549-889d-496a-b6ce-c56d54c771b5,1,0,91b320d8-3426-44d3-97d7-c200287d7343,91b320d8-3426-44d3-97d7-c200287d7343,1,0,b9297f72-b40a-4adb-9975-bb693d4834a4,b9297f72-b40a-4adb-9975-bb693d4834a4,1,0,41cf3916-216f-4c4e-a587-82777f4263e0,41cf3916-216f-4c4e-a587-82777f4263e0,1,0,2ce3a350-86f1-4275-8299-3c3693ca11fa,2ce3a350-86f1-4275-8299-3c3693ca11fa,1,0,59f0ed15-c84c-4f41-bdd4-26317e4e914d,59f0ed15-c84c-4f41-bdd4-26317e4e914d,1,0,4b5ff142-47b8-4548-b6f9-56ebcbd40e35,4b5ff142-47b8-4548-b6f9-56ebcbd40e35,1,0,8fef790c-a3f4-460c-9093-5065cbdba196,8fef790c-a3f4-460c-9093-5065cbdba196,1,0,79bd24d0-61a9-4558-90ac-4e726066789c,79bd24d0-61a9-4558-90ac-4e726066789c,1,0,d843cbd7-e2b5-4c50-8ed2-7cb0baac8ecc,d843cbd7-e2b5-4c50-8ed2-7cb0baac8ecc,1,0,ef356548-51a4-4b09-b37d-ede5b8f3edb6,ef356548-51a4-4b09-b37d-ede5b8f3edb6,1,0,53c0d900-5e96-4381-a1ed-4424a5799608,53c0d900-5e96-4381-a1ed-4424a5799608,1,0,64fe317a-7d0e-4758-b5cf-0d871d2bf4ad,64fe317a-7d0e-4758-b5cf-0d871d2bf4ad,1,0,abfb7ac3-ebfa-4275-a039-a6b94bb9a76f,abfb7ac3-ebfa-4275-a039-a6b94bb9a76f,1,0,45ca9e20-1246-4400-a019-ffb521af6ea7,45ca9e20-1246-4400-a019-ffb521af6ea7,1,0,73eed854-5c3a-4a10-9bfa-793fd517f303,73eed854-5c3a-4a10-9bfa-793fd517f303,1,0,c3eb2836-ea4d-48cc-a03f-3a0c30f67e7f,c3eb2836-ea4d-48cc-a03f-3a0c30f67e7f,1,0,9134dc40-a8f1-4c60-9431-27cb98be5ecd,9134dc40-a8f1-4c60-9431-27cb98be5ecd,1,0,16c4622a-33af-4a95-b44e-0861a6df21d2,16c4622a-33af-4a95-b44e-0861a6df21d2,1,0,d8cac67b-cce2-4a00-a8df-c6570c50153f,d8cac67b-cce2-4a00-a8df-c6570c50153f,1,0,37213c65-bf26-4e50-a2fa-58eb45439b58,37213c65-bf26-4e50-a2fa-58eb45439b58,1,0,e43c08a9-6496-4c8e-bfe2-9d728e31d63d,e43c08a9-6496-4c8e-bfe2-9d728e31d63d,1,0,b6b31892-73ee-4c9b-92b0-2735536c4938,b6b31892-73ee-4c9b-92b0-2735536c4938,1,0,deb8b883-142e-47d0-a722-7c734a0cf9b3,deb8b883-142e-47d0-a722-7c734a0cf9b3,1,0,a6794f74-08a4-4b73-add7-e6d0d1b6e7a3,a6794f74-08a4-4b73-add7-e6d0d1b6e7a3,1,0,29233058-ccb1-4110-a9bc-cdb4c531f35a,29233058-ccb1-4110-a9bc-cdb4c531f35a,1,0,cf3729b2-9ee6-437c-81df-83966793be50,cf3729b2-9ee6-437c-81df-83966793be50,1,0,429d08b7-0b98-4f9b-a053-d04dd84a7026,429d08b7-0b98-4f9b-a053-d04dd84a7026,1,0,b64fd964-cee8-4619-872f-82d2fdc14240,b64fd964-cee8-4619-872f-82d2fdc14240,1,0,5ce7846d-9806-40f5-8631-4e14deb8bc95,5ce7846d-9806-40f5-8631-4e14deb8bc95,1,0,79528a0e-1e48-4d14-bd28-756fd5db57b9,79528a0e-1e48-4d14-bd28-756fd5db57b9,1,0,4eeab8c2-d901-4b95-adea-4a08f79d0fa2,4eeab8c2-d901-4b95-adea-4a08f79d0fa2,1,0,d9426219-4b37-4776-8d5d-acab5825e789,d9426219-4b37-4776-8d5d-acab5825e789,1,0,7ce1f9eb-ac51-46fd-adc5-c8b9bfb32e44,7ce1f9eb-ac51-46fd-adc5-c8b9bfb32e44,1,0,4fef5026-1cba-4c33-ae75-5f9570a8e6b6,4fef5026-1cba-4c33-ae75-5f9570a8e6b6,1,0,243ee3d4-4130-41ea-a37c-c7b39a5e73fa,243ee3d4-4130-41ea-a37c-c7b39a5e73fa,1,0,29e7299a-ce80-497a-8102-615d0a001ea8,29e7299a-ce80-497a-8102-615d0a001ea8,1,0,f9e48170-62eb-4d6b-b861-c7af1b4a38c3,f9e48170-62eb-4d6b-b861-c7af1b4a38c3,1,0,9bcc8f9a-ec12-45f2-8a32-6946d556f57a,9bcc8f9a-ec12-45f2-8a32-6946d556f57a,1,0,adc2cc11-b647-453f-a98e-8a73b7c368c7,adc2cc11-b647-453f-a98e-8a73b7c368c7,1,0,4522c564-61da-40da-a749-5312121a331d,4522c564-61da-40da-a749-5312121a331d,1,0,9394c709-6cbe-4ef6-bc8c-cba8af65821e,9394c709-6cbe-4ef6-bc8c-cba8af65821e,1,0,2943b572-7411-4f92-a6cc-7ee552b85223,2943b572-7411-4f92-a6cc-7ee552b85223,1,0,28478e7a-e8aa-40aa-866c-a3624f903141,28478e7a-e8aa-40aa-866c-a3624f903141,1,0,f692ab21-a8de-4feb-914f-4beef350543a,f692ab21-a8de-4feb-914f-4beef350543a,1,0,0ec0b1a0-5f0d-4a14-9a84-49098befa0af,0ec0b1a0-5f0d-4a14-9a84-49098befa0af,1,0,c644ab9b-7bcb-4bfa-b8ba-4c5f7689c91c,c644ab9b-7bcb-4bfa-b8ba-4c5f7689c91c,1,0,dabb3395-6100-4f53-913d-e0230e81b494,dabb3395-6100-4f53-913d-e0230e81b494,1,0,e0a3fae1-1582-4c7a-acd8-870b558acec4,e0a3fae1-1582-4c7a-acd8-870b558acec4,1,0,e9f393e5-04d3-4330-afb0-aa73caf0c5cd,e9f393e5-04d3-4330-afb0-aa73caf0c5cd,1,0,036868c2-e2c4-426b-8402-0d77b4224828,036868c2-e2c4-426b-8402-0d77b4224828,1,0,1bf18e24-8157-4aa4-b790-21c6535f5233,1bf18e24-8157-4aa4-b790-21c6535f5233,1,0,18470536-57df-48f0-9a85-68e4006558eb,18470536-57df-48f0-9a85-68e4006558eb,1,0,893e2f4c-b056-42ae-89fb-ecd90a53bb4c,893e2f4c-b056-42ae-89fb-ecd90a53bb4c,1,0,5eaaa3fd-3a87-4eaa-93a9-49337b19eddd,5eaaa3fd-3a87-4eaa-93a9-49337b19eddd,1,0,77ee9f6c-0be9-450f-978c-297626d6275b,77ee9f6c-0be9-450f-978c-297626d6275b,1,0,a63e6145-0d4b-4da2-9864-485a61e621df,a63e6145-0d4b-4da2-9864-485a61e621df,1,0,f29738d5-ad22-47bf-9053-497763674486,f29738d5-ad22-47bf-9053-497763674486,1,0,9c23d3bd-7a98-4d71-b9b0-78cda4ffb3ce,9c23d3bd-7a98-4d71-b9b0-78cda4ffb3ce,1,0,9aca958a-a938-4421-9e37-6606e02f7b77,9aca958a-a938-4421-9e37-6606e02f7b77,1,0,44109976-b763-4807-a013-9d04c3675bf3,44109976-b763-4807-a013-9d04c3675bf3,1,0,46127175-144d-438e-8fbe-c55ae0233620,46127175-144d-438e-8fbe-c55ae0233620,1,0,20754057-6397-4478-a484-74b8c2f243ee,20754057-6397-4478-a484-74b8c2f243ee,1,0,b8a06e8b-4581-4088-a5b4-a5d3330eab22,b8a06e8b-4581-4088-a5b4-a5d3330eab22,1,0,ea838b79-af81-4767-a8b1-fce68baa866a,ea838b79-af81-4767-a8b1-fce68baa866a,1,0,5e1056d0-6778-4030-8806-3dc90ffed318,5e1056d0-6778-4030-8806-3dc90ffed318,1,0,068e6f32-a2b6-4ade-9b9e-db3eac8b09c1,068e6f32-a2b6-4ade-9b9e-db3eac8b09c1,1,0,3701531a-b408-455f-a49d-652d3fcab4ef,3701531a-b408-455f-a49d-652d3fcab4ef,1,0,63e229aa-2638-45f1-9c5e-f821d9397ac3,63e229aa-2638-45f1-9c5e-f821d9397ac3,1,0,9e425f71-ef7d-4936-9f1b-7dceca99ca95,9e425f71-ef7d-4936-9f1b-7dceca99ca95,1,0,968ecea6-7d21-4e85-9d25-e8c6fe1b76cc,968ecea6-7d21-4e85-9d25-e8c6fe1b76cc,1,0,c6777ffe-1fb2-4807-8624-43f47a4e3947,c6777ffe-1fb2-4807-8624-43f47a4e3947,1,0,244f45e9-79b5-47ed-886c-db8faa4e0ec1,244f45e9-79b5-47ed-886c-db8faa4e0ec1,1,0,be42c5c6-b604-4180-a3d7-24b2348c8d5e,be42c5c6-b604-4180-a3d7-24b2348c8d5e,1,0,6223c072-bff3-4ea8-96a1-ac2a5bbe9f99,6223c072-bff3-4ea8-96a1-ac2a5bbe9f99,1,0,6fd083fe-a132-4f63-b38f-4891004aca8a,6fd083fe-a132-4f63-b38f-4891004aca8a,1,0,f9f021ca-8b3e-4d10-9538-1bce7e851fdd,f9f021ca-8b3e-4d10-9538-1bce7e851fdd,1,0,bb7cf0f8-56b0-4c0d-b206-79051ba83f6d,bb7cf0f8-56b0-4c0d-b206-79051ba83f6d,1,0,ab057ce4-ac51-4465-8aad-eadc9088c62d,ab057ce4-ac51-4465-8aad-eadc9088c62d,1,0,8842c0e3-2e20-4f37-ae7c-f5449004994b,8842c0e3-2e20-4f37-ae7c-f5449004994b,1,0,5b2cc44b-69cb-495c-a26b-003a495df40b,5b2cc44b-69cb-495c-a26b-003a495df40b,1,0,30250d93-10ff-45c9-920b-5fed3f9d8093,30250d93-10ff-45c9-920b-5fed3f9d8093,1,0,fc959221-6313-45d9-b2c4-85befaede226,fc959221-6313-45d9-b2c4-85befaede226,1,0,6ffa8536-7639-4e9a-9f6d-4eda71f5ca3b,6ffa8536-7639-4e9a-9f6d-4eda71f5ca3b,1,0,5206d407-ac91-477e-80e7-97c312da934c,5206d407-ac91-477e-80e7-97c312da934c,1,0,15b53eaa-cb35-4385-9515-c2ec6e1fdb4b,15b53eaa-cb35-4385-9515-c2ec6e1fdb4b,1,0,ccb8a530-260a-4488-b1d9-c67325c69bf4,ccb8a530-260a-4488-b1d9-c67325c69bf4,1,0,c869c1b7-3c04-4e5e-a033-d3f2fb0af03c,c869c1b7-3c04-4e5e-a033-d3f2fb0af03c,1,0,23f93492-59f5-491b-8708-45096934c7e6,23f93492-59f5-491b-8708-45096934c7e6,1,0,30f5471a-17fb-4184-9798-4f8e3ef0cccb,30f5471a-17fb-4184-9798-4f8e3ef0cccb,1,0,27abda4c-a43c-49b4-90cd-db780afe0c45,27abda4c-a43c-49b4-90cd-db780afe0c45,1,0,450a36cb-9bc1-4c5b-ae21-0e023f3eb951,450a36cb-9bc1-4c5b-ae21-0e023f3eb951,1,0,1a28db16-d410-4101-bf31-21cefa880dae,1a28db16-d410-4101-bf31-21cefa880dae,1,0,2b85bcf6-85b0-4efb-bada-b65414a8d264,2b85bcf6-85b0-4efb-bada-b65414a8d264,1,0,cf027de4-59c9-4b8f-9695-b1d4d16548fe,cf027de4-59c9-4b8f-9695-b1d4d16548fe,1,0,d33ceaee-a374-40a3-9406-cbcbf82fd8ae,d33ceaee-a374-40a3-9406-cbcbf82fd8ae,1,0,0b13cad5-91ae-4cd1-a620-9a315ae8024c,0b13cad5-91ae-4cd1-a620-9a315ae8024c,1,0,d0634a8e-676f-4f49-9a38-7cb80cfa9fdf,d0634a8e-676f-4f49-9a38-7cb80cfa9fdf,1,0,59bb5271-4cc7-45aa-8e2a-f556a4afa2dc,59bb5271-4cc7-45aa-8e2a-f556a4afa2dc,1,0,81dd61e5-fe02-4272-a525-affda9b606ca,81dd61e5-fe02-4272-a525-affda9b606ca,1,0,8de7b423-b7d1-46fe-b1dc-fb936736b864,8de7b423-b7d1-46fe-b1dc-fb936736b864,1,0,f565876c-0326-4b12-895e-c248b9e64115,f565876c-0326-4b12-895e-c248b9e64115,1,0,62f075c5-1ad0-4a29-9f40-567b9fa70cdf,62f075c5-1ad0-4a29-9f40-567b9fa70cdf,1,0,88cefe4a-a6c5-4753-935e-f956d9de9f77,88cefe4a-a6c5-4753-935e-f956d9de9f77,1,0,882e78b7-90bd-4b95-8852-146bdb51ec15,882e78b7-90bd-4b95-8852-146bdb51ec15,1,0,ae4435c3-62c0-4f08-b526-7f9571eed8ae,ae4435c3-62c0-4f08-b526-7f9571eed8ae,1,0,91a1bd81-e6fa-476c-85e6-317a91f6c8bc,91a1bd81-e6fa-476c-85e6-317a91f6c8bc,1,0,f799e1d1-bb78-4a7a-bb1a-d79ba29acd0c,f799e1d1-bb78-4a7a-bb1a-d79ba29acd0c,1,0,c7b46558-d688-4c42-ae52-f98de7923176,c7b46558-d688-4c42-ae52-f98de7923176,1,0,31fdbb46-1df1-4b74-a54e-b922260dcca6,31fdbb46-1df1-4b74-a54e-b922260dcca6,1,0,0f6f8fd9-b3af-4d06-bc47-bdad238d15b7,0f6f8fd9-b3af-4d06-bc47-bdad238d15b7,1,0,460e76d2-4ed6-464e-bf9c-a6bcf920aaf2,460e76d2-4ed6-464e-bf9c-a6bcf920aaf2,1,0,80c23bf0-cef0-4d07-a017-d90635f8041d,80c23bf0-cef0-4d07-a017-d90635f8041d,1,0,47a24216-3299-470b-a18c-d8c1258fff24,47a24216-3299-470b-a18c-d8c1258fff24,1,0,72dcfd46-491e-4f88-a0ea-57919f8fbdea,72dcfd46-491e-4f88-a0ea-57919f8fbdea,1,0,fa7a11cc-7ee0-4550-8d0d-9c7464d57a37,fa7a11cc-7ee0-4550-8d0d-9c7464d57a37,1,0,8317ac49-890d-4921-8c0d-1bfc676f0b40,8317ac49-890d-4921-8c0d-1bfc676f0b40,1,0,9dfb5735-6cc7-4525-b57d-04f9c798fac4,9dfb5735-6cc7-4525-b57d-04f9c798fac4,1,0,f9161bc3-9a1c-4870-8681-8e97d8ce838a,f9161bc3-9a1c-4870-8681-8e97d8ce838a,1,0,5e53ccc6-5ab4-4f9d-b524-0081d345d7a2,5e53ccc6-5ab4-4f9d-b524-0081d345d7a2,1,0,c3b3805b-3501-47a7-b280-46180049b235,c3b3805b-3501-47a7-b280-46180049b235,1,0,29af05c2-37de-495b-b3cf-477d452abe5e,29af05c2-37de-495b-b3cf-477d452abe5e,1,0,0c732569-a50f-4be3-a214-0843c6a3da47,0c732569-a50f-4be3-a214-0843c6a3da47,1,0,f55d74bf-5824-4228-9683-31f7c7fdf74d,f55d74bf-5824-4228-9683-31f7c7fdf74d,1,0,5e922083-0ceb-449a-8201-7dd27a46f2fc,5e922083-0ceb-449a-8201-7dd27a46f2fc,1,0,0d142fcd-a596-4cdf-a3f6-c31becdb7b59,0d142fcd-a596-4cdf-a3f6-c31becdb7b59,1,0,c30c6860-befb-497e-b432-3dba0f86c540,c30c6860-befb-497e-b432-3dba0f86c540,1,0,d97e78c7-f2c1-4e0e-9c9b-d2dd6a94da22,d97e78c7-f2c1-4e0e-9c9b-d2dd6a94da22,1,0,e757303e-c61a-4e42-9829-c5a36dba9414,e757303e-c61a-4e42-9829-c5a36dba9414,1,0,cb3bb725-ed7a-4cde-a0ac-26a0b168c0ea,cb3bb725-ed7a-4cde-a0ac-26a0b168c0ea,1,0,091de87c-0801-4bd3-aaaa-ed37bc4cd161,091de87c-0801-4bd3-aaaa-ed37bc4cd161,1,0,9a6bfcbe-6ac7-4839-bfb9-a11b97e64185,9a6bfcbe-6ac7-4839-bfb9-a11b97e64185,1,0,b53c545c-3b1c-4315-a213-4f2b2c7128aa,b53c545c-3b1c-4315-a213-4f2b2c7128aa,1,0,02a84df9-2171-43e6-8135-a74edd384826,02a84df9-2171-43e6-8135-a74edd384826,1,0,ff36356d-cb1d-4316-896a-c6ae83b92437,ff36356d-cb1d-4316-896a-c6ae83b92437,1,0,465cce6a-7064-4b0a-932c-40f842042f33,465cce6a-7064-4b0a-932c-40f842042f33,1,0,f9cd82e7-8252-4bb6-8e08-23ab45ed3976,f9cd82e7-8252-4bb6-8e08-23ab45ed3976,1,0,e67dff00-92e2-4f58-a950-d5bbca9291c5,e67dff00-92e2-4f58-a950-d5bbca9291c5,1,0,e1964724-804a-4ecc-be9e-5b84e58f2b84,e1964724-804a-4ecc-be9e-5b84e58f2b84,1,0,46e961c2-cd45-4d76-a6ad-c1d5c8dc95cc,46e961c2-cd45-4d76-a6ad-c1d5c8dc95cc,1,0,bf3cb513-2856-472b-8713-7bf8ba70cdce,bf3cb513-2856-472b-8713-7bf8ba70cdce,1,0,de4815c8-0853-47e0-862b-b60119c674f6,de4815c8-0853-47e0-862b-b60119c674f6,1,0,dbe02a79-3179-42bb-a8e8-dd9bf3ff705c,dbe02a79-3179-42bb-a8e8-dd9bf3ff705c,1,0,8f17ec3f-6d62-46b8-baef-b20430e948ce,8f17ec3f-6d62-46b8-baef-b20430e948ce,1,0,ea1298d0-9396-4a50-b83e-24064e8dd99d,ea1298d0-9396-4a50-b83e-24064e8dd99d,1,0,038dbb00-e4c6-4e64-b861-3a0764f54ab3,038dbb00-e4c6-4e64-b861-3a0764f54ab3,1,0,1c291f7d-a493-4297-8aaa-912896800066,1c291f7d-a493-4297-8aaa-912896800066,1,0,69149801-a825-4ed2-b077-c26660dff271,69149801-a825-4ed2-b077-c26660dff271,1,0,12146ed3-c159-4d6b-ae1a-1ecd30e5a87e,12146ed3-c159-4d6b-ae1a-1ecd30e5a87e,1,0,518ab687-b84a-40c8-8547-aee4257c1b71,518ab687-b84a-40c8-8547-aee4257c1b71,1,0,5cec0949-bfe8-4f7e-98c1-0c402be3ea09,5cec0949-bfe8-4f7e-98c1-0c402be3ea09,1,0,7732ef07-16eb-46a0-9645-7de95c5482af,7732ef07-16eb-46a0-9645-7de95c5482af,1,0,75dac536-b316-4b04-a57b-03656c678bec,75dac536-b316-4b04-a57b-03656c678bec,1,0,a07d6c85-159d-4d09-b117-561a1e20329f,a07d6c85-159d-4d09-b117-561a1e20329f,1,0,8a2f9733-4f83-41f2-9d74-dca7161a4b41,8a2f9733-4f83-41f2-9d74-dca7161a4b41,1,0,fbd2d900-1e0d-48f3-9793-0186ee49915c,fbd2d900-1e0d-48f3-9793-0186ee49915c,1,0,436b558e-6547-4ba6-8cee-954fe36743ea,436b558e-6547-4ba6-8cee-954fe36743ea,1,0,6120bb6e-b177-48bf-b467-02bab0d4cc0d,6120bb6e-b177-48bf-b467-02bab0d4cc0d,1,0,a5af4715-6c4f-484b-9599-5b1b9147713f,a5af4715-6c4f-484b-9599-5b1b9147713f,1,0,307b6e66-6fef-4777-b20a-37898928932f,307b6e66-6fef-4777-b20a-37898928932f,1,0,a69494c0-dcce-4359-aa82-c1cfae8a43eb,a69494c0-dcce-4359-aa82-c1cfae8a43eb,1,0,2b243d49-5500-403a-b177-ac1c70bb889d,2b243d49-5500-403a-b177-ac1c70bb889d,1,0,51c040c6-e7a4-4e0e-b479-039636fdb6ec,51c040c6-e7a4-4e0e-b479-039636fdb6ec,1,0,8ede4c18-ebf0-4c39-9e82-c59df8d62ca7,8ede4c18-ebf0-4c39-9e82-c59df8d62ca7,1,0,8a50e7f2-97a9-4ed8-a46f-6413f7fcf8cd,8a50e7f2-97a9-4ed8-a46f-6413f7fcf8cd,1,0,b2c200a7-b9cc-4d84-b839-e69f2a14a8f5,b2c200a7-b9cc-4d84-b839-e69f2a14a8f5,1,0,4a69a70d-1b4c-4999-a3dd-ae1deb331fea,4a69a70d-1b4c-4999-a3dd-ae1deb331fea,1,0,3a36e0f5-a645-47f1-99ae-5b0493d604ad,3a36e0f5-a645-47f1-99ae-5b0493d604ad,1,0,57f762f7-b8e4-498b-a3dc-3d40c94855ec,57f762f7-b8e4-498b-a3dc-3d40c94855ec,1,0,ca7d4086-de35-40fd-af65-73369d452135,ca7d4086-de35-40fd-af65-73369d452135,1,0,563c0f5c-e0b4-4229-a3f6-183091060aa4,563c0f5c-e0b4-4229-a3f6-183091060aa4,1,0,bf967588-ea8f-49a3-9331-af2331ffa162,bf967588-ea8f-49a3-9331-af2331ffa162,1,0,5083530c-9a24-4def-99c1-6eb9514e9b33,5083530c-9a24-4def-99c1-6eb9514e9b33,1,0,d59c2725-5d98-495e-9f86-f5d38dbfad90,d59c2725-5d98-495e-9f86-f5d38dbfad90,1,0,176f8835-73d2-4fbe-9d2a-0a4c79d3b871,176f8835-73d2-4fbe-9d2a-0a4c79d3b871,1,0,0ba68198-983d-409b-be27-96f1572b3f12,0ba68198-983d-409b-be27-96f1572b3f12,1,0,9cd1e8dd-e2be-48a9-b32d-43688e1748bc,9cd1e8dd-e2be-48a9-b32d-43688e1748bc,1,0,decb27a8-7dd3-4601-a694-30429e638b39,decb27a8-7dd3-4601-a694-30429e638b39,1,0,922ac6c0-a6a8-444e-9aad-27dc0f49b32e,922ac6c0-a6a8-444e-9aad-27dc0f49b32e,1,0,d7a128e4-f31f-4b09-8424-e816ab59d5c3,d7a128e4-f31f-4b09-8424-e816ab59d5c3,1,0,0ce6e252-8d6e-4bfe-b8cc-daf3434fa51e,0ce6e252-8d6e-4bfe-b8cc-daf3434fa51e,1,0,aa9513b4-f575-4030-a7f9-ac09aa319e98,aa9513b4-f575-4030-a7f9-ac09aa319e98,1,0,f01afc5e-91b8-4cc2-b63a-c245e5e36d01,f01afc5e-91b8-4cc2-b63a-c245e5e36d01,1,0,028cbc0e-023d-40ad-86c3-5e6f8dc96c57,028cbc0e-023d-40ad-86c3-5e6f8dc96c57,1,0,d03f66b1-48a3-434b-bb58-9fd53c183514,d03f66b1-48a3-434b-bb58-9fd53c183514,1,0,a469e55e-d7ca-4c27-b350-fafe7364c18f,a469e55e-d7ca-4c27-b350-fafe7364c18f,1,0,b09fc04b-94d8-4dea-bf6c-24370f231274,b09fc04b-94d8-4dea-bf6c-24370f231274,1,0,e669a5cd-daf3-4a88-a2c0-380db496a4dd,e669a5cd-daf3-4a88-a2c0-380db496a4dd,1,0,177710c8-2441-4436-a096-64c27aa7aec5,177710c8-2441-4436-a096-64c27aa7aec5,1,0,ab143db8-185b-4093-a3b1-c65322cb8fd6,ab143db8-185b-4093-a3b1-c65322cb8fd6,1,0,e3ce5882-541e-4620-9c24-f00deacc33c2,e3ce5882-541e-4620-9c24-f00deacc33c2,1,0,c9694243-390e-4217-8996-b33924c4fe60,c9694243-390e-4217-8996-b33924c4fe60,1,0,8e08ea9b-8c63-475a-9335-c8edc6214555,8e08ea9b-8c63-475a-9335-c8edc6214555,1,0,19bd6152-7e9c-4710-80c3-c6aa399fe4e9,19bd6152-7e9c-4710-80c3-c6aa399fe4e9,1,0,72846fcc-a9ab-4393-9133-38c1805abab1,72846fcc-a9ab-4393-9133-38c1805abab1,1,0,91a81670-9124-4b65-aecd-77f252249030,91a81670-9124-4b65-aecd-77f252249030,1,0,ed2e5344-9261-4473-86a5-f914b8458cfc,ed2e5344-9261-4473-86a5-f914b8458cfc,1,0,4ff32c59-4ca5-4e60-b54c-f46f757758e2,4ff32c59-4ca5-4e60-b54c-f46f757758e2,1,0,acbc674d-d053-43f4-9d62-86fbbb962ee2,acbc674d-d053-43f4-9d62-86fbbb962ee2,1,0,e0608801-124b-4c52-9a17-9072eb5b676c,e0608801-124b-4c52-9a17-9072eb5b676c,1,0,64e3295e-89c6-4b09-8dc4-b552da47db84,64e3295e-89c6-4b09-8dc4-b552da47db84,1,0,2c1846a5-09f2-414b-b95c-67ed7432ce0e,2c1846a5-09f2-414b-b95c-67ed7432ce0e,1,0,ce339ae7-a794-425b-8d5f-b04fd4b21364,ce339ae7-a794-425b-8d5f-b04fd4b21364,1,0,3ad5d8a7-3071-46aa-aebf-306bdb67983b,3ad5d8a7-3071-46aa-aebf-306bdb67983b,1,0,ab7ef662-71c1-4d51-9f0f-ea8c5ea3df8a,ab7ef662-71c1-4d51-9f0f-ea8c5ea3df8a,1,0,cb954476-c551-4a06-9bcd-18d67ba47dc8,cb954476-c551-4a06-9bcd-18d67ba47dc8,1,0,79201015-bfae-463e-81f1-0ae2d3066f3f,79201015-bfae-463e-81f1-0ae2d3066f3f,1,0,bed8af4e-fa3a-4b25-ba6e-5b7b4a6cd363,bed8af4e-fa3a-4b25-ba6e-5b7b4a6cd363,1,0,951927d4-7bfc-4edb-b97f-dcc29a937400,951927d4-7bfc-4edb-b97f-dcc29a937400,1,0,71309e88-d514-40f3-a329-b2a420e75504,71309e88-d514-40f3-a329-b2a420e75504,1,0,1ea3178b-73dd-4063-9140-c61687a4b1b8,1ea3178b-73dd-4063-9140-c61687a4b1b8,1,0,85fd7ef4-2886-4e2c-a6eb-63d0b0b9cd55,85fd7ef4-2886-4e2c-a6eb-63d0b0b9cd55,1,0,696723be-7b4f-4321-956e-eff07ea9f5fa,696723be-7b4f-4321-956e-eff07ea9f5fa,1,0,616c27dc-5c59-4469-97a7-27e0752bd3a7,616c27dc-5c59-4469-97a7-27e0752bd3a7,1,0,f7323121-74bc-441c-a3e9-dd5cb4f0accd,f7323121-74bc-441c-a3e9-dd5cb4f0accd,1,0,fddfb2fd-4d58-4bc6-b196-720425a8c029,fddfb2fd-4d58-4bc6-b196-720425a8c029,1,0,ce075cf1-1778-4671-aa40-166e6c41adc8,ce075cf1-1778-4671-aa40-166e6c41adc8,1,0,eddb111f-7622-44a3-b7d8-97faec67b23c,eddb111f-7622-44a3-b7d8-97faec67b23c,1,0,84872892-842e-4d7d-a3cd-576c42343a7a,84872892-842e-4d7d-a3cd-576c42343a7a,1,0,78ad6047-473d-494b-a2ba-81e062b567e6,78ad6047-473d-494b-a2ba-81e062b567e6,1,0,bb264e83-49f4-4b7a-8be2-094712fc0640,bb264e83-49f4-4b7a-8be2-094712fc0640,1,0,07bf650d-e61e-44f3-9643-6ffc95b913fb,07bf650d-e61e-44f3-9643-6ffc95b913fb,1,0,5c68c57a-31d6-4ae9-855f-3fbc57922e39,5c68c57a-31d6-4ae9-855f-3fbc57922e39,1,0,6b90ed05-813c-4324-8a69-02c2268856b2,6b90ed05-813c-4324-8a69-02c2268856b2,1,0,081ed48d-cb87-459d-97d6-9af121edbabb,081ed48d-cb87-459d-97d6-9af121edbabb,1,0,6c4074b2-f631-451d-b412-1c8c096a71b1,6c4074b2-f631-451d-b412-1c8c096a71b1,1,0,f9931a20-8391-4b13-8c6d-1836f2492e53,f9931a20-8391-4b13-8c6d-1836f2492e53,1,0,c6eec20b-13b9-44a0-968f-1325680c399b,c6eec20b-13b9-44a0-968f-1325680c399b,1,0,02fbf083-1bdd-4900-9dc1-62f415b792a4,02fbf083-1bdd-4900-9dc1-62f415b792a4,1,0,35454c2d-7088-487b-abb3-f95f2dfdcffa,35454c2d-7088-487b-abb3-f95f2dfdcffa,1,0,2c2526c1-bdf8-4115-bdff-3e79d28321cb,2c2526c1-bdf8-4115-bdff-3e79d28321cb,1,0,4f4da2e9-37ab-4505-b3b1-4b3a908f38c2,4f4da2e9-37ab-4505-b3b1-4b3a908f38c2,1,0,95ab774f-27fa-4bd4-a422-0f997f632679,95ab774f-27fa-4bd4-a422-0f997f632679,1,0,ee3ad891-b7d6-439d-892b-de2f3399d147,ee3ad891-b7d6-439d-892b-de2f3399d147,1,0,4af0f1ee-42cb-47bd-99d0-99deb70e9f82,4af0f1ee-42cb-47bd-99d0-99deb70e9f82,1,0,a2ae0338-ed11-422a-8442-f6c4002ddf0d,a2ae0338-ed11-422a-8442-f6c4002ddf0d,1,0,eb59c9c3-6043-401c-87cc-ba7620139d6a,eb59c9c3-6043-401c-87cc-ba7620139d6a,1,0,2b5ce871-8630-4f2f-9ccb-d9f863886420,2b5ce871-8630-4f2f-9ccb-d9f863886420,1,0,86ae353e-7eed-434c-b4ab-cede36e462bc,86ae353e-7eed-434c-b4ab-cede36e462bc,1,0,18e65717-738b-4d39-9c85-676bca15e6b7,18e65717-738b-4d39-9c85-676bca15e6b7,1,0,0cc63813-cf16-4a99-b3bd-18a773091230,0cc63813-cf16-4a99-b3bd-18a773091230,1,0,4fc00971-c980-468a-9690-5cd520d12eb0,4fc00971-c980-468a-9690-5cd520d12eb0,1,0,85972c27-4f39-4982-9307-7877e87ef87b,85972c27-4f39-4982-9307-7877e87ef87b,1,0,96afdffb-7595-4c49-9e86-8296f50bd2f5,96afdffb-7595-4c49-9e86-8296f50bd2f5,1,0,823d5b5e-e9bf-40f0-9dcd-579bb53847bb,823d5b5e-e9bf-40f0-9dcd-579bb53847bb,1,0,e125d3e0-950f-42ee-8904-bd26091afa55,e125d3e0-950f-42ee-8904-bd26091afa55,1,0,2b4797a5-074a-4a01-b99f-1c5590cfde40,2b4797a5-074a-4a01-b99f-1c5590cfde40,1,0,718e53d2-24ec-40fb-9def-825441ada46c,718e53d2-24ec-40fb-9def-825441ada46c,1,0,4c0a7fd6-8f09-41d6-949f-65ce708c1256,4c0a7fd6-8f09-41d6-949f-65ce708c1256,1,0,792abc06-b52a-4691-ba92-96ed73ca702a,792abc06-b52a-4691-ba92-96ed73ca702a,1,0,148dbe44-86d1-4362-b9db-8ff68cd2b34d,148dbe44-86d1-4362-b9db-8ff68cd2b34d,1,0,1fbc893e-3000-4fac-88f5-c82251835d65,1fbc893e-3000-4fac-88f5-c82251835d65,1,0,05852816-63ec-4179-abca-66372bbfb04c,05852816-63ec-4179-abca-66372bbfb04c,1,0,0165f721-b011-4524-bfd5-81e35092f2be,0165f721-b011-4524-bfd5-81e35092f2be,1,0,e74925d4-1979-4600-8560-0932d26450ad,e74925d4-1979-4600-8560-0932d26450ad,1,0,aa108131-151d-4356-8a24-345e4ec74281,aa108131-151d-4356-8a24-345e4ec74281,1,0,284b77a8-d9f4-44c4-a2dc-91c1f8bd5808,284b77a8-d9f4-44c4-a2dc-91c1f8bd5808,1,0,e3251f1a-3c80-4c86-9960-270920bd512f,e3251f1a-3c80-4c86-9960-270920bd512f,1,0,3c3d5474-977b-4df9-88de-042e997bd10d,3c3d5474-977b-4df9-88de-042e997bd10d,1,0,4b88d172-5a44-4011-bb38-e94bf7a9c879,4b88d172-5a44-4011-bb38-e94bf7a9c879,1,0,3bced2d4-e3d7-4489-a26d-f84620b096f4,3bced2d4-e3d7-4489-a26d-f84620b096f4,1,0,6d015113-1e32-4f5e-aacd-8134d7307125,6d015113-1e32-4f5e-aacd-8134d7307125,1,0,58230238-d2f2-422e-90cb-de355996eb19,58230238-d2f2-422e-90cb-de355996eb19,1,0,3d907678-628d-4fb2-85c2-149839024c08,3d907678-628d-4fb2-85c2-149839024c08,1,0,71384d10-6acf-4139-b766-cb8b5796f1a7,71384d10-6acf-4139-b766-cb8b5796f1a7,1,0,a8f149d7-e9bc-4695-b4f4-88434e31aafb,a8f149d7-e9bc-4695-b4f4-88434e31aafb,1,0,10dcbcc6-7793-4da7-a9a5-e4f124209d3e,10dcbcc6-7793-4da7-a9a5-e4f124209d3e,1,0,11ba510f-cb57-43d0-9897-c49e10b67ccd,11ba510f-cb57-43d0-9897-c49e10b67ccd,1,0,9d92af67-c88d-4429-9e85-0b5bf04c4b79,9d92af67-c88d-4429-9e85-0b5bf04c4b79,1,0,b009bc99-ea12-46db-a7f8-cb3e285b20d0,b009bc99-ea12-46db-a7f8-cb3e285b20d0,1,0,43523bbb-c923-4a20-bcb5-50d30cc826ee,43523bbb-c923-4a20-bcb5-50d30cc826ee,1,0,c89d9aad-3364-45df-88b5-b23ae76edbba,c89d9aad-3364-45df-88b5-b23ae76edbba,1,0,9a2f2cd1-4c9f-460b-b3b7-64706a0164ab,9a2f2cd1-4c9f-460b-b3b7-64706a0164ab,1,0,7e4b9dce-e332-4d35-8b5f-d3f88918989d,7e4b9dce-e332-4d35-8b5f-d3f88918989d,1,0,96fe619a-b819-4f96-9788-e1f4ef57833a,96fe619a-b819-4f96-9788-e1f4ef57833a,1,0,94dff2da-f721-411a-9fc0-5d013b685dcc,94dff2da-f721-411a-9fc0-5d013b685dcc,1,0,9343fc5f-7b08-4be5-8cd5-dbed635b819d,9343fc5f-7b08-4be5-8cd5-dbed635b819d,1,0,99e87e66-1b07-451b-a476-f5213cbd7150,99e87e66-1b07-451b-a476-f5213cbd7150,1,0,c3317f75-f6ad-41f6-97f1-77074c3ff62a,c3317f75-f6ad-41f6-97f1-77074c3ff62a,1,0,8800dec9-84f8-4643-8742-1d76fe575f58,8800dec9-84f8-4643-8742-1d76fe575f58,1,0,62903794-3b41-4d21-b800-1c26dbeda3ce,62903794-3b41-4d21-b800-1c26dbeda3ce,1,0,9bda4a0b-e8a7-4acf-9f07-4033b3a84ebc,9bda4a0b-e8a7-4acf-9f07-4033b3a84ebc,1,0,4ba2e55e-29bc-4fbe-83e8-8bfa36abfdab,4ba2e55e-29bc-4fbe-83e8-8bfa36abfdab,1,0,93de88de-0069-4aa8-96b2-d5709e4def2f,93de88de-0069-4aa8-96b2-d5709e4def2f,1,0,9f94fadf-ac9d-4e57-9fe4-41ce8cfbec6a,9f94fadf-ac9d-4e57-9fe4-41ce8cfbec6a,1,0,12d4ffc8-592e-42a7-b8c6-20bd58f6da90,12d4ffc8-592e-42a7-b8c6-20bd58f6da90,1,0,3a8d9010-8785-4d8d-b908-b821d7d681c9,3a8d9010-8785-4d8d-b908-b821d7d681c9,1,0,2568a935-ea49-4b99-aa9c-de27de6a0e81,2568a935-ea49-4b99-aa9c-de27de6a0e81,1,0,de2bdd4f-93f2-4341-86d6-7082fc286a5c,de2bdd4f-93f2-4341-86d6-7082fc286a5c,1,0,ba96ec0e-931e-45be-a782-e68ba4fedddb,ba96ec0e-931e-45be-a782-e68ba4fedddb,1,0,9af5882f-3a42-4fae-83df-6aa8de577112,9af5882f-3a42-4fae-83df-6aa8de577112,1,0,79bc5e39-3017-48bf-8e42-fa34e8b581ef,79bc5e39-3017-48bf-8e42-fa34e8b581ef,1,0,fe6e207f-d306-4470-8441-ffd3f3710d31,fe6e207f-d306-4470-8441-ffd3f3710d31,1,0,7451af80-7387-4e8d-a3da-2ae0540c3fd4,7451af80-7387-4e8d-a3da-2ae0540c3fd4,1,0,1c1e01f2-b2b3-480d-ae51-2db27b82dedd,1c1e01f2-b2b3-480d-ae51-2db27b82dedd,1,0,df459525-4e4d-4819-b996-5a6379b22a88,df459525-4e4d-4819-b996-5a6379b22a88,1,0,ed1d69f4-b09f-430a-bb2e-a23fe4dedf6b,ed1d69f4-b09f-430a-bb2e-a23fe4dedf6b,1,0,e67b4a32-4bac-450e-be6d-88c262383f31,e67b4a32-4bac-450e-be6d-88c262383f31,1,0,8b83bb54-4c23-4bd8-bd00-374a7a101cfa,8b83bb54-4c23-4bd8-bd00-374a7a101cfa,1,0,6c4c3eca-8b02-451b-af52-93073c3da146,6c4c3eca-8b02-451b-af52-93073c3da146,1,0,095c281c-3903-465d-baea-af1e6abf8019,095c281c-3903-465d-baea-af1e6abf8019,1,0,440d115d-a769-427e-891a-88d65fba2057,440d115d-a769-427e-891a-88d65fba2057,1,0,f7932210-027e-4fad-b7f7-3530789ce803,f7932210-027e-4fad-b7f7-3530789ce803,1,0,7bbfd95e-39a1-485b-930f-c9210c18dcd0,7bbfd95e-39a1-485b-930f-c9210c18dcd0,1,0,4975d3d6-b5a2-41c6-973b-6817013a388d,4975d3d6-b5a2-41c6-973b-6817013a388d,1,0,18ebc799-9724-4ffb-855e-b09a0723869e,18ebc799-9724-4ffb-855e-b09a0723869e,1,0,a06b8ef5-83e6-4fc6-91e1-256004134d69,a06b8ef5-83e6-4fc6-91e1-256004134d69,1,0,1d6a68ec-917f-4c3b-b970-797a6921cbc9,1d6a68ec-917f-4c3b-b970-797a6921cbc9,1,0,ae29eb40-5c8f-4ab4-8556-f98d45e8effe,ae29eb40-5c8f-4ab4-8556-f98d45e8effe,1,0,5b663988-3599-46dc-8d59-4c82ceac537c,5b663988-3599-46dc-8d59-4c82ceac537c,1,0,0f5f136c-688b-491e-a72b-3d9c2e609f0e,0f5f136c-688b-491e-a72b-3d9c2e609f0e,1,0,5573b405-6ac4-4632-b8d6-5d1cbdb63b97,5573b405-6ac4-4632-b8d6-5d1cbdb63b97,1,0,679cc0df-df5c-4c33-8c64-c0b6cee39116,679cc0df-df5c-4c33-8c64-c0b6cee39116,1,0,b156752b-f25c-4f35-9474-8ac3636597f5,b156752b-f25c-4f35-9474-8ac3636597f5,1,0,b67b872e-236a-4ea7-9838-0827234867b4,b67b872e-236a-4ea7-9838-0827234867b4,1,0,1e5ced23-48a7-4f3c-aa3b-78399a2b9e2b,1e5ced23-48a7-4f3c-aa3b-78399a2b9e2b,1,0,ce422d4f-1221-4ebf-a801-975a3220a226,ce422d4f-1221-4ebf-a801-975a3220a226,1,0,8735949b-f259-48b9-97e9-a81dfc7dcc8d,8735949b-f259-48b9-97e9-a81dfc7dcc8d,1,0,b8810612-dc7a-4a45-a83c-163a8669b578,b8810612-dc7a-4a45-a83c-163a8669b578,1,0,00e4dc17-b984-4f45-8b42-2e6a7a5dbced,00e4dc17-b984-4f45-8b42-2e6a7a5dbced,1,0,349c3dc3-0729-41f3-983f-3b13170c6509,349c3dc3-0729-41f3-983f-3b13170c6509,1,0,8281df26-4bde-47ba-926e-f22a8042bf1f,8281df26-4bde-47ba-926e-f22a8042bf1f,1,0,7278fb66-1d48-4c1d-bd15-425f78ad0c32,7278fb66-1d48-4c1d-bd15-425f78ad0c32,1,0,6893007f-8354-4b3b-b205-7c7d385cbde0,6893007f-8354-4b3b-b205-7c7d385cbde0,1,0,d74365a3-b434-41d0-84a7-543c336b5880,d74365a3-b434-41d0-84a7-543c336b5880,1,0,3d42502a-5705-49d7-b4ed-29edbd6306bc,3d42502a-5705-49d7-b4ed-29edbd6306bc,1,0,221e24e6-b31c-45b6-8835-2ad08d595c5f,221e24e6-b31c-45b6-8835-2ad08d595c5f,1,0,fd0fa6c9-1f42-4907-a266-fe7b6847e58a,fd0fa6c9-1f42-4907-a266-fe7b6847e58a,1,0,2e8cbcd7-f5b5-471e-863a-e09b4bc8e163,2e8cbcd7-f5b5-471e-863a-e09b4bc8e163,1,0,55956063-b227-4c74-8d9c-4a62b4f0dbc7,55956063-b227-4c74-8d9c-4a62b4f0dbc7,1,0,b6871b83-7269-43a9-b9a6-a195ff93365d,b6871b83-7269-43a9-b9a6-a195ff93365d,1,0,7dcd627c-16f6-41f9-b474-590ad1c7d2ed,7dcd627c-16f6-41f9-b474-590ad1c7d2ed,1,0,0cf89f30-e702-4c9e-8af4-888634463b99,0cf89f30-e702-4c9e-8af4-888634463b99,1,0,77f890ac-3c9c-4043-a5b7-12158772bcf5,77f890ac-3c9c-4043-a5b7-12158772bcf5,1,0,2bc734f9-8c0d-473a-b1c3-340395069501,2bc734f9-8c0d-473a-b1c3-340395069501,1,0,316c3933-21dd-4e8a-9450-0900e85ef7e2,316c3933-21dd-4e8a-9450-0900e85ef7e2,1,0,994fe78b-9f61-4aaf-9355-fafcae6b816d,994fe78b-9f61-4aaf-9355-fafcae6b816d,1,0,8448f07b-751b-4670-b44c-3564e81e5cdc,8448f07b-751b-4670-b44c-3564e81e5cdc,1,0,17aadd5f-cda2-4785-a07f-3ab4b04434a6,17aadd5f-cda2-4785-a07f-3ab4b04434a6,1,0,71bc35e6-0fec-4e54-af2d-23d1357d1c3b,71bc35e6-0fec-4e54-af2d-23d1357d1c3b,1,0,1832336e-32f6-42c4-9087-8614ead52bb3,1832336e-32f6-42c4-9087-8614ead52bb3,1,0,ff9f7b5c-70f4-4eed-8216-64448e7da76f,ff9f7b5c-70f4-4eed-8216-64448e7da76f,1,0,44ac2869-990d-4cac-a14b-c1a28854341e,44ac2869-990d-4cac-a14b-c1a28854341e,1,0,d5df31c3-89f9-469c-80a9-fb4706d30bc4,d5df31c3-89f9-469c-80a9-fb4706d30bc4,1,0,e73a6a9d-8ddd-4531-9f17-745117d9da9b,e73a6a9d-8ddd-4531-9f17-745117d9da9b,1,0,9dd4e17c-d10b-435e-8665-08997edc3e7e,9dd4e17c-d10b-435e-8665-08997edc3e7e,1,0,cafd44e1-8509-4550-8329-ff8cab0c31ae,cafd44e1-8509-4550-8329-ff8cab0c31ae,1,0,ee0412d3-58e7-4715-8774-d49778e1ef73,ee0412d3-58e7-4715-8774-d49778e1ef73,1,0,ea31df21-1402-417a-9788-b17a7116e842,ea31df21-1402-417a-9788-b17a7116e842,1,0,7a93efb9-62bb-437a-8095-b26a2c8ce8ed,7a93efb9-62bb-437a-8095-b26a2c8ce8ed,1,0,e964753f-7f4c-4f9f-bd17-cdac317c1d35,e964753f-7f4c-4f9f-bd17-cdac317c1d35,1,0,20c2aba0-e2b2-4e4f-9d48-1515c0ae7b4d,20c2aba0-e2b2-4e4f-9d48-1515c0ae7b4d,1,0,43c22498-3fd6-4038-a291-05f0db9ab66a,43c22498-3fd6-4038-a291-05f0db9ab66a,1,0,4ffc9d16-c450-4ecb-b8f6-9ec6fe37fc75,4ffc9d16-c450-4ecb-b8f6-9ec6fe37fc75,1,0,ee6e5e56-5848-46b6-89bf-b9345a57d94c,ee6e5e56-5848-46b6-89bf-b9345a57d94c,1,0,8817c872-bdee-4577-bcc3-4046edc72803,8817c872-bdee-4577-bcc3-4046edc72803,1,0,5b88c214-4e4e-45c2-b8c5-14eb852e9900,5b88c214-4e4e-45c2-b8c5-14eb852e9900,1,0,105cd740-1f60-45e1-871c-adeecd291b0d,105cd740-1f60-45e1-871c-adeecd291b0d,1,0,95aec7d2-179b-4ea3-a3df-3d737b713564,95aec7d2-179b-4ea3-a3df-3d737b713564,1,0,4bd1cae4-d5b5-444e-9cf5-67a969714293,4bd1cae4-d5b5-444e-9cf5-67a969714293,1,0,b1a330d7-9b88-44e9-aba6-41ce5e5e669c,b1a330d7-9b88-44e9-aba6-41ce5e5e669c,1,0,f279a625-b88f-43b4-bce9-de1186fe7d7e,f279a625-b88f-43b4-bce9-de1186fe7d7e,1,0,99fc224a-2a61-441a-85e9-d69df6aa8b5e,99fc224a-2a61-441a-85e9-d69df6aa8b5e,1,0,a528c26f-3ceb-4ae4-8420-edfbdea6e1ac,a528c26f-3ceb-4ae4-8420-edfbdea6e1ac,1,0,d009782b-d73e-42d1-9979-2cbaf20ee98e,d009782b-d73e-42d1-9979-2cbaf20ee98e,1,0,1ef6282c-ae81-4d76-8e3e-99fec58fc7bd,1ef6282c-ae81-4d76-8e3e-99fec58fc7bd,1,0,88d8edf7-654f-4627-b68d-c7e929726da6,88d8edf7-654f-4627-b68d-c7e929726da6,1,0,483720db-6c9e-4179-b5c7-56159c9b6073,483720db-6c9e-4179-b5c7-56159c9b6073,1,0,1725c619-9c4a-40ac-9044-00fee71945a4,1725c619-9c4a-40ac-9044-00fee71945a4,1,0,45a85e25-7c33-4ff5-87a0-2a0b4cda8130,45a85e25-7c33-4ff5-87a0-2a0b4cda8130,1,0,e95b126d-797d-4071-b7b4-b14aaf595f2d,e95b126d-797d-4071-b7b4-b14aaf595f2d,1,0,9241ea3c-633f-4469-9e70-c5a20e464da8,9241ea3c-633f-4469-9e70-c5a20e464da8,1,0,bbadbe1b-cb33-4cc5-84c8-a4fdfc8a2247,bbadbe1b-cb33-4cc5-84c8-a4fdfc8a2247,1,0,961ae0fb-7f7b-414d-8fbf-32b893b41085,961ae0fb-7f7b-414d-8fbf-32b893b41085,1,0,10adf8c8-6f5f-477f-b244-4452b774b766,10adf8c8-6f5f-477f-b244-4452b774b766,1,0,ac9dcb8c-d4f5-4f0d-affb-e4187eafdf14,ac9dcb8c-d4f5-4f0d-affb-e4187eafdf14,1,0,04ec5e44-8469-4e9c-8021-83d258f2ec54,04ec5e44-8469-4e9c-8021-83d258f2ec54,1,0,cff36ede-0bd1-424b-8c75-b9695133f32e,cff36ede-0bd1-424b-8c75-b9695133f32e,1,0,9d872d99-eac7-43ee-8ce2-c9d31a76bd75,9d872d99-eac7-43ee-8ce2-c9d31a76bd75,1,0,77e5bd01-35f3-4072-bc7a-8730e6dcbab3,77e5bd01-35f3-4072-bc7a-8730e6dcbab3,1,0,58b33683-1916-4aef-9b98-5569ef7782ed,58b33683-1916-4aef-9b98-5569ef7782ed,1,0,d3e1f622-f438-4cad-94ae-0272f51610f7,d3e1f622-f438-4cad-94ae-0272f51610f7,1,0,8569cd73-d40d-4d92-83e0-8ece0c03a86a,8569cd73-d40d-4d92-83e0-8ece0c03a86a,1,0,9ebe2809-be6b-4c91-9443-b237fb7ad43c,9ebe2809-be6b-4c91-9443-b237fb7ad43c,1,0,bf29c091-de15-4cd4-be0e-a9785f97d444,bf29c091-de15-4cd4-be0e-a9785f97d444,1,0,6a675752-fd31-46a5-8a62-2a1ede437c68,6a675752-fd31-46a5-8a62-2a1ede437c68,1,0,060b2bb4-ca03-4da9-930f-7f91f6299a35,060b2bb4-ca03-4da9-930f-7f91f6299a35,1,0,394b1a1c-a7ae-41b7-a346-4bac99fa567d,394b1a1c-a7ae-41b7-a346-4bac99fa567d,1,0,9a5fa511-59e8-4a1b-a101-f276f0b7b261,9a5fa511-59e8-4a1b-a101-f276f0b7b261,1,0,ccfe4e36-80b6-419f-8bb3-c1046203d023,ccfe4e36-80b6-419f-8bb3-c1046203d023,1,0,94b2e060-53b7-4b40-af05-30bea3520330,94b2e060-53b7-4b40-af05-30bea3520330,1,0,0f634f7e-7d6b-43e4-8e5e-a31ed05898ea,0f634f7e-7d6b-43e4-8e5e-a31ed05898ea,1,0,41b0dabd-85a3-4819-84dd-371eaf4f996e,41b0dabd-85a3-4819-84dd-371eaf4f996e,1,0,86a5ba4d-0681-4ddc-a505-0f537528e1a3,86a5ba4d-0681-4ddc-a505-0f537528e1a3,1,0,12d936f5-932b-4561-b934-c8444808a450,12d936f5-932b-4561-b934-c8444808a450,1,0,2ccb06ca-9bb7-4b74-9a96-c109bb117984,2ccb06ca-9bb7-4b74-9a96-c109bb117984,1,0,ac1a661d-db18-4576-80a9-a19d4140c05e,ac1a661d-db18-4576-80a9-a19d4140c05e,1,0,acd89f6c-a25f-47b9-ac21-036bfafcc0fc,acd89f6c-a25f-47b9-ac21-036bfafcc0fc,1,0,c3ffeb09-121b-4d77-9c15-def4648b4f3c,c3ffeb09-121b-4d77-9c15-def4648b4f3c,1,0,c2de0724-04c1-4adb-b62a-b7ba727dbe67,c2de0724-04c1-4adb-b62a-b7ba727dbe67,1,0,4ae26777-69ff-4a55-942b-0bad8ab7a70a,4ae26777-69ff-4a55-942b-0bad8ab7a70a,1,0,a0d8fb0a-0e90-4140-8687-e249b153dc66,a0d8fb0a-0e90-4140-8687-e249b153dc66,1,0,917c6f60-2a07-4587-9496-d393aff93953,917c6f60-2a07-4587-9496-d393aff93953,1,0,4bac50a2-762a-44e6-b8c5-3b09ef1a3f5e,4bac50a2-762a-44e6-b8c5-3b09ef1a3f5e,1,0,9fe72d73-4c95-47e0-bf92-dcb714d747c6,9fe72d73-4c95-47e0-bf92-dcb714d747c6,1,0,fe00e64f-2fa9-44a7-9bd7-854ebb6c0185,fe00e64f-2fa9-44a7-9bd7-854ebb6c0185,1,0,4d84bb11-e06e-4ed9-915b-76ee0e385a8b,4d84bb11-e06e-4ed9-915b-76ee0e385a8b,1,0,2b94076d-39ee-45ad-9ba5-435115cf5d4f,2b94076d-39ee-45ad-9ba5-435115cf5d4f,1,0,72ace16c-e90a-4d05-bc23-4351d4c87683,72ace16c-e90a-4d05-bc23-4351d4c87683,1,0,bd86e378-84bb-486a-be7b-319a3fe3b70b,bd86e378-84bb-486a-be7b-319a3fe3b70b,1,0,ef3bc279-6721-4949-8dc0-f96141f7f05c,ef3bc279-6721-4949-8dc0-f96141f7f05c,1,0,f81c7e21-48ad-4b64-975d-e62d34c7235a,f81c7e21-48ad-4b64-975d-e62d34c7235a,1,0,d0523c14-585e-45d3-9735-891235631004,d0523c14-585e-45d3-9735-891235631004,1,0,b6f8bc3e-f0cd-43ef-b060-d701cd446197,b6f8bc3e-f0cd-43ef-b060-d701cd446197,1,0,4f10e5f9-6cfd-4fa9-9c72-d19a484a796c,4f10e5f9-6cfd-4fa9-9c72-d19a484a796c,1,0,b94e805f-e1ab-4870-b855-98aa401864b2,b94e805f-e1ab-4870-b855-98aa401864b2,1,0,ff8eedeb-fc3e-4bee-852b-6da6d59ff38c,ff8eedeb-fc3e-4bee-852b-6da6d59ff38c,1,0,a98bd18f-ccda-41a2-a1b2-8b37cc1f6c36,a98bd18f-ccda-41a2-a1b2-8b37cc1f6c36,1,0,62f9fe19-3d64-4506-a0bc-dbfe47b4df64,62f9fe19-3d64-4506-a0bc-dbfe47b4df64,1,0,45af8f5d-d505-466b-a798-19f2219a180c,45af8f5d-d505-466b-a798-19f2219a180c,1,0,8a8229bc-f70a-4434-bacc-8a81fc58154b,8a8229bc-f70a-4434-bacc-8a81fc58154b,1,0,6324ad14-82ca-467b-b6b7-8d5f6049ca65,6324ad14-82ca-467b-b6b7-8d5f6049ca65,1,0,273446f0-f28b-4ce2-874c-3c6a57299b71,273446f0-f28b-4ce2-874c-3c6a57299b71,1,0,eb2f7449-ee42-43ec-b59c-3e07a6e3c139,eb2f7449-ee42-43ec-b59c-3e07a6e3c139,1,0,f8a7913a-2c64-47e1-8ae9-622fc6e9477e,f8a7913a-2c64-47e1-8ae9-622fc6e9477e,1,0,9b46a2b4-223d-4527-a94e-37ecd4fe72d7,9b46a2b4-223d-4527-a94e-37ecd4fe72d7,1,0,7a4e17bf-3649-4982-a9c6-5982390f1f1d,7a4e17bf-3649-4982-a9c6-5982390f1f1d,1,0,722be6e0-2698-431b-9206-777a36e6742f,722be6e0-2698-431b-9206-777a36e6742f,1,0,75bb0122-26bd-40be-8de8-7a57680c85ae,75bb0122-26bd-40be-8de8-7a57680c85ae,1,0,5e22429f-9ec0-4943-bf80-1becc4b8e5cb,5e22429f-9ec0-4943-bf80-1becc4b8e5cb,1,0,0153e60e-daca-48ac-b1c6-adecc89f579e,0153e60e-daca-48ac-b1c6-adecc89f579e,1,0,1ed4cf25-19f0-49f5-96a0-0ffe13adfe35,1ed4cf25-19f0-49f5-96a0-0ffe13adfe35,1,0,a896bc34-30a6-48b6-acfc-786c24c186bd,a896bc34-30a6-48b6-acfc-786c24c186bd,1,0,3867f4cb-bf54-42fb-8ea6-ca51d7cd6c91,3867f4cb-bf54-42fb-8ea6-ca51d7cd6c91,1,0,da8ae00a-7207-4ceb-b739-9114888c5b27,da8ae00a-7207-4ceb-b739-9114888c5b27,1,0,a6be80f7-d6aa-4371-a180-3d355080d849,a6be80f7-d6aa-4371-a180-3d355080d849,1,0,b37722c3-e29f-4a40-b4eb-0317919fc7a5,b37722c3-e29f-4a40-b4eb-0317919fc7a5,1,0,b1b1cd90-094d-428b-a6bc-156521c1c54d,b1b1cd90-094d-428b-a6bc-156521c1c54d,1,0,4f79ef7c-79be-4a69-acc0-bd591c712d03,4f79ef7c-79be-4a69-acc0-bd591c712d03,1,0,a0dd2129-d3a1-4bca-b555-72b065be1c13,a0dd2129-d3a1-4bca-b555-72b065be1c13,1,0,dc5e8229-e301-477c-846e-2e7078e3ee5f,dc5e8229-e301-477c-846e-2e7078e3ee5f,1,0,24836e44-8fdd-44bd-91d8-4ddab2caf485,24836e44-8fdd-44bd-91d8-4ddab2caf485,1,0,3727bcfe-4d75-4270-86e7-4a66ab14866c,3727bcfe-4d75-4270-86e7-4a66ab14866c,1,0,870a4708-0b5a-4fa3-9978-d94b161d289a,870a4708-0b5a-4fa3-9978-d94b161d289a,1,0,30e9f89d-7b94-488e-9963-886c271b1af7,30e9f89d-7b94-488e-9963-886c271b1af7,1,0,91af7a52-0825-4af5-94df-cc501e0123cd,91af7a52-0825-4af5-94df-cc501e0123cd,1,0,1c2cc78a-2ae6-4996-a743-7b55aecbe84c,1c2cc78a-2ae6-4996-a743-7b55aecbe84c,1,0,9292bf81-5668-4d52-a4ec-a93bc4b0ad3b,9292bf81-5668-4d52-a4ec-a93bc4b0ad3b,1,0,9693cc78-852e-445b-a7d2-f1689fa9eeec,9693cc78-852e-445b-a7d2-f1689fa9eeec,1,0,eb33e555-db41-462a-a45d-c7e0945cece8,eb33e555-db41-462a-a45d-c7e0945cece8,1,0,9cfd517c-1008-483a-9f65-7d15feb2cefc,9cfd517c-1008-483a-9f65-7d15feb2cefc,1,0,d66adc5e-25a3-472e-b0a4-5f22f88d7a0f,d66adc5e-25a3-472e-b0a4-5f22f88d7a0f,1,0,ae48d48f-cd39-4821-a4b7-9394b2a77ef6,ae48d48f-cd39-4821-a4b7-9394b2a77ef6,1,0,f34d3a69-533e-49df-b91d-f7f7f49c5fb1,f34d3a69-533e-49df-b91d-f7f7f49c5fb1,1,0,1d76f613-f4f6-4772-8c16-d97b3104a553,1d76f613-f4f6-4772-8c16-d97b3104a553,1,0,3e58d607-b906-449f-b044-9c130a487b86,3e58d607-b906-449f-b044-9c130a487b86,1,0,7a911212-7fde-4ea8-a1fa-229116b60895,7a911212-7fde-4ea8-a1fa-229116b60895,1,0,f4580043-5bc2-4295-8523-909302009b44,f4580043-5bc2-4295-8523-909302009b44,1,0,dc8af632-a5a4-4270-ba5f-2d3ba506f7e3,dc8af632-a5a4-4270-ba5f-2d3ba506f7e3,1,0,81936ac2-32fe-4e14-897b-0aba92b90c05,81936ac2-32fe-4e14-897b-0aba92b90c05,1,0,9f88e355-3f8f-4fcd-b45f-39c3d45490f5,9f88e355-3f8f-4fcd-b45f-39c3d45490f5,1,0,2e233e3c-687c-4516-87c6-5d6c5f9f04a2,2e233e3c-687c-4516-87c6-5d6c5f9f04a2,1,0,2afdcde7-46ef-4624-8b84-c6381ff2f3a4,2afdcde7-46ef-4624-8b84-c6381ff2f3a4,1,0,2d279d24-1953-4a2f-8206-77481d2fd718,2d279d24-1953-4a2f-8206-77481d2fd718,1,0,aa6abffe-1b09-48f9-9aee-4f234db6b2a2,aa6abffe-1b09-48f9-9aee-4f234db6b2a2,1,0,0a920200-77d0-42ea-abf6-0d40d63289b0,0a920200-77d0-42ea-abf6-0d40d63289b0,1,0,c850bafc-4073-44ef-b148-194f87c46f0e,c850bafc-4073-44ef-b148-194f87c46f0e,1,0,6d1dd726-815d-476e-b668-95cff4182e54,6d1dd726-815d-476e-b668-95cff4182e54,1,0,12f4a0ed-4798-4467-8834-de3eb385e22d,12f4a0ed-4798-4467-8834-de3eb385e22d,1,0,5710809e-4c41-42ab-952f-f7778fe9be0f,5710809e-4c41-42ab-952f-f7778fe9be0f,1,0,0811f6c2-6bb3-43b8-9944-910adc4c6f23,0811f6c2-6bb3-43b8-9944-910adc4c6f23,1,0,c1646df4-9fce-44f0-9cc3-a5dab0bbef2e,c1646df4-9fce-44f0-9cc3-a5dab0bbef2e,1,0,c86b02ab-3532-4f4c-b993-e237ed0d4d12,c86b02ab-3532-4f4c-b993-e237ed0d4d12,1,0,ac028c56-b2a8-4a9b-a325-554c636f838e,ac028c56-b2a8-4a9b-a325-554c636f838e,1,0,0ed85f4c-c002-49b6-99b9-0c3c4b7f940e,0ed85f4c-c002-49b6-99b9-0c3c4b7f940e,1,0,f99e98ac-cd94-4989-8c02-ef8b323c6815,f99e98ac-cd94-4989-8c02-ef8b323c6815,1,0,e2562347-4549-4111-862e-86c20a6daade,e2562347-4549-4111-862e-86c20a6daade,1,0,b270fc64-15c6-41ed-ad09-44c833ca7c41,b270fc64-15c6-41ed-ad09-44c833ca7c41,1,0,4c3312fd-5613-4e9b-ae7c-572fa1887ded,4c3312fd-5613-4e9b-ae7c-572fa1887ded,1,0,6c8c9618-287a-41ab-890c-60250925ad52,6c8c9618-287a-41ab-890c-60250925ad52,1,0,55b9650e-098b-4d44-9fb5-d525b46f014b,55b9650e-098b-4d44-9fb5-d525b46f014b,1,0,5b7b32ec-3d0e-42e9-bd13-5d2b8cc1942d,5b7b32ec-3d0e-42e9-bd13-5d2b8cc1942d,1,0,bc55dc06-a769-40be-9c99-0794bdd2dbea,bc55dc06-a769-40be-9c99-0794bdd2dbea,1,0,7861e179-96d2-422f-a7c2-b38b59074956,7861e179-96d2-422f-a7c2-b38b59074956,1,0,0b2416bc-f322-45b3-8c3f-2c8a206c55a1,0b2416bc-f322-45b3-8c3f-2c8a206c55a1,1,0,3797b4c6-e336-4cbe-8d0b-0902e1247b42,3797b4c6-e336-4cbe-8d0b-0902e1247b42,1,0,67ebc493-d29a-4614-890a-feb8b5bd884b,67ebc493-d29a-4614-890a-feb8b5bd884b,1,0,dc79e5e2-37d1-4f19-9500-15c1d9be10eb,dc79e5e2-37d1-4f19-9500-15c1d9be10eb,1,0,dba6cb38-79c6-4060-87c5-a993548f36c4,dba6cb38-79c6-4060-87c5-a993548f36c4,1,0,6b44227a-e226-4bcb-8638-06b49f830669,6b44227a-e226-4bcb-8638-06b49f830669,1,0,f2406400-87e9-4df2-bcd3-8f1e3ad62088,f2406400-87e9-4df2-bcd3-8f1e3ad62088,1,0,ecaacedb-bf2d-4736-a9e1-fa89cda85ee6,ecaacedb-bf2d-4736-a9e1-fa89cda85ee6,1,0,a5623e87-3102-4521-b4ab-c41bf2403a1a,a5623e87-3102-4521-b4ab-c41bf2403a1a,1,0,599b1692-5f4e-42ef-ae1a-822ff527a415,599b1692-5f4e-42ef-ae1a-822ff527a415,1,0,ee9abe8a-b3a2-48a9-9157-ea537e83b7e7,ee9abe8a-b3a2-48a9-9157-ea537e83b7e7,1,0,4bb7372a-87a9-426e-b09f-fc0110455b10,4bb7372a-87a9-426e-b09f-fc0110455b10,1,0,ac853a0f-c185-4cdb-9f09-c921770937b5,ac853a0f-c185-4cdb-9f09-c921770937b5,1,0,920a7940-4d12-476d-a909-2231787839a9,920a7940-4d12-476d-a909-2231787839a9,1,0,168fce48-2413-45fc-ad21-9b465121d81b,168fce48-2413-45fc-ad21-9b465121d81b,1,0,d65c8992-aabc-4b67-9893-01862231ebe1,d65c8992-aabc-4b67-9893-01862231ebe1,1,0,23f70675-6a05-4b50-ad68-c55ddc93e857,23f70675-6a05-4b50-ad68-c55ddc93e857,1,0,b3aeeb3c-622d-4e0c-8c13-199f0e431a7d,b3aeeb3c-622d-4e0c-8c13-199f0e431a7d,1,0,ad14c4d1-bc11-44b6-a32c-c00fb89a9ea5,ad14c4d1-bc11-44b6-a32c-c00fb89a9ea5,1,0,32eb2a75-ff35-4795-bf0c-12b1328441ee,32eb2a75-ff35-4795-bf0c-12b1328441ee,1,0,8e877990-a64c-4c45-91f1-007d47618cc7,8e877990-a64c-4c45-91f1-007d47618cc7,1,0,73c6640e-2fe6-4132-9237-d6f28cbacc1c,73c6640e-2fe6-4132-9237-d6f28cbacc1c,1,0,69489064-c131-4618-b31f-e6964d593f4a,69489064-c131-4618-b31f-e6964d593f4a,1,0,1731708f-53cb-4b00-b90e-f581b4baa845,1731708f-53cb-4b00-b90e-f581b4baa845,1,0,d4b0feca-c00a-4d48-9f23-d92277ea6483,d4b0feca-c00a-4d48-9f23-d92277ea6483,1,0,00b2a0b3-6af8-4ea4-aa38-d1e078d5cbff,00b2a0b3-6af8-4ea4-aa38-d1e078d5cbff,1,0,20f7fdd2-30f6-4a52-a63b-7d2c326c0e83,20f7fdd2-30f6-4a52-a63b-7d2c326c0e83,1,0,23cb5bc2-9638-4d1c-b4bc-d5297e271570,23cb5bc2-9638-4d1c-b4bc-d5297e271570,1,0,6e547ccb-6d5a-4f7c-aaf0-568c22d2c276,6e547ccb-6d5a-4f7c-aaf0-568c22d2c276,1,0,04b7389d-697d-4b0d-a239-ac8c674cc46f,04b7389d-697d-4b0d-a239-ac8c674cc46f,1,0,a1cf5173-2e86-4ed7-9a0b-1bd5e578326a,a1cf5173-2e86-4ed7-9a0b-1bd5e578326a,1,0,864cad61-8280-415d-8fe1-bcb39d56670a,864cad61-8280-415d-8fe1-bcb39d56670a,1,0,b106bd29-5dc7-44d7-94d0-00f61499392e,b106bd29-5dc7-44d7-94d0-00f61499392e,1,0,a4febff8-0566-4977-bf55-1d574568fe9f,a4febff8-0566-4977-bf55-1d574568fe9f,1,0,5199cc65-bed1-40b9-96fe-cf6d855a8b91,5199cc65-bed1-40b9-96fe-cf6d855a8b91,1,0,f518add9-5c26-4dac-ab2e-b30fe3fbd347,f518add9-5c26-4dac-ab2e-b30fe3fbd347,1,0,23f53317-7aa8-4816-8a69-3d39d5e76da0,23f53317-7aa8-4816-8a69-3d39d5e76da0,1,0,9ade5155-fa6d-4999-b019-a5e7e235a158,9ade5155-fa6d-4999-b019-a5e7e235a158,1,0,8b302c5e-b255-4cb5-94d9-0dfef4250097,8b302c5e-b255-4cb5-94d9-0dfef4250097,1,0,49d713b8-6a61-4bd1-9650-0de1869967d2,49d713b8-6a61-4bd1-9650-0de1869967d2,1,0,4738ffd0-3c3b-4e5f-8773-0c9a80efdfbf,4738ffd0-3c3b-4e5f-8773-0c9a80efdfbf,1,0,3d1bae2a-4dfd-48e5-bfe9-b7e30c8475f6,3d1bae2a-4dfd-48e5-bfe9-b7e30c8475f6,1,0,0f2ec7ac-6d3f-4fcf-af3d-b0bfaa187a4b,0f2ec7ac-6d3f-4fcf-af3d-b0bfaa187a4b,1,0,6d351276-2c04-4198-a3e4-865881c12f5c,6d351276-2c04-4198-a3e4-865881c12f5c,1,0,73b1d2e2-0eeb-45dc-8ca3-3bda594d6823,73b1d2e2-0eeb-45dc-8ca3-3bda594d6823,1,0,5c4abd61-2f29-499e-a2ca-d133e9eeeaea,5c4abd61-2f29-499e-a2ca-d133e9eeeaea,1,0,0ddeed48-b98a-47c3-84a2-2eac065be06c,0ddeed48-b98a-47c3-84a2-2eac065be06c,1,0,7987fe2c-d7cc-4fd2-ac4e-610bfb1ab6d2,7987fe2c-d7cc-4fd2-ac4e-610bfb1ab6d2,1,0,fc18d95e-a51d-45c0-83b0-09aeb2b5b03a,fc18d95e-a51d-45c0-83b0-09aeb2b5b03a,1,0,61b947a5-edca-43ca-82c4-5a7b529d8f82,61b947a5-edca-43ca-82c4-5a7b529d8f82,1,0,59eb6a7a-1d96-4985-8d8e-575162759415,59eb6a7a-1d96-4985-8d8e-575162759415,1,0,68564573-ed49-4519-a8b3-997865fe70a6,68564573-ed49-4519-a8b3-997865fe70a6,1,0,6c789969-d066-489d-ad88-92e2a5a6ec69,6c789969-d066-489d-ad88-92e2a5a6ec69,1,0,2a07d696-75d6-4a12-a310-30d6598b4a4c,2a07d696-75d6-4a12-a310-30d6598b4a4c,1,0,dde88f56-417c-4559-a893-85dc91e7e623,dde88f56-417c-4559-a893-85dc91e7e623,1,0,963eedab-6976-4a98-b9ad-b81f89239661,963eedab-6976-4a98-b9ad-b81f89239661,1,0,3370d43e-8e97-4411-8123-2bb2bcf60a75,3370d43e-8e97-4411-8123-2bb2bcf60a75,1,0,d9d377c9-406f-4bc9-8076-1f049348b816,d9d377c9-406f-4bc9-8076-1f049348b816,1,0,dcfcb108-3761-43d9-ad2a-29633bd1ae47,dcfcb108-3761-43d9-ad2a-29633bd1ae47,1,0,afde7867-15d3-43fa-b439-6d9e40df580b,afde7867-15d3-43fa-b439-6d9e40df580b,1,0,a676ff94-a0d1-4de9-8690-ec67f2c891d8,a676ff94-a0d1-4de9-8690-ec67f2c891d8,1,0,012bf716-3672-462e-b390-7bb4384ab4b1,012bf716-3672-462e-b390-7bb4384ab4b1,1,0,65342599-ff37-4f99-8e40-f05d87403bcf,65342599-ff37-4f99-8e40-f05d87403bcf,1,0,3a3f505a-7a50-4111-8029-5b9057fed232,3a3f505a-7a50-4111-8029-5b9057fed232,1,0,36baa776-83c4-413d-b70c-cbbc45e25662,36baa776-83c4-413d-b70c-cbbc45e25662,1,0,b65f9165-c20d-4053-8a0b-cff3f693b762,b65f9165-c20d-4053-8a0b-cff3f693b762,1,0,51af096b-687f-44f4-a0d8-306f670fc5ce,51af096b-687f-44f4-a0d8-306f670fc5ce,1,0,75972f88-aedd-4338-a3b5-320cd632a2e6,75972f88-aedd-4338-a3b5-320cd632a2e6,1,0,1363523a-929e-49ac-ae39-d43acf9f0478,1363523a-929e-49ac-ae39-d43acf9f0478,1,0,f6ff0bb8-c1fd-4eae-b919-6d10d4504f0c,f6ff0bb8-c1fd-4eae-b919-6d10d4504f0c,1,0,2876c476-8280-426d-8bf9-c93beda0ddd5,2876c476-8280-426d-8bf9-c93beda0ddd5,1,0,963e0813-4f6b-4d31-b66d-77125c47ce19,963e0813-4f6b-4d31-b66d-77125c47ce19,1,0,a720abc8-dcf0-4684-8d94-22d394a8e4df,a720abc8-dcf0-4684-8d94-22d394a8e4df,1,0,e40f53de-c27b-4e74-8241-f784d7ca5c84,e40f53de-c27b-4e74-8241-f784d7ca5c84,1,0,ef38b84d-277e-48c2-8826-330132eb6807,ef38b84d-277e-48c2-8826-330132eb6807,1,0,67a50910-059a-4724-84e0-c21bc3ac74c2,67a50910-059a-4724-84e0-c21bc3ac74c2,1,0,fdd83a89-a2fe-40d8-a531-a10bfeb36a1d,fdd83a89-a2fe-40d8-a531-a10bfeb36a1d,1,0,0d190f8b-87c5-4dd1-bcfb-609ec3a44f72,0d190f8b-87c5-4dd1-bcfb-609ec3a44f72,1,0,9e78a2b9-44fc-4971-801d-1ddd4bb09cfd,9e78a2b9-44fc-4971-801d-1ddd4bb09cfd,1,0,2c0d11fc-b927-4b5d-a16c-d60e69580824,2c0d11fc-b927-4b5d-a16c-d60e69580824,1,0,5251e744-666e-48a0-a5b4-9cef313c7631,5251e744-666e-48a0-a5b4-9cef313c7631,1,0,ebedc283-5eb0-459b-b686-f8643666b8b8,ebedc283-5eb0-459b-b686-f8643666b8b8,1,0,6a6afffd-cfed-4801-8b59-34d27e46565c,6a6afffd-cfed-4801-8b59-34d27e46565c,1,0,a469b12d-4537-419c-91e0-37abc9d31505,a469b12d-4537-419c-91e0-37abc9d31505,1,0,6f312bda-1f4d-48a6-bd95-f23f34f0ea4b,6f312bda-1f4d-48a6-bd95-f23f34f0ea4b,1,0,82c42232-531e-403f-8599-cc21a248fa2c,82c42232-531e-403f-8599-cc21a248fa2c,1,0,9104b791-9ac4-41ba-a7f0-9e609db3b578,9104b791-9ac4-41ba-a7f0-9e609db3b578,1,0,2d3721d1-816f-4e84-9df1-863cb269d83d,2d3721d1-816f-4e84-9df1-863cb269d83d,1,0,73554821-8ab5-44ab-a593-37ca10a1b777,73554821-8ab5-44ab-a593-37ca10a1b777,1,0,d5a98e02-e199-445e-8d53-11acd07f473f,d5a98e02-e199-445e-8d53-11acd07f473f,1,0,79db55d6-e916-4bde-b417-7d0a53bb85af,79db55d6-e916-4bde-b417-7d0a53bb85af,1,0,3084fb99-59cb-4338-ae37-0b1e8b333f01,3084fb99-59cb-4338-ae37-0b1e8b333f01,1,0,818a1fbf-17c1-44f9-8e20-27d4ceda549c,818a1fbf-17c1-44f9-8e20-27d4ceda549c,1,0,959a5d25-03e5-4911-bbb7-b93714db7eed,959a5d25-03e5-4911-bbb7-b93714db7eed,1,0,1d0b6a8d-9351-4ce2-85dd-6ac508c660c2,1d0b6a8d-9351-4ce2-85dd-6ac508c660c2,1,0,0b09cf2f-1759-4362-b997-29e09ac00445,0b09cf2f-1759-4362-b997-29e09ac00445,1,0,f6a9eb9c-a1c2-4114-b155-3ce94c7b7f20,f6a9eb9c-a1c2-4114-b155-3ce94c7b7f20,1,0,828ddf5d-ca09-4baf-897f-77d569e02a6b,828ddf5d-ca09-4baf-897f-77d569e02a6b,1,0,8856015c-a695-4b1a-99ef-770263f9dc4a,8856015c-a695-4b1a-99ef-770263f9dc4a,1,0,183ec2b5-e173-4885-9e26-1098ffa15020,183ec2b5-e173-4885-9e26-1098ffa15020,1,0,74702fdf-bfc5-4658-ba58-e39bcfbaa647,74702fdf-bfc5-4658-ba58-e39bcfbaa647,1,0,2f436ec3-6a04-4d2c-998a-c60ea875ca86,2f436ec3-6a04-4d2c-998a-c60ea875ca86,1,0,6a947b2d-3e6b-42c8-a9fd-4c5a71d600a9,6a947b2d-3e6b-42c8-a9fd-4c5a71d600a9,1,0,ae641a80-4ada-4592-ace9-29a82e6700e4,ae641a80-4ada-4592-ace9-29a82e6700e4,1,0,f0b0608c-178f-4dea-b461-0d8f00d79d30,f0b0608c-178f-4dea-b461-0d8f00d79d30,1,0,ed2dba0c-7fe3-4d24-b6a6-b104beadc286,ed2dba0c-7fe3-4d24-b6a6-b104beadc286,1,0,a4c98768-c9fc-4f95-b89b-bb1cb0e8fade,a4c98768-c9fc-4f95-b89b-bb1cb0e8fade,1,0,5546b9a9-a4fe-4a2b-9492-883bcb37a210,5546b9a9-a4fe-4a2b-9492-883bcb37a210,1,0,6fb76c5f-844f-4cbc-ae7c-4ac834fddfc9,6fb76c5f-844f-4cbc-ae7c-4ac834fddfc9,1,0,275a5772-8428-497a-81ef-c919f15fcccd,275a5772-8428-497a-81ef-c919f15fcccd,1,0,8df6e7e6-2a1e-4cf3-bdc9-60e52ea3f625,8df6e7e6-2a1e-4cf3-bdc9-60e52ea3f625,1,0,bf070420-9eb7-4372-96a6-b0d00ac3ce8c,bf070420-9eb7-4372-96a6-b0d00ac3ce8c,1,0,10336352-f3a1-4bc3-bdec-1a2eef15f176,10336352-f3a1-4bc3-bdec-1a2eef15f176,1,0,cacabf2f-6d1c-4c33-80c7-c27a5e757cc9,cacabf2f-6d1c-4c33-80c7-c27a5e757cc9,1,0,3b7c713e-81ae-4adc-9519-99c936599ef7,3b7c713e-81ae-4adc-9519-99c936599ef7,1,0,1c8ffbbd-035c-45cf-8ec8-dc5d26d7f673,1c8ffbbd-035c-45cf-8ec8-dc5d26d7f673,1,0,ecda2c4b-6411-4b47-ab59-1918bad5acdd,ecda2c4b-6411-4b47-ab59-1918bad5acdd,1,0,190bc52e-0d51-4dfc-9f16-99ed71ebfa75,190bc52e-0d51-4dfc-9f16-99ed71ebfa75,1,0,0c24858a-7e64-426f-9b59-392449aecaf5,0c24858a-7e64-426f-9b59-392449aecaf5,1,0,b1d61e28-f3dc-418b-b5df-f75622a4b980,b1d61e28-f3dc-418b-b5df-f75622a4b980,1,0,bec4c82f-4e76-4d16-bb4d-b6d9fa404c5d,bec4c82f-4e76-4d16-bb4d-b6d9fa404c5d,1,0,4033f86b-d250-475a-8837-071bf31664b0,4033f86b-d250-475a-8837-071bf31664b0,1,0,876e31ff-ab7b-4ea4-b491-161963727dd1,876e31ff-ab7b-4ea4-b491-161963727dd1,1,0,bb43995b-68b4-41a1-8458-e10a2d8925f1,bb43995b-68b4-41a1-8458-e10a2d8925f1,1,0,61730dd9-fed7-43ce-8f38-724cac8f3d08,61730dd9-fed7-43ce-8f38-724cac8f3d08,1,0,e6a494b8-27e7-46a6-9435-7be6e150a69e,e6a494b8-27e7-46a6-9435-7be6e150a69e,1,0,133dc852-59d3-4351-934d-8845f8a38431,133dc852-59d3-4351-934d-8845f8a38431,1,0,55dbaaf1-554d-46e2-b42a-ce6a8bf20dfb,55dbaaf1-554d-46e2-b42a-ce6a8bf20dfb,1,0,b67914a8-d483-4bed-bd4d-a4aadd4998a4,b67914a8-d483-4bed-bd4d-a4aadd4998a4,1,0,707a8a49-fec5-454c-9e80-c3da829d395c,707a8a49-fec5-454c-9e80-c3da829d395c,1,0,b5ea4aff-11be-4232-94a2-cb92801b6c49,b5ea4aff-11be-4232-94a2-cb92801b6c49,1,0,6f630213-c16c-421c-a160-09e3c729ab26,6f630213-c16c-421c-a160-09e3c729ab26,1,0,878c638c-7c84-4914-896a-d4fdf0d759ef,878c638c-7c84-4914-896a-d4fdf0d759ef,1,0,6065653e-b7a9-4033-9617-f64430c57d89,6065653e-b7a9-4033-9617-f64430c57d89,1,0,9ec63da6-1f53-417f-9c7d-6879eaa56a7e,9ec63da6-1f53-417f-9c7d-6879eaa56a7e,1,0,00d1d85b-c258-4f10-9d13-a99375a29fc1,00d1d85b-c258-4f10-9d13-a99375a29fc1,1,0,0544376f-461c-42c3-a102-e0ae65e3c0c6,0544376f-461c-42c3-a102-e0ae65e3c0c6,1,0,6df8d316-6ac3-4626-8951-1ad36d7049ed,6df8d316-6ac3-4626-8951-1ad36d7049ed,1,0,f211b418-899d-4220-a14b-4a7302183e46,f211b418-899d-4220-a14b-4a7302183e46,1,0,e499629a-69ed-46b4-be5d-7b1f2f6a11d4,e499629a-69ed-46b4-be5d-7b1f2f6a11d4,1,0,52ab6aea-e6a0-43f0-9cc8-f7c9126635cc,52ab6aea-e6a0-43f0-9cc8-f7c9126635cc,1,0,876b23bf-2f48-4916-ad0f-4de8306e1864,876b23bf-2f48-4916-ad0f-4de8306e1864,1,0,e983f539-e369-491e-9cee-510518187870,e983f539-e369-491e-9cee-510518187870,1,0,9a402a9c-a31f-4082-91d5-b4fe7576a5c2,9a402a9c-a31f-4082-91d5-b4fe7576a5c2,1,0,e99a1b17-0e37-489a-bc39-3dd2e23b0861,e99a1b17-0e37-489a-bc39-3dd2e23b0861,1,0,e7c63a25-c804-4bc4-a6f1-81009dd889e2,e7c63a25-c804-4bc4-a6f1-81009dd889e2,1,0,7ccd86cd-4294-4f6c-84f4-98e25e479f4d,7ccd86cd-4294-4f6c-84f4-98e25e479f4d,1,0,70e710c5-42df-465f-a9c5-8345c87e1f19,70e710c5-42df-465f-a9c5-8345c87e1f19,1,0,4c1576c4-b327-4ec1-87bc-662c5aba343b,4c1576c4-b327-4ec1-87bc-662c5aba343b,1,0,0f694ef1-4a97-4aed-ab4b-0b2c18ea7e17,0f694ef1-4a97-4aed-ab4b-0b2c18ea7e17,1,0,14facdfb-9835-4bb6-98a8-5a6ca9a5d2f8,14facdfb-9835-4bb6-98a8-5a6ca9a5d2f8,1,0,4492ac73-eb91-41f8-98f1-54c2b3ad212a,4492ac73-eb91-41f8-98f1-54c2b3ad212a,1,0,869b43fb-968f-4fe0-b945-5030c90a38f2,869b43fb-968f-4fe0-b945-5030c90a38f2,1,0,af071a52-212b-4131-98e6-81f6048a70e6,af071a52-212b-4131-98e6-81f6048a70e6,1,0,37210dde-9a2f-475c-8341-578ac99f0e17,37210dde-9a2f-475c-8341-578ac99f0e17,1,0,e5094d4f-ee61-4142-a97b-d96172350f65,e5094d4f-ee61-4142-a97b-d96172350f65,1,0,3a8fffb6-a732-440c-afb9-d1c699ea53b6,3a8fffb6-a732-440c-afb9-d1c699ea53b6,1,0,b0650787-8ff5-4407-b491-bcdc2f61fd58,b0650787-8ff5-4407-b491-bcdc2f61fd58,1,0,33dd6bba-0044-4e2f-ae9e-c8a26079ab2a,33dd6bba-0044-4e2f-ae9e-c8a26079ab2a,1,0,3f289f67-dfc7-4f2d-90e4-b47aff76ecdb,3f289f67-dfc7-4f2d-90e4-b47aff76ecdb,1,0,9aadad98-69f5-41ce-ad1c-0afd8c610d86,9aadad98-69f5-41ce-ad1c-0afd8c610d86,1,0,706a3db0-9d4f-4c08-91cd-3ccaa6d06d3b,706a3db0-9d4f-4c08-91cd-3ccaa6d06d3b,1,0,3d662173-e19d-4077-9a08-8c8899226e24,3d662173-e19d-4077-9a08-8c8899226e24,1,0,69fd1e6e-7302-4ca8-8419-ec567ae66bef,69fd1e6e-7302-4ca8-8419-ec567ae66bef,1,0,0eee931a-57bb-4844-8e6e-eaca342640a0,0eee931a-57bb-4844-8e6e-eaca342640a0,1,0,20c57e30-5856-4801-9e77-8006471d89f8,20c57e30-5856-4801-9e77-8006471d89f8,1,0,64eff9f4-c57b-40a0-bd83-7e371fd010ce,64eff9f4-c57b-40a0-bd83-7e371fd010ce,1,0,4a3fe393-8aea-4394-8c10-a234f1f191ad,4a3fe393-8aea-4394-8c10-a234f1f191ad,1,0,6f9a3d00-d935-4fa6-9fd2-14700226daff,6f9a3d00-d935-4fa6-9fd2-14700226daff,1,0,d792831c-698d-40c6-96c2-dd0ae6f30707,d792831c-698d-40c6-96c2-dd0ae6f30707,1,0,a1d91c5f-1acd-4b46-887e-d06e7260dd20,a1d91c5f-1acd-4b46-887e-d06e7260dd20,1,0,3fd26019-c464-4c73-b18e-0888740b1747,3fd26019-c464-4c73-b18e-0888740b1747,1,0,a21989bd-a57f-4969-be3b-d8b39ead4145,a21989bd-a57f-4969-be3b-d8b39ead4145,1,0,c4aee120-cdbb-4b48-a1c7-99cccbafb120,c4aee120-cdbb-4b48-a1c7-99cccbafb120,1,0,6b3e07d5-9299-4933-b3fa-c3cc5f5aa7c9,6b3e07d5-9299-4933-b3fa-c3cc5f5aa7c9,1,0,a3667b25-7c18-446d-a318-685a4fe4bf89,a3667b25-7c18-446d-a318-685a4fe4bf89,1,0,fd271670-bde6-4351-abec-eb82548c6c98,fd271670-bde6-4351-abec-eb82548c6c98,1,0,498b012b-bb63-490e-8100-1d33dc84b400,498b012b-bb63-490e-8100-1d33dc84b400,1,0,8103f12c-ed50-4052-8117-33b6d11ef620,8103f12c-ed50-4052-8117-33b6d11ef620,1,0,4f8653e4-3f58-4bad-8ded-424fe7b1d18a,4f8653e4-3f58-4bad-8ded-424fe7b1d18a,1,0,799b3dda-fbfc-4dea-a577-30321e64f4d5,799b3dda-fbfc-4dea-a577-30321e64f4d5,1,0,7c7857b6-90e8-4b3f-9902-fd81bf68d133,7c7857b6-90e8-4b3f-9902-fd81bf68d133,1,0,617de19c-bf01-4900-832a-c169e9faeb79,617de19c-bf01-4900-832a-c169e9faeb79,1,0,70b73fd0-f5dc-411e-9bbb-10a538e8281b,70b73fd0-f5dc-411e-9bbb-10a538e8281b,1,0,758f44ad-54da-4f72-accf-0afecc4f4827,758f44ad-54da-4f72-accf-0afecc4f4827,1,0,05ee4a7c-63e6-4587-8be7-e206345e3471,05ee4a7c-63e6-4587-8be7-e206345e3471,1,0,98d5e98b-0382-4b28-a5d9-24392925664a,98d5e98b-0382-4b28-a5d9-24392925664a,1,0,7c424a77-2a83-4a85-8b7d-e8bb6d013c77,7c424a77-2a83-4a85-8b7d-e8bb6d013c77,1,0,2a77eb39-0487-4fb0-8d5b-d4a27592ea60,2a77eb39-0487-4fb0-8d5b-d4a27592ea60,1,0,19a18193-c5d3-4e56-86c5-5a81c525e9ad,19a18193-c5d3-4e56-86c5-5a81c525e9ad,1,0,c208fcc0-d7b2-435b-963a-e18c97727f8f,c208fcc0-d7b2-435b-963a-e18c97727f8f,1,0,ac5db038-8bc3-45ff-9e8d-04ea9fef6d43,ac5db038-8bc3-45ff-9e8d-04ea9fef6d43,1,0,bf11f7b1-6332-4499-ba48-b94bc10ef869,bf11f7b1-6332-4499-ba48-b94bc10ef869,1,0,ecaba9aa-fca7-42f5-a4fe-d8176cf875b9,ecaba9aa-fca7-42f5-a4fe-d8176cf875b9,1,0,4378ab20-5467-476b-8f04-4b6876efdee6,4378ab20-5467-476b-8f04-4b6876efdee6,1,0,55e47901-c79c-41c5-9d7f-6b6846ed2782,55e47901-c79c-41c5-9d7f-6b6846ed2782,1,0,479d9428-02fd-47d2-a869-a3695b315724,479d9428-02fd-47d2-a869-a3695b315724,1,0,838b4840-86e3-4bf3-8b95-1e58ef60e97a,838b4840-86e3-4bf3-8b95-1e58ef60e97a,1,0,36d258b5-bfda-4b40-88a8-1e0abf351805,36d258b5-bfda-4b40-88a8-1e0abf351805,1,0,cc95b010-ca42-4b54-9c50-0551b2c690ed,cc95b010-ca42-4b54-9c50-0551b2c690ed,1,0,829fb3c0-6d96-4765-adc6-f177344a4a33,829fb3c0-6d96-4765-adc6-f177344a4a33,1,0,9241e7fe-e3e8-4ddd-ac6c-4edb1a1b2f71,9241e7fe-e3e8-4ddd-ac6c-4edb1a1b2f71,1,0,7c47f039-1ca9-4c6f-ac36-f4cb59b48b65,7c47f039-1ca9-4c6f-ac36-f4cb59b48b65,1,0,974d2430-1ff6-4be9-a5aa-aa896e9a66d4,974d2430-1ff6-4be9-a5aa-aa896e9a66d4,1,0,d392a791-af74-40c9-ab20-6ed6aeabe864,d392a791-af74-40c9-ab20-6ed6aeabe864,1,0,0b7cee9b-3870-49f5-a58e-063cf5353467,0b7cee9b-3870-49f5-a58e-063cf5353467,1,0,1612570d-b069-405a-9dd3-80b8175fb468,1612570d-b069-405a-9dd3-80b8175fb468,1,0,3c429fe8-e663-4a58-817f-8f8382697dbb,3c429fe8-e663-4a58-817f-8f8382697dbb,1,0,c37be0c3-d2db-4e63-a8cb-7956a5396650,c37be0c3-d2db-4e63-a8cb-7956a5396650,1,0,83180e0d-fc4b-41ec-9a17-5af555a4776f,83180e0d-fc4b-41ec-9a17-5af555a4776f,1,0,27c52afc-7127-41e1-af8a-1b1bd2c9bfa8,27c52afc-7127-41e1-af8a-1b1bd2c9bfa8,1,0,7f68e4c1-c4f7-4c6c-8f0a-225e544e07ee,7f68e4c1-c4f7-4c6c-8f0a-225e544e07ee,1,0,561ed574-617d-4a46-b32b-f022e07846c8,561ed574-617d-4a46-b32b-f022e07846c8,1,0,cba706bf-a9a7-4dda-9c5a-a26e85119396,cba706bf-a9a7-4dda-9c5a-a26e85119396,1,0,159a4eb5-00cd-426c-86e3-09cd3f569f22,159a4eb5-00cd-426c-86e3-09cd3f569f22,1,0,f03cdb56-ef3f-461f-91b1-cdcaed2786e8,f03cdb56-ef3f-461f-91b1-cdcaed2786e8,1,0,3e8c6546-416c-4437-8c85-2cf591b4fc3f,3e8c6546-416c-4437-8c85-2cf591b4fc3f,1,0,038e5027-3cc5-4ea2-b0b5-28a7544ad53e,038e5027-3cc5-4ea2-b0b5-28a7544ad53e,1,0,9a0b27db-e4ac-496b-b6de-876b90381527,9a0b27db-e4ac-496b-b6de-876b90381527,1,0,2ded5135-b6c3-46dd-b563-7b6fab986d23,2ded5135-b6c3-46dd-b563-7b6fab986d23,1,0,14215720-ccb3-4e5a-8345-cd42c96a3e77,14215720-ccb3-4e5a-8345-cd42c96a3e77,1,0,24fa0604-b6a5-49ad-9d03-b2cf8e81dad8,24fa0604-b6a5-49ad-9d03-b2cf8e81dad8,1,0,0690a5c7-bc25-4101-afa5-69c095d415c2,0690a5c7-bc25-4101-afa5-69c095d415c2,1,0,2ad7b509-4cd1-456a-a6ae-94649fdf8c3e,2ad7b509-4cd1-456a-a6ae-94649fdf8c3e,1,0,79013bba-a0f2-481c-a63e-095a54ee52aa,79013bba-a0f2-481c-a63e-095a54ee52aa,1,0,8523c346-f144-41b8-a702-2d588e7097c2,8523c346-f144-41b8-a702-2d588e7097c2,1,0,93969a30-d9d7-4f2f-85fa-57a4eb7495bf,93969a30-d9d7-4f2f-85fa-57a4eb7495bf,1,0,9fb73c9b-05de-4474-8a28-7e3fd5b2b143,9fb73c9b-05de-4474-8a28-7e3fd5b2b143,1,0,fa2bd6a6-bb46-4e21-8684-248578310164,fa2bd6a6-bb46-4e21-8684-248578310164,1,0,f7cf3b42-39c0-48db-b8ca-fe9ea267a45a,f7cf3b42-39c0-48db-b8ca-fe9ea267a45a,1,0,3a0c06eb-f6d5-46c3-b0b9-c8d98e572093,3a0c06eb-f6d5-46c3-b0b9-c8d98e572093,1,0,88ccac36-169d-48f8-bc68-15e3bb775b79,88ccac36-169d-48f8-bc68-15e3bb775b79,1,0,a1640988-bd60-43b3-86f1-184b9db275c6,a1640988-bd60-43b3-86f1-184b9db275c6,1,0,300a02f7-8062-4843-b11e-0321f8b40f4d,300a02f7-8062-4843-b11e-0321f8b40f4d,1,0,bac41d45-249f-40b4-a013-008e261369c8,bac41d45-249f-40b4-a013-008e261369c8,1,0,84e34b4a-02e8-4676-8b81-771ddf3c2931,84e34b4a-02e8-4676-8b81-771ddf3c2931,1,0,0aa6a024-66ae-4592-87d6-f7cb2a59f906,0aa6a024-66ae-4592-87d6-f7cb2a59f906,1,0,734b4dc5-dc91-4945-a2d7-cefe56a6e0a6,734b4dc5-dc91-4945-a2d7-cefe56a6e0a6,1,0,bb2dcb37-410d-4a6c-9ace-1f04177d6e88,bb2dcb37-410d-4a6c-9ace-1f04177d6e88,1,0,cb6ecc18-a14f-4c3c-a39d-2cd2d1ab4e03,cb6ecc18-a14f-4c3c-a39d-2cd2d1ab4e03,1,0,f71ac535-74a5-4001-a613-455a9e1bf734,f71ac535-74a5-4001-a613-455a9e1bf734,1,0,55a42b83-b6d2-409b-a8ff-7849b08e07ed,55a42b83-b6d2-409b-a8ff-7849b08e07ed,1,0,61889399-ecc2-442c-a790-a8b27a7a540c,61889399-ecc2-442c-a790-a8b27a7a540c,1,0,ecd3a928-3e59-439c-8f58-ba360f2a8b3c,ecd3a928-3e59-439c-8f58-ba360f2a8b3c,1,0,4ee2efbc-bc4a-4b47-bfdb-bb83f108c5bb,4ee2efbc-bc4a-4b47-bfdb-bb83f108c5bb,1,0,2d942a50-b239-4b8c-812a-5a634f5dcaef,2d942a50-b239-4b8c-812a-5a634f5dcaef,1,0,8ab0c61d-85b4-47e3-aca1-1890e4c6ec8d,8ab0c61d-85b4-47e3-aca1-1890e4c6ec8d,1,0,a21cf522-d657-49ba-a198-01ff1de5e3f0,a21cf522-d657-49ba-a198-01ff1de5e3f0,1,0,4dc698da-8471-4b3f-816d-f1467cd2e5f1,4dc698da-8471-4b3f-816d-f1467cd2e5f1,1,0,7ceb2f18-4dae-4b13-a5be-e949be165b4e,7ceb2f18-4dae-4b13-a5be-e949be165b4e,1,0,c4f94f6d-e33f-4226-bf47-c4b544098082,c4f94f6d-e33f-4226-bf47-c4b544098082,1,0,0abca5b8-4974-48aa-bf5d-dbbe2c2ea0e6,0abca5b8-4974-48aa-bf5d-dbbe2c2ea0e6,1,0,fc67b510-3fb4-4305-92d2-c252bc718f03,fc67b510-3fb4-4305-92d2-c252bc718f03,1,0,ed98a7b2-ad31-401f-a65e-dfbcc8e5a4a8,ed98a7b2-ad31-401f-a65e-dfbcc8e5a4a8,1,0,9a5e3d2c-ab69-4f9d-a56f-20bb5f0be1e2,9a5e3d2c-ab69-4f9d-a56f-20bb5f0be1e2,1,0,cf1f7915-94ad-47e7-8676-73271d0cf71e,cf1f7915-94ad-47e7-8676-73271d0cf71e,1,0,fceb6e4a-bd51-4193-a542-70d2317af669,fceb6e4a-bd51-4193-a542-70d2317af669,1,0,80847d57-1795-46c7-a106-926e1f43ac1e,80847d57-1795-46c7-a106-926e1f43ac1e,1,0,38685415-dc87-48b4-8cc4-f85b438f2ec2,38685415-dc87-48b4-8cc4-f85b438f2ec2,1,0,110eff8b-aeec-4ba5-b710-fefc1bd60284,110eff8b-aeec-4ba5-b710-fefc1bd60284,1,0,0a8a6bb9-8b6a-43cf-9d46-b18a8a9591d8,0a8a6bb9-8b6a-43cf-9d46-b18a8a9591d8,1,0,75eca481-002b-4046-898d-dfac9357611f,75eca481-002b-4046-898d-dfac9357611f,1,0,0110decc-d06e-43cf-9d01-30d412edcdd7,0110decc-d06e-43cf-9d01-30d412edcdd7,1,0,3ea32a24-d37b-4fad-937a-9d1357d649a9,3ea32a24-d37b-4fad-937a-9d1357d649a9,1,0,2856ee9a-0fea-4684-b7b8-4844773eae07,2856ee9a-0fea-4684-b7b8-4844773eae07,1,0,fae4675c-dcdc-42fc-911d-07c3c577b8b8,fae4675c-dcdc-42fc-911d-07c3c577b8b8,1,0,f1050611-4f82-411b-97f2-bcd8a5c914bf,f1050611-4f82-411b-97f2-bcd8a5c914bf,1,0,efacf22d-b474-4d49-af8b-6d3784aa5cf2,efacf22d-b474-4d49-af8b-6d3784aa5cf2,1,0,f818b937-9ac3-4a0c-ba50-26c060984f09,f818b937-9ac3-4a0c-ba50-26c060984f09,1,0,f385778d-96cb-4e09-884d-533739b393b1,f385778d-96cb-4e09-884d-533739b393b1,1,0,5bdaa783-e965-4d59-b7b7-a1e86ddb89f7,5bdaa783-e965-4d59-b7b7-a1e86ddb89f7,1,0,7bf36370-3761-4fd5-bea5-90fa142a9d57,7bf36370-3761-4fd5-bea5-90fa142a9d57,1,0,3b81427f-cf64-4a5e-adb3-5415d515fecd,3b81427f-cf64-4a5e-adb3-5415d515fecd,1,0,e9f2b604-7181-476d-8b34-3a544cbb353d,e9f2b604-7181-476d-8b34-3a544cbb353d,1,0,73773919-d01c-41dd-bb31-9c66648ac0ff,73773919-d01c-41dd-bb31-9c66648ac0ff,1,0,5d1afad0-3d7e-4214-b52a-72c184490084,5d1afad0-3d7e-4214-b52a-72c184490084,1,0,5f7901a1-f992-42fa-9ddb-d63574da3b56,5f7901a1-f992-42fa-9ddb-d63574da3b56,1,0,26abd45a-12b3-4312-88fb-53c90a6e6679,26abd45a-12b3-4312-88fb-53c90a6e6679,1,0,1541ad74-3e73-4699-bccf-c13313fbedfe,1541ad74-3e73-4699-bccf-c13313fbedfe,1,0,1037ecb7-6819-4ba2-8c93-eccbbdf825be,1037ecb7-6819-4ba2-8c93-eccbbdf825be,1,0,0b2356a4-5571-4ba0-9095-265106f2b3b3,0b2356a4-5571-4ba0-9095-265106f2b3b3,1,0,a2581834-dde8-439a-8204-6712c829738e,a2581834-dde8-439a-8204-6712c829738e,1,0,222985c4-fe09-44d1-a1c5-5a3e3cedd9b2,222985c4-fe09-44d1-a1c5-5a3e3cedd9b2,1,0,c746a268-815b-4917-8b06-af745ba9db04,c746a268-815b-4917-8b06-af745ba9db04,1,0,5cc01f13-0faa-4c3c-8e5e-156656f71efd,5cc01f13-0faa-4c3c-8e5e-156656f71efd,1,0,7c3463c8-ea36-415a-8e9d-dc7bd927b9d1,7c3463c8-ea36-415a-8e9d-dc7bd927b9d1,1,0,260f4fb1-02cb-4c32-ba4b-5aa202cd0311,260f4fb1-02cb-4c32-ba4b-5aa202cd0311,1,0,be2b4dba-e77e-4947-bd2f-0710b357ca2a,be2b4dba-e77e-4947-bd2f-0710b357ca2a,1,0,86182e9a-89e0-40d7-b2d7-fcd92ee42942,86182e9a-89e0-40d7-b2d7-fcd92ee42942,1,0,df750e63-50fc-4085-b8b8-f05e4751ff51,df750e63-50fc-4085-b8b8-f05e4751ff51,1,0,091cb921-c7e3-4a5f-97b7-34e625159b9c,091cb921-c7e3-4a5f-97b7-34e625159b9c,1,0,f6118cdd-1dcd-464e-a49d-e95c69466750,f6118cdd-1dcd-464e-a49d-e95c69466750,1,0,39932897-959b-41a6-94ad-61426abfdbd9,39932897-959b-41a6-94ad-61426abfdbd9,1,0,c56ea6f3-1032-4b7a-a20e-e912196da1cd,c56ea6f3-1032-4b7a-a20e-e912196da1cd,1,0,20d655a7-788c-48bc-83ae-25003106bedb,20d655a7-788c-48bc-83ae-25003106bedb,1,0,7bfb78de-899f-4a4d-a8b2-ebadeccf3921,7bfb78de-899f-4a4d-a8b2-ebadeccf3921,1,0,68a72014-4b2e-4347-aaa7-54d95b8eb919,68a72014-4b2e-4347-aaa7-54d95b8eb919,1,0,a71d9c41-7510-4d38-90df-1034977b8f45,a71d9c41-7510-4d38-90df-1034977b8f45,1,0,25830f5b-27e2-4eff-9728-b21eb498727d,25830f5b-27e2-4eff-9728-b21eb498727d,1,0,379c9295-d0d5-418d-82f3-5ae19985cc53,379c9295-d0d5-418d-82f3-5ae19985cc53,1,0,af02f534-8508-4f9f-bcc1-0c6f3d696971,af02f534-8508-4f9f-bcc1-0c6f3d696971,1,0,dd345cfb-ea0c-4ea8-9b35-22547b000275,dd345cfb-ea0c-4ea8-9b35-22547b000275,1,0,86a871da-3725-43a1-a7c3-98acd187011b,86a871da-3725-43a1-a7c3-98acd187011b,1,0,2447cfeb-d877-4222-8ac2-b0026b85f932,2447cfeb-d877-4222-8ac2-b0026b85f932,1,0,fb94e9cb-1f27-42a6-a701-18bbe5888e70,fb94e9cb-1f27-42a6-a701-18bbe5888e70,1,0,2e26e32e-a0c6-4460-99de-865622202166,2e26e32e-a0c6-4460-99de-865622202166,1,0,c9489a6e-45af-4877-9788-158071571a0a,c9489a6e-45af-4877-9788-158071571a0a,1,0,23959912-f8fc-42bc-9ec2-1d520ebc5dad,23959912-f8fc-42bc-9ec2-1d520ebc5dad,1,0,4770398f-8013-4d43-93ce-ec1165e40c4e,4770398f-8013-4d43-93ce-ec1165e40c4e,1,0,9a706997-90cb-430d-972c-d2bad87c4a79,9a706997-90cb-430d-972c-d2bad87c4a79,1,0,6f661660-b9c4-41d4-99a8-e08006cfe9c8,6f661660-b9c4-41d4-99a8-e08006cfe9c8,1,0,199e79fa-54d6-4748-aaaa-9c55283582a3,199e79fa-54d6-4748-aaaa-9c55283582a3,1,0,77b4ade5-149c-4803-af25-fb24ad8b7116,77b4ade5-149c-4803-af25-fb24ad8b7116,1,0,afedc975-4354-473c-8a4d-5b4b547c6e13,afedc975-4354-473c-8a4d-5b4b547c6e13,1,0,8faced7e-d498-499e-8011-7d8d2de1a25f,8faced7e-d498-499e-8011-7d8d2de1a25f,1,0,a67b69dc-ca89-4813-a78d-4a7be1aff328,a67b69dc-ca89-4813-a78d-4a7be1aff328,1,0,dec2510f-4517-4144-a525-3c344e44abc4,dec2510f-4517-4144-a525-3c344e44abc4,1,0,5ef026c2-2ef4-45d6-9792-5ba0d298714b,5ef026c2-2ef4-45d6-9792-5ba0d298714b,1,0,45d61391-4cf7-4f45-8775-ada582c42400,45d61391-4cf7-4f45-8775-ada582c42400,1,0,78b2a913-2ab9-455d-85a3-504f0f468468,78b2a913-2ab9-455d-85a3-504f0f468468,1,0,8c7e1080-fbb2-4a9c-b740-b3e9eb996565,8c7e1080-fbb2-4a9c-b740-b3e9eb996565,1,0,560b5b12-4dee-4c69-ab6b-7680757a2797,560b5b12-4dee-4c69-ab6b-7680757a2797,1,0,3cfb1ce0-de42-4914-85c0-807d0c10f77e,3cfb1ce0-de42-4914-85c0-807d0c10f77e,1,0,aa89881f-f111-4384-911c-847b04bb56dd,aa89881f-f111-4384-911c-847b04bb56dd,1,0,444d9e3b-c702-4ad6-a929-a220eff0f6e7,444d9e3b-c702-4ad6-a929-a220eff0f6e7,1,0,022c4519-1cdb-45b6-a699-89fd6688999c,022c4519-1cdb-45b6-a699-89fd6688999c,1,0,fb5b79a2-caec-4c6e-a112-27e78a184d5e,fb5b79a2-caec-4c6e-a112-27e78a184d5e,1,0,fa523958-ce1e-42e1-ae00-2dcb401b7eda,fa523958-ce1e-42e1-ae00-2dcb401b7eda,1,0,1518bca2-a004-4566-8991-7c60e6745a49,1518bca2-a004-4566-8991-7c60e6745a49,1,0,ed8618e2-3ce6-4956-856a-9f40279b4da6,ed8618e2-3ce6-4956-856a-9f40279b4da6,1,0,733f6bc2-544d-4fac-bca8-11b981b95a03,733f6bc2-544d-4fac-bca8-11b981b95a03,1,0,0333cd9e-392d-40b2-869d-ad47119e0384,0333cd9e-392d-40b2-869d-ad47119e0384,1,0,82cc8820-0b92-4bb7-b097-7ac79e922f01,82cc8820-0b92-4bb7-b097-7ac79e922f01,1,0,f2267d6c-6972-4621-b677-87798056363b,f2267d6c-6972-4621-b677-87798056363b,1,0,243d201b-3714-4700-b410-c74c9093e6f6,243d201b-3714-4700-b410-c74c9093e6f6,1,0,de3cb50c-ef99-419e-b922-c6a453da6a5b,de3cb50c-ef99-419e-b922-c6a453da6a5b,1,0,d4ca4802-756a-494c-bab3-e77e0777a3fa,d4ca4802-756a-494c-bab3-e77e0777a3fa,1,0,134c1054-8d65-405f-ba3b-5beeca803a72,134c1054-8d65-405f-ba3b-5beeca803a72,1,0,cfa1669b-5310-4171-83fd-4dff3c6ac345,cfa1669b-5310-4171-83fd-4dff3c6ac345,1,0,9ec26d14-b09d-4fd7-9c43-062c0120cf3d,9ec26d14-b09d-4fd7-9c43-062c0120cf3d,1,0,0db78226-37d0-4016-b4c9-5134af1aabc7,0db78226-37d0-4016-b4c9-5134af1aabc7,1,0,8d6b4d23-a260-4352-9975-c13ce3e05220,8d6b4d23-a260-4352-9975-c13ce3e05220,1,0,e0be0bc7-def6-4ae9-9a33-9689aa829b5e,e0be0bc7-def6-4ae9-9a33-9689aa829b5e,1,0,97d4ffd0-07ef-4dc2-8fbc-449c3c8453ef,97d4ffd0-07ef-4dc2-8fbc-449c3c8453ef,1,0,6f5ac40b-ea22-47cf-acf2-614406669a72,6f5ac40b-ea22-47cf-acf2-614406669a72,1,0,b6caaa9e-a9d1-4519-a61f-7fa0ab0ff201,b6caaa9e-a9d1-4519-a61f-7fa0ab0ff201,1,0,488d2644-6fef-488a-af38-40f59c0e0d8c,488d2644-6fef-488a-af38-40f59c0e0d8c,1,0,5d76a28c-5d6c-49cb-8b91-2527e8d06aba,5d76a28c-5d6c-49cb-8b91-2527e8d06aba,1,0,688d86cd-1044-4b77-bb63-2c05aaafbcd0,688d86cd-1044-4b77-bb63-2c05aaafbcd0,1,0,f1efef30-8651-4728-becd-abe3f9026a43,f1efef30-8651-4728-becd-abe3f9026a43,1,0,c2612e22-4f0d-4713-b4eb-decd9780d088,c2612e22-4f0d-4713-b4eb-decd9780d088,1,0,11b1410f-8e14-4b2f-8890-177f4875020e,11b1410f-8e14-4b2f-8890-177f4875020e,1,0,2276b2b0-1705-4014-956f-5087e9dd5c1e,2276b2b0-1705-4014-956f-5087e9dd5c1e,1,0,4aef5419-7cf5-4443-b773-9273c983844f,4aef5419-7cf5-4443-b773-9273c983844f,1,0,b090cfa5-1bd8-43aa-84d6-6e04375c4b57,b090cfa5-1bd8-43aa-84d6-6e04375c4b57,1,0,8a0d4f7f-7a80-4e5d-8238-05fc169e0319,8a0d4f7f-7a80-4e5d-8238-05fc169e0319,1,0,8e9f9baf-8d12-46cc-915f-f6f290af5512,8e9f9baf-8d12-46cc-915f-f6f290af5512,1,0,5808331f-9ab4-4a23-a592-1f65087f3214,5808331f-9ab4-4a23-a592-1f65087f3214,1,0,9316738d-3d38-4068-818e-a001355b19fb,9316738d-3d38-4068-818e-a001355b19fb,1,0,d86d766f-021a-4c11-b9e8-403af08918cc,d86d766f-021a-4c11-b9e8-403af08918cc,1,0,2cedfef0-5d93-475a-b2dd-ee36e553e6e1,2cedfef0-5d93-475a-b2dd-ee36e553e6e1,1,0,29200d04-d7da-435a-89e6-858c11a1a98c,29200d04-d7da-435a-89e6-858c11a1a98c,1,0,8e5f6c70-04b3-46a1-94ef-82c9f6019f8f,8e5f6c70-04b3-46a1-94ef-82c9f6019f8f,1,0,6c119ef2-d24b-4c3d-ad07-611bed89cab1,6c119ef2-d24b-4c3d-ad07-611bed89cab1,1,0,13b1cb1f-88df-4ff8-b4cc-0473e4f96005,13b1cb1f-88df-4ff8-b4cc-0473e4f96005,1,0,0e861ad8-6fa3-4b0f-a9b0-6c91df1dfc6b,0e861ad8-6fa3-4b0f-a9b0-6c91df1dfc6b,1,0,27df6c22-85d7-4cb6-be19-82af76c84bf9,27df6c22-85d7-4cb6-be19-82af76c84bf9,1,0,77bd95d6-3cd5-4b67-a0b6-72d24243fbc2,77bd95d6-3cd5-4b67-a0b6-72d24243fbc2,1,0,0be7f905-53b8-4bb1-8e37-dcc142e508c5,0be7f905-53b8-4bb1-8e37-dcc142e508c5,1,0,422155c7-1640-48c4-bb21-36595b405c66,422155c7-1640-48c4-bb21-36595b405c66,1,0,16d37b5a-88db-4787-b2de-fb50da0ca94b,16d37b5a-88db-4787-b2de-fb50da0ca94b,1,0,f653bcbf-5659-4605-9bb9-3737f19e79dd,f653bcbf-5659-4605-9bb9-3737f19e79dd,1,0,8b980868-fe63-49ff-ba3d-4c29732e1b90,8b980868-fe63-49ff-ba3d-4c29732e1b90,1,0,54668731-4963-4ec3-b188-9feacaefa182,54668731-4963-4ec3-b188-9feacaefa182,1,0,3702135e-5380-4ca6-82f5-63eff1b043e9,3702135e-5380-4ca6-82f5-63eff1b043e9,1,0,29b2104b-fd02-4d51-951f-51ea213b8ebd,29b2104b-fd02-4d51-951f-51ea213b8ebd,1,0,ba5c945e-554f-45a2-a2de-3157b2d7e931,ba5c945e-554f-45a2-a2de-3157b2d7e931,1,0,f7085f33-f122-4443-a3f5-4e765300175e,f7085f33-f122-4443-a3f5-4e765300175e,1,0,b7e4c512-b856-4679-a025-5f0f28918593,b7e4c512-b856-4679-a025-5f0f28918593,1,0,bba56b8f-a3f3-4d3f-9804-f9569bb1f6f3,bba56b8f-a3f3-4d3f-9804-f9569bb1f6f3,1,0,cff7ba79-9418-43a4-badc-3e3cc2f6bd5b,cff7ba79-9418-43a4-badc-3e3cc2f6bd5b,1,0,a9362ac4-85ee-4214-80c1-048fab769885,a9362ac4-85ee-4214-80c1-048fab769885,1,0,4ec242e0-75d1-4bf7-be18-783e7aa4f236,4ec242e0-75d1-4bf7-be18-783e7aa4f236,1,0,e02b1366-9d7a-462f-86a1-436bbf4532ff,e02b1366-9d7a-462f-86a1-436bbf4532ff,1,0,40ee729c-c317-4a1c-b985-5f7e4e1e20fb,40ee729c-c317-4a1c-b985-5f7e4e1e20fb,1,0,2feb35c0-b046-4086-a2ce-ccc462fc6e9c,2feb35c0-b046-4086-a2ce-ccc462fc6e9c,1,0,8811cc64-99d9-4f13-8309-c29965783f5a,8811cc64-99d9-4f13-8309-c29965783f5a,1,0,7c737071-e850-4a3f-8942-697ef52a8ecc,7c737071-e850-4a3f-8942-697ef52a8ecc,1,0,62eff222-7b74-4cab-9138-880db1f05147,62eff222-7b74-4cab-9138-880db1f05147,1,0,39c6c277-cfc6-4e8a-8e7f-afcff55f0511,39c6c277-cfc6-4e8a-8e7f-afcff55f0511,1,0,860f8893-22fe-4b13-adb1-24e1ea8c6544,860f8893-22fe-4b13-adb1-24e1ea8c6544,1,0,95266e9f-073f-4de3-83c6-cc0d9ee9334f,95266e9f-073f-4de3-83c6-cc0d9ee9334f,1,0,21b8ac8d-75ca-481c-8e85-01bc2029f0c0,21b8ac8d-75ca-481c-8e85-01bc2029f0c0,1,0,d5012e69-89bc-40af-8e4f-377a042854ee,d5012e69-89bc-40af-8e4f-377a042854ee,1,0,02f79fd8-5315-4c90-b520-db67dcb6e371,02f79fd8-5315-4c90-b520-db67dcb6e371,1,0,9bb52788-4a3a-48b5-a551-5ca753b6c059,9bb52788-4a3a-48b5-a551-5ca753b6c059,1,0,4fb5004f-3cd9-44c4-a44b-d235cccf9e9c,4fb5004f-3cd9-44c4-a44b-d235cccf9e9c,1,0,872a0c47-fab5-4a54-8ab9-23940bbdefbb,872a0c47-fab5-4a54-8ab9-23940bbdefbb,1,0,7428a626-3fbc-4f2c-a3dd-f14e8d90c00b,7428a626-3fbc-4f2c-a3dd-f14e8d90c00b,1,0,2f20bff4-9201-4f36-9e74-eba4d9b3c59a,2f20bff4-9201-4f36-9e74-eba4d9b3c59a,1,0,b6c94efd-5994-4c4c-a641-b062ecc38b65,b6c94efd-5994-4c4c-a641-b062ecc38b65,1,0,98501228-7f0e-45a3-b58f-4c654f393f80,98501228-7f0e-45a3-b58f-4c654f393f80,1,0,502384c9-edb7-451a-b7ea-de006f657a6e,502384c9-edb7-451a-b7ea-de006f657a6e,1,0,4e1a4fe0-dca4-40ba-9369-73be303a4aef,4e1a4fe0-dca4-40ba-9369-73be303a4aef,1,0,329906a0-0b61-4f3f-8cd0-f06a78e8fe5f,329906a0-0b61-4f3f-8cd0-f06a78e8fe5f,1,0,840e0b1b-a599-4c5f-8eaa-7f7e4f2e55a4,840e0b1b-a599-4c5f-8eaa-7f7e4f2e55a4,1,0,1d06a9e4-e637-4219-a81c-64f8ec1b91a4,1d06a9e4-e637-4219-a81c-64f8ec1b91a4,1,0,50968921-76f3-4108-835a-96b153671c8d,50968921-76f3-4108-835a-96b153671c8d,1,0,b773f510-1485-4886-9071-afcbf49ff856,b773f510-1485-4886-9071-afcbf49ff856,1,0,964403f2-0a87-49e1-b183-dbe3624e3805,964403f2-0a87-49e1-b183-dbe3624e3805,1,0,01579044-5659-4a73-a989-c52cfabaae66,01579044-5659-4a73-a989-c52cfabaae66,1,0,9b8509e8-8262-4e6a-b2f3-a0df8f49e2c5,9b8509e8-8262-4e6a-b2f3-a0df8f49e2c5,1,0,911baaa1-a4de-4558-b00e-51644144a762,911baaa1-a4de-4558-b00e-51644144a762,1,0,8a8ad123-c01a-440a-bd01-1c0da72cf2eb,8a8ad123-c01a-440a-bd01-1c0da72cf2eb,1,0,ca4ef957-36c2-43b9-8ff7-e2b7ee58cde5,ca4ef957-36c2-43b9-8ff7-e2b7ee58cde5,1,0,4e036eff-92a8-4010-89b2-ed949c123311,4e036eff-92a8-4010-89b2-ed949c123311,1,0,38160114-dc22-4d0b-86a5-d650f4756932,38160114-dc22-4d0b-86a5-d650f4756932,1,0,60aaa289-1f07-438c-8f10-81058ac671c3,60aaa289-1f07-438c-8f10-81058ac671c3,1,0,7312a4ab-a269-4d85-a2c2-25bd5c5dc59c,7312a4ab-a269-4d85-a2c2-25bd5c5dc59c,1,0,c44b0868-bd7f-4230-973b-544ff4dd2afe,c44b0868-bd7f-4230-973b-544ff4dd2afe,1,0,fc2675c2-1c9b-41f9-88eb-5c8be365fe41,fc2675c2-1c9b-41f9-88eb-5c8be365fe41,1,0,51e6a6f9-ce9d-4cb0-a40c-384ede074e07,51e6a6f9-ce9d-4cb0-a40c-384ede074e07,1,0,d49411b4-5f6d-48c5-b4f8-fdfbd1b73317,d49411b4-5f6d-48c5-b4f8-fdfbd1b73317,1,0,8b3da21b-ea3f-47cf-af48-15b886b21f20,8b3da21b-ea3f-47cf-af48-15b886b21f20,1,0,32c4750b-0096-4bbc-8dcd-c1f717734233,32c4750b-0096-4bbc-8dcd-c1f717734233,1,0,be6740b1-1f57-4c01-a67a-d48152931dc8,be6740b1-1f57-4c01-a67a-d48152931dc8,1,0,40fd038d-a93a-4be7-9221-d8ae83350ca0,40fd038d-a93a-4be7-9221-d8ae83350ca0,1,0,e9fcabef-5067-477b-8cb0-1bf3ab8161c5,e9fcabef-5067-477b-8cb0-1bf3ab8161c5,1,0,29adc9e5-a994-48ab-a5a1-919d01119c3a,29adc9e5-a994-48ab-a5a1-919d01119c3a,1,0,c47ffce7-c905-4e88-8b1f-156f47047ccd,c47ffce7-c905-4e88-8b1f-156f47047ccd,1,0,e1755eed-88cf-42c1-83e4-f9047f2c30bf,e1755eed-88cf-42c1-83e4-f9047f2c30bf,1,0,c6ec9d48-9131-4735-9cf7-b498705a57e4,c6ec9d48-9131-4735-9cf7-b498705a57e4,1,0,865d76f7-db4a-4fa2-8e1c-3ecbc2d8faf4,865d76f7-db4a-4fa2-8e1c-3ecbc2d8faf4,1,0,706c421a-74ce-4985-9443-b4a2032481f6,706c421a-74ce-4985-9443-b4a2032481f6,1,0,64da4c24-4aaf-42c8-8595-7f60ff3bc344,64da4c24-4aaf-42c8-8595-7f60ff3bc344,1,0,fb9577e1-00d9-4d52-8de9-23914929a683,fb9577e1-00d9-4d52-8de9-23914929a683,1,0,ffd62a16-f2b4-4e3a-8849-15b957a3d1a1,ffd62a16-f2b4-4e3a-8849-15b957a3d1a1,1,0,529253ae-9c92-4426-b150-8444ba622f89,529253ae-9c92-4426-b150-8444ba622f89,1,0,06a1955a-2ef0-4607-9dcb-a480a7951af7,06a1955a-2ef0-4607-9dcb-a480a7951af7,1,0,6f8fcc96-bfed-444a-908d-95c5b1c64972,6f8fcc96-bfed-444a-908d-95c5b1c64972,1,0,97ce4bf2-6580-4f27-8b5d-d60b66a09c9e,97ce4bf2-6580-4f27-8b5d-d60b66a09c9e,1,0,a84c89d9-2cfe-405f-9bb0-5392b3171695,a84c89d9-2cfe-405f-9bb0-5392b3171695,1,0,070ecbfe-88d6-4de8-b236-e7eedbc3ebc6,070ecbfe-88d6-4de8-b236-e7eedbc3ebc6,1,0,91e26e73-027f-4a10-9083-e5182e768723,91e26e73-027f-4a10-9083-e5182e768723,1,0,e55680f4-cb1a-4cdb-88f0-5d82f43c1d05,e55680f4-cb1a-4cdb-88f0-5d82f43c1d05,1,0,54433668-4391-4dea-8baf-43e9aa1d624e,54433668-4391-4dea-8baf-43e9aa1d624e,1,0,fc309616-060a-42c3-8401-dfef0f359bc5,fc309616-060a-42c3-8401-dfef0f359bc5,1,0,b968398d-973d-4643-95a5-16633d7e48bc,b968398d-973d-4643-95a5-16633d7e48bc,1,0,b9507495-2536-4895-b68b-62acd74343f6,b9507495-2536-4895-b68b-62acd74343f6,1,0,e05a14cc-9051-4c38-9725-19856e36d260,e05a14cc-9051-4c38-9725-19856e36d260,1,0,8154aa0f-ecd6-4ab0-9498-56ef25486a55,8154aa0f-ecd6-4ab0-9498-56ef25486a55,1,0,9d6429f7-23da-4596-822a-04818deb3088,9d6429f7-23da-4596-822a-04818deb3088,1,0,a1b67bd2-3220-497d-b2b4-bd0ea62d9111,a1b67bd2-3220-497d-b2b4-bd0ea62d9111,1,0,acb533e7-4610-4f92-b548-1a4ff1a423d4,acb533e7-4610-4f92-b548-1a4ff1a423d4,1,0,8697999d-9cdb-43d8-979b-3f283daffdd3,8697999d-9cdb-43d8-979b-3f283daffdd3,1,0,23378687-249c-4ec6-99b8-b13fb04b8643,23378687-249c-4ec6-99b8-b13fb04b8643,1,0,66315b12-7abf-46e0-a994-894b827b1301,66315b12-7abf-46e0-a994-894b827b1301,1,0,dba174fb-8392-4451-8069-ae8145658e34,dba174fb-8392-4451-8069-ae8145658e34,1,0,ff5dd4f8-8a16-4a41-875d-c4f7c37ae67a,ff5dd4f8-8a16-4a41-875d-c4f7c37ae67a,1,0,4435d99d-a1df-43e6-97ab-5e651017c61d,4435d99d-a1df-43e6-97ab-5e651017c61d,1,0,2398d69d-ecdd-4d34-bdae-34ed5507a61e,2398d69d-ecdd-4d34-bdae-34ed5507a61e,1,0,a707035a-0172-4b55-b589-fa4a8be9b596,a707035a-0172-4b55-b589-fa4a8be9b596,1,0,c4456e94-8c76-49b1-b85a-433e0f65bdb0,c4456e94-8c76-49b1-b85a-433e0f65bdb0,1,0,4a347209-3a07-48ea-b407-6ee37f1d69f2,4a347209-3a07-48ea-b407-6ee37f1d69f2,1,0,d6aed0fd-686c-430d-b884-74494177422e,d6aed0fd-686c-430d-b884-74494177422e,1,0,245ec4aa-ed65-41f7-b0f0-f8085cfc5bef,245ec4aa-ed65-41f7-b0f0-f8085cfc5bef,1,0,3ed64288-8bf0-4049-8d44-1b424f31d40f,3ed64288-8bf0-4049-8d44-1b424f31d40f,1,0,e0a3fab1-3fe9-4927-840e-f983f72bdfc1,e0a3fab1-3fe9-4927-840e-f983f72bdfc1,1,0,df31eee8-387d-40d1-98df-1f7d8176b50e,df31eee8-387d-40d1-98df-1f7d8176b50e,1,0,c8364283-5525-4bef-8e96-abced54c6a4a,c8364283-5525-4bef-8e96-abced54c6a4a,1,0,bcc25539-c6ca-40d0-84fd-53c3caf1aec7,bcc25539-c6ca-40d0-84fd-53c3caf1aec7,1,0,577f2671-7d38-4806-b7ff-840d649e6d69,577f2671-7d38-4806-b7ff-840d649e6d69,1,0,4ff9376e-ffa6-48f3-bf26-b55ceb23da09,4ff9376e-ffa6-48f3-bf26-b55ceb23da09,1,0,de4c339a-a3cf-4b30-bcf2-ce86f5c2d3b0,de4c339a-a3cf-4b30-bcf2-ce86f5c2d3b0,1,0,40e2fb30-bb03-4178-a8eb-ddf48337ef23,40e2fb30-bb03-4178-a8eb-ddf48337ef23,1,0,1026fbcb-acd8-40dc-b638-6e02c6378c55,1026fbcb-acd8-40dc-b638-6e02c6378c55,1,0,dc9e2ba6-f4f1-493f-9054-cac633f239dd,dc9e2ba6-f4f1-493f-9054-cac633f239dd,1,0,7b95d0b1-c7b2-43b4-9119-320cb8912032,7b95d0b1-c7b2-43b4-9119-320cb8912032,1,0,004582b7-00aa-405e-8e24-ce76c945edae,004582b7-00aa-405e-8e24-ce76c945edae,1,0,97a9b005-a836-4308-8e63-0e00f6890baa,97a9b005-a836-4308-8e63-0e00f6890baa,1,0,98c34ada-0b78-41db-9183-6d7b9e466bde,98c34ada-0b78-41db-9183-6d7b9e466bde,1,0,fb688339-918e-40a1-8721-a26f3077973e,fb688339-918e-40a1-8721-a26f3077973e,1,0,1f56de63-81eb-4de5-ad20-01cb6f84e5b0,1f56de63-81eb-4de5-ad20-01cb6f84e5b0,1,0,079ba95c-8293-47e2-b8bd-7acf73c2d880,079ba95c-8293-47e2-b8bd-7acf73c2d880,1,0,fbe1dcf7-c11d-4395-ab3a-c2f986c25419,fbe1dcf7-c11d-4395-ab3a-c2f986c25419,1,0,a5f264a8-a547-4653-abb1-eb1666d527dc,a5f264a8-a547-4653-abb1-eb1666d527dc,1,0,dabae379-6356-497a-aab5-cf102f16a72a,dabae379-6356-497a-aab5-cf102f16a72a,1,0,337370e0-1021-4887-9d38-6c3833c90a5b,337370e0-1021-4887-9d38-6c3833c90a5b,1,0,0ff569eb-d5b8-4ab1-ac77-5e5afd6d44d0,0ff569eb-d5b8-4ab1-ac77-5e5afd6d44d0,1,0,d6f01f1c-801b-4776-ae11-48236103f76a,d6f01f1c-801b-4776-ae11-48236103f76a,1,0,b6fe68cf-657b-40e0-af2e-247607a86519,b6fe68cf-657b-40e0-af2e-247607a86519,1,0,9b0b8191-94b7-428f-be86-e9e4cd24a72f,9b0b8191-94b7-428f-be86-e9e4cd24a72f,1,0,a923dbcb-7146-4445-ad17-f4a32c16a837,a923dbcb-7146-4445-ad17-f4a32c16a837,1,0,41dec792-1d1a-4e06-a54b-a86193b98225,41dec792-1d1a-4e06-a54b-a86193b98225,1,0,52257beb-3e0c-4681-b430-9690398cd13a,52257beb-3e0c-4681-b430-9690398cd13a,1,0,135e637c-c28e-4547-8da2-d897dca54cb2,135e637c-c28e-4547-8da2-d897dca54cb2,1,0,245be006-6d0a-4c9e-97c5-f3c2ddd734f7,245be006-6d0a-4c9e-97c5-f3c2ddd734f7,1,0,a0b74de9-06b5-416c-9dd0-2f9dc209fe91,a0b74de9-06b5-416c-9dd0-2f9dc209fe91,1,0,5356543a-db9a-4265-b83f-31d45544c8e6,5356543a-db9a-4265-b83f-31d45544c8e6,1,0,857dd311-9c6d-4dba-82d8-283d7b05b09e,857dd311-9c6d-4dba-82d8-283d7b05b09e,1,0,1055d15b-8cb5-4ff0-a526-7fd20a08a96c,1055d15b-8cb5-4ff0-a526-7fd20a08a96c,1,0,8064eb3a-d56c-4517-9db0-b7300149c7c4,8064eb3a-d56c-4517-9db0-b7300149c7c4,1,0,fe926c88-d792-4db3-abcf-3c94dfdcc407,fe926c88-d792-4db3-abcf-3c94dfdcc407,1,0,bcbdba9e-0b29-4ea7-a7d5-1de819bf86ec,bcbdba9e-0b29-4ea7-a7d5-1de819bf86ec,1,0,e0c51555-1614-4aa7-a075-c5e1251579ba,e0c51555-1614-4aa7-a075-c5e1251579ba,1,0,c75a1c6d-fa33-4b57-b359-6253aff5f3e7,c75a1c6d-fa33-4b57-b359-6253aff5f3e7,1,0,af88ea84-5742-4c9f-9a02-6d0f25186f72,af88ea84-5742-4c9f-9a02-6d0f25186f72,1,0,51363236-c8eb-4eb7-9692-5c18edc9a5a8,51363236-c8eb-4eb7-9692-5c18edc9a5a8,1,0,cb65fbad-69a0-47d8-b4a9-da49274c3eb7,cb65fbad-69a0-47d8-b4a9-da49274c3eb7,1,0,872521e3-413c-45ac-a6ea-39fe1324bae8,872521e3-413c-45ac-a6ea-39fe1324bae8,1,0,8cad6cfd-91d0-4563-800a-d60c8a1b6a03,8cad6cfd-91d0-4563-800a-d60c8a1b6a03,1,0,81ef02df-498d-4af0-8254-dc6730cbf140,81ef02df-498d-4af0-8254-dc6730cbf140,1,0,79ad09ba-875a-46bd-9cd9-9d084bf4f6ea,79ad09ba-875a-46bd-9cd9-9d084bf4f6ea,1,0,2902460a-ed86-41cf-8e8f-895adab9a72f,2902460a-ed86-41cf-8e8f-895adab9a72f,1,0,c4968b4e-0715-43a5-92ad-c8cd276fbf7b,c4968b4e-0715-43a5-92ad-c8cd276fbf7b,1,0,402f2fe0-4d08-4701-9c8f-0c2bb75815ef,402f2fe0-4d08-4701-9c8f-0c2bb75815ef,1,0,1a4ed7cf-3294-4a5c-9650-75b61d6b2531,1a4ed7cf-3294-4a5c-9650-75b61d6b2531,1,0,d6b72e00-018a-4fdc-b6a4-06dcecf89809,d6b72e00-018a-4fdc-b6a4-06dcecf89809,1,0,9f816562-57f0-473f-8c85-14f7521ffd7f,9f816562-57f0-473f-8c85-14f7521ffd7f,1,0,917b0acc-88fe-4afc-b19b-6da69e060393,917b0acc-88fe-4afc-b19b-6da69e060393,1,0,a091b76e-8ba4-4534-bbb0-9990e69b8603,a091b76e-8ba4-4534-bbb0-9990e69b8603,1,0,867ee5d2-7566-4052-a311-b56e7e46b90d,867ee5d2-7566-4052-a311-b56e7e46b90d,1,0,f82d5bd6-4c74-4c23-978c-565aae3d752a,f82d5bd6-4c74-4c23-978c-565aae3d752a,1,0,7fba41a5-4faa-412b-b367-b30ced0314c0,7fba41a5-4faa-412b-b367-b30ced0314c0,1,0,98422d20-9a71-40e4-966e-6958d44eaefb,98422d20-9a71-40e4-966e-6958d44eaefb,1,0,37333d0b-3589-4b8b-bf6c-e605e0287b66,37333d0b-3589-4b8b-bf6c-e605e0287b66,1,0,1813c469-da20-46a6-8947-6815b66f64c1,1813c469-da20-46a6-8947-6815b66f64c1,1,0,64e702e9-8934-4356-a1b2-be0e8b390630,64e702e9-8934-4356-a1b2-be0e8b390630,1,0,74880ac4-bdd3-48e6-82a0-a2103da42723,74880ac4-bdd3-48e6-82a0-a2103da42723,1,0,ad083c26-7461-4e94-b524-0174242fbd91,ad083c26-7461-4e94-b524-0174242fbd91,1,0,5ce39370-f918-493f-bb24-53346b6fd836,5ce39370-f918-493f-bb24-53346b6fd836,1,0,84f22fd2-e0d0-42ce-8628-1b13c021a4cb,84f22fd2-e0d0-42ce-8628-1b13c021a4cb,1,0,0e3d2750-bb4c-42b9-9829-60f1480ced9c,0e3d2750-bb4c-42b9-9829-60f1480ced9c,1,0,d1b6c5e8-7625-43aa-bb11-943c9bfa01b7,d1b6c5e8-7625-43aa-bb11-943c9bfa01b7,1,0,dad11c2e-08fc-4a6b-8829-8be6c64c15fc,dad11c2e-08fc-4a6b-8829-8be6c64c15fc,1,0,a76b1fd1-ba00-40e6-8756-f17fee449818,a76b1fd1-ba00-40e6-8756-f17fee449818,1,0,5c913626-48d1-4e0a-a423-64078ce59c7b,5c913626-48d1-4e0a-a423-64078ce59c7b,1,0,0a4e6b7a-b380-4547-bc3c-5d6895a5d19a,0a4e6b7a-b380-4547-bc3c-5d6895a5d19a,1,0,7b0ec304-1904-413e-a9c6-ff62e87107dd,7b0ec304-1904-413e-a9c6-ff62e87107dd,1,0,d4dd8c96-914d-496f-b735-ef85ec473605,d4dd8c96-914d-496f-b735-ef85ec473605,1,0,62517db4-59e6-4945-bcd6-b3f1845572bf,62517db4-59e6-4945-bcd6-b3f1845572bf,1,0,a6a9dd40-24cd-4d40-a12d-44f94f8c05a7,a6a9dd40-24cd-4d40-a12d-44f94f8c05a7,1,0,f0f72149-0e7f-441a-b70d-8f47d4977927,f0f72149-0e7f-441a-b70d-8f47d4977927,1,0,776efc3e-ac27-4550-bafd-6e91aa987af2,776efc3e-ac27-4550-bafd-6e91aa987af2,1,0,9f478c85-b72c-40ae-aa08-7ddf73b5b15c,9f478c85-b72c-40ae-aa08-7ddf73b5b15c,1,0,cc438366-85ea-48be-8b74-d05cddb1fc51,cc438366-85ea-48be-8b74-d05cddb1fc51,1,0,4688fd3b-4a92-4ed8-b111-0cf22a729b1c,4688fd3b-4a92-4ed8-b111-0cf22a729b1c,1,0,92029d1f-0472-4aaa-8fd6-9fb3c3cf414e,92029d1f-0472-4aaa-8fd6-9fb3c3cf414e,1,0,3271b800-1825-422f-97bb-757baf403e90,3271b800-1825-422f-97bb-757baf403e90,1,0,6fd6efc1-facc-4ece-a5b3-3dce6acca81d,6fd6efc1-facc-4ece-a5b3-3dce6acca81d,1,0,4ee82868-7a20-4c3a-91f9-42a6bf53ac37,4ee82868-7a20-4c3a-91f9-42a6bf53ac37,1,0,a040c756-4687-4bfd-a690-b122d3c490e5,a040c756-4687-4bfd-a690-b122d3c490e5,1,0,bd5940d5-13fd-4f59-bb6c-614f93f9c8e4,bd5940d5-13fd-4f59-bb6c-614f93f9c8e4,1,0,961a9801-3956-4ea0-b0d3-908f09bf4929,961a9801-3956-4ea0-b0d3-908f09bf4929,1,0,6fac5c14-e126-4342-9078-edf1d0efcbf2,6fac5c14-e126-4342-9078-edf1d0efcbf2,1,0,0a3325a1-21c4-4997-882f-4ac2edc175f0,0a3325a1-21c4-4997-882f-4ac2edc175f0,1,0,71102d3f-f020-4d6f-9582-9a7eefb4e797,71102d3f-f020-4d6f-9582-9a7eefb4e797,1,0,53ef6849-a3f3-4171-9167-f349f2d6a736,53ef6849-a3f3-4171-9167-f349f2d6a736,1,0,3f588bd3-d461-42b7-8ab1-386af6399d56,3f588bd3-d461-42b7-8ab1-386af6399d56,1,0,c04ff85e-b4af-4a9f-b0e9-c5c65e3d10a1,c04ff85e-b4af-4a9f-b0e9-c5c65e3d10a1,1,0,8c576405-29c1-46b1-ab2e-40e52c21cab0,8c576405-29c1-46b1-ab2e-40e52c21cab0,1,0,b33a89da-8589-4902-83fa-6545e5fce23e,b33a89da-8589-4902-83fa-6545e5fce23e,1,0,f0620d5a-e1fe-419f-af37-e0f462f97e8d,f0620d5a-e1fe-419f-af37-e0f462f97e8d,1,0,3e2f2ae1-c809-43fc-8276-b0a16a92858c,3e2f2ae1-c809-43fc-8276-b0a16a92858c,1,0,b58942ca-1367-4e1d-b5b4-7d973d0fecd8,b58942ca-1367-4e1d-b5b4-7d973d0fecd8,1,0,1a7c7427-bead-4655-9dd6-df6e722663c5,1a7c7427-bead-4655-9dd6-df6e722663c5,1,0,3ad08f4a-6202-4099-b6cc-bc116e6731a0,3ad08f4a-6202-4099-b6cc-bc116e6731a0,1,0,fd96c8ab-602a-4735-b168-52b501e80351,fd96c8ab-602a-4735-b168-52b501e80351,1,0,b1dc619d-8d91-4f7a-aa50-1d07ff9aebdc,b1dc619d-8d91-4f7a-aa50-1d07ff9aebdc,1,0,370f0c75-d2c5-4be5-a633-4bcc77998ece,370f0c75-d2c5-4be5-a633-4bcc77998ece,1,0,f80b505f-b4ff-45fb-bd88-74b274ae9d2b,f80b505f-b4ff-45fb-bd88-74b274ae9d2b,1,0,2139532c-f6cb-4393-936e-cc912e5adca9,2139532c-f6cb-4393-936e-cc912e5adca9,1,0,755c3eca-4956-4a44-9b38-c11dae00b87f,755c3eca-4956-4a44-9b38-c11dae00b87f,1,0,f57c558c-2c94-4b9d-8697-448d0548ab1a,f57c558c-2c94-4b9d-8697-448d0548ab1a,1,0,a310c09f-4d3a-4d3a-9ad5-7a5735a33a1d,a310c09f-4d3a-4d3a-9ad5-7a5735a33a1d,1,0,c32db021-eca1-4b67-aa85-3d6e28c51b53,c32db021-eca1-4b67-aa85-3d6e28c51b53,1,0,e9ed0ee4-3fbe-4093-9078-cb265ed6842c,e9ed0ee4-3fbe-4093-9078-cb265ed6842c,1,0,02466dcf-02a1-4853-814f-a913a9baba45,02466dcf-02a1-4853-814f-a913a9baba45,1,0,c4a40dc9-b619-4219-9d9a-e11f49a14fb1,c4a40dc9-b619-4219-9d9a-e11f49a14fb1,1,0,62b75eb2-42e1-4484-a77f-b676dd36f3d4,62b75eb2-42e1-4484-a77f-b676dd36f3d4,1,0,5e28e22a-dd6e-4703-92bd-13f5cb0dc023,5e28e22a-dd6e-4703-92bd-13f5cb0dc023,1,0,856510ee-74f5-44e9-a3c0-1c60cfb7a787,856510ee-74f5-44e9-a3c0-1c60cfb7a787,1,0,28b761c6-c286-4125-a4ed-da602e49950f,28b761c6-c286-4125-a4ed-da602e49950f,1,0,4ac66a22-c736-4e06-a8aa-ef4a71788c65,4ac66a22-c736-4e06-a8aa-ef4a71788c65,1,0,9cfe9281-8840-4077-824d-a2c9cbb0b730,9cfe9281-8840-4077-824d-a2c9cbb0b730,1,0,76389fa9-b9e0-492e-9c93-24b5f3bf094c,76389fa9-b9e0-492e-9c93-24b5f3bf094c,1,0,23e3de37-9315-45e6-bbfd-60aae28c25ae,23e3de37-9315-45e6-bbfd-60aae28c25ae,1,0,a9957f43-8b6f-4d98-a2d8-77b78047494c,a9957f43-8b6f-4d98-a2d8-77b78047494c,1,0,e470e15d-1b06-43cb-a9f9-ba489e2f596f,e470e15d-1b06-43cb-a9f9-ba489e2f596f,1,0,0408002c-9255-43a2-8022-82f02ee0e8f4,0408002c-9255-43a2-8022-82f02ee0e8f4,1,0,88f44c9b-216d-4d7e-bc88-1e6b253ed01e,88f44c9b-216d-4d7e-bc88-1e6b253ed01e,1,0,1851afd4-5324-45c1-b754-54e65943f945,1851afd4-5324-45c1-b754-54e65943f945,1,0,bc5eca9b-32d8-44e0-a127-8ad1f47d7957,bc5eca9b-32d8-44e0-a127-8ad1f47d7957,1,0,6e5307ea-8fbf-4177-bcc8-f163a6ce1b40,6e5307ea-8fbf-4177-bcc8-f163a6ce1b40,1,0,0fa77ef7-a836-4459-9bca-6010d0bdfc7f,0fa77ef7-a836-4459-9bca-6010d0bdfc7f,1,0,c322dc4a-30f3-4d23-9824-4a01c496408d,c322dc4a-30f3-4d23-9824-4a01c496408d,1,0,dcff004c-1b61-4a19-b977-ea21bf688614,dcff004c-1b61-4a19-b977-ea21bf688614,0,0,0,1,0,0,0,1,0,1,0,1,1,1,1} \ No newline at end of file +{6,1,1,31f78505-a86b-418a-8bcd-9edff6e7fb74,1,2bdc2d98-6316-427d-9700-47c52b26a6e1,"2.3.5.52","Фирма ""1С""","БиблиотекаСтандартныхПодсистем",5379,1,0,7d7b9c24-2075-419a-b307-abf8ca3a9c70,7d7b9c24-2075-419a-b307-abf8ca3a9c70,1,0,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,db4a9ccb-9ef5-4b3c-8577-b6fe5db1b62e,1,0,9233322b-dfdb-4c66-91fe-1299292d40a5,9233322b-dfdb-4c66-91fe-1299292d40a5,1,0,7795348b-2f52-47f7-bf00-e11e5e795a43,7795348b-2f52-47f7-bf00-e11e5e795a43,1,0,0421b67e-ed26-491d-ab98-ec59002ed4ce,0421b67e-ed26-491d-ab98-ec59002ed4ce,1,0,bb47ced2-31f9-4870-8633-20b986e53ccc,bb47ced2-31f9-4870-8633-20b986e53ccc,1,0,7d8acec9-f5a9-411e-921c-446ed0dd3332,7d8acec9-f5a9-411e-921c-446ed0dd3332,1,0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,739c01a9-1125-45ef-ab4e-8c73af4eeff0,1,0,cdbd26b1-9583-46e8-adf7-8cc705639892,cdbd26b1-9583-46e8-adf7-8cc705639892,1,0,c0e38c3e-7088-4e35-9d84-2d0ab9655402,c0e38c3e-7088-4e35-9d84-2d0ab9655402,1,0,1098786f-dd24-4cce-b212-be0cb5f01735,1098786f-dd24-4cce-b212-be0cb5f01735,1,0,3c0037f3-4422-4836-b116-8c72e32bdd55,3c0037f3-4422-4836-b116-8c72e32bdd55,1,0,6f7c6c31-206b-4010-bdad-1ad2e304f154,6f7c6c31-206b-4010-bdad-1ad2e304f154,1,0,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,a8659e53-8c6b-4b0c-9736-fe93a91e4d69,1,0,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,fe9a1d1a-19c0-499f-8e1b-09cadabe882f,1,0,b4629308-42de-4ce8-8591-cf0c2399a9a2,b4629308-42de-4ce8-8591-cf0c2399a9a2,1,0,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,c7e984ae-1dbb-4041-b18a-bfd0d63a002f,1,0,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,bb0424b8-dfd1-4a27-bd66-9dea3ffc77c4,1,0,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,a4ac0a50-ee39-4dc1-b84f-eec8fe485f03,1,0,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1861ee4f-fd8c-4afa-8441-c074bf51f67e,1,0,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,de7ed8f7-3c02-47e0-aea8-4747ac68a5d5,1,0,b93b8760-6200-40ee-8bdc-875ba80a6155,b93b8760-6200-40ee-8bdc-875ba80a6155,1,0,c27472ee-879a-4746-9d21-122738ec80b7,c27472ee-879a-4746-9d21-122738ec80b7,1,0,e8b248d9-9049-456a-9c7d-7a0462cc67ab,e8b248d9-9049-456a-9c7d-7a0462cc67ab,1,0,d4562287-440d-4462-9de2-7097ccbf3764,d4562287-440d-4462-9de2-7097ccbf3764,1,0,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,bf9ca98c-5c95-4cfb-9181-8c1d847f9fbb,1,0,ec797c75-02c5-4cf5-9dd4-26cd46c99519,ec797c75-02c5-4cf5-9dd4-26cd46c99519,1,0,6fccdf59-fc99-4a2b-a144-fffe438a147c,6fccdf59-fc99-4a2b-a144-fffe438a147c,1,0,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,af8bd73a-d8e8-487d-8f36-d835ab10ea3a,1,0,da9b32e6-5b93-45a6-84b2-238d57541e18,da9b32e6-5b93-45a6-84b2-238d57541e18,1,0,e43d69c8-b284-47da-b236-611bc94a15b6,e43d69c8-b284-47da-b236-611bc94a15b6,1,0,31eeaa05-6c49-41fe-b840-1edbad4ccac7,31eeaa05-6c49-41fe-b840-1edbad4ccac7,1,0,842c8662-8f39-405e-9665-cbdabc116159,842c8662-8f39-405e-9665-cbdabc116159,1,0,fca4b033-02c4-4d61-9e51-87783c3cef1a,fca4b033-02c4-4d61-9e51-87783c3cef1a,1,0,396ef757-d7f6-411f-8c4c-1acb1106a009,396ef757-d7f6-411f-8c4c-1acb1106a009,1,0,9aecf4f5-46ed-4d1c-a584-cd028e467895,9aecf4f5-46ed-4d1c-a584-cd028e467895,1,0,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,a1c379be-43d3-4e02-83bb-d2e7de2d4ae3,1,0,a1f10624-22e9-4a04-b370-fd085bdd0f67,a1f10624-22e9-4a04-b370-fd085bdd0f67,1,0,3cffb795-2a28-4beb-92f4-5813f5994022,3cffb795-2a28-4beb-92f4-5813f5994022,1,0,3323ca68-1382-4710-a933-23fc56588935,3323ca68-1382-4710-a933-23fc56588935,1,0,d6b12775-3255-42b8-88b2-62684f873e7d,d6b12775-3255-42b8-88b2-62684f873e7d,1,0,cc23d903-ccc5-42f4-862f-5e7278c4e346,cc23d903-ccc5-42f4-862f-5e7278c4e346,1,0,98f033e0-fa40-46e0-b51a-87a066749a35,98f033e0-fa40-46e0-b51a-87a066749a35,1,0,c53df2d1-4564-47a7-b66e-6a23ba28270e,c53df2d1-4564-47a7-b66e-6a23ba28270e,1,0,e8b4cb2d-1180-4101-954a-4cb5464f198c,e8b4cb2d-1180-4101-954a-4cb5464f198c,1,0,f765c4ba-c677-42ac-8d0c-43bb485405b9,f765c4ba-c677-42ac-8d0c-43bb485405b9,1,0,83192b3e-e7a9-4595-8887-24cda84457a9,83192b3e-e7a9-4595-8887-24cda84457a9,1,0,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,2fd1287d-d96d-4480-baf7-8815ae5ffbfb,1,0,c8a4c5da-bc88-4f6e-9787-1c22c2f41be7,c8a4c5da-bc88-4f6e-9787-1c22c2f41be7,1,0,08eeb8f1-944f-4450-83f6-ef20aaab7d86,08eeb8f1-944f-4450-83f6-ef20aaab7d86,1,0,8d77dd4a-e646-4105-8dcf-8ce8fc3da0b4,8d77dd4a-e646-4105-8dcf-8ce8fc3da0b4,1,0,2fd12dba-5311-4f31-949c-f6b15decc0cc,2fd12dba-5311-4f31-949c-f6b15decc0cc,1,0,d7cf3981-cf63-4a21-868b-8175a7704a8f,d7cf3981-cf63-4a21-868b-8175a7704a8f,1,0,35895e12-52b6-49a1-acdf-6d828a948af0,35895e12-52b6-49a1-acdf-6d828a948af0,1,0,0ae93712-74e8-41c7-8f2d-4dfc8983697d,0ae93712-74e8-41c7-8f2d-4dfc8983697d,1,0,060b6f18-538c-4ea1-9748-00efe0b1ab57,060b6f18-538c-4ea1-9748-00efe0b1ab57,1,0,307b6821-fd82-4a1c-9fdb-a26293d4f713,307b6821-fd82-4a1c-9fdb-a26293d4f713,1,0,a952960b-be1b-4ec4-bd76-80915065a60b,a952960b-be1b-4ec4-bd76-80915065a60b,1,0,64f548c8-c1fc-434e-b3ee-5be367ead1db,64f548c8-c1fc-434e-b3ee-5be367ead1db,1,0,9e4dfdfa-ec05-4c9e-89bd-fc24f60f2678,9e4dfdfa-ec05-4c9e-89bd-fc24f60f2678,1,0,ede5b7c8-42cd-4f79-90d2-b518e96d6b26,ede5b7c8-42cd-4f79-90d2-b518e96d6b26,1,0,cd592a5d-b184-4558-8a28-7079ccf28b89,cd592a5d-b184-4558-8a28-7079ccf28b89,1,0,2009c673-c1a5-45fc-8da2-a36c435085a6,2009c673-c1a5-45fc-8da2-a36c435085a6,1,0,ab7e5f9a-1dfe-4165-a540-21f45ae1d94d,ab7e5f9a-1dfe-4165-a540-21f45ae1d94d,1,0,5d16e042-3889-4851-86f1-bc43bf06ee88,5d16e042-3889-4851-86f1-bc43bf06ee88,1,0,e5a0e7c2-6186-43a3-a1c5-1f16990602a4,e5a0e7c2-6186-43a3-a1c5-1f16990602a4,1,0,3d47838b-e1aa-4acb-96bf-6de2f9be8bdb,3d47838b-e1aa-4acb-96bf-6de2f9be8bdb,1,0,e0d3efe0-a321-4790-ba5d-e549a91a3ec6,e0d3efe0-a321-4790-ba5d-e549a91a3ec6,1,0,e39ecc8a-ce81-483d-85de-b0488c8b7749,e39ecc8a-ce81-483d-85de-b0488c8b7749,1,0,8f3b124f-bf85-4307-8f0c-47be1fb5c8b0,8f3b124f-bf85-4307-8f0c-47be1fb5c8b0,1,0,e15c3525-3453-4b62-834e-7c69f9efea51,e15c3525-3453-4b62-834e-7c69f9efea51,1,0,1514eaff-faea-4d82-9465-d0d5292bb31d,1514eaff-faea-4d82-9465-d0d5292bb31d,1,0,6d39c6df-8cd4-47ad-9125-252b37d94575,6d39c6df-8cd4-47ad-9125-252b37d94575,1,0,739bd762-01fc-41a8-87df-844eb201962f,739bd762-01fc-41a8-87df-844eb201962f,1,0,ad73f3a3-1dad-4920-af41-bda2b947a2f7,ad73f3a3-1dad-4920-af41-bda2b947a2f7,1,0,98b67b5a-3550-4a64-9e07-07fcc9154c73,98b67b5a-3550-4a64-9e07-07fcc9154c73,1,0,ad7c6165-2e44-4808-a77a-526882cf5dea,ad7c6165-2e44-4808-a77a-526882cf5dea,1,0,b7e435a9-6107-4d02-a949-cff793462e31,b7e435a9-6107-4d02-a949-cff793462e31,1,0,f0cda8f5-56f5-423b-8c1c-7113433ebf25,f0cda8f5-56f5-423b-8c1c-7113433ebf25,1,0,1a220e88-428b-4d85-926d-e572bf19997c,1a220e88-428b-4d85-926d-e572bf19997c,1,0,ca0d938b-244e-421f-9fa4-320784b9f416,ca0d938b-244e-421f-9fa4-320784b9f416,1,0,a108b11d-a489-4684-84ea-d5377c7394de,a108b11d-a489-4684-84ea-d5377c7394de,1,0,289a2d84-2477-4177-a6ef-507e2cadeea2,289a2d84-2477-4177-a6ef-507e2cadeea2,1,0,757b547b-b79c-459a-a64a-eef19a09a38f,757b547b-b79c-459a-a64a-eef19a09a38f,1,0,61cd6eab-6bab-4382-986e-4c7fc44f369b,61cd6eab-6bab-4382-986e-4c7fc44f369b,1,0,950f8fd5-fefa-4bfb-97a0-38d77ae830dc,950f8fd5-fefa-4bfb-97a0-38d77ae830dc,1,0,cbbe7903-842c-470e-a2d6-7928df8f13e9,cbbe7903-842c-470e-a2d6-7928df8f13e9,1,0,e02597c4-bf45-4bb6-931d-62d2244f6c58,e02597c4-bf45-4bb6-931d-62d2244f6c58,1,0,42544966-445d-41b8-b6a0-a52c64758232,42544966-445d-41b8-b6a0-a52c64758232,1,0,c3d88576-8720-41d7-9d91-919ea45523c5,c3d88576-8720-41d7-9d91-919ea45523c5,1,0,e2c90080-4ed1-4b01-bcb7-3501018d652c,e2c90080-4ed1-4b01-bcb7-3501018d652c,1,0,f997854c-1b48-4d7e-b094-2166745a918c,f997854c-1b48-4d7e-b094-2166745a918c,1,0,16cdc2b4-9ea6-477e-b1bb-dfc8fec65a8d,16cdc2b4-9ea6-477e-b1bb-dfc8fec65a8d,1,0,9a4619e0-e76b-4607-9b1a-fcc79bdd356b,9a4619e0-e76b-4607-9b1a-fcc79bdd356b,1,0,34ce3078-9d00-402e-a9a1-0d05a43ec238,34ce3078-9d00-402e-a9a1-0d05a43ec238,1,0,799944ac-e6ef-4480-9f8e-032c95d4e3fc,799944ac-e6ef-4480-9f8e-032c95d4e3fc,1,0,da280465-d43d-4513-943d-6f91bdc8cefa,da280465-d43d-4513-943d-6f91bdc8cefa,1,0,a92d8a5c-b595-4c6c-9f1d-5e85b1c996b4,a92d8a5c-b595-4c6c-9f1d-5e85b1c996b4,1,0,bd68dd13-66bb-40ed-8f4b-0767b7063ffd,bd68dd13-66bb-40ed-8f4b-0767b7063ffd,1,0,9eea8645-1ba7-4faf-9c29-868bf99964dd,9eea8645-1ba7-4faf-9c29-868bf99964dd,1,0,e07ac651-07b9-4664-95e8-f3f5a51ea6c8,e07ac651-07b9-4664-95e8-f3f5a51ea6c8,1,0,0c44fdea-7b81-45be-87f5-d64456a9d379,0c44fdea-7b81-45be-87f5-d64456a9d379,1,0,d09d6f21-cdd0-485e-bd2c-92092a1aefef,d09d6f21-cdd0-485e-bd2c-92092a1aefef,1,0,2fc92784-d7b0-4209-ba06-e54bed2f160f,2fc92784-d7b0-4209-ba06-e54bed2f160f,1,0,d5a5f53b-9cd5-4036-a379-31680cec3c24,d5a5f53b-9cd5-4036-a379-31680cec3c24,1,0,e5b8ea5c-1d08-4f0a-a8f6-358b41e2e9f2,e5b8ea5c-1d08-4f0a-a8f6-358b41e2e9f2,1,0,a4e4c91c-fd95-4369-98e3-51ffba79937b,a4e4c91c-fd95-4369-98e3-51ffba79937b,1,0,d343d4e4-d07f-48c3-9db1-774b0d6c1134,d343d4e4-d07f-48c3-9db1-774b0d6c1134,1,0,14ef2331-6d9b-4cf1-90f3-7d4ac410439d,14ef2331-6d9b-4cf1-90f3-7d4ac410439d,1,0,04ab13b1-ffc2-47f5-aa0d-5850dcbd4a62,04ab13b1-ffc2-47f5-aa0d-5850dcbd4a62,1,0,968588bb-ee60-4399-955a-3ec4228d3c40,968588bb-ee60-4399-955a-3ec4228d3c40,1,0,23dbb528-7ea8-44ae-a1f2-b7608118666e,23dbb528-7ea8-44ae-a1f2-b7608118666e,1,0,b9627855-6773-4a59-b7d3-f9e2e565cd9e,b9627855-6773-4a59-b7d3-f9e2e565cd9e,1,0,ad87bd29-0ad1-4da4-ac62-38e714e0cb9f,ad87bd29-0ad1-4da4-ac62-38e714e0cb9f,1,0,283ce432-3553-4de9-94a2-ca9a590437f5,283ce432-3553-4de9-94a2-ca9a590437f5,1,0,0da019ca-1fc7-4aff-8998-3ddcccf10872,0da019ca-1fc7-4aff-8998-3ddcccf10872,1,0,7102d4fa-92f2-4fba-ad09-a33dbc71bef2,7102d4fa-92f2-4fba-ad09-a33dbc71bef2,1,0,34b0e268-497d-44d4-b822-84909d0685aa,34b0e268-497d-44d4-b822-84909d0685aa,1,0,8961a859-2203-4678-ae1f-63e2474a787a,8961a859-2203-4678-ae1f-63e2474a787a,1,0,fe63db47-3ece-4518-b6a2-0b6499f60a61,fe63db47-3ece-4518-b6a2-0b6499f60a61,1,0,654523be-93d9-4faa-9a35-ce2fede13820,654523be-93d9-4faa-9a35-ce2fede13820,1,0,671afc3e-7589-49d8-95a5-1cf195c3b2f8,671afc3e-7589-49d8-95a5-1cf195c3b2f8,1,0,47accdc7-8fa0-4996-9305-c42b6ca12df9,47accdc7-8fa0-4996-9305-c42b6ca12df9,1,0,5abc496c-5745-4220-9fdc-bac092717871,5abc496c-5745-4220-9fdc-bac092717871,1,0,256981be-18fd-4d92-91f3-6d55bbe2181b,256981be-18fd-4d92-91f3-6d55bbe2181b,1,0,d6bcf961-b863-486e-9a88-c237ae84f7c3,d6bcf961-b863-486e-9a88-c237ae84f7c3,1,0,1d75bfa4-5698-4cbc-98cb-591509fcfde8,1d75bfa4-5698-4cbc-98cb-591509fcfde8,1,0,26eb08f7-6c62-459f-b1f5-363cc40cae46,26eb08f7-6c62-459f-b1f5-363cc40cae46,1,0,cdbc7f5c-dbf9-49cd-a940-95b37bc7b734,cdbc7f5c-dbf9-49cd-a940-95b37bc7b734,1,0,7b802612-3034-4413-9ee8-60e94ebed6d6,7b802612-3034-4413-9ee8-60e94ebed6d6,1,0,59420cb5-d903-4e2c-a9e1-bc5494168daf,59420cb5-d903-4e2c-a9e1-bc5494168daf,1,0,5a88f624-7b7e-43fe-8bc4-ae85d832a855,5a88f624-7b7e-43fe-8bc4-ae85d832a855,1,0,42e39ef7-268f-4053-b4e5-4bceab17d3e4,42e39ef7-268f-4053-b4e5-4bceab17d3e4,1,0,7df36398-7752-4f51-9978-1bcb4bcdd062,7df36398-7752-4f51-9978-1bcb4bcdd062,1,0,9fd55b7f-209b-4b74-99d6-965b8f6f2df9,9fd55b7f-209b-4b74-99d6-965b8f6f2df9,1,0,f818fde9-1b06-4507-a69f-4dcb0ce8cd7a,f818fde9-1b06-4507-a69f-4dcb0ce8cd7a,1,0,a6690ef1-b16a-4d58-bc31-a8089b2c00d8,a6690ef1-b16a-4d58-bc31-a8089b2c00d8,1,0,fce03f58-7f68-4d7c-a999-687667c1f03d,fce03f58-7f68-4d7c-a999-687667c1f03d,1,0,316f94ec-81ed-4b5c-aa9d-98d2cfe1c641,316f94ec-81ed-4b5c-aa9d-98d2cfe1c641,1,0,f4885af5-6ed6-40e8-81a5-0e9537f943d7,f4885af5-6ed6-40e8-81a5-0e9537f943d7,1,0,87472d14-0d8c-4813-8a3e-2721bbb26811,87472d14-0d8c-4813-8a3e-2721bbb26811,1,0,44cf6d0a-0a5b-4ca1-b91e-af61f40fb825,44cf6d0a-0a5b-4ca1-b91e-af61f40fb825,1,0,dcdf2b25-b024-4a89-b2c4-0a2ee43ef623,dcdf2b25-b024-4a89-b2c4-0a2ee43ef623,1,0,9200527c-b6b9-4962-9440-10449583e1e3,9200527c-b6b9-4962-9440-10449583e1e3,1,0,e8faa1a9-807a-4916-b3c5-76ba2199754c,e8faa1a9-807a-4916-b3c5-76ba2199754c,1,0,99b5c632-61fe-41f5-ac00-ea530633bf28,99b5c632-61fe-41f5-ac00-ea530633bf28,1,0,a3c9c4e7-d36a-4db1-bd95-a50886c4be60,a3c9c4e7-d36a-4db1-bd95-a50886c4be60,1,0,4c53f94e-d7e8-457c-b337-59d3b3c5bf24,4c53f94e-d7e8-457c-b337-59d3b3c5bf24,1,0,bd6d7dcd-421c-402e-b6b8-f6ce6b18c140,bd6d7dcd-421c-402e-b6b8-f6ce6b18c140,1,0,485911f7-a964-450d-82da-cab020836eb2,485911f7-a964-450d-82da-cab020836eb2,1,0,484003f5-a6df-48fb-a395-d0e0ebc8cc0d,484003f5-a6df-48fb-a395-d0e0ebc8cc0d,1,0,cedd0b47-07cb-4dae-86b5-31d396b693c7,cedd0b47-07cb-4dae-86b5-31d396b693c7,1,0,8b4614aa-c769-49f4-a281-a0ffb101abf1,8b4614aa-c769-49f4-a281-a0ffb101abf1,1,0,c08391e1-c4e3-42aa-8738-061031d0cb75,c08391e1-c4e3-42aa-8738-061031d0cb75,1,0,b7a0d00f-fbf3-41fe-b72f-c17e163264f9,b7a0d00f-fbf3-41fe-b72f-c17e163264f9,1,0,bf4c6723-e586-4643-9f03-9e672afea26f,bf4c6723-e586-4643-9f03-9e672afea26f,1,0,4c3a39e3-40ee-423b-91f0-14b60e045b40,4c3a39e3-40ee-423b-91f0-14b60e045b40,1,0,23204b0b-bf77-4f7c-9945-e73ad924ebb4,23204b0b-bf77-4f7c-9945-e73ad924ebb4,1,0,dd9d3586-775b-4d5b-ab2d-78db0870ecdd,dd9d3586-775b-4d5b-ab2d-78db0870ecdd,1,0,44c610c3-9c0b-4bf0-95d6-f17100d3e98d,44c610c3-9c0b-4bf0-95d6-f17100d3e98d,1,0,a54f2d41-a05e-4878-80c6-81ca2899fa4c,a54f2d41-a05e-4878-80c6-81ca2899fa4c,1,0,23a898d9-5bcb-4744-ab6c-97b17dc98f20,23a898d9-5bcb-4744-ab6c-97b17dc98f20,1,0,50a04251-ac9c-4a21-a37f-ebc9ac3ef233,50a04251-ac9c-4a21-a37f-ebc9ac3ef233,1,0,f8f56806-ed7e-4059-a0c8-940538c14c98,f8f56806-ed7e-4059-a0c8-940538c14c98,1,0,9ff9f92b-c509-48da-82ce-15b524a895d6,9ff9f92b-c509-48da-82ce-15b524a895d6,1,0,c8bf96c8-f359-4940-8e87-3d190371d6d3,c8bf96c8-f359-4940-8e87-3d190371d6d3,1,0,477f0b81-0eb1-4de1-8cb5-38f1e0823947,477f0b81-0eb1-4de1-8cb5-38f1e0823947,1,0,d914eaa9-ce85-4df7-a545-2d411ef915b0,d914eaa9-ce85-4df7-a545-2d411ef915b0,1,0,41881344-82b7-4904-9ab8-0207d9bcd0a9,41881344-82b7-4904-9ab8-0207d9bcd0a9,1,0,21032fa5-9426-40bd-91e4-ace1e4ceb013,21032fa5-9426-40bd-91e4-ace1e4ceb013,1,0,7185a8f8-48c4-43a9-b31f-102302b8f152,7185a8f8-48c4-43a9-b31f-102302b8f152,1,0,ddfe5401-e136-4f20-aa65-aeb42a61a1f0,ddfe5401-e136-4f20-aa65-aeb42a61a1f0,1,0,27a80757-c0fd-40c7-ad24-4c819c1ba72b,27a80757-c0fd-40c7-ad24-4c819c1ba72b,1,0,c573a29f-4c39-402d-8af4-e0fff80877f8,c573a29f-4c39-402d-8af4-e0fff80877f8,1,0,7fce9e49-e558-4760-9d95-dde6ac6c1e78,7fce9e49-e558-4760-9d95-dde6ac6c1e78,1,0,e5aba4a3-6056-4ef3-827c-d74283175393,e5aba4a3-6056-4ef3-827c-d74283175393,1,0,63039e62-7314-42ff-bdc6-c251f38b3827,63039e62-7314-42ff-bdc6-c251f38b3827,1,0,8a4b7aab-b602-4581-8fa4-fab66791f701,8a4b7aab-b602-4581-8fa4-fab66791f701,1,0,7c92c579-4651-4fe3-90dc-6c9b594b76f0,7c92c579-4651-4fe3-90dc-6c9b594b76f0,1,0,a2be2d7a-cca0-460f-a915-dadfb9cd588b,a2be2d7a-cca0-460f-a915-dadfb9cd588b,1,0,35bac3e3-1329-4aa6-866f-f6fcaed8cd6e,35bac3e3-1329-4aa6-866f-f6fcaed8cd6e,1,0,ed53b24d-5338-4ae1-8659-0ea6450dc7bb,ed53b24d-5338-4ae1-8659-0ea6450dc7bb,1,0,6add2712-48e8-4b22-a7bb-7d8c808ac5fc,6add2712-48e8-4b22-a7bb-7d8c808ac5fc,1,0,1f4408f5-460e-431b-9842-bc6875ccf0ae,1f4408f5-460e-431b-9842-bc6875ccf0ae,1,0,ec09aa2d-758f-4ae8-96b7-0f05b8187dda,ec09aa2d-758f-4ae8-96b7-0f05b8187dda,1,0,7bfc6163-a62f-45e8-9112-40a5d675ba4a,7bfc6163-a62f-45e8-9112-40a5d675ba4a,1,0,542ff510-0245-4a08-80ac-a9941c66ae93,542ff510-0245-4a08-80ac-a9941c66ae93,1,0,03297623-eaa2-4db0-bf1b-ce2076faf20a,03297623-eaa2-4db0-bf1b-ce2076faf20a,1,0,3c6ef64e-c9bd-4cba-98a4-ffcc5b93b6da,3c6ef64e-c9bd-4cba-98a4-ffcc5b93b6da,1,0,700c2edd-c457-47b7-a7d3-5fb3d9078d1f,700c2edd-c457-47b7-a7d3-5fb3d9078d1f,1,0,82a3802c-b6d6-4511-bd8b-eeec003afa33,82a3802c-b6d6-4511-bd8b-eeec003afa33,1,0,8b59dec8-12b8-455f-8dfc-7c3f03b4ffa5,8b59dec8-12b8-455f-8dfc-7c3f03b4ffa5,1,0,b5eb2e12-c39c-44fa-b940-09b4dcd2817c,b5eb2e12-c39c-44fa-b940-09b4dcd2817c,1,0,5d5ffb56-e18b-4831-94f0-d7a76c2eee6f,5d5ffb56-e18b-4831-94f0-d7a76c2eee6f,1,0,590f29f4-2db1-47c6-83a0-f44d4bbe6e3e,590f29f4-2db1-47c6-83a0-f44d4bbe6e3e,1,0,a755cb43-492d-4069-9b6a-29b92ebb5b0e,a755cb43-492d-4069-9b6a-29b92ebb5b0e,1,0,2782420a-65fe-4714-bc91-732c88ba5b14,2782420a-65fe-4714-bc91-732c88ba5b14,1,0,3d170774-bd17-45a2-9d8a-4af3dbabeec4,3d170774-bd17-45a2-9d8a-4af3dbabeec4,1,0,86d09107-f511-4148-b5d9-d97e92addfde,86d09107-f511-4148-b5d9-d97e92addfde,1,0,c14c1f91-f4b9-44d6-b560-8dcdb5faf5f9,c14c1f91-f4b9-44d6-b560-8dcdb5faf5f9,1,0,55b78834-3d90-4858-a6f7-e0368b1d8c41,55b78834-3d90-4858-a6f7-e0368b1d8c41,1,0,059b9a75-f53a-4518-a48a-afc72ab9ee36,059b9a75-f53a-4518-a48a-afc72ab9ee36,1,0,bc0dcb68-bfb8-49f4-8eb4-2ca953d852bd,bc0dcb68-bfb8-49f4-8eb4-2ca953d852bd,1,0,31e95872-97c7-49e3-bd1b-8df4de07014d,31e95872-97c7-49e3-bd1b-8df4de07014d,1,0,8b9be02b-cd1f-4231-a895-6c9be26348c2,8b9be02b-cd1f-4231-a895-6c9be26348c2,1,0,c52c4b8c-6be7-460a-9b54-6cdf64e3f8fe,c52c4b8c-6be7-460a-9b54-6cdf64e3f8fe,1,0,64e03321-33a4-424d-a101-90f1e0da4c2e,64e03321-33a4-424d-a101-90f1e0da4c2e,1,0,fa4f0b33-5253-4a5f-8121-feae3e1968a6,fa4f0b33-5253-4a5f-8121-feae3e1968a6,1,0,e0d21be2-91dc-4a04-9078-49420ddddcd5,e0d21be2-91dc-4a04-9078-49420ddddcd5,1,0,56c97764-7dba-42e0-8ba0-82712aca20e9,56c97764-7dba-42e0-8ba0-82712aca20e9,1,0,03ad9b3d-8f3a-4482-a777-f6a3b3d953d6,03ad9b3d-8f3a-4482-a777-f6a3b3d953d6,1,0,3f05dcf9-be52-42e1-b5ff-dea14d97a26f,3f05dcf9-be52-42e1-b5ff-dea14d97a26f,1,0,ea868745-71fc-483c-aa6e-f242c06c673f,ea868745-71fc-483c-aa6e-f242c06c673f,1,0,7f3c6269-ea41-492f-87b7-7eaaf712762e,7f3c6269-ea41-492f-87b7-7eaaf712762e,1,0,a5d037b0-c666-4179-9d6a-5f48c4a126a8,a5d037b0-c666-4179-9d6a-5f48c4a126a8,1,0,f0850411-4dee-4f1d-baec-7d6c96b10637,f0850411-4dee-4f1d-baec-7d6c96b10637,1,0,12f95031-b81f-4802-b2f3-6f70def90db0,12f95031-b81f-4802-b2f3-6f70def90db0,1,0,5732112a-f31d-41cd-9a7f-312a27395502,5732112a-f31d-41cd-9a7f-312a27395502,1,0,bbf8342b-24f0-4d11-bb5a-4c89d5ea7766,bbf8342b-24f0-4d11-bb5a-4c89d5ea7766,1,0,691f9902-6b95-4579-a3d9-3b2b5b548776,691f9902-6b95-4579-a3d9-3b2b5b548776,1,0,06fc381d-f27a-433c-95c3-e0981e01f22b,06fc381d-f27a-433c-95c3-e0981e01f22b,1,0,f646835e-61eb-4ebd-811e-dac5e70bd1b4,f646835e-61eb-4ebd-811e-dac5e70bd1b4,1,0,61b49c4c-3021-4868-834a-9137476ae169,61b49c4c-3021-4868-834a-9137476ae169,1,0,58911911-5192-45fe-87cf-c4a222a521a1,58911911-5192-45fe-87cf-c4a222a521a1,1,0,70067937-9f27-4442-b87b-6c4576ce1b78,70067937-9f27-4442-b87b-6c4576ce1b78,1,0,115d5d06-a2fc-453e-aab5-c869b6d5850b,115d5d06-a2fc-453e-aab5-c869b6d5850b,1,0,d33ca006-d81d-4ef8-8503-7878e81c599f,d33ca006-d81d-4ef8-8503-7878e81c599f,1,0,123bb339-b95e-44c3-b1e9-482dcaa6f297,123bb339-b95e-44c3-b1e9-482dcaa6f297,1,0,f4119605-beb3-46b6-b372-ecdb74f10a33,f4119605-beb3-46b6-b372-ecdb74f10a33,1,0,d2a2e332-a52c-4277-bd19-5ea8ef198469,d2a2e332-a52c-4277-bd19-5ea8ef198469,1,0,e440c594-14bb-4a6e-af53-a4519c7d5548,e440c594-14bb-4a6e-af53-a4519c7d5548,1,0,4165bdaa-8e27-40de-bcdc-0379c34e8868,4165bdaa-8e27-40de-bcdc-0379c34e8868,1,0,a9a3fde2-99d5-4ebf-88b1-eccd9d74276e,a9a3fde2-99d5-4ebf-88b1-eccd9d74276e,1,0,a3131bf3-88b1-431c-a01c-be6e26396f91,a3131bf3-88b1-431c-a01c-be6e26396f91,1,0,e606f8eb-952a-4abb-b1ae-4211204bed84,e606f8eb-952a-4abb-b1ae-4211204bed84,1,0,7ddc3d13-fa6f-4fa9-870e-a34d5b2d9582,7ddc3d13-fa6f-4fa9-870e-a34d5b2d9582,1,0,1c2ad932-150a-4b15-b958-62eaa8a1eebc,1c2ad932-150a-4b15-b958-62eaa8a1eebc,1,0,b4deaebf-2c21-47d7-9436-10c94c94667c,b4deaebf-2c21-47d7-9436-10c94c94667c,1,0,2a12ce95-3214-4bd2-a0e6-c2af41875821,2a12ce95-3214-4bd2-a0e6-c2af41875821,1,0,bf05548c-babf-402b-b698-9a62e7c69add,bf05548c-babf-402b-b698-9a62e7c69add,1,0,f8295f29-2533-4013-981b-240f017d9f7c,f8295f29-2533-4013-981b-240f017d9f7c,1,0,538b316b-3876-4da6-8b97-ad8ef59de17d,538b316b-3876-4da6-8b97-ad8ef59de17d,1,0,f70f09fd-59e1-47b6-aaf3-cb4cc4ceaa7e,f70f09fd-59e1-47b6-aaf3-cb4cc4ceaa7e,1,0,ebc5f182-482b-4dec-9961-ce3a448abd0e,ebc5f182-482b-4dec-9961-ce3a448abd0e,1,0,83e618f5-1bf4-474a-9d65-389f1e4b16c3,83e618f5-1bf4-474a-9d65-389f1e4b16c3,1,0,1357512e-3ed3-455d-bc91-81db3b92f9fe,1357512e-3ed3-455d-bc91-81db3b92f9fe,1,0,82223d0f-41d9-45a6-9612-ae4d8408fa1b,82223d0f-41d9-45a6-9612-ae4d8408fa1b,1,0,3ee058a9-aff5-46f0-8928-8a417e7800d4,3ee058a9-aff5-46f0-8928-8a417e7800d4,1,0,c9a03f19-42bb-4e07-8ce8-1b954e431ada,c9a03f19-42bb-4e07-8ce8-1b954e431ada,1,0,ed4edc6f-048a-40d5-8f61-989895c95cf3,ed4edc6f-048a-40d5-8f61-989895c95cf3,1,0,dc17d8b6-d277-43eb-8823-71d440ae1e90,dc17d8b6-d277-43eb-8823-71d440ae1e90,1,0,c5b8bf21-5c8f-4e5b-8b85-bfac387ce99a,c5b8bf21-5c8f-4e5b-8b85-bfac387ce99a,1,0,2465986e-7519-4638-9f62-5f692bebeeac,2465986e-7519-4638-9f62-5f692bebeeac,1,0,66e24df5-f443-47c0-b0ad-97d00d6761c7,66e24df5-f443-47c0-b0ad-97d00d6761c7,1,0,d9a6706e-3dcd-4aec-b9d1-542330ba6e2e,d9a6706e-3dcd-4aec-b9d1-542330ba6e2e,1,0,7cbf0398-2bc7-4f40-9a9e-af4135c6a2d2,7cbf0398-2bc7-4f40-9a9e-af4135c6a2d2,1,0,cc770616-f6f6-4054-876c-f319b1f8c6cf,cc770616-f6f6-4054-876c-f319b1f8c6cf,1,0,3baffdec-a2cb-48c9-9c21-4fc469e81e3b,3baffdec-a2cb-48c9-9c21-4fc469e81e3b,1,0,8486e623-1a54-4ad9-ab44-591b6a559bc3,8486e623-1a54-4ad9-ab44-591b6a559bc3,1,0,dce82d28-9a7b-4d4c-af13-90f459cf4af2,dce82d28-9a7b-4d4c-af13-90f459cf4af2,1,0,cb9f2231-49bb-4b14-a124-8996628afead,cb9f2231-49bb-4b14-a124-8996628afead,1,0,6fe9a455-7fef-4a1b-8109-57eafc17e2b6,6fe9a455-7fef-4a1b-8109-57eafc17e2b6,1,0,dc1b8bce-49c5-4fd2-a597-27f1fbc98648,dc1b8bce-49c5-4fd2-a597-27f1fbc98648,1,0,ac4c6275-3c23-4a1f-b19e-c674fd685e8f,ac4c6275-3c23-4a1f-b19e-c674fd685e8f,1,0,896de79f-3c34-4436-a4e2-4dd4f45c3e20,896de79f-3c34-4436-a4e2-4dd4f45c3e20,1,0,25d118f0-bfb7-4f08-84b1-0511b0fc92e8,25d118f0-bfb7-4f08-84b1-0511b0fc92e8,1,0,e6c42b5d-57fd-42ce-a968-653620e797f6,e6c42b5d-57fd-42ce-a968-653620e797f6,1,0,724fb328-fec6-4afe-bc99-0ff0951b184b,724fb328-fec6-4afe-bc99-0ff0951b184b,1,0,7a0cdc94-9e53-4fcc-ac2f-97ad2ad939f5,7a0cdc94-9e53-4fcc-ac2f-97ad2ad939f5,1,0,f6259a3b-98f5-4649-8fd0-da0a0285f375,f6259a3b-98f5-4649-8fd0-da0a0285f375,1,0,c565bf25-c55e-4324-851a-cec497f5114a,c565bf25-c55e-4324-851a-cec497f5114a,1,0,2997e4da-d831-48e4-96e2-c29f9d077302,2997e4da-d831-48e4-96e2-c29f9d077302,1,0,30f59002-a23d-4eff-b84f-f280f11b220e,30f59002-a23d-4eff-b84f-f280f11b220e,1,0,b50994d0-23f9-4bf4-93d2-cf9bcffa6fc9,b50994d0-23f9-4bf4-93d2-cf9bcffa6fc9,1,0,5b0e250c-4d2d-4e37-ade1-593854610d3f,5b0e250c-4d2d-4e37-ade1-593854610d3f,1,0,14583452-805e-423d-be9a-e04683c7c46f,14583452-805e-423d-be9a-e04683c7c46f,1,0,148f63d5-23ad-4824-a24c-14d5a54c62d3,148f63d5-23ad-4824-a24c-14d5a54c62d3,1,0,d6cdd049-b31b-48aa-a2aa-a24b0bdf3337,d6cdd049-b31b-48aa-a2aa-a24b0bdf3337,1,0,eabfa8b7-fb65-43dd-9308-787f7cce88c9,eabfa8b7-fb65-43dd-9308-787f7cce88c9,1,0,4bf12710-aef2-43ec-b16f-9c6c9e8eb18d,4bf12710-aef2-43ec-b16f-9c6c9e8eb18d,1,0,b1e837ff-0edd-4525-b2e2-92cc7990e00e,b1e837ff-0edd-4525-b2e2-92cc7990e00e,1,0,30213cef-b2bc-4e6c-8094-74a61f28b2ed,30213cef-b2bc-4e6c-8094-74a61f28b2ed,1,0,037fd2f3-27f1-4d8f-a621-82fa5754e8c7,037fd2f3-27f1-4d8f-a621-82fa5754e8c7,1,0,8c72f824-b667-4d74-84aa-30eccfbbd2f0,8c72f824-b667-4d74-84aa-30eccfbbd2f0,1,0,ceb286e9-4e7c-49fa-a695-424073e0dffc,ceb286e9-4e7c-49fa-a695-424073e0dffc,1,0,727689c3-c0d8-496f-a47b-4f3243ad8974,727689c3-c0d8-496f-a47b-4f3243ad8974,1,0,057aadbd-f41f-4de4-95f4-9301557e6a0e,057aadbd-f41f-4de4-95f4-9301557e6a0e,1,0,ec7b492d-5d38-4f31-90e0-577ad181514e,ec7b492d-5d38-4f31-90e0-577ad181514e,1,0,f0f9cf2c-bbf9-4511-a1ab-3941c15310eb,f0f9cf2c-bbf9-4511-a1ab-3941c15310eb,1,0,da0686ce-25e2-4d2c-b152-283f5e4cf4b1,da0686ce-25e2-4d2c-b152-283f5e4cf4b1,1,0,4807629d-8421-4bd9-beb4-5b2940197958,4807629d-8421-4bd9-beb4-5b2940197958,1,0,4bad7c64-131a-42cb-9be7-d61f14f456d0,4bad7c64-131a-42cb-9be7-d61f14f456d0,1,0,d46e141b-7a10-4d65-971f-3a35f2114017,d46e141b-7a10-4d65-971f-3a35f2114017,1,0,cd6f96c7-33ee-42b1-bb81-ce7d9652337c,cd6f96c7-33ee-42b1-bb81-ce7d9652337c,1,0,766c7fb5-727e-4975-9ea1-3b0df4739620,766c7fb5-727e-4975-9ea1-3b0df4739620,1,0,ba59393c-c499-4999-91d4-b9e34d94db0e,ba59393c-c499-4999-91d4-b9e34d94db0e,1,0,626da0dd-d75b-4779-be1f-9b71d2f2d4e1,626da0dd-d75b-4779-be1f-9b71d2f2d4e1,1,0,1d4b7f71-6c72-4f41-a2ed-1f2fe2122c04,1d4b7f71-6c72-4f41-a2ed-1f2fe2122c04,1,0,fcf6a4cd-d0c9-4f83-b9b0-514baed3ccb9,fcf6a4cd-d0c9-4f83-b9b0-514baed3ccb9,1,0,3f92cffe-b4ea-45e3-b2b9-a9e316405a8c,3f92cffe-b4ea-45e3-b2b9-a9e316405a8c,1,0,e70a6eab-791f-4c70-bb92-f069c7486d1b,e70a6eab-791f-4c70-bb92-f069c7486d1b,1,0,f74f97b7-4cbf-4124-b441-d8bb5d9b1634,f74f97b7-4cbf-4124-b441-d8bb5d9b1634,1,0,a3a9a48b-f241-45b2-b93b-d34bba0a8a66,a3a9a48b-f241-45b2-b93b-d34bba0a8a66,1,0,ba5574bd-53ca-413f-a245-272f468a80fb,ba5574bd-53ca-413f-a245-272f468a80fb,1,0,772e7011-0019-4edc-b673-b7151cf4fa6c,772e7011-0019-4edc-b673-b7151cf4fa6c,1,0,21ac47fa-12c2-43e2-9b57-afdf521d3485,21ac47fa-12c2-43e2-9b57-afdf521d3485,1,0,f58bffe7-4a02-4c4e-bfed-7895177a400c,f58bffe7-4a02-4c4e-bfed-7895177a400c,1,0,fe285122-2257-4fb2-ab7e-1683c31db1c6,fe285122-2257-4fb2-ab7e-1683c31db1c6,1,0,0facc6eb-a178-45ee-a6bc-4bf085d80453,0facc6eb-a178-45ee-a6bc-4bf085d80453,1,0,f74eef36-9441-4b6f-b21c-de9643832f9f,f74eef36-9441-4b6f-b21c-de9643832f9f,1,0,8d1c44d7-52f2-4089-9d77-2f03bf051455,8d1c44d7-52f2-4089-9d77-2f03bf051455,1,0,ac2e5217-aaeb-4b6f-b063-538c84f2da06,ac2e5217-aaeb-4b6f-b063-538c84f2da06,1,0,b5e73fbe-499c-4666-a482-0ef399c97c1e,b5e73fbe-499c-4666-a482-0ef399c97c1e,1,0,a0811e0a-91b6-4c4b-a6d2-a57b9185983b,a0811e0a-91b6-4c4b-a6d2-a57b9185983b,1,0,4ac77dea-3c2b-4566-8857-ba99f7b025c9,4ac77dea-3c2b-4566-8857-ba99f7b025c9,1,0,8e87da88-9fa8-4dd8-b904-622b763239f4,8e87da88-9fa8-4dd8-b904-622b763239f4,1,0,529cc5b5-835f-4e70-9232-a9649fdc7ae5,529cc5b5-835f-4e70-9232-a9649fdc7ae5,1,0,09fec67d-6e45-428c-b858-9ae20979676c,09fec67d-6e45-428c-b858-9ae20979676c,1,0,4875a235-bcc8-47eb-83e3-a66f0f690b97,4875a235-bcc8-47eb-83e3-a66f0f690b97,1,0,58ffc4d9-d711-4b68-905c-d2ac4f78b547,58ffc4d9-d711-4b68-905c-d2ac4f78b547,1,0,114ab2a1-f7c3-4453-a6cc-4c5a23c00cb5,114ab2a1-f7c3-4453-a6cc-4c5a23c00cb5,1,0,93c347d8-66cb-406c-9ee6-b1962482893f,93c347d8-66cb-406c-9ee6-b1962482893f,1,0,94ab750f-46b4-427c-a7f2-4e94fb9b0678,94ab750f-46b4-427c-a7f2-4e94fb9b0678,1,0,397d9926-31a3-4c03-acb7-74478f9863e1,397d9926-31a3-4c03-acb7-74478f9863e1,1,0,264dd12a-b4c5-44bf-b3c0-ef9225505f76,264dd12a-b4c5-44bf-b3c0-ef9225505f76,1,0,90b8fdf3-3e42-442f-a002-6a28ad0edc99,90b8fdf3-3e42-442f-a002-6a28ad0edc99,1,0,92f35bea-50b8-4a1c-8fb2-a8c7df7a50db,92f35bea-50b8-4a1c-8fb2-a8c7df7a50db,1,0,82ba8c13-6567-4f0c-be0e-0884ce19bbcc,82ba8c13-6567-4f0c-be0e-0884ce19bbcc,1,0,f595539d-bdd1-4e7a-8279-3bb8a9344f45,f595539d-bdd1-4e7a-8279-3bb8a9344f45,1,0,697bd1de-bbef-4362-aa39-71f6008f4bd7,697bd1de-bbef-4362-aa39-71f6008f4bd7,1,0,a3e9afe9-1587-47c7-8e7b-b8df6b3a2664,a3e9afe9-1587-47c7-8e7b-b8df6b3a2664,1,0,0e31d69a-8d2c-4ad0-b3ac-93ba5afcefdf,0e31d69a-8d2c-4ad0-b3ac-93ba5afcefdf,1,0,3de28e34-3c1e-4e7f-a720-3418c8c9c496,3de28e34-3c1e-4e7f-a720-3418c8c9c496,1,0,7f2d69b4-2f87-40f4-a78c-fe4cabc2a502,7f2d69b4-2f87-40f4-a78c-fe4cabc2a502,1,0,dacb236e-42a5-47e5-b239-ff18ae48e21e,dacb236e-42a5-47e5-b239-ff18ae48e21e,1,0,5cdb6e71-fd20-461a-83db-d59ccdb5b366,5cdb6e71-fd20-461a-83db-d59ccdb5b366,1,0,388b8576-9ba4-460f-b71b-3d644663656a,388b8576-9ba4-460f-b71b-3d644663656a,1,0,d4d38827-fce6-4c39-a4b4-51c7d7edc475,d4d38827-fce6-4c39-a4b4-51c7d7edc475,1,0,2d40609d-b56f-4082-9a6f-8216817ebd24,2d40609d-b56f-4082-9a6f-8216817ebd24,1,0,b238b4b2-beaf-4b5d-a728-8aebac3bacb5,b238b4b2-beaf-4b5d-a728-8aebac3bacb5,1,0,732b19c8-4f22-4748-a796-71538e46fc2f,732b19c8-4f22-4748-a796-71538e46fc2f,1,0,9fb2169b-fc77-4a3f-a1d8-b939079d9d9d,9fb2169b-fc77-4a3f-a1d8-b939079d9d9d,1,0,3fe0ef25-ce56-435d-b343-eadfec91a636,3fe0ef25-ce56-435d-b343-eadfec91a636,1,0,74f02619-7fa8-4c6d-81d6-230156ee45f4,74f02619-7fa8-4c6d-81d6-230156ee45f4,1,0,62ef3558-5ad3-44ab-8578-1acbbfa54135,62ef3558-5ad3-44ab-8578-1acbbfa54135,1,0,a103cca0-8243-40e9-bcdd-97a1cc8a3943,a103cca0-8243-40e9-bcdd-97a1cc8a3943,1,0,c3572d8d-46ff-40bb-800c-2c07f884c219,c3572d8d-46ff-40bb-800c-2c07f884c219,1,0,80fd89d7-160d-4528-9aa0-05b8dac64b4c,80fd89d7-160d-4528-9aa0-05b8dac64b4c,1,0,4eb24fcd-85f6-4fa6-bc9f-baef3861664e,4eb24fcd-85f6-4fa6-bc9f-baef3861664e,1,0,da551cf6-4f86-4e37-8967-a84c80e1fb13,da551cf6-4f86-4e37-8967-a84c80e1fb13,1,0,5fb2c120-fd14-4e78-a35f-c8e9478b3235,5fb2c120-fd14-4e78-a35f-c8e9478b3235,1,0,9d514ce1-f9bd-4018-8107-545cdd372fbd,9d514ce1-f9bd-4018-8107-545cdd372fbd,1,0,fe6b732f-3a33-460f-9686-cffdd5f7d99b,fe6b732f-3a33-460f-9686-cffdd5f7d99b,1,0,06250212-aeb1-4cb8-8785-ea71b1dad848,06250212-aeb1-4cb8-8785-ea71b1dad848,1,0,0c068a61-e5e6-4475-96fa-b7c1d825da42,0c068a61-e5e6-4475-96fa-b7c1d825da42,1,0,1047e34d-397a-42cc-80e6-1be755bd6462,1047e34d-397a-42cc-80e6-1be755bd6462,1,0,1cd473c3-4e36-47a9-b466-73d86ec244b0,1cd473c3-4e36-47a9-b466-73d86ec244b0,1,0,c3e31dfd-b79b-49b9-9dc0-e2439bfe5ab7,c3e31dfd-b79b-49b9-9dc0-e2439bfe5ab7,1,0,b406b5f9-eeaf-43a0-8930-067554d783c9,b406b5f9-eeaf-43a0-8930-067554d783c9,1,0,47718840-2939-4e30-a72c-a20c88ac4c17,47718840-2939-4e30-a72c-a20c88ac4c17,1,0,58a38994-9fe4-4783-967d-79d1141b90f3,58a38994-9fe4-4783-967d-79d1141b90f3,1,0,6e23a4b2-f53c-41ea-9fef-8f4561b8e0cc,6e23a4b2-f53c-41ea-9fef-8f4561b8e0cc,1,0,7c2e35a8-d05d-4e52-baee-a1e13585c502,7c2e35a8-d05d-4e52-baee-a1e13585c502,1,0,5d8b60e5-d407-4d8a-b4fb-e26a36ab8180,5d8b60e5-d407-4d8a-b4fb-e26a36ab8180,1,0,2cea7641-6f1d-4bc7-9d38-8d99f196e0f5,2cea7641-6f1d-4bc7-9d38-8d99f196e0f5,1,0,7fa6a20a-26e2-41ad-be66-a43b50d0bbcd,7fa6a20a-26e2-41ad-be66-a43b50d0bbcd,1,0,ab5b0155-a4b1-47a1-ad87-12365dde20c1,ab5b0155-a4b1-47a1-ad87-12365dde20c1,1,0,f551f78a-2f05-4932-ac33-cfa1b077f46f,f551f78a-2f05-4932-ac33-cfa1b077f46f,1,0,a96091a7-d3a5-4893-8440-f360231bf468,a96091a7-d3a5-4893-8440-f360231bf468,1,0,9ce6eef0-5280-4374-9714-474ac571e4e2,9ce6eef0-5280-4374-9714-474ac571e4e2,1,0,6f21c34c-26aa-493d-aa08-2d4366b4064a,6f21c34c-26aa-493d-aa08-2d4366b4064a,1,0,0f55650a-2422-42a9-8258-61df4c17f1ef,0f55650a-2422-42a9-8258-61df4c17f1ef,1,0,2ef4ea1d-fd86-4ef3-a7e0-73abba89474d,2ef4ea1d-fd86-4ef3-a7e0-73abba89474d,1,0,3eaece9d-c9be-4b0b-a6f6-a3932274b806,3eaece9d-c9be-4b0b-a6f6-a3932274b806,1,0,5d9427ec-981d-4fb5-878b-8dba0d3a5536,5d9427ec-981d-4fb5-878b-8dba0d3a5536,1,0,c5dd6184-96e5-4abc-8c1e-5270e6547ee5,c5dd6184-96e5-4abc-8c1e-5270e6547ee5,1,0,a0047712-5769-495d-97af-20d06751a5b4,a0047712-5769-495d-97af-20d06751a5b4,1,0,e729c3c6-16e5-405b-99b1-a88022300c6d,e729c3c6-16e5-405b-99b1-a88022300c6d,1,0,9c089520-8233-42f6-8eee-9839ac708c6f,9c089520-8233-42f6-8eee-9839ac708c6f,1,0,24f2cfc7-6dc0-400c-8eb2-106ca2ea7034,24f2cfc7-6dc0-400c-8eb2-106ca2ea7034,1,0,5f3ffa44-49be-4da5-ab2a-a35c9bd76dee,5f3ffa44-49be-4da5-ab2a-a35c9bd76dee,1,0,89055896-49dd-4cfd-ab78-8ac3698e12d5,89055896-49dd-4cfd-ab78-8ac3698e12d5,1,0,aeb54e92-a1d0-46a1-b4cb-87d3c29fa30b,aeb54e92-a1d0-46a1-b4cb-87d3c29fa30b,1,0,8395bfb2-3cf4-4bec-b19b-eb6dd3aa7a39,8395bfb2-3cf4-4bec-b19b-eb6dd3aa7a39,1,0,672c4741-6d7b-4d3e-baa7-389bef0625d7,672c4741-6d7b-4d3e-baa7-389bef0625d7,1,0,04398ec0-1c13-43f8-8f5d-7b7619592a4d,04398ec0-1c13-43f8-8f5d-7b7619592a4d,1,0,ce463861-92df-47f2-bd0f-4a2dbf72aacc,ce463861-92df-47f2-bd0f-4a2dbf72aacc,1,0,eca79a64-3d00-4178-b4eb-cf5468622c96,eca79a64-3d00-4178-b4eb-cf5468622c96,1,0,1487d68c-7a2f-48cf-8c80-4074072ed52c,1487d68c-7a2f-48cf-8c80-4074072ed52c,1,0,6ed8c74c-6b6e-4ed1-95ff-a733f618b213,6ed8c74c-6b6e-4ed1-95ff-a733f618b213,1,0,d97c6536-fd62-4c9a-b83e-490a29a0721b,d97c6536-fd62-4c9a-b83e-490a29a0721b,1,0,60cd8bc4-6a5d-4d36-83d0-76a8477eda6a,60cd8bc4-6a5d-4d36-83d0-76a8477eda6a,1,0,6dc4c216-e49f-4833-b45f-6060b67995ef,6dc4c216-e49f-4833-b45f-6060b67995ef,1,0,4655fa12-9169-4d08-bdab-9b3174d0b223,4655fa12-9169-4d08-bdab-9b3174d0b223,1,0,6c07ddfb-8823-4953-9905-9550b847dc3f,6c07ddfb-8823-4953-9905-9550b847dc3f,1,0,2362a8d5-dca2-4527-acc0-63782377f28a,2362a8d5-dca2-4527-acc0-63782377f28a,1,0,dfd6d85c-a734-4458-83b0-87b5949f9c68,dfd6d85c-a734-4458-83b0-87b5949f9c68,1,0,4e3b0b9f-45b7-48a8-86c6-cc14a921aa78,4e3b0b9f-45b7-48a8-86c6-cc14a921aa78,1,0,79b6ecf5-8a6b-44a4-9587-5f8764463228,79b6ecf5-8a6b-44a4-9587-5f8764463228,1,0,cd49148c-e385-4b75-a758-a93196e73dba,cd49148c-e385-4b75-a758-a93196e73dba,1,0,ece15c4e-4a4b-421b-9f00-10f698da476b,ece15c4e-4a4b-421b-9f00-10f698da476b,1,0,6cb136cd-dc5c-4d85-8a0d-70b9f8bf70d5,6cb136cd-dc5c-4d85-8a0d-70b9f8bf70d5,1,0,300ecdd6-144f-48c8-9fd4-6166f1de1047,300ecdd6-144f-48c8-9fd4-6166f1de1047,1,0,b6bbfb59-8249-47af-9394-be262f118811,b6bbfb59-8249-47af-9394-be262f118811,1,0,15dab650-f7ed-42bc-8ca3-c104c3e68ce4,15dab650-f7ed-42bc-8ca3-c104c3e68ce4,1,0,fb63d488-fb91-4d08-8f8c-f4836538216f,fb63d488-fb91-4d08-8f8c-f4836538216f,1,0,b8be6c09-6880-45d3-a2d1-06ad72d069c9,b8be6c09-6880-45d3-a2d1-06ad72d069c9,1,0,3c1b10c7-3667-43f0-ac03-8cdaa84cb177,3c1b10c7-3667-43f0-ac03-8cdaa84cb177,1,0,148dd521-8754-451b-803b-cbee7c3d3965,148dd521-8754-451b-803b-cbee7c3d3965,1,0,38bc48c7-3938-47be-be3f-844f19561301,38bc48c7-3938-47be-be3f-844f19561301,1,0,4bdd09d5-6bc9-421f-99f0-ae905340f0d4,4bdd09d5-6bc9-421f-99f0-ae905340f0d4,1,0,147038fb-6154-41f3-aad6-547db27d1e43,147038fb-6154-41f3-aad6-547db27d1e43,1,0,832fa9d3-deab-4c57-b6e2-dee5d24d6100,832fa9d3-deab-4c57-b6e2-dee5d24d6100,1,0,dd4270ef-6b4c-491e-8871-959dbec14c53,dd4270ef-6b4c-491e-8871-959dbec14c53,1,0,c2b115d3-04f8-43c8-aed9-c61280b8cc3b,c2b115d3-04f8-43c8-aed9-c61280b8cc3b,1,0,8ccd9be8-ef26-49b9-8cee-03ae4e500386,8ccd9be8-ef26-49b9-8cee-03ae4e500386,1,0,ddca925c-fdcd-40ce-a504-4fca1758de3f,ddca925c-fdcd-40ce-a504-4fca1758de3f,1,0,f64de21f-5a7c-4a1a-a929-07fc53049f6c,f64de21f-5a7c-4a1a-a929-07fc53049f6c,1,0,470cdf43-07f4-46d5-aab2-d41f1e5da3cd,470cdf43-07f4-46d5-aab2-d41f1e5da3cd,1,0,ea653eca-f96a-447d-8b09-7a7cb6929ed6,ea653eca-f96a-447d-8b09-7a7cb6929ed6,1,0,ea07cd11-418c-4e4f-be9f-c160ee8a64e8,ea07cd11-418c-4e4f-be9f-c160ee8a64e8,1,0,5efc4bc4-b711-4620-8d2e-9d947c6cc141,5efc4bc4-b711-4620-8d2e-9d947c6cc141,1,0,1d8d0eed-caaa-494c-aeea-0df5846fc97a,1d8d0eed-caaa-494c-aeea-0df5846fc97a,1,0,6de9dab4-ee34-4584-a2e7-7a29c86794b0,6de9dab4-ee34-4584-a2e7-7a29c86794b0,1,0,ae52e48c-20ec-43cd-a9a5-b1753558e1d2,ae52e48c-20ec-43cd-a9a5-b1753558e1d2,1,0,5e08154e-bd8b-4e61-8a6c-b5b500f12b99,5e08154e-bd8b-4e61-8a6c-b5b500f12b99,1,0,39af0f4c-0f0d-4e9a-aa63-d0eee3985b4e,39af0f4c-0f0d-4e9a-aa63-d0eee3985b4e,1,0,2b72fe1c-afe1-4905-8db2-2bb1baca6295,2b72fe1c-afe1-4905-8db2-2bb1baca6295,1,0,aa8c4a71-3276-4b83-8be2-3528129e58b3,aa8c4a71-3276-4b83-8be2-3528129e58b3,1,0,4bc4c6db-0ef8-405f-8875-b4cb1540aeb5,4bc4c6db-0ef8-405f-8875-b4cb1540aeb5,1,0,dbd8391c-a174-43d6-a8db-d9ab76b4edbe,dbd8391c-a174-43d6-a8db-d9ab76b4edbe,1,0,e9a2441e-faf9-4158-acc7-b1a6178ae0f3,e9a2441e-faf9-4158-acc7-b1a6178ae0f3,1,0,ce5f5470-b704-4f55-8dc8-17cf2c2b367a,ce5f5470-b704-4f55-8dc8-17cf2c2b367a,1,0,0072986b-0463-4a39-9851-f9adeda99716,0072986b-0463-4a39-9851-f9adeda99716,1,0,fa44433b-1c44-45a0-9487-47aa092442cf,fa44433b-1c44-45a0-9487-47aa092442cf,1,0,041cecfd-cef2-45d9-90e8-afe0d97d2d95,041cecfd-cef2-45d9-90e8-afe0d97d2d95,1,0,0d4a26fb-7176-43f2-8767-d3e227c7306a,0d4a26fb-7176-43f2-8767-d3e227c7306a,1,0,933cbafc-5667-4a91-8b1d-dca3d7662522,933cbafc-5667-4a91-8b1d-dca3d7662522,1,0,7e4222fd-fb98-4ae5-9d98-d41c3d572a0c,7e4222fd-fb98-4ae5-9d98-d41c3d572a0c,1,0,d9d14a24-c023-4b69-ad57-30d1474e1232,d9d14a24-c023-4b69-ad57-30d1474e1232,1,0,b6e98aee-4936-491d-8c67-8490e1af2e34,b6e98aee-4936-491d-8c67-8490e1af2e34,1,0,b292eb46-df87-43c0-9a37-93c5a22af252,b292eb46-df87-43c0-9a37-93c5a22af252,1,0,0943dd00-1653-4760-a9fe-ebc083ffa660,0943dd00-1653-4760-a9fe-ebc083ffa660,1,0,ede6a379-b0e5-4b8d-a454-779c0fd8b0b3,ede6a379-b0e5-4b8d-a454-779c0fd8b0b3,1,0,4fb8564e-2338-4c23-84a4-31f768047ced,4fb8564e-2338-4c23-84a4-31f768047ced,1,0,6179c7bf-08d6-4600-8cdc-ea6d4187bd55,6179c7bf-08d6-4600-8cdc-ea6d4187bd55,1,0,f93c9a7f-0249-421e-b3d0-55f02d130017,f93c9a7f-0249-421e-b3d0-55f02d130017,1,0,062c507a-9d35-4eb5-bb91-d106a535a503,062c507a-9d35-4eb5-bb91-d106a535a503,1,0,ea1284f2-33f1-4e3d-b009-1ffad3aaf300,ea1284f2-33f1-4e3d-b009-1ffad3aaf300,1,0,fd317d96-380e-4ee7-a25b-401e8521cc7a,fd317d96-380e-4ee7-a25b-401e8521cc7a,1,0,3b380a63-9232-42c2-bfa2-e8fc89448bbd,3b380a63-9232-42c2-bfa2-e8fc89448bbd,1,0,e18b4527-8727-4a10-9e99-a80012debe6c,e18b4527-8727-4a10-9e99-a80012debe6c,1,0,1ed910db-e434-4efd-9b12-c25353a31d5a,1ed910db-e434-4efd-9b12-c25353a31d5a,1,0,10556a26-ea4b-46b4-84d1-175eb13b333f,10556a26-ea4b-46b4-84d1-175eb13b333f,1,0,f1e600b0-55ed-4611-b147-f04d5621796b,f1e600b0-55ed-4611-b147-f04d5621796b,1,0,e3b84128-95e1-45df-84db-5e1791779543,e3b84128-95e1-45df-84db-5e1791779543,1,0,76702e9e-fa7a-4b98-befa-f9b37db2dae0,76702e9e-fa7a-4b98-befa-f9b37db2dae0,1,0,101a4eb3-cdda-47af-8c69-615a6920347a,101a4eb3-cdda-47af-8c69-615a6920347a,1,0,cf19f220-f6d4-4c9e-b5d5-9d94234f0a2c,cf19f220-f6d4-4c9e-b5d5-9d94234f0a2c,1,0,e9d95895-8708-4035-89ad-72573b870491,e9d95895-8708-4035-89ad-72573b870491,1,0,f410a5db-8698-44ca-9ff6-2c530e1f5c2a,f410a5db-8698-44ca-9ff6-2c530e1f5c2a,1,0,f79bada2-838f-4e4f-a017-935cf671a70c,f79bada2-838f-4e4f-a017-935cf671a70c,1,0,312118ff-a2a4-479c-964a-5250cca0cd20,312118ff-a2a4-479c-964a-5250cca0cd20,1,0,f8d32d21-ea2f-42bb-a785-9bd3cf754cd9,f8d32d21-ea2f-42bb-a785-9bd3cf754cd9,1,0,3f3a0b1b-04ce-47c1-928d-5e3483e9fd73,3f3a0b1b-04ce-47c1-928d-5e3483e9fd73,1,0,8a310493-c06f-46db-b2b5-14d6ed203312,8a310493-c06f-46db-b2b5-14d6ed203312,1,0,caf8f0e8-7a2c-498b-9b74-ed6b87cce670,caf8f0e8-7a2c-498b-9b74-ed6b87cce670,1,0,b68ec95b-64f3-4a2b-9683-231d50f01eeb,b68ec95b-64f3-4a2b-9683-231d50f01eeb,1,0,89318397-b3a6-4468-985b-ed5cb8ab5cdb,89318397-b3a6-4468-985b-ed5cb8ab5cdb,1,0,5e5b0ad7-ef73-4a73-baf5-360a9244a1cc,5e5b0ad7-ef73-4a73-baf5-360a9244a1cc,1,0,4a008342-f72f-4ca1-bad1-64b59b509911,4a008342-f72f-4ca1-bad1-64b59b509911,1,0,4436b2cf-2d71-401f-99fd-012ff0c91fbd,4436b2cf-2d71-401f-99fd-012ff0c91fbd,1,0,cefa1723-a4d4-44c4-bd57-ffa713f9306c,cefa1723-a4d4-44c4-bd57-ffa713f9306c,1,0,5d75aae8-9d9c-4a47-b8c0-2ce56431fe53,5d75aae8-9d9c-4a47-b8c0-2ce56431fe53,1,0,5396be45-d7c0-43df-aed4-cad062a02b11,5396be45-d7c0-43df-aed4-cad062a02b11,1,0,017e3da8-e48e-488b-9bbf-4fef1a4f3417,017e3da8-e48e-488b-9bbf-4fef1a4f3417,1,0,de4d37c9-b278-4c0c-bc10-1b63ecd72947,de4d37c9-b278-4c0c-bc10-1b63ecd72947,1,0,5a741cf6-8160-4409-9396-2e6d1e67e6fa,5a741cf6-8160-4409-9396-2e6d1e67e6fa,1,0,4920aabf-6f53-4f91-932a-8ace24631a74,4920aabf-6f53-4f91-932a-8ace24631a74,1,0,ce7a7f72-9d7d-4240-b852-e83b4b8d944b,ce7a7f72-9d7d-4240-b852-e83b4b8d944b,1,0,7309e58d-b0d4-4e0f-a74d-68cab03fea8e,7309e58d-b0d4-4e0f-a74d-68cab03fea8e,1,0,bbec9c3d-31dd-484e-ab32-41ef845f1370,bbec9c3d-31dd-484e-ab32-41ef845f1370,1,0,8692ba41-d91d-4af0-8aba-69dd5409d593,8692ba41-d91d-4af0-8aba-69dd5409d593,1,0,a95b564a-c895-40f2-b947-ea08462bb2a0,a95b564a-c895-40f2-b947-ea08462bb2a0,1,0,1e015740-5b45-4729-9732-57359a7c602f,1e015740-5b45-4729-9732-57359a7c602f,1,0,db82191f-77bd-44da-8b33-86f01018e25a,db82191f-77bd-44da-8b33-86f01018e25a,1,0,ca63ca2f-703d-4317-8c5d-0650ea638f3f,ca63ca2f-703d-4317-8c5d-0650ea638f3f,1,0,aa2256c7-9847-40a5-9e49-11c508e0d45b,aa2256c7-9847-40a5-9e49-11c508e0d45b,1,0,a04493f4-508c-4047-b0e3-b7d4bde6427b,a04493f4-508c-4047-b0e3-b7d4bde6427b,1,0,418982cd-d403-47cf-a7ef-993a36104947,418982cd-d403-47cf-a7ef-993a36104947,1,0,485ebc6a-0e3e-4278-8ef1-c6194d6d5015,485ebc6a-0e3e-4278-8ef1-c6194d6d5015,1,0,816c8143-8b02-4f4a-8eb1-44c7fb36afcc,816c8143-8b02-4f4a-8eb1-44c7fb36afcc,1,0,35eea3b8-d017-442a-b5a0-a1571165b9a9,35eea3b8-d017-442a-b5a0-a1571165b9a9,1,0,7e84901c-cb7f-437c-a135-0902cd47acb6,7e84901c-cb7f-437c-a135-0902cd47acb6,1,0,da2b47f5-4109-4f72-a4a5-70be24a6881f,da2b47f5-4109-4f72-a4a5-70be24a6881f,1,0,f0152598-ffa3-4eb7-811f-906e569373e6,f0152598-ffa3-4eb7-811f-906e569373e6,1,0,849f034e-85dc-4515-aae6-240c1e0d46d9,849f034e-85dc-4515-aae6-240c1e0d46d9,1,0,5fbea8c7-48e3-4ed0-a8d0-cf942b37a166,5fbea8c7-48e3-4ed0-a8d0-cf942b37a166,1,0,d85ba2d1-63e9-4680-bd88-6c0c4dba5d0f,d85ba2d1-63e9-4680-bd88-6c0c4dba5d0f,1,0,acfa1919-07ce-4464-8552-6b104e284dca,acfa1919-07ce-4464-8552-6b104e284dca,1,0,cd74d617-8ebe-4a7d-b011-38c98d856d8c,cd74d617-8ebe-4a7d-b011-38c98d856d8c,1,0,f4cff4ff-68e9-4072-971e-1b359d3aa980,f4cff4ff-68e9-4072-971e-1b359d3aa980,1,0,f9a5bd40-7c56-4ced-bddb-a66c1fc31b81,f9a5bd40-7c56-4ced-bddb-a66c1fc31b81,1,0,fdb012c9-583a-42af-95da-070e75a58078,fdb012c9-583a-42af-95da-070e75a58078,1,0,7d069b11-cddd-463d-97be-3cbeaaf0954c,7d069b11-cddd-463d-97be-3cbeaaf0954c,1,0,8c5fae4c-b5b6-4e05-9453-4ac5de07c54c,8c5fae4c-b5b6-4e05-9453-4ac5de07c54c,1,0,38b48750-1411-493b-b18e-42d39312aad8,38b48750-1411-493b-b18e-42d39312aad8,1,0,8242daae-181a-47df-b28e-c1de3fce0359,8242daae-181a-47df-b28e-c1de3fce0359,1,0,7531fb7c-a4ae-42df-b8e5-d8bfcb66be52,7531fb7c-a4ae-42df-b8e5-d8bfcb66be52,1,0,d1b950b0-dd66-49f9-998e-3ae5e820ae7f,d1b950b0-dd66-49f9-998e-3ae5e820ae7f,1,0,57e39881-cbf9-4cac-9ed0-bf4a6ea667ee,57e39881-cbf9-4cac-9ed0-bf4a6ea667ee,1,0,b9004626-915c-44c8-9cb7-25e5b627ee83,b9004626-915c-44c8-9cb7-25e5b627ee83,1,0,63c6cfad-124d-491a-829d-b298463c95e6,63c6cfad-124d-491a-829d-b298463c95e6,1,0,737404de-5b9d-4445-81c5-2c5b50b36846,737404de-5b9d-4445-81c5-2c5b50b36846,1,0,1e020429-ac68-46f4-b34c-c2c4a2b494f6,1e020429-ac68-46f4-b34c-c2c4a2b494f6,1,0,1c1a5bf8-bbe6-4a69-973e-11445175dac2,1c1a5bf8-bbe6-4a69-973e-11445175dac2,1,0,f11ffcfd-3588-4785-b222-cebe80455303,f11ffcfd-3588-4785-b222-cebe80455303,1,0,789a2027-8601-434c-bf47-37696a3966ad,789a2027-8601-434c-bf47-37696a3966ad,1,0,1c7e9baa-7728-4afd-829a-806cee13ecdb,1c7e9baa-7728-4afd-829a-806cee13ecdb,1,0,5d216c28-0724-4e7d-86cf-b6f75e7e28b7,5d216c28-0724-4e7d-86cf-b6f75e7e28b7,1,0,bfdc6346-db5b-427f-acca-9b48db8fefd0,bfdc6346-db5b-427f-acca-9b48db8fefd0,1,0,1c3f258c-345e-47f6-9e29-98b1222fb348,1c3f258c-345e-47f6-9e29-98b1222fb348,1,0,dfafcdf3-cdeb-4822-9f41-a730d9d3fb24,dfafcdf3-cdeb-4822-9f41-a730d9d3fb24,1,0,4c3085e1-2f86-4af4-a392-ab45e30a7152,4c3085e1-2f86-4af4-a392-ab45e30a7152,1,0,35c938f4-065f-47f5-a75b-637ed0080725,35c938f4-065f-47f5-a75b-637ed0080725,1,0,5cc3a29d-aa98-42bf-9800-f584229c8e46,5cc3a29d-aa98-42bf-9800-f584229c8e46,1,0,e14c0841-226c-4c79-bec9-cfc8d2c3a160,e14c0841-226c-4c79-bec9-cfc8d2c3a160,1,0,73e4bce2-df4a-4f60-a369-55f588a46bd1,73e4bce2-df4a-4f60-a369-55f588a46bd1,1,0,6f3c5b90-b030-4267-a973-33d12c2c7680,6f3c5b90-b030-4267-a973-33d12c2c7680,1,0,1ff8210b-26c5-4429-b580-7c6ec7c9b63a,1ff8210b-26c5-4429-b580-7c6ec7c9b63a,1,0,c6af8b0f-3767-4198-88e2-f5763cb0294a,c6af8b0f-3767-4198-88e2-f5763cb0294a,1,0,b107a4a8-0db8-44f4-93f7-9f231e850398,b107a4a8-0db8-44f4-93f7-9f231e850398,1,0,88b879b7-1bb3-4478-b569-35bdb5c56939,88b879b7-1bb3-4478-b569-35bdb5c56939,1,0,7a62d031-c340-4b1e-90af-fff697a2e979,7a62d031-c340-4b1e-90af-fff697a2e979,1,0,18bf6916-83cc-41e5-a35b-1489450ae632,18bf6916-83cc-41e5-a35b-1489450ae632,1,0,ebab97cf-5335-4648-9845-8ca41f79fb49,ebab97cf-5335-4648-9845-8ca41f79fb49,1,0,bb29fa44-6772-4426-a0b8-422115e14288,bb29fa44-6772-4426-a0b8-422115e14288,1,0,904e1209-91d8-49b1-b291-364ef728cbbf,904e1209-91d8-49b1-b291-364ef728cbbf,1,0,1198f2ee-b8a8-456d-9461-61bc5d42c7a1,1198f2ee-b8a8-456d-9461-61bc5d42c7a1,1,0,b8ecb7f0-ef40-4d31-9ec2-a731439d3200,b8ecb7f0-ef40-4d31-9ec2-a731439d3200,1,0,e4da2959-0fb0-48fb-a5aa-e7a5589d69c3,e4da2959-0fb0-48fb-a5aa-e7a5589d69c3,1,0,b5365cb6-a4e7-479b-82f4-f4ad80fcd7c9,b5365cb6-a4e7-479b-82f4-f4ad80fcd7c9,1,0,e51ae56c-d311-46b7-8d4c-19a432f4cd16,e51ae56c-d311-46b7-8d4c-19a432f4cd16,1,0,e000d04e-37eb-4d95-a833-b0a9b10ee0b9,e000d04e-37eb-4d95-a833-b0a9b10ee0b9,1,0,40d3ed07-3b56-4c9f-8b96-d94455202ef0,40d3ed07-3b56-4c9f-8b96-d94455202ef0,1,0,23314bcd-2dd4-43f1-9fdb-ae182a48c886,23314bcd-2dd4-43f1-9fdb-ae182a48c886,1,0,c5f86fa3-4a36-4e22-8b57-7088dd250cd3,c5f86fa3-4a36-4e22-8b57-7088dd250cd3,1,0,9440a132-366f-4fc9-bd72-2544ba2b072a,9440a132-366f-4fc9-bd72-2544ba2b072a,1,0,84282afa-21f5-40db-9386-e6f741c9a06c,84282afa-21f5-40db-9386-e6f741c9a06c,1,0,5b3b3da9-8619-4fbd-b140-3528875cd179,5b3b3da9-8619-4fbd-b140-3528875cd179,1,0,99e5e866-7ac6-4916-ab66-3e2909822c56,99e5e866-7ac6-4916-ab66-3e2909822c56,1,0,03363877-2752-4a03-95f2-d73b732e0bfd,03363877-2752-4a03-95f2-d73b732e0bfd,1,0,8d9d2284-e592-44c5-93bb-247037ab6b95,8d9d2284-e592-44c5-93bb-247037ab6b95,1,0,0b0d2b7c-d52e-4163-83cf-a7e86bb47c47,0b0d2b7c-d52e-4163-83cf-a7e86bb47c47,1,0,78051e10-74ab-44be-adca-e4c93824a386,78051e10-74ab-44be-adca-e4c93824a386,1,0,73629419-83d8-4727-88a9-76c851d104c9,73629419-83d8-4727-88a9-76c851d104c9,1,0,cadb54f0-dcff-4f96-983e-a309fd72f330,cadb54f0-dcff-4f96-983e-a309fd72f330,1,0,a9c3065b-db68-4f59-9235-33f9fbfdaafd,a9c3065b-db68-4f59-9235-33f9fbfdaafd,1,0,3715cf3d-0abc-4711-8ac9-d41f0be7878f,3715cf3d-0abc-4711-8ac9-d41f0be7878f,1,0,8e8d8078-8b32-4c24-b26e-89a92bf60160,8e8d8078-8b32-4c24-b26e-89a92bf60160,1,0,f96cbb27-7619-41e0-8577-e623ef02dc58,f96cbb27-7619-41e0-8577-e623ef02dc58,1,0,ed5ff5b0-f980-4b9a-9299-eef68e3b42d5,ed5ff5b0-f980-4b9a-9299-eef68e3b42d5,1,0,d74dfd31-2016-435b-8652-15fdbca59490,d74dfd31-2016-435b-8652-15fdbca59490,1,0,ba8111a9-1d33-4615-ad0b-b3e923b2f3bd,ba8111a9-1d33-4615-ad0b-b3e923b2f3bd,1,0,27651e0e-d560-434b-a49c-f473a5b20c4d,27651e0e-d560-434b-a49c-f473a5b20c4d,1,0,dab1491b-0685-442d-b945-2bfde3f37933,dab1491b-0685-442d-b945-2bfde3f37933,1,0,ce85554b-81ba-4149-a951-d09bdc14fa16,ce85554b-81ba-4149-a951-d09bdc14fa16,1,0,23a1ef35-1469-44ea-8535-fa9c7f535cae,23a1ef35-1469-44ea-8535-fa9c7f535cae,1,0,9ff1c73e-71be-4ea6-97fb-e710d995ee62,9ff1c73e-71be-4ea6-97fb-e710d995ee62,1,0,8c7d74bf-2865-47d9-8a16-5b0db1104a3a,8c7d74bf-2865-47d9-8a16-5b0db1104a3a,1,0,2558d812-ac0a-49ba-87db-3f661209a3c4,2558d812-ac0a-49ba-87db-3f661209a3c4,1,0,20d712ef-77c1-4374-92e1-f20a3ebc7eab,20d712ef-77c1-4374-92e1-f20a3ebc7eab,1,0,65d23ce8-e326-45ee-86b0-6dcf35797201,65d23ce8-e326-45ee-86b0-6dcf35797201,1,0,a2683c3f-1b21-47d8-951d-7d30cde51efc,a2683c3f-1b21-47d8-951d-7d30cde51efc,1,0,54c77053-1728-4914-a354-73fe8853a0e1,54c77053-1728-4914-a354-73fe8853a0e1,1,0,21136691-078f-4bf7-bddd-f41416a76d86,21136691-078f-4bf7-bddd-f41416a76d86,1,0,30a121c7-c4f5-45c4-9504-9778ed85d9e3,30a121c7-c4f5-45c4-9504-9778ed85d9e3,1,0,c68e2157-2541-4f80-966a-d68ce603f131,c68e2157-2541-4f80-966a-d68ce603f131,1,0,e5dfee58-f748-48ee-81a3-7c6133f06365,e5dfee58-f748-48ee-81a3-7c6133f06365,1,0,68500931-89e0-491e-aba8-b013c9e6f8c3,68500931-89e0-491e-aba8-b013c9e6f8c3,1,0,70b79e56-bb71-4f38-93cf-94dda79d9b4c,70b79e56-bb71-4f38-93cf-94dda79d9b4c,1,0,5c4c9931-3fb0-47a8-9e4f-d552de12b355,5c4c9931-3fb0-47a8-9e4f-d552de12b355,1,0,dc1d0f97-e2f3-4e1d-b21c-411b46e39848,dc1d0f97-e2f3-4e1d-b21c-411b46e39848,1,0,ef6ccd0d-73c6-4314-9912-efa7ff27c823,ef6ccd0d-73c6-4314-9912-efa7ff27c823,1,0,2a498baf-ec2e-4dda-b568-801bb60db225,2a498baf-ec2e-4dda-b568-801bb60db225,1,0,8a32af97-cdb5-46b4-ab7b-e1509e26ecc3,8a32af97-cdb5-46b4-ab7b-e1509e26ecc3,1,0,9f59f8cd-8d61-4fbc-ae6e-32f28ce0035a,9f59f8cd-8d61-4fbc-ae6e-32f28ce0035a,1,0,70f156d8-9cb4-442d-a36b-7a43d03bcd12,70f156d8-9cb4-442d-a36b-7a43d03bcd12,1,0,35989876-16b1-4b02-9381-444a06a7a21d,35989876-16b1-4b02-9381-444a06a7a21d,1,0,f7608000-1e8a-4ca4-afb7-e04ef547b70a,f7608000-1e8a-4ca4-afb7-e04ef547b70a,1,0,f0a6de82-45ab-4153-bccf-df82fc960aa1,f0a6de82-45ab-4153-bccf-df82fc960aa1,1,0,77adf47b-6015-46fc-9e29-f1c025ea0d81,77adf47b-6015-46fc-9e29-f1c025ea0d81,1,0,26cea519-19d0-4707-be0a-1a43fde6e563,26cea519-19d0-4707-be0a-1a43fde6e563,1,0,9fb3e902-3154-4bab-9bfe-9a266dc49fa5,9fb3e902-3154-4bab-9bfe-9a266dc49fa5,1,0,60c04f0a-78a8-4c55-8844-b86906350fd1,60c04f0a-78a8-4c55-8844-b86906350fd1,1,0,851306a7-8847-4b43-8214-898bfc24b0ab,851306a7-8847-4b43-8214-898bfc24b0ab,1,0,af8d4bc9-2f0f-44d3-89ce-2593877055c8,af8d4bc9-2f0f-44d3-89ce-2593877055c8,1,0,344fb829-a1cc-4b17-8f98-2d4f93bfcd6a,344fb829-a1cc-4b17-8f98-2d4f93bfcd6a,1,0,eb35bff2-8467-48fe-bf93-ece2aa40f506,eb35bff2-8467-48fe-bf93-ece2aa40f506,1,0,68cf55da-b29e-4a65-815b-c9cdc8e5888e,68cf55da-b29e-4a65-815b-c9cdc8e5888e,1,0,a9f927ef-22a2-4d77-8648-4bb25eeaccf2,a9f927ef-22a2-4d77-8648-4bb25eeaccf2,1,0,1041ed81-c1f7-43b2-9087-914865a3076e,1041ed81-c1f7-43b2-9087-914865a3076e,1,0,5d7174d2-42b3-4e12-b705-4209dd73b53b,5d7174d2-42b3-4e12-b705-4209dd73b53b,1,0,b1b5bf08-1c57-4875-87bb-ad1fa1a3251f,b1b5bf08-1c57-4875-87bb-ad1fa1a3251f,1,0,e00dcab4-5e92-44e3-bcdf-a31dd32a195f,e00dcab4-5e92-44e3-bcdf-a31dd32a195f,1,0,5a4c6511-f8ed-40e4-a251-e28f62629cf2,5a4c6511-f8ed-40e4-a251-e28f62629cf2,1,0,cfe59dfd-a509-4f83-b926-b3ff94234a43,cfe59dfd-a509-4f83-b926-b3ff94234a43,1,0,17df1591-61b0-4204-8379-8d1f58445968,17df1591-61b0-4204-8379-8d1f58445968,1,0,9020fa9d-e7de-4574-ab65-db6651b5b610,9020fa9d-e7de-4574-ab65-db6651b5b610,1,0,fd5e72f7-3078-48eb-b01b-1800ffbd86d3,fd5e72f7-3078-48eb-b01b-1800ffbd86d3,1,0,e83ad33d-27df-4181-afd2-b7f416e6e705,e83ad33d-27df-4181-afd2-b7f416e6e705,1,0,ddeec7f4-8bd3-40af-bcac-00d18c0e6d6a,ddeec7f4-8bd3-40af-bcac-00d18c0e6d6a,1,0,f0438b0a-7916-4de4-a3a8-d43407c3295f,f0438b0a-7916-4de4-a3a8-d43407c3295f,1,0,3309648c-aae6-4684-ae8d-7ed636bc3468,3309648c-aae6-4684-ae8d-7ed636bc3468,1,0,f9aa933e-6684-48de-b802-96c8e61b1fe6,f9aa933e-6684-48de-b802-96c8e61b1fe6,1,0,f41e5a5b-394b-423a-bee5-ed4d1da0be71,f41e5a5b-394b-423a-bee5-ed4d1da0be71,1,0,23db175f-ddfb-4af7-9c0c-232b6adb7daf,23db175f-ddfb-4af7-9c0c-232b6adb7daf,1,0,9de4d430-95ec-4435-b3e8-4fc85778d517,9de4d430-95ec-4435-b3e8-4fc85778d517,1,0,205b8908-fa21-42bd-bff0-fb95e6787f15,205b8908-fa21-42bd-bff0-fb95e6787f15,1,0,4e309f26-35e8-49d9-bbd1-c7884e666dca,4e309f26-35e8-49d9-bbd1-c7884e666dca,1,0,84f05fe4-51d3-49a8-83e7-1cae2028147e,84f05fe4-51d3-49a8-83e7-1cae2028147e,1,0,8a9ab11b-5bb5-4da9-9053-8f9e8198d019,8a9ab11b-5bb5-4da9-9053-8f9e8198d019,1,0,5320abf1-b09b-4de0-9adf-4cb1da31df6f,5320abf1-b09b-4de0-9adf-4cb1da31df6f,1,0,3916ddbd-9023-42a4-849e-9cda6e591408,3916ddbd-9023-42a4-849e-9cda6e591408,1,0,5e9e42c5-dcbc-422f-acce-4f11a63dbb85,5e9e42c5-dcbc-422f-acce-4f11a63dbb85,1,0,6903ffe4-42c1-4708-a1b0-bb67cd3f9e4c,6903ffe4-42c1-4708-a1b0-bb67cd3f9e4c,1,0,c0e01a15-6937-4331-bdd7-2f5a68d0d3dd,c0e01a15-6937-4331-bdd7-2f5a68d0d3dd,1,0,d065c02e-9991-468a-ae32-b8c29d078d03,d065c02e-9991-468a-ae32-b8c29d078d03,1,0,c509683e-eb13-4e1a-91ed-cd6982ec5001,c509683e-eb13-4e1a-91ed-cd6982ec5001,1,0,88bf6f58-7943-42c4-bc0f-56b991590026,88bf6f58-7943-42c4-bc0f-56b991590026,1,0,f135b60e-6d28-4ba1-acd7-76090f14855d,f135b60e-6d28-4ba1-acd7-76090f14855d,1,0,96d66cdd-d40c-43a3-92ce-40aef2101b64,96d66cdd-d40c-43a3-92ce-40aef2101b64,1,0,9daa8270-4782-4d83-af03-c8d2b11057ff,9daa8270-4782-4d83-af03-c8d2b11057ff,1,0,4b8927df-e124-4bf6-9d70-6e91b4796d90,4b8927df-e124-4bf6-9d70-6e91b4796d90,1,0,871b63a2-c7a6-4343-8d8b-7dda1b0def87,871b63a2-c7a6-4343-8d8b-7dda1b0def87,1,0,52b45b3d-b01b-4aac-8a1e-e256957c39c3,52b45b3d-b01b-4aac-8a1e-e256957c39c3,1,0,fc78d8df-ab27-4544-a65c-73908b9c5425,fc78d8df-ab27-4544-a65c-73908b9c5425,1,0,f8a090d2-b2d1-4ead-a8bf-6325a7552743,f8a090d2-b2d1-4ead-a8bf-6325a7552743,1,0,84f935da-9fe5-44ea-845b-b447b8b0a6f5,84f935da-9fe5-44ea-845b-b447b8b0a6f5,1,0,33343620-673e-4aa3-9e58-c6a25f738001,33343620-673e-4aa3-9e58-c6a25f738001,1,0,8aaf780f-ed74-4f44-9598-c14180053ff9,8aaf780f-ed74-4f44-9598-c14180053ff9,1,0,dbd4d09d-f410-4453-9143-bd72da5464cc,dbd4d09d-f410-4453-9143-bd72da5464cc,1,0,c4fe10b6-d025-4736-be23-3113bd7fe7b4,c4fe10b6-d025-4736-be23-3113bd7fe7b4,1,0,65530aca-7cf2-4a52-b5be-5dcbc15a049e,65530aca-7cf2-4a52-b5be-5dcbc15a049e,1,0,15eb2c2d-305d-42c0-9aec-936b82114bdb,15eb2c2d-305d-42c0-9aec-936b82114bdb,1,0,bb99bc44-f83e-48bb-93fd-7b07ca7da6a7,bb99bc44-f83e-48bb-93fd-7b07ca7da6a7,1,0,cbca7272-2aae-4e21-b3f5-12786f085648,cbca7272-2aae-4e21-b3f5-12786f085648,1,0,7718bd0b-7b8a-4ffc-b228-f05683b5531a,7718bd0b-7b8a-4ffc-b228-f05683b5531a,1,0,38aeb32b-9e3b-4b4a-9a61-97da63cdea48,38aeb32b-9e3b-4b4a-9a61-97da63cdea48,1,0,0b303d25-e141-431f-828c-1778d3c247f6,0b303d25-e141-431f-828c-1778d3c247f6,1,0,881f53bc-a52e-4312-b09d-3d3f53ddf84b,881f53bc-a52e-4312-b09d-3d3f53ddf84b,1,0,2e36a7b3-5331-4fab-a0a3-31b42a8387fe,2e36a7b3-5331-4fab-a0a3-31b42a8387fe,1,0,e3476d0e-0ab4-4734-9261-04aef6281086,e3476d0e-0ab4-4734-9261-04aef6281086,1,0,945ae8d2-b74a-41e9-b740-c82acdd40d04,945ae8d2-b74a-41e9-b740-c82acdd40d04,1,0,29c37223-de1c-49fb-8488-77e44dd79edd,29c37223-de1c-49fb-8488-77e44dd79edd,1,0,976533bf-f162-42a1-a47e-6d681ee67b82,976533bf-f162-42a1-a47e-6d681ee67b82,1,0,19bc0dd8-9e6b-4855-bc42-b4e98443163f,19bc0dd8-9e6b-4855-bc42-b4e98443163f,1,0,a61e10af-eaba-4e7a-a641-65d77453a559,a61e10af-eaba-4e7a-a641-65d77453a559,1,0,4c8eb34e-0bb6-487a-a2ae-24083b1f6d2e,4c8eb34e-0bb6-487a-a2ae-24083b1f6d2e,1,0,276c42ca-f5e0-4bb4-9b89-a925def35cb1,276c42ca-f5e0-4bb4-9b89-a925def35cb1,1,0,41a9cabc-5667-4ca0-a798-ba0b22bd1aa0,41a9cabc-5667-4ca0-a798-ba0b22bd1aa0,1,0,1bf44c42-87c0-4f2e-846c-b04d0b7e8d7d,1bf44c42-87c0-4f2e-846c-b04d0b7e8d7d,1,0,8811ea1a-1221-47b7-9574-3f36ff15a3cf,8811ea1a-1221-47b7-9574-3f36ff15a3cf,1,0,a84891cc-e996-489a-abde-5b5af166a057,a84891cc-e996-489a-abde-5b5af166a057,1,0,1d715463-691b-4c01-ae39-57c261f2a6ad,1d715463-691b-4c01-ae39-57c261f2a6ad,1,0,4c3d007f-a62c-4fd9-beda-58dbf08ad188,4c3d007f-a62c-4fd9-beda-58dbf08ad188,1,0,c35373a9-f0b0-4ddb-a985-409ac9c64609,c35373a9-f0b0-4ddb-a985-409ac9c64609,1,0,c5b4d6e4-4c99-46cb-98cf-9a0024215a12,c5b4d6e4-4c99-46cb-98cf-9a0024215a12,1,0,c1c40916-fee5-46e3-90fc-10e7595866c9,c1c40916-fee5-46e3-90fc-10e7595866c9,1,0,19a307b1-9ef0-4fc6-bf4f-7636e9118399,19a307b1-9ef0-4fc6-bf4f-7636e9118399,1,0,666244a4-5636-4405-89dd-bbd8f4278071,666244a4-5636-4405-89dd-bbd8f4278071,1,0,8b79f0e3-9024-4073-aa6b-a42beed9b0c6,8b79f0e3-9024-4073-aa6b-a42beed9b0c6,1,0,29a627a9-debc-4074-88d0-ec3561e1ef9c,29a627a9-debc-4074-88d0-ec3561e1ef9c,1,0,5a01a002-8833-4c89-b8d6-9b63fc49d3b6,5a01a002-8833-4c89-b8d6-9b63fc49d3b6,1,0,39f5e272-9a10-40b0-8a10-92037828b206,39f5e272-9a10-40b0-8a10-92037828b206,1,0,87dad256-122b-4d7e-b249-a2c313a9cf33,87dad256-122b-4d7e-b249-a2c313a9cf33,1,0,57a030fb-ed57-4ffc-a462-c7bbd2435c3d,57a030fb-ed57-4ffc-a462-c7bbd2435c3d,1,0,f20a04a7-84fa-48e3-8ac5-28176c1fcada,f20a04a7-84fa-48e3-8ac5-28176c1fcada,1,0,b722d6e1-fd6f-4bb4-923d-01764393722d,b722d6e1-fd6f-4bb4-923d-01764393722d,1,0,ac5f945e-2d03-44fb-a8cf-5d786194cefd,ac5f945e-2d03-44fb-a8cf-5d786194cefd,1,0,698ec00f-bf75-420e-81ab-a98808daf3f7,698ec00f-bf75-420e-81ab-a98808daf3f7,1,0,f441907c-d02e-431e-baf4-1854e48a1f50,f441907c-d02e-431e-baf4-1854e48a1f50,1,0,4ad722ca-10fc-4a83-91c9-ef0012685f89,4ad722ca-10fc-4a83-91c9-ef0012685f89,1,0,783dd4ba-a597-45ba-8989-2ed5224d62bc,783dd4ba-a597-45ba-8989-2ed5224d62bc,1,0,3b033d29-0de7-49dd-90bc-f414b28426d7,3b033d29-0de7-49dd-90bc-f414b28426d7,1,0,97aaede5-d32f-4eba-b0e0-5ae5f094a8b7,97aaede5-d32f-4eba-b0e0-5ae5f094a8b7,1,0,d9e08c12-1999-41d8-b530-90187303be0a,d9e08c12-1999-41d8-b530-90187303be0a,1,0,dad9710a-73ca-4e0d-b98b-75f955d0822d,dad9710a-73ca-4e0d-b98b-75f955d0822d,1,0,d01beeab-7c42-4d5e-a2f6-f190b9f703a5,d01beeab-7c42-4d5e-a2f6-f190b9f703a5,1,0,2191939f-6f71-47c9-a3d2-57acbf7f411e,2191939f-6f71-47c9-a3d2-57acbf7f411e,1,0,75e77f99-b9d1-4bc0-93aa-c77a93d760d3,75e77f99-b9d1-4bc0-93aa-c77a93d760d3,1,0,a2c36563-126d-4c3a-9714-5b7a4903073b,a2c36563-126d-4c3a-9714-5b7a4903073b,1,0,2e4da82c-dddb-4462-b34f-6511cd2a8356,2e4da82c-dddb-4462-b34f-6511cd2a8356,1,0,c7da3115-3cee-4282-a2f2-4e0b5558e4fc,c7da3115-3cee-4282-a2f2-4e0b5558e4fc,1,0,2976c29f-f482-463d-8f6e-6a632fb50893,2976c29f-f482-463d-8f6e-6a632fb50893,1,0,701964a1-7762-45ee-a9a4-41dd9ce94783,701964a1-7762-45ee-a9a4-41dd9ce94783,1,0,55d1909e-f552-441f-8e14-47d2e604cf6a,55d1909e-f552-441f-8e14-47d2e604cf6a,1,0,eae627db-c52b-4e41-94d1-58db28cd0063,eae627db-c52b-4e41-94d1-58db28cd0063,1,0,cafc86e1-d7f1-4cd2-ac20-04fa0917556a,cafc86e1-d7f1-4cd2-ac20-04fa0917556a,1,0,47058e36-a281-43a5-a41d-691b3ef32b5b,47058e36-a281-43a5-a41d-691b3ef32b5b,1,0,4fc5c023-91e2-4b3e-8f61-4dfe3be78f3a,4fc5c023-91e2-4b3e-8f61-4dfe3be78f3a,1,0,646def82-bc88-4187-8be0-93938656a20f,646def82-bc88-4187-8be0-93938656a20f,1,0,e620e93c-4382-478f-a700-ad2faa67362b,e620e93c-4382-478f-a700-ad2faa67362b,1,0,a07971f5-ed6d-4829-a6bb-4b17cd5c6f6c,a07971f5-ed6d-4829-a6bb-4b17cd5c6f6c,1,0,06323ebd-5f74-494a-99a5-eb77e23d8637,06323ebd-5f74-494a-99a5-eb77e23d8637,1,0,9b7b6d0e-68d6-4a73-837c-2a6fd456b236,9b7b6d0e-68d6-4a73-837c-2a6fd456b236,1,0,7f6222c1-1a50-4565-b66b-bcb430674efc,7f6222c1-1a50-4565-b66b-bcb430674efc,1,0,a4a8693b-dc91-4762-92e6-35360c8768db,a4a8693b-dc91-4762-92e6-35360c8768db,1,0,2ae236ec-28a7-44e0-a0ba-be62fe52d817,2ae236ec-28a7-44e0-a0ba-be62fe52d817,1,0,2fb5650f-a5e5-4db8-a6a7-ca1101b41d3e,2fb5650f-a5e5-4db8-a6a7-ca1101b41d3e,1,0,52ae6431-afb3-4dea-b106-00e11b174ec7,52ae6431-afb3-4dea-b106-00e11b174ec7,1,0,b18bdc5f-a2b6-4b15-81c3-37b27a5a3176,b18bdc5f-a2b6-4b15-81c3-37b27a5a3176,1,0,c996916d-7f1c-4fbf-939f-3e1bafe81f7d,c996916d-7f1c-4fbf-939f-3e1bafe81f7d,1,0,528d96cc-8838-49ea-8d76-ea56747882e0,528d96cc-8838-49ea-8d76-ea56747882e0,1,0,b9166ea0-cce8-4f76-a9cb-a3d6eb4dfb95,b9166ea0-cce8-4f76-a9cb-a3d6eb4dfb95,1,0,8b83324c-e10e-49d1-99d7-5bc468c25975,8b83324c-e10e-49d1-99d7-5bc468c25975,1,0,ddb75923-27bf-4996-b024-4bc6eb0f59a7,ddb75923-27bf-4996-b024-4bc6eb0f59a7,1,0,fcb46a8a-3461-4ec2-9aa0-685aedb9dd50,fcb46a8a-3461-4ec2-9aa0-685aedb9dd50,1,0,ed137e05-1996-411d-9927-45a3d7e3ee3b,ed137e05-1996-411d-9927-45a3d7e3ee3b,1,0,bdde9030-5718-4f5e-a9e2-f641f4ce69f9,bdde9030-5718-4f5e-a9e2-f641f4ce69f9,1,0,fbebf341-9842-41e1-8e4d-490fa02065ce,fbebf341-9842-41e1-8e4d-490fa02065ce,1,0,3be0acc7-223a-46ec-9ea2-ec99b869fa78,3be0acc7-223a-46ec-9ea2-ec99b869fa78,1,0,067f88f6-ccd2-491e-a466-94345a1f220f,067f88f6-ccd2-491e-a466-94345a1f220f,1,0,642154b8-97da-4c4f-bf34-c1124215077d,642154b8-97da-4c4f-bf34-c1124215077d,1,0,abc10867-39ae-46bf-8bd7-90f645919235,abc10867-39ae-46bf-8bd7-90f645919235,1,0,b3396504-8ccb-43d6-9a0f-ab259ba0a542,b3396504-8ccb-43d6-9a0f-ab259ba0a542,1,0,f59f91c5-026a-4dc5-996e-0d59814a9604,f59f91c5-026a-4dc5-996e-0d59814a9604,1,0,aac9966f-e9ea-4106-97bb-6b9822939bc7,aac9966f-e9ea-4106-97bb-6b9822939bc7,1,0,cf7bc2ca-fb57-4b1a-98cf-f2caa7e611f5,cf7bc2ca-fb57-4b1a-98cf-f2caa7e611f5,1,0,486083d8-33b1-453f-9f05-5ff867e2f4ba,486083d8-33b1-453f-9f05-5ff867e2f4ba,1,0,e4f9d9f6-38d7-4056-a95a-987ad2da2211,e4f9d9f6-38d7-4056-a95a-987ad2da2211,1,0,22c21c2b-4297-43b2-88f0-9555d22f7a14,22c21c2b-4297-43b2-88f0-9555d22f7a14,1,0,734f61c4-5429-4a09-8697-8949ac5e6bd1,734f61c4-5429-4a09-8697-8949ac5e6bd1,1,0,d04e0e2d-0a5f-4866-b0b3-b582915db899,d04e0e2d-0a5f-4866-b0b3-b582915db899,1,0,19649d3f-52aa-4054-bb84-a6a11d212495,19649d3f-52aa-4054-bb84-a6a11d212495,1,0,640d7486-8abd-40aa-a244-2ed899b7225a,640d7486-8abd-40aa-a244-2ed899b7225a,1,0,58321939-f25a-456d-8dee-97e64743dc2e,58321939-f25a-456d-8dee-97e64743dc2e,1,0,416fba62-70c4-4f8c-b10b-56d47b27ca35,416fba62-70c4-4f8c-b10b-56d47b27ca35,1,0,ec48a164-bc30-4e36-a40a-a3cca07aea0d,ec48a164-bc30-4e36-a40a-a3cca07aea0d,1,0,c05f87b4-ec5f-4d14-981f-02ca8ba89863,c05f87b4-ec5f-4d14-981f-02ca8ba89863,1,0,b7736108-89bd-44eb-89c1-8a5a774058f1,b7736108-89bd-44eb-89c1-8a5a774058f1,1,0,560a5f44-e4e6-46d9-a9fe-3609842d0e3e,560a5f44-e4e6-46d9-a9fe-3609842d0e3e,1,0,98f68a75-ebf9-4c59-b6a8-b3634089ca6b,98f68a75-ebf9-4c59-b6a8-b3634089ca6b,1,0,875d1fc1-8172-4e48-8192-035882e1665d,875d1fc1-8172-4e48-8192-035882e1665d,1,0,26132b28-98cc-4690-92ad-139f91839ba2,26132b28-98cc-4690-92ad-139f91839ba2,1,0,0bd85b79-cc32-4c1d-b629-567a1bdfac56,0bd85b79-cc32-4c1d-b629-567a1bdfac56,1,0,b87ce4f9-aaa6-4a4c-af80-0bd9adc83506,b87ce4f9-aaa6-4a4c-af80-0bd9adc83506,1,0,ca81e0ea-c428-47f9-aedb-078214104a2f,ca81e0ea-c428-47f9-aedb-078214104a2f,1,0,9518d09c-6996-4439-9278-3c71d5ae8fce,9518d09c-6996-4439-9278-3c71d5ae8fce,1,0,9dd6e7d6-cd98-4928-b50c-38bdbc61c211,9dd6e7d6-cd98-4928-b50c-38bdbc61c211,1,0,5fbd9a13-012d-4c36-b72c-da3bc4157cff,5fbd9a13-012d-4c36-b72c-da3bc4157cff,1,0,1126157b-64c0-4d64-8551-f31c5ed0fd29,1126157b-64c0-4d64-8551-f31c5ed0fd29,1,0,6ae6e515-5cd4-4eca-8602-c6abe6d66276,6ae6e515-5cd4-4eca-8602-c6abe6d66276,1,0,44b8472b-0f70-49cc-8f71-9c9d3e9cfbcc,44b8472b-0f70-49cc-8f71-9c9d3e9cfbcc,1,0,b071a44e-9a34-4af3-a59a-35aa5f3a74b4,b071a44e-9a34-4af3-a59a-35aa5f3a74b4,1,0,35a28677-0653-47f9-82e1-02c4b9266fee,35a28677-0653-47f9-82e1-02c4b9266fee,1,0,2e17464f-9cef-4812-865f-4eb77ff16b6a,2e17464f-9cef-4812-865f-4eb77ff16b6a,1,0,e5ecbb1f-981d-4928-9335-22216879f7e2,e5ecbb1f-981d-4928-9335-22216879f7e2,1,0,461be12a-9f16-4826-978a-436608ca8733,461be12a-9f16-4826-978a-436608ca8733,1,0,9b143299-d300-4b6c-b667-5552fb3bdcde,9b143299-d300-4b6c-b667-5552fb3bdcde,1,0,0de070f4-d8b7-48bb-bfc9-027dd727a4ad,0de070f4-d8b7-48bb-bfc9-027dd727a4ad,1,0,74973d06-f57d-403e-945c-5cd2f4fc4869,74973d06-f57d-403e-945c-5cd2f4fc4869,1,0,259564b8-172e-4eed-9360-d561ec6dad69,259564b8-172e-4eed-9360-d561ec6dad69,1,0,91c799d7-2b3d-4d1a-87ff-221057a428c6,91c799d7-2b3d-4d1a-87ff-221057a428c6,1,0,a50fcacc-6d2d-496c-bea0-9c73cd153437,a50fcacc-6d2d-496c-bea0-9c73cd153437,1,0,a6846c5a-7cf6-4df2-a159-2fd33d18d18f,a6846c5a-7cf6-4df2-a159-2fd33d18d18f,1,0,0fb72f4b-e6f6-4b70-8ec7-fdb6d4ad928e,0fb72f4b-e6f6-4b70-8ec7-fdb6d4ad928e,1,0,a5633248-8611-4e9b-b223-2f59e7b84a65,a5633248-8611-4e9b-b223-2f59e7b84a65,1,0,6ec3463a-1e94-4de7-a8c0-b0e42f38573e,6ec3463a-1e94-4de7-a8c0-b0e42f38573e,1,0,e40b8882-737a-40c0-83b4-c35dc042f4a5,e40b8882-737a-40c0-83b4-c35dc042f4a5,1,0,d60c1e9d-1395-4293-8462-6ea2c93a0c86,d60c1e9d-1395-4293-8462-6ea2c93a0c86,1,0,a05fdefd-c0c6-4069-bb05-3fcd22819289,a05fdefd-c0c6-4069-bb05-3fcd22819289,1,0,1514f388-3c36-422f-9e23-83054934e4b3,1514f388-3c36-422f-9e23-83054934e4b3,1,0,841f4416-a85a-48f7-bae2-19865cf2979e,841f4416-a85a-48f7-bae2-19865cf2979e,1,0,8df13cd3-1b03-4c84-98e9-c771c1d5254a,8df13cd3-1b03-4c84-98e9-c771c1d5254a,1,0,a79ddc43-74f6-4997-bfc4-bdf7bc71cdd6,a79ddc43-74f6-4997-bfc4-bdf7bc71cdd6,1,0,29477058-cb8d-4fd4-b3a1-41565aeabf97,29477058-cb8d-4fd4-b3a1-41565aeabf97,1,0,5a2d5d8a-afd9-4954-9868-7c82bad00426,5a2d5d8a-afd9-4954-9868-7c82bad00426,1,0,26aea96b-20f8-4e35-b55f-4fe3602e6597,26aea96b-20f8-4e35-b55f-4fe3602e6597,1,0,a3a3a211-e361-4e41-a6f8-d731a366c163,a3a3a211-e361-4e41-a6f8-d731a366c163,1,0,c40d6fde-4d9a-4d9e-af86-42b7916e2abe,c40d6fde-4d9a-4d9e-af86-42b7916e2abe,1,0,4d5204ae-711d-4c31-8a18-280dbc9d2bf5,4d5204ae-711d-4c31-8a18-280dbc9d2bf5,1,0,ca01417c-0ffd-4e00-91e8-93cd305be82d,ca01417c-0ffd-4e00-91e8-93cd305be82d,1,0,14fcf5e5-5856-4b5f-8c3f-75eaba0f7268,14fcf5e5-5856-4b5f-8c3f-75eaba0f7268,1,0,0a0af8bf-0caa-40df-9a69-71f98ca9ff89,0a0af8bf-0caa-40df-9a69-71f98ca9ff89,1,0,6ac7db0c-18ed-4d3b-956a-5985214db474,6ac7db0c-18ed-4d3b-956a-5985214db474,1,0,267103e0-6703-4a74-bb4f-af610d7ef332,267103e0-6703-4a74-bb4f-af610d7ef332,1,0,b98ca634-25a5-4366-af04-815ba34c8bb2,b98ca634-25a5-4366-af04-815ba34c8bb2,1,0,14d69108-4d26-401a-b7ae-2c86dadf831c,14d69108-4d26-401a-b7ae-2c86dadf831c,1,0,d6251f65-d366-4bc9-a5db-42063fe03594,d6251f65-d366-4bc9-a5db-42063fe03594,1,0,22c60cbc-429f-40d9-bf8b-681b7786c41d,22c60cbc-429f-40d9-bf8b-681b7786c41d,1,0,d4e53d41-9335-4a1e-a06e-410c46de1d1c,d4e53d41-9335-4a1e-a06e-410c46de1d1c,1,0,4405bfaa-699a-497b-a15c-0302b86c834c,4405bfaa-699a-497b-a15c-0302b86c834c,1,0,3b3e7b9d-67f8-4cf2-ad1a-29d124169691,3b3e7b9d-67f8-4cf2-ad1a-29d124169691,1,0,31dd320b-06aa-4314-9914-2c2420f572a1,31dd320b-06aa-4314-9914-2c2420f572a1,1,0,56730848-3bef-4b8c-b449-fe9d09c9c374,56730848-3bef-4b8c-b449-fe9d09c9c374,1,0,43c477d2-1234-4c4a-a18a-022c0ddf2fd5,43c477d2-1234-4c4a-a18a-022c0ddf2fd5,1,0,91d8c5e4-eaec-4951-9224-16882fda08f6,91d8c5e4-eaec-4951-9224-16882fda08f6,1,0,4304ffb9-7ede-4c59-bef8-26fe3e8f0103,4304ffb9-7ede-4c59-bef8-26fe3e8f0103,1,0,4654d192-74bf-430f-abee-6f4dc431b182,4654d192-74bf-430f-abee-6f4dc431b182,1,0,1ea750ae-5ec4-43c5-b34f-fd28999d41d7,1ea750ae-5ec4-43c5-b34f-fd28999d41d7,1,0,4678c704-933a-45ef-9d41-89b8f39016bb,4678c704-933a-45ef-9d41-89b8f39016bb,1,0,8ceea1e8-42ce-469f-823a-ceffdbd6b112,8ceea1e8-42ce-469f-823a-ceffdbd6b112,1,0,80eb2a49-8c0e-4f92-b99c-7fdadca03e7b,80eb2a49-8c0e-4f92-b99c-7fdadca03e7b,1,0,3f7ee937-d853-47b7-a1f5-d821208e3531,3f7ee937-d853-47b7-a1f5-d821208e3531,1,0,086d69d6-e2fa-45cb-84b6-f8f3e2919160,086d69d6-e2fa-45cb-84b6-f8f3e2919160,1,0,6995ee71-5901-46d9-a5c1-b35d795bda20,6995ee71-5901-46d9-a5c1-b35d795bda20,1,0,e93a4293-0497-4f11-b8b9-40300104fb96,e93a4293-0497-4f11-b8b9-40300104fb96,1,0,93531e5d-5dfc-42e8-be52-2e83f37262b0,93531e5d-5dfc-42e8-be52-2e83f37262b0,1,0,61bf78c0-7004-4a74-b362-e979c7316e05,61bf78c0-7004-4a74-b362-e979c7316e05,1,0,c4351896-eff1-4e4d-8823-028d63a9d6bf,c4351896-eff1-4e4d-8823-028d63a9d6bf,1,0,475f83a2-ba5a-4072-94f8-1324b1f198a4,475f83a2-ba5a-4072-94f8-1324b1f198a4,1,0,cd7c15c1-c573-46c9-b109-339b8b54c3ee,cd7c15c1-c573-46c9-b109-339b8b54c3ee,1,0,efd89929-4db9-4c58-b3cb-a8d9a41a1df2,efd89929-4db9-4c58-b3cb-a8d9a41a1df2,1,0,deee8bde-381f-4094-8794-7a06248860dd,deee8bde-381f-4094-8794-7a06248860dd,1,0,2757ee75-4b36-4901-bff1-044708754edb,2757ee75-4b36-4901-bff1-044708754edb,1,0,0e6bab27-bf94-4732-8549-dbd9b8a5f4e9,0e6bab27-bf94-4732-8549-dbd9b8a5f4e9,1,0,774c92d6-9b9b-422a-83d7-8d42ae2a9f60,774c92d6-9b9b-422a-83d7-8d42ae2a9f60,1,0,90032ffa-f117-4a34-82f8-cc7e5a22a542,90032ffa-f117-4a34-82f8-cc7e5a22a542,1,0,71144539-6472-4727-8887-0139f6221370,71144539-6472-4727-8887-0139f6221370,1,0,bff07da4-ae19-48a9-806b-14b285d42485,bff07da4-ae19-48a9-806b-14b285d42485,1,0,659cd4f6-d18c-4d75-a7e6-7c124a63ab9a,659cd4f6-d18c-4d75-a7e6-7c124a63ab9a,1,0,b0ccc05d-8d39-4f57-8e87-6846014f92ea,b0ccc05d-8d39-4f57-8e87-6846014f92ea,1,0,49e787c9-753a-468a-b8dd-2e970d9a1fed,49e787c9-753a-468a-b8dd-2e970d9a1fed,1,0,e871dea7-1953-4511-90b0-e0957afac4c0,e871dea7-1953-4511-90b0-e0957afac4c0,1,0,64fbfed7-9dda-481b-a4f7-fe440f24ba7e,64fbfed7-9dda-481b-a4f7-fe440f24ba7e,1,0,b2835a5b-5c91-448c-9eb1-1bb1c9a5e727,b2835a5b-5c91-448c-9eb1-1bb1c9a5e727,1,0,447fb310-0588-4e0d-8f6d-5fc1f3bb1180,447fb310-0588-4e0d-8f6d-5fc1f3bb1180,1,0,d91441cf-d793-4dfa-9225-f0c16818edde,d91441cf-d793-4dfa-9225-f0c16818edde,1,0,8986c155-54be-4b1b-b31a-5c00b88bc40d,8986c155-54be-4b1b-b31a-5c00b88bc40d,1,0,40ae107d-67a8-404c-adf9-1a760bba94ff,40ae107d-67a8-404c-adf9-1a760bba94ff,1,0,42a39785-144c-4d2d-92c6-fd8b345f687b,42a39785-144c-4d2d-92c6-fd8b345f687b,1,0,f3bd841b-fb36-4462-9627-b51801e563cd,f3bd841b-fb36-4462-9627-b51801e563cd,1,0,0a23f273-5589-4a48-be3a-eee7565749aa,0a23f273-5589-4a48-be3a-eee7565749aa,1,0,494eb9d9-4a10-4e85-b511-375408f21bbe,494eb9d9-4a10-4e85-b511-375408f21bbe,1,0,3fbbca3f-d4fa-4d65-a08f-0a348b9030c6,3fbbca3f-d4fa-4d65-a08f-0a348b9030c6,1,0,a161dd07-4a6e-4d0f-b72c-702d0d3a83a3,a161dd07-4a6e-4d0f-b72c-702d0d3a83a3,1,0,7172bed5-b12b-4e83-b15d-1d95b63a6272,7172bed5-b12b-4e83-b15d-1d95b63a6272,1,0,25d75a3c-b801-4b1e-aed8-90e667f36c67,25d75a3c-b801-4b1e-aed8-90e667f36c67,1,0,addb3aa1-a9d6-4d30-b5db-7f3ce46bc1b2,addb3aa1-a9d6-4d30-b5db-7f3ce46bc1b2,1,0,63ebf7fd-d514-4fce-abc1-fb3f253d01cd,63ebf7fd-d514-4fce-abc1-fb3f253d01cd,1,0,a275802f-937a-49f4-92da-fcdd185a036d,a275802f-937a-49f4-92da-fcdd185a036d,1,0,ec6ed9cb-85a2-4303-9906-cfb4ce6500bf,ec6ed9cb-85a2-4303-9906-cfb4ce6500bf,1,0,f2dc9319-ba60-421a-8340-be3e3a291393,f2dc9319-ba60-421a-8340-be3e3a291393,1,0,bf4eb62a-bc74-4845-bad2-58a2a8302a65,bf4eb62a-bc74-4845-bad2-58a2a8302a65,1,0,b66eb190-1c16-4f20-a94f-954bcdf313b8,b66eb190-1c16-4f20-a94f-954bcdf313b8,1,0,49e21b87-beae-4640-a497-ef468da0cbbc,49e21b87-beae-4640-a497-ef468da0cbbc,1,0,bbdfeebd-cda0-4911-8f31-553d751340a7,bbdfeebd-cda0-4911-8f31-553d751340a7,1,0,dc7adfb7-41e7-4019-a18d-5d9f5d227b71,dc7adfb7-41e7-4019-a18d-5d9f5d227b71,1,0,20aad006-5b1e-4cc2-94ef-668dd002667b,20aad006-5b1e-4cc2-94ef-668dd002667b,1,0,af6af7ae-d68a-4e12-ba2c-a360ce2920a7,af6af7ae-d68a-4e12-ba2c-a360ce2920a7,1,0,b0f5bce4-2ad3-416e-9b1e-3fb23deaa040,b0f5bce4-2ad3-416e-9b1e-3fb23deaa040,1,0,2befb2e3-7354-4a01-83d6-b24262704a5e,2befb2e3-7354-4a01-83d6-b24262704a5e,1,0,5b93975e-b2a4-4102-a060-2667f5813c94,5b93975e-b2a4-4102-a060-2667f5813c94,1,0,ca75d086-cd01-4f54-b57d-1b35bcb1272a,ca75d086-cd01-4f54-b57d-1b35bcb1272a,1,0,b4a27991-2e18-4ead-80e8-f2956a7539e3,b4a27991-2e18-4ead-80e8-f2956a7539e3,1,0,ac8c40d6-be1e-4733-be2e-ae83bde4ec15,ac8c40d6-be1e-4733-be2e-ae83bde4ec15,1,0,dcdc9c65-c2d5-4531-a325-f64b3861cbab,dcdc9c65-c2d5-4531-a325-f64b3861cbab,1,0,ca542a9e-3040-419f-9a98-2a8de230b734,ca542a9e-3040-419f-9a98-2a8de230b734,1,0,c9fc5155-1df3-4872-a83d-72872baf43c4,c9fc5155-1df3-4872-a83d-72872baf43c4,1,0,9f9adb67-66bd-4c28-8319-44ae097ae1fe,9f9adb67-66bd-4c28-8319-44ae097ae1fe,1,0,0bae3704-b370-48be-b094-f18a2e62ad1b,0bae3704-b370-48be-b094-f18a2e62ad1b,1,0,e097bf94-9235-4a27-b0eb-d6387d22cd62,e097bf94-9235-4a27-b0eb-d6387d22cd62,1,0,eccded1c-f3ca-40d3-a8cd-71947bfed7b8,eccded1c-f3ca-40d3-a8cd-71947bfed7b8,1,0,4d243f2b-14d9-4e96-9707-4ead5d12e0a2,4d243f2b-14d9-4e96-9707-4ead5d12e0a2,1,0,8d2bfd40-f185-4eab-b374-872d49310eb2,8d2bfd40-f185-4eab-b374-872d49310eb2,1,0,523de426-e5a6-49e0-8144-c637f80d8ddd,523de426-e5a6-49e0-8144-c637f80d8ddd,1,0,09256328-6205-4b04-b908-3287ae8ded75,09256328-6205-4b04-b908-3287ae8ded75,1,0,05a6e161-9791-4c5b-8753-bd6370cc4cc9,05a6e161-9791-4c5b-8753-bd6370cc4cc9,1,0,6362facc-bf95-4adf-8ee7-c65f90972a1c,6362facc-bf95-4adf-8ee7-c65f90972a1c,1,0,08dbba81-68fb-49ef-8aac-9631fcfa87c6,08dbba81-68fb-49ef-8aac-9631fcfa87c6,1,0,dd7191b6-cbc0-4b0b-a51a-c27a1e1720fa,dd7191b6-cbc0-4b0b-a51a-c27a1e1720fa,1,0,8170a27d-45e9-48b1-860b-c2d9cc5961cd,8170a27d-45e9-48b1-860b-c2d9cc5961cd,1,0,f1c08fed-f3db-4f72-8a8e-7c626b8cc130,f1c08fed-f3db-4f72-8a8e-7c626b8cc130,1,0,e8c3b796-bfd8-4108-ab5f-d0f21b7bd9a6,e8c3b796-bfd8-4108-ab5f-d0f21b7bd9a6,1,0,f41d01ec-983a-4b39-9c11-a6d25d08df4f,f41d01ec-983a-4b39-9c11-a6d25d08df4f,1,0,3247e64e-b57e-4c33-8086-7ab93c5b6371,3247e64e-b57e-4c33-8086-7ab93c5b6371,1,0,e5dca369-dc9a-4332-a509-f734b8787e13,e5dca369-dc9a-4332-a509-f734b8787e13,1,0,722af623-156c-4e63-8b2a-93da760f1559,722af623-156c-4e63-8b2a-93da760f1559,1,0,393074c4-0afc-4232-8101-11a4ea6ed28a,393074c4-0afc-4232-8101-11a4ea6ed28a,1,0,5ff23123-450c-40ae-9b79-c540da53e2a0,5ff23123-450c-40ae-9b79-c540da53e2a0,1,0,639339a1-7de5-4b05-adf3-f60e7edd922c,639339a1-7de5-4b05-adf3-f60e7edd922c,1,0,dea9af9d-13c0-40d4-a9b0-1908e0a58795,dea9af9d-13c0-40d4-a9b0-1908e0a58795,1,0,9e9b8c05-787a-43c0-891d-3d9ad7e4976f,9e9b8c05-787a-43c0-891d-3d9ad7e4976f,1,0,1abeb10b-0558-4478-8f51-d0964ba3c274,1abeb10b-0558-4478-8f51-d0964ba3c274,1,0,38325a66-588a-4db0-8e0c-21d239408369,38325a66-588a-4db0-8e0c-21d239408369,1,0,7c27e885-33fd-4da2-a60d-50336c0189b0,7c27e885-33fd-4da2-a60d-50336c0189b0,1,0,0e1a45b0-d95d-415f-b954-5689610aa393,0e1a45b0-d95d-415f-b954-5689610aa393,1,0,4736b3d3-f696-4bdd-b0e3-0884ea88f623,4736b3d3-f696-4bdd-b0e3-0884ea88f623,1,0,4b849c66-6a36-4efd-815e-af4467c6f064,4b849c66-6a36-4efd-815e-af4467c6f064,1,0,f6939587-ff87-4eca-ae52-10e1bd2abfce,f6939587-ff87-4eca-ae52-10e1bd2abfce,1,0,a8e4d97f-e2da-4aa8-a221-3cbcc135f403,a8e4d97f-e2da-4aa8-a221-3cbcc135f403,1,0,f2b0eab2-e34b-42f8-9b24-5596b4c17d7f,f2b0eab2-e34b-42f8-9b24-5596b4c17d7f,1,0,3cb575a9-dc82-45e0-81f0-d651e12246da,3cb575a9-dc82-45e0-81f0-d651e12246da,1,0,01a73950-3e8f-4f56-903f-af0d9574e72e,01a73950-3e8f-4f56-903f-af0d9574e72e,1,0,14bd0844-c829-4325-aa7f-0f417bf955dc,14bd0844-c829-4325-aa7f-0f417bf955dc,1,0,7f1cd658-ca10-49c6-80ef-b8956f3269ea,7f1cd658-ca10-49c6-80ef-b8956f3269ea,1,0,b0d9086f-cef7-47a8-ad62-d85fea28ebda,b0d9086f-cef7-47a8-ad62-d85fea28ebda,1,0,49c010fc-f5cc-45f4-ba46-132e7661c3dd,49c010fc-f5cc-45f4-ba46-132e7661c3dd,1,0,3f3b592d-ca61-40c7-be1f-e5d3224a1eb3,3f3b592d-ca61-40c7-be1f-e5d3224a1eb3,1,0,2c02a558-8d12-44cf-be6b-9c399b9032e5,2c02a558-8d12-44cf-be6b-9c399b9032e5,1,0,d94d4931-7c81-4ee8-93ea-b2c54b152fa5,d94d4931-7c81-4ee8-93ea-b2c54b152fa5,1,0,c770bdd5-c7c0-4751-b31d-46c0ea1f49b7,c770bdd5-c7c0-4751-b31d-46c0ea1f49b7,1,0,6afcc089-7f15-42e8-97b5-6aad6cf2e6f9,6afcc089-7f15-42e8-97b5-6aad6cf2e6f9,1,0,cce4c615-dc29-42b3-9d3d-b277dde4a2e4,cce4c615-dc29-42b3-9d3d-b277dde4a2e4,1,0,9c267aa6-5f23-49f6-868a-3324ef2845ff,9c267aa6-5f23-49f6-868a-3324ef2845ff,1,0,495eeeee-d7bf-4063-99e2-86daa066451a,495eeeee-d7bf-4063-99e2-86daa066451a,1,0,b6184698-79e4-4c19-9440-092ccd9dabf8,b6184698-79e4-4c19-9440-092ccd9dabf8,1,0,7d01fc0c-378e-421d-ab70-6a418eed5941,7d01fc0c-378e-421d-ab70-6a418eed5941,1,0,6eeb4867-bf9d-48dc-b96b-934a0c293010,6eeb4867-bf9d-48dc-b96b-934a0c293010,1,0,c7f817ee-9f6a-454c-95a0-b279fd08055e,c7f817ee-9f6a-454c-95a0-b279fd08055e,1,0,1d49b1bb-5f90-46e4-adcf-55ad46442648,1d49b1bb-5f90-46e4-adcf-55ad46442648,1,0,e1803e54-ec5e-4a82-8097-5e2331820991,e1803e54-ec5e-4a82-8097-5e2331820991,1,0,259ede1f-05d3-4ece-8994-0ae3b2e89f49,259ede1f-05d3-4ece-8994-0ae3b2e89f49,1,0,f69ec1f9-826e-4eb4-b52c-3f6a3dfc3361,f69ec1f9-826e-4eb4-b52c-3f6a3dfc3361,1,0,4cbb0b91-dbdd-472f-93c5-061076b6a8d3,4cbb0b91-dbdd-472f-93c5-061076b6a8d3,1,0,8506dbe9-7066-444b-83b6-fb2d71a336e7,8506dbe9-7066-444b-83b6-fb2d71a336e7,1,0,240b4df5-0d75-4e5a-9ae8-d0bc7cc51722,240b4df5-0d75-4e5a-9ae8-d0bc7cc51722,1,0,6686d828-3129-4d44-a8a2-a64657d424cb,6686d828-3129-4d44-a8a2-a64657d424cb,1,0,90433152-f389-4d45-8ccc-3eb6c7a7e1f0,90433152-f389-4d45-8ccc-3eb6c7a7e1f0,1,0,ce235ab9-1dec-459a-9fec-498c262ece56,ce235ab9-1dec-459a-9fec-498c262ece56,1,0,9ec53d1a-ed7a-41e8-b5d0-6c2181fd63a5,9ec53d1a-ed7a-41e8-b5d0-6c2181fd63a5,1,0,97edd94a-4bf2-4ed7-b98f-677f869b0715,97edd94a-4bf2-4ed7-b98f-677f869b0715,1,0,39355e82-30a6-431e-9697-e2c42e82de83,39355e82-30a6-431e-9697-e2c42e82de83,1,0,a9ae364f-b668-4fb4-b976-f227951ffb6b,a9ae364f-b668-4fb4-b976-f227951ffb6b,1,0,edc01b03-8b01-4551-939a-f7e257892040,edc01b03-8b01-4551-939a-f7e257892040,1,0,15d09274-9508-4f64-9ea3-678c5aa50f0f,15d09274-9508-4f64-9ea3-678c5aa50f0f,1,0,4debe032-12e4-4777-b2fc-70b150f2aad1,4debe032-12e4-4777-b2fc-70b150f2aad1,1,0,37558fa2-0833-46d6-9e4f-63d4a3136870,37558fa2-0833-46d6-9e4f-63d4a3136870,1,0,d92cb614-ed09-47db-b70b-d3e533c44c6a,d92cb614-ed09-47db-b70b-d3e533c44c6a,1,0,e660c8bf-af5f-4525-a56e-68925d2b96fa,e660c8bf-af5f-4525-a56e-68925d2b96fa,1,0,2fad50a6-6a3e-4f87-ab84-907364427a63,2fad50a6-6a3e-4f87-ab84-907364427a63,1,0,9567765b-8e02-4262-89a9-5c354109cc4c,9567765b-8e02-4262-89a9-5c354109cc4c,1,0,3153b2b9-9e3e-4d6b-ab8c-5ccaac78a08a,3153b2b9-9e3e-4d6b-ab8c-5ccaac78a08a,1,0,588bd1b2-ee61-4a05-83cd-efb1b82ccb44,588bd1b2-ee61-4a05-83cd-efb1b82ccb44,1,0,439129dd-ad00-484c-b84a-fb325af979ed,439129dd-ad00-484c-b84a-fb325af979ed,1,0,dcae6376-f44c-421e-87f2-df83413c021e,dcae6376-f44c-421e-87f2-df83413c021e,1,0,dbdcdcab-4cd5-44af-b52c-6ce14a26ca9c,dbdcdcab-4cd5-44af-b52c-6ce14a26ca9c,1,0,151f2d0a-cc43-490d-ad7d-71390703aa72,151f2d0a-cc43-490d-ad7d-71390703aa72,1,0,2a515a4f-683b-4674-b097-62dd2d940c39,2a515a4f-683b-4674-b097-62dd2d940c39,1,0,d14058f5-dfd4-47eb-ae6d-01b7062f5940,d14058f5-dfd4-47eb-ae6d-01b7062f5940,1,0,1681dd7a-de80-4b8d-9657-c9702a19d653,1681dd7a-de80-4b8d-9657-c9702a19d653,1,0,10d796e9-a3d4-4ef0-87d5-8315aa12f1c8,10d796e9-a3d4-4ef0-87d5-8315aa12f1c8,1,0,fdb5b235-1978-4c2a-a03f-02341df00c3c,fdb5b235-1978-4c2a-a03f-02341df00c3c,1,0,9f593f27-8009-40c0-94d6-53f177ce55f4,9f593f27-8009-40c0-94d6-53f177ce55f4,1,0,38637f61-399a-4966-9e64-4751aecffa31,38637f61-399a-4966-9e64-4751aecffa31,1,0,0f38a18b-a36c-45fe-86c1-396634aaa5df,0f38a18b-a36c-45fe-86c1-396634aaa5df,1,0,f2b7b8d0-c0f7-46ba-907a-f8dfa76fc2da,f2b7b8d0-c0f7-46ba-907a-f8dfa76fc2da,1,0,a81c783d-2dea-4dde-9ca1-7b23d609eb22,a81c783d-2dea-4dde-9ca1-7b23d609eb22,1,0,137ec4ee-5053-47a7-8f5d-f6e63174608f,137ec4ee-5053-47a7-8f5d-f6e63174608f,1,0,820bb4b4-895b-4ccf-a350-2545bf8a2f7e,820bb4b4-895b-4ccf-a350-2545bf8a2f7e,1,0,530a3164-4ef1-4b3b-8269-13764ef4bf15,530a3164-4ef1-4b3b-8269-13764ef4bf15,1,0,6df2bb92-558c-4453-9de4-e4176e8f93dc,6df2bb92-558c-4453-9de4-e4176e8f93dc,1,0,0ce4c8a4-b20b-4550-bee3-f677e9ec64e9,0ce4c8a4-b20b-4550-bee3-f677e9ec64e9,1,0,30d5c2a6-b3cf-4ed5-ba75-850bcae932d1,30d5c2a6-b3cf-4ed5-ba75-850bcae932d1,1,0,0bf5e9c1-905a-4202-8b96-ed831b41be4b,0bf5e9c1-905a-4202-8b96-ed831b41be4b,1,0,e92ae368-0d7c-4fb7-b6d0-5ab63dc95a6a,e92ae368-0d7c-4fb7-b6d0-5ab63dc95a6a,1,0,f30c9c4b-aa6c-4b15-9ac7-888c0c0cabd9,f30c9c4b-aa6c-4b15-9ac7-888c0c0cabd9,1,0,be15e947-f671-4848-ada1-51239af73615,be15e947-f671-4848-ada1-51239af73615,1,0,3fc019d1-aec8-4835-96c5-3bbf43da0b94,3fc019d1-aec8-4835-96c5-3bbf43da0b94,1,0,5371672a-c8e0-4c12-834e-f23dd885b49a,5371672a-c8e0-4c12-834e-f23dd885b49a,1,0,d3e0dd8f-886a-4441-8f05-fd629da80f07,d3e0dd8f-886a-4441-8f05-fd629da80f07,1,0,6417d7c8-6436-4907-98eb-44cd7638f3f1,6417d7c8-6436-4907-98eb-44cd7638f3f1,1,0,1f927f76-5523-4880-9d26-d69a059f2b67,1f927f76-5523-4880-9d26-d69a059f2b67,1,0,ba49877b-6e30-4177-a67c-00e65aa498fb,ba49877b-6e30-4177-a67c-00e65aa498fb,1,0,25b39aeb-94c3-4199-9d56-5bd87e325bf2,25b39aeb-94c3-4199-9d56-5bd87e325bf2,1,0,b0b63551-4e83-4201-af9a-b4ab150c43a5,b0b63551-4e83-4201-af9a-b4ab150c43a5,1,0,ca85912b-87b4-481e-9184-017364b4603d,ca85912b-87b4-481e-9184-017364b4603d,1,0,2bd80198-4739-4e8f-9af1-40addc91a05b,2bd80198-4739-4e8f-9af1-40addc91a05b,1,0,572019eb-ffc4-4cfd-b4ba-c09267900c6c,572019eb-ffc4-4cfd-b4ba-c09267900c6c,1,0,bb7fad68-32d3-4e6a-be62-2c4c34c94737,bb7fad68-32d3-4e6a-be62-2c4c34c94737,1,0,da462777-f926-4308-92e5-c654da53d415,da462777-f926-4308-92e5-c654da53d415,1,0,2650db63-ca98-4a8a-8c36-165548aa5279,2650db63-ca98-4a8a-8c36-165548aa5279,1,0,6a8fdf0a-5dff-49e4-a423-fc80aceeee27,6a8fdf0a-5dff-49e4-a423-fc80aceeee27,1,0,4b9320f1-c7b1-4c08-a832-64ef108d0d6d,4b9320f1-c7b1-4c08-a832-64ef108d0d6d,1,0,a69525c7-27ff-48df-b26b-325ba580a53e,a69525c7-27ff-48df-b26b-325ba580a53e,1,0,24a7de1c-1c1f-4987-91ff-02f78f15dd9e,24a7de1c-1c1f-4987-91ff-02f78f15dd9e,1,0,33c66a15-e48e-406a-a77c-02af72ae96d5,33c66a15-e48e-406a-a77c-02af72ae96d5,1,0,ebd3dcc2-1176-4ee0-b590-ee39f85fb55b,ebd3dcc2-1176-4ee0-b590-ee39f85fb55b,1,0,3b78a9d0-7382-4115-a7dc-d06c9a1962d1,3b78a9d0-7382-4115-a7dc-d06c9a1962d1,1,0,9935d602-668e-4df9-a338-0f542def878b,9935d602-668e-4df9-a338-0f542def878b,1,0,459ed297-0c0d-4bdb-90a3-da387868f040,459ed297-0c0d-4bdb-90a3-da387868f040,1,0,ccb5b9a7-1a10-4803-b455-0350afe4b584,ccb5b9a7-1a10-4803-b455-0350afe4b584,1,0,ebce49ef-755a-4ace-aeb1-b99db2a8bf6c,ebce49ef-755a-4ace-aeb1-b99db2a8bf6c,1,0,0cd18f4c-aeb9-456b-9dcd-9649d1dd486b,0cd18f4c-aeb9-456b-9dcd-9649d1dd486b,1,0,ba5e7c41-0442-4f74-ba41-631d864eafb4,ba5e7c41-0442-4f74-ba41-631d864eafb4,1,0,c86aa97a-5898-4cb2-ae62-598bddf8e99f,c86aa97a-5898-4cb2-ae62-598bddf8e99f,1,0,d3c9b925-6b74-42db-8b21-ab21d24797d1,d3c9b925-6b74-42db-8b21-ab21d24797d1,1,0,4d348ec3-9de8-4f5b-960c-4b507d0fd7ce,4d348ec3-9de8-4f5b-960c-4b507d0fd7ce,1,0,39261a2d-7c46-40b1-9f8f-02d970aa04bc,39261a2d-7c46-40b1-9f8f-02d970aa04bc,1,0,3a07e5a5-2ab1-43ef-b97f-d45cd7775d67,3a07e5a5-2ab1-43ef-b97f-d45cd7775d67,1,0,124a516f-cdab-49ce-95d1-359921140342,124a516f-cdab-49ce-95d1-359921140342,1,0,e4294611-a770-4e67-9578-a1f370879476,e4294611-a770-4e67-9578-a1f370879476,1,0,c5033dd2-0911-4124-8688-dc9dabf3155f,c5033dd2-0911-4124-8688-dc9dabf3155f,1,0,274357df-cb5c-407d-ae72-58046c310db2,274357df-cb5c-407d-ae72-58046c310db2,1,0,5467001e-d025-4669-b16e-26381ac4403f,5467001e-d025-4669-b16e-26381ac4403f,1,0,cb3a5c5b-7bdc-4e12-96f1-11b1213b6853,cb3a5c5b-7bdc-4e12-96f1-11b1213b6853,1,0,e6fe7103-4dfa-4302-a58e-ccd7fac19c9d,e6fe7103-4dfa-4302-a58e-ccd7fac19c9d,1,0,bb3a9973-67ce-479e-8668-c2f3bb20301e,bb3a9973-67ce-479e-8668-c2f3bb20301e,1,0,e5250dfe-dda2-4547-9b9e-2470ea1be1ab,e5250dfe-dda2-4547-9b9e-2470ea1be1ab,1,0,2c3fccc6-c4c0-49ec-bfc2-05ce05f27ea9,2c3fccc6-c4c0-49ec-bfc2-05ce05f27ea9,1,0,37169451-1464-4f24-8ca6-802963ffb636,37169451-1464-4f24-8ca6-802963ffb636,1,0,c3a958b1-590f-4418-a74f-5982b478cf52,c3a958b1-590f-4418-a74f-5982b478cf52,1,0,ef0e618d-0942-460a-ac65-9aca2fed976e,ef0e618d-0942-460a-ac65-9aca2fed976e,1,0,fd1ed7ec-d848-41cd-8ce3-2e5a682abcf0,fd1ed7ec-d848-41cd-8ce3-2e5a682abcf0,1,0,2ac8bd69-9fbf-4f15-b58d-397d9e903532,2ac8bd69-9fbf-4f15-b58d-397d9e903532,1,0,2ff35814-7eaa-4ae5-bbac-f46bebb36c9d,2ff35814-7eaa-4ae5-bbac-f46bebb36c9d,1,0,5b460b92-2c74-4f59-88b2-18d9aac42c04,5b460b92-2c74-4f59-88b2-18d9aac42c04,1,0,db05d35b-5f53-4c27-ba80-b477b9a98299,db05d35b-5f53-4c27-ba80-b477b9a98299,1,0,fa872ae1-b699-46fe-9d6a-e42e1388752b,fa872ae1-b699-46fe-9d6a-e42e1388752b,1,0,1acf34e6-c428-4130-82f0-5160dfcc0858,1acf34e6-c428-4130-82f0-5160dfcc0858,1,0,57046262-b9ce-4670-9cf5-6db9e58dd0d5,57046262-b9ce-4670-9cf5-6db9e58dd0d5,1,0,a9824176-36d5-4be5-9984-f4312ff48515,a9824176-36d5-4be5-9984-f4312ff48515,1,0,8e980ca0-1627-45e8-bd27-5dd1ac199459,8e980ca0-1627-45e8-bd27-5dd1ac199459,1,0,8b653beb-af9f-4f39-b691-ae14f80b7cd6,8b653beb-af9f-4f39-b691-ae14f80b7cd6,1,0,77559c11-713f-454d-aff4-56649e1350e9,77559c11-713f-454d-aff4-56649e1350e9,1,0,0c965703-c1d0-48b7-80f9-b8d869ff98f5,0c965703-c1d0-48b7-80f9-b8d869ff98f5,1,0,51f8d5ff-aec5-4c0a-ad02-df8c6cb1b4ad,51f8d5ff-aec5-4c0a-ad02-df8c6cb1b4ad,1,0,7ba42162-557b-4e34-8aca-0cdee8cb2452,7ba42162-557b-4e34-8aca-0cdee8cb2452,1,0,eee99b8e-29b6-4b7a-81f1-3d91d740c0d7,eee99b8e-29b6-4b7a-81f1-3d91d740c0d7,1,0,ad4f2d1f-1e6f-4f6a-8061-202c0e42a8e4,ad4f2d1f-1e6f-4f6a-8061-202c0e42a8e4,1,0,dd577924-c6cb-4aa9-9db5-366d8958d00f,dd577924-c6cb-4aa9-9db5-366d8958d00f,1,0,8ed8f72e-404a-4be4-a44d-ddebbad5f411,8ed8f72e-404a-4be4-a44d-ddebbad5f411,1,0,e919bc4c-86e6-44f6-be27-5a729b63d042,e919bc4c-86e6-44f6-be27-5a729b63d042,1,0,ec580e4f-1518-4923-a10e-bc1da8688b37,ec580e4f-1518-4923-a10e-bc1da8688b37,1,0,91c3902a-314f-4d40-8bcc-8dd131fed2f4,91c3902a-314f-4d40-8bcc-8dd131fed2f4,1,0,ae2b21c5-9349-49e8-9627-26f05c21f43a,ae2b21c5-9349-49e8-9627-26f05c21f43a,1,0,7e4c0b74-e807-4aa9-ad69-3c85b147bb61,7e4c0b74-e807-4aa9-ad69-3c85b147bb61,1,0,917a19d7-73db-4247-b892-397598d67879,917a19d7-73db-4247-b892-397598d67879,1,0,1f866dc3-a4bc-4e8d-96a3-a26ee073926f,1f866dc3-a4bc-4e8d-96a3-a26ee073926f,1,0,d8066600-c669-449d-a187-fdd3af8f7afa,d8066600-c669-449d-a187-fdd3af8f7afa,1,0,dadf86a6-c118-4827-b1b9-6cfee731242f,dadf86a6-c118-4827-b1b9-6cfee731242f,1,0,45bf7b20-f048-491a-a989-e50bea13d028,45bf7b20-f048-491a-a989-e50bea13d028,1,0,9ad3b432-5b49-44ee-9d8d-83c36458d927,9ad3b432-5b49-44ee-9d8d-83c36458d927,1,0,a9967bff-53b9-4295-a253-3647d956d3cb,a9967bff-53b9-4295-a253-3647d956d3cb,1,0,75f0fd5b-c594-4f3a-8ff2-3fdadf1dc96d,75f0fd5b-c594-4f3a-8ff2-3fdadf1dc96d,1,0,b8a31397-8974-44ec-92b0-7cbdc481cf7e,b8a31397-8974-44ec-92b0-7cbdc481cf7e,1,0,b29c7c0d-03eb-422b-a899-ba9a7eba99f6,b29c7c0d-03eb-422b-a899-ba9a7eba99f6,1,0,fb16c4d5-854c-4525-92be-b21fa2df5b0d,fb16c4d5-854c-4525-92be-b21fa2df5b0d,1,0,5771de21-2086-432b-ad91-de14a39bd5bc,5771de21-2086-432b-ad91-de14a39bd5bc,1,0,b15bcf3b-0228-4d02-8f20-cd6ba82f7585,b15bcf3b-0228-4d02-8f20-cd6ba82f7585,1,0,ed96fbfa-bda7-405c-9073-d0b6feffedad,ed96fbfa-bda7-405c-9073-d0b6feffedad,1,0,50c724cb-dde1-4313-9492-b1750bd0afc1,50c724cb-dde1-4313-9492-b1750bd0afc1,1,0,12901981-6106-4471-ab3a-e127c2bb4ebd,12901981-6106-4471-ab3a-e127c2bb4ebd,1,0,17ad1497-fa0e-469f-b2e2-b94a6f848ec5,17ad1497-fa0e-469f-b2e2-b94a6f848ec5,1,0,d5ea5dea-233d-4106-b9ba-f030d4f762ef,d5ea5dea-233d-4106-b9ba-f030d4f762ef,1,0,903af05e-5ac5-46aa-843b-d74f9e417c1d,903af05e-5ac5-46aa-843b-d74f9e417c1d,1,0,4dc4862e-74c3-469d-863b-09fdbe0d6be0,4dc4862e-74c3-469d-863b-09fdbe0d6be0,1,0,a344290a-c9be-47a7-95ad-ced1b52a0995,a344290a-c9be-47a7-95ad-ced1b52a0995,1,0,a4e56049-4de9-40a3-8197-a5c84a11f516,a4e56049-4de9-40a3-8197-a5c84a11f516,1,0,339c9220-fd5b-45d3-b300-cdcc8788f87e,339c9220-fd5b-45d3-b300-cdcc8788f87e,1,0,02d7d401-3c0c-4fd0-b096-1f73b6ec14c3,02d7d401-3c0c-4fd0-b096-1f73b6ec14c3,1,0,9042a6de-5048-432d-a448-7e21f2d1d24a,9042a6de-5048-432d-a448-7e21f2d1d24a,1,0,350d46bf-114e-48e7-90c6-6708d949f20d,350d46bf-114e-48e7-90c6-6708d949f20d,1,0,d047caa8-7bcf-41ac-a18e-97877d6e0a2a,d047caa8-7bcf-41ac-a18e-97877d6e0a2a,1,0,aac20ff3-5873-432e-b763-14411e623d41,aac20ff3-5873-432e-b763-14411e623d41,1,0,fbc4df3e-c235-4197-8c1f-a5e39ac63a8c,fbc4df3e-c235-4197-8c1f-a5e39ac63a8c,1,0,6df44466-8750-481a-9baf-c924f0d45353,6df44466-8750-481a-9baf-c924f0d45353,1,0,110121eb-a0eb-4662-8911-3dcc3d341a73,110121eb-a0eb-4662-8911-3dcc3d341a73,1,0,f8980c18-6b9c-4e45-919a-22e976d2a846,f8980c18-6b9c-4e45-919a-22e976d2a846,1,0,c946efb7-c67e-49c1-bf56-d3c2d7220acd,c946efb7-c67e-49c1-bf56-d3c2d7220acd,1,0,7ed6bd83-b61d-4db4-8549-acacbdda6ca2,7ed6bd83-b61d-4db4-8549-acacbdda6ca2,1,0,6b7c9f74-f2b6-463e-acb9-9f82901986cf,6b7c9f74-f2b6-463e-acb9-9f82901986cf,1,0,fc4c1d64-132b-4687-a37d-05000fdb4ba5,fc4c1d64-132b-4687-a37d-05000fdb4ba5,1,0,528777cd-090b-4b70-82f5-56def98c5893,528777cd-090b-4b70-82f5-56def98c5893,1,0,49dbe467-8832-4ede-9a05-494248619aeb,49dbe467-8832-4ede-9a05-494248619aeb,1,0,460ed9ca-10c2-491c-a641-b92ffc2a8e7c,460ed9ca-10c2-491c-a641-b92ffc2a8e7c,1,0,bd5fadd3-9264-4c3b-9bd5-51e91847a6fb,bd5fadd3-9264-4c3b-9bd5-51e91847a6fb,1,0,09c73108-8528-4970-9b7f-fff9eda7816a,09c73108-8528-4970-9b7f-fff9eda7816a,1,0,40aa936e-cb1c-4ae9-85f1-6d930a5815cc,40aa936e-cb1c-4ae9-85f1-6d930a5815cc,1,0,f568245a-d158-45dc-af92-2d411f12db7b,f568245a-d158-45dc-af92-2d411f12db7b,1,0,0f17cdac-aa17-45e6-b3d0-220b13345390,0f17cdac-aa17-45e6-b3d0-220b13345390,1,0,c675db75-d0c3-4026-b97c-6b23ecbb336a,c675db75-d0c3-4026-b97c-6b23ecbb336a,1,0,469f67fa-98b0-44b0-abd4-cae136c02834,469f67fa-98b0-44b0-abd4-cae136c02834,1,0,16a18458-999c-420e-80df-8fc10855746c,16a18458-999c-420e-80df-8fc10855746c,1,0,b794f222-0fde-439f-97a3-0da74075b415,b794f222-0fde-439f-97a3-0da74075b415,1,0,3a716aad-9b2c-48a7-b802-80732066391b,3a716aad-9b2c-48a7-b802-80732066391b,1,0,480d959f-aac8-4241-875f-78e1c1f32621,480d959f-aac8-4241-875f-78e1c1f32621,1,0,496e5de8-d75c-4536-9993-75374f070b40,496e5de8-d75c-4536-9993-75374f070b40,1,0,b4e610ba-c9c8-4b25-903b-e567dcbc2556,b4e610ba-c9c8-4b25-903b-e567dcbc2556,1,0,48febdbd-a085-4113-8511-ed7ff6be7d3c,48febdbd-a085-4113-8511-ed7ff6be7d3c,1,0,49413232-c0c3-4983-9d10-291a0399281b,49413232-c0c3-4983-9d10-291a0399281b,1,0,032bb782-96a7-4c1b-8b8f-eb4e18b555b7,032bb782-96a7-4c1b-8b8f-eb4e18b555b7,1,0,b9b076bb-38ab-4a94-8226-41a4d4d7432c,b9b076bb-38ab-4a94-8226-41a4d4d7432c,1,0,e12da8db-4037-473e-ba2b-d0ceb4534dcb,e12da8db-4037-473e-ba2b-d0ceb4534dcb,1,0,789514e5-8ea3-4a5e-88c5-ed89c4135866,789514e5-8ea3-4a5e-88c5-ed89c4135866,1,0,a16768ff-6137-43d8-8784-4805ed83632a,a16768ff-6137-43d8-8784-4805ed83632a,1,0,61971286-9f94-4a27-aa34-e10848adb70a,61971286-9f94-4a27-aa34-e10848adb70a,1,0,1e75d143-3452-496e-a137-6d7f4c4ed019,1e75d143-3452-496e-a137-6d7f4c4ed019,1,0,e0619d14-c658-4eb5-841a-3a029de28be4,e0619d14-c658-4eb5-841a-3a029de28be4,1,0,99a3b660-7875-47f7-9c6c-c552e5673deb,99a3b660-7875-47f7-9c6c-c552e5673deb,1,0,2bdcf3a5-c8e1-492c-afee-f9db68e2fbb6,2bdcf3a5-c8e1-492c-afee-f9db68e2fbb6,1,0,41cbf934-ea54-41df-abf0-09f319d2e67a,41cbf934-ea54-41df-abf0-09f319d2e67a,1,0,47246084-a5f8-4d0f-b4e2-204c1b97483a,47246084-a5f8-4d0f-b4e2-204c1b97483a,1,0,e58233ec-6cfc-4a8b-9929-689fa69cdb07,e58233ec-6cfc-4a8b-9929-689fa69cdb07,1,0,3291a891-a47c-43ca-b088-aecd3867d38c,3291a891-a47c-43ca-b088-aecd3867d38c,1,0,56cde2b4-00f2-49ba-b407-16e241c17fd2,56cde2b4-00f2-49ba-b407-16e241c17fd2,1,0,bd84fb2b-4c52-4e2f-a8c5-f289b8336145,bd84fb2b-4c52-4e2f-a8c5-f289b8336145,1,0,219ed110-f2a0-41c1-ac5a-02301b248c54,219ed110-f2a0-41c1-ac5a-02301b248c54,1,0,1c722dfd-2b07-4985-9188-17353de24771,1c722dfd-2b07-4985-9188-17353de24771,1,0,1a630496-2cdd-4c89-a1aa-ed20545ad133,1a630496-2cdd-4c89-a1aa-ed20545ad133,1,0,b0dd02ee-ea6a-43f2-baa2-abac0a1ab4bb,b0dd02ee-ea6a-43f2-baa2-abac0a1ab4bb,1,0,b19cea0e-e57a-4969-8daf-f48d3d16705f,b19cea0e-e57a-4969-8daf-f48d3d16705f,1,0,d4059340-3361-4baa-ae48-ecbfb9800a2e,d4059340-3361-4baa-ae48-ecbfb9800a2e,1,0,f78f6c43-dd90-4117-acf7-ed5b951cb964,f78f6c43-dd90-4117-acf7-ed5b951cb964,1,0,8eebd519-4989-4784-82b8-39d77eebfb17,8eebd519-4989-4784-82b8-39d77eebfb17,1,0,0a2cb6e3-d9fa-4881-b136-7b6db9efca07,0a2cb6e3-d9fa-4881-b136-7b6db9efca07,1,0,c1561ed9-2fbf-4c12-a484-07f8adbe8fa3,c1561ed9-2fbf-4c12-a484-07f8adbe8fa3,1,0,4527877b-5723-4aa5-8705-98174ac9c337,4527877b-5723-4aa5-8705-98174ac9c337,1,0,d6b21e7b-df57-4280-8c95-c269b5316018,d6b21e7b-df57-4280-8c95-c269b5316018,1,0,808c468b-6322-428d-ac6a-ccf2228b05b6,808c468b-6322-428d-ac6a-ccf2228b05b6,1,0,13664bb2-738f-4d18-b382-a7bcf8105a5a,13664bb2-738f-4d18-b382-a7bcf8105a5a,1,0,f3f56abe-9248-4555-bf99-29560eb4f9ee,f3f56abe-9248-4555-bf99-29560eb4f9ee,1,0,0dbd5d55-a85f-4c7e-ac31-7ba4ab7cc371,0dbd5d55-a85f-4c7e-ac31-7ba4ab7cc371,1,0,dd9d09ef-3b4b-4bb5-9408-9c4080049bb3,dd9d09ef-3b4b-4bb5-9408-9c4080049bb3,1,0,3eb43a06-b32d-4904-8489-6264d0207623,3eb43a06-b32d-4904-8489-6264d0207623,1,0,a18098cf-5a61-46b5-bd55-cc61d15aa6bc,a18098cf-5a61-46b5-bd55-cc61d15aa6bc,1,0,18615fe1-cfee-4888-9c09-88d1c5db39eb,18615fe1-cfee-4888-9c09-88d1c5db39eb,1,0,63e363fa-8b0c-4d48-ab1b-9c953c5ed4c0,63e363fa-8b0c-4d48-ab1b-9c953c5ed4c0,1,0,087c83c0-75e7-476b-b7c6-5be55498a190,087c83c0-75e7-476b-b7c6-5be55498a190,1,0,ec5e5413-9e77-4929-83b8-6fee70688b28,ec5e5413-9e77-4929-83b8-6fee70688b28,1,0,59cd8e3f-ecf3-4e1d-bd98-41551d5d6f68,59cd8e3f-ecf3-4e1d-bd98-41551d5d6f68,1,0,8390c864-2b84-4c45-8583-cb4a4ab49168,8390c864-2b84-4c45-8583-cb4a4ab49168,1,0,1b2fefca-fef5-4319-90cc-325444cb63a6,1b2fefca-fef5-4319-90cc-325444cb63a6,1,0,34a128be-8fbb-4dd8-ac23-9f35041feb63,34a128be-8fbb-4dd8-ac23-9f35041feb63,1,0,baa31006-e0d6-496e-a60e-27b3dfd19397,baa31006-e0d6-496e-a60e-27b3dfd19397,1,0,3007d8ff-3942-45ed-bac5-8a6c40ca060c,3007d8ff-3942-45ed-bac5-8a6c40ca060c,1,0,8bfe1474-fd12-4744-a9ab-3383bfe766b3,8bfe1474-fd12-4744-a9ab-3383bfe766b3,1,0,3af97375-f776-4129-9521-b8d65d795db6,3af97375-f776-4129-9521-b8d65d795db6,1,0,0e98801b-a45b-44cb-a341-7e43d723f6ed,0e98801b-a45b-44cb-a341-7e43d723f6ed,1,0,5b71cd3b-d5b8-4632-9678-0ab1e1d2ea91,5b71cd3b-d5b8-4632-9678-0ab1e1d2ea91,1,0,103ac72d-c386-40ea-89d4-35798d064f1a,103ac72d-c386-40ea-89d4-35798d064f1a,1,0,645ceb40-1e9f-4a67-aa7f-b9002fa066b3,645ceb40-1e9f-4a67-aa7f-b9002fa066b3,1,0,d1fe15e9-8e5c-4819-85cd-24ab31409437,d1fe15e9-8e5c-4819-85cd-24ab31409437,1,0,c8c5bfe9-ead5-4e79-9fd5-60ad275faa1e,c8c5bfe9-ead5-4e79-9fd5-60ad275faa1e,1,0,8f9826b6-890e-4ba3-a1f2-bc9ebb3238dd,8f9826b6-890e-4ba3-a1f2-bc9ebb3238dd,1,0,74f68bda-17b1-4b3c-aa64-b1014300f9b5,74f68bda-17b1-4b3c-aa64-b1014300f9b5,1,0,90a195b0-7f64-4ccb-986e-8c8c2cf12ccd,90a195b0-7f64-4ccb-986e-8c8c2cf12ccd,1,0,9f9d1f8c-7ff9-420f-a426-48f33493d9f2,9f9d1f8c-7ff9-420f-a426-48f33493d9f2,1,0,ab7bc0bc-b4b8-4a4a-aecc-1cbe14fd4975,ab7bc0bc-b4b8-4a4a-aecc-1cbe14fd4975,1,0,9f8d9594-674f-49ef-9fb8-bb64d5c40a37,9f8d9594-674f-49ef-9fb8-bb64d5c40a37,1,0,47ee7d38-9fa9-458d-abee-e11270f79494,47ee7d38-9fa9-458d-abee-e11270f79494,1,0,bb6b83ff-81f4-4c39-ad8e-8cda9ccd9cb9,bb6b83ff-81f4-4c39-ad8e-8cda9ccd9cb9,1,0,076daecf-8fcb-496b-9f13-c4faa3a8a722,076daecf-8fcb-496b-9f13-c4faa3a8a722,1,0,f1a8357b-7083-42b3-ab5d-36223a3dd2a4,f1a8357b-7083-42b3-ab5d-36223a3dd2a4,1,0,296d7725-bdd3-4210-9db9-31de5711ea9b,296d7725-bdd3-4210-9db9-31de5711ea9b,1,0,6ecc5bc2-20b3-46f3-8019-ae1e1f3de319,6ecc5bc2-20b3-46f3-8019-ae1e1f3de319,1,0,1d05f89a-23dd-4d30-8786-abe8a9a39a40,1d05f89a-23dd-4d30-8786-abe8a9a39a40,1,0,245c2c6c-7b7f-4381-9304-1d7287a215fa,245c2c6c-7b7f-4381-9304-1d7287a215fa,1,0,fd17bbe4-34d9-4832-8eea-8eeb82194e4c,fd17bbe4-34d9-4832-8eea-8eeb82194e4c,1,0,d4c72d7f-7e1f-473c-9a2b-fa675fc78731,d4c72d7f-7e1f-473c-9a2b-fa675fc78731,1,0,8bb5be12-98df-4a38-bffe-432fb13d8101,8bb5be12-98df-4a38-bffe-432fb13d8101,1,0,94209023-ce88-401c-9aff-526fb7e43709,94209023-ce88-401c-9aff-526fb7e43709,1,0,22b99094-b52a-4244-ae91-53848d82560b,22b99094-b52a-4244-ae91-53848d82560b,1,0,22c9e2fa-c1f0-41ec-b6f2-9d7357dd3479,22c9e2fa-c1f0-41ec-b6f2-9d7357dd3479,1,0,b0002134-d5c9-4508-9f0e-97f92461b590,b0002134-d5c9-4508-9f0e-97f92461b590,1,0,1506ec71-cb38-4831-a29d-dac2c4deddda,1506ec71-cb38-4831-a29d-dac2c4deddda,1,0,e05fd82b-b77b-4b7f-b300-43653017f341,e05fd82b-b77b-4b7f-b300-43653017f341,1,0,d3b5e5ee-2317-43b4-b669-3af2ce635cf3,d3b5e5ee-2317-43b4-b669-3af2ce635cf3,1,0,f15a0526-c207-42fe-aed9-438ae0c4a4b8,f15a0526-c207-42fe-aed9-438ae0c4a4b8,1,0,9d444a41-7190-48fb-9a4a-08f8e7bc32a3,9d444a41-7190-48fb-9a4a-08f8e7bc32a3,1,0,8583cab0-0620-4346-96e0-bcac40981b8a,8583cab0-0620-4346-96e0-bcac40981b8a,1,0,e1dfba26-c682-42a2-8e15-fe6f535c9ce1,e1dfba26-c682-42a2-8e15-fe6f535c9ce1,1,0,095990b1-187b-400c-941a-275f272239ca,095990b1-187b-400c-941a-275f272239ca,1,0,ba108470-350d-40c3-bb44-9852c2aa8c97,ba108470-350d-40c3-bb44-9852c2aa8c97,1,0,a37c33fa-64b0-4a1b-846a-0a236bad44f8,a37c33fa-64b0-4a1b-846a-0a236bad44f8,1,0,d8481ce1-7f64-47b0-8fc0-6642ae93aca1,d8481ce1-7f64-47b0-8fc0-6642ae93aca1,1,0,a50f4324-da44-449b-b500-74228b2aa7e0,a50f4324-da44-449b-b500-74228b2aa7e0,1,0,04236716-9c36-4a1d-b4fb-4b8c65644ab4,04236716-9c36-4a1d-b4fb-4b8c65644ab4,1,0,97276702-6686-4ac4-8360-d85369a08b20,97276702-6686-4ac4-8360-d85369a08b20,1,0,e5450ee7-e891-4f58-9a01-d2d81d5ddd6d,e5450ee7-e891-4f58-9a01-d2d81d5ddd6d,1,0,068883fe-d7ae-40e7-ad82-864867916daa,068883fe-d7ae-40e7-ad82-864867916daa,1,0,c1b02568-2095-4f83-8543-2402f67dbe3d,c1b02568-2095-4f83-8543-2402f67dbe3d,1,0,8b749b7a-5e68-4523-adc2-8b3c5ce9701c,8b749b7a-5e68-4523-adc2-8b3c5ce9701c,1,0,bf3c7edc-0791-459e-a7ac-b7e8d7ed97fe,bf3c7edc-0791-459e-a7ac-b7e8d7ed97fe,1,0,7dc6d13e-4edf-4e6a-9ee9-4b32ad889ecf,7dc6d13e-4edf-4e6a-9ee9-4b32ad889ecf,1,0,aecbd726-6952-49e6-b544-4c5cc764c24c,aecbd726-6952-49e6-b544-4c5cc764c24c,1,0,d335cfbf-bc78-4274-a178-10f60372474a,d335cfbf-bc78-4274-a178-10f60372474a,1,0,0f4411b3-addf-4fcf-8da8-c5140dea356c,0f4411b3-addf-4fcf-8da8-c5140dea356c,1,0,c501f9ab-d01b-4137-8cd0-e66103117c84,c501f9ab-d01b-4137-8cd0-e66103117c84,1,0,8d5d4e0f-b7b5-4cdc-aedc-571517fa101f,8d5d4e0f-b7b5-4cdc-aedc-571517fa101f,1,0,66e65355-1424-4c74-801c-faf5357257aa,66e65355-1424-4c74-801c-faf5357257aa,1,0,0a93187b-7ae4-4985-8089-3099dfec2b48,0a93187b-7ae4-4985-8089-3099dfec2b48,1,0,044458f3-ed9b-4afb-ae73-8f9162c032bf,044458f3-ed9b-4afb-ae73-8f9162c032bf,1,0,578f618e-5f4a-4e86-959d-39b59e973936,578f618e-5f4a-4e86-959d-39b59e973936,1,0,f74ede2e-2d28-4224-ba44-773eda7760a4,f74ede2e-2d28-4224-ba44-773eda7760a4,1,0,217df06a-1bdf-4394-b617-ed756ff17bc6,217df06a-1bdf-4394-b617-ed756ff17bc6,1,0,a1572e97-a487-497a-9062-49315e237e0f,a1572e97-a487-497a-9062-49315e237e0f,1,0,969cdcb8-0f2a-427f-93a0-e7ae38f465e8,969cdcb8-0f2a-427f-93a0-e7ae38f465e8,1,0,3c5d87a0-cfce-464a-b946-64c5a589a376,3c5d87a0-cfce-464a-b946-64c5a589a376,1,0,2d22c67d-4795-4a6b-bc81-a3ed1eb28367,2d22c67d-4795-4a6b-bc81-a3ed1eb28367,1,0,763de8d1-7f53-41b6-8d97-7da724e9f763,763de8d1-7f53-41b6-8d97-7da724e9f763,1,0,75592ed4-2aab-4dfc-ae7b-d93e2a98370f,75592ed4-2aab-4dfc-ae7b-d93e2a98370f,1,0,4ad59c75-cca4-4968-82e6-babd72d8b318,4ad59c75-cca4-4968-82e6-babd72d8b318,1,0,c248de15-63a2-48ec-8695-7a5213d4fc9b,c248de15-63a2-48ec-8695-7a5213d4fc9b,1,0,272ff0f9-7266-4c22-be12-fe62682b56a5,272ff0f9-7266-4c22-be12-fe62682b56a5,1,0,9f141dd5-d866-4c25-b58a-a7766a08b4e7,9f141dd5-d866-4c25-b58a-a7766a08b4e7,1,0,0570d846-889d-4cfc-98fb-a1ad0181597f,0570d846-889d-4cfc-98fb-a1ad0181597f,1,0,19e17c58-953f-4917-8b6a-c88808fcca36,19e17c58-953f-4917-8b6a-c88808fcca36,1,0,4804316d-3765-4a83-8438-10e8e82656db,4804316d-3765-4a83-8438-10e8e82656db,1,0,59458556-e343-4215-8e6c-69f924ec4183,59458556-e343-4215-8e6c-69f924ec4183,1,0,dd553dca-7eba-41bf-8939-2c61e170ff65,dd553dca-7eba-41bf-8939-2c61e170ff65,1,0,b4ecf3dc-a2aa-406e-a593-1700ea8746bc,b4ecf3dc-a2aa-406e-a593-1700ea8746bc,1,0,933d7ce7-ea82-4b26-8d1b-dc92cb5ac92d,933d7ce7-ea82-4b26-8d1b-dc92cb5ac92d,1,0,8099e978-28cc-4ade-ac5a-3785f3a45f70,8099e978-28cc-4ade-ac5a-3785f3a45f70,1,0,11eff613-8077-41fa-8cb8-5e8dc27d0e4f,11eff613-8077-41fa-8cb8-5e8dc27d0e4f,1,0,fe023ca5-f11a-4b98-99c1-363508e4ea4a,fe023ca5-f11a-4b98-99c1-363508e4ea4a,1,0,6f8d515e-13d9-45f8-9793-3757f5b85f81,6f8d515e-13d9-45f8-9793-3757f5b85f81,1,0,25ec541c-c437-4318-b2a8-5146df6ae080,25ec541c-c437-4318-b2a8-5146df6ae080,1,0,148754ed-3063-40a7-a3c3-8ad105552370,148754ed-3063-40a7-a3c3-8ad105552370,1,0,ab3f0862-c355-4fd7-a2a7-4eb8278de510,ab3f0862-c355-4fd7-a2a7-4eb8278de510,1,0,85bbfe20-a6a4-49ca-8f20-342f4cbe8258,85bbfe20-a6a4-49ca-8f20-342f4cbe8258,1,0,c12c3f3b-3a96-4e70-b131-8d7bd765095f,c12c3f3b-3a96-4e70-b131-8d7bd765095f,1,0,70ee4b32-80d1-4b79-a322-0433f1b8c7f1,70ee4b32-80d1-4b79-a322-0433f1b8c7f1,1,0,c563588c-346e-499e-ae33-9ff3cb62e658,c563588c-346e-499e-ae33-9ff3cb62e658,1,0,40dbc001-97b6-4188-8de9-3adac670bac4,40dbc001-97b6-4188-8de9-3adac670bac4,1,0,a4ed8b24-bd23-45a7-9f34-61b25b91d0c6,a4ed8b24-bd23-45a7-9f34-61b25b91d0c6,1,0,65efaa10-3239-4f0f-a08e-88c89d9d8d5a,65efaa10-3239-4f0f-a08e-88c89d9d8d5a,1,0,93aa5247-6823-4f70-9d47-e5a0f409828a,93aa5247-6823-4f70-9d47-e5a0f409828a,1,0,030c6a22-a3d5-4cf2-9f7b-dc4fe3732f83,030c6a22-a3d5-4cf2-9f7b-dc4fe3732f83,1,0,b19f1223-5ebe-4446-bacc-bc7d53486f2e,b19f1223-5ebe-4446-bacc-bc7d53486f2e,1,0,6ea7e8e9-0faa-43fd-b9c8-1a7b8f899d6d,6ea7e8e9-0faa-43fd-b9c8-1a7b8f899d6d,1,0,7be1decf-feb1-422b-a3f2-f60d08fdb0e6,7be1decf-feb1-422b-a3f2-f60d08fdb0e6,1,0,bf3167d6-3047-482a-b280-184f446ae7a3,bf3167d6-3047-482a-b280-184f446ae7a3,1,0,50c47c0a-a199-4020-9df4-91b17c159454,50c47c0a-a199-4020-9df4-91b17c159454,1,0,c1d449af-8a6e-4cb0-b2c9-50ea5405c44c,c1d449af-8a6e-4cb0-b2c9-50ea5405c44c,1,0,faecdc33-fed8-4b44-96f4-4215c26959b6,faecdc33-fed8-4b44-96f4-4215c26959b6,1,0,09c29992-47a8-4fca-bd95-e7dbc53e8c4c,09c29992-47a8-4fca-bd95-e7dbc53e8c4c,1,0,f07cf7bd-6f3f-426a-8b71-ba1dcb827654,f07cf7bd-6f3f-426a-8b71-ba1dcb827654,1,0,9df3792e-a4ee-4a2c-9296-c1384925521e,9df3792e-a4ee-4a2c-9296-c1384925521e,1,0,03d423db-f98a-468f-9040-5b76454e5a98,03d423db-f98a-468f-9040-5b76454e5a98,1,0,08f394f9-d254-4fe5-8651-a69c96de7a62,08f394f9-d254-4fe5-8651-a69c96de7a62,1,0,e90ec54b-8b86-43df-8c3c-18c6676bf3f1,e90ec54b-8b86-43df-8c3c-18c6676bf3f1,1,0,6aff6b2f-660b-4d75-9064-fed7a6b0feac,6aff6b2f-660b-4d75-9064-fed7a6b0feac,1,0,53502127-9f47-4e2e-b3ed-eb3c3aae1c50,53502127-9f47-4e2e-b3ed-eb3c3aae1c50,1,0,2fcdd0b5-b738-4e19-8bbf-13a72d7014ec,2fcdd0b5-b738-4e19-8bbf-13a72d7014ec,1,0,59dc7e8d-6f5c-4e1b-816e-5fc15c0e96e0,59dc7e8d-6f5c-4e1b-816e-5fc15c0e96e0,1,0,e60a9221-7676-456f-8a01-b317b03a278b,e60a9221-7676-456f-8a01-b317b03a278b,1,0,4e81ec90-f668-49ca-9193-22337bafb01b,4e81ec90-f668-49ca-9193-22337bafb01b,1,0,104c7c31-5bbd-4242-b29a-2c0d8b69a1b9,104c7c31-5bbd-4242-b29a-2c0d8b69a1b9,1,0,cd60adec-52d6-4fa8-85ca-26551196432c,cd60adec-52d6-4fa8-85ca-26551196432c,1,0,4dfbabd7-d5e5-4b2a-b8d1-752e416629a0,4dfbabd7-d5e5-4b2a-b8d1-752e416629a0,1,0,b71ddbdb-08bb-46be-a79d-319c4a557e76,b71ddbdb-08bb-46be-a79d-319c4a557e76,1,0,d3dfa867-3d52-4872-a69e-f27636abe1bd,d3dfa867-3d52-4872-a69e-f27636abe1bd,1,0,6952d1aa-7132-4e40-8542-f64a4dc1e029,6952d1aa-7132-4e40-8542-f64a4dc1e029,1,0,51a1bc4c-9139-42a4-92c3-f45c837cbdb9,51a1bc4c-9139-42a4-92c3-f45c837cbdb9,1,0,1621811b-dfd3-4c58-8e15-ced16690147a,1621811b-dfd3-4c58-8e15-ced16690147a,1,0,3f266e51-0476-4b7f-8d61-6f9f4456049d,3f266e51-0476-4b7f-8d61-6f9f4456049d,1,0,2b9ce591-ff13-4c2d-85c4-632a2609a211,2b9ce591-ff13-4c2d-85c4-632a2609a211,1,0,689ca0ec-61ce-4590-b73b-ac81e8f1d459,689ca0ec-61ce-4590-b73b-ac81e8f1d459,1,0,3ea1895f-66d0-4bbb-a66b-0c9d411a7c55,3ea1895f-66d0-4bbb-a66b-0c9d411a7c55,1,0,55ad36d7-399e-4b82-8d1c-d45bd890abfe,55ad36d7-399e-4b82-8d1c-d45bd890abfe,1,0,0f3b9012-7bf6-4451-b0c3-139d98d9c2c1,0f3b9012-7bf6-4451-b0c3-139d98d9c2c1,1,0,1b39a65f-5425-4bcb-85bd-1425274af8a8,1b39a65f-5425-4bcb-85bd-1425274af8a8,1,0,392a0618-a41a-4713-a561-f3a80b85abd8,392a0618-a41a-4713-a561-f3a80b85abd8,1,0,a453384d-658d-40f1-ac69-578aa3a24e39,a453384d-658d-40f1-ac69-578aa3a24e39,1,0,2215a441-b9b1-4e5c-8df3-e6cee9226c43,2215a441-b9b1-4e5c-8df3-e6cee9226c43,1,0,2a8d4908-ea0d-4837-be3f-bd78f6b61254,2a8d4908-ea0d-4837-be3f-bd78f6b61254,1,0,ec1deb79-7369-4b26-8e91-f51399e8052a,ec1deb79-7369-4b26-8e91-f51399e8052a,1,0,75dde4fb-3a1a-450c-95c2-c1f95a781db9,75dde4fb-3a1a-450c-95c2-c1f95a781db9,1,0,0ae3ac56-160a-417e-9952-719d02e7f089,0ae3ac56-160a-417e-9952-719d02e7f089,1,0,f5b3983d-d22d-44a8-9069-0a60d8b858bf,f5b3983d-d22d-44a8-9069-0a60d8b858bf,1,0,a64b15fa-fc34-43fe-a366-d27c0f1c3df2,a64b15fa-fc34-43fe-a366-d27c0f1c3df2,1,0,8b13e848-8fd3-4326-bd18-5a5b12ed3dc5,8b13e848-8fd3-4326-bd18-5a5b12ed3dc5,1,0,b9a6b053-2b93-4946-9531-040d3131dcc5,b9a6b053-2b93-4946-9531-040d3131dcc5,1,0,9f36d26e-aa71-44d5-ac27-9aaa643555c3,9f36d26e-aa71-44d5-ac27-9aaa643555c3,1,0,87b8b5d7-d3d6-450a-adb1-5c875257ec80,87b8b5d7-d3d6-450a-adb1-5c875257ec80,1,0,e3640efe-e46c-4588-b251-dda23bf0641d,e3640efe-e46c-4588-b251-dda23bf0641d,1,0,bb6e6574-4328-4cf5-a043-a7d8f6c81414,bb6e6574-4328-4cf5-a043-a7d8f6c81414,1,0,b46b5090-5eb1-4950-9031-8b43f611fa9c,b46b5090-5eb1-4950-9031-8b43f611fa9c,1,0,522a4bff-34d3-46b2-8c66-0b30d881a86e,522a4bff-34d3-46b2-8c66-0b30d881a86e,1,0,3d7908b1-bd82-475e-8488-fafcbe3458ee,3d7908b1-bd82-475e-8488-fafcbe3458ee,1,0,1bac040b-83e4-402f-a9bf-d6a7b10c91e0,1bac040b-83e4-402f-a9bf-d6a7b10c91e0,1,0,e9c632b0-7977-4e44-ac56-882617ad7cdc,e9c632b0-7977-4e44-ac56-882617ad7cdc,1,0,e84acba7-7e0f-43e8-a545-6e53d529d5d4,e84acba7-7e0f-43e8-a545-6e53d529d5d4,1,0,3b089d90-7ece-4b74-a4dc-e436d9d31b3b,3b089d90-7ece-4b74-a4dc-e436d9d31b3b,1,0,0f9c08c2-e7fa-4ea0-a935-f927feb01131,0f9c08c2-e7fa-4ea0-a935-f927feb01131,1,0,6086d53f-f1b2-4126-ab46-64705fe63b87,6086d53f-f1b2-4126-ab46-64705fe63b87,1,0,62a6b1c9-8288-4fa1-a17d-241b85a5e4b0,62a6b1c9-8288-4fa1-a17d-241b85a5e4b0,1,0,57069b56-f732-41c0-9a75-cbdb1e88556c,57069b56-f732-41c0-9a75-cbdb1e88556c,1,0,6d042890-27b2-4efc-935e-8190bb57c037,6d042890-27b2-4efc-935e-8190bb57c037,1,0,23e79add-7f1c-422a-9df1-8f76ebf805df,23e79add-7f1c-422a-9df1-8f76ebf805df,1,0,9295d88f-0865-440c-a98a-4710c50211be,9295d88f-0865-440c-a98a-4710c50211be,1,0,90aa51ae-434d-48f4-bfe3-0e1dd3aeea6f,90aa51ae-434d-48f4-bfe3-0e1dd3aeea6f,1,0,38ac9a13-665a-4201-b5cc-687fe4a01130,38ac9a13-665a-4201-b5cc-687fe4a01130,1,0,97c59096-b2dc-45d0-a580-b3018a04f9af,97c59096-b2dc-45d0-a580-b3018a04f9af,1,0,5dcd8e28-b058-405a-bac4-defab7d4b789,5dcd8e28-b058-405a-bac4-defab7d4b789,1,0,6fbf63b7-1692-495e-a8ec-bdda182997a3,6fbf63b7-1692-495e-a8ec-bdda182997a3,1,0,077af11c-fd3c-4e87-b169-5f3137464f77,077af11c-fd3c-4e87-b169-5f3137464f77,1,0,8172256e-f51e-4de0-bd07-3668785f4cb9,8172256e-f51e-4de0-bd07-3668785f4cb9,1,0,ccb54dc9-3d12-43d0-af6a-138d3526f5d5,ccb54dc9-3d12-43d0-af6a-138d3526f5d5,1,0,da8f7f30-eb80-44db-a451-348306c90cd8,da8f7f30-eb80-44db-a451-348306c90cd8,1,0,b82bcff8-49c9-44a9-8a9f-4428b0cc54a5,b82bcff8-49c9-44a9-8a9f-4428b0cc54a5,1,0,870b4d6d-0b89-4eda-a2b3-5c6db7dbe864,870b4d6d-0b89-4eda-a2b3-5c6db7dbe864,1,0,c172aeaf-b444-47c0-baee-80ccd91fe934,c172aeaf-b444-47c0-baee-80ccd91fe934,1,0,757ea742-8c14-4e0a-a867-432eee5cfc64,757ea742-8c14-4e0a-a867-432eee5cfc64,1,0,b8c36d5a-7966-4978-9225-67502b9c60a4,b8c36d5a-7966-4978-9225-67502b9c60a4,1,0,37ea0c64-2fec-4c2e-922b-d3a2f01f3e22,37ea0c64-2fec-4c2e-922b-d3a2f01f3e22,1,0,9847676d-f44d-46a0-83e2-4a43a835caf8,9847676d-f44d-46a0-83e2-4a43a835caf8,1,0,43c18cae-21a9-413b-a350-d5cf826980f0,43c18cae-21a9-413b-a350-d5cf826980f0,1,0,16773cdb-b979-42d5-a2a5-d4b79e8737bd,16773cdb-b979-42d5-a2a5-d4b79e8737bd,1,0,c28a190a-f487-4e99-b8f8-6928268086f8,c28a190a-f487-4e99-b8f8-6928268086f8,1,0,94e02f76-8656-4999-9470-dd996118400c,94e02f76-8656-4999-9470-dd996118400c,1,0,9effd265-3783-44e2-8698-80dd82137546,9effd265-3783-44e2-8698-80dd82137546,1,0,bef52020-98f8-465b-8981-e5f8eed62308,bef52020-98f8-465b-8981-e5f8eed62308,1,0,19897ad0-bdb5-439c-b4a2-a773c0ce5cf5,19897ad0-bdb5-439c-b4a2-a773c0ce5cf5,1,0,e731dab7-df9e-48ae-8542-4c0c30666ae9,e731dab7-df9e-48ae-8542-4c0c30666ae9,1,0,f321e378-6d50-4567-8434-813f367d3a65,f321e378-6d50-4567-8434-813f367d3a65,1,0,27246fd8-a8a3-4244-b49a-c0372a812167,27246fd8-a8a3-4244-b49a-c0372a812167,1,0,0841ebfc-12e6-4b3e-a60f-861b15e1b63c,0841ebfc-12e6-4b3e-a60f-861b15e1b63c,1,0,bde05768-2dd6-4800-985d-27075f610cca,bde05768-2dd6-4800-985d-27075f610cca,1,0,d18956cf-e449-48cc-a127-01b5dc910ea2,d18956cf-e449-48cc-a127-01b5dc910ea2,1,0,8e5487a3-b5e5-40ca-88f3-5b0ea0c4d481,8e5487a3-b5e5-40ca-88f3-5b0ea0c4d481,1,0,5d338e31-a56b-45f0-8a62-0270ca543f6a,5d338e31-a56b-45f0-8a62-0270ca543f6a,1,0,e352fc19-96be-4410-a516-bc58cc234422,e352fc19-96be-4410-a516-bc58cc234422,1,0,9b742da4-1696-4c06-9dfa-dd85c9286c74,9b742da4-1696-4c06-9dfa-dd85c9286c74,1,0,a7098d41-a978-4c77-937c-8deebdfe0bcd,a7098d41-a978-4c77-937c-8deebdfe0bcd,1,0,db1062bc-4164-4095-9640-9804c0ebcd0b,db1062bc-4164-4095-9640-9804c0ebcd0b,1,0,c11d967b-1250-4345-90b0-011a96c5ae5e,c11d967b-1250-4345-90b0-011a96c5ae5e,1,0,ea7c61ff-745c-4908-9a94-bba022d12de4,ea7c61ff-745c-4908-9a94-bba022d12de4,1,0,ef8a82f2-d3e5-4f0d-8a16-024d9cdacce2,ef8a82f2-d3e5-4f0d-8a16-024d9cdacce2,1,0,24eed105-f612-4340-ad79-388a7b39b58c,24eed105-f612-4340-ad79-388a7b39b58c,1,0,8e4bd2ac-d555-490e-87ab-1b0cdd6f72e9,8e4bd2ac-d555-490e-87ab-1b0cdd6f72e9,1,0,4d6683a3-1edd-4d04-8e02-0be002e4e5a4,4d6683a3-1edd-4d04-8e02-0be002e4e5a4,1,0,c7ffd8ab-15e9-4cf1-a7fd-d05534dff000,c7ffd8ab-15e9-4cf1-a7fd-d05534dff000,1,0,53caada5-1d53-45dc-9432-90075ddca890,53caada5-1d53-45dc-9432-90075ddca890,1,0,d1472d23-954b-4069-b2d6-df08c6ec0be1,d1472d23-954b-4069-b2d6-df08c6ec0be1,1,0,93fe2ce6-7193-42bc-a966-4653b7989eaa,93fe2ce6-7193-42bc-a966-4653b7989eaa,1,0,6a2add61-edb7-4561-bae9-06b3741e7726,6a2add61-edb7-4561-bae9-06b3741e7726,1,0,a7fe0aa5-722c-4a09-889b-ee422421addc,a7fe0aa5-722c-4a09-889b-ee422421addc,1,0,798bd34c-d0ee-4590-9b1d-8bc47e42ca8c,798bd34c-d0ee-4590-9b1d-8bc47e42ca8c,1,0,0c838a31-2b08-447c-b39a-a613cfba526c,0c838a31-2b08-447c-b39a-a613cfba526c,1,0,b25083c5-9b97-49a4-b6c3-bbf8d7f91cd3,b25083c5-9b97-49a4-b6c3-bbf8d7f91cd3,1,0,86c679c0-3531-4622-9a1f-3d9d6ccdd431,86c679c0-3531-4622-9a1f-3d9d6ccdd431,1,0,3bc2ca38-4a10-4ebd-a5dc-3418db494f0c,3bc2ca38-4a10-4ebd-a5dc-3418db494f0c,1,0,670c62c1-1a33-4dec-9540-5b4c1fe29074,670c62c1-1a33-4dec-9540-5b4c1fe29074,1,0,cc664d81-d0af-4d25-ae29-64f422e51bf2,cc664d81-d0af-4d25-ae29-64f422e51bf2,1,0,e1314cd1-e662-4c29-ad51-492cb0029883,e1314cd1-e662-4c29-ad51-492cb0029883,1,0,ae3876e2-bd06-415b-9d9a-b77d787be09e,ae3876e2-bd06-415b-9d9a-b77d787be09e,1,0,0cf49621-afc5-4c8d-a1b5-f8c30db9f415,0cf49621-afc5-4c8d-a1b5-f8c30db9f415,1,0,4718392b-477c-496b-9d28-ddbdaa7a04f2,4718392b-477c-496b-9d28-ddbdaa7a04f2,1,0,879844f0-30b4-47f5-8d2e-5fea29910368,879844f0-30b4-47f5-8d2e-5fea29910368,1,0,303334ba-2785-47fe-a094-84f9dea33be2,303334ba-2785-47fe-a094-84f9dea33be2,1,0,9690842c-7a2c-4b5d-a238-f730afc49a7b,9690842c-7a2c-4b5d-a238-f730afc49a7b,1,0,04424730-6992-4a5b-838b-7a7c16dedbd0,04424730-6992-4a5b-838b-7a7c16dedbd0,1,0,cd6b749d-55a4-4e10-a933-8d97bfe2f9df,cd6b749d-55a4-4e10-a933-8d97bfe2f9df,1,0,240bec31-cd59-477b-8459-8e3278da22dc,240bec31-cd59-477b-8459-8e3278da22dc,1,0,b76c3bd6-924a-4378-acbe-6f17232b201b,b76c3bd6-924a-4378-acbe-6f17232b201b,1,0,e0519f0c-9c99-4f5c-a3a9-27adce45737d,e0519f0c-9c99-4f5c-a3a9-27adce45737d,1,0,45eec13d-e5e5-4a2e-ad6c-2780bde15ef2,45eec13d-e5e5-4a2e-ad6c-2780bde15ef2,1,0,0874a3c0-0d16-4172-b467-f0666d5fcaee,0874a3c0-0d16-4172-b467-f0666d5fcaee,1,0,9d358304-3fd0-4ec6-9400-cc498ff2f751,9d358304-3fd0-4ec6-9400-cc498ff2f751,1,0,cc380a19-ab29-4f20-93ad-9a58cd4de56e,cc380a19-ab29-4f20-93ad-9a58cd4de56e,1,0,6a5f7521-270e-476e-88ec-a8cf79ea61a6,6a5f7521-270e-476e-88ec-a8cf79ea61a6,1,0,9bb841e7-e629-4a1f-8ff6-f8bca0b2b133,9bb841e7-e629-4a1f-8ff6-f8bca0b2b133,1,0,74067eee-6cd4-4ae3-becc-457ecb51dc9a,74067eee-6cd4-4ae3-becc-457ecb51dc9a,1,0,e54a8786-86a4-48e3-a210-aaae4e5fce8c,e54a8786-86a4-48e3-a210-aaae4e5fce8c,1,0,86c86ea2-d14e-4443-b36c-c1c17c4f768a,86c86ea2-d14e-4443-b36c-c1c17c4f768a,1,0,14512818-58b0-44cc-b00d-d37913c57aad,14512818-58b0-44cc-b00d-d37913c57aad,1,0,57964dd6-4b0b-4590-bc44-de744cc423af,57964dd6-4b0b-4590-bc44-de744cc423af,1,0,364cbfe2-bc44-4387-aa7e-6b4aa086c9e9,364cbfe2-bc44-4387-aa7e-6b4aa086c9e9,1,0,343b979a-97e3-4eac-a314-3bd3eea9c15c,343b979a-97e3-4eac-a314-3bd3eea9c15c,1,0,b2f17ef1-3f6f-4029-b3e2-28d6b79c5b76,b2f17ef1-3f6f-4029-b3e2-28d6b79c5b76,1,0,f5bb88eb-c239-4ae3-a297-dfbbd679e008,f5bb88eb-c239-4ae3-a297-dfbbd679e008,1,0,bb350b39-1f4d-460a-98c9-8d2308cf22f0,bb350b39-1f4d-460a-98c9-8d2308cf22f0,1,0,f259b6b4-d582-429f-a16f-027a6bcb7438,f259b6b4-d582-429f-a16f-027a6bcb7438,1,0,9f32e85c-2ed6-41db-b0ec-6d8596940e80,9f32e85c-2ed6-41db-b0ec-6d8596940e80,1,0,46e0522b-b88b-43b2-9067-a5359e90994b,46e0522b-b88b-43b2-9067-a5359e90994b,1,0,727c7c01-83e6-4d59-afa4-ee36f1cbacf2,727c7c01-83e6-4d59-afa4-ee36f1cbacf2,1,0,72d41d01-9c9d-4fbe-8a39-932d82d171ef,72d41d01-9c9d-4fbe-8a39-932d82d171ef,1,0,697d5715-dd04-40be-9b28-539734725158,697d5715-dd04-40be-9b28-539734725158,1,0,d831a8ac-88a4-4191-ab0b-7538dfb3e7d7,d831a8ac-88a4-4191-ab0b-7538dfb3e7d7,1,0,d95fcb37-fc65-466d-93e2-489f41683276,d95fcb37-fc65-466d-93e2-489f41683276,1,0,c6b0d31e-7b68-4c7f-a565-0ac8a7c11143,c6b0d31e-7b68-4c7f-a565-0ac8a7c11143,1,0,a27a9296-46bb-49a1-8308-db675baa81d0,a27a9296-46bb-49a1-8308-db675baa81d0,1,0,1456f317-360c-4190-b2d1-1be7484369a5,1456f317-360c-4190-b2d1-1be7484369a5,1,0,5ac74bb3-a4df-47db-ad87-6cb95b85c51f,5ac74bb3-a4df-47db-ad87-6cb95b85c51f,1,0,4867948f-b027-44ae-b78c-a94e00eed52b,4867948f-b027-44ae-b78c-a94e00eed52b,1,0,aa0c32ae-da52-4df9-8b77-99ea31f8df81,aa0c32ae-da52-4df9-8b77-99ea31f8df81,1,0,d7dcd391-3a0e-4aa9-9b53-467a1de67593,d7dcd391-3a0e-4aa9-9b53-467a1de67593,1,0,39ed5463-b1c0-44bb-9d71-4ef08007a7d0,39ed5463-b1c0-44bb-9d71-4ef08007a7d0,1,0,3d4cb11a-7ce7-4c46-a427-99d6f41f08bf,3d4cb11a-7ce7-4c46-a427-99d6f41f08bf,1,0,56cc2ba7-fee3-4dcb-9a2a-93dc94a5ee1f,56cc2ba7-fee3-4dcb-9a2a-93dc94a5ee1f,1,0,ef044879-e731-418a-b917-6a685f27c5f4,ef044879-e731-418a-b917-6a685f27c5f4,1,0,618d13d5-fd1f-4b70-ad45-dd6a17a50730,618d13d5-fd1f-4b70-ad45-dd6a17a50730,1,0,58037b76-b548-4f07-bd67-67e552a5c6e5,58037b76-b548-4f07-bd67-67e552a5c6e5,1,0,00e48a23-eb5b-4a29-b36c-218ab9760f23,00e48a23-eb5b-4a29-b36c-218ab9760f23,1,0,68f19104-5fa3-4f28-a84b-bf68c3bed49b,68f19104-5fa3-4f28-a84b-bf68c3bed49b,1,0,f88ccd7a-8d15-4b24-addf-da522a0b4a43,f88ccd7a-8d15-4b24-addf-da522a0b4a43,1,0,0f8e87d4-ffb7-4cff-a2d3-6d5c5219ff0b,0f8e87d4-ffb7-4cff-a2d3-6d5c5219ff0b,1,0,1511c2e3-aeb4-422a-b6ae-03412b714c93,1511c2e3-aeb4-422a-b6ae-03412b714c93,1,0,331db120-ba88-4eb3-a8ec-10691be82e2d,331db120-ba88-4eb3-a8ec-10691be82e2d,1,0,349378d1-abe3-44de-84a4-d525b08e0474,349378d1-abe3-44de-84a4-d525b08e0474,1,0,1526b18d-7fab-414e-a5b2-377b67ac0b55,1526b18d-7fab-414e-a5b2-377b67ac0b55,1,0,c561fe6b-53ea-435b-a230-1850e2dc1ff5,c561fe6b-53ea-435b-a230-1850e2dc1ff5,1,0,aba7605f-6baf-42a8-b5ad-8f71c780b81f,aba7605f-6baf-42a8-b5ad-8f71c780b81f,1,0,8fc19eca-1a15-4758-af4b-79637e51edfb,8fc19eca-1a15-4758-af4b-79637e51edfb,1,0,be9144ce-5560-47bb-8c5e-9beefd15bfc3,be9144ce-5560-47bb-8c5e-9beefd15bfc3,1,0,ad09d1e6-5982-4e1c-864e-452ac5b2915a,ad09d1e6-5982-4e1c-864e-452ac5b2915a,1,0,c0bc4cc4-b5ca-47c2-b589-c0d25bb63f1e,c0bc4cc4-b5ca-47c2-b589-c0d25bb63f1e,1,0,3924c17c-6ee3-4406-8023-0a79a242e389,3924c17c-6ee3-4406-8023-0a79a242e389,1,0,84a159ed-bc5f-4497-94d1-94b187b0bffe,84a159ed-bc5f-4497-94d1-94b187b0bffe,1,0,0a126b0d-28c8-4ed4-836f-e39e17693ad0,0a126b0d-28c8-4ed4-836f-e39e17693ad0,1,0,0dcc3bbf-afbe-4a4e-bc4a-17534d5fab28,0dcc3bbf-afbe-4a4e-bc4a-17534d5fab28,1,0,bf75c4de-b36a-4a7f-8d84-9fa3d020a6cb,bf75c4de-b36a-4a7f-8d84-9fa3d020a6cb,1,0,f95adb50-fa0b-434c-93dd-b7fd211220b7,f95adb50-fa0b-434c-93dd-b7fd211220b7,1,0,2233ce53-b8a8-4c83-97a2-683c8575462a,2233ce53-b8a8-4c83-97a2-683c8575462a,1,0,d6a5083f-ca9a-42ed-b202-2983e4ba21c2,d6a5083f-ca9a-42ed-b202-2983e4ba21c2,1,0,bd69bf55-dee0-4553-8f90-5fd025c0f773,bd69bf55-dee0-4553-8f90-5fd025c0f773,1,0,2071f210-dc13-43c0-a58e-b982821d6842,2071f210-dc13-43c0-a58e-b982821d6842,1,0,3cda70d0-3116-4508-82ea-5ea0f0921262,3cda70d0-3116-4508-82ea-5ea0f0921262,1,0,d5588c0d-3e94-485b-a7e9-45f5cf74df9e,d5588c0d-3e94-485b-a7e9-45f5cf74df9e,1,0,f415296e-fceb-4835-abe9-17bb17a5d5e5,f415296e-fceb-4835-abe9-17bb17a5d5e5,1,0,0e805e1f-3797-4ef9-94d3-0ec58ac1b605,0e805e1f-3797-4ef9-94d3-0ec58ac1b605,1,0,8677bd53-5569-4d44-b7ce-d1b3fe12c78d,8677bd53-5569-4d44-b7ce-d1b3fe12c78d,1,0,19056365-9ff1-4733-876e-a7ebdbbe0557,19056365-9ff1-4733-876e-a7ebdbbe0557,1,0,c8679d82-075c-4556-8231-c004d144fe61,c8679d82-075c-4556-8231-c004d144fe61,1,0,5e09dc5e-bbb7-4c38-b609-940c24f63c84,5e09dc5e-bbb7-4c38-b609-940c24f63c84,1,0,017b28eb-8ba9-465e-a748-20eadbeb4ea2,017b28eb-8ba9-465e-a748-20eadbeb4ea2,1,0,c0bb2d66-94c9-4bc6-afd5-534075e8395b,c0bb2d66-94c9-4bc6-afd5-534075e8395b,1,0,db7cc693-1645-4416-a9d9-5a7584cd3bbc,db7cc693-1645-4416-a9d9-5a7584cd3bbc,1,0,c849fb09-7833-49c8-9461-98426dc6c0af,c849fb09-7833-49c8-9461-98426dc6c0af,1,0,6c58fc3a-37f8-44b7-b076-2c10ce09b554,6c58fc3a-37f8-44b7-b076-2c10ce09b554,1,0,245c07a9-98b0-452b-b899-dc8751ab7ce0,245c07a9-98b0-452b-b899-dc8751ab7ce0,1,0,b0ca1b85-e1de-4b7c-8261-7f9e8a6a72eb,b0ca1b85-e1de-4b7c-8261-7f9e8a6a72eb,1,0,ae67dfe5-bb36-4400-81f5-8dab1fd0ca6e,ae67dfe5-bb36-4400-81f5-8dab1fd0ca6e,1,0,91d7687b-7627-473f-a08d-433f9d385107,91d7687b-7627-473f-a08d-433f9d385107,1,0,83db1b00-e9e3-41da-8a59-47589dcfd618,83db1b00-e9e3-41da-8a59-47589dcfd618,1,0,91d2d798-1498-4c52-aa7b-99db4b992876,91d2d798-1498-4c52-aa7b-99db4b992876,1,0,e85a03d3-e7c7-4058-992a-515a557d9e52,e85a03d3-e7c7-4058-992a-515a557d9e52,1,0,d3a1d247-8f4a-45af-9861-7e313a100209,d3a1d247-8f4a-45af-9861-7e313a100209,1,0,83385f31-2cdf-44a1-85c3-461e4ad5fd45,83385f31-2cdf-44a1-85c3-461e4ad5fd45,1,0,b55b06db-604e-4fb9-9253-638c747bd8f9,b55b06db-604e-4fb9-9253-638c747bd8f9,1,0,9cd9a3e1-b52c-4151-abd3-2744ed03cc1b,9cd9a3e1-b52c-4151-abd3-2744ed03cc1b,1,0,9aa0c1ef-45b4-405b-ad6f-ebcf876e6318,9aa0c1ef-45b4-405b-ad6f-ebcf876e6318,1,0,deb69010-80b0-4e28-acc7-8c50e8e6f873,deb69010-80b0-4e28-acc7-8c50e8e6f873,1,0,1a9177fe-6699-42b3-9588-eed9c6008c2d,1a9177fe-6699-42b3-9588-eed9c6008c2d,1,0,4f49412a-fbbe-4ee1-9c2b-affe5266bba7,4f49412a-fbbe-4ee1-9c2b-affe5266bba7,1,0,ae698468-f42a-4400-aee6-fd849740e634,ae698468-f42a-4400-aee6-fd849740e634,1,0,d62bdb25-f261-4282-aa72-52e2b107642c,d62bdb25-f261-4282-aa72-52e2b107642c,1,0,ddec19a2-2a76-4eeb-9cbb-6bc2b4a32bc8,ddec19a2-2a76-4eeb-9cbb-6bc2b4a32bc8,1,0,6438435e-97cc-4bd2-98dc-e21cee55bb0f,6438435e-97cc-4bd2-98dc-e21cee55bb0f,1,0,00579e31-e97d-4d79-ba25-b8d500a17e7f,00579e31-e97d-4d79-ba25-b8d500a17e7f,1,0,5001bea4-c8f9-4950-9eda-d33125e3bb46,5001bea4-c8f9-4950-9eda-d33125e3bb46,1,0,4ac6d0dd-0007-46b8-bfcc-93c0f85b6b85,4ac6d0dd-0007-46b8-bfcc-93c0f85b6b85,1,0,e815010d-e03d-46e4-b482-c1556902cc26,e815010d-e03d-46e4-b482-c1556902cc26,1,0,98bdfd19-b993-43bd-b2e1-3535d001ff29,98bdfd19-b993-43bd-b2e1-3535d001ff29,1,0,00a1fdb2-d233-4179-b78a-a7e27d9c03c5,00a1fdb2-d233-4179-b78a-a7e27d9c03c5,1,0,dd03e170-4186-495b-ae1c-fc66385d7ccf,dd03e170-4186-495b-ae1c-fc66385d7ccf,1,0,81fbb02e-76b2-4bca-bb3b-871e4e969a3c,81fbb02e-76b2-4bca-bb3b-871e4e969a3c,1,0,cdef5df6-f3a1-4950-b197-4f375914f885,cdef5df6-f3a1-4950-b197-4f375914f885,1,0,c1caff49-dc4b-4b3e-be47-122ea8b70416,c1caff49-dc4b-4b3e-be47-122ea8b70416,1,0,a1185a4c-7351-48b0-b662-61f61a1ad715,a1185a4c-7351-48b0-b662-61f61a1ad715,1,0,4ee0c7a4-cc26-438d-8908-f6a900c99d8b,4ee0c7a4-cc26-438d-8908-f6a900c99d8b,1,0,71d03545-df45-4c70-aa0d-3b916f2a9041,71d03545-df45-4c70-aa0d-3b916f2a9041,1,0,28a25822-2306-409a-a7c8-6f7e42bf25e8,28a25822-2306-409a-a7c8-6f7e42bf25e8,1,0,a45fa0c3-c363-4465-861f-13cedfeb79dd,a45fa0c3-c363-4465-861f-13cedfeb79dd,1,0,a72517c3-8c91-4e40-81ac-83c762789e87,a72517c3-8c91-4e40-81ac-83c762789e87,1,0,0233b335-7e26-4661-9850-8ab09d3178e3,0233b335-7e26-4661-9850-8ab09d3178e3,1,0,d942d536-5d01-4571-b910-abd973996a38,d942d536-5d01-4571-b910-abd973996a38,1,0,b82a7103-b872-49c3-b632-81d5a0051136,b82a7103-b872-49c3-b632-81d5a0051136,1,0,4b17ac35-78cb-4d01-bb08-659c0a93e8ce,4b17ac35-78cb-4d01-bb08-659c0a93e8ce,1,0,20c2053c-8ebd-4c07-8d95-956b424d047c,20c2053c-8ebd-4c07-8d95-956b424d047c,1,0,7c9dee81-7e85-4d26-84c3-66b0d770ac5a,7c9dee81-7e85-4d26-84c3-66b0d770ac5a,1,0,08fe5e70-ac6b-427a-b6f2-0e2f7848fa6b,08fe5e70-ac6b-427a-b6f2-0e2f7848fa6b,1,0,bef6081e-f377-41d6-83a1-b0e218a3fb46,bef6081e-f377-41d6-83a1-b0e218a3fb46,1,0,9b67bfd5-ef23-4205-b7ba-9466517e9999,9b67bfd5-ef23-4205-b7ba-9466517e9999,1,0,ea2c4c8e-23cc-4884-812e-1e959da48afc,ea2c4c8e-23cc-4884-812e-1e959da48afc,1,0,9474b4f1-b1bb-4fcf-acdb-a149a09b8490,9474b4f1-b1bb-4fcf-acdb-a149a09b8490,1,0,46b0a5b3-1fa7-44ff-a941-c6de47d36e77,46b0a5b3-1fa7-44ff-a941-c6de47d36e77,1,0,ea97b67e-1182-49c3-b95a-8fcce4cd3d09,ea97b67e-1182-49c3-b95a-8fcce4cd3d09,1,0,592f55e1-b004-44ef-878a-6c2016ccbeb0,592f55e1-b004-44ef-878a-6c2016ccbeb0,1,0,19add2bd-eede-4a05-901b-cf8ce49a638f,19add2bd-eede-4a05-901b-cf8ce49a638f,1,0,becf53b6-3fbc-4c70-822f-4a70b0434353,becf53b6-3fbc-4c70-822f-4a70b0434353,1,0,7dc0429d-146a-4c4f-b122-5d5c053bd4ed,7dc0429d-146a-4c4f-b122-5d5c053bd4ed,1,0,f8dc2485-685b-4e41-834a-a2cbbbe4d53b,f8dc2485-685b-4e41-834a-a2cbbbe4d53b,1,0,c38d8135-e11f-4860-b370-84ff279b7fbd,c38d8135-e11f-4860-b370-84ff279b7fbd,1,0,ee0798f5-47a8-4118-a25c-cfd3473007c1,ee0798f5-47a8-4118-a25c-cfd3473007c1,1,0,652ee894-047b-4a5a-a500-2d61b4c4a473,652ee894-047b-4a5a-a500-2d61b4c4a473,1,0,8a95d199-9bd1-4cbb-9d1a-941e80fa2105,8a95d199-9bd1-4cbb-9d1a-941e80fa2105,1,0,fef727fa-f63b-4467-9367-73a2425b19e3,fef727fa-f63b-4467-9367-73a2425b19e3,1,0,3b9c03bc-8517-498f-8052-e53854fb0753,3b9c03bc-8517-498f-8052-e53854fb0753,1,0,33f8cd94-71e7-4703-92c3-22690fbd871a,33f8cd94-71e7-4703-92c3-22690fbd871a,1,0,b6e5de4d-0156-4342-b646-6e6920a4bd3a,b6e5de4d-0156-4342-b646-6e6920a4bd3a,1,0,c03f9972-5a1f-449b-b170-5a958c2b5846,c03f9972-5a1f-449b-b170-5a958c2b5846,1,0,25896075-2484-4879-8310-7f5680d80b48,25896075-2484-4879-8310-7f5680d80b48,1,0,09858042-6284-4499-8055-c1b5b783ce5f,09858042-6284-4499-8055-c1b5b783ce5f,1,0,1e3c444d-6f73-4eb0-a12d-7106daf36b14,1e3c444d-6f73-4eb0-a12d-7106daf36b14,1,0,e417e2ab-5e25-40a9-8dc2-9552a4fe1a38,e417e2ab-5e25-40a9-8dc2-9552a4fe1a38,1,0,1e63c656-a0e7-4b33-8bac-2a196e028ffa,1e63c656-a0e7-4b33-8bac-2a196e028ffa,1,0,085cbea9-1df1-4ee9-afb7-da2bf313697e,085cbea9-1df1-4ee9-afb7-da2bf313697e,1,0,36b080d5-a870-46fa-bf8d-0a06e3a9719f,36b080d5-a870-46fa-bf8d-0a06e3a9719f,1,0,38fc1e6e-7cd3-437b-b429-6655be34cd01,38fc1e6e-7cd3-437b-b429-6655be34cd01,1,0,b3152292-5546-4896-ad24-cb41057698d8,b3152292-5546-4896-ad24-cb41057698d8,1,0,5f3d5a05-a581-462d-96a2-2750ba0e0481,5f3d5a05-a581-462d-96a2-2750ba0e0481,1,0,477ab478-b336-4bac-898f-e20e3a4039b5,477ab478-b336-4bac-898f-e20e3a4039b5,1,0,bfa90848-930f-433d-8f6f-c11ac2c5eba2,bfa90848-930f-433d-8f6f-c11ac2c5eba2,1,0,a4d767a1-d2e6-4e0a-ab35-9207eef54998,a4d767a1-d2e6-4e0a-ab35-9207eef54998,1,0,f38069e7-6d69-4be9-8463-bc7a33158a1a,f38069e7-6d69-4be9-8463-bc7a33158a1a,1,0,e50cb13a-151b-45d2-a7b7-d23440ddfa24,e50cb13a-151b-45d2-a7b7-d23440ddfa24,1,0,cc3a7f15-4db6-445e-b282-f44d0460b7d3,cc3a7f15-4db6-445e-b282-f44d0460b7d3,1,0,0b8bfb71-d430-4bdf-8391-a534b3a15fc3,0b8bfb71-d430-4bdf-8391-a534b3a15fc3,1,0,0d8770aa-fa6e-471c-92c8-b96576927ef0,0d8770aa-fa6e-471c-92c8-b96576927ef0,1,0,4f86b052-b81e-49b8-9fa8-82b2ecbc8e01,4f86b052-b81e-49b8-9fa8-82b2ecbc8e01,1,0,e25b2b10-bf08-42db-9642-861efc5e583b,e25b2b10-bf08-42db-9642-861efc5e583b,1,0,b8a32c33-4e15-4c21-baab-64a86d44321b,b8a32c33-4e15-4c21-baab-64a86d44321b,1,0,e7d51ada-f286-4519-bfae-ece95dd4d7b0,e7d51ada-f286-4519-bfae-ece95dd4d7b0,1,0,d7dd9a03-6818-4987-8f39-58e1c906569f,d7dd9a03-6818-4987-8f39-58e1c906569f,1,0,fce028b8-b530-49f0-b6ad-a28d03e19b0f,fce028b8-b530-49f0-b6ad-a28d03e19b0f,1,0,301eea20-0e7f-441e-a531-28b4627dfd93,301eea20-0e7f-441e-a531-28b4627dfd93,1,0,47da49ee-b243-4e78-9c8f-bb26c60e6136,47da49ee-b243-4e78-9c8f-bb26c60e6136,1,0,39bee714-cacd-4d48-97a5-c838660e049a,39bee714-cacd-4d48-97a5-c838660e049a,1,0,9ed2c756-80a1-4559-8494-b7a9b82a4519,9ed2c756-80a1-4559-8494-b7a9b82a4519,1,0,69149ce1-d3f8-4e12-be8f-b328ade60882,69149ce1-d3f8-4e12-be8f-b328ade60882,1,0,ff592ecb-eb08-4554-87bf-1d2935b21d3c,ff592ecb-eb08-4554-87bf-1d2935b21d3c,1,0,d975aef4-8da8-4486-baeb-a99c48cff0ec,d975aef4-8da8-4486-baeb-a99c48cff0ec,1,0,75666bb9-f6d3-4dd6-8220-427a81f23fc9,75666bb9-f6d3-4dd6-8220-427a81f23fc9,1,0,9da27139-0bed-47b0-aef6-246929968502,9da27139-0bed-47b0-aef6-246929968502,1,0,68e82adf-bc03-4f23-9ec4-749ed42241da,68e82adf-bc03-4f23-9ec4-749ed42241da,1,0,7ae5d177-a3e6-4989-b10c-8e0a605c26d9,7ae5d177-a3e6-4989-b10c-8e0a605c26d9,1,0,41f87891-ddd5-4e0f-a4f2-8039fb71981b,41f87891-ddd5-4e0f-a4f2-8039fb71981b,1,0,29f2094a-d0d1-425c-8161-45a9ba186e19,29f2094a-d0d1-425c-8161-45a9ba186e19,1,0,a57f6dc1-59d7-4311-8acd-65ce57a9f386,a57f6dc1-59d7-4311-8acd-65ce57a9f386,1,0,893b2dd9-a939-4799-9b78-50d788a5f3ba,893b2dd9-a939-4799-9b78-50d788a5f3ba,1,0,68229ecd-7ecc-4194-a3e5-f8df39b55d6a,68229ecd-7ecc-4194-a3e5-f8df39b55d6a,1,0,e4842271-4fc0-4e15-afef-876f05af78c0,e4842271-4fc0-4e15-afef-876f05af78c0,1,0,31ee6430-b65d-42fa-859b-c4f1c40686ae,31ee6430-b65d-42fa-859b-c4f1c40686ae,1,0,c59e11f3-6bcb-404a-9d76-1416c12be354,c59e11f3-6bcb-404a-9d76-1416c12be354,1,0,c1a1f12b-3978-4047-956e-a5c7de8371a0,c1a1f12b-3978-4047-956e-a5c7de8371a0,1,0,ac39b903-0c60-417e-a50f-49ed375424f5,ac39b903-0c60-417e-a50f-49ed375424f5,1,0,135d57fe-d420-4bb0-9120-e43fd9b55c16,135d57fe-d420-4bb0-9120-e43fd9b55c16,1,0,9893e2d6-f3f8-4d73-bb06-19bf26d216ab,9893e2d6-f3f8-4d73-bb06-19bf26d216ab,1,0,16392cf6-dd83-4df0-a54b-6efc29778a89,16392cf6-dd83-4df0-a54b-6efc29778a89,1,0,e693cdd0-8ead-4ba5-adec-86bab74ee7cd,e693cdd0-8ead-4ba5-adec-86bab74ee7cd,1,0,a4ec7d3d-2d01-436c-98ec-ec42733ee5c6,a4ec7d3d-2d01-436c-98ec-ec42733ee5c6,1,0,10db9f99-c7d1-4b16-9ea2-9bfc2aa4ddb5,10db9f99-c7d1-4b16-9ea2-9bfc2aa4ddb5,1,0,230722e6-942f-4594-be89-eff59c6572bf,230722e6-942f-4594-be89-eff59c6572bf,1,0,b43abcf7-1f1d-4a59-b0d1-0a493c3a4785,b43abcf7-1f1d-4a59-b0d1-0a493c3a4785,1,0,eaf6045f-9ac0-43ef-b165-a45be75a4d44,eaf6045f-9ac0-43ef-b165-a45be75a4d44,1,0,237dab99-ed72-432c-ad01-c6045d74f000,237dab99-ed72-432c-ad01-c6045d74f000,1,0,a1130128-cc48-4555-93a2-99e7f74f77dc,a1130128-cc48-4555-93a2-99e7f74f77dc,1,0,9b4b7424-1af7-4d80-8404-8819fcfeae75,9b4b7424-1af7-4d80-8404-8819fcfeae75,1,0,94e08dcf-3885-4a73-82ab-cb291f1cf95f,94e08dcf-3885-4a73-82ab-cb291f1cf95f,1,0,405c52c4-25fe-45ff-abab-bf01041e768d,405c52c4-25fe-45ff-abab-bf01041e768d,1,0,55ce840b-5838-4107-886d-f935b9907bd8,55ce840b-5838-4107-886d-f935b9907bd8,1,0,0b3088c9-7fb9-4979-acce-16d7ae7ba6b7,0b3088c9-7fb9-4979-acce-16d7ae7ba6b7,1,0,f1753bda-16db-4b00-a16a-37ddade8403f,f1753bda-16db-4b00-a16a-37ddade8403f,1,0,a1875d63-4303-46f1-bdea-fc529b5891f3,a1875d63-4303-46f1-bdea-fc529b5891f3,1,0,59123b12-6052-4480-9c86-f4de1b5cdc04,59123b12-6052-4480-9c86-f4de1b5cdc04,1,0,133f181a-fade-4182-826d-904fac780326,133f181a-fade-4182-826d-904fac780326,1,0,f60cb71a-f451-426a-aa3a-aa266b8da149,f60cb71a-f451-426a-aa3a-aa266b8da149,1,0,641ebe22-7135-4adb-bbd6-e0c37d246a2d,641ebe22-7135-4adb-bbd6-e0c37d246a2d,1,0,f71ba01e-9f6b-4241-8048-4368c8888756,f71ba01e-9f6b-4241-8048-4368c8888756,1,0,23abf9ba-63f9-4173-a9ce-3cbdf1ec3a52,23abf9ba-63f9-4173-a9ce-3cbdf1ec3a52,1,0,973609a2-5b5d-45c4-9606-a13d0de1a09b,973609a2-5b5d-45c4-9606-a13d0de1a09b,1,0,6aa814fa-417e-428c-951e-6efd9d0775da,6aa814fa-417e-428c-951e-6efd9d0775da,1,0,a247efe1-8608-4780-9cc8-54e29944475b,a247efe1-8608-4780-9cc8-54e29944475b,1,0,4b8c3c82-6e8f-469e-8a80-144361d1d0b2,4b8c3c82-6e8f-469e-8a80-144361d1d0b2,1,0,a8f162e9-3f59-41a5-b82f-da20928213c7,a8f162e9-3f59-41a5-b82f-da20928213c7,1,0,ade68dfd-5037-4fd7-b043-9514e3fe6342,ade68dfd-5037-4fd7-b043-9514e3fe6342,1,0,7b008aad-9d05-43e1-8295-62ae58cfff42,7b008aad-9d05-43e1-8295-62ae58cfff42,1,0,fdaf9255-d621-4a98-9530-f618ed440795,fdaf9255-d621-4a98-9530-f618ed440795,1,0,48cefa96-46c7-4870-a096-951dcbae479a,48cefa96-46c7-4870-a096-951dcbae479a,1,0,d74e01cc-941b-4974-8771-0bd2e0d86724,d74e01cc-941b-4974-8771-0bd2e0d86724,1,0,0daac965-2026-4acc-8ba1-3c1f01779257,0daac965-2026-4acc-8ba1-3c1f01779257,1,0,65a331c0-7501-49f6-8027-35b703d11834,65a331c0-7501-49f6-8027-35b703d11834,1,0,c67fab0a-704f-43ae-bd03-4b5b1a880b24,c67fab0a-704f-43ae-bd03-4b5b1a880b24,1,0,aae09896-3b22-4d7d-9059-e47660f8b88b,aae09896-3b22-4d7d-9059-e47660f8b88b,1,0,c1703a14-61a0-4461-8ad8-7173e2c431fe,c1703a14-61a0-4461-8ad8-7173e2c431fe,1,0,aecf5653-3005-43f2-ab49-40977e70f02b,aecf5653-3005-43f2-ab49-40977e70f02b,1,0,4093fe34-7557-4f15-831b-d654b94b8010,4093fe34-7557-4f15-831b-d654b94b8010,1,0,ee10023f-5c63-4cb3-8e6c-db566c788c9d,ee10023f-5c63-4cb3-8e6c-db566c788c9d,1,0,845530cd-36fb-44c3-b30a-730985c9ca2d,845530cd-36fb-44c3-b30a-730985c9ca2d,1,0,475f8577-a141-496b-94e1-53215c0dd017,475f8577-a141-496b-94e1-53215c0dd017,1,0,97638762-c01e-4c8f-88e2-b356e517e18f,97638762-c01e-4c8f-88e2-b356e517e18f,1,0,074e34f2-e9be-4bd3-beca-8b916772e2be,074e34f2-e9be-4bd3-beca-8b916772e2be,1,0,28fecf1b-7cab-4087-b66e-2052edb8ce3a,28fecf1b-7cab-4087-b66e-2052edb8ce3a,1,0,252eb146-0d23-46ae-9feb-ee04531dd7d8,252eb146-0d23-46ae-9feb-ee04531dd7d8,1,0,d85b00b7-b0d8-4b91-8d7f-0c2da524d446,d85b00b7-b0d8-4b91-8d7f-0c2da524d446,1,0,cc906f05-5ea6-43cb-a084-c4ee51ca4bd5,cc906f05-5ea6-43cb-a084-c4ee51ca4bd5,1,0,ce5549bd-ba99-4259-86a3-36521bad59f5,ce5549bd-ba99-4259-86a3-36521bad59f5,1,0,f5417147-4d2a-4e49-911b-2bb5eccb8441,f5417147-4d2a-4e49-911b-2bb5eccb8441,1,0,20fbed2b-4393-4de0-a71d-017a336bdac0,20fbed2b-4393-4de0-a71d-017a336bdac0,1,0,2ca4fc58-798b-4fc3-8673-27688ce7a1f2,2ca4fc58-798b-4fc3-8673-27688ce7a1f2,1,0,08552af7-3c44-42c6-94c5-63a2316127fc,08552af7-3c44-42c6-94c5-63a2316127fc,1,0,41f6f6d1-b7cf-4477-907b-ce69fc08c799,41f6f6d1-b7cf-4477-907b-ce69fc08c799,1,0,9f1a61dd-b04f-48ae-b0c0-17cf23bdb04b,9f1a61dd-b04f-48ae-b0c0-17cf23bdb04b,1,0,0d124daf-dc52-4391-a2d9-3c43a45c422c,0d124daf-dc52-4391-a2d9-3c43a45c422c,1,0,a300ecc3-8031-4a50-a17d-b08cf3a72139,a300ecc3-8031-4a50-a17d-b08cf3a72139,1,0,e7e78b7e-b103-40d6-8064-f84e2d86ca3d,e7e78b7e-b103-40d6-8064-f84e2d86ca3d,1,0,44b28019-01c0-468d-9b60-e050ff8b71ac,44b28019-01c0-468d-9b60-e050ff8b71ac,1,0,69f6173c-a570-41ff-b07f-5b85f7187515,69f6173c-a570-41ff-b07f-5b85f7187515,1,0,9c443dd3-4acb-4c5a-9c4b-af8b0c87e861,9c443dd3-4acb-4c5a-9c4b-af8b0c87e861,1,0,98153b59-8cc6-4dc7-b945-99c1146d07da,98153b59-8cc6-4dc7-b945-99c1146d07da,1,0,3e2828b4-2b55-471e-ac69-55119c2480f8,3e2828b4-2b55-471e-ac69-55119c2480f8,1,0,657b8663-713c-4a80-81e1-8c0166742a35,657b8663-713c-4a80-81e1-8c0166742a35,1,0,df9db8d5-c5c2-4a9d-88fe-77247b2c417e,df9db8d5-c5c2-4a9d-88fe-77247b2c417e,1,0,9da32b56-ff89-4739-bb99-615074b72298,9da32b56-ff89-4739-bb99-615074b72298,1,0,08baf3ee-b8ca-4f29-89fc-c15344064ad3,08baf3ee-b8ca-4f29-89fc-c15344064ad3,1,0,4766c40e-6330-4c1d-a64f-0c8c672886a4,4766c40e-6330-4c1d-a64f-0c8c672886a4,1,0,01b85e3a-9920-425a-9de5-5079fffeef93,01b85e3a-9920-425a-9de5-5079fffeef93,1,0,82e12316-cc64-4d2f-83fa-054b5a738f02,82e12316-cc64-4d2f-83fa-054b5a738f02,1,0,6b70f7e1-8bdb-4fc4-9b95-0e045bfa288c,6b70f7e1-8bdb-4fc4-9b95-0e045bfa288c,1,0,a890be6b-f050-4ea4-a388-570948ffd22b,a890be6b-f050-4ea4-a388-570948ffd22b,1,0,b00c31d6-4fc6-4189-9f72-f91742ec705f,b00c31d6-4fc6-4189-9f72-f91742ec705f,1,0,1333101b-82e8-41a9-a793-5af5dcd6f68a,1333101b-82e8-41a9-a793-5af5dcd6f68a,1,0,766c9bee-b0fc-4a7f-b88e-cd8c4aad73b8,766c9bee-b0fc-4a7f-b88e-cd8c4aad73b8,1,0,3ba630c2-cdc1-40a8-a24e-538ddb1abe38,3ba630c2-cdc1-40a8-a24e-538ddb1abe38,1,0,0f25646a-90f9-4747-a778-7efdaabc284c,0f25646a-90f9-4747-a778-7efdaabc284c,1,0,9b9cd161-5bee-4433-a0ec-b67deb099b5e,9b9cd161-5bee-4433-a0ec-b67deb099b5e,1,0,ca179cb5-65e1-4a55-bf12-096b926accb0,ca179cb5-65e1-4a55-bf12-096b926accb0,1,0,d508b3e9-4dac-40a3-9a0b-1cc76b4196ea,d508b3e9-4dac-40a3-9a0b-1cc76b4196ea,1,0,63470706-f14b-4733-87c2-d1173f5d7e7a,63470706-f14b-4733-87c2-d1173f5d7e7a,1,0,472ce1c2-9e83-418b-b1ec-e15e126bc919,472ce1c2-9e83-418b-b1ec-e15e126bc919,1,0,9fe30414-8261-4403-a854-f22b61824f69,9fe30414-8261-4403-a854-f22b61824f69,1,0,07bb26ac-bd97-465f-a192-db7fedbb579b,07bb26ac-bd97-465f-a192-db7fedbb579b,1,0,76cdcc51-0e6a-4f9c-a115-1864998c2add,76cdcc51-0e6a-4f9c-a115-1864998c2add,1,0,71c3e5d3-7504-433f-9d48-7c287b2b863b,71c3e5d3-7504-433f-9d48-7c287b2b863b,1,0,bb129cf2-5a5a-433a-924a-a1d0d895644a,bb129cf2-5a5a-433a-924a-a1d0d895644a,1,0,faa34cb8-2d48-4851-a839-fc40536a0234,faa34cb8-2d48-4851-a839-fc40536a0234,1,0,0894db61-51f6-4068-9634-e55d95e2a8ac,0894db61-51f6-4068-9634-e55d95e2a8ac,1,0,ad3fb691-68b2-4d65-93ab-ab8fcb77e035,ad3fb691-68b2-4d65-93ab-ab8fcb77e035,1,0,2b9dc754-cb46-4ef1-8048-8ea204a429cd,2b9dc754-cb46-4ef1-8048-8ea204a429cd,1,0,67aed41e-9707-4007-bb3c-7273476664bb,67aed41e-9707-4007-bb3c-7273476664bb,1,0,0d8c215d-1210-47a2-897d-a3257b9f849a,0d8c215d-1210-47a2-897d-a3257b9f849a,1,0,954e7804-e8b1-42aa-9d49-bef73f9d13d1,954e7804-e8b1-42aa-9d49-bef73f9d13d1,1,0,c971e0ba-53b8-4454-92f7-40b0d639058a,c971e0ba-53b8-4454-92f7-40b0d639058a,1,0,0f0456a8-ca04-4de4-9d9b-e8b0fdb8b860,0f0456a8-ca04-4de4-9d9b-e8b0fdb8b860,1,0,ed297409-6215-4fd4-b47d-a2247e0343da,ed297409-6215-4fd4-b47d-a2247e0343da,1,0,5ae2a1de-6380-45cc-9c8f-5612cd5ba627,5ae2a1de-6380-45cc-9c8f-5612cd5ba627,1,0,e8aa2ba2-7dfa-47e3-bc18-6156f700ceed,e8aa2ba2-7dfa-47e3-bc18-6156f700ceed,1,0,8c472f51-47ec-43c4-9858-fd19ac3e17f3,8c472f51-47ec-43c4-9858-fd19ac3e17f3,1,0,c54f31ce-114b-46d3-b4c6-12c8f07727ca,c54f31ce-114b-46d3-b4c6-12c8f07727ca,1,0,5a9c82c1-d0cd-48ff-b91c-38b950591e4c,5a9c82c1-d0cd-48ff-b91c-38b950591e4c,1,0,59855d19-29cd-4efd-a453-b19e574113ef,59855d19-29cd-4efd-a453-b19e574113ef,1,0,249b6436-bd44-4950-b118-7f40f7aaf794,249b6436-bd44-4950-b118-7f40f7aaf794,1,0,712c2b73-4697-4581-a095-70555aee8be2,712c2b73-4697-4581-a095-70555aee8be2,1,0,c1508d67-ac6d-41e3-884d-b3bdd54659f8,c1508d67-ac6d-41e3-884d-b3bdd54659f8,1,0,3436b16e-ef5b-4abb-9aad-c70a7c8560ed,3436b16e-ef5b-4abb-9aad-c70a7c8560ed,1,0,9dd57f32-90a1-4a1d-bc2a-c1b12461d963,9dd57f32-90a1-4a1d-bc2a-c1b12461d963,1,0,ce6d1259-af90-482b-b19a-405512321bd9,ce6d1259-af90-482b-b19a-405512321bd9,1,0,eb276904-cad7-4401-bb78-2d13946291f1,eb276904-cad7-4401-bb78-2d13946291f1,1,0,79ff04ac-4625-469b-916e-938f04de4dd2,79ff04ac-4625-469b-916e-938f04de4dd2,1,0,35103a27-230c-45c0-a8c9-24bd46608bbb,35103a27-230c-45c0-a8c9-24bd46608bbb,1,0,c5e9f987-4466-4161-8e36-278b0b3ce056,c5e9f987-4466-4161-8e36-278b0b3ce056,1,0,b6566d54-e821-4a2a-a447-0f533f35de91,b6566d54-e821-4a2a-a447-0f533f35de91,1,0,46568b9a-a765-4037-8a86-b184a570ab37,46568b9a-a765-4037-8a86-b184a570ab37,1,0,4fcc7278-2fec-49ee-b0ef-c7d5f5f698a4,4fcc7278-2fec-49ee-b0ef-c7d5f5f698a4,1,0,547a6dec-6fe8-439d-a8d9-ac2612af20d2,547a6dec-6fe8-439d-a8d9-ac2612af20d2,1,0,2bc2c4b7-dacb-4cb3-b5b2-712b19bebcd7,2bc2c4b7-dacb-4cb3-b5b2-712b19bebcd7,1,0,84395058-d46a-428c-b782-a9fa89fea14a,84395058-d46a-428c-b782-a9fa89fea14a,1,0,64f667e5-6a8f-448f-aed5-a4d461232845,64f667e5-6a8f-448f-aed5-a4d461232845,1,0,a148cdff-0e67-48e6-9cc5-e8a6f5aa1ae8,a148cdff-0e67-48e6-9cc5-e8a6f5aa1ae8,1,0,037842ca-aeaf-4e27-9a0e-e929438b6f40,037842ca-aeaf-4e27-9a0e-e929438b6f40,1,0,ab6fdd75-2ea6-4408-8c03-0cfab775a7a0,ab6fdd75-2ea6-4408-8c03-0cfab775a7a0,1,0,2c8ab5a6-66d5-4b6f-94ae-4292724ded7f,2c8ab5a6-66d5-4b6f-94ae-4292724ded7f,1,0,de25a90c-4b46-4340-b649-93e16dde33de,de25a90c-4b46-4340-b649-93e16dde33de,1,0,4f2d0398-49f4-410c-a451-436cbf96a262,4f2d0398-49f4-410c-a451-436cbf96a262,1,0,b2c8bd74-21c9-4495-93e2-ca5355698350,b2c8bd74-21c9-4495-93e2-ca5355698350,1,0,39bc2bc6-2a4f-4e26-b1b9-fb8473234f09,39bc2bc6-2a4f-4e26-b1b9-fb8473234f09,1,0,cc9679a5-1ed2-4290-8c9b-8a2f6614d053,cc9679a5-1ed2-4290-8c9b-8a2f6614d053,1,0,93016393-c637-4d81-8675-aa5e51e678e0,93016393-c637-4d81-8675-aa5e51e678e0,1,0,d8621f68-106e-4058-963f-56010491ae2e,d8621f68-106e-4058-963f-56010491ae2e,1,0,f2e2df50-52fc-4e95-909b-80fc91a68f62,f2e2df50-52fc-4e95-909b-80fc91a68f62,1,0,1a1d8dd0-1559-426c-ad3c-baa6eb3a53db,1a1d8dd0-1559-426c-ad3c-baa6eb3a53db,1,0,7a944c45-9b3d-411f-b2ef-de3c896092bb,7a944c45-9b3d-411f-b2ef-de3c896092bb,1,0,d2762764-b5c0-4aeb-8e89-3371972f22d8,d2762764-b5c0-4aeb-8e89-3371972f22d8,1,0,d67a1377-f69f-48d9-824d-2ede2594e630,d67a1377-f69f-48d9-824d-2ede2594e630,1,0,573f1753-9194-4aaf-9217-5cac70ff108f,573f1753-9194-4aaf-9217-5cac70ff108f,1,0,50d3e00e-1a83-4bd5-91db-0561560caf42,50d3e00e-1a83-4bd5-91db-0561560caf42,1,0,1f7ec25a-05b1-468b-8857-2bb1aed3678a,1f7ec25a-05b1-468b-8857-2bb1aed3678a,1,0,c121b8bc-ecbf-4775-b210-3c1e3502a6ac,c121b8bc-ecbf-4775-b210-3c1e3502a6ac,1,0,9f4d5fe5-9bda-4ba9-a313-db1ab0ea14d1,9f4d5fe5-9bda-4ba9-a313-db1ab0ea14d1,1,0,4a1e6d25-89e7-468a-aef1-6ded0154dca2,4a1e6d25-89e7-468a-aef1-6ded0154dca2,1,0,44afff59-0590-4929-93b8-7b49735f21b5,44afff59-0590-4929-93b8-7b49735f21b5,1,0,905624ea-b253-413f-b651-1eb2c5a7d52a,905624ea-b253-413f-b651-1eb2c5a7d52a,1,0,b639ed30-3e37-4c65-a39f-00fe735950eb,b639ed30-3e37-4c65-a39f-00fe735950eb,1,0,76ef7f67-0ce8-4ee2-9134-e793c41b8de3,76ef7f67-0ce8-4ee2-9134-e793c41b8de3,1,0,f137eb0f-bde7-412d-9229-d7a4f9456e6c,f137eb0f-bde7-412d-9229-d7a4f9456e6c,1,0,90880131-8065-4a7e-a0fa-ecff9e27363c,90880131-8065-4a7e-a0fa-ecff9e27363c,1,0,57e9fcea-342c-4089-bd10-befb3faf0dbd,57e9fcea-342c-4089-bd10-befb3faf0dbd,1,0,f59f5511-87c5-4600-9d37-dc019bf0a6aa,f59f5511-87c5-4600-9d37-dc019bf0a6aa,1,0,f85ff11a-163e-4d18-98bc-b0ebe83d34e4,f85ff11a-163e-4d18-98bc-b0ebe83d34e4,1,0,51a0444d-13c8-45a8-97f6-f3f976964bf8,51a0444d-13c8-45a8-97f6-f3f976964bf8,1,0,9892f922-8745-4164-a200-94b5edc1ea0a,9892f922-8745-4164-a200-94b5edc1ea0a,1,0,38eb3fd1-57be-4dc2-bed4-d8107086bf2a,38eb3fd1-57be-4dc2-bed4-d8107086bf2a,1,0,6b6d541b-5dc1-4150-b8d1-5844a694ac6a,6b6d541b-5dc1-4150-b8d1-5844a694ac6a,1,0,2b1619a6-c841-4963-8c51-c1d8d6ba3746,2b1619a6-c841-4963-8c51-c1d8d6ba3746,1,0,eab50f82-4612-47fd-a5c2-9678016a1937,eab50f82-4612-47fd-a5c2-9678016a1937,1,0,2609ba3c-e4de-45b3-86e0-93db39a21eee,2609ba3c-e4de-45b3-86e0-93db39a21eee,1,0,00dcfeab-7ba1-4a50-996e-4fd693dd0514,00dcfeab-7ba1-4a50-996e-4fd693dd0514,1,0,d21971c9-9aa6-448a-ab37-49ad0b0547ec,d21971c9-9aa6-448a-ab37-49ad0b0547ec,1,0,627438b8-c738-4e02-a0e7-cfd7fbf8eca1,627438b8-c738-4e02-a0e7-cfd7fbf8eca1,1,0,30a87c95-4d55-4b68-877f-1055e1c1afa7,30a87c95-4d55-4b68-877f-1055e1c1afa7,1,0,00418e6c-77b2-4753-b9ff-3a8013436f8a,00418e6c-77b2-4753-b9ff-3a8013436f8a,1,0,8deaa3d0-b36b-4f20-a9a8-11d829f5ef9d,8deaa3d0-b36b-4f20-a9a8-11d829f5ef9d,1,0,4d660fec-4a76-470e-bba9-3d031941b289,4d660fec-4a76-470e-bba9-3d031941b289,1,0,26986f8d-d56d-4641-9184-2632d0881cca,26986f8d-d56d-4641-9184-2632d0881cca,1,0,144676de-f369-49f1-bb21-d60e073936df,144676de-f369-49f1-bb21-d60e073936df,1,0,d5537afb-df5f-4edf-a3d3-ff6b2a908ad9,d5537afb-df5f-4edf-a3d3-ff6b2a908ad9,1,0,d9f1f56b-75c8-43e9-8043-89076c225f78,d9f1f56b-75c8-43e9-8043-89076c225f78,1,0,a3c9a7eb-2104-4402-954c-3e12de4a7de3,a3c9a7eb-2104-4402-954c-3e12de4a7de3,1,0,38bf6d3b-5435-4bac-b9fc-23b80afeb760,38bf6d3b-5435-4bac-b9fc-23b80afeb760,1,0,a2a51b70-9570-4f53-9d30-e9a9b099a475,a2a51b70-9570-4f53-9d30-e9a9b099a475,1,0,556a0e57-5b3b-4303-a013-0bd296c506b8,556a0e57-5b3b-4303-a013-0bd296c506b8,1,0,21c1b2d3-cd96-4cdd-9ccc-ada27b127969,21c1b2d3-cd96-4cdd-9ccc-ada27b127969,1,0,fabbac92-cb98-4087-b3fa-387482ed0d86,fabbac92-cb98-4087-b3fa-387482ed0d86,1,0,304525f8-c697-4835-b0a6-4ed3cbcaf3c6,304525f8-c697-4835-b0a6-4ed3cbcaf3c6,1,0,fdcbe67c-55fb-444d-bed8-cee956ca3530,fdcbe67c-55fb-444d-bed8-cee956ca3530,1,0,e09534e3-ac6e-42a6-86e8-564acb20089a,e09534e3-ac6e-42a6-86e8-564acb20089a,1,0,6ff5b3cb-efff-430d-bf0a-957405f116ca,6ff5b3cb-efff-430d-bf0a-957405f116ca,1,0,d06e845a-9f54-40dd-b0df-6988def62017,d06e845a-9f54-40dd-b0df-6988def62017,1,0,7badb97b-c359-42af-9066-6bbfc0650cf9,7badb97b-c359-42af-9066-6bbfc0650cf9,1,0,63223883-06cf-4d01-be95-5e410cc58a22,63223883-06cf-4d01-be95-5e410cc58a22,1,0,1929139f-dabb-4c40-9423-158093360889,1929139f-dabb-4c40-9423-158093360889,1,0,dad92df4-685b-4260-b35f-4d031262dfea,dad92df4-685b-4260-b35f-4d031262dfea,1,0,4399c19a-ddba-42e9-88b4-c5c28abad237,4399c19a-ddba-42e9-88b4-c5c28abad237,1,0,982315ba-df74-4a31-8929-71d1e5e6f147,982315ba-df74-4a31-8929-71d1e5e6f147,1,0,8d1c01a9-9806-4e5d-bafb-ce6af11d5650,8d1c01a9-9806-4e5d-bafb-ce6af11d5650,1,0,fd3a6a7e-203d-447a-aebd-7626579387fb,fd3a6a7e-203d-447a-aebd-7626579387fb,1,0,8014684f-e1f1-4163-9083-459a009c0aac,8014684f-e1f1-4163-9083-459a009c0aac,1,0,ad6384d5-278b-44d3-993a-d5a39e7c98ca,ad6384d5-278b-44d3-993a-d5a39e7c98ca,1,0,ff976027-75e8-475c-abfa-876d36733c13,ff976027-75e8-475c-abfa-876d36733c13,1,0,7452d9c0-cb03-4d1b-afd4-8855950f2ad8,7452d9c0-cb03-4d1b-afd4-8855950f2ad8,1,0,32d4a42d-6e4d-49db-b5bc-1ea6dbe9fe4d,32d4a42d-6e4d-49db-b5bc-1ea6dbe9fe4d,1,0,40c8b547-35d0-4dbd-8fa1-ba108c3022b1,40c8b547-35d0-4dbd-8fa1-ba108c3022b1,1,0,3f823f5b-e5a8-40af-8fc3-e4c6ffb18fa3,3f823f5b-e5a8-40af-8fc3-e4c6ffb18fa3,1,0,b3554203-b930-496d-a712-353bc13a0946,b3554203-b930-496d-a712-353bc13a0946,1,0,59775ce0-f778-45f6-9453-bbd0a0ec1f27,59775ce0-f778-45f6-9453-bbd0a0ec1f27,1,0,e55d259f-cfaa-46f9-92c4-687e1ff3b89d,e55d259f-cfaa-46f9-92c4-687e1ff3b89d,1,0,cf13e2d9-72a0-47c0-bae2-f674024bbdb2,cf13e2d9-72a0-47c0-bae2-f674024bbdb2,1,0,f772abd3-8ea0-41e9-aaca-c5375778941a,f772abd3-8ea0-41e9-aaca-c5375778941a,1,0,a1e494f8-96a4-41bd-9234-b87e8d8742c5,a1e494f8-96a4-41bd-9234-b87e8d8742c5,1,0,5c6b9fb5-7d29-4161-a81b-7c618ca07a47,5c6b9fb5-7d29-4161-a81b-7c618ca07a47,1,0,ef6250de-a4ef-48d8-94d6-f4029e63d7d2,ef6250de-a4ef-48d8-94d6-f4029e63d7d2,1,0,b322b047-16eb-4500-826a-6dfebb7d997a,b322b047-16eb-4500-826a-6dfebb7d997a,1,0,bbbc2d1f-2f78-4b7e-b5fb-ca7c74051221,bbbc2d1f-2f78-4b7e-b5fb-ca7c74051221,1,0,83ead93b-4ff6-487d-934e-25088944fccc,83ead93b-4ff6-487d-934e-25088944fccc,1,0,764c76cc-0473-4633-868d-02f96aa43c10,764c76cc-0473-4633-868d-02f96aa43c10,1,0,c8da922f-e31e-49b0-b90e-1c060424bde5,c8da922f-e31e-49b0-b90e-1c060424bde5,1,0,41462827-fd8b-4ee6-a739-a884d704bba5,41462827-fd8b-4ee6-a739-a884d704bba5,1,0,7b01236c-5ab7-43fa-aa0e-1ae55c8a4efe,7b01236c-5ab7-43fa-aa0e-1ae55c8a4efe,1,0,eca025d2-4fe9-4542-b9f5-46ae2631256e,eca025d2-4fe9-4542-b9f5-46ae2631256e,1,0,35bc58df-8aff-48dd-83a9-b60b0461f94d,35bc58df-8aff-48dd-83a9-b60b0461f94d,1,0,0f46ae6b-9fe8-471a-a59f-af5e66cb9e00,0f46ae6b-9fe8-471a-a59f-af5e66cb9e00,1,0,feb1a5c1-c805-4079-8f05-8a44f51b0b02,feb1a5c1-c805-4079-8f05-8a44f51b0b02,1,0,ff7916bd-cbd1-4d9e-8aab-bad9fffaa0d4,ff7916bd-cbd1-4d9e-8aab-bad9fffaa0d4,1,0,1f55f330-7c0a-4a29-905f-51d664515bc5,1f55f330-7c0a-4a29-905f-51d664515bc5,1,0,6106e958-354c-4211-992c-3c3819e8828e,6106e958-354c-4211-992c-3c3819e8828e,1,0,9d6d77a9-1f55-4162-93a5-14bb3f3febaf,9d6d77a9-1f55-4162-93a5-14bb3f3febaf,1,0,61789ea5-aad2-4b3b-a1c7-3ff7409379eb,61789ea5-aad2-4b3b-a1c7-3ff7409379eb,1,0,2cd04d4c-2619-40c9-adf4-7bb281f045b6,2cd04d4c-2619-40c9-adf4-7bb281f045b6,1,0,1d6b8425-360c-4ab1-9bab-cc9a3b590bb2,1d6b8425-360c-4ab1-9bab-cc9a3b590bb2,1,0,9f67d228-79aa-44e6-8dc7-fae4fbdfef2a,9f67d228-79aa-44e6-8dc7-fae4fbdfef2a,1,0,231d3950-f363-4e63-83cd-8ddb81507c27,231d3950-f363-4e63-83cd-8ddb81507c27,1,0,87429f11-bf95-4013-bf13-da904570f88d,87429f11-bf95-4013-bf13-da904570f88d,1,0,6173cab2-e0f5-40c1-8e74-4f41fc8bd68f,6173cab2-e0f5-40c1-8e74-4f41fc8bd68f,1,0,feb41347-62db-41cf-ace0-d8b9de361af3,feb41347-62db-41cf-ace0-d8b9de361af3,1,0,5a088468-4065-4e0c-9b84-1162de8d3fdd,5a088468-4065-4e0c-9b84-1162de8d3fdd,1,0,dbdf3ae7-a0af-44b9-8e3d-c402d98cda03,dbdf3ae7-a0af-44b9-8e3d-c402d98cda03,1,0,cdce186a-229d-492d-8811-147fc4d7cdf5,cdce186a-229d-492d-8811-147fc4d7cdf5,1,0,5f91b00f-d8fc-4d63-8486-66339357ab22,5f91b00f-d8fc-4d63-8486-66339357ab22,1,0,16d44ab1-4bce-4df8-a215-6ed5173c75a8,16d44ab1-4bce-4df8-a215-6ed5173c75a8,1,0,543f976e-fea3-4a51-9962-b8e0fcd3f707,543f976e-fea3-4a51-9962-b8e0fcd3f707,1,0,375977c1-5745-4e78-a4df-cef966c0ccf8,375977c1-5745-4e78-a4df-cef966c0ccf8,1,0,2582a714-a6d6-4d37-b9a7-5e89e18b0f27,2582a714-a6d6-4d37-b9a7-5e89e18b0f27,1,0,c3796d85-2a24-43c4-9673-64e56249a1d0,c3796d85-2a24-43c4-9673-64e56249a1d0,1,0,fc1066b5-20d4-4c73-85f8-9889e554d6e1,fc1066b5-20d4-4c73-85f8-9889e554d6e1,1,0,a9b6b5fd-1862-4207-87e8-5c25a8f86c57,a9b6b5fd-1862-4207-87e8-5c25a8f86c57,1,0,731211c2-ef90-4883-9525-83cd91b742ac,731211c2-ef90-4883-9525-83cd91b742ac,1,0,0adf02da-940a-4bfc-afa5-59605494a169,0adf02da-940a-4bfc-afa5-59605494a169,1,0,50a1e3bf-8624-4474-854e-21b89aaf97ed,50a1e3bf-8624-4474-854e-21b89aaf97ed,1,0,6c7b82ca-37b0-4f67-b7fa-ab1b77c0fb61,6c7b82ca-37b0-4f67-b7fa-ab1b77c0fb61,1,0,24f9d1a6-73d0-4cc7-b3ca-d36c5c7a9892,24f9d1a6-73d0-4cc7-b3ca-d36c5c7a9892,1,0,847b97a3-d0bc-45e2-b06c-932bb22d8eca,847b97a3-d0bc-45e2-b06c-932bb22d8eca,1,0,503b3eab-b7f1-4ede-8845-3290a834cec7,503b3eab-b7f1-4ede-8845-3290a834cec7,1,0,8361991a-0f30-4a03-9a4c-90556b744f53,8361991a-0f30-4a03-9a4c-90556b744f53,1,0,3116fa60-bc42-4dea-aa03-387896168690,3116fa60-bc42-4dea-aa03-387896168690,1,0,5a3cc2a8-f519-45ac-af9b-c57a4f1acdc0,5a3cc2a8-f519-45ac-af9b-c57a4f1acdc0,1,0,08427a9a-fb3a-4bc1-b2e2-72e4f89680cd,08427a9a-fb3a-4bc1-b2e2-72e4f89680cd,1,0,f9196766-4ae2-4a73-bed6-4a8838323e02,f9196766-4ae2-4a73-bed6-4a8838323e02,1,0,ca797560-8802-4bdc-b21f-7a7fd795beae,ca797560-8802-4bdc-b21f-7a7fd795beae,1,0,56242b05-d722-4d4a-82d9-517e0e169d0b,56242b05-d722-4d4a-82d9-517e0e169d0b,1,0,5504f5d1-35d8-4a47-a0e1-003fe00395c1,5504f5d1-35d8-4a47-a0e1-003fe00395c1,1,0,73c1a829-0191-486b-97a0-7f333c6f8011,73c1a829-0191-486b-97a0-7f333c6f8011,1,0,4eeda6df-fb48-4c88-853f-9c35e2b3a3cf,4eeda6df-fb48-4c88-853f-9c35e2b3a3cf,1,0,06afe397-1c7e-400e-bb24-f8e611d114e8,06afe397-1c7e-400e-bb24-f8e611d114e8,1,0,f0105e51-9510-426a-8aa0-af827d93ffd9,f0105e51-9510-426a-8aa0-af827d93ffd9,1,0,3df19dbf-efe7-4e31-99ad-fafb59ec1329,3df19dbf-efe7-4e31-99ad-fafb59ec1329,1,0,baf12d47-fbfe-4563-aa23-26d9f7e83169,baf12d47-fbfe-4563-aa23-26d9f7e83169,1,0,e2046f49-6fea-4bf4-92b0-92f3c8357bcf,e2046f49-6fea-4bf4-92b0-92f3c8357bcf,1,0,0ba11486-1972-4434-ab1a-5bb75cc05e9f,0ba11486-1972-4434-ab1a-5bb75cc05e9f,1,0,4ed9c555-7dd0-4577-bf62-152b4c5ec9f2,4ed9c555-7dd0-4577-bf62-152b4c5ec9f2,1,0,11fe3a42-98c4-49ba-b697-86ffb172f16f,11fe3a42-98c4-49ba-b697-86ffb172f16f,1,0,07b53818-7318-4400-8af5-457fac012755,07b53818-7318-4400-8af5-457fac012755,1,0,292b47e7-5cf3-462d-a466-dac6253a7f03,292b47e7-5cf3-462d-a466-dac6253a7f03,1,0,8ecc070f-f6fb-46b1-9636-b77aa80f8804,8ecc070f-f6fb-46b1-9636-b77aa80f8804,1,0,8405be9d-465b-4744-b04f-03933b52f02e,8405be9d-465b-4744-b04f-03933b52f02e,1,0,a8021ff9-f0ae-49ab-b8ac-5e3d8fe90d82,a8021ff9-f0ae-49ab-b8ac-5e3d8fe90d82,1,0,f09b09ce-9e3c-406a-8508-b6e7e6ec966e,f09b09ce-9e3c-406a-8508-b6e7e6ec966e,1,0,9bf55587-1ffe-42bc-b8e8-3f956956f689,9bf55587-1ffe-42bc-b8e8-3f956956f689,1,0,2f67931e-543f-457e-80fd-78ca754e2e9c,2f67931e-543f-457e-80fd-78ca754e2e9c,1,0,595e5752-36a7-4bba-8a40-26920acae01d,595e5752-36a7-4bba-8a40-26920acae01d,1,0,28801fba-c429-4afa-bdcd-b3ec3ec22fda,28801fba-c429-4afa-bdcd-b3ec3ec22fda,1,0,d1a873ae-d45b-4600-9419-e701dce3da02,d1a873ae-d45b-4600-9419-e701dce3da02,1,0,e3a31f0d-a98f-43c6-bc39-087095ae8c39,e3a31f0d-a98f-43c6-bc39-087095ae8c39,1,0,e39d8ff3-52db-4ba4-b4ea-42d5ee787076,e39d8ff3-52db-4ba4-b4ea-42d5ee787076,1,0,b1c1c2eb-f9cd-468a-8398-b0b7f611f832,b1c1c2eb-f9cd-468a-8398-b0b7f611f832,1,0,4bb0f7c3-62f3-4352-9bc8-e243dd18fe4a,4bb0f7c3-62f3-4352-9bc8-e243dd18fe4a,1,0,bc106ef9-3eeb-40d4-aa59-ae1855ba1744,bc106ef9-3eeb-40d4-aa59-ae1855ba1744,1,0,73d8b319-9bea-4638-a602-23c12f37c227,73d8b319-9bea-4638-a602-23c12f37c227,1,0,cef55e64-d4ad-42dc-aa5a-ea65a3af7cfa,cef55e64-d4ad-42dc-aa5a-ea65a3af7cfa,1,0,a43e9de0-2921-4c58-a5f8-7446258be967,a43e9de0-2921-4c58-a5f8-7446258be967,1,0,307656e3-df7f-46e7-946c-bbd439265c95,307656e3-df7f-46e7-946c-bbd439265c95,1,0,eb3dfdc7-58b8-4b1f-b079-368c262364c9,eb3dfdc7-58b8-4b1f-b079-368c262364c9,1,0,5030a318-f8f7-4ec7-80d6-6eee0772562f,5030a318-f8f7-4ec7-80d6-6eee0772562f,1,0,242e911d-e49c-4b8a-8543-cc2e079220fd,242e911d-e49c-4b8a-8543-cc2e079220fd,1,0,9ea39d31-3775-4fb8-a3f3-202e54354d49,9ea39d31-3775-4fb8-a3f3-202e54354d49,1,0,73044e20-148c-46e9-b5b5-973c91de0d61,73044e20-148c-46e9-b5b5-973c91de0d61,1,0,f8ab477c-8e78-48c0-9f99-27748b109706,f8ab477c-8e78-48c0-9f99-27748b109706,1,0,24cff6c8-6c20-4383-b97c-6afa52738960,24cff6c8-6c20-4383-b97c-6afa52738960,1,0,462e2694-750d-49ef-93ac-17a7779be68d,462e2694-750d-49ef-93ac-17a7779be68d,1,0,c24ff02e-5afc-45df-81cf-64ea2b261c2d,c24ff02e-5afc-45df-81cf-64ea2b261c2d,1,0,2d51aae9-650d-4719-a94d-2609b69a2d36,2d51aae9-650d-4719-a94d-2609b69a2d36,1,0,6025f5b5-6dc7-46b8-96e6-02823c5b4de7,6025f5b5-6dc7-46b8-96e6-02823c5b4de7,1,0,5d9d88ea-b2e4-425c-bb4d-a005e867d56c,5d9d88ea-b2e4-425c-bb4d-a005e867d56c,1,0,b76d342c-0f9d-4eb0-b49e-a9f472a4dd0d,b76d342c-0f9d-4eb0-b49e-a9f472a4dd0d,1,0,85639a53-b367-49ce-84f2-4e21d81c489b,85639a53-b367-49ce-84f2-4e21d81c489b,1,0,24b59586-178e-4efc-90ae-529553f3bb6c,24b59586-178e-4efc-90ae-529553f3bb6c,1,0,20e75dd5-222a-4100-aa43-3684991e3f21,20e75dd5-222a-4100-aa43-3684991e3f21,1,0,3c611832-4bc2-4229-a27d-d5dc82f3a498,3c611832-4bc2-4229-a27d-d5dc82f3a498,1,0,50e9eb52-02e3-44ff-9c9e-e76dbe38da63,50e9eb52-02e3-44ff-9c9e-e76dbe38da63,1,0,5dadc422-1fbd-4918-9db3-09ec72c3404e,5dadc422-1fbd-4918-9db3-09ec72c3404e,1,0,ffdaf8a0-7a8f-4756-bdfc-a0c6ae6c3869,ffdaf8a0-7a8f-4756-bdfc-a0c6ae6c3869,1,0,ab1bcabf-ffb0-4914-8ad0-b94b5aaeab1d,ab1bcabf-ffb0-4914-8ad0-b94b5aaeab1d,1,0,c5478d09-c8d3-4cc6-878e-27656ecc8409,c5478d09-c8d3-4cc6-878e-27656ecc8409,1,0,01b97d2f-40b9-4f12-8bc5-ab75fd160b7c,01b97d2f-40b9-4f12-8bc5-ab75fd160b7c,1,0,75974146-5b1a-412c-b7d5-1575704bbdab,75974146-5b1a-412c-b7d5-1575704bbdab,1,0,949f87cb-258c-4b6b-95ee-8a7491a4b64e,949f87cb-258c-4b6b-95ee-8a7491a4b64e,1,0,8a348012-99dc-4dc9-8bec-0df3caf4cdc5,8a348012-99dc-4dc9-8bec-0df3caf4cdc5,1,0,5c089988-5381-41ed-9f05-f85db46b8d94,5c089988-5381-41ed-9f05-f85db46b8d94,1,0,85a36352-1569-4ce4-aeba-477db524c36d,85a36352-1569-4ce4-aeba-477db524c36d,1,0,ebfb6f80-88f5-4046-8ae7-e11a7b0c1beb,ebfb6f80-88f5-4046-8ae7-e11a7b0c1beb,1,0,d99991b8-3a81-4e18-b0ad-05fc3e3a199b,d99991b8-3a81-4e18-b0ad-05fc3e3a199b,1,0,dd383422-dddb-4a81-9326-015fd345b5c1,dd383422-dddb-4a81-9326-015fd345b5c1,1,0,9a4a0b04-3dfb-4551-90f0-16231f64b14f,9a4a0b04-3dfb-4551-90f0-16231f64b14f,1,0,b2e656c1-f4ff-4d95-b066-4ee11ce4dea8,b2e656c1-f4ff-4d95-b066-4ee11ce4dea8,1,0,2d86d1fc-5367-47b8-804e-7f9c5fc8f3b1,2d86d1fc-5367-47b8-804e-7f9c5fc8f3b1,1,0,98edcd6b-1c50-45c6-9a4c-390827a4ba52,98edcd6b-1c50-45c6-9a4c-390827a4ba52,1,0,b99c2068-15ea-43a1-9e9f-db29647e2387,b99c2068-15ea-43a1-9e9f-db29647e2387,1,0,346cb8b7-a20e-4a06-823e-26dfb2e3e741,346cb8b7-a20e-4a06-823e-26dfb2e3e741,1,0,782cb93d-36e6-4923-b2b6-75caa3459cd6,782cb93d-36e6-4923-b2b6-75caa3459cd6,1,0,0eea37cc-47f8-4819-85da-d4991f4e58ed,0eea37cc-47f8-4819-85da-d4991f4e58ed,1,0,0f314b6b-5ed1-46ed-bdfd-cf53330c2783,0f314b6b-5ed1-46ed-bdfd-cf53330c2783,1,0,b51eaf45-baa1-4d1c-bcb7-a89bb8bcc26a,b51eaf45-baa1-4d1c-bcb7-a89bb8bcc26a,1,0,5ea29362-0ab7-4ca3-865e-bf93db5ca24b,5ea29362-0ab7-4ca3-865e-bf93db5ca24b,1,0,64ff6058-c6f3-4682-b9a1-11ec438fa447,64ff6058-c6f3-4682-b9a1-11ec438fa447,1,0,ced01234-9417-49ce-adf0-8cdd15e6dd7d,ced01234-9417-49ce-adf0-8cdd15e6dd7d,1,0,c1272bfc-196a-4f99-935f-e2516bc138d2,c1272bfc-196a-4f99-935f-e2516bc138d2,1,0,313e0688-745a-4385-b040-7ef8317a0eb7,313e0688-745a-4385-b040-7ef8317a0eb7,1,0,7fe61c5d-30bc-440d-9e40-12ff3b296616,7fe61c5d-30bc-440d-9e40-12ff3b296616,1,0,37c37f15-f84b-456b-aab6-729562dc0908,37c37f15-f84b-456b-aab6-729562dc0908,1,0,45a2569e-820c-4d7d-ba74-4a781d26bb2b,45a2569e-820c-4d7d-ba74-4a781d26bb2b,1,0,996c7873-1cc9-44f6-915b-5c6ed7ef2370,996c7873-1cc9-44f6-915b-5c6ed7ef2370,1,0,8dc08932-0988-4e82-8a5f-385c0694f9ff,8dc08932-0988-4e82-8a5f-385c0694f9ff,1,0,13dee5d8-f165-48de-9ccb-3ef0239f4b27,13dee5d8-f165-48de-9ccb-3ef0239f4b27,1,0,2767473e-79fb-4c7c-a7d1-a83a8f2df71d,2767473e-79fb-4c7c-a7d1-a83a8f2df71d,1,0,9395eb9d-6aff-4af5-a6f1-5c39014ba67b,9395eb9d-6aff-4af5-a6f1-5c39014ba67b,1,0,8a13c899-1659-48cf-9aa2-07ca99547b7b,8a13c899-1659-48cf-9aa2-07ca99547b7b,1,0,eb3f959c-94a4-4e77-b9f9-e81954254079,eb3f959c-94a4-4e77-b9f9-e81954254079,1,0,f5ef3f75-7d12-4284-844f-54d19d1f7e2f,f5ef3f75-7d12-4284-844f-54d19d1f7e2f,1,0,7974e41d-5af3-4636-b405-c9405d89fb53,7974e41d-5af3-4636-b405-c9405d89fb53,1,0,21fad9b6-44df-417c-ba18-de4b8af98a34,21fad9b6-44df-417c-ba18-de4b8af98a34,1,0,11c086b0-c646-4701-983d-c38758286354,11c086b0-c646-4701-983d-c38758286354,1,0,92876c9e-52ff-480d-9878-5766f4f9d12c,92876c9e-52ff-480d-9878-5766f4f9d12c,1,0,b729d739-5249-4765-85ee-fd792bb22911,b729d739-5249-4765-85ee-fd792bb22911,1,0,d65c4485-7bac-4206-9a6c-7156f4bb876d,d65c4485-7bac-4206-9a6c-7156f4bb876d,1,0,d431d1e2-13dc-495c-9de1-b5ec872eceed,d431d1e2-13dc-495c-9de1-b5ec872eceed,1,0,e8bec681-d269-41ba-9184-556cbcc27d74,e8bec681-d269-41ba-9184-556cbcc27d74,1,0,b8aaef91-f72c-4127-a494-771c13694ca4,b8aaef91-f72c-4127-a494-771c13694ca4,1,0,433a114f-3198-4ef6-bbf8-ce9b54fdb736,433a114f-3198-4ef6-bbf8-ce9b54fdb736,1,0,02ac711c-e38e-422e-ac28-ba1b298df9cc,02ac711c-e38e-422e-ac28-ba1b298df9cc,1,0,3e090261-4aa2-4ece-9f77-62df83c890b3,3e090261-4aa2-4ece-9f77-62df83c890b3,1,0,bbfd9834-12b4-49ca-bdae-5c94efa80482,bbfd9834-12b4-49ca-bdae-5c94efa80482,1,0,9292034c-24e8-49a7-9b77-7974e117847d,9292034c-24e8-49a7-9b77-7974e117847d,1,0,3327b7d4-62fc-44cc-83b4-c449bfa4e706,3327b7d4-62fc-44cc-83b4-c449bfa4e706,1,0,43ecee25-68eb-48cf-bbaa-aee71052438f,43ecee25-68eb-48cf-bbaa-aee71052438f,1,0,93799f8b-0188-4546-8815-35e733bcc2b1,93799f8b-0188-4546-8815-35e733bcc2b1,1,0,9dc3a563-11bb-40a7-8431-c1d4367ccbaf,9dc3a563-11bb-40a7-8431-c1d4367ccbaf,1,0,c9ea4e72-5f01-42ae-88e3-52e49757b26f,c9ea4e72-5f01-42ae-88e3-52e49757b26f,1,0,38d92d75-c8b8-42d6-9e0a-6dc0811a8652,38d92d75-c8b8-42d6-9e0a-6dc0811a8652,1,0,0f564dbe-6a6e-48df-9718-5cea5d608ee6,0f564dbe-6a6e-48df-9718-5cea5d608ee6,1,0,a623fef1-96eb-41ba-93fe-09162698f419,a623fef1-96eb-41ba-93fe-09162698f419,1,0,45a8d7cb-c927-4a4e-a653-13fd9b1eda10,45a8d7cb-c927-4a4e-a653-13fd9b1eda10,1,0,d8e1f92f-9efa-422d-bb21-43bd1a363cec,d8e1f92f-9efa-422d-bb21-43bd1a363cec,1,0,c1416383-bd7e-4dc4-ad88-d98ac87157fd,c1416383-bd7e-4dc4-ad88-d98ac87157fd,1,0,5e8bddc7-7836-4ec8-b6e1-0c15d228f47e,5e8bddc7-7836-4ec8-b6e1-0c15d228f47e,1,0,d5d9976a-4cc0-43f7-afd6-d43cebb07940,d5d9976a-4cc0-43f7-afd6-d43cebb07940,1,0,899f1526-d6bc-42ef-852e-7297a06db9e3,899f1526-d6bc-42ef-852e-7297a06db9e3,1,0,1b4feda1-e555-4b85-b236-b21153a7246f,1b4feda1-e555-4b85-b236-b21153a7246f,1,0,61d3cef4-2c42-417d-a762-a2d2f5a28924,61d3cef4-2c42-417d-a762-a2d2f5a28924,1,0,c694c132-1ddb-4273-818a-d3cca88c082a,c694c132-1ddb-4273-818a-d3cca88c082a,1,0,cd4da06e-c06b-4233-befc-1bc4c4db58e3,cd4da06e-c06b-4233-befc-1bc4c4db58e3,1,0,918a01fe-f753-4a4a-9200-55bbd6edaf5f,918a01fe-f753-4a4a-9200-55bbd6edaf5f,1,0,51a8a209-2a9d-419f-9fda-f7aeac68bdbe,51a8a209-2a9d-419f-9fda-f7aeac68bdbe,1,0,ef43961f-8cac-4f3f-bcee-c6bc51c4148c,ef43961f-8cac-4f3f-bcee-c6bc51c4148c,1,0,7ab6acda-6732-4582-8092-d43f9a98a28d,7ab6acda-6732-4582-8092-d43f9a98a28d,1,0,5ab1d405-bfc3-4440-8cdd-3a63013b064d,5ab1d405-bfc3-4440-8cdd-3a63013b064d,1,0,d6704410-6297-481e-a6cb-6d6aa566b4f8,d6704410-6297-481e-a6cb-6d6aa566b4f8,1,0,398937ca-b035-43bd-b0da-8c5153a87cb8,398937ca-b035-43bd-b0da-8c5153a87cb8,1,0,5b441321-bd1e-4c56-8f09-365b05985eed,5b441321-bd1e-4c56-8f09-365b05985eed,1,0,559f1e66-e8da-437a-aa27-d0e1be6619b6,559f1e66-e8da-437a-aa27-d0e1be6619b6,1,0,704d69cd-d921-4957-a004-43bd7eb4d979,704d69cd-d921-4957-a004-43bd7eb4d979,1,0,f1594682-16ac-408c-8307-a7a8db79b09f,f1594682-16ac-408c-8307-a7a8db79b09f,1,0,863aebd2-ce32-4f1f-bb3d-d6062ab187fd,863aebd2-ce32-4f1f-bb3d-d6062ab187fd,1,0,4cb814d8-cb1b-4366-b500-e820ad526b0c,4cb814d8-cb1b-4366-b500-e820ad526b0c,1,0,7da5f3b4-6330-4112-9d3a-7bb42996aa4a,7da5f3b4-6330-4112-9d3a-7bb42996aa4a,1,0,6c43df9f-ca36-415b-afec-302807820d73,6c43df9f-ca36-415b-afec-302807820d73,1,0,c7fb7551-806a-40b2-8879-14cd897b60d8,c7fb7551-806a-40b2-8879-14cd897b60d8,1,0,68337023-d573-4d04-95b6-44f73258c2a4,68337023-d573-4d04-95b6-44f73258c2a4,1,0,7cf39337-b722-486f-8e37-a62239d0ccd2,7cf39337-b722-486f-8e37-a62239d0ccd2,1,0,2571cfaf-d876-4385-a60a-1488aacf7080,2571cfaf-d876-4385-a60a-1488aacf7080,1,0,4ea1dd0a-6eab-48e4-a6a7-314d0e211d6c,4ea1dd0a-6eab-48e4-a6a7-314d0e211d6c,1,0,44398566-3189-4584-8f8a-9deb1d07ce41,44398566-3189-4584-8f8a-9deb1d07ce41,1,0,6f4e3082-9c8c-4289-8cc2-704c8d2763ce,6f4e3082-9c8c-4289-8cc2-704c8d2763ce,1,0,accfa63a-479d-4996-95bc-cdf5acdf203c,accfa63a-479d-4996-95bc-cdf5acdf203c,1,0,351998e0-8939-4dd4-a833-f4756bcc53b8,351998e0-8939-4dd4-a833-f4756bcc53b8,1,0,cd69bad8-524e-4be4-88cc-7732a88b38b8,cd69bad8-524e-4be4-88cc-7732a88b38b8,1,0,0a32248c-6994-4988-90d1-30882bc9da6b,0a32248c-6994-4988-90d1-30882bc9da6b,1,0,b57b53cb-6972-4bda-ae46-96571be1ebec,b57b53cb-6972-4bda-ae46-96571be1ebec,1,0,1a1a9636-fb72-4e4a-af96-5858442b1e61,1a1a9636-fb72-4e4a-af96-5858442b1e61,1,0,bca9cf34-9e11-4014-976a-28c4330b136e,bca9cf34-9e11-4014-976a-28c4330b136e,1,0,65fffe1a-6f36-4f50-975f-4471ad29d3ec,65fffe1a-6f36-4f50-975f-4471ad29d3ec,1,0,8fe5dad5-686a-4631-ae05-2917c33f7d83,8fe5dad5-686a-4631-ae05-2917c33f7d83,1,0,edef86c6-73bf-4e47-b62d-b2b548a732cd,edef86c6-73bf-4e47-b62d-b2b548a732cd,1,0,a1715044-d76f-4238-ba3e-989d04078d83,a1715044-d76f-4238-ba3e-989d04078d83,1,0,e72e59c0-391d-497e-9407-063e0edf573e,e72e59c0-391d-497e-9407-063e0edf573e,1,0,ae8a1e69-ee1c-4efa-8d63-0279b18617f6,ae8a1e69-ee1c-4efa-8d63-0279b18617f6,1,0,a7ec91a5-2ed4-4ecd-b794-fcd3bb5ea4a2,a7ec91a5-2ed4-4ecd-b794-fcd3bb5ea4a2,1,0,299c47a7-0b30-4f62-8f5c-f087ad6411fb,299c47a7-0b30-4f62-8f5c-f087ad6411fb,1,0,4d4724df-24fb-4c59-9d04-3f984906214a,4d4724df-24fb-4c59-9d04-3f984906214a,1,0,95b10bc8-39ef-43f5-b74e-f36cfa9bc806,95b10bc8-39ef-43f5-b74e-f36cfa9bc806,1,0,cb9b73ee-8531-48d9-9266-9aaa4336a612,cb9b73ee-8531-48d9-9266-9aaa4336a612,1,0,b7b80237-d642-4c21-a9ee-64fc4ed20d2f,b7b80237-d642-4c21-a9ee-64fc4ed20d2f,1,0,aeee2eea-1bb9-4e8a-ac5c-c940eaa86511,aeee2eea-1bb9-4e8a-ac5c-c940eaa86511,1,0,d042687f-0725-4611-a868-f5b4f6a3a3a8,d042687f-0725-4611-a868-f5b4f6a3a3a8,1,0,bb143340-7fff-49ef-b121-355c96613f78,bb143340-7fff-49ef-b121-355c96613f78,1,0,cd5fbbcb-19b8-4c0b-93c7-ebdf642826db,cd5fbbcb-19b8-4c0b-93c7-ebdf642826db,1,0,f2f69644-80dc-4b5e-a208-ed1de131e25e,f2f69644-80dc-4b5e-a208-ed1de131e25e,1,0,73060f72-6d08-47da-aac8-d4d2ed8f871c,73060f72-6d08-47da-aac8-d4d2ed8f871c,1,0,f3a6219e-bff5-4d36-9baa-bb214cebc2ed,f3a6219e-bff5-4d36-9baa-bb214cebc2ed,1,0,82e8ac21-c2aa-47de-89ae-ea6cc10cc862,82e8ac21-c2aa-47de-89ae-ea6cc10cc862,1,0,13b27ec3-2be9-4959-92e5-94ba7bb64f03,13b27ec3-2be9-4959-92e5-94ba7bb64f03,1,0,9f832f4b-ae60-4d81-9ffd-6e00f7e02560,9f832f4b-ae60-4d81-9ffd-6e00f7e02560,1,0,6f6ef6ac-5bb7-41e4-b6d5-0f068e8cb176,6f6ef6ac-5bb7-41e4-b6d5-0f068e8cb176,1,0,821225ea-1bad-49a6-a422-80d8a09baf13,821225ea-1bad-49a6-a422-80d8a09baf13,1,0,d0106f3a-8490-4277-a278-75c318ec252c,d0106f3a-8490-4277-a278-75c318ec252c,1,0,5035aa55-d557-419a-89e2-10ed0f8d109b,5035aa55-d557-419a-89e2-10ed0f8d109b,1,0,5f93d2af-64ff-41cc-8403-4a0e83160fea,5f93d2af-64ff-41cc-8403-4a0e83160fea,1,0,c12c90e4-7c40-489b-b14b-6b9442016e0f,c12c90e4-7c40-489b-b14b-6b9442016e0f,1,0,6371e288-3502-4d66-9006-b5a36107c0b7,6371e288-3502-4d66-9006-b5a36107c0b7,1,0,245814f7-028c-4c13-98eb-15412e851f81,245814f7-028c-4c13-98eb-15412e851f81,1,0,0132e564-2cd3-4930-8962-1068532f4be4,0132e564-2cd3-4930-8962-1068532f4be4,1,0,57d0f9b0-18d0-48ba-9f3c-d106f66ac602,57d0f9b0-18d0-48ba-9f3c-d106f66ac602,1,0,3a7cfd4c-c943-43c2-a8d5-6d8ab3a10fc9,3a7cfd4c-c943-43c2-a8d5-6d8ab3a10fc9,1,0,36b8b08f-0da3-4dbd-9aa8-73220ca9101d,36b8b08f-0da3-4dbd-9aa8-73220ca9101d,1,0,7021fca5-d612-43e1-927b-7f822153cf75,7021fca5-d612-43e1-927b-7f822153cf75,1,0,9fd16d51-91bb-4973-a7c4-cf4db87da8bf,9fd16d51-91bb-4973-a7c4-cf4db87da8bf,1,0,ee0a8d23-660a-492b-a813-b57394acee05,ee0a8d23-660a-492b-a813-b57394acee05,1,0,d1eda8f4-ffdd-445a-882c-6124d9f7fcf2,d1eda8f4-ffdd-445a-882c-6124d9f7fcf2,1,0,ade21e2e-349f-414b-8f35-6ae3b6a4064d,ade21e2e-349f-414b-8f35-6ae3b6a4064d,1,0,cce823c6-3bd5-4e46-91f6-8715cb72b1d5,cce823c6-3bd5-4e46-91f6-8715cb72b1d5,1,0,f3a8dd22-4469-4a3b-a7dd-78a5624b7bf0,f3a8dd22-4469-4a3b-a7dd-78a5624b7bf0,1,0,83f51efe-e2af-459a-b59f-2c036124ac23,83f51efe-e2af-459a-b59f-2c036124ac23,1,0,6ed466d7-e016-4d9c-9c0e-8deed48cbd70,6ed466d7-e016-4d9c-9c0e-8deed48cbd70,1,0,b03829e9-ba22-4584-85f0-c36d63f48242,b03829e9-ba22-4584-85f0-c36d63f48242,1,0,084a7c95-a59b-4861-b8b3-b5710a57ac60,084a7c95-a59b-4861-b8b3-b5710a57ac60,1,0,efcea6da-6746-4e00-913a-14cab38b5d84,efcea6da-6746-4e00-913a-14cab38b5d84,1,0,aff367fb-7fca-44d0-adf9-3731f14834f6,aff367fb-7fca-44d0-adf9-3731f14834f6,1,0,a2782760-dd4c-44d2-a785-814d6f610455,a2782760-dd4c-44d2-a785-814d6f610455,1,0,245162d8-6ae1-47e5-a0c9-0d5f2e5d8ea8,245162d8-6ae1-47e5-a0c9-0d5f2e5d8ea8,1,0,6581ac1f-11ef-42b8-9f3b-590bb7546e63,6581ac1f-11ef-42b8-9f3b-590bb7546e63,1,0,ce952e88-35b7-4506-81ac-d7081e50a650,ce952e88-35b7-4506-81ac-d7081e50a650,1,0,5d7a53fa-1a89-4e6e-868c-4077bd84c0ce,5d7a53fa-1a89-4e6e-868c-4077bd84c0ce,1,0,3bf1281f-7570-4633-86b9-3e953a7e6647,3bf1281f-7570-4633-86b9-3e953a7e6647,1,0,715dc289-5b14-4ee0-8716-9c15958b9069,715dc289-5b14-4ee0-8716-9c15958b9069,1,0,92707138-5004-4378-8477-f909166d319d,92707138-5004-4378-8477-f909166d319d,1,0,43661775-43bb-4d9e-bfbb-c46e7d194ca3,43661775-43bb-4d9e-bfbb-c46e7d194ca3,1,0,532637ef-be0d-4f42-9747-a88e17eb3def,532637ef-be0d-4f42-9747-a88e17eb3def,1,0,61127152-3e24-40b4-8a23-5eb6cae568ff,61127152-3e24-40b4-8a23-5eb6cae568ff,1,0,ffd987e3-e8af-4d46-881e-1e312e74dbac,ffd987e3-e8af-4d46-881e-1e312e74dbac,1,0,ad1142ed-183d-47a3-800c-997a3770e11e,ad1142ed-183d-47a3-800c-997a3770e11e,1,0,ebef37c6-4808-4683-93be-036ce19cafd5,ebef37c6-4808-4683-93be-036ce19cafd5,1,0,66364cd4-aaa5-421d-96d6-3c283c14650d,66364cd4-aaa5-421d-96d6-3c283c14650d,1,0,fdbbbf8b-dacf-436e-8d8b-1e2b8e854b17,fdbbbf8b-dacf-436e-8d8b-1e2b8e854b17,1,0,3c54d440-e908-43d6-a5cc-bb64620c82d7,3c54d440-e908-43d6-a5cc-bb64620c82d7,1,0,23a240a2-52ee-46ab-89d9-50dcee2cc8d2,23a240a2-52ee-46ab-89d9-50dcee2cc8d2,1,0,bf1dd911-8ee1-407b-acae-10c85b74baf3,bf1dd911-8ee1-407b-acae-10c85b74baf3,1,0,e924058f-25c3-4744-a565-836b824991b7,e924058f-25c3-4744-a565-836b824991b7,1,0,bc6a47a1-a3f3-4d7e-9dad-099bd3dba751,bc6a47a1-a3f3-4d7e-9dad-099bd3dba751,1,0,518dcd70-4ccf-4866-a94f-7ceec7dd2801,518dcd70-4ccf-4866-a94f-7ceec7dd2801,1,0,f9950ab5-1077-4033-bbbf-53899a1bcf33,f9950ab5-1077-4033-bbbf-53899a1bcf33,1,0,8f16763b-86f0-4ad0-b786-cce7dcb3460e,8f16763b-86f0-4ad0-b786-cce7dcb3460e,1,0,0481bc65-6a32-46b9-ae87-993ba52a29a5,0481bc65-6a32-46b9-ae87-993ba52a29a5,1,0,36ebebbb-dff1-4dbd-870b-58bd4a71fa1f,36ebebbb-dff1-4dbd-870b-58bd4a71fa1f,1,0,dbc5f419-63b0-4cbe-90ff-c0101105e46c,dbc5f419-63b0-4cbe-90ff-c0101105e46c,1,0,c708f6e9-b7a0-4046-90f3-83527da7b872,c708f6e9-b7a0-4046-90f3-83527da7b872,1,0,0006b44a-3a0c-4be4-8dd0-bd0db9ddcc4d,0006b44a-3a0c-4be4-8dd0-bd0db9ddcc4d,1,0,14256e0a-a947-42a3-8e36-47bfbb052a0c,14256e0a-a947-42a3-8e36-47bfbb052a0c,1,0,1b1aa77a-d14b-4751-a7da-0b5bac4db461,1b1aa77a-d14b-4751-a7da-0b5bac4db461,1,0,c0dcdb22-6719-4597-a781-bca1370909e5,c0dcdb22-6719-4597-a781-bca1370909e5,1,0,7ebf99c3-33d2-4e4c-ac45-ca4ed0c3c100,7ebf99c3-33d2-4e4c-ac45-ca4ed0c3c100,1,0,7a34f723-cd14-4949-a40f-7ce579bf0449,7a34f723-cd14-4949-a40f-7ce579bf0449,1,0,5cdc9ac7-bba9-4ed1-845a-607976fc4679,5cdc9ac7-bba9-4ed1-845a-607976fc4679,1,0,295f3692-0721-4c41-a69b-171ef20a5018,295f3692-0721-4c41-a69b-171ef20a5018,1,0,86c22871-6d1c-44e0-8ade-ce4bdeb23321,86c22871-6d1c-44e0-8ade-ce4bdeb23321,1,0,da51de81-4d4f-46b5-a308-7b50db6c45a7,da51de81-4d4f-46b5-a308-7b50db6c45a7,1,0,8d31ce6a-4d44-46c6-a11c-47fb33e88691,8d31ce6a-4d44-46c6-a11c-47fb33e88691,1,0,c2a8c2d3-ff13-4a13-acd4-797118c4e767,c2a8c2d3-ff13-4a13-acd4-797118c4e767,1,0,bc6adf75-8666-49f3-9703-b0014dfee123,bc6adf75-8666-49f3-9703-b0014dfee123,1,0,30632f54-b779-4857-a5cc-c53fe8887ee5,30632f54-b779-4857-a5cc-c53fe8887ee5,1,0,087480bb-8c89-4b00-a29b-b7e29926478d,087480bb-8c89-4b00-a29b-b7e29926478d,1,0,685373b7-638a-439a-8cba-703d56e4e404,685373b7-638a-439a-8cba-703d56e4e404,1,0,eafaec9c-030b-4e5f-8fa8-e17dad2feec9,eafaec9c-030b-4e5f-8fa8-e17dad2feec9,1,0,df22b227-b2c3-4e65-9706-7582f99fe59c,df22b227-b2c3-4e65-9706-7582f99fe59c,1,0,35828c88-f1ec-42e7-b189-78748931ee4a,35828c88-f1ec-42e7-b189-78748931ee4a,1,0,8a41b8f1-93fc-44e6-bf45-0d1fa9d24f4a,8a41b8f1-93fc-44e6-bf45-0d1fa9d24f4a,1,0,1cfba08f-d5e5-4833-b494-a25d0477e9c3,1cfba08f-d5e5-4833-b494-a25d0477e9c3,1,0,ae22743b-6d21-4fbb-bb4c-fee53e2b87cb,ae22743b-6d21-4fbb-bb4c-fee53e2b87cb,1,0,921a0a14-8c06-4894-95ce-423000769364,921a0a14-8c06-4894-95ce-423000769364,1,0,3805ee39-a48a-499a-9ef8-9c2a5985404f,3805ee39-a48a-499a-9ef8-9c2a5985404f,1,0,07ccfe87-e1ab-4da7-92cb-a612e0972b0b,07ccfe87-e1ab-4da7-92cb-a612e0972b0b,1,0,08c2f92c-eb05-49e7-bfc9-4a89607b9864,08c2f92c-eb05-49e7-bfc9-4a89607b9864,1,0,6d751379-89a7-49b5-93e5-578329c63d9c,6d751379-89a7-49b5-93e5-578329c63d9c,1,0,c3f156ef-947e-4ebb-883f-4f099a116063,c3f156ef-947e-4ebb-883f-4f099a116063,1,0,5e3ab0a3-c0a6-4f41-85d3-2eede4abb555,5e3ab0a3-c0a6-4f41-85d3-2eede4abb555,1,0,a065ffc3-f50b-4a78-9b84-bfc4e5515a4b,a065ffc3-f50b-4a78-9b84-bfc4e5515a4b,1,0,4cba5a06-1484-4dd1-8e35-2d702c7d96d0,4cba5a06-1484-4dd1-8e35-2d702c7d96d0,1,0,e98e9e56-2995-430c-bd3b-f1070aec15a5,e98e9e56-2995-430c-bd3b-f1070aec15a5,1,0,d35c51b0-4cb7-4f9c-8aac-6a25a1b49adf,d35c51b0-4cb7-4f9c-8aac-6a25a1b49adf,1,0,8a7546f4-bfc9-4732-bf60-43a41e2c8753,8a7546f4-bfc9-4732-bf60-43a41e2c8753,1,0,16244165-d5a4-4012-8bb5-7f5fee1111af,16244165-d5a4-4012-8bb5-7f5fee1111af,1,0,290b72ad-004f-46ab-be5e-47557543b965,290b72ad-004f-46ab-be5e-47557543b965,1,0,e1b2ccf9-5a8f-4008-86f3-d2c7cf5581d1,e1b2ccf9-5a8f-4008-86f3-d2c7cf5581d1,1,0,fa0e0792-bffb-47ce-866f-9e8dbdab17a4,fa0e0792-bffb-47ce-866f-9e8dbdab17a4,1,0,263bcd20-9878-48d4-aac4-b371ec49d8d6,263bcd20-9878-48d4-aac4-b371ec49d8d6,1,0,da1d8660-2757-4cea-bae0-c2210b9406ae,da1d8660-2757-4cea-bae0-c2210b9406ae,1,0,d60329c6-8f48-481d-82e7-18da355cb09c,d60329c6-8f48-481d-82e7-18da355cb09c,1,0,c4b14162-b25b-4099-9ec3-7251848ef08a,c4b14162-b25b-4099-9ec3-7251848ef08a,1,0,8eb5ba97-eb38-4357-8bfc-e9618280800d,8eb5ba97-eb38-4357-8bfc-e9618280800d,1,0,b72f73d5-e274-472b-871b-16af72dab603,b72f73d5-e274-472b-871b-16af72dab603,1,0,b008d184-0b61-460d-9490-89ecc1cd58ba,b008d184-0b61-460d-9490-89ecc1cd58ba,1,0,c8340e2f-6958-4bcd-8e17-499c4adfe60b,c8340e2f-6958-4bcd-8e17-499c4adfe60b,1,0,c72831cd-d064-4fe8-9603-64e6d7b8ac4d,c72831cd-d064-4fe8-9603-64e6d7b8ac4d,1,0,03f68d82-752c-45d1-bf9a-60ecd21a2c81,03f68d82-752c-45d1-bf9a-60ecd21a2c81,1,0,307e8938-e347-4eff-b2fb-fd0b8f4aa27f,307e8938-e347-4eff-b2fb-fd0b8f4aa27f,1,0,d4fffc79-2841-49a9-a382-e9e4138984df,d4fffc79-2841-49a9-a382-e9e4138984df,1,0,84e4c572-5b32-46e0-82a0-0c76d4ef5d73,84e4c572-5b32-46e0-82a0-0c76d4ef5d73,1,0,9f41f903-d316-4189-8dc0-603ea9036c1c,9f41f903-d316-4189-8dc0-603ea9036c1c,1,0,e19e70d6-8707-4dde-ae69-7bd97035ca03,e19e70d6-8707-4dde-ae69-7bd97035ca03,1,0,425b5272-1130-457d-8a05-aee8fad681d9,425b5272-1130-457d-8a05-aee8fad681d9,1,0,8d583436-f2a6-4a33-8137-1376f5754643,8d583436-f2a6-4a33-8137-1376f5754643,1,0,4a864e74-41ce-4673-a080-bc3c2ba1b8ee,4a864e74-41ce-4673-a080-bc3c2ba1b8ee,1,0,d279958e-6dd4-4bb0-a65f-c8768b4c4d96,d279958e-6dd4-4bb0-a65f-c8768b4c4d96,1,0,2d66502d-77ab-4cc9-9ccf-5433458fae9f,2d66502d-77ab-4cc9-9ccf-5433458fae9f,1,0,cff48da7-3c46-4602-83e8-90c9ea53e107,cff48da7-3c46-4602-83e8-90c9ea53e107,1,0,7155472d-c791-402c-96e1-d25612024c88,7155472d-c791-402c-96e1-d25612024c88,1,0,fb90c261-24a7-4cef-8a2c-85c0e4fdd64a,fb90c261-24a7-4cef-8a2c-85c0e4fdd64a,1,0,9005911d-ea81-48b6-bf50-1a328ff4d7be,9005911d-ea81-48b6-bf50-1a328ff4d7be,1,0,7df12006-c0c0-42a6-b852-bdced72c62e3,7df12006-c0c0-42a6-b852-bdced72c62e3,1,0,9c00987d-3c55-40eb-bae8-f36e71e4ef87,9c00987d-3c55-40eb-bae8-f36e71e4ef87,1,0,29273130-5142-48c9-8399-00e5ab4b6203,29273130-5142-48c9-8399-00e5ab4b6203,1,0,9e14cd7e-1293-4008-baf8-88df6a98abf7,9e14cd7e-1293-4008-baf8-88df6a98abf7,1,0,211d226f-dac6-43d5-8720-952da4339e35,211d226f-dac6-43d5-8720-952da4339e35,1,0,df67cdcd-20ff-46d4-902b-dc4d81ee46bd,df67cdcd-20ff-46d4-902b-dc4d81ee46bd,1,0,98e3aace-52a6-4911-8205-92165adca6de,98e3aace-52a6-4911-8205-92165adca6de,1,0,91f4dbf9-d539-4239-a95d-c1d9e14e50f8,91f4dbf9-d539-4239-a95d-c1d9e14e50f8,1,0,577e5fea-b792-4c8b-b3b3-a03a14b64b04,577e5fea-b792-4c8b-b3b3-a03a14b64b04,1,0,ba5ec2d6-1791-42b5-8e6f-04d1d18e9469,ba5ec2d6-1791-42b5-8e6f-04d1d18e9469,1,0,b18d312b-f9c3-4f37-ac77-d499e949f154,b18d312b-f9c3-4f37-ac77-d499e949f154,1,0,ace2beea-d393-412f-8b71-b845b665e2c4,ace2beea-d393-412f-8b71-b845b665e2c4,1,0,463b8966-a5f9-4a80-82b9-1608a1622e13,463b8966-a5f9-4a80-82b9-1608a1622e13,1,0,3fd4bc77-2a1b-4750-a54a-4171c8d40027,3fd4bc77-2a1b-4750-a54a-4171c8d40027,1,0,5b27fde9-fa80-48b1-aea1-73e132b9a944,5b27fde9-fa80-48b1-aea1-73e132b9a944,1,0,00bf04d6-6a8e-4b13-94cf-36c1c6090cd8,00bf04d6-6a8e-4b13-94cf-36c1c6090cd8,1,0,a747ec6b-f230-49b4-a929-7ed1ba87b078,a747ec6b-f230-49b4-a929-7ed1ba87b078,1,0,796f8fb4-d9cd-40ae-936b-8a70d2eb1121,796f8fb4-d9cd-40ae-936b-8a70d2eb1121,1,0,01cb357c-af28-4855-afae-45b6df19b344,01cb357c-af28-4855-afae-45b6df19b344,1,0,4802e016-a9e9-47d0-916b-b42194a1f388,4802e016-a9e9-47d0-916b-b42194a1f388,1,0,a1740d1f-1b8f-4db5-be5e-0eac44e934b8,a1740d1f-1b8f-4db5-be5e-0eac44e934b8,1,0,4062674a-4a81-494d-82bc-4984cd7c7903,4062674a-4a81-494d-82bc-4984cd7c7903,1,0,782a8801-06ca-4d63-bf8b-63d2320766d8,782a8801-06ca-4d63-bf8b-63d2320766d8,1,0,93a73123-d98c-4286-9269-7bfcedd115e8,93a73123-d98c-4286-9269-7bfcedd115e8,1,0,c5985c02-1824-4ce9-b415-1621dd2ee864,c5985c02-1824-4ce9-b415-1621dd2ee864,1,0,993ce747-cdc9-445f-ad7d-daf53cd5f7e9,993ce747-cdc9-445f-ad7d-daf53cd5f7e9,1,0,e819aaf6-3dfb-492a-8a4a-50a7c6854790,e819aaf6-3dfb-492a-8a4a-50a7c6854790,1,0,62b95ba1-f213-42fb-90f3-a03e8094bc9e,62b95ba1-f213-42fb-90f3-a03e8094bc9e,1,0,619b534d-5605-40d3-9b8c-4443a21d7795,619b534d-5605-40d3-9b8c-4443a21d7795,1,0,a010bbf4-d547-4576-9797-28e3096ffed3,a010bbf4-d547-4576-9797-28e3096ffed3,1,0,a44c3eb2-1054-41ca-82e8-fc35336e7009,a44c3eb2-1054-41ca-82e8-fc35336e7009,1,0,01f67911-4ca7-4668-b970-62c299b98e56,01f67911-4ca7-4668-b970-62c299b98e56,1,0,20c89c94-f77f-4e14-8c97-2a70c1419ce3,20c89c94-f77f-4e14-8c97-2a70c1419ce3,1,0,aa509aa3-dd45-41f3-82c7-59662c2e2c47,aa509aa3-dd45-41f3-82c7-59662c2e2c47,1,0,c4552529-e69e-4c5c-bd66-04b2f7dac281,c4552529-e69e-4c5c-bd66-04b2f7dac281,1,0,381b49ba-793a-4418-9fd4-598844fb72a6,381b49ba-793a-4418-9fd4-598844fb72a6,1,0,1aee302d-df31-49ea-b542-436dc1d79ae1,1aee302d-df31-49ea-b542-436dc1d79ae1,1,0,593509da-d33c-49ff-a62c-a28cbc4651c1,593509da-d33c-49ff-a62c-a28cbc4651c1,1,0,5e346a0b-a322-4565-adb9-70131fb05fa3,5e346a0b-a322-4565-adb9-70131fb05fa3,1,0,9a69c559-194b-4f74-9879-82740260f5f6,9a69c559-194b-4f74-9879-82740260f5f6,1,0,93bf1dcf-670d-4c8b-bdbf-e43c2edf8056,93bf1dcf-670d-4c8b-bdbf-e43c2edf8056,1,0,8a06f980-78f3-42f4-9d96-da2e0f0f36a7,8a06f980-78f3-42f4-9d96-da2e0f0f36a7,1,0,fee2aa74-7a81-4ab2-a457-2edf8ac1aa2d,fee2aa74-7a81-4ab2-a457-2edf8ac1aa2d,1,0,2e19fb7b-270f-4181-b4a1-640280bbbc5c,2e19fb7b-270f-4181-b4a1-640280bbbc5c,1,0,cf69b045-665d-4f6c-827f-5044beacd125,cf69b045-665d-4f6c-827f-5044beacd125,1,0,aa773eef-0c4a-49be-9f5e-9131bc041415,aa773eef-0c4a-49be-9f5e-9131bc041415,1,0,9b31e474-01d4-4c3b-a633-3a2ff3917d62,9b31e474-01d4-4c3b-a633-3a2ff3917d62,1,0,1c09bf33-9b54-4bfd-bc92-e7324025fab0,1c09bf33-9b54-4bfd-bc92-e7324025fab0,1,0,8d7750e9-899f-4434-8702-44cd02681779,8d7750e9-899f-4434-8702-44cd02681779,1,0,d85244dc-c417-4e69-9aa7-7ad313ecb940,d85244dc-c417-4e69-9aa7-7ad313ecb940,1,0,3bebf5e9-68bb-48dc-a39d-cbdca2dbecb1,3bebf5e9-68bb-48dc-a39d-cbdca2dbecb1,1,0,cd392ef0-dedb-4f83-9a2c-a24190ee0dc0,cd392ef0-dedb-4f83-9a2c-a24190ee0dc0,1,0,bb2f0c1c-3cfb-4a26-b6de-5bbeb5614587,bb2f0c1c-3cfb-4a26-b6de-5bbeb5614587,1,0,0713de12-87d5-4877-bd8a-2b6466df67df,0713de12-87d5-4877-bd8a-2b6466df67df,1,0,b848aafc-44fb-4dfe-8eec-233dc08fbbb6,b848aafc-44fb-4dfe-8eec-233dc08fbbb6,1,0,c4d7c569-4649-4f98-a048-45f3c5933670,c4d7c569-4649-4f98-a048-45f3c5933670,1,0,6dc05d69-bd54-4e8a-8985-c2ddfa0aaffb,6dc05d69-bd54-4e8a-8985-c2ddfa0aaffb,1,0,426cbebb-880b-49c5-b046-83c5e071273e,426cbebb-880b-49c5-b046-83c5e071273e,1,0,ad08b104-01f8-4900-a06c-baa1d55eba84,ad08b104-01f8-4900-a06c-baa1d55eba84,1,0,9352d10d-188f-4074-8dd1-7be5c11525e3,9352d10d-188f-4074-8dd1-7be5c11525e3,1,0,1933634a-6f10-48e7-99f0-60ac338f7832,1933634a-6f10-48e7-99f0-60ac338f7832,1,0,655deec5-c079-4748-8521-b3f10c243394,655deec5-c079-4748-8521-b3f10c243394,1,0,f6d4d818-d54c-4337-82cf-abd5e6dbe770,f6d4d818-d54c-4337-82cf-abd5e6dbe770,1,0,656c447b-291f-4e62-81ac-1c004841aa72,656c447b-291f-4e62-81ac-1c004841aa72,1,0,c9a06c8d-2f6d-4e03-bc62-a1a19f17faf3,c9a06c8d-2f6d-4e03-bc62-a1a19f17faf3,1,0,5ba93404-58ad-4321-9a62-27db828f75f6,5ba93404-58ad-4321-9a62-27db828f75f6,1,0,3da20e86-1d83-4935-b425-a91392dc8f35,3da20e86-1d83-4935-b425-a91392dc8f35,1,0,b56f25d2-72a9-4d80-8998-77ac3097c873,b56f25d2-72a9-4d80-8998-77ac3097c873,1,0,03bd775a-e0a1-4205-82ce-6068e73ad134,03bd775a-e0a1-4205-82ce-6068e73ad134,1,0,40bed47b-7754-4a70-b51a-47385fd46e83,40bed47b-7754-4a70-b51a-47385fd46e83,1,0,773ef914-5e7e-4ec1-bcdb-b2d111b560e6,773ef914-5e7e-4ec1-bcdb-b2d111b560e6,1,0,1e5a4f93-1ab9-4775-9538-2a1772215d89,1e5a4f93-1ab9-4775-9538-2a1772215d89,1,0,c25db165-0734-4fef-b161-e5164954a616,c25db165-0734-4fef-b161-e5164954a616,1,0,37e3d914-643e-4963-b4a0-7bc6727c0c9b,37e3d914-643e-4963-b4a0-7bc6727c0c9b,1,0,b6902500-3e03-4e83-a077-00500abc00b6,b6902500-3e03-4e83-a077-00500abc00b6,1,0,4f97b909-68f9-482a-b958-b4caa9b83763,4f97b909-68f9-482a-b958-b4caa9b83763,1,0,c31e34db-41ff-4db3-a4d0-f780f67070f6,c31e34db-41ff-4db3-a4d0-f780f67070f6,1,0,7a014fcb-a4b8-4c1c-b0de-21907a917c25,7a014fcb-a4b8-4c1c-b0de-21907a917c25,1,0,1688ef5d-72df-4bc4-a879-89033d466ad7,1688ef5d-72df-4bc4-a879-89033d466ad7,1,0,30f18fbf-4240-4708-a71a-189f8fc324f3,30f18fbf-4240-4708-a71a-189f8fc324f3,1,0,344cb0de-315d-4d05-93f8-8a1f53208470,344cb0de-315d-4d05-93f8-8a1f53208470,1,0,cd869887-0b0e-43db-8b51-04fe4a1341d5,cd869887-0b0e-43db-8b51-04fe4a1341d5,1,0,98aa5d5e-6c0e-4b9b-a3fa-335635d15217,98aa5d5e-6c0e-4b9b-a3fa-335635d15217,1,0,a7973409-b18e-4b88-ad50-e2ae89470d8f,a7973409-b18e-4b88-ad50-e2ae89470d8f,1,0,a537875e-492e-4cf2-96e9-e2e97bb206da,a537875e-492e-4cf2-96e9-e2e97bb206da,1,0,cd8fd85f-f02e-4f11-b4b4-40670febfaca,cd8fd85f-f02e-4f11-b4b4-40670febfaca,1,0,3f023afb-c02a-42ee-9afe-0f47ef3fe721,3f023afb-c02a-42ee-9afe-0f47ef3fe721,1,0,085a08f3-9d93-429d-9b1b-9065ab8363f7,085a08f3-9d93-429d-9b1b-9065ab8363f7,1,0,a530c0a1-c1d2-40bb-9d0e-320074dbb684,a530c0a1-c1d2-40bb-9d0e-320074dbb684,1,0,55c63580-16f1-4d6f-a40b-e630f71ebb98,55c63580-16f1-4d6f-a40b-e630f71ebb98,1,0,0a136ad9-22ad-4ba7-a31a-40a193b49d26,0a136ad9-22ad-4ba7-a31a-40a193b49d26,1,0,208c7b8c-3df9-4441-8ebf-34ffa81572a2,208c7b8c-3df9-4441-8ebf-34ffa81572a2,1,0,8c17fd7c-74d7-496a-a843-42022afb0707,8c17fd7c-74d7-496a-a843-42022afb0707,1,0,091ccac1-9a63-4a89-bb0c-333b274b0c70,091ccac1-9a63-4a89-bb0c-333b274b0c70,1,0,b456d820-8034-4381-960d-66d9f86b0a4b,b456d820-8034-4381-960d-66d9f86b0a4b,1,0,bd55fd03-cf67-4333-a554-98e03d18f780,bd55fd03-cf67-4333-a554-98e03d18f780,1,0,6eac5f7b-0952-4c94-9028-529b14ffcd4f,6eac5f7b-0952-4c94-9028-529b14ffcd4f,1,0,1a7c774d-5b86-4051-b797-3081e19fa30a,1a7c774d-5b86-4051-b797-3081e19fa30a,1,0,00949768-5833-4fe2-8752-b009d1bceef8,00949768-5833-4fe2-8752-b009d1bceef8,1,0,167455d1-6658-409f-834c-f6ccfe7b25de,167455d1-6658-409f-834c-f6ccfe7b25de,1,0,c5b3ca21-8f7b-4933-853c-7d95b17b5631,c5b3ca21-8f7b-4933-853c-7d95b17b5631,1,0,8b0faa1e-09da-4ba4-894e-e86abc5d39df,8b0faa1e-09da-4ba4-894e-e86abc5d39df,1,0,cb50b309-1b6c-400c-9e9e-67204dcccaae,cb50b309-1b6c-400c-9e9e-67204dcccaae,1,0,e2b482cb-6954-4e6a-abe9-d0a01f64b73a,e2b482cb-6954-4e6a-abe9-d0a01f64b73a,1,0,2a6e1f2b-7378-456b-9657-9e971eaff716,2a6e1f2b-7378-456b-9657-9e971eaff716,1,0,c3cdea20-3055-4b4e-a531-a02d4f3ed294,c3cdea20-3055-4b4e-a531-a02d4f3ed294,1,0,7183d525-212a-42f3-a7e5-eb9deaeaa4a3,7183d525-212a-42f3-a7e5-eb9deaeaa4a3,1,0,b82b27cc-e81c-4b7c-9833-ea4f2ce21edb,b82b27cc-e81c-4b7c-9833-ea4f2ce21edb,1,0,4347f77e-bad9-4525-90a0-794787f03585,4347f77e-bad9-4525-90a0-794787f03585,1,0,cfde3330-2bed-4273-8d69-c213ebdde247,cfde3330-2bed-4273-8d69-c213ebdde247,1,0,2d6ca049-89a5-437e-971c-b8e42f61b460,2d6ca049-89a5-437e-971c-b8e42f61b460,1,0,c450ebe1-4223-4a7a-b9fa-374d5c13dc8c,c450ebe1-4223-4a7a-b9fa-374d5c13dc8c,1,0,271d58d0-4449-40cc-bae9-cc4c50eebd9b,271d58d0-4449-40cc-bae9-cc4c50eebd9b,1,0,58df9322-c786-4dd1-af49-7cd164b378da,58df9322-c786-4dd1-af49-7cd164b378da,1,0,8d48de7f-61d6-4462-9c14-f728206a482c,8d48de7f-61d6-4462-9c14-f728206a482c,1,0,a87e890a-8924-4f56-9e37-04579b95297a,a87e890a-8924-4f56-9e37-04579b95297a,1,0,c71d4fa4-86b0-41e2-8b6a-cfb91e131eaf,c71d4fa4-86b0-41e2-8b6a-cfb91e131eaf,1,0,4c1f2581-ee42-4df5-9169-20205a18a9be,4c1f2581-ee42-4df5-9169-20205a18a9be,1,0,bb3d9ea3-8895-4950-9ee9-4249ca983d48,bb3d9ea3-8895-4950-9ee9-4249ca983d48,1,0,86ea21fa-5ecc-4d81-b6ad-d71e7ed39009,86ea21fa-5ecc-4d81-b6ad-d71e7ed39009,1,0,b806d2b6-bbd1-4abd-9471-7791603a2fcf,b806d2b6-bbd1-4abd-9471-7791603a2fcf,1,0,d7aa519b-9a2e-4946-bd06-9ac22bb7c1e4,d7aa519b-9a2e-4946-bd06-9ac22bb7c1e4,1,0,ecee1ec8-aa1f-4b90-a1b3-2538a53c0dd7,ecee1ec8-aa1f-4b90-a1b3-2538a53c0dd7,1,0,34f50dd9-de16-4013-a2ef-6595d9c28930,34f50dd9-de16-4013-a2ef-6595d9c28930,1,0,56fcca65-3429-4409-bce7-f434f6530a74,56fcca65-3429-4409-bce7-f434f6530a74,1,0,5236ca8d-a4a6-4df8-a6a3-5cfe02c49aeb,5236ca8d-a4a6-4df8-a6a3-5cfe02c49aeb,1,0,bcfabf25-ae2f-4f73-836c-2cab3617a0b6,bcfabf25-ae2f-4f73-836c-2cab3617a0b6,1,0,b286f047-a4d0-4808-b1b4-27997ead6d49,b286f047-a4d0-4808-b1b4-27997ead6d49,1,0,49da2d3a-657a-4cfd-8e37-422b96d2cda5,49da2d3a-657a-4cfd-8e37-422b96d2cda5,1,0,fced16ae-abee-4fbe-9582-dfd368d5610a,fced16ae-abee-4fbe-9582-dfd368d5610a,1,0,afe60bad-1585-487f-9a39-9b9e031f9576,afe60bad-1585-487f-9a39-9b9e031f9576,1,0,4c4f0475-bd11-40c8-af0d-8affec6f838d,4c4f0475-bd11-40c8-af0d-8affec6f838d,1,0,7aee36ac-bbd1-4b06-8266-b7325fb9ce3c,7aee36ac-bbd1-4b06-8266-b7325fb9ce3c,1,0,855439d7-a621-48f5-b6d9-bc2bbd11ad90,855439d7-a621-48f5-b6d9-bc2bbd11ad90,1,0,4e0ec0f0-eb44-41b0-b950-88fdb6ac0db2,4e0ec0f0-eb44-41b0-b950-88fdb6ac0db2,1,0,2f25e742-555b-4db8-bff2-2d345ce2a93a,2f25e742-555b-4db8-bff2-2d345ce2a93a,1,0,303d8c17-4303-4f1d-8bed-51cd7ea0a4b2,303d8c17-4303-4f1d-8bed-51cd7ea0a4b2,1,0,46affd3a-f31c-4432-bd58-2f2b1ed9bc4e,46affd3a-f31c-4432-bd58-2f2b1ed9bc4e,1,0,a7fee9d3-569d-4b5b-bd47-44790e0095f5,a7fee9d3-569d-4b5b-bd47-44790e0095f5,1,0,a258fe12-7e55-4f89-86fa-962b1d2947ac,a258fe12-7e55-4f89-86fa-962b1d2947ac,1,0,93701593-5ac8-4266-b471-7e9ed35a9c3e,93701593-5ac8-4266-b471-7e9ed35a9c3e,1,0,0fdb864e-ede9-4777-835c-0804968ee544,0fdb864e-ede9-4777-835c-0804968ee544,1,0,04c45a51-4a8e-48fa-a39c-f67ce2079fc4,04c45a51-4a8e-48fa-a39c-f67ce2079fc4,1,0,b46546fe-3d6b-473f-a7cb-ff3b3ae0bafe,b46546fe-3d6b-473f-a7cb-ff3b3ae0bafe,1,0,e7b1810c-8e6c-4759-9e6f-c754b5a1ac77,e7b1810c-8e6c-4759-9e6f-c754b5a1ac77,1,0,5dee9814-fe38-4631-8148-8d6c87ef6f47,5dee9814-fe38-4631-8148-8d6c87ef6f47,1,0,37d17053-5c2b-4972-b6a5-a589f2ddbde6,37d17053-5c2b-4972-b6a5-a589f2ddbde6,1,0,c349968a-3f87-425b-8efb-d847934dee4b,c349968a-3f87-425b-8efb-d847934dee4b,1,0,3bb8dc33-970c-4c58-9036-ce716d963847,3bb8dc33-970c-4c58-9036-ce716d963847,1,0,fae0d2e0-1bcd-4a77-86d6-407ca05c1c95,fae0d2e0-1bcd-4a77-86d6-407ca05c1c95,1,0,b3ff39fa-f665-4d01-9a2a-69722e6b1071,b3ff39fa-f665-4d01-9a2a-69722e6b1071,1,0,0abacb0a-ce00-474e-8aec-35685c51ddef,0abacb0a-ce00-474e-8aec-35685c51ddef,1,0,ae407b17-03aa-4268-8603-58d6714dae89,ae407b17-03aa-4268-8603-58d6714dae89,1,0,5c0ce79b-97a9-4917-9b02-a4548a97d5a1,5c0ce79b-97a9-4917-9b02-a4548a97d5a1,1,0,c552cfac-d3ef-4b63-a0b9-7c79261ff9f3,c552cfac-d3ef-4b63-a0b9-7c79261ff9f3,1,0,5bb6e52c-ac26-4143-8e90-f04f703f823b,5bb6e52c-ac26-4143-8e90-f04f703f823b,1,0,579baaa4-6493-4d99-8744-6399757295c7,579baaa4-6493-4d99-8744-6399757295c7,1,0,ae6d0e12-8857-476c-b4b2-f03295cbed3e,ae6d0e12-8857-476c-b4b2-f03295cbed3e,1,0,cc8e3172-491d-45d8-a7eb-fc6c400845cb,cc8e3172-491d-45d8-a7eb-fc6c400845cb,1,0,d7cfc87f-ac09-44aa-91d9-6511c408c5cb,d7cfc87f-ac09-44aa-91d9-6511c408c5cb,1,0,7ee1e0d0-9735-45da-bd24-c0dbabfd5b1e,7ee1e0d0-9735-45da-bd24-c0dbabfd5b1e,1,0,bd0e3bd4-1207-41ea-8dfc-afa8f7d08cc2,bd0e3bd4-1207-41ea-8dfc-afa8f7d08cc2,1,0,51d83895-5692-4479-9612-07c790d19dff,51d83895-5692-4479-9612-07c790d19dff,1,0,9c1325af-7492-42be-b3af-51b692534510,9c1325af-7492-42be-b3af-51b692534510,1,0,dface15c-cd65-4fb1-b4dd-b513086d3f8e,dface15c-cd65-4fb1-b4dd-b513086d3f8e,1,0,d854b528-8456-4453-9c2d-4f96caf10481,d854b528-8456-4453-9c2d-4f96caf10481,1,0,245f870e-a53a-4d86-aa0a-c0c7709b8acb,245f870e-a53a-4d86-aa0a-c0c7709b8acb,1,0,476f6bfa-b10c-4e0f-8499-23c652715b3f,476f6bfa-b10c-4e0f-8499-23c652715b3f,1,0,65c9754b-53f6-4616-a9d4-74826f7b0ced,65c9754b-53f6-4616-a9d4-74826f7b0ced,1,0,eca2b076-d218-4d1c-948b-7894edf9fa49,eca2b076-d218-4d1c-948b-7894edf9fa49,1,0,d6969c1e-e13c-4542-abb7-9cf6bb50b8e2,d6969c1e-e13c-4542-abb7-9cf6bb50b8e2,1,0,ccd91f94-d3f1-4aa3-90cf-081d72c4cab1,ccd91f94-d3f1-4aa3-90cf-081d72c4cab1,1,0,aa7d5ca4-3c02-4ca1-a790-2435ee9f9f02,aa7d5ca4-3c02-4ca1-a790-2435ee9f9f02,1,0,b7e85f5c-4312-44c6-895a-3f636a8c78d8,b7e85f5c-4312-44c6-895a-3f636a8c78d8,1,0,3b6e7ee6-0ef5-464a-a01a-6143479c7a61,3b6e7ee6-0ef5-464a-a01a-6143479c7a61,1,0,1969e8d1-0a82-44cb-a0d4-e5badb1d28d4,1969e8d1-0a82-44cb-a0d4-e5badb1d28d4,1,0,a1afacc5-f49a-4df2-a44d-479594d50179,a1afacc5-f49a-4df2-a44d-479594d50179,1,0,fe70eba3-7477-4a38-a511-d69960abb928,fe70eba3-7477-4a38-a511-d69960abb928,1,0,6534ea96-2145-49e6-9739-f59459dc7f6b,6534ea96-2145-49e6-9739-f59459dc7f6b,1,0,f49bffa0-cad6-4801-b82e-21aa580e72e6,f49bffa0-cad6-4801-b82e-21aa580e72e6,1,0,bbbfb817-8db3-4415-86c3-af028276d6e9,bbbfb817-8db3-4415-86c3-af028276d6e9,1,0,6a91112c-f6cc-47a0-9d26-a36c7702af7d,6a91112c-f6cc-47a0-9d26-a36c7702af7d,1,0,40a59681-f31d-4fb9-9301-67c1430590e0,40a59681-f31d-4fb9-9301-67c1430590e0,1,0,cb92dc2e-6053-4233-a408-4464514b1257,cb92dc2e-6053-4233-a408-4464514b1257,1,0,8cd65ad3-a7a3-46f6-9061-e8751fd5073e,8cd65ad3-a7a3-46f6-9061-e8751fd5073e,1,0,85550a7a-8fe0-4296-ace5-63cf053536b4,85550a7a-8fe0-4296-ace5-63cf053536b4,1,0,cf1bd9cd-2ef2-4868-b6c0-5160860690f7,cf1bd9cd-2ef2-4868-b6c0-5160860690f7,1,0,9c3bc502-bcb1-4c90-ae43-53c798958339,9c3bc502-bcb1-4c90-ae43-53c798958339,1,0,3f8b6411-6606-4d27-891e-7c77be47c5f9,3f8b6411-6606-4d27-891e-7c77be47c5f9,1,0,bed3f0b2-40c6-4323-9bca-cb8864e38ec0,bed3f0b2-40c6-4323-9bca-cb8864e38ec0,1,0,5eb4ca7f-027a-4860-a167-e6b424527e7a,5eb4ca7f-027a-4860-a167-e6b424527e7a,1,0,f9b98ba5-1fa8-42a4-b1a2-dd71874083cb,f9b98ba5-1fa8-42a4-b1a2-dd71874083cb,1,0,6871015f-d959-4a77-a091-a23cb4ebd8f9,6871015f-d959-4a77-a091-a23cb4ebd8f9,1,0,e5e1631b-a494-4e73-b356-b4330b84cc88,e5e1631b-a494-4e73-b356-b4330b84cc88,1,0,f8f0857f-2c75-471a-ae0b-a3a265e1eb25,f8f0857f-2c75-471a-ae0b-a3a265e1eb25,1,0,a23f97fb-7ac9-4941-a2c6-bbff6c36ac12,a23f97fb-7ac9-4941-a2c6-bbff6c36ac12,1,0,80cf54ed-8677-4c89-a378-0abef6c64010,80cf54ed-8677-4c89-a378-0abef6c64010,1,0,f0dec7b3-2d6a-44ce-a1da-9c71ccd37539,f0dec7b3-2d6a-44ce-a1da-9c71ccd37539,1,0,56ee3afd-5ae6-421e-b9f3-26505e40f100,56ee3afd-5ae6-421e-b9f3-26505e40f100,1,0,63c9a839-78b2-4706-b380-5aedf6914930,63c9a839-78b2-4706-b380-5aedf6914930,1,0,40f5c1cb-2654-4738-bb44-6734b0e3490b,40f5c1cb-2654-4738-bb44-6734b0e3490b,1,0,2ec484b1-95eb-43a7-9430-1c1ef49f05af,2ec484b1-95eb-43a7-9430-1c1ef49f05af,1,0,1a314ce2-03bc-4267-89a9-bb5bb866f552,1a314ce2-03bc-4267-89a9-bb5bb866f552,1,0,e3b783a6-5ea2-4cd4-955b-df63d93c1f25,e3b783a6-5ea2-4cd4-955b-df63d93c1f25,1,0,f8ab62ad-7776-49ae-b1bb-51bea9a9992b,f8ab62ad-7776-49ae-b1bb-51bea9a9992b,1,0,e859dd18-8baf-49c0-b7a0-1205b6c125d3,e859dd18-8baf-49c0-b7a0-1205b6c125d3,1,0,da59378e-0a97-4cff-977b-cc51967068ee,da59378e-0a97-4cff-977b-cc51967068ee,1,0,bbaad46d-f60d-49e6-a077-075366bca47e,bbaad46d-f60d-49e6-a077-075366bca47e,1,0,0d9f5703-91e4-4769-bedd-5bd974f2f617,0d9f5703-91e4-4769-bedd-5bd974f2f617,1,0,926cdf17-1929-43d6-8205-858aab558ad9,926cdf17-1929-43d6-8205-858aab558ad9,1,0,5ec6838f-2d70-4f91-b41b-16adfe8ed587,5ec6838f-2d70-4f91-b41b-16adfe8ed587,1,0,6420ad7e-61ca-4af9-9715-f2b0c3e2c58f,6420ad7e-61ca-4af9-9715-f2b0c3e2c58f,1,0,bee8b8a0-f058-44cb-822c-620351567627,bee8b8a0-f058-44cb-822c-620351567627,1,0,26365e29-903b-47fd-ad96-e0d87f5d6e87,26365e29-903b-47fd-ad96-e0d87f5d6e87,1,0,569180cb-ce54-4267-94b9-332e35e3c17d,569180cb-ce54-4267-94b9-332e35e3c17d,1,0,9ec6fc35-e84e-4f82-b616-5c02e945cc8f,9ec6fc35-e84e-4f82-b616-5c02e945cc8f,1,0,a2c42946-1cdb-457a-a45b-97781cfb4a15,a2c42946-1cdb-457a-a45b-97781cfb4a15,1,0,20adf54c-044c-4bea-8028-b6d20917a030,20adf54c-044c-4bea-8028-b6d20917a030,1,0,dea6b05f-d3e1-4ff4-8f71-6a0c18134e94,dea6b05f-d3e1-4ff4-8f71-6a0c18134e94,1,0,fcb97a46-d5fd-4bb5-b899-17723a9fe346,fcb97a46-d5fd-4bb5-b899-17723a9fe346,1,0,a666af62-aa5d-4b2b-b9e5-017d1c93ae6a,a666af62-aa5d-4b2b-b9e5-017d1c93ae6a,1,0,7604b15a-8c5e-4515-84b9-c1d36f9efd0a,7604b15a-8c5e-4515-84b9-c1d36f9efd0a,1,0,a1a44832-6026-47ae-affd-5b6d52e84307,a1a44832-6026-47ae-affd-5b6d52e84307,1,0,d2fd8650-d13a-411d-8206-61b16016bd82,d2fd8650-d13a-411d-8206-61b16016bd82,1,0,f98bcdb8-6eed-4b4f-b3da-d80b5e8bed44,f98bcdb8-6eed-4b4f-b3da-d80b5e8bed44,1,0,fbaa5b0a-56dc-4bf1-b1b2-e48073f63d13,fbaa5b0a-56dc-4bf1-b1b2-e48073f63d13,1,0,a92acf0e-9132-4456-9a82-1543d98ca453,a92acf0e-9132-4456-9a82-1543d98ca453,1,0,4033eb31-8281-402a-afff-431fa36e589e,4033eb31-8281-402a-afff-431fa36e589e,1,0,5a1e1da5-7307-4f48-bb1c-2977fc4d7cef,5a1e1da5-7307-4f48-bb1c-2977fc4d7cef,1,0,f59488c7-4643-4988-8043-5c9724e04279,f59488c7-4643-4988-8043-5c9724e04279,1,0,cfe022b5-7647-4b5c-a2bd-f5d313f4a9db,cfe022b5-7647-4b5c-a2bd-f5d313f4a9db,1,0,3c0a9c45-8e57-43fa-8ae3-26b15571f2cd,3c0a9c45-8e57-43fa-8ae3-26b15571f2cd,1,0,85223d37-2503-4783-94dc-fe6265e718d5,85223d37-2503-4783-94dc-fe6265e718d5,1,0,0918cd76-56e5-4314-8a1c-c21d023ba6f8,0918cd76-56e5-4314-8a1c-c21d023ba6f8,1,0,9db21c2e-79fa-44e4-902e-416abfccb54a,9db21c2e-79fa-44e4-902e-416abfccb54a,1,0,fb082db3-197b-4d1e-b9ea-362624d547ee,fb082db3-197b-4d1e-b9ea-362624d547ee,1,0,c09dcf00-a45a-4487-99c5-d3a37956ec88,c09dcf00-a45a-4487-99c5-d3a37956ec88,1,0,531a5a0c-6ac9-4e93-8caa-42d9aad0bc82,531a5a0c-6ac9-4e93-8caa-42d9aad0bc82,1,0,2714e1b6-6b02-43a1-bc94-2934b429ed35,2714e1b6-6b02-43a1-bc94-2934b429ed35,1,0,e33c73b2-ef0b-49b7-a65f-ab2c814ad256,e33c73b2-ef0b-49b7-a65f-ab2c814ad256,1,0,4c7016da-9991-4917-8eaa-e760cc9e29d1,4c7016da-9991-4917-8eaa-e760cc9e29d1,1,0,febb3770-5c11-4ada-9e49-a27950bdaddf,febb3770-5c11-4ada-9e49-a27950bdaddf,1,0,d7b57669-e538-4e54-ab1b-8428f0586466,d7b57669-e538-4e54-ab1b-8428f0586466,1,0,9c484a15-039e-416d-af97-4c2bd90fd873,9c484a15-039e-416d-af97-4c2bd90fd873,1,0,534855e3-4cf2-471c-b982-7138917050c9,534855e3-4cf2-471c-b982-7138917050c9,1,0,4c72b944-d000-4920-aec8-54029f88ddf4,4c72b944-d000-4920-aec8-54029f88ddf4,1,0,b4033d05-05c2-4617-80d9-abfa389c47f4,b4033d05-05c2-4617-80d9-abfa389c47f4,1,0,aa29e1be-4e99-4136-8dc1-0124908979ad,aa29e1be-4e99-4136-8dc1-0124908979ad,1,0,0d76799d-7fc7-446b-88fb-dca839de00a5,0d76799d-7fc7-446b-88fb-dca839de00a5,1,0,cb5674c3-0d91-4948-bafd-d9ef44a2a69d,cb5674c3-0d91-4948-bafd-d9ef44a2a69d,1,0,ea4a869c-861c-412c-a3be-de1c57d1a251,ea4a869c-861c-412c-a3be-de1c57d1a251,1,0,eeafcc8c-fbe2-4bb4-8b8a-cf663208258d,eeafcc8c-fbe2-4bb4-8b8a-cf663208258d,1,0,6a3bd39a-59cb-4763-b49f-7ab67167a8b7,6a3bd39a-59cb-4763-b49f-7ab67167a8b7,1,0,6c1d8f6c-db33-46dc-8824-aceacb4bf9c1,6c1d8f6c-db33-46dc-8824-aceacb4bf9c1,1,0,50ac390d-324f-40bd-b3df-0468a63b94b6,50ac390d-324f-40bd-b3df-0468a63b94b6,1,0,80337710-2c60-45c4-ae1f-bb42731fb611,80337710-2c60-45c4-ae1f-bb42731fb611,1,0,9dcf467e-7701-4c7b-b747-95f4d9b9295c,9dcf467e-7701-4c7b-b747-95f4d9b9295c,1,0,dd07b255-25af-466e-a224-c561a8ca567b,dd07b255-25af-466e-a224-c561a8ca567b,1,0,77149f7a-8a76-4569-9487-991c41e132ef,77149f7a-8a76-4569-9487-991c41e132ef,1,0,9e1be65e-986f-4d21-91f0-15c66db0c947,9e1be65e-986f-4d21-91f0-15c66db0c947,1,0,75a0f8f1-6d8d-47d0-81c5-20b5e55b9cd1,75a0f8f1-6d8d-47d0-81c5-20b5e55b9cd1,1,0,d2fe4578-a1f8-4586-b052-fa71d25365c9,d2fe4578-a1f8-4586-b052-fa71d25365c9,1,0,f31f3dab-5796-47ac-a54d-3081f8cad817,f31f3dab-5796-47ac-a54d-3081f8cad817,1,0,cd59707e-b9e4-4038-8203-ae22a8060e8d,cd59707e-b9e4-4038-8203-ae22a8060e8d,1,0,db497857-33d3-49a1-b328-dfc62c973ecb,db497857-33d3-49a1-b328-dfc62c973ecb,1,0,139c001c-7b07-465a-9187-399ad32d294f,139c001c-7b07-465a-9187-399ad32d294f,1,0,5d228ce4-069e-4f98-beed-b8e1de17c3d9,5d228ce4-069e-4f98-beed-b8e1de17c3d9,1,0,9770fc09-87bf-4fce-9b0d-410efd30edae,9770fc09-87bf-4fce-9b0d-410efd30edae,1,0,f3d8590a-dcfa-4d41-8d03-642b99ffa040,f3d8590a-dcfa-4d41-8d03-642b99ffa040,1,0,3d73d5ff-995e-40ed-a401-cec2a3d12c8f,3d73d5ff-995e-40ed-a401-cec2a3d12c8f,1,0,20156709-1481-4007-8e89-9ce79fc589fc,20156709-1481-4007-8e89-9ce79fc589fc,1,0,fbcda361-0ef2-47b4-ba1c-1d1952898bd3,fbcda361-0ef2-47b4-ba1c-1d1952898bd3,1,0,7e7c5abd-b645-4de5-a40e-5805ec4456e2,7e7c5abd-b645-4de5-a40e-5805ec4456e2,1,0,763a16c3-a728-4b65-a485-705990310b4a,763a16c3-a728-4b65-a485-705990310b4a,1,0,65338920-c744-4d1e-b351-848b90a3feda,65338920-c744-4d1e-b351-848b90a3feda,1,0,2aedb1ac-caf1-45c7-913e-82a36637d5d4,2aedb1ac-caf1-45c7-913e-82a36637d5d4,1,0,e177e258-7d0c-4fe1-80e5-3b89de9e23d9,e177e258-7d0c-4fe1-80e5-3b89de9e23d9,1,0,3f25ac9f-c6b4-4ccc-bec4-a90c99403823,3f25ac9f-c6b4-4ccc-bec4-a90c99403823,1,0,56177464-5e9f-4598-96bc-eb311993c503,56177464-5e9f-4598-96bc-eb311993c503,1,0,c2308e60-2844-4bd8-bc8a-c9c20e5fc62d,c2308e60-2844-4bd8-bc8a-c9c20e5fc62d,1,0,bdfe65f4-4174-4e66-915c-943137981cf0,bdfe65f4-4174-4e66-915c-943137981cf0,1,0,5271de2d-d3a0-4128-90e0-cd8e1ea2ad30,5271de2d-d3a0-4128-90e0-cd8e1ea2ad30,1,0,c895d58a-5be1-4157-81af-f4f6db9b4b9e,c895d58a-5be1-4157-81af-f4f6db9b4b9e,1,0,8ce6cc1a-8570-4704-b9a3-44e815b2e753,8ce6cc1a-8570-4704-b9a3-44e815b2e753,1,0,71aa2bf7-85c9-40f3-a9b0-f6d666eddd28,71aa2bf7-85c9-40f3-a9b0-f6d666eddd28,1,0,497cbe4d-586d-48a2-8e98-d20e3e09ed42,497cbe4d-586d-48a2-8e98-d20e3e09ed42,1,0,38b7679d-3739-4572-baf2-d8c7b2a94f0a,38b7679d-3739-4572-baf2-d8c7b2a94f0a,1,0,1470f052-f032-46bc-b1ee-54555e725dfd,1470f052-f032-46bc-b1ee-54555e725dfd,1,0,4019a5e9-1f50-44b9-98ba-87c07a0ce4e5,4019a5e9-1f50-44b9-98ba-87c07a0ce4e5,1,0,7d336fdd-5cbf-4c92-a783-f451f7590502,7d336fdd-5cbf-4c92-a783-f451f7590502,1,0,ee8af8ee-e49a-4511-9a91-48814ab99d23,ee8af8ee-e49a-4511-9a91-48814ab99d23,1,0,3a7d9d49-b5e5-4c5c-958e-a4c6afda8b9d,3a7d9d49-b5e5-4c5c-958e-a4c6afda8b9d,1,0,bc10ad8f-383c-469a-8c0e-60805161055b,bc10ad8f-383c-469a-8c0e-60805161055b,1,0,86760ecb-2ddd-40ce-bc4f-94c23027a55e,86760ecb-2ddd-40ce-bc4f-94c23027a55e,1,0,6fbf844e-ee8d-490f-9177-6392d262312f,6fbf844e-ee8d-490f-9177-6392d262312f,1,0,703a3e8a-0204-4e8f-8fa0-a2ed1aeb7662,703a3e8a-0204-4e8f-8fa0-a2ed1aeb7662,1,0,f5d90a5a-1adb-49d6-8640-2e4054bdb99f,f5d90a5a-1adb-49d6-8640-2e4054bdb99f,1,0,37722a34-1148-4cc8-95e6-4645ae9cca98,37722a34-1148-4cc8-95e6-4645ae9cca98,1,0,11f32e0f-7d16-4ebd-9cef-fffd2d64e70a,11f32e0f-7d16-4ebd-9cef-fffd2d64e70a,1,0,cc34bd23-de0a-4b09-8333-e4693576b9f4,cc34bd23-de0a-4b09-8333-e4693576b9f4,1,0,b16d5e79-9d7e-4d3e-9be8-3b2a932abf78,b16d5e79-9d7e-4d3e-9be8-3b2a932abf78,1,0,903af13a-1f73-4145-a3d0-971c3be5fbe6,903af13a-1f73-4145-a3d0-971c3be5fbe6,1,0,fb42ad06-d5a4-40ea-817c-fa7ff385d8db,fb42ad06-d5a4-40ea-817c-fa7ff385d8db,1,0,bc110a6a-26fa-4aa1-a2ef-bdaeaa0a33af,bc110a6a-26fa-4aa1-a2ef-bdaeaa0a33af,1,0,953dbad6-4f5c-4319-874a-db358a77d001,953dbad6-4f5c-4319-874a-db358a77d001,1,0,05243f56-7e9b-4a61-8efb-1b5e525fff21,05243f56-7e9b-4a61-8efb-1b5e525fff21,1,0,7aa86a2d-2b47-447e-8901-806411011279,7aa86a2d-2b47-447e-8901-806411011279,1,0,fca0dfad-f853-4694-9ce9-53a3a10f59b7,fca0dfad-f853-4694-9ce9-53a3a10f59b7,1,0,934b8380-c6e0-49f8-a6c2-91c0ddb2f95e,934b8380-c6e0-49f8-a6c2-91c0ddb2f95e,1,0,57f4ee70-185e-4f2a-91a6-6c0bf93c1000,57f4ee70-185e-4f2a-91a6-6c0bf93c1000,1,0,b4cb92fb-ad82-44ed-9203-397b412b3453,b4cb92fb-ad82-44ed-9203-397b412b3453,1,0,69ceac29-06d3-45f2-b914-7966465cd0d3,69ceac29-06d3-45f2-b914-7966465cd0d3,1,0,b690721d-960b-4374-8d2c-feed3a2b354b,b690721d-960b-4374-8d2c-feed3a2b354b,1,0,271243d3-1871-4a0a-bf7f-63bacacf0a59,271243d3-1871-4a0a-bf7f-63bacacf0a59,1,0,b1ed134b-f2aa-4b06-b7a2-0e524ead04df,b1ed134b-f2aa-4b06-b7a2-0e524ead04df,1,0,150c9d05-4ccc-4cb7-879d-b1d9c3534343,150c9d05-4ccc-4cb7-879d-b1d9c3534343,1,0,65000437-bd07-4841-a458-679d44768c46,65000437-bd07-4841-a458-679d44768c46,1,0,1281fe19-bbca-4a4f-84d8-14187e62000f,1281fe19-bbca-4a4f-84d8-14187e62000f,1,0,9b7051d5-abc4-416c-a0e6-515d120d78e4,9b7051d5-abc4-416c-a0e6-515d120d78e4,1,0,86d1bc4e-f08d-48c7-8b3a-3c5feb0c843c,86d1bc4e-f08d-48c7-8b3a-3c5feb0c843c,1,0,869938e6-6310-4326-bd15-5b91fe2e0911,869938e6-6310-4326-bd15-5b91fe2e0911,1,0,8ed7254b-bbf8-49d9-8a73-9a91316fd02d,8ed7254b-bbf8-49d9-8a73-9a91316fd02d,1,0,a156521a-ece1-49d3-8056-1c3508273c45,a156521a-ece1-49d3-8056-1c3508273c45,1,0,075d39e0-a77a-4d0b-9260-7524fb5b2d0c,075d39e0-a77a-4d0b-9260-7524fb5b2d0c,1,0,10018f80-3138-4089-bf9a-a5f178f1e295,10018f80-3138-4089-bf9a-a5f178f1e295,1,0,43aba109-4b7f-45ef-9c30-8b754e81911b,43aba109-4b7f-45ef-9c30-8b754e81911b,1,0,4ccd72e1-7fd7-4a3b-8428-71b44992937e,4ccd72e1-7fd7-4a3b-8428-71b44992937e,1,0,46077650-2b2c-4319-8279-41f277971669,46077650-2b2c-4319-8279-41f277971669,1,0,4afe733d-64a0-4ea5-9d12-6e2c86eb91e4,4afe733d-64a0-4ea5-9d12-6e2c86eb91e4,1,0,612f3b95-d7db-4b33-92b5-4873205b424b,612f3b95-d7db-4b33-92b5-4873205b424b,1,0,d0b79c3d-b0c5-4eb3-9971-1def1c88698f,d0b79c3d-b0c5-4eb3-9971-1def1c88698f,1,0,e82ebd72-7b5a-4f45-b853-1001bf680a05,e82ebd72-7b5a-4f45-b853-1001bf680a05,1,0,a74879b8-c080-4cc0-b44f-2b7c4dae87fe,a74879b8-c080-4cc0-b44f-2b7c4dae87fe,1,0,e9e9b733-e97a-430d-95ce-45ea27751f64,e9e9b733-e97a-430d-95ce-45ea27751f64,1,0,86ffe9a7-9b3e-49ab-bd88-20269fec56bc,86ffe9a7-9b3e-49ab-bd88-20269fec56bc,1,0,3dd50c66-27f7-4f1e-86e9-c709995c8609,3dd50c66-27f7-4f1e-86e9-c709995c8609,1,0,45c0003f-0ed7-4582-b84e-217fdc4ddeaf,45c0003f-0ed7-4582-b84e-217fdc4ddeaf,1,0,ed1369c5-c274-45bd-ae91-7648565ae09f,ed1369c5-c274-45bd-ae91-7648565ae09f,1,0,8d0fce61-a22f-4033-9e03-3f00c4a21722,8d0fce61-a22f-4033-9e03-3f00c4a21722,1,0,bfb3f026-e940-49c3-ac30-408186f9e11e,bfb3f026-e940-49c3-ac30-408186f9e11e,1,0,e1dc83eb-a8cd-454b-8de8-cff2049be78c,e1dc83eb-a8cd-454b-8de8-cff2049be78c,1,0,9edd9288-1463-4d67-b9f0-40f351d978e9,9edd9288-1463-4d67-b9f0-40f351d978e9,1,0,c9db6c68-965f-4567-b26e-5d497a389de1,c9db6c68-965f-4567-b26e-5d497a389de1,1,0,4da2f65d-56bd-4140-9b31-e5ccac4a800a,4da2f65d-56bd-4140-9b31-e5ccac4a800a,1,0,eb163bba-b94c-4a78-9c2d-7b519325e3d4,eb163bba-b94c-4a78-9c2d-7b519325e3d4,1,0,58cdbd20-a7f4-4c4c-8a4e-638714cc2699,58cdbd20-a7f4-4c4c-8a4e-638714cc2699,1,0,616cd2cc-eaf4-4586-bca1-c044429b491a,616cd2cc-eaf4-4586-bca1-c044429b491a,1,0,939bdb9a-294b-4b42-a56f-030f69bc29c4,939bdb9a-294b-4b42-a56f-030f69bc29c4,1,0,ee7a763b-bcbf-4ff3-89af-eb7965b33515,ee7a763b-bcbf-4ff3-89af-eb7965b33515,1,0,e72b3ae6-00e9-45d7-a4f3-bc8a5a2f5ae4,e72b3ae6-00e9-45d7-a4f3-bc8a5a2f5ae4,1,0,81d900be-ddc1-417f-ae2c-1aacf040de9a,81d900be-ddc1-417f-ae2c-1aacf040de9a,1,0,c65f69ce-be78-4e8d-b91d-293c4108ce77,c65f69ce-be78-4e8d-b91d-293c4108ce77,1,0,521a5717-0b38-401d-bd72-30cee219bd14,521a5717-0b38-401d-bd72-30cee219bd14,1,0,977c30dc-6f27-4931-9fd5-d12ed147e3ec,977c30dc-6f27-4931-9fd5-d12ed147e3ec,1,0,eea4f72e-dd1b-46c7-b270-876a482236b3,eea4f72e-dd1b-46c7-b270-876a482236b3,1,0,25e8d286-dfbb-4fdf-974b-fe3f6f76eac0,25e8d286-dfbb-4fdf-974b-fe3f6f76eac0,1,0,2d249dad-8b4f-462b-ab13-892639a6e071,2d249dad-8b4f-462b-ab13-892639a6e071,1,0,f6249bf4-d2e7-48f3-808f-d776915d14cb,f6249bf4-d2e7-48f3-808f-d776915d14cb,1,0,75f11ecd-c87a-4a14-a7ca-c755f63d7cf8,75f11ecd-c87a-4a14-a7ca-c755f63d7cf8,1,0,883cdeb0-e747-4157-bbe7-0ebc423a82af,883cdeb0-e747-4157-bbe7-0ebc423a82af,1,0,ba62ac73-91da-4dad-abc7-3cf8acf7e315,ba62ac73-91da-4dad-abc7-3cf8acf7e315,1,0,6a71416d-dba1-4883-9264-597ecf9d6270,6a71416d-dba1-4883-9264-597ecf9d6270,1,0,ce3fc202-7893-4d1b-9c8f-1b3349a5c147,ce3fc202-7893-4d1b-9c8f-1b3349a5c147,1,0,6593baab-fce0-49ed-867e-be242bfc08d7,6593baab-fce0-49ed-867e-be242bfc08d7,1,0,403390cf-d3f8-4dfa-b83d-e2fca4ee0dff,403390cf-d3f8-4dfa-b83d-e2fca4ee0dff,1,0,57aed64d-da61-4c18-af21-dab3afdc5c03,57aed64d-da61-4c18-af21-dab3afdc5c03,1,0,452822b4-a590-44db-ab77-d8c01f7300e7,452822b4-a590-44db-ab77-d8c01f7300e7,1,0,62a71ba7-3226-4d10-8cc9-ac9908a00ae7,62a71ba7-3226-4d10-8cc9-ac9908a00ae7,1,0,6ce1d71d-7548-4ee7-be78-21ae23d5a08d,6ce1d71d-7548-4ee7-be78-21ae23d5a08d,1,0,f5ad6743-b19b-44c4-b3d1-2e39d74a4abd,f5ad6743-b19b-44c4-b3d1-2e39d74a4abd,1,0,4b89b7fb-31d9-43c7-9f7e-b0c31fa3331d,4b89b7fb-31d9-43c7-9f7e-b0c31fa3331d,1,0,19b29d30-e395-42f2-b700-7474bb2cdcb7,19b29d30-e395-42f2-b700-7474bb2cdcb7,1,0,b0deb957-624b-4bcb-824c-76aedf1affe9,b0deb957-624b-4bcb-824c-76aedf1affe9,1,0,9934e608-593d-45d0-9df3-539f0c8fc385,9934e608-593d-45d0-9df3-539f0c8fc385,1,0,80da4126-4319-425f-8427-7d60652cf754,80da4126-4319-425f-8427-7d60652cf754,1,0,05236ace-bcdd-4eb8-a1fb-5843ee311d10,05236ace-bcdd-4eb8-a1fb-5843ee311d10,1,0,0f1b284c-6c9e-4799-bc47-3326c4b7bec2,0f1b284c-6c9e-4799-bc47-3326c4b7bec2,1,0,449060fd-4711-4b9e-93e0-11b35c314fb3,449060fd-4711-4b9e-93e0-11b35c314fb3,1,0,e7efa9d5-ea93-4070-87bb-a4d95116d1b4,e7efa9d5-ea93-4070-87bb-a4d95116d1b4,1,0,0614d340-6524-4715-978d-87ab21377e72,0614d340-6524-4715-978d-87ab21377e72,1,0,d47daac5-ec3b-4d4e-8b01-045a37f7074d,d47daac5-ec3b-4d4e-8b01-045a37f7074d,1,0,9d6ed3b9-35cd-47c0-9dfc-732e5066a071,9d6ed3b9-35cd-47c0-9dfc-732e5066a071,1,0,912cbd30-1ed5-4888-a4b6-98e9215b28e9,912cbd30-1ed5-4888-a4b6-98e9215b28e9,1,0,abf093ce-be63-487d-8be4-be282aa475be,abf093ce-be63-487d-8be4-be282aa475be,1,0,7a910ad6-b922-4716-8140-1540d76296b2,7a910ad6-b922-4716-8140-1540d76296b2,1,0,a52450c7-af49-4f92-862f-47015826b447,a52450c7-af49-4f92-862f-47015826b447,1,0,2a19f8a7-4f9f-4e47-a8f4-271a6a13ddc0,2a19f8a7-4f9f-4e47-a8f4-271a6a13ddc0,1,0,3efa225a-db76-479a-b2fa-a40fd0ffb720,3efa225a-db76-479a-b2fa-a40fd0ffb720,1,0,807dd284-31cc-4725-8463-26b31a75d6bc,807dd284-31cc-4725-8463-26b31a75d6bc,1,0,00b7d44c-3f8a-4120-91f3-a63f073d8b37,00b7d44c-3f8a-4120-91f3-a63f073d8b37,1,0,d64f073e-4b58-4020-9233-ca8fbdcf85b2,d64f073e-4b58-4020-9233-ca8fbdcf85b2,1,0,5189beb9-b939-4f97-aca0-c2f3492ac8b9,5189beb9-b939-4f97-aca0-c2f3492ac8b9,1,0,b8931f98-c1d7-4e9b-be43-065064e7ba95,b8931f98-c1d7-4e9b-be43-065064e7ba95,1,0,ab2b472d-97d5-4c33-86fd-e2cdaedf3f3d,ab2b472d-97d5-4c33-86fd-e2cdaedf3f3d,1,0,60848308-931c-4da3-aa4b-37f6fb4b194f,60848308-931c-4da3-aa4b-37f6fb4b194f,1,0,08af8da8-d44b-46f0-a8d3-60421e7b5a1a,08af8da8-d44b-46f0-a8d3-60421e7b5a1a,1,0,54b14504-503b-45f6-9b5d-785b49829425,54b14504-503b-45f6-9b5d-785b49829425,1,0,80d3ee33-1cdc-4af6-85c2-787094526592,80d3ee33-1cdc-4af6-85c2-787094526592,1,0,c8b28660-6cb0-4ef5-85c2-a75da863ba96,c8b28660-6cb0-4ef5-85c2-a75da863ba96,1,0,1cd607b4-49fc-460e-a014-6afe50083b47,1cd607b4-49fc-460e-a014-6afe50083b47,1,0,a215e767-36e9-4408-9d18-7b4be757022a,a215e767-36e9-4408-9d18-7b4be757022a,1,0,a3e262bc-9f0d-480d-a1d1-c2326105d22d,a3e262bc-9f0d-480d-a1d1-c2326105d22d,1,0,8eae0c79-288b-4773-90bb-49299ad45628,8eae0c79-288b-4773-90bb-49299ad45628,1,0,2faa5594-f1b4-4312-b674-82fdf9623105,2faa5594-f1b4-4312-b674-82fdf9623105,1,0,185c1ad3-b5db-49b6-9342-d08e1bf64903,185c1ad3-b5db-49b6-9342-d08e1bf64903,1,0,3c69a4ad-001d-4421-88f6-412e15d710d6,3c69a4ad-001d-4421-88f6-412e15d710d6,1,0,d0373603-5abb-4f7b-8d2f-9f7fb52615aa,d0373603-5abb-4f7b-8d2f-9f7fb52615aa,1,0,f20a35fe-6029-4dc8-b6b4-b098dbce12e8,f20a35fe-6029-4dc8-b6b4-b098dbce12e8,1,0,6a68a08a-ea37-4573-ab9f-ec822f6d250b,6a68a08a-ea37-4573-ab9f-ec822f6d250b,1,0,00e87d04-8104-420b-b2c6-7304889a75b2,00e87d04-8104-420b-b2c6-7304889a75b2,1,0,bde86820-f7bb-463b-97d0-bfa5f8323af0,bde86820-f7bb-463b-97d0-bfa5f8323af0,1,0,289a6aac-dc4e-4fae-8815-853e78d450bb,289a6aac-dc4e-4fae-8815-853e78d450bb,1,0,557e7d89-83ed-45d0-86cc-6e355f14025d,557e7d89-83ed-45d0-86cc-6e355f14025d,1,0,d681b26b-dd8d-46d7-986e-10f05c37a1e4,d681b26b-dd8d-46d7-986e-10f05c37a1e4,1,0,4d3c216e-c04f-4884-8681-1c861c50ce7d,4d3c216e-c04f-4884-8681-1c861c50ce7d,1,0,4a41eee0-c973-4824-a07c-9fcf731f055e,4a41eee0-c973-4824-a07c-9fcf731f055e,1,0,ee756c33-f408-4449-a6bb-3186a0421362,ee756c33-f408-4449-a6bb-3186a0421362,1,0,fbfa8f64-52e4-48f6-b0fb-fd06976dd93d,fbfa8f64-52e4-48f6-b0fb-fd06976dd93d,1,0,6ff66622-4d20-4696-9fe9-4b4faeb21d96,6ff66622-4d20-4696-9fe9-4b4faeb21d96,1,0,46237eec-c206-4d21-883c-27599b9ed38c,46237eec-c206-4d21-883c-27599b9ed38c,1,0,92cbfe14-35c5-440b-9a13-ef8c8ab0630a,92cbfe14-35c5-440b-9a13-ef8c8ab0630a,1,0,8ce759ff-f579-461c-bb1e-9ac2b01e88df,8ce759ff-f579-461c-bb1e-9ac2b01e88df,1,0,8b451909-2c15-48f2-b869-65e7031cc542,8b451909-2c15-48f2-b869-65e7031cc542,1,0,ab6ff81a-56aa-4742-afe4-d7a652e9d2de,ab6ff81a-56aa-4742-afe4-d7a652e9d2de,1,0,7b377fca-4466-476f-9eb2-0b00141103d6,7b377fca-4466-476f-9eb2-0b00141103d6,1,0,9ce5eceb-f366-4035-956e-62721358b154,9ce5eceb-f366-4035-956e-62721358b154,1,0,1685c406-d0cb-4e0a-a3b0-036c8c22942a,1685c406-d0cb-4e0a-a3b0-036c8c22942a,1,0,892dc4c4-a72b-4dbf-af62-9f9ae0e05aa1,892dc4c4-a72b-4dbf-af62-9f9ae0e05aa1,1,0,81db41a6-2580-4a69-b1fd-57cfd48a7efa,81db41a6-2580-4a69-b1fd-57cfd48a7efa,1,0,0db8b3b2-bf24-4006-9897-797084c241ef,0db8b3b2-bf24-4006-9897-797084c241ef,1,0,fd9d34d9-9c9c-4c05-9c08-b93d4b237adf,fd9d34d9-9c9c-4c05-9c08-b93d4b237adf,1,0,381b7dae-6b34-42a7-9fee-2a4af8a1cc18,381b7dae-6b34-42a7-9fee-2a4af8a1cc18,1,0,31e9ca0d-9ae1-4740-a0a6-2739aa29c99f,31e9ca0d-9ae1-4740-a0a6-2739aa29c99f,1,0,20091427-d173-40ca-b2c4-53ee99b0b5ae,20091427-d173-40ca-b2c4-53ee99b0b5ae,1,0,14cbde39-a39a-48e5-9b72-b798a0bcea3f,14cbde39-a39a-48e5-9b72-b798a0bcea3f,1,0,56871c10-e3af-4679-afad-3baa910d73bb,56871c10-e3af-4679-afad-3baa910d73bb,1,0,f81b51c5-57e4-41f8-9ad5-3d2717351b95,f81b51c5-57e4-41f8-9ad5-3d2717351b95,1,0,3c09f0cd-fbec-46ae-95b0-a00cc53c07ef,3c09f0cd-fbec-46ae-95b0-a00cc53c07ef,1,0,de0a39e0-d37d-47c6-a019-e44836edc8d1,de0a39e0-d37d-47c6-a019-e44836edc8d1,1,0,1fdcc1e7-ad53-409e-ba13-84c6429740cd,1fdcc1e7-ad53-409e-ba13-84c6429740cd,1,0,71d544bf-15c1-4581-8baa-ac126308425c,71d544bf-15c1-4581-8baa-ac126308425c,1,0,1bd0b688-d0fb-4ca2-85aa-4bd82b72ccc2,1bd0b688-d0fb-4ca2-85aa-4bd82b72ccc2,1,0,7acfe30e-73cb-465a-88f2-92b7275dc49b,7acfe30e-73cb-465a-88f2-92b7275dc49b,1,0,8e387dac-5029-49da-a013-355df0a51a44,8e387dac-5029-49da-a013-355df0a51a44,1,0,13859664-8307-40e8-855b-557b9cf2f1ec,13859664-8307-40e8-855b-557b9cf2f1ec,1,0,e4397fba-507f-497c-9414-7d08ccd4d799,e4397fba-507f-497c-9414-7d08ccd4d799,1,0,794f5fb5-3b8f-4f45-9250-7a3b9d1db383,794f5fb5-3b8f-4f45-9250-7a3b9d1db383,1,0,f7a89bfc-e3c9-4894-a2df-6c229b4e0fd8,f7a89bfc-e3c9-4894-a2df-6c229b4e0fd8,1,0,1e8b70ce-27fc-418f-b3f3-e6efbce9f7a2,1e8b70ce-27fc-418f-b3f3-e6efbce9f7a2,1,0,d915d338-3e4c-45c3-aef5-a07cf41b05f6,d915d338-3e4c-45c3-aef5-a07cf41b05f6,1,0,978640a2-5c4b-4e21-857e-34f00840fba8,978640a2-5c4b-4e21-857e-34f00840fba8,1,0,da2913e3-a29b-423f-9aae-08fed56a7d90,da2913e3-a29b-423f-9aae-08fed56a7d90,1,0,149e72b8-cc03-4b4f-8ca4-07987600c34d,149e72b8-cc03-4b4f-8ca4-07987600c34d,1,0,7649bd7b-fe8c-4338-80fc-153160a5e538,7649bd7b-fe8c-4338-80fc-153160a5e538,1,0,7779cd6d-8fa1-49cb-9bbc-9dfd0979f3f4,7779cd6d-8fa1-49cb-9bbc-9dfd0979f3f4,1,0,3dec1ae7-90bb-45ab-aa04-48cfbc14742e,3dec1ae7-90bb-45ab-aa04-48cfbc14742e,1,0,6137605e-4850-44ec-b4ee-048bd8e0ec3a,6137605e-4850-44ec-b4ee-048bd8e0ec3a,1,0,ee28aa9b-0f31-4d8b-8444-43b8bc88bd23,ee28aa9b-0f31-4d8b-8444-43b8bc88bd23,1,0,0e6e9372-beb4-478e-9428-71b19a60739b,0e6e9372-beb4-478e-9428-71b19a60739b,1,0,32b11498-542f-46b2-829f-1525936ab7fa,32b11498-542f-46b2-829f-1525936ab7fa,1,0,64afa916-4750-4008-8c6c-2a470fb11283,64afa916-4750-4008-8c6c-2a470fb11283,1,0,f4a85bfb-40c7-4f81-af32-d07b96c53ad0,f4a85bfb-40c7-4f81-af32-d07b96c53ad0,1,0,35354abc-9a76-4ee8-8796-c24b37365ea0,35354abc-9a76-4ee8-8796-c24b37365ea0,1,0,7078977f-31bf-427e-ac37-e309d81fe999,7078977f-31bf-427e-ac37-e309d81fe999,1,0,bb39ae51-be82-4bb5-a30e-2bf2b53be59e,bb39ae51-be82-4bb5-a30e-2bf2b53be59e,1,0,d8854555-9e15-4d82-a1fd-656a848a8e8a,d8854555-9e15-4d82-a1fd-656a848a8e8a,1,0,53191842-ea05-4491-84d7-071cd201992d,53191842-ea05-4491-84d7-071cd201992d,1,0,86c70449-4cf7-4baf-9742-b82b134ed929,86c70449-4cf7-4baf-9742-b82b134ed929,1,0,af3b1881-163a-4c07-a1d9-77ceadf59c77,af3b1881-163a-4c07-a1d9-77ceadf59c77,1,0,b78be6fb-7db8-48c8-ba7b-aab1fea34890,b78be6fb-7db8-48c8-ba7b-aab1fea34890,1,0,bd27276a-e80c-4135-b341-f99a816ffe86,bd27276a-e80c-4135-b341-f99a816ffe86,1,0,35306678-147c-4ad1-a3c6-c80a11afa22f,35306678-147c-4ad1-a3c6-c80a11afa22f,1,0,0da75726-ae71-4d83-a696-a774c787a8a2,0da75726-ae71-4d83-a696-a774c787a8a2,1,0,5b30b0e9-f986-49b8-8668-5bb0e09f0cfe,5b30b0e9-f986-49b8-8668-5bb0e09f0cfe,1,0,896a7267-0198-4cbb-b6e6-7aa157c0cc61,896a7267-0198-4cbb-b6e6-7aa157c0cc61,1,0,2005bf54-219b-4111-bff1-e12e2c6dca3e,2005bf54-219b-4111-bff1-e12e2c6dca3e,1,0,abab8f73-d705-4350-b44d-f912649a2190,abab8f73-d705-4350-b44d-f912649a2190,1,0,20c9c25c-f8c9-429f-84bd-543cb809abef,20c9c25c-f8c9-429f-84bd-543cb809abef,1,0,dc5f451e-3275-43a8-9f48-45b83220d461,dc5f451e-3275-43a8-9f48-45b83220d461,1,0,028f5e81-61df-4d13-876d-781c5fd18ee6,028f5e81-61df-4d13-876d-781c5fd18ee6,1,0,3cbb59ef-7f64-4590-8a54-ba01e78283c3,3cbb59ef-7f64-4590-8a54-ba01e78283c3,1,0,a5b83672-2ead-4d0a-a4e5-ddd991f1addc,a5b83672-2ead-4d0a-a4e5-ddd991f1addc,1,0,388eb513-fadb-40cd-8a7b-33b904dd758e,388eb513-fadb-40cd-8a7b-33b904dd758e,1,0,0613c6aa-e1fe-4632-a396-a17ec773158f,0613c6aa-e1fe-4632-a396-a17ec773158f,1,0,1a330987-4c79-4ab7-b250-db8d32c78751,1a330987-4c79-4ab7-b250-db8d32c78751,1,0,555062ed-9a04-41d8-877f-0a667e9a08cd,555062ed-9a04-41d8-877f-0a667e9a08cd,1,0,5b1db523-b5cb-4ff8-8662-5feeb4282b4a,5b1db523-b5cb-4ff8-8662-5feeb4282b4a,1,0,ac160e1c-fef7-4625-84e0-964b397f6bdb,ac160e1c-fef7-4625-84e0-964b397f6bdb,1,0,b8946d9c-dda8-4b94-8cbf-db62b647c53e,b8946d9c-dda8-4b94-8cbf-db62b647c53e,1,0,24215916-7732-4030-9f88-163f644e94f7,24215916-7732-4030-9f88-163f644e94f7,1,0,69697945-9748-4cea-a20f-e244b46de2e8,69697945-9748-4cea-a20f-e244b46de2e8,1,0,68538fd1-262c-43ea-b09f-8a66643a0062,68538fd1-262c-43ea-b09f-8a66643a0062,1,0,d042a8e1-a7b9-4f26-abc4-d618bc73e9f5,d042a8e1-a7b9-4f26-abc4-d618bc73e9f5,1,0,82ad24cc-d9f8-440b-a720-e204101d85da,82ad24cc-d9f8-440b-a720-e204101d85da,1,0,aa63c001-c3da-4179-8fd8-fe2ff510511e,aa63c001-c3da-4179-8fd8-fe2ff510511e,1,0,b2e894b0-6443-4a52-95b6-6b564f809680,b2e894b0-6443-4a52-95b6-6b564f809680,1,0,8010065f-aec8-4768-85ec-9eb7b2b01e7e,8010065f-aec8-4768-85ec-9eb7b2b01e7e,1,0,a44348cb-e20c-4afd-8483-3b9c735b352c,a44348cb-e20c-4afd-8483-3b9c735b352c,1,0,ebfe4c74-6e16-4b64-8a52-cea95c446903,ebfe4c74-6e16-4b64-8a52-cea95c446903,1,0,ea9ed37c-7f58-43a8-990c-f1feb5d2d275,ea9ed37c-7f58-43a8-990c-f1feb5d2d275,1,0,d912e472-9553-4b96-8b16-7aaff6c14239,d912e472-9553-4b96-8b16-7aaff6c14239,1,0,b04018b5-a74d-43c9-8519-6cc8aa23fe09,b04018b5-a74d-43c9-8519-6cc8aa23fe09,1,0,8f5af22e-3e73-4a4f-b91e-eccd0f5084fd,8f5af22e-3e73-4a4f-b91e-eccd0f5084fd,1,0,9283277f-2b75-4c3a-810a-8d4071b3afcc,9283277f-2b75-4c3a-810a-8d4071b3afcc,1,0,d03d5b18-57a2-43c0-99ea-8ad9d5788179,d03d5b18-57a2-43c0-99ea-8ad9d5788179,1,0,c491a7fc-14f9-498a-b7dd-575dfc66878e,c491a7fc-14f9-498a-b7dd-575dfc66878e,1,0,db15f8eb-4736-4b47-9cee-3e6883f0888c,db15f8eb-4736-4b47-9cee-3e6883f0888c,1,0,59064eb2-2770-4f1c-96bd-801926fe68ef,59064eb2-2770-4f1c-96bd-801926fe68ef,1,0,df81cc63-26f2-4e66-bf0b-fd083a6a7d7b,df81cc63-26f2-4e66-bf0b-fd083a6a7d7b,1,0,8a8848b8-345a-452d-bf95-28f9c91c7e95,8a8848b8-345a-452d-bf95-28f9c91c7e95,1,0,a9441693-87ca-4157-98e1-63375852755c,a9441693-87ca-4157-98e1-63375852755c,1,0,6303ea55-e8ed-4acc-9717-941eefafc2a9,6303ea55-e8ed-4acc-9717-941eefafc2a9,1,0,5b4e1b83-fc10-4acc-bef7-81c73dbbc453,5b4e1b83-fc10-4acc-bef7-81c73dbbc453,1,0,d0b17206-3949-4513-a47f-02e1a8ba369a,d0b17206-3949-4513-a47f-02e1a8ba369a,1,0,cb4f20d4-13e6-4c27-b491-da7931f4bf05,cb4f20d4-13e6-4c27-b491-da7931f4bf05,1,0,6b2340d7-687f-43a3-8eb8-8ddb86712466,6b2340d7-687f-43a3-8eb8-8ddb86712466,1,0,40b08a20-51a3-438b-ba54-466917ea809f,40b08a20-51a3-438b-ba54-466917ea809f,1,0,9846e2f6-d82a-42a6-bf50-2a9cdf750a8f,9846e2f6-d82a-42a6-bf50-2a9cdf750a8f,1,0,9328da5c-4689-4a60-8136-ae9eac46ab38,9328da5c-4689-4a60-8136-ae9eac46ab38,1,0,ca5d586f-81bb-40ee-b3bd-de854857c984,ca5d586f-81bb-40ee-b3bd-de854857c984,1,0,af22406b-daac-475d-b6a9-577452502b84,af22406b-daac-475d-b6a9-577452502b84,1,0,7a925960-a579-4b06-90e0-5121dc774024,7a925960-a579-4b06-90e0-5121dc774024,1,0,32c10512-7bb8-423b-9503-ab2fa41386a4,32c10512-7bb8-423b-9503-ab2fa41386a4,1,0,888edfc4-8140-4675-b267-c32bf1d8d29d,888edfc4-8140-4675-b267-c32bf1d8d29d,1,0,2abbd53a-0ead-42af-8df6-fde663aea300,2abbd53a-0ead-42af-8df6-fde663aea300,1,0,24611bf9-5492-443a-935c-a0058e86493f,24611bf9-5492-443a-935c-a0058e86493f,1,0,42641296-64da-46e0-a407-de2d492f9c90,42641296-64da-46e0-a407-de2d492f9c90,1,0,b834af0b-086c-445d-a271-7e178c324551,b834af0b-086c-445d-a271-7e178c324551,1,0,ec34befe-3c0b-4a75-b943-840c52e7dda5,ec34befe-3c0b-4a75-b943-840c52e7dda5,1,0,7f18eb86-e9ac-4cb8-a9aa-389f61dff582,7f18eb86-e9ac-4cb8-a9aa-389f61dff582,1,0,b5e81952-e469-4f26-b8d2-90e7d9e7bc1d,b5e81952-e469-4f26-b8d2-90e7d9e7bc1d,1,0,6733f1bd-7878-4a33-8995-c07526e87c1a,6733f1bd-7878-4a33-8995-c07526e87c1a,1,0,f7e73257-fae1-465a-ae74-faaa0273a416,f7e73257-fae1-465a-ae74-faaa0273a416,1,0,73f89524-dbe8-426f-8ee6-1277eb1967cc,73f89524-dbe8-426f-8ee6-1277eb1967cc,1,0,ee7d970c-cef7-4740-a357-1fe78f88a6e6,ee7d970c-cef7-4740-a357-1fe78f88a6e6,1,0,ff18803b-4c3a-4720-a718-7547f04c6e2f,ff18803b-4c3a-4720-a718-7547f04c6e2f,1,0,0e0670d6-d8f7-4728-bd1b-f016fffa0570,0e0670d6-d8f7-4728-bd1b-f016fffa0570,1,0,13beb01d-dd08-4a6d-863b-651e70bbf51f,13beb01d-dd08-4a6d-863b-651e70bbf51f,1,0,a53f6e85-fbf7-4fb1-9301-d63e812fe16c,a53f6e85-fbf7-4fb1-9301-d63e812fe16c,1,0,57a0f5f3-6573-4b35-af25-cea3a25641f1,57a0f5f3-6573-4b35-af25-cea3a25641f1,1,0,0b7c4cb7-5126-4b5e-8941-cd56eaef76a0,0b7c4cb7-5126-4b5e-8941-cd56eaef76a0,1,0,144d5498-bb61-4bec-bef3-85a5a4aec3d5,144d5498-bb61-4bec-bef3-85a5a4aec3d5,1,0,ecaa0af8-549c-4c07-82ff-1c4e02ff15b8,ecaa0af8-549c-4c07-82ff-1c4e02ff15b8,1,0,45a8c780-c067-40d7-bbe9-81f854aacf7a,45a8c780-c067-40d7-bbe9-81f854aacf7a,1,0,57885cac-059a-4a08-aa2c-43b116d2c777,57885cac-059a-4a08-aa2c-43b116d2c777,1,0,c0403df4-b1f2-4d7e-adb5-9ed881c1359b,c0403df4-b1f2-4d7e-adb5-9ed881c1359b,1,0,56b570b1-93b0-468a-9672-9c71113753f3,56b570b1-93b0-468a-9672-9c71113753f3,1,0,e7b0ae70-0192-456c-9dc5-e66049fa9df2,e7b0ae70-0192-456c-9dc5-e66049fa9df2,1,0,68944d09-618e-4fa3-a7af-8c84218e0ac7,68944d09-618e-4fa3-a7af-8c84218e0ac7,1,0,91b12ce3-e8ba-4c9d-9daa-1d5532500314,91b12ce3-e8ba-4c9d-9daa-1d5532500314,1,0,733dc291-0bef-4fe8-ac9f-63440f0c2ad0,733dc291-0bef-4fe8-ac9f-63440f0c2ad0,1,0,5b7b7dc3-dbef-4854-9395-30a3ae4d751c,5b7b7dc3-dbef-4854-9395-30a3ae4d751c,1,0,cb57aabc-eeef-42b4-9bc2-873cebd9618c,cb57aabc-eeef-42b4-9bc2-873cebd9618c,1,0,2fcd2c85-6778-42fa-9bdd-a6ba47497ec0,2fcd2c85-6778-42fa-9bdd-a6ba47497ec0,1,0,52f30ed7-aa16-4ce2-9684-e50229ab0015,52f30ed7-aa16-4ce2-9684-e50229ab0015,1,0,79c2e2bd-f923-42ec-8bdc-3e517e08ee7c,79c2e2bd-f923-42ec-8bdc-3e517e08ee7c,1,0,0526492c-be48-4c84-8d68-19fa1c7e9d6e,0526492c-be48-4c84-8d68-19fa1c7e9d6e,1,0,54ecaf7b-9bc5-483c-96e1-270bcd323590,54ecaf7b-9bc5-483c-96e1-270bcd323590,1,0,2a1f77ba-fa2e-4281-8e68-7ec4ca0261b7,2a1f77ba-fa2e-4281-8e68-7ec4ca0261b7,1,0,58f6f8fa-7473-40f5-973a-6279335d8f33,58f6f8fa-7473-40f5-973a-6279335d8f33,1,0,ec0c3187-de61-4bc8-a52a-7617f47ffb6d,ec0c3187-de61-4bc8-a52a-7617f47ffb6d,1,0,1e71ec59-55a4-45e8-a8c9-f70c2cb56589,1e71ec59-55a4-45e8-a8c9-f70c2cb56589,1,0,fa3632fe-185b-49aa-85ae-dfb721835d40,fa3632fe-185b-49aa-85ae-dfb721835d40,1,0,a4f15108-477c-465e-aaea-cb495ef52cf5,a4f15108-477c-465e-aaea-cb495ef52cf5,1,0,9cda5c2c-f401-4f63-b445-cef160296e48,9cda5c2c-f401-4f63-b445-cef160296e48,1,0,e8ae4a26-3127-43ae-af7a-c2e278d2611d,e8ae4a26-3127-43ae-af7a-c2e278d2611d,1,0,b923c78f-d074-41b4-b832-086686258f19,b923c78f-d074-41b4-b832-086686258f19,1,0,8ff96413-6fdd-4b8d-a181-ea0d8633defc,8ff96413-6fdd-4b8d-a181-ea0d8633defc,1,0,54604ed2-766b-4308-b99e-447817d82799,54604ed2-766b-4308-b99e-447817d82799,1,0,7abdb07b-edbc-4c3b-aa53-afaa92dc9071,7abdb07b-edbc-4c3b-aa53-afaa92dc9071,1,0,f48b4475-2cd9-41df-962a-6529f84985ca,f48b4475-2cd9-41df-962a-6529f84985ca,1,0,2fbfe405-48e6-4abf-99c2-7f1f66a62b48,2fbfe405-48e6-4abf-99c2-7f1f66a62b48,1,0,5e6637c7-19b5-4ac2-a8e9-d119e49f444e,5e6637c7-19b5-4ac2-a8e9-d119e49f444e,1,0,bf94feb9-edf7-4df8-b5f5-805613663a0a,bf94feb9-edf7-4df8-b5f5-805613663a0a,1,0,6d852a13-c85e-4e84-8396-f91c1ed0596e,6d852a13-c85e-4e84-8396-f91c1ed0596e,1,0,9c2d5313-a4fd-417e-a340-ad4980d0028b,9c2d5313-a4fd-417e-a340-ad4980d0028b,1,0,4fb4a280-9426-4c41-a9ba-11f9d01a0740,4fb4a280-9426-4c41-a9ba-11f9d01a0740,1,0,1591ee7e-870c-4bf7-9450-be84f1b2506f,1591ee7e-870c-4bf7-9450-be84f1b2506f,1,0,8f088f33-92d7-4e35-915d-6cda1129dd80,8f088f33-92d7-4e35-915d-6cda1129dd80,1,0,9a8578a2-8a92-4ab3-a480-173340f8b34a,9a8578a2-8a92-4ab3-a480-173340f8b34a,1,0,4889d27b-435b-4059-a34d-6afdf3c77fa3,4889d27b-435b-4059-a34d-6afdf3c77fa3,1,0,4ebf0988-ccc3-440c-bd0f-2d01636bd730,4ebf0988-ccc3-440c-bd0f-2d01636bd730,1,0,c1be2a02-53b8-4c28-92b2-b6e0c83ab452,c1be2a02-53b8-4c28-92b2-b6e0c83ab452,1,0,4b54d626-dc59-4e49-a708-0a7f98833b9a,4b54d626-dc59-4e49-a708-0a7f98833b9a,1,0,1c90a423-ef1b-42dc-a43b-1fda89672481,1c90a423-ef1b-42dc-a43b-1fda89672481,1,0,095cf2d6-5a7c-452d-8d60-991afb6e52bd,095cf2d6-5a7c-452d-8d60-991afb6e52bd,1,0,f9213a70-bfd6-464f-b28b-ed35bdf351c0,f9213a70-bfd6-464f-b28b-ed35bdf351c0,1,0,ca5957af-69c9-4640-b9a9-b241c4f9eaa7,ca5957af-69c9-4640-b9a9-b241c4f9eaa7,1,0,7e32c295-a769-4cff-a3eb-992f7031475f,7e32c295-a769-4cff-a3eb-992f7031475f,1,0,eb81610a-eb2f-4068-ba74-75e0f5bbace8,eb81610a-eb2f-4068-ba74-75e0f5bbace8,1,0,21826316-0b49-4034-a49e-6d34c15ceb5c,21826316-0b49-4034-a49e-6d34c15ceb5c,1,0,3abffa47-8d47-4173-897b-708e1a06ef39,3abffa47-8d47-4173-897b-708e1a06ef39,1,0,0cf3d615-76a1-428d-9d25-0d7fdf09e4ae,0cf3d615-76a1-428d-9d25-0d7fdf09e4ae,1,0,5a398637-a06c-4442-9093-a864fa7f049f,5a398637-a06c-4442-9093-a864fa7f049f,1,0,38692186-a62a-42d1-87cd-7dbc6d4816ed,38692186-a62a-42d1-87cd-7dbc6d4816ed,1,0,6cfcdb89-ccb2-45fe-a7b1-5a29ccd6c5ae,6cfcdb89-ccb2-45fe-a7b1-5a29ccd6c5ae,1,0,3a28cea9-7fd7-4834-ab89-2a74331a64e3,3a28cea9-7fd7-4834-ab89-2a74331a64e3,1,0,0f881709-4520-4f18-af9d-cf08757693ff,0f881709-4520-4f18-af9d-cf08757693ff,1,0,c5151ca9-5103-42b2-8573-273c15416db8,c5151ca9-5103-42b2-8573-273c15416db8,1,0,fe4aa694-76c4-49c9-96ce-a2476f4ff58b,fe4aa694-76c4-49c9-96ce-a2476f4ff58b,1,0,ba8c43ad-678a-4b18-8bbe-5a1b12d19b74,ba8c43ad-678a-4b18-8bbe-5a1b12d19b74,1,0,115a6019-ef87-4126-8ebf-070c1e882940,115a6019-ef87-4126-8ebf-070c1e882940,1,0,162ce023-b2e1-41dc-bcaf-b8e30caccce0,162ce023-b2e1-41dc-bcaf-b8e30caccce0,1,0,52bdd3cc-7103-4dbf-a3c3-dd46cf03da12,52bdd3cc-7103-4dbf-a3c3-dd46cf03da12,1,0,c13fb1cd-fe72-48a6-b383-55b6323619ce,c13fb1cd-fe72-48a6-b383-55b6323619ce,1,0,956fc8ee-96be-4309-b1e8-209372f151ab,956fc8ee-96be-4309-b1e8-209372f151ab,1,0,526c688e-a4d4-45f7-8bba-b8ceff38fe27,526c688e-a4d4-45f7-8bba-b8ceff38fe27,1,0,67efa786-312f-4c9c-b970-0320e92069af,67efa786-312f-4c9c-b970-0320e92069af,1,0,12f85e09-1190-4483-b531-630ab718db7f,12f85e09-1190-4483-b531-630ab718db7f,1,0,52f4453e-e968-4290-a79a-470f68fbd07f,52f4453e-e968-4290-a79a-470f68fbd07f,1,0,5b952e35-1037-4447-8293-6d8889692c8b,5b952e35-1037-4447-8293-6d8889692c8b,1,0,05bc8b4e-8c90-4502-8b16-7b1e7625d569,05bc8b4e-8c90-4502-8b16-7b1e7625d569,1,0,ce34d88d-3017-4197-a962-ea23a6a96d32,ce34d88d-3017-4197-a962-ea23a6a96d32,1,0,2cbc16da-aa67-4ad6-82f8-fa6922447be6,2cbc16da-aa67-4ad6-82f8-fa6922447be6,1,0,19d7a1ba-c343-4575-95da-53dac6d4b2cb,19d7a1ba-c343-4575-95da-53dac6d4b2cb,1,0,6cc8b3a0-3377-4b39-b6b0-69c862a15465,6cc8b3a0-3377-4b39-b6b0-69c862a15465,1,0,acb193f4-52e5-4572-a79b-b825a2f6525f,acb193f4-52e5-4572-a79b-b825a2f6525f,1,0,5d46f719-e468-48e2-b4ec-acb85c710451,5d46f719-e468-48e2-b4ec-acb85c710451,1,0,9fb13bfe-80c7-43c3-b0da-9185ab197ce2,9fb13bfe-80c7-43c3-b0da-9185ab197ce2,1,0,cd80a520-1d1c-4d80-8a4a-360ac1ca98d8,cd80a520-1d1c-4d80-8a4a-360ac1ca98d8,1,0,e9aef0c8-9dc4-4c4a-8288-8b2d9860624d,e9aef0c8-9dc4-4c4a-8288-8b2d9860624d,1,0,733d4494-01e2-46f5-a49b-f289267a90c9,733d4494-01e2-46f5-a49b-f289267a90c9,1,0,5422610d-b92c-4213-a58c-8db067d93b66,5422610d-b92c-4213-a58c-8db067d93b66,1,0,8f59a635-9e0e-470d-8fda-a47a262a59c2,8f59a635-9e0e-470d-8fda-a47a262a59c2,1,0,ffb50eb9-149a-46ec-9472-d8f20ad09810,ffb50eb9-149a-46ec-9472-d8f20ad09810,1,0,5ae3bba3-dc98-4470-a73d-3bd951c0a3f2,5ae3bba3-dc98-4470-a73d-3bd951c0a3f2,1,0,7a6449e2-e90a-4720-a769-192284ef69c1,7a6449e2-e90a-4720-a769-192284ef69c1,1,0,02118b98-2349-46b1-a328-d6e2b5781f7e,02118b98-2349-46b1-a328-d6e2b5781f7e,1,0,67de9cbb-5c80-4cff-bfbe-269a958e08e6,67de9cbb-5c80-4cff-bfbe-269a958e08e6,1,0,2228a457-6805-41ee-85af-5ebca9568bf4,2228a457-6805-41ee-85af-5ebca9568bf4,1,0,96b71795-e230-4ecb-b98d-4feb3f8b9662,96b71795-e230-4ecb-b98d-4feb3f8b9662,1,0,1e14d062-1d5a-4939-8ce6-4d9514990376,1e14d062-1d5a-4939-8ce6-4d9514990376,1,0,f86f24d2-9a83-47ae-9d95-b49a0a295770,f86f24d2-9a83-47ae-9d95-b49a0a295770,1,0,37986729-a275-4e86-8613-faee9a4f2525,37986729-a275-4e86-8613-faee9a4f2525,1,0,5814cb3a-8f7c-45b4-a590-b69d4912120f,5814cb3a-8f7c-45b4-a590-b69d4912120f,1,0,f06c8396-65ec-4ece-aed0-d45b2d8969b5,f06c8396-65ec-4ece-aed0-d45b2d8969b5,1,0,1faeab7f-7bd7-496d-8882-4aab6c425854,1faeab7f-7bd7-496d-8882-4aab6c425854,1,0,af922fb8-a99c-4154-89fe-d30a4d13024a,af922fb8-a99c-4154-89fe-d30a4d13024a,1,0,24c2f463-2bbb-471f-a409-507afad52caf,24c2f463-2bbb-471f-a409-507afad52caf,1,0,cbb07013-9ae1-43ec-8142-a724d788cb67,cbb07013-9ae1-43ec-8142-a724d788cb67,1,0,2403ac84-b513-4aa0-9a68-8d1ad705ce24,2403ac84-b513-4aa0-9a68-8d1ad705ce24,1,0,952b49e0-e1a1-4130-8fb2-083e3988255c,952b49e0-e1a1-4130-8fb2-083e3988255c,1,0,367b227f-f66e-4cec-9fc3-850bca8bc6c8,367b227f-f66e-4cec-9fc3-850bca8bc6c8,1,0,1a3a8a3a-dc34-4491-883d-57c3fb69840a,1a3a8a3a-dc34-4491-883d-57c3fb69840a,1,0,7fcb9d79-1144-4099-8d7f-309d3bf045a5,7fcb9d79-1144-4099-8d7f-309d3bf045a5,1,0,db418313-8583-48a9-9fec-e2c5de4fdf76,db418313-8583-48a9-9fec-e2c5de4fdf76,1,0,6277a3b5-b158-4b58-a92b-5efdf2dabac0,6277a3b5-b158-4b58-a92b-5efdf2dabac0,1,0,65a50026-88e7-45dd-bb0c-f212218ca093,65a50026-88e7-45dd-bb0c-f212218ca093,1,0,ed9e5fbe-1db8-4fb9-a9fa-bb1927cae196,ed9e5fbe-1db8-4fb9-a9fa-bb1927cae196,1,0,1dd2b2c4-00aa-4029-ba32-fe82aa5c6cbe,1dd2b2c4-00aa-4029-ba32-fe82aa5c6cbe,1,0,2f4ea53a-c84d-4d5f-ae7a-817a20ccd96a,2f4ea53a-c84d-4d5f-ae7a-817a20ccd96a,1,0,b2a39c8a-d884-4dfe-a593-e6788dabbd6b,b2a39c8a-d884-4dfe-a593-e6788dabbd6b,1,0,3d0afdb2-ab8f-43c0-920a-88ed85545b2f,3d0afdb2-ab8f-43c0-920a-88ed85545b2f,1,0,17477f72-0622-445c-9cb7-2c5a5a65bbe0,17477f72-0622-445c-9cb7-2c5a5a65bbe0,1,0,01a1fd57-6c09-4a5b-9f75-da4366159423,01a1fd57-6c09-4a5b-9f75-da4366159423,1,0,71d79b25-3682-4f2c-b6b2-a307e3e72844,71d79b25-3682-4f2c-b6b2-a307e3e72844,1,0,45c1ed0d-202e-4289-820f-e1de0f544386,45c1ed0d-202e-4289-820f-e1de0f544386,1,0,e889e80f-97c9-43c6-8268-d652764fcafb,e889e80f-97c9-43c6-8268-d652764fcafb,1,0,4eb48d3a-e2d5-4db5-b08b-4b6ccc701f77,4eb48d3a-e2d5-4db5-b08b-4b6ccc701f77,1,0,95ccaaf2-f6ca-4540-8a39-3c90121c4236,95ccaaf2-f6ca-4540-8a39-3c90121c4236,1,0,7c920b8b-1dbf-4f7e-99af-1ca784a59a64,7c920b8b-1dbf-4f7e-99af-1ca784a59a64,1,0,f47a9bec-2a9f-4955-a432-acb63a5b0e46,f47a9bec-2a9f-4955-a432-acb63a5b0e46,1,0,1ba73b6b-cb72-4370-a268-279dcd7a54b9,1ba73b6b-cb72-4370-a268-279dcd7a54b9,1,0,49de6b63-a845-4b5a-9818-18a3e0bb6fe8,49de6b63-a845-4b5a-9818-18a3e0bb6fe8,1,0,b787818e-5572-4ef2-ba54-1e9b69569824,b787818e-5572-4ef2-ba54-1e9b69569824,1,0,395b43e4-c18b-4f68-b99c-aed8d4b8cac9,395b43e4-c18b-4f68-b99c-aed8d4b8cac9,1,0,231d7b21-c00c-4782-b610-d56593be436f,231d7b21-c00c-4782-b610-d56593be436f,1,0,79250d1a-77ff-4015-a5b5-83460b1611e2,79250d1a-77ff-4015-a5b5-83460b1611e2,1,0,60018ee0-71ec-4975-a95d-f6f188748ff2,60018ee0-71ec-4975-a95d-f6f188748ff2,1,0,68d35468-279a-43ef-9d71-fed44a792177,68d35468-279a-43ef-9d71-fed44a792177,1,0,77bec3d8-582a-4156-861b-4902008f014c,77bec3d8-582a-4156-861b-4902008f014c,1,0,bf3304c0-5078-478f-bbf8-6178264c5f26,bf3304c0-5078-478f-bbf8-6178264c5f26,1,0,2ad1caba-7a89-4389-934f-419970260961,2ad1caba-7a89-4389-934f-419970260961,1,0,bfc1a708-662d-4dc1-82b4-7b09bb1b0751,bfc1a708-662d-4dc1-82b4-7b09bb1b0751,1,0,f88c4a72-368c-4f45-bb2c-d18f214a5079,f88c4a72-368c-4f45-bb2c-d18f214a5079,1,0,611876ba-7e6e-40c3-89a9-bb9b19cd1bfb,611876ba-7e6e-40c3-89a9-bb9b19cd1bfb,1,0,9dc2e313-c086-4fd9-83e8-911859ef480d,9dc2e313-c086-4fd9-83e8-911859ef480d,1,0,8a14ced0-9e45-4b3a-a135-11413c3a33c2,8a14ced0-9e45-4b3a-a135-11413c3a33c2,1,0,af7377db-0b27-42f7-a639-e2feb4015412,af7377db-0b27-42f7-a639-e2feb4015412,1,0,e1a200e2-64f3-434c-ae0d-5f24b9d65c9b,e1a200e2-64f3-434c-ae0d-5f24b9d65c9b,1,0,ab7db146-f26a-418a-8c45-e2513bf84e08,ab7db146-f26a-418a-8c45-e2513bf84e08,1,0,ece3bd8d-6616-44d5-9c14-6b3557738872,ece3bd8d-6616-44d5-9c14-6b3557738872,1,0,fbf754c3-ab89-4704-b01a-67f8bcea0c7c,fbf754c3-ab89-4704-b01a-67f8bcea0c7c,1,0,3b0afd55-f08d-4d59-b6df-d7c4d1c52446,3b0afd55-f08d-4d59-b6df-d7c4d1c52446,1,0,4893ad50-df19-4d86-9469-40491ba733c9,4893ad50-df19-4d86-9469-40491ba733c9,1,0,25a65c1e-8e67-4135-843d-1e0da72dfd64,25a65c1e-8e67-4135-843d-1e0da72dfd64,1,0,5724fbd5-4d91-4e6d-ae24-8925a4d83c83,5724fbd5-4d91-4e6d-ae24-8925a4d83c83,1,0,29a6416e-b0f5-4111-8f86-1ba80244e73a,29a6416e-b0f5-4111-8f86-1ba80244e73a,1,0,0f49085a-9b83-4256-be60-f341b2ef132e,0f49085a-9b83-4256-be60-f341b2ef132e,1,0,f44c66d6-cfe2-482f-a921-de3db3cd09ea,f44c66d6-cfe2-482f-a921-de3db3cd09ea,1,0,5ec1b7af-f4bc-4ec1-8f43-85c4f9d146a0,5ec1b7af-f4bc-4ec1-8f43-85c4f9d146a0,1,0,c521bd61-386e-41c8-bcc3-29d54b63cc32,c521bd61-386e-41c8-bcc3-29d54b63cc32,1,0,d46e3424-6d30-4229-9a56-ab256517534a,d46e3424-6d30-4229-9a56-ab256517534a,1,0,09d3633d-8e8c-47f3-8f34-d70eb94577e1,09d3633d-8e8c-47f3-8f34-d70eb94577e1,1,0,fe868143-363b-4da1-889b-98d4dd10a1fd,fe868143-363b-4da1-889b-98d4dd10a1fd,1,0,b791a549-ae94-46f2-8f04-771fdeb4cc54,b791a549-ae94-46f2-8f04-771fdeb4cc54,1,0,4681cb63-c581-4c08-b18c-016d9b478ef2,4681cb63-c581-4c08-b18c-016d9b478ef2,1,0,04055821-03ce-4049-af2c-8670c80517f6,04055821-03ce-4049-af2c-8670c80517f6,1,0,0101305d-62eb-4802-9cd4-d615a518d842,0101305d-62eb-4802-9cd4-d615a518d842,1,0,898d2ba7-631a-4e7a-9bdf-cd2ef411e57a,898d2ba7-631a-4e7a-9bdf-cd2ef411e57a,1,0,bf1fc624-60d7-4a04-bb3a-b6e2882bebfe,bf1fc624-60d7-4a04-bb3a-b6e2882bebfe,1,0,7c424424-9660-462d-9cf2-4c1e6bd284fa,7c424424-9660-462d-9cf2-4c1e6bd284fa,1,0,e118f957-ab2c-473b-ab64-37032f727416,e118f957-ab2c-473b-ab64-37032f727416,1,0,e770e26e-a3a4-487d-b3bb-aeb63d8b7323,e770e26e-a3a4-487d-b3bb-aeb63d8b7323,1,0,21f64e5f-dc94-4ce9-b836-e75646ae3325,21f64e5f-dc94-4ce9-b836-e75646ae3325,1,0,82e8a180-f2e1-406c-9609-89d33504aff2,82e8a180-f2e1-406c-9609-89d33504aff2,1,0,e7437c81-3d5b-466e-880c-8febe4a68e88,e7437c81-3d5b-466e-880c-8febe4a68e88,1,0,99bc26f9-ba56-4c63-9fd1-c2f3d630b93c,99bc26f9-ba56-4c63-9fd1-c2f3d630b93c,1,0,307771e6-bcf7-4016-b369-e1655bbe9e94,307771e6-bcf7-4016-b369-e1655bbe9e94,1,0,bf8c60f7-7dea-4a2c-8ce2-7001a6a37bfa,bf8c60f7-7dea-4a2c-8ce2-7001a6a37bfa,1,0,38fc6a54-846c-40b0-9254-3261f540bf18,38fc6a54-846c-40b0-9254-3261f540bf18,1,0,d9134d0c-56cd-4b8f-ab11-ae37fc306801,d9134d0c-56cd-4b8f-ab11-ae37fc306801,1,0,9408d0ee-bd61-4b95-ac7c-98de139b5f9e,9408d0ee-bd61-4b95-ac7c-98de139b5f9e,1,0,8f2af24b-f5fa-4f6d-831e-28453bdedefc,8f2af24b-f5fa-4f6d-831e-28453bdedefc,1,0,d119e21d-0087-4f22-b3bd-b14707b65330,d119e21d-0087-4f22-b3bd-b14707b65330,1,0,dc9b4072-11de-40fe-bf2a-f7b15af0a250,dc9b4072-11de-40fe-bf2a-f7b15af0a250,1,0,e2cf5ca9-c2a0-4506-89e6-318cad0a48a3,e2cf5ca9-c2a0-4506-89e6-318cad0a48a3,1,0,5aecdfd1-1cd7-4523-be23-7e32fcb01a94,5aecdfd1-1cd7-4523-be23-7e32fcb01a94,1,0,932b1c1a-72eb-49cd-8218-d0ced9c454d8,932b1c1a-72eb-49cd-8218-d0ced9c454d8,1,0,96d70dc4-02bd-47ad-9465-81de6ff5bdc9,96d70dc4-02bd-47ad-9465-81de6ff5bdc9,1,0,38acaf7a-5a77-40bf-ba2a-17b31cccd37d,38acaf7a-5a77-40bf-ba2a-17b31cccd37d,1,0,cb604857-8e49-4f2f-b5c8-2a7d8a3cf8e4,cb604857-8e49-4f2f-b5c8-2a7d8a3cf8e4,1,0,f33e9c76-e523-4f4e-ab4b-3fc1b256d8dd,f33e9c76-e523-4f4e-ab4b-3fc1b256d8dd,1,0,5dd336c4-88c5-4f53-acf0-5f86a658c528,5dd336c4-88c5-4f53-acf0-5f86a658c528,1,0,c723112b-286d-46f1-989d-81252062a025,c723112b-286d-46f1-989d-81252062a025,1,0,67e8b47e-4bad-4b2f-b196-8a9708893051,67e8b47e-4bad-4b2f-b196-8a9708893051,1,0,39bddcde-697c-4e77-adfd-e4a77529ea97,39bddcde-697c-4e77-adfd-e4a77529ea97,1,0,a3b15381-bf9b-4b26-96eb-392fa2cc8223,a3b15381-bf9b-4b26-96eb-392fa2cc8223,1,0,a583e53a-3f3c-48c7-8928-37ce40b2bafe,a583e53a-3f3c-48c7-8928-37ce40b2bafe,1,0,a844dd4a-274a-4894-9446-031dbe006084,a844dd4a-274a-4894-9446-031dbe006084,1,0,9a740f81-5437-47af-8ed9-ea62edcb2ea1,9a740f81-5437-47af-8ed9-ea62edcb2ea1,1,0,cdf54c86-0a1c-4f74-93ee-6d8d8db0a778,cdf54c86-0a1c-4f74-93ee-6d8d8db0a778,1,0,77bdd30f-4933-4bda-9c7a-b0a097da0910,77bdd30f-4933-4bda-9c7a-b0a097da0910,1,0,a8d52851-4293-4fe4-b2cb-f9c8c166ed97,a8d52851-4293-4fe4-b2cb-f9c8c166ed97,1,0,d4879ecc-8f1a-4183-99a8-d6dfc1eed3f8,d4879ecc-8f1a-4183-99a8-d6dfc1eed3f8,1,0,a682e9e1-284f-4e32-86b2-6736f159f585,a682e9e1-284f-4e32-86b2-6736f159f585,1,0,84f0bd89-9b86-440f-b942-9b685e22233e,84f0bd89-9b86-440f-b942-9b685e22233e,1,0,f2d508b3-9425-4ce6-86d8-5893ca4a8cd6,f2d508b3-9425-4ce6-86d8-5893ca4a8cd6,1,0,ce61612f-bcbb-4a02-bca0-d88e0ee42bd7,ce61612f-bcbb-4a02-bca0-d88e0ee42bd7,1,0,c1c35035-44cc-4aa1-ae8e-db3513ddc5f3,c1c35035-44cc-4aa1-ae8e-db3513ddc5f3,1,0,ac52baa1-02cb-4ce8-8f4f-1f9441b1cda0,ac52baa1-02cb-4ce8-8f4f-1f9441b1cda0,1,0,fabf8a0b-366f-4f23-9377-315534bb854b,fabf8a0b-366f-4f23-9377-315534bb854b,1,0,7aac6439-64c9-4492-b866-bf91dda82d06,7aac6439-64c9-4492-b866-bf91dda82d06,1,0,6ffe3723-c6df-497b-a3ff-d817fbabfd8c,6ffe3723-c6df-497b-a3ff-d817fbabfd8c,1,0,528a82b7-ef06-4d90-bb32-bd6d76ed6c74,528a82b7-ef06-4d90-bb32-bd6d76ed6c74,1,0,08b86f29-64ef-467a-af1a-d27ffdf621ba,08b86f29-64ef-467a-af1a-d27ffdf621ba,1,0,6483d1ab-c53d-4985-ad7e-b799adbcd9da,6483d1ab-c53d-4985-ad7e-b799adbcd9da,1,0,82f66233-ed13-49ae-ab72-7cf91c88c760,82f66233-ed13-49ae-ab72-7cf91c88c760,1,0,75cddbcd-e960-4164-81d8-ac0a2a36e95b,75cddbcd-e960-4164-81d8-ac0a2a36e95b,1,0,e14d57f4-ae4a-4644-9ec1-a6af1b3e4c41,e14d57f4-ae4a-4644-9ec1-a6af1b3e4c41,1,0,314f8451-ba96-46cd-bf9f-3a87df7d2a5b,314f8451-ba96-46cd-bf9f-3a87df7d2a5b,1,0,d9151001-a911-45c1-a8e6-dcf0da623ed3,d9151001-a911-45c1-a8e6-dcf0da623ed3,1,0,30e06f80-b6d0-4fa9-a346-8e17dbe2fb68,30e06f80-b6d0-4fa9-a346-8e17dbe2fb68,1,0,e589a693-ff50-4c36-ae26-a8fcae966d57,e589a693-ff50-4c36-ae26-a8fcae966d57,1,0,8bacb87e-c2e9-41f5-bae1-c3a6b0e8179f,8bacb87e-c2e9-41f5-bae1-c3a6b0e8179f,1,0,90f023f5-5b48-4f98-bfc6-b704277a355d,90f023f5-5b48-4f98-bfc6-b704277a355d,1,0,99485603-706d-4301-be25-82b1c0ee8f4d,99485603-706d-4301-be25-82b1c0ee8f4d,1,0,e7a28021-c75e-41b2-9974-cf4beee34d28,e7a28021-c75e-41b2-9974-cf4beee34d28,1,0,21e3bdf3-7cec-42de-8ef3-5815b9a1b747,21e3bdf3-7cec-42de-8ef3-5815b9a1b747,1,0,2a603c61-4cbf-4c6d-a0b2-40c835d36737,2a603c61-4cbf-4c6d-a0b2-40c835d36737,1,0,a8d7f071-401b-499e-957c-d077d8002e54,a8d7f071-401b-499e-957c-d077d8002e54,1,0,b6206c73-cf17-4e74-a14d-f2a2ef2b2cc1,b6206c73-cf17-4e74-a14d-f2a2ef2b2cc1,1,0,b363f72f-3629-453c-9f7d-9828ef6de733,b363f72f-3629-453c-9f7d-9828ef6de733,1,0,211a539b-4be9-4816-98f6-f756e65eafd8,211a539b-4be9-4816-98f6-f756e65eafd8,1,0,e2d8167d-3ebf-4771-b9e0-e6382d68cc18,e2d8167d-3ebf-4771-b9e0-e6382d68cc18,1,0,e9b9da80-7806-4c9c-a002-01cfa3109169,e9b9da80-7806-4c9c-a002-01cfa3109169,1,0,a271041d-0203-4ecd-bb39-70256c50192e,a271041d-0203-4ecd-bb39-70256c50192e,1,0,73eff626-a363-4a5a-879e-61ef6ce0726f,73eff626-a363-4a5a-879e-61ef6ce0726f,1,0,acf15b79-a6c4-4c46-8013-50d3b223baf6,acf15b79-a6c4-4c46-8013-50d3b223baf6,1,0,f6a29b80-e4c3-4c4f-8e2c-d4dda851d813,f6a29b80-e4c3-4c4f-8e2c-d4dda851d813,1,0,2d8d5d74-2bc0-4282-af66-e4a37694c147,2d8d5d74-2bc0-4282-af66-e4a37694c147,1,0,cfd31341-287b-4684-9ac0-b28b4e066f15,cfd31341-287b-4684-9ac0-b28b4e066f15,1,0,81de1b0b-7f2d-4098-ae99-061c6a90dc29,81de1b0b-7f2d-4098-ae99-061c6a90dc29,1,0,77c8a065-a8aa-4f39-93b6-c88f4c38ec66,77c8a065-a8aa-4f39-93b6-c88f4c38ec66,1,0,366fa6da-d3bf-4bb0-9a55-a307f9edee6a,366fa6da-d3bf-4bb0-9a55-a307f9edee6a,1,0,dd0610c8-cd87-4fe2-8a1f-70157132785b,dd0610c8-cd87-4fe2-8a1f-70157132785b,1,0,f829e2a9-5bdb-4171-8b32-8d10d5968813,f829e2a9-5bdb-4171-8b32-8d10d5968813,1,0,647ba8f8-57f7-4c19-af59-525517c1e392,647ba8f8-57f7-4c19-af59-525517c1e392,1,0,39062cb3-4ae8-4c0d-889b-038a55179946,39062cb3-4ae8-4c0d-889b-038a55179946,1,0,c62d4212-36ca-4afb-bac9-269b6f64ca51,c62d4212-36ca-4afb-bac9-269b6f64ca51,1,0,5cec5e16-46ad-4f8c-b869-f5b1cc487884,5cec5e16-46ad-4f8c-b869-f5b1cc487884,1,0,ca0363bb-81c2-4fce-b2f0-e8f42d118a74,ca0363bb-81c2-4fce-b2f0-e8f42d118a74,1,0,7aacdf81-49fd-47a3-a36a-c483f1b05872,7aacdf81-49fd-47a3-a36a-c483f1b05872,1,0,857015e2-afb2-403d-bfb7-7acb5080797b,857015e2-afb2-403d-bfb7-7acb5080797b,1,0,5657286b-114b-41de-ab7d-45d0f0d95e2d,5657286b-114b-41de-ab7d-45d0f0d95e2d,1,0,42a0271e-6783-44db-95c1-09805ae01f58,42a0271e-6783-44db-95c1-09805ae01f58,1,0,8628783e-4fad-4dff-8220-9e0ddc8580f8,8628783e-4fad-4dff-8220-9e0ddc8580f8,1,0,356fc245-3034-42d1-84d0-632c6dc7a3d5,356fc245-3034-42d1-84d0-632c6dc7a3d5,1,0,07462664-6b58-4f5a-9b3f-2e5c376f17df,07462664-6b58-4f5a-9b3f-2e5c376f17df,1,0,6f23e946-f700-424b-b9bf-3a9c8846908d,6f23e946-f700-424b-b9bf-3a9c8846908d,1,0,f3ef5989-a848-4a7f-8ac5-0eca882a6aa1,f3ef5989-a848-4a7f-8ac5-0eca882a6aa1,1,0,4f5087ab-cc60-4d1e-ba83-a319536bf8ba,4f5087ab-cc60-4d1e-ba83-a319536bf8ba,1,0,07d0d6e9-e0a7-4543-9668-3850c1e0a15c,07d0d6e9-e0a7-4543-9668-3850c1e0a15c,1,0,c656771c-dcb7-4c78-9a16-e62806d5bb5a,c656771c-dcb7-4c78-9a16-e62806d5bb5a,1,0,ec42c45c-18ca-44b0-9c59-1cb204552a43,ec42c45c-18ca-44b0-9c59-1cb204552a43,1,0,2aafb1a1-4321-47e9-9783-03ab616a2873,2aafb1a1-4321-47e9-9783-03ab616a2873,1,0,71109997-6da0-4eaf-bbf2-f94fa24f37cc,71109997-6da0-4eaf-bbf2-f94fa24f37cc,1,0,a3deeef2-f8a2-462f-a57f-87d89e4ec12a,a3deeef2-f8a2-462f-a57f-87d89e4ec12a,1,0,d601281c-379d-4a9d-843e-478fd6567415,d601281c-379d-4a9d-843e-478fd6567415,1,0,fd9b3f7d-d25d-4ecb-8b87-218d5ccf1f7b,fd9b3f7d-d25d-4ecb-8b87-218d5ccf1f7b,1,0,427e6f15-334e-42be-9554-895d8f7ebfc6,427e6f15-334e-42be-9554-895d8f7ebfc6,1,0,e85a4314-7b63-4294-9bd0-ff77e3ae7c1e,e85a4314-7b63-4294-9bd0-ff77e3ae7c1e,1,0,36bc8523-41a5-48ff-9bd0-758d078c4408,36bc8523-41a5-48ff-9bd0-758d078c4408,1,0,94ca1b45-3cf0-4857-8299-999c93f4fb56,94ca1b45-3cf0-4857-8299-999c93f4fb56,1,0,ee8419c6-79ca-4546-9a66-bacaa08d2a73,ee8419c6-79ca-4546-9a66-bacaa08d2a73,1,0,e36ddb60-2f21-4c5f-b96c-947bcf2af42a,e36ddb60-2f21-4c5f-b96c-947bcf2af42a,1,0,d4a0ca3b-3985-4ba2-9e96-1c5baed28b46,d4a0ca3b-3985-4ba2-9e96-1c5baed28b46,1,0,ada11ea2-94d5-4172-a383-a51774599568,ada11ea2-94d5-4172-a383-a51774599568,1,0,50515bbc-43ee-4b00-bfc5-105b7981bd8f,50515bbc-43ee-4b00-bfc5-105b7981bd8f,1,0,1ea080b0-0a11-4152-b8bb-4918bc142a23,1ea080b0-0a11-4152-b8bb-4918bc142a23,1,0,a21cd1c1-4649-4dc2-9dbd-a913f2d6ca75,a21cd1c1-4649-4dc2-9dbd-a913f2d6ca75,1,0,6930e471-7935-4d68-a980-2acde93ba801,6930e471-7935-4d68-a980-2acde93ba801,1,0,2c425fa5-b10b-4a6f-926a-5cb4c1f2d491,2c425fa5-b10b-4a6f-926a-5cb4c1f2d491,1,0,5135cc48-c749-4acb-a225-d110f386f482,5135cc48-c749-4acb-a225-d110f386f482,1,0,15e6f31b-556a-4f47-9f40-2f69ac7fcb43,15e6f31b-556a-4f47-9f40-2f69ac7fcb43,1,0,53c4c3b2-9257-4d02-8df8-6b55fe9abdae,53c4c3b2-9257-4d02-8df8-6b55fe9abdae,1,0,d2dba2ae-e987-4c9d-a289-3dc19afa87cd,d2dba2ae-e987-4c9d-a289-3dc19afa87cd,1,0,2e9fa546-96fb-4ecb-b933-7921e131e89b,2e9fa546-96fb-4ecb-b933-7921e131e89b,1,0,4645b1ad-eb8f-484c-b29c-2093d9ef9dba,4645b1ad-eb8f-484c-b29c-2093d9ef9dba,1,0,637a132b-1a88-44ba-b45f-ed4ed1ac1001,637a132b-1a88-44ba-b45f-ed4ed1ac1001,1,0,699f734b-43d2-4351-bff8-e0e21e164a42,699f734b-43d2-4351-bff8-e0e21e164a42,1,0,95f0792a-7ac4-450a-b05c-219741e61abd,95f0792a-7ac4-450a-b05c-219741e61abd,1,0,742a2e8c-496e-4e02-931d-d33f7afe07a5,742a2e8c-496e-4e02-931d-d33f7afe07a5,1,0,c3efa853-cd29-4618-929f-e3bec33dfd65,c3efa853-cd29-4618-929f-e3bec33dfd65,1,0,62185c28-3d24-487a-9441-b309dcf11e31,62185c28-3d24-487a-9441-b309dcf11e31,1,0,9f264aeb-664d-4724-8248-11873d63ef3b,9f264aeb-664d-4724-8248-11873d63ef3b,1,0,b926d058-53a9-4eea-b4f9-98e77f798dd9,b926d058-53a9-4eea-b4f9-98e77f798dd9,1,0,495e2c77-4868-4191-ac18-f94e55a5982e,495e2c77-4868-4191-ac18-f94e55a5982e,1,0,20191a65-322c-457d-85f5-ed1258b6fe8e,20191a65-322c-457d-85f5-ed1258b6fe8e,1,0,23b46ecd-14dc-4cc5-8ff0-c676a8337aee,23b46ecd-14dc-4cc5-8ff0-c676a8337aee,1,0,769c60aa-44f4-4c98-a461-d3f5c2b67f61,769c60aa-44f4-4c98-a461-d3f5c2b67f61,1,0,f9809c99-0eaa-4249-967c-a4bef4763277,f9809c99-0eaa-4249-967c-a4bef4763277,1,0,37fa88a0-f2c1-455f-a28d-74165e8b933d,37fa88a0-f2c1-455f-a28d-74165e8b933d,1,0,e4476f09-909b-49f7-8e01-72eea8ceaca6,e4476f09-909b-49f7-8e01-72eea8ceaca6,1,0,2861412c-46f0-454e-b81d-fe081afb5c7a,2861412c-46f0-454e-b81d-fe081afb5c7a,1,0,2b4ece05-b694-42e9-8239-55722fd84294,2b4ece05-b694-42e9-8239-55722fd84294,1,0,6564ce89-134f-4726-8693-fd93aad46180,6564ce89-134f-4726-8693-fd93aad46180,1,0,0d743731-da5d-4c99-b19f-e93c69b77e14,0d743731-da5d-4c99-b19f-e93c69b77e14,1,0,d6f15367-23e2-4766-bc7c-8acd0063aa0c,d6f15367-23e2-4766-bc7c-8acd0063aa0c,1,0,966b1bde-5b0c-446d-b38b-dc037e2ff7ad,966b1bde-5b0c-446d-b38b-dc037e2ff7ad,1,0,fa4c5665-4d73-4db2-a055-8c1c8a302f82,fa4c5665-4d73-4db2-a055-8c1c8a302f82,1,0,e3e0caa1-6d3f-45a6-9043-d58a34f35b8f,e3e0caa1-6d3f-45a6-9043-d58a34f35b8f,1,0,9100b286-8ae9-4de3-b116-5ce0fa95b80c,9100b286-8ae9-4de3-b116-5ce0fa95b80c,1,0,3d315df6-e000-4cbd-810d-0b26c0d1bc54,3d315df6-e000-4cbd-810d-0b26c0d1bc54,1,0,fa429302-ccaf-4c89-8a11-3a1d30817c00,fa429302-ccaf-4c89-8a11-3a1d30817c00,1,0,9b4c49ce-93da-439a-8d67-f3774e92800a,9b4c49ce-93da-439a-8d67-f3774e92800a,1,0,5f8fa827-7017-4b45-b458-3571b8b611f5,5f8fa827-7017-4b45-b458-3571b8b611f5,1,0,79749167-2912-4e06-9deb-7915a1b4390d,79749167-2912-4e06-9deb-7915a1b4390d,1,0,1c93fcd3-53a1-403f-a30b-454fbc941d55,1c93fcd3-53a1-403f-a30b-454fbc941d55,1,0,0fc54be4-2e19-45cf-b62f-7cbc70a70d5f,0fc54be4-2e19-45cf-b62f-7cbc70a70d5f,1,0,adec3963-b22f-4463-a3f4-c9ec27d187a8,adec3963-b22f-4463-a3f4-c9ec27d187a8,1,0,d8dae0c8-8e11-44bf-bf60-d316220f3e82,d8dae0c8-8e11-44bf-bf60-d316220f3e82,1,0,12afec4d-1728-4aa8-86e5-23cd2f1572b3,12afec4d-1728-4aa8-86e5-23cd2f1572b3,1,0,16bc197b-5a2f-43f4-8ba0-ffabd9289f5c,16bc197b-5a2f-43f4-8ba0-ffabd9289f5c,1,0,ee0c3960-d1bf-411f-a51f-e6e27dabea87,ee0c3960-d1bf-411f-a51f-e6e27dabea87,1,0,d7fb9441-1aef-4257-af3f-7f16340ac85e,d7fb9441-1aef-4257-af3f-7f16340ac85e,1,0,d07c094c-2795-4e0c-b030-bdb82be7ba6d,d07c094c-2795-4e0c-b030-bdb82be7ba6d,1,0,62637860-2013-4f9d-9aed-7cbb0dce8983,62637860-2013-4f9d-9aed-7cbb0dce8983,1,0,331217f6-7ec2-425d-93bd-f2979c5f2e05,331217f6-7ec2-425d-93bd-f2979c5f2e05,1,0,7d5b2b73-27e6-4a61-9558-eb2410eb9f2f,7d5b2b73-27e6-4a61-9558-eb2410eb9f2f,1,0,d754ed75-2a32-4b86-a153-7b50c39f9836,d754ed75-2a32-4b86-a153-7b50c39f9836,1,0,b81f3ee1-66f7-4626-a35b-ef85388c678e,b81f3ee1-66f7-4626-a35b-ef85388c678e,1,0,2ad04793-c162-4915-a260-ca4da535cdac,2ad04793-c162-4915-a260-ca4da535cdac,1,0,6568d853-dfe5-4064-aa73-c1f546e951b4,6568d853-dfe5-4064-aa73-c1f546e951b4,1,0,7cee27a7-9827-47f8-96f3-d4f1f3dcabe9,7cee27a7-9827-47f8-96f3-d4f1f3dcabe9,1,0,9bfba5cd-551a-4685-99dd-ebfd9f7fd7d1,9bfba5cd-551a-4685-99dd-ebfd9f7fd7d1,1,0,bbe718b2-6b4c-4d78-a408-5369d356a1e6,bbe718b2-6b4c-4d78-a408-5369d356a1e6,1,0,4ecd85c4-5be7-4e6b-8c53-7dd32bd4d707,4ecd85c4-5be7-4e6b-8c53-7dd32bd4d707,1,0,eb7623df-b4e3-4272-9f92-42a9214f9f17,eb7623df-b4e3-4272-9f92-42a9214f9f17,1,0,c7e4e97f-fb85-4e95-bfdf-7706e867d89b,c7e4e97f-fb85-4e95-bfdf-7706e867d89b,1,0,b08fd921-c3d6-44eb-9401-fec5acab5d22,b08fd921-c3d6-44eb-9401-fec5acab5d22,1,0,1611855a-abf4-4269-aed3-3f78dce7bea5,1611855a-abf4-4269-aed3-3f78dce7bea5,1,0,c5bd277c-b258-43af-9c80-3e328b1581f5,c5bd277c-b258-43af-9c80-3e328b1581f5,1,0,d6fa2b86-1c3b-4c14-8a66-b6dbd40bca19,d6fa2b86-1c3b-4c14-8a66-b6dbd40bca19,1,0,f9cefef4-2182-42ca-93ef-b6a51d6555cc,f9cefef4-2182-42ca-93ef-b6a51d6555cc,1,0,71e1c7de-7367-424c-ae07-6ec04b408b83,71e1c7de-7367-424c-ae07-6ec04b408b83,1,0,b3956392-199c-4934-80d1-8cdab453d879,b3956392-199c-4934-80d1-8cdab453d879,1,0,5e26aeb7-617c-4983-b40d-5a61c77aa6a4,5e26aeb7-617c-4983-b40d-5a61c77aa6a4,1,0,d1bd7448-aa5f-43fc-9735-224f36960c3e,d1bd7448-aa5f-43fc-9735-224f36960c3e,1,0,94dbfc4c-d530-4fbd-b7cf-a58a56289b97,94dbfc4c-d530-4fbd-b7cf-a58a56289b97,1,0,6fa25c57-411d-4f9c-9c3e-c7ea1b1f7195,6fa25c57-411d-4f9c-9c3e-c7ea1b1f7195,1,0,1bfa15cf-222e-4e5b-beb7-7a50f8131799,1bfa15cf-222e-4e5b-beb7-7a50f8131799,1,0,8227471b-8ffb-4ba7-b4da-b21570582876,8227471b-8ffb-4ba7-b4da-b21570582876,1,0,25864028-1a53-4a8d-b6e4-189fa62c62f5,25864028-1a53-4a8d-b6e4-189fa62c62f5,1,0,e923beae-0bd8-4119-a802-fd6bfb729f10,e923beae-0bd8-4119-a802-fd6bfb729f10,1,0,d40bb9f7-3397-40ad-b658-f8942bdbbaee,d40bb9f7-3397-40ad-b658-f8942bdbbaee,1,0,67c1269a-79e6-44d9-9254-671c50fb3974,67c1269a-79e6-44d9-9254-671c50fb3974,1,0,5d455d2a-910d-48c7-bc74-ba5ad7855110,5d455d2a-910d-48c7-bc74-ba5ad7855110,1,0,7cf3feea-75e2-42cc-9c89-4a9182034910,7cf3feea-75e2-42cc-9c89-4a9182034910,1,0,930a0156-feb3-4e14-96a5-cd183a4891f4,930a0156-feb3-4e14-96a5-cd183a4891f4,1,0,cfa55ab3-1335-4712-8352-03c2f0277708,cfa55ab3-1335-4712-8352-03c2f0277708,1,0,fb176f8b-edb9-4e4b-926d-dabe9552bfa1,fb176f8b-edb9-4e4b-926d-dabe9552bfa1,1,0,cd5c52d4-f832-4a3b-b4c7-b4f3e0c98222,cd5c52d4-f832-4a3b-b4c7-b4f3e0c98222,1,0,e268a337-f576-4ec2-8a22-0500b79b2441,e268a337-f576-4ec2-8a22-0500b79b2441,1,0,eb33a8fa-75a6-4926-a025-05bc0abe4374,eb33a8fa-75a6-4926-a025-05bc0abe4374,1,0,c352da94-ea64-44b1-b2df-2c4ed9e2efc5,c352da94-ea64-44b1-b2df-2c4ed9e2efc5,1,0,6babd40a-8b8f-454b-b4a4-7cf2854f49a2,6babd40a-8b8f-454b-b4a4-7cf2854f49a2,1,0,bf480259-6e72-4ad1-ac41-0b0d41a75387,bf480259-6e72-4ad1-ac41-0b0d41a75387,1,0,a41f060a-f0f6-4940-960b-5056082b2c45,a41f060a-f0f6-4940-960b-5056082b2c45,1,0,5d45a926-513f-4bbc-a002-54a2db94b297,5d45a926-513f-4bbc-a002-54a2db94b297,1,0,73f5ce9e-d5a7-45c0-965a-8af1d776a98a,73f5ce9e-d5a7-45c0-965a-8af1d776a98a,1,0,073e14d4-5d43-428b-a9a7-985d173e94c7,073e14d4-5d43-428b-a9a7-985d173e94c7,1,0,61dc318a-c17d-402e-bf64-a0c0a63a1c93,61dc318a-c17d-402e-bf64-a0c0a63a1c93,1,0,c4b0c101-8cd9-441c-b94c-9dfa1ad58d45,c4b0c101-8cd9-441c-b94c-9dfa1ad58d45,1,0,2394775b-8910-4667-9c74-e1606e0b13bc,2394775b-8910-4667-9c74-e1606e0b13bc,1,0,43c88ffd-a036-4563-890b-bdc60180e841,43c88ffd-a036-4563-890b-bdc60180e841,1,0,af6e5e8e-6482-4820-a810-9e275ae039bf,af6e5e8e-6482-4820-a810-9e275ae039bf,1,0,fe3ccb8b-fee7-4825-a7bc-4b0fd432d382,fe3ccb8b-fee7-4825-a7bc-4b0fd432d382,1,0,7690620b-21d9-463a-8c22-60844927b4a0,7690620b-21d9-463a-8c22-60844927b4a0,1,0,e7f96a15-9f62-4a7f-85f3-06ba5d30b130,e7f96a15-9f62-4a7f-85f3-06ba5d30b130,1,0,b1db3255-38da-4684-b44e-4e2e9ee1dc35,b1db3255-38da-4684-b44e-4e2e9ee1dc35,1,0,4761f89b-7894-4dca-83b0-3be2d0828781,4761f89b-7894-4dca-83b0-3be2d0828781,1,0,573ff1f2-0ef5-4962-a0f6-eb84d430fe03,573ff1f2-0ef5-4962-a0f6-eb84d430fe03,1,0,7236d52f-9068-45ad-8b92-a7319e737e08,7236d52f-9068-45ad-8b92-a7319e737e08,1,0,3b0b708f-1b6c-4eb2-a2ad-86c088d9f1bf,3b0b708f-1b6c-4eb2-a2ad-86c088d9f1bf,1,0,9db23e96-d13a-4847-941a-462f64d0619d,9db23e96-d13a-4847-941a-462f64d0619d,1,0,7575fd54-c91b-4220-a2ef-2cf533f60426,7575fd54-c91b-4220-a2ef-2cf533f60426,1,0,1b751f19-bb0c-40c2-a5d1-068544c36c6b,1b751f19-bb0c-40c2-a5d1-068544c36c6b,1,0,26e2c83b-8873-4ad3-9c50-e94421473a43,26e2c83b-8873-4ad3-9c50-e94421473a43,1,0,f0b2ec05-8e01-4ccf-b927-671329a9013b,f0b2ec05-8e01-4ccf-b927-671329a9013b,1,0,ab442b11-2482-4f80-ac82-01966e0657ec,ab442b11-2482-4f80-ac82-01966e0657ec,1,0,14fe4d39-81a1-470e-9724-6642ce34ad89,14fe4d39-81a1-470e-9724-6642ce34ad89,1,0,457578ab-dfe2-4419-8d8a-64283b341f42,457578ab-dfe2-4419-8d8a-64283b341f42,1,0,67ef6671-f537-46bf-88e6-f5bcf34a17a4,67ef6671-f537-46bf-88e6-f5bcf34a17a4,1,0,de778ca7-feaf-4531-80ae-11a534c56928,de778ca7-feaf-4531-80ae-11a534c56928,1,0,0dfbe7a9-9c2e-4cbd-ac53-3b547fd73e91,0dfbe7a9-9c2e-4cbd-ac53-3b547fd73e91,1,0,0a76a84d-e883-477e-8b87-7bf984cdc1cf,0a76a84d-e883-477e-8b87-7bf984cdc1cf,1,0,2b6c4184-6d7d-48e5-bd4e-ad31e63398d6,2b6c4184-6d7d-48e5-bd4e-ad31e63398d6,1,0,86df8648-e195-4661-99ee-6052788eb276,86df8648-e195-4661-99ee-6052788eb276,1,0,a22cf6e9-1157-4be5-8d30-aa9bbf2b5e6e,a22cf6e9-1157-4be5-8d30-aa9bbf2b5e6e,1,0,35133725-9647-42dc-a76a-2e62b2918ac4,35133725-9647-42dc-a76a-2e62b2918ac4,1,0,fa9572ee-0303-4421-9125-70cf3dd5a8c7,fa9572ee-0303-4421-9125-70cf3dd5a8c7,1,0,4cdd7920-0c49-4950-b92f-fdf6e34578b2,4cdd7920-0c49-4950-b92f-fdf6e34578b2,1,0,0af48650-5fef-4a5b-8ac8-38a9ded23bd4,0af48650-5fef-4a5b-8ac8-38a9ded23bd4,1,0,c7b883dc-6c26-4eb5-bc19-7919ad57da27,c7b883dc-6c26-4eb5-bc19-7919ad57da27,1,0,7fc37008-c378-4a70-a9a9-07543c7248a6,7fc37008-c378-4a70-a9a9-07543c7248a6,1,0,6410853e-a17e-44db-b8cc-bfefd7c4d239,6410853e-a17e-44db-b8cc-bfefd7c4d239,1,0,df042e4e-01a6-4480-a9c5-c0d7a454bb41,df042e4e-01a6-4480-a9c5-c0d7a454bb41,1,0,5a4abb96-8a18-4249-9fbb-7270fe2ba25b,5a4abb96-8a18-4249-9fbb-7270fe2ba25b,1,0,6852c584-d989-418d-8d18-255492891ef0,6852c584-d989-418d-8d18-255492891ef0,1,0,6a4972f1-012c-438b-b1d3-81e7f6da3ddd,6a4972f1-012c-438b-b1d3-81e7f6da3ddd,1,0,ff7cfd75-e0ba-49a3-92e1-33ea26df46e2,ff7cfd75-e0ba-49a3-92e1-33ea26df46e2,1,0,bc37fc81-6a86-4e72-b75a-abb75bddc4b3,bc37fc81-6a86-4e72-b75a-abb75bddc4b3,1,0,ff830967-faa9-415f-aa6e-8d27779f91f8,ff830967-faa9-415f-aa6e-8d27779f91f8,1,0,34dd0dd6-880c-4a90-9b9c-0503c8dc4ef3,34dd0dd6-880c-4a90-9b9c-0503c8dc4ef3,1,0,88618d0f-97af-4055-a490-561d4b8065a7,88618d0f-97af-4055-a490-561d4b8065a7,1,0,faffa228-4f4f-43f6-99b9-ed8c93af85c0,faffa228-4f4f-43f6-99b9-ed8c93af85c0,1,0,7b816ca0-ba60-4637-8348-23b26ad23e3f,7b816ca0-ba60-4637-8348-23b26ad23e3f,1,0,814a6db4-a43c-44e6-ac44-11983642c5ad,814a6db4-a43c-44e6-ac44-11983642c5ad,1,0,0bd74786-e018-4a66-b994-cdb439c57657,0bd74786-e018-4a66-b994-cdb439c57657,1,0,f50fcf2b-90bb-4d73-9fda-f4575e7682fa,f50fcf2b-90bb-4d73-9fda-f4575e7682fa,1,0,a01b8078-a6cd-4184-9317-2f1e0bcefb3a,a01b8078-a6cd-4184-9317-2f1e0bcefb3a,1,0,54a279b1-9e6a-49b0-8fda-e2807cf3a2a3,54a279b1-9e6a-49b0-8fda-e2807cf3a2a3,1,0,09502176-c53d-4525-b8ed-32d0a2e21a5d,09502176-c53d-4525-b8ed-32d0a2e21a5d,1,0,75ad984e-d41f-4591-b207-e8a4b05757a7,75ad984e-d41f-4591-b207-e8a4b05757a7,1,0,3f020f90-7aeb-4b21-ad71-4572ac796d4c,3f020f90-7aeb-4b21-ad71-4572ac796d4c,1,0,759e2ba0-2941-4cc1-8409-50b8a3620058,759e2ba0-2941-4cc1-8409-50b8a3620058,1,0,491cf25d-091e-4e09-b145-92d7073326cf,491cf25d-091e-4e09-b145-92d7073326cf,1,0,9b9d4d10-a4f2-4b0d-a63a-15d55f30fb26,9b9d4d10-a4f2-4b0d-a63a-15d55f30fb26,1,0,579f18ce-a7ce-4eb8-a4e3-a134a9a27bc1,579f18ce-a7ce-4eb8-a4e3-a134a9a27bc1,1,0,e7d05eca-2fdd-4cbb-8e2c-537525326ffe,e7d05eca-2fdd-4cbb-8e2c-537525326ffe,1,0,900bc96e-fbcc-473e-970c-96f561420f8e,900bc96e-fbcc-473e-970c-96f561420f8e,1,0,c3bb7b85-1e90-45c4-9bc1-39bbd253d498,c3bb7b85-1e90-45c4-9bc1-39bbd253d498,1,0,21d5a0b0-9a2b-4989-a50a-781645513179,21d5a0b0-9a2b-4989-a50a-781645513179,1,0,22df0fa4-cb1c-45a2-bcce-d32ed44e462a,22df0fa4-cb1c-45a2-bcce-d32ed44e462a,1,0,d97c6204-3656-4591-aea9-6ebedffe1247,d97c6204-3656-4591-aea9-6ebedffe1247,1,0,7caabe33-184f-45db-bef4-59d4e9cd2394,7caabe33-184f-45db-bef4-59d4e9cd2394,1,0,3255033a-e922-412e-a825-a3e8bd284703,3255033a-e922-412e-a825-a3e8bd284703,1,0,1aa65c35-e8a0-4c8a-90a3-48b62314cb19,1aa65c35-e8a0-4c8a-90a3-48b62314cb19,1,0,f250f992-ad5a-4dab-ad38-240604adb0c4,f250f992-ad5a-4dab-ad38-240604adb0c4,1,0,c4a7efca-f27d-4fdd-86ab-cc22a2a96fb2,c4a7efca-f27d-4fdd-86ab-cc22a2a96fb2,1,0,e63671f6-c96d-4ea4-8300-af7dbd0d016f,e63671f6-c96d-4ea4-8300-af7dbd0d016f,1,0,2c511469-0df6-470f-a808-decb275e8b1a,2c511469-0df6-470f-a808-decb275e8b1a,1,0,1bbb289c-a78a-47d0-b082-c2225ae1dc83,1bbb289c-a78a-47d0-b082-c2225ae1dc83,1,0,99b40f9f-f8f1-4779-8afc-59d30612f3d6,99b40f9f-f8f1-4779-8afc-59d30612f3d6,1,0,6131e875-3254-4281-9343-9118564c5451,6131e875-3254-4281-9343-9118564c5451,1,0,69622ff8-8a23-42fc-b63d-5097e3f636ac,69622ff8-8a23-42fc-b63d-5097e3f636ac,1,0,b88450cc-0dd4-4881-b3d9-a9e4e07e08f5,b88450cc-0dd4-4881-b3d9-a9e4e07e08f5,1,0,ef326bd8-1570-455e-ae8c-063b5578ad15,ef326bd8-1570-455e-ae8c-063b5578ad15,1,0,3713c76d-6ff7-4d45-9f15-d061bdf7dee2,3713c76d-6ff7-4d45-9f15-d061bdf7dee2,1,0,cb6d4979-2d70-4ceb-af08-deb2b19daf14,cb6d4979-2d70-4ceb-af08-deb2b19daf14,1,0,bf30b754-84fb-4104-b52b-a4f7df6fba12,bf30b754-84fb-4104-b52b-a4f7df6fba12,1,0,7bbd0835-b3e9-40cb-a424-670828b60bbb,7bbd0835-b3e9-40cb-a424-670828b60bbb,1,0,3e2138ea-48f9-4a60-8f22-53933bea49db,3e2138ea-48f9-4a60-8f22-53933bea49db,1,0,16bda2eb-eab8-4230-b89f-517fb943e009,16bda2eb-eab8-4230-b89f-517fb943e009,1,0,00964512-297f-4b8b-8def-8e4fc0eba991,00964512-297f-4b8b-8def-8e4fc0eba991,1,0,4185fea3-baba-4ba5-8019-9023b3011d4d,4185fea3-baba-4ba5-8019-9023b3011d4d,1,0,ea790035-92d6-445e-9fa3-08e565634d2b,ea790035-92d6-445e-9fa3-08e565634d2b,1,0,cce8900a-51eb-487d-b380-227d1b9d3943,cce8900a-51eb-487d-b380-227d1b9d3943,1,0,c043c36c-90c6-483b-bc20-7c2d85109b90,c043c36c-90c6-483b-bc20-7c2d85109b90,1,0,a1e619a6-3bb2-468d-a225-c88ccc3b71f5,a1e619a6-3bb2-468d-a225-c88ccc3b71f5,1,0,91d2d40a-c271-412c-b344-1fc98b94ba21,91d2d40a-c271-412c-b344-1fc98b94ba21,1,0,7ce47046-aee8-4809-bac9-a98930a844e1,7ce47046-aee8-4809-bac9-a98930a844e1,1,0,f480b8b9-ecec-4207-a0aa-12c5be4c2250,f480b8b9-ecec-4207-a0aa-12c5be4c2250,1,0,32717d25-6644-4903-8950-03e4c9b1a8fe,32717d25-6644-4903-8950-03e4c9b1a8fe,1,0,3644d8f3-db88-4fce-a851-39c115acfe03,3644d8f3-db88-4fce-a851-39c115acfe03,1,0,4653da74-34b2-47b9-ad88-efd761d6f1e9,4653da74-34b2-47b9-ad88-efd761d6f1e9,1,0,abf8a23d-45c3-4feb-8df2-279b709d7722,abf8a23d-45c3-4feb-8df2-279b709d7722,1,0,b0cd056f-c601-4d07-89c4-f7137b88bab6,b0cd056f-c601-4d07-89c4-f7137b88bab6,1,0,5cc3ebef-8f09-443c-b131-e5c3a9f7d260,5cc3ebef-8f09-443c-b131-e5c3a9f7d260,1,0,b9a21b8f-8a95-4c86-9ab2-ee6c90164e18,b9a21b8f-8a95-4c86-9ab2-ee6c90164e18,1,0,96ed4d39-3bdc-480f-af86-218f22000514,96ed4d39-3bdc-480f-af86-218f22000514,1,0,c9f72e74-22ac-4dc0-8462-0aa7819a9342,c9f72e74-22ac-4dc0-8462-0aa7819a9342,1,0,ca650484-293f-403a-b916-5ec7c3a8969e,ca650484-293f-403a-b916-5ec7c3a8969e,1,0,b71e706d-623e-4039-9bf0-24f151d861d8,b71e706d-623e-4039-9bf0-24f151d861d8,1,0,528f4823-33d8-49bd-a8fe-756a08a107c2,528f4823-33d8-49bd-a8fe-756a08a107c2,1,0,4869095b-b76e-45ca-b77d-0e74f59673f0,4869095b-b76e-45ca-b77d-0e74f59673f0,1,0,bcca2442-448b-4760-923b-cc9621ecb441,bcca2442-448b-4760-923b-cc9621ecb441,1,0,ba7657df-429a-4737-b787-19ef09fdebb2,ba7657df-429a-4737-b787-19ef09fdebb2,1,0,867d72be-f406-45a5-a511-b90459683f11,867d72be-f406-45a5-a511-b90459683f11,1,0,88b22e62-c144-401f-9635-3fb4d914772e,88b22e62-c144-401f-9635-3fb4d914772e,1,0,efeb2914-6604-403a-a11e-5cb995ab2bc9,efeb2914-6604-403a-a11e-5cb995ab2bc9,1,0,4c2dd77f-adc7-4f11-8e8f-1f8e41e6c84b,4c2dd77f-adc7-4f11-8e8f-1f8e41e6c84b,1,0,8f2b8a8e-4cd3-45e3-89ae-1cc4bd0ff30a,8f2b8a8e-4cd3-45e3-89ae-1cc4bd0ff30a,1,0,24b3aecc-f92f-475b-862e-83dd6d6aa2b9,24b3aecc-f92f-475b-862e-83dd6d6aa2b9,1,0,8525d945-08aa-4928-8dca-4e172ea94328,8525d945-08aa-4928-8dca-4e172ea94328,1,0,de506523-241a-4845-9259-37066afbf16a,de506523-241a-4845-9259-37066afbf16a,1,0,0510206f-eef0-4a5e-aeb7-d53c26d34adb,0510206f-eef0-4a5e-aeb7-d53c26d34adb,1,0,e616e007-43e7-4740-a083-b85f5435718a,e616e007-43e7-4740-a083-b85f5435718a,1,0,82be906c-bb06-40ea-b908-54574b0b4848,82be906c-bb06-40ea-b908-54574b0b4848,1,0,727da5b1-e054-4832-8e44-f5d5e56f52e5,727da5b1-e054-4832-8e44-f5d5e56f52e5,1,0,6135ffd5-1510-4aa8-8bf5-d7c0ca624414,6135ffd5-1510-4aa8-8bf5-d7c0ca624414,1,0,03f32b08-1b71-47cb-ba1d-965037df4d64,03f32b08-1b71-47cb-ba1d-965037df4d64,1,0,6feaad7c-9680-4341-b215-14581e2e2b37,6feaad7c-9680-4341-b215-14581e2e2b37,1,0,d5656a92-adfb-4733-830d-2b1565798b1f,d5656a92-adfb-4733-830d-2b1565798b1f,1,0,2ee0d56b-cd7c-42db-8fb6-c1567fe1967d,2ee0d56b-cd7c-42db-8fb6-c1567fe1967d,1,0,b0f6ea83-2849-4151-930d-692866919db3,b0f6ea83-2849-4151-930d-692866919db3,1,0,05558ce4-8568-4009-b1d7-307d54967515,05558ce4-8568-4009-b1d7-307d54967515,1,0,74380324-9b7b-49f6-9458-88deb9405f98,74380324-9b7b-49f6-9458-88deb9405f98,1,0,5286ceb2-0f16-4d70-ad89-dc15a308bb8d,5286ceb2-0f16-4d70-ad89-dc15a308bb8d,1,0,0abf70e0-0d81-4d85-a288-a2134da5fbf1,0abf70e0-0d81-4d85-a288-a2134da5fbf1,1,0,392fc734-4251-4d28-bfd1-d6f2f33ec0e5,392fc734-4251-4d28-bfd1-d6f2f33ec0e5,1,0,f66cb2da-3b3c-481f-823a-506f8290f619,f66cb2da-3b3c-481f-823a-506f8290f619,1,0,b80ddaf8-c5c3-4bde-98ed-74a1a0446f38,b80ddaf8-c5c3-4bde-98ed-74a1a0446f38,1,0,e4f16dbf-609d-4a34-a0bf-b20e5925c1ba,e4f16dbf-609d-4a34-a0bf-b20e5925c1ba,1,0,0bdcf045-5132-4a68-839c-a30515dc569e,0bdcf045-5132-4a68-839c-a30515dc569e,1,0,683861f9-9a5f-47db-8b03-959f839d5a3a,683861f9-9a5f-47db-8b03-959f839d5a3a,1,0,56fda0b0-c0ae-4ea2-8f77-df22a9ca3e87,56fda0b0-c0ae-4ea2-8f77-df22a9ca3e87,1,0,125be5bf-f410-451d-aa96-22fabc6a4d8a,125be5bf-f410-451d-aa96-22fabc6a4d8a,1,0,e5017fd0-ecea-48ae-99c8-7fc8c4f1d72b,e5017fd0-ecea-48ae-99c8-7fc8c4f1d72b,1,0,0a46166a-4562-4a50-b139-39dbe8a1fc84,0a46166a-4562-4a50-b139-39dbe8a1fc84,1,0,9aa6d1d1-75ad-40e4-b01f-274826c0c9da,9aa6d1d1-75ad-40e4-b01f-274826c0c9da,1,0,6ce64d65-f710-4d3f-a85f-26ce6915451e,6ce64d65-f710-4d3f-a85f-26ce6915451e,1,0,33eb9806-e34f-42a0-9825-3ff2de92c503,33eb9806-e34f-42a0-9825-3ff2de92c503,1,0,4905fcc5-9bd7-4b1b-b51d-882b11ee3d74,4905fcc5-9bd7-4b1b-b51d-882b11ee3d74,1,0,bcb58235-7cd7-4c15-a1eb-194ee38259e6,bcb58235-7cd7-4c15-a1eb-194ee38259e6,1,0,e19aefe7-634d-4218-8d40-75802d1691e0,e19aefe7-634d-4218-8d40-75802d1691e0,1,0,b885dbb2-6e18-46a6-929c-3d6d392343ad,b885dbb2-6e18-46a6-929c-3d6d392343ad,1,0,d31e24cf-7493-45dc-ba81-3a00618e53bc,d31e24cf-7493-45dc-ba81-3a00618e53bc,1,0,ce2a8ff8-94fd-4ce2-9caa-4711e9b79ee9,ce2a8ff8-94fd-4ce2-9caa-4711e9b79ee9,1,0,f942d212-9be0-4d80-84b6-5b63070e33e4,f942d212-9be0-4d80-84b6-5b63070e33e4,1,0,bea6bbc1-c1e4-4306-a0ca-efd47b9a8b23,bea6bbc1-c1e4-4306-a0ca-efd47b9a8b23,1,0,64c91eaa-084f-4801-8dbf-4e075c689c2b,64c91eaa-084f-4801-8dbf-4e075c689c2b,1,0,c01bb4de-06f7-4c3d-8ea3-d861f89948c0,c01bb4de-06f7-4c3d-8ea3-d861f89948c0,1,0,3c8c4f7b-d267-422c-becd-b6e8a9d6fe49,3c8c4f7b-d267-422c-becd-b6e8a9d6fe49,1,0,3aa12805-823a-439b-b039-fb9940aee312,3aa12805-823a-439b-b039-fb9940aee312,1,0,87d53573-f266-4b74-94af-041ae4b6518f,87d53573-f266-4b74-94af-041ae4b6518f,1,0,65a8545a-e73c-4c6a-8f87-7734d7ff5c03,65a8545a-e73c-4c6a-8f87-7734d7ff5c03,1,0,801cf1f7-2c65-4126-a3e9-b66abfdde67a,801cf1f7-2c65-4126-a3e9-b66abfdde67a,1,0,b991eefb-0d97-48a1-89c8-3d83b3b8d97a,b991eefb-0d97-48a1-89c8-3d83b3b8d97a,1,0,29c2bc01-8838-4459-8ac2-79862aa1dbc9,29c2bc01-8838-4459-8ac2-79862aa1dbc9,1,0,ad556c33-6811-48b4-ae90-57700a4d3fd6,ad556c33-6811-48b4-ae90-57700a4d3fd6,1,0,6e0833f4-3b57-4a5f-810f-9e2a492335df,6e0833f4-3b57-4a5f-810f-9e2a492335df,1,0,78ccdf33-9c2b-4931-afa3-5d652f2bcbc5,78ccdf33-9c2b-4931-afa3-5d652f2bcbc5,1,0,977bc9d8-9843-4343-85af-11a3d91f9966,977bc9d8-9843-4343-85af-11a3d91f9966,1,0,02ff9ef0-1057-4bc2-b745-1c2ae41835e3,02ff9ef0-1057-4bc2-b745-1c2ae41835e3,1,0,5a86abe7-db6c-43a3-9bcd-9b3647519c6b,5a86abe7-db6c-43a3-9bcd-9b3647519c6b,1,0,a6582448-734d-4a4c-a32c-c4755ca1bc93,a6582448-734d-4a4c-a32c-c4755ca1bc93,1,0,6a0b9a91-51a0-4ef4-b630-4f1b5a1da2b7,6a0b9a91-51a0-4ef4-b630-4f1b5a1da2b7,1,0,53327cc4-22b0-40f9-bae7-db483f85901c,53327cc4-22b0-40f9-bae7-db483f85901c,1,0,098d904d-95c9-459e-86d0-357ba9a40191,098d904d-95c9-459e-86d0-357ba9a40191,1,0,e9ab9d00-6e42-439b-8efc-fcacf727016d,e9ab9d00-6e42-439b-8efc-fcacf727016d,1,0,2d58033f-e15d-4a91-8165-dd311025c7c4,2d58033f-e15d-4a91-8165-dd311025c7c4,1,0,49cb3a36-90b3-4154-b571-265fc5cee21e,49cb3a36-90b3-4154-b571-265fc5cee21e,1,0,10472d2c-18ca-49b0-bd9d-c750db8498c5,10472d2c-18ca-49b0-bd9d-c750db8498c5,1,0,8efe5daf-272d-4255-b5c4-66dca7463b50,8efe5daf-272d-4255-b5c4-66dca7463b50,1,0,65af25a6-f699-4c40-b13e-3b7dff3f16fe,65af25a6-f699-4c40-b13e-3b7dff3f16fe,1,0,c4d2486d-289c-4812-b223-5ccfcd7f29e3,c4d2486d-289c-4812-b223-5ccfcd7f29e3,1,0,f9229c3e-4a47-49a4-8b14-908218012ff7,f9229c3e-4a47-49a4-8b14-908218012ff7,1,0,7c8b9203-2808-4a78-a2b1-b7a71b4f13f6,7c8b9203-2808-4a78-a2b1-b7a71b4f13f6,1,0,7da57c89-af2c-445a-96f7-39250f70306f,7da57c89-af2c-445a-96f7-39250f70306f,1,0,b5b94d94-25f7-4cfa-b1e9-6009fb848763,b5b94d94-25f7-4cfa-b1e9-6009fb848763,1,0,a2accf54-5966-42e8-ab2e-e56e415963ee,a2accf54-5966-42e8-ab2e-e56e415963ee,1,0,d8eb5329-5900-4b5d-b45e-458513dddfef,d8eb5329-5900-4b5d-b45e-458513dddfef,1,0,6d521e58-24a3-4f19-b4b0-dff84f7ca86b,6d521e58-24a3-4f19-b4b0-dff84f7ca86b,1,0,d5afea8a-1b7a-4b23-8ae0-cefa0b937b17,d5afea8a-1b7a-4b23-8ae0-cefa0b937b17,1,0,6ffd2da8-db97-46fc-9a53-8e665a598e3c,6ffd2da8-db97-46fc-9a53-8e665a598e3c,1,0,8c413fa5-9e24-4b81-aa55-0e78c5e3e20f,8c413fa5-9e24-4b81-aa55-0e78c5e3e20f,1,0,a4322f22-7de0-4018-8e06-9f1aa7cf0c07,a4322f22-7de0-4018-8e06-9f1aa7cf0c07,1,0,eaaed107-69d4-4963-be83-74519e331715,eaaed107-69d4-4963-be83-74519e331715,1,0,38cddf96-8703-4396-8c73-47fb22828a48,38cddf96-8703-4396-8c73-47fb22828a48,1,0,2c2cb793-0177-4983-91ca-9c292c5b10f1,2c2cb793-0177-4983-91ca-9c292c5b10f1,1,0,2a2e7f51-a4e5-48ec-b969-b1fca18ba9b5,2a2e7f51-a4e5-48ec-b969-b1fca18ba9b5,1,0,221fa473-3327-44e6-a033-6fdfd2be713c,221fa473-3327-44e6-a033-6fdfd2be713c,1,0,7a5973f0-7e29-44af-8e7b-70af71f704a4,7a5973f0-7e29-44af-8e7b-70af71f704a4,1,0,2b2bf0f7-0946-4492-bba0-27f007a70e64,2b2bf0f7-0946-4492-bba0-27f007a70e64,1,0,22c9a703-5ed3-4156-8fa6-476b1c1452f1,22c9a703-5ed3-4156-8fa6-476b1c1452f1,1,0,8be10d88-8c37-4444-9c89-6cbbe9913bda,8be10d88-8c37-4444-9c89-6cbbe9913bda,1,0,27089e8e-2c75-431c-b808-5d4dcba3cdca,27089e8e-2c75-431c-b808-5d4dcba3cdca,1,0,9ab3980e-a480-4f90-a8cc-bde99d5ace35,9ab3980e-a480-4f90-a8cc-bde99d5ace35,1,0,ec928563-6e35-4b84-b477-90d2481cec1c,ec928563-6e35-4b84-b477-90d2481cec1c,1,0,5d3e9678-20fe-4128-867a-3f7addaa7831,5d3e9678-20fe-4128-867a-3f7addaa7831,1,0,bb878f73-8a0f-459a-9076-ce57fe7957dc,bb878f73-8a0f-459a-9076-ce57fe7957dc,1,0,cb1d4a41-20a9-4d76-8798-d47d8858bff1,cb1d4a41-20a9-4d76-8798-d47d8858bff1,1,0,a2b4110b-4d9c-40fd-ab46-bfa08d2eb993,a2b4110b-4d9c-40fd-ab46-bfa08d2eb993,1,0,4f262b7f-927e-45f2-ad90-9d5e1b3155d1,4f262b7f-927e-45f2-ad90-9d5e1b3155d1,1,0,9f4b8e36-83ff-4694-8540-b5f47b18395f,9f4b8e36-83ff-4694-8540-b5f47b18395f,1,0,b4c026eb-4271-4366-b529-1cdfe2874563,b4c026eb-4271-4366-b529-1cdfe2874563,1,0,314b0da2-24d3-48cc-8532-d36c45eb3bf8,314b0da2-24d3-48cc-8532-d36c45eb3bf8,1,0,2e3ac3fb-9f0e-463f-95c2-9f661ce2e015,2e3ac3fb-9f0e-463f-95c2-9f661ce2e015,1,0,4077e700-ec20-4afa-8155-bf7e516a70cb,4077e700-ec20-4afa-8155-bf7e516a70cb,1,0,5198c6db-2100-4902-82c8-85c8ea555e78,5198c6db-2100-4902-82c8-85c8ea555e78,1,0,b99f2a63-54e8-490b-a0a4-1941fbc38b3f,b99f2a63-54e8-490b-a0a4-1941fbc38b3f,1,0,f0b1e9f4-2e07-44e6-88d2-c11457135781,f0b1e9f4-2e07-44e6-88d2-c11457135781,1,0,e010c0f9-f770-4fdc-8607-50838c0262ef,e010c0f9-f770-4fdc-8607-50838c0262ef,1,0,f935399f-3554-4c08-b0a6-eba13074e1b7,f935399f-3554-4c08-b0a6-eba13074e1b7,1,0,10008125-3aeb-4912-8ad6-d92d283ea09a,10008125-3aeb-4912-8ad6-d92d283ea09a,1,0,765f9584-fefa-4695-b130-dd54c3b0d79d,765f9584-fefa-4695-b130-dd54c3b0d79d,1,0,dd050ca0-8335-4654-ab5c-7babcb4824ef,dd050ca0-8335-4654-ab5c-7babcb4824ef,1,0,706cbf55-626d-4cab-b589-a2464368f6c1,706cbf55-626d-4cab-b589-a2464368f6c1,1,0,d22a0a50-220d-459e-a23a-39730a1e67c4,d22a0a50-220d-459e-a23a-39730a1e67c4,1,0,2c1c9284-ba8b-4282-a89c-429f02ea41f6,2c1c9284-ba8b-4282-a89c-429f02ea41f6,1,0,1d3b9eff-5d0b-437b-932f-0ec466e092b2,1d3b9eff-5d0b-437b-932f-0ec466e092b2,1,0,fd7e5257-024c-46de-9ff3-edd302fadba5,fd7e5257-024c-46de-9ff3-edd302fadba5,1,0,a4168057-d99f-4b55-b762-214f95ae3a30,a4168057-d99f-4b55-b762-214f95ae3a30,1,0,ab4fe549-1c07-42d9-b412-8b89ed115591,ab4fe549-1c07-42d9-b412-8b89ed115591,1,0,0335804e-efe5-4fb9-9ae9-2ddca73d77f3,0335804e-efe5-4fb9-9ae9-2ddca73d77f3,1,0,b49c589d-b45d-4aff-8899-72cfe433e9a6,b49c589d-b45d-4aff-8899-72cfe433e9a6,1,0,f71a8d47-6a6c-4b7e-90b3-5b7a3be3ccd3,f71a8d47-6a6c-4b7e-90b3-5b7a3be3ccd3,1,0,273ad3f7-c645-434d-93b0-e832134f3043,273ad3f7-c645-434d-93b0-e832134f3043,1,0,d320803b-1de4-4e66-b455-0afe39be5c41,d320803b-1de4-4e66-b455-0afe39be5c41,1,0,483dfce4-9c66-4739-94d4-17a005d64f5b,483dfce4-9c66-4739-94d4-17a005d64f5b,1,0,19506116-43ef-433c-822c-ef8717b0da6b,19506116-43ef-433c-822c-ef8717b0da6b,1,0,464b92cc-b577-4350-ae9f-e697390248d7,464b92cc-b577-4350-ae9f-e697390248d7,1,0,5a1242c8-3817-4d2c-9bfd-f62a6b80730c,5a1242c8-3817-4d2c-9bfd-f62a6b80730c,1,0,b9be6caf-e5e0-45a9-8cc8-3c83721632a2,b9be6caf-e5e0-45a9-8cc8-3c83721632a2,1,0,97e853dc-065f-4c6d-84cb-3d3aff367b22,97e853dc-065f-4c6d-84cb-3d3aff367b22,1,0,2f1fdf47-2627-496f-9e1f-77019abb2104,2f1fdf47-2627-496f-9e1f-77019abb2104,1,0,c996532a-8795-4136-8a40-9bb4b263277c,c996532a-8795-4136-8a40-9bb4b263277c,1,0,64c77788-fc49-4979-8163-949a891bd8b7,64c77788-fc49-4979-8163-949a891bd8b7,1,0,c39750ca-e33f-40c2-b830-119423d9a2ae,c39750ca-e33f-40c2-b830-119423d9a2ae,1,0,9372ff6b-27b6-48f3-a2a2-762e7c485766,9372ff6b-27b6-48f3-a2a2-762e7c485766,1,0,f454595a-4a3d-451b-8e8b-b17aa8314591,f454595a-4a3d-451b-8e8b-b17aa8314591,1,0,d3b7f89e-eb04-404e-bcc1-1d3557fb8d1a,d3b7f89e-eb04-404e-bcc1-1d3557fb8d1a,1,0,442f9d7b-ae8f-4074-8ece-d5aa1c66e35c,442f9d7b-ae8f-4074-8ece-d5aa1c66e35c,1,0,bc708da8-7fc6-4da1-8129-9ef6a86667af,bc708da8-7fc6-4da1-8129-9ef6a86667af,1,0,061842fe-4077-4d6e-aefe-de79409da730,061842fe-4077-4d6e-aefe-de79409da730,1,0,86249619-8981-4fc4-85fc-ce30e4b9d542,86249619-8981-4fc4-85fc-ce30e4b9d542,1,0,da6e4bff-9835-4b92-b62b-291a5d6c86fe,da6e4bff-9835-4b92-b62b-291a5d6c86fe,1,0,8be35c43-32e6-418d-b3d6-e53ef56babb7,8be35c43-32e6-418d-b3d6-e53ef56babb7,1,0,3e4f5fd0-af15-41ae-896e-458ce9fb7e4d,3e4f5fd0-af15-41ae-896e-458ce9fb7e4d,1,0,935d01e1-232b-480e-a6bf-c21c617c6348,935d01e1-232b-480e-a6bf-c21c617c6348,1,0,9bc7cc99-1237-4f9c-8a4e-f3ab459186ef,9bc7cc99-1237-4f9c-8a4e-f3ab459186ef,1,0,05c702a1-2c74-45d5-b2ee-fdd795b0945a,05c702a1-2c74-45d5-b2ee-fdd795b0945a,1,0,3fadaeb7-2c41-42a4-bfa8-c585602b1028,3fadaeb7-2c41-42a4-bfa8-c585602b1028,1,0,171a0dfc-032e-4eaf-81a2-e5e0dfde8d56,171a0dfc-032e-4eaf-81a2-e5e0dfde8d56,1,0,083c709b-ed8c-47e4-a190-421e14259e73,083c709b-ed8c-47e4-a190-421e14259e73,1,0,b98dacc7-29e1-426b-a664-0a988f18186c,b98dacc7-29e1-426b-a664-0a988f18186c,1,0,d678856d-6e7c-443f-a6e3-350bbe8af659,d678856d-6e7c-443f-a6e3-350bbe8af659,1,0,d0979762-22ce-41be-b7a4-5e9ac149d94b,d0979762-22ce-41be-b7a4-5e9ac149d94b,1,0,ae23e70c-479e-47ad-9bfa-58560a903410,ae23e70c-479e-47ad-9bfa-58560a903410,1,0,c0d83781-bbda-43f7-bf0e-5defa3d47143,c0d83781-bbda-43f7-bf0e-5defa3d47143,1,0,21fa5fdd-acbc-403b-9acb-bbf95284bd20,21fa5fdd-acbc-403b-9acb-bbf95284bd20,1,0,576a01e3-4d6d-4241-a3c4-7661ba129bcb,576a01e3-4d6d-4241-a3c4-7661ba129bcb,1,0,9f7290dd-19f4-4163-9795-fe562e84f06d,9f7290dd-19f4-4163-9795-fe562e84f06d,1,0,c3b5c81f-b787-4f63-8cba-79def0921477,c3b5c81f-b787-4f63-8cba-79def0921477,1,0,1f0cb3d4-1344-451b-a257-be3cd854acfd,1f0cb3d4-1344-451b-a257-be3cd854acfd,1,0,0131fe59-ce47-48b7-8f7e-1544bf0fa031,0131fe59-ce47-48b7-8f7e-1544bf0fa031,1,0,c8b0a1be-97c6-4a16-b1dd-31901ac61cdc,c8b0a1be-97c6-4a16-b1dd-31901ac61cdc,1,0,372150e2-526e-4424-8c54-e4b16bdd25b5,372150e2-526e-4424-8c54-e4b16bdd25b5,1,0,752dc569-cf84-42d7-911d-49d455f7214e,752dc569-cf84-42d7-911d-49d455f7214e,1,0,fecab2b9-27e1-44d6-9082-79c3569b7477,fecab2b9-27e1-44d6-9082-79c3569b7477,1,0,07ae092f-8517-47b7-b54c-5dbcb6506929,07ae092f-8517-47b7-b54c-5dbcb6506929,1,0,db4c25bb-d199-43ec-833d-82972de04a41,db4c25bb-d199-43ec-833d-82972de04a41,1,0,43d19685-0794-41f2-9171-bf565133718d,43d19685-0794-41f2-9171-bf565133718d,1,0,b68c15c4-4966-4f13-8912-2d479b65089a,b68c15c4-4966-4f13-8912-2d479b65089a,1,0,8f6770c2-654c-4cc7-8ed5-15b5b2e3109a,8f6770c2-654c-4cc7-8ed5-15b5b2e3109a,1,0,a89ee622-6942-411a-8566-f03d139c9e5b,a89ee622-6942-411a-8566-f03d139c9e5b,1,0,f87e3935-dae1-4192-b6a7-05e3c700c590,f87e3935-dae1-4192-b6a7-05e3c700c590,1,0,ee635706-6ee2-4956-8d58-a235f64687f6,ee635706-6ee2-4956-8d58-a235f64687f6,1,0,a5a40ca7-d665-420b-a516-1355019d6901,a5a40ca7-d665-420b-a516-1355019d6901,1,0,198ea989-5001-47ac-86b8-aa2585a5f7d7,198ea989-5001-47ac-86b8-aa2585a5f7d7,1,0,4abe448b-a225-4ac2-8cc9-c3c6c0e9b1ac,4abe448b-a225-4ac2-8cc9-c3c6c0e9b1ac,1,0,fb84c5f7-11da-4b17-979e-41e27a74e789,fb84c5f7-11da-4b17-979e-41e27a74e789,1,0,adf9304c-ccf8-492e-95b1-0754764586a2,adf9304c-ccf8-492e-95b1-0754764586a2,1,0,fd175112-ec8f-4088-9b21-d8135056f0c5,fd175112-ec8f-4088-9b21-d8135056f0c5,1,0,ddd82a66-1eda-409f-b6c0-e22c4bd2c1b7,ddd82a66-1eda-409f-b6c0-e22c4bd2c1b7,1,0,df76a1b7-312a-4e77-bac1-79befadb4495,df76a1b7-312a-4e77-bac1-79befadb4495,1,0,ab39fad8-1039-491e-982a-c49637770ec0,ab39fad8-1039-491e-982a-c49637770ec0,1,0,7d93a6ba-3ca7-45ab-a540-743c79587535,7d93a6ba-3ca7-45ab-a540-743c79587535,1,0,76b58810-0527-4dfc-8858-bac68e7e65f3,76b58810-0527-4dfc-8858-bac68e7e65f3,1,0,aba97fd9-f05e-45cd-8404-ed702070e17a,aba97fd9-f05e-45cd-8404-ed702070e17a,1,0,f5c415cd-429b-469f-9332-c43ab5d1c8d6,f5c415cd-429b-469f-9332-c43ab5d1c8d6,1,0,458e9c6b-b828-404b-be5a-c6c0aeea34c9,458e9c6b-b828-404b-be5a-c6c0aeea34c9,1,0,7262eb4d-2d2d-454c-beaa-974645813af7,7262eb4d-2d2d-454c-beaa-974645813af7,1,0,45fa9f17-eeb1-43e2-b78c-f81a341f1bff,45fa9f17-eeb1-43e2-b78c-f81a341f1bff,1,0,49221b2f-aae2-4bee-9a1a-18263fc74244,49221b2f-aae2-4bee-9a1a-18263fc74244,1,0,da0cd264-da2f-4044-af28-c91d2efe1d5c,da0cd264-da2f-4044-af28-c91d2efe1d5c,1,0,f1b1db38-2d9f-4409-a6d6-fd7192b1f102,f1b1db38-2d9f-4409-a6d6-fd7192b1f102,1,0,fad26b16-8638-496b-bd12-381fc6f5b71f,fad26b16-8638-496b-bd12-381fc6f5b71f,1,0,ed3cfb74-a37a-4314-a2d7-4ce717a2edd9,ed3cfb74-a37a-4314-a2d7-4ce717a2edd9,1,0,324a56c9-02d9-4177-af84-a817b8c41169,324a56c9-02d9-4177-af84-a817b8c41169,1,0,1e44abfe-c173-4802-b535-96849d384983,1e44abfe-c173-4802-b535-96849d384983,1,0,2751a509-037b-49aa-9ca8-e87057d6d82c,2751a509-037b-49aa-9ca8-e87057d6d82c,1,0,35f62549-eb6a-4284-a6e3-406b0d9df0cf,35f62549-eb6a-4284-a6e3-406b0d9df0cf,1,0,cee94c04-7a46-47a5-bdd5-6f0dbd884e97,cee94c04-7a46-47a5-bdd5-6f0dbd884e97,1,0,fd66995b-ee76-41d3-983f-33d84bdcbbd4,fd66995b-ee76-41d3-983f-33d84bdcbbd4,1,0,73e97918-b34e-4ad2-8591-4c219eb92f2c,73e97918-b34e-4ad2-8591-4c219eb92f2c,1,0,445cf7eb-35d0-48f8-9579-c2ec574ef324,445cf7eb-35d0-48f8-9579-c2ec574ef324,1,0,1025657e-afd2-4c7b-96d5-ccbedaca4619,1025657e-afd2-4c7b-96d5-ccbedaca4619,1,0,64839c78-b2fa-4d80-bee0-b3d3a7e5db35,64839c78-b2fa-4d80-bee0-b3d3a7e5db35,1,0,e754ad5c-cf3c-4198-af81-128475924cb0,e754ad5c-cf3c-4198-af81-128475924cb0,1,0,ed65d504-b210-4014-85ec-275ad633ef04,ed65d504-b210-4014-85ec-275ad633ef04,1,0,dc31edb1-273e-4b1a-8e69-32393479ff36,dc31edb1-273e-4b1a-8e69-32393479ff36,1,0,3ab0649b-239f-4466-b897-73c0ab628927,3ab0649b-239f-4466-b897-73c0ab628927,1,0,4c697110-8941-4d6d-ba03-f2b9e96ff82e,4c697110-8941-4d6d-ba03-f2b9e96ff82e,1,0,7ea4112d-fc41-4f1e-bd22-f04adeac1d8f,7ea4112d-fc41-4f1e-bd22-f04adeac1d8f,1,0,b172631b-da0d-42f4-ae6b-ae122a46cced,b172631b-da0d-42f4-ae6b-ae122a46cced,1,0,1a25e744-37ae-46ca-a328-ff8eced21a82,1a25e744-37ae-46ca-a328-ff8eced21a82,1,0,dddabe54-a93b-4e4b-acbb-cc522e4d7c28,dddabe54-a93b-4e4b-acbb-cc522e4d7c28,1,0,46169f0b-8514-40a1-9d27-8489cab72503,46169f0b-8514-40a1-9d27-8489cab72503,1,0,d9cf39cc-8652-4c4d-bc5b-b4e455c0083f,d9cf39cc-8652-4c4d-bc5b-b4e455c0083f,1,0,4b0d7d39-5f79-4a21-b0bb-d3142a3bc8a9,4b0d7d39-5f79-4a21-b0bb-d3142a3bc8a9,1,0,c90243af-582c-4f5a-88e7-e0cbc0555fcb,c90243af-582c-4f5a-88e7-e0cbc0555fcb,1,0,14bf4066-15cb-4165-b854-45443ee27da1,14bf4066-15cb-4165-b854-45443ee27da1,1,0,a0861dd3-ced5-485e-8719-0ad0bc3adc0d,a0861dd3-ced5-485e-8719-0ad0bc3adc0d,1,0,5a94a307-3f54-4753-8ef5-ce9f88417827,5a94a307-3f54-4753-8ef5-ce9f88417827,1,0,0f09b6b8-72ac-4461-96c4-683be403e2ff,0f09b6b8-72ac-4461-96c4-683be403e2ff,1,0,b73d0f07-9c6e-41b1-9acc-8e83dacd7528,b73d0f07-9c6e-41b1-9acc-8e83dacd7528,1,0,19d1d74a-de5f-475a-896c-a32b7d28f918,19d1d74a-de5f-475a-896c-a32b7d28f918,1,0,4427cab9-4eea-4415-98ef-6021a447c60c,4427cab9-4eea-4415-98ef-6021a447c60c,1,0,fe46b4da-d865-468f-badd-83644bf88faa,fe46b4da-d865-468f-badd-83644bf88faa,1,0,2851c9d4-4366-4488-926d-a7fcd3b1548c,2851c9d4-4366-4488-926d-a7fcd3b1548c,1,0,31116aa2-cfbc-48e8-886b-45c1c17508fd,31116aa2-cfbc-48e8-886b-45c1c17508fd,1,0,6aa819d3-c56d-4561-a2e4-a1188ab1295a,6aa819d3-c56d-4561-a2e4-a1188ab1295a,1,0,2ddf344d-7065-40d5-9306-23870d8fc04a,2ddf344d-7065-40d5-9306-23870d8fc04a,1,0,c630ab2d-0a20-4136-88b6-220b2cad6a71,c630ab2d-0a20-4136-88b6-220b2cad6a71,1,0,00cd1dea-bc54-475c-956d-dc5221104932,00cd1dea-bc54-475c-956d-dc5221104932,1,0,3807f865-dd2c-44f7-9238-3db191f0a186,3807f865-dd2c-44f7-9238-3db191f0a186,1,0,e6a53f32-0b7d-499d-844e-fb8df13a3519,e6a53f32-0b7d-499d-844e-fb8df13a3519,1,0,f79ac41b-6ab2-4afc-aa98-b70b72d78bb4,f79ac41b-6ab2-4afc-aa98-b70b72d78bb4,1,0,2c5a56d3-386e-45df-adc2-4471f52f9bdc,2c5a56d3-386e-45df-adc2-4471f52f9bdc,1,0,8f184df5-bfe8-4df3-bc7c-18218cef7650,8f184df5-bfe8-4df3-bc7c-18218cef7650,1,0,387e273a-889f-454b-8b43-feaa12025fde,387e273a-889f-454b-8b43-feaa12025fde,1,0,22474ca3-565b-4b67-a5b4-b0b959306d10,22474ca3-565b-4b67-a5b4-b0b959306d10,1,0,1c38ad75-b294-4c05-89ce-69ce4d9a291f,1c38ad75-b294-4c05-89ce-69ce4d9a291f,1,0,078d1e8f-6d27-4761-9532-b1e7a60e4c13,078d1e8f-6d27-4761-9532-b1e7a60e4c13,1,0,4262193c-58ad-47c6-8088-735d8cd037ea,4262193c-58ad-47c6-8088-735d8cd037ea,1,0,36a2b5f9-ded5-4fc3-a7bd-e12b37cd6bab,36a2b5f9-ded5-4fc3-a7bd-e12b37cd6bab,1,0,de6d1aad-39eb-46ce-87aa-d29812bb37bf,de6d1aad-39eb-46ce-87aa-d29812bb37bf,1,0,4ad859ec-cc75-4bac-9e89-397798450e48,4ad859ec-cc75-4bac-9e89-397798450e48,1,0,d93ab94c-0f55-4b80-b226-41b44c73b3ea,d93ab94c-0f55-4b80-b226-41b44c73b3ea,1,0,94cbed80-5a35-471f-b354-439a11629210,94cbed80-5a35-471f-b354-439a11629210,1,0,1162cc0a-42e5-47cb-9507-68459579f110,1162cc0a-42e5-47cb-9507-68459579f110,1,0,17f9f188-d3fd-4fe1-a00c-b0dde64a0f9e,17f9f188-d3fd-4fe1-a00c-b0dde64a0f9e,1,0,bb49dc80-4934-4f44-8f27-9a363dca8dc4,bb49dc80-4934-4f44-8f27-9a363dca8dc4,1,0,7338e497-03a7-4ed4-85a2-ca802c065a9f,7338e497-03a7-4ed4-85a2-ca802c065a9f,1,0,49fe879c-8972-4c9a-bb08-e3e5b2e5ff84,49fe879c-8972-4c9a-bb08-e3e5b2e5ff84,1,0,5249687b-9ff4-46f5-be15-dbb5d5047fd1,5249687b-9ff4-46f5-be15-dbb5d5047fd1,1,0,d33df51c-3dcd-496c-90f2-7ee05582bdf7,d33df51c-3dcd-496c-90f2-7ee05582bdf7,1,0,24b39ebd-2424-4939-8e3e-d09eb674d409,24b39ebd-2424-4939-8e3e-d09eb674d409,1,0,08c751bb-9e57-4536-901e-bb316c8e96d7,08c751bb-9e57-4536-901e-bb316c8e96d7,1,0,de0afa6f-07c6-441c-a4ca-e7ed709a8da5,de0afa6f-07c6-441c-a4ca-e7ed709a8da5,1,0,034cdcef-08e5-4751-9885-400aa69e0b94,034cdcef-08e5-4751-9885-400aa69e0b94,1,0,3e44d463-f253-4a64-8d68-631fcb66935c,3e44d463-f253-4a64-8d68-631fcb66935c,1,0,653d6483-029b-4453-a7d0-3a3c6d9d0b05,653d6483-029b-4453-a7d0-3a3c6d9d0b05,1,0,ac507771-50bd-4f8b-b72f-5954562c9131,ac507771-50bd-4f8b-b72f-5954562c9131,1,0,efefebea-2032-4006-b9ca-50a23b7da1ef,efefebea-2032-4006-b9ca-50a23b7da1ef,1,0,4c794d37-3352-4acb-a939-5e90fb682db8,4c794d37-3352-4acb-a939-5e90fb682db8,1,0,5f3fea83-6ca8-481b-9e2b-789a6fd01e2e,5f3fea83-6ca8-481b-9e2b-789a6fd01e2e,1,0,008f5068-da9c-4dac-9c0a-a50366d27cbb,008f5068-da9c-4dac-9c0a-a50366d27cbb,1,0,950b3ee3-070f-4946-8b9b-0aa2058de986,950b3ee3-070f-4946-8b9b-0aa2058de986,1,0,bd04a870-0943-4bdb-9e30-50a69daa8a13,bd04a870-0943-4bdb-9e30-50a69daa8a13,1,0,a23e6c77-8c12-4f99-ae2d-68a12274be38,a23e6c77-8c12-4f99-ae2d-68a12274be38,1,0,3c4454cd-31e9-42a5-9127-fb66a628f0e1,3c4454cd-31e9-42a5-9127-fb66a628f0e1,1,0,c02c5cbf-b25a-4956-8aa7-74cfeb66d508,c02c5cbf-b25a-4956-8aa7-74cfeb66d508,1,0,31cac1e9-eb16-489c-9322-30d1e27a80b3,31cac1e9-eb16-489c-9322-30d1e27a80b3,1,0,0d100e33-7941-41c1-962d-7672c874e9c5,0d100e33-7941-41c1-962d-7672c874e9c5,1,0,c5ac53c9-c9b2-4b90-a21e-10f1daa756c5,c5ac53c9-c9b2-4b90-a21e-10f1daa756c5,1,0,6e61d717-de36-4dce-8af9-b6c14ed76acb,6e61d717-de36-4dce-8af9-b6c14ed76acb,1,0,474518fe-9cb5-4a12-9388-bc7a64511617,474518fe-9cb5-4a12-9388-bc7a64511617,1,0,64337614-b1c9-4931-b576-448721fa4602,64337614-b1c9-4931-b576-448721fa4602,1,0,1d73b59c-0594-4ed3-b584-cf1261941e1d,1d73b59c-0594-4ed3-b584-cf1261941e1d,1,0,8ff2547f-d596-4fa1-9e12-079e1cc4c057,8ff2547f-d596-4fa1-9e12-079e1cc4c057,1,0,1ab0c8f8-b908-4618-ae88-af37b8f1224e,1ab0c8f8-b908-4618-ae88-af37b8f1224e,1,0,bd3ec5a9-161d-487e-ab1d-e5e15a6e3a7b,bd3ec5a9-161d-487e-ab1d-e5e15a6e3a7b,1,0,b85b3a58-95e4-4698-b1ae-037901ecc1b1,b85b3a58-95e4-4698-b1ae-037901ecc1b1,1,0,b77d748a-d180-432d-91c3-774e6ccf7efa,b77d748a-d180-432d-91c3-774e6ccf7efa,1,0,e5b9c1b0-4690-442c-b160-e6c587e42e57,e5b9c1b0-4690-442c-b160-e6c587e42e57,1,0,e3adb576-6b33-475b-976b-7a6783de3184,e3adb576-6b33-475b-976b-7a6783de3184,1,0,c6cef8db-0689-42a6-9f43-c86b7c3cf0e9,c6cef8db-0689-42a6-9f43-c86b7c3cf0e9,1,0,78f5a205-dffb-4009-897a-e8f36372f33c,78f5a205-dffb-4009-897a-e8f36372f33c,1,0,f7597041-f182-42fb-803a-2521c70d627d,f7597041-f182-42fb-803a-2521c70d627d,1,0,ce988b8a-d0c1-400a-9466-aa757501bb58,ce988b8a-d0c1-400a-9466-aa757501bb58,1,0,ab98d665-8da8-406e-9e0e-3e130ab393ef,ab98d665-8da8-406e-9e0e-3e130ab393ef,1,0,9e823bb6-b0c0-439e-81e4-ebd46b79b99c,9e823bb6-b0c0-439e-81e4-ebd46b79b99c,1,0,118a0e62-c0bb-435b-9e3e-c64563efa602,118a0e62-c0bb-435b-9e3e-c64563efa602,1,0,b57bc8a9-8a59-4192-a442-2e1982e83179,b57bc8a9-8a59-4192-a442-2e1982e83179,1,0,5b06ccda-2a70-4621-8273-78408cbe72a9,5b06ccda-2a70-4621-8273-78408cbe72a9,1,0,89753385-64fd-4e76-9857-bfd5d7c23f71,89753385-64fd-4e76-9857-bfd5d7c23f71,1,0,1b3113f3-e7d4-4e6f-b6ed-08f5fd78c68e,1b3113f3-e7d4-4e6f-b6ed-08f5fd78c68e,1,0,53e72cf2-e2a5-4b59-b5b1-a1fc28fda5bf,53e72cf2-e2a5-4b59-b5b1-a1fc28fda5bf,1,0,e20bcb57-2f68-4709-8a11-105d561a2dda,e20bcb57-2f68-4709-8a11-105d561a2dda,1,0,3df3f61a-2c17-4278-8d82-91089f793e6a,3df3f61a-2c17-4278-8d82-91089f793e6a,1,0,ea8beea1-7d80-4613-b2f9-79ee612e977a,ea8beea1-7d80-4613-b2f9-79ee612e977a,1,0,afd62a32-fdbb-429a-9a64-89c61a07e018,afd62a32-fdbb-429a-9a64-89c61a07e018,1,0,027cef43-99bd-48d3-a1a3-2102ac003742,027cef43-99bd-48d3-a1a3-2102ac003742,1,0,00197ea9-de76-4e2a-97bc-93e44053e35e,00197ea9-de76-4e2a-97bc-93e44053e35e,1,0,540a47b8-f6d4-4531-ac87-3f7cfbef4c8c,540a47b8-f6d4-4531-ac87-3f7cfbef4c8c,1,0,a51f7c6f-2631-4d23-becc-c0e8b711fddd,a51f7c6f-2631-4d23-becc-c0e8b711fddd,1,0,37806357-d92c-4bea-a5ef-77f138578fda,37806357-d92c-4bea-a5ef-77f138578fda,1,0,91b100e6-fbbe-4bb0-8d51-d12595a2a3e8,91b100e6-fbbe-4bb0-8d51-d12595a2a3e8,1,0,0a880538-f97f-448e-a4a9-82b0194dbe28,0a880538-f97f-448e-a4a9-82b0194dbe28,1,0,179868b7-d342-4df0-9386-c114d75faf3a,179868b7-d342-4df0-9386-c114d75faf3a,1,0,bbc4cc8c-31c2-4fcf-b86c-9ec65b2772b0,bbc4cc8c-31c2-4fcf-b86c-9ec65b2772b0,1,0,b49ea672-5d01-46c2-8ece-2511afeb740d,b49ea672-5d01-46c2-8ece-2511afeb740d,1,0,77bb5aba-1364-4db9-aa93-69f001ce2709,77bb5aba-1364-4db9-aa93-69f001ce2709,1,0,d14528d6-c2dd-4184-98c5-0b444a2bd98b,d14528d6-c2dd-4184-98c5-0b444a2bd98b,1,0,48f81387-a409-4163-85b8-ad563cb6cf2e,48f81387-a409-4163-85b8-ad563cb6cf2e,1,0,739df12e-1b6b-45c6-802b-658641fb9e90,739df12e-1b6b-45c6-802b-658641fb9e90,1,0,4d72bd30-8d60-4f84-9ad8-83489d9cb3fb,4d72bd30-8d60-4f84-9ad8-83489d9cb3fb,1,0,7e4afed8-5c56-4765-bcd0-a40e6121ba22,7e4afed8-5c56-4765-bcd0-a40e6121ba22,1,0,155660a1-8a63-4562-a715-d75a8af7176b,155660a1-8a63-4562-a715-d75a8af7176b,1,0,878fe826-fa99-44ad-9891-5eada9744017,878fe826-fa99-44ad-9891-5eada9744017,1,0,0d61712a-dfaf-46f1-b728-62993dd94fbe,0d61712a-dfaf-46f1-b728-62993dd94fbe,1,0,3a6cf496-09b9-4947-9df5-06d23b474558,3a6cf496-09b9-4947-9df5-06d23b474558,1,0,625b498a-33d1-4162-9525-fb7790cbb6a8,625b498a-33d1-4162-9525-fb7790cbb6a8,1,0,28223f7b-d15a-4f12-b57c-1f6d08a902f9,28223f7b-d15a-4f12-b57c-1f6d08a902f9,1,0,dd9eb5b7-5aed-4e51-9939-9ff14492d240,dd9eb5b7-5aed-4e51-9939-9ff14492d240,1,0,b2a14899-d589-4990-b85e-7bffb427e8af,b2a14899-d589-4990-b85e-7bffb427e8af,1,0,0981d114-05bd-4ee1-a8fd-398fa6620d0b,0981d114-05bd-4ee1-a8fd-398fa6620d0b,1,0,3210ba40-382e-4917-ad0f-9bd88d23dc25,3210ba40-382e-4917-ad0f-9bd88d23dc25,1,0,835e3ead-d01f-410b-937a-902dd5e66aec,835e3ead-d01f-410b-937a-902dd5e66aec,1,0,40141982-d1d6-416f-844e-19143a407ff9,40141982-d1d6-416f-844e-19143a407ff9,1,0,618b8843-7413-4634-bd65-18d904c2582f,618b8843-7413-4634-bd65-18d904c2582f,1,0,253b97a6-4e04-40d0-a39e-99500d54accb,253b97a6-4e04-40d0-a39e-99500d54accb,1,0,46cf1217-4b49-4c35-9c2b-4739dd1b8bf5,46cf1217-4b49-4c35-9c2b-4739dd1b8bf5,1,0,db367faa-e417-40ff-a082-e93421d464ca,db367faa-e417-40ff-a082-e93421d464ca,1,0,55ad14cb-7647-4d16-ae68-ac45e4a39c01,55ad14cb-7647-4d16-ae68-ac45e4a39c01,1,0,f0363f45-9d63-4f0b-b7fc-95cb0d1660af,f0363f45-9d63-4f0b-b7fc-95cb0d1660af,1,0,d8a16236-89bc-4493-9b8e-fd5d3f9298a7,d8a16236-89bc-4493-9b8e-fd5d3f9298a7,1,0,b12a0998-905e-4956-af8b-6460dc945c10,b12a0998-905e-4956-af8b-6460dc945c10,1,0,6a958a2b-e914-4321-9e95-3203e8011b8c,6a958a2b-e914-4321-9e95-3203e8011b8c,1,0,176181ff-58af-4392-817e-49e37caa73ce,176181ff-58af-4392-817e-49e37caa73ce,1,0,917d059b-91d9-4f74-8c10-d0016162f77e,917d059b-91d9-4f74-8c10-d0016162f77e,1,0,95fd99eb-b139-4b7a-93db-70419e9a809b,95fd99eb-b139-4b7a-93db-70419e9a809b,1,0,c60b9f4f-870f-4478-b2b4-e8afa9324d54,c60b9f4f-870f-4478-b2b4-e8afa9324d54,1,0,e31d2420-266e-408a-a4bf-673194a555d3,e31d2420-266e-408a-a4bf-673194a555d3,1,0,31418550-c525-448b-a054-6b055aa11267,31418550-c525-448b-a054-6b055aa11267,1,0,2003c769-556e-41a6-a7a6-4c5c7263e48d,2003c769-556e-41a6-a7a6-4c5c7263e48d,1,0,66ec2482-c1f3-45d3-9257-e0b9f5ae772a,66ec2482-c1f3-45d3-9257-e0b9f5ae772a,1,0,d3211832-c8ca-437a-8810-82e06cbb48de,d3211832-c8ca-437a-8810-82e06cbb48de,1,0,8131d701-1014-4196-9b67-914e451f8a3a,8131d701-1014-4196-9b67-914e451f8a3a,1,0,2b102933-c660-4e74-ae9a-5061a88ed672,2b102933-c660-4e74-ae9a-5061a88ed672,1,0,56c897b7-d34e-4d7d-9a3b-d0779be5c189,56c897b7-d34e-4d7d-9a3b-d0779be5c189,1,0,3ac81c80-56bd-4750-b135-07ab522e3eab,3ac81c80-56bd-4750-b135-07ab522e3eab,1,0,5657872f-c7d5-446f-bcc3-d0b86ad63a42,5657872f-c7d5-446f-bcc3-d0b86ad63a42,1,0,d5214cb9-67e2-469f-989f-3f2b662ae830,d5214cb9-67e2-469f-989f-3f2b662ae830,1,0,69679e88-4f2b-4dd6-8cb2-b88293d07b55,69679e88-4f2b-4dd6-8cb2-b88293d07b55,1,0,68679208-9972-4854-8649-49bdf6212255,68679208-9972-4854-8649-49bdf6212255,1,0,98393093-7ba6-4b4d-86be-ee5826cd8cd5,98393093-7ba6-4b4d-86be-ee5826cd8cd5,1,0,87de486d-3f35-4432-a7cd-9d3832db63cf,87de486d-3f35-4432-a7cd-9d3832db63cf,1,0,246f17a0-93a7-4e2c-8fa6-f57405f0abeb,246f17a0-93a7-4e2c-8fa6-f57405f0abeb,1,0,ea6c4830-a34d-4026-a0ca-5cf7e44f089d,ea6c4830-a34d-4026-a0ca-5cf7e44f089d,1,0,bb7ce04a-8143-4c0b-a196-1b57f1640142,bb7ce04a-8143-4c0b-a196-1b57f1640142,1,0,4872f12c-705c-4dd3-802f-d27496a0d634,4872f12c-705c-4dd3-802f-d27496a0d634,1,0,3bacfd93-dfc7-4154-9d3f-b61ddc5c6721,3bacfd93-dfc7-4154-9d3f-b61ddc5c6721,1,0,0c0bbfba-c1c4-4bb5-a813-10da4bef7911,0c0bbfba-c1c4-4bb5-a813-10da4bef7911,1,0,f9ada91a-e673-4821-9bce-cb0dd75ca28b,f9ada91a-e673-4821-9bce-cb0dd75ca28b,1,0,9fcf68bb-43e2-4cd1-89ec-8797ad9c0e8b,9fcf68bb-43e2-4cd1-89ec-8797ad9c0e8b,1,0,90ce635a-0277-4056-980d-d1a16d91cb30,90ce635a-0277-4056-980d-d1a16d91cb30,1,0,e61a8360-a0f8-4d86-b91a-2ae9b8552bf0,e61a8360-a0f8-4d86-b91a-2ae9b8552bf0,1,0,1e77e873-632c-482b-8f46-8f8cc3cc8cef,1e77e873-632c-482b-8f46-8f8cc3cc8cef,1,0,00605607-03ab-43fc-ba08-9fc32f582d0a,00605607-03ab-43fc-ba08-9fc32f582d0a,1,0,5ab0a910-74ab-4af0-b5a3-40845a789fde,5ab0a910-74ab-4af0-b5a3-40845a789fde,1,0,bb659006-c11e-4427-8d86-229ba43ef679,bb659006-c11e-4427-8d86-229ba43ef679,1,0,766208a3-2780-427b-a7d3-93abe99d236b,766208a3-2780-427b-a7d3-93abe99d236b,1,0,63ce4c3c-5bad-409c-904f-18f34cf1da78,63ce4c3c-5bad-409c-904f-18f34cf1da78,1,0,62bddcee-bef6-42cc-9ba3-e99b8160dcc2,62bddcee-bef6-42cc-9ba3-e99b8160dcc2,1,0,26ac22f9-0bbb-4671-b446-626e345e2461,26ac22f9-0bbb-4671-b446-626e345e2461,1,0,0d63ee6d-e17f-4a86-b384-adf9793f3331,0d63ee6d-e17f-4a86-b384-adf9793f3331,1,0,f152945b-2a7b-449e-a915-176166af7bac,f152945b-2a7b-449e-a915-176166af7bac,1,0,77f5d86a-7fae-4490-9740-0e31102dab5c,77f5d86a-7fae-4490-9740-0e31102dab5c,1,0,5a54bc1a-d178-412c-bf4a-cf92d7f141aa,5a54bc1a-d178-412c-bf4a-cf92d7f141aa,1,0,24be43ec-d39e-46aa-9c11-2536b835e515,24be43ec-d39e-46aa-9c11-2536b835e515,1,0,c9ca80ef-c7b7-4425-b5c0-3d13af82f291,c9ca80ef-c7b7-4425-b5c0-3d13af82f291,1,0,df9af3ee-6a69-4a03-8ff5-0735e9a38013,df9af3ee-6a69-4a03-8ff5-0735e9a38013,1,0,1b27eb77-d535-43a5-8ae1-fa2fec15d92c,1b27eb77-d535-43a5-8ae1-fa2fec15d92c,1,0,7743fe24-b941-4dad-bc76-05fb6b26b1d7,7743fe24-b941-4dad-bc76-05fb6b26b1d7,1,0,5bf2da0d-f318-4036-9234-8a3a6eca88b2,5bf2da0d-f318-4036-9234-8a3a6eca88b2,1,0,288525fc-d3fa-4c8e-a1d7-d2d1ef4cd0ef,288525fc-d3fa-4c8e-a1d7-d2d1ef4cd0ef,1,0,c3634571-6fe5-45ab-9362-161305eef661,c3634571-6fe5-45ab-9362-161305eef661,1,0,ec11342f-594f-416f-a10f-bd1bfa695c08,ec11342f-594f-416f-a10f-bd1bfa695c08,1,0,31c3ac44-204e-43fd-bca3-fd18fa091c58,31c3ac44-204e-43fd-bca3-fd18fa091c58,1,0,74f03c35-5da0-406e-a938-e8e5d49975ef,74f03c35-5da0-406e-a938-e8e5d49975ef,1,0,c9ab3890-6d16-431f-ab2b-b5058e6202a4,c9ab3890-6d16-431f-ab2b-b5058e6202a4,1,0,5ee9eed7-3c6c-4264-ab9a-6f24f9c80598,5ee9eed7-3c6c-4264-ab9a-6f24f9c80598,1,0,3c33adc7-abea-4e0f-9e5d-d8f10abb63df,3c33adc7-abea-4e0f-9e5d-d8f10abb63df,1,0,4090c6f7-1d25-4b17-9baa-18daa0640b0f,4090c6f7-1d25-4b17-9baa-18daa0640b0f,1,0,26125e58-dfc8-4bbb-a3a4-80616471746e,26125e58-dfc8-4bbb-a3a4-80616471746e,1,0,b1c699cd-efdc-461c-ad37-10bfd4bc9674,b1c699cd-efdc-461c-ad37-10bfd4bc9674,1,0,6add1920-5073-4b1e-b7e0-13bf1e65e4c3,6add1920-5073-4b1e-b7e0-13bf1e65e4c3,1,0,f12c946c-98e4-4da6-8a88-c555e9dc3bdd,f12c946c-98e4-4da6-8a88-c555e9dc3bdd,1,0,ec5718b7-1c4d-4bdc-9426-40a339bb29cf,ec5718b7-1c4d-4bdc-9426-40a339bb29cf,1,0,ecd8772d-e33f-426f-a87a-e28bd94d5fdf,ecd8772d-e33f-426f-a87a-e28bd94d5fdf,1,0,96661303-1286-4f84-93b7-0e6da2bd7893,96661303-1286-4f84-93b7-0e6da2bd7893,1,0,68076431-36e6-46dc-92cb-e0d8e605bf66,68076431-36e6-46dc-92cb-e0d8e605bf66,1,0,239fa55a-6572-4e5c-9918-c2e14063c76d,239fa55a-6572-4e5c-9918-c2e14063c76d,1,0,8211a1b6-c3b1-466b-8d11-22603fb50c7a,8211a1b6-c3b1-466b-8d11-22603fb50c7a,1,0,7e7dfcb5-04eb-40f4-8f4c-f29644e81473,7e7dfcb5-04eb-40f4-8f4c-f29644e81473,1,0,daef68a3-c6c3-450d-b8fd-7af2a2f5572e,daef68a3-c6c3-450d-b8fd-7af2a2f5572e,1,0,a83cb338-5707-42c9-9e88-11f6c68fcc32,a83cb338-5707-42c9-9e88-11f6c68fcc32,1,0,985106b7-7476-4b48-90ac-ad86876395b5,985106b7-7476-4b48-90ac-ad86876395b5,1,0,0d8db0c9-adbc-478d-997c-3d7feccac99b,0d8db0c9-adbc-478d-997c-3d7feccac99b,1,0,3fd2ef04-c178-47bf-ab62-7baf83236d99,3fd2ef04-c178-47bf-ab62-7baf83236d99,1,0,b4cd1b51-dbc0-4bb0-879e-5ac0d58e78c1,b4cd1b51-dbc0-4bb0-879e-5ac0d58e78c1,1,0,320bf2e6-a3a8-490b-8aa0-21369ffb121b,320bf2e6-a3a8-490b-8aa0-21369ffb121b,1,0,a3bafc54-8fe4-4841-acc6-74a87baf9caf,a3bafc54-8fe4-4841-acc6-74a87baf9caf,1,0,f93741c9-ab94-464b-b0d4-4af99c9f92d5,f93741c9-ab94-464b-b0d4-4af99c9f92d5,1,0,0fddbd8d-12dd-4af1-9e34-feebf4bc38b1,0fddbd8d-12dd-4af1-9e34-feebf4bc38b1,1,0,2e9548a6-1fd8-4430-8864-91bde0d2a7a1,2e9548a6-1fd8-4430-8864-91bde0d2a7a1,1,0,c59fd3f8-c734-49d3-90ba-e608a22ac981,c59fd3f8-c734-49d3-90ba-e608a22ac981,1,0,b26235ed-374c-44ab-8b3c-01d7c4d82d4c,b26235ed-374c-44ab-8b3c-01d7c4d82d4c,1,0,5056db9f-9ebe-4cca-98f0-5f4817a1cba4,5056db9f-9ebe-4cca-98f0-5f4817a1cba4,1,0,475f76ea-f494-41f1-9b65-f39907e5a427,475f76ea-f494-41f1-9b65-f39907e5a427,1,0,986280d1-41bb-4b15-a5ae-516d6a04c1f4,986280d1-41bb-4b15-a5ae-516d6a04c1f4,1,0,43bfd29a-d254-4c33-8639-200b483578c1,43bfd29a-d254-4c33-8639-200b483578c1,1,0,6a274167-7f80-4613-9890-259ffd8ccfc4,6a274167-7f80-4613-9890-259ffd8ccfc4,1,0,00696255-ea14-4fee-8633-0962f3c441d1,00696255-ea14-4fee-8633-0962f3c441d1,1,0,4e90e1ab-b1ec-4795-ad45-1db151a5492c,4e90e1ab-b1ec-4795-ad45-1db151a5492c,1,0,91791e56-ca80-4d90-b8a8-16145f6a9721,91791e56-ca80-4d90-b8a8-16145f6a9721,1,0,b242c6a2-5ac9-4edb-b5dd-24eda8162151,b242c6a2-5ac9-4edb-b5dd-24eda8162151,1,0,8d080f3c-06ed-48bf-9709-eea73d676741,8d080f3c-06ed-48bf-9709-eea73d676741,1,0,57b31a5d-9fdc-43d2-ae81-67157822c4b6,57b31a5d-9fdc-43d2-ae81-67157822c4b6,1,0,d4e2da66-9a70-459f-a873-cb4ad71d17b2,d4e2da66-9a70-459f-a873-cb4ad71d17b2,1,0,a84a91d2-d326-4bf4-82e6-d573ee35d090,a84a91d2-d326-4bf4-82e6-d573ee35d090,1,0,39cbda23-db3f-4ddd-8981-8540247406db,39cbda23-db3f-4ddd-8981-8540247406db,1,0,c8a18d99-62ff-45a4-acb5-48e3310c1b53,c8a18d99-62ff-45a4-acb5-48e3310c1b53,1,0,a6eb0cb1-80f0-4390-80ff-7af53f8e63c3,a6eb0cb1-80f0-4390-80ff-7af53f8e63c3,1,0,fef27478-ddfd-4ad9-8161-148761f29698,fef27478-ddfd-4ad9-8161-148761f29698,1,0,3500c6fa-813a-49dd-a4bf-163500db5b7f,3500c6fa-813a-49dd-a4bf-163500db5b7f,1,0,1d02493a-dd89-4a51-b75e-9c49f9818b95,1d02493a-dd89-4a51-b75e-9c49f9818b95,1,0,2845c5d1-e836-4499-bcae-f3c8fdae75ee,2845c5d1-e836-4499-bcae-f3c8fdae75ee,1,0,fe4e8e4e-9471-4583-b9b3-576007db08ee,fe4e8e4e-9471-4583-b9b3-576007db08ee,1,0,49deaaa8-6d50-4b25-8153-6712d88fb0fb,49deaaa8-6d50-4b25-8153-6712d88fb0fb,1,0,1eeb7634-e924-4ad8-92e0-1c54c22b1ba6,1eeb7634-e924-4ad8-92e0-1c54c22b1ba6,1,0,46a06de8-06fd-4b49-835f-4f24b832b3c4,46a06de8-06fd-4b49-835f-4f24b832b3c4,1,0,3845a567-4375-4c3a-af61-5b82674060ab,3845a567-4375-4c3a-af61-5b82674060ab,1,0,ab210fb8-4fc4-47f8-b8ef-3a00eeb0ab8b,ab210fb8-4fc4-47f8-b8ef-3a00eeb0ab8b,1,0,a835a3a7-989b-4247-b836-d23bba2f391a,a835a3a7-989b-4247-b836-d23bba2f391a,1,0,58f5c354-8f1d-4064-ba35-527ea3d2f4a9,58f5c354-8f1d-4064-ba35-527ea3d2f4a9,1,0,9b149c20-9328-4e2d-a34b-95c883ae4dcc,9b149c20-9328-4e2d-a34b-95c883ae4dcc,1,0,dd6fdc0d-49bb-4fa1-aa17-bd9dc38a0992,dd6fdc0d-49bb-4fa1-aa17-bd9dc38a0992,1,0,f8dbf226-ea56-4b15-baf1-a41fceba2a32,f8dbf226-ea56-4b15-baf1-a41fceba2a32,1,0,fc1476f7-26e6-4374-b99b-e515d86c050a,fc1476f7-26e6-4374-b99b-e515d86c050a,1,0,e0eb7b4a-9a13-4752-9327-e13d2abc4fc5,e0eb7b4a-9a13-4752-9327-e13d2abc4fc5,1,0,c4753515-a483-453e-a48b-b12d8ef48fd9,c4753515-a483-453e-a48b-b12d8ef48fd9,1,0,2d9048eb-abdf-4980-96ed-788fbb0f4ea7,2d9048eb-abdf-4980-96ed-788fbb0f4ea7,1,0,98c3bc52-2351-460c-8b8e-0d3f45ca3131,98c3bc52-2351-460c-8b8e-0d3f45ca3131,1,0,b1ff31b9-c9f2-4be4-ac9a-62faa1d1eb81,b1ff31b9-c9f2-4be4-ac9a-62faa1d1eb81,1,0,c14ea7a0-1fb6-4d54-82d6-7f12f11b0c0b,c14ea7a0-1fb6-4d54-82d6-7f12f11b0c0b,1,0,29645810-44aa-402c-9561-7819d6f4a7ab,29645810-44aa-402c-9561-7819d6f4a7ab,1,0,46bf4911-5200-44ac-9b4d-eb0089c12e34,46bf4911-5200-44ac-9b4d-eb0089c12e34,1,0,6e1685bd-7269-401c-b36e-def6a36b41d5,6e1685bd-7269-401c-b36e-def6a36b41d5,1,0,9d77103a-9921-4f6c-98fc-d7f42f0f2d8d,9d77103a-9921-4f6c-98fc-d7f42f0f2d8d,1,0,e03b6592-b597-4795-a78e-775d4f2258db,e03b6592-b597-4795-a78e-775d4f2258db,1,0,6ae9e86a-a42f-4de0-a891-6abe1ed16cdd,6ae9e86a-a42f-4de0-a891-6abe1ed16cdd,1,0,3b207d5f-6584-4cf2-9173-20235484f9f4,3b207d5f-6584-4cf2-9173-20235484f9f4,1,0,878d9efe-b0e7-487f-b8f7-83470c131e09,878d9efe-b0e7-487f-b8f7-83470c131e09,1,0,8270573d-8ed6-449d-853b-462d2dabaaa9,8270573d-8ed6-449d-853b-462d2dabaaa9,1,0,baeec6cd-b220-4240-95f2-3a0c1ee06c2e,baeec6cd-b220-4240-95f2-3a0c1ee06c2e,1,0,f2502463-67e4-4bfe-8ad5-fb80aa73975a,f2502463-67e4-4bfe-8ad5-fb80aa73975a,1,0,59e885e6-d978-40c2-95b6-35fc61074fb4,59e885e6-d978-40c2-95b6-35fc61074fb4,1,0,267dc512-9ee1-4bc1-9034-3effb7fb2949,267dc512-9ee1-4bc1-9034-3effb7fb2949,1,0,0f211e73-5be9-4015-93e7-ccf63e793cb6,0f211e73-5be9-4015-93e7-ccf63e793cb6,1,0,6574d8f4-fb97-4a26-b166-711fad63aa07,6574d8f4-fb97-4a26-b166-711fad63aa07,1,0,fb3eddaf-3241-4d59-8314-97a5ae9258c4,fb3eddaf-3241-4d59-8314-97a5ae9258c4,1,0,6528bd7a-bac1-4c8b-9b00-6be01c0121b1,6528bd7a-bac1-4c8b-9b00-6be01c0121b1,1,0,d8601e95-af94-4805-974a-99c539725d74,d8601e95-af94-4805-974a-99c539725d74,1,0,6d98f877-f3bb-4795-9025-2631468a331f,6d98f877-f3bb-4795-9025-2631468a331f,1,0,89b9379d-ace9-48cc-b979-a66fd45aeb1d,89b9379d-ace9-48cc-b979-a66fd45aeb1d,1,0,c4a5c44d-329d-41b5-9a6c-bddbc15f6249,c4a5c44d-329d-41b5-9a6c-bddbc15f6249,1,0,9767a113-5a42-4749-bf40-0f349e85615d,9767a113-5a42-4749-bf40-0f349e85615d,1,0,a3b0494c-f436-45ea-9577-4c0c86b057c9,a3b0494c-f436-45ea-9577-4c0c86b057c9,1,0,5101c142-b25c-4bef-80e7-7407f2c15c90,5101c142-b25c-4bef-80e7-7407f2c15c90,1,0,6d7872f1-fd54-41c4-8253-5f2b125f31ae,6d7872f1-fd54-41c4-8253-5f2b125f31ae,1,0,0c218200-27a8-4f71-9b09-3632dd453644,0c218200-27a8-4f71-9b09-3632dd453644,1,0,2d8a74e5-eb29-448b-b4c0-1f41fa171b5e,2d8a74e5-eb29-448b-b4c0-1f41fa171b5e,1,0,b5d30250-18ab-4af1-b99a-ff5dba334d1f,b5d30250-18ab-4af1-b99a-ff5dba334d1f,1,0,936f1aa5-7516-444b-b451-1162fa5d705f,936f1aa5-7516-444b-b451-1162fa5d705f,1,0,e8d5533e-2669-44f6-9eed-eaedab666d42,e8d5533e-2669-44f6-9eed-eaedab666d42,1,0,dd8e0f41-51a3-4bf2-a32e-084f9ad09be7,dd8e0f41-51a3-4bf2-a32e-084f9ad09be7,1,0,9e323b0d-4e3b-45d4-9705-aa30e63014f5,9e323b0d-4e3b-45d4-9705-aa30e63014f5,1,0,5afa798a-958e-4e0c-a380-0104f4c037a7,5afa798a-958e-4e0c-a380-0104f4c037a7,1,0,c0295fd9-c749-41b3-8d0d-6af16f484b1f,c0295fd9-c749-41b3-8d0d-6af16f484b1f,1,0,bd32a863-3090-432d-89c4-356ba86a0bdc,bd32a863-3090-432d-89c4-356ba86a0bdc,1,0,4621bf5a-46b5-4b82-8ae4-cc8e11e81ba0,4621bf5a-46b5-4b82-8ae4-cc8e11e81ba0,1,0,ed5465b4-a556-4078-ab18-49fef2afba2e,ed5465b4-a556-4078-ab18-49fef2afba2e,1,0,7368ab8f-59d5-4270-a43b-0f3e422169ed,7368ab8f-59d5-4270-a43b-0f3e422169ed,1,0,eeb0571b-1b74-4889-b8b5-f94186d692d7,eeb0571b-1b74-4889-b8b5-f94186d692d7,1,0,9ef3b72c-caa3-486b-9917-04c00f6689c1,9ef3b72c-caa3-486b-9917-04c00f6689c1,1,0,cb3039d8-4b11-4d03-b0ca-eae5dfc01b0a,cb3039d8-4b11-4d03-b0ca-eae5dfc01b0a,1,0,9245417f-f247-47ba-a1b4-a17ec2e8776c,9245417f-f247-47ba-a1b4-a17ec2e8776c,1,0,a4b721d7-b119-47eb-80e0-7db34c83964f,a4b721d7-b119-47eb-80e0-7db34c83964f,1,0,512629d1-e8b7-4f66-b613-b8c0cb9c250b,512629d1-e8b7-4f66-b613-b8c0cb9c250b,1,0,b7cf4684-4432-4658-9c06-b315d470a3a6,b7cf4684-4432-4658-9c06-b315d470a3a6,1,0,d3bc8211-54d8-47dd-aecf-5da72b65195f,d3bc8211-54d8-47dd-aecf-5da72b65195f,1,0,33f11da8-f670-4ec3-9d40-96fce031c60f,33f11da8-f670-4ec3-9d40-96fce031c60f,1,0,97cbd5b5-5a39-418c-93b5-f9934fa1ba4e,97cbd5b5-5a39-418c-93b5-f9934fa1ba4e,1,0,f74c2d41-2433-4bed-8aef-adfeed198252,f74c2d41-2433-4bed-8aef-adfeed198252,1,0,3c2b8a8a-bfe7-4e37-9d83-55a695a06605,3c2b8a8a-bfe7-4e37-9d83-55a695a06605,1,0,56c9703a-751a-4e6c-81f4-a8756fb040e3,56c9703a-751a-4e6c-81f4-a8756fb040e3,1,0,c3a86eec-1ff5-4392-9904-91a12a2e253a,c3a86eec-1ff5-4392-9904-91a12a2e253a,1,0,f5df72a3-c71c-412b-8c3e-6329f1d3a7da,f5df72a3-c71c-412b-8c3e-6329f1d3a7da,1,0,f02b7246-dae9-4e15-b4cd-b06133664d34,f02b7246-dae9-4e15-b4cd-b06133664d34,1,0,77f20022-17ce-4e00-8a84-015238bce6f3,77f20022-17ce-4e00-8a84-015238bce6f3,1,0,3734619b-7059-4547-8b97-0b3393389d4d,3734619b-7059-4547-8b97-0b3393389d4d,1,0,a30bf95f-aabd-4da0-8287-61e08f9362fb,a30bf95f-aabd-4da0-8287-61e08f9362fb,1,0,f5a7df18-2ddb-4053-9aeb-57fc37ae557e,f5a7df18-2ddb-4053-9aeb-57fc37ae557e,1,0,4078867c-2972-47f9-bebd-935a6f1cc667,4078867c-2972-47f9-bebd-935a6f1cc667,1,0,8502fe39-c241-4be5-a313-fd887bbbdfa1,8502fe39-c241-4be5-a313-fd887bbbdfa1,1,0,67a71201-13e5-42a3-902f-fb3a59710dfb,67a71201-13e5-42a3-902f-fb3a59710dfb,1,0,3a79a951-a997-4596-ab62-ba376d67725d,3a79a951-a997-4596-ab62-ba376d67725d,1,0,dd4fe688-c113-4ac5-8114-b89cf1b0eb55,dd4fe688-c113-4ac5-8114-b89cf1b0eb55,1,0,884c28de-434f-440a-8c63-67e659c097ad,884c28de-434f-440a-8c63-67e659c097ad,1,0,92ead3b5-8c55-4e4d-bd47-009e025b22f8,92ead3b5-8c55-4e4d-bd47-009e025b22f8,1,0,50d8e365-aa58-4b60-8992-01943379d485,50d8e365-aa58-4b60-8992-01943379d485,1,0,9bb58c7c-d87d-435b-adf6-09c8f75d47b2,9bb58c7c-d87d-435b-adf6-09c8f75d47b2,1,0,b3f7f763-bea9-4f59-9450-df95e5c3d89d,b3f7f763-bea9-4f59-9450-df95e5c3d89d,1,0,9111e28e-c1c7-414b-9288-61bd06a04d04,9111e28e-c1c7-414b-9288-61bd06a04d04,1,0,bcd705ba-c9ac-4e73-94b1-7632c0f06c04,bcd705ba-c9ac-4e73-94b1-7632c0f06c04,1,0,fec102ea-a3f6-49b5-b4b8-6884b0654129,fec102ea-a3f6-49b5-b4b8-6884b0654129,1,0,246571fb-38c7-4da6-929d-d8b44bc3437c,246571fb-38c7-4da6-929d-d8b44bc3437c,1,0,047fd6d7-5e30-4184-a09a-6525de526cc7,047fd6d7-5e30-4184-a09a-6525de526cc7,1,0,beb44b02-5d5e-4127-aee7-e184a43a4210,beb44b02-5d5e-4127-aee7-e184a43a4210,1,0,1dedfbc2-9250-4229-a6ea-5e085f33e7c3,1dedfbc2-9250-4229-a6ea-5e085f33e7c3,1,0,e24641ed-3e92-46d7-852b-9958ab7bc520,e24641ed-3e92-46d7-852b-9958ab7bc520,1,0,bc2aa3f9-ef2c-49a5-8cd9-ddd8a8cbe19d,bc2aa3f9-ef2c-49a5-8cd9-ddd8a8cbe19d,1,0,b6ac4cd6-c68f-4464-88e9-a8d335d581c6,b6ac4cd6-c68f-4464-88e9-a8d335d581c6,1,0,2c61114f-abd7-4415-8cdf-4fe95d9fe354,2c61114f-abd7-4415-8cdf-4fe95d9fe354,1,0,abd7a766-5cc1-48db-8d29-797e9d666a78,abd7a766-5cc1-48db-8d29-797e9d666a78,1,0,1704b5e3-8e77-4df6-9223-e6e5c41a280d,1704b5e3-8e77-4df6-9223-e6e5c41a280d,1,0,62eca88f-025d-44de-b92c-46cd8bc7e4a1,62eca88f-025d-44de-b92c-46cd8bc7e4a1,1,0,b0dde395-8498-4469-9507-d290798117d7,b0dde395-8498-4469-9507-d290798117d7,1,0,999616ea-0faa-4ae2-9841-6a6997ea6694,999616ea-0faa-4ae2-9841-6a6997ea6694,1,0,c5f91669-13d8-4f0a-a054-2701078da38a,c5f91669-13d8-4f0a-a054-2701078da38a,1,0,34f9872b-e02e-4093-ba06-3cb5b8995850,34f9872b-e02e-4093-ba06-3cb5b8995850,1,0,18515c19-c9ef-4c9f-8d12-4f58ffa251e8,18515c19-c9ef-4c9f-8d12-4f58ffa251e8,1,0,3afe11f6-7424-4b41-a42f-91db33756fa3,3afe11f6-7424-4b41-a42f-91db33756fa3,1,0,94e68502-adf1-476e-be2f-8418385959fa,94e68502-adf1-476e-be2f-8418385959fa,1,0,bf80ccc5-f907-4e7f-a007-6030c7ba682e,bf80ccc5-f907-4e7f-a007-6030c7ba682e,1,0,134bbd7c-cadd-4395-b7a4-0249dfe7d0b1,134bbd7c-cadd-4395-b7a4-0249dfe7d0b1,1,0,05f1f184-50cb-47c5-b3a8-62be6a9780c1,05f1f184-50cb-47c5-b3a8-62be6a9780c1,1,0,58e92a42-b650-4282-a2b2-2fe2cc0cf50d,58e92a42-b650-4282-a2b2-2fe2cc0cf50d,1,0,8c1a0b0c-3618-4e66-98b8-8b9e7ca63ca2,8c1a0b0c-3618-4e66-98b8-8b9e7ca63ca2,1,0,6cd10bda-0741-4445-9ffa-17182c9c5a58,6cd10bda-0741-4445-9ffa-17182c9c5a58,1,0,5c874c9a-fe67-45a3-a1d3-7ec1d1c55090,5c874c9a-fe67-45a3-a1d3-7ec1d1c55090,1,0,68a623fa-099a-4688-a7e9-444fb42eb650,68a623fa-099a-4688-a7e9-444fb42eb650,1,0,36ed0626-e389-4106-81bc-77462598bb45,36ed0626-e389-4106-81bc-77462598bb45,1,0,faeefd44-4e11-4a7d-8d4e-4dc9c6b60d59,faeefd44-4e11-4a7d-8d4e-4dc9c6b60d59,1,0,737d5b7f-0ee9-46b5-a509-f06b6176a293,737d5b7f-0ee9-46b5-a509-f06b6176a293,1,0,42eb6f71-0ed7-486a-92fb-976d1b46b081,42eb6f71-0ed7-486a-92fb-976d1b46b081,1,0,4a389216-b4c9-4368-af2c-1e51e32671a5,4a389216-b4c9-4368-af2c-1e51e32671a5,1,0,58c3936c-4db0-45c8-a22e-b5dd49a61497,58c3936c-4db0-45c8-a22e-b5dd49a61497,1,0,9aa607bc-5870-436a-bbe1-296560393e3b,9aa607bc-5870-436a-bbe1-296560393e3b,1,0,1635be16-4861-4a7d-babc-4caff448a7f7,1635be16-4861-4a7d-babc-4caff448a7f7,1,0,9e399087-c957-4a7a-ab9d-2b689736caab,9e399087-c957-4a7a-ab9d-2b689736caab,1,0,e7542e37-a2f0-43b5-852e-4e2b24b1b71f,e7542e37-a2f0-43b5-852e-4e2b24b1b71f,1,0,3e94649c-7d69-4fb4-ada1-ae00eabf02b6,3e94649c-7d69-4fb4-ada1-ae00eabf02b6,1,0,2b7372be-af0d-464e-8d09-8172229790af,2b7372be-af0d-464e-8d09-8172229790af,1,0,d85346db-be25-4dab-a2db-647c3d40dd17,d85346db-be25-4dab-a2db-647c3d40dd17,1,0,c7bafd34-5b15-42ec-b329-0be3002775ad,c7bafd34-5b15-42ec-b329-0be3002775ad,1,0,6feb2278-9149-47f8-a0ec-eb4bd9f44716,6feb2278-9149-47f8-a0ec-eb4bd9f44716,1,0,c960082b-8c16-4d7b-b7fd-b1f2bfe07e0b,c960082b-8c16-4d7b-b7fd-b1f2bfe07e0b,1,0,cd6770d5-cd3c-47af-bc46-c865993adf63,cd6770d5-cd3c-47af-bc46-c865993adf63,1,0,97ec899d-a2a0-4691-83ff-25b78dd49ef6,97ec899d-a2a0-4691-83ff-25b78dd49ef6,1,0,411db885-f761-44e5-bdd1-9fdf9e741ac1,411db885-f761-44e5-bdd1-9fdf9e741ac1,1,0,9f9936fc-54a0-4812-b12d-2f8f91551440,9f9936fc-54a0-4812-b12d-2f8f91551440,1,0,a5667633-9264-4dfa-9e26-c45e96e61ae3,a5667633-9264-4dfa-9e26-c45e96e61ae3,1,0,2eeea138-481c-4fde-9e8a-709d751cc469,2eeea138-481c-4fde-9e8a-709d751cc469,1,0,43e37533-ed38-4000-a387-5749f8d9aaf3,43e37533-ed38-4000-a387-5749f8d9aaf3,1,0,e93bdb44-64b3-43d8-b15a-c561dbb91974,e93bdb44-64b3-43d8-b15a-c561dbb91974,1,0,a7c7c835-5402-4bdd-a0e3-d21746174d5a,a7c7c835-5402-4bdd-a0e3-d21746174d5a,1,0,07e81872-afac-4720-86b4-91e7bf4a2881,07e81872-afac-4720-86b4-91e7bf4a2881,1,0,02c5f3b2-d691-4eaf-84fd-763770e4b1cb,02c5f3b2-d691-4eaf-84fd-763770e4b1cb,1,0,845262f8-8208-4c90-98ec-c85dd5734cf0,845262f8-8208-4c90-98ec-c85dd5734cf0,1,0,ad066c0d-4f4c-48af-9cc8-bb835372150a,ad066c0d-4f4c-48af-9cc8-bb835372150a,1,0,a2145e81-239e-4267-8a43-ea3f7babe878,a2145e81-239e-4267-8a43-ea3f7babe878,1,0,39598414-9c1d-46ec-a534-8bd43e622e45,39598414-9c1d-46ec-a534-8bd43e622e45,1,0,b552c510-4fd4-4c16-9022-dc5babcafc52,b552c510-4fd4-4c16-9022-dc5babcafc52,1,0,3892c06d-28f1-4238-a929-201316cac1ed,3892c06d-28f1-4238-a929-201316cac1ed,1,0,c13dea2e-17fa-4a5f-a70f-96e623db8a6b,c13dea2e-17fa-4a5f-a70f-96e623db8a6b,1,0,339e8cba-a92e-42f6-8d00-3b8b56ce3b0f,339e8cba-a92e-42f6-8d00-3b8b56ce3b0f,1,0,1f587ff1-95a4-4f45-85b4-22bb97011177,1f587ff1-95a4-4f45-85b4-22bb97011177,1,0,567c68fd-74c7-4b6e-9119-56ac8d78073c,567c68fd-74c7-4b6e-9119-56ac8d78073c,1,0,3326bbcb-b277-44db-a252-2448119e8146,3326bbcb-b277-44db-a252-2448119e8146,1,0,61cac5f7-320c-4098-9078-44fadcdeb219,61cac5f7-320c-4098-9078-44fadcdeb219,1,0,304304b1-36a4-42bb-8ab9-b23b59795001,304304b1-36a4-42bb-8ab9-b23b59795001,1,0,a22d1a4f-cb7c-4bcc-b258-ecca282fb071,a22d1a4f-cb7c-4bcc-b258-ecca282fb071,1,0,e5beda2c-f4e2-4a6b-a1d0-a877eb0c9f5b,e5beda2c-f4e2-4a6b-a1d0-a877eb0c9f5b,1,0,cd454738-62dd-4f95-af33-b52750678428,cd454738-62dd-4f95-af33-b52750678428,1,0,2a479b8f-7569-43d0-8ca3-9001d6ec57f0,2a479b8f-7569-43d0-8ca3-9001d6ec57f0,1,0,e4abafc6-f859-4d96-9818-5b9bf8d66d69,e4abafc6-f859-4d96-9818-5b9bf8d66d69,1,0,535acd2c-26d2-4f32-9ae6-cc1956317c59,535acd2c-26d2-4f32-9ae6-cc1956317c59,1,0,801adeeb-8a7f-44c1-b649-a7dfffc7b65d,801adeeb-8a7f-44c1-b649-a7dfffc7b65d,1,0,ac4e0868-ba49-46b4-8872-d42483a5591f,ac4e0868-ba49-46b4-8872-d42483a5591f,1,0,45e6c4a6-1d63-4b94-a7d2-fbd3fb68061b,45e6c4a6-1d63-4b94-a7d2-fbd3fb68061b,1,0,0493dcf1-5f94-41f9-a4c7-a52e12a29068,0493dcf1-5f94-41f9-a4c7-a52e12a29068,1,0,ca4c0299-625a-4b03-be0e-36ffb45c6d08,ca4c0299-625a-4b03-be0e-36ffb45c6d08,1,0,7fa1119b-4321-4b8f-a879-1d940084145a,7fa1119b-4321-4b8f-a879-1d940084145a,1,0,5d9c0841-6ea6-48dc-a53b-9f19894750f8,5d9c0841-6ea6-48dc-a53b-9f19894750f8,1,0,86b5303b-d967-4bc6-b2da-066c5a58613f,86b5303b-d967-4bc6-b2da-066c5a58613f,1,0,853b824d-9377-475f-913e-d02bd60f5f64,853b824d-9377-475f-913e-d02bd60f5f64,1,0,ee1f8545-ea64-41de-a29a-2d40e15d4f16,ee1f8545-ea64-41de-a29a-2d40e15d4f16,1,0,25ba3c5d-ace1-43cd-987f-68364b9b6970,25ba3c5d-ace1-43cd-987f-68364b9b6970,1,0,75ec7461-ec33-417a-bdb8-6337a8d08fb4,75ec7461-ec33-417a-bdb8-6337a8d08fb4,1,0,b8f5019e-b53f-4508-a042-bbadda2d1fd4,b8f5019e-b53f-4508-a042-bbadda2d1fd4,1,0,b250d233-70a0-4baf-8b7d-6e1d414a11b9,b250d233-70a0-4baf-8b7d-6e1d414a11b9,1,0,d5a73869-381e-4878-8db7-596643937202,d5a73869-381e-4878-8db7-596643937202,1,0,0c5e261f-961e-4780-877a-06589400b88a,0c5e261f-961e-4780-877a-06589400b88a,1,0,3a93f1d2-3e9c-41a9-9d53-314538a96bb2,3a93f1d2-3e9c-41a9-9d53-314538a96bb2,1,0,8bc4bece-027f-460c-ade0-d7c7d3d9a6b7,8bc4bece-027f-460c-ade0-d7c7d3d9a6b7,1,0,dd73a8d8-a6db-4d3c-a808-d82bad8876b9,dd73a8d8-a6db-4d3c-a808-d82bad8876b9,1,0,11a93e3a-3c5b-4242-913c-02474a383344,11a93e3a-3c5b-4242-913c-02474a383344,1,0,ddd2861c-592b-4879-b9de-4b05a22c0b43,ddd2861c-592b-4879-b9de-4b05a22c0b43,1,0,5b383021-a800-4f0b-b8a3-d344389bff6c,5b383021-a800-4f0b-b8a3-d344389bff6c,1,0,8fe71bce-a61a-4a2e-bd18-81c7a7bb4456,8fe71bce-a61a-4a2e-bd18-81c7a7bb4456,1,0,11e708d8-82f4-4d45-a77d-7b9d23c0ef54,11e708d8-82f4-4d45-a77d-7b9d23c0ef54,1,0,8a57d427-a34e-4121-84e6-1a86a9f9092d,8a57d427-a34e-4121-84e6-1a86a9f9092d,1,0,dbc1bf11-e92a-4f4e-90d4-6a3ccdaec7e5,dbc1bf11-e92a-4f4e-90d4-6a3ccdaec7e5,1,0,29ec9423-25ef-4cf2-ad6a-58f854c3e22b,29ec9423-25ef-4cf2-ad6a-58f854c3e22b,1,0,2607e4d1-4fc0-4270-ad45-2c95d4aa04da,2607e4d1-4fc0-4270-ad45-2c95d4aa04da,1,0,b4b4bd5d-a860-4994-90b7-0c60ab680c4e,b4b4bd5d-a860-4994-90b7-0c60ab680c4e,1,0,68447105-a784-4803-8eb8-3701b0fc819d,68447105-a784-4803-8eb8-3701b0fc819d,1,0,5fb5320c-cd7c-4f28-ad6a-8670a60a9e11,5fb5320c-cd7c-4f28-ad6a-8670a60a9e11,1,0,59dee70d-aeca-470a-b3c4-e43bb16c5753,59dee70d-aeca-470a-b3c4-e43bb16c5753,1,0,82777e92-0681-44bf-b51e-4d98fcd5d5bd,82777e92-0681-44bf-b51e-4d98fcd5d5bd,1,0,2e0b331d-92d4-4250-94c6-9ced8cdcb1e4,2e0b331d-92d4-4250-94c6-9ced8cdcb1e4,1,0,4599ef83-5f1e-44af-ae0c-67988656a99e,4599ef83-5f1e-44af-ae0c-67988656a99e,1,0,acb0d7eb-2ed9-4419-b79d-7dc661d70c30,acb0d7eb-2ed9-4419-b79d-7dc661d70c30,1,0,e1b94dcf-ec37-4b2d-a7af-120eeee40944,e1b94dcf-ec37-4b2d-a7af-120eeee40944,1,0,7d2a37b1-a1a0-435a-846a-95e255655044,7d2a37b1-a1a0-435a-846a-95e255655044,1,0,109db64c-00dc-490e-99a5-4430d9344e99,109db64c-00dc-490e-99a5-4430d9344e99,1,0,85837a55-fed5-4b7b-a622-30d728b9a677,85837a55-fed5-4b7b-a622-30d728b9a677,1,0,0fd79cdb-dc7a-40ca-a3bc-2c7a7b4691bb,0fd79cdb-dc7a-40ca-a3bc-2c7a7b4691bb,1,0,6ede8b5c-7df0-44a5-9136-8109bbd8b5a9,6ede8b5c-7df0-44a5-9136-8109bbd8b5a9,1,0,325bacdd-793f-47d8-b987-57e9d5f2782b,325bacdd-793f-47d8-b987-57e9d5f2782b,1,0,80395d47-70d7-4d8d-9b18-93283fba80c2,80395d47-70d7-4d8d-9b18-93283fba80c2,1,0,8b621ec9-24c9-4166-90ce-29c5ad30f78b,8b621ec9-24c9-4166-90ce-29c5ad30f78b,1,0,cc98670a-7b18-4973-b211-90261c5c8c10,cc98670a-7b18-4973-b211-90261c5c8c10,1,0,da9821c3-4b16-48b7-9088-d3cf8ac536a6,da9821c3-4b16-48b7-9088-d3cf8ac536a6,1,0,fb36c775-1124-4ba6-8af8-133bf66fcb54,fb36c775-1124-4ba6-8af8-133bf66fcb54,1,0,51f9aff4-71da-4b1b-b48b-04122a17d855,51f9aff4-71da-4b1b-b48b-04122a17d855,1,0,d5142574-a040-4dd0-a482-cdc61c1d86ab,d5142574-a040-4dd0-a482-cdc61c1d86ab,1,0,62957889-503f-4923-a372-29776dc3b5e5,62957889-503f-4923-a372-29776dc3b5e5,1,0,778e79ee-eb1a-4d52-8a31-58e781c78fe4,778e79ee-eb1a-4d52-8a31-58e781c78fe4,1,0,90385850-d37b-4b2e-ac87-95c17f32197c,90385850-d37b-4b2e-ac87-95c17f32197c,1,0,f480ac52-e2f1-4ed0-a0b1-20a622f77302,f480ac52-e2f1-4ed0-a0b1-20a622f77302,1,0,5c63e7cd-ecdb-45ae-a589-f6c38f5a8e76,5c63e7cd-ecdb-45ae-a589-f6c38f5a8e76,1,0,b9b0fbdc-8fda-46d1-bb3e-561a03604971,b9b0fbdc-8fda-46d1-bb3e-561a03604971,1,0,eadfdbe3-bc85-4084-aef6-4cfd258ee6f1,eadfdbe3-bc85-4084-aef6-4cfd258ee6f1,1,0,672c2936-9771-4e32-a970-7ac7f12a21e8,672c2936-9771-4e32-a970-7ac7f12a21e8,1,0,73afaad8-dfa9-43e3-bdaf-543c3545d788,73afaad8-dfa9-43e3-bdaf-543c3545d788,1,0,c264441d-4805-4968-baa2-37b8970049c7,c264441d-4805-4968-baa2-37b8970049c7,1,0,4f0bda80-2246-43be-95f8-ae8480682cd5,4f0bda80-2246-43be-95f8-ae8480682cd5,1,0,ac4fa2a4-93a1-4aa6-986a-5f576457fc8a,ac4fa2a4-93a1-4aa6-986a-5f576457fc8a,1,0,6f683f46-9eef-4e78-bc2f-7174238bf53c,6f683f46-9eef-4e78-bc2f-7174238bf53c,1,0,7d1ed38b-98cf-4a0e-a605-680bb580d904,7d1ed38b-98cf-4a0e-a605-680bb580d904,1,0,b769eda0-11de-401c-a68b-4fce4555d4fc,b769eda0-11de-401c-a68b-4fce4555d4fc,1,0,fd7a668f-3099-4e15-956a-92c6295dd4d5,fd7a668f-3099-4e15-956a-92c6295dd4d5,1,0,afcbd830-ec5f-4865-a176-ea3014dff908,afcbd830-ec5f-4865-a176-ea3014dff908,1,0,dc5fc801-14e4-42e8-b396-76eb30b69eea,dc5fc801-14e4-42e8-b396-76eb30b69eea,1,0,f36150de-33af-4410-8a4c-8c9f4b545793,f36150de-33af-4410-8a4c-8c9f4b545793,1,0,62f97480-7d4a-48f3-9d1d-612909b242c9,62f97480-7d4a-48f3-9d1d-612909b242c9,1,0,2b4f6e2f-6cc4-4c7c-98a6-786f3793366b,2b4f6e2f-6cc4-4c7c-98a6-786f3793366b,1,0,3068be84-a401-4701-8ac9-411fae130f84,3068be84-a401-4701-8ac9-411fae130f84,1,0,957394a7-e5b8-47fc-8680-1e71efe2be7d,957394a7-e5b8-47fc-8680-1e71efe2be7d,1,0,ba49a9e4-6ec1-43ff-92cd-9dbf221bbf09,ba49a9e4-6ec1-43ff-92cd-9dbf221bbf09,1,0,4f25ef45-c8d9-401d-b0e8-2217ac310f04,4f25ef45-c8d9-401d-b0e8-2217ac310f04,1,0,504ca240-b5ae-433e-ae5f-d818263eea23,504ca240-b5ae-433e-ae5f-d818263eea23,1,0,32461819-9437-417d-8d1e-851c9a2dcee2,32461819-9437-417d-8d1e-851c9a2dcee2,1,0,74228950-8a4b-4dd6-a053-8650de202521,74228950-8a4b-4dd6-a053-8650de202521,1,0,6b9ce91e-08b9-4972-9878-1724c67b68ec,6b9ce91e-08b9-4972-9878-1724c67b68ec,1,0,640814f2-6082-475e-8006-25fd5b24afdb,640814f2-6082-475e-8006-25fd5b24afdb,1,0,6fcd2a3a-4d66-40e3-bde0-5c274b43783f,6fcd2a3a-4d66-40e3-bde0-5c274b43783f,1,0,569047c2-0879-4fba-a814-44812d21043b,569047c2-0879-4fba-a814-44812d21043b,1,0,f1b66ea8-262d-4b38-a039-b83a843f6ee8,f1b66ea8-262d-4b38-a039-b83a843f6ee8,1,0,bcae6e05-f1fd-413e-9eef-2e1cee42a962,bcae6e05-f1fd-413e-9eef-2e1cee42a962,1,0,40da1bca-ebb3-4c64-bf54-1f37b71d47b6,40da1bca-ebb3-4c64-bf54-1f37b71d47b6,1,0,778b4c8f-7a1e-4b4b-9f68-12cbf52bf195,778b4c8f-7a1e-4b4b-9f68-12cbf52bf195,1,0,91562fe8-e630-4bcb-a14e-c0e1e129141a,91562fe8-e630-4bcb-a14e-c0e1e129141a,1,0,c261abfd-3828-47b5-aa32-dfdd3a1636ad,c261abfd-3828-47b5-aa32-dfdd3a1636ad,1,0,e9aa6dab-0d96-42ce-9bd6-b8b10d755f8c,e9aa6dab-0d96-42ce-9bd6-b8b10d755f8c,1,0,84da1ef8-1784-4dfc-b17a-7728aa7ff62a,84da1ef8-1784-4dfc-b17a-7728aa7ff62a,1,0,9155c95b-6afb-41bb-bd0b-d37e503fc163,9155c95b-6afb-41bb-bd0b-d37e503fc163,1,0,d917c19e-be15-41cc-9c8a-a97c8de85309,d917c19e-be15-41cc-9c8a-a97c8de85309,1,0,5e33e655-2847-4237-87ff-74775fd36756,5e33e655-2847-4237-87ff-74775fd36756,1,0,f0907d81-656e-4dfb-81d8-14a8847cb38a,f0907d81-656e-4dfb-81d8-14a8847cb38a,1,0,0e3c6508-caa3-43ef-9647-0e3b96955898,0e3c6508-caa3-43ef-9647-0e3b96955898,1,0,ceb18abf-0390-450c-9e4c-cab9e43eb2e8,ceb18abf-0390-450c-9e4c-cab9e43eb2e8,1,0,1b1fa685-dccb-4d0f-ac01-adc6febf7f15,1b1fa685-dccb-4d0f-ac01-adc6febf7f15,1,0,47907538-9357-4885-8b50-17f2e16c260f,47907538-9357-4885-8b50-17f2e16c260f,1,0,17e1840f-fef3-4f17-8476-273e6af24cb4,17e1840f-fef3-4f17-8476-273e6af24cb4,1,0,a64566fa-b706-49bc-8277-4531145c400e,a64566fa-b706-49bc-8277-4531145c400e,1,0,a8f32b13-249c-4ce6-a521-f06a87f2e670,a8f32b13-249c-4ce6-a521-f06a87f2e670,1,0,815775e4-cfb7-495b-87c4-d134b90d93d4,815775e4-cfb7-495b-87c4-d134b90d93d4,1,0,e867f2f1-0550-4d15-9e40-ba36c9aabfbd,e867f2f1-0550-4d15-9e40-ba36c9aabfbd,1,0,8bdbb9ef-3a91-4374-b3c5-9447005bb1b7,8bdbb9ef-3a91-4374-b3c5-9447005bb1b7,1,0,7a27b378-89ac-4cad-8c69-a0cd14812d7e,7a27b378-89ac-4cad-8c69-a0cd14812d7e,1,0,d2433a11-8e1d-4e4c-966d-37cde6283f72,d2433a11-8e1d-4e4c-966d-37cde6283f72,1,0,59eb5919-3c33-48bf-b322-ec78018e4142,59eb5919-3c33-48bf-b322-ec78018e4142,1,0,63f308a5-b955-48a5-8052-50c5bede65d0,63f308a5-b955-48a5-8052-50c5bede65d0,1,0,1b614b97-5c1d-497a-9574-40114059f836,1b614b97-5c1d-497a-9574-40114059f836,1,0,477dfea4-e401-4cf0-b0a8-2df7c3836c58,477dfea4-e401-4cf0-b0a8-2df7c3836c58,1,0,294c000f-6979-4ed1-bbc7-7402facd9185,294c000f-6979-4ed1-bbc7-7402facd9185,1,0,db607fbc-f785-47d5-9550-577424aa3fe9,db607fbc-f785-47d5-9550-577424aa3fe9,1,0,b7111ddf-a623-4bae-90aa-636148492ca2,b7111ddf-a623-4bae-90aa-636148492ca2,1,0,905d9dcd-5793-4362-8fe8-2edce8c35e32,905d9dcd-5793-4362-8fe8-2edce8c35e32,1,0,a96cb6fd-54e0-4514-9210-7f4636acd336,a96cb6fd-54e0-4514-9210-7f4636acd336,1,0,3580e7a7-95d1-4a8e-bc12-a1449fe03757,3580e7a7-95d1-4a8e-bc12-a1449fe03757,1,0,13759790-6c70-4323-9321-a68b90c51663,13759790-6c70-4323-9321-a68b90c51663,1,0,d9704b20-c29c-4e7f-b777-0ac9080a5631,d9704b20-c29c-4e7f-b777-0ac9080a5631,1,0,c1372891-0f55-4868-ab97-906eff52be0e,c1372891-0f55-4868-ab97-906eff52be0e,1,0,33e96bda-1708-4ee4-8d4d-3b919bda3e38,33e96bda-1708-4ee4-8d4d-3b919bda3e38,1,0,53fb35a7-44ab-42e7-8dba-6fa08bf5ba2c,53fb35a7-44ab-42e7-8dba-6fa08bf5ba2c,1,0,93fcaa62-2a19-468b-9128-c7930583fbfd,93fcaa62-2a19-468b-9128-c7930583fbfd,1,0,2d885109-4c96-41c0-a996-785bfd793c2d,2d885109-4c96-41c0-a996-785bfd793c2d,1,0,e870a1bd-0c08-4d1e-832a-357922983c19,e870a1bd-0c08-4d1e-832a-357922983c19,1,0,9f71aeac-f889-40dc-91bd-d670da4efd2b,9f71aeac-f889-40dc-91bd-d670da4efd2b,1,0,62f8a9b2-9e56-4d5c-a7e2-a85f5b27a5b7,62f8a9b2-9e56-4d5c-a7e2-a85f5b27a5b7,1,0,614ef0bd-3298-408b-bf71-37df8ee60702,614ef0bd-3298-408b-bf71-37df8ee60702,1,0,26ff1be6-f72a-456a-9dce-302029752603,26ff1be6-f72a-456a-9dce-302029752603,1,0,db850a08-0c99-4a57-9b04-38be64bd38fb,db850a08-0c99-4a57-9b04-38be64bd38fb,1,0,abeca127-5ae9-46af-a5e8-d6438fd68367,abeca127-5ae9-46af-a5e8-d6438fd68367,1,0,bce81631-9f6d-42b3-b4b6-2199afb08f2f,bce81631-9f6d-42b3-b4b6-2199afb08f2f,1,0,67d6878f-3e47-4142-8f98-c5a207f0b8a8,67d6878f-3e47-4142-8f98-c5a207f0b8a8,1,0,7f4b872f-0e50-49dd-984d-f5fc3ac3f2f0,7f4b872f-0e50-49dd-984d-f5fc3ac3f2f0,1,0,68636657-4d46-4c2a-9b2f-11521a55dfb4,68636657-4d46-4c2a-9b2f-11521a55dfb4,1,0,18a83f43-dc84-4f8a-9580-681b19f571c4,18a83f43-dc84-4f8a-9580-681b19f571c4,1,0,01c588b0-d0ce-4978-b04d-084e6a00fcc7,01c588b0-d0ce-4978-b04d-084e6a00fcc7,1,0,a23642d9-8c4f-44a5-8865-bfb286e47c55,a23642d9-8c4f-44a5-8865-bfb286e47c55,1,0,7b37e038-dcef-41e1-b6e7-ed73c6958415,7b37e038-dcef-41e1-b6e7-ed73c6958415,1,0,24df2d14-5ebf-4ded-ba14-5daee7a0c536,24df2d14-5ebf-4ded-ba14-5daee7a0c536,1,0,13d6e2e9-b268-4c1b-8b8b-30c5296cfe4c,13d6e2e9-b268-4c1b-8b8b-30c5296cfe4c,1,0,03bb028a-ee8c-411e-8382-653046f803c6,03bb028a-ee8c-411e-8382-653046f803c6,1,0,c4fa80ca-32d6-4a44-9fe2-7ffd67e1cb30,c4fa80ca-32d6-4a44-9fe2-7ffd67e1cb30,1,0,8aa73dfd-41ac-4f79-bf73-cd2da51b1232,8aa73dfd-41ac-4f79-bf73-cd2da51b1232,1,0,38d5ed93-133b-44fe-827a-69a6cfc0461d,38d5ed93-133b-44fe-827a-69a6cfc0461d,1,0,cae8a6f2-bbe9-4b73-b839-9bf8e5e2818d,cae8a6f2-bbe9-4b73-b839-9bf8e5e2818d,1,0,0a79ee40-e6d6-4dbf-8378-98c2ec1e8ef9,0a79ee40-e6d6-4dbf-8378-98c2ec1e8ef9,1,0,5148d263-de26-4c92-b090-ae59f42dfb05,5148d263-de26-4c92-b090-ae59f42dfb05,1,0,dbefe81f-85cf-4d84-9600-b359598c2543,dbefe81f-85cf-4d84-9600-b359598c2543,1,0,1a624a06-93b8-4d1f-8c14-2061e1e7927c,1a624a06-93b8-4d1f-8c14-2061e1e7927c,1,0,4ad54ca8-8e4a-4a35-9537-0395851fcdfb,4ad54ca8-8e4a-4a35-9537-0395851fcdfb,1,0,3e427c09-79ed-45f7-b4c9-d9aa7ccc01b2,3e427c09-79ed-45f7-b4c9-d9aa7ccc01b2,1,0,1a4dd1f5-c2d6-4e06-b428-ab7870810bf3,1a4dd1f5-c2d6-4e06-b428-ab7870810bf3,1,0,d5967e0f-03cd-4190-a702-7e9290eae1eb,d5967e0f-03cd-4190-a702-7e9290eae1eb,1,0,78fdbce8-8479-4edd-89c0-1bbaf8ffd482,78fdbce8-8479-4edd-89c0-1bbaf8ffd482,1,0,8eb18de5-8283-4d0c-bb11-b882e78181d5,8eb18de5-8283-4d0c-bb11-b882e78181d5,1,0,27b27cc5-d1ad-4a2a-bcf4-ec2ebb3eba43,27b27cc5-d1ad-4a2a-bcf4-ec2ebb3eba43,1,0,7059b117-714c-4710-aebe-76f88c4d41d5,7059b117-714c-4710-aebe-76f88c4d41d5,1,0,ea050453-4947-40dc-aa2a-503ddd1a235a,ea050453-4947-40dc-aa2a-503ddd1a235a,1,0,37d0e6d4-702e-46f5-ae87-4d393fa0c701,37d0e6d4-702e-46f5-ae87-4d393fa0c701,1,0,1e963c1e-f914-46e1-81d3-90d126fc6f8d,1e963c1e-f914-46e1-81d3-90d126fc6f8d,1,0,3a62d88e-9298-42c0-bd87-c749ecd01d19,3a62d88e-9298-42c0-bd87-c749ecd01d19,1,0,abbf064e-c6ea-4712-930b-a9fef42e0ee1,abbf064e-c6ea-4712-930b-a9fef42e0ee1,1,0,fc13dd80-ce44-4ed1-a9d7-dae44602b954,fc13dd80-ce44-4ed1-a9d7-dae44602b954,1,0,a3fe224e-c3ef-4e30-90e4-c4ed5eb11824,a3fe224e-c3ef-4e30-90e4-c4ed5eb11824,1,0,433b23a1-a863-4775-b2f2-1384e8f3cbbb,433b23a1-a863-4775-b2f2-1384e8f3cbbb,1,0,a1677c47-b9a4-427a-972d-9bb2293445b6,a1677c47-b9a4-427a-972d-9bb2293445b6,1,0,e4a328c0-e73b-465d-ae36-38e5a71690fa,e4a328c0-e73b-465d-ae36-38e5a71690fa,1,0,bf66612b-aec4-414b-bee6-9bcab145c7cc,bf66612b-aec4-414b-bee6-9bcab145c7cc,1,0,811f356f-554a-4a63-90b6-dedb5fec7c05,811f356f-554a-4a63-90b6-dedb5fec7c05,1,0,85bebd81-a355-4010-889b-cff6f72dafcb,85bebd81-a355-4010-889b-cff6f72dafcb,1,0,49521f36-fd1b-47dd-81cc-48b6fb651e22,49521f36-fd1b-47dd-81cc-48b6fb651e22,1,0,1491cc2a-b3be-4bcc-a181-ce68d4b5d4cb,1491cc2a-b3be-4bcc-a181-ce68d4b5d4cb,1,0,bc946e21-53bb-4332-8c63-7b0aa78826eb,bc946e21-53bb-4332-8c63-7b0aa78826eb,1,0,4be2bdad-9a43-4593-acbc-a02e9144a89f,4be2bdad-9a43-4593-acbc-a02e9144a89f,1,0,64a86d5d-f925-45ee-82da-76df1cc20729,64a86d5d-f925-45ee-82da-76df1cc20729,1,0,eb4455f2-a5a0-44fb-8302-7312bc32df66,eb4455f2-a5a0-44fb-8302-7312bc32df66,1,0,cd6d2ab5-8e5c-4db3-8c8c-0526046a9b68,cd6d2ab5-8e5c-4db3-8c8c-0526046a9b68,1,0,9f20e59e-7db8-466f-b965-7045fc3f1489,9f20e59e-7db8-466f-b965-7045fc3f1489,1,0,cb057756-d3f7-4c50-a9d0-bac9ca2abd46,cb057756-d3f7-4c50-a9d0-bac9ca2abd46,1,0,89ac3d39-1915-4e67-a4e4-5a67a155cb75,89ac3d39-1915-4e67-a4e4-5a67a155cb75,1,0,d27b637d-5a51-49ff-bf73-343891534586,d27b637d-5a51-49ff-bf73-343891534586,1,0,b5a073a2-54e2-47c9-b533-f75fd2c9f343,b5a073a2-54e2-47c9-b533-f75fd2c9f343,1,0,0c8571be-f9b6-4292-add9-980cfe7fa2ec,0c8571be-f9b6-4292-add9-980cfe7fa2ec,1,0,989b8ccd-bc05-48c1-9969-b3733028b65f,989b8ccd-bc05-48c1-9969-b3733028b65f,1,0,6c70b13d-f9d0-459f-8d38-c01c11f356f1,6c70b13d-f9d0-459f-8d38-c01c11f356f1,1,0,45ca19df-90f3-4143-a659-bc0cb97efee9,45ca19df-90f3-4143-a659-bc0cb97efee9,1,0,bbaed1bd-0eb7-4f2b-b844-ab79c1d0a091,bbaed1bd-0eb7-4f2b-b844-ab79c1d0a091,1,0,2e7fbea4-57ac-4633-bb39-8725e57bc7ba,2e7fbea4-57ac-4633-bb39-8725e57bc7ba,1,0,83ae9b22-20ff-4e94-9282-19daf2274328,83ae9b22-20ff-4e94-9282-19daf2274328,1,0,dcad5d84-6643-4f0b-9e6e-73fe343db4a7,dcad5d84-6643-4f0b-9e6e-73fe343db4a7,1,0,e1ca1374-6dad-46d3-bb72-b67f3e6b1809,e1ca1374-6dad-46d3-bb72-b67f3e6b1809,1,0,a92b2b70-7e69-49d1-b921-c9d1b0718f94,a92b2b70-7e69-49d1-b921-c9d1b0718f94,1,0,d57a3300-0f9f-4fe5-b627-01c96b723053,d57a3300-0f9f-4fe5-b627-01c96b723053,1,0,19f690a3-d27b-43c1-94b7-585fc628da05,19f690a3-d27b-43c1-94b7-585fc628da05,1,0,d375fac5-098c-42b5-a0bd-9a4ae7516ada,d375fac5-098c-42b5-a0bd-9a4ae7516ada,1,0,29034f3e-d2eb-44e0-ac85-f2ffaf14eb90,29034f3e-d2eb-44e0-ac85-f2ffaf14eb90,1,0,ce65563d-03dc-46d8-96d4-c2d4ae2a2960,ce65563d-03dc-46d8-96d4-c2d4ae2a2960,1,0,5079f17e-dfd6-43f4-83fa-6ac408e5bd3b,5079f17e-dfd6-43f4-83fa-6ac408e5bd3b,1,0,7a4346c3-f1aa-4ce0-886e-76cd9abf563c,7a4346c3-f1aa-4ce0-886e-76cd9abf563c,1,0,cf783265-a4cb-436f-963a-1ff8220ae246,cf783265-a4cb-436f-963a-1ff8220ae246,1,0,3560f949-48f9-4fca-9fe2-81efc1ec0eee,3560f949-48f9-4fca-9fe2-81efc1ec0eee,1,0,662078f0-b75d-4c44-896f-7b7f74fd1ed4,662078f0-b75d-4c44-896f-7b7f74fd1ed4,1,0,4fa11304-fbd4-4c90-909d-5024283a6868,4fa11304-fbd4-4c90-909d-5024283a6868,1,0,207290c2-5221-48ad-99aa-bb0f7955df3f,207290c2-5221-48ad-99aa-bb0f7955df3f,1,0,162137ef-dea2-4ace-9e67-897dad0e7c3d,162137ef-dea2-4ace-9e67-897dad0e7c3d,1,0,d91a016e-cca9-4976-9c53-2c96fa95cf1a,d91a016e-cca9-4976-9c53-2c96fa95cf1a,1,0,012fb2f1-1c15-4800-8968-78a90c2a1348,012fb2f1-1c15-4800-8968-78a90c2a1348,1,0,a29a36aa-3c90-4be9-8ffc-20237721d1d0,a29a36aa-3c90-4be9-8ffc-20237721d1d0,1,0,aec8f9e6-d177-45f5-ba55-2d662428c2ae,aec8f9e6-d177-45f5-ba55-2d662428c2ae,1,0,b0bf8af5-d824-459c-bc40-17495406af3c,b0bf8af5-d824-459c-bc40-17495406af3c,1,0,7dfdd08b-7cd9-480c-829d-97f5e7152eec,7dfdd08b-7cd9-480c-829d-97f5e7152eec,1,0,64752b64-80ae-4537-986a-d61423dc546b,64752b64-80ae-4537-986a-d61423dc546b,1,0,2c37e123-ea35-4501-93e1-2fa295444bec,2c37e123-ea35-4501-93e1-2fa295444bec,1,0,c8bd3ac8-3b49-46bb-aadd-7270ad2868fc,c8bd3ac8-3b49-46bb-aadd-7270ad2868fc,1,0,a997a430-3ea8-4fde-9f53-7b507a04c215,a997a430-3ea8-4fde-9f53-7b507a04c215,1,0,f648e19d-026b-4fa7-8e70-1866b27b94f8,f648e19d-026b-4fa7-8e70-1866b27b94f8,1,0,d32081fc-47d3-4e66-837e-705c94ba8ca8,d32081fc-47d3-4e66-837e-705c94ba8ca8,1,0,69c207c2-7699-4467-b127-286ecd6d0f29,69c207c2-7699-4467-b127-286ecd6d0f29,1,0,e33df42d-4c64-4475-8294-6b05ecdb4e02,e33df42d-4c64-4475-8294-6b05ecdb4e02,1,0,6094a0ed-2051-4649-ad75-dfeb389d3cbb,6094a0ed-2051-4649-ad75-dfeb389d3cbb,1,0,6944a7e2-b9a1-492f-a6f2-9bf31d97ec78,6944a7e2-b9a1-492f-a6f2-9bf31d97ec78,1,0,f3750ea4-5f9e-4ab3-9495-3f182ecff407,f3750ea4-5f9e-4ab3-9495-3f182ecff407,1,0,14002d51-87d4-4647-92ef-a9b1935cb666,14002d51-87d4-4647-92ef-a9b1935cb666,1,0,e941a39d-1f3c-4e6e-af17-75f92a15dd40,e941a39d-1f3c-4e6e-af17-75f92a15dd40,1,0,d9bbedcb-4872-4183-83c2-6c2aae9634b0,d9bbedcb-4872-4183-83c2-6c2aae9634b0,1,0,72c695c3-66f6-4aa8-8a39-737ec6967a1d,72c695c3-66f6-4aa8-8a39-737ec6967a1d,1,0,2beef1e0-7a59-407e-b454-ee2ec38ca4b3,2beef1e0-7a59-407e-b454-ee2ec38ca4b3,1,0,b57a1d6f-8375-4d57-a2c1-f53e25318ddb,b57a1d6f-8375-4d57-a2c1-f53e25318ddb,1,0,d5d11480-d5c7-4569-80c1-f872655ff084,d5d11480-d5c7-4569-80c1-f872655ff084,1,0,b1e45d36-08e9-430e-976b-03e6e3320c6a,b1e45d36-08e9-430e-976b-03e6e3320c6a,1,0,b5384eb7-40e4-4437-b96b-eab9b7b5b8f2,b5384eb7-40e4-4437-b96b-eab9b7b5b8f2,1,0,8e21374f-5a65-406c-856d-2040607da4bc,8e21374f-5a65-406c-856d-2040607da4bc,1,0,1b63cbbb-77b1-4e78-a4c7-ddea8ea7294d,1b63cbbb-77b1-4e78-a4c7-ddea8ea7294d,1,0,3e5f5167-8978-4191-b0f6-6a262b848b95,3e5f5167-8978-4191-b0f6-6a262b848b95,1,0,ae3aef9e-df3b-4ebc-912d-2bc581063745,ae3aef9e-df3b-4ebc-912d-2bc581063745,1,0,5c4ecf15-b92d-4610-b2bb-f2331c5c7528,5c4ecf15-b92d-4610-b2bb-f2331c5c7528,1,0,a8c09e65-6e10-4772-b264-6ead83d52fe3,a8c09e65-6e10-4772-b264-6ead83d52fe3,1,0,256618cc-0956-4cda-9691-e4ced68a791f,256618cc-0956-4cda-9691-e4ced68a791f,1,0,e20593fd-b3e3-41d2-8c8d-97b5d6148fa4,e20593fd-b3e3-41d2-8c8d-97b5d6148fa4,1,0,4b9771a7-b924-4e61-8468-4633e3c54706,4b9771a7-b924-4e61-8468-4633e3c54706,1,0,bc846fc8-3c67-45f8-9c5c-69bf1190baf9,bc846fc8-3c67-45f8-9c5c-69bf1190baf9,1,0,667de710-cee5-4a97-8434-641d199f3b68,667de710-cee5-4a97-8434-641d199f3b68,1,0,e9a2320b-71a1-4974-8b5a-1990062ec7df,e9a2320b-71a1-4974-8b5a-1990062ec7df,1,0,2e459a7c-c448-4db4-ae21-e59646527030,2e459a7c-c448-4db4-ae21-e59646527030,1,0,891194d9-9f02-4b22-89cd-941181c83ecb,891194d9-9f02-4b22-89cd-941181c83ecb,1,0,a4d3b738-9ae3-46a9-ac21-7ac3d081c727,a4d3b738-9ae3-46a9-ac21-7ac3d081c727,1,0,f6e85eeb-d81b-4526-9a33-ab77bd447236,f6e85eeb-d81b-4526-9a33-ab77bd447236,1,0,470e37fe-d149-4007-b397-12fc84f93041,470e37fe-d149-4007-b397-12fc84f93041,1,0,f8d9068d-8a4e-4b23-b5ca-5b9ddce1f60f,f8d9068d-8a4e-4b23-b5ca-5b9ddce1f60f,1,0,7175cfa0-885c-4807-98ec-af255dcd55d9,7175cfa0-885c-4807-98ec-af255dcd55d9,1,0,1773ff66-ebe4-46e1-b505-d07d87c7fe3e,1773ff66-ebe4-46e1-b505-d07d87c7fe3e,1,0,f5b66759-8102-4cba-a3fd-ee96db5bc809,f5b66759-8102-4cba-a3fd-ee96db5bc809,1,0,6c205eae-9113-46c1-a245-25d29173646e,6c205eae-9113-46c1-a245-25d29173646e,1,0,4cc4aa90-49fb-4602-9f9c-d4d47d223988,4cc4aa90-49fb-4602-9f9c-d4d47d223988,1,0,af6bccbb-a6cb-41ee-bc4e-f2d6a5e0f419,af6bccbb-a6cb-41ee-bc4e-f2d6a5e0f419,1,0,e0227e4b-be22-4614-8980-5d573fae705d,e0227e4b-be22-4614-8980-5d573fae705d,1,0,7a7b7882-a4c1-40c8-a807-cb2d71d054cc,7a7b7882-a4c1-40c8-a807-cb2d71d054cc,1,0,66ef1631-277b-4c22-99d7-1434b4dbbb3f,66ef1631-277b-4c22-99d7-1434b4dbbb3f,1,0,7cfa5a37-b9f8-43e4-ae33-e3a7251dd052,7cfa5a37-b9f8-43e4-ae33-e3a7251dd052,1,0,2f8a5b9d-ab86-492b-85d1-5a28535b2ebc,2f8a5b9d-ab86-492b-85d1-5a28535b2ebc,1,0,898535ff-50cd-464a-aadc-5e4f9de15b04,898535ff-50cd-464a-aadc-5e4f9de15b04,1,0,737f6f1b-9ffc-4916-b378-7321eab1f886,737f6f1b-9ffc-4916-b378-7321eab1f886,1,0,01dedf5b-2cce-4d24-81ea-2e3af82f5794,01dedf5b-2cce-4d24-81ea-2e3af82f5794,1,0,385e209d-65aa-43b1-8591-f92544882740,385e209d-65aa-43b1-8591-f92544882740,1,0,8381bc76-0e0f-4196-9911-ec05730cb1c9,8381bc76-0e0f-4196-9911-ec05730cb1c9,1,0,c224e520-7204-4f4a-aac9-b6221ea9ce44,c224e520-7204-4f4a-aac9-b6221ea9ce44,1,0,771a1900-46be-49fe-a02d-584780de8363,771a1900-46be-49fe-a02d-584780de8363,1,0,f81b1f2d-6fde-4861-8fee-1dbe6acf3985,f81b1f2d-6fde-4861-8fee-1dbe6acf3985,1,0,b62eecf6-6ee3-4a70-a4d6-3f064ae35c43,b62eecf6-6ee3-4a70-a4d6-3f064ae35c43,1,0,9bf2525c-e8fc-44e6-ac14-7df3208dbb0f,9bf2525c-e8fc-44e6-ac14-7df3208dbb0f,1,0,a2faa3f8-5064-4fbf-a90e-26d15c021cd3,a2faa3f8-5064-4fbf-a90e-26d15c021cd3,1,0,527ea8ca-e723-454a-8e9e-f2e7a38e62ee,527ea8ca-e723-454a-8e9e-f2e7a38e62ee,1,0,ef257b20-da10-4cda-8b9d-7de2d68a2f71,ef257b20-da10-4cda-8b9d-7de2d68a2f71,1,0,de0d41b7-acc0-4ebc-8933-d6b5ad351860,de0d41b7-acc0-4ebc-8933-d6b5ad351860,1,0,9ef5dd5e-1f26-4187-90a0-a3ac7aaabc1d,9ef5dd5e-1f26-4187-90a0-a3ac7aaabc1d,1,0,1a354069-07ea-40e0-bbac-e1b6232750c2,1a354069-07ea-40e0-bbac-e1b6232750c2,1,0,df31548b-0b8e-412b-999a-761970ae3c23,df31548b-0b8e-412b-999a-761970ae3c23,1,0,05135747-43e7-4b61-bc30-57b3289ea923,05135747-43e7-4b61-bc30-57b3289ea923,1,0,6d63728d-3384-4131-b890-1b82d14a04b7,6d63728d-3384-4131-b890-1b82d14a04b7,1,0,f4554046-493e-4960-94df-0a8b9d02f474,f4554046-493e-4960-94df-0a8b9d02f474,1,0,06abad33-2d69-4e8b-a16c-8aa0d4422d5a,06abad33-2d69-4e8b-a16c-8aa0d4422d5a,1,0,9222a6c0-b785-4811-bfb6-44ac44a55925,9222a6c0-b785-4811-bfb6-44ac44a55925,1,0,ea84021d-2431-44ad-a446-f1fb979c9e96,ea84021d-2431-44ad-a446-f1fb979c9e96,1,0,d86acdeb-fa70-4d1c-bd0c-1b4ea30c03dd,d86acdeb-fa70-4d1c-bd0c-1b4ea30c03dd,1,0,8fa21575-177f-4b7c-94b5-dfeefe737cb4,8fa21575-177f-4b7c-94b5-dfeefe737cb4,1,0,6da034af-0481-4a3c-aff9-c50ced6f21d4,6da034af-0481-4a3c-aff9-c50ced6f21d4,1,0,d07016c8-7d97-42cd-865b-85b49075adfb,d07016c8-7d97-42cd-865b-85b49075adfb,1,0,491a2337-1bf9-45c1-8ae6-95605ef41992,491a2337-1bf9-45c1-8ae6-95605ef41992,1,0,9202335d-50bb-4282-9438-24c7fb9cf637,9202335d-50bb-4282-9438-24c7fb9cf637,1,0,a62906e5-27f8-4e72-8769-9a3eed6997d7,a62906e5-27f8-4e72-8769-9a3eed6997d7,1,0,6c5d0ac3-6086-434c-812b-1c1158ecc574,6c5d0ac3-6086-434c-812b-1c1158ecc574,1,0,783536d7-c0db-44c9-96e8-58b57804d7c8,783536d7-c0db-44c9-96e8-58b57804d7c8,1,0,a8295435-c2c4-4aff-874b-7412556aa76d,a8295435-c2c4-4aff-874b-7412556aa76d,1,0,f6c4e24b-172b-4ba3-8e3e-988306ade660,f6c4e24b-172b-4ba3-8e3e-988306ade660,1,0,9baab24c-a5a3-46f4-ad17-a28d4a49f851,9baab24c-a5a3-46f4-ad17-a28d4a49f851,1,0,d1952319-0e42-4684-a386-fbe7c24526c2,d1952319-0e42-4684-a386-fbe7c24526c2,1,0,01cd59fc-8577-4b3c-9d69-6db75e81e7c4,01cd59fc-8577-4b3c-9d69-6db75e81e7c4,1,0,83b47a9d-d44b-4c40-becd-df74f9cb2e91,83b47a9d-d44b-4c40-becd-df74f9cb2e91,1,0,d03e636e-ff88-4e96-bf3c-d795d10cbcb0,d03e636e-ff88-4e96-bf3c-d795d10cbcb0,1,0,86e2a2eb-160f-4e93-a449-b2f726286d1b,86e2a2eb-160f-4e93-a449-b2f726286d1b,1,0,8e6e1f24-83bf-42c2-9eda-b3874c7910c3,8e6e1f24-83bf-42c2-9eda-b3874c7910c3,1,0,364184c2-ec71-44be-b40c-ba719b4ab0e1,364184c2-ec71-44be-b40c-ba719b4ab0e1,1,0,7ef46c54-ec0c-4211-a750-e5949956b593,7ef46c54-ec0c-4211-a750-e5949956b593,1,0,04823681-875e-459a-b3cf-051c89527f38,04823681-875e-459a-b3cf-051c89527f38,1,0,8e115a0c-a17c-4d7e-bd2c-305fb53d09ca,8e115a0c-a17c-4d7e-bd2c-305fb53d09ca,1,0,38265f08-3301-40d1-b630-a319c983e826,38265f08-3301-40d1-b630-a319c983e826,1,0,5175c496-bac7-4c57-9628-793b727aecd0,5175c496-bac7-4c57-9628-793b727aecd0,1,0,1453309e-77d0-444d-ac3f-fd7c2cb65c0c,1453309e-77d0-444d-ac3f-fd7c2cb65c0c,1,0,fc42df4a-93f0-461f-acfe-fea09158030f,fc42df4a-93f0-461f-acfe-fea09158030f,1,0,9f0a7909-0b97-48a7-964f-a52cb3c19c4e,9f0a7909-0b97-48a7-964f-a52cb3c19c4e,1,0,6d002aef-00c9-4069-80df-153151218831,6d002aef-00c9-4069-80df-153151218831,1,0,4fec3a6c-5a99-4763-aa07-d5de8712559e,4fec3a6c-5a99-4763-aa07-d5de8712559e,1,0,968a1202-d271-43e0-bfd4-d38e49ceadd4,968a1202-d271-43e0-bfd4-d38e49ceadd4,1,0,c80e2ef7-93b6-4cef-806a-2dfcf2fd80e6,c80e2ef7-93b6-4cef-806a-2dfcf2fd80e6,1,0,b3b4fbf1-cbf0-4ee2-a490-4d657693479b,b3b4fbf1-cbf0-4ee2-a490-4d657693479b,1,0,ea61e442-273e-4ce4-a806-8090893729ba,ea61e442-273e-4ce4-a806-8090893729ba,1,0,e7100f2b-d169-4635-ab87-7a2225ff12ee,e7100f2b-d169-4635-ab87-7a2225ff12ee,1,0,1e2d790c-0076-413a-b5fb-f25c01ab6ad5,1e2d790c-0076-413a-b5fb-f25c01ab6ad5,1,0,0dcc537b-76b3-4e73-b060-6cbdcf6345db,0dcc537b-76b3-4e73-b060-6cbdcf6345db,1,0,ae662b53-e11e-4b59-be52-b9d4ab00c4a4,ae662b53-e11e-4b59-be52-b9d4ab00c4a4,1,0,ce55df94-71e4-46ac-9b3b-bdae5d336b0a,ce55df94-71e4-46ac-9b3b-bdae5d336b0a,1,0,7601fa7e-079a-4347-abea-e161b2d00783,7601fa7e-079a-4347-abea-e161b2d00783,1,0,ee84cb40-f82d-4558-91be-229d68ad9f4a,ee84cb40-f82d-4558-91be-229d68ad9f4a,1,0,101a7eff-9556-4165-879a-a7c8a852e236,101a7eff-9556-4165-879a-a7c8a852e236,1,0,01775932-3603-4efc-9235-abdb97490dea,01775932-3603-4efc-9235-abdb97490dea,1,0,7637844b-4059-4f8a-8436-b4f4e8cb4f74,7637844b-4059-4f8a-8436-b4f4e8cb4f74,1,0,b6bb4cbe-b6fa-4d28-b372-0b959951ad4d,b6bb4cbe-b6fa-4d28-b372-0b959951ad4d,1,0,0ee5b788-61dc-464b-86da-f985df7704b6,0ee5b788-61dc-464b-86da-f985df7704b6,1,0,2375c6a8-9799-4b7c-a48d-091a90c67693,2375c6a8-9799-4b7c-a48d-091a90c67693,1,0,3d3c3360-4502-4ad4-bbe9-35d4ba9b54b3,3d3c3360-4502-4ad4-bbe9-35d4ba9b54b3,1,0,9b0671c6-6e92-42e6-9cf4-13d4be11f27d,9b0671c6-6e92-42e6-9cf4-13d4be11f27d,1,0,63c6522f-be04-422a-b4f4-0f55f58b09a8,63c6522f-be04-422a-b4f4-0f55f58b09a8,1,0,be919dc1-a377-43e1-82e6-ce946cabdd55,be919dc1-a377-43e1-82e6-ce946cabdd55,1,0,6b17a0fc-4d6f-4189-9067-c58a95f04dd7,6b17a0fc-4d6f-4189-9067-c58a95f04dd7,1,0,9ded532e-9e60-4895-a4c5-4ea6697aa83c,9ded532e-9e60-4895-a4c5-4ea6697aa83c,1,0,106c5159-ffc7-4059-b3e3-acf74326a44f,106c5159-ffc7-4059-b3e3-acf74326a44f,1,0,d39fd717-1a69-4fd3-889e-4fa9abefea1c,d39fd717-1a69-4fd3-889e-4fa9abefea1c,1,0,5b85e6df-7493-4201-97ad-2aea14de6006,5b85e6df-7493-4201-97ad-2aea14de6006,1,0,061e6c0f-ba52-40ec-96ad-2eba3eee3097,061e6c0f-ba52-40ec-96ad-2eba3eee3097,1,0,d77e3c65-e9fd-4ba7-885f-a8a2f4c827d2,d77e3c65-e9fd-4ba7-885f-a8a2f4c827d2,1,0,4fb86bf3-02ad-4f0e-85a9-98be6c350a06,4fb86bf3-02ad-4f0e-85a9-98be6c350a06,1,0,4840753b-e2e1-4e67-b35f-2f5eab7754f5,4840753b-e2e1-4e67-b35f-2f5eab7754f5,1,0,4095c9e7-83ab-4db9-a2d0-a9f4ef9ee53e,4095c9e7-83ab-4db9-a2d0-a9f4ef9ee53e,1,0,6ffd9c17-d90b-4d19-b337-0fbc2c717557,6ffd9c17-d90b-4d19-b337-0fbc2c717557,1,0,9a11a6bd-0c13-4be2-9e34-b12b7554f3c9,9a11a6bd-0c13-4be2-9e34-b12b7554f3c9,1,0,3bb83275-7a0e-420f-8c6b-028038f11a8c,3bb83275-7a0e-420f-8c6b-028038f11a8c,1,0,e1950a23-f6e7-48af-b78a-77aa61f08ece,e1950a23-f6e7-48af-b78a-77aa61f08ece,1,0,1cc3d7c4-9178-4a40-86ea-2bbc1f5aa69f,1cc3d7c4-9178-4a40-86ea-2bbc1f5aa69f,1,0,790735cf-f6e2-4b0d-bb16-c5b9ea95efae,790735cf-f6e2-4b0d-bb16-c5b9ea95efae,1,0,5d726fa3-bde0-4d97-a577-415857bbb5c1,5d726fa3-bde0-4d97-a577-415857bbb5c1,1,0,f63d0e2d-4685-4ac5-b22c-1b83e3ab955f,f63d0e2d-4685-4ac5-b22c-1b83e3ab955f,1,0,49068231-202c-4ac6-a39a-69207cb597dd,49068231-202c-4ac6-a39a-69207cb597dd,1,0,5a470575-e012-42ad-9ad7-53930a8e843f,5a470575-e012-42ad-9ad7-53930a8e843f,1,0,5872d4ed-6503-422d-bcf9-63a8df3e777d,5872d4ed-6503-422d-bcf9-63a8df3e777d,1,0,e21cda29-2579-485e-a207-20b76f719c80,e21cda29-2579-485e-a207-20b76f719c80,1,0,1b232a57-2833-42c6-b318-38dae2af1ab2,1b232a57-2833-42c6-b318-38dae2af1ab2,1,0,007ade8c-b102-408b-b877-b531e046560b,007ade8c-b102-408b-b877-b531e046560b,1,0,a8dfea6c-0c21-456d-96ab-f4bb5d579b13,a8dfea6c-0c21-456d-96ab-f4bb5d579b13,1,0,305f1ef1-4f9c-40a2-a978-3a4c0ecf75d4,305f1ef1-4f9c-40a2-a978-3a4c0ecf75d4,1,0,eb69c41a-392d-43bb-9b67-a0adcb651b1e,eb69c41a-392d-43bb-9b67-a0adcb651b1e,1,0,93b01c88-48a2-4753-b443-0e9892395a8f,93b01c88-48a2-4753-b443-0e9892395a8f,1,0,0b7f8e05-bb34-47cc-9775-04362e814316,0b7f8e05-bb34-47cc-9775-04362e814316,1,0,e71e0297-3709-4247-933e-18a6350cbf39,e71e0297-3709-4247-933e-18a6350cbf39,1,0,0b32e372-c6ad-4dda-acd1-8b5d58537d37,0b32e372-c6ad-4dda-acd1-8b5d58537d37,1,0,602dac6f-abe6-407a-92d3-7f1613e5dda6,602dac6f-abe6-407a-92d3-7f1613e5dda6,1,0,db03a88b-2804-45c2-9089-7ddb87ef2f18,db03a88b-2804-45c2-9089-7ddb87ef2f18,1,0,df6417d1-c722-4a87-a543-5d2c31795b20,df6417d1-c722-4a87-a543-5d2c31795b20,1,0,526a85c9-3a8d-4044-adb9-fd0689c70601,526a85c9-3a8d-4044-adb9-fd0689c70601,1,0,c4203772-580c-4db1-9bde-8925faa90688,c4203772-580c-4db1-9bde-8925faa90688,1,0,f64a91c4-f5cb-4e8e-8387-9f242ce6de44,f64a91c4-f5cb-4e8e-8387-9f242ce6de44,1,0,9ab0fe18-4dd7-4eed-958d-8537d4896d84,9ab0fe18-4dd7-4eed-958d-8537d4896d84,1,0,2278dc46-46ce-4d00-9289-4de1640782d7,2278dc46-46ce-4d00-9289-4de1640782d7,1,0,1f983a04-c2df-40bb-bee2-b326474d89f8,1f983a04-c2df-40bb-bee2-b326474d89f8,1,0,f03f1b68-e924-4c06-b0aa-8033a9a2f592,f03f1b68-e924-4c06-b0aa-8033a9a2f592,1,0,5e453d10-235d-4e53-86b1-20eed3247992,5e453d10-235d-4e53-86b1-20eed3247992,1,0,0eefb856-0fb4-4c3e-bb08-e88b03a44065,0eefb856-0fb4-4c3e-bb08-e88b03a44065,1,0,21ba8b9f-de97-40a1-8ea1-85a29e8e53ef,21ba8b9f-de97-40a1-8ea1-85a29e8e53ef,1,0,738228ad-c30a-42f4-a6ad-bde0edba6266,738228ad-c30a-42f4-a6ad-bde0edba6266,1,0,c08aea99-ee33-488c-9ba0-f8b24a6d1d04,c08aea99-ee33-488c-9ba0-f8b24a6d1d04,1,0,df8e8344-d7bc-4cf2-b498-88d3abb66c09,df8e8344-d7bc-4cf2-b498-88d3abb66c09,1,0,e6d13536-3021-45b2-a8e1-bdb0e0be850c,e6d13536-3021-45b2-a8e1-bdb0e0be850c,1,0,b49f538c-b2b2-4a1f-a6b4-a911033b1666,b49f538c-b2b2-4a1f-a6b4-a911033b1666,1,0,794e952b-6b03-4a1e-ad3f-453376bccf45,794e952b-6b03-4a1e-ad3f-453376bccf45,1,0,3e2a0713-e6ed-4d38-8036-72f7b62ca64a,3e2a0713-e6ed-4d38-8036-72f7b62ca64a,1,0,5cd997ba-f123-47b3-8cde-fbba45a4a11c,5cd997ba-f123-47b3-8cde-fbba45a4a11c,1,0,0d746247-c4f4-47a5-a373-45ec4023d3ef,0d746247-c4f4-47a5-a373-45ec4023d3ef,1,0,a25bcf4e-1a47-472b-9f93-f6ab45abf461,a25bcf4e-1a47-472b-9f93-f6ab45abf461,1,0,958b7dab-0aba-423f-ab81-b70f2b93a027,958b7dab-0aba-423f-ab81-b70f2b93a027,1,0,a17ec3be-2255-42af-a6ee-d3fb8bb00519,a17ec3be-2255-42af-a6ee-d3fb8bb00519,1,0,add0b22d-ff5a-41f7-88a1-ef34880e50c9,add0b22d-ff5a-41f7-88a1-ef34880e50c9,1,0,4b714d9c-26f4-46e8-ac79-471522b3853b,4b714d9c-26f4-46e8-ac79-471522b3853b,1,0,411489de-f907-4d60-a776-64bb0aa12a0e,411489de-f907-4d60-a776-64bb0aa12a0e,1,0,58d9ba60-a0c7-405d-a76e-0b0a796daaf3,58d9ba60-a0c7-405d-a76e-0b0a796daaf3,1,0,9c47670e-9eb9-49ec-876c-cd545aaa093c,9c47670e-9eb9-49ec-876c-cd545aaa093c,1,0,f57e74e6-75e8-4136-911e-86793036a077,f57e74e6-75e8-4136-911e-86793036a077,1,0,8492ee20-3f15-45d8-b70d-19b5cd6f1ae3,8492ee20-3f15-45d8-b70d-19b5cd6f1ae3,1,0,3ba8c378-ef3d-4646-90b3-6d8078aa623e,3ba8c378-ef3d-4646-90b3-6d8078aa623e,1,0,b96b2e45-8fb3-4d48-ab53-d3bbf6ef0284,b96b2e45-8fb3-4d48-ab53-d3bbf6ef0284,1,0,5ac38b5a-92e5-47eb-b956-24d9f010cb9f,5ac38b5a-92e5-47eb-b956-24d9f010cb9f,1,0,2dd7eb87-8130-425a-be13-85235508cde6,2dd7eb87-8130-425a-be13-85235508cde6,1,0,8a62c997-4fda-4464-90bd-ab719161949f,8a62c997-4fda-4464-90bd-ab719161949f,1,0,28af52dd-3144-428b-956d-b6f27863ec4a,28af52dd-3144-428b-956d-b6f27863ec4a,1,0,8ac94328-2300-4681-9c35-fd7e2f830310,8ac94328-2300-4681-9c35-fd7e2f830310,1,0,da0ee165-1917-466b-ac5c-16c28e2318bb,da0ee165-1917-466b-ac5c-16c28e2318bb,1,0,4868cb2e-0892-42bc-9de1-73cb8a15a96f,4868cb2e-0892-42bc-9de1-73cb8a15a96f,1,0,e8b80879-33b3-4c45-ad68-1acabcf91faf,e8b80879-33b3-4c45-ad68-1acabcf91faf,1,0,4a87fafc-7ca7-478e-bb31-358c2b85fa92,4a87fafc-7ca7-478e-bb31-358c2b85fa92,1,0,239601eb-e8de-4d58-a32a-01ee52f6e698,239601eb-e8de-4d58-a32a-01ee52f6e698,1,0,11370667-bec5-4a2d-8aa1-97f4d795718f,11370667-bec5-4a2d-8aa1-97f4d795718f,1,0,2032162d-fbb5-4e6a-be72-cda79869b9ff,2032162d-fbb5-4e6a-be72-cda79869b9ff,1,0,95a8e790-25ef-4ef3-a44a-f150bf1ceb1f,95a8e790-25ef-4ef3-a44a-f150bf1ceb1f,1,0,10543f9a-4e3f-427a-b36a-9c66709dd6fb,10543f9a-4e3f-427a-b36a-9c66709dd6fb,1,0,973967e5-1702-4fb8-ba36-70fd5b3b7e7c,973967e5-1702-4fb8-ba36-70fd5b3b7e7c,1,0,96ab5424-7be1-416d-b74d-d0c815726b1f,96ab5424-7be1-416d-b74d-d0c815726b1f,1,0,3714e794-ddef-4ad9-a933-6130bbc84545,3714e794-ddef-4ad9-a933-6130bbc84545,1,0,282b089c-7411-40d6-9a0a-ceaf6abb5586,282b089c-7411-40d6-9a0a-ceaf6abb5586,1,0,678188aa-76e7-49bc-a4be-1c55ccd625b1,678188aa-76e7-49bc-a4be-1c55ccd625b1,1,0,6c27eece-2f8e-48eb-b9c7-f9c414ee15bd,6c27eece-2f8e-48eb-b9c7-f9c414ee15bd,1,0,b3415b4a-d8de-4536-aa4b-82e75fd986ee,b3415b4a-d8de-4536-aa4b-82e75fd986ee,1,0,acc996ab-672a-4602-b7ad-8eee83557e61,acc996ab-672a-4602-b7ad-8eee83557e61,1,0,bf9e9c2f-e5dc-4f82-8e9a-7f35e3ad9a0b,bf9e9c2f-e5dc-4f82-8e9a-7f35e3ad9a0b,1,0,371361b6-15fd-4e62-9f60-cc8ee3fbacf0,371361b6-15fd-4e62-9f60-cc8ee3fbacf0,1,0,97745768-ed35-44f1-beba-abb8b28a29ae,97745768-ed35-44f1-beba-abb8b28a29ae,1,0,69364942-bcd1-4b06-9b57-fa59b4e7c552,69364942-bcd1-4b06-9b57-fa59b4e7c552,1,0,ab201c5f-4134-42cf-a528-c1c4df02f2d7,ab201c5f-4134-42cf-a528-c1c4df02f2d7,1,0,303fb7b5-6a23-40ea-ae12-b54f4ebae026,303fb7b5-6a23-40ea-ae12-b54f4ebae026,1,0,634cd26b-78f1-4446-8aad-b96ed16e5329,634cd26b-78f1-4446-8aad-b96ed16e5329,1,0,d8e62f1a-92ca-4971-9609-e79da798c083,d8e62f1a-92ca-4971-9609-e79da798c083,1,0,61892a62-9381-401d-af31-9073ef2509fb,61892a62-9381-401d-af31-9073ef2509fb,1,0,eb74ebf0-a9c6-4c4c-b279-5a46f40ea0d3,eb74ebf0-a9c6-4c4c-b279-5a46f40ea0d3,1,0,d5e1806b-9827-40ab-9cfa-23c22456d137,d5e1806b-9827-40ab-9cfa-23c22456d137,1,0,b57b186a-ec1e-46a2-87ae-6ba27793ebf6,b57b186a-ec1e-46a2-87ae-6ba27793ebf6,1,0,d24170d7-5477-4ec8-acd2-0de8bd2067d6,d24170d7-5477-4ec8-acd2-0de8bd2067d6,1,0,f047da82-7574-4da4-b54e-480195280a11,f047da82-7574-4da4-b54e-480195280a11,1,0,a469f018-da26-485f-87c3-f580321a34f0,a469f018-da26-485f-87c3-f580321a34f0,1,0,adcb0dca-d810-461e-8f45-1d3cd6ffad4d,adcb0dca-d810-461e-8f45-1d3cd6ffad4d,1,0,9e16edb6-d841-48fa-bfe1-f9aabdcf9e46,9e16edb6-d841-48fa-bfe1-f9aabdcf9e46,1,0,628de771-c19c-4474-989f-8fb6cd7756a2,628de771-c19c-4474-989f-8fb6cd7756a2,1,0,6b0ddefa-ee70-4b27-989f-e23c734ab943,6b0ddefa-ee70-4b27-989f-e23c734ab943,1,0,ee873280-28ea-41fb-af52-c10c2018cbe4,ee873280-28ea-41fb-af52-c10c2018cbe4,1,0,6789e57b-1293-442c-97d0-b8007367602e,6789e57b-1293-442c-97d0-b8007367602e,1,0,0f193c89-b664-448e-bed3-2147430367f7,0f193c89-b664-448e-bed3-2147430367f7,1,0,4c9b2506-75a8-47d3-a5d5-d946088ba14a,4c9b2506-75a8-47d3-a5d5-d946088ba14a,1,0,36eacaa1-2efd-49c0-82de-2f8972535bf2,36eacaa1-2efd-49c0-82de-2f8972535bf2,1,0,c35a643d-fe3a-4293-93c0-074fa68a31e3,c35a643d-fe3a-4293-93c0-074fa68a31e3,1,0,9f7b9fd8-4bdd-4492-abf7-09b3f7f23e16,9f7b9fd8-4bdd-4492-abf7-09b3f7f23e16,1,0,72ee9a03-a320-4e60-be04-0ee813ea567f,72ee9a03-a320-4e60-be04-0ee813ea567f,1,0,f6f52cc8-23a3-4402-b1eb-0e41584c802a,f6f52cc8-23a3-4402-b1eb-0e41584c802a,1,0,8398e065-8b4b-4901-b057-2a048776bafe,8398e065-8b4b-4901-b057-2a048776bafe,1,0,073c56ca-bf45-422d-957a-f9c57aeee4d0,073c56ca-bf45-422d-957a-f9c57aeee4d0,1,0,d73e084f-9201-40c8-8ad4-f61b6cbb47c9,d73e084f-9201-40c8-8ad4-f61b6cbb47c9,1,0,68598d98-0c59-4cda-b0b2-6901d3aff88b,68598d98-0c59-4cda-b0b2-6901d3aff88b,1,0,219c1375-f26e-4698-aa82-4b9d735df783,219c1375-f26e-4698-aa82-4b9d735df783,1,0,ff5121c1-7f11-48cd-a9df-3588cf9f6d21,ff5121c1-7f11-48cd-a9df-3588cf9f6d21,1,0,32012b27-1b43-49be-b9af-df0c877e7a4c,32012b27-1b43-49be-b9af-df0c877e7a4c,1,0,e97d5152-9e58-4a91-a691-b4d358f1c89d,e97d5152-9e58-4a91-a691-b4d358f1c89d,1,0,1de4d7ee-7ddd-44db-bf7f-1b99b653652c,1de4d7ee-7ddd-44db-bf7f-1b99b653652c,1,0,dfe624ac-9f49-46dd-b821-1f1f5b5e0d15,dfe624ac-9f49-46dd-b821-1f1f5b5e0d15,1,0,296c478b-4103-46cb-9d14-97f59034ffd4,296c478b-4103-46cb-9d14-97f59034ffd4,1,0,fb918a68-f86d-46c0-9078-61d2b32b5aef,fb918a68-f86d-46c0-9078-61d2b32b5aef,1,0,9ca4d0c4-f5d3-4748-bf73-f3cd1bc4ac46,9ca4d0c4-f5d3-4748-bf73-f3cd1bc4ac46,1,0,1ddfc773-4f3c-4764-978e-585aab4666de,1ddfc773-4f3c-4764-978e-585aab4666de,1,0,e424d122-1dbb-4545-975c-177997129f2e,e424d122-1dbb-4545-975c-177997129f2e,1,0,c83bc626-dfdd-4451-92b0-b53eed40f534,c83bc626-dfdd-4451-92b0-b53eed40f534,1,0,7b9b1d11-4f78-4113-8fca-1a3a30953aef,7b9b1d11-4f78-4113-8fca-1a3a30953aef,1,0,7f84cb85-c3e4-4b53-b829-3b1e216f978a,7f84cb85-c3e4-4b53-b829-3b1e216f978a,1,0,7e621ecc-7d2b-42bf-a502-f8e59de56b63,7e621ecc-7d2b-42bf-a502-f8e59de56b63,1,0,798fd445-d02e-4e97-890a-0283f33317cf,798fd445-d02e-4e97-890a-0283f33317cf,1,0,095583ca-010d-43ad-8c7a-8938fa4cb761,095583ca-010d-43ad-8c7a-8938fa4cb761,1,0,178d210c-e847-4805-a8d4-31acdf4983af,178d210c-e847-4805-a8d4-31acdf4983af,1,0,aa214d9f-23b1-4996-8a43-9010dceeb53d,aa214d9f-23b1-4996-8a43-9010dceeb53d,1,0,26a5527e-dc2b-45a4-a51c-b1dfb31fa8a2,26a5527e-dc2b-45a4-a51c-b1dfb31fa8a2,1,0,aefc3149-90ee-4ccc-8fb6-b1f6096237f6,aefc3149-90ee-4ccc-8fb6-b1f6096237f6,1,0,d9d103bd-1dd6-48a9-8869-6c8485705393,d9d103bd-1dd6-48a9-8869-6c8485705393,1,0,cf2f7e1f-9b0b-4ae9-9c94-99d80bf95eae,cf2f7e1f-9b0b-4ae9-9c94-99d80bf95eae,1,0,ff0e8487-bdbf-4b21-877e-00008c81bc09,ff0e8487-bdbf-4b21-877e-00008c81bc09,1,0,39c9f8ac-56a0-4057-8359-7228bf97184a,39c9f8ac-56a0-4057-8359-7228bf97184a,1,0,763fbb4c-cab2-4c71-ba16-7e2ce8c3dc97,763fbb4c-cab2-4c71-ba16-7e2ce8c3dc97,1,0,2c0dd892-1d3e-4497-850b-080bdb9c59d8,2c0dd892-1d3e-4497-850b-080bdb9c59d8,1,0,3b727d49-c9ed-4d9e-af61-c13b9a170c75,3b727d49-c9ed-4d9e-af61-c13b9a170c75,1,0,1b264744-bdcd-4c5c-932b-0ac4b990dd78,1b264744-bdcd-4c5c-932b-0ac4b990dd78,1,0,a2dbf20e-1fe9-463d-8fd4-76ce2e4854d1,a2dbf20e-1fe9-463d-8fd4-76ce2e4854d1,1,0,37bde288-8e02-4127-bd80-de8ae7590a14,37bde288-8e02-4127-bd80-de8ae7590a14,1,0,a9b8e517-78cd-4428-b2fc-9e16af0069d7,a9b8e517-78cd-4428-b2fc-9e16af0069d7,1,0,5c592024-c009-4674-bbb8-283669e673ef,5c592024-c009-4674-bbb8-283669e673ef,1,0,e76f16b9-77a0-4033-90d0-6e04e4494747,e76f16b9-77a0-4033-90d0-6e04e4494747,1,0,cfb221fc-8639-4e15-9a78-f7837d657a99,cfb221fc-8639-4e15-9a78-f7837d657a99,1,0,4e61c8c3-756e-4937-adf6-6a1e9a89fc6a,4e61c8c3-756e-4937-adf6-6a1e9a89fc6a,1,0,022147c1-1ebe-4c8d-b367-4c47115b101d,022147c1-1ebe-4c8d-b367-4c47115b101d,1,0,2975d4c8-90d8-4791-8bc2-4adaa328ddc0,2975d4c8-90d8-4791-8bc2-4adaa328ddc0,1,0,fca6b230-a38e-4791-9cc5-3d215f79dc6f,fca6b230-a38e-4791-9cc5-3d215f79dc6f,1,0,04e87de4-940a-4533-8c81-8f145b201dc0,04e87de4-940a-4533-8c81-8f145b201dc0,1,0,573ef4f4-e9e6-4b7c-944d-30808a6a00b7,573ef4f4-e9e6-4b7c-944d-30808a6a00b7,1,0,fa488af9-a5ec-47d8-8661-fa5058a60a6b,fa488af9-a5ec-47d8-8661-fa5058a60a6b,1,0,97cc84c6-3565-474c-a028-83acb5390446,97cc84c6-3565-474c-a028-83acb5390446,1,0,9bf07c3e-7fdf-4a4f-ab00-98c7668349bd,9bf07c3e-7fdf-4a4f-ab00-98c7668349bd,1,0,ebbf6957-6ff6-4dc2-9e20-23d1da091f05,ebbf6957-6ff6-4dc2-9e20-23d1da091f05,1,0,9b80acf6-6bf0-42c4-abb3-2fa2fcf4088c,9b80acf6-6bf0-42c4-abb3-2fa2fcf4088c,1,0,1dcec107-9d5f-4b69-ad65-cc4cb1f27a9c,1dcec107-9d5f-4b69-ad65-cc4cb1f27a9c,1,0,b366d7eb-626c-4c0c-b4cc-c392763e6e94,b366d7eb-626c-4c0c-b4cc-c392763e6e94,1,0,4c7e24aa-726a-4595-82ad-ef1e525b14fa,4c7e24aa-726a-4595-82ad-ef1e525b14fa,1,0,b9e5bb39-ed0a-4e12-b7e4-2d9b5015bf9c,b9e5bb39-ed0a-4e12-b7e4-2d9b5015bf9c,1,0,dbced4aa-6432-4f0c-a99a-5a3e7b0f6755,dbced4aa-6432-4f0c-a99a-5a3e7b0f6755,1,0,e849e46c-2ce6-427b-92bc-06d7997f59bf,e849e46c-2ce6-427b-92bc-06d7997f59bf,1,0,5a971dc0-28bf-4426-9426-9f456aea080a,5a971dc0-28bf-4426-9426-9f456aea080a,1,0,aed2ceeb-cc0f-4bdc-bb94-2e15cd68aa96,aed2ceeb-cc0f-4bdc-bb94-2e15cd68aa96,1,0,04b5ae71-7fa4-4a64-b406-59dc603b80c5,04b5ae71-7fa4-4a64-b406-59dc603b80c5,1,0,f23a2023-f776-40db-8689-1fc3f7ebc482,f23a2023-f776-40db-8689-1fc3f7ebc482,1,0,1e7684f0-1b3b-4a32-8602-dd0672c5a800,1e7684f0-1b3b-4a32-8602-dd0672c5a800,1,0,ab178a93-8570-43b6-ae42-f34a7cc4f359,ab178a93-8570-43b6-ae42-f34a7cc4f359,1,0,4c82f31d-7a98-47dd-89dc-1846cb15bf3b,4c82f31d-7a98-47dd-89dc-1846cb15bf3b,1,0,168e3189-2676-4cdb-bc9d-78d85df51faf,168e3189-2676-4cdb-bc9d-78d85df51faf,1,0,ecf1a87f-4ca4-4efb-a84c-b2db1b0e8829,ecf1a87f-4ca4-4efb-a84c-b2db1b0e8829,1,0,470bbff8-20d0-475c-a61a-1a09ac14c2db,470bbff8-20d0-475c-a61a-1a09ac14c2db,1,0,6ea25680-c4db-4717-9498-62420ca16970,6ea25680-c4db-4717-9498-62420ca16970,1,0,14e20d48-635e-4c52-9099-e743323fc190,14e20d48-635e-4c52-9099-e743323fc190,1,0,c37a660e-16c5-495e-9486-e61bcb693fa0,c37a660e-16c5-495e-9486-e61bcb693fa0,1,0,8f44ebad-1160-474e-a566-fb9da55ffcba,8f44ebad-1160-474e-a566-fb9da55ffcba,1,0,11cf336e-7890-4972-bf71-32d7416ff647,11cf336e-7890-4972-bf71-32d7416ff647,1,0,4c4d61a6-6bb6-4a15-9a81-25fdcf96ec4b,4c4d61a6-6bb6-4a15-9a81-25fdcf96ec4b,1,0,14bd3392-36cd-4ed0-8847-44375d6fb861,14bd3392-36cd-4ed0-8847-44375d6fb861,1,0,759ede7a-e832-44e6-9b11-5bfb3c507820,759ede7a-e832-44e6-9b11-5bfb3c507820,1,0,64484611-b32c-4155-a063-7df5a3f924dd,64484611-b32c-4155-a063-7df5a3f924dd,1,0,2f2ac0db-db86-4ed2-a55a-b245b4d00d70,2f2ac0db-db86-4ed2-a55a-b245b4d00d70,1,0,821b93bd-f0dd-4468-972a-d9b2b4de72f1,821b93bd-f0dd-4468-972a-d9b2b4de72f1,1,0,56900066-90e3-40c0-b64a-8f7964a4dfc1,56900066-90e3-40c0-b64a-8f7964a4dfc1,1,0,56f0c4d6-9b13-486a-9586-05e657dca8be,56f0c4d6-9b13-486a-9586-05e657dca8be,1,0,c795c0d3-6a0d-4311-9821-df320663727e,c795c0d3-6a0d-4311-9821-df320663727e,1,0,512b8d89-8798-4549-9e79-b9c3f7d9098f,512b8d89-8798-4549-9e79-b9c3f7d9098f,1,0,e1fe71f8-f37c-4705-aca1-c25e2bdc5db6,e1fe71f8-f37c-4705-aca1-c25e2bdc5db6,1,0,7f356abf-9045-4a76-89f3-8b52d467122a,7f356abf-9045-4a76-89f3-8b52d467122a,1,0,625a61ac-4ad0-4b31-aa67-9f864154b9c4,625a61ac-4ad0-4b31-aa67-9f864154b9c4,1,0,51fa8d01-44a1-4e75-9b04-6a2504972f08,51fa8d01-44a1-4e75-9b04-6a2504972f08,1,0,73dae482-a1ee-4c57-8859-2dd8e8635a49,73dae482-a1ee-4c57-8859-2dd8e8635a49,1,0,e4ea640f-e3a4-44ad-b17d-51f32136372e,e4ea640f-e3a4-44ad-b17d-51f32136372e,1,0,7dca913d-e37a-4740-8e3d-677d379605ee,7dca913d-e37a-4740-8e3d-677d379605ee,1,0,bd1cf7ef-f3e2-4441-836b-16f2cc227aa9,bd1cf7ef-f3e2-4441-836b-16f2cc227aa9,1,0,e62e60ea-9f0c-4a7e-869f-4639f31f826c,e62e60ea-9f0c-4a7e-869f-4639f31f826c,1,0,c9035b0f-cfc4-4761-9ba0-a8aacfaa9c72,c9035b0f-cfc4-4761-9ba0-a8aacfaa9c72,1,0,7efb0bf4-d40c-417b-b9bc-f4a5af66ec09,7efb0bf4-d40c-417b-b9bc-f4a5af66ec09,1,0,4cd4694f-17f8-43ba-8940-07628bd937fe,4cd4694f-17f8-43ba-8940-07628bd937fe,1,0,9b9e81f9-e23f-4c77-bf6f-edbce8ebabfa,9b9e81f9-e23f-4c77-bf6f-edbce8ebabfa,1,0,7df6c94b-3cfe-4764-988e-858d733e35d9,7df6c94b-3cfe-4764-988e-858d733e35d9,1,0,8b251c7d-2d55-4734-a1da-7f1115d95080,8b251c7d-2d55-4734-a1da-7f1115d95080,1,0,87b3153d-bef0-4441-8b1c-a5fc7ba4c36a,87b3153d-bef0-4441-8b1c-a5fc7ba4c36a,1,0,5a8c3621-595a-4168-8bba-a7f8d499e47e,5a8c3621-595a-4168-8bba-a7f8d499e47e,1,0,fc4cfed6-e492-4420-b357-8143a8c2a41a,fc4cfed6-e492-4420-b357-8143a8c2a41a,1,0,4311a250-64af-443e-a711-93b7c41175cf,4311a250-64af-443e-a711-93b7c41175cf,1,0,804b6c57-1d7b-4927-be5b-84b7959fe55e,804b6c57-1d7b-4927-be5b-84b7959fe55e,1,0,f2655d85-79ea-4736-8f41-94a4f9b2b998,f2655d85-79ea-4736-8f41-94a4f9b2b998,1,0,21258174-3a95-4c10-bb8f-4d6db0c5ae0e,21258174-3a95-4c10-bb8f-4d6db0c5ae0e,1,0,a8eb5ed9-df99-405b-afad-eeaa98956eee,a8eb5ed9-df99-405b-afad-eeaa98956eee,1,0,a64d4b1b-fae4-43ae-ae98-bdc4e59a94c1,a64d4b1b-fae4-43ae-ae98-bdc4e59a94c1,1,0,26a1279f-91f0-4632-ad7c-21cf2f524208,26a1279f-91f0-4632-ad7c-21cf2f524208,1,0,bf751ed0-ee47-4eaf-81bd-f0da00bef343,bf751ed0-ee47-4eaf-81bd-f0da00bef343,1,0,14b65111-4c0e-4521-9fcd-2a8d4aaa6b4b,14b65111-4c0e-4521-9fcd-2a8d4aaa6b4b,1,0,1f1def7c-e0ee-4963-afea-1751bf1b812c,1f1def7c-e0ee-4963-afea-1751bf1b812c,1,0,9a4c0898-ab56-425c-8191-5ab90f4e12bf,9a4c0898-ab56-425c-8191-5ab90f4e12bf,1,0,6841ec47-7a84-441a-b975-69d089072ce7,6841ec47-7a84-441a-b975-69d089072ce7,1,0,ead4001a-0d8a-4b95-8212-2a40e5aa6659,ead4001a-0d8a-4b95-8212-2a40e5aa6659,1,0,22165c8a-2179-4cd5-b195-bd2721e9e232,22165c8a-2179-4cd5-b195-bd2721e9e232,1,0,b28c3a8f-8cad-45eb-90d3-6d90a0b3f881,b28c3a8f-8cad-45eb-90d3-6d90a0b3f881,1,0,3c5974ec-f76d-401c-a8e4-d51c7cd4c4fb,3c5974ec-f76d-401c-a8e4-d51c7cd4c4fb,1,0,609a9bc9-4225-4fe1-91fa-90c9c2e5cfba,609a9bc9-4225-4fe1-91fa-90c9c2e5cfba,1,0,d22ed498-c7df-45bb-869f-f16d3aa2d3d3,d22ed498-c7df-45bb-869f-f16d3aa2d3d3,1,0,4a966f6e-87dd-4dae-9cc0-dbabee9424dc,4a966f6e-87dd-4dae-9cc0-dbabee9424dc,1,0,9d9debfd-4a10-4f09-9d09-2aa5e058b525,9d9debfd-4a10-4f09-9d09-2aa5e058b525,1,0,fc19586c-d89c-495c-b473-6f85967ed48e,fc19586c-d89c-495c-b473-6f85967ed48e,1,0,2ac7c701-a281-4e77-a5f8-294526021e2d,2ac7c701-a281-4e77-a5f8-294526021e2d,1,0,979df549-889d-496a-b6ce-c56d54c771b5,979df549-889d-496a-b6ce-c56d54c771b5,1,0,91b320d8-3426-44d3-97d7-c200287d7343,91b320d8-3426-44d3-97d7-c200287d7343,1,0,b9297f72-b40a-4adb-9975-bb693d4834a4,b9297f72-b40a-4adb-9975-bb693d4834a4,1,0,41cf3916-216f-4c4e-a587-82777f4263e0,41cf3916-216f-4c4e-a587-82777f4263e0,1,0,2ce3a350-86f1-4275-8299-3c3693ca11fa,2ce3a350-86f1-4275-8299-3c3693ca11fa,1,0,59f0ed15-c84c-4f41-bdd4-26317e4e914d,59f0ed15-c84c-4f41-bdd4-26317e4e914d,1,0,4b5ff142-47b8-4548-b6f9-56ebcbd40e35,4b5ff142-47b8-4548-b6f9-56ebcbd40e35,1,0,8fef790c-a3f4-460c-9093-5065cbdba196,8fef790c-a3f4-460c-9093-5065cbdba196,1,0,79bd24d0-61a9-4558-90ac-4e726066789c,79bd24d0-61a9-4558-90ac-4e726066789c,1,0,d843cbd7-e2b5-4c50-8ed2-7cb0baac8ecc,d843cbd7-e2b5-4c50-8ed2-7cb0baac8ecc,1,0,ef356548-51a4-4b09-b37d-ede5b8f3edb6,ef356548-51a4-4b09-b37d-ede5b8f3edb6,1,0,53c0d900-5e96-4381-a1ed-4424a5799608,53c0d900-5e96-4381-a1ed-4424a5799608,1,0,64fe317a-7d0e-4758-b5cf-0d871d2bf4ad,64fe317a-7d0e-4758-b5cf-0d871d2bf4ad,1,0,abfb7ac3-ebfa-4275-a039-a6b94bb9a76f,abfb7ac3-ebfa-4275-a039-a6b94bb9a76f,1,0,45ca9e20-1246-4400-a019-ffb521af6ea7,45ca9e20-1246-4400-a019-ffb521af6ea7,1,0,73eed854-5c3a-4a10-9bfa-793fd517f303,73eed854-5c3a-4a10-9bfa-793fd517f303,1,0,c3eb2836-ea4d-48cc-a03f-3a0c30f67e7f,c3eb2836-ea4d-48cc-a03f-3a0c30f67e7f,1,0,9134dc40-a8f1-4c60-9431-27cb98be5ecd,9134dc40-a8f1-4c60-9431-27cb98be5ecd,1,0,16c4622a-33af-4a95-b44e-0861a6df21d2,16c4622a-33af-4a95-b44e-0861a6df21d2,1,0,d8cac67b-cce2-4a00-a8df-c6570c50153f,d8cac67b-cce2-4a00-a8df-c6570c50153f,1,0,37213c65-bf26-4e50-a2fa-58eb45439b58,37213c65-bf26-4e50-a2fa-58eb45439b58,1,0,e43c08a9-6496-4c8e-bfe2-9d728e31d63d,e43c08a9-6496-4c8e-bfe2-9d728e31d63d,1,0,b6b31892-73ee-4c9b-92b0-2735536c4938,b6b31892-73ee-4c9b-92b0-2735536c4938,1,0,deb8b883-142e-47d0-a722-7c734a0cf9b3,deb8b883-142e-47d0-a722-7c734a0cf9b3,1,0,a6794f74-08a4-4b73-add7-e6d0d1b6e7a3,a6794f74-08a4-4b73-add7-e6d0d1b6e7a3,1,0,29233058-ccb1-4110-a9bc-cdb4c531f35a,29233058-ccb1-4110-a9bc-cdb4c531f35a,1,0,cf3729b2-9ee6-437c-81df-83966793be50,cf3729b2-9ee6-437c-81df-83966793be50,1,0,429d08b7-0b98-4f9b-a053-d04dd84a7026,429d08b7-0b98-4f9b-a053-d04dd84a7026,1,0,b64fd964-cee8-4619-872f-82d2fdc14240,b64fd964-cee8-4619-872f-82d2fdc14240,1,0,5ce7846d-9806-40f5-8631-4e14deb8bc95,5ce7846d-9806-40f5-8631-4e14deb8bc95,1,0,79528a0e-1e48-4d14-bd28-756fd5db57b9,79528a0e-1e48-4d14-bd28-756fd5db57b9,1,0,4eeab8c2-d901-4b95-adea-4a08f79d0fa2,4eeab8c2-d901-4b95-adea-4a08f79d0fa2,1,0,d9426219-4b37-4776-8d5d-acab5825e789,d9426219-4b37-4776-8d5d-acab5825e789,1,0,7ce1f9eb-ac51-46fd-adc5-c8b9bfb32e44,7ce1f9eb-ac51-46fd-adc5-c8b9bfb32e44,1,0,4fef5026-1cba-4c33-ae75-5f9570a8e6b6,4fef5026-1cba-4c33-ae75-5f9570a8e6b6,1,0,243ee3d4-4130-41ea-a37c-c7b39a5e73fa,243ee3d4-4130-41ea-a37c-c7b39a5e73fa,1,0,29e7299a-ce80-497a-8102-615d0a001ea8,29e7299a-ce80-497a-8102-615d0a001ea8,1,0,f9e48170-62eb-4d6b-b861-c7af1b4a38c3,f9e48170-62eb-4d6b-b861-c7af1b4a38c3,1,0,9bcc8f9a-ec12-45f2-8a32-6946d556f57a,9bcc8f9a-ec12-45f2-8a32-6946d556f57a,1,0,adc2cc11-b647-453f-a98e-8a73b7c368c7,adc2cc11-b647-453f-a98e-8a73b7c368c7,1,0,fb5e93bb-e1ff-47a6-a362-ea94e6cbac65,fb5e93bb-e1ff-47a6-a362-ea94e6cbac65,1,0,4522c564-61da-40da-a749-5312121a331d,4522c564-61da-40da-a749-5312121a331d,1,0,9394c709-6cbe-4ef6-bc8c-cba8af65821e,9394c709-6cbe-4ef6-bc8c-cba8af65821e,1,0,2943b572-7411-4f92-a6cc-7ee552b85223,2943b572-7411-4f92-a6cc-7ee552b85223,1,0,28478e7a-e8aa-40aa-866c-a3624f903141,28478e7a-e8aa-40aa-866c-a3624f903141,1,0,f692ab21-a8de-4feb-914f-4beef350543a,f692ab21-a8de-4feb-914f-4beef350543a,1,0,0ec0b1a0-5f0d-4a14-9a84-49098befa0af,0ec0b1a0-5f0d-4a14-9a84-49098befa0af,1,0,c644ab9b-7bcb-4bfa-b8ba-4c5f7689c91c,c644ab9b-7bcb-4bfa-b8ba-4c5f7689c91c,1,0,dabb3395-6100-4f53-913d-e0230e81b494,dabb3395-6100-4f53-913d-e0230e81b494,1,0,e0a3fae1-1582-4c7a-acd8-870b558acec4,e0a3fae1-1582-4c7a-acd8-870b558acec4,1,0,4a749e8c-cb35-4bc4-9b31-fb5bc0eab474,4a749e8c-cb35-4bc4-9b31-fb5bc0eab474,1,0,da4a0c05-2285-434b-b7f8-83b2a0d7f23d,da4a0c05-2285-434b-b7f8-83b2a0d7f23d,1,0,8afa9a0e-04c1-4cac-82bb-6767cc0594d9,8afa9a0e-04c1-4cac-82bb-6767cc0594d9,1,0,ecbe625a-55eb-437a-8dee-33fb034d4c0d,ecbe625a-55eb-437a-8dee-33fb034d4c0d,1,0,5d4cefac-5dc4-4d73-8b4b-900a8464fbb2,5d4cefac-5dc4-4d73-8b4b-900a8464fbb2,1,0,948b10b3-0d7c-4dca-8816-75eb86e7881b,948b10b3-0d7c-4dca-8816-75eb86e7881b,1,0,9de91b5a-98e4-414b-b650-b669b0159b49,9de91b5a-98e4-414b-b650-b669b0159b49,1,0,3de3948d-40ff-4e0d-8445-9bf49c916161,3de3948d-40ff-4e0d-8445-9bf49c916161,1,0,73a093ea-1927-483b-b6f5-8f0cbd253753,73a093ea-1927-483b-b6f5-8f0cbd253753,1,0,345f04c0-0274-4e79-b523-f1fa3cf0d92a,345f04c0-0274-4e79-b523-f1fa3cf0d92a,1,0,f3a14787-de1b-4b65-8cb1-bc33a785821c,f3a14787-de1b-4b65-8cb1-bc33a785821c,1,0,ec61075e-fbcb-494a-b790-81548a212d2b,ec61075e-fbcb-494a-b790-81548a212d2b,1,0,0c444045-302b-4dbd-a9a3-81fd40004948,0c444045-302b-4dbd-a9a3-81fd40004948,1,0,1528b799-1c0f-4244-85e8-e738b827934a,1528b799-1c0f-4244-85e8-e738b827934a,1,0,45d79e4d-8c2a-432b-abb8-fb9046abea40,45d79e4d-8c2a-432b-abb8-fb9046abea40,1,0,8f4d2fa9-c6ed-4f85-b3ef-f9214468ffc4,8f4d2fa9-c6ed-4f85-b3ef-f9214468ffc4,1,0,cb73c8c2-3b09-42e9-ac26-1bd51854efb6,cb73c8c2-3b09-42e9-ac26-1bd51854efb6,1,0,e9f393e5-04d3-4330-afb0-aa73caf0c5cd,e9f393e5-04d3-4330-afb0-aa73caf0c5cd,1,0,036868c2-e2c4-426b-8402-0d77b4224828,036868c2-e2c4-426b-8402-0d77b4224828,1,0,1bf18e24-8157-4aa4-b790-21c6535f5233,1bf18e24-8157-4aa4-b790-21c6535f5233,1,0,18470536-57df-48f0-9a85-68e4006558eb,18470536-57df-48f0-9a85-68e4006558eb,1,0,893e2f4c-b056-42ae-89fb-ecd90a53bb4c,893e2f4c-b056-42ae-89fb-ecd90a53bb4c,1,0,5eaaa3fd-3a87-4eaa-93a9-49337b19eddd,5eaaa3fd-3a87-4eaa-93a9-49337b19eddd,1,0,77ee9f6c-0be9-450f-978c-297626d6275b,77ee9f6c-0be9-450f-978c-297626d6275b,1,0,a63e6145-0d4b-4da2-9864-485a61e621df,a63e6145-0d4b-4da2-9864-485a61e621df,1,0,f29738d5-ad22-47bf-9053-497763674486,f29738d5-ad22-47bf-9053-497763674486,1,0,9c23d3bd-7a98-4d71-b9b0-78cda4ffb3ce,9c23d3bd-7a98-4d71-b9b0-78cda4ffb3ce,1,0,9aca958a-a938-4421-9e37-6606e02f7b77,9aca958a-a938-4421-9e37-6606e02f7b77,1,0,44109976-b763-4807-a013-9d04c3675bf3,44109976-b763-4807-a013-9d04c3675bf3,1,0,46127175-144d-438e-8fbe-c55ae0233620,46127175-144d-438e-8fbe-c55ae0233620,1,0,20754057-6397-4478-a484-74b8c2f243ee,20754057-6397-4478-a484-74b8c2f243ee,1,0,b8a06e8b-4581-4088-a5b4-a5d3330eab22,b8a06e8b-4581-4088-a5b4-a5d3330eab22,1,0,ea838b79-af81-4767-a8b1-fce68baa866a,ea838b79-af81-4767-a8b1-fce68baa866a,1,0,5e1056d0-6778-4030-8806-3dc90ffed318,5e1056d0-6778-4030-8806-3dc90ffed318,1,0,068e6f32-a2b6-4ade-9b9e-db3eac8b09c1,068e6f32-a2b6-4ade-9b9e-db3eac8b09c1,1,0,3701531a-b408-455f-a49d-652d3fcab4ef,3701531a-b408-455f-a49d-652d3fcab4ef,1,0,63e229aa-2638-45f1-9c5e-f821d9397ac3,63e229aa-2638-45f1-9c5e-f821d9397ac3,1,0,9e425f71-ef7d-4936-9f1b-7dceca99ca95,9e425f71-ef7d-4936-9f1b-7dceca99ca95,1,0,968ecea6-7d21-4e85-9d25-e8c6fe1b76cc,968ecea6-7d21-4e85-9d25-e8c6fe1b76cc,1,0,c6777ffe-1fb2-4807-8624-43f47a4e3947,c6777ffe-1fb2-4807-8624-43f47a4e3947,1,0,91c8e02d-ec9c-41d6-a2b1-ec1e906c055a,91c8e02d-ec9c-41d6-a2b1-ec1e906c055a,1,0,be42c5c6-b604-4180-a3d7-24b2348c8d5e,be42c5c6-b604-4180-a3d7-24b2348c8d5e,1,0,6223c072-bff3-4ea8-96a1-ac2a5bbe9f99,6223c072-bff3-4ea8-96a1-ac2a5bbe9f99,1,0,6fd083fe-a132-4f63-b38f-4891004aca8a,6fd083fe-a132-4f63-b38f-4891004aca8a,1,0,f9f021ca-8b3e-4d10-9538-1bce7e851fdd,f9f021ca-8b3e-4d10-9538-1bce7e851fdd,1,0,bb7cf0f8-56b0-4c0d-b206-79051ba83f6d,bb7cf0f8-56b0-4c0d-b206-79051ba83f6d,1,0,ab057ce4-ac51-4465-8aad-eadc9088c62d,ab057ce4-ac51-4465-8aad-eadc9088c62d,1,0,8842c0e3-2e20-4f37-ae7c-f5449004994b,8842c0e3-2e20-4f37-ae7c-f5449004994b,1,0,5b2cc44b-69cb-495c-a26b-003a495df40b,5b2cc44b-69cb-495c-a26b-003a495df40b,1,0,30250d93-10ff-45c9-920b-5fed3f9d8093,30250d93-10ff-45c9-920b-5fed3f9d8093,1,0,fc959221-6313-45d9-b2c4-85befaede226,fc959221-6313-45d9-b2c4-85befaede226,1,0,6ffa8536-7639-4e9a-9f6d-4eda71f5ca3b,6ffa8536-7639-4e9a-9f6d-4eda71f5ca3b,1,0,5206d407-ac91-477e-80e7-97c312da934c,5206d407-ac91-477e-80e7-97c312da934c,1,0,15b53eaa-cb35-4385-9515-c2ec6e1fdb4b,15b53eaa-cb35-4385-9515-c2ec6e1fdb4b,1,0,ccb8a530-260a-4488-b1d9-c67325c69bf4,ccb8a530-260a-4488-b1d9-c67325c69bf4,1,0,c869c1b7-3c04-4e5e-a033-d3f2fb0af03c,c869c1b7-3c04-4e5e-a033-d3f2fb0af03c,1,0,23f93492-59f5-491b-8708-45096934c7e6,23f93492-59f5-491b-8708-45096934c7e6,1,0,30f5471a-17fb-4184-9798-4f8e3ef0cccb,30f5471a-17fb-4184-9798-4f8e3ef0cccb,1,0,27abda4c-a43c-49b4-90cd-db780afe0c45,27abda4c-a43c-49b4-90cd-db780afe0c45,1,0,450a36cb-9bc1-4c5b-ae21-0e023f3eb951,450a36cb-9bc1-4c5b-ae21-0e023f3eb951,1,0,1a28db16-d410-4101-bf31-21cefa880dae,1a28db16-d410-4101-bf31-21cefa880dae,1,0,2b85bcf6-85b0-4efb-bada-b65414a8d264,2b85bcf6-85b0-4efb-bada-b65414a8d264,1,0,cf027de4-59c9-4b8f-9695-b1d4d16548fe,cf027de4-59c9-4b8f-9695-b1d4d16548fe,1,0,d33ceaee-a374-40a3-9406-cbcbf82fd8ae,d33ceaee-a374-40a3-9406-cbcbf82fd8ae,1,0,0b13cad5-91ae-4cd1-a620-9a315ae8024c,0b13cad5-91ae-4cd1-a620-9a315ae8024c,1,0,d0634a8e-676f-4f49-9a38-7cb80cfa9fdf,d0634a8e-676f-4f49-9a38-7cb80cfa9fdf,1,0,59bb5271-4cc7-45aa-8e2a-f556a4afa2dc,59bb5271-4cc7-45aa-8e2a-f556a4afa2dc,1,0,81dd61e5-fe02-4272-a525-affda9b606ca,81dd61e5-fe02-4272-a525-affda9b606ca,1,0,8de7b423-b7d1-46fe-b1dc-fb936736b864,8de7b423-b7d1-46fe-b1dc-fb936736b864,1,0,f565876c-0326-4b12-895e-c248b9e64115,f565876c-0326-4b12-895e-c248b9e64115,1,0,62f075c5-1ad0-4a29-9f40-567b9fa70cdf,62f075c5-1ad0-4a29-9f40-567b9fa70cdf,1,0,88cefe4a-a6c5-4753-935e-f956d9de9f77,88cefe4a-a6c5-4753-935e-f956d9de9f77,1,0,882e78b7-90bd-4b95-8852-146bdb51ec15,882e78b7-90bd-4b95-8852-146bdb51ec15,1,0,ae4435c3-62c0-4f08-b526-7f9571eed8ae,ae4435c3-62c0-4f08-b526-7f9571eed8ae,1,0,91a1bd81-e6fa-476c-85e6-317a91f6c8bc,91a1bd81-e6fa-476c-85e6-317a91f6c8bc,1,0,f799e1d1-bb78-4a7a-bb1a-d79ba29acd0c,f799e1d1-bb78-4a7a-bb1a-d79ba29acd0c,1,0,c7b46558-d688-4c42-ae52-f98de7923176,c7b46558-d688-4c42-ae52-f98de7923176,1,0,31fdbb46-1df1-4b74-a54e-b922260dcca6,31fdbb46-1df1-4b74-a54e-b922260dcca6,1,0,0f6f8fd9-b3af-4d06-bc47-bdad238d15b7,0f6f8fd9-b3af-4d06-bc47-bdad238d15b7,1,0,460e76d2-4ed6-464e-bf9c-a6bcf920aaf2,460e76d2-4ed6-464e-bf9c-a6bcf920aaf2,1,0,80c23bf0-cef0-4d07-a017-d90635f8041d,80c23bf0-cef0-4d07-a017-d90635f8041d,1,0,47a24216-3299-470b-a18c-d8c1258fff24,47a24216-3299-470b-a18c-d8c1258fff24,1,0,72dcfd46-491e-4f88-a0ea-57919f8fbdea,72dcfd46-491e-4f88-a0ea-57919f8fbdea,1,0,fa7a11cc-7ee0-4550-8d0d-9c7464d57a37,fa7a11cc-7ee0-4550-8d0d-9c7464d57a37,1,0,8317ac49-890d-4921-8c0d-1bfc676f0b40,8317ac49-890d-4921-8c0d-1bfc676f0b40,1,0,9dfb5735-6cc7-4525-b57d-04f9c798fac4,9dfb5735-6cc7-4525-b57d-04f9c798fac4,1,0,f9161bc3-9a1c-4870-8681-8e97d8ce838a,f9161bc3-9a1c-4870-8681-8e97d8ce838a,1,0,5e53ccc6-5ab4-4f9d-b524-0081d345d7a2,5e53ccc6-5ab4-4f9d-b524-0081d345d7a2,1,0,c3b3805b-3501-47a7-b280-46180049b235,c3b3805b-3501-47a7-b280-46180049b235,1,0,29af05c2-37de-495b-b3cf-477d452abe5e,29af05c2-37de-495b-b3cf-477d452abe5e,1,0,0c732569-a50f-4be3-a214-0843c6a3da47,0c732569-a50f-4be3-a214-0843c6a3da47,1,0,f55d74bf-5824-4228-9683-31f7c7fdf74d,f55d74bf-5824-4228-9683-31f7c7fdf74d,1,0,5e922083-0ceb-449a-8201-7dd27a46f2fc,5e922083-0ceb-449a-8201-7dd27a46f2fc,1,0,0d142fcd-a596-4cdf-a3f6-c31becdb7b59,0d142fcd-a596-4cdf-a3f6-c31becdb7b59,1,0,c30c6860-befb-497e-b432-3dba0f86c540,c30c6860-befb-497e-b432-3dba0f86c540,1,0,d97e78c7-f2c1-4e0e-9c9b-d2dd6a94da22,d97e78c7-f2c1-4e0e-9c9b-d2dd6a94da22,1,0,e757303e-c61a-4e42-9829-c5a36dba9414,e757303e-c61a-4e42-9829-c5a36dba9414,1,0,cb3bb725-ed7a-4cde-a0ac-26a0b168c0ea,cb3bb725-ed7a-4cde-a0ac-26a0b168c0ea,1,0,091de87c-0801-4bd3-aaaa-ed37bc4cd161,091de87c-0801-4bd3-aaaa-ed37bc4cd161,1,0,9a6bfcbe-6ac7-4839-bfb9-a11b97e64185,9a6bfcbe-6ac7-4839-bfb9-a11b97e64185,1,0,b53c545c-3b1c-4315-a213-4f2b2c7128aa,b53c545c-3b1c-4315-a213-4f2b2c7128aa,1,0,02a84df9-2171-43e6-8135-a74edd384826,02a84df9-2171-43e6-8135-a74edd384826,1,0,ff36356d-cb1d-4316-896a-c6ae83b92437,ff36356d-cb1d-4316-896a-c6ae83b92437,1,0,465cce6a-7064-4b0a-932c-40f842042f33,465cce6a-7064-4b0a-932c-40f842042f33,1,0,f9cd82e7-8252-4bb6-8e08-23ab45ed3976,f9cd82e7-8252-4bb6-8e08-23ab45ed3976,1,0,e67dff00-92e2-4f58-a950-d5bbca9291c5,e67dff00-92e2-4f58-a950-d5bbca9291c5,1,0,e1964724-804a-4ecc-be9e-5b84e58f2b84,e1964724-804a-4ecc-be9e-5b84e58f2b84,1,0,46e961c2-cd45-4d76-a6ad-c1d5c8dc95cc,46e961c2-cd45-4d76-a6ad-c1d5c8dc95cc,1,0,bf3cb513-2856-472b-8713-7bf8ba70cdce,bf3cb513-2856-472b-8713-7bf8ba70cdce,1,0,de4815c8-0853-47e0-862b-b60119c674f6,de4815c8-0853-47e0-862b-b60119c674f6,1,0,dbe02a79-3179-42bb-a8e8-dd9bf3ff705c,dbe02a79-3179-42bb-a8e8-dd9bf3ff705c,1,0,8f17ec3f-6d62-46b8-baef-b20430e948ce,8f17ec3f-6d62-46b8-baef-b20430e948ce,1,0,ea1298d0-9396-4a50-b83e-24064e8dd99d,ea1298d0-9396-4a50-b83e-24064e8dd99d,1,0,038dbb00-e4c6-4e64-b861-3a0764f54ab3,038dbb00-e4c6-4e64-b861-3a0764f54ab3,1,0,1c291f7d-a493-4297-8aaa-912896800066,1c291f7d-a493-4297-8aaa-912896800066,1,0,69149801-a825-4ed2-b077-c26660dff271,69149801-a825-4ed2-b077-c26660dff271,1,0,12146ed3-c159-4d6b-ae1a-1ecd30e5a87e,12146ed3-c159-4d6b-ae1a-1ecd30e5a87e,1,0,518ab687-b84a-40c8-8547-aee4257c1b71,518ab687-b84a-40c8-8547-aee4257c1b71,1,0,5cec0949-bfe8-4f7e-98c1-0c402be3ea09,5cec0949-bfe8-4f7e-98c1-0c402be3ea09,1,0,7732ef07-16eb-46a0-9645-7de95c5482af,7732ef07-16eb-46a0-9645-7de95c5482af,1,0,75dac536-b316-4b04-a57b-03656c678bec,75dac536-b316-4b04-a57b-03656c678bec,1,0,a07d6c85-159d-4d09-b117-561a1e20329f,a07d6c85-159d-4d09-b117-561a1e20329f,1,0,8a2f9733-4f83-41f2-9d74-dca7161a4b41,8a2f9733-4f83-41f2-9d74-dca7161a4b41,1,0,fbd2d900-1e0d-48f3-9793-0186ee49915c,fbd2d900-1e0d-48f3-9793-0186ee49915c,1,0,436b558e-6547-4ba6-8cee-954fe36743ea,436b558e-6547-4ba6-8cee-954fe36743ea,1,0,6120bb6e-b177-48bf-b467-02bab0d4cc0d,6120bb6e-b177-48bf-b467-02bab0d4cc0d,1,0,a5af4715-6c4f-484b-9599-5b1b9147713f,a5af4715-6c4f-484b-9599-5b1b9147713f,1,0,307b6e66-6fef-4777-b20a-37898928932f,307b6e66-6fef-4777-b20a-37898928932f,1,0,a69494c0-dcce-4359-aa82-c1cfae8a43eb,a69494c0-dcce-4359-aa82-c1cfae8a43eb,1,0,2b243d49-5500-403a-b177-ac1c70bb889d,2b243d49-5500-403a-b177-ac1c70bb889d,1,0,51c040c6-e7a4-4e0e-b479-039636fdb6ec,51c040c6-e7a4-4e0e-b479-039636fdb6ec,1,0,8ede4c18-ebf0-4c39-9e82-c59df8d62ca7,8ede4c18-ebf0-4c39-9e82-c59df8d62ca7,1,0,8a50e7f2-97a9-4ed8-a46f-6413f7fcf8cd,8a50e7f2-97a9-4ed8-a46f-6413f7fcf8cd,1,0,b2c200a7-b9cc-4d84-b839-e69f2a14a8f5,b2c200a7-b9cc-4d84-b839-e69f2a14a8f5,1,0,4a69a70d-1b4c-4999-a3dd-ae1deb331fea,4a69a70d-1b4c-4999-a3dd-ae1deb331fea,1,0,3a36e0f5-a645-47f1-99ae-5b0493d604ad,3a36e0f5-a645-47f1-99ae-5b0493d604ad,1,0,57f762f7-b8e4-498b-a3dc-3d40c94855ec,57f762f7-b8e4-498b-a3dc-3d40c94855ec,1,0,ca7d4086-de35-40fd-af65-73369d452135,ca7d4086-de35-40fd-af65-73369d452135,1,0,563c0f5c-e0b4-4229-a3f6-183091060aa4,563c0f5c-e0b4-4229-a3f6-183091060aa4,1,0,bf967588-ea8f-49a3-9331-af2331ffa162,bf967588-ea8f-49a3-9331-af2331ffa162,1,0,5083530c-9a24-4def-99c1-6eb9514e9b33,5083530c-9a24-4def-99c1-6eb9514e9b33,1,0,d59c2725-5d98-495e-9f86-f5d38dbfad90,d59c2725-5d98-495e-9f86-f5d38dbfad90,1,0,176f8835-73d2-4fbe-9d2a-0a4c79d3b871,176f8835-73d2-4fbe-9d2a-0a4c79d3b871,1,0,0ba68198-983d-409b-be27-96f1572b3f12,0ba68198-983d-409b-be27-96f1572b3f12,1,0,9cd1e8dd-e2be-48a9-b32d-43688e1748bc,9cd1e8dd-e2be-48a9-b32d-43688e1748bc,1,0,decb27a8-7dd3-4601-a694-30429e638b39,decb27a8-7dd3-4601-a694-30429e638b39,1,0,922ac6c0-a6a8-444e-9aad-27dc0f49b32e,922ac6c0-a6a8-444e-9aad-27dc0f49b32e,1,0,d7a128e4-f31f-4b09-8424-e816ab59d5c3,d7a128e4-f31f-4b09-8424-e816ab59d5c3,1,0,0ce6e252-8d6e-4bfe-b8cc-daf3434fa51e,0ce6e252-8d6e-4bfe-b8cc-daf3434fa51e,1,0,aa9513b4-f575-4030-a7f9-ac09aa319e98,aa9513b4-f575-4030-a7f9-ac09aa319e98,1,0,f01afc5e-91b8-4cc2-b63a-c245e5e36d01,f01afc5e-91b8-4cc2-b63a-c245e5e36d01,1,0,028cbc0e-023d-40ad-86c3-5e6f8dc96c57,028cbc0e-023d-40ad-86c3-5e6f8dc96c57,1,0,d03f66b1-48a3-434b-bb58-9fd53c183514,d03f66b1-48a3-434b-bb58-9fd53c183514,1,0,a469e55e-d7ca-4c27-b350-fafe7364c18f,a469e55e-d7ca-4c27-b350-fafe7364c18f,1,0,b4dde44e-57d5-4c3a-bb9b-643787ce07b0,b4dde44e-57d5-4c3a-bb9b-643787ce07b0,1,0,d2160866-78ca-424a-92b9-d389fb341ee0,d2160866-78ca-424a-92b9-d389fb341ee0,1,0,73b36823-72a4-4286-8ee2-02b2f086d5ea,73b36823-72a4-4286-8ee2-02b2f086d5ea,1,0,b09fc04b-94d8-4dea-bf6c-24370f231274,b09fc04b-94d8-4dea-bf6c-24370f231274,1,0,e669a5cd-daf3-4a88-a2c0-380db496a4dd,e669a5cd-daf3-4a88-a2c0-380db496a4dd,1,0,177710c8-2441-4436-a096-64c27aa7aec5,177710c8-2441-4436-a096-64c27aa7aec5,1,0,ab143db8-185b-4093-a3b1-c65322cb8fd6,ab143db8-185b-4093-a3b1-c65322cb8fd6,1,0,e3ce5882-541e-4620-9c24-f00deacc33c2,e3ce5882-541e-4620-9c24-f00deacc33c2,1,0,c9694243-390e-4217-8996-b33924c4fe60,c9694243-390e-4217-8996-b33924c4fe60,1,0,8e08ea9b-8c63-475a-9335-c8edc6214555,8e08ea9b-8c63-475a-9335-c8edc6214555,1,0,19bd6152-7e9c-4710-80c3-c6aa399fe4e9,19bd6152-7e9c-4710-80c3-c6aa399fe4e9,1,0,72846fcc-a9ab-4393-9133-38c1805abab1,72846fcc-a9ab-4393-9133-38c1805abab1,1,0,91a81670-9124-4b65-aecd-77f252249030,91a81670-9124-4b65-aecd-77f252249030,1,0,ed2e5344-9261-4473-86a5-f914b8458cfc,ed2e5344-9261-4473-86a5-f914b8458cfc,1,0,4ff32c59-4ca5-4e60-b54c-f46f757758e2,4ff32c59-4ca5-4e60-b54c-f46f757758e2,1,0,acbc674d-d053-43f4-9d62-86fbbb962ee2,acbc674d-d053-43f4-9d62-86fbbb962ee2,1,0,e0608801-124b-4c52-9a17-9072eb5b676c,e0608801-124b-4c52-9a17-9072eb5b676c,1,0,64e3295e-89c6-4b09-8dc4-b552da47db84,64e3295e-89c6-4b09-8dc4-b552da47db84,1,0,2c1846a5-09f2-414b-b95c-67ed7432ce0e,2c1846a5-09f2-414b-b95c-67ed7432ce0e,1,0,ce339ae7-a794-425b-8d5f-b04fd4b21364,ce339ae7-a794-425b-8d5f-b04fd4b21364,1,0,3ad5d8a7-3071-46aa-aebf-306bdb67983b,3ad5d8a7-3071-46aa-aebf-306bdb67983b,1,0,ab7ef662-71c1-4d51-9f0f-ea8c5ea3df8a,ab7ef662-71c1-4d51-9f0f-ea8c5ea3df8a,1,0,cb954476-c551-4a06-9bcd-18d67ba47dc8,cb954476-c551-4a06-9bcd-18d67ba47dc8,1,0,79201015-bfae-463e-81f1-0ae2d3066f3f,79201015-bfae-463e-81f1-0ae2d3066f3f,1,0,bed8af4e-fa3a-4b25-ba6e-5b7b4a6cd363,bed8af4e-fa3a-4b25-ba6e-5b7b4a6cd363,1,0,951927d4-7bfc-4edb-b97f-dcc29a937400,951927d4-7bfc-4edb-b97f-dcc29a937400,1,0,71309e88-d514-40f3-a329-b2a420e75504,71309e88-d514-40f3-a329-b2a420e75504,1,0,1ea3178b-73dd-4063-9140-c61687a4b1b8,1ea3178b-73dd-4063-9140-c61687a4b1b8,1,0,85fd7ef4-2886-4e2c-a6eb-63d0b0b9cd55,85fd7ef4-2886-4e2c-a6eb-63d0b0b9cd55,1,0,696723be-7b4f-4321-956e-eff07ea9f5fa,696723be-7b4f-4321-956e-eff07ea9f5fa,1,0,616c27dc-5c59-4469-97a7-27e0752bd3a7,616c27dc-5c59-4469-97a7-27e0752bd3a7,1,0,f7323121-74bc-441c-a3e9-dd5cb4f0accd,f7323121-74bc-441c-a3e9-dd5cb4f0accd,1,0,fddfb2fd-4d58-4bc6-b196-720425a8c029,fddfb2fd-4d58-4bc6-b196-720425a8c029,1,0,ce075cf1-1778-4671-aa40-166e6c41adc8,ce075cf1-1778-4671-aa40-166e6c41adc8,1,0,eddb111f-7622-44a3-b7d8-97faec67b23c,eddb111f-7622-44a3-b7d8-97faec67b23c,1,0,84872892-842e-4d7d-a3cd-576c42343a7a,84872892-842e-4d7d-a3cd-576c42343a7a,1,0,78ad6047-473d-494b-a2ba-81e062b567e6,78ad6047-473d-494b-a2ba-81e062b567e6,1,0,911f8810-e96e-4f02-9377-47e49919f87e,911f8810-e96e-4f02-9377-47e49919f87e,1,0,cde46d6d-9f8a-45b6-98a7-9411030ccd72,cde46d6d-9f8a-45b6-98a7-9411030ccd72,1,0,ff1a4c30-03ff-4bdd-9df2-a2579aeb4157,ff1a4c30-03ff-4bdd-9df2-a2579aeb4157,1,0,224b9439-4b30-4b64-8edf-e7718ee90a7d,224b9439-4b30-4b64-8edf-e7718ee90a7d,1,0,74dc2374-daf1-4a8a-ba10-d3aced96af3b,74dc2374-daf1-4a8a-ba10-d3aced96af3b,1,0,15f1a3a8-5d42-486d-95f9-3d43ff1d5d56,15f1a3a8-5d42-486d-95f9-3d43ff1d5d56,1,0,e28e953f-93b3-4d4d-9ee4-c56df26037eb,e28e953f-93b3-4d4d-9ee4-c56df26037eb,1,0,578e0fd2-997c-437a-befc-33d128097a7e,578e0fd2-997c-437a-befc-33d128097a7e,1,0,14089231-31a8-4471-b85b-064836794ff3,14089231-31a8-4471-b85b-064836794ff3,1,0,014de276-fb2f-4deb-873f-475729be0f66,014de276-fb2f-4deb-873f-475729be0f66,1,0,40a60ff7-96ca-485b-a2d9-640a208a7de6,40a60ff7-96ca-485b-a2d9-640a208a7de6,1,0,03e6caa4-eaa2-43aa-bdd1-768f9cce7848,03e6caa4-eaa2-43aa-bdd1-768f9cce7848,1,0,cc815221-3d2a-4ea3-b1e6-6cb9fb410bd9,cc815221-3d2a-4ea3-b1e6-6cb9fb410bd9,1,0,b9ef62f6-9b1d-4d13-8016-73ed531d195a,b9ef62f6-9b1d-4d13-8016-73ed531d195a,1,0,742ed6d8-0f8d-4569-b30f-9ff3804cc3b7,742ed6d8-0f8d-4569-b30f-9ff3804cc3b7,1,0,229fe764-87f5-4d19-b042-c31fef5cddd6,229fe764-87f5-4d19-b042-c31fef5cddd6,1,0,74cd7504-d34f-42ff-90ff-7abcd54e8b6c,74cd7504-d34f-42ff-90ff-7abcd54e8b6c,1,0,e932800c-fd81-417d-a601-c774b888d66a,e932800c-fd81-417d-a601-c774b888d66a,1,0,a2335b6f-1dbb-4722-979b-8bed83aa8c94,a2335b6f-1dbb-4722-979b-8bed83aa8c94,1,0,211cf921-d880-4f74-b8ee-5312dea28613,211cf921-d880-4f74-b8ee-5312dea28613,1,0,2fd3a396-b8ae-409e-9373-02a039393a80,2fd3a396-b8ae-409e-9373-02a039393a80,1,0,61ae74be-64b2-4bf2-aa63-8fe3dc7ed47d,61ae74be-64b2-4bf2-aa63-8fe3dc7ed47d,1,0,346ef414-b20b-4095-86fe-18ca21c9887f,346ef414-b20b-4095-86fe-18ca21c9887f,1,0,c01ab97b-4964-4f7d-b749-56c0b94feb93,c01ab97b-4964-4f7d-b749-56c0b94feb93,1,0,0cc63813-cf16-4a99-b3bd-18a773091230,0cc63813-cf16-4a99-b3bd-18a773091230,1,0,4fc00971-c980-468a-9690-5cd520d12eb0,4fc00971-c980-468a-9690-5cd520d12eb0,1,0,85972c27-4f39-4982-9307-7877e87ef87b,85972c27-4f39-4982-9307-7877e87ef87b,1,0,96afdffb-7595-4c49-9e86-8296f50bd2f5,96afdffb-7595-4c49-9e86-8296f50bd2f5,1,0,823d5b5e-e9bf-40f0-9dcd-579bb53847bb,823d5b5e-e9bf-40f0-9dcd-579bb53847bb,1,0,e125d3e0-950f-42ee-8904-bd26091afa55,e125d3e0-950f-42ee-8904-bd26091afa55,1,0,2b4797a5-074a-4a01-b99f-1c5590cfde40,2b4797a5-074a-4a01-b99f-1c5590cfde40,1,0,718e53d2-24ec-40fb-9def-825441ada46c,718e53d2-24ec-40fb-9def-825441ada46c,1,0,4c0a7fd6-8f09-41d6-949f-65ce708c1256,4c0a7fd6-8f09-41d6-949f-65ce708c1256,1,0,792abc06-b52a-4691-ba92-96ed73ca702a,792abc06-b52a-4691-ba92-96ed73ca702a,1,0,148dbe44-86d1-4362-b9db-8ff68cd2b34d,148dbe44-86d1-4362-b9db-8ff68cd2b34d,1,0,1fbc893e-3000-4fac-88f5-c82251835d65,1fbc893e-3000-4fac-88f5-c82251835d65,1,0,05852816-63ec-4179-abca-66372bbfb04c,05852816-63ec-4179-abca-66372bbfb04c,1,0,0165f721-b011-4524-bfd5-81e35092f2be,0165f721-b011-4524-bfd5-81e35092f2be,1,0,e74925d4-1979-4600-8560-0932d26450ad,e74925d4-1979-4600-8560-0932d26450ad,1,0,aa108131-151d-4356-8a24-345e4ec74281,aa108131-151d-4356-8a24-345e4ec74281,1,0,284b77a8-d9f4-44c4-a2dc-91c1f8bd5808,284b77a8-d9f4-44c4-a2dc-91c1f8bd5808,1,0,e3251f1a-3c80-4c86-9960-270920bd512f,e3251f1a-3c80-4c86-9960-270920bd512f,1,0,3c3d5474-977b-4df9-88de-042e997bd10d,3c3d5474-977b-4df9-88de-042e997bd10d,1,0,4b88d172-5a44-4011-bb38-e94bf7a9c879,4b88d172-5a44-4011-bb38-e94bf7a9c879,1,0,3bced2d4-e3d7-4489-a26d-f84620b096f4,3bced2d4-e3d7-4489-a26d-f84620b096f4,1,0,6d015113-1e32-4f5e-aacd-8134d7307125,6d015113-1e32-4f5e-aacd-8134d7307125,1,0,58230238-d2f2-422e-90cb-de355996eb19,58230238-d2f2-422e-90cb-de355996eb19,1,0,3d907678-628d-4fb2-85c2-149839024c08,3d907678-628d-4fb2-85c2-149839024c08,1,0,71384d10-6acf-4139-b766-cb8b5796f1a7,71384d10-6acf-4139-b766-cb8b5796f1a7,1,0,a8f149d7-e9bc-4695-b4f4-88434e31aafb,a8f149d7-e9bc-4695-b4f4-88434e31aafb,1,0,10dcbcc6-7793-4da7-a9a5-e4f124209d3e,10dcbcc6-7793-4da7-a9a5-e4f124209d3e,1,0,11ba510f-cb57-43d0-9897-c49e10b67ccd,11ba510f-cb57-43d0-9897-c49e10b67ccd,1,0,9d92af67-c88d-4429-9e85-0b5bf04c4b79,9d92af67-c88d-4429-9e85-0b5bf04c4b79,1,0,b009bc99-ea12-46db-a7f8-cb3e285b20d0,b009bc99-ea12-46db-a7f8-cb3e285b20d0,1,0,43523bbb-c923-4a20-bcb5-50d30cc826ee,43523bbb-c923-4a20-bcb5-50d30cc826ee,1,0,c89d9aad-3364-45df-88b5-b23ae76edbba,c89d9aad-3364-45df-88b5-b23ae76edbba,1,0,9a2f2cd1-4c9f-460b-b3b7-64706a0164ab,9a2f2cd1-4c9f-460b-b3b7-64706a0164ab,1,0,7e4b9dce-e332-4d35-8b5f-d3f88918989d,7e4b9dce-e332-4d35-8b5f-d3f88918989d,1,0,96fe619a-b819-4f96-9788-e1f4ef57833a,96fe619a-b819-4f96-9788-e1f4ef57833a,1,0,94dff2da-f721-411a-9fc0-5d013b685dcc,94dff2da-f721-411a-9fc0-5d013b685dcc,1,0,9343fc5f-7b08-4be5-8cd5-dbed635b819d,9343fc5f-7b08-4be5-8cd5-dbed635b819d,1,0,99e87e66-1b07-451b-a476-f5213cbd7150,99e87e66-1b07-451b-a476-f5213cbd7150,1,0,c3317f75-f6ad-41f6-97f1-77074c3ff62a,c3317f75-f6ad-41f6-97f1-77074c3ff62a,1,0,8800dec9-84f8-4643-8742-1d76fe575f58,8800dec9-84f8-4643-8742-1d76fe575f58,1,0,62903794-3b41-4d21-b800-1c26dbeda3ce,62903794-3b41-4d21-b800-1c26dbeda3ce,1,0,9bda4a0b-e8a7-4acf-9f07-4033b3a84ebc,9bda4a0b-e8a7-4acf-9f07-4033b3a84ebc,1,0,4ba2e55e-29bc-4fbe-83e8-8bfa36abfdab,4ba2e55e-29bc-4fbe-83e8-8bfa36abfdab,1,0,93de88de-0069-4aa8-96b2-d5709e4def2f,93de88de-0069-4aa8-96b2-d5709e4def2f,1,0,9f94fadf-ac9d-4e57-9fe4-41ce8cfbec6a,9f94fadf-ac9d-4e57-9fe4-41ce8cfbec6a,1,0,12d4ffc8-592e-42a7-b8c6-20bd58f6da90,12d4ffc8-592e-42a7-b8c6-20bd58f6da90,1,0,3a8d9010-8785-4d8d-b908-b821d7d681c9,3a8d9010-8785-4d8d-b908-b821d7d681c9,1,0,2568a935-ea49-4b99-aa9c-de27de6a0e81,2568a935-ea49-4b99-aa9c-de27de6a0e81,1,0,de2bdd4f-93f2-4341-86d6-7082fc286a5c,de2bdd4f-93f2-4341-86d6-7082fc286a5c,1,0,ba96ec0e-931e-45be-a782-e68ba4fedddb,ba96ec0e-931e-45be-a782-e68ba4fedddb,1,0,9af5882f-3a42-4fae-83df-6aa8de577112,9af5882f-3a42-4fae-83df-6aa8de577112,1,0,79bc5e39-3017-48bf-8e42-fa34e8b581ef,79bc5e39-3017-48bf-8e42-fa34e8b581ef,1,0,fe6e207f-d306-4470-8441-ffd3f3710d31,fe6e207f-d306-4470-8441-ffd3f3710d31,1,0,7451af80-7387-4e8d-a3da-2ae0540c3fd4,7451af80-7387-4e8d-a3da-2ae0540c3fd4,1,0,1c1e01f2-b2b3-480d-ae51-2db27b82dedd,1c1e01f2-b2b3-480d-ae51-2db27b82dedd,1,0,df459525-4e4d-4819-b996-5a6379b22a88,df459525-4e4d-4819-b996-5a6379b22a88,1,0,ed1d69f4-b09f-430a-bb2e-a23fe4dedf6b,ed1d69f4-b09f-430a-bb2e-a23fe4dedf6b,1,0,e67b4a32-4bac-450e-be6d-88c262383f31,e67b4a32-4bac-450e-be6d-88c262383f31,1,0,8b83bb54-4c23-4bd8-bd00-374a7a101cfa,8b83bb54-4c23-4bd8-bd00-374a7a101cfa,1,0,6c4c3eca-8b02-451b-af52-93073c3da146,6c4c3eca-8b02-451b-af52-93073c3da146,1,0,095c281c-3903-465d-baea-af1e6abf8019,095c281c-3903-465d-baea-af1e6abf8019,1,0,440d115d-a769-427e-891a-88d65fba2057,440d115d-a769-427e-891a-88d65fba2057,1,0,f7932210-027e-4fad-b7f7-3530789ce803,f7932210-027e-4fad-b7f7-3530789ce803,1,0,7bbfd95e-39a1-485b-930f-c9210c18dcd0,7bbfd95e-39a1-485b-930f-c9210c18dcd0,1,0,4975d3d6-b5a2-41c6-973b-6817013a388d,4975d3d6-b5a2-41c6-973b-6817013a388d,1,0,18ebc799-9724-4ffb-855e-b09a0723869e,18ebc799-9724-4ffb-855e-b09a0723869e,1,0,a06b8ef5-83e6-4fc6-91e1-256004134d69,a06b8ef5-83e6-4fc6-91e1-256004134d69,1,0,1d6a68ec-917f-4c3b-b970-797a6921cbc9,1d6a68ec-917f-4c3b-b970-797a6921cbc9,1,0,ae29eb40-5c8f-4ab4-8556-f98d45e8effe,ae29eb40-5c8f-4ab4-8556-f98d45e8effe,1,0,5b663988-3599-46dc-8d59-4c82ceac537c,5b663988-3599-46dc-8d59-4c82ceac537c,1,0,0f5f136c-688b-491e-a72b-3d9c2e609f0e,0f5f136c-688b-491e-a72b-3d9c2e609f0e,1,0,5573b405-6ac4-4632-b8d6-5d1cbdb63b97,5573b405-6ac4-4632-b8d6-5d1cbdb63b97,1,0,679cc0df-df5c-4c33-8c64-c0b6cee39116,679cc0df-df5c-4c33-8c64-c0b6cee39116,1,0,b156752b-f25c-4f35-9474-8ac3636597f5,b156752b-f25c-4f35-9474-8ac3636597f5,1,0,b67b872e-236a-4ea7-9838-0827234867b4,b67b872e-236a-4ea7-9838-0827234867b4,1,0,1e5ced23-48a7-4f3c-aa3b-78399a2b9e2b,1e5ced23-48a7-4f3c-aa3b-78399a2b9e2b,1,0,ce422d4f-1221-4ebf-a801-975a3220a226,ce422d4f-1221-4ebf-a801-975a3220a226,1,0,8735949b-f259-48b9-97e9-a81dfc7dcc8d,8735949b-f259-48b9-97e9-a81dfc7dcc8d,1,0,b8810612-dc7a-4a45-a83c-163a8669b578,b8810612-dc7a-4a45-a83c-163a8669b578,1,0,00e4dc17-b984-4f45-8b42-2e6a7a5dbced,00e4dc17-b984-4f45-8b42-2e6a7a5dbced,1,0,349c3dc3-0729-41f3-983f-3b13170c6509,349c3dc3-0729-41f3-983f-3b13170c6509,1,0,8281df26-4bde-47ba-926e-f22a8042bf1f,8281df26-4bde-47ba-926e-f22a8042bf1f,1,0,7278fb66-1d48-4c1d-bd15-425f78ad0c32,7278fb66-1d48-4c1d-bd15-425f78ad0c32,1,0,6893007f-8354-4b3b-b205-7c7d385cbde0,6893007f-8354-4b3b-b205-7c7d385cbde0,1,0,d74365a3-b434-41d0-84a7-543c336b5880,d74365a3-b434-41d0-84a7-543c336b5880,1,0,3d42502a-5705-49d7-b4ed-29edbd6306bc,3d42502a-5705-49d7-b4ed-29edbd6306bc,1,0,221e24e6-b31c-45b6-8835-2ad08d595c5f,221e24e6-b31c-45b6-8835-2ad08d595c5f,1,0,fd0fa6c9-1f42-4907-a266-fe7b6847e58a,fd0fa6c9-1f42-4907-a266-fe7b6847e58a,1,0,2e8cbcd7-f5b5-471e-863a-e09b4bc8e163,2e8cbcd7-f5b5-471e-863a-e09b4bc8e163,1,0,55956063-b227-4c74-8d9c-4a62b4f0dbc7,55956063-b227-4c74-8d9c-4a62b4f0dbc7,1,0,b6871b83-7269-43a9-b9a6-a195ff93365d,b6871b83-7269-43a9-b9a6-a195ff93365d,1,0,7dcd627c-16f6-41f9-b474-590ad1c7d2ed,7dcd627c-16f6-41f9-b474-590ad1c7d2ed,1,0,0cf89f30-e702-4c9e-8af4-888634463b99,0cf89f30-e702-4c9e-8af4-888634463b99,1,0,77f890ac-3c9c-4043-a5b7-12158772bcf5,77f890ac-3c9c-4043-a5b7-12158772bcf5,1,0,2bc734f9-8c0d-473a-b1c3-340395069501,2bc734f9-8c0d-473a-b1c3-340395069501,1,0,316c3933-21dd-4e8a-9450-0900e85ef7e2,316c3933-21dd-4e8a-9450-0900e85ef7e2,1,0,994fe78b-9f61-4aaf-9355-fafcae6b816d,994fe78b-9f61-4aaf-9355-fafcae6b816d,1,0,8448f07b-751b-4670-b44c-3564e81e5cdc,8448f07b-751b-4670-b44c-3564e81e5cdc,1,0,17aadd5f-cda2-4785-a07f-3ab4b04434a6,17aadd5f-cda2-4785-a07f-3ab4b04434a6,1,0,71bc35e6-0fec-4e54-af2d-23d1357d1c3b,71bc35e6-0fec-4e54-af2d-23d1357d1c3b,1,0,1832336e-32f6-42c4-9087-8614ead52bb3,1832336e-32f6-42c4-9087-8614ead52bb3,1,0,ff9f7b5c-70f4-4eed-8216-64448e7da76f,ff9f7b5c-70f4-4eed-8216-64448e7da76f,1,0,44ac2869-990d-4cac-a14b-c1a28854341e,44ac2869-990d-4cac-a14b-c1a28854341e,1,0,d5df31c3-89f9-469c-80a9-fb4706d30bc4,d5df31c3-89f9-469c-80a9-fb4706d30bc4,1,0,e73a6a9d-8ddd-4531-9f17-745117d9da9b,e73a6a9d-8ddd-4531-9f17-745117d9da9b,1,0,9dd4e17c-d10b-435e-8665-08997edc3e7e,9dd4e17c-d10b-435e-8665-08997edc3e7e,1,0,cafd44e1-8509-4550-8329-ff8cab0c31ae,cafd44e1-8509-4550-8329-ff8cab0c31ae,1,0,ee0412d3-58e7-4715-8774-d49778e1ef73,ee0412d3-58e7-4715-8774-d49778e1ef73,1,0,ea31df21-1402-417a-9788-b17a7116e842,ea31df21-1402-417a-9788-b17a7116e842,1,0,7a93efb9-62bb-437a-8095-b26a2c8ce8ed,7a93efb9-62bb-437a-8095-b26a2c8ce8ed,1,0,e964753f-7f4c-4f9f-bd17-cdac317c1d35,e964753f-7f4c-4f9f-bd17-cdac317c1d35,1,0,20c2aba0-e2b2-4e4f-9d48-1515c0ae7b4d,20c2aba0-e2b2-4e4f-9d48-1515c0ae7b4d,1,0,43c22498-3fd6-4038-a291-05f0db9ab66a,43c22498-3fd6-4038-a291-05f0db9ab66a,1,0,4ffc9d16-c450-4ecb-b8f6-9ec6fe37fc75,4ffc9d16-c450-4ecb-b8f6-9ec6fe37fc75,1,0,ee6e5e56-5848-46b6-89bf-b9345a57d94c,ee6e5e56-5848-46b6-89bf-b9345a57d94c,1,0,8817c872-bdee-4577-bcc3-4046edc72803,8817c872-bdee-4577-bcc3-4046edc72803,1,0,5b88c214-4e4e-45c2-b8c5-14eb852e9900,5b88c214-4e4e-45c2-b8c5-14eb852e9900,1,0,105cd740-1f60-45e1-871c-adeecd291b0d,105cd740-1f60-45e1-871c-adeecd291b0d,1,0,95aec7d2-179b-4ea3-a3df-3d737b713564,95aec7d2-179b-4ea3-a3df-3d737b713564,1,0,4bd1cae4-d5b5-444e-9cf5-67a969714293,4bd1cae4-d5b5-444e-9cf5-67a969714293,1,0,b1a330d7-9b88-44e9-aba6-41ce5e5e669c,b1a330d7-9b88-44e9-aba6-41ce5e5e669c,1,0,f279a625-b88f-43b4-bce9-de1186fe7d7e,f279a625-b88f-43b4-bce9-de1186fe7d7e,1,0,99fc224a-2a61-441a-85e9-d69df6aa8b5e,99fc224a-2a61-441a-85e9-d69df6aa8b5e,1,0,a528c26f-3ceb-4ae4-8420-edfbdea6e1ac,a528c26f-3ceb-4ae4-8420-edfbdea6e1ac,1,0,d009782b-d73e-42d1-9979-2cbaf20ee98e,d009782b-d73e-42d1-9979-2cbaf20ee98e,1,0,1ef6282c-ae81-4d76-8e3e-99fec58fc7bd,1ef6282c-ae81-4d76-8e3e-99fec58fc7bd,1,0,88d8edf7-654f-4627-b68d-c7e929726da6,88d8edf7-654f-4627-b68d-c7e929726da6,1,0,483720db-6c9e-4179-b5c7-56159c9b6073,483720db-6c9e-4179-b5c7-56159c9b6073,1,0,1725c619-9c4a-40ac-9044-00fee71945a4,1725c619-9c4a-40ac-9044-00fee71945a4,1,0,45a85e25-7c33-4ff5-87a0-2a0b4cda8130,45a85e25-7c33-4ff5-87a0-2a0b4cda8130,1,0,e95b126d-797d-4071-b7b4-b14aaf595f2d,e95b126d-797d-4071-b7b4-b14aaf595f2d,1,0,9241ea3c-633f-4469-9e70-c5a20e464da8,9241ea3c-633f-4469-9e70-c5a20e464da8,1,0,bbadbe1b-cb33-4cc5-84c8-a4fdfc8a2247,bbadbe1b-cb33-4cc5-84c8-a4fdfc8a2247,1,0,961ae0fb-7f7b-414d-8fbf-32b893b41085,961ae0fb-7f7b-414d-8fbf-32b893b41085,1,0,10adf8c8-6f5f-477f-b244-4452b774b766,10adf8c8-6f5f-477f-b244-4452b774b766,1,0,ac9dcb8c-d4f5-4f0d-affb-e4187eafdf14,ac9dcb8c-d4f5-4f0d-affb-e4187eafdf14,1,0,04ec5e44-8469-4e9c-8021-83d258f2ec54,04ec5e44-8469-4e9c-8021-83d258f2ec54,1,0,cff36ede-0bd1-424b-8c75-b9695133f32e,cff36ede-0bd1-424b-8c75-b9695133f32e,1,0,9d872d99-eac7-43ee-8ce2-c9d31a76bd75,9d872d99-eac7-43ee-8ce2-c9d31a76bd75,1,0,77e5bd01-35f3-4072-bc7a-8730e6dcbab3,77e5bd01-35f3-4072-bc7a-8730e6dcbab3,1,0,58b33683-1916-4aef-9b98-5569ef7782ed,58b33683-1916-4aef-9b98-5569ef7782ed,1,0,d3e1f622-f438-4cad-94ae-0272f51610f7,d3e1f622-f438-4cad-94ae-0272f51610f7,1,0,8569cd73-d40d-4d92-83e0-8ece0c03a86a,8569cd73-d40d-4d92-83e0-8ece0c03a86a,1,0,9ebe2809-be6b-4c91-9443-b237fb7ad43c,9ebe2809-be6b-4c91-9443-b237fb7ad43c,1,0,bf29c091-de15-4cd4-be0e-a9785f97d444,bf29c091-de15-4cd4-be0e-a9785f97d444,1,0,6a675752-fd31-46a5-8a62-2a1ede437c68,6a675752-fd31-46a5-8a62-2a1ede437c68,1,0,060b2bb4-ca03-4da9-930f-7f91f6299a35,060b2bb4-ca03-4da9-930f-7f91f6299a35,1,0,394b1a1c-a7ae-41b7-a346-4bac99fa567d,394b1a1c-a7ae-41b7-a346-4bac99fa567d,1,0,9a5fa511-59e8-4a1b-a101-f276f0b7b261,9a5fa511-59e8-4a1b-a101-f276f0b7b261,1,0,ccfe4e36-80b6-419f-8bb3-c1046203d023,ccfe4e36-80b6-419f-8bb3-c1046203d023,1,0,94b2e060-53b7-4b40-af05-30bea3520330,94b2e060-53b7-4b40-af05-30bea3520330,1,0,0f634f7e-7d6b-43e4-8e5e-a31ed05898ea,0f634f7e-7d6b-43e4-8e5e-a31ed05898ea,1,0,41b0dabd-85a3-4819-84dd-371eaf4f996e,41b0dabd-85a3-4819-84dd-371eaf4f996e,1,0,86a5ba4d-0681-4ddc-a505-0f537528e1a3,86a5ba4d-0681-4ddc-a505-0f537528e1a3,1,0,12d936f5-932b-4561-b934-c8444808a450,12d936f5-932b-4561-b934-c8444808a450,1,0,2ccb06ca-9bb7-4b74-9a96-c109bb117984,2ccb06ca-9bb7-4b74-9a96-c109bb117984,1,0,ac1a661d-db18-4576-80a9-a19d4140c05e,ac1a661d-db18-4576-80a9-a19d4140c05e,1,0,acd89f6c-a25f-47b9-ac21-036bfafcc0fc,acd89f6c-a25f-47b9-ac21-036bfafcc0fc,1,0,c3ffeb09-121b-4d77-9c15-def4648b4f3c,c3ffeb09-121b-4d77-9c15-def4648b4f3c,1,0,c2de0724-04c1-4adb-b62a-b7ba727dbe67,c2de0724-04c1-4adb-b62a-b7ba727dbe67,1,0,4ae26777-69ff-4a55-942b-0bad8ab7a70a,4ae26777-69ff-4a55-942b-0bad8ab7a70a,1,0,a0d8fb0a-0e90-4140-8687-e249b153dc66,a0d8fb0a-0e90-4140-8687-e249b153dc66,1,0,917c6f60-2a07-4587-9496-d393aff93953,917c6f60-2a07-4587-9496-d393aff93953,1,0,4bac50a2-762a-44e6-b8c5-3b09ef1a3f5e,4bac50a2-762a-44e6-b8c5-3b09ef1a3f5e,1,0,9fe72d73-4c95-47e0-bf92-dcb714d747c6,9fe72d73-4c95-47e0-bf92-dcb714d747c6,1,0,fe00e64f-2fa9-44a7-9bd7-854ebb6c0185,fe00e64f-2fa9-44a7-9bd7-854ebb6c0185,1,0,4d84bb11-e06e-4ed9-915b-76ee0e385a8b,4d84bb11-e06e-4ed9-915b-76ee0e385a8b,1,0,2b94076d-39ee-45ad-9ba5-435115cf5d4f,2b94076d-39ee-45ad-9ba5-435115cf5d4f,1,0,72ace16c-e90a-4d05-bc23-4351d4c87683,72ace16c-e90a-4d05-bc23-4351d4c87683,1,0,bd86e378-84bb-486a-be7b-319a3fe3b70b,bd86e378-84bb-486a-be7b-319a3fe3b70b,1,0,ef3bc279-6721-4949-8dc0-f96141f7f05c,ef3bc279-6721-4949-8dc0-f96141f7f05c,1,0,f81c7e21-48ad-4b64-975d-e62d34c7235a,f81c7e21-48ad-4b64-975d-e62d34c7235a,1,0,d0523c14-585e-45d3-9735-891235631004,d0523c14-585e-45d3-9735-891235631004,1,0,b6f8bc3e-f0cd-43ef-b060-d701cd446197,b6f8bc3e-f0cd-43ef-b060-d701cd446197,1,0,4f10e5f9-6cfd-4fa9-9c72-d19a484a796c,4f10e5f9-6cfd-4fa9-9c72-d19a484a796c,1,0,b94e805f-e1ab-4870-b855-98aa401864b2,b94e805f-e1ab-4870-b855-98aa401864b2,1,0,ff8eedeb-fc3e-4bee-852b-6da6d59ff38c,ff8eedeb-fc3e-4bee-852b-6da6d59ff38c,1,0,a98bd18f-ccda-41a2-a1b2-8b37cc1f6c36,a98bd18f-ccda-41a2-a1b2-8b37cc1f6c36,1,0,62f9fe19-3d64-4506-a0bc-dbfe47b4df64,62f9fe19-3d64-4506-a0bc-dbfe47b4df64,1,0,45af8f5d-d505-466b-a798-19f2219a180c,45af8f5d-d505-466b-a798-19f2219a180c,1,0,8a8229bc-f70a-4434-bacc-8a81fc58154b,8a8229bc-f70a-4434-bacc-8a81fc58154b,1,0,6324ad14-82ca-467b-b6b7-8d5f6049ca65,6324ad14-82ca-467b-b6b7-8d5f6049ca65,1,0,273446f0-f28b-4ce2-874c-3c6a57299b71,273446f0-f28b-4ce2-874c-3c6a57299b71,1,0,eb2f7449-ee42-43ec-b59c-3e07a6e3c139,eb2f7449-ee42-43ec-b59c-3e07a6e3c139,1,0,f8a7913a-2c64-47e1-8ae9-622fc6e9477e,f8a7913a-2c64-47e1-8ae9-622fc6e9477e,1,0,9b46a2b4-223d-4527-a94e-37ecd4fe72d7,9b46a2b4-223d-4527-a94e-37ecd4fe72d7,1,0,7a4e17bf-3649-4982-a9c6-5982390f1f1d,7a4e17bf-3649-4982-a9c6-5982390f1f1d,1,0,722be6e0-2698-431b-9206-777a36e6742f,722be6e0-2698-431b-9206-777a36e6742f,1,0,75bb0122-26bd-40be-8de8-7a57680c85ae,75bb0122-26bd-40be-8de8-7a57680c85ae,1,0,5e22429f-9ec0-4943-bf80-1becc4b8e5cb,5e22429f-9ec0-4943-bf80-1becc4b8e5cb,1,0,0153e60e-daca-48ac-b1c6-adecc89f579e,0153e60e-daca-48ac-b1c6-adecc89f579e,1,0,1ed4cf25-19f0-49f5-96a0-0ffe13adfe35,1ed4cf25-19f0-49f5-96a0-0ffe13adfe35,1,0,a896bc34-30a6-48b6-acfc-786c24c186bd,a896bc34-30a6-48b6-acfc-786c24c186bd,1,0,3867f4cb-bf54-42fb-8ea6-ca51d7cd6c91,3867f4cb-bf54-42fb-8ea6-ca51d7cd6c91,1,0,da8ae00a-7207-4ceb-b739-9114888c5b27,da8ae00a-7207-4ceb-b739-9114888c5b27,1,0,a6be80f7-d6aa-4371-a180-3d355080d849,a6be80f7-d6aa-4371-a180-3d355080d849,1,0,b37722c3-e29f-4a40-b4eb-0317919fc7a5,b37722c3-e29f-4a40-b4eb-0317919fc7a5,1,0,b1b1cd90-094d-428b-a6bc-156521c1c54d,b1b1cd90-094d-428b-a6bc-156521c1c54d,1,0,4f79ef7c-79be-4a69-acc0-bd591c712d03,4f79ef7c-79be-4a69-acc0-bd591c712d03,1,0,a0dd2129-d3a1-4bca-b555-72b065be1c13,a0dd2129-d3a1-4bca-b555-72b065be1c13,1,0,dc5e8229-e301-477c-846e-2e7078e3ee5f,dc5e8229-e301-477c-846e-2e7078e3ee5f,1,0,24836e44-8fdd-44bd-91d8-4ddab2caf485,24836e44-8fdd-44bd-91d8-4ddab2caf485,1,0,3727bcfe-4d75-4270-86e7-4a66ab14866c,3727bcfe-4d75-4270-86e7-4a66ab14866c,1,0,870a4708-0b5a-4fa3-9978-d94b161d289a,870a4708-0b5a-4fa3-9978-d94b161d289a,1,0,30e9f89d-7b94-488e-9963-886c271b1af7,30e9f89d-7b94-488e-9963-886c271b1af7,1,0,91af7a52-0825-4af5-94df-cc501e0123cd,91af7a52-0825-4af5-94df-cc501e0123cd,1,0,1c2cc78a-2ae6-4996-a743-7b55aecbe84c,1c2cc78a-2ae6-4996-a743-7b55aecbe84c,1,0,9292bf81-5668-4d52-a4ec-a93bc4b0ad3b,9292bf81-5668-4d52-a4ec-a93bc4b0ad3b,1,0,9693cc78-852e-445b-a7d2-f1689fa9eeec,9693cc78-852e-445b-a7d2-f1689fa9eeec,1,0,eb33e555-db41-462a-a45d-c7e0945cece8,eb33e555-db41-462a-a45d-c7e0945cece8,1,0,9cfd517c-1008-483a-9f65-7d15feb2cefc,9cfd517c-1008-483a-9f65-7d15feb2cefc,1,0,d66adc5e-25a3-472e-b0a4-5f22f88d7a0f,d66adc5e-25a3-472e-b0a4-5f22f88d7a0f,1,0,ae48d48f-cd39-4821-a4b7-9394b2a77ef6,ae48d48f-cd39-4821-a4b7-9394b2a77ef6,1,0,f34d3a69-533e-49df-b91d-f7f7f49c5fb1,f34d3a69-533e-49df-b91d-f7f7f49c5fb1,1,0,1d76f613-f4f6-4772-8c16-d97b3104a553,1d76f613-f4f6-4772-8c16-d97b3104a553,1,0,3e58d607-b906-449f-b044-9c130a487b86,3e58d607-b906-449f-b044-9c130a487b86,1,0,7a911212-7fde-4ea8-a1fa-229116b60895,7a911212-7fde-4ea8-a1fa-229116b60895,1,0,f4580043-5bc2-4295-8523-909302009b44,f4580043-5bc2-4295-8523-909302009b44,1,0,dc8af632-a5a4-4270-ba5f-2d3ba506f7e3,dc8af632-a5a4-4270-ba5f-2d3ba506f7e3,1,0,81936ac2-32fe-4e14-897b-0aba92b90c05,81936ac2-32fe-4e14-897b-0aba92b90c05,1,0,9f88e355-3f8f-4fcd-b45f-39c3d45490f5,9f88e355-3f8f-4fcd-b45f-39c3d45490f5,1,0,2e233e3c-687c-4516-87c6-5d6c5f9f04a2,2e233e3c-687c-4516-87c6-5d6c5f9f04a2,1,0,2afdcde7-46ef-4624-8b84-c6381ff2f3a4,2afdcde7-46ef-4624-8b84-c6381ff2f3a4,1,0,2d279d24-1953-4a2f-8206-77481d2fd718,2d279d24-1953-4a2f-8206-77481d2fd718,1,0,aa6abffe-1b09-48f9-9aee-4f234db6b2a2,aa6abffe-1b09-48f9-9aee-4f234db6b2a2,1,0,0a920200-77d0-42ea-abf6-0d40d63289b0,0a920200-77d0-42ea-abf6-0d40d63289b0,1,0,c850bafc-4073-44ef-b148-194f87c46f0e,c850bafc-4073-44ef-b148-194f87c46f0e,1,0,6d1dd726-815d-476e-b668-95cff4182e54,6d1dd726-815d-476e-b668-95cff4182e54,1,0,12f4a0ed-4798-4467-8834-de3eb385e22d,12f4a0ed-4798-4467-8834-de3eb385e22d,1,0,5710809e-4c41-42ab-952f-f7778fe9be0f,5710809e-4c41-42ab-952f-f7778fe9be0f,1,0,0811f6c2-6bb3-43b8-9944-910adc4c6f23,0811f6c2-6bb3-43b8-9944-910adc4c6f23,1,0,c1646df4-9fce-44f0-9cc3-a5dab0bbef2e,c1646df4-9fce-44f0-9cc3-a5dab0bbef2e,1,0,c86b02ab-3532-4f4c-b993-e237ed0d4d12,c86b02ab-3532-4f4c-b993-e237ed0d4d12,1,0,ac028c56-b2a8-4a9b-a325-554c636f838e,ac028c56-b2a8-4a9b-a325-554c636f838e,1,0,0ed85f4c-c002-49b6-99b9-0c3c4b7f940e,0ed85f4c-c002-49b6-99b9-0c3c4b7f940e,1,0,f99e98ac-cd94-4989-8c02-ef8b323c6815,f99e98ac-cd94-4989-8c02-ef8b323c6815,1,0,e2562347-4549-4111-862e-86c20a6daade,e2562347-4549-4111-862e-86c20a6daade,1,0,b270fc64-15c6-41ed-ad09-44c833ca7c41,b270fc64-15c6-41ed-ad09-44c833ca7c41,1,0,4c3312fd-5613-4e9b-ae7c-572fa1887ded,4c3312fd-5613-4e9b-ae7c-572fa1887ded,1,0,6c8c9618-287a-41ab-890c-60250925ad52,6c8c9618-287a-41ab-890c-60250925ad52,1,0,55b9650e-098b-4d44-9fb5-d525b46f014b,55b9650e-098b-4d44-9fb5-d525b46f014b,1,0,5b7b32ec-3d0e-42e9-bd13-5d2b8cc1942d,5b7b32ec-3d0e-42e9-bd13-5d2b8cc1942d,1,0,bc55dc06-a769-40be-9c99-0794bdd2dbea,bc55dc06-a769-40be-9c99-0794bdd2dbea,1,0,7861e179-96d2-422f-a7c2-b38b59074956,7861e179-96d2-422f-a7c2-b38b59074956,1,0,0b2416bc-f322-45b3-8c3f-2c8a206c55a1,0b2416bc-f322-45b3-8c3f-2c8a206c55a1,1,0,3797b4c6-e336-4cbe-8d0b-0902e1247b42,3797b4c6-e336-4cbe-8d0b-0902e1247b42,1,0,67ebc493-d29a-4614-890a-feb8b5bd884b,67ebc493-d29a-4614-890a-feb8b5bd884b,1,0,dc79e5e2-37d1-4f19-9500-15c1d9be10eb,dc79e5e2-37d1-4f19-9500-15c1d9be10eb,1,0,dba6cb38-79c6-4060-87c5-a993548f36c4,dba6cb38-79c6-4060-87c5-a993548f36c4,1,0,6b44227a-e226-4bcb-8638-06b49f830669,6b44227a-e226-4bcb-8638-06b49f830669,1,0,f2406400-87e9-4df2-bcd3-8f1e3ad62088,f2406400-87e9-4df2-bcd3-8f1e3ad62088,1,0,ecaacedb-bf2d-4736-a9e1-fa89cda85ee6,ecaacedb-bf2d-4736-a9e1-fa89cda85ee6,1,0,a5623e87-3102-4521-b4ab-c41bf2403a1a,a5623e87-3102-4521-b4ab-c41bf2403a1a,1,0,599b1692-5f4e-42ef-ae1a-822ff527a415,599b1692-5f4e-42ef-ae1a-822ff527a415,1,0,ee9abe8a-b3a2-48a9-9157-ea537e83b7e7,ee9abe8a-b3a2-48a9-9157-ea537e83b7e7,1,0,4bb7372a-87a9-426e-b09f-fc0110455b10,4bb7372a-87a9-426e-b09f-fc0110455b10,1,0,ac853a0f-c185-4cdb-9f09-c921770937b5,ac853a0f-c185-4cdb-9f09-c921770937b5,1,0,920a7940-4d12-476d-a909-2231787839a9,920a7940-4d12-476d-a909-2231787839a9,1,0,168fce48-2413-45fc-ad21-9b465121d81b,168fce48-2413-45fc-ad21-9b465121d81b,1,0,d65c8992-aabc-4b67-9893-01862231ebe1,d65c8992-aabc-4b67-9893-01862231ebe1,1,0,23f70675-6a05-4b50-ad68-c55ddc93e857,23f70675-6a05-4b50-ad68-c55ddc93e857,1,0,b3aeeb3c-622d-4e0c-8c13-199f0e431a7d,b3aeeb3c-622d-4e0c-8c13-199f0e431a7d,1,0,ad14c4d1-bc11-44b6-a32c-c00fb89a9ea5,ad14c4d1-bc11-44b6-a32c-c00fb89a9ea5,1,0,32eb2a75-ff35-4795-bf0c-12b1328441ee,32eb2a75-ff35-4795-bf0c-12b1328441ee,1,0,8e877990-a64c-4c45-91f1-007d47618cc7,8e877990-a64c-4c45-91f1-007d47618cc7,1,0,73c6640e-2fe6-4132-9237-d6f28cbacc1c,73c6640e-2fe6-4132-9237-d6f28cbacc1c,1,0,69489064-c131-4618-b31f-e6964d593f4a,69489064-c131-4618-b31f-e6964d593f4a,1,0,1731708f-53cb-4b00-b90e-f581b4baa845,1731708f-53cb-4b00-b90e-f581b4baa845,1,0,d4b0feca-c00a-4d48-9f23-d92277ea6483,d4b0feca-c00a-4d48-9f23-d92277ea6483,1,0,00b2a0b3-6af8-4ea4-aa38-d1e078d5cbff,00b2a0b3-6af8-4ea4-aa38-d1e078d5cbff,1,0,20f7fdd2-30f6-4a52-a63b-7d2c326c0e83,20f7fdd2-30f6-4a52-a63b-7d2c326c0e83,1,0,23cb5bc2-9638-4d1c-b4bc-d5297e271570,23cb5bc2-9638-4d1c-b4bc-d5297e271570,1,0,6e547ccb-6d5a-4f7c-aaf0-568c22d2c276,6e547ccb-6d5a-4f7c-aaf0-568c22d2c276,1,0,04b7389d-697d-4b0d-a239-ac8c674cc46f,04b7389d-697d-4b0d-a239-ac8c674cc46f,1,0,a1cf5173-2e86-4ed7-9a0b-1bd5e578326a,a1cf5173-2e86-4ed7-9a0b-1bd5e578326a,1,0,864cad61-8280-415d-8fe1-bcb39d56670a,864cad61-8280-415d-8fe1-bcb39d56670a,1,0,b106bd29-5dc7-44d7-94d0-00f61499392e,b106bd29-5dc7-44d7-94d0-00f61499392e,1,0,a4febff8-0566-4977-bf55-1d574568fe9f,a4febff8-0566-4977-bf55-1d574568fe9f,1,0,5199cc65-bed1-40b9-96fe-cf6d855a8b91,5199cc65-bed1-40b9-96fe-cf6d855a8b91,1,0,f518add9-5c26-4dac-ab2e-b30fe3fbd347,f518add9-5c26-4dac-ab2e-b30fe3fbd347,1,0,23f53317-7aa8-4816-8a69-3d39d5e76da0,23f53317-7aa8-4816-8a69-3d39d5e76da0,1,0,9ade5155-fa6d-4999-b019-a5e7e235a158,9ade5155-fa6d-4999-b019-a5e7e235a158,1,0,8b302c5e-b255-4cb5-94d9-0dfef4250097,8b302c5e-b255-4cb5-94d9-0dfef4250097,1,0,08eb74b6-1e1c-4004-a0f8-b6f1fdfc68ef,08eb74b6-1e1c-4004-a0f8-b6f1fdfc68ef,1,0,49d713b8-6a61-4bd1-9650-0de1869967d2,49d713b8-6a61-4bd1-9650-0de1869967d2,1,0,4738ffd0-3c3b-4e5f-8773-0c9a80efdfbf,4738ffd0-3c3b-4e5f-8773-0c9a80efdfbf,1,0,bd0e4aeb-19f9-48fc-b838-38d785004360,bd0e4aeb-19f9-48fc-b838-38d785004360,1,0,3d1bae2a-4dfd-48e5-bfe9-b7e30c8475f6,3d1bae2a-4dfd-48e5-bfe9-b7e30c8475f6,1,0,0f2ec7ac-6d3f-4fcf-af3d-b0bfaa187a4b,0f2ec7ac-6d3f-4fcf-af3d-b0bfaa187a4b,1,0,6d351276-2c04-4198-a3e4-865881c12f5c,6d351276-2c04-4198-a3e4-865881c12f5c,1,0,73b1d2e2-0eeb-45dc-8ca3-3bda594d6823,73b1d2e2-0eeb-45dc-8ca3-3bda594d6823,1,0,5c4abd61-2f29-499e-a2ca-d133e9eeeaea,5c4abd61-2f29-499e-a2ca-d133e9eeeaea,1,0,0ddeed48-b98a-47c3-84a2-2eac065be06c,0ddeed48-b98a-47c3-84a2-2eac065be06c,1,0,7987fe2c-d7cc-4fd2-ac4e-610bfb1ab6d2,7987fe2c-d7cc-4fd2-ac4e-610bfb1ab6d2,1,0,fc18d95e-a51d-45c0-83b0-09aeb2b5b03a,fc18d95e-a51d-45c0-83b0-09aeb2b5b03a,1,0,61b947a5-edca-43ca-82c4-5a7b529d8f82,61b947a5-edca-43ca-82c4-5a7b529d8f82,1,0,59eb6a7a-1d96-4985-8d8e-575162759415,59eb6a7a-1d96-4985-8d8e-575162759415,1,0,68564573-ed49-4519-a8b3-997865fe70a6,68564573-ed49-4519-a8b3-997865fe70a6,1,0,6c789969-d066-489d-ad88-92e2a5a6ec69,6c789969-d066-489d-ad88-92e2a5a6ec69,1,0,2a07d696-75d6-4a12-a310-30d6598b4a4c,2a07d696-75d6-4a12-a310-30d6598b4a4c,1,0,dde88f56-417c-4559-a893-85dc91e7e623,dde88f56-417c-4559-a893-85dc91e7e623,1,0,963eedab-6976-4a98-b9ad-b81f89239661,963eedab-6976-4a98-b9ad-b81f89239661,1,0,3370d43e-8e97-4411-8123-2bb2bcf60a75,3370d43e-8e97-4411-8123-2bb2bcf60a75,1,0,d9d377c9-406f-4bc9-8076-1f049348b816,d9d377c9-406f-4bc9-8076-1f049348b816,1,0,dcfcb108-3761-43d9-ad2a-29633bd1ae47,dcfcb108-3761-43d9-ad2a-29633bd1ae47,1,0,afde7867-15d3-43fa-b439-6d9e40df580b,afde7867-15d3-43fa-b439-6d9e40df580b,1,0,a676ff94-a0d1-4de9-8690-ec67f2c891d8,a676ff94-a0d1-4de9-8690-ec67f2c891d8,1,0,012bf716-3672-462e-b390-7bb4384ab4b1,012bf716-3672-462e-b390-7bb4384ab4b1,1,0,65342599-ff37-4f99-8e40-f05d87403bcf,65342599-ff37-4f99-8e40-f05d87403bcf,1,0,3a3f505a-7a50-4111-8029-5b9057fed232,3a3f505a-7a50-4111-8029-5b9057fed232,1,0,36baa776-83c4-413d-b70c-cbbc45e25662,36baa776-83c4-413d-b70c-cbbc45e25662,1,0,b65f9165-c20d-4053-8a0b-cff3f693b762,b65f9165-c20d-4053-8a0b-cff3f693b762,1,0,51af096b-687f-44f4-a0d8-306f670fc5ce,51af096b-687f-44f4-a0d8-306f670fc5ce,1,0,75972f88-aedd-4338-a3b5-320cd632a2e6,75972f88-aedd-4338-a3b5-320cd632a2e6,1,0,1363523a-929e-49ac-ae39-d43acf9f0478,1363523a-929e-49ac-ae39-d43acf9f0478,1,0,f6ff0bb8-c1fd-4eae-b919-6d10d4504f0c,f6ff0bb8-c1fd-4eae-b919-6d10d4504f0c,1,0,2876c476-8280-426d-8bf9-c93beda0ddd5,2876c476-8280-426d-8bf9-c93beda0ddd5,1,0,963e0813-4f6b-4d31-b66d-77125c47ce19,963e0813-4f6b-4d31-b66d-77125c47ce19,1,0,a720abc8-dcf0-4684-8d94-22d394a8e4df,a720abc8-dcf0-4684-8d94-22d394a8e4df,1,0,e40f53de-c27b-4e74-8241-f784d7ca5c84,e40f53de-c27b-4e74-8241-f784d7ca5c84,1,0,ef38b84d-277e-48c2-8826-330132eb6807,ef38b84d-277e-48c2-8826-330132eb6807,1,0,67a50910-059a-4724-84e0-c21bc3ac74c2,67a50910-059a-4724-84e0-c21bc3ac74c2,1,0,fdd83a89-a2fe-40d8-a531-a10bfeb36a1d,fdd83a89-a2fe-40d8-a531-a10bfeb36a1d,1,0,0d190f8b-87c5-4dd1-bcfb-609ec3a44f72,0d190f8b-87c5-4dd1-bcfb-609ec3a44f72,1,0,9e78a2b9-44fc-4971-801d-1ddd4bb09cfd,9e78a2b9-44fc-4971-801d-1ddd4bb09cfd,1,0,2c0d11fc-b927-4b5d-a16c-d60e69580824,2c0d11fc-b927-4b5d-a16c-d60e69580824,1,0,5251e744-666e-48a0-a5b4-9cef313c7631,5251e744-666e-48a0-a5b4-9cef313c7631,1,0,ebedc283-5eb0-459b-b686-f8643666b8b8,ebedc283-5eb0-459b-b686-f8643666b8b8,1,0,6a6afffd-cfed-4801-8b59-34d27e46565c,6a6afffd-cfed-4801-8b59-34d27e46565c,1,0,a469b12d-4537-419c-91e0-37abc9d31505,a469b12d-4537-419c-91e0-37abc9d31505,1,0,6f312bda-1f4d-48a6-bd95-f23f34f0ea4b,6f312bda-1f4d-48a6-bd95-f23f34f0ea4b,1,0,82c42232-531e-403f-8599-cc21a248fa2c,82c42232-531e-403f-8599-cc21a248fa2c,1,0,9104b791-9ac4-41ba-a7f0-9e609db3b578,9104b791-9ac4-41ba-a7f0-9e609db3b578,1,0,2d3721d1-816f-4e84-9df1-863cb269d83d,2d3721d1-816f-4e84-9df1-863cb269d83d,1,0,73554821-8ab5-44ab-a593-37ca10a1b777,73554821-8ab5-44ab-a593-37ca10a1b777,1,0,d5a98e02-e199-445e-8d53-11acd07f473f,d5a98e02-e199-445e-8d53-11acd07f473f,1,0,79db55d6-e916-4bde-b417-7d0a53bb85af,79db55d6-e916-4bde-b417-7d0a53bb85af,1,0,3084fb99-59cb-4338-ae37-0b1e8b333f01,3084fb99-59cb-4338-ae37-0b1e8b333f01,1,0,818a1fbf-17c1-44f9-8e20-27d4ceda549c,818a1fbf-17c1-44f9-8e20-27d4ceda549c,1,0,959a5d25-03e5-4911-bbb7-b93714db7eed,959a5d25-03e5-4911-bbb7-b93714db7eed,1,0,1d0b6a8d-9351-4ce2-85dd-6ac508c660c2,1d0b6a8d-9351-4ce2-85dd-6ac508c660c2,1,0,0b09cf2f-1759-4362-b997-29e09ac00445,0b09cf2f-1759-4362-b997-29e09ac00445,1,0,f6a9eb9c-a1c2-4114-b155-3ce94c7b7f20,f6a9eb9c-a1c2-4114-b155-3ce94c7b7f20,1,0,828ddf5d-ca09-4baf-897f-77d569e02a6b,828ddf5d-ca09-4baf-897f-77d569e02a6b,1,0,8856015c-a695-4b1a-99ef-770263f9dc4a,8856015c-a695-4b1a-99ef-770263f9dc4a,1,0,183ec2b5-e173-4885-9e26-1098ffa15020,183ec2b5-e173-4885-9e26-1098ffa15020,1,0,74702fdf-bfc5-4658-ba58-e39bcfbaa647,74702fdf-bfc5-4658-ba58-e39bcfbaa647,1,0,2f436ec3-6a04-4d2c-998a-c60ea875ca86,2f436ec3-6a04-4d2c-998a-c60ea875ca86,1,0,6a947b2d-3e6b-42c8-a9fd-4c5a71d600a9,6a947b2d-3e6b-42c8-a9fd-4c5a71d600a9,1,0,ae641a80-4ada-4592-ace9-29a82e6700e4,ae641a80-4ada-4592-ace9-29a82e6700e4,1,0,f0b0608c-178f-4dea-b461-0d8f00d79d30,f0b0608c-178f-4dea-b461-0d8f00d79d30,1,0,ed2dba0c-7fe3-4d24-b6a6-b104beadc286,ed2dba0c-7fe3-4d24-b6a6-b104beadc286,1,0,a4c98768-c9fc-4f95-b89b-bb1cb0e8fade,a4c98768-c9fc-4f95-b89b-bb1cb0e8fade,1,0,5546b9a9-a4fe-4a2b-9492-883bcb37a210,5546b9a9-a4fe-4a2b-9492-883bcb37a210,1,0,6fb76c5f-844f-4cbc-ae7c-4ac834fddfc9,6fb76c5f-844f-4cbc-ae7c-4ac834fddfc9,1,0,275a5772-8428-497a-81ef-c919f15fcccd,275a5772-8428-497a-81ef-c919f15fcccd,1,0,8df6e7e6-2a1e-4cf3-bdc9-60e52ea3f625,8df6e7e6-2a1e-4cf3-bdc9-60e52ea3f625,1,0,bf070420-9eb7-4372-96a6-b0d00ac3ce8c,bf070420-9eb7-4372-96a6-b0d00ac3ce8c,1,0,10336352-f3a1-4bc3-bdec-1a2eef15f176,10336352-f3a1-4bc3-bdec-1a2eef15f176,1,0,cacabf2f-6d1c-4c33-80c7-c27a5e757cc9,cacabf2f-6d1c-4c33-80c7-c27a5e757cc9,1,0,3b7c713e-81ae-4adc-9519-99c936599ef7,3b7c713e-81ae-4adc-9519-99c936599ef7,1,0,1c8ffbbd-035c-45cf-8ec8-dc5d26d7f673,1c8ffbbd-035c-45cf-8ec8-dc5d26d7f673,1,0,ecda2c4b-6411-4b47-ab59-1918bad5acdd,ecda2c4b-6411-4b47-ab59-1918bad5acdd,1,0,190bc52e-0d51-4dfc-9f16-99ed71ebfa75,190bc52e-0d51-4dfc-9f16-99ed71ebfa75,1,0,0c24858a-7e64-426f-9b59-392449aecaf5,0c24858a-7e64-426f-9b59-392449aecaf5,1,0,b1d61e28-f3dc-418b-b5df-f75622a4b980,b1d61e28-f3dc-418b-b5df-f75622a4b980,1,0,bec4c82f-4e76-4d16-bb4d-b6d9fa404c5d,bec4c82f-4e76-4d16-bb4d-b6d9fa404c5d,1,0,4033f86b-d250-475a-8837-071bf31664b0,4033f86b-d250-475a-8837-071bf31664b0,1,0,876e31ff-ab7b-4ea4-b491-161963727dd1,876e31ff-ab7b-4ea4-b491-161963727dd1,1,0,bb43995b-68b4-41a1-8458-e10a2d8925f1,bb43995b-68b4-41a1-8458-e10a2d8925f1,1,0,61730dd9-fed7-43ce-8f38-724cac8f3d08,61730dd9-fed7-43ce-8f38-724cac8f3d08,1,0,e6a494b8-27e7-46a6-9435-7be6e150a69e,e6a494b8-27e7-46a6-9435-7be6e150a69e,1,0,133dc852-59d3-4351-934d-8845f8a38431,133dc852-59d3-4351-934d-8845f8a38431,1,0,55dbaaf1-554d-46e2-b42a-ce6a8bf20dfb,55dbaaf1-554d-46e2-b42a-ce6a8bf20dfb,1,0,b67914a8-d483-4bed-bd4d-a4aadd4998a4,b67914a8-d483-4bed-bd4d-a4aadd4998a4,1,0,707a8a49-fec5-454c-9e80-c3da829d395c,707a8a49-fec5-454c-9e80-c3da829d395c,1,0,b5ea4aff-11be-4232-94a2-cb92801b6c49,b5ea4aff-11be-4232-94a2-cb92801b6c49,1,0,6f630213-c16c-421c-a160-09e3c729ab26,6f630213-c16c-421c-a160-09e3c729ab26,1,0,878c638c-7c84-4914-896a-d4fdf0d759ef,878c638c-7c84-4914-896a-d4fdf0d759ef,1,0,6065653e-b7a9-4033-9617-f64430c57d89,6065653e-b7a9-4033-9617-f64430c57d89,1,0,9ec63da6-1f53-417f-9c7d-6879eaa56a7e,9ec63da6-1f53-417f-9c7d-6879eaa56a7e,1,0,00d1d85b-c258-4f10-9d13-a99375a29fc1,00d1d85b-c258-4f10-9d13-a99375a29fc1,1,0,0544376f-461c-42c3-a102-e0ae65e3c0c6,0544376f-461c-42c3-a102-e0ae65e3c0c6,1,0,6df8d316-6ac3-4626-8951-1ad36d7049ed,6df8d316-6ac3-4626-8951-1ad36d7049ed,1,0,f211b418-899d-4220-a14b-4a7302183e46,f211b418-899d-4220-a14b-4a7302183e46,1,0,e499629a-69ed-46b4-be5d-7b1f2f6a11d4,e499629a-69ed-46b4-be5d-7b1f2f6a11d4,1,0,52ab6aea-e6a0-43f0-9cc8-f7c9126635cc,52ab6aea-e6a0-43f0-9cc8-f7c9126635cc,1,0,876b23bf-2f48-4916-ad0f-4de8306e1864,876b23bf-2f48-4916-ad0f-4de8306e1864,1,0,e983f539-e369-491e-9cee-510518187870,e983f539-e369-491e-9cee-510518187870,1,0,9a402a9c-a31f-4082-91d5-b4fe7576a5c2,9a402a9c-a31f-4082-91d5-b4fe7576a5c2,1,0,e99a1b17-0e37-489a-bc39-3dd2e23b0861,e99a1b17-0e37-489a-bc39-3dd2e23b0861,1,0,e7c63a25-c804-4bc4-a6f1-81009dd889e2,e7c63a25-c804-4bc4-a6f1-81009dd889e2,1,0,7ccd86cd-4294-4f6c-84f4-98e25e479f4d,7ccd86cd-4294-4f6c-84f4-98e25e479f4d,1,0,70e710c5-42df-465f-a9c5-8345c87e1f19,70e710c5-42df-465f-a9c5-8345c87e1f19,1,0,4c1576c4-b327-4ec1-87bc-662c5aba343b,4c1576c4-b327-4ec1-87bc-662c5aba343b,1,0,0f694ef1-4a97-4aed-ab4b-0b2c18ea7e17,0f694ef1-4a97-4aed-ab4b-0b2c18ea7e17,1,0,14facdfb-9835-4bb6-98a8-5a6ca9a5d2f8,14facdfb-9835-4bb6-98a8-5a6ca9a5d2f8,1,0,4492ac73-eb91-41f8-98f1-54c2b3ad212a,4492ac73-eb91-41f8-98f1-54c2b3ad212a,1,0,869b43fb-968f-4fe0-b945-5030c90a38f2,869b43fb-968f-4fe0-b945-5030c90a38f2,1,0,af071a52-212b-4131-98e6-81f6048a70e6,af071a52-212b-4131-98e6-81f6048a70e6,1,0,37210dde-9a2f-475c-8341-578ac99f0e17,37210dde-9a2f-475c-8341-578ac99f0e17,1,0,e5094d4f-ee61-4142-a97b-d96172350f65,e5094d4f-ee61-4142-a97b-d96172350f65,1,0,3a8fffb6-a732-440c-afb9-d1c699ea53b6,3a8fffb6-a732-440c-afb9-d1c699ea53b6,1,0,b0650787-8ff5-4407-b491-bcdc2f61fd58,b0650787-8ff5-4407-b491-bcdc2f61fd58,1,0,33dd6bba-0044-4e2f-ae9e-c8a26079ab2a,33dd6bba-0044-4e2f-ae9e-c8a26079ab2a,1,0,3f289f67-dfc7-4f2d-90e4-b47aff76ecdb,3f289f67-dfc7-4f2d-90e4-b47aff76ecdb,1,0,9aadad98-69f5-41ce-ad1c-0afd8c610d86,9aadad98-69f5-41ce-ad1c-0afd8c610d86,1,0,706a3db0-9d4f-4c08-91cd-3ccaa6d06d3b,706a3db0-9d4f-4c08-91cd-3ccaa6d06d3b,1,0,3d662173-e19d-4077-9a08-8c8899226e24,3d662173-e19d-4077-9a08-8c8899226e24,1,0,69fd1e6e-7302-4ca8-8419-ec567ae66bef,69fd1e6e-7302-4ca8-8419-ec567ae66bef,1,0,0eee931a-57bb-4844-8e6e-eaca342640a0,0eee931a-57bb-4844-8e6e-eaca342640a0,1,0,20c57e30-5856-4801-9e77-8006471d89f8,20c57e30-5856-4801-9e77-8006471d89f8,1,0,64eff9f4-c57b-40a0-bd83-7e371fd010ce,64eff9f4-c57b-40a0-bd83-7e371fd010ce,1,0,4a3fe393-8aea-4394-8c10-a234f1f191ad,4a3fe393-8aea-4394-8c10-a234f1f191ad,1,0,6f9a3d00-d935-4fa6-9fd2-14700226daff,6f9a3d00-d935-4fa6-9fd2-14700226daff,1,0,d792831c-698d-40c6-96c2-dd0ae6f30707,d792831c-698d-40c6-96c2-dd0ae6f30707,1,0,a1d91c5f-1acd-4b46-887e-d06e7260dd20,a1d91c5f-1acd-4b46-887e-d06e7260dd20,1,0,3fd26019-c464-4c73-b18e-0888740b1747,3fd26019-c464-4c73-b18e-0888740b1747,1,0,a21989bd-a57f-4969-be3b-d8b39ead4145,a21989bd-a57f-4969-be3b-d8b39ead4145,1,0,c4aee120-cdbb-4b48-a1c7-99cccbafb120,c4aee120-cdbb-4b48-a1c7-99cccbafb120,1,0,6b3e07d5-9299-4933-b3fa-c3cc5f5aa7c9,6b3e07d5-9299-4933-b3fa-c3cc5f5aa7c9,1,0,a3667b25-7c18-446d-a318-685a4fe4bf89,a3667b25-7c18-446d-a318-685a4fe4bf89,1,0,fd271670-bde6-4351-abec-eb82548c6c98,fd271670-bde6-4351-abec-eb82548c6c98,1,0,498b012b-bb63-490e-8100-1d33dc84b400,498b012b-bb63-490e-8100-1d33dc84b400,1,0,8103f12c-ed50-4052-8117-33b6d11ef620,8103f12c-ed50-4052-8117-33b6d11ef620,1,0,4f8653e4-3f58-4bad-8ded-424fe7b1d18a,4f8653e4-3f58-4bad-8ded-424fe7b1d18a,1,0,799b3dda-fbfc-4dea-a577-30321e64f4d5,799b3dda-fbfc-4dea-a577-30321e64f4d5,1,0,7c7857b6-90e8-4b3f-9902-fd81bf68d133,7c7857b6-90e8-4b3f-9902-fd81bf68d133,1,0,617de19c-bf01-4900-832a-c169e9faeb79,617de19c-bf01-4900-832a-c169e9faeb79,1,0,70b73fd0-f5dc-411e-9bbb-10a538e8281b,70b73fd0-f5dc-411e-9bbb-10a538e8281b,1,0,758f44ad-54da-4f72-accf-0afecc4f4827,758f44ad-54da-4f72-accf-0afecc4f4827,1,0,05ee4a7c-63e6-4587-8be7-e206345e3471,05ee4a7c-63e6-4587-8be7-e206345e3471,1,0,98d5e98b-0382-4b28-a5d9-24392925664a,98d5e98b-0382-4b28-a5d9-24392925664a,1,0,7c424a77-2a83-4a85-8b7d-e8bb6d013c77,7c424a77-2a83-4a85-8b7d-e8bb6d013c77,1,0,2a77eb39-0487-4fb0-8d5b-d4a27592ea60,2a77eb39-0487-4fb0-8d5b-d4a27592ea60,1,0,19a18193-c5d3-4e56-86c5-5a81c525e9ad,19a18193-c5d3-4e56-86c5-5a81c525e9ad,1,0,c208fcc0-d7b2-435b-963a-e18c97727f8f,c208fcc0-d7b2-435b-963a-e18c97727f8f,1,0,ac5db038-8bc3-45ff-9e8d-04ea9fef6d43,ac5db038-8bc3-45ff-9e8d-04ea9fef6d43,1,0,bf11f7b1-6332-4499-ba48-b94bc10ef869,bf11f7b1-6332-4499-ba48-b94bc10ef869,1,0,ecaba9aa-fca7-42f5-a4fe-d8176cf875b9,ecaba9aa-fca7-42f5-a4fe-d8176cf875b9,1,0,4378ab20-5467-476b-8f04-4b6876efdee6,4378ab20-5467-476b-8f04-4b6876efdee6,1,0,55e47901-c79c-41c5-9d7f-6b6846ed2782,55e47901-c79c-41c5-9d7f-6b6846ed2782,1,0,479d9428-02fd-47d2-a869-a3695b315724,479d9428-02fd-47d2-a869-a3695b315724,1,0,838b4840-86e3-4bf3-8b95-1e58ef60e97a,838b4840-86e3-4bf3-8b95-1e58ef60e97a,1,0,36d258b5-bfda-4b40-88a8-1e0abf351805,36d258b5-bfda-4b40-88a8-1e0abf351805,1,0,cc95b010-ca42-4b54-9c50-0551b2c690ed,cc95b010-ca42-4b54-9c50-0551b2c690ed,1,0,829fb3c0-6d96-4765-adc6-f177344a4a33,829fb3c0-6d96-4765-adc6-f177344a4a33,1,0,9241e7fe-e3e8-4ddd-ac6c-4edb1a1b2f71,9241e7fe-e3e8-4ddd-ac6c-4edb1a1b2f71,1,0,05c27c89-2c26-4252-842d-9aa43ba0ea2f,05c27c89-2c26-4252-842d-9aa43ba0ea2f,1,0,7c1e16c2-201d-4a3f-b0f4-9d66f5f8a68b,7c1e16c2-201d-4a3f-b0f4-9d66f5f8a68b,1,0,f092729c-6b5d-4709-8b28-15e06129731d,f092729c-6b5d-4709-8b28-15e06129731d,1,0,c03be2f7-d681-417d-975a-5c8c7b716659,c03be2f7-d681-417d-975a-5c8c7b716659,1,0,fca7af5f-bdc0-4264-be68-5e5e38545368,fca7af5f-bdc0-4264-be68-5e5e38545368,1,0,a3fc0bce-a87e-4c15-b57b-f285a694bcdf,a3fc0bce-a87e-4c15-b57b-f285a694bcdf,1,0,7c47f039-1ca9-4c6f-ac36-f4cb59b48b65,7c47f039-1ca9-4c6f-ac36-f4cb59b48b65,1,0,974d2430-1ff6-4be9-a5aa-aa896e9a66d4,974d2430-1ff6-4be9-a5aa-aa896e9a66d4,1,0,d392a791-af74-40c9-ab20-6ed6aeabe864,d392a791-af74-40c9-ab20-6ed6aeabe864,1,0,0b7cee9b-3870-49f5-a58e-063cf5353467,0b7cee9b-3870-49f5-a58e-063cf5353467,1,0,1612570d-b069-405a-9dd3-80b8175fb468,1612570d-b069-405a-9dd3-80b8175fb468,1,0,3c429fe8-e663-4a58-817f-8f8382697dbb,3c429fe8-e663-4a58-817f-8f8382697dbb,1,0,c37be0c3-d2db-4e63-a8cb-7956a5396650,c37be0c3-d2db-4e63-a8cb-7956a5396650,1,0,83180e0d-fc4b-41ec-9a17-5af555a4776f,83180e0d-fc4b-41ec-9a17-5af555a4776f,1,0,27c52afc-7127-41e1-af8a-1b1bd2c9bfa8,27c52afc-7127-41e1-af8a-1b1bd2c9bfa8,1,0,7f68e4c1-c4f7-4c6c-8f0a-225e544e07ee,7f68e4c1-c4f7-4c6c-8f0a-225e544e07ee,1,0,561ed574-617d-4a46-b32b-f022e07846c8,561ed574-617d-4a46-b32b-f022e07846c8,1,0,cba706bf-a9a7-4dda-9c5a-a26e85119396,cba706bf-a9a7-4dda-9c5a-a26e85119396,1,0,159a4eb5-00cd-426c-86e3-09cd3f569f22,159a4eb5-00cd-426c-86e3-09cd3f569f22,1,0,f03cdb56-ef3f-461f-91b1-cdcaed2786e8,f03cdb56-ef3f-461f-91b1-cdcaed2786e8,1,0,3e8c6546-416c-4437-8c85-2cf591b4fc3f,3e8c6546-416c-4437-8c85-2cf591b4fc3f,1,0,038e5027-3cc5-4ea2-b0b5-28a7544ad53e,038e5027-3cc5-4ea2-b0b5-28a7544ad53e,1,0,9a0b27db-e4ac-496b-b6de-876b90381527,9a0b27db-e4ac-496b-b6de-876b90381527,1,0,2ded5135-b6c3-46dd-b563-7b6fab986d23,2ded5135-b6c3-46dd-b563-7b6fab986d23,1,0,14215720-ccb3-4e5a-8345-cd42c96a3e77,14215720-ccb3-4e5a-8345-cd42c96a3e77,1,0,24fa0604-b6a5-49ad-9d03-b2cf8e81dad8,24fa0604-b6a5-49ad-9d03-b2cf8e81dad8,1,0,0690a5c7-bc25-4101-afa5-69c095d415c2,0690a5c7-bc25-4101-afa5-69c095d415c2,1,0,2ad7b509-4cd1-456a-a6ae-94649fdf8c3e,2ad7b509-4cd1-456a-a6ae-94649fdf8c3e,1,0,79013bba-a0f2-481c-a63e-095a54ee52aa,79013bba-a0f2-481c-a63e-095a54ee52aa,1,0,8523c346-f144-41b8-a702-2d588e7097c2,8523c346-f144-41b8-a702-2d588e7097c2,1,0,93969a30-d9d7-4f2f-85fa-57a4eb7495bf,93969a30-d9d7-4f2f-85fa-57a4eb7495bf,1,0,9fb73c9b-05de-4474-8a28-7e3fd5b2b143,9fb73c9b-05de-4474-8a28-7e3fd5b2b143,1,0,fa2bd6a6-bb46-4e21-8684-248578310164,fa2bd6a6-bb46-4e21-8684-248578310164,1,0,f7cf3b42-39c0-48db-b8ca-fe9ea267a45a,f7cf3b42-39c0-48db-b8ca-fe9ea267a45a,1,0,3a0c06eb-f6d5-46c3-b0b9-c8d98e572093,3a0c06eb-f6d5-46c3-b0b9-c8d98e572093,1,0,88ccac36-169d-48f8-bc68-15e3bb775b79,88ccac36-169d-48f8-bc68-15e3bb775b79,1,0,a1640988-bd60-43b3-86f1-184b9db275c6,a1640988-bd60-43b3-86f1-184b9db275c6,1,0,300a02f7-8062-4843-b11e-0321f8b40f4d,300a02f7-8062-4843-b11e-0321f8b40f4d,1,0,bac41d45-249f-40b4-a013-008e261369c8,bac41d45-249f-40b4-a013-008e261369c8,1,0,84e34b4a-02e8-4676-8b81-771ddf3c2931,84e34b4a-02e8-4676-8b81-771ddf3c2931,1,0,0aa6a024-66ae-4592-87d6-f7cb2a59f906,0aa6a024-66ae-4592-87d6-f7cb2a59f906,1,0,734b4dc5-dc91-4945-a2d7-cefe56a6e0a6,734b4dc5-dc91-4945-a2d7-cefe56a6e0a6,1,0,bb2dcb37-410d-4a6c-9ace-1f04177d6e88,bb2dcb37-410d-4a6c-9ace-1f04177d6e88,1,0,cb6ecc18-a14f-4c3c-a39d-2cd2d1ab4e03,cb6ecc18-a14f-4c3c-a39d-2cd2d1ab4e03,1,0,f71ac535-74a5-4001-a613-455a9e1bf734,f71ac535-74a5-4001-a613-455a9e1bf734,1,0,55a42b83-b6d2-409b-a8ff-7849b08e07ed,55a42b83-b6d2-409b-a8ff-7849b08e07ed,1,0,61889399-ecc2-442c-a790-a8b27a7a540c,61889399-ecc2-442c-a790-a8b27a7a540c,1,0,ecd3a928-3e59-439c-8f58-ba360f2a8b3c,ecd3a928-3e59-439c-8f58-ba360f2a8b3c,1,0,4ee2efbc-bc4a-4b47-bfdb-bb83f108c5bb,4ee2efbc-bc4a-4b47-bfdb-bb83f108c5bb,1,0,2d942a50-b239-4b8c-812a-5a634f5dcaef,2d942a50-b239-4b8c-812a-5a634f5dcaef,1,0,8ab0c61d-85b4-47e3-aca1-1890e4c6ec8d,8ab0c61d-85b4-47e3-aca1-1890e4c6ec8d,1,0,a21cf522-d657-49ba-a198-01ff1de5e3f0,a21cf522-d657-49ba-a198-01ff1de5e3f0,1,0,4dc698da-8471-4b3f-816d-f1467cd2e5f1,4dc698da-8471-4b3f-816d-f1467cd2e5f1,1,0,7ceb2f18-4dae-4b13-a5be-e949be165b4e,7ceb2f18-4dae-4b13-a5be-e949be165b4e,1,0,c4f94f6d-e33f-4226-bf47-c4b544098082,c4f94f6d-e33f-4226-bf47-c4b544098082,1,0,0abca5b8-4974-48aa-bf5d-dbbe2c2ea0e6,0abca5b8-4974-48aa-bf5d-dbbe2c2ea0e6,1,0,fc67b510-3fb4-4305-92d2-c252bc718f03,fc67b510-3fb4-4305-92d2-c252bc718f03,1,0,ed98a7b2-ad31-401f-a65e-dfbcc8e5a4a8,ed98a7b2-ad31-401f-a65e-dfbcc8e5a4a8,1,0,9a5e3d2c-ab69-4f9d-a56f-20bb5f0be1e2,9a5e3d2c-ab69-4f9d-a56f-20bb5f0be1e2,1,0,cf1f7915-94ad-47e7-8676-73271d0cf71e,cf1f7915-94ad-47e7-8676-73271d0cf71e,1,0,fceb6e4a-bd51-4193-a542-70d2317af669,fceb6e4a-bd51-4193-a542-70d2317af669,1,0,80847d57-1795-46c7-a106-926e1f43ac1e,80847d57-1795-46c7-a106-926e1f43ac1e,1,0,38685415-dc87-48b4-8cc4-f85b438f2ec2,38685415-dc87-48b4-8cc4-f85b438f2ec2,1,0,110eff8b-aeec-4ba5-b710-fefc1bd60284,110eff8b-aeec-4ba5-b710-fefc1bd60284,1,0,0a8a6bb9-8b6a-43cf-9d46-b18a8a9591d8,0a8a6bb9-8b6a-43cf-9d46-b18a8a9591d8,1,0,75eca481-002b-4046-898d-dfac9357611f,75eca481-002b-4046-898d-dfac9357611f,1,0,0110decc-d06e-43cf-9d01-30d412edcdd7,0110decc-d06e-43cf-9d01-30d412edcdd7,1,0,3ea32a24-d37b-4fad-937a-9d1357d649a9,3ea32a24-d37b-4fad-937a-9d1357d649a9,1,0,2856ee9a-0fea-4684-b7b8-4844773eae07,2856ee9a-0fea-4684-b7b8-4844773eae07,1,0,fae4675c-dcdc-42fc-911d-07c3c577b8b8,fae4675c-dcdc-42fc-911d-07c3c577b8b8,1,0,f1050611-4f82-411b-97f2-bcd8a5c914bf,f1050611-4f82-411b-97f2-bcd8a5c914bf,1,0,efacf22d-b474-4d49-af8b-6d3784aa5cf2,efacf22d-b474-4d49-af8b-6d3784aa5cf2,1,0,f818b937-9ac3-4a0c-ba50-26c060984f09,f818b937-9ac3-4a0c-ba50-26c060984f09,1,0,f385778d-96cb-4e09-884d-533739b393b1,f385778d-96cb-4e09-884d-533739b393b1,1,0,5bdaa783-e965-4d59-b7b7-a1e86ddb89f7,5bdaa783-e965-4d59-b7b7-a1e86ddb89f7,1,0,7bf36370-3761-4fd5-bea5-90fa142a9d57,7bf36370-3761-4fd5-bea5-90fa142a9d57,1,0,3b81427f-cf64-4a5e-adb3-5415d515fecd,3b81427f-cf64-4a5e-adb3-5415d515fecd,1,0,e9f2b604-7181-476d-8b34-3a544cbb353d,e9f2b604-7181-476d-8b34-3a544cbb353d,1,0,73773919-d01c-41dd-bb31-9c66648ac0ff,73773919-d01c-41dd-bb31-9c66648ac0ff,1,0,5d1afad0-3d7e-4214-b52a-72c184490084,5d1afad0-3d7e-4214-b52a-72c184490084,1,0,5f7901a1-f992-42fa-9ddb-d63574da3b56,5f7901a1-f992-42fa-9ddb-d63574da3b56,1,0,26abd45a-12b3-4312-88fb-53c90a6e6679,26abd45a-12b3-4312-88fb-53c90a6e6679,1,0,1541ad74-3e73-4699-bccf-c13313fbedfe,1541ad74-3e73-4699-bccf-c13313fbedfe,1,0,1037ecb7-6819-4ba2-8c93-eccbbdf825be,1037ecb7-6819-4ba2-8c93-eccbbdf825be,1,0,0b2356a4-5571-4ba0-9095-265106f2b3b3,0b2356a4-5571-4ba0-9095-265106f2b3b3,1,0,a2581834-dde8-439a-8204-6712c829738e,a2581834-dde8-439a-8204-6712c829738e,1,0,222985c4-fe09-44d1-a1c5-5a3e3cedd9b2,222985c4-fe09-44d1-a1c5-5a3e3cedd9b2,1,0,c746a268-815b-4917-8b06-af745ba9db04,c746a268-815b-4917-8b06-af745ba9db04,1,0,5cc01f13-0faa-4c3c-8e5e-156656f71efd,5cc01f13-0faa-4c3c-8e5e-156656f71efd,1,0,7c3463c8-ea36-415a-8e9d-dc7bd927b9d1,7c3463c8-ea36-415a-8e9d-dc7bd927b9d1,1,0,260f4fb1-02cb-4c32-ba4b-5aa202cd0311,260f4fb1-02cb-4c32-ba4b-5aa202cd0311,1,0,be2b4dba-e77e-4947-bd2f-0710b357ca2a,be2b4dba-e77e-4947-bd2f-0710b357ca2a,1,0,86182e9a-89e0-40d7-b2d7-fcd92ee42942,86182e9a-89e0-40d7-b2d7-fcd92ee42942,1,0,df750e63-50fc-4085-b8b8-f05e4751ff51,df750e63-50fc-4085-b8b8-f05e4751ff51,1,0,091cb921-c7e3-4a5f-97b7-34e625159b9c,091cb921-c7e3-4a5f-97b7-34e625159b9c,1,0,f6118cdd-1dcd-464e-a49d-e95c69466750,f6118cdd-1dcd-464e-a49d-e95c69466750,1,0,39932897-959b-41a6-94ad-61426abfdbd9,39932897-959b-41a6-94ad-61426abfdbd9,1,0,c56ea6f3-1032-4b7a-a20e-e912196da1cd,c56ea6f3-1032-4b7a-a20e-e912196da1cd,1,0,20d655a7-788c-48bc-83ae-25003106bedb,20d655a7-788c-48bc-83ae-25003106bedb,1,0,7bfb78de-899f-4a4d-a8b2-ebadeccf3921,7bfb78de-899f-4a4d-a8b2-ebadeccf3921,1,0,68a72014-4b2e-4347-aaa7-54d95b8eb919,68a72014-4b2e-4347-aaa7-54d95b8eb919,1,0,a71d9c41-7510-4d38-90df-1034977b8f45,a71d9c41-7510-4d38-90df-1034977b8f45,1,0,25830f5b-27e2-4eff-9728-b21eb498727d,25830f5b-27e2-4eff-9728-b21eb498727d,1,0,379c9295-d0d5-418d-82f3-5ae19985cc53,379c9295-d0d5-418d-82f3-5ae19985cc53,1,0,af02f534-8508-4f9f-bcc1-0c6f3d696971,af02f534-8508-4f9f-bcc1-0c6f3d696971,1,0,dd345cfb-ea0c-4ea8-9b35-22547b000275,dd345cfb-ea0c-4ea8-9b35-22547b000275,1,0,86a871da-3725-43a1-a7c3-98acd187011b,86a871da-3725-43a1-a7c3-98acd187011b,1,0,2447cfeb-d877-4222-8ac2-b0026b85f932,2447cfeb-d877-4222-8ac2-b0026b85f932,1,0,fb94e9cb-1f27-42a6-a701-18bbe5888e70,fb94e9cb-1f27-42a6-a701-18bbe5888e70,1,0,2e26e32e-a0c6-4460-99de-865622202166,2e26e32e-a0c6-4460-99de-865622202166,1,0,c9489a6e-45af-4877-9788-158071571a0a,c9489a6e-45af-4877-9788-158071571a0a,1,0,23959912-f8fc-42bc-9ec2-1d520ebc5dad,23959912-f8fc-42bc-9ec2-1d520ebc5dad,1,0,4770398f-8013-4d43-93ce-ec1165e40c4e,4770398f-8013-4d43-93ce-ec1165e40c4e,1,0,9a706997-90cb-430d-972c-d2bad87c4a79,9a706997-90cb-430d-972c-d2bad87c4a79,1,0,6f661660-b9c4-41d4-99a8-e08006cfe9c8,6f661660-b9c4-41d4-99a8-e08006cfe9c8,1,0,199e79fa-54d6-4748-aaaa-9c55283582a3,199e79fa-54d6-4748-aaaa-9c55283582a3,1,0,77b4ade5-149c-4803-af25-fb24ad8b7116,77b4ade5-149c-4803-af25-fb24ad8b7116,1,0,afedc975-4354-473c-8a4d-5b4b547c6e13,afedc975-4354-473c-8a4d-5b4b547c6e13,1,0,8faced7e-d498-499e-8011-7d8d2de1a25f,8faced7e-d498-499e-8011-7d8d2de1a25f,1,0,a67b69dc-ca89-4813-a78d-4a7be1aff328,a67b69dc-ca89-4813-a78d-4a7be1aff328,1,0,dec2510f-4517-4144-a525-3c344e44abc4,dec2510f-4517-4144-a525-3c344e44abc4,1,0,5ef026c2-2ef4-45d6-9792-5ba0d298714b,5ef026c2-2ef4-45d6-9792-5ba0d298714b,1,0,45d61391-4cf7-4f45-8775-ada582c42400,45d61391-4cf7-4f45-8775-ada582c42400,1,0,78b2a913-2ab9-455d-85a3-504f0f468468,78b2a913-2ab9-455d-85a3-504f0f468468,1,0,8c7e1080-fbb2-4a9c-b740-b3e9eb996565,8c7e1080-fbb2-4a9c-b740-b3e9eb996565,1,0,560b5b12-4dee-4c69-ab6b-7680757a2797,560b5b12-4dee-4c69-ab6b-7680757a2797,1,0,3cfb1ce0-de42-4914-85c0-807d0c10f77e,3cfb1ce0-de42-4914-85c0-807d0c10f77e,1,0,aa89881f-f111-4384-911c-847b04bb56dd,aa89881f-f111-4384-911c-847b04bb56dd,1,0,444d9e3b-c702-4ad6-a929-a220eff0f6e7,444d9e3b-c702-4ad6-a929-a220eff0f6e7,1,0,022c4519-1cdb-45b6-a699-89fd6688999c,022c4519-1cdb-45b6-a699-89fd6688999c,1,0,fb5b79a2-caec-4c6e-a112-27e78a184d5e,fb5b79a2-caec-4c6e-a112-27e78a184d5e,1,0,fa523958-ce1e-42e1-ae00-2dcb401b7eda,fa523958-ce1e-42e1-ae00-2dcb401b7eda,1,0,1518bca2-a004-4566-8991-7c60e6745a49,1518bca2-a004-4566-8991-7c60e6745a49,1,0,ed8618e2-3ce6-4956-856a-9f40279b4da6,ed8618e2-3ce6-4956-856a-9f40279b4da6,1,0,733f6bc2-544d-4fac-bca8-11b981b95a03,733f6bc2-544d-4fac-bca8-11b981b95a03,1,0,0333cd9e-392d-40b2-869d-ad47119e0384,0333cd9e-392d-40b2-869d-ad47119e0384,1,0,82cc8820-0b92-4bb7-b097-7ac79e922f01,82cc8820-0b92-4bb7-b097-7ac79e922f01,1,0,8e0340c9-6469-4fc9-b19a-4be4e0e6ee82,8e0340c9-6469-4fc9-b19a-4be4e0e6ee82,1,0,f2267d6c-6972-4621-b677-87798056363b,f2267d6c-6972-4621-b677-87798056363b,1,0,243d201b-3714-4700-b410-c74c9093e6f6,243d201b-3714-4700-b410-c74c9093e6f6,1,0,e1e9862e-c87b-400f-bca1-b1380cb98ddc,e1e9862e-c87b-400f-bca1-b1380cb98ddc,1,0,de3cb50c-ef99-419e-b922-c6a453da6a5b,de3cb50c-ef99-419e-b922-c6a453da6a5b,1,0,d4ca4802-756a-494c-bab3-e77e0777a3fa,d4ca4802-756a-494c-bab3-e77e0777a3fa,1,0,134c1054-8d65-405f-ba3b-5beeca803a72,134c1054-8d65-405f-ba3b-5beeca803a72,1,0,cfa1669b-5310-4171-83fd-4dff3c6ac345,cfa1669b-5310-4171-83fd-4dff3c6ac345,1,0,9ec26d14-b09d-4fd7-9c43-062c0120cf3d,9ec26d14-b09d-4fd7-9c43-062c0120cf3d,1,0,0db78226-37d0-4016-b4c9-5134af1aabc7,0db78226-37d0-4016-b4c9-5134af1aabc7,1,0,8d6b4d23-a260-4352-9975-c13ce3e05220,8d6b4d23-a260-4352-9975-c13ce3e05220,1,0,e0be0bc7-def6-4ae9-9a33-9689aa829b5e,e0be0bc7-def6-4ae9-9a33-9689aa829b5e,1,0,97d4ffd0-07ef-4dc2-8fbc-449c3c8453ef,97d4ffd0-07ef-4dc2-8fbc-449c3c8453ef,1,0,6f5ac40b-ea22-47cf-acf2-614406669a72,6f5ac40b-ea22-47cf-acf2-614406669a72,1,0,b6caaa9e-a9d1-4519-a61f-7fa0ab0ff201,b6caaa9e-a9d1-4519-a61f-7fa0ab0ff201,1,0,488d2644-6fef-488a-af38-40f59c0e0d8c,488d2644-6fef-488a-af38-40f59c0e0d8c,1,0,5d76a28c-5d6c-49cb-8b91-2527e8d06aba,5d76a28c-5d6c-49cb-8b91-2527e8d06aba,1,0,688d86cd-1044-4b77-bb63-2c05aaafbcd0,688d86cd-1044-4b77-bb63-2c05aaafbcd0,1,0,f1efef30-8651-4728-becd-abe3f9026a43,f1efef30-8651-4728-becd-abe3f9026a43,1,0,c2612e22-4f0d-4713-b4eb-decd9780d088,c2612e22-4f0d-4713-b4eb-decd9780d088,1,0,11b1410f-8e14-4b2f-8890-177f4875020e,11b1410f-8e14-4b2f-8890-177f4875020e,1,0,2276b2b0-1705-4014-956f-5087e9dd5c1e,2276b2b0-1705-4014-956f-5087e9dd5c1e,1,0,4aef5419-7cf5-4443-b773-9273c983844f,4aef5419-7cf5-4443-b773-9273c983844f,1,0,b090cfa5-1bd8-43aa-84d6-6e04375c4b57,b090cfa5-1bd8-43aa-84d6-6e04375c4b57,1,0,8a0d4f7f-7a80-4e5d-8238-05fc169e0319,8a0d4f7f-7a80-4e5d-8238-05fc169e0319,1,0,8e9f9baf-8d12-46cc-915f-f6f290af5512,8e9f9baf-8d12-46cc-915f-f6f290af5512,1,0,5808331f-9ab4-4a23-a592-1f65087f3214,5808331f-9ab4-4a23-a592-1f65087f3214,1,0,9316738d-3d38-4068-818e-a001355b19fb,9316738d-3d38-4068-818e-a001355b19fb,1,0,d86d766f-021a-4c11-b9e8-403af08918cc,d86d766f-021a-4c11-b9e8-403af08918cc,1,0,2cedfef0-5d93-475a-b2dd-ee36e553e6e1,2cedfef0-5d93-475a-b2dd-ee36e553e6e1,1,0,29200d04-d7da-435a-89e6-858c11a1a98c,29200d04-d7da-435a-89e6-858c11a1a98c,1,0,8e5f6c70-04b3-46a1-94ef-82c9f6019f8f,8e5f6c70-04b3-46a1-94ef-82c9f6019f8f,1,0,6c119ef2-d24b-4c3d-ad07-611bed89cab1,6c119ef2-d24b-4c3d-ad07-611bed89cab1,1,0,13b1cb1f-88df-4ff8-b4cc-0473e4f96005,13b1cb1f-88df-4ff8-b4cc-0473e4f96005,1,0,0e861ad8-6fa3-4b0f-a9b0-6c91df1dfc6b,0e861ad8-6fa3-4b0f-a9b0-6c91df1dfc6b,1,0,27df6c22-85d7-4cb6-be19-82af76c84bf9,27df6c22-85d7-4cb6-be19-82af76c84bf9,1,0,77bd95d6-3cd5-4b67-a0b6-72d24243fbc2,77bd95d6-3cd5-4b67-a0b6-72d24243fbc2,1,0,0be7f905-53b8-4bb1-8e37-dcc142e508c5,0be7f905-53b8-4bb1-8e37-dcc142e508c5,1,0,422155c7-1640-48c4-bb21-36595b405c66,422155c7-1640-48c4-bb21-36595b405c66,1,0,16d37b5a-88db-4787-b2de-fb50da0ca94b,16d37b5a-88db-4787-b2de-fb50da0ca94b,1,0,f653bcbf-5659-4605-9bb9-3737f19e79dd,f653bcbf-5659-4605-9bb9-3737f19e79dd,1,0,8b980868-fe63-49ff-ba3d-4c29732e1b90,8b980868-fe63-49ff-ba3d-4c29732e1b90,1,0,54668731-4963-4ec3-b188-9feacaefa182,54668731-4963-4ec3-b188-9feacaefa182,1,0,3702135e-5380-4ca6-82f5-63eff1b043e9,3702135e-5380-4ca6-82f5-63eff1b043e9,1,0,29b2104b-fd02-4d51-951f-51ea213b8ebd,29b2104b-fd02-4d51-951f-51ea213b8ebd,1,0,ba5c945e-554f-45a2-a2de-3157b2d7e931,ba5c945e-554f-45a2-a2de-3157b2d7e931,1,0,f7085f33-f122-4443-a3f5-4e765300175e,f7085f33-f122-4443-a3f5-4e765300175e,1,0,b7e4c512-b856-4679-a025-5f0f28918593,b7e4c512-b856-4679-a025-5f0f28918593,1,0,bba56b8f-a3f3-4d3f-9804-f9569bb1f6f3,bba56b8f-a3f3-4d3f-9804-f9569bb1f6f3,1,0,cff7ba79-9418-43a4-badc-3e3cc2f6bd5b,cff7ba79-9418-43a4-badc-3e3cc2f6bd5b,1,0,a9362ac4-85ee-4214-80c1-048fab769885,a9362ac4-85ee-4214-80c1-048fab769885,1,0,4ec242e0-75d1-4bf7-be18-783e7aa4f236,4ec242e0-75d1-4bf7-be18-783e7aa4f236,1,0,e02b1366-9d7a-462f-86a1-436bbf4532ff,e02b1366-9d7a-462f-86a1-436bbf4532ff,1,0,40ee729c-c317-4a1c-b985-5f7e4e1e20fb,40ee729c-c317-4a1c-b985-5f7e4e1e20fb,1,0,2feb35c0-b046-4086-a2ce-ccc462fc6e9c,2feb35c0-b046-4086-a2ce-ccc462fc6e9c,1,0,8811cc64-99d9-4f13-8309-c29965783f5a,8811cc64-99d9-4f13-8309-c29965783f5a,1,0,7c737071-e850-4a3f-8942-697ef52a8ecc,7c737071-e850-4a3f-8942-697ef52a8ecc,1,0,62eff222-7b74-4cab-9138-880db1f05147,62eff222-7b74-4cab-9138-880db1f05147,1,0,39c6c277-cfc6-4e8a-8e7f-afcff55f0511,39c6c277-cfc6-4e8a-8e7f-afcff55f0511,1,0,860f8893-22fe-4b13-adb1-24e1ea8c6544,860f8893-22fe-4b13-adb1-24e1ea8c6544,1,0,95266e9f-073f-4de3-83c6-cc0d9ee9334f,95266e9f-073f-4de3-83c6-cc0d9ee9334f,1,0,21b8ac8d-75ca-481c-8e85-01bc2029f0c0,21b8ac8d-75ca-481c-8e85-01bc2029f0c0,1,0,d5012e69-89bc-40af-8e4f-377a042854ee,d5012e69-89bc-40af-8e4f-377a042854ee,1,0,02f79fd8-5315-4c90-b520-db67dcb6e371,02f79fd8-5315-4c90-b520-db67dcb6e371,1,0,9bb52788-4a3a-48b5-a551-5ca753b6c059,9bb52788-4a3a-48b5-a551-5ca753b6c059,1,0,4fb5004f-3cd9-44c4-a44b-d235cccf9e9c,4fb5004f-3cd9-44c4-a44b-d235cccf9e9c,1,0,872a0c47-fab5-4a54-8ab9-23940bbdefbb,872a0c47-fab5-4a54-8ab9-23940bbdefbb,1,0,7428a626-3fbc-4f2c-a3dd-f14e8d90c00b,7428a626-3fbc-4f2c-a3dd-f14e8d90c00b,1,0,2f20bff4-9201-4f36-9e74-eba4d9b3c59a,2f20bff4-9201-4f36-9e74-eba4d9b3c59a,1,0,b6c94efd-5994-4c4c-a641-b062ecc38b65,b6c94efd-5994-4c4c-a641-b062ecc38b65,1,0,98501228-7f0e-45a3-b58f-4c654f393f80,98501228-7f0e-45a3-b58f-4c654f393f80,1,0,502384c9-edb7-451a-b7ea-de006f657a6e,502384c9-edb7-451a-b7ea-de006f657a6e,1,0,4e1a4fe0-dca4-40ba-9369-73be303a4aef,4e1a4fe0-dca4-40ba-9369-73be303a4aef,1,0,329906a0-0b61-4f3f-8cd0-f06a78e8fe5f,329906a0-0b61-4f3f-8cd0-f06a78e8fe5f,1,0,840e0b1b-a599-4c5f-8eaa-7f7e4f2e55a4,840e0b1b-a599-4c5f-8eaa-7f7e4f2e55a4,1,0,1d06a9e4-e637-4219-a81c-64f8ec1b91a4,1d06a9e4-e637-4219-a81c-64f8ec1b91a4,1,0,50968921-76f3-4108-835a-96b153671c8d,50968921-76f3-4108-835a-96b153671c8d,1,0,b773f510-1485-4886-9071-afcbf49ff856,b773f510-1485-4886-9071-afcbf49ff856,1,0,964403f2-0a87-49e1-b183-dbe3624e3805,964403f2-0a87-49e1-b183-dbe3624e3805,1,0,bb264e83-49f4-4b7a-8be2-094712fc0640,bb264e83-49f4-4b7a-8be2-094712fc0640,1,0,07bf650d-e61e-44f3-9643-6ffc95b913fb,07bf650d-e61e-44f3-9643-6ffc95b913fb,1,0,5c68c57a-31d6-4ae9-855f-3fbc57922e39,5c68c57a-31d6-4ae9-855f-3fbc57922e39,1,0,6b90ed05-813c-4324-8a69-02c2268856b2,6b90ed05-813c-4324-8a69-02c2268856b2,1,0,081ed48d-cb87-459d-97d6-9af121edbabb,081ed48d-cb87-459d-97d6-9af121edbabb,1,0,6c4074b2-f631-451d-b412-1c8c096a71b1,6c4074b2-f631-451d-b412-1c8c096a71b1,1,0,f9931a20-8391-4b13-8c6d-1836f2492e53,f9931a20-8391-4b13-8c6d-1836f2492e53,1,0,c6eec20b-13b9-44a0-968f-1325680c399b,c6eec20b-13b9-44a0-968f-1325680c399b,1,0,02fbf083-1bdd-4900-9dc1-62f415b792a4,02fbf083-1bdd-4900-9dc1-62f415b792a4,1,0,35454c2d-7088-487b-abb3-f95f2dfdcffa,35454c2d-7088-487b-abb3-f95f2dfdcffa,1,0,2c2526c1-bdf8-4115-bdff-3e79d28321cb,2c2526c1-bdf8-4115-bdff-3e79d28321cb,1,0,4f4da2e9-37ab-4505-b3b1-4b3a908f38c2,4f4da2e9-37ab-4505-b3b1-4b3a908f38c2,1,0,95ab774f-27fa-4bd4-a422-0f997f632679,95ab774f-27fa-4bd4-a422-0f997f632679,1,0,ee3ad891-b7d6-439d-892b-de2f3399d147,ee3ad891-b7d6-439d-892b-de2f3399d147,1,0,4af0f1ee-42cb-47bd-99d0-99deb70e9f82,4af0f1ee-42cb-47bd-99d0-99deb70e9f82,1,0,a2ae0338-ed11-422a-8442-f6c4002ddf0d,a2ae0338-ed11-422a-8442-f6c4002ddf0d,1,0,eb59c9c3-6043-401c-87cc-ba7620139d6a,eb59c9c3-6043-401c-87cc-ba7620139d6a,1,0,2b5ce871-8630-4f2f-9ccb-d9f863886420,2b5ce871-8630-4f2f-9ccb-d9f863886420,1,0,86ae353e-7eed-434c-b4ab-cede36e462bc,86ae353e-7eed-434c-b4ab-cede36e462bc,1,0,18e65717-738b-4d39-9c85-676bca15e6b7,18e65717-738b-4d39-9c85-676bca15e6b7,1,0,01579044-5659-4a73-a989-c52cfabaae66,01579044-5659-4a73-a989-c52cfabaae66,1,0,9b8509e8-8262-4e6a-b2f3-a0df8f49e2c5,9b8509e8-8262-4e6a-b2f3-a0df8f49e2c5,1,0,911baaa1-a4de-4558-b00e-51644144a762,911baaa1-a4de-4558-b00e-51644144a762,1,0,8a8ad123-c01a-440a-bd01-1c0da72cf2eb,8a8ad123-c01a-440a-bd01-1c0da72cf2eb,1,0,ca4ef957-36c2-43b9-8ff7-e2b7ee58cde5,ca4ef957-36c2-43b9-8ff7-e2b7ee58cde5,1,0,4e036eff-92a8-4010-89b2-ed949c123311,4e036eff-92a8-4010-89b2-ed949c123311,1,0,38160114-dc22-4d0b-86a5-d650f4756932,38160114-dc22-4d0b-86a5-d650f4756932,1,0,60aaa289-1f07-438c-8f10-81058ac671c3,60aaa289-1f07-438c-8f10-81058ac671c3,1,0,7312a4ab-a269-4d85-a2c2-25bd5c5dc59c,7312a4ab-a269-4d85-a2c2-25bd5c5dc59c,1,0,c44b0868-bd7f-4230-973b-544ff4dd2afe,c44b0868-bd7f-4230-973b-544ff4dd2afe,1,0,fc2675c2-1c9b-41f9-88eb-5c8be365fe41,fc2675c2-1c9b-41f9-88eb-5c8be365fe41,1,0,51e6a6f9-ce9d-4cb0-a40c-384ede074e07,51e6a6f9-ce9d-4cb0-a40c-384ede074e07,1,0,d49411b4-5f6d-48c5-b4f8-fdfbd1b73317,d49411b4-5f6d-48c5-b4f8-fdfbd1b73317,1,0,8b3da21b-ea3f-47cf-af48-15b886b21f20,8b3da21b-ea3f-47cf-af48-15b886b21f20,1,0,32c4750b-0096-4bbc-8dcd-c1f717734233,32c4750b-0096-4bbc-8dcd-c1f717734233,1,0,be6740b1-1f57-4c01-a67a-d48152931dc8,be6740b1-1f57-4c01-a67a-d48152931dc8,1,0,40fd038d-a93a-4be7-9221-d8ae83350ca0,40fd038d-a93a-4be7-9221-d8ae83350ca0,1,0,e9fcabef-5067-477b-8cb0-1bf3ab8161c5,e9fcabef-5067-477b-8cb0-1bf3ab8161c5,1,0,29adc9e5-a994-48ab-a5a1-919d01119c3a,29adc9e5-a994-48ab-a5a1-919d01119c3a,1,0,c47ffce7-c905-4e88-8b1f-156f47047ccd,c47ffce7-c905-4e88-8b1f-156f47047ccd,1,0,e1755eed-88cf-42c1-83e4-f9047f2c30bf,e1755eed-88cf-42c1-83e4-f9047f2c30bf,1,0,c6ec9d48-9131-4735-9cf7-b498705a57e4,c6ec9d48-9131-4735-9cf7-b498705a57e4,1,0,865d76f7-db4a-4fa2-8e1c-3ecbc2d8faf4,865d76f7-db4a-4fa2-8e1c-3ecbc2d8faf4,1,0,706c421a-74ce-4985-9443-b4a2032481f6,706c421a-74ce-4985-9443-b4a2032481f6,1,0,64da4c24-4aaf-42c8-8595-7f60ff3bc344,64da4c24-4aaf-42c8-8595-7f60ff3bc344,1,0,fb9577e1-00d9-4d52-8de9-23914929a683,fb9577e1-00d9-4d52-8de9-23914929a683,1,0,ffd62a16-f2b4-4e3a-8849-15b957a3d1a1,ffd62a16-f2b4-4e3a-8849-15b957a3d1a1,1,0,529253ae-9c92-4426-b150-8444ba622f89,529253ae-9c92-4426-b150-8444ba622f89,1,0,06a1955a-2ef0-4607-9dcb-a480a7951af7,06a1955a-2ef0-4607-9dcb-a480a7951af7,1,0,6f8fcc96-bfed-444a-908d-95c5b1c64972,6f8fcc96-bfed-444a-908d-95c5b1c64972,1,0,97ce4bf2-6580-4f27-8b5d-d60b66a09c9e,97ce4bf2-6580-4f27-8b5d-d60b66a09c9e,1,0,a84c89d9-2cfe-405f-9bb0-5392b3171695,a84c89d9-2cfe-405f-9bb0-5392b3171695,1,0,070ecbfe-88d6-4de8-b236-e7eedbc3ebc6,070ecbfe-88d6-4de8-b236-e7eedbc3ebc6,1,0,91e26e73-027f-4a10-9083-e5182e768723,91e26e73-027f-4a10-9083-e5182e768723,1,0,e55680f4-cb1a-4cdb-88f0-5d82f43c1d05,e55680f4-cb1a-4cdb-88f0-5d82f43c1d05,1,0,54433668-4391-4dea-8baf-43e9aa1d624e,54433668-4391-4dea-8baf-43e9aa1d624e,1,0,fc309616-060a-42c3-8401-dfef0f359bc5,fc309616-060a-42c3-8401-dfef0f359bc5,1,0,b968398d-973d-4643-95a5-16633d7e48bc,b968398d-973d-4643-95a5-16633d7e48bc,1,0,b9507495-2536-4895-b68b-62acd74343f6,b9507495-2536-4895-b68b-62acd74343f6,1,0,e05a14cc-9051-4c38-9725-19856e36d260,e05a14cc-9051-4c38-9725-19856e36d260,1,0,8154aa0f-ecd6-4ab0-9498-56ef25486a55,8154aa0f-ecd6-4ab0-9498-56ef25486a55,1,0,9d6429f7-23da-4596-822a-04818deb3088,9d6429f7-23da-4596-822a-04818deb3088,1,0,a1b67bd2-3220-497d-b2b4-bd0ea62d9111,a1b67bd2-3220-497d-b2b4-bd0ea62d9111,1,0,acb533e7-4610-4f92-b548-1a4ff1a423d4,acb533e7-4610-4f92-b548-1a4ff1a423d4,1,0,8697999d-9cdb-43d8-979b-3f283daffdd3,8697999d-9cdb-43d8-979b-3f283daffdd3,1,0,23378687-249c-4ec6-99b8-b13fb04b8643,23378687-249c-4ec6-99b8-b13fb04b8643,1,0,66315b12-7abf-46e0-a994-894b827b1301,66315b12-7abf-46e0-a994-894b827b1301,1,0,dba174fb-8392-4451-8069-ae8145658e34,dba174fb-8392-4451-8069-ae8145658e34,1,0,ff5dd4f8-8a16-4a41-875d-c4f7c37ae67a,ff5dd4f8-8a16-4a41-875d-c4f7c37ae67a,1,0,4435d99d-a1df-43e6-97ab-5e651017c61d,4435d99d-a1df-43e6-97ab-5e651017c61d,1,0,2398d69d-ecdd-4d34-bdae-34ed5507a61e,2398d69d-ecdd-4d34-bdae-34ed5507a61e,1,0,a707035a-0172-4b55-b589-fa4a8be9b596,a707035a-0172-4b55-b589-fa4a8be9b596,1,0,c4456e94-8c76-49b1-b85a-433e0f65bdb0,c4456e94-8c76-49b1-b85a-433e0f65bdb0,1,0,4a347209-3a07-48ea-b407-6ee37f1d69f2,4a347209-3a07-48ea-b407-6ee37f1d69f2,1,0,d6aed0fd-686c-430d-b884-74494177422e,d6aed0fd-686c-430d-b884-74494177422e,1,0,245ec4aa-ed65-41f7-b0f0-f8085cfc5bef,245ec4aa-ed65-41f7-b0f0-f8085cfc5bef,1,0,3ed64288-8bf0-4049-8d44-1b424f31d40f,3ed64288-8bf0-4049-8d44-1b424f31d40f,1,0,e0a3fab1-3fe9-4927-840e-f983f72bdfc1,e0a3fab1-3fe9-4927-840e-f983f72bdfc1,1,0,df31eee8-387d-40d1-98df-1f7d8176b50e,df31eee8-387d-40d1-98df-1f7d8176b50e,1,0,c8364283-5525-4bef-8e96-abced54c6a4a,c8364283-5525-4bef-8e96-abced54c6a4a,1,0,bcc25539-c6ca-40d0-84fd-53c3caf1aec7,bcc25539-c6ca-40d0-84fd-53c3caf1aec7,1,0,577f2671-7d38-4806-b7ff-840d649e6d69,577f2671-7d38-4806-b7ff-840d649e6d69,1,0,4ff9376e-ffa6-48f3-bf26-b55ceb23da09,4ff9376e-ffa6-48f3-bf26-b55ceb23da09,1,0,de4c339a-a3cf-4b30-bcf2-ce86f5c2d3b0,de4c339a-a3cf-4b30-bcf2-ce86f5c2d3b0,1,0,40e2fb30-bb03-4178-a8eb-ddf48337ef23,40e2fb30-bb03-4178-a8eb-ddf48337ef23,1,0,1026fbcb-acd8-40dc-b638-6e02c6378c55,1026fbcb-acd8-40dc-b638-6e02c6378c55,1,0,dc9e2ba6-f4f1-493f-9054-cac633f239dd,dc9e2ba6-f4f1-493f-9054-cac633f239dd,1,0,7b95d0b1-c7b2-43b4-9119-320cb8912032,7b95d0b1-c7b2-43b4-9119-320cb8912032,1,0,004582b7-00aa-405e-8e24-ce76c945edae,004582b7-00aa-405e-8e24-ce76c945edae,1,0,97a9b005-a836-4308-8e63-0e00f6890baa,97a9b005-a836-4308-8e63-0e00f6890baa,1,0,98c34ada-0b78-41db-9183-6d7b9e466bde,98c34ada-0b78-41db-9183-6d7b9e466bde,1,0,fb688339-918e-40a1-8721-a26f3077973e,fb688339-918e-40a1-8721-a26f3077973e,1,0,1f56de63-81eb-4de5-ad20-01cb6f84e5b0,1f56de63-81eb-4de5-ad20-01cb6f84e5b0,1,0,079ba95c-8293-47e2-b8bd-7acf73c2d880,079ba95c-8293-47e2-b8bd-7acf73c2d880,1,0,fbe1dcf7-c11d-4395-ab3a-c2f986c25419,fbe1dcf7-c11d-4395-ab3a-c2f986c25419,1,0,a5f264a8-a547-4653-abb1-eb1666d527dc,a5f264a8-a547-4653-abb1-eb1666d527dc,1,0,dabae379-6356-497a-aab5-cf102f16a72a,dabae379-6356-497a-aab5-cf102f16a72a,1,0,337370e0-1021-4887-9d38-6c3833c90a5b,337370e0-1021-4887-9d38-6c3833c90a5b,1,0,0ff569eb-d5b8-4ab1-ac77-5e5afd6d44d0,0ff569eb-d5b8-4ab1-ac77-5e5afd6d44d0,1,0,d6f01f1c-801b-4776-ae11-48236103f76a,d6f01f1c-801b-4776-ae11-48236103f76a,1,0,b6fe68cf-657b-40e0-af2e-247607a86519,b6fe68cf-657b-40e0-af2e-247607a86519,1,0,9b0b8191-94b7-428f-be86-e9e4cd24a72f,9b0b8191-94b7-428f-be86-e9e4cd24a72f,1,0,a923dbcb-7146-4445-ad17-f4a32c16a837,a923dbcb-7146-4445-ad17-f4a32c16a837,1,0,41dec792-1d1a-4e06-a54b-a86193b98225,41dec792-1d1a-4e06-a54b-a86193b98225,1,0,52257beb-3e0c-4681-b430-9690398cd13a,52257beb-3e0c-4681-b430-9690398cd13a,1,0,135e637c-c28e-4547-8da2-d897dca54cb2,135e637c-c28e-4547-8da2-d897dca54cb2,1,0,245be006-6d0a-4c9e-97c5-f3c2ddd734f7,245be006-6d0a-4c9e-97c5-f3c2ddd734f7,1,0,56d97df6-9c8b-4fc5-a7a6-52107d38dcd5,56d97df6-9c8b-4fc5-a7a6-52107d38dcd5,1,0,a0b74de9-06b5-416c-9dd0-2f9dc209fe91,a0b74de9-06b5-416c-9dd0-2f9dc209fe91,1,0,5356543a-db9a-4265-b83f-31d45544c8e6,5356543a-db9a-4265-b83f-31d45544c8e6,1,0,857dd311-9c6d-4dba-82d8-283d7b05b09e,857dd311-9c6d-4dba-82d8-283d7b05b09e,1,0,1055d15b-8cb5-4ff0-a526-7fd20a08a96c,1055d15b-8cb5-4ff0-a526-7fd20a08a96c,1,0,8064eb3a-d56c-4517-9db0-b7300149c7c4,8064eb3a-d56c-4517-9db0-b7300149c7c4,1,0,fe926c88-d792-4db3-abcf-3c94dfdcc407,fe926c88-d792-4db3-abcf-3c94dfdcc407,1,0,bcbdba9e-0b29-4ea7-a7d5-1de819bf86ec,bcbdba9e-0b29-4ea7-a7d5-1de819bf86ec,1,0,e0c51555-1614-4aa7-a075-c5e1251579ba,e0c51555-1614-4aa7-a075-c5e1251579ba,1,0,c75a1c6d-fa33-4b57-b359-6253aff5f3e7,c75a1c6d-fa33-4b57-b359-6253aff5f3e7,1,0,af88ea84-5742-4c9f-9a02-6d0f25186f72,af88ea84-5742-4c9f-9a02-6d0f25186f72,1,0,51363236-c8eb-4eb7-9692-5c18edc9a5a8,51363236-c8eb-4eb7-9692-5c18edc9a5a8,1,0,cb65fbad-69a0-47d8-b4a9-da49274c3eb7,cb65fbad-69a0-47d8-b4a9-da49274c3eb7,1,0,872521e3-413c-45ac-a6ea-39fe1324bae8,872521e3-413c-45ac-a6ea-39fe1324bae8,1,0,8cad6cfd-91d0-4563-800a-d60c8a1b6a03,8cad6cfd-91d0-4563-800a-d60c8a1b6a03,1,0,81ef02df-498d-4af0-8254-dc6730cbf140,81ef02df-498d-4af0-8254-dc6730cbf140,1,0,79ad09ba-875a-46bd-9cd9-9d084bf4f6ea,79ad09ba-875a-46bd-9cd9-9d084bf4f6ea,1,0,2902460a-ed86-41cf-8e8f-895adab9a72f,2902460a-ed86-41cf-8e8f-895adab9a72f,1,0,c4968b4e-0715-43a5-92ad-c8cd276fbf7b,c4968b4e-0715-43a5-92ad-c8cd276fbf7b,1,0,402f2fe0-4d08-4701-9c8f-0c2bb75815ef,402f2fe0-4d08-4701-9c8f-0c2bb75815ef,1,0,1a4ed7cf-3294-4a5c-9650-75b61d6b2531,1a4ed7cf-3294-4a5c-9650-75b61d6b2531,1,0,d6b72e00-018a-4fdc-b6a4-06dcecf89809,d6b72e00-018a-4fdc-b6a4-06dcecf89809,1,0,9f816562-57f0-473f-8c85-14f7521ffd7f,9f816562-57f0-473f-8c85-14f7521ffd7f,1,0,917b0acc-88fe-4afc-b19b-6da69e060393,917b0acc-88fe-4afc-b19b-6da69e060393,1,0,a091b76e-8ba4-4534-bbb0-9990e69b8603,a091b76e-8ba4-4534-bbb0-9990e69b8603,1,0,867ee5d2-7566-4052-a311-b56e7e46b90d,867ee5d2-7566-4052-a311-b56e7e46b90d,1,0,f82d5bd6-4c74-4c23-978c-565aae3d752a,f82d5bd6-4c74-4c23-978c-565aae3d752a,1,0,7fba41a5-4faa-412b-b367-b30ced0314c0,7fba41a5-4faa-412b-b367-b30ced0314c0,1,0,98422d20-9a71-40e4-966e-6958d44eaefb,98422d20-9a71-40e4-966e-6958d44eaefb,1,0,37333d0b-3589-4b8b-bf6c-e605e0287b66,37333d0b-3589-4b8b-bf6c-e605e0287b66,1,0,1813c469-da20-46a6-8947-6815b66f64c1,1813c469-da20-46a6-8947-6815b66f64c1,1,0,64e702e9-8934-4356-a1b2-be0e8b390630,64e702e9-8934-4356-a1b2-be0e8b390630,1,0,74880ac4-bdd3-48e6-82a0-a2103da42723,74880ac4-bdd3-48e6-82a0-a2103da42723,1,0,ad083c26-7461-4e94-b524-0174242fbd91,ad083c26-7461-4e94-b524-0174242fbd91,1,0,5ce39370-f918-493f-bb24-53346b6fd836,5ce39370-f918-493f-bb24-53346b6fd836,1,0,84f22fd2-e0d0-42ce-8628-1b13c021a4cb,84f22fd2-e0d0-42ce-8628-1b13c021a4cb,1,0,0e3d2750-bb4c-42b9-9829-60f1480ced9c,0e3d2750-bb4c-42b9-9829-60f1480ced9c,1,0,d1b6c5e8-7625-43aa-bb11-943c9bfa01b7,d1b6c5e8-7625-43aa-bb11-943c9bfa01b7,1,0,dad11c2e-08fc-4a6b-8829-8be6c64c15fc,dad11c2e-08fc-4a6b-8829-8be6c64c15fc,1,0,a76b1fd1-ba00-40e6-8756-f17fee449818,a76b1fd1-ba00-40e6-8756-f17fee449818,1,0,5c913626-48d1-4e0a-a423-64078ce59c7b,5c913626-48d1-4e0a-a423-64078ce59c7b,1,0,0a4e6b7a-b380-4547-bc3c-5d6895a5d19a,0a4e6b7a-b380-4547-bc3c-5d6895a5d19a,1,0,7b0ec304-1904-413e-a9c6-ff62e87107dd,7b0ec304-1904-413e-a9c6-ff62e87107dd,1,0,d4dd8c96-914d-496f-b735-ef85ec473605,d4dd8c96-914d-496f-b735-ef85ec473605,1,0,62517db4-59e6-4945-bcd6-b3f1845572bf,62517db4-59e6-4945-bcd6-b3f1845572bf,1,0,a6a9dd40-24cd-4d40-a12d-44f94f8c05a7,a6a9dd40-24cd-4d40-a12d-44f94f8c05a7,1,0,f0f72149-0e7f-441a-b70d-8f47d4977927,f0f72149-0e7f-441a-b70d-8f47d4977927,1,0,776efc3e-ac27-4550-bafd-6e91aa987af2,776efc3e-ac27-4550-bafd-6e91aa987af2,1,0,9f478c85-b72c-40ae-aa08-7ddf73b5b15c,9f478c85-b72c-40ae-aa08-7ddf73b5b15c,1,0,cc438366-85ea-48be-8b74-d05cddb1fc51,cc438366-85ea-48be-8b74-d05cddb1fc51,1,0,4688fd3b-4a92-4ed8-b111-0cf22a729b1c,4688fd3b-4a92-4ed8-b111-0cf22a729b1c,1,0,92029d1f-0472-4aaa-8fd6-9fb3c3cf414e,92029d1f-0472-4aaa-8fd6-9fb3c3cf414e,1,0,3271b800-1825-422f-97bb-757baf403e90,3271b800-1825-422f-97bb-757baf403e90,1,0,6fd6efc1-facc-4ece-a5b3-3dce6acca81d,6fd6efc1-facc-4ece-a5b3-3dce6acca81d,1,0,4ee82868-7a20-4c3a-91f9-42a6bf53ac37,4ee82868-7a20-4c3a-91f9-42a6bf53ac37,1,0,a040c756-4687-4bfd-a690-b122d3c490e5,a040c756-4687-4bfd-a690-b122d3c490e5,1,0,bd5940d5-13fd-4f59-bb6c-614f93f9c8e4,bd5940d5-13fd-4f59-bb6c-614f93f9c8e4,1,0,961a9801-3956-4ea0-b0d3-908f09bf4929,961a9801-3956-4ea0-b0d3-908f09bf4929,1,0,6fac5c14-e126-4342-9078-edf1d0efcbf2,6fac5c14-e126-4342-9078-edf1d0efcbf2,1,0,0a3325a1-21c4-4997-882f-4ac2edc175f0,0a3325a1-21c4-4997-882f-4ac2edc175f0,1,0,71102d3f-f020-4d6f-9582-9a7eefb4e797,71102d3f-f020-4d6f-9582-9a7eefb4e797,1,0,53ef6849-a3f3-4171-9167-f349f2d6a736,53ef6849-a3f3-4171-9167-f349f2d6a736,1,0,3f588bd3-d461-42b7-8ab1-386af6399d56,3f588bd3-d461-42b7-8ab1-386af6399d56,1,0,c04ff85e-b4af-4a9f-b0e9-c5c65e3d10a1,c04ff85e-b4af-4a9f-b0e9-c5c65e3d10a1,1,0,8c576405-29c1-46b1-ab2e-40e52c21cab0,8c576405-29c1-46b1-ab2e-40e52c21cab0,1,0,b33a89da-8589-4902-83fa-6545e5fce23e,b33a89da-8589-4902-83fa-6545e5fce23e,1,0,f0620d5a-e1fe-419f-af37-e0f462f97e8d,f0620d5a-e1fe-419f-af37-e0f462f97e8d,1,0,3e2f2ae1-c809-43fc-8276-b0a16a92858c,3e2f2ae1-c809-43fc-8276-b0a16a92858c,1,0,b58942ca-1367-4e1d-b5b4-7d973d0fecd8,b58942ca-1367-4e1d-b5b4-7d973d0fecd8,1,0,1a7c7427-bead-4655-9dd6-df6e722663c5,1a7c7427-bead-4655-9dd6-df6e722663c5,1,0,3ad08f4a-6202-4099-b6cc-bc116e6731a0,3ad08f4a-6202-4099-b6cc-bc116e6731a0,1,0,fd96c8ab-602a-4735-b168-52b501e80351,fd96c8ab-602a-4735-b168-52b501e80351,1,0,b1dc619d-8d91-4f7a-aa50-1d07ff9aebdc,b1dc619d-8d91-4f7a-aa50-1d07ff9aebdc,1,0,370f0c75-d2c5-4be5-a633-4bcc77998ece,370f0c75-d2c5-4be5-a633-4bcc77998ece,1,0,f80b505f-b4ff-45fb-bd88-74b274ae9d2b,f80b505f-b4ff-45fb-bd88-74b274ae9d2b,1,0,2139532c-f6cb-4393-936e-cc912e5adca9,2139532c-f6cb-4393-936e-cc912e5adca9,1,0,755c3eca-4956-4a44-9b38-c11dae00b87f,755c3eca-4956-4a44-9b38-c11dae00b87f,1,0,f57c558c-2c94-4b9d-8697-448d0548ab1a,f57c558c-2c94-4b9d-8697-448d0548ab1a,1,0,a310c09f-4d3a-4d3a-9ad5-7a5735a33a1d,a310c09f-4d3a-4d3a-9ad5-7a5735a33a1d,1,0,c32db021-eca1-4b67-aa85-3d6e28c51b53,c32db021-eca1-4b67-aa85-3d6e28c51b53,1,0,e9ed0ee4-3fbe-4093-9078-cb265ed6842c,e9ed0ee4-3fbe-4093-9078-cb265ed6842c,1,0,02466dcf-02a1-4853-814f-a913a9baba45,02466dcf-02a1-4853-814f-a913a9baba45,1,0,c4a40dc9-b619-4219-9d9a-e11f49a14fb1,c4a40dc9-b619-4219-9d9a-e11f49a14fb1,1,0,62b75eb2-42e1-4484-a77f-b676dd36f3d4,62b75eb2-42e1-4484-a77f-b676dd36f3d4,1,0,5e28e22a-dd6e-4703-92bd-13f5cb0dc023,5e28e22a-dd6e-4703-92bd-13f5cb0dc023,1,0,856510ee-74f5-44e9-a3c0-1c60cfb7a787,856510ee-74f5-44e9-a3c0-1c60cfb7a787,1,0,28b761c6-c286-4125-a4ed-da602e49950f,28b761c6-c286-4125-a4ed-da602e49950f,1,0,4ac66a22-c736-4e06-a8aa-ef4a71788c65,4ac66a22-c736-4e06-a8aa-ef4a71788c65,1,0,9cfe9281-8840-4077-824d-a2c9cbb0b730,9cfe9281-8840-4077-824d-a2c9cbb0b730,1,0,76389fa9-b9e0-492e-9c93-24b5f3bf094c,76389fa9-b9e0-492e-9c93-24b5f3bf094c,1,0,23e3de37-9315-45e6-bbfd-60aae28c25ae,23e3de37-9315-45e6-bbfd-60aae28c25ae,1,0,a9957f43-8b6f-4d98-a2d8-77b78047494c,a9957f43-8b6f-4d98-a2d8-77b78047494c,1,0,e470e15d-1b06-43cb-a9f9-ba489e2f596f,e470e15d-1b06-43cb-a9f9-ba489e2f596f,1,0,0408002c-9255-43a2-8022-82f02ee0e8f4,0408002c-9255-43a2-8022-82f02ee0e8f4,1,0,88f44c9b-216d-4d7e-bc88-1e6b253ed01e,88f44c9b-216d-4d7e-bc88-1e6b253ed01e,1,0,1851afd4-5324-45c1-b754-54e65943f945,1851afd4-5324-45c1-b754-54e65943f945,1,0,bc5eca9b-32d8-44e0-a127-8ad1f47d7957,bc5eca9b-32d8-44e0-a127-8ad1f47d7957,1,0,6e5307ea-8fbf-4177-bcc8-f163a6ce1b40,6e5307ea-8fbf-4177-bcc8-f163a6ce1b40,1,0,0fa77ef7-a836-4459-9bca-6010d0bdfc7f,0fa77ef7-a836-4459-9bca-6010d0bdfc7f,1,0,c322dc4a-30f3-4d23-9824-4a01c496408d,c322dc4a-30f3-4d23-9824-4a01c496408d,1,0,dcff004c-1b61-4a19-b977-ea21bf688614,dcff004c-1b61-4a19-b977-ea21bf688614,0,0,0,1,0,0,0,1,0,1,0,1,1,1,1} \ No newline at end of file diff --git a/SSL/src/Constants/АдресПубликацииИнформационнойБазыВЛокальнойСети/АдресПубликацииИнформационнойБазыВЛокальнойСети.mdo b/SSL/src/Constants/АдресПубликацииИнформационнойБазыВЛокальнойСети/АдресПубликацииИнформационнойБазыВЛокальнойСети.mdo new file mode 100644 index 000000000..6da1697f8 --- /dev/null +++ b/SSL/src/Constants/АдресПубликацииИнформационнойБазыВЛокальнойСети/АдресПубликацииИнформационнойБазыВЛокальнойСети.mdo @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:Constant xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="e693cdd0-8ead-4ba5-adec-86bab74ee7cd"> + <producedTypes> + <managerType typeId="8241086d-b429-4a07-ad6e-7ab816dbe6f3" valueTypeId="deec5565-2b36-46bb-b019-3b3099c5aee0"/> + <valueManagerType typeId="6b5919cd-b8af-4140-b10e-6779bbd58b2a" valueTypeId="fdeb7ae9-8170-4e0c-a8a3-5c197b487f0b"/> + <valueKeyType typeId="442a3e8f-529e-50d0-90d9-326dfaafa28e" valueTypeId="31e90d55-abab-54a6-b418-5e6a79149593"/> + </producedTypes> + <name>АдресПубликацииИнформационнойБазыВЛокальнойСети</name> + <synonym> + <key>ru</key> + <value>Адрес публикации информационной базы в локальной сети</value> + </synonym> + <type> + <types>String</types> + <stringQualifiers> + <length>250</length> + </stringQualifiers> + </type> + <useStandardCommands>true</useStandardCommands> + <minValue xsi:type="core:UndefinedValue"/> + <maxValue xsi:type="core:UndefinedValue"/> + <dataLockControlMode>Managed</dataLockControlMode> +</mdclass:Constant> diff --git a/SSL/src/Constants/ВыполнятьЗамерыПроизводительности/ValueManagerModule.bsl b/SSL/src/Constants/ВыполнятьЗамерыПроизводительности/ValueManagerModule.bsl new file mode 100644 index 000000000..5c2e46b1a --- /dev/null +++ b/SSL/src/Constants/ВыполнятьЗамерыПроизводительности/ValueManagerModule.bsl @@ -0,0 +1,22 @@ +#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда + +#Область ОбработчикиСобытий + +Процедура ПриЗаписи(Отказ) + + Если ОбменДанными.Загрузка Тогда + Возврат; + КонецЕсли; + + РегЗадание = РегламентныеЗадания.НайтиПредопределенное(Метаданные.РегламентныеЗадания.ОчисткаЗамеровВремени); + + Если РегЗадание <> Неопределено Тогда + РегЗадание.Использование = ЭтотОбъект.Значение; + РегЗадание.Записать(); + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#КонецЕсли \ No newline at end of file diff --git a/SSL/src/Constants/ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков/ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков.mdo b/SSL/src/Constants/ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков/ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков.mdo new file mode 100644 index 000000000..feb08507b --- /dev/null +++ b/SSL/src/Constants/ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков/ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков.mdo @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:Constant xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="23abf9ba-63f9-4173-a9ce-3cbdf1ec3a52"> + <producedTypes> + <managerType typeId="0e537b85-a376-44eb-af6b-0c2bb741d450" valueTypeId="3e55647b-8274-47b7-9e36-7c174444717f"/> + <valueManagerType typeId="adb4b47b-38fd-4ea6-86b9-a65665578143" valueTypeId="6adc1482-fc63-4d0f-a48e-0dddb9b04ceb"/> + <valueKeyType typeId="70fa428b-c2dd-5440-8553-a2b9dc2fe6b1" valueTypeId="92b644e5-9a31-5ac6-803e-295a818c5967"/> + </producedTypes> + <name>ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков</name> + <synonym> + <key>ru</key> + <value>Использовать альтернативный сервер для загрузки классификатора банков</value> + </synonym> + <type> + <types>Boolean</types> + </type> + <useStandardCommands>true</useStandardCommands> + <minValue xsi:type="core:UndefinedValue"/> + <maxValue xsi:type="core:UndefinedValue"/> + <dataLockControlMode>Managed</dataLockControlMode> +</mdclass:Constant> diff --git a/SSL/src/Constants/ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют/ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют.mdo b/SSL/src/Constants/ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют/ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют.mdo new file mode 100644 index 000000000..8a12138e7 --- /dev/null +++ b/SSL/src/Constants/ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют/ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют.mdo @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:Constant xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="973609a2-5b5d-45c4-9606-a13d0de1a09b"> + <producedTypes> + <managerType typeId="00be9844-55b2-4755-8a36-ab65effb6ef9" valueTypeId="923787b4-f632-4b7c-9dff-3bda143e0775"/> + <valueManagerType typeId="74c169cd-83b1-41ba-8b29-400cb86e61a9" valueTypeId="d1499be9-1b8d-4b16-a7ad-6786d9fe8656"/> + <valueKeyType typeId="aab747cf-3d6f-5811-af52-ec6c3b6873ce" valueTypeId="302e360a-0b57-5cf8-ad72-4b6c3036a68e"/> + </producedTypes> + <name>ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют</name> + <synonym> + <key>ru</key> + <value>Использовать альтернативный сервер для загрузки курсов валют</value> + </synonym> + <type> + <types>Boolean</types> + </type> + <useStandardCommands>true</useStandardCommands> + <minValue xsi:type="core:UndefinedValue"/> + <maxValue xsi:type="core:UndefinedValue"/> + <dataLockControlMode>Managed</dataLockControlMode> +</mdclass:Constant> diff --git a/SSL/src/Constants/ИспользоватьДатуИВремяВСрокахЗадач/ValueManagerModule.bsl b/SSL/src/Constants/ИспользоватьДатуИВремяВСрокахЗадач/ValueManagerModule.bsl new file mode 100644 index 000000000..518bd86f1 --- /dev/null +++ b/SSL/src/Constants/ИспользоватьДатуИВремяВСрокахЗадач/ValueManagerModule.bsl @@ -0,0 +1,71 @@ +#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда + +#Область ОбработчикиСобытий + +Процедура ПриЗаписи(Отказ) + + Если ОбменДанными.Загрузка Тогда + Возврат; + КонецЕсли; + + Использование = Константы.ИспользоватьБизнесПроцессыИЗадачи.Получить(); + + ПараметрыПоиска = Новый Структура; + ПараметрыПоиска.Вставить("ИмяМетода", Метаданные.РегламентныеЗадания.СтартОтложенныхПроцессов.ИмяМетода); + СписокЗаданий = РегламентныеЗаданияСервер.НайтиЗадания(ПараметрыПоиска); + + Если СписокЗаданий.Количество() = 0 Тогда + ПараметрыЗадания = Новый Структура("Использование", Использование); + УстановитьРасписание(ЭтотОбъект.Значение, ПараметрыЗадания); + РегламентныеЗаданияСервер.ДобавитьЗадание(ПараметрыЗадания); + Возврат; + КонецЕсли; + + Для Каждого Задание Из СписокЗаданий Цикл + + ПараметрыЗадания = Новый Структура("Использование", Использование); + Если Использование Тогда + Если ЭтотОбъект.Значение Тогда + Если Задание.Расписание.ВремяНачала = Дата("00010101070000") + ИЛИ Задание.Расписание.ВремяНачала = Дата("00010101000000") Тогда + УстановитьРасписание(ЭтотОбъект.Значение, ПараметрыЗадания); + КонецЕсли; + Иначе + Если Задание.Расписание.ПериодПовтораВТечениеДня = 900 + ИЛИ Задание.Расписание.ВремяНачала = Дата("00010101000000") Тогда + УстановитьРасписание(ЭтотОбъект.Значение, ПараметрыЗадания); + КонецЕсли; + КонецЕсли; + КонецЕсли; + + РегламентныеЗаданияСервер.ИзменитьЗадание(Задание, ПараметрыЗадания); + КонецЦикла; + +КонецПроцедуры + + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +Процедура УстановитьРасписание(ИспользоватьВремяВСрокахЗадач, ПараметрыЗадания) + + Расписание = Новый РасписаниеРегламентногоЗадания; + + Если ИспользоватьВремяВСрокахЗадач Тогда + Расписание.ПериодПовтораВТечениеДня = 900; + Расписание.ВремяНачала = Дата("00000000"); + Расписание.ПериодПовтораДней = 1; + Иначе + Расписание.ПериодПовтораВТечениеДня = 0; + Расписание.ВремяНачала = Дата("00010101070000"); + Расписание.ПериодПовтораДней = 1; + КонецЕсли; + + ПараметрыЗадания.Вставить("Расписание", Расписание); + +КонецПроцедуры + +#КонецОбласти + +#КонецЕсли diff --git a/SSL/src/Constants/ИспользоватьДополнительныеРеквизитыИСведения/ValueManagerModule.bsl b/SSL/src/Constants/ИспользоватьДополнительныеРеквизитыИСведения/ValueManagerModule.bsl index f1bf0f342..5778bdf9f 100644 --- a/SSL/src/Constants/ИспользоватьДополнительныеРеквизитыИСведения/ValueManagerModule.bsl +++ b/SSL/src/Constants/ИспользоватьДополнительныеРеквизитыИСведения/ValueManagerModule.bsl @@ -29,6 +29,12 @@ МодульУправлениеДоступом = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступом"); МодульУправлениеДоступом.ОбновитьРазрешенныеЗначенияПриИзмененииИспользованияВидовДоступа(); КонецЕсли; + + Если Значение = Ложь Тогда + Константы.ИспользоватьОбщиеДополнительныеЗначения.Установить(Ложь); + Константы.ИспользоватьОбщиеДополнительныеРеквизитыИСведения.Установить(Ложь); + КонецЕсли; + КонецЕсли; КонецПроцедуры diff --git a/SSL/src/Constants/ИспользоватьНесколькоОрганизаций/ValueManagerModule.bsl b/SSL/src/Constants/ИспользоватьНесколькоОрганизаций/ValueManagerModule.bsl deleted file mode 100644 index 548380b0a..000000000 --- a/SSL/src/Constants/ИспользоватьНесколькоОрганизаций/ValueManagerModule.bsl +++ /dev/null @@ -1,19 +0,0 @@ -#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда - -#Область ОбработчикиСобытий - -Процедура ПриЗаписи(Отказ) - - Если ОбменДанными.Загрузка Тогда - Возврат; - КонецЕсли; - - УстановитьПривилегированныйРежим(Истина); - - Константы.НеИспользоватьНесколькоОрганизаций.Установить(НЕ ЭтотОбъект.Значение); - -КонецПроцедуры - -#КонецОбласти - -#КонецЕсли diff --git a/SSL/src/Constants/ИспользоватьНесколькоОрганизаций/ИспользоватьНесколькоОрганизаций.mdo b/SSL/src/Constants/ИспользоватьНесколькоОрганизаций/ИспользоватьНесколькоОрганизаций.mdo deleted file mode 100644 index 707538347..000000000 --- a/SSL/src/Constants/ИспользоватьНесколькоОрганизаций/ИспользоватьНесколькоОрганизаций.mdo +++ /dev/null @@ -1,19 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<mdclass:Constant xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="b1b5841d-0cf9-4de5-8561-b35b8f286d21"> - <producedTypes> - <managerType typeId="b76433d4-51a0-4d53-8774-7c40f5f21b50" valueTypeId="e2965015-dc01-4318-bc3e-a5b6b14a064e"/> - <valueManagerType typeId="6a2475be-c2ac-4780-9ac6-23b99a7db25b" valueTypeId="561d03ab-a6ee-49d5-b3ec-19177c4ec1fe"/> - <valueKeyType typeId="3413e223-c7df-563f-967f-f182063bf08e" valueTypeId="44e9237f-98e8-59bf-ba6d-c456c3344f8e"/> - </producedTypes> - <name>ИспользоватьНесколькоОрганизаций</name> - <synonym> - <key>ru</key> - <value>Использовать несколько организаций</value> - </synonym> - <type> - <types>Boolean</types> - </type> - <minValue xsi:type="core:UndefinedValue"/> - <maxValue xsi:type="core:UndefinedValue"/> - <dataLockControlMode>Managed</dataLockControlMode> -</mdclass:Constant> diff --git a/SSL/src/Catalogs/Организации/ObjectModule.bsl b/SSL/src/Constants/ИспользоватьОтправкуSMSВШаблонахСообщений/ValueManagerModule.bsl similarity index 100% rename from SSL/src/Catalogs/Организации/ObjectModule.bsl rename to SSL/src/Constants/ИспользоватьОтправкуSMSВШаблонахСообщений/ValueManagerModule.bsl diff --git a/SSL/src/Constants/ИспользоватьОтправкуSMSВШаблонахСообщений/ИспользоватьОтправкуSMSВШаблонахСообщений.mdo b/SSL/src/Constants/ИспользоватьОтправкуSMSВШаблонахСообщений/ИспользоватьОтправкуSMSВШаблонахСообщений.mdo new file mode 100644 index 000000000..87e9e6599 --- /dev/null +++ b/SSL/src/Constants/ИспользоватьОтправкуSMSВШаблонахСообщений/ИспользоватьОтправкуSMSВШаблонахСообщений.mdo @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:Constant xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="845530cd-36fb-44c3-b30a-730985c9ca2d"> + <producedTypes> + <managerType typeId="b7338f57-80fa-46ed-ad88-667a50de936c" valueTypeId="93f37375-2610-4a64-8b74-05d0b471c7cb"/> + <valueManagerType typeId="21b2bcd6-5b4e-4239-be05-4a100177a882" valueTypeId="45a80af5-90b0-4d56-95ed-75f8b581edad"/> + <valueKeyType typeId="2904b28c-1881-50d5-87f3-d7a71dda6786" valueTypeId="bc538afb-a747-5c24-b81d-674540e78d0e"/> + </producedTypes> + <name>ИспользоватьОтправкуSMSВШаблонахСообщений</name> + <synonym> + <key>ru</key> + <value>Использовать отправку SMS в шаблонах сообщений</value> + </synonym> + <type> + <types>Boolean</types> + </type> + <useStandardCommands>true</useStandardCommands> + <minValue xsi:type="core:UndefinedValue"/> + <maxValue xsi:type="core:UndefinedValue"/> + <dataLockControlMode>Managed</dataLockControlMode> +</mdclass:Constant> diff --git a/SSL/src/Constants/ИспользоватьПроверкуКонтрагентов/ValueManagerModule.bsl b/SSL/src/Constants/ИспользоватьПроверкуКонтрагентов/ValueManagerModule.bsl index 29d6abf76..27fddd10a 100644 --- a/SSL/src/Constants/ИспользоватьПроверкуКонтрагентов/ValueManagerModule.bsl +++ b/SSL/src/Constants/ИспользоватьПроверкуКонтрагентов/ValueManagerModule.bsl @@ -1,5 +1,5 @@ //////////////////////////////////////////////////////////////////////////////// -// Действия при изменении константы +// Действия при изменении константы. // //////////////////////////////////////////////////////////////////////////////// diff --git a/SSL/src/Constants/ИспользоватьШаблоныСообщений/ValueManagerModule.bsl b/SSL/src/Constants/ИспользоватьШаблоныСообщений/ValueManagerModule.bsl new file mode 100644 index 000000000..497d56343 --- /dev/null +++ b/SSL/src/Constants/ИспользоватьШаблоныСообщений/ValueManagerModule.bsl @@ -0,0 +1,25 @@ +#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда + +#Область ОбработчикиСобытий + +Процедура ПередЗаписью(Отказ) + + Если ОбменДанными.Загрузка Тогда + Возврат; + КонецЕсли; + + Если ЭтотОбъект.Значение Тогда + ДоступнаОтправкаSMS = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОтправкаSMS"); + ДоступнаРаботаСПочтовымиСообщениями = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСПочтовымиСообщениями"); + Иначе + ДоступнаОтправкаSMS = Ложь; + ДоступнаРаботаСПочтовымиСообщениями = Ложь; + КонецЕсли; + + Константы.ИспользоватьОтправкуSMSВШаблонахСообщений.Установить(ДоступнаОтправкаSMS); + Константы.ИспользоватьЭлектроннуюПочтуВШаблонахСообщений.Установить(ДоступнаРаботаСПочтовымиСообщениями); +КонецПроцедуры + +#КонецОбласти + +#КонецЕсли diff --git a/SSL/src/Constants/ИспользоватьШаблоныСообщений/ИспользоватьШаблоныСообщений.mdo b/SSL/src/Constants/ИспользоватьШаблоныСообщений/ИспользоватьШаблоныСообщений.mdo new file mode 100644 index 000000000..e1bc2d077 --- /dev/null +++ b/SSL/src/Constants/ИспользоватьШаблоныСообщений/ИспользоватьШаблоныСообщений.mdo @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:Constant xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="08552af7-3c44-42c6-94c5-63a2316127fc"> + <producedTypes> + <managerType typeId="8343e88e-d1d8-4743-bef3-789408d5426a" valueTypeId="216b341a-e62d-4a0a-b4cf-9b200b5b9e65"/> + <valueManagerType typeId="ece9006d-59db-41b4-85d8-efbc09543ef0" valueTypeId="b2278a78-8c98-4a38-a708-50d55e0a984c"/> + <valueKeyType typeId="291c23ae-183a-5b2f-aec6-9d6259302b1e" valueTypeId="c75d0709-7459-536c-a02f-374e0c659b3e"/> + </producedTypes> + <name>ИспользоватьШаблоныСообщений</name> + <synonym> + <key>ru</key> + <value>Использовать шаблоны сообщений</value> + </synonym> + <type> + <types>Boolean</types> + </type> + <minValue xsi:type="core:UndefinedValue"/> + <maxValue xsi:type="core:UndefinedValue"/> + <dataLockControlMode>Managed</dataLockControlMode> +</mdclass:Constant> diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/ObjectModule.bsl b/SSL/src/Constants/ИспользоватьЭлектроннуюПочтуВШаблонахСообщений/ValueManagerModule.bsl similarity index 100% rename from SSL/src/DataProcessors/ПоискИУстановкаОбновлений/ObjectModule.bsl rename to SSL/src/Constants/ИспользоватьЭлектроннуюПочтуВШаблонахСообщений/ValueManagerModule.bsl diff --git a/SSL/src/Constants/ИспользоватьЭлектроннуюПочтуВШаблонахСообщений/ИспользоватьЭлектроннуюПочтуВШаблонахСообщений.mdo b/SSL/src/Constants/ИспользоватьЭлектроннуюПочтуВШаблонахСообщений/ИспользоватьЭлектроннуюПочтуВШаблонахСообщений.mdo new file mode 100644 index 000000000..e5a4655e6 --- /dev/null +++ b/SSL/src/Constants/ИспользоватьЭлектроннуюПочтуВШаблонахСообщений/ИспользоватьЭлектроннуюПочтуВШаблонахСообщений.mdo @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:Constant xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="9f1a61dd-b04f-48ae-b0c0-17cf23bdb04b"> + <producedTypes> + <managerType typeId="c4ce87d5-5934-4c10-b547-e52371c31e3c" valueTypeId="589df104-69ba-4d72-a9ae-f51e76882b53"/> + <valueManagerType typeId="f2567a54-5a5d-4f54-9265-dd158169a29f" valueTypeId="c6c1083d-4054-41ce-9236-ec6288b23bf6"/> + <valueKeyType typeId="265cff25-2176-5e6d-baad-8e55290caf7f" valueTypeId="efb4000f-2117-575b-aebc-b8379170ab51"/> + </producedTypes> + <name>ИспользоватьЭлектроннуюПочтуВШаблонахСообщений</name> + <synonym> + <key>ru</key> + <value>Использовать электронную почту в шаблонах сообщений</value> + </synonym> + <type> + <types>Boolean</types> + </type> + <useStandardCommands>true</useStandardCommands> + <minValue xsi:type="core:UndefinedValue"/> + <maxValue xsi:type="core:UndefinedValue"/> + <dataLockControlMode>Managed</dataLockControlMode> +</mdclass:Constant> diff --git a/SSL/src/Constants/КоличествоЗамеровВПакетеЭкспорта/КоличествоЗамеровВПакетеЭкспорта.mdo b/SSL/src/Constants/КоличествоЗамеровВПакетеЭкспорта/КоличествоЗамеровВПакетеЭкспорта.mdo new file mode 100644 index 000000000..f9f3abd2a --- /dev/null +++ b/SSL/src/Constants/КоличествоЗамеровВПакетеЭкспорта/КоличествоЗамеровВПакетеЭкспорта.mdo @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:Constant xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="657b8663-713c-4a80-81e1-8c0166742a35"> + <producedTypes> + <managerType typeId="63fb4f80-2811-4c39-8471-95659e7d443a" valueTypeId="d374ba0a-cbb9-48f2-aa5d-a88a4ffec9d8"/> + <valueManagerType typeId="fb1442e2-cf89-4126-8eb9-36f63c4d0e51" valueTypeId="b7642b77-fbfc-4f6d-8f7d-28be36f639f8"/> + <valueKeyType typeId="9294745c-d924-5620-8539-746b7f412282" valueTypeId="185af18e-dc6b-59e5-a651-c0be8ddafaee"/> + </producedTypes> + <name>КоличествоЗамеровВПакетеЭкспорта</name> + <synonym> + <key>ru</key> + <value>Количество замеров в пакете экспорта</value> + </synonym> + <type> + <types>Number</types> + <numberQualifiers> + <precision>10</precision> + <nonNegative>true</nonNegative> + </numberQualifiers> + </type> + <useStandardCommands>true</useStandardCommands> + <minValue xsi:type="core:UndefinedValue"/> + <maxValue xsi:type="core:UndefinedValue"/> + <dataLockControlMode>Managed</dataLockControlMode> +</mdclass:Constant> diff --git a/SSL/src/Constants/НеИспользоватьНесколькоОрганизаций/НеИспользоватьНесколькоОрганизаций.mdo b/SSL/src/Constants/НеИспользоватьНесколькоОрганизаций/НеИспользоватьНесколькоОрганизаций.mdo deleted file mode 100644 index 005c7781c..000000000 --- a/SSL/src/Constants/НеИспользоватьНесколькоОрганизаций/НеИспользоватьНесколькоОрганизаций.mdo +++ /dev/null @@ -1,19 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<mdclass:Constant xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="3a2d9324-8260-478d-ad62-a964d860cb8f"> - <producedTypes> - <managerType typeId="16e0c106-f466-4497-98f8-050ea8ee4750" valueTypeId="738ecaa1-b40e-46d4-a53b-1f355ac1a877"/> - <valueManagerType typeId="b99b34c5-5a51-4538-9a26-f459086d8d0e" valueTypeId="844e97bd-8d1a-48ec-a7bf-4d117402c056"/> - <valueKeyType typeId="661d487a-6793-5b50-aa45-af5036a5b94e" valueTypeId="6d931e3f-a5a1-5f3a-8603-ce39e6216da8"/> - </producedTypes> - <name>НеИспользоватьНесколькоОрганизаций</name> - <synonym> - <key>ru</key> - <value>Не использовать несколько организаций</value> - </synonym> - <type> - <types>Boolean</types> - </type> - <minValue xsi:type="core:UndefinedValue"/> - <maxValue xsi:type="core:UndefinedValue"/> - <dataLockControlMode>Managed</dataLockControlMode> -</mdclass:Constant> diff --git a/SSL/src/Constants/ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций/ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций.mdo b/SSL/src/Constants/ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций/ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций.mdo deleted file mode 100644 index a04cb198d..000000000 --- a/SSL/src/Constants/ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций/ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций.mdo +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<mdclass:Constant xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="c587a9f3-7512-4697-8156-c688fbb210d0"> - <producedTypes> - <managerType typeId="e8550e62-6b92-4ef5-94a2-41dba544a6ac" valueTypeId="f80b2c77-e42a-473a-bf95-cdb0915d0332"/> - <valueManagerType typeId="8c662d9b-001d-4810-841f-173929ca23f1" valueTypeId="9ecb56c9-68fd-49e1-a982-73093e8ac638"/> - <valueKeyType typeId="316426a4-eb10-53da-b08d-b3691a59a3ef" valueTypeId="0d3df254-2b27-5f42-93d8-5d6a1208fc11"/> - </producedTypes> - <name>ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций</name> - <synonym> - <key>ru</key> - <value>Оценка производительности экспорт всех ключевых операций</value> - </synonym> - <type> - <types>Boolean</types> - </type> - <useStandardCommands>true</useStandardCommands> - <toolTip> - <key>ru</key> - <value>Выполняется экспорт всех замеров ключевых операций, включая те, у которых не проставлены приоритет и целевое время</value> - </toolTip> - <minValue xsi:type="core:UndefinedValue"/> - <maxValue xsi:type="core:UndefinedValue"/> - <dataLockControlMode>Managed</dataLockControlMode> -</mdclass:Constant> diff --git a/SSL/src/Constants/ПараметрыБлокировкиРаботыСВнешнимиРесурсами/ПараметрыБлокировкиРаботыСВнешнимиРесурсами.mdo b/SSL/src/Constants/ПараметрыБлокировкиРаботыСВнешнимиРесурсами/ПараметрыБлокировкиРаботыСВнешнимиРесурсами.mdo index 1ee910a4f..8e738964f 100644 --- a/SSL/src/Constants/ПараметрыБлокировкиРаботыСВнешнимиРесурсами/ПараметрыБлокировкиРаботыСВнешнимиРесурсами.mdo +++ b/SSL/src/Constants/ПараметрыБлокировкиРаботыСВнешнимиРесурсами/ПараметрыБлокировкиРаботыСВнешнимиРесурсами.mdo @@ -13,6 +13,7 @@ <type> <types>ValueStorage</types> </type> + <defaultForm>CommonForm.БлокировкаРаботыСВнешнимиРесурсами</defaultForm> <minValue xsi:type="core:UndefinedValue"/> <maxValue xsi:type="core:UndefinedValue"/> <dataLockControlMode>Managed</dataLockControlMode> diff --git a/SSL/src/Constants/ПараметрыОграниченияДоступа/ValueManagerModule.bsl b/SSL/src/Constants/ПараметрыОграниченияДоступа/ValueManagerModule.bsl index fde6e278d..d39ad50a0 100644 --- a/SSL/src/Constants/ПараметрыОграниченияДоступа/ValueManagerModule.bsl +++ b/SSL/src/Constants/ПараметрыОграниченияДоступа/ValueManagerModule.bsl @@ -30,42 +30,20 @@ Попытка Блокировка.Заблокировать(); - Параметры = СтандартныеПодсистемыСервер.ПараметрыРаботыПрограммы( - "ПараметрыОграниченияДоступа"); + Параметры = Неопределено; + ЕстьТекущиеИзменения = Ложь; + СтандартныеПодсистемыСервер.ОбновитьПараметрРаботыПрограммы("ПараметрыОграниченияДоступа", + "СвойстваВидовДоступа", СвойстваВидовДоступа, ЕстьТекущиеИзменения, ТолькоПроверка, Параметры); - Сохраненные = Неопределено; - - Если Параметры.Свойство("СвойстваВидовДоступа") Тогда - Сохраненные = Параметры.СвойстваВидовДоступа; + Если Не ТолькоПроверка Тогда + ЕстьИзмененияТиповГруппИЗначенийДоступа = ЕстьТекущиеИзменения + И (Не Параметры.Свойство("СвойстваВидовДоступа") + Или ЕстьИзмененияТиповГруппИЗначенийДоступа(СвойстваВидовДоступа, Параметры.СвойстваВидовДоступа)); - Если НЕ ОбщегоНазначения.ДанныеСовпадают(СвойстваВидовДоступа, Сохраненные) Тогда - ЕстьИзмененияТиповГруппИЗначенийДоступа = - ЕстьИзмененияТиповГруппИЗначенийДоступа(СвойстваВидовДоступа, Сохраненные); - Сохраненные = Неопределено; - КонецЕсли; - КонецЕсли; - - Если Сохраненные = Неопределено Тогда - ЕстьИзменения = Истина; - Если ТолькоПроверка Тогда - ЗафиксироватьТранзакцию(); - Возврат; - КонецЕсли; - СтандартныеПодсистемыСервер.УстановитьПараметрРаботыПрограммы( - "ПараметрыОграниченияДоступа", - "СвойстваВидовДоступа", - СвойстваВидовДоступа); - КонецЕсли; - - СтандартныеПодсистемыСервер.ПодтвердитьОбновлениеПараметраРаботыПрограммы( - "ПараметрыОграниченияДоступа", - "СвойстваВидовДоступа"); - - Если НЕ ТолькоПроверка Тогда СтандартныеПодсистемыСервер.ДобавитьИзмененияПараметраРаботыПрограммы( "ПараметрыОграниченияДоступа", "ТипыГруппИЗначенийДоступа", - ?(ЕстьИзмененияТиповГруппИЗначенийДоступа = Истина, + ?(ЕстьИзмененияТиповГруппИЗначенийДоступа, Новый ФиксированнаяСтруктура("ЕстьИзменения", Истина), Новый ФиксированнаяСтруктура()) ); КонецЕсли; @@ -79,6 +57,15 @@ ВызватьИсключение; КонецПопытки; + Если ЕстьТекущиеИзменения Тогда + ЕстьИзменения = Истина; + КонецЕсли; + + Если Не (ТолькоПроверка И ЕстьТекущиеИзменения) Тогда + СтандартныеПодсистемыСервер.ПодтвердитьОбновлениеПараметраРаботыПрограммы( + "ПараметрыОграниченияДоступа", "СвойстваВидовДоступа"); + КонецЕсли; + Если СнятьМонопольныйРежим Тогда УстановитьМонопольныйРежим(Ложь); КонецЕсли; diff --git a/SSL/src/Constants/ПараметрыПодключаемыхКоманд/ПараметрыПодключаемыхКоманд.mdo b/SSL/src/Constants/ПараметрыПодключаемыхКоманд/ПараметрыПодключаемыхКоманд.mdo new file mode 100644 index 000000000..afd800980 --- /dev/null +++ b/SSL/src/Constants/ПараметрыПодключаемыхКоманд/ПараметрыПодключаемыхКоманд.mdo @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:Constant xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="2b9dc754-cb46-4ef1-8048-8ea204a429cd"> + <producedTypes> + <managerType typeId="29e5dbd9-eb8d-40fa-85e0-eca533e395a1" valueTypeId="622c136a-aad5-4355-9df3-3e7be2417093"/> + <valueManagerType typeId="8f393fef-0c10-498c-b1d8-7bbd3ba1b8fb" valueTypeId="2a00de2b-f561-4d83-9355-962a3b26907c"/> + <valueKeyType typeId="216637bc-1d16-54f9-ae2e-12d6d08283c1" valueTypeId="890cadad-c598-5841-a770-b527e30eda21"/> + </producedTypes> + <name>ПараметрыПодключаемыхКоманд</name> + <synonym> + <key>ru</key> + <value>Параметры подключаемых команд</value> + </synonym> + <comment>Структура хранения описана в ПодключаемыеКоманды.ОперативноеОбновлениеОбщихДанных().</comment> + <type> + <types>ValueStorage</types> + </type> + <minValue xsi:type="core:UndefinedValue"/> + <maxValue xsi:type="core:UndefinedValue"/> + <dataLockControlMode>Managed</dataLockControlMode> +</mdclass:Constant> diff --git a/SSL/src/Constants/ПараметрыРаботыПользователей/ValueManagerModule.bsl b/SSL/src/Constants/ПараметрыРаботыПользователей/ValueManagerModule.bsl index 43ba90564..12a33a47e 100644 --- a/SSL/src/Constants/ПараметрыРаботыПользователей/ValueManagerModule.bsl +++ b/SSL/src/Constants/ПараметрыРаботыПользователей/ValueManagerModule.bsl @@ -32,59 +32,16 @@ Попытка Блокировка.Заблокировать(); - Параметры = СтандартныеПодсистемыСервер.ПараметрыРаботыПрограммы( - "ПараметрыРаботыПользователей"); + Параметры = Неопределено; + ЕстьТекущиеИзменения = Ложь; + СтандартныеПодсистемыСервер.ОбновитьПараметрРаботыПрограммы("ПараметрыРаботыПользователей", + "НазначениеРолей", НазначениеРолей, ЕстьТекущиеИзменения, ТолькоПроверка, Параметры); - // Проверка и обновление параметра НазначениеРолей. - Сохраненные = Неопределено; - - Если Параметры.Свойство("НазначениеРолей") Тогда - Сохраненные = Параметры.НазначениеРолей; - - Если НЕ ОбщегоНазначения.ДанныеСовпадают(НазначениеРолей, Сохраненные) Тогда - Сохраненные = Неопределено; - КонецЕсли; + Если Не (ТолькоПроверка И ЕстьТекущиеИзменения) Тогда + СтандартныеПодсистемыСервер.ОбновитьПараметрРаботыПрограммы("ПараметрыРаботыПользователей", + "ВсеРоли", ВсеРоли, ЕстьТекущиеИзменения, ТолькоПроверка, Параметры); КонецЕсли; - Если Сохраненные = Неопределено Тогда - ЕстьИзменения = Истина; - Если ТолькоПроверка Тогда - ЗафиксироватьТранзакцию(); - Возврат; - КонецЕсли; - СтандартныеПодсистемыСервер.УстановитьПараметрРаботыПрограммы( - "ПараметрыРаботыПользователей", "НазначениеРолей", НазначениеРолей); - КонецЕсли; - - СтандартныеПодсистемыСервер.ПодтвердитьОбновлениеПараметраРаботыПрограммы( - "ПараметрыРаботыПользователей", "НазначениеРолей"); - - // Проверка и обновление параметра ВсеРоли. - Сохраненные = Неопределено; - - Если Параметры.Свойство("ВсеРоли") Тогда - Сохраненные = Параметры.ВсеРоли; - - Если НЕ ОбщегоНазначения.ДанныеСовпадают(ВсеРоли, Сохраненные) Тогда - Сохраненные = Неопределено; - КонецЕсли; - КонецЕсли; - - Если Сохраненные = Неопределено Тогда - ЕстьИзменения = Истина; - Если ТолькоПроверка Тогда - ЗафиксироватьТранзакцию(); - Возврат; - КонецЕсли; - СтандартныеПодсистемыСервер.УстановитьПараметрРаботыПрограммы( - "ПараметрыРаботыПользователей", - "ВсеРоли", - ВсеРоли); - КонецЕсли; - - СтандартныеПодсистемыСервер.ПодтвердитьОбновлениеПараметраРаботыПрограммы( - "ПараметрыРаботыПользователей", "ВсеРоли"); - ЗафиксироватьТранзакцию(); Исключение ОтменитьТранзакцию(); @@ -94,6 +51,18 @@ ВызватьИсключение; КонецПопытки; + Если ЕстьТекущиеИзменения Тогда + ЕстьИзменения = Истина; + КонецЕсли; + + Если Не (ТолькоПроверка И ЕстьТекущиеИзменения) Тогда + СтандартныеПодсистемыСервер.ПодтвердитьОбновлениеПараметраРаботыПрограммы( + "ПараметрыРаботыПользователей", "НазначениеРолей"); + + СтандартныеПодсистемыСервер.ПодтвердитьОбновлениеПараметраРаботыПрограммы( + "ПараметрыРаботыПользователей", "ВсеРоли"); + КонецЕсли; + Если СнятьМонопольныйРежим Тогда УстановитьМонопольныйРежим(Ложь); КонецЕсли; @@ -105,7 +74,7 @@ #Область СлужебныеПроцедурыИФункции // Проверяет корректность заполнения назначения ролей, а также корректность прав в ролях по назначению. -Процедура ПроверитьНазначениеРолей(НазначениеРолей = Неопределено, ПроверитьВсе = Ложь) Экспорт +Процедура ПроверитьНазначениеРолей(НазначениеРолей = Неопределено, ПроверитьВсе = Ложь, СписокОшибок = Неопределено) Экспорт Если НазначениеРолей = Неопределено Тогда НазначениеРолей = НазначениеРолей(); @@ -122,10 +91,15 @@ Для Каждого КлючИЗначение Из ОписаниеНазначенияРолей.Значение Цикл Роль = Метаданные.Роли.Найти(КлючИЗначение.Ключ); Если Роль = Неопределено Тогда - ТекстОшибки = ТекстОшибки + Символы.ПС + Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'В метаданных не найдена роль ""%1"", - |указанная в назначении %2.'"), - Роль.Имя, ОписаниеНазначенияРолей.Ключ); + ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'В метаданных не найдена роль ""%1"", + |указанная в назначении %2.'"), + КлючИЗначение.Ключ, ОписаниеНазначенияРолей.Ключ); + Если СписокОшибок = Неопределено Тогда + ТекстОшибки = ТекстОшибки + Символы.ПС + Символы.ПС + ОписаниеОшибки; + Иначе + СписокОшибок.Добавить(Неопределено, ОписаниеОшибки); + КонецЕсли; Продолжить; КонецЕсли; Роли.Вставить(Роль, Истина); @@ -133,10 +107,15 @@ Если ОписаниеНазначения.Значение.Получить(Роль) = Неопределено Тогда Продолжить; КонецЕсли; - ТекстОшибки = ТекстОшибки + Символы.ПС + Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Роль ""%1"" указана более чем в одном назначении: |%2, %3.'"), Роль.Имя, ОписаниеНазначенияРолей.Ключ, ОписаниеНазначения.Ключ); + Если СписокОшибок = Неопределено Тогда + ТекстОшибки = ТекстОшибки + Символы.ПС + Символы.ПС + ОписаниеОшибки; + Иначе + СписокОшибок.Добавить(Роль, ОписаниеОшибки); + КонецЕсли; КонецЦикла; КонецЦикла; Назначение.Вставить(ОписаниеНазначенияРолей.Ключ, Роли); @@ -150,10 +129,10 @@ НедоступныеПрава.Добавить("АдминистрированиеДанных"); ПроверитьСоставПравРолей(НедоступныеПрава, Назначение.ТолькоДляВнешнихПользователей, ТекстОшибки, - НСтр("ru = 'При проверке ролей только для внешних пользователей найдены ошибки:'")); + НСтр("ru = 'При проверке ролей только для внешних пользователей найдены ошибки:'"), СписокОшибок); ПроверитьСоставПравРолей(НедоступныеПрава, Назначение.СовместноДляПользователейИВнешнихПользователей, ТекстОшибки, - НСтр("ru = 'При проверке ролей совместно для пользователей и внешних пользователей найдены ошибки:'")); + НСтр("ru = 'При проверке ролей совместно для пользователей и внешних пользователей найдены ошибки:'"), СписокОшибок); // Проверка ролей пользователей. Если ОбщегоНазначенияПовтИсп.РазделениеВключено() Или ПроверитьВсе Тогда @@ -178,7 +157,7 @@ НеразделенныеДанные = НеразделенныеДанные(); ПроверитьСоставПравРолей(НедоступныеПрава, Роли, ТекстОшибки, - НСтр("ru = 'При проверке ролей для пользователей приложения найдены ошибки:'"), НеразделенныеДанные); + НСтр("ru = 'При проверке ролей для пользователей приложения найдены ошибки:'"), СписокОшибок, НеразделенныеДанные); КонецЕсли; Если Не ОбщегоНазначенияПовтИсп.РазделениеВключено() Или ПроверитьВсе Тогда Роли = Новый Соответствие; @@ -195,10 +174,10 @@ НедоступныеПрава.Добавить("ОбновлениеКонфигурацииБазыДанных"); ПроверитьСоставПравРолей(НедоступныеПрава, Роли, ТекстОшибки, - НСтр("ru = 'При проверке ролей для пользователей найдены ошибки:'")); + НСтр("ru = 'При проверке ролей для пользователей найдены ошибки:'"), СписокОшибок); ПроверитьСоставПравРолей(НедоступныеПрава, Назначение.СовместноДляПользователейИВнешнихПользователей, ТекстОшибки, - НСтр("ru = 'При проверке ролей совместно для пользователей и внешних пользователей найдены ошибки:'")); + НСтр("ru = 'При проверке ролей совместно для пользователей и внешних пользователей найдены ошибки:'"), СписокОшибок); КонецЕсли; Если ЗначениеЗаполнено(ТекстОшибки) Тогда @@ -242,7 +221,7 @@ КонецФункции -Процедура ПроверитьСоставПравРолей(НедоступныеПрава, ОписаниеРолей, ОбщийТекстОшибки, ЗаголовокОшибки, НеразделенныеДанные = Неопределено) +Процедура ПроверитьСоставПравРолей(НедоступныеПрава, ОписаниеРолей, ОбщийТекстОшибки, ЗаголовокОшибки, СписокОшибок, НеразделенныеДанные = Неопределено) ТекстОшибки = ""; @@ -250,9 +229,14 @@ Роль = ОписаниеРоли.Ключ; Для Каждого НедоступноеПраво Из НедоступныеПрава Цикл Если ПравоДоступа(НедоступноеПраво, Метаданные, Роль) Тогда - ТекстОшибки = ТекстОшибки + Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Роль ""%1"" содержит недоступное право %2.'"), Роль, НедоступноеПраво); + Если СписокОшибок = Неопределено Тогда + ТекстОшибки = ТекстОшибки + Символы.ПС + ОписаниеОшибки; + Иначе + СписокОшибок.Добавить(Роль, ЗаголовокОшибки + Символы.ПС + ОписаниеОшибки); + КонецЕсли; КонецЕсли; КонецЦикла; Если НеразделенныеДанные = Неопределено Тогда @@ -264,22 +248,37 @@ Продолжить; КонецЕсли; Если ПравоДоступа("Изменение", ОбъектМетаданных, Роль) Тогда - ТекстОшибки = ТекстОшибки + Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Роль ""%1"" содержит право Изменение неразделенного объекта %2.'"), Роль, ОбъектМетаданных.ПолноеИмя()); + Если СписокОшибок = Неопределено Тогда + ТекстОшибки = ТекстОшибки + Символы.ПС + ОписаниеОшибки; + Иначе + СписокОшибок.Добавить(ОбъектМетаданных, ЗаголовокОшибки + Символы.ПС + ОписаниеОшибки); + КонецЕсли; КонецЕсли; Если СвойстваДанных.Представление = "" Тогда Продолжить; // Не ссылочный объект метаданных. КонецЕсли; Если ПравоДоступа("Добавление", ОбъектМетаданных, Роль) Тогда - ТекстОшибки = ТекстОшибки + Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Роль ""%1"" содержит право Добавление неразделенного объекта %2.'"), Роль, ОбъектМетаданных.ПолноеИмя()); + Если СписокОшибок = Неопределено Тогда + ТекстОшибки = ТекстОшибки + Символы.ПС + ОписаниеОшибки; + Иначе + СписокОшибок.Добавить(ОбъектМетаданных, ЗаголовокОшибки + Символы.ПС + ОписаниеОшибки); + КонецЕсли; КонецЕсли; Если ПравоДоступа("Удаление", ОбъектМетаданных, Роль) Тогда - ТекстОшибки = ТекстОшибки + Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + ОписаниеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Роль ""%1"" содержит право Удаление неразделенного объекта %2.'"), Роль, ОбъектМетаданных.ПолноеИмя()); + Если СписокОшибок = Неопределено Тогда + ТекстОшибки = ТекстОшибки + Символы.ПС + ОписаниеОшибки; + Иначе + СписокОшибок.Добавить(ОбъектМетаданных, ЗаголовокОшибки + Символы.ПС + ОписаниеОшибки); + КонецЕсли; КонецЕсли; КонецЦикла; КонецЦикла; diff --git a/SSL/src/Constants/ПараметрыСлужебныхСобытий/ValueManagerModule.bsl b/SSL/src/Constants/ПараметрыСлужебныхСобытий/ValueManagerModule.bsl index d55ee797f..41f33f4df 100644 --- a/SSL/src/Constants/ПараметрыСлужебныхСобытий/ValueManagerModule.bsl +++ b/SSL/src/Constants/ПараметрыСлужебныхСобытий/ValueManagerModule.bsl @@ -29,31 +29,9 @@ Попытка Блокировка.Заблокировать(); - Параметры = СтандартныеПодсистемыСервер.ПараметрыРаботыПрограммы( - "ПараметрыСлужебныхСобытий"); - - Сохраненные = Неопределено; - - Если Параметры.Свойство("ОбработчикиСобытий") Тогда - Сохраненные = Параметры.ОбработчикиСобытий; - - Если НЕ ОбщегоНазначения.ДанныеСовпадают(ОбработчикиСобытий, Сохраненные) Тогда - Сохраненные = Неопределено; - КонецЕсли; - КонецЕсли; - - Если Сохраненные = Неопределено Тогда - ЕстьИзменения = Истина; - Если ТолькоПроверка Тогда - ЗафиксироватьТранзакцию(); - Возврат; - КонецЕсли; - СтандартныеПодсистемыСервер.УстановитьПараметрРаботыПрограммы( - "ПараметрыСлужебныхСобытий", "ОбработчикиСобытий", ОбработчикиСобытий); - КонецЕсли; - - СтандартныеПодсистемыСервер.ПодтвердитьОбновлениеПараметраРаботыПрограммы( - "ПараметрыСлужебныхСобытий", "ОбработчикиСобытий"); + ЕстьТекущиеИзменения = Ложь; + СтандартныеПодсистемыСервер.ОбновитьПараметрРаботыПрограммы("ПараметрыСлужебныхСобытий", + "ОбработчикиСобытий", ОбработчикиСобытий, ЕстьТекущиеИзменения, ТолькоПроверка); ЗафиксироватьТранзакцию(); Исключение @@ -64,6 +42,15 @@ ВызватьИсключение; КонецПопытки; + Если ЕстьТекущиеИзменения Тогда + ЕстьИзменения = Истина; + КонецЕсли; + + Если Не (ТолькоПроверка И ЕстьТекущиеИзменения) Тогда + СтандартныеПодсистемыСервер.ПодтвердитьОбновлениеПараметраРаботыПрограммы( + "ПараметрыСлужебныхСобытий", "ОбработчикиСобытий"); + КонецЕсли; + Если СнятьМонопольныйРежим Тогда УстановитьМонопольныйРежим(Ложь); КонецЕсли; diff --git a/SSL/src/Constants/ПериодХраненияЗамеров/ПериодХраненияЗамеров.mdo b/SSL/src/Constants/ПериодХраненияЗамеров/ПериодХраненияЗамеров.mdo new file mode 100644 index 000000000..aa96b148f --- /dev/null +++ b/SSL/src/Constants/ПериодХраненияЗамеров/ПериодХраненияЗамеров.mdo @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<mdclass:Constant xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="0f0456a8-ca04-4de4-9d9b-e8b0fdb8b860"> + <producedTypes> + <managerType typeId="6da074ab-aa4a-4589-b8f9-d3a962bb2683" valueTypeId="c291162d-38c7-4099-ac6d-085f520bf3d6"/> + <valueManagerType typeId="f4d5308d-fb71-46d9-baa7-bcea1325a997" valueTypeId="c71ea3c1-7b06-422c-bca7-3cefd4d80af3"/> + <valueKeyType typeId="fd7cf5e1-ee51-5254-b366-9ce1ee645c56" valueTypeId="9143e0b5-c5ad-51e0-b1c6-13547875c651"/> + </producedTypes> + <name>ПериодХраненияЗамеров</name> + <synonym> + <key>ru</key> + <value>Период хранения замеров</value> + </synonym> + <type> + <types>Number</types> + <numberQualifiers> + <precision>5</precision> + <nonNegative>true</nonNegative> + </numberQualifiers> + </type> + <useStandardCommands>true</useStandardCommands> + <minValue xsi:type="core:UndefinedValue"/> + <maxValue xsi:type="core:UndefinedValue"/> + <dataLockControlMode>Managed</dataLockControlMode> +</mdclass:Constant> diff --git a/SSL/src/DataProcessors/АвтоматическоеИзвлечениеТекстов/Forms/Форма/Form.form b/SSL/src/DataProcessors/АвтоматическоеИзвлечениеТекстов/Forms/Форма/Form.form index 8fa470b47..468179bd9 100644 --- a/SSL/src/DataProcessors/АвтоматическоеИзвлечениеТекстов/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/АвтоматическоеИзвлечениеТекстов/Forms/Форма/Form.form @@ -81,7 +81,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> <extInfo xsi:type="form:LabelDecorationExtInfo"> @@ -401,7 +400,6 @@ <event>OnCreateAtServer</event> <name>ПриСозданииНаСервере</name> </handlers> - <width>50</width> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoTitle>true</autoTitle> diff --git a/SSL/src/DataProcessors/АвтоматическоеИзвлечениеТекстов/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/АвтоматическоеИзвлечениеТекстов/Forms/Форма/Module.bsl index a51b7342d..8519473aa 100644 --- a/SSL/src/DataProcessors/АвтоматическоеИзвлечениеТекстов/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/АвтоматическоеИзвлечениеТекстов/Forms/Форма/Module.bsl @@ -7,7 +7,7 @@ Возврат; КонецЕсли; - Если ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент() Или ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + Если ОбщегоНазначенияКлиентСервер.ЭтоВебКлиент() Или Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда Возврат; // Отказ устанавливается в ПриОткрытии(). КонецЕсли; @@ -43,9 +43,9 @@ Возврат; КонецЕсли; - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда Отказ = Истина; - ТекстСообщения = НСтр("ru = 'Извлечение текстов не поддерживается в клиенте под управлением ОС Linux.'"); + ТекстСообщения = НСтр("ru = 'Извлечение текстов поддерживается только в клиенте под управлением ОС Windows.'"); ПоказатьПредупреждение(, ТекстСообщения); Возврат; КонецЕсли; diff --git a/SSL/src/DataProcessors/АктивныеПользователи/Forms/АктивныеПользователи/Module.bsl b/SSL/src/DataProcessors/АктивныеПользователи/Forms/АктивныеПользователи/Module.bsl index 37e7549af..9877be422 100644 --- a/SSL/src/DataProcessors/АктивныеПользователи/Forms/АктивныеПользователи/Module.bsl +++ b/SSL/src/DataProcessors/АктивныеПользователи/Forms/АктивныеПользователи/Module.bsl @@ -16,10 +16,6 @@ Возврат; КонецЕсли; - Если Не Параметры.Свойство("ОшибкаУстановкиМонопольногоРежима") И Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка) Тогда - Возврат; - КонецЕсли; - Параметры.Свойство("ОповещатьОЗакрытии", ОповещатьОЗакрытии); НомерСеансаИнформационнойБазы = НомерСеансаИнформационнойБазы(); @@ -58,7 +54,10 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; Если ОповещатьОЗакрытии Тогда ОповещатьОЗакрытии = Ложь; ОповеститьОВыборе(Неопределено); @@ -74,8 +73,9 @@ ЗаполнитьСписок(); КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// ОБРАБОТЧИКИ СОБЫТИЙ ЭЛЕМЕНТОВ ТАБЛИЦЫ СписокПользователей +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовТаблицыСписокПользователей &НаКлиенте Процедура СписокПользователейВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) @@ -92,60 +92,48 @@ КоличествоВыделенныхСтрок = Элементы.СписокПользователей.ВыделенныеСтроки.Количество(); Если КоличествоВыделенныхСтрок = 0 Тогда - ПоказатьПредупреждение(,НСтр("ru = 'Не выбраны пользователи для завершения сеансов.'")); Возврат; - + ИначеЕсли КоличествоВыделенныхСтрок = 1 Тогда + Если Элементы.СписокПользователей.ТекущиеДанные.Сеанс = НомерСеансаИнформационнойБазы Тогда + ПоказатьПредупреждение(,НСтр("ru = 'Невозможно завершить текущий сеанс. Для выхода из программы можно закрыть главное окно программы.'")); + Возврат; + КонецЕсли; КонецЕсли; + НомераСеансов = Новый Массив; + Для Каждого ИдентификаторСтроки Из Элементы.СписокПользователей.ВыделенныеСтроки Цикл + НомерСеанса = СписокПользователей.НайтиПоИдентификатору(ИдентификаторСтроки).Сеанс; + Если НомерСеанса = НомерСеансаИнформационнойБазы Тогда + Продолжить; + КонецЕсли; + НомераСеансов.Добавить(НомерСеанса); + КонецЦикла; + ПараметрыРаботыКлиента = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиентаПриЗапуске(); Если ПараметрыРаботыКлиента.РазделениеВключено И ПараметрыРаботыКлиента.ДоступноИспользованиеРазделенныхДанных Тогда - ЗавершаемыйСеанс = Элементы.СписокПользователей.ТекущиеДанные.Сеанс; - - Если ЗавершаемыйСеанс = НомерСеансаИнформационнойБазы Тогда - ПоказатьПредупреждение(,НСтр("ru = 'Невозможно завершить текущий сеанс. Для выхода из программы можно закрыть главное окно программы.'")); - Возврат; - КонецЕсли; - СтандартнаяОбработка = Истина; - ОповещениеПослеЗавершенияСеанса = Новый ОписаниеОповещения( - "ПослеЗавершенияСеанса", ЭтотОбъект, Новый Структура("НомерСеанса", ЗавершаемыйСеанс)); + ОповещениеПослеЗавершенияСеансов = Новый ОписаниеОповещения( + "ПослеЗавершенияСеанса", ЭтотОбъект, Новый Структура("НомераСеансов", НомераСеансов)); ОбработчикиСобытия = ОбщегоНазначенияКлиент.ОбработчикиСлужебногоСобытия( - "СтандартныеПодсистемы.ЗавершениеРаботыПользователей\ПриЗавершенииСеанса"); + "СтандартныеПодсистемы.ЗавершениеРаботыПользователей\ПриЗавершенииСеансов"); Для Каждого Обработчик Из ОбработчикиСобытия Цикл - Обработчик.Модуль.ПриЗавершенииСеанса(ЭтотОбъект, ЗавершаемыйСеанс, СтандартнаяОбработка, ОповещениеПослеЗавершенияСеанса); + Обработчик.Модуль.ПриЗавершенииСеансов(ЭтотОбъект, НомераСеансов, СтандартнаяОбработка, ОповещениеПослеЗавершенияСеансов); КонецЦикла; Иначе - - КоличествоВыделенныхСтрок = Элементы.СписокПользователей.ВыделенныеСтроки.Количество(); - - Если КоличествоВыделенныхСтрок = 1 Тогда - - Если Элементы.СписокПользователей.ТекущиеДанные.Сеанс = НомерСеансаИнформационнойБазы Тогда - ПоказатьПредупреждение(,НСтр("ru = 'Невозможно завершить текущий сеанс. Для выхода из программы можно закрыть главное окно программы.'")); - Возврат; - КонецЕсли; - - КонецЕсли; - Если ЗапрашиватьПараметрыАдминистрированияИБ Тогда - - ОписаниеОповещения = Новый ОписаниеОповещения("ЗавершитьСеансПродолжение", ЭтотОбъект); + ОписаниеОповещения = Новый ОписаниеОповещения("ЗавершитьСеансПродолжение", ЭтотОбъект, НомераСеансов); ЗаголовокФормы = НСтр("ru = 'Завершение сеанса'"); ПоясняющаяНадпись = НСтр("ru = 'Для завершения сеанса необходимо ввести параметры |администрирования кластера серверов'"); СоединенияИБКлиент.ПоказатьПараметрыАдминистрирования(ОписаниеОповещения, Ложь, Истина, ПараметрыАдминистрирования, ЗаголовокФормы, ПоясняющаяНадпись); - Иначе - - ЗавершитьСеансПродолжение(ПараметрыАдминистрирования); - + ЗавершитьСеансПродолжение(ПараметрыАдминистрирования, НомераСеансов); КонецЕсли; - КонецЕсли; КонецПроцедуры @@ -338,6 +326,12 @@ СеансИБ.Пользователь.РазделениеДанных); КонецЕсли; + ИначеЕсли ОбщегоНазначенияПовтИсп.РазделениеВключено() + И Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда + + СтрПользователя.Пользователь = Пользователи.ПолноеИмяНеуказанногоПользователя(); + СтрПользователя.ИмяПользователя = ""; + СтрПользователя.ПользовательСсылка = Неопределено; Иначе СвойстваНеУказанного = ПользователиСлужебный.СвойстваНеуказанногоПользователя(); СтрПользователя.Пользователь = СвойстваНеУказанного.ПолноеИмя; @@ -452,7 +446,7 @@ КонецПроцедуры &НаКлиенте -Процедура ЗавершитьСеансПродолжение(Результат, ДополнительныеПараметры = Неопределено) Экспорт +Процедура ЗавершитьСеансПродолжение(Результат, МассивСеансов) Экспорт Если Результат = Неопределено Тогда Возврат; @@ -463,19 +457,6 @@ Сообщение = ""; НомерСеансаДляЗавершения = Элементы.СписокПользователей.ТекущиеДанные.Сеанс; - МассивСеансов = Новый Массив; - Для Каждого ИдентификаторСтроки Из Элементы.СписокПользователей.ВыделенныеСтроки Цикл - - НомерСеанса = СписокПользователей.НайтиПоИдентификатору(ИдентификаторСтроки).Сеанс; - - Если НомерСеанса = НомерСеансаИнформационнойБазы Тогда - Продолжить; - КонецЕсли; - - МассивСеансов.Добавить(НомерСеанса); - - КонецЦикла; - СтруктураСеанса = Новый Структура; СтруктураСеанса.Вставить("Свойство", "Номер"); СтруктураСеанса.Вставить("ВидСравнения", ВидСравнения.ВСписке); @@ -506,8 +487,7 @@ Если Результат = КодВозвратаДиалога.ОК Тогда - Если ДополнительныеПараметры.Свойство("НомераСеансов") - И ДополнительныеПараметры.НомераСеансов.Количество() > 1 Тогда + Если ДополнительныеПараметры.НомераСеансов.Количество() > 1 Тогда ТекстОповещения = НСтр("ru = 'Сеансы %1 завершены.'"); НомераСеансов = СтрСоединить(ДополнительныеПараметры.НомераСеансов, ","); @@ -516,9 +496,8 @@ Иначе - НомерСеанса = ?(ДополнительныеПараметры.Свойство("НомераСеансов"), - ДополнительныеПараметры.НомераСеансов[0], ДополнительныеПараметры.НомерСеанса); - ТекстОповещения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Сеанс %1 завершен.'"), НомерСеанса); + ТекстОповещения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Сеанс %1 завершен.'"), ДополнительныеПараметры.НомераСеансов[0]); ПоказатьОповещениеПользователя(НСтр("ru = 'Завершение сеанса'"),, ТекстОповещения); КонецЕсли; diff --git a/SSL/src/DataProcessors/БлокировкаРаботыПользователей/Forms/БлокировкаСоединенийСИнформационнойБазой/Form.form b/SSL/src/DataProcessors/БлокировкаРаботыПользователей/Forms/БлокировкаСоединенийСИнформационнойБазой/Form.form index a64e6ffb3..c6afe80e1 100644 --- a/SSL/src/DataProcessors/БлокировкаРаботыПользователей/Forms/БлокировкаСоединенийСИнформационнойБазой/Form.form +++ b/SSL/src/DataProcessors/БлокировкаРаботыПользователей/Forms/БлокировкаСоединенийСИнформационнойБазой/Form.form @@ -26,9 +26,7 @@ <id>70</id> <autoFill>true</autoFill> </contextMenu> - <width>5</width> <autoMaxWidth>true</autoMaxWidth> - <height>2</height> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="core:PictureRef"> @@ -36,55 +34,21 @@ </picture> </extInfo> </items> - <items xsi:type="form:FormGroup"> - <name>Группа</name> - <id>77</id> - <items xsi:type="form:Decoration"> - <name>ТекстОшибки</name> - <id>71</id> - <title> - <key>ru</key> - <value>Текст ошибки</value> - - true - true - - true - - - ТекстОшибкиExtendedTooltip - 88 - Label - true - true - - Left - - - - ТекстОшибкиКонтекстноеМеню - 72 - true - - Label - 45 - true - 2 - true - true - - Left - Top - - + + ТекстОшибки + 71 + + <key>ru</key> + <value>Текст ошибки</value> + true true true - ГруппаExtendedTooltip - 87 + ТекстОшибкиExtendedTooltip + 88 Label true true @@ -92,14 +56,18 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + ТекстОшибкиКонтекстноеМеню + 72 + true + + Label + 2 + true + true + + Left + Top true @@ -141,60 +109,21 @@ СтраницаНастройки 47 - - ГруппаСтатусЗапретаРаботыПользователей - 78 - - НачальныйСтатусЗапретаРаботыПользователей - 64 - true - true - - true - - - НачальныйСтатусЗапретаРаботыПользователей - - None - - НачальныйСтатусЗапретаРаботыПользователейExtendedTooltip - 97 - Label - true - true - - Left - - - - НачальныйСтатусЗапретаРаботыПользователейКонтекстноеМеню - 65 - true - - LabelField - Left - Enter - true - Left - true - - true - true - true - - ru - БЛ='работа пользователей разрешена'; БИ='работа пользователей временно запрещена' - - - + + НачальныйСтатусЗапретаРаботыПользователей + 64 true true true + + НачальныйСтатусЗапретаРаботыПользователей + + None - ГруппаСтатусЗапретаРаботыПользователейExtendedTooltip - 96 + НачальныйСтатусЗапретаРаботыПользователейExtendedTooltip + 97 Label true true @@ -202,15 +131,23 @@ Left - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto + + НачальныйСтатусЗапретаРаботыПользователейКонтекстноеМеню + 65 + true + + LabelField + Left + Enter + true + Left + true + + true + + ru + БЛ='работа пользователей разрешена'; БИ='работа пользователей временно запрещена' + @@ -246,8 +183,6 @@ true Left - 20 - true 2 true true @@ -385,7 +320,7 @@ true true Equal - Auto + DontUse Auto @@ -422,10 +357,8 @@ true Left - 18 true true - true true true true @@ -463,7 +396,6 @@ Form.Command.ПараметрыАдминистрирования Normal Auto - true true UserCmds Auto @@ -558,7 +490,6 @@ true - true ГруппаЗапретитьРаботуРегламентныхЗаданийРасширеннаяПодсказка 121 @@ -629,9 +560,7 @@ 52 true - 8 true - 3 true @@ -671,9 +600,7 @@ true Label - true true - true Left Center @@ -937,7 +864,6 @@ ru Группа режим - true ГруппаРежимExtendedTooltip 94 @@ -981,15 +907,6 @@ true true UserCmds - - Style.ButtonTextColor - - - Style.ButtonBackColor - - - Style.BorderColor - Auto diff --git a/SSL/src/DataProcessors/БлокировкаРаботыПользователей/Forms/ОшибкаУстановкиМонопольногоРежима/Form.form b/SSL/src/DataProcessors/БлокировкаРаботыПользователей/Forms/ОшибкаУстановкиМонопольногоРежима/Form.form index f3fde801c..0ac8f2d11 100644 --- a/SSL/src/DataProcessors/БлокировкаРаботыПользователей/Forms/ОшибкаУстановкиМонопольногоРежима/Form.form +++ b/SSL/src/DataProcessors/БлокировкаРаботыПользователей/Forms/ОшибкаУстановкиМонопольногоРежима/Form.form @@ -36,9 +36,7 @@ 19 true - 4 true - 2 true @@ -80,7 +78,6 @@ true Label - true true Left @@ -114,7 +111,6 @@ true Label - true true @@ -182,10 +178,11 @@ true Label - true + 2 true Left + Bottom true @@ -303,9 +300,7 @@ 25 true - 8 true - 3 true @@ -321,7 +316,7 @@ 26 <key>ru</key> - <value>В течение ближайших 2-х минут работа всех пользователей в программе будет завершена автоматически. При этом им будет выведено предупреждение, чтобы перед выходом из программы они могли сохранить свои данные.</value> + <value>В течение ближайших двух минут работа всех пользователей в программе будет завершена автоматически. При этом им будет выведено предупреждение, чтобы перед выходом из программы они могли сохранить свои данные.</value> true true @@ -344,11 +339,10 @@ true Label - 60 - true true Left + 1 @@ -379,7 +373,6 @@ true Label - true true @@ -607,6 +600,10 @@ OnCreateAtServer ПриСозданииНаСервере + + OnClose + ПриЗакрытии + LockOwner true true @@ -825,6 +822,7 @@ Boolean + true diff --git a/SSL/src/DataProcessors/БлокировкаРаботыПользователей/Forms/ОшибкаУстановкиМонопольногоРежима/Module.bsl b/SSL/src/DataProcessors/БлокировкаРаботыПользователей/Forms/ОшибкаУстановкиМонопольногоРежима/Module.bsl index 796ef89a8..358dba6a2 100644 --- a/SSL/src/DataProcessors/БлокировкаРаботыПользователей/Forms/ОшибкаУстановкиМонопольногоРежима/Module.bsl +++ b/SSL/src/DataProcessors/БлокировкаРаботыПользователей/Forms/ОшибкаУстановкиМонопольногоРежима/Module.bsl @@ -28,11 +28,21 @@ Отказ = Истина; ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗакрытии, Ложь); Иначе + Если Параметры.УдалениеПомеченныхОбъектов Тогда + СоединенияИБКлиент.УстановитьПризнакЗавершитьВсеСеансыКромеТекущего(Истина); + КонецЕсли; ПодключитьОбработчикОжидания("ОбновитьКоличествоАктивныхСеансов", 30); КонецЕсли; КонецПроцедуры +&НаКлиенте +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если Параметры.УдалениеПомеченныхОбъектов Тогда + СоединенияИБКлиент.УстановитьПризнакЗавершитьВсеСеансыКромеТекущего(Ложь); + КонецЕсли; +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы @@ -41,8 +51,7 @@ Процедура АктивныеПользователиНажатие(Элемент) ОписаниеОповещения = Новый ОписаниеОповещения("ОткрытьСписокАктивныхПользователейЗавершение", ЭтотОбъект); - ОткрытьФорму("Обработка.АктивныеПользователи.Форма.АктивныеПользователи", - Новый Структура("ОшибкаУстановкиМонопольногоРежима"), , , , , + ОткрытьФорму("Обработка.АктивныеПользователи.Форма.АктивныеПользователи", , , , , , ОписаниеОповещения, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводАдреса/Form.form b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводАдреса/Form.form index f932dcea0..e89e453da 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводАдреса/Form.form +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводАдреса/Form.form @@ -6,22 +6,22 @@ ГруппаИсторическийАдрес - 340 - - ИсторическийАдрес - 342 + 358 + + ТекстАдресНаДату + 360 + + <key>ru</key> + <value>Адрес на</value> + true true true - - ИсторическийАдрес - - None - ИсторическийАдресРасширеннаяПодсказка - 344 + ТекстАдресНаДатуРасширеннаяПодсказка + 362 Label true true @@ -30,23 +30,133 @@ - ИсторическийАдресКонтекстноеМеню - 343 + ТекстАдресНаДатуКонтекстноеМеню + 361 true - LabelField + Label + true + true + + Left + + + + АдресНаДату + 363 + true + true + + true + + + АдресНаДату + + None + + OnChange + АдресНаДатуПриИзменении + + + АдресНаДатуРасширеннаяПодсказка + 365 + Label + true + true + + Left + + + + АдресНаДатуКонтекстноеМеню + 364 + true + + InputField Enter true Left true - + + + AutoComplete + АдресНаДатуАвтоПодбор + + 10 true true - - Style.ToolTipBackColor - + true + true + true + true + Normal + + ТекстПроДатуДействия + 369 + + <key>ru</key> + <value>действует по настоящие время.</value> + + true + true + + true + + + ТекстПроДатуДействияРасширеннаяПодсказка + 371 + Label + true + true + + Left + + + + ТекстПроДатуДействияКонтекстноеМеню + 370 + true + + Label + true + true + + Left + + + + ИсторияИзмененийГиперссылка + 372 + + <key>ru</key> + <value>История изменений</value> + + true + true + + true + + + ИсторияИзмененийГиперссылкаРасширеннаяПодсказка + 373 + Label + true + true + + Left + + + Hyperlink + Form.Command.ИсторияИзменений + Normal + true + true + UserCmds + Auto + + true true true @@ -61,7 +171,7 @@ ГруппаИсторическийАдресРасширеннаяПодсказка - 341 + 359 Label true true @@ -71,7 +181,6 @@ UsualGroup - Vertical Auto true true @@ -303,6 +412,10 @@ EditTextChange ИндексИзменениеТекстаРедактирования + + TextEditEnd + ИндексОкончаниеВводаТекста + ChoiceProcessing ИндексОбработкаВыбора @@ -310,6 +423,7 @@ 6 true true + false true false 999999 @@ -354,9 +468,10 @@ Left true - 10 + 11 true true + false true true true @@ -401,15 +516,6 @@ true - - <key>ru</key> - <value>Страна адреса</value> - - - ru - Страна адреса - - true СтранаАдресаExtendedTooltip 105 @@ -491,6 +597,10 @@ StartChoice НаселенныйПунктНачалоВыбора + + Clearing + НаселенныйПунктОчистка + TextEditEnd НаселенныйПунктОкончаниеВводаТекста @@ -559,6 +669,10 @@ StartChoice УлицаНачалоВыбора + + Clearing + УлицаОчистка + TextEditEnd УлицаОкончаниеВводаТекста @@ -719,11 +833,6 @@ ru Группа дом - - ru - Группа дом - - false ГруппаДомExtendedTooltip 115 @@ -876,11 +985,6 @@ ru Группа строение начальное - - ru - Группа строение начальное - - false ГруппаСтроениеНачальноеExtendedTooltip 119 @@ -912,11 +1016,6 @@ ru Группа строения дополнительно - - ru - Группа строения дополнительно - - false ГруппаСтроенияДополнительноExtendedTooltip 122 @@ -946,12 +1045,7 @@ ru Группа строения - - ru - Группа строения - true - false ГруппаСтроенияExtendedTooltip 118 @@ -1091,11 +1185,6 @@ ru Группа помещение начальное - - ru - Группа помещение начальное - - false ГруппаПомещениеНачальноеExtendedTooltip 124 @@ -1127,11 +1216,6 @@ ru Группа строения дополнительно - - ru - Группа строения дополнительно - - false ГруппаПомещенияДополнительноExtendedTooltip 127 @@ -1161,12 +1245,7 @@ ru Помещение - - ru - Помещение - true - false ГруппаПомещениеExtendedTooltip 123 @@ -1262,6 +1341,7 @@ ru Группа дома и строения + false ГруппаДомаИСтроенияРасширеннаяПодсказка 254 @@ -1288,44 +1368,6 @@ СервисДоступен 274 - - СообщениеОбОбращенииВФНСРоссия - 345 - - <key>ru</key> - <value>Рекомендуется дополнительно <link http://fias.nalog.ru/ExtendedSearchPage.aspx>проверить адрес</> -на сайте ФИАС. -О некорректных или неполных адресных сведениях -рекомендуется сообщать в службу -<link https://www.nalog.ru/rn77/service/service_feedback/?service=22>технической поддержки</> online-сервисов ФНС России.</value> - - true - - true - - - СообщениеОбОбращенииВФНСРоссияРасширеннаяПодсказка - 347 - Label - true - true - - Left - - - - СообщениеОбОбращенииВФНСРоссияКонтекстноеМеню - 346 - true - - true - Label - true - true - - Left - - СервисДоступенДекорация 276 @@ -1416,9 +1458,7 @@ 261 true - 4 true - 2 true @@ -1490,7 +1530,7 @@ 269 <key>ru</key> - <value>Для автоподбора и проверки корректности адресов необходимо ввести свой логин и пароль, полученный при регистрации на сайте поддержки пользователей.</value> + <value>Для автоподбора и проверки корректности адресов необходимо произвести подключение к интернет-поддержке пользователей.</value> Label true @@ -1500,7 +1540,7 @@ Hyperlink - Form.Command.АвторизацияНаСайтеПоддержкиПользователей + Form.Command.ПодключитьИнтернетПоддержку Normal Auto true @@ -1559,6 +1599,111 @@ false + + СообщениеОбОшибке + 348 + + СообщениеОбОбращенииВФИАС + 355 + + <key>ru</key> + <value>Рекомендуется дополнительно <link http://fias.nalog.ru/ExtendedSearchPage.aspx>проверить адрес </> +<link http://fias.nalog.ru/ExtendedSearchPage.aspx>на сайте ФИАС</>. +</value> + + true + true + + true + + + СообщениеОбОбращенииВФИАСРасширеннаяПодсказка + 357 + Label + true + true + + Left + + + + СообщениеОбОбращенииВФИАСКонтекстноеМеню + 356 + true + + true + Label + true + true + + Left + + + + СообщениеОбОбращенииВФНС + 345 + + <key>ru</key> + <value>О некорректных или неполных адресных сведениях рекомендуется сообщать в службу <link https://www.nalog.ru/rn77/service/service_feedback/?service=22>технической поддержки</> online-сервисов ФНС России.</value> + + true + true + + true + + + СообщениеОбОбращенииВФНСРасширеннаяПодсказка + 347 + Label + true + true + + Left + + + + СообщениеОбОбращенииВФНСКонтекстноеМеню + 346 + true + + true + Label + true + true + + Left + + + true + true + + true + + + <key>ru</key> + <value>Сообщение об ошибке</value> + + + ru + Сообщение об ошибке + + + СообщениеОбОшибкеРасширеннаяПодсказка + 349 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + true true @@ -1703,9 +1848,7 @@ Left true - true true - true true true true @@ -1972,11 +2115,6 @@ ru Группа дом - - ru - Группа дом - - false ГруппаДомИностранныйАдресаРасширеннаяПодсказка 291 @@ -2117,11 +2255,6 @@ ru Группа строение начальное - - ru - Группа строение начальное - - false ГруппаСтроениеНачальноеИностранныйАдресаРасширеннаяПодсказка 301 @@ -2150,12 +2283,7 @@ ru Группа строения - - ru - Группа строения - true - false ГруппаСтроенияИностранныйАдресаРасширеннаяПодсказка 299 @@ -2296,11 +2424,6 @@ ru Группа помещение начальное - - ru - Группа помещение начальное - - false ГруппаПомещениеНачальноеИностранныйАдресаРасширеннаяПодсказка 313 @@ -2329,12 +2452,7 @@ ru Помещение - - ru - Помещение - true - false ГруппаПомещениеИностранныйАдресаРасширеннаяПодсказка 311 @@ -2364,10 +2482,7 @@ ru Группа дома и строения - - ru - Группа дома и строения - + false ГруппаДомаИСтроенияИностранныйАдресаРасширеннаяПодсказка 289 @@ -2455,7 +2570,6 @@ Left true - true true true true @@ -2503,11 +2617,6 @@ ru Тип адреса - - ru - Тип адреса - - true ТипАдресаExtendedTooltip 111 @@ -2597,8 +2706,6 @@ Left true - true - 2 true true true @@ -2699,6 +2806,33 @@ UserCmds Auto + + АдресныйКлассификаторУстарел + 353 + true + true + + true + + + АдресныйКлассификаторУстарелРасширеннаяПодсказка + 354 + Label + true + true + + Left + + + CommandBarHyperlink + Form.Command.АдресныйКлассификаторУстарел + Normal + Auto + true + true + UserCmds + Auto + true true @@ -3461,14 +3595,6 @@ true - - <key>ru</key> - <value>Панель команд формы</value> - - - ru - Панель команд формы - ПанельКомандФормыExtendedTooltip 139 @@ -4056,11 +4182,7 @@ - МожноЗагружатьКлассификатор - - <key>ru</key> - <value>Можно загружать классификатор</value> - + ЕстьПравоЗагружатьКлассификатор 29 Boolean @@ -4297,41 +4419,6 @@ true - - ДоступностьКлассификатораАдрес - - <key>ru</key> - <value>Доступность классификатора адрес</value> - - 30 - - String - - - - true - - - true - - - - ИдентификаторЗадания - - <key>ru</key> - <value>Идентификатор задания</value> - - 31 - - UUID - - - true - - - true - - ДополнительныйЭлемент @@ -4634,6 +4721,80 @@ </edit> </columns> </attributes> + <attributes> + <name>ЭтоВебСервис</name> + <title> + <key>ru</key> + <value>Это веб сервис</value> + + 48 + + Boolean + + + true + + + true + + + + АдресНаДату + + <key>ru</key> + <value>Адрес на дату</value> + + 49 + + Date + + Date + + + + true + + + true + + + + АдресДействуетС + + <key>ru</key> + <value>Адрес действует С</value> + + 50 + + Date + + Date + + + + true + + + true + + + + ВводНовогоАдреса + + <key>ru</key> + <value>Ввод нового адреса</value> + + 51 + + Boolean + + + true + + + true + + КомандаОК @@ -4827,15 +4988,15 @@ <selectedRowsUse>Auto</selectedRowsUse> </formCommands> <formCommands> - <name>АвторизацияНаСайтеПоддержкиПользователей</name> + <name>ПодключитьИнтернетПоддержку</name> <title> <key>ru</key> - <value>Авторизация на сайте поддержки</value> + <value>Подключить интернет-поддержку</value> 9 ru - Авторизация на сайте поддержки пользователей + Подключить интернет поддержку true @@ -4923,6 +5084,32 @@ DontUse Auto + + АдресныйКлассификаторУстарел + + <key>ru</key> + <value>ФИАС</value> + + 13 + + ru + Адресный классификатор устарел + + + true + + + CommonPicture.Предупреждение + + + + АдресныйКлассификаторУстарел + + + TextPicture + DontUse + Auto + ВидКонтактнойИнформации @@ -4951,6 +5138,15 @@ Комментарий + + ДействуетС + + Date + + Date + + + diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводАдреса/Module.bsl b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводАдреса/Module.bsl index 90f1f54f4..b3d6a2173 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводАдреса/Module.bsl +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводАдреса/Module.bsl @@ -34,7 +34,7 @@ // Настройки формы ЭтоВебСервис = УправлениеКонтактнойИнформациейСлужебный.КлассификаторДоступенЧерезВебСервис(); - МожноЗагружатьКлассификатор = УправлениеКонтактнойИнформациейСлужебный.ЕстьВозможностьИзмененияАдресногоКлассификатора() И Не ЭтоВебСервис; + ЕстьПравоЗагружатьКлассификатор = УправлениеКонтактнойИнформациейСлужебный.ЕстьВозможностьИзмененияАдресногоКлассификатора() И Не ЭтоВебСервис; ЕстьКлассификатор = УправлениеКонтактнойИнформациейСлужебныйПовтИсп.АдресныйКлассификаторДоступен(); ЭтоТакси = ТекущийВариантИнтерфейсаКлиентскогоПриложения() = ВариантИнтерфейсаКлиентскогоПриложения.Такси; // Группа команд "все действия" зависит от интерфейса. @@ -50,9 +50,6 @@ ВидКонтактнойИнформации = УправлениеКонтактнойИнформациейСлужебный.СтруктураВидаКонтактнойИнформации(Параметры.ВидКонтактнойИнформации); Если ВидКонтактнойИнформации.ХранитьИсториюИзменений Тогда - Если Параметры.Свойство("ДействуетС") И Параметры.Свойство("ДействуетДо") Тогда - ОтобразитьИнформациюОДатахДействияАдреса(Параметры.ДействуетС, Параметры.ДействуетДо); - КонецЕсли; Если Параметры.Свойство("КонтактнаяИнформацияОписаниеДополнительныхРеквизитов") Тогда Для каждого СтрокаКИ Из Параметры.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов Цикл НоваяСтрока = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); @@ -62,9 +59,18 @@ Элементы.ИсторияИзменений.Видимость = Ложь; Элементы.ПоказатьИсториюВсеДействия.Видимость = Ложь; КонецЕсли; + Элементы.ИсторияИзмененийГиперссылка.Видимость = НЕ Параметры.Свойство("ИзФормыИстории"); + ВводНовогоАдреса = ?(Параметры.Свойство("ВводНовогоАдреса"), Параметры.ВводНовогоАдреса, Ложь); + Если ВводНовогоАдреса Тогда + ДействуетС = Параметры.ДействуетС; + Иначе + ДействуетС = ?(ЗначениеЗаполнено(Параметры.ДействуетС), Параметры.ДействуетС, ТекущаяДатаСеанса()); + КонецЕсли; + ОтобразитьИнформациюОДатахДействияАдреса(ДействуетС); Иначе Элементы.ИсторияИзменений.Видимость = Ложь; Элементы.ПоказатьИсториюВсеДействия.Видимость = Ложь; + Элементы.ГруппаИсторическийАдрес.Видимость = Ложь; КонецЕсли; Если ВидКонтактнойИнформации.ПроверятьПоФИАС Тогда @@ -72,15 +78,9 @@ Иначе Команды.ПроверитьЗаполнениеАдреса.Подсказка = НСтр("ru = 'Проверить заполнение адреса в формате КЛАДР'"); КонецЕсли; - ВидКонтактнойИнформации.Вставить("Ссылка", Параметры.ВидКонтактнойИнформации); - // Всегда используем разрезы ФИАС. - ВидКонтактнойИнформации.Вставить("ФорматАдреса", "ФИАС"); - - // Заголовок - Заголовок = ?(ПустаяСтрока(Параметры.Заголовок), - Строка(УправлениеКонтактнойИнформациейСлужебный.ТипВидаКонтактнойИнформации(ВидКонтактнойИнформации)), - Параметры.Заголовок); + ВидКонтактнойИнформации.Вставить("ФорматАдреса", "ФИАС"); // Всегда используем разрезы ФИАС. + Заголовок = ?(ПустаяСтрока(Параметры.Заголовок), ВидКонтактнойИнформации.Наименование, Параметры.Заголовок); СкрыватьНеактуальныеАдреса = ВидКонтактнойИнформации.СкрыватьНеактуальныеАдреса; АдресТолькоРоссийский = ВидКонтактнойИнформации.АдресТолькоРоссийский; @@ -101,7 +101,15 @@ КонецЕсли; Иначе XDTOКонтактная = УправлениеКонтактнойИнформациейСлужебный.АдресXMLВXDTO(Параметры.ЗначенияПолей, Параметры.Представление, ); - XDTOКонтактная.Состав.Страна = СтранаРоссия.Наименование; + Если Параметры.Свойство("Страна") И ЗначениеЗаполнено(Параметры.Страна) Тогда + Если ТипЗнч(Параметры.Страна) = ТипЗнч(Справочники.СтраныМира.ПустаяСсылка()) Тогда + XDTOКонтактная.Состав.Страна = Параметры.Страна.Наименование; + Иначе + XDTOКонтактная.Состав.Страна = Строка(Параметры.Страна); + КонецЕсли; + Иначе + XDTOКонтактная.Состав.Страна = СтранаРоссия.Наименование; + КонецЕсли; КонецЕсли; Если Параметры.Комментарий <> Неопределено Тогда @@ -126,13 +134,9 @@ // Проверяем на корректность Если Страна <> СтранаРоссия Тогда // Считаем адрес российским - ТестПредставленияАдреса = СокрЛП(СокрЛП(Страна) + " " + СокрЛП(ПредставлениеАдреса)); - Если Не ПустаяСтрока(ТестПредставленияАдреса) Тогда - ПредставлениеАдреса = ТестПредставленияАдреса; - РазрешитьВводАдресаВСвободнойФорме = Ложь; - ПредставлениеАдресаИзменено = Истина; - КонецЕсли; + ПредставлениеАдресаИзменено = Истина; ТекстПредупрежденияПриОткрытии = НСтр("ru = 'Адрес введен некорректно: допускается ввод только российских адресов. Значение поля ""Страна"" было изменено на ""Россия"", необходимо проверить остальные поля.'"); + ПолеПредупрежденияПриОткрытии = "Страна"; Модифицированность = Истина; КонецЕсли; Страна = СтранаРоссия; @@ -165,38 +169,17 @@ РазрешитьВводАдресаВСвободнойФорме = Ложь; КонецЕсли; Иначе - МожноЗагружатьКлассификатор = Ложь; + ЕстьПравоЗагружатьКлассификатор = Ложь; КонецЕсли; - Элементы.ЗагрузитьКлассификатор.Видимость = МожноЗагружатьКлассификатор; - Элементы.ЗагрузитьКлассификаторВсеДействия.Видимость = МожноЗагружатьКлассификатор; - - Если Не ЕстьКлассификатор Тогда - Элементы.ЗаполнитьПоПочтовомуИндексу.Видимость = Ложь; - Элементы.ЗаполнитьПоПочтовомуИндексуВсеДействия.Видимость = Ложь; - КонецЕсли; - - // По умолчанию выводим представление. - Элементы.АдресПредставлениеКомментарий.ТекущаяСтраница = Элементы.АдресСтраницаПредставление; - - Если ЭтоТакси Тогда - Элементы.ФормаВсеДействия.Видимость = Ложь; - Иначе - Элементы.ВвестиАдресВСвободнойФорме.Видимость = Ложь; - Элементы.ЗаполнитьПоПочтовомуИндексу.Видимость = Ложь; - Элементы.ФормаОчиститьАдрес.Видимость = Ложь; - Элементы.ЗагрузитьКлассификатор.Видимость = Ложь; - Элементы.ИзменитьФорму.Видимость = Ложь; - Элементы.ФормаВводАдресаПоказать.Видимость = Ложь; - КонецЕсли; + ОпределитьОтображениеЭлементовНаФорме(ЭтоТакси); ДоступностьКлассификатора = Неопределено; Элементы.АдресСтраницаКомментарий.Картинка = ОбщегоНазначенияКлиентСервер.КартинкаКомментария(Комментарий); + СообщениеОНеобходимостиОбновленияКлассификатора(НаселенныйПунктДетально.Регион.Идентификатор); - ПроверитьДоступностьКлассификатора(ДоступностьКлассификатора); УстановитьКлючИспользованияФормы(); - КонецПроцедуры &НаКлиенте @@ -204,17 +187,20 @@ Элементы.ДобавитьОбъект.Доступность = МожноДобавлятьДополнительныеОбъекты(); ОбработкаИзмененияСтраныКлиент(); - - Если Не ПустаяСтрока(ДоступностьКлассификатораАдрес) Или Не ПустаяСтрока(ТекстПредупрежденияПриОткрытии) Тогда - ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеЗадания", 0.5, Истина); + Если ЗначениеЗаполнено(ТекстПредупрежденияПриОткрытии) Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстПредупрежденияПриОткрытии,, ПолеПредупрежденияПриОткрытии); КонецЕсли; + ПроверитьДоступностьКлассификатора(); + КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) + Оповещение = Новый ОписаниеОповещения("ПодтвердитьИЗакрыть", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы); + КонецПроцедуры &НаКлиенте @@ -292,33 +278,12 @@ &НаКлиенте Процедура ИндексИзменениеТекстаРедактирования(Элемент, Текст, СтандартнаяОбработка) - - Если МожноЗагружатьКлассификатор И Страна = СтранаРоссия Тогда - Если СтрДлина(СокрЛП(Текст)) = 6 И Индекс <> Текст И Страна = СтранаРоссия Тогда - Если ЕстьКлассификатор Тогда - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("Индекс", СокрЛП(Текст)); - ПараметрыФормы.Вставить("СкрыватьНеактуальныеАдреса", СкрыватьНеактуальныеАдреса); - ПараметрыФормы.Вставить("ФорматАдреса", ВидКонтактнойИнформации.ФорматАдреса); - ПараметрыФормы.Вставить("ВыборАдресаПоПочтовомуИндексу", Истина); - ПараметрыВыполнения = Новый Структура("Уникальность, Окно, НавигационнаяСсылка, Источник", Ложь); - - Если НаличиеИндексаВКлассификаторе(Число(Текст)) Тогда - ОткрытьФорму("Обработка.ВводКонтактнойИнформации.Форма.ВыборАдресаПоПочтовомуИндексу", ПараметрыФормы, Элементы.Индекс); - Иначе - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда - ОповещениеОЗакрытие = Новый ОписаниеОповещения("ОткрытьФормуВыборАдресаПоПочтовомуИндексу", ЭтотОбъект, ПараметрыФормы); - МодульАдресныйКлассификаторКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("АдресныйКлассификаторКлиент"); - МодульАдресныйКлассификаторКлиент.ОткрытьФормуЗагрузкиАдресногоКлассификатора(ПараметрыВыполнения, ПараметрыФормы, ОповещениеОЗакрытие); - КонецЕсли; - КонецЕсли; - КонецЕсли; - Иначе - Если СтрДлина(СокрЛП(Текст)) = 6 Тогда - ОбновитьПредставлениеАдреса(); - КонецЕсли; - КонецЕсли; - КонецЕсли; + ФормаВыбораУлицПоИндексу(Текст, СтандартнаяОбработка); +КонецПроцедуры + +&НаКлиенте +Процедура ИндексОкончаниеВводаТекста(Элемент, Текст, ДанныеВыбора, ПараметрыПолученияДанных, СтандартнаяОбработка) + ФормаВыбораУлицПоИндексу(Текст, СтандартнаяОбработка); КонецПроцедуры &НаКлиенте @@ -331,6 +296,34 @@ ОткрытьФорму("Обработка.ВводКонтактнойИнформации.Форма.ВыборАдресаПоПочтовомуИндексу", ПараметрыФормы, Элементы.Индекс); КонецФункции +&НаКлиенте +Процедура ФормаВыбораУлицПоИндексу(Знач Текст, СтандартнаяОбработка) + + Если СтрДлина(СокрЛП(Текст)) = 6 И Индекс <> Текст И Страна = СтранаРоссия Тогда + Индекс = Текст; + Если ЕстьКлассификатор Тогда + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("Индекс", СокрЛП(Текст)); + ПараметрыФормы.Вставить("СкрыватьНеактуальныеАдреса", СкрыватьНеактуальныеАдреса); + ПараметрыФормы.Вставить("ФорматАдреса", ВидКонтактнойИнформации.ФорматАдреса); + ПараметрыФормы.Вставить("ВыборАдресаПоПочтовомуИндексу", Истина); + ПараметрыВыполнения = Новый Структура("Уникальность, Окно, НавигационнаяСсылка, Источник", Ложь); + + Если ЭтоВебСервис ИЛИ НаличиеИндексаВКлассификаторе(Число(Текст)) Тогда + ОткрытьФорму("Обработка.ВводКонтактнойИнформации.Форма.ВыборАдресаПоПочтовомуИндексу", ПараметрыФормы, Элементы.Индекс); + ИначеЕсли ЕстьПравоЗагружатьКлассификатор Тогда + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда + ОповещениеОЗакрытие = Новый ОписаниеОповещения("ОткрытьФормуВыборАдресаПоПочтовомуИндексу", ЭтотОбъект, ПараметрыФормы); + МодульАдресныйКлассификаторКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("АдресныйКлассификаторКлиент"); + МодульАдресныйКлассификаторКлиент.ОткрытьФормуЗагрузкиАдресногоКлассификатора(ПараметрыВыполнения, ПараметрыФормы, ОповещениеОЗакрытие); + КонецЕсли; + КонецЕсли; + Иначе + ОбновитьПредставлениеАдреса(); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + &НаКлиенте Процедура ИндексОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) @@ -339,6 +332,7 @@ Возврат; ИначеЕсли ВыбранноеЗначение.Отказ Тогда Если ВыбранноеЗначение.Свойство("Индекс") И НЕ ПустаяСтрока(ВыбранноеЗначение.Индекс) Тогда + ОбновитьПредставлениеАдреса(); Возврат; Иначе Если НЕ ПодборПоИндексуДоступен Тогда @@ -346,7 +340,7 @@ Формат(ВыбранноеЗначение.Индекс, "ЧРГ=' '; ЧГ=0")); ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения,,, "Объект.Индекс"); Иначе - ПроверитьДоступностьКлассификатора(ВыбранноеЗначение); + ПроверитьДоступностьКлассификатора(); КонецЕсли; КонецЕсли; Возврат; @@ -402,7 +396,7 @@ &НаКлиенте Процедура ДомОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) Если ЗначениеЗаполнено(ВыбранноеЗначение) Тогда - СтандартнаяОбработка = Ложь; + СтандартнаяОбработка = Ложь; ЗаполнитьПоляДомовИСтроений(ВыбранноеЗначение); КонецЕсли; КонецПроцедуры @@ -444,7 +438,6 @@ КонецЕсли; КонецПроцедуры - &НаКлиенте Процедура ТипПомещенияПриИзменении(Элемент) @@ -472,6 +465,11 @@ КонецПроцедуры +&НаКлиенте +Процедура НаселенныйПунктОчистка(Элемент, СтандартнаяОбработка) + ИдентификаторНаселенногоПункта = Неопределено; +КонецПроцедуры + &НаКлиенте Процедура НаселенныйПунктНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; @@ -501,7 +499,6 @@ &НаКлиенте Процедура НаселенныйПунктОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) - Перем МожноЗагружатьРегион; СтандартнаяОбработка = Ложь; Если ВыбранноеЗначение=Неопределено Тогда @@ -539,7 +536,7 @@ КонецЕсли; РегионНеЗагружен = ВыбранноеЗначение.Свойство("РегионЗагружен") И (Не ВыбранноеЗначение.РегионЗагружен); - Если МожноЗагружатьКлассификатор И РегионНеЗагружен Тогда + Если ЕстьПравоЗагружатьКлассификатор И РегионНеЗагружен Тогда // Предлагаем загрузить классификатор. УправлениеКонтактнойИнформациейКлиент.ПредложениеЗагрузкиКлассификатора( СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='Данные для ""%1"" не загружены.'"), ВыбранноеЗначение.Представление), @@ -558,7 +555,6 @@ ОбработкаИзмененияУлицыСервер(Контекст); КонтекстФормыКлиент(Контекст); - КонецПроцедуры &НаКлиенте @@ -584,7 +580,7 @@ ДополнительныеПараметры.Вставить("СкрыватьНеактуальные", СкрыватьНеактуальныеАдреса); ДанныеКлассификатора = СписокАвтоподбораНаселенногоПункта(ТекстДляАвтоПодбора, ДополнительныеПараметры); - ПроверитьДоступностьКлассификатора(ДанныеКлассификатора); + ПроверитьДоступностьКлассификатора(); Если ДанныеКлассификатора.Отказ Тогда Возврат; КонецЕсли; @@ -634,6 +630,7 @@ ПараметрыФормы = Новый Структура; ПараметрыФормы.Вставить("СкрыватьНеактуальныеАдреса", СкрыватьНеактуальныеАдреса); ПараметрыФормы.Вставить("ФорматАдреса", ВидКонтактнойИнформации.ФорматАдреса); + ПараметрыФормы.Вставить("НаселенныйПунктДетально", НаселенныйПунктДетально); Если ЗначениеЗаполнено(ИдентификаторНаселенногоПункта) Тогда ПараметрыФормы.Вставить("ИдентификаторНаселенногоПункта", ИдентификаторНаселенногоПункта); ПараметрыФормы.Вставить("Улица", Улица); @@ -666,37 +663,31 @@ Модифицированность = Истина; ТипВыбора = ТипЗнч(ВыбранноеЗначение); Если ТипВыбора = Тип("Структура") Тогда + Если ВыбранноеЗначение.Свойство("НаселенныйПунктДетально") Тогда // Результат автоподбора или выбора кнопкой, берем все оттуда. - Если ЗначениеЗаполнено(ВыбранноеЗначение.Улица) Тогда - НаселенныйПунктДетально.Улица.Представление = ВыбранноеЗначение.Улица; - НаименованиеСокращение= УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(ВыбранноеЗначение.Улица); - НаселенныйПунктДетально.Улица.Наименование = НаименованиеСокращение.Наименование; - НаселенныйПунктДетально.Улица.Сокращение = НаименованиеСокращение.Сокращение; - НаселенныйПунктДетально.Улица.Идентификатор = ВыбранноеЗначение.Идентификатор; - КонецЕсли; + НаселенныйПунктДетально = ВыбранноеЗначение.НаселенныйПунктДетально; + Иначе + НаселенныйПунктДетально.Улица.Представление = ВыбранноеЗначение.Улица; + НаселенныйПунктДетально.ДополнительныйЭлемент.Представление = ВыбранноеЗначение.ДополнительныйЭлемент; + Если ЗначениеЗаполнено(ВыбранноеЗначение.ДополнительныйЭлемент) Тогда - НаселенныйПунктДетально.ДополнительныйЭлемент.Представление = ВыбранноеЗначение.ДополнительныйЭлемент; - НаименованиеСокращение= УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(ВыбранноеЗначение.ДополнительныйЭлемент); - НаселенныйПунктДетально.ДополнительныйЭлемент.Наименование = НаименованиеСокращение.Наименование; - НаселенныйПунктДетально.ДополнительныйЭлемент.Сокращение = НаименованиеСокращение.Сокращение; - КонецЕсли; - Если ЗначениеЗаполнено(ВыбранноеЗначение.ПодчиненныйЭлемент) Тогда - НаселенныйПунктДетально.ПодчиненныйЭлемент.Представление = ВыбранноеЗначение.ПодчиненныйЭлемент; - НаименованиеСокращение= УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(ВыбранноеЗначение.ПодчиненныйЭлемент); - НаселенныйПунктДетально.ПодчиненныйЭлемент.Наименование = НаименованиеСокращение.Наименование; - НаселенныйПунктДетально.ПодчиненныйЭлемент.Сокращение = НаименованиеСокращение.Сокращение; + НаименованиеСокращение = УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(ВыбранноеЗначение.ДополнительныйЭлемент); + НаселенныйПунктДетально.ДополнительныйЭлемент.ПутьXPath = УправлениеКонтактнойИнформациейКлиентСервер.XPathДополнительногоОбъектаАдресации(90, НаименованиеСокращение.Сокращение); КонецЕсли; + НаселенныйПунктДетально.ПодчиненныйЭлемент.Представление = ВыбранноеЗначение.ПодчиненныйЭлемент; + НаселенныйПунктДетально.Улица.Идентификатор = ВыбранноеЗначение.Идентификатор; + КонецЕсли; Улица = ВыбранноеЗначение.Представление; ИдентификаторУлицы = ВыбранноеЗначение.Идентификатор; Иначе // Иной источник, будет попытка разобрать. ИдентификаторУлицы = Неопределено; - Улица = Строка(ВыбранноеЗначение); + Улица = Строка(ВыбранноеЗначение); КонецЕсли; Элементы.Улица.ОбновитьТекстРедактирования(); Контекст = КонтекстФормыКлиент(); - ОбработкаИзмененияУлицыСервер(Контекст); + УстановитьИндексИПредставление(Контекст); КонтекстФормыКлиент(Контекст); КонецПроцедуры @@ -723,7 +714,7 @@ ДополнительныеПараметры.Вставить("СкрыватьНеактуальные", СкрыватьНеактуальныеАдреса); ДанныеКлассификатора = СписокАвтоподбораУлицы(ИдентификаторНаселенногоПункта, Текст, ДополнительныеПараметры); - ПроверитьДоступностьКлассификатора(ДанныеКлассификатора); + ПроверитьДоступностьКлассификатора(); Если ДанныеКлассификатора.Отказ Тогда Возврат; КонецЕсли; @@ -755,6 +746,26 @@ КонецПроцедуры +&НаКлиенте +Процедура УлицаОчистка(Элемент, СтандартнаяОбработка) + + СтандартнаяОбработка = Ложь; + // Улица становится непроверенной. + ИдентификаторУлицы = Неопределено; + Улица = ""; + Для каждого ЭлементАдреса Из НаселенныйПунктДетально Цикл + Если ЭлементАдреса.Значение.Уровень > 6 Тогда + ЭлементАдреса.Значение.Представление = ""; + ЭлементАдреса.Значение.Идентификатор = Неопределено; + КонецЕсли; + КонецЦикла; + + Контекст = КонтекстФормыКлиент(); + ОбработкаИзмененияУлицыСервер(Контекст); + КонтекстФормыКлиент(Контекст); + +КонецПроцедуры + &НаКлиенте Процедура ПредставлениеАдресаПриИзменении(Элемент) ПредставлениеАдресаИзменено = Истина; @@ -769,16 +780,12 @@ &НаКлиенте Процедура ДомАвтоПодбор(Элемент, Текст, ДанныеВыбора, ПараметрыПолученияДанных, Ожидание, СтандартнаяОбработка) - Если ЗначениеЗаполнено(Текст) - И (ЗначениеЗаполнено(ЭтотОбъект.ИдентификаторНаселенногоПункта) - ИЛИ ЗначениеЗаполнено(ЭтотОбъект.ИдентификаторУлицы)) Тогда - Идентификатор = ?(ЗначениеЗаполнено(ИдентификаторУлицы), - ИдентификаторУлицы, ИдентификаторНаселенногоПункта); - + Если ЗначениеЗаполнено(Текст) Тогда + Идентификатор = ?(ЗначениеЗаполнено(Улица), ИдентификаторУлицы, ИдентификаторНаселенногоПункта); + Если ЗначениеЗаполнено(Идентификатор) Тогда ДанныеВыбора = СписокАвтоподбораВариантовДомов(Идентификатор, Текст + "%"); - Если ДанныеВыбора.Количество() > 0 Тогда - СтандартнаяОбработка = Ложь; - КонецЕсли; + СтандартнаяОбработка = (ДанныеВыбора.Количество() = 0); + КонецЕсли; КонецЕсли; КонецПроцедуры @@ -837,7 +844,7 @@ КонецЕсли; РегионНеЗагружен = ВыбранноеЗначение.Свойство("РегионЗагружен") И (Не ВыбранноеЗначение.РегионЗагружен); - Если МожноЗагружатьКлассификатор И РегионНеЗагружен Тогда + Если ЕстьПравоЗагружатьКлассификатор И РегионНеЗагружен Тогда // Предлагаем загрузить классификатор. УправлениеКонтактнойИнформациейКлиент.ПредложениеЗагрузкиКлассификатора( СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='Данные для ""%1"" не загружены.'"), ВыбранноеЗначение.Представление), @@ -854,7 +861,6 @@ ЗаполнитьПредставлениеАдреса(Контекст); КонтекстФормыКлиент(Контекст); - КонецПроцедуры &НаКлиенте @@ -887,6 +893,51 @@ ОбновитьПредставлениеАдреса(); КонецПроцедуры +&НаКлиенте +Процедура АдресНаДатуАвтоПодбор(Элемент, Текст, ДанныеВыбора, ПараметрыПолученияДанных, Ожидание, СтандартнаяОбработка) + Если СтрСравнить(Текст, НСтр("ru='начала учета'")) = 0 Или ПустаяСтрока(Текст) Тогда + Элементы.АдресНаДату.ФорматРедактирования = ""; + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура АдресНаДатуПриИзменении(Элемент) + + Если Не ВводНовогоАдреса Тогда + Отбор = Новый Структура("Вид", ВидКонтактнойИнформации.Ссылка); + НайденныеСтроки = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Отбор); + Результат = ОпределитьДатуДействия(АдресНаДату, НайденныеСтроки); + + Контекст = КонтекстФормыКлиент(); + + Если Результат.ТекущаяСтрока <> Неопределено Тогда + ЗначенияПолей = Результат.ТекущаяСтрока.ЗначенияПолей; + Тип = Результат.ТекущаяСтрока.Тип; + АдресДействуетС = Результат.ДействуетС; + Иначе + ЗначенияПолей = ""; + Тип = ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Адрес"); + АдресДействуетС = АдресНаДату; + КонецЕсли; + + ПерезаполнитьФормуВводаАдреса(Контекст, ЗначенияПолей, Тип, СтранаРоссия); + КонтекстФормыКлиент(Контекст); + ОтобразитьДополнительныеЗданияИПомещения(); + + Если ЗначениеЗаполнено(Результат.ДействуетПо) Тогда + ТекстИсторическийАдрес = " " + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'действует по %1'"), Формат(Результат.ДействуетПо - 10, "ДЛФ=DD")); + Иначе + ТекстИсторическийАдрес = НСтр("ru = 'действует по настоящее время.'"); + КонецЕсли; + Элементы.ТекстПроДатуДействия.Заголовок = ТекстИсторическийАдрес; + Иначе + АдресДействуетС = АдресНаДату; + КонецЕсли; + + Элементы.АдресНаДату.ФорматРедактирования = ?(ЗначениеЗаполнено(АдресНаДату), "", "ДФ='""начала учета""'"); + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиКомандФормы @@ -911,10 +962,11 @@ КонецЕсли; ПредупреждатьОбОтсутствииОшибок = Истина; + ТребуетсяОбновление = Ложь; Контекст = КонтекстФормыКлиент(); - СписокОшибок = СписокОшибокЗаполнения(Контекст, ПредупреждатьОбОтсутствииОшибок); - СообщитьОбОшибкахЗаполнения(СписокОшибок, ПредупреждатьОбОтсутствииОшибок); + СписокОшибок = СписокОшибокЗаполнения(Контекст, ПредупреждатьОбОтсутствииОшибок, ТребуетсяОбновление); + СообщитьОбОшибкахЗаполнения(СписокОшибок, ПредупреждатьОбОтсутствииОшибок, ТребуетсяОбновление); КонецПроцедуры @@ -979,7 +1031,10 @@ Процедура АвторизацияНаСайтеПоддержкиПользователей(Команда) ОповещениеОЗакрытии = Новый ОписаниеОповещения("АвторизацияНаСайтеПоддержкиПользователейЗавершение", ЭтотОбъект); - СтандартныеПодсистемыКлиент.АвторизоватьНаСайтеПоддержкиПользователей(ЭтотОбъект, ОповещениеОЗакрытии); + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + МодульИнтернетПоддержкаПользователейКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ИнтернетПоддержкаПользователейКлиент"); + МодульИнтернетПоддержкаПользователейКлиент.ПодключитьИнтернетПоддержкуПользователей(ОповещениеОЗакрытии, ЭтотОбъект); + КонецЕсли КонецПроцедуры @@ -1005,7 +1060,9 @@ ПараметрыФормы = Новый Структура("СписокКонтактнойИнформации", СписокКонтактнойИнформации); ПараметрыФормы.Вставить("ВидКонтактнойИнформации", ВидКонтактнойИнформации.Ссылка); ПараметрыФормы.Вставить("ТолькоПросмотр", ЭтотОбъект.ТолькоПросмотр); - + ПараметрыФормы.Вставить("ИзФормыВводаАдреса", Истина); + ПараметрыФормы.Вставить("ДействуетС", АдресНаДату); + ОповещениеОЗакрытие = Новый ОписаниеОповещения("ПослеЗакрытияФормыИстории", ЭтотОбъект, ДополнительныеПараметры); ОткрытьФорму("Обработка.ВводКонтактнойИнформации.Форма.ИсторияКонтактнойИнформации", ПараметрыФормы, ЭтотОбъект,,,, ОповещениеОЗакрытие); @@ -1021,105 +1078,55 @@ УправлениеКонтактнойИнформациейКлиент.ПоказатьАдресНаКарте(ПредставлениеАдреса, "GoogleMaps"); КонецПроцедуры -&НаСервереБезКонтекста -Функция ЗаполнитьСписокКонтактнойИнформации(ВидКонтактнойИнформации, КонтактнаяИнформацияОписаниеДополнительныхРеквизитов, Контекст) - - Отбор = Новый Структура("Вид", ВидКонтактнойИнформации); - НайденныеСтроки = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Отбор); - - СписокКонтактнойИнформации = Новый Массив; - Для каждого СтрокаКонтактнойИнформации Из НайденныеСтроки Цикл - КонтактнаяИнформация = Новый Структура("Представление, ЗначенияПолей, ДействуетС"); - Если СтрокаКонтактнойИнформации.ЭтоИсторическаяКонтактнаяИнформация Тогда - ЗаполнитьЗначенияСвойств(КонтактнаяИнформация, СтрокаКонтактнойИнформации); - Иначе - XDTOИнформация = КонтактнаяИнформацияПоЗначениюРеквизитов(Контекст); - ЗначенияПолей = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияXDTOВXML(XDTOИнформация); - Если СтрСравнить(СтрокаКонтактнойИнформации.ЗначенияПолей, ЗначенияПолей) <> 0 Тогда - Если СтрокаКонтактнойИнформации.ДействуетС < НачалоДня(ТекущаяДатаСеанса()) Тогда - // старое значение - ЗаполнитьЗначенияСвойств(КонтактнаяИнформация, СтрокаКонтактнойИнформации); - СписокКонтактнойИнформации.Добавить(КонтактнаяИнформация); - // новое значение - КонтактнаяИнформация = Новый Структура("Представление, ЗначенияПолей, ДействуетС"); - КонтактнаяИнформация.Представление = Контекст.ПредставлениеАдреса; - КонтактнаяИнформация.ЗначенияПолей = ЗначенияПолей; - КонтактнаяИнформация.ДействуетС = ТекущаяДатаСеанса(); - Иначе - КонтактнаяИнформация.Представление = Контекст.ПредставлениеАдреса; - КонтактнаяИнформация.ЗначенияПолей = ЗначенияПолей; - КонтактнаяИнформация.ДействуетС = ТекущаяДатаСеанса(); - КонецЕсли; - Иначе - ЗаполнитьЗначенияСвойств(КонтактнаяИнформация, СтрокаКонтактнойИнформации); - КонецЕсли; - КонецЕсли; - - СписокКонтактнойИнформации.Добавить(КонтактнаяИнформация); - КонецЦикла; - - Возврат СписокКонтактнойИнформации; -КонецФункции - &НаКлиенте -Процедура ПослеЗакрытияФормыИстории(Результат, ДополнительныеПараметры) Экспорт - - Если Результат = Неопределено Тогда - Возврат; +Процедура АдресныйКлассификаторУстарел(Команда) + + СообщениеОПроверкеАдреса = НСтр("ru='Адресные сведения ФИАС, загруженные в программу, устарели. + |Рекомендуется выполнить обновление, чтобы проверка адреса выполнялась корректно.'"); + Если ЕстьПравоЗагружатьКлассификатор Тогда + ВопросОбОбновлениеАдресногоКлассификатора(СообщениеОПроверкеАдреса); + Иначе + СообщениеОПроверкеАдреса = СообщениеОПроверкеАдреса + Символы.ПС + + НСтр("ru = 'Для обновления адресного классификатора необходимо обратиться к администратору.'"); + ПоказатьПредупреждение(, СообщениеОПроверкеАдреса); КонецЕсли; - - Отбор = Новый Структура("Вид", ВидКонтактнойИнформации.Ссылка); - НайденныеСтроки = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Отбор); - - ИмяРеквизита = ""; - Для Каждого СтрокаКонтактнойИнформации Из НайденныеСтроки Цикл - Если НЕ СтрокаКонтактнойИнформации.ЭтоИсторическаяКонтактнаяИнформация Тогда - ИмяРеквизита = СтрокаКонтактнойИнформации.ИмяРеквизита; - КонецЕсли; - КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Удалить(СтрокаКонтактнойИнформации); - КонецЦикла; - - ЭтоИсторическаяКонтактнаяИнформация = Ложь; - ПараметрыОбновления = Новый Структура; - Для Каждого СтрокаКонтактнойИнформации Из Результат Цикл - ДанныеСтроки = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); - ЗаполнитьЗначенияСвойств(ДанныеСтроки, СтрокаКонтактнойИнформации); - Если НЕ СтрокаКонтактнойИнформации.ЭтоИсторическаяКонтактнаяИнформация Тогда - ДанныеСтроки.ИмяРеквизита = ИмяРеквизита; - Контекст = ДополнительныеПараметры.Контекст; - Если СтрСравнить(Контекст.ПредставлениеАдреса, СтрокаКонтактнойИнформации.Представление) <> 0 Тогда - ПерезаполнитьФормуВводаАдреса(Контекст, СтрокаКонтактнойИнформации.ЗначенияПолей, СтрокаКонтактнойИнформации.Тип); - КонтекстФормыКлиент(Контекст); - ОтобразитьДополнительныеЗданияИПомещения(); - КонецЕсли; - КонецЕсли; - КонецЦикла; - ЭтотОбъект.Модифицированность = Истина; - КонецПроцедуры -&НаСервереБезКонтекста -Функция ПерезаполнитьФормуВводаАдреса(Контекст, ЗначенияПолей, ТипКонтактнойИнформации) - - РезультатыЧтения = ""; - XDTOКонтактная = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияИзXML(ЗначенияПолей, ТипКонтактнойИнформации, РезультатыЧтения); - ЗначениеРеквизитовПоКонтактнойИнформации(Контекст, XDTOКонтактная); - Возврат РезультатыЧтения; - -КонецФункции - #КонецОбласти #Область СлужебныеПроцедурыИФункции &НаКлиенте Процедура ПоказатьСписокДомов(ВключитьОтбор) - Идентификатор = ?(ЗначениеЗаполнено(ИдентификаторУлицы), ИдентификаторУлицы, ИдентификаторНаселенногоПункта); - ПараметрыФормы = Новый Структура("Идентификатор, Дом, Строение", Идентификатор, Дом, Строение); - ПараметрыФормы.Вставить("ТипСтроения", ТипСтроения); - ПараметрыФормы.Вставить("Отбор", ВключитьОтбор); - ОповещениеОЗакрытие = Новый ОписаниеОповещения("ВыбранДома", ЭтотОбъект); - ОткрытьФорму("Обработка.ВводКонтактнойИнформации.Форма.ВыборДома", ПараметрыФормы,,,,, ОповещениеОЗакрытие, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); + + Идентификатор = ?(ЗначениеЗаполнено(Улица), ИдентификаторУлицы, ИдентификаторНаселенногоПункта); + + Если ЗначениеЗаполнено(Идентификатор) И ЕстьСписокДомов(Идентификатор) Тогда + ПараметрыФормы = Новый Структура("Идентификатор, Дом, Строение", Идентификатор, Дом, Строение); + ПараметрыФормы.Вставить("ТипСтроения", ТипСтроения); + ПараметрыФормы.Вставить("Отбор", ВключитьОтбор); + ОповещениеОЗакрытие = Новый ОписаниеОповещения("ВыбранДома", ЭтотОбъект); + ОткрытьФорму("Обработка.ВводКонтактнойИнформации.Форма.ВыборДома", ПараметрыФормы,,,,, ОповещениеОЗакрытие, РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); + Иначе + Если ЗначениеЗаполнено(ПредставлениеАдреса) Тогда + ТекстПредупреждения = НСтр("ru = 'Выбор из списка недоступен, т.к в адресном классификаторе отсутствует информация о нумерации домов для введенного адреса.'"); + Иначе + ТекстПредупреждения = НСтр("ru = 'Для просмотра список домов заполните поля адреса.'"); + КонецЕсли; + ПоказатьПредупреждение(, ТекстПредупреждения); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ВопросОбОбновлениеАдресногоКлассификатора(Знач СообщениеОПроверкеАдреса) + + Кнопки = Новый СписокЗначений(); + Кнопки.Добавить("Закрыть", НСтр("ru = 'Закрыть'")); + Кнопки.Добавить("ОбновитьКлассификатор", НСтр("ru = 'Обновить классификатор'")); + Оповещение = Новый ОписаниеОповещения("ПослеВопросОбОбновление", ЭтотОбъект); + ПоказатьВопрос(Оповещение, СообщениеОПроверкеАдреса, Кнопки); + КонецПроцедуры &НаКлиенте @@ -1165,6 +1172,73 @@ КонецЕсли; Результат = Результат.ДанныеВыбора; + Если ВидКонтактнойИнформации.ХранитьИсториюИзменений Тогда + Результат.Вставить("ДействуетС", ?(ВводНовогоАдреса, АдресНаДату, АдресДействуетС)); + ИмяРеквизита = ""; + Отбор = Новый Структура("Вид", Результат.Вид); + + СтрокаДействующегоАдреса = Неопределено; + ДатаБылаИзменена = Истина; + ТекущаяДатаАдреса = ОбщегоНазначенияКлиент.ДатаСеанса(); + Дельта = АдресНаДату - ТекущаяДатаАдреса; + МинимальнаяДельта = ?(Дельта > 0, Дельта, -Дельта); + НайденныеСтроки = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Отбор); + + Для Каждого НайденнаяСтрока Из НайденныеСтроки Цикл + Если ЗначениеЗаполнено(НайденнаяСтрока.ИмяРеквизита) Тогда + ИмяРеквизита = НайденнаяСтрока.ИмяРеквизита; + КонецЕсли; + Если НайденнаяСтрока.ДействуетС = АдресНаДату Тогда + ДатаБылаИзменена = Ложь; + СтрокаДействующегоАдреса = НайденнаяСтрока; + Прервать; + КонецЕсли; + + Дельта = ТекущаяДатаАдреса - НайденнаяСтрока.ДействуетС; + Дельта = ?(Дельта > 0, Дельта, -Дельта); + Если Дельта <= МинимальнаяДельта Тогда + МинимальнаяДельта = Дельта; + СтрокаДействующегоАдреса = НайденнаяСтрока; + КонецЕсли; + КонецЦикла; + + Если ДатаБылаИзменена Тогда + + Отбор = Новый Структура("ДействуетС, Вид", АдресДействуетС, Результат.Вид); + СтрокиСАдресом = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Отбор); + + ПредставлениеРедактируемогоАдреса = ?(СтрокиСАдресом.Количество() > 0, СтрокиСАдресом[0].Представление, ""); + Если СтрСравнить(Результат.Представление, ПредставлениеРедактируемогоАдреса) <> 0 Тогда + НоваяКонтактнаяИнформация = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); + ЗаполнитьЗначенияСвойств(НоваяКонтактнаяИнформация, Результат); + НоваяКонтактнаяИнформация.ЗначенияПолей = Результат.КонтактнаяИнформация; + НоваяКонтактнаяИнформация.ДействуетС = АдресНаДату; + НоваяКонтактнаяИнформация.ХранитьИсториюИзменений = Истина; + Если СтрокаДействующегоАдреса = Неопределено Тогда + Отбор = Новый Структура("ЭтоИсторическаяКонтактнаяИнформация, Вид", Ложь, Результат.Вид); + НайденныеСтроки = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Отбор); + Для каждого НайденнаяСтрока Из НайденныеСтроки Цикл + НайденнаяСтрока.ЭтоИсторическаяКонтактнаяИнформация = Истина; + НайденнаяСтрока.ИмяРеквизита = ""; + КонецЦикла; + НоваяКонтактнаяИнформация.ИмяРеквизита = ИмяРеквизита; + НоваяКонтактнаяИнформация.ЭтоИсторическаяКонтактнаяИнформация = Ложь; + Иначе + НоваяКонтактнаяИнформация.ЭтоИсторическаяКонтактнаяИнформация = Истина; + Результат.Представление = СтрокаДействующегоАдреса.Представление; + Результат.КонтактнаяИнформация = СтрокаДействующегоАдреса.ЗначенияПолей; + КонецЕсли; + КонецЕсли; + Иначе + Если СтрСравнить(Результат.Представление, СтрокаДействующегоАдреса.Представление) <> 0 Тогда + ЗаполнитьЗначенияСвойств(СтрокаДействующегоАдреса, Результат); + СтрокаДействующегоАдреса.ЗначенияПолей = Результат.КонтактнаяИнформация; + СтрокаДействующегоАдреса.ИмяРеквизита = ИмяРеквизита; + СтрокаДействующегоАдреса.ЭтоИсторическаяКонтактнаяИнформация = Ложь; + КонецЕсли; + КонецЕсли; + КонецЕсли; + Если ТипЗнч(Результат) = Тип("Структура") Тогда Результат.Вставить("КонтактнаяИнформацияОписаниеДополнительныхРеквизитов", КонтактнаяИнформацияОписаниеДополнительныхРеквизитов); КонецЕсли; @@ -1208,6 +1282,59 @@ КонецПроцедуры +&НаКлиенте +Процедура ПослеЗакрытияФормыИстории(Результат, ДополнительныеПараметры) Экспорт + + Если Результат = Неопределено Тогда + Возврат; + КонецЕсли; + + ВводНовогоАдреса = ?(Результат.Свойство("ВводНовогоАдреса"), Результат.ВводНовогоАдреса, Ложь); + Если ВводНовогоАдреса Тогда + Контекст = ДополнительныеПараметры.Контекст; + Контекст.АдресНаДату = Результат.ТекущийАдрес; + АдресДействуетС = Контекст.АдресНаДату; + ПерезаполнитьФормуВводаАдреса(Контекст, "", ПредопределенноеЗначение("Перечисление.ТипыКонтактнойИнформации.Адрес"), СтранаРоссия); + КонтекстФормыКлиент(Контекст); + ОтобразитьДополнительныеЗданияИПомещения(); + Иначе + Отбор = Новый Структура("Вид", ВидКонтактнойИнформации.Ссылка); + НайденныеСтроки = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Отбор); + + ИмяРеквизита = ""; + Для Каждого СтрокаКонтактнойИнформации Из НайденныеСтроки Цикл + Если НЕ СтрокаКонтактнойИнформации.ЭтоИсторическаяКонтактнаяИнформация Тогда + ИмяРеквизита = СтрокаКонтактнойИнформации.ИмяРеквизита; + КонецЕсли; + КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Удалить(СтрокаКонтактнойИнформации); + КонецЦикла; + + ЭтоИсторическаяКонтактнаяИнформация = Ложь; + ПараметрыОбновления = Новый Структура; + Для Каждого СтрокаКонтактнойИнформации Из Результат.История Цикл + ДанныеСтроки = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); + ЗаполнитьЗначенияСвойств(ДанныеСтроки, СтрокаКонтактнойИнформации); + Если НЕ СтрокаКонтактнойИнформации.ЭтоИсторическаяКонтактнаяИнформация Тогда + ДанныеСтроки.ИмяРеквизита = ИмяРеквизита; + КонецЕсли; + Если НачалоДня(Результат.ТекущийАдрес) = НачалоДня(СтрокаКонтактнойИнформации.ДействуетС) Тогда + Контекст = ДополнительныеПараметры.Контекст; + Контекст.АдресНаДату = Результат.ТекущийАдрес; + ПерезаполнитьФормуВводаАдреса(Контекст, СтрокаКонтактнойИнформации.ЗначенияПолей, СтрокаКонтактнойИнформации.Тип, СтранаРоссия); + КонтекстФормыКлиент(Контекст); + ОтобразитьДополнительныеЗданияИПомещения(); + КонецЕсли; + КонецЦикла; + КонецЕсли; + + ОтобразитьИнформациюОДатахДействияАдреса(АдресНаДату); + + Если НЕ ЭтотОбъект.Модифицированность Тогда + ЭтотОбъект.Модифицированность = Результат.Модифицированность; + КонецЕсли; + +КонецПроцедуры + &НаКлиенте Процедура СохранитьСостояниеФормы() УстановитьКлючИспользованияФормы(); @@ -1251,7 +1378,7 @@ Возврат; КонецЕсли; - Если РазрешитьВводАдресаВСвободнойФорме Тогда + Если РазрешитьВводАдресаВСвободнойФорме И ЗначениеЗаполнено(ПредставлениеАдреса) Тогда Комментарий = ?(НЕ ПустаяСтрока(Комментарий), Комментарий + Символы.ПС, "") + НСтр("ru = 'Исходный адрес:'") + " " + ПредставлениеАдреса; ПодключитьОбработчикОжидания("УстановитьПиктограммуКомментария", 0.1, Истина); @@ -1277,37 +1404,6 @@ КопияКомментария = Комментарий; КонецПроцедуры -&НаКлиенте -Процедура Подключаемый_ПроверитьВыполнениеЗадания() - - Если Не ПустаяСтрока(ТекстПредупрежденияПриОткрытии) Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстПредупрежденияПриОткрытии, , ПолеПредупрежденияПриОткрытии); - ТекстПредупрежденияПриОткрытии = ""; - КонецЕсли; - - Если Не ПустаяСтрока(ДоступностьКлассификатораАдрес) Тогда - Если ЗаданиеВыполнено(ИдентификаторЗадания) Тогда - ОбновитьДоступностьКлассификатора(ЭтотОбъект); - Иначе - ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеЗадания", 0.5, Истина); - КонецЕсли; - КонецЕсли; - -КонецПроцедуры - -&НаСервереБезКонтекста -Функция ЗаданиеВыполнено(ИдентификаторЗадания) - - Если ОбщегоНазначенияКлиентСервер.РежимОтладки() Тогда - ЗаданиеВыполненоУспешно = Истина; - Иначе - ЗаданиеВыполненоУспешно = ДлительныеОперации.ЗаданиеВыполнено(ИдентификаторЗадания); - КонецЕсли; - - Возврат ЗаданиеВыполненоУспешно; - -КонецФункции - &НаСервереБезКонтекста Функция РезультатаВыбораПоОбновлениюФлагов(Контекст, ВозвращатьСписокЗначений = Ложь) // Обновляем некоторые флаги @@ -1360,7 +1456,7 @@ КонецФункции &НаСервереБезКонтекста -Функция СписокОшибокЗаполнения(Контекст, ПредупреждатьОбОтсутствии) +Функция СписокОшибокЗаполнения(Контекст, ПредупреждатьОбОтсутствии, ТребуетсяОбновление = Ложь) XDTOИнформация = КонтактнаяИнформацияПоЗначениюРеквизитов(Контекст); Если Контекст.ВидКонтактнойИнформации.ПроверятьКорректность Тогда @@ -1372,7 +1468,7 @@ // Получаем список значений: XPath - текст ошибки. Результат = УправлениеКонтактнойИнформациейСлужебный.ОшибкиЗаполненияАдресаXDTO( XDTOИнформация.Состав, ПараметрыПроверки); - + Если Результат.Количество() = 0 // Нет ошибок И ПредупреждатьОбОтсутствии // Но надо предупредить об их отсутствии. // Дополнительно проверяем на пустоту. @@ -1380,9 +1476,60 @@ Результат.Добавить("/", НСтр("ru = 'Адрес пуст.'")); КонецЕсли; + ОпределитьНеобходимостьОбновленияКлассификатора(Контекст, ТребуетсяОбновление); + Возврат Результат; КонецФункции +&НаСервереБезКонтекста +Процедура ОпределитьНеобходимостьОбновленияКлассификатора(Знач Контекст, ТребуетсяОбновление) + + // проверка источника + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда + МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); + ИнформацияОбОбновление = МодульАдресныйКлассификаторСлужебный.ОписаниеПоследнейЗагрузки(Контекст.НаселенныйПунктДетально.Регион.Идентификатор); + ТребуетсяОбновление = ИнформацияОбОбновление.НеобходимоОбновление; + КонецЕсли; + +КонецПроцедуры + +&НаСервереБезКонтекста +Функция ПерезаполнитьФормуВводаАдреса(Контекст, ЗначенияПолей, ТипКонтактнойИнформации, СтранаРоссия) + + РезультатыЧтения = ""; + XDTOКонтактная = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияИзXML(ЗначенияПолей, ТипКонтактнойИнформации, РезультатыЧтения); + Если ПустаяСтрока(ЗначенияПолей) Тогда + ПространствоИмен = УправлениеКонтактнойИнформациейКлиентСервер.ПространствоИмен(); + XDTOКонтактная.Состав.Страна = СтранаРоссия.Наименование; + XDTOКонтактная.Состав.Состав = ФабрикаXDTO.Создать(ФабрикаXDTO.Тип(ПространствоИмен, "АдресРФ")); + КонецЕсли; + + ЗначениеРеквизитовПоКонтактнойИнформации(Контекст, XDTOКонтактная); + Возврат РезультатыЧтения; + +КонецФункции + +&НаСервереБезКонтекста +Функция ЗаполнитьСписокКонтактнойИнформации(ВидКонтактнойИнформации, КонтактнаяИнформацияОписаниеДополнительныхРеквизитов, Контекст) + + Отбор = Новый Структура("Вид", ВидКонтактнойИнформации); + НайденныеСтроки = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Отбор); + + СписокКонтактнойИнформации = Новый Массив; + Для каждого СтрокаКонтактнойИнформации Из НайденныеСтроки Цикл + КонтактнаяИнформация = Новый Структура("Представление, ЗначенияПолей, ДействуетС"); + ЗаполнитьЗначенияСвойств(КонтактнаяИнформация, СтрокаКонтактнойИнформации); + СписокКонтактнойИнформации.Добавить(КонтактнаяИнформация); + КонецЦикла; + + Возврат СписокКонтактнойИнформации; +КонецФункции + +&НаКлиенте +Процедура ПослеЗагрузкиАдресногоКлассификатора(Результат, ДополнительныеПараметры) Экспорт + СообщениеОНеобходимостиОбновленияКлассификатора(НаселенныйПунктДетально.Регион.Идентификатор); +КонецПроцедуры + &НаСервере Функция РезультатВыбораТолькоКомментария(КонтактнаяИнфо, Представление, Комментарий) @@ -1412,15 +1559,25 @@ Возврат Результат; КонецФункции +&НаСервере +Процедура СообщениеОНеобходимостиОбновленияКлассификатора(Идентификатор = Неопределено) + + Элементы.АдресныйКлассификаторУстарел.Видимость = Ложь; + Если НЕ ЭтоВебСервис И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда + МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); + ИнформацияОбОбновление = МодульАдресныйКлассификаторСлужебный.ОписаниеПоследнейЗагрузки(Идентификатор); + Элементы.АдресныйКлассификаторУстарел.Видимость = ИнформацияОбОбновление.НеобходимоОбновление; + КонецЕсли; + +КонецПроцедуры + &НаСервереБезКонтекста Процедура ОбработкаИзмененияНаселенногоПунктаСервер(Контекст, ПереформироватьДетально = Истина) Если Не ЗначениеЗаполнено(Контекст.ИдентификаторНаселенногоПункта) Тогда // Данные вводились вручную, пробуем разбор введенной строки. - Адрес = НаселенныеПунктыПоПредставлению(Контекст.НаселенныйПункт, Контекст.СкрыватьНеактуальныеАдреса); - + Адрес = НаселенныеПунктыПоПредставлению(Контекст.НаселенныйПункт); ЗаполнитьКонтекстПоXDTOАдреса(Адрес, Контекст, УровниНаселенногоПункта()); - Контекст.ИдентификаторНаселенногоПункта = УправлениеКонтактнойИнформациейСлужебный.ИдентификаторНаселенногоПунктаПоЧастямАдреса(Контекст.НаселенныйПунктДетально); ПереформироватьДетально = Ложь; КонецЕсли; @@ -1451,41 +1608,37 @@ Процедура ОбработкаИзмененияУлицыСервер(Контекст) // Очистка записей по улице - Контекст.НаселенныйПунктДетально.Улица.Представление = Неопределено; - Контекст.НаселенныйПунктДетально.Улица.Идентификатор = Неопределено; - Контекст.НаселенныйПунктДетально.ДополнительныйЭлемент.Представление = Неопределено; - Контекст.НаселенныйПунктДетально.ДополнительныйЭлемент.Идентификатор = Неопределено; - Контекст.НаселенныйПунктДетально.ПодчиненныйЭлемент.Представление = Неопределено; - Контекст.НаселенныйПунктДетально.ПодчиненныйЭлемент.Идентификатор = Неопределено; + ОчиститьСведенияОбУлице(Контекст.НаселенныйПунктДетально); // Данные вводились вручную, пробуем разбор введенной строки. АнализКлассификатора = УлицыПоПредставлению(Контекст.ИдентификаторНаселенногоПункта, Контекст.Улица, Контекст.СкрыватьНеактуальныеАдреса); - Если АнализКлассификатора <> Неопределено Тогда - Для Каждого ЧастьАдреса Из АнализКлассификатора Цикл - Если ЧастьАдреса.Уровень = 7 Тогда - Контекст.НаселенныйПунктДетально.Улица.Представление = ЧастьАдреса.Значение; - Контекст.НаселенныйПунктДетально.Улица.Идентификатор = ЧастьАдреса.Идентификатор; - ИначеЕсли ЧастьАдреса.Уровень = 90 Тогда - Контекст.НаселенныйПунктДетально.ДополнительныйЭлемент.Представление = ЧастьАдреса.Значение; - Контекст.НаселенныйПунктДетально.ДополнительныйЭлемент.Идентификатор = ЧастьАдреса.Идентификатор; - ПутьXPath = УправлениеКонтактнойИнформациейКлиентСервер.XPathДополнительногоОбъектаАдресации(90, Контекст.НаселенныйПунктДетально.ДополнительныйЭлемент.Сокращение); - Контекст.НаселенныйПунктДетально.ДополнительныйЭлемент.ПутьXPath = ПутьXPath; - ИначеЕсли ЧастьАдреса.Уровень = 91 Тогда - Контекст.НаселенныйПунктДетально.ПодчиненныйЭлемент.Представление = ЧастьАдреса.Значение; - Контекст.НаселенныйПунктДетально.ПодчиненныйЭлемент.Идентификатор = ЧастьАдреса.Идентификатор; + УровеньУлицы = 0; + Если АнализКлассификатора <> Неопределено И АнализКлассификатора.Найти(0, "Уровень") = Неопределено Тогда + ИдентификаторУлицы = Неопределено; + Улица = АнализКлассификатора.Найти(7, "Уровень"); + Если Улица <> Неопределено Тогда + Контекст.НаселенныйПунктДетально.Улица.Представление = Улица.Значение; + Контекст.НаселенныйПунктДетально.Улица.Идентификатор = Улица.Идентификатор; + ИдентификаторУлицы = Новый УникальныйИдентификатор(Улица.Идентификатор); + КонецЕсли; + + Улица = АнализКлассификатора.Найти(90, "Уровень"); + Если Улица <> Неопределено Тогда + Контекст.НаселенныйПунктДетально.ДополнительныйЭлемент.Представление = Улица.Значение; + Контекст.НаселенныйПунктДетально.ДополнительныйЭлемент.Идентификатор = Улица.Идентификатор; + ПутьXPath = УправлениеКонтактнойИнформациейКлиентСервер.XPathДополнительногоОбъектаАдресации(90, Контекст.НаселенныйПунктДетально.ДополнительныйЭлемент.Сокращение); + Контекст.НаселенныйПунктДетально.ДополнительныйЭлемент.ПутьXPath = ПутьXPath; + ИдентификаторУлицы = Новый УникальныйИдентификатор(Улица.Идентификатор); + Улица = АнализКлассификатора.Найти(91, "Уровень"); + Если Улица <> Неопределено Тогда + Контекст.НаселенныйПунктДетально.ПодчиненныйЭлемент.Представление = Улица.Значение; + Контекст.НаселенныйПунктДетально.ПодчиненныйЭлемент.Идентификатор = Улица.Идентификатор; ПутьXPath = УправлениеКонтактнойИнформациейКлиентСервер.XPathДополнительногоОбъектаАдресации(91, Контекст.НаселенныйПунктДетально.ДополнительныйЭлемент.Сокращение); Контекст.НаселенныйПунктДетально.ПодчиненныйЭлемент.ПутьXPath = ПутьXPath; - Иначе - Если СтрСравнить(ЧастьАдреса.Наименование, Контекст.НаселенныйПунктДетально.ПодчиненныйЭлемент.Наименование) = 0 Тогда - Контекст.НаселенныйПунктДетально.ПодчиненныйЭлемент.Представление = ЧастьАдреса.Значение; - ИначеЕсли СтрСравнить(ЧастьАдреса.Наименование, Контекст.НаселенныйПунктДетально.ДополнительныйЭлемент.Наименование) = 0 Тогда - Контекст.НаселенныйПунктДетально.ДополнительныйЭлемент.Представление = ЧастьАдреса.Значение; - Иначе - Контекст.НаселенныйПунктДетально.Улица.Представление = ЧастьАдреса.Значение; - КонецЕсли; + ИдентификаторУлицы = Новый УникальныйИдентификатор(Улица.Идентификатор); КонецЕсли; - КонецЦикла; - + КонецЕсли; + Контекст.ИдентификаторУлицы = ИдентификаторУлицы; Иначе Контекст.НаселенныйПунктДетально.Улица.Представление = Контекст.Улица; КонецЕсли; @@ -1494,6 +1647,19 @@ УстановитьИндексИПредставление(Контекст); КонецПроцедуры +&НаКлиентеНаСервереБезКонтекста +Процедура ОчиститьСведенияОбУлице(НаселенныйПунктДетально) + + НаселенныйПунктДетально.Улица.Представление = Неопределено; + НаселенныйПунктДетально.Улица.Идентификатор = Неопределено; + НаселенныйПунктДетально.Улица.Наименование = ""; + НаселенныйПунктДетально.ДополнительныйЭлемент.Представление = Неопределено; + НаселенныйПунктДетально.ДополнительныйЭлемент.Идентификатор = Неопределено; + НаселенныйПунктДетально.ПодчиненныйЭлемент.Представление = Неопределено; + НаселенныйПунктДетально.ПодчиненныйЭлемент.Идентификатор = Неопределено; + +КонецПроцедуры + &НаКлиенте Процедура ОбработкаИзмененияСтраныКлиент() @@ -1516,7 +1682,7 @@ // РОССИЯ. Загружать можем только российские адреса. Элементы.ВвестиАдресВСвободнойФорме.Доступность = Истина; Элементы.ВвестиАдресВСвободнойФормеВсеДействия.Доступность = Истина; - Если МожноЗагружатьКлассификатор Тогда + Если ЕстьПравоЗагружатьКлассификатор Тогда КнопкаПанели = Элементы.Найти("ЗагрузитьКлассификатор"); Если КнопкаПанели <> Неопределено Тогда Элементы.ЗагрузитьКлассификатор.Доступность = Истина; @@ -1553,6 +1719,36 @@ СостояниеВводаПредставленияАдреса(РазрешитьВводАдресаВСвободнойФорме); КонецПроцедуры +&НаСервере +Процедура ОпределитьОтображениеЭлементовНаФорме(ЭтоТакси) + + Элементы.ЗагрузитьКлассификатор.Видимость = ЕстьПравоЗагружатьКлассификатор; + Элементы.ЗагрузитьКлассификаторВсеДействия.Видимость = ЕстьПравоЗагружатьКлассификатор; + + Если Не ЕстьКлассификатор Тогда + Элементы.ЗаполнитьПоПочтовомуИндексу.Видимость = Ложь; + Элементы.ЗаполнитьПоПочтовомуИндексуВсеДействия.Видимость = Ложь; + Элементы.Улица.КнопкаВыбора = Ложь; + Элементы.Дом.КнопкаВыбора = Ложь; + Элементы.Строение.КнопкаВыбора = Ложь; + Элементы.СообщениеОбОбращенииВФНС.Видимость = Ложь; + КонецЕсли; + + // По умолчанию выводим представление. + Элементы.АдресПредставлениеКомментарий.ТекущаяСтраница = Элементы.АдресСтраницаПредставление; + + Если ЭтоТакси Тогда + Элементы.ФормаВсеДействия.Видимость = Ложь; + Иначе + Элементы.ВвестиАдресВСвободнойФорме.Видимость = Ложь; + Элементы.ЗаполнитьПоПочтовомуИндексу.Видимость = Ложь; + Элементы.ФормаОчиститьАдрес.Видимость = Ложь; + Элементы.ЗагрузитьКлассификатор.Видимость = Ложь; + Элементы.ИзменитьФорму.Видимость = Ложь; + Элементы.ФормаВводАдресаПоказать.Видимость = Ложь; + КонецЕсли; +КонецПроцедуры + &НаСервере Процедура УстановитьСписокВыбораЭлемента(ЭлементВид, ЭлементЗначение, Данные) ЭлементЗначение.КнопкаВыпадающегоСписка = Данные.МожноПодбиратьЗначения; @@ -1699,6 +1895,7 @@ Контекст.РазрешитьВводАдресаВСвободнойФорме = Истина; КонецЕсли; Контекст.ПредставлениеАдреса = ВычисленноеПредставление; + КонецЕсли; КонецПроцедуры @@ -1887,12 +2084,9 @@ КонецЕсли; // Здания и помещения - ТипТаблицаЗначений = Тип("ТаблицаЗначений"); - Если ТипЗнч(Контекст.ДополнительныеЗдания)=ТипТаблицаЗначений Тогда - ТаблицаЗданий = Контекст.ДополнительныеЗдания.Скопировать(); - Иначе - ТаблицаЗданий = ДанныеФормыВЗначение(Контекст.ДополнительныеЗдания, ТипТаблицаЗначений); - КонецЕсли; + ТаблицаЗданий = ?(ТипЗнч(Контекст.ДополнительныеЗдания) = Тип("ТаблицаЗначений"), + Контекст.ДополнительныеЗдания.Скопировать(), + Контекст.ДополнительныеЗдания.Выгрузить()); Если Не ПустаяСтрока(Контекст.Дом) Тогда СтрокаЗдания = ТаблицаЗданий.Вставить(0); @@ -1906,11 +2100,9 @@ СтрокаЗдания.Значение = Контекст.Строение; КонецЕсли; - Если ТипЗнч(Контекст.ДополнительныеПомещения)=ТипТаблицаЗначений Тогда - ТаблицаПомещений = Контекст.ДополнительныеПомещения.Скопировать(); - Иначе - ТаблицаПомещений = ДанныеФормыВЗначение(Контекст.ДополнительныеПомещения, ТипТаблицаЗначений); - КонецЕсли; + ТаблицаПомещений = ?(ТипЗнч(Контекст.ДополнительныеПомещения) = Тип("ТаблицаЗначений"), + Контекст.ДополнительныеПомещения.Скопировать(), + Контекст.ДополнительныеПомещения.Выгрузить()); Если Не ПустаяСтрока(Контекст.Помещение) Тогда СтрокаЗдания = ТаблицаЗданий.Вставить(0); @@ -1969,7 +2161,7 @@ ИначеЕсли ТипЗнч(XDTOДанныеАдреса) = Тип("Строка") Тогда // Попытка разбора - АнализКлассификатора = НаселенныеПунктыПоПредставлению(XDTOДанныеАдреса, Контекст.СкрыватьНеактуальныеАдреса); + АнализКлассификатора = НаселенныеПунктыПоПредставлению(XDTOДанныеАдреса); Если АнализКлассификатора.ДанныеВыбора.Количество()=1 Тогда Вариант = АнализКлассификатора.ДанныеВыбора[0].Значение.Значение; Контекст.НаселенныйПунктДетально = УправлениеКонтактнойИнформациейСлужебный.СписокРеквизитовНаселенныйПункт( @@ -1999,7 +2191,6 @@ КонецЕсли; ЗаполнитьКонтекстПоXDTOАдреса(XDTOДанныеАдреса, Контекст); - КонецПроцедуры @@ -2017,7 +2208,9 @@ Если Значение.Уровень <> 90 Тогда Представление = УправлениеКонтактнойИнформациейСлужебный.ПолучитьXDTOРеквизитОбъекта(АдресРФ, Значение.ПутьXPath); Иначе - Представление = УправлениеКонтактнойИнформациейСлужебный.НайтиДополнительныйЭлементАдреса(АдресРФ); + ДополнительныйЭлементАдреса = УправлениеКонтактнойИнформациейСлужебный.НайтиДополнительныйЭлементАдреса(АдресРФ); + Представление = ДополнительныйЭлементАдреса.Значение; + Значение.ПутьXPath = ДополнительныйЭлементАдреса.XPath; КонецЕсли; Части = УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(Представление); @@ -2045,7 +2238,16 @@ УровеньУлицы = Элемент.Значение.Уровень; КонецЕсли; КонецЦикла; - + Иначе + Для Каждого КлючЗначение Из Контекст.НаселенныйПунктДетально Цикл + Значение = КлючЗначение.Значение; + Если Значение.Уровень < 7 Тогда + Значение.Представление = ""; + Значение.Наименование = ""; + Значение.Сокращение = ""; + КонецЕсли; + Значение.Идентификатор = Неопределено; + КонецЦикла; КонецЕсли; КонецПроцедуры @@ -2134,26 +2336,106 @@ КонецФункции &НаСервере -Процедура ОтобразитьИнформациюОДатахДействияАдреса(ДействуетС, ДействуетДо) +Процедура ОтобразитьИнформациюОДатахДействияАдреса(ДействуетС) - Если ЗначениеЗаполнено(ДействуетДо) И ЗначениеЗаполнено(ДействуетС)Тогда - Если НачалоДня(ДействуетДо -10) = НачалоДня(ДействуетС) Тогда - ТекстИсторическийАдрес = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Адрес действовал только %1'"), Формат(ДействуетС, "ДЛФ=DD")); - Иначе - ТекстИсторическийАдрес = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Адрес действовал с %1 по %2 (включительно)'"), Формат(ДействуетС, "ДЛФ=DD"), Формат(ДействуетДо - 10, "ДЛФ=DD")); - КонецЕсли; - ИначеЕсли НЕ ЗначениеЗаполнено(ДействуетС) И ЗначениеЗаполнено(ДействуетДо) Тогда - ТекстИсторическийАдрес = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Адрес действовал до %1 (включительно)'"), Формат(ДействуетДо - 10, "ДЛФ=DD")); + Если ВводНовогоАдреса Тогда + ТекстИсторическийАдрес = НСтр("ru = ''"); + АдресНаДату = ДействуетС; + Элементы.ГруппаИсторическийАдрес.Видимость = ЗначениеЗаполнено(ДействуетС); Иначе - ТекстИсторическийАдрес = НСтр("ru = 'Адрес действует в настоящее время'"); + ДействуетДо = Неопределено; + + Отбор = Новый Структура("Вид", ВидКонтактнойИнформации.Ссылка); + НайденныеСтроки = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Отбор); + Если НайденныеСтроки.Количество() = 0 + ИЛИ (НайденныеСтроки.Количество() = 1 И ПустаяСтрока(НайденныеСтроки[0].Представление)) Тогда + АдресНаДату = Дата(1, 1, 1); + Элементы.ГруппаИсторическийАдрес.Видимость = Ложь; + Элементы.ИсторияИзменений.Видимость = Ложь; + Иначе + Результат = ОпределитьДатуДействия(ДействуетС, НайденныеСтроки); + АдресНаДату = Результат.ДействуетС; + АдресДействуетС = Результат.ДействуетС; + + Если НЕ ЗначениеЗаполнено(Результат.ДействуетС) + И ПустаяСтрока(Результат.ТекущаяСтрока.Представление) Тогда + Элементы.ГруппаИсторическийАдрес.Видимость = Ложь; + ИначеЕсли ЗначениеЗаполнено(Результат.ДействуетПо) Тогда + ТекстИсторическийАдрес = " " + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'действует по %1'"), Формат(Результат.ДействуетПо - 10, "ДЛФ=DD")); + Иначе + ТекстИсторическийАдрес = НСтр("ru = 'действует по настоящее время.'"); + КонецЕсли; + ОтобразитьКоличествоЗаписейВИсторииИзменений(); + КонецЕсли; + КонецЕсли; + + Элементы.ТекстПроДатуДействия.Заголовок = ТекстИсторическийАдрес; + Элементы.АдресНаДату.ФорматРедактирования = ?(ЗначениеЗаполнено(АдресНаДату), "", "ДФ='""начала учета""'"); + +КонецПроцедуры + +&НаСервере +Процедура ОтобразитьКоличествоЗаписейВИсторииИзменений() + + Отбор = Новый Структура("Вид", ВидКонтактнойИнформации.Ссылка); + НайденныеСтроки = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.НайтиСтроки(Отбор); + Если НайденныеСтроки.Количество() > 1 Тогда + Элементы.ИсторияИзмененийГиперссылка.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='История изменений (%1)'"), НайденныеСтроки.Количество()); + Элементы.ИсторияИзмененийГиперссылка.Видимость = Истина; + ИначеЕсли НайденныеСтроки.Количество() = 1 И ПустаяСтрока(НайденныеСтроки[0].ЗначенияПолей) Тогда + Элементы.ИсторияИзмененийГиперссылка.Видимость = Ложь; + Иначе + Элементы.ИсторияИзмененийГиперссылка.Заголовок = НСтр("ru='История изменений'"); + Элементы.ИсторияИзмененийГиперссылка.Видимость = Истина; КонецЕсли; - ИсторическийАдрес = ТекстИсторическийАдрес; - Элементы.ПоказатьИсториюВсеДействия.Видимость = Ложь; - Элементы.ИсторияИзменений.Видимость = Ложь; - Элементы.ГруппаИсторическийАдрес.Видимость = Истина; КонецПроцедуры +&НаКлиентеНаСервереБезКонтекста +Функция ОпределитьДатуДействия(ДействуетС, История) + + Результат = Новый Структура("ДействуетПо, ДействуетС, ТекущаяСтрока"); + Если История.Количество() = 0 Тогда + Возврат Результат; + КонецЕсли; + + ТекущаяСтрока = Неопределено; + ДействуетПо = Неопределено; + Минимум = -1; + МинимумСравнительный = Неопределено; + Для каждого СтрокаИстория Из История Цикл + + Дельта = СтрокаИстория.ДействуетС - ДействуетС; + Если Дельта <= 0 + И (МинимумСравнительный = Неопределено ИЛИ Дельта > МинимумСравнительный) Тогда + ТекущаяСтрока = СтрокаИстория; + МинимумСравнительный = Дельта; + КонецЕсли; + + Если Минимум = -1 Тогда + Минимум = Дельта + 1; + ТекущаяСтрока = СтрокаИстория; + КонецЕсли; + + Если Дельта > 0 И МодульЧисла(Дельта) < МодульЧисла(Минимум) Тогда + ДействуетПо = СтрокаИстория.ДействуетС; + Минимум = Дельта; + КонецЕсли; + + КонецЦикла; + + Результат.ДействуетПо = ДействуетПо; + Результат.ДействуетС = ТекущаяСтрока.ДействуетС; + Результат.ТекущаяСтрока = ТекущаяСтрока; + + Возврат Результат; +КонецФункции + +&НаКлиентеНаСервереБезКонтекста +Функция МодульЧисла(Число) + Возврат Макс(Число, -Число); +КонецФункции + &НаКлиенте Процедура Подключаемый_ТипСтроенияПриИзменении(Элемент) НомерСтроки = Сред(Элемент.Имя, 1 + СтрДлина("ТипСтроения")); @@ -2267,30 +2549,47 @@ КонецПроцедуры &НаКлиенте -Процедура СообщитьОбОшибкахЗаполнения(СписокОшибок, ПредупреждатьОбОтсутствии) +Процедура СообщитьОбОшибкахЗаполнения(СписокОшибок, ПредупреждатьОбОтсутствии, ТребуетсяОбновление = Ложь) ОчиститьСообщения(); КоличествоОшибок = СписокОшибок.Количество(); Если КоличествоОшибок = 0 И ПредупреждатьОбОтсутствии Тогда // Нет ошибок - ПоказатьПредупреждение(, НСтр("ru='Адрес введен корректно.'")); - Элементы.СообщениеОбОбращенииВФНСРоссия.Видимость = Ложь; - Элементы.СервисДоступенДекорация.Видимость = Истина; + Если НЕ ЭтоВебСервис И ТребуетсяОбновление Тогда + Если ЕстьПравоЗагружатьКлассификатор Тогда + СообщениеОПроверкеАдреса = НСтр("ru='Адрес введен корректно, но адресные сведения, загруженные в программу, давно не обновлялись. + |Рекомендуется выполнить обновление и повторить проверку адреса заново.'"); + ВопросОбОбновлениеАдресногоКлассификатора(СообщениеОПроверкеАдреса); + Иначе + СообщениеОПроверкеАдреса = НСтр("ru='Адрес введен корректно, но адресные сведения, загруженные в программу, + |давно не обновлялись. Рекомендуется выполнить обновление и повторить проверку адреса заново. + |Для обновления адресного классификатора необходимо обратиться к администратору.'"); + ПоказатьПредупреждение(, СообщениеОПроверкеАдреса); + КонецЕсли; + Иначе + ПоказатьПредупреждение(, НСтр("ru='Адрес введен корректно.'")); + КонецЕсли; + + Элементы.ГруппаОписаниеНедоступностиСервера.ТекущаяСтраница = Элементы.СервисДоступен; Возврат; КонецЕсли; Если КоличествоОшибок = 1 Тогда МестоОшибки = СписокОшибок[0].Значение; - Если ПустаяСтрока(МестоОшибки) Или МестоОшибки = "/" Тогда + Если СписокОшибок[0].Пометка = Ложь И НЕ ЭтоВебСервис Тогда + ТекстВопроса = НСтр("ru = 'Адрес не может быть проверен.'") + Символы.ПС + СписокОшибок[0].Представление + Символы.ПС + НСтр("ru = 'Загрузить классификатор для проверки адреса?'"); + УправлениеКонтактнойИнформациейКлиент.ПредложениеЗагрузкиКлассификатора(ТекстВопроса); + Возврат; + ИначеЕсли ПустаяСтрока(МестоОшибки) Или МестоОшибки = "/" Тогда // Одна ошибка на весь адрес, не привязанная к полю. ПоказатьПредупреждение(, СписокОшибок[0].Представление); + Элементы.ГруппаОписаниеНедоступностиСервера.ТекущаяСтраница = Элементы.СообщениеОбОшибке; Возврат; КонецЕсли; КонецЕсли; - Элементы.СообщениеОбОбращенииВФНСРоссия.Видимость = Истина; - Элементы.СервисДоступенДекорация.Видимость = Ложь; + Элементы.ГруппаОписаниеНедоступностиСервера.ТекущаяСтраница = Элементы.СообщениеОбОшибке; // Сообщаем список с привязкой к полям. Для Каждого Элемент Из СписокОшибок Цикл ОбщегоНазначенияКлиентСервер.СообщитьПользователю( @@ -2299,6 +2598,18 @@ КонецПроцедуры +&НаКлиенте +Процедура ПослеВопросОбОбновление(Результат, ДополнительныеПараметры) Экспорт + + Если Результат = "ОбновитьКлассификатор" Тогда + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда + ОповещениеОЗакрытие = Новый ОписаниеОповещения("ПослеЗагрузкиАдресногоКлассификатора", ЭтотОбъект); + МодульАдресныйКлассификаторКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("АдресныйКлассификаторКлиент"); + МодульАдресныйКлассификаторКлиент.ОткрытьФормуЗагрузкиАдресногоКлассификатора(Неопределено, Неопределено, ОповещениеОЗакрытие); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + &НаКлиенте Функция ПутьКДаннымФормыПоПутиXPath(ПутьXPath) @@ -2472,39 +2783,6 @@ //////////////////////////////////////////////////////////////////////////////////////////////////// -&НаСервереБезКонтекста -Функция СписокАвтоподбораНаселенногоПункта(Текст, ДополнительныеПараметры) - - Возврат УправлениеКонтактнойИнформациейСлужебный.СписокАвтоподбораНаселенногоПункта(Текст, ДополнительныеПараметры); - -КонецФункции - -&НаСервереБезКонтекста -Функция СписокАвтоподбораУлицы(ИдентификаторНаселенногоПункта, Текст, ДополнительныеПараметры) - - Возврат УправлениеКонтактнойИнформациейСлужебный.СписокАвтоподбораУлицы(ИдентификаторНаселенногоПункта, Текст, ДополнительныеПараметры); - -КонецФункции - -&НаСервереБезКонтекста -Функция СписокАвтоподбораВариантовДомов(Идентификатор, Текст) - Возврат УправлениеКонтактнойИнформациейСлужебный.СписокАвтоподбораНомераДомов(Идентификатор, Текст); -КонецФункции - -&НаСервереБезКонтекста -Функция НаселенныеПунктыПоПредставлению(Текст, СкрыватьНеактуальныеАдреса = Ложь, ВыбиратьСтрок = 50) - - Возврат УправлениеКонтактнойИнформациейСлужебный.НаселенныеПунктыПоПредставлению(Текст, СкрыватьНеактуальныеАдреса, ВыбиратьСтрок); - -КонецФункции - -&НаСервереБезКонтекста -Функция УлицыПоПредставлению(Родитель, Текст, СкрыватьНеактуальныеАдреса = Ложь, ВыбиратьСтрок = 50) - - Возврат УправлениеКонтактнойИнформациейСлужебный.УлицыПоПредставлению(Родитель, Текст, СкрыватьНеактуальныеАдреса, ВыбиратьСтрок); - -КонецФункции - // Преобразовываем Реквизиты формы <-> Структура // &НаКлиенте @@ -2515,10 +2793,10 @@ |Страна, КодСтраны, СтранаРоссия, СкрыватьНеактуальныеАдреса, |Индекс, ПредставлениеАдреса, Комментарий, КопияКомментария, |НаселенныйПункт, ИдентификаторНаселенногоПункта, НаселенныйПунктДетально, - |Улица, ИдентификаторУлицы, ОКТМО, + |Улица, ИдентификаторУлицы, ОКТМО, ИдентификаторУлицы, |ТипДома, Дом, ТипСтроения, Строение, ТипПомещения, Помещение, |РазрешитьВводАдресаВСвободнойФорме, ПредставлениеАдресаИзменено, - |Модифицированность, ЕстьКлассификатор, ДополнительныйЭлемент, ПодчиненныйЭлемент + |Модифицированность, ЕстьКлассификатор, ДополнительныйЭлемент, ПодчиненныйЭлемент, ЭтоВебСервис, АдресНаДату |"; СписокКоллекций = "ДополнительныеЗдания, ДополнительныеПомещения"; @@ -2564,7 +2842,7 @@ Иначе Элемент = Элементы.ПредставлениеИностранногоАдреса; КонецЕсли; - Элемент.РедактированиеТекста = РедактироватьПредставлениеАдреса; + Элемент.ТолькоПросмотр = Не РедактироватьПредставлениеАдреса; Если РедактироватьПредставлениеАдреса Тогда Элемент.ЦветФона = АвтоЦвет; Иначе @@ -2576,6 +2854,8 @@ КонтекстФормыКлиент(Контекст); КонецЕсли; КонецЕсли; + Элементы.Индекс.Доступность = НЕ РедактироватьПредставлениеАдреса; + Элементы.ОКТМО.Доступность = НЕ РедактироватьПредставлениеАдреса; // Остальные поля ввода СостояниеГруппыВвода(Элементы.ТипАдреса, Не РедактироватьПредставлениеАдреса); @@ -2650,189 +2930,52 @@ КонецПроцедуры -// Представление разрешено менять только при вводе в режиме ввода в свободной форме. -// Поэтому необходимо привести остальные поля к измененному представлению. -// Страну не трогаем, режим свободного ввода возможен только в России. -// -&НаСервере -Процедура ПредставлениеАдресаПриИзмененииСервер() - - Если Страна = СтранаРоссия Тогда - // Пытаемся разобрать заново - XDTOКонтактная = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияXDTOПоПредставлению(ПредставлениеАдреса, ВидКонтактнойИнформации); - XDTOКонтактная.Представление = ПредставлениеАдреса; - XDTOКонтактная.Комментарий = Комментарий; - - // И проставляем в реквизиты, кроме страны и представления. - ТекущееПредставление = ПредставлениеАдреса; - ТекущаяСтрана = Страна; - - ОчиститьАдресСервер(ЭтотОбъект); - - // Возможно будет отключен свободного ввода. - ЗначениеРеквизитовПоКонтактнойИнформации(ЭтотОбъект, XDTOКонтактная); - - ПредставлениеАдреса = ТекущееПредставление; - Страна = ТекущаяСтрана; - ОтобразитьДополнительныеЗданияИПомещения(); - КонецЕсли; - - // Включаем режим свободного ввода принудительно. - РазрешитьВводАдресаВСвободнойФорме = Истина; - Модифицированность = Истина; -КонецПроцедуры - -// Сравниваем два представления на эквивалентность. -&НаСервереБезКонтекста -Функция ПредставленияАдресаОдинаковы(Знач Представление1, Знач Представление2, Знач ИгнорироватьЗнакНомера=Ложь) - Возврат ХешПредставления(Представление1, ИгнорироватьЗнакНомера)=ХешПредставления(Представление2, ИгнорироватьЗнакНомера); -КонецФункции - -&НаСервереБезКонтекста -Функция ХешПредставления(Знач Представление, Знач ИгнорироватьЗнакНомера=Ложь) - Результат = СтрЗаменить(Представление, Символы.ПС, ""); - Результат = СтрЗаменить(Результат, " ", ""); - Если ИгнорироватьЗнакНомера Тогда - Результат = СтрЗаменить(Результат, "№", ""); - КонецЕсли; - Возврат ВРег(Результат); -КонецФункции - -&НаСервере -Процедура ЗаполнитьВариантыДомовСтроенийКвартир() - - Перем ВариантыДанныхДом, ВариантыДанныхПомещение, ВариантыДанныхСтроение; - - // Возможные варианты дома, строения, квартиры. - ВариантыДанныхДом = УправлениеКонтактнойИнформациейСлужебный.ВариантыДанныхДом(); - УстановитьСписокВыбораЭлемента(Элементы.ТипДома, Элементы.Дом, ВариантыДанныхДом); - УстановитьСписокВыбораЭлемента(Элементы.ТипДомаИностранныйАдреса, Элементы.ДомИностранныйАдреса, ВариантыДанныхДом); - - ВариантыДанныхСтроение = УправлениеКонтактнойИнформациейСлужебный.ВариантыДанныхСтроение(); - УстановитьСписокВыбораЭлемента(Элементы.ТипСтроения, Элементы.Строение, ВариантыДанныхСтроение); - УстановитьСписокВыбораЭлемента(Элементы.ТипСтроенияИностранныйАдреса, Элементы.СтроениеИностранныйАдреса, ВариантыДанныхСтроение); - - ВариантыДанныхПомещение = УправлениеКонтактнойИнформациейСлужебный.ВариантыДанныхПомещение(); - УстановитьСписокВыбораЭлемента(Элементы.ТипПомещения, Элементы.Помещение, ВариантыДанныхПомещение); - УстановитьСписокВыбораЭлемента(Элементы.ТипПомещенияИностранныйАдреса, Элементы.ПомещениеИностранныйАдреса, ВариантыДанныхПомещение); - // - - // Возможно пустые значения, чтобы не смущали. - Если ПустаяСтрока(Дом) И ПустаяСтрока(ТипДома) Тогда - ТипДома = УправлениеКонтактнойИнформациейКлиентСервер.ПервыйИлиПустой(Элементы.ТипДома); - КонецЕсли; - Если ПустаяСтрока(Строение) И ПустаяСтрока(ТипСтроения) Тогда - ТипСтроения = УправлениеКонтактнойИнформациейКлиентСервер.ПервыйИлиПустой(Элементы.ТипСтроения); - КонецЕсли; - Если ПустаяСтрока(Помещение) И ПустаяСтрока(ТипПомещения) Тогда - ТипПомещения = УправлениеКонтактнойИнформациейКлиентСервер.ПервыйИлиПустой(Элементы.ТипПомещения); - КонецЕсли; - -КонецПроцедуры - -&НаСервере -Функция НедоступностьСервиса() - - Возврат Элементы.ГруппаОписаниеНедоступностиСервера.ТекущаяСтраница = Элементы.СервисНедоступен; - -КонецФункции - -&НаСервере -Процедура ПроверитьДоступностьКлассификатора(Знач РезультатПроверки = Неопределено) +&НаКлиенте +Процедура ПроверитьДоступностьКлассификатора() Если Не ЕстьКлассификатор Тогда Возврат; КонецЕсли; - ДоступностьКлассификатораАдрес = ПоместитьВоВременноеХранилище(РезультатПроверки, УникальныйИдентификатор); - Если РезультатПроверки = Неопределено Тогда - Если ОбщегоНазначенияКлиентСервер.РежимОтладки() Тогда - УправлениеКонтактнойИнформациейСлужебный.ПроверитьДоступностьКлассификатора(ДоступностьКлассификатораАдрес); - Иначе - ПараметрыПроцедуры = Новый Массив; - ПараметрыПроцедуры.Добавить(ДоступностьКлассификатораАдрес); - - ПараметрыЗадания = Новый Массив; - ПараметрыЗадания.Добавить("УправлениеКонтактнойИнформациейСлужебный.ПроверитьДоступностьКлассификатора"); - ПараметрыЗадания.Добавить(ПараметрыПроцедуры); - - НаименованиеЗадания = НСтр("ru = 'Проверка доступности сервиса адресного классификатора'"); - Задание = ФоновыеЗадания.Выполнить("РаботаВБезопасномРежиме.ВыполнитьМетодКонфигурации", ПараметрыЗадания,, НаименованиеЗадания); - ИдентификаторЗадания = Задание.УникальныйИдентификатор; - Возврат; + Задание = ПроверитьДоступностьКлассификатораВФоне(УникальныйИдентификатор); + + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + НастройкиОжидания.ВыводитьОкноОжидания = Ложь; + НастройкиОжидания.ПолучатьРезультат = Истина; + + Обработчик = Новый ОписаниеОповещения("ПослеПроверкиДоступностиКлассификатораВФоне", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(Задание, Обработчик, НастройкиОжидания); +КонецПроцедуры + +&НаКлиенте +Процедура ПослеПроверкиДоступностиКлассификатораВФоне(Задание, ДополнительныеПараметры) Экспорт + Если Задание.Статус = "Выполнено" Тогда + ДоступностьКлассификатора = ПолучитьИзВременногоХранилища(Задание.АдресРезультата); + Если ДоступностьКлассификатора <> Неопределено Тогда + Элементы.ГруппаОписаниеНедоступностиСервера.ТекущаяСтраница = ?(ДоступностьКлассификатора.Отказ, + Элементы.СервисНедоступен, Элементы.СервисДоступен); + Если ДоступностьКлассификатора.Отказ Тогда + ТекстСообщенияСервиса = НСтр("ru = 'Автоподбор и проверка адреса недоступны:'") + Символы.ПС + + ДоступностьКлассификатора.КраткоеПредставлениеОшибки; + КонецЕсли; КонецЕсли; + ИначеЕсли Задание.Статус = "Ошибка" Тогда + Элементы.ГруппаОписаниеНедоступностиСервера.ТекущаяСтраница = Элементы.СервисНедоступен; + ТекстСообщенияСервиса = НСтр("ru = 'Автоподбор и проверка адреса недоступны:'") + Символы.ПС + + Задание.КраткоеПредставлениеОшибки; КонецЕсли; - - ОбновитьДоступностьКлассификатора(ЭтотОбъект); - КонецПроцедуры -&НаКлиентеНаСервереБезКонтекста -Процедура ОбновитьДоступностьКлассификатора(Контекст) - - ДоступностьКлассификатора = ПолучитьИзВременногоХранилища(Контекст.ДоступностьКлассификатораАдрес); - Контекст.ДоступностьКлассификатораАдрес = ""; - Контекст.ИдентификаторЗадания = ""; - - Контекст.Элементы.ГруппаОписаниеНедоступностиСервера.ТекущаяСтраница = ?(ДоступностьКлассификатора.Отказ, - Контекст.Элементы.СервисНедоступен, Контекст.Элементы.СервисДоступен); - Если ДоступностьКлассификатора.Отказ Тогда - Контекст.ТекстСообщенияСервиса = НСтр("ru = 'Автоподбор и проверка адреса недоступны:'") + Символы.ПС - + ДоступностьКлассификатора.КраткоеПредставлениеОшибки; - КонецЕсли; - -КонецПроцедуры - -&НаСервереБезКонтекста -Функция НаселенныйПунктДетальноПоИдентификатору(ИдентификаторНаселенногоПункта, ФорматАдреса) - Возврат УправлениеКонтактнойИнформациейСлужебный.СписокРеквизитовНаселенныйПункт(ИдентификаторНаселенногоПункта, ФорматАдреса); -КонецФункции - &НаКлиенте Процедура АвторизацияНаСайтеПоддержкиПользователейЗавершение(Результат, ДополнительныеПараметры) Экспорт Если Результат <> Неопределено Тогда + ОбновитьПовторноИспользуемыеЗначения(); ПроверитьДоступностьКлассификатора(); КонецЕсли; КонецПроцедуры -&НаСервере -Процедура УстановитьВозможностьПодбораИндексаИНомеровДомов(Знач ЭтоВебСервис) - - ПодборПоИндексуДоступен = Истина; - - Если ЭтоВебСервис Тогда - Элементы.Дом.КнопкаВыбора = Ложь; - Элементы.Строение.КнопкаВыбора = Ложь; - КонецЕсли; - - Если ЭтоВебСервис ИЛИ НЕ МожноЗагружатьКлассификатор Тогда - ПодборПоИндексуДоступен = Ложь; - Возврат; - КонецЕсли; - - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда - МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); - Сведения = МодульАдресныйКлассификаторСлужебный.КраткиеСведенияОЗагрузкеСубъектовРФ(); - - Если Сведения.КоличествоРегионов <= Сведения.КоличествоЗагруженныхРегионов Тогда - ПодборПоИндексуДоступен = Ложь; - КонецЕсли; - КонецЕсли; - -КонецПроцедуры - -&НаСервереБезКонтекста -Функция СведенияОРегионе(НаименованиеСубъектаРФ) - - МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); - СведенияОРегионе = МодульАдресныйКлассификаторСлужебный.СведенияОРегионе(НаименованиеСубъектаРФ); - - Возврат СведенияОРегионе; - -КонецФункции - &НаКлиенте Процедура ОбновитьНаселенныйПунктИностранногоАдреса() @@ -2968,6 +3111,119 @@ КонтекстФормыКлиент(Контекст); КонецПроцедуры +// Представление разрешено менять только при вводе в режиме ввода в свободной форме. +// Поэтому необходимо привести остальные поля к измененному представлению. +// Страну не трогаем, режим свободного ввода возможен только в России. +// +&НаСервере +Процедура ПредставлениеАдресаПриИзмененииСервер() + + Если Страна = СтранаРоссия Тогда + // Пытаемся разобрать заново + XDTOКонтактная = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияXDTOПоПредставлению(ПредставлениеАдреса, ВидКонтактнойИнформации); + XDTOКонтактная.Представление = ПредставлениеАдреса; + XDTOКонтактная.Комментарий = Комментарий; + + // И проставляем в реквизиты, кроме страны и представления. + ТекущееПредставление = ПредставлениеАдреса; + ТекущаяСтрана = Страна; + + ОчиститьАдресСервер(ЭтотОбъект); + + // Возможно будет отключен свободного ввода. + ЗначениеРеквизитовПоКонтактнойИнформации(ЭтотОбъект, XDTOКонтактная); + + ПредставлениеАдреса = ТекущееПредставление; + Страна = ТекущаяСтрана; + ОтобразитьДополнительныеЗданияИПомещения(); + КонецЕсли; + + // Включаем режим свободного ввода принудительно. + РазрешитьВводАдресаВСвободнойФорме = Истина; + Модифицированность = Истина; +КонецПроцедуры + +&НаСервере +Процедура ЗаполнитьВариантыДомовСтроенийКвартир() + + Перем ВариантыДанныхДом, ВариантыДанныхПомещение, ВариантыДанныхСтроение; + + // Возможные варианты дома, строения, квартиры. + ВариантыДанныхДом = УправлениеКонтактнойИнформациейСлужебный.ВариантыДанныхДом(); + УстановитьСписокВыбораЭлемента(Элементы.ТипДома, Элементы.Дом, ВариантыДанныхДом); + УстановитьСписокВыбораЭлемента(Элементы.ТипДомаИностранныйАдреса, Элементы.ДомИностранныйАдреса, ВариантыДанныхДом); + + ВариантыДанныхСтроение = УправлениеКонтактнойИнформациейСлужебный.ВариантыДанныхСтроение(); + УстановитьСписокВыбораЭлемента(Элементы.ТипСтроения, Элементы.Строение, ВариантыДанныхСтроение); + УстановитьСписокВыбораЭлемента(Элементы.ТипСтроенияИностранныйАдреса, Элементы.СтроениеИностранныйАдреса, ВариантыДанныхСтроение); + + ВариантыДанныхПомещение = УправлениеКонтактнойИнформациейСлужебный.ВариантыДанныхПомещение(); + УстановитьСписокВыбораЭлемента(Элементы.ТипПомещения, Элементы.Помещение, ВариантыДанныхПомещение); + УстановитьСписокВыбораЭлемента(Элементы.ТипПомещенияИностранныйАдреса, Элементы.ПомещениеИностранныйАдреса, ВариантыДанныхПомещение); + // + + // Возможно пустые значения, чтобы не смущали. + Если ПустаяСтрока(Дом) И ПустаяСтрока(ТипДома) Тогда + ТипДома = УправлениеКонтактнойИнформациейКлиентСервер.ПервыйИлиПустой(Элементы.ТипДома); + КонецЕсли; + Если ПустаяСтрока(Строение) И ПустаяСтрока(ТипСтроения) Тогда + ТипСтроения = УправлениеКонтактнойИнформациейКлиентСервер.ПервыйИлиПустой(Элементы.ТипСтроения); + КонецЕсли; + Если ПустаяСтрока(Помещение) И ПустаяСтрока(ТипПомещения) Тогда + ТипПомещения = УправлениеКонтактнойИнформациейКлиентСервер.ПервыйИлиПустой(Элементы.ТипПомещения); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Функция НедоступностьСервиса() + + Возврат Элементы.ГруппаОписаниеНедоступностиСервера.ТекущаяСтраница = Элементы.СервисНедоступен; + +КонецФункции + +&НаСервере +Процедура УстановитьВозможностьПодбораИндексаИНомеровДомов(Знач ЭтоВебСервис) + + ПодборПоИндексуДоступен = Истина; + + Если ЭтоВебСервис Тогда + Элементы.Дом.КнопкаВыбора = Ложь; + Элементы.Строение.КнопкаВыбора = Ложь; + КонецЕсли; + + Если ЭтоВебСервис ИЛИ НЕ ЕстьПравоЗагружатьКлассификатор Тогда + ПодборПоИндексуДоступен = Ложь; + Возврат; + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда + МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); + Сведения = МодульАдресныйКлассификаторСлужебный.КраткиеСведенияОЗагрузкеСубъектовРФ(); + + Если Сведения.КоличествоРегионов <= Сведения.КоличествоЗагруженныхРегионов Тогда + ПодборПоИндексуДоступен = Ложь; + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +// Сравниваем два представления на эквивалентность. +&НаСервереБезКонтекста +Функция ПредставленияАдресаОдинаковы(Знач Представление1, Знач Представление2, Знач ИгнорироватьЗнакНомера=Ложь) + Возврат ХешПредставления(Представление1, ИгнорироватьЗнакНомера)=ХешПредставления(Представление2, ИгнорироватьЗнакНомера); +КонецФункции + +&НаСервереБезКонтекста +Функция ХешПредставления(Знач Представление, Знач ИгнорироватьЗнакНомера=Ложь) + Результат = СтрЗаменить(Представление, Символы.ПС, ""); + Результат = СтрЗаменить(Результат, " ", ""); + Если ИгнорироватьЗнакНомера Тогда + Результат = СтрЗаменить(Результат, "№", ""); + КонецЕсли; + Возврат ВРег(Результат); +КонецФункции + &НаСервереБезКонтекста Функция НаличиеИндексаВКлассификаторе(ПочтовыйИндекс) @@ -2981,5 +3237,73 @@ Возврат Ложь; КонецФункции +&НаСервереБезКонтекста +Функция СведенияОРегионе(НаименованиеСубъектаРФ) + + МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); + СведенияОРегионе = МодульАдресныйКлассификаторСлужебный.СведенияОРегионе(НаименованиеСубъектаРФ); + + Возврат СведенияОРегионе; + +КонецФункции + +&НаСервереБезКонтекста +Функция ПроверитьДоступностьКлассификатораВФоне(Знач УникальныйИдентификатор) + ИмяМетода = "УправлениеКонтактнойИнформациейСлужебный.ПроверитьДоступностьКлассификатора"; + + НастройкиЗапуска = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + НастройкиЗапуска.НаименованиеФоновогоЗадания = НСтр("ru = 'Проверка доступности сервиса адресного классификатора'"); + + Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяМетода, Новый Структура, НастройкиЗапуска); +КонецФункции + +&НаСервереБезКонтекста +Функция НаселенныйПунктДетальноПоИдентификатору(ИдентификаторНаселенногоПункта, ФорматАдреса) + Возврат УправлениеКонтактнойИнформациейСлужебный.СписокРеквизитовНаселенныйПункт(ИдентификаторНаселенногоПункта, ФорматАдреса); +КонецФункции + +&НаСервереБезКонтекста +Функция СписокАвтоподбораНаселенногоПункта(Текст, ДополнительныеПараметры) + + Возврат УправлениеКонтактнойИнформациейСлужебный.СписокАвтоподбораНаселенногоПункта(Текст, ДополнительныеПараметры); + +КонецФункции + +&НаСервереБезКонтекста +Функция ЕстьСписокДомов(Идентификатор) + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда + МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); + ЕстьСписокДомов = МодульАдресныйКлассификаторСлужебный.ЕстьСписокДомов(Идентификатор); + Возврат ЕстьСписокДомов; + КонецЕсли; + + Возврат Ложь; + +КонецФункции + +&НаСервереБезКонтекста +Функция СписокАвтоподбораУлицы(ИдентификаторНаселенногоПункта, Текст, ДополнительныеПараметры) + + Возврат УправлениеКонтактнойИнформациейСлужебный.СписокАвтоподбораУлицы(ИдентификаторНаселенногоПункта, Текст, ДополнительныеПараметры); + +КонецФункции + +&НаСервереБезКонтекста +Функция СписокАвтоподбораВариантовДомов(Идентификатор, Текст) + Возврат УправлениеКонтактнойИнформациейСлужебный.СписокАвтоподбораНомераДомов(Идентификатор, Текст); +КонецФункции + +&НаСервереБезКонтекста +Функция НаселенныеПунктыПоПредставлению(Текст) + Возврат УправлениеКонтактнойИнформациейСлужебный.НаселенныеПунктыПоПредставлению(Текст); +КонецФункции + +&НаСервереБезКонтекста +Функция УлицыПоПредставлению(Родитель, Текст, СкрыватьНеактуальныеАдреса = Ложь, ВыбиратьСтрок = 50) + + Возврат УправлениеКонтактнойИнформациейСлужебный.УлицыПоПредставлению(Родитель, Текст, СкрыватьНеактуальныеАдреса, ВыбиратьСтрок); + +КонецФункции #КонецОбласти diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводТелефона/Form.form b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводТелефона/Form.form index dd8317fae..ba991c82c 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводТелефона/Form.form +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводТелефона/Form.form @@ -161,7 +161,7 @@ Left true - 21 + 13 true true true @@ -288,7 +288,6 @@ true true - true true true true @@ -303,73 +302,25 @@ - - ГруппаКомментарий - 72 - - Комментарий - 7 - true - true - - true - - - Комментарий - - Left - - ru - Дополнительный комментарий, не попадающий в представление - - - КомментарийExtendedTooltip - 47 - Label - true - true - - Left - - - - КомментарийКонтекстноеМеню - 8 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - true - true - Normal - - + + Комментарий + 7 true true true - - <key>ru</key> - <value>Группа комментарий</value> - + + Комментарий + + Top ru - Группа комментарий + Дополнительный комментарий, не попадающий в представление - ГруппаКомментарийРасширеннаяПодсказка - 73 + КомментарийExtendedTooltip + 47 Label true true @@ -377,15 +328,26 @@ Left - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto + + КомментарийКонтекстноеМеню + 8 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + true + true + Normal Bottom @@ -556,7 +518,7 @@ Auto - Группа5 + ГруппаСтандартныеКоманды 66 ИзменитьФормуВсеДействия @@ -617,8 +579,16 @@ true + + <key>ru</key> + <value>Группа стандартные команды</value> + + + ru + Группа стандартные команды + - Группа5ExtendedTooltip + ГруппаСтандартныеКомандыРасширеннаяПодсказка 67 Label true @@ -1231,6 +1201,10 @@ Комментарий + + ВидКонтактнойИнформации + + diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводТелефона/Module.bsl b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводТелефона/Module.bsl index 09de22429..92612d91d 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводТелефона/Module.bsl +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВводТелефона/Module.bsl @@ -88,11 +88,13 @@ КонецЕсли; КонецЕсли; - Если ВидКонтактнойИнформации.ХранитьИсториюИзменений И Параметры.Свойство("КонтактнаяИнформацияОписаниеДополнительныхРеквизитов") Тогда - Для каждого СтрокаКИ Из Параметры.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов Цикл - НоваяСтрока = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); - ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаКИ); - КонецЦикла; + Если ВидКонтактнойИнформации.ХранитьИсториюИзменений Тогда + Если Параметры.Свойство("КонтактнаяИнформацияОписаниеДополнительныхРеквизитов") Тогда + Для каждого СтрокаКИ Из Параметры.КонтактнаяИнформацияОписаниеДополнительныхРеквизитов Цикл + НоваяСтрока = КонтактнаяИнформацияОписаниеДополнительныхРеквизитов.Добавить(); + ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаКИ); + КонецЦикла; + КонецЕсли; КонецЕсли; КонецПроцедуры @@ -111,9 +113,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) + Оповещение = Новый ОписаниеОповещения("ПодтвердитьИЗакрыть", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы); + КонецПроцедуры #КонецОбласти @@ -193,8 +197,7 @@ // При немодифицированности работает "отмена". Если Модифицированность Тогда - // Сохранить коды страны и города (нужно все убрать в один серверный вызов) - + ЕстьОшибкиЗаполнения = Ложь; // Смотрим, надо ли проверять на корректность. Если ПроверятьКорректность Тогда @@ -207,7 +210,7 @@ КонецЕсли; Результат = РезультатВыбора(); - + СброситьМодифицированностьПриВыборе(); ОповеститьОВыборе(Результат); @@ -279,7 +282,6 @@ Возврат Результат КонецФункции - &НаСервере Функция РезультатВыбораТолькоКомментария() @@ -382,7 +384,7 @@ ПолныйНомерТелефона = КодСтраны + КодГорода + НомерТелефона; НомерТелефонаТолькоЦифры = ТолькоЦифры(ПолныйНомерТелефона); Если СтрДлина(НомерТелефонаТолькоЦифры) > 15 Тогда - СписокОшибок.Добавить("НомерТелефона", НСтр("ru = 'Номере телефона слишком длинный'")); + СписокОшибок.Добавить("НомерТелефона", НСтр("ru = 'Номер телефона слишком длинный'")); КонецЕсли; Если НомерТелефонаСодержитНедопустимыеСимволы(ПолныйНомерТелефона) Тогда СписокОшибок.Добавить("НомерТелефона", НСтр("ru = 'Номер телефона содержит недопустимые символы'")); @@ -415,7 +417,7 @@ ПутьКДаннымФормыПоПутиXPath(Элемент.Значение)); КонецЦикла; -КонецПроцедуры +КонецПроцедуры &НаКлиенте Функция ПутьКДаннымФормыПоПутиXPath(ПутьXPath) diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоПочтовомуИндексу/Form.form b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоПочтовомуИндексу/Form.form index fd1cb5e8d..bef7705f6 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоПочтовомуИндексу/Form.form +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоПочтовомуИндексу/Form.form @@ -37,7 +37,6 @@ Left true - true true System.DefaultGUIFont @@ -62,118 +61,20 @@ true None Change - - ВариантыАдресаГруппа - 21 - - ВариантыАдресаАктуальность - 18 - - <key>ru</key> - <value>Актуальность</value> - - true - true - - true - - - ВариантыАдреса.Неактуален - - None - - ВариантыАдресаАктуальностьРасширеннаяПодсказка - 20 - Label - true - true - - Left - - - - ВариантыАдресаАктуальностьКонтекстноеМеню - 19 - true - - PictureField - true - Auto - true - Left - true - - true - true - true - true - - CommonPicture.КонтактнаяИнформацияНеактуально - - - - 1 - - - - - ВариантыАдресаПредставление - 15 - true - true - - true - - - ВариантыАдреса.Представление - - - ВариантыАдресаПредставлениеРасширеннаяПодсказка - 17 - Label - true - true - - Left - - - - ВариантыАдресаПредставлениеКонтекстноеМеню - 16 - true - - InputField - true - Auto - true - Left - true - - true - true - true - true - true - true - Normal - - + + ВариантыАдресаПредставление + 15 true true true - - <key>ru</key> - <value>Варианты адреса группа</value> - - - ru - Варианты адреса группа - + + ВариантыАдреса.Представление + - ВариантыАдресаГруппаРасширеннаяПодсказка - 22 + ВариантыАдресаПредставлениеРасширеннаяПодсказка + 17 Label true true @@ -181,11 +82,25 @@ Left - ColumnGroup - - InCell - auto - true + + ВариантыАдресаПредставлениеКонтекстноеМеню + 16 + true + + InputField + true + Auto + true + Left + true + + true + true + true + true + true + true + Normal @@ -654,8 +569,6 @@ OnCreateAtServer ПриСозданииНаСервере - 50 - 10 LockOwner true true diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоПочтовомуИндексу/Module.bsl b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоПочтовомуИндексу/Module.bsl index f29bc7946..cbcb32d4f 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоПочтовомуИндексу/Module.bsl +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоПочтовомуИндексу/Module.bsl @@ -18,6 +18,8 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + Если Параметры.Свойство("АвтоТест") Тогда Возврат; КонецЕсли; @@ -132,5 +134,21 @@ ОповеститьОВыборе(Результат); КонецПроцедуры +&НаСервере +Процедура УстановитьУсловноеОформление() + + УсловноеОформление.Элементы.Очистить(); + // + Элемент = УсловноеОформление.Элементы.Добавить(); + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ВариантыАдресаПредставление.Имя); + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ВариантыАдреса.Неактуален"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоУровню/Form.form b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоУровню/Form.form index 4cebfd496..b172c6700 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоУровню/Form.form +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоУровню/Form.form @@ -17,118 +17,20 @@ None Change - - ВариантыАдресаГруппа - 21 - - ВариантыАдресаАктуальность - 18 - - <key>ru</key> - <value>Актуальность</value> - - true - true - - true - - - ВариантыАдреса.Неактуален - - None - - ВариантыАдресаАктуальностьРасширеннаяПодсказка - 20 - Label - true - true - - Left - - - - ВариантыАдресаАктуальностьКонтекстноеМеню - 19 - true - - PictureField - true - Auto - true - Left - true - - true - true - true - true - - CommonPicture.КонтактнаяИнформацияНеактуально - - - - 1 - - - - - ВариантыАдресаПредставление - 15 - true - true - - true - - - ВариантыАдреса.Представление - - - ВариантыАдресаПредставлениеРасширеннаяПодсказка - 17 - Label - true - true - - Left - - - - ВариантыАдресаПредставлениеКонтекстноеМеню - 16 - true - - InputField - true - Auto - true - Left - true - - true - true - true - true - true - true - Normal - - + + ВариантыАдресаПредставление + 15 true true true - - <key>ru</key> - <value>Варианты адреса группа</value> - - - ru - Варианты адреса группа - + + ВариантыАдреса.Представление + - ВариантыАдресаГруппаРасширеннаяПодсказка - 22 + ВариантыАдресаПредставлениеРасширеннаяПодсказка + 17 Label true true @@ -136,11 +38,25 @@ Left - ColumnGroup - - InCell - auto - true + + ВариантыАдресаПредставлениеКонтекстноеМеню + 16 + true + + InputField + true + Auto + true + Left + true + + true + true + true + true + true + true + Normal @@ -606,8 +522,6 @@ OnCreateAtServer ПриСозданииНаСервере - 50 - 10 LockOwner true true diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоУровню/Module.bsl b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоУровню/Module.bsl index 0693c89fd..ffea76c15 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоУровню/Module.bsl +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборАдресаПоУровню/Module.bsl @@ -22,6 +22,8 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + Если Параметры.Свойство("АвтоТест") Тогда Возврат; КонецЕсли; @@ -56,7 +58,6 @@ ИначеЕсли ДанныеКлассификатора.Данные.Количество() = 0 Тогда КраткоеПредставлениеОшибки = НСтр("ru = 'Поле не содержит адресных сведений для выбора.'"); // Нет данных, функционал выбора не применим. - КонецЕсли; ВариантыАдреса.Загрузить(ДанныеКлассификатора.Данные); @@ -155,4 +156,23 @@ ОповеститьОВыборе(Результат); КонецПроцедуры +&НаСервере +Процедура УстановитьУсловноеОформление() + + УсловноеОформление.Элементы.Очистить(); + + // + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ВариантыАдресаПредставление.Имя); + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ВариантыАдреса.Неактуален"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборДома/Form.form b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборДома/Form.form index 99dbe198e..11006577e 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборДома/Form.form +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборДома/Form.form @@ -45,10 +45,6 @@ ru Группа кнопка выбрать - - ru - Группа кнопка выбрать - ГруппаКнопкаВыбратьРасширеннаяПодсказка 62 @@ -356,7 +352,6 @@ Tree true true - 25 true true true @@ -388,8 +383,6 @@ OnCreateAtServer ПриСозданииНаСервере - 35 - 17 LockOwner true true diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборДома/Module.bsl b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборДома/Module.bsl index 5b1fa5365..f348cfefb 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборДома/Module.bsl +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборДома/Module.bsl @@ -44,6 +44,10 @@ &НаКлиенте Процедура НомерДомаСтроенияАвтоПодбор(Элемент, Текст, ДанныеВыбора, ПараметрыПолученияДанных, Ожидание, СтандартнаяОбработка) + Если ПустаяСтрока(Текст) Тогда + Текст = Найти; + КонецЕсли; + ЗаполнитьСписокДомов(Текст + "%"); КонецПроцедуры @@ -54,12 +58,13 @@ #КонецОбласти - #Область ОбработчикиКомандФормы &НаКлиенте Процедура Выбрать(Команда) - Закрыть(Элементы.СписокДомов.ТекущиеДанные.Значение); + Если Элементы.СписокДомов.ТекущиеДанные <> Неопределено Тогда + Закрыть(Элементы.СписокДомов.ТекущиеДанные.Значение); + КонецЕсли; КонецПроцедуры #КонецОбласти @@ -71,7 +76,13 @@ СписокДомов.Очистить(); СтрокаПоиска = ?(ЗначениеЗаполнено(Текст), Текст, ""); - СписокДомов.Загрузить(УправлениеКонтактнойИнформациейСлужебный.СписокДомов(АдресныйОбъект, СтрокаПоиска)); + ПолныйСписокДомов = УправлениеКонтактнойИнформациейСлужебный.СписокДомов(АдресныйОбъект, СтрокаПоиска); + Если ПолныйСписокДомов = Неопределено ИЛИ ПолныйСписокДомов.Количество() = 0 Тогда + Элементы.ФормаВыбрать.Доступность = Ложь; + Иначе + СписокДомов.Загрузить(ПолныйСписокДомов); + Элементы.ФормаВыбрать.Доступность = Истина; + КонецЕсли; КонецПроцедуры diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборУлицы/Form.form b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборУлицы/Form.form index 680ac2d8a..adcf3df27 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборУлицы/Form.form +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборУлицы/Form.form @@ -41,29 +41,64 @@ - Страницы - 88 + ОбщаяГруппа + 178 - УлицыИНаселенныеПункты - 90 + Страницы + 88 - ГруппаКоманднаяПанель - 148 + УлицыИНаселенныеПункты + 90 - ГруппаКонтактнаяИнформацияВыбрать - 165 - - ВыбратьУлицу - 159 + ГруппаКоманднаяПанель + 148 + + ГруппаКонтактнаяИнформацияВыбрать + 165 + + ВыбратьУлицу + 159 + true + true + + true + + true + + ВыбратьУлицуРасширеннаяПодсказка + 160 + Label + true + true + + Left + + + Form.Command.ВыбратьУлицу + Auto + true + true + true + UserCmds + + System.DefaultGUIFont + true + false + false + false + + Auto + InCommandBarAndInAdditionalSubmenu + true true true - true + 11 - ВыбратьУлицуРасширеннаяПодсказка - 160 + ГруппаКонтактнаяИнформацияВыбратьРасширеннаяПодсказка + 166 Label true true @@ -71,60 +106,76 @@ Left - Form.Command.ВыбратьУлицу - Auto - true - true - true - UserCmds - - System.DefaultGUIFont - true - false - false - false - - Auto - - true - true - - true - - false - false - - ГруппаКонтактнаяИнформацияВыбратьРасширеннаяПодсказка - 166 - Label - true - true - + CommandBar + Left - - CommandBar - - Left - - - - ГруппаНайтиВебСервис - 155 - - Найти - 150 + + + ГруппаНайтиВебСервис + 155 + + Найти + 150 + true + true + + true + + + Найти + + + НайтиРасширеннаяПодсказка + 152 + Label + true + true + + Left + + + + НайтиКонтекстноеМеню + 151 + true + + InputField + Enter + true + Left + true + + + AutoComplete + НайтиАвтоПодбор + + true + true + true + true + true + true + DontUse + Normal + + ru + Введите первые буквы названия улицы + + + true true true - - Найти - + + <key>ru</key> + <value>Группа найти веб сервис</value> + - НайтиРасширеннаяПодсказка - 152 + ГруппаНайтиВебСервисРасширеннаяПодсказка + 156 Label true true @@ -132,33 +183,121 @@ Left - - НайтиКонтекстноеМеню - 151 - true - - InputField - Enter - true - Left - true - - - AutoComplete - НайтиАвтоПодбор - + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаКоманднаяПанельЕще + 153 + + ГруппаНайти + 171 + + ВариантыАдресаНайти + 167 + true + true + + true + + + ВариантыАдресаНайтиРасширеннаяПодсказка + 168 + Label + true + true + + Left + + + Form.Item.ВариантыАдреса.StandardCommand.Find + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + ВариантыАдресаОтменитьПоиск + 169 + true + true + + true + + + ВариантыАдресаОтменитьПоискРасширеннаяПодсказка + 170 + Label + true + true + + Left + + + Form.Item.ВариантыАдреса.StandardCommand.CancelSearch + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + true + true + + true + + + <key>ru</key> + <value>Группа найти</value> + + + ru + Группа найти + + + ГруппаНайтиРасширеннаяПодсказка + 172 + Label + true + true + + Left + + + + + true + true + + true + + true + + ГруппаКоманднаяПанельЕщеРасширеннаяПодсказка + 154 + Label true true - true - true - true - true - DontUse - Normal - - ru - Введите первые буквы названия улицы - + + Left + + + CommandBar + + Left + Item.ВариантыАдреса true @@ -168,11 +307,15 @@ <key>ru</key> - <value>Группа найти веб сервис</value> + <value>Группа командная панель</value> + + ru + Группа командная панель + - ГруппаНайтиВебСервисРасширеннаяПодсказка - 156 + ГруппаКоманднаяПанельРасширеннаяПодсказка + 149 Label true true @@ -182,7 +325,6 @@ UsualGroup - Vertical Auto true true @@ -190,221 +332,28 @@ Auto - - ГруппаКоманднаяПанельЕще - 153 - - ГруппаНайти - 171 - - ВариантыАдресаНайти - 167 - true - true - - true - - - ВариантыАдресаНайтиРасширеннаяПодсказка - 168 - Label - true - true - - Left - - - Form.Item.ВариантыАдреса.StandardCommand.Find - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - ВариантыАдресаОтменитьПоиск - 169 - true - true - - true - - - ВариантыАдресаОтменитьПоискРасширеннаяПодсказка - 170 - Label - true - true - - Left - - - Form.Item.ВариантыАдреса.StandardCommand.CancelSearch - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - <key>ru</key> - <value>Группа найти</value> - - - ru - Группа найти - - - ГруппаНайтиРасширеннаяПодсказка - 172 - Label - true - true - - Left - - - - + + ВариантыАдреса + 8 true true true - true - - ГруппаКоманднаяПанельЕщеРасширеннаяПодсказка - 154 - Label - true - true - - Left - - - CommandBar - - Left - Item.ВариантыАдреса - - - true - true - - true - - - <key>ru</key> - <value>Группа командная панель</value> - - - ru - Группа командная панель - - - ГруппаКоманднаяПанельРасширеннаяПодсказка - 149 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ВариантыАдреса - 8 - true - true - - true - - - ВариантыАдреса - - None - Add - Change - Choose - Copy - Delete - EndEdit - MoveDown - MoveUp - SortListAsc - SortListDesc - - ВариантыАдресаГруппа - 21 - - ВариантыАдресаАктуальность - 18 - - <key>ru</key> - <value>Актуальность</value> - - true - true - - true - - - ВариантыАдреса.Неактуален - - None - - ВариантыАдресаАктуальностьРасширеннаяПодсказка - 20 - Label - true - true - - Left - - - - ВариантыАдресаАктуальностьКонтекстноеМеню - 19 - true - - PictureField - true - Auto - true - Left - true - - true - true - true - true - - CommonPicture.КонтактнаяИнформацияНеактуально - - - - 1 - - - + + ВариантыАдреса + + None + Add + Change + Choose + Copy + Delete + EndEdit + MoveDown + MoveUp + SortListAsc + SortListDesc ВариантыАдресаПредставление 15 @@ -447,683 +396,25 @@ Normal - true - true - - true - - - <key>ru</key> - <value>Варианты адреса группа</value> - - - ВариантыАдресаГруппаРасширеннаяПодсказка - 22 - Label - true - true - - Left - - - ColumnGroup - - InCell - auto - true - - - - ВариантыАдресаКоманднаяПанель - 10 - Left - - - ValueChoice - ВариантыАдресаВыборЗначения - - - OnActivateRow - ВариантыАдресаПриАктивизацииСтроки - - - ВариантыАдресаСтрокаПоиска - 69 - - ВариантыАдресаСтрокаПоискаРасширеннаяПодсказка - 71 - Label - true - true - - Left - - - - ВариантыАдресаСтрокаПоискаКонтекстноеМеню - 70 - true - - ВариантыАдреса - - true - - - - ВариантыАдресаСостояниеПросмотра - 72 - - ВариантыАдресаСостояниеПросмотраРасширеннаяПодсказка - 74 - Label - true - true - - Left - - - - ВариантыАдресаСостояниеПросмотраКонтекстноеМеню - 73 - true - - ViewStatusAddition - ВариантыАдреса - - true - - - - ВариантыАдресаУправлениеПоиском - 75 - - ВариантыАдресаУправлениеПоискомРасширеннаяПодсказка - 77 - Label - true - true - - Left - - - - ВариантыАдресаУправлениеПоискомКонтекстноеМеню - 76 - true - - SearchControlAddition - ВариантыАдреса - - true - - - - ВариантыАдресаРасширеннаяПодсказка - 11 - Label - true - true - + + ВариантыАдресаКоманднаяПанель + 10 Left - - - - ВариантыАдресаКонтекстноеМеню - 9 - - ВариантыАдресаКонтекстноеМенюГруппаНайти - 49 - - ВариантыАдресаКонтекстноеМенюНайти - 41 - true - true - - true - - - ВариантыАдресаКонтекстноеМенюНайтиРасширеннаяПодсказка - 42 - Label - true - true - - Left - - - Form.Item.ВариантыАдреса.StandardCommand.Find - Normal - Auto - true - true - UserCmds - Auto - - - ВариантыАдресаКонтекстноеМенюОтменитьПоиск - 43 - true - true - - true - - - ВариантыАдресаКонтекстноеМенюОтменитьПоискРасширеннаяПодсказка - 44 - Label - true - true - - Left - - - Form.Item.ВариантыАдреса.StandardCommand.CancelSearch - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - + + + ValueChoice + ВариантыАдресаВыборЗначения + + + OnActivateRow + ВариантыАдресаПриАктивизацииСтроки + + + ВариантыАдресаСтрокаПоиска + 69 - ВариантыАдресаКонтекстноеМенюГруппаНайтиРасширеннаяПодсказка - 50 - Label - true - true - - Left - - - - - - ВариантыАдресаКонтекстноеМенюКопироватьВБуферОбмена - 47 - true - true - - true - - - ВариантыАдресаКонтекстноеМенюКопироватьВБуферОбменаРасширеннаяПодсказка - 48 - Label - true - true - - Left - - - Form.Item.ВариантыАдреса.StandardCommand.CopyToClipboard - Normal - Auto - true - true - UserCmds - Auto - - - true - true - true - true - true - 1 - 1 - AutoUse - AutoUse - true - true - false - false - Auto - true - true - true - true - None - None - None - true - - - - ПорционнаяНавигация - 63 - - КоманднаяПанельПерейтиНаПорцию - 80 - - ПерейтиНаПорцию - 82 - true - - true - - - ПерейтиНаПорциюРасширеннаяПодсказка - 83 - Label - true - true - - Left - - - Form.Command.ПерейтиНаПорцию - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Командная панель перейти на порцию</value> - - - ru - Командная панель перейти на порцию - - - КоманднаяПанельПерейтиНаПорциюРасширеннаяПодсказка - 81 - Label - true - true - - Left - - - CommandBar - - Left - - - - КоманднаяПанельНавигацияПоПорциям - 84 - - ПерваяПорция - 78 - - <key>ru</key> - <value>В начало</value> - - true - true - - true - - - ПерваяПорцияРасширеннаяПодсказка - 79 - Label - true - true - - Left - - - Form.Command.ПерваяПорция - Normal - Auto - true - true - UserCmds - Auto - - - ПредыдущаяПорция - 65 - - <key>ru</key> - <value>< Назад</value> - - true - true - - true - - - ПредыдущаяПорцияРасширеннаяПодсказка - 66 - Label - true - true - - Left - - - Form.Command.ПредыдущаяПорция - Normal - Auto - true - true - UserCmds - Auto - - - СледующаяПорция - 67 - - <key>ru</key> - <value>Вперед ></value> - - true - true - - true - - - СледующаяПорцияРасширеннаяПодсказка - 68 - Label - true - true - - Left - - - Form.Command.СледующаяПорция - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Командная панель навигация по порциям</value> - - - ru - Командная панель навигация по порциям - - - КоманднаяПанельНавигацияПоПорциямРасширеннаяПодсказка - 85 - Label - true - true - - Left - - - CommandBar - - Right - - - true - true - - true - - - <key>ru</key> - <value>Порционная навигация</value> - - - ru - Порционная навигация - - 57 - true - - ПорционнаяНавигацияРасширеннаяПодсказка - 64 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаДополнительныеЭлементы - 86 - - ДополнительныйЭлемент - 51 - true - true - - true - - - ДополнительныйЭлемент - - - ДополнительныйЭлементРасширеннаяПодсказка - 53 - Label - true - true - - Left - - - - ДополнительныйЭлементКонтекстноеМеню - 52 - true - - InputField - Enter - true - Left - true - - - StartChoice - ДополнительныйЭлементНачалоВыбора - - - ChoiceProcessing - ДополнительныйЭлементОбработкаВыбора - - true - true - true - false - true - ShowInInputField - false - false - false - false - true - true - true - Normal - - - - ПодчиненныйЭлемент - 54 - true - true - - true - - - ПодчиненныйЭлемент - - - ПодчиненныйЭлементРасширеннаяПодсказка - 56 - Label - true - true - - Left - - - - ПодчиненныйЭлементКонтекстноеМеню - 55 - true - - InputField - Enter - true - Left - true - - - StartChoice - ПодчиненныйЭлементНачалоВыбора - - - ChoiceProcessing - ПодчиненныйЭлементОбработкаВыбора - - true - true - true - false - true - ShowInInputField - false - false - false - false - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Группа дополнительные элементы</value> - - - ГруппаДополнительныеЭлементыРасширеннаяПодсказка - 87 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Улицы и населенные пункты</value> - - - ru - Улицы и населенные пункты - - - УлицыИНаселенныеПунктыРасширеннаяПодсказка - 91 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - ДополнительныеТерритории - 92 - - ВариантыДополнительныхТерриторий - 99 - true - true - - true - - - ВариантыДополнительныхТерриторий - - None - Add - Change - Choose - Copy - Delete - EndEdit - MoveDown - MoveUp - SortListAsc - SortListDesc - - ВариантыДополнительныхТерриторийГруппа - 176 - - ВариантыДополнительныхТерриторийНеактуален - 173 - true - true - - true - - - ВариантыДополнительныхТерриторий.Неактуален - - - ВариантыДополнительныхТерриторийНеактуаленРасширеннаяПодсказка - 175 + ВариантыАдресаСтрокаПоискаРасширеннаяПодсказка + 71 Label true true @@ -1132,29 +423,551 @@ - ВариантыДополнительныхТерриторийНеактуаленКонтекстноеМеню - 174 + ВариантыАдресаСтрокаПоискаКонтекстноеМеню + 70 true - PictureField - Auto + ВариантыАдреса + + true + + + + ВариантыАдресаСостояниеПросмотра + 72 + + ВариантыАдресаСостояниеПросмотраРасширеннаяПодсказка + 74 + Label + true + true + + Left + + + + ВариантыАдресаСостояниеПросмотраКонтекстноеМеню + 73 + true + + ViewStatusAddition + ВариантыАдреса + + true + + + + ВариантыАдресаУправлениеПоиском + 75 + + ВариантыАдресаУправлениеПоискомРасширеннаяПодсказка + 77 + Label + true + true + + Left + + + + ВариантыАдресаУправлениеПоискомКонтекстноеМеню + 76 + true + + SearchControlAddition + ВариантыАдреса + + true + + + + ВариантыАдресаРасширеннаяПодсказка + 11 + Label + true + true + + Left + + + + ВариантыАдресаКонтекстноеМеню + 9 + + ВариантыАдресаКонтекстноеМенюГруппаНайти + 49 + + ВариантыАдресаКонтекстноеМенюНайти + 41 + true + true + + true + + + ВариантыАдресаКонтекстноеМенюНайтиРасширеннаяПодсказка + 42 + Label + true + true + + Left + + + Form.Item.ВариантыАдреса.StandardCommand.Find + Normal + Auto + true + true + UserCmds + Auto + + + ВариантыАдресаКонтекстноеМенюОтменитьПоиск + 43 + true + true + + true + + + ВариантыАдресаКонтекстноеМенюОтменитьПоискРасширеннаяПодсказка + 44 + Label + true + true + + Left + + + Form.Item.ВариантыАдреса.StandardCommand.CancelSearch + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + ВариантыАдресаКонтекстноеМенюГруппаНайтиРасширеннаяПодсказка + 50 + Label + true + true + + Left + + + + + + ВариантыАдресаКонтекстноеМенюКопироватьВБуферОбмена + 47 + true + true + + true + + + ВариантыАдресаКонтекстноеМенюКопироватьВБуферОбменаРасширеннаяПодсказка + 48 + Label + true + true + + Left + + + Form.Item.ВариантыАдреса.StandardCommand.CopyToClipboard + Normal + Auto + true + true + UserCmds + Auto + + + true + true + true + true + true + 1 + 1 + AutoUse + AutoUse + true + true + false + false + Auto + true + true + None + None + None + true + + + + ПорционнаяНавигация + 63 + + КоманднаяПанельНавигацияПоПорциям + 84 + + ПерваяПорция + 78 + + <key>ru</key> + <value>В начало</value> + + true + true + + true + + + ПерваяПорцияРасширеннаяПодсказка + 79 + Label + true + true + + Left + + + Form.Command.ПерваяПорция + Normal + Auto + true + true + UserCmds + Auto + + + ПредыдущаяПорция + 65 + + <key>ru</key> + <value>< Назад</value> + + true + true + + true + + + ПредыдущаяПорцияРасширеннаяПодсказка + 66 + Label + true + true + + Left + + + Form.Command.ПредыдущаяПорция + Normal + Auto + true + true + UserCmds + Auto + + + СледующаяПорция + 67 + + <key>ru</key> + <value>Вперед ></value> + + true + true + + true + + + СледующаяПорцияРасширеннаяПодсказка + 68 + Label + true + true + + Left + + + Form.Command.СледующаяПорция + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Командная панель навигация по порциям</value> + + + ru + Командная панель навигация по порциям + + + КоманднаяПанельНавигацияПоПорциямРасширеннаяПодсказка + 85 + Label + true + true + + Left + + + CommandBar + + Right + + + true + true + + true + + + <key>ru</key> + <value>Порционная навигация</value> + + + ru + Порционная навигация + + + ПорционнаяНавигацияРасширеннаяПодсказка + 64 + Label + true + true + + Left + + + UsualGroup + + Auto + true + Auto + Auto + + + + ГруппаДополнительныеЭлементы + 86 + + ДополнительныйЭлемент + 51 + true + true + + true + + + ДополнительныйЭлемент + + + ДополнительныйЭлементРасширеннаяПодсказка + 53 + Label + true + true + + Left + + + + ДополнительныйЭлементКонтекстноеМеню + 52 + true + + InputField + Enter true Left true - + + + StartChoice + ДополнительныйЭлементНачалоВыбора + + + ChoiceProcessing + ДополнительныйЭлементОбработкаВыбора + true true - true - true - - CommonPicture.КонтактнаяИнформацияНеактуально - - - - 1 - + true + false + true + ShowInInputField + false + false + false + false + true + true + true + Normal + + ПодчиненныйЭлемент + 54 + true + true + + true + + + ПодчиненныйЭлемент + + + ПодчиненныйЭлементРасширеннаяПодсказка + 56 + Label + true + true + + Left + + + + ПодчиненныйЭлементКонтекстноеМеню + 55 + true + + InputField + Enter + true + Left + true + + + StartChoice + ПодчиненныйЭлементНачалоВыбора + + + ChoiceProcessing + ПодчиненныйЭлементОбработкаВыбора + + true + true + true + false + true + ShowInInputField + false + false + false + false + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа дополнительные элементы</value> + + + ГруппаДополнительныеЭлементыРасширеннаяПодсказка + 87 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Улицы и населенные пункты</value> + + + ru + Улицы и населенные пункты + + + УлицыИНаселенныеПунктыРасширеннаяПодсказка + 91 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + ДополнительныеТерритории + 92 + + ВариантыДополнительныхТерриторий + 99 + true + true + + true + + + ВариантыДополнительныхТерриторий + + None + Add + Change + Choose + Copy + Delete + EndEdit + MoveDown + MoveUp + SortListAsc + SortListDesc ВариантыДополнительныхТерриторийПредставление 118 @@ -1197,18 +1010,223 @@ Normal + + ВариантыДополнительныхТерриторийКоманднаяПанель + 101 + + ВариантыДополнительныхТерриторийВыбрать + 146 + true + true + + true + + + ВариантыДополнительныхТерриторийВыбратьРасширеннаяПодсказка + 147 + Label + true + true + + Left + + + Form.Command.Выбрать + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + ВариантыДополнительныхТерриторийНайти + 135 + true + true + + true + + + ВариантыДополнительныхТерриторийНайтиРасширеннаяПодсказка + 136 + Label + true + true + + Left + + + Form.Item.ВариантыДополнительныхТерриторий.StandardCommand.Find + Normal + Auto + true + true + UserCmds + Auto + + + ВариантыДополнительныхТерриторийОтменитьПоиск + 137 + true + true + + true + + + ВариантыДополнительныхТерриторийОтменитьПоискРасширеннаяПодсказка + 138 + Label + true + true + + Left + + + Form.Item.ВариантыДополнительныхТерриторий.StandardCommand.CancelSearch + Normal + Auto + true + true + UserCmds + Auto + + Left + true + + + Selection + ВариантыДополнительныхТерриторийВыбор + + + OnActivateRow + ВариантыДополнительныхТерриторийПриАктивизацииСтроки + + + ВариантыДополнительныхТерриторийСтрокаПоиска + 103 + + ВариантыДополнительныхТерриторийСтрокаПоискаРасширеннаяПодсказка + 107 + Label + true + true + + Left + + + + ВариантыДополнительныхТерриторийСтрокаПоискаКонтекстноеМеню + 106 + true + + ВариантыДополнительныхТерриторий + + true + + + + ВариантыДополнительныхТерриторийСостояниеПросмотра + 108 + + ВариантыДополнительныхТерриторийСостояниеПросмотраРасширеннаяПодсказка + 112 + Label + true + true + + Left + + + + ВариантыДополнительныхТерриторийСостояниеПросмотраКонтекстноеМеню + 111 + true + + ViewStatusAddition + ВариантыДополнительныхТерриторий + + true + + + + ВариантыДополнительныхТерриторийУправлениеПоиском + 113 + + ВариантыДополнительныхТерриторийУправлениеПоискомРасширеннаяПодсказка + 117 + Label + true + true + + Left + + + + ВариантыДополнительныхТерриторийУправлениеПоискомКонтекстноеМеню + 116 + true + + SearchControlAddition + ВариантыДополнительныхТерриторий + + true + + + + ВариантыДополнительныхТерриторийРасширеннаяПодсказка + 102 + Label + true + true + + Left + + + + ВариантыДополнительныхТерриторийКонтекстноеМеню + 100 + true + + true + true + true + true + true + 1 + 1 + AutoUse + AutoUse + true + true + false + false + Auto + true + true + true + true + None + None + None + true + + + + ПодчиненныйЭлементДляТерритории + 132 true true true - - <key>ru</key> - <value>Варианты дополнительных территорий группа</value> - + + ПодчиненныйЭлементДляТерритории + - ВариантыДополнительныхТерриторийГруппаРасширеннаяПодсказка - 177 + ПодчиненныйЭлементДляТерриторииРасширеннаяПодсказка + 134 Label true true @@ -1216,229 +1234,51 @@ Left
        - ColumnGroup - - InCell - auto - true + + ПодчиненныйЭлементДляТерриторииКонтекстноеМеню + 133 + true + + InputField + Enter + true + Left + true + + + StartChoice + ПодчиненныйЭлементДляТерриторииНачалоВыбора + + + ChoiceProcessing + ПодчиненныйЭлементДляТерриторииОбработкаВыбора + + true + true + true + true + true + true + true + Normal - - ВариантыДополнительныхТерриторийКоманднаяПанель - 101 - - ВариантыДополнительныхТерриторийВыбрать - 146 - true - true - - true - - - ВариантыДополнительныхТерриторийВыбратьРасширеннаяПодсказка - 147 - Label - true - true - - Left - - - Form.Command.Выбрать - Normal - Auto - true - true - UserCmds - Auto - - - ВариантыДополнительныхТерриторийНайти - 135 - true - true - - true - - - ВариантыДополнительныхТерриторийНайтиРасширеннаяПодсказка - 136 - Label - true - true - - Left - - - Form.Item.ВариантыДополнительныхТерриторий.StandardCommand.Find - Normal - Auto - true - true - UserCmds - Auto - - - ВариантыДополнительныхТерриторийОтменитьПоиск - 137 - true - true - - true - - - ВариантыДополнительныхТерриторийОтменитьПоискРасширеннаяПодсказка - 138 - Label - true - true - - Left - - - Form.Item.ВариантыДополнительныхТерриторий.StandardCommand.CancelSearch - Normal - Auto - true - true - UserCmds - Auto - - Left - true - - - Selection - ВариантыДополнительныхТерриторийВыбор - - - OnActivateRow - ВариантыДополнительныхТерриторийПриАктивизацииСтроки - - - ВариантыДополнительныхТерриторийСтрокаПоиска - 103 - - ВариантыДополнительныхТерриторийСтрокаПоискаРасширеннаяПодсказка - 107 - Label - true - true - - Left - - - - ВариантыДополнительныхТерриторийСтрокаПоискаКонтекстноеМеню - 106 - true - - ВариантыДополнительныхТерриторий - - true - - - - ВариантыДополнительныхТерриторийСостояниеПросмотра - 108 - - ВариантыДополнительныхТерриторийСостояниеПросмотраРасширеннаяПодсказка - 112 - Label - true - true - - Left - - - - ВариантыДополнительныхТерриторийСостояниеПросмотраКонтекстноеМеню - 111 - true - - ViewStatusAddition - ВариантыДополнительныхТерриторий - - true - - - - ВариантыДополнительныхТерриторийУправлениеПоиском - 113 - - ВариантыДополнительныхТерриторийУправлениеПоискомРасширеннаяПодсказка - 117 - Label - true - true - - Left - - - - ВариантыДополнительныхТерриторийУправлениеПоискомКонтекстноеМеню - 116 - true - - SearchControlAddition - ВариантыДополнительныхТерриторий - - true - - - - ВариантыДополнительныхТерриторийРасширеннаяПодсказка - 102 - Label - true - true - - Left - - - - ВариантыДополнительныхТерриторийКонтекстноеМеню - 100 - true - - true - true - true - true - true - 1 - 1 - AutoUse - AutoUse - true - true - false - false - Auto - true - true - true - true - None - None - None - true - - - - ПодчиненныйЭлементДляТерритории - 132 true true true - - ПодчиненныйЭлементДляТерритории - + + <key>ru</key> + <value>Дополнительные территории</value> + + + ru + Дополнительные территории + - ПодчиненныйЭлементДляТерриторииРасширеннаяПодсказка - 134 + ДополнительныеТерриторииРасширеннаяПодсказка + 93 Label true true @@ -1446,33 +1286,11 @@ Left - - ПодчиненныйЭлементДляТерриторииКонтекстноеМеню - 133 - true - - InputField - Enter - true - Left - true - - - StartChoice - ПодчиненныйЭлементДляТерриторииНачалоВыбора - - - ChoiceProcessing - ПодчиненныйЭлементДляТерриторииОбработкаВыбора - - true - true - true - true - true - true - true - Normal + Page + + Vertical + auto + false true @@ -1482,15 +1300,15 @@ <key>ru</key> - <value>Дополнительные территории</value> + <value>Страницы</value> ru - Дополнительные территории + Страницы - ДополнительныеТерриторииРасширеннаяПодсказка - 93 + СтраницыРасширеннаяПодсказка + 89 Label true true @@ -1498,11 +1316,14 @@ Left - Page - - Vertical - auto - false + Pages + + + OnCurrentPageChange + СтраницыПриСменеСтраницы + + TabsOnTop + Auto true @@ -1510,17 +1331,9 @@ true - - <key>ru</key> - <value>Страницы</value> - - - ru - Страницы - - СтраницыРасширеннаяПодсказка - 89 + ОбщаяГруппаРасширеннаяПодсказка + 179 Label true true @@ -1528,13 +1341,12 @@ Left - Pages - - - OnCurrentPageChange - СтраницыПриСменеСтраницы - - TabsOnTop + UsualGroup + + Auto + true + true + Auto Auto @@ -2012,6 +1824,21 @@ true + + НаселенныйПунктДетально + + <key>ru</key> + <value>Населенный пункт детально</value> + + 19 + + + true + + + true + + СледующаяПорция @@ -2078,28 +1905,6 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> - <formCommands> - <name>ПерейтиНаПорцию</name> - <title> - <key>ru</key> - <value>Перейти...</value> - - 4 - - ru - Перейти на порцию - - - true - - - - ПерейтиНаПорцию - - - DontUse - Auto - Выбрать @@ -2157,6 +1962,10 @@ <stringQualifiers/> </valueType> </parameters> + <parameters> + <name>НаселенныйПунктДетально</name> + <valueType/> + </parameters> <commandInterface> <navigationPanel/> <commandBar/> diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборУлицы/Module.bsl b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборУлицы/Module.bsl index 56c7c4194..fe80685c5 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборУлицы/Module.bsl +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ВыборУлицы/Module.bsl @@ -23,9 +23,12 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + Если Параметры.Свойство("АвтоТест") Тогда Возврат; КонецЕсли; + НомерПорции = Неопределено; Параметры.Свойство("Родитель", Родитель); @@ -80,6 +83,7 @@ ВариантыАдреса.Загрузить(ДанныеКлассификатора.Данные); ВариантыДополнительныхТерриторий.Загрузить(ДанныеКлассификатораДополнительныеТерритории.Данные); ОчищатьПодчиненные = Ложь; + НаселенныйПунктДетально = Параметры.НаселенныйПунктДетально; УстановитьДанныеПоПредставлениюУлицы(Параметры.ПредставлениеУлицы, Родитель); КонецПроцедуры @@ -333,39 +337,6 @@ ЗаполнитьПорциюВариантов(ПараметрыПоиска); КонецПроцедуры -&НаКлиенте -Процедура ПерейтиНаПорцию(Команда) - - ВариантыПерехода= Новый СписокЗначений; - - ВариантыПерехода.Добавить("1", "1..9"); - Варианты = "АБВГДЕЖЗИЙКЛМНОПРСТУВХЦЧШЩЫЭЮЯ"; - Для Позиция = 1 По СтрДлина(Варианты) Цикл - Буква = Сред(Варианты, Позиция, 1); - ВариантыПерехода.Добавить(Буква, Буква + "..."); - КонецЦикла; - - ПерваяБуква = Неопределено; - ТекущиеДанные = Элементы.ВариантыАдреса.ТекущиеДанные; - Если ТекущиеДанные <> Неопределено Тогда - ПерваяБуква = ВариантыПерехода.НайтиПоЗначению( ВРег(Лев(СокрЛ(ТекущиеДанные.Представление), 1)) ); - КонецЕсли; - - Оповещение = Новый ОписаниеОповещения("ПереходНаПозициюПоПервойБукве", ЭтотОбъект); - ПоказатьВыборИзМеню(Оповещение, ВариантыПерехода, Элементы.КоманднаяПанельПерейтиНаПорцию); -КонецПроцедуры - -&НаКлиенте -Процедура ПереходНаПозициюПоПервойБукве(Результат, ДополнительныеПараметры) Экспорт - - Если Результат <> Неопределено Тогда - - ЗаполнитьПорциюВариантовПоПервойБукве(Результат.Значение); - - КонецЕсли; - -КонецПроцедуры - #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -373,6 +344,10 @@ &НаКлиенте Процедура ПроизвестиВыбор(Знач НомерСтроки) + Если НомерСтроки = Неопределено Тогда + Возврат; + КонецЕсли; + Если Элементы.Страницы.ТекущаяСтраница = Элементы.ДополнительныеТерритории Тогда Данные = ВариантыДополнительныхТерриторий.НайтиПоИдентификатору(Элементы.ВариантыДополнительныхТерриторий.ТекущаяСтрока); Иначе @@ -410,7 +385,6 @@ КонецПроцедуры - &НаКлиенте Процедура ПроизвестиВыборЗавершениеВопроса(Знач РезультатВопроса, Знач ДополнительныеПараметры) Экспорт @@ -426,44 +400,63 @@ Результат = СтруктураВыбранногоАдреса(); Если Не Отказ Тогда ЗаполнитьЗначенияСвойств(Результат, Данные); + Улица = ""; Если Элементы.Страницы.ТекущаяСтраница = Элементы.ДополнительныеТерритории Тогда - Результат.Улица = ""; - Результат.ДополнительныйЭлемент = Данные.Представление; - Результат.ПодчиненныйЭлемент = ПодчиненныйЭлементДляТерритории; + ЗаполнитьЧастьАдресаПоПредставлению("Улица", "", Неопределено); + ЗаполнитьЧастьАдресаПоПредставлению("ДополнительныйЭлемент", Данные.Представление, Данные.Идентификатор); + ЗаполнитьЧастьАдресаПоПредставлению("ПодчиненныйЭлемент", ПодчиненныйЭлементДляТерритории, ИдентификаторПодчиненногоДляТерритории); Если ЗначениеЗаполнено(ИдентификаторПодчиненногоДляТерритории) Тогда - Результат.Идентификатор = ИдентификаторПодчиненного; + Результат.Идентификатор = ИдентификаторПодчиненногоДляТерритории; КонецЕсли; Иначе - Результат.Улица = Данные.Представление; - Результат.ДополнительныйЭлемент = ДополнительныйЭлемент; - Результат.ПодчиненныйЭлемент = ПодчиненныйЭлемент; + ЗаполнитьЧастьАдресаПоПредставлению("Улица", Данные.Представление, Данные.Идентификатор); + ЗаполнитьЧастьАдресаПоПредставлению("ДополнительныйЭлемент", ДополнительныйЭлемент, ИдентификаторДополнительного); + ЗаполнитьЧастьАдресаПоПредставлению("ПодчиненныйЭлемент", ПодчиненныйЭлемент, ИдентификаторПодчиненного); + Результат.НаселенныйПунктДетально = НаселенныйПунктДетально; Если ЗначениеЗаполнено(ИдентификаторПодчиненного) Тогда Результат.Идентификатор = ИдентификаторПодчиненного; ИначеЕсли ЗначениеЗаполнено(ИдентификаторДополнительного) Тогда Результат.Идентификатор = ИдентификаторДополнительного; КонецЕсли; КонецЕсли; - Результат.Представление = СформироватьПредставлениеАдреса(Результат); + + Результат.Представление = СформироватьПредставлениеАдреса(Результат.НаселенныйПунктДетально); Иначе Результат.Отказ = Истина; КонецЕсли; Результат.КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки; - - ОповеститьОВыборе(Результат); + +КонецПроцедуры + +&НаКлиенте +Процедура ЗаполнитьЧастьАдресаПоПредставлению(НаименованиеЧастиАдреса, Представление, Идентификатор) + + НаименованиеСокращение= УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(Представление); + НаселенныйПунктДетально[НаименованиеЧастиАдреса].Представление = Представление; + НаселенныйПунктДетально[НаименованиеЧастиАдреса].Идентификатор = ?(ЗначениеЗаполнено(Идентификатор), Идентификатор, Неопределено); + НаселенныйПунктДетально[НаименованиеЧастиАдреса].Наименование = НаименованиеСокращение.Наименование; + НаселенныйПунктДетально[НаименованиеЧастиАдреса].Сокращение = НаименованиеСокращение.Сокращение; + + Если НаименованиеЧастиАдреса = "ДополнительныйЭлемент" Тогда + НаселенныйПунктДетально[НаименованиеЧастиАдреса].ПутьXPath = УправлениеКонтактнойИнформациейКлиентСервер.XPathДополнительногоОбъектаАдресации(90, НаименованиеСокращение.Сокращение); + ИначеЕсли НаименованиеЧастиАдреса = "ПодчиненныйЭлемент" Тогда + НаселенныйПунктДетально[НаименованиеЧастиАдреса].ПутьXPath = УправлениеКонтактнойИнформациейКлиентСервер.XPathДополнительногоОбъектаАдресации(91); + Иначе + НаселенныйПунктДетально[НаименованиеЧастиАдреса].ПутьXPath = НаименованиеЧастиАдреса; + КонецЕсли; + КонецПроцедуры &НаКлиенте Функция СтруктураВыбранногоАдреса() СтруктураАдреса = Новый Структура; + СтруктураАдреса.Вставить("НаселенныйПунктДетально", НаселенныйПунктДетально); СтруктураАдреса.Вставить("Представление", Неопределено); - СтруктураАдреса.Вставить("Улица", Неопределено); СтруктураАдреса.Вставить("Идентификатор", Неопределено); - СтруктураАдреса.Вставить("ДополнительныйЭлемент", Неопределено); - СтруктураАдреса.Вставить("ПодчиненныйЭлемент", Неопределено); СтруктураАдреса.Вставить("РегионЗагружен", Истина); СтруктураАдреса.Вставить("Неактуален", Ложь); СтруктураАдреса.Вставить("КраткоеПредставлениеОшибки", ""); @@ -478,18 +471,18 @@ Результат = ""; Разделитель = ""; - Если ЗначениеЗаполнено(СтруктураАдреса.Улица) Тогда - Результат = СтруктураАдреса.Улица; + Если ЗначениеЗаполнено(СтруктураАдреса.Улица.Представление) Тогда + Результат = СтруктураАдреса.Улица.Представление; Разделитель = ", "; КонецЕсли; - Если ЗначениеЗаполнено(СтруктураАдреса.ДополнительныйЭлемент) Тогда - Результат = Результат + Разделитель + СтруктураАдреса.ДополнительныйЭлемент; + Если ЗначениеЗаполнено(СтруктураАдреса.ДополнительныйЭлемент.Представление) Тогда + Результат = Результат + Разделитель + СтруктураАдреса.ДополнительныйЭлемент.Представление; Разделитель = ", "; КонецЕсли; - Если ЗначениеЗаполнено(СтруктураАдреса.ПодчиненныйЭлемент) Тогда - Результат = Результат + Разделитель + СтруктураАдреса.ПодчиненныйЭлемент; + Если ЗначениеЗаполнено(СтруктураАдреса.ПодчиненныйЭлемент.Представление) Тогда + Результат = Результат + Разделитель + СтруктураАдреса.ПодчиненныйЭлемент.Представление; Разделитель = ", "; КонецЕсли; @@ -548,91 +541,108 @@ &НаСервере Процедура УстановитьДанныеПоПредставлениюУлицы(Представление, ИдентификаторРодителя) - АнализКлассификатора =УправлениеКонтактнойИнформациейСлужебный.УлицыПоПредставлению(ИдентификаторРодителя, Представление); - Если АнализКлассификатора <> Неопределено Тогда - ДанныеУлицы = АнализКлассификатора.Найти(7, "Уровень"); - Если ДанныеУлицы <> Неопределено Тогда - Отбор = Новый Структура("Представление",ДанныеУлицы.Значение); - Варианты = ВариантыАдреса.НайтиСтроки(Отбор); - Если Варианты.Количество() > 0 Тогда - Элементы.ВариантыАдреса.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); - КонецЕсли; - ДанныеДополнительныйЭлемент = АнализКлассификатора.Найти(90, "Уровень"); - Если ДанныеДополнительныйЭлемент <> Неопределено Тогда - ДополнительныйЭлемент = ДанныеДополнительныйЭлемент.Значение; - КонецЕсли; - ДанныеПодчиненныйЭлемент = АнализКлассификатора.Найти(91, "Уровень"); - Если ДанныеПодчиненныйЭлемент <> Неопределено Тогда - ПодчиненныйЭлемент = ДанныеПодчиненныйЭлемент.Значение; - КонецЕсли; - Иначе - ДанныеДополнительныйЭлемент = АнализКлассификатора.Найти(90, "Уровень"); - Если ДанныеДополнительныйЭлемент <> Неопределено Тогда - Отбор = Новый Структура("Представление", ДанныеДополнительныйЭлемент.Значение); - Варианты = ВариантыДополнительныхТерриторий.НайтиСтроки(Отбор); - Если Варианты.Количество() > 0 Тогда - Элементы.ВариантыДополнительныхТерриторий.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); + Если НЕ ЗначениеЗаполнено(Представление) Тогда + Для каждого УровеньАдреса Из НаселенныйПунктДетально Цикл + Если УровеньАдреса.Ключ = "Улица" Тогда + Отбор = Новый Структура("Представление", УровеньАдреса.Значение.Представление); + Варианты = ВариантыАдреса.НайтиСтроки(Отбор); + Если Варианты.Количество() > 0 Тогда + Элементы.ВариантыАдреса.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); КонецЕсли; - Элементы.Страницы.ТекущаяСтраница = Элементы.ДополнительныеТерритории; + ИначеЕсли УровеньАдреса.Ключ = "ДополнительныйЭлемент" Тогда + ДополнительныйЭлемент = УровеньАдреса.Значение.Представление; + ИначеЕсли УровеньАдреса.Ключ = "ПодчиненныйЭлемент" Тогда + ПодчиненныйЭлемент = УровеньАдреса.Значение.Представление; КонецЕсли; - ДанныеПодчиненныйЭлементДляТерритории = АнализКлассификатора.Найти(91, "Уровень"); - Если ДанныеПодчиненныйЭлементДляТерритории <> Неопределено Тогда - ПодчиненныйЭлементДляТерритории = ДанныеПодчиненныйЭлементДляТерритории.Значение; - КонецЕсли; - КонецЕсли; + КонецЦикла; Иначе - ЧастиУлицы = СтрРазделить(Представление, ",", Ложь); - Если ЧастиУлицы.Количество() = 3 Тогда - Отбор = Новый Структура("Представление", СокрЛП(ЧастиУлицы[0])); - Варианты = ВариантыАдреса.НайтиСтроки(Отбор); - Если Варианты.Количество() > 0 Тогда - Элементы.ВариантыАдреса.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); - КонецЕсли; - ДополнительныйЭлемент = СокрЛП(ЧастиУлицы[1]); - ПодчиненныйЭлемент = СокрЛП(ЧастиУлицы[2]); - ИначеЕсли ЧастиУлицы.Количество() = 2 Тогда - Отбор = Новый Структура("Представление", СокрЛП(ЧастиУлицы[0])); - Варианты = ВариантыАдреса.НайтиСтроки(Отбор); - Если Варианты.Количество() > 0 Тогда - Элементы.ВариантыАдреса.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); - Если Элементы.УлицыИНаселенныеПункты.Видимость Тогда - ДополнительныйЭлемент = СокрЛП(ЧастиУлицы[1]); - Иначе - ПодчиненныйЭлементДляТерритории = СокрЛП(ЧастиУлицы[1]); + // адрес был введен вручную + АнализКлассификатора =УправлениеКонтактнойИнформациейСлужебный.УлицыПоПредставлению(ИдентификаторРодителя, Представление); + Если АнализКлассификатора <> Неопределено Тогда + ДанныеУлицы = АнализКлассификатора.Найти(7, "Уровень"); + Если ДанныеУлицы <> Неопределено Тогда + Отбор = Новый Структура("Представление",ДанныеУлицы.Значение); + Варианты = ВариантыАдреса.НайтиСтроки(Отбор); + Если Варианты.Количество() > 0 Тогда + Элементы.ВариантыАдреса.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); + КонецЕсли; + ДанныеДополнительныйЭлемент = АнализКлассификатора.Найти(90, "Уровень"); + Если ДанныеДополнительныйЭлемент <> Неопределено Тогда + ДополнительныйЭлемент = ДанныеДополнительныйЭлемент.Значение; + КонецЕсли; + ДанныеПодчиненныйЭлемент = АнализКлассификатора.Найти(91, "Уровень"); + Если ДанныеПодчиненныйЭлемент <> Неопределено Тогда + ПодчиненныйЭлемент = ДанныеПодчиненныйЭлемент.Значение; КонецЕсли; Иначе - Варианты = ВариантыДополнительныхТерриторий.НайтиСтроки(Отбор); + ДанныеДополнительныйЭлемент = АнализКлассификатора.Найти(90, "Уровень"); + Если ДанныеДополнительныйЭлемент <> Неопределено Тогда + Отбор = Новый Структура("Представление", ДанныеДополнительныйЭлемент.Значение); + Варианты = ВариантыДополнительныхТерриторий.НайтиСтроки(Отбор); + Если Варианты.Количество() > 0 Тогда + Элементы.ВариантыДополнительныхТерриторий.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); + КонецЕсли; + Элементы.Страницы.ТекущаяСтраница = Элементы.ДополнительныеТерритории; + КонецЕсли; + ДанныеПодчиненныйЭлементДляТерритории = АнализКлассификатора.Найти(91, "Уровень"); + Если ДанныеПодчиненныйЭлементДляТерритории <> Неопределено Тогда + ПодчиненныйЭлементДляТерритории = ДанныеПодчиненныйЭлементДляТерритории.Значение; + КонецЕсли; + КонецЕсли; + Иначе + ЧастиУлицы = СтрРазделить(Представление, ",", Ложь); + Если ЧастиУлицы.Количество() = 3 Тогда + Отбор = Новый Структура("Представление", СокрЛП(ЧастиУлицы[0])); + Варианты = ВариантыАдреса.НайтиСтроки(Отбор); + Если Варианты.Количество() > 0 Тогда + Элементы.ВариантыАдреса.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); + КонецЕсли; + ДополнительныйЭлемент = СокрЛП(ЧастиУлицы[1]); + ПодчиненныйЭлемент = СокрЛП(ЧастиУлицы[2]); + ИначеЕсли ЧастиУлицы.Количество() = 2 Тогда + Отбор = Новый Структура("Представление", СокрЛП(ЧастиУлицы[0])); + Варианты = ВариантыАдреса.НайтиСтроки(Отбор); Если Варианты.Количество() > 0 Тогда - Элементы.ВариантыДополнительныхТерриторий.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); + Элементы.ВариантыАдреса.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); Если Элементы.УлицыИНаселенныеПункты.Видимость Тогда ДополнительныйЭлемент = СокрЛП(ЧастиУлицы[1]); Иначе ПодчиненныйЭлементДляТерритории = СокрЛП(ЧастиУлицы[1]); КонецЕсли; - КонецЕсли; - КонецЕсли; - ИначеЕсли ЧастиУлицы.Количество() = 1 Тогда - Отбор = Новый Структура("Представление", СокрЛП(ЧастиУлицы[0])); - Варианты = ВариантыАдреса.НайтиСтроки(Отбор); - Если Варианты.Количество() > 0 Тогда - Элементы.ВариантыАдреса.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); - Иначе - Варианты = ВариантыДополнительныхТерриторий.НайтиСтроки(Отбор); - Если Варианты.Количество() > 0 Тогда - Элементы.ВариантыДополнительныхТерриторий.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); - Элементы.Страницы.ТекущаяСтраница = Элементы.ДополнительныеТерритории; Иначе - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда - АдресныйОбъект = УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(Представление); - - МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); - Результат = МодульАдресныйКлассификаторСлужебный.УлицаИДополнительнаяТерритория(АдресныйОбъект, ИдентификаторРодителя); - Если Результат <> Неопределено Тогда - Отбор = Новый Структура("Идентификатор", Результат.ИдентификаторУлицы); - Варианты = ВариантыАдреса.НайтиСтроки(Отбор); - Элементы.ВариантыАдреса.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); - ИдентификаторДополнительного = Результат.Идентификатор; - ДополнительныйЭлемент = Результат.Значение; + Варианты = ВариантыДополнительныхТерриторий.НайтиСтроки(Отбор); + Если Варианты.Количество() > 0 Тогда + Элементы.ВариантыДополнительныхТерриторий.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); + Если Элементы.УлицыИНаселенныеПункты.Видимость Тогда + ДополнительныйЭлемент = СокрЛП(ЧастиУлицы[1]); + Иначе + ПодчиненныйЭлементДляТерритории = СокрЛП(ЧастиУлицы[1]); + КонецЕсли; + КонецЕсли; + КонецЕсли; + ИначеЕсли ЧастиУлицы.Количество() = 1 Тогда + Отбор = Новый Структура("Представление", СокрЛП(ЧастиУлицы[0])); + Варианты = ВариантыАдреса.НайтиСтроки(Отбор); + Если Варианты.Количество() > 0 Тогда + Элементы.ВариантыАдреса.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); + Иначе + Варианты = ВариантыДополнительныхТерриторий.НайтиСтроки(Отбор); + Если Варианты.Количество() > 0 Тогда + Элементы.ВариантыДополнительныхТерриторий.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); + Элементы.Страницы.ТекущаяСтраница = Элементы.ДополнительныеТерритории; + Иначе + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда + АдресныйОбъект = УправлениеКонтактнойИнформациейКлиентСервер.НаименованиеСокращение(Представление); + + МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); + Результат = МодульАдресныйКлассификаторСлужебный.УлицаИДополнительнаяТерритория(АдресныйОбъект, ИдентификаторРодителя); + Если Результат <> Неопределено Тогда + Отбор = Новый Структура("Идентификатор", Результат.ИдентификаторУлицы); + Варианты = ВариантыАдреса.НайтиСтроки(Отбор); + Элементы.ВариантыАдреса.ТекущаяСтрока = Варианты[0].ПолучитьИдентификатор(); + ИдентификаторДополнительного = Результат.Идентификатор; + ДополнительныйЭлемент = Результат.Значение; + КонецЕсли; КонецЕсли; КонецЕсли; КонецЕсли; @@ -656,4 +666,32 @@ КонецФункции +&НаСервере +Процедура УстановитьУсловноеОформление() + + УсловноеОформление.Элементы.Очистить(); + + // + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ВариантыАдресаПредставление.Имя); + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ВариантыАдреса.Неактуален"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + + Элемент = УсловноеОформление.Элементы.Добавить(); + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ВариантыДополнительныхТерриторий.Имя); + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ВариантыДополнительныхТерриторий.Неактуален"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ЗагрузкаАдресногоКлассификатора/Form.form b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ЗагрузкаАдресногоКлассификатора/Form.form index cb97f086a..9aabfd130 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ЗагрузкаАдресногоКлассификатора/Form.form +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ЗагрузкаАдресногоКлассификатора/Form.form @@ -33,9 +33,7 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> </extInfo> @@ -87,6 +85,7 @@ <userVisible> <common>true</common> </userVisible> + <defaultItem>true</defaultItem> <extendedTooltip> <name>ЗагрузитьРасширеннаяПодсказка</name> <id>8</id> @@ -98,8 +97,8 @@ </extInfo> </extendedTooltip> <commandName>Form.Command.Загрузить</commandName> - <buttonImportance>Normal</buttonImportance> <representation>Auto</representation> + <defaultButton>true</defaultButton> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <placementArea>UserCmds</placementArea> @@ -221,6 +220,20 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> + <parameters> + <name>ТекстПредупреждения</name> + <valueType> + <types>String</types> + <stringQualifiers/> + </valueType> + </parameters> + <parameters> + <name>НазваниеРегиона</name> + <valueType> + <types>String</types> + <stringQualifiers/> + </valueType> + </parameters> <commandInterface> <navigationPanel/> <commandBar/> diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ЗагрузкаАдресногоКлассификатора/Module.bsl b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ЗагрузкаАдресногоКлассификатора/Module.bsl index a91aa145b..8433a28c3 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ЗагрузкаАдресногоКлассификатора/Module.bsl +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ЗагрузкаАдресногоКлассификатора/Module.bsl @@ -2,8 +2,16 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - Если Параметры.Свойство("НазваниеРегионаДляЗагрузки") Тогда - Элементы.Надпись.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Элементы.Надпись.Заголовок, Параметры.НазваниеРегионаДляЗагрузки); + + Если Параметры.Свойство("АвтоТест") Тогда + Возврат; + КонецЕсли; + + Если ЗначениеЗаполнено(Параметры.ТекстПредупреждения) Тогда + Элементы.Надпись.Заголовок = Параметры.ТекстПредупреждения; + ИначеЕсли Параметры.НазваниеРегиона Тогда + ТекстВопроса = НСтр("ru = 'Для автоподбора и выбора адресных сведений необходимо загрузить классификатор по региону ""%1"".'"); + Элементы.Надпись.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстВопроса, Параметры.НазваниеРегиона); КонецЕсли; КонецПроцедуры diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ИсторияКонтактнойИнформации/Form.form b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ИсторияКонтактнойИнформации/Form.form index 4e6a32ba7..963a91d9a 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ИсторияКонтактнойИнформации/Form.form +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ИсторияКонтактнойИнформации/Form.form @@ -4,86 +4,460 @@ <key>ru</key> <value>История контактной информации</value> - - История - 1 - true - true - - true - - - История - - None - CancelSearch - Copy - EndEdit - Find - MoveDown - MoveUp - ShowRowRearrangement - SortListAsc - SortListDesc - - ИсторияДействуетС - 14 + + ОбщаяГруппа + 48 + + История + 1 true true true - История.ДействуетС + История - - ИсторияДействуетСРасширеннаяПодсказка - 16 - Label - true - true - - Left + None + CancelSearch + Copy + EndEdit + Find + MoveDown + MoveUp + ShowRowRearrangement + SortListAsc + SortListDesc + + ИсторияДействуетС + 14 + true + true + + true + + + История.ДействуетС + + + OnChange + ИсторияДействуетСПриИзменении + + + ИсторияДействуетСРасширеннаяПодсказка + 16 + Label + true + true + + Left + + + + ИсторияДействуетСКонтекстноеМеню + 15 + true + + InputField + Auto + true + Left + true + + true + true + true + true + true + true + Normal - - - ИсторияДействуетСКонтекстноеМеню - 15 + + + ИсторияПредставление + 17 + true + true + + true + + + История.Представление + + + OnChange + ИсторияПредставлениеПриИзменении + + + ИсторияПредставлениеРасширеннаяПодсказка + 19 + Label + true + true + + Left + + + + ИсторияПредставлениеКонтекстноеМеню + 18 + true + + InputField + Auto + true + Left + true + + + StartChoice + ИсторияАдресНачалоВыбора + + true + true + true + true + true + true + Normal + + + + ИсторияКоманднаяПанель + 3 + + ИсторияВыбрать + 50 + true + + true + + + ИсторияВыбратьРасширеннаяПодсказка + 51 + Label + true + true + + Left + + + Form.Command.Выбрать + Normal + Auto + true + true + UserCmds + Auto + + + ИсторияДобавить + 22 + true + true + + true + + + ИсторияДобавитьРасширеннаяПодсказка + 23 + Label + true + true + + Left + + + Form.Item.История.StandardCommand.Add + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + ИсторияИзменить + 20 + true + true + + true + + + ИсторияИзменитьРасширеннаяПодсказка + 21 + Label + true + true + + Left + + + Form.Item.История.StandardCommand.Change + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + ИсторияУдалить + 24 + true + true + + true + + + ИсторияУдалитьРасширеннаяПодсказка + 25 + Label + true + true + + Left + + + Form.Item.История.StandardCommand.Delete + Normal + Auto + true + true + UserCmds + Auto + + + ИсторияГруппаДействия + 32 + + ИсторияИзменитьФорму + 28 + true + true + + true + + + ИсторияИзменитьФормуРасширеннаяПодсказка + 29 + Label + true + true + + Left + + + Form.StandardCommand.CustomizeForm + Normal + Auto + true + true + UserCmds + Auto + + + ИсторияВывестиСписок + 30 + true + true + + true + + + ИсторияВывестиСписокРасширеннаяПодсказка + 31 + Label + true + true + + Left + + + Form.Item.История.StandardCommand.OutputList + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + ИсторияГруппаДействияРасширеннаяПодсказка + 33 + Label + true + true + + Left + + + + + + ИсторияГруппаСправка + 34 + + ФормаСправка + 26 + true + true + + true + + + ФормаСправкаРасширеннаяПодсказка + 27 + Label + true + true + + Left + + + Form.StandardCommand.Help + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + true + true + + true + + + <key>ru</key> + <value>История группа справка</value> + + + ru + История группа справка + + + ИсторияГруппаСправкаРасширеннаяПодсказка + 35 + Label + true + true + + Left + + + + + Left true - - InputField - Auto - true - Left - true - - true - true - true - true - true - true - Normal - - - - ИсторияПредставление - 17 - true - true - - true - - - История.Представление - + + + Selection + ИсторияВыбор + + + BeforeAddRow + ИсторияПередНачаломДобавления + + + BeforeDeleteRow + ИсторияПередУдалением + + + OnActivateRow + ИсторияПриАктивизацииСтроки + + + BeforeRowChange + ИсторияПередНачаломИзменения + OnChange - ИсторияПредставлениеПриИзменении + ИсторияПриИзменении + + ИсторияСтрокаПоиска + 5 + + ИсторияСтрокаПоискаРасширеннаяПодсказка + 7 + Label + true + true + + Left + + + + ИсторияСтрокаПоискаКонтекстноеМеню + 6 + true + + История + + true + + + + ИсторияСостояниеПросмотра + 8 + + ИсторияСостояниеПросмотраРасширеннаяПодсказка + 10 + Label + true + true + + Left + + + + ИсторияСостояниеПросмотраКонтекстноеМеню + 9 + true + + ViewStatusAddition + История + + true + + + + ИсторияУправлениеПоиском + 11 + + ИсторияУправлениеПоискомРасширеннаяПодсказка + 13 + Label + true + true + + Left + + + + ИсторияУправлениеПоискомКонтекстноеМеню + 12 + true + + SearchControlAddition + История + + true + + - ИсторияПредставлениеРасширеннаяПодсказка - 19 + ИсторияРасширеннаяПодсказка + 4 Label true true @@ -92,127 +466,19 @@ - ИсторияПредставлениеКонтекстноеМеню - 18 - true - - InputField - Auto - true - Left - true - - - StartChoice - ИсторияАдресНачалоВыбора - - true - true - true - true - true - true - true - Normal - - - - ИсторияКоманднаяПанель - 3 - - ИсторияДобавить - 22 - true - true - - true - - - ИсторияДобавитьРасширеннаяПодсказка - 23 - Label - true - true - - Left - - - Form.Item.История.StandardCommand.Add - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - - ИсторияИзменить - 20 - true - true - - true - - - ИсторияИзменитьРасширеннаяПодсказка - 21 - Label - true - true - - Left - - - Form.Item.История.StandardCommand.Change - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - ИсторияУдалить - 24 - true - true - - true - - - ИсторияУдалитьРасширеннаяПодсказка - 25 - Label - true - true - - Left - - - Form.Item.История.StandardCommand.Delete - Normal - Auto - true - true - UserCmds - Auto - - - ИсторияГруппаДействия - 32 + ИсторияКонтекстноеМеню + 2 - ИсторияИзменитьФорму - 28 + ИсторияКонтекстноеМенюДобавить + 42 true true true - ИсторияИзменитьФормуРасширеннаяПодсказка - 29 + ИсторияКонтекстноеМенюДобавитьРасширеннаяПодсказка + 43 Label true true @@ -220,7 +486,7 @@ Left - Form.StandardCommand.CustomizeForm + Form.Item.История.StandardCommand.Add Normal Auto true @@ -229,16 +495,16 @@ Auto - ИсторияВывестиСписок - 30 + ИсторияКонтекстноеМенюИзменить + 44 true true true - ИсторияВывестиСписокРасширеннаяПодсказка - 31 + ИсторияКонтекстноеМенюИзменитьРасширеннаяПодсказка + 45 Label true true @@ -246,7 +512,7 @@ Left - Form.Item.История.StandardCommand.OutputList + Form.Item.История.StandardCommand.Change Normal Auto true @@ -254,37 +520,17 @@ UserCmds Auto - true - true - - true - - - ИсторияГруппаДействияРасширеннаяПодсказка - 33 - Label - true - true - - Left - - - - - - ИсторияГруппаСправка - 34 - ФормаСправка - 26 + ИсторияКонтекстноеМенюУдалить + 46 true true true - ФормаСправкаРасширеннаяПодсказка - 27 + ИсторияКонтекстноеМенюУдалитьРасширеннаяПодсказка + 47 Label true true @@ -292,158 +538,54 @@ Left - Form.StandardCommand.Help + Form.Item.История.StandardCommand.Delete Normal Auto true true UserCmds Auto - InAdditionalSubmenu - true - true - - true - - - <key>ru</key> - <value>История группа справка</value> - - - ru - История группа справка - - - ИсторияГруппаСправкаРасширеннаяПодсказка - 35 - Label - true - true - - Left - - - - - Left - true - - - BeforeAddRow - ИсторияПередНачаломДобавления - - - BeforeDeleteRow - ИсторияПередУдалением - - - OnActivateRow - ИсторияПриАктивизацииСтроки - - - BeforeRowChange - ИсторияПередНачаломИзменения - - - OnChange - ИсторияПриИзменении - - - ИсторияСтрокаПоиска - 5 - - ИсторияСтрокаПоискаРасширеннаяПодсказка - 7 - Label - true - true - - Left - - - - ИсторияСтрокаПоискаКонтекстноеМеню - 6 true - История - - true - - - - ИсторияСостояниеПросмотра - 8 - - ИсторияСостояниеПросмотраРасширеннаяПодсказка - 10 - Label - true - true - - Left - - - - ИсторияСостояниеПросмотраКонтекстноеМеню - 9 - true - - ViewStatusAddition - История - - true - - - - ИсторияУправлениеПоиском - 11 - - ИсторияУправлениеПоискомРасширеннаяПодсказка - 13 - Label - true - true - - Left - - - - ИсторияУправлениеПоискомКонтекстноеМеню - 12 - true - - SearchControlAddition - История - - true - - - - ИсторияРасширеннаяПодсказка - 4 - Label + true + true true true - - Left - - - - ИсторияКонтекстноеМеню - 2 + true + MultiRow +
        true
        + 1 + 1 + AutoUse + AutoUse + true + true + true + Auto + Auto + true + true + true + true + true + + + + ГруппаКоманднаяПанель + 36 - ИсторияКонтекстноеМенюДобавить - 42 + ОК + 40 true true true + true - ИсторияКонтекстноеМенюДобавитьРасширеннаяПодсказка - 43 + ОКРасширеннаяПодсказка + 41 Label true true @@ -451,25 +593,25 @@ Left - Form.Item.История.StandardCommand.Add - Normal + Form.Command.ОК Auto + true true true UserCmds Auto - ИсторияКонтекстноеМенюИзменить - 44 + Отмена + 38 true true true - ИсторияКонтекстноеМенюИзменитьРасширеннаяПодсказка - 45 + ОтменаРасширеннаяПодсказка + 39 Label true true @@ -477,7 +619,7 @@ Left - Form.Item.История.StandardCommand.Change + Form.Command.Отмена Normal Auto true @@ -485,72 +627,22 @@ UserCmds Auto - - ИсторияКонтекстноеМенюУдалить - 46 - true - true - - true - - - ИсторияКонтекстноеМенюУдалитьРасширеннаяПодсказка - 47 - Label - true - true - - Left - - - Form.Item.История.StandardCommand.Delete - Normal - Auto - true - true - UserCmds - Auto - - true -
        - true - true - true - true - true - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - true - Auto - Auto - true - true - true - true - true - - - - ГруппаКоманднаяПанель - 36 - - ОК - 40 true true true - true + + <key>ru</key> + <value>Группа командная панель</value> + + + ru + Группа командная панель + - ОКРасширеннаяПодсказка - 41 + ГруппаКоманднаяПанельРасширеннаяПодсказка + 37 Label true true @@ -558,39 +650,10 @@ Left - Form.Command.ОК - Auto - true - true - true - UserCmds - Auto - - - Отмена - 38 - true - true - - true - - - ОтменаРасширеннаяПодсказка - 39 - Label - true - true - - Left - - - Form.Command.Отмена - Normal - Auto - true - true - UserCmds - Auto + CommandBar + + Right + true true @@ -599,15 +662,11 @@ <key>ru</key> - <value>Группа командная панель</value> + <value>Общая группа</value> - - ru - Группа командная панель - - ГруппаКоманднаяПанельРасширеннаяПодсказка - 37 + ОбщаяГруппаРасширеннаяПодсказка + 49 Label true true @@ -615,9 +674,14 @@ Left - CommandBar - - Right + UsualGroup + + Vertical + Auto + true + true + Auto + Auto @@ -625,10 +689,6 @@ -1 Left - - BeforeClose - ПередЗакрытием - OnCreateAtServer ПриСозданииНаСервере @@ -940,6 +1000,40 @@ true + + РедактированиеТолькоВДиалоге + + <key>ru</key> + <value>Редактирование только в диалоге</value> + + 10 + + Boolean + + + true + + + true + + + + РежимВыбора + + <key>ru</key> + <value>Режим выбора</value> + + 11 + + Boolean + + + true + + + true + + ОК @@ -984,6 +1078,28 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> + <formCommands> + <name>Выбрать</name> + <title> + <key>ru</key> + <value>Выбрать</value> + + 3 + + ru + Выбрать + + + true + + + + Выбрать + + + DontUse + Auto + СписокКонтактнойИнформации diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ИсторияКонтактнойИнформации/Module.bsl b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ИсторияКонтактнойИнформации/Module.bsl index 4aaa4ecfe..e02347738 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ИсторияКонтактнойИнформации/Module.bsl +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/ИсторияКонтактнойИнформации/Module.bsl @@ -4,6 +4,8 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + Если Параметры.Свойство("АвтоТест") Тогда Возврат; КонецЕсли; @@ -12,8 +14,6 @@ Элементы.История.ТолькоПросмотр = Параметры.ТолькоПросмотр; КонецЕсли; - УстановитьУсловноеОформление(); - ВидКонтактнойИнформации = Параметры.ВидКонтактнойИнформации; ТипКонтактнойИнформации = Параметры.ВидКонтактнойИнформации.Тип; ПроверятьКорректность = ВидКонтактнойИнформации.ПроверятьКорректность; @@ -31,11 +31,11 @@ Иначе Отказ = Истина; КонецЕсли; - + РедактированиеТолькоВДиалоге = ВидКонтактнойИнформации.РедактированиеТолькоВДиалоге; Если ВидКонтактнойИнформации.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес Тогда - ИмяФормыРедактирования = "ВводаАдреса"; + ИмяФормыРедактирования = "ВводАдреса"; ИначеЕсли ВидКонтактнойИнформации.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон Тогда - ИмяФормыРедактирования = "ВводаТелефона"; + ИмяФормыРедактирования = "ВводТелефона"; Иначе ИмяФормыРедактирования = ""; Элементы.ИсторияПредставление.КнопкаВыбора = Ложь; @@ -43,69 +43,37 @@ История.Сортировать("ДействуетС Убыв"); -КонецПроцедуры - -&НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) - Если Не ЗакрытиеФормыБезСохранения Тогда - СтандартнаяОбработка = Ложь; - Если КонтактнаяИнформациюПодготовлена() Тогда - Закрыть(История); - Иначе - Отказ = Истина; + Если Параметры.Свойство("ИзФормыВводаАдреса") И Параметры.ИзФормыВводаАдреса Тогда + Элементы.ИсторияВыбрать.КнопкаПоУмолчанию = Истина; + РежимВыбора = Параметры.ИзФормыВводаАдреса; + Элементы.ГруппаКоманднаяПанель.Видимость = Ложь; + Элементы.ИсторияВыбрать.Видимость = Истина; + Элементы.ИсторияИзменить.Видимость = Ложь; + Элементы.ИсторияПредставление.ТолькоПросмотр = Истина; + Если Параметры.Свойство("ДействуетС") Тогда + ДатаПриОткрытие = Параметры.ДействуетС; + Отбор = Новый Структура("ДействуетС", ДатаПриОткрытие); + НайденныеСтроки = История.НайтиСтроки(Отбор); + Если НайденныеСтроки.Количество() > 0 Тогда + Элементы.История.ТекущаяСтрока = НайденныеСтроки[0].ПолучитьИдентификатор(); + КонецЕсли; КонецЕсли; КонецЕсли; + КонецПроцедуры #КонецОбласти -#Область ОбработчикиСобытийЭлементовШапкиФормы +#Область ОбработчикиСобытийЭлементовТаблицыФормыИстория &НаКлиенте Процедура ИсторияПредставлениеПриИзменении(Элемент) - ЭтотОбъект.ТекущийЭлемент.ТекущиеДанные.ЗначенияПолей = КонтактнаяИнформацияXMLПоПредставлению(Элемент.ТекстРедактирования, ВидКонтактнойИнформации); + ЭтотОбъект.ТекущийЭлемент.ТекущиеДанные.ЗначенияПолей = КонтактнаяИнформацияXMLПоПредставлению(ЭтотОбъект.ТекущийЭлемент.ТекущиеДанные.Представление, ВидКонтактнойИнформации); КонецПроцедуры -&НаКлиенте -Процедура ОткрытьФормуРедактированияАдреса(Знач ВыбраннаяСтрока) - - ДанныеСтроки = История.НайтиПоИдентификатору(ВыбраннаяСтрока); - ПараметрыОткрытия = Новый Структура; - ПараметрыОткрытия.Вставить("ВидКонтактнойИнформации", ВидКонтактнойИнформации); - ПараметрыОткрытия.Вставить("ЗначенияПолей", ДанныеСтроки.ЗначенияПолей); - ПараметрыОткрытия.Вставить("Представление", ДанныеСтроки.Представление); - ПараметрыОткрытия.Вставить("ДействуетС", ДанныеСтроки.ДействуетС); - ПараметрыОткрытия.Вставить("ДействуетДо", ОпределитьДатуДействия(ДанныеСтроки.ДействуетС)); - - ДополнительныеПараметры = Новый Структура("ДействуетС, Новый", ДанныеСтроки.ДействуетС, НЕ ЗначениеЗаполнено(ДанныеСтроки.ЗначенияПолей)); - Оповещение = Новый ОписаниеОповещения("ПослеРедактированияАдреса", ЭтотОбъект, ДополнительныеПараметры); - - УправлениеКонтактнойИнформациейКлиент.ОткрытьФормуКонтактнойИнформации(ПараметрыОткрытия,, Оповещение); - -КонецПроцедуры - -&НаКлиенте -Функция ОпределитьДатуДействия(ДействуетС) - - ДействуетДо = Неопределено; - Минимум = -1; - Для каждого СтрокаИстория Из История Цикл - Дельта = СтрокаИстория.ДействуетС - ДействуетС; - Если Минимум = -1 Тогда - Минимум = Дельта + 1; - КонецЕсли; - Если Дельта > 0 И Дельта < Минимум Тогда - ДействуетДо = СтрокаИстория.ДействуетС; - Минимум = Дельта; - КонецЕсли; - КонецЦикла; - - Возврат ДействуетДо; -КонецФункции - &НаКлиенте Процедура ИсторияПередУдалением(Элемент, Отказ) - // Если есть хотя бы одна запись старше удаляемой, то удалять можно + // Если есть хотя бы одна запись старше удаляемой, то удалять можно. ДействуетС = Элемент.ТекущиеДанные.ДействуетС; Если ЭтоПерваяДата(ДействуетС) Тогда Отказ = Истина; @@ -113,29 +81,25 @@ Если НЕ Отказ Тогда ДополнительныеПараметры = Новый Структура("ИдентификаторСтроки", Элемент.ТекущаяСтрока); Оповещение = Новый ОписаниеОповещения("ПослеОтветаНаВопросПроУдаление", ЭтотОбъект, ДополнительныеПараметры); - ПоказатьВопрос(Оповещение, НСтр("ru = 'Вы хотите удалить адрес действующий с'") + " " + Формат(ДействуетС, "ДЛФ=DD")+ "?", РежимДиалогаВопрос.ДаНет); + ПоказатьВопрос(Оповещение, НСтр("ru = 'Удалить адрес действующий с'") + " " + Формат(ДействуетС, "ДЛФ=DD")+ "?", РежимДиалогаВопрос.ДаНет); КонецЕсли; Отказ = Истина; КонецПроцедуры -&НаКлиенте -Процедура ПослеОтветаНаВопросПроУдаление(Результат, ДополнительныеПараметры) Экспорт - Если Результат = КодВозвратаДиалога.Да Тогда - История.Удалить(История.НайтиПоИдентификатору(ДополнительныеПараметры.ИдентификаторСтроки)); - КонецЕсли; -КонецПроцедуры - &НаКлиенте Процедура ИсторияПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр) Отказ = Истина; - Строка = История.Вставить(0); - Строка.ДействуетС = ОбщегоНазначенияКлиент.ДатаСеанса(); - Строка.ЗначенияПолей = ""; - Строка.Вид = ВидКонтактнойИнформации; - Строка.Тип = ТипКонтактнойИнформации; - Элементы.История.ТекущаяСтрока = 0; - Элементы.История.ТекущийЭлемент = Элементы.История.ПодчиненныеЭлементы.ИсторияПредставление; + + Если Копирование Тогда + Возврат; + КонецЕсли; + + Если РежимВыбора Тогда + СформироватьДанные(Истина); + Иначе + ОткрытьФормуРедактированияАдреса(Неопределено); + КонецЕсли; КонецПроцедуры @@ -146,11 +110,6 @@ Отказ = Истина; КонецЕсли; ПредыдущаяДата = Элемент.ТекущиеДанные.ДействуетС; - - ИначеЕсли Элемент.ТекущийЭлемент.Имя = "ИсторияПредставление" Тогда - Если ИмяФормыРедактирования = "ВводАдреса" Тогда - ОткрытьФормуРедактированияАдреса(Элементы.История.ТекущаяСтрока); - КонецЕсли; КонецЕсли; КонецПроцедуры @@ -158,11 +117,21 @@ Процедура ИсторияПриИзменении(Элемент) Если Элемент.ТекущийЭлемент.Имя = "ИсторияДействуетС" Тогда - ЭтотОбъект.ТекущийЭлемент.ТекущиеДанные.ДействуетС = ДопустимаяДатаИстории(ПредыдущаяДата, ЭтотОбъект.ТекущийЭлемент.ТекущиеДанные.ДействуетС); + Индекс = История.Индекс(ЭтотОбъект.ТекущийЭлемент.ТекущиеДанные); + ЭтотОбъект.ТекущийЭлемент.ТекущиеДанные.ДействуетС = ДопустимаяДатаИстории(ПредыдущаяДата, ЭтотОбъект.ТекущийЭлемент.ТекущиеДанные.ДействуетС, Индекс); История.Сортировать("ДействуетС Убыв"); КонецЕсли; КонецПроцедуры +&НаКлиенте +Процедура ИсторияАдресНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + Если РежимВыбора Тогда + СформироватьДанные(); + ИначеЕсли ИмяФормыРедактирования = "ВводАдреса" Тогда + ОткрытьФормуРедактированияАдреса(Элементы.История.ТекущаяСтрока); + КонецЕсли; +КонецПроцедуры + &НаКлиенте Процедура ИсторияПриАктивизацииСтроки(Элемент) @@ -173,14 +142,31 @@ КонецПроцедуры +&НаКлиенте +Процедура ИсторияВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) + + Если РежимВыбора Тогда + СформироватьДанные(); + ИначеЕсли Элемент.ТекущийЭлемент.Имя = "ИсторияПредставление" + И РедактированиеТолькоВДиалоге + И ИмяФормыРедактирования = "ВводАдреса" Тогда + ОткрытьФормуРедактированияАдреса(Элементы.История.ТекущаяСтрока); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ИсторияДействуетСПриИзменении(Элемент) + Модифицированность = Истина; +КонецПроцедуры + #КонецОбласти #Область ОбработчикиКомандФормы &НаКлиенте Процедура ОК(Команда) - ЗакрытиеФормыБезСохранения = Ложь; - Закрыть(История); + СформироватьДанные(); КонецПроцедуры &НаКлиенте @@ -189,10 +175,102 @@ Закрыть(); КонецПроцедуры +&НаКлиенте +Процедура Выбрать(Команда) + СформироватьДанные(); +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции +&НаКлиенте +Процедура СформироватьДанные(ВводНовогоАдреса = Ложь) + + ЗакрытиеФормыБезСохранения = Истина; + Результат = Новый Структура(); + + ВариантыДат = Новый Соответствие; + ОтсутствуетНачальнаяДата = Истина; + ДействующийАдрес = 0; + МинимальнаяДельта = Неопределено; + ТекущаяДатаПроверки = ОбщегоНазначенияКлиент.ДатаСеанса(); + Для Индекс = 0 По История.Количество() - 1 Цикл + Если НЕ ЗначениеЗаполнено(История[Индекс].ДействуетС) Тогда + ОтсутствуетНачальнаяДата = Ложь; + КонецЕсли; + Если ВариантыДат[История[Индекс].ДействуетС] = Неопределено Тогда + ВариантыДат.Вставить(История[Индекс].ДействуетС, Истина); + Иначе + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru='Не допускается ввод адресов с одинаковыми датами.'"),, "История[" + Строка(Индекс) + "].ДействуетС"); + Возврат; + КонецЕсли; + Дельта = История[Индекс].ДействуетС - ТекущаяДатаПроверки; + Если Дельта < 0 И (МинимальнаяДельта = Неопределено ИЛИ Дельта > МинимальнаяДельта) Тогда + МинимальнаяДельта = Дельта; + ДействующийАдрес = Индекс; + КонецЕсли; + История[Индекс].ЭтоИсторическаяКонтактнаяИнформация = Истина; + История[Индекс].ХранитьИсториюИзменений = Истина; + КонецЦикла; + + История[ДействующийАдрес].ЭтоИсторическаяКонтактнаяИнформация = Ложь; + + Если НЕ ВводНовогоАдреса И ОтсутствуетНачальнаяДата Тогда + ПоказатьПредупреждение(, НСтр("ru='Отсутствует адрес, действующий с даты начала ведения учета.'")); + Возврат; + КонецЕсли; + + Результат.Вставить("История", История); + Результат.Вставить("РедактированиеТолькоВДиалоге", РедактированиеТолькоВДиалоге); + Результат.Вставить("Модифицированность", Модифицированность); + Если РежимВыбора Тогда + Результат.Вставить("ВводНовогоАдреса", ВводНовогоАдреса); + Если ВводНовогоАдреса Тогда + Результат.Вставить("ТекущийАдрес", ОбщегоНазначенияКлиент.ДатаСеанса()); + Иначе + Результат.Вставить("ТекущийАдрес", Элементы.История.ТекущиеДанные.ДействуетС); + КонецЕсли; + КонецЕсли; + + Закрыть(Результат); + +КонецПроцедуры + +&НаКлиенте +Процедура ОткрытьФормуРедактированияАдреса(Знач ВыбраннаяСтрока) + + ПараметрыОткрытия = Новый Структура; + ПараметрыОткрытия.Вставить("ВидКонтактнойИнформации", ВидКонтактнойИнформации); + ПараметрыОткрытия.Вставить("ИзФормыИстории", Истина); + Если ВыбраннаяСтрока = Неопределено Тогда + Если История.Количество() = 1 И ПустаяСтрока(История[0].Представление) Тогда + ПараметрыОткрытия.Вставить("ДействуетС", Дата(1, 1, 1)); + Иначе + ПараметрыОткрытия.Вставить("ДействуетС", ОбщегоНазначенияКлиент.ДатаСеанса()); + КонецЕсли; + ПараметрыОткрытия.Вставить("ВводНовогоАдреса", Истина); + ДополнительныеПараметры = Новый Структура("Новый", Истина); + Иначе + ДанныеСтроки = История.НайтиПоИдентификатору(ВыбраннаяСтрока); + ПараметрыОткрытия.Вставить("ЗначенияПолей", ДанныеСтроки.ЗначенияПолей); + ПараметрыОткрытия.Вставить("Представление", ДанныеСтроки.Представление); + ПараметрыОткрытия.Вставить("ДействуетС", ДанныеСтроки.ДействуетС); + ДополнительныеПараметры = Новый Структура("ДействуетС, Новый", ДанныеСтроки.ДействуетС, НЕ ЗначениеЗаполнено(ДанныеСтроки.ЗначенияПолей)); + КонецЕсли; + + Оповещение = Новый ОписаниеОповещения("ПослеРедактированияАдреса", ЭтотОбъект, ДополнительныеПараметры); + УправлениеКонтактнойИнформациейКлиент.ОткрытьФормуКонтактнойИнформации(ПараметрыОткрытия,, Оповещение); + +КонецПроцедуры + +&НаКлиенте +Процедура ПослеОтветаНаВопросПроУдаление(Результат, ДополнительныеПараметры) Экспорт + Если Результат = КодВозвратаДиалога.Да Тогда + История.Удалить(История.НайтиПоИдентификатору(ДополнительныеПараметры.ИдентификаторСтроки)); + КонецЕсли; +КонецПроцедуры + &НаСервере Процедура УстановитьУсловноеОформление() @@ -209,78 +287,64 @@ Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); Элемент.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина); - Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = 'Первоначальное значение'")); - + Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = 'Начальное значение'")); + КонецПроцедуры &НаКлиенте -Функция ДопустимаяДатаИстории(СтараяДата, НоваяДата) +Функция ДопустимаяДатаИстории(СтараяДата, НоваяДата, Индекс) Отбор = Новый Структура("ДействуетС", НоваяДата); НайденныеСтроки = История.НайтиСтроки(Отбор); Если НайденныеСтроки.Количество() > 1 Тогда - Возврат СтараяДата; + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru='Не допускается ввод адресов с одинаковыми датами.'"),, "История[" + Строка(Индекс) + "].ДействуетС"); + Если ЗначениеЗаполнено(СтараяДата) Тогда + Возврат СтараяДата; + Иначе + Возврат ОбщегоНазначенияКлиент.ДатаСеанса(); + КонецЕсли; КонецЕсли; Возврат НоваяДата; КонецФункции -&НаКлиенте -Функция КонтактнаяИнформациюПодготовлена() - - История.Сортировать("ДействуетС Убыв"); - ЭтоИсторическаяКонтактнаяИнформация = Ложь; - - Если ПроверятьКорректность Тогда - Если КонтактнаяИнформацияНеКорректная() Тогда - Возврат Ложь; - КонецЕсли; - КонецЕсли; - - Для каждого СтрокаКонтактнойИнформации Из История Цикл - СтрокаКонтактнойИнформации.ХранитьИсториюИзменений = Истина; - СтрокаКонтактнойИнформации.ЭтоИсторическаяКонтактнаяИнформация = ЭтоИсторическаяКонтактнаяИнформация; - ЭтоИсторическаяКонтактнаяИнформация = Истина; - КонецЦикла; - - Возврат Истина; - -КонецФункции - -&НаСервере -Функция КонтактнаяИнформацияНеКорректная() - - ТекущийУровеньОшибок = 0; - Для Индекс = 0 По История.Количество() - 1 Цикл - СтрокаИстории = История.Получить(Индекс); - Если ПустаяСтрока(СтрокаИстории.ЗначенияПолей) ИЛИ ПустаяСтрока(СтрокаИстории.Представление)Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Поле ""%1"" не может быть пустым.'"), ПредставлениеКонтактнойИнформации),, "История[" + Строка(Индекс) + "].Представление"); - ТекущийУровеньОшибок = ТекущийУровеньОшибок + 1; - Иначе - ТекущийУровеньОшибок = ТекущийУровеньОшибок + УправлениеКонтактнойИнформацией.ПроверитьЗаполнениеКонтактнойИнформации( - СтрокаИстории.Представление, СтрокаИстории.ЗначенияПолей, ВидКонтактнойИнформации, - ВидКонтактнойИнформации.Тип, "История[" + Строка(Индекс) + "].Представление"); - КонецЕсли; - КонецЦикла; - - Возврат ?(ТекущийУровеньОшибок > 0, Истина, Ложь); - -КонецФункции - &НаКлиенте Процедура ПослеРедактированияАдреса(РезультатЗакрытия, ДополнительныеПараметры) Экспорт + Если ТипЗнч(РезультатЗакрытия) <> Тип("Структура") Тогда Возврат; КонецЕсли; - ДействуетС = ДополнительныеПараметры.ДействуетС; - - Отбор = Новый Структура("ДействуетС", ДействуетС); - НайденныеСтроки = История.НайтиСтроки(Отбор); - Если НайденныеСтроки.Количество() > 0 Тогда - НайденныеСтроки[0].Представление = РезультатЗакрытия.Представление; - НайденныеСтроки[0].ЗначенияПолей = РезультатЗакрытия.КонтактнаяИнформация; - НайденныеСтроки[0].Комментарий = РезультатЗакрытия.Комментарий; + Если ДополнительныеПараметры.Новый Тогда + + ДействуетС = РезультатЗакрытия.ДействуетС; + Отбор = Новый Структура("ДействуетС", ДействуетС); + НайденныеСтроки = История.НайтиСтроки(Отбор); + Если НайденныеСтроки.Количество() > 0 Тогда + Строка = НайденныеСтроки[0]; + Иначе + Строка = История.Вставить(0); + КонецЕсли; + + Строка.ДействуетС = РезультатЗакрытия.ДействуетС; + Строка.ЗначенияПолей = РезультатЗакрытия.КонтактнаяИнформация; + Строка.Представление = РезультатЗакрытия.Представление; + Строка.Комментарий = РезультатЗакрытия.Комментарий; + Строка.Вид = РезультатЗакрытия.Вид; + Строка.Тип = РезультатЗакрытия.Тип; + Строка.ХранитьИсториюИзменений = Истина; + Элементы.История.ТекущаяСтрока = Строка.ПолучитьИдентификатор();; + Элементы.История.ТекущийЭлемент = Элементы.История.ПодчиненныеЭлементы.ИсторияПредставление; + История.Сортировать("ДействуетС Убыв"); + Иначе + ДействуетС = ДополнительныеПараметры.ДействуетС; + Отбор = Новый Структура("ДействуетС", ДействуетС); + НайденныеСтроки = История.НайтиСтроки(Отбор); + Если НайденныеСтроки.Количество() > 0 Тогда + НайденныеСтроки[0].Представление = РезультатЗакрытия.Представление; + НайденныеСтроки[0].ЗначенияПолей = РезультатЗакрытия.КонтактнаяИнформация; + НайденныеСтроки[0].Комментарий = РезультатЗакрытия.Комментарий; + КонецЕсли; КонецЕсли; КонецПроцедуры @@ -297,13 +361,6 @@ Возврат Истина; КонецФункции -&НаКлиенте -Процедура ИсторияАдресНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) - Если ИмяФормыРедактирования = "ВводаАдреса" Тогда - ОткрытьФормуРедактированияАдреса(Элементы.История.ТекущаяСтрока); - КонецЕсли; -КонецПроцедуры - &НаСервере Функция КонтактнаяИнформацияXMLПоПредставлению(Текст, ВидКонтактнойИнформации) Возврат УправлениеКонтактнойИнформацией.КонтактнаяИнформацияXMLПоПредставлению(Текст, ВидКонтактнойИнформации); diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/НаселенныйПунктАдреса/Form.form b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/НаселенныйПунктАдреса/Form.form index 4f1362d9a..d2439d2e7 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/НаселенныйПунктАдреса/Form.form +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/НаселенныйПунктАдреса/Form.form @@ -12,10 +12,6 @@ true - - <key>ru</key> - <value>Группа частей адреса</value> - ГруппаЧастейАдресаРасширеннаяПодсказка 8 @@ -325,6 +321,21 @@ Boolean + + ФорматАдреса + + String + + 50 + + + + + СервисКлассификатораНедоступен + + Boolean + + diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/НаселенныйПунктАдреса/Module.bsl b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/НаселенныйПунктАдреса/Module.bsl index 044d06706..92a50f781 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/НаселенныйПунктАдреса/Module.bsl +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/Forms/НаселенныйПунктАдреса/Module.bsl @@ -43,7 +43,7 @@ КонецЕсли; Если СервисКлассификатораНедоступен Тогда - УправлениеКонтактнойИнформациейСлужебный.ЗаполнитьИдентификаторыНаселенногоПункта(ЧастиАдреса, Параметры.ИдентификаторНаселенногоПункта); + УправлениеКонтактнойИнформациейСлужебный.ЗаполнитьИдентификаторыНаселенногоПункта(ЧастиАдреса); КонецЕсли; ПостроитьФормуПоЧастямАдреса(); @@ -363,10 +363,14 @@ Результат = Новый Структура; Идентификатор = Неопределено; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда - МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); - Идентификатор = УправлениеКонтактнойИнформациейКлиентСервер.ИдентификаторЭлементаПоЧастямАдреса(ЧастиАдреса, Ложь); - КонецЕсли; + Для каждого ЧастьАдреса Из ЧастиАдреса Цикл + Если ЗначениеЗаполнено(ЧастьАдреса.Значение.Представление) И ПустаяСтрока(ЧастьАдреса.Значение.Идентификатор) Тогда + УправлениеКонтактнойИнформациейСлужебный.ЗаполнитьИдентификаторыНаселенногоПункта(ЧастиАдреса); + Прервать; + КонецЕсли; + КонецЦикла; + + Идентификатор = УправлениеКонтактнойИнформациейКлиентСервер.ИдентификаторЭлементаПоЧастямАдреса(ЧастиАдреса, Ложь); Результат.Вставить("Идентификатор", Идентификатор); Результат.Вставить("Представление", УправлениеКонтактнойИнформациейКлиентСервер.ПредставлениеНаселенногоПунктаПоЧастямАдреса(ЧастиАдреса)); @@ -397,7 +401,7 @@ ЕстьЧастьАдресаБезИдентификатора = ЕстьЛиИдентификаторРодителяЧастиАдресаЭлемента(ЧастиАдреса, ЧастьАдреса, Идентификатор); Если ЕстьЧастьАдресаБезИдентификатора Тогда - УправлениеКонтактнойИнформациейСлужебный.ЗаполнитьИдентификаторыНаселенногоПункта(ЧастиАдреса, Идентификатор); + УправлениеКонтактнойИнформациейСлужебный.ЗаполнитьИдентификаторыНаселенногоПункта(ЧастиАдреса); ЕстьЧастьАдресаБезИдентификатора = ЕстьЛиИдентификаторРодителяЧастиАдресаЭлемента(ЧастиАдреса, ЧастьАдреса, Идентификатор); Если ЕстьЧастьАдресаБезИдентификатора Тогда Возврат Неопределено; diff --git a/SSL/src/DataProcessors/ВводКонтактнойИнформации/ManagerModule.bsl b/SSL/src/DataProcessors/ВводКонтактнойИнформации/ManagerModule.bsl index c30244d5e..95d50b2bc 100644 --- a/SSL/src/DataProcessors/ВводКонтактнойИнформации/ManagerModule.bsl +++ b/SSL/src/DataProcessors/ВводКонтактнойИнформации/ManagerModule.bsl @@ -1,11 +1,12 @@ + #Область ОбработчикиПодписокНаСобытия Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка) -#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда - - Если Параметры <> Неопределено И Параметры.Свойство("ОткрытаПоСценарию") Тогда + #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда + + Если Параметры <> Неопределено И Параметры.Свойство("ОткрытаПоСценарию") Тогда СтандартнаяОбработка = Ложь; ВидИнформации = Параметры.ВидКонтактнойИнформации; ВыбраннаяФорма = ИмяФормыВводаКонтактнойИнформации(ВидИнформации); @@ -16,14 +17,14 @@ КонецЕсли; -#КонецЕсли + #КонецЕсли КонецПроцедуры #КонецОбласти #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда - + #Область СлужебныеПроцедурыИФункции // Возвращает имя формы для редактирования типа контактной информации. @@ -52,6 +53,7 @@ КонецЕсли; Возврат Неопределено; + КонецФункции Функция ТипВидаКонтактнойИнформации(Знач ВидИнформации) diff --git a/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Commands/ЗагрузкаДанныхEnterpriseData/CommandModule.bsl b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Commands/ЗагрузкаДанныхEnterpriseData/CommandModule.bsl new file mode 100644 index 000000000..c5476a765 --- /dev/null +++ b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Commands/ЗагрузкаДанныхEnterpriseData/CommandModule.bsl @@ -0,0 +1,13 @@ +#Область ОбработчикиСобытий + +&НаКлиенте +Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) + ПараметрыФормы = Новый Структура("ТолькоЗагрузка"); + ОткрытьФорму("Обработка.ВыгрузкаЗагрузкаEnterpriseData.Форма", + ПараметрыФормы, , + ПараметрыВыполненияКоманды.Уникальность, + ПараметрыВыполненияКоманды.Окно, + ПараметрыВыполненияКоманды.НавигационнаяСсылка); +КонецПроцедуры + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/CommonForms/АвторизацияНаСайтеПоддержкиПользователей/Form.form b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Forms/РедактированиеПериодаИОтбора/Form.form similarity index 51% rename from SSL/src/CommonForms/АвторизацияНаСайтеПоддержкиПользователей/Form.form rename to SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Forms/РедактированиеПериодаИОтбора/Form.form index a081be5dc..add5c46a1 100644 --- a/SSL/src/CommonForms/АвторизацияНаСайтеПоддержкиПользователей/Form.form +++ b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Forms/РедактированиеПериодаИОтбора/Form.form @@ -2,24 +2,240 @@ <key>ru</key> - <value>Авторизация на сайте поддержки</value> + <value>Общие условия отбора отправляемых данных</value> - - Пояснение - 27 - - <key>ru</key> - <value>Укажите логин и пароль, полученный при регистрации на сайте поддержки пользователей. -</value> - + + ГруппаПериод + 14 + + ПериодДанных + 9 + + <key>ru</key> + <value>За период</value> + + true + true + + true + + + ПериодДанных + + + ru + Общий отбор по периоду, применяется для всех документов + + + ПериодДанныхExtendedTooltip + 21 + Label + true + true + + Left + + + + ПериодДанныхКонтекстноеМеню + 10 + true + + InputField + Enter + true + Left + true + + + Clearing + ПериодДанныхОчистка + + true + true + false + true + true + true + true + Normal + + true true true + + <key>ru</key> + <value>Период</value> + - ПояснениеРасширеннаяПодсказка - 29 + ГруппаПериодExtendedTooltip + 20 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + КомпоновщикНастроекОтбор + 6 + true + true + + true + + + КомпоновщикНастроек.Settings.Filter + + None + + КомпоновщикНастроекОтборКоманднаяПанель + 8 + + КомпоновщикНастроекОтборДобавитьЭлементОтбора + 16 + + <key>ru</key> + <value>Добавить условие</value> + + true + true + + true + + + КомпоновщикНастроекОтборДобавитьЭлементОтбораExtendedTooltip + 22 + Label + true + true + + Left + + + Form.Item.КомпоновщикНастроекОтбор.StandardCommand.AddFilterItem + Normal + Auto + true + true + UserCmds + Auto + + + КомпоновщикНастроекОтборГруппаВсеДействия + 15 + true + true + + true + + + <key>ru</key> + <value>Компоновщик настроек отбор группа все действия</value> + + + КомпоновщикНастроекОтборГруппаВсеДействияExtendedTooltip + 23 + Label + true + true + + Left + + + + Item.КомпоновщикНастроекОтбор + + + Left + + + КомпоновщикНастроекОтборSearchString + 25 + + КомпоновщикНастроекОтборSearchStringExtendedTooltip + 27 + Label + true + true + + Left + + + + КомпоновщикНастроекОтборSearchStringContextMenu + 26 + true + + КомпоновщикНастроекОтбор + + true + + + + КомпоновщикНастроекОтборViewStatus + 28 + + КомпоновщикНастроекОтборViewStatusExtendedTooltip + 30 + Label + true + true + + Left + + + + КомпоновщикНастроекОтборViewStatusContextMenu + 29 + true + + ViewStatusAddition + КомпоновщикНастроекОтбор + + true + + + + КомпоновщикНастроекОтборSearchControl + 31 + + КомпоновщикНастроекОтборSearchControlExtendedTooltip + 33 + Label + true + true + + Left + + + + КомпоновщикНастроекОтборSearchControlContextMenu + 32 + true + + SearchControlAddition + КомпоновщикНастроекОтбор + + true + + + + КомпоновщикНастроекОтборExtendedTooltip + 24 Label true true @@ -28,285 +244,39 @@ - ПояснениеКонтекстноеМеню - 28 + КомпоновщикНастроекОтборКонтекстноеМеню + 7 true - Label + Tree + true + true + true true true - - Left - - - - ВведитеДанные - 16 - - Логин - 10 - true - true - - true - - - Логин - - - ru - Код пользователя для авторизации на сайте фирмы 1С - - - ЛогинРасширеннаяПодсказка - 23 - Label - true - true - - Left - - - - ЛогинКонтекстноеМеню - 11 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - - Пароль - 8 - true - true - - true - - - Пароль - - - ru - Пароль для регистрации на сайте фирмы 1С - - - OnChange - ПарольПриИзменении - - - ПарольExtendedTooltip - 24 - Label - true - true - - Left - - - - ПарольКонтекстноеМеню - 9 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - - ГруппаЗапомнитьПароль - 30 - - ЗапомнитьПароль - 4 - true - true - - true - - - ЗапомнитьПароль - - Right - - ЗапомнитьПарольРасширеннаяПодсказка - 25 - Label - true - true - - Left - - - - ЗапомнитьПарольКонтекстноеМеню - 5 - true - - CheckBoxField - Enter - true - Left - true - - - true - true - - true - - - <key>ru</key> - <value>Группа запомнить пароль</value> - - - ru - Группа запомнить пароль - - - ГруппаЗапомнитьПарольРасширеннаяПодсказка - 31 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - ru - Введите данные - - - ВведитеДанныеExtendedTooltip - 22 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаПерейтиКРегистрацииНаСайте - 32 - - ПерейтиКРегистрацииНаСайте - 17 - - <key>ru</key> - <value>Перейти к регистрации на сайте поддержки пользователей</value> - - true - true - - true - - - ПерейтиКРегистрацииНаСайтеExtendedTooltip - 26 - Label - true - true - - Left - - - - ПерейтиКРегистрацииНаСайтеКонтекстноеМеню - 18 - true - - Label - true - true - - - Click - ПерейтиКРегистрацииНаСайтеНажатие - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа перейти к регистрации на сайте</value> - - - ГруппаПерейтиКРегистрацииНаСайтеРасширеннаяПодсказка - 33 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - + true + MultiRow +
        true
        + 1 + 1 + AutoUse + AutoUse + true + true + false + Auto + Auto + ExpandAllLevels + true + true + true + true + None + None + None + true + All + false
        Bottom true @@ -314,17 +284,16 @@ ФормаКоманднаяПанель -1 - Продолжить - 1 + ФормаКомандаОК + 11 true true true - false - ПродолжитьExtendedTooltip - 19 + ФормаКомандаОКExtendedTooltip + 17 Label true true @@ -332,7 +301,7 @@ Left - Form.Command.СохранитьДанныеАутентификацииИПродолжить + Form.Command.КомандаОК Auto true true @@ -341,44 +310,16 @@ Auto - Отмена - 3 + ФормаСправка + 4 true true true - false - ОтменаExtendedTooltip - 20 - Label - true - true - - Left - - - Form.StandardCommand.Cancel - Normal - Auto - true - true - UserCmds - Auto - - - Справка - 2 - true - true - - true - - false - - СправкаExtendedTooltip - 21 + ФормаСправкаExtendedTooltip + 18 Label true true @@ -394,13 +335,42 @@ UserCmds Auto + + ФормаОтмена + 5 + true + true + + true + + + ФормаОтменаExtendedTooltip + 19 + Label + true + true + + Left + + + Form.StandardCommand.Cancel + Normal + Auto + true + true + UserCmds + Auto + Right + + OnOpen + ПриОткрытии + OnCreateAtServer ПриСозданииНаСервере - 40 LockOwner true true @@ -408,14 +378,64 @@ true true true - UseIfNecessary auto true - Пароль + ВыгружатьЗаПериод <key>ru</key> - <value>Пароль</value> + <value>Выгружать за период</value> + + 2 + + Boolean + + + true + + + true + + + + КомпоновщикНастроек + + <key>ru</key> + <value>Компоновщик настроек</value> + + 3 + + DataCompositionSettingsComposer + + + true + + + true + + + + ПериодДанных + + <key>ru</key> + <value>Период данных</value> + + 4 + + StandardPeriod + + + true + + + true + + + + АдресКомпоновщикаНастроек + + <key>ru</key> + <value>Адрес компоновщика настроек</value> 1 @@ -430,49 +450,15 @@ - ЗапомнитьПароль + АдресСхемыКомпоновки <key>ru</key> - <value>Запомнить пароль</value> - - 3 - - Boolean - - - true - - - true - - - - Логин - - <key>ru</key> - <value>Логин</value> - - 4 - - String - - - - true - - - true - - - - ПарольИзменен - - <key>ru</key> - <value>Пароль изменен</value> + <value>Адрес схемы компоновки</value> 5 - Boolean + String + true @@ -482,32 +468,65 @@ - СохранитьДанныеАутентификацииИПродолжить + КомандаОК <key>ru</key> - <value>Продолжить</value> + <value>ОК</value> 1 ru - Сохранить данные аутентификации и продолжить + Команда ОК true - СохранитьДанныеАутентификацииИПродолжить + КомандаОК DontUse Auto - ЗапомнитьПароль + КомпоновщикНастроек + + DataCompositionSettingsComposer + + true + + + ПериодДанных + + StandardPeriod + + true + + + ДействиеВыбора + + true + + + Заголовок + + String + + + true + + + ВыборПериода Boolean + true + + + АдресХранилищаФормы + + true diff --git a/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Forms/РедактированиеПериодаИОтбора/Help/ru.html b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Forms/РедактированиеПериодаИОтбора/Help/ru.html new file mode 100644 index 000000000..45a8e7b5c --- /dev/null +++ b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Forms/РедактированиеПериодаИОтбора/Help/ru.html @@ -0,0 +1,18 @@ + +

        Предназначена для отбора данных при интерактивной синхронизации данных.

        +

        Отбор данных для выгрузки

        +
        • Для документов используется период отбора. В поле За период нажмите  Выбрать, укажите период. Даты можно указать вручную или выбрать из календаря. С помощью ссылки Показать стандартные периоды можно быстро подобрать период. +
        • Нажмите Добавить условие. +
        • Выберите Поле для отбора. +
        • Выберите Вид сравнения. +
          • Виды сравнения Равно, Не равно, В группе, Не в группе предполагают выбор одного значения. С помощью видов сравнения Равно или В группе программа отберет только те записи, которые будут полностью соответствовать указанному значению. +
          • Виды сравнения В списке, В группе из списка, Не в списке, Не в группе из списка предполагают выбор нескольких значений. Виды сравнения В группе из списка или Не в группе из списка доступны, если в соответствующих списках для выбора значений имеются группы. +
          • С помощью видов сравнения В списке или В группе из списка будут отобраны элементы, которые содержат то или иное значение, перечисленное в списке. +
          • Виды сравнения Не равно, Не в группе, Не в списке, Не в группе из списка являются отрицанием соответствующих видов сравнения. В результате выполнения условий с такими видами сравнения будут отобраны все элементы, кроме тех, которые указаны. +
          • Для видов сравнения Заполнено и Не заполнено не требуется выбор значения. С помощью вида сравнения Заполнено, например, можно отобрать документы, в которых не проставлена цена на товар.
        • Укажите Значение. +
          • В зависимости от вида сравнения значение можно написать вручную или выбрать из списка. +
          • С помощью команды Еще - Использовать в качестве значения поле можно указать в качестве значения поле документа или элемента списка. Выберите поле из предложенного списка.

        Группировка условий

        +
        • При необходимости условий для отбора может быть несколько, в этом случае они группируются с помощью логических операций И, Или, Не с помощью кнопки Сгруппировать условия. Условия для группировки можно выделить, а затем нажать кнопку. В этом случае все выбранные условия сразу попадут в группу. +
        •  Для отмены группировки условий выделите их, выполните команду Еще - Разгруппировать. +
        • Можно создать группы для условий с помощью команды Еще - Добавить новую группу, а затем уже перетащить туда нужные условия с помощью мыши или создать в группе новые условия.

        См. также:

        + \ No newline at end of file diff --git a/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Forms/РедактированиеПериодаИОтбора/Module.bsl b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Forms/РедактированиеПериодаИОтбора/Module.bsl new file mode 100644 index 000000000..1a98d9be9 --- /dev/null +++ b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Forms/РедактированиеПериодаИОтбора/Module.bsl @@ -0,0 +1,92 @@ + +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + Если Параметры.Свойство("АвтоТест") Тогда + Возврат; + КонецЕсли; + + ЗакрыватьПриЗакрытииВладельца = Истина; + + Заголовок = Параметры.Заголовок; + + Если Параметры.Свойство("АдресКомпоновщикаНастроек", АдресКомпоновщикаНастроек) Тогда + // Хранилище приоритетнее + Данные = ПолучитьИзВременногоХранилища(АдресКомпоновщикаНастроек); + АдресСхемыКомпоновки = ПоместитьВоВременноеХранилище(Данные.СхемаКомпоновки, УникальныйИдентификатор);; + КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных; + КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(АдресСхемыКомпоновки)); + КомпоновщикНастроек.ЗагрузитьНастройки(Данные.Настройки); + Иначе + АдресСхемыКомпоновки = ""; + КомпоновщикНастроек = Параметры.КомпоновщикНастроек; + КонецЕсли; + + Параметры.Свойство("ПериодДанных", ПериодДанных); + + Если Параметры.ВыборПериода Тогда + ВыгружатьЗаПериод = Истина; + Иначе + ВыгружатьЗаПериод = Ложь; + // Отключаем выбор периода совсем. + Элементы.ПериодДанных.Видимость = Ложь; + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ПриОткрытии(Отказ) + УстановитьДоступностьПериодаОтбора(); +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы + +&НаКлиенте +Процедура ПериодДанныхОчистка(Элемент, СтандартнаяОбработка) + СтандартнаяОбработка = Ложь; +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиКомандФормы + +&НаКлиенте +Процедура КомандаОК(Команда) + ОповеститьОВыборе(РезультатВыбора()); +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаКлиенте +Процедура УстановитьДоступностьПериодаОтбора() + Элементы.ПериодДанных.Доступность = ВыгружатьЗаПериод; +КонецПроцедуры + +&НаСервере +Функция РезультатВыбора() + Результат = Новый Структура; + Результат.Вставить("ДействиеВыбора", Параметры.ДействиеВыбора); + Результат.Вставить("КомпоновщикНастроек", КомпоновщикНастроек); + Результат.Вставить("ПериодДанных", ?(ВыгружатьЗаПериод, ПериодДанных, Новый СтандартныйПериод)); + + Результат.Вставить("АдресКомпоновщикаНастроек"); + Если Не ПустаяСтрока(АдресКомпоновщикаНастроек) Тогда + Данные = Новый Структура; + Данные.Вставить("Настройки", КомпоновщикНастроек.Настройки); + + СхемаКомпоновки = ?(ПустаяСтрока(АдресСхемыКомпоновки), Неопределено, ПолучитьИзВременногоХранилища(АдресСхемыКомпоновки)); + Данные.Вставить("СхемаКомпоновки", СхемаКомпоновки); + + Результат.АдресКомпоновщикаНастроек = ПоместитьВоВременноеХранилище(Данные, Параметры.АдресХранилищаФормы); + КонецЕсли; + + Возврат Результат; +КонецФункции + +#КонецОбласти diff --git a/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Forms/Форма/Form.form b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Forms/Форма/Form.form new file mode 100644 index 000000000..947a84efe --- /dev/null +++ b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Forms/Форма/Form.form @@ -0,0 +1,2577 @@ + + + + <key>ru</key> + <value>Выгрузка и загрузка данных EnterpriseData</value> + + + ГруппаВерхняя + 97 + + ВидОперации + 227 + + <key>ru</key> + <value>Операция</value> + + true + true + + true + + + ВидОперации + + + OnChange + ВидОперацииПриИзменении + + + ВидОперацииРасширеннаяПодсказка + 229 + Label + true + true + + Left + + + + ВидОперацииКонтекстноеМеню + 228 + true + + RadioButtonField + Enter + true + Left + true + + Tumbler + + + Загрузка + + + + + Выгрузка + + + Vertical + + + true + true + + true + + + <key>ru</key> + <value>Группа верхняя</value> + + + ГруппаВерхняяРасширеннаяПодсказка + 98 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ВыгрузкаЗагрузка + 15 + + Загрузка + 19 + + НадписьЗагрузкаВстроеннойОбработкой + 244 + + <key>ru</key> + <value>Будет произведена загрузка данных, представленных в формате EnterpriseData. +Для загрузки необходимо указать предварительно подготовленный файл с данными.</value> + + true + true + + true + + + НадписьЗагрузкаВстроеннойОбработкойРасширеннаяПодсказка + 246 + Label + true + true + + Left + + + + НадписьЗагрузкаВстроеннойОбработкойКонтекстноеМеню + 245 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + + + + ИсточникЗагрузки + 180 + true + true + + true + + + ИсточникЗагрузки + + + OnChange + ИсточникЗагрузкиПриИзменении + + + ИсточникЗагрузкиРасширеннаяПодсказка + 182 + Label + true + true + + Left + + + + ИсточникЗагрузкиКонтекстноеМеню + 181 + true + + RadioButtonField + Enter + true + Left + true + + Tumbler + + + ru + Файл + + + 0 + + + + + ru + Текстовое поле + + + 1 + + + Vertical + + + + ПутьКФайлуЗагрузки + 186 + true + true + + true + + + ПутьКФайлуЗагрузки + + + ПутьКФайлуЗагрузкиРасширеннаяПодсказка + 188 + Label + true + true + + Left + + + + ПутьКФайлуЗагрузкиКонтекстноеМеню + 187 + true + + InputField + Enter + true + Left + true + + + StartChoice + ПутьКФайлуЗагрузкиНачалоВыбора + + true + true + true + true + false + true + true + true + Normal + + + + ПутьКМенеджеруОбменаЗагрузки + 21 + + <key>ru</key> + <value>Менеджер загрузки</value> + + true + true + + true + + + Объект.ПутьКМенеджеруОбменаЗагрузки + + + ru + Для использования внешнего модуля менеджера обмена через универсальный формат. + + Button + + ПутьКМенеджеруОбменаЗагрузкиРасширеннаяПодсказка + 23 + Label + true + true + + Left + + + + ПутьКМенеджеруОбменаЗагрузкиКонтекстноеМеню + 22 + true + + InputField + Enter + true + Left + true + + + StartChoice + ПутьКМенеджеруОбменаЗагрузкиНачалоВыбора + + true + true + true + true + true + true + true + Normal + + ru + Сейчас используется встроенный менеджер + + + + + СтрокаПоддерживаемыеВерсииФормата + 239 + + Style.LargeTextFont + + true + true + + true + + + СтрокаПоддерживаемыеВерсииФормата + + None + + СтрокаПоддерживаемыеВерсииФорматаРасширеннаяПодсказка + 241 + Label + true + true + + Left + + + + СтрокаПоддерживаемыеВерсииФорматаКонтекстноеМеню + 240 + true + + LabelField + Enter + true + Left + true + + true + true + + + + ГруппаДанныеДляЗагрузки + 151 + + ДанныеДляЗагрузкиXDTO + 148 + + <key>ru</key> + <value>Данные для загрузки</value> + + true + true + + true + + + ДанныеДляЗагрузкиXDTO + + None + + ДанныеДляЗагрузкиXDTOРасширеннаяПодсказка + 150 + Label + true + true + + Left + + + + ДанныеДляЗагрузкиXDTOКонтекстноеМеню + 149 + true + + TextDocumentField + Enter + true + Left + true + + 50 + true + 10 + true + true + true + + + + КомандыЗагрузки + 157 + + ОткрытьXML + 153 + true + true + + true + + + ОткрытьXMLРасширеннаяПодсказка + 154 + Label + true + true + + Left + + + UsualButton + Form.Command.ОткрытьXML + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Команды загрузки</value> + + + КомандыЗагрузкиРасширеннаяПодсказка + 158 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа данные для загрузки</value> + + + ГруппаДанныеДляЗагрузкиРасширеннаяПодсказка + 152 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Загрузка</value> + + + ЗагрузкаРасширеннаяПодсказка + 20 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + Выгрузка + 17 + + МестоВыгрузки + 183 + true + true + + true + + + МестоВыгрузки + + + OnChange + МестоВыгрузкиПриИзменении + + + МестоВыгрузкиРасширеннаяПодсказка + 185 + Label + true + true + + Left + + + + МестоВыгрузкиКонтекстноеМеню + 184 + true + + RadioButtonField + Enter + true + Left + true + + Tumbler + + + ru + Файл + + + 0 + + + + + ru + Текстовое поле + + + 1 + + + Vertical + + + + ВерсияФорматаГруппа + 242 + + ВерсияФормата + 42 + true + true + + true + + + Объект.ВерсияФормата + + + OnChange + ВерсияФорматаПриИзменении + + + ВерсияФорматаРасширеннаяПодсказка + 44 + Label + true + true + + Left + + + + ВерсияФорматаКонтекстноеМеню + 43 + true + + InputField + true + Enter + true + Left + true + + true + true + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Версия формата группа</value> + + + ВерсияФорматаГруппаРасширеннаяПодсказка + 243 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ПутьКФайлуВыгрузки + 189 + + <key>ru</key> + <value>Файл выгрузки</value> + + true + true + + true + + + ПутьКФайлуВыгрузки + + + ПутьКФайлуВыгрузкиРасширеннаяПодсказка + 191 + Label + true + true + + Left + + + + ПутьКФайлуВыгрузкиКонтекстноеМеню + 190 + true + + InputField + Enter + true + Left + true + + + StartChoice + ПутьКФайлуВыгрузкиНачалоВыбора + + true + true + true + true + true + true + true + Normal + + + + ВыгрузкаДополнительноРазработчик + 210 + + ПутьКМенеджеруОбменаВыгрузки + 1 + + <key>ru</key> + <value>Менеджер выгрузки</value> + + true + true + + true + + + Объект.ПутьКМенеджеруОбменаВыгрузки + + + ru + Для использования внешнего модуля менеджера обмена через универсальный формат. + + Button + + OnChange + ПутьКМенеджеруОбменаВыгрузкиПриИзменении + + + ПутьКМенеджеруОбменаВыгрузкиРасширеннаяПодсказка + 3 + Label + true + true + + Left + + + + ПутьКМенеджеруОбменаВыгрузкиКонтекстноеМеню + 2 + true + + InputField + Auto + true + Left + true + + + StartChoice + ПутьКМенеджеруОбменаВыгрузкиНачалоВыбора + + true + true + true + true + true + true + true + Normal + + ru + Сейчас используется встроенный менеджер + + + + + ИсточникВыгрузки + 236 + + <key>ru</key> + <value>Данные для выгрузки</value> + + true + true + + true + + + Объект.ИсточникВыгрузки + + + OnChange + ИсточникВыгрузкиПриИзменении + + + ИсточникВыгрузкиРасширеннаяПодсказка + 238 + Label + true + true + + Left + + + + ИсточникВыгрузкиКонтекстноеМеню + 237 + true + + RadioButtonField + Enter + true + Left + true + + Tumbler + + + ru + Произвольный отбор + + + Отбор + + + + + ru + Узел плана обмена + + + Узел + + + Vertical + + + + УзелОбмена + 49 + true + true + + true + + + Объект.УзелОбмена + + + ru + Для выгрузки изменений, зарегистрированных на указанном узле + + Balloon + + УзелОбменаРасширеннаяПодсказка + 51 + Label + true + true + + Left + + + + УзелОбменаКонтекстноеМеню + 50 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Выгрузка дополнительно разработчик</value> + + + ВыгрузкаДополнительноРазработчикРасширеннаяПодсказка + 211 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ВыгрузкаОсновное + 168 + + ВыгружаемыеДанные + 170 + + ГруппаНастройкиОтборов + 232 + + СохранитьНастройки + 174 + true + true + + true + + + СохранитьНастройкиРасширеннаяПодсказка + 175 + Label + true + true + + Left + + + UsualButton + Form.Command.СохранитьНастройки + Normal + Auto + 3 + true + UserCmds + Auto + + + ВосстановитьНастройки + 176 + true + true + + true + + + ВосстановитьНастройкиРасширеннаяПодсказка + 177 + Label + true + true + + Left + + + UsualButton + Form.Command.ВосстановитьНастройки + Normal + Auto + 3 + true + UserCmds + Auto + + + ПериодОтбораВсехДокументов + 140 + true + true + + true + + + Объект.ПериодОтбораВсехДокументов + + + ПериодОтбораВсехДокументовРасширеннаяПодсказка + 142 + Label + true + true + + Left + + + + ПериодОтбораВсехДокументовКонтекстноеМеню + 141 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа настройки отборов</value> + + + ГруппаНастройкиОтборовРасширеннаяПодсказка + 233 + Label + true + true + + Left + + + UsualGroup + + Auto + WeakSeparation + true + true + Auto + Auto + + + + ТаблицаПравилВыгрузки + 115 + true + true + + true + + + Объект.ТаблицаПравилВыгрузки + + None + + ТаблицаПравилВыгрузкиВключить + 131 + true + true + + true + + + Объект.ТаблицаПравилВыгрузки.Включить + + None + + OnChange + ТаблицаПравилВыгрузкиВключитьПриИзменении + + + ТаблицаПравилВыгрузкиВключитьРасширеннаяПодсказка + 133 + Label + true + true + + Left + + + + ТаблицаПравилВыгрузкиВключитьКонтекстноеМеню + 132 + true + + CheckBoxField + Auto + true + Left + true + + + + ТаблицаПравилВыгрузкиНаименование + 128 + true + true + + true + + + Объект.ТаблицаПравилВыгрузки.Наименование + + + ТаблицаПравилВыгрузкиНаименованиеРасширеннаяПодсказка + 130 + Label + true + true + + Left + + + + ТаблицаПравилВыгрузкиНаименованиеКонтекстноеМеню + 129 + true + + InputField + true + Auto + true + Left + true + + true + true + true + true + true + true + Normal + + + + ТаблицаПравилВыгрузкиЭтоГруппа + 134 + true + + true + + + Объект.ТаблицаПравилВыгрузки.ЭтоГруппа + + + ТаблицаПравилВыгрузкиЭтоГруппаРасширеннаяПодсказка + 136 + Label + true + true + + Left + + + + ТаблицаПравилВыгрузкиЭтоГруппаКонтекстноеМеню + 135 + true + + CheckBoxField + Auto + true + Left + true + + + + ТаблицаПравилВыгрузкиПредставлениеОтбора + 143 + true + true + + true + + + Объект.ТаблицаПравилВыгрузки.ПредставлениеОтбора + + + ТаблицаПравилВыгрузкиПредставлениеОтбораРасширеннаяПодсказка + 145 + Label + true + true + + Left + + + + ТаблицаПравилВыгрузкиПредставлениеОтбораКонтекстноеМеню + 144 + true + + InputField + true + Auto + true + Left + true + + true + true + true + true + true + true + Normal + + + None + + ТаблицаПравилВыгрузкиКоманднаяПанель + 117 + Left + true + + + Selection + ТаблицаПравилВыгрузкиВыбор + + + ChoiceProcessing + ТаблицаПравилВыгрузкиОбработкаВыбора + + + ТаблицаПравилВыгрузкиСтрокаПоиска + 119 + + ТаблицаПравилВыгрузкиСтрокаПоискаРасширеннаяПодсказка + 121 + Label + true + true + + Left + + + + ТаблицаПравилВыгрузкиСтрокаПоискаКонтекстноеМеню + 120 + true + + ТаблицаПравилВыгрузки + + true + + + + ТаблицаПравилВыгрузкиСостояниеПросмотра + 122 + + ТаблицаПравилВыгрузкиСостояниеПросмотраРасширеннаяПодсказка + 124 + Label + true + true + + Left + + + + ТаблицаПравилВыгрузкиСостояниеПросмотраКонтекстноеМеню + 123 + true + + ViewStatusAddition + ТаблицаПравилВыгрузки + + true + + + + ТаблицаПравилВыгрузкиУправлениеПоиском + 125 + + ТаблицаПравилВыгрузкиУправлениеПоискомРасширеннаяПодсказка + 127 + Label + true + true + + Left + + + + ТаблицаПравилВыгрузкиУправлениеПоискомКонтекстноеМеню + 126 + true + + SearchControlAddition + ТаблицаПравилВыгрузки + + true + + + + ТаблицаПравилВыгрузкиРасширеннаяПодсказка + 118 + Label + true + true + + Left + + + + ТаблицаПравилВыгрузкиКонтекстноеМеню + 116 + true + + Tree + true + true + true + MultiRow +
        true
        + 1 + 1 + AutoUse + AutoUse + true + true + false + true + Auto + Auto + true + true + true + true + true +
        + true + true + + true + + + <key>ru</key> + <value>Выгружаемые данные</value> + + + ВыгружаемыеДанныеРасширеннаяПодсказка + 171 + Label + true + true + + Left + + + Page + + Vertical + auto + false + +
        + + РезультатВыгрузки + 172 + + ГруппаДанныеВыгрузки + 162 + + РезультатВыгрузкиXDTO + 10 + + <key>ru</key> + <value>Файл данных</value> + + true + true + + true + + + Объект.РезультатВыгрузкиXDTO + + None + + РезультатВыгрузкиXDTOРасширеннаяПодсказка + 12 + Label + true + true + + Left + + + + РезультатВыгрузкиXDTOКонтекстноеМеню + 11 + true + + TextDocumentField + Enter + true + Left + true + + 50 + true + 10 + true + true + true + + + + КомандыXML + 89 + + СохранитьXML + 83 + true + true + + true + + + СохранитьXMLРасширеннаяПодсказка + 84 + Label + true + true + + Left + + + UsualButton + Form.Command.СохранитьXML + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Команды XML</value> + + + КомандыXMLРасширеннаяПодсказка + 90 + Label + true + true + + Left + + + UsualGroup + + Vertical + Bottom + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа данные выгрузки</value> + + + ГруппаДанныеВыгрузкиРасширеннаяПодсказка + 163 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Результат выгрузки</value> + + + РезультатВыгрузкиРасширеннаяПодсказка + 173 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Выгрузка основное</value> + + + ВыгрузкаОсновноеРасширеннаяПодсказка + 169 + Label + true + true + + Left + + + Pages + + TabsOnTop + Auto + +
        + true + true + + true + + + <key>ru</key> + <value>Выгрузка</value> + + + ВыгрузкаРасширеннаяПодсказка + 18 + Label + true + true + + Left + + + Page + + Vertical + auto + false + +
        + + Ожидание + 249 + + ДлительнаяОперацияКартинкаИТекст + 251 + + ДекорацияДлительнаяОперация + 253 + + <key>ru</key> + <value>Длительная операция</value> + + true + true + + true + + + ДекорацияДлительнаяОперацияExtendedTooltip + 255 + Label + true + true + + Left + + + + ДекорацияДлительнаяОперацияКонтекстноеМеню + 254 + true + + true + true + + + CommonPicture.ДлительнаяОперация48 + + + + + ДекорацияПоясняющийТекстДлительнойОперации + 256 + + <key>ru</key> + <value>Выполняется выгрузка загрузка данных...</value> + + true + true + + true + + + ДекорацияПоясняющийТекстДлительнойОперацииExtendedTooltip + 258 + Label + true + true + + Left + + + + ДекорацияПоясняющийТекстДлительнойОперацииКонтекстноеМеню + 257 + true + + Label + true + + Left + Center + + + true + true + + true + + + <key>ru</key> + <value>Длительная операция картинка и текст</value> + + + ДлительнаяОперацияКартинкаИТекстРасширеннаяПодсказка + 252 + Label + true + true + + Left + + + UsualGroup + + Center + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Ожидание</value> + + + ОжиданиеРасширеннаяПодсказка + 250 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Выгрузка загрузка</value> + + + ВыгрузкаЗагрузкаРасширеннаяПодсказка + 16 + Label + true + true + + Left + + + Pages + + Auto + +
        + + ФормаКоманднаяПанель + -1 + + ФормаВключитьРасширенныеВозможности + 230 + true + true + + true + + + ФормаВключитьРасширенныеВозможностиРасширеннаяПодсказка + 231 + Label + true + true + + Left + + + Form.Command.ВключитьРежимРазработчика + Normal + Auto + true + true + UserCmds + true + Auto + InAdditionalSubmenu + + + ФормаВыполнитьОперацию + 234 + true + true + + true + + + ФормаВыполнитьОперациюРасширеннаяПодсказка + 235 + Label + true + true + + Left + + + Form.Command.ВыполнитьОперацию + Normal + PictureAndText + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + + ФормаПрервать + 247 + + <key>ru</key> + <value>Прервать выполнение операции</value> + + true + true + + true + + + ФормаПрерватьРасширеннаяПодсказка + 248 + Label + true + true + + Left + + + Form.Command.Прервать + Normal + true + true + UserCmds + Auto + + Left + + + OnOpen + ПриОткрытии + + + OnCreateAtServer + ПриСозданииНаСервере + + DontBlock + Use + true + true + Vertical + true + true + true + auto + true + + Объект + 1 + + DataProcessorObject.ВыгрузкаЗагрузкаEnterpriseData + + + true + + + true + + + Объект.ВерсияФормата + + + Объект.ПутьКМенеджеруОбменаВыгрузки + + + Объект.ПутьКМенеджеруОбменаЗагрузки + + + Объект.РезультатВыгрузкиXDTO + +
        true
        + + + Объект.ДополнительнаяРегистрация + + + ПолноеИмяМетаданных + + <key>ru</key> + <value>Полное имя метаданных</value> + + 1 + + String + + + + true + + + true + + + + Отбор + + <key>ru</key> + <value>Отбор</value> + + 2 + + DataCompositionFilter + + + true + + + true + + + + Период + + <key>ru</key> + <value>Период</value> + + 3 + + StandardPeriod + + + true + + + true + + + + ВыборПериода + + <key>ru</key> + <value>Выбор периода</value> + + 4 + + Boolean + + + true + + + true + + + + Представление + + <key>ru</key> + <value>Представление</value> + + 5 + + String + + + + true + + + true + + + + ОтборСтрокой + + <key>ru</key> + <value>Отбор строкой</value> + + 6 + + String + + + + true + + + true + + + + Количество + + <key>ru</key> + <value>Количество</value> + + 7 + + String + + + + true + + + true + + + + + + Объект.ТаблицаПравилВыгрузки + + + Наименование + + <key>ru</key> + <value>Наименование</value> + + 1 + + String + + + + true + + + true + + + + Включить + + <key>ru</key> + <value>Включить</value> + + 2 + + Boolean + + + true + + + true + + + + ЭтоГруппа + + <key>ru</key> + <value>Это группа</value> + + 3 + + Boolean + + + true + + + true + + + + ПредставлениеОтбора + + <key>ru</key> + <value>Представление отбора</value> + + 5 + + String + + + + true + + + true + + + + ПолноеИмяМетаданных + + <key>ru</key> + <value>Полное имя метаданных</value> + + 6 + + String + + + + true + + + true + + + + Представление + + <key>ru</key> + <value>Представление</value> + + 7 + + String + + + + true + + + true + + + +
        + + БазовоеИмяДляФормы + + <key>ru</key> + <value>Базовое имя для формы</value> + + 2 + + String + + + + true + + + true + + + + СтрокаПоддерживаемыеВерсииФормата + + <key>ru</key> + <value>Строка поддерживаемые версии формата</value> + + 3 + + String + + 100 + + + + true + + + true + + + + РежимРаботы + + <key>ru</key> + <value>Режим работы</value> + + 4 + + + true + + + true + + + + РежимРазработчика + + <key>ru</key> + <value>Режим разработчика</value> + + 5 + + Boolean + + + true + + + true + + + РежимРазработчика + + + + АдресФайлаЗагрузки + + <key>ru</key> + <value>Адрес файла загрузки</value> + + 6 + + String + + + + true + + + true + + + + ИсточникЗагрузки + + <key>ru</key> + <value>Источник загрузки</value> + + 7 + + Number + + 10 + + + + true + + + true + + + ИсточникЗагрузки + + + + МестоВыгрузки + + <key>ru</key> + <value>Место выгрузки</value> + + 8 + + Number + + 10 + + + + true + + + true + + + МестоВыгрузки + + + + ДанныеДляЗагрузкиXDTO + + <key>ru</key> + <value>Данные для загрузки XDTO</value> + + 9 + + String + + + + true + + + true + + + + ПутьКФайлуЗагрузки + + <key>ru</key> + <value>Путь к файлу загрузки</value> + + 10 + + String + + + + true + + + true + + + + ПутьКФайлуВыгрузки + + <key>ru</key> + <value>Путь к файлу выгрузки</value> + + 11 + + String + + + + true + + + true + + + + ВидОперации + + <key>ru</key> + <value>Вид операции</value> + + 12 + + String + + 15 + + + + true + + + true + + + ВидОперации + + + + ВариантОткрытияФормы + + <key>ru</key> + <value>Вариант открытия формы</value> + + 13 + + String + + + + true + + + true + + + + ЭтоВнешняяОбработка + + <key>ru</key> + <value>Это внешняя обработка</value> + + 14 + + Boolean + + + true + + + true + + + + АдресХраненияРезультата + + <key>ru</key> + <value>Адрес хранения результата</value> + + 15 + + String + + + + true + + + true + + + + ИдентификаторЗадания + + <key>ru</key> + <value>Идентификатор задания</value> + + 16 + + + true + + + true + + + + ИмяОбработки + + <key>ru</key> + <value>Имя обработки</value> + + 17 + + String + + + + true + + + true + + + + МассивСообщений + + <key>ru</key> + <value>Массив сообщений</value> + + 18 + + + true + + + true + + + + СохранитьXML + + <key>ru</key> + <value>Сохранить XML</value> + + 8 + + ru + Сохранить XML + + + true + + + StdPicture.SaveFile + + + + СохранитьXML + + + Picture + DontUse + Auto + + + ОткрытьXML + + <key>ru</key> + <value>Открыть XML</value> + + 9 + + ru + Открыть XML + + + true + + + StdPicture.OpenFile + + + + ОткрытьXML + + + Picture + DontUse + Auto + + + СохранитьНастройки + + <key>ru</key> + <value>Сохранить настройки</value> + + 2 + + ru + Сохранить настройки + + + true + + + StdPicture.SaveValues + + + + СохранитьНастройки + + + Picture + DontUse + Auto + + + ВосстановитьНастройки + + <key>ru</key> + <value>Восстановить настройки</value> + + 3 + + ru + Восстановить настройки + + + true + + + StdPicture.RestoreValues + + + + ВосстановитьНастройки + + + Picture + DontUse + Auto + + + ВключитьРежимРазработчика + + <key>ru</key> + <value>Режим разработчика</value> + + 5 + + ru + Включить режим разработчика + + + true + + + + ВключитьРежимРазработчика + + + DontUse + Auto + + + ВыполнитьОперацию + + <key>ru</key> + <value>Выполнить операцию</value> + + 1 + + ru + Выполнить операцию + + + true + + + StdPicture.GenerateReport + + + + ВыполнитьОперацию + + + TextPicture + DontUse + Auto + + + Прервать + + <key>ru</key> + <value>Прервать</value> + + 4 + + ru + Прервать выгрузку / загрузку данных + + + true + + + + ПрерватьВыгрузкуЗагрузку + + + DontUse + Auto + + + + + + +
        diff --git a/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Forms/Форма/Module.bsl new file mode 100644 index 000000000..40cd1d9bb --- /dev/null +++ b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Forms/Форма/Module.bsl @@ -0,0 +1,947 @@ +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + Если Параметры.Свойство("АвтоТест") Тогда + Возврат; + КонецЕсли; + + МассивДоступныхВерсий = Новый Соответствие; + Попытка + ОбменДаннымиПереопределяемый.ПриПолученииДоступныхВерсийФормата(МассивДоступныхВерсий); + Исключение + // Не удалось получить доступные версии формата. + ВызватьИсключение НСтр("ru='В информационной базе не поддерживается синхронизация данных через универсальный формат'"); + КонецПопытки; + + ОбработкаОбъект = РеквизитФормыВЗначение("Объект"); + ВариантОткрытияФормы = ?(Параметры.Свойство("ТолькоЗагрузка"), "ТолькоЗагрузка", ""); + + Если ВариантОткрытияФормы = "ТолькоЗагрузка" Тогда + ЭтотОбъект.Заголовок = НСтр("ru='Загрузка данных EnterpriseData'"); + Элементы.НадписьЗагрузкаВстроеннойОбработкой.Видимость = Истина; + Иначе + Элементы.НадписьЗагрузкаВстроеннойОбработкой.Видимость = Ложь; + ЭтотОбъект.Заголовок = НСтр("ru='Выгрузка и загрузка данных EnterpriseData'"); + КонецЕсли; + + МетаОбработкаИмя = ОбработкаОбъект.Метаданные().Имя; + ЭтоВнешняяОбработка = Ложь; + ЧастиИмени = СтрРазделить(ИмяФормы, "."); + Если Не (Метаданные.Обработки.Найти(МетаОбработкаИмя) <> Неопределено + И ТипЗнч(ОбработкаОбъект) = Тип("ОбработкаОбъект." + МетаОбработкаИмя)) Тогда + ЭтоВнешняяОбработка = Истина; + КонецЕсли; + + Если ЭтоВнешняяОбработка Тогда + ДанныеОбработки = Новый ДвоичныеДанные(ОбработкаОбъект.ИспользуемоеИмяФайла); + АдресХранилища = ПоместитьВоВременноеХранилище(ДанныеОбработки, УникальныйИдентификатор); + БазовоеИмяДляФормы = "ВнешняяОбработка." + ВнешниеОбработки.Подключить(АдресХранилища,,Ложь); + ИмяОбработки = ОбработкаОбъект.ИспользуемоеИмяФайла; + Иначе + БазовоеИмяДляФормы = "Обработка." + МетаОбработкаИмя; + ИмяОбработки = ЧастиИмени[1]; + КонецЕсли; + + + Объект.ИсточникВыгрузки = "Отбор"; + + РежимРаботы = ОбщегоНазначенияПовтИсп.РежимРаботыПрограммы(); + РежимРаботы = Новый ФиксированнаяСтруктура(РежимРаботы); + + Если МассивДоступныхВерсий.Количество() = 0 Тогда + СтрокаПоддерживаемыеВерсииФормата = НСтр("ru='Не обнаружены поддерживаемые версии формата'"); + Элементы.СтрокаПоддерживаемыеВерсииФормата.ЦветТекста = Новый Цвет(255,0,0); + Элементы.ФормаВыполнитьОперацию.Доступность = Ложь; + Иначе + СтрокаПоддерживаемыеВерсииФормата = НСтр("ru='Поддерживаемые версии формата:'"); + Для Каждого ЭлементМассива Из МассивДоступныхВерсий Цикл + СтрокаПоддерживаемыеВерсииФормата = СтрокаПоддерживаемыеВерсииФормата + ЭлементМассива.Ключ + ", "; + Элементы.ВерсияФормата.СписокВыбора.Добавить(ЭлементМассива.Ключ); + КонецЦикла; + СтрокаПоддерживаемыеВерсииФормата = Лев(СтрокаПоддерживаемыеВерсииФормата, СтрДлина(СтрокаПоддерживаемыеВерсииФормата)-2); + Элементы.СтрокаПоддерживаемыеВерсииФормата.ЦветТекста = Новый Цвет(0,0,0); + Объект.ВерсияФормата = Элементы.ВерсияФормата.СписокВыбора[МассивДоступныхВерсий.Количество()-1].Значение; + ОбновитьПравилаВыгрузкиНаСервере(); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ПриОткрытии(Отказ) + + Если ВариантОткрытияФормы = "ТолькоЗагрузка" Тогда + ВидОперации = "Загрузка"; + РежимРазработчика = Ложь; + КонецЕсли; + + Если Не ЗначениеЗаполнено(ВидОперации) Тогда + ВидОперации = "Загрузка"; + КонецЕсли; + // сохраненное по умолчанию значение появляется только при открытии формы. + Если ЗначениеЗаполнено(Объект.ПутьКМенеджеруОбменаВыгрузки) Тогда + ОбновитьПравилаВыгрузкиНаСервере(); + КонецЕсли; + УстановитьВидимость(); + #Если ВебКлиент Тогда + // На всякий случай проверяем расширение работы с файлами. + НачатьУстановкуРасширенияРаботыСФайлами(); + #КонецЕсли +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы + +&НаКлиенте +Процедура ВидОперацииПриИзменении(Элемент) + УстановитьВидимость(); +КонецПроцедуры + +&НаКлиенте +Процедура ВерсияФорматаПриИзменении(Элемент) + Если НЕ ЗначениеЗаполнено(Объект.ВерсияФормата) Тогда + Возврат; + КонецЕсли; + + ОбновитьПравилаВыгрузкиНаСервере(); +КонецПроцедуры + +&НаКлиенте +Процедура ПутьКМенеджеруОбменаВыгрузкиНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + НачалоВыбораМодуляМенеджера("ПутьКМенеджеруОбменаВыгрузки", СтандартнаяОбработка, Истина); +КонецПроцедуры + +&НаКлиенте +Процедура ПутьКМенеджеруОбменаЗагрузкиНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + НачалоВыбораМодуляМенеджера("ПутьКМенеджеруОбменаЗагрузки", СтандартнаяОбработка, Ложь); +КонецПроцедуры + +&НаКлиенте +Процедура ПутьКМенеджеруОбменаВыгрузкиПриИзменении(Элемент) + ПутьКМенеджеруОбменаВыгрузкиПриИзмененииНаСервере(); +КонецПроцедуры + +&НаКлиенте +Процедура ТаблицаПравилВыгрузкиВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) + СтандартнаяОбработка = Ложь; + ТекущиеДанные = Элементы.ТаблицаПравилВыгрузки.ТекущиеДанные; + Если ТекущиеДанные.ПолноеИмяМетаданных = "" Тогда + Возврат; + КонецЕсли; + СтруктураОтбор = Новый Структура("ПолноеИмяМетаданных", ТекущиеДанные.ПолноеИмяМетаданных); + СтрокиДопРегистрации = Объект.ДополнительнаяРегистрация.НайтиСтроки(СтруктураОтбор); + ТекВыборПериода = Неопределено; + ТекПериодДанных = Неопределено; + ТекОтбор = Неопределено; + НомерТекСтроки = 0; + Если СтрокиДопРегистрации.Количество()>0 Тогда + ТекВыборПериода = СтрокиДопРегистрации[0].ВыборПериода; + ТекПериодДанных = СтрокиДопРегистрации[0].Период; + ТекОтбор = СтрокиДопРегистрации[0].Отбор; + КонецЕсли; + + ИмяОткрываемойФормы = БазовоеИмяДляФормы + ".Форма.РедактированиеПериодаИОтбора"; + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("Заголовок", ТекущиеДанные.Представление); + ПараметрыФормы.Вставить("ВыборПериода", ТекВыборПериода); + ПараметрыФормы.Вставить("КомпоновщикНастроек", КомпоновщикНастроекПоИмениТаблицы( + ТекущиеДанные.ПолноеИмяМетаданных, ТекущиеДанные.Представление, ТекОтбор)); + ПараметрыФормы.Вставить("ПериодДанных", ТекПериодДанных); + + ПараметрыФормы.Вставить("АдресХранилищаФормы", УникальныйИдентификатор); + + ОткрытьФорму(ИмяОткрываемойФормы, ПараметрыФормы, Элементы.ТаблицаПравилВыгрузки); +КонецПроцедуры + +&НаКлиенте +Процедура ТаблицаПравилВыгрузкиОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) + СтандартнаяОбработка = Ложь; + + ТипВыбранного = ТипЗнч(ВыбранноеЗначение); + ПолноеИмяМД = Элементы.ТаблицаПравилВыгрузки.ТекущиеДанные.ПолноеИмяМетаданных; + ИдентификаторТекущейСтроки = Элементы.ТаблицаПравилВыгрузки.ТекущиеДанные.ПолучитьИдентификатор(); + РедактированиеОтбораСтрокиДополнительныйСоставСервер(ВыбранноеЗначение, ПолноеИмяМД, ИдентификаторТекущейСтроки); +КонецПроцедуры + +&НаКлиенте +Процедура ПутьКФайлуЗагрузкиНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + ВыбратьФайлДляЗагрузкиНаКлиенте(); +КонецПроцедуры + +&НаКлиенте +Процедура ПутьКФайлуВыгрузкиНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + ВыбратьФайлДляВыгрузкиНаКлиенте(); +КонецПроцедуры + +&НаКлиенте +Процедура ИсточникЗагрузкиПриИзменении(Элемент) + УстановитьВидимость(); +КонецПроцедуры + +&НаКлиенте +Процедура МестоВыгрузкиПриИзменении(Элемент) + УстановитьВидимость(); +КонецПроцедуры + +&НаКлиенте +Процедура ИсточникВыгрузкиПриИзменении(Элемент) + УстановитьВидимость(); +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиКомандФормы + +&НаКлиенте +Процедура ВыполнитьОперацию(Команда) + ИдентификаторЗадания = Неопределено; + Если ВидОперации = "Загрузка" Тогда + ПодключитьОбработчикОжидания("ЗагрузитьСообщение",1,Истина); + Иначе + ПодключитьОбработчикОжидания("ВыгрузитьДанные",1,Истина); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ПрерватьВыгрузкуЗагрузку(Команда) + Если ИдентификаторЗадания = Неопределено Тогда + Возврат; + КонецЕсли; + ПрерватьВыгрузкуЗагрузкуСервер(); + ИдентификаторЗадания = Неопределено; + Элементы.ВыгрузкаЗагрузка.ТекущаяСтраница = ?(ВидОперации = "Загрузка", Элементы.Загрузка, Элементы.Выгрузка); + УстановитьВидимостьДоступностьКнопок(Истина); + Сообщение = Новый СообщениеПользователю(); + Сообщение.Текст = НСтр("ru = 'Выполнение операции прервано.'"); + Сообщение.Сообщить(); + +КонецПроцедуры + + +&НаКлиенте +Процедура СохранитьXML(Команда) + АдресФайлаВХранилище = СохранитьXMLНаСервере(); + Если ЗначениеЗаполнено(ПутьКФайлуВыгрузки) Тогда + ЗаписатьРезультатВыгрузкиВФайл(АдресФайлаВХранилище); + Иначе + ВыбратьФайлДляВыгрузкиНаКлиенте(Истина, АдресФайлаВХранилище); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ОткрытьXML(Команда) + АдресФайла = ""; + + ДопПараметры = Новый Структура("ВидФайла", "ФайлДанных"); + ОписаниеОповещения = Новый ОписаниеОповещения("ПоместитьФайлВХранилищеЗавершить", ЭтотОбъект, ДопПараметры); + ПомещаемыеФайлы = Новый Массив; + Интерактивно = Истина; + Если ЗначениеЗаполнено(ПутьКФайлуЗагрузки) Тогда + ОписаниеФайла = Новый ОписаниеПередаваемогоФайла(ПутьКФайлуЗагрузки,АдресФайла); + ПомещаемыеФайлы.Добавить(ОписаниеФайла); + Интерактивно = Ложь; + КонецЕсли; + НачатьПомещениеФайлов(ОписаниеОповещения, ПомещаемыеФайлы,,Интерактивно, УникальныйИдентификатор); +КонецПроцедуры + +&НаКлиенте +Процедура СохранитьНастройки(Команда) + АдресФайлаВХранилище = СохранитьНастройкиВыгрузкиНаСервере(); + ПолучитьФайл(АдресФайлаВХранилище, НСтр("ru = 'Файл настроек.xml'")); +КонецПроцедуры + +&НаКлиенте +Процедура ВосстановитьНастройки(Команда) + АдресФайла = ""; + ДопПараметры = Новый Структура("ВидФайла", "ФайлНастроек"); + ОписаниеОповещения = Новый ОписаниеОповещения("ПоместитьФайлВХранилищеЗавершить", ЭтотОбъект, ДопПараметры); + ПомещаемыеФайлы = Новый Массив; + ОписаниеФайла = Новый ОписаниеПередаваемогоФайла(,АдресФайла); + ПомещаемыеФайлы.Добавить(ОписаниеФайла); + НачатьПомещениеФайлов(ОписаниеОповещения, ПомещаемыеФайлы,,Истина, УникальныйИдентификатор); +КонецПроцедуры + +&НаКлиенте +Процедура ВключитьРежимРазработчика(Команда) + + РежимРазработчика = Не РежимРазработчика; + ИсточникЗагрузки = ?(РежимРазработчика, ИсточникЗагрузки, 0); + МестоВыгрузки = ?(РежимРазработчика, МестоВыгрузки, 0); + ИсточникВыгрузки = ?(РежимРазработчика, ИсточникВыгрузки, "Отбор"); + УстановитьВидимость(); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции +&НаКлиенте +Процедура ЗагрузитьСообщение() + Элементы.ДекорацияПоясняющийТекстДлительнойОперации.Заголовок = НСтр("ru='Выполняется загрузка данных...'"); + Элементы.ВыгрузкаЗагрузка.ТекущаяСтраница = Элементы.Ожидание; + УстановитьВидимостьДоступностьКнопок(Ложь); + Если ИсточникЗагрузки = 1 Тогда + Если НЕ ЗначениеЗаполнено(ДанныеДляЗагрузкиXDTO) Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru='Текстовое поле с данными для загрузки не заполнено.'")); + Возврат; + КонецЕсли; + ЗапуститьЗагрузкуДанных(); + Иначе + Если ЗначениеЗаполнено(ПутьКФайлуЗагрузки) Тогда + ЗагрузитьИзФайлаНаКлиенте(); + Иначе + // После выбора автоматом пойдет загрузка. + ВыбратьФайлДляЗагрузкиНаКлиенте(Истина); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ЗапуститьЗагрузкуДанных() + МассивСообщений = Неопределено; + ДлительнаяОперация = ЗагрузитьДанныеНаСервере(); + ИдентификаторЗадания = ДлительнаяОперация.ИдентификаторЗадания; + Если ДлительнаяОперация.Статус = "Выполнено" Тогда + ДлительнаяОперация.Свойство("Сообщения", МассивСообщений); + СообщитьОбОкончанииОперации(Истина); + Иначе + МодульДлительныеОперацииКлиент = ОбщийМодуль("ДлительныеОперацииКлиент"); + ПараметрыОжидания = МодульДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + + ОписаниеОповещения = Новый ОписаниеОповещения("ПриЗавершенииОперацииЗагрузки", ЭтотОбъект); + МодульДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОписаниеОповещения, ПараметрыОжидания); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ПриЗавершенииОперацииЗагрузки(Результат, ДополнительныеПараметры) Экспорт + Если Результат = Неопределено Тогда + ВызватьИсключение НСтр("ru='Загрузка данных завершена неудачно.'"); + ИначеЕсли Результат.Статус = "Ошибка" Тогда + ВызватьИсключение Результат.КраткоеПредставлениеОшибки; + КонецЕсли; + СообщитьОбОкончанииОперации(Истина); +КонецПроцедуры + +&НаКлиенте +Процедура ВыгрузитьДанные() + Элементы.ДекорацияПоясняющийТекстДлительнойОперации.Заголовок = НСтр("ru='Выполняется выгрузка данных...'"); + Элементы.ВыгрузкаЗагрузка.ТекущаяСтраница = Элементы.Ожидание; + УстановитьВидимостьДоступностьКнопок(Ложь); + МассивСообщений = Неопределено; + ДлительнаяОперация = ВыгрузитьДанныеНаСервере(); + ИдентификаторЗадания = ДлительнаяОперация.ИдентификаторЗадания; + Если ДлительнаяОперация.Статус = "Выполнено" Тогда + АдресХраненияРезультата = ДлительнаяОперация.АдресРезультата; + ДлительнаяОперация.Свойство("Сообщения", МассивСообщений); + ОбработатьРезультатВыгрузки(); + Иначе + МодульДлительныеОперацииКлиент = ОбщийМодуль("ДлительныеОперацииКлиент"); + ПараметрыОжидания = МодульДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + + ОписаниеОповещения = Новый ОписаниеОповещения("ПриЗавершенииОперацииВыгрузки", ЭтотОбъект); + МодульДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОписаниеОповещения, ПараметрыОжидания); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ПриЗавершенииОперацииВыгрузки(Результат, ДополнительныеПараметры) Экспорт + Если Результат = Неопределено Тогда + ВызватьИсключение НСтр("ru='Выгрузка данных завершена неудачно. Отсутствует результат выгрузки.'"); + ИначеЕсли Результат.Статус = "Ошибка" Тогда + ВызватьИсключение Результат.КраткоеПредставлениеОшибки; + КонецЕсли; + АдресХраненияРезультата = Результат.АдресРезультата; + ОбработатьРезультатВыгрузки(); +КонецПроцедуры + +&НаКлиенте +Процедура ОбработатьРезультатВыгрузки() + Если МестоВыгрузки = 1 Тогда + Объект.РезультатВыгрузкиXDTO = ПолучитьИзВременногоХранилища(АдресХраненияРезультата); + СообщитьОбОкончанииОперации(Ложь); + Иначе + Если НЕ ЗначениеЗаполнено(ПутьКФайлуВыгрузки) Тогда + // После выбора файла результат выгрузки будет туда записан. + ВыбратьФайлДляВыгрузкиНаКлиенте(Истина, АдресХраненияРезультата); + Иначе + ЗаписатьРезультатВыгрузкиВФайл(АдресХраненияРезультата); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ЗаписатьРезультатВыгрузкиВФайл(АдресХраненияРезультата) + ОповещениеПолученФайл = Новый ОписаниеОповещения("ПолученФайлВыгрузки", ЭтотОбъект); + ПолучаемыеФайлы = Новый Массив; + ФайлВыгрузки = Новый ОписаниеПередаваемогоФайла(ПутьКФайлуВыгрузки, АдресХраненияРезультата); + ПолучаемыеФайлы.Добавить(ФайлВыгрузки); + НачатьПолучениеФайлов(ОповещениеПолученФайл,ПолучаемыеФайлы,,Ложь); +КонецПроцедуры + +&НаКлиенте +Процедура ПолученФайлВыгрузки(ПолученныеФайлы, ДополнительныеПараметры) Экспорт + Если ПолученныеФайлы <> Неопределено Тогда + Если НЕ ЗначениеЗаполнено(ПутьКФайлуВыгрузки) Тогда + ПутьКФайлуВыгрузки = ПолученныеФайлы[0].Имя; + КонецЕсли; + СообщитьОбОкончанииОперации(Ложь); + ЭтаФорма.ОбновитьОтображениеДанных(); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ВыбратьФайлДляЗагрузкиНаКлиенте(ЗагружатьПослеВыбора = Ложь) + ПодключитьРасширениеРаботыСФайлами(); + ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие); + ДиалогОткрытияФайла.Фильтр = НСтр("ru = 'Данные загрузки'")+ "(*.xml)|*.xml"; + ОповещениеВыбора = Новый ОписаниеОповещения("ВыбранФайл", ЭтотОбъект, Новый Структура("ДляЗагрузки, ЗагружатьПослеВыбора", Истина, ЗагружатьПослеВыбора)); + ДиалогОткрытияФайла.Показать(ОповещениеВыбора); +КонецПроцедуры + +&НаКлиенте +Процедура ВыбратьФайлДляВыгрузкиНаКлиенте(ВыгружатьПослеВыбора = Ложь, АдресХраненияРезультата = "") + ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение); + ДиалогОткрытияФайла.Фильтр = НСтр("ru = 'Данные выгрузки'")+ "(*.xml)|*.xml"; + ОповещениеВыбора = Новый ОписаниеОповещения("ВыбранФайл", ЭтотОбъект, + Новый Структура("ДляЗагрузки, ВыгружатьПослеВыбора, АдресХраненияРезультата", Ложь, ВыгружатьПослеВыбора, АдресХраненияРезультата)); + ДиалогОткрытияФайла.Показать(ОповещениеВыбора); +КонецПроцедуры + + +&НаКлиенте +Процедура ПоместитьФайлВХранилищеЗавершить(ПомещенныеФайлы, ДополнительныеПараметры) Экспорт + АдресФайлаЗагрузки = ""; + Если ПомещенныеФайлы <> Неопределено Тогда + АдресФайлаЗагрузки = ПомещенныеФайлы[0].Хранение; + Если ДополнительныеПараметры.ВидФайла = "ФайлДанных" Тогда + ОткрытьXMLНаСервере(); + ИначеЕсли ДополнительныеПараметры.ВидФайла = "ФайлДанныхДляЗагрузки" Тогда + ЗапуститьЗагрузкуДанных(); + ИначеЕсли ДополнительныеПараметры.ВидФайла = "ФайлНастроек" Тогда + ЗагрузитьНастройкиВыгрузкиНаСервере(); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +&НаСервере +Функция ВыгрузитьДанныеНаСервере() + ДополнитьДанныеОтбораПриНеобходимости(); + АдресХраненияРезультата = ""; + ОбработкаОбъект = РеквизитФормыВЗначение("Объект"); + СтруктураПараметров = Новый Структура; + СтруктураПараметров.Вставить("МестоВыгрузки", МестоВыгрузки); + Если ЭтоВнешняяОбработка Тогда + Возврат Новый Структура("Статус, АдресРезультата, ИдентификаторЗадания", "Выполнено", ОбработкаОбъект.РезультатВыгрузкиВXML(СтруктураПараметров)); + КонецЕсли; + СтруктураПараметров.Вставить("ЭтоФоновоеЗадание", Истина); + СтруктураПараметров.Вставить("ПутьКМенеджеруОбменаВыгрузки", ОбработкаОбъект.ПутьКМенеджеруОбменаВыгрузки); + СтруктураПараметров.Вставить("ВерсияФормата", ОбработкаОбъект.ВерсияФормата); + СтруктураПараметров.Вставить("УзелОбмена", ОбработкаОбъект.УзелОбмена); + СтруктураПараметров.Вставить("ПериодОтбораВсехДокументов", ОбработкаОбъект.ПериодОтбораВсехДокументов); + СтруктураПараметров.Вставить("ДополнительнаяРегистрация", ОбработкаОбъект.ДополнительнаяРегистрация); + + ПараметрыЗадания = Новый Структура; + ПараметрыЗадания.Вставить("ИмяОбработки", ИмяОбработки); + ПараметрыЗадания.Вставить("ИмяМетода", "РезультатВыгрузкиВXML"); + ПараметрыЗадания.Вставить("ПараметрыВыполнения", СтруктураПараметров); + ПараметрыЗадания.Вставить("ЭтоВнешняяОбработка", ЭтоВнешняяОбработка); + + ВыполняемыйМетод = "ДлительныеОперации.ВыполнитьПроцедуруМодуляОбъектаОбработки"; + + МодульДлительныеОперации = ОбщийМодуль("ДлительныеОперации"); + ПараметрыВыполнения = МодульДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Выгрузка данных EnterpriseData'"); + РезультатФоновогоЗадания = МодульДлительныеОперации.ВыполнитьВФоне(ВыполняемыйМетод, ПараметрыЗадания, ПараметрыВыполнения); + Возврат РезультатФоновогоЗадания; +КонецФункции + +&НаСервере +Функция ЗагрузитьДанныеНаСервере() + + ОбработкаОбъект = РеквизитФормыВЗначение("Объект"); + СтруктураПараметров = Новый Структура; + Если ИсточникЗагрузки = 1 Тогда + СтруктураПараметров.Вставить("ТекстXML", ДанныеДляЗагрузкиXDTO); + Иначе + ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресФайлаЗагрузки); + АдресНаСервере = ПолучитьИмяВременногоФайла("xml"); + // Удаление временного файла происходит не через УдалитьФайлы(АдресНаСервере) в этой функции, + // а через УдалитьФайлы(АдресНаСервере) в процедуре ЗагрузкаСообщения модуля обработки. + ДвоичныеДанные.Записать(АдресНаСервере); + УдалитьИзВременногоХранилища(АдресФайлаЗагрузки); + СтруктураПараметров.Вставить("АдресНаСервере", АдресНаСервере); + КонецЕсли; + Если ЭтоВнешняяОбработка Тогда + УстановитьПривилегированныйРежим(Истина); + ОбработкаОбъект.ЗагрузкаСообщения(СтруктураПараметров,""); + УстановитьПривилегированныйРежим(Ложь); + Возврат Новый Структура("Статус, АдресРезультата, ИдентификаторЗадания", "Выполнено", ""); + КонецЕсли; + СтруктураПараметров.Вставить("ПутьКМенеджеруОбменаЗагрузки", ОбработкаОбъект.ПутьКМенеджеруОбменаЗагрузки); + СтруктураПараметров.Вставить("ВерсияФормата", ОбработкаОбъект.ВерсияФормата); + СтруктураПараметров.Вставить("ЭтоФоновоеЗадание", Истина); + + ПараметрыЗадания = Новый Структура; + ПараметрыЗадания.Вставить("ИмяОбработки", ИмяОбработки); + ПараметрыЗадания.Вставить("ИмяМетода", "ЗагрузкаСообщения"); + ПараметрыЗадания.Вставить("ПараметрыВыполнения", СтруктураПараметров); + ПараметрыЗадания.Вставить("ЭтоВнешняяОбработка", ЭтоВнешняяОбработка); + + ВыполняемыйМетод = "ДлительныеОперации.ВыполнитьПроцедуруМодуляОбъектаОбработки"; + + + МодульДлительныеОперации = ОбщийМодуль("ДлительныеОперации"); + ПараметрыВыполнения = МодульДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Загрузка данных EnterpriseData'"); + РезультатФоновогоЗадания = МодульДлительныеОперации.ВыполнитьВФоне(ВыполняемыйМетод, ПараметрыЗадания, ПараметрыВыполнения); + Возврат РезультатФоновогоЗадания; + +КонецФункции + +&НаСервере +Процедура ДополнитьДанныеОтбораПриНеобходимости() + Если Объект.ИсточникВыгрузки = "Узел" Тогда + СтрокиДерева = Объект.ТаблицаПравилВыгрузки.ПолучитьЭлементы(); + СтрокиДерева.Очистить(); + Объект.ДополнительнаяРегистрация.Очистить(); + Возврат; + Иначе + Объект.УзелОбмена = Неопределено; + КонецЕсли; + + Для Каждого СтрГруппыМД Из Объект.ТаблицаПравилВыгрузки.ПолучитьЭлементы() Цикл + ЭтоДокумент = (СтрГруппыМД.Наименование = "Документы"); + Для Каждого СтрМД Из СтрГруппыМД.ПолучитьЭлементы() Цикл + ПолноеИмяМД = СтрМД.ПолноеИмяМетаданных; + СтрокиДополнения = Объект.ДополнительнаяРегистрация.НайтиСтроки(Новый Структура("ПолноеИмяМетаданных", ПолноеИмяМД)); + Если СтрМД.Включить = Ложь Тогда + Если СтрокиДополнения.Количество() > 0 Тогда + СтрМД.ПредставлениеОтбора = ""; + ВсегоСтрок = СтрокиДополнения.Количество(); + Для Счетчик = 1 По ВсегоСтрок Цикл + Объект.ДополнительнаяРегистрация.Удалить(СтрокиДополнения[ВсегоСтрок-Счетчик]); + КонецЦикла; + КонецЕсли; + ИначеЕсли СтрокиДополнения.Количество() = 0 Тогда + НовСтрока = Объект.ДополнительнаяРегистрация.Добавить(); + ЗаполнитьЗначенияСвойств(НовСтрока, СтрМД, "ПолноеИмяМетаданных, Представление"); + НовСтрока.ОтборСтрокой = НСтр("ru = 'Все объекты'"); + Если ЭтоДокумент Тогда + НовСтрока.ВыборПериода = Истина; + КонецЕсли; + КонецЕсли; + КонецЦикла; + КонецЦикла; +КонецПроцедуры + +&НаКлиенте +Процедура НачалоВыбораМодуляМенеджера(РеквизитМодульМенеджера, СтандартнаяОбработка, ОбновлятьВыгрузку) + СтандартнаяОбработка = Ложь; + + ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие); + ДиалогОткрытияФайла.Фильтр = НСтр("ru = 'Менеджер обмена (*.epf)'") + "|*.epf" ; + ОповещениеВыбора = Новый ОписаниеОповещения("ВыбранФайл", ЭтотОбъект, + Новый Структура("МодульМенеджера, ИмяРеквизита, ОбновлятьВыгрузку", Истина, РеквизитМодульМенеджера, ОбновлятьВыгрузку)); + ДиалогОткрытияФайла.Показать(ОповещениеВыбора); +КонецПроцедуры + +&НаСервере +Функция СохранитьXMLНаСервере() + ТХ = Новый ТекстовыйДокумент; + ТХ.УстановитьТекст(Объект.РезультатВыгрузкиXDTO); + АдресНаСервере = ПолучитьИмяВременногоФайла("xml"); + ТХ.Записать(АдресНаСервере); + АдресВХранилище = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(АдресНаСервере)); + УдалитьФайлы(АдресНаСервере); + Возврат АдресВХранилище; +КонецФункции + +&НаСервере +Процедура ОткрытьXMLНаСервере() + ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресФайлаЗагрузки); + АдресНаСервере = ПолучитьИмяВременногоФайла("xml"); + ДвоичныеДанные.Записать(АдресНаСервере); + ТХ = Новый ТекстовыйДокумент; + ТХ.Прочитать(АдресНаСервере); + ДанныеДляЗагрузкиXDTO = ТХ.ПолучитьТекст(); + УдалитьФайлы(АдресНаСервере); +КонецПроцедуры + +&НаСервере +Процедура ЗагрузитьНастройкиВыгрузкиНаСервере() + ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресФайлаЗагрузки); + ИмяФайлаНаСервере = ПолучитьИмяВременногоФайла("xml"); + ДвоичныеДанные.Записать(ИмяФайлаНаСервере); + + Объект.ДополнительнаяРегистрация.Очистить(); + Объект.ПериодОтбораВсехДокументов = Новый СтандартныйПериод; + ЧтениеXML = Новый ЧтениеXML; + ЧтениеXML.ОткрытьФайл(ИмяФайлаНаСервере); + НовСтрока = Неопределено; + Пока ЧтениеXML.Прочитать() Цикл + Если ЧтениеXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда + Если ЧтениеXML.Имя = "Period" Тогда + Пока ЧтениеXML.ПрочитатьАтрибут() Цикл + Если ЧтениеXML.Имя = "Beg" Тогда + Объект.ПериодОтбораВсехДокументов.ДатаНачала = XMLЗначение(Тип("Дата"), ЧтениеXML.Значение); + ИначеЕсли ЧтениеXML.Имя = "End" Тогда + Объект.ПериодОтбораВсехДокументов.ДатаОкончания = XMLЗначение(Тип("Дата"), ЧтениеXML.Значение); + КонецЕсли; + КонецЦикла; + ИначеЕсли ЧтениеXML.Имя = "Object" Тогда + НовСтрока = Объект.ДополнительнаяРегистрация.Добавить(); + Пока ЧтениеXML.ПрочитатьАтрибут() Цикл + Если ЧтениеXML.Имя = "Type" Тогда + НовСтрока.ПолноеИмяМетаданных = XMLЗначение(Тип("Строка"), ЧтениеXML.Значение); + ИначеЕсли ЧтениеXML.Имя = "Sel_Period" Тогда + НовСтрока.ВыборПериода = XMLЗначение(Тип("Булево"), ЧтениеXML.Значение); + ИначеЕсли ЧтениеXML.Имя = "Beg_Period" Тогда + НовСтрока.Период.ДатаНачала = XMLЗначение(Тип("Дата"), ЧтениеXML.Значение); + ИначеЕсли ЧтениеXML.Имя = "End_Period" Тогда + НовСтрока.Период.ДатаОкончания = XMLЗначение(Тип("Дата"), ЧтениеXML.Значение); + ИначеЕсли ЧтениеXML.Имя = "F_String" Тогда + НовСтрока.ОтборСтрокой = XMLЗначение(Тип("Строка"), ЧтениеXML.Значение); + КонецЕсли; + КонецЦикла; + Продолжить; + ИначеЕсли ЧтениеXML.Имя = "Filter" Тогда + СтрокаОтбора = НовСтрока.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ТипЗначенияОтбора = Неопределено; + ЗначениеОтбора = Неопределено; + Пока ЧтениеXML.ПрочитатьАтрибут() Цикл + Если ЧтениеXML.Имя = "Present" Тогда + СтрокаОтбора.Представление = XMLЗначение(Тип("Строка"), ЧтениеXML.Значение); + ИначеЕсли ЧтениеXML.Имя = "Comp" Тогда + СтрВидСравнения = СокрЛП(XMLЗначение(Тип("Строка"), ЧтениеXML.Значение)); + Если ЗначениеЗаполнено(СтрВидСравнения) Тогда + СтрокаОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных[СтрВидСравнения]; + КонецЕсли; + ИначеЕсли ЧтениеXML.Имя = "Val_L" Тогда + СтрокаОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(СокрЛП(XMLЗначение(Тип("Строка"), ЧтениеXML.Значение))); + ИначеЕсли ЧтениеXML.Имя = "Val_R" Тогда + ЗначениеОтбора = ЧтениеXML.Значение; + ИначеЕсли ЧтениеXML.Имя = "Type_R" Тогда + ТипЗначенияОтбора = ЧтениеXML.Значение; + КонецЕсли; + КонецЦикла; + Если ЗначениеОтбора <> Неопределено Тогда + ПолноеИмяЭлементаОтбора = Метаданные.НайтиПоПолномуИмени(ТипЗначенияОтбора); + Если ПолноеИмяЭлементаОтбора <> Неопределено Тогда + + МенеджерОбъектаОтбора = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ТипЗначенияОтбора); + + Если СтрНайти(ВРег(ТипЗначенияОтбора), "ПЕРЕЧИСЛЕНИЕ") > 0 Тогда + СсылкаНаЗначение = МенеджерОбъектаОтбора[ЗначениеОтбора]; + Иначе + СсылкаНаЗначение = МенеджерОбъектаОтбора.ПолучитьСсылку(Новый УникальныйИдентификатор(ЗначениеОтбора)); + КонецЕсли; + + СтрокаОтбора.ПравоеЗначение = СсылкаНаЗначение; + + Иначе + СтрокаОтбора.ПравоеЗначение = XMLЗначение(Тип(ТипЗначенияОтбора),ЗначениеОтбора); + КонецЕсли; + КонецЕсли; + КонецЕсли; + КонецЕсли; + КонецЦикла; + ЧтениеXML.Закрыть(); + УдалитьФайлы(ИмяФайлаНаСервере); + ОбновитьПравилаВыгрузкиНаСервере(); +КонецПроцедуры + +&НаСервере +Функция СохранитьНастройкиВыгрузкиНаСервере() + ДополнитьДанныеОтбораПриНеобходимости(); + ИмяВремФайла = ПолучитьИмяВременногоФайла("xml"); + + ЗаписьXML = Новый ЗаписьXML; + ЗаписьXML.ОткрытьФайл(ИмяВремФайла); + ЗаписьXML.ЗаписатьОбъявлениеXML(); + ЗаписьXML.ЗаписатьНачалоЭлемента("Objects"); + Если ЗначениеЗаполнено(Объект.ПериодОтбораВсехДокументов) Тогда + ЗаписьXML.ЗаписатьНачалоЭлемента("Period"); + ЗаписьXML.ЗаписатьАтрибут("Beg", XMLСтрока(Объект.ПериодОтбораВсехДокументов.ДатаНачала)); + ЗаписьXML.ЗаписатьАтрибут("End", XMLСтрока(Объект.ПериодОтбораВсехДокументов.ДатаОкончания)); + ЗаписьXML.ЗаписатьКонецЭлемента(); //Period + КонецЕсли; + Для Каждого Стр Из Объект.ДополнительнаяРегистрация Цикл + ЗаписьXML.ЗаписатьНачалоЭлемента("Object"); + ЗаписьXML.ЗаписатьАтрибут("Type", XMLСтрока(Стр.ПолноеИмяМетаданных)); + Если Стр.ВыборПериода Тогда + ЗаписьXML.ЗаписатьАтрибут("Sel_Period", XMLСтрока(Стр.ВыборПериода)); + Если ЗначениеЗаполнено(Стр.Период) Тогда + ЗаписьXML.ЗаписатьАтрибут("Beg_Period", XMLСтрока(Стр.Период.ДатаНачала)); + ЗаписьXML.ЗаписатьАтрибут("End_Period", XMLСтрока(Стр.Период.ДатаОкончания)); + КонецЕсли; + КонецЕсли; + ЗаписьXML.ЗаписатьАтрибут("F_String", XMLСтрока(Стр.ОтборСтрокой)); + Если Стр.Отбор.Элементы.Количество() > 0 Тогда + Для Каждого ЭлементОтбора Из Стр.Отбор.Элементы Цикл + ЗаписьXML.ЗаписатьНачалоЭлемента("Filter"); + ЗаписьXML.ЗаписатьАтрибут("Comp", XMLСтрока(СокрЛП(ЭлементОтбора.ВидСравнения))); + ЗаписьXML.ЗаписатьАтрибут("Present", XMLСтрока(СокрЛП(ЭлементОтбора.Представление))); + Если ЗначениеЗаполнено(ЭлементОтбора.ЛевоеЗначение) Тогда + ЗаписатьЗначениеОтбора(ЭлементОтбора.ЛевоеЗначение, "_L", ЗаписьXML) + КонецЕсли; + Если ЗначениеЗаполнено(ЭлементОтбора.ПравоеЗначение) Тогда + ЗаписатьЗначениеОтбора(ЭлементОтбора.ПравоеЗначение, "_R", ЗаписьXML) + КонецЕсли; + ЗаписьXML.ЗаписатьКонецЭлемента();//Filter + КонецЦикла; + КонецЕсли; + ЗаписьXML.ЗаписатьКонецЭлемента(); //Object + КонецЦикла; + ЗаписьXML.ЗаписатьКонецЭлемента(); //Objects + ЗаписьXML.Закрыть(); + АдресВХранилище = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ИмяВремФайла)); + УдалитьФайлы(ИмяВремФайла); + Возврат АдресВХранилище; +КонецФункции + +&НаСервере +Процедура ЗаписатьЗначениеОтбора(Знач ЭлементОтбора_Значение, Постфикс, ЗаписьXML) + ТипДанных = ТипЗнч(ЭлементОтбора_Значение); + ОбъектМетаданных = Метаданные.НайтиПоТипу(ТипДанных); + + Если ОбъектМетаданных <> Неопределено Тогда + ЗаписьXML.ЗаписатьАтрибут("Type" + Постфикс, ОбъектМетаданных.ПолноеИмя()); + Иначе + ЗаписьXML.ЗаписатьАтрибут("Type" + Постфикс, Строка(ТипДанных)); + КонецЕсли; + Если XMLТип(ТипДанных) <> Неопределено Тогда + ЗаписьXML.ЗаписатьАтрибут("Val" + Постфикс, XMLСтрока(ЭлементОтбора_Значение)); + Иначе + ЗаписьXML.ЗаписатьАтрибут("Val" + Постфикс, XMLСтрока(Строка(ЭлементОтбора_Значение))); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура УстановитьВидимость() + Элементы.ФормаПрервать.Видимость = Ложь; + // Вид операции. + Элементы.ВыгрузкаЗагрузка.ТекущаяСтраница = ?(ВидОперации = "Загрузка", Элементы.Загрузка, Элементы.Выгрузка); + // Ограниченный вариант использования обработки. + Если ЗначениеЗаполнено(ВариантОткрытияФормы) Тогда + Элементы.ФормаВключитьРасширенныеВозможности.Видимость = Ложь; + Элементы.ВидОперации.Видимость = Ложь; + Элементы.ПутьКМенеджеруОбменаЗагрузки.Видимость = Ложь; + Элементы.ГруппаДанныеДляЗагрузки.Видимость = Ложь; + Элементы.ИсточникЗагрузки.Видимость = Ложь; + Возврат; + КонецЕсли; + Если ВидОперации = "Выгрузка" Тогда + Элементы.УзелОбмена.Видимость = (РежимРазработчика И Объект.ИсточникВыгрузки = "Узел"); + Элементы.ГруппаНастройкиОтборов.Видимость = (Объект.ИсточникВыгрузки = "Отбор"); + Элементы.ТаблицаПравилВыгрузки.Видимость = (Объект.ИсточникВыгрузки = "Отбор"); + Элементы.ПутьКМенеджеруОбменаВыгрузки.Видимость = РежимРазработчика И НЕ РежимРаботы.МодельСервиса; + Элементы.ИсточникВыгрузки.Видимость = РежимРазработчика; + Элементы.МестоВыгрузки.Видимость = РежимРазработчика; + Элементы.РезультатВыгрузки.Видимость = МестоВыгрузки = 1; + Элементы.ПутьКФайлуВыгрузки.Видимость = МестоВыгрузки <> 1; + Элементы.ВыгрузкаОсновное.ОтображениеСтраниц = ?(МестоВыгрузки = 1, ОтображениеСтраницФормы.ЗакладкиСверху, ОтображениеСтраницФормы.Нет); + Иначе + Элементы.ПутьКМенеджеруОбменаЗагрузки.Видимость = РежимРазработчика И НЕ РежимРаботы.МодельСервиса; + Элементы.ИсточникЗагрузки.Видимость = РежимРазработчика; + Элементы.ГруппаДанныеДляЗагрузки.Видимость = (ИсточникЗагрузки = 1); + Элементы.ПутьКФайлуЗагрузки.Видимость = (ИсточникЗагрузки <> 1); + КонецЕсли; + Элементы.ФормаВключитьРасширенныеВозможности.Пометка = РежимРазработчика; +КонецПроцедуры + +&НаСервере +Процедура ОбновитьПравилаВыгрузкиНаСервере() + ОбработкаОбъект = РеквизитФормыВЗначение("Объект"); + ОбработкаОбъект.ЗаполнениеПравилВыгрузки(); + ЗначениеВРеквизитФормы(ОбработкаОбъект, "Объект"); +КонецПроцедуры + +&НаСервере +Функция КомпоновщикНастроекПоИмениТаблицы(ИмяТаблицы, Представление, Отбор) + ОбработкаОбъект = РеквизитФормыВЗначение("Объект"); + Возврат ОбработкаОбъект.КомпоновщикНастроекПоИмениТаблицы(ИмяТаблицы, Представление, Отбор, УникальныйИдентификатор); +КонецФункции + +&НаСервере +Функция ПредставлениеОтбора(Период, Отбор) + ОбработкаОбъект = РеквизитФормыВЗначение("Объект"); + Возврат ОбработкаОбъект.ПредставлениеОтбора(Период, Отбор); +КонецФункции + +&НаСервере +Процедура РедактированиеОтбораСтрокиДополнительныйСоставСервер(СтруктураВыбора, ПолноеИмяМД, ИДТекСтроки) + ДанныеДопРегистрации = Объект.ДополнительнаяРегистрация.НайтиСтроки( + Новый Структура("ПолноеИмяМетаданных", ПолноеИмяМД)); + ТекущиеДанные = Объект.ТаблицаПравилВыгрузки.НайтиПоИдентификатору(ИДТекСтроки); + Если ДанныеДопРегистрации.Количество() = 0 Тогда + Строка = Объект.ДополнительнаяРегистрация.Добавить(); + ЗаполнитьЗначенияСвойств(Строка, ТекущиеДанные,"ПолноеИмяМетаданных, Представление"); + СтрокаЗаполнения = Строка; + Иначе + СтрокаЗаполнения = ДанныеДопРегистрации[0]; + КонецЕсли; + + СтрокаЗаполнения.Период = СтруктураВыбора.ПериодДанных; + СтрокаЗаполнения.Отбор = СтруктураВыбора.КомпоновщикНастроек.Настройки.Отбор; + СтрокаЗаполнения.ОтборСтрокой = ПредставлениеОтбора(СтрокаЗаполнения.Период, СтрокаЗаполнения.Отбор); + + ТекущиеДанные.ПредставлениеОтбора = СтрокаЗаполнения.ОтборСтрокой; + ТекущиеДанные.Включить = Истина; +КонецПроцедуры + +&НаКлиенте +Процедура ТаблицаПравилВыгрузкиВключитьПриИзменении(Элемент) + ДанныеТекущейСтроки = Элементы.ТаблицаПравилВыгрузки.ТекущиеДанные; + Если ДанныеТекущейСтроки.ПолучитьЭлементы().Количество() > 0 Тогда + Для Каждого Стр Из ДанныеТекущейСтроки.ПолучитьЭлементы() Цикл + Стр.Включить = ДанныеТекущейСтроки.Включить; + КонецЦикла; + КонецЕсли; +КонецПроцедуры + +&НаСервере +Процедура ПутьКМенеджеруОбменаВыгрузкиПриИзмененииНаСервере() + ОбновитьПравилаВыгрузкиНаСервере(); +КонецПроцедуры + +&НаКлиенте +Процедура ВыбранФайл(ВыбранныеФайлы, ДополнительныеПараметры) Экспорт + Если ВыбранныеФайлы = Неопределено Тогда + Возврат; + КонецЕсли; + Если ДополнительныеПараметры.Свойство("ДляЗагрузки") Тогда + Если ДополнительныеПараметры.ДляЗагрузки Тогда + ПутьКФайлуЗагрузки = ВыбранныеФайлы[0]; + // Проверка существования файла. + Если ДополнительныеПараметры.ЗагружатьПослеВыбора Тогда + ЗагрузитьИзФайлаНаКлиенте(); + КонецЕсли; + Иначе + ПутьКФайлуВыгрузки = ВыбранныеФайлы[0]; + Если ДополнительныеПараметры.ВыгружатьПослеВыбора Тогда + ЗаписатьРезультатВыгрузкиВФайл(ДополнительныеПараметры.АдресХраненияРезультата); + КонецЕсли; + КонецЕсли; + ИначеЕсли ДополнительныеПараметры.Свойство("МодульМенеджера") Тогда + Объект[ДополнительныеПараметры.ИмяРеквизита] = ВыбранныеФайлы[0]; + Если ДополнительныеПараметры.ОбновлятьВыгрузку Тогда + ПутьКМенеджеруОбменаВыгрузкиПриИзмененииНаСервере(); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ЗагрузитьИзФайлаНаКлиенте() + АдресФайла = ""; + ДопПараметры = Новый Структура("ВидФайла", "ФайлДанныхДляЗагрузки"); + ОписаниеОповещения = Новый ОписаниеОповещения("ПоместитьФайлВХранилищеЗавершить", ЭтотОбъект, ДопПараметры); + ПомещаемыеФайлы = Новый Массив; + Интерактивно = Истина; + Если ЗначениеЗаполнено(ПутьКФайлуЗагрузки) Тогда + ОписаниеФайла = Новый ОписаниеПередаваемогоФайла(ПутьКФайлуЗагрузки); + Интерактивно = Ложь; + ПомещаемыеФайлы.Добавить(ОписаниеФайла); + КонецЕсли; + НачатьПомещениеФайлов(ОписаниеОповещения, ПомещаемыеФайлы,,Интерактивно, УникальныйИдентификатор); +КонецПроцедуры + +&НаКлиенте +Процедура СообщитьОбОкончанииОперации(Загрузка = Ложь) + ВывестиСообщенияФоновогоЗадания(); + ИдентификаторЗадания = Неопределено; + Элементы.ВыгрузкаЗагрузка.ТекущаяСтраница = ?(Загрузка, Элементы.Загрузка, Элементы.Выгрузка); + УстановитьВидимостьДоступностьКнопок(Истина); + Сообщение = Новый СообщениеПользователю(); + Если Загрузка Тогда + Сообщение.Текст = НСтр("ru = 'Загрузка данных завершена.'"); + Иначе + Сообщение.Текст = НСтр("ru = 'Выгрузка данных завершена.'"); + КонецЕсли; + Сообщение.Сообщить(); +КонецПроцедуры + +// Возвращает ссылку на общий модуль по имени. +// +// Параметры: +// Имя - Строка - имя общего модуля, например: +// "ОбщегоНазначения", +// "ОбщегоНазначенияКлиент". +// +// Возвращаемое значение: +// ОбщийМодуль. +// +&НаКлиентеНаСервереБезКонтекста +Функция ОбщийМодуль(Имя) + +#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда + Если Метаданные.ОбщиеМодули.Найти(Имя) <> Неопределено Тогда + Модуль = Вычислить(Имя); + Иначе + Модуль = Неопределено; + КонецЕсли; + + Если ТипЗнч(Модуль) <> Тип("ОбщийМодуль") Тогда + ВызватьИсключение СтроковыеФункцииКлиентСервер.ВставитьПараметрыВСтроку(НСтр("ru = 'Общий модуль ""%1"" не найден.'"), Имя); + КонецЕсли; +#Иначе + Модуль = Вычислить(Имя); +#Если НЕ ВебКлиент Тогда + Если ТипЗнч(Модуль) <> Тип("ОбщийМодуль") Тогда + ВызватьИсключение СтроковыеФункцииКлиентСервер.ВставитьПараметрыВСтроку(НСтр("ru = 'Общий модуль ""%1"" не найден.'"), Имя); + КонецЕсли; +#КонецЕсли +#КонецЕсли + + Возврат Модуль; + +КонецФункции + +&НаКлиенте +Процедура УстановитьВидимостьДоступностьКнопок(ФлагДоступность) + Элементы.ГруппаВерхняя.Видимость = ФлагДоступность; + Элементы.ФормаВыполнитьОперацию.Видимость = ФлагДоступность; + Элементы.ФормаВключитьРасширенныеВозможности.Доступность = ФлагДоступность; + Элементы.ФормаПрервать.Видимость = НЕ ФлагДоступность И НЕ ЭтоВнешняяОбработка; + ЭтаФорма.ОбновитьОтображениеДанных(); +КонецПроцедуры + +&НаКлиенте +Процедура ВывестиСообщенияФоновогоЗадания() + Если НЕ ЗначениеЗаполнено(МассивСообщений) Тогда + МассивСообщений = ПрочитатьСообщенияФоновогоЗадания(ИдентификаторЗадания); + КонецЕсли; + Если ЗначениеЗаполнено(МассивСообщений) Тогда + Для Каждого ТекСообщение Из МассивСообщений Цикл + Если СтрНачинаетсяС(ТекСообщение.Текст,"{") Тогда + Продолжить; + КонецЕсли; + ТекСообщение.Сообщить(); + КонецЦикла; + КонецЕсли; +КонецПроцедуры + +&НаСервереБезКонтекста +Функция ПрочитатьСообщенияФоновогоЗадания(Идентификатор) + Если НЕ ЗначениеЗаполнено(Идентификатор) Тогда + Возврат Неопределено; + КонецЕсли; + Задание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(Идентификатор); + Если Задание = Неопределено Тогда + Возврат Неопределено; + КонецЕсли; + + Возврат Задание.ПолучитьСообщенияПользователю(Истина); +КонецФункции + +&НаСервере +Процедура ПрерватьВыгрузкуЗагрузкуСервер() + МодульДлительныеОперации = ОбщийМодуль("ДлительныеОперации"); + МодульДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторЗадания); +КонецПроцедуры +#КонецОбласти diff --git a/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Help/ru.html b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Help/ru.html new file mode 100644 index 000000000..e73c245fb --- /dev/null +++ b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Help/ru.html @@ -0,0 +1,21 @@ + +

        Выгрузка и загрузка данных EnterpriseData

        +

        Обработка предназначена для выгрузки и загрузки данных с использованием универсального формата EnterpriseData. Предназначена для использования в информационных базах, поддерживающих синхронизацию данных через универсальный формат.

        +

        Работа обработки, встроенной в конфигурацию

        +

        Обработка, поставляемая в составе конфигурации, работает только в режиме загрузки данных.

        +

        Для загрузки данных необходимо указать путь к файлу, содержащему данные для загрузки, и нажать кнопку Выполнить.

        +

        Для выгрузки данных, а также использования дополнительных возможностей следует использовать внешнюю версию данной обработки, входящую в состав поставки.

        +

        Упрощенный режим работы

        +

        Для выгрузки данных необходимо:

        +
        1. Указать Путь к файлу выгрузки, в который будут выгружены данные +
        2. Указать Версию формата, в которой необходимо выгрузить данные +
        3. Настроить состав выгружаемых данных: +
          1. Выбрать объекты метаданных +
          2. При необходимости указать отбор по периоду для документов +
          3. При необходимости настроить произвольные отборы для справочников и документов
        4. Выполненные настройки отборов можно сохранить в файл и использовать при следующих сеансах работы (кнопки Сохранить настройки и Восстановить настройки).

         

        +

        Для загрузки данных необходимо указать путь к файлу, содержащему данные для загрузки

        +

        Режим разработчика

        +

        Режим можно включить с помощью кнопки Еще. Предоставляет следующие дополнительные возможности:

        +
        1. Выгрузка и загрузка данных из текста. В этом случае в качестве источника и получателя данных служит не файл, а текстовое поле расположенное на форме. Данный режим удобен, если данных немного, и результат выгрузки удобно перенести в обработку загрузки через буфер обмена. +
        2. Использование внешних модулей обмена через универсальный формат. Для этих целей следует указать путь к внешней обработке, в модуле которой расположен внешний модуль менеджера обмена. +
        3. Выгрузка данных, зарегистрированных на узле плана обмена. Для этих целей следует указать Узел обмена при выгрузке. В этом случае настройки состава выгружаемых данных и настройка отбора недоступны.
        \ No newline at end of file diff --git a/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/ObjectModule.bsl b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/ObjectModule.bsl new file mode 100644 index 000000000..87d4fca37 --- /dev/null +++ b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/ObjectModule.bsl @@ -0,0 +1,945 @@ +#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда +#Область СлужебныеПроцедурыИФункции + +// Выполняет подготовку структуры КомпонентыОбмена. +// Параметры: +// НаправлениеОбмена - Строка - Отправка или Получение. +// ВерсияФорматаОбменаПриЗагрузке - Строка - Версия формата, которая должна применяться при загрузке данных. +// +// Возвращаемое значение: +// Структура - Компоненты обмена. +// +Функция КомпонентыОбмена(НаправлениеОбмена, ВерсияФорматаОбменаПриЗагрузке = "") + + КомпонентыОбмена = ОбменДаннымиXDTOСервер.ИнициализироватьКомпонентыОбмена(НаправлениеОбмена); + ТекВерсияФормата = ?(НаправлениеОбмена = "Отправка", ВерсияФормата, ВерсияФорматаОбменаПриЗагрузке); + Если ЗначениеЗаполнено(УзелОбмена) И НаправлениеОбмена = "Отправка" Тогда + КомпонентыОбмена.ЭтоОбменЧерезПланОбмена = Истина; + КомпонентыОбмена.УзелКорреспондента = УзелОбмена; + КомпонентыОбмена.ТаблицаПравилаРегистрацииОбъектов = ОбменДаннымиXDTOСервер.ПравилаРегистрацииОбъектов(УзелОбмена); + КомпонентыОбмена.СвойстваУзлаПланаОбмена = ОбменДаннымиXDTOСервер.СвойстваУзлаПланаОбмена(УзелОбмена); + Иначе + КомпонентыОбмена.ЭтоОбменЧерезПланОбмена = Ложь; + КонецЕсли; + КомпонентыОбмена.КлючСообщенияЖурналаРегистрации = НСтр("ru = 'Перенос данных через буфер обмена'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); + КомпонентыОбмена.ВерсияФорматаОбмена = ВерсияФормата; + КомпонентыОбмена.XMLСхема = "http://v8.1c.ru/edi/edi_stnd/EnterpriseData/" + ТекВерсияФормата; + + РежимРаботы = ОбщегоНазначенияПовтИсп.РежимРаботыПрограммы(); + РежимРаботы = Новый ФиксированнаяСтруктура(РежимРаботы); + МенеджерОбменаВнутренний = Ложь; + Если РежимРаботы.МодельСервиса Тогда + МенеджерОбменаВнутренний = Истина; + ИначеЕсли НаправлениеОбмена = "Отправка" И ЗначениеЗаполнено(ПутьКМенеджеруОбменаВыгрузки) Тогда + Попытка + КомпонентыОбмена.МенеджерОбмена = ВнешниеОбработки.Создать(ПутьКМенеджеруОбменаВыгрузки); + Исключение + ПутьКМенеджеруОбменаВыгрузки = ""; + МенеджерОбменаВнутренний = Истина; + КонецПопытки; + ИначеЕсли НаправлениеОбмена = "Получение" И ЗначениеЗаполнено(ПутьКМенеджеруОбменаЗагрузки) Тогда + Попытка + КомпонентыОбмена.МенеджерОбмена = ВнешниеОбработки.Создать(ПутьКМенеджеруОбменаЗагрузки); + Исключение + ПутьКМенеджеруОбменаЗагрузки = ""; + МенеджерОбменаВнутренний = Истина; + КонецПопытки; + ИначеЕсли ЗначениеЗаполнено(УзелОбмена) Тогда + ПутьКМенеджеруОбмена = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(УзелОбмена, "ПутьКМенеджеруОбмена"); + Если ЗначениеЗаполнено(ПутьКМенеджеруОбмена) Тогда + КомпонентыОбмена.МенеджерОбмена = ВнешниеОбработки.Создать(ПутьКМенеджеруОбмена); + Иначе + МенеджерОбменаВнутренний = Истина; + КонецЕсли; + Иначе + МенеджерОбменаВнутренний = Истина; + КонецЕсли; + Если МенеджерОбменаВнутренний Тогда + ВерсииФорматаОбмена = Новый Соответствие; + ОбменДаннымиПереопределяемый.ПриПолученииДоступныхВерсийФормата(ВерсииФорматаОбмена); + КомпонентыОбмена.МенеджерОбмена = ВерсииФорматаОбмена.Получить(ТекВерсияФормата); + Если КомпонентыОбмена.МенеджерОбмена = Неопределено Тогда + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не поддерживается версия формата обмена: <%1>.'"), ТекВерсияФормата); + КонецЕсли; + КонецЕсли; + + ОбменДаннымиXDTOСервер.ИнициализироватьТаблицыПравилОбмена(КомпонентыОбмена); + + Возврат КомпонентыОбмена; + +КонецФункции + +// Выполняет выгрузку данных в соответствии с настройками. +// Параметры: +// СтруктураПараметров - Структура - Параметры выполнения обработки +// * МестоВыгрузки - Число - 0 (в файл), 1 (в текст). +// При запуске из фонового задания в структуре содержатся данные для заполнения реквизитов объекта. +// +// Возвращаемое значение: +// Строка - Адрес во временном хранилище, куда помещен результат выгрузки. +Функция РезультатВыгрузкиВXML(СтруктураПараметров, АдресДляРазмещенияРезультата = Неопределено) Экспорт + МестоВыгрузки = СтруктураПараметров.МестоВыгрузки; + Если СтруктураПараметров.Свойство("ЭтоФоновоеЗадание") Тогда + ЗаполнитьЗначенияСвойств(ЭтотОбъект, СтруктураПараметров); + КонецЕсли; + + КомпонентыОбмена = КомпонентыОбмена("Отправка"); + + ПараметрыКонвертации = КомпонентыОбмена.ПараметрыКонвертации; + Если ПараметрыКонвертации.Свойство("ВыгружатьАналитикуПоСкладам") Тогда + ПараметрыКонвертации.ВыгружатьАналитикуПоСкладам = Истина; + КонецЕсли; + // Открываем файл обмена. + ОбменДаннымиXDTOСервер.ОткрытьФайлВыгрузки(КомпонентыОбмена); + СписокДополнениеКВыгрузке.Очистить(); + ЗаполнитьСписокОбъектовКВыгрузке(); + ЕстьВыгруженныеОбъекты = Ложь; + Если ЗначениеЗаполнено(УзелОбмена) Тогда + СоставПланаОбмена = УзелОбмена.Метаданные().Состав; + ТекстЗапроса = "ВЫБРАТЬ + | ТаблицаИзменений.Ссылка + |ИЗ + | #ПолноеИмя#.Изменения КАК ТаблицаИзменений + |ГДЕ ТаблицаИзменений.Узел = &Узел "; + Для Каждого ЭлементСостава Из СоставПланаОбмена Цикл + Если НЕ ОбщегоНазначения.ЭтоОбъектСсылочногоТипа(ЭлементСостава.Метаданные) Тогда + Продолжить; + КонецЕсли; + ПолноеИмяОбъекта = ЭлементСостава.Метаданные.ПолноеИмя(); + ПравилоОбработки = КомпонентыОбмена.ПравилаОбработкиДанных.Найти(ЭлементСостава.Метаданные, "ОбъектВыборкиМетаданные"); + Если ПравилоОбработки = Неопределено Тогда + Продолжить; + КонецЕсли; + + Запрос = Новый Запрос; + Запрос.Текст = СтрЗаменить(ТекстЗапроса, "#ПолноеИмя#", ПолноеИмяОбъекта); + Запрос.УстановитьПараметр("Узел", УзелОбмена); + Выборка = Запрос.Выполнить().Выбрать(); + Пока Выборка.Следующий() Цикл + ОбменДаннымиXDTOСервер.ВыгрузкаОбъектаВыборки(КомпонентыОбмена, Выборка.Ссылка.ПолучитьОбъект(), ПравилоОбработки); + ЕстьВыгруженныеОбъекты = Истина; + КонецЦикла; + КонецЦикла; + КонецЕсли; + Если СписокДополнениеКВыгрузке.Количество() > 0 Тогда + Для Каждого ЭлементСписка Из СписокДополнениеКВыгрузке Цикл + СсылкаВыгрузки = ЭлементСписка.Значение; + ПравилоОбработки = КомпонентыОбмена.ПравилаОбработкиДанных.Найти(СсылкаВыгрузки.Метаданные(), "ОбъектВыборкиМетаданные"); + Если ПравилоОбработки = Неопределено Тогда + Продолжить; + КонецЕсли; + ОбменДаннымиXDTOСервер.ВыгрузкаОбъектаВыборки(КомпонентыОбмена, СсылкаВыгрузки.ПолучитьОбъект(), ПравилоОбработки); + ЕстьВыгруженныеОбъекты = Истина; + КонецЦикла; + КонецЕсли; + Если КомпонентыОбмена.ФлагОшибки Тогда + ТекстСообщения = НСтр("ru='В ходе выполнения операции возникли ошибки'") + ": " + Символы.ПС + КомпонентыОбмена.СтрокаСообщенияОбОшибке; + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения); + ИначеЕсли НЕ ЕстьВыгруженныеОбъекты Тогда + ТекстСообщения = НСтр("ru='Не найдено ни одного объекта к выгрузке.'"); + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения); + КонецЕсли; + РезультатВыгрузки = КомпонентыОбмена.ФайлОбмена.Закрыть(); + РезультатВыгрузки = РезультатВыгрузки + Символы.ПС + "" + Символы.ПС + ""; + Если МестоВыгрузки = 0 Тогда + // в файл + ТХ = Новый ТекстовыйДокумент; + ТХ.УстановитьТекст(РезультатВыгрузки); + АдресНаСервере = ПолучитьИмяВременногоФайла("xml"); + ТХ.Записать(АдресНаСервере); + Если АдресДляРазмещенияРезультата = Неопределено Тогда + АдресХранения = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(АдресНаСервере)); + Иначе + ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(АдресНаСервере), АдресДляРазмещенияРезультата); + АдресХранения = АдресДляРазмещенияРезультата; + КонецЕсли; + УдалитьФайлы(АдресНаСервере); + Иначе + // в текст + Если АдресДляРазмещенияРезультата = Неопределено Тогда + АдресХранения = ПоместитьВоВременноеХранилище(РезультатВыгрузки); + Иначе + ПоместитьВоВременноеХранилище(РезультатВыгрузки, АдресДляРазмещенияРезультата); + АдресХранения = АдресДляРазмещенияРезультата; + КонецЕсли; + КонецЕсли; + Возврат АдресХранения; +КонецФункции + +// Выполняет загрузку сообщения. +// Параметры: +// СтруктураПараметров - Структура +// * ТекстXML - Строка - сообщение которое следует загрузить (в случае загрузки из текста). +// * АдресНаСервере - Строка - Имя временного файла с данными для загрузки (при загрузке из файла) +// АдресРезультата - Строка - Адрес для размещения результата, при запуске из фонового задания. +Процедура ЗагрузкаСообщения(СтруктураПараметров, АдресРезультата) Экспорт + Если СтруктураПараметров.Свойство("ЭтоФоновоеЗадание") Тогда + ЗаполнитьЗначенияСвойств(ЭтотОбъект, СтруктураПараметров); + КонецЕсли; + + ЧтениеXML = Новый ЧтениеXML; + + АдресНаСервере = ""; + Если СтруктураПараметров.Свойство("АдресНаСервере") Тогда + ЧтениеXML.ОткрытьФайл(СтруктураПараметров.АдресНаСервере); + Иначе + ЧтениеXML.УстановитьСтроку(СтруктураПараметров.ТекстXML); + КонецЕсли; + ЧтениеXML.Прочитать(); // Message + ЧтениеXML.Прочитать(); // Header + Header = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML, ФабрикаXDTO.Тип("http://www.1c.ru/SSL/Exchange/Message", "Header")); + Если ЧтениеXML.ТипУзла <> ТипУзлаXML.НачалоЭлемента + Или ЧтениеXML.ЛокальноеИмя <> "Body" Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru='Ошибка чтения сообщения загрузки. Неверный формат сообщения.'")); + Если ЗначениеЗаполнено(АдресНаСервере) Тогда + УдалитьФайлы(АдресНаСервере); + КонецЕсли; + Возврат; + КонецЕсли; + + ФорматОбмена = РазложитьФорматОбмена(Header.Format); + ВерсияФорматаДляЗагрузки = ФорматОбмена.Версия; + КомпонентыОбмена = КомпонентыОбмена("Получение", ВерсияФорматаДляЗагрузки); + КомпонентыОбмена.XMLСхема = Header.Format; + + + ЧтениеXML.Прочитать(); // Body + КомпонентыОбмена.Вставить("ФайлОбмена", ЧтениеXML); + + ОбменДаннымиXDTOСервер.ПроизвестиЧтениеДанных(КомпонентыОбмена); + + ЧтениеXML.Закрыть(); + Если ЗначениеЗаполнено(АдресНаСервере) Тогда + УдалитьФайлы(АдресНаСервере); + КонецЕсли; + Если КомпонентыОбмена.ФлагОшибки Тогда + ТекстСообщения = НСтр("ru='В ходе выполнения операции возникли ошибки'") + ": " + Символы.ПС + КомпонентыОбмена.СтрокаСообщенияОбОшибке; + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения); + КонецЕсли; + +КонецПроцедуры + +// Заполняет перечень доступных к выгрузке объектов метаданных в соответствии с компонентами обмена. +Процедура ЗаполнениеПравилВыгрузки() Экспорт + КомпонентыОбмена = КомпонентыОбмена("Отправка"); + ТаблицаПравилВыгрузки.Строки.Очистить(); + УзелДереваСправочники = ТаблицаПравилВыгрузки.Строки.Добавить(); + УзелДереваСправочники.ЭтоГруппа = Истина; + УзелДереваСправочники.Наименование = НСтр("ru='Справочники'"); + + УзелДереваДокументы = ТаблицаПравилВыгрузки.Строки.Добавить(); + УзелДереваДокументы.ЭтоГруппа = Истина; + УзелДереваДокументы.Наименование = НСтр("ru='Документы'"); + + УзелДереваПВХ = ТаблицаПравилВыгрузки.Строки.Добавить(); + УзелДереваПВХ.ЭтоГруппа = Истина; + УзелДереваПВХ.Наименование = НСтр("ru='Планы видов характеристик'"); + + Для Каждого СтрокаПОД Из КомпонентыОбмена.ПравилаОбработкиДанных Цикл + ТекМД = СтрокаПОД.ОбъектВыборкиМетаданные; + Если ТекМД = Неопределено Тогда + Продолжить; + КонецЕсли; + + ТекИмя = ТекМД.Имя; + ТекСиноним = ТекМД.Синоним; + ПолноеИмяМДСтрокой = ""; + НовСтрока = Неопределено; + Если Метаданные.Справочники.Содержит(ТекМД) Тогда + НовСтрока = УзелДереваСправочники.Строки.Добавить(); + ПолноеИмяМДСтрокой = "Справочник." + ТекИмя; + Представление = НСтр("ru='Справочник %1'"); + ИначеЕсли Метаданные.Документы.Содержит(ТекМД) Тогда + НовСтрока = УзелДереваДокументы.Строки.Добавить(); + ПолноеИмяМДСтрокой = "Документ." + ТекИмя; + Представление = НСтр("ru='Документ %1'"); + ИначеЕсли Метаданные.ПланыВидовХарактеристик.Содержит(ТекМД) Тогда + НовСтрока = УзелДереваПВХ.Строки.Добавить(); + ПолноеИмяМДСтрокой = "ПланВидовХарактеристик." + ТекИмя; + Представление = НСтр("ru='План видов характеристик %1'"); + Иначе + // Выгрузка других объектов метаданных не поддерживается. + Продолжить; + КонецЕсли; + Представление = СтрЗаменить(Представление, "%1", ТекСиноним); + НовСтрока.ЭтоГруппа = Ложь; + НовСтрока.Наименование = ТекСиноним; + НовСтрока.ПолноеИмяМетаданных = ПолноеИмяМДСтрокой; + НовСтрока.Представление = Представление; + СтруктураОтбор = Новый Структура("ПолноеИмяМетаданных", ПолноеИмяМДСтрокой); + НастройкиОтбора = ДополнительнаяРегистрация.НайтиСтроки(СтруктураОтбор); + НовСтрока.ПредставлениеОтбора = ""; + Если НастройкиОтбора.Количество() > 0 Тогда + НовСтрока.Включить = Истина; + Для Каждого ТекНастройка Из НастройкиОтбора Цикл + Если ЗначениеЗаполнено(ТекНастройка.ОтборСтрокой) Тогда + НовСтрока.ПредставлениеОтбора = НовСтрока.ПредставлениеОтбора + ", "+ СокрЛП(ТекНастройка.ОтборСтрокой); + КонецЕсли; + КонецЦикла; + КонецЕсли; + КонецЦикла; + // Удалим лишние ветки + Если УзелДереваСправочники.Строки.Количество() = 0 Тогда + ТаблицаПравилВыгрузки.Строки.Удалить(УзелДереваСправочники); + КонецЕсли; + Если УзелДереваДокументы.Строки.Количество() = 0 Тогда + ТаблицаПравилВыгрузки.Строки.Удалить(УзелДереваДокументы); + КонецЕсли; + Если УзелДереваПВХ.Строки.Количество() = 0 Тогда + ТаблицаПравилВыгрузки.Строки.Удалить(УзелДереваПВХ); + КонецЕсли; +КонецПроцедуры + +// Возвращает компоновщик для отборов одного вида метаданных. +// +// Параметры: +// ПолноеИмяМетаданных - Строка - имя таблицы для построения компоновщика. Возможно там будут +// идентификаторы для "всех документов" или "всех справочников" +// или ссылка на группу. +// Представление - Строка - представление объекта в отборе. +// Отбор - ОтборКомпоновкиДанных - отбор компоновки для заполнения. +// АдресСохраненияСхемы - Строка, УникальныйИдентификатор - адрес временного хранилища для сохранения схемы +// компоновки. +// +// Возвращаемое значение: +// КомпоновщикНастроекКомпоновкиДанных - инициализированный компоновщик. +// +Функция КомпоновщикНастроекПоИмениТаблицы(ПолноеИмяМетаданных, Представление = Неопределено, Отбор = Неопределено, АдресСохраненияСхемы = Неопределено) Экспорт + + СхемаКомпоновки = Новый СхемаКомпоновкиДанных; + + Источник = СхемаКомпоновки.ИсточникиДанных.Добавить(); + Источник.Имя = "Источник"; + Источник.ТипИсточникаДанных = "local"; + + ДобавляемыеТаблицы = СоставУкрупненнойГруппыМетаданных(ПолноеИмяМетаданных); + + Для Каждого ИмяТаблицы Из ДобавляемыеТаблицы Цикл + ДобавитьНаборВСхемуКомпоновки(СхемаКомпоновки, ИмяТаблицы, Представление); + КонецЦикла; + + Компоновщик = Новый КомпоновщикНастроекКомпоновкиДанных; + Компоновщик.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных( + ПоместитьВоВременноеХранилище(СхемаКомпоновки, АдресСохраненияСхемы))); + + Если Отбор <> Неопределено Тогда + ДобавитьЗначенияОтбораКомпоновки(Компоновщик.Настройки.Отбор.Элементы, Отбор.Элементы); + Компоновщик.Восстановить(СпособВосстановленияНастроекКомпоновкиДанных.ПроверятьДоступность); + КонецЕсли; + + Возврат Компоновщик; +КонецФункции + +// Возвращает массив имен таблиц метаданных по составному типу параметра "ПолноеИмяМетаданных". +// +// Параметры: +// ПолноеИмяМетаданных - Строка, ДеревоЗначений- имя таблицы (например "Справочник.Валюты") или имя +// предопределенной группы +// (например "ВсеДокументы") или дерево значений, описывающее группу. +// +// Возвращаемое значение: +// Массив - имена метаданных. +// +Функция СоставУкрупненнойГруппыМетаданных(ПолноеИмяМетаданных) + ОбходМетаданных = Ложь; + ТаблицыСостава = Новый Массив; + Если ТипЗнч(ПолноеИмяМетаданных) <> Тип("Строка") Тогда + // Дерево значений с группой отбора. Корень - описание, в строках - имена метаданных. + Для Каждого СтрокаГруппы Из ПолноеИмяМетаданных.Строки Цикл + Для Каждого СтрокаСоставаГруппы Из СтрокаГруппы.Строки Цикл + ТаблицыСостава.Добавить(СтрокаСоставаГруппы.ПолноеИмяМетаданных); + КонецЦикла; + КонецЦикла; + + ИначеЕсли ПолноеИмяМетаданных = "ВсеДокументы" Тогда + ОбходМетаданных = Истина; + МетаОбъекты = Метаданные.Документы; + ИначеЕсли ПолноеИмяМетаданных = "ВсеСправочники" Тогда + ОбходМетаданных = Истина; + МетаОбъекты = Метаданные.Справочники; + ИначеЕсли ПолноеИмяМетаданных = "ВсеПланыВидовХарактеристик" Тогда + ОбходМетаданных = Истина; + МетаОбъекты = Метаданные.ПланыВидовХарактеристик; + Иначе + // Одиночная таблица метаданных. + ТаблицыСостава.Добавить(ПолноеИмяМетаданных); + КонецЕсли; + Если ОбходМетаданных Тогда + Для Каждого МетаОбъект Из МетаОбъекты Цикл + ТаблицыСостава.Добавить(МетаОбъект.ПолноеИмя()); + КонецЦикла; + КонецЕсли; + + Возврат ТаблицыСостава; +КонецФункции + +// Возвращает описание периода и отбора строкой. +// +// Параметры: +// Период - СтандартныйПериод - период для описания отбора. +// Отбор - ОтборКомпоновкиДанных - отбор компоновки данных для описания. +// ОписаниеПустогоОтбора - Строка - значение, возвращаемое в случае пустого отбора. +// Возвращаемое значение: +// Строка - строковое представление отбора. +Функция ПредставлениеОтбора(Период, Отбор, Знач ОписаниеПустогоОтбора = Неопределено) Экспорт + НашОтбор = ?(ТипЗнч(Отбор)=Тип("КомпоновщикНастроекКомпоновкиДанных"), Отбор.Настройки.Отбор, Отбор); + + ПериодСтрокой = ?(ЗначениеЗаполнено(Период), Строка(Период), ""); + ОтборСтрокой = Строка(НашОтбор); + + Если ПустаяСтрока(ОтборСтрокой) Тогда + Если ОписаниеПустогоОтбора=Неопределено Тогда + ОтборСтрокой = НСтр("ru='Все объекты'"); + Иначе + ОтборСтрокой = ОписаниеПустогоОтбора; + КонецЕсли; + КонецЕсли; + + Если Не ПустаяСтрока(ПериодСтрокой) Тогда + ОтборСтрокой = ПериодСтрокой + ", " + ОтборСтрокой; + КонецЕсли; + + Возврат ОтборСтрокой; +КонецФункции + +// Добавляет отбор в конец отбора с возможной коррекцией полей. +// +// Параметры: +// ЭлементыПриемника - КоллекцияЭлементовОтбораКомпоновкиДанных - приемник. +// ЭлементыИсточника - КоллекцияЭлементовОтбораКомпоновкиДанных - источник. +// СоответствиеПолей - Соответствие - данные для коррекции полей. +// Ключ - исходный путь к данным поля, Значение - путь +// для результата. Например для замены полей типа. +// "Ссылка.Наименование" -> "ОбъектСсылка.Наименование" +// надо передать Новый Структура("Ссылка", "ОбъектСсылка"). +// +Процедура ДобавитьЗначенияОтбораКомпоновки(ЭлементыПриемника, ЭлементыИсточника, СоответствиеПолей = Неопределено) + + Для Каждого Элемент Из ЭлементыИсточника Цикл + + Тип=ТипЗнч(Элемент); + ЭлементОтбора = ЭлементыПриемника.Добавить(Тип); + ЗаполнитьЗначенияСвойств(ЭлементОтбора, Элемент); + Если Тип=Тип("ГруппаЭлементовОтбораКомпоновкиДанных") Тогда + ДобавитьЗначенияОтбораКомпоновки(ЭлементОтбора.Элементы, Элемент.Элементы, СоответствиеПолей); + + ИначеЕсли СоответствиеПолей<>Неопределено Тогда + ИсходноеПолеСтрокой = Элемент.ЛевоеЗначение; + Для Каждого КлючЗначение Из СоответствиеПолей Цикл + КонтрольНовое = НРег(КлючЗначение.Ключ); + ДлинаКонтроля = 1 + СтрДлина(КонтрольНовое); + КонтрольИсходного = НРег(Лев(ИсходноеПолеСтрокой, ДлинаКонтроля)); + Если КонтрольИсходного=КонтрольНовое Тогда + ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(КлючЗначение.Значение); + Прервать; + ИначеЕсли КонтрольИсходного=КонтрольНовое + "." Тогда + ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(КлючЗначение.Значение + Сред(ИсходноеПолеСтрокой, ДлинаКонтроля)); + Прервать; + КонецЕсли; + КонецЦикла; + + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры + +// Готовит список объектов, подлежащих выгрузке в соответствии с настройками. +Процедура ЗаполнитьСписокОбъектовКВыгрузке() + УстановитьПривилегированныйРежим(Истина); + // Объекты обрабатываются порциями. + // Отдельно - объекты без настроек отбора. + // Отдельно - объекты с настройками отбора. + МассивМетаданныхБезОтборов = Новый Массив; + МассивМетаданныхОтборПоПериоду = Новый Массив; + Для Каждого Строка Из ДополнительнаяРегистрация Цикл + ПолноеИмяМетаданных = Строка.ПолноеИмяМетаданных; + Если Строка.Отбор.Элементы.Количество() = 0 Тогда + Если Строка.ВыборПериода И ЗначениеЗаполнено(ПериодОтбораВсехДокументов) Тогда + МассивМетаданныхБезОтборов.Добавить(ПолноеИмяМетаданных); + Иначе + МассивМетаданныхОтборПоПериоду.Добавить(ПолноеИмяМетаданных); + КонецЕсли; + Иначе + МассивОтбор = Новый Массив; + МассивОтбор.Добавить(ПолноеИмяМетаданных); + ДополнитьСписокОбъектовКВыгрузке(МассивОтбор); + КонецЕсли; + КонецЦикла; + Если МассивМетаданныхБезОтборов.Количество() > 0 Тогда + ДополнитьСписокОбъектовКВыгрузке(МассивМетаданныхБезОтборов); + КонецЕсли; + Если МассивМетаданныхОтборПоПериоду.Количество() > 0 Тогда + ДополнитьСписокОбъектовКВыгрузке(МассивМетаданныхОтборПоПериоду); + КонецЕсли; +КонецПроцедуры + +// Возвращает расширенное представление объекта. +// Параметры: +// ПараметрОбъект - Произвольный - строка с полным именем объекта метаданных или объект метаданных. +// Возвращаемое значение: +// Строка - представление объекта. +// +Функция ПредставлениеОбъекта(ПараметрОбъект) + + Если ПараметрОбъект = Неопределено Тогда + Возврат ""; + КонецЕсли; + МетаданныеОбъекта = ?(ТипЗнч(ПараметрОбъект) = Тип("Строка"), Метаданные.НайтиПоПолномуИмени(ПараметрОбъект), ПараметрОбъект); + + // Реквизитов представления может не быть, обходим через структуру. + Представление = Новый Структура("РасширенноеПредставлениеОбъекта, ПредставлениеОбъекта"); + ЗаполнитьЗначенияСвойств(Представление, МетаданныеОбъекта); + Если Не ПустаяСтрока(Представление.РасширенноеПредставлениеОбъекта) Тогда + Возврат Представление.РасширенноеПредставлениеОбъекта; + ИначеЕсли Не ПустаяСтрока(Представление.ПредставлениеОбъекта) Тогда + Возврат Представление.ПредставлениеОбъекта; + КонецЕсли; + + Возврат МетаданныеОбъекта.Представление(); +КонецФункции + +// Устанавливает наборы данных в схему и инициализирует компоновщик. +// Опирается на значения реквизитов: +// "ДополнительнаяРегистрация", "ПериодОтбораВсехДокументов", "КомпоновщикОтбораВсехДокументов". +// +// Параметры: +// СписокИменМетаданных - Массив - имена метаданных (деревья значений группы ограничений, служебных +// идентификаторов +// "все документов" или "все НСИ"), для которых будет построена схема. +// Если не указано, то для всего состава узла. +// +// АдресСохраненияСхемы - Строка, УникальныйИдентификатор - адрес временного хранилища для сохранения схемы +// компоновки. +// +// Возвращаемое значение: +// Структура - поля: +// * ТаблицаМетаданныхСоставаУзла - ТаблицаЗначений - описание состава узла. +// * СхемаКомпоновки - СхемаКомпоновкиДанных - инициированное значение. +// * КомпоновщикНастроек - КомпоновщикНастроекКомпоновкиДанных - инициированное значение. +// +Функция ИнициализироватьКомпоновщик(СписокИменМетаданных = Неопределено, АдресСохраненияСхемы = Неопределено) + + СхемаКомпоновки = ПолучитьМакет("СхемаКомпоновкиДанных"); + ИсточникДанных = СхемаКомпоновки.ИсточникиДанных[0].Имя; + + // Наборы для каждого нужного вида метаданных. + ЭлементыНабораИзменения = СхемаКомпоновки.НаборыДанных.РегистрацияИзменений.Элементы; + Пока ЭлементыНабораИзменения.Количество() > 1 Цикл + // [0] - Описание полей + ЭлементыНабораИзменения.Удалить(ЭлементыНабораИзменения[1]); + КонецЦикла; + ТаблицаДополнительныхИзменений = ДополнительнаяРегистрация; + + // Дополнительные изменения + Для Каждого Строка Из ТаблицаДополнительныхИзменений Цикл + ПолноеИмяМетаданных = Строка.ПолноеИмяМетаданных; + Если СписокИменМетаданных <> Неопределено Тогда + Если СписокИменМетаданных.Найти(ПолноеИмяМетаданных) = Неопределено Тогда + Продолжить; + КонецЕсли; + КонецЕсли; + + ДобавляемыеТаблицы = СоставУкрупненнойГруппыМетаданных(ПолноеИмяМетаданных); + Для Каждого ИмяДобавляемойТаблицы Из ДобавляемыеТаблицы Цикл + ИмяНабора = "Дополнительно_" + СтрЗаменить(ИмяДобавляемойТаблицы, ".", "_"); + Набор = ЭлементыНабораИзменения.Добавить(Тип("НаборДанныхЗапросСхемыКомпоновкиДанных")); + Набор.ИсточникДанных = ИсточникДанных; + Набор.АвтоЗаполнениеДоступныхПолей = Истина; + Набор.Имя = ИмяНабора; + + Набор.Запрос = " + |ВЫБРАТЬ РАЗРЕШЕННЫЕ + | " + ИмяНабора + ".Ссылка КАК ОбъектСсылка, + | ТИП(" + ИмяДобавляемойТаблицы + ") КАК ОбъектТип + |ИЗ + | " + ИмяДобавляемойТаблицы + " КАК " + ИмяНабора + " + |"; + + // Добавляем дополнительные наборы для получения данных их табличных частей отбора. + ПараметрыДобавления = Новый Структура; + ПараметрыДобавления.Вставить("ИмяДобавляемойТаблицы", ИмяДобавляемойТаблицы); + ПараметрыДобавления.Вставить("СхемаКомпоновки", СхемаКомпоновки); + ДобавитьДополнительныеНаборыКомпоновкиТабличныхЧастей(Строка.Отбор.Элементы, ПараметрыДобавления) + КонецЦикла; + КонецЦикла; + + // Общие параметры + Параметры = СхемаКомпоновки.Параметры; + + КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных; + + КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных( + ПоместитьВоВременноеХранилище(СхемаКомпоновки, АдресСохраненияСхемы))); + КомпоновщикНастроек.ЗагрузитьНастройки(СхемаКомпоновки.НастройкиПоУмолчанию); + + Если ТаблицаДополнительныхИзменений.Количество() > 0 Тогда + + КореньНастроек = КомпоновщикНастроек.Настройки; + + // Добавляем настройки для отбора дополнительных данных. + ГруппаОтбора = КореньНастроек.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); + ГруппаОтбора.Использование = Истина; + ГруппаОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли; + + ЭлементыОтбора = ГруппаОтбора.Элементы; + + Для Каждого Строка Из ТаблицаДополнительныхИзменений Цикл + ПолноеИмяМетаданных = Строка.ПолноеИмяМетаданных; + Если СписокИменМетаданных <> Неопределено Тогда + Если СписокИменМетаданных.Найти(ПолноеИмяМетаданных) = Неопределено Тогда + Продолжить; + КонецЕсли; + КонецЕсли; + Если Строка.Отбор.Элементы.Количество() = 0 + И (НЕ Строка.ВыборПериода ИЛИ НЕ ЗначениеЗаполнено(ПериодОтбораВсехДокументов)) Тогда + Продолжить; + КонецЕсли; + + ДобавляемыеТаблицы = СоставУкрупненнойГруппыМетаданных(ПолноеИмяМетаданных); + Для Каждого ИмяДобавляемойТаблицы Из ДобавляемыеТаблицы Цикл + + ГруппаОтбора = ЭлементыОтбора.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); + ГруппаОтбора.Использование = Истина; + + Если Строка.ВыборПериода ИЛИ ПолноеИмяМетаданных = "ВсеДокументы" Тогда + Если ЗначениеЗаполнено(ПериодОтбораВсехДокументов) Тогда + ДатаНачала = ПериодОтбораВсехДокументов.ДатаНачала; + ДатаОкончания = ПериодОтбораВсехДокументов.ДатаОкончания; + Иначе + ДатаНачала = Строка.Период.ДатаНачала; + ДатаОкончания = Строка.Период.ДатаОкончания; + КонецЕсли; + Если ДатаНачала <> '00010101' Тогда + ДобавитьЭлементОтбора(ГруппаОтбора.Элементы, "ОбъектСсылка.Дата", ВидСравненияКомпоновкиДанных.БольшеИлиРавно, ДатаНачала); + КонецЕсли; + Если ДатаОкончания <> '00010101' Тогда + ДобавитьЭлементОтбора(ГруппаОтбора.Элементы, "ОбъектСсылка.Дата", ВидСравненияКомпоновкиДанных.МеньшеИлиРавно, ДатаОкончания); + КонецЕсли; + + КонецЕсли; + + // Добавляем элементы отбора с коррекцией полей "Ссылка" -> "ОбъектСсылка". + ПараметрыДобавления = Новый Структура; + ПараметрыДобавления.Вставить("ИмяДобавляемойТаблицы", ИмяДобавляемойТаблицы); + ДобавитьДополнительныеОтборыКомпоновкиТабличныхЧастей( + ГруппаОтбора.Элементы, Строка.Отбор.Элементы, ЭлементыНабораИзменения, + ПараметрыДобавления); + КонецЦикла; + КонецЦикла; + + КонецЕсли; + + Возврат Новый Структура("СхемаКомпоновки,КомпоновщикНастроек", + СхемаКомпоновки, КомпоновщикНастроек); +КонецФункции + +// Добавляет в схему компоновки набор данных с одним полем "Ссылка" по имени таблицы. +// +// Параметры: +// СхемаКомпоновкиДанных - СхемаКомпоновкиДанных - схема, в которую происходит добавление. +// ИмяТаблицы: - Строка - имя таблицы данных. +// Представление: - Строка - представление для поля "ссылка". +// +Процедура ДобавитьНаборВСхемуКомпоновки(СхемаКомпоновкиДанных, ИмяТаблицы, Представление = Неопределено) + + Набор = СхемаКомпоновкиДанных.НаборыДанных.Добавить(Тип("НаборДанныхЗапросСхемыКомпоновкиДанных")); + Набор.Запрос = " + |ВЫБРАТЬ + | Ссылка + |ИЗ + | " + ИмяТаблицы + " + |"; + Набор.АвтоЗаполнениеДоступныхПолей = Истина; + Набор.ИсточникДанных = СхемаКомпоновкиДанных.ИсточникиДанных[0].Имя; + Набор.Имя = "Набор" + Формат(СхемаКомпоновкиДанных.НаборыДанных.Количество()-1, "ЧН=; ЧГ="); + + Поле = Набор.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных")); + Поле.Поле = "Ссылка"; + Поле.Заголовок = ?(Представление=Неопределено, ПредставлениеОбъекта(ИмяТаблицы), Представление); + +КонецПроцедуры + +// Добавляет одиночный элемент отбора в список. +// +// Параметры: +// ЭлементыОтбора - ЭлементОтбораКомпоновкиДанных - ссылка на проверяемый объект. +// ПутьПоляКДанным - Строка - путь к данным для добавляемого элемента. +// ВидСравнения - ВидСравненияКомпоновкиДанных - вид сравнения для добавляемого элемента. +// Значение - Произвольный - значение сравнения для добавляемого элемента. +// Представление -Строка - необязательное представление поля. +// +Процедура ДобавитьЭлементОтбора(ЭлементыОтбора, ПутьПоляКДанным, ВидСравнения, Значение, Представление = Неопределено) + + Элемент = ЭлементыОтбора.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + Элемент.Использование = Истина; + Элемент.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(ПутьПоляКДанным); + Элемент.ВидСравнения = ВидСравнения; + Элемент.ПравоеЗначение = Значение; + + Если Представление<>Неопределено Тогда + Элемент.Представление = Представление; + КонецЕсли; +КонецПроцедуры + +Процедура ДобавитьДополнительныеНаборыКомпоновкиТабличныхЧастей(ЭлементыИсточника, ПараметрыДобавления) + + ИмяДобавляемойТаблицы = ПараметрыДобавления.ИмяДобавляемойТаблицы; + СхемаКомпоновки = ПараметрыДобавления.СхемаКомпоновки; + + ОбщийНабор = СхемаКомпоновки.НаборыДанных.РегистрацияИзменений; + ИсточникДанных = СхемаКомпоновки.ИсточникиДанных[0].Имя; + + МетаданныеОбъекта = Метаданные.НайтиПоПолномуИмени(ИмяДобавляемойТаблицы); + Если МетаданныеОбъекта = Неопределено Тогда + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='Некорректное имя метаданных ""%1""'"), + ИмяДобавляемойТаблицы); + КонецЕсли; + + Для Каждого Элемент Из ЭлементыИсточника Цикл + + Если ТипЗнч(Элемент) = Тип("ГруппаЭлементовОтбораКомпоновкиДанных") Тогда + ДобавитьДополнительныеНаборыКомпоновкиТабличныхЧастей(Элемент.Элементы, ПараметрыДобавления); + Продолжить; + КонецЕсли; + + // Это элемент, смотрим чтобы попало на нашу табличку. + ИмяПоля = Элемент.ЛевоеЗначение; + Если СтрНачинаетсяС(ИмяПоля, "Ссылка.") Тогда + ИмяПоля = Сред(ИмяПоля, 8); + ИначеЕсли СтрНачинаетсяС(ИмяПоля, "ОбъектСсылка.") Тогда + ИмяПоля = Сред(ИмяПоля, 14); + Иначе + Продолжить; + КонецЕсли; + + Позиция = Найти(ИмяПоля, "."); + ИмяТаблицы = Лев(ИмяПоля, Позиция - 1); + МетаданныеТабличнойЧасти = МетаданныеОбъекта.ТабличныеЧасти.Найти(ИмяТаблицы); + + Если Позиция = 0 Тогда + // Отбор к шапке, получим через ссылку. + Продолжить; + ИначеЕсли МетаданныеТабличнойЧасти = Неопределено Тогда + // Табличная часть есть, но не наша. + Продолжить; + КонецЕсли; + + // Наша табличная часть + ПутьКДанным = Сред(ИмяПоля, Позиция + 1); + Если СтрНачинаетсяС(ПутьКДанным + ".", "Ссылка.") Тогда + // Переадресуем на головную таблицу. + Продолжить; + КонецЕсли; + + Псевдоним = СтрЗаменить(ИмяДобавляемойТаблицы, ".", "") + ИмяТаблицы; + ИмяНабора = "Дополнительно_" + Псевдоним; + Набор = ОбщийНабор.Элементы.Найти(ИмяНабора); + Если Набор <> Неопределено Тогда + Продолжить; + КонецЕсли; + + Набор = ОбщийНабор.Элементы.Добавить(Тип("НаборДанныхЗапросСхемыКомпоновкиДанных")); + Набор.АвтоЗаполнениеДоступныхПолей = Истина; + Набор.ИсточникДанных = ИсточникДанных; + Набор.Имя = ИмяНабора; + + ВсеПоляТабличнойЧасти = РеквизитыТабличнойЧастиДляЗапроса(МетаданныеТабличнойЧасти, Псевдоним); + Набор.Запрос = " + |ВЫБРАТЬ РАЗРЕШЕННЫЕ + | Ссылка КАК ОбъектСсылка, + | ТИП(" + ИмяДобавляемойТаблицы + ") КАК ОбъектТип + | " + ВсеПоляТабличнойЧасти.ПоляЗапроса + " + |ИЗ + | " + ИмяДобавляемойТаблицы + "." + ИмяТаблицы + " + |"; + + Для Каждого ИмяПоля Из ВсеПоляТабличнойЧасти.ИменаПолей Цикл + Поле = Набор.Поля.Найти(ИмяПоля); + Если Поле = Неопределено Тогда + Поле = Набор.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных")); + Поле.ПутьКДанным = ИмяПоля; + Поле.Поле = ИмяПоля; + КонецЕсли; + Поле.ОграничениеИспользованияРеквизитов.Условие = Истина; + Поле.ОграничениеИспользованияРеквизитов.Поле = Истина; + Поле.ОграничениеИспользования.Условие = Истина; + Поле.ОграничениеИспользования.Поле = Истина; + КонецЦикла; + + КонецЦикла; + +КонецПроцедуры + +Процедура ДобавитьДополнительныеОтборыКомпоновкиТабличныхЧастей(ЭлементыПриемника, ЭлементыИсточника, ЭлементыНабора, ПараметрыДобавления) + + ИмяДобавляемойТаблицы = ПараметрыДобавления.ИмяДобавляемойТаблицы; + МетаОбъекта = Метаданные.НайтиПоПолномуИмени(ИмяДобавляемойТаблицы); + + Для Каждого Элемент Из ЭлементыИсточника Цикл + // Ветка разбора аналогична ветке в ДобавитьДополнительныеНаборыКомпоновкиТабличныхЧастей. + + Тип = ТипЗнч(Элемент); + Если Тип = Тип("ГруппаЭлементовОтбораКомпоновкиДанных") Тогда + // Группу копируем + ЭлементОтбора = ЭлементыПриемника.Добавить(Тип); + ЗаполнитьЗначенияСвойств(ЭлементОтбора, Элемент); + + ДобавитьДополнительныеОтборыКомпоновкиТабличныхЧастей( + ЭлементОтбора.Элементы, Элемент.Элементы, ЭлементыНабора, + ПараметрыДобавления); + Продолжить; + КонецЕсли; + + // Это элемент, смотрим чтобы попало на нашу табличку. + ИмяПоля = Строка(Элемент.ЛевоеЗначение); + Если ИмяПоля = "Ссылка" Тогда + ЭлементОтбора = ЭлементыПриемника.Добавить(Тип); + ЗаполнитьЗначенияСвойств(ЭлементОтбора, Элемент); + ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ОбъектСсылка"); + Продолжить; + + ИначеЕсли СтрНачинаетсяС(ИмяПоля, "Ссылка.") Тогда + ИмяПоля = Сред(ИмяПоля, 8); + + ИначеЕсли СтрНачинаетсяС(ИмяПоля, "ОбъектСсылка.") Тогда + ИмяПоля = Сред(ИмяПоля, 14); + + Иначе + ЭлементОтбора = ЭлементыПриемника.Добавить(Тип); + ЗаполнитьЗначенияСвойств(ЭлементОтбора, Элемент); + Продолжить; + + КонецЕсли; + + Позиция = Найти(ИмяПоля, "."); + ИмяТаблицы = Лев(ИмяПоля, Позиция - 1); + МетаТабличнаяЧасть = МетаОбъекта.ТабличныеЧасти.Найти(ИмяТаблицы); + + Если Позиция = 0 Тогда + // Отбор к шапке, будет получен через ссылку. + ЭлементОтбора = ЭлементыПриемника.Добавить(Тип); + ЗаполнитьЗначенияСвойств(ЭлементОтбора, Элемент); + ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ОбъектСсылка." + ИмяПоля); + Продолжить; + + ИначеЕсли МетаТабличнаяЧасть = Неопределено Тогда + // Табличная часть указана, но не наша. Усиливаем отбор. + ЭлементОтбора = ЭлементыПриемника.Добавить(Тип); + ЗаполнитьЗначенияСвойств(ЭлементОтбора, Элемент); + ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ПолноеИмяМетаданных"); + ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ЭлементОтбора.Использование = Истина; + ЭлементОтбора.ПравоеЗначение = ""; + + Продолжить; + КонецЕсли; + + // Отбор к табличной части + ПутьКДанным = Сред(ИмяПоля, Позиция + 1); + Если СтрНачинаетсяС(ПутьКДанным + ".", "Ссылка.") Тогда + // Переадресуем на головную таблицу. + ЭлементОтбора = ЭлементыПриемника.Добавить(Тип); + ЗаполнитьЗначенияСвойств(ЭлементОтбора, Элемент); + ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ОбъектСсылка." + Сред(ПутьКДанным, 8)); + + ИначеЕсли ПутьКДанным <> "НомерСтроки" И ПутьКДанным <> "Ссылка" + И МетаТабличнаяЧасть.Реквизиты.Найти(ПутьКДанным) = Неопределено Тогда + // Табличная часть совпадает, но реквизит не наш. Усиливаем отбор. + ЭлементОтбора = ЭлементыПриемника.Добавить(Тип); + ЗаполнитьЗначенияСвойств(ЭлементОтбора, Элемент); + ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ПолноеИмяМетаданных"); + ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ЭлементОтбора.Использование = Истина; + ЭлементОтбора.ПравоеЗначение = ""; + + Иначе + // Корректируем имя + ЭлементОтбора = ЭлементыПриемника.Добавить(Тип); + ЗаполнитьЗначенияСвойств(ЭлементОтбора, Элемент); + ПутьКДанным = СтрЗаменить(ИмяДобавляемойТаблицы + ИмяТаблицы, ".", "") + ПутьКДанным; + ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(ПутьКДанным); + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры + +Функция РеквизитыТабличнойЧастиДляЗапроса(Знач МетаТабличнаяЧасть, Знач Префикс = "") + + ПоляЗапроса = ", НомерСтроки КАК " + Префикс + "НомерСтроки + |, Ссылка КАК " + Префикс + "Ссылка + |"; + + ИменаПолей = Новый Массив; + ИменаПолей.Добавить(Префикс + "НомерСтроки"); + ИменаПолей.Добавить(Префикс + "Ссылка"); + + Для Каждого МетаРеквизит Из МетаТабличнаяЧасть.Реквизиты Цикл + Имя = МетаРеквизит.Имя; + Псевдоним = Префикс + Имя; + ПоляЗапроса = ПоляЗапроса + ", " + Имя + " КАК " + Псевдоним + Символы.ПС; + ИменаПолей.Добавить(Псевдоним); + КонецЦикла; + + Возврат Новый Структура("ПоляЗапроса, ИменаПолей", ПоляЗапроса, ИменаПолей); +КонецФункции + +Функция РазложитьФорматОбмена(Знач ФорматОбмена) + + Результат = Новый Структура("БазовыйФормат, Версия"); + + ЭлементыФормата = СтрРазделить(ФорматОбмена, "/"); + + Если ЭлементыФормата.Количество() = 0 Тогда + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Неканоническое имя формата обмена <%1>'"), ФорматОбмена); + КонецЕсли; + + Результат.Версия = ЭлементыФормата[ЭлементыФормата.ВГраница()]; + + Версии = СтрРазделить(Результат.Версия, "."); + + Если Версии.Количество() = 0 Тогда + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Неканоническое представление версии формата обмена: <%1>.'"), Результат.Версия); + КонецЕсли; + + ЭлементыФормата.Удалить(ЭлементыФормата.ВГраница()); + + Результат.БазовыйФормат = СтрСоединить(ЭлементыФормата, "/"); + + Возврат Результат; +КонецФункции + +Процедура ДополнитьСписокОбъектовКВыгрузке(МассивМетаданныхОтбор) + ДанныеКомпоновки = ИнициализироватьКомпоновщик(МассивМетаданныхОтбор); + + // Сохраняем отборы + НастройкиОтборов = ДанныеКомпоновки.КомпоновщикНастроек.ПолучитьНастройки(); + + // Нужный вариант + ДанныеКомпоновки.КомпоновщикНастроек.ЗагрузитьНастройки( + ДанныеКомпоновки.СхемаКомпоновки.ВариантыНастроек["ПользовательскиеДанные"].Настройки); + + // Восстанавливаем отборы + ДобавитьЗначенияОтбораКомпоновки(ДанныеКомпоновки.КомпоновщикНастроек.Настройки.Отбор.Элементы, + НастройкиОтборов.Отбор.Элементы); + + НастройкиКомпоновщика = ДанныеКомпоновки.КомпоновщикНастроек.ПолучитьНастройки(); + + КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; + Макет = КомпоновщикМакета.Выполнить(ДанныеКомпоновки.СхемаКомпоновки, НастройкиКомпоновщика, , , Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений")); + + Процессор = Новый ПроцессорКомпоновкиДанных; + Процессор.Инициализировать(Макет, , , Истина); + + Вывод = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений; + Вывод.УстановитьОбъект(Новый ТаблицаЗначений); + КоллекцияРезультат = Вывод.Вывести(Процессор); + Для Каждого СтрокаТЗ Из КоллекцияРезультат Цикл + Если ЗначениеЗаполнено(СтрокаТЗ.ОбъектСсылка) Тогда + СписокДополнениеКВыгрузке.Добавить(СтрокаТЗ.ОбъектСсылка); + КонецЕсли; + КонецЦикла; +КонецПроцедуры +#КонецОбласти +#КонецЕсли \ No newline at end of file diff --git a/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Templates/СхемаКомпоновкиДанных/Template.dcs b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Templates/СхемаКомпоновкиДанных/Template.dcs new file mode 100644 index 000000000..c72eabcfd --- /dev/null +++ b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/Templates/СхемаКомпоновкиДанных/Template.dcs @@ -0,0 +1,215 @@ + + + + ОбщийИсточникДанных + Local + + + РегистрацияИзменений + + ОбъектТип + ОбъектТип + + <v8:item> + <v8:lang>ru</v8:lang> + <v8:content>Объект тип</v8:content> + </v8:item> + + + + ОбъектСсылка + ОбъектСсылка + + <v8:item> + <v8:lang>ru</v8:lang> + <v8:content>Объект ссылка</v8:content> + </v8:item> + + + + ОпределениеПолей + + ОбъектТип + ОбъектТип + + <v8:item> + <v8:lang>ru</v8:lang> + <v8:content>Объект тип</v8:content> + </v8:item> + + + + ОбъектСсылка + ОбъектСсылка + + <v8:item> + <v8:lang>ru</v8:lang> + <v8:content>Объект ссылка</v8:content> + </v8:item> + + + ОбщийИсточникДанных + ВЫБРАТЬ + NULL КАК ОбъектСсылка, + NULL КАК ОбъектТип +ГДЕ + ЛОЖЬ + + + + ОбщееКоличествоЭлементов + + ОбщееКоличество + ОбщееКоличество + + <v8:item> + <v8:lang>ru</v8:lang> + <v8:content>Всего объектов в базе</v8:content> + </v8:item> + + + true + true + true + + + + Тип + Тип + + true + true + true + + + + ОпределениеПолей + + ОбщееКоличество + ОбщееКоличество + + + Тип + Тип + + ОбщийИсточникДанных + ВЫБРАТЬ + NULL КАК Тип, + 0 КАК ОбщееКоличество +ГДЕ + ЛОЖЬ + + + + ОбщееКоличество + КОЛИЧЕСТВО(ОбъектСсылка) + ОбъектТип + ОбщийИтог + + + ДатаФормирования + + <v8:item> + <v8:lang>ru</v8:lang> + <v8:content>Дата формирования</v8:content> + </v8:item> + + + xs:dateTime + + DateTime + + + 0001-01-01T00:00:00 + true + false + + + ПредставлениеСписка + + <v8:item> + <v8:lang>ru</v8:lang> + <v8:content>Представление списка</v8:content> + </v8:item> + + + xs:string + + 0 + Variable + + + + true + false + + + ПользовательскиеДанные + + + ru + Пользовательские данные + + + + + + ОбщееКоличество + + + + + + Заголовок + + + ru + Состав данных + + + + + ВыводитьОтбор + DontOutput + + + + + + ОбъектТип + Items + None + 0001-01-01T00:00:00 + 0001-01-01T00:00:00 + + + + + + + + ОбщееКоличество + + + + + + + ОбъектСсылка + Items + None + 0001-01-01T00:00:00 + 0001-01-01T00:00:00 + + + + + + + + + + + + + \ No newline at end of file diff --git a/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/ВыгрузкаЗагрузкаEnterpriseData.mdo b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/ВыгрузкаЗагрузкаEnterpriseData.mdo new file mode 100644 index 000000000..8ca85f143 --- /dev/null +++ b/SSL/src/DataProcessors/ВыгрузкаЗагрузкаEnterpriseData/ВыгрузкаЗагрузкаEnterpriseData.mdo @@ -0,0 +1,281 @@ + + + + + + + ВыгрузкаЗагрузкаEnterpriseData + + ru + Выгрузка загрузка EnterpriseData + + true + DataProcessor.ВыгрузкаЗагрузкаEnterpriseData.Form.Форма + + + ru + + + + ru + Выгрузка загрузка данных EnterpriseData + + + ПутьКМенеджеруОбменаВыгрузки + + ru + Путь к менеджеру обмена выгрузки + + + String + + + + ru + Путь к внешнему менеджеру обмена для выгрузки + + + + + + ПутьКМенеджеруОбменаЗагрузки + + ru + Путь к менеджеру обмена загрузки + + + String + + + + ru + Путь к внешнему менеджеру обмена для загрузки + + + + + + РезультатВыгрузкиXDTO + + ru + Результат выгрузки XDTO + + + String + + + + ru + Результат выгрузки при выгрузке в текст + + + + + + ВерсияФормата + + ru + Версия формата + + + String + + + + ru + Версия формата для выгрузки + + + + + + УзелОбмена + + ru + Узел обмена + + + ExchangePlanRef + + + ru + При указании узла будут выгружены зарегистрированные на узле изменения + + + + + + ПериодОтбораВсехДокументов + + ru + Период отбора всех документов + + + StandardPeriod + + + ru + Указанный отбор по периоду будет применен ко всем выбранным документам. + + + + + + АдресКомпоновщикаВсехДокументов + + ru + Адрес компоновщика всех документов + + + String + + + + ru + Адрес компоновщика всех документов (служебный) + + + + + + КомпоновщикОтбораВсехДокументов + + ru + Компоновщик отбора всех документов + + + DataCompositionSettingsComposer + + + ru + Компоновщик отбора всех документов (служебный) + + + + + + АдресХранилищаФормы + + ru + Адрес хранилища формы + + + String + + + + ru + Адрес хранилища формы (служебный) + + + + + + ДополнительнаяРегистрация + + ru + Дополнительная регистрация + + Таблица дополнительной регистрации + + ValueTable + + + ru + Таблица объектов подлежащих дополнительной регистрации + + + + + + СписокДополнениеКВыгрузке + + ru + Список дополнение к выгрузке + + + ValueList + + + ru + Список объектов подлежащих выгрузке + + + + + + ТаблицаПравилВыгрузки + + ru + Таблица правил выгрузки + + + ValueTree + + + ru + Перечень доступных для выгрузки объектов метаданных + + + + + + ИсточникВыгрузки + + ru + Источник выгрузки + + + String + + 20 + + + + ru + Источник выгрузки (текст либо файл) + + + + + + Форма + + ru + Форма + + PersonalComputer + MobileDevice + + + РедактированиеПериодаИОтбора + + ru + Редактирование периода и отбора + + + + ru + + + PersonalComputer + MobileDevice + + + СхемаКомпоновкиДанных + + ru + Схема компоновки данных + + DataCompositionSchema + + + ЗагрузкаДанныхEnterpriseData + + ru + Загрузка данных EnterpriseData + + NavigationPanelOrdinary + Auto + + diff --git a/SSL/src/DataProcessors/ВыполнениеОбменаДанными/Forms/Форма/Form.form b/SSL/src/DataProcessors/ВыполнениеОбменаДанными/Forms/Форма/Form.form index 6b319087b..9efe53618 100644 --- a/SSL/src/DataProcessors/ВыполнениеОбменаДанными/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/ВыполнениеОбменаДанными/Forms/Форма/Form.form @@ -3,528 +3,6 @@ ВыполнениеОбменаДанными 1 - - ЗапросПароляПользователя - 53 - - ГруппаЗапросаПароля - 131 - - Декорация2 - 63 - - <key>ru</key> - <value>Введите пароль для входа в приложение в Интернете</value> - - true - true - - true - - - Декорация2ExtendedTooltip - 90 - Label - true - true - - Left - - - - Декорация2КонтекстноеМеню - 64 - true - - Label - true - true - true - - Left - - - - ГруппаВводаПароля - 59 - - WSПароль - 54 - true - true - - true - - - WSПароль - - - WSПарольExtendedTooltip - 92 - Label - true - true - - Left - - - - WSПарольКонтекстноеМеню - 55 - true - - InputField - true - Enter - true - Left - true - - 20 - true - true - false - true - true - true - true - true - true - Normal - - - - ЗабылиПароль - 58 - true - true - - true - - - ЗабылиПарольExtendedTooltip - 93 - Label - true - true - - Left - - - Hyperlink - Form.Command.ЗабылиПароль - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Группа ввода пароля</value> - - - ru - Группа ввода пароля - - - ГруппаВводаПароляРасширеннаяПодсказка - 91 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа запроса пароля</value> - - - ru - Группа запроса пароля - - - ГруппаЗапросаПароляРасширеннаяПодсказка - 132 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - - - - ГруппаПредупрежденияДолгойСинхронизации - 136 - - Группа2 - 146 - - Декорация3 - 143 - true - true - - true - - - Декорация3РасширеннаяПодсказка - 145 - Label - true - true - - Left - - - - Декорация3КонтекстноеМеню - 144 - true - - 2 - true - 1 - true - - - CommonPicture.Предупреждение - - - - true - true - - true - - - Группа2РасширеннаяПодсказка - 147 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - Группа1 - 141 - - Декорация1 - 133 - - <key>ru</key> - <value>В некоторых случаях синхронизация данных может занять длительное время: - - медленный канал связи; - - большой объем данных; - - доступно обновление приложения в Интернете.</value> - - true - true - - true - - - Декорация1РасширеннаяПодсказка - 135 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 134 - true - - Label - true - true - false - - Left - - - - НеНапоминатьОДолгойСинхронизации - 138 - true - true - - true - - - НеНапоминатьОДолгойСинхронизации - - Right - - НеНапоминатьОДолгойСинхронизацииРасширеннаяПодсказка - 140 - Label - true - true - - Left - - - - НеНапоминатьОДолгойСинхронизацииКонтекстноеМеню - 139 - true - - CheckBoxField - Enter - true - Left - true - - - - Декорация4 - 148 - true - true - - true - - - Декорация4РасширеннаяПодсказка - 150 - Label - true - true - - Left - - - - Декорация4КонтекстноеМеню - 149 - true - - Label - true - true - true - - Left - - - true - true - - true - - - Группа1РасширеннаяПодсказка - 142 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа предупреждения долгой синхронизации</value> - - - ru - Группа предупреждения долгой синхронизации - - true - - ГруппаПредупрежденияДолгойСинхронизацииРасширеннаяПодсказка - 137 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - КоманднаяПанельВыполненияОбмена - 60 - - ВыполнитьОбмен - 62 - true - true - - true - - true - - ВыполнитьОбменExtendedTooltip - 95 - Label - true - true - - Left - - - Form.Command.ВыполнитьОбмен - Auto - true - true - true - UserCmds - Auto - - - ФормаЗакрыть2 - 70 - true - true - - true - - - ФормаЗакрыть2ExtendedTooltip - 96 - Label - true - true - - Left - - - Form.StandardCommand.Close - Normal - true - true - UserCmds - Auto - - true - true - - true - - - ru - Командная панель закрыть - - false - - КоманднаяПанельВыполненияОбменаExtendedTooltip - 94 - Label - true - true - - Left - - - CommandBar - - Right - - - true - true - - true - - - <key>ru</key> - <value>Запрос пароля пользователя</value> - - - ru - Загрузка данных - - true - - ЗапросПароляПользователяExtendedTooltip - 89 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - ОжиданиеСинхронизацииДанных 2 @@ -555,9 +33,7 @@ 5 true - 7 true - 3 true @@ -594,7 +70,6 @@ true Label - true 3 true @@ -662,7 +137,6 @@ true Label - true true Left @@ -744,7 +218,6 @@ Left true - true true @@ -809,7 +282,6 @@ true Label - true true Left @@ -891,7 +363,6 @@ Left true - true true @@ -961,9 +432,7 @@ 14 true - 7 true - 2 true @@ -999,7 +468,6 @@ true Label - true 2 true @@ -1066,9 +534,7 @@ 21 true - 7 true - 2 true @@ -1105,7 +571,6 @@ true Label - true true Left @@ -1171,9 +636,7 @@ 30 true - 7 true - 2 true @@ -1212,9 +675,7 @@ true Label - true true - false Left Bottom @@ -1339,9 +800,7 @@ 83 true - 7 true - 2 true @@ -1383,7 +842,6 @@ Left true - true true true true @@ -1452,11 +910,8 @@ 37 true - 5 true - 2 true - false CommonPicture.Предупреждение32 @@ -1498,7 +953,6 @@ true Label - 55 true true @@ -1568,7 +1022,6 @@ true Label - 55 true true @@ -1689,11 +1142,8 @@ 160 true - 4 true - 2 true - false CommonPicture.Предупреждение32 @@ -1724,7 +1174,6 @@ true Label - true true Left @@ -2147,6 +1596,519 @@ false
        + + ЗапросПароляПользователя + 53 + + ГруппаЗапросаПароля + 131 + + Декорация2 + 63 + + <key>ru</key> + <value>Введите пароль для входа в приложение в Интернете</value> + + true + true + + true + + + Декорация2ExtendedTooltip + 90 + Label + true + true + + Left + + + + Декорация2КонтекстноеМеню + 64 + true + + Label + true + + Left + + + + ГруппаВводаПароля + 59 + + WSПароль + 54 + true + true + + true + + + WSПароль + + + WSПарольExtendedTooltip + 92 + Label + true + true + + Left + + + + WSПарольКонтекстноеМеню + 55 + true + + InputField + true + Enter + true + Left + true + + 20 + true + true + false + true + true + true + true + true + true + Normal + + + + ЗабылиПароль + 58 + true + true + + true + + + ЗабылиПарольExtendedTooltip + 93 + Label + true + true + + Left + + + Hyperlink + Form.Command.ЗабылиПароль + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Группа ввода пароля</value> + + + ru + Группа ввода пароля + + + ГруппаВводаПароляРасширеннаяПодсказка + 91 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа запроса пароля</value> + + + ru + Группа запроса пароля + + + ГруппаЗапросаПароляРасширеннаяПодсказка + 132 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + Auto + Auto + + + + ГруппаПредупрежденияДолгойСинхронизации + 136 + + Группа2 + 146 + + Декорация3 + 143 + true + true + + true + + + Декорация3РасширеннаяПодсказка + 145 + Label + true + true + + Left + + + + Декорация3КонтекстноеМеню + 144 + true + + true + true + + + CommonPicture.Предупреждение + + + + true + true + + true + + + Группа2РасширеннаяПодсказка + 147 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + Группа1 + 141 + + Декорация1 + 133 + + <key>ru</key> + <value>В некоторых случаях синхронизация данных может занять длительное время: + - медленный канал связи; + - большой объем данных; + - доступно обновление приложения в Интернете.</value> + + true + true + + true + + + Декорация1РасширеннаяПодсказка + 135 + Label + true + true + + Left + + + + Декорация1КонтекстноеМеню + 134 + true + + Label + true + + Left + + + + НеНапоминатьОДолгойСинхронизации + 138 + true + true + + true + + + НеНапоминатьОДолгойСинхронизации + + Right + + НеНапоминатьОДолгойСинхронизацииРасширеннаяПодсказка + 140 + Label + true + true + + Left + + + + НеНапоминатьОДолгойСинхронизацииКонтекстноеМеню + 139 + true + + CheckBoxField + Enter + true + Left + true + + + + Декорация4 + 148 + true + true + + true + + + Декорация4РасширеннаяПодсказка + 150 + Label + true + true + + Left + + + + Декорация4КонтекстноеМеню + 149 + true + + Label + true + true + true + + Left + + + true + true + + true + + + Группа1РасширеннаяПодсказка + 142 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа предупреждения долгой синхронизации</value> + + + ru + Группа предупреждения долгой синхронизации + + + ГруппаПредупрежденияДолгойСинхронизацииРасширеннаяПодсказка + 137 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + КоманднаяПанельВыполненияОбмена + 60 + + ВыполнитьОбмен + 62 + true + true + + true + + true + + ВыполнитьОбменExtendedTooltip + 95 + Label + true + true + + Left + + + Form.Command.ВыполнитьОбмен + Auto + true + true + true + UserCmds + Auto + + + ФормаЗакрыть2 + 70 + true + true + + true + + + ФормаЗакрыть2ExtendedTooltip + 96 + Label + true + true + + Left + + + Form.StandardCommand.Close + Normal + true + true + UserCmds + Auto + + true + true + + true + + + ru + Командная панель закрыть + + + КоманднаяПанельВыполненияОбменаExtendedTooltip + 94 + Label + true + true + + Left + + + CommandBar + + Right + + + true + true + + true + + + <key>ru</key> + <value>Запрос пароля пользователя</value> + + + ru + Загрузка данных + + + ЗапросПароляПользователяExtendedTooltip + 89 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + true true @@ -2160,7 +2122,6 @@ ru Выполнение обмена данными - true ВыполнениеОбменаДаннымиExtendedTooltip 88 @@ -2205,7 +2166,6 @@ Retry SaveValues Yes - 55 LockOwner Use true @@ -2893,6 +2853,75 @@ true + + ФоновоеЗаданиеРезультатВыполнения + + <key>ru</key> + <value>Фоновое задание результат выполнения</value> + + 33 + + + true + + + true + + + + ФоновоеЗаданиеВыполняемоеДействие + + <key>ru</key> + <value>Фоновое задание выполняемое действие</value> + + 34 + + Number + + 1 + + + + true + + + true + + + + ФоновоеЗаданиеИспользоватьПрогресс + + <key>ru</key> + <value>Фоновое задание использовать прогресс</value> + + 35 + + Boolean + + + true + + + true + + + + ПарольСинхронизацииСохранен + + <key>ru</key> + <value>Пароль синхронизации сохранен в безопасном хранилище</value> + + 36 + + Boolean + + + true + + + true + + ПерейтиВЖурналРегистрации diff --git a/SSL/src/DataProcessors/ВыполнениеОбменаДанными/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/ВыполнениеОбменаДанными/Forms/Форма/Module.bsl index 0efc8fe27..952e34478 100644 --- a/SSL/src/DataProcessors/ВыполнениеОбменаДанными/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/ВыполнениеОбменаДанными/Forms/Форма/Module.bsl @@ -27,15 +27,23 @@ ЕстьОшибки = ((ОбменДаннымиСервер.ГлавныйУзел() = УзелИнформационнойБазы) И КонфигурацияИзменена()); // Устанавливаем заголовок формы. - Заголовок = НСтр("ru = 'Синхронизация данных с ""%1""'"); - Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Заголовок, Строка(УзелИнформационнойБазы)); + ШаблонЗаголовка = НСтр("ru = 'Синхронизация данных с ""%1""'"); + УстановитьПривилегированныйРежим(Истина); + Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонЗаголовка, Строка(УзелИнформационнойБазы)); + УстановитьПривилегированныйРежим(Ложь); + // Инициализируем роли пользователя РольДоступнаДобавлениеИзменениеОбменовДанными = ОбменДаннымиСервер.ЕстьПраваНаАдминистрированиеОбменов(); - РольДоступнаПолныеПрава = Пользователи.ЭтоПолноправныйПользователь(); + РольДоступнаПолныеПрава = Пользователи.ЭтоПолноправныйПользователь(); - Элементы.ПанельТребуетсяОбновление.ТекущаяСтраница = ?(РольДоступнаПолныеПрава, Элементы.ТребуетсяОбновлениеПолныеПрава, Элементы.ТребуетсяОбновлениеОграниченныеПрава); - Элементы.ТекстТребуетсяОбновлениеПолныеПрава.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Элементы.ТекстТребуетсяОбновлениеПолныеПрава.Заголовок, УзелИнформационнойБазы); - Элементы.ТекстТребуетсяОбновлениеОграниченныеПрава.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Элементы.ТекстТребуетсяОбновлениеОграниченныеПрава.Заголовок, УзелИнформационнойБазы); + Элементы.ПанельТребуетсяОбновление.ТекущаяСтраница = ?(РольДоступнаПолныеПрава, + Элементы.ТребуетсяОбновлениеПолныеПрава, Элементы.ТребуетсяОбновлениеОграниченныеПрава); + + Элементы.ТекстТребуетсяОбновлениеПолныеПрава.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + Элементы.ТекстТребуетсяОбновлениеПолныеПрава.Заголовок, УзелИнформационнойБазы); + + Элементы.ТекстТребуетсяОбновлениеОграниченныеПрава.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + Элементы.ТекстТребуетсяОбновлениеОграниченныеПрава.Заголовок, УзелИнформационнойБазы); Элементы.ЗабылиПароль.Видимость = Не ПустаяСтрока(АдресДляВосстановленияПароляУчетнойЗаписи); @@ -45,8 +53,8 @@ Если ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса.РаботаВМоделиСервиса.ОбменДаннымиВМоделиСервиса") И ОбменДаннымиПовтИсп.ЭтоАвтономноеРабочееМесто() Тогда - МодульАвтономнаяРаботаСлужебный = ОбщегоНазначения.ОбщийМодуль("АвтономнаяРаботаСлужебный"); - НеНапоминатьОДолгойСинхронизации = Не МодульАвтономнаяРаботаСлужебный.ФлагНастройкиВопросаОДолгойСинхронизации(); + МодульАвтономнаяРабота = ОбщегоНазначения.ОбщийМодуль("АвтономнаяРабота"); + НеНапоминатьОДолгойСинхронизации = Не МодульАвтономнаяРабота.ФлагНастройкиВопросаОДолгойСинхронизации(); Иначе НеНапоминатьОДолгойСинхронизации = Истина; @@ -58,10 +66,10 @@ // (пользователь и пароль), сохраненные в информационной базе. // При обмене через веб-сервис для не-РИБ обменов параметры аутентификации (пароль) переопределяем (запрашиваем) // только, если пароль не сохранен в информационной базе. - ИспользоватьТекущегоПользователяДляАутентификации = Ложь; ИспользоватьСохраненныеПараметрыАутентификации = Ложь; ПарольСинхронизацииЗадан = Ложь; + ПарольСинхронизацииСохранен = Ложь; // Пароль сохранен в безопасном хранилище (доступен в фоновом задании) WSПароль = ""; Если ВидТранспортаСообщений = Перечисления.ВидыТранспортаСообщенийОбмена.WS Тогда @@ -79,6 +87,7 @@ НастройкиТранспорта = РегистрыСведений.НастройкиТранспортаОбмена.НастройкиТранспортаWS(УзелИнформационнойБазы); ПарольСинхронизацииЗадан = НастройкиТранспорта.WSЗапомнитьПароль; Если ПарольСинхронизацииЗадан Тогда + ПарольСинхронизацииСохранен = Истина; ИспользоватьСохраненныеПараметрыАутентификации = Истина; WSПароль = НастройкиТранспорта.WSПароль; Иначе @@ -94,23 +103,30 @@ КонецЕсли; - // Устанавливаем текущий сценарий работы обмена. + // Инициализируем текущий сценарий работы обмена. Если ЕстьОшибки Тогда + СценарийКогдаЕстьОшибкиПриНачалеРаботы(); ИначеЕсли ВидТранспортаСообщений <> Перечисления.ВидыТранспортаСообщенийОбмена.WS Тогда - // Вид транспорта - не веб + + // Вид транспорта - обычные каналы связи или подключения по COM. + ФоновоеЗаданиеИспользоватьПрогресс = Истина; СценарийОбменаОбычный(); Иначе + // Вид транспорта - подключение через интернет. + ФоновоеЗаданиеИспользоватьПрогресс = Ложь; + ВыполнитьОтправкуДанных = РегистрыСведений.ОбщиеНастройкиУзловИнформационныхБаз.ВыполнитьОтправкуДанных(УзелИнформационнойБазы); Элементы.ГруппаПредупрежденияДолгойСинхронизации.Видимость = Не НеНапоминатьОДолгойСинхронизации; Элементы.ГруппаЗапросаПароля.Видимость = Не ПарольСинхронизацииЗадан; Если ПарольСинхронизацииЗадан И НеНапоминатьОДолгойСинхронизации Тогда - // Сразу на выполнение обмена + + // Сразу на выполнение обмена. Если ВыполнитьОтправкуДанных Тогда СценарийОбменаЧерезВебСервис_ОтправкаПолучениеОтправка(); Иначе @@ -118,6 +134,7 @@ КонецЕсли; Иначе + Если ВыполнитьОтправкуДанных Тогда СценарийОбменаЧерезВебСервисСЗапросомПароля_ОтправкаПолучениеОтправка(); Иначе @@ -132,7 +149,9 @@ ПроверятьРасхождениеВерсий = Истина; КонецЕсли; - КлючСохраненияПоложенияОкна = ?(ПарольСинхронизацииЗадан И НеНапоминатьОДолгойСинхронизации, "ПарольСинхронизацииЗадан", "") + "/" + ?(НеНапоминатьОДолгойСинхронизации, "НеНапоминатьОДолгойСинхронизации", ""); + КлючСохраненияПоложенияОкна = ?(ПарольСинхронизацииЗадан И НеНапоминатьОДолгойСинхронизации, + "ПарольСинхронизацииЗадан", "") + "/" + ?(НеНапоминатьОДолгойСинхронизации, "НеНапоминатьОДолгойСинхронизации", ""); + КонецПроцедуры &НаКлиенте @@ -143,21 +162,31 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + Если ДлительнаяОперация Тогда ЗавершитьВыполнениеДлительнойОперации(ФоновоеЗаданиеИдентификатор); КонецЕсли; + Если ЗначениеЗаполнено(ПараметрыПовторногоОткрытияФормы) И ПараметрыПовторногоОткрытияФормы.Свойство("НоваяНастройкаСинхронизацииДанных") Тогда + НоваяНастройкаСинхронизацииДанных = ПараметрыПовторногоОткрытияФормы.НоваяНастройкаСинхронизацииДанных; + ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("УзелИнформационнойБазы", НоваяНастройкаСинхронизацииДанных); + ПараметрыФормы.Вставить("УзелИнформационнойБазы", НоваяНастройкаСинхронизацииДанных); ПараметрыФормы.Вставить("АдресДляВосстановленияПароляУчетнойЗаписи", АдресДляВосстановленияПароляУчетнойЗаписи); ПараметрыОткрытия = Новый Структура; ПараметрыОткрытия.Вставить("РежимОткрытияОкна", РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); + ОбменДаннымиКлиент.ОткрытьФормуПослеЗакрытияТекущей(ЭтотОбъект, "Обработка.ВыполнениеОбменаДанными.Форма.Форма", ПараметрыФормы, ПараметрыОткрытия); + Иначе СохранитьФлагВопросаОДолгойСинхронизации(); КонецЕсли; @@ -171,15 +200,17 @@ &НаКлиенте Процедура ПерейтиВЖурналРегистрации(Команда) - ПараметрыФормы = ПолучитьСтруктуруДанныхОтбораЖурналаРегистрации(УзелИнформационнойБазы); + ПараметрыФормы = ДанныеОтбораЖурналаРегистрации(УзелИнформационнойБазы); ОткрытьФорму("Обработка.ЖурналРегистрации.Форма", ПараметрыФормы, ЭтотОбъект); КонецПроцедуры &НаКлиенте Процедура УстановитьОбновление(Команда) + Закрыть(); ОбменДаннымиКлиент.УстановитьОбновлениеКонфигурации(ЗавершениеРаботыСистемы); + КонецПроцедуры &НаКлиенте @@ -212,6 +243,38 @@ // ПОСТАВЛЯЕМАЯ ЧАСТЬ //////////////////////////////////////////////////////////////////////////////// +&НаКлиенте +Функция ПолучитьКнопкуФормыПоИмениКоманды(ЭлементФормы, ИмяКоманды) + + Для Каждого Элемент Из ЭлементФормы.ПодчиненныеЭлементы Цикл + + Если ТипЗнч(Элемент) = Тип("ГруппаФормы") Тогда + + ЭлементФормыПоИмениКоманды = ПолучитьКнопкуФормыПоИмениКоманды(Элемент, ИмяКоманды); + + Если ЭлементФормыПоИмениКоманды <> Неопределено Тогда + + Возврат ЭлементФормыПоИмениКоманды; + + КонецЕсли; + + ИначеЕсли ТипЗнч(Элемент) = Тип("КнопкаФормы") + И СтрНайти(Элемент.ИмяКоманды, ИмяКоманды) > 0 Тогда + + Возврат Элемент; + + Иначе + + Продолжить; + + КонецЕсли; + + КонецЦикла; + + Возврат Неопределено; + +КонецФункции + &НаКлиенте Процедура ВыполнитьПереходДалее() @@ -223,7 +286,6 @@ Процедура ИзменитьПорядковыйНомерПерехода(Итератор) ОчиститьСообщения(); - УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода + Итератор); КонецПроцедуры @@ -236,9 +298,7 @@ ПорядковыйНомерПерехода = Значение; Если ПорядковыйНомерПерехода < 0 Тогда - ПорядковыйНомерПерехода = 0; - КонецЕсли; ПорядковыйНомерПереходаПриИзменении(ЭтоПереходДалее); @@ -260,12 +320,10 @@ СтрокаПереходаТекущая = СтрокиПереходаТекущие[0]; - Элементы.ВыполнениеОбменаДанными.ТекущаяСтраница = Элементы[СтрокаПереходаТекущая.ИмяОсновнойСтраницы]; + Элементы.ВыполнениеОбменаДанными.ТекущаяСтраница = Элементы[СтрокаПереходаТекущая.ИмяОсновнойСтраницы]; Если ЭтоПереходДалее И СтрокаПереходаТекущая.ДлительнаяОперация Тогда - ПодключитьОбработчикОжидания("ВыполнитьОбработчикДлительнойОперации", 0.1, Истина); - КонецЕсли; КонецПроцедуры @@ -415,7 +473,7 @@ Если Отказ Тогда - Если ОшибкаРасхожденияВерсийПриПолученииДанных.ЕстьОшибка Тогда + Если ОшибкаРасхожденияВерсийПриПолученииДанных <> Неопределено И ОшибкаРасхожденияВерсийПриПолученииДанных.ЕстьОшибка Тогда ОбработатьОшибкуРасхожденияВерсий(); Возврат; @@ -454,10 +512,9 @@ // номеру перехода. // ИмяОбработчикаПриОткрытии (необязательный) - Строка. Имя функции-обработчика события открытия текущей страницы // помощника. - // ДлительнаяОперация (необязательный) - Булево. Признак отображения страницы длительной операции. // Истина - отображается страница длительной операции; Ложь - отображается обычная страница. Значение по умолчанию - -// Ложь. +// Ложь. // &НаСервере Процедура ТаблицаПереходовНоваяСтрока( @@ -516,86 +573,140 @@ КонецПроцедуры -&НаКлиенте -Функция ПолучитьКнопкуФормыПоИмениКоманды(ЭлементФормы, ИмяКоманды) - - Для Каждого Элемент Из ЭлементФормы.ПодчиненныеЭлементы Цикл - - Если ТипЗнч(Элемент) = Тип("ГруппаФормы") Тогда - - ЭлементФормыПоИмениКоманды = ПолучитьКнопкуФормыПоИмениКоманды(Элемент, ИмяКоманды); - - Если ЭлементФормыПоИмениКоманды <> Неопределено Тогда - - Возврат ЭлементФормыПоИмениКоманды; - - КонецЕсли; - - ИначеЕсли ТипЗнч(Элемент) = Тип("КнопкаФормы") - И СтрНайти(Элемент.ИмяКоманды, ИмяКоманды) > 0 Тогда - - Возврат Элемент; - - Иначе - - Продолжить; - - КонецЕсли; - - КонецЦикла; - - Возврат Неопределено; - -КонецФункции - //////////////////////////////////////////////////////////////////////////////// // ПЕРЕОПРЕДЕЛЯЕМАЯ ЧАСТЬ //////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////// -// ПРОЦЕДУРЫ И ФУНКЦИИ +// РАЗДЕЛ ПРОЦЕДУРЫ И ФУНКЦИИ &НаКлиенте -Процедура ОбработчикОжиданияДлительнойОперации() +Процедура ЗапуститьПереходДалее() + ПерейтиДалее = Истина; + ВыполнитьПереходДалее(); + +КонецПроцедуры + +&НаКлиенте +Процедура ОбработатьОшибкуРасхожденияВерсий() + + Элементы.ВыполнениеОбменаДанными.ТекущаяСтраница = Элементы.ЗавершениеОбмена; + Элементы.СтатусЗавершенияОбмена.ТекущаяСтраница = Элементы.ОшибкаРасхожденияВерсий; + Элементы.ПанельДействий.ТекущаяСтраница = Элементы.ДействияПродолжитьОтмена; + Элементы.ПродолжитьСинхронизацию.КнопкаПоУмолчанию = Истина; + Элементы.ДекорацияОшибкаРасхожденияВерсий.Заголовок = ОшибкаРасхожденияВерсийПриПолученииДанных.ТекстОшибки; + ПроверятьРасхождениеВерсий = Ложь; + +КонецПроцедуры + +&НаКлиенте +Процедура СохранитьФлагВопросаОДолгойСинхронизации() + + Настройки = Неопределено; + Если СохранитьФлагВопросаОДолгойСинхронизацииСервер(Не НеНапоминатьОДолгойСинхронизации, Настройки) Тогда + ИзмененныеНастройки = Новый Массив; + ИзмененныеНастройки.Добавить(Настройки); + Оповестить("ИзмененыНастройкиПользователя", ИзмененныеНастройки, ЭтотОбъект); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ИнициализироватьПеременныеОбработки() + + // Инициализация переменных обработки + ПроцентВыполнения = 0; + ИдентификаторФайлаСообщенияВСервисе = ""; + ИдентификаторДлительнойОперации = ""; + ДопИнформацияВыполнение = ""; + ДлительнаяОперация = Ложь; + ДлительнаяОперацияЗавершена = Ложь; ДлительнаяОперацияЗавершенаСОшибкой = Ложь; - СообщениеОбОшибке = ""; + ЕстьОшибкаРасхожденияВерсий = Ложь; - ПараметрыАутентификации = ?(ИспользоватьСохраненныеПараметрыАутентификации, - Неопределено, - Новый Структура("ИспользоватьТекущегоПользователя", ИспользоватьТекущегоПользователяДляАутентификации)); +КонецПроцедуры + +&НаСервере +Процедура ПроверкаНеобходимостиПереходаНаНовыйОбмен() - СостояниеОперации = ОбменДаннымиВызовСервера.СостояниеДлительнойОперацииДляУзлаИнформационнойБазы( - ИдентификаторДлительнойОперации, - УзелИнформационнойБазы, - ПараметрыАутентификации, - СообщениеОбОшибке); + МассивСообщений = ПолучитьСообщенияПользователю(Истина); - Если СостояниеОперации = "Active" Тогда + Если МассивСообщений = Неопределено Тогда + Возврат; + КонецЕсли; + + Количество = МассивСообщений.Количество(); + Если Количество = 0 Тогда + Возврат; + КонецЕсли; + + Сообщение = МассивСообщений[Количество-1]; + ТекстСообщения = Сообщение.Текст; + + // При необходимости из сообщения удаляется идентификатор подсистемы. + Если СтрНачинаетсяС(ТекстСообщения, "{ВыполненПереходНаНовыйОбмен}") Тогда - ПодключитьОбработчикОжидания("ОбработчикОжиданияДлительнойОперации", 5, Истина); + ДанныеСообщения = ОбщегоНазначения.ЗначениеИзСтрокиXML(ТекстСообщения); - Иначе - - Если СостояниеОперации <> "Completed" Тогда + Если ДанныеСообщения <> Неопределено + И ТипЗнч(ДанныеСообщения) = Тип("Структура") Тогда - ДлительнаяОперацияЗавершенаСОшибкой = Истина; + ИмяПланаОбмена = ДанныеСообщения.ИмяПланаОбменаДляПереходаНаНовыйОбмен; + КодУзлаПланаОбмена = ДанныеСообщения.Код; + НоваяНастройкаСинхронизацииДанных = ПланыОбмена[ИмяПланаОбмена].НайтиПоКоду(КодУзлаПланаОбмена); - ЕстьОшибки = Истина; + ФоновоеЗаданиеРезультатВыполнения.ДополнительныеДанныеРезультата.Вставить("ПараметрыПовторногоОткрытияФормы", + Новый Структура("НоваяНастройкаСинхронизацииДанных", НоваяНастройкаСинхронизацииДанных)); + + ФоновоеЗаданиеРезультатВыполнения.ДополнительныеДанныеРезультата.Вставить("ЗакрытьФормуБезусловно", Истина); КонецЕсли; - ДлительнаяОперация = Ложь; - ДлительнаяОперацияЗавершена = Истина; - - ВыполнитьПереходДалее(); - КонецЕсли; КонецПроцедуры +&НаСервере +Процедура ПроверитьПодключение() + + УстановитьПривилегированныйРежим(Истина); + + ПараметрыАутентификации = ?(ИспользоватьСохраненныеПараметрыАутентификации, + Неопределено, + Новый Структура("ИспользоватьТекущегоПользователя, Пароль", + ИспользоватьТекущегоПользователяДляАутентификации, ?(ПарольСинхронизацииЗадан, Неопределено, WSПароль))); + + ПараметрыПодключения = РегистрыСведений.НастройкиТранспортаОбмена.НастройкиТранспортаWS(УзелИнформационнойБазы, ПараметрыАутентификации); + + СинхронизацияДанныхОтключена = Ложь; + СообщениеОбОшибкеПользователю = ""; + Если Не ОбменДаннымиСервер.ЕстьПодключениеККорреспонденту(УзелИнформационнойБазы, ПараметрыПодключения, СообщениеОбОшибкеПользователю) Тогда + СообщениеОбОшибке = НСтр("ru = 'Не удалось подключиться к приложению в Интернете, по причине ""%1"". + |Убедитесь, что: + |- введен правильный пароль; + |- приложение доступно по указанному в настройках адресу. + |Повторите попытку синхронизации.'"); + СообщениеОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СообщениеОбОшибке, СообщениеОбОшибкеПользователю); + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СообщениеОбОшибке); + СинхронизацияДанныхОтключена = Истина; + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура ЗафиксироватьЗавершениеОбменаСОшибкой() + + ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( + УзелИнформационнойБазы, + ?(ФоновоеЗаданиеВыполняемоеДействие = 1, "ЗагрузкаДанных", "ВыгрузкаДанных"), + ДатаНачалаОперации, + СообщениеОбОшибке); + +КонецПроцедуры + &НаСервереБезКонтекста -Функция ПолучитьСтруктуруДанныхОтбораЖурналаРегистрации(УзелИнформационнойБазы) +Функция ДанныеОтбораЖурналаРегистрации(УзелИнформационнойБазы) ОтбираемыеСобытия = Новый Массив; ОтбираемыеСобытия.Добавить(ОбменДаннымиСервер.ПолучитьКлючСообщенияЖурналаРегистрации(УзелИнформационнойБазы, Перечисления.ДействияПриОбмене.ЗагрузкаДанных)); @@ -610,31 +721,20 @@ Результат.Вставить("ДатаОкончания", Макс(СостоянияОбменовДаннымиЗагрузка.ДатаОкончания, СостоянияОбменовДаннымиВыгрузка.ДатаОкончания)); Возврат Результат; + КонецФункции -&НаКлиенте -Процедура СохранитьФлагВопросаОДолгойСинхронизации() - - Настройки = Неопределено; - Если СохранитьФлагВопросаОДолгойСинхронизацииСервер(Не НеНапоминатьОДолгойСинхронизации, Настройки) Тогда - ИзмененныеНастройки = Новый Массив; - ИзмененныеНастройки.Добавить(Настройки); - Оповестить("ИзмененыНастройкиПользователя", ИзмененныеНастройки, ЭтотОбъект); - КонецЕсли; - -КонецПроцедуры - &НаСервереБезКонтекста Функция СохранитьФлагВопросаОДолгойСинхронизацииСервер(Знач Флаг, Настройки = Неопределено) Если ОбщегоНазначения.ПодсистемаСуществует("ТехнологияСервиса.РаботаВМоделиСервиса.ОбменДаннымиВМоделиСервиса") И ОбменДаннымиПовтИсп.ЭтоАвтономноеРабочееМесто() Тогда - МодульАвтономнаяРаботаСлужебный = ОбщегоНазначения.ОбщийМодуль("АвтономнаяРаботаСлужебный"); - НадоСохранять = Флаг <> МодульАвтономнаяРаботаСлужебный.ФлагНастройкиВопросаОДолгойСинхронизации(); + МодульАвтономнаяРабота = ОбщегоНазначения.ОбщийМодуль("АвтономнаяРабота"); + НадоСохранять = Флаг <> МодульАвтономнаяРабота.ФлагНастройкиВопросаОДолгойСинхронизации(); Если НадоСохранять Тогда - МодульАвтономнаяРаботаСлужебный.ФлагНастройкиВопросаОДолгойСинхронизации(Флаг, Настройки); + МодульАвтономнаяРабота.ФлагНастройкиВопросаОДолгойСинхронизации(Флаг, Настройки); КонецЕсли; Иначе @@ -644,490 +744,77 @@ Возврат НадоСохранять; КонецФункции -&НаКлиенте -Процедура ОбработатьОшибкуРасхожденияВерсий() - - Элементы.ВыполнениеОбменаДанными.ТекущаяСтраница = Элементы.ЗавершениеОбмена; - Элементы.СтатусЗавершенияОбмена.ТекущаяСтраница = Элементы.ОшибкаРасхожденияВерсий; - Элементы.ПанельДействий.ТекущаяСтраница = Элементы.ДействияПродолжитьОтмена; - Элементы.ПродолжитьСинхронизацию.КнопкаПоУмолчанию = Истина; - Элементы.ДекорацияОшибкаРасхожденияВерсий.Заголовок = ОшибкаРасхожденияВерсийПриПолученииДанных.ТекстОшибки; - ПроверятьРасхождениеВерсий = Ложь; - -КонецПроцедуры - &НаСервереБезКонтекста Процедура ЗавершитьВыполнениеДлительнойОперации(ИдентификаторЗадания) ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторЗадания); КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // РАЗДЕЛ ОБРАБОТЧИКОВ СОБЫТИЙ ПЕРЕХОДОВ -// Обмен через обычные каналы связи. +//////////////////////////////////////////////////////////////////////////////// +// Общие страницы обмена &НаКлиенте -Функция Подключаемый_ОбычнаяЗагрузкаДанных_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - ПроцентВыполнения = 0; - ДопИнформацияВыполнение = ""; - ПерейтиДалее = Ложь; - ФоновоеЗаданиеЗапуститьНаКлиенте(1, Отказ); +Функция Подключаемый_ЗагрузкаДанных_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) + ИнициализироватьПеременныеОбработки(); КонецФункции -&НаКлиенте -Функция Подключаемый_ОбычнаяВыгрузкаДанных_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - ПроцентВыполнения = 0; - ДопИнформацияВыполнение = ""; - ПерейтиДалее = Ложь; - ФоновоеЗаданиеЗапуститьНаКлиенте(2, Отказ); -КонецФункции - - -&НаКлиенте -Процедура ФоновоеЗаданиеПроверитьНаКлиенте() - Результат = ФоновоеЗаданиеПолучитьРезультат(); - Если Результат.ФоновоеЗаданиеВыполнено Тогда - // Выполнен переход на новый обмен. Необходимо закрыть форму и открыть ее заново с другими параметрами. - Если Результат.Свойство("ЗакрытьФормуБезусловно") И Результат.ЗакрытьФормуБезусловно Тогда - ПараметрыПовторногоОткрытияФормы = Результат.ПараметрыПовторногоОткрытияФормы; - ЭтотОбъект.Закрыть(); - КонецЕсли; - ПроцентВыполнения = 100; - ДопИнформацияВыполнение = ""; - Если ОшибкаРасхожденияВерсийПриПолученииДанных <> Неопределено - И ОшибкаРасхожденияВерсийПриПолученииДанных.ЕстьОшибка = Истина Тогда - Отказ = Истина; - Иначе - ЕстьОшибки = ЕстьОшибки ИЛИ Результат.Отказ; - Отказ = Ложь; - КонецЕсли; - ДлительнаяОперация = Ложь; - // Переход дальше с задержкой на 1 секунду. - ПодключитьОбработчикОжидания("ЗапуститьПереходДалее", 1, Истина); - - Иначе - ПодключитьОбработчикОжидания("ФоновоеЗаданиеПроверитьНаКлиенте", 2, Истина); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ЗапуститьПереходДалее() - ПроцентВыполнения = 0; - ПерейтиДалее = Истина; - ВыполнитьПереходДалее(); -КонецПроцедуры - -&НаКлиенте -Процедура ФоновоеЗаданиеЗапуститьНаКлиенте(Действие, Отказ) - ПараметрыЗадания = Новый Структура; - ПараметрыЗадания.Вставить("Отказ", Отказ); - ПараметрыЗадания.Вставить("УзелИнформационнойБазы", УзелИнформационнойБазы); - Если Действие = 1 Тогда - // Загрузка. - ПараметрыЗадания.Вставить("ВыполнятьЗагрузку", Истина); - ПараметрыЗадания.Вставить("ВыполнятьВыгрузку", Ложь); - ИначеЕсли Действие = 2 Тогда - // Выгрузка. - ПараметрыЗадания.Вставить("ВыполнятьЗагрузку", Ложь); - ПараметрыЗадания.Вставить("ВыполнятьВыгрузку", Истина); - КонецЕсли; - ПараметрыЗадания.Вставить("ВидТранспортаСообщенийОбмена", ВидТранспортаСообщений); - - Результат = ФоновоеЗаданиеЗапустить(ПараметрыЗадания, ОшибкаРасхожденияВерсийПриПолученииДанных, ПроверятьРасхождениеВерсий); - Если Результат.ФоновоеЗаданиеЗапущено Тогда - ПодключитьОбработчикОжидания("ФоновоеЗаданиеПроверитьНаКлиенте", 2, Истина); - ДлительнаяОперация = Истина; - Иначе - // Переход далее с задержкой в 1 сек. - ПроцентВыполнения = 100; - ДопИнформацияВыполнение = ""; - ПодключитьОбработчикОжидания("ЗапуститьПереходДалее", 1, Истина); - КонецЕсли; -КонецПроцедуры - -&НаСервере -Функция ФоновоеЗаданиеЗапустить(Знач ПараметрыЗадания, ОшибкаРасхожденияВерсийПриПолученииДанных, ПроверятьРасхождениеВерсий) - Если ПараметрыЗадания.ВыполнятьЗагрузку Тогда - ОбменДаннымиСервер.ИнициализироватьПараметрыПроверкиРасхожденияВерсий(ПроверятьРасхождениеВерсий); - НаименованиеЗадания = НСтр("ru = 'Загрузка данных'"); - Иначе - НаименованиеЗадания = НСтр("ru = 'Выгрузка данных'"); - КонецЕсли; - - Результат = Новый Структура; - Результат.Вставить("ФоновоеЗаданиеЗапущено", Ложь); - Результат.Вставить("Отказ", Ложь); - // Запуск фонового задания - Попытка - РезультатФоновогоЗадания = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "Обработки.ВыполнениеОбменаДанными.ВыполнитьЗапускОбменаДанными", - ПараметрыЗадания, - НаименованиеЗадания); - ФоновоеЗаданиеИдентификатор = РезультатФоновогоЗадания.ИдентификаторЗадания; - ФоновоеЗаданиеАдресХранилища = РезультатФоновогоЗадания.АдресХранилища; - - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - ФоновоеЗаданиеЗагрузитьРезультат(Результат); - Результат.ФоновоеЗаданиеЗапущено = Ложь; - // Выполнен переход на новый обмен. Необходимо закрыть форму и открыть ее заново с другими параметрами. - Если Результат.Свойство("ЗакрытьФормуБезусловно") И Результат.ЗакрытьФормуБезусловно Тогда - ПараметрыПовторногоОткрытияФормы = Результат.ПараметрыПовторногоОткрытияФормы; - КонецЕсли; - Если Результат.Отказ Тогда - ЕстьОшибки = Истина; - КонецЕсли; - Иначе - ФоновоеЗаданиеПрочитатьПромежуточныйРезультат(); - Результат.ФоновоеЗаданиеЗапущено = Истина; - КонецЕсли; - - Исключение - ЕстьОшибки = Истина; - Результат.Отказ = Истина; - ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( - ПараметрыЗадания.УзелИнформационнойБазы, - ?(ПараметрыЗадания.ВыполнятьЗагрузку,"ЗагрузкаДанных","ВыгрузкаДанных"), - ТекущаяДатаСеанса(), - ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - КонецПопытки; - - - Возврат Результат; -КонецФункции - -&НаСервере -Процедура ФоновоеЗаданиеПрочитатьПромежуточныйРезультат() - Прогресс = ДлительныеОперации.ПрочитатьПрогресс(ФоновоеЗаданиеИдентификатор); - Если Прогресс <> Неопределено Тогда - ПроцентВыполнения = Прогресс.Процент; - ДопИнформацияВыполнение = Прогресс.Текст; - КонецЕсли; -КонецПроцедуры - -&НаСервере -Процедура ФоновоеЗаданиеЗагрузитьРезультат(Результат) - РезультатВыполненияВФоне = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); - Если РезультатВыполненияВФоне = Неопределено Тогда - Возврат; - КонецЕсли; - Если РезультатВыполненияВФоне.ВыполнятьЗагрузку Тогда - ОшибкаРасхожденияВерсийПриПолученииДанных = ОбменДаннымиСервер.ОшибкаРасхожденияВерсийПриПолученииДанных(); - МассивСообщений = ПолучитьСообщенияПользователю(Истина); - Если МассивСообщений = Неопределено Тогда - Возврат; - КонецЕсли; - Количество = МассивСообщений.Количество(); - Если Количество = 0 Тогда - Возврат; - КонецЕсли; - - Сообщение = МассивСообщений[Количество-1]; - ТекстСообщения = Сообщение.Текст; - // При необходимости из сообщения удаляется идентификатор подсистемы. - Если СтрНачинаетсяС(ТекстСообщения, "{ВыполненПереходНаНовыйОбмен}") Тогда - ДанныеСообщения = ОбщегоНазначения.ЗначениеИзСтрокиXML(ТекстСообщения); - Если ДанныеСообщения <> Неопределено - И ТипЗнч(ДанныеСообщения) = Тип("Структура") Тогда - - ИмяПланаОбмена = ДанныеСообщения.ИмяПланаОбменаДляПереходаНаНовыйОбмен; - КодУзлаПланаОбмена = ДанныеСообщения.Код; - НоваяНастройкаСинхронизацииДанных = ПланыОбмена[ИмяПланаОбмена].НайтиПоКоду(КодУзлаПланаОбмена); - - Результат.Вставить("ПараметрыПовторногоОткрытияФормы", - Новый Структура("НоваяНастройкаСинхронизацииДанных", НоваяНастройкаСинхронизацииДанных)); - Результат.ЗакрытьФормуБезусловно = Истина; - КонецЕсли; - КонецЕсли; - КонецЕсли; - Результат.Отказ = РезультатВыполненияВФоне.Отказ; - УдалитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); - - ФоновоеЗаданиеАдресХранилища = Неопределено; - ФоновоеЗаданиеИдентификатор = Неопределено; -КонецПроцедуры - -Функция ФоновоеЗаданиеПолучитьРезультат() - Результат = Новый Структура; - Результат.Вставить("ФоновоеЗаданиеВыполнено", Ложь); - Результат.Вставить("Отказ", Ложь); - Состояние = ОбменДаннымиВызовСервера.СостояниеЗадания(ФоновоеЗаданиеИдентификатор); - - Если Состояние = "Активно" Тогда - ФоновоеЗаданиеПрочитатьПромежуточныйРезультат(); - ИначеЕсли Состояние = "Завершено" Тогда - Результат.ФоновоеЗаданиеВыполнено = Истина; - ФоновоеЗаданиеЗагрузитьРезультат(Результат); - КонецЕсли; - - Возврат Результат; -КонецФункции - -// Обмен через Веб-сервис - -&НаКлиенте -Функция Подключаемый_ЗапросПароляПользователя_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) - - Элементы.ВыполнитьОбмен.КнопкаПоУмолчанию = Истина; - -КонецФункции - -&НаКлиенте -Функция Подключаемый_ЗапросПароляПользователя_ПриПереходеДалее(Отказ) - - Если ПустаяСтрока(WSПароль) Тогда - НСтрока = НСтр("ru = 'Не указан пароль.'"); - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтрока,, "WSПароль",, Отказ); - Возврат Неопределено; - КонецЕсли; - - СохранитьФлагВопросаОДолгойСинхронизации(); -КонецФункции - -&НаКлиенте -Функция Подключаемый_ОжиданиеПроверкиПодключения_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - ПроверитьПодключение(); - -КонецФункции - -&НаСервере -Процедура ПроверитьПодключение() - - УстановитьПривилегированныйРежим(Истина); - - ПараметрыАутентификации = ?(ИспользоватьСохраненныеПараметрыАутентификации, - Неопределено, - Новый Структура("ИспользоватьТекущегоПользователя, Пароль", - ИспользоватьТекущегоПользователяДляАутентификации, ?(ПарольСинхронизацииЗадан, Неопределено, WSПароль))); - - ПараметрыПодключения = РегистрыСведений.НастройкиТранспортаОбмена.НастройкиТранспортаWS(УзелИнформационнойБазы, ПараметрыАутентификации); - - Если Не ОбменДаннымиСервер.ЕстьПодключениеККорреспонденту(УзелИнформационнойБазы, ПараметрыПодключения, СообщениеОбОшибкеПользователю) Тогда - СинхронизацияДанныхОтключена = Истина; - КонецЕсли; - - // Сбрасываем пароль после проверки подключения. - WSПароль = ""; -КонецПроцедуры - &НаКлиенте Функция Подключаемый_ЗагрузкаДанных_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - ДлительнаяОперация = Ложь; - ДлительнаяОперацияЗавершена = Ложь; - ИдентификаторФайлаСообщенияВСервисе = ""; - ИдентификаторДлительнойОперации = ""; - - ЕстьОшибкаРасхожденияВерсий = Ложь; + ПерейтиДалее = Ложь; + ФоновоеЗаданиеВыполняемоеДействие = 1; Если Не СинхронизацияДанныхОтключена Тогда - - ПараметрыАутентификации = ?(ИспользоватьСохраненныеПараметрыАутентификации, Неопределено, - Новый Структура("ИспользоватьТекущегоПользователя", ИспользоватьТекущегоПользователяДляАутентификации)); - - ЗагрузкаДанных_ОбработкаДлительнойОперации( - Отказ, - ПараметрыАутентификации); - - Если ОшибкаРасхожденияВерсийПриПолученииДанных.ЕстьОшибка Тогда - ЕстьОшибкаРасхожденияВерсий = Истина; - КонецЕсли; - - КонецЕсли; - - Если ЕстьОшибкаРасхожденияВерсий Тогда - Отказ = Истина; - - Иначе - ЕстьОшибки = ЕстьОшибки Или Отказ; - Отказ = Ложь; - - КонецЕсли; - -КонецФункции - -&НаСервере -Процедура ЗагрузкаДанных_ОбработкаДлительнойОперации( - Отказ, - Знач ПараметрыАутентификации) - - ДатаНачалаОперации = ТекущаяДатаСеанса(); - - ОбменДаннымиСервер.ИнициализироватьПараметрыПроверкиРасхожденияВерсий(ПроверятьРасхождениеВерсий); - - // Запускаем выполнение обмена. - - ПараметрыОбмена = ОбменДаннымиСервер.ПараметрыОбмена(); - ПараметрыОбмена.ВидТранспортаСообщенийОбмена = Перечисления.ВидыТранспортаСообщенийОбмена.WS; - ПараметрыОбмена.ВыполнятьЗагрузку = Истина; - ПараметрыОбмена.ВыполнятьВыгрузку = Ложь; - - ПараметрыОбмена.ДлительнаяОперацияРазрешена = Истина; - ПараметрыОбмена.ДлительнаяОперация = ДлительнаяОперация; - ПараметрыОбмена.ИдентификаторОперации = ИдентификаторДлительнойОперации; - ПараметрыОбмена.ИдентификаторФайла = ИдентификаторФайлаСообщенияВСервисе; - ПараметрыОбмена.ПараметрыАутентификации = ПараметрыАутентификации; - - ОбменДаннымиСервер.ВыполнитьОбменДаннымиДляУзлаИнформационнойБазы(УзелИнформационнойБазы, ПараметрыОбмена, Отказ); - - ДлительнаяОперация = ПараметрыОбмена.ДлительнаяОперация; - ИдентификаторДлительнойОперации = ПараметрыОбмена.ИдентификаторОперации; - ИдентификаторФайлаСообщенияВСервисе = ПараметрыОбмена.ИдентификаторФайла; - ПараметрыАутентификации = ПараметрыОбмена.ПараметрыАутентификации; - - ОшибкаРасхожденияВерсийПриПолученииДанных = ОбменДаннымиСервер.ОшибкаРасхожденияВерсийПриПолученииДанных(); - -КонецПроцедуры - -&НаКлиенте -Функция Подключаемый_ЗагрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - Если ДлительнаяОперация Тогда - - ПерейтиДалее = Ложь; - - ПодключитьОбработчикОжидания("ОбработчикОжиданияДлительнойОперации", 5, Истина); - + ФоновоеЗаданиеЗапуститьНаКлиенте(ФоновоеЗаданиеВыполняемоеДействие, + "Обработки.ВыполнениеОбменаДанными.ВыполнитьЗапускОбменаДанными", + Отказ); КонецЕсли; КонецФункции &НаКлиенте -Функция Подключаемый_ЗагрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) +Функция Подключаемый_ЗагрузкаДанных_ОбработкаДлительнойОперации_Окончание(Отказ, ПерейтиДалее) - Если ДлительнаяОперацияЗавершена Тогда - - Если ДлительнаяОперацияЗавершенаСОшибкой Тогда - - ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( - УзелИнформационнойБазы, - "ЗагрузкаДанных", - ДатаНачалаОперации, - СообщениеОбОшибке); - - Иначе - - ПараметрыАутентификации = ?(ИспользоватьСохраненныеПараметрыАутентификации, - Неопределено, - Новый Структура("ИспользоватьТекущегоПользователя", ИспользоватьТекущегоПользователяДляАутентификации)); - - ОбменДаннымиВызовСервера.ВыполнитьОбменДаннымиДляУзлаИнформационнойБазыЗавершениеДлительнойОперации( - Ложь, - УзелИнформационнойБазы, - ИдентификаторФайлаСообщенияВСервисе, - ДатаНачалаОперации, - ПараметрыАутентификации); - - КонецЕсли; - + Если ЕстьОшибки Или ДлительнаяОперацияЗавершенаСОшибкой Тогда + ЗафиксироватьЗавершениеОбменаСОшибкой(); КонецЕсли; КонецФункции +&НаКлиенте +Функция Подключаемый_ВыгрузкаДанных_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) + ИнициализироватьПеременныеОбработки(); +КонецФункции + &НаКлиенте Функция Подключаемый_ВыгрузкаДанных_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - ДлительнаяОперация = Ложь; - ДлительнаяОперацияЗавершена = Ложь; - ИдентификаторФайлаСообщенияВСервисе = ""; - ИдентификаторДлительнойОперации = ""; + ПерейтиДалее = Ложь; + ФоновоеЗаданиеВыполняемоеДействие = 2; - Если Не СинхронизацияДанныхОтключена Тогда - - ПараметрыАутентификации = ?(ИспользоватьСохраненныеПараметрыАутентификации, - Неопределено, - Новый Структура("ИспользоватьТекущегоПользователя", ИспользоватьТекущегоПользователяДляАутентификации)); - - ВыгрузкаДанных_ОбработкаДлительнойОперации( - Отказ, - УзелИнформационнойБазы, - ДлительнаяОперация, - ИдентификаторДлительнойОперации, - ИдентификаторФайлаСообщенияВСервисе, - ДатаНачалаОперации, - ПараметрыАутентификации); - - КонецЕсли; - - ЕстьОшибки = ЕстьОшибки ИЛИ Отказ; - - Отказ = Ложь; - -КонецФункции - -&НаСервереБезКонтекста -Процедура ВыгрузкаДанных_ОбработкаДлительнойОперации( - Отказ, - Знач УзелИнформационнойБазы, - ДлительнаяОперация, - ИдентификаторОперации, - ИдентификаторФайла, - ДатаНачалаОперации, - Знач ПараметрыАутентификации) - - ДатаНачалаОперации = ТекущаяДатаСеанса(); - - // Запускаем выполнение обмена. - ПараметрыОбмена = ОбменДаннымиСервер.ПараметрыОбмена(); - ПараметрыОбмена.ВидТранспортаСообщенийОбмена = Перечисления.ВидыТранспортаСообщенийОбмена.WS; - ПараметрыОбмена.ВыполнятьЗагрузку = Ложь; - ПараметрыОбмена.ВыполнятьВыгрузку = Истина; - - ПараметрыОбмена.ДлительнаяОперацияРазрешена = Истина; - ПараметрыОбмена.ДлительнаяОперация = ДлительнаяОперация; - ПараметрыОбмена.ИдентификаторОперации = ИдентификаторОперации; - ПараметрыОбмена.ИдентификаторФайла = ИдентификаторФайла; - ПараметрыОбмена.ПараметрыАутентификации = ПараметрыАутентификации; - - ОбменДаннымиСервер.ВыполнитьОбменДаннымиДляУзлаИнформационнойБазы(УзелИнформационнойБазы, ПараметрыОбмена, Отказ); - - ДлительнаяОперация = ПараметрыОбмена.ДлительнаяОперация; - ИдентификаторОперации = ПараметрыОбмена.ИдентификаторОперации; - ИдентификаторФайла = ПараметрыОбмена.ИдентификаторФайла; - ПараметрыАутентификации = ПараметрыОбмена.ПараметрыАутентификации; - -КонецПроцедуры - -&НаКлиенте -Функция Подключаемый_ВыгрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - Если ДлительнаяОперация Тогда - - ПерейтиДалее = Ложь; - - ПодключитьОбработчикОжидания("ОбработчикОжиданияДлительнойОперации", 5, Истина); - - КонецЕсли; + ФоновоеЗаданиеЗапуститьНаКлиенте(ФоновоеЗаданиеВыполняемоеДействие, + "Обработки.ВыполнениеОбменаДанными.ВыполнитьЗапускОбменаДанными", + Отказ); КонецФункции &НаКлиенте -Функция Подключаемый_ВыгрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) +Функция Подключаемый_ВыгрузкаДанных_ОбработкаДлительнойОперации_Окончание(Отказ, ПерейтиДалее) - Если ДлительнаяОперацияЗавершена Тогда - - Если ДлительнаяОперацияЗавершенаСОшибкой Тогда - - ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( - УзелИнформационнойБазы, - "ВыгрузкаДанных", - ДатаНачалаОперации, - СообщениеОбОшибке); - - Иначе - + Если ЕстьОшибки Или ДлительнаяОперацияЗавершенаСОшибкой Тогда + ЗафиксироватьЗавершениеОбменаСОшибкой(); + Иначе + Если ДлительнаяОперацияЗавершена Тогда ОбменДаннымиВызовСервера.ЗафиксироватьВыполнениеВыгрузкиДанныхВРежимеДлительнойОперации( - УзелИнформационнойБазы, - ДатаНачалаОперации); - + УзелИнформационнойБазы, + ДатаНачалаОперации); КонецЕсли; - КонецЕсли; КонецФункции -// - &НаКлиенте Функция Подключаемый_ЗавершениеОбмена_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) @@ -1181,6 +868,326 @@ КонецФункции +//////////////////////////////////////////////////////////////////////////////// +// Страницы обмена через Веб-сервис + +&НаКлиенте +Функция Подключаемый_ЗапросПароляПользователя_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) + + Элементы.ВыполнитьОбмен.КнопкаПоУмолчанию = Истина; + +КонецФункции + +&НаКлиенте +Функция Подключаемый_ЗапросПароляПользователя_ПриПереходеДалее(Отказ) + + Если ПустаяСтрока(WSПароль) Тогда + НСтрока = НСтр("ru = 'Не указан пароль.'"); + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтрока,, "WSПароль",, Отказ); + Возврат Неопределено; + КонецЕсли; + + СохранитьФлагВопросаОДолгойСинхронизации(); + +КонецФункции + +&НаКлиенте +Функция Подключаемый_ОжиданиеПроверкиПодключения_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) + + ПроверитьПодключение(); + Если СинхронизацияДанныхОтключена Тогда + Отказ = Истина; + КонецЕсли; + ПерейтиДалее = НЕ Отказ; + +КонецФункции + +//////////////////////////////////////////////////////////////////////////////// +// РАЗДЕЛ ОБРАБОТКИ ФОНОВЫХ ЗАДАНИЙ + +&НаКлиенте +Процедура ФоновоеЗаданиеЗапуститьНаКлиенте(Действие, ИмяЗадания, Отказ) + + // Т.к. в фоновом задании параметры сеанса не доступны, то если пароль не сохранен в базе, его надо передать с формы. + ПараметрыАутентификации = ?(ИспользоватьСохраненныеПараметрыАутентификации, + Неопределено, + Новый Структура("ИспользоватьТекущегоПользователя, Пароль", + ИспользоватьТекущегоПользователяДляАутентификации, ?(ПарольСинхронизацииСохранен, Неопределено, WSПароль))); + + ПараметрыЗадания = Новый Структура; + ПараметрыЗадания.Вставить("ИмяЗадания", ИмяЗадания); + ПараметрыЗадания.Вставить("Отказ", Отказ); + ПараметрыЗадания.Вставить("УзелИнформационнойБазы", УзелИнформационнойБазы); + ПараметрыЗадания.Вставить("ВыполнятьЗагрузку", ФоновоеЗаданиеВыполняемоеДействие = 1); + ПараметрыЗадания.Вставить("ВыполнятьВыгрузку", ФоновоеЗаданиеВыполняемоеДействие = 2); + ПараметрыЗадания.Вставить("ВидТранспортаСообщенийОбмена", ВидТранспортаСообщений); + ПараметрыЗадания.Вставить("ДлительнаяОперация", ДлительнаяОперация); + ПараметрыЗадания.Вставить("ИдентификаторДлительнойОперации", ИдентификаторДлительнойОперации); + ПараметрыЗадания.Вставить("ИдентификаторФайлаСообщенияВСервисе", ИдентификаторФайлаСообщенияВСервисе); + ПараметрыЗадания.Вставить("ПараметрыАутентификации", ПараметрыАутентификации); + + Результат = ФоновоеЗаданиеЗапуститьНаСервере(ПараметрыЗадания, ОшибкаРасхожденияВерсийПриПолученииДанных, ПроверятьРасхождениеВерсий); + + Если Результат = Неопределено Тогда + Отказ = Истина; + Возврат; + КонецЕсли; + + Если Результат.Статус = "Выполняется" Тогда + + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ПараметрыОжидания.ВыводитьСообщения = Истина; + + Если ФоновоеЗаданиеИспользоватьПрогресс Тогда + ПараметрыОжидания.ВыводитьПрогрессВыполнения = Истина; + ПараметрыОжидания.ОповещениеОПрогрессеВыполнения = Новый ОписаниеОповещения("ПрогрессВыполненияФоновогоЗадания", ЭтотОбъект); + ПараметрыОжидания.Интервал = 1; + КонецЕсли; + + ОповещениеОЗавершении = Новый ОписаниеОповещения("ЗавершениеФоновогоЗадания", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(Результат, ОповещениеОЗавершении, ПараметрыОжидания); + + Иначе + ФоновоеЗаданиеРезультатВыполнения = Результат; + ПодключитьОбработчикОжидания("РезультатВыполненияФоновогоЗадания", 1, Истина); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ЗавершениеФоновогоЗадания(Результат, ДополнительныеПараметры) Экспорт + + ФоновоеЗаданиеРезультатВыполнения = Результат; + РезультатВыполненияФоновогоЗадания(); + +КонецПроцедуры + +&НаКлиенте +Процедура ПрогрессВыполненияФоновогоЗадания(Прогресс, ДополнительныеПараметры) Экспорт + + Если Прогресс = Неопределено Тогда + Возврат; + КонецЕсли; + + Если Прогресс.Прогресс <> Неопределено Тогда + СтруктураПрогресса = Прогресс.Прогресс; + ПроцентВыполнения = СтруктураПрогресса.Процент; + ДопИнформацияВыполнение = СтруктураПрогресса.Текст; + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура РезультатВыполненияФоновогоЗадания() + + ФоновоеЗаданиеПолучитьРезультатНаСервере(); + + // Если обмен данных выполняется с приложением в интернете, то надо дождаться окончания выполнения синхронизации + // на стороне корреспондента. + Если ДлительнаяОперация Тогда + ПодключитьОбработчикОжидания("ОбработчикОжиданияДлительнойОперации", 1, Истина); + Иначе + ПодключитьОбработчикОжидания("ЗавершениеДлительнойОперации", 1, Истина); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ОбработчикОжиданияДлительнойОперации() + + ДлительнаяОперацияЗавершенаСОшибкой = Ложь; + СообщениеОбОшибке = ""; + + ПараметрыАутентификации = ?(ИспользоватьСохраненныеПараметрыАутентификации, + Неопределено, + Новый Структура("ИспользоватьТекущегоПользователя, Пароль", + ИспользоватьТекущегоПользователяДляАутентификации, ?(ПарольСинхронизацииЗадан, Неопределено, WSПароль))); + + СостояниеОперации = ОбменДаннымиВызовСервера.СостояниеДлительнойОперацииДляУзлаИнформационнойБазы( + ИдентификаторДлительнойОперации, + УзелИнформационнойБазы, + ПараметрыАутентификации, + СообщениеОбОшибке); + + Если СостояниеОперации = "Active" Тогда + ПодключитьОбработчикОжидания("ОбработчикОжиданияДлительнойОперации", 5, Истина); + Иначе + + Если СостояниеОперации <> "Completed" Тогда + ДлительнаяОперацияЗавершенаСОшибкой = Истина; + ЕстьОшибки = Истина; + КонецЕсли; + + ДлительнаяОперация = Ложь; + ДлительнаяОперацияЗавершена = Истина; + ИдентификаторДлительнойОперации = ""; + + ПодключитьОбработчикОжидания("ЗавершениеДлительнойОперации", 1, Истина); + + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ЗавершениеДлительнойОперации() + + Если ФоновоеЗаданиеИспользоватьПрогресс Тогда + ПроцентВыполнения = 100; + ДопИнформацияВыполнение = ""; + КонецЕсли; + + Если ДлительнаяОперацияЗавершенаСОшибкой Тогда + ИдентификаторФайлаСообщенияВСервисе = ""; + Иначе + + // Если выполнялось длительное получение данных из приложения в интернете, + // то необходимо загрузить полученный файл с данными в базу. + Если ФоновоеЗаданиеВыполняемоеДействие = 1 + И ЗначениеЗаполнено(ИдентификаторФайлаСообщенияВСервисе) Тогда + + ФоновоеЗаданиеЗапуститьНаКлиенте(ФоновоеЗаданиеВыполняемоеДействие, + "Обработки.ВыполнениеОбменаДанными.ВыполнитьЗагрузкуПолученногоИзИнтернетаФайла", + Ложь); + + КонецЕсли; + + КонецЕсли; + + Если Не ЗначениеЗаполнено(ИдентификаторФайлаСообщенияВСервисе) Тогда + ПослеВыполненияФоновогоЗадания(); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ПослеВыполненияФоновогоЗадания() + + // Выполнен переход на новый обмен. Необходимо закрыть форму и открыть ее заново с другими параметрами. + Если ФоновоеЗаданиеРезультатВыполнения.ДополнительныеДанныеРезультата.Свойство("ЗакрытьФормуБезусловно") + И ФоновоеЗаданиеРезультатВыполнения.ДополнительныеДанныеРезультата.ЗакрытьФормуБезусловно Тогда + ПараметрыПовторногоОткрытияФормы = ФоновоеЗаданиеРезультатВыполнения.ДополнительныеДанныеРезультата.ПараметрыПовторногоОткрытияФормы; + ЭтотОбъект.Закрыть(); + КонецЕсли; + + // Переход дальше с задержкой на 1 секунду, чтобы отобразить прогресс бар 100%. + ПодключитьОбработчикОжидания("ЗапуститьПереходДалее", 1, Истина); + +КонецПроцедуры + +&НаСервере +Функция ФоновоеЗаданиеЗапуститьНаСервере(ПараметрыЗадания, ОшибкаРасхожденияВерсийПриПолученииДанных, ПроверятьРасхождениеВерсий) + + Если ПараметрыЗадания.ВыполнятьЗагрузку Тогда + + Если ПроверятьРасхождениеВерсий Тогда + ОбменДаннымиСервер.ИнициализироватьПараметрыПроверкиРасхожденияВерсий(ПроверятьРасхождениеВерсий); + КонецЕсли; + + ШаблонНаименования = НСтр("ru = 'Выполняется загрузка данных из %1'"); + + Иначе + ШаблонНаименования = НСтр("ru = 'Выполняется выгрузка данных в %1'"); + КонецЕсли; + + НаименованиеЗадания = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + ШаблонНаименования, ПараметрыЗадания.УзелИнформационнойБазы); + + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания; + + ДатаНачалаОперации = ТекущаяДатаСеанса(); + ПараметрыЗадания.Вставить("ДатаНачалаОперации", ДатаНачалаОперации); + + // Запуск фонового задания + Результат = ДлительныеОперации.ВыполнитьВФоне( + ПараметрыЗадания.ИмяЗадания, + ПараметрыЗадания, + ПараметрыВыполнения); + + ФоновоеЗаданиеИдентификатор = Результат.ИдентификаторЗадания; + ФоновоеЗаданиеАдресХранилища = Результат.АдресРезультата; + + Возврат Результат; + +КонецФункции + +&НаСервере +Процедура ФоновоеЗаданиеПолучитьРезультатНаСервере() + + ФоновоеЗаданиеРезультатВыполнения.Вставить("ДополнительныеДанныеРезультата", Новый Структура()); + + СообщениеОбОшибке = ""; + + ТиповоеПредставлениеОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось выполнить %1. Подробности см. в журнале регистрации'"), + ?(ФоновоеЗаданиеВыполняемоеДействие = 1, НСтр("ru = 'получение данных'"), НСтр("ru = 'отправку данных'"))); + + Если ФоновоеЗаданиеРезультатВыполнения.Статус = "Ошибка" Тогда + СообщениеОбОшибке = ФоновоеЗаданиеРезультатВыполнения.ПодробноеПредставлениеОшибки; + Иначе + + РезультатВыполненияВФоне = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); + + Если РезультатВыполненияВФоне = Неопределено Тогда + СообщениеОбОшибке = ТиповоеПредставлениеОшибки; + Иначе + + Если РезультатВыполненияВФоне.ВыполнятьЗагрузку Тогда + + // Данные по расхождению версий правил обмена. + ОшибкаРасхожденияВерсийПриПолученииДанных = ОбменДаннымиСервер.ОшибкаРасхожденияВерсийПриПолученииДанных(); + + Если ОшибкаРасхожденияВерсийПриПолученииДанных <> Неопределено + И ОшибкаРасхожденияВерсийПриПолученииДанных.ЕстьОшибка = Истина Тогда + СообщениеОбОшибке = ОшибкаРасхожденияВерсийПриПолученииДанных.ТекстОшибки; + КонецЕсли; + + // Проверка перехода на новый обмен данными. + ПроверкаНеобходимостиПереходаНаНовыйОбмен(); + + Если ФоновоеЗаданиеРезультатВыполнения.ДополнительныеДанныеРезультата.Свойство("ПараметрыПовторногоОткрытияФормы") Тогда + Возврат; + КонецЕсли; + + КонецЕсли; + + Если РезультатВыполненияВФоне.Отказ И Не ЗначениеЗаполнено(СообщениеОбОшибке) Тогда + СообщениеОбОшибке = ТиповоеПредставлениеОшибки; + КонецЕсли; + + ЗаполнитьЗначенияСвойств( + ЭтотОбъект, + РезультатВыполненияВФоне, + "ДлительнаяОперация, ИдентификаторДлительнойОперации, ИдентификаторФайлаСообщенияВСервисе"); + + УдалитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); + + КонецЕсли; + + ФоновоеЗаданиеАдресХранилища = Неопределено; + ФоновоеЗаданиеИдентификатор = Неопределено; + + КонецЕсли; + + // Проверим наличие возможных ошибок при выполнении фонового задания. + ЕстьОшибки = ЗначениеЗаполнено(СообщениеОбОшибке); + + // Если в процессе синхронизации данных возникли ошибки, зафиксируем их. + Если ЕстьОшибки Тогда + + // Если в базе-корреспонденте была запущена длительная операция, ее надо завершить. + Если Не ДлительнаяОперацияЗавершена Тогда + ЗавершитьВыполнениеДлительнойОперации(ИдентификаторДлительнойОперации); + КонецЕсли; + + ДлительнаяОперацияЗавершена = Истина; + ДлительнаяОперацияЗавершенаСОшибкой = Истина; + + КонецЕсли; + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // РАЗДЕЛ ИНИЦИАЛИЗАЦИИ ПЕРЕХОДОВ @@ -1188,10 +1195,11 @@ Процедура СценарийОбменаОбычный() ТаблицаПереходов.Очистить(); - ТаблицаПереходовНоваяСтрока(1, "ОжиданиеСинхронизацииДанныхПрогрессБарЗагрузка",, Истина, "ОбычнаяЗагрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(2, "ОжиданиеСинхронизацииДанныхПрогрессБарВыгрузка",, Истина, "ОбычнаяВыгрузкаДанных_ОбработкаДлительнойОперации"); - - ТаблицаПереходовНоваяСтрока(3, "ЗавершениеОбмена", "ЗавершениеОбмена_ПриОткрытии", Истина, "ЗавершениеОбмена_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(1, "ОжиданиеСинхронизацииДанныхПрогрессБарЗагрузка", "ЗагрузкаДанных_ПриОткрытии", Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(2, "ОжиданиеСинхронизацииДанныхПрогрессБарЗагрузка", , Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации_Окончание"); + ТаблицаПереходовНоваяСтрока(3, "ОжиданиеСинхронизацииДанныхПрогрессБарВыгрузка", "ВыгрузкаДанных_ПриОткрытии", Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(4, "ОжиданиеСинхронизацииДанныхПрогрессБарВыгрузка", , Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации_Окончание"); + ТаблицаПереходовНоваяСтрока(5, "ЗавершениеОбмена", "ЗавершениеОбмена_ПриОткрытии", Истина, "ЗавершениеОбмена_ОбработкаДлительнойОперации"); КонецПроцедуры @@ -1201,13 +1209,11 @@ ТаблицаПереходов.Очистить(); ТаблицаПереходовНоваяСтрока(1, "ОжиданиеСинхронизацииДанных",, Истина, "ОжиданиеПроверкиПодключения_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(2, "ОжиданиеСинхронизацииДанных",, Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(3, "ОжиданиеСинхронизацииДанных",, Истина, "ЗагрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(4, "ОжиданиеСинхронизацииДанных",, Истина, "ЗагрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(5, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(6, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(7, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(8, "ЗавершениеОбмена", "ЗавершениеОбмена_ПриОткрытии", Истина, "ЗавершениеОбмена_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(2, "ОжиданиеСинхронизацииДанных", "ЗагрузкаДанных_ПриОткрытии", Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(3, "ОжиданиеСинхронизацииДанных",, Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации_Окончание"); + ТаблицаПереходовНоваяСтрока(4, "ОжиданиеСинхронизацииДанных", "ВыгрузкаДанных_ПриОткрытии", Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(5, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации_Окончание"); + ТаблицаПереходовНоваяСтрока(6, "ЗавершениеОбмена", "ЗавершениеОбмена_ПриОткрытии", Истина, "ЗавершениеОбмена_ОбработкаДлительнойОперации"); КонецПроцедуры @@ -1216,24 +1222,18 @@ ТаблицаПереходов.Очистить(); - ТаблицаПереходовНоваяСтрока(1, "ОжиданиеСинхронизацииДанных",, Истина, "ОжиданиеПроверкиПодключения_ОбработкаДлительнойОперации"); - + ТаблицаПереходовНоваяСтрока(1, "ОжиданиеСинхронизацииДанных", , Истина, "ОжиданиеПроверкиПодключения_ОбработкаДлительнойОперации"); // Отправка - ТаблицаПереходовНоваяСтрока(2, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(3, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(4, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); - + ТаблицаПереходовНоваяСтрока(2, "ОжиданиеСинхронизацииДанных", "ВыгрузкаДанных_ПриОткрытии", Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(3, "ОжиданиеСинхронизацииДанных", , Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации_Окончание"); // Получение - ТаблицаПереходовНоваяСтрока(5, "ОжиданиеСинхронизацииДанных",, Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(6, "ОжиданиеСинхронизацииДанных",, Истина, "ЗагрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(7, "ОжиданиеСинхронизацииДанных",, Истина, "ЗагрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); - + ТаблицаПереходовНоваяСтрока(4, "ОжиданиеСинхронизацииДанных", "ЗагрузкаДанных_ПриОткрытии", Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(5, "ОжиданиеСинхронизацииДанных", , Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации_Окончание"); // Отправка - ТаблицаПереходовНоваяСтрока(8, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(9, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(10, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); - - ТаблицаПереходовНоваяСтрока(11, "ЗавершениеОбмена", "ЗавершениеОбмена_ПриОткрытии", Истина, "ЗавершениеОбмена_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(6, "ОжиданиеСинхронизацииДанных", "ВыгрузкаДанных_ПриОткрытии", Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(7, "ОжиданиеСинхронизацииДанных", , Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации_Окончание"); + // Завершение + ТаблицаПереходовНоваяСтрока(8, "ЗавершениеОбмена", "ЗавершениеОбмена_ПриОткрытии", Истина, "ЗавершениеОбмена_ОбработкаДлительнойОперации"); КонецПроцедуры @@ -1244,13 +1244,11 @@ ТаблицаПереходовНоваяСтрокаПереходДалее(1, "ЗапросПароляПользователя", "ЗапросПароляПользователя_ПриОткрытии", "ЗапросПароляПользователя_ПриПереходеДалее"); ТаблицаПереходовНоваяСтрока(2, "ОжиданиеСинхронизацииДанных",, Истина, "ОжиданиеПроверкиПодключения_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(3, "ОжиданиеСинхронизацииДанных",, Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(4, "ОжиданиеСинхронизацииДанных",, Истина, "ЗагрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(5, "ОжиданиеСинхронизацииДанных",, Истина, "ЗагрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(6, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(7, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(8, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(9, "ЗавершениеОбмена", "ЗавершениеОбмена_ПриОткрытии", Истина, "ЗавершениеОбмена_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(3, "ОжиданиеСинхронизацииДанных", "ЗагрузкаДанных_ПриОткрытии", Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(4, "ОжиданиеСинхронизацииДанных",, Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации_Окончание"); + ТаблицаПереходовНоваяСтрока(5, "ОжиданиеСинхронизацииДанных", "ВыгрузкаДанных_ПриОткрытии", Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(6, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации_Окончание"); + ТаблицаПереходовНоваяСтрока(7, "ЗавершениеОбмена", "ЗавершениеОбмена_ПриОткрытии", Истина, "ЗавершениеОбмена_ОбработкаДлительнойОперации"); КонецПроцедуры @@ -1258,26 +1256,19 @@ Процедура СценарийОбменаЧерезВебСервисСЗапросомПароля_ОтправкаПолучениеОтправка() ТаблицаПереходов.Очистить(); - ТаблицаПереходовНоваяСтрокаПереходДалее(1, "ЗапросПароляПользователя", "ЗапросПароляПользователя_ПриОткрытии", "ЗапросПароляПользователя_ПриПереходеДалее"); ТаблицаПереходовНоваяСтрока(2, "ОжиданиеСинхронизацииДанных",, Истина, "ОжиданиеПроверкиПодключения_ОбработкаДлительнойОперации"); - // Отправка - ТаблицаПереходовНоваяСтрока(3, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(4, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(5, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); - + ТаблицаПереходовНоваяСтрока(3, "ОжиданиеСинхронизацииДанных", "ВыгрузкаДанных_ПриОткрытии", Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(4, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации_Окончание"); // Получение - ТаблицаПереходовНоваяСтрока(6, "ОжиданиеСинхронизацииДанных",, Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(7, "ОжиданиеСинхронизацииДанных",, Истина, "ЗагрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(8, "ОжиданиеСинхронизацииДанных",, Истина, "ЗагрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); - + ТаблицаПереходовНоваяСтрока(5, "ОжиданиеСинхронизацииДанных", "ЗагрузкаДанных_ПриОткрытии", Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(6, "ОжиданиеСинхронизацииДанных",, Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации_Окончание"); // Отправка - ТаблицаПереходовНоваяСтрока(9, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(10, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(11, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); - - ТаблицаПереходовНоваяСтрока(12, "ЗавершениеОбмена", "ЗавершениеОбмена_ПриОткрытии", Истина, "ЗавершениеОбмена_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(7, "ОжиданиеСинхронизацииДанных", "ВыгрузкаДанных_ПриОткрытии", Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(8, "ОжиданиеСинхронизацииДанных",, Истина, "ВыгрузкаДанных_ОбработкаДлительнойОперации_Окончание"); + // Завершение + ТаблицаПереходовНоваяСтрока(9, "ЗавершениеОбмена", "ЗавершениеОбмена_ПриОткрытии", Истина, "ЗавершениеОбмена_ОбработкаДлительнойОперации"); КонецПроцедуры @@ -1285,7 +1276,6 @@ Процедура СценарийКогдаЕстьОшибкиПриНачалеРаботы() ТаблицаПереходов.Очистить(); - ТаблицаПереходовНоваяСтрока(1, "ЗавершениеОбмена", "ЗавершениеОбмена_ПриОткрытии"); КонецПроцедуры diff --git a/SSL/src/DataProcessors/ВыполнениеОбменаДанными/ManagerModule.bsl b/SSL/src/DataProcessors/ВыполнениеОбменаДанными/ManagerModule.bsl index 376ea865e..feca83cb0 100644 --- a/SSL/src/DataProcessors/ВыполнениеОбменаДанными/ManagerModule.bsl +++ b/SSL/src/DataProcessors/ВыполнениеОбменаДанными/ManagerModule.bsl @@ -5,20 +5,67 @@ // Запускает обмен данными, используется в фоновом задании. // // Параметры: -// ПараметрыВыполнения - Структура - Параметры, необходимые для удаления. -// АдресХранилища - Строка - Адрес временного хранилища. +// ПараметрыЗадания - Структура - Параметры, необходимые для выполнения процедуры. +// АдресХранилища - Строка - Адрес временного хранилища. // -Процедура ВыполнитьЗапускОбменаДанными(ПараметрыВыполнения, АдресХранилища) Экспорт +Процедура ВыполнитьЗапускОбменаДанными(ПараметрыЗадания, АдресХранилища) Экспорт + ПараметрыОбмена = ОбменДаннымиСервер.ПараметрыОбмена(); - ЗаполнитьЗначенияСвойств(ПараметрыОбмена, ПараметрыВыполнения, + + ЗаполнитьЗначенияСвойств(ПараметрыОбмена, ПараметрыЗадания, "ВидТранспортаСообщенийОбмена,ВыполнятьЗагрузку,ВыполнятьВыгрузку"); + + Если ПараметрыЗадания.ВидТранспортаСообщенийОбмена = Перечисления.ВидыТранспортаСообщенийОбмена.WS Тогда + ПараметрыОбмена.ДлительнаяОперация = ПараметрыЗадания.ДлительнаяОперация; + ПараметрыОбмена.ДлительнаяОперацияРазрешена = Истина; + ПараметрыОбмена.ИдентификаторОперации = ПараметрыЗадания.ИдентификаторДлительнойОперации; + ПараметрыОбмена.ИдентификаторФайла = ПараметрыЗадания.ИдентификаторФайлаСообщенияВСервисе; + ПараметрыОбмена.ПараметрыАутентификации = ПараметрыЗадания.ПараметрыАутентификации; + КонецЕсли; ОбменДаннымиСервер.ВыполнитьОбменДаннымиДляУзлаИнформационнойБазы( - ПараметрыВыполнения.УзелИнформационнойБазы, + ПараметрыЗадания.УзелИнформационнойБазы, ПараметрыОбмена, - ПараметрыВыполнения.Отказ); + ПараметрыЗадания.Отказ); + + Если ПараметрыЗадания.ВидТранспортаСообщенийОбмена = Перечисления.ВидыТранспортаСообщенийОбмена.WS Тогда + + ПараметрыЗадания.ДлительнаяОперация = ПараметрыОбмена.ДлительнаяОперация; + ПараметрыЗадания.ИдентификаторДлительнойОперации = ПараметрыОбмена.ИдентификаторОперации; + ПараметрыЗадания.ПараметрыАутентификации = ПараметрыОбмена.ПараметрыАутентификации; + + Если ЗначениеЗаполнено(ПараметрыЗадания.ИдентификаторДлительнойОперации) Тогда + // Если задание выполняется на корреспонденте, то необходимо будет загрузить полученный файл в базу позднее. + ПараметрыЗадания.ИдентификаторФайлаСообщенияВСервисе = ПараметрыОбмена.ИдентификаторФайла; + Иначе + // Файл с данными уже получен и загружен в базу, загружать его дополнительно нет необходимости. + ПараметрыЗадания.ИдентификаторФайлаСообщенияВСервисе = ""; + КонецЕсли; + + КонецЕсли; + + ПоместитьВоВременноеХранилище(ПараметрыЗадания, АдресХранилища); + +КонецПроцедуры + +// Запускает загрузку полученного из интернета файла, используется в фоновом задании. +// +// Параметры: +// ПараметрыЗадания - Структура - Параметры, необходимые для выполнения процедуры. +// АдресХранилища - Строка - Адрес временного хранилища. +// +Процедура ВыполнитьЗагрузкуПолученногоИзИнтернетаФайла(ПараметрыЗадания, АдресХранилища) Экспорт + + ОбменДаннымиВызовСервера.ВыполнитьОбменДаннымиДляУзлаИнформационнойБазыЗавершениеДлительнойОперации( + ПараметрыЗадания.Отказ, + ПараметрыЗадания.УзелИнформационнойБазы, + ПараметрыЗадания.ИдентификаторФайлаСообщенияВСервисе, + ПараметрыЗадания.ДатаНачалаОперации, + ПараметрыЗадания.ПараметрыАутентификации); + + ПараметрыЗадания.ИдентификаторФайлаСообщенияВСервисе = ""; + ПоместитьВоВременноеХранилище(ПараметрыЗадания, АдресХранилища); - ПоместитьВоВременноеХранилище(ПараметрыВыполнения, АдресХранилища); КонецПроцедуры #КонецОбласти diff --git a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыборВидаОбъектов/Form.form b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыборВидаОбъектов/Form.form index 3f9cc9e88..83a0f6482 100644 --- a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыборВидаОбъектов/Form.form +++ b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыборВидаОбъектов/Form.form @@ -144,6 +144,10 @@ <id>10</id> <horizontalAlign>Left</horizontalAlign> </autoCommandBar> + <handlers> + <event>Selection</event> + <name>ДоступныеОбъектыДляИзмененияВыбор</name> + </handlers> <searchStringAddition> <name>ДоступныеОбъектыДляИзмененияСтрокаПоиска</name> <id>17</id> @@ -330,8 +334,6 @@ <excludedCommands>Retry</excludedCommands> <excludedCommands>SaveValues</excludedCommands> <excludedCommands>Yes</excludedCommands> - <width>45</width> - <height>10</height> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoUrl>true</autoUrl> diff --git a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыборВидаОбъектов/Module.bsl b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыборВидаОбъектов/Module.bsl index 29a195a73..70c1997f8 100644 --- a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыборВидаОбъектов/Module.bsl +++ b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыборВидаОбъектов/Module.bsl @@ -25,11 +25,13 @@ &НаКлиенте Процедура Выбрать(Команда) - ВыбранныеЭлементы = ВыбранныеЭлементы(); - Если ВыбранныеЭлементы.Количество() = 0 Тогда - ВыбранныеЭлементы.Добавить(Элементы.ДоступныеОбъектыДляИзменения.ТекущиеДанные.Значение); - КонецЕсли; - Закрыть(ВыбранныеЭлементы); + ВыбратьОбъектыИЗакрытьФорму(); +КонецПроцедуры + + +&НаКлиенте +Процедура ДоступныеОбъектыДляИзмененияВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) + ВыбратьОбъектыИЗакрытьФорму(); КонецПроцедуры #КонецОбласти @@ -113,6 +115,16 @@ ОбновитьКоличествоВыбранных(); КонецПроцедуры +&НаКлиенте +Процедура ВыбратьОбъектыИЗакрытьФорму() + ВыбранныеЭлементы = ВыбранныеЭлементы(); + Если ВыбранныеЭлементы.Количество() = 0 Тогда + ВыбранныеЭлементы.Добавить(Элементы.ДоступныеОбъектыДляИзменения.ТекущиеДанные.Значение); + КонецЕсли; + Закрыть(ВыбранныеЭлементы); +КонецПроцедуры + + &НаКлиенте Процедура ОбновитьКоличествоВыбранных() ТекстКнопкиВыбора = НСтр("ru = 'Выбрать'"); diff --git a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыбранныеЭлементы/Form.form b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыбранныеЭлементы/Form.form index 0d43fc342..220c40bb1 100644 --- a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыбранныеЭлементы/Form.form +++ b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыбранныеЭлементы/Form.form @@ -82,6 +82,28 @@ <commandSource>Item.КомпоновщикНастроекНастройкиОтбор</commandSource> </extInfo> </items> + <items xsi:type="form:FormGroup"> + <name>КомпоновщикНастроекНастройкиОтборГруппа1</name> + <id>96</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <extendedTooltip> + <name>КомпоновщикНастроекНастройкиОтборГруппа1РасширеннаяПодсказка</name> + <id>97</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <extInfo xsi:type="form:ButtonGroupExtInfo"> + <commandSource>Form</commandSource> + </extInfo> + </items> <horizontalAlign>Left</horizontalAlign> </autoCommandBar> <handlers> @@ -187,6 +209,7 @@ <changeRowSet>true</changeRowSet> <changeRowOrder>true</changeRowOrder> <autoMaxWidth>true</autoMaxWidth> + <height>3</height> <autoMaxHeight>true</autoMaxHeight> <autoMaxRowsCount>true</autoMaxRowsCount> <selectionMode>MultiRow</selectionMode> @@ -265,6 +288,7 @@ <excludedCommands>CancelSearch</excludedCommands> <excludedCommands>DynamicListStandardSettings</excludedCommands> <excludedCommands>Find</excludedCommands> + <excludedCommands>FindByCurrentValue</excludedCommands> <excludedCommands>ListSettings</excludedCommands> <excludedCommands>LoadDynamicListSettings</excludedCommands> <excludedCommands>SaveDynamicListSettings</excludedCommands> @@ -401,6 +425,32 @@ <contextMenu> <name>СписокКонтекстноеМеню</name> <id>75</id> + <items xsi:type="form:Button"> + <name>СписокКонтекстноеМенюОткрытьЗначение</name> + <id>98</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <extendedTooltip> + <name>СписокКонтекстноеМенюОткрытьЗначениеРасширеннаяПодсказка</name> + <id>99</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <commandName>Form.Command.ОткрытьЭлемент</commandName> + <buttonImportance>Normal</buttonImportance> + <representation>Auto</representation> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <placementArea>UserCmds</placementArea> + <representationInContextMenu>Auto</representationInContextMenu> + </items> <items xsi:type="form:Button"> <name>СписокКонтекстноеМенюОбновить1</name> <id>90</id> @@ -419,7 +469,7 @@ <horizontalAlign>Left</horizontalAlign> </extInfo> </extendedTooltip> - <commandName>0</commandName> + <commandName>Form.Item.Список.StandardCommand.Refresh</commandName> <buttonImportance>Normal</buttonImportance> <representation>Auto</representation> <autoMaxWidth>true</autoMaxWidth> @@ -445,33 +495,7 @@ <horizontalAlign>Left</horizontalAlign> </extInfo> </extendedTooltip> - <commandName>0</commandName> - <buttonImportance>Normal</buttonImportance> - <representation>Auto</representation> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <placementArea>UserCmds</placementArea> - <representationInContextMenu>Auto</representationInContextMenu> - </items> - <items xsi:type="form:Button"> - <name>СписокКонтекстноеМенюКопироватьВБуферОбмена</name> - <id>94</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <extendedTooltip> - <name>СписокКонтекстноеМенюКопироватьВБуферОбменаРасширеннаяПодсказка</name> - <id>95</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <commandName>0</commandName> + <commandName>Form.Item.Список.StandardCommand.OutputList</commandName> <buttonImportance>Normal</buttonImportance> <representation>Auto</representation> <autoMaxWidth>true</autoMaxWidth> @@ -484,7 +508,6 @@ <changeRowSet>true</changeRowSet> <changeRowOrder>true</changeRowOrder> <autoMaxWidth>true</autoMaxWidth> - <height>8</height> <autoMaxHeight>true</autoMaxHeight> <autoMaxRowsCount>true</autoMaxRowsCount> <selectionMode>MultiRow</selectionMode> @@ -529,10 +552,7 @@ <key>ru</key> <value>Выбранные элементы</value> - - ru - Группа выбранные объекты - + 8 ГруппаВыбранныеОбъектыРасширеннаяПодсказка 30 @@ -613,7 +633,6 @@ Auto Right - true OnCreateAtServer @@ -621,8 +640,6 @@ Abort Close - CustomizeForm - Help Ignore No OK @@ -689,6 +706,9 @@ true + + Список.Ссылка + ВЫБРАТЬ "" КАК Ссылка @@ -792,19 +812,24 @@ Auto - СкрытьПоказать + ОткрытьЭлемент <key>ru</key> - <value>Скрыть показать</value> + <value>Открыть</value> 2 ru - Скрыть показать + Открыть значение true + + + ОткрытьЭлемент + + DontUse Auto diff --git a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыбранныеЭлементы/Module.bsl b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыбранныеЭлементы/Module.bsl index 1ca172597..232c75897 100644 --- a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыбранныеЭлементы/Module.bsl +++ b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ВыбранныеЭлементы/Module.bsl @@ -61,6 +61,17 @@ Закрыть(Результат); КонецПроцедуры +&НаКлиенте +Процедура ОткрытьЭлемент(Команда) + + ТекущиеДанные = Элементы.Список.ТекущиеДанные; + Если ТекущиеДанные = Неопределено Тогда + Возврат; + КонецЕсли; + ПоказатьЗначение(, ТекущиеДанные.Ссылка); + +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции diff --git a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ДополнительныеПараметры/Form.form b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ДополнительныеПараметры/Form.form index 9b26d3785..8769a9741 100644 --- a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ДополнительныеПараметры/Form.form +++ b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ДополнительныеПараметры/Form.form @@ -32,7 +32,6 @@ При невозможности изменения элементов в транзакции все изменения будут отменены. Label - true true Style.ПоясняющийТекст @@ -53,42 +52,6 @@ true - - ПояснениеИзменятьВТранзакции - 7 - - <key>ru</key> - <value>При невозможности изменения элементов в транзакции, все изменения будут отменены.</value> - - true - - true - - - ПояснениеИзменятьВТранзакцииExtendedTooltip - 55 - Label - true - true - - Left - - - - ПояснениеИзменятьВТранзакцииКонтекстноеМеню - 8 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -146,7 +109,6 @@ Предупреждать, если во время изменения элементов возникнут ошибки. Label - true true Style.ПоясняющийТекст @@ -167,42 +129,6 @@ true - - ПояснениеПрерыватьПриОшибке - 40 - - <key>ru</key> - <value>Предупреждать, если во время изменения элементов возникнут ошибки.</value> - - true - - true - - - ПояснениеПрерыватьПриОшибкеExtendedTooltip - 58 - Label - true - true - - Left - - - - ПояснениеПрерыватьПриОшибкеКонтекстноеМеню - 41 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -260,7 +186,6 @@ Обрабатывать дочерние элементы групп и родительских элементов. Label - true true Style.ПоясняющийТекст @@ -281,42 +206,6 @@ true - - ПояснениеОбрабатыватьГруппыРекурсивно - 9 - - <key>ru</key> - <value>Обрабатывать дочерние элементы групп и родительских элементов.</value> - - true - - true - - - ПояснениеОбрабатыватьГруппыРекурсивноExtendedTooltip - 61 - Label - true - true - - Left - - - - ПояснениеОбрабатыватьГруппыРекурсивноКонтекстноеМеню - 10 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -377,7 +266,6 @@ Отображать реквизиты, значения которых не рекомендуется изменять этой обработкой. Label - true true Style.ПоясняющийТекст @@ -398,42 +286,6 @@ true - - ПояснениеПоказыватьСлужебныеРеквизиты - 83 - - <key>ru</key> - <value>Отображать реквизиты, значения которых не рекомендуется изменять этой обработкой.</value> - - true - - true - - - ПояснениеПоказыватьСлужебныеРеквизитыРасширеннаяПодсказка - 85 - Label - true - true - - Left - - - - ПояснениеПоказыватьСлужебныеРеквизитыКонтекстноеМеню - 84 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -495,7 +347,6 @@ Выполнять запись объектов в режиме ОбменДанными.Загрузка = Истина. Label - true true Style.ПоясняющийТекст @@ -573,7 +424,6 @@ При выборе значений не использовать отборы, прописанные в свойствах реквизитов СвязиПараметровВыбора и ПараметрыВыбора. Label - true true Style.ПоясняющийТекст @@ -757,7 +607,6 @@ OnCreateAtServer ПриСозданииНаСервере
        - 54 LockOwner true true diff --git a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ДополнительныеПараметры/Help/ru.html b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ДополнительныеПараметры/Help/ru.html index 875d49627..402e7dd7c 100644 --- a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ДополнительныеПараметры/Help/ru.html +++ b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ДополнительныеПараметры/Help/ru.html @@ -13,9 +13,9 @@
        • Показывать служебные реквизиты - включите флажок для отображения реквизитов, значения которых не рекомендуется изменять;
        • -
          Режим разработчика - Выполнять запись объектов в режиме ОбменДанными.Загрузка = Истина;
          +
          Режим разработчика - Выполнять запись объектов в режиме ОбменДанными.Загрузка = Истина;
        • -

          Отключить отборы при выборе значений - при выборе значений не использовать отборы, прописанные в свойствах реквизитов СвязиПараметровВыбора и ПараметрыВыбора.

      • +

        Отключить отборы при выборе значений - при выборе значений не использовать отборы, прописанные в свойствах реквизитов СвязиПараметровВыбора и ПараметрыВыбора.

    • Параметр Обрабатывать дочерние элементы недоступен в данном режиме.
    • См. также:

      \ No newline at end of file diff --git a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ДополнительныеПараметры/Module.bsl b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ДополнительныеПараметры/Module.bsl index ce271e77b..664e27799 100644 --- a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ДополнительныеПараметры/Module.bsl +++ b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/ДополнительныеПараметры/Module.bsl @@ -14,7 +14,7 @@ Параметры.Свойство("ЧислоОбъектовВПорции", ЧислоОбъектовВПорции); Параметры.Свойство("РежимРазработчика", РежимРазработчика); Параметры.Свойство("ОтключитьСвязиПараметровВыбора", ОтключитьСвязиПараметровВыбора); - + Параметры.Свойство("ПрерыватьПриОшибке", ПрерыватьПриОшибке); ЕстьПравоАдминистрированияДанных = ПравоДоступа("АдминистрированиеДанных", Метаданные); КлючСохраненияПоложенияОкна = ?(ЕстьПравоАдминистрированияДанных, "ЕстьПравоАдминистрированияДанных", "НетПраваАдминистрированияДанных"); diff --git a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/РедактированиеФормулы/Form.form b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/РедактированиеФормулы/Form.form index a1e39fcd5..a3d47e093 100644 --- a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/РедактированиеФормулы/Form.form +++ b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/РедактированиеФормулы/Form.form @@ -784,10 +784,9 @@ true true true - 60 true true - 15 + 10 true true MultiRow @@ -1159,39 +1158,6 @@ Auto
      - - ДекорацияПояснение - 56 - true - true - - true - - - ДекорацияПояснениеРасширеннаяПодсказка - 58 - Label - true - true - - Left - - - - ДекорацияПояснениеКонтекстноеМеню - 57 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - Формула 13 @@ -1231,7 +1197,7 @@ 50 true - 10 + 5 true true true @@ -1329,9 +1295,7 @@ 65 true - 3 true - 1 true diff --git a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/РедактированиеФормулы/Module.bsl b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/РедактированиеФормулы/Module.bsl index 4ca684011..56970e032 100644 --- a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/РедактированиеФормулы/Module.bsl +++ b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/РедактированиеФормулы/Module.bsl @@ -44,16 +44,21 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; - Если Модифицированность И ЗначениеЗаполнено(ИсходнаяФормула) И ИсходнаяФормула <> Формула Тогда - Отказ = Истина; - Ответ = Неопределено; - - ПоказатьВопрос(Новый ОписаниеОповещения("ПередЗакрытиемЗавершение", ЭтотОбъект), НСтр("ru='Данные были изменены. Сохранить изменения?'"), РежимДиалогаВопрос.ДаНетОтмена); + Если Не Модифицированность Или Не ЗначениеЗаполнено(ИсходнаяФормула) Или ИсходнаяФормула = Формула Тогда + Возврат; КонецЕсли; + Отказ = Истина; + Ответ = Неопределено; + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + + ПоказатьВопрос(Новый ОписаниеОповещения("ПередЗакрытиемЗавершение", ЭтотОбъект), НСтр("ru='Данные были изменены. Сохранить изменения?'"), РежимДиалогаВопрос.ДаНетОтмена); + КонецПроцедуры &НаКлиенте @@ -61,7 +66,7 @@ Ответ = РезультатВопроса; Если Ответ = КодВозвратаДиалога.Да Тогда - Если ПроверитьФормулу(Формула, ПолучитьМассивОперандов(), "Формула", СтроковаяФормула) Тогда + Если ПроверитьФормулу(Формула, Операнды(), "Формула", СтроковаяФормула) Тогда Модифицированность = Ложь; Закрыть(Формула); КонецЕсли; @@ -262,7 +267,7 @@ ОчиститьСообщения(); - Если ПроверитьФормулу(Формула, ПолучитьМассивОперандов(), "Формула", СтроковаяФормула) Тогда + Если ПроверитьФормулу(Формула, Операнды(), "Формула", СтроковаяФормула) Тогда Закрыть(Формула); КонецЕсли; @@ -272,7 +277,7 @@ Процедура Проверить(Команда) ОчиститьСообщения(); - ПроверитьФормулуИнтерактивно(Формула, ПолучитьМассивОперандов(), "Формула", СтроковаяФормула); + ПроверитьФормулуИнтерактивно(Формула, Операнды(), "Формула", СтроковаяФормула); КонецПроцедуры @@ -313,14 +318,14 @@ КонецПроцедуры &НаКлиенте -Функция ПолучитьМассивОперандов() +Функция Операнды() - МассивОперандов = Новый Массив(); - Для Каждого ТекСтрока Из Операнды Цикл - МассивОперандов.Добавить(ТекСтрока.Идентификатор); + Результат = Новый Массив(); + Для Каждого Операнд Из Операнды Цикл + Результат.Добавить(Операнд.Идентификатор); КонецЦикла; - Возврат МассивОперандов; + Возврат Результат; КонецФункции @@ -436,7 +441,7 @@ РасчетнаяФормула = УдалениеНезначимыхСимволов(РасчетнаяФормула); ВыводитьПромежуточныеВычисления = Ложь; - МассивОперандов = ПолучитьМассивОперандовТекстовойФормулы(РасчетнаяФормула); + МассивОперандов = ОперандыТекстовойФормулы(РасчетнаяФормула); Для каждого Операнд Из МассивОперандов Цикл НайденныйСтроки = Операнды.НайтиСтроки(Новый Структура("Идентификатор", Операнд)); @@ -660,7 +665,7 @@ КонецФункции &НаКлиентеНаСервереБезКонтекста -Функция ПолучитьМассивОперандовТекстовойФормулы(Формула) +Функция ОперандыТекстовойФормулы(Формула) МассивОперандов = Новый Массив(); diff --git a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/Форма/Form.form b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/Форма/Form.form index 279853544..cb55014b5 100644 --- a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/Форма/Form.form @@ -45,10 +45,6 @@ Left true - - AutoComplete - ПредставлениеИзменяемыхОбъектовАвтоПодбор - StartChoice ВидИзменяемыхОбъектовНачалоВыбора @@ -138,26 +134,480 @@ Auto
      + + ТипОперации + 268 + true + true + + true + + + Объект.ТипОперации + + None + + OnChange + ВидОперацииПриИзменении + + + ТипОперацииРасширеннаяПодсказка + 270 + Label + true + true + + Left + + + + ТипОперацииКонтекстноеМеню + 269 + true + + RadioButtonField + Enter + true + Left + true + + Tumbler + + + ru + Ввести новые значения + + + ВвестиЗначения + + + + + ru + Выполнить произвольный алгоритм + + + ВыполнитьАлгоритм + + + Vertical + + - ИзменяемыеРеквизиты - 183 + СтраницыВидОперации + 271 - ПанельНастроек - 187 + ИзменяемыеРеквизиты + 183 - РанееИзмененныеРеквизиты - 189 - - Заглушка - 201 + СоставОбъекта + 112 + + Реквизиты + 114 + + РеквизитыОбъекта + 116 + + <key>ru</key> + <value>Реквизиты</value> + + true + true + + true + + + РеквизитыОбъекта + + None + + РеквизитыОбъектаПредставление + 126 + + <key>ru</key> + <value>Реквизит</value> + + true + true + + true + + + РеквизитыОбъекта.Представление + + + РеквизитыОбъектаПредставлениеРасширеннаяПодсказка + 128 + Label + true + true + + Left + + + + РеквизитыОбъектаПредставлениеКонтекстноеМеню + 127 + true + + InputField + true + Auto + true + Left + true + + true + true + true + true + true + true + Normal + + + + РеквизитыОбъектаИзменять + 123 + true + true + + true + + + РеквизитыОбъекта.Изменять + + None + + OnChange + Подключаемый_ПриИзмененииФлажка + + + РеквизитыОбъектаИзменятьРасширеннаяПодсказка + 125 + Label + true + true + + Left + + + + РеквизитыОбъектаИзменятьКонтекстноеМеню + 124 + true + + CheckBoxField + Auto + true + + StdPicture.Change + + Left + true + + + + РеквизитыОбъектаЗначение + 129 + true + true + + true + + + РеквизитыОбъекта.Значение + + + OnChange + Подключаемый_ЗначениеПриИзменении + + + РеквизитыОбъектаЗначениеРасширеннаяПодсказка + 131 + Label + true + true + + Left + + + + РеквизитыОбъектаЗначениеКонтекстноеМеню + 130 + true + + InputField + Auto + true + Left + true + + + StartChoice + РеквизитыОбъектаЗначениеНачалоВыбора + + true + true + true + true + true + true + Normal + + + + РеквизитыОбъектаКоманднаяПанель + 118 + Left + + + DragCheck + РеквизитыОбъектаПроверкаПеретаскивания + + + Drag + РеквизитыОбъектаПеретаскивание + + + BeforeRowChange + Подключаемый_ПередНачаломИзменения + + + РеквизитыОбъектаСтрокаПоиска + 240 + + РеквизитыОбъектаСтрокаПоискаРасширеннаяПодсказка + 242 + Label + true + true + + Left + + + + РеквизитыОбъектаСтрокаПоискаКонтекстноеМеню + 241 + true + + РеквизитыОбъекта + + true + + + + РеквизитыОбъектаСостояниеПросмотра + 243 + + РеквизитыОбъектаСостояниеПросмотраРасширеннаяПодсказка + 245 + Label + true + true + + Left + + + + РеквизитыОбъектаСостояниеПросмотраКонтекстноеМеню + 244 + true + + ViewStatusAddition + РеквизитыОбъекта + + true + + + + РеквизитыОбъектаУправлениеПоиском + 246 + + РеквизитыОбъектаУправлениеПоискомРасширеннаяПодсказка + 248 + Label + true + true + + Left + + + + РеквизитыОбъектаУправлениеПоискомКонтекстноеМеню + 247 + true + + SearchControlAddition + РеквизитыОбъекта + + true + + + + РеквизитыОбъектаРасширеннаяПодсказка + 119 + Label + true + true + + Left + + + + РеквизитыОбъектаКонтекстноеМеню + 117 + true + + true + true + true + MultiRow +
      true
      + 1 + 1 + AutoUse + AutoUse + true + true + false + true + Auto + Auto + true + true + true + true + + РеквизитыОбъекта.ВидОперации + + + CommonPicture.ВидыОпераций + + None + None + None + true + +
      + + ГруппаНетРеквизитов + 261 + + Декорация2 + 263 + true + true + + true + + + Декорация2РасширеннаяПодсказка + 265 + Label + true + true + + Left + + + + Декорация2КонтекстноеМеню + 264 + true + + true + true + + + CommonPicture.Информация32 + + + + + Декорация1 + 258 + + <key>ru</key> + <value>У выбранных объектов нет общих реквизитов.</value> + + true + true + + true + + + Декорация1РасширеннаяПодсказка + 260 + Label + true + true + + Left + + + + Декорация1КонтекстноеМеню + 259 + true + + Label + 3 + true + + Left + Center + + + true + + true + + + <key>ru</key> + <value>Группа нет реквизитов</value> + + + ru + Группа нет реквизитов + + + ГруппаНетРеквизитовРасширеннаяПодсказка + 262 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + true - false + true true + + <key>ru</key> + <value>Реквизиты</value> + + + ru + Реквизиты + - ЗаглушкаРасширеннаяПодсказка - 202 + РеквизитыРасширеннаяПодсказка + 115 Label true true @@ -165,13 +615,12 @@ Left - Form.Command.Заглушка - Normal - Auto - true - true - UserCmds - Auto + Page + + Vertical + auto + false +
      true true @@ -180,15 +629,15 @@ <key>ru</key> - <value>Ранее измененные реквизиты</value> + <value>Состав объекта</value> ru - Ранее измененные реквизиты + Состав объекта - РанееИзмененныеРеквизитыРасширеннаяПодсказка - 190 + СоставОбъектаРасширеннаяПодсказка + 113 Label true true @@ -196,27 +645,550 @@ Left - Popup - - Auto - Normal + Pages + + TabsOnTop + Auto
      - - НастроитьПараметрыИзменений - 44 - - <key>ru</key> - <value>Дополнительные параметры...</value> - + true + true + + true + + + <key>ru</key> + <value>Изменяемые реквизиты</value> + + + ru + Изменяемые реквизиты + + + ИзменяемыеРеквизитыРасширеннаяПодсказка + 184 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + ПроизвольныйАлгоритм + 273 + + ГруппаПроизвольныйАлгоритм + 281 + + ГруппаАлгоритм + 283 + + Алгоритм + 278 + true + true + + true + + + Алгоритм + + + АлгоритмРасширеннаяПодсказка + 280 + Label + true + true + + Left + + + + АлгоритмКонтекстноеМеню + 279 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + ru + Наименование алгоритма + + + + + КодАлгоритма + 275 + true + true + + true + + + КодАлгоритма + + None + + КодАлгоритмаРасширеннаяПодсказка + 277 + Label + true + true + + Left + + + + КодАлгоритмаКонтекстноеМеню + 276 + true + + TextDocumentField + Enter + true + Left + true + + 50 + true + 10 + true + true + true + + + true + true + + true + + + ГруппаАлгоритмРасширеннаяПодсказка + 284 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаРеквизитыДляАлгоритма + 285 + + ГруппаСтраницыДляВыравнивания + 309 + + СтраницаСНадписьюРеквизиты + 311 + + НадписьРеквизиты + 303 + + <key>ru</key> + <value>Реквизиты:</value> + + true + true + + true + + + НадписьРеквизитыРасширеннаяПодсказка + 305 + Label + true + true + + Left + + + + НадписьРеквизитыКонтекстноеМеню + 304 + true + + Label + true + true + + Left + + + true + true + + true + + + <key>ru</key> + <value>Реквизиты:</value> + + + ru + Страница с надписью реквизиты + + true + + СтраницаСНадписьюРеквизитыРасширеннаяПодсказка + 312 + Label + true + true + + Left + + + Page + + Vertical + Center + auto + false + + + + СтраницаНевидимая + 313 + + ПолеНевидимоеДляВыравнивания + 349 + true + true + + true + + + Алгоритм + + + ПолеНевидимоеДляВыравниванияРасширеннаяПодсказка + 351 + Label + true + true + + Left + + + + ПолеНевидимоеДляВыравниванияКонтекстноеМеню + 350 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Страница невидимая</value> + + + ru + Страница невидимая + + + СтраницаНевидимаяРасширеннаяПодсказка + 314 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + ГруппаСтраницыДляВыравниванияРасширеннаяПодсказка + 310 + Label + true + true + + Left + + + Pages + + Auto + + + + РеквизитыОбъектаАлгоритм + 315 + true + true + + true + + + РеквизитыОбъекта + + None + + РеквизитыОбъектаАлгоритмПредставление + 334 + true + true + + true + + + РеквизитыОбъекта.Представление + + + РеквизитыОбъектаАлгоритмПредставлениеРасширеннаяПодсказка + 336 + Label + true + true + + Left + + + + РеквизитыОбъектаАлгоритмПредставлениеКонтекстноеМеню + 335 + true + + InputField + Auto + true + Left + true + + true + true + true + true + true + true + Normal + + + + РеквизитыОбъектаАлгоритмКоманднаяПанель + 317 + Left + + + DragStart + РеквизитыОбъекта1НачалоПеретаскивания + + + РеквизитыОбъектаАлгоритмСтрокаПоиска + 319 + + РеквизитыОбъектаАлгоритмСтрокаПоискаРасширеннаяПодсказка + 321 + Label + true + true + + Left + + + + РеквизитыОбъектаАлгоритмСтрокаПоискаКонтекстноеМеню + 320 + true + + РеквизитыОбъектаАлгоритм + + true + + + + РеквизитыОбъектаАлгоритмСостояниеПросмотра + 322 + + РеквизитыОбъектаАлгоритмСостояниеПросмотраРасширеннаяПодсказка + 324 + Label + true + true + + Left + + + + РеквизитыОбъектаАлгоритмСостояниеПросмотраКонтекстноеМеню + 323 + true + + ViewStatusAddition + РеквизитыОбъектаАлгоритм + + true + + + + РеквизитыОбъектаАлгоритмУправлениеПоиском + 325 + + РеквизитыОбъектаАлгоритмУправлениеПоискомРасширеннаяПодсказка + 327 + Label + true + true + + Left + + + + РеквизитыОбъектаАлгоритмУправлениеПоискомКонтекстноеМеню + 326 + true + + SearchControlAddition + РеквизитыОбъектаАлгоритм + + true + + + + РеквизитыОбъектаАлгоритмРасширеннаяПодсказка + 318 + Label + true + true + + Left + + + + РеквизитыОбъектаАлгоритмКонтекстноеМеню + 316 + true + + true + true + true + true + true + 1 + 1 + AutoUse + AutoUse + true + true + false + false + false + true + Auto + Auto + true + true + true + true + + РеквизитыОбъекта.ВидОперации + + + CommonPicture.ВидыОпераций + + true + + + true + true + + true + + + <key>ru</key> + <value>Группа реквизиты для алгоритма</value> + + + ru + Группа реквизиты для алгоритма + + + ГруппаРеквизитыДляАлгоритмаРасширеннаяПодсказка + 286 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + true true true - НастроитьПараметрыИзмененийExtendedTooltip - 79 + ГруппаПроизвольныйАлгоритмРасширеннаяПодсказка + 282 Label true true @@ -224,10 +1196,301 @@ Left - Form.Command.НастроитьПараметрыИзменения + UsualGroup + + Auto + true + true + Auto + Auto + + + + ПараметрыВыполненияАлгоритма + 341 + + РежимЗаписиОбъекта + 343 + + <key>ru</key> + <value>Объект записывается</value> + + true + true + + true + + + Объект.ВариантЗаписиОбъекта + + 1 + Button + + РежимЗаписиОбъектаРасширеннаяПодсказка + 345 + + <key>ru</key> + <value>Определяется вариант записи объекта: +• Автоматически - объект будет всегда записан после выполнения алгоритма +• В код алгоритма - " необходимость записи определяется в коде алгоритма.</value> + + true + Label + true + true + + Left + + + + РежимЗаписиОбъектаКонтекстноеМеню + 344 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + Автоматически + + + 0 + + + + + ru + В коде алгоритма + + + 1 + + + Vertical + + + + РежимВыполнения + 346 + true + true + + true + + + Объект.РежимВыполнения + + Button + + РежимВыполненияРасширеннаяПодсказка + 348 + + <key>ru</key> + <value>Устанавливает или отключает безопасный режим исполнения алгоритма. Рекомендуется выполнять код в безопасном режиме. Более подробно о безопасном режиме см. документацию к платформе 1С:Предприятие.</value> + + true + Label + true + true + + Left + + + + РежимВыполненияКонтекстноеМеню + 347 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + Безопасный + + + 0 + + + + + ru + Небезопасный + + + 1 + + + Vertical + + + true + true + + true + + + ПараметрыВыполненияАлгоритмаРасширеннаяПодсказка + 342 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + DontUse + Auto + + + true + true + + true + + + <key>ru</key> + <value>Произвольный алгоритм</value> + + + ru + Произвольный алгоритм + + + ПроизвольныйАлгоритмРасширеннаяПодсказка + 274 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + СтраницыВидОперацииРасширеннаяПодсказка + 272 + Label + true + true + + Left + + + Pages + + Auto + +
      + + ПанельНастроек + 187 + + Алгоритмы + 337 + + ЗаглушкаАлгоритмы + 339 + true + false + + true + + + ЗаглушкаАлгоритмыРасширеннаяПодсказка + 340 + Label + true + true + + Left + + + Form.Command.ЗаглушкаАлгоритмы + Normal + Auto + true + true + UserCmds + Auto + + true + + true + + + <key>ru</key> + <value>Алгоритмы</value> + + + ru + Алгоритмы + + + АлгоритмыРасширеннаяПодсказка + 338 + Label + true + true + + Left + + + Popup + + Auto + Normal + + + + РанееИзмененныеРеквизиты + 189 + + Заглушка + 201 + true + false + + true + + + ЗаглушкаРасширеннаяПодсказка + 202 + Label + true + true + + Left + + + Form.Command.Заглушка Normal Auto - 21 true true UserCmds @@ -240,15 +1503,15 @@ <key>ru</key> - <value>Панель настроек</value> + <value>Ранее измененные реквизиты</value> ru - Панель настроек + Ранее измененные реквизиты - ПанельНастроекРасширеннаяПодсказка - 188 + РанееИзмененныеРеквизитыРасширеннаяПодсказка + 190 Label true true @@ -256,472 +1519,18 @@ Left - CommandBar - - Left + Popup + + Auto + Normal - - СоставОбъекта - 112 - - Реквизиты - 114 - - РеквизитыОбъекта - 116 - - <key>ru</key> - <value>Реквизиты</value> - - true - true - - true - - - РеквизитыОбъекта - - None - - РеквизитыОбъектаПредставление - 126 - - <key>ru</key> - <value>Реквизит</value> - - true - true - - true - - - РеквизитыОбъекта.Представление - - - РеквизитыОбъектаПредставлениеРасширеннаяПодсказка - 128 - Label - true - true - - Left - - - - РеквизитыОбъектаПредставлениеКонтекстноеМеню - 127 - true - - InputField - true - Auto - true - Left - true - - true - true - true - true - true - true - Normal - - - - РеквизитыОбъектаИзменять - 123 - true - true - - true - - - РеквизитыОбъекта.Изменять - - None - - OnChange - Подключаемый_ПриИзмененииФлажка - - - РеквизитыОбъектаИзменятьРасширеннаяПодсказка - 125 - Label - true - true - - Left - - - - РеквизитыОбъектаИзменятьКонтекстноеМеню - 124 - true - - CheckBoxField - Auto - true - - StdPicture.Change - - Left - true - - - - РеквизитыОбъектаЗначение - 129 - true - true - - true - - - РеквизитыОбъекта.Значение - - - OnChange - Подключаемый_ЗначениеПриИзменении - - - РеквизитыОбъектаЗначениеРасширеннаяПодсказка - 131 - Label - true - true - - Left - - - - РеквизитыОбъектаЗначениеКонтекстноеМеню - 130 - true - - InputField - Auto - true - Left - true - - - StartChoice - РеквизитыОбъектаЗначениеНачалоВыбора - - true - true - true - true - true - true - Normal - - - - РеквизитыОбъектаКоманднаяПанель - 118 - Left - - - DragCheck - РеквизитыОбъектаПроверкаПеретаскивания - - - Drag - РеквизитыОбъектаПеретаскивание - - - BeforeRowChange - Подключаемый_ПередНачаломИзменения - - - РеквизитыОбъектаСтрокаПоиска - 240 - - РеквизитыОбъектаСтрокаПоискаРасширеннаяПодсказка - 242 - Label - true - true - - Left - - - - РеквизитыОбъектаСтрокаПоискаКонтекстноеМеню - 241 - true - - РеквизитыОбъекта - - true - - - - РеквизитыОбъектаСостояниеПросмотра - 243 - - РеквизитыОбъектаСостояниеПросмотраРасширеннаяПодсказка - 245 - Label - true - true - - Left - - - - РеквизитыОбъектаСостояниеПросмотраКонтекстноеМеню - 244 - true - - ViewStatusAddition - РеквизитыОбъекта - - true - - - - РеквизитыОбъектаУправлениеПоиском - 246 - - РеквизитыОбъектаУправлениеПоискомРасширеннаяПодсказка - 248 - Label - true - true - - Left - - - - РеквизитыОбъектаУправлениеПоискомКонтекстноеМеню - 247 - true - - SearchControlAddition - РеквизитыОбъекта - - true - - - - РеквизитыОбъектаРасширеннаяПодсказка - 119 - Label - true - true - - Left - - - - РеквизитыОбъектаКонтекстноеМеню - 117 - true - - true - true - true - MultiRow -
      true
      - 1 - 1 - AutoUse - AutoUse - true - true - false - true - Auto - Auto - true - true - true - true - - РеквизитыОбъекта.ВидОперации - - - CommonPicture.ВидыОпераций - - None - None - None - true - -
      - - ГруппаНетРеквизитов - 261 - - Декорация2 - 263 - true - true - - true - - - Декорация2РасширеннаяПодсказка - 265 - Label - true - true - - Left - - - - Декорация2КонтекстноеМеню - 264 - true - - 5 - true - 3 - true - - - CommonPicture.Информация32 - - - - - Декорация1 - 258 - - <key>ru</key> - <value>У выбранных объектов нет общих реквизитов.</value> - - true - true - - true - - - Декорация1РасширеннаяПодсказка - 260 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 259 - true - - Label - true - 3 - true - - Left - Center - - - true - - true - - - <key>ru</key> - <value>Группа нет реквизитов</value> - - - ru - Группа нет реквизитов - - - ГруппаНетРеквизитовРасширеннаяПодсказка - 262 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Реквизиты</value> - - - ru - Реквизиты - - - РеквизитыРасширеннаяПодсказка - 115 - Label - true - true - - Left - - - Page - - Vertical - auto - false - -
      - true - true - - true - + + НастроитьПараметрыИзменений + 44 <key>ru</key> - <value>Состав объекта</value> - - - ru - Состав объекта - - - СоставОбъектаРасширеннаяПодсказка - 113 - Label - true - true - - Left - - - Pages - - TabsOnTop - Auto - - - - ПояснениеОНастроенныхИзменениях - 196 - - <key>ru</key> - <value>Изменить реквизит Номенклатура табличной части Товары в тех строках выбранных элементов, которые удовлетворяют условиям отбора.</value> + <value>Дополнительные параметры...</value> true true @@ -729,8 +1538,8 @@ true - ПояснениеОНастроенныхИзмененияхРасширеннаяПодсказка - 198 + НастроитьПараметрыИзмененийExtendedTooltip + 79 Label true true @@ -738,23 +1547,14 @@ Left - - ПояснениеОНастроенныхИзмененияхКонтекстноеМеню - 197 - true - - Label + Form.Command.НастроитьПараметрыИзменения + Normal + Auto + 21 true - 2 true - true - - - URLProcessing - ПояснениеОНастроенныхИзмененияхОбработкаНавигационнойСсылки - - Left - + UserCmds + Auto true true @@ -763,15 +1563,15 @@ <key>ru</key> - <value>Изменяемые реквизиты</value> + <value>Панель настроек</value> ru - Изменяемые реквизиты + Панель настроек - ИзменяемыеРеквизитыРасширеннаяПодсказка - 184 + ПанельНастроекРасширеннаяПодсказка + 188 Label true true @@ -779,16 +1579,48 @@ Left - UsualGroup - - Vertical - Auto - WeakSeparation - true - true - auto - Auto - Auto + CommandBar + + Left + +
      + + ПояснениеОНастроенныхИзменениях + 196 + + <key>ru</key> + <value>Изменить реквизит Номенклатура табличной части Товары в тех строках выбранных элементов, которые удовлетворяют условиям отбора.</value> + + true + true + + true + + + ПояснениеОНастроенныхИзмененияхРасширеннаяПодсказка + 198 + Label + true + true + + Left + + + + ПояснениеОНастроенныхИзмененияхКонтекстноеМеню + 197 + true + + Label + 2 + true + true + + + URLProcessing + ПояснениеОНастроенныхИзмененияхОбработкаНавигационнойСсылки + + Left true @@ -853,7 +1685,6 @@ true Label - true true Left @@ -1163,12 +1994,12 @@ Left true - true 2 true false true true + 1 true true true @@ -1241,21 +2072,90 @@ ОжиданиеОбработки 64 - - ДекорацияДлительнаяОперация - 65 - - <key>ru</key> - <value>Длительная операция</value> - + + ДлительнаяОперацияКартинкаИТекст + 266 + + ДекорацияДлительнаяОперация + 65 + + <key>ru</key> + <value>Длительная операция</value> + + true + true + + true + + + ДекорацияДлительнаяОперацияExtendedTooltip + 102 + Label + true + true + + Left + + + + ДекорацияДлительнаяОперацияКонтекстноеМеню + 66 + true + + true + true + + + CommonPicture.ДлительнаяОперация48 + + + + + ДекорацияПоясняющийТекстДлительнойОперации + 67 + + <key>ru</key> + <value>Выполняется изменение элементов...</value> + + true + true + + true + + + ДекорацияПоясняющийТекстДлительнойОперацииExtendedTooltip + 103 + Label + true + true + + Left + + + + ДекорацияПоясняющийТекстДлительнойОперацииКонтекстноеМеню + 68 + true + + Label + true + + Left + Center + + true true true + + <key>ru</key> + <value>Длительная операция картинка и текст</value> + - ДекорацияДлительнаяОперацияExtendedTooltip - 102 + ДлительнаяОперацияКартинкаИТекстРасширеннаяПодсказка + 267 Label true true @@ -1263,59 +2163,14 @@ Left - - ДекорацияДлительнаяОперацияКонтекстноеМеню - 66 - true - - 7 - true - 3 - true - false - false - - - CommonPicture.ДлительнаяОперация48 - - -
      - - ДекорацияПоясняющийТекстДлительнойОперации - 67 - - <key>ru</key> - <value>Выполняется изменение элементов...</value> - - true - true - - true - - - ДекорацияПоясняющийТекстДлительнойОперацииExtendedTooltip - 103 - Label - true - true - - Left - - - - ДекорацияПоясняющийТекстДлительнойОперацииКонтекстноеМеню - 68 - true - - Label - true - 3 - true - true - false - - Left + UsualGroup + Center + Auto + true + true + Auto + Auto true @@ -1376,9 +2231,7 @@ 220 true - 6 true - 3 true @@ -1415,8 +2268,6 @@ true Label - true - 3 true Left @@ -1440,6 +2291,7 @@ UsualGroup + Center Auto true true @@ -1695,11 +2547,6 @@ OnCreateAtServer ПриСозданииНаСервере - - OnClose - ПриЗакрытии - - 70 LockOwner true true @@ -2014,21 +2861,6 @@ true - - ПараметрыОбработчикаОжидания - - <key>ru</key> - <value>Параметры обработчика ожидания</value> - - 20 - - - true - - - true - - ВыполняетсяОбработка @@ -2304,6 +3136,24 @@ <common>true</common> </edit> </columns> + <columns> + <name>ПредставлениеСвязейПараметровВыбора</name> + <title> + <key>ru</key> + <value>Представление связей параметров выбора</value> + + 13 + + String + + + + true + + + true + + ТабличныеЧастиОбъекта @@ -2446,7 +3296,9 @@ true - + + true + ВыбранныеОбъектыВКонтексте @@ -2535,7 +3387,9 @@ true - + + true + ВидыИзменяемыхОбъектов @@ -2625,6 +3479,64 @@ true + + Алгоритм + + <key>ru</key> + <value>Алгоритм</value> + + 40 + + String + + 100 + + + + true + + + true + + + + КодАлгоритма + + <key>ru</key> + <value>Код алгоритма</value> + + 41 + + String + + + + true + + + true + + + + ИсторияАлгоритмовСписок + + <key>ru</key> + <value>История алгоритмов список</value> + + 45 + + ValueList + + + true + + + true + + + + + Назад @@ -2647,28 +3559,6 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> - <formCommands> - <name>Далее</name> - <title> - <key>ru</key> - <value>Далее >></value> - - 2 - - ru - Далее - - - true - - - - Далее - - - DontUse - Auto - Изменить @@ -2730,6 +3620,23 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> + <formCommands> + <name>ЗаглушкаАлгоритмы</name> + <title> + <key>ru</key> + <value><Нет></value> + + 4 + + ru + Заглушка алгоритмы + + + true + + DontUse + Auto + МассивОбъектов diff --git a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/Форма/Module.bsl index ad8f02a0a..bff1bdc76 100644 --- a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Forms/Форма/Module.bsl @@ -1,5 +1,3 @@ - - #Область ОбработчикиСобытийФормы &НаСервере @@ -18,11 +16,18 @@ ЗагрузитьНастройкиОбработки(); КонтекстныйВызов = ТипЗнч(Параметры.МассивОбъектов) = Тип("Массив"); Элементы.ФормаНазад.Видимость = Ложь; + + ЗапретРедактированияВстроен = Метаданные.НайтиПоПолномуИмени("ОбщийМодуль.ЗапретРедактированияРеквизитовОбъектовКлиент") <> Неопределено; + Если КонтекстныйВызов Тогда ВыполнитьДействияПриКонтекстномОткрытии(); Иначе Заголовок = НСтр("ru = 'Групповое изменение реквизитов'"); + ЗаполнитьСписокТиповОбъектов(); КонецЕсли; + + НайтиФормуРазблокированияРеквизитов(); + СформироватьПояснениеОНастроенныхИзменениях(); ОбновитьВидимостьЭлементов(); @@ -61,37 +66,19 @@ Если ПерезаполнитьСтруктуруРеквизитовОбъекта И Не ПустаяСтрока(ВидыИзменяемыхОбъектов) Тогда СохраненныеНастройки = Неопределено; ЗагрузитьМетаданныеОбъекта(Истина, СохраненныеНастройки); - Если СохраненныеНастройки <> Неопределено Тогда + Если СохраненныеНастройки <> Неопределено И Объект.ТипОперации <> "ВыполнитьАлгоритм" Тогда УстановитьНастройкуИзменения(СохраненныеНастройки); КонецЕсли; КонецЕсли; ОбновитьВидимостьЭлементов(); + СохранитьНастройки(); КонецЕсли; КонецЕсли; КонецПроцедуры -&НаКлиенте -Процедура ПриЗакрытии() - - Если ТипЗнч(РезультатФоновогоЗадания) = Тип("Структура") - И Не РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - ОтменитьВыполнениеЗадания(РезультатФоновогоЗадания.ИдентификаторЗадания); - КонецЕсли; - - СохранитьНастройкиОбработки( - ВидыИзменяемыхОбъектов, - Объект.ИзменятьВТранзакции, - Объект.ПрерыватьПриОшибке, - ТОНастройкаПорции, - ТОПроцентОбъектовВПорции, - ТОЧислоОбъектовВПорции, - ОбрабатыватьРекурсивно); - -КонецПроцедуры - #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы @@ -106,13 +93,6 @@ ОткрытьФорму(ПолноеИмяФормы("ВыборВидаОбъектов"), ПараметрыФормы, , , , , ОписаниеОповещения); КонецПроцедуры -&НаКлиенте -Процедура ПредставлениеИзменяемыхОбъектовАвтоПодбор(Элемент, Текст, ДанныеВыбора, ПараметрыПолученияДанных, Ожидание, СтандартнаяОбработка) - Если Элементы.ПредставлениеИзменяемыхОбъектов.СписокВыбора.Количество() = 0 Тогда - ЗаполнитьСписокТиповОбъектов(); - КонецЕсли; -КонецПроцедуры - &НаКлиенте Процедура ПредставлениеИзменяемыхОбъектовПриИзменении(Элемент) ВыбранныйТип = Элементы.ПредставлениеИзменяемыхОбъектов.СписокВыбора.НайтиПоЗначению(ПредставлениеИзменяемыхОбъектов); @@ -133,6 +113,24 @@ ВыбранныеОбъектыВКонтексте.Очистить(); ПерестроитьИнтерфейсФормыДляВыбранногоВидаОбъектов(); КонецЕсли; + + Алгоритм = ПредставлениеИзменяемыхОбъектов; +КонецПроцедуры + +&НаКлиенте +Процедура ВидОперацииПриИзменении(Элемент) + + Если Объект.ТипОперации = "ВыполнитьАлгоритм" Тогда + Элементы.СтраницыВидОперации.ТекущаяСтраница = Элементы.ПроизвольныйАлгоритм; + Элементы.ФормаИзменить.Заголовок = НСтр("ru = 'Выполнить'"); + Элементы.РанееИзмененныеРеквизиты.Видимость = Ложь; + Элементы.Алгоритмы.Видимость = Истина; + Иначе + Элементы.СтраницыВидОперации.ТекущаяСтраница = Элементы.ИзменяемыеРеквизиты; + Элементы.ФормаИзменить.Заголовок = НСтр("ru = 'Изменить реквизиты'"); + Элементы.РанееИзмененныеРеквизиты.Видимость = Истина; + Элементы.Алгоритмы.Видимость = Ложь; + КонецЕсли; КонецПроцедуры #КонецОбласти @@ -148,6 +146,7 @@ Процедура ОбновитьНадписиСервер() ОбновитьНадписьКоличествоВыбранных(); СформироватьПояснениеОНастроенныхИзменениях(); + Алгоритм = ПредставлениеИзменяемыхОбъектов; КонецПроцедуры #КонецОбласти @@ -233,16 +232,15 @@ #Область ОбработчикиКомандФормы -&НаКлиенте -Процедура Далее(Команда) - - ПерейтиНаСтраницуИзмененияОбъектов(); - -КонецПроцедуры - &НаКлиенте Процедура Изменить(Команда) + Если Объект.ТипОперации = "ВыполнитьАлгоритм" + И Объект.РежимВыполнения = 1 + И НЕ ДоступноВыполнениеКодаВНебезопасномРежиме() Тогда + Объект.РежимВыполнения = 0; + КонецЕсли; + НазначениеКнопки = "Изменить"; Если ВыполняетсяОбработка Тогда НазначениеКнопки = "Прервать"; @@ -260,8 +258,7 @@ Если НазначениеКнопки = "Прервать" Тогда ТекущееСостояниеИзменения.ПрерватьИзменение = Истина; - Если Не РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - ОтключитьОбработчикОжидания("ПроверитьВыполнениеИзменения"); + Если Не РезультатФоновогоЗадания.Статус = "Выполнено" Тогда ЗавершитьИзменениеОбъектов(); КонецЕсли; Возврат; @@ -348,11 +345,20 @@ &НаКлиенте Процедура Подключаемый_УстановитьНастройку(Команда) - МестоРазмещенияКоманд = Элементы.РанееИзмененныеРеквизиты; - ШаблонИмениКоманды = МестоРазмещенияКоманд.Имя + "НастройкаИзменений"; - ИндексКоманды = Число(Сред(Команда.Имя, СтрДлина(ШаблонИмениКоманды) + 1)); - УстановитьНастройкуИзменения(ИсторияОперацийСписок[ИндексКоманды].Значение); - СформироватьПояснениеОНастроенныхИзменениях(); + Если СтрНачинаетсяС(Команда.Имя, "Алгоритмы") Тогда + МестоРазмещенияКоманд = Элементы.Алгоритмы; + ШаблонИмениКоманды = МестоРазмещенияКоманд.Имя + "НастройкаИзменений"; + ИндексКоманды = Число(Сред(Команда.Имя, СтрДлина(ШаблонИмениКоманды) + 1)); + КодАлгоритма = ИсторияАлгоритмовСписок[ИндексКоманды].Значение; + Алгоритм = ИсторияАлгоритмовСписок[ИндексКоманды].Представление; + СформироватьПояснениеОНастроенныхИзменениях(); + Иначе + МестоРазмещенияКоманд = Элементы.РанееИзмененныеРеквизиты; + ШаблонИмениКоманды = МестоРазмещенияКоманд.Имя + "НастройкаИзменений"; + ИндексКоманды = Число(Сред(Команда.Имя, СтрДлина(ШаблонИмениКоманды) + 1)); + УстановитьНастройкуИзменения(ИсторияОперацийСписок[ИндексКоманды].Значение); + СформироватьПояснениеОНастроенныхИзменениях(); + КонецЕсли; КонецПроцедуры @@ -441,6 +447,67 @@ Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", Новый Цвет(192, 192, 192)); + + // Пояснения по связанным реквизитам + + Для Каждого Реквизит Из РеквизитыОбъекта Цикл + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.РеквизитыОбъектаЗначение.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("РеквизитыОбъекта.Имя"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Реквизит.Имя; + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("РеквизитыОбъекта.Значение"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено; + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("РеквизитыОбъекта.Изменять"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Ложь; + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("РеквизитыОбъекта.ПредставлениеСвязейПараметровВыбора"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Заполнено; + + Элемент.Оформление.УстановитьЗначениеПараметра("Текст", Реквизит.ПредставлениеСвязейПараметровВыбора); + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", WebЦвета.Серый); + КонецЦикла; + + Для Каждого ТабличнаяЧасть Из ТабличныеЧастиОбъекта Цикл + Для Каждого Реквизит Из ЭтотОбъект[ТабличнаяЧасть.Значение] Цикл + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(ТабличнаяЧасть.Значение + "Значение"); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(ТабличнаяЧасть.Значение + ".Имя"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Реквизит.Имя; + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(ТабличнаяЧасть.Значение + ".Значение"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено; + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(ТабличнаяЧасть.Значение + ".Изменять"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Ложь; + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(ТабличнаяЧасть.Значение + ".ПредставлениеСвязейПараметровВыбора"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Заполнено; + + Элемент.Оформление.УстановитьЗначениеПараметра("Текст", Реквизит.ПредставлениеСвязейПараметровВыбора); + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", WebЦвета.Серый); + КонецЦикла; + КонецЦикла; + КонецПроцедуры &НаКлиенте @@ -450,7 +517,7 @@ Возврат; КонецЕсли; - Если Не ЕстьНастроенныеИзменения() Тогда + Если Не ЕстьНастроенныеИзменения() И Объект.ТипОперации = "ВвестиЗначения" Тогда ТекстВопроса = НСтр("ru = 'Изменения не настроены. Выполнить перезапись элементов без изменений?'"); ОписаниеОповещения = Новый ОписаниеОповещения("ВыполнитьИзменениеПроверкиВыполнены", ЭтотОбъект); ПоказатьВопрос(ОписаниеОповещения, ТекстВопроса, РежимДиалогаВопрос.ОКОтмена, , , НСтр("ru = 'Изменение элементов'")); @@ -500,15 +567,9 @@ КоличествоОбъектов = Параметры.МассивОбъектов.Количество(); Заголовок = ПодставитьПараметрыВСтроку(ШаблонЗаголовка, ПредставлениеТипа, КоличествоОбъектов); - ЗапретРедактированияВстроен = Метаданные.НайтиПоПолномуИмени("ОбщийМодуль.ЗапретРедактированияРеквизитовОбъектовКлиент") <> Неопределено; - СвойстваВстроены = Метаданные.НайтиПоПолномуИмени("ОбщийМодуль.УправлениеСвойствами") <> Неопределено; - // При отсутствии права сохранения настроек необходимо спрятать весь функционал работы с настройками. Элементы.РанееИзмененныеРеквизиты.Видимость = ПравоДоступа("СохранениеДанныхПользователя", Метаданные); - Элементы.ИзменяемыеРеквизиты.Отображение = ОтображениеОбычнойГруппы.Нет; - Элементы.ИзменяемыеРеквизиты.ОтображатьЗаголовок = Ложь; - ВидыИзменяемыхОбъектов = СтрСоединить(ТипыОбъектов.ВыгрузитьЗначения(), ","); // Подгружаем историю операций с данным типом объектов. @@ -524,23 +585,13 @@ ЗагрузитьМетаданныеОбъекта(); - Если ТипыОбъектов.Количество() > 0 Тогда - МетаданныеОбъекта = Метаданные.НайтиПоПолномуИмени(ТипыОбъектов[0].Значение); - - Если ЗапретРедактированияВстроен И РеквизитыОбъекта.НайтиСтроки(Новый Структура("ЗаблокированныйРеквизит", Истина)).Количество() > 0 Тогда - Если МетаданныеОбъекта.Формы.Найти("РазблокированиеРеквизитов") = Неопределено Тогда - ЕстьФормаРазблокированияРеквизитов = Ложь; - Иначе - ЕстьФормаРазблокированияРеквизитов = Истина; - ПолноеИмяФормыРаботыСБлокируемымиРеквизитами = ТипыОбъектов[0].Значение + ".Форма.РазблокированиеРеквизитов"; - КонецЕсли; - КонецЕсли; - КонецЕсли; - ПредставлениеИзменяемыхОбъектов = ПредставлениеИзменяемыхОбъектов(); ОбновитьНадписьКоличествоВыбранных(); Элементы.ПредставлениеИзменяемыхОбъектов.ТолькоПросмотр = Истина; + + // При контекстном вызове не допускается выполнение произвольного алгоритма. + Элементы.ТипОперации.Видимость = Ложь; КонецПроцедуры &НаКлиенте @@ -569,6 +620,37 @@ // Настройки истории изменений это массив структур с ключами: // Изменение - массив со структурой изменения. // Представление - представление настройки пользователю. + + Если Объект.ТипОперации = "ВыполнитьАлгоритм" Тогда + Настройки = ХранилищеОбщихНастроекЗагрузить( + "ГрупповоеИзменениеОбъектов", + "ИсторияАлгоритмов/" + ВидыИзменяемыхОбъектов); + + Если Настройки = Неопределено Тогда + Настройки = Новый Массив; + Иначе + Для Индекс = 0 По Настройки.ВГраница() Цикл + Если Настройки.Получить(Индекс).Представление = ПредставлениеИзменения Тогда + Настройки.Удалить(Индекс); + Прервать; + КонецЕсли; + КонецЦикла; + КонецЕсли; + + Настройки.Вставить(0, Новый Структура("Изменение, Представление", СтруктураИзменения, ПредставлениеИзменения)); + + Если Настройки.Количество() > 20 Тогда + Настройки.Удалить(19); + КонецЕсли; + + ХранилищеОбщихНастроекСохранить("ГрупповоеИзменениеОбъектов", "ИсторияАлгоритмов/" + ВидыИзменяемыхОбъектов, Настройки); + + ЗагрузитьИсториюОпераций(); + ЗаполнитьПодменюРанееИзмененныеРеквизиты(); + + Возврат; + КонецЕсли; + Настройки = ХранилищеОбщихНастроекЗагрузить( "ГрупповоеИзменениеОбъектов", "ИсторияИзменений/" + ВидыИзменяемыхОбъектов); @@ -602,12 +684,21 @@ ИсторияОперацийСписок.Очистить(); ИсторияИзменений = ХранилищеОбщихНастроекЗагрузить("ГрупповоеИзменениеОбъектов", "ИсторияИзменений/" + ВидыИзменяемыхОбъектов); + Если ИсторияИзменений <> Неопределено И ТипЗнч(ИсторияИзменений) = Тип("Массив") Тогда + Для Каждого Настройка Из ИсторияИзменений Цикл + ИсторияОперацийСписок.Добавить(Настройка.Изменение, Настройка.Представление); + КонецЦикла; + КонецЕсли; + + ИсторияАлгоритмовСписок.Очистить(); + + ИсторияИзменений = ХранилищеОбщихНастроекЗагрузить("ГрупповоеИзменениеОбъектов", "ИсторияАлгоритмов/" + ВидыИзменяемыхОбъектов); Если ИсторияИзменений = Неопределено Тогда Возврат; КонецЕсли; Для Каждого Настройка Из ИсторияИзменений Цикл - ИсторияОперацийСписок.Добавить(Настройка.Изменение, Настройка.Представление); + ИсторияАлгоритмовСписок.Добавить(Настройка.Изменение, Настройка.Представление); КонецЦикла; КонецПроцедуры @@ -715,6 +806,7 @@ Объект.ИзменятьВТранзакции = Истина; Объект.ПрерыватьПриОшибке = Истина; + Объект.ТипОперации = "ВвестиЗначения"; ТОНастройкаПорции = 1; ТОПроцентОбъектовВПорции = 100; ТОЧислоОбъектовВПорции = 1; @@ -736,8 +828,26 @@ КонецЕсли; КонецЕсли; + Элементы.РежимВыполнения.Видимость = ДоступноВыполнениеКодаВНебезопасномРежиме(); + КонецПроцедуры +// В модели сервиса, базовой конфигурации или без права АдминистраторСистемы нельзя выполнять произвольный алгоритм. +// +&НаСервере +Функция ДоступноВыполнениеКодаВНебезопасномРежиме() + Если ЭтоБазоваяВерсияКонфигурации() + ИЛИ РазделениеВключено() Тогда + Возврат Ложь; + КонецЕсли; + + Если НЕ ПравоДоступа("Администрирование", Метаданные) Тогда + Возврат Ложь; + КонецЕсли; + + Возврат Истина; +КонецФункции + &НаКлиенте Процедура РазрешитьРедактированиеРеквизитов(ВыбранныйРеквизит) @@ -760,7 +870,7 @@ ПараметрыФормы = Новый Структура; ПараметрыФормы.Вставить("РежимВыбора", Истина); ПараметрыФормы.Вставить("ЗаблокированныеРеквизиты", ЗаблокированныеРеквизиты); - + ОписаниеОповещения = Новый ОписаниеОповещения("ПриРазблокированииРеквизитов", ЭтотОбъект); ОткрытьФорму(ПолноеИмяФормыРаботыСБлокируемымиРеквизитами, ПараметрыФормы, ЭтотОбъект, , , , ОписаниеОповещения); @@ -900,37 +1010,34 @@ &НаКлиенте Процедура ИзменитьПорциюОбъектов() - // Изменяем порцию на сервере - РезультатИзменения = ИзменитьНаСервере(ТекущееСостояниеИзменения.ОстанавливатьИзменениеПриОшибке); - - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - ОбработатьРезультатИзменения(ПолучитьИзВременногоХранилища(РезультатФоновогоЗадания.АдресХранилища)); + ДлительнаяОперация = ИзменитьНаСервере(ТекущееСостояниеИзменения.ОстанавливатьИзменениеПриОшибке); + + Если ДлительнаяОперация.Статус = "Выполнено" Тогда + ОбработатьРезультатИзменения(ПолучитьИзВременногоХранилища(ДлительнаяОперация.АдресРезультата)); Иначе МодульДлительныеОперацииКлиент = ОбщийМодуль("ДлительныеОперацииКлиент"); - МодульДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания); - ПодключитьОбработчикОжидания("ПроверитьВыполнениеИзменения", ПараметрыОбработчикаОжидания.ТекущийИнтервал, Истина); + ПараметрыОжидания = МодульДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + + ОписаниеОповещения = Новый ОписаниеОповещения("ПриЗавершенииОперацииИзменения", ЭтотОбъект); + МодульДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОписаниеОповещения, ПараметрыОжидания); КонецЕсли; КонецПроцедуры &НаКлиенте -Процедура ПроверитьВыполнениеИзменения() - - Попытка - РезультатФоновогоЗадания.ЗаданиеВыполнено = ЗаданиеВыполнено(РезультатФоновогоЗадания.ИдентификаторЗадания); - Исключение - ПерейтиНаСтраницуИзмененияОбъектов(); - ВызватьИсключение; - КонецПопытки; - - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - ОбработатьРезультатИзменения(ПолучитьИзВременногоХранилища(РезультатФоновогоЗадания.АдресХранилища)); - Иначе - МодульДлительныеОперацииКлиент = ОбщийМодуль("ДлительныеОперацииКлиент"); - МодульДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания); - ПодключитьОбработчикОжидания("ПроверитьВыполнениеИзменения", ПараметрыОбработчикаОжидания.ТекущийИнтервал, Истина); +Процедура ПриЗавершенииОперацииИзменения(Результат, ДополнительныеПараметры) Экспорт + Если Результат = Неопределено Тогда + НазадСервер(); + Возврат; КонецЕсли; + Если Результат.Статус = "Ошибка" Тогда + НазадСервер(); + ВызватьИсключение Результат.КраткоеПредставлениеОшибки; + КонецЕсли; + + ОбработатьРезультатИзменения(ПолучитьИзВременногоХранилища(Результат.АдресРезультата)); КонецПроцедуры &НаКлиенте @@ -1061,15 +1168,17 @@ &НаСервере Процедура НазадСервер() - Если Элементы.Страницы.ТекущаяСтраница = Элементы.ИзменениеОбъектов - Или Элементы.Страницы.ТекущаяСтраница = Элементы.ВсеГотово Тогда - Элементы.Страницы.ТекущаяСтраница = Элементы.НастройкаИзменений; - КонецЕсли; + Элементы.Страницы.ТекущаяСтраница = Элементы.НастройкаИзменений; ОбработкаЗавершена = Ложь; ОбъектыКоторыеНеУдалосьИзменить.Очистить(); Элементы.ФормаНазад.Видимость = Ложь; - Элементы.ФормаИзменить.Заголовок = НСтр("ru = 'Изменить реквизиты'"); + Если Объект.ТипОперации = "ВыполнитьАлгоритм" Тогда + Элементы.ФормаИзменить.Заголовок = НСтр("ru = 'Выполнить'"); + Элементы.ФормаИзменить.РасширеннаяПодсказка.Заголовок = НСтр("ru = 'Выполнить алгоритм'"); + Иначе + Элементы.ФормаИзменить.Заголовок = НСтр("ru = 'Изменить реквизиты'"); + КонецЕсли; ОбновитьНадписиСервер(); @@ -1121,6 +1230,13 @@ &НаСервере Функция ТекущиеНастройкиИзменения() + Если Объект.ТипОперации = "ВыполнитьАлгоритм" Тогда + Результат = Новый Структура; + Результат.Вставить("ОписаниеИзменения", КодАлгоритма); + Результат.Вставить("ПредставлениеИзменения", Алгоритм); + Возврат Результат; + КонецЕсли; + ОписаниеИзменения = Новый Структура; КоллекцияОпераций = РеквизитыОбъекта.НайтиСтроки(Новый Структура("Изменять", Истина)); @@ -1268,6 +1384,10 @@ СтруктураПараметров.Вставить("ОстанавливатьИзменениеПриОшибке", ОстанавливатьИзменениеПриОшибке); СтруктураПараметров.Вставить("ИзменятьВТранзакции", ОбработкаОбъект.ИзменятьВТранзакции); СтруктураПараметров.Вставить("ПрерыватьПриОшибке", ОбработкаОбъект.ПрерыватьПриОшибке); + СтруктураПараметров.Вставить("ТипОперации", ОбработкаОбъект.ТипОперации); + СтруктураПараметров.Вставить("КодАлгоритма", КодАлгоритма); + СтруктураПараметров.Вставить("РежимВыполнения", ОбработкаОбъект.РежимВыполнения); + СтруктураПараметров.Вставить("ВариантЗаписиОбъекта", ОбработкаОбъект.ВариантЗаписиОбъекта); СтруктураПараметров.Вставить("ИспользуютсяДопРеквизиты", ОбработкаОбъект.ИспользуютсяДопРеквизиты); СтруктураПараметров.Вставить("ИспользуютсяДопСведения", ОбработкаОбъект.ИспользуютсяДопСведения); СтруктураПараметров.Вставить("ИзменяемыеРеквизиты", ИзменяемыеРеквизиты()); @@ -1278,9 +1398,9 @@ ЭтоВнешняяОбработка = Не Метаданные.Обработки.Содержит(ОбработкаОбъект.Метаданные()); Если Не Объект.ИзменятьВТранзакции Или Не ПодсистемаСуществует("СтандартныеПодсистемы.БазоваяФункциональность") Тогда - АдресХранилища = ПоместитьВоВременноеХранилище(Неопределено, УникальныйИдентификатор); - ОбработкаОбъект.ВыполнитьИзменениеОбъектов(СтруктураПараметров, АдресХранилища); - РезультатФоновогоЗадания = Новый Структура("ЗаданиеВыполнено, АдресХранилища", Истина, АдресХранилища); + АдресХранилища = ПоместитьВоВременноеХранилище(Неопределено, УникальныйИдентификатор); + ОбработкаОбъект.ИзменитьОбъекты(СтруктураПараметров, АдресХранилища); + РезультатФоновогоЗадания = Новый Структура("Статус, АдресРезультата", "Выполнено", АдресХранилища); Иначе НаименованиеЗадания = НСтр("ru = 'Групповое изменение элементов'"); @@ -1288,17 +1408,16 @@ ПараметрыЗадания = Новый Структура; ПараметрыЗадания.Вставить("ИмяОбработки", ИмяОбработки()); - ПараметрыЗадания.Вставить("ИмяМетода", "ВыполнитьИзменениеОбъектов"); + ПараметрыЗадания.Вставить("ИмяМетода", "ИзменитьОбъекты"); ПараметрыЗадания.Вставить("ПараметрыВыполнения", СтруктураПараметров); ПараметрыЗадания.Вставить("ЭтоВнешняяОбработка", ЭтоВнешняяОбработка); ПараметрыЗадания.Вставить("ДополнительнаяОбработкаСсылка", ДополнительнаяОбработкаСсылка); МодульДлительныеОперации = ОбщийМодуль("ДлительныеОперации"); - РезультатФоновогоЗадания = МодульДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - ВыполняемыйМетод, - ПараметрыЗадания, - НаименованиеЗадания); + ПараметрыВыполнения = МодульДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания; + + РезультатФоновогоЗадания = МодульДлительныеОперации.ВыполнитьВФоне(ВыполняемыйМетод, ПараметрыЗадания, ПараметрыВыполнения); КонецЕсли; Возврат РезультатФоновогоЗадания; @@ -1387,14 +1506,6 @@ КонецФункции -&НаСервереБезКонтекста -Функция ЗаданиеВыполнено(ИдентификаторЗадания) - - МодульДлительныеОперации = ОбщийМодуль("ДлительныеОперации"); - Возврат МодульДлительныеОперации.ЗаданиеВыполнено(ИдентификаторЗадания); - -КонецФункции - &НаКлиенте Процедура СброситьНастройкиИзменения() Для Каждого Реквизит Из РеквизитыОбъекта Цикл @@ -1410,12 +1521,6 @@ КонецЦикла; КонецПроцедуры -&НаСервереБезКонтекста -Процедура ОтменитьВыполнениеЗадания(ИдентификаторЗадания); - МодульДлительныеОперации = ОбщийМодуль("ДлительныеОперации"); - МодульДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторЗадания); -КонецПроцедуры - &НаКлиенте Процедура НастройкаОтбораНажатие(Элемент) ПерейтиКНастройкеОтбора(); @@ -1554,6 +1659,7 @@ ВидыИзменяемыхОбъектов = СтрСоединить(ВыбранныеОбъекты, ","); ВыбранныеОбъектыВКонтексте.Очистить(); ПерестроитьИнтерфейсФормыДляВыбранногоВидаОбъектов(); + Элементы.РеквизитыОбъектаАлгоритм.ОтборСтрок = Новый ФиксированнаяСтруктура(Новый Структура("ВидОперации", "1")); КонецЕсли; КонецПроцедуры @@ -1568,6 +1674,7 @@ Процедура ИнициализироватьНастройкиФормы() ИнициализироватьКомпоновщикНастроек(); ЗагрузитьМетаданныеОбъекта(); + НайтиФормуРазблокированияРеквизитов(); ЗагрузитьИсториюОпераций(); ЗаполнитьПодменюРанееИзмененныеРеквизиты(); ПредставлениеИзменяемыхОбъектов = ПредставлениеИзменяемыхОбъектов(); @@ -2024,6 +2131,7 @@ Реквизит.СвязиПараметровВыбора = СвязиПараметровВыбораСтрокой(ОписаниеРеквизита.СвязиПараметровВыбора); Реквизит.ПараметрыВыбора = ПараметрыВыбораСтрокой(ОписаниеРеквизита.ПараметрыВыбора); Реквизит.ВидОперации = 1; + Реквизит.ПредставлениеСвязейПараметровВыбора = ПредставлениеСвязейПараметровВыбора(ОписаниеРеквизита.СвязиПараметровВыбора, ОбъектМетаданных); КонецЦикла; КонецЦикла; @@ -2118,6 +2226,10 @@ ОписаниеКолонки.Имя = "ВыборГруппИЭлементов"; ОписаниеКолонки.Тип = Новый ОписаниеТипов("Строка"); + ОписаниеКолонки = КолонкиТаблиц.Добавить(); + ОписаниеКолонки.Имя = "ПредставлениеСвязейПараметровВыбора"; + ОписаниеКолонки.Тип = Новый ОписаниеТипов("Строка"); + Возврат КолонкиТаблиц; КонецФункции @@ -2250,7 +2362,11 @@ Если Не ПустаяСтрока(ВидыИзменяемыхОбъектов) Тогда ЕстьОбщиеРеквизиты = РеквизитыОбъекта.Количество() > 0; Элементы.ГруппаНетРеквизитов.Видимость = Не ЕстьОбщиеРеквизиты; - Элементы.РанееИзмененныеРеквизиты.Видимость = ЕстьОбщиеРеквизиты Или ТабличныеЧастиОбъекта.Количество() > 0; + Если Объект.ТипОперации = "ВыполнитьАлгоритм" Тогда + Элементы.Алгоритмы.Видимость = Истина; + Иначе + Элементы.РанееИзмененныеРеквизиты.Видимость = ЕстьОбщиеРеквизиты Или ТабличныеЧастиОбъекта.Количество() > 0; + КонецЕсли; Элементы.РеквизитыОбъекта.Видимость = ЕстьОбщиеРеквизиты; КонецЕсли; КонецПроцедуры @@ -2441,9 +2557,11 @@ КонецЕсли; СписокВидовИзменяемыхОбъектов = СтрРазделить(ВидыИзменяемыхОбъектов, ",", Ложь); + ПредставлениеСвязейПараметровВыбора = ""; Если СписокВидовИзменяемыхОбъектов.Количество() = 1 Тогда ПараметрыВыбораСтрока = ПараметрыВыбораСтрокой(ОписаниеРеквизита.ПараметрыВыбора); СвязиПараметровВыбораСтрока = СвязиПараметровВыбораСтрокой(ОписаниеРеквизита.СвязиПараметровВыбора); + ПредставлениеСвязейПараметровВыбора = ПредставлениеСвязейПараметровВыбора(ОписаниеРеквизита.СвязиПараметровВыбора, ОбъектМетаданных); Иначе ПараметрыВыбораСтрока = ПараметрыВыбораСтрокой(Новый Массив); СвязиПараметровВыбораСтрока = СвязиПараметровВыбораСтрокой(Новый Массив); @@ -2452,17 +2570,20 @@ РеквизитОбъекта = РеквизитыОбъекта.Добавить(); РеквизитОбъекта.Имя = ОписаниеРеквизита.Имя; РеквизитОбъекта.Представление = ОписаниеРеквизита.Представление(); - РеквизитОбъекта.ВидОперации = 1; // реквизит + РеквизитОбъекта.ДопустимыеТипы = ОписаниеРеквизита.Тип; РеквизитОбъекта.ПараметрыВыбора = ПараметрыВыбораСтрока; РеквизитОбъекта.СвязиПараметровВыбора = СвязиПараметровВыбораСтрока; + РеквизитОбъекта.ПредставлениеСвязейПараметровВыбора = ПредставлениеСвязейПараметровВыбора; РеквизитОбъекта.ВыборГруппИЭлементов = ВыборГруппИЭлементов; + РеквизитОбъекта.ВидОперации = 1; Если БлокируемыеРеквизиты.Найти(ОписаниеРеквизита.Имя) <> Неопределено Тогда РеквизитОбъекта.ЗаблокированныйРеквизит = Истина; КонецЕсли; РеквизитОбъекта.ЭтоСтандартныйРеквизит = ТипЗнч(ОписаниеРеквизита) = Тип("ОписаниеСтандартногоРеквизита"); + КонецЦикла; КонецПроцедуры @@ -2642,6 +2763,12 @@ КонецЕсли; Элементы.ПояснениеОНастроенныхИзменениях.Заголовок = ФорматированнаяСтрока(Пояснение); + + Если ПустаяСтрока(КодАлгоритма) Тогда + КодАлгоритма = "// Доступные переменные: + |// Объект - обрабатываемый объект" + Символы.ПС; + КонецЕсли; + КонецПроцедуры &НаСервере @@ -2692,6 +2819,44 @@ Элементы.Заглушка.Видимость = ИсторияОперацийСписок.Количество() = 0; + Если Не КонтекстныйВызов Тогда + ЗаполнитьПодменюСоСпискомАлгоритмов(); + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура ЗаполнитьПодменюСоСпискомАлгоритмов() + МестоРазмещенияКоманд = Элементы.Алгоритмы; + + УдаляемыеЭлементы = Новый Массив; + Для Каждого Настройка Из МестоРазмещенияКоманд.ПодчиненныеЭлементы Цикл + Если Настройка.Имя = "ЗаглушкаАлгоритмы" Тогда + Продолжить; + КонецЕсли; + УдаляемыеЭлементы.Добавить(Настройка); + КонецЦикла; + + Для Каждого Настройка Из УдаляемыеЭлементы Цикл + Команды.Удалить(Команды[Настройка.Имя]); + Элементы.Удалить(Настройка); + КонецЦикла; + + Для Каждого Настройка Из ИсторияАлгоритмовСписок Цикл + НомерКоманды = ИсторияАлгоритмовСписок.Индекс(Настройка); + ИмяКоманды = МестоРазмещенияКоманд.Имя + "НастройкаИзменений" + НомерКоманды; + + КомандаФормы = Команды.Добавить(ИмяКоманды); + КомандаФормы.Действие = "Подключаемый_УстановитьНастройку"; + КомандаФормы.Заголовок = Настройка.Представление; + КомандаФормы.ИзменяетСохраняемыеДанные = Ложь; + + НовыйЭлемент = Элементы.Добавить(ИмяКоманды, Тип("КнопкаФормы"), МестоРазмещенияКоманд); + НовыйЭлемент.Вид = ВидКнопкиФормы.КнопкаКоманднойПанели; + НовыйЭлемент.ИмяКоманды = ИмяКоманды; + КонецЦикла; + + Элементы.ЗаглушкаАлгоритмы.Видимость = ИсторияАлгоритмовСписок.Количество() = 0; КонецПроцедуры &НаКлиенте @@ -2747,7 +2912,6 @@ ОбновитьСчетчикиИзменяемыхРеквизитов(); КонецПроцедуры - &НаСервере Функция ПараметрыВыбораСтрокой(ПараметрыВыбора) Результат = ""; @@ -2799,6 +2963,48 @@ Возврат Результат; КонецФункции +&НаСервере +Функция ПредставлениеСвязейПараметровВыбора(СвязиПараметровВыбора, ОбъектМетаданных) + Результат = ""; + + СвязанныеРеквизиты = Новый Массив; + Для Каждого ОписаниеСвязиПараметровВыбора Из СвязиПараметровВыбора Цикл + ИмяРеквизита = ОписаниеСвязиПараметровВыбора.ПутьКДанным; + ПредставлениеТабличнойЧасти = ""; + ВладелецРеквизитов = ОбъектМетаданных; + ЧастиИмени = СтрРазделить(ИмяРеквизита, ".", Истина); + Если ЧастиИмени.Количество() = 2 Тогда + ИмяРеквизита = ЧастиИмени[1]; + ИмяТабличнойЧасти = ЧастиИмени[0]; + ВладелецРеквизитов = ОбъектМетаданных.ТабличныеЧасти.Найти(ИмяТабличнойЧасти); + Если ВладелецРеквизитов <> Неопределено Тогда + ПредставлениеТабличнойЧасти = ВладелецРеквизитов.Представление(); + КонецЕсли; + КонецЕсли; + Если ВладелецРеквизитов <> Неопределено Тогда + Реквизит = ВладелецРеквизитов.Реквизиты.Найти(ИмяРеквизита); + Если Реквизит <> Неопределено Тогда + ПредставлениеРеквизита = Реквизит.Представление(); + Если Не ПустаяСтрока(ПредставлениеТабличнойЧасти) Тогда + ПредставлениеРеквизита = ПредставлениеРеквизита + " (" + НСтр("ru = 'таблица'") + " " + + ПредставлениеТабличнойЧасти + ")"; + КонецЕсли; + СвязанныеРеквизиты.Добавить(ПредставлениеРеквизита); + КонецЕсли; + КонецЕсли; + КонецЦикла; + + Если СвязанныеРеквизиты.Количество() > 0 Тогда + ШаблонПредставленияСвязей = НСтр("ru = 'Зависит от реквизитов: %1.'"); + Если СвязанныеРеквизиты.Количество() = 1 Тогда + ШаблонПредставленияСвязей = НСтр("ru = 'Зависит от реквизита %1.'"); + КонецЕсли; + Результат = ПодставитьПараметрыВСтроку(ШаблонПредставленияСвязей, СтрСоединить(СвязанныеРеквизиты, ", ")); + КонецЕсли; + + Возврат Результат; +КонецФункции + &НаСервере Процедура ЗаполнитьСписокТиповОбъектов() ОбработкаОбъект = РеквизитФормыВЗначение("Объект"); @@ -2865,6 +3071,23 @@ КонецФункции +&НаСервере +Процедура НайтиФормуРазблокированияРеквизитов() + ЕстьФормаРазблокированияРеквизитов = Ложь; + ПолноеИмяФормыРаботыСБлокируемымиРеквизитами = ""; + СписокВидовИзменяемыхОбъектов = СтрРазделить(ВидыИзменяемыхОбъектов, ",", Ложь); + Если СписокВидовИзменяемыхОбъектов.Количество() = 1 Тогда + МетаданныеОбъекта = Метаданные.НайтиПоПолномуИмени(СписокВидовИзменяемыхОбъектов[0]); + Если ЗапретРедактированияВстроен И РеквизитыОбъекта.НайтиСтроки(Новый Структура("ЗаблокированныйРеквизит", Истина)).Количество() > 0 Тогда + ОбъектМетаданныхФорма = МетаданныеОбъекта.Формы.Найти("РазблокированиеРеквизитов"); + Если ОбъектМетаданныхФорма <> Неопределено Тогда + ЕстьФормаРазблокированияРеквизитов = Истина; + ПолноеИмяФормыРаботыСБлокируемымиРеквизитами = ОбъектМетаданныхФорма.ПолноеИмя(); + КонецЕсли; + КонецЕсли; + КонецЕсли; +КонецПроцедуры + &НаКлиенте Процедура ПриРазблокированииРеквизитов(РазблокированныеРеквизиты, ДополнительныеПараметры) Экспорт Если РазблокированныеРеквизиты = Неопределено Тогда @@ -2881,6 +3104,18 @@ КонецЕсли; КонецПроцедуры +&НаКлиенте +Процедура СохранитьНастройки() + СохранитьНастройкиОбработки( + "", + Объект.ИзменятьВТранзакции, + Объект.ПрерыватьПриОшибке, + ТОНастройкаПорции, + ТОПроцентОбъектовВПорции, + ТОЧислоОбъектовВПорции, + ОбрабатыватьРекурсивно); +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Процедуры и функции из базовой функциональности для обеспечения автономности. @@ -3819,6 +4054,10 @@ Результат = ?(Представление = "", Представление, Представление + "." + ИмяОбъекта); + ИначеЕсли Тип = Тип("Неопределено") Тогда + + Результат = "Неопределено"; + Иначе Результат = Строка(Тип); @@ -4077,6 +4316,51 @@ КонецФункции +// Возвращает признак, является ли конфигурация базовой. +// +// Возвращаемое значение: +// Булево - Истина, если конфигурация - базовая. +// +Функция ЭтоБазоваяВерсияКонфигурации() + + Возврат СтрНайти(ВРег(Метаданные.Имя), "БАЗОВАЯ") > 0; + +КонецФункции + +// Возвращает признак включения условного разделения. +// В случае вызова в неразделенной конфигурации возвращает Ложь. +// +Функция РазделениеВключено() + + ДоступнаРаботаВМоделиСервиса = Метаданные.ФункциональныеОпции.Найти("РаботаВМоделиСервиса"); + Если ДоступнаРаботаВМоделиСервиса <> Неопределено Тогда + ИмяОпции = "РаботаВМоделиСервиса"; + Возврат ЭтоРазделеннаяКонфигурация() И ПолучитьФункциональнуюОпцию(ИмяОпции); + КонецЕсли; + + Возврат Ложь; + +КонецФункции + +// Возвращает признак наличия в конфигурации общих реквизитов-разделителей. +// +// Возвращаемое значение: +// Булево. +// +Функция ЭтоРазделеннаяКонфигурация() + + ЕстьРазделители = Ложь; + Для каждого ОбщийРеквизит Из Метаданные.ОбщиеРеквизиты Цикл + Если ОбщийРеквизит.РазделениеДанных = Метаданные.СвойстваОбъектов.РазделениеДанныхОбщегоРеквизита.Разделять Тогда + ЕстьРазделители = Истина; + Прервать; + КонецЕсли; + КонецЦикла; + + Возврат ЕстьРазделители; + +КонецФункции + &НаСервере Функция ВерсияБСПСоответствуетТребованиям() ОбработкаОбъект = РеквизитФормыВЗначение("Объект"); @@ -4111,4 +4395,10 @@ КонецЕсли; КонецФункции +&НаКлиенте +Процедура РеквизитыОбъекта1НачалоПеретаскивания(Элемент, ПараметрыПеретаскивания, Выполнение) + ПараметрыПеретаскивания.Значение = "Объект." + Элемент.ТекущиеДанные.Имя; + // Вставить содержимое обработчика. +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Help/ru.html b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Help/ru.html index 6a10e20df..5434ea891 100644 --- a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Help/ru.html +++ b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/Help/ru.html @@ -40,8 +40,36 @@
    • После добавления условия отбора ссылка показывает, сколько элементов с помощью отборов выбрано для изменения.
    • -
      После выбора справочника или вида документа  в таблице Изменяемые реквизиты можно просмотреть доступные для изменения реквизиты, в том числе и служебные. Для того чтобы показывать служебные реквизиты, нажмите кнопку Дополнительные параметры и включите соответствующий флажок.
      +
      После выбора справочника или вида документа  в таблице Изменяемые реквизиты можно просмотреть доступные для изменения реквизиты, в том числе и служебные. Для того чтобы показывать служебные реквизиты, нажмите кнопку Дополнительные параметры и включите соответствующий флажок.
    • Ввести новые значения

      +
      • +
        После выбора нужных реквизитов с помощью кнопки выберите Ввести новые значения, воспользуйтесь стандартными командами для их изменения.

      Выполнить произвольный алгоритм

      +
      • +
        Для исправления записей можно использовать произвольный алгоритм. Это может быть необходимо в следующих случаях:
        +
        • +
          Исправление части некорректных данных объекта по гибкому условию;
        • -
          После выбора нужных реквизитов воспользуйтесь стандартными командами для их изменения.

        См. также

        +
        Недостаточность стандартных возможностей для массового преобразования данных;
        +
      • +
        Изменение или удаление других объектов с учетом данных текущего объекта.
    • +
      После выбора нужных реквизитов с помощью кнопки выберите Выполнить произвольный алгоритм.
      +
    • +
      В поле Алгоритм введите наименование алгоритма. Алгоритм будет сохранен.
      +
    • +
      В левой части окна вводится код алгоритма, в правой части выводятся реквизиты изменяемого объекта.
      +
    • +
      Для ускорения ввода кода алгоритма реквизиты объекта можно просто перетаскивать из списка реквизитов в поле алгоритма.
      +
    • +
      С помощью кнопки Алгоритмы можно просмотреть список ранее использованных для этого объекта алгоритмов и использовать их. Программа запоминает 20 последних выполненных алгоритмов для объекта.
      +
    • +
      С помощью переключателя Объект записывается можно определить способ записи объекта:
      +
      • +
        Автоматически;
        +
      • +
        В коде алгоритма - в  этом случае необходимо в алгоритм включить строку, которая отвечает за запись объекта.
    • +
      С помощью переключателя Режим выполнения выберите Безопасный или Небезопасный режим выполнения. Небезопасный режим выполнения не доступен в приложении в Интернете и базовой версии.
      +
    • +
      Для запуска алгоритма нажмите кнопку Выполнить.
      +
    • +
      Если в алгоритме допущена ошибка, то информация о ней видна в отчете выполнения.
    • См. также

      \ No newline at end of file diff --git a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/ObjectModule.bsl b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/ObjectModule.bsl index 7d94f6896..d96dbbe1e 100644 --- a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/ObjectModule.bsl +++ b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/ObjectModule.bsl @@ -190,27 +190,15 @@ КонецФункции // Для внутреннего использования. -Процедура ВыполнитьИзменениеОбъектов(Параметры, АдресРезультата) Экспорт +Процедура ИзменитьОбъекты(Параметры, АдресРезультата) Экспорт ОбрабатываемыеОбъекты = Параметры.ОбрабатываемыеОбъекты.Получить().Строки; - ОстанавливатьИзменениеПриОшибке = Параметры.ОстанавливатьИзменениеПриОшибке; - - ИзменятьВТранзакции = Параметры.ИзменятьВТранзакции; - ПрерыватьПриОшибке = Параметры.ПрерыватьПриОшибке; - ИспользуютсяДопРеквизиты = Параметры.ИспользуютсяДопРеквизиты; - ИспользуютсяДопСведения = Параметры.ИспользуютсяДопСведения; - РежимРазработчика = Параметры.РежимРазработчика; - ОбъектыДляИзменения = Параметры.ОбъектыДляИзменения.Получить().Строки; РезультатИзменения = Новый Структура("ЕстьОшибки, СостояниеОбработки"); РезультатИзменения.ЕстьОшибки = Ложь; РезультатИзменения.СостояниеОбработки = Новый Соответствие; - Если ОстанавливатьИзменениеПриОшибке = Неопределено Тогда - ОстанавливатьИзменениеПриОшибке = ПрерыватьПриОшибке; - КонецЕсли; - Если ОбрабатываемыеОбъекты = Неопределено Тогда ОбрабатываемыеОбъекты = Новый Массив; Для Каждого ИзменяемыйОбъект Из ОбъектыДляИзменения Цикл @@ -223,302 +211,230 @@ Возврат; КонецЕсли; + ОстанавливатьИзменениеПриОшибке = Параметры.ОстанавливатьИзменениеПриОшибке; + Если ОстанавливатьИзменениеПриОшибке = Неопределено Тогда + ОстанавливатьИзменениеПриОшибке = Параметры.ПрерыватьПриОшибке; + КонецЕсли; ПроверятьНаГруппу = ПроверятьНаГруппу(ОбрабатываемыеОбъекты[0].Ссылка); + ЗаписатьОшибку = Истина; + Ссылка = Неопределено; + ВыполнятьКодАлгоритмаВБезопасномРежиме = (Параметры.РежимВыполнения <> 1); - Если ИзменятьВТранзакции Тогда + Если Параметры.ИзменятьВТранзакции Тогда НачатьТранзакцию(РежимУправленияБлокировкойДанных.Управляемый); КонецЕсли; - ИзменяемыеРеквизиты = Параметры.ИзменяемыеРеквизиты; - ДоступныеРеквизиты = Параметры.ДоступныеРеквизиты; - - Для Каждого ДанныеОбъекта Из ОбрабатываемыеОбъекты Цикл + Попытка + Если Параметры.ИзменятьВТранзакции Тогда + Для Каждого ДанныеОбъекта Из ОбрабатываемыеОбъекты Цикл + ЗаблокироватьСсылку(ДанныеОбъекта.Ссылка); + КонецЦикла; + КонецЕсли; - Ссылка = ДанныеОбъекта.Ссылка; - ИзменяемыйОбъект = Ссылка.ПолучитьОбъект(); - - Попытка - ЗаблокироватьДанныеДляРедактирования(ИзменяемыйОбъект.Ссылка); - Исключение - Инфо = ИнформацияОбОшибке(); - КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки(Инфо); - ЗаполнитьРезультатИзменения(РезультатИзменения, Ссылка, "Ошибка_БлокировкиОбъекта", КраткоеПредставлениеОшибки); - Если ИзменятьВТранзакции Тогда - ОтменитьТранзакцию(); - ПоместитьВоВременноеХранилище(РезультатИзменения, АдресРезультата); - Возврат; - КонецЕсли; - Если ОстанавливатьИзменениеПриОшибке Тогда - ПоместитьВоВременноеХранилище(РезультатИзменения, АдресРезультата); - Возврат; - КонецЕсли; - Продолжить; - КонецПопытки; - - ИзменяемыеРеквизитыОбъекта = Новый Массив; - ИзменяемыеДопРеквизитыОбъекта = Новый Соответствие; - ИзменяемыеДопСведенияОбъекта = Новый Соответствие; - - МассивЗаписейДопСведений = Новый Массив; - - /////////////////////////////////////////////////////////////////////////////////////// - // Отбор операций изменения по каждому объекту. - // - - Отказ = Ложь; - Для Каждого Операция Из ИзменяемыеРеквизиты Цикл + Для Каждого ДанныеОбъекта Из ОбрабатываемыеОбъекты Цикл + + ЗаписатьОшибку = Истина; + НачатьТранзакцию(РежимУправленияБлокировкойДанных.Управляемый); Попытка - Значение = ВычислитьВыражение(Операция.Значение, ИзменяемыйОбъект, ДоступныеРеквизиты); + + Ссылка = ДанныеОбъекта.Ссылка; + Если Не Параметры.ИзменятьВТранзакции Тогда + ЗаблокироватьСсылку(Ссылка); + КонецЕсли; + + ИзменяемыйОбъект = Ссылка.ПолучитьОбъект(); + + Изменения = Неопределено; + Если Параметры.ТипОперации = "ВыполнитьАлгоритм" Тогда + ВыполнитьКодАлгоритма(ИзменяемыйОбъект, Параметры.КодАлгоритма, ВыполнятьКодАлгоритмаВБезопасномРежиме); + Иначе + Изменения = ВнестиИзменения(ДанныеОбъекта, ИзменяемыйОбъект, Параметры, ПроверятьНаГруппу); + КонецЕсли; + + // Режим записи. + ЭтоДокумент = Метаданные.Документы.Содержит(ИзменяемыйОбъект.Метаданные()); + РежимЗаписи = ОпределитьРежимЗаписи(ИзменяемыйОбъект, ЭтоДокумент, Параметры.РежимРазработчика); + + // Проверка заполнения. + Если Не Параметры.РежимРазработчика Тогда + Если Не ЭтоДокумент Или РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда + Если Не ИзменяемыйОбъект.ПроверитьЗаполнение() Тогда + ВызватьИсключение ТекстОшибокПроверкиЗаполнения(); + КонецЕсли; + КонецЕсли; + КонецЕсли; + + // Запись дополнительных сведений. + Если Изменения <> Неопределено И Изменения.МассивЗаписейДопСведений.Количество() > 0 Тогда + Для Каждого МенеджерЗаписи Из Изменения.МассивЗаписейДопСведений Цикл + МенеджерЗаписи.Записать(Истина); + КонецЦикла; + КонецЕсли; + + // Запись объекта. + Если РежимЗаписи <> Неопределено Тогда + ИзменяемыйОбъект.Записать(РежимЗаписи); + Иначе + ИзменяемыйОбъект.Записать(); + КонецЕсли; + + ЗаполнитьРезультатИзмененияДополнительныхСвойств(РезультатИзменения, Ссылка, ИзменяемыйОбъект, Изменения); + + РазблокироватьДанныеДляРедактирования(ИзменяемыйОбъект.Ссылка); + ЗафиксироватьТранзакцию(); + Исключение - Отказ = Истина; + + РазблокироватьДанныеДляРедактирования(ИзменяемыйОбъект.Ссылка); + ОтменитьТранзакцию(); КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); - ЗаполнитьРезультатИзменения(РезультатИзменения, Ссылка, "Ошибка_НеКлассифицированная", КраткоеПредставлениеОшибки); - Если ОстанавливатьИзменениеПриОшибке Или ИзменятьВТранзакции Тогда - Если ИзменятьВТранзакции Тогда - ОтменитьТранзакцию(); - КонецЕсли; - ПоместитьВоВременноеХранилище(РезультатИзменения, АдресРезультата); - Возврат; + ЗаполнитьРезультатИзменения(РезультатИзменения, Ссылка, КраткоеПредставлениеОшибки); + Если ОстанавливатьИзменениеПриОшибке Или Параметры.ИзменятьВТранзакции Тогда + ЗаписатьОшибку = Ложь; + ВызватьИсключение; КонецЕсли; - Прервать; + + Продолжить; КонецПопытки; - Если Операция.ВидОперации = 1 Тогда // изменение реквизита - // Для групп не устанавливаем реквизиты, которых у них нет. - Если ПроверятьНаГруппу И ИзменяемыйОбъект.ЭтоГруппа Тогда - Если НЕ ЭтоСтандартныйРеквизит(ИзменяемыйОбъект.Метаданные().СтандартныеРеквизиты, Операция.Имя) Тогда - Продолжить; - КонецЕсли; - КонецЕсли; - - Попытка - ИзменяемыйОбъект[Операция.Имя] = Значение; - Исключение - Отказ = Истина; - КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); - ЗаполнитьРезультатИзменения(РезультатИзменения, Ссылка, "Ошибка_НеКлассифицированная", КраткоеПредставлениеОшибки); - Если ОстанавливатьИзменениеПриОшибке Или ИзменятьВТранзакции Тогда - Если ИзменятьВТранзакции Тогда - ОтменитьТранзакцию(); - КонецЕсли; - ПоместитьВоВременноеХранилище(РезультатИзменения, АдресРезультата); - Возврат; - КонецЕсли; - Прервать; - КонецПопытки; - - ИзменяемыеРеквизитыОбъекта.Добавить(Операция.Имя); - - ИначеЕсли Операция.ВидОперации = 2 Тогда // изменение доп реквизита - - Если Не СвойствоНужноИзменять(ИзменяемыйОбъект.Ссылка, Операция.Свойство, Параметры) Тогда - Продолжить; - КонецЕсли; - - НайденнаяСтрока = ИзменяемыйОбъект.ДополнительныеРеквизиты.Найти(Операция.Свойство, "Свойство"); - - Если НайденнаяСтрока = Неопределено Тогда - НайденнаяСтрока = ИзменяемыйОбъект.ДополнительныеРеквизиты.Добавить(); - НайденнаяСтрока.Свойство = Операция.Свойство; - КонецЕсли; - - НайденнаяСтрока.Значение = Значение; - - ОписаниеСвойства = ЗначенияРеквизитовОбъекта(Операция.Свойство, "ТипЗначения, МногострочноеПолеВвода"); - МодульУправлениеСвойствами = ОбщийМодуль("УправлениеСвойствамиСлужебный"); - Если МодульУправлениеСвойствами.ИспользоватьНеограниченнуюСтроку(ОписаниеСвойства.ТипЗначения, ОписаниеСвойства.МногострочноеПолеВвода) Тогда - НайденнаяСтрока.ТекстоваяСтрока = Значение; - КонецЕсли; - - ИмяРеквизитаФормы = ПрефиксИмениДопРеквизита() + СтрЗаменить(Строка(Операция.Свойство.УникальныйИдентификатор()), "-", "_"); - ИзменяемыеДопРеквизитыОбъекта.Вставить(ИмяРеквизитаФормы, Значение); - - ИначеЕсли Операция.ВидОперации = 3 Тогда // изменение доп сведения - - Если Не СвойствоНужноИзменять(ИзменяемыйОбъект.Ссылка, Операция.Свойство, Параметры) Тогда - Продолжить; - КонецЕсли; - - МенеджерЗаписи = РегистрыСведений["ДополнительныеСведения"].СоздатьМенеджерЗаписи(); - - МенеджерЗаписи.Объект = ИзменяемыйОбъект.Ссылка; - МенеджерЗаписи.Свойство = Операция.Свойство; - МенеджерЗаписи.Значение = Значение; - - МассивЗаписейДопСведений.Добавить(МенеджерЗаписи); - - ИмяРеквизитаФормы = ПрефиксИмениДопСведения() + СтрЗаменить(Строка(Операция.Свойство.УникальныйИдентификатор()), "-", "_"); - ИзменяемыеДопСведенияОбъекта.Вставить(ИмяРеквизитаФормы, Значение); - - КонецЕсли; - - КонецЦикла; + КонецЦикла; - Если Отказ Тогда - Продолжить; - КонецЕсли; - - Если Параметры.ИзменяемыеТабличныеЧасти.Количество() > 0 Тогда - ВнестиИзмененияВТабличныеЧасти(ИзменяемыйОбъект, ДанныеОбъекта, Параметры.ИзменяемыеТабличныеЧасти); - КонецЕсли; - - // Отбор операций изменения по каждому объекту. - /////////////////////////////////////////////////////////////////////////////////////// - - РежимЗаписи = Неопределено; - ЭтоДокумент = Метаданные.Документы.Содержит(ИзменяемыйОбъект.Метаданные()); - Если ЭтоДокумент Тогда - РежимЗаписи = РежимЗаписиДокумента.Запись; - Если ИзменяемыйОбъект.Проведен Тогда - РежимЗаписи = РежимЗаписиДокумента.Проведение; - ИначеЕсли ИзменяемыйОбъект.Метаданные().Проведение = Метаданные.СвойстваОбъектов.Проведение.Разрешить Тогда - РежимЗаписи = РежимЗаписиДокумента.ОтменаПроведения; - КонецЕсли; - КонецЕсли; - - Если РежимРазработчика Тогда - РежимЗаписи = Неопределено; - ИзменяемыйОбъект.ОбменДанными.Загрузка = Истина; - КонецЕсли; - - /////////////////////////////////////////////////////////////////////////////////////// - // Блок обработки проверки заполнения. - // - - ПрерватьИзменение = Ложь; - ПроверкаЗаполненияУспешно = Истина; - - Если Не РежимРазработчика Тогда - Попытка - Если Не ЭтоДокумент Или РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда - Если Не ИзменяемыйОбъект.ПроверитьЗаполнение() Тогда - ЗаполнитьРезультатИзменения(РезультатИзменения, Ссылка, "Ошибка_ОбработкиПроверкиЗаполнения", - ПолучитьСтрокуСообщенийОбОшибках()); - Если ОстанавливатьИзменениеПриОшибке Или ИзменятьВТранзакции Тогда - ПрерватьИзменение = Истина; - КонецЕсли; - ПроверкаЗаполненияУспешно = Ложь; - КонецЕсли; - КонецЕсли; - Исключение - Инфо = ИнформацияОбОшибке(); - КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки(Инфо); - ЗаполнитьРезультатИзменения(РезультатИзменения, Ссылка, "Ошибка_НеКлассифицированная", КраткоеПредставлениеОшибки); - Если ОстанавливатьИзменениеПриОшибке Или ИзменятьВТранзакции Тогда - ПрерватьИзменение = Истина; - КонецЕсли; - ПроверкаЗаполненияУспешно = Ложь; - КонецПопытки; - КонецЕсли; - - Если ПрерватьИзменение Тогда - Если ИзменятьВТранзакции Тогда - ОтменитьТранзакцию(); - КонецЕсли; - ПоместитьВоВременноеХранилище(РезультатИзменения, АдресРезультата); - Возврат; - КонецЕсли; - - Если НЕ ПроверкаЗаполненияУспешно Тогда - Продолжить; - КонецЕсли; - - // - // Блок обработки проверки заполнения. - /////////////////////////////////////////////////////////////////////////////////////// - - /////////////////////////////////////////////////////////////////////////////////////// - // Блок записи дополнительных сведений. - // - - Если МассивЗаписейДопСведений.Количество() > 0 Тогда - - Если НЕ ИзменятьВТранзакции Тогда - // Если транзакция при изменении объектов не используется, включаем ее - // для изменения доп сведений в регистре. - НачатьТранзакцию(РежимУправленияБлокировкойДанных.Управляемый); - КонецЕсли; - - Попытка - Для Каждого МенеджерЗаписи Из МассивЗаписейДопСведений Цикл - МенеджерЗаписи.Записать(Истина); - КонецЦикла; - Исключение - Инфо = ИнформацияОбОшибке(); - - КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки(Инфо); - ЗаполнитьРезультатИзменения(РезультатИзменения, Ссылка, "Ошибка_ЗаписиДопСведений", КраткоеПредставлениеОшибки); - - ОтменитьТранзакцию(); - - Если ИзменятьВТранзакции ИЛИ ОстанавливатьИзменениеПриОшибке Тогда - ПоместитьВоВременноеХранилище(РезультатИзменения, АдресРезультата); - Возврат; - КонецЕсли; - КонецПопытки; - - КонецЕсли; - - // - // Блок записи дополнительных сведений. - /////////////////////////////////////////////////////////////////////////////////////// - - Отказ = Ложь; - - - Попытка - Если РежимЗаписи = Неопределено Тогда - ИзменяемыйОбъект.Записать(); - Иначе - ИзменяемыйОбъект.Записать(РежимЗаписи); - КонецЕсли; - Исключение - Инфо = ИнформацияОбОшибке(); - Отказ = Истина; - КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки(Инфо); - ЗаполнитьРезультатИзменения(РезультатИзменения, Ссылка, - "Ошибка_ЗаписиОбъекта", - КраткоеПредставлениеОшибки + Символы.ПС + ПолучитьСтрокуСообщенийОбОшибках()); - Если ИзменятьВТранзакции И ТранзакцияАктивна() Тогда // Отменяем транзакцию на любом уровне рекурсии. - ОтменитьТранзакцию(); - КонецЕсли; - Если ПрерыватьПриОшибке Тогда - ПоместитьВоВременноеХранилище(РезультатИзменения, АдресРезультата); - Возврат; - КонецЕсли; - КонецПопытки; - - // Фиксируем транзакцию записи доп. свойств, если запись объектов происходит - // не в транзакции. - Если НЕ ИзменятьВТранзакции И МассивЗаписейДопСведений.Количество() > 0 Тогда + Если Параметры.ИзменятьВТранзакции Тогда ЗафиксироватьТранзакцию(); КонецЕсли; - Если Не Отказ Тогда - ЗаполнитьРезультатИзмененияДополнительныхСвойств(РезультатИзменения, Ссылка, - ИзменяемыйОбъект, ИзменяемыеРеквизитыОбъекта, - ИзменяемыеДопРеквизитыОбъекта, ИзменяемыеДопСведенияОбъекта); + Исключение + + Если Параметры.ИзменятьВТранзакции Тогда + ОтменитьТранзакцию(); + Для Каждого ДанныеОбъекта Из ОбрабатываемыеОбъекты Цикл + РазблокироватьДанныеДляРедактирования(ДанныеОбъекта.Ссылка); + КонецЦикла; КонецЕсли; - РазблокироватьДанныеДляРедактирования(ИзменяемыйОбъект.Ссылка); + Если ЗаписатьОшибку Тогда + КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); + ЗаполнитьРезультатИзменения(РезультатИзменения, Ссылка, КраткоеПредставлениеОшибки); + КонецЕсли; + + КонецПопытки; + + ПоместитьВоВременноеХранилище(РезультатИзменения, АдресРезультата); + +КонецПроцедуры + +Процедура ЗаблокироватьСсылку(Знач Ссылка) + + ЗаблокироватьДанныеДляРедактирования(Ссылка); + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить(ВидОбъектаПоСсылке(Ссылка) + "." + Ссылка.Метаданные().Имя); + ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный; + ЭлементБлокировки.УстановитьЗначение("Ссылка", Ссылка); + Блокировка.Заблокировать(); + +КонецПроцедуры + +Функция ВнестиИзменения(Знач ДанныеОбъекта, Знач ИзменяемыйОбъект, Знач Параметры, Знач ПроверятьНаГруппу) + + Результат = Новый Структура; + Результат.Вставить("ИзменяемыеРеквизитыОбъекта", Новый Массив); + Результат.Вставить("ИзменяемыеДопРеквизитыОбъекта", Новый Соответствие); + Результат.Вставить("ИзменяемыеДопСведенияОбъекта", Новый Соответствие); + Результат.Вставить("МассивЗаписейДопСведений", Новый Массив); + + // Выполнение операций изменения. + Для Каждого Операция Из Параметры.ИзменяемыеРеквизиты Цикл + + Значение = ВычислитьВыражение(Операция.Значение, ИзменяемыйОбъект, Параметры.ДоступныеРеквизиты); + Если Операция.ВидОперации = 1 Тогда // изменение реквизита + // Для групп не устанавливаем реквизиты, которых у них нет. + Если ПроверятьНаГруппу И ИзменяемыйОбъект.ЭтоГруппа Тогда + Если НЕ ЭтоСтандартныйРеквизит(ИзменяемыйОбъект.Метаданные().СтандартныеРеквизиты, Операция.Имя) Тогда + Продолжить; + КонецЕсли; + КонецЕсли; + + ИзменяемыйОбъект[Операция.Имя] = Значение; + Результат.ИзменяемыеРеквизитыОбъекта.Добавить(Операция.Имя); + + ИначеЕсли Операция.ВидОперации = 2 Тогда // изменение дополнительного реквизита + + Если Не СвойствоНужноИзменять(ИзменяемыйОбъект.Ссылка, Операция.Свойство, Параметры) Тогда + Продолжить; + КонецЕсли; + + НайденнаяСтрока = ИзменяемыйОбъект.ДополнительныеРеквизиты.Найти(Операция.Свойство, "Свойство"); + Если НайденнаяСтрока = Неопределено Тогда + НайденнаяСтрока = ИзменяемыйОбъект.ДополнительныеРеквизиты.Добавить(); + НайденнаяСтрока.Свойство = Операция.Свойство; + КонецЕсли; + НайденнаяСтрока.Значение = Значение; + + ОписаниеСвойства = ЗначенияРеквизитовОбъекта(Операция.Свойство, "ТипЗначения, МногострочноеПолеВвода"); + МодульУправлениеСвойствами = ОбщийМодуль("УправлениеСвойствамиСлужебный"); + Если МодульУправлениеСвойствами.ИспользоватьНеограниченнуюСтроку(ОписаниеСвойства.ТипЗначения, ОписаниеСвойства.МногострочноеПолеВвода) Тогда + НайденнаяСтрока.ТекстоваяСтрока = Значение; + КонецЕсли; + + ИмяРеквизитаФормы = ПрефиксИмениДопРеквизита() + СтрЗаменить(Строка(Операция.Свойство.УникальныйИдентификатор()), "-", "_"); + Результат.ИзменяемыеДопРеквизитыОбъекта.Вставить(ИмяРеквизитаФормы, Значение); + + ИначеЕсли Операция.ВидОперации = 3 Тогда // изменение дополнительного сведения + + Если Не СвойствоНужноИзменять(ИзменяемыйОбъект.Ссылка, Операция.Свойство, Параметры) Тогда + Продолжить; + КонецЕсли; + + МенеджерЗаписи = РегистрыСведений["ДополнительныеСведения"].СоздатьМенеджерЗаписи(); + МенеджерЗаписи.Объект = ИзменяемыйОбъект.Ссылка; + МенеджерЗаписи.Свойство = Операция.Свойство; + МенеджерЗаписи.Значение = Значение; + Результат.МассивЗаписейДопСведений.Добавить(МенеджерЗаписи); + + ИмяРеквизитаФормы = ПрефиксИмениДопСведения() + СтрЗаменить(Строка(Операция.Свойство.УникальныйИдентификатор()), "-", "_"); + Результат.ИзменяемыеДопСведенияОбъекта.Вставить(ИмяРеквизитаФормы, Значение); + + КонецЕсли; КонецЦикла; - Если ИзменятьВТранзакции И ТранзакцияАктивна() Тогда - Попытка - ЗафиксироватьТранзакцию(); - Исключение - КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); - ЗаполнитьРезультатИзменения(РезультатИзменения, Ссылка, "Ошибка_НеКлассифицированная", КраткоеПредставлениеОшибки); - ОтменитьТранзакцию(); - КонецПопытки; + Если Параметры.ИзменяемыеТабличныеЧасти.Количество() > 0 Тогда + ВнестиИзмененияВТабличныеЧасти(ИзменяемыйОбъект, ДанныеОбъекта, Параметры.ИзменяемыеТабличныеЧасти); + КонецЕсли; + + Возврат Результат; + +КонецФункции + +Процедура ВыполнитьКодАлгоритма(Знач Объект, Знач КодАлгоритма, Знач ВыполнитьВБезопасномРежиме) + + Если ВыполнитьВБезопасномРежиме Или НЕ ПравоДоступа("Администрирование", Метаданные) Тогда + КодАлгоритма = СтрЗаменить(КодАлгоритма, "Объект.", "Параметры."); + ВыполнитьВБезопасномРежиме(КодАлгоритма, Объект); + Иначе + Выполнить КодАлгоритма; КонецЕсли; - ПоместитьВоВременноеХранилище(РезультатИзменения, АдресРезультата); - Возврат; - КонецПроцедуры +Функция ОпределитьРежимЗаписи(Знач ИзменяемыйОбъект, Знач ЭтоДокумент, Знач РежимРазработчика) + + РежимЗаписи = Неопределено; + Если РежимРазработчика Тогда + РежимЗаписи = Неопределено; + ИзменяемыйОбъект.ОбменДанными.Загрузка = Истина; + ИначеЕсли ЭтоДокумент Тогда + РежимЗаписи = РежимЗаписиДокумента.Запись; + Если ИзменяемыйОбъект.Проведен Тогда + РежимЗаписи = РежимЗаписиДокумента.Проведение; + ИначеЕсли ИзменяемыйОбъект.Метаданные().Проведение = Метаданные.СвойстваОбъектов.Проведение.Разрешить Тогда + РежимЗаписи = РежимЗаписиДокумента.ОтменаПроведения; + КонецЕсли; + КонецЕсли; + Возврат РежимЗаписи; + +КонецФункции + Функция СвойствоНужноИзменять(Ссылка, Свойство, Параметры) Если ПодсистемаСуществует("СтандартныеПодсистемы.Свойства") Тогда @@ -542,23 +458,23 @@ КонецФункции -Функция ПолучитьСтрокуСообщенийОбОшибках() +Функция ТекстОшибокПроверкиЗаполнения() - ПредставлениеОшибки = ""; + Результат = ""; МассивСообщений = ПолучитьСообщенияПользователю(Истина); Для Каждого СообщениеПользователю Из МассивСообщений Цикл - ПредставлениеОшибки = ПредставлениеОшибки + СообщениеПользователю.Текст + Символы.ПС; + Результат = Результат + СообщениеПользователю.Текст + Символы.ПС; КонецЦикла; - Возврат ПредставлениеОшибки; + Возврат Результат; КонецФункции -Процедура ЗаполнитьРезультатИзменения(Результат, Ссылка, КодОшибки, СообщениеОбОшибке) +Процедура ЗаполнитьРезультатИзменения(Результат, Ссылка, СообщениеОбОшибке) СостояниеИзменения = Новый Структура; - СостояниеИзменения.Вставить("КодОшибки", КодОшибки); + СостояниеИзменения.Вставить("КодОшибки", "Ошибка"); СостояниеИзменения.Вставить("СообщениеОбОшибке", СообщениеОбОшибке); Результат.СостояниеОбработки.Вставить(Ссылка, СостояниеИзменения); @@ -566,21 +482,21 @@ КонецПроцедуры -Процедура ЗаполнитьРезультатИзмененияДополнительныхСвойств(Результат, Ссылка, - ИзменяемыйОбъект, ИзменяемыеРеквизитыОбъекта = Неопределено, - ИзменяемыеДопРеквизитыОбъекта = Неопределено, ИзменяемыеДопСведенияОбъекта = Неопределено) +Процедура ЗаполнитьРезультатИзмененияДополнительныхСвойств(Результат, Ссылка, ИзменяемыйОбъект, Изменения = Неопределено) СостояниеИзменения = Новый Структура; СостояниеИзменения.Вставить("КодОшибки", ""); СостояниеИзменения.Вставить("СообщениеОбОшибке", ""); СостояниеИзменения.Вставить("ЗначенияИзмененныхРеквизитов", Новый Соответствие); - Если ИзменяемыеРеквизитыОбъекта <> Неопределено Тогда - Для Каждого ИмяРеквизита Из ИзменяемыеРеквизитыОбъекта Цикл + Если Изменения <> Неопределено Тогда + Для Каждого ИмяРеквизита Из Изменения.ИзменяемыеРеквизитыОбъекта Цикл СостояниеИзменения.ЗначенияИзмененныхРеквизитов.Вставить(ИмяРеквизита, ИзменяемыйОбъект[ИмяРеквизита]); КонецЦикла; КонецЕсли; - СостояниеИзменения.Вставить("ЗначенияИзмененныхДопРеквизитов", ИзменяемыеДопРеквизитыОбъекта); - СостояниеИзменения.Вставить("ЗначенияИзмененныхДопСведений", ИзменяемыеДопСведенияОбъекта); + СостояниеИзменения.Вставить("ЗначенияИзмененныхДопРеквизитов", + ?(Изменения <> Неопределено, Изменения.ИзменяемыеДопРеквизитыОбъекта, Изменения)); + СостояниеИзменения.Вставить("ЗначенияИзмененныхДопСведений", + ?(Изменения <> Неопределено, Изменения.ИзменяемыеДопСведенияОбъекта, Изменения)); Результат.СостояниеОбработки.Вставить(Ссылка, СостояниеИзменения); @@ -612,6 +528,7 @@ КонецФункции Процедура ВнестиИзмененияВТабличныеЧасти(ИзменяемыйОбъект, ДанныеОбъекта, ИзмененияВТабличныхЧастях) + Для Каждого ИзмененияТабличнойЧасти Из ИзмененияВТабличныхЧастях Цикл ИмяТаблицы = ИзмененияТабличнойЧасти.Ключ; ИзменяемыеРеквизиты = ИзмененияТабличнойЧасти.Значение; @@ -623,6 +540,7 @@ КонецЕсли; КонецЦикла; КонецЦикла; + КонецПроцедуры Функция СтрокаСоответствуетОтбору(СтрокаТаблицы, ДанныеОбъекта, ИмяТаблицы) @@ -774,7 +692,7 @@ КонецЕсли; ВерсияБСП = МодульСтандартныеПодсистемыСервер.ВерсияБиблиотеки(); - Возврат НомерВерсииВЧисло(ВерсияБСП) >= НомерВерсииВЧисло("2.3.1.57"); + Возврат НомерВерсииВЧисло(ВерсияБСП) >= НомерВерсииВЧисло("2.3.3.9"); КонецФункции @@ -1287,6 +1205,60 @@ Возврат СтрокаПодстановки; КонецФункции +// Выполняет произвольный алгоритм на встроенном языке 1С:Предприятия, предварительно устанавливая +// безопасный режим выполнения кода и безопасный режим разделения данных для всех разделителей, +// присутствующих в составе конфигурации. В результате при выполнении алгоритма: +// - игнорируются попытки установки привилегированного режима, +// - запрещаются все внешние (по отношению к платформе 1С:Предприятие) действия (COM, +// загрузка внешних компонент, запуск внешних приложений и команд операционной системы, +// доступ к файловой системе и Интернет-ресурсам), +// - запрещается отключение использования разделителей сеанса, +// - запрещается изменение значений разделителей сеанса (если разделение данным разделителем не +// является условно выключенным), +// - запрещается изменение объектов, которые управляют состоянием условного разделения. +// +// Параметры: +// Алгоритм - Строка - содержащая произвольный алгоритм на встроенном языке 1С:Предприятия. +// Параметры - Произвольный - в качестве значения данного параметра может быть передано значение, +// которое требуется для выполнения алгоритма (при этом в тексте алгоритма обращение к данному +// значению должно осуществляться как к имени переменной Параметры). +// +Процедура ВыполнитьВБезопасномРежиме(Знач Алгоритм, Знач Параметры = Неопределено) Экспорт + + УстановитьБезопасныйРежим(Истина); + + МассивРазделителей = РазделителиКонфигурации(); + + Для Каждого ИмяРазделителя Из МассивРазделителей Цикл + + УстановитьБезопасныйРежимРазделенияДанных(ИмяРазделителя, Истина); + + КонецЦикла; + + Выполнить Алгоритм; + +КонецПроцедуры + +// Возвращает массив существующих в конфигурации разделителей. +// +// Возвращаемое значение: ФиксированныйМассив(Строка) - массив имен общих реквизитов, которые +// являются разделителями. +// +Функция РазделителиКонфигурации() Экспорт + + МассивРазделителей = Новый Массив; + + Для Каждого ОбщийРеквизит Из Метаданные.ОбщиеРеквизиты Цикл + Если ОбщийРеквизит.РазделениеДанных = Метаданные.СвойстваОбъектов.РазделениеДанныхОбщегоРеквизита.Разделять Тогда + МассивРазделителей.Добавить(ОбщийРеквизит.Имя); + КонецЕсли; + КонецЦикла; + + Возврат Новый ФиксированныйМассив(МассивРазделителей); + +КонецФункции + + #КонецОбласти #КонецЕсли \ No newline at end of file diff --git a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/ГрупповоеИзменениеРеквизитов.mdo b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/ГрупповоеИзменениеРеквизитов.mdo index c5af1cf99..86d50a978 100644 --- a/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/ГрупповоеИзменениеРеквизитов.mdo +++ b/SSL/src/DataProcessors/ГрупповоеИзменениеРеквизитов/ГрупповоеИзменениеРеквизитов.mdo @@ -112,6 +112,63 @@ + + ТипОперации + + ru + Тип операции + + + String + + 50 + + + + ru + Определяет режим работы с через ввод новых + + + + + + РежимВыполнения + + ru + Режим выполнения + + + Number + + 10 + + + + ru + Определяет вариант изменения реквизитов замена значений или произвольным алгоритмом. + + + + + + ВариантЗаписиОбъекта + + ru + Вариант записи объекта + + + Number + + 10 + + + + ru + Объект может быть записан автоматически после выполнения алгоритма или необходимость записи определяется в коде. + + + + Форма diff --git a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ЖурналРегистрации/Form.form b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ЖурналРегистрации/Form.form index 352259c9b..bc1e35138 100644 --- a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ЖурналРегистрации/Form.form +++ b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ЖурналРегистрации/Form.form @@ -417,10 +417,10 @@ InputField Enter - true Left true + 15 true true true @@ -464,10 +464,10 @@ InputField Enter - true Left true + 15 true true true @@ -480,8 +480,8 @@
      - ГруппаПриложение - 58 + ГруппаПриложениеСеанс + 204 ПредставлениеПриложения 59 @@ -514,7 +514,6 @@ InputField Enter - true Left true @@ -556,8 +555,8 @@ true InputField + Left Enter - true Left true @@ -577,9 +576,10 @@ true + 15 - ГруппаПриложениеExtendedTooltip - 151 + ГруппаПриложениеСеансРасширеннаяПодсказка + 205 Label true true @@ -589,6 +589,7 @@ ColumnGroup + InCell auto true @@ -598,6 +599,11 @@ true + + <key>ru</key> + <value>Пользователь, компьютер, приложение, сеанс</value> + + 15 ГруппаПользовательКомпьютерПриложениеExtendedTooltip 148 @@ -612,174 +618,19 @@ Vertical auto + true true - ГруппаСервер - 84 + ГруппаСобытиеИДанные + 175 - РабочийСервер - 85 - true - true - - true - - - Журнал.РабочийСервер - - - РабочийСерверExtendedTooltip - 155 - Label - true - true - - Left - - - - РабочийСерверКонтекстноеМеню - 86 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - - Style.BorderColor - - Normal - - - - ОсновнойIPПорт - 89 - true - true - - true - - - Журнал.ОсновнойIPПорт - - - ОсновнойIPПортExtendedTooltip - 156 - Label - true - true - - Left - - - - ОсновнойIPПортКонтекстноеМеню - 90 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - - Style.BorderColor - - Normal - - - - ВспомогательныйIPПорт - 91 - true - true - - true - - - Журнал.ВспомогательныйIPПорт - - - ru - Вспомогательный IP порт - - - ВспомогательныйIPПортExtendedTooltip - 157 - Label - true - true - - Left - - - - ВспомогательныйIPПортКонтекстноеМеню - 92 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - - Style.BorderColor - - Normal - - - true - true - - - ГруппаСерверExtendedTooltip - 154 - Label - true - true - - Left - - - ColumnGroup - - Vertical - auto - true - - - - ГруппаТранзакция - 68 - - СтатусТранзакции - 69 + ПредставлениеСобытия + 64 <key>ru</key> - <value>Статус транзакции</value> + <value>Событие</value> true true @@ -787,11 +638,11 @@ true - Журнал.СтатусТранзакции + Журнал.ПредставлениеСобытия - СтатусТранзакцииExtendedTooltip - 162 + ПредставлениеСобытияExtendedTooltip + 159 Label true true @@ -800,13 +651,12 @@ - СтатусТранзакцииКонтекстноеМеню - 70 + ПредставлениеСобытияКонтекстноеМеню + 65 true InputField Enter - true Left true @@ -821,93 +671,23 @@ Normal - - Транзакция - 71 - true - true - - true - - - Журнал.Транзакция - - - ТранзакцияExtendedTooltip - 163 - Label - true - true - - Left - - - - ТранзакцияКонтекстноеМеню - 72 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - - Style.BorderColor - - Normal - - - true - true - - - ГруппаТранзакцияExtendedTooltip - 161 - Label - true - true - - Left - - - ColumnGroup - - Vertical - auto - true - - - - ГруппаСобытиеИДанные - 175 - СобытиеИМетаданные - 177 + ГруппаДанныеМетаданные + 202 - ПредставлениеСобытия - 64 - - <key>ru</key> - <value>Событие</value> - + Данные + 76 true true true - Журнал.ПредставлениеСобытия + Журнал.Данные - ПредставлениеСобытияExtendedTooltip - 159 + ДанныеExtendedTooltip + 166 Label true true @@ -916,13 +696,12 @@ - ПредставлениеСобытияКонтекстноеМеню - 65 + ДанныеКонтекстноеМеню + 77 true InputField Enter - true Left true @@ -969,7 +748,6 @@ InputField Enter - true Left true @@ -990,122 +768,8 @@ true - СобытиеИМетаданныеРасширеннаяПодсказка - 178 - Label - true - true - - Left - - - ColumnGroup - - auto - true - - - - КомментарийИДанные - 179 - - Данные - 76 - true - true - - true - - - Журнал.Данные - - - ДанныеExtendedTooltip - 166 - Label - true - true - - Left - - - - ДанныеКонтекстноеМеню - 77 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - - Style.BorderColor - - Normal - - - - Комментарий - 66 - - <key>ru</key> - <value>Комментарий</value> - - true - true - - true - - - Журнал.Комментарий - - - КомментарийExtendedTooltip - 160 - Label - true - true - - Left - - - - КомментарийКонтекстноеМеню - 67 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - - Style.BorderColor - - Normal - - - true - true - - true - - - КомментарийИДанныеРасширеннаяПодсказка - 180 + ГруппаДанныеМетаданныеРасширеннаяПодсказка + 203 Label true true @@ -1120,11 +784,62 @@ true + + Комментарий + 66 + + <key>ru</key> + <value>Комментарий</value> + + true + true + + true + + + Журнал.Комментарий + + + КомментарийExtendedTooltip + 160 + Label + true + true + + Left + + + + КомментарийКонтекстноеМеню + 67 + true + + InputField + Enter + Left + true + + true + true + true + true + true + true + + Style.BorderColor + + Normal + + true true true + + <key>ru</key> + <value>Событие, данные и метаданные, комментарий</value> + ГруппаСобытиеИДанныеРасширеннаяПодсказка 176 @@ -1139,51 +854,27 @@ Vertical auto + true true - ГруппаСобытие - 63 - true - true - - true - - - ГруппаСобытиеExtendedTooltip - 158 - Label - true - true - - Left - - - ColumnGroup - - Vertical - auto - true - - - - ГруппаДанные - 73 + ГруппаСервер + 84 - ПредставлениеДанных - 78 + РабочийСервер + 85 true true true - Журнал.ПредставлениеДанных + Журнал.РабочийСервер - ПредставлениеДанныхExtendedTooltip - 167 + РабочийСерверExtendedTooltip + 155 Label true true @@ -1192,27 +883,124 @@ - ПредставлениеДанныхКонтекстноеМеню - 79 + РабочийСерверКонтекстноеМеню + 86 true - LabelField + InputField Enter - true Left true - + true true + true + true + true + + Style.BorderColor + + Normal + + ОсновнойIPПорт + 89 + true + true + + true + + + Журнал.ОсновнойIPПорт + + + ОсновнойIPПортExtendedTooltip + 156 + Label + true + true + + Left + + + + ОсновнойIPПортКонтекстноеМеню + 90 + true + + InputField + Enter + Left + true + + true + true + true + true + true + + Style.BorderColor + + Normal + + + + ВспомогательныйIPПорт + 91 + true + true + + true + + + Журнал.ВспомогательныйIPПорт + + + ru + Вспомогательный IP порт + + + ВспомогательныйIPПортExtendedTooltip + 157 + Label + true + true + + Left + + + + ВспомогательныйIPПортКонтекстноеМеню + 92 + true + + InputField + Enter + Left + true + + true + true + true + true + true + + Style.BorderColor + + Normal + + + true true - - true - + + + <key>ru</key> + <value>Рабочий сервер, IP порты</value> + - ГруппаДанныеExtendedTooltip - 164 + ГруппаСерверExtendedTooltip + 154 Label true true @@ -1224,9 +1012,166 @@ Vertical auto + true true + + ГруппаТранзакция + 68 + + СтатусТранзакции + 69 + + <key>ru</key> + <value>Статус транзакции</value> + + true + true + + true + + + Журнал.СтатусТранзакции + + + СтатусТранзакцииExtendedTooltip + 162 + Label + true + true + + Left + + + + СтатусТранзакцииКонтекстноеМеню + 70 + true + + InputField + Enter + Left + true + + true + true + true + true + true + + Style.BorderColor + + Normal + + + + Транзакция + 71 + true + true + + true + + + Журнал.Транзакция + + + ТранзакцияExtendedTooltip + 163 + Label + true + true + + Left + + + + ТранзакцияКонтекстноеМеню + 72 + true + + InputField + Enter + Left + true + + true + true + true + true + true + + Style.BorderColor + + Normal + + + true + true + + + <key>ru</key> + <value>Транзакция</value> + + + ГруппаТранзакцияExtendedTooltip + 161 + Label + true + true + + Left + + + ColumnGroup + + Vertical + auto + true + true + + + + ДатаНаСервере + 206 + true + true + + + Журнал.ДатаНаСервере + + + ДатаНаСервереРасширеннаяПодсказка + 208 + Label + true + true + + Left + + + + ДатаНаСервереКонтекстноеМеню + 207 + true + + InputField + Auto + true + Left + true + + 5 + true + true + true + true + true + true + Normal + + ЖурналКоманднаяПанель 50 @@ -2143,10 +2088,6 @@ OnCreateAtServer ПриСозданииНаСервере - - OnClose - ПриЗакрытии - Abort Cancel Close @@ -2157,8 +2098,6 @@ Retry SaveValues Yes - 120 - 15 DontBlock true true @@ -2680,6 +2619,24 @@ true + + ДатаНаСервере + + <key>ru</key> + <value>Дата на сервере</value> + + 26 + + Date + + + + true + + + true + + ОтборЖурналаРегистрации @@ -2756,23 +2713,6 @@ - - ИдентификаторЗадания - - <key>ru</key> - <value>Идентификатор задания</value> - - 8 - - UUID - - - true - - - true - - АдресХранилища @@ -2791,21 +2731,6 @@ <common>true</common> </edit> </attributes> - <attributes> - <name>ПараметрыОбработчикаОжидания</name> - <title> - <key>ru</key> - <value>Параметры обработчика ожидания</value> - - 10 - - - true - - - true - - ОтборЖурналаРегистрацииПоУмолчанию @@ -2856,6 +2781,21 @@ <common>true</common> </edit> </attributes> + <attributes> + <name>РезультатВыполнения</name> + <title> + <key>ru</key> + <value>Результат выполнения</value> + + 15 + + + true + + + true + + ПросмотрТекущегоСобытияВОтдельномОкне diff --git a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ЖурналРегистрации/Module.bsl b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ЖурналРегистрации/Module.bsl index 52486564c..b674a70f8 100644 --- a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ЖурналРегистрации/Module.bsl +++ b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ЖурналРегистрации/Module.bsl @@ -8,6 +8,11 @@ Возврат; КонецЕсли; + УстановитьУсловноеОформление(); + + МодельСервиса = ОбщегоНазначенияПовтИсп.РазделениеВключено() + И ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных(); + ОтборЖурналаРегистрации = Новый Структура; ОтборЖурналаРегистрацииПоУмолчанию = Новый Структура; ЗначенияОтбора = ПолучитьЗначенияОтбораЖурналаРегистрации("Событие").Событие; @@ -36,12 +41,17 @@ ОтборЖурналаРегистрации.Вставить("Событие", ОтборПоСобытию); КонецЕсли; - Если ЗначениеЗаполнено(Параметры.ДатаНачала) Тогда - ОтборЖурналаРегистрации.Вставить("ДатаНачала", Параметры.ДатаНачала); - КонецЕсли; - - Если ЗначениеЗаполнено(Параметры.ДатаОкончания) Тогда - ОтборЖурналаРегистрации.Вставить("ДатаОкончания", Параметры.ДатаОкончания + 1); + Если МодельСервиса Тогда + ОтборЖурналаРегистрации.Вставить("ДатаНачала", НачалоДня(ТекущаяДатаСеанса())); + ОтборЖурналаРегистрации.Вставить("ДатаОкончания", КонецДня(ТекущаяДатаСеанса())); + Иначе + Если ЗначениеЗаполнено(Параметры.ДатаНачала) Тогда + ОтборЖурналаРегистрации.Вставить("ДатаНачала", Параметры.ДатаНачала); + КонецЕсли; + + Если ЗначениеЗаполнено(Параметры.ДатаОкончания) Тогда + ОтборЖурналаРегистрации.Вставить("ДатаОкончания", Параметры.ДатаОкончания + 1); + КонецЕсли; КонецЕсли; Если Параметры.Данные <> Неопределено Тогда @@ -82,19 +92,39 @@ КонецПроцедуры -&НаКлиенте -Процедура ПриОткрытии(Отказ) +&НаСервере +Процедура УстановитьУсловноеОформление() - ПодключитьОбработчикОжидания("ОбновитьТекущийСписок", 0.1, Истина); + УсловноеОформление.Элементы.Очистить(); + + // + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.Данные.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Журнал.Данные"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено; + Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь); + + // + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ПредставлениеМетаданных.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Журнал.ПредставлениеМетаданных"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено; + Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь); КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриОткрытии(Отказ) - Если ИдентификаторЗадания <> Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000") Тогда - ПриЗакрытииНаСервере(); - КонецЕсли; + ПодключитьОбработчикОжидания("ОбновитьТекущийСписок", 0.1, Истина); КонецПроцедуры @@ -183,18 +213,35 @@ Процедура ОбновитьТекущийСписок() Элементы.Страницы.ТекущаяСтраница = Элементы.ИндикаторДлительныхОпераций; + ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Элементы.ПолеИндикаторДлительныхОпераций, "ФормированиеОтчета"); РезультатВыполнения = ПрочитатьЖурнал(); - ПараметрыОбработчикаОжидания = Новый Структура; + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ОповещениеОЗавершении = Новый ОписаниеОповещения("ОбновитьТекущийСписокЗавершение", ЭтотОбъект); - Если Не РезультатВыполнения.ЗаданиеВыполнено Тогда - ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания); - ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеЗадания", 1, Истина); - ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Элементы.ПолеИндикаторДлительныхОпераций, "ФормированиеОтчета"); - Иначе + ДлительныеОперацииКлиент.ОжидатьЗавершение(РезультатВыполнения, ОповещениеОЗавершении, ПараметрыОжидания); + +КонецПроцедуры + +&НаКлиенте +Процедура ОбновитьТекущийСписокЗавершение(Результат, ДополнительныеПараметры) Экспорт + + Если Результат = Неопределено Тогда + Возврат; + КонецЕсли; + + Если Результат.Статус = "Выполнено" Тогда + ЗагрузитьПодготовленныеДанные(); + ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Элементы.ПолеИндикаторДлительныхОпераций, "НеИспользовать"); Элементы.Страницы.ТекущаяСтраница = Элементы.ЖурналРегистрации; ПозиционированиеВКонецСписка(); + ИначеЕсли Результат.Статус = "Ошибка" Тогда + ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Элементы.ПолеИндикаторДлительныхОпераций, "НеИспользовать"); + Элементы.Страницы.ТекущаяСтраница = Элементы.ЖурналРегистрации; + ПозиционированиеВКонецСписка(); + ВызватьИсключение Результат.КраткоеПредставлениеОшибки; КонецЕсли; КонецПроцедуры @@ -276,13 +323,6 @@ КонецПроцедуры -&НаСервере -Процедура ПриЗакрытииНаСервере() - - ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторЗадания); - -КонецПроцедуры - &НаСервере Функция ОтборПоУмолчанию(СписокСобытий) @@ -306,39 +346,24 @@ &НаСервере Функция ПрочитатьЖурнал() - ПараметрыОтчета = ПараметрыОтчета(); - - Если Не ПроверитьЗаполнение() Тогда - Возврат Новый Структура("ЗаданиеВыполнено", Истина); + Если РезультатВыполнения <> Неопределено + И РезультатВыполнения.ИдентификаторЗадания <> Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000") Тогда + ДлительныеОперации.ОтменитьВыполнениеЗадания(РезультатВыполнения.ИдентификаторЗадания); КонецЕсли; - ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторЗадания); + ПараметрыОтчета = ПараметрыОтчета(); - ИдентификаторЗадания = Неопределено; + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.ОжидатьЗавершение = 0; // запускать сразу + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Обновление журнала регистрации'"); + ПараметрыВыполнения.ЗапуститьНеВФоне = ЗапускатьНеВФоне; - ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Элементы.ПолеИндикаторДлительныхОпераций, "НеИспользовать"); + РезультатВыполнения = ДлительныеОперации.ВыполнитьВФоне("ЖурналРегистрации.ПрочитатьСобытияЖурналаРегистрации", + ПараметрыОтчета, ПараметрыВыполнения); - Попытка - Если ЗапускатьНеВФоне Тогда - АдресХранилища = ПоместитьВоВременноеХранилище(Неопределено, УникальныйИдентификатор); - ЖурналРегистрации.ПрочитатьСобытияЖурналаРегистрации(ПараметрыОтчета, АдресХранилища); - РезультатВыполнения = Новый Структура("ЗаданиеВыполнено", Истина); - Иначе - РезультатВыполнения = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "ЖурналРегистрации.ПрочитатьСобытияЖурналаРегистрации", - ПараметрыОтчета, - НСтр("ru = 'Обновление журнала регистрации'")); - - АдресХранилища = РезультатВыполнения.АдресХранилища; - ИдентификаторЗадания = РезультатВыполнения.ИдентификаторЗадания; - КонецЕсли; - Исключение + Если РезультатВыполнения.Статус = "Ошибка" Тогда Элементы.Страницы.ТекущаяСтраница = Элементы.ЖурналРегистрации; - ВызватьИсключение; - КонецПопытки; - Если РезультатВыполнения.ЗаданиеВыполнено Тогда - ЗагрузитьПодготовленныеДанные(); + ВызватьИсключение РезультатВыполнения.КраткоеПредставлениеОшибки; КонецЕсли; ЖурналРегистрации.СформироватьПредставлениеОтбора(ПредставлениеОтбора, ОтборЖурналаРегистрации, ОтборЖурналаРегистрацииПоУмолчанию); @@ -362,13 +387,12 @@ &НаСервере Процедура ЗагрузитьПодготовленныеДанные() - РезультатВыполнения = ПолучитьИзВременногоХранилища(АдресХранилища); - СобытияЖурнала = РезультатВыполнения.СобытияЖурнала; + Результат = ПолучитьИзВременногоХранилища(РезультатВыполнения.АдресРезультата); + СобытияЖурнала = Результат.СобытияЖурнала; ЖурналРегистрации.ПоместитьДанныеВоВременноеХранилище(СобытияЖурнала, УникальныйИдентификатор); ЗначениеВДанныеФормы(СобытияЖурнала, Журнал); - ИдентификаторЗадания = Неопределено; КонецПроцедуры &НаКлиенте @@ -378,37 +402,6 @@ КонецЕсли; КонецПроцедуры -&НаКлиенте -Процедура Подключаемый_ПроверитьВыполнениеЗадания() - - Попытка - Если ЗаданиеВыполнено(ИдентификаторЗадания) Тогда - ЗагрузитьПодготовленныеДанные(); - ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Элементы.ПолеИндикаторДлительныхОпераций, "НеИспользовать"); - Элементы.Страницы.ТекущаяСтраница = Элементы.ЖурналРегистрации; - ПозиционированиеВКонецСписка(); - Иначе - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания); - ПодключитьОбработчикОжидания( - "Подключаемый_ПроверитьВыполнениеЗадания", - ПараметрыОбработчикаОжидания.ТекущийИнтервал, - Истина); - КонецЕсли; - Исключение - ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Элементы.ПолеИндикаторДлительныхОпераций, "НеИспользовать"); - Элементы.Страницы.ТекущаяСтраница = Элементы.ЖурналРегистрации; - ПозиционированиеВКонецСписка(); - ВызватьИсключение; - КонецПопытки; -КонецПроцедуры - -&НаСервереБезКонтекста -Функция ЗаданиеВыполнено(ИдентификаторЗадания) - - Возврат ДлительныеОперации.ЗаданиеВыполнено(ИдентификаторЗадания); - -КонецФункции - &НаКлиенте Процедура УстановитьОтборНаКлиенте() diff --git a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ОтборЖурналаРегистрации/Form.form b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ОтборЖурналаРегистрации/Form.form index 60de3900a..37c92391d 100644 --- a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ОтборЖурналаРегистрации/Form.form +++ b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ОтборЖурналаРегистрации/Form.form @@ -3,73 +3,157 @@ <items xsi:type="form:FormGroup"> <name>ГруппаДаты</name> <id>192</id> - <items xsi:type="form:FormField"> - <name>ИнтервалОтбора</name> - <id>189</id> + <items xsi:type="form:FormGroup"> + <name>ЛеваяКолонка</name> + <id>285</id> + <items xsi:type="form:FormField"> + <name>ДатаНачала</name> + <id>7</id> + <title> + <key>ru</key> + <value>Интервал с</value> + + true + true + + true + + + ИнтервалОтбораДатаНачала + + Left + + OnChange + ИнтервалОтбораДатаПриИзменении + + + ДатаНачалаExtendedTooltip + 204 + Label + true + true + + Left + + + + ДатаНачалаКонтекстноеМеню + 8 + true + + InputField + Enter + true + Left + true + Left + + true + true + true + true + true + true + + Style.BorderColor + + Normal + + + + ДатаОкончания + 5 + + <key>ru</key> + <value>по</value> + + true + true + + true + + + ИнтервалОтбораДатаОкончания + + Left + + OnChange + ИнтервалОтбораДатаПриИзменении + + + ДатаОкончанияExtendedTooltip + 205 + Label + true + true + + Left + + + + ДатаОкончанияКонтекстноеМеню + 6 + true + + InputField + Enter + true + Left + true + Left + + true + true + true + true + true + true + + Style.BorderColor + + Normal + + + + ВыбратьПериод + 320 + true + true + + true + + + ВыбратьПериодРасширеннаяПодсказка + 321 + Label + true + true + + Left + + + UsualButton + Form.Command.ВыбратьПериод + Normal + Auto + 4 + true + true + UserCmds + Auto + true true true - - ИнтервалОтбора - - - OnChange - ИнтервалОтбораПриИзменении - - - ИнтервалОтбораExtendedTooltip - 202 - Label - true - true - - Left - - - - ИнтервалОтбораКонтекстноеМеню - 190 - true - - InputField - Enter - true - Left - true - - 10 - true - true - true - true - true - Normal - - - - ДатаНачала - 7 <key>ru</key> - <value>Начало</value> + <value>Левая колонка</value> - true - true - - true - - - ИнтервалОтбораДатаНачала - - - OnChange - ИнтервалОтбораДатаПриИзменении - - ДатаНачалаExtendedTooltip - 204 + ЛеваяКолонкаРасширеннаяПодсказка + 286 Label true true @@ -77,52 +161,30 @@ Left - - ДатаНачалаКонтекстноеМеню - 8 - true - - InputField - Enter - true - Left - true - Left - - true - true - true - true - true - true - - Style.BorderColor - - Normal + UsualGroup + + Auto + true + true + Auto + Auto - - ДатаОкончания - 5 - - <key>ru</key> - <value>Окончание</value> - + + ПраваяКолонка + 287 true true true - - ИнтервалОтбораДатаОкончания - - - OnChange - ИнтервалОтбораДатаПриИзменении - + + <key>ru</key> + <value>Правая колонка</value> + - ДатаОкончанияExtendedTooltip - 205 + ПраваяКолонкаРасширеннаяПодсказка + 288 Label true true @@ -130,28 +192,13 @@ Left - - ДатаОкончанияКонтекстноеМеню - 6 - true - - InputField - Enter - true - Left - true - Left - - true - true - true - true - true - true - - Style.BorderColor - - Normal + UsualGroup + + Auto + true + true + Auto + Auto true @@ -181,23 +228,22 @@ Auto true - true Auto Auto - Группа - 195 + ГруппаОсновное + 322 ГруппаВажность - 197 + 289 - ГруппаЗаголовокСпискаВажность - 238 + ГруппаКоманднаяПанель + 318 - Заголовок - 240 + ДекорацияЗаголовок + 315 <key>ru</key> <value>Важность:</value> @@ -208,8 +254,8 @@ <common>true</common> </userVisible> <extendedTooltip> - <name>ЗаголовокРасширеннаяПодсказка</name> - <id>242</id> + <name>ДекорацияЗаголовокРасширеннаяПодсказка</name> + <id>317</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -218,20 +264,19 @@ </extInfo> </extendedTooltip> <contextMenu> - <name>ЗаголовокКонтекстноеМеню</name> - <id>241</id> + <name>ДекорацияЗаголовокКонтекстноеМеню</name> + <id>316</id> <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> </extInfo> </items> <items xsi:type="form:FormGroup"> - <name>ГруппаФлажки</name> - <id>247</id> + <name>КоманднаяПанельВажность</name> + <id>313</id> <items xsi:type="form:Button"> <name>УстановитьФлажки</name> <id>243</id> @@ -289,13 +334,9 @@ <userVisible> <common>true</common> </userVisible> - <title> - <key>ru</key> - <value>Группа флажки</value> - - ГруппаФлажкиРасширеннаяПодсказка - 248 + КоманднаяПанельВажностьРасширеннаяПодсказка + 314 Label true true @@ -313,13 +354,9 @@ true - - <key>ru</key> - <value>Группа заголовок списка важность</value> - - ГруппаЗаголовокСпискаВажностьРасширеннаяПодсказка - 239 + ГруппаКоманднаяПанельРасширеннаяПодсказка + 319 Label true true @@ -339,6 +376,10 @@ Важность 41 + + <key>ru</key> + <value>Важность</value> + true true @@ -545,7 +586,7 @@ 42 true - 20 + 30 true true 4 @@ -563,6 +604,7 @@ Auto Auto true + true Style.BorderColor @@ -576,13 +618,12 @@ true - - <key>ru</key> - <value>Группа важность</value> - + false + false + Center ГруппаВажностьРасширеннаяПодсказка - 211 + 290 Label true true @@ -594,7 +635,6 @@ Vertical Auto - NormalSeparation true true Auto @@ -859,6 +899,7 @@ ru Группа основные отборы + Center ГруппаОсновныеОтборыРасширеннаяПодсказка 207 @@ -885,9 +926,17 @@ true + + <key>ru</key> + <value>Основное</value> + + + ru + Группа основное + - ГруппаExtendedTooltip - 206 + ГруппаОсновноеРасширеннаяПодсказка + 323 Label true true @@ -898,9 +947,9 @@ UsualGroup Auto + NormalSeparation true true - LeftNarrowest Auto Auto @@ -1004,6 +1053,52 @@ Normal + + ПредставлениеДанных + 53 + true + true + + true + + + ПредставлениеДанных + + 2 + + ПредставлениеДанныхExtendedTooltip + 219 + Label + true + true + + Left + + + + ПредставлениеДанныхКонтекстноеМеню + 54 + true + + InputField + Enter + true + Left + true + Left + + true + true + true + true + true + true + + Style.BorderColor + + Normal + + true true @@ -1025,58 +1120,13 @@ UsualGroup + Vertical Auto true - true Auto Auto - - ПредставлениеДанных - 53 - true - true - - true - - - ПредставлениеДанных - - - ПредставлениеДанныхExtendedTooltip - 219 - Label - true - true - - Left - - - - ПредставлениеДанныхКонтекстноеМеню - 54 - true - - InputField - Enter - true - Left - true - Left - - true - true - true - true - true - true - - Style.BorderColor - - Normal - - true true @@ -1099,9 +1149,11 @@ UsualGroup Vertical - Auto + Collapsible + true + Button + NormalSeparation true - true Equal auto Auto @@ -1109,17 +1161,17 @@ - ГруппаПрочиеСвойства - 164 + ГруппаТранзакции + 331 - ГруппаТранзакция - 56 + ЛеваяКолонка4 + 297 - ГруппаЗаголовокСпискаСтатусТранзакции - 261 + ГруппаКоманднаяПанельТранзакция + 324 - НадписьСтатусТранзакции - 252 + Декорация1 + 326 <key>ru</key> <value>Статус транзакции:</value> @@ -1130,8 +1182,8 @@ <common>true</common> </userVisible> <extendedTooltip> - <name>НадписьСтатусТранзакцииРасширеннаяПодсказка</name> - <id>254</id> + <name>Декорация1РасширеннаяПодсказка</name> + <id>328</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -1140,20 +1192,19 @@ </extInfo> </extendedTooltip> <contextMenu> - <name>НадписьСтатусТранзакцииКонтекстноеМеню</name> - <id>253</id> + <name>Декорация1КонтекстноеМеню</name> + <id>327</id> <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> </extInfo> </items> <items xsi:type="form:FormGroup"> - <name>ГруппаФлажки2</name> - <id>255</id> + <name>КоманднаяПанельТранзакция</name> + <id>329</id> <items xsi:type="form:Button"> <name>УстановитьСтатусы</name> <id>257</id> @@ -1211,14 +1262,9 @@ <userVisible> <common>true</common> </userVisible> - <title> - <key>ru</key> - <value>Группа флажки2</value> - - true - ГруппаФлажки2РасширеннаяПодсказка - 256 + КоманднаяПанельТранзакцияРасширеннаяПодсказка + 330 Label true true @@ -1236,17 +1282,9 @@ true - - <key>ru</key> - <value>Группа заголовок списка статус транзакции</value> - - - ru - Группа заголовок списка статус транзакции - - ГруппаЗаголовокСпискаСтатусТранзакцииРасширеннаяПодсказка - 262 + ГруппаКоманднаяПанельТранзакцияРасширеннаяПодсказка + 325 Label true true @@ -1268,7 +1306,7 @@ 74 <key>ru</key> - <value>Статус транзакции</value> + <value>Статус</value> true true @@ -1384,7 +1422,7 @@ true - None + Top СтатусТранзакцииКоманднаяПанель 145 @@ -1476,7 +1514,8 @@ 75 true - true + 30 + 30 true 4 true @@ -1493,6 +1532,7 @@ Auto Auto true + true Style.BorderColor @@ -1501,68 +1541,16 @@ None true - - Транзакция - 76 - - <key>ru</key> - <value>Идентификатор</value> - - true - true - - true - - - Транзакция - - Left - - ТранзакцияExtendedTooltip - 231 - Label - true - true - - Left - - - - ТранзакцияКонтекстноеМеню - 77 - true - - InputField - Enter - true - Left - true - Left - - true - true - true - true - true - true - - Style.BorderColor - - Normal - - true true true - - <key>ru</key> - <value>Транзакция</value> - + false + false - ГруппаТранзакцияExtendedTooltip - 230 + ЛеваяКолонка4РасширеннаяПодсказка + 298 Label true true @@ -1574,266 +1562,31 @@ Vertical Auto - NormalSeparation true true - auto Auto Auto - - ГруппаПрочее - 59 - - РабочиеСерверы - 165 - true - true - - true - - - РабочиеСерверы - - Left - - РабочиеСерверыExtendedTooltip - 227 - Label - true - true - - Left - - - - РабочиеСерверыКонтекстноеМеню - 166 - true - - InputField - Enter - true - Left - true - - - StartChoice - ИсполнениеВыбора - - true - true - true - true - true - true - - Style.BorderColor - - Normal - - - - ОсновныеIPПорты - 167 - true - true - - true - - - ОсновныеIPПорты - - - ОсновныеIPПортыExtendedTooltip - 228 - Label - true - true - - Left - - - - ОсновныеIPПортыКонтекстноеМеню - 168 - true - - InputField - Enter - true - Left - true - - - StartChoice - ИсполнениеВыбора - - true - true - true - true - true - true - - Style.BorderColor - - Normal - - - - ВспомогательныеIPПорты - 169 - true - true - - true - - - ВспомогательныеIPПорты - - - ВспомогательныеIPПортыExtendedTooltip - 229 - Label - true - true - - Left - - - - ВспомогательныеIPПортыКонтекстноеМеню - 170 - true - - InputField - Enter - true - Left - true - - - StartChoice - ИсполнениеВыбора - - true - true - true - true - true - true - - Style.BorderColor - - Normal - - - - РазделениеДанныхСеанса - 249 - true - true - - true - - - РазделениеДанныхСеанса - - - РазделениеДанныхСеансаРасширеннаяПодсказка - 251 - Label - true - true - - Left - - - - РазделениеДанныхСеансаКонтекстноеМеню - 250 - true - - InputField - Enter - true - Left - true - - - StartChoice - ИсполнениеВыбора - - true - true - true - true - true - true - true - Normal - - - - Комментарий - 43 - true - true - - true - - - Комментарий - - Left - - КомментарийExtendedTooltip - 223 - Label - true - true - - Left - - - - КомментарийКонтекстноеМеню - 44 - true - - InputField - Enter - true - Left - true - Left - - true - true - true - true - true - true - - Style.BorderColor - - Normal - - + + Транзакция + 76 + + <key>ru</key> + <value>Идентификатор</value> + true true true - - <key>ru</key> - <value>Прочее</value> - + + Транзакция + + Left - ГруппаПрочееРасширеннаяПодсказка - 225 + ТранзакцияExtendedTooltip + 231 Label true true @@ -1841,17 +1594,28 @@ Left - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - LeftNarrowest - auto - Auto - Auto + + ТранзакцияКонтекстноеМеню + 77 + true + + InputField + Enter + true + Left + true + Left + + true + true + true + true + true + true + + Style.BorderColor + + Normal true @@ -1859,9 +1623,13 @@ true + + <key>ru</key> + <value>Транзакции</value> + - ГруппаПрочиеСвойстваExtendedTooltip - 224 + ГруппаТранзакцииРасширеннаяПодсказка + 332 Label true true @@ -1871,20 +1639,305 @@ UsualGroup - Auto - true + Vertical + Collapsible + true + Button + NormalSeparation true - LeftNarrowest + auto Auto Auto - ГруппаКнопокФормы - 28 + ГруппаПрочее + 59 + + РабочиеСерверы + 165 + true + true + + true + + + РабочиеСерверы + + Left + 2 + + РабочиеСерверыExtendedTooltip + 227 + Label + true + true + + Left + + + + РабочиеСерверыКонтекстноеМеню + 166 + true + + InputField + Enter + true + Left + true + + + StartChoice + ИсполнениеВыбора + + true + true + true + true + true + true + + Style.BorderColor + + Normal + + + + ОсновныеIPПорты + 167 + true + true + + true + + + ОсновныеIPПорты + + 2 + + ОсновныеIPПортыExtendedTooltip + 228 + Label + true + true + + Left + + + + ОсновныеIPПортыКонтекстноеМеню + 168 + true + + InputField + Enter + true + Left + true + + + StartChoice + ИсполнениеВыбора + + true + true + true + true + true + true + + Style.BorderColor + + Normal + + + + ВспомогательныеIPПорты + 169 + true + true + + true + + + ВспомогательныеIPПорты + + 2 + + ВспомогательныеIPПортыExtendedTooltip + 229 + Label + true + true + + Left + + + + ВспомогательныеIPПортыКонтекстноеМеню + 170 + true + + InputField + Enter + true + Left + true + + + StartChoice + ИсполнениеВыбора + + true + true + true + true + true + true + + Style.BorderColor + + Normal + + + + РазделениеДанныхСеанса + 249 + true + true + + true + + + РазделениеДанныхСеанса + + 2 + + РазделениеДанныхСеансаРасширеннаяПодсказка + 251 + Label + true + true + + Left + + + + РазделениеДанныхСеансаКонтекстноеМеню + 250 + true + + InputField + Enter + true + Left + true + + + StartChoice + ИсполнениеВыбора + + true + true + true + true + true + true + true + Normal + + + + Комментарий + 43 + true + true + + true + + + Комментарий + + Left + + КомментарийExtendedTooltip + 223 + Label + true + true + + Left + + + + КомментарийКонтекстноеМеню + 44 + true + + InputField + Enter + true + Left + true + Left + + true + true + false + true + true + true + true + + Style.BorderColor + + Normal + + + true + true + + true + + + <key>ru</key> + <value>Прочее</value> + + + ГруппаПрочееРасширеннаяПодсказка + 225 + Label + true + true + + Left + + + UsualGroup + + Vertical + Collapsible + true + Button + NormalSeparation + true + LeftNarrowest + auto + Auto + Auto + + + + ФормаКоманднаяПанель + -1 OK 27 + + <key>ru</key> + <value>Применить и закрыть</value> + true true @@ -1910,9 +1963,6 @@ Style.ButtonTextColor - - Style.ButtonBackColor - Style.BorderColor @@ -1921,6 +1971,10 @@ Отменить 29 + + <key>ru</key> + <value>Отмена</value> + true true @@ -1954,33 +2008,7 @@ Auto - true - true - - true - - - ГруппаКнопокФормыExtendedTooltip - 235 - Label - true - true - - Left - - - CommandBar - - Right - - - None - false - - ФормаКоманднаяПанель - -1 Left - true NotificationProcessing @@ -1990,7 +2018,6 @@ OnCreateAtServer ПриСозданииНаСервере - 70 DontBlock true true @@ -2391,7 +2418,7 @@ ВспомогательныеIPПорты <key>ru</key> - <value>Вспомог.IP порты</value> + <value>Вспомогательные IP порты</value> 19 @@ -2712,6 +2739,28 @@ DontUse Auto + + ВыбратьПериод + + <key>ru</key> + <value>...</value> + + 6 + + ru + Выбрать период + + + true + + + + ИнтервалОтбораПриИзменении + + + DontUse + Auto + Отбор diff --git a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ОтборЖурналаРегистрации/Module.bsl b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ОтборЖурналаРегистрации/Module.bsl index 796e1e2a2..459d3a086 100644 --- a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ОтборЖурналаРегистрации/Module.bsl +++ b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/ОтборЖурналаРегистрации/Module.bsl @@ -16,7 +16,7 @@ СобытияОтображаемые = События.Скопировать(); КонецЕсли; - СтандартныеПодсистемыСервер.УстановитьОтображениеЗаголовковГрупп(ЭтотОбъект, "ГруппаДанные, ГруппаТранзакция, ГруппаПрочее"); + СтандартныеПодсистемыСервер.УстановитьОтображениеЗаголовковГрупп(ЭтотОбъект, "ГруппаДанные, ГруппаТранзакции, ГруппаПрочее"); Элементы.РазделениеДанныхСеанса.Видимость = Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных(); @@ -132,6 +132,22 @@ &НаКлиенте Процедура ИнтервалОтбораПриИзменении(Элемент) + ОбработчикОповещения = Новый ОписаниеОповещения("ИнтервалОтбораПриИзмененииЗавершение", ЭтотОбъект); + + Диалог = Новый ДиалогРедактированияСтандартногоПериода; + Диалог.Период = ИнтервалОтбора; + Диалог.Показать(ОбработчикОповещения); + +КонецПроцедуры + +&НаКлиенте +Процедура ИнтервалОтбораПриИзмененииЗавершение(Период, ДополнительныеПараметры) Экспорт + + Если Период = Неопределено Тогда + Возврат; + КонецЕсли; + + ИнтервалОтбора = Период; ИнтервалОтбораДатаНачала = ИнтервалОтбора.ДатаНачала; ИнтервалОтбораДатаОкончания = ИнтервалОтбора.ДатаОкончания; @@ -309,7 +325,6 @@ РазделениеДанныхСеанса = Значение.Скопировать(); КонецЕсли; - КонецЕсли; КонецЦикла; @@ -324,6 +339,16 @@ Для Каждого ЭлементСпискаЗначений Из СтатусТранзакции Цикл ЭлементСпискаЗначений.Пометка = Истина; КонецЦикла; + ИначеЕсли ЕстьОтборПоСтатусу Или ЗначениеЗаполнено(Транзакция) Тогда + Элементы.ГруппаТранзакции.Заголовок = Элементы.ГруппаТранзакции.Заголовок + " *"; + КонецЕсли; + + Если ЗначениеЗаполнено(РабочиеСерверы) + Или ЗначениеЗаполнено(ОсновныеIPПорты) + Или ЗначениеЗаполнено(ВспомогательныеIPПорты) + Или ЗначениеЗаполнено(РазделениеДанныхСеанса) + Или ЗначениеЗаполнено(Комментарий) Тогда + Элементы.ГруппаПрочее.Заголовок = Элементы.ГруппаПрочее.Заголовок + " *"; КонецЕсли; КонецПроцедуры diff --git a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/РазделениеДанныхСеанса/Form.form b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/РазделениеДанныхСеанса/Form.form index 684eab9fd..3dc469cfa 100644 --- a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/РазделениеДанныхСеанса/Form.form +++ b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/РазделениеДанныхСеанса/Form.form @@ -427,7 +427,6 @@ OnCreateAtServer ПриСозданииНаСервере - 60 LockOwner true true diff --git a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/РедакторСоставаСвойства/Form.form b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/РедакторСоставаСвойства/Form.form index 69afdfbe0..e26234036 100644 --- a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/РедакторСоставаСвойства/Form.form +++ b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/РедакторСоставаСвойства/Form.form @@ -338,9 +338,6 @@ Style.ButtonTextColor - - Style.ButtonBackColor - Style.BorderColor @@ -426,6 +423,8 @@ OnCreateAtServer ПриСозданииНаСервере + 50 + 35 LockOwner true true diff --git a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/РедакторСоставаСвойства/Module.bsl b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/РедакторСоставаСвойства/Module.bsl index 0966e9fd2..2db882e29 100644 --- a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/РедакторСоставаСвойства/Module.bsl +++ b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/РедакторСоставаСвойства/Module.bsl @@ -166,7 +166,7 @@ РедактируемыйСписок.Очистить(); ЕстьНеотмеченные = Ложь; - ПолучитьСписокПоддерева(РедактируемыйСписок, Список.ПолучитьЭлементы(), ЕстьНеотмеченные); + ЗаполнитьРедактируемыйСписок(РедактируемыйСписок, Список.ПолучитьЭлементы(), ЕстьНеотмеченные); Возврат РедактируемыйСписок; @@ -231,10 +231,10 @@ КонецФункции &НаКлиенте -Процедура ПолучитьСписокПоддерева(РедактируемыйСписок, ЭлементыДерева, ЕстьНеотмеченные) +Процедура ЗаполнитьРедактируемыйСписок(РедактируемыйСписок, ЭлементыДерева, ЕстьНеотмеченные) Для Каждого ЭлементДерева Из ЭлементыДерева Цикл Если ЭлементДерева.ПолучитьЭлементы().Количество() <> 0 Тогда - ПолучитьСписокПоддерева(РедактируемыйСписок, ЭлементДерева.ПолучитьЭлементы(), ЕстьНеотмеченные); + ЗаполнитьРедактируемыйСписок(РедактируемыйСписок, ЭлементДерева.ПолучитьЭлементы(), ЕстьНеотмеченные); Иначе Если ЭлементДерева.Пометка Тогда НовыйЭлементСписка = РедактируемыйСписок.Добавить(); @@ -360,17 +360,17 @@ КонецПроцедуры -&НаСервереБезКонтекста +&НаКлиенте Функция ПолноеИмяНеУказанногоПользователя() - Возврат Пользователи.ПолноеИмяНеУказанногоПользователя(); + Возврат НСтр("ru = '<Не указан>'"); КонецФункции &НаСервереБезКонтекста Функция ПолноеИмяСлужебногоПользователя(ИдентификаторПользователяИБ) - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса") Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.БазоваяФункциональностьВМоделиСервиса") Тогда МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса"); Возврат МодульРаботаВМоделиСервиса.ПсевдонимПользователяИнформационнойБазы(ИдентификаторПользователяИБ); diff --git a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/Событие/Form.form b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/Событие/Form.form index 0daf6fc10..9713a8e61 100644 --- a/SSL/src/DataProcessors/ЖурналРегистрации/Forms/Событие/Form.form +++ b/SSL/src/DataProcessors/ЖурналРегистрации/Forms/Событие/Form.form @@ -34,9 +34,6 @@ Style.ButtonTextColor - - Style.ButtonBackColor - Style.BorderColor @@ -210,7 +207,6 @@ Auto true true - Auto Auto @@ -272,6 +268,7 @@ РазделениеДанныхСеанса + 2 РазделениеДанныхСеансаРасширеннаяПодсказка 115 @@ -411,6 +408,136 @@ ГруппаОсновное 44 + + ГруппаСобытие + 2 + + ПредставлениеСобытия + 13 + + <key>ru</key> + <value>Событие</value> + + true + true + + true + + + ПредставлениеСобытия + + Left + + ПредставлениеСобытияExtendedTooltip + 147 + Label + true + true + + Left + + + + ПредставлениеСобытияКонтекстноеМеню + 14 + true + + InputField + true + Enter + true + Left + true + + 60 + true + true + true + true + + Style.BorderColor + + Normal + + + + Комментарий + 19 + true + true + + true + + + Комментарий + + Left + + КомментарийExtendedTooltip + 148 + Label + true + true + + Left + + + + КомментарийКонтекстноеМеню + 20 + true + + InputField + true + Enter + true + Left + true + + 60 + 3 + true + true + true + true + true + true + true + + Style.BorderColor + + Normal + + + true + true + + true + + + <key>ru</key> + <value>Событие</value> + + + ГруппаСобытиеExtendedTooltip + 146 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + Auto + + ГруппаДанные 4 @@ -461,7 +588,7 @@ Opening ПредставлениеМетаданныхОткрытие - true + 60 true true true @@ -505,7 +632,7 @@ Left true - true + 60 true true true @@ -554,7 +681,7 @@ Left true - true + 60 1 true true @@ -638,7 +765,7 @@ Opening ПредставлениеМетаданныхОткрытие - true + 60 true true true @@ -893,7 +1020,7 @@ Opening ПредставлениеМетаданныхОткрытие - true + 60 true true true @@ -937,7 +1064,7 @@ Left true - true + 60 true true true @@ -1016,7 +1143,7 @@ Opening ПредставлениеМетаданныхОткрытие - true + 60 true true true @@ -1060,7 +1187,7 @@ Left true - true + 60 true true true @@ -1305,7 +1432,7 @@ Left true - true + 60 true true true @@ -1347,7 +1474,7 @@ Left true - true + 60 true true true @@ -1367,6 +1494,7 @@ АутентификацияТекущийПользовательОС + 2 АутентификацияТекущийПользовательОСExtendedTooltip 139 @@ -1389,7 +1517,7 @@ Left true - true + 60 true true true @@ -1889,138 +2017,6 @@ true true auto - Auto - Auto - - - - ГруппаСобытие - 2 - - ПредставлениеСобытия - 13 - - <key>ru</key> - <value>Представление</value> - - true - true - - true - - - ПредставлениеСобытия - - None - - ПредставлениеСобытияExtendedTooltip - 147 - Label - true - true - - Left - - - - ПредставлениеСобытияКонтекстноеМеню - 14 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - - Style.BorderColor - - Normal - - - - Комментарий - 19 - true - true - - true - - - Комментарий - - Top - - КомментарийExtendedTooltip - 148 - Label - true - true - - Left - - - - КомментарийКонтекстноеМеню - 20 - true - - InputField - true - Enter - true - Left - true - - true - 3 - true - true - true - true - true - true - - Style.BorderColor - - Normal - - - true - true - - true - - - <key>ru</key> - <value>Событие</value> - - - ГруппаСобытиеExtendedTooltip - 146 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - auto - Auto Auto @@ -2051,7 +2047,6 @@ true true Equal - Auto Auto @@ -2096,6 +2091,7 @@ true true + false true true true @@ -2205,6 +2201,7 @@ ВспомогательныйIPПорт + 2 ВспомогательныйIPПортExtendedTooltip 154 @@ -2266,7 +2263,6 @@ true LeftNarrowest auto - Auto Auto @@ -2308,6 +2304,7 @@ true true + false true true true @@ -2328,6 +2325,7 @@ СтатусТранзакции + 2 СтатусТранзакцииExtendedTooltip 157 @@ -2352,6 +2350,7 @@ true true + false true true true @@ -2391,7 +2390,6 @@ true true auto - Auto Auto @@ -2417,7 +2415,6 @@ true true Equal - Auto Auto
      @@ -2442,7 +2439,6 @@ Retry SaveValues Yes - 100 DontBlock DefaultButton true @@ -2689,7 +2685,7 @@ ВспомогательныйIPПорт <key>ru</key> - <value>Вспомог. IP порт</value> + <value>Вспомогательный IP порт</value> 14 diff --git a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ВыборКолонок/Form.form b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ВыборКолонок/Form.form index 972736022..b7cd62da7 100644 --- a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ВыборКолонок/Form.form +++ b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ВыборКолонок/Form.form @@ -29,7 +29,7 @@ SortListAsc SortListDesc - СписокКолонокГруппа1 + СписокКолонокГруппа 17 СписокКолонокПометка @@ -111,8 +111,16 @@ true + + <key>ru</key> + <value>Список колонок группа</value> + + + ru + Список колонок группа + - СписокКолонокГруппа1РасширеннаяПодсказка + СписокКолонокГруппаРасширеннаяПодсказка 18 Label true diff --git a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ЗагрузкаДанныхИзФайла/ConditionalAppearance.dcssca b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ЗагрузкаДанныхИзФайла/ConditionalAppearance.dcssca deleted file mode 100644 index 92629595b..000000000 --- a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ЗагрузкаДанныхИзФайла/ConditionalAppearance.dcssca +++ /dev/null @@ -1,24 +0,0 @@ - - - - false - - - ИнформацияПоКолонкамИмяКолонки - - - - - ИнформацияПоКолонкам.ИмяКолонки - Contains - Штрихкод - - - - - ЦветТекста - style:SpecialTextColor - - - - diff --git a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ЗагрузкаДанныхИзФайла/Form.form b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ЗагрузкаДанныхИзФайла/Form.form index 2f45facb5..47a1eb24f 100644 --- a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ЗагрузкаДанныхИзФайла/Form.form +++ b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ЗагрузкаДанныхИзФайла/Form.form @@ -42,7 +42,6 @@ true Label - true true Left @@ -393,7 +392,6 @@ true Label - true true Left @@ -599,7 +597,6 @@ true Label - true 8 true @@ -686,9 +683,7 @@ Form.Command.ИзменитьБланк Normal Auto - 25 true - 2 true UserCmds Button @@ -746,7 +741,6 @@ true Label - true true Left @@ -785,7 +779,6 @@ Left true - true true true true @@ -900,9 +893,7 @@ 549 true - 4 true - 2 true @@ -938,7 +929,6 @@ true Label - true 2 true @@ -950,14 +940,6 @@ true - - <key>ru</key> - <value>Группа не найдено</value> - - - ru - Группа не найдено - ГруппаНеНайденоРасширеннаяПодсказка 552 @@ -1033,7 +1015,6 @@ true Label - true true Left @@ -1070,7 +1051,6 @@ true Label - true true Left @@ -1081,14 +1061,6 @@ true - - <key>ru</key> - <value>Результат сопоставления</value> - - - ru - Группа результат сопоставления - ГруппаРезультатСопоставленияРасширеннаяПодсказка 529 @@ -1115,14 +1087,6 @@ true - - <key>ru</key> - <value>Результаты сопоставления</value> - - - ru - Результаты сопоставления - РезультатыСопоставленияРасширеннаяПодсказка 505 @@ -1175,7 +1139,6 @@ true Label - true true Left @@ -1211,42 +1174,12 @@ true Label - true true Left Top - - ПояснениеДляУниверсальнойЗагрузки - 409 - true - - true - - - ПояснениеДляУниверсальнойЗагрузкиРасширеннаяПодсказка - 411 - Label - true - true - - Left - - - - ПояснениеДляУниверсальнойЗагрузкиКонтекстноеМеню - 410 - true - - Label - true - true - - Left - - ПояснениеДляТабличнойЧасти 464 @@ -1277,7 +1210,6 @@ true Label - true true Left @@ -1308,7 +1240,6 @@ Auto NormalSeparation true - true auto Auto Auto @@ -1834,7 +1765,6 @@ Vertical Auto true - true Auto Auto @@ -1842,166 +1772,54 @@ ГруппаНастройкиСопоставления 419 - - ГруппаИтогоНеСопоставленных - 421 - - ОбновлятьСуществующиеЗаголовок - 681 - - <key>ru</key> - <value>Сопоставленные элементы (%1):</value> - - true - true - - true - - - ОбновлятьСуществующиеЗаголовокРасширеннаяПодсказка - 683 - Label - true - true - - Left - - - - ОбновлятьСуществующиеЗаголовокКонтекстноеМеню - 682 - true - - Label - true - true - - Left - - - - ОбновлятьСуществующие - 428 - - <key>ru</key> - <value>Сопоставленные элементы (%1)</value> - - true - true - - true - - - ОбновлятьСуществующие - - None - - ОбновлятьСуществующиеРасширеннаяПодсказка - 430 - Label - true - true - - Left - - - - ОбновлятьСуществующиеКонтекстноеМеню - 429 - true - - RadioButtonField - Enter - true - Left - true - - - - ru - Обновлять - - - 1 - - - - - ru - Пропускать - - - 0 - - - Vertical - - - - СоздаватьЕслиНеСопоставлено - 423 - - <key>ru</key> - <value>Несопоставленные (%1)</value> - - true - true - - true - - - СоздаватьЕслиНеСопоставлено - - - СоздаватьЕслиНеСопоставленоРасширеннаяПодсказка - 425 - Label - true - true - - Left - - - - СоздаватьЕслиНеСопоставленоКонтекстноеМеню - 424 - true - - RadioButtonField - Enter - true - Left - true - - - - ru - Создавать - - - 1 - - - - - ru - Пропускать - - - 0 - - - Vertical - - + true + + true + + + <key>ru</key> + <value>Сопоставление загружаемых данных:</value> + + + ГруппаНастройкиСопоставленияРасширеннаяПодсказка + 420 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + Auto + Auto + + + + ГруппаИтогоНеСопоставленных + 421 + + ОбновлятьСуществующие + 428 + + <key>ru</key> + <value>Сопоставленные элементы (%1)</value> + true true true + + ОбновлятьСуществующие + - ГруппаИтогоНеСопоставленныхРасширеннаяПодсказка - 422 + ОбновлятьСуществующиеРасширеннаяПодсказка + 430 Label true true @@ -2009,13 +1827,93 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + + ОбновлятьСуществующиеКонтекстноеМеню + 429 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + Обновлять + + + 1 + + + + + ru + Пропускать + + + 0 + + + Vertical + + + + СоздаватьЕслиНеСопоставлено + 423 + + <key>ru</key> + <value>Несопоставленные (%1)</value> + + true + true + + true + + + СоздаватьЕслиНеСопоставлено + + + СоздаватьЕслиНеСопоставленоРасширеннаяПодсказка + 425 + Label + true + true + + Left + + + + СоздаватьЕслиНеСопоставленоКонтекстноеМеню + 424 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + Создавать + + + 1 + + + + + ru + Пропускать + + + 0 + + + Vertical @@ -2045,7 +1943,6 @@ true Label - true true Left @@ -2056,13 +1953,9 @@ true - - <key>ru</key> - <value>Сопоставление загружаемых данных:</value> - - ГруппаНастройкиСопоставленияРасширеннаяПодсказка - 420 + ГруппаИтогоНеСопоставленныхРасширеннаяПодсказка + 422 Label true true @@ -2072,7 +1965,6 @@ UsualGroup - Vertical Auto true true @@ -2116,117 +2008,22 @@ РасшифровкаСводныхДанных 321 - ГруппаОтчетИтог - 316 - - ГруппаОтчетСозданныеИОбновленные - 467 - - ИтогоОтчетСоздано - 475 - true - true - - true - - - ИтогоОтчетСоздано - - - ИтогоОтчетСозданоРасширеннаяПодсказка - 477 - Label - true - true - - Left - - - - ИтогоОтчетСозданоКонтекстноеМеню - 476 - true - - LabelField - Enter - true - Left - true - - true - true - - ru - ЧН=0 - - - System.DefaultGUIFont - true - false - false - false - - - - - ИтогоОтчетПропущено - 481 - true - true - - true - - - ИтогоОтчетПропущено - - - ИтогоОтчетПропущеноРасширеннаяПодсказка - 483 - Label - true - true - - Left - - - - ИтогоОтчетПропущеноКонтекстноеМеню - 482 - true - - LabelField - Enter - true - Left - true - - true - true - - ru - ЧН=0 - - - System.DefaultGUIFont - true - false - false - false - - - + ГруппаОтчетСозданныеИОбновленные + 467 + + ИтогоОтчетСоздано + 475 true true true - - <key>ru</key> - <value>Группа отчет созданные и обновленные</value> - + + ИтогоОтчетСоздано + - ГруппаОтчетСозданныеИОбновленныеРасширеннаяПодсказка - 468 + ИтогоОтчетСозданоРасширеннаяПодсказка + 477 Label true true @@ -2234,125 +2031,46 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + ИтогоОтчетСозданоКонтекстноеМеню + 476 + true + + LabelField + Enter + true + Left + true + + true + true + + ru + ЧН=0 + + + System.DefaultGUIFont + true + false + false + false + - - ГруппаПропущенные - 469 - - ИтогоОтчетОбновлено - 478 - true - true - - true - - - ИтогоОтчетОбновлено - - - ИтогоОтчетОбновленоРасширеннаяПодсказка - 480 - Label - true - true - - Left - - - - ИтогоОтчетОбновленоКонтекстноеМеню - 479 - true - - LabelField - Enter - true - Left - true - - true - true - - ru - ЧН=0 - - - System.DefaultGUIFont - true - false - false - false - - - - - ИтогоОтчетНекорректных - 484 - true - true - - true - - - ИтогоОтчетНекорректных - - - ИтогоОтчетНекорректныхРасширеннаяПодсказка - 486 - Label - true - true - - Left - - - - ИтогоОтчетНекорректныхКонтекстноеМеню - 485 - true - - LabelField - Enter - true - Left - true - - true - true - - ru - ЧН=0 - - - System.DefaultGUIFont - true - false - false - false - - - + + ИтогоОтчетПропущено + 481 true true true - - <key>ru</key> - <value>Группа пропущенные</value> - + + ИтогоОтчетПропущено + - ГруппаПропущенныеРасширеннаяПодсказка - 470 + ИтогоОтчетПропущеноРасширеннаяПодсказка + 483 Label true true @@ -2360,14 +2078,30 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + ИтогоОтчетПропущеноКонтекстноеМеню + 482 + true + + LabelField + Enter + true + Left + true + + true + true + + ru + ЧН=0 + + + System.DefaultGUIFont + true + false + false + false + true @@ -2377,11 +2111,11 @@ <key>ru</key> - <value>Группа отчет итог</value> + <value>Группа отчет созданные и обновленные</value> - ГруппаОтчетИтогРасширеннаяПодсказка - 317 + ГруппаОтчетСозданныеИОбновленныеРасширеннаяПодсказка + 468 Label true true @@ -2391,10 +2125,136 @@ UsualGroup + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаПропущенные + 469 + + ИтогоОтчетОбновлено + 478 + true + true + + true + + + ИтогоОтчетОбновлено + + + ИтогоОтчетОбновленоРасширеннаяПодсказка + 480 + Label + true + true + + Left + + + + ИтогоОтчетОбновленоКонтекстноеМеню + 479 + true + + LabelField + Enter + true + Left + true + + true + true + + ru + ЧН=0 + + + System.DefaultGUIFont + true + false + false + false + + + + + ИтогоОтчетНекорректных + 484 + true + true + + true + + + ИтогоОтчетНекорректных + + + ИтогоОтчетНекорректныхРасширеннаяПодсказка + 486 + Label + true + true + + Left + + + + ИтогоОтчетНекорректныхКонтекстноеМеню + 485 + true + + LabelField + Enter + true + Left + true + + true + true + + ru + ЧН=0 + + + System.DefaultGUIFont + true + false + false + false + + + + true + true + + true + + + <key>ru</key> + <value>Группа пропущенные</value> + + + ГруппаПропущенныеРасширеннаяПодсказка + 470 + Label + true + true + + Left + + + UsualGroup + + Vertical Auto true true - Equal Auto Auto @@ -2457,9 +2317,7 @@ true Label - true true - true Left Top @@ -2822,106 +2680,23 @@ ДлительныеОперации 553 - ГруппаИнформацияОВыполнение - 561 - - ГруппаПрогресс - 569 - - ДекорацияСостояниеФоновогоЗадания - 558 - - <key>ru</key> - <value>Пожалуйста, подождите...</value> - - true - true - - true - - - ДекорацияСостояниеФоновогоЗаданияРасширеннаяПодсказка - 560 - Label - true - true - - Left - - - - ДекорацияСостояниеФоновогоЗаданияКонтекстноеМеню - 559 - true - - Label - true - 2 - true - - Left - Bottom - - - - ФоновоеЗаданиеПроцент - 566 - true - true - - true - - - ФоновоеЗаданиеПроцент - - None - - ФоновоеЗаданиеПроцентРасширеннаяПодсказка - 568 - Label - true - true - - Left - - - - ФоновоеЗаданиеПроцентКонтекстноеМеню - 567 - true - - ProgressBarField - Enter - true - Left - true - - 32 - true - 1 - true - true - 100 - true - - + ГруппаПрогресс + 569 + + ДекорацияСостояниеФоновогоЗадания + 558 + + <key>ru</key> + <value>Пожалуйста, подождите...</value> + true true true - - <key>ru</key> - <value>Группа прогресс</value> - - - ru - Группа прогресс - - 6 - ГруппаПрогрессРасширеннаяПодсказка - 570 + ДекорацияСостояниеФоновогоЗаданияРасширеннаяПодсказка + 560 Label true true @@ -2929,14 +2704,59 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + ДекорацияСостояниеФоновогоЗаданияКонтекстноеМеню + 559 + true + + Label + 2 + true + + Left + Bottom + + + + ФоновоеЗаданиеПроцент + 566 + true + true + + true + + + ФоновоеЗаданиеПроцент + + None + + ФоновоеЗаданиеПроцентРасширеннаяПодсказка + 568 + Label + true + true + + Left + + + + ФоновоеЗаданиеПроцентКонтекстноеМеню + 567 + true + + ProgressBarField + Enter + true + Left + true + + 32 + true + 1 + true + true + 100 + true true @@ -2944,9 +2764,18 @@ true + + <key>ru</key> + <value>Группа прогресс</value> + + + ru + Группа прогресс + + 6 - ГруппаИнформацияОВыполнениеРасширеннаяПодсказка - 562 + ГруппаПрогрессРасширеннаяПодсказка + 570 Label true true @@ -2956,6 +2785,7 @@ UsualGroup + Vertical Auto true true @@ -3114,37 +2944,6 @@ true - - ДекорацияРазделитель - 38 - true - true - - true - - - ДекорацияРазделительРасширеннаяПодсказка - 40 - Label - true - true - - Left - - - - ДекорацияРазделительКонтекстноеМеню - 39 - true - - Label - true - true - true - - Left - - ГруппаДалееЗакрыть 471 @@ -3293,6 +3092,7 @@ OnCreateAtServer ПриСозданииНаСервере + 35 LockOwner UseList true @@ -4098,7 +3898,7 @@ 3 ru - Сохраняет в файл бланк для заполнения в виде пустой таблицы. Доступно сохранение в один из трех выбранных форматов файла (Книга Excel 2007, Текстовый файл с разделителями CSV, MXL таблица) + Сохраняет в файл бланк для заполнения в виде пустой таблицы. Доступно сохранение в один из выбранных форматов файла (Книга Excel 2007, Текстовый файл с разделителями CSV, MXL таблица) true @@ -4295,6 +4095,12 @@ ДополнительныеПараметры + + ОписаниеТипов + + TypeDescription + + diff --git a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ЗагрузкаДанныхИзФайла/Module.bsl b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ЗагрузкаДанныхИзФайла/Module.bsl index ce54ebbeb..65c1eb61e 100644 --- a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ЗагрузкаДанныхИзФайла/Module.bsl +++ b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/ЗагрузкаДанныхИзФайла/Module.bsl @@ -1,14 +1,8 @@ #Область ОписаниеПеременных -&НаКлиенте -Перем ПараметрыОбработчика; - &НаКлиенте Перем ПодтверждениеЗакрытияФормы; -&НаКлиенте -Перем ФормаДлительнойОперации; - #КонецОбласти #Область ОбработчикиСобытийФормы @@ -80,18 +74,25 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) - Если ПодтверждениеЗакрытияФормы <> Неопределено Тогда - Если ПодтверждениеЗакрытияФормы <> Истина Тогда - Оповещение = Новый ОписаниеОповещения("ЗакрытиеФормыЗавершение", ЭтотОбъект); - Отказ = Истина; - ТекстВопроса = НСтр("ru = 'Введенные данные не будут записаны. Закрыть форму?'"); - ПоказатьВопрос(Оповещение, ТекстВопроса, РежимДиалогаВопрос.ДаНет); - Иначе - Если ОткрытьСправочникПослеЗакрытияПомощника Тогда - ОткрытьФорму(ФормаСписка(ИмяОбъектаСопоставления)); - КонецЕсли; + Если ПодтверждениеЗакрытияФормы = Неопределено Тогда + Возврат; + КонецЕсли; + + Отказ = Отказ Или (ПодтверждениеЗакрытияФормы <> Истина); + Если ЗавершениеРаботы Тогда + ТекстПредупреждения = НСтр("ru = 'Введенные данные не будут записаны.'"); + Возврат; + КонецЕсли; + + Если Отказ Тогда + Оповещение = Новый ОписаниеОповещения("ЗакрытиеФормыЗавершение", ЭтотОбъект); + ТекстВопроса = НСтр("ru = 'Введенные данные не будут записаны. Закрыть форму?'"); + ПоказатьВопрос(Оповещение, ТекстВопроса, РежимДиалогаВопрос.ДаНет); + Иначе + Если ОткрытьСправочникПослеЗакрытияПомощника Тогда + ОткрытьФорму(ФормаСписка(ИмяОбъектаСопоставления)); КонецЕсли; КонецЕсли; @@ -104,9 +105,9 @@ &НаКлиенте Процедура ФильтрОтчетПриИзменении(Элемент) - ФоновоеЗаданиеОтчетНаКлиенте(); + ФоновоеЗаданиеОтчетНаКлиенте(Ложь); - Если ФильтрОтчет = "Пропущенные" Тогда + Если ФильтрОтчет = "Пропущенные" Тогда Элементы.ИзменитьРеквизиты.Доступность=Ложь; Иначе Элементы.ИзменитьРеквизиты.Доступность=Истина; @@ -250,18 +251,12 @@ &НаКлиенте Процедура ПослеВопросаОДобавлениеВТабличнуюЧасть(Результат, ДополнительныеПараметры) Экспорт - Если Результат = КодВозвратаДиалога.Да Тогда + Если Результат = КодВозвратаДиалога.Да Тогда АдресЗагруженныхДанных = АдресВХранилищеТаблицыСопоставления(); Закрыть(АдресЗагруженныхДанных); КонецЕсли; КонецПроцедуры -&НаСервере -Процедура ЗаполнитьТаблицуСопоставленияИзВременногоХранилища() - СопоставленныеДанные = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); - ЗначениеВРеквизитФормы(СопоставленныеДанные, "ТаблицаСопоставленияДанных"); -КонецПроцедуры - &НаКлиенте Процедура ЗакрытьФормуИВернутьМассивСсылок() ПодтверждениеЗакрытияФормы = Истина; @@ -346,7 +341,7 @@ ВыполнитьШагЗаполнениеТаблицыДаннымиНаСервере(ОписаниеСтрокиВыбора); ВыполнитьШагЗаполнениеТаблицыДаннымиНаКлиенте(); ИначеЕсли Элементы.СтраницыПомощника.ТекущаяСтраница = Элементы.ЗаполнениеТаблицыДанными Тогда - ВыполнитьШагСопоставлениеЗагружаемыхДанных(); + СопоставитьЗагружаемыеДанные(); ИначеЕсли Элементы.СтраницыПомощника.ТекущаяСтраница = Элементы.РезультатыСопоставления Тогда Элементы.СтраницыПомощника.ТекущаяСтраница = Элементы.СопоставлениеЗагружаемыхДанных; Элементы.ВставитьВСписок.Видимость = Ложь; @@ -357,16 +352,15 @@ Элементы.ВставитьВСписок.Видимость = Ложь; ПодтверждениеЗакрытияФормы = Истина; Если ТипЗагрузки = "ТабличнаяЧасть" Тогда - Отбор = Новый Структура(); - Отбор.Вставить("РезультатСопоставленияСтроки", "НеСопоставлен"); - Отбор.Вставить("РезультатСопоставленияСтроки", "Неоднозначность"); - Если УстановитьОформлениеДляПолейСНеоднозначностью(Отбор) Тогда - ПоказатьВопрос(Новый ОписаниеОповещения("ПослеВопросаОДобавлениеВТабличнуюЧасть", ЭтотОбъект), - НСтр("ru = 'Строки в которых не заполнены обязательные колонки будут пропущены.'") + Отбор = Новый Структура("РезультатСопоставленияСтроки", "НеСопоставлен"); + Строки = ТаблицаСопоставленияДанных.НайтиСтроки(Отбор); + Если Строки.Количество() > 0 Тогда + Оповещение = Новый ОписаниеОповещения("ПослеВопросаОДобавлениеВТабличнуюЧасть", ЭтотОбъект); + ПоказатьВопрос(Оповещение, НСтр("ru = 'Строки, в которых не заполнены обязательные колонки, будут пропущены.'") + Символы.ПС + НСтр("ru = 'Продолжить?'"), РежимДиалогаВопрос.ДаНет); Возврат; КонецЕсли; - + АдресЗагруженныхДанных = АдресВХранилищеТаблицыСопоставления(); Закрыть(АдресЗагруженныхДанных); ИначеЕсли ТипЗагрузки = "ВставкаИзБуфераОбмена" Тогда @@ -380,30 +374,6 @@ КонецПроцедуры -&НаКлиенте -Функция УстановитьОформлениеДляПолейСНеоднозначностью(Отбор) - - Строки = ТаблицаСопоставленияДанных.НайтиСтроки(Отбор); - Если Строки.Количество() > 0 Тогда - СписокКолонок = Новый Массив; - Для каждого СтрокаДанных Из Строки Цикл - Если СтрСравнить(СтрокаДанных.РезультатСопоставленияСтроки, "Неоднозначность") = 0 Тогда - МассивКолонок = СтрРазделить(СтрокаДанных.ОписаниеОшибки, ";", Ложь); - Для каждого ИмяКолонки Из МассивКолонок Цикл - СписокКолонок.Добавить(ИмяКолонки); - КонецЦикла; - КонецЕсли; - КонецЦикла; - Иначе - Возврат Ложь; - КонецЕсли; - - УстановитьОформлениеДанных(СписокКолонок); - - Возврат Истина; - -КонецФункции - &НаКлиенте Процедура ПослеСопоставленияНеоднозначностей(Результат, Параметр) Экспорт @@ -494,7 +464,7 @@ ТекстВсе = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Все (%1)'"), Статистика.Всего); Элементы.СоздаватьЕслиНеСопоставлено.Заголовок = НСтр("ru = 'Несопоставленные ('") + Статистика.НеСопоставленных + ")"; - Элементы.ОбновлятьСуществующиеЗаголовок.Заголовок = НСтр("ru = 'Сопоставленные элементы ('") + Строка(Статистика.Сопоставленных) + ")"; + Элементы.ОбновлятьСуществующие.Заголовок = НСтр("ru = 'Сопоставленные элементы ('") + Строка(Статистика.Сопоставленных) + ")"; СписокВыбора = Элементы.ФильтрТаблицаСопоставления.СписокВыбора; СписокВыбора.Очистить(); @@ -766,12 +736,11 @@ КонецФункции &НаСервере -Процедура ВыполнитьШагСопоставлениеЗагружаемыхДанныхНаСервере(ФоновоеЗадание = Ложь) +Процедура СопоставитьЗагружаемыеДанныеНаСервере() ЗагрузкаДанныхИзФайла.ДобавитьСтатистическуюИнформацию(?(ВариантЗагрузки = 0, "ВариантЗагрузки.ЗаполнениеТаблицы", "ВариантЗагрузки.ИзВнешнегоФайла")); - ТаблицаСопоставления = РеквизитФормыВЗначение("ТаблицаСопоставленияДанных"); ТаблицаИнформацияПоКолонкам = РеквизитФормыВЗначение("ИнформацияПоКолонкам"); Если ТипЗагрузки = "ТабличнаяЧасть" Тогда АдресЗагруженныхДанных = ""; @@ -788,42 +757,21 @@ Если НЕ РеквизитыСозданы Тогда СоздатьТаблицуСопоставленияПоИнформацииОКолонкахДляТЧ(); КонецЕсли; - ПоместитьДанныеВТаблицуСопоставления(АдресЗагруженныхДанных, АдресКопииТабличнойЧасти, СписокНеоднозначностей); ИначеЕсли ТипЗагрузки = "ВставкаИзБуфераОбмена" Тогда + ТаблицаСопоставления = РеквизитФормыВЗначение("ТаблицаСопоставленияДанных"); Обработки.ЗагрузкаДанныхИзФайла.ЗаполнитьТаблицуСопоставленияДаннымиИзШаблона(ШаблонСДанными, ТаблицаСопоставления, ИнформацияПоКолонкам); Обработки.ЗагрузкаДанныхИзФайла.СопоставитьЗначениеКолонкиАвто(ТаблицаСопоставления, "Ссылки"); ЗначениеВРеквизитФормы(ТаблицаСопоставления, "ТаблицаСопоставленияДанных"); - Иначе - ПараметрыВызоваСервера = Новый Структура(); - ПараметрыВызоваСервера.Вставить("ШаблонСДанными", ШаблонСДанными); - ПараметрыВызоваСервера.Вставить("ТаблицаСопоставления", ТаблицаСопоставления); - - ПараметрыВызоваСервера.Вставить("ИнформацияПоКолонкам", ТаблицаИнформацияПоКолонкам); - - РезультатФоновогоЗадания = ДлительныеОперации.ЗапуститьВыполнениеВФоне(УникальныйИдентификатор, - "Обработки.ЗагрузкаДанныхИзФайла.ЗаполнитьТаблицуСопоставленияДаннымиИзШаблонаФон", - ПараметрыВызоваСервера, - НСтр("ru = 'ЗагрузкаДанныхИзФайла: Выполнение серверного метода обработки ЗаполнитьТаблицуСопоставленияДаннымиИзШаблона'")); - - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - ФоновоеЗаданиеАдресХранилища = РезультатФоновогоЗадания.АдресХранилища; - ВыполнитьШагСопоставлениеЗагружаемыхДанныхПослеСопоставленияНаСервере(); - Иначе - ФоновоеЗадание = Истина; - ФоновоеЗаданиеИдентификатор = РезультатФоновогоЗадания.ИдентификаторЗадания; - ФоновоеЗаданиеАдресХранилища = РезультатФоновогоЗадания.АдресХранилища; - КонецЕсли; - КонецЕсли; КонецПроцедуры &НаСервере -Процедура ВыполнитьШагСопоставлениеЗагружаемыхДанныхПослеСопоставленияНаСервере() +Процедура ВыполнитьШагСопоставлениеЗагружаемыхДанныхПослеСопоставленияНаСервере(АдресРезультата) - ТаблицаСопоставления = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); + ТаблицаСопоставления = ПолучитьИзВременногоХранилища(АдресРезультата); Если ТипЗагрузки = "ПрикладнаяЗагрузка" Тогда СопоставитьДанныеПрикладнаяЗагрузка(ТаблицаСопоставления); @@ -841,22 +789,29 @@ КонецПроцедуры &НаКлиенте -Процедура ВыполнитьШагСопоставлениеЗагружаемыхДанных() +Процедура СопоставитьЗагружаемыеДанные() Если ТаблицаСДаннымиПустая() Тогда - ПоказатьПредупреждение(, (НСтр("ru ='Для перехода к этапу сопоставления и загрузки данных, необходимо заполнить таблицу.'"))); + Если ВариантЗагрузки = 0 Тогда + ПоказатьПредупреждение(, (НСтр("ru ='Для сопоставления и загрузки данных, необходимо заполнить таблицу.'"))); + Иначе + ПоказатьПредупреждение(, (НСтр("ru ='Невозможно выполнить сопоставление данных, т.к данные не были загружены в таблицу. + |Возможно, имена колонок в файле не соответствуют колонкам в бланке.'"))); + КонецЕсли; + ВыполнитьШагЗаполнениеТаблицыДаннымиНаКлиенте(); + ДоступностьКнопокКомандойПанели(Истина); Возврат; КонецЕсли; ПодтверждениеЗакрытияФормы = Ложь; СписокНезаполненныхКолонок = НезаполненныеОбязательныеКолонки(); Если СписокНезаполненныхКолонок.Количество() > 0 Тогда - Если СписокНезаполненныхКолонок.Количество() =1 Тогда + Если СписокНезаполненныхКолонок.Количество() = 1 Тогда ТекстПроКолонки = НСтр("ru = 'Обязательная колонка""'") + " " + СписокНезаполненныхКолонок[0] - + НСтр("ru = '"" содержит незаполненные строки, эти строки будут пропущены при загрузке'"); + + НСтр("ru = '"" содержит незаполненные строки, эти строки будут пропущены при загрузке.'"); Иначе ТекстПроКолонки = НСтр("ru = 'Обязательные колонки""'") + " " + СтрСоединить(СписокНезаполненныхКолонок,", ") - + НСтр("ru = '"" содержат незаполненные строки, эти строки будут пропущены при загрузке'"); + + НСтр("ru = '"" содержат незаполненные строки, эти строки будут пропущены при загрузке.'"); КонецЕсли; ТекстПроКолонки = ТекстПроКолонки + Символы.ПС + НСтр("ru = 'Продолжить?'"); @@ -878,157 +833,103 @@ &НаКлиенте Процедура ВыполнитьШагСопоставлениеЗагружаемыхДанныхПослеПроверки() - Элементы.Назад.Доступность = Ложь; - Элементы.Далее.Доступность = Ложь; + ДоступностьКнопокКомандойПанели(Ложь); - ФоновоеЗадание = Ложь; - ВыполнитьШагСопоставлениеЗагружаемыхДанныхНаСервере(ФоновоеЗадание); - - Если ФоновоеЗадание = Истина Тогда - Элементы.СтраницыПомощника.ТекущаяСтраница = Элементы.ДлительныеОперации; - ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ПодключитьОбработчикОжидания("ФоновоеЗаданиеСопоставлениеНаКлиенте", 1, Истина); - ПараметрыОбработчика.МаксимальныйИнтервал = 5; - Иначе + Если ТипЗагрузки = "ВставкаИзБуфераОбмена" ИЛИ ТипЗагрузки = "ТабличнаяЧасть" Тогда + СопоставитьЗагружаемыеДанныеНаСервере(); Если ВсеДанныеСопоставлены() И ТипЗагрузки = "ВставкаИзБуфераОбмена" Тогда ЗакрытьФормуИВернутьМассивСсылок(); Иначе ВыполнитьШагСопоставлениеЗагружаемыхДанныхКлиент(); КонецЕсли; + Иначе + ОповещениеОПрогрессеВыполнения = Новый ОписаниеОповещения("ПрогрессВыполнения", ЭтотОбъект); + ФоновоеЗадание = СопоставитьЗагружаемыеДанныеНаСервереУниверсальнаяЗагрузка(); + Если ФоновоеЗадание.Статус = "Выполняется" Тогда + Элементы.СтраницыПомощника.ТекущаяСтраница = Элементы.ДлительныеОперации; + КонецЕсли; + + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + НастройкиОжидания.ВыводитьОкноОжидания = Ложь; + НастройкиОжидания.ПолучатьРезультат = Истина; + НастройкиОжидания.ОповещениеОПрогрессеВыполнения = ОповещениеОПрогрессеВыполнения; + + Обработчик = Новый ОписаниеОповещения("ПослеСопоставленияЗагружаемыхДанных", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(ФоновоеЗадание, Обработчик, НастройкиОжидания); КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ДоступностьКнопокКомандойПанели(Доступность) + + Элементы.Назад.Доступность = Доступность; + Элементы.Далее.Доступность = Доступность; КонецПроцедуры &НаКлиенте Процедура ПерейтиКСтранице(ОтображаемаяСтраница) - Элементы.Назад.Доступность = Истина; - Элементы.Далее.Доступность = Истина; + ДоступностьКнопокКомандойПанели(Истина); Элементы.СтраницыПомощника.ТекущаяСтраница = ОтображаемаяСтраница; КонецПроцедуры #Область ДлительныеОперации -&НаКлиенте -Процедура ФоновоеЗаданиеЗагрузкаФайлаНаКлиенте() - Результат = ФоновоеЗаданиеЗагрузкаФайлаПолучитьРезультат(); - Если Результат.ФоновоеЗаданиеВыполнено Тогда - ШаблонСДанными = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); - Если ФормаДлительнойОперации.Открыта() - И ФормаДлительнойОперации.ИдентификаторЗадания = ФоновоеЗаданиеИдентификатор Тогда - ДлительныеОперацииКлиент.ЗакрытьФормуДлительнойОперации(ФормаДлительнойОперации); - КонецЕсли; - ПереходКСледующемуШагуЗагрузкиДанных(); - ИначеЕсли Результат.ЕстьОшибки Тогда - Если ФормаДлительнойОперации.Открыта() - И ФормаДлительнойОперации.ИдентификаторЗадания = ФоновоеЗаданиеИдентификатор Тогда - ДлительныеОперацииКлиент.ЗакрытьФормуДлительнойОперации(ФормаДлительнойОперации); - КонецЕсли; - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(Результат.ТекстОшибки); - Иначе - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ПодключитьОбработчикОжидания("ФоновоеЗаданиеЗагрузкаФайлаНаКлиенте", ПараметрыОбработчика.ТекущийИнтервал, Истина); - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ФоновоеЗаданиеСопоставлениеНаКлиенте() - - Результат = ФоновоеЗаданиеСопоставлениеПолучитьРезультат(); - - Если Результат.ФоновоеЗаданиеВыполнено Тогда - Если ВсеДанныеСопоставлены() И ТипЗагрузки = "ВставкаИзБуфераОбмена" Тогда - ЗакрытьФормуИВернутьМассивСсылок(); - Иначе - ВыполнитьШагСопоставлениеЗагружаемыхДанныхКлиент(); - КонецЕсли; - ИначеЕсли Результат.ЕстьОшибки Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(Результат.ТекстОшибки); - ПерейтиКСтранице(Элементы.ЗаполнениеТаблицыДанными); - Иначе - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ПодключитьОбработчикОжидания("ФоновоеЗаданиеСопоставлениеНаКлиенте", ПараметрыОбработчика.ТекущийИнтервал, Истина); - КонецЕсли; - -КонецПроцедуры - &НаКлиенте Процедура ЗаписатьЗагружаемыеДанныеКлиент() - Элементы.Назад.Доступность = Ложь; - Элементы.Далее.Доступность = Ложь; + ДоступностьКнопокКомандойПанели(Ложь); - ФоновоеЗаданиеПроцент = 0; - ФоновоеЗадание = Ложь; - ЗаписатьЗагружаемыеДанныеОтчет(ФоновоеЗадание); + ИмяОбъекта = ПредставлениеСправочника(ИмяОбъектаСопоставления); + Элементы.ОткрытьСправочникПослеЗакрытияПомощника.Заголовок = + СтрЗаменить(Элементы.ОткрытьСправочникПослеЗакрытияПомощника.Заголовок, "%1", ИмяОбъекта); + Элементы.ПояснениеОтчетаОЗагрузке.Заголовок = + СтрЗаменить(Элементы.ПояснениеОтчетаОЗагрузке.Заголовок, "%1", ИмяОбъекта); + ТипОтчета = "ВсеЭлементы"; - Если ФоновоеЗадание = Истина Тогда - Элементы.СтраницыПомощника.ТекущаяСтраница = Элементы.ДлительныеОперации; - ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ПодключитьОбработчикОжидания("ФоновоеЗаданиеЗаписьНаКлиенте", 1, Истина); - ПараметрыОбработчика.МаксимальныйИнтервал = 5; + Если ТипЗагрузки <> "УниверсальнаяЗагрузка" Тогда + ЗаписатьЗагружаемыеДанныеОтчет(); + ФоновоеЗаданиеОтчетНаКлиенте(); Иначе - ФоновоеЗаданиеОтчетНаКлиенте(Ложь); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ФоновоеЗаданиеЗаписьНаКлиенте() - Результат = ФоновоеЗаданиеЗаписьПолучитьРезультат(); - Если Результат.ФоновоеЗаданиеВыполнено Тогда - ЗаполнитьТаблицуСопоставленияИзВременногоХранилища(); - ФоновоеЗаданиеОтчетНаКлиенте(Ложь); - ИначеЕсли Результат.ЕстьОшибки Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(Результат.ТекстОшибки); - ПерейтиКСтранице(Элементы.СопоставлениеЗагружаемыхДанных); - Иначе - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ПодключитьОбработчикОжидания("ФоновоеЗаданиеЗаписьНаКлиенте", ПараметрыОбработчика.ТекущийИнтервал, Истина); - КонецЕсли; -КонецПроцедуры - -&НаСервере -Функция ФоновоеЗаданиеЗаписьПолучитьРезультат() - Результат = Новый Структура("ФоновоеЗаданиеВыполнено, ЕстьОшибки, ТекстОшибки", Ложь, Ложь); - Попытка - Результат.ФоновоеЗаданиеВыполнено = ДлительныеОперации.ЗаданиеВыполнено(ФоновоеЗаданиеИдентификатор); - Исключение - Результат.ЕстьОшибки = Истина; - ТекстСообщенияОбОшибке = НСтр("ru = 'Не удалось произвести запись данных. - |Возможная причина: Загружаемые данные некорректные. - |Техническая информация: %1'"); - Результат.ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщенияОбОшибке, КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); - ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииЗагрузкаДанныхИзФайла(), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - КонецПопытки; - - Если НЕ Результат.ФоновоеЗаданиеВыполнено Тогда - ФоновоеЗаданиеПрочитатьПромежуточныйРезультат(Результат); - КонецЕсли; - Возврат Результат; -КонецФункции - -&НаКлиенте -Процедура ФоновоеЗаданиеОтчетНаКлиенте(ВыводитьОкноОжидания = Истина) - - ФоновоеЗадание = Ложь; - СформироватьОтчетОЗагрузке(ФильтрОтчет, ФоновоеЗадание, НЕ ВыводитьОкноОжидания); - - Если ФоновоеЗадание Тогда - Если ВыводитьОкноОжидания Тогда - ФормаДлительнойОперации = ДлительныеОперацииКлиент.ОткрытьФормуДлительнойОперации(ЭтотОбъект, ФоновоеЗаданиеИдентификатор); + ФоновоеЗаданиеПроцент = 0; + ФоновоеЗадание = ЗаписатьЗагружаемыеДанныеОтчетУниверсальнаяЗагрузка(); + Если ФоновоеЗадание.Статус = "Выполняется" Тогда + Элементы.СтраницыПомощника.ТекущаяСтраница = Элементы.ДлительныеОперации; КонецЕсли; - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ПодключитьОбработчикОжидания("ФоновоеЗаданиеСозданиеОтчетаНаКлиенте", ПараметрыОбработчика.ТекущийИнтервал, Истина); - Иначе - Результат = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); - ПоказатьОтчет(Результат); + + ОповещениеОПрогрессеВыполнения = Новый ОписаниеОповещения("ПрогрессВыполнения", ЭтотОбъект); + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + НастройкиОжидания.ВыводитьОкноОжидания = Ложь; + НастройкиОжидания.ПолучатьРезультат = Истина; + НастройкиОжидания.ОповещениеОПрогрессеВыполнения = ОповещениеОПрогрессеВыполнения; + + Обработчик = Новый ОписаниеОповещения("ПослеЗаписиЗагружаемыхДанныхОтчет", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(ФоновоеЗадание, Обработчик, НастройкиОжидания); + КонецЕсли; + КонецПроцедуры &НаКлиенте -Процедура ПоказатьОтчет(Отчет) +Процедура ФоновоеЗаданиеОтчетНаКлиенте(НеВыводитьОкноОжидания = Истина) + + ФоновоеЗадание = СформироватьОтчетОЗагрузке(ФильтрОтчет, НеВыводитьОкноОжидания); + + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + НастройкиОжидания.ВыводитьОкноОжидания = НЕ НеВыводитьОкноОжидания; + НастройкиОжидания.ПолучатьРезультат = Истина; + + Обработчик = Новый ОписаниеОповещения("ПослеСозданияОтчета", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(ФоновоеЗадание, Обработчик, НастройкиОжидания); + +КонецПроцедуры + +&НаКлиенте +Процедура ПоказатьОтчет(АдресРезультата) + + Отчет = ПолучитьИзВременногоХранилища(АдресРезультата); Если Элементы.СтраницыПомощника.ТекущаяСтраница <> Элементы.ОтчетОЗагрузкеДанных Тогда ВыполнитьШагОтчетОЗагрузкеДанныхКлиент(); @@ -1051,100 +952,11 @@ КонецПроцедуры &НаКлиенте -Процедура ФоновоеЗаданиеСозданиеОтчетаНаКлиенте() - - РезультатВыполнения = ФоновоеЗаданиеОтчетПолучитьРезультат(); - Если РезультатВыполнения.ФоновоеЗаданиеВыполнено Тогда - Если ФормаДлительнойОперации <> Неопределено - И ФормаДлительнойОперации.Открыта() - И ФормаДлительнойОперации.ИдентификаторЗадания = ФоновоеЗаданиеИдентификатор Тогда - ДлительныеОперацииКлиент.ЗакрытьФормуДлительнойОперации(ФормаДлительнойОперации); - КонецЕсли; - - Результат = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); - ПоказатьОтчет(Результат); - ПодтверждениеЗакрытияФормы = Истина; - ИначеЕсли РезультатВыполнения.ЕстьОшибки Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(Результат.ТекстОшибки); - ПерейтиКСтранице(Элементы.СопоставлениеЗагружаемыхДанных); - Иначе - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ПодключитьОбработчикОжидания("ФоновоеЗаданиеСозданиеОтчетаНаКлиенте", ПараметрыОбработчика.ТекущийИнтервал, Истина); - КонецЕсли; - -КонецПроцедуры - -&НаСервере -Функция ФоновоеЗаданиеЗагрузкаФайлаПолучитьРезультат() - Результат = Новый Структура("ФоновоеЗаданиеВыполнено, ЕстьОшибки, ТекстОшибки", Ложь, Ложь); - Попытка - Результат.ФоновоеЗаданиеВыполнено = ДлительныеОперации.ЗаданиеВыполнено(ФоновоеЗаданиеИдентификатор); - Исключение - Результат.ЕстьОшибки = Истина; - ТекстСообщенияОбОшибке = НСтр("ru = 'Не удалось произвести загрузку данных. - |Возможная причина: Загружаемые данные некорректные. - |Техническая информация: %1'"); - Результат.ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщенияОбОшибке, КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); - ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииЗагрузкаДанныхИзФайла(), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - КонецПопытки; - - Возврат Результат; -КонецФункции - -&НаСервере -Функция ФоновоеЗаданиеСопоставлениеПолучитьРезультат() - Результат = Новый Структура("ФоновоеЗаданиеВыполнено, ЕстьОшибки, ТекстОшибки", Ложь, Ложь); - Попытка - Результат.ФоновоеЗаданиеВыполнено = ДлительныеОперации.ЗаданиеВыполнено(ФоновоеЗаданиеИдентификатор); - Исключение - Результат.ЕстьОшибки = Истина; - ТекстСообщенияОбОшибке = НСтр("ru = 'Не удалось произвести сопоставление данных. - |Возможная причина: Загружаемые данные некорректные. - |Техническая информация: %1'"); - Результат.ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщенияОбОшибке, КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); - ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииЗагрузкаДанныхИзФайла(), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - КонецПопытки; - - Если Результат.ФоновоеЗаданиеВыполнено Тогда - ВыполнитьШагСопоставлениеЗагружаемыхДанныхПослеСопоставленияНаСервере(); - Иначе - ФоновоеЗаданиеПрочитатьПромежуточныйРезультат(Результат); - КонецЕсли; - Возврат Результат; -КонецФункции - -&НаСервере -Функция ФоновоеЗаданиеОтчетПолучитьРезультат() - - Результат = Новый Структура("ФоновоеЗаданиеВыполнено, ЕстьОшибки, ТекстОшибки", Ложь, Ложь); - Попытка - Результат.ФоновоеЗаданиеВыполнено = ДлительныеОперации.ЗаданиеВыполнено(ФоновоеЗаданиеИдентификатор); - Исключение - Результат.ЕстьОшибки = Истина; - ТекстСообщенияОбОшибке = НСтр("ru = 'Не удалось сформировать отчет. - |Возможная причина: Загружаемые данные некорректные. - |Техническая информация: %1'"); - Результат.ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщенияОбОшибке, КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); - ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрацииЗагрузкаДанныхИзФайла(), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - КонецПопытки; - - Если НЕ Результат.ФоновоеЗаданиеВыполнено Тогда - ФоновоеЗаданиеПрочитатьПромежуточныйРезультат(Результат); - КонецЕсли; - - Возврат Результат; - -КонецФункции - -&НаСервере -Процедура ФоновоеЗаданиеПрочитатьПромежуточныйРезультат(Результат) - Прогресс = ДлительныеОперации.ПрочитатьПрогресс(ФоновоеЗаданиеИдентификатор); - Если Прогресс <> Неопределено Тогда - ФоновоеЗаданиеПроцент = Прогресс.Процент; - КонецЕсли; +Процедура ВывестиСообщениеОбОшибке(ТекстОшибкиДляПользователя, ТехническаяИнформация) + ТекстСообщенияОбОшибке = ТекстОшибкиДляПользователя + Символы.ПС + + НСтр("ru = 'Возможная причина: Загружаемые данные некорректные. + |Техническая информация: %1'"); + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СтрШаблон(ТекстСообщенияОбОшибке, ТехническаяИнформация)); КонецПроцедуры #КонецОбласти @@ -1202,18 +1014,16 @@ ПоказатьСтатистикуПоСопоставлениюЗагрузкаИзФайла(); Если ТипЗагрузки = "УниверсальнаяЗагрузка" Тогда - УстановитьОформлениеДляСтраницыСопоставления(Истина, Элементы.ПояснениеДляУниверсальнойЗагрузки, Истина, НСтр("ru = 'Загрузить данные >'")); - Элементы.ПояснениеДляУниверсальнойЗагрузки.Видимость = Ложь; + УстановитьОформлениеДляСтраницыСопоставления(Истина, Элементы.ПояснениеДляСопоставленияДанных, Истина, НСтр("ru = 'Загрузить данные >'")); ИначеЕсли ТипЗагрузки = "ТабличнаяЧасть" Тогда - Отбор = Новый Структура("РезультатСопоставленияСтроки", "НеСопоставлен"); - Если ТаблицаСопоставленияДанных.НайтиСтроки(Отбор).Количество() = 0 Тогда + Если ТаблицаСопоставленияДанных.НайтиСтроки(Новый Структура("РезультатСопоставленияСтроки", "НеСопоставлен")).Количество() = 0 + И ТаблицаСопоставленияДанных.НайтиСтроки(Новый Структура("РезультатСопоставленияСтроки", "Неоднозначность")).Количество() = 0 Тогда // Все строки сопоставлены ПереходКСледующемуШагуЗагрузкиДанных(); КонецЕсли; УстановитьОформлениеДляСтраницыСопоставления(Ложь, Элементы.ПояснениеДляТабличнойЧасти, Истина, НСтр("ru = 'Загрузить данные'")); УстановитьОформлениеДляПолейСНеоднозначностью(Новый Структура("РезультатСопоставленияСтроки", "Неоднозначность")); - ИначеЕсли ТипЗагрузки = "ВнешняяЗагрузка" Тогда УстановитьОформлениеДляСтраницыСопоставления(Ложь, Элементы.ПояснениеДляПрикладнойЗагрузки, Ложь, НСтр("ru = 'Загрузить данные >'")); Иначе @@ -1221,8 +1031,7 @@ КонецЕсли; КонецЕсли; - Элементы.Назад.Доступность = Истина; - Элементы.Далее.Доступность = Истина; + ДоступностьКнопокКомандойПанели(Истина); КонецПроцедуры @@ -1231,18 +1040,15 @@ Элементы.СписокКолонокСопоставления.Видимость = ВидимостьКнопкиСопоставление; Элементы.Назад.Видимость = Истина; - Элементы.ПояснениеДляУниверсальнойЗагрузки.Видимость = Ложь; Элементы.ПояснениеДляПрикладнойЗагрузки.Видимость = Ложь; Элементы.ПояснениеДляТабличнойЧасти.Видимость = Ложь; Элементы.ПояснениеДляПоискаСсылок.Видимость = Ложь; - Если ЭлементДляПоясняющегоТекста = Элементы.ПояснениеДляУниверсальнойЗагрузки Тогда - Элементы.ПояснениеДляУниверсальнойЗагрузки.Видимость = Истина; - ИначеЕсли ЭлементДляПоясняющегоТекста = Элементы.ПояснениеДляТабличнойЧасти Тогда + Если ЭлементДляПоясняющегоТекста = Элементы.ПояснениеДляТабличнойЧасти Тогда Элементы.ПояснениеДляТабличнойЧасти.Видимость = Истина; ИначеЕсли ЭлементДляПоясняющегоТекста = Элементы.ПояснениеДляПоискаСсылок Тогда Элементы.ПояснениеДляПоискаСсылок.Видимость = Истина; Элементы.ПояснениеДляСопоставленияДанных.ОтображатьЗаголовок = Ложь; - Иначе + ИначеЕсли ЭлементДляПоясняющегоТекста = Элементы.ПояснениеДляПрикладнойЗагрузки Тогда Элементы.ПояснениеДляПрикладнойЗагрузки.Видимость = Истина; КонецЕсли; @@ -1349,56 +1155,20 @@ #Область ШагОтчетОЗагрузке &НаСервере -Процедура ЗаписатьЗагружаемыеДанныеОтчет(ФоновоеЗадание = Ложь) +Процедура ЗаписатьЗагружаемыеДанныеОтчет() СопоставленныеДанные = РеквизитФормыВЗначение("ТаблицаСопоставленияДанных"); - Если ТипЗагрузки = "УниверсальнаяЗагрузка" Тогда - - ПараметрыЗагрузки = Новый Структура(); - ПараметрыЗагрузки.Вставить("СоздаватьЕслиНеСопоставлено", СоздаватьЕслиНеСопоставлено); - ПараметрыЗагрузки.Вставить("ОбновлятьСуществующие", ОбновлятьСуществующие); - - ПараметрыВызоваСервера = Новый Структура(); - ПараметрыВызоваСервера.Вставить("СопоставленныеДанные", СопоставленныеДанные); - ПараметрыВызоваСервера.Вставить("ПараметрыЗагрузки", ПараметрыЗагрузки); - ПараметрыВызоваСервера.Вставить("ИмяОбъектаСопоставления", ИмяОбъектаСопоставления); - ТаблицаИнформацияПоКолонкам = РеквизитФормыВЗначение("ИнформацияПоКолонкам"); - ПараметрыВызоваСервера.Вставить("ИнформацияПоКолонкам", ТаблицаИнформацияПоКолонкам); - - РезультатФоновогоЗадания = ДлительныеОперации.ЗапуститьВыполнениеВФоне(УникальныйИдентификатор, - "Обработки.ЗагрузкаДанныхИзФайла.ЗаписатьСопоставленныеДанные", - ПараметрыВызоваСервера, - НСтр("ru = 'Подсистема ЗагрузкаДанныхИзФайла: Запись загружаемых данных'")); - - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - ФоновоеЗаданиеАдресХранилища = РезультатФоновогоЗадания.АдресХранилища; - СопоставленныеДанные = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); - Иначе - ФоновоеЗадание = Истина; - ФоновоеЗаданиеИдентификатор = РезультатФоновогоЗадания.ИдентификаторЗадания; - ФоновоеЗаданиеАдресХранилища = РезультатФоновогоЗадания.АдресХранилища; - КонецЕсли; - ИначеЕсли ТипЗагрузки = "ВнешняяЗагрузка" Тогда + Если ТипЗагрузки = "ВнешняяЗагрузка" Тогда ЗаписатьСопоставленныеДанныеВнешняяОбработка(СопоставленныеДанные); + ЗначениеВРеквизитФормы(СопоставленныеДанные, "ТаблицаСопоставленияДанных"); Иначе ЗаписатьСопоставленныеДанныеПрикладнаяЗагрузка(СопоставленныеДанные); - КонецЕсли; - - Если НЕ ФоновоеЗадание Тогда ЗначениеВРеквизитФормы(СопоставленныеДанные, "ТаблицаСопоставленияДанных"); КонецЕсли; - Элементы.ОткрытьСправочникПослеЗакрытияПомощника.Заголовок = - СтрЗаменить(Элементы.ОткрытьСправочникПослеЗакрытияПомощника.Заголовок, "%1", - ПредставлениеСправочника(ИмяОбъектаСопоставления)); - Элементы.ПояснениеОтчетаОЗагрузке.Заголовок = - СтрЗаменить(Элементы.ПояснениеОтчетаОЗагрузке.Заголовок, "%1", ПредставлениеСправочника(ИмяОбъектаСопоставления)); - - ТипОтчета = "ВсеЭлементы"; КонецПроцедуры - &НаКлиенте Процедура ВыполнитьШагОтчетОЗагрузкеДанныхКлиент() @@ -1420,22 +1190,24 @@ ТаблицаИнформацияПоКолонкам.Очистить(); Индекс = 1; Для каждого Колонка Из КолонкиМакета Цикл - Строка = ТаблицаИнформацияПоКолонкам.Добавить(); - Строка.ИмяКолонки = Колонка.Имя; - Строка.Ширина = 20; - Если Колонка.Позиция = 0 Тогда - Строка.Позиция = Индекс; - Индекс = Индекс + 1; - Иначе - Строка.Позиция = Колонка.Позиция; - Индекс = Колонка.Позиция + 1; - КонецЕсли; - ЗаполнитьЗначенияСвойств(Строка, Колонка); - Строка.Видимость = Истина; - Строка.ПредставлениеКолонки = Колонка.Заголовок; - Строка.ТипКолонки = Колонка.Тип; - Если ПустаяСтрока(Строка.Группа) Тогда - Строка.Группа = Колонка.Заголовок; + Если Колонка.Позиция <> Неопределено Тогда + Строка = ТаблицаИнформацияПоКолонкам.Добавить(); + Строка.ИмяКолонки = Колонка.Имя; + Строка.Ширина = 20; + Если Колонка.Позиция = 0 Тогда + Строка.Позиция = Индекс; + Индекс = Индекс + 1; + Иначе + Строка.Позиция = Колонка.Позиция; + Индекс = Колонка.Позиция + 1; + КонецЕсли; + ЗаполнитьЗначенияСвойств(Строка, Колонка); + Строка.Видимость = Истина; + Строка.ПредставлениеКолонки = Колонка.Заголовок; + Строка.ТипКолонки = Колонка.Тип; + Если ПустаяСтрока(Строка.Группа) Тогда + Строка.Группа = Колонка.Заголовок; + КонецЕсли; КонецЕсли; КонецЦикла; @@ -1464,9 +1236,33 @@ КонецПроцедуры +&НаКлиенте +Функция УстановитьОформлениеДляПолейСНеоднозначностью(Отбор) + + Строки = ТаблицаСопоставленияДанных.НайтиСтроки(Отбор); + Если Строки.Количество() > 0 Тогда + СписокКолонок = Новый Массив; + Для каждого СтрокаДанных Из Строки Цикл + Если СтрСравнить(СтрокаДанных.РезультатСопоставленияСтроки, "Неоднозначность") = 0 Тогда + МассивКолонок = СтрРазделить(СтрокаДанных.ОписаниеОшибки, ";", Ложь); + Для каждого ИмяКолонки Из МассивКолонок Цикл + СписокКолонок.Добавить(ИмяКолонки); + КонецЦикла; + КонецЕсли; + КонецЦикла; + Иначе + Возврат Ложь; + КонецЕсли; + + УстановитьОформлениеДанных(СписокКолонок); + Возврат Истина; +КонецФункции + + &НаСервере Процедура УстановитьОформлениеДанных(СписокКолонок = Неопределено) + Если ТипЗагрузки = "ВставкаИзБуфераОбмена" Тогда ТекстОбъектНеНайден = НСтр("ru='<Не найден>'"); ЦветОбъектНеНайден = ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет; @@ -1486,7 +1282,7 @@ ЭлементОтбора = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТаблицаСопоставленияДанных.ОбъектСопоставления"); - ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено; + ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено; ЭлементОтбора.Использование = Истина; ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветОбъектНеНайден); ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра("Текст", ТекстОбъектНеНайден); @@ -1509,7 +1305,7 @@ Иначе ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить(); ПолеОформления = ЭлементУсловногоОформления.Поля.Элементы.Добавить(); - ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("ОбъектСопоставления"); + ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("ТаблицаСопоставленияДанных_ОбъектСопоставления"); ПолеОформления.Использование = Истина; ЭлементОтбора = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТаблицаСопоставленияДанных.РезультатСопоставленияСтроки"); @@ -1519,6 +1315,7 @@ ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветНеоднозначность); ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина); ЭлементУсловногоОформления.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru='<неоднозначность>'")); + КонецЕсли; КонецПроцедуры @@ -1895,7 +1692,7 @@ Процедура СопоставитьДанныеВнешняяОбработка(ТаблицаСопоставленияДанныхСервер ) Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки"); - ВнешнийОбъект = МодульДополнительныеОтчетыИОбработки.ПолучитьОбъектВнешнейОбработки(ВнешняяОбработкаСсылка); + ВнешнийОбъект = МодульДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(ВнешняяОбработкаСсылка); ВнешнийОбъект.СопоставитьЗагружаемыеДанныеИзФайла(ИдентификаторКоманды, ТаблицаСопоставленияДанныхСервер); Для каждого Строка Из ТаблицаСопоставленияДанныхСервер Цикл @@ -1911,7 +1708,7 @@ Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки"); - ВнешнийОбъект = МодульДополнительныеОтчетыИОбработки.ПолучитьОбъектВнешнейОбработки(ВнешняяОбработкаСсылка); + ВнешнийОбъект = МодульДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(ВнешняяОбработкаСсылка); КонецЕсли; Отказ = Ложь; @@ -1929,7 +1726,7 @@ &НаСервере Процедура ЗаписатьСопоставленныеДанныеПрикладнаяЗагрузка(СопоставленныеДанные) - МенеджерОбъекта = МенеджерОбъекта(ИмяОбъектаСопоставления); + МенеджерОбъекта = МенеджерОбъекта(ИмяОбъектаСопоставления); Отказ = Ложь; ПараметрыЗагрузки = Новый Структура(); @@ -1968,36 +1765,6 @@ #КонецОбласти -&НаСервере -Процедура СформироватьОтчетОЗагрузке(ТипОтчета = "ВсеЭлементы", ФоновоеЗадание = Ложь, РассчитыватьПроцентПрогресса = Ложь) - - СопоставленныеДанные = РеквизитФормыВЗначение("ТаблицаСопоставленияДанных"); - ТаблицаИнформацияПоКолонкам = РеквизитФормыВЗначение("ИнформацияПоКолонкам"); - - ПараметрыВызоваСервера = Новый Структура(); - ПараметрыВызоваСервера.Вставить("ТаблицаОтчет", ТаблицаОтчет); - ПараметрыВызоваСервера.Вставить("ТипОтчета", ТипОтчета); - ПараметрыВызоваСервера.Вставить("СопоставленныеДанные", СопоставленныеДанные); - ПараметрыВызоваСервера.Вставить("ШаблонСДанными", ШаблонСДанными); - ПараметрыВызоваСервера.Вставить("ИмяОбъектаСопоставления", ИмяОбъектаСопоставления); - ПараметрыВызоваСервера.Вставить("РассчитыватьПроцентПрогресса", РассчитыватьПроцентПрогресса); - ПараметрыВызоваСервера.Вставить("ИнформацияПоКолонкам", ТаблицаИнформацияПоКолонкам); - - РезультатФоновогоЗадания = ДлительныеОперации.ЗапуститьВыполнениеВФоне(УникальныйИдентификатор, - "Обработки.ЗагрузкаДанныхИзФайла.СформироватьОтчетОЗагрузкеФон", - ПараметрыВызоваСервера, - НСтр("ru = 'Подсистема ЗагрузкаДанныхИзФайла: Выполнение серверного метода обработки сформировать отчет о загрузке'")); - - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - ФоновоеЗаданиеАдресХранилища = РезультатФоновогоЗадания.АдресХранилища; - Иначе - ФоновоеЗадание = Истина; - ФоновоеЗаданиеИдентификатор = РезультатФоновогоЗадания.ИдентификаторЗадания; - ФоновоеЗаданиеАдресХранилища = РезультатФоновогоЗадания.АдресХранилища; - КонецЕсли; - -КонецПроцедуры - &НаСервере Функция ОбластьЗаголовкаШаблонаТаблицы(Шаблон) МетаданныеОбластьЗаголовокТаблицы = Шаблон.Области.Найти("Шапка"); @@ -2433,14 +2200,6 @@ Возврат МассивСсылок; КонецФункции -// Для внутреннего использования -// -Функция СобытиеЖурналаРегистрацииЗагрузкаДанныхИзФайла() - - Возврат НСтр("ru = 'Загрузка данных из файла'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); - -КонецФункции - ////////////////////// Работа с файлами ////////////////////// &НаКлиенте @@ -2454,40 +2213,51 @@ Если ЗначениеЗаполнено(ВыбранныйФайл.Имя) Тогда Если РасширениеФайла = "csv" Тогда СохранитьТаблицуВCSVФайл(ПутьКФайлу); - ИначеЕсли РасширениеФайла = "xlsx" Тогда - ШаблонСДанными.Записать(ПутьКФайлу, ТипФайлаТабличногоДокумента.XLSX); - ИначеЕсли РасширениеФайла = "mxl" Тогда - ШаблонСДанными.Записать(ПутьКФайлу, ТипФайлаТабличногоДокумента.MXL); - ИначеЕсли РасширениеФайла = "xls" Тогда - ШаблонСДанными.Записать(ПутьКФайлу, ТипФайлаТабличногоДокумента.XLS); - ИначеЕсли РасширениеФайла = "ods" Тогда - ШаблонСДанными.Записать(ПутьКФайлу, ТипФайлаТабличногоДокумента.ODS); Иначе - ПоказатьПредупреждение(, НСтр("ru = 'Шаблон файла не был сохранен.'")); + Если РасширениеФайла = "xlsx" Тогда + ТипФайла = ТипФайлаТабличногоДокумента.XLSX; + ИначеЕсли РасширениеФайла = "mxl" Тогда + ТипФайла = ТипФайлаТабличногоДокумента.MXL; + ИначеЕсли РасширениеФайла = "xls" Тогда + ТипФайла = ТипФайлаТабличногоДокумента.XLS; + ИначеЕсли РасширениеФайла = "ods" Тогда + ТипФайла = ТипФайлаТабличногоДокумента.ODS; + Иначе + ПоказатьПредупреждение(, НСтр("ru = 'Шаблон файла не был сохранен.'")); + Возврат; + КонецЕсли; + Оповещение = Новый ОписаниеОповещения("ПослеЗаписиТабличногоДокументаВФайл", ЭтотОбъект); + ШаблонСДанными.НачатьЗапись(Оповещение, ПутьКФайлу, ТипФайла); КонецЕсли; КонецЕсли; КонецЕсли; КонецПроцедуры +&НаКлиенте +Процедура ПослеЗаписиТабличногоДокументаВФайл(Результат, ДополнительныеПараметры) Экспорт + Если Результат = Ложь Тогда + ПоказатьПредупреждение(, НСтр("ru = 'Шаблон файла не был сохранен.'")); + КонецЕсли; +КонецПроцедуры + &НаКлиенте Процедура ЗагрузитьДанныеИзФайлаВШаблон(Результат, ДополнительныеПараметры) Экспорт Если Результат <> Неопределено Тогда + ДоступностьКнопокКомандойПанели(Ложь); ИмяФайла = Результат[0].Имя; АдресВременногоХранилища = Результат[0].Хранение; - - Расширение = ОбщегоНазначенияКлиентСервер.РасширениеБезТочки( - ОбщегоНазначенияКлиентСервер.ПолучитьРасширениеИмениФайла(ИмяФайла)); - ФоновоеЗадание = Ложь; - ЗагрузитьФайлСДаннымиВТабличныйДокументНаСервере(АдресВременногоХранилища, Расширение, ФоновоеЗадание); - Если ФоновоеЗадание Тогда - ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ПодключитьОбработчикОжидания("ФоновоеЗаданиеЗагрузкаФайлаНаКлиенте", 1, Истина); - ПараметрыОбработчика.МаксимальныйИнтервал = 5; - ФормаДлительнойОперации = ДлительныеОперацииКлиент.ОткрытьФормуДлительнойОперации(ЭтотОбъект, ФоновоеЗаданиеИдентификатор); - Иначе - ПереходКСледующемуШагуЗагрузкиДанных(); - КонецЕсли; + Расширение = ОбщегоНазначенияКлиентСервер.РасширениеБезТочки(ОбщегоНазначенияКлиентСервер.ПолучитьРасширениеИмениФайла(ИмяФайла)); + Элементы.СтраницыПомощника.ТекущаяСтраница = Элементы.ДлительныеОперации; + ОповещениеОПрогрессеВыполнения = Новый ОписаниеОповещения("ПрогрессВыполнения", ЭтотОбъект); + + ФоновоеЗадание = ЗагрузитьФайлСДаннымиВТабличныйДокументНаСервере(АдресВременногоХранилища, Расширение); + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + НастройкиОжидания.ВыводитьОкноОжидания = Ложь; + НастройкиОжидания.ПолучатьРезультат = Истина; + НастройкиОжидания.ОповещениеОПрогрессеВыполнения = ОповещениеОПрогрессеВыполнения; + Обработчик = Новый ОписаниеОповещения("ПослеЗагрузкиФайлаСДаннымиВТабличныйДокумент", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(ФоновоеЗадание, Обработчик, НастройкиОжидания); КонецЕсли; КонецПроцедуры @@ -2520,7 +2290,6 @@ АдресВоВременномХранилище = ПоместитьВоВременноеХранилище(ДвоичныеДанные, АдресВоВременномХранилище); УдалитьФайлы(ИмяФайла); - КонецПроцедуры &НаСервереБезКонтекста @@ -2564,38 +2333,6 @@ КонецПроцедуры -&НаСервере -Процедура ЗагрузитьФайлСДаннымиВТабличныйДокументНаСервере(АдресВременногоХранилища, Расширение, ФоновоеЗадание = Ложь) - ИмяВременногоФайла=ПолучитьИмяВременногоФайла(Расширение); - ДвоичныеДанные = ПолучитьИЗВременногоХранилища(АдресВременногоХранилища); - ДвоичныеДанные.Записать(ИмяВременногоФайла); - - ОчисткаШаблонСДанными(); - - ПараметрыВызоваСервера = Новый Структура(); - ПараметрыВызоваСервера.Вставить("Расширение", Расширение); - ПараметрыВызоваСервера.Вставить("ШаблонСДанными", ШаблонСДанными); - ПараметрыВызоваСервера.Вставить("ИмяВременногоФайла", ИмяВременногоФайла); - ТаблицаИнформацияПоКолонкам = РеквизитФормыВЗначение("ИнформацияПоКолонкам"); - ПараметрыВызоваСервера.Вставить("ИнформацияПоКолонкам", ТаблицаИнформацияПоКолонкам); - - РезультатФоновогоЗадания = ДлительныеОперации.ЗапуститьВыполнениеВФоне(УникальныйИдентификатор, - "Обработки.ЗагрузкаДанныхИзФайла.ЗагрузитьФайлВТаблицу", - ПараметрыВызоваСервера, - НСтр("ru = 'Подсистема ЗагрузкаДанныхИзФайла: Выполнение серверного метода загрузка данных из файла'")); - - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - ФоновоеЗаданиеАдресХранилища = РезультатФоновогоЗадания.АдресХранилища; - ШаблонСДанными = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); - ЗагрузкаДанныхИзФайла.ДобавитьСтатистическуюИнформацию("ЗагрузкаИзВнешнегоФайла." + Расширение); - Иначе - ФоновоеЗадание = Истина; - ФоновоеЗаданиеИдентификатор = РезультатФоновогоЗадания.ИдентификаторЗадания; - ФоновоеЗаданиеАдресХранилища = РезультатФоновогоЗадания.АдресХранилища; - КонецЕсли; - -КонецПроцедуры - &НаКлиенте Процедура ПослеВызоваФормыИзменитьБланк(Результат, Параметр) Экспорт @@ -2668,7 +2405,6 @@ ПереходКСледующемуШагуЗагрузкиДанных(); КонецПроцедуры - &НаКлиенте Процедура ВидЗагрузкиДанныхПередНачаломИзменения(Элемент, Отказ) Отказ = Истина; @@ -2764,7 +2500,182 @@ #КонецОбласти +#Область ФоновыеЗадания + +// Фоновая загрузка файла с данными + +&НаСервере +Функция ЗагрузитьФайлСДаннымиВТабличныйДокументНаСервере(АдресВременногоХранилища, Расширение) + + ИмяВременногоФайла = ПолучитьИмяВременногоФайла(Расширение); + ДвоичныеДанные = ПолучитьИЗВременногоХранилища(АдресВременногоХранилища); + ДвоичныеДанные.Записать(ИмяВременногоФайла); + + ОчисткаШаблонСДанными(); + + ПараметрыВызоваСервера = Новый Структура(); + ПараметрыВызоваСервера.Вставить("Расширение", Расширение); + ПараметрыВызоваСервера.Вставить("ШаблонСДанными", ШаблонСДанными); + ПараметрыВызоваСервера.Вставить("ИмяВременногоФайла", ИмяВременногоФайла); + ПараметрыВызоваСервера.Вставить("ИнформацияПоКолонкам", РеквизитФормыВЗначение("ИнформацияПоКолонкам")); + + ПараметрыВыполненияВФоне = ДлительныеОперации.ПараметрыВыполненияВФоне(ЭтотОбъект.УникальныйИдентификатор); + ПараметрыВыполненияВФоне.НаименованиеФоновогоЗадания = НСтр("ru = 'Подсистема ЗагрузкаДанныхИзФайла: Выполнение серверного метода загрузка данных из файла'"); + + ФоновоеЗадание = ДлительныеОперации.ВыполнитьВФоне("Обработки.ЗагрузкаДанныхИзФайла.ЗагрузитьФайлВТаблицу", + ПараметрыВызоваСервера, ПараметрыВыполненияВФоне); + + Возврат ФоновоеЗадание; + +КонецФункции + +&НаКлиенте +Процедура ПослеЗагрузкиФайлаСДаннымиВТабличныйДокумент(ФоновоеЗадание, ДополнительныеПараметры) Экспорт + + Если ФоновоеЗадание.Статус = "Выполнено" Тогда + ШаблонСДанными = ПолучитьИзВременногоХранилища(ФоновоеЗадание.АдресРезультата); + СопоставитьЗагружаемыеДанные(); + Иначе + ВывестиСообщениеОбОшибке(НСтр("ru = 'Не удалось произвести загрузку данных.'"), ФоновоеЗадание.КраткоеПредставлениеОшибки); + КонецЕсли; + +КонецПроцедуры + +// Фоновое сопоставление загруженных данных + +&НаСервере +Функция СопоставитьЗагружаемыеДанныеНаСервереУниверсальнаяЗагрузка() + + ЗагрузкаДанныхИзФайла.ДобавитьСтатистическуюИнформацию(?(ВариантЗагрузки = 0, + "ВариантЗагрузки.ЗаполнениеТаблицы", "ВариантЗагрузки.ИзВнешнегоФайла")); + + ПараметрыВызоваСервера = Новый Структура(); + ПараметрыВызоваСервера.Вставить("ШаблонСДанными", ШаблонСДанными); + ПараметрыВызоваСервера.Вставить("ТаблицаСопоставления", РеквизитФормыВЗначение("ТаблицаСопоставленияДанных")); + ПараметрыВызоваСервера.Вставить("ИнформацияПоКолонкам", РеквизитФормыВЗначение("ИнформацияПоКолонкам")); + + ПараметрыВыполненияВФоне = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполненияВФоне.НаименованиеФоновогоЗадания = НСтр("ru = 'Заполнение таблицы сопоставления загруженными данными из файла.'"); + + ФоновоеЗадание = ДлительныеОперации.ВыполнитьВФоне("Обработки.ЗагрузкаДанныхИзФайла.ЗаполнитьТаблицуСопоставленияДаннымиИзШаблонаФон", + ПараметрыВызоваСервера, ПараметрыВыполненияВФоне); + + + Возврат ФоновоеЗадание; +КонецФункции + +&НаКлиенте +Процедура ПослеСопоставленияЗагружаемыхДанных(ФоновоеЗадание, ДополнительныеПараметры) Экспорт + + Если ФоновоеЗадание.Статус = "Выполнено" Тогда + ВыполнитьШагСопоставлениеЗагружаемыхДанныхПослеСопоставленияНаСервере(ФоновоеЗадание.АдресРезультата); + ВыполнитьШагСопоставлениеЗагружаемыхДанныхКлиент(); + ИначеЕсли ФоновоеЗадание.Статус = "Ошибка" Тогда + ВывестиСообщениеОбОшибке(НСтр("ru = 'Не удалось произвести сопоставление данных.'"), + ФоновоеЗадание.КраткоеПредставлениеОшибки); + КонецЕсли; + +КонецПроцедуры + +// Фоновая запись загружаемых данных + +&НаСервере +Функция ЗаписатьЗагружаемыеДанныеОтчетУниверсальнаяЗагрузка() + + ПараметрыЗагрузки = Новый Структура(); + ПараметрыЗагрузки.Вставить("СоздаватьЕслиНеСопоставлено", СоздаватьЕслиНеСопоставлено); + ПараметрыЗагрузки.Вставить("ОбновлятьСуществующие", ОбновлятьСуществующие); + + ПараметрыВызоваСервера = Новый Структура(); + ПараметрыВызоваСервера.Вставить("СопоставленныеДанные", РеквизитФормыВЗначение("ТаблицаСопоставленияДанных")); + ПараметрыВызоваСервера.Вставить("ПараметрыЗагрузки", ПараметрыЗагрузки); + ПараметрыВызоваСервера.Вставить("ИмяОбъектаСопоставления", ИмяОбъектаСопоставления); + ПараметрыВызоваСервера.Вставить("ИнформацияПоКолонкам", РеквизитФормыВЗначение("ИнформацияПоКолонкам")); + + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Запись загруженных данных из файла'"); + + Возврат ДлительныеОперации.ВыполнитьВФоне("Обработки.ЗагрузкаДанныхИзФайла.ЗаписатьСопоставленныеДанные", + ПараметрыВызоваСервера, ПараметрыВыполнения); + +КонецФункции + +&НаКлиенте +Процедура ПослеЗаписиЗагружаемыхДанныхОтчет(ФоновоеЗадание, ДополнительныеПараметры) Экспорт + + Если ФоновоеЗадание.Статус = "Ошибка" Тогда + ВывестиСообщениеОбОшибке(НСтр("ru = 'Не удалось произвести запись данных.'"), ФоновоеЗадание.КраткоеПредставлениеОшибки); + ИначеЕсли ФоновоеЗадание.Статус = "Выполнено" Тогда + ЗаполнитьТаблицуСопоставленияИзВременногоХранилища(ФоновоеЗадание.АдресРезультата); + ФоновоеЗаданиеОтчетНаКлиенте(); + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура ЗаполнитьТаблицуСопоставленияИзВременногоХранилища(АдресВоВременномХранилище) + СопоставленныеДанные = ПолучитьИзВременногоХранилища(АдресВоВременномХранилище); + ЗначениеВРеквизитФормы(СопоставленныеДанные, "ТаблицаСопоставленияДанных"); +КонецПроцедуры +// Фоновое формирование отчета +&НаСервере +Функция СформироватьОтчетОЗагрузке(ТипОтчета = "ВсеЭлементы", РассчитыватьПроцентПрогресса = Ложь) + + СопоставленныеДанные = РеквизитФормыВЗначение("ТаблицаСопоставленияДанных"); + ТаблицаИнформацияПоКолонкам = РеквизитФормыВЗначение("ИнформацияПоКолонкам"); + + ПараметрыВызоваСервера = Новый Структура(); + ПараметрыВызоваСервера.Вставить("ТаблицаОтчет", ТаблицаОтчет); + ПараметрыВызоваСервера.Вставить("ТипОтчета", ТипОтчета); + ПараметрыВызоваСервера.Вставить("СопоставленныеДанные", СопоставленныеДанные); + ПараметрыВызоваСервера.Вставить("ШаблонСДанными", ШаблонСДанными); + ПараметрыВызоваСервера.Вставить("ИмяОбъектаСопоставления", ИмяОбъектаСопоставления); + ПараметрыВызоваСервера.Вставить("РассчитыватьПроцентПрогресса", РассчитыватьПроцентПрогресса); + ПараметрыВызоваСервера.Вставить("ИнформацияПоКолонкам", ТаблицаИнформацияПоКолонкам); + + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(ЭтотОбъект.УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Создание отчета о загрузке данных из файла'"); + + Возврат ДлительныеОперации.ВыполнитьВФоне("Обработки.ЗагрузкаДанныхИзФайла.СформироватьОтчетОЗагрузкеФон", + ПараметрыВызоваСервера, ПараметрыВыполнения); + +КонецФункции + +&НаКлиенте +Процедура ПослеСозданияОтчета(Задание, ДополнительныеРезультаты) Экспорт + + Если Задание.Статус = "Выполнено" Тогда + ПоказатьОтчет(Задание.АдресРезультата); + ПодтверждениеЗакрытияФормы = Истина; + ИначеЕсли Задание.Статус = "Ошибка" Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(Задание.КраткоеПредставлениеОшибки); + ПерейтиКСтранице(Элементы.СопоставлениеЗагружаемыхДанных); + Иначе + ПерейтиКСтранице(Элементы.СопоставлениеЗагружаемыхДанных); + КонецЕсли; + +КонецПроцедуры + +// вывод прогресса + +&НаКлиенте +Процедура ПрогрессВыполнения(Результат, ДополнительныеПараметры) Экспорт + + Если Результат.Статус = "Выполняется" Тогда + Прогресс = ПрочитатьПрогресс(Результат.ИдентификаторЗадания); + Если Прогресс <> Неопределено Тогда + ФоновоеЗаданиеПроцент = Прогресс.Процент; + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +&НаСервереБезКонтекста +Функция ПрочитатьПрогресс(ИдентификаторЗадания) + Возврат ДлительныеОперации.ПрочитатьПрогресс(ИдентификаторЗадания); +КонецФункции + +#КонецОбласти diff --git a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/РазрешенияНеоднозначностей/Form.form b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/РазрешенияНеоднозначностей/Form.form index b0054dc18..06d203073 100644 --- a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/РазрешенияНеоднозначностей/Form.form +++ b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/РазрешенияНеоднозначностей/Form.form @@ -33,7 +33,6 @@ true Label - true true Left @@ -67,7 +66,6 @@ true Label - true true Left @@ -102,7 +100,6 @@ true Label - true true Left @@ -483,7 +480,6 @@ Tree true true - 70 true 5 true @@ -889,11 +885,6 @@ ru Загружаемые данные - - ru - Группа данные из файла - - true ГруппаДанныеИзФайлаРасширеннаяПодсказка 5 @@ -925,7 +916,6 @@ OnCreateAtServer ПриСозданииНаСервере - 12 DontBlock true true @@ -1234,6 +1224,23 @@ + + ЗначенияЗагружаемыхКолонок + + + + Имя + + String + + + + + КолонкиСопоставления + + ValueList + + diff --git a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/РазрешенияНеоднозначностей/Module.bsl b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/РазрешенияНеоднозначностей/Module.bsl index ee468ab43..8d4985454 100644 --- a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/РазрешенияНеоднозначностей/Module.bsl +++ b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/РазрешенияНеоднозначностей/Module.bsl @@ -113,7 +113,7 @@ Попытка Строка[Колонка.Имя] = Элемент[Колонка.Имя]; Исключение - // Возможно падение при некорректном приведение типа + // Возможно падение при некорректном приведение типа. КонецПопытки; КонецЦикла; КонецЦикла; diff --git a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/РедактированиеБланка/Form.form b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/РедактированиеБланка/Form.form index 991cba8be..3c8d24c2c 100644 --- a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/РедактированиеБланка/Form.form +++ b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Forms/РедактированиеБланка/Form.form @@ -32,7 +32,6 @@ true Label - true true Left @@ -500,7 +499,6 @@ Left true - true 3 true true @@ -578,10 +576,6 @@ ru Группа командная панель - - ru - Группа командная панель - ГруппаКоманднаяПанельРасширеннаяПодсказка 15 @@ -606,7 +600,6 @@ OnCreateAtServer ПриСозданииНаСервере - 50 LockOwner true true @@ -1017,6 +1010,10 @@ + + ПараметрыЗагрузки + + diff --git a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/ManagerModule.bsl b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/ManagerModule.bsl index a7a1c4e75..0dec568eb 100644 --- a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/ManagerModule.bsl +++ b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/ManagerModule.bsl @@ -4,6 +4,9 @@ // Создает таблицу значений со списком команд во внешней обработке для загрузки из файла. // +// Параметры: +// ПараметрыРегистрации - Структура - Параметры внешнего объекта. +// Процедура ЗадатьКомандыЗагрузки(ПараметрыРегистрации) Экспорт ТаблицаКоманд = Новый ТаблицаЗначений; @@ -49,20 +52,6 @@ Возврат ПараметрыПоУмолчанию; КонецФункции -// Сообщает все требуемые сведения о процедуре загрузки данных из файла в Табличную часть. -Функция ПараметрыЗагрузкиИзФайлаВТЧ(ИмяТабличнойЧасти, ДополнительныеПараметры) - - ПараметрыПоУмолчанию= Новый Структура; - ПараметрыПоУмолчанию.Вставить("ОбязательныеКолонки", Новый Массив); - ПараметрыПоУмолчанию.Вставить("ИмяМакетаСШаблоном", "ЗагрузкаИзФайла"); - ПараметрыПоУмолчанию.Вставить("ИмяТабличнойЧасти", ИмяТабличнойЧасти); - ПараметрыПоУмолчанию.Вставить("ТипДанныхКолонки", Новый Соответствие); - ПараметрыПоУмолчанию.Вставить("ДополнительныеПараметры", ДополнительныеПараметры); - - Возврат ПараметрыПоУмолчанию; - -КонецФункции - // Сообщает все требуемые сведения о процедуре загрузки данных из файла для внешней обработки. // // Параметры: @@ -85,7 +74,7 @@ Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки"); - ВнешнийОбъект = МодульДополнительныеОтчетыИОбработки.ПолучитьОбъектВнешнейОбработки(СсылкаНаОбработку); + ВнешнийОбъект = МодульДополнительныеОтчетыИОбработки.ОбъектВнешнейОбработки(СсылкаНаОбработку); ВнешнийОбъект.ОпределитьПараметрыЗагрузкиДанныхИзФайла(ИмяКоманды, ПараметрыЗагрузки); ПараметрыЗагрузки.Вставить("Макет", ВнешнийОбъект.ПолучитьМакет(ПараметрыЗагрузки.ИмяМакетаСШаблоном)); КонецЕсли; @@ -96,6 +85,20 @@ #Область СлужебныеФункции +// Сообщает все требуемые сведения о процедуре загрузки данных из файла в Табличную часть. +Функция ПараметрыЗагрузкиИзФайлаВТЧ(ИмяТабличнойЧасти, ДополнительныеПараметры) + + ПараметрыПоУмолчанию= Новый Структура; + ПараметрыПоУмолчанию.Вставить("ОбязательныеКолонки", Новый Массив); + ПараметрыПоУмолчанию.Вставить("ИмяМакетаСШаблоном", "ЗагрузкаИзФайла"); + ПараметрыПоУмолчанию.Вставить("ИмяТабличнойЧасти", ИмяТабличнойЧасти); + ПараметрыПоУмолчанию.Вставить("ТипДанныхКолонки", Новый Соответствие); + ПараметрыПоУмолчанию.Вставить("ДополнительныеПараметры", ДополнительныеПараметры); + + Возврат ПараметрыПоУмолчанию; + +КонецФункции + Процедура СоздатьСписокСправочниковДляЗагрузки(СписокСправочниковДляЗагрузки) Экспорт ТипСтрока = Новый ОписаниеТипов("Строка"); @@ -315,7 +318,7 @@ Возврат Неопределено; КонецЕсли; - Запрос = Новый Запрос; // Проверка доступности документа с учетом RLS + Запрос = Новый Запрос; // Проверка доступности документа с учетом RLS. Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ | ДокументДляПроверки.Ссылка @@ -1307,19 +1310,23 @@ ОбластьЗаполнения = ОбластьВывода.Область(1, Счетчик, 1, Счетчик); Колонка = ИнформацияПоКолонкам.Найти(Счетчик, "Позиция"); Если Колонка <> Неопределено И Колонка.Видимость Тогда - ОбластьЗаполнения.Примечание.Текст = Строка(Счетчик); ОбластьЗаполнения.Параметр = Колонка.ИмяКолонки; ОбластьЗаполнения.Заполнение = ТипЗаполненияОбластиТабличногоДокумента.Параметр; КонецЕсли; КонецЦикла; + ВсегоСтрок = ЗагруженныеДанные.Количество(); + НомерСтроки = 1; Для Каждого Выборка Из ЗагруженныеДанные Цикл + УстановитьПроцентПрогресса(ВсегоСтрок, НомерСтроки); ОбластьВывода.Параметры.Заполнить(Выборка); ШаблонСДанными.Вывести(ОбластьВывода); + НомерСтроки = НомерСтроки + 1; КонецЦикла; КонецЕсли; АдресХранилища = ПоместитьВоВременноеХранилище(ШаблонСДанными, АдресХранилища); + УдалитьФайлы(ИмяВременногоФайла); КонецПроцедуры @@ -1412,7 +1419,7 @@ #Область ДлительныеОперации -// Запись сопоставленных данных в программу +// Запись сопоставленных данных в программу. // Процедура ЗаписатьСопоставленныеДанные(ПараметрыВыгрузки, АдресХранилища) Экспорт @@ -1457,25 +1464,17 @@ НеобходимоОчиститьКонтактнуюИнформацию = Ложь; НомерСтроки = НомерСтроки + 1; + + Если (ЗначениеЗаполнено(СтрокаТаблицы.ОбъектСопоставления) И НЕ ОбновлятьСуществующие) + ИЛИ (НЕ ЗначениеЗаполнено(СтрокаТаблицы.ОбъектСопоставления) И НЕ СоздаватьЕслиНеСопоставлено) Тогда + СтрокаТаблицы.РезультатСопоставленияСтроки = "Пропущен"; + УстановитьПроцентПрогресса(ВсегоСтрок, НомерСтроки); + Продолжить; + КонецЕсли; + НачатьТранзакцию(); Попытка - Если НЕ ЗначениеЗаполнено(СтрокаТаблицы.ОбъектСопоставления) Тогда - Если СоздаватьЕслиНеСопоставлено Тогда - ЭлементСправочника = МенеджерСправочника.СоздатьЭлемент(); - СтрокаТаблицы.ОбъектСопоставления = ЭлементСправочника; - СтрокаТаблицы.РезультатСопоставленияСтроки = "Создан"; - Иначе - СтрокаТаблицы.РезультатСопоставленияСтроки = "Пропущен"; - УстановитьПроцентПрогресса(ВсегоСтрок, НомерСтроки); - Продолжить; - КонецЕсли; - Иначе - Если НЕ ОбновлятьСуществующие Тогда - СтрокаТаблицы.РезультатСопоставленияСтроки = "Пропущен"; - УстановитьПроцентПрогресса(ВсегоСтрок, НомерСтроки); - Продолжить; - КонецЕсли; - + Если ЗначениеЗаполнено(СтрокаТаблицы.ОбъектСопоставления) Тогда Блокировка = Новый БлокировкаДанных; ЭлементБлокировки = Блокировка.Добавить("Справочник." + ИмяСправочника); ЭлементБлокировки.УстановитьЗначение("Ссылка", СтрокаТаблицы.ОбъектСопоставления); @@ -1487,6 +1486,10 @@ ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Номенклатура с артикулом %1 не существует.'"), СтрокаТаблицы.Артикул); КонецЕсли; + Иначе + ЭлементСправочника = МенеджерСправочника.СоздатьЭлемент(); + СтрокаТаблицы.ОбъектСопоставления = ЭлементСправочника; + СтрокаТаблицы.РезультатСопоставленияСтроки = "Создан"; КонецЕсли; Для каждого Колонка Из ИнформацияПоКолонкам Цикл @@ -1516,30 +1519,37 @@ КонецЦикла; УстановитьПроцентПрогресса(ВсегоСтрок, НомерСтроки); - Если ЭлементСправочника.ПроверитьЗаполнение() Тогда - ЭлементСправочника.Записать(); - // Свойства записываем когда объект уже существует - Если ТаблицаСвойств.Количество() > 0 И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Свойства") Тогда - МодульУправлениеСвойствами = ОбщегоНазначения.ОбщийМодуль("УправлениеСвойствами"); - МодульУправлениеСвойствами.ЗаписатьСвойстваУОбъекта(ЭлементСправочника.Ссылка, ТаблицаСвойств); - КонецЕсли; - ЗафиксироватьТранзакцию(); - Иначе - СтрокаТаблицы.РезультатСопоставленияСтроки = "Пропущен"; + Если НЕ ЭлементСправочника.ПроверитьЗаполнение() Тогда СообщенияПользователю = ПолучитьСообщенияПользователю(Истина); - - Если СообщенияПользователю.Количество() > 0 Тогда - ТекстСообщений = ""; - Для каждого СообщениеПользователю Из СообщенияПользователю Цикл - ТекстСообщений = текстСообщений + СообщениеПользователю.Текст + Символы.ПС; - КонецЦикла; - СтрокаТаблицы.ОписаниеОшибки = ТекстСообщений; - КонецЕсли; - ОтменитьТранзакцию(); + ТекстСообщений = ""; + Разделитель = ""; + Для каждого СообщениеПользователю Из СообщенияПользователю Цикл + Если ЗначениеЗаполнено(СообщениеПользователю.Поле) Тогда + ТекстСообщений = ТекстСообщений + Разделитель + СообщениеПользователю.Текст; + Разделитель = Символы.ПС; + КонецЕсли; + КонецЦикла; + ВызватьИсключение ТекстСообщений; КонецЕсли; + + ЭлементСправочника.Записать(); + // Свойства записываем когда объект уже существует. + Если ТаблицаСвойств.Количество() > 0 И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Свойства") Тогда + МодульУправлениеСвойствами = ОбщегоНазначения.ОбщийМодуль("УправлениеСвойствами"); + МодульУправлениеСвойствами.ЗаписатьСвойстваУОбъекта(ЭлементСправочника.Ссылка, ТаблицаСвойств); + КонецЕсли; + ЗафиксироватьТранзакцию(); Исключение + ИнформацияОбОшибке = ИнформацияОбОшибке(); СтрокаТаблицы.РезультатСопоставленияСтроки = "Пропущен"; - СтрокаТаблицы.ОписаниеОшибки = НСтр("ru = 'Невозможна запись из-за некорректности данных'"); + СтрокаТаблицы.ОписаниеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке); + + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось записать элемент справочника %1 по причине: + |%2'"), + ИмяСправочника, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение, + МенеджерСправочника, ЭлементСправочника.Ссылка, ТекстСообщения); ОтменитьТранзакцию(); КонецПопытки; @@ -1728,6 +1738,20 @@ КонецЕсли; КонецПроцедуры +// Возвращает строковую константу для формирования сообщений журнала регистрации. +// +// Возвращаемое значение: +// Строка +// +Функция СобытиеЖурналаРегистрации() + + Возврат НСтр("ru = 'Загрузка данных из файла'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); + +КонецФункции + + #КонецОбласти + + #КонецЕсли diff --git a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Templates/ПростойШаблон/Template.mxlx b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Templates/ПростойШаблон/Template.mxlx index 385a29386..441a8bfa8 100644 --- a/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Templates/ПростойШаблон/Template.mxlx +++ b/SSL/src/DataProcessors/ЗагрузкаДанныхИзФайла/Templates/ПростойШаблон/Template.mxlx @@ -80,7 +80,7 @@ Solid - + 135 diff --git a/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Forms/СообщенияОбОшибках/Form.form b/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Forms/СообщенияОбОшибках/Form.form index aa8afcf5a..61e38d952 100644 --- a/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Forms/СообщенияОбОшибках/Form.form +++ b/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Forms/СообщенияОбОшибках/Form.form @@ -37,10 +37,8 @@ Left true - 50 - true + 60 8 - true true true true diff --git a/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Forms/Форма/Form.form b/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Forms/Форма/Form.form index e22689d20..8b8363b3a 100644 --- a/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Forms/Форма/Form.form @@ -37,7 +37,6 @@ true - false КоманднаяПанельЛеваяExtendedTooltip 47 @@ -332,7 +331,7 @@ 9 <key>ru</key> - <value>Цифровой код</value> + <value>Цифр. код</value> true true @@ -363,13 +362,19 @@ true Left + 7 true true + false
      СписокВалютСимвольныйКод 40 + + <key>ru</key> + <value>Симв. код</value> + true true @@ -402,6 +407,7 @@ true true + false @@ -441,9 +447,10 @@ Left true - 20 + 15 true true + false true true true @@ -485,8 +492,10 @@ true Left + 9 true true + false @@ -525,6 +534,7 @@ true true + false @@ -563,6 +573,49 @@ true true + false + + + + СписокВалютОтступ + 84 + true + true + + true + + + Объект.СписокВалют.Отступ + + None + + СписокВалютОтступРасширеннаяПодсказка + 86 + Label + true + true + + Left + + + + СписокВалютОтступКонтекстноеМеню + 85 + true + + InputField + true + Auto + true + Left + true + + true + true + true + true + true + Normal None @@ -689,7 +742,6 @@ true HierarchicalList - 40 true true 10 @@ -776,9 +828,7 @@ 70 true - 6 true - 3 true @@ -814,8 +864,6 @@ true Label - true - 3 true Left @@ -846,6 +894,7 @@ Page + Center auto false @@ -891,7 +940,6 @@ OnCreateAtServer ПриСозданииНаСервере - 80 LockOwner true true @@ -915,6 +963,31 @@ true
      true
      + + + Объект.СписокВалют + + + Отступ + + <key>ru</key> + <value>Отступ</value> + + 1 + + String + + 1 + + + + true + + + true + + + СообщитьЧтоКурсыАктуальны @@ -933,51 +1006,16 @@ true - - ИдентификаторФоновогоЗадания - - <key>ru</key> - <value>Идентификатор фонового задания</value> - - 3 - - UUID - - - true - - - true - - - - АдресРезультата - - <key>ru</key> - <value>Адрес результата</value> - - 4 - - String - - - - true - - - true - - ЗагрузитьКурсыВалют <key>ru</key> - <value>Загрузить</value> + <value>Загрузить и закрыть</value> 1 ru - Загрузить курсы выбранных валют с веб-сайта РБК + Загрузить курсы выбранных валют с веб-сайта 1С true diff --git a/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Forms/Форма/Module.bsl index e1886ea9a..baf20ac24 100644 --- a/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Forms/Форма/Module.bsl @@ -59,31 +59,8 @@ #Область ОбработчикиКомандФормы &НаКлиенте -Процедура ЗагрузитьКурсыВалют() - - ОчиститьСообщения(); - - Если Не ЗначениеЗаполнено(Объект.НачалоПериодаЗагрузки) Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - НСтр("ru = 'Не задана дата начала периода загрузки.'"), - , - "Объект.НачалоПериодаЗагрузки"); - Возврат; - КонецЕсли; - - Если Не ЗначениеЗаполнено(Объект.ОкончаниеПериодаЗагрузки) Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - НСтр("ru = 'Не задана дата окончания периода загрузки.'"), - , - "Объект.ОкончаниеПериодаЗагрузки"); - Возврат; - КонецЕсли; - - ВыполнитьЗагрузкуКурсов(); - ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеЗагрузкиКурсов", 1, Истина); - Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаВыполняетсяЗагрузкаКурсов; - Элементы.КоманднаяПанель.Доступность = Ложь; - +Процедура ЗагрузитьКурсыВалют(Команда) + НачатьЗагрузкуКурсовВалют(); КонецПроцедуры &НаКлиенте @@ -98,6 +75,11 @@ УстановитьДоступностьЭлементов(); КонецПроцедуры +&НаКлиенте +Процедура ЗагружатьПриИзменении(Элемент) + УстановитьДоступностьЭлементов(); +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -138,7 +120,7 @@ СписокВалют = Объект.СписокВалют; СписокВалют.Очистить(); - ЗагружаемыеВалюты = РаботаСКурсамиВалют.ПолучитьМассивЗагружаемыхВалют(); + ЗагружаемыеВалюты = РаботаСКурсамиВалют.ЗагружаемыеВалюты(); Для Каждого ЭлементВалюта Из ЗагружаемыеВалюты Цикл ДобавитьВалютуВСписок(ЭлементВалюта); @@ -234,89 +216,48 @@ КонецПроцедуры &НаСервере -Процедура ВыполнитьЗагрузкуКурсов() +Функция ВыполнитьЗагрузкуКурсов() УстановитьПривилегированныйРежим(Истина); РегламентноеЗадание = РегламентныеЗадания.НайтиПредопределенное(Метаданные.РегламентныеЗадания.ЗагрузкаКурсовВалют); - Отбор = Новый Структура; - Отбор.Вставить("РегламентноеЗадание", РегламентноеЗадание); - Отбор.Вставить("Состояние", СостояниеФоновогоЗадания.Активно); - ФоновыеЗаданияЗагрузки = ФоновыеЗадания.ПолучитьФоновыеЗадания(Отбор); - Если ФоновыеЗаданияЗагрузки.Количество() > 0 Тогда - ИдентификаторФоновогоЗадания = ФоновыеЗаданияЗагрузки[0].УникальныйИдентификатор; - Иначе - АдресРезультата = ПоместитьВоВременноеХранилище(Неопределено, УникальныйИдентификатор); - НаименованиеФоновогоЗадания = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Запуск вручную: %1'"), РегламентноеЗадание.Метаданные.Синоним); - - ПараметрыЗагрузки = Новый Структура; - ПараметрыЗагрузки.Вставить("НачалоПериода", Объект.НачалоПериодаЗагрузки); - ПараметрыЗагрузки.Вставить("КонецПериода", Объект.ОкончаниеПериодаЗагрузки); - ПараметрыЗагрузки.Вставить("СписокВалют", ОбщегоНазначения.ТаблицаЗначенийВМассив(Объект.СписокВалют.Выгрузить( - Объект.СписокВалют.НайтиСтроки(Новый Структура("Загружать", Истина)), "КодВалюты,Валюта"))); - - ПараметрыЗадания = Новый Массив; - ПараметрыЗадания.Добавить(ПараметрыЗагрузки); - ПараметрыЗадания.Добавить(АдресРезультата); - - ФоновоеЗадание = ФоновыеЗадания.Выполнить( - РегламентноеЗадание.Метаданные.ИмяМетода, - ПараметрыЗадания, - Строка(РегламентноеЗадание.УникальныйИдентификатор), - НаименованиеФоновогоЗадания); - - ИдентификаторФоновогоЗадания = ФоновоеЗадание.УникальныйИдентификатор; + НаименованиеФоновогоЗадания = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Запуск вручную: %1'"), РегламентноеЗадание.Метаданные.Синоним); + + ПараметрыЗагрузки = Новый Структура; + ПараметрыЗагрузки.Вставить("НачалоПериода", Объект.НачалоПериодаЗагрузки); + ПараметрыЗагрузки.Вставить("КонецПериода", Объект.ОкончаниеПериодаЗагрузки); + ПараметрыЗагрузки.Вставить("СписокВалют", ОбщегоНазначения.ТаблицаЗначенийВМассив(Объект.СписокВалют.Выгрузить( + Объект.СписокВалют.НайтиСтроки(Новый Структура("Загружать", Истина)), "КодВалюты,Валюта"))); + + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеФоновогоЗадания; + + Возврат ДлительныеОперации.ВыполнитьВФоне(РегламентноеЗадание.Метаданные.ИмяМетода, + ПараметрыЗагрузки, ПараметрыВыполнения); + +КонецФункции + +&НаКлиенте +Процедура ПриЗавершенииЗагрузкиКурсов(Результат, ДополнительныеПараметры) Экспорт + + Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаСписокВалют; + Элементы.КоманднаяПанель.Доступность = Истина; + + Если Результат = Неопределено Тогда + Возврат; КонецЕсли; + Если Результат.Статус = "Ошибка" Тогда + ВызватьИсключение(Результат.КраткоеПредставлениеОшибки); + КонецЕсли; + + ОбработатьРезультатЗагрузки(ПолучитьИзВременногоХранилища(Результат.АдресРезультата)); + КонецПроцедуры &НаКлиенте -Процедура Подключаемый_ПроверитьВыполнениеЗагрузкиКурсов() - - ПолучитьСообщенияПользователюИзФоновогоЗадания(); - - Попытка - ЗаданиеВыполнено = ЗаданиеВыполнено(ИдентификаторФоновогоЗадания); - Исключение - Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаСписокВалют; - Элементы.КоманднаяПанель.Доступность = Истина; - ВызватьИсключение; - КонецПопытки; - - Если ЗаданиеВыполнено(ИдентификаторФоновогоЗадания) Тогда - Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаСписокВалют; - Элементы.КоманднаяПанель.Доступность = Истина; - ОбработатьРезультатЗагрузки(); - Иначе - ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеЗагрузкиКурсов", 2, Истина); - КонецЕсли; - -КонецПроцедуры - -&НаСервере -Процедура ПолучитьСообщенияПользователюИзФоновогоЗадания() - - Задание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(ИдентификаторФоновогоЗадания); - Если Задание = Неопределено Тогда - Возврат; - КонецЕсли; - - СообщенияПользователю = Задание.ПолучитьСообщенияПользователю(Истина); - Если Не ЗначениеЗаполнено(СообщенияПользователю) Тогда - Возврат; - КонецЕсли; - - Для Каждого Сообщение Из СообщенияПользователю Цикл - Сообщение.Сообщить(); - КонецЦикла; - -КонецПроцедуры - -&НаКлиенте -Процедура ОбработатьРезультатЗагрузки() - - РезультатЗагрузки = ПолучитьИзВременногоХранилища(АдресРезультата); +Процедура ОбработатьРезультатЗагрузки(РезультатЗагрузки) ЕстьУспешноЗагруженныеКурсы = Ложь; БезОшибок = Истина; @@ -330,7 +271,7 @@ Иначе БезОшибок = Ложь; КоличествоОшибок = КоличествоОшибок + 1; - СписокОшибок.ДобавитьСтроку(СостояниеЗагрузки.Сообщение + Символы.ПС); + СписокОшибок.ДобавитьСтроку(СокрЛП(СостояниеЗагрузки.Сообщение) + Символы.ПС); КонецЕсли; КонецЦикла; @@ -372,14 +313,96 @@ ОткрытьФорму("Обработка.ЗагрузкаКурсовВалют.Форма.СообщенияОбОшибках", Новый Структура("Текст", ПредставлениеОшибки)); КонецПроцедуры -&НаСервереБезКонтекста -Функция ЗаданиеВыполнено(ИдентификаторФоновогоЗадания) - Возврат ДлительныеОперации.ЗаданиеВыполнено(ИдентификаторФоновогоЗадания); +&НаКлиенте +Процедура НачатьЗагрузкуКурсовВалют() + Если ТребуетсяНастройкаАвторизацияИнтернетПоддержки() Тогда + ТекстВопроса = НСтр("ru='Для загрузки курсов валют из Интернета + |необходимо подключиться к Интернет-поддержке пользователей. + |Подключиться сейчас?'"); + ОписаниеОповещения = Новый ОписаниеОповещения("ПриПодключенииИнтернетПоддержки", ЭтотОбъект); + Кнопки = Новый СписокЗначений; + Кнопки.Добавить(КодВозвратаДиалога.Да, НСтр("ru = 'Подключиться'")); + Кнопки.Добавить(КодВозвратаДиалога.Отмена); + + ПоказатьВопрос(ОписаниеОповещения, ТекстВопроса, Кнопки); + Иначе + ПродолжитьЗагрузкуКурсовВалют(); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ПриПодключенииИнтернетПоддержки(РезультатВопроса, ДополнительныеПараметры) Экспорт + Если РезультатВопроса <> КодВозвратаДиалога.Да Тогда + Возврат; + КонецЕсли; + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + ОписаниеОповещения = Новый ОписаниеОповещения("ПослеПодключенияИнтернетПоддержки", ЭтотОбъект); + МодульИнтернетПоддержкаПользователейКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ИнтернетПоддержкаПользователейКлиент"); + МодульИнтернетПоддержкаПользователейКлиент.ПодключитьИнтернетПоддержкуПользователей(ОписаниеОповещения, ЭтотОбъект); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ПослеПодключенияИнтернетПоддержки(Результат, ДополнительныеПараметры) Экспорт + Если Не (ТипЗнч(Результат) = Тип("Структура") + И ЗначениеЗаполнено(Результат.Логин) + И ЗначениеЗаполнено(Результат.Пароль)) Тогда + Возврат; + КонецЕсли; + ПродолжитьЗагрузкуКурсовВалют(); +КонецПроцедуры + +&НаСервере +Функция ТребуетсяНастройкаАвторизацияИнтернетПоддержки() + УстановитьПривилегированныйРежим(Истина); + ИспользоватьАльтернативныйСервер = Константы.ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют.Получить(); + УстановитьПривилегированныйРежим(Ложь); + + Если Не ИспользоватьАльтернативныйСервер Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + МодульИнтернетПоддержкаПользователей = ОбщегоНазначения.ОбщийМодуль("ИнтернетПоддержкаПользователей"); + ДанныеАутентификации = МодульИнтернетПоддержкаПользователей.ДанныеАутентификацииПользователяИнтернетПоддержки(); + Возврат Не (ДанныеАутентификации <> Неопределено + И ЗначениеЗаполнено(ДанныеАутентификации.Логин) + И ЗначениеЗаполнено(ДанныеАутентификации.Пароль)); + КонецЕсли; + КонецЕсли; + Возврат Ложь; КонецФункции &НаКлиенте -Процедура ЗагружатьПриИзменении(Элемент) - УстановитьДоступностьЭлементов(); +Процедура ПродолжитьЗагрузкуКурсовВалют() + + ОчиститьСообщения(); + + Если Не ЗначениеЗаполнено(Объект.НачалоПериодаЗагрузки) Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю( + НСтр("ru = 'Не задана дата начала периода загрузки.'"), + , + "Объект.НачалоПериодаЗагрузки"); + Возврат; + КонецЕсли; + + Если Не ЗначениеЗаполнено(Объект.ОкончаниеПериодаЗагрузки) Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю( + НСтр("ru = 'Не задана дата окончания периода загрузки.'"), + , + "Объект.ОкончаниеПериодаЗагрузки"); + Возврат; + КонецЕсли; + + ОперацияЗагрузкиКурсов = ВыполнитьЗагрузкуКурсов(); + + Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаВыполняетсяЗагрузкаКурсов; + Элементы.КоманднаяПанель.Доступность = Ложь; + + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + + ОписаниеОповещения = Новый ОписаниеОповещения("ПриЗавершенииЗагрузкиКурсов", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(ОперацияЗагрузкиКурсов, ОписаниеОповещения, ПараметрыОжидания); + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Help/ru.html b/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Help/ru.html index fcd854ea6..1b261f612 100644 --- a/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Help/ru.html +++ b/SSL/src/DataProcessors/ЗагрузкаКурсовВалют/Help/ru.html @@ -1,5 +1,5 @@ -

      Загрузка курсов валют производится с сайта РБК.

      +

      Загрузка курсов валют производится с сайта 1С.

      Окно загрузки курсов состоит из двух частей:

      • Период: 
        • С - дата начала периода загрузки курсов валют. @@ -19,6 +19,6 @@
        • Снять выбор всех валют можно с помощью кнопки .
        • -
          Нажмите Загрузить.

        См. также: 

        +
        Нажмите Загрузить и закрыть.

      См. также: 

      \ No newline at end of file diff --git a/SSL/src/DataProcessors/ЗагрузкаПравилРегистрацииОбъектов/ObjectModule.bsl b/SSL/src/DataProcessors/ЗагрузкаПравилРегистрацииОбъектов/ObjectModule.bsl index 99c22435d..8b6afdaf8 100644 --- a/SSL/src/DataProcessors/ЗагрузкаПравилРегистрацииОбъектов/ObjectModule.bsl +++ b/SSL/src/DataProcessors/ЗагрузкаПравилРегистрацииОбъектов/ObjectModule.bsl @@ -675,7 +675,7 @@ ТекстВыборкиПолей = "ВЫБРАТЬ РАЗЛИЧНЫЕ ПланОбменаОсновнаяТаблица.Ссылка КАК Ссылка"; // Таблица с именами источников данных - табличных частей плана обмена. - ТаблицаДанных = ПолучитьТаблицуДанныхДляПРО(ПРО.ОтборПоСвойствамПланаОбмена.Строки); + ТаблицаДанных = ДанныеПРО(ПРО.ОтборПоСвойствамПланаОбмена.Строки); ТекстТаблицДанных = ПолучитьТекстТаблицДанныхДляПРО(ТаблицаДанных); @@ -756,7 +756,7 @@ КонецФункции -Функция ПолучитьТаблицуДанныхДляПРО(СвойстваГруппы) +Функция ДанныеПРО(СвойстваГруппы) ТаблицаДанных = Новый ТаблицаЗначений; ТаблицаДанных.Колонки.Добавить("Имя"); @@ -766,7 +766,7 @@ Если ПРПС.ЭтоГруппа Тогда // Получаем таблицу данных для нижнего уровня иерархии. - ТаблицаДанныхГруппы = ПолучитьТаблицуДанныхДляПРО(ПРПС.Строки); + ТаблицаДанныхГруппы = ДанныеПРО(ПРПС.Строки); // Добавляем полученные строки в таблицу данных верхнего уровня иерархии. Для Каждого СтрокаТаблицыГруппы Из ТаблицаДанныхГруппы Цикл diff --git a/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ЗаменаЭлементов/Form.form b/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ЗаменаЭлементов/Form.form index 592867123..5d24ef6e7 100644 --- a/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ЗаменаЭлементов/Form.form +++ b/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ЗаменаЭлементов/Form.form @@ -38,12 +38,68 @@ true Label - true true Left
      + + КоманднаяПанельВыбораЦелевого + 66 + + ИзменитьФормуИзСписка + 68 + true + + true + + + ИзменитьФормуИзСпискаРасширеннаяПодсказка + 69 + Label + true + true + + Left + + + Form.StandardCommand.CustomizeForm + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Командная панель выбора целевого элемента</value> + + + ru + Командная панель выбора целевого + + + КоманднаяПанельВыбораЦелевогоРасширеннаяПодсказка + 67 + Label + true + true + + Left + + + CommandBar + + Left + Item.Список + + ГруппаПользовательскихНастроек 205 @@ -80,84 +136,6 @@ Auto - - КоманднаяПанельВыбораЦелевого - 66 - - СписокГруппа1 - 203 - - ИзменитьФормуИзСписка - 68 - true - true - - true - - - ИзменитьФормуИзСпискаРасширеннаяПодсказка - 69 - Label - true - true - - Left - - - Form.StandardCommand.CustomizeForm - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - СписокГруппа1РасширеннаяПодсказка - 204 - Label - true - true - - Left - - - - - true - true - - true - - - <key>ru</key> - <value>Командная панель выбора целевого элемента</value> - - - ru - Командная панель выбора целевого - - - КоманднаяПанельВыбораЦелевогоРасширеннаяПодсказка - 67 - Label - true - true - - Left - - - CommandBar - - Left - Item.Список - - Список 182 @@ -462,69 +440,21 @@ ГруппаПользовательскихНастроек - - ГруппаПодсказка - 225 - - ПодсказкаВыбораЦелевогоЭлемента - 227 - - <key>ru</key> - <value>Подсказка выбора целевого элемента</value> - - true - true - - true - - - ПодсказкаВыбораЦелевогоЭлементаРасширеннаяПодсказка - 229 - Label - true - true - - Left - - - - ПодсказкаВыбораЦелевогоЭлементаКонтекстноеМеню - 228 - true - - Label - true - 3 - true - true - - Style.ПоясняющийТекст - - - - URLProcessing - ПодсказкаВыбораЦелевогоЭлементаОбработкаНавигационнойСсылки - - Left - Top - - + + ПодсказкаВыбораЦелевогоЭлемента + 227 + + <key>ru</key> + <value>Подсказка выбора целевого элемента</value> + true true true - - <key>ru</key> - <value>Группа подсказка</value> - - - ru - Группа подсказка - - ГруппаПодсказкаРасширеннаяПодсказка - 226 + ПодсказкаВыбораЦелевогоЭлементаРасширеннаяПодсказка + 229 Label true true @@ -532,14 +462,22 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + ПодсказкаВыбораЦелевогоЭлементаКонтекстноеМеню + 228 + true + + Label + true + + Style.ПоясняющийТекст + + + + URLProcessing + ПодсказкаВыбораЦелевогоЭлементаОбработкаНавигационнойСсылки + + Left true @@ -551,10 +489,6 @@ ru Выбор целевого элемента - - ru - Шаг выбор целевого элемента - true ШагВыборЦелевогоЭлементаРасширеннаяПодсказка @@ -576,90 +510,17 @@ ШагЗамена 87 - - ГруппаДлительнаяОперация2 - 89 - - КартинкаДлительнойОперации2 - 91 - - <key>ru</key> - <value>Картинка длительной операции1</value> - - true - true - - true - - - КартинкаДлительнойОперации2РасширеннаяПодсказка - 93 - Label - true - true - - Left - - - - КартинкаДлительнойОперации2КонтекстноеМеню - 92 - true - - true - true - true - - - - - - ОписаниеДлительнойОперации2 - 94 - - <key>ru</key> - <value>Пожалуйста, подождите. -Выполняется замена элементов...</value> - - true - true - - true - - - ОписаниеДлительнойОперации2РасширеннаяПодсказка - 96 - Label - true - true - - Left - - - - ОписаниеДлительнойОперации2КонтекстноеМеню - 95 - true - - Label - true - true - true - - Left - Center - - + + КартинкаДлительнойОперации + 91 true true true - 10 - false - ГруппаДлительнаяОперация2РасширеннаяПодсказка - 90 + КартинкаДлительнойОперацииРасширеннаяПодсказка + 93 Label true true @@ -667,13 +528,55 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + + КартинкаДлительнойОперацииКонтекстноеМеню + 92 + true + + true + true + Center + + + CommonPicture.ДлительнаяОперация48 + + + + + ОписаниеДлительнойОперации + 94 + + <key>ru</key> + <value>Выполняется замена элементов. +Пожалуйста, подождите...</value> + + true + true + + true + + + ОписаниеДлительнойОперацииРасширеннаяПодсказка + 96 + Label + true + true + + Left + + + + ОписаниеДлительнойОперацииКонтекстноеМеню + 95 + true + + Label + true + true + Center + + Left + Center true @@ -685,10 +588,6 @@ ru Замена - - ru - Страница поиск мест использования - ШагЗаменаРасширеннаяПодсказка 88 @@ -701,74 +600,6 @@ Page - Vertical - auto - false - - - - ШагУспешногоЗавершения - 97 - - РезультатЗамены - 104 - - <key>ru</key> - <value>Результат замены</value> - - true - true - - true - - - РезультатЗаменыРасширеннаяПодсказка - 106 - Label - true - true - - Left - - - - РезультатЗаменыКонтекстноеМеню - 105 - true - - Label - true - true - - Left - - - true - true - - true - - - <key>ru</key> - <value>Успешное завершение</value> - - - ru - Страница поиск мест использования - - - ШагУспешногоЗавершенияРасширеннаяПодсказка - 98 - Label - true - true - - Left - - - Page - - Vertical auto false @@ -804,7 +635,6 @@ true Label - true true Left @@ -950,7 +780,6 @@ ИзменитьФорму 142 - true true true @@ -1414,8 +1243,8 @@ Left true - true true + false true true true @@ -1433,10 +1262,6 @@ ru Повтор объединения - - ru - Шаг повтор замены - ШагПовторЗаменыРасширеннаяПодсказка 108 @@ -1454,6 +1279,150 @@ false + + ШагВозниклаОшибка + 230 + + КартинкаПредупреждение32 + 232 + + <key>ru</key> + <value>Картинка предупреждение32</value> + + true + true + + true + + + КартинкаПредупреждение32РасширеннаяПодсказка + 234 + Label + true + true + + Left + + + + КартинкаПредупреждение32КонтекстноеМеню + 233 + true + + true + true + Center + + + CommonPicture.Предупреждение32 + + + + + НадписьТекстОшибки + 235 + + <key>ru</key> + <value>Надпись текст ошибки</value> + + true + true + + true + + + НадписьТекстОшибкиРасширеннаяПодсказка + 237 + Label + true + true + + Left + + + + НадписьТекстОшибкиКонтекстноеМеню + 236 + true + + Label + 5 + true + Center + + Left + Center + + + + СсылкаПодробнее + 238 + + <key>ru</key> + <value>Подробнее</value> + + true + true + + true + + + СсылкаПодробнееРасширеннаяПодсказка + 240 + Label + true + true + + Left + + + + СсылкаПодробнееКонтекстноеМеню + 239 + true + + Label + true + Center + + + Click + СсылкаПодробнееНажатие + + true + Left + Center + + + true + true + + true + + + <key>ru</key> + <value>Возникла ошибка</value> + + + ru + Шаг возникла ошибка + + + ШагВозниклаОшибкаРасширеннаяПодсказка + 231 + Label + true + true + + Left + + + Page + + auto + false + + true true @@ -1636,7 +1605,6 @@ ru Группа вперед - true ГруппаВпередРасширеннаяПодсказка 55 @@ -1665,7 +1633,6 @@ ru Панель действий мастера - true ПанельДействийМастераРасширеннаяПодсказка 42 @@ -1703,10 +1670,6 @@ OnCreateAtServer ПриСозданииНаСервере - - OnClose - ПриЗакрытии - Abort Cancel Ignore @@ -1716,8 +1679,6 @@ Retry SaveValues Yes - 80 - 15 LockOwner true true diff --git a/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ЗаменаЭлементов/Items/КартинкаДлительнойОперации2/Picture.gif b/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ЗаменаЭлементов/Items/КартинкаДлительнойОперации2/Picture.gif deleted file mode 100644 index fd636e679..000000000 Binary files a/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ЗаменаЭлементов/Items/КартинкаДлительнойОперации2/Picture.gif and /dev/null differ diff --git a/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ЗаменаЭлементов/Module.bsl b/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ЗаменаЭлементов/Module.bsl index 75e3cac88..334afbe95 100644 --- a/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ЗаменаЭлементов/Module.bsl +++ b/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ЗаменаЭлементов/Module.bsl @@ -93,32 +93,38 @@ Возврат; КонецЕсли; - // Указываем стартовую страницу. - УстановитьНачальнуюСтраницуМастера(Элементы.ШагВыборЦелевогоЭлемента); - ЗапуститьРаботуМастера(); + // По умолчанию все отключено + Элементы[НастройкиПошаговогоМастера.КнопкаДалее].Видимость = Ложь; + Элементы[НастройкиПошаговогоМастера.КнопкаНазад].Видимость = Ложь; + Элементы[НастройкиПошаговогоМастера.КнопкаОтмена].Видимость = Ложь; + + // Отложенный запуск + НастройкиПошаговогоМастера.НомерТекущегоШага = НомерШагаМастераПоИдентификатору(Элементы.ШагВыборЦелевогоЭлемента); + ПодключитьОбработчикОжидания("ЗапуститьРаботуМастера", 0.1, Истина); КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) - // Проверка задания. - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено = Ложь - И НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания <> Неопределено - И НастройкиПошаговогоМастера.ЕстьПодтверждениеОтменыЗадания = Ложь Тогда - Отказ = Истина; - ФоновоеЗаданиеЗагрузитьНаКлиенте(Ложь, Истина); + Если Элементы.ШагиМастера.ТекущаяСтраница <> Элементы.ШагЗамена + Или Не НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием Тогда + Возврат; КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ПриЗакрытии() - - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено = Ложь - И НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания <> Неопределено Тогда - ФоновоеЗаданиеОтменить(); + Отказ = Истина; + Если ЗавершениеРаботы Тогда + Возврат; КонецЕсли; + ТекстВопроса = НСтр("ru = 'Прервать замену элементов и закрыть форму?'"); + + Кнопки = Новый СписокЗначений; + Кнопки.Добавить(КодВозвратаДиалога.Прервать, НСтр("ru = 'Прервать'")); + Кнопки.Добавить(КодВозвратаДиалога.Нет, НСтр("ru = 'Не прерывать'")); + + Обработчик = Новый ОписаниеОповещения("ПослеПодтвержденияОтменыЗадания", ЭтотОбъект); + ПоказатьВопрос(Обработчик, ТекстВопроса, Кнопки, , КодВозвратаДиалога.Нет); + КонецПроцедуры #КонецОбласти @@ -142,6 +148,11 @@ КонецПроцедуры +&НаКлиенте +Процедура СсылкаПодробнееНажатие(Элемент) + СтандартныеПодсистемыКлиент.ПоказатьПодробнуюИнформацию(Неопределено, Элемент.Подсказка); +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыСписок @@ -340,61 +351,6 @@ КонецФункции -&НаСервере -Функция ЗаполнитьНеудачныеЗамены(Знач РезультатыЗамены) - // РезультатыЗамены - таблица с колонками Ссылка, ОбъектОшибки, ТипОшибки, ТекстОшибки. - КорневыеСтроки = НеудачныеЗамены.ПолучитьЭлементы(); - КорневыеСтроки.Очистить(); - - СоответствиеСтрок = Новый Соответствие; - КэшМетаданных = Новый Соответствие; - - Для Каждого СтрокаРезультата Из РезультатыЗамены Цикл - Ссылка = СтрокаРезультата.Ссылка; - - ОшибкиПоСсылке = СоответствиеСтрок[Ссылка]; - Если ОшибкиПоСсылке = Неопределено Тогда - СтрокаДерева = КорневыеСтроки.Добавить(); - СтрокаДерева.Ссылка = Ссылка; - СтрокаДерева.Данные = Строка(Ссылка); - СтрокаДерева.Код = Строка( ВозможныйКодСсылки(Ссылка, КэшМетаданных) ); - СтрокаДерева.Пиктограмма = -1; - - ОшибкиПоСсылке = СтрокаДерева.ПолучитьЭлементы(); - СоответствиеСтрок.Вставить(Ссылка, ОшибкиПоСсылке); - КонецЕсли; - - СтрокаОшибки = ОшибкиПоСсылке.Добавить(); - СтрокаОшибки.Ссылка = СтрокаРезультата.ОбъектОшибки; - СтрокаОшибки.Данные = СтрокаРезультата.ПредставлениеОбъектаОшибки; - - ТипОшибки = СтрокаРезультата.ТипОшибки; - Если ТипОшибки = "НеизвестныеДанные" Тогда - СтрокаОшибки.Причина = НСтр("ru = 'Обнаружена данные, обработка которых не планировалась.'"); - - ИначеЕсли ТипОшибки = "ОшибкаБлокировки" Тогда - СтрокаОшибки.Причина = НСтр("ru = 'Не удалось заблокировать данные.'"); - - ИначеЕсли ТипОшибки = "ДанныеИзменены" Тогда - СтрокаОшибки.Причина = НСтр("ru = 'Данные изменены другим пользователем.'"); - - ИначеЕсли ТипОшибки = "ОшибкаЗаписи" Тогда - СтрокаОшибки.Причина = СтрокаРезультата.ТекстОшибки; - - ИначеЕсли ТипОшибки = "ОшибкаУдаления" Тогда - СтрокаОшибки.Причина = НСтр("ru = 'Невозможно удалить данные.'"); - - Иначе - СтрокаОшибки.Причина = НСтр("ru = 'Неизвестная ошибка.'"); - - КонецЕсли; - - СтрокаОшибки.ПодробнаяПричина = СтрокаРезультата.ТекстОшибки; - КонецЦикла; // результаты замены - - Возврат КорневыеСтроки.Количество() > 0; -КонецФункции - // Параметры: // СписокДанных - Массив - содержит измененные данные, о типе которых будет оповещено. // @@ -597,7 +553,6 @@ &НаСервере Процедура ИнициализироватьСценарийМастера() - // 0. Выбор основного элемента. КнопкиМастера = КнопкиМастера(); КнопкиМастера.Назад.Видимость = Ложь; @@ -612,7 +567,7 @@ ДействиеШагаМастера("ПередДействиемОтмена", "ШагВыборЦелевогоЭлементаПередДействиемОтмена"))), КнопкиМастера); - // 1. Ожидание процесса + // 1. Ожидание процесса. КнопкиМастера = КнопкиМастера(); КнопкиМастера.Назад.Видимость = Ложь; КнопкиМастера.Далее.Видимость = Ложь; @@ -621,25 +576,10 @@ ДобавитьШагМастера(Элементы.ШагЗамена, ДействиеШагаМастера("ПриАктивации", "ШагЗаменаПриАктивации", - ДействиеШагаМастера("ПередДействиемОтмена", "ШагЗаменаПередДействиемОтмена", - ДействиеШагаМастера("ПриОбработкеОжидания", "ШагЗаменаПриОбработкеОжидания"))), + ДействиеШагаМастера("ПередДействиемОтмена", "ШагЗаменаПередДействиемОтмена")), КнопкиМастера); - // 2. Успешное объединение - КнопкиМастера = КнопкиМастера(); - КнопкиМастера.Назад.Видимость = Ложь; - КнопкиМастера.Далее.Видимость = Ложь; - КнопкиМастера.Далее.КнопкаПоУмолчанию = Ложь; - КнопкиМастера.Отмена.КнопкаПоУмолчанию = Истина; - КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Закрыть'"); - КнопкиМастера.Отмена.Подсказка = НСтр("ru = 'Закрыть результаты замены элементов'"); - - ДобавитьШагМастера(Элементы.ШагУспешногоЗавершения, - ДействиеШагаМастера("ПриАктивации", "ШагУспешногоЗавершенияПриАктивации", - ДействиеШагаМастера("ПередДействиемОтмена", "ШагУспешногоЗавершенияПередДействиемОтмена")), - КнопкиМастера); - - // 3. Ошибки замены ссылок + // 2. Проблемы замены ссылок. КнопкиМастера = КнопкиМастера(); КнопкиМастера.Назад.Заголовок = НСтр("ru = '< Назад'"); КнопкиМастера.Назад.Подсказка = НСтр("ru = 'Вернутся к выбору целевого элемента'"); @@ -654,6 +594,17 @@ ДействиеШагаМастера("ПередДействиемНазад", "ШагПовторЗаменыПередДействиемНазад", ДействиеШагаМастера("ПередДействиемОтмена", "ШагПовторЗаменыПередДействиемОтмена")))), КнопкиМастера); + + // 3. Ошибки выполнения. + КнопкиМастера = КнопкиМастера(); + КнопкиМастера.Назад.Видимость = Ложь; + КнопкиМастера.Далее.Видимость = Ложь; + КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Закрыть'"); + + ДобавитьШагМастера(Элементы.ШагВозниклаОшибка, + ДействиеШагаМастера("ПередДействиемОтмена", "ШагВозниклаОшибкаПередДействиемОтмена"), + КнопкиМастера); + КонецПроцедуры &НаКлиенте @@ -709,42 +660,14 @@ &НаКлиенте Процедура ШагЗаменаПриАктивации(Знач Страница, Знач ДополнительныеПараметры) Экспорт - // Стартуем длительную обработку по замене. - ФоновоеЗаданиеЗапустить(); -КонецПроцедуры - -&НаКлиенте -Процедура ШагЗаменаПриОбработкеОжидания(Прекратить, Знач ДополнительныеПараметры) Экспорт - - Если ФоновоеЗаданиеЗагрузитьНаКлиенте(Ложь, Ложь) Тогда - Прекратить = Истина; - КонецЕсли; - + НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием = Истина; + ЦелевойЭлементРезультат = ЦелевойЭлемент; // Сохранение параметров запуска. + ЗапуститьФоновоеЗаданиеКлиент(); КонецПроцедуры &НаКлиенте Процедура ШагЗаменаПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - ПроверитьФоновоеЗаданиеИЗакрытьФормуБезПодтверждения(); -КонецПроцедуры - -&НаКлиенте -Процедура ШагУспешногоЗавершенияПриАктивации(Знач Страница, Знач ДополнительныеПараметры) Экспорт - - // Обновляем надпись - Элементы.РезультатЗамены.Заголовок = СообщениеОЗавершении(); - - // Оповещаем о успешной замене. - СписокОбновленного = Новый Массив; - СписокОбновленного.Добавить(ЦелевойЭлемент); - Для Каждого Строка Из ЗаменяемыеСсылки Цикл - СписокОбновленного.Добавить(Строка.Ссылка); - КонецЦикла; - ОповеститьОбУспешнойЗамене(СписокОбновленного); - -КонецПроцедуры - -&НаКлиенте -Процедура ШагУспешногоЗавершенияПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием = Ложь; Закрыть(); КонецПроцедуры @@ -754,7 +677,7 @@ СформироватьНадписьНеудачныеЗамены(); // Оповещаем об успешной частичной замене. - СписокОбновленного = УдалитьИзЗаменяемыхОбработанные(); // Заодно и удаляем из списка + СписокОбновленного = УдалитьИзЗаменяемыхОбработанные(); // Заодно и удаляем из списка. СписокОбновленного.Добавить(ЦелевойЭлемент); ОповеститьОбУспешнойЗамене(СписокОбновленного); КонецПроцедуры @@ -775,6 +698,11 @@ Закрыть(); КонецПроцедуры +&НаКлиенте +Процедура ШагВозниклаОшибкаПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + Закрыть(); +КонецПроцедуры + // Возвращает список успешно замененных ссылок, тех которых нет в НеудачныеЗамены. &НаКлиенте Функция УдалитьИзЗаменяемыхОбработанные() @@ -843,7 +771,6 @@ Результат.Вставить("Шаги", Новый Массив); Результат.Вставить("НомерТекущегоШага", 0); - Результат.Вставить("СтраницаСтарта", Неопределено); // Идентификаторы частей интерфейса. Результат.Вставить("ГруппаСтраниц", ГруппаСтраниц.Имя); @@ -851,19 +778,8 @@ Результат.Вставить("КнопкаНазад", КнопкаНазад.Имя); Результат.Вставить("КнопкаОтмена", КнопкаОтмена.Имя); - // Таймаут вызова обработчика - Результат.Вставить("ТаймаутОжиданияДлительнойОперации", - ?( ПолучитьСкоростьКлиентскогоСоединения() = СкоростьКлиентскогоСоединения.Низкая, 4, 2) ); - // Для обработки длительных операций. - Результат.Вставить("ИдентификаторФоновогоЗадания"); - Результат.Вставить("АдресРезультатаФоновогоЗадания"); - Результат.Вставить("ИнформацияОбОшибке"); - Результат.Вставить("ЗаданиеВыполнено", Ложь); - Результат.Вставить("ЕстьПодтверждениеОтменыЗадания", Ложь); - - // Для хранения пользовательских параметров. - Результат.Вставить("ПользовательскиеПараметры", Новый Соответствие); + Результат.Вставить("ПоказатьДиалогПередЗакрытием", Ложь); Возврат Результат; КонецФункции @@ -897,12 +813,6 @@ // * ПередДействиемОтмена - Строка - Аналогично ПередДействиемДалее, описывает поведение при нажатии кнопки // "Отмена". // -// * ПриОбработкеОжидания - Строка - Необязательное имя процедуры, которая будет периодически вызываться с -// двумя параметрами: -// <Прекратить> - Если при выходе из процедуры установить в значение -// Истина, то периодические вызовы будут прекращены. -// <ДополнительныеПараметры> - Неопределено -// // Кнопки - Структура - описание кнопок на текущем шаге. Поля структуры: // // * Далее - Структура - Описание кнопки "Далее". поля: Заголовок, Подсказка, Доступность, Видимость, @@ -923,7 +833,7 @@ Процедура ДобавитьШагМастера(Знач Страница, Знач Действия, Знач Кнопки) // Умолчания - ОписаниеШага = Новый Структура("ПриАктивации, ПередДействиемДалее, ПередДействиемНазад, ПередДействиемОтмена, ПриОбработкеОжидания"); + ОписаниеШага = Новый Структура("ПриАктивации, ПередДействиемДалее, ПередДействиемНазад, ПередДействиемОтмена"); ОписаниеШага.Вставить("Страница", Страница.Имя); // Устанавливаем действия @@ -1017,58 +927,28 @@ Возврат Результат; КонецФункции -// Устанавливает начальную страницу для первого запуска мастера. -// -// Параметры: -// СтартоваяСтраница - Число, Строка, ГруппаФормы - Номер шага, группа-страница, или ее идентификатор. -// -&НаКлиенте -Процедура УстановитьНачальнуюСтраницуМастера(Знач Страница) - - НастройкиПошаговогоМастера.СтраницаСтарта = НомерШагаМастераПоИдентификатору(Страница); - -КонецПроцедуры - -// Запускает начальную работу мастера с шага, установленного предварительно при помощи -// "УстановитьНачальнуюСтраницуМастера". -// &НаКлиенте Процедура ЗапуститьРаботуМастера() - Если НастройкиПошаговогоМастера.СтраницаСтарта = Неопределено Тогда - ВызватьИсключение НСтр("ru = 'Перед запуском мастера должна быть установлена начальная страница.'"); - - ИначеЕсли НастройкиПошаговогоМастера.СтраницаСтарта = -1 Тогда - // Разогрев. Проверяем наличие обработчиков действий у всех шагов. - ВозможныеДействия = Новый Структура("ПриАктивации, ПередДействиемДалее, ПередДействиемНазад, ПередДействиемОтмена, ПриОбработкеОжидания"); - Для Каждого ОписаниеШага Из НастройкиПошаговогоМастера.Шаги Цикл - Для Каждого КлючЗначение Из ВозможныеДействия Цикл - ИмяДействия = КлючЗначение.Ключ; - ИмяОбработчика = ОписаниеШага[ИмяДействия]; - Если Не ПустаяСтрока(ИмяОбработчика) Тогда - Попытка - Тест = Новый ОписаниеОповещения(ИмяОбработчика, ЭтотОбъект); - Исключение - Текст = НСтр("ru = 'Ошибка создания обработчика события %1 для страницы %2, не определена процедура %3'"); - Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Текст, ИмяДействия, ОписаниеШага.Страница, ИмяОбработчика); - ВызватьИсключение Текст; - КонецПопытки; - КонецЕсли; - КонецЦикла; + // Разогрев. Проверяем наличие обработчиков действий у всех шагов. + ВозможныеДействия = Новый Структура("ПриАктивации, ПередДействиемДалее, ПередДействиемНазад, ПередДействиемОтмена"); + Для Каждого ОписаниеШага Из НастройкиПошаговогоМастера.Шаги Цикл + Для Каждого КлючЗначение Из ВозможныеДействия Цикл + ИмяДействия = КлючЗначение.Ключ; + ИмяОбработчика = ОписаниеШага[ИмяДействия]; + Если Не ПустаяСтрока(ИмяОбработчика) Тогда + Попытка + Тест = Новый ОписаниеОповещения(ИмяОбработчика, ЭтотОбъект); + Исключение + Текст = НСтр("ru = 'Ошибка создания обработчика события %1 для страницы %2, не определена процедура %3'"); + Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Текст, ИмяДействия, ОписаниеШага.Страница, ИмяОбработчика); + ВызватьИсключение Текст; + КонецПопытки; + КонецЕсли; КонецЦикла; - - // Фактический запуск - ПерейтиНаШагМастера(НастройкиПошаговогоМастера.НомерТекущегоШага, Истина); - Иначе - // По умолчанию все отключено - Элементы[НастройкиПошаговогоМастера.КнопкаДалее].Видимость = Ложь; - Элементы[НастройкиПошаговогоМастера.КнопкаНазад].Видимость = Ложь; - Элементы[НастройкиПошаговогоМастера.КнопкаОтмена].Видимость = Ложь; - - // Отложенный запуск - НастройкиПошаговогоМастера.НомерТекущегоШага = НастройкиПошаговогоМастера.СтраницаСтарта; - НастройкиПошаговогоМастера.СтраницаСтарта = -1; - ПодключитьОбработчикОжидания("ЗапуститьРаботуМастера", 0.1, Истина); - КонецЕсли; + КонецЦикла; + + // Фактический запуск. + ПерейтиНаШагМастера(НастройкиПошаговогоМастера.НомерТекущегоШага, Истина); КонецПроцедуры // Выполняет переключение мастера на следующую или предыдущую страницу. @@ -1090,11 +970,6 @@ ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; - // Останавливаем обработчик, если есть. - Если ОписаниеШага.ПриОбработкеОжидания <> Неопределено Тогда - ОтключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера"); - КонецЕсли; - // Отрабатываем уход с текущей страницы. Если Направление = 1 Тогда Действие = ОписаниеШага.ПередДействиемДалее; @@ -1125,13 +1000,8 @@ Ошибка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не найден шаг помощника %1'"), ИдентификаторШага); ВызватьИсключение Ошибка; КонецЕсли; - - ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; - // Останавливаем обработчик, если есть. - Если ОписаниеШага.ПриОбработкеОжидания <> Неопределено Тогда - ОтключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера"); - КонецЕсли; + ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; // И запускаем новую страницу ШагМастераЗавершениеБезусловно(СледующийШаг, ИнициироватьСобытия); @@ -1194,10 +1064,6 @@ // Отрабатываем "ПриАктивации" новой страницы, он же запустит ожидание. ПодключитьОбработчикОжидания("ОбработкаАктивацииСтраницыМастера", 0.1, Истина); - ИначеЕсли Не ПустаяСтрока(ОписаниеШага.ПриОбработкеОжидания) Тогда - // Запускаем обработчик ожидания, если надо. - ПодключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера", 0.1, Истина); - КонецЕсли; КонецПроцедуры @@ -1217,12 +1083,6 @@ Оповещение = Новый ОписаниеОповещения(ОписаниеШага.ПриАктивации, ЭтотОбъект); ВыполнитьОбработкуОповещения(Оповещение, Элементы[ОписаниеШага.Страница]); КонецЕсли; - - // И запускаем ожидание, если надо. - Если Не ПустаяСтрока(ОписаниеШага.ПриОбработкеОжидания) Тогда - // Первый запуск быстрый - ПодключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера", 0.1, Истина); - КонецЕсли; КонецПроцедуры // Может быть номер шага или группа-страница, или ее идентификатор. @@ -1234,7 +1094,7 @@ КонецЕсли; ИмяПоиска = ?(ТипПараметра = Тип("ГруппаФормы"), ИдентификаторШага.Имя, ИдентификаторШага); - Для НомерШага=0 По НастройкиПошаговогоМастера.Шаги.ВГраница() Цикл + Для НомерШага = 0 По НастройкиПошаговогоМастера.Шаги.ВГраница() Цикл Если НастройкиПошаговогоМастера.Шаги[НомерШага].Страница = ИмяПоиска Тогда Возврат НомерШага; КонецЕсли; @@ -1243,68 +1103,53 @@ ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не найден шаг ""%1"".'"), ИмяПоиска); КонецФункции -// Возвращает флаг отмены +//////////////////////////////////////////////////////////////////////////////// +// Работа с длительными операциями + &НаКлиенте -Функция ОбработкаОжиданияСтраницыМастера() - ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; - Действие = ОписаниеШага.ПриОбработкеОжидания; - Если ПустаяСтрока(Действие) Тогда - Возврат Ложь; - КонецЕсли; +Процедура ЗапуститьФоновоеЗаданиеКлиент() + // Подготовка параметров метода. + ПараметрыМетода = Новый Структура("ПарыЗамен, Параметры"); + ПараметрыМетода.ПарыЗамен = Новый Соответствие; + Для Каждого Строка Из ЗаменяемыеСсылки Цикл + ПараметрыМетода.ПарыЗамен.Вставить(Строка.Ссылка, ЦелевойЭлемент); + КонецЦикла; + ПараметрыМетода.Параметры = Новый Структура; + ПараметрыМетода.Параметры.Вставить("СпособУдаления", ТекущийВариантУдаления); + ПараметрыМетода.Параметры.Вставить("ВключатьБизнесЛогику", Истина); - Оповещение = Новый ОписаниеОповещения(Действие, ЭтотОбъект); + // Запуск фонового задания для замены. + Задание = ЗапуститьФоновоеЗадание(ПараметрыМетода, УникальныйИдентификатор); - Прекратить = Ложь; - ВыполнитьОбработкуОповещения(Оповещение, Прекратить); - Продолжать = Не Прекратить; + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + НастройкиОжидания.ВыводитьОкноОжидания = Ложь; - Если Продолжать Тогда - ПодключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера", НастройкиПошаговогоМастера.ТаймаутОжиданияДлительнойОперации, Истина); - КонецЕсли; + Обработчик = Новый ОписаниеОповещения("ПослеЗавершенияФоновогоЗадания", ЭтотОбъект); - Возврат Продолжать; + ДлительныеОперацииКлиент.ОжидатьЗавершение(Задание, Обработчик, НастройкиОжидания); +КонецПроцедуры + +&НаСервереБезКонтекста +Функция ЗапуститьФоновоеЗадание(Знач ПараметрыМетода, Знач УникальныйИдентификатор) + ИмяМетода = "ПоискИУдалениеДублей.ЗаменитьСсылки"; + + НастройкиЗапуска = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + НастройкиЗапуска.НаименованиеФоновогоЗадания = НСтр("ru = 'Поиск и удаление дублей: Замена ссылок'"); + + Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяМетода, ПараметрыМетода, НастройкиЗапуска); КонецФункции &НаКлиенте -Процедура ПослеПодтвержденияОтменыЗаданияИЗакрытияФормы(Ответ, ПараметрыВыполнения) Экспорт - Если Ответ = КодВозвратаДиалога.Прервать Тогда - ПроверитьФоновоеЗаданиеИЗакрытьФормуБезПодтверждения(); - Иначе - ОбработкаОжиданияСтраницыМастера(); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ПроверитьФоновоеЗаданиеИЗакрытьФормуБезПодтверждения() - Если Не ФоновоеЗаданиеЗагрузитьНаКлиенте(Истина, Ложь) Тогда - НастройкиПошаговогоМастера.ЕстьПодтверждениеОтменыЗадания = Истина; - Закрыть(); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Функция ФоновоеЗаданиеЗагрузитьНаКлиенте(ПрерватьЕслиНеВыполнено, ПоказатьДиалогПередЗакрытием) - - ОтключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера"); - - ИнформацияОЗадании = ФоновоеЗаданиеЗагрузитьРезультат(ПрерватьЕслиНеВыполнено); - Если Не ИнформацияОЗадании.Завершено Тогда - Если ПоказатьДиалогПередЗакрытием Тогда - Обработчик = Новый ОписаниеОповещения("ПослеПодтвержденияОтменыЗаданияИЗакрытияФормы", ЭтотОбъект); - ТекстВопроса = НСтр("ru = 'Прервать замену элементов и закрыть форму?'"); - - Кнопки = Новый СписокЗначений; - Кнопки.Добавить(КодВозвратаДиалога.Прервать, НСтр("ru = 'Прервать'")); - Кнопки.Добавить(КодВозвратаДиалога.Нет, НСтр("ru = 'Не прерывать'")); - - ПоказатьВопрос(Обработчик, ТекстВопроса, Кнопки, , КодВозвратаДиалога.Нет); - КонецЕсли; - Возврат Ложь; - КонецЕсли; - - Если ИнформацияОЗадании.ИнформацияОбОшибке = Неопределено Тогда - Если ИнформацияОЗадании.Результат = Истина Тогда - // Полностью успешно - закрыть форму и вывести оповещение. +Процедура ПослеЗавершенияФоновогоЗадания(Задание, ДополнительныеПараметры) Экспорт + НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием = Ложь; + Если Задание.Статус = "Выполнено" Тогда + ЕстьНеудачныеЗамены = ЗаполнитьНеудачныеЗамены(Задание.АдресРезультата); + Если ЕстьНеудачныеЗамены Тогда + // Частично успешно - вывести расшифровку. + ПерейтиНаШагМастера(Элементы.ШагПовторЗамены, Истина); + Активизировать(); + Иначе + // Полностью успешно - вывести оповещение и закрыть форму. ПоказатьОповещениеПользователя( , ПолучитьНавигационнуюСсылку(ЦелевойЭлемент), @@ -1315,125 +1160,83 @@ СписокОбновленного.Добавить(Строка.Ссылка); КонецЦикла; ОповеститьОбУспешнойЗамене(СписокОбновленного); - // Закрываем форму. Закрыть(); - Иначе - // Частично успешно - вывести расшифровку. - ПерейтиНаШагМастера(Элементы.ШагПовторЗамены, Истина); - Активизировать(); КонецЕсли Иначе // Фоновое задание завершено с ошибкой. - ПоказатьПредупреждение(, ИнформацияОЗадании.ИнформацияОбОшибке); - ПерейтиНаШагМастера(Элементы.ШагВыборЦелевогоЭлемента); + Кратко = НСтр("ru = 'При замене элементов возникла ошибка:'") + Символы.ПС + Задание.КраткоеПредставлениеОшибки; + Подробно = Кратко + Символы.ПС + Символы.ПС + Задание.ПодробноеПредставлениеОшибки; + Элементы.НадписьТекстОшибки.Заголовок = Кратко; + Элементы.СсылкаПодробнее.Подсказка = Подробно; + ПерейтиНаШагМастера(Элементы.ШагВозниклаОшибка); Активизировать(); КонецЕсли; - - Возврат Истина; -КонецФункции - -&НаСервере -Функция ФоновоеЗаданиеЗапустить() - // Отмена предыдущего задания. - ФоновоеЗаданиеОтменить(); - - // Определение параметров запуска. - ЦелевойЭлементРезультат = ЦелевойЭлемент; - - ПарыЗамен = Новый Соответствие; - Для Каждого Строка Из ЗаменяемыеСсылки Цикл - ПарыЗамен.Вставить(Строка.Ссылка, ЦелевойЭлемент); - КонецЦикла; - - ПараметрыЗамены = Новый Структура; - ПараметрыЗамены.Вставить("СпособУдаления", ТекущийВариантУдаления); - ПараметрыЗамены.Вставить("ВключатьБизнесЛогику", Истина); - - ПараметрыМетода = Новый Структура; - ПараметрыМетода.Вставить("ПарыЗамен", ПарыЗамен); - ПараметрыМетода.Вставить("Параметры", ПараметрыЗамены); - - // Запуск. - ИнформацияОбОшибке = Неопределено; - Попытка - Задание = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "ПоискИУдалениеДублей.ЗаменитьСсылки", - ПараметрыМетода, - НСтр("ru = 'Поиск и удаление дублей: Замена ссылок'")); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КонецПопытки; - Если ИнформацияОбОшибке <> Неопределено Тогда - НастройкиПошаговогоМастера.ЗаданиеВыполнено = Истина; - НастройкиПошаговогоМастера.ИнформацияОбОшибке = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); - НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания = Неопределено; - НастройкиПошаговогоМастера.АдресРезультатаФоновогоЗадания = Неопределено; - Возврат Ложь; - КонецЕсли; - - НастройкиПошаговогоМастера.АдресРезультатаФоновогоЗадания = Задание.АдресХранилища; - НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания = Задание.ИдентификаторЗадания; - НастройкиПошаговогоМастера.ЗаданиеВыполнено = Задание.ЗаданиеВыполнено; - - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено Тогда - Возврат Ложь; - КонецЕсли; - - Возврат Истина; -КонецФункции - -&НаСервере -Функция ФоновоеЗаданиеЗагрузитьРезультат(Знач ПрерватьЕслиНеВыполнено = Ложь) - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено Тогда - НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания = Неопределено; - Иначе - Задание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания); - Если Задание <> Неопределено Тогда - Если Задание.ИнформацияОбОшибке <> Неопределено Тогда - НастройкиПошаговогоМастера.ИнформацияОбОшибке = ПодробноеПредставлениеОшибки(Задание.ИнформацияОбОшибке); - КонецЕсли; - НастройкиПошаговогоМастера.ЗаданиеВыполнено = Задание.Состояние <> СостояниеФоновогоЗадания.Активно; - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено Тогда - // Текущие сообщения фонового задания. - НакопленныеСообщения = Задание.ПолучитьСообщенияПользователю(Истина); - Если НакопленныеСообщения <> Неопределено Тогда - Для Каждого Сообщение Из НакопленныеСообщения Цикл - Сообщение.Сообщить(); - КонецЦикла; - КонецЕсли; - КонецЕсли; - КонецЕсли; - КонецЕсли; - - Значение = Неопределено; - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено Тогда - НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания = Неопределено; - Если НастройкиПошаговогоМастера.ИнформацияОбОшибке = Неопределено Тогда - Значение = ПолучитьИзВременногоХранилища(НастройкиПошаговогоМастера.АдресРезультатаФоновогоЗадания); - Значение = Не ЗаполнитьНеудачныеЗамены(Значение); - КонецЕсли; - ИначеЕсли ПрерватьЕслиНеВыполнено Тогда - ФоновоеЗаданиеОтменить(); - КонецЕсли; - - ИнформацияОЗадании = Новый Структура; - ИнформацияОЗадании.Вставить("Завершено", НастройкиПошаговогоМастера.ЗаданиеВыполнено); - ИнформацияОЗадании.Вставить("ИнформацияОбОшибке", НастройкиПошаговогоМастера.ИнформацияОбОшибке); - ИнформацияОЗадании.Вставить("Результат", Значение); - - Возврат ИнформацияОЗадании; -КонецФункции - -&НаСервере -Процедура ФоновоеЗаданиеОтменить() - Если НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания <> Неопределено Тогда - ДлительныеОперации.ОтменитьВыполнениеЗадания(НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания); - КонецЕсли; - НастройкиПошаговогоМастера.ЗаданиеВыполнено = Ложь; - НастройкиПошаговогоМастера.АдресРезультатаФоновогоЗадания = Неопределено; - НастройкиПошаговогоМастера.ИнформацияОбОшибке = Неопределено; - НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания = Неопределено; КонецПроцедуры -#КонецОбласти +&НаСервере +Функция ЗаполнитьНеудачныеЗамены(Знач АдресРезультата) + // РезультатыЗамены - таблица с колонками Ссылка, ОбъектОшибки, ТипОшибки, ТекстОшибки. + РезультатыЗамены = ПолучитьИзВременногоХранилища(АдресРезультата); + + КорневыеСтроки = НеудачныеЗамены.ПолучитьЭлементы(); + КорневыеСтроки.Очистить(); + + СоответствиеСтрок = Новый Соответствие; + КэшМетаданных = Новый Соответствие; + + Для Каждого СтрокаРезультата Из РезультатыЗамены Цикл + Ссылка = СтрокаРезультата.Ссылка; + + ОшибкиПоСсылке = СоответствиеСтрок[Ссылка]; + Если ОшибкиПоСсылке = Неопределено Тогда + СтрокаДерева = КорневыеСтроки.Добавить(); + СтрокаДерева.Ссылка = Ссылка; + СтрокаДерева.Данные = Строка(Ссылка); + СтрокаДерева.Код = Строка( ВозможныйКодСсылки(Ссылка, КэшМетаданных) ); + СтрокаДерева.Пиктограмма = -1; + + ОшибкиПоСсылке = СтрокаДерева.ПолучитьЭлементы(); + СоответствиеСтрок.Вставить(Ссылка, ОшибкиПоСсылке); + КонецЕсли; + + СтрокаОшибки = ОшибкиПоСсылке.Добавить(); + СтрокаОшибки.Ссылка = СтрокаРезультата.ОбъектОшибки; + СтрокаОшибки.Данные = СтрокаРезультата.ПредставлениеОбъектаОшибки; + + ТипОшибки = СтрокаРезультата.ТипОшибки; + Если ТипОшибки = "НеизвестныеДанные" Тогда + СтрокаОшибки.Причина = НСтр("ru = 'Обнаружена данные, обработка которых не планировалась.'"); + + ИначеЕсли ТипОшибки = "ОшибкаБлокировки" Тогда + СтрокаОшибки.Причина = НСтр("ru = 'Не удалось заблокировать данные.'"); + + ИначеЕсли ТипОшибки = "ДанныеИзменены" Тогда + СтрокаОшибки.Причина = НСтр("ru = 'Данные изменены другим пользователем.'"); + + ИначеЕсли ТипОшибки = "ОшибкаЗаписи" Тогда + СтрокаОшибки.Причина = СтрокаРезультата.ТекстОшибки; + + ИначеЕсли ТипОшибки = "ОшибкаУдаления" Тогда + СтрокаОшибки.Причина = НСтр("ru = 'Невозможно удалить данные.'"); + + Иначе + СтрокаОшибки.Причина = НСтр("ru = 'Неизвестная ошибка.'"); + + КонецЕсли; + + СтрокаОшибки.ПодробнаяПричина = СтрокаРезультата.ТекстОшибки; + КонецЦикла; // результаты замены + + Возврат КорневыеСтроки.Количество() > 0; +КонецФункции + +&НаКлиенте +Процедура ПослеПодтвержденияОтменыЗадания(Ответ, ПараметрыВыполнения) Экспорт + Если Ответ = КодВозвратаДиалога.Прервать + И Элементы.ШагиМастера.ТекущаяСтраница = Элементы.ШагЗамена Тогда + НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием = Ложь; + Закрыть(); + КонецЕсли; +КонецПроцедуры + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ОбъединениеЭлементов/Form.form b/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ОбъединениеЭлементов/Form.form index d3d500caf..38ea2ad55 100644 --- a/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ОбъединениеЭлементов/Form.form +++ b/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ОбъединениеЭлементов/Form.form @@ -10,91 +10,21 @@ ШагПоискМестИспользования 72 - - ГруппаДлительнаяОперация1 - 79 - - КартинкаДлительнойОперации1 - 76 - - <key>ru</key> - <value>Картинка длительной операции1</value> - - true - true - - true - - - КартинкаДлительнойОперации1РасширеннаяПодсказка - 78 - Label - true - true - - Left - - - - КартинкаДлительнойОперации1КонтекстноеМеню - 77 - true - - 6 - true - true - true - - - - - - ОписаниеДлительнойОперации1 - 81 - - <key>ru</key> - <value>Пожалуйста, подождите. -Выполняется поиск мест использования элементов...</value> - - true - true - - true - - - ОписаниеДлительнойОперации1РасширеннаяПодсказка - 83 - Label - true - true - - Left - - - - ОписаниеДлительнойОперации1КонтекстноеМеню - 82 - true - - Label - true - true - true - - Left - Center - - + + КартинкаДлительнойОперации1 + 76 + + <key>ru</key> + <value>Картинка длительной операции1</value> + true true true - 10 - false - ГруппаДлительнаяОперация1РасширеннаяПодсказка - 80 + КартинкаДлительнойОперации1РасширеннаяПодсказка + 78 Label true true @@ -102,13 +32,55 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + + КартинкаДлительнойОперации1КонтекстноеМеню + 77 + true + + true + true + Center + + + CommonPicture.ДлительнаяОперация48 + + + + + ОписаниеДлительнойОперации1 + 81 + + <key>ru</key> + <value>Пожалуйста, подождите. +Выполняется поиск мест использования элементов...</value> + + true + true + + true + + + ОписаниеДлительнойОперации1РасширеннаяПодсказка + 83 + Label + true + true + + Left + + + + ОписаниеДлительнойОперации1КонтекстноеМеню + 82 + true + + Label + true + true + Center + + Left + Center true @@ -136,7 +108,6 @@ Page - Vertical auto false @@ -1152,7 +1123,6 @@ true true - 69 true true true @@ -1177,19 +1147,23 @@
      - ГруппаОтчет - 29 + ГруппаПодсказка + 36 - Декорация1 - 33 + ПодсказкаВыбораОсновногоЭлемента + 184 + + <key>ru</key> + <value>Подсказка выбора основного элемента</value> + true true true - Декорация1РасширеннаяПодсказка - 35 + ПодсказкаВыбораОсновногоЭлементаРасширеннаяПодсказка + 186 Label true true @@ -1198,16 +1172,23 @@ - Декорация1КонтекстноеМеню - 34 + ПодсказкаВыбораОсновногоЭлементаКонтекстноеМеню + 185 true Label - true true true + + Style.ПоясняющийТекст + + + URLProcessing + ПодсказкаВыбораОсновногоЭлементаОбработкаНавигационнойСсылки + Left + Top @@ -1242,82 +1223,6 @@ true - - ru - Группа отчет - - true - - ГруппаОтчетРасширеннаяПодсказка - 30 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаПодсказка - 36 - - ПодсказкаВыбораОсновногоЭлемента - 184 - - <key>ru</key> - <value>Подсказка выбора основного элемента</value> - - true - true - - true - - - ПодсказкаВыбораОсновногоЭлементаРасширеннаяПодсказка - 186 - Label - true - true - - Left - - - - ПодсказкаВыбораОсновногоЭлементаКонтекстноеМеню - 185 - true - - Label - true - 3 - true - true - - Style.ПоясняющийТекст - - - - URLProcessing - ПодсказкаВыбораОсновногоЭлементаОбработкаНавигационнойСсылки - - Left - Top - - - true - true - - true - <key>ru</key> <value>Группа подсказка</value> @@ -1338,7 +1243,6 @@ </extendedTooltip> <type>UsualGroup</type> <extInfo xsi:type="form:UsualGroupExtInfo"> - <group>Vertical</group> <behavior>Auto</behavior> <showLeftMargin>true</showLeftMargin> <united>true</united> @@ -1379,91 +1283,17 @@ <items xsi:type="form:FormGroup"> <name>ШагОбъединение</name> <id>87</id> - <items xsi:type="form:FormGroup"> - <name>ГруппаДлительнаяОперация2</name> - <id>89</id> - <items xsi:type="form:Decoration"> - <name>КартинкаДлительнойОперации2</name> - <id>91</id> - <title> - <key>ru</key> - <value>Картинка длительной операции1</value> - - true - true - - true - - - КартинкаДлительнойОперации2РасширеннаяПодсказка - 93 - Label - true - true - - Left - - - - КартинкаДлительнойОперации2КонтекстноеМеню - 92 - true - - 6 - true - true - true - - - - - - ОписаниеДлительнойОперации2 - 94 - - <key>ru</key> - <value>Пожалуйста, подождите. -Выполняется объединение элементов...</value> - - true - true - - true - - - ОписаниеДлительнойОперации2РасширеннаяПодсказка - 96 - Label - true - true - - Left - - - - ОписаниеДлительнойОперации2КонтекстноеМеню - 95 - true - - Label - true - true - true - - Left - Center - - + + КартинкаДлительнойОперации + 91 true true true - 10 - false - ГруппаДлительнаяОперация2РасширеннаяПодсказка - 90 + КартинкаДлительнойОперацииРасширеннаяПодсказка + 93 Label true true @@ -1471,13 +1301,55 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + + КартинкаДлительнойОперацииКонтекстноеМеню + 92 + true + + true + true + Center + + + CommonPicture.ДлительнаяОперация48 + + + + + ОписаниеДлительнойОперации + 94 + + <key>ru</key> + <value>Пожалуйста, подождите. +Выполняется объединение элементов...</value> + + true + true + + true + + + ОписаниеДлительнойОперацииРасширеннаяПодсказка + 96 + Label + true + true + + Left + + + + ОписаниеДлительнойОперацииКонтекстноеМеню + 95 + true + + Label + true + true + Center + + Left + Center true @@ -1505,7 +1377,6 @@ Page - Vertical auto false @@ -1541,7 +1412,6 @@ true Label - true true Left @@ -1608,7 +1478,6 @@ true Label - true true Left @@ -2219,8 +2088,8 @@ Left true - true true + false true true true @@ -2259,6 +2128,151 @@ false + + ШагВозниклаОшибка + 230 + + КартинкаПредупреждение32 + 232 + + <key>ru</key> + <value>Картинка предупреждение32</value> + + true + true + + true + + + КартинкаПредупреждение32РасширеннаяПодсказка + 234 + Label + true + true + + Left + + + + КартинкаПредупреждение32КонтекстноеМеню + 233 + true + + true + true + Center + + + CommonPicture.Предупреждение32 + + + + + НадписьТекстОшибки + 235 + + <key>ru</key> + <value>Надпись текст ошибки</value> + + true + true + + true + + + НадписьТекстОшибкиРасширеннаяПодсказка + 237 + Label + true + true + + Left + + + + НадписьТекстОшибкиКонтекстноеМеню + 236 + true + + Label + 5 + true + true + Center + + Left + Center + + + + СсылкаПодробнее + 238 + + <key>ru</key> + <value>Подробнее</value> + + true + true + + true + + + СсылкаПодробнееРасширеннаяПодсказка + 240 + Label + true + true + + Left + + + + СсылкаПодробнееКонтекстноеМеню + 239 + true + + Label + true + Center + + + Click + СсылкаПодробнееНажатие + + true + Left + Center + + + true + true + + true + + + <key>ru</key> + <value>Возникла ошибка</value> + + + ru + Шаг возникла ошибка + + + ШагВозниклаОшибкаРасширеннаяПодсказка + 231 + Label + true + true + + Left + + + Page + + auto + false + + true true @@ -2437,11 +2451,6 @@ ru Группа вперед - - ru - Группа вперед - - true ГруппаВпередРасширеннаяПодсказка 55 @@ -2466,11 +2475,6 @@ ru Панель действий мастера - - ru - Панель действий мастера - - true ПанельДействийМастераРасширеннаяПодсказка 42 @@ -2507,10 +2511,6 @@ OnCreateAtServer ПриСозданииНаСервере - - OnClose - ПриЗакрытии - Abort Cancel Ignore diff --git a/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ОбъединениеЭлементов/Items/КартинкаДлительнойОперации1/Picture.gif b/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ОбъединениеЭлементов/Items/КартинкаДлительнойОперации1/Picture.gif deleted file mode 100644 index fd636e679..000000000 Binary files a/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ОбъединениеЭлементов/Items/КартинкаДлительнойОперации1/Picture.gif and /dev/null differ diff --git a/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ОбъединениеЭлементов/Items/КартинкаДлительнойОперации2/Picture.gif b/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ОбъединениеЭлементов/Items/КартинкаДлительнойОперации2/Picture.gif deleted file mode 100644 index fd636e679..000000000 Binary files a/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ОбъединениеЭлементов/Items/КартинкаДлительнойОперации2/Picture.gif and /dev/null differ diff --git a/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ОбъединениеЭлементов/Module.bsl b/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ОбъединениеЭлементов/Module.bsl index f29b5458e..427d0fe0b 100644 --- a/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ОбъединениеЭлементов/Module.bsl +++ b/SSL/src/DataProcessors/ЗаменаИОбъединениеЭлементов/Forms/ОбъединениеЭлементов/Module.bsl @@ -43,33 +43,40 @@ Возврат; КонецЕсли; - // Указываем стартовую страницу. - УстановитьНачальнуюСтраницуМастера(Элементы.ШагПоискМестИспользования); - ЗапуститьРаботуМастера(); + // По умолчанию все отключено + Элементы[НастройкиПошаговогоМастера.КнопкаДалее].Видимость = Ложь; + Элементы[НастройкиПошаговогоМастера.КнопкаНазад].Видимость = Ложь; + Элементы[НастройкиПошаговогоМастера.КнопкаОтмена].Видимость = Ложь; + + // Отложенный запуск + НастройкиПошаговогоМастера.НомерТекущегоШага = НомерШагаМастераПоИдентификатору(Элементы.ШагПоискМестИспользования); + ПодключитьОбработчикОжидания("ЗапуститьРаботуМастера", 0.1, Истина); КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) - // Проверка задания. - Если НастройкиПошаговогоМастера.ИмяПроцедуры = "ЗаменитьСсылки" // Важно показывать только результат замены. - И НастройкиПошаговогоМастера.ЗаданиеВыполнено = Ложь - И НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания <> Неопределено - И НастройкиПошаговогоМастера.ЕстьПодтверждениеОтменыЗадания = Ложь Тогда - Отказ = Истина; - ФоновоеЗаданиеЗагрузитьНаКлиенте(Ложь, Истина); + // Поиск мест использования не является критичным шагом, для которого требуется подтверждение отмены. + Если НастройкиПошаговогоМастера.ИмяПроцедуры <> "ЗаменитьСсылки" + Или Элементы.ШагиМастера.ТекущаяСтраница <> Элементы.ШагОбъединение + Или Не НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием Тогда + Возврат; КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ПриЗакрытии() - - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено = Ложь - И НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания <> Неопределено Тогда - ФоновоеЗаданиеОтменить(); + Отказ = Истина; + Если ЗавершениеРаботы Тогда + Возврат; КонецЕсли; + ТекстВопроса = НСтр("ru = 'Прервать объединение элементов и закрыть форму?'"); + + Кнопки = Новый СписокЗначений; + Кнопки.Добавить(КодВозвратаДиалога.Прервать, НСтр("ru = 'Прервать'")); + Кнопки.Добавить(КодВозвратаДиалога.Нет, НСтр("ru = 'Не прерывать'")); + + Обработчик = Новый ОписаниеОповещения("ПослеПодтвержденияОтменыЗадания", ЭтотОбъект); + ПоказатьВопрос(Обработчик, ТекстВопроса, Кнопки, , КодВозвратаДиалога.Нет); + КонецПроцедуры #КонецОбласти @@ -91,6 +98,11 @@ КонецПроцедуры +&НаКлиенте +Процедура СсылкаПодробнееНажатие(Элемент) + СтандартныеПодсистемыКлиент.ПоказатьПодробнуюИнформацию(Неопределено, Элемент.Подсказка); +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыМестаИспользования @@ -478,12 +490,9 @@ &НаКлиенте Функция СообщениеОЗавершении() - - Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Элементы (%1) объединены в ""%2""'"), + Возврат СтроковыеФункцииКлиентСервер.ЧислоЦифрамиПредметИсчисленияПрописью( МестаИспользования.Количество(), - ОсновнойЭлемент); - + НСтр("ru = 'элемент объединен в:'") + "," + НСтр("ru = 'элемента объединено в:'") + "," + НСтр("ru = 'элементов объединено в:'")); КонецФункции &НаКлиенте @@ -517,112 +526,6 @@ КонецЕсли; КонецПроцедуры -&НаСервере -Процедура ЗаполнитьМестаИспользования(Знач ТаблицаИспользования) - - НовыеМестаИспользования = МестаИспользования.Выгрузить(); - НовыеМестаИспользования.Индексы.Добавить("Ссылка"); - - ЭтоОбновление = НовыеМестаИспользования.Найти(ОсновнойЭлемент, "Ссылка") <> Неопределено; - - Если Не ЭтоОбновление Тогда - НовыеМестаИспользования = МестаИспользования.Выгрузить(Новый Массив); - НовыеМестаИспользования.Индексы.Добавить("Ссылка"); - КонецЕсли; - - КэшМетаданных = Новый Соответствие; - - МаксСсылка = Неопределено; - МаксМест = -1; - Для Каждого Строка Из ТаблицаИспользования Цикл - Ссылка = Строка.Ссылка; - - СтрокаИспользования = НовыеМестаИспользования.Найти(Ссылка, "Ссылка"); - Если СтрокаИспользования = Неопределено Тогда - СтрокаИспользования = НовыеМестаИспользования.Добавить(); - СтрокаИспользования.Ссылка = Ссылка; - КонецЕсли; - - Мест = Строка.Вхождения; - Если Мест>МаксМест - И Не Ссылка.ПометкаУдаления Тогда - МаксСсылка = Ссылка; - МаксМест = Мест; - КонецЕсли; - - СтрокаИспользования.МестИспользования = Мест; - СтрокаИспользования.Код = ВозможныйКодСсылки(Ссылка, КэшМетаданных); - СтрокаИспользования.Владелец = ВозможныйВладелецСсылки(Ссылка, КэшМетаданных); - - СтрокаИспользования.НеИспользуется = ?(Мест = 0, НСтр("ru = 'Не используется'"), ""); - КонецЦикла; - - МестаИспользования.Загрузить(НовыеМестаИспользования); - - Если МаксСсылка <> Неопределено Тогда - ОсновнойЭлемент = МаксСсылка; - КонецЕсли; - - // Обновляем заголовки - Представление = ?(ОсновнойЭлемент = Неопределено, "", ОсновнойЭлемент.Метаданные().Представление()); - ТекстЗаголовка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Объединение элементов %1 в один'"), Представление); -КонецПроцедуры - -&НаСервере -Функция ЗаполнитьНеудачныеЗамены(Знач РезультатыЗамены) - // РезультатыЗамены - таблица с колонками Ссылка, ОбъектОшибки, ТипОшибки, ТекстОшибки. - КорневыеСтроки = НеудачныеЗамены.ПолучитьЭлементы(); - КорневыеСтроки.Очистить(); - - СоответствиеСтрок = Новый Соответствие; - КэшМетаданных = Новый Соответствие; - - Для Каждого СтрокаРезультата Из РезультатыЗамены Цикл - Ссылка = СтрокаРезультата.Ссылка; - - ОшибкиПоСсылке = СоответствиеСтрок[Ссылка]; - Если ОшибкиПоСсылке = Неопределено Тогда - СтрокаДерева = КорневыеСтроки.Добавить(); - СтрокаДерева.Ссылка = Ссылка; - СтрокаДерева.Данные = Строка(Ссылка); - СтрокаДерева.Код = Строка( ВозможныйКодСсылки(Ссылка, КэшМетаданных) ); - СтрокаДерева.Пиктограмма = -1; - - ОшибкиПоСсылке = СтрокаДерева.ПолучитьЭлементы(); - СоответствиеСтрок.Вставить(Ссылка, ОшибкиПоСсылке); - КонецЕсли; - - СтрокаОшибки = ОшибкиПоСсылке.Добавить(); - СтрокаОшибки.Ссылка = СтрокаРезультата.ОбъектОшибки; - СтрокаОшибки.Данные = СтрокаРезультата.ПредставлениеОбъектаОшибки; - - ТипОшибки = СтрокаРезультата.ТипОшибки; - Если ТипОшибки = "НеизвестныеДанные" Тогда - СтрокаОшибки.Причина = НСтр("ru = 'Обнаружена данные, обработка которых не планировалась.'"); - - ИначеЕсли ТипОшибки = "ОшибкаБлокировки" Тогда - СтрокаОшибки.Причина = НСтр("ru = 'Не удалось заблокировать данные.'"); - - ИначеЕсли ТипОшибки = "ДанныеИзменены" Тогда - СтрокаОшибки.Причина = НСтр("ru = 'Данные изменены другим пользователем.'"); - - ИначеЕсли ТипОшибки = "ОшибкаЗаписи" Тогда - СтрокаОшибки.Причина = СтрокаРезультата.ТекстОшибки; - - ИначеЕсли ТипОшибки = "ОшибкаУдаления" Тогда - СтрокаОшибки.Причина = НСтр("ru = 'Невозможно удалить данные.'"); - - Иначе - СтрокаОшибки.Причина = НСтр("ru = 'Неизвестная ошибка.'"); - - КонецЕсли; - - СтрокаОшибки.ПодробнаяПричина = СтрокаРезультата.ТекстОшибки; - КонецЦикла; // результаты замены - - Возврат КорневыеСтроки.Количество() > 0; -КонецФункции - &НаСервереБезКонтекста Функция ИмяФормыВыбораПоСсылке(Знач Ссылка) Мета = Метаданные.НайтиПоТипу(ТипЗнч(Ссылка)); @@ -784,8 +687,7 @@ ДобавитьШагМастера(Элементы.ШагПоискМестИспользования, ДействиеШагаМастера("ПриАктивации", "ШагПоискМестИспользованияПриАктивации", - ДействиеШагаМастера("ПередДействиемОтмена", "ШагПоискМестИспользованияПередДействиемОтмена", - ДействиеШагаМастера("ПриОбработкеОжидания", "ШагПоискМестИспользованияПриОбработкеОжидания"))), + ДействиеШагаМастера("ПередДействиемОтмена", "ШагПоискМестИспользованияПередДействиемОтмена")), КнопкиМастера); // 1. Выбор основного элемента. @@ -803,7 +705,7 @@ ДействиеШагаМастера("ПередДействиемОтмена", "ШагВыборОсновногоЭлементаПередДействиемОтмена"))), КнопкиМастера); - // 2. Ожидание процесса + // 2. Ожидание процесса. КнопкиМастера = КнопкиМастера(); КнопкиМастера.Назад.Видимость = Ложь; КнопкиМастера.Далее.Видимость = Ложь; @@ -812,11 +714,10 @@ ДобавитьШагМастера(Элементы.ШагОбъединение, ДействиеШагаМастера("ПриАктивации", "ШагОбъединениеПриАктивации", - ДействиеШагаМастера("ПередДействиемОтмена", "ШагОбъединениеПередДействиемОтмена", - ДействиеШагаМастера("ПриОбработкеОжидания", "ШагОбъединениеПриОбработкеОжидания"))), + ДействиеШагаМастера("ПередДействиемОтмена", "ШагОбъединениеПередДействиемОтмена")), КнопкиМастера); - // 3. Успешное объединение + // 3. Успешное объединение. КнопкиМастера = КнопкиМастера(); КнопкиМастера.Назад.Видимость = Ложь; КнопкиМастера.Далее.Видимость = Ложь; @@ -829,7 +730,7 @@ ДействиеШагаМастера("ПередДействиемОтмена", "ШагУспешногоЗавершенияПередДействиемОтмена")), КнопкиМастера); - // 4. Ошибки замены ссылок + // 4. Проблемы замены ссылок. КнопкиМастера = КнопкиМастера(); КнопкиМастера.Назад.Заголовок = НСтр("ru = '< В начало'"); КнопкиМастера.Назад.Подсказка = НСтр("ru = 'Вернутся к выбору основного элемента'"); @@ -845,24 +746,28 @@ ДействиеШагаМастера("ПередДействиемНазад", "ШагПовторОбъединенияПередДействиемНазад", ДействиеШагаМастера("ПередДействиемОтмена", "ШагПовторОбъединенияПередДействиемОтмена")))), КнопкиМастера); + + // 5. Ошибки выполнения. + КнопкиМастера = КнопкиМастера(); + КнопкиМастера.Назад.Видимость = Ложь; + КнопкиМастера.Далее.Видимость = Ложь; + КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Закрыть'"); + + ДобавитьШагМастера(Элементы.ШагВозниклаОшибка, + ДействиеШагаМастера("ПередДействиемОтмена", "ШагВозниклаОшибкаПередДействиемОтмена"), + КнопкиМастера); + КонецПроцедуры &НаКлиенте Процедура ШагПоискМестИспользованияПриАктивации(Знач Страница, Знач ДополнительныеПараметры) Экспорт НастройкиПошаговогоМастера.ИмяПроцедуры = "ОпределитьМестаИспользования"; - ФоновоеЗаданиеЗапустить(); -КонецПроцедуры - -&НаКлиенте -Процедура ШагПоискМестИспользованияПриОбработкеОжидания(Прекратить, Знач ДополнительныеПараметры) Экспорт - Если ФоновоеЗаданиеЗагрузитьНаКлиенте(Ложь, Ложь) Тогда - Прекратить = Истина; - КонецЕсли; + ЗапуститьФоновоеЗаданиеКлиент(); КонецПроцедуры &НаКлиенте Процедура ШагПоискМестИспользованияПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - ПроверитьФоновоеЗаданиеИЗакрытьФормуБезПодтверждения(); + Закрыть(); КонецПроцедуры &НаКлиенте @@ -901,25 +806,20 @@ &НаКлиенте Процедура ШагОбъединениеПриАктивации(Знач Страница, Знач ДополнительныеПараметры) Экспорт НастройкиПошаговогоМастера.ИмяПроцедуры = "ЗаменитьСсылки"; - ФоновоеЗаданиеЗапустить(); -КонецПроцедуры - -&НаКлиенте -Процедура ШагОбъединениеПриОбработкеОжидания(Прекратить, Знач ДополнительныеПараметры) Экспорт - Если ФоновоеЗаданиеЗагрузитьНаКлиенте(Ложь, Ложь) Тогда - Прекратить = Истина; - КонецЕсли; + НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием = Истина; + ЗапуститьФоновоеЗаданиеКлиент(); КонецПроцедуры &НаКлиенте Процедура ШагОбъединениеПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - ПроверитьФоновоеЗаданиеИЗакрытьФормуБезПодтверждения(); + НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием = Ложь; + Закрыть(); КонецПроцедуры &НаКлиенте Процедура ШагУспешногоЗавершенияПриАктивации(Знач Страница, Знач ДополнительныеПараметры) Экспорт - Элементы.РезультатОбъединения.Заголовок = СообщениеОЗавершении(); + Элементы.РезультатОбъединения.Заголовок = СообщениеОЗавершении() + " """ + Строка(ОсновнойЭлемент) + """"; СписокОбновленного = Новый Массив; Для Каждого Строка Из МестаИспользования Цикл @@ -949,14 +849,12 @@ &НаКлиенте Процедура ШагПовторОбъединенияПередДействиемДалее(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - // Повтор замены - ПерейтиНаШагМастера(Элементы.ШагОбъединение, Истина); + ПерейтиНаШагМастера(Элементы.ШагОбъединение, Истина); // Повтор замены КонецПроцедуры &НаКлиенте Процедура ШагПовторОбъединенияПередДействиемНазад(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - // Перезаполняем список обрабатываемых. - ПерейтиНаШагМастера(Элементы.ШагПоискМестИспользования, Истина); + ПерейтиНаШагМастера(Элементы.ШагПоискМестИспользования, Истина); // Перезаполняем список обрабатываемых. КонецПроцедуры &НаКлиенте @@ -964,6 +862,11 @@ Закрыть(); КонецПроцедуры +&НаКлиенте +Процедура ШагВозниклаОшибкаПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + Закрыть(); +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // ПРОЦЕДУРЫ И ФУНКЦИИ ПОШАГОВОГО ПОМОЩНИКА @@ -981,7 +884,6 @@ Результат.Вставить("Шаги", Новый Массив); Результат.Вставить("НомерТекущегоШага", 0); - Результат.Вставить("СтраницаСтарта", Неопределено); // Идентификаторы частей интерфейса. Результат.Вставить("ГруппаСтраниц", ГруппаСтраниц.Имя); @@ -989,20 +891,9 @@ Результат.Вставить("КнопкаНазад", КнопкаНазад.Имя); Результат.Вставить("КнопкаОтмена", КнопкаОтмена.Имя); - // Таймаут вызова обработчика - Результат.Вставить("ТаймаутОжиданияДлительнойОперации", - ?( ПолучитьСкоростьКлиентскогоСоединения() = СкоростьКлиентскогоСоединения.Низкая, 4, 2) ); - // Для обработки длительных операций. - Результат.Вставить("ИдентификаторФоновогоЗадания"); - Результат.Вставить("АдресРезультатаФоновогоЗадания"); - Результат.Вставить("ИнформацияОбОшибке"); - Результат.Вставить("ЗаданиеВыполнено", Ложь); Результат.Вставить("ИмяПроцедуры"); - Результат.Вставить("ЕстьПодтверждениеОтменыЗадания", Ложь); - - // Для хранения пользовательских параметров. - Результат.Вставить("ПользовательскиеПараметры", Новый Соответствие); + Результат.Вставить("ПоказатьДиалогПередЗакрытием", Ложь); Возврат Результат; КонецФункции @@ -1036,12 +927,6 @@ // * ПередДействиемОтмена - Строка - Аналогично ПередДействиемДалее, описывает поведение при нажатии кнопки // "Отмена". // -// * ПриОбработкеОжидания - Строка - Необязательное имя процедуры, которая будет периодически вызываться с -// двумя параметрами: -// <Прекратить> - Если при выходе из процедуры установить в значение -// Истина, то периодические вызовы будут прекращены. -// <ДополнительныеПараметры> - Неопределено -// // Кнопки - Структура - описание кнопок на текущем шаге. Поля структуры: // // * Далее - Структура - Описание кнопки "Далее". поля: Заголовок, Подсказка, Доступность, Видимость, @@ -1062,7 +947,7 @@ Процедура ДобавитьШагМастера(Знач Страница, Знач Действия, Знач Кнопки) // Умолчания - ОписаниеШага = Новый Структура("ПриАктивации, ПередДействиемДалее, ПередДействиемНазад, ПередДействиемОтмена, ПриОбработкеОжидания"); + ОписаниеШага = Новый Структура("ПриАктивации, ПередДействиемДалее, ПередДействиемНазад, ПередДействиемОтмена"); ПоляКнопки = "Доступность, Видимость, КнопкаПоУмолчанию, Подсказка"; @@ -1157,57 +1042,28 @@ Возврат Результат; КонецФункции -// Устанавливает начальную страницу для первого запуска мастера. -// -// Параметры: -// СтартоваяСтраница - Число, Строка, ГруппаФормы - Номер шага, группа-страница, или ее идентификатор. -// -&НаКлиенте -Процедура УстановитьНачальнуюСтраницуМастера(Знач Страница) - - НастройкиПошаговогоМастера.СтраницаСтарта = НомерШагаМастераПоИдентификатору(Страница); - -КонецПроцедуры - -// Запускает начальную работу мастера с шага, установленного предварительно при помощи -// "УстановитьНачальнуюСтраницуМастера". &НаКлиенте Процедура ЗапуститьРаботуМастера() - Если НастройкиПошаговогоМастера.СтраницаСтарта = Неопределено Тогда - ВызватьИсключение НСтр("ru = 'Перед запуском мастера должна быть установлена начальная страница.'"); - - ИначеЕсли НастройкиПошаговогоМастера.СтраницаСтарта = -1 Тогда - // Разогрев. Проверяем наличие обработчиков действий у всех шагов. - ВозможныеДействия = Новый Структура("ПриАктивации, ПередДействиемДалее, ПередДействиемНазад, ПередДействиемОтмена, ПриОбработкеОжидания"); - Для Каждого ОписаниеШага Из НастройкиПошаговогоМастера.Шаги Цикл - Для Каждого КлючЗначение Из ВозможныеДействия Цикл - ИмяДействия = КлючЗначение.Ключ; - ИмяОбработчика = ОписаниеШага[ИмяДействия]; - Если Не ПустаяСтрока(ИмяОбработчика) Тогда - Попытка - Тест = Новый ОписаниеОповещения(ИмяОбработчика, ЭтотОбъект); - Исключение - Текст = НСтр("ru = 'Ошибка создания обработчика события %1 для страницы %2, не определена процедура %3'"); - Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Текст, ИмяДействия, ОписаниеШага.Страница, ИмяОбработчика); - ВызватьИсключение Текст; - КонецПопытки; - КонецЕсли; - КонецЦикла; + // Разогрев. Проверяем наличие обработчиков действий у всех шагов. + ВозможныеДействия = Новый Структура("ПриАктивации, ПередДействиемДалее, ПередДействиемНазад, ПередДействиемОтмена"); + Для Каждого ОписаниеШага Из НастройкиПошаговогоМастера.Шаги Цикл + Для Каждого КлючЗначение Из ВозможныеДействия Цикл + ИмяДействия = КлючЗначение.Ключ; + ИмяОбработчика = ОписаниеШага[ИмяДействия]; + Если Не ПустаяСтрока(ИмяОбработчика) Тогда + Попытка + Тест = Новый ОписаниеОповещения(ИмяОбработчика, ЭтотОбъект); + Исключение + Текст = НСтр("ru = 'Ошибка создания обработчика события %1 для страницы %2, не определена процедура %3'"); + Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Текст, ИмяДействия, ОписаниеШага.Страница, ИмяОбработчика); + ВызватьИсключение Текст; + КонецПопытки; + КонецЕсли; КонецЦикла; - - // Фактический запуск - ПерейтиНаШагМастера(НастройкиПошаговогоМастера.НомерТекущегоШага, Истина); - Иначе - // По умолчанию все отключено - Элементы[НастройкиПошаговогоМастера.КнопкаДалее].Видимость = Ложь; - Элементы[НастройкиПошаговогоМастера.КнопкаНазад].Видимость = Ложь; - Элементы[НастройкиПошаговогоМастера.КнопкаОтмена].Видимость = Ложь; - - // Отложенный запуск - НастройкиПошаговогоМастера.НомерТекущегоШага = НастройкиПошаговогоМастера.СтраницаСтарта; - НастройкиПошаговогоМастера.СтраницаСтарта = -1; - ПодключитьОбработчикОжидания("ЗапуститьРаботуМастера", 0.1, Истина); - КонецЕсли; + КонецЦикла; + + // Фактический запуск. + ПерейтиНаШагМастера(НастройкиПошаговогоМастера.НомерТекущегоШага, Истина); КонецПроцедуры // Выполняет переключение мастера на следующую или предыдущую страницу. @@ -1226,13 +1082,8 @@ Иначе ВызватьИсключение НСтр("ru = 'Некорректная команда шага помощника'"); КонецЕсли; - - ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; - // Останавливаем обработчик, если есть. - Если ОписаниеШага.ПриОбработкеОжидания <> Неопределено Тогда - ОтключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера"); - КонецЕсли; + ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; // Отрабатываем уход с текущей страницы. Если Направление = 1 Тогда @@ -1267,13 +1118,8 @@ Ошибка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не найден шаг помощника %1'"), ИдентификаторШага); ВызватьИсключение Ошибка; КонецЕсли; - - ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; - // Останавливаем обработчик, если есть. - Если ОписаниеШага.ПриОбработкеОжидания <> Неопределено Тогда - ОтключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера"); - КонецЕсли; + ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; // И запускаем новую страницу ШагМастераЗавершениеБезусловно(СледующийШаг, ИнициироватьСобытия); @@ -1335,11 +1181,6 @@ Если ИнициироватьСобытия И Не ПустаяСтрока(ОписаниеШага.ПриАктивации) Тогда // Отрабатываем "ПриАктивации" новой страницы, он же запустит ожидание. ПодключитьОбработчикОжидания("ОбработкаАктивацииСтраницыМастера", 0.1, Истина); - - ИначеЕсли Не ПустаяСтрока(ОписаниеШага.ПриОбработкеОжидания) Тогда - // Запускаем обработчик ожидания, если надо. - ПодключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера", 0.1, Истина); - КонецЕсли; КонецПроцедуры @@ -1359,12 +1200,6 @@ Оповещение = Новый ОписаниеОповещения(ОписаниеШага.ПриАктивации, ЭтотОбъект); ВыполнитьОбработкуОповещения(Оповещение, Элементы[ОписаниеШага.Страница]); КонецЕсли; - - // И запускаем ожидание, если надо. - Если Не ПустаяСтрока(ОписаниеШага.ПриОбработкеОжидания) Тогда - // Первый запуск быстрый - ПодключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера", 0.1, Истина); - КонецЕсли; КонецПроцедуры // Может быть номер шага или группа-страница, или ее идентификатор. @@ -1385,117 +1220,25 @@ ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не найден шаг ""%1"".'"), ИмяПоиска); КонецФункции -// Возвращает флаг отмены -&НаКлиенте -Функция ОбработкаОжиданияСтраницыМастера() - ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; - Действие = ОписаниеШага.ПриОбработкеОжидания; - Если ПустаяСтрока(Действие) Тогда - Возврат Ложь; - КонецЕсли; - - Оповещение = Новый ОписаниеОповещения(Действие, ЭтотОбъект); - - Прекратить = Ложь; - ВыполнитьОбработкуОповещения(Оповещение, Прекратить); - Продолжать = Не Прекратить; - - Если Продолжать Тогда - ПодключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера", НастройкиПошаговогоМастера.ТаймаутОжиданияДлительнойОперации, Истина); - КонецЕсли; - - Возврат Продолжать; -КонецФункции +//////////////////////////////////////////////////////////////////////////////// +// Работа с длительными операциями &НаКлиенте -Процедура ПослеПодтвержденияОтменыЗаданияИЗакрытияФормы(Ответ, ПараметрыВыполнения) Экспорт - Если Ответ = КодВозвратаДиалога.Прервать Тогда - ПроверитьФоновоеЗаданиеИЗакрытьФормуБезПодтверждения(); - Иначе - ОбработкаОжиданияСтраницыМастера(); - КонецЕсли; +Процедура ЗапуститьФоновоеЗаданиеКлиент() + Задание = ЗапуститьФоновоеЗадание(); + + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + НастройкиОжидания.ВыводитьОкноОжидания = Ложь; + + Обработчик = Новый ОписаниеОповещения("ПослеЗавершенияФоновогоЗадания", ЭтотОбъект); + + ДлительныеОперацииКлиент.ОжидатьЗавершение(Задание, Обработчик, НастройкиОжидания); КонецПроцедуры -&НаКлиенте -Процедура ПроверитьФоновоеЗаданиеИЗакрытьФормуБезПодтверждения() - Если Не ФоновоеЗаданиеЗагрузитьНаКлиенте(Истина, Ложь) Тогда - НастройкиПошаговогоМастера.ЕстьПодтверждениеОтменыЗадания = Истина; - Закрыть(); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Функция ФоновоеЗаданиеЗагрузитьНаКлиенте(ПрерватьЕслиНеВыполнено, ПоказатьДиалогПередЗакрытием) - - ОтключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера"); - - ИнформацияОЗадании = ФоновоеЗаданиеЗагрузитьРезультат(ПрерватьЕслиНеВыполнено); - Если Не ИнформацияОЗадании.Завершено Тогда - Если ПоказатьДиалогПередЗакрытием Тогда - Обработчик = Новый ОписаниеОповещения("ПослеПодтвержденияОтменыЗаданияИЗакрытияФормы", ЭтотОбъект); - - Если НастройкиПошаговогоМастера.ИмяПроцедуры = "ОпределитьМестаИспользования" Тогда - ТекстВопроса = НСтр("ru = 'Прервать поиск мест использования и закрыть форму?'"); - ИначеЕсли НастройкиПошаговогоМастера.ИмяПроцедуры = "ЗаменитьСсылки" Тогда - ТекстВопроса = НСтр("ru = 'Прервать объединение элементов и закрыть форму?'"); - КонецЕсли; - - Кнопки = Новый СписокЗначений; - Кнопки.Добавить(КодВозвратаДиалога.Прервать, НСтр("ru = 'Прервать'")); - Кнопки.Добавить(КодВозвратаДиалога.Нет, НСтр("ru = 'Не прерывать'")); - - ПоказатьВопрос(Обработчик, ТекстВопроса, Кнопки, , КодВозвратаДиалога.Нет); - КонецЕсли; - Возврат Ложь; - КонецЕсли; - - Если НастройкиПошаговогоМастера.ИмяПроцедуры = "ОпределитьМестаИспользования" Тогда - Если ИнформацияОЗадании.ИнформацияОбОшибке = Неопределено Тогда - Активизировать(); - ШагМастера("Далее"); - Иначе - Активизировать(); - ПоказатьПредупреждение(, ИнформацияОЗадании.ИнформацияОбОшибке); - КонецЕсли; - ИначеЕсли НастройкиПошаговогоМастера.ИмяПроцедуры = "ЗаменитьСсылки" Тогда - Если ИнформацияОЗадании.ИнформацияОбОшибке = Неопределено Тогда - Если ИнформацияОЗадании.Результат = Истина Тогда - // Полностью успешно - закрыть форму и вывести оповещение. - ПоказатьОповещениеПользователя( - , - ПолучитьНавигационнуюСсылку(ОсновнойЭлемент), - СообщениеОЗавершении(), - БиблиотекаКартинок.Информация32); - СписокОбновленного = Новый Массив; - Для Каждого Строка Из МестаИспользования Цикл - СписокОбновленного.Добавить(Строка.Ссылка); - КонецЦикла; - ОповеститьОбУспешнойЗамене(СписокОбновленного); - // Закрываем форму. - Закрыть(); - Иначе - // Частично успешно - вывести расшифровку. - Активизировать(); - ПерейтиНаШагМастера(Элементы.ШагПовторОбъединения, Истина); - КонецЕсли - Иначе - // Фоновое задание завершилось с ошибкой. - Активизировать(); - ПоказатьПредупреждение(, ИнформацияОЗадании.ИнформацияОбОшибке); - ПерейтиНаШагМастера(Элементы.ШагВыборОсновногоЭлемента); - КонецЕсли; - КонецЕсли; - - Возврат Истина; -КонецФункции - &НаСервере -Функция ФоновоеЗаданиеЗапустить() - // Отмена предыдущего задания. - ФоновоеЗаданиеОтменить(); - +Функция ЗапуститьФоновоеЗадание() // Определение параметров запуска. - ПолноеИмяМетода = "ПоискИУдалениеДублей." + НастройкиПошаговогоМастера.ИмяПроцедуры; + ИмяМетода = "ПоискИУдалениеДублей." + НастройкиПошаговогоМастера.ИмяПроцедуры; Если НастройкиПошаговогоМастера.ИмяПроцедуры = "ОпределитьМестаИспользования" Тогда @@ -1505,113 +1248,184 @@ ИначеЕсли НастройкиПошаговогоМастера.ИмяПроцедуры = "ЗаменитьСсылки" Тогда НаименованиеМетода = НСтр("ru = 'Поиск и удаление дублей: Объединение элементов'"); - ПарыЗамен = Новый Соответствие; + + ПараметрыМетода = Новый Структура("ПарыЗамен, Параметры"); + ПараметрыМетода.ПарыЗамен = Новый Соответствие; Для Каждого Строка Из МестаИспользования Цикл - ПарыЗамен.Вставить(Строка.Ссылка, ОсновнойЭлемент); + ПараметрыМетода.ПарыЗамен.Вставить(Строка.Ссылка, ОсновнойЭлемент); КонецЦикла; - - ПараметрыЗамены = Новый Структура; - ПараметрыЗамены.Вставить("СпособУдаления", ТекущийВариантУдаления); - ПараметрыЗамены.Вставить("ВключатьБизнесЛогику", Истина); - - ПараметрыМетода = Новый Структура; - ПараметрыМетода.Вставить("ПарыЗамен", ПарыЗамен); - ПараметрыМетода.Вставить("Параметры", ПараметрыЗамены); + ПараметрыМетода.Параметры = Новый Структура; + ПараметрыМетода.Параметры.Вставить("СпособУдаления", ТекущийВариантУдаления); + ПараметрыМетода.Параметры.Вставить("ВключатьБизнесЛогику", Истина); Иначе - Возврат Ложь; + Возврат Неопределено; КонецЕсли; - // Запуск. - ИнформацияОбОшибке = Неопределено; - Попытка - Задание = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - ПолноеИмяМетода, - ПараметрыМетода, - НаименованиеМетода); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КонецПопытки; - Если ИнформацияОбОшибке <> Неопределено Тогда - НастройкиПошаговогоМастера.ЗаданиеВыполнено = Истина; - НастройкиПошаговогоМастера.ИнформацияОбОшибке = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); - НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания = Неопределено; - НастройкиПошаговогоМастера.АдресРезультатаФоновогоЗадания = Неопределено; - Возврат Ложь; - КонецЕсли; + НастройкиЗапуска = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + НастройкиЗапуска.НаименованиеФоновогоЗадания = НСтр("ru = 'Поиск и удаление дублей: Замена ссылок'"); - НастройкиПошаговогоМастера.АдресРезультатаФоновогоЗадания = Задание.АдресХранилища; - НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания = Задание.ИдентификаторЗадания; - НастройкиПошаговогоМастера.ЗаданиеВыполнено = Задание.ЗаданиеВыполнено; - - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено Тогда - Возврат Ложь; - КонецЕсли; - - Возврат Истина; + Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяМетода, ПараметрыМетода, НастройкиЗапуска); КонецФункции -&НаСервере -Функция ФоновоеЗаданиеЗагрузитьРезультат(Знач ПрерватьЕслиНеВыполнено = Ложь) - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено Тогда - НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания = Неопределено; +&НаКлиенте +Процедура ПослеЗавершенияФоновогоЗадания(Задание, ДополнительныеПараметры) Экспорт + НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием = Ложь; + Если Задание.Статус = "Выполнено" Тогда + Если НастройкиПошаговогоМастера.ИмяПроцедуры = "ОпределитьМестаИспользования" Тогда + ЗаполнитьМестаИспользования(Задание.АдресРезультата); + Активизировать(); + ШагМастера("Далее"); + ИначеЕсли НастройкиПошаговогоМастера.ИмяПроцедуры = "ЗаменитьСсылки" Тогда + ЕстьНеудачныеЗамены = ЗаполнитьНеудачныеЗамены(Задание.АдресРезультата); + Если ЕстьНеудачныеЗамены Тогда + // Частично успешно - вывести расшифровку. + ПерейтиНаШагМастера(Элементы.ШагПовторОбъединения, Истина); + Активизировать(); + Иначе + // Полностью успешно - вывести оповещение и закрыть форму. + ПоказатьОповещениеПользователя( + СообщениеОЗавершении(), + ПолучитьНавигационнуюСсылку(ОсновнойЭлемент), + Строка(ОсновнойЭлемент), + БиблиотекаКартинок.Информация32); + СписокОбновленного = Новый Массив; + Для Каждого Строка Из МестаИспользования Цикл + СписокОбновленного.Добавить(Строка.Ссылка); + КонецЦикла; + ОповеститьОбУспешнойЗамене(СписокОбновленного); + Закрыть(); + КонецЕсли + КонецЕсли; Иначе - Задание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания); - Если Задание <> Неопределено Тогда - Если Задание.ИнформацияОбОшибке <> Неопределено Тогда - НастройкиПошаговогоМастера.ИнформацияОбОшибке = ПодробноеПредставлениеОшибки(Задание.ИнформацияОбОшибке); - КонецЕсли; - НастройкиПошаговогоМастера.ЗаданиеВыполнено = Задание.Состояние <> СостояниеФоновогоЗадания.Активно; - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено Тогда - // Текущие сообщения фонового задания. - НакопленныеСообщения = Задание.ПолучитьСообщенияПользователю(Истина); - Если НакопленныеСообщения <> Неопределено Тогда - Для Каждого Сообщение Из НакопленныеСообщения Цикл - Сообщение.Сообщить(); - КонецЦикла; - КонецЕсли; - КонецЕсли; - КонецЕсли; + // Фоновое задание завершено с ошибкой. + Кратко = НСтр("ru = 'При замене элементов возникла ошибка:'") + Символы.ПС + Задание.КраткоеПредставлениеОшибки; + Подробно = Кратко + Символы.ПС + Символы.ПС + Задание.ПодробноеПредставлениеОшибки; + Элементы.НадписьТекстОшибки.Заголовок = Кратко; + Элементы.СсылкаПодробнее.Подсказка = Подробно; + ПерейтиНаШагМастера(Элементы.ШагВозниклаОшибка); + Активизировать(); КонецЕсли; - - Значение = Неопределено; - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено Тогда - НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания = Неопределено; - Если НастройкиПошаговогоМастера.ИнформацияОбОшибке = Неопределено Тогда - Значение = ПолучитьИзВременногоХранилища(НастройкиПошаговогоМастера.АдресРезультатаФоновогоЗадания); - Если НастройкиПошаговогоМастера.ИмяПроцедуры = "ОпределитьМестаИспользования" Тогда - ЗаполнитьМестаИспользования(Значение); - Значение = Неопределено; - ИначеЕсли НастройкиПошаговогоМастера.ИмяПроцедуры = "ЗаменитьСсылки" Тогда - Значение = Не ЗаполнитьНеудачныеЗамены(Значение); - КонецЕсли; - КонецЕсли; - КонецЕсли; - - Если ПрерватьЕслиНеВыполнено И Не НастройкиПошаговогоМастера.ЗаданиеВыполнено Тогда - ФоновоеЗаданиеОтменить(); - КонецЕсли; - - ИнформацияОЗадании = Новый Структура; - ИнформацияОЗадании.Вставить("Завершено", НастройкиПошаговогоМастера.ЗаданиеВыполнено); - ИнформацияОЗадании.Вставить("ИнформацияОбОшибке", НастройкиПошаговогоМастера.ИнформацияОбОшибке); - ИнформацияОЗадании.Вставить("Результат", Значение); - - Возврат ИнформацияОЗадании; -КонецФункции - -&НаСервере -Процедура ФоновоеЗаданиеОтменить() - Если НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания <> Неопределено Тогда - ДлительныеОперации.ОтменитьВыполнениеЗадания(НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания); - КонецЕсли; - НастройкиПошаговогоМастера.ЗаданиеВыполнено = Ложь; - НастройкиПошаговогоМастера.АдресРезультатаФоновогоЗадания = Неопределено; - НастройкиПошаговогоМастера.ИнформацияОбОшибке = Неопределено; - НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания = Неопределено; КонецПроцедуры -#КонецОбласти +&НаСервере +Процедура ЗаполнитьМестаИспользования(Знач АдресРезультата) + ТаблицаИспользования = ПолучитьИзВременногоХранилища(АдресРезультата); + + НовыеМестаИспользования = МестаИспользования.Выгрузить(); + НовыеМестаИспользования.Индексы.Добавить("Ссылка"); + + ЭтоОбновление = НовыеМестаИспользования.Найти(ОсновнойЭлемент, "Ссылка") <> Неопределено; + + Если Не ЭтоОбновление Тогда + НовыеМестаИспользования = МестаИспользования.Выгрузить(Новый Массив); + НовыеМестаИспользования.Индексы.Добавить("Ссылка"); + КонецЕсли; + + КэшМетаданных = Новый Соответствие; + + МаксСсылка = Неопределено; + МаксМест = -1; + Для Каждого Строка Из ТаблицаИспользования Цикл + Ссылка = Строка.Ссылка; + + СтрокаИспользования = НовыеМестаИспользования.Найти(Ссылка, "Ссылка"); + Если СтрокаИспользования = Неопределено Тогда + СтрокаИспользования = НовыеМестаИспользования.Добавить(); + СтрокаИспользования.Ссылка = Ссылка; + КонецЕсли; + + Мест = Строка.Вхождения; + Если Мест>МаксМест + И Не Ссылка.ПометкаУдаления Тогда + МаксСсылка = Ссылка; + МаксМест = Мест; + КонецЕсли; + + СтрокаИспользования.МестИспользования = Мест; + СтрокаИспользования.Код = ВозможныйКодСсылки(Ссылка, КэшМетаданных); + СтрокаИспользования.Владелец = ВозможныйВладелецСсылки(Ссылка, КэшМетаданных); + + СтрокаИспользования.НеИспользуется = ?(Мест = 0, НСтр("ru = 'Не используется'"), ""); + КонецЦикла; + + МестаИспользования.Загрузить(НовыеМестаИспользования); + + Если МаксСсылка <> Неопределено Тогда + ОсновнойЭлемент = МаксСсылка; + КонецЕсли; + + // Обновляем заголовки + Представление = ?(ОсновнойЭлемент = Неопределено, "", ОсновнойЭлемент.Метаданные().Представление()); + ТекстЗаголовка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Объединение элементов %1 в один'"), Представление); +КонецПроцедуры + +&НаСервере +Функция ЗаполнитьНеудачныеЗамены(Знач АдресРезультата) + // РезультатыЗамены - таблица с колонками Ссылка, ОбъектОшибки, ТипОшибки, ТекстОшибки. + РезультатыЗамены = ПолучитьИзВременногоХранилища(АдресРезультата); + + КорневыеСтроки = НеудачныеЗамены.ПолучитьЭлементы(); + КорневыеСтроки.Очистить(); + + СоответствиеСтрок = Новый Соответствие; + КэшМетаданных = Новый Соответствие; + + Для Каждого СтрокаРезультата Из РезультатыЗамены Цикл + Ссылка = СтрокаРезультата.Ссылка; + + ОшибкиПоСсылке = СоответствиеСтрок[Ссылка]; + Если ОшибкиПоСсылке = Неопределено Тогда + СтрокаДерева = КорневыеСтроки.Добавить(); + СтрокаДерева.Ссылка = Ссылка; + СтрокаДерева.Данные = Строка(Ссылка); + СтрокаДерева.Код = Строка( ВозможныйКодСсылки(Ссылка, КэшМетаданных) ); + СтрокаДерева.Пиктограмма = -1; + + ОшибкиПоСсылке = СтрокаДерева.ПолучитьЭлементы(); + СоответствиеСтрок.Вставить(Ссылка, ОшибкиПоСсылке); + КонецЕсли; + + СтрокаОшибки = ОшибкиПоСсылке.Добавить(); + СтрокаОшибки.Ссылка = СтрокаРезультата.ОбъектОшибки; + СтрокаОшибки.Данные = СтрокаРезультата.ПредставлениеОбъектаОшибки; + + ТипОшибки = СтрокаРезультата.ТипОшибки; + Если ТипОшибки = "НеизвестныеДанные" Тогда + СтрокаОшибки.Причина = НСтр("ru = 'Обнаружена данные, обработка которых не планировалась.'"); + + ИначеЕсли ТипОшибки = "ОшибкаБлокировки" Тогда + СтрокаОшибки.Причина = НСтр("ru = 'Не удалось заблокировать данные.'"); + + ИначеЕсли ТипОшибки = "ДанныеИзменены" Тогда + СтрокаОшибки.Причина = НСтр("ru = 'Данные изменены другим пользователем.'"); + + ИначеЕсли ТипОшибки = "ОшибкаЗаписи" Тогда + СтрокаОшибки.Причина = СтрокаРезультата.ТекстОшибки; + + ИначеЕсли ТипОшибки = "ОшибкаУдаления" Тогда + СтрокаОшибки.Причина = НСтр("ru = 'Невозможно удалить данные.'"); + + Иначе + СтрокаОшибки.Причина = НСтр("ru = 'Неизвестная ошибка.'"); + + КонецЕсли; + + СтрокаОшибки.ПодробнаяПричина = СтрокаРезультата.ТекстОшибки; + КонецЦикла; + + Возврат КорневыеСтроки.Количество() > 0; +КонецФункции + +&НаКлиенте +Процедура ПослеПодтвержденияОтменыЗадания(Ответ, ПараметрыВыполнения) Экспорт + Если Ответ = КодВозвратаДиалога.Прервать + И Элементы.ШагиМастера.ТекущаяСтраница = Элементы.ШагОбъединение Тогда + НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием = Ложь; + Закрыть(); + КонецЕсли; +КонецПроцедуры + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/DataProcessors/ЗащитаПерсональныхДанных/Forms/Форма/Form.form b/SSL/src/DataProcessors/ЗащитаПерсональныхДанных/Forms/Форма/Form.form index 915aafef2..cc809360c 100644 --- a/SSL/src/DataProcessors/ЗащитаПерсональныхДанных/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/ЗащитаПерсональныхДанных/Forms/Форма/Form.form @@ -2011,10 +2011,6 @@ OnCreateAtServer ПриСозданииНаСервере - - OnClose - ПриЗакрытии - Abort Cancel Close @@ -2652,24 +2648,6 @@ true - - АдресХранилища - - <key>ru</key> - <value>Адрес хранилища</value> - - 11 - - String - - - - true - - - true - - ПараметрыОбработчикаОжидания diff --git a/SSL/src/DataProcessors/ЗащитаПерсональныхДанных/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/ЗащитаПерсональныхДанных/Forms/Форма/Module.bsl index 9a66614be..b3d2b5083 100644 --- a/SSL/src/DataProcessors/ЗащитаПерсональныхДанных/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/ЗащитаПерсональныхДанных/Forms/Форма/Module.bsl @@ -24,17 +24,9 @@ КонецПроцедуры -&НаКлиенте -Процедура ПриЗакрытии() - - Если ИдентификаторЗадания <> Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000") Тогда - ПриЗакрытииНаСервере(); - КонецЕсли; - -КонецПроцедуры +#КонецОбласти -//////////////////////////////////////////////////////////////////////////////// -// ОБРАБОТЧИКИ СОБЫТИЙ ЭЛЕМЕНТОВ ФОРМЫ +#Область ОбработчикиСобытийЭлементовШапкиФормы &НаКлиенте Процедура ЖурналВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) @@ -62,20 +54,21 @@ Процедура ОбновитьТекущийСписок() Элементы.Страницы.ТекущаяСтраница = Элементы.ИндикаторДлительныхОпераций; - РезультатВыполнения = ПрочитатьЖурнал(ОтборЖурналаРегистрации); - ПараметрыОбработчикаОжидания = Новый Структура; - - Если Не РезультатВыполнения.ЗаданиеВыполнено Тогда - ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания); - ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеЗадания", 1, Истина); - ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Элементы.ПолеИндикаторДлительныхОпераций, "ФормированиеОтчета"); - Иначе + Если РезультатВыполнения.Статус <> "Выполняется" Тогда Элементы.Страницы.ТекущаяСтраница = Элементы.ЖурналРегистрации; ПозиционированиеВКонецСписка(); + Возврат; КонецЕсли; + ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Элементы.ПолеИндикаторДлительныхОпераций, "ФормированиеОтчета"); + + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ОповещениеОЗавершении = Новый ОписаниеОповещения("ОбновитьТекущийСписокЗавершение", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(РезультатВыполнения, ОповещениеОЗавершении, ПараметрыОжидания); + КонецПроцедуры &НаКлиенте @@ -160,13 +153,6 @@ КонецПроцедуры -&НаСервере -Процедура ПриЗакрытииНаСервере() - - ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторЗадания); - -КонецПроцедуры - &НаСервере Функция ПараметрыОтчета(ОтборЖурналаНаКлиенте) ПараметрыОтчета = Новый Структура; @@ -199,30 +185,27 @@ КонецЕсли; ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторЗадания); - ИдентификаторЗадания = Неопределено; ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Элементы.ПолеИндикаторДлительныхОпераций, "НеИспользовать"); - Попытка - РезультатВыполнения = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "ЖурналРегистрации.ПрочитатьСобытияЖурналаРегистрации", - ПараметрыОтчета, - НСтр("ru = 'Защита персональных данных'")); - АдресХранилища = РезультатВыполнения.АдресХранилища; - ИдентификаторЗадания = РезультатВыполнения.ИдентификаторЗадания; - Исключение + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Защита персональных данных'"); + РезультатВыполнения = ДлительныеОперации.ВыполнитьВФоне("ЖурналРегистрации.ПрочитатьСобытияЖурналаРегистрации", + ПараметрыОтчета, ПараметрыВыполнения); + + ИдентификаторЗадания = РезультатВыполнения.ИдентификаторЗадания; + + Если РезультатВыполнения.Статус = "Выполнено" Тогда + ЗагрузитьПодготовленныеДанные(РезультатВыполнения.АдресРезультата); + ИначеЕсли РезультатВыполнения.Статус = "Выполняется" Тогда + ЖурналРегистрации.СформироватьПредставлениеОтбора(ПредставлениеОтбора, ОтборЖурналаНаКлиенте, ОтборЖурналаРегистрацииПоУмолчанию); + Иначе Элементы.Страницы.ТекущаяСтраница = Элементы.ЖурналРегистрации; - ВызватьИсключение; - КонецПопытки; - - Если РезультатВыполнения.ЗаданиеВыполнено Тогда - ЗагрузитьПодготовленныеДанные(); - КонецЕсли; - - ЖурналРегистрации.СформироватьПредставлениеОтбора(ПредставлениеОтбора, ОтборЖурналаНаКлиенте, ОтборЖурналаРегистрацииПоУмолчанию); - + ВызватьИсключение РезультатВыполнения.КраткоеПредставлениеОшибки; + КонецЕсли; + + Возврат РезультатВыполнения; КонецФункции @@ -264,7 +247,7 @@ КонецПроцедуры &НаСервере -Процедура ЗагрузитьПодготовленныеДанные() +Процедура ЗагрузитьПодготовленныеДанные(АдресХранилища) РезультатВыполнения = ПолучитьИзВременногоХранилища(АдресХранилища); СобытияЖурнала = РезультатВыполнения.СобытияЖурнала; @@ -275,27 +258,27 @@ КонецПроцедуры &НаКлиенте -Процедура Подключаемый_ПроверитьВыполнениеЗадания() - - Попытка - Если ЗаданиеВыполнено(ИдентификаторЗадания) Тогда - ЗагрузитьПодготовленныеДанные(); - ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Элементы.ПолеИндикаторДлительныхОпераций, "НеИспользовать"); - Элементы.Страницы.ТекущаяСтраница = Элементы.ЖурналРегистрации; - ПозиционированиеВКонецСписка(); - Иначе - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчикаОжидания); - ПодключитьОбработчикОжидания( - "Подключаемый_ПроверитьВыполнениеЗадания", - ПараметрыОбработчикаОжидания.ТекущийИнтервал, - Истина); - КонецЕсли; - Исключение +Процедура ОбновитьТекущийСписокЗавершение(Результат, ДополнительныеПараметры) Экспорт + + Если Результат = Неопределено Тогда ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Элементы.ПолеИндикаторДлительныхОпераций, "НеИспользовать"); Элементы.Страницы.ТекущаяСтраница = Элементы.ЖурналРегистрации; ПозиционированиеВКонецСписка(); - ВызватьИсключение; - КонецПопытки; + Возврат; + КонецЕсли; + + Если Результат.Статус = "Выполнено" Тогда + ЗагрузитьПодготовленныеДанные(Результат.АдресРезультата); + КонецЕсли; + + ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Элементы.ПолеИндикаторДлительныхОпераций, "НеИспользовать"); + Элементы.Страницы.ТекущаяСтраница = Элементы.ЖурналРегистрации; + ПозиционированиеВКонецСписка(); + + Если Результат.Статус = "Ошибка" Тогда + ВызватьИсключение Результат.КраткоеПредставлениеОшибки; + КонецЕсли; + КонецПроцедуры &НаКлиенте @@ -305,11 +288,4 @@ КонецЕсли; КонецПроцедуры -&НаСервереБезКонтекста -Функция ЗаданиеВыполнено(ИдентификаторЗадания) - - Возврат ДлительныеОперации.ЗаданиеВыполнено(ИдентификаторЗадания); - -КонецФункции - #КонецОбласти diff --git a/SSL/src/DataProcessors/ИнструментыРазработчикаПроверкаКонтрагентов/Forms/Форма/Form.form b/SSL/src/DataProcessors/ИнструментыРазработчикаПроверкаКонтрагентов/Forms/Форма/Form.form index e2bd9d1e2..eaa97d669 100644 --- a/SSL/src/DataProcessors/ИнструментыРазработчикаПроверкаКонтрагентов/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/ИнструментыРазработчикаПроверкаКонтрагентов/Forms/Форма/Form.form @@ -1,83 +1,48 @@ <?xml version="1.0" encoding="UTF-8"?> <form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:form="http://g5.1c.ru/v8/dt/form"> - <items xsi:type="form:FormGroup"> - <name>ГруппаСбросаНастроек</name> - <id>3</id> - <items xsi:type="form:Button"> - <name>СбросНастроек</name> - <id>1</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <extendedTooltip> - <name>СбросНастроекРасширеннаяПодсказка</name> - <id>2</id> - <title> - <key>ru</key> - <value>- Отключение проверки контрагентов -- Сброс даты последнего отображения предложения на использование сервиса -- Cброс факта отказа от подключения к сервису -- Очистка состояний проверки контрагентов в разрезе контрагентов -- Очистка состояний проверки контрагентов в разрезе документов</value> - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - UsualButton - Form.Command.СбросНастроек - Normal - Auto - true - true - UserCmds - ShowBottom - Auto -
      + + СбросНастроек + 1 true true true - - ru - Группа сброса настроек - - ГруппаСбросаНастроекРасширеннаяПодсказка - 4 + СбросНастроекРасширеннаяПодсказка + 2 + + <key>ru</key> + <value>- Отключение проверки контрагентов +- Сброс даты последнего отображения предложения на использование сервиса +- Cброс факта отказа от подключения к сервису +- Очистка состояний проверки контрагентов в разрезе контрагентов +- Очистка состояний проверки контрагентов в разрезе документов</value> + Label - true - true + + Style.ПоясняющийТекст + Left - UsualGroup - - Vertical - Auto - true - true - auto - Auto - Auto - + UsualButton + Form.Command.СбросНастроек + Normal + Auto + true + true + UserCmds + ShowBottom + Auto ГруппаПереходаКНастройкам - 5 + 3 ОткрытьНастройкиПроверкиКонтрагентов - 7 + 5 <key>ru</key> <value>Открыть настройки проверки контрагентов</value> @@ -89,7 +54,7 @@ </userVisible> <extendedTooltip> <name>ОткрытьНастройкиПроверкиКонтрагентовРасширеннаяПодсказка</name> - <id>9</id> + <id>7</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -99,7 +64,7 @@ </extendedTooltip> <contextMenu> <name>ОткрытьНастройкиПроверкиКонтрагентовКонтекстноеМеню</name> - <id>8</id> + <id>6</id> <autoFill>true</autoFill> </contextMenu> <type>Label</type> @@ -125,7 +90,7 @@ </toolTip> <extendedTooltip> <name>ГруппаПереходаКНастройкамРасширеннаяПодсказка</name> - <id>6</id> + <id>4</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> diff --git a/SSL/src/DataProcessors/ИнструментыРазработчикаПроверкаКонтрагентов/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/ИнструментыРазработчикаПроверкаКонтрагентов/Forms/Форма/Module.bsl index 8677e2ed8..eafd607e0 100644 --- a/SSL/src/DataProcessors/ИнструментыРазработчикаПроверкаКонтрагентов/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/ИнструментыРазработчикаПроверкаКонтрагентов/Forms/Форма/Module.bsl @@ -39,9 +39,6 @@ Если ОбщегоНазначенияПовтИсп.РазделениеВключено() Тогда - ПроверкаКонтрагентовВключена = ПроверкаКонтрагентов.ПроверкаКонтрагентовВключена(); - // В режиме проверки по кнопке при отключенной проверки данные в регистр все равно могут писаться. - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = '1. Очищены состояния контрагентов в данной области. |2. Очищены состояния документов. |3. Проверка не отключена. Для отключения Запустите сброс настроек повторно из неразделенной области.'")); @@ -68,8 +65,8 @@ Процедура ВыключитьПроверку() Константы.ИспользоватьПроверкуКонтрагентов.Установить(0); - + ОбновитьПовторноИспользуемыеЗначения(); + КонецПроцедуры #КонецОбласти - diff --git a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/ВыборВидаОбъектаСоставаУзла/Form.form b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/ВыборВидаОбъектаСоставаУзла/Form.form index 58f84361e..0bd746614 100644 --- a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/ВыборВидаОбъектаСоставаУзла/Form.form +++ b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/ВыборВидаОбъектаСоставаУзла/Form.form @@ -299,8 +299,6 @@ <event>OnCreateAtServer</event> <name>ПриСозданииНаСервере</name> </handlers> - <width>50</width> - <height>15</height> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoUrl>true</autoUrl> diff --git a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/РедактированиеПериодаИОтбора/Form.form b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/РедактированиеПериодаИОтбора/Form.form index f341f0636..378fe8705 100644 --- a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/РедактированиеПериодаИОтбора/Form.form +++ b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/РедактированиеПериодаИОтбора/Form.form @@ -536,6 +536,14 @@ <valueType/> <keyParameter>true</keyParameter> </parameters> + <parameters> + <name>АдресКомпоновщикаНастроек</name> + <valueType> + <types>String</types> + <stringQualifiers/> + </valueType> + <keyParameter>true</keyParameter> + </parameters> <commandInterface> <navigationPanel/> <commandBar/> diff --git a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/РедактированиеПериодаИОтбора/Module.bsl b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/РедактированиеПериодаИОтбора/Module.bsl index f4549c88b..5303b40a7 100644 --- a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/РедактированиеПериодаИОтбора/Module.bsl +++ b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/РедактированиеПериодаИОтбора/Module.bsl @@ -13,7 +13,8 @@ Заголовок = Параметры.Заголовок; - Если Параметры.Свойство("АдресКомпоновщикаНастроек", АдресКомпоновщикаНастроек) Тогда + АдресКомпоновщикаНастроек = Параметры.АдресКомпоновщикаНастроек; + Если ЗначениеЗаполнено(АдресКомпоновщикаНастроек) Тогда // Хранилище приоритетнее Данные = ПолучитьИзВременногоХранилища(АдресКомпоновщикаНастроек); АдресСхемыКомпоновки = ПоместитьВоВременноеХранилище(Данные.СхемаКомпоновки, УникальныйИдентификатор);; diff --git a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/СоставВыгрузки/Form.form b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/СоставВыгрузки/Form.form index 7ed133ed2..e2463dccb 100644 --- a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/СоставВыгрузки/Form.form +++ b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/СоставВыгрузки/Form.form @@ -769,6 +769,11 @@ <types>Boolean</types> </valueType> </parameters> + <parameters> + <name>НастройкиОбъекта</name> + <valueType/> + <keyParameter>true</keyParameter> + </parameters> <commandInterface> <navigationPanel/> <commandBar/> diff --git a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/СоставВыгрузки/Module.bsl b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/СоставВыгрузки/Module.bsl index b7a82c4b5..5446b7ffd 100644 --- a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/СоставВыгрузки/Module.bsl +++ b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/СоставВыгрузки/Module.bsl @@ -50,14 +50,15 @@ &НаКлиенте Процедура ПриОткрытии(Отказ) - Если Не СформироватьТабличныйДокументСервер() Тогда - ПодключитьОбработчикОжидания("Подключаемый_ОжиданиеФормированияОтчета", 3, Истина); - КонецЕсли; + СформироватьТабличныйДокументКлиент(); КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ПриЗакрытииНаСервере(); КонецПроцедуры @@ -107,9 +108,7 @@ &НаКлиенте Процедура СформироватьОтчет(Команда) - Если Не СформироватьТабличныйДокументСервер() Тогда - ПодключитьОбработчикОжидания("Подключаемый_ОжиданиеФормированияОтчета", 3, Истина); - КонецЕсли; + СформироватьТабличныйДокументКлиент(); КонецПроцедуры @@ -122,30 +121,11 @@ #КонецОбласти #Область СлужебныеПроцедурыИФункции -// - -&НаКлиенте -Процедура Подключаемый_ОжиданиеФормированияОтчета() - - Если ФоновоеЗаданиеВыполнено(ИдентификаторФоновогоЗадания) Тогда - ОбработатьРезультатВыполненияЗадания(); - Иначе - ПодключитьОбработчикОжидания("Подключаемый_ОжиданиеФормированияОтчета", 3, Истина); - КонецЕсли; - -КонецПроцедуры - -&НаСервереБезКонтекста -Функция ФоновоеЗаданиеВыполнено(ИдентификаторФоновогоЗадания) - - Возврат ДлительныеОперации.ЗаданиеВыполнено(ИдентификаторФоновогоЗадания); - -КонецФункции &НаСервере Процедура ОбработатьРезультатВыполненияЗадания() - ЗагрузитьРезультатОтчета(); + ЗагрузитьРезультатОтчетаСервер(); ОтображениеСостояния = Элементы.Результат.ОтображениеСостояния; ОтображениеСостояния.Видимость = Ложь; @@ -162,38 +142,71 @@ Возврат Неопределено; КонецФункции +&НаКлиенте +Процедура СформироватьТабличныйДокументКлиент() + + РезультатЗапускаФоновогоЗадания = СформироватьТабличныйДокументСервер(); + + Если РезультатЗапускаФоновогоЗадания.Статус = "Выполняется" Тогда + + ОтображениеСостояния = Элементы.Результат.ОтображениеСостояния; + ОтображениеСостояния.Видимость = Истина; + ОтображениеСостояния.ДополнительныйРежимОтображения = ДополнительныйРежимОтображения.Неактуальность; + ОтображениеСостояния.Картинка = БиблиотекаКартинок.ДлительнаяОперация48; + ОтображениеСостояния.Текст = НСтр("ru = 'Отчет формируется...'"); + + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ПараметрыОжидания.ВыводитьСообщения = Истина; + + ОповещениеОЗавершении = Новый ОписаниеОповещения("ЗавершениеФоновогоЗадания", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(РезультатЗапускаФоновогоЗадания, ОповещениеОЗавершении, ПараметрыОжидания); + + Иначе + ПодключитьОбработчикОжидания("ЗагрузитьРезультатОтчетаКлиент", 1, Истина); + КонецЕсли; + +КонецПроцедуры + &НаСервере Функция СформироватьТабличныйДокументСервер() ОстановитьФормированиеОтчета(); ПараметрыЗадания = Новый Структура; - ПараметрыЗадания.Вставить("СтруктураОбработки", ЭтотОбъект().ЭтотОбъектВСтруктуруДляФонового()); + ПараметрыЗадания.Вставить("СтруктураОбработки", ЭтотОбъект().ЭтотОбъектВСтруктуруДляФонового()); ПараметрыЗадания.Вставить("ПолноеИмяМетаданных", Параметры.ПолноеИмяМетаданных); - ПараметрыЗадания.Вставить("Представление", Параметры.ПредставлениеСписка); - ПараметрыЗадания.Вставить("УпрощенныйРежим", УпрощенныйРежим); + ПараметрыЗадания.Вставить("Представление", Параметры.ПредставлениеСписка); + ПараметрыЗадания.Вставить("УпрощенныйРежим", УпрощенныйРежим); - РезультатФоновогоЗадания = ДлительныеОперации.ЗапуститьВыполнениеВФоне(УникальныйИдентификатор, + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = + НСтр("ru='Формирование отчета по составу данных для отправки при синхронизации'"); + + РезультатЗапускаФоновогоЗадания = ДлительныеОперации.ВыполнитьВФоне( "ОбменДаннымиСервер.ИнтерактивноеИзменениеВыгрузки_СформироватьТабличныйДокументПользователя", - ПараметрыЗадания, НСтр("ru='Формирование отчета по составу данных для отправки при синхронизации'")); + ПараметрыЗадания, + ПараметрыВыполнения); - АдресРезультатаФоновогоЗадания = РезультатФоновогоЗадания.АдресХранилища; - ИдентификаторФоновогоЗадания = РезультатФоновогоЗадания.ИдентификаторЗадания; + ИдентификаторФоновогоЗадания = РезультатЗапускаФоновогоЗадания.ИдентификаторЗадания; + АдресРезультатаФоновогоЗадания = РезультатЗапускаФоновогоЗадания.АдресРезультата; - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - ЗагрузитьРезультатОтчета(); - Возврат Истина; - Иначе - ОтображениеСостояния = Элементы.Результат.ОтображениеСостояния; - ОтображениеСостояния.Видимость = Истина; - ОтображениеСостояния.ДополнительныйРежимОтображения = ДополнительныйРежимОтображения.Неактуальность; - ОтображениеСостояния.Картинка = БиблиотекаКартинок.ДлительнаяОперация48; - ОтображениеСостояния.Текст = НСтр("ru = 'Отчет формируется...'"); - Возврат Ложь; - КонецЕсли; + Возврат РезультатЗапускаФоновогоЗадания; КонецФункции +&НаКлиенте +Процедура ЗавершениеФоновогоЗадания(РезультатЗапускаФоновогоЗадания, ДополнительныеПараметры) Экспорт + + ЗагрузитьРезультатОтчетаКлиент(); + +КонецПроцедуры + +&НаКлиенте +Процедура ЗагрузитьРезультатОтчетаКлиент() + ОбработатьРезультатВыполненияЗадания(); +КонецПроцедуры + &НаСервере Процедура ОстановитьФормированиеОтчета() @@ -208,9 +221,10 @@ КонецПроцедуры &НаСервере -Процедура ЗагрузитьРезультатОтчета() +Процедура ЗагрузитьРезультатОтчетаСервер() ДанныеОтчета = Неопределено; + Если Не ПустаяСтрока(АдресРезультатаФоновогоЗадания) Тогда ДанныеОтчета = ПолучитьИзВременногоХранилища(АдресРезультатаФоновогоЗадания); УдалитьИзВременногоХранилища(АдресРезультатаФоновогоЗадания); @@ -223,8 +237,8 @@ КонецЕсли; Результат = ДанныеОтчета.ТабличныйДокумент; - ОчиститьРасшифровку(); + АдресДанныхРасшифровки = ПоместитьВоВременноеХранилище(ДанныеОтчета.Расшифровка, Новый УникальныйИдентификатор); АдресСхемыКомпоновки = ПоместитьВоВременноеХранилище(ДанныеОтчета.СхемаКомпоновки, Новый УникальныйИдентификатор); diff --git a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/Форма/Form.form b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/Форма/Form.form index abe602733..fdc1ee9a4 100644 --- a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/Форма/Form.form @@ -1110,7 +1110,7 @@ </use> <action xsi:type="form:FormCommandHandlerContainer"> <handler> - <name>ОбновитьКоличество</name> + <name>ОбновитьКоличествоКлиент</name> </handler> </action> <currentRowUse>DontUse</currentRowUse> diff --git a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/Форма/Module.bsl index 89139bcfd..d1dbbba51 100644 --- a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Forms/Форма/Module.bsl @@ -36,7 +36,10 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ОстановитьРасчетКоличества(); КонецПроцедуры @@ -165,10 +168,23 @@ КонецПроцедуры &НаКлиенте -Процедура ОбновитьКоличество(Команда) +Процедура ОбновитьКоличествоКлиент(Команда) - Если Не КоличествоОбновлено() Тогда - ПодключитьОбработчикОжидания("Подключаемый_ОжиданиеРасчетаКоличества", 3, Истина); + Результат = ОбновитьКоличествоСервер(); + + Если Результат.Статус = "Выполняется" Тогда + + Элементы.КартинкаРасчетаКоличества.Видимость = Истина; + + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ПараметрыОжидания.ВыводитьСообщения = Истина; + + ОповещениеОЗавершении = Новый ОписаниеОповещения("ЗавершениеФоновогоЗадания", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(Результат, ОповещениеОЗавершении, ПараметрыОжидания); + + Иначе + ПодключитьОбработчикОжидания("ЗагрузитьЗначенияКоличествКлиент", 1, Истина); КонецЕсли; КонецПроцедуры @@ -191,6 +207,17 @@ #Область СлужебныеПроцедурыИФункции +&НаКлиенте +Процедура ЗагрузитьЗначенияКоличествКлиент() + Элементы.КартинкаРасчетаКоличества.Видимость = Ложь; + ЗагрузитьЗначенияКоличествСервер(); +КонецПроцедуры + +&НаКлиенте +Процедура ЗавершениеФоновогоЗадания(Результат, ДополнительныеПараметры) Экспорт + ЗагрузитьЗначенияКоличествКлиент(); +КонецПроцедуры + &НаКлиенте Процедура НастройкиОтборовВыборВариантаЗавершение(Знач ВыбранныйЭлемент, Знач ДополнительныеПараметры) Экспорт Если ВыбранныйЭлемент = Неопределено Тогда @@ -292,25 +319,6 @@ Возврат Результат; КонецФункции -&НаКлиенте -Процедура Подключаемый_ОжиданиеРасчетаКоличества() - - Если ФоновоеЗаданиеВыполнено(ИдентификаторФоновогоЗадания) Тогда - ЗагрузитьЗначенияКоличеств(); - Элементы.КартинкаРасчетаКоличества.Видимость = Ложь; - Иначе - ПодключитьОбработчикОжидания("Подключаемый_ОжиданиеРасчетаКоличества", 3, Истина); - КонецЕсли; - -КонецПроцедуры - -&НаСервереБезКонтекста -Функция ФоновоеЗаданиеВыполнено(ИдентификаторФоновогоЗадания) - - Возврат ДлительныеОперации.ЗаданиеВыполнено(ИдентификаторФоновогоЗадания); - -КонецФункции - &НаСервере Функция ЭтотОбъект(НовыйОбъект = Неопределено) Если НовыйОбъект=Неопределено Тогда @@ -402,32 +410,31 @@ КонецПроцедуры &НаСервере -Функция КоличествоОбновлено() +Функция ОбновитьКоличествоСервер() ОстановитьРасчетКоличества(); ПараметрыЗадания = Новый Структура; ПараметрыЗадания.Вставить("СтруктураОбработки", ЭтотОбъект().ЭтотОбъектВСтруктуруДляФонового()); - РезультатФоновогоЗадания = ДлительныеОперации.ЗапуститьВыполнениеВФоне(УникальныйИдентификатор, + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = + НСтр("ru='Расчет количества объектов для отправки при синхронизации'"); + + РезультатЗапускаФоновогоЗадания = ДлительныеОперации.ВыполнитьВФоне( "ОбменДаннымиСервер.ИнтерактивноеИзменениеВыгрузки_СформироватьДеревоЗначений", - ПараметрыЗадания, НСтр("ru='Расчет количества объектов для отправки при синхронизации'")); + ПараметрыЗадания, + ПараметрыВыполнения); - ИдентификаторФоновогоЗадания = РезультатФоновогоЗадания.ИдентификаторЗадания; - АдресРезультатаФоновогоЗадания = РезультатФоновогоЗадания.АдресХранилища; + ИдентификаторФоновогоЗадания = РезультатЗапускаФоновогоЗадания.ИдентификаторЗадания; + АдресРезультатаФоновогоЗадания = РезультатЗапускаФоновогоЗадания.АдресРезультата; - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - ЗагрузитьЗначенияКоличеств(); - Возврат Истина; - Иначе - Элементы.КартинкаРасчетаКоличества.Видимость = Истина; - Возврат Ложь; - КонецЕсли; + Возврат РезультатЗапускаФоновогоЗадания; КонецФункции &НаСервере -Процедура ЗагрузитьЗначенияКоличеств() +Процедура ЗагрузитьЗначенияКоличествСервер() ДеревоКоличеств = Неопределено; Если Не ПустаяСтрока(АдресРезультатаФоновогоЗадания) Тогда diff --git a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/ObjectModule.bsl b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/ObjectModule.bsl index 1d7da29e9..c3fd1e834 100644 --- a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/ObjectModule.bsl +++ b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/ObjectModule.bsl @@ -1256,12 +1256,19 @@ // Возвращает структуру с реквизитами объекта. // Функция ЭтотОбъектВСтруктуруДляФонового() Экспорт - СтруктураРезультата = Новый Структура; + СтруктураРезультата = Новый Структура(); + Для Каждого Мета Из Метаданные().Реквизиты Цикл ИмяРеквизита = Мета.Имя; + Если ИмяРеквизита = "КомпоновщикОтбораВсехДокументов" Тогда + Продолжить; + КонецЕсли; + СтруктураРезультата.Вставить(ИмяРеквизита, ЭтотОбъект[ИмяРеквизита]); КонецЦикла; - + // Передаем пусто - этот элемент далее явно исключается из обработки. + СтруктураРезультата.Вставить("КомпоновщикОтбораВсехДокументов"); + // Отдельно настройки КомпоновщикОтбораВсехДокументов - там только отбор. СтруктураРезультата.Вставить("НастройкиКомпоновщикаОтбораВсехДокументов", КомпоновщикОтбораВсехДокументов.Настройки); diff --git a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Templates/СхемаКомпоновкиДанных/Template.dcs b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Templates/СхемаКомпоновкиДанных/Template.dcs index a850ee163..fc753ee6e 100644 --- a/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Templates/СхемаКомпоновкиДанных/Template.dcs +++ b/SSL/src/DataProcessors/ИнтерактивноеИзменениеВыгрузки/Templates/СхемаКомпоновкиДанных/Template.dcs @@ -56,7 +56,8 @@ NULL КАК ОбъектРегистрацииТип, &ПричинаРегистрацииПоСсылке КАК ПричинаРегистрации {ГДЕ - (&ПричинаРегистрацииПоСсылке) КАК ПричинаРегистрации}</query> + (&ПричинаРегистрацииПоСсылке) КАК ПричинаРегистрации} +ГДЕ Ложь</query> </item> </dataSet> <dataSet xsi:type="DataSetObject"> @@ -247,7 +248,7 @@ </calculatedField> <calculatedField> <dataPath>ВыгрузкаОбъектаВозможна</dataPath> - <expression>ОбменДаннымиСервер.ВыгрузкаСсылкиИзИнтерактивногоДополненияРазрешена(&УзелИнформационнойБазы, ОбъектРегистрации)</expression> + <expression>НЕ ОбъектРегистрации ЕСТЬ NULL И ОбменДаннымиСервер.ВыгрузкаСсылкиИзИнтерактивногоДополненияРазрешена(&УзелИнформационнойБазы, ОбъектРегистрации)</expression> <title xsi:type="v8:LocalStringType"> <v8:item> <v8:lang>ru</v8:lang> @@ -444,7 +445,7 @@ <valueType> <v8:Type>xs:string</v8:Type> <v8:StringQualifiers> - <v8:Length>0</v8:Length> + <v8:Length>50</v8:Length> <v8:AllowedLength>Variable</v8:AllowedLength> </v8:StringQualifiers> </valueType> @@ -463,7 +464,7 @@ <valueType> <v8:Type>xs:string</v8:Type> <v8:StringQualifiers> - <v8:Length>0</v8:Length> + <v8:Length>50</v8:Length> <v8:AllowedLength>Variable</v8:AllowedLength> </v8:StringQualifiers> </valueType> @@ -482,7 +483,7 @@ <valueType> <v8:Type>xs:string</v8:Type> <v8:StringQualifiers> - <v8:Length>0</v8:Length> + <v8:Length>50</v8:Length> <v8:AllowedLength>Variable</v8:AllowedLength> </v8:StringQualifiers> </valueType> @@ -649,7 +650,7 @@ <dcsat:appearance> <dcscor:item> <dcscor:parameter>Шрифт</dcscor:parameter> - <dcscor:value xsi:type="v8ui:Font" faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <dcscor:value xsi:type="v8ui:Font" faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> </dcscor:item> <dcscor:item> <dcscor:parameter>МинимальнаяШирина</dcscor:parameter> @@ -710,7 +711,7 @@ <dcsat:appearance> <dcscor:item> <dcscor:parameter>Шрифт</dcscor:parameter> - <dcscor:value xsi:type="v8ui:Font" faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <dcscor:value xsi:type="v8ui:Font" faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> </dcscor:item> <dcscor:item> <dcscor:parameter>МинимальнаяШирина</dcscor:parameter> @@ -775,7 +776,7 @@ <dcsat:appearance> <dcscor:item> <dcscor:parameter>Шрифт</dcscor:parameter> - <dcscor:value xsi:type="v8ui:Font" faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <dcscor:value xsi:type="v8ui:Font" faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> </dcscor:item> </dcsat:appearance> </dcsat:tableCell> @@ -864,7 +865,7 @@ <dcsat:appearance> <dcscor:item> <dcscor:parameter>Шрифт</dcscor:parameter> - <dcscor:value xsi:type="v8ui:Font" faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <dcscor:value xsi:type="v8ui:Font" faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> </dcscor:item> <dcscor:item> <dcscor:parameter>МинимальнаяШирина</dcscor:parameter> @@ -925,7 +926,7 @@ <dcsat:appearance> <dcscor:item> <dcscor:parameter>Шрифт</dcscor:parameter> - <dcscor:value xsi:type="v8ui:Font" faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <dcscor:value xsi:type="v8ui:Font" faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> </dcscor:item> <dcscor:item> <dcscor:parameter>МинимальнаяШирина</dcscor:parameter> @@ -1001,7 +1002,7 @@ <dcsat:appearance> <dcscor:item> <dcscor:parameter>Шрифт</dcscor:parameter> - <dcscor:value xsi:type="v8ui:Font" faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <dcscor:value xsi:type="v8ui:Font" faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> </dcscor:item> </dcsat:appearance> </dcsat:tableCell> diff --git a/SSL/src/DataProcessors/ИнформацияПриЗапуске/Forms/Форма/Form.form b/SSL/src/DataProcessors/ИнформацияПриЗапуске/Forms/Форма/Form.form index e78f29c03..465f6bf81 100644 --- a/SSL/src/DataProcessors/ИнформацияПриЗапуске/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/ИнформацияПриЗапуске/Forms/Форма/Form.form @@ -338,6 +338,14 @@ <segments>ПоказыватьПриНачалеРаботы</segments> </dataPath> <titleLocation>Right</titleLocation> + <toolTip> + <key>ru</key> + <value>При отключении флажка информация не будет показываться месяц или до следующего обновления.</value> + </toolTip> + <handlers> + <event>OnChange</event> + <name>ПоказыватьПриНачалеРаботыПриИзменении</name> + </handlers> <extendedTooltip> <name>ПоказыватьПриНачалеРаботыExtendedTooltip</name> <id>14</id> @@ -373,10 +381,6 @@ <event>OnCreateAtServer</event> <name>ПриСозданииНаСервере</name> </handlers> - <handlers> - <event>OnClose</event> - <name>ПриЗакрытии</name> - </handlers> <excludedCommands>Abort</excludedCommands> <excludedCommands>Cancel</excludedCommands> <excludedCommands>CustomizeForm</excludedCommands> @@ -456,8 +460,12 @@ <valueType> <types>ValueTable</types> </valueType> - <view/> - <edit/> + <view> + <common>true</common> + </view> + <edit> + <common>true</common> + </edit> <columns> <name>Идентификатор</name> <title> @@ -754,7 +762,9 @@ <view> <common>true</common> </view> - <edit/> + <edit> + <common>true</common> + </edit> </attributes> <attributes> <name>КаталогВременныхФайлов</name> @@ -767,8 +777,12 @@ <types>String</types> <stringQualifiers/> </valueType> - <view/> - <edit/> + <view> + <common>true</common> + </view> + <edit> + <common>true</common> + </edit> </attributes> <attributes> <name>СтандартныйПрефикс</name> @@ -784,7 +798,9 @@ <view> <common>true</common> </view> - <edit/> + <edit> + <common>true</common> + </edit> </attributes> <attributes> <name>ИсторияПросмотра</name> @@ -796,8 +812,12 @@ <valueType> <types>ValueTable</types> </valueType> - <view/> - <edit/> + <view> + <common>true</common> + </view> + <edit> + <common>true</common> + </edit> <columns> <name>ИдентификаторПакета</name> <title> @@ -857,21 +877,6 @@ <common>true</common> </edit> </attributes> - <attributes> - <name>КонфигурацияМоделиСервиса</name> - <title> - <key>ru</key> - <value>Конфигурация модели сервиса</value> - - 11 - - Boolean - - - true - - - ТипКонфигурации @@ -886,7 +891,9 @@ <view> <common>true</common> </view> - <edit/> + <edit> + <common>true</common> + </edit> </attributes> <attributes> <name>ПравоСохраненияДанных</name> @@ -901,7 +908,9 @@ <view> <common>true</common> </view> - <edit/> + <edit> + <common>true</common> + </edit> </attributes> <attributes> <name>ЭтоВебКлиент</name> @@ -913,14 +922,18 @@ <valueType> <types>Boolean</types> </valueType> - <view/> - <edit/> + <view> + <common>true</common> + </view> + <edit> + <common>true</common> + </edit> </attributes> <attributes> - <name>ОтсутствуютДанныеДляОтображения</name> + <name>ОтказВПриОткрытии</name> <title> <key>ru</key> - <value>Отсутствуют данные для отображения</value> + <value>Отказ в при открытии</value> 8 diff --git a/SSL/src/DataProcessors/ИнформацияПриЗапуске/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/ИнформацияПриЗапуске/Forms/Форма/Module.bsl index 31e2b375f..62c009f1f 100644 --- a/SSL/src/DataProcessors/ИнформацияПриЗапуске/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/ИнформацияПриЗапуске/Forms/Форма/Module.bsl @@ -7,9 +7,7 @@ КонецЕсли; ТекущаяСтрокаИндекс = -1; - КонфигурацияБазовая = СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации(); - КонфигурацияМоделиСервиса = ОбщегоНазначенияПовтИсп.РазделениеВключено() - Или ОбщегоНазначенияПовтИсп.ЭтоАвтономноеРабочееМесто(); + КонфигурацияБазовая = СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации(); СтандартныйПрефикс = ПолучитьНавигационнуюСсылкуИнформационнойБазы() + "/"; ЭтоВебКлиент = СтрНайти(СтандартныйПрефикс, "http://") > 0; @@ -23,33 +21,19 @@ Если КонфигурацияБазовая Или Не ПравоСохраненияДанных Тогда Элементы.ПоказыватьПриНачалеРаботы.Видимость = Ложь; Иначе - ПоказыватьПриНачалеРаботы = Истина; + ПоказыватьПриНачалеРаботы = ИнформацияПриЗапуске.ПоказыватьПриНачалеРаботы(); КонецЕсли; - ОтсутствуютДанныеДляОтображения = Ложь; - Если Не ПодготовитьДанныеФормы() Тогда - - ОтсутствуютДанныеДляОтображения = Истина; - + ОтказВПриОткрытии = Истина; КонецЕсли; - КонецПроцедуры &НаКлиенте Процедура ПриОткрытии(Отказ) - - Если ОтсутствуютДанныеДляОтображения Тогда + Если ОтказВПриОткрытии Тогда Отказ = Истина; КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ПриЗакрытии() - Если Не КонфигурацияБазовая И ПравоСохраненияДанных Тогда - СохранитьСостояниеФлажка(ПоказыватьПриНачалеРаботы); - КонецЕсли; КонецПроцедуры #КонецОбласти @@ -85,6 +69,13 @@ КонецЕсли; КонецПроцедуры +&НаКлиенте +Процедура ПоказыватьПриНачалеРаботыПриИзменении(Элемент) + Если Не КонфигурацияБазовая И ПравоСохраненияДанных Тогда + СохранитьСостояниеФлажка(ПоказыватьПриНачалеРаботы); + КонецЕсли; +КонецПроцедуры + #КонецОбласти #Область ОбработчикиКомандФормы diff --git a/SSL/src/DataProcessors/ИнформацияПриЗапуске/Templates/Описатель/Template.mxlx b/SSL/src/DataProcessors/ИнформацияПриЗапуске/Templates/Описатель/Template.mxlx index ab176b58e..39c15c05e 100644 --- a/SSL/src/DataProcessors/ИнформацияПриЗапуске/Templates/Описатель/Template.mxlx +++ b/SSL/src/DataProcessors/ИнформацияПриЗапуске/Templates/Описатель/Template.mxlx @@ -318,6 +318,11 @@ 19 + + + 19 + + 20 @@ -325,22 +330,17 @@ - 21 + 20 - 21 + 20 - 21 - - - - - 21 + 20 @@ -350,7 +350,7 @@ - 22 + 21 ru @@ -359,6 +359,11 @@ + + + 22 + + 23 @@ -379,6 +384,11 @@ 26 + + + 25 + + 27 @@ -386,22 +396,12 @@ - 26 + 27 - 28 - - - - - 28 - - - - - 28 + 27 @@ -411,7 +411,7 @@ - 29 + 28 ru @@ -420,6 +420,72 @@ + + + 29 + + + + + 30 + + + + + 31 + + + + + 32 + + + + + 33 + + + + + 34 + + + + + 6 + + + + + 35 + + + + + 35 + + + + + + 5 + + + + 36 + + + + + 37 + + + ru + Наименование подменю, в котором будет размещена страница. "" (не указано) или "Главная" - страницы будут размещены в корне панели, без подменю. Страницы из подменю "Реклама" показываются в первую очередь. + + + + 30 @@ -445,11 +511,6 @@ 34 - - - 35 - - 6 @@ -457,22 +518,27 @@ - 36 + 35 - 36 + 35 - 5 + 6 - 37 + 36 + + + + + 29 @@ -481,7 +547,7 @@ ru - Наименование раздела, в котором будет размещена страница. "" (не указано) или "Главная" - страницы будут размещены в корне панели, без раздела. Страницы из раздела "Реклама" показываются в первую очередь. + Наименование команды, которая будет показывать материал. @@ -506,11 +572,6 @@ 34 - - - 35 - - 6 @@ -518,22 +579,27 @@ - 36 + 35 - 36 + 35 - 6 + 7 - 37 + 36 + + + + + 29 @@ -547,7 +613,7 @@ ru - Наименование команды, которая будет показывать материал. + Имя стартового файла HTML страницы, расположенной в ZIP архиве макета. @@ -572,77 +638,11 @@ 35 - - - 6 - - - - - 36 - - - - - 36 - - - - - - 7 - - - - 37 - - - - - 30 - - - - - 31 - - - - - 40 - - - ru - Имя стартового файла HTML страницы, расположенной в ZIP архиве макета. - - - - - - - 33 - - - - - 34 - - 35 - - - 36 - - - - - 36 - - 6 @@ -655,7 +655,12 @@ - 37 + 36 + + + + + 29 @@ -680,12 +685,7 @@ - 34 - - - - - 41 + 40 ru @@ -701,12 +701,12 @@ - 36 + 35 - 36 + 35 @@ -716,7 +716,12 @@ - 37 + 36 + + + + + 29 @@ -746,12 +751,7 @@ - 35 - - - - - 41 + 40 ru @@ -762,12 +762,12 @@ - 36 + 35 - 36 + 35 @@ -784,13 +784,13 @@ true - 35 + 34 11 11 Solid - + 174 @@ -877,46 +877,28 @@ 0 - style:FormTextColor 77 - d3p1:LightYellow 0 - style:FormTextColor 82 - d3p1:LightYellow 0 - style:FormTextColor 206 - d3p1:LightYellow 0 - style:FormTextColor 75 - d3p1:LightYellow - 0 0 72 - d3p1:LightYellow 0 - style:FormTextColor - 69 - d3p1:LightYellow - - - 0 - style:FormTextColor 72 Center - d3p1:LightYellow 0 diff --git a/SSL/src/DataProcessors/КартаМаршрутаБизнесПроцесса/Forms/Форма/Form.form b/SSL/src/DataProcessors/КартаМаршрутаБизнесПроцесса/Forms/Форма/Form.form index 84db70e1b..236667558 100644 --- a/SSL/src/DataProcessors/КартаМаршрутаБизнесПроцесса/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/КартаМаршрутаБизнесПроцесса/Forms/Форма/Form.form @@ -1,67 +1,26 @@ - - БизнесПроцесс - 1 - true - true - - true - - - БизнесПроцесс - - - OnChange - БизнесПроцессПриИзменении - - - БизнесПроцессExtendedTooltip - 33 - Label - true - true - - Left - - - - БизнесПроцессКонтекстноеМеню - 2 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - СвойстваБизнесПроцесса - 32 + ОбщаяГруппа + 57 - Автор - 9 + БизнесПроцесс + 1 true true true - Автор + БизнесПроцесс + + OnChange + БизнесПроцессПриИзменении + - АвторExtendedTooltip - 35 + БизнесПроцессExtendedTooltip + 33 Label true true @@ -70,22 +29,18 @@ - АвторКонтекстноеМеню - 10 + БизнесПроцессКонтекстноеМеню + 2 true InputField - true Enter true Left true - 43 true true - false - true true true true @@ -93,22 +48,22 @@ - ГруппаСвойстваБизнесПроцесса - 11 + СвойстваБизнесПроцесса + 32 - Дата - 24 + Автор + 9 true true true - Дата + Автор - ДатаExtendedTooltip - 37 + АвторExtendedTooltip + 35 Label true true @@ -117,8 +72,8 @@ - ДатаКонтекстноеМеню - 25 + АвторКонтекстноеМеню + 10 true InputField @@ -130,7 +85,6 @@ true true - false true true true @@ -139,62 +93,22 @@ - ГруппаСтатус - 16 - - ГруппаНеЗавершен - 17 - - Статус - 26 - true - true - - true - - - Статус - - None - - СтатусExtendedTooltip - 40 - Label - true - true - - Left - - - - СтатусКонтекстноеМеню - 27 - true - - LabelField - Enter - true - Left - true - - true - true - false - false - - + ГруппаСвойстваБизнесПроцесса + 11 + + Дата + 24 true true true - - <key>ru</key> - <value>Не завершен</value> - + + Дата + - ГруппаНеЗавершенExtendedTooltip - 39 + ДатаExtendedTooltip + 37 Label true true @@ -202,29 +116,83 @@ Left - Page - - auto - false + + ДатаКонтекстноеМеню + 25 + true + + InputField + true + Enter + true + Left + true + + true + true + false + true + true + true + true + Normal - ГруппаЗавершен - 19 - - ДатаЗавершения - 28 + ГруппаСтатус + 16 + + ГруппаНеЗавершен + 17 + + Статус + 26 + true + true + + true + + + Статус + + None + + СтатусExtendedTooltip + 40 + Label + true + true + + Left + + + + СтатусКонтекстноеМеню + 27 + true + + LabelField + Enter + true + Left + true + + true + true + + true true true - - ДатаЗавершения - + + <key>ru</key> + <value>Не завершен</value> + - ДатаЗавершенияExtendedTooltip - 43 + ГруппаНеЗавершенExtendedTooltip + 39 Label true true @@ -232,26 +200,80 @@ Left - - ДатаЗавершенияКонтекстноеМеню - 29 - true - - InputField - true - Enter - true - Left - true - + Page + + auto + false + + + + ГруппаЗавершен + 19 + + ДатаЗавершения + 28 + true + true + + true + + + ДатаЗавершения + + + ДатаЗавершенияExtendedTooltip + 43 + Label + true + true + + Left + + + + ДатаЗавершенияКонтекстноеМеню + 29 + true + + InputField + true + Enter + true + Left + true + + true + true + false + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Завершен</value> + + + ГруппаЗавершенExtendedTooltip + 42 + Label true true - false - true - true - true - true - Normal + + Left + + + Page + + false true @@ -261,11 +283,11 @@ <key>ru</key> - <value>Завершен</value> + <value>Статус</value> - ГруппаЗавершенExtendedTooltip - 42 + ГруппаСтатусExtendedTooltip + 38 Label true true @@ -273,9 +295,9 @@ Left - Page - - false + Pages + + Auto true @@ -285,12 +307,11 @@ <key>ru</key> - <value>Статус</value> + <value>Свойства бизнес-процесса</value> - 1 - ГруппаСтатусExtendedTooltip - 38 + ГруппаСвойстваБизнесПроцессаExtendedTooltip + 36 Label true true @@ -298,8 +319,12 @@ Left - Pages - + UsualGroup + + Auto + true + true + Auto Auto @@ -310,12 +335,11 @@ <key>ru</key> - <value>Свойства бизнес-процесса</value> + <value>Свойства бизнес процесса</value> - true - ГруппаСвойстваБизнесПроцессаExtendedTooltip - 36 + СвойстваБизнесПроцессаExtendedTooltip + 34 Label true true @@ -325,9 +349,10 @@ UsualGroup + Vertical Auto + NormalSeparation true - true Auto Auto @@ -337,13 +362,9 @@ true - - <key>ru</key> - <value>Свойства бизнес процесса</value> - - СвойстваБизнесПроцессаExtendedTooltip - 34 + ОбщаяГруппаРасширеннаяПодсказка + 58 Label true true @@ -355,7 +376,6 @@ Vertical Auto - NormalSeparation true true Auto @@ -714,9 +734,7 @@ 5 String - - 20 - + true diff --git a/SSL/src/DataProcessors/КонвертацияОбъектовИнформационныхБаз/ObjectModule.bsl b/SSL/src/DataProcessors/КонвертацияОбъектовИнформационныхБаз/ObjectModule.bsl index e5ed83820..e9a97f6d8 100644 --- a/SSL/src/DataProcessors/КонвертацияОбъектовИнформационныхБаз/ObjectModule.bsl +++ b/SSL/src/DataProcessors/КонвертацияОбъектовИнформационныхБаз/ObjectModule.bsl @@ -2047,7 +2047,7 @@ Если ОбработкаДляЗагрузкиДанных().ФлагОшибки() Тогда - СтрокаСообщения = НСтр("ru = 'ВНЕШНЕЕ СОЕДИНЕНИЕ: %1'"); + СтрокаСообщения = НСтр("ru = 'Ошибка в базе-корреспонденте: %1'"); СтрокаСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаСообщения, ОбработкаДляЗагрузкиДанных().СтрокаСообщенияОбОшибке()); ЗаписатьВПротоколВыполнения(СтрокаСообщения); ЗавершитьВедениеПротоколаОбмена(); @@ -2261,6 +2261,10 @@ // Процедура ВыполнитьЗагрузкуДанныхВИнформационнуюБазу(ТаблицыДляЗагрузки) Экспорт + Если ЗначениеЗаполнено(УзелОбменаЗагрузкаДанных) Тогда + УзелОбменаЗагрузкаДанныхОбъект = УзелОбменаЗагрузкаДанных.ПолучитьОбъект(); + КонецЕсли; + РежимЗагрузкиДанных = "ЗагрузкаВИнформационнуюБазу"; ПолеСостояниеОбменаДанными = Неопределено; ПолеРезультатВыполненияОбмена = Неопределено; @@ -3856,7 +3860,7 @@ Если ОбработкаДляЗагрузкиДанных().ФлагОшибки() Тогда - СтрокаСообщения = НСтр("ru = 'ВНЕШНЕЕ СОЕДИНЕНИЕ: %1'"); + СтрокаСообщения = НСтр("ru = 'Ошибка в базе-корреспонденте: %1'"); СтрокаСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаСообщения, ОбработкаДляЗагрузкиДанных().СтрокаСообщенияОбОшибке()); РезультатВыполненияОбменаВнешнееСоединение = Перечисления.РезультатыВыполненияОбмена[ОбработкаДляЗагрузкиДанных().РезультатВыполненияОбменаСтрокой()]; ЗаписатьВПротоколВыполнения(СтрокаСообщения,,,,,, РезультатВыполненияОбменаВнешнееСоединение); @@ -6622,9 +6626,7 @@ ФайлОбмена.Закрыть(); НачатьТранзакцию(); - Попытка - Если Не ЧтениеСообщения.АнализДанных Тогда ЧтениеСообщения.ОтправительОбъект.НомерПринятого = ЧтениеСообщения.НомерСообщения; ЧтениеСообщения.ОтправительОбъект.ОбменДанными.Загрузка = Истина; @@ -6638,14 +6640,11 @@ Если ЕстьИнформацияОРегистрацииОбъекта = Истина Тогда РегистрыСведений.СоответствияОбъектовИнформационныхБаз.УдалитьНеактуальныеЗаписиРежимаВыгрузкиПоСсылке(УзелОбменаЗагрузкаДанных); КонецЕсли; - + ЗафиксироватьТранзакцию(); Исключение ОтменитьТранзакцию(); - ВызватьИсключение; КонецПопытки; - ЗафиксироватьТранзакцию(); - РазблокироватьДанныеДляРедактирования(ЧтениеСообщения.Отправитель); КонецПроцедуры @@ -9867,7 +9866,8 @@ ТекОбъект = НаборЗаписей; КонецЕсли; Если ТекОбъект <> Неопределено Тогда - Если ИмяТипаОбъекта <> "Перечисление" Тогда + Если ИмяТипаОбъекта <> "Перечисление" + И ИмяТипаОбъекта <> "Константы" Тогда ТекОбъект.ДополнительныеСвойства.Вставить("ОбменДанными", Новый Структура("АнализДанных", Не РежимЗагрузкиДанныхВИнформационнуюБазу())); КонецЕсли; @@ -10054,8 +10054,9 @@ // Отключаем механизм регистрации объектов при отмене проведения документа. // Механизм регистрации будет выполнен при отложенном проведении документов // (оптимизация производительности загрузки данных). - Объект.ДополнительныеСвойства.Вставить("ОтключитьМеханизмРегистрацииОбъектов"); - + Если ИмяТипаОбъекта <> "Константы" Тогда + Объект.ДополнительныеСвойства.Вставить("ОтключитьМеханизмРегистрацииОбъектов"); + КонецЕсли; ЗаписатьОбъектВИБ(Объект, ТипОбъекта, ЗаписатьОбъект, ОтправкаНазад); Если НЕ (ИмяТипаОбъекта = "РегистрСведений" @@ -10426,7 +10427,8 @@ КонецЕсли; ИмяФайлаЗаписей = ПолучитьИмяВременногоФайла(); - СписокВременныхФайлов.Добавить(ИмяФайлаЗаписей); + // Удаление временных файлов происходит не по месту, с помощью УдалитьФайлы(ИмяФайлаЗаписей), а централизованно. + СписокВременныхФайлов.Добавить(ИмяФайлаЗаписей); ВременныйФайЗаписей = Новый ЗаписьТекста; Попытка @@ -16088,11 +16090,10 @@ НачатьТранзакцию(); Попытка НомерПринятого = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ЧтениеСообщения.Отправитель, "НомерПринятого"); + ЗафиксироватьТранзакцию(); Исключение ОтменитьТранзакцию(); - ВызватьИсключение; КонецПопытки; - ЗафиксироватьТранзакцию(); Если НомерПринятого >= ЧтениеСообщения.НомерСообщения Тогда // Номер сообщения меньше либо равен ранее принятому. @@ -16205,6 +16206,14 @@ ВызватьИсключение; КонецПопытки; + // Если существует открытая транзакция + // (открытая при получении данных в режиме "Загрузка") ее необходимо закрыть. + // Если транзакция не будет закрыта, то блокировка, + // накладываемая на регистр "ИзмененияОбщихДанныхУзлов" + // при вызове метода "УдалитьРегистрациюИзменений" будет действовать + // до завершения открытой транзакции (окончание получения данных), + // что сделает невозможным как интерактивное изменение узла плана обмена, + // так и программное из других сеансов информационной базы. ОткрытьТранзакцию = Ложь; Если ТранзакцияАктивна() Тогда ЗафиксироватьТранзакцию(); @@ -16214,6 +16223,8 @@ // Удаляем регистрацию изменений на случай, если изменения были ранее зарегистрированы (в случае коллизии изменений). РегистрыСведений.ИзмененияОбщихДанныхУзлов.УдалитьРегистрациюИзменений(ОбщийУзел.Ссылка); + // Если до вызова метода «УдалитьРегистрациюИзменений» регистра сведений «ИзмененияОбщихДанныхУзлов» + // была закрыта транзакция, открытая при получении данных в режиме "Загрузка", то ее необходимо открыть заново. Если ОткрытьТранзакцию Тогда НачатьТранзакцию(); КонецЕсли; @@ -16315,7 +16326,7 @@ Если Не ДокументПроведенУспешно Тогда - ОбменДаннымиСервер.ЗарегистрироватьОшибкуПроведенияДокумента(Объект, УзелОбменаЗагрузкаДанных, ОписаниеОшибки); + ОбменДаннымиСервер.ЗарегистрироватьОшибкуПроведенияДокумента(Объект, УзелОбменаЗагрузкаДанных, ОписаниеОшибки, Истина); КонецЕсли; @@ -16848,23 +16859,6 @@ Исключение Отказ = Истина; ЗаписатьВПротоколВыполнения(ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - - Если ЭтоОбменЧерезВнешнееСоединение() Тогда - - Если ЗагрузкаДанныхВыполняетсяВоВнешнемСоединении Тогда - - Пока ВнешнееСоединение.ТранзакцияАктивна() Цикл - ВнешнееСоединение.ОтменитьТранзакцию(); - КонецЦикла; - - Иначе - - ОбработкаДляЗагрузкиДанных().ВнешнееСоединениеОтменитьТранзакциюПриЗагрузкеДанных(); - - КонецЕсли; - - КонецЕсли; - КонецПопытки; // Выполняем регистрацию объектов на текущем узле, которые были выгружены по ссылке. @@ -17029,270 +17023,276 @@ ЭтоОбменЧерезВнешнееСоединение = ЭтоОбменЧерезВнешнееСоединение(); Если ЭтоОбменЧерезВнешнееСоединение Тогда - Если ЗагрузкаДанныхВыполняетсяВоВнешнемСоединении Тогда - Если ОбработкаДляЗагрузкиДанных().ИспользоватьТранзакции Тогда - ВнешнееСоединение.НачатьТранзакцию(); + КонецЕсли; + Иначе + ОбработкаДляЗагрузкиДанных().ВнешнееСоединениеНачатьТранзакциюПриЗагрузкеДанных(); + КонецЕсли; + КонецЕсли; + + Попытка + УзелДляОбменаОбъект = УзелДляОбмена.ПолучитьОбъект(); + + Пока ВыборкаИзменений.Следующий() Цикл + Инкремент(КоличествоОбъектовКВыгрузке); + КонецЦикла; + + ВыборкаИзменений.Сбросить(); + + Если ЭтоОбменЧерезВнешнееСоединение() Тогда + // В базе-корреспонденте может не быть этого реквизита обработки. + Если ОбработкаДляЗагрузкиДанных().Метаданные().Реквизиты.Найти("КоличествоОбъектовКЗагрузкеВнешнееСоединение") <> Неопределено Тогда + ОбработкаДляЗагрузкиДанных().КоличествоОбъектовКЗагрузкеВнешнееСоединение = КоличествоОбъектовКВыгрузке; + КонецЕсли; + КонецЕсли; + + Пока ВыборкаИзменений.Следующий() Цикл + + Инкремент(ПолеСчетчикВыгруженныхОбъектов); + ОбменДаннымиСервер.РассчитатьПроцентВыгрузки(СчетчикВыгруженныхОбъектов(), КоличествоОбъектовКВыгрузке); + + Данные = ВыборкаИзменений.Получить(); + + ТипДанныхДляВыгрузки = ТипЗнч(Данные); + + // Отрабатываем удаление объекта. + Если ТипДанныхДляВыгрузки = ТипУдалениеОбъекта Тогда + ОтработатьУдалениеОбъекта(Данные); + Продолжить; + + ИначеЕсли ТипДанныхДляВыгрузки = ТипРегистрСоответствия Тогда + Продолжить; КонецЕсли; - Иначе + ОбъектМетаданныхТекущий = Данные.Метаданные(); - ОбработкаДляЗагрузкиДанных().ВнешнееСоединениеНачатьТранзакциюПриЗагрузкеДанных(); - - КонецЕсли; - - КонецЕсли; - - УзелДляОбменаОбъект = УзелДляОбмена.ПолучитьОбъект(); - - Пока ВыборкаИзменений.Следующий() Цикл - Инкремент(КоличествоОбъектовКВыгрузке); - КонецЦикла; - ВыборкаИзменений.Сбросить(); - - Если ЭтоОбменЧерезВнешнееСоединение() Тогда - // В базе-корреспонденте может не быть этого реквизита обработки. - Если ОбработкаДляЗагрузкиДанных().Метаданные().Реквизиты.Найти("КоличествоОбъектовКЗагрузкеВнешнееСоединение") <> Неопределено Тогда - ОбработкаДляЗагрузкиДанных().КоличествоОбъектовКЗагрузкеВнешнееСоединение = КоличествоОбъектовКВыгрузке; - КонецЕсли; - КонецЕсли; - - Пока ВыборкаИзменений.Следующий() Цикл - - Инкремент(ПолеСчетчикВыгруженныхОбъектов); - ОбменДаннымиСервер.РассчитатьПроцентВыгрузки(СчетчикВыгруженныхОбъектов(), КоличествоОбъектовКВыгрузке); - - Данные = ВыборкаИзменений.Получить(); - - ТипДанныхДляВыгрузки = ТипЗнч(Данные); - - // Отрабатываем удаление объекта. - Если ТипДанныхДляВыгрузки = ТипУдалениеОбъекта Тогда - - ОтработатьУдалениеОбъекта(Данные); - Продолжить; - - ИначеЕсли ТипДанныхДляВыгрузки = ТипРегистрСоответствия Тогда - Продолжить; - КонецЕсли; - - ОбъектМетаданныхТекущий = Данные.Метаданные(); - - // Выгружается новый тип объекта метаданных. - Если ОбъектМетаданныхПредыдущий <> ОбъектМетаданныхТекущий Тогда - - Если ОбъектМетаданныхПредыдущий <> Неопределено Тогда + // Выгружается новый тип объекта метаданных. + Если ОбъектМетаданныхПредыдущий <> ОбъектМетаданныхТекущий Тогда - // {ОБРАБОТЧИК ПослеОбработки ПВД} - Если ПравилоВыгрузкиДанныхПредыдущее <> Неопределено - И Не ПустаяСтрока(ПравилоВыгрузкиДанныхПредыдущее.ПослеОбработки) Тогда + Если ОбъектМетаданныхПредыдущий <> Неопределено Тогда + + // {ОБРАБОТЧИК ПослеОбработки ПВД} + Если ПравилоВыгрузкиДанныхПредыдущее <> Неопределено + И Не ПустаяСтрока(ПравилоВыгрузкиДанныхПредыдущее.ПослеОбработки) Тогда + + Попытка + + Если ОтладкаОбработчиковВыгрузки Тогда + + ВыполнитьОбработчик_ПВД_ПослеОбработкиПравила(ИмяПКО, ПравилоВыгрузкиДанныхПредыдущее, ИсходящиеДанные); + + Иначе + + Выполнить(ПравилоВыгрузкиДанныхПредыдущее.ПослеОбработки); + + КонецЕсли; + + Исключение + ЗаписатьИнформациюОбОшибкеОбработчикиПВД(32, ОписаниеОшибки(), ПравилоВыгрузкиДанныхПредыдущее.Имя, "ПослеОбработкиВыгрузкиДанных"); + КонецПопытки; + + КонецЕсли; + // {ОБРАБОТЧИК ПослеОбработки ПВД} + + КонецЕсли; + + ОбъектМетаданныхПредыдущий = ОбъектМетаданныхТекущий; + + ВыгружаетсяРегистр = Ложь; + ВыгружаютсяКонстанты = Ложь; + + СтруктураДанных = МенеджерыДляПлановОбмена[ОбъектМетаданныхТекущий]; + + Если СтруктураДанных = Неопределено Тогда + + ВыгружаютсяКонстанты = Метаданные.Константы.Содержит(ОбъектМетаданныхТекущий); + + ИначеЕсли СтруктураДанных.ЭтоРегистр = Истина Тогда + + ВыгружаетсяРегистр = Истина; + + КонецЕсли; + + Если ВыгружаютсяКонстанты Тогда + + ПравилоВыгрузкиДанных = ТаблицаПравилВыгрузкиИспользуемые.Найти(Тип("КонстантыНабор"), "ОбъектВыборкиМетаданные"); + + Иначе + + ПравилоВыгрузкиДанных = ТаблицаПравилВыгрузкиИспользуемые.Найти(ОбъектМетаданныхТекущий, "ОбъектВыборкиМетаданные"); + + КонецЕсли; + + ПравилоВыгрузкиДанныхПредыдущее = ПравилоВыгрузкиДанных; + + // {ОБРАБОТЧИК ПередОбработкой ПВД} + ИсходящиеДанные = Неопределено; + + Если ПравилоВыгрузкиДанных <> Неопределено + И Не ПустаяСтрока(ПравилоВыгрузкиДанных.ПередОбработкой) Тогда Попытка Если ОтладкаОбработчиковВыгрузки Тогда - ВыполнитьОбработчик_ПВД_ПослеОбработкиПравила(ИмяПКО, ПравилоВыгрузкиДанныхПредыдущее, ИсходящиеДанные); + ВыполнитьОбработчик_ПВД_ПередОбработкойПравила(Отказ, ИмяПКО, ПравилоВыгрузкиДанных, ИсходящиеДанные, ВыборкаДанных); Иначе - Выполнить(ПравилоВыгрузкиДанныхПредыдущее.ПослеОбработки); + Выполнить(ПравилоВыгрузкиДанных.ПередОбработкой); КонецЕсли; Исключение - ЗаписатьИнформациюОбОшибкеОбработчикиПВД(32, ОписаниеОшибки(), ПравилоВыгрузкиДанныхПредыдущее.Имя, "ПослеОбработкиВыгрузкиДанных"); + ЗаписатьИнформациюОбОшибкеОбработчикиПВД(31, ОписаниеОшибки(), ПравилоВыгрузкиДанных.Имя, "ПередОбработкойВыгрузкиДанных"); КонецПопытки; + КонецЕсли; - // {ОБРАБОТЧИК ПослеОбработки ПВД} + // {ОБРАБОТЧИК ПередОбработкой ПВД} КонецЕсли; - ОбъектМетаданныхПредыдущий = ОбъектМетаданныхТекущий; - - ВыгружаетсяРегистр = Ложь; - ВыгружаютсяКонстанты = Ложь; - - СтруктураДанных = МенеджерыДляПлановОбмена[ОбъектМетаданныхТекущий]; - - Если СтруктураДанных = Неопределено Тогда + Если ТипДанныхДляВыгрузки <> ТипРегистрСоответствия Тогда - ВыгружаютсяКонстанты = Метаданные.Константы.Содержит(ОбъектМетаданныхТекущий); + // Определяем вид отправки объекта. + ОтправкаЭлемента = ОтправкаЭлементаДанных.Авто; - ИначеЕсли СтруктураДанных.ЭтоРегистр = Истина Тогда + СтандартныеПодсистемыСервер.ПриОтправкеДанныхПодчиненному(Данные, ОтправкаЭлемента, НачальнаяВыгрузкаДанных, УзелДляОбменаОбъект); - ВыгружаетсяРегистр = Истина; + Если ОтправкаЭлемента = ОтправкаЭлементаДанных.Удалить Тогда + + Если ВыгружаетсяРегистр Тогда + + // Удаление регистра отсылаем в виде пустого набора записей. + + Иначе + + // Посылаем информацию об удалении. + ОтработатьУдалениеОбъекта(Данные); + Продолжить; + + КонецЕсли; + + ИначеЕсли ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать Тогда + + Продолжить; + + КонецЕсли; КонецЕсли; - Если ВыгружаютсяКонстанты Тогда + // ВЫГРУЗКА ОБЪЕКТА + Если ВыгружаетсяРегистр Тогда - ПравилоВыгрузкиДанных = ТаблицаПравилВыгрузкиИспользуемые.Найти(Тип("КонстантыНабор"), "ОбъектВыборкиМетаданные"); + // выгрузка регистра + ВыгрузкаРегистра(Данные, ПравилоВыгрузкиДанных, ИсходящиеДанные, НеВыгружатьОбъектыПоСсылкам); + + ИначеЕсли ВыгружаютсяКонстанты Тогда + + // выгрузка набора констант + Свойства = Менеджеры[Тип("КонстантыНабор")]; + + ВыгрузитьНаборКонстант(ПравилоВыгрузкиДанных, Свойства, ИсходящиеДанные, ОбъектМетаданныхТекущий.Имя); Иначе - ПравилоВыгрузкиДанных = ТаблицаПравилВыгрузкиИспользуемые.Найти(ОбъектМетаданныхТекущий, "ОбъектВыборкиМетаданные"); + // выгрузка ссылочных типов + ВыгрузкаОбъектаВыборки(Данные, ПравилоВыгрузкиДанных, , ИсходящиеДанные, НеВыгружатьОбъектыПоСсылкам); КонецЕсли; - ПравилоВыгрузкиДанныхПредыдущее = ПравилоВыгрузкиДанных; + Если ЭтоОбменЧерезВнешнееСоединение Тогда + + Если ЗагрузкаДанныхВыполняетсяВоВнешнемСоединении Тогда + + Если ОбработкаДляЗагрузкиДанных().ИспользоватьТранзакции + И ОбработкаДляЗагрузкиДанных().КоличествоОбъектовНаТранзакцию > 0 + И ОбработкаДляЗагрузкиДанных().СчетчикЗагруженныхОбъектов() % ОбработкаДляЗагрузкиДанных().КоличествоОбъектовНаТранзакцию = 0 Тогда + + // Если используются транзакции и установлено количество элементов одной транзакции, + // то при чтении сообщения обмена необходимо контролировать, + // сколько объектов загружено. Если количество загруженных объектов + // равно количество объектов в одной транзакции, то существующую транзакцию + // необходимо зафиксировать и открыть новую. + ВнешнееСоединение.ЗафиксироватьТранзакцию(); + ВнешнееСоединение.НачатьТранзакцию(); + + КонецЕсли; + + + Иначе + + ОбработкаДляЗагрузкиДанных().ВнешнееСоединениеПроверитьНачалоИФиксациюТранзакцииПриЗагрузкеДанных(); + + КонецЕсли; + + КонецЕсли; - // {ОБРАБОТЧИК ПередОбработкой ПВД} - ИсходящиеДанные = Неопределено; + КонецЦикла; + + Если ОбъектМетаданныхПредыдущий <> Неопределено Тогда + // {ОБРАБОТЧИК ПослеОбработки ПВД} Если ПравилоВыгрузкиДанных <> Неопределено - И Не ПустаяСтрока(ПравилоВыгрузкиДанных.ПередОбработкой) Тогда + И Не ПустаяСтрока(ПравилоВыгрузкиДанных.ПослеОбработки) Тогда Попытка Если ОтладкаОбработчиковВыгрузки Тогда - ВыполнитьОбработчик_ПВД_ПередОбработкойПравила(Отказ, ИмяПКО, ПравилоВыгрузкиДанных, ИсходящиеДанные, ВыборкаДанных); + ВыполнитьОбработчик_ПВД_ПослеОбработкиПравила(ИмяПКО, ПравилоВыгрузкиДанных, ИсходящиеДанные); Иначе - Выполнить(ПравилоВыгрузкиДанных.ПередОбработкой); + Выполнить(ПравилоВыгрузкиДанных.ПослеОбработки); КонецЕсли; Исключение - ЗаписатьИнформациюОбОшибкеОбработчикиПВД(31, ОписаниеОшибки(), ПравилоВыгрузкиДанных.Имя, "ПередОбработкойВыгрузкиДанных"); - КонецПопытки; - + ЗаписатьИнформациюОбОшибкеОбработчикиПВД(32, ОписаниеОшибки(), ПравилоВыгрузкиДанных.Имя, "ПослеОбработкиВыгрузкиДанных"); + КонецПопытки; КонецЕсли; - // {ОБРАБОТЧИК ПередОбработкой ПВД} + // {ОБРАБОТЧИК ПослеОбработки ПВД} КонецЕсли; - - Если ТипДанныхДляВыгрузки <> ТипРегистрСоответствия Тогда - - // Определяем вид отправки объекта. - ОтправкаЭлемента = ОтправкаЭлементаДанных.Авто; - - СтандартныеПодсистемыСервер.ПриОтправкеДанныхПодчиненному(Данные, ОтправкаЭлемента, НачальнаяВыгрузкаДанных, УзелДляОбменаОбъект); - - Если ОтправкаЭлемента = ОтправкаЭлементаДанных.Удалить Тогда - - Если ВыгружаетсяРегистр Тогда + + Если ЭтоОбменЧерезВнешнееСоединение Тогда + Если ЗагрузкаДанныхВыполняетсяВоВнешнемСоединении Тогда + Если ОбработкаДляЗагрузкиДанных().ИспользоватьТранзакции Тогда - // Удаление регистра отсылаем в виде пустого набора записей. - - Иначе - - // Посылаем информацию об удалении. - ОтработатьУдалениеОбъекта(Данные); - Продолжить; + Если ОбработкаДляЗагрузкиДанных().ФлагОшибки() Тогда + ВызватьИсключение(НСтр("ru = 'Ошибка при отправке данных.'")); + Иначе + ВнешнееСоединение.ЗафиксироватьТранзакцию(); + КонецЕсли; КонецЕсли; - - ИначеЕсли ОтправкаЭлемента = ОтправкаЭлементаДанных.Игнорировать Тогда - - Продолжить; - + Иначе + ОбработкаДляЗагрузкиДанных().ВнешнееСоединениеЗафиксироватьТранзакциюПриЗагрузкеДанных(); КонецЕсли; КонецЕсли; - // ВЫГРУЗКА ОБЪЕКТА - Если ВыгружаетсяРегистр Тогда - - // выгрузка регистра - ВыгрузкаРегистра(Данные, ПравилоВыгрузкиДанных, ИсходящиеДанные, НеВыгружатьОбъектыПоСсылкам); - - ИначеЕсли ВыгружаютсяКонстанты Тогда - - // выгрузка набора констант - Свойства = Менеджеры[Тип("КонстантыНабор")]; - - ВыгрузитьНаборКонстант(ПравилоВыгрузкиДанных, Свойства, ИсходящиеДанные, ОбъектМетаданныхТекущий.Имя); - - Иначе - - // выгрузка ссылочных типов - ВыгрузкаОбъектаВыборки(Данные, ПравилоВыгрузкиДанных, , ИсходящиеДанные, НеВыгружатьОбъектыПоСсылкам); - - КонецЕсли; + Исключение Если ЭтоОбменЧерезВнешнееСоединение Тогда - Если ЗагрузкаДанныхВыполняетсяВоВнешнемСоединении Тогда - - Если ОбработкаДляЗагрузкиДанных().ИспользоватьТранзакции - И ОбработкаДляЗагрузкиДанных().КоличествоОбъектовНаТранзакцию > 0 - И ОбработкаДляЗагрузкиДанных().СчетчикЗагруженныхОбъектов() % ОбработкаДляЗагрузкиДанных().КоличествоОбъектовНаТранзакцию = 0 Тогда - - ВнешнееСоединение.ЗафиксироватьТранзакцию(); - ВнешнееСоединение.НачатьТранзакцию(); - - КонецЕсли; - - - Иначе - - ОбработкаДляЗагрузкиДанных().ВнешнееСоединениеПроверитьНачалоИФиксациюТранзакцииПриЗагрузкеДанных(); - - КонецЕсли; - - КонецЕсли; - - КонецЦикла; - - Если ОбъектМетаданныхПредыдущий <> Неопределено Тогда - - // {ОБРАБОТЧИК ПослеОбработки ПВД} - Если ПравилоВыгрузкиДанных <> Неопределено - И Не ПустаяСтрока(ПравилоВыгрузкиДанных.ПослеОбработки) Тогда - - Попытка - - Если ОтладкаОбработчиковВыгрузки Тогда - - ВыполнитьОбработчик_ПВД_ПослеОбработкиПравила(ИмяПКО, ПравилоВыгрузкиДанных, ИсходящиеДанные); - - Иначе - - Выполнить(ПравилоВыгрузкиДанных.ПослеОбработки); - - КонецЕсли; - - Исключение - ЗаписатьИнформациюОбОшибкеОбработчикиПВД(32, ОписаниеОшибки(), ПравилоВыгрузкиДанных.Имя, "ПослеОбработкиВыгрузкиДанных"); - КонецПопытки; - - КонецЕсли; - // {ОБРАБОТЧИК ПослеОбработки ПВД} - - КонецЕсли; - - Если ЭтоОбменЧерезВнешнееСоединение Тогда - - Если ЗагрузкаДанныхВыполняетсяВоВнешнемСоединении Тогда - - Если ОбработкаДляЗагрузкиДанных().ИспользоватьТранзакции Тогда - - Если ОбработкаДляЗагрузкиДанных().ФлагОшибки() Тогда - + Пока ВнешнееСоединение.ТранзакцияАктивна() Цикл ВнешнееСоединение.ОтменитьТранзакцию(); - - Иначе - - ВнешнееСоединение.ЗафиксироватьТранзакцию(); - - КонецЕсли; - + КонецЦикла; + Иначе + ОбработкаДляЗагрузкиДанных().ВнешнееСоединениеОтменитьТранзакциюПриЗагрузкеДанных(); КонецЕсли; - - Иначе - - ОбработкаДляЗагрузкиДанных().ВнешнееСоединениеЗафиксироватьТранзакциюПриЗагрузкеДанных(); - КонецЕсли; - КонецЕсли; + ВызватьИсключение(НСтр("ru = 'Ошибка при отправке данных'") + ": " + ОписаниеОшибки()); + + КонецПопытки КонецПроцедуры diff --git a/SSL/src/DataProcessors/ЛегальностьПолученияОбновлений/Forms/ПроверкаЛегальностиПолученияОбновления/Form.form b/SSL/src/DataProcessors/ЛегальностьПолученияОбновлений/Forms/ПроверкаЛегальностиПолученияОбновления/Form.form index e6c9e2df9..4b3a77b5c 100644 --- a/SSL/src/DataProcessors/ЛегальностьПолученияОбновлений/Forms/ПроверкаЛегальностиПолученияОбновления/Form.form +++ b/SSL/src/DataProcessors/ЛегальностьПолученияОбновлений/Forms/ПроверкаЛегальностиПолученияОбновления/Form.form @@ -33,7 +33,7 @@ Left true - 75 + 1 true 10 true @@ -76,6 +76,7 @@ true 1 + 1 ru @@ -125,7 +126,6 @@ true Label - true true Left @@ -134,36 +134,6 @@ ГруппаОтправкаСтатистики 26 - - ДекорацияОтступПередОтправкойСтатистики - 18 - true - true - - true - - - ДекорацияОтступПередОтправкойСтатистикиРасширеннаяПодсказка - 20 - Label - true - true - - Left - - - - ДекорацияОтступПередОтправкойСтатистикиКонтекстноеМеню - 19 - true - - Label - true - true - - Left - - РазрешитьОтправкуСтатистики 12 @@ -205,42 +175,13 @@ ГруппаОтправкаСтатистикиПояснение 21 - - ДекорацияОтступПояснение - 23 - true - true - - true - - - ДекорацияОтступПояснениеРасширеннаяПодсказка - 25 - Label - true - true - - Left - - - - ДекорацияОтступПояснениеКонтекстноеМеню - 24 - true - - Label - true - true - - Left - - ДекорацияПояснение 15 <key>ru</key> - <value>Собранные сведения включают в себя только технические характеристики работы программы, являются обезличенными и не содержат информации о пользователях или бизнес-информации.</value> + <value>Собранные сведения включают в себя только технические характеристики работы программы, являются +обезличенными и не содержат информации о пользователях или бизнес-информации.</value> true true @@ -268,7 +209,6 @@ true Label - true true Style.ПоясняющийТекст @@ -319,10 +259,6 @@ ru Группа отправка статистики - - ru - Группа отправка статистики - ГруппаОтправкаСтатистикиРасширеннаяПодсказка 27 @@ -337,6 +273,7 @@ Vertical Auto + NormalSeparation true true Auto @@ -388,7 +325,6 @@ OnClose ПриЗакрытии - 75 LockWholeInterface true true diff --git a/SSL/src/DataProcessors/ЛегальностьПолученияОбновлений/Forms/ПроверкаЛегальностиПолученияОбновления/Module.bsl b/SSL/src/DataProcessors/ЛегальностьПолученияОбновлений/Forms/ПроверкаЛегальностиПолученияОбновления/Module.bsl index 21f3969a2..bcf22c535 100644 --- a/SSL/src/DataProcessors/ЛегальностьПолученияОбновлений/Forms/ПроверкаЛегальностиПолученияОбновления/Module.bsl +++ b/SSL/src/DataProcessors/ЛегальностьПолученияОбновлений/Forms/ПроверкаЛегальностиПолученияОбновления/Module.bsl @@ -77,9 +77,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) - Если Результат <> Истина Тогда + Если ЗавершениеРаботы Тогда + Возврат; + ИначеЕсли Результат <> Истина Тогда Если Параметры.ПоказыватьПредупреждениеОПерезапуске И НЕ ПропуститьПерезапуск Тогда ПрекратитьРаботуСистемы(); КонецЕсли; diff --git a/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ЗавершениеЗапросаРазрешений/Form.form b/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ЗавершениеЗапросаРазрешений/Form.form index b0ce718f5..330dd8e8e 100644 --- a/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ЗавершениеЗапросаРазрешений/Form.form +++ b/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ЗавершениеЗапросаРазрешений/Form.form @@ -31,11 +31,8 @@ 2 true - 8 true - 3 true - true CommonPicture.ДлительнаяОперация48 @@ -74,10 +71,7 @@ true Label - true true - true - true Left Center diff --git a/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ЗавершениеЗапросаРазрешений/Module.bsl b/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ЗавершениеЗапросаРазрешений/Module.bsl index 7b552cc98..628c15efb 100644 --- a/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ЗавершениеЗапросаРазрешений/Module.bsl +++ b/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ЗавершениеЗапросаРазрешений/Module.bsl @@ -35,7 +35,7 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Если Не РазрешитьЗакрытие Тогда Отказ = Истина; diff --git a/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ИнициализацияЗапросаРазрешений/Form.form b/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ИнициализацияЗапросаРазрешений/Form.form index 66584dc09..d1df3af65 100644 --- a/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ИнициализацияЗапросаРазрешений/Form.form +++ b/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ИнициализацияЗапросаРазрешений/Form.form @@ -34,11 +34,8 @@ 4 true - 8 true - 3 true - true CommonPicture.ДлительнаяОперация48 @@ -77,10 +74,7 @@ true Label - true true - true - true Left Center diff --git a/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ИнициализацияЗапросаРазрешений/Module.bsl b/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ИнициализацияЗапросаРазрешений/Module.bsl index f20ad1bcf..5e128131f 100644 --- a/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ИнициализацияЗапросаРазрешений/Module.bsl +++ b/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/ИнициализацияЗапросаРазрешений/Module.bsl @@ -38,12 +38,14 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; Если ЗаданиеАктивно Тогда - ОтменитьОбработкуЗапросов(ИдентификаторЗадания); - КонецЕсли; КонецПроцедуры diff --git a/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Form.form b/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Form.form index b0a21419a..932f57581 100644 --- a/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Form.form +++ b/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Form.form @@ -48,9 +48,7 @@ 261 true - 4 true - 2 true @@ -86,9 +84,7 @@ true Label - true true - true Left @@ -106,7 +102,6 @@ ru Страница шапка при включении будут установлены следующие настройки в кластере - true СтраницаШапкаПриВключенииБудутУстановленыСледующиеНастройкиВКластереРасширеннаяПодсказка 253 @@ -153,11 +148,8 @@ 70 true - 5 true - 2 true - false CommonPicture.Предупреждение32 @@ -195,9 +187,7 @@ true Label - true true - true Left @@ -261,9 +251,7 @@ 264 true - 4 true - 2 true @@ -299,9 +287,7 @@ true Label - true true - true Left @@ -365,11 +351,8 @@ 258 true - 5 true - 2 true - false CommonPicture.Предупреждение32 @@ -405,9 +388,7 @@ true Label - true true - true Left @@ -450,13 +431,7 @@ ru Страницы шапка - - ru - Страницы шапка - 4 - true - false СтраницыШапкаРасширеннаяПодсказка 245 @@ -481,11 +456,6 @@ ru Группа шапка - - ru - Группа шапка - - true ГруппаШапкаРасширеннаяПодсказка 162 @@ -613,9 +583,7 @@ 166 true - 5 true - 2 true @@ -654,7 +622,6 @@ true Label - true true Left @@ -737,10 +704,7 @@ true Label - 55 - true true - true Left @@ -901,8 +865,6 @@ true Label - 75 - true true Left @@ -1379,7 +1341,6 @@ ru Страницы параметры подключения к кластеру по протоколам - true СтраницыПараметрыПодключенияККластеруПоПротоколамРасширеннаяПодсказка 132 @@ -1537,7 +1498,6 @@ ru Администратор кластера серверов 1С:Предприятие - true ГруппаКластерТребуетАвторизацииExtendedTooltip 51 @@ -1677,7 +1637,6 @@ ru Администратор информационной базы: - true ГруппаАдминистрированиеExtendedTooltip 43 @@ -1765,9 +1724,7 @@ 200 true - 2 true - 1 true @@ -1803,9 +1760,7 @@ true Label - true true - true Left @@ -1819,7 +1774,6 @@ ru Предупреждение о необходимости перезапуска - true ГруппаПредупреждениеОНеобходимостиПерезапускаРасширеннаяПодсказка 198 @@ -1936,7 +1890,6 @@ ru Командная панель слева - false КоманднаяПанельСлеваРасширеннаяПодсказка 111 @@ -1952,37 +1905,6 @@ Left - - ДекорацияКоманднаяПанель - 114 - true - true - - true - - - ДекорацияКоманднаяПанельРасширеннаяПодсказка - 116 - Label - true - true - - Left - - - - ДекорацияКоманднаяПанельКонтекстноеМеню - 115 - true - - Label - true - true - true - - Left - - КоманднаяПанельСправа 117 @@ -2186,7 +2108,6 @@ 293 true - 5 true true @@ -2228,9 +2149,7 @@ true Label - true true - true Left @@ -2284,36 +2203,6 @@ true - - Декорация1 - 295 - true - true - - true - - - Декорация1РасширеннаяПодсказка - 297 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 296 - true - - Label - true - true - - Left - - ЗаголовокОперацияНеПоддерживаетсяВВебКлиентеПродолжение 279 @@ -2344,9 +2233,7 @@ true Label - true true - true Left @@ -2515,8 +2402,6 @@ ru Страница операция не поддерживается в веб клиенте - true - true СтраницаОперацияНеПоддерживаетсяВВебКлиентеРасширеннаяПодсказка 267 @@ -3037,6 +2922,13 @@ Boolean + + АдресХранилища + + String + + + diff --git a/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/НастройкиИспользованияПрофилейБезопасности/Form.form b/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/НастройкиИспользованияПрофилейБезопасности/Form.form index 7cc2fc865..a5c4d4c57 100644 --- a/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/НастройкиИспользованияПрофилейБезопасности/Form.form +++ b/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/НастройкиИспользованияПрофилейБезопасности/Form.form @@ -35,47 +35,12 @@ true Label - 78 - true true - false - false Left Top - - Декорация1 - 1585 - true - true - - true - - - Декорация1ExtendedTooltip - 1602 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 1586 - true - - Label - true - true - true - - Left - - ГруппаСправка 1583 @@ -110,8 +75,6 @@ true - false - false ГруппаСправкаExtendedTooltip 1603 @@ -237,7 +200,6 @@ true - 43 ГруппаРежимИспользованияПрофилейБезопасностиРасширеннаяПодсказка 1612 @@ -352,8 +314,6 @@ true Label - true - 3 true Style.ПоясняющийТекст @@ -368,8 +328,6 @@ true - 43 - false ГруппаТребуемыеРазрешенияРасширеннаяПодсказка 1622 @@ -467,8 +425,6 @@ true Label - true - 3 true Style.ПоясняющийТекст @@ -483,8 +439,6 @@ true - 43 - false ГруппаПрофильБезопасностиИнформационнойБазыРасширеннаяПодсказка 1629 @@ -593,9 +547,7 @@ 1648 true - 2 true - 1 true @@ -631,7 +583,6 @@ true Label - true true Style.ПоясняющийТекст @@ -645,8 +596,6 @@ true - 86 - false ГруппаПояснениеОЛицензииКОРПРасширеннаяПодсказка 1646 @@ -732,8 +681,6 @@ true Label - true - 3 true Style.ПоясняющийТекст @@ -748,8 +695,6 @@ true - 43 - false ГруппаОткрытьВнешнююОбработкуРасширеннаяПодсказка 1691 @@ -864,8 +809,6 @@ true Label - true - 3 true Style.ПоясняющийТекст @@ -880,8 +823,6 @@ true - 43 - false ГруппаВосстановлениеПрофилейБезопасностиРасширеннаяПодсказка 1684 @@ -1024,7 +965,6 @@ Write WriteAndClose Yes - 88 DontBlock true true diff --git a/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/НастройкиИспользованияПрофилейБезопасности/Help/ru.html b/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/НастройкиИспользованияПрофилейБезопасности/Help/ru.html index d2c1411dd..a854c06b6 100644 --- a/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/НастройкиИспользованияПрофилейБезопасности/Help/ru.html +++ b/SSL/src/DataProcessors/НастройкаРазрешенийНаИспользованиеВнешнихРесурсов/Forms/НастройкиИспользованияПрофилейБезопасности/Help/ru.html @@ -1,5 +1,5 @@ - 1 - - - - - ВнешнийВидНастройки - 32 - true - true - - true - - - ВнешнийВид.Настройка - - None - - ВнешнийВидНастройкиExtendedTooltip - 122 - Label - true - true - - Left - - - - ВнешнийВидНастройкиКонтекстноеМеню - 33 - true - - LabelField - Left - Auto - true - Left - true - - true - true - - - true - true - - true - - - <key>ru</key> - <value>Картинка и настройка</value> - - - ru - Внешний вид картинка настройка пометка - - - ВнешнийВидКартинкаНастройкаПометкаExtendedTooltip - 119 - Label - true - true - - Left - - - ColumnGroup - - InCell - auto - true - - - - ВнешнийВидКоманднаяПанель - 31 - Left - - - Selection - ДеревоНастроекВыбор - - - ВнешнийВидСтрокаПоиска - 143 - - ВнешнийВидСтрокаПоискаРасширеннаяПодсказка - 145 - Label - true - true - - Left - - - - ВнешнийВидСтрокаПоискаКонтекстноеМеню - 144 - true - - ВнешнийВид - - true - - - - ВнешнийВидСостояниеПросмотра - 146 - - ВнешнийВидСостояниеПросмотраРасширеннаяПодсказка - 148 - Label - true - true - - Left - - - - ВнешнийВидСостояниеПросмотраКонтекстноеМеню - 147 - true - - ViewStatusAddition - ВнешнийВид - - true - - - - ВнешнийВидУправлениеПоиском - 149 - - ВнешнийВидУправлениеПоискомРасширеннаяПодсказка - 151 - Label - true - true - - Left - - - - ВнешнийВидУправлениеПоискомКонтекстноеМеню - 150 - true - - SearchControlAddition - ВнешнийВид - - true - - - ВнешнийВидExtendedTooltip - 118 + КартинкаДлительнаяОперацияРасширеннаяПодсказка + 178 Label true true @@ -504,156 +279,61 @@ - ВнешнийВидКонтекстноеМеню - 30 - - ВнешнийВидКонтекстноеМенюОткрыть - 76 - true - true - - true - - - ВнешнийВидКонтекстноеМенюОткрытьExtendedTooltip - 114 - Label - true - true - - Left - - - Form.Command.Открыть - Normal - Auto - true - true - UserCmds - Auto - - - ВнешнийВидКонтекстноеМенюКопироватьВБуферОбмена - 56 - true - true - - true - - - ВнешнийВидКонтекстноеМенюКопироватьВБуферОбменаExtendedTooltip - 115 - Label - true - true - - Left - - - Form.Item.ВнешнийВид.StandardCommand.CopyToClipboard - Normal - Auto - true - true - UserCmds - Auto - - - ВнешнийВидКонтекстноеМенюВыделитьВсе - 57 - true - true - - true - - - ВнешнийВидКонтекстноеМенюВыделитьВсеExtendedTooltip - 116 - Label - true - true - - Left - - - Form.Item.ВнешнийВид.StandardCommand.SelectAll - Normal - Auto - true - true - UserCmds - Auto - - - ВнешнийВидКонтекстноеМенюВывестиСписок - 102 - true - true - - true - - - ВнешнийВидКонтекстноеМенюВывестиСписокExtendedTooltip - 117 - Label - true - true - - Left - - - Form.Item.ВнешнийВид.StandardCommand.OutputList - Normal - Auto - true - true - UserCmds - Auto - + КартинкаДлительнаяОперацияКонтекстноеМеню + 177 true - Tree true true - true - MultiRow - 1 - 1 - AutoUse - AutoUse - true - true - false - false - false - true - Auto - ExpandAllLevels - true - true - true - true - None - None - None - true + + + CommonPicture.ДлительнаяОперация48 + + + + + ПояснениеДлительнаяОперация + 179 + + <key>ru</key> + <value>Формирование списка настроек пользователя...</value> + + true + true + + true + + + ПояснениеДлительнаяОперацияРасширеннаяПодсказка + 181 + Label + true + true + + Left + + + + ПояснениеДлительнаяОперацияКонтекстноеМеню + 180 + true + + Label + true + true + Center + + Left + true true true - - <key>ru</key> - <value>Внешний вид</value> - - - ru - Внешний вид страница - - ВнешнийВидСтраницаExtendedTooltip - 113 + СтраницаДлительнаяОперацияРасширеннаяПодсказка + 173 Label true true @@ -663,59 +343,281 @@ Page - Vertical - auto false - НастройкиОтчетовСтраница - 14 - - НастройкиОтчетовДерево - 19 - true - true - - true - - - НастройкиОтчетов - - None - Add - Change - Copy - Delete - EndEdit - HierarchicalList - List - MoveDown - MoveUp - SortListAsc - SortListDesc - Tree + СтраницаНастройки + 174 + + ВидыНастроек + 13 - НастройкиОтчетовКартинкаНастройкаПометка - 28 - - Пометка - 81 + ВнешнийВидСтраница + 15 + + ВнешнийВид + 29 true true true - НастройкиОтчетов.Пометка + ВнешнийВид + None + Add + Change + Copy + Delete + EndEdit + HierarchicalList + List + MoveDown + MoveUp + SortListAsc + SortListDesc + Tree + + ВнешнийВидКартинкаНастройкаПометка + 38 + + ВнешнийВидПометка + 83 + true + true + + true + + + ВнешнийВид.Пометка + + + OnChange + ПометкаПриИзменении + + + ВнешнийВидПометкаExtendedTooltip + 120 + Label + true + true + + Left + + + + ВнешнийВидПометкаКонтекстноеМеню + 84 + true + + CheckBoxField + Left + Auto + true + Left + true + + true + + + + ВнешнийВидКартинка + 36 + true + true + + true + + + ВнешнийВид.Картинка + + None + + ВнешнийВидКартинкаExtendedTooltip + 121 + Label + true + true + + Left + + + + ВнешнийВидКартинкаКонтекстноеМеню + 37 + true + + PictureField + true + Left + Auto + true + Left + true + + true + true + true + true + + + 1 + + + + + ВнешнийВидНастройки + 32 + true + true + + true + + + ВнешнийВид.Настройка + + None + + ВнешнийВидНастройкиExtendedTooltip + 122 + Label + true + true + + Left + + + + ВнешнийВидНастройкиКонтекстноеМеню + 33 + true + + LabelField + Left + Auto + true + Left + true + + true + true + + + true + true + + true + + + <key>ru</key> + <value>Картинка и настройка</value> + + + ru + Внешний вид картинка настройка пометка + + + ВнешнийВидКартинкаНастройкаПометкаExtendedTooltip + 119 + Label + true + true + + Left + + + ColumnGroup + + InCell + auto + true + + + + ВнешнийВидКоманднаяПанель + 31 + Left + - OnChange - ПометкаПриИзменении + Selection + ДеревоНастроекВыбор + + ВнешнийВидСтрокаПоиска + 143 + + ВнешнийВидСтрокаПоискаРасширеннаяПодсказка + 145 + Label + true + true + + Left + + + + ВнешнийВидСтрокаПоискаКонтекстноеМеню + 144 + true + + ВнешнийВид + + true + + + + ВнешнийВидСостояниеПросмотра + 146 + + ВнешнийВидСостояниеПросмотраРасширеннаяПодсказка + 148 + Label + true + true + + Left + + + + ВнешнийВидСостояниеПросмотраКонтекстноеМеню + 147 + true + + ViewStatusAddition + ВнешнийВид + + true + + + + ВнешнийВидУправлениеПоиском + 149 + + ВнешнийВидУправлениеПоискомРасширеннаяПодсказка + 151 + Label + true + true + + Left + + + + ВнешнийВидУправлениеПоискомКонтекстноеМеню + 150 + true + + SearchControlAddition + ВнешнийВид + + true + + - ПометкаExtendedTooltip - 130 + ВнешнийВидExtendedTooltip + 118 Label true true @@ -724,101 +626,139 @@ - ПометкаКонтекстноеМеню - 82 + ВнешнийВидКонтекстноеМеню + 30 + + ВнешнийВидКонтекстноеМенюОткрыть + 76 + true + true + + true + + + ВнешнийВидКонтекстноеМенюОткрытьExtendedTooltip + 114 + Label + true + true + + Left + + + Form.Command.Открыть + Normal + Auto + true + true + UserCmds + Auto + + + ВнешнийВидКонтекстноеМенюКопироватьВБуферОбмена + 56 + true + true + + true + + + ВнешнийВидКонтекстноеМенюКопироватьВБуферОбменаExtendedTooltip + 115 + Label + true + true + + Left + + + Form.Item.ВнешнийВид.StandardCommand.CopyToClipboard + Normal + Auto + true + true + UserCmds + Auto + + + ВнешнийВидКонтекстноеМенюВыделитьВсе + 57 + true + true + + true + + + ВнешнийВидКонтекстноеМенюВыделитьВсеExtendedTooltip + 116 + Label + true + true + + Left + + + Form.Item.ВнешнийВид.StandardCommand.SelectAll + Normal + Auto + true + true + UserCmds + Auto + + + ВнешнийВидКонтекстноеМенюВывестиСписок + 102 + true + true + + true + + + ВнешнийВидКонтекстноеМенюВывестиСписокExtendedTooltip + 117 + Label + true + true + + Left + + + Form.Item.ВнешнийВид.StandardCommand.OutputList + Normal + Auto + true + true + UserCmds + Auto + true - CheckBoxField - Left - Auto - true - Left - true - - true - - - - Картинка - 26 - true - true - - true - - - НастройкиОтчетов.Картинка - - None - - КартинкаExtendedTooltip - 131 - Label - true - true - - Left - - - - КартинкаКонтекстноеМеню - 27 - true - - PictureField - true - Left - true - Left - true - - true - true - true - true - - - 1 - - - - - Настройки - 22 - true - true - - true - - - НастройкиОтчетов.Настройка - - None - - НастройкиExtendedTooltip - 132 - Label - true - true - - Left - - - - НастройкиКонтекстноеМеню - 23 - true - - LabelField - Left - Auto - true - Left - true - - true - true - + Tree + true + true + true + MultiRow + 1 + 1 + AutoUse + AutoUse + true + true + false + false + false + true + Auto + ExpandAllLevels + true + true + true + true + None + None + None + true true true @@ -827,15 +767,15 @@ <key>ru</key> - <value>Картинка и настройка</value> + <value>Внешний вид</value> ru - Настройки отчетов картинка настройка пометка + Внешний вид страница - НастройкиОтчетовКартинкаНастройкаПометкаExtendedTooltip - 129 + ВнешнийВидСтраницаExtendedTooltip + 113 Label true true @@ -843,316 +783,278 @@ Left - ColumnGroup - - InCell + Page + + Vertical auto - true + false - - НастройкиОтчетовДеревоКоманднаяПанель - 21 - Left - - - Selection - ДеревоНастроекВыбор - - - НастройкиОтчетовДеревоСтрокаПоиска - 152 - - НастройкиОтчетовДеревоСтрокаПоискаРасширеннаяПодсказка - 154 - Label - true - true - - Left - - - - НастройкиОтчетовДеревоСтрокаПоискаКонтекстноеМеню - 153 - true - - НастройкиОтчетовДерево - - true - - - - НастройкиОтчетовДеревоСостояниеПросмотра - 155 - - НастройкиОтчетовДеревоСостояниеПросмотраРасширеннаяПодсказка - 157 - Label - true - true - - Left - - - - НастройкиОтчетовДеревоСостояниеПросмотраКонтекстноеМеню - 156 - true - - ViewStatusAddition - НастройкиОтчетовДерево - - true - - - - НастройкиОтчетовДеревоУправлениеПоиском - 158 - - НастройкиОтчетовДеревоУправлениеПоискомРасширеннаяПодсказка - 160 - Label - true - true - - Left - - - - НастройкиОтчетовДеревоУправлениеПоискомКонтекстноеМеню - 159 - true - - SearchControlAddition - НастройкиОтчетовДерево - - true - - - - НастройкиОтчетовДеревоExtendedTooltip - 128 - Label - true - true - - Left - - - - НастройкиОтчетовДеревоКонтекстноеМеню - 20 - - НастройкиОтчетовДеревоКонтекстноеМенюОткрыть - 65 - true - true - - true - - - НастройкиОтчетовДеревоКонтекстноеМенюОткрытьExtendedTooltip - 124 - Label - true - true - - Left - - - Form.Command.Открыть - Normal - Auto - true - true - UserCmds - Auto - - - НастройкиОтчетовДеревоКонтекстноеМенюВыделитьВсе - 53 - true - true - - true - - - НастройкиОтчетовДеревоКонтекстноеМенюВыделитьВсеExtendedTooltip - 125 - Label - true - true - - Left - - - Form.Item.НастройкиОтчетовДерево.StandardCommand.SelectAll - Normal - Auto - true - true - UserCmds - Auto - - - НастройкиОтчетовДеревоКонтекстноеМенюКопироватьВБуферОбмена - 52 - true - true - - true - - - НастройкиОтчетовДеревоКонтекстноеМенюКопироватьВБуферОбменаExtendedTooltip - 126 - Label - true - true - - Left - - - Form.Item.НастройкиОтчетовДерево.StandardCommand.CopyToClipboard - Normal - Auto - true - true - UserCmds - Auto - - - НастройкиОтчетовДеревоКонтекстноеМенюВывестиСписок - 101 - true - true - - true - - - НастройкиОтчетовДеревоКонтекстноеМенюВывестиСписокExtendedTooltip - 127 - Label - true - true - - Left - - - Form.Item.НастройкиОтчетовДерево.StandardCommand.OutputList - Normal - Auto - true - true - UserCmds - Auto - - true - - Tree - true - true - true - MultiRow - 1 - 1 - AutoUse - AutoUse - true - true - false - false - true - Auto - ExpandAllLevels - true - true - true - true - None - None - None - true - - true - true - - true - - - <key>ru</key> - <value>Настройки отчетов</value> - - - ru - Настройки отчетов страница - - - НастройкиОтчетовСтраницаExtendedTooltip - 123 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - ПрочиеНастройкиСтраница - 85 - - ПрочиеНастройки - 86 - true - true - - true - - - ПрочиеНастройки - - None - Add - Change - Copy - Delete - EndEdit - HierarchicalList - List - MoveDown - MoveUp - SortListAsc - SortListDesc - Tree - ПрочиеНастройкиКартинкаНастройкаПометка - 97 - - ПрочиеНастройкиПометка - 95 + НастройкиОтчетовСтраница + 14 + + НастройкиОтчетовДерево + 19 true true true - ПрочиеНастройки.Пометка + НастройкиОтчетов None + Add + Change + Copy + Delete + EndEdit + HierarchicalList + List + MoveDown + MoveUp + SortListAsc + SortListDesc + Tree + + НастройкиОтчетовКартинкаНастройкаПометка + 28 + + Пометка + 81 + true + true + + true + + + НастройкиОтчетов.Пометка + + + OnChange + ПометкаПриИзменении + + + ПометкаExtendedTooltip + 130 + Label + true + true + + Left + + + + ПометкаКонтекстноеМеню + 82 + true + + CheckBoxField + Left + Auto + true + Left + true + + true + + + + Картинка + 26 + true + true + + true + + + НастройкиОтчетов.Картинка + + None + + КартинкаExtendedTooltip + 131 + Label + true + true + + Left + + + + КартинкаКонтекстноеМеню + 27 + true + + PictureField + true + Left + true + Left + true + + true + true + true + true + + + 1 + + + + + Настройки + 22 + true + true + + true + + + НастройкиОтчетов.Настройка + + None + + НастройкиExtendedTooltip + 132 + Label + true + true + + Left + + + + НастройкиКонтекстноеМеню + 23 + true + + LabelField + Left + Auto + true + Left + true + + true + true + + + true + true + + true + + + <key>ru</key> + <value>Картинка и настройка</value> + + + ru + Настройки отчетов картинка настройка пометка + + + НастройкиОтчетовКартинкаНастройкаПометкаExtendedTooltip + 129 + Label + true + true + + Left + + + ColumnGroup + + InCell + auto + true + + + + НастройкиОтчетовДеревоКоманднаяПанель + 21 + Left + - OnChange - ПометкаПриИзменении + Selection + ДеревоНастроекВыбор + + НастройкиОтчетовДеревоСтрокаПоиска + 152 + + НастройкиОтчетовДеревоСтрокаПоискаРасширеннаяПодсказка + 154 + Label + true + true + + Left + + + + НастройкиОтчетовДеревоСтрокаПоискаКонтекстноеМеню + 153 + true + + НастройкиОтчетовДерево + + true + + + + НастройкиОтчетовДеревоСостояниеПросмотра + 155 + + НастройкиОтчетовДеревоСостояниеПросмотраРасширеннаяПодсказка + 157 + Label + true + true + + Left + + + + НастройкиОтчетовДеревоСостояниеПросмотраКонтекстноеМеню + 156 + true + + ViewStatusAddition + НастройкиОтчетовДерево + + true + + + + НастройкиОтчетовДеревоУправлениеПоиском + 158 + + НастройкиОтчетовДеревоУправлениеПоискомРасширеннаяПодсказка + 160 + Label + true + true + + Left + + + + НастройкиОтчетовДеревоУправлениеПоискомКонтекстноеМеню + 159 + true + + SearchControlAddition + НастройкиОтчетовДерево + + true + + - ПрочиеНастройкиПометкаExtendedTooltip - 140 + НастройкиОтчетовДеревоExtendedTooltip + 128 Label true true @@ -1161,102 +1063,138 @@ - ПрочиеНастройкиПометкаКонтекстноеМеню - 96 + НастройкиОтчетовДеревоКонтекстноеМеню + 20 + + НастройкиОтчетовДеревоКонтекстноеМенюОткрыть + 65 + true + true + + true + + + НастройкиОтчетовДеревоКонтекстноеМенюОткрытьExtendedTooltip + 124 + Label + true + true + + Left + + + Form.Command.Открыть + Normal + Auto + true + true + UserCmds + Auto + + + НастройкиОтчетовДеревоКонтекстноеМенюВыделитьВсе + 53 + true + true + + true + + + НастройкиОтчетовДеревоКонтекстноеМенюВыделитьВсеExtendedTooltip + 125 + Label + true + true + + Left + + + Form.Item.НастройкиОтчетовДерево.StandardCommand.SelectAll + Normal + Auto + true + true + UserCmds + Auto + + + НастройкиОтчетовДеревоКонтекстноеМенюКопироватьВБуферОбмена + 52 + true + true + + true + + + НастройкиОтчетовДеревоКонтекстноеМенюКопироватьВБуферОбменаExtendedTooltip + 126 + Label + true + true + + Left + + + Form.Item.НастройкиОтчетовДерево.StandardCommand.CopyToClipboard + Normal + Auto + true + true + UserCmds + Auto + + + НастройкиОтчетовДеревоКонтекстноеМенюВывестиСписок + 101 + true + true + + true + + + НастройкиОтчетовДеревоКонтекстноеМенюВывестиСписокExtendedTooltip + 127 + Label + true + true + + Left + + + Form.Item.НастройкиОтчетовДерево.StandardCommand.OutputList + Normal + Auto + true + true + UserCmds + Auto + true - CheckBoxField - Left - Auto - true - Left - true - - true - - - - ПрочиеНастройкиКартинка - 91 - true - true - - true - - - ПрочиеНастройки.Картинка - - None - - ПрочиеНастройкиКартинкаExtendedTooltip - 141 - Label - true - true - - Left - - - - ПрочиеНастройкиКартинкаКонтекстноеМеню - 92 - true - - PictureField - true - Left - Auto - true - Left - true - - true - true - true - true - - - 1 - - - - - ПрочиеНастройкиНастройка - 89 - true - true - - true - - - ПрочиеНастройки.Настройка - - None - - ПрочиеНастройкиНастройкаExtendedTooltip - 142 - Label - true - true - - Left - - - - ПрочиеНастройкиНастройкаКонтекстноеМеню - 90 - true - - LabelField - Left - Auto - true - Left - true - - true - true - + Tree + true + true + true + MultiRow + 1 + 1 + AutoUse + AutoUse + true + true + false + false + true + Auto + ExpandAllLevels + true + true + true + true + None + None + None + true true true @@ -1265,15 +1203,15 @@ <key>ru</key> - <value>Прочие настройки картинка настройка пометка</value> + <value>Настройки отчетов</value> ru - Прочие настройки картинка настройка пометка + Настройки отчетов страница - ПрочиеНастройкиКартинкаНастройкаПометкаExtendedTooltip - 139 + НастройкиОтчетовСтраницаExtendedTooltip + 123 Label true true @@ -1281,27 +1219,435 @@ Left - ColumnGroup - - InCell - true + Page + + Vertical + auto + false - - ПрочиеНастройкиКоманднаяПанель - 88 - Left - - - Selection - ДеревоНастроекВыбор - - - ПрочиеНастройкиСтрокаПоиска - 161 + + ПрочиеНастройкиСтраница + 85 + + ПрочиеНастройки + 86 + true + true + + true + + + ПрочиеНастройки + + None + Add + Change + Copy + Delete + EndEdit + HierarchicalList + List + MoveDown + MoveUp + SortListAsc + SortListDesc + Tree + + ПрочиеНастройкиКартинкаНастройкаПометка + 97 + + ПрочиеНастройкиПометка + 95 + true + true + + true + + + ПрочиеНастройки.Пометка + + None + + OnChange + ПометкаПриИзменении + + + ПрочиеНастройкиПометкаExtendedTooltip + 140 + Label + true + true + + Left + + + + ПрочиеНастройкиПометкаКонтекстноеМеню + 96 + true + + CheckBoxField + Left + Auto + true + Left + true + + true + + + + ПрочиеНастройкиКартинка + 91 + true + true + + true + + + ПрочиеНастройки.Картинка + + None + + ПрочиеНастройкиКартинкаExtendedTooltip + 141 + Label + true + true + + Left + + + + ПрочиеНастройкиКартинкаКонтекстноеМеню + 92 + true + + PictureField + true + Left + Auto + true + Left + true + + true + true + true + true + + + 1 + + + + + ПрочиеНастройкиНастройка + 89 + true + true + + true + + + ПрочиеНастройки.Настройка + + None + + ПрочиеНастройкиНастройкаExtendedTooltip + 142 + Label + true + true + + Left + + + + ПрочиеНастройкиНастройкаКонтекстноеМеню + 90 + true + + LabelField + Left + Auto + true + Left + true + + true + true + + + true + true + + true + + + <key>ru</key> + <value>Прочие настройки картинка настройка пометка</value> + + + ru + Прочие настройки картинка настройка пометка + + + ПрочиеНастройкиКартинкаНастройкаПометкаExtendedTooltip + 139 + Label + true + true + + Left + + + ColumnGroup + + InCell + true + + + + ПрочиеНастройкиКоманднаяПанель + 88 + Left + + + Selection + ДеревоНастроекВыбор + + + ПрочиеНастройкиСтрокаПоиска + 161 + + ПрочиеНастройкиСтрокаПоискаРасширеннаяПодсказка + 163 + Label + true + true + + Left + + + + ПрочиеНастройкиСтрокаПоискаКонтекстноеМеню + 162 + true + + ПрочиеНастройки + + true + + + + ПрочиеНастройкиСостояниеПросмотра + 164 + + ПрочиеНастройкиСостояниеПросмотраРасширеннаяПодсказка + 166 + Label + true + true + + Left + + + + ПрочиеНастройкиСостояниеПросмотраКонтекстноеМеню + 165 + true + + ViewStatusAddition + ПрочиеНастройки + + true + + + + ПрочиеНастройкиУправлениеПоиском + 167 + + ПрочиеНастройкиУправлениеПоискомРасширеннаяПодсказка + 169 + Label + true + true + + Left + + + + ПрочиеНастройкиУправлениеПоискомКонтекстноеМеню + 168 + true + + SearchControlAddition + ПрочиеНастройки + + true + + + + ПрочиеНастройкиExtendedTooltip + 138 + Label + true + true + + Left + + + + ПрочиеНастройкиКонтекстноеМеню + 87 + + ПрочиеНастройкиКонтекстноеМенюОткрыть + 100 + true + true + + true + + + ПрочиеНастройкиКонтекстноеМенюОткрытьExtendedTooltip + 134 + Label + true + true + + Left + + + Form.Command.Открыть + Normal + Auto + true + true + UserCmds + Auto + + + ПрочиеНастройкиКонтекстноеМенюКопироватьВБуферОбмена + 98 + true + true + + true + + + ПрочиеНастройкиКонтекстноеМенюКопироватьВБуферОбменаExtendedTooltip + 135 + Label + true + true + + Left + + + Form.Item.ПрочиеНастройки.StandardCommand.CopyToClipboard + Normal + Auto + true + true + UserCmds + Auto + + + ПрочиеНастройкиКонтекстноеМенюВыделитьВсе + 99 + true + true + + true + + + ПрочиеНастройкиКонтекстноеМенюВыделитьВсеExtendedTooltip + 136 + Label + true + true + + Left + + + Form.Item.ПрочиеНастройки.StandardCommand.SelectAll + Normal + Auto + true + true + UserCmds + Auto + + + ПрочиеНастройкиКонтекстноеМенюВывестиСписок + 103 + true + true + + true + + + ПрочиеНастройкиКонтекстноеМенюВывестиСписокExtendedTooltip + 137 + Label + true + true + + Left + + + Form.Item.ПрочиеНастройки.StandardCommand.OutputList + Normal + Auto + true + true + UserCmds + Auto + + true + + true + true + true + MultiRow + 1 + 1 + AutoUse + true + true + false + false + false + true + Auto + ExpandAllLevels + true + true + true + true + None + None + None + true + + true + true + + true + + + <key>ru</key> + <value>Прочие настройки</value> + + + ru + Прочие настройки страница + - ПрочиеНастройкиСтрокаПоискаРасширеннаяПодсказка - 163 + ПрочиеНастройкиСтраницаExtendedTooltip + 133 Label true true @@ -1309,67 +1655,29 @@ Left - - ПрочиеНастройкиСтрокаПоискаКонтекстноеМеню - 162 - true - - ПрочиеНастройки - - true + Page + + Vertical + auto + false - - - ПрочиеНастройкиСостояниеПросмотра - 164 - - ПрочиеНастройкиСостояниеПросмотраРасширеннаяПодсказка - 166 - Label - true - true - - Left - - - - ПрочиеНастройкиСостояниеПросмотраКонтекстноеМеню - 165 - true - - ViewStatusAddition - ПрочиеНастройки - - true - - - - ПрочиеНастройкиУправлениеПоиском - 167 - - ПрочиеНастройкиУправлениеПоискомРасширеннаяПодсказка - 169 - Label - true - true - - Left - - - - ПрочиеНастройкиУправлениеПоискомКонтекстноеМеню - 168 - true - - SearchControlAddition - ПрочиеНастройки - - true - - + + true + true + + true + + + <key>ru</key> + <value>Виды настроек</value> + + + ru + Виды настроек + - ПрочиеНастройкиExtendedTooltip - 138 + ВидыНастроекExtendedTooltip + 112 Label true true @@ -1377,155 +1685,24 @@ Left - - ПрочиеНастройкиКонтекстноеМеню - 87 - - ПрочиеНастройкиКонтекстноеМенюОткрыть - 100 - true - true - - true - - - ПрочиеНастройкиКонтекстноеМенюОткрытьExtendedTooltip - 134 - Label - true - true - - Left - - - Form.Command.Открыть - Normal - Auto - true - true - UserCmds - Auto - - - ПрочиеНастройкиКонтекстноеМенюКопироватьВБуферОбмена - 98 - true - true - - true - - - ПрочиеНастройкиКонтекстноеМенюКопироватьВБуферОбменаExtendedTooltip - 135 - Label - true - true - - Left - - - Form.Item.ПрочиеНастройки.StandardCommand.CopyToClipboard - Normal - Auto - true - true - UserCmds - Auto - - - ПрочиеНастройкиКонтекстноеМенюВыделитьВсе - 99 - true - true - - true - - - ПрочиеНастройкиКонтекстноеМенюВыделитьВсеExtendedTooltip - 136 - Label - true - true - - Left - - - Form.Item.ПрочиеНастройки.StandardCommand.SelectAll - Normal - Auto - true - true - UserCmds - Auto - - - ПрочиеНастройкиКонтекстноеМенюВывестиСписок - 103 - true - true - - true - - - ПрочиеНастройкиКонтекстноеМенюВывестиСписокExtendedTooltip - 137 - Label - true - true - - Left - - - Form.Item.ПрочиеНастройки.StandardCommand.OutputList - Normal - Auto - true - true - UserCmds - Auto - - true - - true - true - true - MultiRow - 1 - 1 - AutoUse - true - true - false - false - false - true - Auto - ExpandAllLevels - true - true - true - true - None - None - None - true + Pages + + + OnCurrentPageChange + ПриСменеСтраницы + + TabsOnTop + Auto + true true true - - <key>ru</key> - <value>Прочие настройки</value> - - - ru - Прочие настройки страница - - ПрочиеНастройкиСтраницаExtendedTooltip - 133 + СтраницаНастройкиРасширеннаяПодсказка + 175 Label true true @@ -1536,7 +1713,6 @@ Page Vertical - auto false @@ -1545,17 +1721,9 @@ true - - <key>ru</key> - <value>Виды настроек</value> - - - ru - Виды настроек - - ВидыНастроекExtendedTooltip - 112 + СтраницыДлительнаяОперацияРасширеннаяПодсказка + 171 Label true true @@ -1565,11 +1733,6 @@ Pages - - OnCurrentPageChange - ПриСменеСтраницы - - TabsOnTop Auto @@ -1615,6 +1778,10 @@ OnSaveDataInSettingsAtServer ПриСохраненииДанныхВНастройкахНаСервере + + OnOpen + ПриОткрытии + OnLoadDataFromSettingsAtServer ПриЗагрузкеДанныхИзНастроекНаСервере @@ -2327,6 +2494,55 @@ true + + РезультатВыполнения + + <key>ru</key> + <value>Результат выполнения</value> + + 17 + + + true + + + true + + + + ПоискНастроек + + <key>ru</key> + <value>Поиск настроек</value> + + 18 + + Boolean + + + true + + + true + + + + НачальныеНастройкиЗагружены + + <key>ru</key> + <value>Начальные настройки загружены</value> + + 19 + + Boolean + + + true + + + true + + Обновить diff --git a/SSL/src/DataProcessors/НастройкиПользователей/Forms/ВыборНастроек/Module.bsl b/SSL/src/DataProcessors/НастройкиПользователей/Forms/ВыборНастроек/Module.bsl index 4f40c4dc4..c02837b58 100644 --- a/SSL/src/DataProcessors/НастройкиПользователей/Forms/ВыборНастроек/Module.bsl +++ b/SSL/src/DataProcessors/НастройкиПользователей/Forms/ВыборНастроек/Module.bsl @@ -8,26 +8,27 @@ Возврат; КонецЕсли; - ПользовательСсылка = Параметры.Пользователь; - ДействиеСНастройками = Параметры.ДействиеСНастройками; + ПользовательСсылка = Параметры.Пользователь; + ДействиеСНастройками = Параметры.ДействиеСНастройками; ПользовательИнформационнойБазы = Обработки.НастройкиПользователей.ИмяПользователяИБ(ПользовательСсылка); - ТекущийПользовательСсылка = Пользователи.ТекущийПользователь(); - ТекущийПользователь = Обработки.НастройкиПользователей.ИмяПользователяИБ(ТекущийПользовательСсылка); + ТекущийПользовательСсылка = Пользователи.ТекущийПользователь(); + ТекущийПользователь = Обработки.НастройкиПользователей.ИмяПользователяИБ(ТекущийПользовательСсылка); ВыбраннаяСтраницаНастроек = Элементы.ВидыНастроек.ТекущаяСтраница.Имя; ИмяФормыПерсональныхНастроек = ОбщегоНазначения.ОбщиеПараметрыБазовойФункциональности().ИмяФормыПерсональныхНастроек; - ЗаполнитьСпискиНастроек(Ложь); - КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) - Если ДанныеВХранилищеНастроекСохранены Тогда - Оповестить("ВыборНастроек_ДанныеСохранены"); + Если ДанныеВХранилищеНастроекСохранены + И ТипЗнч(ВладелецФормы) = Тип("УправляемаяФорма") Тогда + + Свойства = Новый Структура("ОчиститьИсториюВыбораНастроек", Ложь); + ЗаполнитьЗначенияСвойств(ВладелецФормы, Свойства); КонецЕсли; КонецПроцедуры @@ -41,17 +42,17 @@ Настройки.Удалить("НастройкиОтчетов"); Настройки.Удалить("ПрочиеНастройки"); + ВнешнийВидДерево = РеквизитФормыВЗначение("ВнешнийВид"); НастройкиОтчетовДерево = РеквизитФормыВЗначение("НастройкиОтчетов"); - ВнешнийВидДерево = РеквизитФормыВЗначение("ВнешнийВид"); - ПрочиеНастройкиДерево = РеквизитФормыВЗначение("ПрочиеНастройки"); + ПрочиеНастройкиДерево = РеквизитФормыВЗначение("ПрочиеНастройки"); - ПомеченныеНастройкиОтчетов = ПомеченныеНастройки(НастройкиОтчетовДерево); ПомеченныеНастройкиВнешнегоВида = ПомеченныеНастройки(ВнешнийВидДерево); - ПомеченныеПрочиеНастройки = ПомеченныеНастройки(ПрочиеНастройкиДерево); + ПомеченныеНастройкиОтчетов = ПомеченныеНастройки(НастройкиОтчетовДерево); + ПомеченныеПрочиеНастройки = ПомеченныеНастройки(ПрочиеНастройкиДерево); - Настройки.Вставить("ПомеченныеНастройкиОтчетов", ПомеченныеНастройкиОтчетов); Настройки.Вставить("ПомеченныеНастройкиВнешнегоВида", ПомеченныеНастройкиВнешнегоВида); - Настройки.Вставить("ПомеченныеПрочиеНастройки", ПомеченныеПрочиеНастройки); + Настройки.Вставить("ПомеченныеНастройкиОтчетов", ПомеченныеНастройкиОтчетов); + Настройки.Вставить("ПомеченныеПрочиеНастройки", ПомеченныеПрочиеНастройки); ДанныеВХранилищеНастроекСохранены = Истина; @@ -60,6 +61,11 @@ &НаСервере Процедура ПриЗагрузкеДанныхИзНастроекНаСервере(Настройки) + ВсеВыбранныеНастройки = Новый Структура; + ВсеВыбранныеНастройки.Вставить("ПомеченныеНастройкиВнешнегоВида"); + ВсеВыбранныеНастройки.Вставить("ПомеченныеНастройкиОтчетов"); + ВсеВыбранныеНастройки.Вставить("ПомеченныеПрочиеНастройки"); + Если Параметры.ОчиститьИсториюВыбораНастроек Тогда Настройки.Очистить(); Возврат; @@ -71,16 +77,21 @@ КонецЕсли; Поиск = ""; - ПомеченныеНастройкиОтчетов = Настройки.Получить("ПомеченныеНастройкиОтчетов"); ПомеченныеНастройкиВнешнегоВида = Настройки.Получить("ПомеченныеНастройкиВнешнегоВида"); - ПомеченныеПрочиеНастройки = Настройки.Получить("ПомеченныеПрочиеНастройки"); + ПомеченныеНастройкиОтчетов = Настройки.Получить("ПомеченныеНастройкиОтчетов"); + ПомеченныеПрочиеНастройки = Настройки.Получить("ПомеченныеПрочиеНастройки"); - ЗагрузитьЗначенияПометок(НастройкиОтчетов, ПомеченныеНастройкиОтчетов, "НастройкиОтчетов"); - ЗагрузитьЗначенияПометок(ВнешнийВид, ПомеченныеНастройкиВнешнегоВида, "ВнешнийВид"); - ЗагрузитьЗначенияПометок(ПрочиеНастройки, ПомеченныеПрочиеНастройки, "ПрочиеНастройки"); + ВсеВыбранныеНастройки.ПомеченныеНастройкиВнешнегоВида = ПомеченныеНастройкиВнешнегоВида; + ВсеВыбранныеНастройки.ПомеченныеНастройкиОтчетов = ПомеченныеНастройкиОтчетов; + ВсеВыбранныеНастройки.ПомеченныеПрочиеНастройки = ПомеченныеПрочиеНастройки; КонецПроцедуры +&НаКлиенте +Процедура ПриОткрытии(Отказ) + ОбновитьСписокНастроек(); +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы @@ -112,8 +123,8 @@ ТекущийЭлемент = Элементы.Поиск; КонецЕсли; - ЗаполнитьСпискиНастроек(Истина); - РазвернутьДеревоЗначений(); + ПоискНастроек = Истина; + ОбновитьСписокНастроек(); КонецПроцедуры @@ -140,8 +151,8 @@ &НаКлиенте Процедура Обновить(Команда) - ЗаполнитьСпискиНастроек(Ложь); - РазвернутьДеревоЗначений(); + ПоискНастроек = Ложь; + ОбновитьСписокНастроек(); КонецПроцедуры @@ -188,35 +199,38 @@ &НаКлиенте Процедура Выбрать(Команда) - Результат = Новый Структура(); - ВыбранныеНастройкиОтчетов = ВыбранныеНастройки(НастройкиОтчетов); - ВыбранныеНастройкиВнешнегоВида = ВыбранныеНастройки(ВнешнийВид); - ПрочиеНастройкиСтруктура = ВыбранныеНастройки(ПрочиеНастройки); - КоличествоНастроек = ВыбранныеНастройкиОтчетов.КоличествоНастроек - + ВыбранныеНастройкиВнешнегоВида.КоличествоНастроек - + ПрочиеНастройкиСтруктура.КоличествоНастроек; + Результат = Новый Структура; + + ВыбранныеНастройкиВнешнегоВида = ВыбранныеНастройки(ВнешнийВид); + ВыбранныеНастройкиОтчетов = ВыбранныеНастройки(НастройкиОтчетов); + ВыбранныеПрочиеНастройкиСтруктура = ВыбранныеНастройки(ПрочиеНастройки); + + КоличествоНастроек = ВыбранныеНастройкиВнешнегоВида.КоличествоНастроек + + ВыбранныеНастройкиОтчетов.КоличествоНастроек + + ВыбранныеПрочиеНастройкиСтруктура.КоличествоНастроек; Если ВыбранныеНастройкиОтчетов.КоличествоНастроек = 1 Тогда ПредставленияНастроек = ВыбранныеНастройкиОтчетов.ПредставленияНастроек; ИначеЕсли ВыбранныеНастройкиВнешнегоВида.КоличествоНастроек = 1 Тогда ПредставленияНастроек = ВыбранныеНастройкиВнешнегоВида.ПредставленияНастроек; - ИначеЕсли ПрочиеНастройкиСтруктура.КоличествоНастроек = 1 Тогда - ПредставленияНастроек = ПрочиеНастройкиСтруктура.ПредставленияНастроек; + ИначеЕсли ВыбранныеПрочиеНастройкиСтруктура.КоличествоНастроек = 1 Тогда + ПредставленияНастроек = ВыбранныеПрочиеНастройкиСтруктура.ПредставленияНастроек; КонецЕсли; + Результат.Вставить("ВнешнийВид", ВыбранныеНастройкиВнешнегоВида.МассивНастроек); Результат.Вставить("НастройкиОтчетов", ВыбранныеНастройкиОтчетов.МассивНастроек); - Результат.Вставить("ВнешнийВид", ВыбранныеНастройкиВнешнегоВида.МассивНастроек); - Результат.Вставить("ПрочиеНастройки", ПрочиеНастройкиСтруктура.МассивНастроек); - Результат.Вставить("ПредставленияНастроек", ПредставленияНастроек); - Результат.Вставить("ПерсональныеНастройки", ПрочиеНастройкиСтруктура.МассивПерсональныхНастроек); - Результат.Вставить("КоличествоНастроек", КоличествоНастроек); - Результат.Вставить("ТаблицаВариантовОтчетов", ТаблицаПользовательскихВариантовОтчетов); - Результат.Вставить("ВыбранныеВариантыОтчетов", ВыбранныеНастройкиОтчетов.ВариантыОтчетов); - Результат.Вставить("ПрочиеПользовательскиеНастройки", - ПрочиеНастройкиСтруктура.ПрочиеПользовательскиеНастройки); + Результат.Вставить("ПрочиеНастройки", ВыбранныеПрочиеНастройкиСтруктура.МассивНастроек); - Оповестить("ВыборНастроек", Результат); - Закрыть(); + Результат.Вставить("ПредставленияНастроек", ПредставленияНастроек); + Результат.Вставить("КоличествоНастроек", КоличествоНастроек); + + Результат.Вставить("ТаблицаВариантовОтчетов", ТаблицаПользовательскихВариантовОтчетов); + Результат.Вставить("ВыбранныеВариантыОтчетов", ВыбранныеНастройкиОтчетов.ВариантыОтчетов); + + Результат.Вставить("ПерсональныеНастройки", ВыбранныеПрочиеНастройкиСтруктура.МассивПерсональныхНастроек); + Результат.Вставить("ПрочиеПользовательскиеНастройки", ВыбранныеПрочиеНастройкиСтруктура.ПрочиеПользовательскиеНастройки); + + Закрыть(Результат); КонецПроцедуры @@ -227,23 +241,83 @@ //////////////////////////////////////////////////////////////////////////////// // Процедуры и функции, отвечающие за вывод настроек пользователю. -&НаСервере -Процедура ЗаполнитьСпискиНастроек(ПоискНастроек) +&НаКлиенте +Процедура ОбновитьСписокНастроек() - Если ПоискНастроек Тогда - - ПомеченныеЭлементыДерева(); - + Элементы.БыстрыйПоиск.Доступность = Ложь; + Элементы.КоманднаяПанель.Доступность = Ложь; + Элементы.СтраницыДлительнаяОперация.ТекущаяСтраница = Элементы.СтраницаДлительнаяОперация; + Результат = ОбновлениеСпискаНастроек(); + + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ОповещениеОЗавершении = Новый ОписаниеОповещения("ОбновитьСписокНастроекЗавершение", ЭтотОбъект); + + ДлительныеОперацииКлиент.ОжидатьЗавершение(Результат, ОповещениеОЗавершении, ПараметрыОжидания); + +КонецПроцедуры + +&НаСервере +Функция ОбновлениеСпискаНастроек() + + Если РезультатВыполнения <> Неопределено + И РезультатВыполнения.ИдентификаторЗадания <> Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000") Тогда + ДлительныеОперации.ОтменитьВыполнениеЗадания(РезультатВыполнения.ИдентификаторЗадания); КонецЕсли; - Обработки.НастройкиПользователей.ЗаполнитьСпискиНастроек(ЭтотОбъект); - Если ПоискНастроек Тогда - + ПомеченныеЭлементыДерева(); + КонецЕсли; + + ПараметрыДлительнойОперации = ПараметрыДлительнойОперации(); + + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.ОжидатьЗавершение = 0; // запускать сразу + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Обновление настроек пользователей'"); + + РезультатВыполнения = ДлительныеОперации.ВыполнитьВФоне("ПользователиСлужебный.ЗаполнитьСпискиНастроек", + ПараметрыДлительнойОперации, ПараметрыВыполнения); + + Возврат РезультатВыполнения; + +КонецФункции + +&НаКлиенте +Процедура ОбновитьСписокНастроекЗавершение(Результат, ДополнительныеПараметры) Экспорт + + Если Результат = Неопределено Тогда + Возврат; + КонецЕсли; + + Если Результат.Статус = "Выполнено" Тогда + ЗаполнитьНастройки(); + РазвернутьДеревоЗначений(); + Элементы.СтраницыДлительнаяОперация.ТекущаяСтраница = Элементы.СтраницаНастройки; + Элементы.БыстрыйПоиск.Доступность = Истина; + Элементы.КоманднаяПанель.Доступность = Истина; + ИначеЕсли Результат.Статус = "Ошибка" Тогда + Элементы.СтраницыДлительнаяОперация.ТекущаяСтраница = Элементы.СтраницаНастройки; + ВызватьИсключение Результат.КраткоеПредставлениеОшибки; + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура ЗаполнитьНастройки() + Результат = ПолучитьИзВременногоХранилища(РезультатВыполнения.АдресРезультата); + + ЗначениеВРеквизитФормы(Результат.НастройкиОтчетовДерево, "НастройкиОтчетов"); + ЗначениеВРеквизитФормы(Результат.ПользовательскиеВариантыОтчетов, "ТаблицаПользовательскихВариантовОтчетов"); + ЗначениеВРеквизитФормы(Результат.НастройкиВнешнегоВида, "ВнешнийВид"); + ЗначениеВРеквизитФормы(Результат.ПрочиеНастройкиДерево, "ПрочиеНастройки"); + + Если ПоискНастроек + Или Не НачальныеНастройкиЗагружены + И ВсеВыбранныеНастройки <> Неопределено Тогда ЗагрузитьЗначенияПометок(НастройкиОтчетов, ВсеВыбранныеНастройки.ПомеченныеНастройкиОтчетов, "НастройкиОтчетов"); ЗагрузитьЗначенияПометок(ВнешнийВид, ВсеВыбранныеНастройки.ПомеченныеНастройкиВнешнегоВида, "ВнешнийВид"); ЗагрузитьЗначенияПометок(ПрочиеНастройки, ВсеВыбранныеНастройки.ПомеченныеПрочиеНастройки, "ПрочиеНастройки"); - + НачальныеНастройкиЗагружены = Истина; КонецЕсли; КонецПроцедуры @@ -520,6 +594,27 @@ КонецФункции +&НаСервере +Функция ПараметрыДлительнойОперации() + + ПараметрыДлительнойОперации = Новый Структура; + ПараметрыДлительнойОперации.Вставить("ИмяФормы"); + ПараметрыДлительнойОперации.Вставить("Поиск"); + ПараметрыДлительнойОперации.Вставить("ДействиеСНастройками"); + ПараметрыДлительнойОперации.Вставить("ПользовательИнформационнойБазы"); + ПараметрыДлительнойОперации.Вставить("ПользовательСсылка"); + + ЗаполнитьЗначенияСвойств(ПараметрыДлительнойОперации, ЭтотОбъект); + + ПараметрыДлительнойОперации.Вставить("НастройкиОтчетовДерево", РеквизитФормыВЗначение("НастройкиОтчетов")); + ПараметрыДлительнойОперации.Вставить("НастройкиВнешнегоВида", РеквизитФормыВЗначение("ВнешнийВид")); + ПараметрыДлительнойОперации.Вставить("ПрочиеНастройкиДерево", РеквизитФормыВЗначение("ПрочиеНастройки")); + ПараметрыДлительнойОперации.Вставить("ПользовательскиеВариантыОтчетов", РеквизитФормыВЗначение("ТаблицаПользовательскихВариантовОтчетов")); + + Возврат ПараметрыДлительнойОперации; + +КонецФункции + &НаСервере Функция ПомеченныеНастройки(ДеревоНастроек) @@ -552,6 +647,10 @@ ИсходныйСписокПомеченных = ВсеВыбранныеНастройки.ПомеченныеПрочиеНастройки; КонецЕсли; + Если ИсходныйСписокПомеченных = Неопределено Тогда + Возврат Новый СписокЗначений; + КонецЕсли; + Для Каждого Элемент Из ИсходныйСписокПомеченных Цикл НайденнаяНастройка = ПомеченныеНастройки.НайтиПоЗначению(Элемент.Значение); diff --git a/SSL/src/DataProcessors/НастройкиПользователей/Forms/ВыборПользователей/Form.form b/SSL/src/DataProcessors/НастройкиПользователей/Forms/ВыборПользователей/Form.form index 406e256be..c885eb11e 100644 --- a/SSL/src/DataProcessors/НастройкиПользователей/Forms/ВыборПользователей/Form.form +++ b/SSL/src/DataProcessors/НастройкиПользователей/Forms/ВыборПользователей/Form.form @@ -222,7 +222,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -1092,8 +1091,6 @@ <excludedCommands>Retry</excludedCommands> <excludedCommands>SaveValues</excludedCommands> <excludedCommands>Yes</excludedCommands> - <width>70</width> - <height>20</height> <windowOpeningMode>DontBlock</windowOpeningMode> <autoSaveDataInSettings>Use</autoSaveDataInSettings> <saveWindowSettings>true</saveWindowSettings> @@ -1672,6 +1669,17 @@ <stringQualifiers/> </valueType> </parameters> + <parameters> + <name>Пользователь</name> + <valueType> + <types>CatalogRef.ВнешниеПользователи</types> + <types>CatalogRef.Пользователи</types> + </valueType> + </parameters> + <parameters> + <name>ТипПользователя</name> + <valueType/> + </parameters> <commandInterface> <navigationPanel/> <commandBar/> diff --git a/SSL/src/DataProcessors/НастройкиПользователей/Forms/ВыборПользователей/Module.bsl b/SSL/src/DataProcessors/НастройкиПользователей/Forms/ВыборПользователей/Module.bsl index a491bde29..d2c765148 100644 --- a/SSL/src/DataProcessors/НастройкиПользователей/Forms/ВыборПользователей/Module.bsl +++ b/SSL/src/DataProcessors/НастройкиПользователей/Forms/ВыборПользователей/Module.bsl @@ -281,7 +281,7 @@ ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Больше; ОтборЭлемента.ПравоеЗначение = 0; - Элемент.Оформление.УстановитьЗначениеПараметра("Шрифт", Новый Шрифт(WindowsШрифты.ШрифтДиалоговИМеню, , , Истина, Ложь, Ложь, Ложь, )); + Элемент.Оформление.УстановитьЗначениеПараметра("Шрифт", Новый Шрифт("Arial", 10, Истина)); Элемент.Оформление.УстановитьЗначениеПараметра("Текст", Новый ПолеКомпоновкиДанных("ГруппыПользователей.НаименованиеГруппыИПомеченоПользователей")); КонецПроцедуры diff --git a/SSL/src/DataProcessors/НастройкиПользователей/Forms/КопированиеНастроекПользователей/Form.form b/SSL/src/DataProcessors/НастройкиПользователей/Forms/КопированиеНастроекПользователей/Form.form index 32d99c003..c186db182 100644 --- a/SSL/src/DataProcessors/НастройкиПользователей/Forms/КопированиеНастроекПользователей/Form.form +++ b/SSL/src/DataProcessors/НастройкиПользователей/Forms/КопированиеНастроекПользователей/Form.form @@ -64,72 +64,72 @@ <items xsi:type="form:FormGroup"> <name>ГруппаКомуКопировать</name> <id>28</id> - <items xsi:type="form:FormField"> - <name>ПереключательКомуКопироватьНастройки</name> - <id>3</id> - <title> - <key>ru</key> - <value>Кому скопировать</value> - - true - true - - true - - - ПереключательКомуКопироватьНастройки - - None - - OnChange - ПереключательКомуКопироватьНастройкиПриИзменении - - - ПереключательКомуКопироватьНастройкиExtendedTooltip - 74 - Label - true - true - - Left - - - - ПереключательКомуКопироватьНастройкиКонтекстноеМеню - 4 - true - - RadioButtonField - Enter - true - Left - true - - 1 - - - ru - Выбранным пользователям: - - - ВыбраннымПользователям - - - - - ru - Всем пользователям - - - ВсемПользователям - - - Vertical - - ГруппаВыбратьПользователей 29 + + ПереключательКомуКопироватьНастройки + 3 + + <key>ru</key> + <value>Кому скопировать</value> + + true + true + + true + + + ПереключательКомуКопироватьНастройки + + None + + OnChange + ПереключательКомуКопироватьНастройкиПриИзменении + + + ПереключательКомуКопироватьНастройкиExtendedTooltip + 74 + Label + true + true + + Left + + + + ПереключательКомуКопироватьНастройкиКонтекстноеМеню + 4 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Выбранным пользователям: + + + ВыбраннымПользователям + + + + + ru + Всем пользователям + + + ВсемПользователям + + + Vertical + + ВыбратьПользователей 58 @@ -142,10 +142,6 @@ true - - ru - Выберите пользователей, которым необходимо скопировать настройки - ВыбратьПользователейExtendedTooltip 76 @@ -162,9 +158,9 @@ true Label - 27 - true - true + 28 + 1 + false Click @@ -195,7 +191,6 @@ UsualGroup - Vertical Auto true true @@ -236,79 +231,28 @@ ГруппаКопируемыеНастройки 13 - - ПереключательКопируемыеНастройки - 62 - true - true - - true - - - ПереключательКопируемыеНастройки - - None - - OnChange - ПереключательКопируемыеНастройкиПриИзменении - - - ПереключательКопируемыеНастройкиExtendedTooltip - 78 - Label - true - true - - Left - - - - ПереключательКопируемыеНастройкиКонтекстноеМеню - 63 - true - - RadioButtonField - Enter - true - Left - true - - 1 - - - ru - Все настройки - - - СкопироватьВсе - - - - - ru - Отдельные настройки: - - - СкопироватьОтдельные - - - Vertical - - ГруппаВыбрать 64 - - Отступ1 - 65 + + ПереключательКопируемыеНастройки + 62 true true true + + ПереключательКопируемыеНастройки + + None + + OnChange + ПереключательКопируемыеНастройкиПриИзменении + - Отступ1ExtendedTooltip - 80 + ПереключательКопируемыеНастройкиExtendedTooltip + 78 Label true true @@ -317,15 +261,36 @@ - Отступ1КонтекстноеМеню - 66 + ПереключательКопируемыеНастройкиКонтекстноеМеню + 63 true - Label - true - true - - Left + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Все настройки + + + СкопироватьВсе + + + + + ru + Отдельные настройки: + + + СкопироватьОтдельные + + + Vertical @@ -340,10 +305,6 @@ true - - ru - Выберите настройки, которые необходимо скопировать - ВыбратьНастройкиExtendedTooltip 81 @@ -360,12 +321,10 @@ true Label - 28 - true - 1 - true - false + 32 + 1 false + Bottom Click @@ -373,8 +332,6 @@ true Left - Top - 1 true @@ -386,6 +343,7 @@ ru Группа выбрать + true ГруппаВыбратьExtendedTooltip 79 @@ -398,7 +356,6 @@ UsualGroup - Vertical Auto true true @@ -436,36 +393,6 @@ Auto - - Отступ - 67 - true - true - - true - - - ОтступExtendedTooltip - 82 - Label - true - true - - Left - - - - ОтступКонтекстноеМеню - 68 - true - - Label - true - true - - Left - - Bottom true @@ -569,7 +496,6 @@ Retry SaveValues Yes - 49 LockOwner true true @@ -848,6 +774,19 @@ true + + ИБФайловая + 17 + + Boolean + + + true + + + true + + Скопировать diff --git a/SSL/src/DataProcessors/НастройкиПользователей/Forms/КопированиеНастроекПользователей/Module.bsl b/SSL/src/DataProcessors/НастройкиПользователей/Forms/КопированиеНастроекПользователей/Module.bsl index 5efa9d4b4..02eb62d31 100644 --- a/SSL/src/DataProcessors/НастройкиПользователей/Forms/КопированиеНастроекПользователей/Module.bsl +++ b/SSL/src/DataProcessors/НастройкиПользователей/Forms/КопированиеНастроекПользователей/Module.bsl @@ -30,6 +30,8 @@ Элементы.ГруппаКопируемыеНастройки.Доступность = Ложь; КонецЕсли; + ИБФайловая = ОбщегоНазначения.ИнформационнаяБазаФайловая(); + ОчиститьИсториюВыбораНастроек = Истина; КонецПроцедуры @@ -51,40 +53,9 @@ КонецЕсли; Элементы.ВыбратьПользователей.Подсказка = ""; - ИначеЕсли ВРег(ИмяСобытия) = ВРег("ВыборНастроек") Тогда - - ВыбранныеНастройки = Новый Структура; - ВыбранныеНастройки.Вставить("НастройкиОтчетов", Параметр.НастройкиОтчетов); - ВыбранныеНастройки.Вставить("ВнешнийВид", Параметр.ВнешнийВид); - ВыбранныеНастройки.Вставить("ПрочиеНастройки", Параметр.ПрочиеНастройки); - ВыбранныеНастройки.Вставить("ПерсональныеНастройки", Параметр.ПерсональныеНастройки); - ВыбранныеНастройки.Вставить("ТаблицаВариантовОтчетов", Параметр.ТаблицаВариантовОтчетов); - ВыбранныеНастройки.Вставить("ВыбранныеВариантыОтчетов", Параметр.ВыбранныеВариантыОтчетов); - ВыбранныеНастройки.Вставить("ПрочиеПользовательскиеНастройки", - Параметр.ПрочиеПользовательскиеНастройки); - - КоличествоНастроек = Параметр.КоличествоНастроек; - - Если КоличествоНастроек = 0 Тогда - ТекстЗаголовка = НСтр("ru='Выбрать'"); - ИначеЕсли КоличествоНастроек = 1 Тогда - ПредставлениеНастройки = Параметр.ПредставленияНастроек[0]; - ТекстЗаголовка = ПредставлениеНастройки; - Иначе - ТекстЗаголовка = Формат(КоличествоНастроек, "ЧДЦ=0") + " " - + ПользователиСлужебныйКлиентСервер.ПредметЦелогоЧисла(КоличествоНастроек, - "Л = ru_RU", НСтр("ru = 'настройка,настройки,настроек,,,,,,0'")); - КонецЕсли; - - Элементы.ВыбратьНастройки.Заголовок = ТекстЗаголовка; - Элементы.ВыбратьНастройки.Подсказка = ""; - ИначеЕсли ВРег(ИмяСобытия) = ВРег("СкопироватьНастройкиАктивнымПользователям") Тогда СкопироватьНастройки(Параметр.Действие); - - ИначеЕсли ВРег(ИмяСобытия) = ВРег("ВыборНастроек_ДанныеСохранены") Тогда - ОчиститьИсториюВыбораНастроек = Ложь; КонецЕсли; КонецПроцедуры @@ -197,7 +168,8 @@ ПараметрыФормы = Новый Структура("Пользователь, ДействиеСНастройками, ОчиститьИсториюВыбораНастроек", ПользовательСсылка, "Копирование", ОчиститьИсториюВыбораНастроек); - ОткрытьФорму("Обработка.НастройкиПользователей.Форма.ВыборНастроек", ПараметрыФормы); + ОткрытьФорму("Обработка.НастройкиПользователей.Форма.ВыборНастроек", ПараметрыФормы, ЭтотОбъект,,,, + Новый ОписаниеОповещения("ВыбратьНастройкиПослеВыбора", ЭтотОбъект)); КонецПроцедуры @@ -271,13 +243,17 @@ // При копировании настроек внешнего вида или всех настроек другим пользователям // проверяем работают они с программой или нет. Если работают - выводим сообщение об этом. ПроверитьАктивныхПользователей(); - Если РезультатПроверки = "ЕстьАктивныеПользователиПолучатели" Тогда + Если РезультатПроверки = "ЕстьАктивныеПользователиПолучатели" + Или Не ИБФайловая Тогда - Если ПереключательКопируемыеНастройки = "СкопироватьВсе" + Если ПереключательКопируемыеНастройки = "СкопироватьВсе" Или (ПереключательКопируемыеНастройки = "СкопироватьОтдельные" И ВыбранныеНастройки.ВнешнийВид.Количество() <> 0) Тогда - ПараметрыФормы = Новый Структура("Действие", Команда.Имя); + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("Действие", Команда.Имя); + ПараметрыФормы.Вставить("ЕстьАктивныеПользователиПолучатели", РезультатПроверки = "ЕстьАктивныеПользователиПолучатели"); + ПараметрыФормы.Вставить("ИБФайловая", ИБФайловая); ОткрытьФорму("Обработка.НастройкиПользователей.Форма.ПредупреждениеОКопированииНастроек", ПараметрыФормы); Возврат; @@ -293,6 +269,42 @@ #Область СлужебныеПроцедурыИФункции +&НаКлиенте +Процедура ВыбратьНастройкиПослеВыбора(Параметр, Контекст) Экспорт + + Если ТипЗнч(Параметр) <> Тип("Структура") Тогда + Возврат; + КонецЕсли; + + ВыбранныеНастройки = Новый Структура; + ВыбранныеНастройки.Вставить("ВнешнийВид", Параметр.ВнешнийВид); + ВыбранныеНастройки.Вставить("НастройкиОтчетов", Параметр.НастройкиОтчетов); + ВыбранныеНастройки.Вставить("ПрочиеНастройки", Параметр.ПрочиеНастройки); + + ВыбранныеНастройки.Вставить("ТаблицаВариантовОтчетов", Параметр.ТаблицаВариантовОтчетов); + ВыбранныеНастройки.Вставить("ВыбранныеВариантыОтчетов", Параметр.ВыбранныеВариантыОтчетов); + + ВыбранныеНастройки.Вставить("ПерсональныеНастройки", Параметр.ПерсональныеНастройки); + ВыбранныеНастройки.Вставить("ПрочиеПользовательскиеНастройки", Параметр.ПрочиеПользовательскиеНастройки); + + КоличествоНастроек = Параметр.КоличествоНастроек; + + Если КоличествоНастроек = 0 Тогда + ТекстЗаголовка = НСтр("ru='Выбрать'"); + ИначеЕсли КоличествоНастроек = 1 Тогда + ПредставлениеНастройки = Параметр.ПредставленияНастроек[0]; + ТекстЗаголовка = ПредставлениеНастройки; + Иначе + ТекстЗаголовка = Формат(КоличествоНастроек, "ЧДЦ=0") + " " + + ПользователиСлужебныйКлиентСервер.ПредметЦелогоЧисла(КоличествоНастроек, + "Л = ru_RU", НСтр("ru = 'настройка,настройки,настроек,,,,,,0'")); + КонецЕсли; + + Элементы.ВыбратьНастройки.Заголовок = ТекстЗаголовка; + Элементы.ВыбратьНастройки.Подсказка = ""; + +КонецПроцедуры + &НаКлиенте Процедура СкопироватьНастройки(ИмяКоманды) @@ -351,7 +363,6 @@ // Если копирование настроек от другого пользователя, оповещаем об этом форму НастройкиПользователей. Если РежимОткрытияФормы = "СкопироватьОт" Тогда - ОбщегоНазначенияКлиент.ОбновитьИнтерфейсПрограммы(); Оповестить("СкопированыНастройки", Истина); КонецЕсли; diff --git a/SSL/src/DataProcessors/НастройкиПользователей/Forms/НастройкиПользователей/Form.form b/SSL/src/DataProcessors/НастройкиПользователей/Forms/НастройкиПользователей/Form.form index 0a7458cfd..b58680573 100644 --- a/SSL/src/DataProcessors/НастройкиПользователей/Forms/НастройкиПользователей/Form.form +++ b/SSL/src/DataProcessors/НастройкиПользователей/Forms/НастройкиПользователей/Form.form @@ -660,238 +660,22 @@ </extInfo> </items> <items xsi:type="form:FormGroup"> - <name>ВидыНастроек</name> - <id>13</id> + <name>СтраницыДлительнаяОперация</name> + <id>211</id> <items xsi:type="form:FormGroup"> - <name>ВнешнийВидСтраница</name> - <id>15</id> - <items xsi:type="form:Table"> - <name>ВнешнийВид</name> - <id>29</id> + <name>СтраницаДлительнаяОперация</name> + <id>213</id> + <items xsi:type="form:Decoration"> + <name>КартинкаДлительнаяОперация</name> + <id>217</id> <visible>true</visible> <enabled>true</enabled> <userVisible> <common>true</common> </userVisible> - <dataPath xsi:type="form:DataPath"> - <segments>ВнешнийВид</segments> - </dataPath> - <titleLocation>None</titleLocation> - <excludedCommands>Add</excludedCommands> - <excludedCommands>Change</excludedCommands> - <excludedCommands>EndEdit</excludedCommands> - <excludedCommands>HierarchicalList</excludedCommands> - <excludedCommands>List</excludedCommands> - <excludedCommands>MoveDown</excludedCommands> - <excludedCommands>MoveUp</excludedCommands> - <excludedCommands>SortListAsc</excludedCommands> - <excludedCommands>SortListDesc</excludedCommands> - <excludedCommands>Tree</excludedCommands> - <items xsi:type="form:FormGroup"> - <name>ВнешнийВидКартинкаНастройкаПометка</name> - <id>38</id> - <items xsi:type="form:FormField"> - <name>ВнешнийВидКартинка</name> - <id>36</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <dataPath xsi:type="form:DataPath"> - <segments>ВнешнийВид.Картинка</segments> - </dataPath> - <titleLocation>None</titleLocation> - <extendedTooltip> - <name>ВнешнийВидКартинкаExtendedTooltip</name> - <id>152</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>ВнешнийВидКартинкаКонтекстноеМеню</name> - <id>37</id> - <autoFill>true</autoFill> - </contextMenu> - <type>PictureField</type> - <readOnly>true</readOnly> - <editMode>Auto</editMode> - <showInHeader>true</showInHeader> - <headerHorizontalAlign>Left</headerHorizontalAlign> - <showInFooter>true</showInFooter> - <extInfo xsi:type="form:ImageFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> - <verticalStretch>true</verticalStretch> - <border xsi:type="core:BorderDef"> - <style>Single</style> - <width>1</width> - </border> - </extInfo> - </items> - <items xsi:type="form:FormField"> - <name>ВнешнийВидНастройки</name> - <id>32</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <dataPath xsi:type="form:DataPath"> - <segments>ВнешнийВид.Настройка</segments> - </dataPath> - <titleLocation>None</titleLocation> - <extendedTooltip> - <name>ВнешнийВидНастройкиExtendedTooltip</name> - <id>153</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>ВнешнийВидНастройкиКонтекстноеМеню</name> - <id>33</id> - <autoFill>true</autoFill> - </contextMenu> - <type>LabelField</type> - <editMode>Auto</editMode> - <showInHeader>true</showInHeader> - <headerHorizontalAlign>Left</headerHorizontalAlign> - <showInFooter>true</showInFooter> - <extInfo xsi:type="form:LabelFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - </extInfo> - </items> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <title> - <key>ru</key> - <value>Картинка и настройка</value> - - - ru - Внешний вид картинка настройка пометка - - - ВнешнийВидКартинкаНастройкаПометкаExtendedTooltip - 151 - Label - true - true - - Left - - - ColumnGroup - - InCell - auto - true - - - - ВнешнийВидКоманднаяПанель - 31 - Left - - - Selection - ДеревоНастроекВыбор - - - BeforeAddRow - НастройкиОтчетовИВнешнийВидПередНачаломДобавления - - - BeforeDeleteRow - НастройкиПередУдалением - - - ВнешнийВидСтрокаПоиска - 184 - - ВнешнийВидСтрокаПоискаРасширеннаяПодсказка - 186 - Label - true - true - - Left - - - - ВнешнийВидСтрокаПоискаКонтекстноеМеню - 185 - true - - ВнешнийВид - - true - - - - ВнешнийВидСостояниеПросмотра - 187 - - ВнешнийВидСостояниеПросмотраРасширеннаяПодсказка - 189 - Label - true - true - - Left - - - - ВнешнийВидСостояниеПросмотраКонтекстноеМеню - 188 - true - - ViewStatusAddition - ВнешнийВид - - true - - - - ВнешнийВидУправлениеПоиском - 190 - - ВнешнийВидУправлениеПоискомРасширеннаяПодсказка - 192 - Label - true - true - - Left - - - - ВнешнийВидУправлениеПоискомКонтекстноеМеню - 191 - true - - SearchControlAddition - ВнешнийВид - - true - - - ВнешнийВидExtendedTooltip - 150 + КартинкаДлительнаяОперацияРасширеннаяПодсказка + 219 Label true true @@ -900,238 +684,61 @@ - ВнешнийВидКонтекстноеМеню - 30 - - ВнешнийВидКонтекстноеМенюОткрыть - 76 - true - true - - true - - - ВнешнийВидКонтекстноеМенюОткрытьExtendedTooltip - 143 - Label - true - true - - Left - - - Form.Command.Открыть - Normal - Auto - true - true - UserCmds - Auto - - - ВнешнийВидКонтекстноеМенюСкопировать - 106 - - <key>ru</key> - <value>Скопировать другим...</value> - - true - true - - true - - - ВнешнийВидКонтекстноеМенюСкопироватьExtendedTooltip - 144 - Label - true - true - - Left - - - Form.Item.ВнешнийВид.StandardCommand.Copy - Normal - Auto - true - true - UserCmds - Auto - - - ВнешнийВидКонтекстноеМенюУдалить - 55 - - <key>ru</key> - <value>Очистить</value> - - true - true - - true - - - ВнешнийВидКонтекстноеМенюУдалитьExtendedTooltip - 145 - Label - true - true - - Left - - - Form.Item.ВнешнийВид.StandardCommand.Delete - Normal - Auto - true - true - UserCmds - Auto - - - ВнешнийВидКонтекстноеМенюПрочее - 114 - - ВнешнийВидКонтекстноеМенюКопироватьВБуферОбмена - 56 - true - true - - true - - - ВнешнийВидКонтекстноеМенюКопироватьВБуферОбменаExtendedTooltip - 147 - Label - true - true - - Left - - - Form.Item.ВнешнийВид.StandardCommand.CopyToClipboard - Normal - Auto - true - true - UserCmds - Auto - - - ВнешнийВидКонтекстноеМенюВыделитьВсе - 57 - true - true - - true - - - ВнешнийВидКонтекстноеМенюВыделитьВсеExtendedTooltip - 148 - Label - true - true - - Left - - - Form.Item.ВнешнийВид.StandardCommand.SelectAll - Normal - Auto - true - true - UserCmds - Auto - - - ВнешнийВидКонтекстноеМенюВывестиСписок - 115 - true - true - - true - - - ВнешнийВидКонтекстноеМенюВывестиСписокExtendedTooltip - 149 - Label - true - true - - Left - - - Form.Item.ВнешнийВид.StandardCommand.OutputList - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - ВнешнийВидКонтекстноеМенюПрочееExtendedTooltip - 146 - Label - true - true - - Left - - - - + КартинкаДлительнаяОперацияКонтекстноеМеню + 218 true - Tree - true true true - true - MultiRow - Row - 1 - 1 - AutoUse - AutoUse - true - true - false - false - false - true - Auto - ExpandAllLevels - true - true - true - true - None - None - None - true + + + CommonPicture.ДлительнаяОперация48 + + + + + ПояснениеДлительнаяОперация + 220 + + <key>ru</key> + <value>Формирование списка настроек пользователя...</value> + + true + true + + true + + + ПояснениеДлительнаяОперацияРасширеннаяПодсказка + 222 + Label + true + true + + Left + + + + ПояснениеДлительнаяОперацияКонтекстноеМеню + 221 + true + + Label + true + true + Center + + Left + true true true - - <key>ru</key> - <value>Внешний вид</value> - - - ru - Внешний вид страница - - ВнешнийВидСтраницаExtendedTooltip - 142 + СтраницаДлительнаяОперацияРасширеннаяПодсказка + 214 Label true true @@ -1141,54 +748,245 @@ Page - Vertical - auto false - НастройкиОтчетовСтраница - 14 - - НастройкиОтчетовДерево - 19 - true - true - - true - - - НастройкиОтчетов - - None - Add - Change - EndEdit - HierarchicalList - List - MoveDown - MoveUp - SortListAsc - SortListDesc - Tree + СтраницаНастройки + 215 + + ВидыНастроек + 13 - НастройкиОтчетовКартинкаНастройкаПометка - 28 - - Картинка - 26 + ВнешнийВидСтраница + 15 + + ВнешнийВид + 29 true true true - НастройкиОтчетов.Картинка + ВнешнийВид None + Add + Change + EndEdit + HierarchicalList + List + MoveDown + MoveUp + SortListAsc + SortListDesc + Tree + + ВнешнийВидКартинкаНастройкаПометка + 38 + + ВнешнийВидКартинка + 36 + true + true + + true + + + ВнешнийВид.Картинка + + None + + ВнешнийВидКартинкаExtendedTooltip + 152 + Label + true + true + + Left + + + + ВнешнийВидКартинкаКонтекстноеМеню + 37 + true + + PictureField + true + Auto + true + Left + true + + true + true + true + true + + + 1 + + + + + ВнешнийВидНастройки + 32 + true + true + + true + + + ВнешнийВид.Настройка + + None + + ВнешнийВидНастройкиExtendedTooltip + 153 + Label + true + true + + Left + + + + ВнешнийВидНастройкиКонтекстноеМеню + 33 + true + + LabelField + Auto + true + Left + true + + true + true + + + true + true + + true + + + <key>ru</key> + <value>Картинка и настройка</value> + + + ru + Внешний вид картинка настройка пометка + + + ВнешнийВидКартинкаНастройкаПометкаExtendedTooltip + 151 + Label + true + true + + Left + + + ColumnGroup + + InCell + auto + true + + + + ВнешнийВидКоманднаяПанель + 31 + Left + + + Selection + ДеревоНастроекВыбор + + + BeforeAddRow + НастройкиОтчетовИВнешнийВидПередНачаломДобавления + + + BeforeDeleteRow + НастройкиПередУдалением + + + ВнешнийВидСтрокаПоиска + 184 + + ВнешнийВидСтрокаПоискаРасширеннаяПодсказка + 186 + Label + true + true + + Left + + + + ВнешнийВидСтрокаПоискаКонтекстноеМеню + 185 + true + + ВнешнийВид + + true + + + + ВнешнийВидСостояниеПросмотра + 187 + + ВнешнийВидСостояниеПросмотраРасширеннаяПодсказка + 189 + Label + true + true + + Left + + + + ВнешнийВидСостояниеПросмотраКонтекстноеМеню + 188 + true + + ViewStatusAddition + ВнешнийВид + + true + + + + ВнешнийВидУправлениеПоиском + 190 + + ВнешнийВидУправлениеПоискомРасширеннаяПодсказка + 192 + Label + true + true + + Left + + + + ВнешнийВидУправлениеПоискомКонтекстноеМеню + 191 + true + + SearchControlAddition + ВнешнийВид + + true + + - КартинкаExtendedTooltip - 164 + ВнешнийВидExtendedTooltip + 150 Label true true @@ -1197,62 +995,221 @@ - КартинкаКонтекстноеМеню - 27 + ВнешнийВидКонтекстноеМеню + 30 + + ВнешнийВидКонтекстноеМенюОткрыть + 76 + true + true + + true + + + ВнешнийВидКонтекстноеМенюОткрытьExtendedTooltip + 143 + Label + true + true + + Left + + + Form.Command.Открыть + Normal + Auto + true + true + UserCmds + Auto + + + ВнешнийВидКонтекстноеМенюСкопировать + 106 + + <key>ru</key> + <value>Скопировать другим...</value> + + true + true + + true + + + ВнешнийВидКонтекстноеМенюСкопироватьExtendedTooltip + 144 + Label + true + true + + Left + + + Form.Item.ВнешнийВид.StandardCommand.Copy + Normal + Auto + true + true + UserCmds + Auto + + + ВнешнийВидКонтекстноеМенюУдалить + 55 + + <key>ru</key> + <value>Очистить</value> + + true + true + + true + + + ВнешнийВидКонтекстноеМенюУдалитьExtendedTooltip + 145 + Label + true + true + + Left + + + Form.Item.ВнешнийВид.StandardCommand.Delete + Normal + Auto + true + true + UserCmds + Auto + + + ВнешнийВидКонтекстноеМенюПрочее + 114 + + ВнешнийВидКонтекстноеМенюКопироватьВБуферОбмена + 56 + true + true + + true + + + ВнешнийВидКонтекстноеМенюКопироватьВБуферОбменаExtendedTooltip + 147 + Label + true + true + + Left + + + Form.Item.ВнешнийВид.StandardCommand.CopyToClipboard + Normal + Auto + true + true + UserCmds + Auto + + + ВнешнийВидКонтекстноеМенюВыделитьВсе + 57 + true + true + + true + + + ВнешнийВидКонтекстноеМенюВыделитьВсеExtendedTooltip + 148 + Label + true + true + + Left + + + Form.Item.ВнешнийВид.StandardCommand.SelectAll + Normal + Auto + true + true + UserCmds + Auto + + + ВнешнийВидКонтекстноеМенюВывестиСписок + 115 + true + true + + true + + + ВнешнийВидКонтекстноеМенюВывестиСписокExtendedTooltip + 149 + Label + true + true + + Left + + + Form.Item.ВнешнийВид.StandardCommand.OutputList + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + ВнешнийВидКонтекстноеМенюПрочееExtendedTooltip + 146 + Label + true + true + + Left + + + + true - PictureField - true - true - Left - true - - true - true - true - true - - - 1 - - - - - Настройки - 22 - true - true - - true - - - НастройкиОтчетов.Настройка - - None - - НастройкиExtendedTooltip - 165 - Label - true - true - - Left - - - - НастройкиКонтекстноеМеню - 23 - true - - LabelField - Auto - true - Left - true - - true - true - + Tree + true + true + true + true + MultiRow + Row + 1 + 1 + AutoUse + AutoUse + true + true + false + false + false + true + Auto + ExpandAllLevels + true + true + true + true + None + None + None + true true true @@ -1261,15 +1218,15 @@ <key>ru</key> - <value>Картинка и настройка</value> + <value>Внешний вид</value> ru - Настройки отчетов картинка настройка пометка + Внешний вид страница - НастройкиОтчетовКартинкаНастройкаПометкаExtendedTooltip - 163 + ВнешнийВидСтраницаExtendedTooltip + 142 Label true true @@ -1277,442 +1234,242 @@ Left - ColumnGroup - - InCell + Page + + Vertical auto - true + false - - НастройкиОтчетовДеревоКоманднаяПанель - 21 - Left - - - Selection - ДеревоНастроекВыбор - - - BeforeAddRow - НастройкиОтчетовИВнешнийВидПередНачаломДобавления - - - BeforeDeleteRow - НастройкиПередУдалением - - - НастройкиОтчетовДеревоСтрокаПоиска - 193 - - НастройкиОтчетовДеревоСтрокаПоискаРасширеннаяПодсказка - 195 - Label - true - true - - Left - - - - НастройкиОтчетовДеревоСтрокаПоискаКонтекстноеМеню - 194 - true - - НастройкиОтчетовДерево - - true - - - - НастройкиОтчетовДеревоСостояниеПросмотра - 196 - - НастройкиОтчетовДеревоСостояниеПросмотраРасширеннаяПодсказка - 198 - Label - true - true - - Left - - - - НастройкиОтчетовДеревоСостояниеПросмотраКонтекстноеМеню - 197 - true - - ViewStatusAddition - НастройкиОтчетовДерево - - true - - - - НастройкиОтчетовДеревоУправлениеПоиском - 199 - - НастройкиОтчетовДеревоУправлениеПоискомРасширеннаяПодсказка - 201 - Label - true - true - - Left - - - - НастройкиОтчетовДеревоУправлениеПоискомКонтекстноеМеню - 200 - true - - SearchControlAddition - НастройкиОтчетовДерево - - true - - - - НастройкиОтчетовДеревоExtendedTooltip - 162 - Label - true - true - - Left - - - - НастройкиОтчетовДеревоКонтекстноеМеню - 20 - - НастройкиОтчетовДеревоКонтекстноеМенюОткрыть - 65 - true - true - - true - - - НастройкиОтчетовДеревоКонтекстноеМенюОткрытьExtendedTooltip - 155 - Label - true - true - - Left - - - Form.Command.Открыть - Normal - Auto - true - true - UserCmds - Auto - - - НастройкиОтчетовДеревоКонтекстноеМенюСкопировать - 105 - - <key>ru</key> - <value>Скопировать другим...</value> - - true - true - - true - - - НастройкиОтчетовДеревоКонтекстноеМенюСкопироватьExtendedTooltip - 156 - Label - true - true - - Left - - - Form.Item.НастройкиОтчетовДерево.StandardCommand.Copy - Normal - Auto - true - true - UserCmds - Auto - - - НастройкиОтчетовДеревоКонтекстноеМенюОчистить - 54 - - <key>ru</key> - <value>Очистить</value> - - true - true - - true - - - НастройкиОтчетовДеревоКонтекстноеМенюОчиститьExtendedTooltip - 157 - Label - true - true - - Left - - - Form.Item.НастройкиОтчетовДерево.StandardCommand.Delete - Normal - Auto - true - true - UserCmds - Auto - - - НастройкиОтчетовДеревоКонтекстноеМенюПрочее - 113 - - НастройкиОтчетовДеревоКонтекстноеМенюВыделитьВсе - 53 - true - true - - true - - - НастройкиОтчетовДеревоКонтекстноеМенюВыделитьВсеExtendedTooltip - 159 - Label - true - true - - Left - - - Form.Item.НастройкиОтчетовДерево.StandardCommand.SelectAll - Normal - Auto - true - true - UserCmds - Auto - - - НастройкиОтчетовДеревоКонтекстноеМенюКопироватьВБуферОбмена - 52 - true - true - - true - - - НастройкиОтчетовДеревоКонтекстноеМенюКопироватьВБуферОбменаExtendedTooltip - 160 - Label - true - true - - Left - - - Form.Item.НастройкиОтчетовДерево.StandardCommand.CopyToClipboard - Normal - Auto - true - true - UserCmds - Auto - - - НастройкиОтчетовДеревоКонтекстноеМенюВывестиСписок - 112 - true - true - - true - - - НастройкиОтчетовДеревоКонтекстноеМенюВывестиСписокExtendedTooltip - 161 - Label - true - true - - Left - - - Form.Item.НастройкиОтчетовДерево.StandardCommand.OutputList - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - НастройкиОтчетовДеревоКонтекстноеМенюПрочееExtendedTooltip - 158 - Label - true - true - - Left - - - - - true - - Tree - true - true - true - true - MultiRow - Row - 1 - 1 - AutoUse - AutoUse - true - true - false - false - true - Auto - ExpandAllLevels - true - true - true - true - None - None - None - true - - true - true - - true - - - <key>ru</key> - <value>Настройки отчетов</value> - - - ru - Настройки отчетов страница - - - НастройкиОтчетовСтраницаExtendedTooltip - 154 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - ПрочиеНастройкиСтраница - 77 - - ПрочиеНастройки - 78 - true - true - - true - - - ПрочиеНастройки - - None - Add - Change - EndEdit - HierarchicalList - List - MoveDown - MoveUp - SortListAsc - SortListDesc - Tree - ПрочиеНастройкиКартинкаНастройкаПометка - 81 - - ПрочиеНастройкиКартинка - 92 + НастройкиОтчетовСтраница + 14 + + НастройкиОтчетовДерево + 19 true true true - ПрочиеНастройки.Картинка - - - ПрочиеНастройкиКартинкаExtendedTooltip - 176 - Label - true - true - - Left - - - - ПрочиеНастройкиКартинкаКонтекстноеМеню - 93 - true - - PictureField - Auto - true - Left - true - - true - true - true - true - - - 1 - - - - - ПрочиеНастройкиНастройка - 90 - true - true - - true - - - ПрочиеНастройки.Настройка + НастройкиОтчетов None + Add + Change + EndEdit + HierarchicalList + List + MoveDown + MoveUp + SortListAsc + SortListDesc + Tree + + НастройкиОтчетовКартинкаНастройкаПометка + 28 + + Картинка + 26 + true + true + + true + + + НастройкиОтчетов.Картинка + + None + + КартинкаExtendedTooltip + 164 + Label + true + true + + Left + + + + КартинкаКонтекстноеМеню + 27 + true + + PictureField + true + true + Left + true + + true + true + true + true + + + 1 + + + + + Настройки + 22 + true + true + + true + + + НастройкиОтчетов.Настройка + + None + + НастройкиExtendedTooltip + 165 + Label + true + true + + Left + + + + НастройкиКонтекстноеМеню + 23 + true + + LabelField + Auto + true + Left + true + + true + true + + + true + true + + true + + + <key>ru</key> + <value>Картинка и настройка</value> + + + ru + Настройки отчетов картинка настройка пометка + + + НастройкиОтчетовКартинкаНастройкаПометкаExtendedTooltip + 163 + Label + true + true + + Left + + + ColumnGroup + + InCell + auto + true + + + + НастройкиОтчетовДеревоКоманднаяПанель + 21 + Left + + + Selection + ДеревоНастроекВыбор + + + BeforeAddRow + НастройкиОтчетовИВнешнийВидПередНачаломДобавления + + + BeforeDeleteRow + НастройкиПередУдалением + + + НастройкиОтчетовДеревоСтрокаПоиска + 193 + + НастройкиОтчетовДеревоСтрокаПоискаРасширеннаяПодсказка + 195 + Label + true + true + + Left + + + + НастройкиОтчетовДеревоСтрокаПоискаКонтекстноеМеню + 194 + true + + НастройкиОтчетовДерево + + true + + + + НастройкиОтчетовДеревоСостояниеПросмотра + 196 + + НастройкиОтчетовДеревоСостояниеПросмотраРасширеннаяПодсказка + 198 + Label + true + true + + Left + + + + НастройкиОтчетовДеревоСостояниеПросмотраКонтекстноеМеню + 197 + true + + ViewStatusAddition + НастройкиОтчетовДерево + + true + + + + НастройкиОтчетовДеревоУправлениеПоиском + 199 + + НастройкиОтчетовДеревоУправлениеПоискомРасширеннаяПодсказка + 201 + Label + true + true + + Left + + + + НастройкиОтчетовДеревоУправлениеПоискомКонтекстноеМеню + 200 + true + + SearchControlAddition + НастройкиОтчетовДерево + + true + + - ПрочиеНастройкиНастройкаExtendedTooltip - 177 + НастройкиОтчетовДеревоExtendedTooltip + 162 Label true true @@ -1721,19 +1478,220 @@ - ПрочиеНастройкиНастройкаКонтекстноеМеню - 91 + НастройкиОтчетовДеревоКонтекстноеМеню + 20 + + НастройкиОтчетовДеревоКонтекстноеМенюОткрыть + 65 + true + true + + true + + + НастройкиОтчетовДеревоКонтекстноеМенюОткрытьExtendedTooltip + 155 + Label + true + true + + Left + + + Form.Command.Открыть + Normal + Auto + true + true + UserCmds + Auto + + + НастройкиОтчетовДеревоКонтекстноеМенюСкопировать + 105 + + <key>ru</key> + <value>Скопировать другим...</value> + + true + true + + true + + + НастройкиОтчетовДеревоКонтекстноеМенюСкопироватьExtendedTooltip + 156 + Label + true + true + + Left + + + Form.Item.НастройкиОтчетовДерево.StandardCommand.Copy + Normal + Auto + true + true + UserCmds + Auto + + + НастройкиОтчетовДеревоКонтекстноеМенюОчистить + 54 + + <key>ru</key> + <value>Очистить</value> + + true + true + + true + + + НастройкиОтчетовДеревоКонтекстноеМенюОчиститьExtendedTooltip + 157 + Label + true + true + + Left + + + Form.Item.НастройкиОтчетовДерево.StandardCommand.Delete + Normal + Auto + true + true + UserCmds + Auto + + + НастройкиОтчетовДеревоКонтекстноеМенюПрочее + 113 + + НастройкиОтчетовДеревоКонтекстноеМенюВыделитьВсе + 53 + true + true + + true + + + НастройкиОтчетовДеревоКонтекстноеМенюВыделитьВсеExtendedTooltip + 159 + Label + true + true + + Left + + + Form.Item.НастройкиОтчетовДерево.StandardCommand.SelectAll + Normal + Auto + true + true + UserCmds + Auto + + + НастройкиОтчетовДеревоКонтекстноеМенюКопироватьВБуферОбмена + 52 + true + true + + true + + + НастройкиОтчетовДеревоКонтекстноеМенюКопироватьВБуферОбменаExtendedTooltip + 160 + Label + true + true + + Left + + + Form.Item.НастройкиОтчетовДерево.StandardCommand.CopyToClipboard + Normal + Auto + true + true + UserCmds + Auto + + + НастройкиОтчетовДеревоКонтекстноеМенюВывестиСписок + 112 + true + true + + true + + + НастройкиОтчетовДеревоКонтекстноеМенюВывестиСписокExtendedTooltip + 161 + Label + true + true + + Left + + + Form.Item.НастройкиОтчетовДерево.StandardCommand.OutputList + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + НастройкиОтчетовДеревоКонтекстноеМенюПрочееExtendedTooltip + 158 + Label + true + true + + Left + + + + true - LabelField - Auto - true - Left - true - - true - true - + Tree + true + true + true + true + MultiRow + Row + 1 + 1 + AutoUse + AutoUse + true + true + false + false + true + Auto + ExpandAllLevels + true + true + true + true + None + None + None + true true true @@ -1742,15 +1700,15 @@ <key>ru</key> - <value>Прочие настройки картинка настройка пометка</value> + <value>Настройки отчетов</value> ru - Прочие настройки картинка настройка пометка + Настройки отчетов страница - ПрочиеНастройкиКартинкаНастройкаПометкаExtendedTooltip - 175 + НастройкиОтчетовСтраницаExtendedTooltip + 154 Label true true @@ -1758,35 +1716,477 @@ Left - ColumnGroup - - InCell - true + Page + + Vertical + auto + false - - ПрочиеНастройкиКоманднаяПанель - 80 - Left - - - Selection - ДеревоНастроекВыбор - - - BeforeAddRow - НастройкиОтчетовИВнешнийВидПередНачаломДобавления - - - BeforeDeleteRow - НастройкиПередУдалением - - - ПрочиеНастройкиСтрокаПоиска - 202 + + ПрочиеНастройкиСтраница + 77 + + ПрочиеНастройки + 78 + true + true + + true + + + ПрочиеНастройки + + None + Add + Change + EndEdit + HierarchicalList + List + MoveDown + MoveUp + SortListAsc + SortListDesc + Tree + + ПрочиеНастройкиКартинкаНастройкаПометка + 81 + + ПрочиеНастройкиКартинка + 92 + true + true + + true + + + ПрочиеНастройки.Картинка + + + ПрочиеНастройкиКартинкаExtendedTooltip + 176 + Label + true + true + + Left + + + + ПрочиеНастройкиКартинкаКонтекстноеМеню + 93 + true + + PictureField + Auto + true + Left + true + + true + true + true + true + + + 1 + + + + + ПрочиеНастройкиНастройка + 90 + true + true + + true + + + ПрочиеНастройки.Настройка + + None + + ПрочиеНастройкиНастройкаExtendedTooltip + 177 + Label + true + true + + Left + + + + ПрочиеНастройкиНастройкаКонтекстноеМеню + 91 + true + + LabelField + Auto + true + Left + true + + true + true + + + true + true + + true + + + <key>ru</key> + <value>Прочие настройки картинка настройка пометка</value> + + + ru + Прочие настройки картинка настройка пометка + + + ПрочиеНастройкиКартинкаНастройкаПометкаExtendedTooltip + 175 + Label + true + true + + Left + + + ColumnGroup + + InCell + true + + + + ПрочиеНастройкиКоманднаяПанель + 80 + Left + + + Selection + ДеревоНастроекВыбор + + + BeforeAddRow + НастройкиОтчетовИВнешнийВидПередНачаломДобавления + + + BeforeDeleteRow + НастройкиПередУдалением + + + ПрочиеНастройкиСтрокаПоиска + 202 + + ПрочиеНастройкиСтрокаПоискаРасширеннаяПодсказка + 204 + Label + true + true + + Left + + + + ПрочиеНастройкиСтрокаПоискаКонтекстноеМеню + 203 + true + + ПрочиеНастройки + + true + + + + ПрочиеНастройкиСостояниеПросмотра + 205 + + ПрочиеНастройкиСостояниеПросмотраРасширеннаяПодсказка + 207 + Label + true + true + + Left + + + + ПрочиеНастройкиСостояниеПросмотраКонтекстноеМеню + 206 + true + + ViewStatusAddition + ПрочиеНастройки + + true + + + + ПрочиеНастройкиУправлениеПоиском + 208 + + ПрочиеНастройкиУправлениеПоискомРасширеннаяПодсказка + 210 + Label + true + true + + Left + + + + ПрочиеНастройкиУправлениеПоискомКонтекстноеМеню + 209 + true + + SearchControlAddition + ПрочиеНастройки + + true + + + + ПрочиеНастройкиExtendedTooltip + 174 + Label + true + true + + Left + + + + ПрочиеНастройкиКонтекстноеМеню + 79 + + ПрочиеНастройкиКонтекстноеМенюОткрыть + 109 + true + true + + true + + + ПрочиеНастройкиКонтекстноеМенюОткрытьExtendedTooltip + 167 + Label + true + true + + Left + + + Form.Command.Открыть + Normal + Auto + true + true + UserCmds + Auto + + + ПрочиеНастройкиКонтекстноеМенюСкопировать + 107 + + <key>ru</key> + <value>Скопировать другим...</value> + + true + true + + true + + + ПрочиеНастройкиКонтекстноеМенюСкопироватьExtendedTooltip + 168 + Label + true + true + + Left + + + Form.Item.ПрочиеНастройки.StandardCommand.Copy + Normal + Auto + true + true + UserCmds + Auto + + + ПрочиеНастройкиКонтекстноеМенюУдалить + 104 + + <key>ru</key> + <value>Очистить</value> + + true + true + + true + + + ПрочиеНастройкиКонтекстноеМенюУдалитьExtendedTooltip + 169 + Label + true + true + + Left + + + Form.Item.ПрочиеНастройки.StandardCommand.Delete + Normal + Auto + true + true + UserCmds + Auto + + + ПрочиеНастройкиКонтекстноеМенюПрочее + 116 + + ПрочиеНастройкиКонтекстноеМенюВыделитьВсе + 89 + true + true + + true + + + ПрочиеНастройкиКонтекстноеМенюВыделитьВсеExtendedTooltip + 171 + Label + true + true + + Left + + + Form.Item.ПрочиеНастройки.StandardCommand.SelectAll + Normal + Auto + true + true + UserCmds + Auto + + + ПрочиеНастройкиКонтекстноеМенюКопироватьВБуферОбмена + 88 + true + true + + true + + + ПрочиеНастройкиКонтекстноеМенюКопироватьВБуферОбменаExtendedTooltip + 172 + Label + true + true + + Left + + + Form.Item.ПрочиеНастройки.StandardCommand.CopyToClipboard + Normal + Auto + true + true + UserCmds + Auto + + + ПрочиеНастройкиКонтекстноеМенюВывестиСписок + 117 + true + true + + true + + + ПрочиеНастройкиКонтекстноеМенюВывестиСписокExtendedTooltip + 173 + Label + true + true + + Left + + + Form.Item.ПрочиеНастройки.StandardCommand.OutputList + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + ПрочиеНастройкиКонтекстноеМенюПрочееExtendedTooltip + 170 + Label + true + true + + Left + + + + + true + + true + true + true + true + MultiRow + 1 + 1 + AutoUse + true + true + false + false + false + true + Auto + ExpandAllLevels + true + true + true + true + None + None + None + true + + true + true + + true + + + <key>ru</key> + <value>Прочие настройки</value> + + + ru + Прочие настройки страница + - ПрочиеНастройкиСтрокаПоискаРасширеннаяПодсказка - 204 + ПрочиеНастройкиСтраницаExtendedTooltip + 166 Label true true @@ -1794,67 +2194,29 @@ Left - - ПрочиеНастройкиСтрокаПоискаКонтекстноеМеню - 203 - true - - ПрочиеНастройки - - true + Page + + Vertical + auto + false - - - ПрочиеНастройкиСостояниеПросмотра - 205 - - ПрочиеНастройкиСостояниеПросмотраРасширеннаяПодсказка - 207 - Label - true - true - - Left - - - - ПрочиеНастройкиСостояниеПросмотраКонтекстноеМеню - 206 - true - - ViewStatusAddition - ПрочиеНастройки - - true - - - - ПрочиеНастройкиУправлениеПоиском - 208 - - ПрочиеНастройкиУправлениеПоискомРасширеннаяПодсказка - 210 - Label - true - true - - Left - - - - ПрочиеНастройкиУправлениеПоискомКонтекстноеМеню - 209 - true - - SearchControlAddition - ПрочиеНастройки - - true - - + + true + true + + true + + + <key>ru</key> + <value>Виды настроек</value> + + + ru + Виды настроек + - ПрочиеНастройкиExtendedTooltip - 174 + ВидыНастроекExtendedTooltip + 141 Label true true @@ -1862,236 +2224,24 @@ Left - - ПрочиеНастройкиКонтекстноеМеню - 79 - - ПрочиеНастройкиКонтекстноеМенюОткрыть - 109 - true - true - - true - - - ПрочиеНастройкиКонтекстноеМенюОткрытьExtendedTooltip - 167 - Label - true - true - - Left - - - Form.Command.Открыть - Normal - Auto - true - true - UserCmds - Auto - - - ПрочиеНастройкиКонтекстноеМенюСкопировать - 107 - - <key>ru</key> - <value>Скопировать другим...</value> - - true - true - - true - - - ПрочиеНастройкиКонтекстноеМенюСкопироватьExtendedTooltip - 168 - Label - true - true - - Left - - - Form.Item.ПрочиеНастройки.StandardCommand.Copy - Normal - Auto - true - true - UserCmds - Auto - - - ПрочиеНастройкиКонтекстноеМенюУдалить - 104 - - <key>ru</key> - <value>Очистить</value> - - true - true - - true - - - ПрочиеНастройкиКонтекстноеМенюУдалитьExtendedTooltip - 169 - Label - true - true - - Left - - - Form.Item.ПрочиеНастройки.StandardCommand.Delete - Normal - Auto - true - true - UserCmds - Auto - - - ПрочиеНастройкиКонтекстноеМенюПрочее - 116 - - ПрочиеНастройкиКонтекстноеМенюВыделитьВсе - 89 - true - true - - true - - - ПрочиеНастройкиКонтекстноеМенюВыделитьВсеExtendedTooltip - 171 - Label - true - true - - Left - - - Form.Item.ПрочиеНастройки.StandardCommand.SelectAll - Normal - Auto - true - true - UserCmds - Auto - - - ПрочиеНастройкиКонтекстноеМенюКопироватьВБуферОбмена - 88 - true - true - - true - - - ПрочиеНастройкиКонтекстноеМенюКопироватьВБуферОбменаExtendedTooltip - 172 - Label - true - true - - Left - - - Form.Item.ПрочиеНастройки.StandardCommand.CopyToClipboard - Normal - Auto - true - true - UserCmds - Auto - - - ПрочиеНастройкиКонтекстноеМенюВывестиСписок - 117 - true - true - - true - - - ПрочиеНастройкиКонтекстноеМенюВывестиСписокExtendedTooltip - 173 - Label - true - true - - Left - - - Form.Item.ПрочиеНастройки.StandardCommand.OutputList - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - ПрочиеНастройкиКонтекстноеМенюПрочееExtendedTooltip - 170 - Label - true - true - - Left - - - - - true - - true - true - true - true - MultiRow - 1 - 1 - AutoUse - true - true - false - false - false - true - Auto - ExpandAllLevels - true - true - true - true - None - None - None - true + Pages + + + OnCurrentPageChange + ПриСменеСтраницы + + TabsOnTop + Auto + true true true - - <key>ru</key> - <value>Прочие настройки</value> - - - ru - Прочие настройки страница - - ПрочиеНастройкиСтраницаExtendedTooltip - 166 + СтраницаНастройкиРасширеннаяПодсказка + 216 Label true true @@ -2102,7 +2252,6 @@ Page Vertical - auto false @@ -2111,17 +2260,9 @@ true - - <key>ru</key> - <value>Виды настроек</value> - - - ru - Виды настроек - - ВидыНастроекExtendedTooltip - 141 + СтраницыДлительнаяОперацияРасширеннаяПодсказка + 212 Label true true @@ -2131,11 +2272,6 @@ Pages - - OnCurrentPageChange - ПриСменеСтраницы - - TabsOnTop Auto @@ -2202,9 +2338,7 @@ 70 true - 5 true - 2 true @@ -2241,9 +2375,7 @@ true Label - 49 true - 2 true Left @@ -2349,6 +2481,10 @@ NotificationProcessing ОбработкаОповещения + + OnOpen + ПриОткрытии + OnLoadDataFromSettingsAtServer ПриЗагрузкеДанныхИзНастроекНаСервере @@ -2656,10 +2792,7 @@ Пользователь информационной базы 5 - - String - - + true @@ -2969,6 +3102,21 @@ true + + РезультатВыполнения + + <key>ru</key> + <value>Результат выполнения</value> + + 17 + + + true + + + true + + Обновить diff --git a/SSL/src/DataProcessors/НастройкиПользователей/Forms/НастройкиПользователей/Module.bsl b/SSL/src/DataProcessors/НастройкиПользователей/Forms/НастройкиПользователей/Module.bsl index 89538a439..ab8c93f87 100644 --- a/SSL/src/DataProcessors/НастройкиПользователей/Forms/НастройкиПользователей/Module.bsl +++ b/SSL/src/DataProcessors/НастройкиПользователей/Forms/НастройкиПользователей/Module.bsl @@ -43,7 +43,6 @@ ИмяФормыПерсональныхНастроек = ОбщегоНазначения.ОбщиеПараметрыБазовойФункциональности().ИмяФормыПерсональныхНастроек; ВыбраннаяСтраницаНастроек = Элементы.ВидыНастроек.ТекущаяСтраница.Имя; - ЗаполнитьСпискиНастроек(); КонецПроцедуры @@ -74,20 +73,8 @@ КонецПроцедуры &НаКлиенте -Процедура ПользовательСсылкаПриИзменении(Элемент) - Элементы.КоманднаяПанель.Доступность = Не ПустаяСтрока(Элемент.ВыделенныйТекст); - - Если РезультатПолученияНастроек() = "НетПользователяИБ" Тогда - ТекстСообщения = НСтр("ru = 'У выбранного пользователя ""%1"" не указан - |пользователь информационной базы, просмотреть его настройки невозможно. - |Устранить проблему можно в карточке данного пользователя.'"); - ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, ПользовательСсылка); - ПоказатьПредупреждение(, ТекстСообщения); - ПользовательСсылка = ТекущийПользовательСсылка; - Возврат; - КонецЕсли; - - РазвернутьДеревоЗначений(); +Процедура ПриОткрытии(Отказ) + ПодключитьОбработчикОжидания("ОбновитьСписокНастроек", 0.1, Истина); КонецПроцедуры #КонецОбласти @@ -121,8 +108,7 @@ ТекущийЭлемент = Элементы.Поиск; КонецЕсли; - ЗаполнитьСпискиНастроек(); - РазвернутьДеревоЗначений(); + ОбновитьСписокНастроек(); КонецПроцедуры @@ -193,6 +179,23 @@ КонецПроцедуры +&НаКлиенте +Процедура ПользовательСсылкаПриИзменении(Элемент) + Элементы.КоманднаяПанель.Доступность = Не ПустаяСтрока(Элемент.ВыделенныйТекст); + + Если РезультатПолученияНастроек() = "НетПользователяИБ" Тогда + ТекстСообщения = НСтр("ru = 'У выбранного пользователя ""%1"" не указан + |пользователь информационной базы, просмотреть его настройки невозможно. + |Устранить проблему можно в карточке данного пользователя.'"); + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, ПользовательСсылка); + ПоказатьПредупреждение(, ТекстСообщения); + ПользовательСсылка = ТекущийПользовательСсылка; + Возврат; + КонецЕсли; + + ОбновитьСписокНастроек(); +КонецПроцедуры + #КонецОбласти #Область ОбработчикиКомандФормы @@ -200,8 +203,7 @@ &НаКлиенте Процедура Обновить(Команда) - ЗаполнитьСпискиНастроек(); - РазвернутьДеревоЗначений(); + ОбновитьСписокНастроек(); КонецПроцедуры @@ -374,12 +376,73 @@ //////////////////////////////////////////////////////////////////////////////// // Процедуры и функции для вывода списков настроек. +&НаКлиенте +Процедура ОбновитьСписокНастроек() + + Элементы.БыстрыйПоиск.Доступность = Ложь; + Элементы.КоманднаяПанель.Доступность = Ложь; + Элементы.СтраницыДлительнаяОперация.ТекущаяСтраница = Элементы.СтраницаДлительнаяОперация; + Результат = ОбновлениеСпискаНастроек(); + + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ОповещениеОЗавершении = Новый ОписаниеОповещения("ОбновитьСписокНастроекЗавершение", ЭтотОбъект); + + ДлительныеОперацииКлиент.ОжидатьЗавершение(Результат, ОповещениеОЗавершении, ПараметрыОжидания); + +КонецПроцедуры + &НаСервере -Процедура ЗаполнитьСпискиНастроек() +Функция ОбновлениеСпискаНастроек() + + Если РезультатВыполнения <> Неопределено + И РезультатВыполнения.ИдентификаторЗадания <> Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000") Тогда + ДлительныеОперации.ОтменитьВыполнениеЗадания(РезультатВыполнения.ИдентификаторЗадания); + КонецЕсли; + + ПараметрыДлительнойОперации = ПараметрыДлительнойОперации(); + + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.ОжидатьЗавершение = 0; // запускать сразу + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Обновление настроек пользователей'"); + + РезультатВыполнения = ДлительныеОперации.ВыполнитьВФоне("ПользователиСлужебный.ЗаполнитьСпискиНастроек", + ПараметрыДлительнойОперации, ПараметрыВыполнения); + + Возврат РезультатВыполнения; + +КонецФункции + +&НаКлиенте +Процедура ОбновитьСписокНастроекЗавершение(Результат, ДополнительныеПараметры) Экспорт + + Если Результат = Неопределено Тогда + Возврат; + КонецЕсли; + + Если Результат.Статус = "Выполнено" Тогда + ЗаполнитьНастройки(); + РазвернутьДеревоЗначений(); + Элементы.СтраницыДлительнаяОперация.ТекущаяСтраница = Элементы.СтраницаНастройки; + Элементы.БыстрыйПоиск.Доступность = Истина; + Элементы.КоманднаяПанель.Доступность = Истина; + ИначеЕсли Результат.Статус = "Ошибка" Тогда + Элементы.СтраницыДлительнаяОперация.ТекущаяСтраница = Элементы.СтраницаНастройки; + ВызватьИсключение Результат.КраткоеПредставлениеОшибки; + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура ЗаполнитьНастройки() + Результат = ПолучитьИзВременногоХранилища(РезультатВыполнения.АдресРезультата); + + ЗначениеВРеквизитФормы(Результат.НастройкиОтчетовДерево, "НастройкиОтчетов"); + ЗначениеВРеквизитФормы(Результат.ПользовательскиеВариантыОтчетов, "ТаблицаПользовательскихВариантовОтчетов"); + ЗначениеВРеквизитФормы(Результат.НастройкиВнешнегоВида, "ВнешнийВид"); + ЗначениеВРеквизитФормы(Результат.ПрочиеНастройкиДерево, "ПрочиеНастройки"); - Обработки.НастройкиПользователей.ЗаполнитьСпискиНастроек(ЭтотОбъект); РассчитатьКоличествоНастроек(); - КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// @@ -591,8 +654,6 @@ Обработки.НастройкиПользователей.УдалитьНастройкиПользователей( ОчищаемыеНастройки, МассивПользователей, ТаблицаПользовательскихВариантовОтчетов); - ЗаполнитьСпискиНастроек(); - КонецПроцедуры &НаСервере @@ -609,13 +670,13 @@ МассивПользователей = Новый Массив; ТаблицаПользователей = Новый ТаблицаЗначений; ТаблицаПользователей.Колонки.Добавить("Пользователь"); - ТаблицаПользователей = Обработки.НастройкиПользователей.ПользователиДляКопирования("", ТаблицаПользователей, ИспользоватьВнешнихПользователей); + ТаблицаПользователей = Обработки.НастройкиПользователей.ПользователиДляКопирования("", ТаблицаПользователей, Ложь, Истина); Для Каждого СтрокаТаблицы Из ТаблицаПользователей Цикл МассивПользователей.Добавить(СтрокаТаблицы.Пользователь); КонецЦикла; - Обработки.НастройкиПользователей.УдалитьНастройкиПользователей(ОчищаемыеНастройки, МассивПользователей, ТаблицаПользовательскихВариантовОтчетов); + Обработки.НастройкиПользователей.УдалитьНастройкиПользователей(ОчищаемыеНастройки, МассивПользователей); КонецПроцедуры @@ -777,8 +838,8 @@ КонецЕсли; ИначеЕсли ВРег(ИмяСобытия) = ВРег("СкопированыНастройки") Тогда - ЗаполнитьСпискиНастроек(); - РазвернутьДеревоЗначений(); + ОбновитьСписокНастроек(); + ОбщегоНазначенияКлиент.ОбновитьИнтерфейсПрограммы(); КонецЕсли; КонецПроцедуры @@ -830,6 +891,7 @@ ОчиститьВсеНастройкиНаСервере(ОчищаемыеНастройки); ОбщегоНазначенияКлиент.ОбновитьИнтерфейсПрограммы(); + ОбновитьСписокНастроек(); ТекстПояснения = НСтр("ru = 'Очищены все настройки пользователя ""%1""'"); ТекстПояснения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстПояснения, ПользовательСсылка); @@ -1073,17 +1135,15 @@ Если Не ЗначениеЗаполнено(ПользовательСсылка) Тогда ПользовательСсылка = Справочники.Пользователи.ПустаяСсылка(); - ПользовательИнформационнойБазы = ""; + ПользовательИнформационнойБазы = Неопределено; Иначе ПользовательИнформационнойБазы = Обработки.НастройкиПользователей.ИмяПользователяИБ(ПользовательСсылка); КонецЕсли; - Если ПользовательИнформационнойБазы = "" Тогда + Если ПользовательИнформационнойБазы = Неопределено Тогда Возврат "НетПользователяИБ"; КонецЕсли; - ЗаполнитьСпискиНастроек(); - Возврат "Успешно"; КонецФункции @@ -1196,4 +1256,25 @@ Возврат Результат; КонецФункции +&НаСервере +Функция ПараметрыДлительнойОперации() + + ПараметрыДлительнойОперации = Новый Структура; + ПараметрыДлительнойОперации.Вставить("ИмяФормы"); + ПараметрыДлительнойОперации.Вставить("Поиск"); + ПараметрыДлительнойОперации.Вставить("ДействиеСНастройками"); + ПараметрыДлительнойОперации.Вставить("ПользовательИнформационнойБазы"); + ПараметрыДлительнойОперации.Вставить("ПользовательСсылка"); + + ЗаполнитьЗначенияСвойств(ПараметрыДлительнойОперации, ЭтотОбъект); + + ПараметрыДлительнойОперации.Вставить("НастройкиОтчетовДерево", РеквизитФормыВЗначение("НастройкиОтчетов")); + ПараметрыДлительнойОперации.Вставить("НастройкиВнешнегоВида", РеквизитФормыВЗначение("ВнешнийВид")); + ПараметрыДлительнойОперации.Вставить("ПрочиеНастройкиДерево", РеквизитФормыВЗначение("ПрочиеНастройки")); + ПараметрыДлительнойОперации.Вставить("ПользовательскиеВариантыОтчетов", РеквизитФормыВЗначение("ТаблицаПользовательскихВариантовОтчетов")); + + Возврат ПараметрыДлительнойОперации; + +КонецФункции + #КонецОбласти diff --git a/SSL/src/DataProcessors/НастройкиПользователей/Forms/ОчисткаНастроекПользователей/Form.form b/SSL/src/DataProcessors/НастройкиПользователей/Forms/ОчисткаНастроекПользователей/Form.form index 542492f92..cd1938170 100644 --- a/SSL/src/DataProcessors/НастройкиПользователей/Forms/ОчисткаНастроекПользователей/Form.form +++ b/SSL/src/DataProcessors/НастройкиПользователей/Forms/ОчисткаНастроекПользователей/Form.form @@ -70,61 +70,21 @@ <orientation>Vertical</orientation> </extInfo> </items> - <items xsi:type="form:FormGroup"> - <name>ГруппаВыбратьПользователей</name> - <id>29</id> - <items xsi:type="form:Decoration"> - <name>ВыбратьПользователей</name> - <id>58</id> - <title> - <key>ru</key> - <value>Выбрать</value> - - true - true - - true - - - ru - Выберите пользователей, которым необходимо скопировать настройки - - - ВыбратьПользователейExtendedTooltip - 72 - Label - true - true - - Left - - - - ВыбратьПользователейКонтекстноеМеню - 59 - true - - Label - 27 - true - true - - - Click - ВыбратьПользователейНажатие - - true - Left - - + + ВыбратьПользователей + 58 + + <key>ru</key> + <value>Выбрать</value> + true true true - ГруппаВыбратьПользователейExtendedTooltip - 71 + ВыбратьПользователейExtendedTooltip + 72 Label true true @@ -132,14 +92,22 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + ВыбратьПользователейКонтекстноеМеню + 59 + true + + Label + 28 + 1 + false + + + Click + ВыбратьПользователейНажатие + + true + Left true @@ -234,101 +202,21 @@ Vertical - - ГруппаВыбратьНастройки - 24 - - Декорация1 - 64 - true - true - - true - - - Декорация1ExtendedTooltip - 76 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 65 - true - - Label - true - true - - Left - - - - ВыбратьНастройки - 60 - - <key>ru</key> - <value>Выбрать</value> - - true - false - - true - - - ru - Выберите настройки, которые необходимо скопировать - - - ВыбратьНастройкиExtendedTooltip - 77 - Label - true - true - - Left - - - - ВыбратьНастройкиКонтекстноеМеню - 61 - true - - Label - 28 - true - 1 - true - false - false - - - Click - ВыбратьНастройки - - true - Left - Top - 1 - - + + ВыбратьНастройки + 60 + + <key>ru</key> + <value>Выбрать</value> + true - true + false true - - <key>ru</key> - <value>Или</value> - - true - ГруппаВыбратьНастройкиExtendedTooltip - 75 + ВыбратьНастройкиExtendedTooltip + 77 Label true true @@ -336,15 +224,25 @@ Left - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto + + ВыбратьНастройкиКонтекстноеМеню + 61 + true + + Label + 32 + 1 + false + false + Bottom + + + Click + ВыбратьНастройки + + true + Left + Top true @@ -480,7 +378,6 @@ Retry SaveValues Yes - 49 LockOwner true true diff --git a/SSL/src/DataProcessors/НастройкиПользователей/Forms/ОчисткаНастроекПользователей/Module.bsl b/SSL/src/DataProcessors/НастройкиПользователей/Forms/ОчисткаНастроекПользователей/Module.bsl index 37a9dda93..987405d1f 100644 --- a/SSL/src/DataProcessors/НастройкиПользователей/Forms/ОчисткаНастроекПользователей/Module.bsl +++ b/SSL/src/DataProcessors/НастройкиПользователей/Forms/ОчисткаНастроекПользователей/Module.bsl @@ -42,36 +42,6 @@ ПереключательОчищаемыеНастройки = "ОчиститьВсе"; КонецЕсли; Элементы.ВыбратьПользователей.Подсказка = ""; - - ИначеЕсли ВРег(ИмяСобытия) = ВРег("ВыборНастроек") Тогда - ВыбранныеНастройки = Новый Структура; - ВыбранныеНастройки.Вставить("НастройкиОтчетов", Параметр.НастройкиОтчетов); - ВыбранныеНастройки.Вставить("ВнешнийВид", Параметр.ВнешнийВид); - ВыбранныеНастройки.Вставить("ПрочиеНастройки", Параметр.ПрочиеНастройки); - ВыбранныеНастройки.Вставить("ПерсональныеНастройки", Параметр.ПерсональныеНастройки); - ВыбранныеНастройки.Вставить("ТаблицаВариантовОтчетов", Параметр.ТаблицаВариантовОтчетов); - ВыбранныеНастройки.Вставить("ВыбранныеВариантыОтчетов", Параметр.ВыбранныеВариантыОтчетов); - ВыбранныеНастройки.Вставить("ПрочиеПользовательскиеНастройки", - Параметр.ПрочиеПользовательскиеНастройки); - - КоличествоНастроек = Параметр.КоличествоНастроек; - - Если КоличествоНастроек = 0 Тогда - ТекстЗаголовка = НСтр("ru='Выбрать'"); - ИначеЕсли КоличествоНастроек = 1 Тогда - ПредставлениеНастройки = Параметр.ПредставленияНастроек[0]; - ТекстЗаголовка = ПредставлениеНастройки; - Иначе - ТекстЗаголовка = Формат(КоличествоНастроек, "ЧДЦ=0") + " " - + ПользователиСлужебныйКлиентСервер.ПредметЦелогоЧисла(КоличествоНастроек, - "Л = ru_RU", НСтр("ru = 'настройка,настройки,настроек,,,,,,0'")); - КонецЕсли; - - Элементы.ВыбратьНастройки.Заголовок = ТекстЗаголовка; - Элементы.ВыбратьНастройки.Подсказка = ""; - - ИначеЕсли ВРег(ИмяСобытия) = ВРег("ВыборНастроек_ДанныеСохранены") Тогда - ОчиститьИсториюВыбораНастроек = Ложь; КонецЕсли; КонецПроцедуры @@ -142,7 +112,8 @@ ПользовательСсылка = ПользователиКоторымОчищаютсяНастройки.МассивПользователей[0]; ПараметрыФормы = Новый Структура("Пользователь, ДействиеСНастройками, ОчиститьИсториюВыбораНастроек", ПользовательСсылка, "Очистка", ОчиститьИсториюВыбораНастроек); - ОткрытьФорму("Обработка.НастройкиПользователей.Форма.ВыборНастроек", ПараметрыФормы); + ОткрытьФорму("Обработка.НастройкиПользователей.Форма.ВыборНастроек", ПараметрыФормы, ЭтотОбъект,,,, + Новый ОписаниеОповещения("ВыбратьНастройкиПослеВыбора", ЭтотОбъект)); КонецЕсли; КонецПроцедуры @@ -208,6 +179,42 @@ КонецПроцедуры +&НаКлиенте +Процедура ВыбратьНастройкиПослеВыбора(Параметр, Контекст) Экспорт + + Если ТипЗнч(Параметр) <> Тип("Структура") Тогда + Возврат; + КонецЕсли; + + ВыбранныеНастройки = Новый Структура; + ВыбранныеНастройки.Вставить("ВнешнийВид", Параметр.ВнешнийВид); + ВыбранныеНастройки.Вставить("НастройкиОтчетов", Параметр.НастройкиОтчетов); + ВыбранныеНастройки.Вставить("ПрочиеНастройки", Параметр.ПрочиеНастройки); + + ВыбранныеНастройки.Вставить("ТаблицаВариантовОтчетов", Параметр.ТаблицаВариантовОтчетов); + ВыбранныеНастройки.Вставить("ВыбранныеВариантыОтчетов", Параметр.ВыбранныеВариантыОтчетов); + + ВыбранныеНастройки.Вставить("ПерсональныеНастройки", Параметр.ПерсональныеНастройки); + ВыбранныеНастройки.Вставить("ПрочиеПользовательскиеНастройки", Параметр.ПрочиеПользовательскиеНастройки); + + КоличествоНастроек = Параметр.КоличествоНастроек; + + Если КоличествоНастроек = 0 Тогда + ТекстЗаголовка = НСтр("ru='Выбрать'"); + ИначеЕсли КоличествоНастроек = 1 Тогда + ПредставлениеНастройки = Параметр.ПредставленияНастроек[0]; + ТекстЗаголовка = ПредставлениеНастройки; + Иначе + ТекстЗаголовка = Формат(КоличествоНастроек, "ЧДЦ=0") + " " + + ПользователиСлужебныйКлиентСервер.ПредметЦелогоЧисла(КоличествоНастроек, + "Л = ru_RU", НСтр("ru = 'настройка,настройки,настроек,,,,,,0'")); + КонецЕсли; + + Элементы.ВыбратьНастройки.Заголовок = ТекстЗаголовка; + Элементы.ВыбратьНастройки.Подсказка = ""; + +КонецПроцедуры + &НаКлиенте Функция ОчисткаНастроек() diff --git a/SSL/src/DataProcessors/НастройкиПользователей/Forms/ПредупреждениеОКопированииНастроек/Form.form b/SSL/src/DataProcessors/НастройкиПользователей/Forms/ПредупреждениеОКопированииНастроек/Form.form index d30cdf94c..55098c10f 100644 --- a/SSL/src/DataProcessors/НастройкиПользователей/Forms/ПредупреждениеОКопированииНастроек/Form.form +++ b/SSL/src/DataProcessors/НастройкиПользователей/Forms/ПредупреждениеОКопированииНастроек/Form.form @@ -1,26 +1,85 @@ - + <key>ru</key> <value>Копирование настроек</value> - - Сообщение - 1 - - <key>ru</key> - <value>Пользователи, которым копируются настройки внешнего вида программы, -должны завершить свои сеансы работы. -В противном случае настройки могут не примениться.</value> - + + ГруппаКлиентСервер + 20 + + ДекорацияКартинка + 22 + true + true + + true + + + ДекорацияКартинкаРасширеннаяПодсказка + 24 + Label + true + true + + Left + + + + ДекорацияКартинкаКонтекстноеМеню + 23 + true + + true + true + + + CommonPicture.Информация32 + + + + + СообщениеКлиентСервер + 25 + + <key>ru</key> + <value>В некоторых случаях настройки применяются не сразу, задержка может составлять до 20 минут.</value> + + true + true + + true + + + СообщениеКлиентСерверРасширеннаяПодсказка + 27 + Label + true + true + + Left + + + + СообщениеКлиентСерверКонтекстноеМеню + 26 + true + + Label + true + true + + Left + + true true true - СообщениеExtendedTooltip - 20 + ГруппаКлиентСерверРасширеннаяПодсказка + 21 Label true true @@ -28,24 +87,55 @@ Left - - СообщениеКонтекстноеМеню - 2 - true - - Label - true - true - - Left + UsualGroup + + Auto + true + true + Auto + Auto ГруппаАктивныеПользователи - 7 + 28 + + Сообщение + 30 + + <key>ru</key> + <value>Пользователи, которым копируются настройки внешнего вида программы, +должны завершить свои сеансы работы. +В противном случае настройки могут не примениться.</value> + + true + true + + true + + + СообщениеExtendedTooltip + 32 + Label + true + true + + Left + + + + СообщениеКонтекстноеМеню + 31 + true + + Label + + Left + + СписокАктивныхПользователей - 8 + 33 <key>ru</key> <value>Список активных пользователей</value> @@ -57,7 +147,7 @@ </userVisible> <extendedTooltip> <name>СписокАктивныхПользователейExtendedTooltip</name> - <id>22</id> + <id>35</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -67,12 +157,10 @@ </extendedTooltip> <contextMenu> <name>СписокАктивныхПользователейКонтекстноеМеню</name> - <id>9</id> + <id>34</id> <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <width>25</width> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <handlers> @@ -90,11 +178,11 @@ </userVisible> <title> <key>ru</key> - <value>Группа активные пользователи</value> + <value>Активные пользователи</value> ГруппаАктивныеПользователиExtendedTooltip - 21 + 29 Label true true @@ -104,6 +192,7 @@ UsualGroup + Vertical Auto true true @@ -170,6 +259,10 @@ Right + + OnCreateAtServer + ПриСозданииНаСервере + Abort Close CustomizeForm @@ -237,6 +330,18 @@ true + + ЕстьАктивныеПользователиПолучатели + + Boolean + + + + ИБФайловая + + Boolean + + diff --git a/SSL/src/DataProcessors/НастройкиПользователей/Forms/ПредупреждениеОКопированииНастроек/Module.bsl b/SSL/src/DataProcessors/НастройкиПользователей/Forms/ПредупреждениеОКопированииНастроек/Module.bsl index 91b32ede7..0636f86eb 100644 --- a/SSL/src/DataProcessors/НастройкиПользователей/Forms/ПредупреждениеОКопированииНастроек/Module.bsl +++ b/SSL/src/DataProcessors/НастройкиПользователей/Forms/ПредупреждениеОКопированииНастроек/Module.bsl @@ -1,3 +1,25 @@ +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + Если Параметры.Свойство("АвтоТест") Тогда + Возврат; + КонецЕсли; + + Если Параметры.ИБФайловая Тогда + Элементы.ГруппаКлиентСервер.Видимость = Ложь; + КонецЕсли; + + Если Не Параметры.ЕстьАктивныеПользователиПолучатели Тогда + Элементы.ГруппаАктивныеПользователи.Видимость = Ложь; + СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(ЭтотОбъект, "НетАктивныхПользователейПолучателей"); + Иначе + СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(ЭтотОбъект, "ЕстьАктивныеПользователиПолучатели"); + КонецЕсли; + Действие = Параметры.Действие; +КонецПроцедуры + +#КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы @@ -19,7 +41,7 @@ Закрыть(); КонецЕсли; - Результат = Новый Структура("Действие", Параметры.Действие); + Результат = Новый Структура("Действие", Действие); Оповестить("СкопироватьНастройкиАктивнымПользователям", Результат); КонецПроцедуры diff --git a/SSL/src/DataProcessors/НастройкиПользователей/ManagerModule.bsl b/SSL/src/DataProcessors/НастройкиПользователей/ManagerModule.bsl index d9c45255e..d1d950edf 100644 --- a/SSL/src/DataProcessors/НастройкиПользователей/ManagerModule.bsl +++ b/SSL/src/DataProcessors/НастройкиПользователей/ManagerModule.bsl @@ -20,25 +20,25 @@ // Добавление стандартных форм в список. СписокФорм.Добавить("ВнешняяОбработка.StandardEventLog.Форма.EventsJournal", - НСтр("ru='Стандартные.Журнал регистрации'") , Ложь, БиблиотекаКартинок.Форма); + НСтр("ru = 'Стандартные.Журнал регистрации'") , Ложь, БиблиотекаКартинок.Форма); СписокФорм.Добавить("ВнешняяОбработка.StandardEventLog.Форма.EventForm", - НСтр("ru='Стандартные.Журнал регистрации, Событие'") , Ложь, БиблиотекаКартинок.Форма); + НСтр("ru = 'Стандартные.Журнал регистрации, Событие'") , Ложь, БиблиотекаКартинок.Форма); СписокФорм.Добавить("ВнешняяОбработка.StandardEventLog.Форма.EventsJournalFilter", - НСтр("ru='Стандартные.Журнал регистрации, Настройка отбора событий'") , Ложь, БиблиотекаКартинок.Форма); + НСтр("ru = 'Стандартные.Журнал регистрации, Настройка отбора событий'") , Ложь, БиблиотекаКартинок.Форма); СписокФорм.Добавить("ВнешняяОбработка.StandardFindByRef.Форма.MainForm", - НСтр("ru='Стандартные.Поиск ссылок на объект'") , Ложь, БиблиотекаКартинок.Форма); + НСтр("ru = 'Стандартные.Поиск ссылок на объект'") , Ложь, БиблиотекаКартинок.Форма); СписокФорм.Добавить("ВнешняяОбработка.StandardFullTextSearchManagement.Форма.MainForm", - НСтр("ru='Стандартные.Управление полнотекстовым поиском'") , Ложь, БиблиотекаКартинок.Форма); + НСтр("ru = 'Стандартные.Управление полнотекстовым поиском'") , Ложь, БиблиотекаКартинок.Форма); СписокФорм.Добавить("ВнешняяОбработка.StandardDocumentsPosting.Форма.MainForm", - НСтр("ru='Стандартные.Проведение документов'") , Ложь, БиблиотекаКартинок.Форма); + НСтр("ru = 'Стандартные.Проведение документов'") , Ложь, БиблиотекаКартинок.Форма); СписокФорм.Добавить("ВнешняяОбработка.StandardDeleteMarkedObjects.Форма.Form", - НСтр("ru='Стандартные.Удаление помеченных объектов'") , Ложь, БиблиотекаКартинок.Форма); + НСтр("ru = 'Стандартные.Удаление помеченных объектов'") , Ложь, БиблиотекаКартинок.Форма); СписокФорм.Добавить("ВнешняяОбработка.StandardExternalDataSourceManagement.Форма.Form", - НСтр("ru='Стандартные.Управление внешними источниками данных'") , Ложь, БиблиотекаКартинок.Форма); + НСтр("ru = 'Стандартные.Управление внешними источниками данных'") , Ложь, БиблиотекаКартинок.Форма); СписокФорм.Добавить("ВнешняяОбработка.StandardTotalsManagement.Форма.MainForm", - НСтр("ru='Стандартные.Управление итогами'") , Ложь, БиблиотекаКартинок.Форма); + НСтр("ru = 'Стандартные.Управление итогами'") , Ложь, БиблиотекаКартинок.Форма); СписокФорм.Добавить("ВнешняяОбработка.StandardActiveUsers.Форма.ActiveUsersListForm", - НСтр("ru='Стандартные.Активные пользователи'") , Ложь, БиблиотекаКартинок.Форма); + НСтр("ru = 'Стандартные.Активные пользователи'") , Ложь, БиблиотекаКартинок.Форма); Возврат СписокНастроекФорм(СписокФорм, ИмяПользователя); @@ -65,11 +65,11 @@ ИменаСтандартныхФорм = Новый СписокЗначений; ИменаСтандартныхФорм.Добавить("Форма"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.КритерииОтбора, "КритерийОтбора", НСтр("ru='Критерий отбора'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.КритерииОтбора, "КритерийОтбора", НСтр("ru = 'Критерий отбора'"), ИменаСтандартныхФорм, БиблиотекаКартинок.КритерийОтбора, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; - ПолучитьСписокФормОбъектаМетаданных(Метаданные.ХранилищаНастроек, "ХранилищеНастроек", НСтр("ru='Хранилище настроек'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.ХранилищаНастроек, "ХранилищеНастроек", НСтр("ru = 'Хранилище настроек'"), ИменаСтандартныхФорм, БиблиотекаКартинок.ХранилищеНастроек, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; @@ -78,37 +78,37 @@ ИменаСтандартныхФорм.Добавить("ФормаСписка"); ИменаСтандартныхФорм.Добавить("ФормаДляВыбора"); ИменаСтандартныхФорм.Добавить("ФормаДляВыбораГруппы"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.Справочники, "Справочник", НСтр("ru='Справочник'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.Справочники, "Справочник", НСтр("ru = 'Справочник'"), ИменаСтандартныхФорм, БиблиотекаКартинок.Справочник, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; ИменаСтандартныхФорм.Добавить("ФормаОбъекта"); ИменаСтандартныхФорм.Добавить("ФормаСписка"); ИменаСтандартныхФорм.Добавить("ФормаДляВыбора"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.Документы, "Документ", НСтр("ru='Документ'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.Документы, "Документ", НСтр("ru = 'Документ'"), ИменаСтандартныхФорм, БиблиотекаКартинок.Документ, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; ИменаСтандартныхФорм.Добавить("Форма"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.ЖурналыДокументов, "ЖурналДокументов", НСтр("ru='Журнал документов'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.ЖурналыДокументов, "ЖурналДокументов", НСтр("ru = 'Журнал документов'"), ИменаСтандартныхФорм, БиблиотекаКартинок.ЖурналДокументов, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; ИменаСтандартныхФорм.Добавить("ФормаСписка"); ИменаСтандартныхФорм.Добавить("ФормаДляВыбора"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.Перечисления, "Перечисление", НСтр("ru='Перечисление'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.Перечисления, "Перечисление", НСтр("ru = 'Перечисление'"), ИменаСтандартныхФорм, БиблиотекаКартинок.Перечисление, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; ИменаСтандартныхФорм.Добавить("Форма"); ИменаСтандартныхФорм.Добавить("ФормаНастроек"); ИменаСтандартныхФорм.Добавить("ФормаВарианта"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.Отчеты, "Отчет", НСтр("ru='Отчет'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.Отчеты, "Отчет", НСтр("ru = 'Отчет'"), ИменаСтандартныхФорм, БиблиотекаКартинок.Отчет, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; ИменаСтандартныхФорм.Добавить("Форма"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.Обработки, "Обработка", НСтр("ru='Обработка'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.Обработки, "Обработка", НСтр("ru = 'Обработка'"), ИменаСтандартныхФорм, БиблиотекаКартинок.Обработка, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; @@ -117,62 +117,62 @@ ИменаСтандартныхФорм.Добавить("ФормаСписка"); ИменаСтандартныхФорм.Добавить("ФормаДляВыбора"); ИменаСтандартныхФорм.Добавить("ФормаДляВыбораГруппы"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.ПланыВидовХарактеристик, "ПланВидовХарактеристик", НСтр("ru='План видов характеристик'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.ПланыВидовХарактеристик, "ПланВидовХарактеристик", НСтр("ru = 'План видов характеристик'"), ИменаСтандартныхФорм, БиблиотекаКартинок.ПланВидовХарактеристик, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; ИменаСтандартныхФорм.Добавить("ФормаОбъекта"); ИменаСтандартныхФорм.Добавить("ФормаСписка"); ИменаСтандартныхФорм.Добавить("ФормаДляВыбора"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.ПланыСчетов, "ПланСчетов", НСтр("ru='План счетов'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.ПланыСчетов, "ПланСчетов", НСтр("ru = 'План счетов'"), ИменаСтандартныхФорм, БиблиотекаКартинок.ПланСчетов, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; ИменаСтандартныхФорм.Добавить("ФормаОбъекта"); ИменаСтандартныхФорм.Добавить("ФормаСписка"); ИменаСтандартныхФорм.Добавить("ФормаДляВыбора"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.ПланыВидовРасчета, "ПланВидовРасчета", НСтр("ru='План видов расчета'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.ПланыВидовРасчета, "ПланВидовРасчета", НСтр("ru = 'План видов расчета'"), ИменаСтандартныхФорм, БиблиотекаКартинок.ПланВидовРасчета, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; ИменаСтандартныхФорм.Добавить("ФормаЗаписи"); ИменаСтандартныхФорм.Добавить("ФормаСписка"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.РегистрыСведений, "РегистрСведений", НСтр("ru='Регистр сведений'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.РегистрыСведений, "РегистрСведений", НСтр("ru = 'Регистр сведений'"), ИменаСтандартныхФорм, БиблиотекаКартинок.РегистрСведений, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; ИменаСтандартныхФорм.Добавить("ФормаСписка"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.РегистрыНакопления, "РегистрНакопления", НСтр("ru='Регистр накопления'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.РегистрыНакопления, "РегистрНакопления", НСтр("ru = 'Регистр накопления'"), ИменаСтандартныхФорм, БиблиотекаКартинок.РегистрНакопления, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; ИменаСтандартныхФорм.Добавить("ФормаСписка"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.РегистрыБухгалтерии, "РегистрБухгалтерии", НСтр("ru='Регистр бухгалтерии'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.РегистрыБухгалтерии, "РегистрБухгалтерии", НСтр("ru = 'Регистр бухгалтерии'"), ИменаСтандартныхФорм, БиблиотекаКартинок.РегистрБухгалтерии, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; ИменаСтандартныхФорм.Добавить("ФормаСписка"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.РегистрыРасчета, "РегистрРасчета", НСтр("ru='Регистр расчета'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.РегистрыРасчета, "РегистрРасчета", НСтр("ru = 'Регистр расчета'"), ИменаСтандартныхФорм, БиблиотекаКартинок.РегистрРасчета, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; ИменаСтандартныхФорм.Добавить("ФормаОбъекта"); ИменаСтандартныхФорм.Добавить("ФормаСписка"); ИменаСтандартныхФорм.Добавить("ФормаДляВыбора"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.БизнесПроцессы, "БизнесПроцесс", НСтр("ru='Бизнес-процесс'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.БизнесПроцессы, "БизнесПроцесс", НСтр("ru = 'Бизнес-процесс'"), ИменаСтандартныхФорм, БиблиотекаКартинок.БизнесПроцесс, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; ИменаСтандартныхФорм.Добавить("ФормаОбъекта"); ИменаСтандартныхФорм.Добавить("ФормаСписка"); ИменаСтандартныхФорм.Добавить("ФормаДляВыбора"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.Задачи, "Задача", НСтр("ru='Задача'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.Задачи, "Задача", НСтр("ru = 'Задача'"), ИменаСтандартныхФорм, БиблиотекаКартинок.Задача, СписокФорм); ИменаСтандартныхФорм = Новый СписокЗначений; ИменаСтандартныхФорм.Добавить("ФормаЗаписи"); ИменаСтандартныхФорм.Добавить("ФормаСписка"); - ПолучитьСписокФормОбъектаМетаданных(Метаданные.ВнешниеИсточникиДанных, "ВнешнийИсточникДанных", НСтр("ru='Внешние источники данных'"), + ЗаполнитьФормыОбъектовМетаданных(Метаданные.ВнешниеИсточникиДанных, "ВнешнийИсточникДанных", НСтр("ru = 'Внешние источники данных'"), ИменаСтандартныхФорм, БиблиотекаКартинок.ВнешнийИсточникДанныхТаблица, СписокФорм); Возврат СписокФорм; @@ -232,13 +232,13 @@ КонецФункции -Процедура ПолучитьСписокФормОбъектаМетаданных(СписокОбъектовМетаданных, ТипОбъектаМетаданных, +Процедура ЗаполнитьФормыОбъектовМетаданных(СписокОбъектовМетаданных, ТипОбъектаМетаданных, ПредставлениеОбъектаМетаданных, ИменаСтандартныхФорм, Картинка, СписокФорм) Для Каждого Объект Из СписокОбъектовМетаданных Цикл Если ТипОбъектаМетаданных = "ВнешнийИсточникДанных" Тогда - ПолучитьСписокФормВнешнихИсточниковДанных(Объект, ТипОбъектаМетаданных, ПредставлениеОбъектаМетаданных, Картинка, СписокФорм); + ЗаполнитьФормыВнешнихИсточниковДанных(Объект, ТипОбъектаМетаданных, ПредставлениеОбъектаМетаданных, Картинка, СписокФорм); Продолжить; КонецЕсли; @@ -267,7 +267,7 @@ КонецПроцедуры -Процедура ПолучитьСписокФормВнешнихИсточниковДанных(Объект, ТипОбъектаМетаданных, +Процедура ЗаполнитьФормыВнешнихИсточниковДанных(Объект, ТипОбъектаМетаданных, ПредставлениеОбъектаМетаданных, Картинка, СписокФорм) Для Каждого Таблица Из Объект.Таблицы Цикл @@ -347,7 +347,9 @@ Если ОчищаемаяНастройка = "НастройкиОтчетов" Тогда - Если ТаблицаПользовательскихВариантовОтчетов = Неопределено Тогда + Если ТаблицаПользовательскихВариантовОтчетов = Неопределено + Или Источники.Количество() <> 1 Тогда + ТаблицаПользовательскихВариантовОтчетов = ПользовательскиеВариантыОтчетов(ПользовательИБ); КонецЕсли; @@ -879,8 +881,31 @@ // Функция ПользователиДляКопирования(ПользовательИсточник, ТаблицаПользователей, ПользовательВнешний, Очистка = Ложь) Экспорт - СписокПользователей = ?(ПользовательВнешний, СписокВсехВнешнихПользователей(ПользовательИсточник), - СписокВсехПользователей(ПользовательИсточник, Очистка)); + УстановитьПривилегированныйРежим(Истина); + + Запрос = Новый Запрос; + Запрос.Параметры.Вставить("ПользовательИсточник", ПользовательИсточник); + Запрос.Параметры.Вставить("НеуказанныйПользователь", Пользователи.СсылкаНеуказанногоПользователя()); + Запрос.Параметры.Вставить("ПустойУникальныйИдентификатор", + Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000")); + + Если Очистка Тогда + Запрос.Текст = ТекстЗапросаСпискаВсехПользователей(Ложь, Очистка) + + Символы.ПС + Символы.ПС + "ОБЪЕДИНИТЬ ВСЕ" + Символы.ПС + Символы.ПС + + ТекстЗапросаСпискаВсехПользователей(Истина, Очистка); + Иначе + Запрос.Текст = ТекстЗапросаСпискаВсехПользователей(ПользовательВнешний, Очистка); + КонецЕсли; + + НачатьТранзакцию(); + Попытка + СписокПользователей = Запрос.Выполнить().Выгрузить(); + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + Для Каждого ПользовательСсылка Из СписокПользователей Цикл СтрокаТаблицыПользователей = ТаблицаПользователей.Добавить(); СтрокаТаблицыПользователей.Пользователь = ПользовательСсылка.Пользователь; @@ -891,64 +916,36 @@ КонецФункции -Функция СписокВсехПользователей(ПользовательИсточник, Очистка) +Функция ТекстЗапросаСпискаВсехПользователей(ПользовательВнешний, Очистка) - УстановитьПривилегированныйРежим(Истина); - Запрос = Новый Запрос; - Запрос.Текст = + ТекстЗапроса = "ВЫБРАТЬ | Пользователи.Ссылка КАК Пользователь |ИЗ | Справочник.Пользователи КАК Пользователи |ГДЕ - | НЕ Пользователи.Недействителен" - + ?(Очистка И Не ОбщегоНазначенияПовтИсп.РазделениеВключено(),"", Символы.ПС + " И НЕ Пользователи.Служебный") - + ?(Очистка,"", Символы.ПС + " И НЕ Пользователи.ПометкаУдаления") + Символы.ПС - + " И Пользователи.Ссылка <> &ПользовательИсточник - | И Пользователи.ИдентификаторПользователяИБ <> &ПустойИдентификаторПользователяИБ"; - Запрос.Параметры.Вставить("ПользовательИсточник", ПользовательИсточник); - Запрос.Параметры.Вставить("ПустойИдентификаторПользователяИБ", Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000")); - - НачатьТранзакцию(); - Попытка - РезультатЗапроса = Запрос.Выполнить().Выгрузить(); - ЗафиксироватьТранзакцию(); - Исключение - ОтменитьТранзакцию(); - ВызватьИсключение; - КонецПопытки; - - Возврат РезультатЗапроса; - -КонецФункции - -Функция СписокВсехВнешнихПользователей(ПользовательИсточник) - - УстановитьПривилегированныйРежим(Истина); - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | Пользователи.Ссылка КАК Пользователь - |ИЗ - | Справочник.ВнешниеПользователи КАК Пользователи - |ГДЕ - | НЕ Пользователи.Недействителен - | И НЕ Пользователи.ПометкаУдаления + | &КромеНедействительных + | И &КромеПомеченныхНаУдаление + | И &КромеСлужебныхПользователей | И Пользователи.Ссылка <> &ПользовательИсточник - | И Пользователи.ИдентификаторПользователяИБ <> &ПустойИдентификаторПользователяИБ"; - Запрос.Параметры.Вставить("ПользовательИсточник", ПользовательИсточник); - Запрос.Параметры.Вставить("ПустойИдентификаторПользователяИБ", Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000")); + | И НЕ(Пользователи.ИдентификаторПользователяИБ = &ПустойУникальныйИдентификатор + | И Пользователи.Ссылка <> &НеуказанныйПользователь)"; - НачатьТранзакцию(); - Попытка - РезультатЗапроса = Запрос.Выполнить().Выгрузить(); - ЗафиксироватьТранзакцию(); - Исключение - ОтменитьТранзакцию(); - ВызватьИсключение; - КонецПопытки; + Если ПользовательВнешний Тогда + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "Справочник.Пользователи", "Справочник.ВнешниеПользователи"); + КонецЕсли; - Возврат РезультатЗапроса; + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&КромеПомеченныхНаУдаление", + ?(Очистка, "Истина", "НЕ Пользователи.ПометкаУдаления")); + + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&КромеНедействительных", + ?(Очистка, "Истина", "НЕ Пользователи.Недействителен")); + + ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&КромеСлужебныхПользователей", + ?(Очистка И Не ОбщегоНазначенияПовтИсп.РазделениеВключено() Или ПользовательВнешний, + "Истина", "НЕ Пользователи.Служебный")); + + Возврат ТекстЗапроса; КонецФункции @@ -1150,6 +1147,8 @@ Если ПользовательИБ <> Неопределено Тогда Возврат ПользовательИБ.Имя; + ИначеЕсли ПользовательСсылка = Пользователи.СсылкаНеуказанногоПользователя() Тогда + Возврат ""; Иначе Возврат Неопределено; КонецЕсли; @@ -1408,11 +1407,11 @@ Процедура ДобавитьТипФормыВПредставление(Объект, Форма, ИмяФормы) Если Форма = Объект.ОсновнаяФормаСписка Тогда - ИмяФормы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='%1 (список)'"), ИмяФормы); + ИмяФормы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 (список)'"), ИмяФормы); ИначеЕсли Форма = Объект.ОсновнаяФормаДляВыбора Тогда - ИмяФормы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='%1 (выбор)'"), ИмяФормы); + ИмяФормы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 (выбор)'"), ИмяФормы); ИначеЕсли Форма = Объект.ОсновнаяФормаГруппы Тогда - ИмяФормы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='%1 (группа)'"), ИмяФормы); + ИмяФормы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 (группа)'"), ИмяФормы); КонецЕсли; КонецПроцедуры @@ -1420,11 +1419,11 @@ Процедура ДобавитьТипФормыВПредставлениеАвтогенерируемойФормы(Объект, Форма, ИмяФормы) Если Форма = "ФормаСписка" Тогда - ИмяФормы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='%1 (список)'"), ИмяФормы); + ИмяФормы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 (список)'"), ИмяФормы); ИначеЕсли Форма = "ФормаДляВыбора" Тогда - ИмяФормы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='%1 (выбор)'"), ИмяФормы); + ИмяФормы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 (выбор)'"), ИмяФормы); ИначеЕсли Форма = "ФормаДляВыбораГруппы" Тогда - ИмяФормы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru='%1 (группа)'"), ИмяФормы); + ИмяФормы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 (группа)'"), ИмяФормы); КонецЕсли; КонецПроцедуры @@ -1688,26 +1687,22 @@ //////////////////////////////////////////////////////////////////////////////// // Процедуры и функции для форм НастройкиПользователей и ВыборНастроек. -Процедура ЗаполнитьСпискиНастроек(Форма) Экспорт - - ЗаполнитьСписокНастроекОтчетов(Форма); - ЗаполнитьСписокНастроекВнешнегоВида(Форма); - ЗаполнитьСписокПрочихНастроек(Форма); - +Процедура ЗаполнитьСпискиНастроек(Параметры) Экспорт + ЗаполнитьСписокНастроекОтчетов(Параметры); + ЗаполнитьСписокНастроекВнешнегоВида(Параметры); + ЗаполнитьСписокПрочихНастроек(Параметры); КонецПроцедуры -Процедура ЗаполнитьСписокНастроекОтчетов(Форма) +Процедура ЗаполнитьСписокНастроекОтчетов(Параметры) - ИмяФормы = СтрРазделить(Форма.ИмяФормы, ".", Ложь); - Форма.НастройкиОтчетов.ПолучитьЭлементы().Очистить(); - НастройкиОтчетовДерево = Форма.РеквизитФормыВЗначение("НастройкиОтчетов"); - ТаблицаВариантовОтчетов = ПользовательскиеВариантыОтчетов(Форма.ПользовательИнформационнойБазы); - ПользовательскиеВариантыОтчетов = Форма.РеквизитФормыВЗначение("ТаблицаПользовательскихВариантовОтчетов"); - ПользовательскиеВариантыОтчетов.Очистить(); - ПользовательскиеВариантыОтчетов = ТаблицаВариантовОтчетов.Скопировать(); + ИмяФормы = СтрРазделить(Параметры.ИмяФормы, ".", Ложь); + Параметры.НастройкиОтчетовДерево.Строки.Очистить(); + ТаблицаВариантовОтчетов = ПользовательскиеВариантыОтчетов(Параметры.ПользовательИнформационнойБазы); + Параметры.ПользовательскиеВариантыОтчетов.Очистить(); + Параметры.ПользовательскиеВариантыОтчетов = ТаблицаВариантовОтчетов.Скопировать(); Настройки = ЧтениеНастроекИзХранилища( - ХранилищеПользовательскихНастроекОтчетов, Форма.ПользовательИнформационнойБазы); + ХранилищеПользовательскихНастроекОтчетов, Параметры.ПользовательИнформационнойБазы); ТекущийОбъект = Неопределено; @@ -1738,16 +1733,16 @@ Продолжить; КонецЕсли; - Если Не ПустаяСтрока(Форма.Поиск) Тогда - Если СтрНайти(ВРег(ПредставлениеВариантаОтчета), ВРег(Форма.Поиск)) = 0 - И СтрНайти(ВРег(НазваниеНастройки), ВРег(Форма.Поиск)) = 0 Тогда + Если Не ПустаяСтрока(Параметры.Поиск) Тогда + Если СтрНайти(ВРег(ПредставлениеВариантаОтчета), ВРег(Параметры.Поиск)) = 0 + И СтрНайти(ВРег(НазваниеНастройки), ВРег(Параметры.Поиск)) = 0 Тогда Продолжить; КонецЕсли; КонецЕсли; // Заполняем строку варианта отчета. Если ТекущийОбъект <> ПредставлениеВариантаОтчета Тогда - НоваяСтрокаВариантОтчета = НастройкиОтчетовДерево.Строки.Добавить(); + НоваяСтрокаВариантОтчета = Параметры.НастройкиОтчетовДерево.Строки.Добавить(); НоваяСтрокаВариантОтчета.Настройка = ПредставлениеВариантаОтчета; НоваяСтрокаВариантОтчета.Картинка = БиблиотекаКартинок.Отчет; НоваяСтрокаВариантОтчета.Тип = @@ -1779,20 +1774,20 @@ Для Каждого ВариантОтчета Из ТаблицаВариантовОтчетов Цикл Если ИмяФормы[3] = "ВыборНастроек" - И Форма.ДействиеСНастройками = "Копирование" + И Параметры.ДействиеСНастройками = "Копирование" И Не ВариантОтчета.СтандартнаяОбработка Тогда Продолжить; КонецЕсли; - Если Не ПустаяСтрока(Форма.Поиск) Тогда + Если Не ПустаяСтрока(Параметры.Поиск) Тогда - Если СтрНайти(ВРег(ВариантОтчета.Представление), ВРег(Форма.Поиск)) = 0 Тогда + Если СтрНайти(ВРег(ВариантОтчета.Представление), ВРег(Параметры.Поиск)) = 0 Тогда Продолжить; КонецЕсли; КонецЕсли; - НоваяСтрокаВариантОтчета = НастройкиОтчетовДерево.Строки.Добавить(); + НоваяСтрокаВариантОтчета = Параметры.НастройкиОтчетовДерево.Строки.Добавить(); НоваяСтрокаВариантОтчета.Настройка = ВариантОтчета.Представление; НоваяСтрокаВариантОтчета.Картинка = БиблиотекаКартинок.Отчет; НоваяСтрокаВариантОтчета.Ключи.Добавить(ВариантОтчета.КлючОбъекта + "/" + ВариантОтчета.КлючВарианта); @@ -1801,21 +1796,298 @@ КонецЦикла; - НастройкиОтчетовДерево.Строки.Сортировать("Настройка Возр", Истина); - Форма.ЗначениеВРеквизитФормы(НастройкиОтчетовДерево, "НастройкиОтчетов"); - Форма.ЗначениеВРеквизитФормы(ПользовательскиеВариантыОтчетов, "ТаблицаПользовательскихВариантовОтчетов"); + Параметры.НастройкиОтчетовДерево.Строки.Сортировать("Настройка Возр", Истина); КонецПроцедуры -Процедура ДобавитьНастройкиРабочегоСтолаИКомандногоИнтерфейса(Форма, ДеревоНастроек) +Процедура ЗаполнитьСписокНастроекВнешнегоВида(Параметры) - Если Не ПустаяСтрока(Форма.Поиск) Тогда - Если СтрНайти(ВРег(НСтр("ru = 'Командный интерфейс и начальная страница'")), ВРег(Форма.Поиск)) = 0 Тогда + Параметры.НастройкиВнешнегоВида.Строки.Очистить(); + + ТекущийОбъект = Неопределено; + НастройкиФорм = НастройкиВсехФорм(Параметры.ПользовательИнформационнойБазы); + + Для Каждого НастройкаФормы Из НастройкиФорм Цикл + ИмяОбъектаМетаданных = СтрРазделить(НастройкаФормы.Значение, ".", Ложь); + ПредставлениеОбъектаМетаданных = СтрРазделить(НастройкаФормы.Представление, ".", Ложь); + + Если Не ПустаяСтрока(Параметры.Поиск) Тогда + + Если СтрНайти(ВРег(НастройкаФормы.Представление), ВРег(Параметры.Поиск)) = 0 Тогда + Продолжить; + КонецЕсли; + + КонецЕсли; + + Если ИмяОбъектаМетаданных[0] = "ОбщаяФорма" Тогда + НоваяСтрокаОбщиеФормы = Параметры.НастройкиВнешнегоВида.Строки.Добавить(); + НоваяСтрокаОбщиеФормы.Настройка = НастройкаФормы.Представление; + НоваяСтрокаОбщиеФормы.Картинка = БиблиотекаКартинок.Форма; + ОбъединитьСпискиЗначений(НоваяСтрокаОбщиеФормы.Ключи, НастройкаФормы.СписокКлючей); + НоваяСтрокаОбщиеФормы.Тип = "НастройкаВнешнегоВида"; + НоваяСтрокаОбщиеФормы.ТипСтроки = "ОбщаяФорма" + ИмяОбъектаМетаданных[1]; + ИначеЕсли ИмяОбъектаМетаданных[0] = "ХранилищеНастроек" Тогда + НоваяСтрокаХранилищеНастроек = Параметры.НастройкиВнешнегоВида.Строки.Добавить(); + НоваяСтрокаХранилищеНастроек.Настройка = НастройкаФормы.Представление; + НоваяСтрокаХранилищеНастроек.Картинка = БиблиотекаКартинок.Форма; + ОбъединитьСпискиЗначений(НоваяСтрокаХранилищеНастроек.Ключи, НастройкаФормы.СписокКлючей); + НоваяСтрокаХранилищеНастроек.ТипСтроки = "ХранилищеНастроек" + ИмяОбъектаМетаданных[2]; + НоваяСтрокаХранилищеНастроек.Тип = "НастройкаВнешнегоВида"; + ИначеЕсли ПредставлениеОбъектаМетаданных[0] = НСтр("ru = 'Стандартные'") Тогда + + // Группа дерева настроек + Если ТекущийОбъект <> ПредставлениеОбъектаМетаданных[0] Тогда + НоваяСтрокаОбъектМетаданных = Параметры.НастройкиВнешнегоВида.Строки.Добавить(); + НоваяСтрокаОбъектМетаданных.Настройка = ПредставлениеОбъектаМетаданных[0]; + НоваяСтрокаОбъектМетаданных.Картинка = НастройкаФормы.Картинка; + НоваяСтрокаОбъектМетаданных.ТипСтроки = "Объект" + ИмяОбъектаМетаданных[1]; + НоваяСтрокаОбъектМетаданных.Тип = "НастройкаВнешнегоВида"; + КонецЕсли; + + // Элемент дерева настроек + НоваяСтрокаВнешнегоВидаФорм = НоваяСтрокаОбъектМетаданных.Строки.Добавить(); + НоваяСтрокаВнешнегоВидаФорм.Настройка = ПредставлениеОбъектаМетаданных[1]; + НоваяСтрокаВнешнегоВидаФорм.Картинка = БиблиотекаКартинок.Форма; + НоваяСтрокаВнешнегоВидаФорм.ТипСтроки = ИмяОбъектаМетаданных[1] + ИмяОбъектаМетаданных[2]; + НоваяСтрокаВнешнегоВидаФорм.Тип = "НастройкаВнешнегоВида"; + ОбъединитьСпискиЗначений(НоваяСтрокаВнешнегоВидаФорм.Ключи, НастройкаФормы.СписокКлючей); + ОбъединитьСпискиЗначений(НоваяСтрокаОбъектМетаданных.Ключи, НастройкаФормы.СписокКлючей); + + ТекущийОбъект = ПредставлениеОбъектаМетаданных[0]; + + Иначе + + // Группа дерева настроек + Если ТекущийОбъект <> ИмяОбъектаМетаданных[1] Тогда + НоваяСтрокаОбъектМетаданных = Параметры.НастройкиВнешнегоВида.Строки.Добавить(); + НоваяСтрокаОбъектМетаданных.Настройка = ПредставлениеОбъектаМетаданных[0]; + НоваяСтрокаОбъектМетаданных.Картинка = НастройкаФормы.Картинка; + НоваяСтрокаОбъектМетаданных.ТипСтроки = "Объект" + ИмяОбъектаМетаданных[1]; + НоваяСтрокаОбъектМетаданных.Тип = "НастройкаВнешнегоВида"; + КонецЕсли; + + // Элемент дерева настроек + Если ИмяОбъектаМетаданных.Количество() = 3 Тогда + ИмяФормы = ИмяОбъектаМетаданных[2]; + Иначе + ИмяФормы = ИмяОбъектаМетаданных[3]; + КонецЕсли; + + НоваяСтрокаВнешнегоВидаФорм = НоваяСтрокаОбъектМетаданных.Строки.Добавить(); + Если ПредставлениеОбъектаМетаданных.Количество() = 1 Тогда + НоваяСтрокаВнешнегоВидаФорм.Настройка = ПредставлениеОбъектаМетаданных[0]; + Иначе + НоваяСтрокаВнешнегоВидаФорм.Настройка = ПредставлениеОбъектаМетаданных[1]; + КонецЕсли; + НоваяСтрокаВнешнегоВидаФорм.Картинка = БиблиотекаКартинок.Форма; + НоваяСтрокаВнешнегоВидаФорм.ТипСтроки = ИмяОбъектаМетаданных[1] + ИмяФормы; + НоваяСтрокаВнешнегоВидаФорм.Тип = "НастройкаВнешнегоВида"; + ОбъединитьСпискиЗначений(НоваяСтрокаВнешнегоВидаФорм.Ключи, НастройкаФормы.СписокКлючей); + ОбъединитьСпискиЗначений(НоваяСтрокаОбъектМетаданных.Ключи, НастройкаФормы.СписокКлючей); + + ТекущийОбъект = ИмяОбъектаМетаданных[1]; + КонецЕсли; + + КонецЦикла; + + ДобавитьНастройкиРабочегоСтолаИКомандногоИнтерфейса(Параметры, Параметры.НастройкиВнешнегоВида); + + Параметры.НастройкиВнешнегоВида.Строки.Сортировать("Настройка Возр", Истина); + + Настройка = НСтр("ru = 'Командный интерфейс и начальная страница'"); + РабочийСтолИКомандныйИнтерфейс = Параметры.НастройкиВнешнегоВида.Строки.Найти(Настройка, "Настройка"); + + Если РабочийСтолИКомандныйИнтерфейс <> Неопределено Тогда + ИндексСтроки = Параметры.НастройкиВнешнегоВида.Строки.Индекс(РабочийСтолИКомандныйИнтерфейс); + Параметры.НастройкиВнешнегоВида.Строки.Сдвинуть(ИндексСтроки, -ИндексСтроки); + КонецЕсли; + + + +КонецПроцедуры + +Процедура ЗаполнитьСписокПрочихНастроек(Параметры) + + Параметры.ПрочиеНастройкиДерево.Строки.Очистить(); + Настройки = ЧтениеНастроекИзХранилища(ХранилищеОбщихНастроек, Параметры.ПользовательИнформационнойБазы); + Ключи = Новый СписокЗначений; + ПрочиеКлючи = Новый СписокЗначений; + + // Заполнение персональных настроек. + Для Каждого Настройка Из Настройки Цикл + Ключи.Добавить(Настройка.КлючОбъекта, Настройка.КлючНастроек); + КонецЦикла; + + ВыводитьНастройку = Истина; + Если Ключи.Количество() > 0 Тогда + + Если Не ПустаяСтрока(Параметры.Поиск) Тогда + Если СтрНайти(ВРег(НСтр("ru = 'Персональные настройки'")), ВРег(Параметры.Поиск)) = 0 Тогда + ВыводитьНастройку = Ложь; + КонецЕсли; + КонецЕсли; + + Если ВыводитьНастройку Тогда + Настройка = НСтр("ru = 'Персональные настройки'"); + ТипНастройки = "ПерсональныеНастройки"; + Картинка = БиблиотекаКартинок.СостояниеПользователя02; + ДобавитьСтрокуДерева(Параметры.ПрочиеНастройкиДерево, Настройка, Картинка, Ключи, ТипНастройки); + КонецЕсли; + + КонецЕсли; + + // Заполнение настроек избранного и печати. + Настройки = ЧтениеНастроекИзХранилища(ХранилищеСистемныхНастроек, Параметры.ПользовательИнформационнойБазы); + + Ключи.Очистить(); + ЕстьИзбранное = Ложь; + ЕстьНастройкиПечати = Ложь; + ОкончанияКлючей = КлючиПользовательскихНастроек(); + Для Каждого Настройка Из Настройки Цикл + + ИмяНастройки = СтрРазделить(Настройка.КлючОбъекта, "/", Ложь); + Если ИмяНастройки.Количество() = 1 Тогда + Продолжить; + КонецЕсли; + + Если ОкончанияКлючей.Найти(ИмяНастройки[1]) <> Неопределено Тогда + ПрочиеКлючи.Добавить(Настройка.КлючОбъекта, "Прочие"); + КонецЕсли; + + Если ИмяНастройки[1] = "ИзбранноеРаботыПользователя" Тогда + ЕстьИзбранное = Истина; + ИначеЕсли ИмяНастройки[1] = "НастройкиПечатиТабличногоДокумента" Тогда + Ключи.Добавить(Настройка.КлючОбъекта, "Прочие"); + ЕстьНастройкиПечати = Истина; + КонецЕсли; + + КонецЦикла; + + // Добавление строки дерева "Настройки печати". + ВыводитьНастройку = Истина; + Если Не ПустаяСтрока(Параметры.Поиск) Тогда + + Если СтрНайти(ВРег(НСтр("ru = 'Настройки печати табличных документов'")), ВРег(Параметры.Поиск)) = 0 Тогда + ВыводитьНастройку = Ложь; + КонецЕсли; + + КонецЕсли; + + Если ЕстьНастройкиПечати + И ВыводитьНастройку Тогда + Настройка = НСтр("ru = 'Настройки печати табличных документов'"); + Картинка = БиблиотекаКартинок.Печать; + ТипНастройки = "ПрочаяНастройка"; + ДобавитьСтрокуДерева(Параметры.ПрочиеНастройкиДерево, Настройка, Картинка, Ключи, ТипНастройки); + КонецЕсли; + + // Добавление строки дерева "Избранное". + ВыводитьНастройку = Истина; + Если Не ПустаяСтрока(Параметры.Поиск) Тогда + + Если СтрНайти(ВРег(НСтр("ru = 'Избранное'")), ВРег(Параметры.Поиск)) = 0 Тогда + ВыводитьНастройку = Ложь; + КонецЕсли; + + КонецЕсли; + + Если ЕстьИзбранное + И ВыводитьНастройку Тогда + + Настройка = НСтр("ru = 'Избранное'"); + Картинка = БиблиотекаКартинок.ДобавитьВИзбранное; + Ключи.Очистить(); + Ключи.Добавить("Общее/ИзбранноеРаботыПользователя", "Прочие"); + ТипНастройки = "ПрочаяНастройка"; + ДобавитьСтрокуДерева(Параметры.ПрочиеНастройкиДерево, Настройка, Картинка, Ключи, ТипНастройки); + + КонецЕсли; + + // Добавление прочих настроек, предусмотренных в конфигурации. + ПрочиеНастройки = Новый Структура; + СведенияОПользователе = Новый Структура; + СведенияОПользователе.Вставить("ПользовательСсылка", Параметры.ПользовательСсылка); + СведенияОПользователе.Вставить("ИмяПользователяИнформационнойБазы", Параметры.ПользовательИнформационнойБазы); + + ПользователиСлужебный.ПриПолученииПрочихНастроек(СведенияОПользователе, ПрочиеНастройки); + Ключи = Новый СписокЗначений; + + Если ПрочиеНастройки <> Неопределено Тогда + + Для Каждого ПрочаяНастройка Из ПрочиеНастройки Цикл + + Результат = ПрочаяНастройка.Значение; + Если Результат.СписокНастроек.Количество() <> 0 Тогда + + ВыводитьНастройку = Истина; + Если Не ПустаяСтрока(Параметры.Поиск) Тогда + + Если СтрНайти(ВРег(Результат.НазваниеНастройки), ВРег(Параметры.Поиск)) = 0 Тогда + ВыводитьНастройку = Ложь; + КонецЕсли; + + КонецЕсли; + + Если ВыводитьНастройку Тогда + + Если ПрочаяНастройка.Ключ = "НастройкаБыстрогоДоступа" Тогда + Для Каждого Элемент Из Результат.СписокНастроек Цикл + ЗначениеНастройки = Элемент[0]; + ИдентификаторНастройки = Элемент[1]; + Ключи.Добавить(ЗначениеНастройки, ИдентификаторНастройки); + КонецЦикла; + Иначе + Ключи = Результат.СписокНастроек.Скопировать(); + КонецЕсли; + + Настройка = Результат.НазваниеНастройки; + Если Результат.КартинкаНастройки = "" Тогда + Картинка = БиблиотекаКартинок.ПрочиеПользовательскиеНастройки; + Иначе + Картинка = Результат.КартинкаНастройки; + КонецЕсли; + Тип = "ПрочаяПользовательскаяНастройка"; + ТипНастройки = ПрочаяНастройка.Ключ; + ДобавитьСтрокуДерева(Параметры.ПрочиеНастройкиДерево, Настройка, Картинка, Ключи, Тип, ТипНастройки); + Ключи.Очистить(); + + КонецЕсли; + + КонецЕсли; + + КонецЦикла; + + КонецЕсли; + + // Прочие настройки, не попавшие в другие разделы. + ВыводитьНастройку = Истина; + Если Не ПустаяСтрока(Параметры.Поиск) Тогда + + Если СтрНайти(ВРег(НСтр("ru = 'Прочие настройки'")), ВРег(Параметры.Поиск)) = 0 Тогда + ВыводитьНастройку = Ложь; + КонецЕсли; + + КонецЕсли; + + Если ПрочиеКлючи.Количество() <> 0 + И ВыводитьНастройку Тогда + Настройка = НСтр("ru = 'Прочие настройки'"); + Картинка = БиблиотекаКартинок.ПрочиеПользовательскиеНастройки; + ТипНастройки = "ПрочаяНастройка"; + ДобавитьСтрокуДерева(Параметры.ПрочиеНастройкиДерево, Настройка, Картинка, ПрочиеКлючи, ТипНастройки); + КонецЕсли; + +КонецПроцедуры + +Процедура ДобавитьНастройкиРабочегоСтолаИКомандногоИнтерфейса(Параметры, ДеревоНастроек) + + Если Не ПустаяСтрока(Параметры.Поиск) Тогда + Если СтрНайти(ВРег(НСтр("ru = 'Командный интерфейс и начальная страница'")), ВРег(Параметры.Поиск)) = 0 Тогда Возврат; КонецЕсли; КонецЕсли; - Настройки = ЧтениеНастроекИзХранилища(ХранилищеСистемныхНастроек, Форма.ПользовательИнформационнойБазы); + Настройки = ЧтениеНастроекИзХранилища(ХранилищеСистемныхНастроек, Параметры.ПользовательИнформационнойБазы); КлючиНастроекРабочегоСтола = Новый СписокЗначений; КлючиНастроекИнтерфейса = Новый СписокЗначений; КлючиВсехНастроек = Новый СписокЗначений; @@ -1902,295 +2174,12 @@ КонецПроцедуры -Процедура ЗаполнитьСписокНастроекВнешнегоВида(Форма) - - Форма.ВнешнийВид.ПолучитьЭлементы().Очистить(); - НастройкиВнешнегоВида = Форма.РеквизитФормыВЗначение("ВнешнийВид"); - - ТекущийОбъект = Неопределено; - НастройкиФорм = НастройкиВсехФорм(Форма.ПользовательИнформационнойБазы); - - Для Каждого НастройкаФормы Из НастройкиФорм Цикл - ИмяОбъектаМетаданных = СтрРазделить(НастройкаФормы.Значение, ".", Ложь); - ПредставлениеОбъектаМетаданных = СтрРазделить(НастройкаФормы.Представление, ".", Ложь); - - Если Не ПустаяСтрока(Форма.Поиск) Тогда - - Если СтрНайти(ВРег(НастройкаФормы.Представление), ВРег(Форма.Поиск)) = 0 Тогда - Продолжить; - КонецЕсли; - - КонецЕсли; - - Если ИмяОбъектаМетаданных[0] = "ОбщаяФорма" Тогда - НоваяСтрокаОбщиеФормы = НастройкиВнешнегоВида.Строки.Добавить(); - НоваяСтрокаОбщиеФормы.Настройка = НастройкаФормы.Представление; - НоваяСтрокаОбщиеФормы.Картинка = БиблиотекаКартинок.Форма; - ОбъединитьСпискиЗначений(НоваяСтрокаОбщиеФормы.Ключи, НастройкаФормы.СписокКлючей); - НоваяСтрокаОбщиеФормы.Тип = "НастройкаВнешнегоВида"; - НоваяСтрокаОбщиеФормы.ТипСтроки = "ОбщаяФорма" + ИмяОбъектаМетаданных[1]; - ИначеЕсли ИмяОбъектаМетаданных[0] = "ХранилищеНастроек" Тогда - НоваяСтрокаХранилищеНастроек = НастройкиВнешнегоВида.Строки.Добавить(); - НоваяСтрокаХранилищеНастроек.Настройка = НастройкаФормы.Представление; - НоваяСтрокаХранилищеНастроек.Картинка = БиблиотекаКартинок.Форма; - ОбъединитьСпискиЗначений(НоваяСтрокаХранилищеНастроек.Ключи, НастройкаФормы.СписокКлючей); - НоваяСтрокаХранилищеНастроек.ТипСтроки = "ХранилищеНастроек" + ИмяОбъектаМетаданных[2]; - НоваяСтрокаХранилищеНастроек.Тип = "НастройкаВнешнегоВида"; - ИначеЕсли ПредставлениеОбъектаМетаданных[0] = НСтр("ru = 'Стандартные'") Тогда - - // Группа дерева настроек - Если ТекущийОбъект <> ПредставлениеОбъектаМетаданных[0] Тогда - НоваяСтрокаОбъектМетаданных = НастройкиВнешнегоВида.Строки.Добавить(); - НоваяСтрокаОбъектМетаданных.Настройка = ПредставлениеОбъектаМетаданных[0]; - НоваяСтрокаОбъектМетаданных.Картинка = НастройкаФормы.Картинка; - НоваяСтрокаОбъектМетаданных.ТипСтроки = "Объект" + ИмяОбъектаМетаданных[1]; - НоваяСтрокаОбъектМетаданных.Тип = "НастройкаВнешнегоВида"; - КонецЕсли; - - // Элемент дерева настроек - НоваяСтрокаВнешнегоВидаФорм = НоваяСтрокаОбъектМетаданных.Строки.Добавить(); - НоваяСтрокаВнешнегоВидаФорм.Настройка = ПредставлениеОбъектаМетаданных[1]; - НоваяСтрокаВнешнегоВидаФорм.Картинка = БиблиотекаКартинок.Форма; - НоваяСтрокаВнешнегоВидаФорм.ТипСтроки = ИмяОбъектаМетаданных[1] + ИмяОбъектаМетаданных[2]; - НоваяСтрокаВнешнегоВидаФорм.Тип = "НастройкаВнешнегоВида"; - ОбъединитьСпискиЗначений(НоваяСтрокаВнешнегоВидаФорм.Ключи, НастройкаФормы.СписокКлючей); - ОбъединитьСпискиЗначений(НоваяСтрокаОбъектМетаданных.Ключи, НастройкаФормы.СписокКлючей); - - ТекущийОбъект = ПредставлениеОбъектаМетаданных[0]; - - Иначе - - // Группа дерева настроек - Если ТекущийОбъект <> ИмяОбъектаМетаданных[1] Тогда - НоваяСтрокаОбъектМетаданных = НастройкиВнешнегоВида.Строки.Добавить(); - НоваяСтрокаОбъектМетаданных.Настройка = ПредставлениеОбъектаМетаданных[0]; - НоваяСтрокаОбъектМетаданных.Картинка = НастройкаФормы.Картинка; - НоваяСтрокаОбъектМетаданных.ТипСтроки = "Объект" + ИмяОбъектаМетаданных[1]; - НоваяСтрокаОбъектМетаданных.Тип = "НастройкаВнешнегоВида"; - КонецЕсли; - - // Элемент дерева настроек - Если ИмяОбъектаМетаданных.Количество() = 3 Тогда - ИмяФормы = ИмяОбъектаМетаданных[2]; - Иначе - ИмяФормы = ИмяОбъектаМетаданных[3]; - КонецЕсли; - - НоваяСтрокаВнешнегоВидаФорм = НоваяСтрокаОбъектМетаданных.Строки.Добавить(); - Если ПредставлениеОбъектаМетаданных.Количество() = 1 Тогда - НоваяСтрокаВнешнегоВидаФорм.Настройка = ПредставлениеОбъектаМетаданных[0]; - Иначе - НоваяСтрокаВнешнегоВидаФорм.Настройка = ПредставлениеОбъектаМетаданных[1]; - КонецЕсли; - НоваяСтрокаВнешнегоВидаФорм.Картинка = БиблиотекаКартинок.Форма; - НоваяСтрокаВнешнегоВидаФорм.ТипСтроки = ИмяОбъектаМетаданных[1] + ИмяФормы; - НоваяСтрокаВнешнегоВидаФорм.Тип = "НастройкаВнешнегоВида"; - ОбъединитьСпискиЗначений(НоваяСтрокаВнешнегоВидаФорм.Ключи, НастройкаФормы.СписокКлючей); - ОбъединитьСпискиЗначений(НоваяСтрокаОбъектМетаданных.Ключи, НастройкаФормы.СписокКлючей); - - ТекущийОбъект = ИмяОбъектаМетаданных[1]; - КонецЕсли; - - КонецЦикла; - - ДобавитьНастройкиРабочегоСтолаИКомандногоИнтерфейса(Форма, НастройкиВнешнегоВида); - - НастройкиВнешнегоВида.Строки.Сортировать("Настройка Возр", Истина); - - Настройка = НСтр("ru = 'Командный интерфейс и начальная страница'"); - РабочийСтолИКомандныйИнтерфейс = НастройкиВнешнегоВида.Строки.Найти(Настройка, "Настройка"); - - Если РабочийСтолИКомандныйИнтерфейс <> Неопределено Тогда - ИндексСтроки = НастройкиВнешнегоВида.Строки.Индекс(РабочийСтолИКомандныйИнтерфейс); - НастройкиВнешнегоВида.Строки.Сдвинуть(ИндексСтроки, -ИндексСтроки); - КонецЕсли; - - Форма.ЗначениеВРеквизитФормы(НастройкиВнешнегоВида, "ВнешнийВид"); - -КонецПроцедуры - Процедура ОбъединитьСпискиЗначений(СписокПриемник, СписокИсточник) Для Каждого Элемент Из СписокИсточник Цикл ЗаполнитьЗначенияСвойств(СписокПриемник.Добавить(), Элемент); КонецЦикла; КонецПроцедуры -Процедура ЗаполнитьСписокПрочихНастроек(Форма) - - Форма.ПрочиеНастройки.ПолучитьЭлементы().Очистить(); - ПрочиеНастройкиДерево = Форма.РеквизитФормыВЗначение("ПрочиеНастройки"); - Настройки = ЧтениеНастроекИзХранилища(ХранилищеОбщихНастроек, Форма.ПользовательИнформационнойБазы); - Ключи = Новый СписокЗначений; - ПрочиеКлючи = Новый СписокЗначений; - - // Заполнение персональных настроек. - Для Каждого Настройка Из Настройки Цикл - Ключи.Добавить(Настройка.КлючОбъекта, Настройка.КлючНастроек); - КонецЦикла; - - ВыводитьНастройку = Истина; - Если Ключи.Количество() > 0 Тогда - - Если Не ПустаяСтрока(Форма.Поиск) Тогда - Если СтрНайти(ВРег(НСтр("ru='Персональные настройки'")), ВРег(Форма.Поиск)) = 0 Тогда - ВыводитьНастройку = Ложь; - КонецЕсли; - КонецЕсли; - - Если ВыводитьНастройку Тогда - Настройка = НСтр("ru='Персональные настройки'"); - ТипНастройки = "ПерсональныеНастройки"; - Картинка = БиблиотекаКартинок.СостояниеПользователя02; - ДобавитьСтрокуДерева(ПрочиеНастройкиДерево, Настройка, Картинка, Ключи, ТипНастройки); - КонецЕсли; - - КонецЕсли; - - // Заполнение настроек избранного и печати. - Настройки = ЧтениеНастроекИзХранилища(ХранилищеСистемныхНастроек, Форма.ПользовательИнформационнойБазы); - - Ключи.Очистить(); - ЕстьИзбранное = Ложь; - ЕстьНастройкиПечати = Ложь; - ОкончанияКлючей = КлючиПользовательскихНастроек(); - Для Каждого Настройка Из Настройки Цикл - - ИмяНастройки = СтрРазделить(Настройка.КлючОбъекта, "/", Ложь); - Если ИмяНастройки.Количество() = 1 Тогда - Продолжить; - КонецЕсли; - - Если ОкончанияКлючей.Найти(ИмяНастройки[1]) <> Неопределено Тогда - ПрочиеКлючи.Добавить(Настройка.КлючОбъекта, "Прочие"); - КонецЕсли; - - Если ИмяНастройки[1] = "ИзбранноеРаботыПользователя" Тогда - ЕстьИзбранное = Истина; - ИначеЕсли ИмяНастройки[1] = "НастройкиПечатиТабличногоДокумента" Тогда - Ключи.Добавить(Настройка.КлючОбъекта, "Прочие"); - ЕстьНастройкиПечати = Истина; - КонецЕсли; - - КонецЦикла; - - // Добавление строки дерева "Настройки печати". - ВыводитьНастройку = Истина; - Если Не ПустаяСтрока(Форма.Поиск) Тогда - - Если СтрНайти(ВРег(НСтр("ru='Настройки печати табличных документов'")), ВРег(Форма.Поиск)) = 0 Тогда - ВыводитьНастройку = Ложь; - КонецЕсли; - - КонецЕсли; - - Если ЕстьНастройкиПечати - И ВыводитьНастройку Тогда - Настройка = НСтр("ru='Настройки печати табличных документов'"); - Картинка = БиблиотекаКартинок.Печать; - ТипНастройки = "ПрочаяНастройка"; - ДобавитьСтрокуДерева(ПрочиеНастройкиДерево, Настройка, Картинка, Ключи, ТипНастройки); - КонецЕсли; - - // Добавление строки дерева "Избранное". - ВыводитьНастройку = Истина; - Если Не ПустаяСтрока(Форма.Поиск) Тогда - - Если СтрНайти(ВРег(НСтр("ru='Избранное'")), ВРег(Форма.Поиск)) = 0 Тогда - ВыводитьНастройку = Ложь; - КонецЕсли; - - КонецЕсли; - - Если ЕстьИзбранное - И ВыводитьНастройку Тогда - - Настройка = НСтр("ru='Избранное'"); - Картинка = БиблиотекаКартинок.ДобавитьВИзбранное; - Ключи.Очистить(); - Ключи.Добавить("Общее/ИзбранноеРаботыПользователя", "Прочие"); - ТипНастройки = "ПрочаяНастройка"; - ДобавитьСтрокуДерева(ПрочиеНастройкиДерево, Настройка, Картинка, Ключи, ТипНастройки); - - КонецЕсли; - - // Добавление прочих настроек, предусмотренных в конфигурации. - ПрочиеНастройки = Новый Структура; - СведенияОПользователе = Новый Структура; - СведенияОПользователе.Вставить("ПользовательСсылка", Форма.ПользовательСсылка); - СведенияОПользователе.Вставить("ИмяПользователяИнформационнойБазы", Форма.ПользовательИнформационнойБазы); - - ПользователиСлужебный.ПриПолученииПрочихНастроек(СведенияОПользователе, ПрочиеНастройки); - Ключи = Новый СписокЗначений; - - Если ПрочиеНастройки <> Неопределено Тогда - - Для Каждого ПрочаяНастройка Из ПрочиеНастройки Цикл - - Результат = ПрочаяНастройка.Значение; - Если Результат.СписокНастроек.Количество() <> 0 Тогда - - ВыводитьНастройку = Истина; - Если Не ПустаяСтрока(Форма.Поиск) Тогда - - Если СтрНайти(ВРег(Результат.НазваниеНастройки), ВРег(Форма.Поиск)) = 0 Тогда - ВыводитьНастройку = Ложь; - КонецЕсли; - - КонецЕсли; - - Если ВыводитьНастройку Тогда - - Если ПрочаяНастройка.Ключ = "НастройкаБыстрогоДоступа" Тогда - Для Каждого Элемент Из Результат.СписокНастроек Цикл - ЗначениеНастройки = Элемент[0]; - ИдентификаторНастройки = Элемент[1]; - Ключи.Добавить(ЗначениеНастройки, ИдентификаторНастройки); - КонецЦикла; - Иначе - Ключи = Результат.СписокНастроек.Скопировать(); - КонецЕсли; - - Настройка = Результат.НазваниеНастройки; - Если Результат.КартинкаНастройки = "" Тогда - Картинка = БиблиотекаКартинок.ПрочиеПользовательскиеНастройки; - Иначе - Картинка = Результат.КартинкаНастройки; - КонецЕсли; - Тип = "ПрочаяПользовательскаяНастройка"; - ТипНастройки = ПрочаяНастройка.Ключ; - ДобавитьСтрокуДерева(ПрочиеНастройкиДерево, Настройка, Картинка, Ключи, Тип, ТипНастройки); - Ключи.Очистить(); - - КонецЕсли; - - КонецЕсли; - - КонецЦикла; - - КонецЕсли; - - // Прочие настройки, не попавшие в другие разделы. - ВыводитьНастройку = Истина; - Если Не ПустаяСтрока(Форма.Поиск) Тогда - - Если СтрНайти(ВРег(НСтр("ru='Прочие настройки'")), ВРег(Форма.Поиск)) = 0 Тогда - ВыводитьНастройку = Ложь; - КонецЕсли; - - КонецЕсли; - - Если ПрочиеКлючи.Количество() <> 0 - И ВыводитьНастройку Тогда - Настройка = НСтр("ru='Прочие настройки'"); - Картинка = БиблиотекаКартинок.ПрочиеПользовательскиеНастройки; - ТипНастройки = "ПрочаяНастройка"; - ДобавитьСтрокуДерева(ПрочиеНастройкиДерево, Настройка, Картинка, ПрочиеКлючи, ТипНастройки); - КонецЕсли; - - Форма.ЗначениеВРеквизитФормы(ПрочиеНастройкиДерево, "ПрочиеНастройки"); - -КонецПроцедуры - Процедура ДобавитьСтрокуДерева(ДеревоЗначений, Настройка, Картинка, Ключи, Тип = "", ТипСтроки = "") НоваяСтрока = ДеревоЗначений.Строки.Добавить(); diff --git a/SSL/src/DataProcessors/НастройкиПользователей/Templates/МакетОтчета/Template.mxlx b/SSL/src/DataProcessors/НастройкиПользователей/Templates/МакетОтчета/Template.mxlx index 460fd02f6..9cd1d3e9d 100644 --- a/SSL/src/DataProcessors/НастройкиПользователей/Templates/МакетОтчета/Template.mxlx +++ b/SSL/src/DataProcessors/НастройкиПользователей/Templates/МакетОтчета/Template.mxlx @@ -74,7 +74,7 @@ -1 - + 509 diff --git a/SSL/src/DataProcessors/НерекомендуемаяВерсияПлатформы/Forms/НерекомендуемаяВерсияПлатформы/Form.form b/SSL/src/DataProcessors/НерекомендуемаяВерсияПлатформы/Forms/НерекомендуемаяВерсияПлатформы/Form.form index 3802d2fc4..793119714 100644 --- a/SSL/src/DataProcessors/НерекомендуемаяВерсияПлатформы/Forms/НерекомендуемаяВерсияПлатформы/Form.form +++ b/SSL/src/DataProcessors/НерекомендуемаяВерсияПлатформы/Forms/НерекомендуемаяВерсияПлатформы/Form.form @@ -34,9 +34,7 @@ 17 true - 5 true - 2 true @@ -79,11 +77,8 @@ true Label - true 2 true - false - false Left Top @@ -117,10 +112,7 @@ true Label - true true - true - false System.DefaultGUIFont 10.0 @@ -190,11 +182,8 @@ true Label - true 5 true - true - true Left Top @@ -228,7 +217,6 @@ true Label - true true @@ -267,7 +255,6 @@ true Label - true 2 true @@ -399,7 +386,6 @@ OnClose ПриЗакрытии - 80 LockWholeInterface true true diff --git a/SSL/src/DataProcessors/НерекомендуемаяВерсияПлатформы/Forms/НерекомендуемаяВерсияПлатформы/Module.bsl b/SSL/src/DataProcessors/НерекомендуемаяВерсияПлатформы/Forms/НерекомендуемаяВерсияПлатформы/Module.bsl index 52380139c..3f83f5cd1 100644 --- a/SSL/src/DataProcessors/НерекомендуемаяВерсияПлатформы/Forms/НерекомендуемаяВерсияПлатформы/Module.bsl +++ b/SSL/src/DataProcessors/НерекомендуемаяВерсияПлатформы/Forms/НерекомендуемаяВерсияПлатформы/Module.bsl @@ -34,7 +34,7 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) Если Не ДействиеОпределено Тогда ДействиеОпределено = Истина; diff --git a/SSL/src/DataProcessors/НерекомендуемаяВерсияПлатформы/Forms/ПорядокОбновленияПлатформы/Form.form b/SSL/src/DataProcessors/НерекомендуемаяВерсияПлатформы/Forms/ПорядокОбновленияПлатформы/Form.form index a5a2e8f58..cb93aedd0 100644 --- a/SSL/src/DataProcessors/НерекомендуемаяВерсияПлатформы/Forms/ПорядокОбновленияПлатформы/Form.form +++ b/SSL/src/DataProcessors/НерекомендуемаяВерсияПлатформы/Forms/ПорядокОбновленияПлатформы/Form.form @@ -121,8 +121,6 @@ OnCreateAtServer ПриСозданииНаСервере - 100 - 20 LockOwner true true diff --git a/SSL/src/DataProcessors/ОценкаПроизводительности/Commands/ЭкспортЗамеровПроизводительности/CommandModule.bsl b/SSL/src/DataProcessors/ОценкаПроизводительности/Commands/ЭкспортЗамеровПроизводительности/CommandModule.bsl new file mode 100644 index 000000000..114e6116d --- /dev/null +++ b/SSL/src/DataProcessors/ОценкаПроизводительности/Commands/ЭкспортЗамеровПроизводительности/CommandModule.bsl @@ -0,0 +1,8 @@ +#Область ОбработчикиСобытий + +&НаКлиенте +Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) + ОткрытьФорму("Обработка.ОценкаПроизводительности.Форма.ЭкспортЗамеровПроизводительности", , ЭтотОбъект,,,,,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/АвтоматическийЭкспортЗамеровПроизводительности/Form.form b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/АвтоматическийЭкспортЗамеровПроизводительности/Form.form index 78a64c32e..403b086a5 100644 --- a/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/АвтоматическийЭкспортЗамеровПроизводительности/Form.form +++ b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/АвтоматическийЭкспортЗамеровПроизводительности/Form.form @@ -1,5 +1,5 @@ - + НастройкиВыполненияЗамеров 40 @@ -77,44 +77,6 @@ true - - КонстантыНаборОценкаПроизводительностиЭкспортВсехКлючевыхОпераций - 49 - - <key>ru</key> - <value>Экспорт всех ключевых операций</value> - - true - true - - true - - - КонстантыНабор.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций - - Right - - КонстантыНаборОценкаПроизводительностиЭкспортВсехКлючевыхОперацийРасширеннаяПодсказка - 51 - Label - true - true - - Left - - - - КонстантыНаборОценкаПроизводительностиЭкспортВсехКлючевыхОперацийКонтекстноеМеню - 50 - true - - CheckBoxField - Enter - true - Left - true - - true true @@ -165,6 +127,10 @@ КонстантыНабор.ОценкаПроизводительностиПериодЗаписи + + OnChange + КонстантыНаборОценкаПроизводительностиПериодЗаписиПриИзменении + КонстантыНаборОценкаПроизводительностиПериодЗаписиРасширеннаяПодсказка 60 @@ -223,30 +189,22 @@ true Label - true true Left - - КонстантыНаборДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC - 42 - - <key>ru</key> - <value>Дата последнего выгруженного замера в UTC</value> - + + ДекорацияПередЗамеровВПакете + 64 true true true - - КонстантыНабор.ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC - - КонстантыНаборДатаПоследнейВыгрузкиЗамеровПроизводительностиUTCРасширеннаяПодсказка - 44 + ДекорацияПередЗамеровВПакетеРасширеннаяПодсказка + 66 Label true true @@ -255,12 +213,53 @@ - КонстантыНаборДатаПоследнейВыгрузкиЗамеровПроизводительностиUTCКонтекстноеМеню - 43 + ДекорацияПередЗамеровВПакетеКонтекстноеМеню + 65 + true + + Label + 1 + true + true + + Left + + + + КонстантыНаборКоличествоЗамеровВПакетеЭкспорта + 61 + + <key>ru</key> + <value>Замеров в пакете</value> + + true + true + + true + + + КонстантыНабор.КоличествоЗамеровВПакетеЭкспорта + + + OnChange + КонстантыНаборКоличествоЗамеровВПакетеЭкспортаПриИзменении + + + КонстантыНаборКоличествоЗамеровВПакетеЭкспортаРасширеннаяПодсказка + 63 + Label + true + true + + Left + + + + КонстантыНаборКоличествоЗамеровВПакетеЭкспортаКонтекстноеМеню + 62 true InputField - true Enter true Left @@ -268,6 +267,7 @@ true true + true true true true @@ -300,6 +300,7 @@ UsualGroup + None Auto true true @@ -307,6 +308,53 @@ Auto + + КонстантыНаборДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC + 42 + + <key>ru</key> + <value>Дата последнего выгруженного замера в UTC</value> + + true + true + + true + + + КонстантыНабор.ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC + + + КонстантыНаборДатаПоследнейВыгрузкиЗамеровПроизводительностиUTCРасширеннаяПодсказка + 44 + Label + true + true + + Left + + + + КонстантыНаборДатаПоследнейВыгрузкиЗамеровПроизводительностиUTCКонтекстноеМеню + 43 + true + + InputField + true + Enter + true + Left + true + + true + true + true + true + true + true + true + Normal + + true true @@ -333,6 +381,161 @@ UsualGroup Vertical + Auto + WeakSeparation + true + true + auto + DontUse + Auto + + + + НастройкиУдаленияЗамеров + 67 + + НастройкиУдаленияЗамеровПериод + 72 + + КонстантыНаборПериодХраненияЗамеров + 69 + + <key>ru</key> + <value>Удалять через</value> + + true + true + + true + + + КонстантыНабор.ПериодХраненияЗамеров + + + OnChange + КонстантыНаборПериодХраненияЗамеровПриИзменении + + + КонстантыНаборПериодХраненияЗамеровРасширеннаяПодсказка + 71 + Label + true + true + + Left + + + + КонстантыНаборПериодХраненияЗамеровКонтекстноеМеню + 70 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + ДекорацияДней + 74 + + <key>ru</key> + <value>дн.</value> + + true + true + + true + + + ДекорацияДнейРасширеннаяПодсказка + 76 + Label + true + true + + Left + + + + ДекорацияДнейКонтекстноеМеню + 75 + true + + Label + true + true + + Left + + + true + true + + true + + + <key>ru</key> + <value>Настройки удаления замеров период</value> + + + ru + Настройки удаления замеров период + + + НастройкиУдаленияЗамеровПериодРасширеннаяПодсказка + 73 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Настройки удаления замеров</value> + + + ru + Настройки удаления замеров + + + НастройкиУдаленияЗамеровРасширеннаяПодсказка + 68 + Label + true + true + + Left + + + UsualGroup + Auto WeakSeparation true @@ -468,7 +671,6 @@ true true auto - Auto Auto @@ -593,7 +795,6 @@ true true auto - Auto Auto @@ -655,16 +856,6 @@ true true UserCmds - - 51 - 102 - 255 - - - 179 - 3 - 3 - Auto @@ -831,6 +1022,23 @@ true + + ЕстьБСП + + <key>ru</key> + <value>Есть БСП</value> + + 7 + + Boolean + + + true + + + true + + НастроитьРасписаниеЭкспорта diff --git a/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/АвтоматическийЭкспортЗамеровПроизводительности/Module.bsl b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/АвтоматическийЭкспортЗамеровПроизводительности/Module.bsl index bb01aae0a..3384adde7 100644 --- a/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/АвтоматическийЭкспортЗамеровПроизводительности/Module.bsl +++ b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/АвтоматическийЭкспортЗамеровПроизводительности/Module.bsl @@ -10,15 +10,23 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + Если НЕ ОценкаПроизводительностиСлужебный.ПодсистемаСуществует("СтандартныеПодсистемы.БазоваяФункциональность") Тогда + ЭтаФорма.Элементы.ЛокальныйКаталогЭкспорта.КнопкаВыбора = Ложь; + ЕстьБСП = Ложь; + Иначе + ЕстьБСП = Истина; + КонецЕсли; + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; КонстантыНабор.ВыполнятьЗамерыПроизводительности = Константы.ВыполнятьЗамерыПроизводительности.Получить(); КонстантыНабор.ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC = Константы.ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC.Получить(); - КонстантыНабор.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций = Константы.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций.Получить(); - - КонстантыНабор.ОценкаПроизводительностиПериодЗаписи = ОценкаПроизводительностиВызовСервера.ПериодЗаписи(); + + КонстантыНабор.ОценкаПроизводительностиПериодЗаписи = ОценкаПроизводительности.ПериодЗаписи(); + КонстантыНабор.КоличествоЗамеровВПакетеЭкспорта = Константы.КоличествоЗамеровВПакетеЭкспорта.Получить(); + КонстантыНабор.ПериодХраненияЗамеров = Константы.ПериодХраненияЗамеров.Получить(); КаталогиЭкспорта = ОценкаПроизводительностиСлужебный.КаталогиЭкспортаОценкиПроизводительности(); Если ТипЗнч(КаталогиЭкспорта) <> Тип("Структура") @@ -37,22 +45,34 @@ &НаКлиенте Процедура ВыполнятьЭкспортПриИзменении(Элемент) + ЭкспортРазрешен = ВыполнятьЭкспорт; ВыполнятьЭкспортВЛокальныйКаталог = ЭкспортРазрешен; ВыполнятьЭкспортНаFTP = ЭкспортРазрешен; + + Модифицированность = Истина; + КонецПроцедуры &НаКлиенте Процедура ВыполнятьЭкспортВКаталогПриИзменении(Элемент) + ВыполнятьЭкспорт = ВыполнятьЭкспортВЛокальныйКаталог ИЛИ ВыполнятьЭкспортНаFTP; + Модифицированность = Истина; + КонецПроцедуры &НаКлиенте Процедура ЛокальныйКаталогФайловЭкспортаНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) - ОписаниеОповещения = Новый ОписаниеОповещения("ВыбратьКаталогЭкспортаПредложено", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьВопросОбУстановкеРасширенияРаботыСФайлами(ОписаниеОповещения); - + Если ЕстьБСП Тогда + ОписаниеОповещения = Новый ОписаниеОповещения("ВыбратьКаталогЭкспортаПредложено", ЭтотОбъект); + МодульОбщегоНазначения = Вычислить("ОбщегоНазначенияКлиент"); + Если ТипЗнч(МодульОбщегоНазначения) = Тип("ОбщийМодуль") Тогда + МодульОбщегоНазначения.ПоказатьВопросОбУстановкеРасширенияРаботыСФайлами(ОписаниеОповещения); + КонецЕсли; + КонецЕсли; + КонецПроцедуры &НаСервере @@ -68,7 +88,7 @@ Если Выполнять И ПустаяСтрока(СокрЛП(ЭтотОбъект[ПутьЭлемент.ПутьКДанным])) Тогда СообщениеТекст = НСтр("ru = 'Поле ""%1"" не заполнено'"); СообщениеТекст = СтрЗаменить(СообщениеТекст, "%1", ПутьЭлемент.Заголовок); - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( + ОценкаПроизводительностиКлиентСервер.СообщитьПользователю( СообщениеТекст, , ПутьЭлемент.Имя, @@ -96,8 +116,10 @@ УстановитьИспользованиеРегламентногоЗадания(ВыполнятьЭкспорт); Константы.ВыполнятьЗамерыПроизводительности.Установить(КонстантыНабор.ВыполнятьЗамерыПроизводительности); - Константы.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций.Установить(КонстантыНабор.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций); Константы.ОценкаПроизводительностиПериодЗаписи.Установить(КонстантыНабор.ОценкаПроизводительностиПериодЗаписи); + Константы.КоличествоЗамеровВПакетеЭкспорта.Установить(КонстантыНабор.КоличествоЗамеровВПакетеЭкспорта); + Константы.ПериодХраненияЗамеров.Установить(КонстантыНабор.ПериодХраненияЗамеров); + Модифицированность = Ложь; КонецПроцедуры @@ -106,6 +128,7 @@ Процедура ЛокальныйКаталогЭкспортаПриИзменении(Элемент) ВнешниеРесурсыРазрешены = Ложь; + Модифицированность = Истина; КонецПроцедуры @@ -113,6 +136,7 @@ Процедура FTPКаталогЭкспортаПриИзменении(Элемент) ВнешниеРесурсыРазрешены = Ложь; + Модифицированность = Истина; КонецПроцедуры @@ -153,7 +177,7 @@ КонецПроцедуры -// Изменяет каталог экспорта данных +// Изменяет каталог экспорта данных. // // Параметры: // КаталогЭкспорта - Строка, новый каталог экспорта. @@ -174,7 +198,7 @@ КонецПроцедуры -// Изменяет признак использования регламентного задания +// Изменяет признак использования регламентного задания. // // Параметры: // НовоеЗначение - Булево, новое значение использования. @@ -196,7 +220,7 @@ КонецФункции -// Возвращает текущее расписание регламентного задания +// Возвращает текущее расписание регламентного задания. // // Возвращаемое значение: // РасписаниеРегламентногоЗадания - текущее расписание. @@ -209,7 +233,7 @@ КонецФункции -// Устанавливает новое расписание регламентному заданию +// Устанавливает новое расписание регламентному заданию. // // Параметры: // НовоеРасписание - РасписаниеРегламентногоЗадания, которое надо установить. @@ -223,7 +247,7 @@ КонецПроцедуры -// Сохраняет настройки регламентного задания +// Сохраняет настройки регламентного задания. // // Параметры: // Задание - РегламентноеЗадание.ЭкспортОценкиПроизводительности. @@ -241,6 +265,7 @@ Если Расписание <> Неопределено Тогда УстановитьРасписание(Расписание); + Модифицированность = Истина; КонецЕсли; КонецПроцедуры @@ -276,7 +301,7 @@ Каталоги = Новый Структура; Каталоги.Вставить("ВыполнятьЭкспортНаFTP", ВыполнятьЭкспортНаFTP); - СтруктураURI = ОбщегоНазначенияКлиентСервер.СтруктураURI(FTPКаталогЭкспорта); + СтруктураURI = ОценкаПроизводительностиКлиентСервер.СтруктураURI(FTPКаталогЭкспорта); Каталоги.Вставить("FTPКаталогЭкспорта", СтруктураURI.ИмяСервера); Если ЗначениеЗаполнено(СтруктураURI.Порт) Тогда Каталоги.Вставить("FTPКаталогЭкспортаПорт", СтруктураURI.Порт); @@ -287,13 +312,18 @@ Запрос = ЗапросНаИспользованиеВнешнихРесурсов(Каталоги); - РаботаВБезопасномРежимеКлиент.ПрименитьЗапросыНаИспользованиеВнешнихРесурсов( - ОбщегоНазначенияКлиентСервер.ЗначениеВМассиве(Запрос), ЭтотОбъект, ОповещениеОЗакрытии); - + ЗапросВМассив = Новый Массив; + ЗапросВМассив.Добавить(Запрос); + + Если ЕстьБСП Тогда + МодульРаботаВБезопасномРежимеКлиент = Вычислить("РаботаВБезопасномРежимеКлиент"); + МодульРаботаВБезопасномРежимеКлиент.ПрименитьЗапросыНаИспользованиеВнешнихРесурсов(ЗапросВМассив, ЭтотОбъект, ОповещениеОЗакрытии); + Иначе + ВыполнитьОбработкуОповещения(ОповещениеОЗакрытии, КодВозвратаДиалога.ОК); + КонецЕсли; ИначеЕсли ЗакрытьФорму Тогда СохранитьНаСервере(); ЭтотОбъект.Закрыть(); - Иначе СохранитьНаСервере(); КонецЕсли; @@ -328,4 +358,19 @@ КонецПроцедуры +&НаКлиенте +Процедура КонстантыНаборОценкаПроизводительностиПериодЗаписиПриИзменении(Элемент) + Модифицированность = Истина; +КонецПроцедуры + +&НаКлиенте +Процедура КонстантыНаборКоличествоЗамеровВПакетеЭкспортаПриИзменении(Элемент) + Модифицированность = Истина; +КонецПроцедуры + +&НаКлиенте +Процедура КонстантыНаборПериодХраненияЗамеровПриИзменении(Элемент) + Модифицированность = Истина; +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ИсторияВыполнения/Form.form b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ИсторияВыполнения/Form.form index cf9417a15..80de9e6b3 100644 --- a/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ИсторияВыполнения/Form.form +++ b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ИсторияВыполнения/Form.form @@ -128,7 +128,6 @@ <showLeftMargin>true</showLeftMargin> <united>true</united> <showTitle>auto</showTitle> - <throughAlign>Auto</throughAlign> <currentRowUse>Auto</currentRowUse> </extInfo> </items> @@ -297,7 +296,6 @@ <behavior>Auto</behavior> <showLeftMargin>true</showLeftMargin> <united>true</united> - <throughAlign>Auto</throughAlign> <currentRowUse>Auto</currentRowUse> </extInfo> </items> @@ -339,7 +337,6 @@ <showLeftMargin>true</showLeftMargin> <united>true</united> <showTitle>auto</showTitle> - <throughAlign>Auto</throughAlign> <currentRowUse>Auto</currentRowUse> </extInfo> </items> diff --git a/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/Форма/Form.form b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/Форма/Form.form index 30d01c923..75ce4c6da 100644 --- a/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/Форма/Form.form @@ -184,7 +184,6 @@ <representation>WeakSeparation</representation> <showLeftMargin>true</showLeftMargin> <united>true</united> - <throughAlign>Auto</throughAlign> <currentRowUse>Auto</currentRowUse> </extInfo> </items> @@ -341,7 +340,6 @@ <representation>WeakSeparation</representation> <showLeftMargin>true</showLeftMargin> <united>true</united> - <throughAlign>Auto</throughAlign> <currentRowUse>Auto</currentRowUse> </extInfo> </items> @@ -1059,16 +1057,16 @@ <locationInCommandBar>InAdditionalSubmenu</locationInCommandBar> </items> <items xsi:type="form:Button"> - <name>ФормаЭкспортДанных</name> - <id>93</id> + <name>ФормаЭкспортЗамеров</name> + <id>118</id> <visible>true</visible> <enabled>true</enabled> <userVisible> <common>true</common> </userVisible> <extendedTooltip> - <name>ФормаЭкспортДанныхРасширеннаяПодсказка</name> - <id>94</id> + <name>ФормаЭкспортЗамеровРасширеннаяПодсказка</name> + <id>119</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -1076,14 +1074,14 @@ <horizontalAlign>Left</horizontalAlign> </extInfo> </extendedTooltip> - <commandName>Form.Command.ЭкспортДанных</commandName> + <commandName>Form.Command.ЭкспортЗамеров</commandName> <buttonImportance>Normal</buttonImportance> <representation>Auto</representation> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <placementArea>UserCmds</placementArea> <picture xsi:type="core:PictureRef"> - <picture>StdPicture.SaveValues</picture> + <picture>StdPicture.CreateInitialImage</picture> </picture> <representationInContextMenu>Auto</representationInContextMenu> <locationInCommandBar>InAdditionalSubmenu</locationInCommandBar> @@ -1178,6 +1176,23 @@ <common>true</common> </edit> </attributes> + <attributes> + <name>ЕстьБСП</name> + <title> + <key>ru</key> + <value>Есть БСП</value> + + 4 + + Boolean + + + true + + + true + + Обновить @@ -1244,28 +1259,6 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> - <formCommands> - <name>ЭкспортДанных</name> - <title> - <key>ru</key> - <value>Экспорт данных</value> - - 4 - - ru - Экспорт данных - - - true - - - - ЭкспортДанных - - - DontUse - Auto - Настройка @@ -1376,6 +1369,28 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> + <formCommands> + <name>ЭкспортЗамеров</name> + <title> + <key>ru</key> + <value>Экспорт замеров</value> + + 4 + + ru + Экспорт замеров + + + true + + + + ЭкспортЗамеров + + + DontUse + Auto + diff --git a/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/Форма/Module.bsl index fb7094b0a..e61c16057 100644 --- a/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/Форма/Module.bsl @@ -7,6 +7,12 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + Если НЕ ОценкаПроизводительностиСлужебный.ПодсистемаСуществует("СтандартныеПодсистемы.БазоваяФункциональность") Тогда + ЕстьБСП = Ложь; + Иначе + ЕстьБСП = Истина; + КонецЕсли; + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; @@ -23,7 +29,7 @@ Объект.Производительность.Загрузить(ЗагружаемаяНастройка); Исключение ТекстСообщения = НСтр("ru = 'Не удалось загрузить настройки.'"); - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения); + ОценкаПроизводительностиКлиентСервер.СообщитьПользователю(ТекстСообщения); КонецПопытки; Если ПустаяСтрока(Объект.ВариантФильтраКомментарий) Тогда @@ -97,7 +103,7 @@ КонецПроцедуры -// Отображение истории выполнения ключевой операции +// Отображение истории выполнения ключевой операции. // &НаКлиенте Процедура ПроизводительностьВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) @@ -181,12 +187,6 @@ КонецПроцедуры -&НаКлиенте -Процедура ЭкспортДанных(Команда) - ОписаниеОповещения = Новый ОписаниеОповещения("ВыбратьФайлЭкспортаПредложено", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьВопросОбУстановкеРасширенияРаботыСФайлами(ОписаниеОповещения); -КонецПроцедуры - &НаКлиенте Процедура Настройка(Команда) @@ -300,7 +300,7 @@ ЦелевоеВремяПриИзменении(Элемент); КонецПроцедуры -// Процедура рассчитывает показатели производительности +// Процедура рассчитывает показатели производительности. // &НаСервере Процедура ОбновитьПоказатели(ЗначенияОтбора = Неопределено) @@ -319,10 +319,10 @@ Возврат; КонецЕсли; - // Получение итоговой ТаблицаКлючевыхОпераций которая будет выведена пользователю + // Получение итоговой ТаблицаКлючевыхОпераций которая будет выведена пользователю. ТаблицаКлючевыхОпераций = ОбработкаОбъект.ПоказателиПроизводительности(); Если ТаблицаКлючевыхОпераций = Неопределено Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Период установлен не верно.'")); + ОценкаПроизводительностиКлиентСервер.СообщитьПользователю(НСтр("ru = 'Период установлен не верно.'")); Возврат; КонецЕсли; @@ -347,11 +347,11 @@ КонецПроцедуры -// Вычисляет целевое время для указанного значения APDEX +// Вычисляет целевое время для указанного значения APDEX. // // Параметры: -// КлючеваяОперация - СправочникСсылка.КлючевыеОперации, ключевая операция, для которой следует рассчитать целевое время -// ЗначениеAPDEX - Число, APDEX, для которого необходимо подобрать целевое время +// КлючеваяОперация - СправочникСсылка.КлючевыеОперации, ключевая операция, для которой следует рассчитать целевое время. +// ЗначениеAPDEX - Число, APDEX, для которого необходимо подобрать целевое время. // ИндексПериода - Число, индекс периода, для которого будет вычислено целевое время. // // Возвращаемое значение: @@ -420,7 +420,7 @@ КонецФункции -// Обрабатывает реквизиты табличной части "Производительность" +// Обрабатывает реквизиты табличной части "Производительность". // // Параметры: // КолонкиТаблицаКлючевыхОпераций - КоллекцияКолонокТаблицыЗначений, из них вычисляется какие реквизиты удалить, а какие оставить. @@ -431,7 +431,7 @@ РеквизитыОбъекта = ПолучитьРеквизиты("Объект.Производительность"); УдаляемыеРеквизиты = УдаляемыеРеквизиты(РеквизитыОбъекта); - // Колонки "Ключевая операция", "Приоритет" и "Целевое время" + // Колонки "Ключевая операция", "Приоритет" и "Целевое время". КоличествоПредопределенныхКолонок = 3; // Меняется состав колонок @@ -439,7 +439,7 @@ ИзменитьСоставРеквизитовОбъекта(КолонкиТаблицаКлючевыхОпераций, УдаляемыеРеквизиты); - // Формирование списков полей для условного оформления + // Формирование списков полей для условного оформления. ПоляОтбора = Новый Массив; ПоляОформления = Новый Массив; Для Каждого КолонкаТаблицаКлючевыхОпераций Из КолонкиТаблицаКлючевыхОпераций Цикл @@ -452,7 +452,7 @@ УстановитьУсловноеОформлениеТЧ(ПоляОтбора, ПоляОформления, УсловноеОформление, Объект.ОбщаяПроизводительностьСистемы); - // Меняются только заголовки колонок + // Меняются только заголовки колонок. Иначе Сч = -1; @@ -469,17 +469,17 @@ КонецПроцедуры -// Изменяются реквизиты формы ненужные удаляются нужные добавляются +// Изменяются реквизиты формы ненужные удаляются нужные добавляются. // // Параметры: -// КолонкиТаблицаКлючевыхОпераций - КоллекцияКолонокТаблицыЗначений, из них вычисляется какие реквизиты удалить, а какие оставить +// КолонкиТаблицаКлючевыхОпераций - КоллекцияКолонокТаблицыЗначений, из них вычисляется какие реквизиты удалить, а какие оставить. // УдаляемыеРеквизиты - Массив, список полных имен удаляемых реквизитов // имена в формате Объект.Производительность.ПроизводительностьN, где N номер. // &НаСервере Процедура ИзменитьСоставРеквизитовОбъекта(КолонкиТаблицаКлючевыхОпераций, УдаляемыеРеквизиты) - // Удаление колонок из табличной части "Производительность" + // Удаление колонок из табличной части "Производительность". Для ИндексРеквизита = 0 По УдаляемыеРеквизиты.Количество() - 1 Цикл // Имена удаляемых реквизитов Объект.Производительность.ПроизводительностьN @@ -494,7 +494,7 @@ ДобавляемыеРеквизиты = ДобавляемыеРеквизиты(КолонкиТаблицаКлючевыхОпераций); ИзменитьРеквизиты(ДобавляемыеРеквизиты, УдаляемыеРеквизиты); - // Добавление колонок в табличную часть "Производительность" + // Добавление колонок в табличную часть "Производительность". РеквизитыОбъекта = ПолучитьРеквизиты("Объект.Производительность"); Для Каждого РеквизитОбъекта Из РеквизитыОбъекта Цикл @@ -568,14 +568,14 @@ КонецФункции -// Процедура устанавливает условное оформление ТЧ "Производительность" +// Процедура устанавливает условное оформление ТЧ "Производительность". // &НаСервереБезКонтекста Процедура УстановитьУсловноеОформлениеТЧ(ПоляОтбора, ПоляОформления, УсловноеОформление, ОбщаяПроизводительностьСистемы); УсловноеОформление.Элементы.Очистить(); - // Убрать приоритет у ключевой операции ОбщаяПроизводительностьСистемы + // Убрать приоритет у ключевой операции ОбщаяПроизводительностьСистемы. ЭлементОформления = УсловноеОформление.Элементы.Добавить(); // Вид оформления ЭлементОформления.Оформление.УстановитьЗначениеПараметра("Текст", ""); @@ -588,7 +588,7 @@ ПолеОформления = ЭлементОформления.Поля.Элементы.Добавить(); ПолеОформления.Поле = Новый ПолеКомпоновкиДанных("Приоритет"); - // Только просмотр колонки Приоритет + // Только просмотр колонки Приоритет. ЭлементОформления = УсловноеОформление.Элементы.Добавить(); // Вид оформления ЭлементОформления.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина); @@ -637,7 +637,7 @@ КоличествоПолей = ПоляОтбора.Количество() - 1; - // Оформление если операция не выполнялась + // Оформление если операция не выполнялась. Для ИндексПоля = 0 По КоличествоПолей Цикл ЭлементОформления = УсловноеОформление.Элементы.Добавить(); @@ -655,7 +655,7 @@ КонецЦикла; - // Оформление для показателей производительности + // Оформление для показателей производительности. Соответствие = СоответствиеЦветовУровнюАпдекса(); Для Каждого КлючЗначение Из Соответствие Цикл @@ -685,7 +685,7 @@ КонецПроцедуры -// Выполняет обновление диаграммы +// Выполняет обновление диаграммы. // // Параметры: // ТаблицаКлючевыхОпераций - ТаблицаЗначений, данные, по которым будет обновлена диаграмма. @@ -727,7 +727,7 @@ Для Каждого КолонкаТаблицаКлючевыхОпераций Из ТаблицаКлючевыхОпераций.Колонки Цикл Точка = Диаграмма.Точки.Добавить(КолонкаТаблицаКлючевыхОпераций.Имя); - Точка.Текст = ?(Объект.Шаг = "Час", Лев(КолонкаТаблицаКлючевыхОпераций.Заголовок, 2), КолонкаТаблицаКлючевыхОпераций.Заголовок); //Для отображения только часов если шаг Час + Точка.Текст = ?(Объект.Шаг = "Час", Лев(КолонкаТаблицаКлючевыхОпераций.Заголовок, 2), КолонкаТаблицаКлючевыхОпераций.Заголовок); //Для отображения только часов если шаг Час. Строка = 0; Столбец = ТаблицаКлючевыхОпераций.Колонки.Индекс(КолонкаТаблицаКлючевыхОпераций); Для Каждого Серия Из Диаграмма.Серии Цикл @@ -748,267 +748,10 @@ КонецПроцедуры -&НаКлиенте -Функция ПодготовитьПараметрыЭкспорта() - - КлючевыеОперации = Новый Массив; - - ОбщаяПроизводительность = Объект.ОбщаяПроизводительностьСистемы; - Для Каждого СтрокаТаблицаКлючевыхОпераций Из Объект.Производительность Цикл - - Если СтрокаТаблицаКлючевыхОпераций.КлючеваяОперация = ОбщаяПроизводительность Тогда - Продолжить; - КонецЕсли; - - КлючевыеОперации.Добавить(СтрокаТаблицаКлючевыхОпераций.КлючеваяОперация); - - КонецЦикла; - - ПараметрыЭкспорта = Новый Структура("ДатаНачала, ДатаОкончания, Шаг, МассивКлючевыхОпераций, Комментарий, ВариантФильтраКомментарий"); - ПараметрыЭкспорта.ДатаНачала = Объект.ДатаНачала; - ПараметрыЭкспорта.ДатаОкончания = Объект.ДатаОкончания; - ПараметрыЭкспорта.Шаг = Строка(Объект.Шаг); - ПараметрыЭкспорта.Комментарий = Объект.Комментарий; - ПараметрыЭкспорта.ВариантФильтраКомментарий = Объект.ВариантФильтраКомментарий; - ПараметрыЭкспорта.МассивКлючевыхОпераций = КлючевыеОперации; - - Возврат ПараметрыЭкспорта; - -КонецФункции - -// Экспортировать данные замеров на указанном интервале -// -&НаСервереБезКонтекста -Процедура Экспортировать(АдресВХранилище, ПараметрыЭкспорта) - - ВременныйКаталог = КаталогВременныхФайлов() + Строка(Новый УникальныйИдентификатор); - ИмяФайла = ВременныйКаталог + "/exp.zip"; - ИмяФайлаОписания = ВременныйКаталог + "/Description.xml"; - ИмяФайлаНастроек = ВременныйКаталог + "/Settings.xml"; - СоздатьКаталог(ВременныйКаталог); - - ЗаписьZip = Новый ЗаписьZipФайла(ИмяФайла); - Начало = ПараметрыЭкспорта.ДатаНачала; - Конец = ПараметрыЭкспорта.ДатаОкончания; - МассивКлючевыхОпераций = ПараметрыЭкспорта.МассивКлючевыхОпераций; - Комментарий = ПараметрыЭкспорта.Комментарий; - ВариантФильтра = ПараметрыЭкспорта.ВариантФильтраКомментарий; - - НачалоИнтервала = Начало; - КонецИнтервала = Конец; - - ШиринаИнтервалаПакета = 3600 - 1; - КоличествоПакетов = (Конец - Начало) / ШиринаИнтервалаПакета; - КоличествоПакетов = Цел(КоличествоПакетов) + ?(КоличествоПакетов - Цел(КоличествоПакетов) > 0, 1, 0); - - Пока НачалоИнтервала < Конец Цикл - КонецИнтервала = НачалоИнтервала + ШиринаИнтервалаПакета; - - Если КонецИнтервала > Конец Тогда - КонецИнтервала = Конец; - КонецЕсли; - - ИмяВременногоФайла = ВременныйКаталог + "/" + ИмяФайлаПоВремени(НачалоИнтервала) + ".1capd"; - Если ЭкспортироватьИнтервал(ИмяВременногоФайла, НачалоИнтервала, КонецИнтервала, МассивКлючевыхОпераций, Комментарий, ВариантФильтра) Тогда - ЗаписьZip.Добавить(ИмяВременногоФайла); - КонецЕсли; - - НачалоИнтервала = КонецИнтервала + 1; - - КонецЦикла; - - ЗаполнитьОписание(ИмяФайлаОписания, Начало, Конец, МассивКлючевыхОпераций, Комментарий, ВариантФильтра); - ЗаписьZip.Добавить(ИмяФайлаОписания); - - ЗаполнитьНастройки(ИмяФайлаНастроек, Начало, Конец, ПараметрыЭкспорта.Шаг, МассивКлючевыхОпераций); - ЗаписьZip.Добавить(ИмяФайлаНастроек); - - ЗаписьZip.Записать(); - - ДвоичныеДанные = Новый ДвоичныеДанные(ИмяФайла); - ПоместитьВоВременноеХранилище(ДвоичныеДанные, АдресВХранилище); - - УдалитьФайлыНаСервере(ВременныйКаталог); - -КонецПроцедуры - -// Экспортировать данные замеров информационной базы на указанном интервале -// -// Параметры: -// ИмяВременногоФайла - Строка, имя файла для записи данных -// Начало - ДатаВремя, начало интервала поиска -// Конец - ДатаВремя, конец интервала поиска -// МассивКлючевыхОпераций - Массив, массив ключевых операций данные по которым надо экспортировать. -// -&НаСервереБезКонтекста -Функция ЭкспортироватьИнтервал(ИмяВременногоФайла, Начало, Конец, МассивКлючевыхОпераций, Комментарий, ВариантФильтра) - - НаборЗаписейЗамеры = НаборЗаписейЗамерыВремени(Начало, Конец, МассивКлючевыхОпераций, Комментарий, ВариантФильтра); - - Если Не ЗначениеЗаполнено(НаборЗаписейЗамеры) Тогда - Возврат Ложь; - КонецЕсли; - - ЗаписьXML = Новый ЗаписьXML; - ЗаписьXML.ОткрытьФайл(ИмяВременногоФайла); - - ЗаписьXML.ЗаписатьОбъявлениеXML(); - ЗаписатьXML(ЗаписьXML, НаборЗаписейЗамеры); - Возврат Истина; -КонецФункции - -// Получить набор записей регистра -// -// Параметры: -// Начало - ДатаВремя, начало интервала поиска -// Конец - ДатаВремя, конец интервала поиска -// МассивКлючевыхОпераций - Массив, экспортируемые ключевые операции. -// -// Возвращаемое значение: -// РегистрСведений.ЗамерыВремени.НаборЗаписей. -// -&НаСервереБезКонтекста -Функция НаборЗаписейЗамерыВремени(Начало, Конец, МассивКлючевыхОпераций, Комментарий, ВариантФильтра) - Если ПустаяСтрока(Комментарий) Тогда - ВариантФильтра = "НеФильтровать"; - КонецЕсли; - - МетаданныеРегистра = Метаданные.РегистрыСведений.ЗамерыВремени; - - Запрос = Новый Запрос; - ТекстЗапроса = - "ВЫБРАТЬ"; - Для Каждого Измерение Из МетаданныеРегистра.Измерения Цикл - ТекстЗапроса = ТекстЗапроса + " - | Замеры." + Измерение.Имя + " КАК " + Измерение.Имя + ","; - КонецЦикла; - Для Каждого Ресурс Из МетаданныеРегистра.Ресурсы Цикл - ТекстЗапроса = ТекстЗапроса + " - | Замеры." + Ресурс.Имя + " КАК " + Ресурс.Имя + ","; - КонецЦикла; - Для Каждого Реквизит Из МетаданныеРегистра.Реквизиты Цикл - ТекстЗапроса = ТекстЗапроса + " - | Замеры." + Реквизит.Имя + " КАК " + Реквизит.Имя + ","; - КонецЦикла; - - // Убираем последнюю запятую - ТекстЗапроса = Лев(ТекстЗапроса, СтрДлина(ТекстЗапроса) - 1); - - ТекстЗапроса = ТекстЗапроса + " - |ИЗ - | " + МетаданныеРегистра.ПолноеИмя() + " КАК Замеры - |ГДЕ - | Замеры.ДатаНачалаЗамера МЕЖДУ &ДатаНачала И &ДатаОкончания - | И Замеры.КлючеваяОперация В(&МассивКлючевыхОпераций) - | %УсловиеКомментарий%"; - - Если ВариантФильтра = "НеФильтровать" Тогда - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "%УсловиеКомментарий%", ""); - ИначеЕсли ВариантФильтра = "Равен" Тогда - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "%УсловиеКомментарий%", "И Замеры.Комментарий = &Комментарий"); - Запрос.УстановитьПараметр("Комментарий", Комментарий); - ИначеЕсли ВариантФильтра = "Содержит" Тогда - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "%УсловиеКомментарий%", "И Замеры.Комментарий ПОДОБНО &Комментарий"); - Запрос.УстановитьПараметр("Комментарий", "%" + Комментарий + "%"); - КонецЕсли; - - Запрос.УстановитьПараметр("ДатаНачала", Начало); - Запрос.УстановитьПараметр("ДатаОкончания", Конец); - Запрос.УстановитьПараметр("МассивКлючевыхОпераций", МассивКлючевыхОпераций); - Запрос.Текст = ТекстЗапроса; - Результат = Запрос.Выполнить(); - - НаборЗаписей = РегистрыСведений[МетаданныеРегистра.Имя].СоздатьНаборЗаписей(); - Если Результат.Пустой() Тогда - Возврат НаборЗаписей; - КонецЕсли; - - Выборка = Результат.Выбрать(); - Пока Выборка.Следующий() Цикл - - Запись = НаборЗаписей.Добавить(); - Для Каждого Измерение Из МетаданныеРегистра.Измерения Цикл - Запись[Измерение.Имя] = Выборка[Измерение.Имя]; - КонецЦикла; - Для Каждого Ресурс Из МетаданныеРегистра.Ресурсы Цикл - Запись[Ресурс.Имя] = Выборка[Ресурс.Имя]; - КонецЦикла; - Для Каждого Реквизит Из МетаданныеРегистра.Реквизиты Цикл - Запись[Реквизит.Имя] = Выборка[Реквизит.Имя]; - КонецЦикла; - - КонецЦикла; - - Возврат НаборЗаписей; - -КонецФункции - -// Заполнить файл описания экспорта -// -// Параметры: -// ИмяФайлаОписания - Строка, имя файла для размещения описания -// Начало - Дата и время, начало периода экспорта -// Конец - Дата и время, конец периода экспорта. -// -&НаСервереБезКонтекста -Процедура ЗаполнитьОписание(ИмяФайлаОписания, Начало, Конец, МассивКлючевыхОпераций, Комментарий, ВариантФильтра) - - ЗаписьXML = Новый ЗаписьXML; - ЗаписьXML.ОткрытьФайл(ИмяФайлаОписания); - - ЗаписьXML.ЗаписатьОбъявлениеXML(); - ЗаписьXML.ЗаписатьНачалоЭлемента("CommonSettings"); - - ЗаписьXML.ЗаписатьАтрибут("Version", "1.0.0.3"); - ЗаписьXML.ЗаписатьАтрибут("BeginDate", Строка(Начало)); - ЗаписьXML.ЗаписатьАтрибут("EndDate", Строка(Конец)); - ЗаписьXML.ЗаписатьАтрибут("ExportDate", Строка(ТекущаяДата())); - ЗаписьXML.ЗаписатьАтрибут("Comment", Комментарий); - ЗаписьXML.ЗаписатьАтрибут("FilterOption", ВариантФильтра); - - Для ИндексКО = 0 По МассивКлючевыхОпераций.Количество() - 1 Цикл - ЗаписьXML.ЗаписатьНачалоЭлемента("KeyOperation"); - ЗаписьXML.ЗаписатьАтрибут("name", Строка(МассивКлючевыхОпераций[ИндексКО])); - ЗаписьXML.ЗаписатьКонецЭлемента(); - КонецЦикла; - - ЗаписьXML.ЗаписатьКонецЭлемента(); - ЗаписьXML.Закрыть(); - -КонецПроцедуры - -// Заполняет файл настроек -// -&НаСервереБезКонтекста -Процедура ЗаполнитьНастройки(ИмяФайлаНастроек, Начало, Конец, Шаг, МассивКлючевыхОпераций) - - ЗаписьXML = Новый ЗаписьXML; - ЗаписьXML.ОткрытьФайл(ИмяФайлаНастроек); - - ЗаписьXML.ЗаписатьОбъявлениеXML(); - ЗаписьXML.ЗаписатьНачалоЭлемента("CommonSettings"); - - ЗаписьXML.ЗаписатьАтрибут("BeginDate", Строка(Начало)); - ЗаписьXML.ЗаписатьАтрибут("EndDate", Строка(Конец)); - ЗаписьXML.ЗаписатьАтрибут("Step", Шаг); - - ЗаписьXML.ЗаписатьНачалоЭлемента("TableSettings"); - ЗаписьXML.ЗаписатьАтрибут("RowCount", Формат(МассивКлючевыхОпераций.Количество(), "ЧГ=0")); - - Для Сч = 0 По МассивКлючевыхОпераций.Количество() - 1 Цикл - ЗаписатьXML(ЗаписьXML, МассивКлючевыхОпераций[Сч].ПолучитьОбъект()); - КонецЦикла; - - ЗаписьXML.ЗаписатьКонецЭлемента(); - ЗаписьXML.ЗаписатьКонецЭлемента(); - ЗаписьXML.Закрыть(); - -КонецПроцедуры - /////////////////////////////////////////////////////////////////////// // ВСПОМОГАТЕЛЬНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ -// Сдвигает строки табличной части и меняет приоритеты ключевых операций +// Сдвигает строки табличной части и меняет приоритеты ключевых операций. // // Параметры: // НаправлениеСдвига - Число, @@ -1037,7 +780,7 @@ КонецПроцедуры -// Устанавливает исключительную управляемую блокировку на ссылку +// Устанавливает исключительную управляемую блокировку на ссылку. // &НаСервереБезКонтекста Процедура ЗаблокироватьСсылку(Ссылка) @@ -1070,10 +813,10 @@ КонецФункции -// Фиксирует транзакцию и записывает объект +// Фиксирует транзакцию и записывает объект. // // Параметры: -// Объект - ЛюбойОбъект, объект, изменения которого следует зафиксировать +// Объект - ЛюбойОбъект, объект, изменения которого следует зафиксировать. // Записывать - Булево, необходимость записи объекта перед фиксацией транзакции. // &НаСервереБезКонтекста @@ -1085,11 +828,11 @@ КонецПроцедуры -// Выполняет обмен приоритетами ключевых операций +// Выполняет обмен приоритетами ключевых операций. // // Параметры: // КлючеваяОперация1 - СправочникСсылка.КлючевыеОперации -// Приоритет1 - Число, будет присвоен КлючеваяОперация2 +// Приоритет1 - Число, будет присвоен КлючеваяОперация2. // КлючеваяОперация2 - СправочникСсылка.КлючевыеОперации // Приоритет2 - Число, будет присвоен КлючеваяОперация1. // @@ -1111,9 +854,10 @@ ЗафиксироватьТранзакцию(); Исключение ОтменитьТранзакцию(); - ЗаписьЖурналаРегистрации(НСтр("ru = 'Выполнение операции'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации(НСтр("ru = 'Выполнение операции'", Метаданные.ОсновнойЯзык.КодЯзыка), УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); ВызватьИсключение; КонецПопытки; + КонецПроцедуры // Процедура открывает форму выбора справочника КлючевыеОперации @@ -1168,42 +912,11 @@ КонецФункции -// Функция получает имя файла по указанному времени -// +// Вычисляет точные дату начала и окончания на выбранном отрезке. // // Параметры: -// Время - ДатаВремя -// -// Возвращаемое значение: -// Строка - Имя файла -// -&НаСервереБезКонтекста -Функция ИмяФайлаПоВремени(Время) - - Возврат Формат(Время, "ДФ=""гггг-ММ-дд ЧЧ-мм-сс"""); - -КонецФункции // ИмяФайлаПоВремени() - -// Процедура удаляет каталог на сервере -// -&НаСервереБезКонтекста -Процедура УдалитьФайлыНаСервере(Каталог) - - Попытка - УдалитьФайлы(Каталог); - Исключение - Событие = НСтр("ru = 'Удалить файлы на сервере'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); - ЗаписьЖурналаРегистрации(Событие, - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - КонецПопытки; - -КонецПроцедуры - -// Вычисляет точные дату начала и окончания на выбранном отрезке -// -// Параметры: -// ДатаНачала [OUT] - Дата, дата начала выбранного периода -// ДатаОкончания [OUT] - Дата, дата окончания выбранного периода +// ДатаНачала [OUT] - Дата, дата начала выбранного периода. +// ДатаОкончания [OUT] - Дата, дата окончания выбранного периода. // ИндексПериода [IN] - Число, индекс выбранного периода. // // Возвращаемое значение: @@ -1237,7 +950,7 @@ КонецФункции -// Создает таблицу значения, которая необходима для расчета APDEX +// Создает таблицу значения, которая необходима для расчета APDEX. // // Возвращаемое значение: // ТаблицаЗначений - таблица значений со структурой необходимой для расчета APDEX. @@ -1263,7 +976,7 @@ /////////////////////////////////////////////////////////////////////// // ВСПОМОГАТЕЛЬНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ (ОФОРМЛЕНИЕ, НАСТРОЙКИ) -// Функция возвращает цвет значения Неприемлемо +// Функция возвращает цвет значения Неприемлемо. // // Возвращаемое значение: // Цвет - цвет значения @@ -1275,7 +988,7 @@ КонецФункции -// Функция возвращает цвет значения Плохо +// Функция возвращает цвет значения Плохо. // // Возвращаемое значение: // Цвет - цвет значения @@ -1287,7 +1000,7 @@ КонецФункции -// Функция возвращает цвет значения Удовлетворительно +// Функция возвращает цвет значения Удовлетворительно. // // Возвращаемое значение: // Цвет - цвет значения @@ -1299,7 +1012,7 @@ КонецФункции -// Функция возвращает цвет значения Хорошо +// Функция возвращает цвет значения Хорошо. // // Возвращаемое значение: // Цвет - цвет значения @@ -1311,7 +1024,7 @@ КонецФункции -// Функция возвращает цвет значения Отлично +// Функция возвращает цвет значения Отлично. // // Возвращаемое значение: // Цвет - цвет значения @@ -1323,8 +1036,8 @@ КонецФункции -// Функция возвращает соответствие, в котором -// Ключ - Строка, оценка производительности +// Функция возвращает соответствие, в котором. +// Ключ - Строка, оценка производительности. // Значение - Структура, параметры оценки. // // Возвращаемое значение: @@ -1336,7 +1049,7 @@ Соответствие = Новый Соответствие; Значения = Новый Структура("От, До, Цвет"); - Значения.От = 0.001; // 0 означает что операция не выполнялась вообще + Значения.От = 0.001; // 0 означает что операция не выполнялась вообще. Значения.До = 0.5; Значения.Цвет = ЦветНеприемлемо(); Соответствие.Вставить("Неприемлемо", Значения); @@ -1361,7 +1074,7 @@ Значения = Новый Структура("От, До, Цвет"); Значения.От = 0.94; - Значения.До = 1.002; // т.к. в условном оформлении к значению "До" применяется условие "Меньше", а не "МеньшеИлиРавно" + Значения.До = 1.002; // т.к. в условном оформлении к значению "До" применяется условие "Меньше", а не "МеньшеИлиРавно". Значения.Цвет = ЦветОтлично(); Соответствие.Вставить("Отлично", Значения); @@ -1369,7 +1082,7 @@ КонецФункции -// Функция проверяет правильность настроек формы +// Функция проверяет правильность настроек формы. // // Возвращаемое значение: // Истина - настройки верны @@ -1384,7 +1097,7 @@ Если СтрокаТЧ.ЦелевоеВремя = 0 И СтрокаТЧ.КлючеваяОперация <> Объект.ОбщаяПроизводительностьСистемы Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( + ОценкаПроизводительностиКлиентСервер.СообщитьПользователю( НСтр("ru = 'Целевое время обязательно должно быть заполнено.'"), , "Производительность[" + Формат(Объект.Производительность.Индекс(СтрокаТЧ),"ЧГ=0") + "].ЦелевоеВремя", @@ -1400,7 +1113,7 @@ КонецФункции -// Процедура при первом открытии формы обработки заполняет +// Процедура при первом открытии формы обработки заполняет. // ТЧ "Производительность" из справочника "КлючевыеОперации". // &НаСервереБезКонтекста @@ -1440,10 +1153,10 @@ КонецФункции -// Меняет целевое время ключевой операции +// Меняет целевое время ключевой операции. // // Параметры: -// КлючеваяОперация - СправочникСсылка.КлючевыеОперации, операция, у которой необходимо изменить целевое время +// КлючеваяОперация - СправочникСсылка.КлючевыеОперации, операция, у которой необходимо изменить целевое время. // ЦелевоеВремя - Число, новое целевое время. // &НаСервере @@ -1459,16 +1172,16 @@ ЗафиксироватьТранзакцию(); Исключение ОтменитьТранзакцию(); - ЗаписьЖурналаРегистрации(НСтр("ru = 'Выполнение операции'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации(НСтр("ru = 'Выполнение операции'", Метаданные.ОсновнойЯзык.КодЯзыка), УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); ВызватьИсключение; КонецПопытки; КонецПроцедуры -// Удаляет из таблицы значений строки не подходящие под отбор +// Удаляет из таблицы значений строки не подходящие под отбор. // // Параметры: -// ТаблицаКлючевыхОпераций - ТаблицаЗначений, таблица, которую нужно отфильтровать +// ТаблицаКлючевыхОпераций - ТаблицаЗначений, таблица, которую нужно отфильтровать. // ЗначенияОтбора - Массив, массив строк со значениями отбора. // &НаСервереБезКонтекста @@ -1528,18 +1241,6 @@ КонецПроцедуры -&НаКлиенте -Процедура ВыбратьФайлЭкспортаПредложено(РасширениеРаботыСФайламиПодключено, ДополнительныеПараметры) Экспорт - - ПараметрыЭкспорта = ПодготовитьПараметрыЭкспорта(); - АдресВХранилище = ПоместитьВоВременноеХранилище("", ЭтотОбъект.УникальныйИдентификатор); - Состояние(НСтр("ru = 'Экспорт данных...'")); - Экспортировать(АдресВХранилище, ПараметрыЭкспорта); - - ПолучитьФайл(АдресВХранилище, "perf.zip"); - -КонецПроцедуры - &НаСервере Процедура УдалитьКлючевуюОперациюНаСервере() @@ -1585,4 +1286,9 @@ СтандартнаяОбработка = Ложь; КонецПроцедуры +&НаКлиенте +Процедура ЭкспортЗамеров(Команда) + ОткрытьФорму("Обработка.ОценкаПроизводительности.Форма.ЭкспортЗамеровПроизводительности", , ЭтотОбъект,,,,,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ФормаОтбора/Form.form b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ФормаОтбора/Form.form index a631b119b..b921d3a25 100644 --- a/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ФормаОтбора/Form.form +++ b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ФормаОтбора/Form.form @@ -230,7 +230,6 @@ Auto true true - Auto Auto diff --git a/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ЭкспортЗамеровПроизводительности/Form.form b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ЭкспортЗамеровПроизводительности/Form.form new file mode 100644 index 000000000..268f5dfaf --- /dev/null +++ b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ЭкспортЗамеровПроизводительности/Form.form @@ -0,0 +1,413 @@ + + + + <key>ru</key> + <value>Экспорт замеров оценки производительности</value> + + + ГруппаПериод + 1 + + ДатаНачалаПериодаЭкспорта + 3 + + <key>ru</key> + <value>Дата начала</value> + + true + true + + true + + + ДатаНачалаПериодаЭкспорта + + + ДатаНачалаПериодаЭкспортаРасширеннаяПодсказка + 5 + Label + true + true + + Left + + + + ДатаНачалаПериодаЭкспортаКонтекстноеМеню + 4 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + ДатаОкончанияПериодаЭкспорта + 6 + + <key>ru</key> + <value>Дата окончания</value> + + true + true + + true + + + ДатаОкончанияПериодаЭкспорта + + + ДатаОкончанияПериодаЭкспортаРасширеннаяПодсказка + 8 + Label + true + true + + Left + + + + ДатаОкончанияПериодаЭкспортаКонтекстноеМеню + 7 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа период</value> + + + ru + Группа период + + + ГруппаПериодРасширеннаяПодсказка + 2 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + КаталогЭкспорта + 9 + true + true + + true + + + КаталогЭкспорта + + + КаталогЭкспортаРасширеннаяПодсказка + 11 + Label + true + true + + Left + + + + КаталогЭкспортаКонтекстноеМеню + 10 + true + + InputField + Enter + true + Left + true + + + StartChoice + КаталогЭкспортаНачалоВыбора + + true + true + true + true + true + true + Normal + + + + ИмяАрхива + 14 + true + true + + true + + + ИмяАрхива + + + ИмяАрхиваРасширеннаяПодсказка + 16 + Label + true + true + + Left + + + + ИмяАрхиваКонтекстноеМеню + 15 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + + ФормаКоманднаяПанель + -1 + + ФормаВыполнитьЭкспорт + 12 + + <key>ru</key> + <value>Экспорт</value> + + true + true + + true + + + ФормаВыполнитьЭкспортРасширеннаяПодсказка + 13 + Label + true + true + + Left + + + Form.Command.ВыполнитьЭкспорт + Auto + true + true + true + UserCmds + Auto + + Left + true + + + OnCreateAtServer + ПриСозданииНаСервере + + DontBlock + Use + true + true + Vertical + true + true + true + auto + true + + Объект + 1 + + DataProcessorObject.ОценкаПроизводительности + + + true + + + true + +
      true
      +
      + + ДатаНачалаПериодаЭкспорта + + <key>ru</key> + <value>Дата начала периода экспорта</value> + + 2 + + Date + + + + true + + + true + + ShowError + + ДатаНачалаПериодаЭкспорта + + + + ДатаОкончанияПериодаЭкспорта + + <key>ru</key> + <value>Дата окончания периода экспорта</value> + + 3 + + Date + + + + true + + + true + + ShowError + + ДатаОкончанияПериодаЭкспорта + + + + КаталогЭкспорта + + <key>ru</key> + <value>Каталог экспорта</value> + + 4 + + String + + + + true + + + true + + ShowError + + КаталогЭкспорта + + + + ИмяАрхива + + <key>ru</key> + <value>Имя архива</value> + + 5 + + String + + + + true + + + true + + ShowError + + ИмяАрхива + + + + ЕстьБСП + + <key>ru</key> + <value>Есть БСП</value> + + 6 + + Boolean + + + true + + + true + + + + ВыполнитьЭкспорт + + <key>ru</key> + <value>Выполнить экспорт</value> + + 1 + + ru + Выполнить экспорт + + + true + + + + ВыполнитьЭкспорт + + + DontUse + Auto + + + + + + +
      diff --git a/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ЭкспортЗамеровПроизводительности/Help/ru.html b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ЭкспортЗамеровПроизводительности/Help/ru.html new file mode 100644 index 000000000..32a7a6846 --- /dev/null +++ b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ЭкспортЗамеровПроизводительности/Help/ru.html @@ -0,0 +1,8 @@ + +

      Предназначена для настройки экспорта замеров производительности вручную для анализа в других программах.

      +

      В программе производится оценка производительности. Замеры производительности хранятся в программе и могут быть экспортированы с целью анализа в других программах.

      +

      С помощью кнопок заполните поля Дата начала и Дата окончания экспорта замеров производительности.

      +

      Выберите путь для сохранения данных в поле Каталог экспорта.

      +

      Напишите Имя архива для сохранения замеров.

      +

      См. также:

      + \ No newline at end of file diff --git a/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ЭкспортЗамеровПроизводительности/Module.bsl b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ЭкспортЗамеровПроизводительности/Module.bsl new file mode 100644 index 000000000..b09e9b059 --- /dev/null +++ b/SSL/src/DataProcessors/ОценкаПроизводительности/Forms/ЭкспортЗамеровПроизводительности/Module.bsl @@ -0,0 +1,74 @@ + +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + Если НЕ ОценкаПроизводительностиСлужебный.ПодсистемаСуществует("СтандартныеПодсистемы.БазоваяФункциональность") Тогда + ЭтаФорма.Элементы.КаталогЭкспорта.КнопкаВыбора = Ложь; + ЕстьБСП = Ложь; + Иначе + ЕстьБСП = Истина; + КонецЕсли; +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы + +&НаКлиенте +Процедура ВыбратьКаталогЭкспортаПредложено(РасширениеРаботыСФайламиПодключено, ДополнительныеПараметры) Экспорт + + Если РасширениеРаботыСФайламиПодключено Тогда + + ВыборФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.ВыборКаталога); + ВыборФайла.МножественныйВыбор = Ложь; + ВыборФайла.Заголовок = НСтр("ru = 'Выбор каталога экспорта'"); + + Если ВыборФайла.Выбрать() Тогда + ЭтаФорма.КаталогЭкспорта = ВыборФайла.Каталог; + КонецЕсли; + + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура КаталогЭкспортаНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + Если ЕстьБСП Тогда + ОписаниеОповещения = Новый ОписаниеОповещения("ВыбратьКаталогЭкспортаПредложено", ЭтотОбъект); + МодульОбщегоНазначения = Вычислить("ОбщегоНазначенияКлиент"); + Если ТипЗнч(МодульОбщегоНазначения) = Тип("ОбщийМодуль") Тогда + МодульОбщегоНазначения.ПоказатьВопросОбУстановкеРасширенияРаботыСФайлами(ОписаниеОповещения); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиКомандФормы + +&НаКлиенте +Процедура ВыполнитьЭкспорт(Команда) + АдресХранилища = ПоместитьВоВременноеХранилище(Неопределено, ЭтаФорма.УникальныйИдентификатор); + ПараметрыЭкспорта = Новый Структура; + ПараметрыЭкспорта.Вставить("ДатаНачала", ЭтаФорма.ДатаНачалаПериодаЭкспорта); + ПараметрыЭкспорта.Вставить("ДатаОкончания", ЭтаФорма.ДатаОкончанияПериодаЭкспорта); + ПараметрыЭкспорта.Вставить("АдресХранилища", АдресХранилища); + ВыполнитьЭкспортНаСервере(ПараметрыЭкспорта); + + ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресХранилища); + УдалитьИзВременногоХранилища(АдресХранилища); + ДвоичныеДанные.Записать(ЭтаФорма.КаталогЭкспорта + ПолучитьРазделительПутиКлиента() + ЭтаФорма.ИмяАрхива + ".zip"); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервереБезКонтекста +Процедура ВыполнитьЭкспортНаСервере(Параметры) + ОценкаПроизводительности.ЭкспортОценкиПроизводительности(Неопределено, Параметры); +КонецПроцедуры + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/DataProcessors/ОценкаПроизводительности/Help/ru.html b/SSL/src/DataProcessors/ОценкаПроизводительности/Help/ru.html index 74a1043be..539e44943 100644 --- a/SSL/src/DataProcessors/ОценкаПроизводительности/Help/ru.html +++ b/SSL/src/DataProcessors/ОценкаПроизводительности/Help/ru.html @@ -24,7 +24,7 @@
      Запись Общая производительность системы всегда располагается в начале списка, не имеет приоритета и служит для оценки производительности программы в целом.
    • Целевое время - выводится из списка Ключевые операции. Поле является обязательным для заполнения. При необходимости может быть заполнено прямо в таблице. Оценка производительности будет строиться относительно этого значения. Т.е. при изменении целевых значений времени будут меняться и оценки производительности. Целевое время указывается в секундах. 
    • Настройка периода

      • Перед проведением оценки производительности нужно задать период, за который будет проводиться оценка производительности. -
        • Для этого введите Дату начала и Дату окончания периода в формате Дата-время. С помощью кнопки  выберите дату из календаря, при необходимости поменяйте время (по умолчанию равно 0:00:00).
      • Установкой поля Шаг регулируется количество результатов, которые будут отображаться в периоде. Например, если в качестве периода установить день, а в качестве шага - час, то в окне будет выведено 24 результата (для каждой ключевой операции). При этом результат за час будет рассчитан по специальной формуле по методике APDEX. Если в течение часа операция не выполнялась в программе,  то в соответствующей ячейке таблицы будет ноль. Замеры будут произведены во время выполнения указанных ключевых операций, например, при проведении документа. +
        • Для этого введите Дату начала и Дату окончания периода в формате Дата-время. С помощью кнопки  выберите дату из календаря, при необходимости поменяйте время (по умолчанию равно 0:00:00).
      • Установкой поля Шаг регулируется количество результатов, которые будут отображаться в периоде. Например, если в качестве периода установить день, а в качестве шага - час, то в окне будет выведено 24 результата (для каждой ключевой операции). При этом результат за час будет рассчитан по специальной формуле по методике APDEX. Если в течение часа операция не выполнялась в программе,  то в соответствующей ячейке таблицы будет ноль. Замеры будут произведены во время выполнения указанных ключевых операций, например, при проведении документа.
      • Результаты замеров будут показаны в окне Оценка производительности на вкладках Таблица и Диаграмма.

      Обновление таблицы

      • Список не является динамическим. Для того чтобы обновить данные в таблице и диаграмме, после того как в полях Период и/или Шаг установлены новые значения, можно воспользоваться командой Обновить показатели производительности.

      Вычисление целевого времени

      • Выделите нужную ключевую операцию (кроме операции Общая производительность системы), выполните команду контекстного меню по правой кнопке мыши Вычислить целевое время из APDEX. Вычисление возможно, если по ключевой операции были проведены замеры времени. 

      Оценка производительности

      diff --git a/SSL/src/DataProcessors/ОценкаПроизводительности/ObjectModule.bsl b/SSL/src/DataProcessors/ОценкаПроизводительности/ObjectModule.bsl index 8e175fda3..9d6c5bb30 100644 --- a/SSL/src/DataProcessors/ОценкаПроизводительности/ObjectModule.bsl +++ b/SSL/src/DataProcessors/ОценкаПроизводительности/ObjectModule.bsl @@ -2,7 +2,7 @@ #Область ПрограммныйИнтерфейс -// Функция формирует таблицу значений которая будет выведена пользователю +// Функция формирует таблицу значений которая будет выведена пользователю. // // Возвращаемое значение: // ТаблицаЗначений - итоговая таблица значений. @@ -38,7 +38,7 @@ КонецФункции -// Функция динамически формирует запрос и получает APDEX +// Функция динамически формирует запрос и получает APDEX. // // Параметры: // ПараметрыВычисления - Структура, см. СтруктураПараметровДляРасчетаАпдекса(). @@ -51,8 +51,8 @@ Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТаблицаКлючевыхОпераций", ПараметрыВычисления.ТаблицаКлючевыхОпераций); - Запрос.УстановитьПараметр("НачалоПериода", ПараметрыВычисления.ДатаНачала); - Запрос.УстановитьПараметр("КонецПериода", ПараметрыВычисления.ДатаОкончания); + Запрос.УстановитьПараметр("НачалоПериода", (ПараметрыВычисления.ДатаНачала - Дата(1,1,1))* 1000); + Запрос.УстановитьПараметр("КонецПериода", (ПараметрыВычисления.ДатаОкончания - Дата(1,1,1)) * 1000); Запрос.УстановитьПараметр("КлючеваяОперацияИтого", ОбщаяПроизводительностьСистемы); Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; @@ -183,8 +183,8 @@ КонецПериода = ?(ТекШаг = ПараметрыВычисления.КоличествоШагов - 1, ПараметрыВычисления.ДатаОкончания, НачалоПериода + ПараметрыВычисления.ШагЧисло - 1); ИндексШага = Формат(ТекШаг, "ЧН=0; ЧГ=0"); - Запрос.УстановитьПараметр("НачалоПериода" + ИндексШага, НачалоПериода); - Запрос.УстановитьПараметр("КонецПериода" + ИндексШага, КонецПериода); + Запрос.УстановитьПараметр("НачалоПериода" + ИндексШага, (НачалоПериода - Дата(1,1,1)) * 1000); + Запрос.УстановитьПараметр("КонецПериода" + ИндексШага, (КонецПериода - Дата(1,1,1)) * 1000); ЗаголовкиКолонок.Добавить(ЗаголовокКолонки(НачалоПериода)); @@ -257,18 +257,18 @@ КонецФункции -// Создает структуру параметров необходимую для расчета APDEX +// Создает структуру параметров необходимую для расчета APDEX. // // Возвращаемое значение: // Структура - -// ШагЧисло - Число, указывается размер шага в секундах -// КоличествоШагов - Число, количество шагов в периоде -// ДатаНачала - Дата, дата начала замеров -// ДатаОкончания - Дата, дата окончания замеров +// ШагЧисло - Число, указывается размер шага в секундах. +// КоличествоШагов - Число, количество шагов в периоде. +// ДатаНачала - Дата, дата начала замеров. +// ДатаОкончания - Дата, дата окончания замеров. // ТаблицаКлючевыхОпераций - ТаблицаЗначений, -// КлючеваяОперация - СправочникСсылка.КлючевыеОперации, ключевая операция -// НомерСтроки - Число, приоритет ключевой операции -// ЦелевоеВремя - Число, целевое время ключевой операции +// КлючеваяОперация - СправочникСсылка.КлючевыеОперации, ключевая операция. +// НомерСтроки - Число, приоритет ключевой операции. +// ЦелевоеВремя - Число, целевое время ключевой операции. // ВыводитьИтоги - Булево, // Истина, вычислять итоговую производительность // Ложь, не вычислять итоговую производительность. @@ -288,10 +288,10 @@ Возврат СтруктураПараметров; КонецФункции -// Вычисляет размер и количество шагов на заданном интервале +// Вычисляет размер и количество шагов на заданном интервале. // // Параметры: -// ШагЧисло [OUT] - Число, количество секунд, которое надо прибавить к дате начала чтобы выполнить следующий шаг +// ШагЧисло [OUT] - Число, количество секунд, которое надо прибавить к дате начала чтобы выполнить следующий шаг. // КоличествоШагов [OUT] - Число, количество шагов на заданном интервале. // // Возвращаемое значение: @@ -307,7 +307,7 @@ Возврат Ложь; КонецЕсли; - // КоличествоШагов - целое число, округленное вверх + // КоличествоШагов - целое число, округленное вверх. КоличествоШагов = 0; Если Шаг = "Час" Тогда ШагЧисло = 86400 / 24; @@ -341,14 +341,14 @@ #Область СлужебныеПроцедурыИФункции -// Процедура рассчитывает итоговое значение APDEX +// Процедура рассчитывает итоговое значение APDEX. // // Параметры: // ТаблицаКлючевыхОпераций - ТаблицаЗначений, результат запроса рассчитавшего APDEX. // Процедура ВычислитьИтоговыйAPDEX(ТаблицаКлючевыхОпераций) - // Начинаем с 4 колонки первые 3 это КлючеваяОперация, Приоритет, ЦелевоеВремя + // Начинаем с 4 колонки первые 3 это КлючеваяОперация, Приоритет, ЦелевоеВремя. ИндексНачальнойКолонки = 3; ИндексСтрокиИтогов = 0; ИндексКолонкиПриоритет = 1; @@ -375,7 +375,7 @@ МаксимальноеКоличествоОперацийЗаПериод = ТаблицаКлючевыхОпераций[ИндексСтрокиИтогов][Колонка]; - // с 1 т.к. 0 это строка итогов + // с 1 т.к. 0 это строка итогов. Для Строка = 1 По ИндексПоследнейСтроки Цикл ПриоритетТекущейОперации = ТаблицаКлючевыхОпераций[Строка][ИндексКолонкиПриоритет]; @@ -411,7 +411,7 @@ Функция ЗаголовокКолонки(НачалоПериода) Если Шаг = "Час" Тогда - // Страна указана для вывода лидирующего нуля чтобы было не 1:30:25, а 01:30:25 + // Страна указана для вывода лидирующего нуля чтобы было не 1:30:25, а 01:30:25. ЗаголовокКолонки = Строка(Формат(НачалоПериода, "Л=ru_UA; ДЛФ=T")); Иначе ЗаголовокКолонки = Строка(Формат(НачалоПериода, "ДФ=dd.MM.yy")); diff --git a/SSL/src/DataProcessors/ОценкаПроизводительности/ОценкаПроизводительности.mdo b/SSL/src/DataProcessors/ОценкаПроизводительности/ОценкаПроизводительности.mdo index c6c3af62a..31a8c2229 100644 --- a/SSL/src/DataProcessors/ОценкаПроизводительности/ОценкаПроизводительности.mdo +++ b/SSL/src/DataProcessors/ОценкаПроизводительности/ОценкаПроизводительности.mdo @@ -288,6 +288,20 @@ PersonalComputer MobileDevice + + ЭкспортЗамеровПроизводительности + + ru + Экспорт замеров производительности + + + + ru + + + PersonalComputer + MobileDevice + НастройкиОценкиПроизводительности @@ -297,4 +311,13 @@ ActionsPanelTools Auto + + ЭкспортЗамеровПроизводительности + + ru + Экспорт замеров производительности + + ActionsPanelTools + Auto + diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Commands/ПоискИУстановкаОбновлений/CommandModule.bsl b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Commands/ПоискИУстановкаОбновлений/CommandModule.bsl deleted file mode 100644 index 1161cbb07..000000000 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Commands/ПоискИУстановкаОбновлений/CommandModule.bsl +++ /dev/null @@ -1,16 +0,0 @@ - -#Область ОбработчикиСобытий - -&НаКлиенте -Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) - - ОткрытьФорму( - "Обработка.ПанельАдминистрированияБСП.Форма.ПоискИУстановкаОбновлений", - Новый Структура, - ПараметрыВыполненияКоманды.Источник, - "Обработка.ПанельАдминистрированияБСП.Форма.ПоискИУстановкаОбновлений" + ?(ПараметрыВыполненияКоманды.Окно = Неопределено, ".ОтдельноеОкно", ""), - ПараметрыВыполненияКоманды.Окно); - -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Commands/НастройкиСинхронизацииДанных/CommandModule.bsl b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Commands/СинхронизацияДанных/CommandModule.bsl similarity index 95% rename from SSL/src/DataProcessors/ПанельАдминистрированияБСП/Commands/НастройкиСинхронизацииДанных/CommandModule.bsl rename to SSL/src/DataProcessors/ПанельАдминистрированияБСП/Commands/СинхронизацияДанных/CommandModule.bsl index 650be03da..3b45a18fc 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Commands/НастройкиСинхронизацииДанных/CommandModule.bsl +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Commands/СинхронизацияДанных/CommandModule.bsl @@ -5,7 +5,7 @@ Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) Если СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ДоступноИспользованиеРазделенныхДанных Тогда - ИмяОткрываемойФормы = "Обработка.ПанельАдминистрированияБСП.Форма.НастройкиСинхронизацииДанных"; + ИмяОткрываемойФормы = "Обработка.ПанельАдминистрированияБСП.Форма.СинхронизацияДанных"; Иначе ИмяОткрываемойФормы = "Обработка.ПанельАдминистрированияБСПВМоделиСервиса.Форма.СинхронизацияДанныхДляАдминистратораСервиса"; КонецЕсли; diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиПользователейИПрав/Form.form b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиПользователейИПрав/Form.form index baca3c40e..73225d874 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиПользователейИПрав/Form.form +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиПользователейИПрав/Form.form @@ -1,5 +1,5 @@ - + ГруппаЗаголовок 2022 @@ -31,47 +31,12 @@ true Label - 78 - true true - false - false Left Top - - ГоризонтальныйОтступ - 2027 - true - true - - true - - - ГоризонтальныйОтступРасширеннаяПодсказка - 2039 - Label - true - true - - Left - - - - ГоризонтальныйОтступКонтекстноеМеню - 2028 - true - - Label - true - true - true - - Left - - ГруппаСправка 2025 @@ -106,8 +71,6 @@ true - false - false ГруппаСправкаExtendedTooltip 2040 @@ -148,7 +111,7 @@
      - ПользователиИГруппы + ГруппаПользователи 830 ГруппыПользователейИНастройкиВхода @@ -167,6 +130,10 @@ ОткрытьПользователиExtendedTooltip 2044 + + <key>ru</key> + <value>Ведение списка пользователей, которые работают с программой.</value> + Label true true @@ -181,46 +148,9 @@ true true UserCmds + ShowBottom Auto - - ПояснениеПользователи - 833 - - <key>ru</key> - <value>Ведение списка пользователей, которые работают с программой.</value> - - true - true - - true - - - ПояснениеПользователиExtendedTooltip - 2045 - Label - true - true - - Left - - - - ПояснениеПользователиКонтекстноеМеню - 834 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - true true @@ -230,8 +160,6 @@ ru Пользователи - 43 - false ПользователиРасширеннаяПодсказка 2141 @@ -271,6 +199,11 @@ НаборКонстант.ИспользоватьГруппыПользователей Right + + ru + Объединение пользователей в группы. + + ShowBottom OnChange ИспользоватьГруппыПользователейПриИзменении @@ -297,45 +230,6 @@ true - - ПояснениеИспользоватьГруппыПользователей - 836 - - <key>ru</key> - <value>Объединение пользователей в группы.</value> - - true - true - - true - - - ПояснениеИспользоватьГруппыПользователейExtendedTooltip - 2048 - Label - true - true - - Left - - - - ПояснениеИспользоватьГруппыПользователейКонтекстноеМеню - 837 - true - - Label - true - 1 - true - - Style.ПоясняющийТекст - - - Left - Top - - true true @@ -345,8 +239,6 @@ ru Группы пользователей - 43 - false ГруппыПользователейРасширеннаяПодсказка 2046 @@ -376,6 +268,8 @@ ru Группы пользователей и настройки входа + 43 + false ГруппыПользователейИНастройкиВходаРасширеннаяПодсказка 2043 @@ -414,6 +308,10 @@ НастройкиВходаРасширеннаяПодсказка 2139 + + <key>ru</key> + <value>Сложность и смена паролей, ограничение работы неактивных пользователей.</value> + Label true true @@ -428,46 +326,9 @@ true true UserCmds + ShowBottom Auto - - ПояснениеНастройкиВхода - 2144 - - <key>ru</key> - <value>Сложность и смена паролей, ограничение работы неактивных пользователей.</value> - - true - true - - true - - - ПояснениеНастройкиВходаРасширеннаяПодсказка - 2146 - Label - true - true - - Left - - - - ПояснениеНастройкиВходаКонтекстноеМеню - 2145 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - true true @@ -504,10 +365,12 @@ true - 86 - false + + <key>ru</key> + <value>Пользователи</value> + - ПользователиИГруппыРасширеннаяПодсказка + ГруппаПользователиРасширеннаяПодсказка 2042 Label true @@ -518,65 +381,118 @@ UsualGroup - Auto + Collapsible + Button + NormalSeparation true true Equal + auto Auto Auto - Группа1 - 2174 + ГруппаВнешниеПользователи + 852 - ПрофилиИГруппыДоступа - 838 - - ГруппыДоступа - 848 - - ОткрытьГруппыДоступа - 849 - true - true - - true - - - ОткрытьГруппыДоступаExtendedTooltip - 2052 - Label - true - true - - Left - - - Hyperlink - Catalog.ГруппыДоступа.StandardCommand.OpenList - Normal - Auto + ИспользованиеВнешнихПользователей + 1883 + + ИспользоватьВнешнихПользователей + 699 + + <key>ru</key> + <value>Разрешить доступ внешним пользователям</value> + + true + true + + true + + + НаборКонстант.ИспользоватьВнешнихПользователей + + Right + + ru + Предоставление удаленного доступа партнерам к программе. + + ShowBottom + + OnChange + ИспользоватьВнешнихПользователейПриИзменении + + + ИспользоватьВнешнихПользователейExtendedTooltip + 2072 + Label true true - UserCmds - Auto - + + Left + + + + ИспользоватьВнешнихПользователейКонтекстноеМеню + 700 + true + + CheckBoxField + Enter + true + Left + true + + + true + true + + true + + + <key>ru</key> + <value>Использование внешних пользователей</value> + + 43 + false + + ИспользованиеВнешнихПользователейРасширеннаяПодсказка + 2071 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + Группа10 + 2192 + + Группа7 + 2186 - ПояснениеГруппыДоступа - 850 - - <key>ru</key> - <value>Групповая настройка прав доступа.</value> - + ГоризонтальныйОтступ2 + 2158 true true true - ПояснениеГруппыДоступаExtendedTooltip - 2053 + ГоризонтальныйОтступ2РасширеннаяПодсказка + 2160 Label true true @@ -585,38 +501,429 @@ - ПояснениеГруппыДоступаКонтекстноеМеню - 851 + ГоризонтальныйОтступ2КонтекстноеМеню + 2159 true Label + 1 true true - - Style.ПоясняющийТекст - Left + + ВнешниеПользователи + 855 + + ОткрытьВнешниеПользователи + 2031 + true + true + + true + + + ОткрытьВнешниеПользователиРасширеннаяПодсказка + 2075 + + <key>ru</key> + <value>Ведение списка внешних пользователей, которым предоставлен удаленный доступ к программе.</value> + + Label + true + true + + Left + + + Hyperlink + Form.Command.ВнешниеПользователи + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + + <key>ru</key> + <value>Внешние пользователи</value> + + + ВнешниеПользователиРасширеннаяПодсказка + 2074 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + true true true - - <key>ru</key> - <value>Группы доступа</value> - - - ru - Группы доступа - 43 false - ГруппыДоступаРасширеннаяПодсказка - 2051 + Группа7РасширеннаяПодсказка + 2187 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + Группа8 + 2188 + + ГруппаНастройкиВходаВнешнихПользователей + 2147 + + НастройкиВходаВнешнихПользователей + 2149 + + <key>ru</key> + <value>Настройки входа</value> + + true + true + + true + + + НастройкиВходаВнешнихПользователейРасширеннаяПодсказка + 2150 + + <key>ru</key> + <value>Сложность и смена паролей, ограничение работы неактивных внешних пользователей.</value> + + Label + true + true + + Left + + + Hyperlink + Form.Command.НастройкиВходаВнешнихПользователей + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + + <key>ru</key> + <value>Группа настройки входа внешних пользователей</value> + + + ГруппаНастройкиВходаВнешнихПользователейРасширеннаяПодсказка + 2148 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + 43 + false + + Группа8РасширеннаяПодсказка + 2189 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + false + + Группа10РасширеннаяПодсказка + 2193 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Внешние пользователи</value> + + + ГруппаВнешниеПользователиРасширеннаяПодсказка + 2070 + Label + true + true + + Left + + + UsualGroup + + Vertical + Collapsible + Button + NormalSeparation + true + true + Equal + auto + Auto + Auto + + + + ГруппаГруппыДоступа + 2174 + + ПрофилиИГруппыДоступа + 838 + + Группа2 + 2176 + + ГруппыДоступа + 848 + + ОткрытьГруппыДоступа + 849 + true + true + + true + + + ОткрытьГруппыДоступаExtendedTooltip + 2052 + + <key>ru</key> + <value>Групповая настройка прав доступа.</value> + + Label + true + true + + Left + + + Hyperlink + Catalog.ГруппыДоступа.StandardCommand.OpenList + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + + <key>ru</key> + <value>Группы доступа</value> + + + ru + Группы доступа + + + ГруппыДоступаРасширеннаяПодсказка + 2051 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаОграничиватьДоступНаУровнеЗаписей + 1881 + + ОграничиватьДоступНаУровнеЗаписей + 701 + true + true + + true + + + НаборКонстант.ОграничиватьДоступНаУровнеЗаписей + + Right + + ru + Расширенная настройка, позволяющая максимально гибко настраивать права доступа к справочникам, документам и другим данным программы в предусмотренных разрезах. + + ShowBottom + + OnChange + ОграничиватьДоступНаУровнеЗаписейПриИзменении + + + ОграничиватьДоступНаУровнеЗаписейExtendedTooltip + 2058 + Label + true + + Left + + + + ОграничиватьДоступНаУровнеЗаписейКонтекстноеМеню + 702 + true + + CheckBoxField + Auto + true + Left + true + + + true + true + + true + + + <key>ru</key> + <value>Группа ограничивать доступ на уровне записей</value> + + + ru + Группа ограничивать доступ на уровне записей + + + ГруппаОграничиватьДоступНаУровнеЗаписейExtendedTooltip + 2057 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + 43 + false + + Группа2РасширеннаяПодсказка + 2177 Label true true @@ -648,6 +955,10 @@ ОткрытьПрофилиГруппДоступаExtendedTooltip 2055 + + <key>ru</key> + <value>Шаблоны настроек прав доступа пользователей.</value> + Label true true @@ -662,45 +973,9 @@ true true UserCmds + ShowBottom Auto - - ПояснениеПрофилиГруппДоступа - 846 - - <key>ru</key> - <value>Шаблоны настроек прав доступа пользователей.</value> - - true - true - - true - - - ПояснениеПрофилиГруппДоступаExtendedTooltip - 2056 - Label - true - true - - Left - - - - ПояснениеПрофилиГруппДоступаКонтекстноеМеню - 847 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -741,8 +1016,6 @@ true - 86 - false ПрофилиИГруппыДоступаРасширеннаяПодсказка 2049 @@ -763,127 +1036,17 @@ Auto - - ГруппаОграничиватьДоступНаУровнеЗаписей - 1881 - - ОграничиватьДоступНаУровнеЗаписей - 701 - true - true - - true - - - НаборКонстант.ОграничиватьДоступНаУровнеЗаписей - - Right - - OnChange - ОграничиватьДоступНаУровнеЗаписейПриИзменении - - - ОграничиватьДоступНаУровнеЗаписейExtendedTooltip - 2058 - Label - true - true - - Left - - - - ОграничиватьДоступНаУровнеЗаписейКонтекстноеМеню - 702 - true - - CheckBoxField - Auto - true - Left - true - - - - ПояснениеОграничиватьДоступНаУровнеЗаписей - 839 - - <key>ru</key> - <value>Расширенная настройка, позволяющая максимально гибко настраивать права доступа к справочникам, документам и другим данным программы в предусмотренных разрезах.</value> - - true - true - - true - - - ПояснениеОграничиватьДоступНаУровнеЗаписейExtendedTooltip - 2059 - Label - true - true - - Left - - - - ПояснениеОграничиватьДоступНаУровнеЗаписейКонтекстноеМеню - 840 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - - true - true - - true - - - <key>ru</key> - <value>Группа ограничивать доступ на уровне записей</value> - - - ru - Группа ограничивать доступ на уровне записей - - 43 - false - - ГруппаОграничиватьДоступНаУровнеЗаписейExtendedTooltip - 2057 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - true true true + + <key>ru</key> + <value>Группы доступа</value> + - Группа1РасширеннаяПодсказка + ГруппаГруппыДоступаРасширеннаяПодсказка 2175 Label true @@ -895,440 +1058,56 @@ UsualGroup Vertical - Auto + Collapsible + true + Button NormalSeparation true true + auto Auto Auto - ГруппаРаботаСНастройкамиПользователей - 859 + ГруппаПерсональныеНастройкиПользователей + 2194 - ГруппаКопированиеНастроекПользователей - 1999 - - КопированиеНастроекПользователей - 2008 - true - true - - true - - - КопированиеНастроекПользователейExtendedTooltip - 2062 - Label - true - true - - Left - - - Hyperlink - DataProcessor.НастройкиПользователей.Command.КопированиеНастроекПользователей - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеКопированиеНастроекПользователей - 861 - - <key>ru</key> - <value>Копирование пользовательских настроек между учетными записями.</value> - - true - true - - true - - - ПояснениеКопированиеНастроекПользователейExtendedTooltip - 2063 - Label - true - true - - Left - - - - ПояснениеКопированиеНастроекПользователейКонтекстноеМеню - 862 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа копирование настроек пользователей</value> - - - ru - Группа копирование настроек пользователей - - 43 - false - - ГруппаКопированиеНастроекПользователейExtendedTooltip - 2061 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаНастройкиПользователей - 2000 - - НастройкиПользователей - 2010 - true - true - - true - - - НастройкиПользователейExtendedTooltip - 2065 - Label - true - true - - Left - - - Hyperlink - DataProcessor.НастройкиПользователей.StandardCommand.Open - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеНастройкиПользователей - 2002 - - <key>ru</key> - <value>Управление пользовательскими настройками отчетов, внешнего вида программы и прочими настройками.</value> - - true - true - - true - - - ПояснениеНастройкиПользователейExtendedTooltip - 2066 - Label - true - true - - Left - - - - ПояснениеНастройкиПользователейКонтекстноеМеню - 2003 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа настройки пользователей</value> - - - ru - Группа настройки пользователей - - 43 - false - - ГруппаНастройкиПользователейExtendedTooltip - 2064 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа работа с настройками пользователей</value> - - - ru - Группа работа с настройками пользователей - - 86 - false - - ГруппаРаботаСНастройкамиПользователейРасширеннаяПодсказка - 2060 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Equal - Auto - Auto - - - - ГруппаОчисткаНастроекПользователей - 2017 - - ОчисткаНастроекПользователей - 2009 - true - true - - true - - - ОчисткаНастроекПользователейExtendedTooltip - 2068 - Label - true - true - - Left - - - Hyperlink - DataProcessor.НастройкиПользователей.Command.ОчисткаНастроекПользователей - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеОчисткаНастроекПользователей - 2019 - - <key>ru</key> - <value>Удаление настроек у всех или выбранных пользователей.</value> - - true - true - - true - - - ПояснениеОчисткаНастроекПользователейExtendedTooltip - 2069 - Label - true - true - - Left - - - - ПояснениеОчисткаНастроекПользователейКонтекстноеМеню - 2020 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - 43 - false - - ГруппаОчисткаНастроекПользователейExtendedTooltip - 2067 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - - - - НастройкаВнешнихПользователей - 852 - - ИспользованиеВнешнихПользователейИНастройкиВхода - 2154 + ГруппаРаботаСНастройкамиПользователей + 859 - ИспользованиеВнешнихПользователей - 1883 - - ИспользоватьВнешнихПользователей - 699 - - <key>ru</key> - <value>Разрешить доступ внешним пользователям</value> - - true - true - - true - - - НаборКонстант.ИспользоватьВнешнихПользователей - - Right - - OnChange - ИспользоватьВнешнихПользователейПриИзменении - - - ИспользоватьВнешнихПользователейExtendedTooltip - 2072 - Label - true - true - - Left - - - - ИспользоватьВнешнихПользователейКонтекстноеМеню - 700 - true - - CheckBoxField - Enter - true - Left - true - - - - ПояснениеИспользоватьВнешнихПользователей - 853 - - <key>ru</key> - <value>Предоставление удаленного доступа партнерам к программе.</value> - + ГруппаКопированиеНастроекПользователей + 1999 + + КопированиеНастроекПользователей + 2008 true true true - ПояснениеИспользоватьВнешнихПользователейExtendedTooltip - 2073 + КопированиеНастроекПользователейExtendedTooltip + 2062 + + <key>ru</key> + <value>Копирование пользовательских настроек между учетными записями.</value> + Label - true true Left - - ПояснениеИспользоватьВнешнихПользователейКонтекстноеМеню - 854 - true - - Label + Hyperlink + DataProcessor.НастройкиПользователей.Command.КопированиеНастроекПользователей + Normal + Auto true true - - Style.ПоясняющийТекст - - - Left - Top - + UserCmds + ShowBottom + Auto true true @@ -1337,13 +1116,17 @@ <key>ru</key> - <value>Использование внешних пользователей</value> + <value>Группа копирование настроек пользователей</value> + + ru + Группа копирование настроек пользователей + 43 false - ИспользованиеВнешнихПользователейРасширеннаяПодсказка - 2071 + ГруппаКопированиеНастроекПользователейExtendedTooltip + 2061 Label true true @@ -1362,239 +1145,38 @@ - ВнешниеПользователиИНастройкиВхода - 2156 - - ГоризонтальныйОтступ2 - 2158 + ГруппаНастройкиПользователей + 2000 + + НастройкиПользователей + 2010 true true true - ГоризонтальныйОтступ2РасширеннаяПодсказка - 2160 + НастройкиПользователейExtendedTooltip + 2065 + + <key>ru</key> + <value>Управление пользовательскими настройками отчетов, внешнего вида программы и прочими настройками.</value> + Label - true true Left - - ГоризонтальныйОтступ2КонтекстноеМеню - 2159 - true - - Label + Hyperlink + DataProcessor.НастройкиПользователей.StandardCommand.Open + Normal + Auto true true - - Left - - - - ВнешниеПользователи - 855 - - ОткрытьВнешниеПользователи - 2031 - true - true - - true - - - ОткрытьВнешниеПользователиРасширеннаяПодсказка - 2075 - Label - true - true - - Left - - - Hyperlink - Form.Command.ВнешниеПользователи - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеВнешниеПользователи - 857 - - <key>ru</key> - <value>Ведение списка внешних пользователей, которым предоставлен удаленный доступ к программе.</value> - - true - true - - true - - - ПояснениеВнешниеПользователиРасширеннаяПодсказка - 2076 - Label - true - true - - Left - - - - ПояснениеВнешниеПользователиКонтекстноеМеню - 858 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - - true - true - - true - - - <key>ru</key> - <value>Внешние пользователи</value> - - 43 - false - - ВнешниеПользователиРасширеннаяПодсказка - 2074 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаНастройкиВходаВнешнихПользователей - 2147 - - НастройкиВходаВнешнихПользователей - 2149 - - <key>ru</key> - <value>Настройки входа</value> - - true - true - - true - - - НастройкиВходаВнешнихПользователейРасширеннаяПодсказка - 2150 - Label - true - true - - Left - - - Hyperlink - Form.Command.НастройкиВходаВнешнихПользователей - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеНастройкиВходаВнешнихПользователей - 2151 - - <key>ru</key> - <value>Сложность и смена паролей, ограничение работы неактивных внешних пользователей.</value> - - true - true - - true - - - ПояснениеНастройкиВходаВнешнихПользователейРасширеннаяПодсказка - 2153 - Label - true - true - - Left - - - - ПояснениеНастройкиВходаВнешнихПользователейКонтекстноеМеню - 2152 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - - true - true - - true - - - <key>ru</key> - <value>Группа настройки входа внешних пользователей</value> - - 43 - false - - ГруппаНастройкиВходаВнешнихПользователейРасширеннаяПодсказка - 2148 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + UserCmds + ShowBottom + Auto true true @@ -1603,11 +1185,17 @@ <key>ru</key> - <value>Внешние пользователи и настройки входа</value> + <value>Группа настройки пользователей</value> + + ru + Группа настройки пользователей + + 43 + false - ВнешниеПользователиИНастройкиВходаРасширеннаяПодсказка - 2157 + ГруппаНастройкиПользователейExtendedTooltip + 2064 Label true true @@ -1617,6 +1205,7 @@ UsualGroup + Vertical Auto true true @@ -1631,13 +1220,76 @@ <key>ru</key> - <value>Использование внешних пользователей и настройки входа</value> + <value>Группа работа с настройками пользователей</value> - 86 + + ru + Группа работа с настройками пользователей + + + ГруппаРаботаСНастройкамиПользователейРасширеннаяПодсказка + 2060 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Equal + Auto + Auto + + + + ГруппаОчисткаНастроекПользователей + 2017 + + ОчисткаНастроекПользователей + 2009 + true + true + + true + + + ОчисткаНастроекПользователейExtendedTooltip + 2068 + + <key>ru</key> + <value>Удаление настроек у всех или выбранных пользователей.</value> + + Label + true + + Left + + + Hyperlink + DataProcessor.НастройкиПользователей.Command.ОчисткаНастроекПользователей + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + 43 false - ИспользованиеВнешнихПользователейИНастройкиВходаРасширеннаяПодсказка - 2155 + ГруппаОчисткаНастроекПользователейExtendedTooltip + 2067 Label true true @@ -1662,16 +1314,15 @@ <key>ru</key> - <value>Настройка внешних пользователей</value> + <value>Персональные настройки пользователей</value> ru - Настройка внешних пользователей + Группа персональные настройки пользователей - 86 - НастройкаВнешнихПользователейРасширеннаяПодсказка - 2070 + ГруппаПерсональныеНастройкиПользователейРасширеннаяПодсказка + 2195 Label true true @@ -1682,10 +1333,13 @@ UsualGroup Vertical - Auto + Collapsible + true + Button + NormalSeparation true true - Equal + auto Auto Auto @@ -1714,7 +1368,6 @@ Write WriteAndClose Yes - 88 DontBlock true true diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиПользователейИПрав/Help/ru.html b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиПользователейИПрав/Help/ru.html index 620a0a638..dc274a8eb 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиПользователейИПрав/Help/ru.html +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиПользователейИПрав/Help/ru.html @@ -6,17 +6,22 @@ TD { }

      В данной панели осуществляется администрирование пользователей и настройка прав доступа. Доступны команды:

      +

      Пользователи

      +

      В данном подразделе сгруппированы команды для настройки пользователей программы и настроек входа пользователей.

      • Пользователи - администрирование пользователей, которые работают с программой.
      • Настройки входа - переход к настройкам сложности и смены паролей пользователей. Можно установить сроки действия паролей, а также ограничение работы неактивных пользователей. -
      • Группы пользователей - включите флажок, для того чтобы можно было использовать группы для пользователей и внешних пользователей. Один пользователь может быть участником нескольких групп. Права доступа, указанные для группы, назначаются всем ее участникам. Использование групп имеет смысл, если пользователей программы много.
      • -
      • Группы доступа - настройка прав доступа и ограничений для пользователей и групп пользователей. Группа доступа определяет совокупность действий с данными программы, которые могут выполнять участники этой группы. +
      • Группы пользователей - включите флажок, для того чтобы можно было использовать группы для пользователей и внешних пользователей. Один пользователь может быть участником нескольких групп. Права доступа, указанные для группы, назначаются всем ее участникам. Использование групп имеет смысл, если пользователей программы много.

      Внешние пользователи

      +

      В данном подразделе сгруппированы команды для настройки внешних пользователей программы и настроек входа внешних пользователей.

      +
      +

      Группы доступа

      +
      • Группы доступа - настройка прав доступа и ограничений для пользователей и групп пользователей. Группа доступа определяет совокупность действий с данными программы, которые могут выполнять участники этой группы.
      • Ограничивать доступ на уровне записей - включите этот флажок, для того чтобы максимально гибко настраивать прав доступа пользователей к справочникам, документам и другим данным программы. -
      • Профили групп доступа - настройка предустановленных шаблонов групп доступа пользователей. Профили групп доступа, как правило, объединяют в себе несколько ролей. При включении пользователя в группу доступа ему назначаются все роли, заданные в профиле группы доступа.
      • -
      • Копирование настроек - копирование настроек контекста работы программы от одного пользователя другим. Это бывает полезно при вводе нового пользователя. +
      • Профили групп доступа - настройка предустановленных шаблонов групп доступа пользователей. Профили групп доступа, как правило, объединяют в себе несколько ролей. При включении пользователя в группу доступа ему назначаются все роли, заданные в профиле группы доступа.

      Персональные настройки пользователей

      +
      • Копирование настроек - копирование настроек контекста работы программы от одного пользователя другим. Это бывает полезно при вводе нового пользователя.
      • Очистка настроек - очистка настроек пользователя, группы пользователей или всех пользователей. Это восстанавливает целостность настроек и в некоторых случаях помогает нормализовать работу сеансов этого пользователя в программе. -
      • Настройки пользователей - просмотр и управление настройками выбранного пользователя. -
      • Разрешить доступ внешним пользователям - включите флажок, для того чтобы настраивать доступ внешних пользователей и использовать их в программе. -
      • Внешние пользователи - учет пользователей, которые работают с программой "извне". В качестве внешних пользователей программы могут выступать партнеры, респонденты различных опросов, клиенты интернет-магазина и др. Администрирование внешних пользователей выполняется аналогично пользователям программы.
      • -
      • Настройки входа - настройки сложности и смены паролей, ограничение работы неактивных внешних пользователей.

      См. также:

      +
    • Настройки пользователей - просмотр и управление настройками выбранного пользователя.
    • См. также:

      \ No newline at end of file diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиПользователейИПрав/Module.bsl b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиПользователейИПрав/Module.bsl index 45bdec807..3c9eac849 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиПользователейИПрав/Module.bsl +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиПользователейИПрав/Module.bsl @@ -14,14 +14,11 @@ Возврат; КонецЕсли; - // СтандартныеПодсистемы.Пользователи Если Не Пользователи.ОбщиеНастройкиВходаИспользуются() Тогда Элементы.ГруппаНастройкиВхода.Видимость = Ложь; - Элементы.ГруппыПользователейИНастройкиВхода.Группировка - = ГруппировкаПодчиненныхЭлементовФормы.Горизонтальная; Элементы.ГоризонтальныйОтступ2.Видимость = Ложь; Элементы.ГруппаНастройкиВходаВнешнихПользователей.Видимость = Ложь; - Элементы.ИспользованиеВнешнихПользователейИНастройкиВхода.Группировка + Элементы.ГруппаВнешниеПользователи.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Горизонтальная; КонецЕсли; @@ -29,7 +26,9 @@ Или СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации() Или ОбщегоНазначенияПовтИсп.ЭтоАвтономноеРабочееМесто() Тогда - Элементы.НастройкаВнешнихПользователей.Видимость = Ложь; + Элементы.ГруппаВнешниеПользователи.Видимость = Ложь; + Элементы.ОписаниеРаздела.Заголовок = + НСтр("ru = 'Администрирование пользователей, настройка групп доступа, управление пользовательскими настройками.'"); КонецЕсли; Если СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации() @@ -37,17 +36,17 @@ Элементы.ИспользоватьГруппыПользователей.Доступность = Ложь; КонецЕсли; - // Конец СтандартныеПодсистемы.Пользователи - // СтандартныеПодсистемы.УправлениеДоступом - УпрощенныйИнтерфейс = УправлениеДоступомСлужебный.УпрощенныйИнтерфейсНастройкиПравДоступа(); - Элементы.ГруппыДоступа.Видимость = НЕ УпрощенныйИнтерфейс; - Элементы.ГруппыПользователей.Видимость = НЕ УпрощенныйИнтерфейс; - - Если ОбщегоНазначенияПовтИсп.ЭтоАвтономноеРабочееМесто() Тогда - Элементы.ОграничиватьДоступНаУровнеЗаписей.Доступность = Ложь; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеДоступом") Тогда + МодульУправлениеДоступомСлужебный = ОбщегоНазначения.ОбщийМодуль("УправлениеДоступомСлужебный"); + УпрощенныйИнтерфейс = МодульУправлениеДоступомСлужебный.УпрощенныйИнтерфейсНастройкиПравДоступа(); + Элементы.ГруппыДоступа.Видимость = НЕ УпрощенныйИнтерфейс; + Элементы.ГруппыПользователей.Видимость = НЕ УпрощенныйИнтерфейс; + + Если ОбщегоНазначенияПовтИсп.ЭтоАвтономноеРабочееМесто() Тогда + Элементы.ОграничиватьДоступНаУровнеЗаписей.Доступность = Ложь; + КонецЕсли; КонецЕсли; - // Конец СтандартныеПодсистемы.УправлениеДоступом // Обновление состояния элементов. УстановитьДоступность(); @@ -55,7 +54,10 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ОбновитьИнтерфейсПрограммы(); КонецПроцедуры @@ -63,14 +65,11 @@ #Область ОбработчикиСобытийЭлементовШапкиФормы -// СтандартныеПодсистемы.УправлениеДоступом &НаКлиенте Процедура ИспользоватьГруппыПользователейПриИзменении(Элемент) Подключаемый_ПриИзмененииРеквизита(Элемент); КонецПроцедуры -// Конец СтандартныеПодсистемы.УправлениеДоступом -// СтандартныеПодсистемы.УправлениеДоступом &НаКлиенте Процедура ОграничиватьДоступНаУровнеЗаписейПриИзменении(Элемент) @@ -89,19 +88,15 @@ ПоказатьВопрос( Новый ОписаниеОповещения( "ОграничиватьДоступНаУровнеЗаписейПриИзмененииЗавершение", - ЭтотОбъект, - Элемент), - ТекстВопроса, - РежимДиалогаВопрос.ДаНет); + ЭтотОбъект, Элемент), + ТекстВопроса, РежимДиалогаВопрос.ДаНет); Иначе Подключаемый_ПриИзмененииРеквизита(Элемент); КонецЕсли; КонецПроцедуры -// Конец СтандартныеПодсистемы.УправлениеДоступом -// СтандартныеПодсистемы.Пользователи &НаКлиенте Процедура ИспользоватьВнешнихПользователейПриИзменении(Элемент) @@ -138,13 +133,11 @@ КонецЕсли; КонецПроцедуры -// Конец СтандартныеПодсистемы.Пользователи #КонецОбласти #Область ОбработчикиКомандФормы -// СтандартныеПодсистемы.Пользователи &НаКлиенте Процедура СправочникВнешниеПользователи(Команда) ОткрытьФорму("Справочник.ВнешниеПользователи.ФормаСписка", , ЭтотОбъект); @@ -166,7 +159,6 @@ ОткрытьФорму("ОбщаяФорма.НастройкиВходаПользователей", ПараметрыФормы, ЭтотОбъект); КонецПроцедуры -// Конец СтандартныеПодсистемы.Пользователи #КонецОбласти @@ -205,7 +197,6 @@ КонецПроцедуры -// СтандартныеПодсистемы.УправлениеДоступом &НаКлиенте Процедура ОграничиватьДоступНаУровнеЗаписейПриИзмененииЗавершение(Ответ, Элемент) Экспорт @@ -216,9 +207,7 @@ КонецЕсли; КонецПроцедуры -// Конец СтандартныеПодсистемы.УправлениеДоступом -// СтандартныеПодсистемы.Пользователи &НаКлиенте Процедура ИспользоватьВнешнихПользователейПриИзмененииЗавершение(Ответ, Элемент) Экспорт @@ -229,7 +218,6 @@ КонецЕсли; КонецПроцедуры -// Конец СтандартныеПодсистемы.Пользователи //////////////////////////////////////////////////////////////////////////////// // Вызов сервера @@ -304,12 +292,10 @@ &НаСервере Процедура УстановитьДоступность(РеквизитПутьКДанным = "") - // СтандартныеПодсистемы.Пользователи Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьВнешнихПользователей" ИЛИ РеквизитПутьКДанным = "" Тогда Элементы.ОткрытьВнешниеПользователи.Доступность = НаборКонстант.ИспользоватьВнешнихПользователей; Элементы.НастройкиВходаВнешнихПользователей.Доступность = НаборКонстант.ИспользоватьВнешнихПользователей; КонецЕсли; - // Конец СтандартныеПодсистемы.Пользователи diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиРаботыСФайлами/Form.form b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиРаботыСФайлами/Form.form index fb64fd2f0..8acfb7b26 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиРаботыСФайлами/Form.form +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиРаботыСФайлами/Form.form @@ -31,43 +31,7 @@ true Label - 78 - true true - false - false - - Left - Top - -
      - - Декорация1 - 2042 - true - true - - true - - - Декорация1ExtendedTooltip - 2046 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 2043 - true - - Label - true - true - true Left @@ -106,8 +70,6 @@ true - false - false ГруппаСправкаExtendedTooltip 2047 @@ -165,6 +127,7 @@ НаборКонстант.ХранитьФайлыВТомахНаДиске Right + ShowBottom OnChange ХранитьФайлыВТомахНаДискеПриИзменении @@ -172,6 +135,10 @@ ХранитьФайлыВТомахНаДискеExtendedTooltip 2051 + + <key>ru</key> + <value>Выбор между хранением файлов в информационной базе или в томах на диске.</value> + Label true true @@ -191,43 +158,6 @@ true - - ПояснениеХранитьФайлыВТомахНаДиске - 1407 - - <key>ru</key> - <value>Выбор между хранением файлов в информационной базе или в томах на диске.</value> - - true - true - - true - - - ПояснениеХранитьФайлыВТомахНаДискеExtendedTooltip - 2052 - Label - true - true - - Left - - - - ПояснениеХранитьФайлыВТомахНаДискеКонтекстноеМеню - 1408 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -241,6 +171,8 @@ ru Группа хранить файлы в томах на диске + 43 + false ГруппаХранитьФайлыВТомахНаДискеExtendedTooltip 2050 @@ -275,6 +207,10 @@ СправочникТомаХраненияФайловExtendedTooltip 2054 + + <key>ru</key> + <value>Настройка подключения к томам (папкам) хранения файлов на файловом сервере.</value> + Label true true @@ -289,45 +225,9 @@ true true UserCmds + ShowBottom Auto
      - - ПояснениеСправочникТомаХраненияФайлов - 1275 - - <key>ru</key> - <value>Настройка подключения к томам (папкам) хранения файлов на файловом сервере.</value> - - true - true - - true - - - ПояснениеСправочникТомаХраненияФайловExtendedTooltip - 2055 - Label - true - true - - Left - - - - ПояснениеСправочникТомаХраненияФайловКонтекстноеМеню - 1276 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -374,8 +274,6 @@ ru Группа управление томами файлов - 86 - false ГруппаУправлениеТомамиФайловExtendedTooltip 2049 @@ -419,6 +317,7 @@ ЗапрещатьЗагрузкуФайловПоРасширению Right + 2 OnChange ЗапрещатьЗагрузкуФайловПоРасширениюПриИзменении @@ -482,7 +381,6 @@ Left true - true 2 true true @@ -504,11 +402,20 @@ ru Группа расширение + ShowBottom ГруппаРасширениеExtendedTooltip 2057 + + <key>ru</key> + <value>Расширения файлов, для которых будет запрещена загрузка в программы, чтобы предотвратить возможность нанесения вреда +компьютеру и данным в программе. Указываются через "пробел". +См. также: <link http://1c.ru/news/info.jsp?id=21537>Пример проблемы с вирусом во внешней обработке</>. + +</value> + + true Label - true true Left @@ -523,47 +430,6 @@ Auto - - ПояснениеЗапретЗагрузкиФайловПоРасширению - 1410 - - <key>ru</key> - <value>Расширения файлов, для которых будет запрещена загрузка в программы, чтобы предотвратить возможность нанесения вреда -компьютеру и данным в программе. Указываются через "пробел". -См. также: <link http://1c.ru/news/info.jsp?id=21537>Пример проблемы с вирусом во внешней обработке</>. -</value> - - true - true - - true - - - ПояснениеЗапретЗагрузкиФайловПоРасширениюExtendedTooltip - 2060 - Label - true - true - - Left - - - - ПояснениеЗапретЗагрузкиФайловПоРасширениюКонтекстноеМеню - 1411 - true - - true - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -577,8 +443,6 @@ ru Группа управление загрузкой файлов - 86 - false ГруппаУправлениеЗагрузкойФайловExtendedTooltip 2056 @@ -648,6 +512,7 @@ 5 true true + false true true true @@ -683,7 +548,6 @@ true Label - true true false @@ -703,11 +567,15 @@ ru Группа размер + ShowBottom ГруппаРазмерExtendedTooltip 2062 + + <key>ru</key> + <value>Ограничение загрузки файлов, превышающих указанный размер.</value> + Label - true true Left @@ -722,43 +590,6 @@ Auto - - ПояснениеМаксимальныйРазмерФайлаОбластиДанных - 1413 - - <key>ru</key> - <value>Ограничение загрузки файлов, превышающих указанный размер.</value> - - true - true - - true - - - ПояснениеМаксимальныйРазмерФайлаОбластиДанныхExtendedTooltip - 2065 - Label - true - true - - Left - - - - ПояснениеМаксимальныйРазмерФайлаОбластиДанныхКонтекстноеМеню - 1414 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -772,8 +603,7 @@ ru Группа максимальный размер файла области данных - 43 - false + 42 ГруппаМаксимальныйРазмерФайлаОбластиДанныхExtendedTooltip 2061 @@ -809,6 +639,10 @@ НастройкаОчисткиФайловРасширеннаяПодсказка 2104 + + <key>ru</key> + <value>Настройка правил очистки файлов.</value> + Label true true @@ -823,45 +657,9 @@ true true UserCmds + ShowBottom Auto - - ПояснениеНастройкаОчисткиФайлов - 2107 - - <key>ru</key> - <value>Настройка правил очистки файлов.</value> - - true - true - - true - - - ПояснениеНастройкаОчисткиФайловРасширеннаяПодсказка - 2109 - Label - true - true - - Left - - - - ПояснениеНастройкаОчисткиФайловКонтекстноеМеню - 2108 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -908,6 +706,7 @@ ru Группа управление файлами + false ГруппаУправлениеФайламиРасширеннаяПодсказка 2102 @@ -928,30 +727,115 @@ - ГруппаСписокРасширенийФайловOpenDocumentОбластиДанных - 1415 - - СписокРасширенийФайловOpenDocumentОбластиДанных - 729 - - <key>ru</key> - <value>Расширения файлов ODF</value> - + ГруппаСписокРасширенийФайлов + 2129 + + ГруппаСписокРасширенийФайловOpenDocumentОбластиДанных + 1415 + + СписокРасширенийФайловOpenDocumentОбластиДанных + 729 + + <key>ru</key> + <value>Расширения файлов ODF</value> + + true + true + + true + + + НаборКонстант.СписокРасширенийФайловOpenDocumentОбластиДанных + + ShowBottom + + OnChange + СписокРасширенийФайловOpenDocumentОбластиДанныхПриИзменении + + + СписокРасширенийФайловOpenDocumentОбластиДанныхExtendedTooltip + 2067 + Label + true + true + + Left + + + + СписокРасширенийФайловOpenDocumentОбластиДанныхКонтекстноеМеню + 730 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + ПояснениеСписокРасширенийФайловOpenDocumentОбластиДанных + 1417 + + <key>ru</key> + <value>Расширения файлов открытого формата документов для офисных приложений. +Указываются через "пробел".</value> + + true + true + + true + + + ПояснениеСписокРасширенийФайловOpenDocumentОбластиДанныхExtendedTooltip + 2068 + Label + true + true + + Left + + + + ПояснениеСписокРасширенийФайловOpenDocumentОбластиДанныхКонтекстноеМеню + 1418 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + + true true true - - НаборКонстант.СписокРасширенийФайловOpenDocumentОбластиДанных - - - OnChange - СписокРасширенийФайловOpenDocumentОбластиДанныхПриИзменении - + + <key>ru</key> + <value>Группа список расширений файлов open document области данных</value> + + + ru + Группа список расширений файлов open document области данных + + ShowBottom - СписокРасширенийФайловOpenDocumentОбластиДанныхExtendedTooltip - 2067 + ГруппаСписокРасширенийФайловOpenDocumentОбластиДанныхExtendedTooltip + 2066 Label true true @@ -959,43 +843,112 @@ Left - - СписокРасширенийФайловOpenDocumentОбластиДанныхКонтекстноеМеню - 730 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal + UsualGroup + + Vertical + Auto + true + Auto + Auto - - ПояснениеСписокРасширенийФайловOpenDocumentОбластиДанных - 1417 - - <key>ru</key> - <value>Расширения файлов открытого формата документов для офисных приложений. + <items xsi:type="form:FormGroup"> + <name>ГруппаСписокРасширенийТекстовыхФайлов</name> + <id>2041</id> + <items xsi:type="form:FormField"> + <name>СписокРасширенийТекстовыхФайлов</name> + <id>1974</id> + <title> + <key>ru</key> + <value>Расширения текстовых файлов</value> + + true + true + + true + + + НаборКонстант.СписокРасширенийТекстовыхФайлов + + + OnChange + СписокРасширенийТекстовыхФайловПриИзменении + + + СписокРасширенийТекстовыхФайловExtendedTooltip + 2070 + Label + true + true + + Left + + + + СписокРасширенийТекстовыхФайловКонтекстноеМеню + 1975 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + ПояснениеСписокРасширенийТекстовыхФайлов + 1976 + + <key>ru</key> + <value>Расширения файлов, содержащих текстовые данные. Указываются через "пробел".</value> - + + true + true + + true + + + ПояснениеСписокРасширенийТекстовыхФайловExtendedTooltip + 2071 + Label + true + true + + Left + + + + ПояснениеСписокРасширенийТекстовыхФайловКонтекстноеМеню + 1977 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + + true true true - ПояснениеСписокРасширенийФайловOpenDocumentОбластиДанныхExtendedTooltip - 2068 + ГруппаСписокРасширенийТекстовыхФайловExtendedTooltip + 2069 Label true true @@ -1003,19 +956,13 @@ Left
      - - ПояснениеСписокРасширенийФайловOpenDocumentОбластиДанныхКонтекстноеМеню - 1418 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left + UsualGroup + + Vertical + Auto + true + Auto + Auto true @@ -1025,135 +972,15 @@ <key>ru</key> - <value>Группа список расширений файлов open document области данных</value> + <value>Группа список расширений файлов</value> ru - Группа список расширений файлов open document области данных + Группа список расширений файлов - 86 - false - ГруппаСписокРасширенийФайловOpenDocumentОбластиДанныхExtendedTooltip - 2066 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаСписокРасширенийТекстовыхФайлов - 2041 - - СписокРасширенийТекстовыхФайлов - 1974 - - <key>ru</key> - <value>Расширения текстовых файлов</value> - - true - true - - true - - - НаборКонстант.СписокРасширенийТекстовыхФайлов - - - OnChange - СписокРасширенийТекстовыхФайловПриИзменении - - - СписокРасширенийТекстовыхФайловExtendedTooltip - 2070 - Label - true - true - - Left - - - - СписокРасширенийТекстовыхФайловКонтекстноеМеню - 1975 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal - - - - ПояснениеСписокРасширенийТекстовыхФайлов - 1976 - - <key>ru</key> - <value>Расширения файлов, содержащих текстовые данные. -Указываются через "пробел".</value> - - true - true - - true - - - ПояснениеСписокРасширенийТекстовыхФайловExtendedTooltip - 2071 - Label - true - true - - Left - - - - ПояснениеСписокРасширенийТекстовыхФайловКонтекстноеМеню - 1977 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - 86 - false - - ГруппаСписокРасширенийТекстовыхФайловExtendedTooltip - 2069 + ГруппаСписокРасширенийФайловРасширеннаяПодсказка + 2130 Label true true @@ -1189,6 +1016,7 @@ НаборКонстант.СинхронизироватьФайлы Right + ShowBottom OnChange СинхронизироватьФайлыПриИзменении @@ -1196,6 +1024,10 @@ СинхронизироватьФайлыРасширеннаяПодсказка 2114 + + <key>ru</key> + <value>Синхронизация с Яндекс.Диск, Box и т.д. для упрощения редактирования файлов.</value> + Label true true @@ -1215,43 +1047,6 @@ true - - ПояснениеСинхронизироватьФайлы - 2121 - - <key>ru</key> - <value>Синхронизация с Яндекс.Диск, Box и т.д. для упрощения редактирования файлов.</value> - - true - true - - true - - - ПояснениеСинхронизироватьФайлыРасширеннаяПодсказка - 2123 - Label - true - true - - Left - - - - ПояснениеСинхронизироватьФайлыКонтекстноеМеню - 2122 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -1296,6 +1091,10 @@ НастройкиСинхронизацииФайловРасширеннаяПодсказка 2120 + + <key>ru</key> + <value>Настройка правил синхронизации файлов.</value> + Label true true @@ -1310,45 +1109,9 @@ true true UserCmds + ShowBottom Auto - - ПояснениеНастройкаОчисткиФайлов2 - 2126 - - <key>ru</key> - <value>Настройка правил синхронизации файлов.</value> - - true - true - - true - - - ПояснениеНастройкаОчисткиФайлов2РасширеннаяПодсказка - 2128 - Label - true - true - - Left - - - - ПояснениеНастройкаОчисткиФайлов2КонтекстноеМеню - 2127 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -1387,6 +1150,7 @@ ru Группа синхронизация файлов с облачными сервисами + false ГруппаСинхронизацияФайловСОблачнымиСервисамиРасширеннаяПодсказка 2111 @@ -1440,10 +1204,7 @@ true Label - 86 - true true - false Style.ПоясняющийТекст @@ -1531,7 +1292,6 @@ true Label - true true false @@ -1551,11 +1311,15 @@ ru Группа размер + ShowBottom ГруппаРазмер1ExtendedTooltip 2086 + + <key>ru</key> + <value>Ограничение загрузки файлов, превышающих указанный размер.</value> + Label - true true Left @@ -1570,50 +1334,11 @@ Auto - - ПояснениеМаксимальныйРазмерФайла - 2039 - - <key>ru</key> - <value>Ограничение загрузки файлов, превышающих указанный размер.</value> - - true - true - - true - - - ПояснениеМаксимальныйРазмерФайлаExtendedTooltip - 2089 - Label - true - true - - Left - - - - ПояснениеМаксимальныйРазмерФайлаКонтекстноеМеню - 2040 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true true - 86 - false ГруппаМаксимальныйРазмерФайлаExtendedTooltip 2085 @@ -1636,30 +1361,114 @@ - ГруппаСписокЗапрещенныхРасширений - 2028 - - СписокЗапрещенныхРасширений - 2013 - - <key>ru</key> - <value>Расширения, запрещенные для загрузки</value> - + ГруппаСписокРасширений + 2131 + + ГруппаСписокЗапрещенныхРасширений + 2028 + + СписокЗапрещенныхРасширений + 2013 + + <key>ru</key> + <value>Расширения, запрещенные для загрузки</value> + + true + true + + true + + + НаборКонстант.СписокЗапрещенныхРасширений + + + OnChange + СписокЗапрещенныхРасширенийПриИзменении + + + СписокЗапрещенныхРасширенийExtendedTooltip + 2091 + Label + true + true + + Left + + + + СписокЗапрещенныхРасширенийКонтекстноеМеню + 2014 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + ПояснениеЗапретЗагрузкиФайловПоРасширению2 + 2026 + + <key>ru</key> + <value>Расширения файлов, для которых будет запрещена загрузка в папки программы. +Указываются через "пробел".</value> + + true + true + + true + + + ПояснениеЗапретЗагрузкиФайловПоРасширению2ExtendedTooltip + 2092 + Label + true + true + + Left + + + + ПояснениеЗапретЗагрузкиФайловПоРасширению2КонтекстноеМеню + 2027 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + + true true true - - НаборКонстант.СписокЗапрещенныхРасширений - - - OnChange - СписокЗапрещенныхРасширенийПриИзменении - + + <key>ru</key> + <value>Группа список запрещенных расширений</value> + + + ru + Группа список запрещенных расширений + + ShowBottom - СписокЗапрещенныхРасширенийExtendedTooltip - 2091 + ГруппаСписокЗапрещенныхРасширенийExtendedTooltip + 2090 Label true true @@ -1667,43 +1476,112 @@ Left - - СписокЗапрещенныхРасширенийКонтекстноеМеню - 2014 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal + UsualGroup + + Vertical + Auto + NormalSeparation + true + Auto + Auto - - ПояснениеЗапретЗагрузкиФайловПоРасширению2 - 2026 - - <key>ru</key> - <value>Расширения файлов, для которых будет запрещена загрузка в папки программы. + <items xsi:type="form:FormGroup"> + <name>ГруппаСписокРасширенийФайловOpenDocument</name> + <id>2029</id> + <items xsi:type="form:FormField"> + <name>СписокРасширенийФайловOpenDocument</name> + <id>2024</id> + <title> + <key>ru</key> + <value>Расширения файлов ODF</value> + + true + true + + true + + + НаборКонстант.СписокРасширенийФайловOpenDocument + + + OnChange + СписокРасширенийФайловOpenDocumentПриИзменении + + + СписокРасширенийФайловOpenDocumentExtendedTooltip + 2094 + Label + true + true + + Left + + + + СписокРасширенийФайловOpenDocumentКонтекстноеМеню + 2025 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + + ПояснениеСписокРасширенийФайловOpenDocument + 2030 + + <key>ru</key> + <value>Расширения файлов открытого формата документов для офисных приложений. Указываются через "пробел".</value> - + + true + true + + true + + + ПояснениеСписокРасширенийФайловOpenDocumentExtendedTooltip + 2095 + Label + true + true + + Left + + + + ПояснениеСписокРасширенийФайловOpenDocumentКонтекстноеМеню + 2031 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + + true true true - ПояснениеЗапретЗагрузкиФайловПоРасширению2ExtendedTooltip - 2092 + ГруппаСписокРасширенийФайловOpenDocumentExtendedTooltip + 2093 Label true true @@ -1711,19 +1589,14 @@ Left - - ПояснениеЗапретЗагрузкиФайловПоРасширению2КонтекстноеМеню - 2027 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left + UsualGroup + + Vertical + Auto + NormalSeparation + true + Auto + Auto true @@ -1733,17 +1606,15 @@ <key>ru</key> - <value>Группа список запрещенных расширений</value> + <value>Группа список расширений</value> ru - Группа список запрещенных расширений + Группа список расширений - 86 - false - ГруппаСписокЗапрещенныхРасширенийExtendedTooltip - 2090 + ГруппаСписокРасширенийРасширеннаяПодсказка + 2132 Label true true @@ -1755,125 +1626,6 @@ Vertical Auto - NormalSeparation - true - true - Auto - Auto - - - - ГруппаСписокРасширенийФайловOpenDocument - 2029 - - СписокРасширенийФайловOpenDocument - 2024 - - <key>ru</key> - <value>Расширения файлов ODF</value> - - true - true - - true - - - НаборКонстант.СписокРасширенийФайловOpenDocument - - - OnChange - СписокРасширенийФайловOpenDocumentПриИзменении - - - СписокРасширенийФайловOpenDocumentExtendedTooltip - 2094 - Label - true - true - - Left - - - - СписокРасширенийФайловOpenDocumentКонтекстноеМеню - 2025 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - - ПояснениеСписокРасширенийФайловOpenDocument - 2030 - - <key>ru</key> - <value>Расширения файлов открытого формата документов для офисных приложений. -Указываются через "пробел".</value> - - true - true - - true - - - ПояснениеСписокРасширенийФайловOpenDocumentExtendedTooltip - 2095 - Label - true - true - - Left - - - - ПояснениеСписокРасширенийФайловOpenDocumentКонтекстноеМеню - 2031 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - 86 - false - - ГруппаСписокРасширенийФайловOpenDocumentExtendedTooltip - 2093 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation true true Auto @@ -1901,7 +1653,6 @@ ru Общие параметры для всех областей данных - true ОбщиеПараметрыДляВсехОбластейДанныхExtendedTooltip 2083 @@ -1973,7 +1724,6 @@ Write WriteAndClose Yes - 88 DontBlock true true diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиРаботыСФайлами/Module.bsl b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиРаботыСФайлами/Module.bsl index 4ef7763a5..5999bac73 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиРаботыСФайлами/Module.bsl +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиРаботыСФайлами/Module.bsl @@ -13,31 +13,36 @@ Возврат; КонецЕсли; + Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ФайловыеФункции") Тогда + ВызватьИсключение НСтр("ru = 'Не внедрена подсистема Файловые функции. + |Рекомендуется отключить видимость этой панели.'"); + КонецЕсли; + // Значения реквизитов формы РежимРаботы = ОбщегоНазначенияПовтИсп.РежимРаботыПрограммы(); РежимРаботы = Новый ФиксированнаяСтруктура(РежимРаботы); - // СтандартныеПодсистемы.ФайловыеФункции - МаксимальныйРазмерФайла = ФайловыеФункции.МаксимальныйРазмерФайлаОбщий() / (1024*1024); - МаксимальныйРазмерФайлаОбластиДанных = ФайловыеФункции.МаксимальныйРазмерФайла() / (1024*1024); + МодульФайловыеФункции = ОбщегоНазначения.ОбщийМодуль("ФайловыеФункции"); + ЗапрещатьЗагрузкуФайловПоРасширению = НаборКонстант.ЗапрещатьЗагрузкуФайловПоРасширению; + МаксимальныйРазмерФайла = МодульФайловыеФункции.МаксимальныйРазмерФайлаОбщий() / (1024*1024); + МаксимальныйРазмерФайлаОбластиДанных = МодульФайловыеФункции.МаксимальныйРазмерФайла() / (1024*1024); Если РежимРаботы.МодельСервиса Тогда Элементы.МаксимальныйРазмерФайла.МаксимальноеЗначение = МаксимальныйРазмерФайла; КонецЕсли; - ЗапрещатьЗагрузкуФайловПоРасширению = НаборКонстант.ЗапрещатьЗагрузкуФайловПоРасширению; - // Конец СтандартныеПодсистемы.ФайловыеФункции - - // СтандартныеПодсистемы.ФайловыеФункции + Элементы.ГруппаХранитьФайлыВТомахНаДиске.Видимость = РежимРаботы.ЭтоАдминистраторСистемы; Элементы.ГруппаСправочникТомаХраненияФайлов.Видимость = РежимРаботы.ЭтоАдминистраторСистемы; Элементы.ОбщиеПараметрыДляВсехОбластейДанных.Видимость = РежимРаботы.МодельСервиса И РежимРаботы.ЭтоАдминистраторСистемы; - // Конец СтандартныеПодсистемы.ФайловыеФункции // Обновление состояния элементов. УстановитьДоступность(); КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ОбновитьИнтерфейсПрограммы(); КонецПроцедуры @@ -45,7 +50,6 @@ #Область ОбработчикиСобытийЭлементовШапкиФормы -// СтандартныеПодсистемы.ФайловыеФункции &НаКлиенте Процедура ХранитьФайлыВТомахНаДискеПриИзменении(Элемент) @@ -58,7 +62,12 @@ РаботаВБезопасномРежимеКлиент.ПрименитьЗапросыНаИспользованиеВнешнихРесурсов( ЗапросыНаИспользованиеВнешнихРесурсов, ЭтотОбъект, Новый ОписаниеОповещения( - "ХранитьФайлыВТомахНаДискеПриИзмененииЗавершение", ЭтотОбъект, Элемент)) + "ХранитьФайлыВТомахНаДискеПриИзмененииЗавершение", ЭтотОбъект, Элемент)); + + Если Не ЕстьТомаХраненияФайлов() И НаборКонстант.ХранитьФайлыВТомахНаДиске Тогда + ПоказатьПредупреждение(, НСтр("ru = 'Включено хранение файлов в томах на диске, но тома еще не настроены. + |Добавляемые файлы будут сохраняться в информационной базе до тех пор, пока не будет настроен хотя бы один том хранения файлов.'")); + КонецЕсли; Исключение НаборКонстант.ХранитьФайлыВТомахНаДиске = СтароеЗначение; ВызватьИсключение; @@ -110,12 +119,10 @@ Процедура СписокРасширенийТекстовыхФайловПриИзменении(Элемент) Подключаемый_ПриИзмененииРеквизита(Элемент); КонецПроцедуры -// Конец СтандартныеПодсистемы.ФайловыеФункции //////////////////////////////////////////////////////////////////////////////// // Общие параметры для всех областей данных. -// СтандартныеПодсистемы.ФайловыеФункции &НаКлиенте Процедура МаксимальныйРазмерФайлаПриИзменении(Элемент) Если МаксимальныйРазмерФайла = 0 Тогда @@ -135,30 +142,29 @@ Процедура СписокРасширенийФайловOpenDocumentПриИзменении(Элемент) Подключаемый_ПриИзмененииРеквизита(Элемент); КонецПроцедуры -// Конец СтандартныеПодсистемы.ФайловыеФункции #КонецОбласти #Область ОбработчикиКомандФормы -// СтандартныеПодсистемы.ФайловыеФункции &НаКлиенте Процедура СправочникТомаХраненияФайлов(Команда) - ОткрытьФорму("Справочник.ТомаХраненияФайлов.ФормаСписка", , ЭтотОбъект); + ИмяОткрываемойФормы = "Справочник.ТомаХраненияФайлов.ФормаСписка"; + ОткрытьФорму(ИмяОткрываемойФормы, , ЭтотОбъект); КонецПроцедуры &НаКлиенте Процедура НастройкаОчисткиФайлов(Команда) - ОткрытьФорму("РегистрСведений.НастройкиОчисткиФайлов.ФормаСписка", , ЭтотОбъект); + ИмяОткрываемойФормы = "РегистрСведений.НастройкиОчисткиФайлов.ФормаСписка"; + ОткрытьФорму(ИмяОткрываемойФормы, , ЭтотОбъект); КонецПроцедуры &НаКлиенте Процедура НастройкаСинхронизацииФайлов(Команда) - ОткрытьФорму("РегистрСведений.НастройкиСинхронизацииФайлов.ФормаСписка", , ЭтотОбъект); + ИмяОткрываемойФормы = "РегистрСведений.НастройкиСинхронизацииФайлов.ФормаСписка"; + ОткрытьФорму(ИмяОткрываемойФормы, , ЭтотОбъект); КонецПроцедуры -// Конец СтандартныеПодсистемы.ФайловыеФункции - #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -172,7 +178,6 @@ КонецЕсли; КонецПроцедуры -// СтандартныеПодсистемы.ФайловыеФункции &НаКлиенте Процедура ХранитьФайлыВТомахНаДискеПриИзмененииЗавершение(Ответ, Элемент) Экспорт @@ -188,12 +193,13 @@ Функция ЗапросыНаИспользованиеВнешнихРесурсовТомовХраненияФайлов(Включение) ЗапросыНаИспользование = Новый Массив; + ИмяСправочника = "ТомаХраненияФайлов"; Если Включение Тогда - Справочники.ТомаХраненияФайлов.ДобавитьЗапросыНаИспользованиеВнешнихРесурсовВсехТомов( + Справочники[ИмяСправочника].ДобавитьЗапросыНаИспользованиеВнешнихРесурсовВсехТомов( ЗапросыНаИспользование); Иначе - Справочники.ТомаХраненияФайлов.ДобавитьЗапросыНаОтменуИспользованияВнешнихРесурсовВсехТомов( + Справочники[ИмяСправочника].ДобавитьЗапросыНаОтменуИспользованияВнешнихРесурсовВсехТомов( ЗапросыНаИспользование); КонецЕсли; @@ -201,8 +207,6 @@ КонецФункции -// Конец СтандартныеПодсистемы.ФайловыеФункции - &НаКлиенте Процедура Подключаемый_ПриИзмененииРеквизита(Элемент, ОбновлятьИнтерфейс = Истина) @@ -263,7 +267,6 @@ // Определение имени и запись значения реквизита в соответствующей константе из "НаборКонстант". // Используется для тех реквизитов формы, которые связаны с константами напрямую (в отношении один-к-одному). - // СтандартныеПодсистемы.ФайловыеФункции Если РеквизитПутьКДанным = "МаксимальныйРазмерФайла" Тогда НаборКонстант.МаксимальныйРазмерФайла = МаксимальныйРазмерФайла * (1024*1024); КонстантаИмя = "МаксимальныйРазмерФайла"; @@ -279,7 +282,6 @@ НаборКонстант.ЗапрещатьЗагрузкуФайловПоРасширению = ЗапрещатьЗагрузкуФайловПоРасширению; КонстантаИмя = "ЗапрещатьЗагрузкуФайловПоРасширению"; КонецЕсли; - // Конец СтандартныеПодсистемы.ФайловыеФункции КонецЕсли; @@ -299,7 +301,6 @@ &НаСервере Процедура УстановитьДоступность(РеквизитПутьКДанным = "") - // СтандартныеПодсистемы.ФайловыеФункции Если РеквизитПутьКДанным = "НаборКонстант.ХранитьФайлыВТомахНаДиске" ИЛИ РеквизитПутьКДанным = "" Тогда Элементы.СправочникТомаХраненияФайлов.Доступность = НаборКонстант.ХранитьФайлыВТомахНаДиске; КонецЕсли; @@ -311,8 +312,14 @@ Если РеквизитПутьКДанным = "НаборКонстант.СинхронизироватьФайлы" ИЛИ РеквизитПутьКДанным = "" Тогда Элементы.НастройкиСинхронизацииФайлов.Доступность = НаборКонстант.СинхронизироватьФайлы; КонецЕсли; - // Конец СтандартныеПодсистемы.ФайловыеФункции КонецПроцедуры +&НаСервереБезКонтекста +Функция ЕстьТомаХраненияФайлов() + + Возврат ФайловыеФункции.ЕстьТомаХраненияФайлов(); + +КонецФункции + #КонецОбласти diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ОбщиеНастройки/Form.form b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ОбщиеНастройки/Form.form index 8099ec435..473bfbf90 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ОбщиеНастройки/Form.form +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ОбщиеНастройки/Form.form @@ -31,47 +31,12 @@ true Label - 78 - true true - false - false Left Top - - Декорация - 1793 - true - true - - true - - - ДекорацияРасширеннаяПодсказка - 1831 - Label - true - true - - Left - - - - ДекорацияКонтекстноеМеню - 1794 - true - - Label - true - true - true - - Left - - ГруппаСправка 1765 @@ -106,8 +71,7 @@ true - false - false + Right ГруппаСправкаExtendedTooltip 1832 @@ -290,13 +254,14 @@ ru Группа часовой пояс программы - - ru - Группа часовой пояс программы - + ShowBottom ГруппаЧасовойПоясПрограммыExtendedTooltip 1836 + + <key>ru</key> + <value>Часовой пояс, в котором ведется учет в программе. Даты всех документов и других данных вводятся и хранятся в этом часовом поясе. </value> + Label true true @@ -318,8 +283,6 @@ true - 86 - false ГруппаНастройкиПрограммыРасширеннаяПодсказка 1834 @@ -354,6 +317,10 @@ ОткрытьВидыКонтактнойИнформацииExtendedTooltip 1866 + + <key>ru</key> + <value>Классификация контактной информации различных объектов системы, например, партнеров, контрагентов, сотрудников и т.д.</value> + Label true true @@ -368,47 +335,9 @@ true true UserCmds + ShowBottom Auto - - ПояснениеОткрытьВидыКонтактнойИнформации - 1643 - - <key>ru</key> - <value>Классификация контактной информации различных объектов системы, например, партнеров, контрагентов, сотрудников и т.д.</value> - - true - true - - true - - - ПояснениеОткрытьВидыКонтактнойИнформацииExtendedTooltip - 1867 - Label - true - true - - Left - - - - ПояснениеОткрытьВидыКонтактнойИнформацииКонтекстноеМеню - 1644 - true - - Label - true - 2 - true - - Style.ПоясняющийТекст - - - Left - Top - - true true @@ -418,14 +347,6 @@ ru Контактная информация - - System.DefaultGUIFont - 11.0 - true - false - false - false - ru Группа открыть виды контактной информации @@ -445,7 +366,9 @@ UsualGroup Vertical - Auto + Collapsible + true + Button NormalSeparation true true @@ -476,6 +399,11 @@ НаборКонстант.ИспользоватьДополнительныеРеквизитыИСведения Right + + ru + Добавление реквизитов и сведений к объектам программы. + + ShowBottom OnChange ИспользоватьДополнительныеРеквизитыИСведенияПриИзменении @@ -502,91 +430,20 @@ true - - ПояснениеИспользоватьДополнительныеРеквизитыИСведения - 1805 - - <key>ru</key> - <value>Добавление реквизитов и сведений к объектам программы.</value> - - true - true - - true - - - ПояснениеИспользоватьДополнительныеРеквизитыИСведенияExtendedTooltip - 1849 - Label - true - true - - Left - - - - ПояснениеИспользоватьДополнительныеРеквизитыИСведенияКонтекстноеМеню - 1806 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - ГруппаДополнительныеРеквизитыИСведенияПрочиеНастройки 1807 - - ГруппаДополнительныеРеквизитыИСведенияПрочиеНастройкиОтступ - 1808 - - ДополнительныеРеквизитыИСведенияПрочиеНастройкиОтступ - 1809 - true - true - - true - - - ДополнительныеРеквизитыИСведенияПрочиеНастройкиОтступExtendedTooltip - 1852 - Label - true - true - - Left - - - - ДополнительныеРеквизитыИСведенияПрочиеНастройкиОтступКонтекстноеМеню - 1810 - true - - Label - true - true - - Left - - + + Декорация1 + 2035 true true true - - <key>ru</key> - <value>Группа дополнительные реквизиты и сведения прочие настройки отступ</value> - - ГруппаДополнительныеРеквизитыИСведенияПрочиеНастройкиОтступExtendedTooltip - 1851 + Декорация1РасширеннаяПодсказка + 2037 Label true true @@ -594,19 +451,22 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + Декорация1КонтекстноеМеню + 2036 + true + + Label + 1 + true + true + + Left - ГруппаДополнительныеРеквизитыИСведенияПрочиеНастройкиСодержание - 1811 + Группа7 + 2033 ИспользоватьОбщиеДополнительныеЗначения 1812 @@ -623,6 +483,11 @@ НаборКонстант.ИспользоватьОбщиеДополнительныеЗначения Right + + ru + Разрешить добавление реквизитов, у которых общий список значений с другими реквизитами. + + ShowBottom OnChange ИспользоватьДополнительныеРеквизитыИСведенияПриИзменении @@ -649,43 +514,6 @@ true - - ПояснениеИспользоватьОбщиеДополнительныеЗначения - 1818 - - <key>ru</key> - <value>Разрешить добавление реквизитов, у которых общий список значений с другими реквизитами.</value> - - true - true - - true - - - ПояснениеИспользоватьОбщиеДополнительныеЗначенияExtendedTooltip - 1855 - Label - true - true - - Left - - - - ПояснениеИспользоватьОбщиеДополнительныеЗначенияКонтекстноеМеню - 1819 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - ИспользоватьОбщиеДополнительныеРеквизитыИСведения 1816 @@ -702,6 +530,11 @@ НаборКонстант.ИспользоватьОбщиеДополнительныеРеквизитыИСведения Right + + ru + Разрешить добавление реквизитов сразу к нескольким объектам программы одновременно. + + ShowBottom OnChange ИспользоватьДополнительныеРеквизитыИСведенияПриИзменении @@ -728,56 +561,14 @@ true - - ПояснениеИспользоватьОбщиеДополнительныеРеквизитыИСведения - 1814 - - <key>ru</key> - <value>Разрешить добавление реквизитов сразу к нескольким объектам программы одновременно.</value> - - true - true - - true - - - ПояснениеИспользоватьОбщиеДополнительныеРеквизитыИСведенияExtendedTooltip - 1857 - Label - true - true - - Left - - - - ПояснениеИспользоватьОбщиеДополнительныеРеквизитыИСведенияКонтекстноеМеню - 1815 - true - - Label - true - 3 - true - - Style.ПоясняющийТекст - - - Left - - true true true - - <key>ru</key> - <value>Группа дополнительные реквизиты и сведения прочие настройки содержание</value> - - ГруппаДополнительныеРеквизитыИСведенияПрочиеНастройкиСодержаниеExtendedTooltip - 1853 + Группа7РасширеннаяПодсказка + 2034 Label true true @@ -840,6 +631,8 @@ ru Группа использовать дополнительные реквизиты и сведения + 43 + false ГруппаИспользоватьДополнительныеРеквизитыИСведенияExtendedTooltip 1847 @@ -868,70 +661,36 @@ 1821 ДополнительныеРеквизиты - 1822 + 2051 true true true - ДополнительныеРеквизитыExtendedTooltip - 1860 + ДополнительныеРеквизитыРасширеннаяПодсказка + 2052 + + <key>ru</key> + <value>Создание реквизитов, их изменение, описание свойств. +Эти реквизиты отображаются в формах.</value> + Label - true true Left Hyperlink - Form.Command.ДополнительныеРеквизиты + Catalog.НаборыДополнительныхРеквизитовИСведений.Command.ДополнительныеРеквизиты Normal Auto true true UserCmds + ShowBottom Auto - - ПояснениеДополнительныеРеквизиты - 1823 - - <key>ru</key> - <value>Создание реквизитов, их изменение, описание свойств. -Эти реквизиты отображаются в формах.</value> - - true - true - - true - - - ПояснениеДополнительныеРеквизитыExtendedTooltip - 1861 - Label - true - true - - Left - - - - ПояснениеДополнительныеРеквизитыКонтекстноеМеню - 1824 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - true true @@ -966,71 +725,36 @@ 1825 ДополнительныеСведения - 1826 + 2053 true true true - ДополнительныеСведенияExtendedTooltip - 1863 + ДополнительныеСведенияРасширеннаяПодсказка + 2054 + + <key>ru</key> + <value>Создание сведений, их изменение, описание свойств. +Эти сведения отображаются в отдельной форме, которая открывается специальной командой.</value> + Label - true true Left Hyperlink - Form.Command.ДополнительныеСведения + Catalog.НаборыДополнительныхРеквизитовИСведений.Command.ДополнительныеСведения Normal Auto true true UserCmds + ShowBottom Auto - - ПояснениеДополнительныеСведения - 1827 - - <key>ru</key> - <value>Создание сведений, их изменение, описание свойств. -Эти сведения отображаются в отдельной форме, -которая открывается специальной командой.</value> - - true - true - - true - - - ПояснениеДополнительныеСведенияExtendedTooltip - 1864 - Label - true - true - - Left - - - - ПояснениеДополнительныеСведенияКонтекстноеМеню - 1828 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - true true @@ -1073,6 +797,7 @@ ru Группа дополнительные реквизиты или сведения + 43 false ГруппаДополнительныеРеквизитыИлиСведенияExtendedTooltip @@ -1104,20 +829,10 @@ ru Дополнительные реквизиты и сведения - - System.DefaultGUIFont - 11.0 - true - false - false - false - ru Дополнительные реквизиты и сведения - 86 - false ГруппаДополнительныеРеквизитыИСведенияExtendedTooltip 1846 @@ -1130,7 +845,9 @@ UsualGroup - Auto + Collapsible + true + Button NormalSeparation true true @@ -1242,9 +959,14 @@ ru Горизонтальная группа + ShowBottom ГоризонтальнаяГруппаРасширеннаяПодсказка 1954 + + <key>ru</key> + <value>Разрешить подписание данных для гарантии их неизменности и шифрование данных для надежного ограничения доступа.</value> + Label true true @@ -1261,44 +983,6 @@ Auto - - ПояснениеИспользоватьЭлектроннуюПодписьИШифрование - 1961 - - <key>ru</key> - <value>Разрешить подписание данных для гарантии их неизменности и шифрование данных для надежного ограничения доступа.</value> - - true - true - - true - - - ПояснениеИспользоватьЭлектроннуюПодписьИШифрованиеРасширеннаяПодсказка - 1963 - Label - true - true - - Left - - - - ПояснениеИспользоватьЭлектроннуюПодписьИШифрованиеКонтекстноеМеню - 1962 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - true true @@ -1308,6 +992,8 @@ ru Группа использовать электронную подпись и шифрование + 43 + false ГруппаИспользоватьЭлектроннуюПодписьИШифрованиеРасширеннаяПодсказка 1952 @@ -1333,7 +1019,7 @@ 1964 НастройкиЭлектроннойПодписиИШифрования - 1966 + 2049 true true @@ -1341,61 +1027,27 @@ НастройкиЭлектроннойПодписиИШифрованияРасширеннаяПодсказка - 1967 + 2050 + + <key>ru</key> + <value>Настройка сертификатов и программ, используемых для подписания и шифрования.</value> + Label - true true Left Hyperlink - Form.Command.НастройкиЭлектроннойПодписиИШифрования + CommonForm.НастройкиЭлектроннойПодписиИШифрования.StandardCommand.Open Normal Auto true true UserCmds + ShowBottom Auto - - ПояснениеНастройкиЭлектроннойПодписиИШифрования - 1968 - - <key>ru</key> - <value>Настройка сертификатов и программ, используемых для подписания и шифрования.</value> - - true - true - - true - - - ПояснениеНастройкиЭлектроннойПодписиИШифрованияРасширеннаяПодсказка - 1970 - Label - true - true - - Left - - - - ПояснениеНастройкиЭлектроннойПодписиИШифрованияКонтекстноеМеню - 1969 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - true true @@ -1405,6 +1057,8 @@ ru Группа настройки электронной подписи и шифрования + 43 + false ГруппаНастройкиЭлектроннойПодписиИШифрованияРасширеннаяПодсказка 1965 @@ -1434,16 +1088,6 @@ ru Электронная подпись и шифрование - - System.DefaultGUIFont - 11.0 - true - false - false - false - - 86 - false ГруппаЭлектроннаяПодписьИШифрованиеРасширеннаяПодсказка 1950 @@ -1456,7 +1100,9 @@ UsualGroup - Auto + Collapsible + true + Button NormalSeparation true true @@ -1470,23 +1116,64 @@ ГруппаПараметрыКлиентСервернойИБ 1532 - ГруппаОткрытьПараметрыПроксиСервера - 1524 - - ОткрытьПараметрыПроксиСервера - 1686 - - <key>ru</key> - <value>Параметры доступа в Интернет</value> - + Группа1 + 2059 + + ГруппаОткрытьПараметрыПроксиСервера + 1524 + + ОткрытьПараметрыПроксиСервера + 1686 + + <key>ru</key> + <value>Параметры доступа в Интернет</value> + + true + true + + true + + + ОткрытьПараметрыПроксиСервераExtendedTooltip + 1870 + + <key>ru</key> + <value>Настройки параметров прокси-сервера на сервере 1С:Предприятие.</value> + + Label + true + + Left + + + Hyperlink + CommonForm.ПараметрыПроксиСервера.StandardCommand.Open + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + true true true + + <key>ru</key> + <value>Группа открыть параметры прокси сервера</value> + + + ru + Группа открыть параметры прокси сервера + + 43 + false - ОткрытьПараметрыПроксиСервераExtendedTooltip - 1870 + ГруппаОткрытьПараметрыПроксиСервераExtendedTooltip + 1869 Label true true @@ -1494,30 +1181,68 @@ Left - Hyperlink - CommonForm.ПараметрыПроксиСервера.StandardCommand.Open - Normal - Auto - true - true - UserCmds - Auto + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + - - ПояснениеОткрытьПараметрыПроксиСервера - 1525 - - <key>ru</key> - <value>Настройки параметров прокси-сервера на сервере 1С:Предприятие.</value> - + + ГруппаНастройкаИспользованияПрофилейБезопасности + 1934 + + ОткрытьНастройкиИспользованияПрофилейБезопасности + 1936 + + <key>ru</key> + <value>Использование профилей безопасности</value> + + true + true + + true + + + ОткрытьНастройкиИспользованияПрофилейБезопасностиРасширеннаяПодсказка + 1937 + Label + true + + Left + + + Hyperlink + Form.Command.ИспользованиеПрофилейБезопасности + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + true true true + + <key>ru</key> + <value>Настройка использования профилей безопасности</value> + + + ru + Группа открыть параметры прокси сервера + + 43 + false - ПояснениеОткрытьПараметрыПроксиСервераExtendedTooltip - 1871 + ГруппаНастройкаИспользованияПрофилейБезопасностиРасширеннаяПодсказка + 1935 Label true true @@ -1525,19 +1250,14 @@ Left - - ПояснениеОткрытьПараметрыПроксиСервераКонтекстноеМеню - 1526 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left + UsualGroup + + Vertical + Auto + true + true + Auto + Auto true @@ -1545,17 +1265,9 @@ true - - <key>ru</key> - <value>Группа открыть параметры прокси сервера</value> - - - ru - Группа открыть параметры прокси сервера - - ГруппаОткрытьПараметрыПроксиСервераExtendedTooltip - 1869 + Группа1РасширеннаяПодсказка + 2060 Label true true @@ -1565,7 +1277,6 @@ UsualGroup - Vertical Auto true true @@ -1574,45 +1285,14 @@ - ГруппаНастройкаИспользованияПрофилейБезопасности - 1934 - - ОткрытьНастройкиИспользованияПрофилейБезопасности - 1936 - - <key>ru</key> - <value>Использование профилей безопасности</value> - - true - true - - true - - - ОткрытьНастройкиИспользованияПрофилейБезопасностиРасширеннаяПодсказка - 1937 - Label - true - true - - Left - - - Hyperlink - Form.Command.ИспользованиеПрофилейБезопасности - Normal - Auto - true - true - UserCmds - Auto - + ГруппаНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасности + 1941 - ПояснениеОткрытьНастройкиИспользованияПрофилейБезопасности - 1938 + ДекорацияНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасности + 1943 <key>ru</key> - <value>Использование профилей безопасности для контроля за использованием программой внешних (относительно кластера серверов 1С:Предприятия) ресурсов.</value> + <value>Декорация настройка прокси сервера на сервере недоступна при использовании профилей безопасности</value> true true @@ -1620,8 +1300,8 @@ true - ПояснениеОткрытьНастройкиИспользованияПрофилейБезопасностиРасширеннаяПодсказка - 1940 + ДекорацияНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасностиРасширеннаяПодсказка + 1945 Label true true @@ -1630,13 +1310,46 @@ - ПояснениеОткрытьНастройкиИспользованияПрофилейБезопасностиКонтекстноеМеню - 1939 + ДекорацияНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасностиКонтекстноеМеню + 1944 + true + + true + true + + + CommonPicture.ИнформацияПоНедоступнымПолям + + + + + ПояснениеНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасности + 1946 + + <key>ru</key> + <value>Настройка параметров доступа в Интернет на сервере 1С:Предприятия недоступна, т.к. для информационной базы включено использование профилей безопасности. При включенных профилях безопасности настройка параметров доступа в Интернет на сервере 1С:Предприятия может быть выполнена только путем редактирования служебного файла inetcfg.xml (подробнее см. в руководстве администратора платформы 1С:Предприятие).</value> + + true + true + + true + + + ПояснениеНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасностиРасширеннаяПодсказка + 1948 + Label + true + true + + Left + + + + ПояснениеНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасностиКонтекстноеМеню + 1947 true Label - true - 3 true Style.ПоясняющийТекст @@ -1652,15 +1365,11 @@ <key>ru</key> - <value>Настройка использования профилей безопасности</value> + <value>Группа настройка прокси сервера на сервере недоступна при использовании профилей безопасности</value> - - ru - Группа открыть параметры прокси сервера - - ГруппаНастройкаИспользованияПрофилейБезопасностиРасширеннаяПодсказка - 1935 + ГруппаНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасностиРасширеннаяПодсказка + 1942 Label true true @@ -1670,8 +1379,8 @@ UsualGroup - Vertical Auto + NormalSeparation true true Auto @@ -1687,16 +1396,6 @@ ru Параметры серверной информационной базы - - System.DefaultGUIFont - 11.0 - true - false - false - false - - 86 - false ГруппаПараметрыКлиентСервернойИБРасширеннаяПодсказка 1868 @@ -1709,7 +1408,10 @@ UsualGroup - Auto + Vertical + Collapsible + true + Button NormalSeparation true true @@ -1719,114 +1421,6 @@ Auto - - ГруппаНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасности - 1941 - - ДекорацияНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасности - 1943 - - <key>ru</key> - <value>Декорация настройка прокси сервера на сервере недоступна при использовании профилей безопасности</value> - - true - true - - true - - - ДекорацияНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасностиРасширеннаяПодсказка - 1945 - Label - true - true - - Left - - - - ДекорацияНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасностиКонтекстноеМеню - 1944 - true - - 2 - true - 1 - true - - - CommonPicture.ИнформацияПоНедоступнымПолям - - - - - ПояснениеНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасности - 1946 - - <key>ru</key> - <value>Настройка параметров доступа в Интернет на сервере 1С:Предприятия недоступна, т.к. для информационной базы включено использование профилей безопасности. При включенных профилях безопасности настройка параметров доступа в Интернет на сервере 1С:Предприятия может быть выполнена только путем редактирования служебного файла inetcfg.xml (подробнее см. в руководстве администратора платформы 1С:Предприятие).</value> - - true - true - - true - - - ПояснениеНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасностиРасширеннаяПодсказка - 1948 - Label - true - true - - Left - - - - ПояснениеНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасностиКонтекстноеМеню - 1947 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа настройка прокси сервера на сервере недоступна при использовании профилей безопасности</value> - - 86 - false - - ГруппаНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасностиРасширеннаяПодсказка - 1942 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - ГруппаИнтеграция1СБухфон 1976 @@ -1849,6 +1443,7 @@ НаборКонстант.ИспользоватьИнтеграцию1СБухфон Right + ShowBottom OnChange Интеграция1СБухфонПриИзменении @@ -1856,8 +1451,11 @@ Интеграция1СБухфонРасширеннаяПодсказка 1982 + + <key>ru</key> + <value>Разрешить запуск приложения для соединения со специалистом онлайн-поддержки.</value> + Label - true true Left @@ -1875,44 +1473,6 @@ true - - ПояснениеРазрешениеНа1СБухфон - 1983 - - <key>ru</key> - <value>Разрешить запуск приложения для соединения со специалистом онлайн-поддержки.</value> - - true - true - - true - - - ПояснениеРазрешениеНа1СБухфонРасширеннаяПодсказка - 1985 - Label - true - true - - Left - - - - ПояснениеРазрешениеНа1СБухфонКонтекстноеМеню - 1984 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - true true @@ -1922,6 +1482,12 @@ ru Группа разрешение на1 с бухфон + + ru + Группа разрешение на1 с бухфон + + 43 + false ГруппаРазрешениеНа1СБухфонРасширеннаяПодсказка 1979 @@ -1947,7 +1513,7 @@ 1986 Настройка1СБухфон - 1993 + 2057 true true @@ -1955,61 +1521,27 @@ Настройка1СБухфонРасширеннаяПодсказка - 1994 + 2058 + + <key>ru</key> + <value>Настройка запуска приложения на этом компьютере.</value> + Label - true true Left Hyperlink - Form.Command.Настройка1СБухфон + CommonForm.Настройка1СБухфон.StandardCommand.Open Normal Auto true true UserCmds + ShowBottom Auto - - ПояснениеНастройка1СБухфон - 1990 - - <key>ru</key> - <value>Настройка запуска приложения на этом компьютере.</value> - - true - true - - true - - - ПояснениеНастройка1СБухфонРасширеннаяПодсказка - 1992 - Label - true - true - - Left - - - - ПояснениеНастройка1СБухфонКонтекстноеМеню - 1991 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - true true @@ -2019,6 +1551,8 @@ ru Группа настройка 1С-Бухфон + 43 + false ГруппаНастройка1СБухфонРасширеннаяПодсказка 1987 @@ -2048,15 +1582,10 @@ ru Онлайн-поддержка - - System.DefaultGUIFont - 11.0 - true - false - false - false - - 86 + + ru + Настройка использования кнопки 1С-Бухфон + ГруппаИнтеграция1СБухфонРасширеннаяПодсказка 1977 @@ -2069,7 +1598,9 @@ UsualGroup - Auto + Collapsible + true + Button NormalSeparation true true @@ -2101,7 +1632,7 @@ НаборКонстант.ИспользоватьСервисСклоненияMorpher Right - 1 + ShowBottom OnChange Подключаемый_ПриИзмененииРеквизита @@ -2109,8 +1640,12 @@ ИспользоватьСервисСклоненияMorpherРасширеннаяПодсказка 1999 + + <key>ru</key> + <value>Разрешить использование сервиса склонения <link http://www.morpher.ru>morpher.ru</> для получения представлений объектов в падежах (требуется подключение к Интернет).</value> + + true Label - true true Left @@ -2128,40 +1663,6 @@ true - - ПояснениеРазрешениеНаСервисСклонения - 2000 - true - true - - true - - - ПояснениеРазрешениеНаСервисСклоненияРасширеннаяПодсказка - 2002 - Label - true - true - - Left - - - - ПояснениеРазрешениеНаСервисСклоненияКонтекстноеМеню - 2001 - true - - Label - true - 3 - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -2171,6 +1672,8 @@ ru Группа разрешение склонения + 43 + false ГруппаРазрешениеСклоненияРасширеннаяПодсказка 2013 @@ -2196,7 +1699,7 @@ 2014 НастройкаДоступаКСервисуСклонения - 2016 + 2055 true true @@ -2204,61 +1707,27 @@ НастройкаДоступаКСервисуСклоненияРасширеннаяПодсказка - 2017 + 2056 + + <key>ru</key> + <value>Ввод параметров авторизации на сервере склонения.</value> + Label - true true Left Hyperlink - Form.Command.НастройкаДоступаКСервисуСклонения + CommonForm.НастройкаДоступаКСервисуMorpher.StandardCommand.Open Normal Auto true true UserCmds + ShowBottom Auto - - ПояснениеНастройкаДоступаКСервисуСклонения - 2018 - - <key>ru</key> - <value>Ввод параметров авторизации на сервере склонения</value> - - true - true - - true - - - ПояснениеНастройкаДоступаКСервисуСклоненияРасширеннаяПодсказка - 2020 - Label - true - true - - Left - - - - ПояснениеНастройкаДоступаКСервисуСклоненияКонтекстноеМеню - 2019 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - true true @@ -2268,6 +1737,8 @@ ru Группа настройка склонения + 43 + false ГруппаНастройкаСклоненияРасширеннаяПодсказка 2015 @@ -2297,15 +1768,6 @@ ru Склонения представлений объектов - - System.DefaultGUIFont - 11.0 - true - false - false - false - - 86 ГруппаСклоненияРасширеннаяПодсказка 1996 @@ -2318,7 +1780,9 @@ UsualGroup - Auto + Collapsible + true + Button NormalSeparation true true @@ -2328,6 +1792,208 @@ Auto + + ГруппаПубликацияИнформационнойБазы + 2038 + + ПояснениеПоПубликации + 2040 + + <key>ru</key> + <value>Адреса публикации предназначены для формирования ссылок на объекты информационной базы для пользователей, имеющих доступ к базе через публикацию в сети Интернет, либо в локальной сети.</value> + + true + true + + true + + + ПояснениеПоПубликацииРасширеннаяПодсказка + 2042 + Label + true + true + + Left + + + + ПояснениеПоПубликацииКонтекстноеМеню + 2041 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + + + + АдресПубликацииИнформационнойБазыВИнтернете + 2043 + + <key>ru</key> + <value>Адрес в Интернете</value> + + true + true + + true + + + НаборКонстант.АдресПубликацииИнформационнойБазыВИнтернете + + + ru + Используется для формирования ссылок на объекты информационной базы, доступных через публикацию в сети Интернет. + + + OnChange + АдресПубликацииИнформационнойБазыПриИзменении + + + АдресПубликацииИнформационнойБазыВИнтернетеРасширеннаяПодсказка + 2045 + Label + true + true + + Left + + + + АдресПубликацииИнформационнойБазыВИнтернетеКонтекстноеМеню + 2044 + true + + InputField + Enter + true + Left + true + + + StartChoice + АдресПубликацииИнформационнойБазыВИнтернетеНачалоВыбора + + true + true + true + true + + StdPicture.MoveLeft + + true + true + true + Normal + + ru + Например: http://myserver.com + + + + + АдресПубликацииИнформационнойБазыВЛокальнойСети + 2046 + + <key>ru</key> + <value>Локальный адрес</value> + + true + true + + true + + + НаборКонстант.АдресПубликацииИнформационнойБазыВЛокальнойСети + + + ru + Используется для формирования ссылок на объекты информационной базы, доступных через публикацию в локальной сети. + + + OnChange + АдресПубликацииИнформационнойБазыПриИзменении + + + АдресПубликацииИнформационнойБазыВЛокальнойСетиРасширеннаяПодсказка + 2048 + Label + true + true + + Left + + + + АдресПубликацииИнформационнойБазыВЛокальнойСетиКонтекстноеМеню + 2047 + true + + InputField + Enter + true + Left + true + + + StartChoice + АдресПубликацииИнформационнойБазыВЛокальнойСетиНачалоВыбора + + true + true + true + true + + StdPicture.MoveLeft + + true + true + true + Normal + + ru + Например: http://localnet/mydatabase + + + + true + true + + true + + + <key>ru</key> + <value>Публикация информационной базы</value> + + + ГруппаПубликацияИнформационнойБазыРасширеннаяПодсказка + 2039 + Label + true + true + + Left + + + UsualGroup + + Vertical + Collapsible + true + Button + NormalSeparation + true + true + auto + Auto + Auto + + ФормаКоманднаяПанель -1 @@ -2352,7 +2018,6 @@ Write WriteAndClose Yes - 88 DontBlock true true @@ -2412,44 +2077,6 @@ true - - ВидДоступаКСервисуMorher - - <key>ru</key> - <value>Вид доступа к сервису morher</value> - - 6 - - Number - - 1 - - - - true - - - true - - - - ПарольДоступаКСервисуMorpher - - <key>ru</key> - <value>Пароль доступа к сервису morpher</value> - - 7 - - String - - - - true - - - true - - ВремяТекущегоСеанса @@ -2472,42 +2099,6 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> - <formCommands> - <name>ДополнительныеСведения</name> - <title> - <key>ru</key> - <value>Дополнительные сведения</value> - - 3 - - true - - - - ДополнительныеСведения - - - DontUse - Auto - - - ДополнительныеРеквизиты - - <key>ru</key> - <value>Дополнительные реквизиты</value> - - 4 - - true - - - - ДополнительныеРеквизиты - - - DontUse - Auto - ИспользованиеПрофилейБезопасности @@ -2517,7 +2108,7 @@ <id>5</id> <toolTip> <key>ru</key> - <value>Использование профилей безопасности</value> + <value>Использование профилей безопасности для контроля за использованием программой внешних (относительно кластера серверов 1С:Предприятия) ресурсов.</value> </toolTip> <use> <common>true</common> @@ -2530,64 +2121,6 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> - <formCommands> - <name>НастройкиЭлектроннойПодписиИШифрования</name> - <title> - <key>ru</key> - <value>Настройки электронной подписи и шифрования</value> - - 2 - - true - - - - НастройкиЭлектроннойПодписиИШифрования - - - DontUse - Auto - - - Настройка1СБухфон - - <key>ru</key> - <value>Настройка онлайн-поддержки</value> - - 6 - - true - - - - Настройка1СБухфон - - - DontUse - Auto - - - НастройкаДоступаКСервисуСклонения - - <key>ru</key> - <value>Настройка доступа к сервису склонения</value> - - 7 - - ru - Настройка доступа к сервису склонения - - - true - - - - НастройкаДоступаКСервисуСклонения - - - DontUse - Auto - diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ОбщиеНастройки/Help/ru.html b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ОбщиеНастройки/Help/ru.html index b04f540f8..e75f64c85 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ОбщиеНастройки/Help/ru.html +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ОбщиеНастройки/Help/ru.html @@ -7,7 +7,7 @@ TD {

      В данной панели осуществляется настройка основных параметров программы.

      • Заголовок программы - введите текст, который будет отображаться в заголовке окна программы. -
      • Часовой пояс - часовой пояс, по которому ведется учет в программе. Все даты документов и регистров программы хранятся в этом часовом поясе. +
      • Часовой пояс - часовой пояс, в котором ведется учет в программе. Все даты документов и других данных в программе хранятся в этом часовом поясе.
      • Время текущего сеанса - с помощью этой команды можно узнать, насколько время клиента отличается от времени сервера с поправкой на часовой пояс.

      Контактная информация

      • Виды контактной информации - добавление и настройка видов контактной информации различных объектов программы, например, партнеров, контрагентов, сотрудников и т.д.

      @@ -25,7 +25,7 @@ TD { +
      Настройка онлайн-поддержки - настройка приложения 1С-Коннект на этом компьютере: можно расположить соответствующую ссылку для запуска на Начальной странице программы, а также скачать приложение и настроить его.

      Склонения представлений объектов

      Параметры серверной информационной базы

      См. также:

      +
    • Параметры доступа в Интернет - настройки параметров прокси-сервера на сервере 1С:Предприятие. +
    • Использование профилей безопасности - использование профилей безопасности для контроля за использованием программой внешних (относительно кластера серверов 1С:Предприятия) ресурсов.
    • Публикация информационной базы

      +
      • +
        Настройки программы Адрес в интернете и Локальный адрес предназначены для сценариев, связанных с формированием ссылок на объекты информационной базы в зависимости от вида подключения пользователей к информационной базе.
        +
      • +
        Например, если такой адрес включить в рассылку писем, то из письма за одно нажатие можно перейти к форме объекта в самой программе.

      См. также:

      \ No newline at end of file diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ОбщиеНастройки/Module.bsl b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ОбщиеНастройки/Module.bsl index cabf36e81..7ede5dbb6 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ОбщиеНастройки/Module.bsl +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ОбщиеНастройки/Module.bsl @@ -23,39 +23,40 @@ КонецЕсли; Элементы.ЧасовойПоясПрограммы.СписокВыбора.Добавить(ЧасовойПоясПрограммы); - // СтандартныеПодсистемы.БазоваяФункциональность Элементы.ГруппаНастройкаИспользованияПрофилейБезопасности.Видимость = РаботаВБезопасномРежимеСлужебный.ДоступнаНастройкаПрофилейБезопасности() И РежимРаботы.ЭтоАдминистраторСистемы; - // Конец СтандартныеПодсистемы.БазоваяФункциональность - // СтандартныеПодсистемы.ПолучениеФайловИзИнтернета - Элементы.ГруппаОткрытьПараметрыПроксиСервера.Видимость = РежимРаботы.КлиентСерверный И РежимРаботы.ЭтоАдминистраторСистемы; - // Конец СтандартныеПодсистемы.ПолучениеФайловИзИнтернета + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПолучениеФайловИзИнтернета") Тогда + Элементы.ГруппаОткрытьПараметрыПроксиСервера.Видимость = РежимРаботы.КлиентСерверный И РежимРаботы.ЭтоАдминистраторСистемы; + Иначе + Элементы.ГруппаОткрытьПараметрыПроксиСервера.Видимость = Ложь; + КонецЕсли; - // СтандартныеПодсистемы.Интеграция1СБухфон - Элементы.ГруппаИнтеграция1СБухфон.Видимость = Не РежимРаботы.ЭтоLinuxКлиент; - // Конец СтандартныеПодсистемы.Интеграция1СБухфон + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Интеграция1СБухфон") Тогда + Элементы.ГруппаИнтеграция1СБухфон.Видимость = РежимРаботы.ЭтоWindowsКлиент; + Иначе + Элементы.ГруппаИнтеграция1СБухфон.Видимость = Ложь; + КонецЕсли; - // СтандартныеПодсистемы.СклонениеПредставленийОбъектов - - ЧастиСтроки = Новый Массив; - ЧастиСтроки.Добавить(НСтр("ru = 'Разрешить использование сервиса склонения'")); - ЧастиСтроки.Добавить(" "); - ЧастиСтроки.Добавить(Новый ФорматированнаяСтрока("morpher.ru", , , , "http://www.morpher.ru")); - ЧастиСтроки.Добавить(" "); - ЧастиСтроки.Добавить(НСтр("ru = 'для получения представлений объектов в падежах (требуется подключение к Интернет)'")); + Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЭлектроннаяПодпись") Тогда + Элементы.ГруппаЭлектроннаяПодписьИШифрование.Видимость = Ложь; + КонецЕсли; - Элементы.ПояснениеРазрешениеНаСервисСклонения.Заголовок = Новый ФорматированнаяСтрока(ЧастиСтроки); + Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Свойства") Тогда + Элементы.ГруппаДополнительныеРеквизитыИСведения.Видимость = Ложь; + КонецЕсли; - // Конец СтандартныеПодсистемы.СклонениеПредставленийОбъектов - - // Обновление состояния элементов. + Элементы.ГруппаПубликацияИнформационнойБазы.Видимость = Не (ОбщегоНазначенияПовтИсп.РазделениеВключено() + Или ОбщегоНазначенияПовтИсп.ЭтоАвтономноеРабочееМесто()); УстановитьДоступность(); КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ОбновитьИнтерфейсПрограммы(); КонецПроцедуры @@ -81,53 +82,43 @@ КонецЕсли; КонецПроцедуры -// СтандартныеПодсистемы.Свойства &НаКлиенте Процедура ИспользоватьДополнительныеРеквизитыИСведенияПриИзменении(Элемент) Подключаемый_ПриИзмененииРеквизита(Элемент); КонецПроцедуры -// Конец СтандартныеПодсистемы.Свойства -// СтандартныеПодсистемы.Интеграция1СБухфон &НаКлиенте Процедура Интеграция1СБухфонПриИзменении(Элемент) Подключаемый_ПриИзмененииРеквизита(Элемент); КонецПроцедуры -// Конец СтандартныеПодсистемы.Интеграция1СБухфон + +&НаКлиенте +Процедура АдресПубликацииИнформационнойБазыПриИзменении(Элемент) + + Подключаемый_ПриИзмененииРеквизита(Элемент); + +КонецПроцедуры + +&НаКлиенте +Процедура АдресПубликацииИнформационнойБазыВИнтернетеНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + + СтандартнаяОбработка = Ложь; + ПодключитьОбработчикОжидания("АдресПубликацииИнформационнойБазыВИнтернетеНачалоВыбораПродолжение", 0.1, Истина); + +КонецПроцедуры + +&НаКлиенте +Процедура АдресПубликацииИнформационнойБазыВЛокальнойСетиНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + + СтандартнаяОбработка = Ложь; + ПодключитьОбработчикОжидания("АдресПубликацииИнформационнойБазыВЛокальнойСетиНачалоВыбораПродолжение", 0.1, Истина); + +КонецПроцедуры #КонецОбласти #Область ОбработчикиКомандФормы -// СтандартныеПодсистемы.Свойства -&НаКлиенте -Процедура ДополнительныеРеквизиты(Команда) - - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("ПоказатьДополнительныеРеквизиты"); - - ОткрытьФорму("Справочник.НаборыДополнительныхРеквизитовИСведений.ФормаСписка", ПараметрыФормы, , "ДополнительныеРеквизиты"); - -КонецПроцедуры - -&НаКлиенте -Процедура ДополнительныеСведения(Команда) - - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("ПоказатьДополнительныеСведения"); - - ОткрытьФорму("Справочник.НаборыДополнительныхРеквизитовИСведений.ФормаСписка", ПараметрыФормы, , "ДополнительныеСведения"); - -КонецПроцедуры -// Конец СтандартныеПодсистемы.Свойства - -// СтандартныеПодсистемы.ЭлектроннаяПодпись -&НаКлиенте -Процедура НастройкиЭлектроннойПодписиИШифрования(Команда) - ОткрытьФорму("ОбщаяФорма.НастройкиЭлектроннойПодписиИШифрования"); -КонецПроцедуры -// Конец СтандартныеПодсистемы.ЭлектроннаяПодпись - &НаКлиенте Процедура ПоказатьВремяТекущегоСеанса(Команда) @@ -145,33 +136,53 @@ КонецПроцедуры -// СтандартныеПодсистемы.БазоваяФункциональность &НаКлиенте Процедура ИспользованиеПрофилейБезопасности(Команда) РаботаВБезопасномРежимеКлиент.ОткрытьДиалогНастройкиИспользованияПрофилейБезопасности(); КонецПроцедуры -// Конец СтандартныеПодсистемы.БазоваяФункциональность - -// СтандартныеПодсистемы.Интеграция1СБухфон -&НаКлиенте -Процедура Настройка1СБухфон(Команда) - ОткрытьФорму("ОбщаяФорма.Настройка1СБухфон"); -КонецПроцедуры -// Конец СтандартныеПодсистемы.Интеграция1СБухфон - -// СтандартныеПодсистемы.СклонениеПредставленийОбъектов -&НаКлиенте -Процедура НастройкаДоступаКСервисуСклонения(Команда) - ОткрытьФорму("ОбщаяФорма.НастройкаДоступаКСервисуMorpher"); -КонецПроцедуры -// Конец СтандартныеПодсистемы.СклонениеПредставленийОбъектов #КонецОбласти #Область СлужебныеПроцедурыИФункции +&НаКлиенте +Процедура АдресПубликацииИнформационнойБазыВИнтернетеНачалоВыбораПродолжение() + + АдресПубликацииИнформационнойНачалоВыбораЗавершение("АдресПубликацииИнформационнойБазыВИнтернете"); + +КонецПроцедуры + +&НаКлиенте +Процедура АдресПубликацииИнформационнойБазыВЛокальнойСетиНачалоВыбораПродолжение() + + АдресПубликацииИнформационнойНачалоВыбораЗавершение("АдресПубликацииИнформационнойБазыВЛокальнойСети"); + +КонецПроцедуры + +&НаКлиенте +Процедура АдресПубликацииИнформационнойНачалоВыбораЗавершение(ИмяРеквизита) + + Если ОбщегоНазначенияКлиентСервер.КлиентПодключенЧерезВебСервер() Тогда + АдресПубликацииИнформационнойБазыНачалоВыбораНаСервере(ИмяРеквизита, СтрокаСоединенияИнформационнойБазы()); + Подключаемый_ПриИзмененииРеквизита(Элементы[ИмяРеквизита]); + Иначе + ПоказатьПредупреждение(, НСтр("ru = 'Не удалось автоматически заполнить поле, т.к. клиентское приложение не подключено через веб-сервер.'")); + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура АдресПубликацииИнформационнойБазыНачалоВыбораНаСервере(ИмяРеквизита, СтрокаСоединения) + + ПараметрыСоединения = СтроковыеФункцииКлиентСервер.ПолучитьПараметрыИзСтроки(СтрокаСоединения); + Если ПараметрыСоединения.Свойство("WS") Тогда + НаборКонстант[ИмяРеквизита] = ПараметрыСоединения.WS; + КонецЕсли; + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Клиент @@ -215,13 +226,11 @@ УстановитьДоступность(РеквизитПутьКДанным); - // СтандартныеПодсистемы.СклонениеПредставленийОбъектов - Если ИмяЭлемента = "ИспользоватьСервисСклоненияMorpher" Тогда - - СклонениеПредставленийОбъектов.УстановитьДоступностьСервисаСклонения(Истина); - + Если ИмяЭлемента = "ИспользоватьСервисСклоненияMorpher" + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.СклонениеПредставленийОбъектов") Тогда + МодульСклонениеПредставленийОбъектов = ОбщегоНазначения.ОбщийМодуль("СклонениеПредставленийОбъектов"); + МодульСклонениеПредставленийОбъектов.УстановитьДоступностьСервисаСклонения(Истина); КонецЕсли; - // Конец СтандартныеПодсистемы.СклонениеПредставленийОбъектов ОбновитьПовторноИспользуемыеЗначения(); @@ -285,6 +294,10 @@ Если КонстантаМенеджер.Получить() <> КонстантаЗначение Тогда КонстантаМенеджер.Установить(КонстантаЗначение); КонецЕсли; + + Если КонстантаИмя = "ИспользоватьДополнительныеРеквизитыИСведения" И КонстантаЗначение = Ложь Тогда + ЭтотОбъект.Прочитать(); + КонецЕсли; КонецЕсли; Возврат КонстантаИмя; @@ -294,73 +307,51 @@ &НаСервере Процедура УстановитьДоступность(РеквизитПутьКДанным = "") - // СтандартныеПодсистемы.Свойства - Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьДополнительныеРеквизитыИСведения" - ИЛИ РеквизитПутьКДанным = "" Тогда + Если (РеквизитПутьКДанным = "НаборКонстант.ИспользоватьДополнительныеРеквизитыИСведения" Или РеквизитПутьКДанным = "") + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Свойства") Тогда ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( - Элементы, - "ГруппаДополнительныеРеквизитыИСведенияПрочиеНастройки", - "Доступность", - НаборКонстант.ИспользоватьДополнительныеРеквизитыИСведения); + Элементы, "ГруппаДополнительныеРеквизитыИСведенияПрочиеНастройки", + "Доступность", НаборКонстант.ИспользоватьДополнительныеРеквизитыИСведения); ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( - Элементы, - "ГруппаДополнительныеРеквизитыИлиСведения", - "Доступность", - НаборКонстант.ИспользоватьДополнительныеРеквизитыИСведения); + Элементы, "ГруппаДополнительныеРеквизитыИлиСведения", + "Доступность", НаборКонстант.ИспользоватьДополнительныеРеквизитыИСведения); КонецЕсли; - // Конец СтандартныеПодсистемы.Свойства - // СтандартныеПодсистемы.ЭлектроннаяПодпись - Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьЭлектронныеПодписи" - Или РеквизитПутьКДанным = "НаборКонстант.ИспользоватьШифрование" - Или РеквизитПутьКДанным = "" Тогда + Если (РеквизитПутьКДанным = "НаборКонстант.ИспользоватьЭлектронныеПодписи" + Или РеквизитПутьКДанным = "НаборКонстант.ИспользоватьШифрование" Или РеквизитПутьКДанным = "") + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЭлектроннаяПодпись") Тогда Элементы.ГруппаНастройкиЭлектроннойПодписиИШифрования.Доступность = НаборКонстант.ИспользоватьЭлектронныеПодписи Или НаборКонстант.ИспользоватьШифрование; КонецЕсли; - // Конец СтандартныеПодсистемы.ЭлектроннаяПодпись - // СтандартныеПодсистемы.БазоваяФункциональность Если РеквизитПутьКДанным = "" Тогда - ДоступностьНастройкиПроксиНаСервере = Не ПолучитьФункциональнуюОпцию("ИспользуютсяПрофилиБезопасности"); ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( - Элементы, - "ГруппаОткрытьПараметрыПроксиСервера", - "Доступность", - ДоступностьНастройкиПроксиНаСервере); + Элементы, "ГруппаОткрытьПараметрыПроксиСервера", + "Доступность", ДоступностьНастройкиПроксиНаСервере); ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( - Элементы, - "ГруппаНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасности", - "Видимость", - НЕ ДоступностьНастройкиПроксиНаСервере); - + Элементы, "ГруппаНастройкаПроксиСервераНаСервереНедоступнаПриИспользованииПрофилейБезопасности", + "Видимость", Не ДоступностьНастройкиПроксиНаСервере); КонецЕсли; - // Конец СтандартныеПодсистемы.БазоваяФункциональность - // СтандартныеПодсистемы.Интеграция1СБухфон - Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьИнтеграцию1СБухфон" - Или РеквизитПутьКДанным = "" Тогда + Если (РеквизитПутьКДанным = "НаборКонстант.ИспользоватьИнтеграцию1СБухфон" Или РеквизитПутьКДанным = "") + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Интеграция1СБухфон") Тогда Элементы.ГруппаНастройка1СБухфон.Доступность = НаборКонстант.ИспользоватьИнтеграцию1СБухфон; КонецЕсли; - // Конец СтандартныеПодсистемы.Интеграция1СБухфон - // СтандартныеПодсистемы.СклонениеПредставленийОбъектов - Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьСервисСклоненияMorpher" - Или РеквизитПутьКДанным = "" Тогда + Если (РеквизитПутьКДанным = "НаборКонстант.ИспользоватьСервисСклоненияMorpher" Или РеквизитПутьКДанным = "") + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.СклонениеПредставленийОбъектов") Тогда ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( - Элементы, - "ГруппаНастройкаСклонения", - "Доступность", + Элементы, "ГруппаНастройкаСклонения", "Доступность", НаборКонстант.ИспользоватьСервисСклоненияMorpher); - КонецЕсли; - // Конец СтандартныеПодсистемы.СклонениеПредставленийОбъектов - + КонецЕсли; + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/Органайзер/Form.form b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/Органайзер/Form.form index e1f743294..5c9397e44 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/Органайзер/Form.form +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/Органайзер/Form.form @@ -31,47 +31,12 @@ true Label - 78 - true true - false - false Left Top - - Декорация1 - 1636 - true - true - - true - - - Декорация1ExtendedTooltip - 1640 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 1637 - true - - Label - true - true - true - - Left - - ГруппаСправка 1634 @@ -106,8 +71,6 @@ true - false - false ГруппаСправкаExtendedTooltip 1641 @@ -148,37 +111,81 @@
      - Группа1 - 1709 + ГруппаПочта + 1788 - Группа8 - 1592 + Группа1 + 1709 - ГруппаИспользоватьПочтовыйКлиент - 1297 - - ИспользоватьПочтовыйКлиент - 707 - - <key>ru</key> - <value>Почтовый клиент</value> - + Группа8 + 1592 + + ГруппаИспользоватьПочтовыйКлиент + 1297 + + ИспользоватьПочтовыйКлиент + 707 + + <key>ru</key> + <value>Почтовый клиент</value> + + true + true + + true + + + НаборКонстант.ИспользоватьПочтовыйКлиент + + Right + ShowBottom + + OnChange + ИспользоватьПочтовыйКлиентПриИзменении + + + ИспользоватьПочтовыйКлиентExtendedTooltip + 1645 + + <key>ru</key> + <value>Встроенный почтовый клиент для взаимодействий с помощью электронных писем (e-mail). Использование других типов взаимодействий без почтового клиента невозможно.</value> + + Label + true + + Left + + + + ИспользоватьПочтовыйКлиентКонтекстноеМеню + 708 + true + + CheckBoxField + Enter + true + Left + true + + true true true - - НаборКонстант.ИспользоватьПочтовыйКлиент - - Right - - OnChange - ИспользоватьПочтовыйКлиентПриИзменении - + + <key>ru</key> + <value>Группа использовать почтовый клиент</value> + + + ru + Группа использовать почтовый клиент + + 43 + false - ИспользоватьПочтовыйКлиентExtendedTooltip - 1645 + ГруппаИспользоватьПочтовыйКлиентExtendedTooltip + 1644 Label true true @@ -186,33 +193,83 @@ Left
      - - ИспользоватьПочтовыйКлиентКонтекстноеМеню - 708 - true - - CheckBoxField - Enter - true - Left - true - + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + - - ПояснениеИспользоватьПочтовыйКлиент - 1298 - - <key>ru</key> - <value>Встроенный почтовый клиент для взаимодействий с помощью электронных писем (e-mail). Использование других типов взаимодействий без почтового клиента невозможно.</value> - + + ГруппаОтправлятьПисьмаВФорматеHTML + 1310 + + ОтправлятьПисьмаВФорматеHTML + 776 + + <key>ru</key> + <value>Исходящие письма в формате HTML</value> + + true + true + + true + + + НаборКонстант.ОтправлятьПисьмаВФорматеHTML + + Right + ShowBottom + + OnChange + ОтправлятьПисьмаВФорматеHTMLПриИзменении + + + ОтправлятьПисьмаВФорматеHTMLExtendedTooltip + 1648 + + <key>ru</key> + <value>Редактирование исходящих писем в формате HTML.</value> + + Label + true + + Left + + + + ОтправлятьПисьмаВФорматеHTMLКонтекстноеМеню + 777 + true + + CheckBoxField + Enter + true + Left + true + + true true true + + <key>ru</key> + <value>Группа отправлять письма в формате HTML</value> + + + ru + Группа отправлять письма в формате HTML + + 43 + false - ПояснениеИспользоватьПочтовыйКлиентExtendedTooltip - 1646 + ГруппаОтправлятьПисьмаВФорматеHTMLExtendedTooltip + 1647 Label true true @@ -220,20 +277,14 @@ Left
      - - ПояснениеИспользоватьПочтовыйКлиентКонтекстноеМеню - 1299 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top + UsualGroup + + Vertical + Auto + true + true + Auto + Auto true @@ -241,17 +292,9 @@ true - - <key>ru</key> - <value>Группа использовать почтовый клиент</value> - - - ru - Группа использовать почтовый клиент - - ГруппаИспользоватьПочтовыйКлиентExtendedTooltip - 1644 + Группа8ExtendedTooltip + 1643 Label true true @@ -261,40 +304,84 @@ UsualGroup - Vertical Auto true true + Equal Auto Auto - ГруппаОтправлятьПисьмаВФорматеHTML - 1310 - - ОтправлятьПисьмаВФорматеHTML - 776 - - <key>ru</key> - <value>Исходящие письма в формате HTML</value> - + Группа7 + 1608 + + ГруппаИспользоватьПрочиеВзаимодействия + 1313 + + ИспользоватьПрочиеВзаимодействия + 705 + + <key>ru</key> + <value>Звонки, SMS, встречи и запланированные взаимодействия</value> + + true + true + + true + + + НаборКонстант.ИспользоватьПрочиеВзаимодействия + + Right + ShowBottom + + OnChange + ИспользоватьПрочиеВзаимодействияПриИзменении + + + ИспользоватьПрочиеВзаимодействияExtendedTooltip + 1652 + + <key>ru</key> + <value>Отправка SMS, регистрация звонков, встреч и запланированных взаимодействий с клиентами в программе.</value> + + Label + true + + Left + + + + ИспользоватьПрочиеВзаимодействияКонтекстноеМеню + 706 + true + + CheckBoxField + Enter + true + Left + true + + true true true - - НаборКонстант.ОтправлятьПисьмаВФорматеHTML - - Right - - OnChange - ОтправлятьПисьмаВФорматеHTMLПриИзменении - + + <key>ru</key> + <value>Группа использовать прочие взаимодействия</value> + + + ru + Группа использовать прочие взаимодействия + + 43 + false - ОтправлятьПисьмаВФорматеHTMLExtendedTooltip - 1648 + ГруппаИспользоватьПрочиеВзаимодействияExtendedTooltip + 1651 Label true true @@ -302,33 +389,84 @@ Left
      - - ОтправлятьПисьмаВФорматеHTMLКонтекстноеМеню - 777 - true - - CheckBoxField - Enter - true - Left - true - + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + - - ПояснениеОтправлятьПисьмаВФорматеHTML - 1311 - - <key>ru</key> - <value>Редактирование исходящих писем в формате HTML.</value> - + + ГруппаИспользоватьПризнакРассмотрено + 1316 + + ИспользоватьПризнакРассмотрено + 780 + + <key>ru</key> + <value>Признаки "Рассмотрено" и "На контроле"</value> + + true + true + + true + + + НаборКонстант.ИспользоватьПризнакРассмотрено + + Right + ShowBottom + + OnChange + ИспользоватьПризнакРассмотреноПриИзменении + + + ИспользоватьПризнакРассмотреноExtendedTooltip + 1655 + + <key>ru</key> + <value>Отметка о рассмотрении входящего письма, встречи, запланированного взаимодействия, телефонного звонка. +Постановка на контроль исходящего письма.</value> + + Label + true + + Left + + + + ИспользоватьПризнакРассмотреноКонтекстноеМеню + 781 + true + + CheckBoxField + Enter + true + Left + true + + true true true + + <key>ru</key> + <value>Группа использовать признак рассмотрено</value> + + + ru + Группа использовать признак рассмотрено + + 43 + false - ПояснениеОтправлятьПисьмаВФорматеHTMLExtendedTooltip - 1649 + ГруппаИспользоватьПризнакРассмотреноExtendedTooltip + 1654 Label true true @@ -336,19 +474,14 @@ Left - - ПояснениеОтправлятьПисьмаВФорматеHTMLКонтекстноеМеню - 1312 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left + UsualGroup + + Vertical + Auto + true + true + Auto + Auto true @@ -356,17 +489,17 @@ true - - <key>ru</key> - <value>Группа отправлять письма в формате HTML</value> - - - ru - Группа отправлять письма в формате HTML - + + System.DefaultGUIFont + 11.0 + true + false + false + false + - ГруппаОтправлятьПисьмаВФорматеHTMLExtendedTooltip - 1647 + Группа7ExtendedTooltip + 1650 Label true true @@ -376,10 +509,10 @@ UsualGroup - Vertical Auto true true + Equal Auto Auto @@ -389,11 +522,9 @@ true - 86 - false - Группа8ExtendedTooltip - 1643 + Группа1РасширеннаяПодсказка + 1710 Label true true @@ -403,98 +534,51 @@ UsualGroup + Vertical Auto + NormalSeparation true true - Equal Auto Auto - Группа7 - 1608 + Группа6 + 1591 - ГруппаИспользоватьПрочиеВзаимодействия - 1313 - - ИспользоватьПрочиеВзаимодействия - 705 - - <key>ru</key> - <value>Звонки, SMS, встречи и запланированные взаимодействия</value> - - true - true - - true - - - НаборКонстант.ИспользоватьПрочиеВзаимодействия - - Right - - OnChange - ИспользоватьПрочиеВзаимодействияПриИзменении - - - ИспользоватьПрочиеВзаимодействияExtendedTooltip - 1652 - Label - true - true - - Left - - - - ИспользоватьПрочиеВзаимодействияКонтекстноеМеню - 706 - true - - CheckBoxField - Enter - true - Left - true - - - - ПояснениеИспользоватьПрочиеВзаимодействия - 1314 - - <key>ru</key> - <value>Отправка SMS, регистрация звонков, встреч и запланированных взаимодействий с клиентами в программе.</value> - + ГруппаОткрытьНастройкиСистемнойУчетнойЗаписиЭП + 1303 + + ОткрытьНастройкиСистемнойУчетнойЗаписиЭП + 1302 true true true - ПояснениеИспользоватьПрочиеВзаимодействияExtendedTooltip - 1653 + ОткрытьНастройкиСистемнойУчетнойЗаписиЭПExtendedTooltip + 1659 + + <key>ru</key> + <value>Основная учетная запись электронной почты для отправки уведомлений из программы.</value> + Label - true true Left - - ПояснениеИспользоватьПрочиеВзаимодействияКонтекстноеМеню - 1315 - true - - Label + Hyperlink + CommonCommand.НастройкаСистемнойУчетнойЗаписиЭлектроннойПочты + Normal + Auto true true - - Style.ПоясняющийТекст - - - Left - + UserCmds + ShowBottom + Auto true true @@ -503,17 +587,17 @@
      <key>ru</key> - <value>Группа использовать прочие взаимодействия</value> + <value>Группа открыть настройки системной учетной записи ЭП</value> ru - Группа использовать прочие взаимодействия + Группа открыть настройки системной учетной записи ЭП 43 false - ГруппаИспользоватьПрочиеВзаимодействияExtendedTooltip - 1651 + ГруппаОткрытьНастройкиСистемнойУчетнойЗаписиЭПExtendedTooltip + 1658 Label true true @@ -532,88 +616,38 @@
      - ГруппаИспользоватьПризнакРассмотрено - 1316 - - ИспользоватьПризнакРассмотрено - 780 - - <key>ru</key> - <value>Признаки "Рассмотрено" и "На контроле"</value> - - true - true - - true - - - НаборКонстант.ИспользоватьПризнакРассмотрено - - Right - - OnChange - ИспользоватьПризнакРассмотреноПриИзменении - - - ИспользоватьПризнакРассмотреноExtendedTooltip - 1655 - Label - true - true - - Left - - - - ИспользоватьПризнакРассмотреноКонтекстноеМеню - 781 - true - - CheckBoxField - Enter - true - Left - true - - - - ПояснениеИспользоватьПризнакРассмотрено - 1319 - - <key>ru</key> - <value>Отметка о рассмотрении входящего письма, встречи, запланированного взаимодействия, телефонного звонка. -Постановка на контроль исходящего письма.</value> - + ГруппаОткрытьУчетныеЗаписиЭлектроннойПочты + 1307 + + ОткрытьУчетныеЗаписиЭлектроннойПочты + 1306 true true true - ПояснениеИспользоватьПризнакРассмотреноExtendedTooltip - 1656 + ОткрытьУчетныеЗаписиЭлектроннойПочтыExtendedTooltip + 1662 + + <key>ru</key> + <value>Настройка учетных записей электронной почты.</value> + Label - true true Left - - ПояснениеИспользоватьПризнакРассмотреноКонтекстноеМеню - 1320 - true - - Label + Hyperlink + Catalog.УчетныеЗаписиЭлектроннойПочты.StandardCommand.OpenList + Normal + Auto true - 3 true - - Style.ПоясняющийТекст - - - Left - + UserCmds + ShowBottom + Auto true true @@ -622,17 +656,17 @@ <key>ru</key> - <value>Группа использовать признак рассмотрено</value> + <value>Группа открыть учетные записи электронной почты</value> ru - Группа использовать признак рассмотрено + Группа открыть учетные записи электронной почты 43 false - ГруппаИспользоватьПризнакРассмотреноExtendedTooltip - 1654 + ГруппаОткрытьУчетныеЗаписиЭлектроннойПочтыExtendedTooltip + 1661 Label true true @@ -663,11 +697,9 @@ false false - 86 - false - Группа7ExtendedTooltip - 1650 + Группа6ExtendedTooltip + 1657 Label true true @@ -678,6 +710,308 @@ UsualGroup Auto + NormalSeparation + true + true + Equal + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Почта</value> + + + ГруппаПочтаРасширеннаяПодсказка + 1789 + Label + true + true + + Left + + + UsualGroup + + Vertical + Collapsible + Button + NormalSeparation + true + true + auto + Auto + Auto + + + + ГруппаОтправкаSMS + 1618 + + ОбщаяФормаНастройкаОтправкиSMS + 1619 + true + true + + true + + + ОбщаяФормаНастройкаОтправкиSMSExtendedTooltip + 1665 + + <key>ru</key> + <value>Эта настройка используется для отправки SMS сообщений из программы.</value> + + Label + true + + Left + + + Hyperlink + CommonForm.НастройкаОтправкиSMS.StandardCommand.Open + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + + <key>ru</key> + <value>Отправка SMS</value> + + 43 + false + + ГруппаОтправкаSMSРасширеннаяПодсказка + 1664 + Label + true + true + + Left + + + UsualGroup + + Vertical + Collapsible + true + Button + NormalSeparation + true + true + auto + Auto + Auto + + + + ГруппаЗаметкиНапоминанияАнкетирование + 1790 + + ГруппаЗаметкиНапоминания + 1291 + + ГруппаИспользоватьЗаметки + 1328 + + ИспользоватьЗаметки + 677 + + <key>ru</key> + <value>Заметки</value> + + true + true + + true + + + НаборКонстант.ИспользоватьЗаметки + + Right + ShowBottom + + OnChange + ИспользоватьЗаметкиПриИзменении + + + ИспользоватьЗаметкиExtendedTooltip + 1669 + + <key>ru</key> + <value>Добавление заметок к различным объектам программы.</value> + + Label + true + + Left + + + + ИспользоватьЗаметкиКонтекстноеМеню + 678 + true + + CheckBoxField + Enter + true + Left + true + + + true + true + + true + + + <key>ru</key> + <value>Группа использовать заметки</value> + + + ru + Группа использовать заметки + + 43 + false + + ГруппаИспользоватьЗаметкиExtendedTooltip + 1668 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаИспользоватьНапоминанияПользователя + 1325 + + ИспользоватьНапоминанияПользователя + 679 + + <key>ru</key> + <value>Напоминания</value> + + true + true + + true + + + НаборКонстант.ИспользоватьНапоминанияПользователя + + Right + ShowBottom + + OnChange + ИспользоватьНапоминанияПользователяПриИзменении + + + ИспользоватьНапоминанияПользователяExtendedTooltip + 1672 + + <key>ru</key> + <value>Напоминания по различным объектам программы.</value> + + Label + true + + Left + + + + ИспользоватьНапоминанияПользователяКонтекстноеМеню + 680 + true + + CheckBoxField + Enter + true + Left + true + + + true + true + + true + + + <key>ru</key> + <value>Группа использовать напоминания пользователя</value> + + + ru + Группа использовать напоминания пользователя + + 43 + false + + ГруппаИспользоватьНапоминанияПользователяExtendedTooltip + 1671 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + ГруппаЗаметкиНапоминанияРасширеннаяПодсказка + 1667 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation true true Equal @@ -686,126 +1020,64 @@ - ПубликацияБазы - 1753 + ГруппаИспользоватьАнкетирование + 1622 - АдресПубликацииИнформационнойБазыВИнтернете - 1755 - true - true - - true - - - НаборКонстант.АдресПубликацииИнформационнойБазыВИнтернете - - Top - - OnChange - АдресПубликацииИнформационнойБазыВИнтернетеПриИзменении - - - АдресПубликацииИнформационнойБазыВИнтернетеExtendedTooltip - 1757 - Label - true - true - - Left - - - - АдресПубликацииИнформационнойБазыВИнтернетеКонтекстноеМеню - 1756 - true - - InputField - Enter - true - Left - true - - - StartChoice - АдресПубликацииИнформационнойБазыВИнтернетеНачалоВыбора - - 42 - true - true - false - true - true - - StdPicture.MoveLeft - - true - true - true - Normal - - ru - Например: http://myserver.com - - - - - ПояснениеАдресПубликацииИнформационнойБазыВИнтернете - 1758 + ИспользоватьАнкетирование + 1623 <key>ru</key> - <value>Используется для формирования ссылок на объекты ИБ при отправке электронных писем пользователям, имеющим доступ через внешнюю публикацию ИБ в интернете.</value> + <value>Анкетирование</value> true true true + + НаборКонстант.ИспользоватьАнкетирование + + Right + ShowBottom + + OnChange + ИспользоватьАнкетированиеПриИзменении + - ПояснениеАдресПубликацииИнформационнойБазыВИнтернетеРасширеннаяПодсказка - 1760 + ИспользоватьАнкетированиеExtendedTooltip + 1675 + + <key>ru</key> + <value>Составление анкет, проведение опросов и анализ результатов опросов.</value> + Label - true true Left - ПояснениеАдресПубликацииИнформационнойБазыВИнтернетеКонтекстноеМеню - 1759 + ИспользоватьАнкетированиеКонтекстноеМеню + 1624 true - Label - 43 - true - true - false - - Style.ПоясняющийТекст - - - Left - Top - + CheckBoxField + Enter + true + Left + true + true true true - - <key>ru</key> - <value>Публикация базы</value> - - - ru - Публикация базы - - 86 + 43 false - ПубликацияБазыРасширеннаяПодсказка - 1754 + ГруппаИспользоватьАнкетированиеExtendedTooltip + 1674 Label true true @@ -824,14 +1096,195 @@ Auto + + ГруппаШаблоныСообщений + 1794 + + ГруппаИспользоватьШаблоныСообщений + 1796 + + ИспользоватьШаблоныСообщений + 1798 + + <key>ru</key> + <value>Шаблоны сообщений</value> + + true + true + + true + + + НаборКонстант.ИспользоватьШаблоныСообщений + + Right + ShowBottom + + OnChange + ИспользоватьШаблоныСообщенийПриИзменении + + + ИспользоватьШаблоныСообщенийРасширеннаяПодсказка + 1800 + + <key>ru</key> + <value>Шаблоны электронных писем и сообщений SMS</value> + + Label + true + true + + Left + + + + ИспользоватьШаблоныСообщенийКонтекстноеМеню + 1799 + true + + CheckBoxField + Enter + true + Left + true + + + true + true + + true + + 43 + false + + ГруппаИспользоватьШаблоныСообщенийРасширеннаяПодсказка + 1797 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаНастройкаШаблоныСообщений + 1801 + + НастроитьШаблоныСообщений + 1803 + true + true + + true + + + НастроитьШаблоныСообщенийРасширеннаяПодсказка + 1804 + Label + true + true + + Left + + + Hyperlink + Catalog.ШаблоныСообщений.StandardCommand.OpenList + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + ru + Группа настройка шаблоны сообщений + + 43 + false + + ГруппаНастройкаШаблоныСообщенийРасширеннаяПодсказка + 1802 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа шаблоны сообщений</value> + + + ru + Группа шаблоны сообщений + + + ГруппаШаблоныСообщенийРасширеннаяПодсказка + 1795 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + true true true + + <key>ru</key> + <value>Заметки, напоминания, анкетирование, шаблоны сообщений</value> + + + ru + Группа заметки напоминания анкетирование + - Группа1РасширеннаяПодсказка - 1710 + ГруппаЗаметкиНапоминанияАнкетированиеРасширеннаяПодсказка + 1791 Label true true @@ -842,961 +1295,13 @@ UsualGroup Vertical - Auto + Collapsible + true + Button NormalSeparation true true - Auto - Auto - - - - Группа6 - 1591 - - ГруппаОткрытьНастройкиСистемнойУчетнойЗаписиЭП - 1303 - - ОткрытьНастройкиСистемнойУчетнойЗаписиЭП - 1302 - true - true - - true - - - ОткрытьНастройкиСистемнойУчетнойЗаписиЭПExtendedTooltip - 1659 - Label - true - true - - Left - - - Hyperlink - CommonCommand.НастройкаСистемнойУчетнойЗаписиЭлектроннойПочты - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеОткрытьНастройкиСистемнойУчетнойЗаписиЭП - 1304 - - <key>ru</key> - <value>Основная учетная запись электронной почты для отправки уведомлений из программы.</value> - - true - true - - true - - - ПояснениеОткрытьНастройкиСистемнойУчетнойЗаписиЭПExtendedTooltip - 1660 - Label - true - true - - Left - - - - ПояснениеОткрытьНастройкиСистемнойУчетнойЗаписиЭПКонтекстноеМеню - 1305 - true - - Label - true - 2 - true - - Style.ПоясняющийТекст - - - Left - Top - - - true - true - - true - - - <key>ru</key> - <value>Группа открыть настройки системной учетной записи ЭП</value> - - - ru - Группа открыть настройки системной учетной записи ЭП - - - ГруппаОткрытьНастройкиСистемнойУчетнойЗаписиЭПExtendedTooltip - 1658 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаОткрытьУчетныеЗаписиЭлектроннойПочты - 1307 - - ОткрытьУчетныеЗаписиЭлектроннойПочты - 1306 - true - true - - true - - - ОткрытьУчетныеЗаписиЭлектроннойПочтыExtendedTooltip - 1662 - Label - true - true - - Left - - - Hyperlink - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardCommand.OpenList - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеОткрытьУчетныеЗаписиЭлектроннойПочты - 1308 - - <key>ru</key> - <value>Настройка учетных записей электронной почты.</value> - - true - true - - true - - - ПояснениеОткрытьУчетныеЗаписиЭлектроннойПочтыExtendedTooltip - 1663 - Label - true - true - - Left - - - - ПояснениеОткрытьУчетныеЗаписиЭлектроннойПочтыКонтекстноеМеню - 1309 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - - true - true - - true - - - <key>ru</key> - <value>Группа открыть учетные записи электронной почты</value> - - - ru - Группа открыть учетные записи электронной почты - - - ГруппаОткрытьУчетныеЗаписиЭлектроннойПочтыExtendedTooltip - 1661 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - System.DefaultGUIFont - 11.0 - true - false - false - false - - 86 - false - - Группа6ExtendedTooltip - 1657 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Equal - Auto - Auto - - - - ГруппаОбщаяФормаНастройкаОтправкиSMS - 1618 - - ОбщаяФормаНастройкаОтправкиSMS - 1619 - true - true - - true - - - ОбщаяФормаНастройкаОтправкиSMSExtendedTooltip - 1665 - Label - true - true - - Left - - - Hyperlink - CommonForm.НастройкаОтправкиSMS.StandardCommand.Open - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеОбщаяФормаНастройкаОтправкиSMS - 1620 - - <key>ru</key> - <value>Эта настройка используется для отправки SMS сообщений из программы.</value> - - true - true - - true - - - ПояснениеОбщаяФормаНастройкаОтправкиSMSExtendedTooltip - 1666 - Label - true - true - - Left - - - - ПояснениеОбщаяФормаНастройкаОтправкиSMSКонтекстноеМеню - 1621 - true - - Label - true - 2 - true - - Style.ПоясняющийТекст - - - Left - Top - - - true - true - - true - - 43 - false - - ГруппаОбщаяФормаНастройкаОтправкиSMSExtendedTooltip - 1664 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - - - - Группа5 - 1291 - - ГруппаИспользоватьЗаметки - 1328 - - ИспользоватьЗаметки - 677 - - <key>ru</key> - <value>Заметки</value> - - true - true - - true - - - НаборКонстант.ИспользоватьЗаметки - - Right - - OnChange - ИспользоватьЗаметкиПриИзменении - - - ИспользоватьЗаметкиExtendedTooltip - 1669 - Label - true - true - - Left - - - - ИспользоватьЗаметкиКонтекстноеМеню - 678 - true - - CheckBoxField - Enter - true - Left - true - - - - ПояснениеИспользоватьЗаметки - 1329 - - <key>ru</key> - <value>Добавление заметок к различным объектам программы.</value> - - true - true - - true - - - ПояснениеИспользоватьЗаметкиExtendedTooltip - 1670 - Label - true - true - - Left - - - - ПояснениеИспользоватьЗаметкиКонтекстноеМеню - 1330 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа использовать заметки</value> - - - ru - Группа использовать заметки - - - ГруппаИспользоватьЗаметкиExtendedTooltip - 1668 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаИспользоватьНапоминанияПользователя - 1325 - - ИспользоватьНапоминанияПользователя - 679 - - <key>ru</key> - <value>Напоминания</value> - - true - true - - true - - - НаборКонстант.ИспользоватьНапоминанияПользователя - - Right - - OnChange - ИспользоватьНапоминанияПользователяПриИзменении - - - ИспользоватьНапоминанияПользователяExtendedTooltip - 1672 - Label - true - true - - Left - - - - ИспользоватьНапоминанияПользователяКонтекстноеМеню - 680 - true - - CheckBoxField - Enter - true - Left - true - - - - ПояснениеИспользоватьНапоминанияПользователя - 1326 - - <key>ru</key> - <value>Напоминания по различным объектам программы.</value> - - true - true - - true - - - ПояснениеИспользоватьНапоминанияПользователяExtendedTooltip - 1673 - Label - true - true - - Left - - - - ПояснениеИспользоватьНапоминанияПользователяКонтекстноеМеню - 1327 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа использовать напоминания пользователя</value> - - - ru - Группа использовать напоминания пользователя - - - ГруппаИспользоватьНапоминанияПользователяExtendedTooltip - 1671 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - 86 - false - - Группа5ExtendedTooltip - 1667 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Equal - Auto - Auto - - - - ГруппаИспользоватьАнкетирование - 1622 - - ИспользоватьАнкетирование - 1623 - - <key>ru</key> - <value>Анкетирование</value> - - true - true - - true - - - НаборКонстант.ИспользоватьАнкетирование - - Right - - OnChange - ИспользоватьАнкетированиеПриИзменении - - - ИспользоватьАнкетированиеExtendedTooltip - 1675 - Label - true - true - - Left - - - - ИспользоватьАнкетированиеКонтекстноеМеню - 1624 - true - - CheckBoxField - Enter - true - Left - true - - - - ПояснениеИспользоватьАнкетирование - 1625 - - <key>ru</key> - <value>Составление анкет, проведение опросов и анализ результатов опросов.</value> - - true - true - - true - - - ПояснениеИспользоватьАнкетированиеExtendedTooltip - 1676 - Label - true - true - - Left - - - - ПояснениеИспользоватьАнкетированиеКонтекстноеМеню - 1626 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - 43 - false - - ГруппаИспользоватьАнкетированиеExtendedTooltip - 1674 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - - - - Группа3 - 1597 - - ГруппаИспользоватьБизнесПроцессыИЗадачи - 1339 - - ИспользоватьБизнесПроцессыИЗадачи - 750 - - <key>ru</key> - <value>Бизнес-процессы и задачи</value> - - true - true - - true - - - НаборКонстант.ИспользоватьБизнесПроцессыИЗадачи - - Right - - OnChange - ИспользоватьБизнесПроцессыИЗадачиПриИзменении - - - ИспользоватьБизнесПроцессыИЗадачиExtendedTooltip - 1679 - Label - true - true - - Left - - - - ИспользоватьБизнесПроцессыИЗадачиКонтекстноеМеню - 751 - true - - CheckBoxField - Auto - true - Left - true - - - - ПояснениеИспользоватьБизнесПроцессыИЗадачи - 1340 - - <key>ru</key> - <value>Запуск бизнес-процессов и работа с задачами.</value> - - true - true - - true - - - ПояснениеИспользоватьБизнесПроцессыИЗадачиExtendedTooltip - 1680 - Label - true - true - - Left - - - - ПояснениеИспользоватьБизнесПроцессыИЗадачиКонтекстноеМеню - 1341 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа использовать бизнес процессы и задачи</value> - - - ГруппаИспользоватьБизнесПроцессыИЗадачиExtendedTooltip - 1678 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаОткрытьРолиИИсполнителиБизнесПроцессов - 1357 - - ОткрытьРолиИИсполнителиБизнесПроцессов - 1356 - true - true - - true - - - ОткрытьРолиИИсполнителиБизнесПроцессовExtendedTooltip - 1682 - Label - true - true - - Left - - - Hyperlink - Form.Command.РолиИИсполнителиЗадач - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеОткрытьРолиИИсполнителиБизнесПроцессов - 1358 - - <key>ru</key> - <value>Настройка ролей для назначения задач группам исполнителей.</value> - - true - true - - true - - - ПояснениеОткрытьРолиИИсполнителиБизнесПроцессовExtendedTooltip - 1683 - Label - true - true - - Left - - - - ПояснениеОткрытьРолиИИсполнителиБизнесПроцессовКонтекстноеМеню - 1359 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа открыть роли и исполнители бизнес процессов</value> - - - ru - Группа открыть роли и исполнители бизнес процессов - - - ГруппаОткрытьРолиИИсполнителиБизнесПроцессовExtendedTooltip - 1681 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - 86 - false - - Группа3ExtendedTooltip - 1677 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Equal + auto Auto Auto @@ -1804,17 +1309,167 @@ ГруппаБизнесПроцессыИЗадачи 1697 - - Отступ - 1699 + + Группа2 + 1786 + + ГруппаИспользоватьБизнесПроцессыИЗадачи + 1339 + + ИспользоватьБизнесПроцессыИЗадачи + 750 + + <key>ru</key> + <value>Бизнес-процессы и задачи</value> + + true + true + + true + + + НаборКонстант.ИспользоватьБизнесПроцессыИЗадачи + + Right + ShowBottom + + OnChange + ИспользоватьБизнесПроцессыИЗадачиПриИзменении + + + ИспользоватьБизнесПроцессыИЗадачиExtendedTooltip + 1679 + + <key>ru</key> + <value>Запуск бизнес-процессов и работа с задачами.</value> + + Label + true + true + + Left + + + + ИспользоватьБизнесПроцессыИЗадачиКонтекстноеМеню + 751 + true + + CheckBoxField + Auto + true + Left + true + + + true + true + + true + + + <key>ru</key> + <value>Группа использовать бизнес процессы и задачи</value> + + 43 + false + + ГруппаИспользоватьБизнесПроцессыИЗадачиExtendedTooltip + 1678 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаОткрытьРолиИИсполнителиБизнесПроцессов + 1357 + + ОткрытьРолиИИсполнителиБизнесПроцессов + 1792 + true + true + + true + + + ОткрытьРолиИИсполнителиБизнесПроцессовРасширеннаяПодсказка + 1793 + + <key>ru</key> + <value>Настройка ролей для назначения задач группам исполнителей.</value> + + Label + true + + Left + + + Hyperlink + InformationRegister.ИсполнителиЗадач.Command.РолиИИсполнителиЗадач + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + + <key>ru</key> + <value>Группа открыть роли и исполнители бизнес процессов</value> + + + ru + Группа открыть роли и исполнители бизнес процессов + + 43 + false + + ГруппаОткрытьРолиИИсполнителиБизнесПроцессовExtendedTooltip + 1681 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + true true true - ОтступРасширеннаяПодсказка - 1701 + Группа2РасширеннаяПодсказка + 1787 Label true true @@ -1822,24 +1477,52 @@ Left - - ОтступКонтекстноеМеню - 1700 - true - - Label - true - true - - Left + UsualGroup + + Auto + true + true + Auto + Auto - ГруппаБизнесПроцессыИЗадачиНастройки - 1702 + Группа12 + 1769 ГруппаИспользоватьПодчиненныеБизнесПроцессы 1603 + + Отступ + 1699 + true + true + + true + + + ОтступРасширеннаяПодсказка + 1701 + Label + true + true + + Left + + + + ОтступКонтекстноеМеню + 1700 + true + + Label + 1 + true + true + + Left + + ИспользоватьПодчиненныеБизнесПроцессы 1601 @@ -1856,6 +1539,11 @@ НаборКонстант.ИспользоватьПодчиненныеБизнесПроцессы Right + + ru + Запуск подчиненных бизнес-процессов для учета иерархических работ. + + ShowBottom OnChange ИспользоватьПодчиненныеБизнесПроцессыПриИзменении @@ -1882,49 +1570,12 @@ true - - ПояснениеИспользоватьПодчиненныеБизнесПроцессы - 1606 - - <key>ru</key> - <value>Запуск подчиненных бизнес-процессов для учета иерархических работ.</value> - - true - true - - true - - - ПояснениеИспользоватьПодчиненныеБизнесПроцессыExtendedTooltip - 1686 - Label - true - true - - Left - - - - ПояснениеИспользоватьПодчиненныеБизнесПроцессыКонтекстноеМеню - 1607 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true true - 40 + 43 false ГруппаИспользоватьПодчиненныеБизнесПроцессыExtendedTooltip @@ -1938,7 +1589,6 @@ UsualGroup - Vertical Auto true true @@ -1965,6 +1615,7 @@ НаборКонстант.ИзменятьЗаданияЗаднимЧислом Right + ShowBottom OnChange ИзменятьЗаданияЗаднимЧисломПриИзменении @@ -1972,6 +1623,10 @@ ИзменятьЗаданияЗаднимЧисломExtendedTooltip 1688 + + <key>ru</key> + <value>Внесение изменений в задачи запущенных бизнес-процессов.</value> + Label true true @@ -1991,43 +1646,6 @@ true - - ПояснениеИзменятьЗаданияЗаднимЧислом - 1354 - - <key>ru</key> - <value>Внесение изменений в задачи запущенных бизнес-процессов.</value> - - true - true - - true - - - ПояснениеИзменятьЗаданияЗаднимЧисломExtendedTooltip - 1689 - Label - true - true - - Left - - - - ПояснениеИзменятьЗаданияЗаднимЧисломКонтекстноеМеню - 1355 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -2041,7 +1659,7 @@ ru Группа изменять задания задним числом - 40 + 43 false ГруппаИзменятьЗаданияЗаднимЧисломExtendedTooltip @@ -2063,657 +1681,14 @@ Auto - - Группа4 - 1598 - - ГруппаИспользоватьДатуНачалаЗадач - 1350 - - ИспользоватьДатуНачалаЗадач - 761 - - <key>ru</key> - <value>Дата начала задач</value> - - true - true - - true - - - НаборКонстант.ИспользоватьДатуНачалаЗадач - - Right - - OnChange - ИспользоватьДатуНачалаЗадачПриИзменении - - - ИспользоватьДатуНачалаЗадачExtendedTooltip - 1692 - Label - true - true - - Left - - - - ИспользоватьДатуНачалаЗадачКонтекстноеМеню - 762 - true - - CheckBoxField - Enter - true - Left - true - - - - ПояснениеИспользоватьДатуНачалаЗадач - 1351 - - <key>ru</key> - <value>Разрешить исполнителям заполнять поле "Дата начала" -и сортировать по нему список своих задач.</value> - - true - true - - true - - - ПояснениеИспользоватьДатуНачалаЗадачExtendedTooltip - 1693 - Label - true - true - - Left - - - - ПояснениеИспользоватьДатуНачалаЗадачКонтекстноеМеню - 1352 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - - true - true - - true - - - <key>ru</key> - <value>Группа использовать дату начала задач</value> - - - ru - Группа использовать дату начала задач - - 40 - false - - ГруппаИспользоватьДатуНачалаЗадачExtendedTooltip - 1691 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаИспользоватьДатуИВремяВСрокахЗадач - 1347 - - ИспользоватьДатуИВремяВСрокахЗадач - 757 - - <key>ru</key> - <value>Дата и время в сроках задач</value> - - true - true - - true - - - НаборКонстант.ИспользоватьДатуИВремяВСрокахЗадач - - Right - - OnChange - ИспользоватьДатуИВремяВСрокахЗадачПриИзменении - - - ИспользоватьДатуИВремяВСрокахЗадачExtendedTooltip - 1695 - Label - true - true - - Left - - - - ИспользоватьДатуИВремяВСрокахЗадачКонтекстноеМеню - 758 - true - - CheckBoxField - Enter - true - Left - true - - - - ПояснениеИспользоватьДатуИВремяВСрокахЗадач - 1348 - - <key>ru</key> - <value>Ввод сроков задач с точностью до минут.</value> - - true - true - - true - - - ПояснениеИспользоватьДатуИВремяВСрокахЗадачExtendedTooltip - 1696 - Label - true - true - - Left - - - - ПояснениеИспользоватьДатуИВремяВСрокахЗадачКонтекстноеМеню - 1349 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - - true - true - - true - - - <key>ru</key> - <value>Группа использовать дату и время в сроках задач</value> - - - ru - Группа использовать дату и время в сроках задач - - - ГруппаИспользоватьДатуИВремяВСрокахЗадачExtendedTooltip - 1694 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - Группа4ExtendedTooltip - 1690 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Equal - Auto - Auto - - - - ГруппаМониторингЗадач - 1711 - - ГруппаМониторингЗадачРасписание - 1713 - - ГруппаМониторингЗадачИспользование - 1734 - - МониторингЗадачИспользование - 1729 - true - true - - true - - - МониторингЗадачИспользование - - Right - - OnChange - МониторингЗадачИспользованиеПриИзменении - - - МониторингЗадачИспользованиеРасширеннаяПодсказка - 1731 - Label - true - true - - Left - - - - МониторингЗадачИспользованиеКонтекстноеМеню - 1730 - true - - CheckBoxField - Enter - true - Left - true - - - true - true - - true - - 40 - false - - ГруппаМониторингЗадачИспользованиеРасширеннаяПодсказка - 1735 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - МониторингЗадачНастроитьРасписание - 1732 - true - true - - true - - - МониторингЗадачНастроитьРасписаниеРасширеннаяПодсказка - 1733 - Label - true - true - - Left - - - Hyperlink - Form.Command.МониторингЗадачНастроитьРасписание - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - false - - ГруппаМониторингЗадачРасписаниеРасширеннаяПодсказка - 1714 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - МониторингЗадачПояснение - 1718 - true - true - - true - - - МониторингЗадачПояснениеРасширеннаяПодсказка - 1720 - Label - true - true - - Left - - - - МониторингЗадачПояснениеКонтекстноеМеню - 1719 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - - true - true - - true - - - ГруппаМониторингЗадачРасширеннаяПодсказка - 1712 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Equal - Auto - Auto - - - - ГруппаУведомлениеИсполнителейОНовыхЗадачах - 1736 - - ГруппаУведомлениеИсполнителейОНовыхЗадачахРасписание - 1738 - - ГруппаУведомлениеИсполнителейОНовыхЗадачахИспользование - 1740 - - УведомлениеИсполнителейОНовыхЗадачахИспользование - 1742 - true - true - - true - - - УведомлениеИсполнителейОНовыхЗадачахИспользование - - Right - - OnChange - УведомлениеИсполнителейОНовыхЗадачахИспользованиеПриИзменении - - - УведомлениеИсполнителейОНовыхЗадачахИспользованиеРасширеннаяПодсказка - 1744 - Label - true - true - - Left - - - - УведомлениеИсполнителейОНовыхЗадачахИспользованиеКонтекстноеМеню - 1743 - true - - CheckBoxField - Enter - true - Left - true - - - true - true - - true - - 40 - false - - ГруппаУведомлениеИсполнителейОНовыхЗадачахИспользованиеРасширеннаяПодсказка - 1741 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - УведомлениеИсполнителейОНовыхЗадачахНастроитьРасписание - 1745 - true - true - - true - - - УведомлениеИсполнителейОНовыхЗадачахНастроитьРасписаниеРасширеннаяПодсказка - 1746 - Label - true - true - - Left - - - Hyperlink - Form.Command.УведомлениеИсполнителейОНовыхЗадачахНастроитьРасписание - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - false - - ГруппаУведомлениеИсполнителейОНовыхЗадачахРасписаниеРасширеннаяПодсказка - 1739 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - УведомлениеИсполнителейОНовыхЗадачахПояснение - 1747 - true - true - - true - - - УведомлениеИсполнителейОНовыхЗадачахПояснениеРасширеннаяПодсказка - 1749 - Label - true - true - - Left - - - - УведомлениеИсполнителейОНовыхЗадачахПояснениеКонтекстноеМеню - 1748 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - - true - true - - true - - - ГруппаУведомлениеИсполнителейОНовыхЗадачахРасширеннаяПодсказка - 1737 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Equal - Auto - Auto - - true true true - - <key>ru</key> - <value>Группа бизнес процессы и задачи настройки</value> - - - ru - Группа бизнес процессы и задачи настройки - - ГруппаБизнесПроцессыИЗадачиНастройкиРасширеннаяПодсказка - 1703 + Группа12РасширеннаяПодсказка + 1770 Label true true @@ -2723,7 +1698,6 @@ UsualGroup - Vertical Auto true true @@ -2731,6 +1705,665 @@ Auto + + Группа4 + 1598 + + ГруппаИспользоватьДатуНачалаЗадач + 1350 + + Отступ1 + 1775 + true + true + + true + + + Отступ1РасширеннаяПодсказка + 1777 + Label + true + true + + Left + + + + Отступ1КонтекстноеМеню + 1776 + true + + Label + 1 + true + true + + Left + + + + ИспользоватьДатуНачалаЗадач + 761 + + <key>ru</key> + <value>Дата начала задач</value> + + true + true + + true + + + НаборКонстант.ИспользоватьДатуНачалаЗадач + + Right + + ru + Разрешить исполнителям заполнять поле "Дата начала" +и сортировать по нему список своих задач. + + ShowBottom + + OnChange + ИспользоватьДатуНачалаЗадачПриИзменении + + + ИспользоватьДатуНачалаЗадачExtendedTooltip + 1692 + Label + true + true + + Left + + + + ИспользоватьДатуНачалаЗадачКонтекстноеМеню + 762 + true + + CheckBoxField + Enter + true + Left + true + + + true + true + + true + + + <key>ru</key> + <value>Группа использовать дату начала задач</value> + + + ru + Группа использовать дату начала задач + + 43 + false + + ГруппаИспользоватьДатуНачалаЗадачExtendedTooltip + 1691 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ГруппаИспользоватьДатуИВремяВСрокахЗадач + 1347 + + ИспользоватьДатуИВремяВСрокахЗадач + 757 + + <key>ru</key> + <value>Дата и время в сроках задач</value> + + true + true + + true + + + НаборКонстант.ИспользоватьДатуИВремяВСрокахЗадач + + Right + ShowBottom + + OnChange + ИспользоватьДатуИВремяВСрокахЗадачПриИзменении + + + ИспользоватьДатуИВремяВСрокахЗадачExtendedTooltip + 1695 + + <key>ru</key> + <value>Ввод сроков задач с точностью до минут.</value> + + Label + true + true + + Left + + + + ИспользоватьДатуИВремяВСрокахЗадачКонтекстноеМеню + 758 + true + + CheckBoxField + Enter + true + Left + true + + + true + true + + true + + + <key>ru</key> + <value>Группа использовать дату и время в сроках задач</value> + + + ru + Группа использовать дату и время в сроках задач + + 43 + false + + ГруппаИспользоватьДатуИВремяВСрокахЗадачExtendedTooltip + 1694 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + Группа4ExtendedTooltip + 1690 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Equal + Auto + Auto + + + + ГруппаМониторингЗадач + 1711 + + ГруппаМониторингЗадачИспользование + 1734 + + Отступ2 + 1780 + true + true + + true + + + Отступ2РасширеннаяПодсказка + 1782 + Label + true + true + + Left + + + + Отступ2КонтекстноеМеню + 1781 + true + + Label + 1 + true + true + + Left + + + + Группа10 + 1778 + + МониторингЗадачИспользование + 1729 + true + true + + true + + + МониторингЗадачИспользование + + Right + + OnChange + МониторингЗадачИспользованиеПриИзменении + + + МониторингЗадачИспользованиеРасширеннаяПодсказка + 1731 + Label + true + true + + Left + + + + МониторингЗадачИспользованиеКонтекстноеМеню + 1730 + true + + CheckBoxField + Enter + true + Left + true + + + + МониторингЗадачПояснение + 1718 + true + true + + true + + + МониторингЗадачПояснениеРасширеннаяПодсказка + 1720 + Label + true + true + + Left + + + + МониторингЗадачПояснениеКонтекстноеМеню + 1719 + true + + Label + true + true + + Style.ПоясняющийТекст + + + Left + Top + + + true + true + + true + + + Группа10РасширеннаяПодсказка + 1779 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + 43 + false + + ГруппаМониторингЗадачИспользованиеРасширеннаяПодсказка + 1735 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + МониторингЗадачНастроитьРасписание + 1732 + true + true + + true + + + МониторингЗадачНастроитьРасписаниеРасширеннаяПодсказка + 1733 + Label + true + true + + Left + + + Hyperlink + Form.Command.МониторингЗадачНастроитьРасписание + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + ГруппаМониторингЗадачРасширеннаяПодсказка + 1712 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Equal + Auto + Auto + + + + ГруппаУведомлениеИсполнителейОНовыхЗадачах + 1736 + + ГруппаУведомлениеИсполнителейОНовыхЗадачахИспользование + 1740 + + Отступ3 + 1783 + true + true + + true + + + Отступ3РасширеннаяПодсказка + 1785 + Label + true + true + + Left + + + + Отступ3КонтекстноеМеню + 1784 + true + + Label + 1 + true + true + + Left + + + + Группа9 + 1763 + + УведомлениеИсполнителейОНовыхЗадачахИспользование + 1742 + true + true + + true + + + УведомлениеИсполнителейОНовыхЗадачахИспользование + + Right + + OnChange + УведомлениеИсполнителейОНовыхЗадачахИспользованиеПриИзменении + + + УведомлениеИсполнителейОНовыхЗадачахИспользованиеРасширеннаяПодсказка + 1744 + Label + true + true + + Left + + + + УведомлениеИсполнителейОНовыхЗадачахИспользованиеКонтекстноеМеню + 1743 + true + + CheckBoxField + Enter + true + Left + true + + + + УведомлениеИсполнителейОНовыхЗадачахПояснение + 1747 + true + true + + true + + + УведомлениеИсполнителейОНовыхЗадачахПояснениеРасширеннаяПодсказка + 1749 + Label + true + true + + Left + + + + УведомлениеИсполнителейОНовыхЗадачахПояснениеКонтекстноеМеню + 1748 + true + + Label + true + true + + Style.ПоясняющийТекст + + + Left + Top + + + true + true + + true + + + Группа9РасширеннаяПодсказка + 1764 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + 43 + false + + ГруппаУведомлениеИсполнителейОНовыхЗадачахИспользованиеРасширеннаяПодсказка + 1741 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + УведомлениеИсполнителейОНовыхЗадачахНастроитьРасписание + 1745 + true + true + + true + + + УведомлениеИсполнителейОНовыхЗадачахНастроитьРасписаниеРасширеннаяПодсказка + 1746 + Label + true + true + + Left + + + Hyperlink + Form.Command.УведомлениеИсполнителейОНовыхЗадачахНастроитьРасписание + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + ГруппаУведомлениеИсполнителейОНовыхЗадачахРасширеннаяПодсказка + 1737 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Equal + Auto + Auto + + true true @@ -2738,12 +2371,8 @@ <key>ru</key> - <value>Группа бизнес процессы и задачи</value> + <value>Бизнес-процессы и задачи</value> - - ru - Группа бизнес процессы и задачи - ГруппаБизнесПроцессыИЗадачиРасширеннаяПодсказка 1698 @@ -2756,10 +2385,14 @@ UsualGroup - Auto + Vertical + Collapsible + true + Button NormalSeparation true true + auto Auto Auto @@ -2788,7 +2421,6 @@ Write WriteAndClose Yes - 88 DontBlock true true @@ -2937,28 +2569,6 @@ true - - РолиИИсполнителиЗадач - - <key>ru</key> - <value>Роли и исполнители задач</value> - - 41 - - ru - Список ролей и исполнителей задач - - - true - - - - ОткрытьРолиИИсполнителиБизнесПроцессов - - - DontUse - Auto - МониторингЗадачНастроитьРасписание diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/Органайзер/Help/ru.html b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/Органайзер/Help/ru.html index fa73b9cd4..5fdc974a6 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/Органайзер/Help/ru.html +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/Органайзер/Help/ru.html @@ -5,26 +5,29 @@ TD { VERTICAL-ALIGN: top } </style><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.18427"></meta></head><body> -<p>В данной панели осуществляется настройка электронной почты, заметок, напоминаний и бизнес-процессов. Доступны команды:</p> +<p>В данной панели осуществляется настройка электронной почты, заметок, напоминаний и бизнес-процессов. </p> +<h3>Почта</h3> +<p>В программе предусмотрена возможность документирования взаимодействий с внешними контактами, а также между пользователями программы.</p> <ul><a name="СтандартныеПодсистемы.Взаимодействия"> -<li><strong>Почтовый клиент</strong> - включите флажок, для того чтобы использовать возможности встроенного в программу почтового клиента для <a href="DocumentJournal.Взаимодействия.Form.ФормаСписка/Help">взаимодействий</a> с помощью электронных писем (e-mail). -</li><li><strong>Исходящие письма в формате HTML</strong> - включите флажок, для того чтобы редактировать исходящие письма в формате HTML. +<li><strong>Почтовый клиент</strong> - включите флажок, для того чтобы использовать возможности встроенного в программу почтового клиента для <a href="DocumentJournal.Взаимодействия.Form.ФормаСписка/Help">взаимодействий</a> с помощью электронных писем (e-mail). Использование всех типов взаимодействий без почтового клиента невозможно. После включения становятся доступными команды для настройки взаимодействий: +<ul><li><strong>Исходящие письма в формате HTML</strong> - включите флажок, для того чтобы редактировать исходящие письма в формате HTML. </li><li><strong>Звонки, SMS, встречи и запланированные взаимодействия</strong> - включите флажок, для того чтобы регистрировать в программе звонки, встречи, сообщения SMS и запланированные взаимодействия. -</li><li><strong>Признаки "Рассмотрено" и "На контроле"</strong> - включите флажок, для того чтобы можно было ставить отметки о рассмотрении <a href="Document.ЭлектронноеПисьмоВходящее.Form.ФормаДокумента/Help">входящих писем</a>, <a href="Document.Встреча.Form.ФормаДокумента/Help">встреч</a>, <a href="Document.ТелефонныйЗвонок.Form.ФормаДокумента/Help">телефонных звонков</a> и <a href="Document.ЗапланированноеВзаимодействие.Form.ФормаДокумента/Help">запланированных взаимодействий</a>, а также  для постановки на контроль <a href="Document.ЭлектронноеПисьмоИсходящее.Form.ФормаДокумента/Help">исходящего письма</a> и <a href="Document.СообщениеSMS.Form.ФормаДокумента/Help">сообщения SMS</a>. Этот флажок полезно использовать для организации совместной работы в программе.</li></a> -<li><strong>Адрес публикации информационной базы в интернете</strong> - адрес информационной базы на веб-сервере. Используется при формировании навигационных ссылок на объекты информационной базы в электронных письмах.<a name="СтандартныеПодсистемы.РаботаСПочтовымиСообщениями"> +</li><li><strong>Признаки "Рассмотрено"</strong> и <strong>"На контроле"</strong> - включите флажок, для того чтобы можно было ставить отметки о рассмотрении <a href="Document.ЭлектронноеПисьмоВходящее.Form.ФормаДокумента/Help">входящих писем</a>, <a href="Document.Встреча.Form.ФормаДокумента/Help">встреч</a>, <a href="Document.ТелефонныйЗвонок.Form.ФормаДокумента/Help">телефонных звонков</a> и <a href="Document.ЗапланированноеВзаимодействие.Form.ФормаДокумента/Help">запланированных взаимодействий</a>, а также  для постановки на контроль <a href="Document.ЭлектронноеПисьмоИсходящее.Form.ФормаДокумента/Help">исходящего письма</a> и <a href="Document.СообщениеSMS.Form.ФормаДокумента/Help">сообщения SMS</a>. Этот флажок полезно использовать для организации совместной работы в программе.</li></ul></li></a><a name="СтандартныеПодсистемы.РаботаСПочтовымиСообщениями"> <li><a href="Catalog.УчетныеЗаписиЭлектроннойПочты.Form.ФормаЭлемента/Help">Настройка системной учетной записи электронной почты</a> - переход к настройке основной учетной записи электронной почты для отправки уведомлений из программы. -</li><li><a href="Catalog.УчетныеЗаписиЭлектроннойПочты/Help">Учетные записи электронной почты</a> - администрирование всех учетных записей электронной почты.</li></a> <a name="СтандартныеПодсистемы.ОтправкаSMS"> -<li><a href="CommonForm.НастройкаОтправкиSMS/Help">Настройка отправки SMS</a> - переход к настройке параметров отправки SMS-сообщений из программы. </li></a> <a name="СтандартныеПодсистемы.ЗаметкиПользователя"> -<li><strong>Заметки</strong> - включите этот флажок, для того чтобы можно было использовать <a href="Catalog.Заметки/Help">заметки</a> - произвольную текстовую информацию, для которой не получается подобрать какого-либо более подходящего справочника или документа, и которая больше никому не должна быть доступна. Заметки могут быть произвольными или по предмету, ссылаясь, например, на элемент справочника, документ, или другой объект программы.</li></a> <a name="СтандартныеПодсистемы.НапоминанияПользователя"> +</li><li><a href="Catalog.УчетныеЗаписиЭлектроннойПочты/Help">Учетные записи электронной почты</a> - администрирование всех учетных записей электронной почты.</li></a> </ul><h3>Отправка SMS<a name="СтандартныеПодсистемы.ОтправкаSMS"></a></h3> +<ul><li><a href="CommonForm.НастройкаОтправкиSMS/Help">Настройка отправки SMS</a> - переход к настройке параметров отправки SMS-сообщений из программы.  </li></ul><h3>Заметки, напоминания, анкетирование<a name="СтандартныеПодсистемы.ЗаметкиПользователя"></a></h3> +<ul><li><strong>Заметки</strong> - включите этот флажок, для того чтобы можно было использовать <a href="Catalog.Заметки/Help">заметки</a> - произвольную текстовую информацию, для которой не получается подобрать какого-либо более подходящего справочника или документа, и которая больше никому не должна быть доступна. Заметки могут быть произвольными или по предмету, ссылаясь, например, на элемент справочника, документ, или другой объект программы. <a name="СтандартныеПодсистемы.НапоминанияПользователя"> <li><strong>Напоминания</strong> - включите этот флажок, для того чтобы можно было вводить <a href="InformationRegister.НапоминанияПользователя/Help">напоминания</a>, которые срабатывают в назначенное время. Укажите время и предмет, по поводу которого в программе в указанное время будет выведен список напоминаний. Напоминания могут быть произвольными или по предмету, ссылаясь, например, на элемент справочника, документ, или другой объект программы.</li></a> <a name="СтандартныеПодсистемы.Анкетирование"> -<li><strong>Анкетирование</strong> - включите этот флажок, для того чтобы стал доступным соответствующий раздел программы, в котором можно готовить опросы, составлять <a href="Catalog.ШаблоныАнкет.Form.ФормаЭлемента/Help">анкеты</a>, проводить опросы среди респондентов, а также и анализировать результаты опросов.</li></a> <a name="СтандартныеПодсистемы.БизнесПроцессыИЗадачи"> -<li><strong>Бизнес-процессы и задачи</strong> - включите флажок, для того чтобы стал доступным раздел программы <strong>Бизнес-процессы и задачи</strong>, который предполагает использование запускаемых бизнес-процессов и позволяет работу с задачами. Также становится доступным ряд других команд, с помощью которых можно запустить бизнес-процессы и использовать задачи: -<ul><li><a href="InformationRegister.ИсполнителиЗадач/Help">Роли и исполнители задач</a> - настройка ролей для адресации задач группам исполнителей. -</li><li><strong>Подчиненные бизнес-процессы и задачи -</strong> включите флажок для учета бизнес-процессов, которые можно создавать в рамках задач других бизнес-процессов. +<li><strong>Анкетирование</strong> - включите этот флажок, для того чтобы стал доступным соответствующий раздел программы, в котором можно готовить опросы, составлять <a href="Catalog.ШаблоныАнкет.Form.ФормаЭлемента/Help">анкеты</a>, проводить опросы среди респондентов, а также и анализировать результаты опросов.</li></a> </li></ul><h3>Бизнес-процессы и задачи</h3> +<p>Программа предоставляет возможности для решения задач автоматизации управления предприятием или компанией. Процесс управления предприятием можно представить в программе как совокупность бизнес-процессов, состоящих из задач, каждая из которых адресована определенному исполнителю.</p> +<ul><li><strong>Бизнес-процессы и задачи</strong> - включите флажок, для того чтобы стал доступным раздел программы <strong>Бизнес-процессы и задачи</strong>, который предполагает использование запускаемых бизнес-процессов и позволяет работу с задачами. Также становится доступным ряд других команд, с помощью которых можно запустить бизнес-процессы и использовать задачи: +<ul><a name="СтандартныеПодсистемы.БизнесПроцессыИЗадачи"> +<li><a href="InformationRegister.ИсполнителиЗадач/Help">Роли и исполнители задач</a></li></a> - настройка ролей для адресации задач группам исполнителей. +<li><strong>Подчиненные бизнес-процессы и задачи -</strong> включите флажок для учета бизнес-процессов, которые можно создавать в рамках задач других бизнес-процессов. </li><li><strong>Изменять запущенные бизнес-процессы</strong> - включите флажок, для того чтобы можно было вносить изменения в задачи запущенных бизнес-процессов. </li><li><strong>Дата начала задач</strong> - включите флажок, для того чтобы разрешить исполнителям заполнять поле <strong>Дата начала</strong> и сортировать по нему список своих задач. </li><li><strong>Дата и время в сроках задач</strong> - включите флажок, для того чтобы можно было вводить сроки задач с точностью до минут. </li><li><strong>Уведомлять о просроченных задачах по почте</strong> - включите флажок, для того чтобы извещать исполнителей о просроченных задачах по расписанию, после этого становится доступной команда <ul><li><strong>Настроить расписание</strong> - выполните команду для настройки <a href="v8help://mngbase/jobschedule.lf">расписания</a> рассылки уведомлений.</li></ul></li><li><strong>Уведомлять исполнителей о новых задачах по почте</strong> - выполните команду для настройки расписаний рассылки уведомлений, после этого становится доступной команда -<ul><li><strong>Настроить расписание</strong> - выполните команду для настройки расписания рассылки уведомлений.</li></ul></li></ul></li></a></li></ul><h3>См. также: </h3> +<ul><li><strong>Настроить расписание</strong> - выполните команду для настройки расписания рассылки уведомлений.</li></ul></li></ul></li></ul><h3>См. также: </h3> <ul><li><a href="DataProcessor.ПанельАдминистрированияБСП/Help">Настройки программы</a>.</li></ul></body></html> \ No newline at end of file diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/Органайзер/Module.bsl b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/Органайзер/Module.bsl index 6d8a9fa86..41dfa2586 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/Органайзер/Module.bsl +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/Органайзер/Module.bsl @@ -17,55 +17,45 @@ РежимРаботы = ОбщегоНазначенияПовтИсп.РежимРаботыПрограммы(); РежимРаботы = Новый ФиксированнаяСтруктура(РежимРаботы); - // СтандартныеПодсистемы.Взаимодействия - Если РежимРаботы.МодельСервиса Тогда - Элементы.ИспользоватьПочтовыйКлиент.Видимость = Ложь; - Элементы.ПояснениеИспользоватьПочтовыйКлиент.Видимость = Ложь; - Элементы.ОтправлятьПисьмаВФорматеHTML.Видимость = Ложь; - Элементы.ПояснениеОтправлятьПисьмаВФорматеHTML.Видимость = Ложь; - Элементы.ИспользоватьПрочиеВзаимодействия.Видимость = Ложь; - Элементы.ПояснениеИспользоватьПрочиеВзаимодействия.Видимость = Ложь; - Элементы.ИспользоватьПризнакРассмотрено.Видимость = Ложь; - Элементы.ПояснениеИспользоватьПризнакРассмотрено.Видимость = Ложь; - Элементы.АдресПубликацииИнформационнойБазыВИнтернете.Видимость = Ложь; - Элементы.ПояснениеАдресПубликацииИнформационнойБазыВИнтернете.Видимость = Ложь; - КонецЕсли; - // Конец СтандартныеПодсистемы.Взаимодействия - - // СтандартныеПодсистемы.БизнесПроцессыИЗадачи - Если РежимРаботы.ЭтоАдминистраторПрограммы Тогда - ЕстьПочта = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСПочтовымиСообщениями"); - РегламентноеЗадание = НайтиРегламентноеЗадание("МониторингЗадач"); - Если ЕстьПочта И РегламентноеЗадание <> Неопределено Тогда - МониторингЗадачИспользование = РегламентноеЗадание.Использование; - МониторингЗадачРасписание = РегламентноеЗадание.Расписание; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.БизнесПроцессыИЗадачи") Тогда + Если РежимРаботы.ЭтоАдминистраторПрограммы Тогда + ЕстьПочта = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСПочтовымиСообщениями"); + РегламентноеЗадание = НайтиРегламентноеЗадание("МониторингЗадач"); + Если ЕстьПочта И РегламентноеЗадание <> Неопределено Тогда + МониторингЗадачИспользование = РегламентноеЗадание.Использование; + МониторингЗадачРасписание = РегламентноеЗадание.Расписание; + Иначе + Элементы.ГруппаМониторингЗадач.Видимость = Ложь; + КонецЕсли; + РегламентноеЗадание = НайтиРегламентноеЗадание("УведомлениеИсполнителейОНовыхЗадачах"); + Если ЕстьПочта И РегламентноеЗадание <> Неопределено Тогда + УведомлениеИсполнителейОНовыхЗадачахИспользование = РегламентноеЗадание.Использование; + УведомлениеИсполнителейОНовыхЗадачахРасписание = РегламентноеЗадание.Расписание; + Иначе + Элементы.ГруппаУведомлениеИсполнителейОНовыхЗадачах.Видимость = Ложь; + КонецЕсли; Иначе Элементы.ГруппаМониторингЗадач.Видимость = Ложь; - КонецЕсли; - РегламентноеЗадание = НайтиРегламентноеЗадание("УведомлениеИсполнителейОНовыхЗадачах"); - Если ЕстьПочта И РегламентноеЗадание <> Неопределено Тогда - УведомлениеИсполнителейОНовыхЗадачахИспользование = РегламентноеЗадание.Использование; - УведомлениеИсполнителейОНовыхЗадачахРасписание = РегламентноеЗадание.Расписание; - Иначе Элементы.ГруппаУведомлениеИсполнителейОНовыхЗадачах.Видимость = Ложь; КонецЕсли; + + Если РежимРаботы.МодельСервиса Тогда + Элементы.МониторингЗадачНастроитьРасписание.Видимость = Ложь; + Элементы.УведомлениеИсполнителейОНовыхЗадачахНастроитьРасписание.Видимость = Ложь; + КонецЕсли; Иначе - Элементы.ГруппаМониторингЗадач.Видимость = Ложь; - Элементы.ГруппаУведомлениеИсполнителейОНовыхЗадачах.Видимость = Ложь; + Элементы.ГруппаБизнесПроцессыИЗадачи.Видимость = Ложь; КонецЕсли; - Если РежимРаботы.МодельСервиса Тогда - Элементы.МониторингЗадачНастроитьРасписание.Видимость = Ложь; - Элементы.УведомлениеИсполнителейОНовыхЗадачахНастроитьРасписание.Видимость = Ложь; - КонецЕсли; - // Конец СтандартныеПодсистемы.БизнесПроцессыИЗадачи - // Обновление состояния элементов. УстановитьДоступность(); КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ОбновитьИнтерфейсПрограммы(); КонецПроцедуры @@ -73,7 +63,6 @@ #Область ОбработчикиСобытийЭлементовШапкиФормы -// СтандартныеПодсистемы.Взаимодействия &НаКлиенте Процедура ИспользоватьПочтовыйКлиентПриИзменении(Элемент) Подключаемый_ПриИзмененииРеквизита(Элемент); @@ -94,67 +83,26 @@ Подключаемый_ПриИзмененииРеквизита(Элемент); КонецПроцедуры -&НаКлиенте -Процедура АдресПубликацииИнформационнойБазыВИнтернетеПриИзменении(Элемент) - - Подключаемый_ПриИзмененииРеквизита(Элемент); - -КонецПроцедуры - -&НаКлиенте -Процедура АдресПубликацииИнформационнойБазыВИнтернетеНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) - - СтандартнаяОбработка = Ложь; - ПодключитьОбработчикОжидания("АдресПубликацииИнформационнойБазыВИнтернетеНачалоВыбораЗавершение", 0.1, Истина); - -КонецПроцедуры - -&НаКлиенте -Процедура АдресПубликацииИнформационнойБазыВИнтернетеНачалоВыбораЗавершение() - - Если ОбщегоНазначенияКлиентСервер.КлиентПодключенЧерезВебСервер() Тогда - АдресПубликацииИнформационнойБазыВИнтернетеНачалоВыбораНаСервере(СтрокаСоединенияИнформационнойБазы()); - Подключаемый_ПриИзмененииРеквизита(Элементы.АдресПубликацииИнформационнойБазыВИнтернете); - Иначе - ПоказатьПредупреждение(, НСтр("ru = 'Не удалось автоматически заполнить поле, т.к. клиентское приложение не подключено через веб-сервер.'")); - КонецЕсли; - -КонецПроцедуры - -&НаСервере -Процедура АдресПубликацииИнформационнойБазыВИнтернетеНачалоВыбораНаСервере(СтрокаСоединения) - - ПараметрыСоединения = СтроковыеФункцииКлиентСервер.ПолучитьПараметрыИзСтроки(СтрокаСоединения); - Если ПараметрыСоединения.Свойство("WS") Тогда - НаборКонстант.АдресПубликацииИнформационнойБазыВИнтернете = ПараметрыСоединения.WS; - КонецЕсли; - -КонецПроцедуры - -// Конец СтандартныеПодсистемы.Взаимодействия - -// СтандартныеПодсистемы.ЗаметкиПользователя &НаКлиенте Процедура ИспользоватьЗаметкиПриИзменении(Элемент) Подключаемый_ПриИзмененииРеквизита(Элемент); КонецПроцедуры -// Конец СтандартныеПодсистемы.ЗаметкиПользователя -// СтандартныеПодсистемы.НапоминанияПользователя &НаКлиенте Процедура ИспользоватьНапоминанияПользователяПриИзменении(Элемент) Подключаемый_ПриИзмененииРеквизита(Элемент); КонецПроцедуры -// Конец СтандартныеПодсистемы.НапоминанияПользователя -// СтандартныеПодсистемы.Анкетирование &НаКлиенте Процедура ИспользоватьАнкетированиеПриИзменении(Элемент) Подключаемый_ПриИзмененииРеквизита(Элемент); КонецПроцедуры -// Конец СтандартныеПодсистемы.Анкетирование -// СтандартныеПодсистемы.БизнесПроцессыИЗадачи +&НаКлиенте +Процедура ИспользоватьШаблоныСообщенийПриИзменении(Элемент) + Подключаемый_ПриИзмененииРеквизита(Элемент); +КонецПроцедуры + &НаКлиенте Процедура ИспользоватьБизнесПроцессыИЗадачиПриИзменении(Элемент) Подключаемый_ПриИзмененииРеквизита(Элемент); @@ -179,20 +127,11 @@ Процедура ИспользоватьДатуИВремяВСрокахЗадачПриИзменении(Элемент) Подключаемый_ПриИзмененииРеквизита(Элемент); КонецПроцедуры -// Конец СтандартныеПодсистемы.БизнесПроцессыИЗадачи #КонецОбласти #Область ОбработчикиКомандФормы -// СтандартныеПодсистемы.БизнесПроцессыИЗадачи -&НаКлиенте -Процедура ОткрытьРолиИИсполнителиБизнесПроцессов(Команда) - - ОткрытьФорму("РегистрСведений.ИсполнителиЗадач.Форма.РолиИИсполнителиЗадач",,ЭтотОбъект); - -КонецПроцедуры - &НаКлиенте Процедура МониторингЗадачНастроитьРасписание(Команда) Диалог = Новый ДиалогРасписанияРегламентногоЗадания(МониторингЗадачРасписание); @@ -205,8 +144,6 @@ Диалог.Показать(Новый ОписаниеОповещения("УведомлениеИсполнителейОНовыхЗадачахПослеИзмененияРасписания", ЭтотОбъект)); КонецПроцедуры -// Конец СтандартныеПодсистемы.БизнесПроцессыИЗадачи - #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -242,7 +179,6 @@ КонецПроцедуры -// СтандартныеПодсистемы.БизнесПроцессыИЗадачи &НаКлиенте Процедура МониторингЗадачПослеИзмененияРасписания(Расписание, ПараметрыВыполнения) Экспорт Если Расписание = Неопределено Тогда @@ -279,8 +215,6 @@ УведомлениеИсполнителейОНовыхЗадачахРасписание, "УведомлениеИсполнителейОНовыхЗадачахРасписание"); КонецПроцедуры -// Конец СтандартныеПодсистемы.БизнесПроцессыИЗадачи - //////////////////////////////////////////////////////////////////////////////// // Сервер @@ -338,19 +272,17 @@ &НаСервере Процедура УстановитьДоступность(РеквизитПутьКДанным = "") - // СтандартныеПодсистемы.Взаимодействия - Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьПочтовыйКлиент" ИЛИ РеквизитПутьКДанным = "" Тогда + Если (РеквизитПутьКДанным = "НаборКонстант.ИспользоватьПочтовыйКлиент" ИЛИ РеквизитПутьКДанным = "") + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Взаимодействия") Тогда Элементы.ИспользоватьПрочиеВзаимодействия.Доступность = НаборКонстант.ИспользоватьПочтовыйКлиент; Элементы.ИспользоватьПризнакРассмотрено.Доступность = НаборКонстант.ИспользоватьПочтовыйКлиент; Элементы.ОтправлятьПисьмаВФорматеHTML.Доступность = НаборКонстант.ИспользоватьПочтовыйКлиент; - Элементы.АдресПубликацииИнформационнойБазыВИнтернете.Доступность = НаборКонстант.ИспользоватьПочтовыйКлиент КонецЕсли; - // Конец СтандартныеПодсистемы.Взаимодействия - // СтандартныеПодсистемы.БизнесПроцессыИЗадачи - Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьБизнесПроцессыИЗадачи" ИЛИ РеквизитПутьКДанным = "" Тогда + Если (РеквизитПутьКДанным = "НаборКонстант.ИспользоватьБизнесПроцессыИЗадачи" ИЛИ РеквизитПутьКДанным = "") + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.БизнесПроцессыИЗадачи") Тогда Элементы.ОткрытьРолиИИсполнителиБизнесПроцессов.Доступность = НаборКонстант.ИспользоватьБизнесПроцессыИЗадачи; Элементы.ИспользоватьПодчиненныеБизнесПроцессы.Доступность = НаборКонстант.ИспользоватьБизнесПроцессыИЗадачи; @@ -363,7 +295,8 @@ КонецЕсли; Если Элементы.ГруппаМониторингЗадач.Видимость - И (РеквизитПутьКДанным = "МониторингЗадачРасписание" Или РеквизитПутьКДанным = "") Тогда + И (РеквизитПутьКДанным = "МониторингЗадачРасписание" Или РеквизитПутьКДанным = "") + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.БизнесПроцессыИЗадачи") Тогда Элементы.МониторингЗадачНастроитьРасписание.Доступность = МониторингЗадачИспользование; Если МониторингЗадачИспользование Тогда РасписаниеПредставление = Строка(МониторингЗадачРасписание); @@ -375,7 +308,8 @@ КонецЕсли; Если Элементы.ГруппаУведомлениеИсполнителейОНовыхЗадачах.Видимость - И (РеквизитПутьКДанным = "УведомлениеИсполнителейОНовыхЗадачахРасписание" Или РеквизитПутьКДанным = "") Тогда + И (РеквизитПутьКДанным = "УведомлениеИсполнителейОНовыхЗадачахРасписание" Или РеквизитПутьКДанным = "") + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.БизнесПроцессыИЗадачи") Тогда Элементы.УведомлениеИсполнителейОНовыхЗадачахНастроитьРасписание.Доступность = УведомлениеИсполнителейОНовыхЗадачахИспользование; Если УведомлениеИсполнителейОНовыхЗадачахИспользование Тогда РасписаниеПредставление = Строка(УведомлениеИсполнителейОНовыхЗадачахРасписание); @@ -385,7 +319,6 @@ КонецЕсли; Элементы.УведомлениеИсполнителейОНовыхЗадачахПояснение.Заголовок = Представление; КонецЕсли; - // Конец СтандартныеПодсистемы.БизнесПроцессыИЗадачи КонецПроцедуры diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПечатныеФормыОтчетыИОбработки/Form.form b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПечатныеФормыОтчетыИОбработки/Form.form index 01f1f7cc2..1afc3082e 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПечатныеФормыОтчетыИОбработки/Form.form +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПечатныеФормыОтчетыИОбработки/Form.form @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> -<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:form="http://g5.1c.ru/v8/dt/form"> +<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:form="http://g5.1c.ru/v8/dt/form"> <items xsi:type="form:FormGroup"> <name>ГруппаЗаголовок</name> <id>1580</id> @@ -31,47 +31,12 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <width>78</width> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> - <verticalStretch>false</verticalStretch> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> <verticalAlign>Top</verticalAlign> </extInfo> </items> - <items xsi:type="form:Decoration"> - <name>Декорация1</name> - <id>1585</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <extendedTooltip> - <name>Декорация1ExtendedTooltip</name> - <id>1602</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>Декорация1КонтекстноеМеню</name> - <id>1586</id> - <autoFill>true</autoFill> - </contextMenu> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </items> <items xsi:type="form:FormGroup"> <name>ГруппаСправка</name> <id>1583</id> @@ -106,8 +71,6 @@ <userVisible> <common>true</common> </userVisible> - <horizontalStretch>false</horizontalStretch> - <verticalStretch>false</verticalStretch> <extendedTooltip> <name>ГруппаСправкаExtendedTooltip</name> <id>1603</id> @@ -148,22 +111,56 @@ </extInfo> </items> <items xsi:type="form:FormGroup"> - <name>Группа1</name> - <id>1627</id> + <name>ГруппаКолонки</name> + <id>1658</id> <items xsi:type="form:FormGroup"> - <name>ГруппаОткрытьМакетыПечатныхФорм</name> - <id>1381</id> - <items xsi:type="form:Button"> - <name>ОткрытьМакетыПечатныхФорм</name> - <id>1380</id> + <name>ГруппаПечать</name> + <id>1627</id> + <items xsi:type="form:FormGroup"> + <name>ГруппаМакетыПечатныхФорм</name> + <id>1662</id> + <items xsi:type="form:Button"> + <name>ОткрытьМакетыПечатныхФорм</name> + <id>1380</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <extendedTooltip> + <name>ОткрытьМакетыПечатныхФормExtendedTooltip</name> + <id>1606</id> + <title> + <key>ru</key> + <value>Настройка макетов печатных форм документов.</value> + + Label + true + true + + Left + + + Hyperlink + InformationRegister.ПользовательскиеМакетыПечати.StandardCommand.OpenList + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + true true true + 43 + false - ОткрытьМакетыПечатныхФормExtendedTooltip - 1606 + ГруппаМакетыПечатныхФормРасширеннаяПодсказка + 1663 Label true true @@ -171,30 +168,63 @@ Left - Hyperlink - InformationRegister.ПользовательскиеМакетыПечати.StandardCommand.OpenList - Normal - Auto - true - true - UserCmds - Auto + UsualGroup + + Auto + true + true + Auto + Auto + - - ПояснениеОткрытьМакетыПечатныхФорм - 1382 - - <key>ru</key> - <value>Настройка макетов печатных форм документов.</value> - + + ГруппаПодменюПечать + 1664 + + ПодменюПечать + 1682 + + <key>ru</key> + <value>Подменю "Печать"</value> + + true + true + + true + + + ПодменюПечатьРасширеннаяПодсказка + 1683 + + <key>ru</key> + <value>Настройка видимости команд печати в формах.</value> + + Label + true + + Left + + + Hyperlink + CommonForm.НастройкаКомандПечати.StandardCommand.Open + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + true true true + 43 + false - ПояснениеОткрытьМакетыПечатныхФормExtendedTooltip - 1607 + ГруппаПодменюПечатьРасширеннаяПодсказка + 1665 Label true true @@ -202,19 +232,13 @@ Left - - ПояснениеОткрытьМакетыПечатныхФормКонтекстноеМеню - 1383 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left + UsualGroup + + Auto + true + true + Auto + Auto true @@ -222,19 +246,9 @@ true - - <key>ru</key> - <value>Группа открыть макеты печатных форм</value> - - - ru - Группа открыть макеты печатных форм - - 43 - false - ГруппаОткрытьМакетыПечатныхФормExtendedTooltip - 1605 + ГруппаПечатьРасширеннаяПодсказка + 1628 Label true true @@ -244,401 +258,63 @@ UsualGroup - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаНастройкаПодменюПечать - 1629 - - ПодменюПечать - 1636 - true - true - - true - - - ПодменюПечатьРасширеннаяПодсказка - 1637 - Label - true - true - - Left - - - Hyperlink - Form.Command.ПодменюПечать - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеНастройкаИспользованияКомандПечати - 1633 - - <key>ru</key> - <value>Настройка видимости команд печати в формах.</value> - - true - true - - true - - - ПояснениеНастройкаИспользованияКомандПечатиРасширеннаяПодсказка - 1635 - Label - true - true - - Left - - - - ПояснениеНастройкаИспользованияКомандПечатиКонтекстноеМеню - 1634 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа настройка подменю печать</value> - - - ru - Группа настройка подменю печать - - 43 - false - - ГруппаНастройкаПодменюПечатьРасширеннаяПодсказка - 1630 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - Группа1РасширеннаяПодсказка - 1628 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Equal - Auto - Auto - - - - Группа3 - 1575 - - ГруппаВариантыОтчетов - 1394 - - ОткрытьВариантыОтчетов - 1391 - true - true - - true - - - ОткрытьВариантыОтчетовExtendedTooltip - 1610 - Label - true - true - - Left - - - Hyperlink - Catalog.ВариантыОтчетов.StandardCommand.OpenList - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеОткрытьВариантыОтчетов - 1395 - - <key>ru</key> - <value>Администрирование списка всех вариантов отчетов, назначение ответственных и настройка видимости.</value> - - true - true - - true - - - ПояснениеОткрытьВариантыОтчетовExtendedTooltip - 1611 - Label - true - true - - Left - - - - ПояснениеОткрытьВариантыОтчетовКонтекстноеМеню - 1396 - true - - Label - true - 2 - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа варианты отчетов</value> - - - ru - Группа варианты отчетов - - 43 - false - - ГруппаВариантыОтчетовExtendedTooltip - 1609 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаРассылкиОтчетов - 1576 - - ОткрытьРассылкиОтчетов - 1577 - true - true - - true - - - ОткрытьРассылкиОтчетовExtendedTooltip - 1613 - Label - true - true - - Left - - - Hyperlink - Catalog.РассылкиОтчетов.StandardCommand.OpenList - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеОткрытьРассылкиОтчетов - 1578 - - <key>ru</key> - <value>Настройка списка рассылок отчетов, отправка по требованию или автоматически по расписанию.</value> - - true - true - - true - - - ПояснениеОткрытьРассылкиОтчетовExtendedTooltip - 1614 - Label - true - true - - Left - - - - ПояснениеОткрытьРассылкиОтчетовКонтекстноеМеню - 1579 - true - - Label - true - 2 - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа рассылки отчетов</value> - - - ru - Группа рассылки отчетов - - 43 - false - - ГруппаРассылкиОтчетовExtendedTooltip - 1612 - Label - true - true - - Left - - - UsualGroup - - Vertical Auto NormalSeparation true true + Equal Auto Auto - true - true - - true - - 86 - false - - Группа3ExtendedTooltip - 1608 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Equal - Auto - Auto - - - - Группа5 - 1641 - ГруппаУниверсальныйОтчет - 1650 - - УниверсальныйОтчет - 1652 - - <key>ru</key> - <value>Универсальный отчет</value> - + ГруппаВариантыРассылки + 1575 + + ГруппаОтчеты + 1674 + + ОткрытьВариантыОтчетов + 1391 + true + true + + true + + + ОткрытьВариантыОтчетовExtendedTooltip + 1610 + + <key>ru</key> + <value>Администрирование списка всех вариантов отчетов, назначение ответственных и настройка видимости.</value> + + Label + true + true + + Left + + + Hyperlink + Catalog.ВариантыОтчетов.StandardCommand.OpenList + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + true true true + 43 + false - УниверсальныйОтчетРасширеннаяПодсказка - 1654 + ГруппаОтчетыРасширеннаяПодсказка + 1675 Label true true @@ -646,38 +322,315 @@ Left - - УниверсальныйОтчетКонтекстноеМеню - 1653 - true - + UsualGroup + + Auto + true + true + Auto + Auto + + + + ГруппаРассылкиОтчетов + 1676 + + ОткрытьРассылкиОтчетов + 1577 + true + true + + true + + + ОткрытьРассылкиОтчетовExtendedTooltip + 1613 + + <key>ru</key> + <value>Настройка списка рассылок отчетов, отправка по требованию или автоматически по расписанию.</value> + + Label + true + true + + Left + + + Hyperlink + Catalog.РассылкиОтчетов.StandardCommand.OpenList + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + 43 + false + + ГруппаРассылкиОтчетовРасширеннаяПодсказка + 1677 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + ГруппаВариантыРассылкиРасширеннаяПодсказка + 1608 Label true true + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Equal + Auto + Auto + + + + ГруппаУниверсальныйОтчетРасширения + 1641 + + ГруппаУниверсальныйОтчет + 1670 + + УниверсальныйОтчет + 1678 + true + true + + true + + + УниверсальныйОтчетРасширеннаяПодсказка + 1679 + + <key>ru</key> + <value>Универсальный отчет по справочникам, документам, регистрам и т.д.</value> + + Label + true + + Left + + + Hyperlink + Report.УниверсальныйОтчет.StandardCommand.Open + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + 43 + false + + ГруппаУниверсальныйОтчетРасширеннаяПодсказка + 1671 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ГруппаРасширения + 1672 + + Расширения + 1645 + true + true + + true + + + РасширенияРасширеннаяПодсказка + 1646 + + <key>ru</key> + <value>Установка расширений: разделов, отчетов и обработок в дополнение к предусмотренным в программе.</value> + + Label + true + true + + Left + + + Hyperlink + Form.Command.Расширения + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + 43 + false + + ГруппаРасширенияРасширеннаяПодсказка + 1673 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + ГруппаУниверсальныйОтчетРасширенияРасширеннаяПодсказка + 1642 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Equal + Auto + Auto + + + + ГруппаДополнительныеОтчетыИОбработки + 1593 + + ГруппаДополнительныеОтчетыИОбработкиИспользование + 1666 + + ИспользоватьДополнительныеОтчетыИОбработки + 1589 + + <key>ru</key> + <value>Дополнительные отчеты и обработки</value> + + true + true + + true + + + НаборКонстант.ИспользоватьДополнительныеОтчетыИОбработки + + Right + + ru + Использование внешних печатных форм, отчетов и обработок в дополнение к предусмотренным в программе. + + ShowBottom - Click - УниверсальныйОтчетНажатие + OnChange + ИспользоватьДополнительныеОтчетыИОбработкиПриИзменении - true - Left - - - - УниверсальныйОтчетПояснение - 1655 - - <key>ru</key> - <value>Универсальный отчет по справочникам, документам, регистрам и т.д.</value> - + + ИспользоватьДополнительныеОтчетыИОбработкиExtendedTooltip + 1617 + Label + true + true + + Left + + + + ИспользоватьДополнительныеОтчетыИОбработкиКонтекстноеМеню + 1590 + true + + CheckBoxField + Enter + true + Left + true + + true true true + 43 + false - УниверсальныйОтчетПояснениеРасширеннаяПодсказка - 1657 + ГруппаДополнительныеОтчетыИОбработкиИспользованиеРасширеннаяПодсказка + 1667 Label true true @@ -685,20 +638,73 @@ Left - - УниверсальныйОтчетПояснениеКонтекстноеМеню - 1656 - true - - Label - true - 2 - true - - Style.ПоясняющийТекст - - - Left + UsualGroup + + Auto + true + true + Auto + Auto + + + + ГруппаДополнительныеОтчетыИОбработкиНастройка + 1668 + + ОткрытьДополнительныеОтчетыИОбработки + 1680 + true + true + + true + + + ОткрытьДополнительныеОтчетыИОбработкиРасширеннаяПодсказка + 1681 + + <key>ru</key> + <value>Подключение внешних печатных форм, отчетов и обработок в дополнение к предусмотренным в программе.</value> + + Label + true + + Left + + + Hyperlink + Catalog.ДополнительныеОтчетыИОбработки.StandardCommand.OpenList + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + 43 + false + + ГруппаДополнительныеОтчетыИОбработкиНастройкаРасширеннаяПодсказка + 1669 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto true @@ -706,17 +712,9 @@ true - - <key>ru</key> - <value>Группа универсальный отчет</value> - - - ru - Группа универсальный отчет - - ГруппаУниверсальныйОтчетРасширеннаяПодсказка - 1651 + ГруппаДополнительныеОтчетыИОбработкиРасширеннаяПодсказка + 1615 Label true true @@ -726,105 +724,11 @@ UsualGroup - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаАдминистрированиеРасширений - 1643 - - Расширения - 1645 - true - true - - true - - - РасширенияРасширеннаяПодсказка - 1646 - Label - true - true - - Left - - - Hyperlink - Form.Command.Расширения - Normal - Auto - true - true - UserCmds - Auto - - - РасширенияПояснение - 1647 - - <key>ru</key> - <value>Подключение расширений: разделов, отчетов и обработок в дополнение к предусмотренным в программе.</value> - - true - true - - true - - - РасширенияПояснениеРасширеннаяПодсказка - 1649 - Label - true - true - - Left - - - - РасширенияПояснениеКонтекстноеМеню - 1648 - true - - Label - true - 2 - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - 43 - false - - ГруппаАдминистрированиеРасширенийРасширеннаяПодсказка - 1644 - Label - true - true - - Left - - - UsualGroup - - Vertical Auto + NormalSeparation true true + Equal Auto Auto @@ -835,8 +739,8 @@ true - Группа5РасширеннаяПодсказка - 1642 + ГруппаКолонкиРасширеннаяПодсказка + 1659 Label true true @@ -846,245 +750,10 @@ UsualGroup + Vertical Auto - NormalSeparation true true - Equal - Auto - Auto - - - - Группа4 - 1593 - - ГруппаИспользоватьДополнительныеОтчетыИОбработки - 1594 - - ИспользоватьДополнительныеОтчетыИОбработки - 1589 - - <key>ru</key> - <value>Дополнительные отчеты и обработки</value> - - true - true - - true - - - НаборКонстант.ИспользоватьДополнительныеОтчетыИОбработки - - Right - - OnChange - ИспользоватьДополнительныеОтчетыИОбработкиПриИзменении - - - ИспользоватьДополнительныеОтчетыИОбработкиExtendedTooltip - 1617 - Label - true - true - - Left - - - - ИспользоватьДополнительныеОтчетыИОбработкиКонтекстноеМеню - 1590 - true - - CheckBoxField - Enter - true - Left - true - - - - ПояснениеИспользоватьДополнительныеОтчетыИОбработки - 1591 - - <key>ru</key> - <value>Использование внешних печатных форм, отчетов и обработок в дополнение к предусмотренным в программе.</value> - - true - true - - true - - - ПояснениеИспользоватьДополнительныеОтчетыИОбработкиExtendedTooltip - 1618 - Label - true - true - - Left - - - - ПояснениеИспользоватьДополнительныеОтчетыИОбработкиКонтекстноеМеню - 1592 - true - - Label - true - 2 - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - 43 - false - - ГруппаИспользоватьДополнительныеОтчетыИОбработкиExtendedTooltip - 1616 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаОткрытьДополнительныеОтчетыИОбработки - 1599 - - ОткрытьДополнительныеОтчетыИОбработки - 1399 - true - true - - true - - - ОткрытьДополнительныеОтчетыИОбработкиExtendedTooltip - 1620 - Label - true - true - - Left - - - Hyperlink - Form.Command.СправочникДополнительныеОтчетыИОбработки - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеОткрытьДополнительныеОтчетыИОбработки - 1401 - - <key>ru</key> - <value>Подключение внешних печатных форм, отчетов и обработок в дополнение к предусмотренным в программе.</value> - - true - true - - true - - - ПояснениеОткрытьДополнительныеОтчетыИОбработкиExtendedTooltip - 1621 - Label - true - true - - Left - - - - ПояснениеОткрытьДополнительныеОтчетыИОбработкиКонтекстноеМеню - 1402 - true - - Label - true - 2 - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - 43 - false - - ГруппаОткрытьДополнительныеОтчетыИОбработкиExtendedTooltip - 1619 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - Группа4ExtendedTooltip - 1615 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Equal Auto Auto @@ -1113,7 +782,6 @@ Write WriteAndClose Yes - 88 DontBlock true true @@ -1155,50 +823,6 @@ true - - СправочникДополнительныеОтчетыИОбработки - - <key>ru</key> - <value>Дополнительные отчеты и обработки</value> - - 1 - - ru - Дополнительные отчеты и обработки - - - true - - - - СправочникДополнительныеОтчетыИОбработки - - - DontUse - Auto - - - ПодменюПечать - - <key>ru</key> - <value>Подменю "Печать"</value> - - 2 - - ru - Подменю печать - - - true - - - - ПодменюПечать - - - DontUse - Auto - Расширения diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПечатныеФормыОтчетыИОбработки/Help/ru.html b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПечатныеФормыОтчетыИОбработки/Help/ru.html index 052019de4..b33973516 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПечатныеФормыОтчетыИОбработки/Help/ru.html +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПечатныеФормыОтчетыИОбработки/Help/ru.html @@ -8,11 +8,11 @@ TD { <p>В данной панели осуществляется настройка печатных форм, вариантов отчетов, рассылок отчетов, дополнительных отчетов и обработок. Доступны команды:</p> <ul><a name="СтандартныеПодсистемы.Печать"> <li><a href="InformationRegister.ПользовательскиеМакетыПечати/Help">Макеты печатных форм</a> - переход к списку макетов для настройки печатных форм, формируемых из программы. -</li><li><a href="CommonForm.НастройкаКомандПечати/Help">Подменю "Печать"</a> - переход к настройке команд подменю "Печать".</li></a><a name="СтандартныеПодсистемы.ВариантыОтчетов"> +</li><li><a href="CommonForm.НастройкаКомандПечати/Help">Подменю "Печать"</a> - переход к настройке команд подменю <strong>Печать</strong>.</li></a><a name="СтандартныеПодсистемы.ВариантыОтчетов"> <li><a href="Catalog.ВариантыОтчетов/Help">Отчеты</a> - переход к списку вариантов отчетов для настройки их доступности и размещения в разделах программы. </li><li><a href="Report.УниверсальныйОтчет/Help">Универсальный отчет</a> - предназначен для получения отчета по выбранным данным программы - по спискам, документам, регистрам и т.д.</li></a><a name="СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки"> <li><strong>Дополнительные отчеты и обработки</strong> - включите флажок, для того чтобы подключать к программе внешние печатные формы, отчеты и обработки в дополнение к предусмотренным в программе. После включения становится доступной команда: <ul><li><a href="Catalog.ДополнительныеОтчетыИОбработки/Help">Дополнительные отчеты и обработки</a> - переход к подключению внешних печатных форм, отчетов и обработок в дополнение к предусмотренным в программе.</li></ul></li></a><a name="СтандартныеПодсистемы.РассылкаОтчетов"> <li><a href="Catalog.РассылкиОтчетов/Help">Рассылки отчетов</a> - переход к списку рассылок отчетов для автоматического формирования отчетов и доставки сформированных отчетов получателям. </li></a><a name="СтандартныеПодсистемы.БазоваяФункциональность"> -<li><a href="CommonForm.УстановленныеРасширения/Help">Расширения</a> - Подключение расширений: разделов, отчетов и обработок в дополнение к предусмотренным в программе.</li></a></ul><h3>См. также:</h3> +<li><a href="CommonForm.Расширения/Help">Расширения</a> - Подключение расширений: разделов, отчетов и обработок в дополнение к предусмотренным в программе.</li></a></ul><h3>См. также:</h3> <ul><li><a href="DataProcessor.ПанельАдминистрированияБСП/Help">Настройки программы</a>.</li></ul></body></html> \ No newline at end of file diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПечатныеФормыОтчетыИОбработки/Module.bsl b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПечатныеФормыОтчетыИОбработки/Module.bsl index d4cf1f2cd..c44cec531 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПечатныеФормыОтчетыИОбработки/Module.bsl +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПечатныеФормыОтчетыИОбработки/Module.bsl @@ -18,41 +18,40 @@ РежимРаботы = Новый ФиксированнаяСтруктура(РежимРаботы); // Настройки видимости при запуске. - Элементы.ГруппаАдминистрированиеРасширений.Видимость = - Не СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации(); + Элементы.Расширения.Видимость = Не СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации(); - // СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки - Элементы.ГруппаИспользоватьДополнительныеОтчетыИОбработки.Видимость = РежимРаботы.Локальный Или РежимРаботы.Автономный; - Элементы.ГруппаОткрытьДополнительныеОтчетыИОбработки.Видимость = РежимРаботы.Локальный Или РежимРаботы.Автономный - // При работе в модели сервиса, если включено администратором сервиса. - Или НаборКонстант.ИспользоватьДополнительныеОтчетыИОбработки; - // Конец СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда + Элементы.ИспользоватьДополнительныеОтчетыИОбработки.Видимость = РежимРаботы.Локальный Или РежимРаботы.Автономный; + Элементы.ОткрытьДополнительныеОтчетыИОбработки.Видимость = РежимРаботы.Локальный Или РежимРаботы.Автономный + // При работе в модели сервиса, если включено администратором сервиса. + Или НаборКонстант.ИспользоватьДополнительныеОтчетыИОбработки; + Иначе + Элементы.ГруппаДополнительныеОтчетыИОбработки.Видимость = Ложь; + КонецЕсли; - // СтандартныеПодсистемы.РассылкаОтчетов - Элементы.ГруппаРассылкиОтчетов.Видимость = РассылкаОтчетов.ПравоДобавления(); - // Конец СтандартныеПодсистемы.РассылкаОтчетов + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РассылкаОтчетов") Тогда + МодульРассылкаОтчетов = ОбщегоНазначения.ОбщийМодуль("РассылкаОтчетов"); + Элементы.ОткрытьРассылкиОтчетов.Видимость = МодульРассылкаОтчетов.ПравоДобавления(); + Иначе + Элементы.ГруппаРассылкиОтчетов.Видимость = Ложь; + КонецЕсли; // Обновление состояния элементов. УстановитьДоступность(); КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ОбновитьИнтерфейсПрограммы(); КонецПроцедуры -// СтандартныеПодсистемы.ВариантыОтчетов -&НаКлиенте -Процедура УниверсальныйОтчетНажатие(Элемент) - ОткрытьФорму("Отчет.УниверсальныйОтчет.Форма"); -КонецПроцедуры -// Конец СтандартныеПодсистемы.ВариантыОтчетов - #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы -// СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки &НаКлиенте Процедура ИспользоватьДополнительныеОтчетыИОбработкиПриИзменении(Элемент) @@ -73,30 +72,15 @@ КонецПопытки; КонецПроцедуры -// Конец СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки #КонецОбласти #Область ОбработчикиКомандФормы -// СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки -&НаКлиенте -Процедура СправочникДополнительныеОтчетыИОбработки(Команда) - - ОткрытьФорму("Справочник.ДополнительныеОтчетыИОбработки.ФормаСписка", , ЭтотОбъект); - -КонецПроцедуры -// Конец СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки - -&НаКлиенте -Процедура ПодменюПечать(Команда) - ОткрытьФорму("ОбщаяФорма.НастройкаКомандПечати"); -КонецПроцедуры - &НаКлиенте Процедура Расширения(Команда) - ОткрытьФорму("ОбщаяФорма.УстановленныеРасширения"); + ОткрытьФорму("ОбщаяФорма.Расширения"); КонецПроцедуры @@ -191,20 +175,19 @@ &НаСервере Процедура УстановитьДоступность(РеквизитПутьКДанным = "") - // СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки - Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьДополнительныеОтчетыИОбработки" ИЛИ РеквизитПутьКДанным = "" Тогда + Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьДополнительныеОтчетыИОбработки" ИЛИ РеквизитПутьКДанным = "" + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда Элементы.ОткрытьДополнительныеОтчетыИОбработки.Доступность = НаборКонстант.ИспользоватьДополнительныеОтчетыИОбработки; КонецЕсли; - // Конец СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки КонецПроцедуры -// СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки - &НаСервереБезКонтекста Функция ЗапросыНаИспользованиеВнешнихРесурсовДополнительныхОтчетовИОбработок(Включение) - Возврат ДополнительныеОтчетыИОбработкиВБезопасномРежимеСлужебный.ЗапросыРазрешенийДополнительныхОбработок(Включение); + МодульДополнительныеОтчетыИОбработкиВБезопасномРежимеСлужебный = ОбщегоНазначения.ОбщийМодуль( + "ДополнительныеОтчетыИОбработкиВБезопасномРежимеСлужебный"); + Возврат МодульДополнительныеОтчетыИОбработкиВБезопасномРежимеСлужебный.ЗапросыРазрешенийДополнительныхОбработок(Включение); КонецФункции @@ -219,6 +202,4 @@ КонецПроцедуры -// Конец СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки - #КонецОбласти diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоддержкаИОбслуживание/Form.form b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоддержкаИОбслуживание/Form.form index 31973b850..9554fd475 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоддержкаИОбслуживание/Form.form +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоддержкаИОбслуживание/Form.form @@ -31,47 +31,12 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <width>78</width> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> - <verticalStretch>false</verticalStretch> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> <verticalAlign>Top</verticalAlign> </extInfo> </items> - <items xsi:type="form:Decoration"> - <name>Декорация</name> - <id>1584</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <extendedTooltip> - <name>ДекорацияРасширеннаяПодсказка</name> - <id>1634</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>ДекорацияКонтекстноеМеню</name> - <id>1585</id> - <autoFill>true</autoFill> - </contextMenu> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </items> <items xsi:type="form:FormGroup"> <name>ГруппаСправка</name> <id>1577</id> @@ -106,8 +71,6 @@ <userVisible> <common>true</common> </userVisible> - <horizontalStretch>false</horizontalStretch> - <verticalStretch>false</verticalStretch> <extendedTooltip> <name>ГруппаСправкаExtendedTooltip</name> <id>1635</id> @@ -120,7 +83,7 @@ </extendedTooltip> <type>CommandBar</type> <extInfo xsi:type="form:CommandBarExtInfo"> - <horizontalAlign>Left</horizontalAlign> + <horizontalAlign>Right</horizontalAlign> </extInfo> </items> <visible>true</visible> @@ -271,8 +234,6 @@ <key>ru</key> <value>Группа частотный сервис</value> </toolTip> - <width>86</width> - <horizontalStretch>false</horizontalStretch> <extendedTooltip> <name>ГруппаЧастотныйСервисExtendedTooltip</name> <id>1637</id> @@ -357,7 +318,7 @@ </extInfo> </items> <items xsi:type="form:FormGroup"> - <name>Группа7</name> + <name>ГруппаДополнительныеОтчетыИОбработки</name> <id>1730</id> <items xsi:type="form:FormGroup"> <name>ГруппаДополнительныеОтчетыПоАдминистрированию</name> @@ -377,6 +338,10 @@ <extendedTooltip> <name>ДополнительныеОтчетыПоАдминистрированиюРасширеннаяПодсказка</name> <id>1819</id> + <title> + <key>ru</key> + <value>Команды дополнительных отчетов, подключенных к программе.</value> + Label true true @@ -391,45 +356,9 @@ true true UserCmds + ShowBottom Auto - - ПояснениеДополнительныеОтчетыПоАдминистрированию - 1736 - - <key>ru</key> - <value>Команды дополнительных отчетов, подключенных к программе.</value> - - true - true - - true - - - ПояснениеДополнительныеОтчетыПоАдминистрированиюРасширеннаяПодсказка - 1738 - Label - true - true - - Left - - - - ПояснениеДополнительныеОтчетыПоАдминистрированиюКонтекстноеМеню - 1737 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -475,8 +404,11 @@ ДополнительныеОбработкиПоАдминистрированиюРасширеннаяПодсказка 1821 + + <key>ru</key> + <value>Команды дополнительных обработок, подключенных к программе.</value> + Label - true true Left @@ -489,50 +421,16 @@ true true UserCmds + ShowBottom Auto - - ПояснениеДополнительныеОбработкиПоАдминистрированию - 1743 - - <key>ru</key> - <value>Команды дополнительных обработок, подключенных к программе.</value> - - true - true - - true - - - ПояснениеДополнительныеОбработкиПоАдминистрированиюРасширеннаяПодсказка - 1745 - Label - true - true - - Left - - - - ПояснениеДополнительныеОбработкиПоАдминистрированиюКонтекстноеМеню - 1744 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true true + 43 + false ГруппаДополнительныеОбработкиПоАдминистрированиюРасширеннаяПодсказка 1740 @@ -559,7 +457,7 @@ true - Группа7РасширеннаяПодсказка + ГруппаДополнительныеОтчетыИОбработкиРасширеннаяПодсказка 1731 Label true @@ -586,14 +484,6 @@ ru Отчеты и обработки - - System.DefaultGUIFont - 11.0 - true - false - false - false - ГруппаОтчетыИОбработкиРасширеннаяПодсказка 1713 @@ -607,7 +497,9 @@ UsualGroup Vertical - Auto + Collapsible + true + Button NormalSeparation true true @@ -637,6 +529,10 @@ ОбработкаРегламентныеИФоновыеЗаданияExtendedTooltip 1645 + + <key>ru</key> + <value>Планирование и запуск регламентных заданий.</value> + Label true true @@ -651,46 +547,9 @@ true true UserCmds + ShowBottom Auto - - ПояснениеОбработкаРегламентныеИФоновыеЗадания - 1510 - - <key>ru</key> - <value>Планирование и запуск регламентных заданий.</value> - - true - true - - true - - - ПояснениеОбработкаРегламентныеИФоновыеЗаданияExtendedTooltip - 1646 - Label - true - true - - Left - - - - ПояснениеОбработкаРегламентныеИФоновыеЗаданияКонтекстноеМеню - 1511 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - true true @@ -732,8 +591,11 @@ РазблокироватьРаботуСВнешнимиРесурсамиРасширеннаяПодсказка 2026 + + <key>ru</key> + <value>Работа со всеми внешними ресурсами (синхронизация данных, отправка почты и т.п.), выполняемая по расписанию заблокирована для предотвращения конфликтов с основной информационной базой.</value> + Label - true true Left @@ -746,45 +608,9 @@ true true UserCmds + ShowBottom Auto - - ПояснениеБлокировкаРаботыСВнешнимиРесурсами - 2027 - - <key>ru</key> - <value>Работа со всеми внешними ресурсами (синхронизация данных, отправка почты и т.п.), выполняемая по расписанию заблокирована для предотвращения конфликтов с основной информационной базой.</value> - - true - true - - true - - - ПояснениеБлокировкаРаботыСВнешнимиРесурсамиРасширеннаяПодсказка - 2029 - Label - true - true - - Left - - - - ПояснениеБлокировкаРаботыСВнешнимиРесурсамиКонтекстноеМеню - 2028 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -861,6 +687,11 @@ ОбработкаУправлениеИтогамиИАгрегатамиОткрытьExtendedTooltip 1652 + + <key>ru</key> + <value>Установка периода рассчитанных итогов. +Перестройка, заполнение и оптимизация агрегатов.</value> + Label true true @@ -875,46 +706,9 @@ true true UserCmds + ShowBottom Auto - - ПояснениеОбработкаУправлениеИтогамиИАгрегатамиОткрыть - 1507 - - <key>ru</key> - <value>Установка периода рассчитанных итогов. -Перестройка, заполнение и оптимизация агрегатов.</value> - - true - true - - true - - - ПояснениеОбработкаУправлениеИтогамиИАгрегатамиОткрытьExtendedTooltip - 1653 - Label - true - true - - Left - - - - ПояснениеОбработкаУправлениеИтогамиИАгрегатамиОткрытьКонтекстноеМеню - 1508 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -950,105 +744,6 @@ Auto - - ГруппаУправлениеПолнотекстовымПоискомИИзвлечениемТекстов - 1512 - - УправлениеПолнотекстовымПоискомИИзвлечениемТекстов - 1503 - - <key>ru</key> - <value>Управление полнотекстовым поиском</value> - - true - true - - true - - - УправлениеПолнотекстовымПоискомИИзвлечениемТекстовExtendedTooltip - 1655 - Label - true - true - - Left - - - Hyperlink - Form.Command.УправлениеПолнотекстовымПоискомИИзвлечениемТекстов - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеУправлениеПолнотекстовымПоискомИИзвлечениемТекстов - 1513 - - <key>ru</key> - <value>Обновление и очистка индекса полнотекстового поиска. -Управление извлечением текстов из файлов.</value> - - true - true - - true - - - ПояснениеУправлениеПолнотекстовымПоискомИИзвлечениемТекстовExtendedTooltip - 1656 - Label - true - true - - Left - - - - ПояснениеУправлениеПолнотекстовымПоискомИИзвлечениемТекстовКонтекстноеМеню - 1514 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - 43 - false - - ГруппаУправлениеПолнотекстовымПоискомИИзвлечениемТекстовExtendedTooltip - 1654 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - true true @@ -1073,6 +768,184 @@ Auto + + ГруппаУправлениеПолнотекстовымПоискомИИзвлечениемТекстов + 1512 + + ГруппаУправлениеПолнотекстовымПоискомИИзвлечениемТекстовИспользование + 2109 + + ИспользоватьПолнотекстовыйПоиск + 2111 + true + true + + true + + + ИспользоватьПолнотекстовыйПоиск + + Right + + ru + Управление поиском и извлечением текстов из файлов. + + ShowBottom + + OnChange + ИспользоватьПолнотекстовыйПоискПриИзменении + + + ИспользоватьПолнотекстовыйПоискРасширеннаяПодсказка + 2113 + Label + true + true + + Left + + + + ИспользоватьПолнотекстовыйПоискКонтекстноеМеню + 2112 + true + + CheckBoxField + Enter + true + Left + true + + true + + + true + true + + true + + + <key>ru</key> + <value>Группа управление полнотекстовым поиском и извлечением текстов использование</value> + + + ru + Группа управление полнотекстовым поиском и извлечением текстов использование + + 43 + + ГруппаУправлениеПолнотекстовымПоискомИИзвлечениемТекстовИспользованиеРасширеннаяПодсказка + 2110 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаУправлениеПолнотекстовымПоискомИИзвлечениемТекстовНастройка + 2107 + + УправлениеПолнотекстовымПоискомИИзвлечениемТекстов + 1503 + + <key>ru</key> + <value>Настроить</value> + + true + true + + true + + + УправлениеПолнотекстовымПоискомИИзвлечениемТекстовExtendedTooltip + 1655 + Label + true + true + + Left + + + Hyperlink + Form.Command.УправлениеПолнотекстовымПоискомИИзвлечениемТекстов + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Группа управление полнотекстовым поиском и извлечением текстов настройка</value> + + + ru + Группа управление полнотекстовым поиском и извлечением текстов настройка + + + ГруппаУправлениеПолнотекстовымПоискомИИзвлечениемТекстовНастройкаРасширеннаяПодсказка + 2108 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + 43 + false + + ГруппаУправлениеПолнотекстовымПоискомИИзвлечениемТекстовExtendedTooltip + 1654 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + ГруппаДатыЗапретаИзменения 2005 @@ -1095,6 +968,11 @@ НаборКонстант.ИспользоватьДатыЗапретаИзменения Right + + ru + Запрет изменения данных прошлых периодов. + + ShowBottom OnChange Подключаемый_ПриИзмененииРеквизита @@ -1121,43 +999,6 @@ true - - ИспользоватьДатыЗапретаИзмененияПояснение - 2012 - - <key>ru</key> - <value>Запрет изменения данных прошлых периодов.</value> - - true - true - - true - - - ИспользоватьДатыЗапретаИзмененияПояснениеРасширеннаяПодсказка - 2014 - Label - true - true - - Left - - - - ИспользоватьДатыЗапретаИзмененияПояснениеКонтекстноеМеню - 2013 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -1193,8 +1034,8 @@ ГруппаДатыЗапретаИзмененияНастройка 2015 - НастроитьДатыЗапретаИзменения - 2017 + РегистрСведенийДатыЗапретаИзмененияДатыЗапретаИзмененияДанных + 2087 <key>ru</key> <value>Настроить</value> @@ -1205,8 +1046,12 @@ <common>true</common> </userVisible> <extendedTooltip> - <name>НастроитьДатыЗапретаИзмененияРасширеннаяПодсказка</name> - <id>2018</id> + <name>РегистрСведенийДатыЗапретаИзмененияДатыЗапретаИзмененияДанныхРасширеннаяПодсказка</name> + <id>2088</id> + <title> + <key>ru</key> + <value>Настроить даты запрета изменения</value> + Label true true @@ -1215,13 +1060,12 @@ Hyperlink - Form.Command.НастроитьДатыЗапретаИзменения + InformationRegister.ДатыЗапретаИзменения.Command.ДатыЗапретаИзмененияДанных Normal Auto true true UserCmds - None Auto true @@ -1233,8 +1077,6 @@ ru Группа даты запрета изменения настройка - 43 - false ГруппаДатыЗапретаИзмененияНастройкаРасширеннаяПодсказка 2016 @@ -1264,6 +1106,8 @@ ru Группа даты запрета изменения + 43 + false ГруппаДатыЗапретаИзмененияРасширеннаяПодсказка 2006 @@ -1335,6 +1179,43 @@ true + + УдалениеПомеченныхПредставлениеРасписания + 2217 + + <key>ru</key> + <value>Удаление помеченных представление расписания</value> + + true + true + + true + + + УдалениеПомеченныхПредставлениеРасписанияРасширеннаяПодсказка + 2219 + Label + true + true + + Left + + + + УдалениеПомеченныхПредставлениеРасписанияКонтекстноеМеню + 2218 + true + + Label + true + true + + Style.ПоясняющийТекст + + + Left + + true true @@ -1413,50 +1294,11 @@ Auto - - УдалениеПомеченныхПредставлениеРасписания - 1775 - - <key>ru</key> - <value>Удаление помеченных представление расписания</value> - - true - true - - true - - - УдалениеПомеченныхПредставлениеРасписанияРасширеннаяПодсказка - 1777 - Label - true - true - - Left - - - - УдалениеПомеченныхПредставлениеРасписанияКонтекстноеМеню - 1776 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true true - 86 - false ГруппаУдалениеПомеченныхОбъектовПоРасписаниюРасширеннаяПодсказка 1767 @@ -1471,6 +1313,8 @@ Vertical Auto + true + Button NormalSeparation true true @@ -1487,20 +1331,10 @@ ru Регламентные операции - - System.DefaultGUIFont - 11.0 - true - false - false - false - ru Регламентные операции - 86 - false ГруппаРегламентныеОперацииExtendedTooltip 1642 @@ -1514,7 +1348,9 @@ UsualGroup Vertical - Auto + Collapsible + true + Button NormalSeparation true true @@ -1528,247 +1364,26 @@ ГруппаРезервноеКопированиеИВосстановление 1467 - Группа1 - 1620 - - Группа3 - 1471 - - ГруппаРезервноеКопированиеПрограммы - 1473 - - РезервноеКопированиеПрограммы - 1570 - - <key>ru</key> - <value>Создание резервной копии</value> - - true - true - - true - - - РезервноеКопированиеПрограммыExtendedTooltip - 1661 - Label - true - true - - Left - - - - РезервноеКопированиеПрограммыКонтекстноеМеню - 1571 - true - - Label - true - true - - - Click - РезервноеКопированиеПрограммыНажатие - - true - Left - - - - ПояснениеРезервноеКопированиеПрограммы - 1474 - - <key>ru</key> - <value>Запуск процедуры создания резервной копии.</value> - - true - true - - true - - - ПояснениеРезервноеКопированиеПрограммыExtendedTooltip - 1662 - Label - true - true - - Left - - - - ПояснениеРезервноеКопированиеПрограммыКонтекстноеМеню - 1475 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа резервное копирование программы</value> - - - ru - Группа резервное копирование программы - - 43 - false - - ГруппаРезервноеКопированиеПрограммыExtendedTooltip - 1660 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаВосстановлениеРезервнойКопии - 1476 - - ВосстановлениеИзРезервнойКопии - 1568 - - <key>ru</key> - <value>Восстановление из резервной копии</value> - - true - true - - true - - - ВосстановлениеИзРезервнойКопииExtendedTooltip - 1664 - Label - true - true - - Left - - - - ВосстановлениеИзРезервнойКопииКонтекстноеМеню - 1569 - true - - Label - true - true - - - Click - ВосстановлениеИзРезервнойКопииНажатие - - true - Left - - - - ПояснениеВосстановлениеРезервнойКопии - 1477 - - <key>ru</key> - <value>Запуск восстановления данных из файлов резервной копии.</value> - - true - true - - true - - - ПояснениеВосстановлениеРезервнойКопииExtendedTooltip - 1665 - Label - true - true - - Left - - - - ПояснениеВосстановлениеРезервнойКопииКонтекстноеМеню - 1478 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа восстановление резервной копии</value> - - - ru - Группа восстановление резервной копии - - 43 - false - - ГруппаВосстановлениеРезервнойКопииExtendedTooltip - 1663 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - + ГруппаВыборСпособаРезервногоКопирования + 2114 + + СпособРезервногоКопирования + 2116 true true true + + СпособРезервногоКопирования + + + OnChange + СпособРезервногоКопированияПриИзменении + - Группа3ExtendedTooltip - 1659 + СпособРезервногоКопированияРасширеннаяПодсказка + 2118 Label true true @@ -1776,139 +1391,57 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + СпособРезервногоКопированияКонтекстноеМеню + 2117 + true + + InputField + true + Enter + true + Left + true + + true + true + true + true + true + true + true + true + true + + + На локальном компьютере + + + + + 1С:Облачный архив + + + Normal - - ГруппаНастройкаРезервногоКопирования - 1479 - - НастройкаРезервногоКопирования - 1572 - - <key>ru</key> - <value>Настройка резервного копирования</value> - - true - true - - true - - - НастройкаРезервногоКопированияExtendedTooltip - 1667 - Label - true - true - - Left - - - - НастройкаРезервногоКопированияКонтекстноеМеню - 1573 - true - - Label - true - true - - - Click - НастройкаРезервногоКопированияНажатие - - true - Left - - - - ПояснениеНастройкаРезервногоКопирования - 1480 - - <key>ru</key> - <value>Настройка параметров резервного копирования.</value> - - true - true - - true - - - ПояснениеНастройкаРезервногоКопированияExtendedTooltip - 1668 - Label - true - true - - Left - - - - ПояснениеНастройкаРезервногоКопированияКонтекстноеМеню - 1481 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - - true - true - - true - - - <key>ru</key> - <value>Группа настройка резервного копирования</value> - - - ru - Группа настройка резервного копирования - - 43 - false - - ГруппаНастройкаРезервногоКопированияExtendedTooltip - 1666 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true true true + + <key>ru</key> + <value>Выбор способа резервного копирования</value> + + + ru + Выбор способа резервного копирования + + true + true - Группа1ExtendedTooltip - 1658 + ГруппаВыборСпособаРезервногоКопированияРасширеннаяПодсказка + 2115 Label true true @@ -1918,6 +1451,7 @@ UsualGroup + Vertical Auto true true @@ -1925,6 +1459,1386 @@ Auto + + СтраницыРезервноеКопированиеИВосстановление + 2119 + + СтраницаНаЛокальномКомпьютере + 2121 + + ГруппаНаЛокальномКомпьютере + 2123 + + ГруппаРезервногоКопирования + 1471 + + ОбработкаРезервноеКопированиеИБОткрыть + 2097 + + <key>ru</key> + <value>Создание резервной копии</value> + + true + true + + true + + + ОбработкаРезервноеКопированиеИБОткрытьРасширеннаяПодсказка + 2098 + + <key>ru</key> + <value>Запуск процедуры создания резервной копии.</value> + + Label + true + + Left + + + Hyperlink + DataProcessor.РезервноеКопированиеИБ.StandardCommand.Open + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + + ОбработкаРезервноеКопированиеИБВыполнитьВосстановлениеДанных + 2095 + + <key>ru</key> + <value>Восстановление из резервной копии</value> + + true + true + + true + + + ОбработкаРезервноеКопированиеИБВыполнитьВосстановлениеДанныхРасширеннаяПодсказка + 2096 + + <key>ru</key> + <value>Запуск восстановления данных из файлов резервной копии.</value> + + Label + true + + Left + + + Hyperlink + DataProcessor.РезервноеКопированиеИБ.Command.ВыполнитьВосстановлениеДанных + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + 43 + false + + ГруппаРезервногоКопированияРасширеннаяПодсказка + 1659 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаНастройкаРезервногоКопирования + 1479 + + НастройкаРезервногоКопированияИБ + 2099 + true + true + + true + + + НастройкаРезервногоКопированияИБРасширеннаяПодсказка + 2100 + + <key>ru</key> + <value>Настройка параметров резервного копирования.</value> + + Label + true + + Left + + + Hyperlink + DataProcessor.НастройкаРезервногоКопированияИБ.StandardCommand.Open + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + + <key>ru</key> + <value>Группа настройка резервного копирования</value> + + + ru + Группа настройка резервного копирования + + 43 + false + + ГруппаНастройкаРезервногоКопированияExtendedTooltip + 1666 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>На локальном компьютере</value> + + + ru + Группа на локальном компьютере + + + ГруппаНаЛокальномКомпьютереРасширеннаяПодсказка + 2124 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ГруппаНеобходимоОтключитьОблачныйАрхив + 2135 + + ИконкаНеобходимоОтключитьОблачныйАрхив + 2137 + true + true + + true + + + ИконкаНеобходимоОтключитьОблачныйАрхивРасширеннаяПодсказка + 2139 + Label + true + true + + Left + + + + ИконкаНеобходимоОтключитьОблачныйАрхивКонтекстноеМеню + 2138 + true + + 2 + true + 1 + true + + + CommonPicture.ИнформацияПоНедоступнымПолям + + + + + ПояснениеНеобходимоОтключитьОблачныйАрхив + 2140 + + <key>ru</key> + <value>Агенты резервного копирования 1С:Облачный архив остались активными на некоторых компьютерах. +Они могут продолжать делать резервные копии. Чтобы их отключить, воспользуйтесь <link backup1C:HowToDeactivateAgents>инструкцией</>.</value> + + true + true + + true + + + ПояснениеНеобходимоОтключитьОблачныйАрхивРасширеннаяПодсказка + 2142 + Label + true + true + + Left + + + + ПояснениеНеобходимоОтключитьОблачныйАрхивКонтекстноеМеню + 2141 + true + + true + Label + + Style.ПоясняющийТекст + + + + URLProcessing + ОблачныйАрхивОбработкаНавигационнойСсылки + + Left + + + true + + true + + + <key>ru</key> + <value>Группа необходимо отключить облачный архив</value> + + + ru + Группа необходимо отключить облачный архив + + 86 + false + + ГруппаНеобходимоОтключитьОблачныйАрхивРасширеннаяПодсказка + 2136 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>На локальном компьютере</value> + + + ru + На локальном компьютере + + + СтраницаНаЛокальномКомпьютереРасширеннаяПодсказка + 2122 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СтраницаОблачныйАрхив + 2143 + + СтраницыСостоянийОблачныйАрхив + 2145 + + СтраницаОблачныйАрхивОжидание + 2147 + + ДекорацияСтраницаОблачныйАрхивКартинка + 2149 + true + true + + true + + + ДекорацияСтраницаОблачныйАрхивКартинкаРасширеннаяПодсказка + 2151 + Label + true + true + + Left + + + + ДекорацияСтраницаОблачныйАрхивКартинкаКонтекстноеМеню + 2150 + true + + 5 + true + 3 + true + + + CommonPicture.ДлительнаяОперация48 + + + + + ГруппаПрогрессПроверкиОблачногоАрхива + 2152 + + ПрогрессПроверкиОблачногоАрхива + 2154 + true + true + + true + + + ПрогрессПроверкиОблачногоАрхива + + None + + ПрогрессПроверкиОблачногоАрхиваРасширеннаяПодсказка + 2156 + Label + true + true + + Left + + + + ПрогрессПроверкиОблачногоАрхиваКонтекстноеМеню + 2155 + true + + ProgressBarField + Enter + true + Left + true + + 40 + true + 1 + true + 100 + true + + + + ДекорацияПрогрессПроверкиОблачногоАрхиваОписание + 2157 + true + false + + true + + + ДекорацияПрогрессПроверкиОблачногоАрхиваОписаниеРасширеннаяПодсказка + 2159 + Label + true + true + + Left + + + + ДекорацияПрогрессПроверкиОблачногоАрхиваОписаниеКонтекстноеМеню + 2158 + true + + Label + 2 + true + + Left + Top + + + true + true + + true + + true + + ГруппаПрогрессПроверкиОблачногоАрхиваРасширеннаяПодсказка + 2153 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Страница облачный архив ожидание</value> + + + ru + Страница облачный архив ожидание + + true + + СтраницаОблачныйАрхивОжиданиеРасширеннаяПодсказка + 2148 + Label + true + true + + Left + + + Page + + auto + false + + + + СтраницаОблачныйАрхивНеПодключено + 2160 + + ГруппаСервисОАНеПодключен + 2162 + + ИконкаСервисОАНеПодключен + 2164 + true + true + + true + + + ИконкаСервисОАНеПодключенРасширеннаяПодсказка + 2166 + Label + true + true + + Left + + + + ИконкаСервисОАНеПодключенКонтекстноеМеню + 2165 + true + + true + true + 4 + false + false + + + CommonPicture.ИнформацияПоНедоступнымПолям + + + + + ДекорацияСервисОАНеПодключен + 2167 + + <key>ru</key> + <value>Для работы с 1С:Облачный архив, его необходимо подключить.</value> + + true + true + + true + + + ДекорацияСервисОАНеПодключенРасширеннаяПодсказка + 2169 + Label + true + true + + Left + + + + ДекорацияСервисОАНеПодключенКонтекстноеМеню + 2168 + true + + true + Label + + Left + + + true + true + + true + + + <key>ru</key> + <value>Группа сервис ОАНе подключен</value> + + + ru + Группа сервис ОАНе подключен + + + ГруппаСервисОАНеПодключенРасширеннаяПодсказка + 2163 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ПодключитьСервисОблачныйАрхив + 2170 + true + true + + true + + + ПодключитьСервисОблачныйАрхивРасширеннаяПодсказка + 2171 + Label + true + true + + Left + + + UsualButton + Form.Command.ПодключитьСервисОблачныйАрхив + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Страница облачный архив Не подключено</value> + + + ru + Страница облачный архив Не подключено + + true + + СтраницаОблачныйАрхивНеПодключеноРасширеннаяПодсказка + 2161 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СтраницаОблачныйАрхивПодключеноНаДругомКомпьютере + 2172 + + ИконкаСервисОАПодключенНаДругомКомпьютере + 2174 + true + true + + true + + + ИконкаСервисОАПодключенНаДругомКомпьютереРасширеннаяПодсказка + 2176 + Label + true + true + + Left + + + + ИконкаСервисОАПодключенНаДругомКомпьютереКонтекстноеМеню + 2175 + true + + 2 + 4 + false + true + + + CommonPicture.ИнформацияПоНедоступнымПолям + + + + + ДекорацияСервисОАПодключенНаДругомКомпьютере + 2177 + + <key>ru</key> + <value>Для резервного копирования и восстановления выбран 1С:Облачный архив. +Настраивать, создавать и восстанавливать копии из 1С:Облачный архив можно только на компьютере, где установлен и активирован Агент резервного копирования и подключен сервис 1С:Облачный архив. + +<link backup1C:InstallAgentOnThisPC>Подключить</> сервис 1С:Облачный архив на этом компьютере.</value> + + true + true + + true + + + ДекорацияСервисОАПодключенНаДругомКомпьютереРасширеннаяПодсказка + 2179 + Label + true + true + + Left + + + + ДекорацияСервисОАПодключенНаДругомКомпьютереКонтекстноеМеню + 2178 + true + + true + Label + 65 + true + + + URLProcessing + ОблачныйАрхивОбработкаНавигационнойСсылки + + Left + + + true + true + + true + + + <key>ru</key> + <value>Страница облачный архив Подключено на другом компьютере</value> + + + ru + Страница облачный архив Подключено на другом компьютере + + true + + СтраницаОблачныйАрхивПодключеноНаДругомКомпьютереРасширеннаяПодсказка + 2173 + Label + true + true + + Left + + + Page + + auto + false + + + + СтраницаОблачныйАрхивРаботает + 2180 + + ГруппаОблачныйАрхивСохранениеВосстановление + 2182 + + ГруппаОблачныйАрхивРезервноеКопированиеПрограммы + 2184 + + ОблачныйАрхивРезервноеКопированиеПрограммы + 2186 + + <key>ru</key> + <value>Создание резервной копии</value> + + true + true + + true + + + ОблачныйАрхивРезервноеКопированиеПрограммыРасширеннаяПодсказка + 2187 + Label + true + true + + Left + + + Hyperlink + DataProcessor.РезервноеКопированиеИБ.StandardCommand.Open + Normal + Auto + true + true + UserCmds + Auto + + + ОблачныйАрхивПояснениеРезервноеКопированиеПрограммы + 2188 + + <key>ru</key> + <value>Запуск процедуры создания резервной копии.</value> + + true + true + + true + + + ОблачныйАрхивПояснениеРезервноеКопированиеПрограммыРасширеннаяПодсказка + 2190 + Label + true + true + + Left + + + + ОблачныйАрхивПояснениеРезервноеКопированиеПрограммыКонтекстноеМеню + 2189 + true + + Label + true + true + + Style.ПоясняющийТекст + + + Left + + + true + true + + true + + + <key>ru</key> + <value>Группа резервное копирование программы</value> + + + ru + Группа резервное копирование программы + + 43 + false + + ГруппаОблачныйАрхивРезервноеКопированиеПрограммыРасширеннаяПодсказка + 2185 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаОблачныйАрхивВосстановлениеРезервнойКопии + 2191 + + ОблачныйАрхивВосстановлениеИзРезервнойКопии + 2193 + + <key>ru</key> + <value>Получение и удаление резервных копий</value> + + true + true + + true + + + ОблачныйАрхивВосстановлениеИзРезервнойКопииРасширеннаяПодсказка + 2195 + Label + true + true + + Left + + + + ОблачныйАрхивВосстановлениеИзРезервнойКопииКонтекстноеМеню + 2194 + true + + Label + true + true + + + Click + ОблачныйАрхивВосстановлениеИзРезервнойКопииНажатие + + true + Left + + + + ОблачныйАрхивПояснениеВосстановлениеРезервнойКопии + 2196 + + <key>ru</key> + <value>Просмотр списка резервных копий, получение и удаление резервных копий.</value> + + true + true + + true + + + ОблачныйАрхивПояснениеВосстановлениеРезервнойКопииРасширеннаяПодсказка + 2198 + Label + true + true + + Left + + + + ОблачныйАрхивПояснениеВосстановлениеРезервнойКопииКонтекстноеМеню + 2197 + true + + Label + true + true + + Style.ПоясняющийТекст + + + Left + + + true + true + + true + + + <key>ru</key> + <value>Группа восстановление резервной копии</value> + + + ru + Группа восстановление резервной копии + + 43 + false + + ГруппаОблачныйАрхивВосстановлениеРезервнойКопииРасширеннаяПодсказка + 2192 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + ГруппаОблачныйАрхивСохранениеВосстановлениеРасширеннаяПодсказка + 2183 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаОблачныйАрхивНастройкаРезервногоКопирования + 2199 + + ОблачныйАрхивНастройкаРезервногоКопирования + 2201 + + <key>ru</key> + <value>Настройка резервного копирования</value> + + true + true + + true + + + ОблачныйАрхивНастройкаРезервногоКопированияРасширеннаяПодсказка + 2203 + Label + true + true + + Left + + + + ОблачныйАрхивНастройкаРезервногоКопированияКонтекстноеМеню + 2202 + true + + Label + true + true + + + Click + ОблачныйАрхивНастройкаРезервногоКопированияНажатие + + true + Left + + + + ОблачныйАрхивПояснениеНастройкаРезервногоКопирования + 2204 + + <key>ru</key> + <value>Настройка параметров резервного копирования.</value> + + true + true + + true + + + ОблачныйАрхивПояснениеНастройкаРезервногоКопированияРасширеннаяПодсказка + 2206 + Label + true + true + + Left + + + + ОблачныйАрхивПояснениеНастройкаРезервногоКопированияКонтекстноеМеню + 2205 + true + + Label + true + true + + Style.ПоясняющийТекст + + + Left + Top + + + true + true + + true + + + <key>ru</key> + <value>Группа настройка резервного копирования</value> + + + ru + Группа настройка резервного копирования + + 43 + false + + ГруппаОблачныйАрхивНастройкаРезервногоКопированияРасширеннаяПодсказка + 2200 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Страница облачный архив Работает</value> + + + ru + Страница облачный архив Работает + + true + + СтраницаОблачныйАрхивРаботаетРасширеннаяПодсказка + 2181 + Label + true + true + + Left + + + Page + + auto + false + + + + СтраницаОблачныйАрхивОшибки + 2207 + + ИконкаОблачныйАрхивОшибки + 2209 + true + true + + true + + + ИконкаОблачныйАрхивОшибкиРасширеннаяПодсказка + 2211 + Label + true + true + + Left + + + + ИконкаОблачныйАрхивОшибкиКонтекстноеМеню + 2210 + true + + 2 + false + false + + + CommonPicture.ИнформацияПоНедоступнымПолям + + + + + ДекорацияОблачныйАрхивОшибки + 2212 + + <key>ru</key> + <value>Произошли ошибки при подключении к подсистеме Облачный архив.</value> + + true + true + + true + + + ДекорацияОблачныйАрхивОшибкиРасширеннаяПодсказка + 2214 + Label + true + true + + Left + + + + ДекорацияОблачныйАрхивОшибкиКонтекстноеМеню + 2213 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + Top + + + true + true + + true + + + <key>ru</key> + <value>Страница облачный архив Ошибки</value> + + + ru + Страница облачный архив Ошибки + + true + + СтраницаОблачныйАрхивОшибкиРасширеннаяПодсказка + 2208 + Label + true + true + + Left + + + Page + + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Страницы состояний облачный архив</value> + + + ru + Страницы состояний облачный архив + + true + + СтраницыСостоянийОблачныйАрхивРасширеннаяПодсказка + 2146 + Label + true + true + + Left + + + Pages + + Auto + + + true + true + + true + + + <key>ru</key> + <value>Облачный архив</value> + + + ru + Облачный архив + + + СтраницаОблачныйАрхивРасширеннаяПодсказка + 2144 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Резервное копирование и восстановление</value> + + + ru + Резервное копирование и восстановление + + + СтраницыРезервноеКопированиеИВосстановлениеРасширеннаяПодсказка + 2120 + Label + true + true + + Left + + + Pages + + Auto + + true true @@ -1934,20 +2848,10 @@ ru Резервное копирование и восстановление - - System.DefaultGUIFont - 11.0 - true - false - false - false - ru Резервное копирование и восстановление - 86 - false ГруппаРезервноеКопированиеИВосстановлениеExtendedTooltip 1657 @@ -1961,7 +2865,9 @@ UsualGroup Vertical - Auto + Collapsible + true + Button NormalSeparation true true @@ -1982,7 +2888,7 @@ 1805 <key>ru</key> - <value>Версионирование объектов</value> + <value>Хранить историю изменений</value> true true @@ -1993,7 +2899,7 @@ НаборКонстант.ИспользоватьВерсионированиеОбъектов Right - None + ShowBottom OnChange ИспользоватьВерсионированиеОбъектовПриИзменении @@ -2001,8 +2907,11 @@ ИспользоватьВерсионированиеОбъектовExtendedTooltip 1807 + + <key>ru</key> + <value>Хранение и просмотр версий документов и справочников программы.</value> + Label - true true Left @@ -2020,56 +2929,13 @@ true - - ПояснениеИспользоватьВерсионирование - 1808 - - <key>ru</key> - <value>Хранение и просмотр версий документов и справочников программы.</value> - - true - true - - true - - - ПояснениеИспользоватьВерсионированиеExtendedTooltip - 1810 - Label - true - true - - Left - - - - ПояснениеИспользоватьВерсионированиеКонтекстноеМеню - 1809 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true true - - <key>ru</key> - <value>Группа использовать версионирование объектов</value> - - - ru - Группа использовать версионирование объектов - + 43 + false ГруппаИспользоватьВерсионированиеОбъектовExtendedTooltip 1804 @@ -2095,7 +2961,7 @@ 1811 РегистрСведенийНастройкиВерсионированияОбъектов - 1813 + 2091 <key>ru</key> <value>Настройки хранения</value> @@ -2106,62 +2972,28 @@ <common>true</common> </userVisible> <extendedTooltip> - <name>РегистрСведенийНастройкиВерсионированияОбъектовExtendedTooltip</name> - <id>1814</id> + <name>РегистрСведенийНастройкиВерсионированияОбъектовРасширеннаяПодсказка</name> + <id>2092</id> + <title> + <key>ru</key> + <value>Настройка хранения и очистка версий документов и справочников.</value> + Label - true true Left Hyperlink - Form.Command.РегистрСведенийНастройкиВерсионированияОбъектов + InformationRegister.НастройкиВерсионированияОбъектов.StandardCommand.OpenList Normal Auto true true UserCmds - None + ShowBottom Auto - - ПояснениеРегистрСведенийНастройкиВерсионированияОбъектов - 1815 - - <key>ru</key> - <value>Настройка хранения и очистка версий документов и справочников.</value> - - true - true - - true - - - ПояснениеРегистрСведенийНастройкиВерсионированияОбъектовExtendedTooltip - 1817 - Label - true - true - - Left - - - - ПояснениеРегистрСведенийНастройкиВерсионированияОбъектовКонтекстноеМеню - 1816 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -2175,6 +3007,8 @@ ru Группа регистр сведений настройки версионирования объектов + 43 + false ГруппаРегистрСведенийНастройкиВерсионированияОбъектовExtendedTooltip 1812 @@ -2202,22 +3036,8 @@ <key>ru</key> - <value>Версионирование объектов</value> + <value>История изменений</value> - - System.DefaultGUIFont - 11.0 - true - false - false - false - - - ru - Версионирование объектов - - 86 - false ГруппаВерсионированиеРасширеннаяПодсказка 1802 @@ -2230,7 +3050,9 @@ UsualGroup - Auto + Collapsible + true + Button NormalSeparation true true @@ -2262,6 +3084,7 @@ НаборКонстант.ВыполнятьЗамерыПроизводительности Right + ShowBottom OnChange ВыполнятьЗамерыПроизводительностиПриИзменении @@ -2269,8 +3092,11 @@ ВыполнятьЗамерыПроизводительностиExtendedTooltip 1674 + + <key>ru</key> + <value>Оценка интегральной производительности программы по методике APDEX.</value> + Label - true true Left @@ -2288,43 +3114,6 @@ true - - ПояснениеВыполнятьЗамерыПроизводительности - 1592 - - <key>ru</key> - <value>Оценка интегральной производительности программы по методике APDEX.</value> - - true - true - - true - - - ПояснениеВыполнятьЗамерыПроизводительностиExtendedTooltip - 1675 - Label - true - true - - Left - - - - ПояснениеВыполнятьЗамерыПроизводительностиКонтекстноеМеню - 1593 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -2338,6 +3127,8 @@ ru Группа выполнять замеры производительности + 43 + false ГруппаВыполнятьЗамерыПроизводительностиExtendedTooltip 1673 @@ -2376,6 +3167,10 @@ ОбработкаОценкаПроизводительностиExtendedTooltip 1677 + + <key>ru</key> + <value>Просмотр и оценка результатов замеров производительности.</value> + Label true true @@ -2390,45 +3185,9 @@ true true UserCmds + ShowBottom Auto - - ПояснениеОбработкаОценкаПроизводительности - 1596 - - <key>ru</key> - <value>Просмотр и оценка результатов замеров производительности.</value> - - true - true - - true - - - ПояснениеОбработкаОценкаПроизводительностиExtendedTooltip - 1678 - Label - true - true - - Left - - - - ПояснениеОбработкаОценкаПроизводительностиКонтекстноеМеню - 1597 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - ОбработкаНастройкиОценкиПроизводительности 1946 @@ -2440,6 +3199,10 @@ ОбработкаНастройкиОценкиПроизводительностиРасширеннаяПодсказка 1947 + + <key>ru</key> + <value>Настройки параметров оценки производительности.</value> + Label true true @@ -2454,23 +3217,24 @@ true true UserCmds + ShowBottom Auto - - ПояснениеОбработкаНастройкиОценкиПроизводительности - 1948 - - <key>ru</key> - <value>Настройки параметров оценки производительности.</value> - + + ОбработкаОценкаПроизводительностиЭкспортДанных + 2215 true true true - ПояснениеОбработкаНастройкиОценкиПроизводительностиРасширеннаяПодсказка - 1950 + ОбработкаОценкаПроизводительностиЭкспортДанныхРасширеннаяПодсказка + 2216 + + <key>ru</key> + <value>Экспорт замеров производительности за произвольный период</value> + Label true true @@ -2478,20 +3242,15 @@ Left - - ПояснениеОбработкаНастройкиОценкиПроизводительностиКонтекстноеМеню - 1949 - true - - Label + Hyperlink + DataProcessor.ОценкаПроизводительности.Command.ЭкспортЗамеровПроизводительности + Normal + Auto true true - - Style.ПоясняющийТекст - - - Left - + UserCmds + ShowBottom + Auto true true @@ -2506,6 +3265,8 @@ ru Группа обработка оценка производительности + 43 + false ГруппаОбработкаОценкаПроизводительностиExtendedTooltip 1676 @@ -2535,20 +3296,10 @@ ru Оценка производительности - - System.DefaultGUIFont - 11.0 - true - false - false - false - ru Группа оценка производительности - 86 - false ГруппаОценкаПроизводительностиExtendedTooltip 1672 @@ -2561,7 +3312,9 @@ UsualGroup - Auto + Collapsible + true + Button NormalSeparation true true @@ -2572,36 +3325,142 @@ - ГруппаАдресныйКлассификаторНастройки - 1861 + ГруппаАдресныйКлассификатор + 2101 - ГруппаАдресныйКлассификаторЛеваяКолонка - 1863 + ГруппаАдресныйКлассификаторНастройки + 1861 - ГруппаИсточникДанных - 1865 + ГруппаАдресныйКлассификаторЛеваяКолонка + 1863 - ГруппаИсточникДанныхВарианты - 1867 - - ИсточникДанныхФИАССервис1С - 1869 + ГруппаИсточникДанных + 1865 + + ГруппаИсточникДанныхВарианты + 1867 + + ИсточникДанныхФИАССервис1С + 1869 + true + true + + true + + + НаборКонстант.ИсточникДанныхАдресногоКлассификатора + + None + ShowBottom + + OnChange + АдресныйКлассификаторПриИзменении + + + ИсточникДанныхФИАССервис1СРасширеннаяПодсказка + 1871 + + <key>ru</key> + <value>Использовать веб-сервис, предоставляемый фирмой 1С. Требуется постоянное подключение к Интернету.</value> + + Label + true + + Left + + + + ИсточникДанныхФИАССервис1СКонтекстноеМеню + 1870 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Использовать веб-сервис 1С для ввода и проверки адресов + + + Сервис1С + + + Vertical + + + + ИсточникДанныхФИАСЛокально + 1875 + true + true + + true + + + НаборКонстант.ИсточникДанныхАдресногоКлассификатора + + None + ShowBottom + + OnChange + АдресныйКлассификаторПриИзменении + + + ИсточникДанныхФИАСЛокальноРасширеннаяПодсказка + 1877 + + <key>ru</key> + <value>Использовать данные, загружаемые с сайта 1С или из папки на диске. Возможна работа без подключения к Интернету.</value> + + Label + true + + Left + + + + ИсточникДанныхФИАСЛокальноКонтекстноеМеню + 1876 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Загружать классификатор в программу + + + + Vertical + + true true true - - НаборКонстант.ИсточникДанныхАдресногоКлассификатора - - None - - OnChange - АдресныйКлассификаторПриИзменении - + + <key>ru</key> + <value>Группа источник данных варианты</value> + + + ru + Группа источник данных варианты + - ИсточникДанныхФИАССервис1СРасширеннаяПодсказка - 1871 + ГруппаИсточникДанныхВариантыРасширеннаяПодсказка + 1868 Label true true @@ -2609,36 +3468,199 @@ Left - - ИсточникДанныхФИАССервис1СКонтекстноеМеню - 1870 - true - - RadioButtonField - Enter - true - Left - true - - 1 - - - ru - Использовать веб-сервис 1С для ввода и проверки адресов - - - Сервис1С - - - Vertical + UsualGroup + + Vertical + Auto + true + true + Auto + Auto - - ПояснениеАдресныйКлассификаторВебСервис - 1872 + true + true + + true + + + Style.FormTextColor + + + Style.NormalTextFont + + + ru + Группа источник данных + + + ГруппаИсточникДанныхРасширеннаяПодсказка + 1866 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + ru + Группа адресный классификатор левая колонка + + 43 + false + + ГруппаАдресныйКлассификаторЛеваяКолонкаРасширеннаяПодсказка + 1864 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаАдресныйКлассификаторПраваяКолонка + 1881 + + РегистрСведенийАдресныеОбъектыАвторизацияНаСайтеПоддержкиПользователей + 1906 + true + true + + true + + + РегистрСведенийАдресныеОбъектыАвторизацияНаСайтеПоддержкиПользователейРасширеннаяПодсказка + 1907 <key>ru</key> - <value>Использовать веб-сервис, предоставляемый фирмой 1С. Требуется постоянное подключение к Интернету.</value> + <value>Для использования веб-сервиса 1С и загрузки обновлений адресного классификатора необходимо выполнить подключение к интернет-поддержке пользователей. +</value> + + Label + true + + Left + + + Hyperlink + InformationRegister.АдресныеОбъекты.Command.ПодключитьИнтернетПоддержку + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + + <key>ru</key> + <value>Группа адресный классификатор правая колонка</value> + + + ru + Группа адресный классификатор правая колонка + + 43 + false + + ГруппаАдресныйКлассификаторПраваяКолонкаРасширеннаяПодсказка + 1882 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + System.DefaultGUIFont + 11.0 + true + false + false + false + + + ГруппаАдресныйКлассификаторНастройкиРасширеннаяПодсказка + 1862 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + + + ГруппаАдресныйКлассификаторКоманды + 1583 + + ГруппаКомандАдресныйКлассификатор + 1830 + + АдресныйКлассификаторЛеваяКолонка + 1842 + + РегистрСведенийАдресныеОбъектыЗагрузитьАдресныйКлассификатор + 1826 + + <key>ru</key> + <value>Загрузить классификатор</value> true true @@ -2646,116 +3668,27 @@ true - ПояснениеАдресныйКлассификаторВебСервисРасширеннаяПодсказка - 1874 + РегистрСведенийАдресныеОбъектыЗагрузитьАдресныйКлассификаторРасширеннаяПодсказка + 1827 + + <key>ru</key> + <value>Загрузка и проверка обновления адресного классификатора с сайта 1С или из папки на диске.</value> + Label - true true Left - - ПояснениеАдресныйКлассификаторВебСервисКонтекстноеМеню - 1873 - true - - Label + Hyperlink + InformationRegister.АдресныеОбъекты.Command.ЗагрузитьАдресныйКлассификатор + Normal + Auto true true - - Style.ПоясняющийТекст - - - Left - Top - - - - ИсточникДанныхФИАСЛокально - 1875 - true - true - - true - - - НаборКонстант.ИсточникДанныхАдресногоКлассификатора - - None - - OnChange - АдресныйКлассификаторПриИзменении - - - ИсточникДанныхФИАСЛокальноРасширеннаяПодсказка - 1877 - Label - true - true - - Left - - - - ИсточникДанныхФИАСЛокальноКонтекстноеМеню - 1876 - true - - RadioButtonField - Enter - true - Left - true - - 1 - - - ru - Загружать классификатор в программу - - - - Vertical - - - - ПояснениеЗагружатьАдресныйКлассификатор - 1878 - - <key>ru</key> - <value>Использовать данные, загружаемые с сайта 1С или из папки на диске. Возможна работа без подключения к Интернету.</value> - - true - true - - true - - - ПояснениеЗагружатьАдресныйКлассификаторРасширеннаяПодсказка - 1880 - Label - true - true - - Left - - - - ПояснениеЗагружатьАдресныйКлассификаторКонтекстноеМеню - 1879 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - + UserCmds + ShowBottom + Auto true true @@ -2764,15 +3697,90 @@ <key>ru</key> - <value>Группа источник данных варианты</value> + <value>Адресный классификатор левая колонка</value> ru - Группа источник данных варианты + Адресный классификатор левая колонка + 43 + false - ГруппаИсточникДанныхВариантыРасширеннаяПодсказка - 1868 + АдресныйКлассификаторЛеваяКолонкаРасширеннаяПодсказка + 1843 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + АдресныйКлассификаторПраваяКолонка + 1844 + + РегистрСведенийАдресныеОбъектыОчиститьАдресныйКлассификатор + 1828 + + <key>ru</key> + <value>Очистить адресные сведения</value> + + true + true + + true + + + РегистрСведенийАдресныеОбъектыОчиститьАдресныйКлассификаторРасширеннаяПодсказка + 1829 + + <key>ru</key> + <value>Удаление загруженных адресных сведений по выбранным, неиспользуемым регионам для уменьшения размера базы.</value> + + Label + true + + Left + + + Hyperlink + InformationRegister.АдресныеОбъекты.Command.ОчиститьАдресныйКлассификатор + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + + <key>ru</key> + <value>Адресный классификатор правая колонка</value> + + + ru + Адресный классификатор правая колонка + + 43 + false + + АдресныйКлассификаторПраваяКолонкаРасширеннаяПодсказка + 1845 Label true true @@ -2795,20 +3803,17 @@ true - - Style.FormTextColor - - - Style.NormalTextFont - + + <key>ru</key> + <value>Группа команд адресный классификатор</value> + ru - Группа источник данных + Группа команд адресный классификатор - 43 - ГруппаИсточникДанныхРасширеннаяПодсказка - 1866 + ГруппаКомандАдресныйКлассификаторРасширеннаяПодсказка + 1831 Label true true @@ -2830,114 +3835,22 @@ true - - ru - Группа адресный классификатор левая колонка - - - ГруппаАдресныйКлассификаторЛеваяКолонкаРасширеннаяПодсказка - 1864 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаАдресныйКлассификаторПраваяКолонка - 1881 - - РегистрСведенийАдресныеОбъектыАвторизацияНаСайтеПоддержкиПользователей - 1906 - true - true - - true - - - РегистрСведенийАдресныеОбъектыАвторизацияНаСайтеПоддержкиПользователейРасширеннаяПодсказка - 1907 - Label - true - true - - Left - - - Hyperlink - InformationRegister.АдресныеОбъекты.Command.АвторизацияНаСайтеПоддержки - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеАвторизацияНаСайте - 1898 - - <key>ru</key> - <value><colorstyle 0:ad87bd29-0ad1-4da4-ac62-38e714e0cb9f>Для использования веб-сервиса 1С и загрузки обновлений адресного классификатора </><colorstyle 0:ad87bd29-0ad1-4da4-ac62-38e714e0cb9f>необходимо указать логин и пароль, полученный при регистрации </><colorstyle 0:ad87bd29-0ad1-4da4-ac62-38e714e0cb9f>на сайте поддержки пользователей 1С.</></value> - - true - true - - true - - - ПояснениеАвторизацияНаСайтеРасширеннаяПодсказка - 1900 - Label - true - true - - Left - - - - ПояснениеАвторизацияНаСайтеКонтекстноеМеню - 1899 - true - - true - Label - true - 4 - true - - Left - Top - - - true - true - - true - <key>ru</key> - <value>Группа адресный классификатор правая колонка</value> + <value>Адресный классификатор</value> - - ru - Группа адресный классификатор правая колонка - - 43 + + System.DefaultGUIFont + MS Shell Dlg + 11.0 + true + false + false + false + - ГруппаАдресныйКлассификаторПраваяКолонкаРасширеннаяПодсказка - 1882 + ГруппаАдресныйКлассификаторКомандыРасширеннаяПодсказка + 1684 Label true true @@ -2947,8 +3860,8 @@ UsualGroup - Vertical Auto + NormalSeparation true true Auto @@ -2964,22 +3877,9 @@ ru Адресный классификатор - - System.DefaultGUIFont - 11.0 - true - false - false - false - - - ru - Группа адресный классификатор настройки - - false - ГруппаАдресныйКлассификаторНастройкиРасширеннаяПодсказка - 1862 + ГруппаАдресныйКлассификаторРасширеннаяПодсказка + 2102 Label true true @@ -2989,7 +3889,10 @@ UsualGroup - Auto + Vertical + Collapsible + true + Button NormalSeparation true true @@ -2999,223 +3902,42 @@ - ГруппаАдресныйКлассификаторКоманды - 1583 + ГруппаКлассификаторы + 1556 - ГруппаКомандАдресныйКлассификатор - 1830 - - АдресныйКлассификаторЛеваяКолонка - 1842 - - РегистрСведенийАдресныеОбъектыЗагрузитьАдресныйКлассификатор - 1826 - - <key>ru</key> - <value>Загрузить классификатор</value> - - true - true - - true - - - РегистрСведенийАдресныеОбъектыЗагрузитьАдресныйКлассификаторРасширеннаяПодсказка - 1827 - Label - true - true - - Left - - - Hyperlink - InformationRegister.АдресныеОбъекты.Command.ЗагрузитьАдресныйКлассификатор - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеАдресныйКлассификаторЗагрузка - 1858 - - <key>ru</key> - <value>Загрузка и проверка обновления адресного классификатора с сайта 1С или из папки на диске.</value> - - true - true - - true - - - ПояснениеАдресныйКлассификаторЗагрузкаРасширеннаяПодсказка - 1860 - Label - true - true - - Left - - - - ПояснениеАдресныйКлассификаторЗагрузкаКонтекстноеМеню - 1859 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - + ГруппаЗагрузитьКлассификаторБанков + 1579 + + СправочникКлассификаторБанковРФЗагрузкаКлассификатораБанковРФ + 2085 true true true - - <key>ru</key> - <value>Адресный классификатор левая колонка</value> - - - ru - Адресный классификатор левая колонка - - 43 - false - АдресныйКлассификаторЛеваяКолонкаРасширеннаяПодсказка - 1843 + СправочникКлассификаторБанковРФЗагрузкаКлассификатораБанковРФРасширеннаяПодсказка + 2086 + + <key>ru</key> + <value>Загрузка классификатора банков РФ с диска 1С:ИТС +или сайта 1С.</value> + Label - true true Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - АдресныйКлассификаторПраваяКолонка - 1844 - - РегистрСведенийАдресныеОбъектыОчиститьАдресныйКлассификатор - 1828 - - <key>ru</key> - <value>Очистить адресные сведения</value> - - true - true - - true - - - РегистрСведенийАдресныеОбъектыОчиститьАдресныйКлассификаторРасширеннаяПодсказка - 1829 - Label - true - true - - Left - - - Hyperlink - InformationRegister.АдресныеОбъекты.Command.ОчиститьАдресныйКлассификатор - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеАдресныйКлассификаторОчистка - 1852 - - <key>ru</key> - <value>Удаление загруженных адресных сведений по выбранным, неиспользуемым регионам для уменьшения размера базы.</value> - - true - true - - true - - - ПояснениеАдресныйКлассификаторОчисткаРасширеннаяПодсказка - 1854 - Label - true - true - - Left - - - - ПояснениеАдресныйКлассификаторОчисткаКонтекстноеМеню - 1853 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - Top - - - true - true - - true - - - <key>ru</key> - <value>Адресный классификатор правая колонка</value> - - - ru - Адресный классификатор правая колонка - - 43 - - АдресныйКлассификаторПраваяКолонкаРасширеннаяПодсказка - 1845 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + Hyperlink + Catalog.КлассификаторБанковРФ.Command.ЗагрузкаКлассификатораБанковРФ + Normal + Auto + true + true + UserCmds + ShowBottom + Auto true true @@ -3224,15 +3946,17 @@ <key>ru</key> - <value>Группа команд адресный классификатор</value> + <value>Группа загрузить классификатор банков</value> ru - Группа команд адресный классификатор + Группа загрузить классификатор банков + 43 + false - ГруппаКомандАдресныйКлассификаторРасширеннаяПодсказка - 1831 + ГруппаЗагрузитьКлассификаторБанковExtendedTooltip + 1681 Label true true @@ -3242,6 +3966,7 @@ UsualGroup + Vertical Auto true true @@ -3249,263 +3974,50 @@ Auto - true - true - - true - - - <key>ru</key> - <value>Адресный классификатор</value> - - - System.DefaultGUIFont - MS Shell Dlg - 11.0 - true - false - false - false - - - ГруппаАдресныйКлассификаторКомандыРасширеннаяПодсказка - 1684 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - - - ГруппаКлассификаторы - 1556 - ГруппаБанкиВалюты - 1840 - - ГруппаЗагрузитьКлассификаторБанков - 1579 - - ЗагрузитьКлассификаторБанков - 1625 - true - true - - true - - - ЗагрузитьКлассификаторБанковExtendedTooltip - 1682 - Label - true - true - - Left - - - Hyperlink - Form.Command.ЗагрузитьКлассификаторБанков - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеЗагрузитьКлассификаторБанков - 1559 - - <key>ru</key> - <value>Загрузка классификатора банков РФ с диска 1С:ИТС -или сайта РБК.</value> - - true - true - - true - - - ПояснениеЗагрузитьКлассификаторБанковExtendedTooltip - 1683 - Label - true - true - - Left - - - - ПояснениеЗагрузитьКлассификаторБанковКонтекстноеМеню - 1560 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - + ГруппаОбработкаЗагрузкаКурсовВалют + 1564 + + ОбработкаЗагрузкаКурсовВалютОткрыть + 2089 true true true - - <key>ru</key> - <value>Группа загрузить классификатор банков</value> - - - ru - Группа загрузить классификатор банков - - 43 - false - ГруппаЗагрузитьКлассификаторБанковExtendedTooltip - 1681 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаОбработкаЗагрузкаКурсовВалют - 1564 - - ОбработкаЗагрузкаКурсовВалют - 1624 - true - true - - true - - - ОбработкаЗагрузкаКурсовВалютExtendedTooltip - 1688 - Label - true - true - - Left - - - Hyperlink - Form.Command.ОбработкаЗагрузкаКурсовВалют - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеОбработкаЗагрузкаКурсовВалют - 1566 + ОбработкаЗагрузкаКурсовВалютОткрытьРасширеннаяПодсказка + 2090 <key>ru</key> - <value>Загрузка курсов выбранных валют за указанный период с сайта РБК. </value> + <value>Загрузка курсов выбранных валют за указанный период с сайта 1С.</value> - true - true - - true - - - ПояснениеОбработкаЗагрузкаКурсовВалютExtendedTooltip - 1689 - Label - true - true - - Left - - - - ПояснениеОбработкаЗагрузкаКурсовВалютКонтекстноеМеню - 1567 - true - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - 43 - false - - ГруппаОбработкаЗагрузкаКурсовВалютExtendedTooltip - 1687 - Label - true true Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + Hyperlink + DataProcessor.ЗагрузкаКурсовВалют.StandardCommand.Open + Normal + Auto + true + true + UserCmds + ShowBottom + Auto true true true - - <key>ru</key> - <value>Группа банки валюты</value> - - - ru - Группа банки валюты - + 43 + false - ГруппаБанкиВалютыРасширеннаяПодсказка - 1841 + ГруппаОбработкаЗагрузкаКурсовВалютExtendedTooltip + 1687 Label true true @@ -3515,6 +4027,7 @@ UsualGroup + Vertical Auto true true @@ -3531,20 +4044,10 @@ ru Другие классификаторы - - System.DefaultGUIFont - 11.0 - true - false - false - false - ru Классификаторы - 86 - false ГруппаКлассификаторыExtendedTooltip 1679 @@ -3557,8 +4060,9 @@ UsualGroup - Vertical - Auto + Collapsible + true + Button NormalSeparation true true @@ -3585,8 +4089,11 @@ ОткрытьНастройкиРегистрацииСобытийДоступаКПерсональнымДаннымExtendedTooltip 1692 + + <key>ru</key> + <value>Регистрация событий доступа в соответствии с требованиями Федерального закона от 27.07.2006 N152-ФЗ "О персональных данных".</value> + Label - true true Left @@ -3599,50 +4106,16 @@ true true UserCmds + ShowBottom Auto - - ПояснениеОткрытьНастройкиРегистрацииСобытийДоступаКПерсональнымДанным - 1602 - - <key>ru</key> - <value>Регистрация событий доступа в соответствии с требованиями Федерального закона от 27.07.2006 N152-ФЗ "О персональных данных"</value> - - true - true - - true - - - ПояснениеОткрытьНастройкиРегистрацииСобытийДоступаКПерсональнымДаннымExtendedTooltip - 1693 - Label - true - true - - Left - - - - ПояснениеОткрытьНастройкиРегистрацииСобытийДоступаКПерсональнымДаннымКонтекстноеМеню - 1603 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true true + 43 + false ГруппаОткрытьНастройкиРегистрацииСобытийДоступаКПерсональнымДаннымExtendedTooltip 1691 @@ -3677,8 +4150,11 @@ ОбработкаЗащитаПерсональныхДанныхExtendedTooltip 1695 + + <key>ru</key> + <value>Просмотр обращений к персональным данным выбранных объектов программы.</value> + Label - true true Left @@ -3691,45 +4167,9 @@ true true UserCmds + ShowBottom Auto - - ПояснениеОбработкаЗащитаПерсональныхДанных - 1606 - - <key>ru</key> - <value>Просмотр обращений к персональным данным выбранных объектов программы.</value> - - true - true - - true - - - ПояснениеОбработкаЗащитаПерсональныхДанныхExtendedTooltip - 1696 - Label - true - true - - Left - - - - ПояснениеОбработкаЗащитаПерсональныхДанныхКонтекстноеМеню - 1607 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -3743,6 +4183,8 @@ ru Группа обработка защита персональных данных + 43 + false ГруппаОбработкаЗащитаПерсональныхДанныхExtendedTooltip 1694 @@ -3772,16 +4214,6 @@ ru Защита персональных данных - - System.DefaultGUIFont - 11.0 - true - false - false - false - - 86 - false ГруппаЗащитаПерсональныхДанныхExtendedTooltip 1690 @@ -3794,7 +4226,9 @@ UsualGroup - Auto + Collapsible + true + Button NormalSeparation true true @@ -3821,8 +4255,11 @@ ОбработкаГрупповоеИзменениеОбъектовГрупповоеИзменениеРеквизитовРасширеннаяПодсказка 1779 + + <key>ru</key> + <value>Изменение реквизитов и табличных частей в выбранных элементах.</value> + Label - true true Left @@ -3835,45 +4272,9 @@ true true UserCmds + ShowBottom Auto - - ПояснениеКОбработкеГрупповоеИзменениеОбъектов - 1761 - - <key>ru</key> - <value>Изменение реквизитов и табличных частей в выбранных элементах.</value> - - true - true - - true - - - ПояснениеКОбработкеГрупповоеИзменениеОбъектовРасширеннаяПодсказка - 1763 - Label - true - true - - Left - - - - ПояснениеКОбработкеГрупповоеИзменениеОбъектовКонтекстноеМеню - 1762 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -3887,6 +4288,8 @@ ru Группа обработка групповое изменение объектов + 43 + false ГруппаОбработкаГрупповоеИзменениеОбъектовРасширеннаяПодсказка 1758 @@ -3911,69 +4314,36 @@ ГруппаПоискИУдалениеДублей 1788 - ПоискИУдалениеДублей - 1790 + ОбработкаПоискИУдалениеДублейПоискИУдалениеДублей + 2093 true true true - ПоискИУдалениеДублейРасширеннаяПодсказка - 1791 + ОбработкаПоискИУдалениеДублейПоискИУдалениеДублейРасширеннаяПодсказка + 2094 + + <key>ru</key> + <value>Поиск похожих элементов по заданным условиям сравнения.</value> + Label - true true Left Hyperlink - Form.Command.ПоискИУдалениеДублей + DataProcessor.ПоискИУдалениеДублей.Command.ПоискИУдалениеДублей Normal Auto true true UserCmds + ShowBottom Auto - - ПояснениеКПоискуИУдалениюДублей - 1792 - - <key>ru</key> - <value>Поиск похожих элементов по заданным условиям сравнения</value> - - true - true - - true - - - ПояснениеКПоискуИУдалениюДублейРасширеннаяПодсказка - 1794 - Label - true - true - - Left - - - - ПояснениеКПоискуИУдалениюДублейКонтекстноеМеню - 1793 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -3987,6 +4357,8 @@ ru Группа поиск и удаление дублей + 43 + false ГруппаПоискИУдалениеДублейРасширеннаяПодсказка 1789 @@ -4016,16 +4388,6 @@ ru Корректировка данных - - System.DefaultGUIFont - 11.0 - true - false - false - false - - 86 - false ГруппаКорректировкаДанныхРасширеннаяПодсказка 1756 @@ -4038,7 +4400,9 @@ UsualGroup - Auto + Collapsible + true + Button NormalSeparation true true @@ -4059,7 +4423,7 @@ 1912 ИспользоватьАвтоматическуюПроверкуКонтрагентов - 2072 + 1914 <key>ru</key> <value>Автоматически проверять контрагентов по ЕГРН</value> @@ -4080,16 +4444,14 @@ </handlers> <extendedTooltip> <name>ИспользоватьАвтоматическуюПроверкуКонтрагентовРасширеннаяПодсказка</name> - <id>2074</id> + <id>1916</id> <title> <key>ru</key> - <value><color #807a59>Включение автоматической проверки может замедлить открытие документов на медленных компьютерах. Для таких компьютеров рекомендуется использовать </><color #807a59>ручную</><color #807a59> проверку</><color #807a59> по кнопке в подменю Еще</> + <value><color #807a59>Включение автоматической проверки может замедлить открытие документов на медленных компьютерах. Для таких компьютеров рекомендуется использовать </><color #807a59>ручную</><color #807a59> проверку</><color #807a59> по кнопке в подменю "Еще".</> <link e1cib/app/Обработка.ИнструкцияПоИспользованиюПроверкиКонтрагента>Подробнее о сервисе</></value> true Label - true - 5 true Left @@ -4097,7 +4459,7 @@ ИспользоватьАвтоматическуюПроверкуКонтрагентовКонтекстноеМеню - 2073 + 1915 true CheckBoxField @@ -4200,11 +4562,7 @@ true Label - 43 - true - 1 true - false Left @@ -4225,6 +4583,8 @@ ru Правая колонка первой группы + 43 + false ПраваяКолонкаПервойГруппыРасширеннаяПодсказка 1921 @@ -4276,16 +4636,8 @@ <key>ru</key> - <value>Работа с контрагентами</value> + <value>Проверка контрагентов</value> - - System.DefaultGUIFont - 11.0 - true - false - false - false - ГруппаПроверкаКонтрагентовРасширеннаяПодсказка 1909 @@ -4299,7 +4651,9 @@ UsualGroup Vertical - Auto + Collapsible + true + Button NormalSeparation true true @@ -4315,6 +4669,70 @@ ГруппаОбновлениеИОписаниеИзмененийПерваяСтрока 2043 + + ГруппаУстановкаОбновлений + 2105 + + УстановкаОбновлений + 2103 + + <key>ru</key> + <value>Установка обновлений</value> + + true + true + + true + + + УстановкаОбновленийРасширеннаяПодсказка + 2104 + + <key>ru</key> + <value>Обновление программы из файла на локальном диске или в сетевом каталоге.</value> + + Label + true + + Left + + + Hyperlink + DataProcessor.УстановкаОбновлений.StandardCommand.Open + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + 43 + false + + ГруппаУстановкаОбновленийРасширеннаяПодсказка + 2106 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + ГруппаОткрытьОписаниеИзмененийСистемы 2045 @@ -4329,6 +4747,10 @@ ОткрытьОписаниеИзмененийСистемыExtendedTooltip 2048 + + <key>ru</key> + <value>История изменений по версиям программы.</value> + Label true true @@ -4343,45 +4765,9 @@ true true UserCmds + ShowBottom Auto - - ПояснениеОткрытьОписаниеИзмененийСистемы - 2049 - - <key>ru</key> - <value>История изменений по версиям программы.</value> - - true - true - - true - - - ПояснениеОткрытьОписаниеИзмененийСистемыExtendedTooltip - 2051 - Label - true - true - - Left - - - - ПояснениеОткрытьОписаниеИзмененийСистемыКонтекстноеМеню - 2050 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -4413,107 +4799,6 @@ Auto - - ГруппаОтложеннаяОбработкаДанных - 2052 - - РезультатыОбновленияИДополнительнаяОбработкаДанных - 2054 - true - true - - true - - - РезультатыОбновленияИДополнительнаяОбработкаДанныхРасширеннаяПодсказка - 2055 - Label - true - true - - Left - - - Hyperlink - Form.Command.РезультатыОбновленияИДополнительнаяОбработкаДанных - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеОтложеннаяОбработкаДанных - 2056 - - <key>ru</key> - <value>Сведения о ходе обновления версии программы, отложенное выполнение дополнительных процедур обработки данных.</value> - - true - true - - true - - - ПояснениеОтложеннаяОбработкаДанныхРасширеннаяПодсказка - 2058 - Label - true - true - - Left - - - - ПояснениеОтложеннаяОбработкаДанныхКонтекстноеМеню - 2057 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа отложенная обработка данных</value> - - - ru - Группа отложенная обработка данных - - 43 - - ГруппаОтложеннаяОбработкаДанныхРасширеннаяПодсказка - 2053 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - true true @@ -4549,6 +4834,75 @@ ГруппаОбновлениеИОписаниеИзмененийВтораяСтрока 2059 + + ГруппаОтложеннаяОбработкаДанных + 2052 + + РезультатыОбновленияИДополнительнаяОбработкаДанных + 2054 + true + true + + true + + + РезультатыОбновленияИДополнительнаяОбработкаДанныхРасширеннаяПодсказка + 2055 + + <key>ru</key> + <value>Сведения о ходе обновления версии программы, отложенное выполнение дополнительных процедур обработки данных.</value> + + Label + true + + Left + + + Hyperlink + Form.Command.РезультатыОбновленияИДополнительнаяОбработкаДанных + Normal + Auto + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + + <key>ru</key> + <value>Группа отложенная обработка данных</value> + + + ru + Группа отложенная обработка данных + + 43 + false + + ГруппаОтложеннаяОбработкаДанныхРасширеннаяПодсказка + 2053 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + ГруппаДетализироватьОбновлениеИБВЖурналеРегистрации 2061 @@ -4568,6 +4922,7 @@ НаборКонстант.ДетализироватьОбновлениеИБВЖурналеРегистрации Right + ShowBottom OnChange ДетализироватьОбновлениеИБВЖурналеРегистрацииПриИзменении @@ -4575,8 +4930,11 @@ ДетализироватьОбновлениеИБВЖурналеРегистрацииExtendedTooltip 2065 + + <key>ru</key> + <value>Записывать в журнал регистрации подробную информацию о ходе выполнения обновления.</value> + Label - true true Left @@ -4594,43 +4952,6 @@ true - - ПояснениеДетализироватьОбновлениеИБВЖурналеРегистрации - 2066 - - <key>ru</key> - <value>Записывать в журнал регистрации подробную информацию о ходе выполнения обновления.</value> - - true - true - - true - - - ПояснениеДетализироватьОбновлениеИБВЖурналеРегистрацииExtendedTooltip - 2068 - Label - true - true - - Left - - - - ПояснениеДетализироватьОбновлениеИБВЖурналеРегистрацииКонтекстноеМеню - 2067 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -4683,7 +5004,6 @@ UsualGroup - Vertical Auto true true @@ -4700,16 +5020,6 @@ ru Результаты обновления программы - - System.DefaultGUIFont - 11.0 - true - false - false - false - - 86 - false ГруппаРезультатыОбновленияПрограммыРасширеннаяПодсказка 2042 @@ -4723,7 +5033,9 @@ UsualGroup Vertical - Auto + Collapsible + true + Button NormalSeparation true true @@ -4769,7 +5081,6 @@ true Label - true true Style.ПоясняющийТекст @@ -4805,6 +5116,7 @@ true Label + 1 true true @@ -4971,7 +5283,7 @@ true Label - 4 + 2 true true @@ -5086,6 +5398,7 @@ true Label + 1 true true @@ -5174,36 +5487,6 @@ Auto - - ДекорацияГруппаЦентрМониторинга - 2002 - true - true - - true - - - ДекорацияГруппаЦентрМониторингаРасширеннаяПодсказка - 2004 - Label - true - true - - Left - - - - ДекорацияГруппаЦентрМониторингаКонтекстноеМеню - 2003 - true - - Label - true - true - - Left - - true true @@ -5213,20 +5496,10 @@ ru Центр мониторинга - - System.DefaultGUIFont - 11.0 - true - false - false - false - ru Группа оценка производительности - 86 - false ГруппаЦентрМониторингаРасширеннаяПодсказка 1952 @@ -5240,7 +5513,9 @@ UsualGroup Vertical - Auto + Collapsible + true + Button NormalSeparation true true @@ -5259,6 +5534,10 @@ NotificationProcessing ОбработкаОповещения + + OnOpen + ПриОткрытии + OnCreateAtServer ПриСозданииНаСервере @@ -5278,7 +5557,6 @@ Write WriteAndClose Yes - 88 DontBlock true true @@ -5305,6 +5583,9 @@ true + + НаборКонстант.ИзвлекатьТекстыФайловНаСервере + НаборКонстант.ИспользоватьДополнительныеОтчетыИОбработки @@ -5327,7 +5608,9 @@ true - + + true + УдалениеПомеченныхИдентификатор @@ -5430,6 +5713,82 @@ true + + ИспользоватьПолнотекстовыйПоиск + + <key>ru</key> + <value>Полнотекстовый поиск данных</value> + + 16 + + Number + + 1 + + + + true + + + true + + + + ПараметрыОблачногоАрхива + + <key>ru</key> + <value>Параметры облачного архива</value> + + 17 + + + true + + + true + + + + ПрогрессПроверкиОблачногоАрхива + + <key>ru</key> + <value>Прогресс проверки облачного архива</value> + + 18 + + Number + + 3 + true + + + + true + + + true + + + + СпособРезервногоКопирования + + <key>ru</key> + <value>Способ резервного копирования</value> + + 19 + + String + + 30 + + + + true + + + true + + УправлениеПолнотекстовымПоискомИИзвлечениемТекстов @@ -5452,51 +5811,6 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> - <formCommands> - <name>ОбработкаЗагрузкаКурсовВалют</name> - <title> - <key>ru</key> - <value>Загрузить курсы валют</value> - - 2 - - ru - Загрузить курсы валют с веб-сайта РБК - - - true - - - - ОбработкаЗагрузкаКурсовВалют - - - FunctionalOption.СтандартныеПодсистемыВЛокальномРежиме - DontUse - Auto - - - ЗагрузитьКлассификаторБанков - - <key>ru</key> - <value>Загрузить классификатор банков</value> - - 3 - - ru - Загрузить классификатор банков - - - true - - - - ЗагрузитьКлассификаторБанков - - - DontUse - Auto - УдалениеПомеченныхНастроитьРасписание @@ -5519,50 +5833,6 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> - <formCommands> - <name>ПоискИУдалениеДублей</name> - <title> - <key>ru</key> - <value>Поиск и удаление дублей</value> - - 10 - - ru - Поиск и удаление дублей - - - true - - - - ПоискИУдалениеДублей - - - DontUse - Auto - - - РегистрСведенийНастройкиВерсионированияОбъектов - - <key>ru</key> - <value>Версионируемые объекты</value> - - 6 - - ru - Регистр сведений "Настройки версионирования объектов" - - - true - - - - РегистрСведенийНастройкиВерсионированияОбъектов - - - DontUse - Auto - ПроверитьДоступКСервису @@ -5630,22 +5900,22 @@ <selectedRowsUse>Auto</selectedRowsUse> </formCommands> <formCommands> - <name>НастроитьДатыЗапретаИзменения</name> + <name>ПодключитьСервисОблачныйАрхив</name> <title> <key>ru</key> - <value>Настроить даты запрета изменения</value> + <value>Подключить</value> - 9 + 2 ru - Настроить даты запрета изменения + Подключить сервис 1С:Облачный архив true - НастроитьДатыЗапретаИзменения + ПодключитьСервисОблачныйАрхив DontUse diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоддержкаИОбслуживание/Help/ru.html b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоддержкаИОбслуживание/Help/ru.html index ea3cfe71b..d84bd9fed 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоддержкаИОбслуживание/Help/ru.html +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоддержкаИОбслуживание/Help/ru.html @@ -32,16 +32,17 @@ TD { Настройка, выполнение и отслеживание состояний регламентных и фоновых заданий. Регламентные задания автоматически выполняют регламентные операции по расписанию.
    • Разблокировать работу с внешними ресурсами
    • -С помощью кнопки можно снять блокировку регламентных заданий по работе с внешними ресурсами. Она автоматически устанавливается, если изменилось местоположение ИБ в связи с копированием или восстановлением из резервной копии. -
    • Управление итогами и агрегатами
    • +С помощью кнопки можно снять блокировку регламентных заданий по работе с внешними ресурсами. Она автоматически устанавливается, если изменилось местоположение ИБ в связи с копированием или восстановлением из резервной копии. +
    • Управление итогами и агрегатами
    • Управление итогами регистров накопления и бухгалтерии и агрегатами оборотных регистров. Правильная настройка итогов и агрегатов может повысить производительность программы. -
    • Управление полнотекстовым поиском
    • -Поддержка индекса полнотекстового поиска в актуальном состоянии. - -
    • Даты запрета изменения
    • +
    • Полнотекстовый поиск данных
    • +Включите флажок, после этого становится доступной команда: +
    • Настроить
    • +Настройка полнотекстового поиска и поддержка индекса полнотекстового поиска в актуальном состоянии. +
    • Даты запрета изменения
    • Включите флажок, для того чтобы использовать даты запрета изменения данных программы.  -

      См. также: Даты запрета загрузки данных в разделе Синхронизация данных. После этого становится активной команда:

      +

      См. также: Даты запрета загрузки данных в разделе Синхронизация данных. После этого становится активной команда:

    • Настроить
    • Переход к установке запрета редактирования данных программы до определенной даты (данных прошлых периодов). @@ -59,22 +60,25 @@ TD { Настройка автоматического резервного копирования по расписанию, или отключение контроля резервного копирования, если оно выполняется сторонними средствами.
    • Восстановление из резервной копии
    • Восстановление программы из резервной копии. -

      Версионирование объектов

      +

      История изменений

      +

      Программа позволяет вести историю изменения списков, просматривать любую версию объекта или сравнивать любые версии объекта между собой.

      - +
      -
    • Версионирование объектов
    • Флажок версионирования объектов.
      +
    • Хранить историю изменений
    • Включите флажок для ведения истории изменения объектов программы. После этого становится доступной команда:
    • Настройки хранения
    • Настройка хранения и очистка версий документов и справочников.
      -

      Оценка производительности

      - - +
      +

      Оценка производительности

      +

      В программе предусмотрены встроенные средства для сбора и анализа данных о производительности ее работы по APDEX. В подразделе можно настроить параметры:

      + -
    • Оценка производительности
    • Флажок замеров интегральной производительности программы по методике APDEX.
    • Настройки оценки производительности
    • Настройки параметров оценки производительности.
    • Показатели производительности
    • Просмотр и оценка результатов замеров производительности.

      +
      Просмотр и оценка результатов замеров производительности.
      +
    • Экспорт замеров производительности
    • Экспорт замеров производительности за произвольный период.

      Адресный классификатор

      @@ -83,8 +87,8 @@ TD {
    • Загружать классификатор в программу
    • - + @@ -110,27 +114,29 @@ TD {
      Выберите с помощью переключателя способ работы с адресными сведениями:
    • Использовать веб-сервис 1С для ввода и проверки адресов
    • Использовать данные, загружаемые с сайта 1С или из папки на диске. Возможна работа без подключения к Интернету

      Для использования возможностей адресного классификатора предусмотрены команды:
      -
    • Авторизация на сайте поддержки пользователей
    • Для использования веб-сервиса 1С и загрузки обновлений адресного классификатора необходимо указать логин и пароль.
      +
    • Подключить интернет-поддержку
    • Для использования веб-сервиса 1С и загрузки обновлений адресного классификатора необходимо выполнить подключение к интернет-поддержке пользователей.
    • Загрузить классификатор
    • Загрузка адресного классификатора с сайта 1С или из папки на диске.
    • Очистить адресные сведения
    • Поиск и удаление дублей
    • Поиск похожих элементов по заданным условиям сравнения.

      Работа с контрагентами

      +

      Для подготовки корректных данных и сокращения количества ошибок в программе предусмотрена автоматическая проверка контрагентов.

      - + - - - -
      -
    • Проверять контрагентов с помощью веб-сервиса ФНС
    • Включите флажок для проверки регистрации контрагентов в ЕГРН  (Едином государственном реестре налогоплательщиков)
      +
    • Автоматически проверять контрагентов по ЕГРН
    • Включите флажок для автоматической проверки регистрации контрагентов в ЕГРН  (Едином государственном реестре налогоплательщиков). Проверка проводится с помощью регламентного задания.
    • Подробнее о сервисе
    • Нажмите на ссылку, для того чтобы получить информацию о работе с сервисом.
      +Нажмите ссылку, для того чтобы получить информацию о работе с сервисом.
    • Проверить доступ к веб-сервису
    • Нажмите кнопку для проверки доступа к веб-сервису ФНС.
      -
    • Автоматически проверять контрагентов по расписанию
    • Включите флажок, для того чтобы стала доступной настройка расписания.
      -
    • Настроить расписание проверки контрагентов
    • Настройка расписания регламентного задания.

      Результаты обновления программы

      +Нажмите кнопку для проверки доступа к веб-сервису ФНС.

      Результаты обновления программы

      +

      В подразделе производится установка обновлений программы, также можно просмотреть информацию о предыдущих обновлениях.

      - - +
      + + + +

      + - -
      +
    • Установка обновлений
    • Переход к установке обновлений программы.
    • Описание изменений программы
    • Просмотр списка изменений в установленной версии программы и рекомендаций по обновлению программы.
    • Результаты обновления и дополнительная обработка данных
    • Сведения о ходе обновления версии программы, отложенное выполнение дополнительных процедур обработки данных
      -
    • Детализировать ход обновления в журнале регистрации
    • При включенной настройке в журнал регистрации записываются выполняемые обработчики обновления с указанием времени выполнения.

      Центр мониторинга

      +
      Сведения о ходе обновления версии программы, отложенное выполнение дополнительных процедур обработки данных
      +
    • Детализировать ход обновления в журнале регистрации
    • При включенном флажке в журнал регистрации записываются выполняемые обработчики обновления с указанием времени выполнения.

      Центр мониторинга

      В подразделе представлены настройки сбора, анализа и хранения технологической информации, обезличенной статистики использования конфигурации. Отчеты об использовании программы, автоматически переданные разработчикам, помогут им определить, над чем следует поработать в первую очередь. Собранные сведения являются обезличенными и содержат только статистические показатели. Подготовка и отправка отчетов не замедлит работу программы.

      С помощью переключателя выберите:

      @@ -138,7 +144,7 @@ TD {
    • Разрешить автоматическую отправку сведений об использовании программы в фирму "1С"
    • выбрано по умолчанию, рекомендуется.
    • Разрешить отправку сведений стороннему разработчику
    • -в этом случае необходимо заполнить Адрес сервиса, например, https://pult1C.ru/pult/v1/packet/. +в этом случае необходимо заполнить Адрес сервиса.
    • Запретить отправку сведений
    • не рекомендуется, т.к. статистика необходима разработчикам для анализа работы программы, при этом передача статистики не замедляет ее работу.

      См. также:

      \ No newline at end of file diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоддержкаИОбслуживание/Module.bsl b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоддержкаИОбслуживание/Module.bsl index 7d935689a..3de1a5097 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоддержкаИОбслуживание/Module.bsl +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоддержкаИОбслуживание/Module.bsl @@ -9,6 +9,7 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + Если Параметры.Свойство("АвтоТест") Тогда Возврат; КонецЕсли; @@ -17,148 +18,228 @@ РежимРаботы = ОбщегоНазначенияПовтИсп.РежимРаботыПрограммы(); РежимРаботы = Новый ФиксированнаяСтруктура(РежимРаботы); - // СтандартныеПодсистемы.УдалениеПомеченныхОбъектов - РегламентноеЗадание = РегламентныеЗаданияНайтиПредопределенное("УдалениеПомеченных"); - ВидимостьФлажка = (РегламентноеЗадание <> Неопределено); - Если ВидимостьФлажка Тогда - УдалениеПомеченныхИдентификатор = РегламентноеЗадание.УникальныйИдентификатор; - УдалениеПомеченныхИспользование = РегламентноеЗадание.Использование; - УдалениеПомеченныхРасписание = РегламентноеЗадание.Расписание; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УдалениеПомеченныхОбъектов") Тогда + РегламентноеЗадание = РегламентныеЗаданияНайтиПредопределенное("УдалениеПомеченных"); + ВидимостьФлажка = (РегламентноеЗадание <> Неопределено); + Если ВидимостьФлажка Тогда + УдалениеПомеченныхИдентификатор = РегламентноеЗадание.УникальныйИдентификатор; + УдалениеПомеченныхИспользование = РегламентноеЗадание.Использование; + УдалениеПомеченныхРасписание = РегламентноеЗадание.Расписание; + КонецЕсли; + ВидимостьРасписания = ВидимостьФлажка И Не РежимРаботы.МодельСервиса И РежимРаботы.ЭтоАдминистраторСистемы; + Элементы.УдалениеПомеченныхИспользование.Видимость = ВидимостьФлажка; + Элементы.УдалениеПомеченныхНастроитьРасписание.Видимость = ВидимостьРасписания; + Элементы.УдалениеПомеченныхПредставлениеРасписания.Видимость = ВидимостьРасписания; + Иначе + Элементы.ГруппаУдалениеПомеченныхОбъектовПоРасписанию.Видимость = Ложь; КонецЕсли; - ВидимостьРасписания = ВидимостьФлажка И Не РежимРаботы.МодельСервиса И РежимРаботы.ЭтоАдминистраторСистемы; - Элементы.УдалениеПомеченныхИспользование.Видимость = ВидимостьФлажка; - Элементы.УдалениеПомеченныхНастроитьРасписание.Видимость = ВидимостьРасписания; - Элементы.УдалениеПомеченныхПредставлениеРасписания.Видимость = ВидимостьРасписания; - // Конец СтандартныеПодсистемы.УдалениеПомеченныхОбъектов - // СтандартныеПодсистемы.РегламентныеЗадания - Элементы.ГруппаБлокировкаРаботыСВнешнимиРесурсами.Видимость = РегламентныеЗаданияСервер.РаботаСВнешнимиРесурсамиЗаблокирована(); - // Конец СтандартныеПодсистемы.РегламентныеЗадания + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РегламентныеЗадания") Тогда + Элементы.ГруппаБлокировкаРаботыСВнешнимиРесурсами.Видимость = РегламентныеЗаданияСервер.РаботаСВнешнимиРесурсамиЗаблокирована(); + Элементы.ГруппаОбработкаРегламентныеИФоновыеЗадания.Видимость = РежимРаботы.ЭтоАдминистраторСистемы; + Иначе + Элементы.ГруппаОбработкаРегламентныеИФоновыеЗадания.Видимость = Ложь; + Элементы.ГруппаБлокировкаРаботыСВнешнимиРесурсами.Видимость = Ложь; + КонецЕсли; - // СтандартныеПодсистемы.РегламентныеЗадания - Элементы.ГруппаОбработкаРегламентныеИФоновыеЗадания.Видимость = РежимРаботы.ЭтоАдминистраторСистемы; - // Конец СтандартныеПодсистемы.РегламентныеЗадания + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УправлениеИтогамиИАгрегатами") Тогда + Элементы.ГруппаОбработкаУправлениеИтогамиИАгрегатамиОткрыть.Видимость = РежимРаботы.ЭтоАдминистраторПрограммы + И (РежимРаботы.Локальный Или РежимРаботы.Автономный); + Иначе + Элементы.ГруппаОбработкаУправлениеИтогамиИАгрегатамиОткрыть.Видимость = Ложь; + КонецЕсли; - // СтандартныеПодсистемы.УправлениеИтогамиИАгрегатами - Элементы.ГруппаОбработкаУправлениеИтогамиИАгрегатамиОткрыть.Видимость = РежимРаботы.ЭтоАдминистраторПрограммы - И (РежимРаботы.Локальный Или РежимРаботы.Автономный); - // Конец СтандартныеПодсистемы.УправлениеИтогамиИАгрегатами + Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДатыЗапретаИзменения") Тогда + Элементы.ГруппаДатыЗапретаИзменения.Видимость = Ложь; + КонецЕсли; - // СтандартныеПодсистемы.ПолнотекстовыйПоиск - Элементы.ГруппаУправлениеПолнотекстовымПоискомИИзвлечениемТекстов.Видимость = РежимРаботы.ЭтоАдминистраторСистемы; - // Конец СтандартныеПодсистемы.ПолнотекстовыйПоиск + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПолнотекстовыйПоиск") Тогда + Элементы.ГруппаУправлениеПолнотекстовымПоискомИИзвлечениемТекстов.Видимость = РежимРаботы.ЭтоАдминистраторСистемы; + Иначе + Элементы.ГруппаУправлениеПолнотекстовымПоискомИИзвлечениемТекстов.Видимость = Ложь; + КонецЕсли; - // СтандартныеПодсистемы.РезервноеКопированиеИБ - Элементы.ГруппаРезервноеКопированиеИВосстановление.Видимость = ((РежимРаботы.Локальный Или РежимРаботы.Автономный) И РежимРаботы.ЭтоАдминистраторСистемы - И Не РежимРаботы.ЭтоВебКлиент И Не РежимРаботы.ЭтоLinuxКлиент); - ОбновитьНастройкиРезервногоКопирования(); - // Конец СтандартныеПодсистемы.РезервноеКопированиеИБ + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РезервноеКопированиеИБ") Тогда + Элементы.ГруппаРезервноеКопированиеИВосстановление.Видимость = ((РежимРаботы.Локальный + Или РежимРаботы.Автономный) И РежимРаботы.ЭтоАдминистраторСистемы + И Не РежимРаботы.ЭтоВебКлиент И РежимРаботы.ЭтоWindowsКлиент); + ОбновитьНастройкиРезервногоКопирования(); + Иначе + Элементы.ГруппаРезервноеКопированиеИВосстановление.Видимость = Ложь; + КонецЕсли; + + Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ВерсионированиеОбъектов") Тогда + Элементы.ГруппаВерсионирование.Видимость = Ложь; + КонецЕсли; Элементы.ГруппаКлассификаторы.Видимость = РежимРаботы.Локальный Или РежимРаботы.Автономный; - // СтандартныеПодсистемы.ОценкаПроизводительности - ОценкаПроизводительностиСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности"); - Элементы.ГруппаОценкаПроизводительности.Видимость = (РежимРаботы.ЭтоАдминистраторСистемы И ОценкаПроизводительностиСуществует); - // Конец СтандартныеПодсистемы.ОценкаПроизводительности - - // СтандартныеПодсистемы.Валюты - Элементы.ГруппаОбработкаЗагрузкаКурсовВалют.Видимость = РежимРаботы.Локальный; - // Конец СтандартныеПодсистемы.Валюты - - // СтандартныеПодсистемы.Банки - Элементы.ГруппаЗагрузитьКлассификаторБанков.Видимость = РежимРаботы.Локальный И РежимРаботы.ЭтоАдминистраторСистемы; - // Конец СтандартныеПодсистемы.Банки - - // СтандартныеПодсистемы.ЗащитаПерсональныхДанных - Элементы.ГруппаОткрытьНастройкиРегистрацииСобытийДоступаКПерсональнымДанным.Видимость = РежимРаботы.ЭтоАдминистраторСистемы; - // Конец СтандартныеПодсистемы.ЗащитаПерсональныхДанных - - // СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов - Элементы.ГруппаОбработкаГрупповоеИзменениеОбъектов.Видимость = РежимРаботы.ЭтоАдминистраторПрограммы; - // Конец СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов - - // СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки - Элементы.ГруппаДополнительныеОтчетыПоАдминистрированию.Видимость = НаборКонстант.ИспользоватьДополнительныеОтчетыИОбработки; - Элементы.ГруппаДополнительныеОбработкиПоАдминистрированию.Видимость = НаборКонстант.ИспользоватьДополнительныеОтчетыИОбработки; - // Конец СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки - - // СтандартныеПодсистемы.АдресныйКлассификатор - ВидимостьГруппы = РежимРаботы.Локальный Или РежимРаботы.Автономный; - Элементы.ГруппаАдресныйКлассификаторНастройки.Видимость = ВидимостьГруппы; - Элементы.ГруппаАдресныйКлассификаторКоманды.Видимость = ВидимостьГруппы; - // Конец СтандартныеПодсистемы.АдресныйКлассификатор - - // СтандартныеПодсистемы.РаботаСКонтрагентами - Элементы.ГруппаПроверкаКонтрагентов.Видимость = РежимРаботы.ЭтоАдминистраторСистемы; - - Если Элементы.ГруппаПроверкаКонтрагентов.Видимость Тогда - - ПроверкаКонтрагентов.УстановитьВидимостьИЗаголовокПредупрежденияПроТестовыйРежим( - Элементы.ПредупреждениеПроТестовыйРежимПроверкиКонтрагента); - + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности") Тогда + Элементы.ГруппаОценкаПроизводительности.Видимость = РежимРаботы.ЭтоАдминистраторСистемы; + Иначе + Элементы.ГруппаОценкаПроизводительности.Видимость = Ложь; КонецЕсли; - // Конец СтандартныеПодсистемы.РаботаСКонтрагентами - // СтандартныеПодсистемы.ЦентрМониторинга - ЦентрМониторингаСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЦентрМониторинга"); - Элементы.ГруппаЦентрМониторинга.Видимость = (РежимРаботы.ЭтоАдминистраторСистемы И ЦентрМониторингаСуществует); + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Банки") Тогда + Элементы.ГруппаЗагрузитьКлассификаторБанков.Видимость = РежимРаботы.Локальный И РежимРаботы.ЭтоАдминистраторСистемы; + Иначе + Элементы.ГруппаЗагрузитьКлассификаторБанков.Видимость = Ложь; + КонецЕсли; - Если (РежимРаботы.ЭтоАдминистраторСистемы И ЦентрМониторингаСуществует) Тогда - ПараметрыЦентраМониторинга = ПолучитьПараметрыЦентраМониторинга(); - ЦентрМониторингаРазрешитьОтправлятьДанные = ПолучитьПереключательОтправкиДанных(ПараметрыЦентраМониторинга.ВключитьЦентрМониторинга, ПараметрыЦентраМониторинга.ЦентрОбработкиИнформацииОПрограмме); - - ПараметрыСервиса = Новый Структура("Сервер, АдресРесурса, Порт"); - Если ЦентрМониторингаРазрешитьОтправлятьДанные = 0 Тогда - ПараметрыСервиса.Сервер = ПараметрыЦентраМониторинга.СерверПоУмолчанию; - ПараметрыСервиса.АдресРесурса = ПараметрыЦентраМониторинга.АдресРесурсаПоУмолчанию; - ПараметрыСервиса.Порт = ПараметрыЦентраМониторинга.ПортПоУмолчанию; - ИначеЕсли ЦентрМониторингаРазрешитьОтправлятьДанные = 1 Тогда - ПараметрыСервиса.Сервер = ПараметрыЦентраМониторинга.Сервер; - ПараметрыСервиса.АдресРесурса = ПараметрыЦентраМониторинга.АдресРесурса; - ПараметрыСервиса.Порт = ПараметрыЦентраМониторинга.Порт; - ИначеЕсли ЦентрМониторингаРазрешитьОтправлятьДанные = 2 Тогда - ПараметрыСервиса = Неопределено; - КонецЕсли; - - Если ПараметрыСервиса <> Неопределено Тогда - Если ПараметрыСервиса.Порт = 80 Тогда - Схема = "http://"; - Порт = ""; - ИначеЕсли ПараметрыСервиса.Порт = 443 Тогда - Схема = "https://"; - Порт = ""; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Валюты") Тогда + Элементы.ГруппаОбработкаЗагрузкаКурсовВалют.Видимость = РежимРаботы.Локальный; + Иначе + Элементы.ГруппаОбработкаЗагрузкаКурсовВалют.Видимость = Ложь; + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЗащитаПерсональныхДанных") Тогда + Элементы.ГруппаОткрытьНастройкиРегистрацииСобытийДоступаКПерсональнымДанным.Видимость = РежимРаботы.ЭтоАдминистраторСистемы; + Иначе + Элементы.ГруппаЗащитаПерсональныхДанных.Видимость = Ложь; + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ГрупповоеИзменениеОбъектов") Тогда + Элементы.ГруппаОбработкаГрупповоеИзменениеОбъектов.Видимость = РежимРаботы.ЭтоАдминистраторПрограммы; + Иначе + Элементы.ГруппаОбработкаГрупповоеИзменениеОбъектов.Видимость = Ложь; + КонецЕсли; + + Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПоискИУдалениеДублей") Тогда + Элементы.ГруппаПоискИУдалениеДублей.Видимость = Ложь; + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда + Элементы.ГруппаДополнительныеОтчетыИОбработки.Видимость = НаборКонстант.ИспользоватьДополнительныеОтчетыИОбработки; + Иначе + Элементы.ГруппаДополнительныеОтчетыИОбработки.Видимость = Ложь; + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда + ВидимостьГруппыНастройки = РежимРаботы.Локальный Или РежимРаботы.Автономный; + Если ВидимостьГруппыНастройки Тогда + ВидимостьГруппыКоманды = Истина; + Если ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + МодульИнтернетПоддержкаПользователей = ОбщегоНазначения.ОбщийМодуль("ИнтернетПоддержкаПользователей"); + Элементы.ГруппаАдресныйКлассификаторПраваяКолонка.Видимость = + МодульИнтернетПоддержкаПользователей.ДанныеАутентификацииПользователяИнтернетПоддержки() = Неопределено; Иначе - Схема = "http://"; - Порт = ":" + Формат(ПараметрыСервиса.Порт, "ЧН=0; ЧГ="); + ВидимостьГруппыНастройки = Ложь; + КонецЕсли; + Иначе + ВидимостьГруппыКоманды = Ложь; + КонецЕсли; + Элементы.ГруппаАдресныйКлассификаторНастройки.Видимость = ВидимостьГруппыНастройки; + Элементы.ГруппаАдресныйКлассификаторКоманды.Видимость = ВидимостьГруппыКоманды; + Иначе + Элементы.ГруппаАдресныйКлассификаторНастройки.Видимость = Ложь; + Элементы.ГруппаАдресныйКлассификаторКоманды.Видимость = Ложь; + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбновлениеКонфигурации") Тогда + Элементы.ГруппаУстановкаОбновлений.Видимость = РежимРаботы.Локальный И РежимРаботы.ЭтоАдминистраторСистемы И Не РежимРаботы.ЭтоLinuxКлиент; + Иначе + Элементы.ГруппаУстановкаОбновлений.Видимость = Ложь; + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСКонтрагентами") Тогда + Элементы.ГруппаПроверкаКонтрагентов.Видимость = РежимРаботы.ЭтоАдминистраторСистемы; + Если Элементы.ГруппаПроверкаКонтрагентов.Видимость Тогда + МодульПроверкаКонтрагентов = ОбщегоНазначения.ОбщийМодуль("ПроверкаКонтрагентов"); + МодульПроверкаКонтрагентов.УстановитьВидимостьИЗаголовокПредупрежденияПроТестовыйРежим( + Элементы.ПредупреждениеПроТестовыйРежимПроверкиКонтрагента); + КонецЕсли; + Иначе + Элементы.ГруппаПроверкаКонтрагентов.Видимость = Ложь; + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЦентрМониторинга") Тогда + Элементы.ГруппаЦентрМониторинга.Видимость = РежимРаботы.ЭтоАдминистраторСистемы; + Если РежимРаботы.ЭтоАдминистраторСистемы Тогда + ПараметрыЦентраМониторинга = ПолучитьПараметрыЦентраМониторинга(); + ЦентрМониторингаРазрешитьОтправлятьДанные = ПолучитьПереключательОтправкиДанных(ПараметрыЦентраМониторинга.ВключитьЦентрМониторинга, ПараметрыЦентраМониторинга.ЦентрОбработкиИнформацииОПрограмме); + + ПараметрыСервиса = Новый Структура("Сервер, АдресРесурса, Порт"); + Если ЦентрМониторингаРазрешитьОтправлятьДанные = 0 Тогда + ПараметрыСервиса.Сервер = ПараметрыЦентраМониторинга.СерверПоУмолчанию; + ПараметрыСервиса.АдресРесурса = ПараметрыЦентраМониторинга.АдресРесурсаПоУмолчанию; + ПараметрыСервиса.Порт = ПараметрыЦентраМониторинга.ПортПоУмолчанию; + ИначеЕсли ЦентрМониторингаРазрешитьОтправлятьДанные = 1 Тогда + ПараметрыСервиса.Сервер = ПараметрыЦентраМониторинга.Сервер; + ПараметрыСервиса.АдресРесурса = ПараметрыЦентраМониторинга.АдресРесурса; + ПараметрыСервиса.Порт = ПараметрыЦентраМониторинга.Порт; + ИначеЕсли ЦентрМониторингаРазрешитьОтправлятьДанные = 2 Тогда + ПараметрыСервиса = Неопределено; КонецЕсли; - ЦентрМониторингаАдресСервиса = Схема + ПараметрыСервиса.Сервер + Порт + "/" + ПараметрыСервиса.АдресРесурса; - Иначе - ЦентрМониторингаАдресСервиса = ""; + Если ПараметрыСервиса <> Неопределено Тогда + Если ПараметрыСервиса.Порт = 80 Тогда + Схема = "http://"; + Порт = ""; + ИначеЕсли ПараметрыСервиса.Порт = 443 Тогда + Схема = "https://"; + Порт = ""; + Иначе + Схема = "http://"; + Порт = ":" + Формат(ПараметрыСервиса.Порт, "ЧН=0; ЧГ="); + КонецЕсли; + + ЦентрМониторингаАдресСервиса = Схема + ПараметрыСервиса.Сервер + Порт + "/" + ПараметрыСервиса.АдресРесурса; + Иначе + ЦентрМониторингаАдресСервиса = ""; + КонецЕсли; + + Элементы.ЦентрМониторингаАдресСервиса.Доступность = (ЦентрМониторингаРазрешитьОтправлятьДанные = 1); КонецЕсли; - - УстановитьДоступностьЦентрМониторингаНаСервере(ЦентрМониторингаРазрешитьОтправлятьДанные); + Иначе + Элементы.ГруппаЦентрМониторинга.Видимость = Ложь; КонецЕсли; - // Конец СтандартныеПодсистемы.ЦентрМониторинга - + + Если ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ОблачныйАрхив") Тогда + МодульОблачныйАрхив = ОбщегоНазначения.ОбщийМодуль("ОблачныйАрхив"); + МодульОблачныйАрхив.ПанельАдминистрированияБСП_ПриСозданииНаСервере(ЭтотОбъект); + КонецЕсли; + // Обновление состояния элементов. УстановитьДоступность(); КонецПроцедуры +&НаКлиенте +Процедура ПриОткрытии(Отказ) + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ОблачныйАрхив") Тогда + МодульОблачныйАрхивКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОблачныйАрхивКлиент"); + МодульОблачныйАрхивКлиент.ПанельАдминистрированияБСП_ПриОткрытии(ЭтотОбъект); + КонецЕсли; + +КонецПроцедуры + &НаКлиенте Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) - // СтандартныеПодсистемы.РезервноеКопированиеИБ - Если ИмяСобытия = "ЗакрытаФормаНастройкиРезервногоКопирования" Тогда + Если ИмяСобытия = "ЗакрытаФормаНастройкиРезервногоКопирования" + И ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РезервноеКопированиеИБ") Тогда ОбновитьНастройкиРезервногоКопирования(); + ИначеЕсли ИмяСобытия = "ИнтернетПоддержкаПодключена" Тогда + Элементы.ГруппаАдресныйКлассификаторПраваяКолонка.Видимость = Ложь; + ИначеЕсли ИмяСобытия = "ИнтернетПоддержкаОтключена" Тогда + Элементы.ГруппаАдресныйКлассификаторПраваяКолонка.Видимость = Истина; + ИначеЕсли ИмяСобытия = "РазрешенаРаботаСВнешнимиРесурсами" Тогда + Элементы.ГруппаБлокировкаРаботыСВнешнимиРесурсами.Видимость = Ложь; + КонецЕсли; + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ОблачныйАрхив") Тогда + МодульОблачныйАрхивКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОблачныйАрхивКлиент"); + МодульОблачныйАрхивКлиент.ПанельАдминистрированияБСП_ОбработкаОповещения(ЭтотОбъект, ИмяСобытия, Параметр, Источник); КонецЕсли; - // Конец СтандартныеПодсистемы.РезервноеКопированиеИБ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ОбновитьИнтерфейсПрограммы(); КонецПроцедуры @@ -166,79 +247,52 @@ #Область ОбработчикиСобытийЭлементовШапкиФормы -// СтандартныеПодсистемы.УдалениеПомеченныхОбъектов +&НаКлиенте +Процедура ИспользоватьПолнотекстовыйПоискПриИзменении(Элемент) + + Если ИспользоватьПолнотекстовыйПоиск = 0 Тогда // Предыдущее значение - 2 (3й режим). + ИспользоватьПолнотекстовыйПоиск = 1; + ИначеЕсли ИспользоватьПолнотекстовыйПоиск = 2 Тогда // Предыдущее значение - 1 (Истина). + ИспользоватьПолнотекстовыйПоиск = 0; + КонецЕсли; + + Подключаемый_ПриИзмененииРежимаПолнотекстовогоПоиска(Элемент, Истина); + +КонецПроцедуры + &НаКлиенте Процедура УдалениеПомеченныхИспользованиеПриИзменении(Элемент) РегламентныеЗаданияИспользованиеПриИзменении("УдалениеПомеченных"); КонецПроцедуры -// Конец СтандартныеПодсистемы.УдалениеПомеченныхОбъектов -// СтандартныеПодсистемы.ВерсионированиеОбъектов &НаКлиенте Процедура ИспользоватьВерсионированиеОбъектовПриИзменении(Элемент) Подключаемый_ПриИзмененииРеквизита(Элемент); КонецПроцедуры -// Конец СтандартныеПодсистемы.ВерсионированиеОбъектов -// СтандартныеПодсистемы.РезервноеКопированиеИБ -&НаКлиенте -Процедура РезервноеКопированиеПрограммыНажатие(Элемент) - - ОткрытьФорму("Обработка.РезервноеКопированиеИБ.Форма", , ЭтотОбъект); - -КонецПроцедуры - -&НаКлиенте -Процедура НастройкаРезервногоКопированияНажатие(Элемент) - - ОткрытьФорму(РезервноеКопированиеИБКлиент.ИмяФормыНастроекРезервногоКопирования(),, ЭтотОбъект); - -КонецПроцедуры - -&НаКлиенте -Процедура ВосстановлениеИзРезервнойКопииНажатие(Элемент) - - ОткрытьФорму("Обработка.РезервноеКопированиеИБ.Форма.ВосстановлениеДанныхИзРезервнойКопии", , ЭтотОбъект); - -КонецПроцедуры -// Конец СтандартныеПодсистемы.РезервноеКопированиеИБ - -// СтандартныеПодсистемы.ОценкаПроизводительности &НаКлиенте Процедура ВыполнятьЗамерыПроизводительностиПриИзменении(Элемент) Подключаемый_ПриИзмененииРеквизита(Элемент); КонецПроцедуры -// Конец СтандартныеПодсистемы.ОценкаПроизводительности -// СтандартныеПодсистемы.ОбновлениеВерсииИБ &НаКлиенте Процедура ДетализироватьОбновлениеИБВЖурналеРегистрацииПриИзменении(Элемент) Подключаемый_ПриИзмененииРеквизита(Элемент); КонецПроцедуры -// Конец СтандартныеПодсистемы.ОбновлениеВерсииИБ -// СтандартныеПодсистемы.АдресныйКлассификатор &НаКлиенте Процедура АдресныйКлассификаторПриИзменении(Элемент) - Подключаемый_ПриИзмененииРеквизита(Элемент, Ложь); - КонецПроцедуры -// Конец СтандартныеПодсистемы.АдресныйКлассификатор -// СтандартныеПодсистемы.РаботаСКонтрагентами &НаКлиенте Процедура ИспользоватьПроверкуКонтрагентовПриИзменении(Элемент) - Подключаемый_ПриИзмененииРеквизита(Элемент); - КонецПроцедуры -// Конец СтандартныеПодсистемы.РаботаСКонтрагентами -// СтандартныеПодсистемы.ЦентрМониторинга &НаКлиенте Процедура РазрешитьОтправлятьДанныеПриИзменении(Элемент) - УстановитьДоступностьЦентрМониторингаНаКлиенте(ЦентрМониторингаРазрешитьОтправлятьДанные); + Элементы.ЦентрМониторингаАдресСервиса.Доступность = (ЦентрМониторингаРазрешитьОтправлятьДанные = 1); Если ЦентрМониторингаРазрешитьОтправлятьДанные = 2 Тогда ПараметрыЦентраМониторингаЗапись = Новый Структура("ВключитьЦентрМониторинга, ЦентрОбработкиИнформацииОПрограмме", Ложь, Ложь); ИначеЕсли ЦентрМониторингаРазрешитьОтправлятьДанные = 1 Тогда @@ -249,9 +303,7 @@ ЦентрМониторингаАдресСервиса = ПолучитьАдресСервиса(); РазрешитьОтправлятьДанныеПриИзмененииНаСервере(ПараметрыЦентраМониторингаЗапись); КонецПроцедуры -// Конец СтандартныеПодсистемы.ЦентрМониторинга -// СтандартныеПодсистемы.ЦентрМониторинга &НаКлиенте Процедура ЦентрМониторингаАдресСервисаПриИзменении(Элемент) Попытка @@ -281,95 +333,108 @@ ЦентрМониторингаАдресСервисаПриИзмененииНаСервере(СтруктураАдреса); КонецПроцедуры -// Конец СтандартныеПодсистемы.ЦентрМониторинга + +#Область ИнтернетПоддержкаПользователей_ОблачныйАрхив + +&НаКлиенте +Процедура ОблачныйАрхивОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка) + + СтандартнаяОбработка = Истина; + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ОблачныйАрхив") Тогда + МодульОблачныйАрхивКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОблачныйАрхивКлиент"); + МодульОблачныйАрхивКлиент.ОбработкаНавигационнойСсылки( + ЭтотОбъект, Элемент, НавигационнаяСсылкаФорматированнойСтроки, + СтандартнаяОбработка, Новый Структура); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура СпособРезервногоКопированияПриИзменении(Элемент) + + // В зависимости от состояния, вывести правильную страницу. + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ОблачныйАрхив") Тогда + МодульОблачныйАрхивКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОблачныйАрхивКлиент"); + МодульОблачныйАрхивКлиент.ПанельАдминистрированияБСП_СпособРезервногоКопированияПриИзменении(ЭтотОбъект); + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + #КонецОбласти #Область ОбработчикиКомандФормы -// СтандартныеПодсистемы.УдалениеПомеченныхОбъектов &НаКлиенте Процедура УдалениеПомеченныхНастроитьРасписание(Команда) РегламентныеЗаданияГиперссылкаНажатие("УдалениеПомеченных"); КонецПроцедуры -// Конец СтандартныеПодсистемы.УдалениеПомеченныхОбъектов -// СтандартныеПодсистемы.ПоискИУдалениеДублей -&НаКлиенте -Процедура ПоискИУдалениеДублей(Команда) - - ОткрытьФорму("Обработка.ПоискИУдалениеДублей.Форма.ПоискДублей"); - -КонецПроцедуры -// Конец СтандартныеПодсистемы.ПоискИУдалениеДублей - -// СтандартныеПодсистемы.РегламентныеЗадания &НаКлиенте Процедура РазблокироватьРаботуСВнешнимиРесурсами(Команда) РазблокироватьРаботуСВнешнимиРесурсамиНаСервере(); + Оповестить("РазрешенаРаботаСВнешнимиРесурсами"); КонецПроцедуры -// Конец СтандартныеПодсистемы.РегламентныеЗадания -// СтандартныеПодсистемы.ВерсионированиеОбъектов -&НаКлиенте -Процедура РегистрСведенийНастройкиВерсионированияОбъектов(Команда) - - ОткрытьФорму("РегистрСведений.НастройкиВерсионированияОбъектов.ФормаСписка", , ЭтотОбъект); - -КонецПроцедуры -// Конец СтандартныеПодсистемы.ВерсионированиеОбъектов - -// СтандартныеПодсистемы.Валюты -&НаКлиенте -Процедура ОбработкаЗагрузкаКурсовВалют(Команда) - - ОткрытьФорму("Обработка.ЗагрузкаКурсовВалют.Форма"); - -КонецПроцедуры -// Конец СтандартныеПодсистемы.Валюты - -// СтандартныеПодсистемы.Банки -&НаКлиенте -Процедура ЗагрузитьКлассификаторБанков(Команда) - - ОткрытьФорму("Справочник.КлассификаторБанковРФ.Форма.ЗагрузкаКлассификатора"); - -КонецПроцедуры -// Конец СтандартныеПодсистемы.Банки - -// СтандартныеПодсистемы.ПолнотекстовыйПоиск &НаКлиенте Процедура ОбработкаУправлениеПолнотекстовымПоиском(Команда) - ОткрытьФорму("Обработка.ПанельАдминистрированияБСП.Форма.УправлениеПолнотекстовымПоискомИИзвлечениемТекстов", , ЭтотОбъект); + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ПолнотекстовыйПоиск") Тогда + ИмяОткрываемойФормы = "Обработка.ПанельАдминистрированияБСП.Форма.УправлениеПолнотекстовымПоискомИИзвлечениемТекстов"; + ОткрытьФорму(ИмяОткрываемойФормы, , ЭтотОбъект); + КонецЕсли; КонецПроцедуры -// Конец СтандартныеПодсистемы.ПолнотекстовыйПоиск -// СтандартныеПодсистемы.РаботаСКонтрагентами &НаКлиенте Процедура ПроверитьДоступКСервису(Команда) - ПроверкаКонтрагентовКлиент.ПроверитьДоступКСервису(); + МодульПроверкаКонтрагентовКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ПроверкаКонтрагентовКлиент"); + МодульПроверкаКонтрагентовКлиент.ПроверитьДоступКСервису(); КонецПроцедуры -// Конец СтандартныеПодсистемы.РаботаСКонтрагентами -// СтандартныеПодсистемы.ОбновлениеВерсииИБ &НаКлиенте Процедура ОтложеннаяОбработкаДанных(Команда) ПараметрыФормы = Новый Структура("ОткрытиеИзПанелиАдминистрирования", Истина); ОткрытьФорму("Обработка.РезультатыОбновленияПрограммы.Форма.ИндикацияХодаОтложенногоОбновленияИБ", ПараметрыФормы); КонецПроцедуры -// Конец СтандартныеПодсистемы.ОбновлениеВерсииИБ -// СтандартныеПодсистемы.ДатыЗапретаИзменения +#Область ИнтернетПоддержкаПользователей_ОблачныйАрхив + &НаКлиенте -Процедура НастроитьДатыЗапретаИзменения(Команда) - - ОткрытьФорму("РегистрСведений.ДатыЗапретаИзменения.Форма.ДатыЗапретаИзменения"); - +Процедура ПодключитьСервисОблачныйАрхив(Команда) + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ОблачныйАрхив") Тогда + МодульОблачныйАрхивКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОблачныйАрхивКлиент"); + МодульОблачныйАрхивКлиент.ПодключитьСервисОблачныйАрхив(); + КонецЕсли; + КонецПроцедуры -// Конец СтандартныеПодсистемы.ДатыЗапретаИзменения + +&НаКлиенте +Процедура ОблачныйАрхивВосстановлениеИзРезервнойКопииНажатие(Элемент) + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ОблачныйАрхив") Тогда + МодульОблачныйАрхивКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОблачныйАрхивКлиент"); + МодульОблачныйАрхивКлиент.ВосстановлениеИзРезервнойКопии(); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ОблачныйАрхивНастройкаРезервногоКопированияНажатие(Элемент) + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ОблачныйАрхив") Тогда + МодульОблачныйАрхивКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОблачныйАрхивКлиент"); + МодульОблачныйАрхивКлиент.НастройкаРезервногоКопирования(); + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти #КонецОбласти @@ -378,6 +443,13 @@ //////////////////////////////////////////////////////////////////////////////// // Клиент +&НаКлиенте +Процедура ПриИзмененииРеквизитаПослеОтветаНаВопрос(Ответ, ПараметрыВыполнения) Экспорт + Если Ответ = "АктивныеПользователи" Тогда + СтандартныеПодсистемыКлиент.ОткрытьСписокАктивныхПользователей(); + КонецЕсли; +КонецПроцедуры + &НаКлиенте Процедура Подключаемый_ПриИзмененииРеквизита(Элемент, НеобходимоОбновлятьИнтерфейс = Истина) @@ -396,6 +468,35 @@ КонецПроцедуры +&НаКлиенте +Процедура Подключаемый_ПриИзмененииРежимаПолнотекстовогоПоиска(Элемент, ОбновлятьИнтерфейс = Истина) + + КонстантаИмя = ПриИзмененииРеквизитаСервер(Элемент.Имя); + + Если КонстантаИмя = "НеУдалосьУстановитьРежимПолнотекстовогоПоиска" Тогда + // Выдача предупреждающего сообщения. + ТекстВопроса = НСтр("ru = 'Для изменения режима полнотекстового поиска требуется завершение сеансов всех пользователей, кроме текущего.'"); + + Кнопки = Новый СписокЗначений; + Кнопки.Добавить("АктивныеПользователи", НСтр("ru = 'Активные пользователи'")); + Кнопки.Добавить(КодВозвратаДиалога.Отмена); + + Обработчик = Новый ОписаниеОповещения("ПриИзмененииРеквизитаПослеОтветаНаВопрос", ЭтотОбъект); + ПоказатьВопрос(Обработчик, ТекстВопроса, Кнопки, , "АктивныеПользователи"); + Возврат; + КонецЕсли; + + Если ОбновлятьИнтерфейс Тогда + ОбновитьИнтерфейс = Истина; + ПодключитьОбработчикОжидания("ОбновитьИнтерфейсПрограммы", 2, Истина); + КонецЕсли; + + Если КонстантаИмя <> "" Тогда + Оповестить("Запись_НаборКонстант", Новый Структура, КонстантаИмя); + КонецЕсли; + +КонецПроцедуры + &НаКлиенте Процедура ОбновитьИнтерфейсПрограммы() @@ -505,22 +606,57 @@ Иначе // Определение имени и запись значения реквизита в соответствующей константе из "НаборКонстант". // Используется для тех реквизитов формы, которые связаны с константами напрямую (в отношении один-к-одному). + Если РеквизитПутьКДанным = "ИспользоватьПолнотекстовыйПоиск" Тогда + Попытка + Если ИспользоватьПолнотекстовыйПоиск Тогда + ПолнотекстовыйПоиск.УстановитьРежимПолнотекстовогоПоиска(РежимПолнотекстовогоПоиска.Разрешить); + Иначе + ПолнотекстовыйПоиск.УстановитьРежимПолнотекстовогоПоиска(РежимПолнотекстовогоПоиска.Запретить); + КонецЕсли; + Исключение + ЗаписьЖурналаРегистрации( + НСтр("ru = 'Полнотекстовый поиск'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, + , + , + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + Возврат "НеУдалосьУстановитьРежимПолнотекстовогоПоиска"; + КонецПопытки; + КонстантаИмя = "ИспользоватьПолнотекстовыйПоиск"; + НаборКонстант.ИспользоватьПолнотекстовыйПоиск = ИспользоватьПолнотекстовыйПоиск; + // Включение/отключение зависимых регламентных заданий. + Изменения = Новый Структура("Использование", НаборКонстант.ИспользоватьПолнотекстовыйПоиск); + Задание = РегламентныеЗаданияНайтиПредопределенное("ОбновлениеИндексаППД"); + Если Задание <> Неопределено Тогда + РегламентныеЗаданияСервер.ИзменитьЗадание(Задание, Изменения); + КонецЕсли; + Задание = РегламентныеЗаданияНайтиПредопределенное("СлияниеИндексаППД"); + Если Задание <> Неопределено Тогда + РегламентныеЗаданияСервер.ИзменитьЗадание(Задание, Изменения); + КонецЕсли; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ФайловыеФункции") Тогда + Изменения.Использование = Изменения.Использование И НаборКонстант.ИзвлекатьТекстыФайловНаСервере; + Задание = РегламентныеЗаданияНайтиПредопределенное("ИзвлечениеТекста"); + Если Задание <> Неопределено Тогда + РегламентныеЗаданияСервер.ИзменитьЗадание(Задание, Изменения); + КонецЕсли; + КонецЕсли; + КонецЕсли; КонецЕсли; // Сохранения значения константы. - Если НРег(Лев(РеквизитПутьКДанным, 14)) = НРег("НаборКонстант.") Тогда + Если НРег(Лев(РеквизитПутьКДанным, 14)) = НРег("НаборКонстант.") Или РеквизитПутьКДанным = "ИспользоватьПолнотекстовыйПоиск" Тогда КонстантаМенеджер = Константы[КонстантаИмя]; КонстантаЗначение = НаборКонстант[КонстантаИмя]; Если КонстантаМенеджер.Получить() <> КонстантаЗначение Тогда - Если КонстантаИмя = "ИспользоватьПроверкуКонтрагентов" Тогда + Если КонстантаИмя = "ИспользоватьПроверкуКонтрагентов" + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСКонтрагентами") Тогда - // СтандартныеПодсистемы.РаботаСКонтрагентами ВключитьПроверку = КонстантаЗначение = 1; - ПроверкаКонтрагентовВызовСервера.ПриВключенииВыключенииПроверки(ВключитьПроверку); - // Конец СтандартныеПодсистемы.РаботаСКонтрагентами - + МодульПроверкаКонтрагентовВызовСервера = ОбщегоНазначения.ОбщийМодуль("ПроверкаКонтрагентовВызовСервера"); + МодульПроверкаКонтрагентовВызовСервера.ПриВключенииВыключенииПроверки(ВключитьПроверку); Иначе КонстантаМенеджер.Установить(КонстантаЗначение); КонецЕсли; @@ -539,18 +675,17 @@ Возврат; КонецЕсли; - // СтандартныеПодсистемы.ДатыЗапретаИзменения - Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьДатыЗапретаИзменения" - Или РеквизитПутьКДанным = "" Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДатыЗапретаИзменения") + И (РеквизитПутьКДанным = "НаборКонстант.ИспользоватьДатыЗапретаИзменения" + Или РеквизитПутьКДанным = "") Тогда Элементы.ГруппаДатыЗапретаИзмененияНастройка.Доступность = НаборКонстант.ИспользоватьДатыЗапретаИзменения; КонецЕсли; - // Конец СтандартныеПодсистемы.ДатыЗапретаИзменения - // СтандартныеПодсистемы.ОценкаПроизводительности - Если РеквизитПутьКДанным = "НаборКонстант.ВыполнятьЗамерыПроизводительности" - Или РеквизитПутьКДанным = "" Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОценкаПроизводительности") + И (РеквизитПутьКДанным = "НаборКонстант.ВыполнятьЗамерыПроизводительности" + Или РеквизитПутьКДанным = "") Тогда ЭлементОбработкаОценкаПроизводительности = Элементы.Найти("ОбработкаОценкаПроизводительности"); ЭлементОбработкаНастройкиОценкиПроизводительности = Элементы.Найти("ОбработкаНастройкиОценкиПроизводительности"); Если (ЭлементОбработкаОценкаПроизводительности <> Неопределено И ЭлементОбработкаНастройкиОценкиПроизводительности <> Неопределено И НаборКонстант.Свойство("ВыполнятьЗамерыПроизводительности")) Тогда @@ -558,10 +693,21 @@ ЭлементОбработкаНастройкиОценкиПроизводительности.Доступность = НаборКонстант.ВыполнятьЗамерыПроизводительности; КонецЕсли; КонецЕсли; - // Конец СтандартныеПодсистемы.ОценкаПроизводительности - // СтандартныеПодсистемы.УдалениеПомеченныхОбъектов - Если Элементы.УдалениеПомеченныхНастроитьРасписание.Видимость + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ПолнотекстовыйПоиск") Тогда + Если РеквизитПутьКДанным = "" Или РеквизитПутьКДанным = "ИспользоватьПолнотекстовыйПоиск" Тогда + МодульПолнотекстовыйПоискСервер = ОбщегоНазначения.ОбщийМодуль("ПолнотекстовыйПоискСервер"); + Если НаборКонстант.ИспользоватьПолнотекстовыйПоиск <> МодульПолнотекстовыйПоискСервер.ОперацииРазрешены() Тогда + ИспользоватьПолнотекстовыйПоиск = 2; + Иначе + ИспользоватьПолнотекстовыйПоиск = НаборКонстант.ИспользоватьПолнотекстовыйПоиск; + КонецЕсли; + Элементы.ГруппаУправлениеПолнотекстовымПоискомИИзвлечениемТекстовНастройка.Доступность = (ИспользоватьПолнотекстовыйПоиск = 1); + КонецЕсли; + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.УдалениеПомеченныхОбъектов") + И Элементы.УдалениеПомеченныхНастроитьРасписание.Видимость И (РеквизитПутьКДанным = "УдалениеПомеченныхРасписание" Или РеквизитПутьКДанным = "УдалениеПомеченныхИспользование" Или РеквизитПутьКДанным = "") Тогда @@ -575,11 +721,10 @@ КонецЕсли; Элементы.УдалениеПомеченныхПредставлениеРасписания.Заголовок = Представление; КонецЕсли; - // Конец СтандартныеПодсистемы.УдалениеПомеченныхОбъектов - // СтандартныеПодсистемы.ВерсионированиеОбъектов - Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьВерсионированиеОбъектов" - Или РеквизитПутьКДанным = "" Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ВерсионированиеОбъектов") + И (РеквизитПутьКДанным = "НаборКонстант.ИспользоватьВерсионированиеОбъектов" + Или РеквизитПутьКДанным = "") Тогда ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( Элементы, @@ -587,29 +732,25 @@ "Доступность", НаборКонстант.ИспользоватьВерсионированиеОбъектов); КонецЕсли; - // Конец СтандартныеПодсистемы.ВерсионированиеОбъектов - // СтандартныеПодсистемы.АдресныйКлассификатор - Если РеквизитПутьКДанным = "НаборКонстант.ИсточникДанныхАдресногоКлассификатора" - Или РеквизитПутьКДанным = "" Тогда - - Элементы.ГруппаАдресныйКлассификаторКоманды.Доступность = ПустаяСтрока(НаборКонстант.ИсточникДанныхАдресногоКлассификатора); + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") + И (РеквизитПутьКДанным = "НаборКонстант.ИсточникДанныхАдресногоКлассификатора" + Или РеквизитПутьКДанным = "") Тогда - КонецЕсли; - // Конец СтандартныеПодсистемы.АдресныйКлассификатор + Элементы.ГруппаАдресныйКлассификаторКоманды.Доступность = ПустаяСтрока(НаборКонстант.ИсточникДанныхАдресногоКлассификатора); + КонецЕсли; КонецПроцедуры -// СтандартныеПодсистемы.РезервноеКопированиеИБ &НаСервере Процедура ОбновитьНастройкиРезервногоКопирования() Если (РежимРаботы.Локальный Или РежимРаботы.Автономный) И РежимРаботы.ЭтоАдминистраторСистемы Тогда - Элементы.ПояснениеНастройкаРезервногоКопирования.Заголовок = РезервноеКопированиеИБСервер.ТекущаяНастройкаРезервногоКопирования(); + МодульРезервноеКопированиеИБСервер = ОбщегоНазначения.ОбщийМодуль("РезервноеКопированиеИБСервер"); + Элементы.НастройкаРезервногоКопированияИБ.РасширеннаяПодсказка.Заголовок = МодульРезервноеКопированиеИБСервер.ТекущаяНастройкаРезервногоКопирования(); КонецЕсли; КонецПроцедуры -// Конец СтандартныеПодсистемы.РезервноеКопированиеИБ &НаСервере Функция РегламентныеЗаданияНайтиПредопределенное(ИмяПредопределенного) @@ -622,7 +763,6 @@ Возврат Задание; КонецФункции -// СтандартныеПодсистемы.ЦентрМониторинга &НаСервереБезКонтекста Функция ПолучитьПереключательОтправкиДанных(ВключитьЦентрМониторинга, ЦентрОбработкиИнформацииОПрограмме) Состояние = ?(ВключитьЦентрМониторинга, "1", "0") + ?(ЦентрОбработкиИнформацииОПрограмме, "1", "0"); @@ -639,35 +779,7 @@ Возврат Результат; КонецФункции -// Конец СтандартныеПодсистемы.ЦентрМониторинга -// СтандартныеПодсистемы.ЦентрМониторинга -&НаСервере -Процедура УстановитьДоступностьЦентрМониторингаНаСервере(Параметр) - Если Параметр = 0 Тогда - Элементы.ЦентрМониторингаАдресСервиса.Доступность = Ложь; - ИначеЕсли Параметр = 1 Тогда - Элементы.ЦентрМониторингаАдресСервиса.Доступность = Истина; - ИначеЕсли Параметр = 2 Тогда - Элементы.ЦентрМониторингаАдресСервиса.Доступность = Ложь; - КонецЕсли; -КонецПроцедуры -// Конец СтандартныеПодсистемы.ЦентрМониторинга - -// СтандартныеПодсистемы.ЦентрМониторинга -&НаКлиенте -Процедура УстановитьДоступностьЦентрМониторингаНаКлиенте(Параметр) - Если Параметр = 0 Тогда - Элементы.ЦентрМониторингаАдресСервиса.Доступность = Ложь; - ИначеЕсли Параметр = 1 Тогда - Элементы.ЦентрМониторингаАдресСервиса.Доступность = Истина; - ИначеЕсли Параметр = 2 Тогда - Элементы.ЦентрМониторингаАдресСервиса.Доступность = Ложь; - КонецЕсли; -КонецПроцедуры -// Конец СтандартныеПодсистемы.ЦентрМониторинга - -// СтандартныеПодсистемы.ЦентрМониторинга &НаКлиенте Функция ПолучитьАдресСервиса() @@ -706,9 +818,7 @@ Возврат АдресСервиса; КонецФункции -// Конец СтандартныеПодсистемы.ЦентрМониторинга -// СтандартныеПодсистемы.ЦентрМониторинга &НаСервереБезКонтекста Функция ПолучитьПараметрыЦентраМониторинга() МодульЦентрМониторингаСлужебный = ОбщегоНазначения.ОбщийМодуль("ЦентрМониторингаСлужебный"); @@ -721,9 +831,7 @@ Возврат ПараметрыЦентраМониторинга; КонецФункции -// Конец СтандартныеПодсистемы.ЦентрМониторинга -// СтандартныеПодсистемы.ЦентрМониторинга &НаСервереБезКонтекста Процедура РазрешитьОтправлятьДанныеПриИзмененииНаСервере(ПараметрыЦентраМониторинга) МодульЦентрМониторингаСлужебный = ОбщегоНазначения.ОбщийМодуль("ЦентрМониторингаСлужебный"); @@ -744,9 +852,7 @@ МодульЦентрМониторингаСлужебный.УдалитьРегламентноеЗаданиеВнешнийВызов("СборИОтправкаСтатистики"); КонецЕсли; КонецПроцедуры -// Конец СтандартныеПодсистемы.ЦентрМониторинга -// СтандартныеПодсистемы.ЦентрМониторинга &НаСервереБезКонтекста Процедура ЦентрМониторингаАдресСервисаПриИзмененииНаСервере(СтруктураАдреса) ПараметрыЦентраМониторинга = Новый Структура(); @@ -758,14 +864,104 @@ МодульЦентрМониторингаСлужебный = ОбщегоНазначения.ОбщийМодуль("ЦентрМониторингаСлужебный"); МодульЦентрМониторингаСлужебный.УстановитьПараметрыЦентраМониторингаВнешнийВызов(ПараметрыЦентраМониторинга); КонецПроцедуры -// Конец СтандартныеПодсистемы.ЦентрМониторинга -// СтандартныеПодсистемы.РегламентныеЗадания &НаСервере Процедура РазблокироватьРаботуСВнешнимиРесурсамиНаСервере() Элементы.ГруппаБлокировкаРаботыСВнешнимиРесурсами.Видимость = Ложь; - РегламентныеЗаданияСлужебный.РазрешитьРаботуСВнешнимиРесурсами(); + МодульРегламентныеЗаданияСлужебный = ОбщегоНазначения.ОбщийМодуль("РегламентныеЗаданияСлужебный"); + МодульРегламентныеЗаданияСлужебный.РазрешитьРаботуСВнешнимиРесурсами(); +КонецПроцедуры + +#Область ИнтернетПоддержкаПользователей_ОблачныйАрхив + +&НаКлиенте +Процедура ПроверитьСостояниеОблачногоАрхива() + + #Если НЕ ВебКлиент Тогда + + ТипСтруктура = Тип("Структура"); + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ОблачныйАрхив") Тогда + ЭтотОбъект.ПараметрыОблачногоАрхива.ТекущийСчетчикПроверкиФоновогоЗадания = ЭтотОбъект.ПараметрыОблачногоАрхива.ТекущийСчетчикПроверкиФоновогоЗадания + 1; + Если ЭтотОбъект.ПараметрыОблачногоАрхива.ТекущийСчетчикПроверкиФоновогоЗадания > 12 Тогда // Прошла 2 минуты - прервать + // Завершить фоновое задание и отключить обработчики ожидания + ЗавершитьФоновоеЗаданиеОблачногоАрхиваНаСервере(ЭтотОбъект.ПараметрыОблачногоАрхива.ИдентификаторФоновогоЗадания); + ОтключитьОбработчикОжидания("ПроверитьСостояниеОблачногоАрхива"); + ТекстСообщения = НСтр("ru='Произошли ошибки при подключении к подсистеме Облачный архив: + |Сбор данных превысил допустимое время.'"); + ЭтотОбъект.ПараметрыОблачногоАрхива.Вставить("ОшибкиПодключения", ТекстСообщения); + Элементы.ДекорацияОблачныйАрхивОшибки.Заголовок = ЭтотОбъект.ПараметрыОблачногоАрхива.ОшибкиПодключения; + Элементы.СтраницыСостоянийОблачныйАрхив.ТекущаяСтраница = Элементы.СтраницаОблачныйАрхивОшибки; + Иначе + Если ЭтотОбъект.ПараметрыОблачногоАрхива.ИдентификаторФоновогоЗадания <> Неопределено Тогда + Прогресс = ПроверитьСостояниеОблачногоАрхиваНаСервере(ЭтотОбъект.ПараметрыОблачногоАрхива.ИдентификаторФоновогоЗадания); + // Ключи переменной Прогресс: + // * Процент; + // * Текст; + // * ДополнительныеПараметры - Структура с ключами: + // ** КодСостояния - Число (код ошибки) или Строка ("Завершено без ошибок", "Завершено с ошибками"); + // ** ОписаниеРезультата - Неопределено (если "Завершено без ошибок") или текст ошибки; + Если ТипЗнч(Прогресс) = ТипСтруктура Тогда + Если Прогресс.Свойство("Процент") И Прогресс.Свойство("Текст") Тогда + ЭтотОбъект.ПрогрессПроверкиОблачногоАрхива = Прогресс.Процент; + Элементы.ДекорацияПрогрессПроверкиОблачногоАрхиваОписание.Заголовок = Прогресс.Текст; + КонецЕсли; + Если Прогресс.Свойство("ДополнительныеПараметры") + И (ТипЗнч(Прогресс.ДополнительныеПараметры) = ТипСтруктура) Тогда + Если Прогресс.ДополнительныеПараметры.Свойство("КодСостояния") Тогда + Если Прогресс.ДополнительныеПараметры.КодСостояния = "Завершено без ошибок" Тогда // Идентификатор. + МодульОблачныйАрхивВызовСервера = ОбщегоНазначенияКлиент.ОбщийМодуль("ОблачныйАрхивВызовСервера"); + ПараметрыОкруженияСервер = МодульОблачныйАрхивВызовСервера.ПолучитьНастройкиОблачногоАрхива("ПараметрыОкруженияСервер"); + ИнформацияОКлиенте = МодульОблачныйАрхивВызовСервера.ПолучитьНастройкиОблачногоАрхива("ИнформацияОКлиенте", ИмяКомпьютера()); + АктивацииАгентовКопирования = МодульОблачныйАрхивВызовСервера.ПолучитьНастройкиОблачногоАрхива("АктивацииАгентовКопирования", ИмяКомпьютера()); + МодульОблачныйАрхивКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОблачныйАрхивКлиент"); + МодульОблачныйАрхивКлиент.ПанельАдминистрированияБСП_ПереключитьНаПравильнуюСтраницу( + ЭтотОбъект, + Новый Структура("ПараметрыОкруженияСервер, ИнформацияОКлиенте, АктивацииАгентовКопирования", + ПараметрыОкруженияСервер, + ИнформацияОКлиенте, + АктивацииАгентовКопирования)); + ИначеЕсли Прогресс.ДополнительныеПараметры.КодСостояния = "Завершено с ошибками" Тогда // Идентификатор. + Элементы.ДекорацияОблачныйАрхивОшибки.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru='Произошли ошибки при подключении к подсистеме Облачный архив: + |%1'"), + Прогресс.ДополнительныеПараметры.ОписаниеРезультата); + Элементы.СтраницыСостоянийОблачныйАрхив.ТекущаяСтраница = Элементы.СтраницаОблачныйАрхивОшибки; + КонецЕсли; + КонецЕсли; + КонецЕсли; + КонецЕсли; + КонецЕсли; + ПодключитьОбработчикОжидания("ПроверитьСостояниеОблачногоАрхива", 10, Истина); + КонецЕсли; + КонецЕсли; + + #КонецЕсли + +КонецПроцедуры + +&НаСервереБезКонтекста +Функция ПроверитьСостояниеОблачногоАрхиваНаСервере(ИдентификаторФоновогоЗадания) + + Возврат ДлительныеОперации.ПрочитатьПрогресс(ИдентификаторФоновогоЗадания); + +КонецФункции + +// Завершает фоновое задание по его идентификатору. +// +// Параметры: +// Нет. +// +&НаСервереБезКонтекста +Процедура ЗавершитьФоновоеЗаданиеОблачногоАрхиваНаСервере(ИдентификаторФоновогоЗадания) + + ФоновоеЗадание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(ИдентификаторФоновогоЗадания); + Если ФоновоеЗадание <> Неопределено Тогда + ФоновоеЗадание.Отменить(); + КонецЕсли; + КонецПроцедуры -// Конец СтандартныеПодсистемы.РегламентныеЗадания #КонецОбласти + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоискИУстановкаОбновлений/Form.form b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоискИУстановкаОбновлений/Form.form deleted file mode 100644 index cb74306b2..000000000 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоискИУстановкаОбновлений/Form.form +++ /dev/null @@ -1,905 +0,0 @@ - - - - ГруппаЗаголовок - 45 - - ОписаниеРаздела - 47 - - <key>ru</key> - <value>Поиск и установка обновлений программы. Информация о предыдущих обновлениях.</value> - - true - true - - true - - - ОписаниеРазделаРасширеннаяПодсказка - 49 - Label - true - true - - Left - - - - ОписаниеРазделаКонтекстноеМеню - 48 - true - - Label - 78 - true - true - false - false - - Left - Top - - - - Декорация - 50 - true - true - - true - - - ДекорацияРасширеннаяПодсказка - 52 - Label - true - true - - Left - - - - ДекорацияКонтекстноеМеню - 51 - true - - Label - true - true - true - - Left - - - - ГруппаСправка - 53 - - Справка - 55 - true - true - - true - - - СправкаExtendedTooltip - 56 - Label - true - true - - Left - - - Form.StandardCommand.Help - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - false - false - - ГруппаСправкаExtendedTooltip - 54 - Label - true - true - - Left - - - CommandBar - - Left - - - true - true - - true - - - ГруппаЗаголовокExtendedTooltip - 46 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаОбновлениеИОписаниеИзменений - 1 - - ГруппаОбновлениеИОписаниеИзмененийПерваяСтрока - 3 - - ГруппаОбработкаОбновлениеКонфигурации - 5 - - ОбработкаОбновлениеКонфигурации - 7 - - <key>ru</key> - <value>Поиск и установка обновлений</value> - - true - true - - true - - - ОбработкаОбновлениеКонфигурацииExtendedTooltip - 8 - Label - true - true - - Left - - - Hyperlink - DataProcessor.ПоискИУстановкаОбновлений.StandardCommand.Open - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеОбработкаОбновлениеКонфигурации - 9 - - <key>ru</key> - <value>Получение информации о последних обновлениях и автоматическая установка обновлений сразу, через указанное время, при завершении работы.</value> - - true - true - - true - - - ПояснениеОбработкаОбновлениеКонфигурацииExtendedTooltip - 11 - Label - true - true - - Left - - - - ПояснениеОбработкаОбновлениеКонфигурацииКонтекстноеМеню - 10 - true - - Label - true - 3 - true - - Style.ПоясняющийТекст - - - Left - Top - - - true - true - - true - - 43 - false - - ГруппаОбработкаОбновлениеКонфигурацииExtendedTooltip - 6 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаНастройкиОбновленияПрограммы - 12 - - НастройкаОбновленияПрограммы - 14 - - <key>ru</key> - <value>Настройка обновления программы через Интернет</value> - - true - true - - true - - - НастройкаОбновленияПрограммыРасширеннаяПодсказка - 15 - Label - true - true - - Left - - - Hyperlink - Form.Command.НастройкаОбновленияПрограммы - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеНастройкаОбновленияПрограммы - 16 - - <key>ru</key> - <value>Настройка обновления программы через Интернет</value> - - true - true - - true - - - ПояснениеНастройкаОбновленияПрограммыРасширеннаяПодсказка - 18 - Label - true - true - - Left - - - - ПояснениеНастройкаОбновленияПрограммыКонтекстноеМеню - 17 - true - - Label - true - 3 - true - - Style.ПоясняющийТекст - - - Left - Top - - - true - true - - true - - 43 - - ГруппаНастройкиОбновленияПрограммыРасширеннаяПодсказка - 13 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - ГруппаОбновлениеИОписаниеИзмененийПерваяСтрокаРасширеннаяПодсказка - 4 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаОбновлениеИОписаниеИзмененийВтораяСтрока - 19 - - ГруппаОткрытьОписаниеИзмененийСистемы - 21 - - ОткрытьОписаниеИзмененийСистемы - 23 - true - true - - true - - - ОткрытьОписаниеИзмененийСистемыExtendedTooltip - 24 - Label - true - true - - Left - - - Hyperlink - CommonForm.ОписаниеИзмененийПрограммы.StandardCommand.Open - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеОткрытьОписаниеИзмененийСистемы - 25 - - <key>ru</key> - <value>История изменений по версиям программы.</value> - - true - true - - true - - - ПояснениеОткрытьОписаниеИзмененийСистемыExtendedTooltip - 27 - Label - true - true - - Left - - - - ПояснениеОткрытьОписаниеИзмененийСистемыКонтекстноеМеню - 26 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа открыть описание изменений системы</value> - - 43 - false - - ГруппаОткрытьОписаниеИзмененийСистемыExtendedTooltip - 22 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаОтложеннаяОбработкаДанных - 28 - - РезультатыОбновленияИДополнительнаяОбработкаДанных - 30 - true - true - - true - - - РезультатыОбновленияИДополнительнаяОбработкаДанныхExtendedTooltip - 31 - Label - true - true - - Left - - - Hyperlink - Form.Command.РезультатыОбновленияИДополнительнаяОбработкаДанных - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеОтложеннаяОбработкаДанных - 32 - - <key>ru</key> - <value>Сведения о ходе обновления версии программы, отложенное выполнение дополнительных процедур обработки данных.</value> - - true - true - - true - - - ПояснениеОтложеннаяОбработкаДанныхExtendedTooltip - 34 - Label - true - true - - Left - - - - ПояснениеОтложеннаяОбработкаДанныхКонтекстноеМеню - 33 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа отложенная обработка данных</value> - - 43 - - ГруппаОтложеннаяОбработкаДанныхExtendedTooltip - 29 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа обновление и описание изменений вторая строка</value> - - - ru - Группа обновление и описание изменений вторая строка - - - ГруппаОбновлениеИОписаниеИзмененийВтораяСтрокаРасширеннаяПодсказка - 20 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаОбновлениеИОписаниеИзмененийТретьяСтрока - 35 - - ГруппаДетализироватьОбновлениеИБВЖурналеРегистрации - 37 - - ДетализироватьОбновлениеИБВЖурналеРегистрации - 39 - - <key>ru</key> - <value>Детализировать ход обновления в журнале регистрации</value> - - true - true - - true - - - НаборКонстант.ДетализироватьОбновлениеИБВЖурналеРегистрации - - Right - - OnChange - ДетализироватьОбновлениеИБВЖурналеРегистрацииПриИзменении - - - ДетализироватьОбновлениеИБВЖурналеРегистрацииExtendedTooltip - 41 - Label - true - true - - Left - - - - ДетализироватьОбновлениеИБВЖурналеРегистрацииКонтекстноеМеню - 40 - true - - CheckBoxField - Enter - true - Left - true - - - - ПояснениеДетализироватьОбновлениеИБВЖурналеРегистрации - 42 - - <key>ru</key> - <value>Записывать в журнал регистрации подробную информацию о ходе выполнения обновления.</value> - - true - true - - true - - - ПояснениеДетализироватьОбновлениеИБВЖурналеРегистрацииExtendedTooltip - 44 - Label - true - true - - Left - - - - ПояснениеДетализироватьОбновлениеИБВЖурналеРегистрацииКонтекстноеМеню - 43 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - 43 - false - - ГруппаДетализироватьОбновлениеИБВЖурналеРегистрацииExtendedTooltip - 38 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа обновление и описание изменений третья строка</value> - - - ru - Группа обновление и описание изменений третья строка - - - ГруппаОбновлениеИОписаниеИзмененийТретьяСтрокаРасширеннаяПодсказка - 36 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Обновление версии программы</value> - - - System.DefaultGUIFont - 11.0 - true - false - false - false - - 86 - false - - ГруппаОбновлениеИОписаниеИзмененийExtendedTooltip - 2 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Equal - auto - Auto - Auto - - - - ФормаКоманднаяПанель - -1 - Left - - - NotificationProcessing - ОбработкаОповещения - - - OnCreateAtServer - ПриСозданииНаСервере - - - OnClose - ПриЗакрытии - - DontBlock - true - true - true - Vertical - true - true - true - auto - true - - НаборКонстант - - <key>ru</key> - <value>Набор констант</value> - - 1 - - ConstantsSet - - - true - - - true - -
      true
      -
      - - РежимРаботы - - <key>ru</key> - <value>Режим работы (фиксированная структура)</value> - - 2 - - - true - - - true - - - - НастройкаОбновленияПрограммы - - <key>ru</key> - <value>Настройка обновления программы</value> - - 1 - - ru - Настройка обновления программы - - - true - - - - НастройкаОбновленияПрограммы - - - DontUse - Auto - - - РезультатыОбновленияИДополнительнаяОбработкаДанных - - <key>ru</key> - <value>Результаты обновления и дополнительная обработка данных</value> - - 2 - - ru - Результаты обновления и дополнительная обработка данных - - - true - - - - ОтложеннаяОбработкаДанных - - - DontUse - Auto - - - - - - -
      diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоискИУстановкаОбновлений/Help/ru.html b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоискИУстановкаОбновлений/Help/ru.html deleted file mode 100644 index fbebb215c..000000000 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоискИУстановкаОбновлений/Help/ru.html +++ /dev/null @@ -1,15 +0,0 @@ - -

      В данной панели осуществляется настройка параметров обновления программы.

      -

      Обновление версии программы

      - - - - - - -
      -
    • Поиск и установка обновлений
    • Получение информации о последних обновлениях на пользовательском сайте в сети Интернет и помощник автоматической установки обновлений программы.
      -
    • Настройка обновления программы через Интернет
    • Настройте обновление программы через интернет, при этом автоматическая проверка обновлений отключена.
      -
    • Описание изменений программы
    • Просмотр списка изменений в установленной версии программы и рекомендаций по обновлению программы.
      -
    • Результаты обновления и дополнительная обработка данных
    • Сведения о ходе обновления версии программы, отложенное выполнение дополнительных процедур обработки данных
      -
    • Детализировать ход обновления в журнале регистрации
    • При включенной настройке в журнал регистрации записываются выполняемые обработчики обновления с указанием времени выполнения.
      \ No newline at end of file diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоискИУстановкаОбновлений/Module.bsl b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоискИУстановкаОбновлений/Module.bsl deleted file mode 100644 index fe7b6dbe6..000000000 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/ПоискИУстановкаОбновлений/Module.bsl +++ /dev/null @@ -1,177 +0,0 @@ -#Область ОписаниеПеременных - -&НаКлиенте -Перем ОбновитьИнтерфейс; - -#КонецОбласти - -#Область ОбработчикиСобытийФормы - -&НаСервере -Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - - Если Параметры.Свойство("АвтоТест") Тогда - Возврат; - КонецЕсли; - - // Значения реквизитов формы - РежимРаботы = ОбщегоНазначенияПовтИсп.РежимРаботыПрограммы(); - РежимРаботы = Новый ФиксированнаяСтруктура(РежимРаботы); - - // СтандартныеПодсистемы.ОбновлениеКонфигурации - Элементы.ГруппаОбработкаОбновлениеКонфигурации.Видимость = РежимРаботы.Локальный И РежимРаботы.ЭтоАдминистраторСистемы И Не РежимРаботы.ЭтоLinuxКлиент; - Элементы.ГруппаНастройкиОбновленияПрограммы.Видимость = РежимРаботы.Локальный И РежимРаботы.ЭтоАдминистраторСистемы И Не РежимРаботы.ЭтоLinuxКлиент; - ОбновитьНастройкиОбновленияКонфигурации(); - // Конец СтандартныеПодсистемы.ОбновлениеКонфигурации - - // СтандартныеПодсистемы.ОбновлениеВерсииИБ - Элементы.ГруппаДетализироватьОбновлениеИБВЖурналеРегистрации.Видимость = РежимРаботы.ЭтоАдминистраторСистемы; - // Конец СтандартныеПодсистемы.ОбновлениеВерсииИБ - -КонецПроцедуры - -&НаКлиенте -Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) - - // СтандартныеПодсистемы.ОбновлениеКонфигурации - Если ИмяСобытия = "ЗакрытаФормаНастройкиОбновленияКонфигурации" Тогда - ОбновитьНастройкиОбновленияКонфигурации(); - КонецЕсли; - // Конец СтандартныеПодсистемы.ОбновлениеКонфигурации - -КонецПроцедуры - -&НаКлиенте -Процедура ПриЗакрытии() - ОбновитьИнтерфейсПрограммы(); -КонецПроцедуры - -#КонецОбласти - -#Область ОбработчикиСобытийЭлементовШапкиФормы - -// СтандартныеПодсистемы.ОбновлениеВерсииИБ -&НаКлиенте -Процедура ДетализироватьОбновлениеИБВЖурналеРегистрацииПриИзменении(Элемент) - Подключаемый_ПриИзмененииРеквизита(Элемент); -КонецПроцедуры -// Конец СтандартныеПодсистемы.ОбновлениеВерсииИБ - -#КонецОбласти - -#Область ОбработчикиКомандФормы - -// СтандартныеПодсистемы.ОбновлениеВерсииИБ -&НаКлиенте -Процедура ОтложеннаяОбработкаДанных(Команда) - ПараметрыФормы = Новый Структура("ОткрытиеИзПанелиАдминистрирования", Истина); - ОткрытьФорму("Обработка.РезультатыОбновленияПрограммы.Форма.ИндикацияХодаОтложенногоОбновленияИБ", ПараметрыФормы); -КонецПроцедуры -// Конец СтандартныеПодсистемы.ОбновлениеВерсииИБ - -// СтандартныеПодсистемы.ОбновлениеКонфигурации -&НаКлиенте -Процедура НастройкаОбновленияПрограммы(Команда) - - ОткрытьФорму("Обработка.ПоискИУстановкаОбновлений.Форма.НастройкаРасписания"); - -КонецПроцедуры -// Конец СтандартныеПодсистемы.ОбновлениеКонфигурации - -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -// СтандартныеПодсистемы.ОбновлениеКонфигурации -&НаСервере -Процедура ОбновитьНастройкиОбновленияКонфигурации() - - НастройкиОбновленияКонфигурации = ОбновлениеКонфигурации.ПолучитьСтруктуруНастроекПомощника(); - - ЗаголовокОбновленияПрограммы = НСтр("ru = 'Автоматическая проверка обновлений отключена.'"); - Если НастройкиОбновленияКонфигурации.ПроверятьНаличиеОбновленияПриЗапуске = 2 Тогда - ЗаголовокОбновленияПрограммы = НСтр("ru = 'Автоматическая проверка обновлений выполняется при каждом запуске программы.'"); - ИначеЕсли НастройкиОбновленияКонфигурации.ПроверятьНаличиеОбновленияПриЗапуске = 1 Тогда - ЗаголовокОбновленияПрограммы = НСтр("ru = 'Автоматическая проверка обновлений выполняется по расписанию: %1.'"); - Расписание = ОбщегоНазначенияКлиентСервер.СтруктураВРасписание(НастройкиОбновленияКонфигурации.РасписаниеПроверкиНаличияОбновления); - ЗаголовокОбновленияПрограммы = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ЗаголовокОбновленияПрограммы, Расписание); - КонецЕсли; - - Элементы.ПояснениеНастройкаОбновленияПрограммы.Заголовок = ЗаголовокОбновленияПрограммы; - -КонецПроцедуры -// Конец СтандартныеПодсистемы.ОбновлениеКонфигурации - -&НаКлиенте -Процедура ОбновитьИнтерфейсПрограммы() - - Если ОбновитьИнтерфейс = Истина Тогда - ОбновитьИнтерфейс = Ложь; - ОбщегоНазначенияКлиент.ОбновитьИнтерфейсПрограммы(); - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_ПриИзмененииРеквизита(Элемент, ОбновлятьИнтерфейс = Истина) - - КонстантаИмя = ПриИзмененииРеквизитаСервер(Элемент.Имя); - - ОбновитьПовторноИспользуемыеЗначения(); - - Если ОбновлятьИнтерфейс Тогда - ОбновитьИнтерфейс = Истина; - ПодключитьОбработчикОжидания("ОбновитьИнтерфейсПрограммы", 2, Истина); - КонецЕсли; - - Если КонстантаИмя <> "" Тогда - Оповестить("Запись_НаборКонстант", Новый Структура, КонстантаИмя); - КонецЕсли; - -КонецПроцедуры - -&НаСервере -Функция ПриИзмененииРеквизитаСервер(ИмяЭлемента) - - РеквизитПутьКДанным = Элементы[ИмяЭлемента].ПутьКДанным; - - КонстантаИмя = СохранитьЗначениеРеквизита(РеквизитПутьКДанным); - - ОбновитьПовторноИспользуемыеЗначения(); - - Возврат КонстантаИмя; -КонецФункции - -&НаСервере -Функция СохранитьЗначениеРеквизита(РеквизитПутьКДанным) - - // Сохранение значений реквизитов, не связанных с константами напрямую. - Если РеквизитПутьКДанным = "" Тогда - Возврат ""; - КонецЕсли; - - // Определение имени константы. - КонстантаИмя = ""; - Если НРег(Лев(РеквизитПутьКДанным, 14)) = НРег("НаборКонстант.") Тогда - // Если путь к данным реквизита указан через "НаборКонстант". - КонстантаИмя = Сред(РеквизитПутьКДанным, 15); - Иначе - // Определение имени и запись значения реквизита в соответствующей константе из "НаборКонстант". - // Используется для тех реквизитов формы, которые связаны с константами напрямую (в отношении один-к-одному). - КонецЕсли; - - // Сохранения значения константы. - Если КонстантаИмя <> "" Тогда - КонстантаМенеджер = Константы[КонстантаИмя]; - КонстантаЗначение = НаборКонстант[КонстантаИмя]; - - Если КонстантаМенеджер.Получить() <> КонстантаЗначение Тогда - КонстантаМенеджер.Установить(КонстантаЗначение); - КонецЕсли; - КонецЕсли; - - Возврат КонстантаИмя; - -КонецФункции - -#КонецОбласти \ No newline at end of file diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиСинхронизацииДанных/Form.form b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/СинхронизацияДанных/Form.form similarity index 69% rename from SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиСинхронизацииДанных/Form.form rename to SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/СинхронизацияДанных/Form.form index 197d9c29b..9245be0b5 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиСинхронизацииДанных/Form.form +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/СинхронизацияДанных/Form.form @@ -1,5 +1,5 @@ - + ГруппаЗаголовок 2001 @@ -8,8 +8,7 @@ 1567 <key>ru</key> - <value>Настройка синхронизации данных с другими программами -и организация совместной работы в распределенной информационной базе.</value> + <value>Настройка синхронизации данных с другими программами и организация совместной работы в распределенной информационной базе.</value> true true @@ -32,47 +31,12 @@ true Label - 78 - true true - false - false Left Top - - Декорация1 - 2004 - true - true - - true - - - Декорация1ExtendedTooltip - 2015 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 2005 - true - - Label - true - true - true - - Left - - ГруппаСправка 2002 @@ -107,8 +71,6 @@ true - false - false ГруппаСправкаExtendedTooltip 2016 @@ -149,7 +111,7 @@
      - Группа4 + ГруппаОсновныеНастройки 1217 ГруппаИспользоватьСинхронизациюДанных @@ -170,6 +132,7 @@ НаборКонстант.ИспользоватьСинхронизациюДанных Right + ShowBottom OnChange ИспользоватьСинхронизациюДанныхПриИзменении @@ -177,8 +140,11 @@ ИспользоватьСинхронизациюДанныхРасширеннаяПодсказка 2020 + + <key>ru</key> + <value>Синхронизация данных с другими программами.</value> + Label - true true Left @@ -196,43 +162,6 @@ true - - ПояснениеИспользоватьОбменДанными - 1222 - - <key>ru</key> - <value>Синхронизация данных с другими программами.</value> - - true - true - - true - - - ПояснениеИспользоватьОбменДаннымиExtendedTooltip - 2021 - Label - true - true - - Left - - - - ПояснениеИспользоватьОбменДаннымиКонтекстноеМеню - 1223 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -242,10 +171,8 @@ ru Группа использовать синхронизацию данных - - ru - Группа использовать синхронизацию данных - + 43 + false ГруппаИспользоватьСинхронизациюДанныхExtendedTooltip 2019 @@ -280,6 +207,10 @@ НастройкиСинхронизацииДанныхExtendedTooltip 2023 + + <key>ru</key> + <value>Настройка и выполнение синхронизации данных с другими программами.</value> + Label true true @@ -294,45 +225,9 @@ true true UserCmds + ShowBottom Auto - - ПояснениеНастройкиСинхронизацииДанных - 1225 - - <key>ru</key> - <value>Настройка и выполнение синхронизации данных с другими программами.</value> - - true - true - - true - - - ПояснениеНастройкиСинхронизацииДанныхExtendedTooltip - 2024 - Label - true - true - - Left - - - - ПояснениеНастройкиСинхронизацииДанныхКонтекстноеМеню - 1226 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -342,11 +237,8 @@ ru Группа настройки синхронизации данных - - ru - Группа настройки синхронизации данных - 43 + false ГруппаНастройкиСинхронизацииДанныхExtendedTooltip 2022 @@ -372,10 +264,12 @@ true - 86 - false + + <key>ru</key> + <value>Группа основные настройки</value> + - Группа4ExtendedTooltip + ГруппаОсновныеНастройкиРасширеннаяПодсказка 2018 Label true @@ -416,6 +310,7 @@ НаборКонстант.ИспользоватьДатыЗапретаЗагрузки Right + ShowBottom OnChange Подключаемый_ПриИзмененииРеквизита @@ -423,8 +318,12 @@ ИспользоватьДатыЗапретаЗагрузкиРасширеннаяПодсказка 2057 + + <key>ru</key> + <value>Запрет загрузки данных прошлых периодов из других программ. +Не влияет на распределенные информационные базы.</value> + Label - true true Left @@ -442,44 +341,6 @@ true - - ИспользоватьДатыЗапретаЗагрузкиПояснение - 2058 - - <key>ru</key> - <value>Запрет загрузки данных прошлых периодов из других программ. -Не влияет на распределенные информационные базы.</value> - - true - true - - true - - - ИспользоватьДатыЗапретаЗагрузкиПояснениеРасширеннаяПодсказка - 2060 - Label - true - true - - Left - - - - ИспользоватьДатыЗапретаЗагрузкиПояснениеКонтекстноеМеню - 2059 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -516,7 +377,7 @@ 2061 НастроитьДатыЗапретаЗагрузки - 2063 + 2065 <key>ru</key> <value>Настроить</value> @@ -528,7 +389,7 @@ </userVisible> <extendedTooltip> <name>НастроитьДатыЗапретаЗагрузкиРасширеннаяПодсказка</name> - <id>2064</id> + <id>2066</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -537,13 +398,12 @@ </extInfo> </extendedTooltip> <type>Hyperlink</type> - <commandName>Form.Command.НастроитьДатыЗапретаЗагрузки</commandName> + <commandName>InformationRegister.ДатыЗапретаИзменения.Command.ДатыЗапретаЗагрузкиДанных</commandName> <buttonImportance>Normal</buttonImportance> <representation>Auto</representation> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <placementArea>UserCmds</placementArea> - <toolTipRepresentation>None</toolTipRepresentation> <representationInContextMenu>Auto</representationInContextMenu> </items> <visible>true</visible> @@ -586,8 +446,6 @@ <key>ru</key> <value>Группа даты запрета загрузки</value> - 86 - false ГруппаДатыЗапретаЗагрузкиРасширеннаяПодсказка 2052 @@ -610,75 +468,42 @@ - Группа5 + ГруппаРезультатов 2000 ГруппаРезультатовСинхронизацииДанных 2008 РезультатыСинхронизацииДанных - 2009 + 2067 true true true - РезультатыСинхронизацииДанныхExtendedTooltip - 2027 + РезультатыСинхронизацииДанныхРасширеннаяПодсказка + 2068 + + <key>ru</key> + <value>Просмотр непроведенных документов, незаполненных реквизитов, конфликтов и непринятых по дате запрета.</value> + Label - true true Left Hyperlink - Form.Command.РезультатыСинхронизацииДанных + CommonCommand.ПредупрежденияПриСинхронизацииДанных Normal Auto true true UserCmds + ShowBottom Auto - - ПояснениеРезультатыСинхронизацииДанных - 2011 - - <key>ru</key> - <value>Просмотр непроведенных документов, незаполненных реквизитов, конфликтов и непринятых по дате запрета.</value> - - true - true - - true - - - ПояснениеРезультатыСинхронизацииДанныхExtendedTooltip - 2028 - Label - true - true - - Left - - - - ПояснениеРезультатыСинхронизацииДанныхКонтекстноеМеню - 2012 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -688,10 +513,6 @@ ru Группа результатов синхронизации данных - - ru - Группа результатов синхронизации данных - 43 false @@ -714,122 +535,15 @@ Auto - true - true - - true - - 86 - false - - Группа5ExtendedTooltip - 2025 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Equal - Auto - Auto - - - - Группа1 - 2010 - ГруппаПрефиксУзлаРаспределеннойИнформационнойБазы - 1993 - - Группа3 - 1994 - - ПрефиксУзлаРаспределеннойИнформационнойБазы - 1995 - - <key>ru</key> - <value>Префикс этой информационной базы</value> - - true - true - - true - - - НаборКонстант.ПрефиксУзлаРаспределеннойИнформационнойБазы - - - OnChange - ПрефиксУзлаРаспределеннойИнформационнойБазыПриИзменении - - - ПрефиксУзлаРаспределеннойИнформационнойБазыExtendedTooltip - 2035 - Label - true - true - - Left - - - - ПрефиксУзлаРаспределеннойИнформационнойБазыКонтекстноеМеню - 1996 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - true - true - - true - - - Группа3ExtendedTooltip - 2034 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ДекорацияПрефиксУзлаРаспределеннойИнформационнойБазы - 1998 + ГруппаЗагрузкаДанныхEnterpriseData + 2069 + + ЗагрузкаДанныхEnterpriseData + 2071 <key>ru</key> - <value>Префикс добавляется автоматически к кодам элементов справочников и номерам документов для того, чтобы различать программы, в которых они были введены, и избежать дублирования данных.</value> + <value>Загрузка данных EnterpriseData</value> true true @@ -837,30 +551,27 @@ true - ДекорацияПрефиксУзлаРаспределеннойИнформационнойБазыExtendedTooltip - 2037 + ЗагрузкаДанныхEnterpriseDataРасширеннаяПодсказка + 2072 + + <key>ru</key> + <value>Загрузка данных, представленных в формате EnterpriseData.</value> + Label - true true Left - - ДекорацияПрефиксУзлаРаспределеннойИнформационнойБазыКонтекстноеМеню - 1999 - true - - Label + Hyperlink + DataProcessor.ВыгрузкаЗагрузкаEnterpriseData.Command.ЗагрузкаДанныхEnterpriseData + Normal + Auto true true - - Style.ПоясняющийТекст - - - Left - Top - + UserCmds + ShowBottom + Auto true true @@ -869,17 +580,13 @@
      <key>ru</key> - <value>Группа префикс узла распределенной информационной базы</value> + <value>Загрузка данных enterprise data</value> - - ru - Группа префикс узла распределенной информационной базы - 43 false - ГруппаПрефиксУзлаРаспределеннойИнформационнойБазыExtendedTooltip - 2033 + ГруппаЗагрузкаДанныхEnterpriseDataРасширеннаяПодсказка + 2070 Label true true @@ -902,9 +609,13 @@ true + + <key>ru</key> + <value>Группа результатов</value> + - Группа1ExtendedTooltip - 2032 + ГруппаРезультатовРасширеннаяПодсказка + 2025 Label true true @@ -913,6 +624,91 @@ UsualGroup + + Auto + NormalSeparation + true + true + Equal + Auto + Auto + + + + ГруппаПрефиксУзлаРаспределеннойИнформационнойБазы + 1993 + + ПрефиксУзлаРаспределеннойИнформационнойБазы + 1995 + + <key>ru</key> + <value>Префикс этой информационной базы</value> + + true + true + + true + + + НаборКонстант.ПрефиксУзлаРаспределеннойИнформационнойБазы + + + OnChange + ПрефиксУзлаРаспределеннойИнформационнойБазыПриИзменении + + + ПрефиксУзлаРаспределеннойИнформационнойБазыExtendedTooltip + 2035 + Label + true + + Left + + + + ПрефиксУзлаРаспределеннойИнформационнойБазыКонтекстноеМеню + 1996 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа префикс узла распределенной информационной базы</value> + + ShowBottom + + ГруппаПрефиксУзлаРаспределеннойИнформационнойБазыExtendedTooltip + 2033 + + <key>ru</key> + <value>Префикс добавляется автоматически к кодам элементов справочников и номерам документов для того, чтобы различать программы, в которых они были введены, и избежать дублирования данных.</value> + + Label + true + + Left + + + UsualGroup Vertical Auto @@ -1023,43 +819,6 @@ Normal - - ПояснениеВременныеКаталоги - 2048 - - <key>ru</key> - <value>Путь к единому сетевому каталогу для общих временных файлов серверов 1С:Предприятие, работающих в одном кластере.</value> - - true - true - - true - - - ПояснениеВременныеКаталогиExtendedTooltip - 2050 - Label - true - true - - Left - - - - ПояснениеВременныеКаталогиКонтекстноеМеню - 2049 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - true true @@ -1069,17 +828,15 @@ ru Каталог временных файлов кластера серверов 1С:Предприятие: - - ru - Группа временные каталоги кластера серверов - - 86 - false + ShowBottom ГруппаВременныеКаталогиКластераСерверовExtendedTooltip 2041 + + <key>ru</key> + <value>Путь к единому сетевому каталогу для общих временных файлов серверов 1С:Предприятие, работающих в одном кластере.</value> + Label - true true Left @@ -1251,9 +1008,9 @@ НастройкиСинхронизацииДанных <key>ru</key> - <value>Синхронизация данных</value> + <value>Настройки синхронизации данных</value> - 32 + 1 ru Настройки синхронизации данных @@ -1269,50 +1026,6 @@ DontUse Auto - - РезультатыСинхронизацииДанных - - <key>ru</key> - <value>Предупреждения при синхронизации данных</value> - - 1 - - ru - Предупреждения, возникающие в процессе синхронизации данных - - - true - - - - РезультатыСинхронизацииДанных - - - DontUse - Auto - - - НастроитьДатыЗапретаЗагрузки - - <key>ru</key> - <value>Настроить даты запрета загрузки</value> - - 2 - - ru - Настроить даты запрета загрузки - - - true - - - - НастроитьДатыЗапретаЗагрузки - - - DontUse - Auto - diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиСинхронизацииДанных/Help/ru.html b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/СинхронизацияДанных/Help/ru.html similarity index 73% rename from SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиСинхронизацииДанных/Help/ru.html rename to SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/СинхронизацияДанных/Help/ru.html index 6eea049ff..e53e8a93e 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиСинхронизацииДанных/Help/ru.html +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/СинхронизацияДанных/Help/ru.html @@ -7,13 +7,12 @@ TD {

      В данной панели осуществляется настройка синхронизации данных с другими программами и организация совместной работы в распределенной информационной базе.

    • Префикс этой информационной базы - префикс добавляется автоматически к кодам элементов справочников и номерам документов для того, чтобы различать программы, в которых они были введены, и избежать дублирования данных.
    • Каталог временных файлов кластера серверов 1С:Предприятие

      • Путь к единому сетевому каталогу для общих временных файлов серверов 1С:Предприятие, работающих в одном кластере:
        • Под управлением ОС Windows - укажите путь к единому каталогу временных файлов всех серверов кластера, который будет использоваться для серверов, работающих под управлением ОС Windows.
        • Под управлением ОС Linux - укажите путь к единому каталогу временных файлов всех серверов кластера, который будет использоваться для серверов, работающих под управлением ОС Linux.
      • Каталоги временных файлов можно не заполнять, когда в кластере 1С:Предприятия работает только один сервер или программа работает в файловом режиме. diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиСинхронизацииДанных/Module.bsl b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/СинхронизацияДанных/Module.bsl similarity index 80% rename from SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиСинхронизацииДанных/Module.bsl rename to SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/СинхронизацияДанных/Module.bsl index e867f482c..03e9273de 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/НастройкиСинхронизацииДанных/Module.bsl +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/СинхронизацияДанных/Module.bsl @@ -20,13 +20,10 @@ // Настройки видимости при запуске. Элементы.ГруппаВременныеКаталогиКластераСерверов.Видимость = РежимРаботы.КлиентСерверный И РежимРаботы.ЭтоАдминистраторСистемы; - - Если РежимРаботы.МодельСервиса Тогда - Элементы.ОписаниеРаздела.Заголовок = НСтр("ru = 'Настройка синхронизации данных с моими приложениями.'"); - Элементы.ПояснениеНастройкиСинхронизацииДанных.Заголовок = НСтр("ru = 'Настройка и выполнение синхронизации данных с моими приложениями.'"); - Элементы.ИспользоватьДатыЗапретаЗагрузкиПояснение.Заголовок = + Элементы.ОписаниеРаздела.Заголовок = НСтр("ru = 'Синхронизация данных с моими приложениями.'"); + Элементы.ИспользоватьДатыЗапретаЗагрузки.РасширеннаяПодсказка.Заголовок = НСтр("ru = 'Запрет загрузки данных прошлых периодов из других приложений. |Не влияет на загрузку данных из автономных рабочих мест.'"); @@ -37,6 +34,25 @@ КонецЕсли; + Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда + Элементы.ГруппаПрефиксУзлаРаспределеннойИнформационнойБазы.Видимость = Ложь; + Элементы.ГруппаНастройкиСинхронизацииДанных.Видимость = Ложь; + Элементы.ГруппаЗагрузкаДанныхEnterpriseData.Видимость = Ложь; + Иначе + МассивДоступныхВерсий = Новый Соответствие; + МодульОбменДаннымиПереопределяемый = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиПереопределяемый"); + МодульОбменДаннымиПереопределяемый.ПриПолученииДоступныхВерсийФормата(МассивДоступныхВерсий); + Элементы.ГруппаЗагрузкаДанныхEnterpriseData.Видимость = ?(МассивДоступныхВерсий.Количество() = 0, Ложь, Истина); + КонецЕсли; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДатыЗапретаИзменения") Тогда + МодульДатыЗапретаИзмененияСлужебный = ОбщегоНазначения.ОбщийМодуль("ДатыЗапретаИзмененияСлужебный"); + СвойстваРазделов = МодульДатыЗапретаИзмененияСлужебный.СвойстваРазделов(); + Элементы.ГруппаДатыЗапретаЗагрузки.Видимость = СвойстваРазделов.ДатыЗапретаЗагрузкиВнедрены; + Иначе + Элементы.ГруппаДатыЗапретаЗагрузки.Видимость = Ложь; + КонецЕсли; + // Обновление состояния элементов. УстановитьДоступность(); @@ -50,7 +66,10 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ОбновитьИнтерфейсПрограммы(); КонецПроцедуры @@ -111,33 +130,14 @@ Процедура НастройкиСинхронизацииДанных(Команда) Если РежимРаботы.МодельСервиса Тогда - ИмяОткрываемойФормы = "ОбщаяФорма.СинхронизацияДанныхВМоделиСервиса"; - Иначе ИмяОткрываемойФормы = "ОбщаяФорма.СинхронизацияДанных"; - КонецЕсли; - ОткрытьФорму(ИмяОткрываемойФормы); КонецПроцедуры -&НаКлиенте -Процедура РезультатыСинхронизацииДанных(Команда) - ОткрытьФорму("РегистрСведений.РезультатыОбменаДанными.Форма.Форма"); -КонецПроцедуры - -// СтандартныеПодсистемы.ДатыЗапретаИзменения -&НаКлиенте -Процедура НастроитьДатыЗапретаЗагрузки(Команда) - - ПараметрыФормы = Новый Структура("ДатыЗапретаЗагрузкиДанных", Истина); - ОткрытьФорму("РегистрСведений.ДатыЗапретаИзменения.Форма.ДатыЗапретаИзменения", ПараметрыФормы); - -КонецПроцедуры -// Конец СтандартныеПодсистемы.ДатыЗапретаИзменения - #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -201,16 +201,12 @@ Если ИмяКонстанты = "ИспользоватьСинхронизациюДанных" Тогда + МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); Если КонстантаЗначение Тогда - - Запрос = ОбменДаннымиСервер.ЗапросНаИспользованиеВнешнихРесурсовПриВключенииОбмена(); - + Запрос = МодульОбменДаннымиСервер.ЗапросНаИспользованиеВнешнихРесурсовПриВключенииОбмена(); Иначе - - Запрос = ОбменДаннымиСервер.ЗапросНаОчисткуРазрешенийИспользованияВнешнихРесурсов(); - + Запрос = МодульОбменДаннымиСервер.ЗапросНаОчисткуРазрешенийИспользованияВнешнихРесурсов(); КонецЕсли; - Возврат Запрос; Иначе @@ -307,25 +303,20 @@ &НаСервере Процедура УстановитьДоступность(РеквизитПутьКДанным = "") - // СтандартныеПодсистемы.ДатыЗапретаИзменения - Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьДатыЗапретаЗагрузки" - Или РеквизитПутьКДанным = "" Тогда + Если (РеквизитПутьКДанным = "НаборКонстант.ИспользоватьДатыЗапретаЗагрузки" Или РеквизитПутьКДанным = "") + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДатыЗапретаИзменения") Тогда Элементы.ГруппаДатыЗапретаЗагрузкиНастройка.Доступность = НаборКонстант.ИспользоватьДатыЗапретаЗагрузки; КонецЕсли; - // Конец СтандартныеПодсистемы.ДатыЗапретаИзменения - Если РеквизитПутьКДанным = "НаборКонстант.ИспользоватьСинхронизациюДанных" ИЛИ РеквизитПутьКДанным = "" Тогда - + Если (РеквизитПутьКДанным = "НаборКонстант.ИспользоватьСинхронизациюДанных" Или РеквизитПутьКДанным = "") + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда Элементы.ПрефиксУзлаРаспределеннойИнформационнойБазы.Доступность = НаборКонстант.ИспользоватьСинхронизациюДанных; Элементы.НастройкиСинхронизацииДанных.Доступность = НаборКонстант.ИспользоватьСинхронизациюДанных; Элементы.ГруппаДатыЗапретаЗагрузки.Доступность = НаборКонстант.ИспользоватьСинхронизациюДанных; Элементы.РезультатыСинхронизацииДанных.Доступность = НаборКонстант.ИспользоватьСинхронизациюДанных; Элементы.ГруппаВременныеКаталогиКластераСерверов.Доступность = НаборКонстант.ИспользоватьСинхронизациюДанных; - - - КонецЕсли; КонецПроцедуры diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/УправлениеПолнотекстовымПоискомИИзвлечениемТекстов/Form.form b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/УправлениеПолнотекстовымПоискомИИзвлечениемТекстов/Form.form index 2d8661a9c..ff1250d0f 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/УправлениеПолнотекстовымПоискомИИзвлечениемТекстов/Form.form +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/УправлениеПолнотекстовымПоискомИИзвлечениемТекстов/Form.form @@ -8,7 +8,7 @@ 136 <key>ru</key> - <value>Включение и отключение полнотекстового поиска, обновление индекса полнотекстового поиска, а также настройка извлечения текстов из файлов для использования при поиске.</value> + <value>Обновление, очистка и проверка индекса полнотекстового поиска, а также настройка извлечения текстов из файлов для использования при поиске.</value> true true @@ -31,43 +31,7 @@ true Label - 78 - true true - false - false - - Left - Top - - - - Декорация - 139 - true - true - - true - - - ДекорацияРасширеннаяПодсказка - 141 - Label - true - true - - Left - - - - ДекорацияКонтекстноеМеню - 140 - true - - Label - true - true - true Left @@ -106,8 +70,6 @@ true - false - false ГруппаСправкаExtendedTooltip 143 @@ -120,7 +82,7 @@ CommandBar - Left + Right true @@ -153,50 +115,6 @@ ГруппаИспользоватьПолнотекстовыйПоиск 101 - - ИспользоватьПолнотекстовыйПоиск - 97 - - <key>ru</key> - <value>Полнотекстовый поиск данных</value> - - true - true - - true - - - ИспользоватьПолнотекстовыйПоиск - - Right - - OnChange - ИспользоватьПолнотекстовыйПоискПриИзменении - - - ИспользоватьПолнотекстовыйПоискExtendedTooltip - 115 - Label - true - true - - Left - - - - ИспользоватьПолнотекстовыйПоискКонтекстноеМеню - 98 - true - - CheckBoxField - Enter - true - Left - true - - true - - ОбработкаАктивныеПользователи 102 @@ -289,7 +207,6 @@ true true - false @@ -327,7 +244,6 @@ true true - true @@ -458,7 +374,6 @@ ru Группа управление автоматическим извлечением текстов - true ГруппаУправлениеПолнотекстовымПоискомExtendedTooltip 117 @@ -479,6 +394,230 @@ Auto + + ГруппаМаксимальныйРазмерИндексируемыхДанных + 193 + + ГруппаМаксимальныйРазмерИндексируемыхДанныхЗначение + 195 + + ОграничитьМаксимальныйРазмерИндексируемыхДанных + 209 + true + true + + true + + + ОграничитьМаксимальныйРазмерИндексируемыхДанных + + None + + OnChange + ОграничитьМаксимальныйРазмерИндексируемыхДанныхПриИзменении + + + ОграничитьМаксимальныйРазмерИндексируемыхДанныхРасширеннаяПодсказка + 211 + Label + true + true + + Left + + + + ОграничитьМаксимальныйРазмерИндексируемыхДанныхКонтекстноеМеню + 210 + true + + CheckBoxField + Enter + true + Left + true + + + + МаксимальныйРазмерИндексируемыхДанных + 197 + true + true + + true + + + МаксимальныйРазмерИндексируемыхДанных + + + OnChange + МаксимальныйРазмерИндексируемыхДанныхПриИзменении + + + МаксимальныйРазмерИндексируемыхДанныхРасширеннаяПодсказка + 199 + Label + true + true + + Left + + + + МаксимальныйРазмерИндексируемыхДанныхКонтекстноеМеню + 198 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + ДекорацияМб + 200 + + <key>ru</key> + <value>Мб</value> + + true + true + + true + + + ДекорацияМбРасширеннаяПодсказка + 202 + Label + true + true + + Left + + + + ДекорацияМбКонтекстноеМеню + 201 + true + + Label + true + true + + Left + + + true + true + + true + + + <key>ru</key> + <value>Группа максимальный размер индексируемых данных значение</value> + + + ru + Группа максимальный размер индексируемых данных значение + + + ГруппаМаксимальныйРазмерИндексируемыхДанныхЗначениеРасширеннаяПодсказка + 196 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + МаксимальныйРазмерИндексируемыхДанныхПодсказка + 203 + + <key>ru</key> + <value>Ограничение размера позволяет повысить скорость индексации и полнотекстового поиска.</value> + + true + true + + true + + + МаксимальныйРазмерИндексируемыхДанныхПодсказкаРасширеннаяПодсказка + 205 + Label + true + true + + Left + + + + МаксимальныйРазмерИндексируемыхДанныхПодсказкаКонтекстноеМеню + 204 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + + + true + true + + true + + + <key>ru</key> + <value>Группа максимальный размер индексируемых данных</value> + + + ru + Группа максимальный размер индексируемых данных + + + ГруппаМаксимальныйРазмерИндексируемыхДанныхРасширеннаяПодсказка + 194 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + true true @@ -535,7 +674,6 @@ true Label - true true true @@ -543,18 +681,17 @@ Left - Top - ГруппаКолонки1 - 94 + Группа2 + 189 - Группа2 - 153 + ГруппаКолонки + 157 - ИзвлекатьТекстыФайловНаСервере - 57 + ИзвлекатьТекстыФайловНаСервереWindows + 159 true true @@ -569,8 +706,8 @@ ИзвлекатьТекстыФайловНаСервереПриИзменении - ИзвлекатьТекстыФайловНаСервереExtendedTooltip - 126 + ИзвлекатьТекстыФайловНаСервереWindowsРасширеннаяПодсказка + 161 Label true true @@ -579,8 +716,8 @@ - ИзвлекатьТекстыФайловНаСервереКонтекстноеМеню - 58 + ИзвлекатьТекстыФайловНаСервереWindowsКонтекстноеМеню + 160 true RadioButtonField @@ -589,6 +726,7 @@ Left true + 2 ru @@ -598,6 +736,118 @@ 1 + Vertical + + + + РедактироватьРегламентноеЗадание + 187 + + <key>ru</key> + <value>Настроить расписание</value> + + true + true + + true + + + РедактироватьРегламентноеЗаданиеРасширеннаяПодсказка + 188 + + <key>ru</key> + <value><Настроенное расписание></value> + + Label + true + true + + Left + + + Hyperlink + Form.Command.РедактироватьРегламентноеЗадание + Normal + Auto + true + true + true + UserCmds + ShowBottom + Auto + + true + true + + true + + + <key>ru</key> + <value>Группа колонки</value> + + + ru + Группа колонки + + + ГруппаКолонкиРасширеннаяПодсказка + 158 + Label + true + true + + Left + + + UsualGroup + + Auto + true + Auto + Auto + + + + Группа5 + 171 + + ИзвлекатьТекстыФайловНаСервереLinux + 175 + true + true + + true + + + ИзвлекатьТекстыФайловНаСервере + + None + + OnChange + ИзвлекатьТекстыФайловНаСервереПриИзменении + + + ИзвлекатьТекстыФайловНаСервереLinuxРасширеннаяПодсказка + 177 + Label + true + true + + Left + + + + ИзвлекатьТекстыФайловНаСервереLinuxКонтекстноеМеню + 176 + true + + RadioButtonField + Enter + true + Left + true + + 2 ru @@ -610,234 +860,40 @@ Vertical - true - true - - true - - 29 - 4 - false - false - - Группа2РасширеннаяПодсказка - 154 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаСтроки1 - 95 - - ГруппаРедактироватьРегламентноеЗадание - 111 - - РедактироватьРегламентноеЗадание - 82 - - <key>ru</key> - <value>Настроить расписание</value> - - true - true - - true - - - РедактироватьРегламентноеЗаданиеExtendedTooltip - 129 - Label - true - true - - Left - - - Hyperlink - Form.Command.РедактироватьРегламентноеЗадание - Normal - Auto - true - true - UserCmds - Auto - - - ИзвлечениеТекстаПредставление - 107 - true - true - - true - - - ИзвлечениеТекстаПредставлениеРасширеннаяПодсказка - 130 - Label - true - true - - Left - - - - ИзвлечениеТекстаПредставлениеКонтекстноеМеню - 108 - true - - Label - true - 1 - true - false - true - - Style.ПоясняющийТекст - - - Left - Top - - + + ЗапуститьИзвлечениеТекстов + 191 + + <key>ru</key> + <value>Запустить извлечение текстов</value> + true true true - 55 - false - ГруппаРедактироватьРегламентноеЗаданиеExtendedTooltip - 128 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаЗапуститьИзвлечениеТекстов - 112 - - ЗапуститьИзвлечениеТекстов - 86 - true - true - - true - - - ЗапуститьИзвлечениеТекстовExtendedTooltip - 132 - Label - true - true - - Left - - - Hyperlink - Form.Command.ЗапуститьИзвлечениеТекстов - Normal - Auto - true - true - UserCmds - Auto - - - ПояснениеЗапуститьИзвлечениеТекстов - 109 + ЗапуститьИзвлечениеТекстовРасширеннаяПодсказка + 192 <key>ru</key> <value>Извлечение текстов в тонком клиенте на рабочей станции под управлением ОС Windows.</value> - true - true - - true - - - ПояснениеЗапуститьИзвлечениеТекстовExtendedTooltip - 133 - Label - true - true - - Left - - - - ПояснениеЗапуститьИзвлечениеТекстовКонтекстноеМеню - 110 - true - Label - true - 1 - true - true - false - true - - Style.ПоясняющийТекст - - - Left - Top - - - true - true - - true - - 55 - false - - ГруппаЗапуститьИзвлечениеТекстовExtendedTooltip - 131 - Label - true true Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + Hyperlink + DataProcessor.АвтоматическоеИзвлечениеТекстов.Command.АвтоматическоеИзвлечениеТекстов + Normal + Auto + true + true + UserCmds + ShowBottom + Auto true true @@ -845,8 +901,8 @@ true - ГруппаСтроки1ExtendedTooltip - 127 + Группа5РасширеннаяПодсказка + 172 Label true true @@ -856,10 +912,8 @@ UsualGroup - Vertical Auto true - true Auto Auto @@ -870,8 +924,8 @@ true - ГруппаКолонки1ExtendedTooltip - 125 + Группа2РасширеннаяПодсказка + 190 Label true true @@ -881,6 +935,7 @@ UsualGroup + Vertical Auto true true @@ -897,6 +952,7 @@ ru Автоматическое извлечение текстов + false ГруппаАвтоматическоеИзвлечениеТекстовExtendedTooltip 123 @@ -1188,6 +1244,44 @@ true + + МаксимальныйРазмерИндексируемыхДанных + + <key>ru</key> + <value>Ограничить максимальный размер индексируемых данных</value> + + 13 + + Number + + 6 + true + + + + true + + + true + + + + ОграничитьМаксимальныйРазмерИндексируемыхДанных + + <key>ru</key> + <value>Ограничить максимальный размер индексируемых данных</value> + + 14 + + Boolean + + + true + + + true + + ОбновитьИндекс @@ -1232,28 +1326,6 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> - <formCommands> - <name>ЗапуститьИзвлечениеТекстов</name> - <title> - <key>ru</key> - <value>Запустить извлечение текстов</value> - - 3 - - ru - Обработка для автоматического извлечения текстов из файлов на рабочей станции под управлением ОС Windows. - - - true - - - - ЗапуститьИзвлечениеТекстов - - - DontUse - Auto - РедактироватьРегламентноеЗадание diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/УправлениеПолнотекстовымПоискомИИзвлечениемТекстов/Module.bsl b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/УправлениеПолнотекстовымПоискомИИзвлечениемТекстов/Module.bsl index 8a1b20a76..a5a50c115 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/УправлениеПолнотекстовымПоискомИИзвлечениемТекстов/Module.bsl +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Forms/УправлениеПолнотекстовымПоискомИИзвлечениемТекстов/Module.bsl @@ -25,9 +25,11 @@ Если РежимРаботы.ЭтоАдминистраторПрограммы И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ФайловыеФункции") Тогда Если РежимРаботы.Файловый Тогда - СписокВыбора = Элементы.ИзвлекатьТекстыФайловНаСервере.СписокВыбора; + СписокВыбора = Элементы.ИзвлекатьТекстыФайловНаСервереWindows.СписокВыбора; СписокВыбора[0].Представление = НСтр("ru = 'Все рабочие станции работают под управлением ОС Windows'"); - СписокВыбора[1].Представление = НСтр("ru = 'Одна или несколько рабочих станций работают под управлением ОС Linux'"); + + СписокВыбора = Элементы.ИзвлекатьТекстыФайловНаСервереLinux.СписокВыбора; + СписокВыбора[0].Представление = НСтр("ru = 'Одна или несколько рабочих станций работают под управлением ОС Linux'"); КонецЕсли; Иначе Элементы.ГруппаАвтоматическоеИзвлечениеТекстов.Видимость = Ложь; @@ -52,7 +54,10 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ОбновитьИнтерфейсПрограммы(); КонецПроцедуры @@ -61,19 +66,22 @@ #Область ОбработчикиСобытийЭлементовШапкиФормы &НаКлиенте -Процедура ИспользоватьПолнотекстовыйПоискПриИзменении(Элемент) - Если ИспользоватьПолнотекстовыйПоиск = 0 Тогда // Предыдущее значение - 2 (3й режим). - ИспользоватьПолнотекстовыйПоиск = 1; - ИначеЕсли ИспользоватьПолнотекстовыйПоиск = 2 Тогда // Предыдущее значение - 1 (Истина). - ИспользоватьПолнотекстовыйПоиск = 0; - КонецЕсли; - - Подключаемый_ПриИзмененииРеквизита(Элемент, Истина); +Процедура ИзвлекатьТекстыФайловНаСервереПриИзменении(Элемент) + Подключаемый_ПриИзмененииРеквизита(Элемент, Ложь); КонецПроцедуры &НаКлиенте -Процедура ИзвлекатьТекстыФайловНаСервереПриИзменении(Элемент) - Подключаемый_ПриИзмененииРеквизита(Элемент, Ложь); +Процедура МаксимальныйРазмерИндексируемыхДанныхПриИзменении(Элемент) + + Подключаемый_ПриИзмененииРеквизита(Элемент); + +КонецПроцедуры + +&НаКлиенте +Процедура ОграничитьМаксимальныйРазмерИндексируемыхДанныхПриИзменении(Элемент) + + Подключаемый_ПриИзмененииРеквизита(Элемент); + КонецПроцедуры #КонецОбласти @@ -124,11 +132,6 @@ РегламентныеЗаданияГиперссылкаНажатие("ИзвлечениеТекста"); КонецПроцедуры -&НаКлиенте -Процедура ЗапуститьИзвлечениеТекстов(Команда) - ОткрытьФорму("Обработка.АвтоматическоеИзвлечениеТекстов.Форма"); -КонецПроцедуры - #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -201,7 +204,7 @@ &НаКлиенте Процедура ПриИзмененииРеквизитаПослеОтветаНаВопрос(Ответ, ПараметрыВыполнения) Экспорт Если Ответ = "АктивныеПользователи" Тогда - ОткрытьФорму("Обработка.АктивныеПользователи.Форма"); + СтандартныеПодсистемыКлиент.ОткрытьСписокАктивныхПользователей(); КонецЕсли; КонецПроцедуры @@ -294,12 +297,19 @@ НаборКонстант.ИзвлекатьТекстыФайловНаСервере = ИзвлекатьТекстыФайловНаСервере; Изменения = Новый Структура("Использование", НаборКонстант.ИзвлекатьТекстыФайловНаСервере); РегламентныеЗаданияСохранить("ИзвлечениеТекста", Изменения, Ложь); - ИначеЕсли РеквизитПутьКДанным = "ИспользоватьПолнотекстовыйПоиск" Тогда + ИначеЕсли РеквизитПутьКДанным = "МаксимальныйРазмерИндексируемыхДанных" + Или РеквизитПутьКДанным = "ОграничитьМаксимальныйРазмерИндексируемыхДанных" Тогда Попытка - Если ИспользоватьПолнотекстовыйПоиск Тогда - ПолнотекстовыйПоиск.УстановитьРежимПолнотекстовогоПоиска(РежимПолнотекстовогоПоиска.Разрешить); + Если ОграничитьМаксимальныйРазмерИндексируемыхДанных Тогда + // При первом включении ограничения устанавливается значение по умолчанию платформы - 1 Мб. + Если МаксимальныйРазмерИндексируемыхДанных = 0 Тогда + МаксимальныйРазмерИндексируемыхДанных = 1; + КонецЕсли; + Если ПолнотекстовыйПоиск.ПолучитьМаксимальныйРазмерИндексируемыхДанных() <> МаксимальныйРазмерИндексируемыхДанных * 1048576 Тогда + ПолнотекстовыйПоиск.УстановитьМаксимальныйРазмерИндексируемыхДанных(МаксимальныйРазмерИндексируемыхДанных * 1048576); + КонецЕсли; Иначе - ПолнотекстовыйПоиск.УстановитьРежимПолнотекстовогоПоиска(РежимПолнотекстовогоПоиска.Запретить); + ПолнотекстовыйПоиск.УстановитьМаксимальныйРазмерИндексируемыхДанных(0); КонецЕсли; Исключение ЗаписьЖурналаРегистрации( @@ -311,22 +321,6 @@ Результат.Вставить("НеУдалосьУстановитьРежимПолнотекстовогоПоиска", Истина); Возврат Результат; КонецПопытки; - КонстантаИмя = "ИспользоватьПолнотекстовыйПоиск"; - НаборКонстант.ИспользоватьПолнотекстовыйПоиск = ИспользоватьПолнотекстовыйПоиск; - // Включение/отключение зависимых регламентных заданий. - Изменения = Новый Структура("Использование", НаборКонстант.ИспользоватьПолнотекстовыйПоиск); - Задание = РегламентныеЗаданияНайтиПредопределенное("ОбновлениеИндексаППД"); - Если Задание <> Неопределено Тогда - РегламентныеЗаданияСервер.ИзменитьЗадание(Задание, Изменения); - КонецЕсли; - Задание = РегламентныеЗаданияНайтиПредопределенное("СлияниеИндексаППД"); - Если Задание <> Неопределено Тогда - РегламентныеЗаданияСервер.ИзменитьЗадание(Задание, Изменения); - КонецЕсли; - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ФайловыеФункции") Тогда - Изменения.Использование = Изменения.Использование И НаборКонстант.ИзвлекатьТекстыФайловНаСервере; - РегламентныеЗаданияСохранить("ИзвлечениеТекста", Изменения, Ложь); - КонецЕсли; КонецЕсли; КонецЕсли; @@ -349,8 +343,8 @@ Процедура УстановитьДоступность(РеквизитПутьКДанным = "", ИндексПроверен = Ложь) Если РеквизитПутьКДанным = "" Или РеквизитПутьКДанным = "ИспользоватьПолнотекстовыйПоиск" Тогда - - Если НаборКонстант.ИспользоватьПолнотекстовыйПоиск <> ПолнотекстовыйПоискСервер.ОперацииРазрешены() Тогда + МодульПолнотекстовыйПоискСервер = ОбщегоНазначения.ОбщийМодуль("ПолнотекстовыйПоискСервер"); + Если НаборКонстант.ИспользоватьПолнотекстовыйПоиск <> МодульПолнотекстовыйПоискСервер.ОперацииРазрешены() Тогда ИспользоватьПолнотекстовыйПоиск = 2; Иначе ИспользоватьПолнотекстовыйПоиск = НаборКонстант.ИспользоватьПолнотекстовыйПоиск; @@ -361,6 +355,8 @@ КонецЕсли; Если РеквизитПутьКДанным = "" + Или РеквизитПутьКДанным = "ОграничитьМаксимальныйРазмерИндексируемыхДанных" + Или РеквизитПутьКДанным = "МаксимальныйРазмерИндексируемыхДанных" Или РеквизитПутьКДанным = "ИспользоватьПолнотекстовыйПоиск" Или РеквизитПутьКДанным = "Команда.ОбновитьИндекс" Или РеквизитПутьКДанным = "Команда.ОчиститьИндекс" @@ -368,7 +364,8 @@ Если ИспользоватьПолнотекстовыйПоиск = 1 Тогда ДатаАктуальностиИндекса = ПолнотекстовыйПоиск.ДатаАктуальности(); - ИндексАктуален = ПолнотекстовыйПоискСервер.ИндексПоискаАктуален(); + МодульПолнотекстовыйПоискСервер = ОбщегоНазначения.ОбщийМодуль("ПолнотекстовыйПоискСервер"); + ИндексАктуален = МодульПолнотекстовыйПоискСервер.ИндексПоискаАктуален(); ФлагДоступность = НЕ ИндексАктуален; Если ИндексПроверен И Не ИндексСодержитКорректныеДанные Тогда СтатусИндекса = НСтр("ru = 'Требуется очистка и обновление'"); @@ -383,6 +380,11 @@ ФлагДоступность = Ложь; СтатусИндекса = НСтр("ru = 'Полнотекстовый поиск отключен'"); КонецЕсли; + МаксимальныйРазмерИндексируемыхДанных = ПолнотекстовыйПоиск.ПолучитьМаксимальныйРазмерИндексируемыхДанных() / 1048576; + ОграничитьМаксимальныйРазмерИндексируемыхДанных = МаксимальныйРазмерИндексируемыхДанных <> 0; + + Элементы.МаксимальныйРазмерИндексируемыхДанных.Доступность = ОграничитьМаксимальныйРазмерИндексируемыхДанных; + Элементы.ДекорацияМб.Доступность = ОграничитьМаксимальныйРазмерИндексируемыхДанных; Если (ИндексПроверен И Не ИндексСодержитКорректныеДанные) Или Не ИндексАктуален Тогда @@ -399,8 +401,8 @@ И (РеквизитПутьКДанным = "" Или РеквизитПутьКДанным = "ИзвлекатьТекстыФайловНаСервере" Или РеквизитПутьКДанным = "РегламентноеЗадание.ИзвлечениеТекста") Тогда - Элементы.ГруппаРедактироватьРегламентноеЗадание.Доступность = НаборКонстант.ИзвлекатьТекстыФайловНаСервере; - Элементы.ГруппаЗапуститьИзвлечениеТекстов.Доступность = Не НаборКонстант.ИзвлекатьТекстыФайловНаСервере; + Элементы.РедактироватьРегламентноеЗадание.Доступность = НаборКонстант.ИзвлекатьТекстыФайловНаСервере; + Элементы.ЗапуститьИзвлечениеТекстов.Доступность = Не НаборКонстант.ИзвлекатьТекстыФайловНаСервере; Если НаборКонстант.ИзвлекатьТекстыФайловНаСервере Тогда Сведения = СведенияОРегламентныхЗаданиях["ИзвлечениеТекста"]; РасписаниеПредставление = Строка(Сведения.Расписание); @@ -408,7 +410,7 @@ Иначе РасписаниеПредставление = НСтр("ru = 'Автоматическое извлечение текстов не выполняется.'"); КонецЕсли; - Элементы.ИзвлечениеТекстаПредставление.Заголовок = РасписаниеПредставление; + Элементы.РедактироватьРегламентноеЗадание.РасширеннаяПодсказка.Заголовок = РасписаниеПредставление; КонецЕсли; КонецПроцедуры diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Help/ru.html b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Help/ru.html index 9db3a3191..122e3447a 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Help/ru.html +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/Help/ru.html @@ -6,9 +6,8 @@ <li><a href="DataProcessor.ПанельАдминистрированияБСП.Form.ПоддержкаИОбслуживание/Help">Поддержка и обслуживание</a> - в данном подразделе администратору предоставляются возможности по поддержанию программы в работоспособном состоянии; </li><li><a href="DataProcessor.ПанельАдминистрированияБСП.Form.ОбщиеНастройки/Help">Общие настройки</a> - в данном подразделе производятся основные настройки программы; </li><li><a href="DataProcessor.ПанельАдминистрированияБСП.Form.НастройкиПользователейИПрав/Help">Настройки пользователей и прав</a> - в данном подразделе предусмотрены команды, связанные с управлением доступом и настройкой прав пользователей; -</li><li><a href="DataProcessor.ПанельАдминистрированияБСП.Form.ПоискИУстановкаОбновлений/Help">Поиск и установка обновлений</a> - в данном подразделе производится поиск и установка обновлений программы, также можно просмотреть информацию о предыдущих обновлениях;  </li><li><a href="DataProcessor.ПанельАдминистрированияБСП.Form.Органайзер/Help">Органайзер</a> - в данном подразделе предусмотрены команды настройки электронной почты, заметок, напоминаний и бизнес-процессов; -</li><li><a href="DataProcessor.ПанельАдминистрированияБСП.Form.НастройкиСинхронизацииДанных/Help">Настройки синхронизации данных</a> - в данном подразделе производится настройка синхронизации данных с другими программами, а также организация совместной работы в распределенной информационной базе; +</li><li><a href="DataProcessor.ПанельАдминистрированияБСП.Form.СинхронизацияДанных/Help">Настройки синхронизации данных</a> - в данном подразделе производится настройка синхронизации данных с другими программами, а также организация совместной работы в распределенной информационной базе; </li><li><a href="DataProcessor.ПанельАдминистрированияБСП.Form.НастройкиРаботыСФайлами/Help">Настройки работы с файлами</a> - в данном подразделе предоставляется возможность настройки параметров загрузки, хранения и обработки файлов; </li><li><a href="DataProcessor.ПанельАдминистрированияБСП.Form.ПечатныеФормыОтчетыИОбработки/Help">Печатные формы, отчеты и обработки</a> - в данном подразделе производится настройка печатных форм, вариантов отчетов, дополнительных отчетов и обработок.  <p></p></li></body></html> \ No newline at end of file diff --git a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/ПанельАдминистрированияБСП.mdo b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/ПанельАдминистрированияБСП.mdo index 2b64a919f..d805ed12f 100644 --- a/SSL/src/DataProcessors/ПанельАдминистрированияБСП/ПанельАдминистрированияБСП.mdo +++ b/SSL/src/DataProcessors/ПанельАдминистрированияБСП/ПанельАдминистрированияБСП.mdo @@ -58,20 +58,6 @@ <usePurposes>PersonalComputer</usePurposes> <usePurposes>MobileDevice</usePurposes> </forms> - <forms uuid="6a25c089-38e8-49ae-b20a-d5f91bb5e1fd"> - <name>ПоискИУстановкаОбновлений</name> - <synonym> - <key>ru</key> - <value>Поиск и установка обновлений</value> - </synonym> - <help> - <pages> - <lang>ru</lang> - </pages> - </help> - <usePurposes>PersonalComputer</usePurposes> - <usePurposes>MobileDevice</usePurposes> - </forms> <forms uuid="737f6f1b-9ffc-4916-b378-7321eab1f886"> <name>Органайзер</name> <synonym> @@ -87,10 +73,10 @@ <usePurposes>MobileDevice</usePurposes> </forms> <forms uuid="01dedf5b-2cce-4d24-81ea-2e3af82f5794"> - <name>НастройкиСинхронизацииДанных</name> + <name>СинхронизацияДанных</name> <synonym> <key>ru</key> - <value>Настройки синхронизации данных</value> + <value>Синхронизация данных</value> </synonym> <help> <pages> @@ -190,19 +176,6 @@ <value>Администрирование пользователей, настройка групп доступа, предоставление доступа для внешних пользователей, управление пользовательскими настройками.</value> </toolTip> </commands> - <commands uuid="827720ed-a9ec-4573-a91b-71d7a3e02c2a"> - <name>ПоискИУстановкаОбновлений</name> - <synonym> - <key>ru</key> - <value>Поиск и установка обновлений</value> - </synonym> - <group>NavigationPanelOrdinary</group> - <representation>Auto</representation> - <toolTip> - <key>ru</key> - <value>Поиск и установка обновлений программы</value> - </toolTip> - </commands> <commands uuid="a2faa3f8-5064-4fbf-a90e-26d15c021cd3"> <name>Органайзер</name> <synonym> @@ -217,10 +190,10 @@ </toolTip> </commands> <commands uuid="527ea8ca-e723-454a-8e9e-f2e7a38e62ee"> - <name>НастройкиСинхронизацииДанных</name> + <name>СинхронизацияДанных</name> <synonym> <key>ru</key> - <value>Настройки синхронизации данных</value> + <value>Синхронизация данных</value> </synonym> <group>NavigationPanelOrdinary</group> <representation>Auto</representation> diff --git a/SSL/src/DataProcessors/ПереносФайловВТома/Forms/Форма/Form.form b/SSL/src/DataProcessors/ПереносФайловВТома/Forms/Форма/Form.form index a5cf90058..8f1180c06 100644 --- a/SSL/src/DataProcessors/ПереносФайловВТома/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/ПереносФайловВТома/Forms/Форма/Form.form @@ -30,11 +30,8 @@ <id>7</id> <autoFill>true</autoFill> </contextMenu> - <width>5</width> <autoMaxWidth>true</autoMaxWidth> - <height>2</height> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> <skipOnInput>false</skipOnInput> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="core:PictureRef"> @@ -72,7 +69,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <horizontalStretch>false</horizontalStretch> <skipOnInput>false</skipOnInput> @@ -235,7 +231,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> diff --git a/SSL/src/DataProcessors/ПереносФайловВТома/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/ПереносФайловВТома/Forms/Форма/Module.bsl index b882ce9f0..471cf3296 100644 --- a/SSL/src/DataProcessors/ПереносФайловВТома/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/ПереносФайловВТома/Forms/Форма/Module.bsl @@ -8,10 +8,10 @@ Возврат; КонецЕсли; - ЧислоВерсийВБазе = ПолучитьЧислоВерсийВБазе(); + ЧислоВерсийВБазе = ЧислоВерсийВБазе(); ТипХраненияВТомах = Перечисления.ТипыХраненияФайлов.ВТомахНаДиске; - РазмерВерсийВБазеВБайтах = ПолучитьРазмерВерсийВБазе(); + РазмерВерсийВБазеВБайтах = РазмерВерсийВБазе(); РазмерВерсийВБазе = РазмерВерсийВБазеВБайтах / 1048576; ДополнительныеПараметры = Новый Структура; @@ -86,7 +86,7 @@ Состояние(НСтр("ru = 'Выполняется получение списка файлов...'")); - МассивВерсий = ПолучитьМассивВерсийВБазе(); + МассивВерсий = ВерсииВБазе(); НомерЦикла = 1; ЧислоПеренесенных = 0; @@ -134,8 +134,8 @@ ПакетВерсий.Очистить(); КонецЕсли; - ЧислоВерсийВБазе = ПолучитьЧислоВерсийВБазе(); - РазмерВерсийВБазеВБайтах = ПолучитьРазмерВерсийВБазе(); + ЧислоВерсийВБазе = ЧислоВерсийВБазе(); + РазмерВерсийВБазеВБайтах = РазмерВерсийВБазе(); РазмерВерсийВБазе = РазмерВерсийВБазеВБайтах / 1048576; Если ЧислоПеренесенных <> 0 Тогда @@ -170,7 +170,7 @@ КонецПроцедуры &НаСервере -Функция ПолучитьРазмерВерсийВБазе() +Функция РазмерВерсийВБазе() УстановитьПривилегированныйРежим(Истина); @@ -196,7 +196,7 @@ КонецФункции &НаСервере -Функция ПолучитьЧислоВерсийВБазе() +Функция ЧислоВерсийВБазе() УстановитьПривилегированныйРежим(Истина); @@ -222,7 +222,7 @@ КонецФункции &НаСервере -Функция ПолучитьМассивВерсийВБазе() +Функция ВерсииВБазе() МассивВерсий = Новый Массив; diff --git a/SSL/src/DataProcessors/ПереносФайловВТома/Forms/ФормаОтчета/Form.form b/SSL/src/DataProcessors/ПереносФайловВТома/Forms/ФормаОтчета/Form.form index 5a0e2f16a..857440f90 100644 --- a/SSL/src/DataProcessors/ПереносФайловВТома/Forms/ФормаОтчета/Form.form +++ b/SSL/src/DataProcessors/ПереносФайловВТома/Forms/ФормаОтчета/Form.form @@ -37,7 +37,6 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:LabelFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> <height>2</height> <autoMaxHeight>true</autoMaxHeight> <verticalStretch>false</verticalStretch> @@ -113,8 +112,6 @@ <event>OnCreateAtServer</event> <name>ПриСозданииНаСервере</name> </handlers> - <width>95</width> - <height>20</height> <windowOpeningMode>DontBlock</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoUrl>true</autoUrl> diff --git a/SSL/src/DataProcessors/ПереносФайловВТома/Templates/МакетОтчета/Template.mxlx b/SSL/src/DataProcessors/ПереносФайловВТома/Templates/МакетОтчета/Template.mxlx index 62fd49bd6..cec9b025c 100644 --- a/SSL/src/DataProcessors/ПереносФайловВТома/Templates/МакетОтчета/Template.mxlx +++ b/SSL/src/DataProcessors/ПереносФайловВТома/Templates/МакетОтчета/Template.mxlx @@ -95,7 +95,7 @@ <endColumn>-1</endColumn> </area> </namedItem> - <font faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <font faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> <format> <width>317</width> </format> diff --git a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ОбластьПоискаДублей/Form.form b/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ОбластьПоискаДублей/Form.form index 664643643..33d026953 100644 --- a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ОбластьПоискаДублей/Form.form +++ b/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ОбластьПоискаДублей/Form.form @@ -216,8 +216,6 @@ <event>OnCreateAtServer</event> <name>ПриСозданииНаСервере</name> </handlers> - <width>40</width> - <height>12</height> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoUrl>true</autoUrl> diff --git a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Form.form b/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Form.form index 1a8238678..1440c695f 100644 --- a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Form.form +++ b/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Form.form @@ -55,10 +55,8 @@ <event>Clearing</event> <name>ОбластьПоискаДублейОчистка</name> </handlers> - <width>43</width> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> <wrap>true</wrap> <dropListButton>false</dropListButton> <choiceButton>true</choiceButton> @@ -111,10 +109,8 @@ <event>Clearing</event> <name>ПредставлениеПравилОтбораОчистка</name> </handlers> - <width>45</width> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> <wrap>true</wrap> <choiceButton>true</choiceButton> <clearButton>true</clearButton> @@ -159,7 +155,6 @@ <event>Click</event> <name>ПредставлениеПравилПоискаНажатие</name> </handlers> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <hyperlink>true</hyperlink> </extInfo> @@ -263,7 +258,6 @@ <key>ru</key> <value>Шаг поиск не выполнялся</value> </toolTip> - <verticalStretch>true</verticalStretch> <extendedTooltip> <name>ШагПоискНеВыполнялсяРасширеннаяПодсказка</name> <id>63</id> @@ -1072,7 +1066,6 @@ <autoFill>true</autoFill> </contextMenu> <representation>Tree</representation> - <width>45</width> <autoMaxWidth>true</autoMaxWidth> <height>5</height> <autoMaxHeight>true</autoMaxHeight> @@ -1372,7 +1365,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <horizontalStretch>true</horizontalStretch> <verticalStretch>true</verticalStretch> @@ -1452,7 +1444,6 @@ <key>ru</key> <value>Группа горизонтальная найденные дубли</value> </toolTip> - <width>24</width> <extendedTooltip> <name>ГруппаГоризонтальнаяНайденныеДублиРасширеннаяПодсказка</name> <id>156</id> @@ -1508,10 +1499,7 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:LabelFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> - <height>2</height> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> <textColor xsi:type="core:ColorRef"> <color>Style.ПоясняющийТекст</color> </textColor> @@ -1545,7 +1533,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <handlers> @@ -1565,12 +1552,7 @@ <key>ru</key> <value>Группа горизонтальная состояние найденного</value> - - ru - Группа горизонтальная состояние найденного - 2 - false ГруппаГоризонтальнаяСостояниеНайденногоРасширеннаяПодсказка 158 @@ -1603,7 +1585,6 @@ ru Группа вертикальная основного элемента - true ГруппаВертикальнаяОсновногоЭлементаРасширеннаяПодсказка 154 @@ -1738,15 +1719,16 @@ ШагУспешноеУдаление 212 - Декорация4 - 355 + Декорация5 + 352 + true true true - Декорация4РасширеннаяПодсказка - 357 + Декорация5РасширеннаяПодсказка + 354 Label true true @@ -1755,103 +1737,34 @@ - Декорация4КонтекстноеМеню - 356 + Декорация5КонтекстноеМеню + 353 true - Label true - 1 true - - Left + Center + + + CommonPicture.Успешно32 + - - Группа3 - 350 - - Декорация5 - 352 - true - true - - true - - - Декорация5РасширеннаяПодсказка - 354 - Label - true - true - - Left - - - - Декорация5КонтекстноеМеню - 353 - true - - 6 - true - 3 - true - - - CommonPicture.Успешно32 - - - - - ОписаниеСостоянияНайденныхДублей1 - 344 - true - true - - true - - - ОписаниеСостоянияНайденныхДублей - - None - - ОписаниеСостоянияНайденныхДублей1РасширеннаяПодсказка - 346 - Label - true - true - - Left - - - - ОписаниеСостоянияНайденныхДублей1КонтекстноеМеню - 345 - true - - LabelField - Left - Center - Enter - true - Left - true - - true - 3 - true - false - - + + ОписаниеСостоянияНайденныхДублей1 + 344 true true true + + ОписаниеСостоянияНайденныхДублей + + None - Группа3РасширеннаяПодсказка - 351 + ОписаниеСостоянияНайденныхДублей1РасширеннаяПодсказка + 346 Label true true @@ -1859,13 +1772,24 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + + ОписаниеСостоянияНайденныхДублей1КонтекстноеМеню + 345 + true + + LabelField + Left + Center + Center + Enter + true + Left + true + + true + 5 + true + false true @@ -1881,7 +1805,6 @@ ru Шаг успешное удаление - true ШагУспешноеУдалениеРасширеннаяПодсказка 213 @@ -1894,7 +1817,6 @@ Page - Vertical auto false @@ -1905,92 +1827,21 @@ ГруппаВертикальнаяНеобработанныеДубли 238 - - ГруппаНадписьОшибки - 339 - - Декорация1 - 341 - true - true - - true - - - Декорация1РасширеннаяПодсказка - 343 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 342 - true - - 2 - true - 1 - true - - - CommonPicture.Предупреждение - - - - - Декорация2 - 331 - - <key>ru</key> - <value>Не удалось заменить удаляемые элементы на оригиналы во всех местах использования:</value> - - true - true - - true - - - Декорация2РасширеннаяПодсказка - 333 - Label - true - true - - Left - - - - Декорация2КонтекстноеМеню - 332 - true - - Label - true - true - - Left - - + + ЗаголовокСтраницыНеудачныеЗамены + 331 + + <key>ru</key> + <value>Не удалось заменить дубли на оригиналы в некоторых местах использования:</value> + true true true - - <key>ru</key> - <value>Группа надпись ошибки</value> - - - ru - Группа надпись ошибки - - ГруппаНадписьОшибкиРасширеннаяПодсказка - 340 + ЗаголовокСтраницыНеудачныеЗаменыРасширеннаяПодсказка + 333 Label true true @@ -1998,13 +1849,22 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + + ЗаголовокСтраницыНеудачныеЗаменыКонтекстноеМеню + 332 + true + + Label + true + + Style.NormalTextFont + true + false + false + false + + + Left @@ -2822,7 +2682,6 @@ ru Места использования - 24 ОписаниеМестИспользованияНеобработанныхРасширеннаяПодсказка 268 @@ -2843,58 +2702,21 @@ ОписаниеГруппыНеобработанных 276 - - Группа2 - 278 - - ОписаниеТекущейГруппыДублей1 - 280 - - <key>ru</key> - <value>Описание текущей группы дублей</value> - - true - true - - true - - - ОписаниеТекущейГруппыДублей1РасширеннаяПодсказка - 282 - Label - true - true - - Left - - - - ОписаниеТекущейГруппыДублей1КонтекстноеМеню - 281 - true - - Label - true - true - true - true - - Center - Center - - - 1 - - - + + ОписаниеТекущейГруппыДублей1 + 280 + + <key>ru</key> + <value>Описание текущей группы дублей</value> + true true true - Группа2РасширеннаяПодсказка - 279 + ОписаниеТекущейГруппыДублей1РасширеннаяПодсказка + 282 Label true true @@ -2902,14 +2724,22 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + ОписаниеТекущейГруппыДублей1КонтекстноеМеню + 281 + true + + Label + true + true + true + + Center + Center + + + 1 + true @@ -2951,10 +2781,6 @@ ru Страницы места использования необработанных - - ru - Страницы места использования - 24 СтраницыМестаИспользованияНеобработанныхРасширеннаяПодсказка @@ -3034,7 +2860,6 @@ true Label - true true true @@ -3072,10 +2897,7 @@ true Label - true true - true - false Click @@ -3095,7 +2917,6 @@ Группа пояснение к необработанным Ctrl+S - false ГруппаПояснениеКНеобработаннымРасширеннаяПодсказка 284 @@ -3258,6 +3079,151 @@ false + + ШагВозниклаОшибка + 448 + + КартинкаПредупреждение32 + 450 + + <key>ru</key> + <value>Картинка предупреждение32</value> + + true + true + + true + + + КартинкаПредупреждение32РасширеннаяПодсказка + 452 + Label + true + true + + Left + + + + КартинкаПредупреждение32КонтекстноеМеню + 451 + true + + true + true + Center + + + CommonPicture.Предупреждение32 + + + + + НадписьТекстОшибки + 453 + + <key>ru</key> + <value>Надпись текст ошибки</value> + + true + true + + true + + + НадписьТекстОшибкиРасширеннаяПодсказка + 455 + Label + true + true + + Left + + + + НадписьТекстОшибкиКонтекстноеМеню + 454 + true + + Label + 5 + true + true + Center + + Left + Center + + + + СсылкаПодробнее + 456 + + <key>ru</key> + <value>Подробнее</value> + + true + true + + true + + + СсылкаПодробнееРасширеннаяПодсказка + 458 + Label + true + true + + Left + + + + СсылкаПодробнееКонтекстноеМеню + 457 + true + + Label + true + Center + + + Click + СсылкаПодробнееНажатие + + true + Left + Center + + + true + true + + true + + + <key>ru</key> + <value>Возникла ошибка</value> + + + ru + Шаг возникла ошибка + + + ШагВозниклаОшибкаРасширеннаяПодсказка + 449 + Label + true + true + + Left + + + Page + + auto + false + + true true @@ -3473,7 +3439,6 @@ ru Группа вперед - true ГруппаВпередРасширеннаяПодсказка 174 @@ -3502,9 +3467,6 @@ ru Панель действий мастера - 2 - true - false ПанельДействийМастераРасширеннаяПодсказка 168 @@ -3554,7 +3516,9 @@ true true - + + CommonPicture.Предупреждение32 + @@ -3583,7 +3547,9 @@ true true - + + CommonPicture.ДлительнаяОперация48 + @@ -3616,7 +3582,9 @@ true true - + + CommonPicture.Информация32 + @@ -3646,14 +3614,12 @@ 197 true - 2 true - 1 true - false - false - + + CommonPicture.Предупреждение + @@ -3686,7 +3652,9 @@ true true - + + CommonPicture.Информация + false @@ -3741,12 +3709,6 @@ OnCreateAtServer ПриСозданииНаСервере - - OnClose - ПриЗакрытии - - 75 - 14 LockOwner true true @@ -4593,7 +4555,6 @@ Number 10 - true @@ -4642,6 +4603,21 @@ true + + ИдентификаторТекущейСтроки + + <key>ru</key> + <value>Идентификатор текущей строки</value> + + 33 + + + true + + + true + + ВыбратьОсновнойЭлемент diff --git a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Items/Внимание16/Picture.png b/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Items/Внимание16/Picture.png deleted file mode 100644 index 7325ab91c..000000000 Binary files a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Items/Внимание16/Picture.png and /dev/null differ diff --git a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Items/ДлительнаяОперация48/Picture.gif b/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Items/ДлительнаяОперация48/Picture.gif deleted file mode 100644 index fd636e679..000000000 Binary files a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Items/ДлительнаяОперация48/Picture.gif and /dev/null differ diff --git a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Items/Информация16/Picture.png b/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Items/Информация16/Picture.png deleted file mode 100644 index 24fea1254..000000000 Binary files a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Items/Информация16/Picture.png and /dev/null differ diff --git a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Items/Информация32/Picture.png b/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Items/Информация32/Picture.png deleted file mode 100644 index dd7660e75..000000000 Binary files a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Items/Информация32/Picture.png and /dev/null differ diff --git a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Items/Предупреждение32/Picture.png b/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Items/Предупреждение32/Picture.png deleted file mode 100644 index f082ad4b3..000000000 Binary files a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Items/Предупреждение32/Picture.png and /dev/null differ diff --git a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Module.bsl b/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Module.bsl index ee6c5f68f..085db8e9f 100644 --- a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Module.bsl +++ b/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПоискДублей/Module.bsl @@ -71,24 +71,28 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) - - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено = Ложь - И НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания <> Неопределено - И НастройкиПошаговогоМастера.ЕстьПодтверждениеОтменыЗадания = Ложь Тогда - Отказ = Истина; - ФоновоеЗаданиеЗагрузитьНаКлиенте(Ложь, Истина); +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) + Если Не НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием Тогда + Возврат; + КонецЕсли; + Если ЗавершениеРаботы Тогда + Возврат; КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ПриЗакрытии() - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено = Ложь - И НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания <> Неопределено Тогда - ФоновоеЗаданиеОтменить(); + Отказ = Истина; + Если НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновыйПоискДублей" Тогда + ТекстВопроса = НСтр("ru = 'Прервать поиск дублей и закрыть форму?'"); + ИначеЕсли НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновоеУдалениеДублей" Тогда + ТекстВопроса = НСтр("ru = 'Прервать удаление дублей и закрыть форму?'"); КонецЕсли; - ПриЗакрытииСохранениеДанных(); + + Кнопки = Новый СписокЗначений; + Кнопки.Добавить(КодВозвратаДиалога.Прервать, НСтр("ru = 'Прервать'")); + Кнопки.Добавить(КодВозвратаДиалога.Нет, НСтр("ru = 'Не прерывать'")); + + Обработчик = Новый ОписаниеОповещения("ПослеПодтвержденияОтменыЗадания", ЭтотОбъект); + + ПоказатьВопрос(Обработчик, ТекстВопроса, Кнопки, , КодВозвратаДиалога.Нет); КонецПроцедуры #КонецОбласти @@ -123,13 +127,13 @@ ОбластьПоискаДублей = Результат; ИнициализироватьКомпоновщикОтбораИПравила(Неопределено); - ПерейтиНаШагМастера(Элементы.ШагПоискНеВыполнялся, Истина); + ПерейтиНаШагМастера(Элементы.ШагПоискНеВыполнялся); КонецПроцедуры &НаКлиенте Процедура ОбластьПоискаДублейПриИзменении(Элемент) ИнициализироватьКомпоновщикОтбораИПравила(Неопределено); - ПерейтиНаШагМастера(Элементы.ШагПоискНеВыполнялся, Истина); + ПерейтиНаШагМастера(Элементы.ШагПоискНеВыполнялся); КонецПроцедуры &НаКлиенте @@ -178,22 +182,20 @@ КонецПроцедуры &НаКлиенте -Процедура ПравилаОтбораЗавершениеВыбора(Результат, ПараметрыВыполнения) Экспорт - Если ТипЗнч(Результат) <> Тип("Строка") Тогда +Процедура ПравилаОтбораЗавершениеВыбора(АдресРезультата, ПараметрыВыполнения) Экспорт + Если ТипЗнч(АдресРезультата) <> Тип("Строка") Или Не ЭтоАдресВременногоХранилища(АдресРезультата) Тогда Возврат; КонецЕсли; - - ОбновитьКомпоновщикОтбора(Результат); - ОбновитьОписаниеОтбора(); - - ПерейтиНаШагМастера(Элементы.ШагПоискНеВыполнялся, Истина); + ОбновитьКомпоновщикОтбора(АдресРезультата); + ПерейтиНаШагМастера(Элементы.ШагПоискНеВыполнялся); КонецПроцедуры &НаКлиенте Процедура ПредставлениеПравилОтбораОчистка(Элемент, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; КомпоновщикПредварительногоОтбора.Настройки.Отбор.Элементы.Очистить(); - ОбновитьОписаниеОтбора(); + ПерейтиНаШагМастера(Элементы.ШагПоискНеВыполнялся); + СохранитьПользовательскиеНастройки(); КонецПроцедуры &НаКлиенте @@ -221,15 +223,17 @@ КонецПроцедуры &НаКлиенте -Процедура ПравилаПоискаЗавершениеВыбора(Результат, ПараметрыВыполнения) Экспорт - Если ТипЗнч(Результат) <> Тип("Строка") Тогда +Процедура ПравилаПоискаЗавершениеВыбора(АдресРезультата, ПараметрыВыполнения) Экспорт + Если ТипЗнч(АдресРезультата) <> Тип("Строка") Или Не ЭтоАдресВременногоХранилища(АдресРезультата) Тогда Возврат; КонецЕсли; - - ОбновитьПравилаПоиска(Результат); - ОбновитьОписаниеПравилПоиска(); - - ПерейтиНаШагМастера(Элементы.ШагПоискНеВыполнялся, Истина); + ОбновитьПравилаПоиска(АдресРезультата); + ПерейтиНаШагМастера(Элементы.ШагПоискНеВыполнялся); +КонецПроцедуры + +&НаКлиенте +Процедура СсылкаПодробнееНажатие(Элемент) + СтандартныеПодсистемыКлиент.ПоказатьПодробнуюИнформацию(Неопределено, Элемент.Подсказка); КонецПроцедуры #КонецОбласти @@ -245,18 +249,18 @@ &НаКлиенте Процедура ОтложенныйОбработчикАктивизацииСтрокиДублей() - - ДанныеСтроки = Элементы.НайденныеДубли.ТекущиеДанные; - Если ДанныеСтроки = Неопределено Тогда + ИдентификаторСтроки = Элементы.НайденныеДубли.ТекущаяСтрока; + Если ИдентификаторСтроки = Неопределено Или ИдентификаторСтроки = ИдентификаторТекущейСтроки Тогда Возврат; КонецЕсли; + ИдентификаторТекущейСтроки = ИдентификаторСтроки; - ОбновитьМестаИспользованияКандидата( ДанныеСтроки.ПолучитьИдентификатор() ); + ОбновитьМестаИспользованияКандидата(ИдентификаторСтроки); КонецПроцедуры &НаСервере -Процедура ОбновитьМестаИспользованияКандидата(Знач СтрокаДанных) - ДанныеСтроки = НайденныеДубли.НайтиПоИдентификатору(СтрокаДанных); +Процедура ОбновитьМестаИспользованияКандидата(Знач ИдентификаторСтроки) + ДанныеСтроки = НайденныеДубли.НайтиПоИдентификатору(ИдентификаторСтроки); Если ДанныеСтроки.ПолучитьРодителя() = Неопределено Тогда // Описание группы @@ -477,7 +481,7 @@ &НаКлиенте Процедура ПовторитьПоиск(Команда) - ПерейтиНаШагМастера(Элементы.ШагВыполнениеПоиска, Истина); + ПерейтиНаШагМастера(Элементы.ШагВыполнениеПоиска); КонецПроцедуры @@ -530,7 +534,7 @@ КонецПроцедуры &НаСервере -Процедура ПриЗакрытииСохранениеДанных() +Процедура СохранитьПользовательскиеНастройки() НастройкиФормы = Новый Структура; НастройкиФормы.Вставить("УчитыватьПрикладныеПравила", УчитыватьПрикладныеПравила); НастройкиФормы.Вставить("ОбластьПоискаДублей", ОбластьПоискаДублей); @@ -786,13 +790,13 @@ Процедура ОбновитьОписаниеСостоянияНайденныхДублей(Форма) Форма.ОписаниеСостоянияНайденныхДублей = Новый ФорматированнаяСтрока( - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Найдено дублей: %2 (среди элементов: %1). Все отмеченные элементы будут помечены на удаление и заменены во всех местах использования на оригиналы (отмечены стрелкой).'"), - Форма.ВсегоЭлементов, - Форма.ВсегоНайденоДублей), - , - Форма.ЦветПоясняющийТекст); - + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Найдено дублей: %2 (среди элементов: %1). Все отмеченные элементы будут помечены на удаление и заменены во всех местах использования на оригиналы (отмечены стрелкой).'"), + Форма.ВсегоЭлементов, + Форма.ВсегоНайденоДублей), + , + Форма.ЦветПоясняющийТекст); + КонецПроцедуры &НаКлиенте @@ -823,11 +827,1044 @@ КонецПроцедуры &НаСервере -Функция ЗаполнитьРезультатыПоискаДублей(Знач Данные) - // Данные - результат функции ГруппыДублей модуля. +Функция АдресНастроекКомпоновщикаОтбора() + Возврат ПоместитьВоВременноеХранилище(КомпоновщикПредварительногоОтбора.Настройки, УникальныйИдентификатор); +КонецФункции + +&НаСервере +Функция АдресНастроекПравилПоиска() + Настройки = Новый Структура; + Настройки.Вставить("УчитыватьПрикладныеПравила", УчитыватьПрикладныеПравила); + Настройки.Вставить("ВсеВариантыСравнения", ВсеВариантыСравнения); + Настройки.Вставить("ПравилаПоиска", РеквизитФормыВЗначение("ПравилаПоиска")); + Возврат ПоместитьВоВременноеХранилище(Настройки); +КонецФункции + +&НаСервере +Процедура ОбновитьКомпоновщикОтбора(АдресРезультата) + Результат = ПолучитьИзВременногоХранилища(АдресРезультата); + УдалитьИзВременногоХранилища(АдресРезультата); + КомпоновщикПредварительногоОтбора.ЗагрузитьНастройки(Результат); + КомпоновщикПредварительногоОтбора.Восстановить(СпособВосстановленияНастроекКомпоновкиДанных.Полное); + СохранитьПользовательскиеНастройки(); +КонецПроцедуры + +&НаСервере +Процедура ОбновитьПравилаПоиска(АдресРезультата) + Результат = ПолучитьИзВременногоХранилища(АдресРезультата); + УдалитьИзВременногоХранилища(АдресРезультата); + УчитыватьПрикладныеПравила = Результат.УчитыватьПрикладныеПравила; + ЗначениеВРеквизитФормы(Результат.ПравилаПоиска, "ПравилаПоиска"); + СохранитьПользовательскиеНастройки(); +КонецПроцедуры + +&НаСервере +Процедура ИнициализироватьКомпоновщикОтбораИПравила(НастройкиФормы) + // 1. Очистка и инициализация сведений об объекте метаданных. + ПредставлениеПравилОтбора = ""; + ПредставлениеПравилПоиска = ""; + ТаблицаНастроек = ПолучитьИзВременногоХранилища(АдресНастроек); + СтрокаТаблицыНастроек = ТаблицаНастроек.Найти(ОбластьПоискаДублей, "ПолноеИмя"); + Если СтрокаТаблицыНастроек = Неопределено Тогда + ОбластьПоискаДублей = ""; + Возврат; + КонецЕсли; + + ОбъектМетаданных = Метаданные.НайтиПоПолномуИмени(ОбластьПоискаДублей); + + // 2. Инициализация СКД, которая используется для отборов. + СхемаКомпоновки = Новый СхемаКомпоновкиДанных; + ИсточникДанных = СхемаКомпоновки.ИсточникиДанных.Добавить(); + ИсточникДанных.ТипИсточникаДанных = "Local"; + + НаборДанных = СхемаКомпоновки.НаборыДанных.Добавить(Тип("НаборДанныхЗапросСхемыКомпоновкиДанных")); + НаборДанных.Запрос = "ВЫБРАТЬ " + ДоступныеРеквизитыОтбора(ОбъектМетаданных) + " ИЗ " + ОбластьПоискаДублей; + НаборДанных.АвтоЗаполнениеДоступныхПолей = Истина; + + АдресСхемыКомпоновки = ПоместитьВоВременноеХранилище(СхемаКомпоновки, УникальныйИдентификатор); + + КомпоновщикПредварительногоОтбора.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновки)); + + // 3. Заполнение таблицы ПравилаПоиска. + ТаблицаПравил = РеквизитФормыВЗначение("ПравилаПоиска"); + ТаблицаПравил.Очистить(); + + ИгнорируемыеРеквизиты = Новый Структура("ПометкаУдаления, Ссылка, Предопределенный, ИмяПредопределенныхДанных, ЭтоГруппа"); + ДобавитьПравилаМетаРеквизитов(ТаблицаПравил, ИгнорируемыеРеквизиты, ВсеВариантыСравнения, ОбъектМетаданных.СтандартныеРеквизиты, НечеткийПоиск); + ДобавитьПравилаМетаРеквизитов(ТаблицаПравил, ИгнорируемыеРеквизиты, ВсеВариантыСравнения, ОбъектМетаданных.Реквизиты, НечеткийПоиск); + + // 4. Загрузка сохраненных значений. + ОтборыЗагружены = Ложь; + НастройкиКД = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НастройкиФормы, "НастройкиКД"); + Если ТипЗнч(НастройкиКД) = Тип("НастройкиКомпоновкиДанных") Тогда + КомпоновщикПредварительногоОтбора.ЗагрузитьНастройки(НастройкиКД); + ОтборыЗагружены = Истина; + КонецЕсли; + + ПравилаЗагружены = Ложь; + СохраненныеПравила = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НастройкиФормы, "ПравилаПоиска"); + Если ТипЗнч(СохраненныеПравила) = Тип("ТаблицаЗначений") Тогда + ПравилаЗагружены = Истина; + Для Каждого СохраненноеПравило Из СохраненныеПравила Цикл + Правило = ТаблицаПравил.Найти(СохраненноеПравило.Реквизит, "Реквизит"); + Если Правило <> Неопределено + И Правило.ВариантыСравнения.НайтиПоЗначению(СохраненноеПравило.Правило) <> Неопределено Тогда + Правило.Правило = СохраненноеПравило.Правило; + КонецЕсли; + КонецЦикла; + КонецЕсли; + + // 5. Установка умолчаний. + // Отбор по пометке удаления. + Если Не ОтборыЗагружены Тогда + ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора( + КомпоновщикПредварительногоОтбора.Настройки.Отбор, + "ПометкаУдаления", + Ложь, + ВидСравненияКомпоновкиДанных.Равно, + , + Ложь); + КонецЕсли; + // Сравнение по наименованию. + Если Не ПравилаЗагружены Тогда + Правило = ТаблицаПравил.Найти("Наименование", "Реквизит"); + Если Правило <> Неопределено Тогда + ЗначениеДляСравнения = ?(НечеткийПоиск, "Подобно", "Равно"); + Если Правило.ВариантыСравнения.НайтиПоЗначению(ЗначениеДляСравнения) <> Неопределено Тогда + Правило.Правило = ЗначениеДляСравнения; + КонецЕсли; + КонецЕсли; + КонецЕсли; + + // 6. Механизмы расширения в части прикладных правил. + ОписаниеПрикладныхПравил = Неопределено; + Если СтрокаТаблицыНастроек.СобытиеПараметрыПоискаДублей Тогда + ПараметрыПоУмолчанию = Новый Структура; + ПараметрыПоУмолчанию.Вставить("ПравилаПоиска", ТаблицаПравил); + ПараметрыПоУмолчанию.Вставить("ОграниченияСравнения", Новый Массив); + ПараметрыПоУмолчанию.Вставить("КомпоновщикОтбора", КомпоновщикПредварительногоОтбора); + ПараметрыПоУмолчанию.Вставить("КоличествоЭлементовДляСравнения", 1000); + МенеджерОбъектаМетаданных = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ОбъектМетаданных.ПолноеИмя()); + МенеджерОбъектаМетаданных.ПараметрыПоискаДублей(ПараметрыПоУмолчанию); + + // Представление прикладных правил. + ОписаниеПрикладныхПравил = ""; + Для Каждого Описание Из ПараметрыПоУмолчанию.ОграниченияСравнения Цикл + ОписаниеПрикладныхПравил = ОписаниеПрикладныхПравил + Символы.ПС + Описание.Представление; + КонецЦикла; + ОписаниеПрикладныхПравил = СокрЛП(ОписаниеПрикладныхПравил); + КонецЕсли; + + КомпоновщикПредварительногоОтбора.Восстановить(СпособВосстановленияНастроекКомпоновкиДанных.Полное); + + ТаблицаПравил.Сортировать("ПредставлениеРеквизита"); + ЗначениеВРеквизитФормы(ТаблицаПравил, "ПравилаПоиска"); + + Если НастройкиФормы = Неопределено Тогда + СохранитьПользовательскиеНастройки(); + КонецЕсли; +КонецПроцедуры + +&НаСервереБезКонтекста +Функция ДоступныеРеквизитыОтбора(ОбъектМетаданных) + МассивРеквизитов = Новый Массив; + Для Каждого РеквизитМетаданные Из ОбъектМетаданных.СтандартныеРеквизиты Цикл + Если Не РеквизитМетаданные.Тип.СодержитТип(Тип("ХранилищеЗначения")) Тогда + МассивРеквизитов.Добавить(РеквизитМетаданные.Имя); + КонецЕсли + КонецЦикла; + Для Каждого РеквизитМетаданные Из ОбъектМетаданных.Реквизиты Цикл + Если Не РеквизитМетаданные.Тип.СодержитТип(Тип("ХранилищеЗначения")) Тогда + МассивРеквизитов.Добавить(РеквизитМетаданные.Имя); + КонецЕсли + КонецЦикла; + Возврат СтрСоединить(МассивРеквизитов, ","); +КонецФункции + +&НаСервереБезКонтекста +Процедура ДобавитьПравилаМетаРеквизитов(ТаблицаПравил, Знач Игнорировать, Знач ВсеВариантыСравнения, Знач МетаКоллекция, Знач ДоступенНечеткийПоиск) + + Для Каждого МетаРеквизит Из МетаКоллекция Цикл + Если Не Игнорировать.Свойство(МетаРеквизит.Имя) Тогда + ВариантыСравнения = ВариантыСравненияДляТипа(МетаРеквизит.Тип, ВсеВариантыСравнения, ДоступенНечеткийПоиск); + Если ВариантыСравнения <> Неопределено Тогда + // Можно сравнивать + СтрокаПравил = ТаблицаПравил.Добавить(); + СтрокаПравил.Реквизит = МетаРеквизит.Имя; + СтрокаПравил.ВариантыСравнения = ВариантыСравнения; + + ПредставлениеРеквизита = МетаРеквизит.Синоним; + СтрокаПравил.ПредставлениеРеквизита = ?(ПустаяСтрока(ПредставлениеРеквизита), МетаРеквизит.Имя, ПредставлениеРеквизита); + КонецЕсли; + КонецЕсли; + КонецЦикла; + +КонецПроцедуры + +&НаСервереБезКонтекста +Функция ВариантыСравненияДляТипа(Знач ДоступныеТипы, Знач ВсеВариантыСравнения, Знач ДоступенНечеткийПоиск) + + ЭтоХранилище = ДоступныеТипы.СодержитТип(Тип("ХранилищеЗначения")); + Если ЭтоХранилище Тогда + // Нельзя сравнивать + Возврат Неопределено; + КонецЕсли; + + ЭтоСтрока = ДоступныеТипы.СодержитТип(Тип("Строка")); + ЭтоФиксированнаяСтрока = ЭтоСтрока И ДоступныеТипы.КвалификаторыСтроки <> Неопределено + И ДоступныеТипы.КвалификаторыСтроки.Длина <> 0; + + Если ЭтоСтрока И Не ЭтоФиксированнаяСтрока Тогда + // Нельзя сравнивать + Возврат Неопределено; + КонецЕсли; + + Результат = Новый СписокЗначений; + ЗаполнитьЗначенияСвойств(Результат.Добавить(), ВсеВариантыСравнения[0]); // Совпадает + + Если ДоступенНечеткийПоиск И ЭтоСтрока Тогда + ЗаполнитьЗначенияСвойств(Результат.Добавить(), ВсеВариантыСравнения[1]); // Похоже + КонецЕсли; + + Возврат Результат; +КонецФункции + +//////////////////////////////////////////////////////////////////////////////// +// Пошаговый помощник + +&НаСервере +Процедура ИнициализироватьСценарийМастера() + + // 0. Поиск не выполнялся. + КнопкиМастера = КнопкиМастера(); + КнопкиМастера.Назад.Видимость = Ложь; + КнопкиМастера.Далее.Заголовок = НСтр("ru = 'Найти дубли >'"); + КнопкиМастера.Далее.Подсказка = НСтр("ru = 'Найти дубли по указанным критериям'"); + КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Закрыть'"); + КнопкиМастера.Отмена.Подсказка = НСтр("ru = 'Отказаться от поиска и замены дублей'"); + + ДобавитьШагМастера(Элементы.ШагПоискНеВыполнялся, + ДействиеШагаМастера("ПриАктивации", "ШагПоискНеВыполнялсяПриАктивации", + ДействиеШагаМастера("ПередДействиемДалее", "ШагПоискНеВыполнялсяПередДействиемДалее", + ДействиеШагаМастера("ПередДействиемОтмена", "ШагПоискНеВыполнялсяПередДействиемОтмена",))), + КнопкиМастера); + + // 1. Длительный поиск. + КнопкиМастера = КнопкиМастера(); + КнопкиМастера.Назад.Видимость = Ложь; + КнопкиМастера.Далее.Видимость = Ложь; + КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Прервать'"); + КнопкиМастера.Отмена.Подсказка = НСтр("ru = 'Прервать поиск дублей'"); + + ДобавитьШагМастера(Элементы.ШагВыполнениеПоиска, + ДействиеШагаМастера("ПриАктивации", "ШагВыполнениеПоискаПриАктивации", + ДействиеШагаМастера("ПередДействиемОтмена", "ШагВыполнениеПоискаПередДействиемОтмена")), + КнопкиМастера); + + // 2. Обработка результатов поиска, выбор основных элементов. + КнопкиМастера = КнопкиМастера(); + КнопкиМастера.Назад.Видимость = Ложь; + КнопкиМастера.Далее.Заголовок = НСтр("ru = 'Удалить дубли >'"); + КнопкиМастера.Далее.Подсказка = НСтр("ru = 'Удалить дубли'"); + КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Закрыть'"); + КнопкиМастера.Отмена.Подсказка = НСтр("ru = 'Отказаться от поиска и замены дублей'"); + + ДобавитьШагМастера(Элементы.ШагВыборОсновногоЭлемента, + ДействиеШагаМастера("ПриАктивации", "ШагВыборОсновногоЭлементаПриАктивации", + ДействиеШагаМастера("ПередДействиемОтмена", "ШагВыборОсновногоЭлементаПередДействиемОтмена", + ДействиеШагаМастера("ПередДействиемДалее", "ШагВыборОсновногоЭлементаПередДействиемДалее",))), + КнопкиМастера); + + // 3. Длительное удаление дублей. + КнопкиМастера = КнопкиМастера(); + КнопкиМастера.Назад.Видимость = Ложь; + КнопкиМастера.Далее.Видимость = Ложь; + КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Прервать'"); + КнопкиМастера.Отмена.Подсказка = НСтр("ru = 'Прервать удаление дублей'"); + + ДобавитьШагМастера(Элементы.ШагВыполнениеУдаления, + ДействиеШагаМастера("ПриАктивации", "ШагВыполнениеУдаленияПриАктивации", + ДействиеШагаМастера("ПередДействиемОтмена", "ШагВыполнениеУдаленияПередДействиемОтмена")), + КнопкиМастера); + + // 4. Успешное удаление. + КнопкиМастера = КнопкиМастера(); + КнопкиМастера.Назад.Заголовок = НСтр("ru = '< Новый поиск'"); + КнопкиМастера.Назад.Подсказка = НСтр("ru = 'Начать новый поиск с другими параметрами'"); + КнопкиМастера.Далее.Видимость = Ложь; + КнопкиМастера.Отмена.КнопкаПоУмолчанию = Истина; + КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Закрыть'"); + + ДобавитьШагМастера(Элементы.ШагУспешноеУдаление, + ДействиеШагаМастера("ПриАктивации", "ШагУспешноеУдалениеПриАктивации", + ДействиеШагаМастера("ПередДействиемНазад", "ШагУспешноеУдалениеПередДействиемНазад", + ДействиеШагаМастера("ПередДействиемОтмена", "ШагУспешноеУдалениеПередДействиемОтмена",))), + КнопкиМастера); + + // 5. Неполное удаление. + КнопкиМастера = КнопкиМастера(); + КнопкиМастера.Назад.Видимость = Ложь; + КнопкиМастера.Далее.Заголовок = НСтр("ru = 'Повторить удаление >'"); + КнопкиМастера.Далее.Подсказка = НСтр("ru = 'Удалить дубли'"); + КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Закрыть'"); + + ДобавитьШагМастера(Элементы.ШагНеудачныеЗамены, + ДействиеШагаМастера("ПриАктивации", "ШагНеудачныеЗаменыПриАктивации", + ДействиеШагаМастера("ПередДействиемДалее", "ШагНеудачныеЗаменыПередДействиемДалее", + ДействиеШагаМастера("ПередДействиемОтмена", "ШагНеудачныеЗаменыПередДействиемОтмена",))), + КнопкиМастера); + + // 6. Дублей не найдено. + КнопкиМастера = КнопкиМастера(); + КнопкиМастера.Назад.Видимость = Ложь; + КнопкиМастера.Далее.Заголовок = НСтр("ru = 'Найти дубли >'"); + КнопкиМастера.Далее.Подсказка = НСтр("ru = 'Найти дубли по указанным критериям'"); + КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Закрыть'"); + + ДобавитьШагМастера(Элементы.ШагДублейНеНайдено, + ДействиеШагаМастера("ПриАктивации", "ШагДублейНеНайденоПриАктивации", + ДействиеШагаМастера("ПередДействиемДалее", "ШагДублейНеНайденоПередДействиемДалее", + ДействиеШагаМастера("ПередДействиемОтмена", "ШагДублейНеНайденоПередДействиемОтмена",))), + КнопкиМастера); + + // 7. Ошибки выполнения. + КнопкиМастера = КнопкиМастера(); + КнопкиМастера.Назад.Видимость = Ложь; + КнопкиМастера.Далее.Видимость = Ложь; + КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Закрыть'"); + + ДобавитьШагМастера(Элементы.ШагВозниклаОшибка, + ДействиеШагаМастера("ПриАктивации", "ШагВозниклаОшибкаПриАктивации", + ДействиеШагаМастера("ПередДействиемОтмена", "ШагВозниклаОшибкаПередДействиемОтмена")), + КнопкиМастера); + +КонецПроцедуры + +// 0. Поиск не выполнялся + +&НаКлиенте +Процедура ШагПоискНеВыполнялсяПриАктивации(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + + Элементы.Шапка.Доступность = Истина; + + // Представление правил отбора. + ПредставлениеПравилОтбора = Строка(КомпоновщикПредварительногоОтбора.Настройки.Отбор); + Если ПустаяСтрока(ПредставлениеПравилОтбора) Тогда + ПредставлениеПравилОтбора = НСтр("ru = 'Все элементы'"); + КонецЕсли; + + // Представление правил поиска. + Союз = " " + НСтр("ru = 'И'") + " "; + ТекстПравил = ""; + Для Каждого Правило Из ПравилаПоиска Цикл + Если Правило.Правило = "Равно" Тогда + Сравнение = Правило.ПредставлениеРеквизита + " " + НСтр("ru = 'совпадает'"); + ИначеЕсли Правило.Правило = "Подобно" Тогда + Сравнение = Правило.ПредставлениеРеквизита + " " + НСтр("ru = 'совпадает по похожим словам'"); + Иначе + Продолжить; + КонецЕсли; + ТекстПравил = ?(ТекстПравил = "", "", ТекстПравил + Союз) + Сравнение; + КонецЦикла; + Если УчитыватьПрикладныеПравила Тогда + Для Позиция = 1 По СтрЧислоСтрок(ОписаниеПрикладныхПравил) Цикл + СтрокаПравила = СокрЛП(СтрПолучитьСтроку(ОписаниеПрикладныхПравил, Позиция)); + Если Не ПустаяСтрока(СтрокаПравила) Тогда + ТекстПравил = ?(ТекстПравил = "", "", ТекстПравил + Союз) + СтрокаПравила; + КонецЕсли; + КонецЦикла; + КонецЕсли; + Если ПустаяСтрока(ТекстПравил) Тогда + ТекстПравил = НСтр("ru = 'Правила не заданы'"); + КонецЕсли; + ПредставлениеПравилПоиска = ТекстПравил; + + // Доступность. + Элементы.ПредставлениеПравилОтбора.Доступность = Не ПустаяСтрока(ОбластьПоискаДублей); + Элементы.ПредставлениеПравилПоиска.Доступность = Не ПустаяСтрока(ОбластьПоискаДублей); + +КонецПроцедуры + +&НаКлиенте +Процедура ШагПоискНеВыполнялсяПередДействиемДалее(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + + // Возможность поиска + Если Не ПустаяСтрока(ОбластьПоискаДублей) Тогда + ЗавершитьШагМастера(ПараметрыШага); + Возврат; + КонецЕсли; + + ТекстПредупреждения = НСтр("ru = 'Необходимо выбрать область поиска дублей'"); + ПоказатьПредупреждение(, ТекстПредупреждения); +КонецПроцедуры + +&НаКлиенте +Процедура ШагПоискНеВыполнялсяПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + Закрыть(); +КонецПроцедуры + +// 1. Длительный поиск + +&НаКлиенте +Процедура ШагВыполнениеПоискаПриАктивации(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + Если Не ЭтоАдресВременногоХранилища(АдресСхемыКомпоновки) Тогда + Возврат; // Не инициализировано. + КонецЕсли; + Элементы.Шапка.Доступность = Ложь; + НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием = Истина; + НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновыйПоискДублей"; + ЗапуститьФоновоеЗаданиеКлиент(); +КонецПроцедуры + +&НаКлиенте +Процедура ШагВыполнениеПоискаПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием = Ложь; + Закрыть(); +КонецПроцедуры + +// 2. Обработка результатов поиска, выбор основных элементов. + +&НаКлиенте +Процедура ШагВыборОсновногоЭлементаПриАктивации(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + Элементы.Шапка.Доступность = Истина; + Элементы.ПовторитьПоиск.Видимость = Истина; + РазвернутьГруппуДублейИерархически(); +КонецПроцедуры + +&НаКлиенте +Процедура ШагВыборОсновногоЭлементаПередДействиемДалее(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + Элементы.ПовторитьПоиск.Видимость = Ложь; + ЗавершитьШагМастера(ПараметрыШага); +КонецПроцедуры + +&НаКлиенте +Процедура ШагВыборОсновногоЭлементаПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + Закрыть(); +КонецПроцедуры + +// 3. Длительное удаление + +&НаКлиенте +Процедура ШагВыполнениеУдаленияПриАктивации(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + Элементы.Шапка.Доступность = Ложь; + НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием = Истина; + НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновоеУдалениеДублей"; + ЗапуститьФоновоеЗаданиеКлиент(); +КонецПроцедуры + +&НаКлиенте +Процедура ШагВыполнениеУдаленияПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием = Ложь; + Закрыть(); +КонецПроцедуры + +// 4. Успешное удаление + +&НаКлиенте +Процедура ШагУспешноеУдалениеПриАктивации(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + + Элементы.Шапка.Доступность = Ложь; + +КонецПроцедуры + +&НаКлиенте +Процедура ШагУспешноеУдалениеПередДействиемНазад(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + + // Переход на начало для работы с новыми параметрами. + ПерейтиНаШагМастера(Элементы.ШагПоискНеВыполнялся); + +КонецПроцедуры + +&НаКлиенте +Процедура ШагУспешноеУдалениеПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + Закрыть(); +КонецПроцедуры + +// 5. Неполное удаление + +&НаКлиенте +Процедура ШагНеудачныеЗаменыПриАктивации(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + + Элементы.Шапка.Доступность = Ложь; + +КонецПроцедуры + +&НаКлиенте +Процедура ШагНеудачныеЗаменыПередДействиемДалее(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + + // Повторяем удаление + ПерейтиНаШагМастера(Элементы.ШагВыполнениеУдаления); + +КонецПроцедуры + +&НаКлиенте +Процедура ШагНеудачныеЗаменыПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + Закрыть(); +КонецПроцедуры + +// 6. Дублей не найдено + +&НаКлиенте +Процедура ШагДублейНеНайденоПриАктивации(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + + Элементы.Шапка.Доступность = Истина; + +КонецПроцедуры + +&НаКлиенте +Процедура ШагДублейНеНайденоПередДействиемДалее(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + + ПерейтиНаШагМастера(Элементы.ШагВыполнениеПоиска); // Повторный поиск. + +КонецПроцедуры + +&НаКлиенте +Процедура ШагДублейНеНайденоПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + Закрыть(); +КонецПроцедуры + +// 7. Ошибки выполнения. + +&НаКлиенте +Процедура ШагВозниклаОшибкаПриАктивации(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + + Элементы.Шапка.Доступность = Истина; + Элементы.СсылкаПодробнее.Видимость = ЗначениеЗаполнено(Элементы.СсылкаПодробнее.Подсказка); + +КонецПроцедуры + +&НаКлиенте +Процедура ШагВозниклаОшибкаПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт + Закрыть(); +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Блок мастера + +// Для встраивания функционала мастера необходимо: +// +// 1) Нарисовать на форме группу, содержащую страницы помощника. +// 2) Определить на форме три команды для действий "Далее", "Назад", "Отмена". Определить им обработчики как: +// +// &НаКлиенте +// Процедура ШагМастераНазад(Команда) +// ШагМастера("Назад"); +// КонецПроцедуры +// +// &НаКлиенте +// Процедура ШагМастераДалее(Команда) +// ШагМастера("Далее"); +// КонецПроцедуры +// +// &НаКлиенте +// Процедура ШагМастераОтмена(Команда) +// ШагМастера("Отмена"); +// КонецПроцедуры +// +// 3) Добавить блок методов пошагового помощника. +// +// 4) В коде на сервере: +// - Инициализировать структуры помощника вызовом "ИнициализироватьМастер", передав туда соответствующие +// элементы формы. +// +// - Создать сценарий работы последовательным вызовами "ДобавитьШагМастера". Рекомендуется использовать +// вспомогательные функции "ДействиеШагаМастера" и "КнопкаШагаМастера". Например: +// +// ДобавитьШагМастера(Элементы.ШагВыборЦелевогоЭлемента, +// ДействиеШагаМастера("ПриАктивации", "ШагВыборЦелевогоЭлементаПриАктивации", +// ДействиеШагаМастера("ПередДействиемДалее", "ШагВыборЦелевогоЭлементаПередДействиемДалее", +// ДействиеШагаМастера("ПередДействиемОтмена", "ШагВыборЦелевогоЭлементаПередДействиемОтмена", +// ))), +// КнопкиМастера() +// ); +// +// 5) В коде на клиенте (обычно при открытии): +// - Указать начальную страницу мастера при помощи вызова "УстановитьНачальнуюСтраницуМастера". +// - Запустить начальную страницу вызовом "ЗапуститьРаботуМастера". +// + +&НаСервере +Функция ИнициализироватьМастер(Знач ГруппаСтраниц, Знач КнопкаДалее, Знач КнопкаНазад, Знач КнопкаОтмена) + // Инициализирует структуры мастера. + // + // Параметры: + // ГруппаСтраниц - ГруппаФормы - Элемент формы, группа типа "страницы", содержащая в себе страницы-шаги мастера. + // КнопкаДалее - КнопкаФормы, КнопкаКоманднойПанели - Элемент формы, используемый для кнопки "Далее". + // КнопкаНазад - КнопкаФормы, КнопкаКоманднойПанели - Элемент формы, используемый для кнопки "Назад". + // КнопкаОтмена - КнопкаФормы, КнопкаКоманднойПанели - Элемент формы, используемый для кнопки "Отмена". + Результат = Новый Структура; + + Результат.Вставить("Шаги", Новый Массив); + Результат.Вставить("НомерТекущегоШага", 0); + Результат.Вставить("СтраницаСтарта", Неопределено); + + // Идентификаторы частей интерфейса. + Результат.Вставить("ГруппаСтраниц", ГруппаСтраниц.Имя); + Результат.Вставить("КнопкаДалее", КнопкаДалее.Имя); + Результат.Вставить("КнопкаНазад", КнопкаНазад.Имя); + Результат.Вставить("КнопкаОтмена", КнопкаОтмена.Имя); + + // Для обработки длительных операций. + Результат.Вставить("ИмяПроцедуры"); + Результат.Вставить("ПоказатьДиалогПередЗакрытием", Ложь); + + Возврат Результат; +КонецФункции + +// Добавляет шаг мастера. Переходы между страницами будут происходить согласно порядку добавления. +// +// Параметры: +// +// Страница - ГруппаФормы - Группа-страница, содержащая элементы текущего шага страницы. +// +// Действия - Структура - Описание действий, возможных на текущем шаге. Поля структуры: +// +// * ПриАктивации - Строка - Необязательное имя процедуры, которая будет выполнена перед активацией +// страницы с двумя параметрами: +// <Страница> - ГруппаФормы - группа-страница, которая активизируется. +// <ДополнительныеПараметры> - Неопределено +// +// * ПередДействиемДалее - Строка - Необязательное имя процедуры, которая будет выполнена при нажатии кнопки +// "Далее", перед переходом на следующую страницу. Процедура будет вызвана с +// двумя параметрами: +// <ПараметрыШага> - служебный реквизит. При успешном завершении цепочки +// немодальных вызовов последняя процедура-обработчик +// должна произвести вызов. +// ЗавершитьШагМастера(ПараметрыШага), подтверждая +// действие. +// <ДополнительныеПараметры> - Неопределено +// +// * ПередДействиемНазад - Строка - Аналогично ПередДействиемДалее, описывает поведение при нажатии кнопки +// "Назад". +// +// * ПередДействиемОтмена - Строка - Аналогично ПередДействиемДалее, описывает поведение при нажатии кнопки +// "Отмена". +// +// Кнопки - Структура - описание кнопок на текущем шаге. Поля структуры: +// +// * Далее - Структура - Описание кнопки "Далее". поля: Заголовок, Подсказка, Доступность, Видимость, +// КнопкаПоУмолчанию. +// Пустая подсказка заменяется на заголовок. По умолчанию будут использованы значения: +// Заголовок = "Далее >", Доступность = Истина, Видимость = Истина, КнопкаПоУмолчанию = Истина; +// +// * Назад - Структура - Аналогично кнопке "Далее", значения по умолчанию: +// Заголовок = "< Назад", Доступность = Истина, Видимость = Истина, КнопкаПоУмолчанию = Ложь; +// +// * Отмена - Структура - Аналогично кнопке "Далее", значения по умолчанию: +// Заголовок = "Отмена", Доступность = Истина, Видимость = Истина, КнопкаПоУмолчанию = Ложь; +// +// Для составления параметров рекомендуется использовать вспомогательные методы "ДобавитьШагМастера", +// "ДействиеШагаМастера", "КнопкаШагаМастера". +// +&НаСервере +Процедура ДобавитьШагМастера(Знач Страница, Знач Действия, Знач Кнопки) + + // Умолчания + ОписаниеШага = Новый Структура("ПриАктивации, ПередДействиемДалее, ПередДействиемНазад, ПередДействиемОтмена"); + + ОписаниеШага.Вставить("Страница", Страница.Имя); + + // Устанавливаем действия + ЗаполнитьЗначенияСвойств(ОписаниеШага, Действия); + + // Регистрация описаний кнопок. + Для Каждого КлючИЗначение Из Кнопки Цикл + ИмяКнопки = КлючИЗначение.Ключ; + ОписаниеКнопки = КлючИЗначение.Значение; + // Дозаполнение вторичных свойств. + Если Не ОписаниеКнопки.Видимость Тогда + ОписаниеКнопки.Доступность = Ложь; + ОписаниеКнопки.КнопкаПоУмолчанию = Ложь; + Иначе + Если Не ЗначениеЗаполнено(ОписаниеКнопки.Подсказка) Тогда + ОписаниеКнопки.Подсказка = ОписаниеКнопки.Заголовок; + КонецЕсли; + КонецЕсли; + // Регистрация с префиксом "Кнопка". + ОписаниеШага.Вставить("Кнопка" + ИмяКнопки, ОписаниеКнопки); + КонецЦикла; + + НастройкиПошаговогоМастера.Шаги.Добавить(ОписаниеШага); +КонецПроцедуры + +// Вспомогательное формирование структуры, описывающей действие. +// +// Параметры: +// Идентификатор - Строка - Идентификатор действия, см описание метода "ДобавитьШагМастера". +// ИмяОбработчика - Строка - Имя процедуры, см описание метода "ДобавитьШагМастера". +// СлужебныеДанные - Структура - Накапливает значения. +// +// Возвращаемое значение - Структура - СлужебныеДанные с добавленными полями. +&НаСервере +Функция ДействиеШагаМастера(Знач Идентификатор, Знач ИмяОбработчика, СлужебныеДанные = Неопределено) + Если СлужебныеДанные = Неопределено Тогда + СлужебныеДанные = Новый Структура; + КонецЕсли; + СлужебныеДанные.Вставить(Идентификатор, ИмяОбработчика);; + Возврат СлужебныеДанные; +КонецФункции + +// Вспомогательное формирование структуры, описывающей кнопки мастера. +// +// Возвращаемое значение: +// Структура - Кнопки мастера. +// * Назад - Структура - Описание кнопки Назад, сформированное методом КнопкаМастера(). +// * Далее - Структура - Описание кнопки Далее, сформированное методом КнопкаМастера(). +// * Отмена - Структура - Описание кнопки Отмена, сформированное методом КнопкаМастера(). +// +&НаСервере +Функция КнопкиМастера() + Результат = Новый Структура("Далее, Назад, Отмена", КнопкаМастера(), КнопкаМастера(), КнопкаМастера()); + Результат.Далее.КнопкаПоУмолчанию = Истина; + Результат.Далее.Заголовок = НСтр("ru='Далее >'"); + Результат.Назад.Заголовок = НСтр("ru='< Назад'"); + Результат.Отмена.Заголовок = НСтр("ru='Отмена'"); + Возврат Результат; +КонецФункции + +// Описание настроек кнопки мастера. +// +// Возвращаемое значение: +// Структура - Настройки кнопки формы. +// * Заголовок - Строка - Заголовок кнопки. +// * Подсказка - Строка - Подсказка для кнопки. +// * Видимость - Булево - Когда Истина то кнопка видна. Значение по умолчанию: Истина. +// * Доступность - Булево - Когда Истина то кнопку можно нажимать. Значение по умолчанию: Истина. +// * КнопкаПоУмолчанию - Булево - Когда Истина то кнопка будет основной кнопкой формы. Значение по умолчанию: +// Ложь. +// +// См. также: +// "КнопкаФормы" в синтакс-помощнике. +// +&НаСервере +Функция КнопкаМастера() + Результат = Новый Структура; + Результат.Вставить("Заголовок", ""); + Результат.Вставить("Подсказка", ""); + + Результат.Вставить("Доступность", Истина); + Результат.Вставить("Видимость", Истина); + Результат.Вставить("КнопкаПоУмолчанию", Ложь); + + Возврат Результат; +КонецФункции + +// Устанавливает начальную страницу для первого запуска мастера. +// +// Параметры: +// СтартоваяСтраница - Число, Строка, ГруппаФормы - Номер шага, группа-страница, или ее идентификатор. +// +&НаКлиенте +Процедура УстановитьНачальнуюСтраницуМастера(Знач Страница) + + НастройкиПошаговогоМастера.СтраницаСтарта = НомерШагаМастераПоИдентификатору(Страница); + +КонецПроцедуры + +// Запускает начальную работу мастера с шага, установленного предварительно при помощи +// "УстановитьНачальнуюСтраницуМастера". +&НаКлиенте +Процедура ЗапуститьРаботуМастера() + + Если НастройкиПошаговогоМастера.СтраницаСтарта = Неопределено Тогда + ВызватьИсключение НСтр("ru = 'Перед запуском мастера должна быть установлена начальная страница.'"); + + ИначеЕсли НастройкиПошаговогоМастера.СтраницаСтарта = -1 Тогда + // Разогрев. Проверяем наличие обработчиков действий у всех шагов. + ВозможныеДействия = Новый Структура("ПриАктивации, ПередДействиемДалее, ПередДействиемНазад, ПередДействиемОтмена"); + Для Каждого ОписаниеШага Из НастройкиПошаговогоМастера.Шаги Цикл + Для Каждого КлючЗначение Из ВозможныеДействия Цикл + ИмяДействия = КлючЗначение.Ключ; + ИмяОбработчика = ОписаниеШага[ИмяДействия]; + Если Не ПустаяСтрока(ИмяОбработчика) Тогда + Попытка + Тест = Новый ОписаниеОповещения(ИмяОбработчика, ЭтотОбъект); + Исключение + Текст = НСтр("ru = 'Ошибка создания обработчика события %1 для страницы %2, не определена процедура %3'"); + Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Текст, ИмяДействия, ОписаниеШага.Страница, ИмяОбработчика); + ВызватьИсключение Текст; + КонецПопытки; + КонецЕсли; + КонецЦикла; + КонецЦикла; + + // Фактический запуск + ПерейтиНаШагМастера(НастройкиПошаговогоМастера.НомерТекущегоШага); + Иначе + // По умолчанию все отключено + Элементы[НастройкиПошаговогоМастера.КнопкаДалее].Видимость = Ложь; + Элементы[НастройкиПошаговогоМастера.КнопкаНазад].Видимость = Ложь; + Элементы[НастройкиПошаговогоМастера.КнопкаОтмена].Видимость = Ложь; + + // Отложенный запуск + НастройкиПошаговогоМастера.НомерТекущегоШага = НастройкиПошаговогоМастера.СтраницаСтарта; + НастройкиПошаговогоМастера.СтраницаСтарта = -1; + ПодключитьОбработчикОжидания("ЗапуститьРаботуМастера", 0.1, Истина); + КонецЕсли; +КонецПроцедуры + +// Выполняет переключение мастера на следующую или предыдущую страницу. +// +// Параметры: +// КодКоманды - Строка - Идентификатор действия, может принимать значения "Далее", "Назад" или "Отмена". +// +&НаКлиенте +Процедура ШагМастера(Знач КодКоманды) + + Если КодКоманды = "Далее" Тогда + Направление = 1; + ИначеЕсли КодКоманды = "Назад" Тогда + Направление = -1; + ИначеЕсли КодКоманды = "Отмена" Тогда + Направление = 0; + Иначе + ВызватьИсключение НСтр("ru = 'Некорректная команда шага помощника'"); + КонецЕсли; + + ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; + + // Отрабатываем уход с текущей страницы. + Если Направление = 1 Тогда + Действие = ОписаниеШага.ПередДействиемДалее; + + ИначеЕсли Направление = -1 Тогда + Действие = ОписаниеШага.ПередДействиемНазад; + + Иначе + Действие = ОписаниеШага.ПередДействиемОтмена; + + КонецЕсли; + + Если ПустаяСтрока(Действие) Тогда + ЗавершитьШагМастера(Направление); + Иначе + Оповещение = Новый ОписаниеОповещения(Действие, ЭтотОбъект); + ВыполнитьОбработкуОповещения(Оповещение, Направление); + КонецЕсли; +КонецПроцедуры + +// Выполняет безусловное позиционирование мастера на страницу. +// +// Параметры: +// ИдентификаторШага - Число, Строка, ГруппаФормы - Номер, группа-страница формы или ее имя для перехода. +// ИнициироватьСобытия - Булево - Флаг того, что необходимо вызывать события, связанные с активацией шага. +// +&НаКлиенте +Процедура ПерейтиНаШагМастера(Знач ИдентификаторШага, Знач ИнициироватьСобытия = Истина) + СледующийШаг = НомерШагаМастераПоИдентификатору(ИдентификаторШага); + Если СледующийШаг = Неопределено Тогда + Ошибка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не найден шаг помощника %1'"), ИдентификаторШага); + ВызватьИсключение Ошибка; + КонецЕсли; + + ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; + + // И запускаем новую страницу + ШагМастераЗавершениеБезусловно(СледующийШаг, ИнициироватьСобытия); +КонецПроцедуры + +// Подтверждает действие шага мастера и вызывает переключение страницы. +// +// Параметры: +// ПараметрыШага - Служебный реквизит, полученный в обработчике перед началом действия. +// +&НаКлиенте +Процедура ЗавершитьШагМастера(Знач ПараметрыШага) + СледующийШаг = НастройкиПошаговогоМастера.НомерТекущегоШага + ПараметрыШага; + ПоследнийШаг = НастройкиПошаговогоМастера.Шаги.ВГраница(); + + Если ПараметрыШага = 0 Тогда + // Подтверждение отмены - ничего не делаем. + Возврат; + + ИначеЕсли ПараметрыШага = 1 И СледующийШаг > ПоследнийШаг Тогда + // Попытка сделать шаг за пределы вперед. + ВызватьИсключение НСтр("ru='Попытка выхода за последний шаг мастера'"); + + ИначеЕсли ПараметрыШага = -1 И СледующийШаг < 0 Тогда + // Попытка сделать шаг за пределы назад. + ВызватьИсключение НСтр("ru='Попытка выхода назад из первого шага мастера'"); + + КонецЕсли; + + ШагМастераЗавершениеБезусловно(СледующийШаг); +КонецПроцедуры + +&НаКлиенте +Процедура ШагМастераЗавершениеБезусловно(Знач СледующийШаг, Знач ИнициироватьСобытия = Истина) + ОписаниеШага = НастройкиПошаговогоМастера.Шаги[СледующийШаг]; + ПоследнийШаг = НастройкиПошаговогоМастера.Шаги.ВГраница(); + + // Переключаем на новую страницу. + Элементы[НастройкиПошаговогоМастера.ГруппаСтраниц].ТекущаяСтраница = Элементы[ОписаниеШага.Страница]; + + // Обновляем кнопки + ОбновитьСвойстваКнопкиМастера(НастройкиПошаговогоМастера.КнопкаДалее, ОписаниеШага.КнопкаДалее); + ОбновитьСвойстваКнопкиМастера(НастройкиПошаговогоМастера.КнопкаНазад, ОписаниеШага.КнопкаНазад); + ОбновитьСвойстваКнопкиМастера(НастройкиПошаговогоМастера.КнопкаОтмена, ОписаниеШага.КнопкаОтмена); + + // Успешно перешли + НастройкиПошаговогоМастера.НомерТекущегоШага = СледующийШаг; + + Если ИнициироватьСобытия И Не ПустаяСтрока(ОписаниеШага.ПриАктивации) Тогда + // Отрабатываем "ПриАктивации" новой страницы, он же запустит ожидание. + ПодключитьОбработчикОжидания("ОбработкаАктивацииСтраницыМастера", 0.1, Истина); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ОбновитьСвойстваКнопкиМастера(Знач ИмяКнопки, Знач Описание) + + КнопкаМастера = Элементы[ИмяКнопки]; + ЗаполнитьЗначенияСвойств(КнопкаМастера, Описание); + КнопкаМастера.РасширеннаяПодсказка.Заголовок = Описание.Подсказка; + +КонецПроцедуры + +&НаКлиенте +Процедура ОбработкаАктивацииСтраницыМастера() + ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; + Если Не ПустаяСтрока(ОписаниеШага.ПриАктивации) Тогда + Оповещение = Новый ОписаниеОповещения(ОписаниеШага.ПриАктивации, ЭтотОбъект); + ВыполнитьОбработкуОповещения(Оповещение, Элементы[ОписаниеШага.Страница]); + КонецЕсли; +КонецПроцедуры + +// Может быть номер шага или группа-страница, или ее идентификатор. +&НаКлиенте +Функция НомерШагаМастераПоИдентификатору(Знач ИдентификаторШага) + ТипПараметра = ТипЗнч(ИдентификаторШага); + Если ТипПараметра = Тип("Число") Тогда + Возврат ИдентификаторШага; + КонецЕсли; + + ИмяПоиска = ?(ТипПараметра = Тип("ГруппаФормы"), ИдентификаторШага.Имя, ИдентификаторШага); + Для НомерШага=0 По НастройкиПошаговогоМастера.Шаги.ВГраница() Цикл + Если НастройкиПошаговогоМастера.Шаги[НомерШага].Страница = ИмяПоиска Тогда + Возврат НомерШага; + КонецЕсли; + КонецЦикла; + + ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не найден шаг ""%1"".'"), ИмяПоиска); +КонецФункции + +//////////////////////////////////////////////////////////////////////////////// +// Работа с длительными операциями + +&НаКлиенте +Процедура ЗапуститьФоновоеЗаданиеКлиент() + Задание = ЗапуститьФоновоеЗадание(); + + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + НастройкиОжидания.ВыводитьОкноОжидания = Ложь; + + Обработчик = Новый ОписаниеОповещения("ПослеЗавершенияФоновогоЗадания", ЭтотОбъект); + + ДлительныеОперацииКлиент.ОжидатьЗавершение(Задание, Обработчик, НастройкиОжидания); +КонецПроцедуры + +&НаСервере +Функция ЗапуститьФоновоеЗадание() + // Определение параметров запуска. + ИмяМетода = "ДлительныеОперации.ВыполнитьКомандуОтчетаИлиОбработки"; + + ПараметрыМетода = Новый Структура; + ПараметрыМетода.Вставить("ПолноеИмяОбъекта", "Обработка.ПоискИУдалениеДублей"); + ПараметрыМетода.Вставить("ИмяПроцедуры", НастройкиПошаговогоМастера.ИмяПроцедуры); + + Если НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновыйПоискДублей" Тогда + + НаименованиеМетода = НСтр("ru = 'Поиск и удаление дублей: Поиск дублей'"); + + ПараметрыМетода.Вставить("ОбластьПоискаДублей", ОбластьПоискаДублей); + ПараметрыМетода.Вставить("МаксимальноеЧислоДублей", 1500); + + Если ОбщегоНазначенияКлиентСервер.РежимОтладки() Тогда + ПараметрыМетода.МаксимальноеЧислоДублей = 50; + КонецЕсли; + + МассивПравилПоиска = Новый Массив; + Для Каждого Правило Из ПравилаПоиска Цикл + МассивПравилПоиска.Добавить(Новый Структура("Реквизит, Правило", Правило.Реквизит, Правило.Правило)); + КонецЦикла; + ПараметрыМетода.Вставить("ПравилаПоиска", МассивПравилПоиска); + + ПараметрыМетода.Вставить("УчитыватьПрикладныеПравила", УчитыватьПрикладныеПравила); + + // В качестве схемы компоновки передаем схему, будет использован отдельный фоновый сеанс. + ПараметрыМетода.Вставить("СхемаКомпоновки", ПолучитьИзВременногоХранилища(АдресСхемыКомпоновки)); + ПараметрыМетода.Вставить("НастройкиКомпоновщикаПредварительногоОтбора", КомпоновщикПредварительногоОтбора.Настройки); + + ИначеЕсли НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновоеУдалениеДублей" Тогда + + НаименованиеМетода = НСтр("ru = 'Поиск и удаление дублей: Удаление дублей'"); + + ПараметрыМетода.Вставить("СпособУдаления", "Пометка"); + ПараметрыМетода.Вставить("ПарыЗамен", ПарыЗаменДублей()); + ПараметрыМетода.Вставить("УчитыватьПрикладныеПравила", УчитыватьПрикладныеПравила); + + Иначе + + Возврат Ложь; + + КонецЕсли; + + НастройкиЗапуска = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + НастройкиЗапуска.НаименованиеФоновогоЗадания = НаименованиеМетода; + + Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяМетода, ПараметрыМетода, НастройкиЗапуска); +КонецФункции + +&НаКлиенте +Процедура ПослеЗавершенияФоновогоЗадания(Задание, ДополнительныеПараметры) Экспорт + НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием = Ложь; + Активизировать(); + Если Задание.Статус = "Выполнено" Тогда + Если НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновыйПоискДублей" Тогда + ВсегоНайденоДублей = ЗаполнитьРезультатыПоискаДублей(Задание.АдресРезультата); + Если ВсегоНайденоДублей > 0 Тогда + // Найдены дубли. + ШагМастера("Далее"); + ИначеЕсли ВсегоНайденоДублей < 0 Тогда + // Возникла ошибка (вероятно, найдено слишком много дублей). + ПерейтиНаШагМастера(Элементы.ШагВозниклаОшибка); + Иначе + // Дублей по текущим установкам не найдено. + ПерейтиНаШагМастера(Элементы.ШагДублейНеНайдено); + КонецЕсли; + ИначеЕсли НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновоеУдалениеДублей" Тогда + Успех = ЗаполнитьРезультатыУдаленияДублей(Задание.АдресРезультата); + Если Успех = Истина Тогда + // Заменены все группы дублей. + ШагМастера("Далее"); + Иначе + // Не все места использования удалось заменить. + ПерейтиНаШагМастера(Элементы.ШагНеудачныеЗамены); + КонецЕсли; + КонецЕсли; + Иначе + // Фоновое задание завершено с ошибкой. + Если НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновыйПоискДублей" Тогда + Кратко = НСтр("ru = 'При поиске дублей возникла ошибка:'"); + ИначеЕсли НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновоеУдалениеДублей" Тогда + Кратко = НСтр("ru = 'При удалении дублей возникла ошибка:'"); + КонецЕсли; + Кратко = Кратко + Символы.ПС + Задание.КраткоеПредставлениеОшибки; + Подробно = Кратко + Символы.ПС + Символы.ПС + Задание.ПодробноеПредставлениеОшибки; + Элементы.НадписьТекстОшибки.Заголовок = Кратко; + Элементы.СсылкаПодробнее.Подсказка = Подробно; + ПерейтиНаШагМастера(Элементы.ШагВозниклаОшибка); + КонецЕсли; +КонецПроцедуры + +&НаСервере +Функция ЗаполнитьРезультатыПоискаДублей(Знач АдресРезультата) + // Данные - результат функции ГруппыДублей модуля. + Данные = ПолучитьИзВременногоХранилища(АдресРезультата); Если Не ПустаяСтрока(Данные.ОписаниеОшибки) Тогда // Фоновое сломалось - ОписаниеСостоянияНайденныхДублей = Новый ФорматированнаяСтрока(Элементы.Внимание16.Картинка, Данные.ОписаниеОшибки); + Элементы.НадписьТекстОшибки.Заголовок = Данные.ОписаниеОшибки; + Элементы.СсылкаПодробнее.Видимость = Ложь; Возврат -1; КонецЕсли; @@ -888,21 +1925,20 @@ КонецЕсли; АдресМестИспользования = ПоместитьВоВременноеХранилище(МестаИспользования, УникальныйИдентификатор); - ВсегоЭлементов = ВсегоНайденоДублей; - ВсегоНайденоДублей = ВсегоНайденоДублей - ЭлементыДерева.Количество(); - Если ВсегоНайденоДублей = 0 Тогда + Если ВсегоНайденоДублей = ЭлементыДерева.Количество() Тогда ОписаниеСостоянияНайденныхДублей = Новый ФорматированнаяСтрока(Элементы.Информация16.Картинка, " ", НСтр("ru = 'Не обнаружено дублей по указанным условиям.'")); Иначе ОбновитьОписаниеСостоянияНайденныхДублей(ЭтотОбъект); КонецЕсли; - Возврат ВсегоЭлементов; + Возврат ВсегоНайденоДублей; КонецФункции &НаСервере -Функция ЗаполнитьРезультатыУдаленияДублей(Знач ТаблицаОшибок) +Функция ЗаполнитьРезультатыУдаленияДублей(Знач АдресРезультата) // ТаблицаОшибок - результат функции ЗаменитьСсылки модуля. + ТаблицаОшибок = ПолучитьИзВременногоХранилища(АдресРезультата); Если ЭтоАдресВременногоХранилища(АдресРезультатаЗамены) Тогда УдалитьИзВременногоХранилища(АдресРезультатаЗамены); @@ -1015,1216 +2051,13 @@ Возврат Ложь; КонецФункции -&НаСервере -Функция АдресНастроекКомпоновщикаОтбора() - - Возврат ПоместитьВоВременноеХранилище(КомпоновщикПредварительногоОтбора.Настройки, УникальныйИдентификатор); - -КонецФункции - -&НаСервере -Функция АдресНастроекПравилПоиска() - - Настройки = Новый Структура; - Настройки.Вставить("УчитыватьПрикладныеПравила", УчитыватьПрикладныеПравила); - Настройки.Вставить("ВсеВариантыСравнения", ВсеВариантыСравнения); - Настройки.Вставить("ПравилаПоиска", РеквизитФормыВЗначение("ПравилаПоиска")); - - Возврат ПоместитьВоВременноеХранилище(Настройки); -КонецФункции - -&НаСервере -Процедура ОбновитьКомпоновщикОтбора(Адрес) - - КомпоновщикПредварительногоОтбора.ЗагрузитьНастройки( ПолучитьИзВременногоХранилища(Адрес) ); - КомпоновщикПредварительногоОтбора.Восстановить(СпособВосстановленияНастроекКомпоновкиДанных.Полное); - УдалитьИзВременногоХранилища(Адрес); - -КонецПроцедуры - -&НаСервере -Процедура ОбновитьПравилаПоиска(Адрес) - Настройки = ПолучитьИзВременногоХранилища(Адрес); - Адрес = Неопределено; - - УчитыватьПрикладныеПравила = Настройки.УчитыватьПрикладныеПравила; - ЗначениеВРеквизитФормы(Настройки.ПравилаПоиска, "ПравилаПоиска"); -КонецПроцедуры - &НаКлиенте -Процедура ОбновитьОписаниеПравилПоиска() - ТекстПравил = ""; - Союз = " " + НСтр("ru = 'И'") + " "; - - Для Каждого Правило Из ПравилаПоиска Цикл - Если Правило.Правило = "Равно" Тогда - Сравнение = Правило.ПредставлениеРеквизита + " " + НСтр("ru = 'совпадает'"); - ИначеЕсли Правило.Правило = "Подобно" Тогда - Сравнение = Правило.ПредставлениеРеквизита + " " + НСтр("ru = 'совпадает по похожим словам'"); - Иначе - Продолжить; - КонецЕсли; - - ТекстПравил = ?(ТекстПравил = "", "", ТекстПравил + Союз) + Сравнение; - КонецЦикла; - - Если УчитыватьПрикладныеПравила Тогда - Для Позиция = 1 По СтрЧислоСтрок(ОписаниеПрикладныхПравил) Цикл - СтрокаПравила = СокрЛП(СтрПолучитьСтроку(ОписаниеПрикладныхПравил, Позиция)); - Если Не ПустаяСтрока(СтрокаПравила) Тогда - ТекстПравил = ?(ТекстПравил = "", "", ТекстПравил + Союз) + СтрокаПравила; - КонецЕсли; - КонецЦикла; - КонецЕсли; - - Если ПустаяСтрока(ТекстПравил) Тогда - ТекстПравил = НСтр("ru = 'Правила не заданы'"); - КонецЕсли; - ПредставлениеПравилПоиска = ТекстПравил; - Элементы.ПредставлениеПравилПоиска.Доступность = Не ПустаяСтрока(ОбластьПоискаДублей); -КонецПроцедуры - -&НаКлиенте -Процедура ОбновитьОписаниеОтбора() - ПредставлениеПравилОтбора = Строка(КомпоновщикПредварительногоОтбора.Настройки.Отбор); - Если ПустаяСтрока(ПредставлениеПравилОтбора) Тогда - ПредставлениеПравилОтбора = НСтр("ru = 'Все элементы'"); - КонецЕсли; - Элементы.ПредставлениеПравилОтбора.Доступность = Не ПустаяСтрока(ОбластьПоискаДублей); -КонецПроцедуры - -&НаСервере -Процедура ИнициализироватьКомпоновщикОтбораИПравила(НастройкиФормы) - // 1. Очистка и инициализация сведений об объекте метаданных. - ПредставлениеПравилОтбора = ""; - ПредставлениеПравилПоиска = ""; - - ТаблицаНастроек = ПолучитьИзВременногоХранилища(АдресНастроек); - СтрокаТаблицыНастроек = ТаблицаНастроек.Найти(ОбластьПоискаДублей, "ПолноеИмя"); - Если СтрокаТаблицыНастроек = Неопределено Тогда - ОбластьПоискаДублей = ""; - Возврат; - КонецЕсли; - - ОбъектМетаданных = Метаданные.НайтиПоПолномуИмени(ОбластьПоискаДублей); - - // 2. Инициализация СКД, которая используется для отборов. - СхемаКомпоновки = Новый СхемаКомпоновкиДанных; - ИсточникДанных = СхемаКомпоновки.ИсточникиДанных.Добавить(); - ИсточникДанных.ТипИсточникаДанных = "Local"; - - НаборДанных = СхемаКомпоновки.НаборыДанных.Добавить(Тип("НаборДанныхЗапросСхемыКомпоновкиДанных")); - НаборДанных.Запрос = "ВЫБРАТЬ " + ДоступныеРеквизитыОтбора(ОбъектМетаданных) + " ИЗ " + ОбластьПоискаДублей; - НаборДанных.АвтоЗаполнениеДоступныхПолей = Истина; - - АдресСхемыКомпоновки = ПоместитьВоВременноеХранилище(СхемаКомпоновки, УникальныйИдентификатор); - - КомпоновщикПредварительногоОтбора.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновки)); - - // 3. Заполнение таблицы ПравилаПоиска. - ТаблицаПравил = РеквизитФормыВЗначение("ПравилаПоиска"); - ТаблицаПравил.Очистить(); - - ИгнорируемыеРеквизиты = Новый Структура("ПометкаУдаления, Ссылка, Предопределенный, ИмяПредопределенныхДанных, ЭтоГруппа"); - ДобавитьПравилаМетаРеквизитов(ТаблицаПравил, ИгнорируемыеРеквизиты, ВсеВариантыСравнения, ОбъектМетаданных.СтандартныеРеквизиты, НечеткийПоиск); - ДобавитьПравилаМетаРеквизитов(ТаблицаПравил, ИгнорируемыеРеквизиты, ВсеВариантыСравнения, ОбъектМетаданных.Реквизиты, НечеткийПоиск); - - // 4. Загрузка сохраненных значений. - ОтборыЗагружены = Ложь; - НастройкиКД = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НастройкиФормы, "НастройкиКД"); - Если ТипЗнч(НастройкиКД) = Тип("НастройкиКомпоновкиДанных") Тогда - КомпоновщикПредварительногоОтбора.ЗагрузитьНастройки(НастройкиКД); - ОтборыЗагружены = Истина; - КонецЕсли; - - ПравилаЗагружены = Ложь; - СохраненныеПравила = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НастройкиФормы, "ПравилаПоиска"); - Если ТипЗнч(СохраненныеПравила) = Тип("ТаблицаЗначений") Тогда - ПравилаЗагружены = Истина; - Для Каждого СохраненноеПравило Из СохраненныеПравила Цикл - Правило = ТаблицаПравил.Найти(СохраненноеПравило.Реквизит, "Реквизит"); - Если Правило <> Неопределено - И Правило.ВариантыСравнения.НайтиПоЗначению(СохраненноеПравило.Правило) <> Неопределено Тогда - Правило.Правило = СохраненноеПравило.Правило; - КонецЕсли; - КонецЦикла; - КонецЕсли; - - // 5. Установка умолчаний. - // Отбор по пометке удаления. - Если Не ОтборыЗагружены Тогда - ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбора( - КомпоновщикПредварительногоОтбора.Настройки.Отбор, - "ПометкаУдаления", - Ложь, - ВидСравненияКомпоновкиДанных.Равно, - , - Ложь); - КонецЕсли; - // Сравнение по наименованию. - Если Не ПравилаЗагружены Тогда - Правило = ТаблицаПравил.Найти("Наименование", "Реквизит"); - Если Правило <> Неопределено Тогда - ЗначениеДляСравнения = ?(НечеткийПоиск, "Подобно", "Равно"); - Если Правило.ВариантыСравнения.НайтиПоЗначению(ЗначениеДляСравнения) <> Неопределено Тогда - Правило.Правило = ЗначениеДляСравнения; - КонецЕсли; - КонецЕсли; - КонецЕсли; - - // 6. Механизмы расширения в части прикладных правил. - ОписаниеПрикладныхПравил = Неопределено; - Если СтрокаТаблицыНастроек.СобытиеПараметрыПоискаДублей Тогда - ПараметрыПоУмолчанию = Новый Структура; - ПараметрыПоУмолчанию.Вставить("ПравилаПоиска", ТаблицаПравил); - ПараметрыПоУмолчанию.Вставить("ОграниченияСравнения", Новый Массив); - ПараметрыПоУмолчанию.Вставить("КомпоновщикОтбора", КомпоновщикПредварительногоОтбора); - ПараметрыПоУмолчанию.Вставить("КоличествоЭлементовДляСравнения", 1000); - МенеджерОбъектаМетаданных = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ОбъектМетаданных.ПолноеИмя()); - МенеджерОбъектаМетаданных.ПараметрыПоискаДублей(ПараметрыПоУмолчанию); - - // Представление прикладных правил. - ОписаниеПрикладныхПравил = ""; - Для Каждого Описание Из ПараметрыПоУмолчанию.ОграниченияСравнения Цикл - ОписаниеПрикладныхПравил = ОписаниеПрикладныхПравил + Символы.ПС + Описание.Представление; - КонецЦикла; - ОписаниеПрикладныхПравил = СокрЛП(ОписаниеПрикладныхПравил); - КонецЕсли; - - КомпоновщикПредварительногоОтбора.Восстановить(СпособВосстановленияНастроекКомпоновкиДанных.Полное); - - ТаблицаПравил.Сортировать("ПредставлениеРеквизита"); - ЗначениеВРеквизитФормы(ТаблицаПравил, "ПравилаПоиска"); -КонецПроцедуры - -&НаСервереБезКонтекста -Функция ДоступныеРеквизитыОтбора(ОбъектМетаданных) - МассивРеквизитов = Новый Массив; - Для Каждого РеквизитМетаданные Из ОбъектМетаданных.СтандартныеРеквизиты Цикл - Если Не РеквизитМетаданные.Тип.СодержитТип(Тип("ХранилищеЗначения")) Тогда - МассивРеквизитов.Добавить(РеквизитМетаданные.Имя); - КонецЕсли - КонецЦикла; - Для Каждого РеквизитМетаданные Из ОбъектМетаданных.Реквизиты Цикл - Если Не РеквизитМетаданные.Тип.СодержитТип(Тип("ХранилищеЗначения")) Тогда - МассивРеквизитов.Добавить(РеквизитМетаданные.Имя); - КонецЕсли - КонецЦикла; - Возврат СтрСоединить(МассивРеквизитов, ","); -КонецФункции - -&НаСервереБезКонтекста -Процедура ДобавитьПравилаМетаРеквизитов(ТаблицаПравил, Знач Игнорировать, Знач ВсеВариантыСравнения, Знач МетаКоллекция, Знач ДоступенНечеткийПоиск) - - Для Каждого МетаРеквизит Из МетаКоллекция Цикл - Если Не Игнорировать.Свойство(МетаРеквизит.Имя) Тогда - ВариантыСравнения = ВариантыСравненияДляТипа(МетаРеквизит.Тип, ВсеВариантыСравнения, ДоступенНечеткийПоиск); - Если ВариантыСравнения <> Неопределено Тогда - // Можно сравнивать - СтрокаПравил = ТаблицаПравил.Добавить(); - СтрокаПравил.Реквизит = МетаРеквизит.Имя; - СтрокаПравил.ВариантыСравнения = ВариантыСравнения; - - ПредставлениеРеквизита = МетаРеквизит.Синоним; - СтрокаПравил.ПредставлениеРеквизита = ?(ПустаяСтрока(ПредставлениеРеквизита), МетаРеквизит.Имя, ПредставлениеРеквизита); - КонецЕсли; - КонецЕсли; - КонецЦикла; - -КонецПроцедуры - -&НаСервереБезКонтекста -Функция ВариантыСравненияДляТипа(Знач ДоступныеТипы, Знач ВсеВариантыСравнения, Знач ДоступенНечеткийПоиск) - - ЭтоХранилище = ДоступныеТипы.СодержитТип(Тип("ХранилищеЗначения")); - Если ЭтоХранилище Тогда - // Нельзя сравнивать - Возврат Неопределено; - КонецЕсли; - - ЭтоСтрока = ДоступныеТипы.СодержитТип(Тип("Строка")); - ЭтоФиксированнаяСтрока = ЭтоСтрока И ДоступныеТипы.КвалификаторыСтроки <> Неопределено - И ДоступныеТипы.КвалификаторыСтроки.Длина <> 0; - - Если ЭтоСтрока И Не ЭтоФиксированнаяСтрока Тогда - // Нельзя сравнивать - Возврат Неопределено; - КонецЕсли; - - Результат = Новый СписокЗначений; - ЗаполнитьЗначенияСвойств(Результат.Добавить(), ВсеВариантыСравнения[0]); // Совпадает - - Если ДоступенНечеткийПоиск И ЭтоСтрока Тогда - ЗаполнитьЗначенияСвойств(Результат.Добавить(), ВсеВариантыСравнения[1]); // Похоже - КонецЕсли; - - Возврат Результат; -КонецФункции - -//////////////////////////////////////////////////////////////////////////////// -// Пошаговый помощник - -&НаСервере -Процедура ИнициализироватьСценарийМастера() - - // 0. Поиск не выполнялся - КнопкиМастера = КнопкиМастера(); - КнопкиМастера.Назад.Видимость = Ложь; - КнопкиМастера.Далее.Заголовок = НСтр("ru = 'Найти дубли >'"); - КнопкиМастера.Далее.Подсказка = НСтр("ru = 'Найти дубли по указанным критериям'"); - КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Закрыть'"); - КнопкиМастера.Отмена.Подсказка = НСтр("ru = 'Отказаться от поиска и замены дублей'"); - - ДобавитьШагМастера(Элементы.ШагПоискНеВыполнялся, - ДействиеШагаМастера("ПриАктивации", "ШагПоискНеВыполнялсяПриАктивации", - ДействиеШагаМастера("ПередДействиемДалее", "ШагПоискНеВыполнялсяПередДействиемДалее", - ДействиеШагаМастера("ПередДействиемОтмена", "ШагПоискНеВыполнялсяПередДействиемОтмена",))), - КнопкиМастера); - - // 1. Длительный поиск - КнопкиМастера = КнопкиМастера(); - КнопкиМастера.Назад.Видимость = Ложь; - КнопкиМастера.Далее.Видимость = Ложь; - КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Прервать'"); - КнопкиМастера.Отмена.Подсказка = НСтр("ru = 'Прервать поиск дублей'"); - - ДобавитьШагМастера(Элементы.ШагВыполнениеПоиска, - ДействиеШагаМастера("ПриАктивации", "ШагВыполнениеПоискаПриАктивации", - ДействиеШагаМастера("ПередДействиемОтмена", "ШагВыполнениеПоискаПередДействиемОтмена", - ДействиеШагаМастера("ПриОбработкеОжидания", "ШагВыполнениеПоискаПриОбработкеОжидания",))), - КнопкиМастера); - - // 2. Обработка результатов поиска, выбор основных элементов. - КнопкиМастера = КнопкиМастера(); - КнопкиМастера.Назад.Видимость = Ложь; - КнопкиМастера.Далее.Заголовок = НСтр("ru = 'Удалить дубли >'"); - КнопкиМастера.Далее.Подсказка = НСтр("ru = 'Удалить дубли'"); - КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Закрыть'"); - КнопкиМастера.Отмена.Подсказка = НСтр("ru = 'Отказаться от поиска и замены дублей'"); - - ДобавитьШагМастера(Элементы.ШагВыборОсновногоЭлемента, - ДействиеШагаМастера("ПриАктивации", "ШагВыборОсновногоЭлементаПриАктивации", - ДействиеШагаМастера("ПередДействиемОтмена", "ШагВыборОсновногоЭлементаПередДействиемОтмена", - ДействиеШагаМастера("ПередДействиемДалее", "ШагВыборОсновногоЭлементаПередДействиемДалее",))), - КнопкиМастера); - - // 3. Длительное удаление дублей. - КнопкиМастера = КнопкиМастера(); - КнопкиМастера.Назад.Видимость = Ложь; - КнопкиМастера.Далее.Видимость = Ложь; - КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Прервать'"); - КнопкиМастера.Отмена.Подсказка = НСтр("ru = 'Прервать удаление дублей'"); - - ДобавитьШагМастера(Элементы.ШагВыполнениеУдаления, - ДействиеШагаМастера("ПриАктивации", "ШагВыполнениеУдаленияПриАктивации", - ДействиеШагаМастера("ПередДействиемОтмена", "ШагВыполнениеУдаленияПередДействиемОтмена", - ДействиеШагаМастера("ПриОбработкеОжидания", "ШагВыполнениеУдаленияПриОбработкеОжидания",))), - КнопкиМастера); - - // 4. Успешное удаление - КнопкиМастера = КнопкиМастера(); - КнопкиМастера.Назад.Заголовок = НСтр("ru = '< Новый поиск'"); - КнопкиМастера.Назад.Подсказка = НСтр("ru = 'Начать новый поиск с другими параметрами'"); - КнопкиМастера.Далее.Видимость = Ложь; - КнопкиМастера.Отмена.КнопкаПоУмолчанию = Истина; - КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Закрыть'"); - - ДобавитьШагМастера(Элементы.ШагУспешноеУдаление, - ДействиеШагаМастера("ПриАктивации", "ШагУспешноеУдалениеПриАктивации", - ДействиеШагаМастера("ПередДействиемНазад", "ШагУспешноеУдалениеПередДействиемНазад", - ДействиеШагаМастера("ПередДействиемОтмена", "ШагУспешноеУдалениеПередДействиемОтмена",))), - КнопкиМастера); - - // 5. Неполное удаление - КнопкиМастера = КнопкиМастера(); - КнопкиМастера.Назад.Видимость = Ложь; - КнопкиМастера.Далее.Заголовок = НСтр("ru = 'Повторить удаление >'"); - КнопкиМастера.Далее.Подсказка = НСтр("ru = 'Удалить дубли'"); - КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Закрыть'"); - - ДобавитьШагМастера(Элементы.ШагНеудачныеЗамены, - ДействиеШагаМастера("ПриАктивации", "ШагНеудачныеЗаменыПриАктивации", - ДействиеШагаМастера("ПередДействиемДалее", "ШагНеудачныеЗаменыПередДействиемДалее", - ДействиеШагаМастера("ПередДействиемОтмена", "ШагНеудачныеЗаменыПередДействиемОтмена",))), - КнопкиМастера); - - // 6. Дублей не найдено - КнопкиМастера = КнопкиМастера(); - КнопкиМастера.Назад.Видимость = Ложь; - КнопкиМастера.Далее.Заголовок = НСтр("ru = 'Найти дубли >'"); - КнопкиМастера.Далее.Подсказка = НСтр("ru = 'Найти дубли по указанным критериям'"); - КнопкиМастера.Отмена.Заголовок = НСтр("ru = 'Закрыть'"); - - ДобавитьШагМастера(Элементы.ШагДублейНеНайдено, - ДействиеШагаМастера("ПриАктивации", "ШагДублейНеНайденоПриАктивации", - ДействиеШагаМастера("ПередДействиемДалее", "ШагДублейНеНайденоПередДействиемДалее", - ДействиеШагаМастера("ПередДействиемОтмена", "ШагДублейНеНайденоПередДействиемОтмена",))), - КнопкиМастера); - -КонецПроцедуры - -// 0. Поиск не выполнялся - -&НаКлиенте -Процедура ШагПоискНеВыполнялсяПриАктивации(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - - Элементы.Шапка.Доступность = Истина; - - ОбновитьОписаниеОтбора(); - ОбновитьОписаниеПравилПоиска(); - -КонецПроцедуры - -&НаКлиенте -Процедура ШагПоискНеВыполнялсяПередДействиемДалее(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - - // Возможность поиска - Если Не ПустаяСтрока(ОбластьПоискаДублей) Тогда - ЗавершитьШагМастера(ПараметрыШага); - Возврат; - КонецЕсли; - - ТекстПредупреждения = НСтр("ru = 'Необходимо выбрать область поиска дублей'"); - ПоказатьПредупреждение(, ТекстПредупреждения); -КонецПроцедуры - -&НаКлиенте -Процедура ШагПоискНеВыполнялсяПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - Закрыть(); -КонецПроцедуры - -// 1. Длительный поиск - -&НаКлиенте -Процедура ШагВыполнениеПоискаПриАктивации(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - - Элементы.Шапка.Доступность = Ложь; - - Если Не ЭтоАдресВременногоХранилища(АдресСхемыКомпоновки) Тогда - Возврат; // Не инициализировано. - КонецЕсли; - - НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновыйПоискДублей"; - ФоновоеЗаданиеЗапустить(); - -КонецПроцедуры - -&НаКлиенте -Процедура ШагВыполнениеПоискаПриОбработкеОжидания(Прекратить, Знач ДополнительныеПараметры) Экспорт - Если ФоновоеЗаданиеЗагрузитьНаКлиенте(Ложь, Ложь) Тогда - Прекратить = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ШагВыполнениеПоискаПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - ПроверитьФоновоеЗаданиеИЗакрытьФормуБезПодтверждения(); -КонецПроцедуры - -// 2. Обработка результатов поиска, выбор основных элементов. - -&НаКлиенте -Процедура ШагВыборОсновногоЭлементаПриАктивации(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - - Элементы.Шапка.Доступность = Истина; - - // Разрешаем повторять поиск - Элементы.ПовторитьПоиск.Видимость = Истина; - - РазвернутьГруппуДублейИерархически(); - -КонецПроцедуры - -&НаКлиенте -Процедура ШагВыборОсновногоЭлементаПередДействиемДалее(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - - // Запрещаем повторять поиск - Элементы.ПовторитьПоиск.Видимость = Ложь; - - ЗавершитьШагМастера(ПараметрыШага); -КонецПроцедуры - -&НаКлиенте -Процедура ШагВыборОсновногоЭлементаПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - Закрыть(); -КонецПроцедуры - -// 3. Длительное удаление - -&НаКлиенте -Процедура ШагВыполнениеУдаленияПриАктивации(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - Элементы.Шапка.Доступность = Ложь; - НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновоеУдалениеДублей"; - ФоновоеЗаданиеЗапустить(); -КонецПроцедуры - -&НаКлиенте -Процедура ШагВыполнениеУдаленияПриОбработкеОжидания(Прекратить, Знач ДополнительныеПараметры) Экспорт - Если ФоновоеЗаданиеЗагрузитьНаКлиенте(Ложь, Ложь) Тогда - Прекратить = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ШагВыполнениеУдаленияПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - ПроверитьФоновоеЗаданиеИЗакрытьФормуБезПодтверждения(); -КонецПроцедуры - -// 4. Успешное удаление - -&НаКлиенте -Процедура ШагУспешноеУдалениеПриАктивации(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - - Элементы.Шапка.Доступность = Ложь; - -КонецПроцедуры - -&НаКлиенте -Процедура ШагУспешноеУдалениеПередДействиемНазад(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - - // Переход на начало для работы с новыми параметрами. - ПерейтиНаШагМастера(Элементы.ШагПоискНеВыполнялся, Истина); - -КонецПроцедуры - -&НаКлиенте -Процедура ШагУспешноеУдалениеПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - Закрыть(); -КонецПроцедуры - -// 5. Неполное удаление - -&НаКлиенте -Процедура ШагНеудачныеЗаменыПриАктивации(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - - Элементы.Шапка.Доступность = Ложь; - -КонецПроцедуры - -&НаКлиенте -Процедура ШагНеудачныеЗаменыПередДействиемДалее(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - - // Повторяем удаление - ПерейтиНаШагМастера(Элементы.ШагВыполнениеУдаления, Истина); - -КонецПроцедуры - -&НаКлиенте -Процедура ШагНеудачныеЗаменыПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - Закрыть(); -КонецПроцедуры - -// 6. Дублей не найдено - -&НаКлиенте -Процедура ШагДублейНеНайденоПриАктивации(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - - Элементы.Шапка.Доступность = Истина; - -КонецПроцедуры - -&НаКлиенте -Процедура ШагДублейНеНайденоПередДействиемДалее(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - - // Переход на повторный поиск - ПерейтиНаШагМастера(Элементы.ШагВыполнениеПоиска, Истина); - -КонецПроцедуры - -&НаКлиенте -Процедура ШагДублейНеНайденоПередДействиемОтмена(Знач ПараметрыШага, Знач ДополнительныеПараметры) Экспорт - Закрыть(); -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Блок мастера - -// Для встраивания функционала мастера необходимо: -// -// 1) Нарисовать на форме группу, содержащую страницы помощника. -// 2) Определить на форме три команды для действий "Далее", "Назад", "Отмена". Определить им обработчики как: -// -// &НаКлиенте -// Процедура ШагМастераНазад(Команда) -// ШагМастера("Назад"); -// КонецПроцедуры -// -// &НаКлиенте -// Процедура ШагМастераДалее(Команда) -// ШагМастера("Далее"); -// КонецПроцедуры -// -// &НаКлиенте -// Процедура ШагМастераОтмена(Команда) -// ШагМастера("Отмена"); -// КонецПроцедуры -// -// 3) Добавить блок методов пошагового помощника. -// -// 4) В коде на сервере: -// - Инициализировать структуры помощника вызовом "ИнициализироватьМастер", передав туда соответствующие -// элементы формы. -// -// - Создать сценарий работы последовательным вызовами "ДобавитьШагМастера". Рекомендуется использовать -// вспомогательные функции "ДействиеШагаМастера" и "КнопкаШагаМастера". Например: -// -// ДобавитьШагМастера(Элементы.ШагВыборЦелевогоЭлемента, -// ДействиеШагаМастера("ПриАктивации", "ШагВыборЦелевогоЭлементаПриАктивации", -// ДействиеШагаМастера("ПередДействиемДалее", "ШагВыборЦелевогоЭлементаПередДействиемДалее", -// ДействиеШагаМастера("ПередДействиемОтмена", "ШагВыборЦелевогоЭлементаПередДействиемОтмена", -// ))), -// КнопкиМастера() -// ); -// -// 5) В коде на клиенте (обычно при открытии): -// - Указать начальную страницу мастера при помощи вызова "УстановитьНачальнуюСтраницуМастера". -// - Запустить начальную страницу вызовом "ЗапуститьРаботуМастера". -// - -&НаСервере -Функция ИнициализироватьМастер(Знач ГруппаСтраниц, Знач КнопкаДалее, Знач КнопкаНазад, Знач КнопкаОтмена) - // Инициализирует структуры мастера. - // - // Параметры: - // ГруппаСтраниц - ГруппаФормы - Элемент формы, группа типа "страницы", содержащая в себе страницы-шаги мастера. - // КнопкаДалее - КнопкаФормы, КнопкаКоманднойПанели - Элемент формы, используемый для кнопки "Далее". - // КнопкаНазад - КнопкаФормы, КнопкаКоманднойПанели - Элемент формы, используемый для кнопки "Назад". - // КнопкаОтмена - КнопкаФормы, КнопкаКоманднойПанели - Элемент формы, используемый для кнопки "Отмена". - Результат = Новый Структура; - - Результат.Вставить("Шаги", Новый Массив); - Результат.Вставить("НомерТекущегоШага", 0); - Результат.Вставить("СтраницаСтарта", Неопределено); - - // Идентификаторы частей интерфейса. - Результат.Вставить("ГруппаСтраниц", ГруппаСтраниц.Имя); - Результат.Вставить("КнопкаДалее", КнопкаДалее.Имя); - Результат.Вставить("КнопкаНазад", КнопкаНазад.Имя); - Результат.Вставить("КнопкаОтмена", КнопкаОтмена.Имя); - - // Таймаут вызова обработчика - Результат.Вставить("ТаймаутОжиданияДлительнойОперации", - ?( ПолучитьСкоростьКлиентскогоСоединения() = СкоростьКлиентскогоСоединения.Низкая, 5, 3) ); - - // Для обработки длительных операций. - Результат.Вставить("ИдентификаторФоновогоЗадания"); - Результат.Вставить("АдресРезультатаФоновогоЗадания"); - Результат.Вставить("ИнформацияОбОшибке"); - Результат.Вставить("ЗаданиеВыполнено", Ложь); - Результат.Вставить("ИмяПроцедуры"); - Результат.Вставить("ЕстьПодтверждениеОтменыЗадания", Ложь); - - // Для хранения пользовательских параметров. - Результат.Вставить("ПользовательскиеПараметры", Новый Соответствие); - - Возврат Результат; -КонецФункции - -// Добавляет шаг мастера. Переходы между страницами будут происходить согласно порядку добавления. -// -// Параметры: -// -// Страница - ГруппаФормы - Группа-страница, содержащая элементы текущего шага страницы. -// -// Действия - Структура - Описание действий, возможных на текущем шаге. Поля структуры: -// -// * ПриАктивации - Строка - Необязательное имя процедуры, которая будет выполнена перед активацией -// страницы с двумя параметрами: -// <Страница> - ГруппаФормы - группа-страница, которая активизируется. -// <ДополнительныеПараметры> - Неопределено -// -// * ПередДействиемДалее - Строка - Необязательное имя процедуры, которая будет выполнена при нажатии кнопки -// "Далее", перед переходом на следующую страницу. Процедура будет вызвана с -// двумя параметрами: -// <ПараметрыШага> - служебный реквизит. При успешном завершении цепочки -// немодальных вызовов последняя процедура-обработчик -// должна произвести вызов. -// ЗавершитьШагМастера(ПараметрыШага), подтверждая -// действие. -// <ДополнительныеПараметры> - Неопределено -// -// * ПередДействиемНазад - Строка - Аналогично ПередДействиемДалее, описывает поведение при нажатии кнопки -// "Назад". -// -// * ПередДействиемОтмена - Строка - Аналогично ПередДействиемДалее, описывает поведение при нажатии кнопки -// "Отмена". -// -// * ПриОбработкеОжидания - Строка - Необязательное имя процедуры, которая будет периодически вызываться с -// двумя параметрами: -// <Прекратить> - Если при выходе из процедуры установить в значение -// Истина, то периодические вызовы будут прекращены. -// <ДополнительныеПараметры> - Неопределено -// -// Кнопки - Структура - описание кнопок на текущем шаге. Поля структуры: -// -// * Далее - Структура - Описание кнопки "Далее". поля: Заголовок, Подсказка, Доступность, Видимость, -// КнопкаПоУмолчанию. -// Пустая подсказка заменяется на заголовок. По умолчанию будут использованы значения: -// Заголовок = "Далее >", Доступность = Истина, Видимость = Истина, КнопкаПоУмолчанию = Истина; -// -// * Назад - Структура - Аналогично кнопке "Далее", значения по умолчанию: -// Заголовок = "< Назад", Доступность = Истина, Видимость = Истина, КнопкаПоУмолчанию = Ложь; -// -// * Отмена - Структура - Аналогично кнопке "Далее", значения по умолчанию: -// Заголовок = "Отмена", Доступность = Истина, Видимость = Истина, КнопкаПоУмолчанию = Ложь; -// -// Для составления параметров рекомендуется использовать вспомогательные методы "ДобавитьШагМастера", -// "ДействиеШагаМастера", "КнопкаШагаМастера". -// -&НаСервере -Процедура ДобавитьШагМастера(Знач Страница, Знач Действия, Знач Кнопки) - - // Умолчания - ОписаниеШага = Новый Структура("ПриАктивации, ПередДействиемДалее, ПередДействиемНазад, ПередДействиемОтмена, ПриОбработкеОжидания"); - - ОписаниеШага.Вставить("Страница", Страница.Имя); - - // Устанавливаем действия - ЗаполнитьЗначенияСвойств(ОписаниеШага, Действия); - - // Регистрация описаний кнопок. - Для Каждого КлючИЗначение Из Кнопки Цикл - ИмяКнопки = КлючИЗначение.Ключ; - ОписаниеКнопки = КлючИЗначение.Значение; - // Дозаполнение вторичных свойств. - Если Не ОписаниеКнопки.Видимость Тогда - ОписаниеКнопки.Доступность = Ложь; - ОписаниеКнопки.КнопкаПоУмолчанию = Ложь; - Иначе - Если Не ЗначениеЗаполнено(ОписаниеКнопки.Подсказка) Тогда - ОписаниеКнопки.Подсказка = ОписаниеКнопки.Заголовок; - КонецЕсли; - КонецЕсли; - // Регистрация с префиксом "Кнопка". - ОписаниеШага.Вставить("Кнопка" + ИмяКнопки, ОписаниеКнопки); - КонецЦикла; - - НастройкиПошаговогоМастера.Шаги.Добавить(ОписаниеШага); -КонецПроцедуры - -// Вспомогательное формирование структуры, описывающей действие. -// -// Параметры: -// Идентификатор - Строка - Идентификатор действия, см описание метода "ДобавитьШагМастера". -// ИмяОбработчика - Строка - Имя процедуры, см описание метода "ДобавитьШагМастера". -// СлужебныеДанные - Структура - Накапливает значения. -// -// Возвращаемое значение - Структура - СлужебныеДанные с добавленными полями. -&НаСервере -Функция ДействиеШагаМастера(Знач Идентификатор, Знач ИмяОбработчика, СлужебныеДанные = Неопределено) - Если СлужебныеДанные = Неопределено Тогда - СлужебныеДанные = Новый Структура; - КонецЕсли; - СлужебныеДанные.Вставить(Идентификатор, ИмяОбработчика);; - Возврат СлужебныеДанные; -КонецФункции - -// Вспомогательное формирование структуры, описывающей кнопки мастера. -// -// Возвращаемое значение: -// Структура - Кнопки мастера. -// * Назад - Структура - Описание кнопки Назад, сформированное методом КнопкаМастера(). -// * Далее - Структура - Описание кнопки Далее, сформированное методом КнопкаМастера(). -// * Отмена - Структура - Описание кнопки Отмена, сформированное методом КнопкаМастера(). -// -&НаСервере -Функция КнопкиМастера() - Результат = Новый Структура("Далее, Назад, Отмена", КнопкаМастера(), КнопкаМастера(), КнопкаМастера()); - Результат.Далее.КнопкаПоУмолчанию = Истина; - Результат.Далее.Заголовок = НСтр("ru='Далее >'"); - Результат.Назад.Заголовок = НСтр("ru='< Назад'"); - Результат.Отмена.Заголовок = НСтр("ru='Отмена'"); - Возврат Результат; -КонецФункции - -// Описание настроек кнопки мастера. -// -// Возвращаемое значение: -// Структура - Настройки кнопки формы. -// * Заголовок - Строка - Заголовок кнопки. -// * Подсказка - Строка - Подсказка для кнопки. -// * Видимость - Булево - Когда Истина то кнопка видна. Значение по умолчанию: Истина. -// * Доступность - Булево - Когда Истина то кнопку можно нажимать. Значение по умолчанию: Истина. -// * КнопкаПоУмолчанию - Булево - Когда Истина то кнопка будет основной кнопкой формы. Значение по умолчанию: -// Ложь. -// -// См. также: -// "КнопкаФормы" в синтакс-помощнике. -// -&НаСервере -Функция КнопкаМастера() - Результат = Новый Структура; - Результат.Вставить("Заголовок", ""); - Результат.Вставить("Подсказка", ""); - - Результат.Вставить("Доступность", Истина); - Результат.Вставить("Видимость", Истина); - Результат.Вставить("КнопкаПоУмолчанию", Ложь); - - Возврат Результат; -КонецФункции - -// Устанавливает начальную страницу для первого запуска мастера. -// -// Параметры: -// СтартоваяСтраница - Число, Строка, ГруппаФормы - Номер шага, группа-страница, или ее идентификатор. -// -&НаКлиенте -Процедура УстановитьНачальнуюСтраницуМастера(Знач Страница) - - НастройкиПошаговогоМастера.СтраницаСтарта = НомерШагаМастераПоИдентификатору(Страница); - -КонецПроцедуры - -// Запускает начальную работу мастера с шага, установленного предварительно при помощи -// "УстановитьНачальнуюСтраницуМастера". -&НаКлиенте -Процедура ЗапуститьРаботуМастера() - - Если НастройкиПошаговогоМастера.СтраницаСтарта = Неопределено Тогда - ВызватьИсключение НСтр("ru = 'Перед запуском мастера должна быть установлена начальная страница.'"); - - ИначеЕсли НастройкиПошаговогоМастера.СтраницаСтарта = -1 Тогда - // Разогрев. Проверяем наличие обработчиков действий у всех шагов. - ВозможныеДействия = Новый Структура("ПриАктивации, ПередДействиемДалее, ПередДействиемНазад, ПередДействиемОтмена, ПриОбработкеОжидания"); - Для Каждого ОписаниеШага Из НастройкиПошаговогоМастера.Шаги Цикл - Для Каждого КлючЗначение Из ВозможныеДействия Цикл - ИмяДействия = КлючЗначение.Ключ; - ИмяОбработчика = ОписаниеШага[ИмяДействия]; - Если Не ПустаяСтрока(ИмяОбработчика) Тогда - Попытка - Тест = Новый ОписаниеОповещения(ИмяОбработчика, ЭтотОбъект); - Исключение - Текст = НСтр("ru = 'Ошибка создания обработчика события %1 для страницы %2, не определена процедура %3'"); - Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Текст, ИмяДействия, ОписаниеШага.Страница, ИмяОбработчика); - ВызватьИсключение Текст; - КонецПопытки; - КонецЕсли; - КонецЦикла; - КонецЦикла; - - // Фактический запуск - ПерейтиНаШагМастера(НастройкиПошаговогоМастера.НомерТекущегоШага, Истина); - Иначе - // По умолчанию все отключено - Элементы[НастройкиПошаговогоМастера.КнопкаДалее].Видимость = Ложь; - Элементы[НастройкиПошаговогоМастера.КнопкаНазад].Видимость = Ложь; - Элементы[НастройкиПошаговогоМастера.КнопкаОтмена].Видимость = Ложь; - - // Отложенный запуск - НастройкиПошаговогоМастера.НомерТекущегоШага = НастройкиПошаговогоМастера.СтраницаСтарта; - НастройкиПошаговогоМастера.СтраницаСтарта = -1; - ПодключитьОбработчикОжидания("ЗапуститьРаботуМастера", 0.1, Истина); - КонецЕсли; -КонецПроцедуры - -// Выполняет переключение мастера на следующую или предыдущую страницу. -// -// Параметры: -// КодКоманды - Строка - Идентификатор действия, может принимать значения "Далее", "Назад" или "Отмена". -// -&НаКлиенте -Процедура ШагМастера(Знач КодКоманды) - - Если КодКоманды = "Далее" Тогда - Направление = 1; - ИначеЕсли КодКоманды = "Назад" Тогда - Направление = -1; - ИначеЕсли КодКоманды = "Отмена" Тогда - Направление = 0; - Иначе - ВызватьИсключение НСтр("ru = 'Некорректная команда шага помощника'"); - КонецЕсли; - - ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; - - // Останавливаем обработчик, если есть. - Если ОписаниеШага.ПриОбработкеОжидания <> Неопределено Тогда - ОтключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера"); - КонецЕсли; - - // Отрабатываем уход с текущей страницы. - Если Направление = 1 Тогда - Действие = ОписаниеШага.ПередДействиемДалее; - - ИначеЕсли Направление = -1 Тогда - Действие = ОписаниеШага.ПередДействиемНазад; - - Иначе - Действие = ОписаниеШага.ПередДействиемОтмена; - - КонецЕсли; - - Если ПустаяСтрока(Действие) Тогда - ЗавершитьШагМастера(Направление); - Иначе - Оповещение = Новый ОписаниеОповещения(Действие, ЭтотОбъект); - ВыполнитьОбработкуОповещения(Оповещение, Направление); - КонецЕсли; -КонецПроцедуры - -// Выполняет безусловное позиционирование мастера на страницу. -// -// Параметры: -// ИдентификаторШага - Число, Строка, ГруппаФормы - Номер, группа-страница формы или ее имя для перехода. -// ИнициироватьСобытия - Булево - Флаг того, что необходимо вызывать события, связанные с активацией шага. -// -&НаКлиенте -Процедура ПерейтиНаШагМастера(Знач ИдентификаторШага, Знач ИнициироватьСобытия = Ложь) - СледующийШаг = НомерШагаМастераПоИдентификатору(ИдентификаторШага); - Если СледующийШаг = Неопределено Тогда - Ошибка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не найден шаг помощника %1'"), ИдентификаторШага); - ВызватьИсключение Ошибка; - КонецЕсли; - - ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; - - // Останавливаем обработчик, если есть. - Если ОписаниеШага.ПриОбработкеОжидания <> Неопределено Тогда - ОтключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера"); - КонецЕсли; - - // И запускаем новую страницу - ШагМастераЗавершениеБезусловно(СледующийШаг, ИнициироватьСобытия); -КонецПроцедуры - -// Подтверждает действие шага мастера и вызывает переключение страницы. -// -// Параметры: -// ПараметрыШага - Служебный реквизит, полученный в обработчике перед началом действия. -// -&НаКлиенте -Процедура ЗавершитьШагМастера(Знач ПараметрыШага) - СледующийШаг = НастройкиПошаговогоМастера.НомерТекущегоШага + ПараметрыШага; - ПоследнийШаг = НастройкиПошаговогоМастера.Шаги.ВГраница(); - - Если ПараметрыШага = 0 Тогда - // Подтверждение отмены - ничего не делаем. - Возврат; - - ИначеЕсли ПараметрыШага = 1 И СледующийШаг > ПоследнийШаг Тогда - // Попытка сделать шаг за пределы вперед. - ВызватьИсключение НСтр("ru='Попытка выхода за последний шаг мастера'"); - - ИначеЕсли ПараметрыШага = -1 И СледующийШаг < 0 Тогда - // Попытка сделать шаг за пределы назад. - ВызватьИсключение НСтр("ru='Попытка выхода назад из первого шага мастера'"); - - КонецЕсли; - - ШагМастераЗавершениеБезусловно(СледующийШаг); -КонецПроцедуры - -&НаКлиенте -Процедура ШагМастераЗавершениеБезусловно(Знач СледующийШаг, Знач ИнициироватьСобытия = Истина) - ОписаниеШага = НастройкиПошаговогоМастера.Шаги[СледующийШаг]; - ПоследнийШаг = НастройкиПошаговогоМастера.Шаги.ВГраница(); - - // Переключаем на новую страницу. - Элементы[НастройкиПошаговогоМастера.ГруппаСтраниц].ТекущаяСтраница = Элементы[ОписаниеШага.Страница]; - // Обход особенности платформы. - ГруппаСтраницМастера = Элементы[НастройкиПошаговогоМастера.ГруппаСтраниц]; - НоваяТекущаяСтраница = Элементы[ОписаниеШага.Страница]; - ВидГруппыСтраница = ВидГруппыФормы.Страница; - ТипГруппаФормы = Тип("ГруппаФормы"); - Для Каждого Страница Из ГруппаСтраницМастера.ПодчиненныеЭлементы Цикл - Если ТипЗнч(Страница) = ТипГруппаФормы И Страница.Вид = ВидГруппыСтраница Тогда - Страница.Видимость = (Страница = НоваяТекущаяСтраница); - КонецЕсли; - КонецЦикла; - - // Обновляем кнопки - ОбновитьСвойстваКнопкиМастера(НастройкиПошаговогоМастера.КнопкаДалее, ОписаниеШага.КнопкаДалее); - ОбновитьСвойстваКнопкиМастера(НастройкиПошаговогоМастера.КнопкаНазад, ОписаниеШага.КнопкаНазад); - ОбновитьСвойстваКнопкиМастера(НастройкиПошаговогоМастера.КнопкаОтмена, ОписаниеШага.КнопкаОтмена); - - // Успешно перешли - НастройкиПошаговогоМастера.НомерТекущегоШага = СледующийШаг; - - Если ИнициироватьСобытия И Не ПустаяСтрока(ОписаниеШага.ПриАктивации) Тогда - // Отрабатываем "ПриАктивации" новой страницы, он же запустит ожидание. - ПодключитьОбработчикОжидания("ОбработкаАктивацииСтраницыМастера", 0.1, Истина); - - ИначеЕсли Не ПустаяСтрока(ОписаниеШага.ПриОбработкеОжидания) Тогда - // Запускаем обработчик ожидания, если надо. - ПодключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера", 0.1, Истина); - - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ОбновитьСвойстваКнопкиМастера(Знач ИмяКнопки, Знач Описание) - - КнопкаМастера = Элементы[ИмяКнопки]; - ЗаполнитьЗначенияСвойств(КнопкаМастера, Описание); - КнопкаМастера.РасширеннаяПодсказка.Заголовок = Описание.Подсказка; - -КонецПроцедуры - -&НаКлиенте -Процедура ОбработкаАктивацииСтраницыМастера() - ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; - Если Не ПустаяСтрока(ОписаниеШага.ПриАктивации) Тогда - Оповещение = Новый ОписаниеОповещения(ОписаниеШага.ПриАктивации, ЭтотОбъект); - ВыполнитьОбработкуОповещения(Оповещение, Элементы[ОписаниеШага.Страница]); - КонецЕсли; - - // И запускаем ожидание, если надо. - Если Не ПустаяСтрока(ОписаниеШага.ПриОбработкеОжидания) Тогда - // Первый запуск быстрый - ПодключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера", 0.1, Истина); - КонецЕсли; -КонецПроцедуры - -// Может быть номер шага или группа-страница, или ее идентификатор. -&НаКлиенте -Функция НомерШагаМастераПоИдентификатору(Знач ИдентификаторШага) - ТипПараметра = ТипЗнч(ИдентификаторШага); - Если ТипПараметра = Тип("Число") Тогда - Возврат ИдентификаторШага; - КонецЕсли; - - ИмяПоиска = ?(ТипПараметра = Тип("ГруппаФормы"), ИдентификаторШага.Имя, ИдентификаторШага); - Для НомерШага=0 По НастройкиПошаговогоМастера.Шаги.ВГраница() Цикл - Если НастройкиПошаговогоМастера.Шаги[НомерШага].Страница = ИмяПоиска Тогда - Возврат НомерШага; - КонецЕсли; - КонецЦикла; - - ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не найден шаг ""%1"".'"), ИмяПоиска); -КонецФункции - -// Возвращает флаг отмены -&НаКлиенте -Функция ОбработкаОжиданияСтраницыМастера() - ОписаниеШага = НастройкиПошаговогоМастера.Шаги[НастройкиПошаговогоМастера.НомерТекущегоШага]; - Действие = ОписаниеШага.ПриОбработкеОжидания; - Если ПустаяСтрока(Действие) Тогда - Возврат Ложь; - КонецЕсли; - - Оповещение = Новый ОписаниеОповещения(Действие, ЭтотОбъект); - - Прекратить = Ложь; - ВыполнитьОбработкуОповещения(Оповещение, Прекратить); - Продолжать = Не Прекратить; - - Если Продолжать Тогда - ПодключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера", НастройкиПошаговогоМастера.ТаймаутОжиданияДлительнойОперации, Истина); - КонецЕсли; - - Возврат Продолжать; -КонецФункции - -&НаКлиенте -Процедура ПослеПодтвержденияОтменыЗаданияИЗакрытияФормы(Ответ, ПараметрыВыполнения) Экспорт - Если Ответ = КодВозвратаДиалога.Прервать Тогда - ПроверитьФоновоеЗаданиеИЗакрытьФормуБезПодтверждения(); - Иначе - ОбработкаОжиданияСтраницыМастера(); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ПроверитьФоновоеЗаданиеИЗакрытьФормуБезПодтверждения() - Если Не ФоновоеЗаданиеЗагрузитьНаКлиенте(Истина, Ложь) Тогда - НастройкиПошаговогоМастера.ЕстьПодтверждениеОтменыЗадания = Истина; +Процедура ПослеПодтвержденияОтменыЗадания(Ответ, ПараметрыВыполнения) Экспорт + Если Ответ = КодВозвратаДиалога.Прервать + И НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием Тогда + НастройкиПошаговогоМастера.ПоказатьДиалогПередЗакрытием = Ложь; Закрыть(); КонецЕсли; КонецПроцедуры -&НаКлиенте -Функция ФоновоеЗаданиеЗагрузитьНаКлиенте(ПрерватьЕслиНеВыполнено, ПоказатьДиалогПередЗакрытием) - - ОтключитьОбработчикОжидания("ОбработкаОжиданияСтраницыМастера"); - - ИнформацияОЗадании = ФоновоеЗаданиеЗагрузитьРезультат(ПрерватьЕслиНеВыполнено); - Если Не ИнформацияОЗадании.Завершено Тогда - Если ПоказатьДиалогПередЗакрытием Тогда - Обработчик = Новый ОписаниеОповещения("ПослеПодтвержденияОтменыЗаданияИЗакрытияФормы", ЭтотОбъект); - - Если НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновыйПоискДублей" Тогда - ТекстВопроса = НСтр("ru = 'Прервать поиск дублей и закрыть форму?'"); - ИначеЕсли НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновоеУдалениеДублей" Тогда - ТекстВопроса = НСтр("ru = 'Прервать удаление дублей и закрыть форму?'"); - КонецЕсли; - - Кнопки = Новый СписокЗначений; - Кнопки.Добавить(КодВозвратаДиалога.Прервать, НСтр("ru = 'Прервать'")); - Кнопки.Добавить(КодВозвратаДиалога.Нет, НСтр("ru = 'Не прерывать'")); - - ПоказатьВопрос(Обработчик, ТекстВопроса, Кнопки, , КодВозвратаДиалога.Нет); - КонецЕсли; - Возврат Ложь; - КонецЕсли; - - Если НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновыйПоискДублей" Тогда - // Смотрим на результат выполнения. - ОписаниеОшибки = Неопределено; - Если ИнформацияОЗадании.ИнформацияОбОшибке <> Неопределено Тогда - ОписаниеОшибки = ИнформацияОЗадании.ИнформацияОбОшибке; - ИначеЕсли ИнформацияОЗадании.Результат = -1 Тогда - ОписаниеОшибки = ОписаниеСостоянияНайденныхДублей; - КонецЕсли; - - Если ОписаниеОшибки = Неопределено Тогда - Если ИнформацияОЗадании.Результат <> Неопределено И ИнформацияОЗадании.Результат > 0 Тогда - // Найдены какие-то дубли - ШагМастера("Далее"); - Иначе - // Дублей по текущим установкам не найдено. - ПерейтиНаШагМастера(Элементы.ШагДублейНеНайдено, Истина); - КонецЕсли; - Иначе - ПоказатьПредупреждение(, ОписаниеОшибки ); - ПерейтиНаШагМастера(Элементы.ШагПоискНеВыполнялся, Истина); - КонецЕсли; - ИначеЕсли НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновоеУдалениеДублей" Тогда - Если ИнформацияОЗадании.ИнформацияОбОшибке = Неопределено Тогда - // Выполнено успешно, данные сформированы и переложены в реквизиты. - Если ИнформацияОЗадании.Результат = Истина Тогда - // Успешно заменены все группы дублей. - ШагМастера("Далее"); - Иначе - // Не все места использования удалось заменить. - ПерейтиНаШагМастера(Элементы.ШагНеудачныеЗамены, Истина); - КонецЕсли; - Иначе - // Фоновое задание завершено с ошибкой. - ПоказатьПредупреждение(, ИнформацияОЗадании.ИнформацияОбОшибке); - ПерейтиНаШагМастера(Элементы.ШагПоискНеВыполнялся, Истина); - КонецЕсли; - КонецЕсли; - - Возврат Истина; -КонецФункции - -&НаСервере -Функция ФоновоеЗаданиеЗапустить() - // Отмена предыдущего задания. - ФоновоеЗаданиеОтменить(); - - // Определение параметров запуска. - ПараметрыМетода = Новый Структура; - ПараметрыМетода.Вставить("ПолноеИмяОбъекта", "Обработка.ПоискИУдалениеДублей"); - ПараметрыМетода.Вставить("ИмяПроцедуры", НастройкиПошаговогоМастера.ИмяПроцедуры); - - Если НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновыйПоискДублей" Тогда - - НаименованиеМетода = НСтр("ru = 'Поиск и удаление дублей: Поиск дублей'"); - - ПараметрыМетода.Вставить("ОбластьПоискаДублей", ОбластьПоискаДублей); - ПараметрыМетода.Вставить("МаксимальноеЧислоДублей", 1500); - - Если ОбщегоНазначенияКлиентСервер.РежимОтладки() Тогда - ПараметрыМетода.МаксимальноеЧислоДублей = 50; - КонецЕсли; - - МассивПравилПоиска = Новый Массив; - Для Каждого Правило Из ПравилаПоиска Цикл - МассивПравилПоиска.Добавить(Новый Структура("Реквизит, Правило", Правило.Реквизит, Правило.Правило)); - КонецЦикла; - ПараметрыМетода.Вставить("ПравилаПоиска", МассивПравилПоиска); - - ПараметрыМетода.Вставить("УчитыватьПрикладныеПравила", УчитыватьПрикладныеПравила); - - // В качестве схемы компоновки передаем схему, будет использован отдельный фоновый сеанс. - ПараметрыМетода.Вставить("СхемаКомпоновки", ПолучитьИзВременногоХранилища(АдресСхемыКомпоновки)); - ПараметрыМетода.Вставить("НастройкиКомпоновщикаПредварительногоОтбора", КомпоновщикПредварительногоОтбора.Настройки); - - ИначеЕсли НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновоеУдалениеДублей" Тогда - - НаименованиеМетода = НСтр("ru = 'Поиск и удаление дублей: Удаление дублей'"); - - ПараметрыМетода.Вставить("СпособУдаления", "Пометка"); - ПараметрыМетода.Вставить("ПарыЗамен", ПарыЗаменДублей()); - ПараметрыМетода.Вставить("УчитыватьПрикладныеПравила", УчитыватьПрикладныеПравила); - - Иначе - - Возврат Ложь; - - КонецЕсли; - - // Запуск. - ИнформацияОбОшибке = Неопределено; - Попытка - Задание = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "ДлительныеОперации.ВыполнитьКомандуОтчетаИлиОбработки", - ПараметрыМетода, - НаименованиеМетода); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КонецПопытки; - Если ИнформацияОбОшибке <> Неопределено Тогда - НастройкиПошаговогоМастера.ЗаданиеВыполнено = Истина; - НастройкиПошаговогоМастера.ИнформацияОбОшибке = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); - НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания = Неопределено; - НастройкиПошаговогоМастера.АдресРезультатаФоновогоЗадания = Неопределено; - Возврат Ложь; - КонецЕсли; - - НастройкиПошаговогоМастера.АдресРезультатаФоновогоЗадания = Задание.АдресХранилища; - НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания = Задание.ИдентификаторЗадания; - НастройкиПошаговогоМастера.ЗаданиеВыполнено = Задание.ЗаданиеВыполнено; - - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено Тогда - Возврат Ложь; - КонецЕсли; - - Возврат Истина; -КонецФункции - -&НаСервере -Функция ФоновоеЗаданиеЗагрузитьРезультат(Знач ПрерватьЕслиНеВыполнено = Ложь) - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено Тогда - НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания = Неопределено; - Иначе - Задание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания); - Если Задание <> Неопределено Тогда - Если Задание.ИнформацияОбОшибке <> Неопределено Тогда - НастройкиПошаговогоМастера.ИнформацияОбОшибке = ПодробноеПредставлениеОшибки(Задание.ИнформацияОбОшибке); - КонецЕсли; - НастройкиПошаговогоМастера.ЗаданиеВыполнено = Задание.Состояние <> СостояниеФоновогоЗадания.Активно; - КонецЕсли; - КонецЕсли; - - Значение = Неопределено; - Если НастройкиПошаговогоМастера.ЗаданиеВыполнено Тогда - Если НастройкиПошаговогоМастера.ИнформацияОбОшибке = Неопределено Тогда - Значение = ПолучитьИзВременногоХранилища(НастройкиПошаговогоМастера.АдресРезультатаФоновогоЗадания); - Если НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновыйПоискДублей" Тогда - Значение = ЗаполнитьРезультатыПоискаДублей(Значение); - ИначеЕсли НастройкиПошаговогоМастера.ИмяПроцедуры = "ФоновоеУдалениеДублей" Тогда - Значение = ЗаполнитьРезультатыУдаленияДублей(Значение); - КонецЕсли; - КонецЕсли; - НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания = Неопределено; - НастройкиПошаговогоМастера.АдресРезультатаФоновогоЗадания = Неопределено; - КонецЕсли; - - Если ПрерватьЕслиНеВыполнено И Не НастройкиПошаговогоМастера.ЗаданиеВыполнено Тогда - ФоновоеЗаданиеОтменить(); - КонецЕсли; - - ИнформацияОЗадании = Новый Структура; - ИнформацияОЗадании.Вставить("Завершено", НастройкиПошаговогоМастера.ЗаданиеВыполнено); - ИнформацияОЗадании.Вставить("ИнформацияОбОшибке", НастройкиПошаговогоМастера.ИнформацияОбОшибке); - ИнформацияОЗадании.Вставить("Результат", Значение); - - Возврат ИнформацияОЗадании; -КонецФункции - -&НаСервере -Процедура ФоновоеЗаданиеОтменить() - Если НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания <> Неопределено Тогда - ДлительныеОперации.ОтменитьВыполнениеЗадания(НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания); - КонецЕсли; - НастройкиПошаговогоМастера.ЗаданиеВыполнено = Ложь; - НастройкиПошаговогоМастера.АдресРезультатаФоновогоЗадания = Неопределено; - НастройкиПошаговогоМастера.ИнформацияОбОшибке = Неопределено; - НастройкиПошаговогоМастера.ИдентификаторФоновогоЗадания = Неопределено; -КонецПроцедуры - #КонецОбласти \ No newline at end of file diff --git a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПравилаПоиска/Form.form b/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПравилаПоиска/Form.form index 1ccb72646..a5a88227e 100644 --- a/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПравилаПоиска/Form.form +++ b/SSL/src/DataProcessors/ПоискИУдалениеДублей/Forms/ПравилаПоиска/Form.form @@ -272,6 +272,7 @@ </contextMenu> <width>50</width> <autoMaxWidth>true</autoMaxWidth> + <maxWidth>60</maxWidth> <autoMaxHeight>true</autoMaxHeight> <autoMaxRowsCount>true</autoMaxRowsCount> <header>true</header> @@ -370,9 +371,10 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:LabelFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> + <maxWidth>60</maxWidth> <height>3</height> <autoMaxHeight>true</autoMaxHeight> + <verticalStretch>false</verticalStretch> <border xsi:type="core:BorderDef"> <style>Single</style> <width>1</width> diff --git a/SSL/src/DataProcessors/ПоискИУдалениеДублей/ObjectModule.bsl b/SSL/src/DataProcessors/ПоискИУдалениеДублей/ObjectModule.bsl index fb9e3b447..7ca321748 100644 --- a/SSL/src/DataProcessors/ПоискИУдалениеДублей/ObjectModule.bsl +++ b/SSL/src/DataProcessors/ПоискИУдалениеДублей/ObjectModule.bsl @@ -3,12 +3,13 @@ #Область СлужебныйПрограммныйИнтерфейс // Определение менеджера объекта для вызова прикладных правил. -// +// // Параметры: -// ИмяОбластиПоискаДанных - Строка - Имя области (полное имя метаданных). +// ИмяОбластиПоискаДанных - Строка - Имя области (полное имя метаданных). // // Возвращаемое значение: -// СправочникиМенеджер, ПланыВидовХарактеристик.Менеджер, ПланыСчетовПланыВидовРасчета.Менеджер. +// СправочникиМенеджер, ПланыВидовХарактеристикМенеджер, +// ПланыСчетовМенеджер, ПланыВидовРасчетаМенеджер - Менеджер объекта. // Функция МенеджерОбластиПоискаДублей(Знач ИмяОбластиПоискаДанных) Экспорт Мета = Метаданные.НайтиПоПолномуИмени(ИмяОбластиПоискаДанных); @@ -87,8 +88,18 @@ // ЭталонныйОбъект - Произвольный - Объект для сравнения при поиски похожих элементов. // // Возвращаемое значение: -// ТаблицаЗначений - Реализация дерева значений через Ссылка и Родитель, -// верхний уровень - группы, нижний - найденные дубли. +// Структура - Результаты поиска дублей. +// * ТаблицаДублей - ТаблицаЗначений - Найденные дубли (в интерфейс выводятся в 2 уровня: Родители и Элементы). +// ** Ссылка - Произвольный - Ссылка элемента. +// ** Код - Произвольный - Код элемента. +// ** Наименование - Произвольный - Наименование элемента. +// ** Родитель - Произвольный - Родитель группы дублей. Если Родитель пустой, то элемент является родителем группы дублей. +// ** <Другие поля> - Произвольный - Значение соответствующего полей отборов и критериев сравнения дублей. +// * ОписаниеОшибки - Неопределено - Ошибки не возникло. +// - Строка - Описание ошибки, возникшей в процессе поиска дублей. +// * МестаИспользования - Неопределено, ТаблицаЗначений - Заполняется если +// ПараметрыПоиска.РассчитыватьМестаИспользования = Истина. +// Описание колонок таблицы см. в ОбщегоНазначения.МестаИспользования(). // Функция ГруппыДублей(Знач ПараметрыПоиска, Знач ЭталонныйОбъект = Неопределено) Экспорт ПолноеИмяОМ = ПараметрыПоиска.ОбластьПоискаДублей; @@ -160,11 +171,12 @@ СтруктураДополнительныхПолей = Новый Структура(ПоляДополнительныхДанных); // 2. Конструируем по возможно измененному компоновщику условия отбора. - Характеристики = Новый Структура("ДлинаКода, ДлинаНаименования, Иерархический, ВидИерархии", 0, 0, Ложь); + Характеристики = Новый Структура("ДлинаКода, ДлинаНомера, ДлинаНаименования, Иерархический, ВидИерархии", 0, 0, 0, Ложь); ЗаполнитьЗначенияСвойств(Характеристики, ОбъектМетаданных); ЕстьНаименование = Характеристики.ДлинаНаименования > 0; ЕстьКод = Характеристики.ДлинаКода > 0; + ЕстьНомер = Характеристики.ДлинаНомера > 0; // Дополнительные поля могут пересекаться с остальными, им надо дать псевдонимы. ТаблицаКандидатов = Новый ТаблицаЗначений; @@ -178,10 +190,14 @@ ИменаПолейВЗапросе = ДоступныеРеквизитыОтбора(ОбъектМетаданных); Если Не ЕстьКод Тогда - ИменаПолейВЗапросе = ИменаПолейВЗапросе + ", НЕОПРЕДЕЛЕНО КАК Код"; + Если ЕстьНомер Тогда + ИменаПолейВЗапросе = ИменаПолейВЗапросе + ", Номер КАК Код"; + Иначе + ИменаПолейВЗапросе = ИменаПолейВЗапросе + ", НЕОПРЕДЕЛЕНО КАК Код"; + КонецЕсли; КонецЕсли; Если Не ЕстьНаименование Тогда - ИменаПолейВЗапросе = ИменаПолейВЗапросе + ", НЕОПРЕДЕЛЕНО КАК Наименование"; + ИменаПолейВЗапросе = ИменаПолейВЗапросе + ", Ссылка КАК Наименование"; КонецЕсли; ИменаПолейВВыборе = СтрРазделить(ПоляСравненияНаРавенство + "," + ПоляСравненияНаПодобие, ",", Ложь); @@ -268,9 +284,6 @@ Если Не ЕстьКод Тогда ТаблицаЗначений.Колонки.Добавить("Код", Новый ОписаниеТипов("Неопределено")); КонецЕсли; - Если Не ЕстьНаименование Тогда - ТаблицаЗначений.Колонки.Добавить("Наименование", Новый ОписаниеТипов("Неопределено")); - КонецЕсли; Выборка1 = ИнициализироватьВыборкуТЗ(ТаблицаЗначений); КонецЕсли; @@ -350,7 +363,7 @@ МассивСтрок = Таблица2.ВыгрузитьКолонку(ИмяПоля); СтрокаМассивом = СтрСоединить(МассивСтрок,"~"); СтрокаДляПоиска = СтрокаТаблицы1[ИмяПоля]; - МассивИндексовСтрокой = FuzzySearch.StringSearch(СтрокаДляПоиска, СтрокаМассивом, "~", 10, 80, 90); + МассивИндексовСтрокой = FuzzySearch.StringSearch(НРег(СтрокаДляПоиска), НРег(СтрокаМассивом), "~", 10, 80, 90); Если ПустаяСтрока(МассивИндексовСтрокой) Тогда Продолжить; КонецЕсли; diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРасписания/Form.form b/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРасписания/Form.form deleted file mode 100644 index d1cedc4dd..000000000 --- a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРасписания/Form.form +++ /dev/null @@ -1,714 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:form="http://g5.1c.ru/v8/dt/form"> - <title> - <key>ru</key> - <value>Настройка обновления программы через Интернет</value> - - - ГруппаАвтоматическогоОбновления - 16 - - ПроверятьНаличиеОбновленияПриЗапуске - 2 - - <key>ru</key> - <value>Проверять наличие обновления в Интернете автоматически</value> - - true - true - - true - - - Объект.ПроверятьНаличиеОбновленияПриЗапуске - - None - - OnChange - ПроверятьНаличиеОбновленияПриЗапускеПриИзменении - - - ПроверятьНаличиеОбновленияПриЗапускеExtendedTooltip - 14 - Label - true - true - - Left - - - - ПроверятьНаличиеОбновленияПриЗапускеКонтекстноеМеню - 3 - true - - RadioButtonField - Enter - true - Left - true - - 1 - - - ru - Отключена - - - 0 - - - - - ru - При запуске программы - - - 2 - - - - - ru - По заданному расписанию: - - - 1 - - - Vertical - - - - Группа3 - 35 - - Декорация1 - 37 - true - true - - true - - - Декорация1РасширеннаяПодсказка - 39 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 38 - true - - Label - true - true - true - - Left - - - - НадписьОткрытьРасписание - 7 - - <key>ru</key> - <value>Не задано</value> - - true - true - - true - - - НадписьОткрытьРасписаниеExtendedTooltip - 15 - Label - true - true - - Left - - - - НадписьОткрытьРасписаниеКонтекстноеМеню - 8 - true - - Label - true - true - false - false - - - Click - НадписьОткрытьРасписаниеНажатие - - true - Left - Center - - - true - true - - true - - - Группа3РасширеннаяПодсказка - 36 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - auto - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Автоматическая проверка обновлений</value> - - true - false - - ГруппаАвтоматическогоОбновленияРасширеннаяПодсказка - 17 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - auto - Auto - Auto - - - - ГруппаДоступаКПользовательскомуСайту - 18 - - Группа1 - 26 - - КодПользователяСервераОбновлений - 20 - - <key>ru</key> - <value>Код пользователя</value> - - true - true - - true - - - Объект.КодПользователяСервераОбновлений - - - КодПользователяСервераОбновленийРасширеннаяПодсказка - 22 - Label - true - true - - Left - - - - КодПользователяСервераОбновленийКонтекстноеМеню - 21 - true - - InputField - Enter - true - Left - true - - 15 - true - true - false - true - true - true - true - Normal - - - - ПарольСервераОбновлений - 23 - - <key>ru</key> - <value>Пароль</value> - - true - true - - true - - - Объект.ПарольСервераОбновлений - - - ПарольСервераОбновленийРасширеннаяПодсказка - 25 - Label - true - true - - Left - - - - ПарольСервераОбновленийКонтекстноеМеню - 24 - true - - InputField - Enter - true - Left - true - - 15 - true - true - false - true - true - true - true - true - Normal - - - true - true - - true - - - Группа1РасширеннаяПодсказка - 27 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - Группа2 - 28 - - ПолучитьКодПользователяИПароль - 33 - - <key>ru</key> - <value>Как получить код пользователя и пароль?</value> - - true - true - - true - - - ПолучитьКодПользователяИПарольРасширеннаяПодсказка - 34 - Label - true - true - - Left - - - Hyperlink - Form.Command.ПолучитьКодПользователяИПароль - Normal - Auto - true - true - UserCmds - Auto - - - ЗапомнитьПарольСервераОбновлений - 30 - - <key>ru</key> - <value>Запомнить пароль</value> - - true - true - - true - - - Объект.ЗапомнитьПарольСервераОбновлений - - Right - - ЗапомнитьПарольСервераОбновленийРасширеннаяПодсказка - 32 - Label - true - true - - Left - - - - ЗапомнитьПарольСервераОбновленийКонтекстноеМеню - 31 - true - - CheckBoxField - Enter - true - Left - true - - - true - true - - true - - - Группа2РасширеннаяПодсказка - 29 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Доступ на пользовательский сайт</value> - - true - false - - ГруппаДоступаКПользовательскомуСайтуРасширеннаяПодсказка - 19 - Label - true - true - - Left - - - UsualGroup - - Auto - true - NormalSeparation - true - true - auto - Auto - Auto - - - Bottom - true - - ФормаКоманднаяПанель - -1 - - ОК - 1 - - <key>ru</key> - <value>ОК</value> - - true - true - - true - - false - - ОКExtendedTooltip - 11 - Label - true - true - - Left - - - Form.Command.КомандаОК - Auto - true - true - true - UserCmds - Auto - - - ФормаОтмена - 9 - true - true - - true - - - ФормаОтменаExtendedTooltip - 12 - Label - true - true - - Left - - - Form.StandardCommand.Cancel - Normal - Auto - true - true - UserCmds - Auto - - - ФормаСправка - 10 - true - true - - true - - - ФормаСправкаExtendedTooltip - 13 - Label - true - true - - Left - - - Form.StandardCommand.Help - Normal - Auto - true - true - UserCmds - Auto - - Right - true - - - OnCreateAtServer - ПриСозданииНаСервере - - - OnClose - ПриЗакрытии - - Abort - CustomizeForm - Ignore - No - RestoreValues - Retry - SaveValues - Yes - LockOwner - true - true - Vertical - true - true - true - auto - true - - Объект - 1 - - DataProcessorObject.ПоискИУстановкаОбновлений - - - true - - - true - - - Объект.АдресЭлектроннойПочты - - - Объект.ВосстанавливатьИнформационнуюБазу - - - Объект.ВыслатьОтчетНаПочту - - - Объект.ДатаВремяОбновления - - - Объект.ДоступныеОбновления - - - Объект.ИмяКаталогаРезервнойКопииИБ - - - Объект.ИмяФайлаОбновления - - - Объект.ИспользоватьРасписаниеДляПроверкиОбновления - - - Объект.ИсточникОбновления - - - Объект.КодЗадачиПланировщика - - - Объект.НуженФайлОбновления - - - Объект.ПовторныйЗапуск - - - Объект.РежимОбновления - - - Объект.РезультатОбновления - - - Объект.СоздаватьРезервнуюКопию - - - Объект.ТехническаяИнформацияОбОшибке - -
        true
        -
        - - КомандаОК - - <key>ru</key> - <value>Команда ОК</value> - - 1 - - ru - Команда ОК - - - true - - - - КомандаОК - - - DontUse - Auto - - - ПолучитьКодПользователяИПароль - - <key>ru</key> - <value>Получить код пользователя и пароль</value> - - 2 - - ru - Получить код пользователя и пароль - - - true - - - - ПолучитьКодПользователяИПароль - - - DontUse - Auto - - - ПроверятьНаличиеОбновленияПриЗапуске - - Number - - 10 - - - true - - - РасписаниеПроверкиНаличияОбновления - - true - - - - - - - diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРасписания/Help/ru.html b/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРасписания/Help/ru.html deleted file mode 100644 index a0fe7fa6e..000000000 --- a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРасписания/Help/ru.html +++ /dev/null @@ -1,13 +0,0 @@ - -

        Предназначена для настройки параметров обновления программы через Интернет.

        -

        Для обновления с пользовательского сайта необходимо указать код пользователя и пароль для доступа. Доступ к получению обновлений имеют только зарегистрированные пользователи программ 1С:Предприятие. Подробная информация о том, как можно получить код пользователя и пароль, содержится в разделе методической поддержки на сайте v8.1c.ru.

        -

        Открывается по команде Настройка обновления программы через Интернет из раздела Администрирование - Поддержка и обслуживания - Обновление версии программы.

        -

        С помощью переключателя установите автоматическую проверку обновлений:

        -
        • Отключена; -
        • При запуске программы; -
        • По заданному расписанию - при выборе этого значения заполните расписание автоматической проверки обновлений. Для этого перейдите по ссылке, которая принимает значение Не задано или показывает ранее введенное расписание.

        Заполните параметры доступа на пользовательский сайт v8.1c.ru:

        -
        • Код пользователя; -
        • Пароль.

        При необходимости включите флажок Запомнить пароль. Перейдите по ссылке Как получить код пользователя и пароль, если у вас еще нет возможности обновления программы через интернет.

        -

        См. также:

        - \ No newline at end of file diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРасписания/Module.bsl b/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРасписания/Module.bsl deleted file mode 100644 index 215625282..000000000 --- a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРасписания/Module.bsl +++ /dev/null @@ -1,139 +0,0 @@ - -#Область ОбработчикиСобытийФормы - -&НаСервере -Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - - Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. - Возврат; - КонецЕсли; - - НастройкиОбновленияКонфигурации = ОбновлениеКонфигурации.ПолучитьСтруктуруНастроекПомощника(); - ЗаполнитьЗначенияСвойств(Объект, НастройкиОбновленияКонфигурации); - Объект.РасписаниеПроверкиНаличияОбновления = ОбщегоНазначенияКлиентСервер.СтруктураВРасписание(Объект.РасписаниеПроверкиНаличияОбновления); - - УстановитьВидимостьРасписания(ЭтотОбъект); - -КонецПроцедуры - -#КонецОбласти - -#Область ОбработчикиСобытийЭлементовШапкиФормы - -&НаКлиенте -Процедура ПроверятьНаличиеОбновленияПриЗапускеПриИзменении(Элемент) - - УстановитьВидимостьРасписания(ЭтотОбъект); - -КонецПроцедуры - -&НаКлиенте -Процедура НадписьОткрытьРасписаниеНажатие(Элемент) - - Если Объект.РасписаниеПроверкиНаличияОбновления = Неопределено Тогда - Объект.РасписаниеПроверкиНаличияОбновления = Новый РасписаниеРегламентногоЗадания; - КонецЕсли; - Диалог = Новый ДиалогРасписанияРегламентногоЗадания(Объект.РасписаниеПроверкиНаличияОбновления); - ОписаниеОповещения = Новый ОписаниеОповещения("НадписьОткрытьРасписаниеНажатиеЗавершение", ЭтотОбъект); - Диалог.Показать(ОписаниеОповещения); - -КонецПроцедуры - -#КонецОбласти - -#Область ОбработчикиКомандФормы - -&НаКлиенте -Процедура КомандаОК(Команда) - - ОчиститьСообщения(); - НастройкиИзменены = (Параметры.ПроверятьНаличиеОбновленияПриЗапуске <> Объект.ПроверятьНаличиеОбновленияПриЗапуске - И (Параметры.ПроверятьНаличиеОбновленияПриЗапуске = 1 ИЛИ Объект.ПроверятьНаличиеОбновленияПриЗапуске = 1)) - ИЛИ Строка(Параметры.РасписаниеПроверкиНаличияОбновления) <> Строка(Объект.РасписаниеПроверкиНаличияОбновления); - - Если НастройкиИзменены Тогда - ПериодПовтораВТечениеДня = Объект.РасписаниеПроверкиНаличияОбновления.ПериодПовтораВТечениеДня; - Если ПериодПовтораВТечениеДня > 0 И ПериодПовтораВТечениеДня < 60 * 5 Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Интервал проверки не может быть задан чаще, чем один раз 5 минут.'")); - Возврат; - КонецЕсли; - - НастройкиОбновленияКонфигурации = ПараметрыПриложения["СтандартныеПодсистемы.НастройкиОбновленияКонфигурации"]; - НастройкиОбновленияКонфигурации.ПроверятьНаличиеОбновленияПриЗапуске = Объект.ПроверятьНаличиеОбновленияПриЗапуске; - НастройкиОбновленияКонфигурации.КодПользователяСервераОбновлений = Объект.КодПользователяСервераОбновлений; - НастройкиОбновленияКонфигурации.ПарольСервераОбновлений = ?(Объект.ЗапомнитьПарольСервераОбновлений, Объект.ПарольСервераОбновлений, ""); - НастройкиОбновленияКонфигурации.ЗапомнитьПарольСервераОбновлений = Объект.ЗапомнитьПарольСервераОбновлений; - НастройкиОбновленияКонфигурации.РасписаниеПроверкиНаличияОбновления = ОбщегоНазначенияКлиентСервер.РасписаниеВСтруктуру(Объект.РасписаниеПроверкиНаличияОбновления); - - ЗаписатьНастройки(НастройкиОбновленияКонфигурации); - ОбновлениеКонфигурацииКлиент.ПодключитьОтключитьПроверкуПоРасписанию(Объект.ПроверятьНаличиеОбновленияПриЗапуске = 1 - И Объект.РасписаниеПроверкиНаличияОбновления <> Неопределено); - - КонецЕсли; - - Закрыть(); - -КонецПроцедуры - -&НаКлиенте -Процедура ПолучитьКодПользователяИПароль(Команда) - - ПерейтиПоНавигационнойСсылке( - ОбновлениеКонфигурацииКлиент.ПолучитьПараметрыОбновления().АдресСтраницыИнформацииОПолученииДоступаКПользовательскомуСайту); - -КонецПроцедуры - -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -&НаКлиентеНаСервереБезКонтекста -Процедура УстановитьВидимостьРасписания(Форма) - - НадписьОткрытьРасписание = Форма.Элементы.НадписьОткрытьРасписание; - НадписьОткрытьРасписание.Заголовок = ТекстНадписиОткрытьРасписание(Форма); - - Если Форма.Объект.ПроверятьНаличиеОбновленияПриЗапуске = 1 Тогда - НадписьОткрытьРасписание.Доступность = Истина; - Иначе - НадписьОткрытьРасписание.Доступность = Ложь; - КонецЕсли; - -КонецПроцедуры - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстНадписиОткрытьРасписание(Форма) - - СтроковоеПредставлениеРасписания = Строка(Форма.Объект.РасписаниеПроверкиНаличияОбновления); - Возврат ?(Не ПустаяСтрока(СтроковоеПредставлениеРасписания), - СтроковоеПредставлениеРасписания, НСтр("ru = 'Не задано'")); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ЗаписатьНастройки(НастройкиОбновленияКонфигурации) - - ОбновлениеКонфигурацииВызовСервера.ЗаписатьСтруктуруНастроекПомощника(НастройкиОбновленияКонфигурации); - ОбновитьПовторноИспользуемыеЗначения(); // Сбрасываем кэш для применения настроек. - -КонецФункции - -&НаКлиенте -Процедура НадписьОткрытьРасписаниеНажатиеЗавершение(Расписание, ДополнительныеПараметры) Экспорт - - Если Расписание <> Неопределено Тогда - Объект.РасписаниеПроверкиНаличияОбновления = Расписание; - КонецЕсли; - - Элементы.НадписьОткрытьРасписание.Заголовок = ТекстНадписиОткрытьРасписание(ЭтотОбъект); - -КонецПроцедуры - -&НаКлиенте -Процедура ПриЗакрытии() - - Оповестить("ЗакрытаФормаНастройкиОбновленияКонфигурации"); - -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/Обозреватель/Form.form b/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/Обозреватель/Form.form deleted file mode 100644 index 5e59e05c1..000000000 --- a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/Обозреватель/Form.form +++ /dev/null @@ -1,398 +0,0 @@ - - - - <key>ru</key> - <value>Информация</value> - - - АдреснаяСтрока - 11 - - АдресСтраницы - 2 - true - true - - true - - - АдресСтраницы - - None - - АдресСтраницыExtendedTooltip - 16 - Label - true - true - - Left - - - - АдресСтраницыКонтекстноеМеню - 3 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal - - - - Кнопки - 14 - - Сформировать - 7 - true - true - - true - - false - - СформироватьExtendedTooltip - 18 - Label - true - true - - Left - - - Form.Command.Перейти - Auto - true - true - true - UserCmds - Auto - - - КнопкаНазад - 10 - true - true - - true - - false - - КнопкаНазадExtendedTooltip - 19 - Label - true - true - - Left - - - Form.Command.Назад - Normal - Picture - true - true - UserCmds - Auto - - - КнопкаВперед - 9 - true - true - - true - - false - - КнопкаВпередExtendedTooltip - 20 - Label - true - true - - Left - - - Form.Command.Вперед - Normal - Picture - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Кнопки</value> - - false - - КнопкиExtendedTooltip - 17 - Label - true - true - - Left - - - CommandBar - - Left - - - true - true - - true - - - <key>ru</key> - <value>Адресная строка</value> - - true - - АдреснаяСтрокаExtendedTooltip - 15 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - HTMLТекст - 4 - true - true - - true - - - HTMLТекст - - None - - HTMLТекстExtendedTooltip - 21 - Label - true - true - - Left - - - - HTMLТекстКонтекстноеМеню - 5 - true - - HTMLDocumentField - Enter - true - Left - true - - 50 - true - 15 - true - true - true - - - None - false - - ФормаКоманднаяПанель - -1 - Right - true - - - OnCreateAtServer - ПриСозданииНаСервере - - Abort - Cancel - CustomizeForm - Help - Ignore - No - OK - RestoreValues - Retry - SaveValues - Yes - DontBlock - true - true - Vertical - true - true - true - UseIfNecessary - auto - true - - АдресСтраницы - - <key>ru</key> - <value>Адрес страницы</value> - - 1 - - String - - - - true - - - true - - - - HTMLТекст - - <key>ru</key> - <value>HTMLТекст</value> - - 2 - - String - - - - true - - - true - - - - Перейти - - <key>ru</key> - <value>Перейти</value> - - 1 - - ru - Перейти - - - true - - - - ПерейтиКСтранице - - - DontUse - Auto - - - Вперед - - <key>ru</key> - <value>Вперед</value> - - 2 - - ru - Вперед - - - true - - - StdPicture.Forward - - - - Вперед - - - DontUse - Auto - - - Назад - - <key>ru</key> - <value>Назад</value> - - 3 - - ru - Назад - - - true - - - StdPicture.Back - - - - Назад - - - DontUse - Auto - - - АдресСтраницы - - String - - - true - - - ПоказыватьАдреснуюСтроку - - Boolean - - - - Заголовок - - String - - - - - - - - diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/Обозреватель/Module.bsl b/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/Обозреватель/Module.bsl deleted file mode 100644 index 4912ad9b5..000000000 --- a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/Обозреватель/Module.bsl +++ /dev/null @@ -1,48 +0,0 @@ - -#Область ОбработчикиСобытийФормы - -&НаСервере -Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - - Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. - Возврат; - КонецЕсли; - - Если НЕ ПустаяСтрока(Параметры.Заголовок) Тогда - Заголовок = Параметры.Заголовок; - КонецЕсли; - АдресСтраницы = Параметры.АдресСтраницы; - HTMLТекст = АдресСтраницы; - Элементы.АдреснаяСтрока.Видимость = Параметры.ПоказыватьАдреснуюСтроку; - -КонецПроцедуры - -#КонецОбласти - -#Область ОбработчикиКомандФормы - -&НаКлиенте -Процедура ПерейтиКСтранице(Команда) - ОткрытьСтраницуПоАдресу(); -КонецПроцедуры - -&НаКлиенте -Процедура Вперед(Команда) - Элементы.HTMLТекст.Вперед(); -КонецПроцедуры - -&НаКлиенте -Процедура Назад(Команда) - Элементы.HTMLТекст.Назад(); -КонецПроцедуры - -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -&НаКлиенте -Процедура ОткрытьСтраницуПоАдресу() - HTMLТекст = АдресСтраницы; -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/Форма/Form.form b/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/Форма/Form.form deleted file mode 100644 index 0e0493c0b..000000000 --- a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/Форма/Form.form +++ /dev/null @@ -1,6751 +0,0 @@ - - - - СтраницыПомощника - 1 - - ДоброПожаловать - 2 - - ГруппаДоброПожаловать - 1020 - - ИсточникОбновления - 1012 - true - true - - true - - - Объект.ИсточникОбновления - - None - - OnChange - ИсточникОбновленияПриИзменении - - - ИсточникОбновленияРасширеннаяПодсказка - 1014 - Label - true - true - - Left - - - - ИсточникОбновленияКонтекстноеМеню - 1013 - true - - RadioButtonField - Enter - true - Left - true - - 1 - - - ru - Автоматический поиск обновления в Интернете (рекомендуется) -Обновление через сайт поддержки пользователей системы "1С:Предприятие 8" - - - 0 - - - - - ru - Локальный или сетевой каталог -Обновление из файла поставки в локальном или сетевом каталоге - - - 2 - - - Vertical - - - - ОтступТри - 361 - true - true - - true - - - ОтступТриExtendedTooltip - 688 - Label - true - true - - Left - - - - ОтступТриКонтекстноеМеню - 362 - true - - Label - true - true - true - false - - Left - - - true - true - - true - - - <key>ru</key> - <value>Выбор источника получения обновления</value> - - - ГруппаДоброПожаловатьРасширеннаяПодсказка - 1021 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - auto - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Добро пожаловать</value> - - - ДоброПожаловатьExtendedTooltip - 658 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - ПодключениеКИнтернет - 22 - - ГруппаПодключениеКИнтернет - 1022 - - Группа3 - 29 - - ДекорацияКартинка - 25 - true - true - - true - - - ДекорацияКартинкаExtendedTooltip - 696 - Label - true - true - - Left - - - - ДекорацияКартинкаКонтекстноеМеню - 26 - true - - 6 - true - 2 - true - false - - - CommonPicture.Предупреждение32 - - - - - ВертикальнаяГруппаНадписиЖР2 - 572 - - Декорация6 - 27 - - <key>ru</key> - <value>Не удалось подключиться к сети Интернет, чтобы получить информацию об обновлении. -Возможные причины: -• Нет подключения к Интернету; -• На веб-узле возникли неполадки; -• Брандмауэр или другое промежуточное ПО (антивирусы и т.п.) блокируют - попытки программы подключиться к Интернету; -• Подключение к Интернету выполняется через прокси-сервер, но его параметры не заданы в программе.</value> - - true - true - - true - - - Декорация6ExtendedTooltip - 698 - Label - true - true - - Left - - - - Декорация6КонтекстноеМеню - 28 - true - - Label - true - true - false - - Left - - - - Группа4 - 622 - - Декорация7 - 30 - - <key>ru</key> - <value>Технические подробности см. в журнале регистрации.</value> - - true - true - - true - - - Декорация7ExtendedTooltip - 700 - Label - true - true - - Left - - - - Декорация7КонтекстноеМеню - 31 - true - - Label - true - 1 - true - false - - Left - - - - НадписьПерейтиВЖурналРегистрации - 503 - - <key>ru</key> - <value>Перейти в журнал регистрации</value> - - true - true - - true - - - НадписьПерейтиВЖурналРегистрацииExtendedTooltip - 701 - Label - true - true - - Left - - - - НадписьПерейтиВЖурналРегистрацииКонтекстноеМеню - 504 - true - - Label - true - true - false - - - Click - НадписьПерейтиВЖурналРегистрацииНажатие - - true - Left - - - true - true - - true - - - Группа4ExtendedTooltip - 699 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - false - - ВертикальнаяГруппаНадписиЖР2ExtendedTooltip - 697 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - Группа3ExtendedTooltip - 695 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаНастроитьПараметрыПроксиСервера - 611 - - НастроитьПараметрыПроксиСервера - 620 - true - true - - true - - - НастроитьПараметрыПроксиСервераExtendedTooltip - 703 - Label - true - true - - Left - - - UsualButton - Form.Command.НастроитьПараметрыПроксиСервера - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - ГруппаНастроитьПараметрыПроксиСервераExtendedTooltip - 702 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - - - - ОтступДевять - 383 - true - true - - true - - - ОтступДевятьExtendedTooltip - 704 - Label - true - true - - Left - - - - ОтступДевятьКонтекстноеМеню - 384 - true - - Label - true - true - true - false - - Left - - - true - true - - true - - - <key>ru</key> - <value>Не удалось подключиться к сети Интернет</value> - - - ГруппаПодключениеКИнтернетРасширеннаяПодсказка - 1023 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - auto - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Подключение к сети Интернет</value> - - - ПодключениеКИнтернетExtendedTooltip - 693 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - ПодключениеКСайту - 41 - - ГруппаПодключениеКСайту - 1024 - - ГруппаДоступНаПользовательскийСайт - 46 - - Группа2 - 373 - - КодПользователяСервераОбновлений - 47 - - <key>ru</key> - <value>Код пользователя</value> - - true - true - - true - - - Объект.КодПользователяСервераОбновлений - - - КодПользователяСервераОбновленийExtendedTooltip - 711 - Label - true - true - - Left - - - - КодПользователяСервераОбновленийКонтекстноеМеню - 48 - true - - InputField - Enter - true - Left - true - - true - true - false - true - true - true - true - Normal - - - - ПарольСервераОбновлений - 49 - - <key>ru</key> - <value>Пароль</value> - - true - true - - true - - - Объект.ПарольСервераОбновлений - - - ПарольСервераОбновленийExtendedTooltip - 712 - Label - true - true - - Left - - - - ПарольСервераОбновленийКонтекстноеМеню - 50 - true - - InputField - Enter - true - Left - true - - true - true - false - true - true - true - true - true - Normal - - - true - true - - true - - - Группа2ExtendedTooltip - 710 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - Группа5 - 374 - - НадписьИнформацияОПолученииДоступа - 375 - - <key>ru</key> - <value>Как получить код пользователя и пароль?</value> - - true - true - - true - - - НадписьИнформацияОПолученииДоступаExtendedTooltip - 714 - Label - true - true - - Left - - - - НадписьИнформацияОПолученииДоступаКонтекстноеМеню - 376 - true - - Label - true - true - true - false - - - Click - НадписьИнформацияОПолученииДоступаНажатие - - true - Left - - - - ЗапомнитьПарольСервераОбновлений - 377 - - <key>ru</key> - <value>&Запомнить пароль</value> - - true - true - - true - - - Объект.ЗапомнитьПарольСервераОбновлений - - Right - - ЗапомнитьПарольСервераОбновленийExtendedTooltip - 715 - Label - true - true - - Left - - - - ЗапомнитьПарольСервераОбновленийКонтекстноеМеню - 378 - true - - CheckBoxField - Enter - true - Left - true - - - true - true - - true - - - Группа5ExtendedTooltip - 713 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Доступ на пользовательский сайт</value> - - - ru - Для получения обновления программы с пользовательского сайта введите код пользователя и пароль - - - ГруппаДоступНаПользовательскийСайтExtendedTooltip - 709 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ПанельОшибкаПодключения - 67 - - ДекорацияКартинка1 - 52 - true - true - - true - - - ДекорацияКартинка1ExtendedTooltip - 718 - Label - true - true - - Left - - - - ДекорацияКартинка1КонтекстноеМеню - 53 - true - - 6 - true - 2 - true - false - - - CommonPicture.Предупреждение32 - - - - - ГруппаДоступаНаСайт - 68 - - ПРОФ - 69 - - Декорация11 - 54 - - <key>ru</key> - <value>Не удалось подключиться к пользовательскому сайту с указанными кодом и паролем. -Пожалуйста, убедитесь, что: -• продлена подписка на Информационно-технологическое сопровождение (ИТС) -• код пользователя и пароль указаны верно</value> - - true - true - - true - - - Декорация11ExtendedTooltip - 721 - Label - true - true - - Left - - - - Декорация11КонтекстноеМеню - 55 - true - - Label - true - true - false - - Left - - - - НадписьКакОформитьПодпискуИТС - 59 - - <key>ru</key> - <value>Как оформить подписку на ИТС?</value> - - true - true - - true - - - НадписьКакОформитьПодпискуИТСExtendedTooltip - 722 - Label - true - true - - Left - - - - НадписьКакОформитьПодпискуИТСКонтекстноеМеню - 60 - true - - Label - true - true - false - - - Click - НадписьКакОформитьПодпискуИТСНажатие - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>ПРОФ</value> - - - ПРОФExtendedTooltip - 720 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - Базовая - 70 - - Декорация15 - 71 - - <key>ru</key> - <value>Не удалось подключиться к пользовательскому сайту с указанными кодом и паролем. -Пожалуйста, убедитесь, что код пользователя и пароль указаны верно.</value> - - true - true - - true - - - Декорация15ExtendedTooltip - 724 - Label - true - true - - Left - - - - Декорация15КонтекстноеМеню - 72 - true - - Label - true - true - false - - Left - - - - НадписьПодробнееОбИТС - 73 - - <key>ru</key> - <value>Обновление версии программы также можно получить в рамках информационно-технологического -сопровождения (<link ИТС>1С:ИТС</>), включающего доступ к технологическим, методическим и консультационным -материалам (на DVD или в Интернет), а также сервисные и консалтинговые услуги.</value> - - true - true - - true - - - НадписьПодробнееОбИТСРасширеннаяПодсказка - 725 - Label - true - true - - Left - - - - НадписьПодробнееОбИТСКонтекстноеМеню - 74 - true - - true - Label - true - 3 - true - false - - - URLProcessing - НадписьПодробнееОбИТСОбработкаНавигационнойСсылки - - Left - - - true - true - - true - - - <key>ru</key> - <value>Базовая</value> - - - БазоваяExtendedTooltip - 723 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - ОшибкаПроверкиЛегальности - 1015 - - ТекстОшибкиПроверкиЛегальности - 1017 - - <key>ru</key> - <value>Ошибка проверки легальности получения обновления.</value> - - true - true - - true - - - ТекстОшибкиПроверкиЛегальностиРасширеннаяПодсказка - 1019 - Label - true - true - - Left - - - - ТекстОшибкиПроверкиЛегальностиКонтекстноеМеню - 1018 - true - - Label - true - true - - Left - - - true - true - - true - - - ОшибкаПроверкиЛегальностиРасширеннаяПодсказка - 1016 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Группа доступа на сайт</value> - - - ГруппаДоступаНаСайтExtendedTooltip - 719 - Label - true - true - - Left - - - Pages - - Auto - - - true - true - - true - - - <key>ru</key> - <value>Панель ошибка подключения</value> - - - ПанельОшибкаПодключенияExtendedTooltip - 717 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - - - ПанельЖурналРегистрации - 544 - - ТехническаяИнформацияОбОшибке - 379 - true - true - - true - - - Объект.ТехническаяИнформацияОбОшибке - - None - - ТехническаяИнформацияОбОшибкеExtendedTooltip - 728 - Label - true - true - - Left - - - - ТехническаяИнформацияОбОшибкеКонтекстноеМеню - 380 - true - - LabelField - true - Enter - true - Left - true - - true - true - - - - Группа6 - 623 - - НадписьИнфоЖР - 550 - - <key>ru</key> - <value>Технические подробности см. в журнале регистрации.</value> - - true - true - - true - - - НадписьИнфоЖРExtendedTooltip - 730 - Label - true - true - - Left - - - - НадписьИнфоЖРКонтекстноеМеню - 551 - true - - Label - true - true - false - - Left - - - - НадписьОткрытьЖурналРегистрации1 - 547 - - <key>ru</key> - <value>Перейти в журнал регистрации</value> - - true - true - - true - - - НадписьОткрытьЖурналРегистрации1ExtendedTooltip - 731 - Label - true - true - - Left - - - - НадписьОткрытьЖурналРегистрации1КонтекстноеМеню - 548 - true - - Label - true - true - false - - - Click - НадписьОткрытьЖурналРегистрацииНажатие - - true - Left - Center - - - true - true - - true - - - Группа6ExtendedTooltip - 729 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - false - - ПанельЖурналРегистрацииExtendedTooltip - 727 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - Декорация66 - 385 - true - true - - true - - - Декорация66ExtendedTooltip - 732 - Label - true - true - - Left - - - - Декорация66КонтекстноеМеню - 386 - true - - Label - true - true - true - false - - Left - - - true - true - - true - - - <key>ru</key> - <value>Подключение к пользовательскому сайту</value> - - - ГруппаПодключениеКСайтуРасширеннаяПодсказка - 1025 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - auto - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Подключение к сайту</value> - - - ПодключениеКСайтуExtendedTooltip - 706 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - ФайлОбновления - 283 - - ГруппаФайлОбновления - 1026 - - ПереключательНуженФайлОбновления - 286 - true - true - - true - - - Объект.НуженФайлОбновления - - None - - OnChange - ПереключательНуженФайлОбновленияПриИзменении - - - ПереключательНуженФайлОбновленияExtendedTooltip - 747 - Label - true - true - - Left - - - - ПереключательНуженФайлОбновленияКонтекстноеМеню - 287 - true - - RadioButtonField - Enter - true - Left - true - - 1 - - - ru - &Файл обновления не требуется, так как он уже загружен в основную конфигурацию - - - 0 - - - - - ru - У&кажите файл обновления: - - - 1 - - - Vertical - - - - Отступ - 393 - - ПолеФайлОбновления - 296 - true - true - - true - - - Объект.ИмяФайлаОбновления - - None - - ПолеФайлОбновленияExtendedTooltip - 749 - Label - true - true - - Left - - - - ПолеФайлОбновленияКонтекстноеМеню - 297 - true - - InputField - Enter - true - Left - true - - - StartChoice - ПолеФайлОбновленияНачалоВыбора - - true - true - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Отступ</value> - - - ОтступExtendedTooltip - 748 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - - - - ПанельОбновлениеИзОсновнойКонфигурации - 288 - - Картинка5 - 289 - true - true - - true - - - Картинка5ExtendedTooltip - 751 - Label - true - true - - Left - - - - Картинка5КонтекстноеМеню - 290 - true - - 5 - true - 2 - true - false - - - CommonPicture.Информация32 - - - - - СтраницыНадписиИзмененнойКонфигурации - 477 - - ЕстьИзменения - 478 - - НадписьКонфигурацияИзменена - 291 - - <key>ru</key> - <value>Основная конфигурация отличается от конфигурации информационной базы данных. -Рекомендуется провести обновление из основной конфигурации.</value> - - true - true - - true - - - НадписьКонфигурацияИзмененаExtendedTooltip - 754 - Label - true - true - - Left - - - - НадписьКонфигурацияИзмененаКонтекстноеМеню - 292 - true - - Label - true - true - true - false - - Left - Center - - - true - true - - true - - - <key>ru</key> - <value>Есть изменения</value> - - true - - ЕстьИзмененияExtendedTooltip - 753 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - НетИзменений - 479 - - НадписьНетИзменений - 480 - - <key>ru</key> - <value>Обновление не требуется, т.к. конфигурация базы данных не отличается от основной конфигурации</value> - - true - true - - true - - - НадписьНетИзмененийExtendedTooltip - 756 - Label - true - true - - Left - - - - НадписьНетИзмененийКонтекстноеМеню - 481 - true - - Label - true - true - true - false - - Left - Center - - - true - true - - true - - - <key>ru</key> - <value>Нет изменений</value> - - true - - НетИзмененийExtendedTooltip - 755 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Страницы надписи измененной конфигурации</value> - - true - - СтраницыНадписиИзмененнойКонфигурацииExtendedTooltip - 752 - Label - true - true - - Left - - - Pages - - Auto - - - true - true - - true - - - <key>ru</key> - <value>Панель обновление из основной конфигурации</value> - - false - - ПанельОбновлениеИзОсновнойКонфигурацииExtendedTooltip - 750 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - - - НадписьОтступ - 394 - true - true - - true - - - НадписьОтступExtendedTooltip - 757 - Label - true - true - - Left - - - - НадписьОтступКонтекстноеМеню - 395 - true - - Label - true - true - true - false - - Left - - - true - true - - true - - - <key>ru</key> - <value>Выбор файла поставки обновления</value> - - - ГруппаФайлОбновленияРасширеннаяПодсказка - 1027 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - auto - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Файл обновления</value> - - - ФайлОбновленияExtendedTooltip - 745 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - ДоступноеОбновление - 81 - - ИнформацияОДоступномОбновлении - 82 - - ГруппаНомерВерсии - 83 - - ДекорацияКартинка2 - 84 - true - true - - true - - - ДекорацияКартинка2ExtendedTooltip - 763 - Label - true - true - - Left - - - - ДекорацияКартинка2КонтекстноеМеню - 85 - true - - 5 - true - 2 - true - false - - - CommonPicture.Информация32 - - - - - Группа9 - 644 - - Группа1 - 1059 - - Декорация3 - 1061 - - <key>ru</key> - <value>Версия:</value> - - true - true - - true - - - Декорация3РасширеннаяПодсказка - 1063 - Label - true - true - - Left - - - - Декорация3КонтекстноеМеню - 1062 - true - - Label - true - true - - Left - - - - НадписьДоступноеОбновление - 86 - - <key>ru</key> - <value><Номер версии></value> - - true - true - - true - - - НадписьДоступноеОбновлениеExtendedTooltip - 766 - Label - true - true - - Left - - - - НадписьДоступноеОбновлениеКонтекстноеМеню - 87 - true - - Label - true - true - false - - System.DefaultGUIFont - true - false - false - false - - - Left - Center - - - true - true - - true - - - Группа1РасширеннаяПодсказка - 1060 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - Группа11 - 95 - - Декорация19 - 91 - - <key>ru</key> - <value>Размер обновления:</value> - - true - true - - true - - - Декорация19ExtendedTooltip - 769 - Label - true - true - - Left - - - - Декорация19КонтекстноеМеню - 92 - true - - Label - true - true - false - - Left - - - - НадписьРазмерОбновления - 93 - - <key>ru</key> - <value><Мбайт></value> - - true - true - - true - - - НадписьРазмерОбновленияExtendedTooltip - 770 - Label - true - true - - Left - - - - НадписьРазмерОбновленияКонтекстноеМеню - 94 - true - - Label - true - true - false - - System.DefaultGUIFont - true - false - false - false - - - Left - - - true - true - - true - - - Группа11ExtendedTooltip - 768 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - Группа8 - 1064 - - НовоеВВерсии - 1055 - true - true - - true - - - НовоеВВерсииРасширеннаяПодсказка - 1056 - Label - true - true - - Left - - - Hyperlink - Form.Command.НовоеВВерсии - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - Группа8РасширеннаяПодсказка - 1065 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - - Группа9ExtendedTooltip - 764 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа номер версии</value> - - true - - ГруппаНомерВерсииExtendedTooltip - 762 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ОтступДесять1 - 1074 - true - true - - true - - - ОтступДесять1РасширеннаяПодсказка - 1076 - Label - true - true - - Left - - - - ОтступДесять1КонтекстноеМеню - 1075 - true - - Label - true - 2 - true - false - false - - Left - - - - ГруппаДополнительнаяИнформация - 641 - - ДекорацияКартинка21 - 104 - true - true - - true - - - ДекорацияКартинка21ExtendedTooltip - 784 - Label - true - true - - Left - - - - ДекорацияКартинка21КонтекстноеМеню - 105 - true - - 5 - true - 2 - true - false - - - CommonPicture.Предупреждение32 - - - - - Группа10 - 1069 - - ДекорацияПорядокОбновления - 1071 - - <key>ru</key> - <value>Для продолжения необходимо ознакомиться с информацией о <link ПорядокОбновления>порядке обновления</>.</value> - - true - true - - true - - - ДекорацияПорядокОбновленияРасширеннаяПодсказка - 1073 - Label - true - true - - Left - - - - ДекорацияПорядокОбновленияКонтекстноеМеню - 1072 - true - - true - Label - true - true - - - URLProcessing - ДекорацияПорядокОбновленияОбработкаНавигационнойСсылки - - Left - - - - ДекорацияОбновитеПлатформу - 642 - - <key>ru</key> - <value>Для обновления на эту версию требуется платформа 1С:Предприятие -не ниже версии <b>8.3.5.1068</>. Необходимо<link КакОбновитьПлатформу> перейти на новую версию платформы</>, -после чего можно будет установить это обновление.</value> - - true - true - - true - - - ДекорацияОбновитеПлатформуExtendedTooltip - 774 - Label - true - true - - Left - - - - ДекорацияОбновитеПлатформуКонтекстноеМеню - 643 - true - - true - Label - true - true - - - URLProcessing - ДекорацияОбновитеПлатформуОбработкаНавигационнойСсылки - - Left - - - true - true - - true - - - Группа10РасширеннаяПодсказка - 1070 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа дополнительная информация</value> - - - ru - Группа дополнительная информация - - - ГруппаДополнительнаяИнформацияРасширеннаяПодсказка - 771 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Доступна новая версия программы</value> - - - ИнформацияОДоступномОбновленииExtendedTooltip - 761 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - auto - Auto - Auto - - - - ОтступДесять - 371 - true - true - - true - - - ОтступДесятьExtendedTooltip - 788 - Label - true - true - - Left - - - - ОтступДесятьКонтекстноеМеню - 372 - true - - Label - true - true - true - false - - Left - - - true - true - - true - - - <key>ru</key> - <value>Доступное обновление</value> - - - ДоступноеОбновлениеExtendedTooltip - 759 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - ОбновленияНеОбнаружено - 115 - - ГруппаОбновленияНеОбнаружено - 1030 - - ГруппаРезультатПоискаОбновления - 120 - - ПанельИнформацияОбОбновлении - 124 - - ОбновлениеНеТребуется - 125 - - ГоризонтальнаяГруппа12 - 586 - - Картинка26 - 121 - true - true - - true - - - Картинка26ExtendedTooltip - 803 - Label - true - true - - Left - - - - Картинка26КонтекстноеМеню - 122 - true - - 6 - true - 2 - true - false - false - - - CommonPicture.Информация32 - - - - - НадписьУВасПоследняяВерсия - 126 - - <key>ru</key> - <value>Установлена последняя версия программы.</value> - - true - true - - true - - - НадписьУВасПоследняяВерсияExtendedTooltip - 804 - Label - true - true - - Left - - - - НадписьУВасПоследняяВерсияКонтекстноеМеню - 127 - true - - Label - true - true - true - false - - Left - Center - - - true - true - - true - - false - - ГоризонтальнаяГруппа12ExtendedTooltip - 802 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Обновление не требуется</value> - - false - - ОбновлениеНеТребуетсяExtendedTooltip - 801 - Label - true - true - - Left - - - Page - - auto - false - - - - ОбновлениеНеОбнаружено - 128 - - Картинка24 - 588 - true - true - - true - - - Картинка24ExtendedTooltip - 807 - Label - true - true - - Left - - - - Картинка24КонтекстноеМеню - 589 - true - - 6 - true - 2 - true - false - - - CommonPicture.Информация32 - - - - - НадписьОбновлениеНеОбнаружено - 129 - - <key>ru</key> - <value>Для этой версии программы обновление не обнаружено. </value> - - true - true - - true - - - НадписьОбновлениеНеОбнаруженоExtendedTooltip - 809 - Label - true - true - - Left - - - - НадписьОбновлениеНеОбнаруженоКонтекстноеМеню - 130 - true - - Label - true - 2 - true - false - - Left - Center - - - true - true - - true - - - <key>ru</key> - <value>Обновление не обнаружено</value> - - false - - ОбновлениеНеОбнаруженоExtendedTooltip - 805 - Label - true - true - - Left - - - Page - - auto - false - - - - ВключенаВозможностьИзменений - 131 - - Картинка14 - 595 - true - true - - true - - - Картинка14ExtendedTooltip - 814 - Label - true - true - - Left - - - - Картинка14КонтекстноеМеню - 596 - true - - 6 - true - 2 - true - false - - - CommonPicture.Предупреждение32 - - - - - НадписьВключенаВозможностьИзменений - 132 - - <key>ru</key> - <value>Конфигурация с включенной возможностью изменений метаданных не может -быть обновлена автоматически. Используйте штатные средства Конфигуратора -(меню "Конфигурация" - "Поддержка" - "Обновить конфигурацию").</value> - - true - true - - true - - - НадписьВключенаВозможностьИзмененийExtendedTooltip - 815 - Label - true - true - - Left - - - - НадписьВключенаВозможностьИзмененийКонтекстноеМеню - 133 - true - - Label - true - true - true - false - - Left - Center - - - true - true - - true - - - <key>ru</key> - <value>Включена возможность изменений</value> - - false - - ВключенаВозможностьИзмененийExtendedTooltip - 812 - Label - true - true - - Left - - - Page - - auto - false - - - - ОбновлениеПроизводитсяВГлавномУзле - 614 - - ГоризонтальнаяГруппа13 - 615 - - Картинка27 - 616 - true - true - - true - - - Картинка27ExtendedTooltip - 818 - Label - true - true - - Left - - - - Картинка27КонтекстноеМеню - 617 - true - - 6 - true - 2 - true - false - false - - - CommonPicture.Информация32 - - - - - НадписьОбновлениеКонфигурацииВыполняетсяПриОбменеДаннымиСГлавнымУзлом - 618 - - <key>ru</key> - <value>Обновление программы выполняется при синхронизации данных с "%1".</value> - - true - true - - true - - - НадписьОбновлениеКонфигурацииВыполняетсяПриОбменеДаннымиСГлавнымУзломExtendedTooltip - 819 - Label - true - true - - Left - - - - НадписьОбновлениеКонфигурацииВыполняетсяПриОбменеДаннымиСГлавнымУзломКонтекстноеМеню - 619 - true - - Label - true - true - true - false - - Left - Center - - - true - true - - true - - false - - ГоризонтальнаяГруппа13ExtendedTooltip - 817 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - false - - ОбновлениеПроизводитсяВГлавномУзлеExtendedTooltip - 816 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Панель информация об обновлении</value> - - - ПанельИнформацияОбОбновленииExtendedTooltip - 800 - Label - true - true - - Left - - - Pages - - Auto - - - - ГруппаТекущаяВерсия - 136 - - Декорация30 - 134 - - <key>ru</key> - <value>Текущая версия программы:</value> - - true - true - - true - - - Декорация30ExtendedTooltip - 821 - Label - true - true - - Left - - - - Декорация30КонтекстноеМеню - 135 - true - - Label - true - true - false - - Left - - - - НадписьВерсияТекущейКонфигурации - 137 - - <key>ru</key> - <value><Версия текущей конфигурации></value> - - true - true - - true - - - НадписьВерсияТекущейКонфигурацииExtendedTooltip - 822 - Label - true - true - - Left - - - - НадписьВерсияТекущейКонфигурацииКонтекстноеМеню - 138 - true - - Label - true - true - false - - Left - - - - НадписьВерсияДляОбновления - 507 - - <key>ru</key> - <value><Доступная версия для обновления></value> - - true - true - - true - - - НадписьВерсияДляОбновленияExtendedTooltip - 823 - Label - true - true - - Left - - - - НадписьВерсияДляОбновленияКонтекстноеМеню - 508 - true - - Label - true - true - false - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа текущая версия</value> - - false - - ГруппаТекущаяВерсияExtendedTooltip - 820 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - НадписьОписаниеТекущейКонфигурации - 139 - - <key>ru</key> - <value><Описание текущей конфигурации></value> - - true - true - - true - - - НадписьОписаниеТекущейКонфигурацииExtendedTooltip - 824 - Label - true - true - - Left - - - - НадписьОписаниеТекущейКонфигурацииКонтекстноеМеню - 140 - true - - Label - true - true - false - false - - Left - - - true - true - - true - - - <key>ru</key> - <value>Результат поиска обновления</value> - - - ГруппаРезультатПоискаОбновленияExtendedTooltip - 799 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ОтступСемь - 387 - true - true - - true - - - ОтступСемьExtendedTooltip - 828 - Label - true - true - - Left - - - - ОтступСемьКонтекстноеМеню - 388 - true - - Label - true - true - true - false - - Left - - - true - true - - true - - - <key>ru</key> - <value>Обновление не требуется</value> - - - ГруппаОбновленияНеОбнаруженоРасширеннаяПодсказка - 1031 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - auto - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Обновления не обнаружено</value> - - - ОбновленияНеОбнаруженоExtendedTooltip - 797 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - ДлительнаяОперация - 143 - - ГруппаДлительнаяОперация - 1032 - - ГруппаАнимация - 1077 - - ДекорацияКартинка33 - 147 - true - true - - true - - - ДекорацияКартинка33ExtendedTooltip - 835 - Label - true - true - - Left - - - - ДекорацияКартинка33КонтекстноеМеню - 148 - true - - 6 - true - 3 - true - false - - - CommonPicture.ДлительнаяОперация48 - - - - - Группа7 - 1088 - - НадписьДлительнаяОперация - 149 - - <key>ru</key> - <value>Получение обновления программы может занять от нескольких минут до нескольких часов в зависимости от размера обновления, скорости подключения к Интернету и производительности компьютера.</value> - - true - true - - true - - - НадписьДлительнаяОперацияРасширеннаяПодсказка - 836 - Label - true - true - - Left - - - - НадписьДлительнаяОперацияКонтекстноеМеню - 150 - true - - Label - true - true - true - true - false - - Left - Center - 2 - - - - НадписьПрогресс - 158 - - <key>ru</key> - <value>Выполняется получение файлов обновления: 1 из 1...</value> - - true - true - - true - - - НадписьПрогрессExtendedTooltip - 841 - Label - true - true - - Left - - - - НадписьПрогрессКонтекстноеМеню - 159 - true - - Label - true - true - false - - Left - Top - - - true - true - - true - - - Группа7РасширеннаяПодсказка - 1089 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - false - - ГруппаАнимацияРасширеннаяПодсказка - 1078 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаПрогресс - 610 - true - true - - true - - - <key>ru</key> - <value>Группа прогресс</value> - - - ГруппаПрогрессExtendedTooltip - 840 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Пожалуйста, подождите...</value> - - - ГруппаДлительнаяОперацияРасширеннаяПодсказка - 1033 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - auto - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Длительная операция</value> - - - ДлительнаяОперацияExtendedTooltip - 830 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - ВыборРежимаОбновленияФайл - 160 - - ГруппаВыборРежимаОбновленияФайл - 1034 - - СтраницыСпособОбновленияФайл - 1042 - - СтраницаПереключательОбновленияФайл - 1044 - - ПорядокОбновленияФайл - 1053 - - Декорация8 - 534 - true - true - - true - - - Декорация8ExtendedTooltip - 848 - Label - true - true - - Left - - - - Декорация8КонтекстноеМеню - 535 - true - - 5 - true - 2 - true - false - - - CommonPicture.Предупреждение32 - - - - - НадписьПорядокОбновленияФайл - 169 - - <key>ru</key> - <value>Для продолжения необходимо ознакомиться с <link ПорядокОбновления>порядком обновления</>.</value> - - true - true - - true - - - НадписьПорядокОбновленияФайлРасширеннаяПодсказка - 850 - Label - true - true - - Left - - - - НадписьПорядокОбновленияФайлКонтекстноеМеню - 170 - true - - true - Label - true - 2 - true - false - - - URLProcessing - НадписьПорядокОбновленияФайлОбработкаНавигационнойСсылки - - Left - - - true - true - - true - - - ПорядокОбновленияФайлРасширеннаяПодсказка - 1054 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ПереключательОбновленияФайл - 612 - - <key>ru</key> - <value>Выберите способ установки обновления программы</value> - - true - true - - true - - - Объект.РежимОбновления - - - OnChange - ПереключательОбновленияПриИзменении - - - ПереключательОбновленияФайлExtendedTooltip - 853 - Label - true - true - - Left - - - - ПереключательОбновленияФайлКонтекстноеМеню - 613 - true - - RadioButtonField - Enter - true - Left - true - - 1 - - - ru - Установить обновление прямо сейчас (потребуется перезапуск) - - - 0 - - - - - ru - Напомнить при завершении работы - - - 1 - - - Vertical - - - - НадписьНажмитеДалее - 1095 - - <key>ru</key> - <value>Нажмите "Далее" для установки обновления.</value> - - true - - true - - - НадписьНажмитеДалееРасширеннаяПодсказка - 1097 - Label - true - true - - Left - - - - НадписьНажмитеДалееКонтекстноеМеню - 1096 - true - - Label - true - true - - Left - - - - НадписьПроцессОбновленияМожетЗанятьМногоВремени - 177 - - <key>ru</key> - <value>Процесс обновления может занять длительное время. Не выключайте питание компьютера до завершения процесса.</value> - - true - true - - true - - - НадписьПроцессОбновленияМожетЗанятьМногоВремениExtendedTooltip - 866 - Label - true - true - - Left - - - - НадписьПроцессОбновленияМожетЗанятьМногоВремениКонтекстноеМеню - 178 - true - - Label - true - true - false - - Left - - - true - true - - true - - - СтраницаПереключательОбновленияФайлРасширеннаяПодсказка - 1045 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - СтраницаПолученоОбновлениеИзПриложенияФайл - 1046 - - НадписьПолученоОбновлениеИзПриложенияФайл - 652 - - <key>ru</key> - <value>Получено обновление из приложения в Интернете. Для установки потребуется -перезапуск программы. Процесс обновления может занять длительное время. -Не выключайте питание компьютера до завершения процесса установки.</value> - - true - true - - true - - - НадписьПолученоОбновлениеИзПриложенияФайлExtendedTooltip - 852 - Label - true - true - - Left - - - - НадписьПолученоОбновлениеИзПриложенияФайлКонтекстноеМеню - 653 - true - - Label - true - true - - Left - - - true - true - - true - - - СтраницаПолученоОбновлениеИзПриложенияФайлРасширеннаяПодсказка - 1047 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - СтраницыСпособОбновленияФайлРасширеннаяПодсказка - 1043 - Label - true - true - - Left - - - Pages - - Auto - - - - ГруппаСоединений - 179 - - Картинка1 - 180 - true - true - - true - - - Картинка1ExtendedTooltip - 855 - Label - true - true - - Left - - - - Картинка1КонтекстноеМеню - 181 - true - - 5 - true - 2 - true - false - - - CommonPicture.Предупреждение32 - - - - - ПанельАктивныеПользователи - 187 - - АктивныеПользователи - 188 - - Надпись43 - 183 - - <key>ru</key> - <value>С программой сейчас работают другие пользователи. Для продолжения необходимо завершить их работу.</value> - - true - true - - true - - - Надпись43ExtendedTooltip - 858 - Label - true - true - - Left - - - - Надпись43КонтекстноеМеню - 184 - true - - Label - true - true - false - - Left - - - - НадписьСписокДействий - 185 - - <key>ru</key> - <value>Посмотреть список активных пользователей</value> - - true - true - - true - - - НадписьСписокДействийExtendedTooltip - 859 - Label - true - true - - Left - - - - НадписьСписокДействийКонтекстноеМеню - 186 - true - - Label - true - true - true - false - - - Click - НадписьСписокДействийНажатие - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>Активные пользователи</value> - - - АктивныеПользователиExtendedTooltip - 857 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - АктивныеСоединения - 189 - - Надпись42 - 190 - - <key>ru</key> - <value>С программой сейчас работают внешние приложения. Для продолжения необходимо завершить их работу.</value> - - true - true - - true - - - Надпись42ExtendedTooltip - 861 - Label - true - true - - Left - - - - Надпись42КонтекстноеМеню - 191 - true - - Label - true - true - false - - Left - - - - НадписьСписокДействий1 - 192 - - <key>ru</key> - <value>Посмотреть список активных подключений</value> - - true - true - - true - - - НадписьСписокДействий1ExtendedTooltip - 862 - Label - true - true - - Left - - - - НадписьСписокДействий1КонтекстноеМеню - 193 - true - - Label - true - true - true - false - - - Click - НадписьСписокДействий1Нажатие - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>Активные соединения</value> - - - АктивныеСоединенияExtendedTooltip - 860 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - СоединениеКонфигуратора - 194 - - Надпись45 - 195 - - <key>ru</key> - <value>Открыт Конфигуратор. Для продолжения необходимо завершить работу Конфигуратора.</value> - - true - true - - true - - - Надпись45ExtendedTooltip - 864 - Label - true - true - - Left - - - - Надпись45КонтекстноеМеню - 196 - true - - Label - true - true - false - - Left - Top - - - - НадписьСписокДействий3 - 197 - - <key>ru</key> - <value>Посмотреть список активных пользователей</value> - - true - true - - true - - - НадписьСписокДействий3ExtendedTooltip - 865 - Label - true - true - - Left - - - - НадписьСписокДействий3КонтекстноеМеню - 198 - true - - Label - true - true - true - false - - - Click - НадписьСписокДействий3Нажатие - - true - Left - Top - - - true - true - - true - - - <key>ru</key> - <value>Соединение конфигуратора</value> - - - СоединениеКонфигуратораExtendedTooltip - 863 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Панель активные пользователи</value> - - false - - ПанельАктивныеПользователиExtendedTooltip - 856 - Label - true - true - - Left - - - Pages - - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа соединений</value> - - - ГруппаСоединенийExtendedTooltip - 854 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - - - НадписьОтступ3 - 400 - true - true - - true - - - НадписьОтступ3ExtendedTooltip - 867 - Label - true - true - - Left - - - - НадписьОтступ3КонтекстноеМеню - 401 - true - - Label - true - true - true - false - - Left - - - - ГруппаРезервнаяКопия - 204 - - Надпись46 - 202 - - <key>ru</key> - <value>Резервная копия:</value> - - true - true - - true - - - Надпись46ExtendedTooltip - 869 - Label - true - true - - Left - - - - Надпись46КонтекстноеМеню - 203 - true - - Label - true - true - false - - Left - - - - НадписьРезервнаяКопияФайл - 205 - - <key>ru</key> - <value>Создавать временную резервную копию ИБ и выполнять откат при нештатной ситуации</value> - - true - true - - true - - - НадписьРезервнаяКопияФайлExtendedTooltip - 870 - Label - true - true - - Left - - - - НадписьРезервнаяКопияФайлКонтекстноеМеню - 206 - true - - Label - true - true - false - - - Click - НадписьРезервнаяКопияНажатие - - true - Left - Bottom - - - true - true - - true - - - ГруппаРезервнаяКопияExtendedTooltip - 868 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Все готово для установки обновления</value> - - - ГруппаВыборРежимаОбновленияФайлРасширеннаяПодсказка - 1035 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - auto - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Выбор режима обновления файл</value> - - - ВыборРежимаОбновленияФайлExtendedTooltip - 842 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - ВыборРежимаОбновленияСервер - 209 - - ГруппаВыборРежимаОбновленияСервер - 1036 - - ПорядокОбновленияСервер - 346 - - Декорация1 - 505 - true - true - - true - - - Декорация1ExtendedTooltip - 886 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 506 - true - - 4 - true - 2 - true - false - - - CommonPicture.Предупреждение32 - - - - - НадписьПорядокОбновленияСервер - 348 - - <key>ru</key> - <value>Для продолжения необходимо ознакомиться с <link ПорядокОбновления>порядком обновления</>.</value> - - true - true - - true - - - НадписьПорядокОбновленияСерверExtendedTooltip - 888 - Label - true - true - - Left - - - - НадписьПорядокОбновленияСерверКонтекстноеМеню - 349 - true - - true - Label - true - 2 - true - false - - - URLProcessing - НадписьПорядокОбновленияСерверОбработкаНавигационнойСсылки - - Left - - - true - true - - true - - - ПорядокОбновленияСерверРасширеннаяПодсказка - 885 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ОтступЧетыре - 458 - - ПереключательОбновленияСервер - 214 - - <key>ru</key> - <value>Выберите способ установки обновления программы</value> - - true - true - - true - - - Объект.РежимОбновления - - - OnChange - ПереключательОбновленияПриИзменении - - - ПереключательОбновленияСерверExtendedTooltip - 891 - Label - true - true - - Left - - - - ПереключательОбновленияСерверКонтекстноеМеню - 215 - true - - RadioButtonField - Enter - true - Left - true - - 1 - - - ru - Установить обновление прямо сейчас (потребуется перезапуск) - - - 0 - - - - - ru - Напомнить при завершении работы - - - 1 - - - - - ru - Запланировать установку обновления на указанное время - - - 2 - - - Vertical - - - - ГруппаДатаОбновления - 1048 - - Декорация2 - 1050 - true - true - - true - - - Декорация2РасширеннаяПодсказка - 1052 - Label - true - true - - Left - - - - Декорация2КонтекстноеМеню - 1051 - true - - Label - true - 3 - true - - Left - - - - ПолеДатаВремяОбновления - 242 - - <key>ru</key> - <value>Дата и время</value> - - true - true - - true - - - Объект.ДатаВремяОбновления - - None - - ПолеДатаВремяОбновленияExtendedTooltip - 894 - Label - true - true - - Left - - - - ПолеДатаВремяОбновленияКонтекстноеМеню - 243 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - true - true - - true - - - ГруппаДатаОбновленияРасширеннаяПодсказка - 1049 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - ОтступЧетыреExtendedTooltip - 890 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - СтраницыИнформацииПерезагрузки1 - 216 - - СтраницаЗапланированнойПерезагрузки - 239 - - Надпись51 - 240 - - <key>ru</key> - <value>Установка обновления будет выполнена с этого компьютера в фоновом режиме. -Питание компьютера должно быть включено в указанные дату и время.</value> - - true - true - - true - - - Надпись51ExtendedTooltip - 895 - Label - true - true - - Left - - - - Надпись51КонтекстноеМеню - 241 - true - - Label - true - true - false - false - - Left - Top - 2 - - - - ПанельПочта - 248 - - ВыслатьОтчетНаПочту - 244 - - <key>ru</key> - <value>Выслать отчет на почту:</value> - - true - true - - true - - - Объект.ВыслатьОтчетНаПочту - - Right - - OnChange - ВыслатьОтчетНаПочтуПриИзменении - - - ВыслатьОтчетНаПочтуExtendedTooltip - 897 - Label - true - true - - Left - - - - ВыслатьОтчетНаПочтуКонтекстноеМеню - 245 - true - - CheckBoxField - Enter - true - Left - true - - - - АдресЭлектроннойПочты - 246 - true - true - - true - - - Объект.АдресЭлектроннойПочты - - None - - АдресЭлектроннойПочтыExtendedTooltip - 898 - Label - true - true - - Left - - - - АдресЭлектроннойПочтыКонтекстноеМеню - 247 - true - - InputField - Enter - true - Left - true - - 30 - true - true - false - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Панель почта</value> - - false - - ПанельПочтаExtendedTooltip - 896 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Страница запланированной перезагрузки</value> - - - СтраницаЗапланированнойПерезагрузкиExtendedTooltip - 893 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - СтраницаПерезагрузкиСейчас1 - 217 - - НадписьБудетУстановленоОбновлениеСервер - 218 - - <key>ru</key> - <value>Процесс обновления может занять длительное время. Не выключайте питание компьютера до завершения процесса.</value> - - true - true - - true - - - НадписьБудетУстановленоОбновлениеСерверExtendedTooltip - 900 - Label - true - true - - Left - - - - НадписьБудетУстановленоОбновлениеСерверКонтекстноеМеню - 219 - true - - Label - true - true - false - false - - Left - Top - - - - ГруппаСоединений1 - 220 - - Картинка2 - 221 - true - true - - true - - - Картинка2ExtendedTooltip - 902 - Label - true - true - - Left - - - - Картинка2КонтекстноеМеню - 222 - true - - 5 - true - 2 - true - false - - - CommonPicture.Предупреждение32 - - - - - ПанельАктивныеПользователи1 - 223 - - АктивныеПользователи1 - 224 - - Надпись48 - 225 - - <key>ru</key> - <value>С программой сейчас работают другие пользователи. Их работа будет завершена автоматически.</value> - - true - true - - true - - - Надпись48ExtendedTooltip - 905 - Label - true - true - - Left - - - - Надпись48КонтекстноеМеню - 226 - true - - Label - true - true - false - - Left - Top - - - - НадписьСписокДействий2 - 227 - - <key>ru</key> - <value>Посмотреть список активных пользователей</value> - - true - true - - true - - - НадписьСписокДействий2ExtendedTooltip - 906 - Label - true - true - - Left - - - - НадписьСписокДействий2КонтекстноеМеню - 228 - true - - Label - 30 - true - true - false - - - Click - НадписьСписокДействийНажатие - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>Активные пользователи</value> - - - АктивныеПользователи1ExtendedTooltip - 904 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - АктивныеСоединения1 - 229 - - Надпись49 - 230 - - <key>ru</key> - <value>С информационной базой сейчас работают другие пользователи, а также внешние приложения. -Их работа будет завершена автоматически.</value> - - true - true - - true - - - Надпись49ExtendedTooltip - 908 - Label - true - true - - Left - - - - Надпись49КонтекстноеМеню - 231 - true - - Label - true - true - false - false - - Left - - - - НадписьСписокДействий4 - 232 - - <key>ru</key> - <value>Посмотреть список активных подключений</value> - - true - true - - true - - - НадписьСписокДействий4ExtendedTooltip - 909 - Label - true - true - - Left - - - - НадписьСписокДействий4КонтекстноеМеню - 233 - true - - Label - true - true - false - false - false - - - Click - НадписьСписокДействий1Нажатие - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>Активные соединения</value> - - - АктивныеСоединения1ExtendedTooltip - 907 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - ПанельАктивныеПользователи1ExtendedTooltip - 903 - Label - true - true - - Left - - - Pages - - Auto - - - true - true - - true - - false - - ГруппаСоединений1ExtendedTooltip - 901 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Страница перезагрузки сейчас</value> - - - СтраницаПерезагрузкиСейчас1ExtendedTooltip - 899 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Страницы информации перезагрузки</value> - - - СтраницыИнформацииПерезагрузки1ExtendedTooltip - 892 - Label - true - true - - Left - - - Pages - - Auto - - - - НадписьОтступ2 - 398 - true - true - - true - - - НадписьОтступ2ExtendedTooltip - 910 - Label - true - true - - Left - - - - НадписьОтступ2КонтекстноеМеню - 399 - true - - Label - true - true - true - false - - Left - - - - ГруппаРезервнаяКопияСервер - 539 - - Декорация13 - 540 - true - true - - true - - - Декорация13ExtendedTooltip - 912 - Label - true - true - - Left - - - - Декорация13КонтекстноеМеню - 541 - true - - 2 - true - 1 - true - false - - - CommonPicture.Информация - - - - - Группа12 - 1090 - - НадписьРезервнаяКопияСервер - 537 - - <key>ru</key> - <value>Перед установкой обновления рекомендуется выполнить резервное копирование информационной базы.</value> - - true - true - - true - - - НадписьРезервнаяКопияСерверExtendedTooltip - 913 - Label - true - true - - Left - - - - НадписьРезервнаяКопияСерверКонтекстноеМеню - 538 - true - - Label - true - true - false - - Left - Center - - - - НадписьОтложенныеОбработчики - 1092 - - <key>ru</key> - <value>В программе имеются <link ОтложенныеОбработчики>дополнительные процедуры обработки данных</>, которые не были завершены -при переходе с предыдущего релиза. Они будут автоматически выполнены в процессе обновления -на новую версию. Это может существенно увеличить время обновления.</value> - - true - true - - true - - - НадписьОтложенныеОбработчикиРасширеннаяПодсказка - 1094 - Label - true - true - - Left - - - - НадписьОтложенныеОбработчикиКонтекстноеМеню - 1093 - true - - true - Label - true - true - - - URLProcessing - НадписьОтложенныеОбработчикиОбработкаНавигационнойСсылки - - Left - - - true - true - - true - - - Группа12РасширеннаяПодсказка - 1091 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа резервная копия сервер</value> - - - ГруппаРезервнаяКопияСерверExtendedTooltip - 911 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Все готово для установки обновления</value> - - - ГруппаВыборРежимаОбновленияСерверРасширеннаяПодсказка - 1037 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - auto - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Выбор режима обновления сервер</value> - - - ВыборРежимаОбновленияСерверExtendedTooltip - 880 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - УспешноеОбновление - 256 - - ГруппаУспешноеОбновление - 1038 - - Декорация46 - 259 - - <key>ru</key> - <value>Установка новой версии программы успешно завершена. -Нажмите кнопку "Готово" для завершения обновления.</value> - - true - true - - true - - - Декорация46ExtendedTooltip - 923 - Label - true - true - - Left - - - - Декорация46КонтекстноеМеню - 260 - true - - Label - true - true - false - - Left - - - - Отступ45 - 389 - true - true - - true - - - Отступ45ExtendedTooltip - 930 - Label - true - true - - Left - - - - Отступ45КонтекстноеМеню - 390 - true - - Label - true - true - true - false - - Left - - - true - true - - true - - - <key>ru</key> - <value>Обновление успешно завершено</value> - - - ГруппаУспешноеОбновлениеРасширеннаяПодсказка - 1039 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - auto - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Успешное обновление</value> - - - УспешноеОбновлениеExtendedTooltip - 921 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - НеуспешноеОбновление - 271 - - ГруппаНеуспешноеОбновление - 1040 - - Надпись54 - 274 - - <key>ru</key> - <value>Во время обновления программы произошли ошибки. Информация об ошибках сохранена в журнал регистрации.</value> - - true - true - - true - - - Надпись54ExtendedTooltip - 934 - Label - true - true - - Left - - - - Надпись54КонтекстноеМеню - 275 - true - - Label - true - true - false - - Left - Top - 2 - - - - НадписьОткрытьЖурналРегистрации - 279 - - <key>ru</key> - <value>Журнал регистрации</value> - - true - true - - true - - - НадписьОткрытьЖурналРегистрацииExtendedTooltip - 935 - Label - true - true - - Left - - - - НадписьОткрытьЖурналРегистрацииКонтекстноеМеню - 280 - true - - Label - 21 - true - true - false - - - Click - НадписьОткрытьЖурналРегистрацииНажатие - - true - Left - Top - - - - ОтступНеуспешноеОбновление - 391 - true - true - - true - - - ОтступНеуспешноеОбновлениеExtendedTooltip - 936 - Label - true - true - - Left - - - - ОтступНеуспешноеОбновлениеКонтекстноеМеню - 392 - true - - Label - true - true - true - false - - Left - - - true - true - - true - - - <key>ru</key> - <value>Не удалось установить обновление</value> - - - ГруппаНеуспешноеОбновлениеРасширеннаяПодсказка - 1041 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - WeakSeparation - true - true - auto - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Неуспешное обновление</value> - - - НеуспешноеОбновлениеExtendedTooltip - 932 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Страницы помощника</value> - - - СтраницыПомощникаExtendedTooltip - 657 - Label - true - true - - Left - - - Pages - - Auto - - - - КоманднаяПанель - 1003 - - КоманднаяПанельСлева - 1005 - - КнопкаНазад - 19 - true - true - - true - - false - - КнопкаНазадExtendedTooltip - 654 - Label - true - true - - Left - - - Form.Command.Назад - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Командная панель слева</value> - - - ru - Командная панель слева - - - КоманднаяПанельСлеваРасширеннаяПодсказка - 1006 - Label - true - true - - Left - - - CommandBar - - Left - - - - ОтступКоманднойПанели - 1007 - true - true - - true - - - ОтступКоманднойПанелиРасширеннаяПодсказка - 1009 - Label - true - true - - Left - - - - ОтступКоманднойПанелиКонтекстноеМеню - 1008 - true - - Label - true - true - true - - Left - - - - КоманднаяПанельСправа - 1010 - - КнопкаДалее - 20 - - <key>ru</key> - <value>Далее ></value> - - true - true - - true - - false - - КнопкаДалееExtendedTooltip - 655 - Label - true - true - - Left - - - Form.Command.Далее - Auto - true - true - true - UserCmds - Auto - - - КнопкаЗакрыть - 364 - - <key>ru</key> - <value>Отмена</value> - - true - true - - true - - false - - КнопкаЗакрытьРасширеннаяПодсказка - 656 - Label - true - true - - Left - - - Form.StandardCommand.Close - Normal - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Командная панель справа</value> - - - ru - Командная панель справа - - - КоманднаяПанельСправаРасширеннаяПодсказка - 1011 - Label - true - true - - Left - - - CommandBar - - Right - Form - - - true - true - - true - - - <key>ru</key> - <value>Командная панель</value> - - - КоманднаяПанельРасширеннаяПодсказка - 1004 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - None - false - - ФормаКоманднаяПанель - -1 - Right - - - ChoiceProcessing - ОбработкаВыбора - - - NotificationProcessing - ОбработкаОповещения - - - OnOpen - ПриОткрытии - - - OnCreateAtServer - ПриСозданииНаСервере - - - OnClose - ПриЗакрытии - - Abort - Cancel - CustomizeForm - Ignore - No - OK - RestoreValues - Retry - SaveValues - Yes - LockOwner - true - true - true - Vertical - true - true - true - auto - true - - Объект - 1 - - DataProcessorObject.ПоискИУстановкаОбновлений - - - true - - - true - - - Объект.АдресЭлектроннойПочты - - - Объект.ВыслатьОтчетНаПочту - - - Объект.ДатаВремяОбновления - - - Объект.ЗапомнитьПарольСервераОбновлений - - - Объект.ИмяКаталогаРезервнойКопииИБ - - - Объект.ИмяФайлаОбновления - - - Объект.ИсточникОбновления - - - Объект.КодЗадачиПланировщика - - - Объект.КодПользователяСервераОбновлений - - - Объект.НуженФайлОбновления - - - Объект.ПарольСервераОбновлений - - - Объект.ПовторныйЗапуск - - - Объект.ПроверятьНаличиеОбновленияПриЗапуске - - - Объект.РасписаниеПроверкиНаличияОбновления - - - Объект.РежимОбновления - - - Объект.СоздаватьРезервнуюКопию - -
        true
        -
        - - ИмяФайлаПорядокОбновления - - <key>ru</key> - <value>Имя файла порядок обновления</value> - - 2 - - String - - - - true - - - true - - - - ДатаВремяОбновленияУстановлена - - <key>ru</key> - <value>Дата время обновления установлена</value> - - 3 - - Boolean - - - true - - - true - - - - ВыполнитьОбновление - - <key>ru</key> - <value>Выполнить обновление</value> - - 9 - - Boolean - - - true - - - true - - - - СписокФайловДляПолучения - - <key>ru</key> - <value>Список файлов для получения</value> - - 20 - - ValueList - - - true - - - true - - - - - - - ВосстановлениеРезультатовПредЗапуска - - <key>ru</key> - <value>Восстановление результатов пред запуска</value> - - 22 - - Boolean - - - true - - - true - - - - РезультатПолученияФайлов - - <key>ru</key> - <value>Результат получения файлов</value> - - 24 - - - true - - - true - - - - ДоступноеОбновление - - <key>ru</key> - <value>Доступное обновление</value> - - 12 - - - true - - - true - - - - ИмяФайлаИнформацияОбОбновлении - - <key>ru</key> - <value>Имя файла информация об обновлении</value> - - 13 - - String - - - - true - - - true - - - - ПоследняяВерсияКонфигурации - - <key>ru</key> - <value>Последняя версия конфигурации</value> - - 7 - - String - - - - true - - - true - - - - КонфигурацияИзменена - - <key>ru</key> - <value>Конфигурация изменена</value> - - 5 - - Boolean - - - true - - - true - - - - ДоступноОбновлениеДляСледующейРедакции - - <key>ru</key> - <value>Доступно обновление для следующей редакции</value> - - 8 - - Boolean - - - true - - - true - - - - ПараметрыАутентификации - - <key>ru</key> - <value>Параметры аутентификации</value> - - 4 - - - true - - - true - - - - ЕстьАктивныеСеансы - - <key>ru</key> - <value>Есть активные сеансы</value> - - 11 - - Boolean - - - true - - - true - - - - КаталогСкрипта - - <key>ru</key> - <value>Каталог скрипта</value> - - 15 - - String - - - - true - - - true - - - - ИменаФайловОбновления - - <key>ru</key> - <value>Имена файлов обновления</value> - - 25 - - String - - - - true - - - true - - - - УстановленыРасширения - - <key>ru</key> - <value>Установлены расширения</value> - - 26 - - Boolean - - - true - - - true - - - - Назад - - <key>ru</key> - <value>< Назад</value> - - 1 - - ru - Назад - - - true - - - - КнопкаНазадНажатие - - - DontUse - Auto - - - Далее - - <key>ru</key> - <value>Далее ></value> - - 2 - - ru - Далее - - - true - - - - КнопкаДалееНажатие - - - DontUse - Auto - - - НастроитьПараметрыПроксиСервера - - <key>ru</key> - <value>Настроить параметры прокси-сервера</value> - - 5 - - ru - Настроить параметры прокси сервера - - - true - - - - НастроитьПараметрыПроксиСервера - - - DontUse - Auto - - - НовоеВВерсии - - <key>ru</key> - <value>Новое в версии</value> - - 3 - - ru - Новое в версии - - - true - - - - НовоеВВерсии - - - DontUse - Auto - - - ЗавершениеРаботыСистемы - - Boolean - - true - - - ВыполнитьОбновление - - Boolean - - true - - - ПолученоОбновлениеКонфигурации - - Boolean - - true - - - - - - -
        diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/Форма/Module.bsl deleted file mode 100644 index a4945db8c..000000000 --- a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/Форма/Module.bsl +++ /dev/null @@ -1,3048 +0,0 @@ -#Область ОписаниеПеременных - -&НаКлиенте -Перем ПараметрыАдминистрирования; - -#КонецОбласти - -#Область ОбработчикиСобытийФормы - -&НаСервере -Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - Если Параметры.Свойство("АвтоТест") Тогда - Возврат; - КонецЕсли; - - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда - Возврат; // Отказ устанавливается в ПриОткрытии(). - КонецЕсли; - - СтандартныеПодсистемыСервер.УстановитьОтображениеЗаголовковГрупп(ЭтотОбъект); - - ЗаписьЖурналаРегистрации(ОбновлениеКонфигурации.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Информация,,, - НСтр("ru = 'Открытие помощника обновления конфигурации...'")); - ОбновлениеКонфигурации.ПрерватьВыполнениеЕслиАвторизованВнешнийПользователь(); - - // Установка признака выполнения обновления по завершении помощника. - ВыполнитьОбновление = Ложь; - - // Если это первый запуск после обновления конфигурации, то запоминаем и сбрасываем статус. - Объект.РезультатОбновления = ОбновлениеКонфигурации.ОбновлениеКонфигурацииУспешно(КаталогСкрипта); - Если Объект.РезультатОбновления <> Неопределено Тогда - ОбновлениеКонфигурации.СброситьСтатусОбновленияКонфигурации(); - КонецЕсли; - - Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСПочтовымиСообщениями") Тогда - Элементы.ПанельПочта.Видимость = Ложь; - КонецЕсли; - - // Проверяем каждый раз при открытии помощника. - КонфигурацияИзменена = КонфигурацияИзменена(); - - Если Параметры.ЗавершениеРаботыСистемы Тогда - Элементы.ПереключательОбновленияФайл.Видимость = Ложь; - Элементы.ПереключательОбновленияСервер.Видимость = Ложь; - Элементы.ГруппаДатаОбновления.Видимость = Ложь; - Элементы.НадписьНажмитеДалее.Видимость = Истина; - КонецЕсли; - - Если Параметры.ПолученоОбновлениеКонфигурации Тогда - - Элементы.СтраницыСпособОбновленияФайл.ТекущаяСтраница = Элементы.СтраницаПолученоОбновлениеИзПриложенияФайл; - - КонецЕсли; - - Элементы.НадписьОбновлениеКонфигурацииВыполняетсяПриОбменеДаннымиСГлавнымУзлом.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - Элементы.НадписьОбновлениеКонфигурацииВыполняетсяПриОбменеДаннымиСГлавнымУзлом.Заголовок, ПланыОбмена.ГлавныйУзел()); - - ПараметрыАутентификации = СтандартныеПодсистемыСервер.ПараметрыАутентификацииНаСайте(); - - УстановитьПривилегированныйРежим(Истина); - УстановленыРасширения = РасширенияКонфигурации.Получить().Количество() > 0; - -КонецПроцедуры - -&НаКлиенте -Процедура ПриОткрытии(Отказ) - - Если Не ВозможенЗапускОбновления() Тогда - - Отказ = Истина; - Возврат; - - КонецЕсли; - - ВосстановитьНастройкиОбновленияКонфигурации(); - - Если Параметры.ВыполнитьОбновление Тогда - - ПерейтиКВыборуРежимаОбновления(); - Возврат; - - КонецЕсли; - - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - ИмяСтраницы = Страницы.ДоброПожаловать.Имя; - - ДоступноеОбновление = ОбновлениеКонфигурацииКлиент.ПолучитьДоступноеОбновлениеКонфигурации(); - // Если есть обновление в сети Интернет... - Если ДоступноеОбновление.ИсточникОбновления = 0 И ДоступноеОбновление.ФлагАвтоПереходаНаСтраницуСОбновлением Тогда - ВремяПолученияОбновления = ДоступноеОбновление.ВремяПолученияОбновления; - Если ВремяПолученияОбновления <> Неопределено И ОбщегоНазначенияКлиент.ДатаСеанса() - ВремяПолученияОбновления < 30 Тогда - ИмяСтраницы = ПолучитьФайлыОбновленияЧерезИнтернет(Истина); - КонецЕсли; - // Если конфигурация изменена, предложим применить ее к базе данных. - ИначеЕсли ДоступноеОбновление.ИсточникОбновления = 2 И ДоступноеОбновление.НуженФайлОбновления = 0 - И ДоступноеОбновление.ФлагАвтоПереходаНаСтраницуСОбновлением Тогда - ИмяСтраницы = Страницы.ФайлОбновления.Имя; - КонецЕсли; - - Если Объект.КодЗадачиПланировщика <> 0 И Не СуществуетЗадачаПланировщика(Объект.КодЗадачиПланировщика) Тогда - Объект.КодЗадачиПланировщика = 0; - КонецЕсли; - - // Если форма открывается при запуске программы после обновления. - Если Объект.РезультатОбновления <> Неопределено Тогда - - ИмяФайлаПорядокОбновления = ПолучитьИмяЛокальногоФайлаПорядкаОбновления(); - Если НЕ ФайлСуществуетНаКлиенте(ИмяФайлаПорядокОбновления) Тогда - ИмяФайлаПорядокОбновления = ""; - КонецЕсли; - - ИмяФайлаИнформацияОбОбновлении = ПолучитьИмяЛокальногоФайлаОписанияОбновления(); - Если НЕ ФайлСуществуетНаКлиенте(ИмяФайлаИнформацияОбОбновлении) Тогда - ИмяФайлаИнформацияОбОбновлении = ""; - КонецЕсли; - - Если СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЭтоБазоваяВерсияКонфигурации Тогда - - Если ПустаяСтрока(КаталогСкрипта) Тогда - Отказ = Истина; - Возврат; - Иначе - ПрочитатьДанныеВЖурналРегистрации(); - КонецЕсли; - - КонецЕсли; - - ИмяСтраницы = ? (Объект.РезультатОбновления, Страницы.УспешноеОбновление.Имя, Страницы.НеуспешноеОбновление.Имя); - Объект.РезультатОбновления = Неопределено; - - Иначе - - КонфигурацияГотоваКОбновлению = Истина; - ОбновлениеКонфигурацииКлиентПереопределяемый.ПриОпределенииГотовностиКОбновлениюКонфигурации( - КонфигурацияГотоваКОбновлению); - - Если Не КонфигурацияГотоваКОбновлению Тогда - ИмяСобытияЖурнала = ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Информация", - НСтр("ru = 'Конфигурация не может быть обновлена. Завершение проверки обновления.'")); - Отказ = Истина; - Возврат; - КонецЕсли; - - Если Объект.КодЗадачиПланировщика <> 0 Тогда - ПараметрОтказа = Ложь; // Не используется в этом случае. - ИмяСтраницы = ВосстановитьРезультатыПредыдущегоЗапуска(ПараметрОтказа); - ИначеЕсли КонфигурацияИзменена И Объект.ИсточникОбновления = 2 Тогда - Объект.НуженФайлОбновления = 0; - ИмяСтраницы = Страницы.ФайлОбновления.Имя; - КонецЕсли; - - Если Не СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЭтоГлавныйУзел Тогда - Если КонфигурацияИзменена Тогда - ПерейтиКВыборуРежимаОбновления(); - Возврат; - Иначе - ИмяСтраницы = Страницы.ОбновленияНеОбнаружено.Имя; - КонецЕсли; - КонецЕсли - - КонецЕсли; - - Если ИмяСтраницы = Неопределено Тогда - Возврат; - КонецЕсли; - - ПередОткрытиемСтраницы(Страницы[ИмяСтраницы]); - Элементы.СтраницыПомощника.ТекущаяСтраница = Страницы[ИмяСтраницы]; - -КонецПроцедуры - -&НаКлиенте -Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора) - - Если ВРег(ИсточникВыбора.ИмяФормы) = ВРег("Обработка.ПоискИУстановкаОбновлений.Форма.НастройкаРасписания") Тогда - - Если ТипЗнч(ВыбранноеЗначение) = Тип("Структура") Тогда - ЗаполнитьЗначенияСвойств(Объект, ВыбранноеЗначение); - КонецЕсли; - - ПередОткрытиемСтраницы(); - - ИначеЕсли ВРег(ИсточникВыбора.ИмяФормы) = ВРег("Обработка.АктивныеПользователи.Форма.АктивныеПользователи") Тогда - - ПередОткрытиемСтраницы(); - - ИначеЕсли ВРег(ИсточникВыбора.ИмяФормы) = ВРег("Обработка.ПоискИУстановкаОбновлений.Форма.НастройкаРезервнойКопии") Тогда - - Если ТипЗнч(ВыбранноеЗначение) = Тип("Структура") Тогда - ЗаполнитьЗначенияСвойств(Объект, ВыбранноеЗначение); - КонецЕсли; - - ПередОткрытиемСтраницы(); - - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) - - Если ИмяСобытия = "ЛегальностьПолученияОбновлений" И Не Параметр Тогда - - ОтработатьНажатиеКнопкиНазад(); - - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ПриЗакрытии() - - ДоступноеОбновление = ОбновлениеКонфигурацииКлиент.ПолучитьДоступноеОбновлениеКонфигурации(); - Если ДоступноеОбновление.ИсточникОбновления <> -1 Тогда - ДоступноеОбновление.ФлагАвтоПереходаНаСтраницуСОбновлением = Ложь; - КонецЕсли; - - // Сохранение настроек обновления. - СохранитьНастройкиОбновленияКонфигурации(); - - // Выполнение обновления конфигурации. - Если ВыполнитьОбновление Тогда - ВыполнитьОбновлениеКонфигурации(); - КонецЕсли; - - // запись событий ЖР - ЖурналРегистрацииВызовСервера.ЗаписатьСобытияВЖурналРегистрации(ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"]); - -КонецПроцедуры - -#КонецОбласти - -#Область ОбработчикиСобытийЭлементовШапкиФормы - -//////////////////////////////////////////////////////////////////////////////// -// Страница ДоброПожаловать - -&НаКлиенте -Процедура ИсточникОбновленияПриИзменении(Элемент) - ПередОткрытиемСтраницы(); -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Страница ПодключениеКИнтернет - -&НаКлиенте -Процедура НадписьПерейтиВЖурналРегистрацииНажатие(Элемент) - ОткрытьФорму("Обработка.ЖурналРегистрации.Форма", Новый Структура("Пользователь", ИмяПользователя())); -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Страница ПодключениеКСайту - -&НаКлиенте -Процедура НадписьИнформацияОПолученииДоступаНажатие(Элемент) - - ПерейтиПоНавигационнойСсылке( - ОбновлениеКонфигурацииКлиент.ПолучитьПараметрыОбновления().АдресСтраницыИнформацииОПолученииДоступаКПользовательскомуСайту); - -КонецПроцедуры - -&НаКлиенте -Процедура НадписьКакОформитьПодпискуИТСНажатие(Элемент) - ОбновлениеКонфигурацииКлиент.ОткрытьВебСтраницу("http://its.1c.ru/about.php?section=how"); -КонецПроцедуры - -&НаКлиенте -Процедура НадписьОткрытьЖурналРегистрацииНажатие(Элемент) - - СписокПриложений = Новый Массив; - СписокПриложений.Добавить("COMConnection"); - СписокПриложений.Добавить("Designer"); - СписокПриложений.Добавить("1CV8"); - СписокПриложений.Добавить("1CV8C"); - - ОтборЖурналаРегистрации = Новый Структура; - ОтборЖурналаРегистрации.Вставить("Пользователь", ИмяПользователя()); - ОтборЖурналаРегистрации.Вставить("ИмяПриложения", СписокПриложений); - - ОткрытьФорму("Обработка.ЖурналРегистрации.Форма", ОтборЖурналаРегистрации); - -КонецПроцедуры - -&НаКлиенте -Процедура НадписьПодробнееОбИТСОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка) - СтандартнаяОбработка = Ложь; - ОбновлениеКонфигурацииКлиент.ОткрытьВебСтраницу("http://its.1c.ru/about.php"); -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Страница ФайлОбновления - -&НаКлиенте -Процедура ПереключательНуженФайлОбновленияПриИзменении(Элемент) - ПередОткрытиемСтраницы(); -КонецПроцедуры - -&НаКлиенте -Процедура ПолеФайлОбновленияНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) - - СтандартнаяОбработка = Ложь; - - Обработчик = Новый ОписаниеОповещения("ПослеПодтвержденияБезопасности", ЭтотОбъект); - ПараметрыФормы = Новый Структура("Ключ", "ПередВыборомФайлаОбновления"); - ОткрытьФорму("ОбщаяФорма.ПредупреждениеБезопасности", ПараметрыФормы, , , , , Обработчик); - -КонецПроцедуры - -&НаКлиенте -Процедура ПослеПодтвержденияБезопасности(Результат, ДополнительныеПараметры) Экспорт - - Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие); - Диалог.Каталог = ПолучитьКаталогФайла(Элементы.ПолеФайлОбновления.ТекстРедактирования); - Диалог.ПроверятьСуществованиеФайла = Истина; - Диалог.Фильтр = НСтр("ru = 'Все файлы поставки (*.cf*;*.cfu)|*.cf*;*.cfu|Файлы поставки конфигурации (*.cf)|*.cf|Файлы поставки обновления конфигурации(*.cfu)|*.cfu'"); - Диалог.Заголовок = НСтр("ru = 'Выбор поставки обновления конфигурации'"); - - Если Диалог.Выбрать() Тогда - Объект.ИмяФайлаОбновления = Диалог.ПолноеИмяФайла; - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ДекорацияОбновитеПлатформуОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка) - - СтандартнаяОбработка = Ложь; - - ДоступноОбновлениеВерсииПлатформы = Ложь; - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ПолучениеОбновленийПрограммы") Тогда - МодульПолучениеОбновленийПрограммыКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ПолучениеОбновленийПрограммыКлиент"); - ДоступноОбновлениеВерсииПлатформы = МодульПолучениеОбновленийПрограммыКлиент.ДоступноИспользованиеПолученияОбновленийПлатформы(); - КонецЕсли; - - Если ДоступноОбновлениеВерсииПлатформы Тогда - - НоваяВерсияКонфигурации = ПолучитьСтруктуруДоступногоОбновления().Версия; - - ПараметрыАвторизации = Новый Структура; - ПараметрыАвторизации.Вставить("Логин", Объект.КодПользователяСервераОбновлений); - ПараметрыАвторизации.Вставить("Пароль", Объект.ПарольСервераОбновлений); - - МодульПолучениеОбновленийПрограммыКлиент.УстановитьОбновлениеПлатформы1СПредприятие( - НоваяВерсияКонфигурации, ПараметрыАвторизации); - - Иначе - - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("ИнструкцияДляСледующейРедакции", Истина); - ОткрытьФорму("Обработка.НерекомендуемаяВерсияПлатформы.Форма.ПорядокОбновленияПлатформы", ПараметрыФормы); - - КонецЕсли; - -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Страница ДоступноеОбновление - -&НаКлиенте -Процедура ДекорацияПорядокОбновленияОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка) - - СтандартнаяОбработка = Ложь; - ПоказатьПорядокОбновления(); - -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Страница ВыборРежимаОбновленияФайл - -&НаКлиенте -Процедура НадписьСписокДействийНажатие(Элемент) - ПоказатьАктивныхПользователей(); -КонецПроцедуры - -&НаКлиенте -Процедура НадписьСписокДействий1Нажатие(Элемент) - ПоказатьАктивныхПользователей(); -КонецПроцедуры - -&НаКлиенте -Процедура НадписьСписокДействий3Нажатие(Элемент) - ПоказатьАктивныхПользователей(); -КонецПроцедуры - -&НаКлиенте -Процедура НадписьРезервнаяКопияНажатие(Элемент) - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("СоздаватьРезервнуюКопию", Объект.СоздаватьРезервнуюКопию); - ПараметрыФормы.Вставить("ИмяКаталогаРезервнойКопииИБ", Объект.ИмяКаталогаРезервнойКопииИБ); - ПараметрыФормы.Вставить("ВосстанавливатьИнформационнуюБазу", Объект.ВосстанавливатьИнформационнуюБазу); - ОткрытьФорму("Обработка.ПоискИУстановкаОбновлений.Форма.НастройкаРезервнойКопии", ПараметрыФормы, ЭтотОбъект); -КонецПроцедуры - -&НаКлиенте -Процедура НадписьПорядокОбновленияФайлОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка) - - СтандартнаяОбработка = Ложь; - ПоказатьПорядокОбновления(); - -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Страница ВыборРежимаОбновленияСервер - -&НаКлиенте -Процедура ПереключательОбновленияПриИзменении(Элемент) - ПередОткрытиемСтраницы(); -КонецПроцедуры - -&НаКлиенте -Процедура ВыслатьОтчетНаПочтуПриИзменении(Элемент) - ПередОткрытиемСтраницы(); -КонецПроцедуры - -&НаКлиенте -Процедура НадписьПорядокОбновленияСерверОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка) - - СтандартнаяОбработка = Ложь; - ПоказатьПорядокОбновления(); - -КонецПроцедуры - -&НаКлиенте -Процедура НадписьОтложенныеОбработчикиОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка) - - СтандартнаяОбработка = Ложь; - ОткрытьФорму("Обработка.РезультатыОбновленияПрограммы.Форма.ОтложенныеОбработчики"); - -КонецПроцедуры - -#КонецОбласти - -#Область ОбработчикиКомандФормы - -&НаКлиенте -Процедура КнопкаНазадНажатие(Команда) - - ОтработатьНажатиеКнопкиНазад(); - -КонецПроцедуры - -&НаКлиенте -Процедура КнопкаДалееНажатие(Команда) - ФлагЗавершенияРаботы = Ложь; - ОбработатьНажатиеКнопкиДалее(ФлагЗавершенияРаботы); - Если ФлагЗавершенияРаботы Тогда - ОбновлениеКонфигурацииКлиентПереопределяемый.ПередЗавершениемРаботыСистемы(); - ПараметрыПриложения.Вставить("СтандартныеПодсистемы.ПропуститьПредупреждениеПередЗавершениемРаботыСистемы", Истина); - ЗавершитьРаботуСистемы(Ложь); - Закрыть(); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура НастроитьПараметрыПроксиСервера(Команда) - ОткрытьФорму("ОбщаяФорма.ПараметрыПроксиСервера", Новый Структура("НастройкаПроксиНаКлиенте", Истина), ЭтотОбъект); -КонецПроцедуры - -&НаКлиенте -Процедура НовоеВВерсии(Команда) - - Если НЕ ПустаяСтрока(ИмяФайлаИнформацияОбОбновлении) Тогда - ОбновлениеКонфигурацииКлиент.ОткрытьВебСтраницу(ИмяФайлаИнформацияОбОбновлении, НСтр("ru = 'Новое в версии'")); - Иначе - ПоказатьПредупреждение(, НСтр("ru = 'Информация об обновлении отсутствует.'")); - КонецЕсли; - -КонецПроцедуры - -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -// Проверка наличия активных соединений с информационной базой. -// -// Возвращаемое значение: -// Булево - Истина, если соединения есть, -// Ложь, если соединений нет. -&НаСервереБезКонтекста -Функция НаличиеАктивныхСоединений(СообщенияДляЖурналаРегистрации = Неопределено) - // Запись накопленных событий ЖР. - ЖурналРегистрации.ЗаписатьСобытияВЖурналРегистрации(СообщенияДляЖурналаРегистрации); - Возврат СоединенияИБ.КоличествоСеансовИнформационнойБазы(Ложь, Ложь) > 1; -КонецФункции - -&НаСервере -Функция ПолучитьТекстыМакетов(ИменаМакетов, СтруктураПараметров, СообщенияДляЖурналаРегистрации) - // Запись накопленных событий ЖР. - ЖурналРегистрации.ЗаписатьСобытияВЖурналРегистрации(СообщенияДляЖурналаРегистрации); - Результат = Новый Массив(); - Результат.Добавить(ПолучитьТекстСкрипта(СтруктураПараметров)); - - ИменаМакетовМассив = СтрРазделить(ИменаМакетов, ","); - Для Каждого ИмяМакета Из ИменаМакетовМассив Цикл - Результат.Добавить(Обработки.ПоискИУстановкаОбновлений.ПолучитьМакет(ИмяМакета).ПолучитьТекст()); - КонецЦикла; - Возврат Результат; -КонецФункции - -&НаСервере -Функция ПолучитьТекстСкрипта(СтруктураПараметров) - - // Файл обновления конфигурации: main.js. - ШаблонСкрипта = Обработки.ПоискИУстановкаОбновлений.ПолучитьМакет("МакетФайлаОбновленияКонфигурации"); - - Скрипт = ШаблонСкрипта.ПолучитьОбласть("ОбластьПараметров"); - Скрипт.УдалитьСтроку(1); - Скрипт.УдалитьСтроку(Скрипт.КоличествоСтрок()); - - Текст = ШаблонСкрипта.ПолучитьОбласть("ОбластьОбновленияКонфигурации"); - Текст.УдалитьСтроку(1); - Текст.УдалитьСтроку(Текст.КоличествоСтрок()); - - Возврат ВставитьПараметрыСкрипта(Скрипт.ПолучитьТекст(), СтруктураПараметров) + Текст.ПолучитьТекст(); - -КонецФункции - -&НаСервере -Функция ВставитьПараметрыСкрипта(Знач Текст, Знач СтруктураПараметров) - - Результат = Текст; - - Если Объект.СоздаватьРезервнуюКопию = 2 Тогда - Объект.ВосстанавливатьИнформационнуюБазу = Истина; - ИначеЕсли Объект.СоздаватьРезервнуюКопию = 0 Тогда - Объект.ВосстанавливатьИнформационнуюБазу = Ложь; - КонецЕсли; - - ИменаФайловОбновления = ИменаФайловОбновления(); - - ПараметрыСкрипта = СтруктураПараметров.ПараметрыСкрипта; - СтрокаСоединенияИнформационнойБазы = ПараметрыСкрипта.СтрокаСоединенияИнформационнойБазы + ПараметрыСкрипта.СтрокаПодключения; - - Если СтрЗаканчиваетсяНа(СтрокаСоединенияИнформационнойБазы, ";") Тогда - СтрокаСоединенияИнформационнойБазы = Лев(СтрокаСоединенияИнформационнойБазы, СтрДлина(СтрокаСоединенияИнформационнойБазы) - 1); - КонецЕсли; - - ИмяИсполняемогоФайлаКонфигуратора = СтруктураПараметров.КаталогПрограммы + СтруктураПараметров.ИмяИсполняемогоФайлаКонфигуратора; - ИмяИсполняемогоФайлаКлиента = СтруктураПараметров.КаталогПрограммы + СтруктураПараметров.ИмяИсполняемогоФайлаКлиента; - - // Определение пути к информационной базе. - ПризнакФайловогоРежима = Неопределено; - ПутьКИнформационнойБазе = СоединенияИБКлиентСервер.ПутьКИнформационнойБазе(ПризнакФайловогоРежима, СтруктураПараметров.ПараметрыАдминистрирования.ПортКластера); - - ПараметрПутиКИнформационнойБазе = ?(ПризнакФайловогоРежима, "/F", "/S") + ПутьКИнформационнойБазе; - СтрокаПутиКИнформационнойБазе = ?(ПризнакФайловогоРежима, ПутьКИнформационнойБазе, ""); - БлокироватьСоединенияИБ = Не СтруктураПараметров.ИнформационнаяБазаФайловая Или РежимИмитацииКлиентСервернойИБ(); - - Результат = СтрЗаменить(Результат, "[ИменаФайловОбновления]" , ИменаФайловОбновления); - Результат = СтрЗаменить(Результат, "[ИмяИсполняемогоФайлаКонфигуратора]" , Форматировать(ИмяИсполняемогоФайлаКонфигуратора)); - Результат = СтрЗаменить(Результат, "[ИмяИсполняемогоФайлаКлиента]" , Форматировать(ИмяИсполняемогоФайлаКлиента)); - Результат = СтрЗаменить(Результат, "[ПараметрПутиКИнформационнойБазе]" , Форматировать(ПараметрПутиКИнформационнойБазе)); - Результат = СтрЗаменить(Результат, "[СтрокаПутиКФайлуИнформационнойБазы]", Форматировать(ОбновлениеКонфигурацииКлиентСервер.ДобавитьКонечныйРазделительПути(СтрЗаменить(СтрокаПутиКИнформационнойБазе, """", "")) + "1Cv8.1CD")); - Результат = СтрЗаменить(Результат, "[СтрокаСоединенияИнформационнойБазы]", Форматировать(СтрокаСоединенияИнформационнойБазы)); - Результат = СтрЗаменить(Результат, "[СобытиеЖурналаРегистрации]" , Форматировать(СтруктураПараметров.СобытиеЖурналаРегистрации)); - Результат = СтрЗаменить(Результат, "[АдресЭлектроннойПочты]" , Форматировать(?(Объект.РежимОбновления = 2 И Объект.ВыслатьОтчетНаПочту, Объект.АдресЭлектроннойПочты, ""))); - Результат = СтрЗаменить(Результат, "[ИмяАдминистратораОбновления]" , Форматировать(ИмяПользователя())); - Результат = СтрЗаменить(Результат, "[СоздаватьРезервнуюКопию]" , ?(ПризнакФайловогоРежима И Объект.СоздаватьРезервнуюКопию <> 0, "true", "false")); - Результат = СтрЗаменить(Результат, "[КаталогРезервнойКопии]" , Форматировать(?(Объект.СоздаватьРезервнуюКопию = 2, ОбновлениеКонфигурацииКлиентСервер.ДобавитьКонечныйРазделительПути(Объект.ИмяКаталогаРезервнойКопииИБ), ""))); - Результат = СтрЗаменить(Результат, "[ВосстанавливатьИнформационнуюБазу]" , ?(Объект.ВосстанавливатьИнформационнуюБазу, "true", "false")); - Результат = СтрЗаменить(Результат, "[БлокироватьСоединенияИБ]" , ?(БлокироватьСоединенияИБ, "true", "false")); - Результат = СтрЗаменить(Результат, "[ИмяCOMСоединителя]" , Форматировать(СтруктураПараметров.ИмяCOMСоединителя)); - Результат = СтрЗаменить(Результат, "[ИспользоватьCOMСоединитель]" , ?(СтруктураПараметров.ИспользоватьCOMСоединитель, "false", "true")); - Результат = СтрЗаменить(Результат, "[ЗапускСеансаПослеОбновления]" , ?(Параметры.ЗавершениеРаботыСистемы, "false", "true")); - Результат = СтрЗаменить(Результат, "[ВыполнятьСжатиеТаблицИБ]" , ?(ОбщегоНазначения.ИнформационнаяБазаФайловая(), "true", "false")); - Результат = СтрЗаменить(Результат, "[ВыполнитьОтложенныеОбработчики]" , ?(ВыполнитьОтложенныеОбработчики(), "true", "false")); - - Возврат Результат; - -КонецФункции - -&НаСервереБезКонтекста -Функция Форматировать(Знач Текст) - - Текст = СтрЗаменить(Текст, "\", "\\"); - Текст = СтрЗаменить(Текст, """", "\"""); - Текст = СтрЗаменить(Текст, "'", "\'"); - - Возврат "'" + Текст + "'"; - -КонецФункции - -&НаСервере -Функция ИменаФайловОбновления() - - Если Не ПустаяСтрока(ИменаФайловОбновления) - И Объект.ДоступныеОбновления.Количество() = 0 - И Не (Объект.ИсточникОбновления = 2 И Объект.НуженФайлОбновления = 0) Тогда - - Возврат ИменаФайловОбновления; - - КонецЕсли; - - ИменаФайловОбновления = ""; - Для Каждого Обновление Из Объект.ДоступныеОбновления Цикл - ПрефиксФайлаОбновления = ""; - СледующийЭлемент = Объект.ДоступныеОбновления.Индекс(Обновление) + 1; - Если СледующийЭлемент <> Объект.ДоступныеОбновления.Количество() Тогда - МинимальнаяВерсия = Объект.ДоступныеОбновления[СледующийЭлемент].МинимальнаяВерсия; - Если МинимальнаяВерсия = ОбщегоНазначенияКлиентСервер.ВерсияКонфигурацииБезНомераСборки(Обновление.Версия) Тогда - ПрефиксФайлаОбновления = "+"; - КонецЕсли; - КонецЕсли; - ИменаФайловОбновления = ИменаФайловОбновления + Форматировать(ПрефиксФайлаОбновления + Обновление.ПутьКЛокальномуФайлуОбновления) + ","; - КонецЦикла; - - Если СтрДлина(ИменаФайловОбновления) > 0 Тогда - ИменаФайловОбновления = Лев(ИменаФайловОбновления, СтрДлина(ИменаФайловОбновления) - 1); - КонецЕсли; - ИменаФайловОбновления = "[" + ИменаФайловОбновления + "]"; - - Возврат ИменаФайловОбновления; - -КонецФункции - -&НаСервереБезКонтекста -Процедура НоваяСтрокаТаблицыОбновленийКонфигурации(ТаблицаОбновленийКонфигурации, Обновление) - - НоваяСтрока = ТаблицаОбновленийКонфигурации.Добавить(); - - ЗаполнитьЗначенияСвойств(НоваяСтрока, Обновление); - НомерВерсии = СтрРазделить(Обновление.Версия, "."); - НоваяСтрока.Версия1Разряд = Число(НомерВерсии[0]); - НоваяСтрока.Версия2Разряд = Число(НомерВерсии[1]); - НоваяСтрока.Версия3Разряд = Число(НомерВерсии[2]); - НоваяСтрока.Версия4Разряд = Число(НомерВерсии[3]); - - ПутьФайла = СтрРазделить(СтрЗаменить(Обновление.ПутьКФайлуОбновления, "\", "/"), "/"); - Если ПутьФайла.Количество() > 0 Тогда - НоваяСтрока.ФайлОбновления = ПутьФайла[ПутьФайла.Количество() - 1]; - КонецЕсли; - -КонецПроцедуры - -// Получить список всех инкрементальных обновлений по списку шаблонов, -// последовательная установка которых обновит версию ВерсияОт до версии ВерсияДо. -// -// Параметры: -// ВерсияОт - строка - исходная версия. -// ВерсияДо - строка - конечная версия, до которой конфигурация -// обновляется с исходной. -// -// Возвращаемое значение: -// Массив - массив строк ТаблицаЗначений. -&НаСервере -Процедура ПолучитьДоступныеОбновленияВИнтервале(Знач ВерсияОт, Знач ВерсияДо, АдресФайлаВоВремХранилище, - СообщенияДляЖурналаРегистрации) - - // Запись накопленных событий ЖР. - ЖурналРегистрации.ЗаписатьСобытияВЖурналРегистрации(СообщенияДляЖурналаРегистрации); - ТаблицаОбновлений = Неопределено; - ВыполнитьЗагрузкуСпискаОбновлений(АдресФайлаВоВремХранилище, ТаблицаОбновлений); - - Если ТаблицаОбновлений = Неопределено Тогда // ошибки при чтении файла - Возврат; - КонецЕсли; - - ТаблицаОбновленийКонфигурации = Объект.ДоступныеОбновления.Выгрузить(); - ТаблицаОбновленийКонфигурации.Очистить(); - - ТаблицаДоступныхОбновленийКонфигурации = ТаблицаОбновленийКонфигурации.Скопировать(); - - Для Каждого Обновление Из ТаблицаОбновлений Цикл - НоваяСтрокаТаблицыОбновленийКонфигурации(ТаблицаОбновленийКонфигурации, Обновление); - КонецЦикла; - - ТаблицаОбновленийКонфигурации.Сортировать("Версия1Разряд Убыв, - |Версия2Разряд Убыв, - |Версия3Разряд Убыв, - |Версия4Разряд Убыв"); - - ТекущаяВерсияОт = ВерсияОт; - Пока ТекущаяВерсияОт <> ВерсияДо Цикл - - Отбор = Новый Структура("ВерсияДляОбновления", ТекущаяВерсияОт); - МассивДоступныхОбновлений = ТаблицаОбновленийКонфигурации.НайтиСтроки(Отбор); - - Для Каждого Обновление Из МассивДоступныхОбновлений Цикл - НоваяСтрокаТаблицыОбновленийКонфигурации(ТаблицаДоступныхОбновленийКонфигурации, Обновление); - КонецЦикла; - - ТаблицаДоступныхОбновленийКонфигурации.Сортировать("Версия1Разряд Убыв, - |Версия2Разряд Убыв, - |Версия3Разряд Убыв, - |Версия4Разряд Убыв"); - - Если ТаблицаДоступныхОбновленийКонфигурации.Количество() = 0 Тогда - Прервать; - КонецЕсли; - - Отбор = Новый Структура("Версия", ТаблицаДоступныхОбновленийКонфигурации[0].Версия); - МассивУжеНайденныхОбновлений = Объект.ДоступныеОбновления.НайтиСтроки(Отбор); - Если МассивУжеНайденныхОбновлений.Количество() = 0 Тогда - // добавляем новое обновление - НовоеДоступноеОбновление = Объект.ДоступныеОбновления.Добавить(); - ЗаполнитьЗначенияСвойств(НовоеДоступноеОбновление, ТаблицаДоступныхОбновленийКонфигурации[0]); - ИначеЕсли ПустаяСтрока(МассивУжеНайденныхОбновлений[0].ПутьКЛокальномуФайлуОбновления) Тогда - // Обновляем информацию в уже найденном обновлении. - ЗаполнитьЗначенияСвойств(МассивУжеНайденныхОбновлений[0], ТаблицаДоступныхОбновленийКонфигурации[0]); - КонецЕсли; - НоваяТекущаяВерсияОт = ТаблицаДоступныхОбновленийКонфигурации[0].Версия; - Если ТекущаяВерсияОт = НоваяТекущаяВерсияОт И НоваяТекущаяВерсияОт <> ВерсияДо Тогда - ТаблицаДоступныхОбновленийКонфигурации.Очистить(); - ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Недоступно обновление на версию %1 с текущей версии %2'"), ВерсияДо, ВерсияОт); - КонецЕсли; - ТекущаяВерсияОт = НоваяТекущаяВерсияОт; - - КонецЦикла; - -КонецПроцедуры - -// Загрузка списка обновлений из файла XML. -&НаСервереБезКонтекста -Процедура ВыполнитьЗагрузкуСпискаОбновлений(Знач АдресФайлаЗагрузки, ТаблицаОбновлений = Неопределено) - - ПолныйПутьФайлаЗагрузки = АдресФайлаЗагрузки; - Если ЭтоАдресВременногоХранилища(АдресФайлаЗагрузки) Тогда - ПолныйПутьФайлаЗагрузки = СтрЗаменить(ПолучитьИмяВременногоФайла(), ".tmp", ".xml"); - ДанныеФайла = ПолучитьИзВременногоХранилища(АдресФайлаЗагрузки); - ДанныеФайла.Записать(ПолныйПутьФайлаЗагрузки); - КонецЕсли; - - СообщениеОбОшибке = НСтр("ru = 'Ошибка при чтении файла списка обновлений'") + " " + ПолныйПутьФайлаЗагрузки; - Если НЕ ФайлСуществуетНаСервере(ПолныйПутьФайлаЗагрузки) Тогда - ВызватьИсключение СообщениеОбОшибке; - КонецЕсли; - - ТипСтрока = ОбщегоНазначения.ОписаниеТипаСтрока(0); - - ТаблицаОбновлений = Новый ТаблицаЗначений; - // Основные колонки - ТаблицаОбновлений.Колонки.Добавить("Конфигурация" ,ТипСтрока); - ТаблицаОбновлений.Колонки.Добавить("Поставщик" ,ТипСтрока); - ТаблицаОбновлений.Колонки.Добавить("Версия" ,ТипСтрока); - ТаблицаОбновлений.Колонки.Добавить("ВерсияДляОбновления" ,ТипСтрока); - ТаблицаОбновлений.Колонки.Добавить("ПутьКФайлуОбновления" ,ТипСтрока); - ТаблицаОбновлений.Колонки.Добавить("НомерДискаИТС" ,ТипСтрока); - ТаблицаОбновлений.Колонки.Добавить("ВерсияПлатформы" ,ТипСтрока); - ТаблицаОбновлений.Колонки.Добавить("МинимальнаяВерсия" ,ТипСтрока); - ТаблицаОбновлений.Колонки.Добавить("РазмерФайлаОбновления" ,ОбщегоНазначения.ОписаниеТипаЧисло(15, 0)); - - ЧтениеXML = Новый ЧтениеXML; - ЧтениеXML.ОткрытьФайл(ПолныйПутьФайлаЗагрузки); - ЧтениеXML.Прочитать(); - - // Дата формирования файла. - ЧтениеXML.Прочитать(); - ЧтениеXML.Прочитать(); - ДатаФормирования = ЧтениеXML.Значение; - ЧтениеXML.Прочитать(); - - // Читаем начало элемента Update или конец элемента UpdateList. - Пока ЧтениеXML.Прочитать() Цикл - - Если ЧтениеXML.Имя = "v8u:updateList" Тогда - Прервать; - КонецЕсли; - Поставщик = ""; - Версия = ""; - ПутьКФайлуОбновления = ""; - НомерДискаИТС = ""; - РазмерФайлаОбновления = 0; - Конфигурация = СтроковыеФункцииКлиентСервер.СократитьДвойныеКавычки(СокрЛП(ЧтениеXML.ПолучитьАтрибут("configuration"))); - ВерсияПлатформы = Неопределено; - МинимальнаяВерсия = ""; - - // Читаем содержимое элемента update. - МассивВерсийДляОбновления = Новый Массив; - Пока ЧтениеXML.Прочитать() Цикл - Если ЧтениеXML.Имя = "v8u:update" Тогда - Прервать; - КонецЕсли; - Если ЧтениеXML.Имя = "v8u:vendor" Тогда - ЧтениеXML.Прочитать(); - Поставщик = СтроковыеФункцииКлиентСервер.СократитьДвойныеКавычки(СокрЛП(ЧтениеXML.Значение)); - ИначеЕсли ЧтениеXML.Имя = "v8u:version" Тогда - ВерсияПлатформы = ЧтениеXML.ПолучитьАтрибут("platform"); - МинимальнаяВерсия = ЧтениеXML.ПолучитьАтрибут("minimal"); - ЧтениеXML.Прочитать(); - Версия = ЧтениеXML.Значение; - ИначеЕсли ЧтениеXML.Имя = "v8u:file" Тогда - ЧтениеXML.Прочитать(); - ПутьКФайлуОбновления = СтроковыеФункцииКлиентСервер.СократитьДвойныеКавычки(СокрЛП(ЧтениеXML.Значение)); - ИначеЕсли ЧтениеXML.Имя = "v8u:size" Тогда - ЧтениеXML.Прочитать(); - РазмерФайлаОбновления = СтроковыеФункцииКлиентСервер.СократитьДвойныеКавычки(СокрЛП(ЧтениеXML.Значение)); - ИначеЕсли ЧтениеXML.Имя = "v8u:its" Тогда - ЧтениеXML.Прочитать(); - НомерДискаИТС = СтроковыеФункцииКлиентСервер.СократитьДвойныеКавычки(СокрЛП(ЧтениеXML.Значение)); - ИначеЕсли ЧтениеXML.Имя = "v8u:target" Тогда - ЧтениеXML.Прочитать(); - МассивВерсийДляОбновления.Добавить(ЧтениеXML.Значение); - КонецЕсли; - - ЧтениеXML.Прочитать(); - КонецЦикла; - - // Формируем таблицу обновлений. - Для Каждого ВерсияДляОбновления Из МассивВерсийДляОбновления Цикл - - НоваяСтрока = ТаблицаОбновлений.Добавить(); - НоваяСтрока.Конфигурация = Конфигурация; - НоваяСтрока.Поставщик = Поставщик; - НоваяСтрока.Версия = Версия; - НоваяСтрока.ВерсияДляОбновления = ВерсияДляОбновления; - НоваяСтрока.ПутьКФайлуОбновления = ПутьКФайлуОбновления; - НоваяСтрока.НомерДискаИТС = НомерДискаИТС; - НоваяСтрока.РазмерФайлаОбновления = РазмерФайлаОбновления; - НоваяСтрока.ВерсияПлатформы = ВерсияПлатформы; - НоваяСтрока.МинимальнаяВерсия = МинимальнаяВерсия; - - КонецЦикла; - - КонецЦикла; - ЧтениеXML.Закрыть(); - - Если ТаблицаОбновлений = Неопределено Тогда // ошибки при чтении файла - ВызватьИсключение НСтр("ru = 'Ошибка при чтении файла'") + " " + ПолныйПутьФайлаЗагрузки; - КонецЕсли; - -КонецПроцедуры - -&НаСервереБезКонтекста -Функция ФайлСуществуетНаСервере(Знач ПутьКФайлу) - Файл = Новый Файл(ПутьКФайлу); - Возврат Файл.Существует(); -КонецФункции - -&НаСервереБезКонтекста -Функция РежимОтладкиСкрипта() - Результат = Ложь; - СтруктураНастройки = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить( - "ОбновлениеКонфигурации", - "НастройкиОбновленияКонфигурации"); - Если СтруктураНастройки <> Неопределено Тогда - СтруктураНастройки.Свойство("РежимОтладкиСкрипта", Результат); - КонецЕсли; - Возврат Результат = Истина; -КонецФункции - -&НаСервереБезКонтекста -Функция РежимИмитацииКлиентСервернойИБ() - Результат = Ложь; - СтруктураНастройки = ОбщегоНазначения.ХранилищеОбщихНастроекЗагрузить( - "ОбновлениеКонфигурации", - "НастройкиОбновленияКонфигурации"); - Если СтруктураНастройки <> Неопределено Тогда - СтруктураНастройки.Свойство("РежимИмитацииКлиентСервернойИБ", Результат); - КонецЕсли; - Возврат Результат = Истина; -КонецФункции - -&НаКлиенте -Процедура СохранитьНастройкиОбновленияКонфигурации() - - ПараметрыРаботыКлиента = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента(); - - ИмяПараметра = "СтандартныеПодсистемы.НастройкиОбновленияКонфигурации"; - Если ПараметрыПриложения[ИмяПараметра] = Неопределено Тогда - ПараметрыПриложения.Вставить(ИмяПараметра, Неопределено); - КонецЕсли; - Настройки = ОбновлениеКонфигурацииКлиентСервер.ПолучитьОбновленныеНастройкиОбновленияКонфигурации(ПараметрыПриложения[ИмяПараметра]); - - Настройки.КодПользователяСервераОбновлений = Объект.КодПользователяСервераОбновлений; - Настройки.ПарольСервераОбновлений = ?(Объект.ЗапомнитьПарольСервераОбновлений, Объект.ПарольСервераОбновлений, ""); - Настройки.ЗапомнитьПарольСервераОбновлений = Объект.ЗапомнитьПарольСервераОбновлений; - - Настройки.ПроверятьНаличиеОбновленияПриЗапуске = Объект.ПроверятьНаличиеОбновленияПриЗапуске; - Настройки.РасписаниеПроверкиНаличияОбновления = ОбщегоНазначенияКлиентСервер.РасписаниеВСтруктуру(Объект.РасписаниеПроверкиНаличияОбновления); - Настройки.ИсточникОбновления = Объект.ИсточникОбновления; - Настройки.РежимОбновления = Объект.РежимОбновления; - Настройки.ДатаВремяОбновления = Объект.ДатаВремяОбновления; - Настройки.ВыслатьОтчетНаПочту = Объект.ВыслатьОтчетНаПочту; - Настройки.АдресЭлектроннойПочты = Объект.АдресЭлектроннойПочты; - Настройки.КодЗадачиПланировщика = Объект.КодЗадачиПланировщика; - Настройки.ПовторныйЗапуск = Объект.ПовторныйЗапуск; - Настройки.ИмяФайлаОбновления = Объект.ИмяФайлаОбновления; - Настройки.НуженФайлОбновления = Объект.НуженФайлОбновления; - Настройки.ИменаФайловОбновления = ИменаФайловОбновления(); - - Настройки.СоздаватьРезервнуюКопию = Объект.СоздаватьРезервнуюКопию; - Настройки.ВосстанавливатьИнформационнуюБазу = Объект.ВосстанавливатьИнформационнуюБазу; - Настройки.ИмяКаталогаРезервнойКопииИБ = Объект.ИмяКаталогаРезервнойКопииИБ; - - Настройки.АдресСервераДляПроверкиНаличияОбновления = ПараметрыРаботыКлиента.НастройкиОбновления.АдресСервераДляПроверкиНаличияОбновления; - Настройки.КаталогОбновлений = ПараметрыРаботыКлиента.НастройкиОбновления.КаталогОбновлений; - Настройки.КороткоеИмяКонфигурации = ПараметрыРаботыКлиента.НастройкиОбновления.КороткоеИмяКонфигурации; - Настройки.АдресРесурсаДляПроверкиНаличияОбновления = ПараметрыРаботыКлиента.НастройкиОбновления.АдресРесурсаДляПроверкиНаличияОбновления; - - ОбновлениеКонфигурацииВызовСервера.ЗаписатьСтруктуруНастроекПомощника( - ПараметрыПриложения["СтандартныеПодсистемы.НастройкиОбновленияКонфигурации"]); - -КонецПроцедуры - -&НаКлиенте -Процедура ВосстановитьНастройкиОбновленияКонфигурации() - - Объект.ВосстанавливатьИнформационнуюБазу = Истина; - - // Восстановление настроек - ИмяПараметра = "СтандартныеПодсистемы.НастройкиОбновленияКонфигурации"; - Если ПараметрыПриложения[ИмяПараметра] = Неопределено Тогда - ПараметрыПриложения.Вставить(ИмяПараметра, ОбновлениеКонфигурацииВызовСервера.ПолучитьСтруктуруНастроекПомощника()); - ОбновлениеКонфигурацииКлиентСервер.ПолучитьОбновленныеНастройкиОбновленияКонфигурации(ПараметрыПриложения[ИмяПараметра]); - КонецЕсли; - ЗаполнитьЗначенияСвойств(Объект, ПараметрыПриложения[ИмяПараметра]); - ИменаФайловОбновления = ПараметрыПриложения[ИмяПараметра].ИменаФайловОбновления; - - Если ПараметрыАутентификации <> Неопределено - И Не ПустаяСтрока(ПараметрыАутентификации.Логин) - И Не ПустаяСтрока(ПараметрыАутентификации.Пароль) Тогда - - Объект.КодПользователяСервераОбновлений = ПараметрыАутентификации.Логин; - Объект.ПарольСервераОбновлений = ПараметрыАутентификации.Пароль; - - КонецЕсли; - - Объект.РасписаниеПроверкиНаличияОбновления = ОбщегоНазначенияКлиентСервер.СтруктураВРасписание(Объект.РасписаниеПроверкиНаличияОбновления); - ПараметрыРаботыКлиента = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента(); - Если ПараметрыРаботыКлиента.ИнформационнаяБазаФайловая И Объект.РежимОбновления > 1 Тогда - Объект.РежимОбновления = 0; - КонецЕсли; - - Если КонфигурацияИзменена Тогда - ПараметрыОбновления = ОбновлениеКонфигурацииКлиент.ПолучитьДоступноеОбновлениеКонфигурации(); - ПараметрыОбновления.ИсточникОбновления = 2; // Локальный или сетевой каталог. - ПараметрыОбновления.НуженФайлОбновления = Ложь; - ПараметрыОбновления.ФлагАвтоПереходаНаСтраницуСОбновлением = Истина; - КонецЕсли; - - Если Параметры.ЗавершениеРаботыСистемы Тогда - Объект.РежимОбновления = 0; - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ПередОткрытиемСтраницы(НоваяТекущаяСтраница = Неопределено) - - ИмяПараметра = "СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"; - Если ПараметрыПриложения[ИмяПараметра] = Неопределено Тогда - ПараметрыПриложения.Вставить(ИмяПараметра, Новый СписокЗначений); - КонецЕсли; - - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - Если НоваяТекущаяСтраница = Неопределено Тогда - НоваяТекущаяСтраница = Элементы.СтраницыПомощника.ТекущаяСтраница; - КонецЕсли; - - ДоступностьКнопкиНазад = Истина; - ДоступностьКнопкиДалее = Истина; - ДоступностьКнопкиЗакрыть = Истина; - ФункцияКнопкиДалее = Истина; // Истина = "Далее", Ложь = "Готово" - ФункцияКнопкиЗакрыть = Истина; // Истина = "Отмена", Ложь = "Закрыть" - - Если НоваяТекущаяСтраница = Страницы.ДоброПожаловать Тогда - ДоступностьКнопкиНазад = Ложь; - ИначеЕсли НоваяТекущаяСтраница = Страницы.ПодключениеКСайту Тогда - - ВидимостьПанелиОшибкиПодключения = ? (ЗначениеЗаполнено(Объект.КодПользователяСервераОбновлений) - ИЛИ ЗначениеЗаполнено(Объект.ПарольСервераОбновлений), Истина, Ложь); - - Элементы.ПанельОшибкаПодключения.Видимость = ВидимостьПанелиОшибкиПодключения; - Элементы.ПанельЖурналРегистрации.Видимость = ВидимостьПанелиОшибкиПодключения; - Если СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЭтоБазоваяВерсияКонфигурации Тогда - Элементы.ГруппаДоступаНаСайт.ТекущаяСтраница = Элементы.ГруппаДоступаНаСайт.ПодчиненныеЭлементы.Базовая; - КонецЕсли; - - Если Не ПустаяСтрока(Объект.ТехническаяИнформацияОбОшибке) Тогда - Объект.ТехническаяИнформацияОбОшибке = НСтр("ru = 'Техническая информация об ошибке:'") + Символы.ПС + Объект.ТехническаяИнформацияОбОшибке; - КонецЕсли; - - ИначеЕсли НоваяТекущаяСтраница = Страницы.ДоступноеОбновление Тогда - - СтруктураДоступногоОбновления = ПолучитьСтруктуруДоступногоОбновления(Истина); - Если СтруктураДоступногоОбновления <> Неопределено Тогда - Элементы.НовоеВВерсии.Видимость = Не ПустаяСтрока(ИмяФайлаИнформацияОбОбновлении); - Элементы.НадписьДоступноеОбновление.Заголовок = СтруктураДоступногоОбновления.Версия; - Элементы.НадписьРазмерОбновления.Заголовок = СтруктураДоступногоОбновления.РазмерОбновления; - Элементы.ДекорацияПорядокОбновления.Видимость = Не ПустаяСтрока(ИмяФайлаПорядокОбновления); - ТребуетсяОбновлениеПлатформы = ТребуетсяОбновлениеПлатформы(СтруктураДоступногоОбновления.ВерсияПлатформы); - Если ДоступноОбновлениеДляСледующейРедакции Или ТребуетсяОбновлениеПлатформы Тогда - - ВерсияПлатформы = ?(ТребуетсяОбновлениеПлатформы, СтруктураДоступногоОбновления.ВерсияПлатформы, - ОбновлениеКонфигурацииКлиент.СледующаяРедакцияПлатформы()); - ШаблонЗаголовка = НСтр("ru = 'Для обновления на эту версию требуется платформа 1С:Предприятие - |не ниже версии %1. Необходимо перейти на новую версию платформы, - |после чего можно будет установить это обновление.'"); - СтрокаЗаголовка = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонЗаголовка, СтруктураДоступногоОбновления.ВерсияПлатформы); - Элементы.ДекорацияОбновитеПлатформу.Заголовок = СтроковыеФункцииКлиентСервер.ФорматированнаяСтрока(СтрокаЗаголовка); - - Элементы.ДекорацияОбновитеПлатформу.Видимость = Истина; - ДоступностьКнопкиДалее = Ложь; - ДоступностьКнопкиЗакрыть = Истина; - Иначе - Элементы.ДекорацияОбновитеПлатформу.Видимость = Ложь; - Элементы.ДекорацияПорядокОбновления.Высота = 2; - КонецЕсли; - - Если ПустаяСтрока(ИмяФайлаПорядокОбновления) И Не (ДоступноОбновлениеДляСледующейРедакции Или ТребуетсяОбновлениеПлатформы) Тогда - Элементы.ГруппаДополнительнаяИнформация.Видимость = Ложь; - КонецЕсли; - - КонецЕсли; - - ИначеЕсли НоваяТекущаяСтраница = Страницы.ОбновленияНеОбнаружено Тогда - - СтруктураДоступногоОбновления = ПолучитьСтруктуруДоступногоОбновления(); - ФункцияКнопкиДалее = Ложь; - ФункцияКнопкиЗакрыть = Ложь; - ДоступностьКнопкиДалее = Ложь; - Элементы.НадписьОписаниеТекущейКонфигурации.Заголовок = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().СинонимКонфигурации; - Элементы.НадписьВерсияТекущейКонфигурации.Заголовок = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ВерсияКонфигурации; - Элементы.НадписьВерсияДляОбновления.Заголовок = ?(ТипЗнч(СтруктураДоступногоОбновления) = Тип("Структура"), НСтр("ru = 'Доступная версия для обновления -'") + " " + СтруктураДоступногоОбновления.Версия, ""); - Элементы.НадписьВерсияДляОбновления.Видимость = НЕ ПустаяСтрока(Элементы.НадписьВерсияДляОбновления.Заголовок); - - Если ОбщегоНазначенияКлиентСервер.СравнитьВерсии(СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ВерсияКонфигурации, - ПоследняяВерсияКонфигурации) >= 0 - Или СтруктураДоступногоОбновления <> Неопределено - Или (Объект.ИсточникОбновления = 0 И Объект.ДоступныеОбновления.Количество() = 0) Тогда // это последняя версия. - - Элементы.ПанельИнформацияОбОбновлении.ТекущаяСтраница = Элементы.ПанельИнформацияОбОбновлении.ПодчиненныеЭлементы.ОбновлениеНеТребуется; - Элементы.ГруппаОбновленияНеОбнаружено.Заголовок = НСтр("ru = 'Обновление не требуется'"); - ИначеЕсли СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ГлавныйУзел <> Неопределено Тогда - Элементы.ПанельИнформацияОбОбновлении.ТекущаяСтраница = Элементы.ОбновлениеПроизводитсяВГлавномУзле; - Элементы.ГруппаОбновленияНеОбнаружено.Заголовок = НСтр("ru = 'Обновление не требуется'"); - Иначе - Элементы.ПанельИнформацияОбОбновлении.ТекущаяСтраница = Элементы.ПанельИнформацияОбОбновлении.ПодчиненныеЭлементы.ОбновлениеНеОбнаружено; - Элементы.ГруппаОбновленияНеОбнаружено.Заголовок = НСтр("ru = 'Обновления конфигурации не обнаружено'"); - КонецЕсли; - - Если Не СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЭтоГлавныйУзел Тогда - ДоступностьКнопкиНазад = Ложь; - КонецЕсли; - - ИначеЕсли НоваяТекущаяСтраница = Страницы.ДлительнаяОперация Тогда - - ДоступностьКнопкиДалее = Ложь; - ДоступностьКнопкиНазад = Ложь; - ДоступностьКнопкиЗакрыть = Ложь; - - ИначеЕсли НоваяТекущаяСтраница = Страницы.ВыборРежимаОбновленияФайл Тогда - - ФункцияКнопкиДалее = (Объект.РежимОбновления = 0);// Если НЕ обновляем сейчас, то "готово". - - Элементы.ПорядокОбновленияФайл.Видимость = Не ПустаяСтрока(ИмяФайлаПорядокОбновления); - - СоединенияИнфо = СоединенияИБВызовСервера.ИнформацияОСоединениях(Ложь, ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"]); - Элементы.ГруппаСоединений.Видимость = ?(СоединенияИнфо.НаличиеАктивныхСоединений, Истина, Ложь); - - Если СоединенияИнфо.НаличиеАктивныхСоединений Тогда - ВсеСтраницы = Элементы.ПанельАктивныеПользователи.ПодчиненныеЭлементы; - ДоступностьКнопкиДалее = Истина; - Если СоединенияИнфо.НаличиеCOMСоединений Тогда - Элементы.ПанельАктивныеПользователи.ТекущаяСтраница = ВсеСтраницы.АктивныеСоединения; - ИначеЕсли СоединенияИнфо.НаличиеСоединенияКонфигуратором Тогда - Элементы.ПанельАктивныеПользователи.ТекущаяСтраница = ВсеСтраницы.СоединениеКонфигуратора; - Иначе - Элементы.ПанельАктивныеПользователи.ТекущаяСтраница = ВсеСтраницы.АктивныеПользователи; - КонецЕсли; - КонецЕсли; - - Элементы.НадписьРезервнаяКопияФайл.Заголовок = ТекстНадписиРезервнойКопииИБ(); - - Если Не СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЭтоГлавныйУзел Тогда - ДоступностьКнопкиНазад = Ложь; - КонецЕсли; - ИначеЕсли НоваяТекущаяСтраница = Страницы.ВыборРежимаОбновленияСервер Тогда - - Если Объект.КодЗадачиПланировщика = 0 И НЕ ДатаВремяОбновленияУстановлена Тогда - Объект.ДатаВремяОбновления = ВернутьДату(ОбновлениеКонфигурацииКлиентСервер.ДобавитьДни( - НачалоДня(ОбщегоНазначенияКлиент.ДатаСеанса()), 1), Объект.ДатаВремяОбновления); - ДатаВремяОбновленияУстановлена = Истина; - КонецЕсли; - - ФункцияКнопкиДалее = (Объект.РежимОбновления = 0);// Если не обновляем сейчас, то "готово". - Объект.ВосстанавливатьИнформационнуюБазу = Ложь; - - ПараметрыСтраницы = ПараметрыСтраницыВыборРежимаОбновленияСервер(ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"]); // Вызов сервера - - Элементы.ПорядокОбновленияСервер.Видимость = Не ПустаяСтрока(ИмяФайлаПорядокОбновления); - Элементы.НадписьОтложенныеОбработчики.Видимость = ПараметрыСтраницы.ЕстьОтложенныеОбработчики; - - СтраницыПанелиИнформацииПерезагрузки1 = Элементы.СтраницыИнформацииПерезагрузки1.ПодчиненныеЭлементы; - Элементы.СтраницыИнформацииПерезагрузки1.ТекущаяСтраница = ?(Объект.РежимОбновления = 0, - СтраницыПанелиИнформацииПерезагрузки1.СтраницаПерезагрузкиСейчас1, - СтраницыПанелиИнформацииПерезагрузки1.СтраницаЗапланированнойПерезагрузки); - - СоединенияИнфо = ПараметрыСтраницы.ИнформацияОСоединениях; - НаличиеСоединений = СоединенияИнфо.НаличиеАктивныхСоединений И ФункцияКнопкиДалее; - Элементы.ГруппаСоединений1.Видимость = НаличиеСоединений; - Если НаличиеСоединений Тогда - ВсеСтраницы = Элементы.ПанельАктивныеПользователи1.ПодчиненныеЭлементы; - Элементы.ПанельАктивныеПользователи1.ТекущаяСтраница = ? (СоединенияИнфо.НаличиеCOMСоединений, - ВсеСтраницы.АктивныеСоединения1, ВсеСтраницы.АктивныеПользователи1); - КонецЕсли; - - Элементы.ПолеДатаВремяОбновления.Доступность = (Объект.РежимОбновления = 2); - Элементы.АдресЭлектроннойПочты.Доступность = Объект.ВыслатьОтчетНаПочту; - - Если Не СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЭтоГлавныйУзел Тогда - ДоступностьКнопкиНазад = Ложь; - КонецЕсли; - ИначеЕсли НоваяТекущаяСтраница = Страницы.УспешноеОбновление Тогда - - ФункцияКнопкиДалее = Ложь; - ДоступностьКнопкиНазад = Ложь; - ДоступностьКнопкиЗакрыть = Ложь; - - ИначеЕсли НоваяТекущаяСтраница = Страницы.НеуспешноеОбновление Тогда - - ФункцияКнопкиДалее = Ложь; - ДоступностьКнопкиЗакрыть = Ложь; - - ИначеЕсли НоваяТекущаяСтраница = Страницы.ФайлОбновления Тогда - - Если Объект.НуженФайлОбновления = 0 Тогда - Если КонфигурацияИзменена Тогда - Элементы.СтраницыНадписиИзмененнойКонфигурации.ТекущаяСтраница = Элементы.СтраницыНадписиИзмененнойКонфигурации.ПодчиненныеЭлементы.ЕстьИзменения; - Иначе - Элементы.СтраницыНадписиИзмененнойКонфигурации.ТекущаяСтраница = Элементы.СтраницыНадписиИзмененнойКонфигурации.ПодчиненныеЭлементы.НетИзменений; - ДоступностьКнопкиДалее = Ложь; - КонецЕсли; - КонецЕсли; - Элементы.ПанельОбновлениеИзОсновнойКонфигурации.Видимость = Объект.НуженФайлОбновления = 0; - Элементы.ПолеФайлОбновления.Доступность = Объект.НуженФайлОбновления = 1; - Элементы.ПолеФайлОбновления.АвтоОтметкаНезаполненного = Объект.НуженФайлОбновления = 1; - - КонецЕсли; - - Если ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"].Количество() > 0 Тогда - // На страницах с ошибками нужно зафиксировать журнал регистрации. - ЖурналРегистрацииВызовСервера.ЗаписатьСобытияВЖурналРегистрации(ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"]); - КонецЕсли; - - КнопкаДалее = Элементы.КнопкаДалее; - КнопкаНазад = Элементы.КнопкаНазад; - КнопкаЗакрыть = Элементы.КнопкаЗакрыть; - КнопкаНазад.Доступность = ДоступностьКнопкиНазад; - КнопкаДалее.Доступность = ДоступностьКнопкиДалее; - КнопкаЗакрыть.Доступность = ДоступностьКнопкиЗакрыть; - Если ДоступностьКнопкиДалее Тогда - Если НЕ КнопкаДалее.КнопкаПоУмолчанию Тогда - КнопкаДалее.КнопкаПоУмолчанию = Истина; - КонецЕсли; - ИначеЕсли ДоступностьКнопкиЗакрыть Тогда - Если НЕ КнопкаЗакрыть.КнопкаПоУмолчанию Тогда - КнопкаЗакрыть.КнопкаПоУмолчанию = Истина; - КонецЕсли; - КонецЕсли; - - КнопкаДалее.Заголовок = ?(ФункцияКнопкиДалее, НСтр("ru = 'Далее >'"), НСтр("ru = 'Готово'")); - КнопкаЗакрыть.Заголовок = ?(ФункцияКнопкиЗакрыть, НСтр("ru = 'Отмена'"), НСтр("ru = 'Закрыть'")); - - Если НоваяТекущаяСтраница = Страницы.ДлительнаяОперация Тогда - ПодключитьОбработчикОжидания("ВыполнитьПолучениеОбновления", 1, Истина); - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Функция ВосстановитьРезультатыПредыдущегоЗапуска(Отказ = Ложь) - - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - ВосстановлениеРезультатовПредЗапуска = Истина; - ИмяСтраницы = ОбработатьСтраницуДоброПожаловать(Ложь); - Обработано = ИмяСтраницы = Страницы.ДоступноеОбновление.Имя - Или ИмяСтраницы = Страницы.ВыборРежимаОбновленияСервер.Имя - Или ИмяСтраницы = Страницы.ВыборРежимаОбновленияФайл.Имя; - - ВосстановлениеРезультатовПредЗапуска = Ложь; - Если НЕ Обработано Тогда - Отказ = Истина; - Возврат ИмяСтраницы; - КонецЕсли; - - Если ИмяСтраницы = Страницы.ДоступноеОбновление.Имя Тогда - СписокФайловДляПолучения = СоздатьСписокФайловДляПолучения(); - Если ПроверитьФайлыОбновленияПолучены() Тогда - ИмяСобытияЖурнала = ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(); - - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Информация", - НСтр("ru = 'Обнаружено, что файлы обновления конфигурации уже были получены и сохранены локально.'")); - - ПерейтиКВыборуРежимаОбновления(); - Возврат Неопределено; - КонецЕсли; - КонецЕсли; - - Возврат ИмяСтраницы; - -КонецФункции - -&НаКлиенте -Функция ОбработатьСтраницуДоброПожаловать(ВыдаватьСообщения = Истина) - Если Объект.ИсточникОбновления = 0 Тогда - Возврат ПроверитьОбновлениеИнтернет(ВыдаватьСообщения); - ИначеЕсли Объект.ИсточникОбновления = 2 Тогда - Возврат ПроверитьОбновлениеФайл(ВыдаватьСообщения); - КонецЕсли; - Возврат Неопределено; -КонецФункции - -&НаКлиенте -Функция ОбработатьСтраницуПодключениеКИнтернет(ВыдаватьСообщения = Истина) - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - Объект.ТехническаяИнформацияОбОшибке = ""; - Если СписокФайловДляПолучения.Количество() > 0 Тогда - Возврат Страницы.ДлительнаяОперация.Имя; - ИначеЕсли Объект.ДоступныеОбновления.Количество() > 0 Тогда - Возврат Страницы.ДоступноеОбновление.Имя; - КонецЕсли; - - Возврат ?(Объект.ДоступныеОбновления.Количество() = 0, ПроверитьОбновлениеИнтернет(ВыдаватьСообщения), Страницы.ПодключениеКСайту.Имя); -КонецФункции - -&НаКлиенте -Функция ОбработатьСтраницуПодключениеКСайту(ВыдаватьСообщения = Истина) - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - Объект.ТехническаяИнформацияОбОшибке = ""; - Если НЕ ЗначениеЗаполнено(Объект.КодПользователяСервераОбновлений) Тогда - Если ВыдаватьСообщения Тогда - ПоказатьПредупреждение(, НСтр("ru = 'Укажите код пользователя для обновления.'")); - КонецЕсли; - ТекущийЭлемент = Элементы.КодПользователяСервераОбновлений; - Возврат Страницы.ПодключениеКСайту.Имя; - КонецЕсли; - - Если НЕ ЗначениеЗаполнено(Объект.ПарольСервераОбновлений) Тогда - Если ВыдаватьСообщения Тогда - ПоказатьПредупреждение(, НСтр("ru = 'Укажите пароль пользователя для обновления.'")); - КонецЕсли; - ТекущийЭлемент = Элементы.ПарольСервераОбновлений; - Возврат Страницы.ПодключениеКСайту.Имя; - КонецЕсли; - - Если СписокФайловДляПолучения.Количество() > 0 Тогда - Возврат Страницы.ДлительнаяОперация.Имя; - ИначеЕсли Объект.ДоступныеОбновления.Количество() > 0 Тогда - Возврат Страницы.ДоступноеОбновление.Имя; - КонецЕсли; - - Возврат ПроверитьОбновлениеИнтернет(ВыдаватьСообщения); -КонецФункции - -&НаКлиенте -Функция ОбработатьСтраницуДлительнаяОперация(ВыдаватьСообщения = Истина) - Возврат РезультатПолученияФайлов; -КонецФункции - -&НаКлиенте -Функция ОбработатьСтраницуВыборРежимаОбновления(ВыдаватьСообщения = Истина, ФлагЗавершенияРаботы = Ложь) - ТекущаяСтраница = Элементы.СтраницыПомощника.ТекущаяСтраница; - - ИнформационнаяБазаФайловая = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ИнформационнаяБазаФайловая; - ВыполнитьОбновление = Ложь; - - Если ИнформационнаяБазаФайловая И НЕ РежимИмитацииКлиентСервернойИБ() И Объект.СоздаватьРезервнуюКопию = 2 Тогда - - Файл = Новый Файл(Объект.ИмяКаталогаРезервнойКопииИБ); - Если Не Файл.Существует() Или Не Файл.ЭтоКаталог() Тогда - ПоказатьПредупреждение(, НСтр("ru = 'Укажите существующий каталог для сохранения резервной копии ИБ.'")); - Возврат ТекущаяСтраница.Имя; - КонецЕсли; - - КонецЕсли; - - Если Объект.РежимОбновления = 0 Тогда // Обновить сейчас - Если ИнформационнаяБазаФайловая И НЕ РежимИмитацииКлиентСервернойИБ() Тогда - НаличиеСоединений = НаличиеАктивныхСоединений(ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"]); - Если НаличиеСоединений Тогда - ПоказатьПредупреждение(, НСтр("ru = 'Невозможно продолжить обновление конфигурации, так как не завершены все соединения с информационной базой.'")); - Возврат ТекущаяСтраница.Имя; - КонецЕсли; - КонецЕсли; - ВыполнитьОбновление = Истина; - ФлагЗавершенияРаботы = Истина; - Возврат ТекущаяСтраница.Имя; - ИначеЕсли Объект.РежимОбновления = 1 Тогда // При завершении работы - - ИначеЕсли Объект.РежимОбновления = 2 Тогда // Запланировать обновление - Если НЕ ПроверитьДопустимуюДатуОбновления(Объект.ДатаВремяОбновления, ВыдаватьСообщения) Тогда - ТекущийЭлемент = Элементы.ПолеДатаВремяОбновления; - Возврат ТекущаяСтраница.Имя; - КонецЕсли; - Если Объект.ВыслатьОтчетНаПочту Тогда - ИмяНовойСтраницы = ПроверитьНастройкиЭлектроннойПочты(ТекущаяСтраница.Имя, ВыдаватьСообщения); - Если НЕ ПустаяСтрока(ИмяНовойСтраницы) Тогда - Возврат ИмяНовойСтраницы; - КонецЕсли; - КонецЕсли; - - Если Не ВозможноЗапланироватьОбновление(ВыдаватьСообщения) Тогда - Возврат ТекущаяСтраница.Имя; - КонецЕсли; - - Если НЕ ЗапланироватьОбновлениеКонфигурации() Тогда - ПоказатьПредупреждение(, НСтр("ru = 'Невозможно запланировать обновление конфигурации. Сведения об ошибке сохранены в журнал регистрации.'")); - Возврат ТекущаяСтраница.Имя; - КонецЕсли; - - Иначе - Возврат ТекущаяСтраница.Имя; - КонецЕсли; - - ИмяПараметра = "СтандартныеПодсистемы.ПредлагатьОбновлениеИнформационнойБазыПриЗавершенииСеанса"; - Если ПараметрыПриложения[ИмяПараметра] = Неопределено Тогда - ПараметрыПриложения.Вставить(ИмяПараметра, Неопределено); - КонецЕсли; - ПараметрыПриложения[ИмяПараметра] = Объект.РежимОбновления = 1; - - Сообщение = НСтр("ru = 'Выбран режим обновления:'") + " "; - Если Объект.РежимОбновления = 0 Тогда // Обновить сейчас - Сообщение = Сообщение + НСтр("ru = 'сейчас'"); - ИначеЕсли Объект.РежимОбновления = 1 Тогда // при завершении работы - Сообщение = Сообщение + НСтр("ru = 'при завершении работы'"); - ИначеЕсли Объект.РежимОбновления = 2 Тогда // Запланировать обновление - Сообщение = Сообщение + НСтр("ru = 'запланировать'"); - КонецЕсли; - Сообщение = Сообщение + "."; - ИмяСобытияЖурнала = ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, - "Информация", Сообщение); - - Закрыть(); - Возврат ТекущаяСтраница.Имя; - -КонецФункции - -&НаКлиенте -Процедура ОбработатьНажатиеКнопкиДалее(ФлагЗавершенияРаботы = Ложь) - ОчиститьСообщения(); - ТекущаяСтраница = Элементы.СтраницыПомощника.ТекущаяСтраница; - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - НоваяТекущаяСтраница = ТекущаяСтраница; - КнопкаДалее = Элементы.КнопкаДалее; - КнопкаНазад = Элементы.КнопкаНазад; - КнопкаЗакрыть = Элементы.КнопкаЗакрыть; - - ТекущаяСтраница.Доступность = Ложь; - КнопкаДалее.Доступность = Ложь; - КнопкаНазад.Доступность = Ложь; - КнопкаЗакрыть.Доступность = Ложь; - - Если ТекущаяСтраница = Страницы.ДоброПожаловать Тогда - НоваяСтраница = ОбработатьСтраницуДоброПожаловать(); - Если НоваяСтраница = Неопределено Тогда - Возврат; - Иначе - НоваяТекущаяСтраница = Страницы[НоваяСтраница]; - КонецЕсли; - ИначеЕсли ТекущаяСтраница = Страницы.ПодключениеКИнтернет Тогда - НоваяТекущаяСтраница = Страницы[ОбработатьСтраницуПодключениеКИнтернет()]; - ИначеЕсли ТекущаяСтраница = Страницы.ПодключениеКСайту Тогда - НоваяТекущаяСтраница = Страницы[ОбработатьСтраницуПодключениеКСайту()]; - ИначеЕсли ТекущаяСтраница = Страницы.ДоступноеОбновление Тогда - НоваяСтраница = ОбработатьСтраницуДоступноеОбновление(); - Если НоваяСтраница = Неопределено Тогда - Возврат; - Иначе - НоваяТекущаяСтраница = Страницы[НоваяСтраница]; - КонецЕсли; - ИначеЕсли ТекущаяСтраница = Страницы.ОбновленияНеОбнаружено Тогда - НоваяТекущаяСтраница = Страницы[ОбработатьСтраницуОбновленияНеОбнаружено()]; - ИначеЕсли ТекущаяСтраница = Страницы.ДлительнаяОперация Тогда - НоваяТекущаяСтраница = Страницы[ОбработатьСтраницуДлительнаяОперация()]; - ИначеЕсли ТекущаяСтраница = Страницы.ВыборРежимаОбновленияФайл - Или ТекущаяСтраница = Страницы.ВыборРежимаОбновленияСервер Тогда - НоваяТекущаяСтраница = Страницы[ОбработатьСтраницуВыборРежимаОбновления(, ФлагЗавершенияРаботы)]; - ИначеЕсли ТекущаяСтраница = Страницы.УспешноеОбновление Тогда - НоваяТекущаяСтраница = Страницы[ОбработатьСтраницуУспешноеОбновление()]; - ИначеЕсли ТекущаяСтраница = Страницы.НеуспешноеОбновление Тогда - НоваяТекущаяСтраница = Страницы[ОбработатьСтраницуНеуспешноеОбновление()]; - ИначеЕсли ТекущаяСтраница = Страницы.ФайлОбновления Тогда - НоваяСтраница = ОбработатьСтраницуФайлОбновления(); - Если НоваяСтраница = Неопределено Тогда - Возврат; - Иначе - НоваяТекущаяСтраница = Страницы[НоваяСтраница]; - КонецЕсли; - КонецЕсли; - - Отказ = Ложь; - - ПриПереходеНаСтраницуПомощника(ТекущаяСтраница.Имя, НоваяТекущаяСтраница.Имя, Отказ); - - ТекущаяСтраница.Доступность = Истина; - - // Проверим, что есть доступ к возможности обновления конфигурации. - Если Не СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().НастройкиОбновления.ЕстьДоступДляОбновления - И (НоваяТекущаяСтраница = Страницы.ПодключениеКСайту - Или НоваяТекущаяСтраница = Страницы.ДлительнаяОперация - Или НоваяТекущаяСтраница = Страницы.ВыборРежимаОбновленияФайл - Или НоваяТекущаяСтраница = Страницы.ВыборРежимаОбновленияСервер - Или НоваяТекущаяСтраница = Страницы.ФайлОбновления) Тогда - - Отказ = Истина; - КнопкаНазад.Доступность = Истина; - КнопкаДалее.Доступность = Истина; - КнопкаЗакрыть.Доступность = Истина; - ПоказатьПредупреждение(, НСтр("ru = 'Недостаточно прав для выполнения обновления конфигурации.'")); - КонецЕсли; - - Если Отказ Тогда - ОтработатьНажатиеКнопкиНазад(); - Иначе - ПередОткрытиемСтраницы(НоваяТекущаяСтраница); - Элементы.СтраницыПомощника.ТекущаяСтраница = НоваяТекущаяСтраница; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ОтработатьНажатиеКнопкиНазад() - - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - ТекущаяСтраница = Элементы.СтраницыПомощника.ТекущаяСтраница; - НоваяТекущаяСтраница = ТекущаяСтраница; - - Если ТекущаяСтраница = Страницы.ДоброПожаловать Тогда - НоваяТекущаяСтраница = Страницы.ДоброПожаловать; - ИначеЕсли ТекущаяСтраница = Страницы.ПодключениеКИнтернет Тогда - НоваяТекущаяСтраница = Страницы.ДоброПожаловать; - ИначеЕсли ТекущаяСтраница = Страницы.ПодключениеКСайту Тогда - НоваяТекущаяСтраница = Страницы.ДоступноеОбновление; - ИначеЕсли ТекущаяСтраница = Страницы.ДоступноеОбновление Тогда - НоваяТекущаяСтраница = Страницы.ДоброПожаловать; - ИначеЕсли ТекущаяСтраница = Страницы.ОбновленияНеОбнаружено Тогда - НоваяТекущаяСтраница = Страницы.ДоброПожаловать; - ИначеЕсли ТекущаяСтраница = Страницы.ДлительнаяОперация Тогда - НоваяТекущаяСтраница = Страницы.ДоброПожаловать; - ИначеЕсли ТекущаяСтраница = Страницы.ВыборРежимаОбновленияФайл - Или ТекущаяСтраница = Страницы.ВыборРежимаОбновленияСервер Тогда - Если Объект.ИсточникОбновления = 0 Тогда // Интернет - НоваяТекущаяСтраница = Страницы.ДоступноеОбновление; - Иначе // файл - НоваяТекущаяСтраница = Страницы.ФайлОбновления; - КонецЕсли; - ИначеЕсли ТекущаяСтраница = Страницы.УспешноеОбновление Тогда - НоваяТекущаяСтраница = Страницы.ДоброПожаловать; - ИначеЕсли ТекущаяСтраница = Страницы.НеуспешноеОбновление Тогда - НоваяТекущаяСтраница = Страницы.ДоброПожаловать; - Если Не СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЭтоГлавныйУзел Тогда - ПерейтиКВыборуРежимаОбновления(); - Возврат; - КонецЕсли; - ИначеЕсли ТекущаяСтраница = Страницы.ФайлОбновления Тогда - НоваяТекущаяСтраница = Страницы.ДоброПожаловать; - ИначеЕсли ТекущаяСтраница = Страницы.ДоступноеОбновление Тогда - НоваяТекущаяСтраница = Страницы.ДоброПожаловать; - КонецЕсли; - - ПередОткрытиемСтраницы(НоваяТекущаяСтраница); - - Элементы.СтраницыПомощника.ТекущаяСтраница = НоваяТекущаяСтраница; - -КонецПроцедуры - -&НаКлиенте -Процедура ПриПереходеНаСтраницуПомощника(ПредыдущаяСтраница, СледующаяСтраница, Отказ) - - Если ПредыдущаяСтраница = "ФайлОбновления" И СледующаяСтраница <> "ФайлОбновления" Тогда - - Оповещение = Новый ОписаниеОповещения("ПриПереходеНаСтраницуПомощникаЗавершение", ЭтотОбъект); - ОбновлениеКонфигурацииКлиент.ПроверитьЛегальностьПолученияОбновления(Оповещение); - - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ПоказатьАктивныхПользователей() - - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("ОповещатьОЗакрытии", Истина); - СтандартныеПодсистемыКлиент.ОткрытьСписокАктивныхПользователей(ПараметрыФормы, ЭтотОбъект); - -КонецПроцедуры - -&НаКлиенте -Процедура ПриПереходеНаСтраницуПомощникаЗавершение(ОбновлениеПолученоЛегально, ДополнительныеПараметры) Экспорт - - Если ОбновлениеПолученоЛегально = Ложь - Или ОбновлениеПолученоЛегально = Неопределено Тогда - ОтработатьНажатиеКнопкиНазад(); - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Функция ОбработатьСтраницуДоступноеОбновление(ВыдаватьСообщения = Истина) - - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - Объект.ТехническаяИнформацияОбОшибке = ""; - - Если Не СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().НастройкиОбновления.ЕстьДоступДляОбновления Тогда - ПоказатьПредупреждение(, НСтр("ru = 'Недостаточно прав для выполнения обновления конфигурации.'")); - Возврат Страницы.ДоступноеОбновление.Имя; - КонецЕсли; - - Если СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ИнформационнаяБазаФайловая И УстановленыРасширения Тогда - ПоказатьПредупреждение(, НСтр("ru = 'Перед обновлением необходимо удалить все подключенные расширения конфигурации. - |После завершения обновления их нужно подключить заново.'")); - Возврат Страницы.ДоступноеОбновление.Имя; - КонецЕсли; - - СписокФайловДляПолучения.ЗагрузитьЗначения(СоздатьСписокФайловДляПолучения()); - Если ПроверитьФайлыОбновленияПолучены() Тогда - ИмяСобытияЖурнала = ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Информация", - НСтр("ru = 'Обнаружено, что файлы обновления конфигурации уже были получены и сохранены локально.'")); - ПерейтиКВыборуРежимаОбновления(Истина); - Возврат Неопределено; - КонецЕсли; - - Возврат Страницы.ДлительнаяОперация.Имя; - -КонецФункции - -&НаКлиенте -Функция ОбработатьСтраницуОбновленияНеОбнаружено(ВыдаватьСообщения = Истина) - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - Закрыть(); - Возврат Страницы.ОбновленияНеОбнаружено.Имя; -КонецФункции - -&НаКлиенте -Функция ОбработатьСтраницуУспешноеОбновление(ВыдаватьСообщения = Истина) - - Закрыть(); - Возврат Элементы.УспешноеОбновление.Имя; - -КонецФункции - -&НаКлиенте -Функция ОбработатьСтраницуНеуспешноеОбновление(ВыдаватьСообщения = Истина) - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - Закрыть(); - Возврат Страницы.НеуспешноеОбновление.Имя; -КонецФункции - -&НаКлиенте -Функция ОбработатьСтраницуФайлОбновления(ВыдаватьСообщения = Истина) - - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - Если Объект.НуженФайлОбновления = 1 Тогда - - Если НЕ ЗначениеЗаполнено(Объект.ИмяФайлаОбновления) Тогда - Если ВыдаватьСообщения Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Укажите файл поставки обновления конфигурации.'"),,"Объект.ИмяФайлаОбновления"); - КонецЕсли; - ТекущийЭлемент = Элементы.ПолеФайлОбновления; - Возврат Страницы.ФайлОбновления.Имя; - КонецЕсли; - - Файл = Новый Файл(Объект.ИмяФайлаОбновления); - Если НЕ Файл.Существует() ИЛИ НЕ Файл.ЭтоФайл() Тогда - Если ВыдаватьСообщения Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Файл поставки обновления конфигурации не найден.'"),,"Объект.ИмяФайлаОбновления"); - КонецЕсли; - ТекущийЭлемент = Элементы.ПолеФайлОбновления; - Возврат Страницы.ФайлОбновления.Имя; - КонецЕсли; - - КонецЕсли; - - КаталогФайловОбновления = ОбновлениеКонфигурацииКлиент.ПолучитьПараметрыОбновления().КаталогФайловОбновления; - Если НЕ ПустаяСтрока(КаталогФайловОбновления) Тогда - Попытка - УдалитьФайлы(КаталогФайловОбновления, "*"); - Исключение - // Игнорируем неудачную попытку удаления временного каталога. - КонецПопытки; - КонецЕсли; - ПолучитьДоступноеОбновлениеИзФайла(?(Объект.НуженФайлОбновления = 1, Объект.ИмяФайлаОбновления, Неопределено),Истина); - ПерейтиКВыборуРежимаОбновления(Истина); - Возврат Неопределено; - -КонецФункции - -&НаКлиенте -Функция ПроверитьФайлыОбновленияПолучены() - - ФайлыПолученыУспешно = Истина; - Для Каждого Файл Из СписокФайловДляПолучения Цикл - Если Файл.Значение.Обязательный И НЕ Файл.Значение.Получен Тогда - ФайлыПолученыУспешно = Ложь; - Прервать; - КонецЕсли; - КонецЦикла; - - Если ФайлыПолученыУспешно Тогда - ФайлыПолученыУспешно = РаспаковатьДистрибутивОбновления(); - КонецЕсли; - - Возврат ФайлыПолученыУспешно; - -КонецФункции - -&НаКлиенте -Функция ПолучитьСтруктуруДоступногоОбновления(ПолучатьРазмерОбновления = Ложь) - - Если Объект.ДоступныеОбновления.Количество() = 0 Тогда - Возврат Неопределено; - КонецЕсли; - - СтрокаОбновления = Объект.ДоступныеОбновления[Объект.ДоступныеОбновления.Количество()-1]; - - СтруктураОбновления = Новый Структура; - СтруктураОбновления.Вставить("Версия", СтрокаОбновления.Версия); - СтруктураОбновления.Вставить("ВерсияПлатформы", СтрокаОбновления.ВерсияПлатформы); - - Если ПолучатьРазмерОбновления = Истина Тогда - СтруктураОбновления.Вставить("РазмерОбновления", СтрокаРазмераФайла(РазмерОбновлений())); - КонецЕсли; - - Возврат СтруктураОбновления; - -КонецФункции - -// Рассчитать суммарный размер файлов обновлений. -// -// Параметры: -// Объект.ДоступныеОбновления - массив - список обновлений. -// -// Возвращаемое значение: -// число - размер обновлений в байтах. -&НаКлиенте -Функция РазмерОбновлений() - РазмерОбновлений = 0; - Для Каждого Обновление Из Объект.ДоступныеОбновления Цикл - РазмерОбновлений = РазмерОбновлений + Обновление.РазмерФайлаОбновления; - КонецЦикла; - Возврат РазмерОбновлений; -КонецФункции - -// Получить строковое представление размера файла. -// -// Параметры: -// Размер - Число - размер в байтах. -// -// Возвращаемое значение: -// Строка - строковое представление размера файла, например, "10,5 Мб". -&НаКлиенте -Функция СтрокаРазмераФайла(Знач Размер) - - Если Размер < 1024 Тогда - Возврат Формат(Размер, "ЧДЦ=1") + " " + "байт"; - ИначеЕсли Размер < 1024 * 1024 Тогда - Возврат Формат(Размер / 1024, "ЧДЦ=1") + " " + "КБ"; - ИначеЕсли Размер < 1024 * 1024 * 1024 Тогда - Возврат Формат(Размер / (1024 * 1024), "ЧДЦ=1") + " " + "МБ"; - Иначе - Возврат Формат(Размер / (1024 * 1024 * 1024), "ЧДЦ=1") + " " + "ГБ"; - КонецЕсли; - -КонецФункции - -// Определение каталога шаблонов конфигураций и обновлений на данном компьютере. -&НаКлиенте -Функция КаталогШаблонов() - - Постфикс = "1C\1Cv8\tmplts\"; - - КаталогПоУмолчанию = КаталогAppData() + Постфикс; - ИмяФайла = КаталогAppData() + "1C\1CEStart\1CEStart.cfg"; - Если Не ФайлСуществуетНаКлиенте(ИмяФайла) Тогда - Возврат КаталогПоУмолчанию; - КонецЕсли; - Текст = Новый ЧтениеТекста(ИмяФайла, КодировкаТекста.UTF16); - Стр = ""; - Пока Стр <> Неопределено Цикл - Стр = Текст.ПрочитатьСтроку(); - Если Стр = Неопределено Тогда - Прервать; - КонецЕсли; - Если СтрНайти(ВРег(Стр), ВРег("ConfigurationTemplatesLocation")) = 0 Тогда - Продолжить; - КонецЕсли; - ПозицияРазделителя = СтрНайти(Стр, "="); - Если ПозицияРазделителя = 0 Тогда - Продолжить; - КонецЕсли; - НайденныйКаталог = ОбновлениеКонфигурацииКлиентСервер.ДобавитьКонечныйРазделительПути(СокрЛП(Сред(Стр, ПозицияРазделителя + 1))); - Возврат ?(ФайлСуществуетНаКлиенте(НайденныйКаталог), НайденныйКаталог, КаталогПоУмолчанию); - КонецЦикла; - - Возврат КаталогПоУмолчанию; - -КонецФункции - -// Определение каталога "Мои документы" текущего пользователя Windows. -// -&НаКлиенте -Функция КаталогAppData() - - App = Новый COMОбъект("Shell.Application"); - Folder = App.Namespace(26); - Результат = Folder.Self.Path; - Возврат ОбновлениеКонфигурацииКлиентСервер.ДобавитьКонечныйРазделительПути(Результат); - -КонецФункции - -// Проверка, что файл является дистрибутивом обновления. -// -// Параметр: -// ПутьКФайлу - Строка - путь к файлу. -// -// Возвращаемое значение: -// Булево - Истина, если файл является дистрибутивом обновления. -// -&НаКлиенте -Функция ЭтоДистрибутивОбновления(Знач ПутьКФайлу) - Файл = Новый Файл(ПутьКФайлу); - Возврат Файл.Существует() И НРег(Файл.Расширение) = ".zip"; -КонецФункции - -&НаКлиенте -Процедура ПерейтиКВыборуРежимаОбновления(ЭтоПереходДалее = Ложь) - - Если ПараметрыАдминистрирования = Неопределено Тогда - - ЭтоФайловаяБаза = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ИнформационнаяБазаФайловая; - - ОписаниеОповещения = Новый ОписаниеОповещения("ПослеПолученияПараметровАдминистрирования", ЭтотОбъект, ЭтоПереходДалее); - ЗаголовокФормы = НСтр("ru = 'Установка обновления'"); - Если ЭтоФайловаяБаза Тогда - ПоясняющаяНадпись = НСтр("ru = 'Для установки обновления необходимо ввести - |параметры администрирования информационной базы'"); - ЗапрашиватьПараметрыАдминистрированияКластера = Ложь; - Иначе - ПоясняющаяНадпись = НСтр("ru = 'Для установки обновления необходимо ввести параметры - |администрирования кластера серверов и информационной базы'"); - ЗапрашиватьПараметрыАдминистрированияКластера = Истина; - КонецЕсли; - - СоединенияИБКлиент.ПоказатьПараметрыАдминистрирования(ОписаниеОповещения, Истина, ЗапрашиватьПараметрыАдминистрированияКластера, - ПараметрыАдминистрирования, ЗаголовокФормы, ПоясняющаяНадпись); - - Иначе - - ПослеПолученияПараметровАдминистрирования(ПараметрыАдминистрирования, ЭтоПереходДалее); - - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ПослеПолученияПараметровАдминистрирования(Результат, ЭтоПереходДалее) Экспорт - - Если Результат <> Неопределено Тогда - - ПараметрыАдминистрирования = Результат; - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - ЭтоФайловаяБаза = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ИнформационнаяБазаФайловая; - НоваяТекущаяСтраница = ?(ЭтоФайловаяБаза И Не РежимИмитацииКлиентСервернойИБ(), Страницы.ВыборРежимаОбновленияФайл, Страницы.ВыборРежимаОбновленияСервер); - УстановитьПарольАдминистратора(ПараметрыАдминистрирования); - - Если ЭтоПереходДалее Тогда - - Элементы.СтраницыПомощника.ТекущаяСтраница.Доступность = Истина; - - // Проверим, что есть доступ к возможности обновления конфигурации. - Если НЕ СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().НастройкиОбновления.ЕстьДоступДляОбновления Тогда - - Элементы.КнопкаНазад.Доступность = Истина; - Элементы.КнопкаДалее.Доступность = Истина; - Элементы.КнопкаЗакрыть.Доступность = Истина; - ПоказатьПредупреждение(, НСтр("ru = 'Недостаточно прав для выполнения обновления конфигурации.'")); - ОтработатьНажатиеКнопкиНазад(); - КонецЕсли; - - КонецЕсли; - - ПередОткрытиемСтраницы(НоваяТекущаяСтраница); - Элементы.СтраницыПомощника.ТекущаяСтраница = НоваяТекущаяСтраница; - - Иначе - - Если ЭтоПереходДалее Тогда - - Элементы.СтраницыПомощника.ТекущаяСтраница.Доступность = Истина; - - КонецЕсли; - - ТекстПредупреждения = НСтр("ru = 'Для установки обновления необходимо ввести параметры администрирования.'"); - ПоказатьПредупреждение(, ТекстПредупреждения); - - ИмяСобытияЖурнала = ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(); - ТекстСообщения = НСтр("ru = 'Не удалось установить обновление программы, т.к. не были введены - |корректные параметры администрирования информационной базы.'"); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Ошибка", ТекстСообщения); - - НоваяТекущаяСтраница = Элементы.НеуспешноеОбновление; - ПередОткрытиемСтраницы(НоваяТекущаяСтраница); - Элементы.СтраницыПомощника.ТекущаяСтраница = НоваяТекущаяСтраница; - - КонецЕсли; - -КонецПроцедуры - -&НаСервере -Процедура УстановитьПарольАдминистратора(ПараметрыАдминистрирования) - - АдминистраторИБ = ПользователиИнформационнойБазы.НайтиПоИмени(ПараметрыАдминистрирования.ИмяАдминистратораИнформационнойБазы); - - Если Не АдминистраторИБ.АутентификацияСтандартная Тогда - - АдминистраторИБ.АутентификацияСтандартная = Истина; - АдминистраторИБ.Пароль = ПараметрыАдминистрирования.ПарольАдминистратораИнформационнойБазы; - АдминистраторИБ.Записать(); - - КонецЕсли; - -КонецПроцедуры - -// Получение параметров аутентификации пользователя для обновления. -// Создает виртуального пользователя, если в этом есть необходимость. -// -// Возвращаемое значение -// Структура - параметры виртуального пользователя. -// -&НаКлиенте -Функция ПолучитьПараметрыАутентификацииАдминистратораОбновления() - - Результат = Новый Структура("СтрокаПодключения, СтрокаСоединенияИнформационнойБазы"); - - ПортКластера = ПараметрыАдминистрирования.ПортКластера; - ТекущиеСоединения = СоединенияИБВызовСервера.ИнформацияОСоединениях(Истина, - ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"], ПортКластера); - - Результат.СтрокаСоединенияИнформационнойБазы = ТекущиеСоединения.СтрокаСоединенияИнформационнойБазы; - Результат.СтрокаПодключения = "Usr=""{0}"";Pwd=""{1}"""; - - Возврат Результат; - -КонецФункции - -&НаКлиенте -Функция СтрокаUnicode(Строка) - - Результат = ""; - - Для НомерСимвола = 1 По СтрДлина(Строка) Цикл - - Символ = Формат(КодСимвола(Сред(Строка, НомерСимвола, 1)), "ЧГ=0"); - Символ = СтроковыеФункцииКлиентСервер.ДополнитьСтроку(Символ, 4); - Результат = Результат + Символ; - - КонецЦикла; - - Возврат Результат; - -КонецФункции - -&НаКлиенте -Функция ПроверитьНастройкиЭлектроннойПочты(ИмяТекущейСтраницы, ВыдаватьСообщения = Истина) - Если Не ОбщегоНазначенияКлиентСервер.АдресЭлектроннойПочтыСоответствуетТребованиям(Объект.АдресЭлектроннойПочты) Тогда - Если ВыдаватьСообщения Тогда - ПоказатьПредупреждение(, НСтр("ru = 'Укажите допустимый адрес электронной почты.'")); - КонецЕсли; - ТекущийЭлемент = Элементы.АдресЭлектроннойПочты; - Возврат ИмяТекущейСтраницы; - КонецЕсли; - Возврат ""; -КонецФункции - -&НаКлиенте -Функция ОпределитьИмяСкрипта() - App = Новый COMОбъект("Shell.Application"); - Попытка - Folder = App.Namespace(41); - Возврат Folder.Self.Path + "\wscript.exe"; - Исключение - Возврат "wscript.exe"; - КонецПопытки; -КонецФункции - -&НаСервере -Функция ПараметрыПроверкиЛегальности() - - ПараметрыПроверки = Новый Структура; - - СистемнаяИнформация = Новый СистемнаяИнформация; - ИдентификаторИнформационнойБазы = СтандартныеПодсистемыСервер.ИдентификаторИнформационнойБазы(); - - ПараметрыПроверки.Вставить("login" , Объект.КодПользователяСервераОбновлений); - ПараметрыПроверки.Вставить("password" , Объект.ПарольСервераОбновлений); - ПараметрыПроверки.Вставить("variantBPED" , "authorizationChecking"); - ПараметрыПроверки.Вставить("versionConfiguration", СокрЛП(Метаданные.Версия)); - ПараметрыПроверки.Вставить("versionPlatform" , Строка(СистемнаяИнформация.ВерсияПриложения)); - ПараметрыПроверки.Вставить("nameConfiguration" , Метаданные.Имя); - ПараметрыПроверки.Вставить("language" , СокрЛП(ТекущийКодЛокализации())); - ПараметрыПроверки.Вставить("enterPoint" , "authorizationChecking"); - ПараметрыПроверки.Вставить("InfoBaseID" , ИдентификаторИнформационнойБазы); - - Возврат ПараметрыПроверки; - -КонецФункции - -&НаКлиенте -Функция СформироватьФайлыСкриптаОбновления(Знач ИнтерактивныйРежим) - ПараметрыОбновления = ОбновлениеКонфигурацииКлиент.ПолучитьПараметрыОбновления(); - ПараметрыРаботыКлиента = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента(); - СоздатьКаталог(ПараметрыОбновления.КаталогВременныхФайловОбновления); - - // Структура параметров необходима для их определения на клиенте и передачи на сервер. - СтруктураПараметров = Новый Структура; - СтруктураПараметров.Вставить("ИмяИсполняемогоФайлаКонфигуратора", ПараметрыОбновления.ИмяИсполняемогоФайлаКонфигуратора); - СтруктураПараметров.Вставить("ИмяИсполняемогоФайлаКлиента" , СтандартныеПодсистемыКлиент.ИмяИсполняемогоФайлаПриложения()); - СтруктураПараметров.Вставить("СобытиеЖурналаРегистрации" , ПараметрыОбновления.СобытиеЖурналаРегистрации); - СтруктураПараметров.Вставить("ИмяCOMСоединителя" , ПараметрыРаботыКлиента.ИмяCOMСоединителя); - СтруктураПараметров.Вставить("ИспользоватьCOMСоединитель" , ПараметрыРаботыКлиента.ЭтоБазоваяВерсияКонфигурации Или ПараметрыРаботыКлиента.ЭтоУчебнаяПлатформа); - СтруктураПараметров.Вставить("ИнформационнаяБазаФайловая" , ПараметрыРаботыКлиента.ИнформационнаяБазаФайловая); - СтруктураПараметров.Вставить("ПараметрыСкрипта" , ПолучитьПараметрыАутентификацииАдминистратораОбновления()); - СтруктураПараметров.Вставить("ПараметрыАдминистрирования" , ПараметрыАдминистрирования); - - // Добавим в структуру и имя запускаемой программы. - - #Если Не ВебКлиент Тогда - СтруктураПараметров.Вставить("КаталогПрограммы" , КаталогПрограммы()); - #Иначе - СтруктураПараметров.Вставить("КаталогПрограммы" , ""); - #КонецЕсли - - ИменаМакетов = "ДопФайлОбновленияКонфигурации"; - Если ИнтерактивныйРежим Тогда - ИменаМакетов = ИменаМакетов + ",ЗаставкаОбновленияКонфигурации"; - Иначе - ИменаМакетов = ИменаМакетов + ",НеинтерактивноеОбновлениеКонфигурации"; - КонецЕсли; - ТекстыМакетов = ПолучитьТекстыМакетов(ИменаМакетов, СтруктураПараметров, ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"]); - - ФайлСкрипта = Новый ТекстовыйДокумент; - ФайлСкрипта.Вывод = ИспользованиеВывода.Разрешить; - ФайлСкрипта.УстановитьТекст(ТекстыМакетов[0]); - - ИмяФайлаСкрипта = ПараметрыОбновления.КаталогВременныхФайловОбновления + "main.js"; - ФайлСкрипта.Записать(ИмяФайлаСкрипта, КодировкаТекста.UTF16); - - // Вспомогательный файл: helpers.js. - ФайлСкрипта = Новый ТекстовыйДокумент; - ФайлСкрипта.Вывод = ИспользованиеВывода.Разрешить; - ФайлСкрипта.УстановитьТекст(ТекстыМакетов[1]); - ФайлСкрипта.Записать(ПараметрыОбновления.КаталогВременныхФайловОбновления + "helpers.js", КодировкаТекста.UTF16); - - ИмяГлавногоФайлаСкрипта = Неопределено; - Если ИнтерактивныйРежим Тогда - // Вспомогательный файл: splash.png. - БиблиотекаКартинок.ЗаставкаВнешнейОперации.Записать(ПараметрыОбновления.КаталогВременныхФайловОбновления + "splash.png"); - // Вспомогательный файл: splash.ico. - БиблиотекаКартинок.ЗначокЗаставкиВнешнейОперации.Записать(ПараметрыОбновления.КаталогВременныхФайловОбновления + "splash.ico"); - // Вспомогательный файл: progress.gif. - БиблиотекаКартинок.ДлительнаяОперация48.Записать(ПараметрыОбновления.КаталогВременныхФайловОбновления + "progress.gif"); - // Главный файл заставки: splash.hta. - ИмяГлавногоФайлаСкрипта = ПараметрыОбновления.КаталогВременныхФайловОбновления + "splash.hta"; - ФайлСкрипта = Новый ТекстовыйДокумент; - ФайлСкрипта.Вывод = ИспользованиеВывода.Разрешить; - ФайлСкрипта.УстановитьТекст(ТекстыМакетов[2]); - ФайлСкрипта.Записать(ИмяГлавногоФайлаСкрипта, КодировкаТекста.UTF16); - Иначе - ИмяГлавногоФайлаСкрипта = ПараметрыОбновления.КаталогВременныхФайловОбновления + "updater.js"; - ФайлСкрипта = Новый ТекстовыйДокумент; - ФайлСкрипта.Вывод = ИспользованиеВывода.Разрешить; - ФайлСкрипта.УстановитьТекст(ТекстыМакетов[2]); - ФайлСкрипта.Записать(ИмяГлавногоФайлаСкрипта, КодировкаТекста.UTF16); - КонецЕсли; - - Возврат ИмяГлавногоФайлаСкрипта; -КонецФункции - -&НаКлиенте -Функция ПроверитьДопустимуюДатуОбновления(ДатаВремя, ВыдаватьСообщения = Истина) - ТекстСообщения = ПроверитьДопустимуюДатуОбновленияНаСервере(ДатаВремя); - Результат = ПустаяСтрока(ТекстСообщения); - Если Не Результат И ВыдаватьСообщения Тогда - ПоказатьПредупреждение(, ТекстСообщения); - КонецЕсли; - Возврат Результат; -КонецФункции - -&НаСервереБезКонтекста -Функция ПроверитьДопустимуюДатуОбновленияНаСервере(ДатаВремя) - - Сейчас = ТекущаяДатаСеанса(); - Если ДатаВремя < Сейчас Тогда - Возврат НСтр("ru = 'Обновление конфигурации может быть запланировано только на будущую дату и время.'"); - КонецЕсли; - Если ДатаВремя > ДобавитьМесяц(Сейчас, 1) Тогда - Возврат НСтр("ru = 'Обновление конфигурации может быть запланировано не позднее, чем через месяц относительно текущей даты.'"); - КонецЕсли; - - Возврат ""; - -КонецФункции - -&НаКлиенте -Функция СоздатьСписокФайловДляПолучения() - - СписокФайлов = Новый Массив; - ПараметрыОбновления = ОбновлениеКонфигурацииКлиент.ПолучитьПараметрыОбновления(); - КаталогОбновленияВИсточнике = ПараметрыОбновления.АдресКаталогаШаблоновНаСервереОбновлений; - - Для Каждого Обновление Из Объект.ДоступныеОбновления Цикл - Если Не ПустаяСтрока(Обновление.ПутьКФайлуОбновления) И ПустаяСтрока(Обновление.ПутьКЛокальномуФайлуОбновления) Тогда - - КаталогФайлаОбновления = ПолучитьКаталогФайлаОбновления(Обновление); - Обновление.ЛокальныйОтносительныйКаталог = КаталогФайлаОбновления; - Обновление.ПутьКЛокальномуФайлу = ПараметрыОбновления.КаталогФайловОбновления + КаталогФайлаОбновления + Обновление.ФайлОбновления; - // Описание файла обновления. - СтруктураИнформацииПоФайлу = Новый Структура; - СтруктураИнформацииПоФайлу.Вставить("Адрес", КаталогОбновленияВИсточнике + Обновление.ПутьКФайлуОбновления); - СтруктураИнформацииПоФайлу.Вставить("ЛокальныйПуть", Обновление.ПутьКЛокальномуФайлу); - СтруктураИнформацииПоФайлу.Вставить("Обязательный", Истина); - СтруктураИнформацииПоФайлу.Вставить("Получен", ОпределитьФайлПолучен(СтруктураИнформацииПоФайлу, Обновление.РазмерФайлаОбновления)); - СписокФайлов.Добавить(СтруктураИнформацииПоФайлу); - КонецЕсли; - КонецЦикла; - - Возврат СписокФайлов; - -КонецФункции - -&НаКлиенте -Функция ОпределитьФайлПолучен(ОписаниеФайла, Размер) - Файл = Новый Файл(ОписаниеФайла.ЛокальныйПуть); - Возврат Файл.Существует() И Файл.Размер() = Размер; -КонецФункции - -// Получение файла описания обновления с сервера. -&НаКлиенте -Функция ПолучитьФайлОписанияОбновления() - - НастройкиОбновления = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().НастройкиОбновления; - ПараметрыОбновления = ОбновлениеКонфигурацииКлиент.ПолучитьПараметрыОбновления(); - ИмяФайла = ПолучитьИмяЛокальногоФайлаОписанияОбновления(); - Результат = ПолучениеФайловИзИнтернетаКлиент.СкачатьФайлНаКлиенте(НастройкиОбновления.АдресСервераДляПроверкиНаличияОбновления - + ПараметрыОбновления.АдресРесурсовДляПроверкиНаличияОбновления + ПараметрыОбновления.ИмяФайлаОписанияОбновления, - Новый Структура("ПутьДляСохранения", ? (ПустаяСтрока(ИмяФайла), Неопределено, ИмяФайла))); - Если Результат.Статус Тогда - Возврат ИмяФайла; - КонецЕсли; - - Попытка - УдалитьФайлы(ИмяФайла); - Исключение - ТекстСообщения = НСтр("ru = 'Ошибка при удалении временного файла %1 - |%2'"); - ИмяСобытияЖурнала = ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, - "Ошибка", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, ИмяФайла, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); - КонецПопытки; - Возврат Неопределено; - -КонецФункции - -&НаКлиенте -Функция ПолучитьИмяЛокальногоФайлаПорядкаОбновления() - - ПараметрыОбновления = ОбновлениеКонфигурацииКлиент.ПолучитьПараметрыОбновления(); - Возврат ПараметрыОбновления.КаталогФайловОбновления + ПараметрыОбновления.ИмяФайлаПорядкаОбновления; - -КонецФункции - -&НаКлиенте -Функция ПолучитьИмяЛокальногоФайлаОписанияОбновления() - - ПараметрыОбновления = ОбновлениеКонфигурацииКлиент.ПолучитьПараметрыОбновления(); - Возврат ПараметрыОбновления.КаталогФайловОбновления + ПараметрыОбновления.ИмяФайлаОписанияОбновления; - -КонецФункции - -// Получение файла порядка обновления с сервера. -&НаКлиенте -Функция ПолучитьФайлПорядкаОбновления() - - НастройкиОбновления = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().НастройкиОбновления; - ПараметрыОбновления = ОбновлениеКонфигурацииКлиент.ПолучитьПараметрыОбновления(); - ИмяФайла = ПолучитьИмяЛокальногоФайлаПорядкаОбновления(); - Результат = ПолучениеФайловИзИнтернетаКлиент.СкачатьФайлНаКлиенте(НастройкиОбновления.АдресСервераДляПроверкиНаличияОбновления - + ПараметрыОбновления.АдресРесурсовДляПроверкиНаличияОбновления + ПараметрыОбновления.ИмяФайлаПорядкаОбновления, - Новый Структура("ПутьДляСохранения", ? (ПустаяСтрока(ИмяФайла), Неопределено, ИмяФайла)), Ложь); - Если Результат.Статус Тогда - Возврат ИмяФайла; - КонецЕсли; - Попытка - УдалитьФайлы(ИмяФайла); - Исключение - ТекстСообщения = НСтр("ru = 'Ошибка при удалении временного файла %1 - |%2'"); - ИмяСобытияЖурнала = ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, - "Ошибка", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, ИмяФайла, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); - КонецПопытки; - Возврат Неопределено; - -КонецФункции - -&НаКлиенте -Процедура ПолучитьДоступноеОбновлениеИзФайла(Знач ИмяФайла, ФайловыйВариант = Ложь) - Если ЗначениеЗаполнено(ИмяФайла) Тогда - Если ФайловыйВариант Тогда - Объект.ДоступныеОбновления.Очистить(); - КонецЕсли; - НовоеДоступноеОбновление = Объект.ДоступныеОбновления.Добавить(); - НовоеДоступноеОбновление.ПутьКЛокальномуФайлу = ИмяФайла; - НовоеДоступноеОбновление.ПутьКЛокальномуФайлуОбновления = ИмяФайла; - КонецЕсли; -КонецПроцедуры - -// Получение каталога файла обновления. -// -// Параметр: -// ДоступноеОбновление - Строка таблицы значений, содержащая информацию о -// доступном обновлении. -// -// Возвращаемое значение: -// Строка - каталог файла обновления. -// -&НаКлиенте -Функция ПолучитьКаталогФайлаОбновления(ДоступноеОбновление) - - Если ДоступноеОбновление = Неопределено Тогда - Возврат Неопределено; - КонецЕсли; - - КороткоеИмяКонфигурации = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().НастройкиОбновления.КороткоеИмяКонфигурации; - КороткоеИмяКонфигурации = СтрЗаменить(КороткоеИмяКонфигурации, "/", "\"); - КороткоеИмяКонфигурации = ОбновлениеКонфигурацииКлиентСервер.ДобавитьКонечныйРазделительПути(КороткоеИмяКонфигурации); - Результат = СтрЗаменить(ДоступноеОбновление.ПутьКФайлуОбновления, "/", "\"); - Результат = ПолучитьКаталогФайла(Результат); - Результат = СтрЗаменить(Результат, "_", "."); - Результат = ОбновлениеКонфигурацииКлиентСервер.ДобавитьКонечныйРазделительПути(Результат); - Возврат Результат; - -КонецФункции - -// Распаковка дистрибутива обновления. -&НаКлиенте -Функция РаспаковатьДистрибутивОбновления() - #Если НЕ ВебКлиент Тогда - ИмяСобытияЖурнала = ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, - "Информация", НСтр("ru = 'Выполняется распаковка дистрибутива обновления...'")); - - Для Каждого Обновление Из Объект.ДоступныеОбновления Цикл - - Если НЕ ЭтоДистрибутивОбновления(Обновление.ПутьКЛокальномуФайлу) Тогда - Обновление.ПутьКЛокальномуФайлуОбновления = ?(ПустаяСтрока(Обновление.ПутьКЛокальномуФайлуОбновления), - Обновление.ПутьКЛокальномуФайлу, Обновление.ПутьКЛокальномуФайлуОбновления); - Продолжить; - КонецЕсли; - - Попытка - - ЧтениеZip = Новый ЧтениеZipФайла(Обновление.ПутьКЛокальномуФайлу); - КаталогНазначения = КаталогШаблонов() + Обновление.ЛокальныйОтносительныйКаталог; - ЧтениеZip.ИзвлечьВсе(КаталогНазначения, РежимВосстановленияПутейФайловZIP.Восстанавливать); - ИмяФайлаОбновления = КаталогНазначения + "1cv8.cfu"; - Если НЕ ФайлСуществуетНаКлиенте(ИмяФайлаОбновления) Тогда - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Ошибка", - НСтр("ru = 'Дистрибутив обновления не содержит 1cv8.cfu:'") - + " " + Обновление.ПутьКЛокальномуФайлу); - Возврат Ложь; - КонецЕсли; - Обновление.ПутьКЛокальномуФайлуОбновления = ИмяФайлаОбновления; - - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Информация", - НСтр("ru = 'Файлы дистрибутива обновления успешно распакованы:'") - + " " + ИмяФайлаОбновления); - Исключение - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Ошибка", - НСтр("ru = 'Ошибка при распаковке дистрибутива обновления:'") - + " " + ОписаниеОшибки()); - Возврат Ложь; - КонецПопытки; - - Попытка - ЧтениеZip = Новый ЧтениеZipФайла(Обновление.ПутьКЛокальномуФайлу); - КаталогНазначения = ОбновлениеКонфигурацииКлиент.ПолучитьПараметрыОбновления().КаталогФайловОбновления + Обновление.ЛокальныйОтносительныйКаталог; - ЧтениеZip.ИзвлечьВсе(КаталогНазначения, РежимВосстановленияПутейФайловZIP.Восстанавливать); - ИмяФайлаОбновления = КаталогНазначения + "1cv8.cfu"; - Если НЕ ФайлСуществуетНаКлиенте(ИмяФайлаОбновления) Тогда - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), - "Ошибка", НСтр("ru = 'Дистрибутив обновления не содержит 1cv8.cfu:'") - + " " + Обновление.ПутьКЛокальномуФайлу); - Возврат Ложь; - КонецЕсли; - Обновление.ПутьКЛокальномуФайлуОбновления = ИмяФайлаОбновления; - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), - "Информация", НСтр("ru = 'Файлы дистрибутива обновления успешно распакованы:'") - + " " + ИмяФайлаОбновления); - ЧтениеZip.Закрыть(); - Исключение - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), - "Ошибка", НСтр("ru = 'Ошибка при распаковке дистрибутива обновления:'") - + " " + ОписаниеОшибки()); - Возврат Ложь; - КонецПопытки; - КонецЦикла; - Возврат Истина; - #КонецЕсли -КонецФункции - -&НаКлиенте -Процедура ПолучитьДоступныеОбновления(ПараметрыОбновления, ВерсияКонфигурации, ВыдаватьСообщения, ДоступноОбновлениеДляСледующейРедакции = Ложь) - - ПараметрыОбновления = ОбновлениеКонфигурацииКлиент.ПолучитьПараметрыОбновления(ДоступноОбновлениеДляСледующейРедакции); - ПутьКФайлуСпискаОбновлений = ПараметрыОбновления.КаталогФайловОбновления + ПараметрыОбновления.ИмяФайлаСпискаШаблонов; - АдресФайлаВоВремХранилище = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ПутьКФайлуСпискаОбновлений)); - Попытка - ПолучитьДоступныеОбновленияВИнтервале(СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ВерсияКонфигурации, - ВерсияКонфигурации, АдресФайлаВоВремХранилище, ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"]); - Исключение - Если ВыдаватьСообщения Тогда - ПоказатьПредупреждение(, КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); - КонецЕсли; - КонецПопытки; - -КонецПроцедуры - -// Получение файла списка шаблонов с сервера. -&НаКлиенте -Функция ПолучитьФайлСпискаШаблонов(Знач ВыдаватьСообщения = Истина, ДоступноОбновлениеДляСледующейРедакции = Ложь) - #Если НЕ ВебКлиент Тогда - ПараметрыОбновления = ОбновлениеКонфигурацииКлиент.ПолучитьПараметрыОбновления(ДоступноОбновлениеДляСледующейРедакции); - НастройкиОбновления = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().НастройкиОбновления; - ПутьКФайлуСпискаШаблонов = ПараметрыОбновления.КаталогФайловОбновления + ПараметрыОбновления.ИмяZipФайлаСпискаШаблонов; - - Результат = ПолучениеФайловИзИнтернетаКлиент.СкачатьФайлНаКлиенте(НастройкиОбновления.АдресСервераДляПроверкиНаличияОбновления - + ПараметрыОбновления.АдресРесурсовДляПроверкиНаличияОбновления + ПараметрыОбновления.ИмяZipФайлаСпискаШаблонов, - Новый Структура("ПутьДляСохранения", ? (ПустаяСтрока(ПутьКФайлуСпискаШаблонов), Неопределено, ПутьКФайлуСпискаШаблонов))); - Если Результат.Статус <> Истина Тогда - Попытка - УдалитьФайлы(ПутьКФайлуСпискаШаблонов); - Исключение - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при удалении временного файла %1 - |%2'"), ПутьКФайлуСпискаШаблонов, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); - КонецПопытки; - ТекстОшибки = НСтр("ru = 'Ошибка при получении файла списка шаблонов:'") + " " + Результат.СообщениеОбОшибке; - Если ВыдаватьСообщения Тогда - ПоказатьПредупреждение(, ТекстОшибки); - КонецЕсли; - Возврат ТекстОшибки; - КонецЕсли; - - Если НЕ ФайлСуществуетНаКлиенте(ПутьКФайлуСпискаШаблонов) Тогда - Возврат НСтр("ru = 'Файл не существует:'") + " " + ПутьКФайлуСпискаШаблонов; - КонецЕсли; - - Попытка - ЧтениеZip = Новый ЧтениеZipФайла(ПутьКФайлуСпискаШаблонов); - ЧтениеZip.ИзвлечьВсе(ПараметрыОбновления.КаталогФайловОбновления, РежимВосстановленияПутейФайловZIP.НеВосстанавливать); - Исключение - ТекстОшибки = НСтр("ru = 'Ошибка при распаковке файла со списком доступных обновлений:'") + " "; - ИнфоОшибки = ИнформацияОбОшибке(); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), - "Ошибка", ТекстОшибки + ПодробноеПредставлениеОшибки(ИнфоОшибки)); - ТекстОшибки = ТекстОшибки + КраткоеПредставлениеОшибки(ИнфоОшибки); - Возврат ТекстОшибки; - КонецПопытки; - УдалитьФайлы(ПараметрыОбновления.КаталогФайловОбновления, ПараметрыОбновления.ИмяZipФайлаСпискаШаблонов); - Возврат ""; - #КонецЕсли -КонецФункции - -// Проверка существования файла или каталога. -// -// Параметр: -// ПутьКФайлу - Строка - путь к файлу или каталогу, существование которого -// нужно проверить. -// -// Возвращаемое значение: -// Булево - признак существования файла или каталога. -&НаКлиенте -Функция ФайлСуществуетНаКлиенте(Знач ПутьКФайлу) - Файл = Новый Файл(ПутьКФайлу); - Возврат Файл.Существует(); -КонецФункции - -&НаКлиенте -Функция ПолучитьОбновление(ВыдаватьСообщения = Истина) - - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - Сообщение = ""; - Если Объект.ИсточникОбновления = 0 Тогда - Сообщение = Сообщение + НСтр("ru = 'Получение файлов из Интернета...'"); - Иначе - Сообщение = Сообщение + НСтр("ru = 'Получение файла обновления из указанного источника...'"); - КонецЕсли; - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), - "Информация", Сообщение); - - Объект.ТехническаяИнформацияОбОшибке = ""; - НомерФайла = 1; - Для Каждого Файл Из СписокФайловДляПолучения Цикл - - Если Файл.Значение <> Неопределено И Файл.Значение.Получен <> Истина Тогда // Может быть также Неопределено. - Если Объект.ИсточникОбновления = 0 Тогда - - РезультатПроверкиЛегальности = ОбновлениеКонфигурацииКлиент.ПроверитьЛегальностьСкачиванияОбновления( - ПараметрыПроверкиЛегальности()); - - Если Не РезультатПроверкиЛегальности.ЗначениеРезультата Тогда - - Элементы.ГруппаДоступаНаСайт.ТекущаяСтраница = Элементы.ГруппаДоступаНаСайт.ПодчиненныеЭлементы.ОшибкаПроверкиЛегальности; - ТекстОшибки = НСтр("ru = 'Не удалось подтвердить легальность получения обновления через Интернет по причине: - |%1'"); - ТекстОшибки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстОшибки, РезультатПроверкиЛегальности.ТекстОшибки); - Элементы.ТекстОшибкиПроверкиЛегальности.Заголовок = ТекстОшибки; - Возврат Страницы.ПодключениеКСайту.Имя; - - КонецЕсли; - - // Вывод сообщения о закачке файла в журнал регистрации. - Сообщение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Получаем файл %1 в %2'"), - ОбновлениеКонфигурацииКлиент.ПолучитьПараметрыОбновления().АдресСервераОбновлений + Файл.Значение.Адрес, - ? (ПустаяСтрока(Файл.Значение.ЛокальныйПуть), Неопределено, Файл.Значение.ЛокальныйПуть)); - Элементы.НадписьПрогресс.Заголовок = Сообщение; - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), , Сообщение); - - СоздатьКаталог(ПолучитьКаталогФайла(Файл.Значение.ЛокальныйПуть)); - - URL = ОбновлениеКонфигурацииКлиент.ПолучитьПараметрыОбновления().АдресСервераОбновлений + Файл.Значение.Адрес; - - ПараметрыПолучения = Новый Структура; - ПараметрыПолучения.Вставить("ПутьДляСохранения", ?(ПустаяСтрока(Файл.Значение.ЛокальныйПуть), Неопределено, Файл.Значение.ЛокальныйПуть)); - ПараметрыПолучения.Вставить("Пользователь", Объект.КодПользователяСервераОбновлений); - ПараметрыПолучения.Вставить("Пароль", Объект.ПарольСервераОбновлений); - - Результат = СкачатьФайлОбновления(URL, ПараметрыПолучения); - - ТекстОшибки = ""; - Если Результат.Статус <> Истина Тогда - ТекстОшибки = Результат.СообщениеОбОшибке; - Попытка - УдалитьФайлы(Файл.Значение.ЛокальныйПуть); - Исключение - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при удалении временного файла %1 - |%2'"), Файл.Значение.ЛокальныйПуть, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); - КонецПопытки; - Если Не ПустаяСтрока(ТекстОшибки) Тогда - Если Файл.Значение.Обязательный И ВыдаватьСообщения Тогда - ПоказатьПредупреждение(, ТекстОшибки); - Возврат Страницы.ПодключениеКСайту.Имя; - КонецЕсли; - КонецЕсли; - КонецЕсли; - - Файл.Значение.Получен = ПустаяСтрока(ТекстОшибки); - - Если НЕ Файл.Значение.Получен И Файл.Значение.Обязательный Тогда - Возврат Страницы.ПодключениеКСайту.Имя; - КонецЕсли; - Иначе - // Вывод сообщения в журнал регистрации о копировании файла. - Сообщение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Получаем файл %1 в %2'"), Файл.Значение.Адрес, Файл.Значение.ЛокальныйПуть); - Элементы.НадписьПрогресс.Заголовок = Сообщение; - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), , Сообщение); - - Файл.Значение.Получен = СкопироватьФайл(Файл.Значение.Адрес, Файл.Значение.ЛокальныйПуть, Файл.Значение.Обязательный И ВыдаватьСообщения); - КонецЕсли; - КонецЕсли; - НомерФайла = НомерФайла + 1; - КонецЦикла; - - ИмяСтраницы = ""; - Если ПроверитьФайлыОбновленияПолучены() Тогда - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), - "Информация", НСтр("ru = 'Файлы обновления успешно получены.'")); - ПерейтиКВыборуРежимаОбновления(Истина); - Возврат Неопределено; - Иначе - Сообщение = НСтр("ru = 'Ошибка при получении файлов обновления.'"); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), - "Ошибка", Сообщение); - ИмяСтраницы = Страницы.НеуспешноеОбновление.Имя; - КонецЕсли; - Возврат ИмяСтраницы; - -КонецФункции - -&НаКлиенте -Функция СкачатьФайлОбновления(URL, ПараметрыПолучения) - - Результат = Неопределено; - - СтандартнаяОбработка = Истина; - - ОбновлениеКонфигурацииКлиентПереопределяемый.ПриСкачиванииФайлаОбновления(URL, ПараметрыПолучения, Результат, СтандартнаяОбработка); - - Если СтандартнаяОбработка Тогда - - Результат = ПолучениеФайловИзИнтернетаКлиент.СкачатьФайлНаКлиенте(URL, ПараметрыПолучения); - - КонецЕсли; - - Возврат Результат; - -КонецФункции - -// Функция, выполняющая копирование заданного файла в другой. -// -// Параметры: -// ИмяФайлаИсточника: строка, путь к файлу, который нужно скопировать. -// ИмяФайлаНазначение: строка, путь к файлу в который нужно скопировать источник. -// ВыдаватьСообщения: Булево, признак вывода на экран сообщений об ошибках. -// -&НаКлиенте -Функция СкопироватьФайл(ИмяФайлаИсточник, ИмяФайлаНазначение, ВыдаватьСообщения = Ложь) - Попытка - СоздатьКаталог(ПолучитьКаталогФайла(ИмяФайлаНазначение)); - КопироватьФайл(ИмяФайлаИсточник, ИмяФайлаНазначение); - Исключение - Сообщение = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при копировании: %1 - |(Источник: %2; Приемник: %3)'"), ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()), - ИмяФайлаИсточник, ИмяФайлаНазначение); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации( - ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), "Предупреждение", Сообщение); - Возврат Ложь; - КонецПопытки; - Возврат Истина; -КонецФункции - -&НаКлиенте -Функция ПолучитьФайлыОбновленияЧерезИнтернет(ВыдаватьСообщения, ДоступноОбновлениеДляСледующейРедакции = Ложь) - - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - ДоступноеОбновление = ОбновлениеКонфигурацииКлиент.ПолучитьДоступноеОбновлениеКонфигурации(); - Если ДоступноеОбновление.ИмяСтраницы = Страницы.ДоступноеОбновление.Имя Тогда - - ТекстОшибки = ПолучитьФайлСпискаШаблонов(ВыдаватьСообщения, ДоступноОбновлениеДляСледующейРедакции); - Если НЕ ПустаяСтрока(ТекстОшибки) Тогда - Возврат Страницы.ПодключениеКИнтернет.Имя; - КонецЕсли; - - ИмяФайлаИнформацияОбОбновлении = ПолучитьФайлОписанияОбновления(); - ИмяФайлаПорядокОбновления = ПолучитьФайлПорядкаОбновления(); - - ПолучитьДоступныеОбновления(ДоступноеОбновление.ПараметрыФайлаПроверкиОбновления, - ДоступноеОбновление.ПоследняяВерсияКонфигурации, ВыдаватьСообщения, ДоступноОбновлениеДляСледующейРедакции); - ПоследняяВерсияКонфигурации = ДоступноеОбновление.ПоследняяВерсияКонфигурации; - Если Объект.ДоступныеОбновления.Количество() = 0 Тогда - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), - "Информация", НСтр("ru = 'Невозможно продолжить обновление: нет доступных обновлений.'")); - Возврат Страницы.ОбновленияНеОбнаружено.Имя; - КонецЕсли; - - КонецЕсли; - - Возврат ДоступноеОбновление.ИмяСтраницы; - -КонецФункции - -&НаКлиенте -Функция ПроверитьОбновлениеИнтернет(ВыдаватьСообщения = Истина) - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), - "Информация", НСтр("ru = 'Проверка обновления в Интернете...'")); - ДоступноеОбновление = Неопределено; - Объект.ДоступныеОбновления.Очистить(); - - ОбновлениеКонфигурацииКлиент.ПроверитьНаличиеОбновленияЧерезИнтернет(ВыдаватьСообщения, ДоступноОбновлениеДляСледующейРедакции); - - Возврат ПолучитьФайлыОбновленияЧерезИнтернет(ВыдаватьСообщения, ДоступноОбновлениеДляСледующейРедакции); -КонецФункции - -&НаКлиенте -Процедура ВыполнитьПолучениеОбновления() - ТекущаяСтраница = Элементы.СтраницыПомощника.ТекущаяСтраница; - РезультатПолученияФайлов = ПолучитьОбновление(); - Если РезультатПолученияФайлов = Неопределено Тогда - Возврат; - КонецЕсли; - Элементы.СтраницыПомощника.ТекущаяСтраница = ТекущаяСтраница; - ОбработатьНажатиеКнопкиДалее(); -КонецПроцедуры - -&НаКлиенте -Функция ВернутьДату(Дата, Время) - Возврат Дата(Год(Дата), Месяц(Дата), День(Дата), Час(Время), Минута(Время), Секунда(Время)); -КонецФункции - -&НаКлиенте -Функция ПроверитьОбновлениеФайл(ВыдаватьСообщения = Истина) - - Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; - - Если СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ИнформационнаяБазаФайловая И УстановленыРасширения Тогда - ПоказатьПредупреждение(, НСтр("ru = 'Перед обновлением необходимо удалить все подключенные расширения конфигурации. - |После завершения обновления их нужно подключить заново.'")); - Возврат Страницы.ДоброПожаловать.Имя; - КонецЕсли; - - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), - "Информация", НСтр("ru = 'Проверка обновления в Интернете...'")); - - Объект.ДоступныеОбновления.Очистить(); - - Если ВосстановлениеРезультатовПредЗапуска <> Истина Тогда - Возврат Страницы.ФайлОбновления.Имя; - КонецЕсли; - - Если Объект.НуженФайлОбновления = 1 Тогда - Файл = Новый Файл(Объект.ИмяФайлаОбновления); - Если НЕ Файл.Существует() ИЛИ НЕ Файл.ЭтоФайл() Тогда - - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), "Информация", - НСтр("ru = 'Невозможно продолжить обновление: файл поставки обновления конфигурации не найден.'")); - - Возврат Страницы.ФайлОбновления.Имя; - КонецЕсли; - КонецЕсли; - - ПолучитьДоступноеОбновлениеИзФайла(?(Объект.НуженФайлОбновления = 1, Объект.ИмяФайлаОбновления, Неопределено)); - ПерейтиКВыборуРежимаОбновления(Истина); - Возврат Неопределено; - -КонецФункции - -&НаКлиенте -Функция ТекстНадписиРезервнойКопииИБ() - - Результат = НСтр("ru = 'Не создавать резервную копию ИБ'"); - - Если Объект.СоздаватьРезервнуюКопию = 1 Тогда - Результат = НСтр("ru = 'Создавать временную резервную копию ИБ'"); - ИначеЕсли Объект.СоздаватьРезервнуюКопию = 2 Тогда - Результат = НСтр("ru = 'Создавать резервную копию ИБ'"); - КонецЕсли; - - Если Объект.ВосстанавливатьИнформационнуюБазу Тогда - Результат = Результат + " " + НСтр("ru = 'и выполнять откат при нештатной ситуации'"); - Иначе - Результат = Результат + " " + НСтр("ru = 'и не выполнять откат при нештатной ситуации'"); - КонецЕсли; - - Возврат Результат; - -КонецФункции - -&НаКлиенте -Процедура ВыполнитьОбновлениеКонфигурации() - - УдалитьЗадачуПланировщика(Объект.КодЗадачиПланировщика); - ИмяГлавногоФайлаСкрипта = СформироватьФайлыСкриптаОбновления(Истина); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(), "Информация", - НСтр("ru = 'Выполняется процедура обновления конфигурации:'") + " " + ИмяГлавногоФайлаСкрипта); - ЗаписатьСтатусОбновления(ИмяПользователя(), Истина, Ложь, Ложь, ИмяГлавногоФайлаСкрипта, ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"]); - - СтрокаЗапуска = "cmd /c """"%1"""" [p1]%2[/p1][p2]%3[/p2]"; - СтрокаЗапуска = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаЗапуска, ИмяГлавногоФайлаСкрипта, - СтрокаUnicode(ПараметрыАдминистрирования.ПарольАдминистратораИнформационнойБазы), - СтрокаUnicode(ПараметрыАдминистрирования.ПарольАдминистратораКластера)); - Оболочка = Новый COMОбъект("Wscript.Shell"); - Оболочка.RegWrite("HKCU\Software\Microsoft\Internet Explorer\Styles\MaxScriptStatements", 1107296255, "REG_DWORD"); - Оболочка.Run(СтрокаЗапуска, 0); - -КонецПроцедуры - -&НаСервереБезКонтекста -Процедура ЗаписатьСтатусОбновления(ИмяАдминистратораОбновления, ОбновлениеЗапланировано, ОбновлениеВыполнено, - РезультатОбновления, ИмяФайлаСкрипта = "", СообщенияДляЖурналаРегистрации = Неопределено) - - КаталогСкрипта = ""; - Если СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации() Тогда - КаталогСкрипта = Лев(ИмяФайлаСкрипта, СтрДлина(ИмяФайлаСкрипта) - 10); - КонецЕсли; - - ОбновлениеКонфигурации.ЗаписатьСтатусОбновления( - ИмяАдминистратораОбновления, - ОбновлениеЗапланировано, - ОбновлениеВыполнено, - РезультатОбновления, - КаталогСкрипта, - СообщенияДляЖурналаРегистрации); - -КонецПроцедуры - -&НаКлиенте -Функция ВозможенЗапускОбновления() - - ВозможенЗапускОбновления = Истина; - - #Если ВебКлиент Тогда - ВозможенЗапускОбновления = Ложь; - ТекстСообщения = НСтр("ru = 'Обновление программы недоступно в веб-клиенте.'"); - #КонецЕсли - - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда - ВозможенЗапускОбновления = Ложь; - ТекстСообщения = НСтр("ru = 'Обновление программы недоступно в клиенте под управлением ОС Linux.'"); - КонецЕсли; - - Если ОбщегоНазначенияКлиент.КлиентПодключенЧерезВебСервер() Тогда - ВозможенЗапускОбновления = Ложь; - ТекстСообщения = НСтр("ru = 'Обновление программы недоступно при подключении через веб-сервер.'"); - КонецЕсли; - - Если Не ВозможенЗапускОбновления Тогда - - ПоказатьПредупреждение(, ТекстСообщения); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(),, - ТекстСообщения,,Истина); - - КонецЕсли; - - Возврат ВозможенЗапускОбновления; - -КонецФункции - -&НаКлиенте -Процедура ПоказатьПорядокОбновления() - - Если НЕ ПустаяСтрока(ИмяФайлаПорядокОбновления) Тогда - ОбновлениеКонфигурацииКлиент.ОткрытьВебСтраницу(ИмяФайлаПорядокОбновления); - Иначе - ПоказатьПредупреждение(, НСтр("ru = 'Описание порядка обновления отсутствует.'")); - КонецЕсли; - -КонецПроцедуры - -&НаСервере -Функция ВыполнитьОтложенныеОбработчики() - - Возврат Не СтандартныеПодсистемыСервер.ЭтоБазоваяВерсияКонфигурации() - И ОбновлениеИнформационнойБазыСлужебный.СтатусНевыполненныхОбработчиков() = "СтатусНеВыполнено"; - -КонецФункции - -&НаСервере -Функция ТребуетсяОбновлениеПлатформы(ТребуемаяВерсия) - - Если Не ЗначениеЗаполнено(ТребуемаяВерсия) Тогда - Возврат Ложь; - КонецЕсли; - - СистемнаяИнформация = Новый СистемнаяИнформация; - ТекущаяВерсияПлатформы = СистемнаяИнформация.ВерсияПриложения; - - Возврат ОбщегоНазначенияКлиентСервер.СравнитьВерсии(ТребуемаяВерсия, ТекущаяВерсияПлатформы) > 0; - -КонецФункции - -&НаСервере -Функция ПараметрыСтраницыВыборРежимаОбновленияСервер(СообщенияДляЖурналаРегистрации) - - ПараметрыСтраницы = Новый Структура; - ПараметрыСтраницы.Вставить("ЕстьОтложенныеОбработчики", (ОбновлениеИнформационнойБазыСлужебный.СтатусНевыполненныхОбработчиков() = "СтатусНеВыполнено")); - ПараметрыСтраницы.Вставить("ИнформацияОСоединениях", СоединенияИБ.ИнформацияОСоединениях(Ложь, СообщенияДляЖурналаРегистрации)); - Возврат ПараметрыСтраницы; - -КонецФункции - -&НаКлиенте -Процедура ПрочитатьДанныеВЖурналРегистрации() - - МассивФайлов = НайтиФайлы(КаталогСкрипта, "log*.txt"); - - Если МассивФайлов.Количество() = 0 Тогда - Возврат; - КонецЕсли; - - ИмяСобытияЖурнала = ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(); - - ФайлЖурнала = МассивФайлов[0]; - ТекстовыйДокумент = Новый ТекстовыйДокумент; - ТекстовыйДокумент.Прочитать(ФайлЖурнала.ПолноеИмя); - - Для НомерСтроки = 1 По ТекстовыйДокумент.КоличествоСтрок() Цикл - - ТекущаяСтрока = ТекстовыйДокумент.ПолучитьСтроку(НомерСтроки); - Если ПустаяСтрока(ТекущаяСтрока) Тогда - Продолжить; - КонецЕсли; - - ПредставлениеУровня = "Информация"; - Если Сред(ТекущаяСтрока, 3, 1) = "." И Сред(ТекущаяСтрока, 6, 1) = "." Тогда // Строка с датой - МассивСтроки = СтрРазделить(ТекущаяСтрока, " ", Ложь); - МассивДаты = СтрРазделить(МассивСтроки[0], "."); - МассивВремени = СтрРазделить(МассивСтроки[1], ":"); - ДатаСобытия = Дата(МассивДаты[2], МассивДаты[1], МассивДаты[0], МассивВремени[0], МассивВремени[1], МассивВремени[2]); - Если МассивСтроки[2] = "{ERR}" Тогда - ПредставлениеУровня = "Ошибка"; - КонецЕсли; - Комментарий = СокрЛП(Сред(ТекущаяСтрока, СтрНайти(ТекущаяСтрока, "}") + 2)); - - Если Комментарий = НСтр("ru = 'Обновление выполнено'") Тогда - Объект.РезультатОбновления = Истина; - Продолжить; - ИначеЕсли Комментарий = НСтр("ru = 'Обновление не выполнено'") Тогда - Объект.РезультатОбновления = Ложь; - Продолжить; - КонецЕсли; - - Иначе - Комментарий = ТекущаяСтрока; - КонецЕсли; - - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, ПредставлениеУровня, Комментарий, ДатаСобытия); - - КонецЦикла; - -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Планирование обновления в указанное время. - -// Запланировать обновление конфигурации. -// -&НаКлиенте -Функция ЗапланироватьОбновлениеКонфигурации() - Если Не УдалитьЗадачуПланировщика(Объект.КодЗадачиПланировщика) Тогда - Возврат Ложь; - КонецЕсли; - ИмяГлавногоФайлаСкрипта = СформироватьФайлыСкриптаОбновления(Ложь); - - ИмяЗапускаемогоСкрипта = ОпределитьИмяСкрипта(); - ПутьЗапускаемогоСкрипта = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("%1 %2 //nologo ""%3"" /p1:""%4"" /p2:""%5""", - ИмяЗапускаемогоСкрипта, ?(РежимОтладкиСкрипта(), "//X //D", ""), ИмяГлавногоФайлаСкрипта, - СтрокаUnicode(ПараметрыАдминистрирования.ПарольАдминистратораИнформационнойБазы), - СтрокаUnicode(ПараметрыАдминистрирования.ПарольАдминистратораКластера)); - - Объект.КодЗадачиПланировщика = СоздатьЗадачуПланировщика(ПутьЗапускаемогоСкрипта, Объект.ДатаВремяОбновления); - ЗаписатьСтатусОбновления(ИмяПользователя(), Объект.КодЗадачиПланировщика <> 0, Ложь, Ложь); - Возврат Объект.КодЗадачиПланировщика <> 0; -КонецФункции - -&НаКлиенте -Функция СоздатьЗадачуПланировщика(Знач ИмяФайлаПрограммы, Знач ДатаВремя) - - ИмяСобытияЖурнала = ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(); - - Если ВерсияWindowsВышеVista() Тогда - Возврат СоздатьЗадачуПланировщикаScheduleService(ИмяФайлаПрограммы, ДатаВремя, ИмяСобытияЖурнала); - Иначе - Возврат СоздатьЗадачуПланировщикаScheduledJob(ИмяФайлаПрограммы, ДатаВремя, ИмяСобытияЖурнала); - КонецЕсли; - -КонецФункции - -// Создать задачу планировщика ОС Windows. -// -// Параметры: -// ИмяФайлаПрограммы - Строка - путь к запускаемому приложению или файлу. -// ДатаВремя - Дата - Дата и время запуска. Значение даты может быть -// в интервале [текущая дата, текущая дата + 30 дней). -// -// Возвращаемое значение: -// Число - код созданной задачи планировщика или "Неопределено" при ошибке. -// -&НаКлиенте -Функция СоздатьЗадачуПланировщикаScheduledJob(Знач ИмяФайлаПрограммы, Знач ДатаВремя, Знач ИмяСобытияЖурнала) - - Попытка - - Планировщик = ОбъектWMI().Get("Win32_ScheduledJob"); - КодЗадачи = 0; - КодОшибки = Планировщик.Create(ИмяФайлаПрограммы, // Command - ПреобразоватьВремяВФорматCIM(ДатаВремя), // StartTime - Ложь, // RunRepeatedly - , // DaysOfWeek - Pow(2, День(ДатаВремя) - 1), // DaysOfMonth - Ложь, // InteractWithDesktop - КодЗадачи); // out JobId - - Исключение - - ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании задачи планировщика: %1'"), ОписаниеОшибки()); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Ошибка", ТекстСообщения); - Возврат 0; - - КонецПопытки; - - Если КодОшибки <> 0 Тогда // Коды ошибок: http://msdn2.microsoft.com/en-us/library/aa389389(VS.85).aspx. - ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании задачи планировщика: %1'"), КодОшибки); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Ошибка", ТекстСообщения); - Возврат 0; - КонецЕсли; - - ТекстСообщения = НСтр("ru = 'Задача планировщика успешно запланирована (команда: %1; дата: %2; код задачи: %3).'"); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, - "Информация", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, ИмяФайлаПрограммы, ДатаВремя, КодЗадачи)); - - Возврат КодЗадачи; - -КонецФункции - -&НаКлиенте -Функция СоздатьЗадачуПланировщикаScheduleService(Знач ИмяФайлаПрограммы, Знач ДатаВремя, Знач ИмяСобытияЖурнала) - - ГенераторСлучайныхЧисел = Новый ГенераторСлучайныхЧисел; - КодЗадачи = Формат(ГенераторСлучайныхЧисел.СлучайноеЧисло(1000, 9999), "ЧГ=0"); - ИмяЗадачи = ИмяЗадачиScheduleService(КодЗадачи); - ДатаЗапуска = Формат(ДатаВремя, "ДФ=yyyy-MM-ddTHH:mm:ss"); - - РазделительИмениИПараметров = СтрНайти(ИмяФайлаПрограммы, ".exe") + 3; - ИмяПрограммы = Лев(ИмяФайлаПрограммы, РазделительИмениИПараметров); - ПараметрыЗапуска = Сред(ИмяФайлаПрограммы, РазделительИмениИПараметров + 2); - - Попытка - - СлужбаПланировщика = СлужбаПланировщика(); - ОписаниеЗадачи = СлужбаПланировщика.NewTask(0); - ОписаниеЗадачи.RegistrationInfo.Description = НСтр("ru = 'Обновление конфигурации 1С:Предприятие'"); - - ОписаниеЗадачи.Principal.RunLevel = 1; - - ОписаниеЗадачи.Settings.Enabled = Истина; - ОписаниеЗадачи.Settings.Hidden = Ложь; - - Триггер = ОписаниеЗадачи.Triggers.Create(1); - Триггер.StartBoundary = ДатаЗапуска; - Триггер.Enabled = Истина; - - Действие = ОписаниеЗадачи.Actions.Create(0); - Действие.Path = ИмяПрограммы; - Действие.Arguments = ПараметрыЗапуска; - - Корень = СлужбаПланировщика.GetFolder("\"); - Задача = Корень.RegisterTaskDefinition(ИмяЗадачи, ОписаниеЗадачи, 6, "SYSTEM", Неопределено, 4); - - Исключение - - ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка при создании задачи планировщика: %1'"), ОписаниеОшибки()); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Ошибка", ТекстСообщения); - Возврат 0; - - КонецПопытки; - - Возврат КодЗадачи; - -КонецФункции - -&НаКлиенте -Функция СуществуетЗадачаПланировщика(Знач КодЗадачи) - - Если КодЗадачи = 0 Тогда - Возврат Ложь; - КонецЕсли; - - Если ВерсияWindowsВышеVista() Тогда - ЗадачаПланировщика = ПолучитьЗадачуПланировщикаScheduleService(КодЗадачи); - Иначе - ЗадачаПланировщика = ПолучитьЗадачуПланировщикаScheduledJob(КодЗадачи); - КонецЕсли; - - Возврат ЗадачаПланировщика <> Неопределено; - -КонецФункции - -&НаКлиенте -Функция ПолучитьЗадачуПланировщикаScheduledJob(Знач КодЗадачи) - - Попытка - Возврат ОбъектWMI().Get("Win32_ScheduledJob.JobID=" + КодЗадачи); - Исключение - Возврат Неопределено; - КонецПопытки; - -КонецФункции - -&НаКлиенте -Функция ПолучитьЗадачуПланировщикаScheduleService(Знач КодЗадачи) - - НайденнаяЗадача = Неопределено; - ИмяЗадачи = ИмяЗадачиScheduleService(КодЗадачи); - - СлужбаПланировщика = СлужбаПланировщика(); - Корень = СлужбаПланировщика.GetFolder("\"); - СписокЗадач = Корень.GetTasks(0); - - Для Каждого Задача Из СписокЗадач Цикл - Если Задача.Name = ИмяЗадачи Тогда - НайденнаяЗадача = Задача; - КонецЕсли; - КонецЦикла; - - Возврат НайденнаяЗадача; - -КонецФункции - -&НаКлиенте -Функция УдалитьЗадачуПланировщика(КодЗадачи) - - ИмяСобытияЖурнала = ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(); - Если КодЗадачи = 0 Тогда - Возврат Истина; - КонецЕсли; - - Если Не СуществуетЗадачаПланировщика(КодЗадачи) Тогда - Возврат Истина; - КонецЕсли; - - Если ВерсияWindowsВышеVista() Тогда - Возврат УдалитьЗадачуПланировщикаScheduleService(КодЗадачи, ИмяСобытияЖурнала); - Иначе - Возврат УдалитьЗадачуПланировщикаScheduledJob(КодЗадачи, ИмяСобытияЖурнала); - КонецЕсли; - -КонецФункции - -&НаКлиенте -Функция УдалитьЗадачуПланировщикаScheduledJob(КодЗадачи, ИмяСобытияЖурнала) - - Попытка - - Сервис = ОбъектWMI(); - Задача = ПолучитьЗадачуПланировщикаScheduledJob(КодЗадачи); - КодОшибки = Задача.Delete(); - - Исключение - - ТекстСообщения = НСтр("ru = 'Ошибка при удалении задачи планировщика: %1'"); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Ошибка", - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, ОписаниеОшибки())); - Возврат Ложь; - КонецПопытки; - - Результат = КодОшибки = 0; - Если Не Результат Тогда // Коды ошибок: http://msdn2.microsoft.com/en-us/library/aa389957(VS.85).aspx. - ТекстСообщения = НСтр("ru = 'Ошибка при удалении задачи планировщика: %1'"); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Ошибка", - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, КодОшибки)); - Возврат Результат; - КонецЕсли; - ТекстСообщения = НСтр("ru = 'Задача планировщика успешно удалена (код задачи: %1).'"); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Информация", - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, КодЗадачи)); - КодЗадачи = 0; - - Возврат Результат; - -КонецФункции - -&НаКлиенте -Функция УдалитьЗадачуПланировщикаScheduleService(КодЗадачи, ИмяСобытияЖурнала) - - ИмяЗадачи = ИмяЗадачиScheduleService(КодЗадачи); - - Попытка - - СлужбаПланировщика = СлужбаПланировщика(); - Корень = СлужбаПланировщика.GetFolder("\"); - Результат = Корень.DeleteTask(ИмяЗадачи, 0); - - Исключение - - ТекстСообщения = НСтр("ru = 'Ошибка при удалении задачи планировщика: %1'"); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Ошибка", - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ТекстСообщения, ОписаниеОшибки())); - Возврат Ложь; - - КонецПопытки; - - Возврат Истина; - -КонецФункции - -&НаКлиенте -Функция ИмяЗадачиScheduleService(Знач КодЗадачи) - - Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Обновление конфигурации (%1)'"), Формат(КодЗадачи, "ЧГ=0")); - -КонецФункции - -&НаКлиенте -Функция ПреобразоватьВремяВФорматCIM(ДатаВремя) - Локатор = Новый COMObject("WbemScripting.SWbemLocator"); - Сервис = Локатор.ConnectServer(".", "\root\cimv2"); - ComputerSystems = Сервис.ExecQuery("Select * from Win32_ComputerSystem"); - Для Каждого ComputerSystem Из ComputerSystems Цикл - Разница = ComputerSystem.CurrentTimeZone; - Час = Формат(ДатаВремя,"ДФ=ЧЧ"); - Минута = Формат(ДатаВремя,"ДФ=мм"); - Разница = ?(Разница > 0, "+" + Формат(Разница, "ЧГ=0"), Формат(Разница, "ЧГ=0")); - Возврат "********" + Час + Минута + "00.000000" + Разница; - КонецЦикла; - - Возврат Неопределено; -КонецФункции - -&НаКлиенте -Функция ОбъектWMI() - // WMI: http://www.microsoft.com/technet/scriptcenter/resources/wmifaq.mspx. - Локатор = Новый COMObject("WbemScripting.SWbemLocator"); - Возврат Локатор.ConnectServer(".", "\root\cimv2"); -КонецФункции - -&НаКлиенте -Функция СлужбаПланировщика() - СлужбаПланировщика = Новый COMObject("Schedule.Service"); - СлужбаПланировщика.Connect(); - Возврат СлужбаПланировщика; -КонецФункции - -&НаКлиенте -Функция ВозможноЗапланироватьОбновление(Знач ВыдаватьСообщения = Истина) - - ВерсияWindowsВышеVista = ВерсияWindowsВышеVista(); - - Попытка - ОбъектAPI = ?(ВерсияWindowsВышеVista, СлужбаПланировщика(), ОбъектWMI()); - Возврат ОбъектAPI <> Неопределено; - Исключение - ИмяСобытияЖурнала = ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(); - ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Ошибка", ОписаниеОшибки()); - Возврат Ложь; - КонецПопытки; - -КонецФункции - -// Определяет что текущая версия windows больше Vista (Vista, Windows 7, Windows 8) -// -Функция ВерсияWindowsВышеVista() - - СистемнаяИнформация = Новый СистемнаяИнформация(); - ВерсияОС = СистемнаяИнформация.ВерсияОС; - - ПозицияТочки = СтрНайти(ВерсияОС, "."); - НомерВерсии = Сред(ВерсияОС, ПозицияТочки - 1, 1); - - Возврат Число(НомерВерсии) >= 6; - -КонецФункции - -&НаКлиенте -// Возвратить каталог файла - часть пути без имени файла. -// -// Параметры: -// ПутьКФайлу - Строка - путь к файлу. -// -// Возвращаемое значение: -// Строка - каталог файла -Функция ПолучитьКаталогФайла(Знач ПутьКФайлу) - - ПозицияСимвола = СтрНайти(ПутьКФайлу, "\", НаправлениеПоиска.СКонца); - Если ПозицияСимвола > 1 Тогда - Возврат Сред(ПутьКФайлу, 1, ПозицияСимвола - 1); - Иначе - Возврат ""; - КонецЕсли; - -КонецФункции - -#КонецОбласти diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Help/ru.html b/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Help/ru.html deleted file mode 100644 index e9c9a3605..000000000 --- a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Help/ru.html +++ /dev/null @@ -1,74 +0,0 @@ - -

        Поиск и установка обновлений позволяет получать информацию о последних обновлениях на пользовательском сайте в сети Интернет и автоматически их устанавливать.

        -

        Открывается по команде Поиск и установка обновлений раздела Администрирование - Поддержка и обслуживание.

        -

        Программа позволяет обновлять конфигурацию ИБ в режиме 1С:Предприятия. Обновление производится по требованию или в указанное время.

        -

        Внимание! Помощник не следует использовать, если в программе включена возможность изменения объектов метаданных. В таких случаях рекомендуется выполнять обновление в режиме Конфигуратор.

        -

        С помощью переключателя Выбор источника получения обновления укажите, как получить обновление:

        -
        • Автоматический поиск обновления в Интернете - обновление через сайт поддержки пользователей программы "1С:Предприятие 8" (рекомендуется); -
        • Локальный или сетевой каталог - из файла обновления в локальном или сетевом каталоге (или с диска 1С:ИТС). -

          Если у Вас уже имеется файл обновления, то помощник позволяет провести обновление с использованием файла поставки обновления (.cfu) или файла поставки конфигурации (.cf) из локального или сетевого каталога. Если файл обновления уже загружен в основную конфигурацию, и она отличается от конфигурации информационной базы, то необходимо указать вариант обновления без использования файла обновления.

        Получение обновлений через Интернет

        -

        На первой странице помощника выберите вариант Автоматический поиск обновления в Интернете (рекомендуется). Если на пользовательском сайте имеется доступное обновление, то программа сообщает номер версии, краткое описание, размер обновления и предлагает его установить.

        -

        Программа может автоматически проверять наличие обновления конфигурации на пользовательском сайте при каждом запуске или по расписанию, и далее обновлять конфигурацию также автоматически. Состояние автоматической проверки обновления в Интернете отражается ссылкой в нижней части окна Помощника обновления конфигурации. Для настройки автоматической проверки обновления в Интернете перейдите по ссылке.

        -

        Обновление конфигурации через Интернет включает несколько шагов:

        -
        • Подключение к пользовательскому сайту; -
          • При первом обновлении с пользовательского сайта необходимо указать Код пользователя и Пароль для доступа. Доступ к получению обновлений имеют только зарегистрированные пользователи программ 1С:Предприятие. По ссылке Как получить код пользователя и пароль перейдите для получения подробной информации о регистрации. Подробная информация о том, как можно получить код пользователя и пароль, содержится в разделе методической поддержки на сайте v8.1c.ru. Код пользователя запоминается автоматически. Включите флажок Запомнить пароль, для того чтобы сохранить пароль в программе. -
          • Если не удалось с этими регистрационными данными получить доступ, выводится соответствующее предупреждение. По ссылке Как оформить подписку на ИТС можно получить информацию об Информационно-технологическом сопровождении (ИТС).
        • Получение информации о наличии обновлений конфигурации; -
          • Если в результате проверки обновление будет обнаружено, можно ознакомиться с его кратким описанием. Выводится информация о доступной версии программы, для сравнения выводится  номер версии текущей конфигурации и текущая версия программы. Перейдите по ссылке Новое в версии, чтобы ознакомиться с изменениями. -
          • Проверяется необходимая версия платформы для новой версии конфигурации. Если версия платформы устарела, то выводится рекомендация перейти на более свежую версию платформы.  -
          • Воспользуйтесь ссылкой Перейти на новую версию платформы, для того чтобы установить новую версию платформы. -
          • Перейдите по ссылке Порядок обновления, для того чтобы уточнить все детали обновления. -
          • Если установлена последняя версия программы, то выводится сообщение, что обновление не требуется.  -
          • Для получения обновления с пользовательского сайта нажмите Далее;
        • Получение файла обновления. -
          • После нажатия на кнопку Далее программа устанавливает соединение с пользовательским сайтом, используя указанные код пользователя и пароль, и получает файл обновления локально на компьютер, который будет сохранен в каталоге шаблонов. -
          • Процесс получения файла обновления с пользовательского сайта может занять продолжительное время. Оно зависит от объема конкретного файла обновления и скорости подключения к сети Интернет. Время загрузки обновлений может увеличиться, если потребуется получить с веб-сайта не одно, а несколько промежуточных обновлений для текущей версии программы. В этом случае все обновления будут последовательно получены и установлены автоматически. Обновление можно выполнить сразу или при следующем запуске помощника.

        В некоторых организациях для соединения с Интернетом используется прокси-сервер. По команде Настройка параметров прокси можно указать параметры прокси-сервера. Так как доступ в сеть осуществляется с клиентского рабочего места, то и настройки прокси-сервера сохраняются для него. В этом случае требуется указать имя пользователя и пароль для доступа на прокси-сервер. Подробную информацию об использовании прокси-сервера можно получить у администратора вашей локальной сети.

        -

        Получение обновлений из файла в локальном или сетевом каталоге

        -

        В случае если файл обновления уже имеется, то следует воспользоваться режимом обновления конфигурации из файла.

        -
        • На первой странице помощника выберите в качестве способа получения обновления вариант Локальный или сетевой каталог. -
        • Нажмите кнопку Далее для перехода к указанию пути к файлу обновления. На следующей странице помощник просит указать, где именно находится файл с обновлениями: -
        • Файл обновления не требуется, так как он уже загружен в основную конфигурацию. -
          • Если файл обновления ранее уже был загружен в основную конфигурацию, и его необходимо применить к конфигурации информационной базы, то следует выбрать этот вариант. Эта возможность может быть востребована, например, при обновлении конфигурации узла распределенной информационной базы.
        • Укажите файл обновления - с помощью кнопки  Выбрать укажите путь к файлу на компьютере. -
          • В качестве файла может быть указан cfu-файл обновления конфигурации или cf-файл поставки конфигурации, например, E:\1Cits\EXE\Migration\1Cv8.cf. -
          • Нажмите Далее, для того чтобы продолжить установку обновлений.
        • После нажатия на кнопку Далее программа получает файл обновления из локального или сетевого каталога, например, с диска 1С:ИТС локально на компьютер.

        Получение файла обновления с диска 1С:ИТС может занять продолжительное время, в зависимости от объема конкретного файла и производительности компьютера.

        -

        Установка обновлений 

        -

        После того, как обновление было получено локально на компьютер, помощник предлагает его установить. 

        -
        • Установка обновления выполняется от имени текущего пользователя. Введите Параметры администрирования информационной базы - Имя пользователя и Пароль, если для доступа к информационной базе необходима авторизация. В случае клиент-серверного варианта работы программы также может потребоваться ввести имя и пароль администратора кластера серверов. -
        • Перед началом обновления версии программы рекомендуется создавать резервную копию информационной базы. Резервная копия используется для автоматического восстановления информационной базы в случае нештатной ситуации. К настройке автоматического создания резервной копии в файловом варианте работы можно перейти по ссылке Создавать временную резервную копию ИБ и выполнять откат при нештатной ситуации. -
          • Если для резервного копирования используются сторонние средства, то можно отключить автоматическое создание резервной копии с помощью ссылки Создавать временную резервную копию ИБ и выполнять откат при нештатной ситуации, расположенной внизу страницы помощника. Создать резервную копию можно и другими средствами, например, путем копирования файла информационной базы. В клиент-серверном варианте работы рекомендуется создать резервную копию самостоятельно средствами SQL-сервера.
        • С помощью переключателя можно уточнить время обновления конфигурации ИБ: -
          • Выполнить установку обновления прямо сейчас - для обновления потребуется перезапуск. -
          • Напомнить при завершении работы. -
          • Запланировать установку обновления на указанное время - в клиент-серверном варианте работы программы есть возможность указать время и дату обновления конфигурации.
        • Прежде чем продолжить обновление конфигурации, необходимо сохранить несохраненные данные или закрыть окна их редактирования. -
        • В клиент-серверном варианте работы программы все соединения будут завершены автоматически, а на время создания резервной копии и обновления конфигурации устанавливается блокировка соединений.  -
        • Для файлового варианта работы необходимо выполнить следующие действия: -
        • Если все указанные условия выполнены, после нажатия кнопки Далее программа автоматически создаст резервную копию ИБ (если это предусмотрено), и обновит конфигурацию. -
        • Процесс обновления программы может занять продолжительное время, в зависимости от производительности компьютера и объема информационной базы. Не выключайте питание компьютера до завершения процесса. -
        • После завершения обновления конфигурации программа будет автоматически запущена и готова к дальнейшей работе. Для базовых версий конфигураций после обновления требуется выполнить первый запуск программы от имени администратора, во время которого будет выполнено завершение процесса обновления конфигурации. -
        • Помощник выводит сообщение об успешном завершении обновления программы. Перейдите по ссылке Новое в этой версии, для того чтобы просмотреть описание изменений программы. Нажмите Готово, для того чтобы приступить к работе в программе. -
        • Если в программе предусмотрено отложенное обновление, выводится предупреждение о необходимости ознакомиться с дополнительными инструкциями для завершения обновления. Перейдите по соответствующей ссылке.

        Планирование обновлений

        -
        • При работе в клиент-серверном варианте работы программы можно задавать отложенное по времени обновление, например, можно отложить обновление конфигурации на ночь. -
        • Для этого при обновлении конфигурации в помощнике выберите с помощью переключателя Запланировать установку обновления на указанное время и укажите время и дату обновления. -
        • Существует возможность настроить отправку отчета на указанный адрес электронной почты об успешном или неуспешном выполнении обновления. Отправка сообщения производится с компьютера, на которой установлен сервер 1С:Предприятие. Для этого включите флажок Выслать отчет на почту, напишите адрес электронной почты.

        Запланированное обновление будет выполнено с клиентского компьютера в фоновом режиме. Питание компьютера должно быть включено в указанную дату и время.

        -

        Проблемы получения и установки обновлений

        -

        На специальной странице помощника Не удалось подключиться к сети Интернет выводится сообщение о невозможности проведения обновления программы.

        -
        • При получении обновлений через Интернет ошибка вида "Ошибка при получении файла с сервера" означает, что соединение с Интернетом отсутствует или заблокировано по ряду причин: -
          • -
            нет подключения к сети Интернет;
            -
          • -
            из-за особенностей Интернет-провайдера (использование разных IP адресов при входе на сайт и при загрузке файла);
            -
          • -
            на веб-узле возникли неполадки;
            -
          • -
            из-за работы установленного брандмауэра (firewall) или антивируса, блокирующего обращение к Интернет-серверу обновлений;
            -
          • -
            из-за особенностей настройки локальной сети (например, при использовании прокси-сервера). С помощью соответствующей кнопки можно Настроить параметры прокси-сервера;
            -
          • -
            другие причины с настройками компьютера, не связанные с корректностью работы Интернет-ресурсов с обновлениями.
        • Для получения технической информации о причинах проблем с получением и установкой обновлений можно воспользоваться следующими средствами: -
          • Записи о произведенных операциях и возникших ошибках в ходе обновления заносятся в Журнал регистрации (тип события «Обновление информационной базы»). Воспользуйтесь ссылкой Перейти в журнал регистрации, для того чтобы просмотреть технические подробности.  -
          • В процессе установки обновления во временной папке текущего пользователя Windows создается лог-файл с записями о ходе обновления (содержимое лог-файла впоследствии автоматически добавляется в Журнал регистрации). Последний из каталогов вида %temp%\1CUpdate.<набор цифр>, отсортированных по алфавиту, соответствует последней сессии обновления.
        -

        Если настройка операционной системы "Язык программ, не поддерживающих Юникод" задана некорректно, то процесс обновления завершится с ошибкой "invalid procedure call or arguments", при этом лог-файл окажется пустым. Для устранения данной ошибки необходимо, чтобы в региональных настройках операционной системы (Панель управления - Язык и региональные стандарты - Дополнительно) в поле Язык программ, не поддерживающих Юникод был выбран русский язык.

        -
          • Результат обновления информационной базы записывается в Журнал событий Windows (Event Log).
        • Если в результате нештатной ситуации при обновлении база оказалась заблокированной, то ее можно разблокировать с помощью консоли Администрирование серверов 1С:Предприятия, либо из командной строки, запустив 1С:Предприятие от имени администратора с ключом РазрешитьРаботуПользователей и указав код разблокировки ПакетноеОбновлениеКонфигурацииИБ. Например:

        "C:\Program Files\1cv82\bin\1cv8.exe"  ENTERPRISE /S"server\base" /N"Администратор" /P"" /WA- /CРазрешитьРаботуПользователей /UCПакетноеОбновлениеКонфигурацииИБ

        -
        • Если обновление конфигурации завершилось неудачей, а во временном log-файле имеется запись: "Исключение в createConnection: Error, Automation server can't create object", то, скорее всего, используется 32-разрядная компонента comcntr.dll на компьютере под управлением 64-разрядной операционной системы. Для устранения данной проблемы необходимо взять 64-разрядную компоненту comcntr.dll из поставки 1С Предприятие x64 Сервер и зарегистрировать ее, запустив из командной строки:

        regsvr32 <каталог 64-разрядного comcntr.dll>\comcntr.dll

        -

        Выяснив причины ошибки, произведите соответствующие настройки компьютера и подключения к Интернет, затем нажмите Далее для повторения попытки.

        -

        См. также:

        - \ No newline at end of file diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/ПоискИУстановкаОбновлений.mdo b/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/ПоискИУстановкаОбновлений.mdo deleted file mode 100644 index f6cd2369f..000000000 --- a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/ПоискИУстановкаОбновлений.mdo +++ /dev/null @@ -1,788 +0,0 @@ - - - - - - - ПоискИУстановкаОбновлений - - ru - Поиск и установка обновлений - - true - DataProcessor.ПоискИУстановкаОбновлений.Form.Форма - true - - - ru - - - - АдресЭлектроннойПочты - - ru - Адрес электронной почты - - - String - - - - ru - Адрес электронной почты для отправки отчета об обновлении - - - - - - ВосстанавливатьИнформационнуюБазу - - ru - Восстанавливать информационную базу - - - Boolean - - - ru - Требуется восстанавливать информационную базу - - - - - - ВыслатьОтчетНаПочту - - ru - Выслать отчет на почту - - - Boolean - - - ru - Включите для отправки отчета на почту - - - - - - ДатаВремяОбновления - - ru - Дата время обновления - - - Date - - - - ru - Дата и время запланированного обновления - - - - - - ЗапомнитьПарольСервераОбновлений - - ru - Запомнить пароль сервера обновлений - - - Boolean - - - ru - Запоминать пароль сервера обновлений - - - - - - ИмяКаталогаРезервнойКопииИБ - - ru - Имя каталога резервной копии ИБ - - - String - - - - ru - Имя каталога резервной копии программы - - - - - - ИмяФайлаОбновления - - ru - Имя файла обновления - - - String - - - - ru - Имя файла с обновлением - - - - - - ИспользоватьРасписаниеДляПроверкиОбновления - - ru - Использовать расписание для проверки обновления - - - Boolean - - - ru - Проверку обновления выполнять по расписанию - - - - - - ИсточникОбновления - - ru - Источник обновления - - - Number - - 1 - true - - - - ru - Выбор источник получения обновления - - - - - - КодЗадачиПланировщика - - ru - Код задачи планировщика - - - Number - - 10 - - - - ru - Внутренний код задачи планировщика - - - - - - КодПользователяСервераОбновлений - - ru - Код пользователя сервера обновлений - - - String - - - - ru - Регистрационный номер пользователя сервера обновлений - - - - - - НуженФайлОбновления - - ru - Нужен файл обновления - - - Number - - 1 - true - - - - ru - Выбор файла поставки обновления - - - - - - ПарольСервераОбновлений - - ru - Пароль сервера обновлений - - - String - - - - ru - Пароль для сервера обновлений - - - - - - ПовторныйЗапуск - - ru - Повторный запуск - - - Boolean - - - ru - Повторный запуск обновления - - - - - - ПроверятьНаличиеОбновленияПриЗапуске - - ru - Проверять наличие обновления при запуске - - - Number - - 1 - true - - - - ru - При запуске проверять наличие обновления - - - - - - РасписаниеПроверкиНаличияОбновления - - ru - Расписание проверки наличия обновления - - - - ru - Настройка расписание проверки наличия обновления - - - - - - РежимОбновления - - ru - Режим обновления - - - Number - - 1 - true - - - - ru - Способ установки обновления - - - - - - РезультатОбновления - - ru - Результат обновления - - - - ru - Информация о результате обновления - - - - - - СоздаватьРезервнуюКопию - - ru - Создавать резервную копию - - 0 - не создавать; 1 - временную; 2 - в указанный каталог - - Number - - 1 - true - - - - ru - Требуется ли создавать резервную копию - - - - - - ТехническаяИнформацияОбОшибке - - ru - Техническая информация об ошибке - - - String - - - - ru - Техническая информация об произошедшей ошибке во время обновления - - true - - - - - - - - - ДоступныеОбновления - - ru - Доступные обновления - - - Use - LineNumber - - Use - - - - - Конфигурация - - ru - Конфигурация - - - String - - - - ru - Имя конфигурации - - - - - - - Поставщик - - ru - Поставщик - - - String - - - - ru - Поставщик обновления - - - - - - - Версия - - ru - Версия - - - String - - - - ru - Номер версии конфигурации - - - - - - - Версия1Разряд - - ru - Версия 1-й разряд - - - Number - - 3 - true - - - - ru - Первый разряд версии конфигурации - - - - - - - Версия2Разряд - - ru - Версия 2-й разряд - - - Number - - 3 - true - - - - ru - Второй разряд версии конфигурации - - - - - - - Версия3Разряд - - ru - Версия 3-й разряд - - - Number - - 3 - true - - - - ru - Третий разряд версии конфигурации - - - - - - - Версия4Разряд - - ru - Версия 4-й разряд - - - Number - - 3 - true - - - - ru - Четвертый разряд версии конфигурации - - - - - - - ВерсияДляОбновления - - ru - Версия для обновления - - - String - - - - ru - Доступная для обновления версия - - - - - - - ПутьКФайлуОбновления - - ru - Путь к файлу обновления - - - String - - - - ru - Расположение файла обновления - - - - - - - ФайлОбновления - - ru - Файл обновления - - - String - - - - ru - Имя файла обновления - - - - - - - РазмерФайлаОбновления - - ru - Размер файла обновления - - - Number - - 15 - true - - - - ru - Размер файла для обновления - - - - - - - ПутьКЛокальномуФайлу - - ru - Путь к локальному файлу - - - String - - - - ru - Путь к локальному файлу на диске - - - - - - - ПутьКЛокальномуФайлуОбновления - - ru - Путь к локальному файлу обновления - - - String - - - - ru - Путь к локальному файлу обновления на диске - - - - - - - ЛокальныйОтносительныйКаталог - - ru - Локальный относительный каталог - - - String - - - - ru - Локальный относительный каталог на диске - - - - - - - НомерДискаИТС - - ru - Номер диска ИТС - - - String - - 255 - - - - ru - Номер диска ИТС с обновлением - - - - - - - ВерсияПлатформы - - ru - Версия платформы - - - String - - - - ru - Минимально необходимая версия платформы - - - - - - - МинимальнаяВерсия - - ru - Минимальная версия - - - String - - - - ru - Минимальная версия для перехода на новую версию - - - - - - - - Форма - - ru - Форма - - PersonalComputer - MobileDevice - - - НастройкаРасписания - - ru - Настройка расписания - - - - ru - - - PersonalComputer - MobileDevice - - - НастройкаРезервнойКопии - - ru - Настройка резервной копии - - - - ru - - - PersonalComputer - MobileDevice - - - Обозреватель - - ru - Обозреватель - - PersonalComputer - MobileDevice - - - МакетФайлаОбновленияКонфигурации - - ru - Макет файла обновления конфигурации - - TextDocument - - - ДопФайлОбновленияКонфигурации - - ru - Доп файл обновления конфигурации - - TextDocument - - - ЗаставкаОбновленияКонфигурации - - ru - Заставка обновления конфигурации - - TextDocument - - - НеинтерактивноеОбновлениеКонфигурации - - ru - Неинтерактивное обновление конфигурации - - TextDocument - - diff --git a/SSL/src/DataProcessors/ПолнотекстовыйПоискВДанных/Forms/Настройки/Module.bsl b/SSL/src/DataProcessors/ПолнотекстовыйПоискВДанных/Forms/Настройки/Module.bsl index 78345bf01..471242a96 100644 --- a/SSL/src/DataProcessors/ПолнотекстовыйПоискВДанных/Forms/Настройки/Module.bsl +++ b/SSL/src/DataProcessors/ПолнотекстовыйПоискВДанных/Forms/Настройки/Module.bsl @@ -25,7 +25,7 @@ &НаКлиенте Процедура ПриОткрытии(Отказ) - // Перейдем к разделу, с которым работали при предыдущих настройках + // Перейдем к разделу, с которым работали при предыдущих настройках. Если Не ПустаяСтрока(ТекущийРаздел) И ИдентификаторСтроки <> 0 Тогда РазделПоиска = ДеревоРазделовПоиска.НайтиПоИдентификатору(ИдентификаторСтроки); Если РазделПоиска = Неопределено Или РазделПоиска.Раздел <> ТекущийРаздел Тогда @@ -180,7 +180,7 @@ СтрокаДерева.Пометка = Истина; КонецЕсли; Иначе - // Если есть путь к разделу, ставим отметку, начиная с корневого + // Если есть путь к разделу, ставим отметку, начиная с корневого. МассивОбластейСПутями = СтрРазделить(Область.Представление, ",", Ложь); СтрокиПоиска = ДеревоОМ.Строки; Для Каждого ОбластьСПутем Из МассивОбластейСПутями Цикл diff --git a/SSL/src/DataProcessors/ПолнотекстовыйПоискВДанных/Forms/УпрощеннаяФорма/Form.form b/SSL/src/DataProcessors/ПолнотекстовыйПоискВДанных/Forms/УпрощеннаяФорма/Form.form index 8d752bda1..2eec937ab 100644 --- a/SSL/src/DataProcessors/ПолнотекстовыйПоискВДанных/Forms/УпрощеннаяФорма/Form.form +++ b/SSL/src/DataProcessors/ПолнотекстовыйПоискВДанных/Forms/УпрощеннаяФорма/Form.form @@ -34,7 +34,8 @@ true Left - true + 20 + 40 true true true diff --git a/SSL/src/DataProcessors/ПолнотекстовыйПоискВДанных/Forms/УпрощеннаяФорма/Module.bsl b/SSL/src/DataProcessors/ПолнотекстовыйПоискВДанных/Forms/УпрощеннаяФорма/Module.bsl index 28cf386de..ab0d985d3 100644 --- a/SSL/src/DataProcessors/ПолнотекстовыйПоискВДанных/Forms/УпрощеннаяФорма/Module.bsl +++ b/SSL/src/DataProcessors/ПолнотекстовыйПоискВДанных/Forms/УпрощеннаяФорма/Module.bsl @@ -8,10 +8,6 @@ Возврат; КонецЕсли; - Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка) Тогда - Возврат; - КонецЕсли; - ИсторияПоиска = ИсторияПоиска(); Если ТипЗнч(ИсторияПоиска) = Тип("Массив") Тогда Элементы.СтрокаПоиска.СписокВыбора.ЗагрузитьЗначения(ИсторияПоиска); diff --git a/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/Forms/Форма/Form.form b/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/Forms/Форма/Form.form index 8fa45dad9..e194e2361 100644 --- a/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/Forms/Форма/Form.form @@ -45,7 +45,6 @@ Label 24 - true true Right @@ -81,7 +80,6 @@ true Label - true true Left @@ -390,7 +388,6 @@ true Label - true true @@ -571,7 +568,6 @@ true Label - true true true false @@ -653,7 +649,6 @@ true Label - true true false @@ -720,9 +715,7 @@ 722 true - 5 true - 2 true @@ -759,7 +752,6 @@ true Label - true 2 true false @@ -1798,7 +1790,6 @@ true Label - true true true false @@ -1882,10 +1873,10 @@ 379 true - 2 true 1 true + 1 false
        @@ -1902,6 +1893,9 @@ ru Статус загрузки неопределено + 2 + 1 + false СтатусЗагрузкиНеопределеноExtendedTooltip 789 @@ -1949,10 +1943,11 @@ 382 true - 2 true + 1 1 true + 1 false
        @@ -1969,6 +1964,9 @@ ru Статус загрузки неопределено + 2 + 1 + false СтатусЗагрузкиУспехExtendedTooltip 791 @@ -2016,7 +2014,6 @@ 385 true - 2 true 1 true @@ -2040,6 +2037,9 @@ ru Статус загрузки неопределено + 2 + 1 + false СтатусЗагрузкиОшибкаExtendedTooltip 793 @@ -2087,7 +2087,6 @@ 388 true - 2 true 1 true @@ -2111,6 +2110,8 @@ ru Статус загрузки неопределено + 2 + false СтатусЗагрузкиПредупреждениеExtendedTooltip 795 @@ -2185,11 +2186,46 @@ Label true + 1 true + 1 Left
        + + ПерейтиВЖурналРегистрацииСобытийЗагрузкиДанныхПодробно + 389 + + <key>ru</key> + <value>Подробно...</value> + + true + true + + true + + false + + ПерейтиВЖурналРегистрацииСобытийЗагрузкиДанныхПодробноExtendedTooltip + 810 + Label + true + true + + Left + + + Hyperlink + Form.Command.ПерейтиВЖурналРегистрацииСобытийЗагрузкиДанных + Normal + Auto + true + 1 + true + UserCmds + Auto + true true @@ -2258,10 +2294,7 @@ 394 true - 2 - true 1 - true false
        @@ -2278,6 +2311,8 @@ ru Статус загрузки неопределено + 2 + 1 СтатусВыгрузкиНеопределеноExtendedTooltip 800 @@ -2325,10 +2360,9 @@ 397 true - 2 - true + 2 1 - true + 1 false
        @@ -2345,6 +2379,8 @@ ru Статус выгрузки успех + 2 + 1 СтатусВыгрузкиУспехExtendedTooltip 802 @@ -2392,10 +2428,6 @@ 400 true - 2 - true - 1 - true false @@ -2416,6 +2448,8 @@ ru Статус загрузки неопределено + 2 + 1 СтатусВыгрузкиОшибкаExtendedTooltip 804 @@ -2463,10 +2497,6 @@ 403 true - 2 - true - 1 - true false @@ -2487,6 +2517,8 @@ ru Статус загрузки неопределено + 2 + 1 СтатусВыгрузкиПредупреждениеExtendedTooltip 806 @@ -2566,6 +2598,38 @@ Left
        + + ПерейтиВЖурналРегистрацииСобытийВыгрузкиДанныхПодробно + 404 + + <key>ru</key> + <value>Подробно...</value> + + true + true + + true + + false + + ПерейтиВЖурналРегистрацииСобытийВыгрузкиДанныхПодробноExtendedTooltip + 811 + Label + true + true + + Left + + + Hyperlink + Form.Command.ПерейтиВЖурналРегистрацииСобытийВыгрузкиДанных + Normal + Auto + true + true + UserCmds + Auto + true true @@ -2631,98 +2695,6 @@ Auto - - Группа14 - 580 - - ПерейтиВЖурналРегистрацииСобытийЗагрузкиДанныхПодробно - 389 - - <key>ru</key> - <value>Подробно...</value> - - true - true - - true - - false - - ПерейтиВЖурналРегистрацииСобытийЗагрузкиДанныхПодробноExtendedTooltip - 810 - Label - true - true - - Left - - - Hyperlink - Form.Command.ПерейтиВЖурналРегистрацииСобытийЗагрузкиДанных - Normal - Auto - true - true - UserCmds - Auto - - - ПерейтиВЖурналРегистрацииСобытийВыгрузкиДанныхПодробно - 404 - - <key>ru</key> - <value>Подробно...</value> - - true - true - - true - - false - - ПерейтиВЖурналРегистрацииСобытийВыгрузкиДанныхПодробноExtendedTooltip - 811 - Label - true - true - - Left - - - Hyperlink - Form.Command.ПерейтиВЖурналРегистрацииСобытийВыгрузкиДанных - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - Группа14ExtendedTooltip - 809 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - true true @@ -2789,9 +2761,7 @@ 340 true - 5 true - 2 true false @@ -2857,7 +2827,6 @@ true Label - true 2 true false @@ -3018,7 +2987,6 @@ true Label - true 3 true true @@ -3183,7 +3151,6 @@ true Label - true true Style.ПоясняющийТекст @@ -3368,7 +3335,6 @@ true Label - true true Style.ПоясняющийТекст @@ -3380,43 +3346,13 @@ Группа7 600 - - Декорация11 - 598 - - <key>ru</key> - <value>За период:</value> - - true - true - - true - - - Декорация11ExtendedTooltip - 835 - Label - true - true - - Left - - - - Декорация11КонтекстноеМеню - 599 - true - - Label - true - true - - Left - - ДополнениеВыгрузкиОбщийПериодДокументов 550 + + <key>ru</key> + <value>За период</value> + true true @@ -3425,7 +3361,7 @@ ДополнениеВыгрузки.ПериодОтбораВсехДокументов - None + Left ДополнениеВыгрузкиОбщийПериодДокументовExtendedTooltip 836 @@ -3518,7 +3454,6 @@ true Label - true true Left @@ -3589,7 +3524,6 @@ true - true Группа8ExtendedTooltip 837 @@ -3614,7 +3548,6 @@ true - false Группа9ExtendedTooltip 832 @@ -3816,7 +3749,6 @@ true Label - true true Style.ПоясняющийТекст @@ -3911,7 +3843,6 @@ true Label - true true Left @@ -3981,7 +3912,6 @@ true - true Группа10ExtendedTooltip 849 @@ -4147,7 +4077,6 @@ true Label - true true Left @@ -4218,7 +4147,6 @@ true Label - true true Style.ПоясняющийТекст @@ -4233,43 +4161,13 @@ ГруппаПериодВыгрузкиСценарийУзла 634 - - Декорация16 - 635 - - <key>ru</key> - <value>За период:</value> - - true - true - - true - - - Декорация16ExtendedTooltip - 861 - Label - true - true - - Left - - - - Декорация16КонтекстноеМеню - 636 - true - - Label - true - true - - Left - - ДополнениеВыгрузкиПериодОтбораСценарияУзла 648 + + <key>ru</key> + <value>За период</value> + true true @@ -4278,7 +4176,7 @@ ДополнениеВыгрузки.ПериодОтбораСценарияУзла - None + Left OnChange ДополнениеВыгрузкиПериодОтбораСценарияУзлаПриИзменении @@ -4329,11 +4227,6 @@ ru Группа период выгрузки сценарий узла - - ru - Группа период выгрузки сценарий узла - - false ГруппаПериодВыгрузкиСценарийУзлаExtendedTooltip 860 @@ -4702,7 +4595,6 @@ true Label - true true Left @@ -4794,10 +4686,9 @@ true Label - true 1 true - false + true Left Bottom @@ -4816,7 +4707,6 @@ ru Страница вопрос о составе выгрузки - true СтраницаВопросОСоставеВыгрузкиExtendedTooltip 820 @@ -4866,9 +4756,7 @@ 701 true - 8 true - 3 true false @@ -4942,7 +4830,6 @@ true Label - true 3 true false @@ -5084,9 +4971,7 @@ 692 true - 8 true - 3 true false @@ -5160,7 +5045,6 @@ true Label - true 3 true false @@ -5296,9 +5180,7 @@ 920 true - 4 true - 2 true @@ -5330,7 +5212,6 @@ true Label - true true Left @@ -5391,7 +5272,6 @@ true Label - true true false @@ -5478,7 +5358,6 @@ Left true - true true @@ -5581,7 +5460,6 @@ true Label - true true false @@ -5668,7 +5546,6 @@ Left true - true true @@ -6453,7 +6330,6 @@ Retry SaveValues Yes - 70 LockOwner true true @@ -7386,24 +7262,6 @@ true - - ДлительнаяОперацияСтрокаСообщенияОбОшибке - - <key>ru</key> - <value>Длительная операция строка сообщения об ошибке</value> - - 28 - - String - - - - true - - - true - - ДополнениеВыгрузки @@ -7731,6 +7589,39 @@ <common>true</common> </edit> </attributes> + <attributes> + <name>СообщениеОбОшибке</name> + <title> + <key>ru</key> + <value>Сообщение об ошибке</value> + + 48 + + String + + + + true + + + true + + + + РезультатВыполненияФоновогоЗадания + + <key>ru</key> + <value>Результат выполнения фонового задания</value> + + 49 + + + true + + + true + + ОбновитьИнформациюСопоставленияПолностью diff --git a/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/Forms/Форма/Module.bsl index 216351daa..8504c18b6 100644 --- a/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/Forms/Форма/Module.bsl @@ -74,7 +74,7 @@ КонецЕсли; - МассивУзлов = ОбменДаннымиПовтИсп.ПолучитьМассивУзловПланаОбмена(Объект.ИмяПланаОбмена); + МассивУзлов = ОбменДаннымиПовтИсп.УзлыПланаОбмена(Объект.ИмяПланаОбмена); // Проверяем настройку обмена на соответствие фильтру. Если МассивУзлов.Найти(Объект.УзелИнформационнойБазы) = Неопределено Тогда @@ -97,8 +97,8 @@ КонецЕсли; - ПолучитьДанные = Истина; - ОтправитьДанные = Истина; + ПолучитьДанные = Истина; + ОтправитьДанные = Истина; ПроверятьРасхождениеВерсий = Истина; Если Параметры.Свойство("ПолучитьДанные") Тогда @@ -113,8 +113,6 @@ Параметры.Свойство("ВыполнитьСопоставлениеПриОткрытии", ВыполнитьСопоставлениеПриОткрытии); ВариантРаботыМастера = "ВыполнитьСопоставление"; - СобытиеЖурналаРегистрацииЗагрузкаДанных = ОбменДаннымиСервер.ПолучитьКлючСообщенияЖурналаРегистрации(Объект.УзелИнформационнойБазы, Перечисления.ДействияПриОбмене.ЗагрузкаДанных); - Заголовок = СтрЗаменить(Заголовок, "%1", Объект.УзелИнформационнойБазы); // Дополнение выгрузки @@ -175,27 +173,29 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) + Если ЗакрытьФормуБезусловно Тогда Возврат; КонецЕсли; ТекущаяСтраница = Элементы.ПанельОсновная.ТекущаяСтраница; - Если ТекущаяСтраница = Элементы.СтраницаНачала Тогда ТекстПодтверждения = НСтр("ru='Отменить синхронизацию данных?'"); - Иначе ТекстПодтверждения = НСтр("ru='Прервать синхронизацию данных?'"); - КонецЕсли; - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(ЭтотОбъект, Отказ, ТекстПодтверждения, - "ЗакрытьФормуБезусловно"); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(ЭтотОбъект, Отказ, ЗавершениеРаботы, + ТекстПодтверждения, "ЗакрытьФормуБезусловно"); + КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; Если ДлительнаяОперация Тогда ЗавершитьВыполнениеДлительнойОперации(ИдентификаторЗадания); КонецЕсли; @@ -354,13 +354,6 @@ //////////////////////////////////////////////////////////////////////////////// // Страница СтраницаНачала -&НаКлиенте -Процедура ВыполнитьПереходДалее() - - ИзменитьПорядковыйНомерПерехода(+1); - -КонецПроцедуры - &НаКлиенте Процедура ОткрытьКаталогОбменаИнформацией(Команда) @@ -571,10 +564,348 @@ #Область СлужебныеПроцедурыИФункции -&НаСервере -Процедура УстановитьШрифтЗаголовкаГруппы(Знач ЭлементГруппы) +//////////////////////////////////////////////////////////////////////////////// +// ПОСТАВЛЯЕМАЯ ЧАСТЬ +//////////////////////////////////////////////////////////////////////////////// + +#Область ПоставляемаяЧасть + +&НаКлиенте +Функция ПолучитьКнопкуФормыПоИмениКоманды(ЭлементФормы, ИмяКоманды) - ЭлементГруппы.ШрифтЗаголовка = Новый Шрифт(ШрифтыСтиля.КрупныйШрифтТекста, , , Истина); + Для Каждого Элемент Из ЭлементФормы.ПодчиненныеЭлементы Цикл + + Если ТипЗнч(Элемент) = Тип("ГруппаФормы") Тогда + + ЭлементФормыПоИмениКоманды = ПолучитьКнопкуФормыПоИмениКоманды(Элемент, ИмяКоманды); + + Если ЭлементФормыПоИмениКоманды <> Неопределено Тогда + + Возврат ЭлементФормыПоИмениКоманды; + + КонецЕсли; + + ИначеЕсли ТипЗнч(Элемент) = Тип("КнопкаФормы") + И Элемент.ИмяКоманды = ИмяКоманды Тогда + + Возврат Элемент; + + Иначе + + Продолжить; + + КонецЕсли; + + КонецЦикла; + + Возврат Неопределено; + +КонецФункции + +&НаКлиенте +Процедура ВыполнитьПереходДалее() + + ИзменитьПорядковыйНомерПерехода(+1); + +КонецПроцедуры + +&НаКлиенте +Процедура ИзменитьПорядковыйНомерПерехода(Итератор) + + ОчиститьСообщения(); + + УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода + Итератор); + +КонецПроцедуры + +&НаКлиенте +Процедура УстановитьПорядковыйНомерПерехода(Знач Значение) + + ЭтоПереходДалее = (Значение > ПорядковыйНомерПерехода); + + ПорядковыйНомерПерехода = Значение; + + Если ПорядковыйНомерПерехода < 0 Тогда + + ПорядковыйНомерПерехода = 0; + + КонецЕсли; + + ПорядковыйНомерПереходаПриИзменении(ЭтоПереходДалее); + +КонецПроцедуры + +&НаКлиенте +Процедура ПорядковыйНомерПереходаПриИзменении(Знач ЭтоПереходДалее) + + // Выполняем обработчики событий перехода. + ВыполнитьОбработчикиСобытийПерехода(ЭтоПереходДалее); + + // Устанавливаем отображение страниц. + СтрокиПереходаТекущие = ТаблицаПереходов.НайтиСтроки(Новый Структура("ПорядковыйНомерПерехода", ПорядковыйНомерПерехода)); + + Если СтрокиПереходаТекущие.Количество() = 0 Тогда + ВызватьИсключение НСтр("ru = 'Не определена страница для отображения.'"); + КонецЕсли; + + СтрокаПереходаТекущая = СтрокиПереходаТекущие[0]; + + Элементы.ПанельОсновная.ТекущаяСтраница = Элементы[СтрокаПереходаТекущая.ИмяОсновнойСтраницы]; + Элементы.ПанельНавигации.ТекущаяСтраница = Элементы[СтрокаПереходаТекущая.ИмяСтраницыНавигации]; + + // Устанавливаем текущую кнопку по умолчанию. + КнопкаДалее = ПолучитьКнопкуФормыПоИмениКоманды(Элементы.ПанельНавигации.ТекущаяСтраница, "КомандаДалее"); + + Если КнопкаДалее <> Неопределено Тогда + + КнопкаДалее.КнопкаПоУмолчанию = Истина; + + Иначе + + КнопкаГотово = ПолучитьКнопкуФормыПоИмениКоманды(Элементы.ПанельНавигации.ТекущаяСтраница, "КомандаГотово"); + + Если КнопкаГотово <> Неопределено Тогда + + КнопкаГотово.КнопкаПоУмолчанию = Истина; + + КонецЕсли; + + КонецЕсли; + + Если ЭтоПереходДалее И СтрокаПереходаТекущая.ДлительнаяОперация Тогда + + ПодключитьОбработчикОжидания("ВыполнитьОбработчикДлительнойОперации", 0.1, Истина); + + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ВыполнитьОбработчикиСобытийПерехода(Знач ЭтоПереходДалее) + + // Обработчики событий переходов. + Если ЭтоПереходДалее Тогда + + СтрокиПерехода = ТаблицаПереходов.НайтиСтроки(Новый Структура("ПорядковыйНомерПерехода", ПорядковыйНомерПерехода - 1)); + + Если СтрокиПерехода.Количество() = 0 Тогда + Возврат; + КонецЕсли; + + СтрокаПерехода = СтрокиПерехода[0]; + + // Обработчик ПриПереходеДалее. + Если Не ПустаяСтрока(СтрокаПерехода.ИмяОбработчикаПриПереходеДалее) + И Не СтрокаПерехода.ДлительнаяОперация Тогда + + ИмяПроцедуры = "Подключаемый_[ИмяОбработчика](Отказ)"; + ИмяПроцедуры = СтрЗаменить(ИмяПроцедуры, "[ИмяОбработчика]", СтрокаПерехода.ИмяОбработчикаПриПереходеДалее); + + Отказ = Ложь; + + РезультатВычисления = Вычислить(ИмяПроцедуры); + + Если Отказ Тогда + + УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода - 1); + + Возврат; + + КонецЕсли; + + КонецЕсли; + + Иначе + + СтрокиПерехода = ТаблицаПереходов.НайтиСтроки(Новый Структура("ПорядковыйНомерПерехода", ПорядковыйНомерПерехода + 1)); + + Если СтрокиПерехода.Количество() = 0 Тогда + Возврат; + КонецЕсли; + + КонецЕсли; + + СтрокиПереходаТекущие = ТаблицаПереходов.НайтиСтроки(Новый Структура("ПорядковыйНомерПерехода", ПорядковыйНомерПерехода)); + + Если СтрокиПереходаТекущие.Количество() = 0 Тогда + ВызватьИсключение НСтр("ru = 'Не определена страница для отображения.'"); + КонецЕсли; + + СтрокаПереходаТекущая = СтрокиПереходаТекущие[0]; + + Если СтрокаПереходаТекущая.ДлительнаяОперация И Не ЭтоПереходДалее Тогда + + УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода - 1); + Возврат; + КонецЕсли; + + // обработчик ПриОткрытии + Если Не ПустаяСтрока(СтрокаПереходаТекущая.ИмяОбработчикаПриОткрытии) Тогда + + ИмяПроцедуры = "Подключаемый_[ИмяОбработчика](Отказ, ПропуститьСтраницу, ЭтоПереходДалее)"; + ИмяПроцедуры = СтрЗаменить(ИмяПроцедуры, "[ИмяОбработчика]", СтрокаПереходаТекущая.ИмяОбработчикаПриОткрытии); + + Отказ = Ложь; + ПропуститьСтраницу = Ложь; + + РезультатВычисления = Вычислить(ИмяПроцедуры); + + Если Отказ Тогда + + УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода - 1); + + Возврат; + + ИначеЕсли ПропуститьСтраницу Тогда + + Если ЭтоПереходДалее Тогда + + УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода + 1); + + Возврат; + + Иначе + + УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода - 1); + + Возврат; + + КонецЕсли; + + КонецЕсли; + + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ВыполнитьОбработчикДлительнойОперации() + + СтрокиПереходаТекущие = ТаблицаПереходов.НайтиСтроки(Новый Структура("ПорядковыйНомерПерехода", ПорядковыйНомерПерехода)); + + Если СтрокиПереходаТекущие.Количество() = 0 Тогда + ВызватьИсключение НСтр("ru = 'Не определена страница для отображения.'"); + КонецЕсли; + + СтрокаПереходаТекущая = СтрокиПереходаТекущие[0]; + + // Обработчик ОбработкаДлительнойОперации. + Если Не ПустаяСтрока(СтрокаПереходаТекущая.ИмяОбработчикаДлительнойОперации) Тогда + + ИмяПроцедуры = "Подключаемый_[ИмяОбработчика](Отказ, ПерейтиДалее)"; + ИмяПроцедуры = СтрЗаменить(ИмяПроцедуры, "[ИмяОбработчика]", СтрокаПереходаТекущая.ИмяОбработчикаДлительнойОперации); + + Отказ = Ложь; + ПерейтиДалее = Истина; + + РезультатВычисления = Вычислить(ИмяПроцедуры); + + Если Отказ Тогда + + Если ОшибкаРасхожденияВерсийПриПолученииДанных <> Неопределено + И ОшибкаРасхожденияВерсийПриПолученииДанных.ЕстьОшибка Тогда + + ОбработатьОшибкуРасхожденияВерсий(); + Возврат; + + КонецЕсли; + + УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода - 1); + + Возврат; + + ИначеЕсли ПерейтиДалее Тогда + + УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода + 1); + + Возврат; + + КонецЕсли; + + Иначе + + УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода + 1); + + Возврат; + + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура ТаблицаПереходовНоваяСтрока( + ПорядковыйНомерПерехода, + ИмяОсновнойСтраницы, + ИмяСтраницыНавигации, + ИмяОбработчикаПриОткрытии = "", + ИмяОбработчикаПриПереходеДалее = "") + + НоваяСтрока = ТаблицаПереходов.Добавить(); + + НоваяСтрока.ПорядковыйНомерПерехода = ПорядковыйНомерПерехода; + НоваяСтрока.ИмяОсновнойСтраницы = ИмяОсновнойСтраницы; + НоваяСтрока.ИмяСтраницыНавигации = ИмяСтраницыНавигации; + + НоваяСтрока.ИмяОбработчикаПриПереходеДалее = ИмяОбработчикаПриПереходеДалее; + НоваяСтрока.ИмяОбработчикаПриОткрытии = ИмяОбработчикаПриОткрытии; + + НоваяСтрока.ДлительнаяОперация = Ложь; + НоваяСтрока.ИмяОбработчикаДлительнойОперации = ""; + +КонецПроцедуры + +&НаСервере +Процедура ТаблицаПереходовНоваяСтрокаДлительнаяОперация( + ПорядковыйНомерПерехода, + ИмяОсновнойСтраницы, + ИмяСтраницыНавигации, + ДлительнаяОперация = Ложь, + ИмяОбработчикаДлительнойОперации = "", + ИмяОбработчикаПриОткрытии = "") + + НоваяСтрока = ТаблицаПереходов.Добавить(); + + НоваяСтрока.ПорядковыйНомерПерехода = ПорядковыйНомерПерехода; + НоваяСтрока.ИмяОсновнойСтраницы = ИмяОсновнойСтраницы; + НоваяСтрока.ИмяСтраницыНавигации = ИмяСтраницыНавигации; + + НоваяСтрока.ИмяОбработчикаПриПереходеДалее = ""; + НоваяСтрока.ИмяОбработчикаПриОткрытии = ИмяОбработчикаПриОткрытии; + + НоваяСтрока.ДлительнаяОперация = ДлительнаяОперация; + НоваяСтрока.ИмяОбработчикаДлительнойОперации = ИмяОбработчикаДлительнойОперации; + +КонецПроцедуры + +#КонецОбласти + +//////////////////////////////////////////////////////////////////////////////// +// ПЕРЕОПРЕДЕЛЯЕМАЯ ЧАСТЬ +//////////////////////////////////////////////////////////////////////////////// + +#Область ПереопределяемаяЧасть + +//////////////////////////////////////////////////////////////////////////////// +// РАЗДЕЛ ПРОЦЕДУРЫ И ФУНКЦИИ + +#Область ПроцедурыИФункцииОбработки + +#Область ПроцедурыИФункцииКлиент + +&НаКлиенте +Процедура ИнициализироватьПеременныеОбработки() + + // Инициализация переменных обработки + ПроцентВыполнения = 0; + ИдентификаторФайла = ""; + ДопИнформацияВыполнение = ""; + АдресВременногоХранилища = ""; + СообщениеОбОшибке = ""; + ИдентификаторОперации = ""; + ДлительнаяОперация = Ложь; + ДлительнаяОперацияЗавершена = Истина; + ДлительнаяОперацияЗавершенаСОшибкой = Ложь; + ИдентификаторЗадания = Неопределено; КонецПроцедуры @@ -584,7 +915,7 @@ ОбновитьСтраницыНастроекТранспорта(); КонецПроцедуры - + &НаКлиенте Процедура ДополнениеВыгрузкиИсторияОтборовЗавершение(Ответ, ПредставлениеНастройки) Экспорт @@ -768,6 +1099,31 @@ КонецПроцедуры +&НаКлиенте +Процедура ОбработатьОшибкуРасхожденияВерсий() + + Элементы.ПанельОсновная.ТекущаяСтраница = Элементы.СтраницаОшибкаРасхожденияВерсий; + Элементы.ПанельНавигации.ТекущаяСтраница = Элементы.СтраницаНавигацииОшибкаРасхожденияВерсий; + Элементы.ПродолжитьСинхронизацию.КнопкаПоУмолчанию = Истина; + Элементы.ДекорацияОшибкаРасхожденияВерсий.Заголовок = ОшибкаРасхожденияВерсийПриПолученииДанных.ТекстОшибки; + + ОшибкаРасхожденияВерсийПриПолученииДанных = Неопределено; + + ПроверятьРасхождениеВерсий = Ложь; + +КонецПроцедуры + +#КонецОбласти + +#Область ПроцедурыИФункцииСервер + +&НаСервере +Процедура УстановитьШрифтЗаголовкаГруппы(Знач ЭлементГруппы) + + ЭлементГруппы.ШрифтЗаголовка = Новый Шрифт(ШрифтыСтиля.КрупныйШрифтТекста, , , Истина); + +КонецПроцедуры + &НаСервере Процедура ОбновитьИнформациюСопоставленияПоСтрокеНаСервере(Отказ, КлючиСтрок) @@ -780,7 +1136,7 @@ ЗначениеВРеквизитФормы(ОбработкаОбъект, "Объект"); - ПолучитьДеревоИнформацииСтатистики(ОбработкаОбъект.ТаблицаИнформацииСтатистики()); + ИнформацияСтатистики(ОбработкаОбъект.ТаблицаИнформацииСтатистики()); ВсеДанныеСопоставлены = Обработки.ПомощникИнтерактивногоОбменаДанными.ВсеДанныеСопоставлены(ОбработкаОбъект.ТаблицаИнформацииСтатистики()); @@ -803,7 +1159,7 @@ ЗначениеВРеквизитФормы(ОбработкаОбъект, "Объект"); - ПолучитьДеревоИнформацииСтатистики(ОбработкаОбъект.ТаблицаИнформацииСтатистики()); + ИнформацияСтатистики(ОбработкаОбъект.ТаблицаИнформацииСтатистики()); ВсеДанныеСопоставлены = Обработки.ПомощникИнтерактивногоОбменаДанными.ВсеДанныеСопоставлены(ОбработкаОбъект.ТаблицаИнформацииСтатистики()); @@ -826,7 +1182,7 @@ КонецПроцедуры &НаСервере -Процедура ПолучитьДеревоИнформацииСтатистики(ИнформацияСтатистики) +Процедура ИнформацияСтатистики(ИнформацияСтатистики) КоллекцияЭлементовДерева = ДеревоИнформацииСтатистики.ПолучитьЭлементы(); КоллекцияЭлементовДерева.Очистить(); @@ -980,106 +1336,6 @@ КонецФункции -&НаСервереБезКонтекста -Процедура ПолучитьСостоянияОбменовДанными(РезультатЗагрузкиДанных, РезультатВыгрузкиДанных, Знач УзелИнформационнойБазы) - - СостоянияОбменовДанными = ОбменДаннымиСервер.СостоянияОбменовДаннымиДляУзлаИнформационнойБазы(УзелИнформационнойБазы); - - РезультатЗагрузкиДанных = СостоянияОбменовДанными["РезультатЗагрузкиДанных"]; - Если ПустаяСтрока(РезультатВыгрузкиДанных) Тогда - РезультатВыгрузкиДанных = СостоянияОбменовДанными["РезультатВыгрузкиДанных"]; - КонецЕсли; - -КонецПроцедуры - -&НаСервереБезКонтекста -Процедура УдалитьВременныйКаталогСообщенийОбмена(ИмяВременногоКаталога) - - Если Не ПустаяСтрока(ИмяВременногоКаталога) Тогда - - Попытка - УдалитьФайлы(ИмяВременногоКаталога); - ИмяВременногоКаталога = ""; - Исключение - ЗаписьЖурналаРегистрации(НСтр("ru = 'Обмен данными'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - КонецПопытки; - - КонецЕсли; - -КонецПроцедуры - -&НаСервереБезКонтекста -Процедура ЗавершитьВыполнениеДлительнойОперации(ИдентификаторЗадания) - ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторЗадания); -КонецПроцедуры - -&НаСервереБезКонтекста -Процедура ЗаписатьОшибкуВЖурналРегистрации(СтрокаСообщенияОбОшибке, Событие) - - ЗаписьЖурналаРегистрации(Событие, УровеньЖурналаРегистрации.Ошибка,,, СтрокаСообщенияОбОшибке); - -КонецПроцедуры - -&НаСервереБезКонтекста -Функция ПолучитьИмяКаталогаНаСервере(ВидТранспортаСообщенийОбмена, УзелИнформационнойБазы) - - Возврат РегистрыСведений.НастройкиТранспортаОбмена.ИмяКаталогаОбменаИнформацией(ВидТранспортаСообщенийОбмена, УзелИнформационнойБазы); - -КонецФункции - -&НаСервереБезКонтекста -Функция УзелИнформационнойБазыИспользуетсяВСценарииОбмена(УзелИнформационнойБазы) - - ТекстЗапроса = " - |ВЫБРАТЬ ПЕРВЫЕ 1 1 - |ИЗ - | Справочник.СценарииОбменовДанными.НастройкиОбмена КАК СценарииОбменовДаннымиНастройкиОбмена - |ГДЕ - | СценарииОбменовДаннымиНастройкиОбмена.УзелИнформационнойБазы = &УзелИнформационнойБазы - | И НЕ СценарииОбменовДаннымиНастройкиОбмена.Ссылка.ПометкаУдаления - |"; - - Запрос = Новый Запрос; - Запрос.УстановитьПараметр("УзелИнформационнойБазы", УзелИнформационнойБазы); - Запрос.Текст = ТекстЗапроса; - - Возврат Не Запрос.Выполнить().Пустой(); - -КонецФункции - -&НаСервере -Процедура ВыполнитьОбменДаннымиДляУзлаИнформационнойБазыНаСервере(Отказ) - - ДатаНачалаОперации = ТекущаяДатаСеанса(); - - // Сохраняем настройки дополнения выгрузки. - ОбменДаннымиСервер.ИнтерактивноеИзменениеВыгрузкиСохранитьНастройки(ДополнениеВыгрузки, - ОбменДаннымиСервер.ДополнениеВыгрузкиИмяАвтоСохраненияНастроек()); - - // Дополнительно регистрируем данные. - ОбменДаннымиСервер.ИнтерактивноеИзменениеВыгрузкиЗарегистрироватьДополнительныеДанные(ДополнениеВыгрузки); - - ПараметрыОбмена = ОбменДаннымиСервер.ПараметрыОбмена(); - ПараметрыОбмена.ВидТранспортаСообщенийОбмена = Объект.ВидТранспортаСообщенийОбмена; - ПараметрыОбмена.ВыполнятьЗагрузку = Ложь; - ПараметрыОбмена.ВыполнятьВыгрузку = Истина; - - ПараметрыОбмена.ДлительнаяОперацияРазрешена = Истина; - ПараметрыОбмена.ДлительнаяОперация = ДлительнаяОперация; - ПараметрыОбмена.ИдентификаторОперации = ИдентификаторОперации; - ПараметрыОбмена.ИдентификаторФайла = ИдентификаторФайла; - ПараметрыОбмена.ПараметрыАутентификации = WSПароль; - - ОбменДаннымиСервер.ВыполнитьОбменДаннымиДляУзлаИнформационнойБазы(Объект.УзелИнформационнойБазы, ПараметрыОбмена, Отказ); - - ДлительнаяОперация = ПараметрыОбмена.ДлительнаяОперация; - ИдентификаторОперации = ПараметрыОбмена.ИдентификаторОперации; - ИдентификаторФайла = ПараметрыОбмена.ИдентификаторФайла; - WSПароль = ПараметрыОбмена.ПараметрыАутентификации; - -КонецПроцедуры - &НаСервере Процедура ОбновитьСтраницыНастроекТранспорта() @@ -1136,450 +1392,39 @@ КонецЕсли; КонецПроцедуры -&НаКлиенте -Процедура ОбработатьОшибкуРасхожденияВерсий() - - Элементы.ПанельОсновная.ТекущаяСтраница = Элементы.СтраницаОшибкаРасхожденияВерсий; - Элементы.ПанельНавигации.ТекущаяСтраница = Элементы.СтраницаНавигацииОшибкаРасхожденияВерсий; - Элементы.ПродолжитьСинхронизацию.КнопкаПоУмолчанию = Истина; - Элементы.ДекорацияОшибкаРасхожденияВерсий.Заголовок = ОшибкаРасхожденияВерсийПриПолученииДанных.ТекстОшибки; - ОшибкаРасхожденияВерсийПриПолученииДанных = Неопределено; - ПроверятьРасхождениеВерсий = Ложь; - -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Обработчики ожидания - -&НаКлиенте -Процедура ОбработчикОжиданияДлительнойОперации() - - ДлительнаяОперацияЗавершенаСОшибкой = Ложь; - ДлительнаяОперацияСтрокаСообщенияОбОшибке = ""; - - СостояниеОперации = ОбменДаннымиВызовСервера.СостояниеДлительнойОперации(ИдентификаторОперации, - WSURLВебСервиса, - WSИмяПользователя, - WSПароль, - ДлительнаяОперацияСтрокаСообщенияОбОшибке); - - Если СостояниеОперации = "Active" Тогда - - ПодключитьОбработчикОжидания("ОбработчикОжиданияДлительнойОперации", 5, Истина); - - Иначе - - Если СостояниеОперации <> "Completed" Тогда - - ДлительнаяОперацияЗавершенаСОшибкой = Истина; - - КонецЕсли; - - ДлительнаяОперация = Ложь; - ДлительнаяОперацияЗавершена = Истина; - - ВыполнитьПереходДалее(); - - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ОбработчикОжиданияФоновогоЗадания() - - ДлительнаяОперацияЗавершенаСОшибкой = Ложь; - - Состояние = ОбменДаннымиВызовСервера.СостояниеЗадания(ИдентификаторЗадания); - ОтображаетсяПрогрессБар = Элементы.ПанельОсновная.ТекущаяСтраница = Элементы.СтраницаОжиданияСинхронизацииДанныхПрогрессБарЗагрузка - ИЛИ Элементы.ПанельОсновная.ТекущаяСтраница = Элементы.СтраницаОжиданияСинхронизацииДанныхПрогрессБарВыгрузка; - Если Состояние = "Активно" Тогда - Если ИспользоватьПрогрессБар И ОтображаетсяПрогрессБар Тогда - ФоновоеЗаданиеПрочитатьПромежуточныйРезультат(); - КонецЕсли; - ПодключитьОбработчикОжидания("ОбработчикОжиданияФоновогоЗадания", 2, Истина); - - Иначе // Завершено, ЗавершеноАварийно - - Если Состояние <> "Завершено" Тогда - - ДлительнаяОперацияЗавершенаСОшибкой = Истина; - Иначе - // Чтение результата завершения. - Результат = Новый Структура("Отказ", Ложь); - ФоновоеЗаданиеЗагрузитьРезультат(Результат); - ДлительнаяОперацияЗавершенаСОшибкой = Результат.Отказ; - КонецЕсли; - - ДлительнаяОперация = Ложь; - ДлительнаяОперацияЗавершена = Истина; - ПрочитатьСообщенияПользователю(); - Если ЗакрытьФормуБезусловно Тогда - ЭтотОбъект.Закрыть(); - КонецЕсли; - Если ИспользоватьПрогрессБар И ОтображаетсяПрогрессБар Тогда - ПроцентВыполнения = 100; - ДопИнформацияВыполнение = ""; - // Переход далее с задержкой 1 сек. - ПодключитьОбработчикОжидания("ЗапуститьПереходДалее", 1, Истина); - Иначе - ВыполнитьПереходДалее(); - КонецЕсли; - - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ЗапуститьПереходДалее() - ВыполнитьПереходДалее(); -КонецПроцедуры - &НаСервере -Процедура ПрочитатьСообщенияПользователю() - Задание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(ИдентификаторЗадания); - Если Задание = Неопределено Тогда - Возврат; - КонецЕсли; - МассивСообщений = Задание.ПолучитьСообщенияПользователю(Истина); - +Процедура ПроверкаНеобходимостиПереходаНаНовыйОбмен() + + МассивСообщений = ПолучитьСообщенияПользователю(Истина); + Если МассивСообщений = Неопределено Тогда Возврат; КонецЕсли; + Количество = МассивСообщений.Количество(); Если Количество = 0 Тогда Возврат; КонецЕсли; - Сообщение = МассивСообщений[Количество-1]; + Сообщение = МассивСообщений[Количество-1]; ТекстСообщения = Сообщение.Текст; + // При необходимости из сообщения удаляется идентификатор подсистемы. Если СтрНачинаетсяС(ТекстСообщения, "{ВыполненПереходНаНовыйОбмен}") Тогда - - Результат = ОбщегоНазначения.ЗначениеИзСтрокиXML(ТекстСообщения); - Если Результат <> Неопределено - И ТипЗнч(Результат) = Тип("Структура") Тогда + + ДанныеСообщения = ОбщегоНазначения.ЗначениеИзСтрокиXML(ТекстСообщения); + + Если ДанныеСообщения <> Неопределено + И ТипЗнч(ДанныеСообщения) = Тип("Структура") Тогда - ИмяПланаОбмена = Результат.ИмяПланаОбменаДляПереходаНаНовыйОбмен; - КодУзлаПланаОбмена = Результат.Код; + ИмяПланаОбмена = ДанныеСообщения.ИмяПланаОбменаДляПереходаНаНовыйОбмен; + КодУзлаПланаОбмена = ДанныеСообщения.Код; НоваяНастройкаСинхронизацииДанных = ПланыОбмена[ИмяПланаОбмена].НайтиПоКоду(КодУзлаПланаОбмена); - ПараметрыПовторногоОткрытияФормы = Новый Структура("НоваяНастройкаСинхронизацииДанных", - НоваяНастройкаСинхронизацииДанных); - ЗакрытьФормуБезусловно = Истина; - КонецЕсли; - КонецЕсли; -КонецПроцедуры - - -&НаКлиенте -Процедура ВыполнитьОбработчикДлительнойОперации() - - СтрокиПереходаТекущие = ТаблицаПереходов.НайтиСтроки(Новый Структура("ПорядковыйНомерПерехода", ПорядковыйНомерПерехода)); - - Если СтрокиПереходаТекущие.Количество() = 0 Тогда - ВызватьИсключение НСтр("ru = 'Не определена страница для отображения.'"); - КонецЕсли; - - СтрокаПереходаТекущая = СтрокиПереходаТекущие[0]; - - // Обработчик ОбработкаДлительнойОперации. - Если Не ПустаяСтрока(СтрокаПереходаТекущая.ИмяОбработчикаДлительнойОперации) Тогда - - ИмяПроцедуры = "Подключаемый_[ИмяОбработчика](Отказ, ПерейтиДалее)"; - ИмяПроцедуры = СтрЗаменить(ИмяПроцедуры, "[ИмяОбработчика]", СтрокаПереходаТекущая.ИмяОбработчикаДлительнойОперации); - - Отказ = Ложь; - ПерейтиДалее = Истина; - - РезультатВычисления = Вычислить(ИмяПроцедуры); - - Если Отказ Тогда - - Если ОшибкаРасхожденияВерсийПриПолученииДанных <> Неопределено - И ОшибкаРасхожденияВерсийПриПолученииДанных.ЕстьОшибка Тогда + РезультатВыполненияФоновогоЗадания.ДополнительныеДанныеРезультата.Вставить("ПараметрыПовторногоОткрытияФормы", + Новый Структура("НоваяНастройкаСинхронизацииДанных", НоваяНастройкаСинхронизацииДанных)); - ОбработатьОшибкуРасхожденияВерсий(); - Возврат; - - КонецЕсли; - - УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода - 1); - - Возврат; - - ИначеЕсли ПерейтиДалее Тогда - - УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода + 1); - - Возврат; - - КонецЕсли; - - Иначе - - УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода + 1); - - Возврат; - - КонецЕсли; - -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Процедуры и функции мастера. - -&НаКлиенте -Функция ПолучитьКлючиВыделенныхСтрок(ВыделенныеСтроки) - - // Возвращаемое значение функции. - КлючиСтрок = Новый Массив; - - Для Каждого ИдентификаторСтроки Из ВыделенныеСтроки Цикл - - СтрокаДерева = ДеревоИнформацииСтатистики.НайтиПоИдентификатору(ИдентификаторСтроки); - - Если Не ПустаяСтрока(СтрокаДерева.Ключ) Тогда - - КлючиСтрок.Добавить(СтрокаДерева.Ключ); - - КонецЕсли; - - КонецЦикла; - - Возврат КлючиСтрок; -КонецФункции - -&НаКлиенте -Процедура ПолучитьКлючиВсехСтрок(КлючиСтрок, КоллекцияЭлементовДерева) - - Для Каждого СтрокаДерева Из КоллекцияЭлементовДерева Цикл - - Если Не ПустаяСтрока(СтрокаДерева.Ключ) Тогда - - КлючиСтрок.Добавить(СтрокаДерева.Ключ); - - КонецЕсли; - - КоллекцияЭлементов = СтрокаДерева.ПолучитьЭлементы(); - - Если КоллекцияЭлементов.Количество() > 0 Тогда - - ПолучитьКлючиВсехСтрок(КлючиСтрок, КоллекцияЭлементов); - - КонецЕсли; - - КонецЦикла; - -КонецПроцедуры - -&НаКлиенте -Процедура ОбновитьОтображениеЭлементовСтатусаОбменаДанными() - - Элементы.СтраницыСтатусаЗагрузкиДанных.ТекущаяСтраница = Элементы[ОбменДаннымиКлиент.СтраницыСтатусаЗагрузкиДанных()[РезультатЗагрузкиДанных]]; - Если Элементы.СтраницыСтатусаЗагрузкиДанных.ТекущаяСтраница=Элементы.СтатусЗагрузкиНеопределено Тогда - Элементы.ПерейтиВЖурналРегистрацииСобытийЗагрузкиДанных.Заголовок = НСтр("ru='Загрузка данных не произведена'"); - Иначе - Элементы.ПерейтиВЖурналРегистрацииСобытийЗагрузкиДанных.Заголовок = ОбменДаннымиКлиент.ЗаголовкиГиперссылокЗагрузкиДанных()[РезультатЗагрузкиДанных]; - КонецЕсли; - - Элементы.СтраницыСтатусаВыгрузкиДанных.ТекущаяСтраница = Элементы[ОбменДаннымиКлиент.СтраницыСтатусаВыгрузкиДанных()[РезультатВыгрузкиДанных]]; - Если Элементы.СтраницыСтатусаВыгрузкиДанных.ТекущаяСтраница=Элементы.СтатусВыгрузкиНеопределено Тогда - Элементы.ПерейтиВЖурналРегистрацииСобытийВыгрузкиДанных.Заголовок = НСтр("ru='Выгрузка данных не произведена'"); - Иначе - Элементы.ПерейтиВЖурналРегистрацииСобытийВыгрузкиДанных.Заголовок = ОбменДаннымиКлиент.ЗаголовкиГиперссылокВыгрузкиДанных()[РезультатВыгрузкиДанных]; - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура РазвернутьДеревоИнформацииСтатистики(КлючСтроки = "") - - КоллекцияЭлементов = ДеревоИнформацииСтатистики.ПолучитьЭлементы(); - - Для Каждого СтрокаДерева Из КоллекцияЭлементов Цикл - - Элементы.ДеревоИнформацииСтатистики.Развернуть(СтрокаДерева.ПолучитьИдентификатор(), Истина); - - КонецЦикла; - - // Позиционирование курсора в дереве значений. - Если Не ПустаяСтрока(КлючСтроки) Тогда - - ИдентификаторСтроки = 0; - - ОбщегоНазначенияКлиентСервер.ПолучитьИдентификаторСтрокиДереваПоЗначениюПоля("Ключ", ИдентификаторСтроки, ДеревоИнформацииСтатистики.ПолучитьЭлементы(), КлючСтроки, Ложь); - - Элементы.ДеревоИнформацииСтатистики.ТекущаяСтрока = ИдентификаторСтроки; - - КонецЕсли; - -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Внутренние процедуры и функции. - -&НаКлиенте -Процедура ИзменитьПорядковыйНомерПерехода(Итератор) - - ОчиститьСообщения(); - - УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода + Итератор); - -КонецПроцедуры - -&НаКлиенте -Процедура УстановитьПорядковыйНомерПерехода(Знач Значение) - - ЭтоПереходДалее = (Значение > ПорядковыйНомерПерехода); - - ПорядковыйНомерПерехода = Значение; - - Если ПорядковыйНомерПерехода < 0 Тогда - - ПорядковыйНомерПерехода = 0; - - КонецЕсли; - - ПорядковыйНомерПереходаПриИзменении(ЭтоПереходДалее); - -КонецПроцедуры - -&НаКлиенте -Процедура ПорядковыйНомерПереходаПриИзменении(Знач ЭтоПереходДалее) - - // Выполняем обработчики событий перехода. - ВыполнитьОбработчикиСобытийПерехода(ЭтоПереходДалее); - - // Устанавливаем отображение страниц. - СтрокиПереходаТекущие = ТаблицаПереходов.НайтиСтроки(Новый Структура("ПорядковыйНомерПерехода", ПорядковыйНомерПерехода)); - - Если СтрокиПереходаТекущие.Количество() = 0 Тогда - ВызватьИсключение НСтр("ru = 'Не определена страница для отображения.'"); - КонецЕсли; - - СтрокаПереходаТекущая = СтрокиПереходаТекущие[0]; - - Элементы.ПанельОсновная.ТекущаяСтраница = Элементы[СтрокаПереходаТекущая.ИмяОсновнойСтраницы]; - Элементы.ПанельНавигации.ТекущаяСтраница = Элементы[СтрокаПереходаТекущая.ИмяСтраницыНавигации]; - - // Устанавливаем текущую кнопку по умолчанию. - КнопкаДалее = ПолучитьКнопкуФормыПоИмениКоманды(Элементы.ПанельНавигации.ТекущаяСтраница, "КомандаДалее"); - - Если КнопкаДалее <> Неопределено Тогда - - КнопкаДалее.КнопкаПоУмолчанию = Истина; - - Иначе - - КнопкаГотово = ПолучитьКнопкуФормыПоИмениКоманды(Элементы.ПанельНавигации.ТекущаяСтраница, "КомандаГотово"); - - Если КнопкаГотово <> Неопределено Тогда - - КнопкаГотово.КнопкаПоУмолчанию = Истина; - - КонецЕсли; - - КонецЕсли; - - Если ЭтоПереходДалее И СтрокаПереходаТекущая.ДлительнаяОперация Тогда - - ПодключитьОбработчикОжидания("ВыполнитьОбработчикДлительнойОперации", 0.1, Истина); - - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ВыполнитьОбработчикиСобытийПерехода(Знач ЭтоПереходДалее) - - // Обработчики событий переходов. - Если ЭтоПереходДалее Тогда - - СтрокиПерехода = ТаблицаПереходов.НайтиСтроки(Новый Структура("ПорядковыйНомерПерехода", ПорядковыйНомерПерехода - 1)); - - Если СтрокиПерехода.Количество() = 0 Тогда - Возврат; - КонецЕсли; - - СтрокаПерехода = СтрокиПерехода[0]; - - // Обработчик ПриПереходеДалее. - Если Не ПустаяСтрока(СтрокаПерехода.ИмяОбработчикаПриПереходеДалее) - И Не СтрокаПерехода.ДлительнаяОперация Тогда - - ИмяПроцедуры = "Подключаемый_[ИмяОбработчика](Отказ)"; - ИмяПроцедуры = СтрЗаменить(ИмяПроцедуры, "[ИмяОбработчика]", СтрокаПерехода.ИмяОбработчикаПриПереходеДалее); - - Отказ = Ложь; - - РезультатВычисления = Вычислить(ИмяПроцедуры); - - Если Отказ Тогда - - УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода - 1); - - Возврат; - - КонецЕсли; - - КонецЕсли; - - Иначе - - СтрокиПерехода = ТаблицаПереходов.НайтиСтроки(Новый Структура("ПорядковыйНомерПерехода", ПорядковыйНомерПерехода + 1)); - - Если СтрокиПерехода.Количество() = 0 Тогда - Возврат; - КонецЕсли; - - КонецЕсли; - - СтрокиПереходаТекущие = ТаблицаПереходов.НайтиСтроки(Новый Структура("ПорядковыйНомерПерехода", ПорядковыйНомерПерехода)); - - Если СтрокиПереходаТекущие.Количество() = 0 Тогда - ВызватьИсключение НСтр("ru = 'Не определена страница для отображения.'"); - КонецЕсли; - - СтрокаПереходаТекущая = СтрокиПереходаТекущие[0]; - - Если СтрокаПереходаТекущая.ДлительнаяОперация И Не ЭтоПереходДалее Тогда - - УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода - 1); - Возврат; - КонецЕсли; - - // обработчик ПриОткрытии - Если Не ПустаяСтрока(СтрокаПереходаТекущая.ИмяОбработчикаПриОткрытии) Тогда - - ИмяПроцедуры = "Подключаемый_[ИмяОбработчика](Отказ, ПропуститьСтраницу, ЭтоПереходДалее)"; - ИмяПроцедуры = СтрЗаменить(ИмяПроцедуры, "[ИмяОбработчика]", СтрокаПереходаТекущая.ИмяОбработчикаПриОткрытии); - - Отказ = Ложь; - ПропуститьСтраницу = Ложь; - - РезультатВычисления = Вычислить(ИмяПроцедуры); - - Если Отказ Тогда - - УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода - 1); - - Возврат; - - ИначеЕсли ПропуститьСтраницу Тогда - - Если ЭтоПереходДалее Тогда - - УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода + 1); - - Возврат; - - Иначе - - УстановитьПорядковыйНомерПерехода(ПорядковыйНомерПерехода - 1); - - Возврат; - - КонецЕсли; + РезультатВыполненияФоновогоЗадания.ДополнительныеДанныеРезультата.Вставить("ЗакрытьФормуБезусловно", Истина); КонецЕсли; @@ -1587,780 +1432,7 @@ КонецПроцедуры -&НаСервере -Процедура ТаблицаПереходовНоваяСтрока(ПорядковыйНомерПерехода, - ИмяОсновнойСтраницы, - ИмяСтраницыНавигации, - ИмяОбработчикаПриОткрытии = "", - ИмяОбработчикаПриПереходеДалее = "") - - НоваяСтрока = ТаблицаПереходов.Добавить(); - - НоваяСтрока.ПорядковыйНомерПерехода = ПорядковыйНомерПерехода; - НоваяСтрока.ИмяОсновнойСтраницы = ИмяОсновнойСтраницы; - НоваяСтрока.ИмяСтраницыНавигации = ИмяСтраницыНавигации; - - НоваяСтрока.ИмяОбработчикаПриПереходеДалее = ИмяОбработчикаПриПереходеДалее; - НоваяСтрока.ИмяОбработчикаПриОткрытии = ИмяОбработчикаПриОткрытии; - - НоваяСтрока.ДлительнаяОперация = Ложь; - НоваяСтрока.ИмяОбработчикаДлительнойОперации = ""; - -КонецПроцедуры - -&НаСервере -Процедура ТаблицаПереходовНоваяСтрокаДлительнаяОперация(ПорядковыйНомерПерехода, - ИмяОсновнойСтраницы, - ИмяСтраницыНавигации, - ДлительнаяОперация = Ложь, - ИмяОбработчикаДлительнойОперации = "") - - НоваяСтрока = ТаблицаПереходов.Добавить(); - - НоваяСтрока.ПорядковыйНомерПерехода = ПорядковыйНомерПерехода; - НоваяСтрока.ИмяОсновнойСтраницы = ИмяОсновнойСтраницы; - НоваяСтрока.ИмяСтраницыНавигации = ИмяСтраницыНавигации; - - НоваяСтрока.ИмяОбработчикаПриПереходеДалее = ""; - НоваяСтрока.ИмяОбработчикаПриОткрытии = ""; - - НоваяСтрока.ДлительнаяОперация = ДлительнаяОперация; - НоваяСтрока.ИмяОбработчикаДлительнойОперации = ИмяОбработчикаДлительнойОперации; - -КонецПроцедуры - -&НаКлиенте -Функция ПолучитьКнопкуФормыПоИмениКоманды(ЭлементФормы, ИмяКоманды) - - Для Каждого Элемент Из ЭлементФормы.ПодчиненныеЭлементы Цикл - - Если ТипЗнч(Элемент) = Тип("ГруппаФормы") Тогда - - ЭлементФормыПоИмениКоманды = ПолучитьКнопкуФормыПоИмениКоманды(Элемент, ИмяКоманды); - - Если ЭлементФормыПоИмениКоманды <> Неопределено Тогда - - Возврат ЭлементФормыПоИмениКоманды; - - КонецЕсли; - - ИначеЕсли ТипЗнч(Элемент) = Тип("КнопкаФормы") - И Элемент.ИмяКоманды = ИмяКоманды Тогда - - Возврат Элемент; - - Иначе - - Продолжить; - - КонецЕсли; - - КонецЦикла; - - Возврат Неопределено; - -КонецФункции - -&НаСервере -Процедура ФоновоеЗаданиеЗагрузитьРезультат(Результат) - Если АдресВременногоХранилища = Неопределено Тогда - Возврат; - КонецЕсли; - РезультатВыполненияВФоне = ПолучитьИзВременногоХранилища(АдресВременногоХранилища); - Если РезультатВыполненияВФоне = Неопределено Тогда - Возврат; - ИначеЕсли РезультатВыполненияВФоне.Свойство("Отказ") Тогда - Результат.Отказ = РезультатВыполненияВФоне.Отказ; - КонецЕсли; -КонецПроцедуры - - -//////////////////////////////////////////////////////////////////////////////// -// Переопределяемая часть - Обработчики событий переходов. - -&НаКлиенте -Функция Подключаемый_СтраницаНачала_ПриПереходеДалее(Отказ) - - // Выполняем проверки заполнения реквизитов формы. - Если Объект.УзелИнформационнойБазы.Пустая() Тогда - - НСтрока = НСтр("ru = 'Укажите узел информационной базы'"); - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтрока,, "Объект.УзелИнформационнойБазы",, Отказ); - - ИначеЕсли Объект.ВидТранспортаСообщенийОбмена.Пустая() Тогда - - НСтрока = НСтр("ru = 'Укажите вариант подключения'"); - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтрока,, "Объект.ВидТранспортаСообщенийОбмена",, Отказ); - - ИначеЕсли ОбменЧерезВебСервис И ПустаяСтрока(WSПароль) Тогда - - НСтрока = НСтр("ru = 'Не указан пароль.'"); - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтрока,, "WSПароль",, Отказ); - - КонецЕсли; - -КонецФункции - -&НаКлиенте -Функция Подключаемый_СтраницаОжиданияПроверкиПодключения_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - Если ОбменЧерезВебСервис Тогда - - ПроверитьПодключениеИСохранитьНастройки(Отказ); - - Если Отказ Тогда - - ПоказатьПредупреждение(, НСтр("ru = 'Не удалось выполнить операцию.'")); - - КонецЕсли; - - КонецЕсли; - -КонецФункции - -&НаСервере -Процедура ПроверитьПодключениеИСохранитьНастройки(Отказ) - - ПараметрыПодключения = ОбменДаннымиСервер.СтруктураПараметровWS(); - ЗаполнитьЗначенияСвойств(ПараметрыПодключения, ЭтотОбъект); - - СообщениеПользователю = ""; - WSПрокси = ОбменДаннымиСервер.ПолучитьWSПрокси(ПараметрыПодключения,, СообщениеПользователю); - Если WSПрокси = Неопределено Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СообщениеПользователю,,"WSПароль",, Отказ); - Возврат; - КонецЕсли; - - Если WSЗапомнитьПароль Тогда - - Попытка - - УстановитьПривилегированныйРежим(Истина); - - // обновляем запись в РС - СтруктураЗаписи = Новый Структура; - СтруктураЗаписи.Вставить("Узел", Объект.УзелИнформационнойБазы); - СтруктураЗаписи.Вставить("WSЗапомнитьПароль", Истина); - СтруктураЗаписи.Вставить("WSПароль", WSПароль); - РегистрыСведений.НастройкиТранспортаОбмена.ОбновитьЗапись(СтруктураЗаписи); - - Исключение - ЗаписьЖурналаРегистрации(ОбменДаннымиСервер.СобытиеЖурналаРегистрацииОбменДанными(), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(КраткоеПредставлениеОшибки(ИнформацияОбОшибке()),,,, Отказ); - Возврат; - КонецПопытки; - - КонецЕсли; - -КонецПроцедуры - -// Получение данных (транспорт сообщения обмена). - -&НаКлиенте -Функция Подключаемый_СтраницаОжиданияАнализаДанных_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - ТранспортСообщенияОбмена(); - -КонецФункции - -&НаСервере -Процедура ТранспортСообщенияОбмена() - - Попытка - - ПропуститьПолучениеДанных = Ложь; - - ДлительнаяОперация = Ложь; - ДлительнаяОперацияЗавершена = Ложь; - ДлительнаяОперацияЗавершенаСОшибкой = Ложь; - ИдентификаторФайла = ""; - ИдентификаторОперации = ""; - - ОбработкаОбъект = РеквизитФормыВЗначение("Объект"); - - Отказ = Ложь; - - ОбработкаОбъект.ПолучитьСообщениеОбменаВоВременныйКаталог( - Отказ, - ИдентификаторФайлаПакетаДанных, - ИдентификаторФайла, - ДлительнаяОперация, - ИдентификаторОперации, - WSПароль); - ЗначениеВРеквизитФормы(ОбработкаОбъект, "Объект"); - - Если Отказ Тогда - ПропуститьПолучениеДанных = Истина; - КонецЕсли; - - Исключение - ПропуститьПолучениеДанных = Истина; - ЗаписатьОшибкуВЖурналРегистрации(ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()), - НСтр("ru = 'Помощник интерактивного обмена данными.Транспорт сообщения обмена'")); - Возврат; - КонецПопытки; - -КонецПроцедуры - -&НаКлиенте -Функция Подключаемый_СтраницаОжиданияАнализаДанныхДлительнаяОперация_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - Если ПропуститьПолучениеДанных Тогда - Возврат Неопределено; - КонецЕсли; - - Если ДлительнаяОперация Тогда - - ПерейтиДалее = Ложь; - - ПодключитьОбработчикОжидания("ОбработчикОжиданияДлительнойОперации", 5, Истина); - - КонецЕсли; - -КонецФункции - -&НаКлиенте -Функция Подключаемый_СтраницаОжиданияАнализаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - Если ПропуститьПолучениеДанных Тогда - Возврат Неопределено; - КонецЕсли; - - Если ДлительнаяОперацияЗавершена Тогда - - Если ДлительнаяОперацияЗавершенаСОшибкой Тогда - - ПропуститьПолучениеДанных = Истина; - - ЗаписатьОшибкуВЖурналРегистрации(ДлительнаяОперацияСтрокаСообщенияОбОшибке, СобытиеЖурналаРегистрацииЗагрузкаДанных); - - Иначе - - ТранспортСообщенияОбменаДлительнаяОперацияОкончание(); - - КонецЕсли; - - КонецЕсли; - -КонецФункции - -&НаСервере -Процедура ТранспортСообщенияОбменаДлительнаяОперацияОкончание() - - Попытка - ОбработкаОбъект = РеквизитФормыВЗначение("Объект"); - - Отказ = Ложь; - - ОбработкаОбъект.ПолучитьСообщениеОбменаВоВременныйКаталогОкончаниеДлительнойОперации( - Отказ, - ИдентификаторФайлаПакетаДанных, - ИдентификаторФайла, - WSПароль); - - ЗначениеВРеквизитФормы(ОбработкаОбъект, "Объект"); - - Если Отказ Тогда - ПропуститьПолучениеДанных = Истина; - КонецЕсли; - - Исключение - ПропуститьПолучениеДанных = Истина; - ЗаписатьОшибкуВЖурналРегистрации(ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()), - НСтр("ru = 'Помощник интерактивного обмена данными.Транспорт сообщения обмена'")); - Возврат; - КонецПопытки; - -КонецПроцедуры - -// Анализ данных -// Автоматическое сопоставление данных. - -&НаКлиенте -Функция Подключаемый_АнализДанных_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - Если ПропуститьПолучениеДанных Тогда - Возврат Неопределено; - КонецЕсли; - - АнализДанных(); - - Если ОшибкаРасхожденияВерсийПриПолученииДанных <> Неопределено - И ОшибкаРасхожденияВерсийПриПолученииДанных.ЕстьОшибка Тогда - Отказ = Истина; - КонецЕсли; - -КонецФункции - -&НаСервере -Процедура АнализДанных() - - ДлительнаяОперация = Ложь; - ДлительнаяОперацияЗавершена = Ложь; - ИдентификаторЗадания = Неопределено; - АдресВременногоХранилища = ""; - - Попытка - - ПараметрыМетода = Новый Структура; - ПараметрыМетода.Вставить("УзелИнформационнойБазы", Объект.УзелИнформационнойБазы); - ПараметрыМетода.Вставить("ИмяФайлаСообщенияОбмена", Объект.ИмяФайлаСообщенияОбмена); - ПараметрыМетода.Вставить("ИмяВременногоКаталогаСообщенийОбмена", Объект.ИмяВременногоКаталогаСообщенийОбмена); - ПараметрыМетода.Вставить("ПроверятьРасхождениеВерсий", ПроверятьРасхождениеВерсий); - - Результат = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "Обработки.ПомощникИнтерактивногоОбменаДанными.ВыполнитьАвтоматическоеСопоставлениеДанных", - ПараметрыМетода, - НСтр("ru = 'Анализ данных сообщения обмена'")); - - Если Результат.ЗаданиеВыполнено Тогда - ПослеАнализаДанных(ПолучитьИзВременногоХранилища(Результат.АдресХранилища)); - Иначе - ДлительнаяОперация = Истина; - ИдентификаторЗадания = Результат.ИдентификаторЗадания; - АдресВременногоХранилища = Результат.АдресХранилища; - КонецЕсли; - - Исключение - - ПропуститьПолучениеДанных = Истина; - ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( - Объект.УзелИнформационнойБазы, - "ЗагрузкаДанных", - ТекущаяДатаСеанса(), - ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - - КонецПопытки; - -КонецПроцедуры - -&НаКлиенте -Функция Подключаемый_АнализДанныхДлительнаяОперация_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - Если ПропуститьПолучениеДанных Тогда - Возврат Неопределено; - КонецЕсли; - - Если ДлительнаяОперация Тогда - - ПерейтиДалее = Ложь; - - ПодключитьОбработчикОжидания("ОбработчикОжиданияФоновогоЗадания", 5, Истина); - - КонецЕсли; - -КонецФункции - -&НаКлиенте -Функция Подключаемый_АнализДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - Если ПропуститьПолучениеДанных Тогда - Возврат Неопределено; - КонецЕсли; - - Если ДлительнаяОперацияЗавершена Тогда - - Если ДлительнаяОперацияЗавершенаСОшибкой Тогда - - ПропуститьПолучениеДанных = Истина; - - Иначе - - АнализДанныхДлительнаяОперацияОкончание(); - - КонецЕсли; - - КонецЕсли; - - Если ПропуститьПолучениеДанных Тогда - Возврат Неопределено; - КонецЕсли; - - РазвернутьДеревоИнформацииСтатистики(); - -КонецФункции - -&НаСервере -Процедура АнализДанныхДлительнаяОперацияОкончание() - - Попытка - ПослеАнализаДанных(ПолучитьИзВременногоХранилища(АдресВременногоХранилища)); - Исключение - ПропуститьПолучениеДанных = Истина; - ЗаписатьОшибкуВЖурналРегистрации(ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()), - НСтр("ru = 'Помощник интерактивного обмена данными.Анализ данных'")); - Возврат; - КонецПопытки; - -КонецПроцедуры - -&НаСервере -Процедура ПослеАнализаДанных(Знач РезультатАнализа) - - Если РезультатАнализа.Свойство("ТекстОшибки") Тогда - ОшибкаРасхожденияВерсийПриПолученииДанных = РезультатАнализа; - ИначеЕсли РезультатАнализа.Свойство("Отказ") Тогда - ПропуститьПолучениеДанных = Истина; - ЗафиксироватьОшибку = Истина; - Если РезультатАнализа.Свойство("РезультатВыполненияОбмена") Тогда - Если РезультатАнализа.РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Предупреждение_СообщениеОбменаБылоРанееПринято Тогда - СтруктураНастроекОбмена = Новый Структура; - СтруктураНастроекОбмена.Вставить("УзелИнформационнойБазы", Объект.УзелИнформационнойБазы); - СтруктураНастроекОбмена.Вставить("РезультатВыполненияОбмена", РезультатАнализа.РезультатВыполненияОбмена); - СтруктураНастроекОбмена.Вставить("ДействиеПриОбмене", "ЗагрузкаДанных"); - СтруктураНастроекОбмена.Вставить("КоличествоОбъектовОбработано", 0); - СтруктураНастроекОбмена.Вставить("КлючСообщенияЖурналаРегистрации", ОбменДаннымиСервер.ПолучитьКлючСообщенияЖурналаРегистрации(Объект.УзелИнформационнойБазы, "ЗагрузкаДанных")); - СтруктураНастроекОбмена.Вставить("ДатаНачала", ТекущаяДатаСеанса()); - СтруктураНастроекОбмена.Вставить("ДатаОкончания", ТекущаяДатаСеанса()); - СтруктураНастроекОбмена.Вставить("ЭтоОбменВРИБ", ОбменДаннымиПовтИсп.ЭтоУзелРаспределеннойИнформационнойБазы(Объект.УзелИнформационнойБазы)); - - ОбменДаннымиСервер.ЗафиксироватьЗавершениеОбмена(СтруктураНастроекОбмена); - ЗафиксироватьОшибку = Ложь; - КонецЕсли; - КонецЕсли; - Если ЗафиксироватьОшибку Тогда - ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( - Объект.УзелИнформационнойБазы, - "ЗагрузкаДанных", - ТекущаяДатаСеанса(), - НСтр("ru = 'Не удалось загрузить данные из ""%1"" (этап анализа данных).'")); - КонецЕсли; - Иначе - - ВсеДанныеСопоставлены = РезультатАнализа.ВсеДанныеСопоставлены; - СтатистикаПустая = РезультатАнализа.СтатистикаПустая; - Объект.ИнформацияСтатистики.Загрузить(РезультатАнализа.ИнформацияСтатистики); - Объект.ИнформацияСтатистики.Сортировать("Представление"); - - ПолучитьДеревоИнформацииСтатистики(Объект.ИнформацияСтатистики.Выгрузить()); - - УстановитьВидимостьГруппыДополнительнойИнформации(); - - КонецЕсли; - -КонецПроцедуры - -// Сопоставление данных пользователем. - -&НаКлиенте -Функция Подключаемый_СтраницаИнформацииСтатистики_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) - - Если СтатистикаПустая ИЛИ ПропуститьПолучениеДанных Тогда - ПропуститьСтраницу = Истина; - КонецЕсли; - -КонецФункции - -&НаКлиенте -Функция Подключаемый_СтраницаИнформацииСтатистики_ПриПереходеДалее(Отказ) - - Если СтатистикаПустая Или ПропуститьПолучениеДанных Или ВсеДанныеСопоставлены Тогда - Возврат Неопределено; - КонецЕсли; - - Если Истина = ПропускатьКонтрольОтказаТекущейСтраницы Тогда - ПропускатьКонтрольОтказаТекущейСтраницы = Неопределено; - Возврат Неопределено; - КонецЕсли; - - // Движение вперед будет из подтверждения. - Отказ = Истина; - - Кнопки = Новый СписокЗначений; - Кнопки.Добавить(КодВозвратаДиалога.Да, НСтр("ru = 'Продолжить'")); - Кнопки.Добавить(КодВозвратаДиалога.Нет, НСтр("ru = 'Отмена'")); - - Сообщение = НСтр("ru = 'Не все данные сопоставлены. Наличие несопоставленных данных - |может привести к появлению одинаковых элементов справочников (дублей). - |Продолжить?'"); - - Оповещение = Новый ОписаниеОповещения("СтраницаИнформацииСтатистики_ПриПереходеДалееЗавершениеВопроса", ЭтотОбъект); - - ПоказатьВопрос(Оповещение, Сообщение, Кнопки,, КодВозвратаДиалога.Да); -КонецФункции - -&НаКлиенте -Процедура СтраницаИнформацииСтатистики_ПриПереходеДалееЗавершениеВопроса(Знач РезультатВопроса, Знач ДополнительныеПараметры) Экспорт - Если РезультатВопроса <> КодВозвратаДиалога.Да Тогда - Возврат; - КонецЕсли; - - ПодключитьОбработчикОжидания("Подключаемый_ПерейтиНаШагВпередОтложеннойОбработкой", 0.1, Истина); -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_ПерейтиНаШагВпередОтложеннойОбработкой() - - // Двигаемся на шаг вперед принудительно. - ПропускатьКонтрольОтказаТекущейСтраницы = Истина; - ИзменитьПорядковыйНомерПерехода( +1 ); - -КонецПроцедуры - -// Загрузка данных - -&НаКлиенте -Функция Подключаемый_ЗагрузкаДанных_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - Если ПропуститьПолучениеДанных Тогда - Возврат Неопределено; - КонецЕсли; - - ЗагрузкаДанных(); - - // Переходим на следующую страницу вне зависимости от результата загрузки данных. - -КонецФункции - -&НаСервере -Процедура ЗагрузкаДанных() - - ДлительнаяОперация = Ложь; - ДлительнаяОперацияЗавершена = Ложь; - ИдентификаторЗадания = Неопределено; - - Попытка - - ПараметрыМетода = Новый Структура; - ПараметрыМетода.Вставить("УзелИнформационнойБазы", Объект.УзелИнформационнойБазы); - ПараметрыМетода.Вставить("ИмяФайлаСообщенияОбмена", Объект.ИмяФайлаСообщенияОбмена); - - Результат = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "Обработки.ПомощникИнтерактивногоОбменаДанными.ВыполнитьЗагрузкуДанных", - ПараметрыМетода, - НСтр("ru = 'Загрузка данных из сообщения обмена'")); - - Если Результат.ЗаданиеВыполнено Тогда - - УдалитьВременныйКаталогСообщенийОбмена(Объект.ИмяВременногоКаталогаСообщенийОбмена); - ОтображаетсяПрогрессБар = Элементы.ПанельОсновная.ТекущаяСтраница = Элементы.СтраницаОжиданияСинхронизацииДанныхПрогрессБарЗагрузка - ИЛИ Элементы.ПанельОсновная.ТекущаяСтраница = Элементы.СтраницаОжиданияСинхронизацииДанныхПрогрессБарВыгрузка; - - Если ИспользоватьПрогрессБар И ОтображаетсяПрогрессБар Тогда - ПроцентВыполнения = 100; - ДопИнформацияВыполнение = ""; - КонецЕсли; - Иначе - - ДлительнаяОперация = Истина; - ИдентификаторЗадания = Результат.ИдентификаторЗадания; - КонецЕсли; - - - Исключение - ПропуститьПолучениеДанных = Истина; - УдалитьВременныйКаталогСообщенийОбмена(Объект.ИмяВременногоКаталогаСообщенийОбмена); - ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( - Объект.УзелИнформационнойБазы, - "ЗагрузкаДанных", - ТекущаяДатаСеанса(), - ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - Возврат; - КонецПопытки; - -КонецПроцедуры - -&НаКлиенте -Функция Подключаемый_ЗагрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - Если ПропуститьПолучениеДанных Тогда - Возврат Неопределено; - КонецЕсли; - - Если ДлительнаяОперация Тогда - - ПерейтиДалее = Ложь; - - ПодключитьОбработчикОжидания("ОбработчикОжиданияФоновогоЗадания", 2, Истина); - - КонецЕсли; - -КонецФункции - -&НаСервере -Процедура ФоновоеЗаданиеПрочитатьПромежуточныйРезультат() - - Прогресс = ДлительныеОперации.ПрочитатьПрогресс(ИдентификаторЗадания); - Если Прогресс <> Неопределено Тогда - ПроцентВыполнения = Прогресс.Процент; - ДопИнформацияВыполнение = Прогресс.Текст; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Функция Подключаемый_ЗагрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - ПроцентВыполнения = 0; - ДопИнформацияВыполнение = ""; - - Если ПропуститьПолучениеДанных Тогда - Возврат Неопределено; - КонецЕсли; - - Если ДлительнаяОперацияЗавершена Тогда - - УдалитьВременныйКаталогСообщенийОбмена(Объект.ИмяВременногоКаталогаСообщенийОбмена); - - КонецЕсли; - -КонецФункции - -// Дополнительная выгрузка - -&НаКлиенте -Функция Подключаемый_СтраницаВопросОСоставеВыгрузки_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) - - Если ДополнениеВыгрузки.ВариантВыгрузки<0 Тогда - // Согласно настройкам узла дополнение выгрузки не производится, переходим на следующую страницу. - ПропуститьСтраницу = Истина; - КонецЕсли; - -КонецФункции - -// Выгрузка данных - -&НаКлиенте -Функция Подключаемый_СтраницаОжиданияВыгрузкиДанныхОбычныеКаналы_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - ПроцентВыполнения = 0; - ДопИнформацияВыполнение = ""; - ДлительнаяОперация = Ложь; - ДлительнаяОперацияЗавершена = Ложь; - ДлительнаяОперацияЗавершенаСОшибкой = Ложь; - ИдентификаторФайла = ""; - ИдентификаторОперации = ""; - - ВыгрузкаДанных(); - -КонецФункции - -&НаСервере -Процедура ВыгрузкаДанных() - - ИдентификаторЗадания = Неопределено; - АдресВременногоХранилища = Неопределено; - ДатаНачалаОперации = ТекущаяДатаСеанса(); - - // Сохраняем настройки дополнения выгрузки. - ОбменДаннымиСервер.ИнтерактивноеИзменениеВыгрузкиСохранитьНастройки(ДополнениеВыгрузки, - ОбменДаннымиСервер.ДополнениеВыгрузкиИмяАвтоСохраненияНастроек()); - - // Дополнительно регистрируем данные. - ОбменДаннымиСервер.ИнтерактивноеИзменениеВыгрузкиЗарегистрироватьДополнительныеДанные(ДополнениеВыгрузки); - - Попытка - - ПараметрыМетода = Новый Структура; - ПараметрыМетода.Вставить("УзелИнформационнойБазы", Объект.УзелИнформационнойБазы); - ПараметрыМетода.Вставить("ИмяФайлаСообщенияОбмена", Объект.ИмяФайлаСообщенияОбмена); - ПараметрыМетода.Вставить("ВидТранспортаСообщенийОбмена", Объект.ВидТранспортаСообщенийОбмена); - ПараметрыМетода.Вставить("ИдентификаторОперации", ИдентификаторОперации); - ПараметрыМетода.Вставить("ИдентификаторФайла", ИдентификаторФайла); - ПараметрыМетода.Вставить("WSПароль", WSПароль); - - Результат = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "Обработки.ПомощникИнтерактивногоОбменаДанными.ВыполнитьВыгрузкуДанных", - ПараметрыМетода, - НСтр("ru = 'Выгрузка данных из сообщения обмена'")); - - Если Результат.ЗаданиеВыполнено Тогда - УдалитьВременныйКаталогСообщенийОбмена(Объект.ИмяВременногоКаталогаСообщенийОбмена); - ОтображаетсяПрогрессБар = Элементы.ПанельОсновная.ТекущаяСтраница = Элементы.СтраницаОжиданияСинхронизацииДанныхПрогрессБарЗагрузка - ИЛИ Элементы.ПанельОсновная.ТекущаяСтраница = Элементы.СтраницаОжиданияСинхронизацииДанныхПрогрессБарВыгрузка; - - Если ИспользоватьПрогрессБар И ОтображаетсяПрогрессБар Тогда - ПроцентВыполнения = 100; - ДопИнформацияВыполнение = ""; - КонецЕсли; - Иначе - - ДлительнаяОперация = Истина; - ИдентификаторЗадания = Результат.ИдентификаторЗадания; - АдресВременногоХранилища = Результат.АдресХранилища; - КонецЕсли; - - Исключение - УдалитьВременныйКаталогСообщенийОбмена(Объект.ИмяВременногоКаталогаСообщенийОбмена); - ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( - Объект.УзелИнформационнойБазы, - "ВыгрузкаДанных", - ТекущаяДатаСеанса(), - ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - Возврат; - КонецПопытки; - -КонецПроцедуры - -&НаКлиенте -Функция Подключаемый_СтраницаОжиданияВыгрузкиДанных_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - ДлительнаяОперация = Ложь; - ДлительнаяОперацияЗавершена = Ложь; - ДлительнаяОперацияЗавершенаСОшибкой = Ложь; - ИдентификаторФайла = ""; - ИдентификаторОперации = ""; - - // Не следующую страницу переходим безусловно. - ПромежуточныйОтказ = Ложь; - ВыполнитьОбменДаннымиДляУзлаИнформационнойБазыНаСервере(ПромежуточныйОтказ); -КонецФункции - -&НаКлиенте -Функция Подключаемый_СтраницаОжиданияВыгрузкиДанныхДлительнаяОперация_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - Если ДлительнаяОперация Тогда - - ПерейтиДалее = Ложь; - Если ИспользоватьПрогрессБар Тогда - ПодключитьОбработчикОжидания("ОбработчикОжиданияФоновогоЗадания", 2, Истина); - Иначе - ПодключитьОбработчикОжидания("ОбработчикОжиданияДлительнойОперации", 5, Истина); - КонецЕсли; - - КонецЕсли; - -КонецФункции - -&НаКлиенте -Функция Подключаемый_СтраницаОжиданияВыгрузкиДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - Если ДлительнаяОперацияЗавершена Тогда - - Если ДлительнаяОперацияЗавершенаСОшибкой Тогда - - ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( - Объект.УзелИнформационнойБазы, - "ВыгрузкаДанных", - ДатаНачалаОперации, - ДлительнаяОперацияСтрокаСообщенияОбОшибке); - - Иначе - - ОбменДаннымиВызовСервера.ЗафиксироватьВыполнениеВыгрузкиДанныхВРежимеДлительнойОперации(Объект.УзелИнформационнойБазы, ДатаНачалаОперации); - - КонецЕсли; - - КонецЕсли; - -КонецФункции - -// Итоги - -&НаКлиенте -Функция Подключаемый_СтраницаОкончанияСопоставления_ПриОткрытии(Отказ, ПропуститьСтраницу, Знач ЭтоПереходДалее) - - ПолучитьСостоянияОбменовДанными(РезультатЗагрузкиДанных, РезультатВыгрузкиДанных, Объект.УзелИнформационнойБазы); - - ОбновитьОтображениеЭлементовСтатусаОбменаДанными(); - - Возврат Неопределено; -КонецФункции - -//////////////////////////////////////////////////////////////////////////////// -// Работа с дополнением выгрузки. +#Область РаботаСДополнениемВыгрузки &НаСервере Процедура ИнициализироватьРеквизитыДополненияВыгрузки() @@ -2573,8 +1645,1024 @@ Возврат ОбменДаннымиСервер.ИнтерактивноеИзменениеВыгрузкиИсторияНастроек(ДополнениеВыгрузки); КонецФункции +#КонецОбласти + +#КонецОбласти + +#Область ПроцедурыИФункцииСерверБезКонтекста + +&НаСервереБезКонтекста +Процедура ПолучитьСостоянияОбменовДанными(РезультатЗагрузкиДанных, РезультатВыгрузкиДанных, Знач УзелИнформационнойБазы) + + СостоянияОбменовДанными = ОбменДаннымиСервер.СостоянияОбменовДаннымиДляУзлаИнформационнойБазы(УзелИнформационнойБазы); + + РезультатЗагрузкиДанных = СостоянияОбменовДанными["РезультатЗагрузкиДанных"]; + Если ПустаяСтрока(РезультатВыгрузкиДанных) Тогда + РезультатВыгрузкиДанных = СостоянияОбменовДанными["РезультатВыгрузкиДанных"]; + КонецЕсли; + +КонецПроцедуры + +&НаСервереБезКонтекста +Процедура УдалитьВременныйКаталогСообщенийОбмена(ИмяВременногоКаталога) + + Если Не ПустаяСтрока(ИмяВременногоКаталога) Тогда + + Попытка + УдалитьФайлы(ИмяВременногоКаталога); + ИмяВременногоКаталога = ""; + Исключение + ЗаписьЖурналаРегистрации(НСтр("ru = 'Обмен данными'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + КонецПопытки; + + КонецЕсли; + +КонецПроцедуры + +&НаСервереБезКонтекста +Процедура ЗавершитьВыполнениеДлительнойОперации(ИдентификаторЗадания) + ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторЗадания); +КонецПроцедуры + +&НаСервереБезКонтекста +Функция ПолучитьИмяКаталогаНаСервере(ВидТранспортаСообщенийОбмена, УзелИнформационнойБазы) + + Возврат РегистрыСведений.НастройкиТранспортаОбмена.ИмяКаталогаОбменаИнформацией(ВидТранспортаСообщенийОбмена, УзелИнформационнойБазы); + +КонецФункции + +&НаСервереБезКонтекста +Функция УзелИнформационнойБазыИспользуетсяВСценарииОбмена(УзелИнформационнойБазы) + + ТекстЗапроса = " + |ВЫБРАТЬ ПЕРВЫЕ 1 1 + |ИЗ + | Справочник.СценарииОбменовДанными.НастройкиОбмена КАК СценарииОбменовДаннымиНастройкиОбмена + |ГДЕ + | СценарииОбменовДаннымиНастройкиОбмена.УзелИнформационнойБазы = &УзелИнформационнойБазы + | И НЕ СценарииОбменовДаннымиНастройкиОбмена.Ссылка.ПометкаУдаления + |"; + + Запрос = Новый Запрос; + Запрос.УстановитьПараметр("УзелИнформационнойБазы", УзелИнформационнойБазы); + Запрос.Текст = ТекстЗапроса; + + Возврат Не Запрос.Выполнить().Пустой(); + +КонецФункции + +#КонецОбласти + //////////////////////////////////////////////////////////////////////////////// -// Переопределяемая часть - Инициализация переходов помощника. +// Обработчики ожидания + +&НаКлиенте +Процедура ОбработчикОжиданияДлительнойОперации() + + ДлительнаяОперацияЗавершена = Ложь; + ДлительнаяОперацияЗавершенаСОшибкой = Ложь; + + Если ОбменЧерезВебСервис Тогда + + СостояниеОперации = ОбменДаннымиВызовСервера.СостояниеДлительнойОперации(ИдентификаторОперации, + WSURLВебСервиса, + WSИмяПользователя, + WSПароль, + СообщениеОбОшибке); + + Иначе + // Обмен по COM соединению. + СостояниеОперации = ОбменДаннымиВызовСервера.СостояниеЗадания(ИдентификаторЗадания); + КонецЕсли; + + Если СостояниеОперации = "Active" Или СостояниеОперации = "Активно" Тогда + ПодключитьОбработчикОжидания("ОбработчикОжиданияДлительнойОперации", 5, Истина); + Иначе + + ДлительнаяОперация = Ложь; + ДлительнаяОперацияЗавершена = Истина; + + Если СостояниеОперации = "Failed" + Или СостояниеОперации = "Canceled" + Или СостояниеОперации = "ЗавершеноАварийно" Тогда + ДлительнаяОперацияЗавершенаСОшибкой = Истина; + КонецЕсли; + + ПодключитьОбработчикОжидания("ВыполнитьПереходДалее", 1, Истина); + + КонецЕсли; + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Процедуры и функции мастера. + +&НаКлиенте +Функция ПолучитьКлючиВыделенныхСтрок(ВыделенныеСтроки) + + // Возвращаемое значение функции. + КлючиСтрок = Новый Массив; + + Для Каждого ИдентификаторСтроки Из ВыделенныеСтроки Цикл + + СтрокаДерева = ДеревоИнформацииСтатистики.НайтиПоИдентификатору(ИдентификаторСтроки); + + Если Не ПустаяСтрока(СтрокаДерева.Ключ) Тогда + + КлючиСтрок.Добавить(СтрокаДерева.Ключ); + + КонецЕсли; + + КонецЦикла; + + Возврат КлючиСтрок; +КонецФункции + +&НаКлиенте +Процедура ПолучитьКлючиВсехСтрок(КлючиСтрок, КоллекцияЭлементовДерева) + + Для Каждого СтрокаДерева Из КоллекцияЭлементовДерева Цикл + + Если Не ПустаяСтрока(СтрокаДерева.Ключ) Тогда + + КлючиСтрок.Добавить(СтрокаДерева.Ключ); + + КонецЕсли; + + КоллекцияЭлементов = СтрокаДерева.ПолучитьЭлементы(); + + Если КоллекцияЭлементов.Количество() > 0 Тогда + + ПолучитьКлючиВсехСтрок(КлючиСтрок, КоллекцияЭлементов); + + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры + +&НаКлиенте +Процедура ОбновитьОтображениеЭлементовСтатусаОбменаДанными() + + Элементы.СтраницыСтатусаЗагрузкиДанных.ТекущаяСтраница = Элементы[ОбменДаннымиКлиент.СтраницыСтатусаЗагрузкиДанных()[РезультатЗагрузкиДанных]]; + Если Элементы.СтраницыСтатусаЗагрузкиДанных.ТекущаяСтраница=Элементы.СтатусЗагрузкиНеопределено Тогда + Элементы.ПерейтиВЖурналРегистрацииСобытийЗагрузкиДанных.Заголовок = НСтр("ru='Загрузка данных не произведена'"); + Иначе + Элементы.ПерейтиВЖурналРегистрацииСобытийЗагрузкиДанных.Заголовок = ОбменДаннымиКлиент.ЗаголовкиГиперссылокЗагрузкиДанных()[РезультатЗагрузкиДанных]; + КонецЕсли; + + Элементы.СтраницыСтатусаВыгрузкиДанных.ТекущаяСтраница = Элементы[ОбменДаннымиКлиент.СтраницыСтатусаВыгрузкиДанных()[РезультатВыгрузкиДанных]]; + Если Элементы.СтраницыСтатусаВыгрузкиДанных.ТекущаяСтраница=Элементы.СтатусВыгрузкиНеопределено Тогда + Элементы.ПерейтиВЖурналРегистрацииСобытийВыгрузкиДанных.Заголовок = НСтр("ru='Выгрузка данных не произведена'"); + Иначе + Элементы.ПерейтиВЖурналРегистрацииСобытийВыгрузкиДанных.Заголовок = ОбменДаннымиКлиент.ЗаголовкиГиперссылокВыгрузкиДанных()[РезультатВыгрузкиДанных]; + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура РазвернутьДеревоИнформацииСтатистики(КлючСтроки = "") + + КоллекцияЭлементов = ДеревоИнформацииСтатистики.ПолучитьЭлементы(); + + Для Каждого СтрокаДерева Из КоллекцияЭлементов Цикл + + Элементы.ДеревоИнформацииСтатистики.Развернуть(СтрокаДерева.ПолучитьИдентификатор(), Истина); + + КонецЦикла; + + // Позиционирование курсора в дереве значений. + Если Не ПустаяСтрока(КлючСтроки) Тогда + + ИдентификаторСтроки = 0; + + ОбщегоНазначенияКлиентСервер.ПолучитьИдентификаторСтрокиДереваПоЗначениюПоля("Ключ", ИдентификаторСтроки, ДеревоИнформацииСтатистики.ПолучитьЭлементы(), КлючСтроки, Ложь); + + Элементы.ДеревоИнформацииСтатистики.ТекущаяСтрока = ИдентификаторСтроки; + + КонецЕсли; + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// РАЗДЕЛ ОБРАБОТКИ ФОНОВЫХ ЗАДАНИЙ + +&НаКлиенте +Функция ПараметрыФоновогоЗадания() + + ПараметрыЗадания = Новый Структура(); + ПараметрыЗадания.Вставить("ВыполняемыйМетод", ""); + ПараметрыЗадания.Вставить("НаименованиеЗадания", ""); + ПараметрыЗадания.Вставить("ПараметрыМетода", Неопределено); + ПараметрыЗадания.Вставить("ОповещениеОЗавершении", Неопределено); + ПараметрыЗадания.Вставить("ОбработчикЗавершения", Неопределено); + + Возврат ПараметрыЗадания; + +КонецФункции + +&НаКлиенте +Процедура ФоновоеЗаданиеЗапуститьНаКлиенте(ПараметрыЗадания, Отказ) + + Результат = ФоновоеЗаданиеЗапуститьНаСервере(ПараметрыЗадания); + + Если Результат = Неопределено Тогда + Отказ = Истина; + Возврат; + КонецЕсли; + + Если ОшибкаРасхожденияВерсийПриПолученииДанных <> Неопределено + И ОшибкаРасхожденияВерсийПриПолученииДанных.ЕстьОшибка Тогда + Отказ = Истина; + СообщениеОбОшибке = ОшибкаРасхожденияВерсийПриПолученииДанных.ТекстОшибки; + Возврат; + КонецЕсли; + + РезультатВыполненияФоновогоЗадания = Результат; + РезультатВыполненияФоновогоЗадания.Вставить("ОбработчикЗавершения", ПараметрыЗадания.ОбработчикЗавершения); + + Если Результат.Статус = "Выполняется" Тогда + + ДлительнаяОперация = Истина; + + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ПараметрыОжидания.ВыводитьСообщения = Истина; + + ОповещениеОЗавершенииФоновогоЗадания = Новый ОписаниеОповещения("ОповещениеОЗавершенииФоновогоЗадания", ЭтотОбъект); + + Если ИспользоватьПрогрессБар Тогда + ПараметрыОжидания.ВыводитьПрогрессВыполнения = Истина; + ПараметрыОжидания.ОповещениеОПрогрессеВыполнения = Новый ОписаниеОповещения("ПрогрессВыполненияФоновогоЗадания", ЭтотОбъект); + ПараметрыОжидания.Интервал = 1; + КонецЕсли; + + ДлительныеОперацииКлиент.ОжидатьЗавершение(Результат, ОповещениеОЗавершенииФоновогоЗадания, ПараметрыОжидания); + + Иначе + // Задание выполнено, отменено или выполнено с ошибкой. + ПодключитьОбработчикОжидания(ПараметрыЗадания.ОбработчикЗавершения, "1", Истина); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ПрогрессВыполненияФоновогоЗадания(Прогресс, ДополнительныеПараметры) Экспорт + + Если Прогресс = Неопределено Тогда + Возврат; + КонецЕсли; + + Если Прогресс.Прогресс <> Неопределено Тогда + СтруктураПрогресса = Прогресс.Прогресс; + ПроцентВыполнения = СтруктураПрогресса.Процент; + ДопИнформацияВыполнение = СтруктураПрогресса.Текст; + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Функция ФоновоеЗаданиеЗапуститьНаСервере(ПараметрыЗадания) + + ДатаНачалаОперации = ТекущаяДатаСеанса(); + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = ПараметрыЗадания.НаименованиеЗадания; + + Результат = ДлительныеОперации.ВыполнитьВФоне( + ПараметрыЗадания.ВыполняемыйМетод, + ПараметрыЗадания.ПараметрыМетода, + ПараметрыВыполнения); + + Возврат Результат; + +КонецФункции + +&НаКлиенте +Процедура ОповещениеОЗавершенииФоновогоЗадания(Результат, ДополнительныеПараметры) Экспорт + + ОбработчикЗавершения = РезультатВыполненияФоновогоЗадания.ОбработчикЗавершения; + РезультатВыполненияФоновогоЗадания = Результат; + + // Задание выполнено, отменено или выполнено с ошибкой. + ПодключитьОбработчикОжидания(ОбработчикЗавершения, "1", Истина); + +КонецПроцедуры + +&НаКлиенте +Процедура ОбработатьСтатусВыполненияФоновогоЗадания() + Если РезультатВыполненияФоновогоЗадания.Статус = "Ошибка" Тогда + СообщениеОбОшибке = РезультатВыполненияФоновогоЗадания.ПодробноеПредставлениеОшибки; + ИначеЕсли РезультатВыполненияФоновогоЗадания.Статус = "Отменено" Тогда + СообщениеОбОшибке = НСтр("ru = 'Действие отменено пользователем.'"); + КонецЕсли; +КонецПроцедуры + +#КонецОбласти + +//////////////////////////////////////////////////////////////////////////////// +// РАЗДЕЛ ОБРАБОТЧИКОВ СОБЫТИЙ ПЕРЕХОДОВ + +#Область ОбработчикиСобытийПереходов + +&НаКлиенте +Функция Подключаемый_СтраницаНачала_ПриПереходеДалее(Отказ) + + // Выполняем проверки заполнения реквизитов формы. + Если Объект.УзелИнформационнойБазы.Пустая() Тогда + + НСтрока = НСтр("ru = 'Укажите узел информационной базы'"); + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтрока,, "Объект.УзелИнформационнойБазы",, Отказ); + + ИначеЕсли Объект.ВидТранспортаСообщенийОбмена.Пустая() Тогда + + НСтрока = НСтр("ru = 'Укажите вариант подключения'"); + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтрока,, "Объект.ВидТранспортаСообщенийОбмена",, Отказ); + + ИначеЕсли ОбменЧерезВебСервис И ПустаяСтрока(WSПароль) Тогда + + НСтрока = НСтр("ru = 'Не указан пароль.'"); + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтрока,, "WSПароль",, Отказ); + + КонецЕсли; + +КонецФункции + +&НаКлиенте +Функция Подключаемый_СтраницаОжиданияПроверкиПодключения_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) + + Если ОбменЧерезВебСервис Тогда + + ПроверитьПодключениеИСохранитьНастройки(Отказ); + + Если Отказ Тогда + + ПоказатьПредупреждение(, НСтр("ru = 'Не удалось выполнить операцию.'")); + + КонецЕсли; + + КонецЕсли; + +КонецФункции + +&НаСервере +Процедура ПроверитьПодключениеИСохранитьНастройки(Отказ) + + ПараметрыПодключения = ОбменДаннымиСервер.СтруктураПараметровWS(); + ЗаполнитьЗначенияСвойств(ПараметрыПодключения, ЭтотОбъект); + + СообщениеПользователю = ""; + WSПрокси = ОбменДаннымиСервер.ПолучитьWSПрокси(ПараметрыПодключения,, СообщениеПользователю); + + Если WSПрокси = Неопределено Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СообщениеПользователю,,"WSПароль",, Отказ); + Возврат; + КонецЕсли; + + Если WSЗапомнитьПароль Тогда + + Попытка + + УстановитьПривилегированныйРежим(Истина); + + // обновляем запись в РС + СтруктураЗаписи = Новый Структура; + СтруктураЗаписи.Вставить("Узел", Объект.УзелИнформационнойБазы); + СтруктураЗаписи.Вставить("WSЗапомнитьПароль", Истина); + СтруктураЗаписи.Вставить("WSПароль", WSПароль); + РегистрыСведений.НастройкиТранспортаОбмена.ОбновитьЗапись(СтруктураЗаписи); + + Исключение + + ЗаписьЖурналаРегистрации(ОбменДаннымиСервер.СобытиеЖурналаРегистрацииОбменДанными(), + УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(КраткоеПредставлениеОшибки(ИнформацияОбОшибке()),,,, Отказ); + Возврат; + + КонецПопытки; + + КонецЕсли; + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Страницы обработки получения данных (транспорт сообщения обмена). + +&НаКлиенте +Функция Подключаемый_СтраницаОжиданияАнализаДанных_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) + ИнициализироватьПеременныеОбработки(); +КонецФункции + +&НаКлиенте +Функция Подключаемый_СтраницаОжиданияАнализаДанных_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) + + ПропуститьПолучениеДанных = Ложь; + ПерейтиДалее = Ложь; + + ПараметрыМетода = Новый Структура; + ПараметрыМетода.Вставить("Отказ", Ложь); + ПараметрыМетода.Вставить("ДлительнаяОперация", ДлительнаяОперация); + ПараметрыМетода.Вставить("ИдентификаторОперации", ИдентификаторОперации); + ПараметрыМетода.Вставить("ИдентификаторФайлаПакетаДанных", ИдентификаторФайлаПакетаДанных); + ПараметрыМетода.Вставить("ИдентификаторФайла", ИдентификаторФайла); + ПараметрыМетода.Вставить("ИмяФайлаСообщенияОбмена", Объект.ИмяФайлаСообщенияОбмена); + ПараметрыМетода.Вставить("УзелИнформационнойБазы", Объект.УзелИнформационнойБазы); + ПараметрыМетода.Вставить("ИмяВременногоКаталогаСообщенийОбмена", Объект.ИмяВременногоКаталогаСообщенийОбмена); + ПараметрыМетода.Вставить("ВидТранспортаСообщенийОбмена", Объект.ВидТранспортаСообщенийОбмена); + ПараметрыМетода.Вставить("WSПароль", WSПароль); + + ПараметрыЗадания = ПараметрыФоновогоЗадания(); + ПараметрыЗадания.ВыполняемыйМетод = "Обработки.ПомощникИнтерактивногоОбменаДанными.ПолучитьСообщениеОбменаВоВременныйКаталог"; + ПараметрыЗадания.ПараметрыМетода = ПараметрыМетода; + ПараметрыЗадания.НаименованиеЗадания = НСтр("ru = 'Получение сообщения обмена во временный каталог'"); + ПараметрыЗадания.ОбработчикЗавершения = "ЗавершениеПолученияДанныхВоВременныйКаталог"; + + ФоновоеЗаданиеЗапуститьНаКлиенте(ПараметрыЗадания, Отказ); + +КонецФункции + +&НаКлиенте +Процедура ЗавершениеПолученияДанныхВоВременныйКаталог() + + ОбработатьСтатусВыполненияФоновогоЗадания(); + + Если ЗначениеЗаполнено(СообщениеОбОшибке) Тогда + ПропуститьПолучениеДанных = Истина; + Иначе + ЗавершениеПолученияДанныхВоВременныйКаталогНаСервере(); + КонецЕсли; + + Если ДлительнаяОперация И Не ПропуститьПолучениеДанных Тогда + ПодключитьОбработчикОжидания("ОбработчикОжиданияДлительнойОперации", 5, Истина); + Иначе + ПодключитьОбработчикОжидания("ВыполнитьПереходДалее", 1, Истина); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Функция Подключаемый_СтраницаОжиданияАнализаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) + + Если ПропуститьПолучениеДанных Тогда + Возврат Неопределено; + КонецЕсли; + + Если ДлительнаяОперацияЗавершена Тогда + + Если ДлительнаяОперацияЗавершенаСОшибкой Тогда + ПропуститьПолучениеДанных = Истина; + ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( + Объект.УзелИнформационнойБазы, + "ЗагрузкаДанных", + ДатаНачалаОперации, + СообщениеОбОшибке); + + Иначе + // Необходимо получить во временный каталог файл, подготовленный на корреспонденте. + Если Не ЗначениеЗаполнено(Объект.ИмяФайлаСообщенияОбмена) Тогда + + ПерейтиДалее = Ложь; + + ПараметрыМетода = Новый Структура; + ПараметрыМетода.Вставить("Отказ", Ложь); + ПараметрыМетода.Вставить("ИдентификаторФайла", ИдентификаторФайла); + ПараметрыМетода.Вставить("ИдентификаторФайлаПакетаДанных", ИдентификаторФайлаПакетаДанных); + ПараметрыМетода.Вставить("УзелИнформационнойБазы", Объект.УзелИнформационнойБазы); + ПараметрыМетода.Вставить("ИмяФайлаСообщенияОбмена", Объект.ИмяФайлаСообщенияОбмена); + ПараметрыМетода.Вставить("ИмяВременногоКаталогаСообщенийОбмена", Объект.ИмяВременногоКаталогаСообщенийОбмена); + ПараметрыМетода.Вставить("WSПароль", WSПароль); + + ПараметрыЗадания = ПараметрыФоновогоЗадания(); + ПараметрыЗадания.ВыполняемыйМетод = "Обработки.ПомощникИнтерактивногоОбменаДанными.ПолучитьСообщениеОбменаОтКорреспондентаВоВременныйКаталог"; + ПараметрыЗадания.ПараметрыМетода = ПараметрыМетода; + ПараметрыЗадания.НаименованиеЗадания = НСтр("ru = 'Получение файла с данными сообщения обмена во временный каталог'"); + ПараметрыЗадания.ОбработчикЗавершения = "ЗавершениеПолученияФайлаСДаннымиОтКорреспондентаВоВременныйКаталог"; + + ФоновоеЗаданиеЗапуститьНаКлиенте(ПараметрыЗадания, Отказ); + + КонецЕсли; + + КонецЕсли; + + КонецЕсли; + +КонецФункции + +&НаКлиенте +Процедура ЗавершениеПолученияФайлаСДаннымиОтКорреспондентаВоВременныйКаталог() + + ОбработатьСтатусВыполненияФоновогоЗадания(); + + Если ЗначениеЗаполнено(СообщениеОбОшибке) Тогда + ПропуститьПолучениеДанных = Истина; + Иначе + ЗавершениеПолученияДанныхВоВременныйКаталогНаСервере(); + КонецЕсли; + + ПодключитьОбработчикОжидания("ВыполнитьПереходДалее", 1, Истина); + +КонецПроцедуры + +&НаСервере +Процедура ЗавершениеПолученияДанныхВоВременныйКаталогНаСервере(); + + ШаблонСообщенияОбОшибке = НСтр("ru = 'Не удалось выполнить загрузку данных. Подробности см. в журнале регистрации'"); + РезультатВыполненияМетода = ПолучитьИзВременногоХранилища(РезультатВыполненияФоновогоЗадания.АдресРезультата); + + Если РезультатВыполненияМетода = Неопределено Тогда + Если Не ЗначениеЗаполнено(СообщениеОбОшибке) Тогда + СообщениеОбОшибке = ШаблонСообщенияОбОшибке; + КонецЕсли; + Иначе + + Если РезультатВыполненияМетода.Отказ + И Не ЗначениеЗаполнено(СообщениеОбОшибке) Тогда + СообщениеОбОшибке = ШаблонСообщенияОбОшибке; + Иначе + + ЗаполнитьЗначенияСвойств(ЭтотОбъект, РезультатВыполненияМетода); + + Объект.ИмяФайлаСообщенияОбмена = РезультатВыполненияМетода.ИмяФайлаСообщенияОбмена; + Объект.ИмяВременногоКаталогаСообщенийОбмена = РезультатВыполненияМетода.ИмяВременногоКаталогаСообщенийОбмена; + + КонецЕсли; + + КонецЕсли; + + Если ЗначениеЗаполнено(СообщениеОбОшибке) Тогда + + ДлительнаяОперация = Ложь; + ДлительнаяОперацияЗавершена = Истина; + ДлительнаяОперацияЗавершенаСОшибкой = Истина; + ПропуститьПолучениеДанных = Истина; + + ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( + Объект.УзелИнформационнойБазы, + "ЗагрузкаДанных", + ДатаНачалаОперации, + СообщениеОбОшибке); + + КонецЕсли; + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Страницы анализа данных (автоматическое сопоставление данных). + +&НаКлиенте +Функция Подключаемый_СтраницаАнализДанных_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) + + Если ПропуститьПолучениеДанных Тогда + ПропуститьСтраницу = Истина; + Иначе + ИнициализироватьПеременныеОбработки(); + КонецЕсли; + +КонецФункции + +&НаКлиенте +Функция Подключаемый_АнализДанных_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) + + Если ПропуститьПолучениеДанных Тогда + Возврат Неопределено; + КонецЕсли; + + ПерейтиДалее = Ложь; + + ПараметрыМетода = Новый Структура; + ПараметрыМетода.Вставить("УзелИнформационнойБазы", Объект.УзелИнформационнойБазы); + ПараметрыМетода.Вставить("ИмяФайлаСообщенияОбмена", Объект.ИмяФайлаСообщенияОбмена); + ПараметрыМетода.Вставить("ИмяВременногоКаталогаСообщенийОбмена", Объект.ИмяВременногоКаталогаСообщенийОбмена); + ПараметрыМетода.Вставить("ПроверятьРасхождениеВерсий", ПроверятьРасхождениеВерсий); + + ПараметрыЗадания = ПараметрыФоновогоЗадания(); + ПараметрыЗадания.ВыполняемыйМетод = "Обработки.ПомощникИнтерактивногоОбменаДанными.ВыполнитьАвтоматическоеСопоставлениеДанных"; + ПараметрыЗадания.ПараметрыМетода = ПараметрыМетода; + ПараметрыЗадания.НаименованиеЗадания = НСтр("ru = 'Анализ данных сообщения обмена'"); + ПараметрыЗадания.ОбработчикЗавершения = "ЗавершениеАнализаДанных"; + + ФоновоеЗаданиеЗапуститьНаКлиенте(ПараметрыЗадания, Отказ); + +КонецФункции + +&НаКлиенте +Функция ЗавершениеАнализаДанных() + + ОбработатьСтатусВыполненияФоновогоЗадания(); + + Если Не ПропуститьПолучениеДанных И ЗначениеЗаполнено(СообщениеОбОшибке) Тогда + ПропуститьПолучениеДанных = Истина; + ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( + Объект.УзелИнформационнойБазы, + "ЗагрузкаДанных", + ДатаНачалаОперации, + СообщениеОбОшибке); + Иначе + ЗавершениеАнализаДанныхНаСервере(); + КонецЕсли; + + Если ЗакрытьФормуБезусловно Тогда + ЭтотОбъект.Закрыть(); + КонецЕсли; + + Если Не ПропуститьПолучениеДанных Тогда + РазвернутьДеревоИнформацииСтатистики(); + КонецЕсли; + + ПодключитьОбработчикОжидания("ВыполнитьПереходДалее", 1, Истина); + +КонецФункции + +&НаСервере +Процедура ЗавершениеАнализаДанныхНаСервере() + + ЗафиксироватьОшибку = Ложь; + + // Проверка перехода на новый обмен данными. + ПроверкаНеобходимостиПереходаНаНовыйОбмен(); + Если ЗакрытьФормуБезусловно Тогда + Возврат; + КонецЕсли; + + Попытка + + РезультатАнализа = ПолучитьИзВременногоХранилища(РезультатВыполненияФоновогоЗадания.АдресРезультата); + + Если РезультатАнализа.Свойство("ТекстОшибки") Тогда + ОшибкаРасхожденияВерсийПриПолученииДанных = РезультатАнализа; + ИначеЕсли РезультатАнализа.Свойство("Отказ") Тогда + + ПропуститьПолучениеДанных = Истина; + ЗафиксироватьОшибку = Истина; + + Если РезультатАнализа.Свойство("РезультатВыполненияОбмена") + И РезультатАнализа.РезультатВыполненияОбмена = Перечисления.РезультатыВыполненияОбмена.Предупреждение_СообщениеОбменаБылоРанееПринято Тогда + + СтруктураНастроекОбмена = Новый Структура; + СтруктураНастроекОбмена.Вставить("УзелИнформационнойБазы", Объект.УзелИнформационнойБазы); + СтруктураНастроекОбмена.Вставить("РезультатВыполненияОбмена", РезультатАнализа.РезультатВыполненияОбмена); + СтруктураНастроекОбмена.Вставить("ДействиеПриОбмене", "ЗагрузкаДанных"); + СтруктураНастроекОбмена.Вставить("КоличествоОбъектовОбработано", 0); + СтруктураНастроекОбмена.Вставить("ДатаНачала", ДатаНачалаОперации); + СтруктураНастроекОбмена.Вставить("ДатаОкончания", ТекущаяДатаСеанса()); + СтруктураНастроекОбмена.Вставить("КлючСообщенияЖурналаРегистрации", + ОбменДаннымиСервер.ПолучитьКлючСообщенияЖурналаРегистрации(Объект.УзелИнформационнойБазы, "ЗагрузкаДанных")); + СтруктураНастроекОбмена.Вставить("ЭтоОбменВРИБ", + ОбменДаннымиПовтИсп.ЭтоУзелРаспределеннойИнформационнойБазы(Объект.УзелИнформационнойБазы)); + + ОбменДаннымиСервер.ЗафиксироватьЗавершениеОбмена(СтруктураНастроекОбмена); + + КонецЕсли; + + Иначе + + ВсеДанныеСопоставлены = РезультатАнализа.ВсеДанныеСопоставлены; + СтатистикаПустая = РезультатАнализа.СтатистикаПустая; + + Объект.ИнформацияСтатистики.Загрузить(РезультатАнализа.ИнформацияСтатистики); + Объект.ИнформацияСтатистики.Сортировать("Представление"); + + ИнформацияСтатистики(Объект.ИнформацияСтатистики.Выгрузить()); + + УстановитьВидимостьГруппыДополнительнойИнформации(); + + КонецЕсли; + + Исключение + ЗафиксироватьОшибку = Истина; + СообщениеОбОшибке = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); + КонецПопытки; + + Если ЗафиксироватьОшибку Тогда + + ПропуститьПолучениеДанных = Истина; + ТекстСообщения = ?(ЗначениеЗаполнено(СообщениеОбОшибке), СообщениеОбОшибке, + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не удалось загрузить данные из ""%1"" (этап анализа данных).'"), Объект.УзелИнформационнойБазы)); + + ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( + Объект.УзелИнформационнойБазы, + "ЗагрузкаДанных", + ДатаНачалаОперации, + ТекстСообщения); + + КонецЕсли; + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Страницы обработки сопоставления данных (интерактивное сопоставление данных). + +&НаКлиенте +Функция Подключаемый_СтраницаИнформацииСтатистики_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) + + Если СтатистикаПустая Или ПропуститьПолучениеДанных Тогда + ПропуститьСтраницу = Истина; + КонецЕсли; + +КонецФункции + +&НаКлиенте +Функция Подключаемый_СтраницаИнформацииСтатистики_ПриПереходеДалее(Отказ) + + Если СтатистикаПустая Или ПропуститьПолучениеДанных Или ВсеДанныеСопоставлены Тогда + Возврат Неопределено; + КонецЕсли; + + Если Истина = ПропускатьКонтрольОтказаТекущейСтраницы Тогда + ПропускатьКонтрольОтказаТекущейСтраницы = Неопределено; + Возврат Неопределено; + КонецЕсли; + + // Движение вперед будет из подтверждения. + Отказ = Истина; + + Кнопки = Новый СписокЗначений; + Кнопки.Добавить(КодВозвратаДиалога.Да, НСтр("ru = 'Продолжить'")); + Кнопки.Добавить(КодВозвратаДиалога.Нет, НСтр("ru = 'Отмена'")); + + Сообщение = НСтр("ru = 'Не все данные сопоставлены. Наличие несопоставленных данных + |может привести к появлению одинаковых элементов справочников (дублей). + |Продолжить?'"); + + Оповещение = Новый ОписаниеОповещения("СтраницаИнформацииСтатистики_ПриПереходеДалееЗавершениеВопроса", ЭтотОбъект); + + ПоказатьВопрос(Оповещение, Сообщение, Кнопки,, КодВозвратаДиалога.Да); + +КонецФункции + +// Продолжение процедуры (см. выше). +&НаКлиенте +Процедура СтраницаИнформацииСтатистики_ПриПереходеДалееЗавершениеВопроса(Знач РезультатВопроса, Знач ДополнительныеПараметры) Экспорт + + Если РезультатВопроса <> КодВозвратаДиалога.Да Тогда + Возврат; + КонецЕсли; + + ПодключитьОбработчикОжидания("Подключаемый_ПерейтиНаШагВпередОтложеннойОбработкой", 0.1, Истина); + +КонецПроцедуры + +&НаКлиенте +Процедура Подключаемый_ПерейтиНаШагВпередОтложеннойОбработкой() + + // Двигаемся на шаг вперед принудительно. + ПропускатьКонтрольОтказаТекущейСтраницы = Истина; + ИзменитьПорядковыйНомерПерехода( +1 ); + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Страницы обработки загрузки данных + +&НаКлиенте +Функция Подключаемый_ЗагрузкаДанных_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) + + Если ПропуститьПолучениеДанных Тогда + ПропуститьСтраницу = Истина; + УдалитьВременныйКаталогСообщенийОбмена(Объект.ИмяВременногоКаталогаСообщенийОбмена); + Иначе + ИнициализироватьПеременныеОбработки(); + КонецЕсли; + +КонецФункции + +&НаКлиенте +Функция Подключаемый_ЗагрузкаДанных_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) + + Если ПропуститьПолучениеДанных Тогда + УдалитьВременныйКаталогСообщенийОбмена(Объект.ИмяВременногоКаталогаСообщенийОбмена); + Возврат Неопределено; + КонецЕсли; + + ПерейтиДалее = Ложь; + ПараметрыМетода = Новый Структура; + ПараметрыМетода.Вставить("УзелИнформационнойБазы", Объект.УзелИнформационнойБазы); + ПараметрыМетода.Вставить("ИмяФайлаСообщенияОбмена", Объект.ИмяФайлаСообщенияОбмена); + + ПараметрыЗадания = ПараметрыФоновогоЗадания(); + ПараметрыЗадания.ВыполняемыйМетод = "Обработки.ПомощникИнтерактивногоОбменаДанными.ВыполнитьЗагрузкуДанных"; + ПараметрыЗадания.ПараметрыМетода = ПараметрыМетода; + ПараметрыЗадания.НаименованиеЗадания = НСтр("ru = 'Загрузка данных из сообщения обмена'"); + ПараметрыЗадания.ОбработчикЗавершения = "ЗавершениеЗагрузкиДанных"; + + ФоновоеЗаданиеЗапуститьНаКлиенте(ПараметрыЗадания, Отказ); + +КонецФункции + +&НаКлиенте +Процедура ЗавершениеЗагрузкиДанных() + + ОбработатьСтатусВыполненияФоновогоЗадания(); + + Если ЗначениеЗаполнено(СообщениеОбОшибке) И Не ПропуститьПолучениеДанных Тогда + ПропуститьПолучениеДанных = Истина; + КонецЕсли; + + ОтображаетсяПрогрессБар = Элементы.ПанельОсновная.ТекущаяСтраница = Элементы.СтраницаОжиданияСинхронизацииДанныхПрогрессБарЗагрузка + Или Элементы.ПанельОсновная.ТекущаяСтраница = Элементы.СтраницаОжиданияСинхронизацииДанныхПрогрессБарВыгрузка; + + Если ИспользоватьПрогрессБар И ОтображаетсяПрогрессБар Тогда + ПроцентВыполнения = 100; + ДопИнформацияВыполнение = ""; + КонецЕсли; + + Если ПропуститьПолучениеДанных Тогда + + ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( + Объект.УзелИнформационнойБазы, + "ЗагрузкаДанных", + ДатаНачалаОперации, + СообщениеОбОшибке); + + КонецЕсли; + + ПодключитьОбработчикОжидания("ВыполнитьПереходДалее", 1, Истина); + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Страницы дополнительной выгрузки (регистрация к выгрузке дополнительных данных). + +&НаКлиенте +Функция Подключаемый_СтраницаВопросОСоставеВыгрузки_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) + + Если ДополнениеВыгрузки.ВариантВыгрузки<0 Тогда + // Согласно настройкам узла дополнение выгрузки не производится, переходим на следующую страницу. + ПропуститьСтраницу = Истина; + КонецЕсли; + +КонецФункции + +&НаКлиенте +Функция Подключаемый_СтраницаВопросОСоставеВыгрузки_ПриПереходеДалее(Отказ) + + Если ДополнениеВыгрузки.ВариантВыгрузки >= 0 Тогда + РегистрацияДополнительноОтобранныхДанных(); + + // Возможно, на этапе регистрации возникли проблемы, которые надо показать в предупреждении. + Если ЗначениеЗаполнено(СообщениеОбОшибке) И ДлительнаяОперацияЗавершенаСОшибкой Тогда + ПерейтиДалее = Ложь; + ИзменитьПорядковыйНомерПерехода(-1); + ПоказатьПредупреждение(, СообщениеОбОшибке); + КонецЕсли; + КонецЕсли; + +КонецФункции + +&НаСервере +Процедура РегистрацияДополнительноОтобранныхДанных() + + // Сохраняем настройки дополнения выгрузки. + ОбменДаннымиСервер.ИнтерактивноеИзменениеВыгрузкиСохранитьНастройки(ДополнениеВыгрузки, + ОбменДаннымиСервер.ДополнениеВыгрузкиИмяАвтоСохраненияНастроек()); + + // Дополнительно регистрируем данные. + Попытка + СообщениеОбОшибке = ""; + ОбменДаннымиСервер.ИнтерактивноеИзменениеВыгрузкиЗарегистрироватьДополнительныеДанные(ДополнениеВыгрузки); + Исключение + УдалитьВременныйКаталогСообщенийОбмена(Объект.ИмяВременногоКаталогаСообщенийОбмена); + ДлительнаяОперацияЗавершенаСОшибкой = Истина; + ДлительнаяОперацияЗавершена = Истина; + ДлительнаяОперация = Ложь; + СообщениеОбОшибке = НСтр("ru = 'Возникла проблема при добавлении данных к выгрузке:'") + + Символы.ПС + КраткоеПредставлениеОшибки(ИнформацияОбОшибке()) + + Символы.ПС + НСтр("ru = 'Необходимо изменить условия отбора.'"); + Возврат; + КонецПопытки; + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Страницы обработки выгрузки данных + +&НаКлиенте +Функция Подключаемый_ВыгрузкаДанных_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) + + ИнициализироватьПеременныеОбработки(); + +КонецФункции + +&НаКлиенте +Функция Подключаемый_СтраницаОжиданияВыгрузкиДанных_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) + + ПерейтиДалее = Ложь; + + ПараметрыМетода = Новый Структура; + ПараметрыМетода.Вставить("УзелИнформационнойБазы", Объект.УзелИнформационнойБазы); + ПараметрыМетода.Вставить("ВидТранспортаСообщенийОбмена", Объект.ВидТранспортаСообщенийОбмена); + ПараметрыМетода.Вставить("ИмяФайлаСообщенияОбмена", Объект.ИмяФайлаСообщенияОбмена); + ПараметрыМетода.Вставить("ДлительнаяОперация", ДлительнаяОперация); + ПараметрыМетода.Вставить("ИдентификаторОперации", ИдентификаторОперации); + ПараметрыМетода.Вставить("ИдентификаторФайла", ИдентификаторФайла); + ПараметрыМетода.Вставить("WSПароль", WSПароль); + ПараметрыМетода.Вставить("Отказ", Ложь); + + ПараметрыЗадания = ПараметрыФоновогоЗадания(); + ПараметрыЗадания.ВыполняемыйМетод = "Обработки.ПомощникИнтерактивногоОбменаДанными.ВыполнитьВыгрузкуДанных"; + ПараметрыЗадания.ПараметрыМетода = ПараметрыМетода; + ПараметрыЗадания.НаименованиеЗадания = НСтр("ru = 'Выгрузка данных из сообщения обмена'"); + ПараметрыЗадания.ОбработчикЗавершения = "ЗавершениеВыгрузкиДанных"; + + ФоновоеЗаданиеЗапуститьНаКлиенте(ПараметрыЗадания, Отказ); + +КонецФункции + +&НаКлиенте +Процедура ЗавершениеВыгрузкиДанных() + + ОбработатьСтатусВыполненияФоновогоЗадания(); + + ОтображаетсяПрогрессБар = Элементы.ПанельОсновная.ТекущаяСтраница = Элементы.СтраницаОжиданияСинхронизацииДанныхПрогрессБарЗагрузка + Или Элементы.ПанельОсновная.ТекущаяСтраница = Элементы.СтраницаОжиданияСинхронизацииДанныхПрогрессБарВыгрузка; + + Если ИспользоватьПрогрессБар И ОтображаетсяПрогрессБар Тогда + ПроцентВыполнения = 100; + ДопИнформацияВыполнение = ""; + КонецЕсли; + + ЗавершениеВыгрузкиНаСервере(); + + Если ДлительнаяОперация И Не ЗначениеЗаполнено(СообщениеОбОшибке) Тогда + ПодключитьОбработчикОжидания("ОбработчикОжиданияДлительнойОперации", 5, Истина); + Иначе + УдалитьВременныйКаталогСообщенийОбмена(Объект.ИмяВременногоКаталогаСообщенийОбмена); + ПодключитьОбработчикОжидания("ВыполнитьПереходДалее", 1, Истина); + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура ЗавершениеВыгрузкиНаСервере(); + + РезультатВыполненияМетода = ПолучитьИзВременногоХранилища(РезультатВыполненияФоновогоЗадания.АдресРезультата); + + ЗаполнитьЗначенияСвойств(ЭтотОбъект, РезультатВыполненияМетода, + "ДлительнаяОперация, ИдентификаторОперации, ИдентификаторФайла, WSПароль"); + + Если РезультатВыполненияМетода.Отказ + И Не ЗначениеЗаполнено(СообщениеОбОшибке) Тогда + СообщениеОбОшибке = НСтр("ru = 'Не удалось выполнить отправку данных. Подробности см. в журнале регистрации'"); + КонецЕсли; + + Если ЗначениеЗаполнено(СообщениеОбОшибке) Тогда + + ДлительнаяОперация = Ложь; + ДлительнаяОперацияЗавершена = Истина; + ДлительнаяОперацияЗавершенаСОшибкой = Истина; + + ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( + Объект.УзелИнформационнойБазы, + "ВыгрузкаДанных", + ДатаНачалаОперации, + СообщениеОбОшибке); + + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Функция Подключаемый_СтраницаОжиданияВыгрузкиДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) + + Если ДлительнаяОперацияЗавершена Тогда + + Если ДлительнаяОперацияЗавершенаСОшибкой Тогда + + ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( + Объект.УзелИнформационнойБазы, + "ВыгрузкаДанных", + ДатаНачалаОперации, + СообщениеОбОшибке); + + Иначе + ОбменДаннымиВызовСервера.ЗафиксироватьВыполнениеВыгрузкиДанныхВРежимеДлительнойОперации( + Объект.УзелИнформационнойБазы, ДатаНачалаОперации); + КонецЕсли; + + КонецЕсли; + +КонецФункции + +//////////////////////////////////////////////////////////////////////////////// +// Страницы итоговой информации + +&НаКлиенте +Функция Подключаемый_СтраницаОкончанияСопоставления_ПриОткрытии(Отказ, ПропуститьСтраницу, Знач ЭтоПереходДалее) + + ПолучитьСостоянияОбменовДанными(РезультатЗагрузкиДанных, РезультатВыгрузкиДанных, Объект.УзелИнформационнойБазы); + + ОбновитьОтображениеЭлементовСтатусаОбменаДанными(); + + Возврат Неопределено; + +КонецФункции + +#КонецОбласти + +//////////////////////////////////////////////////////////////////////////////// +// РАЗДЕЛ ИНИЦИАЛИЗАЦИИ ПЕРЕХОДОВ + +#Область ТаблицыПереходов &НаСервере Процедура ПолучениеДанныхЧерезОбычныеКаналыСвязи() @@ -2585,33 +2673,21 @@ ТаблицаПереходовНоваяСтрока(1, "СтраницаНачала", "СтраницаНавигацииНачало",, "СтраницаНачала_ПриПереходеДалее"); // Получение данных (транспорт сообщения обмена). - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(2, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(3, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(4, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(2, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанных_ОбработкаДлительнойОперации", "СтраницаОжиданияАнализаДанных_ПриОткрытии"); // Анализ данных. // Автоматическое сопоставление данных. - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(5, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(6, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(7, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(3, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанных_ОбработкаДлительнойОперации", "СтраницаАнализДанных_ПриОткрытии"); // Сопоставление данных пользователем. - ТаблицаПереходовНоваяСтрока(8, "СтраницаИнформацииСтатистики", "СтраницаНавигацииПродолжение", "СтраницаИнформацииСтатистики_ПриОткрытии", "СтраницаИнформацииСтатистики_ПриПереходеДалее"); + ТаблицаПереходовНоваяСтрока(5, "СтраницаИнформацииСтатистики", "СтраницаНавигацииПродолжение", "СтраницаИнформацииСтатистики_ПриОткрытии", "СтраницаИнформацииСтатистики_ПриПереходеДалее"); // Загрузка данных. - Если ОбменДаннымиПовтИсп.ЭтоУзелРаспределеннойИнформационнойБазы(Объект.УзелИнформационнойБазы) Тогда - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(9, "СтраницаОжиданияСинхронизацииДанных", "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(10, "СтраницаОжиданияСинхронизацииДанных", "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(11, "СтраницаОжиданияСинхронизацииДанных", "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); - Иначе - ИспользоватьПрогрессБар = Истина; - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(9, "СтраницаОжиданияСинхронизацииДанныхПрогрессБарЗагрузка", "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(10, "СтраницаОжиданияСинхронизацииДанныхПрогрессБарЗагрузка", "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(11, "СтраницаОжиданияСинхронизацииДанныхПрогрессБарЗагрузка", "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); - КонецЕсли; + ИспользоватьПрогрессБар = Истина; + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(6, "СтраницаОжиданияСинхронизацииДанныхПрогрессБарЗагрузка", "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации", "ЗагрузкаДанных_ПриОткрытии"); // Итоги. - ТаблицаПереходовНоваяСтрока(12, "СтраницаОкончанияСопоставления", "СтраницаНавигацииОкончание", "СтраницаОкончанияСопоставления_ПриОткрытии"); + ТаблицаПереходовНоваяСтрока(7, "СтраницаОкончанияСопоставления", "СтраницаНавигацииОкончание", "СтраницаОкончанияСопоставления_ПриОткрытии"); КонецПроцедуры @@ -2622,21 +2698,18 @@ // Проверка подключения. ТаблицаПереходовНоваяСтрока(1, "СтраницаНачала", "СтраницаНавигацииНачало",, "СтраницаНачала_ПриПереходеДалее"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(2, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияПроверкиПодключения_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(2, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияПроверкиПодключения_ОбработкаДлительнойОперации"); // Получение данных (транспорт сообщения обмена). - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(3, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(4, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(5, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(3, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанных_ОбработкаДлительнойОперации", "СтраницаОжиданияАнализаДанных_ПриОткрытии"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(4, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); // Анализ данных. // Автоматическое сопоставление данных. - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(6, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(7, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(8, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(5, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанных_ОбработкаДлительнойОперации", "СтраницаАнализДанных_ПриОткрытии"); // Сопоставление данных пользователем. - ТаблицаПереходовНоваяСтрока(9, "СтраницаИнформацииСтатистики", "СтраницаНавигацииПродолжение", "СтраницаИнформацииСтатистики_ПриОткрытии", "СтраницаИнформацииСтатистики_ПриПереходеДалее"); + ТаблицаПереходовНоваяСтрока(6, "СтраницаИнформацииСтатистики", "СтраницаНавигацииПродолжение", "СтраницаИнформацииСтатистики_ПриОткрытии", "СтраницаИнформацииСтатистики_ПриПереходеДалее"); // Загрузка данных. Если ОбменЧерезВебСервис Тогда @@ -2645,13 +2718,11 @@ ИспользоватьПрогрессБар = Истина; ИмяСтраницыСинхронизация = "СтраницаОжиданияСинхронизацииДанныхПрогрессБарЗагрузка"; КонецЕсли; - - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(10, ИмяСтраницыСинхронизация, "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(11, ИмяСтраницыСинхронизация, "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(12, ИмяСтраницыСинхронизация, "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(7, ИмяСтраницыСинхронизация, "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации", "ЗагрузкаДанных_ПриОткрытии"); // Итоги. - ТаблицаПереходовНоваяСтрока(13, "СтраницаОкончанияСопоставления", "СтраницаНавигацииОкончание", "СтраницаОкончанияСопоставления_ПриОткрытии"); + ТаблицаПереходовНоваяСтрока(8, "СтраницаОкончанияСопоставления", "СтраницаНавигацииОкончание", "СтраницаОкончанияСопоставления_ПриОткрытии"); КонецПроцедуры @@ -2665,24 +2736,14 @@ // Настройка выгрузки данных. РезультатВыгрузкиДанных = ""; - ТаблицаПереходовНоваяСтрока(2, "СтраницаВопросОСоставеВыгрузки", "СтраницаНавигацииПродолжение", "СтраницаВопросОСоставеВыгрузки_ПриОткрытии"); + ТаблицаПереходовНоваяСтрока(2, "СтраницаВопросОСоставеВыгрузки", "СтраницаНавигацииПродолжение", "СтраницаВопросОСоставеВыгрузки_ПриОткрытии", "СтраницаВопросОСоставеВыгрузки_ПриПереходеДалее"); // Выгрузка данных. - Если ОбменДаннымиПовтИсп.ЭтоУзелРаспределеннойИнформационнойБазы(Объект.УзелИнформационнойБазы) Тогда - ИмяСтраницыСинхронизация = "СтраницаОжиданияСинхронизацииДанных"; - ИмяПроцедуры = "СтраницаОжиданияВыгрузкиДанных_ОбработкаДлительнойОперации"; - Иначе - ИспользоватьПрогрессБар = Истина; - ИмяСтраницыСинхронизация = "СтраницаОжиданияСинхронизацииДанныхПрогрессБарВыгрузка"; - ИмяПроцедуры = "СтраницаОжиданияВыгрузкиДанныхОбычныеКаналы_ОбработкаДлительнойОперации"; - КонецЕсли; - - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(3, ИмяСтраницыСинхронизация, "СтраницаНавигацииОжидание", Истина, ИмяПроцедуры); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(4, ИмяСтраницыСинхронизация, "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияВыгрузкиДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(5, ИмяСтраницыСинхронизация, "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияВыгрузкиДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + ИспользоватьПрогрессБар = Истина; + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(3, "СтраницаОжиданияСинхронизацииДанныхПрогрессБарВыгрузка", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияВыгрузкиДанных_ОбработкаДлительнойОперации", "ВыгрузкаДанных_ПриОткрытии"); // Итоги. - ТаблицаПереходовНоваяСтрока(6, "СтраницаОкончанияСопоставления", "СтраницаНавигацииОкончание", "СтраницаОкончанияСопоставления_ПриОткрытии"); + ТаблицаПереходовНоваяСтрока(4, "СтраницаОкончанияСопоставления", "СтраницаНавигацииОкончание", "СтраницаОкончанияСопоставления_ПриОткрытии"); КонецПроцедуры @@ -2697,24 +2758,21 @@ // Настройка выгрузки данных. РезультатВыгрузкиДанных = ""; - ТаблицаПереходовНоваяСтрока(3, "СтраницаВопросОСоставеВыгрузки", "СтраницаНавигацииПродолжение", "СтраницаВопросОСоставеВыгрузки_ПриОткрытии"); + ТаблицаПереходовНоваяСтрока(3, "СтраницаВопросОСоставеВыгрузки", "СтраницаНавигацииПродолжение", "СтраницаВопросОСоставеВыгрузки_ПриОткрытии", "СтраницаВопросОСоставеВыгрузки_ПриПереходеДалее"); // Выгрузка данных. Если ОбменЧерезВебСервис Тогда ИмяСтраницыСинхронизация = "СтраницаОжиданияСинхронизацииДанных"; - ИмяПроцедуры = "СтраницаОжиданияВыгрузкиДанных_ОбработкаДлительнойОперации"; Иначе ИспользоватьПрогрессБар = Истина; ИмяСтраницыСинхронизация = "СтраницаОжиданияСинхронизацииДанныхПрогрессБарВыгрузка"; - ИмяПроцедуры = "СтраницаОжиданияВыгрузкиДанныхОбычныеКаналы_ОбработкаДлительнойОперации"; КонецЕсли; - - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(4, ИмяСтраницыСинхронизация, "СтраницаНавигацииОжидание", Истина, ИмяПроцедуры); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(5, ИмяСтраницыСинхронизация, "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияВыгрузкиДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(6, ИмяСтраницыСинхронизация, "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияВыгрузкиДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(4, ИмяСтраницыСинхронизация, "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияВыгрузкиДанных_ОбработкаДлительнойОперации", "ВыгрузкаДанных_ПриОткрытии"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(5, ИмяСтраницыСинхронизация, "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияВыгрузкиДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); // Итоги. - ТаблицаПереходовНоваяСтрока(7, "СтраницаОкончанияСопоставления", "СтраницаНавигацииОкончание", "СтраницаОкончанияСопоставления_ПриОткрытии"); + ТаблицаПереходовНоваяСтрока(6, "СтраницаОкончанияСопоставления", "СтраницаНавигацииОкончание", "СтраницаОкончанияСопоставления_ПриОткрытии"); КонецПроцедуры @@ -2727,45 +2785,29 @@ ТаблицаПереходовНоваяСтрока(1, "СтраницаНачала", "СтраницаНавигацииНачало",, "СтраницаНачала_ПриПереходеДалее"); // Получение данных (транспорт сообщения обмена). - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(2, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(3, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(4, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(2, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанных_ОбработкаДлительнойОперации", "СтраницаОжиданияАнализаДанных_ПриОткрытии"); // Анализ данных. // Автоматическое сопоставление данных. - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(5, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(6, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(7, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(3, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанных_ОбработкаДлительнойОперации", "СтраницаАнализДанных_ПриОткрытии"); // Сопоставление данных пользователем. - ТаблицаПереходовНоваяСтрока(8, "СтраницаИнформацииСтатистики", "СтраницаНавигацииПродолжение", "СтраницаИнформацииСтатистики_ПриОткрытии", "СтраницаИнформацииСтатистики_ПриПереходеДалее"); - Если ОбменДаннымиПовтИсп.ЭтоУзелРаспределеннойИнформационнойБазы(Объект.УзелИнформационнойБазы) Тогда - ИмяСтраницыСинхронизацияЗагрузка = "СтраницаОжиданияСинхронизацииДанных"; - ИмяСтраницыСинхронизацияВыгрузка = "СтраницаОжиданияСинхронизацииДанных"; - ИмяПроцедурыВыгрузка = "СтраницаОжиданияВыгрузкиДанных_ОбработкаДлительнойОперации"; - Иначе - ИспользоватьПрогрессБар = Истина; - ИмяСтраницыСинхронизацияЗагрузка = "СтраницаОжиданияСинхронизацииДанныхПрогрессБарЗагрузка"; - ИмяСтраницыСинхронизацияВыгрузка = "СтраницаОжиданияСинхронизацииДанныхПрогрессБарВыгрузка"; - ИмяПроцедурыВыгрузка = "СтраницаОжиданияВыгрузкиДанныхОбычныеКаналы_ОбработкаДлительнойОперации"; - КонецЕсли; + ТаблицаПереходовНоваяСтрока(4, "СтраницаИнформацииСтатистики", "СтраницаНавигацииПродолжение", "СтраницаИнформацииСтатистики_ПриОткрытии", "СтраницаИнформацииСтатистики_ПриПереходеДалее"); + + ИспользоватьПрогрессБар = Истина; // Загрузка данных. - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(9, ИмяСтраницыСинхронизацияЗагрузка, "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(10, ИмяСтраницыСинхронизацияЗагрузка, "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(11, ИмяСтраницыСинхронизацияЗагрузка, "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(5, "СтраницаОжиданияСинхронизацииДанныхПрогрессБарЗагрузка", "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации", "ЗагрузкаДанных_ПриОткрытии"); // Настройка выгрузки данных. РезультатВыгрузкиДанных = ""; - ТаблицаПереходовНоваяСтрока(12, "СтраницаВопросОСоставеВыгрузки", "СтраницаНавигацииПродолжение", "СтраницаВопросОСоставеВыгрузки_ПриОткрытии"); + ТаблицаПереходовНоваяСтрока(6, "СтраницаВопросОСоставеВыгрузки", "СтраницаНавигацииПродолжение", "СтраницаВопросОСоставеВыгрузки_ПриОткрытии", "СтраницаВопросОСоставеВыгрузки_ПриПереходеДалее"); // Выгрузка данных. - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(13, ИмяСтраницыСинхронизацияВыгрузка, "СтраницаНавигацииОжидание", Истина, ИмяПроцедурыВыгрузка); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(14, ИмяСтраницыСинхронизацияВыгрузка, "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияВыгрузкиДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(15, ИмяСтраницыСинхронизацияВыгрузка, "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияВыгрузкиДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(7, "СтраницаОжиданияСинхронизацииДанныхПрогрессБарВыгрузка", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияВыгрузкиДанных_ОбработкаДлительнойОперации", "ВыгрузкаДанных_ПриОткрытии"); // Итоги. - ТаблицаПереходовНоваяСтрока(16, "СтраницаОкончанияСопоставления", "СтраницаНавигацииОкончание", "СтраницаОкончанияСопоставления_ПриОткрытии"); + ТаблицаПереходовНоваяСтрока(8, "СтраницаОкончанияСопоставления", "СтраницаНавигацииОкончание", "СтраницаОкончанияСопоставления_ПриОткрытии"); КонецПроцедуры @@ -2779,47 +2821,43 @@ ТаблицаПереходовНоваяСтрокаДлительнаяОперация(2, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияПроверкиПодключения_ОбработкаДлительнойОперации"); // Получение данных (транспорт сообщения обмена). - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(3, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(4, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(5, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(3, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанных_ОбработкаДлительнойОперации", "СтраницаОжиданияАнализаДанных_ПриОткрытии"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(4, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияАнализаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); // Анализ данных. // Автоматическое сопоставление данных. - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(6, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(7, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(8, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(5, "СтраницаОжиданияАнализаДанных", "СтраницаНавигацииОжидание", Истина, "АнализДанных_ОбработкаДлительнойОперации", "СтраницаАнализДанных_ПриОткрытии"); // Сопоставление данных пользователем. - ТаблицаПереходовНоваяСтрока(9, "СтраницаИнформацииСтатистики", "СтраницаНавигацииПродолжение", "СтраницаИнформацииСтатистики_ПриОткрытии", "СтраницаИнформацииСтатистики_ПриПереходеДалее"); + ТаблицаПереходовНоваяСтрока(6, "СтраницаИнформацииСтатистики", "СтраницаНавигацииПродолжение", "СтраницаИнформацииСтатистики_ПриОткрытии", "СтраницаИнформацииСтатистики_ПриПереходеДалее"); // Загрузка данных. Если ОбменЧерезВебСервис Тогда ИмяСтраницыСинхронизацияЗагрузка = "СтраницаОжиданияСинхронизацииДанных"; ИмяСтраницыСинхронизацияВыгрузка = "СтраницаОжиданияСинхронизацииДанных"; - ИмяПроцедурыВыгрузка = "СтраницаОжиданияВыгрузкиДанных_ОбработкаДлительнойОперации"; Иначе ИспользоватьПрогрессБар = Истина; ИмяСтраницыСинхронизацияЗагрузка = "СтраницаОжиданияСинхронизацииДанныхПрогрессБарЗагрузка"; ИмяСтраницыСинхронизацияВыгрузка = "СтраницаОжиданияСинхронизацииДанныхПрогрессБарВыгрузка"; - ИмяПроцедурыВыгрузка = "СтраницаОжиданияВыгрузкиДанныхОбычныеКаналы_ОбработкаДлительнойОперации"; КонецЕсли; - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(10, ИмяСтраницыСинхронизацияЗагрузка, "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(11, ИмяСтраницыСинхронизацияЗагрузка, "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(12, ИмяСтраницыСинхронизацияЗагрузка, "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(7, ИмяСтраницыСинхронизацияЗагрузка, "СтраницаНавигацииОжидание", Истина, "ЗагрузкаДанных_ОбработкаДлительнойОперации", "ЗагрузкаДанных_ПриОткрытии"); // Настройка выгрузки данных. РезультатВыгрузкиДанных = ""; - ТаблицаПереходовНоваяСтрока(13, "СтраницаВопросОСоставеВыгрузки", "СтраницаНавигацииПродолжение", "СтраницаВопросОСоставеВыгрузки_ПриОткрытии"); + ТаблицаПереходовНоваяСтрока(8, "СтраницаВопросОСоставеВыгрузки", "СтраницаНавигацииПродолжение", "СтраницаВопросОСоставеВыгрузки_ПриОткрытии", "СтраницаВопросОСоставеВыгрузки_ПриПереходеДалее"); // Выгрузка данных. - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(14, ИмяСтраницыСинхронизацияВыгрузка, "СтраницаНавигацииОжидание", Истина, ИмяПроцедурыВыгрузка); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(15, ИмяСтраницыСинхронизацияВыгрузка, "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияВыгрузкиДанныхДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрокаДлительнаяОперация(16, ИмяСтраницыСинхронизацияВыгрузка, "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияВыгрузкиДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(9, ИмяСтраницыСинхронизацияВыгрузка, "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияВыгрузкиДанных_ОбработкаДлительнойОперации", "ВыгрузкаДанных_ПриОткрытии"); + ТаблицаПереходовНоваяСтрокаДлительнаяОперация(10, ИмяСтраницыСинхронизацияВыгрузка, "СтраницаНавигацииОжидание", Истина, "СтраницаОжиданияВыгрузкиДанныхДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); // Итоги. - ТаблицаПереходовНоваяСтрока(17, "СтраницаОкончанияСопоставления", "СтраницаНавигацииОкончание", "СтраницаОкончанияСопоставления_ПриОткрытии"); + ТаблицаПереходовНоваяСтрока(11, "СтраницаОкончанияСопоставления", "СтраницаНавигацииОкончание", "СтраницаОкончанияСопоставления_ПриОткрытии"); КонецПроцедуры #КонецОбласти + +#КонецОбласти + +#КонецОбласти diff --git a/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/ManagerModule.bsl b/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/ManagerModule.bsl index 52b9dbaee..bfd289504 100644 --- a/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/ManagerModule.bsl +++ b/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/ManagerModule.bsl @@ -18,7 +18,6 @@ // Выполняем автоматическое сопоставление данных, полученных от корреспондента. // Получаем статистику сопоставления. - УстановитьПривилегированныйРежим(Истина); ОбменДаннымиСервер.ИнициализироватьПараметрыПроверкиРасхожденияВерсий(ПроверятьРасхождениеВерсий); @@ -69,8 +68,71 @@ Результат.Вставить("СтатистикаПустая", ТаблицаИнформацииСтатистики.Количество() = 0); Возврат Результат; + КонецФункции +// Для внутреннего использования. +// Выполняет загрузку сообщения обмена из внешнего источника +// (ftp, e-mail, сетевой каталог) во временный каталог пользователя операционной системы. +// +Процедура ПолучитьСообщениеОбменаВоВременныйКаталог(Параметры, АдресВременногоХранилища) Экспорт + + Отказ = Ложь; + УстановитьПривилегированныйРежим(Истина); + + Если Параметры.ВидТранспортаСообщенийОбмена = Перечисления.ВидыТранспортаСообщенийОбмена.COM Тогда + + СтруктураДанных = ОбменДаннымиСервер.ПолучитьСообщениеОбменаВоВременныйКаталогИзИнформационнойБазыКорреспондента(Отказ, Параметры.УзелИнформационнойБазы, Ложь); + + ИначеЕсли Параметры.ВидТранспортаСообщенийОбмена = Перечисления.ВидыТранспортаСообщенийОбмена.WS Тогда + + СтруктураДанных = ОбменДаннымиСервер.ПолучитьСообщениеОбменаВоВременныйКаталогИзИнформационнойБазыКорреспондентаЧерезВебСервис( + Отказ, + Параметры.УзелИнформационнойБазы, + Параметры.ИдентификаторФайла, + Параметры.ДлительнаяОперация, + Параметры.ИдентификаторОперации, + Параметры.WSПароль); + + Иначе // FILE, FTP, EMAIL + + СтруктураДанных = ОбменДаннымиСервер.ПолучитьСообщениеОбменаВоВременныйКаталог(Отказ, Параметры.УзелИнформационнойБазы, Параметры.ВидТранспортаСообщенийОбмена, Ложь); + + КонецЕсли; + + Параметры.Отказ = Отказ; + Параметры.ИмяВременногоКаталогаСообщенийОбмена = СтруктураДанных.ИмяВременногоКаталогаСообщенийОбмена; + Параметры.ИдентификаторФайлаПакетаДанных = СтруктураДанных.ИдентификаторФайлаПакетаДанных; + Параметры.ИмяФайлаСообщенияОбмена = СтруктураДанных.ИмяФайлаСообщенияОбмена; + + ПоместитьВоВременноеХранилище(Параметры, АдресВременногоХранилища); + +КонецПроцедуры + +// Для внутреннего использования. +// Получает сообщение обмена из информационной базы корреспондента через веб-сервис во временный каталог пользователя ОС. +// +Процедура ПолучитьСообщениеОбменаОтКорреспондентаВоВременныйКаталог(Параметры, АдресВременногоХранилища) Экспорт + + Отказ = Ложь; + + УстановитьПривилегированныйРежим(Истина); + + СтруктураДанных = ОбменДаннымиСервер.ПолучитьСообщениеОбменаВоВременныйКаталогИзИнформационнойБазыКорреспондентаЧерезВебСервисЗавершениеДлительнойОперации( + Отказ, + Параметры.УзелИнформационнойБазы, + Параметры.ИдентификаторФайла, + Параметры.WSПароль); + + Параметры.Отказ = Отказ; + Параметры.ИмяВременногоКаталогаСообщенийОбмена = СтруктураДанных.ИмяВременногоКаталогаСообщенийОбмена; + Параметры.ИдентификаторФайлаПакетаДанных = СтруктураДанных.ИдентификаторФайлаПакетаДанных; + Параметры.ИмяФайлаСообщенияОбмена = СтруктураДанных.ИмяФайлаСообщенияОбмена; + + ПоместитьВоВременноеХранилище(Параметры, АдресВременногоХранилища); + +КонецПроцедуры + // Для внутреннего использования. // Процедура ВыполнитьЗагрузкуДанных(Параметры, АдресВременногоХранилища) Экспорт @@ -82,32 +144,36 @@ ПараметрыОбменаДанными.ДействиеПриОбмене = Перечисления.ДействияПриОбмене.ЗагрузкаДанных; ОбменДаннымиСервер.ВыполнитьОбменДаннымиДляУзлаИнформационнойБазыЧерезФайлИлиСтроку(ПараметрыОбменаДанными); + КонецПроцедуры // Для внутреннего использования. -// Выполняет выгрузку данных, вызывается фоновым заданием +// Выполняет выгрузку данных, вызывается фоновым заданием. // Параметры - структура с параметрами для передачи. Процедура ВыполнитьВыгрузкуДанных(Параметры, АдресВременногоХранилища) Экспорт - + Отказ = Ложь; ПараметрыОбмена = ОбменДаннымиСервер.ПараметрыОбмена(); + ПараметрыОбмена.ВыполнятьЗагрузку = Ложь; + ПараметрыОбмена.ВыполнятьВыгрузку = Истина; + ПараметрыОбмена.ДлительнаяОперацияРазрешена = Истина; ПараметрыОбмена.ВидТранспортаСообщенийОбмена = Параметры.ВидТранспортаСообщенийОбмена; - ПараметрыОбмена.ВыполнятьЗагрузку = Ложь; - ПараметрыОбмена.ВыполнятьВыгрузку = Истина; - - ПараметрыОбмена.ДлительнаяОперацияРазрешена = Истина; - ПараметрыОбмена.ДлительнаяОперация = Истина; - ПараметрыОбмена.ИдентификаторОперации = Параметры.ИдентификаторОперации; - ПараметрыОбмена.ИдентификаторФайла = Параметры.ИдентификаторФайла; - ПараметрыОбмена.ПараметрыАутентификации = Параметры.WSПароль; + ПараметрыОбмена.ДлительнаяОперация = Параметры.ДлительнаяОперация; + ПараметрыОбмена.ИдентификаторОперации = Параметры.ИдентификаторОперации; + ПараметрыОбмена.ИдентификаторФайла = Параметры.ИдентификаторФайла; + ПараметрыОбмена.ПараметрыАутентификации = Параметры.WSПароль; ОбменДаннымиСервер.ВыполнитьОбменДаннымиДляУзлаИнформационнойБазы(Параметры.УзелИнформационнойБазы, ПараметрыОбмена, Отказ); + Параметры.ДлительнаяОперация = ПараметрыОбмена.ДлительнаяОперация; Параметры.ИдентификаторОперации = ПараметрыОбмена.ИдентификаторОперации; Параметры.ИдентификаторФайла = ПараметрыОбмена.ИдентификаторФайла; Параметры.WSПароль = ПараметрыОбмена.ПараметрыАутентификации; - ПоместитьВоВременноеХранилище(Новый Структура("Отказ", Отказ), АдресВременногоХранилища); + Параметры.Отказ = Отказ; + + ПоместитьВоВременноеХранилище(Параметры, АдресВременногоХранилища); + КонецПроцедуры // Для внутреннего использования. diff --git a/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/ObjectModule.bsl b/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/ObjectModule.bsl index 183aca47d..54bf0da21 100644 --- a/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/ObjectModule.bsl +++ b/SSL/src/DataProcessors/ПомощникИнтерактивногоОбменаДанными/ObjectModule.bsl @@ -213,81 +213,6 @@ КонецПроцедуры -// Выполняет загрузку сообщения обмена из внешнего источника -// (ftp, e-mail, сетевой каталог) во временный каталог пользователя операционной системы. -// -// Параметры: -// Отказ - Булево - флаг отказа; поднимается в случае возникновения ошибок при работе -// процедуры. -// ИдентификаторФайлаПакетаДанных - Дата - дата изменения сообщения обмена; -// выступает в качестве идентификатора файла для подсистемы обмена -// данными. -// -Процедура ПолучитьСообщениеОбменаВоВременныйКаталог( - Отказ, - ИдентификаторФайлаПакетаДанных, - ИдентификаторФайла, - ДлительнаяОперация, - ИдентификаторОперации, - Пароль) Экспорт - - УстановитьПривилегированныйРежим(Истина); - - // Удаляем предыдущий временный каталог сообщений обмена со всеми вложенными файлами. - УдалитьВременныйКаталогСообщенийОбмена(ИмяВременногоКаталогаСообщенийОбмена); - - Если ВидТранспортаСообщенийОбмена = Перечисления.ВидыТранспортаСообщенийОбмена.COM Тогда - - СтруктураДанных = ОбменДаннымиСервер.ПолучитьСообщениеОбменаВоВременныйКаталогИзИнформационнойБазыКорреспондента(Отказ, УзелИнформационнойБазы, Ложь); - - ИначеЕсли ВидТранспортаСообщенийОбмена = Перечисления.ВидыТранспортаСообщенийОбмена.WS Тогда - - СтруктураДанных = ОбменДаннымиСервер.ПолучитьСообщениеОбменаВоВременныйКаталогИзИнформационнойБазыКорреспондентаЧерезВебСервис( - Отказ, - УзелИнформационнойБазы, - ИдентификаторФайла, - ДлительнаяОперация, - ИдентификаторОперации, - Пароль); - - Иначе // FILE, FTP, EMAIL - - СтруктураДанных = ОбменДаннымиСервер.ПолучитьСообщениеОбменаВоВременныйКаталог(Отказ, УзелИнформационнойБазы, ВидТранспортаСообщенийОбмена, Ложь); - - КонецЕсли; - - ИмяВременногоКаталогаСообщенийОбмена = СтруктураДанных.ИмяВременногоКаталогаСообщенийОбмена; - ИдентификаторФайлаПакетаДанных = СтруктураДанных.ИдентификаторФайлаПакетаДанных; - ИмяФайлаСообщенияОбмена = СтруктураДанных.ИмяФайлаСообщенияОбмена; - -КонецПроцедуры - -// Выполняет загрузку сообщения обмена из сервиса передачи файлов -// во временный каталог пользователя операционной системы. -// -Процедура ПолучитьСообщениеОбменаВоВременныйКаталогОкончаниеДлительнойОперации( - Отказ, - ИдентификаторФайлаПакетаДанных, - ИдентификаторФайла, - Знач Пароль = "") Экспорт - - УстановитьПривилегированныйРежим(Истина); - - // Удаляем предыдущий временный каталог сообщений обмена со всеми вложенными файлами. - УдалитьВременныйКаталогСообщенийОбмена(ИмяВременногоКаталогаСообщенийОбмена); - - СтруктураДанных = ОбменДаннымиСервер.ПолучитьСообщениеОбменаВоВременныйКаталогИзИнформационнойБазыКорреспондентаЧерезВебСервисЗавершениеДлительнойОперации( - Отказ, - УзелИнформационнойБазы, - ИдентификаторФайла, - Пароль); - - ИмяВременногоКаталогаСообщенийОбмена = СтруктураДанных.ИмяВременногоКаталогаСообщенийОбмена; - ИдентификаторФайлаПакетаДанных = СтруктураДанных.ИдентификаторФайлаПакетаДанных; - ИмяФайлаСообщенияОбмена = СтруктураДанных.ИмяФайлаСообщенияОбмена; - -КонецПроцедуры - // Выполняет анализ входящего сообщения обмена. Заполняет данными таблицу ИнформацияСтатистики. // // Параметры: @@ -419,25 +344,6 @@ КонецПроцедуры -Процедура УдалитьВременныйКаталогСообщенийОбмена(ИмяВременногоКаталога) - - Если Не ПустаяСтрока(ИмяВременногоКаталога) Тогда - - Попытка - УдалитьФайлы(ИмяВременногоКаталога); - ИмяВременногоКаталога = ""; - Исключение - СтрокаСообщения = НСтр("ru = 'Ошибка при попытке удаления файлов из временного каталога сообщений обмена %1. Описание ошибки: %2'", - ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); - СтрокаСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаСообщения, ИмяВременногоКаталога, ОписаниеОшибки()); - ЗаписьЖурналаРегистрации(ОбменДаннымиСервер.СобытиеЖурналаРегистрацииОбменДанными(), - УровеньЖурналаРегистрации.Предупреждение,,, СтрокаСообщения); - КонецПопытки; - - КонецЕсли; - -КонецПроцедуры - Процедура ДополнитьТаблицуСтатистики(Отказ) Для Каждого СтрокаТаблицы Из ИнформацияСтатистики Цикл diff --git a/SSL/src/DataProcessors/ПомощникСозданияОбменаДанными/Forms/Форма/Form.form b/SSL/src/DataProcessors/ПомощникСозданияОбменаДанными/Forms/Форма/Form.form index 9aedbc0b0..b0c739528 100644 --- a/SSL/src/DataProcessors/ПомощникСозданияОбменаДанными/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/ПомощникСозданияОбменаДанными/Forms/Форма/Form.form @@ -46,8 +46,6 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:LabelFieldExtInfo"> - <width>50</width> - <autoMaxWidth>true</autoMaxWidth> <height>4</height> <autoMaxHeight>true</autoMaxHeight> <verticalStretch>false</verticalStretch> @@ -139,9 +137,7 @@ <id>2449</id> <autoFill>true</autoFill> </contextMenu> - <width>2</width> <autoMaxWidth>true</autoMaxWidth> - <height>1</height> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="core:PictureRef"> @@ -177,7 +173,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <handlers> @@ -427,7 +422,7 @@ <id>2512</id> <title> <key>ru</key> - <value>Если синхронизация данных уже производилась в программе "%ПрограммаКорреспондент%", и настройки были сохранены во внешнем файле, то эти настройки можно использовать, указав путь до файла, в котором они хранятся. </value> + <value>Если синхронизация данных уже производилась в программе "%ПрограммаКорреспондент%" и настройки были сохранены во внешнем файле, то эти настройки можно использовать, указав путь до файла, в котором они хранятся. </value> true true @@ -450,7 +445,6 @@ true Label - true true Style.ПоясняющийТекст @@ -469,7 +463,6 @@ ru Выбор способа настройки синхронизации данных - false ГруппаПереключателяВыбораРежимаРаботыПомощникаExtendedTooltip 1931 @@ -551,7 +544,6 @@ true Label - true true false @@ -634,7 +626,6 @@ true Label - true true Left @@ -677,7 +668,6 @@ Left true - true true true true @@ -880,7 +870,6 @@ true - false Группа3ExtendedTooltip 1960 @@ -1018,9 +1007,7 @@ 2457 true - 2 true - 1 true @@ -1056,7 +1043,6 @@ true Label - true true @@ -1127,7 +1113,6 @@ true Label - true true false @@ -1235,7 +1220,6 @@ Left true - true true true true @@ -1330,7 +1314,6 @@ Left true - true true true true @@ -1451,7 +1434,6 @@ Left true - true true true true @@ -1542,7 +1524,6 @@ true Label - true 3 true false @@ -1663,7 +1644,6 @@ Left true - true true true true @@ -1784,7 +1764,6 @@ Left true - true true true true @@ -1905,7 +1884,6 @@ Left true - true true true true @@ -2000,7 +1978,6 @@ true Label - true 3 true false @@ -2113,7 +2090,6 @@ true Label - true true false @@ -2538,9 +2514,7 @@ 1746 true - 8 true - 3 true false @@ -2578,10 +2552,8 @@ true Label - true 3 true - true false System.DefaultGUIFont @@ -2702,7 +2674,6 @@ true Label - true 3 true false @@ -2809,9 +2780,7 @@ 1687 true - 8 true - 3 true @@ -3020,7 +2989,6 @@ Left true - true 2 true false @@ -3445,7 +3413,6 @@ true Label - true 3 true false @@ -3522,7 +3489,6 @@ Left true - true true System.DefaultGUIFont @@ -3559,9 +3525,7 @@ 1642 true - 4 true - 2 true @@ -3603,7 +3567,6 @@ Left true - true 2 true false @@ -3667,7 +3630,6 @@ Left true - true true true true @@ -3751,7 +3713,6 @@ Left true - true true System.DefaultGUIFont @@ -3788,9 +3749,7 @@ 1629 true - 4 true - 2 true @@ -3832,7 +3791,6 @@ Left true - true 2 true false @@ -3896,7 +3854,6 @@ Left true - true true true true @@ -4007,7 +3964,6 @@ true Label - true 3 true false @@ -4084,7 +4040,6 @@ Left true - true true System.DefaultGUIFont @@ -4135,7 +4090,6 @@ Left true - true true true true @@ -4264,7 +4218,6 @@ Left true - true true System.DefaultGUIFont @@ -4315,7 +4268,6 @@ Left true - true true true true @@ -4467,7 +4419,6 @@ true Label - true 3 true false @@ -4510,86 +4461,27 @@ СтраницаМастераВыборРежимаРаботыПомощника 774 - Группа4 - 842 - - Группа23 - 1811 - - РежимРаботыМастера - 837 - true - true - - true - - - РежимРаботыМастера - - None - - OnChange - РежимРаботыМастераПриИзменении - - - РежимРаботыМастераExtendedTooltip - 2055 - Label - true - true - - Left - - - - РежимРаботыМастераКонтекстноеМеню - 838 - true - - RadioButtonField - Enter - true - Left - true - - - - ru - Прямое подключение к программе на этом компьютере или в локальной сети - - - ОбменЧерезВнешнееСоединение - - - - - ru - Прямое подключение к программе через Интернет - - - ОбменЧерезВебСервис - - - - - ru - Другие каналы связи (сетевой каталог, FTP, электронная почта) - - - ОбменЧерезОбычныеКаналыСвязи - - - Vertical - - + Группа23 + 1811 + + РежимРаботыМастера + 837 true true true + + РежимРаботыМастера + + None + + OnChange + РежимРаботыМастераПриИзменении + - Группа23ExtendedTooltip - 2054 + РежимРаботыМастераExtendedTooltip + 2055 Label true true @@ -4597,15 +4489,46 @@ Left - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto + + РежимРаботыМастераКонтекстноеМеню + 838 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Прямое подключение к программе на этом компьютере или в локальной сети + + + ОбменЧерезВнешнееСоединение + + + + + ru + Прямое подключение к программе через Интернет + + + ОбменЧерезВебСервис + + + + + ru + Другие каналы связи (сетевой каталог, FTP, электронная почта) + + + ОбменЧерезОбычныеКаналыСвязи + + + Vertical true @@ -4618,8 +4541,8 @@ Выбор варианта подключения к другой программе - Группа4ExtendedTooltip - 2053 + Группа23ExtendedTooltip + 2054 Label true true @@ -4629,6 +4552,7 @@ UsualGroup + Vertical Auto NormalSeparation true @@ -4676,7 +4600,6 @@ true Label - true true Style.ПоясняющийТекст @@ -4870,7 +4793,6 @@ Opening COMКаталогИнформационнойБазыОткрытие - true true true true @@ -5095,11 +5017,289 @@ - Группа27 - 1821 + Группа4 + 2533 + + Группа27 + 1821 + + COMГруппаПользовательПароль + 797 + + ТипАутентификации1С + 1819 + true + true + + true + + + ТипАутентификации + + None + + OnChange + ТипАутентификацииПриИзменении + + + ТипАутентификации1СРасширеннаяПодсказка + 2082 + Label + true + true + + Left + + + + ТипАутентификации1СКонтекстноеМеню + 1820 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Аутентификация 1С Предприятия + + + 0 + + + Vertical + + + + Группа21 + 2537 + + Декорация2 + 2539 + true + true + + true + + + Декорация2РасширеннаяПодсказка + 2541 + Label + true + true + + Left + + + + Декорация2КонтекстноеМеню + 2540 + true + + Label + 2 + true + true + + Left + + + + Группа20 + 2535 + + COMИмяПользователя + 786 + true + true + + true + + + Объект.COMИмяПользователя + + + COMИмяПользователяExtendedTooltip + 2084 + Label + true + true + + Left + + + + COMИмяПользователяКонтекстноеМеню + 787 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + COMПарольПользователя + 792 + true + true + + true + + + Объект.COMПарольПользователя + + + COMПарольПользователяExtendedTooltip + 2085 + Label + true + true + + Left + + + + COMПарольПользователяКонтекстноеМеню + 793 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + true + true + + true + + + Группа20РасширеннаяПодсказка + 2536 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + Группа21РасширеннаяПодсказка + 2538 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Аутентификация 1С Предприятия</value> + + + COMГруппаПользовательПарольExtendedTooltip + 2083 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + Группа27ExtendedTooltip + 2081 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + - ТипАутентификации - 1819 + ТипАутентификацииОС + 2530 true true @@ -5114,8 +5314,8 @@ ТипАутентификацииПриИзменении - ТипАутентификацииExtendedTooltip - 2082 + ТипАутентификацииОСРасширеннаяПодсказка + 2532 Label true true @@ -5124,8 +5324,8 @@ - ТипАутентификацииКонтекстноеМеню - 1820 + ТипАутентификацииОСКонтекстноеМеню + 2531 true RadioButtonField @@ -5135,15 +5335,6 @@ true 1 - - - ru - Аутентификация 1С Предприятия - - - 0 - - ru @@ -5156,130 +5347,14 @@ Vertical - - COMГруппаПользовательПароль - 797 - - COMИмяПользователя - 786 - true - true - - true - - - Объект.COMИмяПользователя - - - COMИмяПользователяExtendedTooltip - 2084 - Label - true - true - - Left - - - - COMИмяПользователяКонтекстноеМеню - 787 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - - COMПарольПользователя - 792 - true - true - - true - - - Объект.COMПарольПользователя - - - COMПарольПользователяExtendedTooltip - 2085 - Label - true - true - - Left - - - - COMПарольПользователяКонтекстноеМеню - 793 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Аутентификация 1С Предприятия</value> - - 40 - false - - COMГруппаПользовательПарольExtendedTooltip - 2083 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - true true true - Группа27ExtendedTooltip - 2081 + Группа4РасширеннаяПодсказка + 2534 Label true true @@ -5289,8 +5364,8 @@ UsualGroup + Vertical Auto - NormalSeparation true true Auto @@ -5360,13 +5435,117 @@ Auto + + ГруппаОшибкиПодключения + 2557 + + КартинкаПредупреждениеПодключения + 2559 + + <key>ru</key> + <value>Картинка предупреждение подключения</value> + + true + true + + true + + + КартинкаПредупреждениеПодключенияРасширеннаяПодсказка + 2561 + Label + true + true + + Left + + + + КартинкаПредупреждениеПодключенияКонтекстноеМеню + 2560 + true + + false + false + Left + Top + + + CommonPicture.Предупреждение32 + + + + + ТекстОшибкиПроверкиПодключения + 2562 + true + true + + true + + + ТекстОшибкиПроверкиПодключенияРасширеннаяПодсказка + 2564 + Label + true + true + + Left + + + + ТекстОшибкиПроверкиПодключенияКонтекстноеМеню + 2563 + true + + Label + true + true + Left + Top + + Left + Top + + + true + true + + true + + + <key>ru</key> + <value>Группа ошибки подключения</value> + + + ru + Группа ошибки подключения + + true + + ГруппаОшибкиПодключенияРасширеннаяПодсказка + 2558 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + true true true - true - false Группа24ExtendedTooltip 2068 @@ -5415,7 +5594,6 @@ true Label - true true true false @@ -5486,7 +5664,6 @@ true Label - true true Style.ПоясняющийТекст @@ -5498,160 +5675,6 @@ Группа28 1822 - - Группа29 - 1823 - - ДекорацияПараметрыПодключенияWS - 1824 - - <key>ru</key> - <value>Укажите параметры подключения к другой программе:</value> - - true - true - - true - - Button - - ДекорацияПараметрыПодключенияWSРасширеннаяПодсказка - 2097 - - <key>ru</key> - <value>Для настройки синхронизации данных нужно знать где находится программа, с которой нужно настроить синхронизацию (другая программа). Для этого достаточно открыть программу в режиме веб-клиента. В главном меню выбрать пункт "Справка\О программе...". -Обратите внимание на следующие параметры (все они могут быть скопированы из формы "О программе..."): -• Адрес - адрес информационной базы в Интернете. -• Пользователь - имя пользователя, который вошел в информационную базу. Если в имени пользователя присутствует ";", то в качестве имени пользователя для подключения нужно использовать имя от начала строки до ";". -Важно! Имя пользователя не должно содержать служебных символов "[НедопустимыеСимволы]". В противном случае во второй информационной базе необходимо создать пользователя, в имени которого не будут содержаться служебные символы. Этот пользователь должен быть администратором.</value> - - Label - true - true - - Left - - - - ДекорацияПараметрыПодключенияWSКонтекстноеМеню - 1825 - true - - Label - true - 1 - true - - Left - Top - - - - Группа31 - 1827 - - WSURLВебСервиса - 1077 - - <key>ru</key> - <value>Адрес программы</value> - - true - true - - true - - - Объект.WSURLВебСервиса - - - WSURLВебСервисаExtendedTooltip - 2100 - Label - true - true - - Left - - - - WSURLВебСервисаКонтекстноеМеню - 1078 - true - - InputField - true - Enter - true - Left - true - - 50 - true - true - false - true - true - true - true - true - Normal - - - true - true - - true - - - Группа31ExtendedTooltip - 2099 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Укажите параметры подключения к другой программе</value> - - - Группа29ExtendedTooltip - 2095 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - Группа2 1750 @@ -5836,7 +5859,6 @@ true - false Группа2ExtendedTooltip 2101 @@ -5886,13 +5908,164 @@ UserCmds Auto + + Группа29 + 1823 + + ДекорацияПараметрыПодключенияWS + 1824 + + <key>ru</key> + <value>Укажите параметры подключения к другой программе:</value> + + true + true + + true + + Button + + ДекорацияПараметрыПодключенияWSРасширеннаяПодсказка + 2097 + + <key>ru</key> + <value>Для настройки синхронизации данных нужно знать где находится программа, с которой нужно настроить синхронизацию (другая программа). Для этого достаточно открыть программу в режиме веб-клиента. В главном меню выбрать пункт "Справка\О программе...". +Обратите внимание на следующие параметры (все они могут быть скопированы из формы "О программе..."): +• Адрес - адрес информационной базы в Интернете. +• Пользователь - имя пользователя, который вошел в информационную базу. Если в имени пользователя присутствует ";", то в качестве имени пользователя для подключения нужно использовать имя от начала строки до ";". +Важно! Имя пользователя не должно содержать служебных символов "[НедопустимыеСимволы]". В противном случае во второй информационной базе необходимо создать пользователя, в имени которого не будут содержаться служебные символы. Этот пользователь должен быть администратором.</value> + + Label + true + true + + Left + + + + ДекорацияПараметрыПодключенияWSКонтекстноеМеню + 1825 + true + + Label + 1 + true + + Left + Top + + + + Группа31 + 1827 + + WSURLВебСервиса + 1077 + + <key>ru</key> + <value>Адрес программы</value> + + true + true + + true + + + Объект.WSURLВебСервиса + + + WSURLВебСервисаExtendedTooltip + 2100 + Label + true + true + + Left + + + + WSURLВебСервисаКонтекстноеМеню + 1078 + true + + InputField + true + Enter + true + Left + true + + 50 + true + true + false + true + true + true + true + true + Normal + + + true + true + + true + + + Группа31ExtendedTooltip + 2099 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Укажите параметры подключения к другой программе</value> + + + Группа29ExtendedTooltip + 2095 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + true true true - true - false Группа28ExtendedTooltip 2094 @@ -5941,7 +6114,6 @@ true Label - true true true false @@ -6017,7 +6189,6 @@ true Label - true true Style.ПоясняющийТекст @@ -6055,7 +6226,6 @@ true Label - true true true false @@ -6107,7 +6277,6 @@ ru Страницы параметров транспорта - true СтраницыПараметровТранспортаExtendedTooltip 2065 @@ -6258,7 +6427,6 @@ true Label - true true Style.ПоясняющийТекст @@ -6308,7 +6476,6 @@ Opening FILEКаталогОбменаИнформациейОткрытие - true true true true @@ -6355,20 +6522,92 @@ true - - ПарольАрхиваСообщенияОбмена - 639 + + Группа22 + 2542 + + Декорация6 + 2544 + true + true + + true + + + Декорация6РасширеннаяПодсказка + 2546 + Label + true + true + + Left + + + + Декорация6КонтекстноеМеню + 2545 + true + + Label + 2 + true + true + + Left + + + + ПарольАрхиваСообщенияОбмена + 639 + true + true + + true + + + Объект.ПарольАрхиваСообщенияОбмена + + + ПарольАрхиваСообщенияОбменаExtendedTooltip + 2120 + Label + true + true + + Left + + + + ПарольАрхиваСообщенияОбменаКонтекстноеМеню + 640 + true + + InputField + Enter + true + Left + true + + 20 + true + true + false + true + true + true + true + true + Normal + + true true true - - Объект.ПарольАрхиваСообщенияОбмена - - ПарольАрхиваСообщенияОбменаExtendedTooltip - 2120 + Группа22РасширеннаяПодсказка + 2543 Label true true @@ -6376,27 +6615,13 @@ Left - - ПарольАрхиваСообщенияОбменаКонтекстноеМеню - 640 - true - - InputField - Enter - true - Left - true - - 20 - true - true - false - true - true - true - true - true - Normal + UsualGroup + + Auto + true + true + Auto + Auto true @@ -6416,6 +6641,7 @@ UsualGroup + Vertical Auto true true @@ -6574,7 +6800,6 @@ true Label - true true false @@ -6717,7 +6942,6 @@ true Label - true true Style.ПоясняющийТекст @@ -6762,7 +6986,6 @@ Left true - true true true true @@ -7044,7 +7267,6 @@ true Label - true true Left @@ -7145,20 +7367,92 @@ true - - ПарольАрхиваСообщенияОбмена1 - 657 + + Группа30 + 2547 + + Декорация11 + 2549 + true + true + + true + + + Декорация11РасширеннаяПодсказка + 2551 + Label + true + true + + Left + + + + Декорация11КонтекстноеМеню + 2550 + true + + Label + 2 + true + true + + Left + + + + ПарольАрхиваСообщенияОбмена1 + 657 + true + true + + true + + + Объект.ПарольАрхиваСообщенияОбмена + + + ПарольАрхиваСообщенияОбмена1ExtendedTooltip + 2142 + Label + true + true + + Left + + + + ПарольАрхиваСообщенияОбмена1КонтекстноеМеню + 658 + true + + InputField + Enter + true + Left + true + + 20 + true + true + false + true + true + true + true + true + Normal + + true true true - - Объект.ПарольАрхиваСообщенияОбмена - - ПарольАрхиваСообщенияОбмена1ExtendedTooltip - 2142 + Группа30РасширеннаяПодсказка + 2548 Label true true @@ -7166,27 +7460,13 @@ Left - - ПарольАрхиваСообщенияОбмена1КонтекстноеМеню - 658 - true - - InputField - Enter - true - Left - true - - 20 - true - true - false - true - true - true - true - true - Normal + UsualGroup + + Auto + true + true + Auto + Auto true @@ -7214,6 +7494,7 @@ UsualGroup + Vertical Auto true true @@ -7403,7 +7684,6 @@ true Label - true true false @@ -7551,7 +7831,6 @@ Left true - true true true true @@ -7634,7 +7913,6 @@ true Label - true true Left @@ -7701,20 +7979,92 @@ true - - ПарольАрхиваСообщенияОбмена2 - 659 + + Группа36 + 2552 + + Декорация18 + 2554 + true + true + + true + + + Декорация18РасширеннаяПодсказка + 2556 + Label + true + true + + Left + + + + Декорация18КонтекстноеМеню + 2555 + true + + Label + 2 + true + true + + Left + + + + ПарольАрхиваСообщенияОбмена2 + 659 + true + true + + true + + + Объект.ПарольАрхиваСообщенияОбмена + + + ПарольАрхиваСообщенияОбмена2ExtendedTooltip + 2158 + Label + true + true + + Left + + + + ПарольАрхиваСообщенияОбмена2КонтекстноеМеню + 660 + true + + InputField + Enter + true + Left + true + + 20 + true + true + false + true + true + true + true + true + Normal + + true true true - - Объект.ПарольАрхиваСообщенияОбмена - - ПарольАрхиваСообщенияОбмена2ExtendedTooltip - 2158 + Группа36РасширеннаяПодсказка + 2553 Label true true @@ -7722,27 +8072,13 @@ Left - - ПарольАрхиваСообщенияОбмена2КонтекстноеМеню - 660 - true - - InputField - Enter - true - Left - true - - 20 - true - true - false - true - true - true - true - true - Normal + UsualGroup + + Auto + true + true + Auto + Auto true @@ -7762,6 +8098,7 @@ UsualGroup + Vertical Auto true true @@ -7920,7 +8257,6 @@ true Label - true true false @@ -8039,7 +8375,6 @@ Left true - true true true true @@ -8193,7 +8528,6 @@ Left true - true true true true @@ -8357,37 +8691,6 @@ Normal - - Декорация58 - 1876 - true - true - - true - - - Декорация58ExtendedTooltip - 2179 - Label - true - true - - Left - - - - Декорация58КонтекстноеМеню - 1877 - true - - Label - true - true - true - - Left - - true true @@ -8496,7 +8799,6 @@ Left true - true 8 true true @@ -8612,7 +8914,6 @@ Left true - true 8 true true @@ -8776,7 +9077,6 @@ true Label - true true false @@ -8938,7 +9238,6 @@ Left true - true 8 true true @@ -9054,7 +9353,6 @@ Left true - true 8 true true @@ -9218,7 +9516,6 @@ true Label - true true false @@ -9330,7 +9627,6 @@ Left true - true true true true @@ -9459,7 +9755,6 @@ Left true - true 8 true true @@ -9575,7 +9870,6 @@ Left true - true 8 true true @@ -9739,7 +10033,6 @@ true Label - true true false @@ -9820,7 +10113,6 @@ Left true - true true true true @@ -9947,7 +10239,6 @@ Left true - true 8 true true @@ -10063,7 +10354,6 @@ Left true - true 8 true true @@ -10227,7 +10517,6 @@ true Label - true true false @@ -10310,7 +10599,6 @@ Left true - true true true true @@ -10351,9 +10639,7 @@ 727 true - 2 true - 1 true @@ -10389,7 +10675,6 @@ true Label - true true Style.ПоясняющийТекст @@ -10532,9 +10817,7 @@ 341 true - 5 true - 3 true false @@ -10599,7 +10882,6 @@ true Label - true true false @@ -10646,7 +10928,6 @@ Left true - true true true true @@ -10794,9 +11075,7 @@ 445 true - 6 true - 4 true false @@ -10856,7 +11135,7 @@ 596 <key>ru</key> - <value>При нажатии на кнопку готово будет произведена выгрузка данных из этой программы в файл. + <value>При нажатии на кнопку "Готово" будет произведена выгрузка данных из этой программы в файл. Сразу после завершения настройки синхронизации возможно будет выполнить загрузку данных из этого файла в другой программе и указать, какие данные являются одинаковыми для двух синхронизирующихся программ. Также отправку данных можно выполнить позднее из списка синхронизации данных.</value> @@ -10882,7 +11161,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> <textColor xsi:type="core:ColorRef"> @@ -11014,7 +11292,6 @@ <showInFooter>true</showInFooter> <extInfo xsi:type="form:ProgressBarFieldExtInfo"> <width>32</width> - <autoMaxWidth>true</autoMaxWidth> <height>1</height> <autoMaxHeight>true</autoMaxHeight> <horizontalStretch>true</horizontalStretch> @@ -11055,7 +11332,6 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:LabelFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> </extInfo> </items> @@ -11227,7 +11503,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> <textColor xsi:type="core:ColorRef"> @@ -11381,7 +11656,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> <extInfo xsi:type="form:LabelDecorationExtInfo"> @@ -11478,9 +11752,7 @@ <id>883</id> <autoFill>true</autoFill> </contextMenu> - <width>6</width> <autoMaxWidth>true</autoMaxWidth> - <height>3</height> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> <extInfo xsi:type="form:PictureDecorationExtInfo"> @@ -11559,7 +11831,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <height>5</height> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> @@ -11694,7 +11965,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> <extInfo xsi:type="form:LabelDecorationExtInfo"> @@ -11763,9 +12033,7 @@ <id>1366</id> <autoFill>true</autoFill> </contextMenu> - <width>8</width> <autoMaxWidth>true</autoMaxWidth> - <height>3</height> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> <extInfo xsi:type="form:PictureDecorationExtInfo"> @@ -11815,8 +12083,7 @@ <id>765</id> <title> <key>ru</key> - <value> -Выполняется создание новой настройки синхронизации данных. + <value>Выполняется создание новой настройки синхронизации данных. Пожалуйста, подождите...</value> true @@ -11840,10 +12107,8 @@ true Label - true 3 true - true false System.DefaultGUIFont @@ -11978,9 +12243,7 @@ 1386 true - 8 true - 3 true false @@ -12054,10 +12317,8 @@ true Label - true 3 true - true false System.DefaultGUIFont @@ -12193,9 +12454,7 @@ 1379 true - 8 true - 3 true false @@ -12269,10 +12528,8 @@ true Label - true 3 true - true false System.DefaultGUIFont @@ -12408,9 +12665,7 @@ 1534 true - 8 true - 3 true false @@ -12484,10 +12739,8 @@ true Label - true 3 true - true false System.DefaultGUIFont @@ -12623,9 +12876,7 @@ 1492 true - 8 true - 3 true false @@ -12699,10 +12950,8 @@ true Label - true 3 true - true false System.DefaultGUIFont @@ -12838,9 +13087,7 @@ 1327 true - 8 true - 3 true false @@ -12914,10 +13161,8 @@ true Label - true 3 true - true false System.DefaultGUIFont @@ -13049,9 +13294,7 @@ 1739 true - 8 true - 3 true false @@ -13125,10 +13368,8 @@ true Label - true 3 true - true false System.DefaultGUIFont @@ -13260,9 +13501,7 @@ 861 true - 8 true - 3 true false @@ -13312,8 +13551,7 @@ 863 <key>ru</key> - <value> -Выполняется проверка установки соединения с другой программой. + <value>Выполняется проверка установки соединения с другой программой. Пожалуйста, подождите...</value> true @@ -13337,10 +13575,8 @@ true Label - true 3 true - true false System.DefaultGUIFont @@ -13524,37 +13760,6 @@ Left - - ОтступКоманднойПанели1 - 2379 - true - true - - true - - - ОтступКоманднойПанели1РасширеннаяПодсказка - 2381 - Label - true - true - - Left - - - - ОтступКоманднойПанели1КонтекстноеМеню - 2380 - true - - Label - true - true - true - - Left - - КоманднаяПанельСправа1 942 @@ -13739,37 +13944,6 @@ Left - - ОтступКоманднойПанели2 - 2382 - true - true - - true - - - ОтступКоманднойПанели2РасширеннаяПодсказка - 2384 - Label - true - true - - Left - - - - ОтступКоманднойПанели2КонтекстноеМеню - 2383 - true - - Label - true - true - true - - Left - - КоманднаяПанельСправа2 948 @@ -13946,37 +14120,6 @@ Left - - ОтступКоманднойПанели3 - 2387 - true - true - - true - - - ОтступКоманднойПанели3РасширеннаяПодсказка - 2389 - Label - true - true - - Left - - - - ОтступКоманднойПанели3КонтекстноеМеню - 2388 - true - - Label - true - true - true - - Left - - КоманднаяПанельСправа3 1567 @@ -14153,37 +14296,6 @@ Left - - ОтступКоманднойПанели4 - 2392 - true - true - - true - - - ОтступКоманднойПанели4РасширеннаяПодсказка - 2394 - Label - true - true - - Left - - - - ОтступКоманднойПанели4КонтекстноеМеню - 2393 - true - - Label - true - true - true - - Left - - КоманднаяПанельСправа4 960 @@ -14364,37 +14476,6 @@ Left - - ОтступКоманднойПанели7 - 2397 - true - true - - true - - - ОтступКоманднойПанели7РасширеннаяПодсказка - 2399 - Label - true - true - - Left - - - - ОтступКоманднойПанели7КонтекстноеМеню - 2398 - true - - Label - true - true - true - - Left - - КоманднаяПанельСправа7 1169 @@ -14570,37 +14651,6 @@ Left - - ОтступКоманднойПанели8 - 2402 - true - true - - true - - - ОтступКоманднойПанели8РасширеннаяПодсказка - 2404 - Label - true - true - - Left - - - - ОтступКоманднойПанели8КонтекстноеМеню - 2403 - true - - Label - true - true - true - - Left - - КоманднаяПанельСправа8 1918 @@ -16687,6 +16737,21 @@ true + + РезультатВыполненияФоновогоЗадания + + <key>ru</key> + <value>Результат выполнения фонового задания</value> + + 79 + + + true + + + true + + КомандаДалее diff --git a/SSL/src/DataProcessors/ПомощникСозданияОбменаДанными/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/ПомощникСозданияОбменаДанными/Forms/Форма/Module.bsl index 457bb905d..421184c6b 100644 --- a/SSL/src/DataProcessors/ПомощникСозданияОбменаДанными/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/ПомощникСозданияОбменаДанными/Forms/Форма/Module.bsl @@ -283,7 +283,7 @@ &НаКлиенте Процедура ПриОткрытии(Отказ) - + Элементы.ГруппаОшибкиПодключения.Видимость = Ложь; Если ОбщегоНазначенияКлиент.ПредлагатьСоздаватьРезервныеКопии() Тогда Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( @@ -319,10 +319,22 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) + + Если ЗавершениеРаботы Тогда + Если ДлительнаяОперация Тогда + ТекстПредупреждения = НСтр("ru = 'Настройка синхронизации данных будет прервана.'"); + КонецЕсли; + + Если ЭтоПродолжениеНастройкиВПодчиненномУзлеРИБ Тогда + ТекстПредупреждения = НСтр("ru = 'Настройка подчиненного узла распределенной информационной базы не выполнена.'"); + КонецЕсли; + + Возврат; + КонецЕсли; Если ДлительнаяОперация Тогда - ПоказатьПредупреждение(, НСтр("ru = 'Выполняется создание синхронизации данных. + ПоказатьПредупреждение(, НСтр("ru = 'Выполняется настройка синхронизации данных. |Работа помощника не может быть завершена.'")); Отказ = Истина; Возврат; @@ -337,19 +349,24 @@ |Отказаться от настройки и использовать значения по умолчанию?'"); ОписаниеОповещенияОтказПродолженияРИБ = Новый ОписаниеОповещения("ОписаниеОповещенияОтказОтПродолженияРИБ", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(ЭтотОбъект, Отказ, ТекстПредупреждения, "ЗакрытьФормуБезПредупреждения", ОписаниеОповещенияОтказПродолженияРИБ); - + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(ЭтотОбъект, Отказ, ЗавершениеРаботы, + ТекстПредупреждения, "ЗакрытьФормуБезПредупреждения", ОписаниеОповещенияОтказПродолженияРИБ); Возврат; КонецЕсли; ТекстПредупреждения = НСтр("ru = 'Отменить настройку синхронизации и выйти из помощника?'"); ОписаниеОповещенияЗакрыть = Новый ОписаниеОповещения("УдалитьНастройкуОбменаДанными", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(ЭтотОбъект, Отказ, ТекстПредупреждения, "ЗакрытьФормуБезПредупреждения", ОписаниеОповещенияЗакрыть); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(ЭтотОбъект, Отказ, ЗавершениеРаботы, + ТекстПредупреждения, "ЗакрытьФормуБезПредупреждения", ОписаниеОповещенияЗакрыть); КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; Оповестить("ЗакрытаФормаПомощникаСозданияОбменаДанными"); @@ -879,6 +896,13 @@ #Область СлужебныеПроцедурыИФункции +&НаКлиенте +Процедура ВыполнитьПереходДалее() + + ИзменитьПорядковыйНомерПерехода(+1); + +КонецПроцедуры + &НаКлиенте Процедура ВыполнитьКомандуГотово(Знач ЗакрыватьФорму = Истина) @@ -1274,7 +1298,7 @@ Процедура ПроверитьПодключениеCOMЗавершение(Результат, ДополнительныеПараметры) Экспорт Если Результат = КодВозвратаДиалога.ОК Тогда - + Элементы.ГруппаОшибкиПодключения.Видимость = Ложь; ОчиститьСообщения(); Если СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ИнформационнаяБазаФайловая Тогда @@ -1286,8 +1310,20 @@ ТекстСообщения = ПроверитьПодключениеCOMНаСервере(); Если ПустаяСтрока(ТекстСообщения) Тогда ТекстСообщения = НСтр("ru = 'Проверка подключения успешно завершена.'"); + ПоказатьПредупреждение(,ТекстСообщения); + Иначе + Элементы.ГруппаОшибкиПодключения.Видимость = Истина; + ЭтоОшибкаРегистрацииКомпоненты = Найти(ТекстСообщения, "2147221164") > 0; + ТекстРегистрацияКомпоненты = ""; + Если ЭтоОшибкаРегистрацииКомпоненты Тогда + ЭтоФайловаяИБ = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ИнформационнаяБазаФайловая; + ТекстРегистрацияКомпоненты = Символы.ПС + + НСтр("ru = 'Возможно, необходимо зарегистрировать COM-компоненту comcntr.dll'") + + ?(ЭтоФайловаяИБ, ".", НСтр("ru = ', после чего выполнить перезапуск сервера 1С:Предприятие.'")) + КонецЕсли; + + Элементы.ТекстОшибкиПроверкиПодключения.Заголовок = ТекстСообщения + ТекстРегистрацияКомпоненты; КонецЕсли; - ПоказатьПредупреждение(,ТекстСообщения); КонецЕсли; @@ -2383,21 +2419,78 @@ ЭтотОбъект.ТолькоПросмотр = Истина; Элементы.КомандаГотово6.Доступность = Ложь; Элементы.КомандаГотово7.Доступность = Ложь; - - ЗапуститьВыгрузкуДанных(Отказ, Объект.УзелИнформационнойБазы, Объект.ВидТранспортаСообщенийОбмена); - Если Отказ Тогда - - ПоказатьПредупреждение(, НСтр("ru = 'Во время отправки данных возникли ошибки(см. журнал регистрации).'")); - - КонецЕсли; - ПодключитьОбработчикОжидания("ФоновоеЗаданиеПроверитьНаКлиенте", 2, Истина); + ПараметрыМетода = Новый Структура; + ПараметрыМетода.Вставить("Отказ", Отказ); + ПараметрыМетода.Вставить("УзелИнформационнойБазы", Объект.УзелИнформационнойБазы); + ПараметрыМетода.Вставить("ВыполнятьЗагрузку", Ложь); + ПараметрыМетода.Вставить("ВыполнятьВыгрузку", Истина); + ПараметрыМетода.Вставить("ВидТранспортаСообщенийОбмена", Объект.ВидТранспортаСообщенийОбмена); + + ДлительнаяОперация = Ложь; + ДлительнаяОперацияЗавершена = Ложь; + ИдентификаторДлительнойОперации = ""; + + ПараметрыЗадания = ПараметрыФоновогоЗадания(); + ПараметрыЗадания.ВыполняемыйМетод = "Обработки.ВыполнениеОбменаДанными.ВыполнитьЗапускОбменаДанными"; + ПараметрыЗадания.ПараметрыМетода = ПараметрыМетода; + ПараметрыЗадания.НаименованиеЗадания = НСтр("ru = 'Выгрузка данных'"); + ПараметрыЗадания.ОбработчикЗавершения = "ЗавершениеВыгрузкиДанных"; + + ФоновоеЗаданиеЗапуститьНаКлиенте(ПараметрыЗадания, Отказ); + КонецЕсли; КонецЕсли; КонецПроцедуры +&НаКлиенте +Процедура ЗавершениеВыгрузкиДанных() + + Если РезультатВыполненияФоновогоЗадания.Статус = "Ошибка" Тогда + СообщениеОбОшибке = РезультатВыполненияФоновогоЗадания.ПодробноеПредставлениеОшибки; + ИначеЕсли РезультатВыполненияФоновогоЗадания.Статус = "Отменено" Тогда + СообщениеОбОшибке = НСтр("ru = 'Действие отменено пользователем.'"); + Иначе + + РезультатВыполнения = ПолучитьРезультатВыполненияФоновогоЗаданияНаСервере(); + + Если РезультатВыполнения.Отказ Тогда + СообщениеОбОшибке = НСтр("ru = 'Во время отправки данных возникли ошибки(см. журнал регистрации).'"); + КонецЕсли; + + КонецЕсли; + + ПроцентВыполнения = 100; + ДопИнформацияВыполнение = ""; + ДлительнаяОперация = Ложь; + Состояние(НСтр("ru = 'Отправка данных завершена'")); + + Если ЗначениеЗаполнено(СообщениеОбОшибке) Тогда + + ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( + Объект.УзелИнформационнойБазы, + "ВыгрузкаДанных", + ДатаНачалаОперации, + СообщениеОбОшибке); + + ПоказатьПредупреждение(, СообщениеОбОшибке); + + Иначе + ПодключитьОбработчикОжидания("ЗакрытьФормуОтложенно", 1, Истина); + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Функция ПолучитьРезультатВыполненияФоновогоЗаданияНаСервере() + + РезультатВыполнения = ПолучитьИзВременногоХранилища(РезультатВыполненияФоновогоЗадания.АдресРезультата); + Возврат РезультатВыполнения; + +КонецФункции + &НаКлиенте Процедура ЗакрытьФормуПослеСозданияНачальногоОбраза(Результат, ДополнительныеПараметры) Экспорт @@ -2443,6 +2536,7 @@ КонецЕсли; КонецПроцедуры + &НаКлиенте Процедура ОткрытьФормуСопоставления() @@ -2537,7 +2631,7 @@ Объект.ИнформацияСтатистики.Загрузить(ПомощникИнтерактивногоОбменаДанными.ТаблицаИнформацииСтатистики()); - ПолучитьДеревоИнформацииСтатистики(ПомощникИнтерактивногоОбменаДанными.ТаблицаИнформацииСтатистики()); + СведенияОбИнформацииСтатистики(ПомощникИнтерактивногоОбменаДанными.ТаблицаИнформацииСтатистики()); УстановитьВидимостьГруппыДополнительнойИнформации(); @@ -2565,7 +2659,7 @@ КонецФункции &НаСервере -Процедура ПолучитьДеревоИнформацииСтатистики(ИнформацияСтатистики) +Процедура СведенияОбИнформацииСтатистики(ИнформацияСтатистики) КоллекцияЭлементовДерева = ДеревоИнформацииСтатистики.ПолучитьЭлементы(); КоллекцияЭлементовДерева.Очистить(); @@ -2785,6 +2879,108 @@ Возврат Расписание; КонецФункции +//////////////////////////////////////////////////////////////////////////////// +// Переопределяемая часть - обработчики фоновых заданий. + +&НаКлиенте +Функция ПараметрыФоновогоЗадания() + + ПараметрыЗадания = Новый Структура(); + ПараметрыЗадания.Вставить("ВыполняемыйМетод", ""); + ПараметрыЗадания.Вставить("НаименованиеЗадания", ""); + ПараметрыЗадания.Вставить("ПараметрыМетода", Неопределено); + ПараметрыЗадания.Вставить("ОповещениеОЗавершении", Неопределено); + ПараметрыЗадания.Вставить("ОбработчикЗавершения", Неопределено); + + Возврат ПараметрыЗадания; + +КонецФункции + +&НаКлиенте +Процедура ФоновоеЗаданиеЗапуститьНаКлиенте(ПараметрыЗадания, Отказ) + + Результат = ФоновоеЗаданиеЗапуститьНаСервере(ПараметрыЗадания); + + Если Результат = Неопределено Тогда + Отказ = Истина; + Возврат; + КонецЕсли; + + РезультатВыполненияФоновогоЗадания = Результат; + + Если Результат.Статус = "Выполняется" Тогда + + ДлительнаяОперация = Истина; + ИдентификаторДлительнойОперации = Результат.ИдентификаторЗадания; + + РезультатВыполненияФоновогоЗадания.Вставить("ОбработчикЗавершения", ПараметрыЗадания.ОбработчикЗавершения); + + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ПараметрыОжидания.ВыводитьСообщения = Истина; + + ОповещениеОЗавершенииФоновогоЗадания = Новый ОписаниеОповещения("ОповещениеОЗавершенииФоновогоЗадания", ЭтотОбъект); + + Если Элементы.ГруппаПрогрессБарВыгрузка.Видимость Тогда + + ПараметрыОжидания.ВыводитьПрогрессВыполнения = Истина; + ПараметрыОжидания.ОповещениеОПрогрессеВыполнения = Новый ОписаниеОповещения("ПрогрессВыполненияФоновогоЗадания", ЭтотОбъект); + ПараметрыОжидания.Интервал = 1; + + КонецЕсли; + + ДлительныеОперацииКлиент.ОжидатьЗавершение(Результат, ОповещениеОЗавершенииФоновогоЗадания, ПараметрыОжидания); + + Иначе + // Задание выполнено, отменено или выполнено с ошибкой. + ПодключитьОбработчикОжидания(ПараметрыЗадания.ОбработчикЗавершения, "1", Истина); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ПрогрессВыполненияФоновогоЗадания(Прогресс, ДополнительныеПараметры) Экспорт + + Если Прогресс = Неопределено Тогда + Возврат; + КонецЕсли; + + Если Прогресс.Прогресс <> Неопределено Тогда + СтруктураПрогресса = Прогресс.Прогресс; + ПроцентВыполнения = СтруктураПрогресса.Процент; + ДопИнформацияВыполнение = СтруктураПрогресса.Текст; + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Функция ФоновоеЗаданиеЗапуститьНаСервере(ПараметрыЗадания) + + ДатаНачалаОперации = ТекущаяДатаСеанса(); + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = ПараметрыЗадания.НаименованиеЗадания; + + Результат = ДлительныеОперации.ВыполнитьВФоне( + ПараметрыЗадания.ВыполняемыйМетод, + ПараметрыЗадания.ПараметрыМетода, + ПараметрыВыполнения); + + Возврат Результат; + +КонецФункции + +&НаКлиенте +Процедура ОповещениеОЗавершенииФоновогоЗадания(Результат, ДополнительныеПараметры) Экспорт + + ОбработчикЗавершения = РезультатВыполненияФоновогоЗадания.ОбработчикЗавершения; + РезультатВыполненияФоновогоЗадания = Результат; + + // Задание выполнено, отменено или выполнено с ошибкой. + ПодключитьОбработчикОжидания(ОбработчикЗавершения, "1", Истина); + +КонецПроцедуры + + //////////////////////////////////////////////////////////////////////////////// // Переопределяемая часть - Обработчики событий переходов. @@ -2854,7 +3050,8 @@ Объект.ИспользоватьПараметрыТранспортаCOM = Ложь; ПропуститьСтраницу = Истина; - + Иначе + Элементы.ГруппаОшибкиПодключения.Видимость = Ложь; КонецЕсли; КонецФункции @@ -2862,21 +3059,25 @@ &НаКлиенте Функция Подключаемый_СтраницаМастераВыборРежимаРаботыПомощника_ПриПереходеДалее(Отказ) - Если РежимРаботыМастера = "ОбменЧерезВнешнееСоединение" И (Не ПустаяСтрока(Объект.COMКаталогИнформационнойБазы) Или Не ПустаяСтрока(Объект.COMИмяСервера1СПредприятия)) - И Не ВнешниеРесурсыРазрешены.РазрешенCom Тогда + Если ((РежимРаботыМастера = "ОбменЧерезВнешнееСоединение" И (Не ПустаяСтрока(Объект.COMКаталогИнформационнойБазы) Или Не ПустаяСтрока(Объект.COMИмяСервера1СПредприятия))) + И Не ВнешниеРесурсыРазрешены.РазрешенCom) Тогда ОповещениеОЗакрытии = Новый ОписаниеОповещения("РазрешитьРесурсЗавершение", ЭтотОбъект, "РазрешенCom"); Запросы = СоздатьЗапросНаИспользованиеВнешнихРесурсов(Объект, Истина, Ложь, Ложь, Ложь); РаботаВБезопасномРежимеКлиент.ПрименитьЗапросыНаИспользованиеВнешнихРесурсов(Запросы, ЭтотОбъект, ОповещениеОЗакрытии); Отказ = Истина; + ИначеЕсли РежимРаботыМастера = "ОбменЧерезВебСервис" И Не ВнешниеРесурсыРазрешены.РазрешенWS Тогда + ПроверитьКорректностьПараметровПодключенияWS(Отказ); + Если Не Отказ Тогда ОповещениеОЗакрытии = Новый ОписаниеОповещения("РазрешитьРесурсЗавершение", ЭтотОбъект, "РазрешенWS"); Запросы = СоздатьЗапросНаИспользованиеВнешнихРесурсов(Объект, Ложь, Ложь, Истина, Ложь); РаботаВБезопасномРежимеКлиент.ПрименитьЗапросыНаИспользованиеВнешнихРесурсов(Запросы, ЭтотОбъект, ОповещениеОЗакрытии); Отказ = Истина; КонецЕсли; + КонецЕсли; КонецФункции @@ -3313,6 +3514,7 @@ Функция Подключаемый_СтраницаМастераНачалоНастройкиОбменаССервисом_ПриПереходеДалее(Отказ) Если Не ВнешниеРесурсыРазрешены.РазрешенWS Тогда + ПроверитьКорректностьПараметровПодключенияWS(Отказ); Если Не Отказ Тогда @@ -3321,6 +3523,7 @@ РаботаВБезопасномРежимеКлиент.ПрименитьЗапросыНаИспользованиеВнешнихРесурсов(Запросы, ЭтотОбъект, ОповещениеОЗакрытии); Отказ = Истина; КонецЕсли; + КонецЕсли; КонецФункции @@ -3489,7 +3692,7 @@ Объект.ИнформацияСтатистики.Загрузить(ТаблицаИнформацииСтатистики); - ПолучитьДеревоИнформацииСтатистики(ТаблицаИнформацииСтатистики); + СведенияОбИнформацииСтатистики(ТаблицаИнформацииСтатистики); УстановитьВидимостьГруппыДополнительнойИнформации(); @@ -3563,55 +3766,37 @@ &НаКлиенте Функция Подключаемый_СтраницаМастераОжиданиеСинхронизацииСправочниковЗагрузка_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - СтраницаМастераОжиданиеСинхронизацииСправочниковЗагрузка_ОбработкаДлительнойОперации(); + ПерейтиДалее = Ложь; + + ПараметрыМетода = Новый Структура; + ПараметрыМетода.Вставить("УзелИнформационнойБазы", Объект.УзелИнформационнойБазы); + ПараметрыМетода.Вставить("ИмяФайлаСообщенияОбмена", Объект.ИмяФайлаСообщенияОбмена); + + ПараметрыЗадания = ПараметрыФоновогоЗадания(); + ПараметрыЗадания.ВыполняемыйМетод = "Обработки.ПомощникСозданияОбменаДанными.ВыполнитьЗагрузкуСправочников"; + ПараметрыЗадания.ПараметрыМетода = ПараметрыМетода; + ПараметрыЗадания.НаименованиеЗадания = НСтр("ru = 'Загрузка справочников из сообщения обмена'"); + ПараметрыЗадания.ОбработчикЗавершения = "ЗавершениеЗагрузкиСправочников"; + + ФоновоеЗаданиеЗапуститьНаКлиенте(ПараметрыЗадания, Отказ); КонецФункции -&НаСервере -Процедура СтраницаМастераОжиданиеСинхронизацииСправочниковЗагрузка_ОбработкаДлительнойОперации() +&НаКлиенте +Процедура ЗавершениеЗагрузкиСправочников() - ДлительнаяОперация = Ложь; - ДлительнаяОперацияЗавершена = Ложь; - ИдентификаторДлительнойОперации = ""; - - ПараметрыМетода = Новый Структура; - ПараметрыМетода.Вставить("УзелИнформационнойБазы", Объект.УзелИнформационнойБазы); - ПараметрыМетода.Вставить("ИмяФайлаСообщенияОбмена", Объект.ИмяФайлаСообщенияОбмена); - Попытка - Результат = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "Обработки.ПомощникСозданияОбменаДанными.ВыполнитьЗагрузкуСправочников", - ПараметрыМетода, - НСтр("ru = 'Загрузка справочников из сообщения обмена'")); - Если Не Результат.ЗаданиеВыполнено Тогда - - ДлительнаяОперация = Истина; - ИдентификаторДлительнойОперации = Результат.ИдентификаторЗадания; - - КонецЕсли; - Исключение + Если РезультатВыполненияФоновогоЗадания.Статус = "Ошибка" Тогда ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( Объект.УзелИнформационнойБазы, "ЗагрузкаДанных", - ТекущаяДатаСеанса(), - ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - КонецПопытки; + ДатаНачалаОперации, + РезультатВыполненияФоновогоЗадания.ПодробноеПредставлениеОшибки); + КонецЕсли; + + ВыполнитьПереходДалее(); КонецПроцедуры -&НаКлиенте -Функция Подключаемый_СтраницаМастераОжиданиеСинхронизацииСправочниковЗагрузкаДлительнаяОперация_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - - Если ДлительнаяОперация Тогда - - ПерейтиДалее = Ложь; - - ПодключитьОбработчикОжидания("ОбработчикОжиданияФоновогоЗадания", 5, Истина); - - КонецЕсли; - -КонецФункции - &НаКлиенте Функция Подключаемый_СтраницаМастераОжиданиеСинхронизацииСправочниковВыгрузка_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) @@ -4511,86 +4696,13 @@ КонецПроцедуры -&НаСервере -Процедура ЗапуститьВыгрузкуДанных(Отказ, УзелИнформационнойБазы, ВидТранспортаСообщенийОбмена) - ПараметрыЗадания = Новый Структура; - ПараметрыЗадания.Вставить("Отказ", Отказ); - ПараметрыЗадания.Вставить("УзелИнформационнойБазы", УзелИнформационнойБазы); - ПараметрыЗадания.Вставить("ВыполнятьЗагрузку", Ложь); - ПараметрыЗадания.Вставить("ВыполнятьВыгрузку", Истина); - ПараметрыЗадания.Вставить("ВидТранспортаСообщенийОбмена", ВидТранспортаСообщенийОбмена); - - ДлительнаяОперация = Ложь; - ДлительнаяОперацияЗавершена = Ложь; - ИдентификаторДлительнойОперации = ""; - Попытка - Результат = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "Обработки.ВыполнениеОбменаДанными.ВыполнитьЗапускОбменаДанными", - ПараметрыЗадания, - НСтр("ru = 'Выгрузка данных'")); - Если Не Результат.ЗаданиеВыполнено Тогда - ДлительнаяОперация = Истина; - ИдентификаторДлительнойОперации = Результат.ИдентификаторЗадания; - КонецЕсли; - Исключение - ОбменДаннымиВызовСервера.ЗафиксироватьЗавершениеОбменаСОшибкой( - УзелИнформационнойБазы, - "ВыгрузкаДанных", - ТекущаяДатаСеанса(), - ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - КонецПопытки; - - -КонецПроцедуры - -&НаСервере -Процедура ФоновоеЗаданиеПрочитатьПромежуточныйРезультат() - Прогресс = ДлительныеОперации.ПрочитатьПрогресс(ИдентификаторДлительнойОперации); - Если Прогресс <> Неопределено Тогда - ПроцентВыполнения = Прогресс.Процент; - ДопИнформацияВыполнение = Прогресс.Текст; - КонецЕсли; -КонецПроцедуры - -&НаСервере -Функция ФоновоеЗаданиеПолучитьРезультат() - Результат = Новый Структура; - Результат.Вставить("ФоновоеЗаданиеВыполнено", Ложь); - - Состояние = ОбменДаннымиВызовСервера.СостояниеЗадания(ИдентификаторДлительнойОперации); - - Если Состояние = "Активно" Тогда - ФоновоеЗаданиеПрочитатьПромежуточныйРезультат(); - ИначеЕсли Состояние = "Завершено" Тогда - Результат.ФоновоеЗаданиеВыполнено = Истина; - КонецЕсли; - - Возврат Результат; -КонецФункции - -&НаКлиенте -Процедура ФоновоеЗаданиеПроверитьНаКлиенте() - Если ДлительнаяОперация Тогда - Результат = ФоновоеЗаданиеПолучитьРезультат(); - КонецЕсли; - Если НЕ ДлительнаяОперация ИЛИ Результат.ФоновоеЗаданиеВыполнено Тогда - ПроцентВыполнения = 100; - ДопИнформацияВыполнение = ""; - ДлительнаяОперация = Ложь; - Состояние(НСтр("ru = 'Отправка данных завершена'")); - ПодключитьОбработчикОжидания("ЗакрытьФормуОтложенно", 1, Истина); - Иначе - ПодключитьОбработчикОжидания("ФоновоеЗаданиеПроверитьНаКлиенте", 2, Истина); - КонецЕсли; -КонецПроцедуры - &НаКлиенте Процедура ЗакрытьФормуОтложенно() ОбновитьИнтерфейс(); ЗакрытьФормуБезусловно = Истина; Закрыть(); + КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// @@ -4776,8 +4888,8 @@ НовыйПереход = ТаблицаПереходов.Добавить(); НовыйПереход.ПорядковыйНомерПерехода = 2; - НовыйПереход.ИмяОсновнойСтраницы = "СтраницаМастераВыборРежимаРаботыПомощника"; - НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииПродолжение"; + НовыйПереход.ИмяОсновнойСтраницы = "СтраницаМастераВыборРежимаРаботыПомощника"; + НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииПродолжение"; НовыйПереход.ИмяОбработчикаПриПереходеДалее = "СтраницаМастераВыборРежимаРаботыПомощника_ПриПереходеДалее"; // Задание параметров подключения; Проверка подключения. @@ -4877,24 +4989,17 @@ НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; - НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииСправочниковЗагрузкаДлительнаяОперация_ОбработкаДлительнойОперации"; + НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииСправочниковВыгрузка_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); НовыйПереход.ПорядковыйНомерПерехода = 15; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; - НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииСправочниковВыгрузка_ОбработкаДлительнойОперации"; - - НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 16; - НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; - НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; - НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииСправочниковВыгрузкаДлительнаяОперация_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 17; + НовыйПереход.ПорядковыйНомерПерехода = 16; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; @@ -4903,7 +5008,7 @@ // Настройки параметров учета НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 18; + НовыйПереход.ПорядковыйНомерПерехода = 17; НовыйПереход.ИмяОсновнойСтраницы = "СтраницаМастераНастройкиОтраженияДокументовВУчете"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииПродолжениеТолькоДалее"; НовыйПереход.ИмяОбработчикаПриПереходеДалее = "СтраницаМастераНастройкиОтраженияДокументовВУчете_ПриПереходеДалее"; @@ -4912,14 +5017,14 @@ // Сохранение настроек; Регистрация всех данных к выгрузке, кроме справочников. НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 19; + НовыйПереход.ПорядковыйНомерПерехода = 18; НовыйПереход.ИмяОсновнойСтраницы = "СтраницаМастераОжиданиеСохраненияНастроек"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСохраненияНастроек_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 20; + НовыйПереход.ПорядковыйНомерПерехода = 19; НовыйПереход.ИмяОсновнойСтраницы = "СтраницаМастераОжиданиеСохраненияНастроек"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; @@ -4928,56 +5033,56 @@ // Синхронизация всех данных, кроме справочников. НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 21; + НовыйПереход.ПорядковыйНомерПерехода = 20; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииДанныхЗагрузка_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 22; + НовыйПереход.ПорядковыйНомерПерехода = 21; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииДанныхЗагрузкаДлительнаяОперация_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 23; + НовыйПереход.ПорядковыйНомерПерехода = 22; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииДанныхЗагрузкаДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 24; + НовыйПереход.ПорядковыйНомерПерехода = 23; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииДанныхЗагрузкаДанных_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 25; + НовыйПереход.ПорядковыйНомерПерехода = 24; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииДанныхВыгрузка_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 26; + НовыйПереход.ПорядковыйНомерПерехода = 25; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииДанныхВыгрузкаДлительнаяОперация_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 27; + НовыйПереход.ПорядковыйНомерПерехода = 26; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииДанныхВыгрузкаДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 28; + НовыйПереход.ПорядковыйНомерПерехода = 27; НовыйПереход.ИмяОсновнойСтраницы = "СтраницаМастераСозданиеОбменаДаннымиУспешноЗавершено"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОкончание"; НовыйПереход.ИмяОбработчикаПриОткрытии = "СтраницаМастераСозданиеОбменаДаннымиУспешноЗавершено_ПриОткрытии"; @@ -4993,8 +5098,8 @@ НовыйПереход = ТаблицаПереходов.Добавить(); НовыйПереход.ПорядковыйНомерПерехода = 1; - НовыйПереход.ИмяОсновнойСтраницы = "СтраницаМастераНачалоНастройкиОбменаССервисом"; - НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииНачало"; + НовыйПереход.ИмяОсновнойСтраницы = "СтраницаМастераНачалоНастройкиОбменаССервисом"; + НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииНачало"; НовыйПереход.ИмяОбработчикаПриПереходеДалее = "СтраницаМастераНачалоНастройкиОбменаССервисом_ПриПереходеДалее"; НовыйПереход = ТаблицаПереходов.Добавить(); @@ -5092,24 +5197,17 @@ НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; - НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииСправочниковЗагрузкаДлительнаяОперация_ОбработкаДлительнойОперации"; + НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииСправочниковВыгрузка_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); НовыйПереход.ПорядковыйНомерПерехода = 14; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; - НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииСправочниковВыгрузка_ОбработкаДлительнойОперации"; - - НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 15; - НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; - НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; - НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииСправочниковВыгрузкаДлительнаяОперация_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 16; + НовыйПереход.ПорядковыйНомерПерехода = 15; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; @@ -5118,7 +5216,7 @@ // Настройки параметров учета НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 17; + НовыйПереход.ПорядковыйНомерПерехода = 16; НовыйПереход.ИмяОсновнойСтраницы = "СтраницаМастераНастройкиОтраженияДокументовВУчете"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииПродолжениеТолькоДалее"; НовыйПереход.ИмяОбработчикаПриПереходеДалее = "СтраницаМастераНастройкиОтраженияДокументовВУчете_ПриПереходеДалее"; @@ -5127,14 +5225,14 @@ // Сохранение настроек; Регистрация всех данных к выгрузке, кроме справочников. НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 18; + НовыйПереход.ПорядковыйНомерПерехода = 17; НовыйПереход.ИмяОсновнойСтраницы = "СтраницаМастераОжиданиеСохраненияНастроек"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСохраненияНастроек_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 19; + НовыйПереход.ПорядковыйНомерПерехода = 18; НовыйПереход.ИмяОсновнойСтраницы = "СтраницаМастераОжиданиеСохраненияНастроек"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; @@ -5143,49 +5241,49 @@ // Синхронизация всех данных, кроме справочников. НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 20; + НовыйПереход.ПорядковыйНомерПерехода = 19; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииДанныхЗагрузка_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 21; + НовыйПереход.ПорядковыйНомерПерехода = 20; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииДанныхЗагрузкаДлительнаяОперация_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 22; + НовыйПереход.ПорядковыйНомерПерехода = 21; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииДанныхЗагрузкаДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 23; + НовыйПереход.ПорядковыйНомерПерехода = 22; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииДанныхЗагрузкаДанных_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 24; + НовыйПереход.ПорядковыйНомерПерехода = 23; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииДанныхВыгрузка_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 25; + НовыйПереход.ПорядковыйНомерПерехода = 24; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; НовыйПереход.ИмяОбработчикаДлительнойОперации = "СтраницаМастераОжиданиеСинхронизацииДанныхВыгрузкаДлительнаяОперация_ОбработкаДлительнойОперации"; НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 26; + НовыйПереход.ПорядковыйНомерПерехода = 25; НовыйПереход.ИмяОсновнойСтраницы = "ОжиданиеСинхронизацииДанных"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОжидание"; НовыйПереход.ДлительнаяОперация = Истина; @@ -5193,7 +5291,7 @@ НовыйПереход = ТаблицаПереходов.Добавить(); - НовыйПереход.ПорядковыйНомерПерехода = 27; + НовыйПереход.ПорядковыйНомерПерехода = 26; НовыйПереход.ИмяОсновнойСтраницы = "СтраницаМастераСозданиеОбменаДаннымиУспешноЗавершено"; НовыйПереход.ИмяСтраницыНавигации = "СтраницаНавигацииОкончание"; НовыйПереход.ИмяОбработчикаПриОткрытии = "СтраницаМастераСозданиеОбменаДаннымиУспешноЗавершено_ПриОткрытии"; diff --git a/SSL/src/DataProcessors/ПомощникСозданияОбменаДанными/ObjectModule.bsl b/SSL/src/DataProcessors/ПомощникСозданияОбменаДанными/ObjectModule.bsl index c095d9cb8..80a6b2313 100644 --- a/SSL/src/DataProcessors/ПомощникСозданияОбменаДанными/ObjectModule.bsl +++ b/SSL/src/DataProcessors/ПомощникСозданияОбменаДанными/ObjectModule.bsl @@ -130,20 +130,18 @@ КонецЕсли; + Если Отказ Тогда + ВызватьИсключение(НСтр("ru = 'Возникла ошибка при создании настройки синхронизации данных.'")); + КонецЕсли; + + ЗафиксироватьТранзакцию(); Исключение - СообщитьИнформациюОбОшибке(ИнформацияОбОшибке(), Отказ); - + ОтменитьТранзакцию(); КонецПопытки; Если Отказ Тогда - - ОтменитьТранзакцию(); - Возврат; - - Иначе - ЗафиксироватьТранзакцию(); КонецЕсли; // Выполняем регистрацию изменений только справочников и ПВХ. @@ -251,20 +249,14 @@ ВызватьИсключение Сообщение; КонецЕсли; + ЗафиксироватьТранзакцию(); Исключение - СообщитьИнформациюОбОшибке(ИнформацияОбОшибке(), Отказ); - + ОтменитьТранзакцию(); КонецПопытки; Если Отказ Тогда - - ОтменитьТранзакцию(); - Возврат; - - Иначе - ЗафиксироватьТранзакцию(); КонецЕсли; // Выполняем регистрацию изменений на узле плана обмена. @@ -338,20 +330,18 @@ ЗначениеВСтрокуВнутр(ЗначенияПоУмолчаниюНаУзлеБазыКорреспондента)); КонецЕсли; + Если Отказ Тогда + ВызватьИсключение(НСтр("ru = 'Возникла ошибка при обновлении настройки синхронизации данных.'")); + КонецЕсли; + + ЗафиксироватьТранзакцию(); Исключение - СообщитьИнформациюОбОшибке(ИнформацияОбОшибке(), Отказ); - + ОтменитьТранзакцию(); КонецПопытки; Если Отказ Тогда - - ОтменитьТранзакцию(); - Возврат; - - Иначе - ЗафиксироватьТранзакцию(); КонецЕсли; // Выполняем регистрацию изменений всех данных, кроме справочников и ПВХ. @@ -417,21 +407,15 @@ КонецЕсли; - Исключение + Если Отказ Тогда + ВызватьИсключение(НСтр("ru = 'При создании настройки синхронизации данных возникли ошибки.'")); + КонецЕсли; - СообщитьИнформациюОбОшибке(ИнформацияОбОшибке(), Отказ); - - КонецПопытки; - - Если Отказ Тогда - - ОтменитьТранзакцию(); - - Возврат; - - Иначе ЗафиксироватьТранзакцию(); - КонецЕсли; + Исключение + СообщитьИнформациюОбОшибке(ИнформацияОбОшибке(), Отказ); + ОтменитьТранзакцию(); + КонецПопытки; КонецПроцедуры @@ -478,21 +462,15 @@ КонецЕсли; - Исключение + Если Отказ Тогда + ВызватьИсключение(НСтр("ru = 'При создании настройки синхронизации данных возникли ошибки.'")); + КонецЕсли; - СообщитьИнформациюОбОшибке(ИнформацияОбОшибке(), Отказ); - - КонецПопытки; - - Если Отказ Тогда - - ОтменитьТранзакцию(); - - Возврат; - - Иначе ЗафиксироватьТранзакцию(); - КонецЕсли; + Исключение + СообщитьИнформациюОбОшибке(ИнформацияОбОшибке(), Отказ); + ОтменитьТранзакцию(); + КонецПопытки; КонецПроцедуры @@ -775,6 +753,9 @@ Константы.ИспользоватьСинхронизациюДанных.Установить(Истина); Константы.НеИспользоватьРазделениеПоОбластямДанных.Установить(Истина); + // Правила обмена не мигрируют в РИБ, поэтому выполняем загрузку правил. + ОбменДаннымиСервер.ВыполнитьОбновлениеПравилДляОбменаДанными(); + КонецЕсли; ЗафиксироватьТранзакцию(); @@ -1091,6 +1072,14 @@ Перем СтруктураНастроек; + // Проверка возможности использования плана обмена в модели сервиса. + Если ОбщегоНазначенияПовтИсп.РазделениеВключено() + И Не ОбменДаннымиПовтИсп.ПланОбменаИспользуетсяВМоделиСервиса(ИмяПланаОбмена) Тогда + ПолеСтрокаСообщенияОбОшибке = НСтр("ru = 'Синхронизация данных с этой программой в режиме сервиса не предусмотрена.'"); + ОбменДаннымиСервер.СообщитьОбОшибке(СтрокаСообщенияОбОшибке(), Отказ); + Возврат; + КонецЕсли; + ПрочитатьПараметрыВСтруктуру(Отказ, СтрокаXML, СтруктураНастроек); Если СтруктураНастроек = Неопределено Тогда diff --git a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/ВыборКонстанты/Form.form b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/ВыборКонстанты/Form.form index cf9ef10cb..9c9bc4e68 100644 --- a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/ВыборКонстанты/Form.form +++ b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/ВыборКонстанты/Form.form @@ -455,12 +455,8 @@ <id>25</id> <autoFill>true</autoFill> </contextMenu> - <width>2</width> <autoMaxWidth>true</autoMaxWidth> - <height>1</height> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> - <verticalStretch>false</verticalStretch> <extInfo xsi:type="form:PictureDecorationExtInfo"> <picture xsi:type="form:FormPicture"/> </extInfo> @@ -493,10 +489,7 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> - <verticalStretch>false</verticalStretch> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> <verticalAlign>Top</verticalAlign> @@ -509,7 +502,6 @@ <key>ru</key> <value>Легенда</value> - true false Группа1ExtendedTooltip diff --git a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Настройки/Form.form b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Настройки/Form.form index 4c752c35a..7b027c6eb 100644 --- a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Настройки/Form.form +++ b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Настройки/Form.form @@ -154,7 +154,6 @@ ru Авторегистрация - true Группа1ExtendedTooltip 36 @@ -536,7 +535,6 @@ ru Консоль запросов - true Группа2ExtendedTooltip 43 @@ -612,7 +610,6 @@ ru Группа БСП - true ГруппаБСПExtendedTooltip 50 diff --git a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Настройки/Module.bsl b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Настройки/Module.bsl index 3ae1dfef6..314a74ad5 100644 --- a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Настройки/Module.bsl +++ b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Настройки/Module.bsl @@ -104,9 +104,11 @@ &НаКлиенте Процедура ПослеВыбораФайла(ВыбранныеФайлы, ДополнительныеПараметры) Экспорт - Если ВыбранныеФайлы.Количество() = 1 Тогда - ВариантИспользованияКонсолиЗапросов = 2; - УстановитьНастройкуАдресВнешнейОбработкиЗапросов(ВыбранныеФайлы[0]); + Если ВыбранныеФайлы <> Неопределено Тогда + Если ВыбранныеФайлы.Количество() = 1 Тогда + ВариантИспользованияКонсолиЗапросов = 2; + УстановитьНастройкуАдресВнешнейОбработкиЗапросов(ВыбранныеФайлы[0]); + КонецЕсли; КонецЕсли; КонецПроцедуры diff --git a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/НомераСообщенийУзлаПланаОбмена/Form.form b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/НомераСообщенийУзлаПланаОбмена/Form.form index 1d277b227..6bcafc677 100644 --- a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/НомераСообщенийУзлаПланаОбмена/Form.form +++ b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/НомераСообщенийУзлаПланаОбмена/Form.form @@ -118,8 +118,6 @@ ru Номера сообщений - true - true Группа3ExtendedTooltip 15 diff --git a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/СообщениеОбОбычномИнтерфейсе/Form.oform b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/СообщениеОбОбычномИнтерфейсе/Form.oform deleted file mode 100644 index 840d8c5e1..000000000 Binary files a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/СообщениеОбОбычномИнтерфейсе/Form.oform and /dev/null differ diff --git a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Форма/Attributes/СписокСсылок/ExtInfo/ListSettings.dcss b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Форма/Attributes/СписокСсылок/ExtInfo/ListSettings.dcss index eafe9f7a3..61e6fb4bb 100644 --- a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Форма/Attributes/СписокСсылок/ExtInfo/ListSettings.dcss +++ b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Форма/Attributes/СписокСсылок/ExtInfo/ListSettings.dcss @@ -9,30 +9,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - НомерСообщения - - - - - НеВыгружалось - Equal - true - - - - - ЦветТекста - web:LightGray - - - Текст - Не выгружалось - - - Normal b75fecce-942b-4aed-abc9-e6a02e460fb3 diff --git a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Форма/Form.form b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Форма/Form.form index d7ae5925e..81509fd2b 100644 --- a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Форма/Form.form @@ -188,7 +188,6 @@ ru Быстрые отборы - true Группа2ExtendedTooltip 200 @@ -2141,7 +2140,6 @@ true - true СписокКонстантКонтекстноеМенюГруппа1ExtendedTooltip 251 @@ -2615,6 +2613,10 @@ 20 Left + + Selection + СписокСсылокВыбор + ChoiceProcessing СписокСсылокОбработкаВыбора @@ -2804,7 +2806,6 @@ true - true СписокСсылокКонтекстноеМенюГруппа1ExtendedTooltip 270 @@ -3148,7 +3149,6 @@ true - true СписокСсылокКонтекстноеМенюГруппа2ExtendedTooltip 281 @@ -3944,7 +3944,6 @@ true Label - true true true true @@ -4057,7 +4056,6 @@ ru Регистрируемые объекты - 10 Группа5ExtendedTooltip 226 @@ -4087,7 +4085,6 @@ Данные регистрации true - true Группа1ExtendedTooltip 204 @@ -4716,6 +4713,24 @@ + + СписокСсылокИмяТаблицы + + <key>ru</key> + <value>Список ссылок имя таблицы</value> + + 16 + + String + + + + true + + + true + + ДобавитьРегистрациюСсылки @@ -4858,7 +4873,7 @@ <name>УдалитьРегистрациюАвтоОбъектов</name> <title> <key>ru</key> - <value>Удалить регистрацию только авторегистрируемых объектов выбранных типов</value> + <value>Удалить регистрацию только авторегиструемых объектов выбранных типов</value> 7 @@ -5369,6 +5384,14 @@ true + + ИдентификаторКоманды + + String + + + true + diff --git a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Форма/Module.bsl index 0291a14eb..4fef0622b 100644 --- a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/Forms/Форма/Module.bsl @@ -25,7 +25,6 @@ #КонецОбласти #Область ОбработчикиСобытийФормы -// &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) @@ -120,9 +119,15 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + // Автосохранение настроек СохраняемыеВНастройкахДанныеМодифицированы = Истина; + КонецПроцедуры &НаКлиенте @@ -295,6 +300,17 @@ #Область ОбработчикиСобытийЭлементовТаблицыФормыСписокСсылок // +&НаКлиенте +Процедура СписокСсылокВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) + СтандартнаяОбработка = Ложь; + ТекущаяСсылка = Элемент.ТекущиеДанные.Ссылка; + Если Не ЗначениеЗаполнено(ТекущаяСсылка) + Или Не ЗначениеЗаполнено(СписокСсылокИмяТаблицы) Тогда + Возврат; + КонецЕсли; + СтруктураПараметров = Новый Структура("Ключ, ТолькоПросмотр", ТекущаяСсылка, Истина); + ОткрытьФорму(СписокСсылокИмяТаблицы + ".ФормаОбъекта", СтруктураПараметров, ЭтотОбъект); +КонецПроцедуры &НаКлиенте Процедура СписокСсылокОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) @@ -710,7 +726,7 @@ Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", WebЦвета.ТемноСерый); Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = 'Нет изменений'")); - + КонецПроцедуры // @@ -1050,7 +1066,7 @@ &НаКлиенте Процедура ДобавитьРегистрациюВСписокСсылок(ЭтоПодбор = Ложь) - ТекИмяФормы = ПолучитьИмяФормы(СписокСсылок) + "ФормаВыбора"; + ТекИмяФормы = СписокСсылокИмяТаблицы + ".ФормаВыбора"; ТекПараметры = Новый Структура(); ТекПараметры.Вставить("РежимВыбора", Истина); ТекПараметры.Вставить("МножественныйВыбор", Истина); @@ -1068,7 +1084,7 @@ &НаСервере Функция СсылкаДляУдаленияОбъекта(Знач УникальныйИдентификатор = Неопределено) - Описание = ЭтотОбъект().ХарактеристикиПоМетаданным(СписокСсылок.ОсновнаяТаблица); + Описание = ЭтотОбъект().ХарактеристикиПоМетаданным(СписокСсылокИмяТаблицы); Если УникальныйИдентификатор = Неопределено Тогда Возврат Описание.Менеджер.ПолучитьСсылку(); КонецЕсли; @@ -1080,7 +1096,7 @@ ТекИмяФормы = ПолучитьИмяФормы() + "Форма.ВыборОбъектовОтбором"; ТекПараметры = Новый Структура("ДействиеВыбора, ИмяТаблицы", Истина, - ОсновнаяТаблицаДинамическогоСписка(СписокСсылок)); + СписокСсылокИмяТаблицы); ОткрытьФорму(ТекИмяФормы, ТекПараметры, Элементы.СписокСсылок); КонецПроцедуры @@ -1089,7 +1105,7 @@ ТекИмяФормы = ПолучитьИмяФормы() + "Форма.ВыборОбъектовОтбором"; ТекПараметры = Новый Структура("ДействиеВыбора, ИмяТаблицы", Ложь, - ОсновнаяТаблицаДинамическогоСписка(СписокСсылок)); + СписокСсылокИмяТаблицы); ОткрытьФорму(ТекИмяФормы, ТекПараметры, Элементы.СписокСсылок); КонецПроцедуры @@ -1469,11 +1485,6 @@ Возврат ЭтотОбъект().ПолучитьИмяФормы(ТекущийОбъект); КонецФункции -&НаСервере -Функция ОсновнаяТаблицаДинамическогоСписка(РеквизитФормы) - Возврат РеквизитФормы.ОсновнаяТаблица; -КонецФункции - &НаСервере Процедура ИзменениеПометки(Строка) ЭлементДанных = ДеревоМетаданных.НайтиПоИдентификатору(Строка); @@ -1720,7 +1731,7 @@ |"; СписокСсылок.Параметры.УстановитьЗначениеПараметра("ВыбранныйУзел", УзелОбменаСсылка); - СписокСсылок.ОсновнаяТаблица = ИмяТаблицы; + СписокСсылокИмяТаблицы = ИмяТаблицы; СписокСсылок.ДинамическоеСчитываниеДанных = Истина; // Представление объекта @@ -2313,4 +2324,5 @@ КонецФункции + #КонецОбласти diff --git a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/РегистрацияИзмененийДляОбменаДанными.mdo b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/РегистрацияИзмененийДляОбменаДанными.mdo index 1be01e20a..9bb79ce53 100644 --- a/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/РегистрацияИзмененийДляОбменаДанными.mdo +++ b/SSL/src/DataProcessors/РегистрацияИзмененийДляОбменаДанными/РегистрацияИзмененийДляОбменаДанными.mdo @@ -11,7 +11,6 @@ true DataProcessor.РегистрацияИзмененийДляОбменаДанными.Form.Форма - DataProcessor.РегистрацияИзмененийДляОбменаДанными.Form.СообщениеОбОбычномИнтерфейсе true @@ -179,16 +178,6 @@ PersonalComputer MobileDevice - - СообщениеОбОбычномИнтерфейсе - - ru - Сообщение об обычном интерфейсе - - Ordinary - PersonalComputer - MobileDevice - ВыборКонстанты diff --git a/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентноеЗадание/Form.form b/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентноеЗадание/Form.form index 9c56a823a..8da6fd447 100644 --- a/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентноеЗадание/Form.form +++ b/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентноеЗадание/Form.form @@ -180,7 +180,6 @@ Auto true true - auto Auto Auto @@ -199,6 +198,7 @@ КоличествоПовторовПриАварийномЗавершении + 2 КоличествоПовторовПриАварийномЗавершенииExtendedTooltip 55 @@ -220,6 +220,7 @@ Left true + 5 true true true @@ -229,46 +230,12 @@ Normal - - ДекорацияРаз - 43 - - <key>ru</key> - <value>раз</value> - - true - true - - true - - - ДекорацияРазРасширеннаяПодсказка - 56 - Label - true - true - - Left - - - - ДекорацияРазКонтекстноеМеню - 44 - true - - Label - true - true - - Left - - ИнтервалПовтораПриАварийномЗавершении 11 <key>ru</key> - <value>через</value> + <value>раз через</value> true true @@ -299,6 +266,7 @@ Left true + 7 true true true @@ -336,7 +304,6 @@ true Label - true true Left @@ -370,7 +337,6 @@ Auto true true - auto Auto Auto @@ -460,10 +426,8 @@ Left true - 28 true true - false true true true @@ -546,10 +510,8 @@ Left true - 35 true true - false true true true @@ -586,7 +548,6 @@ Auto true true - auto Auto Auto @@ -743,7 +704,6 @@ Auto true true - auto Auto Auto @@ -754,6 +714,10 @@ СообщенияИОписаниеИнформацииОбОшибке 27 + + <key>ru</key> + <value>Сообщение</value> + true true @@ -763,7 +727,11 @@ СообщенияПользователюИОписаниеИнформацииОбОшибке true - None + Left + + ru + Сообщения пользователю и описание информации об ошибке + СообщенияИОписаниеИнформацииОбОшибкеExtendedTooltip 70 @@ -788,9 +756,9 @@ true true - true true true + true true true true @@ -802,10 +770,6 @@ true - - <key>ru</key> - <value>5. Сообщения пользователю и описание информации об ошибке</value> - СообщенияПользователюИОписаниеИнформацииОбОшибкеExtendedTooltip 69 @@ -822,7 +786,6 @@ Auto true true - auto Auto Auto @@ -908,7 +871,6 @@ Retry SaveValues Yes - 65 LockOwner true true @@ -1020,7 +982,7 @@ КоличествоПовторовПриАварийномЗавершении <key>ru</key> - <value>Повторять</value> + <value>При ошибках повторять</value> 10 diff --git a/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентноеЗадание/Help/ru.html b/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентноеЗадание/Help/ru.html index 6664c523c..9edc59474 100644 --- a/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентноеЗадание/Help/ru.html +++ b/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентноеЗадание/Help/ru.html @@ -2,20 +2,15 @@

        Описание свойств регламентного задания.

        Как правило, необходимость в изменении свойств регламентных заданий возникает редко. Чаще всего, используется флажок Включено, с помощью которого можно отключить выполнение регламентного задания. 

        В некоторых случаях бывает необходимо задать два разных расписания для одного регламентного задания. Тогда в список можно добавить новое регламентное задание по одному из предопределенных шаблонов, предусмотренных в программе.

        -

        Основное

        -

        Это наиболее нужные свойства при настройке регламентного задания. Но, как и все остальные свойства, они уже установлены в поставке, и необходимость их изменения возникает в исключительных случаях.

        -
        • Наименование - наименование регламентного задания. Обычно пустое, и в качестве него применяется синоним, указанный в шаблоне регламентного задания, заданного в конфигураторе. Если синоним шаблона не задан, используется его имя. -
        • Включено - флажок позволяет включить или отключить выполнение регламентного задания.
          Полезно, когда нужно ненадолго отключить регламентное задание, не меняя расписание. -
        • С помощью ссылки Расписание можно настроить расписание регламентного задания.

        Действия при ошибках

        -
        • Повторять, раз - число попыток выполнения регламентного задания, при возникновении ошибки. -
        • Повторять через, сек - пауза (в секундах) между попытками выполнения регламентного задания, при возникновении ошибки.

        -

        Дополнительно

        +

        Свойства регламентного задания

        +
        • Включено - флажок позволяет включить или отключить выполнение регламентного задания.
          Полезно, когда нужно ненадолго отключить регламентное задание, не меняя расписание. +
        • С помощью ссылки Расписание можно настроить расписание регламентного задания.
        • Наименование - наименование регламентного задания. Обычно пустое, и в качестве него применяется синоним, указанный в шаблоне регламентного задания, заданного в конфигураторе. Если синоним шаблона не задан, используется его имя. +
        • При ошибках повторять, раз - число попыток выполнения регламентного задания, при возникновении ошибки. +
          • через, сек - пауза (в секундах) между попытками выполнения регламентного задания, при возникновении ошибки.

        • Предопределенное - принимает значения Да и Нет. Непредопределенные (введенные вручную) регламентные задания используются в редких случаях.
        • Идентификатор - нужен только для продвинутого администратора, знающего встроенный язык. Требуется для исследования нестандартных проблем в работе регламентных заданий, если таковые есть.
        • Ключ - нужен только для продвинутого администратора. Требуется для тонкой настройки выполнения регламентных заданий и для исследования нестандартных проблем в работе регламентных заданий, если таковые есть. Если ключ указан, то перед запуском фонового задания проверяется, что нет других активных фоновых заданий по тому же шаблону регламентного задания, который применен в экземпляре регламентного задания. -
        • Имя пользователя - имя пользователя информационной базы, который будет использован для выполнения регламентного задания. Выбирается из списка Пользователи.

        Метаданные

        -
        • Имя - имя шаблона регламентного задания, определенного в конфигураторе. +
        • Имя пользователя - имя пользователя информационной базы, который будет использован для выполнения регламентного задания. Выбирается из списка Пользователи.
        • Имя - имя шаблона регламентного задания, определенного в конфигураторе.
        • Синоним - синоним шаблона регламентного задания, определенного в конфигураторе. -
        • Имя метода - имя процедуры в конфигурации, которая будет выполняться в фоновом задании, созданным по расписанию регламентного задания.

        Сообщения пользователю и описание информации об ошибке

        -
        • Поле содержит текст сообщений и текст сведений об ошибке, если сообщения и/или ошибки произошли при выполнении последнего фонового задания созданного по этому регламентному заданию. То же содержание доступно, если открыть последнее фоновое задание этого регламентного задания.

        См. также:

        +
      • Имя метода - имя процедуры в конфигурации, которая будет выполняться в фоновом задании, созданным по расписанию регламентного задания.
      • Сообщение - поле содержит текст сообщений и текст сведений об ошибке, если сообщения и/или ошибки произошли при выполнении последнего фонового задания созданного по этому регламентному заданию. То же содержание доступно, если открыть последнее фоновое задание этого регламентного задания.

      См. также:

      \ No newline at end of file diff --git a/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентноеЗадание/Module.bsl b/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентноеЗадание/Module.bsl index 012566ea9..f36a8aa37 100644 --- a/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентноеЗадание/Module.bsl +++ b/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентноеЗадание/Module.bsl @@ -113,10 +113,10 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Оповещение = Новый ОписаниеОповещения("ЗаписатьИЗакрытьЗавершение", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы); КонецПроцедуры diff --git a/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентныеИФоновыеЗадания/Form.form b/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентныеИФоновыеЗадания/Form.form index 6c1a6aae6..34789199a 100644 --- a/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентныеИФоновыеЗадания/Form.form +++ b/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентныеИФоновыеЗадания/Form.form @@ -11,7 +11,7 @@ 283 КартинкаБлокировкаРаботыСВнешнимиРесурсами - 285 + 288 true true @@ -19,43 +19,6 @@ КартинкаБлокировкаРаботыСВнешнимиРесурсамиРасширеннаяПодсказка - 287 - Label - true - true - - Left - - - - КартинкаБлокировкаРаботыСВнешнимиРесурсамиКонтекстноеМеню - 286 - true - - 4 - true - 2 - true - - - CommonPicture.Предупреждение32 - - - - - ПояснениеБлокировкаРаботыСВнешнимиРесурсами - 288 - - <key>ru</key> - <value>Работа со всеми внешними ресурсами (синхронизация данных, отправка почты и т.п.), выполняемая по расписанию заблокирована для предотвращения конфликтов с основной информационной базой. <link Разблокировать>Разблокировать</>.</value> - - true - true - - true - - - ПояснениеБлокировкаРаботыСВнешнимиРесурсамиРасширеннаяПодсказка 290 Label true @@ -65,14 +28,47 @@
      - ПояснениеБлокировкаРаботыСВнешнимиРесурсамиКонтекстноеМеню + КартинкаБлокировкаРаботыСВнешнимиРесурсамиКонтекстноеМеню 289 true + true + true + + + CommonPicture.Предупреждение32 + + + + + ПояснениеБлокировкаРаботыСВнешнимиРесурсами + 285 + + <key>ru</key> + <value>Работа со всеми внешними ресурсами (синхронизация данных, отправка почты и т.п.), выполняемая по расписанию, заблокирована для предотвращения конфликтов с основной информационной базой. <link Разблокировать>Разблокировать</>.</value> + + true + true + + true + + + ПояснениеБлокировкаРаботыСВнешнимиРесурсамиРасширеннаяПодсказка + 287 + Label + true + true + + Left + + + + ПояснениеБлокировкаРаботыСВнешнимиРесурсамиКонтекстноеМеню + 286 + true + true Label - true - 2 true @@ -80,8 +76,10 @@ ПояснениеБлокировкаРаботыСВнешнимиРесурсамиОбработкаНавигационнойСсылки Left + 2 + true true true @@ -105,677 +103,1132 @@ Auto - - ТаблицаРегламентныеЗадания - 29 + + СтраницыОтложеннаяЗагрузкаРегламентныхЗаданий + 291 + + СтраницаЗагрузкаРегламентныхЗаданий + 293 + + ДекорацияДлительнаяОперация + 297 + true + true + + true + + + ДекорацияДлительнаяОперацияРасширеннаяПодсказка + 299 + Label + true + true + + Left + + + + ДекорацияДлительнаяОперацияКонтекстноеМеню + 298 + true + + true + true + + + CommonPicture.ДлительнаяОперация48 + + + + + ДекорацияОписание + 300 + + <key>ru</key> + <value>Выполняется формирование списка регламентных заданий...</value> + + true + true + + true + + + ДекорацияОписаниеРасширеннаяПодсказка + 302 + Label + true + true + + Left + + + + ДекорацияОписаниеКонтекстноеМеню + 301 + true + + Label + true + true + Center + + Left + + + true + true + + true + + + СтраницаЗагрузкаРегламентныхЗаданийРасширеннаяПодсказка + 294 + Label + true + true + + Left + + + Page + + false + + + + СтраницаРегламентныеЗадания + 295 + + ТаблицаРегламентныеЗадания + 29 + true + true + + true + + + ТаблицаРегламентныеЗадания + + false + None + EndEdit + MoveDown + MoveUp + SortListAsc + SortListDesc + + Использование + 42 + + <key>ru</key> + <value>Вкл.</value> + + true + true + + true + + + ТаблицаРегламентныеЗадания.Использование + + None + + ru + Включено - выполнять задание. + + + ИспользованиеExtendedTooltip + 197 + Label + true + true + + Left + + + + ИспользованиеКонтекстноеМеню + 43 + true + + CheckBoxField + true + Enter + true + + StdPicture.ScheduledJob + + Left + true + + + + Наименование + 40 + + <key>ru</key> + <value>Наименование</value> + + true + true + + true + + + ТаблицаРегламентныеЗадания.Наименование + + + НаименованиеExtendedTooltip + 198 + Label + true + true + + Left + + + + НаименованиеКонтекстноеМеню + 41 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + + СостояниеВыполнения + 61 + + <key>ru</key> + <value>Состояние</value> + + true + true + + true + + + ТаблицаРегламентныеЗадания.СостояниеВыполнения + + + ru + Состояние фонового задания + + + СостояниеВыполненияExtendedTooltip + 200 + Label + true + true + + Left + + + + СостояниеВыполненияКонтекстноеМеню + 62 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + ДатаНачала + 303 + true + true + + + ТаблицаРегламентныеЗадания.ДатаНачала + + + ДатаНачалаРасширеннаяПодсказка + 305 + Label + true + true + + Left + + + + ДатаНачалаКонтекстноеМеню + 304 + true + + InputField + Auto + true + Left + true + + true + true + true + true + true + true + Normal + + + + ДатаОкончания + 52 + true + true + + true + + + ТаблицаРегламентныеЗадания.ДатаОкончания + + + ru + Дата и время окончания последнего завершенного фонового задания + + + ДатаОкончанияExtendedTooltip + 201 + Label + true + true + + Left + + + + ДатаОкончанияКонтекстноеМеню + 53 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + + ИмяПользователя + 141 + true + true + + + ТаблицаРегламентныеЗадания.ИмяПользователя + + + ru + Имя пользователя для запуска фонового задания + + + ИмяПользователяExtendedTooltip + 199 + Label + true + true + + Left + + + + ИмяПользователяКонтекстноеМеню + 142 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + + Предопределенное + 34 + + <key>ru</key> + <value>Предопределенное</value> + + true + true + + + ТаблицаРегламентныеЗадания.Предопределенное + + + ru + Предопределенное задание поставляется в составе программы, и его нельзя удалить + + + ПредопределенноеExtendedTooltip + 196 + Label + true + true + + Left + + + + ПредопределенноеКонтекстноеМеню + 35 + true + + CheckBoxField + true + Enter + true + Left + true + + + + ТаблицаРегламентныеЗаданияКоманднаяПанель + 31 + + ТаблицаРегламентныеЗаданияДобавить + 157 + true + true + + true + + + ТаблицаРегламентныеЗаданияДобавитьExtendedTooltip + 186 + Label + true + true + + Left + + + Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Add + Normal + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ТаблицаРегламентныеЗаданияИзменить + 172 + true + true + + true + + + ТаблицаРегламентныеЗаданияИзменитьExtendedTooltip + 187 + Label + true + true + + Left + + + Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Change + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ТаблицаРегламентныеЗаданияНастроитьРасписание + 135 + true + true + + true + + false + + ТаблицаРегламентныеЗаданияНастроитьРасписаниеРасширеннаяПодсказка + 190 + Label + true + true + + Left + + + Form.Command.НастроитьРасписание + Normal + Auto + true + true + UserCmds + Auto + + + ТаблицаРегламентныеЗаданияСкопировать + 158 + true + true + + true + + + ТаблицаРегламентныеЗаданияСкопироватьExtendedTooltip + 188 + Label + true + true + + Left + + + Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Copy + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ТаблицаРегламентныеЗаданияУдалить + 160 + true + true + + true + + + ТаблицаРегламентныеЗаданияУдалитьExtendedTooltip + 189 + Label + true + true + + Left + + + Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Delete + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ТаблицаРегламентныеЗаданияВыполнитьСейчас + 152 + true + true + + true + + false + + ТаблицаРегламентныеЗаданияВыполнитьСейчасExtendedTooltip + 191 + Label + true + true + + Left + + + Form.Command.ВыполнитьРегламентноеЗаданиеВручную + Normal + Auto + true + true + UserCmds + Auto + + + ТаблицаРегламентныеЗаданияВыполнитьНеВФоне + 279 + true + + true + + + ТаблицаРегламентныеЗаданияВыполнитьНеВФонеРасширеннаяПодсказка + 280 + Label + true + true + + Left + + + Form.Command.ВыполнитьНеВФоне + Normal + Auto + true + true + UserCmds + Auto + + + ТаблицаРегламентныеЗаданияОбновитьДанные + 146 + true + true + + true + + false + + ТаблицаРегламентныеЗаданияОбновитьДанныеExtendedTooltip + 185 + Label + true + true + + Left + + + Form.Command.ОбновитьРегламентныеЗадания + Normal + true + true + UserCmds + Auto + + + ТаблицаРегламентныеЗаданияИзменитьФорму + 244 + true + true + + true + + + ТаблицаРегламентныеЗаданияИзменитьФормуРасширеннаяПодсказка + 245 + Label + true + true + + Left + + + Form.StandardCommand.CustomizeForm + Normal + Auto + true + true + UserCmds + Auto + + + ТаблицаРегламентныеЗаданияСправка + 153 + true + true + + true + + false + + ТаблицаРегламентныеЗаданияСправкаExtendedTooltip + 194 + Label + true + true + + Left + + + Form.StandardCommand.Help + Normal + Auto + true + true + UserCmds + Auto + + + ТаблицаРегламентныеЗаданияПоказатьВсеЗадания + 275 + true + true + + true + + + ТаблицаРегламентныеЗаданияПоказатьВсеЗаданияРасширеннаяПодсказка + 276 + Label + true + true + + Left + + + Form.Command.ПоказатьВсеЗадания + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + Left + true + + + Selection + ТаблицаРегламентныеЗаданияВыбор + + + BeforeAddRow + ТаблицаРегламентныеЗаданияПередНачаломДобавления + + + BeforeDeleteRow + ТаблицаРегламентныеЗаданияПередУдалением + + + BeforeRowChange + ТаблицаРегламентныеЗаданияПередНачаломИзменения + + + ТаблицаРегламентныеЗаданияСтрокаПоиска + 246 + + ТаблицаРегламентныеЗаданияСтрокаПоискаРасширеннаяПодсказка + 248 + Label + true + true + + Left + + + + ТаблицаРегламентныеЗаданияСтрокаПоискаКонтекстноеМеню + 247 + true + + ТаблицаРегламентныеЗадания + + true + + + + ТаблицаРегламентныеЗаданияСостояниеПросмотра + 249 + + ТаблицаРегламентныеЗаданияСостояниеПросмотраРасширеннаяПодсказка + 251 + Label + true + true + + Left + + + + ТаблицаРегламентныеЗаданияСостояниеПросмотраКонтекстноеМеню + 250 + true + + ViewStatusAddition + ТаблицаРегламентныеЗадания + + true + + + + ТаблицаРегламентныеЗаданияУправлениеПоиском + 252 + + ТаблицаРегламентныеЗаданияУправлениеПоискомРасширеннаяПодсказка + 254 + Label + true + true + + Left + + + + ТаблицаРегламентныеЗаданияУправлениеПоискомКонтекстноеМеню + 253 + true + + SearchControlAddition + ТаблицаРегламентныеЗадания + + true + + + + ТаблицаРегламентныеЗаданияExtendedTooltip + 195 + Label + true + true + + Left + + + + ТаблицаРегламентныеЗаданияКонтекстноеМеню + 30 + + ТаблицаРегламентныеЗаданияКонтекстноеМенюВыполнитьНеВФоне + 277 + true + + true + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюВыполнитьНеВФонеРасширеннаяПодсказка + 278 + Label + true + true + + Left + + + Form.Command.ВыполнитьНеВФоне + Normal + Auto + true + true + UserCmds + Auto + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюОбновитьДанные + 165 + true + true + + true + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюОбновитьДанныеExtendedTooltip + 178 + Label + true + true + + Left + + + 0 + Normal + Auto + true + true + UserCmds + Auto + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюВключитьРегламентноеЗадание + 234 + true + true + + true + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюВключитьРегламентноеЗаданиеРасширеннаяПодсказка + 235 + Label + true + true + + Left + + + Form.Command.ВключитьРегламентноеЗадание + Normal + Auto + true + true + UserCmds + Auto + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюВыключитьРегламентноеЗадание + 236 + true + true + + true + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюВыключитьРегламентноеЗаданиеРасширеннаяПодсказка + 237 + Label + true + true + + Left + + + Form.Command.ВыключитьРегламентноеЗадание + Normal + Auto + true + true + UserCmds + Auto + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюВывестиСписок + 170 + true + true + + true + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюВывестиСписокExtendedTooltip + 179 + Label + true + true + + Left + + + Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.OutputList + Normal + Auto + true + true + UserCmds + Auto + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюКопироватьВБуферОбмена + 171 + true + true + + true + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюКопироватьВБуферОбменаExtendedTooltip + 180 + Label + true + true + + Left + + + Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.CopyToClipboard + Normal + Auto + true + true + UserCmds + Auto + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюДобавить + 166 + true + + true + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюДобавитьExtendedTooltip + 181 + Label + true + true + + Left + + + Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Add + Normal + Auto + true + true + UserCmds + Auto + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюСкопировать + 167 + true + + true + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюСкопироватьExtendedTooltip + 182 + Label + true + true + + Left + + + Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Copy + Normal + Auto + true + true + UserCmds + Auto + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюИзменить + 168 + true + + true + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюИзменитьExtendedTooltip + 183 + Label + true + true + + Left + + + Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Change + Normal + Auto + true + true + UserCmds + Auto + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюУдалить + 169 + true + + true + + + ТаблицаРегламентныеЗаданияКонтекстноеМенюУдалитьExtendedTooltip + 184 + Label + true + true + + Left + + + Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Delete + Normal + Auto + true + true + UserCmds + Auto + + true + + true + true + true + true + true + MultiRow +
      true
      + 1 + 1 + AutoUse + AutoUse + true + true + false + true + Auto + Auto + true + true + None + None + None + true + +
      + true + true + + true + + + СтраницаРегламентныеЗаданияРасширеннаяПодсказка + 296 + Label + true + true + + Left + + + Page + + Vertical + false + +
      true true true - - ТаблицаРегламентныеЗадания - - false - None - EndEdit - MoveDown - MoveUp - SortListAsc - SortListDesc - - Использование - 42 - - <key>ru</key> - <value>Вкл.</value> - - true - true - - true - - - ТаблицаРегламентныеЗадания.Использование - - None - - ru - Включено - выполнять задание. - - - ИспользованиеExtendedTooltip - 197 - Label - true - true - - Left - - - - ИспользованиеКонтекстноеМеню - 43 - true - - CheckBoxField - true - Enter - true - - StdPicture.ScheduledJob - - Left - true - - - - Наименование - 40 - - <key>ru</key> - <value>Наименование</value> - - true - true - - true - - - ТаблицаРегламентныеЗадания.Наименование - - - НаименованиеExtendedTooltip - 198 - Label - true - true - - Left - - - - НаименованиеКонтекстноеМеню - 41 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - Normal - - - - СостояниеВыполнения - 61 - - <key>ru</key> - <value>Состояние</value> - - true - true - - true - - - ТаблицаРегламентныеЗадания.СостояниеВыполнения - - - ru - Состояние фонового задания - - - СостояниеВыполненияExtendedTooltip - 200 - Label - true - true - - Left - - - - СостояниеВыполненияКонтекстноеМеню - 62 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - - ДатаОкончания - 52 - true - true - - true - - - ТаблицаРегламентныеЗадания.ДатаОкончания - - - ru - Дата и время окончания последнего завершенного фонового задания - - - ДатаОкончанияExtendedTooltip - 201 - Label - true - true - - Left - - - - ДатаОкончанияКонтекстноеМеню - 53 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - Normal - - - - ИмяПользователя - 141 - true - true - - - ТаблицаРегламентныеЗадания.ИмяПользователя - - - ru - Имя пользователя для запуска фонового задания - - - ИмяПользователяExtendedTooltip - 199 - Label - true - true - - Left - - - - ИмяПользователяКонтекстноеМеню - 142 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - Normal - - - - Предопределенное - 34 - - <key>ru</key> - <value>Предопределенное</value> - - true - true - - - ТаблицаРегламентныеЗадания.Предопределенное - - - ru - Предопределенное задание поставляется в составе программы, и его нельзя удалить - - - ПредопределенноеExtendedTooltip - 196 - Label - true - true - - Left - - - - ПредопределенноеКонтекстноеМеню - 35 - true - - CheckBoxField - true - Enter - true - Left - true - - - - ТаблицаРегламентныеЗаданияКоманднаяПанель - 31 - - ТаблицаРегламентныеЗаданияДобавить - 157 - true - true - - true - - - ТаблицаРегламентныеЗаданияДобавитьExtendedTooltip - 186 - Label - true - true - - Left - - - Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Add - Normal - true - true - UserCmds - Auto - InAdditionalSubmenu - - - ТаблицаРегламентныеЗаданияИзменить - 172 - true - true - - true - - - ТаблицаРегламентныеЗаданияИзменитьExtendedTooltip - 187 - Label - true - true - - Left - - - Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Change - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - - ТаблицаРегламентныеЗаданияНастроитьРасписание - 135 - true - true - - true - - false - - ТаблицаРегламентныеЗаданияНастроитьРасписаниеРасширеннаяПодсказка - 190 - Label - true - true - - Left - - - Form.Command.НастроитьРасписание - Normal - Auto - true - true - UserCmds - Auto - - - ТаблицаРегламентныеЗаданияСкопировать - 158 - true - true - - true - - - ТаблицаРегламентныеЗаданияСкопироватьExtendedTooltip - 188 - Label - true - true - - Left - - - Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Copy - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - - ТаблицаРегламентныеЗаданияУдалить - 160 - true - true - - true - - - ТаблицаРегламентныеЗаданияУдалитьExtendedTooltip - 189 - Label - true - true - - Left - - - Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Delete - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - - ТаблицаРегламентныеЗаданияВыполнитьСейчас - 152 - true - true - - true - - false - - ТаблицаРегламентныеЗаданияВыполнитьСейчасExtendedTooltip - 191 - Label - true - true - - Left - - - Form.Command.ВыполнитьРегламентноеЗаданиеВручную - Normal - Auto - true - true - UserCmds - Auto - - - ТаблицаРегламентныеЗаданияВыполнитьНеВФоне - 279 - true - - true - - - ТаблицаРегламентныеЗаданияВыполнитьНеВФонеРасширеннаяПодсказка - 280 - Label - true - true - - Left - - - Form.Command.ВыполнитьНеВФоне - Normal - Auto - true - true - UserCmds - Auto - - - ТаблицаРегламентныеЗаданияОбновитьДанные - 146 - true - true - - true - - false - - ТаблицаРегламентныеЗаданияОбновитьДанныеExtendedTooltip - 185 - Label - true - true - - Left - - - Form.Command.ОбновитьРегламентныеЗадания - Normal - true - true - UserCmds - Auto - - - ТаблицаРегламентныеЗаданияИзменитьФорму - 244 - true - true - - true - - - ТаблицаРегламентныеЗаданияИзменитьФормуРасширеннаяПодсказка - 245 - Label - true - true - - Left - - - Form.StandardCommand.CustomizeForm - Normal - Auto - true - true - UserCmds - Auto - - - ТаблицаРегламентныеЗаданияСправка - 153 - true - true - - true - - false - - ТаблицаРегламентныеЗаданияСправкаExtendedTooltip - 194 - Label - true - true - - Left - - - Form.StandardCommand.Help - Normal - Auto - true - true - UserCmds - Auto - - - ТаблицаРегламентныеЗаданияПоказатьВсеЗадания - 275 - true - true - - true - - - ТаблицаРегламентныеЗаданияПоказатьВсеЗаданияРасширеннаяПодсказка - 276 - Label - true - true - - Left - - - Form.Command.ПоказатьВсеЗадания - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - Left - true - - - Selection - ТаблицаРегламентныеЗаданияВыбор - - - BeforeAddRow - ТаблицаРегламентныеЗаданияПередНачаломДобавления - - - BeforeDeleteRow - ТаблицаРегламентныеЗаданияПередУдалением - - - BeforeRowChange - ТаблицаРегламентныеЗаданияПередНачаломИзменения - - - ТаблицаРегламентныеЗаданияСтрокаПоиска - 246 - - ТаблицаРегламентныеЗаданияСтрокаПоискаРасширеннаяПодсказка - 248 - Label - true - true - - Left - - - - ТаблицаРегламентныеЗаданияСтрокаПоискаКонтекстноеМеню - 247 - true - - ТаблицаРегламентныеЗадания - - true - - - - ТаблицаРегламентныеЗаданияСостояниеПросмотра - 249 - - ТаблицаРегламентныеЗаданияСостояниеПросмотраРасширеннаяПодсказка - 251 - Label - true - true - - Left - - - - ТаблицаРегламентныеЗаданияСостояниеПросмотраКонтекстноеМеню - 250 - true - - ViewStatusAddition - ТаблицаРегламентныеЗадания - - true - - - - ТаблицаРегламентныеЗаданияУправлениеПоиском - 252 - - ТаблицаРегламентныеЗаданияУправлениеПоискомРасширеннаяПодсказка - 254 - Label - true - true - - Left - - - - ТаблицаРегламентныеЗаданияУправлениеПоискомКонтекстноеМеню - 253 - true - - SearchControlAddition - ТаблицаРегламентныеЗадания - - true - - - ТаблицаРегламентныеЗаданияExtendedTooltip - 195 + СтраницыОтложеннаяЗагрузкаРегламентныхЗаданийРасширеннаяПодсказка + 292 Label true true @@ -783,290 +1236,10 @@ Left - - ТаблицаРегламентныеЗаданияКонтекстноеМеню - 30 - - ТаблицаРегламентныеЗаданияКонтекстноеМенюВыполнитьНеВФоне - 277 - true - - true - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюВыполнитьНеВФонеРасширеннаяПодсказка - 278 - Label - true - true - - Left - - - Form.Command.ВыполнитьНеВФоне - Normal - Auto - true - true - UserCmds - Auto - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюОбновитьДанные - 165 - true - true - - true - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюОбновитьДанныеExtendedTooltip - 178 - Label - true - true - - Left - - - 0 - Normal - Auto - true - true - UserCmds - Auto - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюВключитьРегламентноеЗадание - 234 - true - true - - true - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюВключитьРегламентноеЗаданиеРасширеннаяПодсказка - 235 - Label - true - true - - Left - - - Form.Command.ВключитьРегламентноеЗадание - Normal - Auto - true - true - UserCmds - Auto - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюВыключитьРегламентноеЗадание - 236 - true - true - - true - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюВыключитьРегламентноеЗаданиеРасширеннаяПодсказка - 237 - Label - true - true - - Left - - - Form.Command.ВыключитьРегламентноеЗадание - Normal - Auto - true - true - UserCmds - Auto - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюВывестиСписок - 170 - true - true - - true - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюВывестиСписокExtendedTooltip - 179 - Label - true - true - - Left - - - Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.OutputList - Normal - Auto - true - true - UserCmds - Auto - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюКопироватьВБуферОбмена - 171 - true - true - - true - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюКопироватьВБуферОбменаExtendedTooltip - 180 - Label - true - true - - Left - - - Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.CopyToClipboard - Normal - Auto - true - true - UserCmds - Auto - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюДобавить - 166 - true - - true - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюДобавитьExtendedTooltip - 181 - Label - true - true - - Left - - - Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Add - Normal - Auto - true - true - UserCmds - Auto - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюСкопировать - 167 - true - - true - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюСкопироватьExtendedTooltip - 182 - Label - true - true - - Left - - - Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Copy - Normal - Auto - true - true - UserCmds - Auto - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюИзменить - 168 - true - - true - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюИзменитьExtendedTooltip - 183 - Label - true - true - - Left - - - Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Change - Normal - Auto - true - true - UserCmds - Auto - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюУдалить - 169 - true - - true - - - ТаблицаРегламентныеЗаданияКонтекстноеМенюУдалитьExtendedTooltip - 184 - Label - true - true - - Left - - - Form.Item.ТаблицаРегламентныеЗадания.StandardCommand.Delete - Normal - Auto - true - true - UserCmds - Auto - - true - - true - true - true - true - true - MultiRow -
      true
      - 1 - 1 - AutoUse - AutoUse - true - true - false - true - Auto - Auto - true - true - None - None - None - true - + Pages + + Auto +
      true true @@ -1134,7 +1307,6 @@ true Label - true true Left @@ -1299,7 +1471,7 @@
      <key>ru</key> - <value>По состоянию</value> + <value>Состояние</value> ПоСостояниюExtendedTooltip @@ -1351,7 +1523,6 @@ true Label - true true Left @@ -1536,12 +1707,6 @@ true - - ru - Укажите период для отбора информации о фоновых заданий - - 35 - false УстановкаПроизвольногоПериодаРасширеннаяПодсказка 216 @@ -1983,31 +2148,6 @@ ТаблицаФоновыеЗаданияКоманднаяПанель 67 - - ТаблицаФоновыеЗаданияОбновитьРегламентныеЗадания - 281 - true - true - - true - - - ТаблицаФоновыеЗаданияОбновитьРегламентныеЗаданияРасширеннаяПодсказка - 282 - Label - true - true - - Left - - - Form.Command.ОбновитьРегламентныеЗадания - Normal - true - true - UserCmds - Auto - ТаблицаФоновыеЗаданияОткрыть 121 @@ -2067,6 +2207,31 @@ UserCmds Auto + + ТаблицаФоновыеЗаданияОбновитьРегламентныеЗадания + 281 + true + true + + true + + + ТаблицаФоновыеЗаданияОбновитьРегламентныеЗаданияРасширеннаяПодсказка + 282 + Label + true + true + + Left + + + Form.Command.ОбновитьРегламентныеЗадания + Normal + true + true + UserCmds + Auto + ТаблицаФоновыеЗаданияСправка 154 @@ -2267,9 +2432,7 @@ 271 true - 7 true - 3 true @@ -2401,7 +2564,6 @@ OK Retry Yes - 87 DontBlock Use true @@ -2684,6 +2846,24 @@ true + + ДатаНачала + + <key>ru</key> + <value>Дата начала</value> + + 15 + + String + + + + true + + + true + + ТаблицаФоновыеЗадания @@ -3027,7 +3207,7 @@ ОтборПериодС <key>ru</key> - <value>С</value> + <value>с</value> 12 @@ -3048,7 +3228,7 @@ ОтборПериодПо <key>ru</key> - <value>По</value> + <value>по</value> 13 @@ -3270,6 +3450,59 @@ + + РезультатВыполнения + + <key>ru</key> + <value>Результат выполнения</value> + + 28 + + + true + + + true + + + + ТекущаяСтрока + + <key>ru</key> + <value>Текущая строка</value> + + 29 + + Number + + 10 + + + + true + + + true + + + + ИдентификаторТекущейСтроки + + <key>ru</key> + <value>Идентификатор текущей строки</value> + + 30 + + String + + + + true + + + true + + ОткрытьФоновоеЗадание @@ -3438,6 +3671,7 @@ <name>ОбновитьРегламентныеЗадания</name> </handler> </action> + <representation>TextPicture</representation> <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> diff --git a/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентныеИФоновыеЗадания/Module.bsl b/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентныеИФоновыеЗадания/Module.bsl index 6f0077577..73386cd20 100644 --- a/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентныеИФоновыеЗадания/Module.bsl +++ b/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/РегламентныеИФоновыеЗадания/Module.bsl @@ -36,6 +36,8 @@ ЗаполнитьНастройкиФормы(Новый Соответствие); КонецЕсли; + ЗагрузитьРегламентныеЗадания(); + КонецПроцедуры &НаКлиенте @@ -44,10 +46,14 @@ Если ИмяСобытия = "Запись_РегламентныеЗадания" Тогда Если ЗначениеЗаполнено(Параметр) Тогда - ОбновитьТаблицуРегламентныхЗаданий(Параметр); + ЗагрузитьРегламентныеЗадания(Параметр, Истина); Иначе ПодключитьОбработчикОжидания("ОтложенноеОбновлениеРегламентныхЗаданий", 0.1, Истина); КонецЕсли; + ИначеЕсли ИмяСобытия = "РазрешенаРаботаСВнешнимиРесурсами" Тогда + Элементы.ГруппаБлокировкаРаботыСВнешнимиРесурсами.Видимость = Ложь; + ИначеЕсли ИмяСобытия = "Запись_НаборКонстант" Тогда + ПодключитьОбработчикОжидания("ОтложенноеОбновлениеРегламентныхЗаданий", 0.1, Истина); КонецЕсли; КонецПроцедуры @@ -116,7 +122,9 @@ &НаКлиенте Процедура ПояснениеБлокировкаРаботыСВнешнимиРесурсамиОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; + Элементы.ГруппаБлокировкаРаботыСВнешнимиРесурсами.Видимость = Ложь; ПояснениеБлокировкаРаботыСВнешнимиРесурсамиОбработкаНавигационнойСсылкиНаСервере(); + Оповестить("РазрешенаРаботаСВнешнимиРесурсами"); КонецПроцедуры #КонецОбласти @@ -191,7 +199,7 @@ Если Элементы.Задания.ТекущаяСтраница = Элементы.ФоновыеЗадания Тогда ОбновитьТаблицуФоновыхЗаданийНаКлиенте(); Иначе - ОбновитьТаблицуРегламентныхЗаданий(); + ЗагрузитьРегламентныеЗадания(); КонецЕсли; КонецПроцедуры @@ -214,7 +222,6 @@ МассивСообщенийОбОшибках = Новый Массив; Для каждого ВыделеннаяСтрока Из ВыделенныеСтроки Цикл - ОбновитьВсе = (Индекс = ВыделенныеСтроки.Количество() - 1); ТекущиеДанные = ТаблицаРегламентныеЗадания.НайтиПоИдентификатору(ВыделеннаяСтрока); Если ТекущиеДанные.Параметризуемое И КоличествоВыделенныхЗаданий = 1 Тогда @@ -224,7 +231,7 @@ Продолжить; КонецЕсли; - ПараметрыВыполнения = ВыполнитьРегламентноеЗаданиеВручнуюНаСервере(ТекущиеДанные.Идентификатор, ОбновитьВсе); + ПараметрыВыполнения = ВыполнитьРегламентноеЗаданиеВручнуюНаСервере(ТекущиеДанные.Идентификатор); Если ПараметрыВыполнения.ЗапускВыполнен Тогда ПоказатьОповещениеПользователя( @@ -285,6 +292,8 @@ КонецЕсли; КонецЕсли; + ЗагрузитьРегламентныеЗадания(, Истина); + КонецПроцедуры &НаКлиенте @@ -335,6 +344,7 @@ ПоказатьПредупреждение(, НСтр("ru = 'Выберите фоновое задание.'")); Иначе ОтменитьФоновоеЗаданиеНаСервере(Элементы.ТаблицаФоновыеЗадания.ТекущиеДанные.Идентификатор); + ЗагрузитьРегламентныеЗадания(, Истина); ПоказатьПредупреждение(, НСтр("ru = 'Задание отменено, но состояние отмены будет @@ -441,6 +451,18 @@ // Элемент = УсловноеОформление.Элементы.Добавить(); + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ДатаНачала.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТаблицаРегламентныеЗадания.ДатаНачала"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = НСтр("ru = '<не определено>'"); + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + + // + Элемент = УсловноеОформление.Элементы.Добавить(); + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.Использование.Имя); ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); @@ -450,6 +472,8 @@ ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ДатаОкончания.Имя); ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ДатаНачала.Имя); + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ИмяПользователя.Имя); ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.Предопределенное.Имя); @@ -480,6 +504,18 @@ ЭлементОформления.Использование = Ложь; КонецЕсли; + ПозицияСкобки = СтрНайти(Элементы.РегламентныеЗадания.Заголовок, " ("); + Если ПозицияСкобки > 0 Тогда + Элементы.РегламентныеЗадания.Заголовок = Лев(Элементы.РегламентныеЗадания.Заголовок, ПозицияСкобки - 1); + КонецЕсли; + ЭлементовВСписке = ТаблицаРегламентныеЗадания.Количество(); + Если ЭлементовВСписке > 0 Тогда + Если Не Показывать Тогда + ЭлементовВСписке = ЭлементовВСписке - ОтключенныеЗадания.Количество(); + КонецЕсли; + Элементы.РегламентныеЗадания.Заголовок = Элементы.РегламентныеЗадания.Заголовок + " (" + Формат(ЭлементовВСписке, "ЧГ=") + ")"; + КонецЕсли; + КонецПроцедуры &НаКлиенте @@ -506,7 +542,7 @@ Если НовоеРасписание <> Неопределено Тогда УстановитьРасписание(ТекущиеДанные.Идентификатор, НовоеРасписание); - ОбновитьТаблицуРегламентныхЗаданий(ТекущиеДанные.Идентификатор); + ЗагрузитьРегламентныеЗадания(ТекущиеДанные.Идентификатор, Истина); КонецЕсли; КонецПроцедуры @@ -535,8 +571,6 @@ &НаСервере Процедура ЗаполнитьНастройкиФормы(Знач Настройки) - ОбновитьТаблицуРегламентныхЗаданий(); - НастройкиПоУмолчанию = Новый Структура; // Настройка отбора фоновых заданий. @@ -581,6 +615,7 @@ ЗаполнитьЗначенияСвойств(ЭтотОбъект, НастройкиПоУмолчанию); // Настройка видимости и доступности. + Элементы.УстановкаПроизвольногоПериода.Видимость = (ВидОтбораПоПериоду = 4); Элементы.ОтборПериодС.ТолькоПросмотр = НЕ (ВидОтбораПоПериоду = 4); Элементы.ОтборПериодПо.ТолькоПросмотр = НЕ (ВидОтбораПоПериоду = 4); Элементы.РегламентноеЗаданиеДляОтбора.Доступность = ОтбиратьПоРегламентномуЗаданию; @@ -667,8 +702,6 @@ УстановитьПривилегированныйРежим(Ложь); КонецЕсли; - ОбновитьТаблицуРегламентныхЗаданий(); - Возврат ОповещенияОбОкончанииВыполнения; КонецФункции @@ -695,8 +728,10 @@ ПодключитьОбработчикОжидания( "СообщитьОбОкончанииРучногоВыполненияРегламентногоЗадания", 2, Истина); + Иначе + ЗагрузитьРегламентныеЗадания(, Истина); КонецЕсли; - + КонецПроцедуры &НаСервере @@ -735,14 +770,9 @@ КонецПроцедуры &НаСервере -Функция ВыполнитьРегламентноеЗаданиеВручнуюНаСервере(Знач ИдентификаторРегламентногоЗадания, ОбновитьВсе = Ложь) - +Функция ВыполнитьРегламентноеЗаданиеВручнуюНаСервере(Знач ИдентификаторРегламентногоЗадания) + Результат = РегламентныеЗаданияСлужебный.ВыполнитьРегламентноеЗаданиеВручную(ИдентификаторРегламентногоЗадания); - Если ОбновитьВсе Тогда - ОбновитьТаблицуРегламентныхЗаданий(); - Иначе - ОбновитьТаблицуРегламентныхЗаданий(ИдентификаторРегламентногоЗадания); - КонецЕсли; Возврат Результат; КонецФункции @@ -752,7 +782,6 @@ РегламентныеЗаданияСлужебный.ОтменитьФоновоеЗадание(Идентификатор); - ОбновитьТаблицуРегламентныхЗаданий(); ОбновитьТаблицуФоновыхЗаданий(); КонецПроцедуры @@ -785,143 +814,10 @@ &НаКлиенте Процедура ОтложенноеОбновлениеРегламентныхЗаданий() - ОбновитьТаблицуРегламентныхЗаданий(); + ЗагрузитьРегламентныеЗадания(, Истина); КонецПроцедуры -&НаСервере -Процедура ОбновитьТаблицуРегламентныхЗаданий(ИдентификаторРегламентногоЗадания = Неопределено) - - // Обновление таблицы РегламентныеЗадания и списка СписокВыбора регламентного задания для отбора. - ТекущиеЗадания = РегламентныеЗадания.ПолучитьРегламентныеЗадания(); - Таблица = ТаблицаРегламентныеЗадания; - ОтключенныеЗадания.Очистить(); - - ПараметрыРегламентныхЗаданий = РегламентныеЗаданияСлужебный.РегламентныеЗаданияЗависимыеОтФункциональныхОпций(); - ПараметрыОтбора = Новый Структура; - ПараметризуемыеЗадания = Новый Массив; - ПараметрыОтбора.Вставить("Параметризуется", Истина); - РезультатПоиска = ПараметрыРегламентныхЗаданий.НайтиСтроки(ПараметрыОтбора); - Для Каждого СтрокаРезультата Из РезультатПоиска Цикл - ПараметризуемыеЗадания.Добавить(СтрокаРезультата.РегламентноеЗадание); - КонецЦикла; - - ЗаданияВМоделиСервиса = Новый Соответствие; - ПодсистемаРаботаВМоделиСервиса = Метаданные.Подсистемы.СтандартныеПодсистемы.Подсистемы.Найти("РаботаВМоделиСервиса"); - Для Каждого ОбъектМетаданных Из Метаданные.РегламентныеЗадания Цикл - Если Не РегламентныеЗаданияСлужебный.РегламентноеЗаданиеДоступноПоФункциональнымОпциям(ОбъектМетаданных, ПараметрыРегламентныхЗаданий) Тогда - ОтключенныеЗадания.Добавить(ОбъектМетаданных.Имя); - Продолжить; - КонецЕсли; - Если НЕ ОбщегоНазначенияПовтИсп.РазделениеВключено() И ПодсистемаРаботаВМоделиСервиса <> Неопределено Тогда - Если ПодсистемаРаботаВМоделиСервиса.Состав.Содержит(ОбъектМетаданных) Тогда - ЗаданияВМоделиСервиса.Вставить(ОбъектМетаданных.Имя, Истина); - Продолжить; - КонецЕсли; - Для каждого Подсистема Из ПодсистемаРаботаВМоделиСервиса.Подсистемы Цикл - Если Подсистема.Состав.Содержит(ОбъектМетаданных) Тогда - ЗаданияВМоделиСервиса.Вставить(ОбъектМетаданных.Имя, Истина); - Продолжить; - КонецЕсли; - КонецЦикла; - КонецЕсли; - КонецЦикла; - - Если ИдентификаторРегламентногоЗадания = Неопределено Тогда - - Индекс = 0; - Для каждого Задание Из ТекущиеЗадания Цикл - Если НЕ ОбщегоНазначенияПовтИсп.РазделениеВключено() - И ЗаданияВМоделиСервиса[Задание.Метаданные.Имя] <> Неопределено Тогда - - Продолжить; - КонецЕсли; - - Идентификатор = Строка(Задание.УникальныйИдентификатор); - - Если Индекс >= Таблица.Количество() - ИЛИ Таблица[Индекс].Идентификатор <> Идентификатор Тогда - - // Вставка нового задания. - Обновляемое = Таблица.Вставить(Индекс); - - // Установка уникального идентификатора. - Обновляемое.Идентификатор = Идентификатор; - Иначе - Обновляемое = Таблица[Индекс]; - КонецЕсли; - - Если ПараметризуемыеЗадания.Найти(Задание.Метаданные) <> Неопределено Тогда - Обновляемое.Параметризуемое = Истина; - КонецЕсли; - - ОбновитьСтрокуТаблицыРегламентныхЗаданий(Обновляемое, Задание); - Индекс = Индекс + 1; - КонецЦикла; - - // Удаление лишних строк. - Пока Индекс < Таблица.Количество() Цикл - Таблица.Удалить(Индекс); - КонецЦикла; - Иначе - Задание = РегламентныеЗадания.НайтиПоУникальномуИдентификатору( - Новый УникальныйИдентификатор(ИдентификаторРегламентногоЗадания)); - - Строки = Таблица.НайтиСтроки( - Новый Структура("Идентификатор", ИдентификаторРегламентногоЗадания)); - - Если Задание <> Неопределено - И Строки.Количество() > 0 Тогда - - СтрокаЗадание = Строки[0]; - Если ПараметризуемыеЗадания.Найти(Задание.Метаданные) <> Неопределено Тогда - СтрокаЗадание.Параметризуемое = Истина; - КонецЕсли; - ОбновитьСтрокуТаблицыРегламентныхЗаданий(СтрокаЗадание, Задание); - КонецЕсли; - КонецЕсли; - - Элементы.ТаблицаРегламентныеЗадания.Обновить(); - - ПозицияСкобки = СтрНайти(Элементы.РегламентныеЗадания.Заголовок, " ("); - Если ПозицияСкобки > 0 Тогда - Элементы.РегламентныеЗадания.Заголовок = Лев(Элементы.РегламентныеЗадания.Заголовок, ПозицияСкобки - 1); - КонецЕсли; - ЭлементовВСписке = ТаблицаРегламентныеЗадания.Количество(); - Если ЭлементовВСписке > 0 Тогда - Элементы.РегламентныеЗадания.Заголовок = Элементы.РегламентныеЗадания.Заголовок + " (" + Формат(ЭлементовВСписке, "ЧГ=") + ")"; - КонецЕсли; - - ОбновитьСписокВыбораРегламентногоЗадания(); - -КонецПроцедуры - -&НаСервере -Процедура ОбновитьСтрокуТаблицыРегламентныхЗаданий(Строка, Задание); - - ЗаполнитьЗначенияСвойств(Строка, Задание); - - // Уточнение наименования - Строка.Наименование = РегламентныеЗаданияСлужебный.ПредставлениеРегламентногоЗадания(Задание); - - // Установка Даты завершения и Состояния завершения по последней фоновой процедуре. - СвойстваПоследнегоФоновогоЗадания = РегламентныеЗаданияСлужебный - .ПолучитьСвойстваПоследнегоФоновогоЗаданияВыполненияРегламентногоЗадания(Задание); - - Строка.ИмяЗадания = Задание.Метаданные.Имя; - Если СвойстваПоследнегоФоновогоЗадания = Неопределено Тогда - - Строка.ДатаОкончания = ТекстНеОпределено; - Строка.СостояниеВыполнения = ТекстНеОпределено; - Иначе - Строка.ДатаОкончания = ?(ЗначениеЗаполнено(СвойстваПоследнегоФоновогоЗадания.Конец), - СвойстваПоследнегоФоновогоЗадания.Конец, - "<>"); - Строка.СостояниеВыполнения = СвойстваПоследнегоФоновогоЗадания.Состояние; - КонецЕсли; - -КонецПроцедуры - &НаКлиентеНаСервереБезКонтекста Процедура ОбновитьАвтоматическийПериод(Форма, ТекущаяДатаСеанса) @@ -955,6 +851,117 @@ КонецПроцедуры +&НаСервереБезКонтекста +Процедура ПояснениеБлокировкаРаботыСВнешнимиРесурсамиОбработкаНавигационнойСсылкиНаСервере() + РегламентныеЗаданияСервер.РазблокироватьРаботуСВнешнимиРесурсами(); +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Фоновая загрузка регламентных заданий. + +&НаКлиенте +Процедура ЗагрузитьРегламентныеЗадания(ИдентификаторЗадания = Неопределено, ОбновитьНезаметно = Ложь) + + Если Не ОбновитьНезаметно Тогда + Элементы.СтраницыОтложеннаяЗагрузкаРегламентныхЗаданий.ТекущаяСтраница = Элементы.СтраницаЗагрузкаРегламентныхЗаданий; + КонецЕсли; + Если Элементы.ТаблицаРегламентныеЗадания.ТекущиеДанные <> Неопределено Тогда + ИдентификаторТекущейСтроки = Элементы.ТаблицаРегламентныеЗадания.ТекущиеДанные.Идентификатор; + КонецЕсли; + Результат = ЗагрузкаРегламентныхЗаданий(ИдентификаторЗадания); + + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ОповещениеОЗавершении = Новый ОписаниеОповещения("ЗагрузитьРегламентныеЗаданияЗавершение", ЭтотОбъект); + + ДлительныеОперацииКлиент.ОжидатьЗавершение(Результат, ОповещениеОЗавершении, ПараметрыОжидания); + +КонецПроцедуры + +&НаКлиенте +Процедура ЗагрузитьРегламентныеЗаданияЗавершение(Результат, ДополнительныеПараметры) Экспорт + + Если Результат = Неопределено Тогда + Возврат; + КонецЕсли; + + Если Результат.Статус = "Выполнено" Тогда + ОбработатьРезультат(Результат); + Элементы.СтраницыОтложеннаяЗагрузкаРегламентныхЗаданий.ТекущаяСтраница = Элементы.СтраницаРегламентныеЗадания; + ИначеЕсли Результат.Статус = "Ошибка" Тогда + Элементы.СтраницыОтложеннаяЗагрузкаРегламентныхЗаданий.ТекущаяСтраница = Элементы.СтраницаРегламентныеЗадания; + ВызватьИсключение Результат.КраткоеПредставлениеОшибки; + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Функция ЗагрузкаРегламентныхЗаданий(ИдентификаторЗадания) + + Если РезультатВыполнения <> Неопределено + И РезультатВыполнения.ИдентификаторЗадания <> Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000000") Тогда + ДлительныеОперации.ОтменитьВыполнениеЗадания(РезультатВыполнения.ИдентификаторЗадания); + КонецЕсли; + + ПараметрыДлительнойОперации = ПараметрыДлительнойОперации(); + ПараметрыДлительнойОперации.Вставить("ИдентификаторРегламентногоЗадания", ИдентификаторЗадания); + + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.ОжидатьЗавершение = 0; // запускать сразу + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Формирование таблицы регламентных заданий'"); + + РезультатВыполнения = ДлительныеОперации.ВыполнитьВФоне("РегламентныеЗаданияСлужебный.ОбновленнаяТаблицаРегламентныхЗаданий", + ПараметрыДлительнойОперации, ПараметрыВыполнения); + + Возврат РезультатВыполнения; + +КонецФункции + +&НаСервере +Функция ПараметрыДлительнойОперации() + + ПараметрыОперации = Новый Структура; + ПараметрыОперации.Вставить("Таблица", РеквизитФормыВЗначение("ТаблицаРегламентныеЗадания")); + ПараметрыОперации.Вставить("ОтключенныеЗадания", ОтключенныеЗадания); + + Возврат ПараметрыОперации; + +КонецФункции + +&НаСервере +Процедура ОбработатьРезультат(ПараметрыЗадания) + + Результат = ПолучитьИзВременногоХранилища(ПараметрыЗадания.АдресРезультата); + ОтключенныеЗадания = Результат.ОтключенныеЗадания; + ЗначениеВРеквизитФормы(Результат.Таблица, "ТаблицаРегламентныеЗадания"); + + Элементы.ТаблицаРегламентныеЗадания.Обновить(); + + // Позиционирование списка регламентных заданий. + Если ЗначениеЗаполнено(ИдентификаторТекущейСтроки) Тогда + РезультатПоиска = ТаблицаРегламентныеЗадания.НайтиСтроки(Новый Структура("Идентификатор", ИдентификаторТекущейСтроки)); + Если РезультатПоиска.Количество() = 1 Тогда + Строка = РезультатПоиска[0]; + Элементы.ТаблицаРегламентныеЗадания.ТекущаяСтрока = Строка.ПолучитьИдентификатор(); + КонецЕсли; + КонецЕсли; + + ПозицияСкобки = СтрНайти(Элементы.РегламентныеЗадания.Заголовок, " ("); + Если ПозицияСкобки > 0 Тогда + Элементы.РегламентныеЗадания.Заголовок = Лев(Элементы.РегламентныеЗадания.Заголовок, ПозицияСкобки - 1); + КонецЕсли; + ЭлементовВСписке = ТаблицаРегламентныеЗадания.Количество(); + Если ЭлементовВСписке > 0 Тогда + Если Не Элементы.ТаблицаРегламентныеЗаданияПоказатьВсеЗадания.Пометка Тогда + ЭлементовВСписке = ЭлементовВСписке - ОтключенныеЗадания.Количество(); + КонецЕсли; + Элементы.РегламентныеЗадания.Заголовок = Элементы.РегламентныеЗадания.Заголовок + " (" + Формат(ЭлементовВСписке, "ЧГ=") + ")"; + КонецЕсли; + + ОбновитьСписокВыбораРегламентногоЗадания(); + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Фоновая загрузка фоновых заданий. @@ -984,6 +991,7 @@ ПередаваемыеПараметры.Вставить("Отбор", Отбор); ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.ЗапуститьНеВФоне = Истина; ПараметрыВыполнения.ОжидатьЗавершение = 0; ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Регламентные задания. Обновление списка фоновых заданий'"); @@ -1063,7 +1071,7 @@ ТекущаяТаблица = ДанныеИзХранилища.ТаблицаСвойств; Иначе Отбор = ОтборФоновыхЗаданий(); - ТекущаяТаблица = РегламентныеЗаданияСлужебный.ПолучитьТаблицуСвойствФоновыхЗаданий(Отбор); + ТекущаяТаблица = РегламентныеЗаданияСлужебный.СвойстваФоновыхЗаданий(Отбор); КонецЕсли; Таблица = ТаблицаФоновыеЗадания; @@ -1145,10 +1153,4 @@ КонецПроцедуры -&НаСервере -Процедура ПояснениеБлокировкаРаботыСВнешнимиРесурсамиОбработкаНавигационнойСсылкиНаСервере() - Элементы.ГруппаБлокировкаРаботыСВнешнимиРесурсами.Видимость = Ложь; - РегламентныеЗаданияСервер.РазблокироватьРаботуСВнешнимиРесурсами(); -КонецПроцедуры - #КонецОбласти diff --git a/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/ФоновоеЗадание/Form.form b/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/ФоновоеЗадание/Form.form index 5106602b6..e2d2aebd9 100644 --- a/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/ФоновоеЗадание/Form.form +++ b/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/ФоновоеЗадание/Form.form @@ -233,7 +233,6 @@ <behavior>Auto</behavior> <showLeftMargin>true</showLeftMargin> <united>true</united> - <showTitle>auto</showTitle> <throughAlign>Auto</throughAlign> <currentRowUse>Auto</currentRowUse> </extInfo> @@ -387,7 +386,6 @@ <behavior>Auto</behavior> <showLeftMargin>true</showLeftMargin> <united>true</united> - <showTitle>auto</showTitle> <throughAlign>Auto</throughAlign> <currentRowUse>Auto</currentRowUse> </extInfo> @@ -505,7 +503,6 @@ <behavior>Auto</behavior> <showLeftMargin>true</showLeftMargin> <united>true</united> - <showTitle>auto</showTitle> <throughAlign>Auto</throughAlign> <currentRowUse>Auto</currentRowUse> </extInfo> @@ -516,6 +513,10 @@ <items xsi:type="form:FormField"> <name>СообщенияИОписаниеИнформацииОбОшибке</name> <id>26</id> + <title> + <key>ru</key> + <value>Сообщение</value> + true true @@ -524,7 +525,11 @@ СообщенияПользователюИОписаниеИнформацииОбОшибке - None + Left + + ru + Сообщения пользователю и описание информации об ошибке + СообщенияИОписаниеИнформацииОбОшибкеExtendedTooltip 45 @@ -549,10 +554,10 @@ true true - true true true true + true true true true @@ -564,10 +569,6 @@ true - - <key>ru</key> - <value>4. Сообщения пользователю и описание информации об ошибке</value> - СообщенияПользователюИОписаниеИнформацииОбОшибкеExtendedTooltip 44 @@ -584,7 +585,6 @@ Auto true true - auto Auto Auto @@ -635,7 +635,6 @@ Retry SaveValues Yes - 49 LockOwner true true diff --git a/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/ФоновоеЗадание/Help/ru.html b/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/ФоновоеЗадание/Help/ru.html index 8eb3c04f9..765397adc 100644 --- a/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/ФоновоеЗадание/Help/ru.html +++ b/SSL/src/DataProcessors/РегламентныеИФоновыеЗадания/Forms/ФоновоеЗадание/Help/ru.html @@ -1,18 +1,14 @@

      Описание свойств фонового задания.

      -

      Основное

      • Наименование - копия поля Наименование регламентного задания. При применении кнопки Выполнить сейчас на командной панели регламентного задания, наименованию фонового задания присваивается значение "Запуск вручную: <Представление регламентного задания>".
      • Состояние - возможны значения: "Задание выполнено", "Задание завершено с ошибками", "Задание отменено пользователем", "Задание выполняется".
      • Дата начала - дата и время начала выполнения фонового задания.
      • Дата окончания - дата и время окончания выполнения фонового задания (если задание еще выполняется, тогда пустая дата и время: <>). -
      • Место выполнения - имя компьютера сети без домена, на котором выполнялось фоновое задание. Это либо имя сервера, либо имя компьютера пользователя, если регламентные задания обрабатывались в файловой информационной базе.

      Дополнительно

      -
      • Идентификатор - нужен только для продвинутого администратора, знающего внутренний язык 1С. Требуется для исследования нестандартных проблем в работе фоновых заданий, если таковые есть. +
      • Место выполнения - имя компьютера сети без домена, на котором выполнялось фоновое задание. Это либо имя сервера, либо имя компьютера пользователя, если регламентные задания обрабатывались в файловой информационной базе.
      • Идентификатор - нужен только для продвинутого администратора, знающего внутренний язык 1С. Требуется для исследования нестандартных проблем в работе фоновых заданий, если таковые есть.
      • Ключ - значение поля Ключ, указанного в регламентном задании (на момент создания фонового задания) или другое, указанное явно, если фоновое задание создано программно, а не планировщиком сервера. -
      • Имя метода метаданных - имя процедуры в конфигурации, которая выполняется или выполнялась в фоновом задании. Обычно соответствует значению поля Имя метода соответствующего регламентного задания.

      Регламентное задание

      -
      • Наименование - выбирается одно из значений полей (по порядку поиска заполненного): +
      • Имя метода метаданных - имя процедуры в конфигурации, которая выполняется или выполнялась в фоновом задании. Обычно соответствует значению поля Имя метода соответствующего регламентного задания.
      • Наименование - выбирается одно из значений полей (по порядку поиска заполненного):
        • Наименование;
        • Синоним; -
        • Имя.
      • Идентификатор - идентификатор регламентного задания, соответствующий фоновому заданию.

      Сообщения пользователю и описание информации об ошибке

      -
      • Поле содержит текст сообщений и текст сведений об ошибке, если сообщения и/или ошибки произошли при выполнении фонового задания.

      См. также:

      +
    • Имя.
    • Идентификатор - идентификатор регламентного задания, соответствующий фоновому заданию.
      • Сообщение - поле содержит текст сообщений и текст сведений об ошибке, если ошибки произошли при выполнении фонового задания.

      См. также:

      \ No newline at end of file diff --git a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/ВосстановлениеДанныхИзРезервнойКопии/Form.form b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/ВосстановлениеДанныхИзРезервнойКопии/Form.form index 49231dd96..1e820fe58 100644 --- a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/ВосстановлениеДанныхИзРезервнойКопии/Form.form +++ b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/ВосстановлениеДанныхИзРезервнойКопии/Form.form @@ -52,7 +52,6 @@ StartChoice ПутьККаталогуАрхивовНачалоВыбора - true true true true @@ -274,9 +273,7 @@ 15 true - 5 true - 2 true @@ -349,7 +346,6 @@ true Label - true true false @@ -384,7 +380,6 @@ true Label - true true false @@ -484,9 +479,7 @@ 53 true - 6 true - 2 true false @@ -613,7 +606,6 @@ true Label - true true false @@ -622,7 +614,6 @@ НадписьОбновитьВерсиюКомпонентыОбработкаНавигационнойСсылки Left - 2
      true @@ -793,10 +784,7 @@ true Label - true - 2 true - true Style.TextFont true @@ -869,9 +857,7 @@ 38 true - 7 true - 4 true @@ -944,7 +930,6 @@ true Label - true 2 true @@ -983,7 +968,6 @@ true Label - true true @@ -997,6 +981,10 @@ КоличествоАктивныхПользователей 42 + + <key>ru</key> + <value><Количество></value> + true true @@ -1214,7 +1202,6 @@ true Label - true 2 true @@ -1279,9 +1266,7 @@ 181 true - 4 true - 2 true @@ -1320,7 +1305,6 @@ true Label - true true Left @@ -1433,9 +1417,11 @@ Auto - - КоманднаяПанель - 148 + Bottom + true + + ФормаКоманднаяПанель + -1 Готово 23 @@ -1521,31 +1507,6 @@ UserCmds Auto - true - true - - true - - - КоманднаяПанельРасширеннаяПодсказка - 149 - Label - true - true - - Left - - - CommandBar - - Right - - - Bottom - true - - ФормаКоманднаяПанель - -1 Right diff --git a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/ВосстановлениеДанныхИзРезервнойКопии/Module.bsl b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/ВосстановлениеДанныхИзРезервнойКопии/Module.bsl index 57c007a83..c3e718f24 100644 --- a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/ВосстановлениеДанныхИзРезервнойКопии/Module.bsl +++ b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/ВосстановлениеДанныхИзРезервнойКопии/Module.bsl @@ -8,7 +8,7 @@ Возврат; КонецЕсли; - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда Возврат; // Отказ устанавливается в ПриОткрытии(). КонецЕсли; @@ -44,9 +44,9 @@ &НаКлиенте Процедура ПриОткрытии(Отказ) - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда Отказ = Истина; - ТекстСообщения = НСтр("ru = 'Резервное копирование недоступно в клиенте под управлением ОС Linux.'"); + ТекстСообщения = НСтр("ru = 'Резервное копирование доступно только в клиенте под управлением ОС Windows.'"); ПоказатьПредупреждение(,ТекстСообщения); Возврат; КонецЕсли; @@ -58,21 +58,25 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) ТекущаяСтраница = Элементы.СтраницыЗагрузкиДанных.ТекущаяСтраница; - Если ТекущаяСтраница = Элементы.СтраницыЗагрузкиДанных.ПодчиненныеЭлементы.СтраницаИнформацииИВыполненияРезервногоКопирования Тогда - - ТекстПредупреждения = НСтр("ru = 'Прервать подготовку к восстановлению данных?'"); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(ЭтотОбъект, - Отказ, ТекстПредупреждения, "ЗакрытьФормуБезусловно"); - + Если ТекущаяСтраница <> Элементы.СтраницыЗагрузкиДанных.ПодчиненныеЭлементы.СтраницаИнформацииИВыполненияРезервногоКопирования Тогда + Возврат; КонецЕсли; + + ТекстПредупреждения = НСтр("ru = 'Прервать подготовку к восстановлению данных?'"); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(ЭтотОбъект, + Отказ, ЗавершениеРаботы, ТекстПредупреждения, "ЗакрытьФормуБезусловно"); КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ОтключитьОбработчикОжидания("ИстечениеВремениОжидания"); ОтключитьОбработчикОжидания("ПроверкаНаЕдинственностьПодключения"); @@ -219,7 +223,8 @@ РеквизитыЗаполнены = Ложь; КонецЕсли; - ИмяФайла = Объект.ФайлЗагрузкиРезервнойКопии; + Объект.ФайлЗагрузкиРезервнойКопии = СокрЛП(Объект.ФайлЗагрузкиРезервнойКопии); + ИмяФайла = СокрЛП(Объект.ФайлЗагрузкиРезервнойКопии); Если ПустаяСтрока(ИмяФайла) Тогда ТекстСообщения = НСтр("ru = 'Не выбран файл с резервной копией.'"); @@ -315,12 +320,15 @@ ПараметрыПриложения.Вставить("СтандартныеПодсистемы.ПропуститьПредупреждениеПередЗавершениемРаботыСистемы", Истина); - ЗавершитьРаботуСистемы(Ложь); + ПутьКПрограммеЗапуска = СтандартныеПодсистемыКлиент.ПапкаСистемныхПриложений() + "mshta.exe"; - СтрокаЗапуска = "cmd /c """"%1"""" [p1]%2[/p1]"; - СтрокаЗапуска = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаЗапуска, ИмяГлавногоФайлаСкрипта, РезервноеКопированиеИБКлиент.СтрокаUnicode(ПарольАдминистратораИБ)); - Оболочка = Новый COMОбъект("Wscript.Shell"); - Оболочка.Run(СтрокаЗапуска, 0); + СтрокаЗапуска = """%1"" ""%2"" [p1]%3[/p1]"; + СтрокаЗапуска = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаЗапуска, + ПутьКПрограммеЗапуска, ИмяГлавногоФайлаСкрипта, РезервноеКопированиеИБКлиент.СтрокаUnicode(ПарольАдминистратораИБ)); + + ЗапуститьПриложение(СтрокаЗапуска); + + ЗавершитьРаботуСистемы(Ложь); КонецПроцедуры @@ -375,6 +383,11 @@ ФайлСкрипта.УстановитьТекст(ТекстыМакетов[2]); ФайлСкрипта.Записать(ИмяГлавногоФайлаСкрипта, КодировкаТекста.UTF16); + ФайлЛога = Новый ТекстовыйДокумент; + ФайлЛога.Вывод = ИспользованиеВывода.Разрешить; + ФайлЛога.УстановитьТекст(СтандартныеПодсистемыКлиент.ИнформацияДляПоддержки()); + ФайлЛога.Записать(ПараметрыКопирования.КаталогВременныхФайловОбновления + "templog.txt", КодировкаТекста.Системная); + Возврат ИмяГлавногоФайлаСкрипта; КонецФункции diff --git a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/РезервноеКопированиеДанных/Form.form b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/РезервноеКопированиеДанных/Form.form index 18c80d26b..f5096b969 100644 --- a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/РезервноеКопированиеДанных/Form.form +++ b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/РезервноеКопированиеДанных/Form.form @@ -38,7 +38,6 @@ true Label - true 1 true @@ -89,7 +88,6 @@ StartChoice ПутьККаталогуАрхивовНачалоВыбора - true true true true @@ -127,7 +125,6 @@ true Label - true true Style.ПоясняющийТекст @@ -343,9 +340,7 @@ 36 true - 6 true - 2 true @@ -385,7 +380,6 @@ true Label - true true false @@ -421,7 +415,6 @@ true Label - true true false @@ -514,9 +507,7 @@ 222 true - 6 true - 2 true false @@ -639,7 +630,6 @@ true Label - true true false @@ -784,7 +774,6 @@ Label true true - true Style.TextFont true @@ -794,7 +783,6 @@ Left - 2 true @@ -861,9 +849,7 @@ 84 true - 7 true - 3 true @@ -905,57 +891,21 @@ - ГруппаОжидание - 373 + Группа2 + 435 - СтраницаОжиданияАктивныхПользователей - 85 - - НадписьОтключениеПользователей - 190 - - <key>ru</key> - <value>Производится отключение сеансов других пользователей, -работающих в программе...</value> - - true - true - - true - - - НадписьОтключениеПользователейExtendedTooltip - 340 - Label - true - true - - Left - - - - НадписьОтключениеПользователейКонтекстноеМеню - 191 - true - - Label - true - 2 - true - - Left - Bottom - - + ГруппаОжидание + 373 - ГруппаОжиданияАктивныхПользователей - 375 + СтраницаОжиданияАктивныхПользователей + 85 - СписокПользователей - 91 + НадписьОтключениеПользователей + 190 <key>ru</key> - <value>Активные сеансы:</value> + <value>Производится отключение сеансов других пользователей, +работающих в программе...</value> true true @@ -963,8 +913,8 @@ true
      - СписокПользователейExtendedTooltip - 338 + НадписьОтключениеПользователейExtendedTooltip + 340 Label true true @@ -973,34 +923,167 @@ - СписокПользователейКонтекстноеМеню - 92 + НадписьОтключениеПользователейКонтекстноеМеню + 191 true Label + 2 + true + + Left + Bottom + + + + ГруппаОжиданияАктивныхПользователей + 375 + + СписокПользователей + 91 + + <key>ru</key> + <value>Активные сеансы:</value> + + true + true + + true + + + СписокПользователейExtendedTooltip + 338 + Label + true + true + + Left + + + + СписокПользователейКонтекстноеМеню + 92 + true + + Label + true + + + Click + СписокПользователейНажатие + + true + Left + Center + + + + КоличествоАктивныхПользователей + 89 + + <key>ru</key> + <value><Количество></value> + + true + true + + true + + + КоличествоАктивныхПользователейExtendedTooltip + 339 + Label + true + true + + Left + + + + КоличествоАктивныхПользователейКонтекстноеМеню + 90 + true + + Label + true + true + + Left + Center + + + true + true + + true + + + <key>ru</key> + <value>Группа ожидания активных пользователей</value> + + + ГруппаОжиданияАктивныхПользователейРасширеннаяПодсказка + 376 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Страница ожидания активных пользователей</value> + + + СтраницаОжиданияАктивныхПользователейРасширеннаяПодсказка + 337 + Label true true - - Click - СписокПользователейНажатие - - true Left - Center - + + Page + + Vertical + auto + false + + + + СтраницаОжиданияВремениЗапуска + 377 - КоличествоАктивныхПользователей - 89 + НадписьВремяОжиданияРезервногоКопирования + 117 + + <key>ru</key> + <value>Резервное копирование начнется в запланированное время <дата время>...</value> + true true true - КоличествоАктивныхПользователейExtendedTooltip - 339 + НадписьВремяОжиданияРезервногоКопированияExtendedTooltip + 341 Label true true @@ -1009,12 +1092,12 @@ - КоличествоАктивныхПользователейКонтекстноеМеню - 90 + НадписьВремяОжиданияРезервногоКопированияКонтекстноеМеню + 118 true Label - true + 3 true Left @@ -1028,11 +1111,11 @@
      <key>ru</key> - <value>Группа ожидания активных пользователей</value> + <value>Страница ожидания времени запуска</value> - ГруппаОжиданияАктивныхПользователейРасширеннаяПодсказка - 376 + СтраницаОжиданияВремениЗапускаРасширеннаяПодсказка + 378 Label true true @@ -1040,13 +1123,10 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + Page + + Vertical + false true @@ -1056,11 +1136,11 @@ <key>ru</key> - <value>Страница ожидания активных пользователей</value> + <value>Группа ожидание</value> - СтраницаОжиданияАктивныхПользователейРасширеннаяПодсказка - 337 + ГруппаОжиданиеРасширеннаяПодсказка + 374 Label true true @@ -1068,64 +1148,28 @@ Left - Page - - Vertical - auto - false + Pages + + Auto - - СтраницаОжиданияВремениЗапуска - 377 - - НадписьВремяОжиданияРезервногоКопирования - 117 - - <key>ru</key> - <value>Резервное копирование начнется в запланированное время <дата время>...</value> - - true - true - - true - - - НадписьВремяОжиданияРезервногоКопированияExtendedTooltip - 341 - Label - true - true - - Left - - - - НадписьВремяОжиданияРезервногоКопированияКонтекстноеМеню - 118 - true - - Label - true - 4 - true - - Left - Center - - + + ДекорацияАктивныеСеансы + 430 + + <key>ru</key> + <value>Имеются активные сеансы работы с программой, +которые не могут быть завершены принудительно: +<Сеансы></value> + true true true - - <key>ru</key> - <value>Страница ожидания времени запуска</value> - - СтраницаОжиданияВремениЗапускаРасширеннаяПодсказка - 378 + ДекорацияАктивныеСеансыРасширеннаяПодсказка + 432 Label true true @@ -1133,10 +1177,15 @@ Left - Page - - Vertical - false + + ДекорацияАктивныеСеансыКонтекстноеМеню + 431 + true + + Label + true + + Left true @@ -1144,13 +1193,9 @@ true - - <key>ru</key> - <value>Группа ожидание</value> - - ГруппаОжиданиеРасширеннаяПодсказка - 374 + Группа2РасширеннаяПодсказка + 436 Label true true @@ -1158,8 +1203,13 @@ Left - Pages - + UsualGroup + + Vertical + Auto + true + true + Auto Auto @@ -1190,70 +1240,6 @@ ГруппаАктивныеСеансы 420 - - Декорация4 - 427 - true - true - - true - - - Декорация4РасширеннаяПодсказка - 429 - Label - true - true - - Left - - - - Декорация4КонтекстноеМеню - 428 - true - - 7 - true - 2 - true - - - - ДекорацияАктивныеСеансы - 430 - - <key>ru</key> - <value>Имеются активные сеансы работы с программой, -которые не могут быть завершены принудительно:</value> - - true - true - - true - - - ДекорацияАктивныеСеансыРасширеннаяПодсказка - 432 - Label - true - true - - Left - - - - ДекорацияАктивныеСеансыКонтекстноеМеню - 431 - true - - Label - true - true - - Left - - true true @@ -1380,7 +1366,6 @@ true Label - true 2 true @@ -1437,7 +1422,6 @@ Opening ИмяФайлаРезервнойКопииОткрытие - true true true true @@ -1476,7 +1460,6 @@ true Label - true true Style.ПоясняющийТекст @@ -1544,9 +1527,7 @@ 416 true - 2 true - 2 true @@ -1560,7 +1541,7 @@ <key>ru</key> <value>Для надежной защиты от потери данных рекомендуется -<link Настроить>настроить автоматическое резервное копирование</>.</value> +<link e1cib/app/Обработка.НастройкаРезервногоКопированияИБ/>настроить автоматическое резервное копирование</>.</value> true true @@ -1584,13 +1565,8 @@ true Label - true true - - URLProcessing - ДекорацияАвтоматическоеРезервноеКопированиеОбработкаНавигационнойСсылки - Left Center @@ -1684,7 +1660,6 @@ true Label - true 2 true @@ -1749,9 +1724,7 @@ 112 true - 4 true - 2 true @@ -1792,7 +1765,6 @@ true Label - true true Left @@ -2284,6 +2256,13 @@ + + КаталогПрограммы + + String + + + diff --git a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/РезервноеКопированиеДанных/Module.bsl b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/РезервноеКопированиеДанных/Module.bsl index ed34e8c58..3e0ab791b 100644 --- a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/РезервноеКопированиеДанных/Module.bsl +++ b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Forms/РезервноеКопированиеДанных/Module.bsl @@ -14,7 +14,7 @@ Возврат; КонецЕсли; - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда Возврат; // Отказ устанавливается в ПриОткрытии(). КонецЕсли; @@ -97,9 +97,9 @@ &НаКлиенте Процедура ПриОткрытии(Отказ) - Если ОбщегоНазначенияКлиентСервер.ЭтоLinuxКлиент() Тогда + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда Отказ = Истина; - ТекстСообщения = НСтр("ru = 'Резервное копирование недоступно в клиенте под управлением ОС Linux.'"); + ТекстСообщения = НСтр("ru = 'Резервное копирование доступно только в клиенте под управлением ОС Windows.'"); ПоказатьПредупреждение(,ТекстСообщения); Возврат; КонецЕсли; @@ -110,24 +110,34 @@ Элементы.НадписьОбновитьВерсиюКомпоненты.Видимость = Ложь; #КонецЕсли -КонецПроцедуры - -&НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) - - ТекущаяСтраница = Элементы.СтраницыПомощника.ТекущаяСтраница; - Если ТекущаяСтраница = Элементы.СтраницыПомощника.ПодчиненныеЭлементы.СтраницаИнформацииИВыполненияРезервногоКопирования Тогда - - ТекстПредупреждения = НСтр("ru = 'Прервать подготовку к резервному копированию данных?'"); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(ЭтотОбъект, - Отказ, ТекстПредупреждения, "ЗакрытьФормуБезусловно"); - + Если Параметры.РежимРаботы = "УспешноВыполнено" + И ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ОблачныйАрхив") Тогда + МодульОблачныйАрхивКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОблачныйАрхивКлиент"); + МодульОблачныйАрхивКлиент.ВыгрузитьФайлВОблако(ЭтотОбъект.ИмяФайлаРезервнойКопии, 10); КонецЕсли; КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) + + ТекущаяСтраница = Элементы.СтраницыПомощника.ТекущаяСтраница; + Если ТекущаяСтраница <> Элементы.СтраницыПомощника.ПодчиненныеЭлементы.СтраницаИнформацииИВыполненияРезервногоКопирования Тогда + Возврат; + КонецЕсли; + + ТекстПредупреждения = НСтр("ru = 'Прервать подготовку к резервному копированию данных?'"); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы(ЭтотОбъект, + Отказ, ЗавершениеРаботы, ТекстПредупреждения, "ЗакрытьФормуБезусловно"); + +КонецПроцедуры + +&НаКлиенте +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ОтключитьОбработчикОжидания("ИстечениеВремениОжидания"); ОтключитьОбработчикОжидания("ПроверкаНаЕдинственностьПодключения"); @@ -161,8 +171,7 @@ &НаКлиенте Процедура СписокПользователейНажатие(Элемент) - ПараметрыФормы = Новый Структура("ОшибкаУстановкиМонопольногоРежима"); - СтандартныеПодсистемыКлиент.ОткрытьСписокАктивныхПользователей(ПараметрыФормы, ЭтотОбъект); + СтандартныеПодсистемыКлиент.ОткрытьСписокАктивныхПользователей(, ЭтотОбъект); КонецПроцедуры @@ -184,14 +193,6 @@ КонецПроцедуры -&НаКлиенте -Процедура ДекорацияАвтоматическоеРезервноеКопированиеОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка) - - СтандартнаяОбработка = Ложь; - ОткрытьФорму(РезервноеКопированиеИБКлиент.ИмяФормыНастроекРезервногоКопирования()); - -КонецПроцедуры - #КонецОбласти #Область ОбработчикиКомандФормы @@ -366,6 +367,8 @@ РеквизитыЗаполнены = Истина; + Объект.КаталогСРезервнымиКопиями = СокрЛП(Объект.КаталогСРезервнымиКопиями); + Если ПустаяСтрока(Объект.КаталогСРезервнымиКопиями) Тогда ТекстСообщения = НСтр("ru = 'Не выбран каталог для резервной копии.'"); @@ -540,12 +543,15 @@ ПараметрыПриложения.Вставить("СтандартныеПодсистемы.ПропуститьПредупреждениеПередЗавершениемРаботыСистемы", Истина); - ЗавершитьРаботуСистемы(Ложь); + ПутьКПрограммеЗапуска = СтандартныеПодсистемыКлиент.ПапкаСистемныхПриложений() + "mshta.exe"; - СтрокаЗапуска = "cmd /c """"%1"""" [p1]%2[/p1]"; - СтрокаЗапуска = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаЗапуска, ИмяГлавногоФайлаСкрипта, РезервноеКопированиеИБКлиент.СтрокаUnicode(ПарольАдминистратораИБ)); - Оболочка = Новый COMОбъект("Wscript.Shell"); - Оболочка.Run(СтрокаЗапуска, 0); + СтрокаЗапуска = """%1"" ""%2"" [p1]%3[/p1]"; + СтрокаЗапуска = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СтрокаЗапуска, + ПутьКПрограммеЗапуска, ИмяГлавногоФайлаСкрипта, РезервноеКопированиеИБКлиент.СтрокаUnicode(ПарольАдминистратораИБ)); + + ЗапуститьПриложение(СтрокаЗапуска); + + ЗавершитьРаботуСистемы(Ложь); КонецПроцедуры @@ -610,6 +616,11 @@ ФайлСкрипта.УстановитьТекст(ТекстыМакетов[2]); ФайлСкрипта.Записать(ИмяГлавногоФайлаСкрипта, КодировкаТекста.UTF16); + ФайлЛога = Новый ТекстовыйДокумент; + ФайлЛога.Вывод = ИспользованиеВывода.Разрешить; + ФайлЛога.УстановитьТекст(СтандартныеПодсистемыКлиент.ИнформацияДляПоддержки()); + ФайлЛога.Записать(ПараметрыРезервногоКопирования.КаталогВременныхФайловОбновления + "templog.txt", КодировкаТекста.Системная); + Возврат ИмяГлавногоФайлаСкрипта; КонецФункции diff --git a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/ЗаставкаВосстановления/Template.txt b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/ЗаставкаВосстановления/Template.txt index aa9d98dd8..6e3be8c8d 100644 --- a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/ЗаставкаВосстановления/Template.txt +++ b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/ЗаставкаВосстановления/Template.txt @@ -78,7 +78,7 @@ return ret; } - // Выпонить процедуру восстановления данных + // Выполнить процедуру восстановления данных function main() { if (finish) return; @@ -128,6 +128,7 @@ oFileSystemObject.DeleteFile(thisFileDir + '\\progress.gif'); oFileSystemObject.DeleteFile(thisFileDir + '\\splash.hta'); oFileSystemObject.DeleteFile(TempCatalog + '\\1Cv8.1CD'); + oFileSystemObject.DeleteFile(thisFileDir + '\\templog.txt'); } catch (e) { } } diff --git a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/ЗаставкаРезервногоКопирования/Template.txt b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/ЗаставкаРезервногоКопирования/Template.txt index 70473ab7f..44ca6a3a6 100644 --- a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/ЗаставкаРезервногоКопирования/Template.txt +++ b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/ЗаставкаРезервногоКопирования/Template.txt @@ -46,7 +46,7 @@ ret = initialize(); break; case 2: - setProgress("Cоздание резервной копии информационной базы"); + setProgress("Создание резервной копии информационной базы"); break; case 3: ret = backupDB(); @@ -79,7 +79,7 @@ return ret; } - // Выпонить процедуру резервного копирования + // Выполнить процедуру резервного копирования function main() { if (finish) return; @@ -128,6 +128,7 @@ oFileSystemObject.DeleteFile(thisFileDir + '\\splash.ico'); oFileSystemObject.DeleteFile(thisFileDir + '\\progress.gif'); oFileSystemObject.DeleteFile(thisFileDir + '\\splash.hta'); + oFileSystemObject.DeleteFile(thisFileDir + '\\templog.txt'); } catch (e) { } } diff --git a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/МакетФайлаЗагрузкаИБ/Template.txt b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/МакетФайлаЗагрузкаИБ/Template.txt index 80f160b32..80d7796e3 100644 --- a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/МакетФайлаЗагрузкаИБ/Template.txt +++ b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/МакетФайлаЗагрузкаИБ/Template.txt @@ -197,6 +197,7 @@ function log1CInternal(connection, text, failed) function initialize() { clearLogFile(); + appendLog(); log(format("Файл скрипта: {0}", thisFileName)); return 0; } @@ -223,26 +224,40 @@ function finalize(success) } -function createConnection() +function createConnection() { if (!useComConnector) - return null; - - if (!ComConnection == null) - return ComConnection; - - try - { + return null; + + if (ComConnection != null) + return ComConnection; + + + try { + log("Начат сеанс внешнего соединения с ИБ", false); + logstep = "new ActiveXObject COMConnector"; var ComConnector = new ActiveXObject(comConnectorName); + logstep = "comConnector.Connect"; ComConnection = ComConnector.Connect(connectionString); + logstep = "new SystemInfo"; + systemInfo = ComConnection.NewObject("SystemInfo"); + logstep = "SystemInfo.AppVersion"; + appVersion = systemInfo.AppVersion; + logstep = "SystemInfo.PlatformType"; + platformType = systemInfo.PlatformType; + logstep = "Проверка ComConnection.PlatformType"; + platformTypeString = "<Неопределена>"; + if (platformType === ComConnection.PlatformType.Windows_x86) + platformTypeString = "32 bit"; + if (platformType === ComConnection.PlatformType.Windows_x86_64) + platformTypeString = "64 bit"; + log(format("Версия comcntr: {0} {1}", appVersion, platformTypeString), false); return ComConnection; } - catch(e) - { - log(format("Исключение в createConnection: {0}, {1}", e.name, e.message), true); + catch (e) { + log(format("Исключение в createConnection на шаге: {0}, {1}, {2}", logstep, e.name, e.message), true); return null; } - } diff --git a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/МакетФайлаРезервногоКопирования/Template.txt b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/МакетФайлаРезервногоКопирования/Template.txt index a07510d4f..0f9adee1b 100644 --- a/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/МакетФайлаРезервногоКопирования/Template.txt +++ b/SSL/src/DataProcessors/РезервноеКопированиеИБ/Templates/МакетФайлаРезервногоКопирования/Template.txt @@ -41,6 +41,7 @@ var errorMarker = "{ERR}"; var successMarker = "{OK }"; var FileSize = 0; +var CheckCount = 0; // Переменные состояния var backupCreated = false; @@ -197,6 +198,7 @@ function log1CInternal(connection, text, failed) function initialize() { clearLogFile(); + appendLog(); log(format("Файл скрипта: {0}", thisFileName)); log(format("Файл резервной копии: {0}", backupFileName)); return 0; @@ -232,26 +234,40 @@ function finalize(success) ComConnection = null; } -function createConnection() +function createConnection() { if (!useComConnector) - return null; - - if (!ComConnection == null) - return ComConnection; - - try - { + return null; + + if (ComConnection != null) + return ComConnection; + + + try { + log("Начат сеанс внешнего соединения с ИБ", false); + logstep = "new ActiveXObject COMConnector"; var ComConnector = new ActiveXObject(comConnectorName); + logstep = "comConnector.Connect"; ComConnection = ComConnector.Connect(connectionString); + logstep = "new SystemInfo"; + systemInfo = ComConnection.NewObject("SystemInfo"); + logstep = "SystemInfo.AppVersion"; + appVersion = systemInfo.AppVersion; + logstep = "SystemInfo.PlatformType"; + platformType = systemInfo.PlatformType; + logstep = "Проверка ComConnection.PlatformType"; + platformTypeString = "<Неопределена>"; + if (platformType === ComConnection.PlatformType.Windows_x86) + platformTypeString = "32 bit"; + if (platformType === ComConnection.PlatformType.Windows_x86_64) + platformTypeString = "64 bit"; + log(format("Версия comcntr: {0} {1}", appVersion, platformTypeString), false); return ComConnection; } - catch(e) - { - log(format("Исключение в createConnection: {0}, {1}", e.name, e.message), true); + catch (e) { + log(format("Исключение в createConnection на шаге: {0}, {1}, {2}", logstep, e.name, e.message), true); return null; } - } // Записать весь log-файл в журнал регистрации @@ -324,7 +340,7 @@ function writeEventLog(success) var eventKind = success ? EVENT_SUCCESS : EVENT_CRITICAL; var message; if (success) - message = "Резервное копирование базы провелось успешно."; + message = "Резервное копирование базы выполнено успешно."; else message = "Ошибка при резервном копировании информационной базы."; message += format(" Параметры информационной базы: {0}.", infoBasePath); @@ -338,9 +354,9 @@ function writeEventLog(success) } } -// Cоздание резервной копии информационной базы +// Создание резервной копии информационной базы function backupDB() -{ +{ try { var NewTextFile = oFileSystemObject.CreateTextFile(backupFileName,false); @@ -362,7 +378,7 @@ function backupDB() dFolder.CopyHere(file); ret = 0; - log(format("Попытка создания резервной копии", ret), ret != 0); + log(format("Попытка создания резервной копии", ret), ret != 0); } catch(e) { @@ -372,7 +388,7 @@ function backupDB() ret = -1; } if (ret == 0) - backupCreated = true; + backupCreated = true; return ret; } @@ -392,11 +408,16 @@ function WaitUntilFinish() } var nowSize = FileArchive.size; - // файл все еще не начал создаваться, возможно выполняется интерактив, ожидаем далее + // Файл все еще не начал создаваться, возможно выполняется интерактивное действие, ожидаем далее. if (nowSize/1024 < 5){ FileSize = nowSize; - return -1;} + // Если за 5 минут файл все еще не начал создаваться, то отменяем резервное копирование. + if (CheckCount > 60){return 1;} + + CheckCount = CheckCount + 1; + return -1;} + if (FileSize != nowSize){ FileSize = nowSize; return -1;} diff --git a/SSL/src/DataProcessors/РезервноеКопированиеИБ/РезервноеКопированиеИБ.mdo b/SSL/src/DataProcessors/РезервноеКопированиеИБ/РезервноеКопированиеИБ.mdo index 1770d904d..c1ab5b155 100644 --- a/SSL/src/DataProcessors/РезервноеКопированиеИБ/РезервноеКопированиеИБ.mdo +++ b/SSL/src/DataProcessors/РезервноеКопированиеИБ/РезервноеКопированиеИБ.mdo @@ -11,7 +11,6 @@ true DataProcessor.РезервноеКопированиеИБ.Form.РезервноеКопированиеДанных - true ВариантРасписанияРезервногоКопирования diff --git a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОбновленияИБ/Form.form b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОбновленияИБ/Form.form index d285dffa3..2b1654169 100644 --- a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОбновленияИБ/Form.form +++ b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОбновленияИБ/Form.form @@ -38,7 +38,6 @@ true Label - true true Left @@ -73,7 +72,6 @@ true Label - true true Left @@ -136,7 +134,6 @@ true Label - true true Left @@ -170,7 +167,6 @@ true Label - true true Left @@ -232,7 +228,6 @@ true Label - true true Left @@ -267,7 +262,6 @@ true Label - true true Left @@ -331,7 +325,6 @@ true Label - true true Left @@ -365,7 +358,6 @@ true Label - true true Left @@ -474,6 +466,11 @@ true + + ru + Техническая информация из журнала регистрации для обращения в службу технической поддержки. + + Button ТехническаяИнформацияРасширеннаяПодсказка 29 @@ -490,7 +487,6 @@ true Label - true true @@ -507,10 +503,6 @@ Left true - - OnOpen - ПриОткрытии - BeforeClose ПередЗакрытием @@ -572,23 +564,6 @@ true - - УникальныйИдентификатор - - <key>ru</key> - <value>Уникальный идентификатор</value> - - 5 - - UUID - - - true - - - true - - ВремяНачалаОбновления @@ -607,54 +582,6 @@ <common>true</common> </edit> </attributes> - <attributes> - <name>ФоновоеЗаданиеАдресХранилища</name> - <title> - <key>ru</key> - <value>Фоновое задание адрес хранилища</value> - - 7 - - String - - - - true - - - true - - - - ФоновоеЗаданиеИдентификатор - - <key>ru</key> - <value>Фоновое задание идентификатор</value> - - 8 - - - true - - - true - - - - ПараметрыОбработчика - - <key>ru</key> - <value>Параметры обработчика</value> - - 9 - - - true - - - true - - ПрогрессВыполнения @@ -707,46 +634,6 @@ <common>true</common> </edit> </attributes> - <attributes> - <name>ДлинаШагаПрогресса</name> - <title> - <key>ru</key> - <value>Длина шага прогресса</value> - - 12 - - Number - - 10 - - - - true - - - true - - - - НачалоШагаПрогресса - - <key>ru</key> - <value>Начало шага прогресса</value> - - 13 - - Number - - 10 - - - - true - - - true - - МонопольныйРежимУстановлен @@ -799,6 +686,185 @@ <common>true</common> </edit> </attributes> + <attributes> + <name>ОписаниеПроцедурЗаполнения</name> + <title> + <key>ru</key> + <value>Описание процедур заполнения</value> + + 16 + + ValueTable + + + true + + + true + + + Очередь + + <key>ru</key> + <value>Очередь</value> + + 1 + + Number + + 10 + + + + true + + + true + + + + Статус + + <key>ru</key> + <value>Статус</value> + + 2 + + String + + + + true + + + true + + + + ОписаниеПроцедур + + <key>ru</key> + <value>Описание процедур</value> + + 3 + + + true + + + true + + + + + АктивноПотоков + + <key>ru</key> + <value>Активно потоков</value> + + 17 + + Number + + 10 + + + + true + + + true + + + + КлиентСервер + + <key>ru</key> + <value>Клиент сервер</value> + + 18 + + Boolean + + + true + + + true + + + + ОписаниеПотоков + + <key>ru</key> + <value>Описание потоков</value> + + 19 + + ValueList + + + true + + + true + + + + + + + МаксимальноПотоков + + <key>ru</key> + <value>Максимально потоков</value> + + 20 + + Number + + 10 + + + + true + + + true + + + + Коробка + + <key>ru</key> + <value>Коробка</value> + + 21 + + Boolean + + + true + + + true + + + + ХодРегистрации + + <key>ru</key> + <value>Ход регистрации</value> + + 22 + + + true + + + true + + ПриЗапускеКлиентскогоПриложения diff --git a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОбновленияИБ/Module.bsl b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОбновленияИБ/Module.bsl index 6510aeb8b..df6e98898 100644 --- a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОбновленияИБ/Module.bsl +++ b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОбновленияИБ/Module.bsl @@ -2,6 +2,10 @@ &НаКлиенте Перем ПараметрыПродолжения; +&НаКлиенте +Перем РезультатВыполненияОбновления; +&НаКлиенте +Перем ОбработкаЗавершения; #КонецОбласти @@ -17,9 +21,29 @@ ВыполняетсяОбновлениеВерсииИБ = Истина; ВремяНачалаОбновления = ТекущаяДатаСеанса(); - НачалоШагаПрогресса = 5; - ДлинаШагаПрогресса = 5; - ПрогрессВыполнения = НачалоШагаПрогресса; + КлиентСервер = Не ОбщегоНазначения.ИнформационнаяБазаФайловая(); + Коробка = Не ОбщегоНазначенияПовтИсп.РазделениеВключено(); + + ПараметрыЗапускаПрограммы = ПараметрыСеанса.ПараметрыКлиентаНаСервере.Получить("ПараметрЗапуска"); + ПараметрыЗапускаМассивом = СтрРазделить(ПараметрыЗапускаПрограммы, ";"); + Для Каждого Параметр Из ПараметрыЗапускаМассивом Цикл + Если СтрНайти(Параметр, "ЧислоПотоковОбновления") > 0 Тогда + ПотокиОбновления = СтрРазделить(Параметр, "="); + Попытка + МаксимальноПотоков = Число(ПотокиОбновления[1]); + Исключение + ТекстИсключения = НСтр("ru = 'Неправильно указан параметр запуска программы ""ЧислоПотоковОбновления"". + |Правильный формат - ""ЧислоПотоковОбновления=Х"", где ""Х"" - максимальное количество потоков обновления.'"); + ВызватьИсключение ТекстИсключения; + КонецПопытки; + КонецЕсли; + КонецЦикла; + + Если МаксимальноПотоков = 0 Тогда + МаксимальноПотоков = 8; + КонецЕсли; + + ПрогрессВыполнения = 5; РежимОбновленияДанных = ОбновлениеИнформационнойБазыСлужебный.РежимОбновленияДанных(); @@ -29,7 +53,6 @@ Если ТолькоОбновлениеПараметровРаботыПрограммы Тогда Заголовок = НСтр("ru = 'Обновление параметров работы программы'"); Элементы.РежимЗапуска.ТекущаяСтраница = Элементы.ОбновлениеПараметровРаботыПрограммы; - ДлинаШагаПрогресса = 95; ИначеЕсли РежимОбновленияДанных = "НачальноеЗаполнение" Тогда Заголовок = НСтр("ru = 'Начальное заполнение данных'"); @@ -50,17 +73,15 @@ КонецПроцедуры &НаКлиенте -Процедура ПриОткрытии(Отказ) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) - Если Параметры.Свойство("АвтоТест") Тогда + Если ЗавершениеРаботы Тогда + Если ВыполняетсяОбновлениеВерсииИБ Тогда + Отказ = Истина; + КонецЕсли; Возврат; КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) - Если ВыполняетсяОбновлениеВерсииИБ Тогда Отказ = Истина; ИначеЕсли МонопольныйРежимУстановлен Тогда @@ -75,11 +96,12 @@ &НаКлиенте Процедура ТехническаяИнформацияНажатие(Элемент) + ПараметрыОтбора = Новый Структура; ПараметрыОтбора.Вставить("ЗапускатьНеВФоне", Истина); ПараметрыОтбора.Вставить("ДатаНачала", ВремяНачалаОбновления); + ЖурналРегистрацииКлиент.ОткрытьЖурналРегистрации(ПараметрыОтбора); - ОткрытьФорму("Обработка.ЖурналРегистрации.Форма.ЖурналРегистрации", ПараметрыОтбора); КонецПроцедуры #КонецОбласти @@ -104,35 +126,22 @@ Процедура ЗагрузитьОбновитьПараметрыРаботыПрограммы(Параметры) Экспорт ПараметрыПродолжения = Параметры; - - ПодключитьОбработчикОжидания("ЗагрузитьОбновитьПараметрыРаботыПрограммыНачало", 0.1, Истина); + ПодключитьОбработчикОжидания("НачатьОбновлениеПараметровРаботыПрограммы", 0.1, Истина); КонецПроцедуры &НаКлиенте -Процедура ЗагрузитьОбновитьПараметрыРаботыПрограммыНачало() - - // Параметры обработчика длительной операции. - ПараметрыОбработчика = Новый Структура; - ПараметрыОбработчика.Вставить("МинимальныйИнтервал", 1); - ПараметрыОбработчика.Вставить("МаксимальныйИнтервал", 15); - ПараметрыОбработчика.Вставить("ТекущийИнтервал", 1); - ПараметрыОбработчика.Вставить("КоэффициентУвеличенияИнтервала", 1.4); - - ФоновоеЗаданиеАдресХранилища = Неопределено; - ФоновоеЗаданиеИдентификатор = Неопределено; +Процедура НачатьОбновлениеПараметровРаботыПрограммы() РезультатВыполнения = ЗагрузитьОбновитьПараметрыРаботыПрограммыВФоне(); - Если РезультатВыполнения.ЗаданиеВыполнено - Или РезультатВыполнения.КраткоеСообщениеОбОшибке <> Неопределено Тогда - - ЗагрузитьОбновитьПараметрыРаботыПрограммыОбработатьРезультат( - РезультатВыполнения.КраткоеСообщениеОбОшибке, - РезультатВыполнения.ПодробноеСообщениеОбОшибке); - Иначе - ПодключитьОбработчикОжидания("ОбновлениеПараметровРаботыПрограммыПроверитьНаКлиенте", 1, Истина); - КонецЕсли; + ОповещениеОЗавершении = Новый ОписаниеОповещения("ЗавершитьОбновлениеПараметровРаботыПрограммы", ЭтотОбъект); + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ПараметрыОжидания.Интервал = 2; + ПараметрыОжидания.ВыводитьПрогрессВыполнения = Истина; + ПараметрыОжидания.ОповещениеОПрогрессеВыполнения = Новый ОписаниеОповещения("ПрогрессОбновленияПараметровРаботыПрограммы", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(РезультатВыполнения, ОповещениеОЗавершении, ПараметрыОжидания); КонецПроцедуры @@ -141,8 +150,6 @@ ОбновитьПовторноИспользуемыеЗначения(); - ИнформацияОбОшибке = Неопределено; - Попытка УстановитьМонопольныйРежим(Истина); МонопольныйРежимУстановлен = Истина; @@ -154,67 +161,75 @@ // быть установлен сразу без завершения сеансов пользователей. КонецПопытки; - // Запуск фонового задания + // Запуск фонового задания. РежимОтладки = ОбщегоНазначенияКлиентСервер.РежимОтладки(); ПараметрыВыполнения = Новый Структура; Если Не РежимОтладки Тогда ПараметрыВыполнения.Вставить("ПараметрыКлиентаНаСервере", ПараметрыСеанса.ПараметрыКлиентаНаСервере); - Если ОбщегоНазначения.ИнформационнаяБазаФайловая() - Или Не ОбщегоНазначенияПовтИсп.РазделениеВключено() - Или Не ОбщегоНазначенияПовтИсп.СеансЗапущенБезРазделителей() Тогда - ПараметрыВыполнения.Вставить("УстановленныеРасширения", ПараметрыСеанса.УстановленныеРасширения); - ПараметрыВыполнения.Вставить("ХранилищеСвойствРасширений", - Справочники.ИдентификаторыОбъектовМетаданных.ХранилищеСвойствРасширений()); - КонецЕсли; КонецЕсли; - Попытка - Результат = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "СтандартныеПодсистемыСервер.ЗагрузитьОбновитьПараметрыРаботыПрограммыВФоне", - ПараметрыВыполнения, - НСтр("ru = 'Фоновое обновление параметров работы программы'")); - - Результат.Вставить("КраткоеСообщениеОбОшибке", Неопределено); - Результат.Вставить("ПодробноеСообщениеОбОшибке", Неопределено); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - Результат = Новый Структура; - Результат.Вставить("ЗаданиеВыполнено", Ложь); - Результат.Вставить("КраткоеСообщениеОбОшибке", КраткоеПредставлениеОшибки(ИнформацияОбОшибке)); - Результат.Вставить("ПодробноеСообщениеОбОшибке", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); - КонецПопытки; - - Результат.Свойство("ИдентификаторЗадания", ФоновоеЗаданиеИдентификатор); - Результат.Свойство("АдресХранилища", ФоновоеЗаданиеАдресХранилища); - - Возврат Результат; + ПараметрыОперации = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыОперации.НаименованиеФоновогоЗадания = НСтр("ru = 'Фоновое обновление параметров работы программы'"); + ПараметрыОперации.ОжидатьЗавершение = 0; + Возврат ДлительныеОперации.ВыполнитьВФоне("СтандартныеПодсистемыСервер.ЗагрузитьОбновитьПараметрыРаботыПрограммыВФоне", + ПараметрыВыполнения, ПараметрыОперации); КонецФункции &НаКлиенте -Процедура ЗагрузитьОбновитьПараметрыРаботыПрограммыОбработатьРезультат(Знач КраткоеСообщениеОбОшибке, Знач ПодробноеСообщениеОбОшибке) +Процедура ПрогрессОбновленияПараметровРаботыПрограммы(Прогресс, ДополнительныеПараметры) Экспорт + + Если Прогресс = Неопределено Тогда + Возврат; + КонецЕсли; + + Если Прогресс.Статус <> "Выполняется" Тогда + Возврат; + КонецЕсли; + + Если Прогресс.Прогресс <> Неопределено Тогда + + Если ТолькоОбновлениеПараметровРаботыПрограммы Тогда + ПрогрессВыполнения = 5 + (90 * Прогресс.Прогресс.Процент / 100); + Иначе + ПрогрессВыполнения = 5 + (5 * Прогресс.Прогресс.Процент / 100); + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ЗавершитьОбновлениеПараметровРаботыПрограммы(Результат, ДополнительныеПараметры) Экспорт ОшибкаУстановкиМонопольногоРежима = ""; - Если КраткоеСообщениеОбОшибке = Неопределено Тогда - РезультатВыполнения = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); + Если Результат = Неопределено Или Результат.Статус = "Отменено" Тогда + + КраткоеСообщениеОбОшибке = НСтр("ru = 'Ошибка получения результата от фонового задания при обновлении параметров работы программы.'"); + ПодробноеСообщениеОбОшибке = КраткоеСообщениеОбОшибке; + + ИначеЕсли Результат.Статус = "Выполнено" Тогда + РезультатВыполнения = ПолучитьИзВременногоХранилища(Результат.АдресРезультата); Если ТипЗнч(РезультатВыполнения) = Тип("Структура") Тогда + + ПрогрессВыполнения = ?(ТолькоОбновлениеПараметровРаботыПрограммы, 95, 10); + КраткоеСообщениеОбОшибке = РезультатВыполнения.КраткоеСообщениеОбОшибке; ПодробноеСообщениеОбОшибке = РезультатВыполнения.ПодробноеСообщениеОбОшибке; ОшибкаУстановкиМонопольногоРежима = РезультатВыполнения.ОшибкаУстановкиМонопольногоРежима; Если РезультатВыполнения.Свойство("ПараметрыКлиентаНаСервере") Тогда - УстановитьПараметрыСеансаИзФоновогоЗадания(); + УстановитьПараметрыСеансаИзФоновогоЗадания(РезультатВыполнения.ПараметрыКлиентаНаСервере); КонецЕсли; - Иначе - КраткоеСообщениеОбОшибке = - НСтр("ru = 'Ошибка получения результата от фонового задания - |при обновлении параметров работы программы.'"); + Иначе + КраткоеСообщениеОбОшибке = НСтр("ru = 'Ошибка получения результата от фонового задания при обновлении параметров работы программы.'"); ПодробноеСообщениеОбОшибке = КраткоеСообщениеОбОшибке; КонецЕсли; + Иначе // ошибка + КраткоеСообщениеОбОшибке = Результат.КраткоеПредставлениеОшибки; + ПодробноеСообщениеОбОшибке = Результат.ПодробноеПредставлениеОшибки; КонецЕсли; Если ОшибкаУстановкиМонопольногоРежима = "ЗаблокироватьВыполнениеРегламентныхЗаданий" Тогда @@ -226,15 +241,15 @@ ДополнительныеПараметры.Вставить("ПодробноеСообщениеОбОшибке", ПодробноеСообщениеОбОшибке); ДополнительныеПараметры.Вставить("ОшибкаУстановкиМонопольногоРежима", ОшибкаУстановкиМонопольногоРежима); - Если ЗначениеЗаполнено(ОшибкаУстановкиМонопольногоРежима) Тогда + Если ЗначениеЗаполнено(ОшибкаУстановкиМонопольногоРежима) И Не КлиентСервер Тогда ЗагрузитьОбновитьПараметрыРаботыПрограммыПриОшибкеУстановкиМонопольногоРежима(ДополнительныеПараметры); Возврат; КонецЕсли; - ЗагрузитьОбновитьПараметрыРаботыПрограммыЗавершение(ДополнительныеПараметры); - + ОбновитьПараметрыРаботыПрограммы(ДополнительныеПараметры); + КонецПроцедуры &НаКлиенте @@ -249,10 +264,11 @@ ДополнительныеПараметры); ПриОткрытииФормыОшибкиУстановкиМонопольногоРежима(Оповещение, ДополнительныеПараметры); - Иначе - ЗагрузитьОбновитьПараметрыРаботыПрограммыЗавершение(ДополнительныеПараметры); + Возврат; КонецЕсли; + ОбновитьПараметрыРаботыПрограммы(ДополнительныеПараметры); + КонецПроцедуры &НаКлиенте @@ -268,14 +284,14 @@ КонецЕсли; УстановитьПараметрыБлокировкиИБПриОшибкеУстановкиМонопольногоРежима(); - ЗагрузитьОбновитьПараметрыРаботыПрограммыНачало(); + НачатьОбновлениеПараметровРаботыПрограммы(); КонецПроцедуры &НаКлиенте -Процедура ЗагрузитьОбновитьПараметрыРаботыПрограммыЗавершение(ДополнительныеПараметры) +Процедура ОбновитьПараметрыРаботыПрограммы(ДополнительныеПараметры) - Если ДополнительныеПараметры.КраткоеСообщениеОбОшибке <> Неопределено Тогда + Если ЗначениеЗаполнено(ДополнительныеПараметры.КраткоеСообщениеОбОшибке) Тогда СообщениеОНеудачномОбновлении(ДополнительныеПараметры, Неопределено); Возврат; КонецЕсли; @@ -299,109 +315,68 @@ И ПараметрыКлиента.ДоступноИспользованиеРазделенныхДанных Тогда ВыполнитьОбработкуОповещения(ПараметрыПродолжения.ОбработкаПродолжения); - Иначе - Если ПараметрыКлиента.Свойство("НеобходимоОбновлениеНеразделенныхДанныхИнформационнойБазы") Тогда - Попытка - ОбновлениеИнформационнойБазыСлужебныйВызовСервера.ВыполнитьОбновлениеИнформационнойБазы(Истина); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - ДополнительныеПараметры.Вставить("КраткоеСообщениеОбОшибке", КраткоеПредставлениеОшибки(ИнформацияОбОшибке)); - ДополнительныеПараметры.Вставить("ПодробноеСообщениеОбОшибке", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); - КонецПопытки; - Если ДополнительныеПараметры.КраткоеСообщениеОбОшибке <> Неопределено Тогда - СообщениеОНеудачномОбновлении(ДополнительныеПараметры, Неопределено); - Возврат; - КонецЕсли; - КонецЕсли; + Возврат; + КонецЕсли; - Если БлокировкаИБ <> Неопределено - И БлокировкаИБ.Свойство("СнятьБлокировкуФайловойБазы") Тогда - ОбновлениеИнформационнойБазыСлужебныйВызовСервера.СнятьБлокировкуФайловойБазы(); + Если ПараметрыКлиента.Свойство("НеобходимоОбновлениеНеразделенныхДанныхИнформационнойБазы") Тогда + Попытка + ОбновлениеИнформационнойБазыСлужебныйВызовСервера.ВыполнитьОбновлениеИнформационнойБазы(Истина); + Исключение + ИнформацияОбОшибке = ИнформацияОбОшибке(); + ДополнительныеПараметры.Вставить("КраткоеСообщениеОбОшибке", КраткоеПредставлениеОшибки(ИнформацияОбОшибке)); + ДополнительныеПараметры.Вставить("ПодробноеСообщениеОбОшибке", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); + КонецПопытки; + Если ЗначениеЗаполнено(ДополнительныеПараметры.КраткоеСообщениеОбОшибке) Тогда + СообщениеОНеудачномОбновлении(ДополнительныеПараметры, Неопределено); + Возврат; КонецЕсли; - ЗакрытьФорму(Ложь, Ложь); КонецЕсли; -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Процедуры получения результата выполнения обработчиков обновления. - -&НаКлиенте -Процедура ОбновлениеПараметровРаботыПрограммыПроверитьНаКлиенте() - - Результат = ОбновлениеПараметровРаботыПрограммыВыполнено(); - - Если Результат.ЗаданиеВыполнено = Истина - Или Результат.КраткоеСообщениеОбОшибке <> Неопределено Тогда - - ЗагрузитьОбновитьПараметрыРаботыПрограммыОбработатьРезультат( - Результат.КраткоеСообщениеОбОшибке, Результат.ПодробноеСообщениеОбОшибке); - Иначе - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ПодключитьОбработчикОжидания("ОбновлениеПараметровРаботыПрограммыПроверитьНаКлиенте", ПараметрыОбработчика.ТекущийИнтервал, Истина); + Если БлокировкаИБ <> Неопределено + И БлокировкаИБ.Свойство("СнятьБлокировкуФайловойБазы") Тогда + ОбновлениеИнформационнойБазыСлужебныйВызовСервера.СнятьБлокировкуФайловойБазы(); КонецЕсли; + ЗакрытьФорму(Ложь, Ложь); КонецПроцедуры -&НаСервере -Функция ОбновлениеПараметровРаботыПрограммыВыполнено() - - ИнформацияОбОшибке = Неопределено; - ЗаданиеВыполнено = Ложь; - - ПродвинутьИндикаторПрогресса(ЗаданиеВыполнено, ИнформацияОбОшибке); - - Результат = Новый Структура; - Результат.Вставить("ЗаданиеВыполнено", ЗаданиеВыполнено); - Результат.Вставить("КраткоеСообщениеОбОшибке", ?(ИнформацияОбОшибке <> Неопределено, КраткоеПредставлениеОшибки(ИнформацияОбОшибке), Неопределено)); - Результат.Вставить("ПодробноеСообщениеОбОшибке", ?(ИнформацияОбОшибке <> Неопределено, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке), Неопределено)); - Результат.Вставить("ПрогрессВыполнения", ПрогрессВыполнения); - - Возврат Результат; - -КонецФункции - //////////////////////////////////////////////////////////////////////////////// // Обновление информационной базы (все в локальном режиме и область данных в сервисе). &НаКлиенте Процедура ОбновитьИнформационнуюБазу() Экспорт - НачалоШагаПрогресса = 10; - ДлинаШагаПрогресса = 5; - ПрогрессВыполнения = НачалоШагаПрогресса; - - ПодключитьОбработчикОжидания("ОбновитьИнформационнуюБазуНачало", 0.1, Истина); + ПрогрессВыполнения = 10; + ПодключитьОбработчикОжидания("НачатьОбновлениеИнформационнойБазы", 0.1, Истина); КонецПроцедуры &НаКлиенте -Процедура ОбновитьИнформационнуюБазуНачало() +Процедура НачатьОбновлениеИнформационнойБазы() ВремяНачалаОбновления = ОбщегоНазначенияКлиент.ДатаСеанса(); - // Параметры обработчика длительной операции. - ПараметрыОбработчика = Новый Структура; - ПараметрыОбработчика.Вставить("МинимальныйИнтервал", 1); - ПараметрыОбработчика.Вставить("МаксимальныйИнтервал", 15); - ПараметрыОбработчика.Вставить("ТекущийИнтервал", 1); - ПараметрыОбработчика.Вставить("КоэффициентУвеличенияИнтервала", 1.4); - - ФоновоеЗаданиеАдресХранилища = Неопределено; - ФоновоеЗаданиеИдентификатор = Неопределено; - РезультатОбновленияИБ = ОбновитьИнформационнуюБазуВФоне(); - Если РезультатОбновленияИБ.ЗаданиеВыполнено - Или РезультатОбновленияИБ.КраткоеСообщениеОбОшибке <> Неопределено Тогда - - ОбновитьИнформационнуюБазуОбработатьРезультат( - РезультатОбновленияИБ.КраткоеСообщениеОбОшибке, - РезультатОбновленияИБ.ПодробноеСообщениеОбОшибке); - Иначе - ПодключитьОбработчикОжидания("ОбновлениеИнформационнойБазыПроверитьНаКлиенте", 1, Истина); + Если Не РезультатОбновленияИБ.Свойство("АдресРезультата") Тогда + ЗавершитьОбновлениеИнформационнойБазы(РезультатОбновленияИБ, Неопределено); + Возврат; КонецЕсли; + Если КлиентСервер И Коробка Тогда + ПроцедураПродолжения = "ЗарегистрироватьДанныеДляОтложенногоОбновления"; + Иначе + ПроцедураПродолжения = "ЗавершитьОбновлениеИнформационнойБазы"; + КонецЕсли; + + ОповещениеОЗавершении = Новый ОписаниеОповещения(ПроцедураПродолжения, ЭтотОбъект); + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ПараметрыОжидания.ВыводитьПрогрессВыполнения = Истина; + ПараметрыОжидания.ВыводитьСообщения = Истина; + ПараметрыОжидания.ОповещениеОПрогрессеВыполнения = Новый ОписаниеОповещения("ПрогрессОбновленияИнформационнойБазы", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(РезультатОбновленияИБ, ОповещениеОЗавершении, ПараметрыОжидания); + КонецПроцедуры &НаСервере @@ -409,31 +384,54 @@ Результат = ОбновлениеИнформационнойБазыСлужебный.ОбновитьИнформационнуюБазуВФоне(УникальныйИдентификатор, БлокировкаИБ); БлокировкаИБ = Результат.БлокировкаИБ; - Результат.Свойство("ИдентификаторЗадания", ФоновоеЗаданиеИдентификатор); - Результат.Свойство("АдресХранилища", ФоновоеЗаданиеАдресХранилища); Возврат Результат; КонецФункции &НаКлиенте -Процедура ОбновитьИнформационнуюБазуОбработатьРезультат(Знач КраткоеСообщениеОбОшибке, Знач ПодробноеСообщениеОбОшибке) +Процедура ПрогрессОбновленияИнформационнойБазы(Прогресс, ДополнительныеПараметры) Экспорт - Если ФоновоеЗаданиеАдресХранилища <> "" Тогда - РезультатОбновления = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); + Если Прогресс = Неопределено Тогда + Возврат; + КонецЕсли; + + Если Прогресс.Статус = "Ошибка" Тогда + Возврат; + КонецЕсли; + + Если Прогресс.Прогресс <> Неопределено Тогда + ПрогрессВыполнения = 10 + (90 * Прогресс.Прогресс.Процент / 100); + КонецЕсли; + ОбработатьОшибкуПравилРегистрации(Прогресс.Сообщения); + +КонецПроцедуры + +&НаКлиенте +Процедура ЗавершитьОбновлениеИнформационнойБазы(Результат, ДополнительныеПараметры) Экспорт + + Если Результат = Неопределено Или Результат.Статус = "Отменено" Тогда + ПризнакВыполненияОбработчиков = БлокировкаИБ.Ошибка; + + ИначеЕсли Результат.Статус = "Выполнено" Тогда + + РезультатОбновления = ПолучитьИзВременногоХранилища(Результат.АдресРезультата); Если ТипЗнч(РезультатОбновления) = Тип("Структура") Тогда Если РезультатОбновления.Свойство("КраткоеСообщениеОбОшибке") И РезультатОбновления.Свойство("ПодробноеСообщениеОбОшибке") Тогда - КраткоеСообщениеОбОшибке = РезультатОбновления.КраткоеСообщениеОбОшибке; - ПодробноеСообщениеОбОшибке = РезультатОбновления.ПодробноеСообщениеОбОшибке; + Результат.КраткоеПредставлениеОшибки = РезультатОбновления.КраткоеСообщениеОбОшибке; + Результат.ПодробноеПредставлениеОшибки = РезультатОбновления.ПодробноеСообщениеОбОшибке; Иначе ПризнакВыполненияОбработчиков = РезультатОбновления.Результат; - УстановитьПараметрыСеансаИзФоновогоЗадания(); + УстановитьПараметрыСеансаИзФоновогоЗадания(РезультатОбновления.ПараметрыКлиентаНаСервере); + ПрогрессВыполнения = 100; КонецЕсли; Иначе ПризнакВыполненияОбработчиков = РезультатОбновления; КонецЕсли; - Иначе + ОбработатьОшибкуПравилРегистрации(Результат.Сообщения); + + Иначе // ошибка ПризнакВыполненияОбработчиков = БлокировкаИБ.Ошибка; КонецЕсли; @@ -443,8 +441,8 @@ ДополнительныеПараметры = Новый Структура; ДополнительныеПараметры.Вставить("ДокументОписаниеОбновлений", Неопределено); - ДополнительныеПараметры.Вставить("КраткоеСообщениеОбОшибке", КраткоеСообщениеОбОшибке); - ДополнительныеПараметры.Вставить("ПодробноеСообщениеОбОшибке", ПодробноеСообщениеОбОшибке); + ДополнительныеПараметры.Вставить("КраткоеСообщениеОбОшибке", Результат.КраткоеПредставлениеОшибки); + ДополнительныеПараметры.Вставить("ПодробноеСообщениеОбОшибке", Результат.ПодробноеПредставлениеОшибки); ДополнительныеПараметры.Вставить("ВремяНачалаОбновления", ВремяНачалаОбновления); ДополнительныеПараметры.Вставить("ВремяОкончанияОбновления", ОбщегоНазначенияКлиент.ДатаСеанса()); ДополнительныеПараметры.Вставить("ПризнакВыполненияОбработчиков", ПризнакВыполненияОбработчиков); @@ -469,6 +467,21 @@ КонецПроцедуры +&НаКлиенте +Процедура ОбработатьОшибкуПравилРегистрации(СообщенияПользователю) + + // См. ОбменДаннымиСобытия.ОбработатьОшибкуПравилРегистрации + Для Каждого СообщениеПользователю Из СообщенияПользователю Цикл + + НачалоСтроки = "ОбменДанными="; + Если СтрНачинаетсяС(СообщениеПользователю.Текст, НачалоСтроки) Тогда + ИмяПланаОбмена = Сред(СообщениеПользователю.Текст, СтрДлина(НачалоСтроки) + 1); + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры + &НаКлиенте Процедура ОбновитьИнформационнуюБазуПриОшибкеУстановкиМонопольногоРежима(ДополнительныеПараметры) @@ -478,10 +491,10 @@ Оповещение = Новый ОписаниеОповещения( "ОбновитьИнформационнуюБазуПриОшибкеУстановкиМонопольногоРежимаЗавершение", ЭтотОбъект, ДополнительныеПараметры); ПриОткрытииФормыОшибкиУстановкиМонопольногоРежима(Оповещение, ДополнительныеПараметры); - - Иначе - ОбновитьИнформационнуюБазуЗавершение(ДополнительныеПараметры); + Возврат; КонецЕсли; + + ОбновитьИнформационнуюБазуЗавершение(ДополнительныеПараметры); КонецПроцедуры @@ -494,7 +507,7 @@ КонецЕсли; УстановитьПараметрыБлокировкиИБПриОшибкеУстановкиМонопольногоРежима(); - ОбновитьИнформационнуюБазуНачало(); + НачатьОбновлениеИнформационнойБазы(); КонецПроцедуры @@ -517,78 +530,299 @@ &НаКлиенте Процедура ОбновитьИнформационнуюБазуЗавершение(ДополнительныеПараметры) - Если ДополнительныеПараметры.КраткоеСообщениеОбОшибке <> Неопределено Тогда - ВремяОкончанияОбновления = ОбщегоНазначенияКлиент.ДатаСеанса(); + Если ЗначениеЗаполнено(ДополнительныеПараметры.КраткоеСообщениеОбОшибке) Тогда + ВремяОкончанияОбновления = ОбщегоНазначенияКлиент.ДатаСеанса(); СообщениеОНеудачномОбновлении(ДополнительныеПараметры, ВремяОкончанияОбновления); Возврат; + КонецЕсли; - ОбновлениеИнформационнойБазыСлужебныйВызовСервера.ЗаписатьВремяВыполненияОбновления( - ДополнительныеПараметры.ВремяНачалаОбновления, ДополнительныеПараметры.ВремяОкончанияОбновления); - + ОбновитьИнформационнуюБазуЗавершениеСервер(ДополнительныеПараметры); ОбновитьПовторноИспользуемыеЗначения(); + Если СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ИнформационнаяБазаФайловая И СтрНайти(ПараметрЗапуска, "ВыполнитьОбновлениеИЗавершитьРаботу") > 0 Тогда + ПрекратитьРаботуСистемы(Ложь); - Иначе - ЗакрытьФорму(Ложь, Ложь); + Возврат; + КонецЕсли; + ЗакрытьФорму(Ложь, Ложь); + +КонецПроцедуры + +&НаСервере +Процедура ОбновитьИнформационнуюБазуЗавершениеСервер(ДополнительныеПараметры) + + // Если обновление ИБ завершилось - разблокируем ИБ. + ОбновлениеИнформационнойБазыСлужебный.РазблокироватьИБ(БлокировкаИБ); + ОбновлениеИнформационнойБазыСлужебный.ЗаписатьВремяВыполненияОбновления( + ДополнительныеПараметры.ВремяНачалаОбновления, ДополнительныеПараметры.ВремяОкончанияОбновления); + КонецПроцедуры &НаКлиенте Процедура ЗакрытьФорму(Отказ, Перезапустить) ВыполняетсяОбновлениеВерсииИБ = Ложь; - Закрыть(Новый Структура("Отказ, Перезапустить", Отказ, Перезапустить)); КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// -// Процедуры получения результата выполнения обработчиков обновления. +// Регистрация данных для параллельного отложенного обновления. &НаКлиенте -Процедура ОбновлениеИнформационнойБазыПроверитьНаКлиенте() +Процедура ЗарегистрироватьДанныеДляОтложенногоОбновления(Результат, ДополнительныеПараметры) Экспорт - Результат = ОбновлениеИнформационнойБазыВыполнено(); + РезультатОбновления = ПолучитьИзВременногоХранилища(Результат.АдресРезультата); - Если Результат.ЗаданиеВыполнено = Истина - Или Результат.КраткоеСообщениеОбОшибке <> Неопределено Тогда - - ОбновитьИнформационнуюБазуОбработатьРезультат( - Результат.КраткоеСообщениеОбОшибке, Результат.ПодробноеСообщениеОбОшибке); + ОбработкаЗавершения = Новый ОписаниеОповещения("ЗавершитьОбновлениеИнформационнойБазы", ЭтотОбъект, Результат); + РезультатВыполненияОбновления = Результат; + Если Результат.Статус <> "Выполнено" + Или (ТипЗнч(РезультатОбновления) = Тип("Структура") + И РезультатОбновления.Свойство("КраткоеСообщениеОбОшибке") + И РезультатОбновления.Свойство("ПодробноеСообщениеОбОшибке")) Тогда + ВыполнитьОбработкуОповещения(ОбработкаЗавершения, РезультатВыполненияОбновления); + Возврат; + КонецЕсли; + + СостояниеРегистрации = ЗаполнениеДанныхДляПараллельногоОтложенногоОбновления(); + Если СостояниеРегистрации.Статус <> "Выполняется" Тогда + ЗаполнитьЗначенияСвойств(РезультатВыполненияОбновления, СостояниеРегистрации); + ВыполнитьОбработкуОповещения(ОбработкаЗавершения, РезультатВыполненияОбновления); Иначе - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ПодключитьОбработчикОжидания("ОбновлениеИнформационнойБазыПроверитьНаКлиенте", ПараметрыОбработчика.ТекущийИнтервал, Истина); + ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеЗаданий", 5); КонецЕсли; КонецПроцедуры &НаСервере -Функция ОбновлениеИнформационнойБазыВыполнено() +Функция ЗаполнениеДанныхДляПараллельногоОтложенногоОбновления() - ИнформацияОбОшибке = Неопределено; - ЗаданиеВыполнено = Ложь; - - ПродвинутьИндикаторПрогресса(ЗаданиеВыполнено, ИнформацияОбОшибке); - - // Если обновление ИБ завершилось - разблокируем ИБ. - Если ЗаданиеВыполнено = Истина Тогда - ОбновлениеИнформационнойБазыСлужебный.РазблокироватьИБ(БлокировкаИБ); + // Очистка плана обмена ОбновлениеИнформационнойБазы. + Если Не (СтандартныеПодсистемыПовтИсп.ИспользуетсяРИБ("СФильтром") И ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ()) Тогда + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ОбновлениеИнформационнойБазы.Ссылка КАК Узел + |ИЗ + | ПланОбмена.ОбновлениеИнформационнойБазы КАК ОбновлениеИнформационнойБазы + |ГДЕ + | НЕ ОбновлениеИнформационнойБазы.ЭтотУзел"; + + Выборка = Запрос.Выполнить().Выбрать(); + Пока Выборка.Следующий() Цикл + ПланыОбмена.УдалитьРегистрациюИзменений(Выборка.Узел); + КонецЦикла; КонецЕсли; - Результат = Новый Структура; - Результат.Вставить("ЗаданиеВыполнено", ЗаданиеВыполнено); - Результат.Вставить("КраткоеСообщениеОбОшибке", ?(ИнформацияОбОшибке <> Неопределено, КраткоеПредставлениеОшибки(ИнформацияОбОшибке), Неопределено)); - Результат.Вставить("ПодробноеСообщениеОбОшибке", ?(ИнформацияОбОшибке <> Неопределено, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке), Неопределено)); - Результат.Вставить("ПрогрессВыполнения", ПрогрессВыполнения); + СведенияОбОбновлении = ОбновлениеИнформационнойБазыСлужебный.СведенияОбОбновленииИнформационнойБазы(); + ОписанияБиблиотек = СтандартныеПодсистемыПовтИсп.ОписанияПодсистем().ПоИменам; + + ОписаниеПроцедур = Новый Соответствие; + + Для Каждого ОписаниеБиблиотеки Из СведенияОбОбновлении.ДеревоОбработчиков.Строки Цикл + Если ОписанияБиблиотек[ОписаниеБиблиотеки.ИмяБиблиотеки].РежимВыполненияОтложенныхОбработчиков <> "Параллельно" Тогда + ОбновлениеИнформационнойБазыСлужебный.ОтметитьРегистрациюОтложенныхОбработчиковОбновления(ОписаниеБиблиотеки.ИмяБиблиотеки, Истина); + Продолжить; + КонецЕсли; + + ПараллельноСВерсии = ОписанияБиблиотек[ОписаниеБиблиотеки.ИмяБиблиотеки].ПараллельноеОтложенноеОбновлениеСВерсии; + ЕстьДанныеДляРегистрации = Ложь; + + Для Каждого ОписаниеВерсии Из ОписаниеБиблиотеки.Строки Цикл + Если ОписаниеВерсии.НомерВерсии = "*" Тогда + Продолжить; + КонецЕсли; + + Если ЗначениеЗаполнено(ПараллельноСВерсии) + И ОбщегоНазначенияКлиентСервер.СравнитьВерсии(ОписаниеВерсии.НомерВерсии, ПараллельноСВерсии) < 0 Тогда + Продолжить; + КонецЕсли; + + ЕстьДанныеДляРегистрации = Истина; + Для Каждого ОписаниеОбработчика Из ОписаниеВерсии.Строки Цикл + Очередь = ОписаниеОбработчика.ОчередьОтложеннойОбработки; + ПроцедураЗаполнения = ОписаниеОбработчика.ПроцедураЗаполненияДанныхОбновления; + ИмяОбработчика = ОписаниеОбработчика.ИмяОбработчика; + + ОписаниеПроцедуры = Новый Структура; + ОписаниеПроцедуры.Вставить("Статус", ""); + ОписаниеПроцедуры.Вставить("Очередь", Очередь); + ОписаниеПроцедуры.Вставить("ПроцедураЗаполнения", ПроцедураЗаполнения); + ОписаниеПроцедуры.Вставить("ИмяОбработчика", ИмяОбработчика); + + ОписаниеПроцедур.Вставить(ИмяОбработчика, ОписаниеПроцедуры); + КонецЦикла; + КонецЦикла; + + КонецЦикла; + + СведенияОбОбновлении.ОписаниеПроцедурЗаполнения = ОписаниеПроцедур; + ОбновлениеИнформационнойБазыСлужебный.ЗаписатьСведенияОбОбновленииИнформационнойБазы(СведенияОбОбновлении); + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") Тогда + МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); + МодульОбменДаннымиСервер.СброситьЗначениеКонстантыСИзменениямиДляПодчиненногоУзлаРИБСФильтрами(); + КонецЕсли; + + ХодРегистрации = Новый Структура; + ХодРегистрации.Вставить("НачальныйПрогресс", ПрогрессВыполнения); + ХодРегистрации.Вставить("ВсегоПроцедур", ОписаниеПроцедур.Количество()); + ХодРегистрации.Вставить("ВыполненоПроцедур", 0); + + ОписаниеПотоков = Новый СписокЗначений; + + // Снятие блокировки информационной базы и выполнение регистрации на плане обмена. + ОбновлениеИнформационнойБазыСлужебный.РазблокироватьИБ(БлокировкаИБ); + + Возврат ПроверкаЗапускФоновыхЗаданий(); + +КонецФункции + +&НаКлиенте +Процедура Подключаемый_ПроверитьВыполнениеЗаданий() + + Результат = ПроверкаЗапускФоновыхЗаданий(); + + Если Результат.Статус <> "Выполняется" Тогда + ЗаполнитьЗначенияСвойств(РезультатВыполненияОбновления, Результат); + ВыполнитьОбработкуОповещения(ОбработкаЗавершения, РезультатВыполненияОбновления); + ОтключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеЗаданий"); + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Функция ПроверкаЗапускФоновыхЗаданий() + + РезультатПроверки = Новый Структура; + РезультатПроверки.Вставить("Статус", ""); + РезультатПроверки.Вставить("КраткоеПредставлениеОшибки", ""); + РезультатПроверки.Вставить("ПодробноеПредставлениеОшибки", ""); + + ЕстьАктивныеПотоки = Ложь; + Если ОписаниеПотоков.Количество() = 0 Тогда + Для ТекущийПоток = 1 По МаксимальноПотоков Цикл + Результат = ЗапускЗадания(); + + ЗаполнитьЗначенияСвойств(РезультатПроверки, Результат); + Если Результат.Статус = "Ошибка" Тогда + ОтменитьЗаданияПриОшибке(); + Возврат РезультатПроверки; + ИначеЕсли Результат.Статус = "Выполняется" Тогда + ЕстьАктивныеПотоки = Истина; + КонецЕсли; + + ОписаниеПотока = Новый Структура; + ОписаниеПотока.Вставить("ИдентификаторЗадания", Результат.ИдентификаторЗадания); + ОписаниеПотока.Вставить("Статус", Результат.Статус); + ОписаниеПотоков.Добавить(ОписаниеПотока); + КонецЦикла; + + Если ЕстьАктивныеПотоки Тогда + РезультатПроверки.Статус = "Выполняется"; + Иначе + РезультатПроверки.Статус = "Выполнено"; + ОбновлениеИнформационнойБазыСлужебный.ОтметитьРегистрациюОтложенныхОбработчиковОбновления(); + КонецЕсли; + Возврат РезультатПроверки; + КонецЕсли; + + ЗаполнениеДанныхЗавершено = Истина; + Для Каждого ЭлементОписаниеПотока Из ОписаниеПотоков Цикл + ОписаниеПотока = ЭлементОписаниеПотока.Значение; + Если ОписаниеПотока.Статус = "Выполнено" Тогда + Продолжить; + КонецЕсли; + + ЗаполнениеДанныхЗавершено = Ложь; + Результат = ПроверкаЗадания(ОписаниеПотока); + + Если Результат.Статус = "Ошибка" Тогда + ОтменитьЗаданияПриОшибке(); + ЗаполнитьЗначенияСвойств(РезультатПроверки, Результат); + Возврат РезультатПроверки; + КонецЕсли; + + КонецЦикла; + + Если ЗаполнениеДанныхЗавершено Тогда + РезультатПроверки.Статус = "Выполнено"; + ОбновлениеИнформационнойБазыСлужебный.ОтметитьРегистрациюОтложенныхОбработчиковОбновления(); + Иначе + РезультатПроверки.Статус = "Выполняется"; + КонецЕсли; + + // Обновление прогресса. + СведенияОбОбновлении = ОбновлениеИнформационнойБазыСлужебный.СведенияОбОбновленииИнформационнойБазы(); + ВыполненоПроцедур = 0; + Для Каждого ЭлементОписаниеПроцедуры Из СведенияОбОбновлении.ОписаниеПроцедурЗаполнения Цикл + ОписаниеПроцедуры = ЭлементОписаниеПроцедуры.Значение; + Если ОписаниеПроцедуры.Статус = "Выполнено" Тогда + ВыполненоПроцедур = ВыполненоПроцедур + 1; + КонецЕсли; + КонецЦикла; + ХодРегистрации.ВыполненоПроцедур = ВыполненоПроцедур; + Если ХодРегистрации.ВсегоПроцедур <> 0 Тогда + ПрибавкаПрогресса = ХодРегистрации.ВыполненоПроцедур / ХодРегистрации.ВсегоПроцедур * (100 - ХодРегистрации.НачальныйПрогресс); + Иначе + ПрибавкаПрогресса = 0; + КонецЕсли; + ПрогрессВыполнения = ПрогрессВыполнения + ПрибавкаПрогресса; + + Возврат РезультатПроверки; + +КонецФункции + +&НаСервере +Функция ПроверкаЗадания(ОписаниеПотока) + + Результат = ДлительныеОперации.ОперацияВыполнена(ОписаниеПотока.ИдентификаторЗадания); + + Если Результат.Статус = "Выполнено" Тогда + ОписаниеПотока.Статус = "Выполнено"; + КонецЕсли; Возврат Результат; КонецФункции +&НаСервере +Функция ЗапускЗадания() + + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Фоновая регистрация данных отложенного обновления'"); + ПараметрыВыполнения.ОжидатьЗавершение = 0; + + Результат = ДлительныеОперации.ВыполнитьВФоне("ОбновлениеИнформационнойБазыСлужебный.ЗапускРегистрацииДанныхОтложенногоОбновления", + Неопределено, ПараметрыВыполнения); + + Возврат Результат; + +КонецФункции + +&НаСервере +Процедура ОтменитьЗаданияПриОшибке() + + Если ОписаниеПотоков.Количество() = 0 Тогда + Возврат; + КонецЕсли; + + Для Каждого ЭлементОписаниеПотока Из ОписаниеПотоков Цикл + ОписаниеПотока = ЭлементОписаниеПотока.Значение; + Если ОписаниеПотока.Статус = "Выполнено" Тогда + Продолжить; + КонецЕсли; + + ДлительныеОперации.ОтменитьВыполнениеЗадания(ОписаниеПотока.ИдентификаторЗадания); + КонецЦикла; + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Обработчики условных вызовов в другие подсистемы. @@ -639,14 +873,15 @@ ПараметрыФормы.Вставить("ВремяНачалаОбновления", ВремяНачалаОбновления); ПараметрыФормы.Вставить("ВремяОкончанияОбновления", ВремяОкончанияОбновления); - ИмяОткрываемойФормы = "Обработка.РезультатыОбновленияПрограммы.Форма.СообщениеОНеудачномОбновлении"; - Если ЗначениеЗаполнено(ИмяПланаОбмена) Тогда МодульОбменДаннымиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОбменДаннымиКлиент"); ИмяОткрываемойФормы = МодульОбменДаннымиКлиент.ИмяФормыСообщенияОНеудачномОбновлении(); ПараметрыФормы.Вставить("ИмяПланаОбмена", ИмяПланаОбмена); + Иначе + ИмяОткрываемойФормы = "Обработка.РезультатыОбновленияПрограммы.Форма.СообщениеОНеудачномОбновлении"; + КонецЕсли; ОткрытьФорму(ИмяОткрываемойФормы, ПараметрыФормы,,,,,ОписаниеОповещения); @@ -678,77 +913,11 @@ КонецПроцедуры -&НаСервере -Процедура ПродвинутьИндикаторПрогресса(ЗаданиеВыполнено, ИнформацияОбОшибке) +&НаСервереБезКонтекста +Процедура УстановитьПараметрыСеансаИзФоновогоЗадания(ПараметрыКлиентаНаСервере) - Если ФоновоеЗаданиеИдентификатор <> Неопределено Тогда - - Попытка - ЗаданиеВыполнено = ДлительныеОперации.ЗаданиеВыполнено(ФоновоеЗаданиеИдентификатор); - Задание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(ФоновоеЗаданиеИдентификатор); - Если Задание <> Неопределено Тогда - ВсеСообщения = Задание.ПолучитьСообщенияПользователю(Истина); - Если ВсеСообщения <> Неопределено Тогда - ПрибавкаНаШагеПрогресса = 0; - Для каждого СообщениеПользователю Из ВсеСообщения Цикл - ВсеСообщения = Задание.ПолучитьСообщенияПользователю(Истина); - Если ВсеСообщения = Неопределено Тогда - ВсеСообщения = Новый Массив; - КонецЕсли; - - НачалоСтроки = "ШагПрогресса="; - Если СтрНачинаетсяС(СообщениеПользователю.Текст, НачалоСтроки) Тогда - ПрибавкаНаШагеПрогресса = 0; - ОписаниеНовогоШага = Сред(СообщениеПользователю.Текст, СтрДлина(НачалоСтроки) + 1); - ПозицияРазделителя = СтрНайти(ОписаниеНовогоШага, "/"); - Если ПозицияРазделителя > 0 Тогда - НачалоШагаПрогресса = Число( Лев(ОписаниеНовогоШага, ПозицияРазделителя - 1)); - ДлинаШагаПрогресса = Число(Сред(ОписаниеНовогоШага, ПозицияРазделителя + 1)); - КонецЕсли; - КонецЕсли; - - НачалоСтроки = "ПрибавкаНаШагеПрогресса="; - Если СтрНачинаетсяС(СообщениеПользователю.Текст, НачалоСтроки) Тогда - ПрибавкаНаШагеПрогресса = Число(Сред(СообщениеПользователю.Текст, СтрДлина(НачалоСтроки) + 1)); - КонецЕсли; - КонецЦикла; - // Продвигаем индикатор прогресса. - НовыйПрогрессВыполнения = НачалоШагаПрогресса + ПрибавкаНаШагеПрогресса/100*ДлинаШагаПрогресса; - Если ПрогрессВыполнения < НовыйПрогрессВыполнения Тогда - ПрогрессВыполнения = НовыйПрогрессВыполнения; - КонецЕсли; - КонецЕсли; - КонецЕсли; - Исключение - - Задание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(ФоновоеЗаданиеИдентификатор); - Если Задание <> Неопределено Тогда - ВсеСообщения = Задание.ПолучитьСообщенияПользователю(Истина); - Если ВсеСообщения <> Неопределено Тогда - Для Каждого СообщениеПользователю Из ВсеСообщения Цикл - - НачалоСтроки = "ОбменДанными="; - Если СтрНачинаетсяС(СообщениеПользователю.Текст, НачалоСтроки) Тогда - ИмяПланаОбмена = Сред(СообщениеПользователю.Текст, СтрДлина(НачалоСтроки) + 1); - КонецЕсли; - - КонецЦикла; - - КонецЕсли; - - КонецЕсли; - - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КонецПопытки; - - КонецЕсли; + ПараметрыСеанса.ПараметрыКлиентаНаСервере = ПараметрыКлиентаНаСервере; КонецПроцедуры -&НаСервере -Процедура УстановитьПараметрыСеансаИзФоновогоЗадания() - РезультатОбновления = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); - ПараметрыСеанса.ПараметрыКлиентаНаСервере = РезультатОбновления.ПараметрыКлиентаНаСервере; -КонецПроцедуры - #КонецОбласти diff --git a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОтложенногоОбновленияИБ/Form.form b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОтложенногоОбновленияИБ/Form.form index e5d41788c..a80e49359 100644 --- a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОтложенногоОбновленияИБ/Form.form +++ b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОтложенногоОбновленияИБ/Form.form @@ -34,9 +34,7 @@ 84 true - 7 true - 2 true @@ -44,61 +42,22 @@ - - ГруппаИнформацияОбОбновлении - 85 - - ИнформацияОбновлениеЗавершено - 86 - - <key>ru</key> - <value>Версия программы успешно обновлена на версию %1 + <items xsi:type="form:Decoration"> + <name>ИнформацияОбновлениеЗавершено</name> + <id>86</id> + <title> + <key>ru</key> + <value>Версия программы успешно обновлена на версию %1 %2 в %3 за %4.</value> - - true - true - - true - - - ИнформацияОбновлениеЗавершеноExtendedTooltip - 131 - Label - true - true - - Left - - - - ИнформацияОбновлениеЗавершеноКонтекстноеМеню - 87 - true - - Label - true - true - false - - Left - - + true true true - - <key>ru</key> - <value>Группа информация об обновлении</value> - - - ru - Группа информация об обновлении - - ГруппаИнформацияОбОбновленииExtendedTooltip - 130 + ИнформацияОбновлениеЗавершеноExtendedTooltip + 131 Label true true @@ -106,14 +65,16 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + ИнформацияОбновлениеЗавершеноКонтекстноеМеню + 87 + true + + Label + 60 + true + + Left true @@ -125,10 +86,6 @@ ru Группа обновление завершено - - ru - Группа обновление завершено - false ГруппаОбновлениеЗавершеноExtendedTooltip @@ -156,149 +113,124 @@ ОбновлениеВФайловойБазе 30 - - ГруппаНеобходимыеДействия - 31 - - КартинкаИнформацияФайловаяБаза - 32 - - <key>ru</key> - <value>Картинка действие выполняется</value> - - true - true - - true - - - КартинкаИнформацияФайловаяБазаExtendedTooltip - 136 - Label - true - true - - Left - - - - КартинкаИнформацияФайловаяБазаКонтекстноеМеню - 33 - true - - 7 + + КартинкаИнформацияФайловаяБаза + 32 + + <key>ru</key> + <value>Картинка действие выполняется</value> + + true + true + + true + + + КартинкаИнформацияФайловаяБазаExtendedTooltip + 136 + Label true - 2 true - - - CommonPicture.Предупреждение32 - + + Left - + + + КартинкаИнформацияФайловаяБазаКонтекстноеМеню + 33 + true + + true + true + + + CommonPicture.Предупреждение32 + + + + + ГруппаИнформацияФайловаяБаза + 34 - ГруппаИнформацияФайловаяБаза - 34 - - ГруппаЗапуститьОтложенноеОбновление - 71 - - ЗаголовокИнформацииФайловаяБаза - 35 - - <key>ru</key> - <value>Необходимо выполнить дополнительные процедуры обработки данных. + <name>ГруппаЗапуститьОтложенноеОбновление</name> + <id>71</id> + <items xsi:type="form:Decoration"> + <name>ЗаголовокИнформацииФайловаяБаза</name> + <id>35</id> + <title> + <key>ru</key> + <value>Необходимо выполнить дополнительные процедуры обработки данных. Работа с этими данными в программе временно ограничена.</value> - - true - true - - true - - - ЗаголовокИнформацииФайловаяБазаExtendedTooltip - 139 - Label - true - true - - Left - - - - ЗаголовокИнформацииФайловаяБазаКонтекстноеМеню - 36 - true - + + true + true + + true + + + ЗаголовокИнформацииФайловаяБазаExtendedTooltip + 139 Label true true Left - Center - - - ОткрытьСписокОтложенныхОбработчиков1 - 81 - - <key>ru</key> - <value>Список процедур обработки данных</value> - - true - true - - true - - - ОткрытьСписокОтложенныхОбработчиков1ExtendedTooltip - 140 - Label - true - true - - Left - - - Hyperlink - Form.Command.ОткрытьСписокОтложенныхОбработчиков - Normal - Auto + + + ЗаголовокИнформацииФайловаяБазаКонтекстноеМеню + 36 + true + + Label + true + + Left + Center + + + + ОткрытьСписокОтложенныхОбработчиков1 + 81 + + <key>ru</key> + <value>Список процедур обработки данных</value> + + true + true + + true + + + ОткрытьСписокОтложенныхОбработчиков1ExtendedTooltip + 140 + Label true true - UserCmds - Auto - - - Выполнить - 70 - true - true - - true - - - ВыполнитьExtendedTooltip - 141 - Label - true - true - - Left - - - UsualButton - Form.Command.ВыполнитьОбновление - Normal - PictureAndText - true - true - UserCmds - Auto - - - ИнформацияПодсказкаФайловаяБаза - 39 + + Left + + + Hyperlink + Form.Command.ОткрытьСписокДополнительныхПроцедурОбработкиДанных + Normal + Auto + true + true + UserCmds + Auto + + + Выполнить + 70 + true + true + + true + + + ВыполнитьExtendedTooltip + 141 <key>ru</key> <value>Обработка данных может занять длительное время @@ -306,132 +238,21 @@ Во время обработки может наблюдаться существенное замедление работы пользователей. Рекомендуется выполнять обработку в период наименьшей активности пользователей.</value> - true - true - - true - - - ИнформацияПодсказкаФайловаяБазаExtendedTooltip - 142 - Label - true - true - - Left - - - - ИнформацияПодсказкаФайловаяБазаКонтекстноеМеню - 40 - true - Label - true - true - - Left - 3 - - - true - true - - true - - - <key>ru</key> - <value>Группа запустить отложенное обновление</value> - - - ru - Группа запустить отложенное обновление - - - ГруппаЗапуститьОтложенноеОбновлениеРасширеннаяПодсказка - 138 - Label - true true Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаПодсказкаРасположениеФормы - 72 - - ИнформацияПодсказка - 11 - - <key>ru</key> - <value>Сведения о результатах обновления версии программы можно также открыть из раздела "Администрирование" - "Поддержка и обслуживание".</value> - - true - true - - true - - - ИнформацияПодсказкаExtendedTooltip - 144 - Label - true - true - - Left - - - - ИнформацияПодсказкаКонтекстноеМеню - 12 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - 2 - - - true - true - - true - - - ГруппаПодсказкаРасположениеФормыРасширеннаяПодсказка - 143 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + UsualButton + Form.Command.ВыполнитьОбновление + Normal + PictureAndText + true + true + UserCmds + ShowBottom + Auto true true @@ -440,15 +261,15 @@ <key>ru</key> - <value>Группа информация о прогрессе</value> + <value>Группа запустить отложенное обновление</value> ru - Группа информация файловая база + Группа запустить отложенное обновление - ГруппаИнформацияФайловаяБазаExtendedTooltip - 137 + ГруппаЗапуститьОтложенноеОбновлениеРасширеннаяПодсказка + 138 Label true true @@ -471,9 +292,17 @@ true + + <key>ru</key> + <value>Группа информация о прогрессе</value> + + + ru + Группа информация файловая база + - ГруппаНеобходимыеДействияExtendedTooltip - 135 + ГруппаИнформацияФайловаяБазаExtendedTooltip + 137 Label true true @@ -483,8 +312,8 @@ UsualGroup + Vertical Auto - NormalSeparation true true Auto @@ -508,8 +337,10 @@ Page - Vertical auto + + Style.ФонУправляющегоПоля + false @@ -543,9 +374,7 @@ 122 true - 7 true - 2 true @@ -586,7 +415,6 @@ true Label - true true Left @@ -616,7 +444,7 @@ Hyperlink - Form.Command.ОткрытьСписокОтложенныхОбработчиков + Form.Command.ОткрытьСписокДополнительныхПроцедурОбработкиДанных Normal Auto true @@ -666,6 +494,9 @@ Page + + Style.ФонУправляющегоПоля + false @@ -702,11 +533,8 @@ 4 true - 7 true - 3 true - false CommonPicture.ДлительнаяОперация48 @@ -745,7 +573,6 @@ true Label - true true Left @@ -779,7 +606,6 @@ true Label - true true @@ -884,8 +710,11 @@ true Label - true + 60 true + + Style.ПоясняющийТекст + Left 3 @@ -899,7 +728,7 @@ 100 <key>ru</key> - <value>Поэтому рекомендуется выполнять обработку в период наименьшей активности пользователей.</value> + <value>Поэтому рекомендуется настроить расписание так, чтобы выполнять обработку в период наименьшей активности пользователей.</value> true true @@ -922,9 +751,11 @@ true Label - true + 60 true - false + + Style.ПоясняющийТекст + Left @@ -1047,111 +878,6 @@ Auto - - ГруппаПодсказкаРасположениеФормыПриОбновлении - 76 - - Отступ - 110 - true - true - - true - - - ОтступExtendedTooltip - 161 - Label - true - true - - Left - - - - ОтступКонтекстноеМеню - 111 - true - - Label - true - true - true - - Left - - - - ПодсказкаГдеНайтиЭтуФорму - 77 - - <key>ru</key> - <value>Сведения о результатах обновления версии программы можно также открыть из раздела "Администрирование" - "Поддержка и обслуживание".</value> - - true - true - - true - - - ПодсказкаГдеНайтиЭтуФормуExtendedTooltip - 162 - Label - true - true - - Left - - - - ПодсказкаГдеНайтиЭтуФормуКонтекстноеМеню - 78 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - 2 - - - true - true - - true - - - <key>ru</key> - <value>Группа подсказка расположение формы при обновлении</value> - - - ru - Группа подсказка расположение формы при обновлении - - - ГруппаПодсказкаРасположениеФормыПриОбновленииРасширеннаяПодсказка - 160 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - true true @@ -1232,6 +958,9 @@ Page Vertical + + Style.ФонУправляющегоПоля + false @@ -1242,19 +971,15 @@ ГруппаОтложенноеОбновлениеЗавершено 42 - КартинкаИнформация1 + КартинкаЗавершено 43 - - <key>ru</key> - <value>Картинка информация</value> - true true true - КартинкаИнформация1ExtendedTooltip + КартинкаЗавершеноРасширеннаяПодсказка 165 Label true @@ -1264,13 +989,11 @@ - КартинкаИнформация1КонтекстноеМеню + КартинкаЗавершеноКонтекстноеМеню 44 true - 7 true - 2 true @@ -1308,7 +1031,6 @@ true Label - true true Left @@ -1318,7 +1040,7 @@ ГруппаПереходКСпискуОтложенныхОбработчиков 56 - ИнформацияОтложенноеОбновлениеЗавершено1 + ИнформацияОтложенноеОбновлениеЗавершено 50 <key>ru</key> @@ -1330,7 +1052,7 @@ <common>true</common> </userVisible> <extendedTooltip> - <name>ИнформацияОтложенноеОбновлениеЗавершено1ExtendedTooltip</name> + <name>ИнформацияОтложенноеОбновлениеЗавершеноРасширеннаяПодсказка</name> <id>169</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> @@ -1340,12 +1062,12 @@ </extInfo> </extendedTooltip> <contextMenu> - <name>ИнформацияОтложенноеОбновлениеЗавершено1КонтекстноеМеню</name> + <name>ИнформацияОтложенноеОбновлениеЗавершеноКонтекстноеМеню</name> <id>51</id> <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> + <maxWidth>60</maxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -1374,7 +1096,7 @@ </extInfo> </extendedTooltip> <type>Hyperlink</type> - <commandName>Form.Command.ОткрытьСписокОтложенныхОбработчиков</commandName> + <commandName>Form.Command.ОткрытьСписокДополнительныхПроцедурОбработкиДанных</commandName> <buttonImportance>Normal</buttonImportance> <representation>Auto</representation> <autoMaxWidth>true</autoMaxWidth> @@ -1445,7 +1167,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <handlers> @@ -1456,75 +1177,6 @@ <horizontalAlign>Left</horizontalAlign> </extInfo> </items> - <items xsi:type="form:Decoration"> - <name>ОтступОбновлениеЗавершено</name> - <id>112</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <extendedTooltip> - <name>ОтступОбновлениеЗавершеноРасширеннаяПодсказка</name> - <id>171</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>ОтступОбновлениеЗавершеноКонтекстноеМеню</name> - <id>113</id> - <autoFill>true</autoFill> - </contextMenu> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <verticalStretch>true</verticalStretch> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </items> - <items xsi:type="form:Decoration"> - <name>ИнформацияПодсказкаРасположениеФормы</name> - <id>74</id> - <title> - <key>ru</key> - <value>Сведения о результатах обновления версии программы можно также открыть из раздела "Администрирование" - "Поддержка и обслуживание".</value> - - true - true - - true - - - ИнформацияПодсказкаРасположениеФормыРасширеннаяПодсказка - 172 - Label - true - true - - Left - - - - ИнформацияПодсказкаРасположениеФормыКонтекстноеМеню - 75 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - 2 - - true true @@ -1613,6 +1265,7 @@ ru Статус обновления + true СтатусОбновленияExtendedTooltip 133 @@ -1628,17 +1281,16 @@ Auto - Bottom - true - - ФормаКоманднаяПанель - -1 - - ФормаЗакрыть - 14 + + ГруппаПодвал + 180 + + ПодсказкаГдеНайтиЭтуФорму + 74 <key>ru</key> - <value>Закрыть</value> + <value>Сведения о результатах обновления версии программы можно также открыть +из раздела <b>Администрирование </>- <b>Поддержка и обслуживание</>.</value> true true @@ -1646,8 +1298,8 @@ true - ФормаЗакрытьExtendedTooltip - 127 + ПодсказкаГдеНайтиЭтуФормуРасширеннаяПодсказка + 172 Label true true @@ -1655,16 +1307,118 @@ Left - Form.Command.ЗакрытьФорму - Auto - true + + ПодсказкаГдеНайтиЭтуФормуКонтекстноеМеню + 75 + true + + true + Label + 50 + true + + Style.ПоясняющийТекст + + + Left + 2 + + + + ГруппаКоманднаяПанель + 182 + + ФормаЗакрыть + 14 + + <key>ru</key> + <value>Закрыть</value> + + true + true + + true + + + ФормаЗакрытьExtendedTooltip + 127 + Label + true + true + + Left + + + Form.StandardCommand.Close + true + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Группа командная панель</value> + + Bottom + + ГруппаКоманднаяПанельРасширеннаяПодсказка + 183 + Label + true + true + + Left + + + CommandBar + + Right + FormCommandPanelGlobalCommands + + + true + true + + true + + + <key>ru</key> + <value>Группа подвал</value> + + true + + ГруппаПодвалРасширеннаяПодсказка + 181 + Label true true - UserCmds - Auto - + + Left + + + UsualGroup + + Bottom + Auto + NormalSeparation + true + true + Auto + Auto + + + None + false + + ФормаКоманднаяПанель + -1 Right - true NotificationProcessing @@ -1680,7 +1434,6 @@ Abort Cancel - Close CustomizeForm Help Ignore @@ -1717,7 +1470,7 @@ ИБФайловая <key>ru</key> - <value>ИБФайловая</value> + <value>ИБ Файловая</value> 2 @@ -1817,34 +1570,16 @@ true - - ЗакрытьФорму - - <key>ru</key> - <value>Закрыть</value> - - 1 - - true - - - - ЗакрытьФорму - - - DontUse - Auto - ВыполнитьОбновление <key>ru</key> - <value>Выполнить</value> + <value>Выполнить процедуры обработки данных</value> 3 ru - Выполнить дополнительные процедуры обновления + Выполнить дополнительные процедуры обработки данных true @@ -1861,15 +1596,15 @@ Auto - ОткрытьСписокОтложенныхОбработчиков + ОткрытьСписокДополнительныхПроцедурОбработкиДанных <key>ru</key> - <value>Открыть список отложенных обработчиков</value> + <value>Открыть список дополнительных процедур обработки данных</value> 4 ru - Открыть список отложенных обработчиков + Открыть список дополнительных процедур обработки данных true diff --git a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОтложенногоОбновленияИБ/Help/ru.html b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОтложенногоОбновленияИБ/Help/ru.html index ea01467d1..3a1d64b6e 100644 --- a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОтложенногоОбновленияИБ/Help/ru.html +++ b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОтложенногоОбновленияИБ/Help/ru.html @@ -2,17 +2,30 @@

      Предназначена для индикации хода и просмотра результатов отложенного обновления ИБ.

      При обновлении версии ИБ в программе предусмотрена возможность часть данных обрабатывать отложенно, во время работы программы, в фоновом режиме. В этом случае документы, которые еще не были обработаны, будут недоступны. При попытке открыть такой документ программа выдает сообщение, что действия с документом временно запрещены, так как не завершен переход на новую версию программы. Некоторые отчеты также могут быть недоступны. Программа при попытке сформировать отчет выдает сообщение, что отчет может содержать некорректные данные, так как не завершен переход на новую версию программы.

      Открывается автоматически при входе в программу после обновления ИБ одновременно с открытием окна Описание изменений программы (Что нового в конфигурации).

      -

      Сведения о результатах отложенного обновления версии программы также открыть из раздела Администрирование - Поддержка и обслуживание по команде Результаты обновления и дополнительная обработка данных, а также из окна Что нового в конфигурации, перейдя по ссылке Необходимо выполнить дополнительные процедуры обработки данных. После начала выполнения ссылка меняет значение на Выполняются дополнительные процедуры обработки данных.

      +

      Сведения о результатах отложенного обновления версии программы также открыть из раздела Администрирование - Поддержка и обслуживание - Результаты обновления программы по команде Результаты обновления и дополнительная обработка данных, а также из окна Что нового в конфигурации, перейдя по ссылке Необходимо выполнить дополнительные процедуры обработки данных. После начала выполнения ссылка меняет значение на Выполняются дополнительные процедуры обработки данных.

      Информация о проведенном обновлении ИБ

      • Указывается, на какую версию проведено обновление, дата и время обновления, длительность процесса обновления.

      Просмотр журнала регистрации

      • Перейдите по ссылке Техническая информация о результатах обновления, для того чтобы просмотреть события обновления ИБ в журнале регистрации.

      Выполнение процедур обработки данных

      • Если процедуры обработки данных еще не были запущены, то ссылка принимает значение Список процедур обработки данных. Перейдите по ссылке, для того чтобы просмотреть список дополнительных процедур.
      • Нажмите Выполнить, для того чтобы начать обработку данных.
      • Если выполнение начато, то ссылка указывает, сколько процедур выполнено. -
      • После завершения дополнительных процедур обработки данных указывается дата и время их завершения. Ссылка принимает значение Все процедуры обновления выполнены успешно (в скобках указывается количество выполненных процедур).

      Настройка расписания обработки данных

      +
    • После завершения дополнительных процедур обработки данных указывается дата и время их завершения. Ссылка принимает значение Все процедуры обновления выполнены успешно (в скобках указывается количество выполненных процедур).
    • Установка приоритета

      +
      • +
        Программа позволяет ускорить обработку данных. Для этого предусмотрена возможность повышения приоритета обработки данных над работой пользователей в программе. Это уменьшает время, затрачиваемое на отложенное обновление.
        +
      • +
        С помощью переключателя Приоритет можно установить, что во время отложенной обработки данных важнее:
        +
        • +
          Работа пользователей - данные обрабатываются медленнее, меньше нагрузка на сервер и влияние на работу пользователей в программе;
          +
        • +
          Обработка данных - выше скорость обработки данных, но выше и нагрузка на сервер, в связи с этим происходит существенное замедление работы пользователей в программе.
          +
          • +
            При установке приоритета за обработкой данных убирается задержка между запусками регламентного задания по отложенной обработке данных.
            +
          • +
            Рекомендуется использовать в тех случаях, когда необходимо быстрее получить доступ к обрабатываемым данным.
      • +
        При повышении приоритета выполнения дополнительной процедуры обработки данных также повышается приоритет тех процедур, от которых она зависит.

      Настройка расписания обработки данных

      • Как правило, обработка данных может занимать длительное время (от нескольких минут до нескольких часов в зависимости от объема введенных данных в программе и производительности компьютера), а также во время ее выполнения может наблюдаться существенное замедление работы пользователей. Поэтому рекомендуется выполнять обработку в период наименьшей активности пользователей.
      • В клиент-серверном режиме можно настроить расписание регламентного задания Отложенное обновление ИБ. Для того чтобы настроить выполнение регламентного задания Отложенное обновление ИБ, нажмите Настроить расписание. -
      • Также можно настроить регламентное задание из общего списка регламентных и фоновых заданий по соответствующей команде раздела Администрирование - Поддержка и обслуживание.  

      Проверка блокировки регламентных заданий

      +
    • Также можно настроить регламентное задание из общего списка регламентных и фоновых заданий по соответствующей команде раздела Администрирование - Поддержка и обслуживание - Регламентные операции.  
    • Проверка блокировки регламентных заданий

      • Если в клиент-серверном режиме установлена блокировка регламентных заданий, то отложенное обновление не будет выполняться.
      • diff --git a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОтложенногоОбновленияИБ/Module.bsl b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОтложенногоОбновленияИБ/Module.bsl index ceeb3a94e..bc4db6d23 100644 --- a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОтложенногоОбновленияИБ/Module.bsl +++ b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ИндикацияХодаОтложенногоОбновленияИБ/Module.bsl @@ -8,12 +8,11 @@ Возврат; КонецЕсли; - ОбновлениеИнформационнойБазыПереопределяемый.ПриПолученииПоясненияДляРезультатовОбновленияПрограммы(ТекстПодсказки); + НастройкиПодсистемы = ОбновлениеИнформационнойБазыСлужебный.НастройкиПодсистемы(); + ТекстПодсказки = НастройкиПодсистемы.ПоясненияДляРезультатовОбновления; Если Не ПустаяСтрока(ТекстПодсказки) Тогда - Элементы.ИнформацияПодсказка.Заголовок = ТекстПодсказки; Элементы.ПодсказкаГдеНайтиЭтуФорму.Заголовок = ТекстПодсказки; - Элементы.ИнформацияПодсказкаРасположениеФормы.Заголовок = ТекстПодсказки; КонецЕсли; Если Не Пользователи.ЭтоПолноправныйПользователь(, Истина) Тогда @@ -67,7 +66,7 @@ СведенияОбОбновлении = ОбновлениеИнформационнойБазыСлужебный.СведенияОбОбновленииИнформационнойБазы(); ШаблонЗаголовка = НСтр("ru = 'Дополнительные процедуры обработки данных завершены %1 в %2'"); - Элементы.ИнформацияОтложенноеОбновлениеЗавершено1.Заголовок = + Элементы.ИнформацияОтложенноеОбновлениеЗавершено.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонЗаголовка, Формат(СведенияОбОбновлении.ВремяОкончаниеОтложенногоОбновления, "ДЛФ=D"), Формат(СведенияОбОбновлении.ВремяОкончаниеОтложенногоОбновления, "ДЛФ=T")); @@ -172,11 +171,6 @@ #Область ОбработчикиКомандФормы -&НаКлиенте -Процедура ЗакрытьФорму(Команда) - Закрыть(); -КонецПроцедуры - &НаКлиенте Процедура ВыполнитьОбновление(Команда) @@ -223,22 +217,14 @@ Если Не ЭтоПолноправныйПользователь Или ОткрытиеИзПанелиАдминистрирования Тогда КлючСохраненияПоложенияОкна = "ФормаДляОбычногоПользователя"; - Элементы.ГруппаПодсказкаРасположениеФормы.Видимость = Ложь; - Элементы.ГруппаПодсказкаРасположениеФормыПриОбновлении.Видимость = Ложь; - Элементы.ИнформацияПодсказкаРасположениеФормы.Видимость = Ложь; - Элементы.ОтступОбновлениеЗавершено.Видимость = Ложь; - - Если Не Пользователи.РолиДоступны("ПросмотрЖурналаРегистрации") Тогда - Элементы.ГиперссылкаОсновноеОбновление.Видимость = Ложь; - КонецЕсли; + Элементы.ПодсказкаГдеНайтиЭтуФорму.Видимость = Ложь; + Элементы.ГиперссылкаОсновноеОбновление.Видимость = Пользователи.РолиДоступны("ПросмотрЖурналаРегистрации"); Иначе КлючСохраненияПоложенияОкна = "ФормаДляАдминистратора"; КонецЕсли; - Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЗавершениеРаботыПользователей") Тогда - Элементы.СнятьБлокировкуРегламентныхЗаданий.Видимость = Ложь; - КонецЕсли; + Элементы.СнятьБлокировкуРегламентныхЗаданий.Видимость = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЗавершениеРаботыПользователей"); КонецПроцедуры @@ -362,7 +348,7 @@ ШаблонЗаголовка = НСтр("ru = 'Дополнительные процедуры обработки данных завершены %1 в %2'"); ТекстСообщения = СообщениеОРезультатахОбновления(СведенияОбОбновлении); - Элементы.ИнформацияОтложенноеОбновлениеЗавершено1.Заголовок = + Элементы.ИнформацияОтложенноеОбновлениеЗавершено.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонЗаголовка, Формат(СведенияОбОбновлении.ВремяОкончаниеОтложенногоОбновления, "ДЛФ=D"), Формат(СведенияОбОбновлении.ВремяОкончаниеОтложенногоОбновления, "ДЛФ=T")); @@ -401,11 +387,11 @@ Иначе ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Все процедуры обновления выполнены успешно (%1)'"), УспешноВыполненоОбработчиков); КонецЕсли; - Элементы.КартинкаИнформация1.Картинка = БиблиотекаКартинок.Успешно32; + Элементы.КартинкаЗавершено.Картинка = БиблиотекаКартинок.Успешно32; Иначе ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Не все процедуры удалось выполнить (выполнено %1 из %2)'"), УспешноВыполненоОбработчиков, ВсегоОбработчиков); - Элементы.КартинкаИнформация1.Картинка = БиблиотекаКартинок.Ошибка32; + Элементы.КартинкаЗавершено.Картинка = БиблиотекаКартинок.Ошибка32; КонецЕсли; Возврат ТекстСообщения; diff --git a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенноеОбновлениеНеЗавершено/Form.form b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенноеОбновлениеНеЗавершено/Form.form index 91edceee1..2bf189ece 100644 --- a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенноеОбновлениеНеЗавершено/Form.form +++ b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенноеОбновлениеНеЗавершено/Form.form @@ -34,107 +34,29 @@ 4 true - 3 - true - 2 - true CommonPicture.Предупреждение32 - - ГруппаПояснение - 16 - - Сообщение - 6 - - <key>ru</key> - <value>Дополнительные процедуры обработки данных на предыдущую версию не завершены. + <items xsi:type="form:Decoration"> + <name>Сообщение</name> + <id>6</id> + <title> + <key>ru</key> + <value>Дополнительные процедуры обработки данных на предыдущую версию не завершены. Рекомендуется выполнить восстановление из резервной копии и дождаться их выполнения, в противном случае это может привести к ошибкам при обновлении или неработоспособности программы.</value> - - true - true - - true - - - СообщениеРасширеннаяПодсказка - 8 - Label - true - true - - Left - - - - СообщениеКонтекстноеМеню - 7 - true - - Label - true - true - - Left - - - - Подсказка - 13 - - <key>ru</key> - <value>Посмотреть статус выполнения дополнительных процедур обработки данных -можно в разделе "Администрирование" - "Поддержка и обслуживание", гиперссылка -"Результаты обновления и дополнительная обработка данных".</value> - - true - true - - true - - - ПодсказкаРасширеннаяПодсказка - 15 - Label - true - true - - Left - - - - ПодсказкаКонтекстноеМеню - 14 - true - - Label - true - true - - Left - - + true true true - - <key>ru</key> - <value>Группа пояснение</value> - - - ru - Группа пояснение - - ГруппаПояснениеРасширеннаяПодсказка - 17 + СообщениеРасширеннаяПодсказка + 8 Label true true @@ -142,14 +64,14 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + СообщениеКонтекстноеМеню + 7 + true + + Label + + Left true @@ -161,6 +83,7 @@ ru Группа картинка и текст + 5 ГруппаКартинкаИТекстРасширеннаяПодсказка 2 @@ -174,75 +97,178 @@ UsualGroup Auto + NormalSeparation true true Auto Auto - Bottom - true + + ГруппаПояснение + 16 + + Подсказка + 13 + + <key>ru</key> + <value>Посмотреть статус выполнения дополнительных процедур обработки данных +можно в разделе <b>Администрирование </>- <b>Поддержка и обслуживание</>.</value> + + true + true + + true + + + ПодсказкаРасширеннаяПодсказка + 15 + Label + true + true + + Left + + + + ПодсказкаКонтекстноеМеню + 14 + true + + true + Label + + Style.ПоясняющийТекст + + + Left + + + + КоманднаяПанель + 18 + + ФормаЗавершить + 11 + true + true + + true + + + ФормаЗавершитьРасширеннаяПодсказка + 12 + Label + true + true + + Left + + + Form.Command.Завершить + Auto + true + UserCmds + Auto + + + ФормаПродолжить + 9 + true + true + + true + + + ФормаПродолжитьРасширеннаяПодсказка + 10 + Label + true + true + + Left + + + Form.Command.ПродолжитьОбновление + Normal + Auto + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Командная панель</value> + + Bottom + + КоманднаяПанельРасширеннаяПодсказка + 19 + Label + true + true + + Left + + + CommandBar + + Right + Form + + + true + true + + true + + + ГруппаПояснениеРасширеннаяПодсказка + 17 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + + None + false ФормаКоманднаяПанель -1 - - ФормаЗавершить - 11 - true - true - - true - - - ФормаЗавершитьРасширеннаяПодсказка - 12 - Label - true - true - - Left - - - Form.Command.Завершить - Auto - true - true - true - UserCmds - Auto - - - ФормаПродолжить - 9 - true - true - - true - - - ФормаПродолжитьРасширеннаяПодсказка - 10 - Label - true - true - - Left - - - Form.Command.ПродолжитьОбновление - Normal - Auto - true - true - UserCmds - Auto - Right OnCreateAtServer ПриСозданииНаСервере + Abort + Cancel + Close + CustomizeForm + Help + Ignore + No + OK + RestoreValues + Retry + SaveValues + Yes LockWholeInterface true true diff --git a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенноеОбновлениеНеЗавершено/Module.bsl b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенноеОбновлениеНеЗавершено/Module.bsl index 8152942fc..e0f31c22e 100644 --- a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенноеОбновлениеНеЗавершено/Module.bsl +++ b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенноеОбновлениеНеЗавершено/Module.bsl @@ -3,18 +3,15 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - ТекстПодсказки = ""; - ОбновлениеИнформационнойБазыПереопределяемый.ПриПолученииПоясненияДляРезультатовОбновленияПрограммы(ТекстПодсказки); + НастройкиПодсистемы = ОбновлениеИнформационнойБазыСлужебный.НастройкиПодсистемы(); + ТекстПодсказки = НастройкиПодсистемы.ПоясненияДляРезультатовОбновления; Если Не ПустаяСтрока(ТекстПодсказки) Тогда Элементы.Подсказка.Заголовок = ТекстПодсказки; КонецЕсли; - ПараметрыСообщения = Новый Структура; - ПараметрыСообщения.Вставить("КартинкаСообщения", Неопределено); - ПараметрыСообщения.Вставить("ТекстСообщения", ""); - ПараметрыСообщения.Вставить("ЗапрещатьПродолжение", Ложь); - ОбновлениеИнформационнойБазыПереопределяемый.ПриОпределенииПараметровСообщенияОНевыполненныхОтложенныхОбработчиках(ПараметрыСообщения); + НастройкиПодсистемы = ОбновлениеИнформационнойБазыСлужебный.НастройкиПодсистемы(); + ПараметрыСообщения = НастройкиПодсистемы.ПараметрыСообщенияОНевыполненныхОтложенныхОбработчиках; Если ЗначениеЗаполнено(ПараметрыСообщения.ТекстСообщения) Тогда Элементы.Сообщение.Заголовок = ПараметрыСообщения.ТекстСообщения; diff --git a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенныеОбработчики/Form.form b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенныеОбработчики/Form.form index fe793de10..860eb7306 100644 --- a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенныеОбработчики/Form.form +++ b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенныеОбработчики/Form.form @@ -15,7 +15,7 @@ 54 <key>ru</key> - <value>Отбор</value> + <value>Показывать</value> true true @@ -50,7 +50,7 @@ Left true - 15 + 20 true true false @@ -148,6 +148,7 @@ Left true + 20 true true false @@ -221,6 +222,32 @@ Auto InAdditionalSubmenu + + ЗапуститьВыделенный + 123 + true + true + + true + + + ЗапуститьВыделенныйРасширеннаяПодсказка + 124 + Label + true + true + + Left + + + Form.Command.ЗапуститьВыделенный + Normal + Auto + true + true + UserCmds + Auto + Запустить 93 @@ -275,17 +302,75 @@ Auto InAdditionalSubmenu - - ВПлановомПорядке - 106 + + ГруппаПорядок + 110 + + ВПлановомПорядке + 106 + true + true + + true + + + ВПлановомПорядкеРасширеннаяПодсказка + 107 + Label + true + true + + Left + + + Form.Command.ВПлановомПорядке + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ЖелательноБыстрее + 108 + true + true + + true + + + ЖелательноБыстрееРасширеннаяПодсказка + 109 + Label + true + true + + Left + + + Form.Command.ЖелательноБыстрее + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + true true true + + <key>ru</key> + <value>Группа порядок</value> + - ВПлановомПорядкеРасширеннаяПодсказка - 107 + ГруппаПорядокРасширеннаяПодсказка + 111 Label true true @@ -293,26 +378,19 @@ Left - Form.Command.ВПлановомПорядке - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu + - ЖелательноБыстрее - 108 + ВывестиСписок + 118 true true true - ЖелательноБыстрееРасширеннаяПодсказка - 109 + ВывестиСписокРасширеннаяПодсказка + 119 Label true true @@ -320,14 +398,13 @@ Left - Form.Command.ЖелательноБыстрее + Form.Item.ОтложенныеОбработчики.StandardCommand.OutputList Normal Auto true true UserCmds Auto - InAdditionalSubmenu true true @@ -351,6 +428,7 @@ CommandBar Left + Form true @@ -840,6 +918,32 @@ ОтложенныеОбработчикиКонтекстноеМеню 35 + + КонтекстноеМенюЗапуститьВыделенный + 125 + true + true + + true + + + КонтекстноеМенюЗапуститьВыделенныйРасширеннаяПодсказка + 126 + Label + true + true + + Left + + + Form.Command.ЗапуститьВыделенный + Normal + Auto + true + true + UserCmds + Auto + КонтекстноеМенюПриостановить 85 @@ -892,17 +996,73 @@ UserCmds Auto - - ВПлановомПорядкеКонтекстноеМеню - 104 + + ОтложенныеОбработчикиКонтекстноеМенюПорядок + 112 + + ВПлановомПорядкеКонтекстноеМеню + 104 + true + true + + true + + + ВПлановомПорядкеКонтекстноеМенюРасширеннаяПодсказка + 105 + Label + true + true + + Left + + + Form.Command.ВПлановомПорядке + Normal + Auto + true + true + UserCmds + Auto + + + ЖелательноБыстрееКонтекстноеМеню + 102 + true + true + + true + + + ЖелательноБыстрееКонтекстноеМенюРасширеннаяПодсказка + 103 + Label + true + true + + Left + + + Form.Command.ЖелательноБыстрее + Normal + Auto + true + true + UserCmds + Auto + true true true + + <key>ru</key> + <value>Отложенные обработчики контекстное меню порядок</value> + - ВПлановомПорядкеКонтекстноеМенюРасширеннаяПодсказка - 105 + ОтложенныеОбработчикиКонтекстноеМенюПорядокРасширеннаяПодсказка + 113 Label true true @@ -910,7 +1070,27 @@ Left - Form.Command.ВПлановомПорядке + + + + ОтложенныеОбработчикиКонтекстноеМенюКопироватьВБуферОбмена + 114 + true + true + + true + + + ОтложенныеОбработчикиКонтекстноеМенюКопироватьВБуферОбменаРасширеннаяПодсказка + 115 + Label + true + true + + Left + + + Form.Item.ОтложенныеОбработчики.StandardCommand.CopyToClipboard Normal Auto true @@ -919,16 +1099,16 @@ Auto - ЖелательноБыстрееКонтекстноеМеню - 102 + ОтложенныеОбработчикиКонтекстноеМенюВыделитьВсе + 116 true true true - ЖелательноБыстрееКонтекстноеМенюРасширеннаяПодсказка - 103 + ОтложенныеОбработчикиКонтекстноеМенюВыделитьВсеРасширеннаяПодсказка + 117 Label true true @@ -936,7 +1116,7 @@ Left - Form.Command.ЖелательноБыстрее + Form.Item.ОтложенныеОбработчики.StandardCommand.SelectAll Normal Auto true @@ -1007,9 +1187,7 @@ Left true - true 4 - true false true true @@ -1021,7 +1199,7 @@ ГиперссылкаПрогрессОбновления - 110 + 120 <key>ru</key> <value>Отчет по прогрессу отложенного обновления</value> @@ -1033,7 +1211,7 @@ </userVisible> <extendedTooltip> <name>ГиперссылкаПрогрессОбновленияРасширеннаяПодсказка</name> - <id>112</id> + <id>122</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> @@ -1043,11 +1221,10 @@ </extendedTooltip> <contextMenu> <name>ГиперссылкаПрогрессОбновленияКонтекстноеМеню</name> - <id>111</id> + <id>121</id> <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <handlers> @@ -1091,9 +1268,7 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> <extInfo xsi:type="form:LabelDecorationExtInfo"> <handlers> <event>Click</event> @@ -1130,10 +1305,8 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <height>2</height> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> <textColor xsi:type="core:ColorRef"> <color>Style.ПоясняющийТекст</color> </textColor> @@ -1173,7 +1346,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -1280,7 +1452,6 @@ <excludedCommands>Abort</excludedCommands> <excludedCommands>Cancel</excludedCommands> <excludedCommands>Close</excludedCommands> - <excludedCommands>Help</excludedCommands> <excludedCommands>Ignore</excludedCommands> <excludedCommands>No</excludedCommands> <excludedCommands>OK</excludedCommands> @@ -1288,7 +1459,6 @@ <excludedCommands>Retry</excludedCommands> <excludedCommands>SaveValues</excludedCommands> <excludedCommands>Yes</excludedCommands> - <width>100</width> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoUrl>true</autoUrl> @@ -1522,6 +1692,26 @@ <common>true</common> </edit> </columns> + <columns> + <name>Очередь</name> + <title> + <key>ru</key> + <value>Очередь</value> + + 12 + + Number + + 10 + + + + true + + + true + + ВремяНачалаОтложенногоОбновления @@ -1600,7 +1790,7 @@ ИБФайловая <key>ru</key> - <value>ИБФайловая</value> + <value>ИБ Файловая</value> 7 @@ -1683,6 +1873,101 @@ true + + ОбъектыОбработчикаАдрес + + <key>ru</key> + <value>Объекты обработчика адрес</value> + + 12 + + String + + + + true + + + true + + + + ОбрабатываемыеДанные + + <key>ru</key> + <value>Обрабатываемые данные</value> + + 13 + + ValueTable + + + true + + + true + + + ИмяОбъекта + + <key>ru</key> + <value>Имя объекта</value> + + 1 + + String + + 255 + + + + true + + + true + + + + Обработчик + + <key>ru</key> + <value>Обработчик</value> + + 2 + + String + + 255 + + + + true + + + true + + + + Очередь + + <key>ru</key> + <value>Очередь</value> + + 3 + + Number + + 10 + + + + true + + + true + + + ЗакрытьФорму @@ -1846,6 +2131,28 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> + <formCommands> + <name>ЗапуститьВыделенный</name> + <title> + <key>ru</key> + <value>Запустить процедуру</value> + + 8 + + ru + Запустить выделенную процедуру + + + true + + + + ЗапуститьВыделенный + + + DontUse + Auto + diff --git a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенныеОбработчики/Help/ru.html b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенныеОбработчики/Help/ru.html index 0db9fabf9..f9a14dbb5 100644 --- a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенныеОбработчики/Help/ru.html +++ b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенныеОбработчики/Help/ru.html @@ -8,8 +8,17 @@
        Статус выполнения - краткая информация о том, как прошло выполнение дополнительной обработки данных.

      Выделите процедуру обработки данных, для того чтобы просмотреть подробную информацию о ходе выполнения этой процедуры внизу списка.

      Отборы

      • -
        в поле Статус выберите нужный статус выполнения ("Все процедуры", "Ошибка", "Выполняется", "Выполнено");
        +
        в поле Статус выберите нужный статус выполнения ("Все процедуры", "Ошибка", "Выполняется", "Выполнено", "Желательно быстрее");
      • в поле Найти наберите слово или его часть.

      Выполнение дополнительных процедур обработки данных

      -
      • Нажмите Запустить, для того чтобы начать выполнение дополнительных процедур обработки данных. Кнопка видна, если процедуры дополнительной обработки данных еще не выполнялись или в списке имеются невыполненные процедуры.

      Просмотр журнала регистрации

      -
      • Для того чтобы ознакомиться с подробностями выполнения дополнительных процедур обработки данных в журнале регистрации, после их выполнения перейдите по ссылке Техническая информация о результатах обработки данных.
      \ No newline at end of file +
      • Нажмите Запустить, для того чтобы начать выполнение дополнительных процедур обработки данных. Кнопка видна, если процедуры дополнительной обработки данных еще не выполнялись или в списке имеются невыполненные процедуры. +
      • Если процедура завершилась с ошибкой, становится доступной команда Запустить процедуру для ее повторного выполнения.

      Управление ходом дополнительных процедур обработки данных

      +
      • +
        Если процедуры еще выполняются, можно Остановить или Возобновить выполнение процедуры дополнительной обработки данных с помощью команд контекстного меню по правой кнопке мыши или меню Еще.
        +
      • +
        Пользоваться этой возможностью рекомендуется только после консультации со службой поддержки.

      Установка очередности выполнения процедур обработки данных

      +
      • +
        С помощью флажков В плановом порядке и Желательно быстрее меню Еще или контекстного меню по правой кнопки мыши.

      Просмотр журнала регистрации

      +
      • Для того чтобы ознакомиться с подробностями выполнения дополнительных процедур обработки данных в журнале регистрации, после их выполнения перейдите по ссылке Техническая информация о результатах обработки данных.

      Отчет по прогрессу отложенного обновления

      +
      • +
        С помощью ссылки Отчет по прогрессу отложенного обновления можно просмотреть статистические данные о выполнении процедур отложенного обновления.
      \ No newline at end of file diff --git a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенныеОбработчики/Module.bsl b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенныеОбработчики/Module.bsl index 42156e66a..e36a0c4f3 100644 --- a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенныеОбработчики/Module.bsl +++ b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ОтложенныеОбработчики/Module.bsl @@ -19,24 +19,31 @@ Элементы.ГруппаПовторныйЗапуск.Видимость = Ложь; Элементы.Запустить.Видимость = Ложь; Элементы.Приостановить.Видимость = Ложь; - Элементы.ВПлановомПорядке.Видимость = Ложь; - Элементы.ЖелательноБыстрее.Видимость = Ложь; + Элементы.ГруппаПорядок.Видимость = Ложь; Элементы.КонтекстноеМенюПриостановить.Видимость = Ложь; Элементы.КонтекстноеМенюЗапустить.Видимость = Ложь; - Элементы.ВПлановомПорядкеКонтекстноеМеню.Видимость = Ложь; - Элементы.ЖелательноБыстрееКонтекстноеМеню.Видимость = Ложь; + Элементы.ОтложенныеОбработчикиКонтекстноеМенюПорядок.Видимость = Ложь; + ИначеЕсли ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда + Элементы.ГруппаПорядок.Видимость = Ложь; КонецЕсли; Если Не ИБФайловая Тогда ОбновлениеВыполняется = (СведенияОбОбновлении.ОтложенноеОбновлениеЗавершеноУспешно = Неопределено); КонецЕсли; + Если Не ОбщегоНазначенияКлиентСервер.РежимОтладки() + Или СведенияОбОбновлении.ОтложенноеОбновлениеЗавершеноУспешно = Истина Тогда + Элементы.ЗапуститьВыделенный.Видимость = Ложь; + Элементы.КонтекстноеМенюЗапуститьВыделенный.Видимость = Ложь; + КонецЕсли; + Если Не Пользователи.РолиДоступны("ПросмотрЖурналаРегистрации") Тогда Элементы.ГиперссылкаОтложенноеОбновление.Видимость = Ложь; КонецЕсли; Статус = "ВсеПроцедуры"; + ЗаполнитьТаблицуОбрабатываемыхДанных(СведенияОбОбновлении); СформироватьТаблицуОтложенныхОбработчиков(, Истина); Элементы.ГиперссылкаПрогрессОбновления.Видимость = ПараллельныйРежимИспользуется; @@ -80,6 +87,15 @@ Элементы.Приостановить.Доступность = Ложь; КонецЕсли; + Если Не ОбновлениеВыполняется + И Элемент.ТекущиеДанные.Статус <> "Выполнено" Тогда + Элементы.ЗапуститьВыделенный.Доступность = Истина; + Элементы.КонтекстноеМенюЗапуститьВыделенный.Доступность = Истина; + Иначе + Элементы.ЗапуститьВыделенный.Доступность = Ложь; + Элементы.КонтекстноеМенюЗапуститьВыделенный.Доступность = Ложь; + КонецЕсли; + ОбновитьСтатусыКомандПриоритета(Элемент); КонецПроцедуры @@ -197,7 +213,7 @@ Возврат; КонецЕсли; - ИзменитьПриоритет("ПриоритетВПлановомПорядке", ТекущаяСтрока.Идентификатор); + ИзменитьПриоритет("ПриоритетВПлановомПорядке", ТекущаяСтрока.Идентификатор, ТекущаяСтрока.Очередь); ТекущаяСтрока.КартинкаПриоритет = БиблиотекаКартинок.ВосклицательныйЗнакСерый; ТекущаяСтрока.Приоритет = "Неопределено"; ОбновитьСтатусыКомандПриоритета(Элементы.ОтложенныеОбработчики); @@ -212,44 +228,21 @@ Возврат; КонецЕсли; - ИзменитьПриоритет("ПриоритетЖелательноБыстрее", ТекущаяСтрока.Идентификатор); + ИзменитьПриоритет("ПриоритетЖелательноБыстрее", ТекущаяСтрока.Идентификатор, ТекущаяСтрока.Очередь); ТекущаяСтрока.КартинкаПриоритет = БиблиотекаКартинок.ВосклицательныйЗнакСерый; ТекущаяСтрока.Приоритет = "Неопределено"; ОбновитьСтатусыКомандПриоритета(Элементы.ОтложенныеОбработчики); КонецПроцедуры -&НаСервере -Процедура ИзменитьПриоритет(Приоритет, Обработчик) +&НаКлиенте +Процедура ЗапуститьВыделенный(Команда) + Если Элементы.ОтложенныеОбработчики.ТекущиеДанные = Неопределено + Или Не ПолноправныйПользователь Тогда + Возврат; + КонецЕсли; - НачатьТранзакцию(); - Попытка - Блокировка = Новый БлокировкаДанных; - ЭлементБлокировки = Блокировка.Добавить("Константа.СведенияОбОбновленииИБ"); - Блокировка.Заблокировать(); - - СведенияОбОбновлении = ОбновлениеИнформационнойБазыСлужебный.СведенияОбОбновленииИнформационнойБазы(); - - Если СведенияОбОбновлении.УправлениеОтложеннымОбновлением.Свойство(Приоритет) - И ТипЗнч(СведенияОбОбновлении.УправлениеОтложеннымОбновлением[Приоритет]) = Тип("Массив") Тогда - Коллекция = СведенияОбОбновлении.УправлениеОтложеннымОбновлением[Приоритет]; - Если Коллекция.Найти(Обработчик) = Неопределено Тогда - Коллекция.Добавить(Обработчик); - КонецЕсли; - Иначе - Коллекция = Новый Массив; - Коллекция.Добавить(Обработчик); - СведенияОбОбновлении.УправлениеОтложеннымОбновлением.Вставить(Приоритет, Коллекция); - КонецЕсли; - - ОбновлениеИнформационнойБазыСлужебный.ЗаписатьСведенияОбОбновленииИнформационнойБазы(СведенияОбОбновлении); - - - ЗафиксироватьТранзакцию(); - Исключение - ОтменитьТранзакцию(); - ВызватьИсключение; - КонецПопытки; + ЗапуститьВыделеннуюПроцедуруДляОтладки(Элементы.ОтложенныеОбработчики.ТекущиеДанные.Идентификатор); КонецПроцедуры @@ -257,6 +250,43 @@ #Область СлужебныеПроцедурыИФункции +&НаСервере +Процедура ЗапуститьВыделеннуюПроцедуруДляОтладки(ИмяОбработчика) + + СведенияОбОбновлении = ОбновлениеИнформационнойБазыСлужебный.СведенияОбОбновленииИнформационнойБазы(); + + СведенияОбОбновлении.ОтложенноеОбновлениеЗавершеноУспешно = Неопределено; + СведенияОбОбновлении.ВремяОкончаниеОтложенногоОбновления = Неопределено; + Для Каждого СтрокаДереваБиблиотека Из СведенияОбОбновлении.ДеревоОбработчиков.Строки Цикл + Для Каждого СтрокаДереваВерсия Из СтрокаДереваБиблиотека.Строки Цикл + Для Каждого Обработчик Из СтрокаДереваВерсия.Строки Цикл + Если Обработчик.ИмяОбработчика <> ИмяОбработчика Тогда + Продолжить; + КонецЕсли; + + Обработчик.ЧислоПопыток = 0; + Если Обработчик.Статус = "Ошибка" Тогда + Обработчик.СтатистикаВыполнения.Очистить(); + Обработчик.Статус = "НеВыполнено"; + КонецЕсли; + КонецЦикла; + КонецЦикла; + КонецЦикла; + + Для Каждого ЦиклОбновления Из СведенияОбОбновлении.ПланОтложенногоОбновления Цикл + Если ЦиклОбновления.Свойство("ЗавершеноСОшибками") Тогда + ЦиклОбновления.Удалить("ЗавершеноСОшибками"); + КонецЕсли; + КонецЦикла; + + ОбновлениеИнформационнойБазыСлужебный.ЗаписатьСведенияОбОбновленииИнформационнойБазы(СведенияОбОбновлении); + + ОбновлениеИнформационнойБазыСлужебный.ВыполнитьОтложенноеОбновлениеСейчас(Неопределено); + + СведенияОбОбновлении = ОбновлениеИнформационнойБазыСлужебный.СведенияОбОбновленииИнформационнойБазы(); + +КонецПроцедуры + &НаКлиенте Процедура ОбновитьСтатусыКомандПриоритета(Элемент) @@ -467,10 +497,11 @@ Прогресс = ?(Прогресс > 100, 99, Прогресс); КонецЕсли; + СтрокаСписка.Очередь = СтрокаОбработчика.ОчередьОтложеннойОбработки; СтрокаСписка.Идентификатор = СтрокаОбработчика.ИмяОбработчика; - СтрокаСписка.Обработчик = ?(ЗначениеЗаполнено(СтрокаОбработчика.Комментарий), - СтрокаОбработчика.Комментарий, - ПроцедураОбработкиДанных(СтрокаОбработчика.ИмяОбработчика)); + СтрокаСписка.Обработчик = ?(ЗначениеЗаполнено(СтрокаОбработчика.Комментарий), + СтрокаОбработчика.Комментарий, + ПроцедураОбработкиДанных(СтрокаОбработчика.ИмяОбработчика)); ШаблонИнтервалВыполнения = НСтр("ru = '%1 - @@ -503,7 +534,7 @@ ОбработчикиНеВыполнялись = Ложь; ВыполненыВсеОбработчики = Ложь; ПредставлениеСтатусаВыполнения = НСтр("ru = 'Процедура ""%1"" обработки данных завершилась с ошибкой:'") + Символы.ПС + Символы.ПС; - ПредставлениеСтатусаВыполнения = СтрШаблон(ПредставлениеСтатусаВыполнения, СтрокаОбработчика.ИмяОбработчика); + ПредставлениеСтатусаВыполнения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ПредставлениеСтатусаВыполнения, СтрокаОбработчика.ИмяОбработчика); СтрокаСписка.ИнформацияОПроцедуреОбновления = ПредставлениеСтатусаВыполнения + СтрокаОбработчика.ИнформацияОбОшибке; СтрокаСписка.СтатусПредставление = НСтр("ru = 'Ошибка'"); СтрокаСписка.СтатусКартинка = БиблиотекаКартинок.Остановить; @@ -590,4 +621,168 @@ КонецФункции +&НаСервере +Процедура ЗаполнитьТаблицуОбрабатываемыхДанных(СведенияОбОбновлении) + + ОбъектыОбработчика = Новый Соответствие; + + ИсходныеДанные = СведенияОбОбновлении.ОбрабатываемыеДанные; + ТаблицаОбрабатываемыеДанные = РеквизитФормыВЗначение("ОбрабатываемыеДанные"); + Для Каждого ИнформацияПоОбработчику Из ИсходныеДанные Цикл + СписокОбъектов = Новый СписокЗначений; + Обработчик = ИнформацияПоОбработчику.Ключ; + ОбрабатываемыеОбъектыПООчередям = ИнформацияПоОбработчику.Значение; + Для Каждого ОбрабатываемыйОбъект Из ОбрабатываемыеОбъектыПООчередям Цикл + ИмяОбъекта = ОбрабатываемыйОбъект.Ключ; + Очередь = ОбрабатываемыйОбъект.Значение.Очередь; + СтрокаТаблицы = ТаблицаОбрабатываемыеДанные.Добавить(); + СтрокаТаблицы.Обработчик = Обработчик; + СтрокаТаблицы.ИмяОбъекта = ИмяОбъекта; + СтрокаТаблицы.Очередь = Очередь; + + СписокОбъектов.Добавить(ИмяОбъекта); + КонецЦикла; + ОбъектыОбработчика.Вставить(Обработчик, СписокОбъектов); + КонецЦикла; + + ОбъектыОбработчикаАдрес = ПоместитьВоВременноеХранилище(ОбъектыОбработчика, УникальныйИдентификатор); + ЗначениеВРеквизитФормы(ТаблицаОбрабатываемыеДанные, "ОбрабатываемыеДанные"); + +КонецПроцедуры + +&НаСервере +Функция ИзменяемыеОбработчики(Обработчик, ОбрабатываемыеДанныеТаблица, Очередь, ПриоритетЖелательноБыстрее, СписокОбъектов = Неопределено) + + ОбъектыОбработчиков = ПолучитьИзВременногоХранилища(ОбъектыОбработчикаАдрес); + Если СписокОбъектов = Неопределено Тогда + СписокОбъектов = ОбъектыОбработчиков[Обработчик]; + Если СписокОбъектов = Неопределено Тогда + Возврат Неопределено; + КонецЕсли; + КонецЕсли; + + ИзменяемыеОбработчики = Новый Массив; + ИзменяемыеОбработчики.Добавить(Обработчик); + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | втОбрабатываемыеОбъекты.Обработчик, + | втОбрабатываемыеОбъекты.ИмяОбъекта, + | втОбрабатываемыеОбъекты.Очередь + |ПОМЕСТИТЬ Таблица + |ИЗ + | &втОбрабатываемыеОбъекты КАК втОбрабатываемыеОбъекты + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | Таблица.Обработчик, + | Таблица.ИмяОбъекта, + | Таблица.Очередь + |ИЗ + | Таблица КАК Таблица + |ГДЕ + | Таблица.ИмяОбъекта В(&СписокОбъектов) + | И Таблица.Очередь < &НомерОчереди"; + Если Не ПриоритетЖелательноБыстрее Тогда + Запрос.Текст = СтрЗаменить(Запрос.Текст, "И Таблица.Очередь < &НомерОчереди", "И Таблица.Очередь > &НомерОчереди"); + КонецЕсли; + Запрос.УстановитьПараметр("СписокОбъектов", СписокОбъектов); + Запрос.УстановитьПараметр("НомерОчереди", Очередь); + Запрос.УстановитьПараметр("втОбрабатываемыеОбъекты", ОбрабатываемыеДанныеТаблица); + + Результат = Запрос.Выполнить().Выгрузить(); + + ТекущийОбработчик = Неопределено; + Для Каждого Строка Из Результат Цикл + Если ТекущийОбработчик = Строка.Обработчик Тогда + Продолжить; + КонецЕсли; + + Если Строка.Очередь = 1 Тогда + ИзменяемыеОбработчики.Добавить(Строка.Обработчик); + ТекущийОбработчик = Строка.Обработчик; + Продолжить; + КонецЕсли; + НовыйСписокОбъектов = Новый СписокЗначений; + СписокОбъектовТекущегоОбработчика = ОбъектыОбработчиков[Строка.Обработчик]; + Для Каждого ОбъектТекущегоОбработчика Из СписокОбъектовТекущегоОбработчика Цикл + Если СписокОбъектов.НайтиПоЗначению(ОбъектТекущегоОбработчика) = Неопределено Тогда + НовыйСписокОбъектов.Добавить(ОбъектТекущегоОбработчика); + КонецЕсли; + КонецЦикла; + + Если НовыйСписокОбъектов.Количество() = 0 Тогда + ИзменяемыеОбработчики.Добавить(Строка.Обработчик); + ТекущийОбработчик = Строка.Обработчик; + Продолжить; + КонецЕсли; + НовыйМассивИзменяемыхОбработчиков = ИзменяемыеОбработчики(Строка.Обработчик, + ОбрабатываемыеДанныеТаблица, + Строка.Очередь, + ПриоритетЖелательноБыстрее, + НовыйСписокОбъектов); + + Для Каждого ЭлементМассива Из НовыйМассивИзменяемыхОбработчиков Цикл + Если ИзменяемыеОбработчики.Найти(ЭлементМассива) = Неопределено Тогда + ИзменяемыеОбработчики.Добавить(ЭлементМассива); + КонецЕсли; + КонецЦикла; + + ТекущийОбработчик = Строка.Обработчик; + КонецЦикла; + + Возврат ИзменяемыеОбработчики; + +КонецФункции + +&НаСервере +Процедура ИзменитьПриоритет(Приоритет, Обработчик, Очередь) + + ОбрабатываемыеДанныеТаблица = РеквизитФормыВЗначение("ОбрабатываемыеДанные"); + Если Очередь > 1 Тогда + ИзменяемыеОбработчики = ИзменяемыеОбработчики(Обработчик, + ОбрабатываемыеДанныеТаблица, + Очередь, + Приоритет = "ПриоритетЖелательноБыстрее"); + Если ИзменяемыеОбработчики = Неопределено Тогда + ИзменяемыеОбработчики = Новый Массив; + ИзменяемыеОбработчики.Добавить(Обработчик); + КонецЕсли; + Иначе + ИзменяемыеОбработчики = Новый Массив; + ИзменяемыеОбработчики.Добавить(Обработчик); + КонецЕсли; + + НачатьТранзакцию(); + Попытка + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("Константа.СведенияОбОбновленииИБ"); + Блокировка.Заблокировать(); + + СведенияОбОбновлении = ОбновлениеИнформационнойБазыСлужебный.СведенияОбОбновленииИнформационнойБазы(); + + Если СведенияОбОбновлении.УправлениеОтложеннымОбновлением.Свойство(Приоритет) + И ТипЗнч(СведенияОбОбновлении.УправлениеОтложеннымОбновлением[Приоритет]) = Тип("Массив") Тогда + Коллекция = СведенияОбОбновлении.УправлениеОтложеннымОбновлением[Приоритет]; + Для Каждого ИзменяемыйОбработчик Из ИзменяемыеОбработчики Цикл + Если Коллекция.Найти(ИзменяемыйОбработчик) = Неопределено Тогда + Коллекция.Добавить(ИзменяемыйОбработчик); + КонецЕсли; + КонецЦикла; + Иначе + СведенияОбОбновлении.УправлениеОтложеннымОбновлением.Вставить(Приоритет, ИзменяемыеОбработчики); + КонецЕсли; + + ОбновлениеИнформационнойБазыСлужебный.ЗаписатьСведенияОбОбновленииИнформационнойБазы(СведенияОбОбновлении); + + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + +КонецПроцедуры + #КонецОбласти \ No newline at end of file diff --git a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ПредупреждениеБезопасности/Form.form b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ПредупреждениеБезопасности/Form.form index 8f60be6bc..1b42ff180 100644 --- a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ПредупреждениеБезопасности/Form.form +++ b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/ПредупреждениеБезопасности/Form.form @@ -30,9 +30,7 @@ 15 true - 3 true - 2 true @@ -75,7 +73,6 @@ true Label - true true false diff --git a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/СообщениеОНеудачномОбновлении/Form.form b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/СообщениеОНеудачномОбновлении/Form.form index 1619b9904..f0d155569 100644 --- a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/СообщениеОНеудачномОбновлении/Form.form +++ b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/СообщениеОНеудачномОбновлении/Form.form @@ -34,9 +34,7 @@ 9 true - 4 true - 2 true @@ -72,10 +70,7 @@ true Label - true true - true - true Left Top @@ -145,8 +140,6 @@ true Label - 34 - true true @@ -267,10 +260,14 @@ true true UserCmds + + StdPicture.OpenFile + Auto InAdditionalSubmenu Right + true OnOpen @@ -280,7 +277,6 @@ OnCreateAtServer ПриСозданииНаСервере - 70 LockWholeInterface true true @@ -377,7 +373,7 @@ ЗавершитьРаботу <key>ru</key> - <value>Завершить</value> + <value>Завершить работу</value> 1 @@ -421,7 +417,7 @@ ОткрытьВнешнююОбработку <key>ru</key> - <value>Открыть внешнюю обработку</value> + <value>Открыть внешнюю обработку...</value> 3 @@ -443,14 +439,14 @@
      - ДатаНачалаОбновления + ВремяНачалаОбновления Date - ДатаОкончанияОбновления + ВремяОкончанияОбновления Date diff --git a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/СообщениеОНеудачномОбновлении/Module.bsl b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/СообщениеОНеудачномОбновлении/Module.bsl index aec5fba12..3367be47a 100644 --- a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/СообщениеОНеудачномОбновлении/Module.bsl +++ b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Forms/СообщениеОНеудачномОбновлении/Module.bsl @@ -8,6 +8,15 @@ Возврат; КонецЕсли; + // Переход в режим открытия формы повторной синхронизации данных перед запуском + // с двумя вариантами "Синхронизировать и продолжить" и "Продолжить". + Если ЗначениеЗаполнено(Параметры.ПодробноеСообщениеОбОшибке) + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ОбменДанными") + И ОбщегоНазначения.ЭтоПодчиненныйУзелРИБ() Тогда + МодульОбменДаннымиСервер = ОбщегоНазначения.ОбщийМодуль("ОбменДаннымиСервер"); + МодульОбменДаннымиСервер.ВключитьПовторениеЗагрузкиСообщенияОбменаДаннымиПередЗапуском(); + КонецЕсли; + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Ошибка, , , Параметры.ПодробноеСообщениеОбОшибке); @@ -145,13 +154,22 @@ &НаСервере Функция ПодключитьВнешнююОбработку(АдресВоВременномХранилище) + Если Не Пользователи.ЭтоПолноправныйПользователь(, Истина) Тогда ВызватьИсключение НСтр("ru = 'Недостаточно прав доступа.'"); КонецЕсли; - ВыбраннаяОбработка = ПолучитьИзВременногоХранилища(АдресВоВременномХранилище); - ИмяВременногоФайла = ПолучитьИмяВременногоФайла("epf"); - ВыбраннаяОбработка.Записать(ИмяВременногоФайла); - Возврат ВнешниеОбработки.Создать(ИмяВременногоФайла, Ложь).Метаданные().ПолноеИмя(); + + Менеджер = ВнешниеОбработки; + + Если ОбщегоНазначения.ЕстьЗащитаОтОпасныхДействий() Тогда + ИмяОбработки = Менеджер.Подключить(АдресВоВременномХранилище, , Ложь, + ОбщегоНазначения.ОписаниеЗащитыБезПредупреждений()); + Иначе + ИмяОбработки = Менеджер.Подключить(АдресВоВременномХранилище, , Ложь); + КонецЕсли; + + Возврат Менеджер.Создать(ИмяОбработки, Ложь).Метаданные().ПолноеИмя(); + КонецФункции #КонецОбласти diff --git a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Help/ru.html b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Help/ru.html index 7c8ee4d28..c428c74d1 100644 --- a/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Help/ru.html +++ b/SSL/src/DataProcessors/РезультатыОбновленияПрограммы/Help/ru.html @@ -13,7 +13,7 @@
      вход пользователей в программу разрешен.
    • применяется для обновления "архивной" части данных ИБ, с которыми пользователи либо активно не работают, либо могут начинать свою работу, не дожидаясь завершения обработки.
    • Обновление информационной базы

      -
      • После обновления версии программы (в режиме Конфигуратор или с использованием помощника Обновление конфигурации в базовых версиях) требуется обязательно выполнить первый запуск программы от имени администратора. Во время запуска программа выполнит завершающие процедуры процесса обновления, которые могут занять продолжительное время (зависит от обновления и от производительности компьютера). +
        • После обновления версии программы (в режиме Конфигуратор или с использованием помощника Обновление конфигурации в базовых версиях) требуется обязательно выполнить первый запуск программы от имени администратора. Во время запуска программа выполнит завершающие процедуры процесса обновления, которые могут занять продолжительное время (зависит от обновления и от производительности компьютера).
        • Перед выполнением первого запуска программы рекомендуется завершить работу всех пользователей. Это необходимо для корректного обновления версии программы.
        • Если в программе еще работают пользователи, то в файловом режиме работы можно завершить активные сеансы пользователей, препятствующие обновлению, а также временно заблокировать вход в программу (в клиент-серверной версии запуск прерывается с сообщением о наличии активных сеансов). Перейдя по ссылке, можно просмотреть список активных пользователей и попросить их завершить свою работу, или продолжить выполнение обновления информационной базы по кнопке Завершить сеансы и повторить.
        • После этого начинается подготовка к завершению активных сеансов других пользователей, работающих с программой. В активных сеансах пользователей программа выводит сообщение о необходимости завершить свою работу. В указанное в сообщении время производится принудительное завершение работы программы и продолжается обновление версии. diff --git a/SSL/src/DataProcessors/СдвигГраницыИтогов/Forms/ОсновнаяФорма/Form.form b/SSL/src/DataProcessors/СдвигГраницыИтогов/Forms/ОсновнаяФорма/Form.form index 25a7e1b59..430490766 100644 --- a/SSL/src/DataProcessors/СдвигГраницыИтогов/Forms/ОсновнаяФорма/Form.form +++ b/SSL/src/DataProcessors/СдвигГраницыИтогов/Forms/ОсновнаяФорма/Form.form @@ -34,109 +34,31 @@ 16 true - 7 true - 3 true + Center CommonPicture.ДлительнаяОперация48 - - Группа2 - 18 - - Декорация1 - 9 - - <key>ru</key> - <value>Выполняется сдвиг границы рассчитанных итогов...</value> - - true - true - - true - - - Декорация1ExtendedTooltip - 11 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 10 - true - - Label - true - true - true - false - - System.DefaultGUIFont - Arial - 10.0 - true - false - false - false - - - Left - - - - Декорация3 - 5 - - <key>ru</key> - <value> -Пожалуйста, подождите, это может занять некоторое время.</value> - - true - true - - true - - - Декорация3ExtendedTooltip - 12 - Label - true - true - - Left - - - - Декорация3КонтекстноеМеню - 6 - true - - Label - true - true - true - false - - Left - - + + Надпись + 20 + + <key>ru</key> + <value><fontstyle -31><b>Выполняется сдвиг границы рассчитанных итогов...</></> +<fontstyle -31>Пожалуйста, подождите, это может занять некоторое время.</></value> + true true true - Группа2РасширеннаяПодсказка - 19 + НадписьРасширеннаяПодсказка + 22 Label true true @@ -144,14 +66,18 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + НадписьКонтекстноеМеню + 21 + true + + true + Label + true + Center + + Left + Center true @@ -159,6 +85,7 @@ true + 5 Группа1ExtendedTooltip 14 @@ -203,7 +130,6 @@ Retry SaveValues Yes - 70 LockOwner true true diff --git a/SSL/src/DataProcessors/СдвигГраницыИтогов/Forms/ОсновнаяФорма/Module.bsl b/SSL/src/DataProcessors/СдвигГраницыИтогов/Forms/ОсновнаяФорма/Module.bsl index d22dff0c1..69d1eff51 100644 --- a/SSL/src/DataProcessors/СдвигГраницыИтогов/Forms/ОсновнаяФорма/Module.bsl +++ b/SSL/src/DataProcessors/СдвигГраницыИтогов/Forms/ОсновнаяФорма/Module.bsl @@ -33,38 +33,33 @@ НастройкиЗапуска = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); НастройкиЗапуска.НаименованиеФоновогоЗадания = НСтр("ru = 'Итоги и агрегаты: Ускорение проведения документов и формирования отчетов'"); + НастройкиЗапуска.ОжидатьЗавершение = 0; Возврат ДлительныеОперации.ВыполнитьВФоне(ИмяМетода, Неопределено, НастройкиЗапуска); КонецФункции &НаКлиенте Процедура ДлительнаяОперацияЗавершениеКлиент(Операция, ДополнительныеПараметры) Экспорт - Результат = ДлительнаяОперацияЗавершениеСервер(Операция); - Обработчик = Новый ОписаниеОповещения("ДлительнаяОперацияПослеВыводаРезультата", ЭтотОбъект, Результат); - СтандартныеПодсистемыКлиент.ВывестиПредупреждение(ЭтотОбъект, Результат, Обработчик); -КонецПроцедуры - -&НаСервереБезКонтекста -Функция ДлительнаяОперацияЗавершениеСервер(Операция) - Результат = Новый Структура("ЗакрытьФорму, ВывестиПредупреждение", Истина, Ложь); - Если Операция = Неопределено Тогда - Результат.Вставить("Текст", НСтр("ru = 'Задание отменено'")); - ИначеЕсли Операция.Статус = "Выполнено" Тогда - РезультатОперации = ПолучитьИзВременногоХранилища(Операция.АдресРезультата); - ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(Результат, РезультатОперации, Истина); - ИначеЕсли Операция.Статус = "Ошибка" Тогда - Результат.Вставить("Текст", Операция.КраткоеПредставлениеОшибки); - Результат.Вставить("Подробно", Операция.ПодробноеПредставлениеОшибки); + + Обработчик = Новый ОписаниеОповещения("ДлительнаяОперацияПослеВыводаРезультата", ЭтотОбъект); + Если Операция.Статус = "Выполнено" Тогда + ПоказатьОповещениеПользователя(НСтр("ru = 'Оптимизация успешно завершена'"),,, БиблиотекаКартинок.Успешно32); + ВыполнитьОбработкуОповещения(Обработчик); + Иначе + Предупреждение = Новый Структура(); + Предупреждение.Вставить("Текст", Операция.КраткоеПредставлениеОшибки); + Предупреждение.Вставить("Подробно", Операция.ПодробноеПредставлениеОшибки); + СтандартныеПодсистемыКлиент.ВывестиПредупреждение(ЭтотОбъект, Предупреждение, Обработчик); КонецЕсли; - Возврат Результат; -КонецФункции + +КонецПроцедуры &НаКлиенте Процедура ДлительнаяОперацияПослеВыводаРезультата(ПустойПараметр, Результат) Экспорт Если ОписаниеОповещенияОЗакрытии <> Неопределено Тогда ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗакрытии, Истина); // Обход особенности вызова из ПриОткрытии. КонецЕсли; - Если Результат.ЗакрытьФорму И Открыта() Тогда + Если Открыта() Тогда Закрыть(Истина); КонецЕсли; КонецПроцедуры diff --git a/SSL/src/DataProcessors/СдвигГраницыИтогов/ManagerModule.bsl b/SSL/src/DataProcessors/СдвигГраницыИтогов/ManagerModule.bsl index 0a25911f8..fece2e751 100644 --- a/SSL/src/DataProcessors/СдвигГраницыИтогов/ManagerModule.bsl +++ b/SSL/src/DataProcessors/СдвигГраницыИтогов/ManagerModule.bsl @@ -6,13 +6,6 @@ Процедура ВыполнитьКоманду(ПараметрыКоманды, АдресХранилища) Экспорт УстановитьПривилегированныйРежим(Истина); УправлениеИтогамиИАгрегатамиСлужебный.РассчитатьИтоги(); - Результат = Новый Структура; - СтандартныеПодсистемыКлиентСервер.ВывестиОповещение( - Результат, - НСтр("ru = 'Оптимизация успешно завершена'"), - , - БиблиотекаКартинок.Успешно32); - ПоместитьВоВременноеХранилище(Результат, АдресХранилища); КонецПроцедуры #КонецОбласти diff --git a/SSL/src/DataProcessors/Сканирование/Forms/ВыборУстройстваСканирования/Form.form b/SSL/src/DataProcessors/Сканирование/Forms/ВыборУстройстваСканирования/Form.form index 38be04fd6..dd013bc63 100644 --- a/SSL/src/DataProcessors/Сканирование/Forms/ВыборУстройстваСканирования/Form.form +++ b/SSL/src/DataProcessors/Сканирование/Forms/ВыборУстройстваСканирования/Form.form @@ -32,6 +32,7 @@ Left true + 40 true true true diff --git a/SSL/src/DataProcessors/Сканирование/Forms/ВыборУстройстваСканирования/Module.bsl b/SSL/src/DataProcessors/Сканирование/Forms/ВыборУстройстваСканирования/Module.bsl index 5913500f1..32a59bbc4 100644 --- a/SSL/src/DataProcessors/Сканирование/Forms/ВыборУстройстваСканирования/Module.bsl +++ b/SSL/src/DataProcessors/Сканирование/Forms/ВыборУстройстваСканирования/Module.bsl @@ -25,12 +25,21 @@ &НаКлиенте Процедура ВыбратьСканер(Команда) + + Если ПустаяСтрока(ИмяУстройства) Тогда + ТекстСообщения = НСтр("ru = 'Не выбран сканер.'"); + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения, , "ИмяУстройства"); + Возврат; + КонецЕсли; + СистемнаяИнформация = Новый СистемнаяИнформация(); ОбщегоНазначенияВызовСервера.ХранилищеОбщихНастроекСохранить( "НастройкиСканирования/ИмяУстройства", СистемнаяИнформация.ИдентификаторКлиента, - ИмяУстройства); - ОбновитьПовторноИспользуемыеЗначения(); + ИмяУстройства, + , + , + Истина); Закрыть(ИмяУстройства); КонецПроцедуры diff --git a/SSL/src/DataProcessors/Сканирование/Forms/НастройкаСканирования/Form.form b/SSL/src/DataProcessors/Сканирование/Forms/НастройкаСканирования/Form.form index e10001dd9..e4da425bc 100644 --- a/SSL/src/DataProcessors/Сканирование/Forms/НастройкаСканирования/Form.form +++ b/SSL/src/DataProcessors/Сканирование/Forms/НастройкаСканирования/Form.form @@ -601,7 +601,6 @@ true Label - true true Left @@ -718,7 +717,6 @@ true Label - true true Left @@ -852,11 +850,6 @@ ru Для одностраничных изображений - - ru - Группа формат хранения одиночный - - true ГруппаФорматХраненияОдиночныйExtendedTooltip 60 @@ -935,11 +928,6 @@ ru Для многостраничных изображений - - ru - Группа формат хранения многостраничный - - true ГруппаФорматХраненияМногостраничныйExtendedTooltip 69 diff --git a/SSL/src/DataProcessors/Сканирование/Forms/НастройкаСканированияНаСеанс/Form.form b/SSL/src/DataProcessors/Сканирование/Forms/НастройкаСканированияНаСеанс/Form.form index f08be63fb..d943346d0 100644 --- a/SSL/src/DataProcessors/Сканирование/Forms/НастройкаСканированияНаСеанс/Form.form +++ b/SSL/src/DataProcessors/Сканирование/Forms/НастройкаСканированияНаСеанс/Form.form @@ -263,11 +263,6 @@ ru Основное - - ru - Группа основное - - true ГруппаОсновноеРасширеннаяПодсказка 62 @@ -375,7 +370,6 @@ true Label - true true Left @@ -492,7 +486,6 @@ true Label - true true Left @@ -626,11 +619,6 @@ ru Для одностраничных изображений - - ru - Группа формат хранения одиночный - - true ГруппаФорматХраненияОдиночныйExtendedTooltip 51 @@ -709,11 +697,6 @@ ru Для многостраничных изображений - - ru - Группа формат хранения многостраничный - - true ГруппаФорматХраненияМногостраничныйExtendedTooltip 60 diff --git a/SSL/src/DataProcessors/Сканирование/Forms/РезультатСканирования/Form.form b/SSL/src/DataProcessors/Сканирование/Forms/РезультатСканирования/Form.form index f51d3e84c..a4a14c8ab 100644 --- a/SSL/src/DataProcessors/Сканирование/Forms/РезультатСканирования/Form.form +++ b/SSL/src/DataProcessors/Сканирование/Forms/РезультатСканирования/Form.form @@ -332,12 +332,8 @@ 22 true - 2 true - 1 true - false - false false @@ -460,36 +456,6 @@ false - - Декорация1 - 57 - true - true - - true - - - Декорация1РасширеннаяПодсказка - 59 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 58 - true - - Label - true - true - - Left - - true true @@ -575,12 +541,7 @@ ru Группа сообщение - - ru - Группа сообщение - 2 - true ГруппаСообщениеExtendedTooltip 36 diff --git a/SSL/src/DataProcessors/Сканирование/Forms/РезультатСканирования/Module.bsl b/SSL/src/DataProcessors/Сканирование/Forms/РезультатСканирования/Module.bsl index c8edd1fc9..bdab1bb66 100644 --- a/SSL/src/DataProcessors/Сканирование/Forms/РезультатСканирования/Module.bsl +++ b/SSL/src/DataProcessors/Сканирование/Forms/РезультатСканирования/Module.bsl @@ -158,7 +158,7 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) УдалитьВременныеФайлы(ТаблицаФайлов); @@ -258,6 +258,7 @@ ПараметрыВыполнения = Новый Структура; ПараметрыВыполнения.Вставить("МассивФайловКопия", Новый Массив); ПараметрыВыполнения.Вставить("ФайлРезультата", ""); + ПараметрыВыполнения.Вставить("ОписаниеОповещенияОЗакрытии", Неопределено); Для Каждого Строка Из ТаблицаФайлов Цикл ПараметрыВыполнения.МассивФайловКопия.Добавить(Новый Структура("ПутьКФайлу", Строка.ПутьКФайлу)); @@ -269,6 +270,11 @@ ТаблицаФайлов.Очистить(); // Чтобы не удалились файлы в ПриЗакрытии. + Если ТипЗнч(ОписаниеОповещенияОЗакрытии) = Тип("ОписаниеОповещения") Тогда + ПараметрыВыполнения.Вставить("ОписаниеОповещенияОЗакрытии", ОписаниеОповещенияОЗакрытии); + ОписаниеОповещенияОЗакрытии = Неопределено; + КонецЕсли; + Закрыть(); РасширениеРезультата = Строка(ФорматХраненияОдностраничный); @@ -358,6 +364,7 @@ ПараметрыВыполнения = Новый Структура; ПараметрыВыполнения.Вставить("МассивФайловКопия", Новый Массив); ПараметрыВыполнения.Вставить("ФайлРезультата", ""); + ПараметрыВыполнения.Вставить("ОписаниеОповещенияОЗакрытии", Неопределено); Для Каждого Строка Из ТаблицаФайлов Цикл ПараметрыВыполнения.МассивФайловКопия.Добавить(Новый Структура("ПутьКФайлу", Строка.ПутьКФайлу)); @@ -365,6 +372,11 @@ ТаблицаФайлов.Очистить(); // Чтобы не удалились файлы в ПриЗакрытии. + Если ТипЗнч(ОписаниеОповещенияОЗакрытии) = Тип("ОписаниеОповещения") Тогда + ПараметрыВыполнения.Вставить("ОписаниеОповещенияОЗакрытии", ОписаниеОповещенияОЗакрытии); + ОписаниеОповещенияОЗакрытии = Неопределено; + КонецЕсли; + Закрыть(); // Здесь работаем со всеми картинками - объединяем их в один многостраничный файл. @@ -423,6 +435,12 @@ ТаблицаФайлов.Очистить(); // Чтобы не удалились файлы в ПриЗакрытии. + ОписаниеОповещенияОРезультатахСканирования = Неопределено; + Если ТипЗнч(ОписаниеОповещенияОЗакрытии) = Тип("ОписаниеОповещения") Тогда + ОписаниеОповещенияОРезультатахСканирования = ОписаниеОповещенияОЗакрытии; + ОписаниеОповещенияОЗакрытии = Неопределено; + КонецЕсли; + Закрыть(); РасширениеРезультата = Строка(ФорматХраненияОдностраничный); @@ -476,6 +494,9 @@ ПараметрыДобавления.ПолноеИмяФайла = ПутьКФайлуЛокальный; ПараметрыДобавления.ИмяСоздаваемогоФайла = ИмяФайла; Результат = ФайловыеФункцииСлужебныйКлиент.ДобавитьИзФайловойСистемыСРасширениемСинхронно(ПараметрыДобавления); + Если ТипЗнч(ОписаниеОповещенияОРезультатахСканирования) = Тип("ОписаниеОповещения") Тогда + ВыполнитьОбработкуОповещения(ОписаниеОповещенияОРезультатахСканирования, Результат); + КонецЕсли; Если Не Результат.ФайлДобавлен Тогда Если ЗначениеЗаполнено(Результат.ТекстОшибки) Тогда ПоказатьПредупреждение(, Результат.ТекстОшибки); @@ -551,6 +572,7 @@ Если ПараметрыОткрытия.ТекущийШаг = 2 Тогда Если ТипЗнч(Результат) = Тип("Строка") И Не ПустаяСтрока(Результат) Тогда ПараметрыОткрытия.ВыбранноеУстройство = Результат; + ИмяУстройстваСканирования = ПараметрыОткрытия.ВыбранноеУстройство; КонецЕсли; ПараметрыОткрытия.ТекущийШаг = 3; КонецЕсли; @@ -657,12 +679,22 @@ Если НЕ ПустаяСтрока(ПараметрыВыполнения.ФайлРезультата) Тогда УдалитьФайлы(ПараметрыВыполнения.ФайлРезультата); КонецЕсли; + + Если ТипЗнч(ПараметрыВыполнения.ОписаниеОповещенияОЗакрытии) = Тип("ОписаниеОповещения") Тогда + ВыполнитьОбработкуОповещения(ПараметрыВыполнения.ОписаниеОповещенияОЗакрытии, Результат); + КонецЕсли; + КонецПроцедуры &НаКлиенте Процедура ПринятьВсеКакОдинФайлЗавершение(Результат, ПараметрыВыполнения) Экспорт УдалитьВременныеФайлы(ПараметрыВыполнения.МассивФайловКопия); УдалитьФайлы(ПараметрыВыполнения.ФайлРезультата); + + Если ТипЗнч(ПараметрыВыполнения.ОписаниеОповещенияОЗакрытии) = Тип("ОписаниеОповещения") Тогда + ВыполнитьОбработкуОповещения(ПараметрыВыполнения.ОписаниеОповещенияОЗакрытии, Результат); + КонецЕсли; + КонецПроцедуры &НаСервере diff --git a/SSL/src/DataProcessors/СкрытиеКонфиденциальнойИнформации/Forms/Форма/Form.form b/SSL/src/DataProcessors/СкрытиеКонфиденциальнойИнформации/Forms/Форма/Form.form index 0a44ae6d2..77c56afc8 100644 --- a/SSL/src/DataProcessors/СкрытиеКонфиденциальнойИнформации/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/СкрытиеКонфиденциальнойИнформации/Forms/Форма/Form.form @@ -69,7 +69,6 @@ true Label - true 1 true @@ -144,7 +143,6 @@ true Label - true true Left @@ -234,7 +232,6 @@ true Label - true 5 true @@ -711,7 +708,6 @@ StartChoice ОбрабатываемыеОбъектыПравилоОбработкиНачалоВыбора - 15 true true true @@ -730,6 +726,7 @@ ru Правило обработки + false ГруппаПравилоОбработкиРасширеннаяПодсказка 38 @@ -1162,7 +1159,6 @@ ru Страницы значения - false СтраницыЗначенияРасширеннаяПодсказка 69 @@ -1852,7 +1848,6 @@ ru Даты - false ГруппаДатаРасширеннаяПодсказка 86 @@ -2002,9 +1997,7 @@ true Label - true true - true Click @@ -2019,6 +2012,7 @@ true + Right ГруппаИзменениеРежимаРасширеннаяПодсказка 135 @@ -2441,6 +2435,24 @@ true + + АдресХранилищаНастроек + + <key>ru</key> + <value>Адрес хранилища настроек</value> + + 18 + + String + + + + true + + + true + + ВыполнитьСкрытие diff --git a/SSL/src/DataProcessors/СкрытиеКонфиденциальнойИнформации/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/СкрытиеКонфиденциальнойИнформации/Forms/Форма/Module.bsl index a56f038b3..cf1ef56d2 100644 --- a/SSL/src/DataProcessors/СкрытиеКонфиденциальнойИнформации/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/СкрытиеКонфиденциальнойИнформации/Forms/Форма/Module.bsl @@ -16,6 +16,7 @@ ОбработкаОбъект = РеквизитФормыВЗначение("Объект"); СохраненныеНастройки = СохраненныеНастройки(ОбработкаОбъект); + АдресХранилищаНастроек = ПоместитьВоВременноеХранилище(Неопределено, УникальныйИдентификатор); Заголовок = НСтр("ru = 'Скрытие конфиденциальной информации'"); @@ -50,7 +51,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + ПриЗакрытииНаСервере(); КонецПроцедуры @@ -273,24 +278,16 @@ &НаКлиенте Процедура СохранитьНастройки(Команда) - Режим = РежимДиалогаВыбораФайла.Сохранение; - ДиалогСохранения = Новый ДиалогВыбораФайла(Режим); - ДиалогСохранения.МножественныйВыбор = Ложь; - ДиалогСохранения.Фильтр = НСтр("ru = 'Файл настроек'") + "(*.xml)|*.xml"; - ОписаниеОповещения = Новый ОписаниеОповещения("СохранитьНастройкиЗавершение", ЭтотОбъект); - ДиалогСохранения.Показать(ОписаниеОповещения); + ОписаниеОповещения = Новый ОписаниеОповещения("СохранитьНастройкиПродолжение", ЭтотОбъект); + НачатьПодключениеРасширенияРаботыСФайлами(ОписаниеОповещения); КонецПроцедуры &НаКлиенте Процедура ЗагрузитьНастройки(Команда) - Режим = РежимДиалогаВыбораФайла.Открытие; - ДиалогВыбора = Новый ДиалогВыбораФайла(Режим); - ДиалогВыбора.МножественныйВыбор = Ложь; - ДиалогВыбора.Фильтр = НСтр("ru = 'Файл настроек'") + "(*.xml)|*.xml"; - ОписаниеОповещения = Новый ОписаниеОповещения("ЗагрузитьНастройкиЗавершение", ЭтотОбъект); - ДиалогВыбора.Показать(ОписаниеОповещения); + ОписаниеОповещения = Новый ОписаниеОповещения("ЗагрузитьНастройкиПродолжение", ЭтотОбъект); + НачатьПодключениеРасширенияРаботыСФайлами(ОписаниеОповещения); КонецПроцедуры @@ -397,6 +394,51 @@ Возврат МодульДлительныеОперации.ЗаданиеВыполнено(ИдентификаторФоновогоЗадания); КонецФункции +&НаКлиенте +Процедура СохранитьНастройкиПродолжение(Подключено, ДополнительныеПараметры) Экспорт + + Если Подключено Тогда + Режим = РежимДиалогаВыбораФайла.Сохранение; + ДиалогСохранения = Новый ДиалогВыбораФайла(Режим); + ДиалогСохранения.МножественныйВыбор = Ложь; + ДиалогСохранения.Фильтр = НСтр("ru = 'Файл настроек'") + "(*.xml)|*.xml"; + ОписаниеОповещения = Новый ОписаниеОповещения("СохранитьНастройкиЗавершение", ЭтотОбъект); + ДиалогСохранения.Показать(ОписаниеОповещения); + Иначе + ПолучитьФайл(НастройкиОбработки(), "settings.xml", Истина); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ЗагрузитьНастройкиПродолжение(Подключено, ДополнительныеПараметры) Экспорт + + Если Подключено Тогда + Режим = РежимДиалогаВыбораФайла.Открытие; + ДиалогВыбора = Новый ДиалогВыбораФайла(Режим); + ДиалогВыбора.МножественныйВыбор = Ложь; + ДиалогВыбора.Фильтр = НСтр("ru = 'Файл настроек'") + "(*.xml)|*.xml"; + ОписаниеОповещения = Новый ОписаниеОповещения("ЗагрузитьНастройкиЗавершение", ЭтотОбъект); + + НачатьПомещениеФайлов(ОписаниеОповещения, , ДиалогВыбора, Истина, УникальныйИдентификатор); + Иначе + ОписаниеОповещения = Новый ОписаниеОповещения("ЗагрузитьНастройкиПродолжениеПослеПомещенияФайла", ЭтотОбъект); + НачатьПомещениеФайла(ОписаниеОповещения,,, Истина); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ЗагрузитьНастройкиПродолжениеПослеПомещенияФайла(Результат, Адрес, ВыбранноеИмяФайла, ДополнительныеПараметры) Экспорт + + Если Результат = Неопределено Тогда + Возврат; + КонецЕсли; + + УстановитьНастройки(Адрес, Истина); + +КонецПроцедуры + &НаКлиенте Процедура СохранитьНастройкиЗавершение(Результат, ДополнительныеПараметры) Экспорт @@ -432,10 +474,18 @@ КонецПроцедуры &НаСервере -Процедура УстановитьНастройки(Результат) +Процедура УстановитьНастройки(Результат, РезультатВХранилище = Ложь) + + Если РезультатВХранилище Тогда + ФайлНастроек = ПолучитьИзВременногоХранилища(Результат); + Иначе + ФайлНастроек = ПолучитьИзВременногоХранилища(Результат[0].Хранение); + КонецЕсли; + ИмяФайла = ПолучитьИмяВременногоФайла("xml"); + ФайлНастроек.Записать(ИмяФайла); ТекстовыйДокумент = Новый ТекстовыйДокумент; - ТекстовыйДокумент.Прочитать(Результат[0]); + ТекстовыйДокумент.Прочитать(ИмяФайла); СтрокаНастроек = ТекстовыйДокумент.ПолучитьТекст(); СохраненныеНастройки = Новый Массив; @@ -446,6 +496,8 @@ ОбработкаОбъект.УстановитьНастройки(СохраненныеНастройки, ДеревоОбрабатываемыхОбъектов, Ложь); ЗначениеВРеквизитФормы(ДеревоОбрабатываемыхОбъектов, "ОбрабатываемыеОбъекты"); + УдалитьФайлы(ИмяФайла); + КонецПроцедуры &НаСервере @@ -517,8 +569,6 @@ ЭтоВнешняяОбработка = Не Метаданные.Обработки.Содержит(ОбработкаОбъект.Метаданные()); ИдентификаторЗадания = Неопределено; - НаименованиеЗадания = НСтр("ru = 'Скрытие конфиденциальной информации'"); - ВыполняемыйМетод = "ДлительныеОперации.ВыполнитьПроцедуруМодуляОбъектаОбработки"; ПараметрыЗадания = Новый Структура; @@ -728,7 +778,6 @@ МакетОпределен = (КоличествоНастроек > 1); УдалитьФайлы(ИмяВременногоФайла); - Возврат СохраненныеНастройки; КонецФункции diff --git a/SSL/src/DataProcessors/СкрытиеКонфиденциальнойИнформации/ObjectModule.bsl b/SSL/src/DataProcessors/СкрытиеКонфиденциальнойИнформации/ObjectModule.bsl index 1c1032c66..0f9ab40c7 100644 --- a/SSL/src/DataProcessors/СкрытиеКонфиденциальнойИнформации/ObjectModule.bsl +++ b/SSL/src/DataProcessors/СкрытиеКонфиденциальнойИнформации/ObjectModule.bsl @@ -5,276 +5,11 @@ Перем КартинкиОбъектов; Перем ГенераторСлучайныхЧисел; Перем ПрограммныйВызов; -Перем ОтборПоИли; - -#КонецОбласти - -#Область СлужебныйПрограммныйИнтерфейс - -// Очищает персональные данные по переданному отбору. -// -// Параметры: -// Объект - Строка - полное имя обрабатываемого объекта метаданных. -// Реквизиты - Строка - обрабатываемые реквизиты через запятую. -// Табличные части задаются через точку - "ИмяТабличнойЧасти.ИмяРеквизита". -// Отбор - Соответствие - фильтр обрабатываемых объектов. -// -Процедура СкрытьКонфиденциальнуюИнформацию(Объект, Реквизиты = "", Отбор = "", ОтборПоИ = Ложь) Экспорт - - ОбъектЧастями = СтрРазделить(Объект, "."); - - УстановитьПравилаОбработкиПрограммныйВызов(); - - Параметры = Новый Структура; - Параметры.Вставить("ПолноеИмя", Объект); - Параметры.Вставить("ПравилоОбработки", Новый СписокЗначений); - Параметры.Вставить("Имя", ОбъектЧастями[1]); - - ГенераторСлучайныхЧисел = Новый ГенераторСлучайныхЧисел; - ПрограммныйВызов = Истина; - ОтборПоИли = Не ОтборПоИ; - - ТекстОтборНеЗадан = НСтр("ru = 'Отбор на задан!'"); - Если ВРег(ОбъектЧастями[0]) = "КОНСТАНТА" Тогда - ОбработатьКонстанты(Параметры); - Возврат; - ИначеЕсли ВРег(ОбъектЧастями[0]) = "РЕГИСТРСВЕДЕНИЙ" - Или ВРег(ОбъектЧастями[0]) = "РЕГИСТРНАКОПЛЕНИЯ" - Или ВРег(ОбъектЧастями[0]) = "РЕГИСТРБУХГАЛТЕРИИ" - Или ВРег(ОбъектЧастями[0]) = "РЕГИСТРРЕСЧЕТА" Тогда - ОбработатьРегистрыПрограммно(Параметры, Реквизиты, Отбор, ОбъектЧастями[0]); - Иначе - ОбработатьСсылочныеОбъекты(Параметры, Реквизиты, Отбор); - КонецЕсли; - -КонецПроцедуры #КонецОбласти #Область СлужебныеПроцедурыИФункции -//////////////////////////////////////////////////////////////////////////////// -// Процедуры скрытия конфиденциальной информации в программном режиме. - -Процедура ОбработатьСсылочныеОбъекты(Параметры, Реквизиты, Отбор) - - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | ОбъектМетаданных.Ссылка КАК Ссылка - |ИЗ - | " + Параметры.ПолноеИмя + " КАК ОбъектМетаданных - |"; - - ДобавитьОтборКЗапросу(Запрос, Отбор); - - Результат = Запрос.Выполнить().Выгрузить(); - - МассивРеквизитов = СтрРазделить(Реквизиты, ","); - - Для Каждого СтрокаРезультата Из Результат Цикл - - ОбрабатываемыйОбъект = СтрокаРезультата.Ссылка.ПолучитьОбъект(); - Обработано = Истина; - ВыполнитьЗаписьОбъекта = Ложь; - Для Каждого Реквизит Из МассивРеквизитов Цикл - Реквизит = СокрЛП(Реквизит); - ЧастиРеквизита = СтрРазделить(Реквизит, "."); - // Проверка, что это реквизит табличной части. - Если ЧастиРеквизита.Количество() > 1 Тогда - ОбрабатываемыеСвойства = ОбрабатываемыйОбъект[ЧастиРеквизита[0]]; - - Для Каждого СтрокаТабличнойЧасти Из ОбрабатываемыеСвойства Цикл - Параметры.Вставить("Имя", ЧастиРеквизита[1]); - Значение = СтрокаТабличнойЧасти[ЧастиРеквизита[1]]; - ОбработатьСвойство(Значение, Параметры, Обработано); - Если Обработано Тогда - СтрокаТабличнойЧасти[ЧастиРеквизита[1]] = Значение; - КонецЕсли; - - ВыполнитьЗаписьОбъекта = ВыполнитьЗаписьОбъекта Или Обработано; - КонецЦикла; - Иначе - Параметры.Вставить("Имя", Реквизит); - Значение = ОбрабатываемыйОбъект[Реквизит]; - ОбработатьСвойство(Значение, Параметры, Обработано); - Если Обработано Тогда - ОбрабатываемыйОбъект[Реквизит] = Значение; - КонецЕсли; - - ВыполнитьЗаписьОбъекта = ВыполнитьЗаписьОбъекта Или Обработано; - КонецЕсли; - КонецЦикла; - - Если ВыполнитьЗаписьОбъекта Тогда - ЗаписатьДанные(ОбрабатываемыйОбъект); - КонецЕсли; - КонецЦикла; - -КонецПроцедуры - -Процедура ДобавитьОтборКЗапросу(Запрос, Отбор) - - ВидОперации = ?(ОтборПоИли, "ИЛИ", "И"); - - Префикс = "ГДЕ" + Символы.ПС + Символы.Таб + "("; - Индекс = 1; - Для Каждого ЭлементОтбора Из Отбор Цикл - ИмяСвойства = ЭлементОтбора.Ключ; - ЗначенияСвойства = ЭлементОтбора.Значение; - Для Каждого ЗначениеСвойства Из ЗначенияСвойства Цикл - Шаблон = "%1.%2 = &%3"; - ИмяЗначенияПараметра = "Значение" + Индекс; - Условие = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Шаблон, "ОбъектМетаданных", ИмяСвойства, ИмяЗначенияПараметра); - - Запрос.Текст = Запрос.Текст + Префикс + Условие; - Запрос.УстановитьПараметр(ИмяЗначенияПараметра, ЗначениеСвойства); - - Индекс = Индекс + 1; - Префикс = Символы.ПС + Символы.Таб + Символы.Таб + ВидОперации + " "; - КонецЦикла; - Запрос.Текст = Запрос.Текст + ")"; - Префикс = Символы.ПС + Символы.Таб + ВидОперации + " ("; - КонецЦикла; - -КонецПроцедуры - -Процедура ОбработатьРегистрыПрограммно(Параметры, Реквизиты, Отбор, Тип) - - Если Тип = "РегистрСведений" Тогда - Коллекция = РегистрыСведений; - ИначеЕсли Тип = "РегистрНакопления" Тогда - Коллекция = РегистрыНакопления; - ИначеЕсли Тип = "РегистрБухгалтерии" Тогда - Коллекция = РегистрыБухгалтерии; - ИначеЕсли Тип = "РегистрРасчета" Тогда - Коллекция = РегистрыРасчета; - КонецЕсли; - - Регистр = Коллекция[Параметры.Имя]; - НаборЗаписейРегистра = Регистр.СоздатьНаборЗаписей(); - МетаданныеРегистра = НаборЗаписейРегистра.Метаданные(); - - Если Тип = "РегистрСведений" Тогда - РегистрПериодический = (МетаданныеРегистра.ПериодичностьРегистраСведений <> Метаданные.СвойстваОбъектов.ПериодичностьРегистраСведений.Непериодический); - РежимЗаписиНезависимый = (МетаданныеРегистра.РежимЗаписи = Метаданные.СвойстваОбъектов.РежимЗаписиРегистра.Независимый); - - // Периодический и независимый режим записи. - Если РегистрПериодический И РежимЗаписиНезависимый Тогда - - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ РАЗЛИЧНЫЕ - | ИмяРегистраОбъект.Период КАК Период - |ИЗ - | " + Параметры.ПолноеИмя + " КАК ИмяРегистраОбъект"; - Выборка = Запрос.Выполнить().Выбрать(); - - Пока Выборка.Следующий() Цикл - - НаборЗаписейРегистра.Отбор.Период.Использование = Истина; - НаборЗаписейРегистра.Отбор.Период.Значение = Выборка.Период; - ОбработатьНезависимыйРегистрПрограммно(НаборЗаписейРегистра, Реквизиты, Параметры, Отбор); - КонецЦикла; - - // Непериодический и режим записи независимый. - ИначеЕсли РежимЗаписиНезависимый Тогда - ОбработатьНезависимыйРегистрПрограммно(НаборЗаписейРегистра, Реквизиты, Параметры, Отбор); - Иначе - - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ РАЗЛИЧНЫЕ - | ИмяРегистраОбъект.Регистратор КАК Регистратор - |ИЗ - | " + Параметры.ПолноеИмя + " КАК ИмяРегистраОбъект - |"; - ДобавитьОтборКЗапросу(Запрос, Отбор); - Выборка = Запрос.Выполнить().Выбрать(); - - Пока Выборка.Следующий() Цикл - НаборЗаписейРегистра.Отбор.Регистратор.Установить(Выборка.Регистратор); - ОбработатьНаборЗаписейПрограммно(НаборЗаписейРегистра, Параметры, Реквизиты); - КонецЦикла; - - КонецЕсли; - - Иначе // Остальные регистры. - - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ РАЗЛИЧНЫЕ - | ИмяРегистраОбъект.Регистратор КАК Регистратор - |ИЗ - | " + Параметры.ПолноеИмя + " КАК ИмяРегистраОбъект - |"; - ДобавитьОтборКЗапросу(Запрос, Отбор); - Выборка = Запрос.Выполнить().Выбрать(); - - Пока Выборка.Следующий() Цикл - НаборЗаписейРегистра.Отбор.Регистратор.Установить(Выборка.Регистратор); - ОбработатьНаборЗаписейПрограммно(НаборЗаписейРегистра, Параметры, Реквизиты); - КонецЦикла; - - КонецЕсли; - -КонецПроцедуры - -Процедура ОбработатьНезависимыйРегистрПрограммно(НаборЗаписейРегистра, Реквизиты, Параметры, Отбор) - - Для Каждого ЭлементОтбора Из Отбор Цикл - НаборЗаписейРегистра.Отбор[ЭлементОтбора.Ключ].Использование = Истина; - - ЗначенияОтбора = ЭлементОтбора.Значение; - Если ЗначенияОтбора.Количество() > 1 Тогда - СписокЗначений = Новый СписокЗначений; - Для Каждого Значение Из ЗначенияОтбора Цикл - СписокЗначений.Добавить(Значение); - КонецЦикла; - НаборЗаписейРегистра.Отбор[ЭлементОтбора.Ключ].ВидСравнения = ВидСравнения.ВСписке; - НаборЗаписейРегистра.Отбор[ЭлементОтбора.Ключ].Значение = СписокЗначений; - Иначе - НаборЗаписейРегистра.Отбор[ЭлементОтбора.Ключ].Значение = ЗначенияОтбора[0]; - КонецЕсли; - Если ОтборПоИли Тогда - ОбработатьНаборЗаписейПрограммно(НаборЗаписейРегистра, Параметры, Реквизиты); - НаборЗаписейРегистра.Отбор[ЭлементОтбора.Ключ].Использование = Ложь; - КонецЕсли; - КонецЦикла; - - ОбработатьНаборЗаписейПрограммно(НаборЗаписейРегистра, Параметры, Реквизиты); - -КонецПроцедуры - -Процедура ОбработатьНаборЗаписейПрограммно(НаборЗаписейРегистра, Параметры, Реквизиты) - - РеквизитыМассивом = СтрРазделить(Реквизиты, ","); - - НаборЗаписейРегистра.Прочитать(); - - Обработано = Истина; - ВыполнитьЗаписьОбъекта = Ложь; - Для Каждого ЗаписьРегистра Из НаборЗаписейРегистра Цикл - - Для Каждого Реквизит Из РеквизитыМассивом Цикл - Параметры.Вставить("Имя", Реквизит); - Значение = ЗаписьРегистра[Реквизит]; - ОбработатьСвойство(Значение, Параметры, Обработано); - Если Обработано Тогда - ЗаписьРегистра[Реквизит] = Значение; - КонецЕсли; - - ВыполнитьЗаписьОбъекта = ВыполнитьЗаписьОбъекта Или Обработано; - КонецЦикла; - - КонецЦикла; - - Если ВыполнитьЗаписьОбъекта Тогда - ЗаписатьДанные(НаборЗаписейРегистра); - КонецЕсли; - -КонецПроцедуры - //////////////////////////////////////////////////////////////////////////////// // Процедуры скрытия конфиденциальной информации в интерактивном режиме. @@ -1215,16 +950,6 @@ КонецФункции -Процедура УстановитьПравилаОбработкиПрограммныйВызов() - - ПравилоСтрока = "Очистить"; - ПравилоЧисло = "Очистить"; - ПравилоБулево = "НеИзменять"; - ПравилоДата = "НеИзменять"; - ПравилоХранилищеЗначений = "Очистить"; - -КонецПроцедуры - #КонецОбласти #КонецЕсли \ No newline at end of file diff --git a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаАвтоматическогоСопоставления/Form.form b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаАвтоматическогоСопоставления/Form.form index b4cd5f383..3702c967a 100644 --- a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаАвтоматическогоСопоставления/Form.form +++ b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаАвтоматическогоСопоставления/Form.form @@ -40,7 +40,6 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:LabelFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> <height>2</height> <autoMaxHeight>true</autoMaxHeight> <textColor xsi:type="core:ColorRef"> diff --git a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаАвтоматическогоСопоставления/Module.bsl b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаАвтоматическогоСопоставления/Module.bsl index e00113152..235ddd7c0 100644 --- a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаАвтоматическогоСопоставления/Module.bsl +++ b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаАвтоматическогоСопоставления/Module.bsl @@ -55,7 +55,7 @@ &НаКлиенте Процедура ОбновитьТекстПоясняющейНадписи() - МассивОтмеченныхЭлементовСписка = ОбщегоНазначенияКлиентСервер.ПолучитьМассивОтмеченныхЭлементовСписка(СписокПолейСопоставления); + МассивОтмеченныхЭлементовСписка = ОбщегоНазначенияКлиентСервер.ОтмеченныеЭлементы(СписокПолейСопоставления); Если МассивОтмеченныхЭлементовСписка.Количество() = 0 Тогда diff --git a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаПолейТаблицы/Module.bsl b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаПолейТаблицы/Module.bsl index ee9df6048..b97d3281b 100644 --- a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаПолейТаблицы/Module.bsl +++ b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаПолейТаблицы/Module.bsl @@ -19,7 +19,7 @@ &НаКлиенте Процедура Применить(Команда) - МассивОтмеченныхЭлементовСписка = ОбщегоНазначенияКлиентСервер.ПолучитьМассивОтмеченныхЭлементовСписка(СписокПолей); + МассивОтмеченныхЭлементовСписка = ОбщегоНазначенияКлиентСервер.ОтмеченныеЭлементы(СписокПолей); Если МассивОтмеченныхЭлементовСписка.Количество() = 0 Тогда diff --git a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаПолейТаблицыСопоставления/Module.bsl b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаПолейТаблицыСопоставления/Module.bsl index 4b60629c3..b49e3e07a 100644 --- a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаПолейТаблицыСопоставления/Module.bsl +++ b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/НастройкаПолейТаблицыСопоставления/Module.bsl @@ -21,7 +21,7 @@ Отказ = Ложь; - МассивОтмеченныхЭлементовСписка = ОбщегоНазначенияКлиентСервер.ПолучитьМассивОтмеченныхЭлементовСписка(СписокПолей); + МассивОтмеченныхЭлементовСписка = ОбщегоНазначенияКлиентСервер.ОтмеченныеЭлементы(СписокПолей); Если МассивОтмеченныхЭлементовСписка.Количество() = 0 Тогда diff --git a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/РезультатАвтоматическогоСопоставления/Form.form b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/РезультатАвтоматическогоСопоставления/Form.form index 89fdc8a9f..e20647c2c 100644 --- a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/РезультатАвтоматическогоСопоставления/Form.form +++ b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/РезультатАвтоматическогоСопоставления/Form.form @@ -982,9 +982,7 @@ <id>124</id> <autoFill>true</autoFill> </contextMenu> - <width>8</width> <autoMaxWidth>true</autoMaxWidth> - <height>3</height> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> <extInfo xsi:type="form:PictureDecorationExtInfo"> @@ -1057,7 +1055,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <height>3</height> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> @@ -1227,9 +1224,7 @@ <id>133</id> <autoFill>true</autoFill> </contextMenu> - <width>8</width> <autoMaxWidth>true</autoMaxWidth> - <height>3</height> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> <extInfo xsi:type="form:PictureDecorationExtInfo"> @@ -1302,7 +1297,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <height>3</height> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> @@ -1553,9 +1547,7 @@ <id>142</id> <autoFill>true</autoFill> </contextMenu> - <width>8</width> <autoMaxWidth>true</autoMaxWidth> - <height>3</height> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> <extInfo xsi:type="form:PictureDecorationExtInfo"> @@ -1629,7 +1621,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <height>3</height> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> @@ -1889,7 +1880,6 @@ <event>OnCreateAtServer</event> <name>ПриСозданииНаСервере</name> </handlers> - <width>70</width> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoUrl>true</autoUrl> diff --git a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/РезультатАвтоматическогоСопоставления/Module.bsl b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/РезультатАвтоматическогоСопоставления/Module.bsl index f032838ca..50ebb68c5 100644 --- a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/РезультатАвтоматическогоСопоставления/Module.bsl +++ b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/РезультатАвтоматическогоСопоставления/Module.bsl @@ -46,16 +46,18 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) - Если Объект.ТаблицаАвтоматическиСопоставленныхОбъектов.Количество() > 0 - И ВыдаватьПредупреждениеПриЗакрытииФормы = Истина Тогда - - ПоказатьПредупреждение(, НСтр("ru = 'Форма содержит данные автоматического сопоставления. Действие отменено.'")); - - Отказ = Истина; - + Если Объект.ТаблицаАвтоматическиСопоставленныхОбъектов.Количество() = 0 + Или ВыдаватьПредупреждениеПриЗакрытииФормы <> Истина Тогда + Возврат; КонецЕсли; + + Отказ = Истина; + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + ПоказатьПредупреждение(, НСтр("ru = 'Форма содержит данные автоматического сопоставления. Действие отменено.'")); КонецПроцедуры @@ -105,8 +107,9 @@ КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// СЛУЖЕБНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ (Поставляемая часть). +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции &НаКлиенте Процедура ИзменитьПорядковыйНомерПерехода(Итератор) @@ -279,10 +282,6 @@ КонецПроцедуры -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - &НаСервере Функция ПоместитьТаблицуАвтоматическиСопоставленныхОбъектовВоВременноеХранилище() @@ -386,7 +385,7 @@ //////////////////////////////////////////////////////////////////////////////// // Обработчики событий переходов. -// Страница 0: Ошибка автоматического сопоставления. +// Страница 1: Ошибка автоматического сопоставления. // &НаКлиенте Функция Подключаемый_ОшибкаСопоставленияОбъектов_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) @@ -395,31 +394,56 @@ КонецФункции -// Страница 1 (ожидание): Сопоставление объектов. +// Страница 2 (ожидание): Сопоставление объектов. // &НаКлиенте Функция Подключаемый_ОжиданиеСопоставленияОбъектов_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) - ВыполнитьСопоставлениеОбъектов(Отказ); + ДлительнаяОперация = Ложь; + ДлительнаяОперацияЗавершена = Истина; + ИдентификаторЗадания = Неопределено; + АдресВременногоХранилища = ""; -КонецФункции - -// Страница 1 (ожидание): Сопоставление объектов. -// -&НаКлиенте -Функция Подключаемый_ОжиданиеСопоставленияОбъектовДлительнаяОперация_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) + Результат = ФоновоеЗаданиеЗапуститьНаСервере(Отказ); - Если ДлительнаяОперация Тогда + Если Отказ Тогда + Возврат Неопределено; + КонецЕсли; + + Если Результат.Статус = "Выполняется" Тогда - ПерейтиДалее = Ложь; + ПерейтиДалее = Ложь; + ДлительнаяОперация = Истина; + ДлительнаяОперацияЗавершена = Ложь; - ПодключитьОбработчикОжидания("ОбработчикОжиданияФоновогоЗадания", 5, Истина); + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ПараметрыОжидания.ВыводитьСообщения = Истина; + + ОповещениеОЗавершении = Новый ОписаниеОповещения("ЗавершениеФоновогоЗадания", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(Результат, ОповещениеОЗавершении, ПараметрыОжидания); КонецЕсли; КонецФункции -// Страница 1 (ожидание): Сопоставление объектов. +// Страница 2 Обработчик оповещения о завершении фонового задания. +&НаКлиенте +Процедура ЗавершениеФоновогоЗадания(Результат, ДополнительныеПараметры) Экспорт + + ДлительнаяОперация = Ложь; + ДлительнаяОперацияЗавершена = Истина; + + Если Результат.Статус = "Ошибка" Или Результат.Статус = "Отменено" Тогда + ЗафиксироватьОшибку(Результат.ПодробноеПредставлениеОшибки); + ПерейтиНазад(); + Иначе + ПерейтиДалее(); + КонецЕсли; + +КонецПроцедуры + +// Страница 3 (ожидание): Сопоставление объектов. // &НаКлиенте Функция Подключаемый_ОжиданиеСопоставленияОбъектовДлительнаяОперацияОкончание_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) @@ -432,52 +456,69 @@ КонецФункции -// Страница 1: Сопоставление объектов. +// Страница 4: Работа с результатом автоматического сопоставления. +// +&НаКлиенте +Функция Подключаемый_СопоставлениеОбъектов_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) + + Элементы.Применить.КнопкаПоУмолчанию = Истина; + + Если ПустойРезультат Тогда + ПропуститьСтраницу = Истина; + КонецЕсли; + +КонецФункции + +// Страница 5: Пустой результат автоматического сопоставления. +// +&НаКлиенте +Функция Подключаемый_ПустойРезультатСопоставленияОбъектовПустойРезультатСопоставленияОбъектов_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) + + Элементы.Закрыть.КнопкаПоУмолчанию = Истина; + +КонецФункции + +// Страница 2: Сопоставление объектов. // &НаСервере -Процедура ВыполнитьСопоставлениеОбъектов(Отказ) +Функция ФоновоеЗаданиеЗапуститьНаСервере(Отказ) - ДлительнаяОперация = Ложь; - ДлительнаяОперацияЗавершена = Ложь; - ИдентификаторЗадания = Неопределено; - АдресВременногоХранилища = ""; + РеквизитыФормы = Новый Структура; + РеквизитыФормы.Вставить("СписокИспользуемыхПолей", СписокИспользуемыхПолей); + РеквизитыФормы.Вставить("СписокПолейТаблицы", СписокПолейТаблицы); + РеквизитыФормы.Вставить("СписокПолейСопоставления", СписокПолейСопоставления); - Попытка + ПараметрыЗадания = Новый Структура; + ПараметрыЗадания.Вставить("КонтекстОбъекта", ОбменДаннымиСервер.ПолучитьКонтекстОбъекта(РеквизитФормыВЗначение("Объект"))); + ПараметрыЗадания.Вставить("РеквизитыФормы", РеквизитыФормы); + ПараметрыЗадания.Вставить("ТаблицаНеутвержденныхСвязей", ПолучитьИзВременногоХранилища(АдресВременногоХранилищаТаблицыНеутвержденныхСвязей)); + + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Автоматическое сопоставление объектов'"); + + Результат = ДлительныеОперации.ВыполнитьВФоне( + "Обработки.СопоставлениеОбъектовИнформационныхБаз.ВыполнитьАвтоматическоеСопоставлениеОбъектов", + ПараметрыЗадания, + ПараметрыВыполнения); - РеквизитыФормы = Новый Структура; - РеквизитыФормы.Вставить("СписокИспользуемыхПолей", СписокИспользуемыхПолей); - РеквизитыФормы.Вставить("СписокПолейТаблицы", СписокПолейТаблицы); - РеквизитыФормы.Вставить("СписокПолейСопоставления", СписокПолейСопоставления); - - ПараметрыМетода = Новый Структура; - ПараметрыМетода.Вставить("КонтекстОбъекта", ОбменДаннымиСервер.ПолучитьКонтекстОбъекта(РеквизитФормыВЗначение("Объект"))); - ПараметрыМетода.Вставить("РеквизитыФормы", РеквизитыФормы); - ПараметрыМетода.Вставить("ТаблицаНеутвержденныхСвязей", ПолучитьИзВременногоХранилища(АдресВременногоХранилищаТаблицыНеутвержденныхСвязей)); - - Результат = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "Обработки.СопоставлениеОбъектовИнформационныхБаз.ВыполнитьАвтоматическоеСопоставлениеОбъектов", - ПараметрыМетода, - НСтр("ru = 'Автоматическое сопоставление объектов'")); - - Если Результат.ЗаданиеВыполнено Тогда - ПослеСопоставленияОбъектов(ПолучитьИзВременногоХранилища(Результат.АдресХранилища)); - Иначе - ДлительнаяОперация = Истина; - ИдентификаторЗадания = Результат.ИдентификаторЗадания; - АдресВременногоХранилища = Результат.АдресХранилища; - КонецЕсли; - - Исключение + Если Результат = Неопределено Тогда Отказ = Истина; - ЗаписьЖурналаРегистрации(НСтр("ru = 'Помощник сопоставления объектов.Автоматическое сопоставление'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - Возврат; - КонецПопытки; + Возврат Неопределено; + КонецЕсли; -КонецПроцедуры + ИдентификаторЗадания = Результат.ИдентификаторЗадания; + АдресВременногоХранилища = Результат.АдресРезультата; + + Если Результат.Статус = "Ошибка" Или Результат.Статус = "Отменено" Тогда + Отказ = Истина; + ЗафиксироватьОшибку(Результат.ПодробноеПредставлениеОшибки); + КонецЕсли; + + Возврат Результат; + +КонецФункции -// Страница 1: Сопоставление объектов. +// Страница 3: Сопоставление объектов. // &НаСервере Процедура ВыполнитьСопоставлениеОбъектовОкончание(Отказ) @@ -486,15 +527,12 @@ ПослеСопоставленияОбъектов(ПолучитьИзВременногоХранилища(АдресВременногоХранилища)); Исключение Отказ = Истина; - ЗаписьЖурналаРегистрации(НСтр("ru = 'Помощник сопоставления объектов.Автоматическое сопоставление'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗафиксироватьОшибку(ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); Возврат; КонецПопытки; КонецПроцедуры -// Страница 1: Сопоставление объектов. -// &НаСервере Процедура ПослеСопоставленияОбъектов(Знач РезультатСопоставления) @@ -515,27 +553,14 @@ КонецПроцедуры -// Страница 2: Работа с результатом автоматического сопоставления. -// -&НаКлиенте -Функция Подключаемый_СопоставлениеОбъектов_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) - - Элементы.Применить.КнопкаПоУмолчанию = Истина; - - Если ПустойРезультат Тогда - ПропуститьСтраницу = Истина; - КонецЕсли; - -КонецФункции - -// Страница 3: Пустой результат автоматического сопоставления. -// -&НаКлиенте -Функция Подключаемый_ПустойРезультатСопоставленияОбъектовПустойРезультатСопоставленияОбъектов_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) - - Элементы.Закрыть.КнопкаПоУмолчанию = Истина; - -КонецФункции +&НаСервере +Процедура ЗафиксироватьОшибку(ПодробноеПредставлениеОшибки) + ЗаписьЖурналаРегистрации( + НСтр("ru = 'Помощник сопоставления объектов.Автоматическое сопоставление'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, + , + ,ПодробноеПредставлениеОшибки); +КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// // Инициализация переходов помощника. @@ -549,12 +574,11 @@ // Ожидание сопоставления объектов. ТаблицаПереходовНоваяСтрока(2, "ОжиданиеСопоставленияОбъектов",, Истина, "ОжиданиеСопоставленияОбъектов_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(3, "ОжиданиеСопоставленияОбъектов",, Истина, "ОжиданиеСопоставленияОбъектовДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(4, "ОжиданиеСопоставленияОбъектов",, Истина, "ОжиданиеСопоставленияОбъектовДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(3, "ОжиданиеСопоставленияОбъектов",, Истина, "ОжиданиеСопоставленияОбъектовДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); // Работа с результатом автоматического сопоставления. - ТаблицаПереходовНоваяСтрока(5, "СопоставлениеОбъектов", "СопоставлениеОбъектов_ПриОткрытии"); - ТаблицаПереходовНоваяСтрока(6, "ПустойРезультатСопоставленияОбъектов", "ПустойРезультатСопоставленияОбъектовПустойРезультатСопоставленияОбъектов_ПриОткрытии"); + ТаблицаПереходовНоваяСтрока(4, "СопоставлениеОбъектов", "СопоставлениеОбъектов_ПриОткрытии"); + ТаблицаПереходовНоваяСтрока(5, "ПустойРезультатСопоставленияОбъектов", "ПустойРезультатСопоставленияОбъектовПустойРезультатСопоставленияОбъектов_ПриОткрытии"); КонецПроцедуры diff --git a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/Форма/Form.form b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/Форма/Form.form index 8783d6361..ac17c411e 100644 --- a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/Форма/Form.form @@ -33,7 +33,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <textColor xsi:type="core:ColorRef"> <color>Style.ПоясняющийТекст</color> @@ -1797,9 +1796,7 @@ <id>332</id> <autoFill>true</autoFill> </contextMenu> - <width>8</width> <autoMaxWidth>true</autoMaxWidth> - <height>3</height> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> <extInfo xsi:type="form:PictureDecorationExtInfo"> @@ -1872,7 +1869,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <height>3</height> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> @@ -2042,9 +2038,7 @@ <id>325</id> <autoFill>true</autoFill> </contextMenu> - <width>8</width> <autoMaxWidth>true</autoMaxWidth> - <height>3</height> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> <extInfo xsi:type="form:PictureDecorationExtInfo"> @@ -2117,7 +2111,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <height>3</height> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> @@ -2307,9 +2300,7 @@ <id>305</id> <autoFill>true</autoFill> </contextMenu> - <width>2</width> <autoMaxWidth>true</autoMaxWidth> - <height>1</height> <autoMaxHeight>true</autoMaxHeight> <skipOnInput>false</skipOnInput> <extInfo xsi:type="form:PictureDecorationExtInfo"> @@ -2395,7 +2386,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -2478,7 +2468,6 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> @@ -2587,7 +2576,6 @@ <excludedCommands>Retry</excludedCommands> <excludedCommands>SaveValues</excludedCommands> <excludedCommands>Yes</excludedCommands> - <width>70</width> <windowOpeningMode>LockOwner</windowOpeningMode> <saveWindowSettings>true</saveWindowSettings> <autoUrl>true</autoUrl> diff --git a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/Форма/Module.bsl index 4bc24cd68..106a49147 100644 --- a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/Форма/Module.bsl @@ -153,7 +153,7 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Если ЗаписатьИЗакрыть Тогда Возврат; @@ -163,19 +163,24 @@ // Все сопоставлено Возврат; КонецЕсли; - + Если ВыдаватьПредупреждениеПриЗакрытииФормы = Истина Тогда Оповещение = Новый ОписаниеОповещения("ПередЗакрытиемЗавершение", ЭтотОбъект); СтарыйФлаг = Модифицированность; Модифицированность = Истина; - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы); Модифицированность = СтарыйФлаг; Возврат; КонецЕсли; + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + ПередЗакрытиемПродолжение(); + КонецПроцедуры &НаКлиенте @@ -203,7 +208,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ПараметрыОповещения = Новый Структура; ПараметрыОповещения.Вставить("КлючУникальности", Параметры.Ключ); @@ -636,17 +645,14 @@ Процедура ТаблицаПереходовНоваяСтрока(ПорядковыйНомерПерехода, ИмяОсновнойСтраницы, ИмяОбработчикаПриОткрытии = "", - ДлительнаяОперация = Ложь, + ЭтоДлительнаяОперация = Ложь, ИмяОбработчикаДлительнойОперации = "") НоваяСтрока = ТаблицаПереходов.Добавить(); - - НоваяСтрока.ПорядковыйНомерПерехода = ПорядковыйНомерПерехода; - НоваяСтрока.ИмяОсновнойСтраницы = ИмяОсновнойСтраницы; - - НоваяСтрока.ИмяОбработчикаПриОткрытии = ИмяОбработчикаПриОткрытии; - - НоваяСтрока.ДлительнаяОперация = ДлительнаяОперация; + НоваяСтрока.ПорядковыйНомерПерехода = ПорядковыйНомерПерехода; + НоваяСтрока.ИмяОсновнойСтраницы = ИмяОсновнойСтраницы; + НоваяСтрока.ИмяОбработчикаПриОткрытии = ИмяОбработчикаПриОткрытии; + НоваяСтрока.ДлительнаяОперация = ЭтоДлительнаяОперация; НоваяСтрока.ИмяОбработчикаДлительнойОперации = ИмяОбработчикаДлительнойОперации; КонецПроцедуры @@ -1205,7 +1211,7 @@ Возврат Результат + 1; КонецФункции - + &НаКлиенте Процедура ВыполнитьСортировкуТаблицы() @@ -1259,41 +1265,10 @@ КонецФункции -//////////////////////////////////////////////////////////////////////////////// -// Обработчики ожидания - -&НаКлиенте -Процедура ОбработчикОжиданияФоновогоЗадания() - - ДлительнаяОперацияЗавершена = Ложь; - - Состояние = ОбменДаннымиВызовСервера.СостояниеЗадания(ИдентификаторЗадания); - - Если Состояние = "Активно" Тогда - - ПодключитьОбработчикОжидания("ОбработчикОжиданияФоновогоЗадания", 5, Истина); - - ИначеЕсли Состояние = "Завершено" Тогда - - ДлительнаяОперация = Ложь; - ДлительнаяОперацияЗавершена = Истина; - - ПерейтиДалее(); - - Иначе // ЗавершеноАварийно - - ДлительнаяОперация = Ложь; - - ПерейтиНазад(); - - КонецЕсли; - -КонецПроцедуры - //////////////////////////////////////////////////////////////////////////////// // Обработчики событий переходов. -// Страница 0: Ошибка сопоставления объектов. +// Страница 1: Ошибка сопоставления объектов. // &НаКлиенте Функция Подключаемый_ОшибкаСопоставленияОбъектов_ПриОткрытии(Отказ, ПропуститьСтраницу, ЭтоПереходДалее) @@ -1308,7 +1283,7 @@ КонецФункции -// Страница 1 (ожидание): Сопоставление объектов. +// Страница 2 (ожидание): Сопоставление объектов. // &НаКлиенте Функция Подключаемый_ОжиданиеСопоставленияОбъектов_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) @@ -1320,26 +1295,51 @@ Возврат Неопределено; КонецЕсли; - ВыполнитьСопоставлениеОбъектов(Отказ); + ДлительнаяОперация = Ложь; + ДлительнаяОперацияЗавершена = Истина; + ИдентификаторЗадания = Неопределено; + АдресВременногоХранилища = ""; -КонецФункции - -// Страница 1 (ожидание): Сопоставление объектов. -// -&НаКлиенте -Функция Подключаемый_ОжиданиеСопоставленияОбъектовДлительнаяОперация_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) + Результат = ФоновоеЗаданиеЗапуститьНаСервере(Отказ); - Если ДлительнаяОперация Тогда + Если Отказ Тогда + Возврат Неопределено; + КонецЕсли; + + Если Результат.Статус = "Выполняется" Тогда - ПерейтиДалее = Ложь; + ПерейтиДалее = Ложь; + ДлительнаяОперация = Истина; + ДлительнаяОперацияЗавершена = Ложь; - ПодключитьОбработчикОжидания("ОбработчикОжиданияФоновогоЗадания", 5, Истина); + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ПараметрыОжидания.ВыводитьСообщения = Истина; + + ОповещениеОЗавершении = Новый ОписаниеОповещения("ЗавершениеФоновогоЗадания", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(Результат, ОповещениеОЗавершении, ПараметрыОжидания); КонецЕсли; КонецФункции -// Страница 1 (ожидание): Сопоставление объектов. +// Страница 2 Обработчик оповещения о завершении фонового задания. +&НаКлиенте +Процедура ЗавершениеФоновогоЗадания(Результат, ДополнительныеПараметры) Экспорт + + ДлительнаяОперация = Ложь; + ДлительнаяОперацияЗавершена = Истина; + + Если Результат.Статус = "Ошибка" Или Результат.Статус = "Отменено" Тогда + ЗафиксироватьОшибку(Результат.ПодробноеПредставлениеОшибки); + ПерейтиНазад(); + Иначе + ПерейтиДалее(); + КонецЕсли; + +КонецПроцедуры + +// Страница 3 (ожидание): Сопоставление объектов. // &НаКлиенте Функция Подключаемый_ОжиданиеСопоставленияОбъектовДлительнаяОперацияОкончание_ОбработкаДлительнойОперации(Отказ, ПерейтиДалее) @@ -1351,12 +1351,10 @@ КонецЕсли; Если ДлительнаяОперацияЗавершена Тогда - ВыполнитьСопоставлениеОбъектовОкончание(Отказ); - КонецЕсли; - Элементы.КнопкиТаблицы.Доступность = Истина; + Элементы.КнопкиТаблицы.Доступность = Истина; Элементы.ГруппаЗаголовкаТаблицы.Доступность = Истина; // Устанавливаем текущий отбор в табличной части сопоставления. @@ -1367,79 +1365,73 @@ КонецФункции -// Страница 1: Сопоставление объектов. +// Страница 2 Сопоставление объектов в фоновом задании. // &НаСервере -Процедура ВыполнитьСопоставлениеОбъектов(Отказ) +Функция ФоновоеЗаданиеЗапуститьНаСервере(Отказ) - ДлительнаяОперация = Ложь; - ДлительнаяОперацияЗавершена = Ложь; - ИдентификаторЗадания = Неопределено; - АдресВременногоХранилища = ""; + РеквизитыФормы = Новый Структура; + РеквизитыФормы.Вставить("ТолькоПрименитьТаблицуНеутвержденныхЗаписей", ЗаписатьИЗакрыть); + РеквизитыФормы.Вставить("ПрименитьТаблицуНеутвержденныхЗаписей", ПрименитьТаблицуНеутвержденныхЗаписей); + РеквизитыФормы.Вставить("ПрименитьРезультатАвтоматическогоСопоставления", ПрименитьРезультатАвтоматическогоСопоставления); - Попытка + ПараметрыЗадания = Новый Структура; + ПараметрыЗадания.Вставить("КонтекстОбъекта", ОбменДаннымиСервер.ПолучитьКонтекстОбъекта(РеквизитФормыВЗначение("Объект"))); + ПараметрыЗадания.Вставить("РеквизитыФормы", РеквизитыФормы); + + Если ПрименитьРезультатАвтоматическогоСопоставления Тогда + ПараметрыЗадания.Вставить("ТаблицаАвтоматическиСопоставленныхОбъектов", ПолучитьИзВременногоХранилища(АдресТаблицыАвтоматическиСопоставленныхОбъектов)); + КонецЕсли; + + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Сопоставление объектов'"); + + Результат = ДлительныеОперации.ВыполнитьВФоне( + "Обработки.СопоставлениеОбъектовИнформационныхБаз.ВыполнитьСопоставлениеОбъектов", + ПараметрыЗадания, + ПараметрыВыполнения); - РеквизитыФормы = Новый Структура; - РеквизитыФормы.Вставить("ТолькоПрименитьТаблицуНеутвержденныхЗаписей", ЗаписатьИЗакрыть); - РеквизитыФормы.Вставить("ПрименитьТаблицуНеутвержденныхЗаписей", ПрименитьТаблицуНеутвержденныхЗаписей); - РеквизитыФормы.Вставить("ПрименитьРезультатАвтоматическогоСопоставления", ПрименитьРезультатАвтоматическогоСопоставления); - - ПараметрыМетода = Новый Структура; - ПараметрыМетода.Вставить("КонтекстОбъекта", ОбменДаннымиСервер.ПолучитьКонтекстОбъекта(РеквизитФормыВЗначение("Объект"))); - ПараметрыМетода.Вставить("РеквизитыФормы", РеквизитыФормы); - - Если ПрименитьРезультатАвтоматическогоСопоставления Тогда - ПараметрыМетода.Вставить("ТаблицаАвтоматическиСопоставленныхОбъектов", ПолучитьИзВременногоХранилища(АдресТаблицыАвтоматическиСопоставленныхОбъектов)); - КонецЕсли; - - Результат = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "Обработки.СопоставлениеОбъектовИнформационныхБаз.ВыполнитьСопоставлениеОбъектов", - ПараметрыМетода, - НСтр("ru = 'Сопоставление объектов'")); - - Если Результат.ЗаданиеВыполнено Тогда - ПослеСопоставленияОбъектов(ПолучитьИзВременногоХранилища(Результат.АдресХранилища)); - Иначе - ДлительнаяОперация = Истина; - ИдентификаторЗадания = Результат.ИдентификаторЗадания; - АдресВременногоХранилища = Результат.АдресХранилища; - КонецЕсли; - - Исключение + Если Результат = Неопределено Тогда Отказ = Истина; - ЗаписьЖурналаРегистрации(НСтр("ru = 'Помощник сопоставления объектов.Анализ данных'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); - Возврат; - КонецПопытки; + Возврат Неопределено; + КонецЕсли; -КонецПроцедуры + ИдентификаторЗадания = Результат.ИдентификаторЗадания; + АдресВременногоХранилища = Результат.АдресРезультата; + + Если Результат.Статус = "Ошибка" Или Результат.Статус = "Отменено" Тогда + Отказ = Истина; + ЗафиксироватьОшибку(Результат.ПодробноеПредставлениеОшибки); + КонецЕсли; + + Возврат Результат; + +КонецФункции -// Страница 1: Сопоставление объектов. +// Страница 3: Сопоставление объектов. // &НаСервере Процедура ВыполнитьСопоставлениеОбъектовОкончание(Отказ) Попытка - ПослеСопоставленияОбъектов(ПолучитьИзВременногоХранилища(АдресВременногоХранилища)); + ПослеСопоставленияОбъектов(); Исключение Отказ = Истина; - ЗаписьЖурналаРегистрации(НСтр("ru = 'Помощник сопоставления объектов.Анализ данных'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), - УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗафиксироватьОшибку(ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); Возврат; КонецПопытки; КонецПроцедуры -// Страница 1: Сопоставление объектов. -// &НаСервере -Процедура ПослеСопоставленияОбъектов(Знач РезультатСопоставления) +Процедура ПослеСопоставленияОбъектов() Если ЗаписатьИЗакрыть Тогда Возврат; КонецЕсли; + РезультатСопоставления = ПолучитьИзВременногоХранилища(АдресВременногоХранилища); + // {Дайджест сопоставления} КоличествоОбъектовВИсточнике = РезультатСопоставления.КоличествоОбъектовВИсточнике; КоличествоОбъектовВПриемнике = РезультатСопоставления.КоличествоОбъектовВПриемнике; @@ -1452,18 +1444,30 @@ ОбработкаОбъект = Обработки.СопоставлениеОбъектовИнформационныхБаз.Создать(); ОбменДаннымиСервер.ЗагрузитьКонтекстОбъекта(РезультатСопоставления.КонтекстОбъекта, ОбработкаОбъект); + ЗначениеВРеквизитФормы(ОбработкаОбъект, "Объект"); Если ПрименитьТаблицуНеутвержденныхЗаписей Тогда Модифицированность = Ложь; КонецЕсли; - ПрименитьТаблицуНеутвержденныхЗаписей = Ложь; - ПрименитьРезультатАвтоматическогоСопоставления = Ложь; + ПрименитьТаблицуНеутвержденныхЗаписей = Ложь; + ПрименитьРезультатАвтоматическогоСопоставления = Ложь; АдресТаблицыАвтоматическиСопоставленныхОбъектов = ""; КонецПроцедуры +&НаСервере +Процедура ЗафиксироватьОшибку(ПодробноеПредставлениеОшибки) + + ЗаписьЖурналаРегистрации( + НСтр("ru = 'Помощник сопоставления объектов.Анализ данных'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + УровеньЖурналаРегистрации.Ошибка, + , + , ПодробноеПредставлениеОшибки); + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Инициализация переходов помощника. @@ -1471,16 +1475,14 @@ Процедура СценарийВыполненияСопоставленияОбъектов() ТаблицаПереходов.Очистить(); - ТаблицаПереходовНоваяСтрока(1, "ОшибкаСопоставленияОбъектов", "ОшибкаСопоставленияОбъектов_ПриОткрытии"); // Ожидание сопоставления объектов. ТаблицаПереходовНоваяСтрока(2, "ОжиданиеСопоставленияОбъектов",, Истина, "ОжиданиеСопоставленияОбъектов_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(3, "ОжиданиеСопоставленияОбъектов",, Истина, "ОжиданиеСопоставленияОбъектовДлительнаяОперация_ОбработкаДлительнойОперации"); - ТаблицаПереходовНоваяСтрока(4, "ОжиданиеСопоставленияОбъектов",, Истина, "ОжиданиеСопоставленияОбъектовДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); + ТаблицаПереходовНоваяСтрока(3, "ОжиданиеСопоставленияОбъектов",, Истина, "ОжиданиеСопоставленияОбъектовДлительнаяОперацияОкончание_ОбработкаДлительнойОперации"); // Работа с таблицей сопоставления объектов. - ТаблицаПереходовНоваяСтрока(5, "СопоставлениеОбъектов"); + ТаблицаПереходовНоваяСтрока(4, "СопоставлениеОбъектов"); КонецПроцедуры diff --git a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/ФормаВыбораСвязиСопоставления/Form.form b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/ФормаВыбораСвязиСопоставления/Form.form index d20b4990a..3c71c2625 100644 --- a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/ФормаВыбораСвязиСопоставления/Form.form +++ b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/Forms/ФормаВыбораСвязиСопоставления/Form.form @@ -49,7 +49,6 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:InputFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <wrap>true</wrap> <chooseType>true</chooseType> diff --git a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/ObjectModule.bsl b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/ObjectModule.bsl index efc115338..6e23a85f7 100644 --- a/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/ObjectModule.bsl +++ b/SSL/src/DataProcessors/СопоставлениеОбъектовИнформационныхБаз/ObjectModule.bsl @@ -91,7 +91,8 @@ Если ОбменДаннымиПовтИсп.ЭтоПланОбменаXDTO(УзелИнформационнойБазы) Тогда - Если Строка(СтрокаТаблицы.УникальныйИдентификаторИсточника.УникальныйИдентификатор()) = СтрокаТаблицы.УникальныйИдентификаторПриемника Тогда + Если Строка(СтрокаТаблицы.УникальныйИдентификаторИсточника.УникальныйИдентификатор()) = СтрокаТаблицы.УникальныйИдентификаторПриемника + ИЛИ Не ЗначениеЗаполнено(СтрокаТаблицы.УникальныйИдентификаторПриемника) Тогда Продолжить; КонецЕсли; @@ -140,7 +141,7 @@ УстановитьПривилегированныйРежим(Истина); - ТаблицаИсточника = ПолучитьТаблицуИнформационнойБазыИсточника(Отказ); + ТаблицаИсточника = ДанныеИнформационнойБазыИсточника(Отказ); Если Отказ Тогда Возврат; @@ -152,7 +153,7 @@ МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; // Получаем таблицы сопоставления объектов (сопоставленные, несопоставленные). - ПолучитьТаблицыСопоставленияОбъектов(ТаблицаИсточника, ПользовательскиеПоля, МенеджерВременныхТаблиц); + ДанныеСопоставленияОбъектов(ТаблицаИсточника, ПользовательскиеПоля, МенеджерВременныхТаблиц); // Получаем информацию дайджеста сопоставления объектов. ПолучитьДайджестСопоставления(МенеджерВременныхТаблиц); @@ -394,7 +395,7 @@ Процедура ВыполнитьСопоставлениеОбъектовИнформационныхБаз(Отказ) - ТаблицаИсточника = ПолучитьТаблицуИнформационнойБазыИсточника(Отказ); + ТаблицаИсточника = ДанныеИнформационнойБазыИсточника(Отказ); Если Отказ Тогда Возврат; @@ -413,13 +414,13 @@ МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; // Получаем таблицы сопоставления объектов (сопоставленные, несопоставленные). - ПолучитьТаблицыСопоставленияОбъектов(ТаблицаИсточника, ПользовательскиеПоля, МенеджерВременныхТаблиц); + ДанныеСопоставленияОбъектов(ТаблицаИсточника, ПользовательскиеПоля, МенеджерВременныхТаблиц); // Получаем информацию дайджеста сопоставления объектов. ПолучитьДайджестСопоставления(МенеджерВременныхТаблиц); // Получаем таблицу сопоставления. - ПолеТаблицаСопоставления = ПолучитьТаблицуСопоставления(ТаблицаИсточника, ПользовательскиеПоля, МенеджерВременныхТаблиц); + ПолеТаблицаСопоставления = РезультатСопоставленияОбъектов(ТаблицаИсточника, ПользовательскиеПоля, МенеджерВременныхТаблиц); МенеджерВременныхТаблиц.Закрыть(); @@ -433,7 +434,7 @@ Процедура ВыполнитьАвтоматическоеСопоставлениеОбъектовИнформационныхБаз(Отказ, СписокПолейСопоставления) - ТаблицаИсточника = ПолучитьТаблицуИнформационнойБазыИсточника(Отказ); + ТаблицаИсточника = ДанныеИнформационнойБазыИсточника(Отказ); Если Отказ Тогда Возврат; @@ -475,10 +476,10 @@ МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; // Получаем таблицы сопоставления объектов (сопоставленные, несопоставленные). - ПолучитьТаблицыСопоставленияОбъектов(ТаблицаИсточника, ПользовательскиеПоля, МенеджерВременныхТаблиц); + ДанныеСопоставленияОбъектов(ТаблицаИсточника, ПользовательскиеПоля, МенеджерВременныхТаблиц); // Получаем таблицу автоматического сопоставления. - ПолучитьТаблицуАвтоматическогоСопоставления(ТаблицаИсточника, СписокПолейСопоставленияНовый, ПользовательскиеПоля, МенеджерВременныхТаблиц); + ДанныеАвтоматическогоСопоставления(ТаблицаИсточника, СписокПолейСопоставленияНовый, ПользовательскиеПоля, МенеджерВременныхТаблиц); // Загружаем таблицу автоматически сопоставленных объектов в реквизит формы. ТаблицаАвтоматическиСопоставленныхОбъектов.Загрузить(ТаблицаАвтоматическиСопоставленныхОбъектовПолучить(МенеджерВременныхТаблиц, ПользовательскиеПоля)); @@ -489,7 +490,7 @@ Процедура ВыполнитьАвтоматическоеСопоставлениеОбъектовИнформационныхБазПоУмолчанию(Отказ, СписокПолейСопоставления) - ТаблицаИсточника = ПолучитьТаблицуИнформационнойБазыИсточника(Отказ); + ТаблицаИсточника = ДанныеИнформационнойБазыИсточника(Отказ); Если Отказ Тогда Возврат; @@ -501,10 +502,10 @@ МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; // Получаем таблицы сопоставления объектов (сопоставленные, несопоставленные). - ПолучитьТаблицыСопоставленияОбъектов(ТаблицаИсточника, ПользовательскиеПоля, МенеджерВременныхТаблиц); + ДанныеСопоставленияОбъектов(ТаблицаИсточника, ПользовательскиеПоля, МенеджерВременныхТаблиц); // Получаем таблицу автоматического сопоставления. - ПолучитьТаблицуАвтоматическогоСопоставления(ТаблицаИсточника, СписокПолейСопоставления, ПользовательскиеПоля, МенеджерВременныхТаблиц); + ДанныеАвтоматическогоСопоставления(ТаблицаИсточника, СписокПолейСопоставления, ПользовательскиеПоля, МенеджерВременныхТаблиц); // Загружаем обновленную таблицу неутвержденных связей в реквизит объекта. ТаблицаНеутвержденныхСвязей.Загрузить(ОбъединитьТаблицыНеутвержденныхСвязейИАвтоматическогоСопоставления(МенеджерВременныхТаблиц)); @@ -513,7 +514,7 @@ КонецПроцедуры -Процедура ПолучитьТаблицыСопоставленияОбъектов(ТаблицаИсточника, ПользовательскиеПоля, МенеджерВременныхТаблиц) +Процедура ДанныеСопоставленияОбъектов(ТаблицаИсточника, ПользовательскиеПоля, МенеджерВременныхТаблиц) // получаем таблицы: // @@ -544,6 +545,8 @@ |ПОМЕСТИТЬ ТаблицаИсточника |ИЗ | &ТаблицаИсточникаПараметр КАК ТаблицаИсточникаПараметр + |ГДЕ + | ТаблицаИсточникаПараметр.УникальныйИдентификатор <> """" |ИНДЕКСИРОВАТЬ ПО | Ссылка, | УникальныйИдентификатор @@ -1233,23 +1236,23 @@ КонецПроцедуры -Процедура ПолучитьТаблицуАвтоматическогоСопоставления(ТаблицаИсточника, СписокПолейСопоставления, ПользовательскиеПоля, МенеджерВременныхТаблиц) +Процедура ДанныеАвтоматическогоСопоставления(ТаблицаИсточника, СписокПолейСопоставления, ПользовательскиеПоля, МенеджерВременныхТаблиц) - МассивОтмеченныхЭлементовСписка = ОбщегоНазначенияКлиентСервер.ПолучитьМассивОтмеченныхЭлементовСписка(СписокПолейСопоставления); + МассивОтмеченныхЭлементовСписка = ОбщегоНазначенияКлиентСервер.ОтмеченныеЭлементы(СписокПолейСопоставления); Если МассивОтмеченныхЭлементовСписка.Количество() = 0 Тогда - ПолучитьТаблицуАвтоматическогоСопоставленияПоGUID(ПользовательскиеПоля, МенеджерВременныхТаблиц); + ДанныеАвтоматическогоСопоставленияПоGUID(ПользовательскиеПоля, МенеджерВременныхТаблиц); Иначе - ПолучитьТаблицуАвтоматическогоСопоставленияПоGUIDПлюсПоПолямПоиска(ТаблицаИсточника, СписокПолейСопоставления, ПользовательскиеПоля, МенеджерВременныхТаблиц); + ДанныеАвтоматическогоСопоставленияПоGUIDПлюсПоПолямПоиска(ТаблицаИсточника, СписокПолейСопоставления, ПользовательскиеПоля, МенеджерВременныхТаблиц); КонецЕсли; КонецПроцедуры -Процедура ПолучитьТаблицуАвтоматическогоСопоставленияПоGUID(ПользовательскиеПоля, МенеджерВременныхТаблиц) +Процедура ДанныеАвтоматическогоСопоставленияПоGUID(ПользовательскиеПоля, МенеджерВременныхТаблиц) // получаем таблицы: // @@ -1312,7 +1315,7 @@ КонецПроцедуры -Процедура ПолучитьТаблицуАвтоматическогоСопоставленияПоGUIDПлюсПоПолямПоиска(ТаблицаИсточника, СписокПолейСопоставления, ПользовательскиеПоля, МенеджерВременныхТаблиц) +Процедура ДанныеАвтоматическогоСопоставленияПоGUIDПлюсПоПолямПоиска(ТаблицаИсточника, СписокПолейСопоставления, ПользовательскиеПоля, МенеджерВременныхТаблиц) // получаем таблицы: // @@ -1790,7 +1793,7 @@ КонецФункции -Функция ПолучитьТаблицуСопоставления(ТаблицаИсточника, ПользовательскиеПоля, МенеджерВременныхТаблиц) +Функция РезультатСопоставленияОбъектов(ТаблицаИсточника, ПользовательскиеПоля, МенеджерВременныхТаблиц) ТекстЗапроса = " |//////////////////////////////////////////////////////////////////////////////// @@ -1877,7 +1880,7 @@ КонецФункции -Функция ПолучитьТаблицуИнформационнойБазыИсточника(Отказ) +Функция ДанныеИнформационнойБазыИсточника(Отказ) // Возвращаемое значение функции. ТаблицаДанных = Неопределено; diff --git a/SSL/src/DataProcessors/СписокРеспондента/Forms/АрхивАнкет/Module.bsl b/SSL/src/DataProcessors/СписокРеспондента/Forms/АрхивАнкет/Module.bsl index 068494ebb..77519f96a 100644 --- a/SSL/src/DataProcessors/СписокРеспондента/Forms/АрхивАнкет/Module.bsl +++ b/SSL/src/DataProcessors/СписокРеспондента/Forms/АрхивАнкет/Module.bsl @@ -58,7 +58,12 @@ &НаСервере Процедура УстановитьРеспондентаСогласноТекущемуВнешнемуПользователю() - Объект.Респондент = ВнешниеПользователи.ПолучитьОбъектАвторизацииВнешнегоПользователя(); + ТекущийПользователь = Пользователи.АвторизованныйПользователь(); + Если ТипЗнч(ТекущийПользователь) <> Тип("СправочникСсылка.ВнешниеПользователи") Тогда + Объект.Респондент = ТекущийПользователь; + Иначе + Объект.Респондент = ВнешниеПользователи.ПолучитьОбъектАвторизацииВнешнегоПользователя(ТекущийПользователь); + КонецЕсли; УстановитьПараметрыДинамическогоСпискаДереваАнкет(); КонецПроцедуры diff --git a/SSL/src/DataProcessors/СписокРеспондента/Forms/Форма/Form.form b/SSL/src/DataProcessors/СписокРеспондента/Forms/Форма/Form.form index 0c1956aca..456c461ce 100644 --- a/SSL/src/DataProcessors/СписокРеспондента/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/СписокРеспондента/Forms/Форма/Form.form @@ -290,111 +290,6 @@ <scrollOnCompress>false</scrollOnCompress> </extInfo> </items> - <items xsi:type="form:FormGroup"> - <name>ИнформацияДляПользователя</name> - <id>16</id> - <items xsi:type="form:Decoration"> - <name>КартинкаИнформацияДляПользователя</name> - <id>17</id> - <title> - <key>ru</key> - <value>Картинка информация для пользователя</value> - - true - true - - true - - - КартинкаИнформацияДляПользователяExtendedTooltip - 28 - Label - true - true - - Left - - - - КартинкаИнформацияДляПользователяКонтекстноеМеню - 18 - true - - 5 - true - 2 - true - - - CommonPicture.Информация32 - - - - - НадписьИнформацияДляПользователя - 19 - - <key>ru</key> - <value>Список анкет выводится только для респондентов, -у которых имеются соответствующие права доступа.</value> - - true - true - - true - - - НадписьИнформацияДляПользователяExtendedTooltip - 29 - Label - true - true - - Left - - - - НадписьИнформацияДляПользователяКонтекстноеМеню - 20 - true - - Label - true - true - - Left - Center - - - true - true - - true - - - <key>ru</key> - <value>Информация для пользователя</value> - - - ru - Информация для пользователя - - - ИнформацияДляПользователяExtendedTooltip - 27 - Label - true - true - - Left - - - Page - - auto - false - - true true diff --git a/SSL/src/DataProcessors/СписокРеспондента/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/СписокРеспондента/Forms/Форма/Module.bsl index dc7997ec4..04fd5c8f5 100644 --- a/SSL/src/DataProcessors/СписокРеспондента/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/СписокРеспондента/Forms/Форма/Module.bsl @@ -8,18 +8,15 @@ Возврат; КонецЕсли; - Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка) Тогда - Возврат; - КонецЕсли; - ТекущийПользователь = Пользователи.АвторизованныйПользователь(); Если ТипЗнч(ТекущийПользователь) <> Тип("СправочникСсылка.ВнешниеПользователи") Тогда - Элементы.Страницы.ТекущаяСтраница = Элементы.ИнформацияДляПользователя; + Объект.Респондент = ТекущийПользователь; Иначе Объект.Респондент = ВнешниеПользователи.ПолучитьОбъектАвторизацииВнешнегоПользователя(ТекущийПользователь); - ПолучитьТаблицуАнкетРеспондента(); КонецЕсли; + ПолучитьТаблицуАнкетРеспондента(); + КонецПроцедуры &НаКлиенте diff --git a/SSL/src/DataProcessors/СписокРеспондента/Help/ru.html b/SSL/src/DataProcessors/СписокРеспондента/Help/ru.html index 17a13ee1f..16a72037e 100644 --- a/SSL/src/DataProcessors/СписокРеспондента/Help/ru.html +++ b/SSL/src/DataProcessors/СписокРеспондента/Help/ru.html @@ -2,6 +2,7 @@

          Предназначен для просмотра и редактирования анкет, доступных респонденту.

          После входа в программу респондента для него открывается список Доступные анкеты. В списке выводятся наименования анкет.

          Если опрос был запланирован с ограничением по времени проведения, то в списке доступных анкет после названия анкеты будет указан срок, до которого необходимо ее заполнить.

          +

          Если анкета уже заполнялась ранее, но не была завершена (составителем разрешено ее заполнение в несколько подходов), то в списке доступных анкет указывается дата ее последнего редактирования.

          Ранее заполненные анкеты респондент может посмотреть по команде Архив анкет.

          См. также:

          \ No newline at end of file diff --git a/SSL/src/DataProcessors/ТекущиеДела/Forms/НастройкаТекущихДел/Form.form b/SSL/src/DataProcessors/ТекущиеДела/Forms/НастройкаТекущихДел/Form.form index a40a1eedb..ea0fd9bb4 100644 --- a/SSL/src/DataProcessors/ТекущиеДела/Forms/НастройкаТекущихДел/Form.form +++ b/SSL/src/DataProcessors/ТекущиеДела/Forms/НастройкаТекущихДел/Form.form @@ -582,7 +582,6 @@ true Label - true true Left @@ -597,11 +596,6 @@ ru Группа автообновление - - ru - Группа автообновление - - false ГруппаАвтообновлениеРасширеннаяПодсказка 41 @@ -758,7 +752,6 @@ OnCreateAtServer ПриСозданииНаСервере
          - 20 LockOwner true true diff --git a/SSL/src/DataProcessors/ТекущиеДела/Forms/Форма/Form.form b/SSL/src/DataProcessors/ТекущиеДела/Forms/Форма/Form.form index 8e7681b44..db8bccf52 100644 --- a/SSL/src/DataProcessors/ТекущиеДела/Forms/Форма/Form.form +++ b/SSL/src/DataProcessors/ТекущиеДела/Forms/Форма/Form.form @@ -57,9 +57,7 @@ 12 true - 6 true - 3 true @@ -118,9 +116,7 @@ 19 true - 4 true - 2 true @@ -156,7 +152,6 @@ true Label - true 2 true diff --git a/SSL/src/DataProcessors/ТекущиеДела/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/ТекущиеДела/Forms/Форма/Module.bsl index b3d561cf5..bf0a16a98 100644 --- a/SSL/src/DataProcessors/ТекущиеДела/Forms/Форма/Module.bsl +++ b/SSL/src/DataProcessors/ТекущиеДела/Forms/Форма/Module.bsl @@ -10,7 +10,7 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка) Тогда + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; @@ -52,9 +52,13 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + ОтключитьОбработчикОжидания("ОбновитьТекущиеДелаАвтоматически"); - ДействияПриЗакрытииПанелиТекущихДел(); + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + КонецПроцедуры #КонецОбласти @@ -147,6 +151,7 @@ СвернутыеРазделы = СвернутыеРазделы(); ТекущийРаздел = ""; + ПараметрыДел.Очистить(); Для Каждого Дело Из ТекущиеДела Цикл Если Дело.ЭтоРаздел Тогда @@ -178,9 +183,8 @@ Иначе // Дочерние дела создаются заново. СоздатьДочернееДело(Дело); - ЗаполнитьПараметрыДела(Дело); КонецЕсли; - + ЗаполнитьПараметрыДела(Дело); КонецЦикла; КонецПроцедуры @@ -204,7 +208,6 @@ ИмяГруппыДела = СтрЗаменить(РодительДела.Имя, "ОбщаяГруппа", "Группа"); ГруппаДела = РодительДела.ПодчиненныеЭлементы.Найти(ИмяГруппыДела); СоздатьДело(Дело, ГруппаДела, ВключенаВидимостьДела); - ЗаполнитьПараметрыДела(Дело); Возврат; КонецЕсли; @@ -392,6 +395,7 @@ ПараметрыВыполнения.ОжидатьЗавершение = 0; // запускать сразу ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Обновление списка текущих дел'"); ПараметрыВыполнения.АдресРезультата = ТекущиеДелаВХранилище; + ПараметрыВыполнения.ЗапуститьВФоне = Истина; // Всегда в фоне (очередь заданий в файловом варианте). Результат = ДлительныеОперации.ВыполнитьВФоне("ТекущиеДелаСлужебный.СформироватьСписокТекущихДелПользователя", Новый Структура, ПараметрыВыполнения); @@ -535,6 +539,7 @@ Элемент.Заголовок = ЗаголовокДела; Элемент.Видимость = (ВключенаВидимостьДела И Дело.ЕстьДела); Элемент.Гиперссылка = ЗначениеЗаполнено(Дело.Форма); + Элемент.АвтоМаксимальнаяШирина = Ложь; Элемент.УстановитьДействие("Нажатие", "Подключаемый_ОбработатьНажатиеНаГиперссылку"); Если Дело.Важное Тогда @@ -579,7 +584,7 @@ Элемент.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Лево; Элемент.Заголовок = Дело.ПредставлениеРаздела; Если ИнтерфейсТакси Тогда - Элемент.Шрифт = Новый Шрифт("ШрифтДиалоговИМеню", 12); + Элемент.Шрифт = Новый Шрифт(WindowsШрифты.ШрифтДиалоговИМеню,, 12); Иначе Элемент.Шрифт = Новый Шрифт(,, Истина); КонецЕсли; @@ -604,6 +609,7 @@ ЗаголовокПодчиненногоДела = ЗаголовокПодчиненногоДела(ЭлементДелоВладелец.РасширеннаяПодсказка.Заголовок, Дело); ЭлементДелоВладелец.РасширеннаяПодсказка.Заголовок = ЗаголовокПодчиненногоДела; + ЭлементДелоВладелец.РасширеннаяПодсказка.АвтоМаксимальнаяШирина = Ложь; ЭлементДелоВладелец.РасширеннаяПодсказка.УстановитьДействие("ОбработкаНавигационнойСсылки", "Подключаемый_ОбработкаНажатияНавигационнойСсылки"); // Включение индикатора наличия важных дел. @@ -664,10 +670,7 @@ &НаСервере Процедура ЗаполнитьПараметрыДела(Дело) - СтрокаДело = ПараметрыДел.Добавить(); - СтрокаДело.Идентификатор = Дело.Идентификатор; - СтрокаДело.Форма = Дело.Форма; - СтрокаДело.ПараметрыФормы = Дело.ПараметрыФормы; + ЗаполнитьЗначенияСвойств(ПараметрыДел.Добавить(), Дело); КонецПроцедуры @@ -740,16 +743,6 @@ КонецФункции -&НаСервере -Процедура ДействияПриЗакрытииПанелиТекущихДел() - - ЗаполнитьСвернутыеГруппы(); - Если ДлительнаяОперация <> Неопределено Тогда - ДлительныеОперации.ОтменитьВыполнениеЗадания(ДлительнаяОперация.ИдентификаторЗадания); - КонецЕсли; - -КонецПроцедуры - &НаСервере Процедура ЗаполнитьСвернутыеГруппы() @@ -789,6 +782,7 @@ ИмяГруппыРаздела = СтрЗаменить(ИмяЭлемента, "Картинка", ""); Элемент = Элементы[ИмяЭлемента]; + Свернут = Ложь; Если Элемент.Картинка = БиблиотекаКартинок.СтрелкаВниз Тогда Если РазделыСВажнымиДелами.Свойство(ИмяГруппыРаздела) Тогда Элемент.Картинка = БиблиотекаКартинок.СтрелкаВправоКрасная; @@ -796,11 +790,17 @@ Элемент.Картинка = БиблиотекаКартинок.СтрелкаВправо; КонецЕсли; Элементы["Группа" + ИмяГруппыРаздела].Видимость = Ложь; + Свернут = Истина; Иначе Элемент.Картинка = БиблиотекаКартинок.СтрелкаВниз; Элементы["Группа" + ИмяГруппыРаздела].Видимость = Истина; КонецЕсли; + СвернутыеРазделы = СвернутыеРазделы(); + СвернутыеРазделы.Вставить(ИмяГруппыРаздела, Свернут); + + СохранитьСвернутыеРазделы(СвернутыеРазделы); + КонецПроцедуры &НаСервере diff --git a/SSL/src/DataProcessors/ТекущиеДела/ManagerModule.bsl b/SSL/src/DataProcessors/ТекущиеДела/ManagerModule.bsl new file mode 100644 index 000000000..adb1efd71 --- /dev/null +++ b/SSL/src/DataProcessors/ТекущиеДела/ManagerModule.bsl @@ -0,0 +1,13 @@ +#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда + +#Область СлужебныйПрограммныйИнтерфейс + +// Возвращает группу для дел, не входящих в разделы командного интерфейса. +// +Функция ПолноеИмя() Экспорт + Возврат НСтр("ru = 'Прочие дела'"); +КонецФункции + +#КонецОбласти + +#КонецЕсли \ No newline at end of file diff --git a/SSL/src/DataProcessors/ТранспортСообщенийОбменаFILE/ObjectModule.bsl b/SSL/src/DataProcessors/ТранспортСообщенийОбменаFILE/ObjectModule.bsl index c300eb505..e0fb392a0 100644 --- a/SSL/src/DataProcessors/ТранспортСообщенийОбменаFILE/ObjectModule.bsl +++ b/SSL/src/DataProcessors/ТранспортСообщенийОбменаFILE/ObjectModule.bsl @@ -137,13 +137,16 @@ ПолучитьСообщениеОбОшибке(2); Возврат Ложь; - - ИначеЕсли Не СоздатьФайлПроверки() Тогда + КонецЕсли; + + ИмяФайлаПроверки = ОбменДаннымиСервер.ИмяВременногоФайлаПроверкиПодключения(); + + Если Не СоздатьФайлПроверки(ИмяФайлаПроверки) Тогда ПолучитьСообщениеОбОшибке(8); Возврат Ложь; - ИначеЕсли Не УдалитьФайлПроверки() Тогда + ИначеЕсли Не УдалитьФайлПроверки(ИмяФайлаПроверки) Тогда ПолучитьСообщениеОбОшибке(9); Возврат Ложь; @@ -437,14 +440,14 @@ Возврат Истина; КонецФункции -Функция СоздатьФайлПроверки() +Функция СоздатьФайлПроверки(ИмяФайлаПроверки) ТекстовыйДокумент = Новый ТекстовыйДокумент; ТекстовыйДокумент.ДобавитьСтроку(НСтр("ru = 'Временный файл проверки'")); Попытка - ТекстовыйДокумент.Записать(ОбщегоНазначенияКлиентСервер.ПолучитьПолноеИмяФайла(ИмяКаталогаОбменаИнформацией(), ИмяВременногоФайлаФлага())); + ТекстовыйДокумент.Записать(ОбщегоНазначенияКлиентСервер.ПолучитьПолноеИмяФайла(ИмяКаталогаОбменаИнформацией(), ИмяФайлаПроверки)); Исключение ЗаписьЖурналаРегистрации(ОбменДаннымиСервер.СобытиеЖурналаРегистрацииОбменДанными(), УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); @@ -454,11 +457,11 @@ Возврат Истина; КонецФункции -Функция УдалитьФайлПроверки() +Функция УдалитьФайлПроверки(ИмяФайлаПроверки) Попытка - УдалитьФайлы(ИмяКаталогаОбменаИнформацией(), ИмяВременногоФайлаФлага()); + УдалитьФайлы(ИмяКаталогаОбменаИнформацией(), ИмяФайлаПроверки); Исключение ЗаписьЖурналаРегистрации(ОбменДаннымиСервер.СобытиеЖурналаРегистрацииОбменДанными(), УровеньЖурналаРегистрации.Ошибка,,, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); @@ -524,12 +527,6 @@ КонецФункции -Функция ИмяВременногоФайлаФлага() - - Возврат "flag.tmp"; - -КонецФункции - /////////////////////////////////////////////////////////////////////////////// // Инициализация diff --git a/SSL/src/DataProcessors/ТранспортСообщенийОбменаFTP/ObjectModule.bsl b/SSL/src/DataProcessors/ТранспортСообщенийОбменаFTP/ObjectModule.bsl index 9e51132a1..ed9c24643 100644 --- a/SSL/src/DataProcessors/ТранспортСообщенийОбменаFTP/ObjectModule.bsl +++ b/SSL/src/DataProcessors/ТранспортСообщенийОбменаFTP/ObjectModule.bsl @@ -11,6 +11,8 @@ Перем ВременныйФайлСообщенияОбмена; // Временный файл сообщения обмена для выгрузки/загрузки данных. Перем ВременныйКаталогСообщенийОбмена; // Временный каталог для сообщений обмена. + +Перем ТаймаутОтправкиПолученияДанных; // Таймаут, используемый для FTP соединения при отправке и получении данных. #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -135,14 +137,14 @@ // Создаем файл во временном каталоге. ИмяВременногоФайлаПроверкиПодключения = ПолучитьИмяВременногоФайла("tmp"); - ИмяФайлаНаСторонеПриемника = ОбменДаннымиСервер.ИмяФайлаПроверкиПодключения(); + ИмяФайлаНаСторонеПриемника = ОбменДаннымиСервер.ИмяВременногоФайлаПроверкиПодключения(); ЗаписьТекста = Новый ЗаписьТекста(ИмяВременногоФайлаПроверкиПодключения); ЗаписьТекста.ЗаписатьСтроку(ИмяФайлаНаСторонеПриемника); ЗаписьТекста.Закрыть(); // Копируем файл на внешний ресурс из временного каталога. - Результат = ВыполнитьКопированиеФайлаНаFTPСервер(ИмяВременногоФайлаПроверкиПодключения, ИмяФайлаНаСторонеПриемника); + Результат = ВыполнитьКопированиеФайлаНаFTPСервер(ИмяВременногоФайлаПроверкиПодключения, ИмяФайлаНаСторонеПриемника, 10); // Удаляем файл на внешнем ресурсе. Если Результат Тогда @@ -301,7 +303,7 @@ Если Результат Тогда // Копируем файл архива на FTP сервер в каталог обмена информацией. - Если Не ВыполнитьКопированиеФайлаНаFTPСервер(ИмяВременногоФайлаАрхива, ИмяФайлаИсходящегоСообщения) Тогда + Если Не ВыполнитьКопированиеФайлаНаFTPСервер(ИмяВременногоФайлаАрхива, ИмяФайлаИсходящегоСообщения, ТаймаутОтправкиПолученияДанных) Тогда Результат = Ложь; КонецЕсли; @@ -322,7 +324,7 @@ Если Результат Тогда // Копируем файл архива на FTP сервер в каталог обмена информацией. - Если Не ВыполнитьКопированиеФайлаНаFTPСервер(ИмяФайлаСообщенияОбмена(), ИмяФайлаИсходящегоСообщения) Тогда + Если Не ВыполнитьКопированиеФайлаНаFTPСервер(ИмяФайлаСообщенияОбмена(), ИмяФайлаИсходящегоСообщения, ТаймаутОтправкиПолученияДанных) Тогда Результат = Ложь; КонецЕсли; @@ -341,7 +343,7 @@ ТаблицаФайловСообщенийОбмена.Колонки.Добавить("ВремяИзменения"); Попытка - FTPСоединение = ПолучитьFTPСоединение(); + FTPСоединение = ПолучитьFTPСоединение(ТаймаутОтправкиПолученияДанных); Исключение ТекстОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); ПолучитьСообщениеОбОшибке(102); @@ -534,9 +536,9 @@ /////////////////////////////////////////////////////////////////////////////// // Работа с FTP -Функция ПолучитьFTPСоединение() +Функция ПолучитьFTPСоединение(Таймаут) - НастройкиFTP = ОбменДаннымиСервер.FTPНастройкиСоединения(); + НастройкиFTP = ОбменДаннымиСервер.FTPНастройкиСоединения(Таймаут); НастройкиFTP.Сервер = ИмяFTPСервера; НастройкиFTP.Порт = FTPСоединениеПорт; НастройкиFTP.ИмяПользователя = FTPСоединениеПользователь; @@ -548,7 +550,7 @@ КонецФункции -Функция ВыполнитьКопированиеФайлаНаFTPСервер(Знач ИмяФайлаИсточника, ИмяФайлаПриемника) +Функция ВыполнитьКопированиеФайлаНаFTPСервер(Знач ИмяФайлаИсточника, ИмяФайлаПриемника, Знач Таймаут) Перем КаталогНаСервере; @@ -556,7 +558,7 @@ КаталогНаСервере = СерверИКаталогНаСервере.ИмяКаталога; Попытка - FTPСоединение = ПолучитьFTPСоединение(); + FTPСоединение = ПолучитьFTPСоединение(Таймаут); Исключение ТекстОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); ПолучитьСообщениеОбОшибке(102); @@ -594,7 +596,7 @@ КаталогНаСервере = СерверИКаталогНаСервере.ИмяКаталога; Попытка - FTPСоединение = ПолучитьFTPСоединение(); + FTPСоединение = ПолучитьFTPСоединение(10); Исключение ТекстОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); ПолучитьСообщениеОбОшибке(102); @@ -614,7 +616,7 @@ СообщениеОбОшибке = НСтр("ru = 'Не удалось проверить подключение с помощью тестового файла ""%1"". |Возможно, заданный каталог не существует или не доступен. |Рекомендуется также обратиться к документации по FTP-серверу для настройки поддержки имен файлов с кириллицей.'"); - СообщениеОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СообщениеОбОшибке, ОбменДаннымиСервер.ИмяФайлаПроверкиПодключения()); + СообщениеОбОшибке = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(СообщениеОбОшибке, ИмяФайла); ДополнитьСообщениеОбОшибке(СообщениеОбОшибке); КонецЕсли; @@ -654,6 +656,8 @@ ИмяОбъекта = НСтр("ru = 'Обработка: %1'"); ИмяОбъекта = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ИмяОбъекта, Метаданные().Имя); +ТаймаутОтправкиПолученияДанных = 12*60*60; + #КонецОбласти #КонецЕсли \ No newline at end of file diff --git a/SSL/src/DataProcessors/УдалениеПомеченныхОбъектов/Forms/ОсновнаяФорма/Form.form b/SSL/src/DataProcessors/УдалениеПомеченныхОбъектов/Forms/ОсновнаяФорма/Form.form index 710e04cb2..4cb9d65b4 100644 --- a/SSL/src/DataProcessors/УдалениеПомеченныхОбъектов/Forms/ОсновнаяФорма/Form.form +++ b/SSL/src/DataProcessors/УдалениеПомеченныхОбъектов/Forms/ОсновнаяФорма/Form.form @@ -5,7 +5,7 @@ Удаление помеченных объектов - СтраницыФормы + Страницы 1 СтраницаВыборРежимаУдаления @@ -99,7 +99,6 @@ Label true true - false true Left @@ -131,9 +130,7 @@ 172 true - 2 true - 1 true @@ -173,7 +170,6 @@ true Label - true true @@ -983,16 +979,20 @@ СтраницаДлительнаяОперация 59 - АвтоОтступ1 - 205 + ФоновоеЗаданиеАнимация + 446 + + <key>ru</key> + <value>Фоновое задание анимация</value> + true true true - АвтоОтступ1РасширеннаяПодсказка - 207 + ФоновоеЗаданиеАнимацияРасширеннаяПодсказка + 448 Label true true @@ -1001,27 +1001,28 @@
          - АвтоОтступ1КонтекстноеМеню - 206 + ФоновоеЗаданиеАнимацияКонтекстноеМеню + 447 true - Label true true - true - - Left + Center + + + CommonPicture.ДлительнаяОперация48 + - Группа1 - 442 + Группа2 + 444 - ФоновоеЗаданиеАнимация - 446 + НадписьДлительнаяОперация + 202 <key>ru</key> - <value>Фоновое задание анимация</value> + <value>Надпись длительная операция</value> true true @@ -1029,8 +1030,8 @@ true
          - ФоновоеЗаданиеАнимацияРасширеннаяПодсказка - 448 + НадписьДлительнаяОперацияРасширеннаяПодсказка + 204 Label true true @@ -1039,147 +1040,33 @@ - ФоновоеЗаданиеАнимацияКонтекстноеМеню - 447 + НадписьДлительнаяОперацияКонтекстноеМеню + 203 true - 5 - true - 2 + Label + 1 true - - - CommonPicture.ДлительнаяОперация48 - + Center + + Center - - Группа2 - 444 - - НадписьДлительнаяОперация - 202 - - <key>ru</key> - <value>Надпись длительная операция</value> - - true - true - - true - - - НадписьДлительнаяОперацияРасширеннаяПодсказка - 204 - Label - true - true - - Left - - - - НадписьДлительнаяОперацияКонтекстноеМеню - 203 - true - - Label - true - 1 - true - true - - Center - - - - ФоновоеЗаданиеПроцент - 184 - true - true - - true - - - ФоновоеЗаданиеПроцент - - None - - ФоновоеЗаданиеПроцентРасширеннаяПодсказка - 186 - Label - true - true - - Left - - - - ФоновоеЗаданиеПроцентКонтекстноеМеню - 185 - true - - ProgressBarField - Enter - true - Left - true - - 32 - true - 1 - true - true - 100 - true - - - - ФоновоеЗаданиеСостояние - 194 - true - true - - true - - - ФоновоеЗаданиеСостояние - - None - - ФоновоеЗаданиеСостояниеРасширеннаяПодсказка - 196 - Label - true - true - - Left - - - - ФоновоеЗаданиеСостояниеКонтекстноеМеню - 195 - true - - LabelField - Center - Enter - true - Left - true - - true - true - - + + ФоновоеЗаданиеПроцент + 469 true true true + + ФоновоеЗаданиеПроцент + + None - Группа2РасширеннаяПодсказка - 445 + ФоновоеЗаданиеПроцентРасширеннаяПодсказка + 471 Label true true @@ -1187,14 +1074,64 @@ Left - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + + ФоновоеЗаданиеПроцентКонтекстноеМеню + 470 + true + + ProgressBarField + Center + Enter + true + Left + true + + 32 + true + 1 + true + true + 100 + true + + + + ФоновоеЗаданиеСостояние + 472 + true + true + + true + + + ФоновоеЗаданиеСостояние + + None + + ФоновоеЗаданиеСостояниеРасширеннаяПодсказка + 474 + Label + true + true + + Left + + + + ФоновоеЗаданиеСостояниеКонтекстноеМеню + 473 + true + + LabelField + Center + Center + Center + Enter + true + Left + true + + true true @@ -1202,9 +1139,10 @@ true + Center - Группа1РасширеннаяПодсказка - 443 + Группа2РасширеннаяПодсказка + 445 Label true true @@ -1214,6 +1152,8 @@ UsualGroup + Vertical + Center Auto true true @@ -1221,42 +1161,12 @@ Auto - - АвтоОтступ2 - 208 - true - true - - true - - - АвтоОтступ2РасширеннаяПодсказка - 210 - Label - true - true - - Left - - - - АвтоОтступ2КонтекстноеМеню - 209 - true - - Label - true - true - true - - Left - - true true true + true СтраницаДлительнаяОперацияРасширеннаяПодсказка 110 @@ -1269,7 +1179,7 @@ Page - Vertical + Center auto false @@ -1277,87 +1187,17 @@ СтраницаУдалениеНеТребуется 174 - - ГруппаУдалениеНеТребуется - 176 - - КартинкаУдалениеНеТребуется - 178 - true - true - - true - - - КартинкаУдалениеНеТребуетсяРасширеннаяПодсказка - 180 - Label - true - true - - Left - - - - КартинкаУдалениеНеТребуетсяКонтекстноеМеню - 179 - true - - 6 - true - 3 - true - - - CommonPicture.Информация32 - - - - - НадписьУдалениеНеТребуется - 181 - - <key>ru</key> - <value>Удаление не требуется. -Нет объектов, помеченных на удаление.</value> - - true - true - - true - - - НадписьУдалениеНеТребуетсяРасширеннаяПодсказка - 183 - Label - true - true - - Left - - - - НадписьУдалениеНеТребуетсяКонтекстноеМеню - 182 - true - - Label - true - 3 - true - - Left - Center - - + + КартинкаУдалениеНеТребуется + 178 true true true - ГруппаУдалениеНеТребуетсяРасширеннаяПодсказка - 177 + КартинкаУдалениеНеТребуетсяРасширеннаяПодсказка + 180 Label true true @@ -1365,13 +1205,55 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + + КартинкаУдалениеНеТребуетсяКонтекстноеМеню + 179 + true + + true + true + Center + + + CommonPicture.Информация32 + + + + + НадписьУдалениеНеТребуется + 181 + + <key>ru</key> + <value>Удаление не требуется. +Нет объектов, помеченных на удаление.</value> + + true + true + + true + + + НадписьУдалениеНеТребуетсяРасширеннаяПодсказка + 183 + Label + true + true + + Left + + + + НадписьУдалениеНеТребуетсяКонтекстноеМеню + 182 + true + + Label + 5 + true + Center + + Left + Center true @@ -1391,7 +1273,6 @@ Page - Vertical auto false @@ -1399,87 +1280,17 @@ СтраницаУспешноЗавершено 142 - - ГруппаУспешноЗавершено - 144 - - КартинкаУспешноЗавершено - 146 - true - true - - true - - - КартинкаУспешноЗавершеноРасширеннаяПодсказка - 148 - Label - true - true - - Left - - - - КартинкаУспешноЗавершеноКонтекстноеМеню - 147 - true - - 6 - true - 3 - true - - - CommonPicture.Успешно32 - - - - - НадписьУспешноЗавершено - 149 - - <key>ru</key> - <value>Удаление помеченных объектов успешно завершено. -Удалено объектов: 47.</value> - - true - true - - true - - - НадписьУспешноЗавершеноРасширеннаяПодсказка - 151 - Label - true - true - - Left - - - - НадписьУспешноЗавершеноКонтекстноеМеню - 150 - true - - Label - true - 3 - true - - Left - Center - - + + КартинкаУспешноЗавершено + 146 true true true - ГруппаУспешноЗавершеноРасширеннаяПодсказка - 145 + КартинкаУспешноЗавершеноРасширеннаяПодсказка + 148 Label true true @@ -1487,13 +1298,55 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + + КартинкаУспешноЗавершеноКонтекстноеМеню + 147 + true + + true + true + Center + + + CommonPicture.Успешно32 + + + + + НадписьУспешноЗавершено + 149 + + <key>ru</key> + <value>Удаление помеченных объектов успешно завершено. +Удалено объектов: 47.</value> + + true + true + + true + + + НадписьУспешноЗавершеноРасширеннаяПодсказка + 151 + Label + true + true + + Left + + + + НадписьУспешноЗавершеноКонтекстноеМеню + 150 + true + + Label + 5 + true + Center + + Left + Center true @@ -1501,6 +1354,7 @@ true + true СтраницаУспешноЗавершеноРасширеннаяПодсказка 143 @@ -1513,7 +1367,6 @@ Page - Vertical auto false @@ -1530,6 +1383,10 @@ НадписьИтогиЧастичногоУдаления 217 + + <key>ru</key> + <value>Надпись итоги частичного удаления</value> + true true @@ -1551,7 +1408,6 @@ true Label - true true System.DefaultGUIFont @@ -1645,32 +1501,6 @@ НеУдаленныеКоманднаяПанель 222 - - НеУдаленныеИзменить - 285 - true - true - - true - - - НеУдаленныеИзменитьРасширеннаяПодсказка - 286 - Label - true - true - - Left - - - Form.Item.НеУдаленные.StandardCommand.Change - Normal - Auto - true - true - UserCmds - Auto - НеУдаленныеЗаменитьНа 227 @@ -1723,6 +1553,33 @@ UserCmds Auto + + НеУдаленныеИзменить + 285 + true + true + + true + + + НеУдаленныеИзменитьРасширеннаяПодсказка + 286 + Label + true + true + + Left + + + Form.Item.НеУдаленные.StandardCommand.Change + Normal + Picture + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + НеУдаленныеВывестиСписок 343 @@ -2060,9 +1917,9 @@ Left true - true - 2 + 3 true + true false Style.FieldTextColor @@ -2084,21 +1941,21 @@ СтраницаТекстОшибки 259 - + ТекстОшибки - 261 + 475 + + <key>ru</key> + <value>Текст ошибки</value> + true true true - - ТекстОшибки - - None ТекстОшибкиРасширеннаяПодсказка - 263 + 477 Label true true @@ -2108,31 +1965,14 @@ ТекстОшибкиКонтекстноеМеню - 262 + 476 true - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - true - true - - Style.FormBackColor - - - Style.FormBackColor - - Normal + Label + true + true + + Left @@ -2163,10 +2003,8 @@ true Label - 7 - true true - false + Right Click @@ -2201,6 +2039,7 @@ Page + Vertical auto false @@ -2284,32 +2123,6 @@ СвязиНеУдаленныхКоманднаяПанель 237 - - СвязиНеУдаленныхИзменить - 253 - true - true - - true - - - СвязиНеУдаленныхИзменитьРасширеннаяПодсказка - 254 - Label - true - true - - Left - - - Form.Item.СвязиНеУдаленных.StandardCommand.Change - Normal - Auto - true - true - UserCmds - Auto - СвязиНеУдаленныхУдалить 251 @@ -2330,7 +2143,7 @@ Form.Command.СвязиНеУдаленныхУдалить Normal - Auto + Picture true true UserCmds @@ -2339,6 +2152,33 @@ Auto + + СвязиНеУдаленныхИзменить + 253 + true + true + + true + + + СвязиНеУдаленныхИзменитьРасширеннаяПодсказка + 254 + Label + true + true + + Left + + + Form.Item.СвязиНеУдаленных.StandardCommand.Change + Normal + Picture + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + Left true @@ -2655,7 +2495,7 @@ true Label - true + 80 true Style.ПоясняющийТекст @@ -2688,6 +2528,151 @@ false + + СтраницаВозниклаОшибка + 458 + + КартинкаПредупреждение32 + 460 + + <key>ru</key> + <value>Картинка предупреждение32</value> + + true + true + + true + + + КартинкаПредупреждение32РасширеннаяПодсказка + 462 + Label + true + true + + Left + + + + КартинкаПредупреждение32КонтекстноеМеню + 461 + true + + true + true + Center + + + CommonPicture.Предупреждение32 + + + + + НадписьТекстОшибки + 463 + + <key>ru</key> + <value>Надпись текст ошибки</value> + + true + true + + true + + + НадписьТекстОшибкиРасширеннаяПодсказка + 465 + Label + true + true + + Left + + + + НадписьТекстОшибкиКонтекстноеМеню + 464 + true + + Label + 5 + true + true + Center + + Left + Center + + + + СсылкаПодробнее1 + 466 + + <key>ru</key> + <value>Подробнее</value> + + true + true + + true + + + СсылкаПодробнее1РасширеннаяПодсказка + 468 + Label + true + true + + Left + + + + СсылкаПодробнее1КонтекстноеМеню + 467 + true + + Label + true + Center + + + Click + СсылкаПодробнееНажатие + + true + Left + Center + + + true + true + + true + + + <key>ru</key> + <value>Возникла ошибка</value> + + + ru + Страница возникла ошибка + + + СтраницаВозниклаОшибкаРасширеннаяПодсказка + 459 + Label + true + true + + Left + + + Page + + auto + false + + true true @@ -2695,15 +2680,15 @@ <key>ru</key> - <value>Страницы формы</value> + <value>Страницы</value> ru - Страницы формы + Страницы true - СтраницыФормыExtendedTooltip + СтраницыРасширеннаяПодсказка 81 Label true @@ -2799,15 +2784,6 @@ true true UserCmds - - Style.ButtonTextColor - - - Style.ButtonBackColor - - - Style.BorderColor - Auto @@ -2834,15 +2810,6 @@ true true UserCmds - - Style.ButtonTextColor - - - Style.ButtonBackColor - - - Style.BorderColor - Auto @@ -2870,15 +2837,6 @@ true true UserCmds - - Style.ButtonTextColor - - - Style.ButtonBackColor - - - Style.BorderColor - Auto true @@ -2949,10 +2907,6 @@ OnCreateAtServer ПриСозданииНаСервере - - OnClose - ПриЗакрытии - Abort Cancel Ignore @@ -2962,7 +2916,6 @@ Retry SaveValues Yes - 70 LockOwner Use true @@ -3103,130 +3056,6 @@ - - Надпись - - <key>ru</key> - <value>Надпись</value> - - 9 - - String - - - - true - - - true - - - - КоличествоНеУдаленныхОбъектов - - <key>ru</key> - <value>Количество оставшихся (не удаленных) объектов</value> - - 3 - - Number - - 10 - - - - true - - - true - - - - СтрокаРезультатов - - <key>ru</key> - <value>Строка результатов</value> - - 4 - - String - - - - true - - - true - - - - УдаленныхОбъектов - - <key>ru</key> - <value>Удаленных объектов</value> - - 7 - - Number - - 10 - - - - true - - - true - - - - ПараметрыОбработчикаОжидания - - <key>ru</key> - <value>Параметры обработчика ожидания</value> - - 11 - - - true - - - true - - - - ИдентификаторЗадания - - <key>ru</key> - <value>Идентификатор задания</value> - - 12 - - - true - - - true - - - - АдресХранилища - - <key>ru</key> - <value>Адрес хранилища</value> - - 13 - - String - - - - true - - - true - - ТекстОшибки @@ -3245,92 +3074,6 @@ <common>true</common> </edit> </attributes> - <attributes> - <name>ФоновоеЗаданиеИдентификатор</name> - <title> - <key>ru</key> - <value>Фоновое задание идентификатор</value> - - 10 - - - true - - - true - - - - ФоновоеЗаданиеАдресХранилища - - <key>ru</key> - <value>Фоновое задание адрес хранилища</value> - - 15 - - String - - - - true - - - true - - - - ФоновоеЗаданиеПроцент - - <key>ru</key> - <value>Фоновое задание процент</value> - - 16 - - Number - - 10 - - - - true - - - true - - - - ЖурналРегистрацииДатаНачала - 18 - - Date - - - - true - - - true - - - - ФоновоеЗаданиеСостояние - - <key>ru</key> - <value>Фоновое задание состояние</value> - - 19 - - FormattedString - String - - - - true - - - true - - НеУдаленные @@ -3699,6 +3442,77 @@ <common>true</common> </edit> </attributes> + <attributes> + <name>НеУдаленныеИдентификаторТекущейСтроки</name> + <title> + <key>ru</key> + <value>Не удаленные идентификатор текущей строки</value> + + 25 + + + true + + + true + + + + ПоказатьДиалогПередЗакрытием + + <key>ru</key> + <value>Показать диалог перед закрытием</value> + + 26 + + Boolean + + + true + + + true + + + + ФоновоеЗаданиеПроцент + + <key>ru</key> + <value>Фоновое задание процент</value> + + 27 + + Number + + 10 + + + + true + + + true + + + + ФоновоеЗаданиеСостояние + + <key>ru</key> + <value>Фоновое задание состояние</value> + + 28 + + FormattedString + String + + + + true + + + true + + КомандаДалее diff --git a/SSL/src/DataProcessors/УдалениеПомеченныхОбъектов/Forms/ОсновнаяФорма/Module.bsl b/SSL/src/DataProcessors/УдалениеПомеченныхОбъектов/Forms/ОсновнаяФорма/Module.bsl index 480cb6795..508c0bbcd 100644 --- a/SSL/src/DataProcessors/УдалениеПомеченныхОбъектов/Forms/ОсновнаяФорма/Module.bsl +++ b/SSL/src/DataProcessors/УдалениеПомеченныхОбъектов/Forms/ОсновнаяФорма/Module.bsl @@ -1,20 +1,12 @@ -#Область ОписаниеПеременных - -&НаКлиенте -Перем ПараметрыОбработчика; - -#КонецОбласти - #Область ОбработчикиСобытийФормы &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - УстановитьУсловноеОформление(); Если Параметры.Свойство("АвтоТест") Тогда Возврат; КонецЕсли; - Если НЕ Пользователи.ЭтоПолноправныйПользователь() Тогда + Если Не Пользователи.ЭтоПолноправныйПользователь() Тогда ТекстОшибки = НСтр("ru = 'Недостаточно прав для выполнения операции.'"); Возврат; // Отказ устанавливается в ПриОткрытии. КонецЕсли; @@ -52,36 +44,25 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) - Если Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаДлительнаяОперация Тогда - Отказ = Истина; - ОтключитьОбработчикОжидания("ФоновоеЗаданиеПроверитьНаКлиенте"); - Обработчик = Новый ОписаниеОповещения("ПередЗакрытиемОтветНаВопрос", ЭтотОбъект); - ТекстВопроса = НСтр("ru = 'Удаление помеченных еще выполняется. +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) + + Если Не ПоказатьДиалогПередЗакрытием Тогда + Возврат; + КонецЕсли; + + Отказ = Истина; + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + + ТекстВопроса = НСтр("ru = 'Удаление помеченных еще выполняется. |Прервать?'"); - Кнопки = Новый СписокЗначений; - Кнопки.Добавить(КодВозвратаДиалога.Прервать); - Кнопки.Добавить(КодВозвратаДиалога.Пропустить, НСтр("ru = 'Не прерывать'")); - ПоказатьВопрос(Обработчик, ТекстВопроса, Кнопки, 60, КодВозвратаДиалога.Пропустить); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ПередЗакрытиемОтветНаВопрос(Ответ, ПараметрыВыполнения) Экспорт - Если Ответ = КодВозвратаДиалога.Прервать Тогда - Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаВыборРежимаУдаления; // Чтобы пропустить вопрос. - Закрыть(); // Отмена фонового задания выполняется в обработчике ПриЗакрытии(). - Иначе - ФоновоеЗаданиеПроверитьНаКлиенте(); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ПриЗакрытии() - Если ФоновоеЗаданиеИдентификатор <> Неопределено Тогда - ФоновоеЗаданиеОтменить(ФоновоеЗаданиеИдентификатор, Монопольно); - ФоновоеЗаданиеИдентификатор = Неопределено; - КонецЕсли; + Кнопки = Новый СписокЗначений; + Кнопки.Добавить(КодВозвратаДиалога.Прервать); + Кнопки.Добавить(КодВозвратаДиалога.Пропустить, НСтр("ru = 'Не прерывать'")); + Обработчик = Новый ОписаниеОповещения("ПослеПодтвержденияОтменыЗадания", ЭтотОбъект); + ПоказатьВопрос(Обработчик, ТекстВопроса, Кнопки, 60, КодВозвратаДиалога.Пропустить); + КонецПроцедуры #КонецОбласти @@ -185,12 +166,12 @@ &НаКлиенте Процедура КомандаДалее(Команда) - ФоновоеЗаданиеЗапуститьНаКлиенте(1); + ЗапуститьФоновоеЗаданиеКлиент(1); КонецПроцедуры &НаКлиенте Процедура КомандаНазад(Команда) - Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаВыборРежимаУдаления; + Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаВыборРежимаУдаления; ВидимостьДоступность(ЭтотОбъект); КонецПроцедуры @@ -229,7 +210,7 @@ &НаКлиенте Процедура ДеревоПомеченныхНаУдалениеОбновить(Команда) - ФоновоеЗаданиеЗапуститьНаКлиенте(2); + ЗапуститьФоновоеЗаданиеКлиент(2); КонецПроцедуры &НаКлиенте @@ -272,105 +253,25 @@ #Область СлужебныеПроцедурыИФункции -&НаСервере -Процедура УстановитьУсловноеОформление() - Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); - Инструкция.Поля = "СвязиНеУдаленных, СвязиНеУдаленныхПредставление"; - Инструкция.Отборы.Вставить("СвязиНеУдаленных.Видимость", Ложь); - Инструкция.Оформление.Вставить("Видимость", Ложь); - Инструкция.Оформление.Вставить("Отображать", Ложь); - СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); -КонецПроцедуры - //////////////////////////////////////////////////////////////////////////////// // Клиент -&НаКлиенте -Процедура ФоновоеЗаданиеПроверитьНаКлиенте() - Результат = ФоновоеЗаданиеПолучитьРезультат(); - Если Результат.ФоновоеЗаданиеВыполнено Тогда - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ЭтотОбъект, Результат); - Если Результат.Свойство("РазвернутьУзлыДерева") Тогда - РазвернутьУзлыДерева = Результат.РазвернутьУзлыДерева; - Если РазвернутьУзлыДерева.Использование Тогда - Элементы[РазвернутьУзлыДерева.Имя].Развернуть(РазвернутьУзлыДерева.Идентификатор, РазвернутьУзлыДерева.СПодчиненными); - КонецЕсли; - КонецЕсли; - Иначе - ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ПодключитьОбработчикОжидания("ФоновоеЗаданиеПроверитьНаКлиенте", ПараметрыОбработчика.ТекущийИнтервал, Истина); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ФоновоеЗаданиеЗапуститьНаКлиенте(Действие) - ПараметрыЗадания = Новый Структура; - ПараметрыЗадания.Вставить("ИскатьПомеченные", Ложь); - ПараметрыЗадания.Вставить("УдалятьПомеченные", Ложь); - ПараметрыЗадания.Вставить("ПрочитатьПомеченныеСоСтраницыРезультатов", Ложь); - ПараметрыЗадания.Вставить("ПрочитатьПомеченныеСоСтраницыУстановкиФлажков", Ложь); - - Если Действие = 1 Тогда - ТекущаяСтраница = Элементы.СтраницыФормы.ТекущаяСтраница; - Если ТекущаяСтраница = Элементы.СтраницаВыборРежимаУдаления Тогда - Если РежимУдаления = "Полный" Тогда - ПараметрыЗадания.ИскатьПомеченные = Истина; - ПараметрыЗадания.УдалятьПомеченные = Истина; - Иначе - ПараметрыЗадания.ИскатьПомеченные = Истина; - КонецЕсли; - ИначеЕсли ТекущаяСтраница = Элементы.СтраницаПомеченныеНаУдаление Тогда - ПараметрыЗадания.ПрочитатьПомеченныеСоСтраницыУстановкиФлажков = Истина; - ПараметрыЗадания.УдалятьПомеченные = Истина; - ИначеЕсли ТекущаяСтраница = Элементы.СтраницаПричиныНевозможностиУдаления Тогда - Если РежимУдаления = "Полный" Тогда - ПараметрыЗадания.ИскатьПомеченные = Истина; - Иначе - ПараметрыЗадания.ПрочитатьПомеченныеСоСтраницыРезультатов = Истина; - КонецЕсли; - ПараметрыЗадания.УдалятьПомеченные = Истина; - КонецЕсли; - ИначеЕсли Действие = 2 Тогда - ПараметрыЗадания.ИскатьПомеченные = Истина; - ПараметрыЗадания.ПрочитатьПомеченныеСоСтраницыУстановкиФлажков = Истина; - КонецЕсли; - - Текст = НСтр("ru = 'Удаляются объекты, помеченные на удаление...'"); - Если ПараметрыЗадания.ИскатьПомеченные И ПараметрыЗадания.УдалятьПомеченные Тогда - Состояние(НСтр("ru = 'Поиск и удаление помеченных объектов...'")); - ИначеЕсли ПараметрыЗадания.ИскатьПомеченные Тогда - Текст = НСтр("ru = 'Поиск помеченных на удаление объектов...'"); - Состояние(Текст); - Иначе - Состояние(НСтр("ru = 'Удаление выбранных объектов...'")); - КонецЕсли; - Элементы.НадписьДлительнаяОперация.Заголовок = Текст; - - Результат = ФоновоеЗаданиеЗапустить(ПараметрыЗадания); - Если Результат.ФоновоеЗаданиеЗапущено Тогда - ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчика); - ПодключитьОбработчикОжидания("ФоновоеЗаданиеПроверитьНаКлиенте", 1, Истина); - ПараметрыОбработчика.МаксимальныйИнтервал = 5; - ИначеЕсли Результат.ОшибкаПриУстановкеМонопольногоРежима Тогда - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ЗавершениеРаботыПользователей") Тогда - Оповещение = Новый ОписаниеОповещения("ФоновоеЗаданиеЗапуститьПослеУстановкиМонопольногоРежима", ЭтотОбъект, Действие); - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("УдалениеПомеченныхОбъектов", Истина); - МодульСоединенияИБКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("СоединенияИБКлиент"); - МодульСоединенияИБКлиент.ПриОткрытииФормыОшибкиУстановкиМонопольногоРежима(Оповещение, ПараметрыФормы); - Иначе - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение( - Результат, - НСтр("ru = 'Не удалось запустить удаление помеченных объектов'"), - Результат.ТекстОшибкиУстановкиМонопольногоРежима); - КонецЕсли; - КонецЕсли; - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ЭтотОбъект, Результат); -КонецПроцедуры - &НаКлиенте Процедура ПоказатьСвязиНеУдаленныхНаКлиенте() - СтрокаДерева = Элементы.НеУдаленные.ТекущиеДанные; + Если НеУдаленныеИдентификаторТекущейСтроки = Элементы.НеУдаленные.ТекущаяСтрока Тогда + Возврат; + КонецЕсли; + ПоказатьСвязиНеУдаленныхНаСервере(); +КонецПроцедуры + +&НаСервере +Процедура ПоказатьСвязиНеУдаленныхНаСервере() + НеУдаленныеИдентификаторТекущейСтроки = Элементы.НеУдаленные.ТекущаяСтрока; + Если НеУдаленныеИдентификаторТекущейСтроки = Неопределено Тогда + СтрокаДерева = Неопределено; + Иначе + СтрокаДерева = НеУдаленные.НайтиПоИдентификатору(НеУдаленныеИдентификаторТекущейСтроки); + КонецЕсли; ПоказыватьТекстОшибки = Истина; ТекстОшибки = ""; ПодробныйТекстОшибки = ""; @@ -385,6 +286,7 @@ СтрокаТаблицы.Видимость = Ложь; КонецЦикла; + Элементы.СвязиНеУдаленных.ОтборСтрок = Новый ФиксированнаяСтруктура("УдаляемыйСсылка", СтрокаДерева.УдаляемыйСсылка); НеУдаленныеПодсказка = " "; Показываемые = СвязиНеУдаленных.НайтиСтроки(Новый Структура("УдаляемыйСсылка", СтрокаДерева.УдаляемыйСсылка)); Для Каждого СтрокаТаблицы Из Показываемые Цикл @@ -403,6 +305,7 @@ Если ПоказыватьТекстОшибки Тогда ТекущаяСтраница = Элементы.СтраницаТекстОшибки; Элементы.СсылкаПодробнее.Видимость = ЗначениеЗаполнено(ПодробныйТекстОшибки); + Элементы.ТекстОшибки.Заголовок = ТекстОшибки; Иначе ТекущаяСтраница = Элементы.СтраницаПричиныНеУдаления; Шаблон = НСтр("ru = 'Места использования объекта ""%1"" (%2):'"); @@ -538,14 +441,14 @@ Возврат; КонецЕсли; - ПараметрыОбработчика = Новый Структура; - ПараметрыОбработчика.Вставить("ТаблицаИмя", ТаблицаИмя); - ПараметрыОбработчика.Вставить("МассивСтрокТаблицы", МассивСтрокТаблицы); - ПараметрыОбработчика.Вставить("МассивСсылок", МассивСсылок); - ПараметрыОбработчика.Вставить("ИмяРеквизитаЗначение", ИмяРеквизитаЗначение); - ПараметрыОбработчика.Вставить("УстанавливатьПометку", УстанавливатьПометку); + ПараметрыВыполнения = Новый Структура; + ПараметрыВыполнения.Вставить("ТаблицаИмя", ТаблицаИмя); + ПараметрыВыполнения.Вставить("МассивСтрокТаблицы", МассивСтрокТаблицы); + ПараметрыВыполнения.Вставить("МассивСсылок", МассивСсылок); + ПараметрыВыполнения.Вставить("ИмяРеквизитаЗначение", ИмяРеквизитаЗначение); + ПараметрыВыполнения.Вставить("УстанавливатьПометку", УстанавливатьПометку); - Обработчик = Новый ОписаниеОповещения("ПометитьВыделенныеОбъектыТаблицыНаУдалениеЗавершение", ЭтотОбъект, ПараметрыОбработчика); + Обработчик = Новый ОписаниеОповещения("ПометитьВыделенныеОбъектыТаблицыНаУдалениеЗавершение", ЭтотОбъект, ПараметрыВыполнения); Если КоличествоМожноУдалить = 1 Тогда Если УстанавливатьПометку Тогда @@ -575,9 +478,36 @@ Если Ответ <> КодВозвратаДиалога.Да Тогда Возврат; КонецЕсли; - ПометкаУдаления = ПараметрыВыполнения.УстанавливатьПометку; - РезультатРаботыСервера = ИзменитьПометкуУдаленияОбъектов(ПараметрыВыполнения.МассивСсылок, ПометкаУдаления); - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ЭтотОбъект, РезультатРаботыСервера); + + ОповещениеОбИзменениях = ИзменитьПометкуУдаленияОбъектов(ПараметрыВыполнения.МассивСсылок, ПараметрыВыполнения.УстанавливатьПометку); + + КоличествоОбъектов = ПараметрыВыполнения.МассивСсылок.Количество(); + Если КоличествоОбъектов > 0 Тогда + СтандартныеПодсистемыКлиент.РазвернутьУзлыДерева(ЭтотОбъект, "НеУдаленные", "*", Истина); + КонецЕсли; + + СтандартныеПодсистемыКлиент.ОповеститьФормыОбИзменении(ОповещениеОбИзменениях, + Новый Структура("ПометкаУдаления", ПараметрыВыполнения.УстанавливатьПометку)); + + ОповещениеТекст = Неопределено; + ОповещениеСсылка = Неопределено; + Если КоличествоОбъектов = 0 Тогда + ОповещениеЗаголовок = НСтр("ru = 'Объект не найден'"); + Иначе + Если ПараметрыВыполнения.УстанавливатьПометку Тогда + ОповещениеЗаголовок = НСтр("ru = 'Пометка удаления установлена'"); + Иначе + ОповещениеЗаголовок = НСтр("ru = 'Пометка удаления снята'"); + КонецЕсли; + Если КоличествоОбъектов = 1 Тогда + ОповещениеСсылка = ПараметрыВыполнения.МассивСсылок[0]; + ОповещениеТекст = Строка(ОповещениеСсылка); + Иначе + ОповещениеЗаголовок = ОповещениеЗаголовок + " (" + Формат(КоличествоОбъектов, "ЧН=0; ЧГ=") + ")"; + КонецЕсли; + КонецЕсли; + ПоказатьОповещениеПользователя(ОповещениеЗаголовок, ОповещениеСсылка, ОповещениеТекст); + КонецПроцедуры &НаКлиенте @@ -621,7 +551,7 @@ &НаКлиентеНаСервереБезКонтекста Процедура ВидимостьДоступность(Форма) Элементы = Форма.Элементы; - ТекущаяСтраница = Элементы.СтраницыФормы.ТекущаяСтраница; + ТекущаяСтраница = Элементы.Страницы.ТекущаяСтраница; Элементы.КнопкаДалее.Заголовок = НСтр("ru = 'Удалить'"); Элементы.КнопкаЗакрыть.Заголовок = НСтр("ru = 'Закрыть'"); @@ -763,91 +693,9 @@ Возврат Результат; КонецФункции -&НаСервере -Функция ФоновоеЗаданиеПолучитьРезультат() - Результат = Новый Структура; - Результат.Вставить("ФоновоеЗаданиеВыполнено", Ложь); - Результат.ФоновоеЗаданиеВыполнено = ДлительныеОперации.ЗаданиеВыполнено(ФоновоеЗаданиеИдентификатор); - Если Результат.ФоновоеЗаданиеВыполнено Тогда - ФоновоеЗаданиеЗагрузитьРезультат(Результат); - Иначе - ФоновоеЗаданиеПрочитатьПромежуточныйРезультат(Результат); - КонецЕсли; - Возврат Результат; -КонецФункции - -&НаСервере -Функция ФоновоеЗаданиеЗапустить(Знач ПараметрыЗадания) - Результат = Новый Структура; - Результат.Вставить("ФоновоеЗаданиеЗапущено", Ложь); - Результат.Вставить("ОшибкаПриУстановкеМонопольногоРежима", Ложь); - Результат.Вставить("ТекстОшибкиУстановкиМонопольногоРежима", Неопределено); - - Если ПараметрыЗадания.УдалятьПомеченные И Монопольно Тогда - ИнформацияОбОшибке = Неопределено; - Попытка - ОбщегоНазначения.ЗаблокироватьИБ(); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КонецПопытки; - Если ИнформацияОбОшибке <> Неопределено Тогда - Результат.ОшибкаПриУстановкеМонопольногоРежима = Истина; - Результат.ТекстОшибкиУстановкиМонопольногоРежима = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); - Возврат Результат; - КонецЕсли; - КонецЕсли; - - // Запуск фонового задания - Если Не ПараметрыЗадания.ИскатьПомеченные Тогда - Если ПараметрыЗадания.ПрочитатьПомеченныеСоСтраницыРезультатов Тогда - ПользовательскиеОбъекты = ПомеченныеНаУдалениеСоСтраницыРезультатов(); - ИначеЕсли ПараметрыЗадания.ПрочитатьПомеченныеСоСтраницыУстановкиФлажков Тогда - ПользовательскиеОбъекты = ПомеченныеНаУдалениеСоСтраницыУстановкиФлажков(); - КонецЕсли; - Если ПользовательскиеОбъекты.Количество() = 0 Тогда - Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаУдалениеНеТребуется; - ВидимостьДоступность(ЭтотОбъект); - Возврат Результат; - КонецЕсли; - ПараметрыЗадания.Вставить("ПользовательскиеОбъекты", ПользовательскиеОбъекты); - КонецЕсли; - - ПараметрыЗадания.Вставить("ПериодЗаписи", 1); // Секунд - ПараметрыЗадания.Вставить("Монопольно", Монопольно); - - РезультатФоновогоЗадания = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "Обработки.УдалениеПомеченныхОбъектов.УдалитьПомеченныеОбъектыИнтерактивно", - ПараметрыЗадания, - НСтр("ru = 'Удаление помеченных объектов (интерактивное)'")); - - ФоновоеЗаданиеИдентификатор = РезультатФоновогоЗадания.ИдентификаторЗадания; - ФоновоеЗаданиеАдресХранилища = РезультатФоновогоЗадания.АдресХранилища; - - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда - ФоновоеЗаданиеЗагрузитьРезультат(Результат); - Результат.ФоновоеЗаданиеЗапущено = Ложь; - Иначе - ФоновоеЗаданиеПоказатьСтраницуДлительнойОперации(ПараметрыЗадания); - ФоновоеЗаданиеПрочитатьПромежуточныйРезультат(Результат); - Результат.ФоновоеЗаданиеЗапущено = Истина; - КонецЕсли; - ВидимостьДоступность(ЭтотОбъект); - - Возврат Результат; -КонецФункции - -&НаСервереБезКонтекста -Процедура ФоновоеЗаданиеОтменить(Знач ФоновоеЗаданиеИдентификатор, Знач Монопольно) - ДлительныеОперации.ОтменитьВыполнениеЗадания(ФоновоеЗаданиеИдентификатор); - Если Монопольно Тогда - СнятьМонопольныйРежим(); - КонецЕсли; -КонецПроцедуры - &НаСервере Функция ИзменитьПометкуУдаленияОбъектов(МассивСсылок, ПометкаУдаления) - Результат = Новый Структура; + Количество = МассивСсылок.Количество(); Для Номер = 1 По Количество Цикл ОбратныйИндекс = Количество - Номер; @@ -888,34 +736,10 @@ ЗагрузитьКоллекцию("НеУдаленные", ДеревоЗначений, "УдаляемыйСсылка"); ЗагрузитьКоллекцию("СвязиНеУдаленных", ТаблицаЗначений, "УдаляемыйСсылка, ОбнаруженныйСсылка"); - СтандартныеПодсистемыКлиентСервер.РазвернутьУзлыДерева(Результат, "НеУдаленные", "*", Истина); КонецЕсли; - СтандартныеПодсистемыКлиентСервер.ОповеститьДинамическиеСписки( - Результат, - МассивСсылок, - Новый Структура("ПометкаУдаления", ПометкаУдаления)); + Возврат СтандартныеПодсистемыСервер.ПодготовитьОповещениеФормОбИзменении(МассивСсылок); - ОповещениеТекст = Неопределено; - ОповещениеСсылка = Неопределено; - Если КоличествоОбъектов = 0 Тогда - ОповещениеЗаголовок = НСтр("ru = 'Объект не найден'"); - Иначе - Если ПометкаУдаления Тогда - ОповещениеЗаголовок = НСтр("ru = 'Пометка удаления установлена'"); - Иначе - ОповещениеЗаголовок = НСтр("ru = 'Пометка удаления снята'"); - КонецЕсли; - Если КоличествоОбъектов = 1 Тогда - ОповещениеСсылка = МассивСсылок[0]; - ОповещениеТекст = Строка(ОповещениеСсылка); - Иначе - ОповещениеЗаголовок = ОповещениеЗаголовок + " (" + Формат(КоличествоОбъектов, "ЧН=0; ЧГ=") + ")"; - КонецЕсли; - КонецЕсли; - СтандартныеПодсистемыКлиентСервер.ВывестиОповещение(Результат, ОповещениеЗаголовок, ОповещениеТекст, , ОповещениеСсылка); - - Возврат Результат; КонецФункции &НаСервере @@ -1036,13 +860,6 @@ КонецЕсли; КонецПроцедуры -&НаКлиенте -Процедура ФоновоеЗаданиеЗапуститьПослеУстановкиМонопольногоРежима(Результат, ДополнительныеПараметры) Экспорт - Если Результат = Ложь Тогда // Монопольный режим был установлен. - ФоновоеЗаданиеЗапуститьНаКлиенте(ДополнительныеПараметры); - КонецЕсли; -КонецПроцедуры - //////////////////////////////////////////////////////////////////////////////// // Сервер @@ -1107,194 +924,6 @@ КонецЕсли; КонецПроцедуры -&НаСервере -Процедура ФоновоеЗаданиеПоказатьСтраницуДлительнойОперации(ПараметрыЗадания) - ПредставлениеРежима = Элементы.РежимУдаления.СписокВыбора.НайтиПоЗначению(РежимУдаления).Представление; - - ПоказыватьБублик = ПараметрыЗадания.УдалятьПомеченные И Монопольно; - Элементы.ФоновоеЗаданиеАнимация.Видимость = ПоказыватьБублик; - Элементы.ФоновоеЗаданиеПроцент.Видимость = Не ПоказыватьБублик; - Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаДлительнаяОперация; - Если ПоказыватьБублик Тогда - Элементы.НадписьДлительнаяОперация.Заголовок = НСтр("ru = 'Пожалуйста, подождите...'"); - Элементы.НадписьДлительнаяОперация.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Лево; - Элементы.ФоновоеЗаданиеСостояние.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Лево; - ИначеЕсли ПараметрыЗадания.УдалятьПомеченные Тогда - Элементы.НадписьДлительнаяОперация.Заголовок = НСтр("ru = 'Удаляются объекты, помеченные на удаление...'"); - Элементы.НадписьДлительнаяОперация.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Центр; - Элементы.ФоновоеЗаданиеСостояние.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Центр; - Иначе - Элементы.НадписьДлительнаяОперация.Заголовок = НСтр("ru = 'Поиск объектов, помеченных на удаление...'"); - Элементы.НадписьДлительнаяОперация.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Центр; - Элементы.ФоновоеЗаданиеСостояние.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Центр; - КонецЕсли; -КонецПроцедуры - -&НаСервере -Процедура ФоновоеЗаданиеПрочитатьПромежуточныйРезультат(Результат) - Прогресс = ДлительныеОперации.ПрочитатьПрогресс(ФоновоеЗаданиеИдентификатор); - Если Прогресс <> Неопределено Тогда - ФоновоеЗаданиеПроцент = Прогресс.Процент; - ФоновоеЗаданиеСостояние = Прогресс.Текст; - КонецЕсли; -КонецПроцедуры - -&НаСервере -Процедура ФоновоеЗаданиеЗагрузитьРезультат(Результат) - Если Монопольно Тогда - СнятьМонопольныйРежим(); - КонецЕсли; - - // Получение результата. - РезультатВыполненияВФоне = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); - Если РезультатВыполненияВФоне = Неопределено Тогда - Возврат; - КонецЕсли; - - Если РезультатВыполненияВФоне.УдалятьПомеченные Тогда - - // Подготовка оповещения для динамических списков. - СтандартныеПодсистемыКлиентСервер.ОповеститьДинамическиеСписки( - Результат, - РезультатВыполненияВФоне.Удаленные, - Новый Структура("УдалениеПомеченных", Истина)); - - УдаленныеКоличество = РезультатВыполненияВФоне.Удаленные.Количество(); - НеУдаленныеКоличество = РезультатВыполненияВФоне.НеУдаленные.Количество(); - - ОповещениеТекст = Неопределено; - ОповещениеКартинка = Неопределено; - - Если УдаленныеКоличество = 0 И НеУдаленныеКоличество = 0 Тогда - Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаУдалениеНеТребуется; - ИначеЕсли НеУдаленныеКоличество = 0 Тогда - Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаУспешноЗавершено; - ОповещениеТекст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Удаление помеченных объектов успешно завершено. - |Удалено объектов: %1.'"), - Формат(УдаленныеКоличество, "ЧН=0; ЧГ=")); - Элементы.НадписьУспешноЗавершено.Заголовок = ОповещениеТекст; - Иначе - Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаПричиныНевозможностиУдаления; - ОповещениеТекст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Удаление помеченных объектов завершено. - |Удалено объектов: %1, - |Не удалено: %2.'"), - Формат(УдаленныеКоличество, "ЧН=0; ЧГ="), - Формат(НеУдаленныеКоличество, "ЧН=0; ЧГ=")); - ОповещениеКартинка = БиблиотекаКартинок.Предупреждение32; - - Если УдаленныеКоличество = 0 Тогда - Элементы.НадписьИтогиЧастичногоУдаления.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Не получилось удалить объекты, помеченные на удаление (%1):'"), - Формат(НеУдаленныеКоличество, "ЧН=0; ЧГ=")); - Иначе - Элементы.НадписьИтогиЧастичногоУдаления.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Успешно удалено: %1 из %2, остальные объекты не удалены (%3):'"), - Формат(УдаленныеКоличество, "ЧН=0; ЧГ="), - Формат(УдаленныеКоличество+НеУдаленныеКоличество, "ЧН=0; ЧГ="), - Формат(НеУдаленныеКоличество, "ЧН=0; ЧГ=")); - КонецЕсли; - - Шаблон = Элементы.ГруппаНеУдаленные.Заголовок; - Шаблон = Лев(Шаблон, СтрНайти(Шаблон, "(")); - Элементы.ГруппаНеУдаленные.Заголовок = Шаблон + Формат(НеУдаленныеКоличество, "ЧН=0; ЧГ=") + ")"; - - ЗаполнитьКоллекцииОставшихсяОбъектов(РезультатВыполненияВФоне); - - ГруппыНеУдаленных = НеУдаленные.ПолучитьЭлементы(); - Если ГруппыНеУдаленных.Количество() > 0 Тогда - ЭлементыПервойГруппы = ГруппыНеУдаленных[0].ПолучитьЭлементы(); - Если ЭлементыПервойГруппы.Количество() > 0 Тогда - Элементы.НеУдаленные.ТекущаяСтрока = ЭлементыПервойГруппы[0].ПолучитьИдентификатор(); - КонецЕсли; - КонецЕсли; - - КонецЕсли; - - Если ОповещениеТекст <> Неопределено Тогда - СтандартныеПодсистемыКлиентСервер.ВывестиОповещение( - Результат, - НСтр("ru = 'Удаление помеченных'"), - ОповещениеТекст, - ОповещениеКартинка, - НавигационнаяСсылка); - КонецЕсли; - - Иначе - - // Заполнение дерева помеченных на удаление. - Отмеченные = ПомеченныеНаУдалениеСоСтраницыРезультатов(); - ПометкиУстанавливаютсяВыборочно = (Отмеченные.Количество() > 0); - - ОбработкаМенеджер = Обработки.УдалениеПомеченныхОбъектов; - - ДеревоЗначений = РеквизитФормыВЗначение("ДеревоПомеченныхНаУдаление"); - ДеревоЗначений.Строки.Очистить(); - ДеревоЗначений.Колонки.Добавить("Количество"); - - УзлыПервогоУровня = Новый Соответствие; - - ПользовательскиеОбъекты = РезультатВыполненияВФоне.ПользовательскиеОбъекты; - Для Каждого УдаляемыйСсылка Из ПользовательскиеОбъекты Цикл - ТипУдаляемого = ТипЗнч(УдаляемыйСсылка); - УдаляемыйИнформация = ОбработкаМенеджер.СформироватьИнформациюОТипах(РезультатВыполненияВФоне, ТипУдаляемого); - - УзелТипа = УзлыПервогоУровня.Получить(ТипУдаляемого); - Если УзелТипа = Неопределено Тогда - УдаляемыйМетаданные = УдаляемыйСсылка.Метаданные(); - УзелТипа = ДеревоЗначений.Строки.Добавить(); - УзелТипа.Значение = УдаляемыйИнформация.ПолноеИмя; - УзелТипа.Представление = УдаляемыйИнформация.ПредставлениеСписка; - УзелТипа.Пометка = Истина; - УзелТипа.Количество = 0; - УзелТипа.НомерКартинки = -1; - УзлыПервогоУровня.Вставить(ТипУдаляемого, УзелТипа); - БыстрыйПоиск.ПолныеИменаОбъектовМетаданных.Вставить(ТипУдаляемого, УдаляемыйИнформация.ПолноеИмя); - КонецЕсли; - УзелТипа.Количество = УзелТипа.Количество + 1; - - УзелУдаляемого = УзелТипа.Строки.Добавить(); - УзелУдаляемого.Значение = УдаляемыйСсылка; - УзелУдаляемого.Представление = Строка(УдаляемыйСсылка); - УзелУдаляемого.Пометка = Истина; - УзелУдаляемого.НомерКартинки = НомерКартинки(УдаляемыйСсылка, Истина, УдаляемыйИнформация.Вид, Истина); - - Если ПометкиУстанавливаютсяВыборочно И Отмеченные.Найти(УдаляемыйСсылка) = Неопределено Тогда - УзелУдаляемого.Пометка = Ложь; - УзелТипа.Пометка = Ложь; - КонецЕсли; - - КонецЦикла; - - Для Каждого УзелТипа Из ДеревоЗначений.Строки Цикл - УзелТипа.Представление = УзелТипа.Представление + " (" + УзелТипа.Количество + ")"; - КонецЦикла; - - ДеревоЗначений.Колонки.Удалить(ДеревоЗначений.Колонки.Количество); - ДеревоЗначений.Строки.Сортировать("Представление", Истина); - - ЗначениеВРеквизитФормы(ДеревоЗначений, "ДеревоПомеченныхНаУдаление"); - - КоличествоТипов = УзлыПервогоУровня.Количество(); - - Если КоличествоТипов = 0 Тогда - Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаУдалениеНеТребуется; - Иначе - Элементы.СтраницыФормы.ТекущаяСтраница = Элементы.СтраницаПомеченныеНаУдаление; - Если КоличествоТипов = 1 Тогда - СтандартныеПодсистемыКлиентСервер.РазвернутьУзлыДерева(Результат, "ДеревоПомеченныхНаУдаление"); - КонецЕсли; - КонецЕсли; - - КонецЕсли; - - УдалитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); - ФоновоеЗаданиеАдресХранилища = Неопределено; - ФоновоеЗаданиеИдентификатор = Неопределено; - ВидимостьДоступность(ЭтотОбъект); -КонецПроцедуры - &НаСервере Процедура ЗаполнитьКоллекцииОставшихсяОбъектов(РезультатВыполненияВФоне) @@ -1416,4 +1045,370 @@ ЗначениеВРеквизитФормы(ТаблицаСвязиНеУдаленных, "СвязиНеУдаленных"); КонецПроцедуры -#КонецОбласти +//////////////////////////////////////////////////////////////////////////////// +// Работа с длительными операциями + +&НаКлиенте +Процедура ЗапуститьФоновоеЗаданиеКлиент(Режим) + ПараметрыМетода = Новый Структура; + ПараметрыМетода.Вставить("ИскатьПомеченные", Ложь); + ПараметрыМетода.Вставить("УдалятьПомеченные", Ложь); + ПараметрыМетода.Вставить("ПрочитатьПомеченныеСоСтраницыРезультатов", Ложь); + ПараметрыМетода.Вставить("ПрочитатьПомеченныеСоСтраницыУстановкиФлажков", Ложь); + + Если Режим = 1 Тогда + ТекущаяСтраница = Элементы.Страницы.ТекущаяСтраница; + Если ТекущаяСтраница = Элементы.СтраницаВыборРежимаУдаления Тогда + Если РежимУдаления = "Полный" Тогда + ПараметрыМетода.ИскатьПомеченные = Истина; + ПараметрыМетода.УдалятьПомеченные = Истина; + Иначе + ПараметрыМетода.ИскатьПомеченные = Истина; + КонецЕсли; + ИначеЕсли ТекущаяСтраница = Элементы.СтраницаПомеченныеНаУдаление Тогда + ПараметрыМетода.ПрочитатьПомеченныеСоСтраницыУстановкиФлажков = Истина; + ПараметрыМетода.УдалятьПомеченные = Истина; + ИначеЕсли ТекущаяСтраница = Элементы.СтраницаПричиныНевозможностиУдаления Тогда + Если РежимУдаления = "Полный" Тогда + ПараметрыМетода.ИскатьПомеченные = Истина; + Иначе + ПараметрыМетода.ПрочитатьПомеченныеСоСтраницыРезультатов = Истина; + КонецЕсли; + ПараметрыМетода.УдалятьПомеченные = Истина; + КонецЕсли; + ИначеЕсли Режим = 2 Тогда + ПараметрыМетода.ИскатьПомеченные = Истина; + ПараметрыМетода.ПрочитатьПомеченныеСоСтраницыУстановкиФлажков = Истина; + Иначе + Возврат; + КонецЕсли; + + Текст = НСтр("ru = 'Удаляются объекты, помеченные на удаление...'"); + Если ПараметрыМетода.ИскатьПомеченные И ПараметрыМетода.УдалятьПомеченные Тогда + Состояние(НСтр("ru = 'Поиск и удаление помеченных объектов...'")); + ИначеЕсли ПараметрыМетода.ИскатьПомеченные Тогда + Текст = НСтр("ru = 'Поиск помеченных на удаление объектов...'"); + Состояние(Текст); + Иначе + Состояние(НСтр("ru = 'Удаление выбранных объектов...'")); + КонецЕсли; + Элементы.НадписьДлительнаяОперация.Заголовок = Текст; + + Задание = ЗапуститьФоновоеЗадание(ПараметрыМетода); + Если Задание = Неопределено Тогда + Возврат; // Удаление не требуется. + ИначеЕсли Задание.ОшибкаПриУстановкеМонопольногоРежима Тогда + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ЗавершениеРаботыПользователей") Тогда + Оповещение = Новый ОписаниеОповещения("ПослеУстановкиМонопольногоРежима", ЭтотОбъект, Режим); + ПараметрыФормы = Новый Структура("УдалениеПомеченныхОбъектов", Истина); + МодульСоединенияИБКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("СоединенияИБКлиент"); + МодульСоединенияИБКлиент.ПриОткрытииФормыОшибкиУстановкиМонопольногоРежима(Оповещение, ПараметрыФормы); + Иначе + ПараметрыПредупреждения = Новый Структура("Текст, Подробно"); + ПараметрыПредупреждения.Текст = НСтр("ru = 'Не удалось установить монопольный режим'"); + ПараметрыПредупреждения.Подробно = Задание.ТекстОшибкиУстановкиМонопольногоРежима; + СтандартныеПодсистемыКлиент.ВывестиПредупреждение( + ЭтотОбъект, + ПараметрыПредупреждения); + КонецЕсли; + Возврат; + КонецЕсли; + + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + НастройкиОжидания.ВыводитьОкноОжидания = Ложь; + НастройкиОжидания.ВыводитьПрогрессВыполнения = Истина; + НастройкиОжидания.ОповещениеОПрогрессеВыполнения = Новый ОписаниеОповещения("ПриОбновленииПрогрессаФоновогоЗадания", ЭтотОбъект); + + Обработчик = Новый ОписаниеОповещения("ПослеЗавершенияФоновогоЗадания", ЭтотОбъект); + + ДлительныеОперацииКлиент.ОжидатьЗавершение(Задание, Обработчик, НастройкиОжидания); +КонецПроцедуры + +&НаСервере +Функция ЗапуститьФоновоеЗадание(Знач ПараметрыМетода) + Если ПараметрыМетода.УдалятьПомеченные И Монопольно Тогда + ИнформацияОбОшибке = Неопределено; + Попытка + ОбщегоНазначения.ЗаблокироватьИБ(); + Исключение + ИнформацияОбОшибке = ИнформацияОбОшибке(); + КонецПопытки; + Если ИнформацияОбОшибке <> Неопределено Тогда + Результат = Новый Структура; + Результат.Вставить("ОшибкаПриУстановкеМонопольногоРежима", Истина); + Результат.Вставить("ТекстОшибкиУстановкиМонопольногоРежима", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке)); + Возврат Результат; + КонецЕсли; + КонецЕсли; + + // Запуск фонового задания + Если Не ПараметрыМетода.ИскатьПомеченные Тогда + Если ПараметрыМетода.ПрочитатьПомеченныеСоСтраницыРезультатов Тогда + ПользовательскиеОбъекты = ПомеченныеНаУдалениеСоСтраницыРезультатов(); + ИначеЕсли ПараметрыМетода.ПрочитатьПомеченныеСоСтраницыУстановкиФлажков Тогда + ПользовательскиеОбъекты = ПомеченныеНаУдалениеСоСтраницыУстановкиФлажков(); + КонецЕсли; + Если ПользовательскиеОбъекты.Количество() = 0 Тогда + Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаУдалениеНеТребуется; + ВидимостьДоступность(ЭтотОбъект); + Возврат Неопределено; + КонецЕсли; + ПараметрыМетода.Вставить("ПользовательскиеОбъекты", ПользовательскиеОбъекты); + КонецЕсли; + + ПараметрыМетода.Вставить("ПериодЗаписи", 1); // Секунд + ПараметрыМетода.Вставить("Монопольно", Монопольно); + + // Переключение на страницу длительной операции. + ПоказатьДиалогПередЗакрытием = Истина; + + ПредставлениеРежима = Элементы.РежимУдаления.СписокВыбора.НайтиПоЗначению(РежимУдаления).Представление; + + ПоказыватьБублик = ПараметрыМетода.УдалятьПомеченные И Монопольно; + Элементы.ФоновоеЗаданиеАнимация.Видимость = ПоказыватьБублик; + Элементы.ФоновоеЗаданиеПроцент.Видимость = Не ПоказыватьБублик; + Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаДлительнаяОперация; + Если ПоказыватьБублик Тогда + Элементы.НадписьДлительнаяОперация.Заголовок = НСтр("ru = 'Пожалуйста, подождите...'"); + Элементы.НадписьДлительнаяОперация.ГоризонтальноеПоложениеВГруппе = ГоризонтальноеПоложениеЭлемента.Лево; + Элементы.ФоновоеЗаданиеСостояние.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Лево; + ИначеЕсли ПараметрыМетода.УдалятьПомеченные Тогда + Элементы.НадписьДлительнаяОперация.Заголовок = НСтр("ru = 'Удаляются объекты, помеченные на удаление...'"); + Элементы.НадписьДлительнаяОперация.ГоризонтальноеПоложениеВГруппе = ГоризонтальноеПоложениеЭлемента.Центр; + Элементы.ФоновоеЗаданиеСостояние.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Центр; + Иначе + Элементы.НадписьДлительнаяОперация.Заголовок = НСтр("ru = 'Поиск объектов, помеченных на удаление...'"); + Элементы.НадписьДлительнаяОперация.ГоризонтальноеПоложениеВГруппе = ГоризонтальноеПоложениеЭлемента.Центр; + Элементы.ФоновоеЗаданиеСостояние.ГоризонтальноеПоложение = ГоризонтальноеПоложениеЭлемента.Центр; + КонецЕсли; + + ВидимостьДоступность(ЭтотОбъект); + + // Определение параметров запуска. + ИмяМетода = "Обработки.УдалениеПомеченныхОбъектов.УдалитьПомеченныеОбъектыИнтерактивно"; + + НастройкиЗапуска = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + НастройкиЗапуска.НаименованиеФоновогоЗадания = НСтр("ru = 'Удаление помеченных объектов (интерактивное)'"); + + Задание = ДлительныеОперации.ВыполнитьВФоне(ИмяМетода, ПараметрыМетода, НастройкиЗапуска); + Задание.Вставить("ОшибкаПриУстановкеМонопольногоРежима", Ложь); + Задание.Вставить("ТекстОшибкиУстановкиМонопольногоРежима", Неопределено); + + Возврат Задание; +КонецФункции + +&НаКлиенте +Процедура ПослеУстановкиМонопольногоРежима(Результат, Режим) Экспорт + Если Результат = Ложь Тогда // Монопольный режим установлен. + ЗапуститьФоновоеЗаданиеКлиент(Режим); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ПриОбновленииПрогрессаФоновогоЗадания(Задание, ДополнительныеПараметры) Экспорт + Если Задание.Прогресс <> Неопределено Тогда + ФоновоеЗаданиеПроцент = Задание.Прогресс.Процент; + ФоновоеЗаданиеСостояние = Задание.Прогресс.Текст; + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ПослеЗавершенияФоновогоЗадания(Задание, ДополнительныеПараметры) Экспорт + ПоказатьДиалогПередЗакрытием = Ложь; + Если Монопольно Тогда + СнятьМонопольныйРежим(); + КонецЕсли; + + Активизировать(); + + Если Задание.Статус = "Выполнено" Тогда + + Результат = ЗагрузитьРезультатФоновогоЗадания(Задание.АдресРезультата); + Если Результат = Неопределено Тогда + ВывестиОшибку(НСтр("ru = 'Не удалось прочитать результат удаления помеченных'"), ""); + Возврат; + КонецЕсли; + + СтандартныеПодсистемыКлиент.ОповеститьФормыОбИзменении( + Результат.ОповещениеОбИзменениях, + Новый Структура("УдалениеПомеченных", Истина)); + + Если Не ПустаяСтрока(Результат.ОповещениеТекст) Тогда + ПоказатьОповещениеПользователя( + НСтр("ru = 'Удаление помеченных'"), + НавигационнаяСсылка, + Результат.ОповещениеТекст, + Результат.ОповещениеКартинка); + КонецЕсли; + + Если Результат.РазвернутьДеревоПомеченныхНаУдаление Тогда + СтандартныеПодсистемыКлиент.РазвернутьУзлыДерева(ЭтотОбъект, "ДеревоПомеченныхНаУдаление"); + КонецЕсли; + + Иначе + + ВывестиОшибку(Задание.КраткоеПредставлениеОшибки, Задание.ПодробноеПредставлениеОшибки); + + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Функция ЗагрузитьРезультатФоновогоЗадания(АдресРезультата) + Если Монопольно Тогда + СнятьМонопольныйРежим(); + КонецЕсли; + + // Получение результата. + РезультатВыполненияВФоне = ПолучитьИзВременногоХранилища(АдресРезультата); + Если РезультатВыполненияВФоне = Неопределено Тогда + Возврат Неопределено; + КонецЕсли; + + Результат = Новый Структура; + Результат.Вставить("ОповещениеОбИзменениях", Новый Соответствие); + Результат.Вставить("ОповещениеТекст", ""); + Результат.Вставить("ОповещениеКартинка", Неопределено); + Результат.Вставить("РазвернутьДеревоПомеченныхНаУдаление", Ложь); + + Если РезультатВыполненияВФоне.УдалятьПомеченные Тогда + + Результат.ОповещениеОбИзменениях = СтандартныеПодсистемыСервер.ПодготовитьОповещениеФормОбИзменении(РезультатВыполненияВФоне.Удаленные); + + УдаленныеКоличество = РезультатВыполненияВФоне.Удаленные.Количество(); + НеУдаленныеКоличество = РезультатВыполненияВФоне.НеУдаленные.Количество(); + + Если УдаленныеКоличество = 0 И НеУдаленныеКоличество = 0 Тогда + Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаУдалениеНеТребуется; + ИначеЕсли НеУдаленныеКоличество = 0 Тогда + Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаУспешноЗавершено; + Результат.ОповещениеТекст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Удалено объектов: %1.'"), + Формат(УдаленныеКоличество, "ЧН=0; ЧГ=")); + Элементы.НадписьУспешноЗавершено.Заголовок = Результат.ОповещениеТекст; + Иначе + Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаПричиныНевозможностиУдаления; + Результат.ОповещениеТекст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Удалено: %1, не удалено: %2.'"), + Формат(УдаленныеКоличество, "ЧН=0; ЧГ="), + Формат(НеУдаленныеКоличество, "ЧН=0; ЧГ=")); + Результат.ОповещениеКартинка = БиблиотекаКартинок.Предупреждение32; + + Если УдаленныеКоличество = 0 Тогда + Элементы.НадписьИтогиЧастичногоУдаления.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не получилось удалить объекты, помеченные на удаление (%1):'"), + Формат(НеУдаленныеКоличество, "ЧН=0; ЧГ=")); + Иначе + Элементы.НадписьИтогиЧастичногоУдаления.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Успешно удалено: %1 из %2, остальные объекты не удалены (%3):'"), + Формат(УдаленныеКоличество, "ЧН=0; ЧГ="), + Формат(УдаленныеКоличество+НеУдаленныеКоличество, "ЧН=0; ЧГ="), + Формат(НеУдаленныеКоличество, "ЧН=0; ЧГ=")); + КонецЕсли; + + Шаблон = Элементы.ГруппаНеУдаленные.Заголовок; + Шаблон = Лев(Шаблон, СтрНайти(Шаблон, "(")); + Элементы.ГруппаНеУдаленные.Заголовок = Шаблон + Формат(НеУдаленныеКоличество, "ЧН=0; ЧГ=") + ")"; + + ЗаполнитьКоллекцииОставшихсяОбъектов(РезультатВыполненияВФоне); + + ГруппыНеУдаленных = НеУдаленные.ПолучитьЭлементы(); + Если ГруппыНеУдаленных.Количество() > 0 Тогда + ЭлементыПервойГруппы = ГруппыНеУдаленных[0].ПолучитьЭлементы(); + Если ЭлементыПервойГруппы.Количество() > 0 Тогда + Элементы.НеУдаленные.ТекущаяСтрока = ЭлементыПервойГруппы[0].ПолучитьИдентификатор(); + ПоказатьСвязиНеУдаленныхНаСервере(); + КонецЕсли; + КонецЕсли; + + КонецЕсли; + + Иначе + + // Заполнение дерева помеченных на удаление. + Отмеченные = ПомеченныеНаУдалениеСоСтраницыРезультатов(); + ПометкиУстанавливаютсяВыборочно = (Отмеченные.Количество() > 0); + + ДеревоЗначений = РеквизитФормыВЗначение("ДеревоПомеченныхНаУдаление"); + ДеревоЗначений.Строки.Очистить(); + ДеревоЗначений.Колонки.Добавить("Количество"); + + УзлыПервогоУровня = Новый Соответствие; + + ПользовательскиеОбъекты = РезультатВыполненияВФоне.ПользовательскиеОбъекты; + Для Каждого УдаляемыйСсылка Из ПользовательскиеОбъекты Цикл + ТипУдаляемого = ТипЗнч(УдаляемыйСсылка); + УдаляемыйИнформация = Обработки.УдалениеПомеченныхОбъектов.СформироватьИнформациюОТипах(РезультатВыполненияВФоне, ТипУдаляемого); + + УзелТипа = УзлыПервогоУровня.Получить(ТипУдаляемого); + Если УзелТипа = Неопределено Тогда + УдаляемыйМетаданные = УдаляемыйСсылка.Метаданные(); + УзелТипа = ДеревоЗначений.Строки.Добавить(); + УзелТипа.Значение = УдаляемыйИнформация.ПолноеИмя; + УзелТипа.Представление = УдаляемыйИнформация.ПредставлениеСписка; + УзелТипа.Пометка = Истина; + УзелТипа.Количество = 0; + УзелТипа.НомерКартинки = -1; + УзлыПервогоУровня.Вставить(ТипУдаляемого, УзелТипа); + БыстрыйПоиск.ПолныеИменаОбъектовМетаданных.Вставить(ТипУдаляемого, УдаляемыйИнформация.ПолноеИмя); + КонецЕсли; + УзелТипа.Количество = УзелТипа.Количество + 1; + + УзелУдаляемого = УзелТипа.Строки.Добавить(); + УзелУдаляемого.Значение = УдаляемыйСсылка; + УзелУдаляемого.Представление = Строка(УдаляемыйСсылка); + УзелУдаляемого.Пометка = Истина; + УзелУдаляемого.НомерКартинки = НомерКартинки(УдаляемыйСсылка, Истина, УдаляемыйИнформация.Вид, Истина); + + Если ПометкиУстанавливаютсяВыборочно И Отмеченные.Найти(УдаляемыйСсылка) = Неопределено Тогда + УзелУдаляемого.Пометка = Ложь; + УзелТипа.Пометка = Ложь; + КонецЕсли; + + КонецЦикла; + + Для Каждого УзелТипа Из ДеревоЗначений.Строки Цикл + УзелТипа.Представление = УзелТипа.Представление + " (" + УзелТипа.Количество + ")"; + КонецЦикла; + + ДеревоЗначений.Колонки.Удалить(ДеревоЗначений.Колонки.Количество); + ДеревоЗначений.Строки.Сортировать("Представление", Истина); + + ЗначениеВРеквизитФормы(ДеревоЗначений, "ДеревоПомеченныхНаУдаление"); + + КоличествоТипов = УзлыПервогоУровня.Количество(); + + Если КоличествоТипов = 0 Тогда + Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаУдалениеНеТребуется; + Иначе + Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаПомеченныеНаУдаление; + Если КоличествоТипов = 1 Тогда + Результат.РазвернутьДеревоПомеченныхНаУдаление = Истина; + КонецЕсли; + КонецЕсли; + + КонецЕсли; + + УдалитьИзВременногоХранилища(АдресРезультата); + ВидимостьДоступность(ЭтотОбъект); + + Возврат Результат; +КонецФункции + +&НаКлиенте +Процедура ВывестиОшибку(КраткоеПредставлениеОшибки, ПодробноеПредставлениеОшибки); + Кратко = НСтр("ru = 'При удалении помеченных возникла ошибка:'") + Символы.ПС + КраткоеПредставлениеОшибки; + ПодробныйТекстОшибки = Кратко + Символы.ПС + Символы.ПС + ПодробноеПредставлениеОшибки; + Элементы.НадписьТекстОшибки.Заголовок = Кратко; + Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаВозниклаОшибка; +КонецПроцедуры + +&НаКлиенте +Процедура ПослеПодтвержденияОтменыЗадания(Ответ, ПараметрыВыполнения) Экспорт + Если Ответ = КодВозвратаДиалога.Прервать Тогда + ПоказатьДиалогПередЗакрытием = Ложь; + Закрыть(); + КонецЕсли; +КонецПроцедуры + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/DataProcessors/УдалениеПомеченныхОбъектов/ManagerModule.bsl b/SSL/src/DataProcessors/УдалениеПомеченныхОбъектов/ManagerModule.bsl index 6cd4bbd45..a8eb0ce53 100644 --- a/SSL/src/DataProcessors/УдалениеПомеченныхОбъектов/ManagerModule.bsl +++ b/SSL/src/DataProcessors/УдалениеПомеченныхОбъектов/ManagerModule.bsl @@ -420,7 +420,7 @@ Если ТипЗнч(Результат.ИнформацияОбОшибке) = Тип("ИнформацияОбОшибке") Или Результат.ПрепятствующиеУдалению = Неопределено Тогда // Текст ошибки Если ТипЗнч(Результат.ИнформацияОбОшибке) = Тип("ИнформацияОбОшибке") Тогда - ТекстОшибки = СтандартныеПодсистемыКлиентСервер.ИсходнаяПричинаОшибки(Результат.ИнформацияОбОшибке); + ТекстОшибки = КраткоеПредставлениеОшибки(Результат.ИнформацияОбОшибке); Подробно = ПодробноеПредставлениеОшибки(Результат.ИнформацияОбОшибке); Иначе ТекстОшибки = Результат.ИнформацияОбОшибке; @@ -428,6 +428,7 @@ КонецЕсли; Для Каждого СообщениеОтОбъекта Из Результат.Сообщения Цикл ТекстОшибки = СокрП(ТекстОшибки + Символы.ПС + Символы.ПС + СокрЛ(СообщениеОтОбъекта.Текст)); + Подробно = СокрП(Подробно + Символы.ПС + Символы.ПС + СокрЛ(СообщениеОтОбъекта.Текст)); КонецЦикла; Причина = ПараметрыВыполнения.ПрепятствующиеУдалению.Добавить(); Причина.УдаляемыйСсылка = Ссылка; diff --git a/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Forms/УправляемаяФорма/Form.form b/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Forms/УправляемаяФорма/Form.form index 8681db65b..7e26f96e0 100644 --- a/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Forms/УправляемаяФорма/Form.form +++ b/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Forms/УправляемаяФорма/Form.form @@ -3662,45 +3662,6 @@ <items xsi:type="form:FormGroup"> <name>НастройкиОбменаДанными</name> <id>4</id> - <items xsi:type="form:FormField"> - <name>БезопасныйРежим</name> - <id>404</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <dataPath xsi:type="form:DataPath"> - <segments>Объект.БезопасныйРежим</segments> - </dataPath> - <titleLocation>Right</titleLocation> - <toolTipRepresentation>Button</toolTipRepresentation> - <extendedTooltip> - <name>БезопасныйРежимРасширеннаяПодсказка</name> - <id>406</id> - <title> - <key>ru</key> - <value>Устанавливает или отключает безопасный режим исполнения алгоритмов правил конвертации. Рекомендуется выполнять выгрузку и загрузку данных в безопасном режиме. Более подробно о безопасном режиме см. документацию к платформе 1С:Предприятие.</value> - - Label - true - true - - Left - - - - БезопасныйРежимКонтекстноеМеню - 405 - true - - CheckBoxField - Enter - true - Left - true - - ФлагРежимОтладки 94 diff --git a/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Forms/УправляемаяФорма/Module.bsl b/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Forms/УправляемаяФорма/Module.bsl index 4725aa54c..3da5c53ca 100644 --- a/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Forms/УправляемаяФорма/Module.bsl +++ b/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Forms/УправляемаяФорма/Module.bsl @@ -16,7 +16,6 @@ ПроверитьВерсиюИРежимСовместимостиПлатформы(); Объект.ЭтоИнтерактивныйРежим = Истина; - Объект.БезопасныйРежим = Истина; ЗаголовокФормы = НСтр("ru = 'Универсальный обмен данными в формате XML (%ВерсияОбработки%)'"); ЗаголовокФормы = СтрЗаменить(ЗаголовокФормы, "%ВерсияОбработки%", ВерсияОбъектаСтрокойНаСервере()); @@ -88,7 +87,7 @@ КонецЕсли; - Если ЭтоLinuxКлиент() Тогда + Если Не ЭтоWindowsКлиент() Тогда Элементы.ГруппаОС.ТекущаяСтраница = Элементы.ГруппаОС.ПодчиненныеЭлементы.ГруппаLinux; КонецЕсли; @@ -685,8 +684,8 @@ &НаКлиенте Процедура ПрочитатьПравилаОбмена(Команда) - Если ЭтоLinuxКлиент() И ПрямаяВыгрузка = 1 Тогда - ПоказатьПредупреждение(,НСтр("ru = 'Прямое подключение к информационной базе не поддерживается в клиенте под управлением ОС Linux.'")); + Если Не ЭтоWindowsКлиент() И ПрямаяВыгрузка = 1 Тогда + ПоказатьПредупреждение(,НСтр("ru = 'Прямое подключение к информационной базе поддерживается только в клиенте под управлением ОС Windows.'")); Возврат; КонецЕсли; @@ -1200,6 +1199,7 @@ ДвоичныеДанные = ПолучитьИзВременногоХранилища (АдресФайла); АдресНаСервере = ПолучитьИмяВременногоФайла(".xml"); + // Удаление временного файла происходит не через УдалитьФайлы(АдресНаСервере), а через УдалитьФайлы(Объект.ИмяФайлаОбмена) далее. ДвоичныеДанные.Записать(АдресНаСервере); Объект.ИмяФайлаОбмена = АдресНаСервере; @@ -1377,6 +1377,7 @@ Если ЭтоАдресВременногоХранилища(АдресФайлаПравилЗагрузкиВХранилище) Тогда ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресФайлаПравилЗагрузкиВХранилище); АдресНаСервере = ПолучитьИмяВременногоФайла("xml"); + // Удаление временного файла происходит не через УдалитьФайлы(АдресНаСервере), а через УдалитьФайлы(Объект.ИмяФайлаПравилОбмена) далее. ДвоичныеДанные.Записать(АдресНаСервере); Объект.ИмяФайлаПравилОбмена = АдресНаСервере; Иначе @@ -1431,6 +1432,8 @@ Расширение = РасширениеФайла(ИмяФайлаДляРасширения); ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресФайла); АдресНаСервере = ПолучитьИмяВременногоФайла(Расширение); + // Удаление временного файла происходит не через УдалитьФайлы(АдресНаСервере), + // а через УдалитьФайлы(Объект.ИмяФайлаПравилОбмена) и УдалитьФайлы(Объект.ИмяФайлаОбмена) далее. ДвоичныеДанные.Записать(АдресНаСервере); ИмяФайла = АдресНаСервере; @@ -1848,20 +1851,20 @@ КонецПроцедуры -// Возвращает Истина, если клиентское приложение запущено под управлением ОС Linux. +// Возвращает Истина, если клиентское приложение запущено под управлением ОС Windows. // // Возвращаемое значение: // Булево. Если нет клиентского приложения, возвращается Ложь. // &НаКлиенте -Функция ЭтоLinuxКлиент() +Функция ЭтоWindowsКлиент() СистемнаяИнформация = Новый СистемнаяИнформация; - ЭтоLinuxКлиент = СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Linux_x86 - ИЛИ СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Linux_x86_64; + ЭтоWindowsКлиент = СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86 + ИЛИ СистемнаяИнформация.ТипПлатформы = ТипПлатформы.Windows_x86_64; - Возврат ЭтоLinuxКлиент; + Возврат ЭтоWindowsКлиент; КонецФункции diff --git a/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Forms/УправляемаяФормаНастройкиОтладкиОбработчиков/Form.form b/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Forms/УправляемаяФормаНастройкиОтладкиОбработчиков/Form.form index ac0bca93f..3bf355a7c 100644 --- a/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Forms/УправляемаяФормаНастройкиОтладкиОбработчиков/Form.form +++ b/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Forms/УправляемаяФормаНастройкиОтладкиОбработчиков/Form.form @@ -108,11 +108,9 @@ Label 34 - true true Left - 6 true @@ -177,11 +175,9 @@ Label 34 - true true Left - 6 true @@ -246,11 +242,9 @@ Label 34 - true true Left - 6 true @@ -348,7 +342,6 @@ ru Группа шаг 1 - true Группа_Шаг_1ExtendedTooltip 29 @@ -481,7 +474,6 @@ ru Группа шаг 2 - true Группа_Шаг_2ExtendedTooltip 39 @@ -539,7 +531,6 @@ Label 67 - true true Left @@ -559,7 +550,6 @@ ru Группа шаг 3 - true Группа_Шаг_3ExtendedTooltip 43 @@ -630,7 +620,6 @@ StartChoice ИмяФайлаВнешнейОбработкиОбработчиковСобытийНачалоВыбора - true true true true diff --git a/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/ObjectModule.bsl b/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/ObjectModule.bsl index 3d075b223..6c8473ec4 100644 --- a/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/ObjectModule.bsl +++ b/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/ObjectModule.bsl @@ -513,7 +513,6 @@ // На случай мутабельных значений. Возврат Ложь; КонецПопытки; - КонецЕсли; КонецФункции @@ -629,10 +628,13 @@ НайденныйОбъектПоУникальномуИдентификатору, ОбщаяСтруктураСвойств = Неопределено, ОбщиеСвойстваПоиска = Неопределено, СтрокаЗапросаПоискаПоУникальномуИдентификатору = "") Экспорт - Если ОбщаяСтруктураСвойств = Неопределено Тогда - ТекСтруктураСвойств = Менеджеры[ТипЗнч(Менеджер.ПустаяСсылка())]; - ИмяТипа = ТекСтруктураСвойств.ИмяТипа; + Попытка + ТекСтруктураСвойств = Менеджеры[ТипЗнч(Менеджер.ПустаяСсылка())]; + ИмяТипа = ТекСтруктураСвойств.ИмяТипа; + Исключение + ИмяТипа = ""; + КонецПопытки; Иначе ИмяТипа = ОбщаяСтруктураСвойств.ИмяТипа; КонецЕсли; @@ -5926,7 +5928,7 @@ Объект.ОбменДанными.Загрузка = Значение; Исключение // Не все объекты, которые участвуют в обмене, имеют свойство "ОбменДанными". - // Например КонстантыНабор такого свойства не имеют + // Например КонстантыНабор такого свойства не имеют. // Использование конструкции Попытка ... Исключение выгоднее с точки зрения быстродействия, // нежели определения типа объекта. КонецПопытки; @@ -8057,6 +8059,10 @@ Процедура ПровестиЗаписьНеЗаписанныхОбъектов() + Если мГлобальныйСтекНеЗаписанныхОбъектов = Неопределено Тогда + Возврат; + КонецЕсли; + Для Каждого СтрокаДанных Из мГлобальныйСтекНеЗаписанныхОбъектов Цикл // отложенная запись объектов @@ -8066,7 +8072,7 @@ ЗаписатьОбъектВИБ(Объект, СтрокаДанных.Значение.ТипОбъекта); ДобавитьСсылкуВСписокЗагруженныхОбъектов(0, НППСсылки, Объект.Ссылка); - + КонецЦикла; мГлобальныйСтекНеЗаписанныхОбъектов.Очистить(); @@ -8605,6 +8611,13 @@ КонецЕсли; + Если ИмяТипаОбъекта <> "РегистрСведений" + И ИмяТипаОбъекта <> "Константы" + И ИмяТипаОбъекта <> "Перечисление" Тогда + // Проверка даты запрета для всех объектов кроме регистров сведений и констант. + Отказ = Отказ Или ЗапретИзмененияДанныхПоДате(Объект); + КонецЕсли; + Если Отказ Тогда ДобавитьСсылкуВСписокЗагруженныхОбъектов(НППГлобальнойСсылки, НППСсылки, Неопределено); @@ -8758,12 +8771,20 @@ Объект = НаборЗаписей; + Если СтруктураСвойств.Периодический Тогда + // Проверка даты запрета изменения для набора записей. + // Если не проходит - не записывать набор. + Если ЗапретИзмененияДанныхПоДате(Объект) Тогда + Возврат Неопределено; + КонецЕсли; + КонецЕсли; + Иначе // Регистр записываем не набором записей. - Если НеЗамещатьОбъект Тогда + Если НеЗамещатьОбъект Или СтруктураСвойств.Периодический Тогда - // Возможно мы не хотим замещать существующую запись. + // Возможно мы не хотим замещать существующую запись, либо нужна проверка на дату запрета. ВременныйНаборЗаписей = РегистрыСведений[СтруктураСвойств.Имя].СоздатьНаборЗаписей(); // Нужно отбор установить у регистра. @@ -8775,10 +8796,14 @@ ВременныйНаборЗаписей.Прочитать(); - Если ВременныйНаборЗаписей.Количество() > 0 Тогда + Если ВременныйНаборЗаписей.Количество() > 0 + Или ЗапретИзмененияДанныхПоДате(ВременныйНаборЗаписей) Тогда Возврат Неопределено; КонецЕсли; + Иначе + // Считаем что объект следует записать. + НужноЗаписатьОбъект = Истина; КонецЕсли; КонецЕсли; @@ -8786,7 +8811,8 @@ КонецЕсли; ЭтоСсылочныйТипОбъекта = НЕ( ИмяТипаОбъекта = "РегистрСведений" - ИЛИ ИмяТипаОбъекта = "Константы"); + ИЛИ ИмяТипаОбъекта = "Константы" + ИЛИ ИмяТипаОбъекта = "Перечисление"); Если ЭтоСсылочныйТипОбъекта Тогда @@ -9166,6 +9192,7 @@ КонецЕсли; ИмяФайлаЗаписей = ПолучитьИмяВременногоФайла(); + // Удаление временных файлов происходит не по месту, с помощью УдалитьФайлы(ИмяФайлаЗаписей), а централизованно. СписокВременныхФайлов.Добавить(ИмяФайлаЗаписей); ВременныйФайЗаписей = Новый ЗаписьТекста; @@ -12487,10 +12514,6 @@ // Очистка информационной базы по правилам. ОбработатьПравилаОчистки(ТаблицаПравилОчистки.Строки); - - Если ИспользоватьТранзакции Тогда - НачатьТранзакцию(); - КонецЕсли; Возврат Истина; @@ -12514,14 +12537,7 @@ КонецЦикла; КонецЕсли; - // Отложенная запись того, что не записали с самого начала. - ПровестиЗаписьНеЗаписанныхОбъектов(); - - Если ИспользоватьТранзакции Тогда - ЗафиксироватьТранзакцию(); - КонецЕсли; - - ФайлОбмена.Закрыть(); + ФайлОбмена.Закрыть(); // Обработчик ПослеЗагрузкиДанных Если Не ПустаяСтрока(Конвертация.ПослеЗагрузкиДанных) Тогда @@ -12568,12 +12584,28 @@ РаботаВозможна = ВыполнитьДействияПередЧтениемДанных(); - Если НЕ РаботаВозможна Тогда + Если Не РаботаВозможна Тогда Возврат; - КонецЕсли; - - ПроизвестиЧтениеДанных(); - ВыполнитьДействияПослеЗавершенияЧтенияДанных(); + КонецЕсли; + + Если ИспользоватьТранзакции Тогда + НачатьТранзакцию(); + КонецЕсли; + + Попытка + ПроизвестиЧтениеДанных(); + // Отложенная запись того, что не записали с самого начала. + ПровестиЗаписьНеЗаписанныхОбъектов(); + Если ИспользоватьТранзакции Тогда + ЗафиксироватьТранзакцию(); + КонецЕсли; + Исключение + Если ИспользоватьТранзакции Тогда + ОтменитьТранзакцию(); + КонецЕсли; + КонецПопытки; + + ВыполнитьДействияПослеЗавершенияЧтенияДанных(); КонецПроцедуры @@ -12784,6 +12816,10 @@ КонецЕсли; + Если ИспользоватьТранзакции Тогда + НачатьТранзакцию(); + КонецЕсли; + Попытка // Включаем правила обмена в файл. @@ -12889,6 +12925,12 @@ ЗаписатьИнформациюОбОшибкеОбработчикиКонвертации(63, ОписаниеОшибки(), НСтр("ru = 'ПослеВыгрузкиДанных (конвертация)'")); КонецПопытки; + ПровестиЗаписьНеЗаписанныхОбъектов(); + + Если ИспользоватьТранзакции Тогда + ЗафиксироватьТранзакцию(); + КонецЕсли; + Исключение СтрокаОшибки = ОписаниеОшибки(); @@ -12902,6 +12944,10 @@ ЗакрытьФайл(); мОбработкаДляЗагрузкиДанных = Неопределено; + Если ИспользоватьТранзакции Тогда + ОтменитьТранзакцию(); + КонецЕсли; + Возврат; КонецПопытки; @@ -14049,6 +14095,87 @@ Возврат Структура; КонецФункции +Функция ЕстьБазоваяФункциональность() + + ЕстьСтандартныеПодсистемы = Метаданные.Подсистемы.Найти("СтандартныеПодсистемы"); + + Если ЕстьСтандартныеПодсистемы = Неопределено Тогда + Возврат Ложь; + Иначе + Если ЕстьСтандартныеПодсистемы.Подсистемы.Найти("БазоваяФункциональность") = Неопределено Тогда + Возврат Ложь; + Иначе + Возврат Истина; + КонецЕсли; + КонецЕсли; + +КонецФункции + +// Возвращает Истина, если "функциональная" подсистема существует в конфигурации. +// Предназначена для реализации вызова необязательной подсистемы (условного вызова). +// +// У "функциональной" подсистемы снят флажок "Включать в командный интерфейс". +// +// Параметры: +// ПолноеИмяПодсистемы - Строка - полное имя объекта метаданных подсистема +// без слов "Подсистема." и с учетом регистра символов. +// Например: "СтандартныеПодсистемы.ВариантыОтчетов". +// +// Пример: +// +// Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ВариантыОтчетов") Тогда +// МодульВариантыОтчетов = ОбщегоНазначения.ОбщийМодуль("ВариантыОтчетов"); +// МодульВариантыОтчетов.<Имя метода>(); +// КонецЕсли; +// +// Возвращаемое значение: +// Булево. +// +Функция ПодсистемаСуществует(ПолноеИмяПодсистемы) + + Если ЕстьБазоваяФункциональность() Тогда + МодульОбщегоНазначения = Вычислить("ОбщегоНазначения"); + Возврат МодульОбщегоНазначения.ПодсистемаСуществует(ПолноеИмяПодсистемы); + Иначе + Возврат Ложь; + КонецЕсли; + +КонецФункции + +// Выполняет проверку на наличие запрета загрузки по дате. +// +// Параметры: +// ЭлементДанных - СправочникОбъект, ДокументОбъект, РегистрСведенийНаборЗаписей и др. данные. +// Данные, которые были зачитаны из сообщения обмена, но еще не были записаны в ИБ. +// ПолучениеЭлемента - ПолучениеЭлементаДанных. +// +// Возвращаемое значение: +// Булево - Истина - установлена дата запрета изменения и загружаемый объект имеет дату меньше установленной, иначе Ложь. +// +Функция ЗапретИзмененияДанныхПоДате(ЭлементДанных) + + ИзменениеЗапрещено = Ложь; + + Если ПодсистемаСуществует("СтандартныеПодсистемы.ДатыЗапретаИзменения") Тогда + Если НЕ Метаданные.Константы.Содержит(ЭлементДанных.Метаданные()) Тогда + МодульОбщегоНазначения = Вычислить("ОбщегоНазначения"); + МодульДатыЗапретаИзменения = МодульОбщегоНазначения.ОбщийМодуль("ДатыЗапретаИзменения"); + + Попытка + Если МодульДатыЗапретаИзменения.ИзменениеЗапрещено(ЭлементДанных) Тогда + ИзменениеЗапрещено = Истина; + КонецЕсли; + Исключение + КонецПопытки; + КонецЕсли; + КонецЕсли; + + ЭлементДанных.ДополнительныеСвойства.Вставить("ПропуститьПроверкуЗапретаИзменения"); + + Возврат ИзменениеЗапрещено; + +КонецФункции + #КонецОбласти #КонецОбласти diff --git a/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Templates/ПараметрыОбработчиков/Template.mxlx b/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Templates/ПараметрыОбработчиков/Template.mxlx index 1af784b84..0dcc9218a 100644 --- a/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Templates/ПараметрыОбработчиков/Template.mxlx +++ b/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/Templates/ПараметрыОбработчиков/Template.mxlx @@ -6128,7 +6128,7 @@ -1 - + 31 diff --git a/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/УниверсальныйОбменДаннымиXML.mdo b/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/УниверсальныйОбменДаннымиXML.mdo index 60cf5ace1..57f7122af 100644 --- a/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/УниверсальныйОбменДаннымиXML.mdo +++ b/SSL/src/DataProcessors/УниверсальныйОбменДаннымиXML/УниверсальныйОбменДаннымиXML.mdo @@ -65,22 +65,6 @@ - - БезопасныйРежим - - ru - Безопасный режим - - - Boolean - - - ru - Устанавливает или отключает безопасный режим исполнения алгоритма. - - - - ВерсияПлатформыИнформационнойБазыДляПодключения @@ -1208,6 +1192,22 @@ + + БезопасныйРежим + + ru + Безопасный режим + + + Boolean + + + ru + Устанавливает или отключает безопасный режим исполнения алгоритма. + + + + УправляемаяФорма diff --git a/SSL/src/DataProcessors/УправлениеИтогамиИАгрегатами/Forms/ОсновнаяФорма/Form.form b/SSL/src/DataProcessors/УправлениеИтогамиИАгрегатами/Forms/ОсновнаяФорма/Form.form index 3512308a5..5dfe1962b 100644 --- a/SSL/src/DataProcessors/УправлениеИтогамиИАгрегатами/Forms/ОсновнаяФорма/Form.form +++ b/SSL/src/DataProcessors/УправлениеИтогамиИАгрегатами/Forms/ОсновнаяФорма/Form.form @@ -39,10 +39,11 @@ Form.Command.УстановитьПериодРассчитанныхИтогов Normal Auto - 25 + 30 true 2 true + Center UserCmds Auto @@ -51,7 +52,7 @@ 328 <key>ru</key> - <value>Установить период рассчитанных итогов для всех регистров накопления и бухгалтерии, у которых включены итоги. + <value>Установить период рассчитанных итогов для всех регистров, у которых включены итоги. Для регистров накопления - на %1. Для регистров бухгалтерии - на %2.</value> @@ -76,19 +77,15 @@ true Label - 55 - true - 4 true - true - false true Style.ПоясняющийТекст + Center Left - Top + Center true @@ -149,10 +146,11 @@ Form.Command.ВключитьИспользованиеИтоговБыстрыйДоступ Normal Auto - 25 + 30 true 2 true + Center UserCmds Auto @@ -184,19 +182,15 @@ true Label - 55 - true - 2 true - true - false true Style.ПоясняющийТекст + Center Left - Top + Center true @@ -244,7 +238,6 @@ ru Быстрый доступ итоги - true БыстрыйДоступИтогиExtendedTooltip 332 @@ -296,10 +289,11 @@ Form.Command.ЗаполнитьАгрегатыИВыполнитьПерестроение Normal Auto - 25 + 30 true 2 true + Center UserCmds Auto @@ -308,7 +302,7 @@ 292 <key>ru</key> - <value>Выполнить перестроение и заполнение агрегатов для всех регистров, у которых включен режим агрегатов и установлено их использование.</value> + <value>Выполнить перестроение и заполнение агрегатов для всех регистров, у которых включен режим агрегатов и установлено их использование.</value> true true @@ -331,19 +325,15 @@ true Label - 55 - true - 2 true - true - false true Style.ПоясняющийТекст + Center Left - Top + Center true @@ -373,7 +363,6 @@ Auto true - true Auto Auto @@ -404,10 +393,11 @@ Form.Command.ПолучитьОптимальныеАгрегаты Normal Auto - 25 + 30 true 2 true + Center UserCmds Auto @@ -439,19 +429,15 @@ true Label - 55 - true - 2 true - true - false true Style.ПоясняющийТекст + Center Left - Top + Center true @@ -481,7 +467,6 @@ Auto true - true Auto Auto @@ -534,7 +519,6 @@ ru Типовые операции - true БыстрыйДоступExtendedTooltip 331 @@ -782,16 +766,10 @@ Left true + 9 true true - - ru - DLF=DD - - - ru - DLF=D - + false true true true @@ -1588,7 +1566,6 @@ true true true - 5 true MultiRow
          true
          @@ -2630,8 +2607,8 @@ true true true + 6 true - 1 true MultiRow
          true
          @@ -3039,8 +3016,8 @@ true true + 3 true - 3 true MultiRow
          true
          @@ -3184,7 +3161,7 @@ Подвал 320 - ГиперссылкаСТекстом + ТекстГиперссылки 326 true true @@ -3196,7 +3173,7 @@ None - ГиперссылкаСТекстомExtendedTooltip + ТекстГиперссылкиРасширеннаяПодсказка 412 Label true @@ -3206,12 +3183,12 @@
          - ГиперссылкаСТекстомКонтекстноеМеню + ТекстГиперссылкиКонтекстноеМеню 327 true LabelField - Right + Left Enter true Left @@ -3221,8 +3198,6 @@ Click ГиперссылкаСТекстомНажатие - 25 - true true true true @@ -3269,7 +3244,6 @@ ru Подвал - true ПодвалExtendedTooltip 411 @@ -3408,7 +3382,7 @@ ПериодИтогов <key>ru</key> - <value>Период итогов</value> + <value>Период</value> 6 diff --git a/SSL/src/DataProcessors/УправлениеИтогамиИАгрегатами/Forms/ОсновнаяФорма/Module.bsl b/SSL/src/DataProcessors/УправлениеИтогамиИАгрегатами/Forms/ОсновнаяФорма/Module.bsl index a046a6420..5c981134b 100644 --- a/SSL/src/DataProcessors/УправлениеИтогамиИАгрегатами/Forms/ОсновнаяФорма/Module.bsl +++ b/SSL/src/DataProcessors/УправлениеИтогамиИАгрегатами/Forms/ОсновнаяФорма/Module.bsl @@ -9,7 +9,6 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - УстановитьУсловноеОформление(); Если Параметры.Свойство("АвтоТест") Тогда Возврат; @@ -137,13 +136,42 @@ &НаКлиенте Процедура СписокИтоговПриАктивизацииСтроки(Элемент) + // Для платформы (обращение к свойству "Элемент.ВыделенныеСтроки" сбрасывает выделение). + ВыделенныеСтроки = Новый Массив; + ВыделенныеСтроки.Добавить(Элементы.СписокИтогов.ТекущаяСтрока); - Если Элемент.ТекущиеДанные = Неопределено Тогда - Элементы.ГруппаРазделениеИтогов.Доступность = Ложь; - Иначе - Элементы.ГруппаРазделениеИтогов.Доступность = Элемент.ТекущиеДанные.РазрешитьРазделениеИтогов; - КонецЕсли; + ВыделеныРегистрыСИтогами = Ложь; + ВыделеныРегистрыСОстатками = Ложь; + ВыделеныРегистрыСИтогамиИОстатками = Ложь; + ВыделеныРегистрыСРазделениемИтогов = Ложь; + Для Каждого ИдентификаторСтроки Из ВыделенныеСтроки Цикл + СтрокаТаблицы = Элемент.ДанныеСтроки(ИдентификаторСтроки); + Если СтрокаТаблицы = Неопределено Тогда + Продолжить; + КонецЕсли; + Если СтрокаТаблицы.АгрегатыИтоги = 0 Или СтрокаТаблицы.АгрегатыИтоги = 2 Тогда + ВыделеныРегистрыСИтогами = Истина; + Если СтрокаТаблицы.ОстаткиИОбороты Тогда + ВыделеныРегистрыСИтогамиИОстатками = Истина; + КонецЕсли; + КонецЕсли; + Если СтрокаТаблицы.РазрешитьРазделениеИтогов Тогда + ВыделеныРегистрыСРазделениемИтогов = Истина; + КонецЕсли; + Если СтрокаТаблицы.ОстаткиИОбороты Тогда + ВыделеныРегистрыСОстатками = Истина; + КонецЕсли; + КонецЦикла; + + Элементы.ГруппаИтоги.Доступность = ВыделеныРегистрыСИтогами; + Элементы.ГруппаТекущиеИтоги.Доступность = ВыделеныРегистрыСИтогамиИОстатками; + Элементы.ГруппаРазделениеИтогов.Доступность = ВыделеныРегистрыСРазделениемИтогов; + Элементы.УстановитьПериодИтогов.Доступность = ВыделеныРегистрыСИтогамиИОстатками; + Элементы.ПересчитатьИтоги.Доступность = ВыделеныРегистрыСИтогами; + Элементы.ПересчитатьТекущиеИтоги.Доступность = ВыделеныРегистрыСОстатками; + Элементы.ПересчитатьИтогиЗаПериод.Доступность = ВыделеныРегистрыСИтогамиИОстатками; + Элементы.ГруппаПересчет.Доступность = ВыделеныРегистрыСИтогами Или ВыделеныРегистрыСОстатками; КонецПроцедуры &НаКлиенте @@ -536,7 +564,7 @@ ПараметрыИтогов.Вставить("ТекстСообщенияОбОшибке", НСтр("ru='Ошибка перестроения агрегатов.'")); ПараметрыИтогов.Вставить("ГрупповаяОбработка", Истина); - ИзменитьАгрегатыКлиент(ПараметрыИтогов); + ИзменитьАгрегатыКлиент(ПараметрыИтогов, Истина); ПараметрыИтогов = Новый Структура; ПараметрыИтогов.Вставить("ОбрабатыватьЗаголовок", НСтр("ru='Заполнение агрегатов ...'")); @@ -548,7 +576,7 @@ ПараметрыИтогов.Вставить("Значение2", Неопределено); ПараметрыИтогов.Вставить("ТекстСообщенияОбОшибке", НСтр("ru='Ошибка заполнения агрегатов.'")); - ИзменитьАгрегатыКлиент(ПараметрыИтогов); + ИзменитьАгрегатыКлиент(ПараметрыИтогов, Ложь); КонецПроцедуры @@ -593,9 +621,7 @@ &НаКлиенте Процедура ПересчитатьИтогиЗаПериод(Команда) - Обработчик = Новый ОписаниеОповещения("ПересчитатьИтогиЗаПериодЗавершение", ЭтотОбъект); - Диалог = Новый ДиалогРедактированияСтандартногоПериода; Диалог.Период = ПериодПерерасчетаРегистров; Диалог.Показать(Обработчик); @@ -607,113 +633,47 @@ &НаСервере Процедура УстановитьУсловноеОформление() - - УсловноеОформление.Элементы.Очистить(); - - // - - Элемент = УсловноеОформление.Элементы.Добавить(); - - ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); - ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ИтогиАгрегатыИтоги.Имя); - - ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); - ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("СписокИтогов.АгрегатыИтоги"); - ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; - ОтборЭлемента.ПравоеЗначение = 0; - - Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = 'Итоги'")); - - // - - Элемент = УсловноеОформление.Элементы.Добавить(); - - ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); - ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ИтогиАгрегатыИтоги.Имя); - - ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); - ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("СписокИтогов.АгрегатыИтоги"); - ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; - ОтборЭлемента.ПравоеЗначение = 1; - - Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = 'Агрегаты'")); - - // - - Элемент = УсловноеОформление.Элементы.Добавить(); - - ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); - ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ИтогиАгрегатыИтоги.Имя); - - ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); - ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("СписокИтогов.АгрегатыИтоги"); - ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; - ОтборЭлемента.ПравоеЗначение = 2; - - Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = 'Просто итоговый регистр'")); - - // - - Элемент = УсловноеОформление.Элементы.Добавить(); - - ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); - ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ИтогиИспользоватьТекущиеИтоги.Имя); - - ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); - ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ИтогиПериодИтогов.Имя); - - ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); - ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ИтогиРазделениеИтогов.Имя); - - ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); - ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("СписокИтогов.ОстаткиИОбороты"); - ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; - ОтборЭлемента.ПравоеЗначение = Ложь; - - Элемент.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.СеребристоСерый); - - // - - Элемент = УсловноеОформление.Элементы.Добавить(); - - ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); - ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ИтогиАгрегатыИтоги.Имя); - - ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); - ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("СписокИтогов.АгрегатыИтоги"); - ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; - ОтборЭлемента.ПравоеЗначение = 2; - - Элемент.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.СеребристоСерый); - - // - - Элемент = УсловноеОформление.Элементы.Добавить(); - - ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); - ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ИтогиИспользоватьИтоги.Имя); - - ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); - ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("СписокИтогов.АгрегатыИтоги"); - ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; - ОтборЭлемента.ПравоеЗначение = 1; - - Элемент.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.СеребристоСерый); - - // - - Элемент = УсловноеОформление.Элементы.Добавить(); - - ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); - ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.АгрегатыПоРегистрам.Имя); - - ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); - ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("АгрегатыПоРегистрам.ПостроениеОптимально"); - ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; - ОтборЭлемента.ПравоеЗначение = Ложь; - - Элемент.Оформление.УстановитьЗначениеПараметра("Шрифт", Новый Шрифт(WindowsШрифты.ШрифтДиалоговИМеню, , , Истина, Ложь, Ложь, Ложь, )); - + // Сейчас регистр в режиме Итогов. + Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); + Инструкция.Поля = "ИтогиАгрегатыИтоги"; + Инструкция.Отборы.Вставить("СписокИтогов.АгрегатыИтоги", 0); + Инструкция.Оформление.Вставить("Текст", НСтр("ru = 'Итоги'")); + СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); + + // Сейчас регистр в режиме Агрегатов. + Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); + Инструкция.Поля = "ИтогиАгрегатыИтоги"; + Инструкция.Отборы.Вставить("СписокИтогов.АгрегатыИтоги", 1); + Инструкция.Оформление.Вставить("Текст", НСтр("ru = 'Агрегаты'")); + СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); + + // Регистр, который может быть только в режиме Итогов. + Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); + Инструкция.Поля = "ИтогиАгрегатыИтоги"; + Инструкция.Отборы.Вставить("СписокИтогов.АгрегатыИтоги", 2); + Инструкция.Оформление.Вставить("Текст", НСтр("ru = 'Только итоги'")); + СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); + + // Невозможно управлять итогами когда регистр в режиме агрегатов. + Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); + Инструкция.Поля = "СписокИтогов"; + Инструкция.Отборы.Вставить("СписокИтогов.АгрегатыИтоги", 1); + Инструкция.Оформление.Вставить("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); + + // Невозможно управлять итогами когда регистр без остатков (только обороты). + Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); + Инструкция.Поля = "ИтогиАгрегатыИтоги"; + Инструкция.Отборы.Вставить("СписокИтогов.ОстаткиИОбороты", Ложь); + Инструкция.Оформление.Вставить("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); + + // Нужно заменить оптимальные агрегата в метаданных. + Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); + Инструкция.Поля = "АгрегатыПоРегистрам"; + Инструкция.Отборы.Вставить("АгрегатыПоРегистрам.ПостроениеОптимально", Ложь); + Инструкция.Оформление.Вставить("Шрифт", Новый Шрифт(WindowsШрифты.ШрифтДиалоговИМеню, , , Истина, Ложь, Ложь, Ложь, )); + СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// @@ -740,23 +700,23 @@ &НаКлиенте Процедура ПересчитатьИтогиЗаПериодЗавершение(ВыбранноеЗначение, ДополнительныеПараметры) Экспорт - Если ВыбранноеЗначение <> Неопределено Тогда - - ПериодПерерасчетаРегистров = ВыбранноеЗначение; - - ПараметрыИтогов = Новый Структура; - ПараметрыИтогов.Вставить("ОбрабатыватьЗаголовок", НСтр("ru='Пересчет итогов за период ...'")); - ПараметрыИтогов.Вставить("ПослеПроцесса", НСтр("ru='Пересчет итогов за период завершен'")); - ПараметрыИтогов.Вставить("Действие", "ПересчитатьИтогиЗаПериод"); - ПараметрыИтогов.Вставить("МассивСтрок", Элементы.СписокИтогов.ВыделенныеСтроки); - ПараметрыИтогов.Вставить("Поле", "Наименование"); - ПараметрыИтогов.Вставить("Значение1", ПериодПерерасчетаРегистров.ДатаНачала); - ПараметрыИтогов.Вставить("Значение2", ПериодПерерасчетаРегистров.ДатаОкончания); - ПараметрыИтогов.Вставить("ТекстСообщенияОбОшибке", НСтр("ru='Ошибка пересчета итогов за период.'")); - - УправлениеИтогами(ПараметрыИтогов); - + Если ВыбранноеЗначение = Неопределено Тогда + Возврат; КонецЕсли; + + ПериодПерерасчетаРегистров = ВыбранноеЗначение; + + ПараметрыИтогов = Новый Структура; + ПараметрыИтогов.Вставить("ОбрабатыватьЗаголовок", НСтр("ru='Пересчет итогов за период...'")); + ПараметрыИтогов.Вставить("ПослеПроцесса", НСтр("ru='Пересчет итогов за период завершен'")); + ПараметрыИтогов.Вставить("Действие", "ПересчитатьИтогиЗаПериод"); + ПараметрыИтогов.Вставить("МассивСтрок", Элементы.СписокИтогов.ВыделенныеСтроки); + ПараметрыИтогов.Вставить("Поле", "Наименование"); + ПараметрыИтогов.Вставить("Значение1", ПериодПерерасчетаРегистров.ДатаНачала); + ПараметрыИтогов.Вставить("Значение2", ПериодПерерасчетаРегистров.ДатаОкончания); + ПараметрыИтогов.Вставить("ТекстСообщенияОбОшибке", НСтр("ru='Ошибка пересчета итогов за период.'")); + + УправлениеИтогами(ПараметрыИтогов); КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// @@ -784,15 +744,27 @@ КонецПроцедуры &НаКлиенте -Процедура ПоказатьРезультатВыполнения(ПустойПараметр, РезультатВыполнения) Экспорт - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ЭтотОбъект, РезультатВыполнения); +Процедура ПолучитьОптимальныеАгрегатКлиентЗавершение(ПустойПараметр, РезультатВыполнения) Экспорт + + Если РезультатВыполнения.ЕстьОшибки Тогда + Предупреждение = Новый Структура; + Предупреждение.Вставить("Текст", РезультатВыполнения.ТекстСообщения); + Предупреждение.Вставить("Подробно", РезультатВыполнения.ПодробныйТекстСообщения); + СтандартныеПодсистемыКлиент.ВывестиПредупреждение(ЭтотОбъект, Предупреждение); + Иначе + ПоказатьОповещениеПользователя(НСтр("ru = 'Агрегаты успешно получены.'"),, + РезультатВыполнения.ТекстСообщения, БиблиотекаКартинок.Успешно32); + КонецЕсли; + КонецПроцедуры &НаКлиенте -Процедура ИзменитьАгрегатыКлиент(Знач ПараметрыИтогов) +Процедура ИзменитьАгрегатыКлиент(Знач ПараметрыИтогов, Знач ОчищатьСообщения = Истина) Результат = Истина; - ОчиститьСообщения(); + Если ОчищатьСообщения Тогда + ОчиститьСообщения(); + КонецЕсли; Выбранные = ПараметрыИтогов.МассивСтрок; Если Выбранные.Количество() = 0 Тогда @@ -966,7 +938,7 @@ КонецЕсли; Результат = ПолучитьОптимальныеАгрегатыСервер(); - Обработчик = Новый ОписаниеОповещения("ПоказатьРезультатВыполнения", ЭтотОбъект, Результат); + Обработчик = Новый ОписаниеОповещения("ПолучитьОптимальныеАгрегатКлиентЗавершение", ЭтотОбъект, Результат); Если Результат.МожноПолучить Тогда #Если ВебКлиент Тогда ПолучитьФайл(Результат.АдресФайла, Результат.ИмяФайла, Истина); @@ -1021,6 +993,9 @@ Результат.Вставить("МожноПолучить", Ложь); Результат.Вставить("АдресФайла", ""); Результат.Вставить("ИмяФайла", ""); + Результат.Вставить("ЕстьОшибки", Ложь); + Результат.Вставить("ТекстСообщения", ""); + Результат.Вставить("ПодробныйТекстСообщения", ""); Если ПолныеВозможности Тогда Коллекция = ВыделенныеСтроки("АгрегатыПоРегистрам"); @@ -1031,7 +1006,6 @@ КонецЕсли; Всего = Коллекция.Количество(); Успешно = 0; - ЕстьОшибки = Ложь; ПодробныйТекстОшибок = ""; КаталогВременныхФайлов = ОбщегоНазначенияКлиентСервер.ДобавитьКонечныйРазделительПути( @@ -1052,7 +1026,7 @@ ИнформацияОбОшибке = ИнформацияОбОшибке(); КонецПопытки; Если ИнформацияОбОшибке <> Неопределено Тогда - ЕстьОшибки = Истина; + Результат.ЕстьОшибки = Истина; ЗаголовокОшибки = НСтр("ru = 'Не удалось получить оптимальные агрегаты регистра ""%1"":'"); ПодробныйТекстОшибок = ПодробныйТекстОшибок + ?(ПодробныйТекстОшибок = "", "", Символы.ПС + Символы.ПС) @@ -1107,48 +1081,32 @@ // Когда 1 регистр. ЭлементСписка = ФайлыДляАрхивации[0]; ИмяРегистра = ЭлементСписка.Представление; - Если ЕстьОшибки Тогда - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение( - Результат, - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Не удалось получить оптимальные агрегаты регистра накопления ""%1"".'"), - ИмяРегистра), - ПодробныйТекстОшибок); + Если Результат.ЕстьОшибки Тогда + Результат.ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось получить оптимальные агрегаты регистра накопления ""%1"".'"), ИмяРегистра); + Результат.ПодробныйТекстСообщения = ПодробныйТекстОшибок; Иначе - СтандартныеПодсистемыКлиентСервер.ВывестиОповещение( - Результат, - НСтр("ru = 'Оптимальные агрегаты успешно получены.'"), - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = '%1 (регистр накопления)'"), - ИмяРегистра), - БиблиотекаКартинок.Успешно32); + Результат.ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = '%1 (регистр накопления)'"), ИмяРегистра); КонецЕсли; ИначеЕсли Успешно = 0 Тогда // Ничего не получилось. - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение( - Результат, - НСтр("ru = 'Не удалось получить оптимальные агрегаты регистров накопления.'"), - ПодробныйТекстОшибок); - ИначеЕсли ЕстьОшибки Тогда + Результат.ЕстьОшибки = Истина; + Результат.ТекстСообщения = НСтр("ru = 'Не удалось получить оптимальные агрегаты регистров накопления.'"); + Результат.ПодробныйТекстСообщения = ПодробныйТекстОшибок; + ИначеЕсли Результат.ЕстьОшибки Тогда // Частично успешно. - СтандартныеПодсистемыКлиентСервер.ВывестиПредупреждение( - Результат, - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + Результат.ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( НСтр("ru = 'Агрегаты успешно получены для %1 из %2 регистров. |Не получены: %3.'"), Успешно, Всего, - Всего - Успешно), - ПодробныйТекстОшибок); + Всего - Успешно); + Результат.ПодробныйТекстСообщения = ПодробныйТекстОшибок; Иначе // Полностью успешно. - СтандартныеПодсистемыКлиентСервер.ВывестиОповещение( - Результат, - НСтр("ru = 'Агрегаты успешно получены.'"), - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Регистры накопления (%1)'"), - Успешно), - БиблиотекаКартинок.Успешно32); + Результат.ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Регистры накопления (%1)'"), Успешно); КонецЕсли; Возврат Результат; @@ -1346,7 +1304,7 @@ Исключение СообщениеОбОшибке = ПараметрыСервера.СообщениеОбОшибке + " (" + КраткоеПредставлениеОшибки(ИнформацияОбОшибке()) + ")"; - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СообщениеОбОшибке, , ПараметрыСервера.ПолеФормы); + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СообщениеОбОшибке); Результат.Успешно = Ложь; КонецПопытки; @@ -1362,14 +1320,10 @@ Заголовок = НСтр("ru = 'Управление итогами - полные возможности'"); ТекстГиперссылки = НСтр("ru = 'Часто используемые возможности'"); Элементы.Операции.ТекущаяСтраница = Элементы.РасширенныеВозможности; - Элементы.БыстрыйДоступ.Видимость = Ложь; - Элементы.РасширенныеВозможности.Видимость = Истина; Иначе Заголовок = НСтр("ru = 'Управление итогами - часто используемые возможности'"); ТекстГиперссылки = НСтр("ru = 'Полные возможности'"); Элементы.Операции.ТекущаяСтраница = Элементы.БыстрыйДоступ; - Элементы.БыстрыйДоступ.Видимость = Истина; - Элементы.РасширенныеВозможности.Видимость = Ложь; КонецЕсли; КонецПроцедуры @@ -1410,7 +1364,7 @@ СтрокаТаблицы.Картинка = Картинка; СтрокаТаблицы.ОстаткиИОбороты = Истина; СтрокаТаблицы.Наименование = Представление; - СтрокаТаблицы.РазрешитьРазделениеИтогов = Регистр.РазрешитьРазделениеИтогов ; + СтрокаТаблицы.РазрешитьРазделениеИтогов = Регистр.РазрешитьРазделениеИтогов; КонецЦикла; @@ -1419,10 +1373,10 @@ Постфикс = ""; Если Регистр.ВидРегистра = Метаданные.СвойстваОбъектов.ВидРегистраНакопления.Обороты Тогда ОстаткиИОбороты = Ложь; - Постфикс = НСтр("ru = 'оборотный регистр накопления'"); + Постфикс = НСтр("ru = 'регистр накопления, только обороты'"); Иначе ОстаткиИОбороты = Истина; - Постфикс = НСтр("ru = 'регистр накопления'"); + Постфикс = НСтр("ru = 'регистр накопления, остатки и обороты'"); КонецЕсли; Если Не ПравоДоступа("УправлениеИтогами", Регистр) Тогда diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРезервнойКопии/Form.form b/SSL/src/DataProcessors/УстановкаОбновлений/Forms/НастройкаРезервнойКопии/Form.form similarity index 97% rename from SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРезервнойКопии/Form.form rename to SSL/src/DataProcessors/УстановкаОбновлений/Forms/НастройкаРезервнойКопии/Form.form index 76c10bc66..661bf4e00 100644 --- a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРезервнойКопии/Form.form +++ b/SSL/src/DataProcessors/УстановкаОбновлений/Forms/НастройкаРезервнойКопии/Form.form @@ -115,7 +115,6 @@ StartChoice ПолеКаталогРезервнойКопииНачалоВыбора - true true true true @@ -194,7 +193,6 @@ true Label - true true false @@ -313,7 +311,6 @@ true Label - true true false @@ -321,7 +318,6 @@ Left - Center true @@ -381,16 +377,13 @@ true Label - true true - true false Style.ПоясняющийТекст Left - Center true @@ -427,7 +420,6 @@ ru Страницы надписи ручного отката - true СтраницыНадписиРучногоОткатаExtendedTooltip 51 @@ -448,7 +440,6 @@ true - true ВертикальнаяГруппа1ExtendedTooltip 49 @@ -528,7 +519,6 @@ true Label - true true false @@ -716,7 +706,7 @@ Объект 1 - DataProcessorObject.ПоискИУстановкаОбновлений + DataProcessorObject.УстановкаОбновлений true diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРезервнойКопии/Help/ru.html b/SSL/src/DataProcessors/УстановкаОбновлений/Forms/НастройкаРезервнойКопии/Help/ru.html similarity index 93% rename from SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРезервнойКопии/Help/ru.html rename to SSL/src/DataProcessors/УстановкаОбновлений/Forms/НастройкаРезервнойКопии/Help/ru.html index 1471576d6..8f4ba989c 100644 --- a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРезервнойКопии/Help/ru.html +++ b/SSL/src/DataProcessors/УстановкаОбновлений/Forms/НастройкаРезервнойКопии/Help/ru.html @@ -1,7 +1,7 @@

          Предназначена для настройки резервного копирования информационной базы при обновлении программы.

          Перед началом обновления программы рекомендуется создавать резервную копию информационной базы. Резервная копия используется для автоматического восстановления информационной базы в случае нештатной ситуации.

          -

          Открывается по ссылке Создавать временную резервную копию ИБ и выполнять откат при нештатной ситуации из окна Поиск и установка обновлений. 

          +

          Открывается по ссылке Создавать временную резервную копию ИБ и выполнять откат при нештатной ситуации из окна Поиск и установка обновлений. 

          Для создания резервной копии выберите параметры:

          • Не создавать резервную копию;
          • Создать временную резервную копию. В этом случае можно включить флажок Восстанавливать информационную базу, для того чтобы можно было осуществить откат при возникновении нештатной ситуации в процессе обновления программы; diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРезервнойКопии/Module.bsl b/SSL/src/DataProcessors/УстановкаОбновлений/Forms/НастройкаРезервнойКопии/Module.bsl similarity index 96% rename from SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРезервнойКопии/Module.bsl rename to SSL/src/DataProcessors/УстановкаОбновлений/Forms/НастройкаРезервнойКопии/Module.bsl index 420633c7b..64df47e4a 100644 --- a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Forms/НастройкаРезервнойКопии/Module.bsl +++ b/SSL/src/DataProcessors/УстановкаОбновлений/Forms/НастройкаРезервнойКопии/Module.bsl @@ -50,19 +50,19 @@ Процедура КомандаОК(Команда) Отказ = Ложь; Если Объект.СоздаватьРезервнуюКопию = 2 Тогда - Файл = Новый Файл(Объект.ИмяКаталогаРезервнойКопииИБ); - Отказ = НЕ Файл.Существует() ИЛИ НЕ Файл.ЭтоКаталог(); + Файл = Новый Файл(Объект.ИмяКаталогаРезервнойКопииИБ); + Отказ = Не Файл.Существует() Или Не Файл.ЭтоКаталог(); Если Отказ Тогда ПоказатьПредупреждение(, НСтр("ru = 'Укажите существующий каталог для сохранения резервной копии ИБ.'")); ТекущийЭлемент = Элементы.ПолеКаталогРезервнойКопии; - КонецЕсли; + КонецЕсли; КонецЕсли; Если Не Отказ Тогда РезультатВыбора = Новый Структура; РезультатВыбора.Вставить("СоздаватьРезервнуюКопию", Объект.СоздаватьРезервнуюКопию); РезультатВыбора.Вставить("ИмяКаталогаРезервнойКопииИБ", Объект.ИмяКаталогаРезервнойКопииИБ); РезультатВыбора.Вставить("ВосстанавливатьИнформационнуюБазу", Объект.ВосстанавливатьИнформационнуюБазу); - ОповеститьОВыборе(РезультатВыбора); + Закрыть(РезультатВыбора); КонецЕсли; КонецПроцедуры diff --git a/SSL/src/DataProcessors/УстановкаОбновлений/Forms/Форма/Form.form b/SSL/src/DataProcessors/УстановкаОбновлений/Forms/Форма/Form.form new file mode 100644 index 000000000..30f78cf9e --- /dev/null +++ b/SSL/src/DataProcessors/УстановкаОбновлений/Forms/Форма/Form.form @@ -0,0 +1,3300 @@ + + + + СтраницыПомощника + 1 + + ФайлОбновления + 283 + + ГруппаФайлОбновления + 1026 + + ПереключательНуженФайлОбновления + 286 + true + true + + true + + + НуженФайлОбновления + + None + + OnChange + ПереключательНуженФайлОбновленияПриИзменении + + + ПереключательНуженФайлОбновленияExtendedTooltip + 747 + Label + true + true + + Left + + + + ПереключательНуженФайлОбновленияКонтекстноеМеню + 287 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + &Файл обновления не требуется, так как он уже загружен в основную конфигурацию + + + 0 + + + + + ru + У&кажите файл обновления: + + + 1 + + + Vertical + + + + Отступ + 393 + + ПолеФайлОбновления + 296 + true + true + + true + + + Объект.ИмяФайлаОбновления + + None + + ПолеФайлОбновленияExtendedTooltip + 749 + Label + true + true + + Left + + + + ПолеФайлОбновленияКонтекстноеМеню + 297 + true + + InputField + Enter + true + Left + true + + + StartChoice + ПолеФайлОбновленияНачалоВыбора + + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Отступ</value> + + + ОтступExtendedTooltip + 748 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + Auto + Auto + + + + ПанельОбновлениеИзОсновнойКонфигурации + 288 + + Картинка5 + 289 + true + true + + true + + + Картинка5ExtendedTooltip + 751 + Label + true + true + + Left + + + + Картинка5КонтекстноеМеню + 290 + true + + true + true + false + + + CommonPicture.Информация32 + + + + + СтраницыНадписиИзмененнойКонфигурации + 477 + + ЕстьИзменения + 478 + + НадписьКонфигурацияИзменена + 291 + + <key>ru</key> + <value>Основная конфигурация отличается от конфигурации информационной базы данных. +Рекомендуется провести обновление из основной конфигурации.</value> + + true + true + + true + + + НадписьКонфигурацияИзмененаExtendedTooltip + 754 + Label + true + true + + Left + + + + НадписьКонфигурацияИзмененаКонтекстноеМеню + 292 + true + + Label + true + false + + Left + + + true + true + + true + + + <key>ru</key> + <value>Есть изменения</value> + + + ЕстьИзмененияExtendedTooltip + 753 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + НетИзменений + 479 + + НадписьНетИзменений + 480 + + <key>ru</key> + <value>Обновление не требуется, т.к. конфигурация базы данных не отличается от основной конфигурации</value> + + true + true + + true + + + НадписьНетИзмененийExtendedTooltip + 756 + Label + true + true + + Left + + + + НадписьНетИзмененийКонтекстноеМеню + 481 + true + + Label + 2 + true + false + + Left + Center + + + true + true + + true + + + <key>ru</key> + <value>Нет изменений</value> + + + НетИзмененийExtendedTooltip + 755 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Страницы надписи измененной конфигурации</value> + + + СтраницыНадписиИзмененнойКонфигурацииExtendedTooltip + 752 + Label + true + true + + Left + + + Pages + + Auto + + + true + true + + true + + + <key>ru</key> + <value>Панель обновление из основной конфигурации</value> + + + ПанельОбновлениеИзОсновнойКонфигурацииExtendedTooltip + 750 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Выбор файла поставки обновления</value> + + + ГруппаФайлОбновленияРасширеннаяПодсказка + 1027 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + auto + Auto + Auto + + + + ГруппаПоискИУстановкаОбновлений + 1154 + + ПоискИУстановкаОбновлений + 1152 + true + true + + true + + + ПоискИУстановкаОбновленийРасширеннаяПодсказка + 1153 + Label + true + true + + Left + + + Hyperlink + Form.Command.ПоискИУстановкаОбновлений + Normal + Auto + true + true + Bottom + UserCmds + Auto + + true + true + + true + + true + + ГруппаПоискИУстановкаОбновленийРасширеннаяПодсказка + 1155 + Label + true + true + + Left + + + UsualGroup + + Bottom + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Файл обновления</value> + + + ФайлОбновленияExtendedTooltip + 745 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + ВыборРежимаОбновленияФайл + 160 + + ГруппаВыборРежимаОбновленияФайл + 1034 + + СтраницыСпособОбновленияФайл + 1042 + + СтраницаПереключательОбновленияФайл + 1044 + + ПереключательОбновленияФайл + 612 + + <key>ru</key> + <value>Выберите способ установки обновления программы</value> + + true + true + + true + + + Объект.РежимОбновления + + + OnChange + ПереключательОбновленияПриИзменении + + + ПереключательОбновленияФайлExtendedTooltip + 853 + Label + true + true + + Left + + + + ПереключательОбновленияФайлКонтекстноеМеню + 613 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Установить обновление прямо сейчас (потребуется перезапуск) + + + 0 + + + + + ru + Напомнить при завершении работы + + + 1 + + + Vertical + + + + НадписьНажмитеДалее + 1095 + + <key>ru</key> + <value>Нажмите "Далее" для установки обновления.</value> + + true + + true + + + НадписьНажмитеДалееРасширеннаяПодсказка + 1097 + Label + true + true + + Left + + + + НадписьНажмитеДалееКонтекстноеМеню + 1096 + true + + Label + true + + Left + + + + НадписьПроцессОбновленияМожетЗанятьМногоВремени + 177 + + <key>ru</key> + <value>Процесс обновления может занять длительное время. Не выключайте питание компьютера до завершения процесса.</value> + + true + true + + true + + + НадписьПроцессОбновленияМожетЗанятьМногоВремениExtendedTooltip + 866 + Label + true + true + + Left + + + + НадписьПроцессОбновленияМожетЗанятьМногоВремениКонтекстноеМеню + 178 + true + + Label + true + true + false + + Left + + + true + true + + true + + + СтраницаПереключательОбновленияФайлРасширеннаяПодсказка + 1045 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СтраницаПолученоОбновлениеИзПриложенияФайл + 1046 + + НадписьПолученоОбновлениеИзПриложенияФайл + 652 + + <key>ru</key> + <value>Получено обновление из приложения в Интернете. Для установки потребуется +перезапуск программы. Процесс обновления может занять длительное время. +Не выключайте питание компьютера до завершения процесса установки.</value> + + true + true + + true + + + НадписьПолученоОбновлениеИзПриложенияФайлExtendedTooltip + 852 + Label + true + true + + Left + + + + НадписьПолученоОбновлениеИзПриложенияФайлКонтекстноеМеню + 653 + true + + Label + true + + Left + + + true + true + + true + + + СтраницаПолученоОбновлениеИзПриложенияФайлРасширеннаяПодсказка + 1047 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + СтраницыСпособОбновленияФайлРасширеннаяПодсказка + 1043 + Label + true + true + + Left + + + Pages + + Auto + + + + ГруппаСоединений + 179 + + Картинка1 + 180 + true + true + + true + + + Картинка1ExtendedTooltip + 855 + Label + true + true + + Left + + + + Картинка1КонтекстноеМеню + 181 + true + + true + true + false + + + CommonPicture.Предупреждение32 + + + + + ПанельАктивныеПользователи + 187 + + АктивныеПользователи + 188 + + Надпись43 + 183 + + <key>ru</key> + <value>С программой сейчас работают другие пользователи. Для продолжения необходимо завершить их работу.</value> + + true + true + + true + + + Надпись43ExtendedTooltip + 858 + Label + true + true + + Left + + + + Надпись43КонтекстноеМеню + 184 + true + + Label + true + false + + Left + + + + НадписьСписокДействий + 185 + + <key>ru</key> + <value>Посмотреть список активных пользователей</value> + + true + true + + true + + + НадписьСписокДействийExtendedTooltip + 859 + Label + true + true + + Left + + + + НадписьСписокДействийКонтекстноеМеню + 186 + true + + Label + true + false + + + Click + НадписьСписокДействийНажатие + + true + Left + + + true + true + + true + + + <key>ru</key> + <value>Активные пользователи</value> + + + АктивныеПользователиExtendedTooltip + 857 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + АктивныеСоединения + 189 + + Надпись42 + 190 + + <key>ru</key> + <value>С программой сейчас работают внешние приложения. Для продолжения необходимо завершить их работу.</value> + + true + true + + true + + + Надпись42ExtendedTooltip + 861 + Label + true + true + + Left + + + + Надпись42КонтекстноеМеню + 191 + true + + Label + true + false + + Left + + + + НадписьСписокДействий1 + 192 + + <key>ru</key> + <value>Посмотреть список активных подключений</value> + + true + true + + true + + + НадписьСписокДействий1ExtendedTooltip + 862 + Label + true + true + + Left + + + + НадписьСписокДействий1КонтекстноеМеню + 193 + true + + Label + true + false + + + Click + НадписьСписокДействий1Нажатие + + true + Left + + + true + true + + true + + + <key>ru</key> + <value>Активные соединения</value> + + + АктивныеСоединенияExtendedTooltip + 860 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СоединениеКонфигуратора + 194 + + Надпись45 + 195 + + <key>ru</key> + <value>Открыт Конфигуратор. Для продолжения необходимо завершить работу Конфигуратора.</value> + + true + true + + true + + + Надпись45ExtendedTooltip + 864 + Label + true + true + + Left + + + + Надпись45КонтекстноеМеню + 196 + true + + Label + true + false + + Left + Top + + + + НадписьСписокДействий3 + 197 + + <key>ru</key> + <value>Посмотреть список активных пользователей</value> + + true + true + + true + + + НадписьСписокДействий3ExtendedTooltip + 865 + Label + true + true + + Left + + + + НадписьСписокДействий3КонтекстноеМеню + 198 + true + + Label + true + false + + + Click + НадписьСписокДействий3Нажатие + + true + Left + Top + + + true + true + + true + + + <key>ru</key> + <value>Соединение конфигуратора</value> + + + СоединениеКонфигуратораExtendedTooltip + 863 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Панель активные пользователи</value> + + + ПанельАктивныеПользователиExtendedTooltip + 856 + Label + true + true + + Left + + + Pages + + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа соединений</value> + + + ГруппаСоединенийExtendedTooltip + 854 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + + + ГруппаРезервнаяКопия + 204 + + Надпись46 + 202 + + <key>ru</key> + <value>Резервная копия:</value> + + true + true + + true + + + Надпись46ExtendedTooltip + 869 + Label + true + true + + Left + + + + Надпись46КонтекстноеМеню + 203 + true + + Label + true + false + + Left + + + + НадписьРезервнаяКопияФайл + 205 + + <key>ru</key> + <value>Создавать временную резервную копию ИБ и выполнять откат при нештатной ситуации</value> + + true + true + + true + + + НадписьРезервнаяКопияФайлExtendedTooltip + 870 + Label + true + true + + Left + + + + НадписьРезервнаяКопияФайлКонтекстноеМеню + 206 + true + + Label + true + false + + + Click + НадписьРезервнаяКопияНажатие + + true + Left + Bottom + + + true + true + + true + + true + + ГруппаРезервнаяКопияExtendedTooltip + 868 + Label + true + true + + Left + + + UsualGroup + + Bottom + Auto + NormalSeparation + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Все готово для установки обновления</value> + + + ГруппаВыборРежимаОбновленияФайлРасширеннаяПодсказка + 1035 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + auto + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Выбор режима обновления файл</value> + + + ВыборРежимаОбновленияФайлExtendedTooltip + 842 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + ВыборРежимаОбновленияСервер + 209 + + ГруппаВыборРежимаОбновленияСервер + 1036 + + ОтступЧетыре + 458 + + ПереключательОбновленияСервер + 214 + + <key>ru</key> + <value>Выберите способ установки обновления программы</value> + + true + true + + true + + + Объект.РежимОбновления + + + OnChange + ПереключательОбновленияПриИзменении + + + ПереключательОбновленияСерверExtendedTooltip + 891 + Label + true + true + + Left + + + + ПереключательОбновленияСерверКонтекстноеМеню + 215 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Установить обновление прямо сейчас (потребуется перезапуск) + + + 0 + + + + + ru + Напомнить при завершении работы + + + 1 + + + + + ru + Запланировать установку обновления на указанное время + + + 2 + + + Vertical + + + + ПолеДатаВремяОбновления + 242 + + <key>ru</key> + <value>Дата и время</value> + + true + true + + true + + + Объект.ДатаВремяОбновления + + None + + ПолеДатаВремяОбновленияExtendedTooltip + 894 + Label + true + true + + Left + + + + ПолеДатаВремяОбновленияКонтекстноеМеню + 243 + true + + InputField + Bottom + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + true + true + + true + + + ОтступЧетыреExtendedTooltip + 890 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + СтраницыИнформацииПерезагрузки + 216 + + СтраницаЗапланированнойПерезагрузки + 239 + + Надпись51 + 240 + + <key>ru</key> + <value>Установка обновления будет выполнена с этого компьютера в фоновом режиме. +Питание компьютера должно быть включено в указанные дату и время.</value> + + true + true + + true + + + Надпись51ExtendedTooltip + 895 + Label + true + true + + Left + + + + Надпись51КонтекстноеМеню + 241 + true + + Label + true + false + + Left + Top + + + + ПанельПочта + 248 + + ВыслатьОтчетНаПочту + 244 + + <key>ru</key> + <value>Выслать отчет на почту:</value> + + true + true + + true + + + Объект.ВыслатьОтчетНаПочту + + Right + + OnChange + ВыслатьОтчетНаПочтуПриИзменении + + + ВыслатьОтчетНаПочтуExtendedTooltip + 897 + Label + true + true + + Left + + + + ВыслатьОтчетНаПочтуКонтекстноеМеню + 245 + true + + CheckBoxField + Enter + true + Left + true + + + + АдресЭлектроннойПочты + 246 + true + true + + true + + + Объект.АдресЭлектроннойПочты + + None + + АдресЭлектроннойПочтыExtendedTooltip + 898 + Label + true + true + + Left + + + + АдресЭлектроннойПочтыКонтекстноеМеню + 247 + true + + InputField + Enter + true + Left + true + + true + true + false + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Панель почта</value> + + + ПанельПочтаExtendedTooltip + 896 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Страница запланированной перезагрузки</value> + + + СтраницаЗапланированнойПерезагрузкиExtendedTooltip + 893 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СтраницаПерезагрузкиСейчас + 217 + + НадписьБудетУстановленоОбновлениеСервер + 218 + + <key>ru</key> + <value>Процесс обновления может занять длительное время. Не выключайте питание компьютера до завершения процесса.</value> + + true + true + + true + + + НадписьБудетУстановленоОбновлениеСерверExtendedTooltip + 900 + Label + true + true + + Left + + + + НадписьБудетУстановленоОбновлениеСерверКонтекстноеМеню + 219 + true + + Label + true + true + false + + Left + Top + + + + ГруппаСоединений1 + 220 + + Картинка2 + 221 + true + true + + true + + + Картинка2ExtendedTooltip + 902 + Label + true + true + + Left + + + + Картинка2КонтекстноеМеню + 222 + true + + true + true + false + + + CommonPicture.Предупреждение32 + + + + + ПанельАктивныеПользователи1 + 223 + + АктивныеПользователи1 + 224 + + Надпись48 + 225 + + <key>ru</key> + <value>С программой сейчас работают другие пользователи. Их работа будет завершена автоматически.</value> + + true + true + + true + + + Надпись48ExtendedTooltip + 905 + Label + true + true + + Left + + + + Надпись48КонтекстноеМеню + 226 + true + + Label + true + false + + Left + Top + + + + НадписьСписокДействий2 + 227 + + <key>ru</key> + <value>Посмотреть список активных пользователей</value> + + true + true + + true + + + НадписьСписокДействий2ExtendedTooltip + 906 + Label + true + true + + Left + + + + НадписьСписокДействий2КонтекстноеМеню + 228 + true + + Label + true + false + + + Click + НадписьСписокДействийНажатие + + true + Left + + + true + true + + true + + + <key>ru</key> + <value>Активные пользователи</value> + + + АктивныеПользователи1ExtendedTooltip + 904 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + АктивныеСоединения1 + 229 + + Надпись49 + 230 + + <key>ru</key> + <value>С информационной базой сейчас работают другие пользователи, а также внешние приложения. +Их работа будет завершена автоматически.</value> + + true + true + + true + + + Надпись49ExtendedTooltip + 908 + Label + true + true + + Left + + + + Надпись49КонтекстноеМеню + 231 + true + + Label + true + false + + Left + + + + НадписьСписокДействий4 + 232 + + <key>ru</key> + <value>Посмотреть список активных подключений</value> + + true + true + + true + + + НадписьСписокДействий4ExtendedTooltip + 909 + Label + true + true + + Left + + + + НадписьСписокДействий4КонтекстноеМеню + 233 + true + + Label + true + false + + + Click + НадписьСписокДействий1Нажатие + + true + Left + + + true + true + + true + + + <key>ru</key> + <value>Активные соединения</value> + + + АктивныеСоединения1ExtendedTooltip + 907 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + ПанельАктивныеПользователи1ExtendedTooltip + 903 + Label + true + true + + Left + + + Pages + + Auto + + + true + true + + true + + + ГруппаСоединений1ExtendedTooltip + 901 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Страница перезагрузки сейчас</value> + + + ru + Страница перезагрузки сейчас + + + СтраницаПерезагрузкиСейчасРасширеннаяПодсказка + 899 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Страницы информации перезагрузки</value> + + + ru + Страницы информации перезагрузки + + + СтраницыИнформацииПерезагрузкиРасширеннаяПодсказка + 892 + Label + true + true + + Left + + + Pages + + Auto + + + + ГруппаРезервнаяКопияСервер + 539 + + Декорация13 + 540 + true + true + + true + + + Декорация13ExtendedTooltip + 912 + Label + true + true + + Left + + + + Декорация13КонтекстноеМеню + 541 + true + + true + true + false + + + CommonPicture.Информация + + + + + Группа12 + 1090 + + НадписьРезервнаяКопияСервер + 537 + + <key>ru</key> + <value>Перед установкой обновления рекомендуется выполнить резервное копирование информационной базы.</value> + + true + true + + true + + + НадписьРезервнаяКопияСерверExtendedTooltip + 913 + Label + true + true + + Left + + + + НадписьРезервнаяКопияСерверКонтекстноеМеню + 538 + true + + Label + true + false + + Left + Center + + + + НадписьОтложенныеОбработчики + 1092 + + <key>ru</key> + <value>В программе имеются <link ОтложенныеОбработчики>дополнительные процедуры обработки данных</>, которые не были завершены +при переходе с предыдущего релиза. Они будут автоматически выполнены в процессе обновления +на новую версию. Это может существенно увеличить время обновления.</value> + + true + true + + true + + + НадписьОтложенныеОбработчикиРасширеннаяПодсказка + 1094 + Label + true + true + + Left + + + + НадписьОтложенныеОбработчикиКонтекстноеМеню + 1093 + true + + true + Label + true + + + URLProcessing + НадписьОтложенныеОбработчикиОбработкаНавигационнойСсылки + + Left + + + true + true + + true + + + Группа12РасширеннаяПодсказка + 1091 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа резервная копия сервер</value> + + + ГруппаРезервнаяКопияСерверExtendedTooltip + 911 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Все готово для установки обновления</value> + + + ГруппаВыборРежимаОбновленияСерверРасширеннаяПодсказка + 1037 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + auto + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Выбор режима обновления сервер</value> + + + ВыборРежимаОбновленияСерверExtendedTooltip + 880 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + ОбновленияНеОбнаружено + 1098 + + ГруппаОбновленияНеОбнаружено + 1100 + + ГруппаРезультатПоискаОбновления + 1102 + + ОбновлениеПроизводитсяВГлавномУзле + 1130 + + Картинка27 + 1132 + true + true + + true + + + Картинка27ExtendedTooltip + 1134 + Label + true + true + + Left + + + + Картинка27КонтекстноеМеню + 1133 + true + + true + true + false + + + CommonPicture.Информация32 + + + + + НадписьОбновлениеКонфигурацииВыполняетсяПриОбменеДаннымиСГлавнымУзлом + 1135 + + <key>ru</key> + <value>Обновление программы выполняется при синхронизации данных с "%1".</value> + + true + true + + true + + + НадписьОбновлениеКонфигурацииВыполняетсяПриОбменеДаннымиСГлавнымУзломExtendedTooltip + 1137 + Label + true + true + + Left + + + + НадписьОбновлениеКонфигурацииВыполняетсяПриОбменеДаннымиСГлавнымУзломКонтекстноеМеню + 1136 + true + + Label + 2 + true + false + + Left + Center + + + true + true + + true + + + ОбновлениеПроизводитсяВГлавномУзлеExtendedTooltip + 1131 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + ГруппаТекущаяВерсия + 1138 + + Декорация30 + 1140 + + <key>ru</key> + <value>Текущая версия программы:</value> + + true + true + + true + + + Декорация30ExtendedTooltip + 1142 + Label + true + true + + Left + + + + Декорация30КонтекстноеМеню + 1141 + true + + Label + true + false + + Left + + + + НадписьВерсияТекущейКонфигурации + 1143 + + <key>ru</key> + <value><Версия текущей конфигурации></value> + + true + true + + true + + + НадписьВерсияТекущейКонфигурацииExtendedTooltip + 1145 + Label + true + true + + Left + + + + НадписьВерсияТекущейКонфигурацииКонтекстноеМеню + 1144 + true + + Label + true + false + + Left + + + true + true + + true + + + <key>ru</key> + <value>Группа текущая версия</value> + + + ГруппаТекущаяВерсияExtendedTooltip + 1139 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + НадписьОписаниеТекущейКонфигурации + 1149 + + <key>ru</key> + <value><Описание текущей конфигурации></value> + + true + true + + true + + + НадписьОписаниеТекущейКонфигурацииExtendedTooltip + 1151 + Label + true + true + + Left + + + + НадписьОписаниеТекущейКонфигурацииКонтекстноеМеню + 1150 + true + + Label + true + false + + Left + + + true + true + + true + + + <key>ru</key> + <value>Результат поиска обновления</value> + + + ГруппаРезультатПоискаОбновленияExtendedTooltip + 1103 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Обновление не требуется</value> + + + ГруппаОбновленияНеОбнаруженоРасширеннаяПодсказка + 1101 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + auto + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Обновления не обнаружено</value> + + + ОбновленияНеОбнаруженоExtendedTooltip + 1099 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + УспешноеОбновление + 256 + + ГруппаУспешноеОбновление + 1038 + + Декорация46 + 259 + + <key>ru</key> + <value>Установка новой версии программы успешно завершена. +Нажмите кнопку "Готово" для завершения обновления.</value> + + true + true + + true + + + Декорация46ExtendedTooltip + 923 + Label + true + true + + Left + + + + Декорация46КонтекстноеМеню + 260 + true + + Label + true + false + + Left + + + true + true + + true + + + <key>ru</key> + <value>Обновление успешно завершено</value> + + + ГруппаУспешноеОбновлениеРасширеннаяПодсказка + 1039 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + auto + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Успешное обновление</value> + + + УспешноеОбновлениеExtendedTooltip + 921 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + НеуспешноеОбновление + 271 + + ГруппаНеуспешноеОбновление + 1040 + + Надпись54 + 274 + + <key>ru</key> + <value>Во время обновления программы произошли ошибки. Информация об ошибках сохранена в журнал регистрации.</value> + + true + true + + true + + + Надпись54ExtendedTooltip + 934 + Label + true + true + + Left + + + + Надпись54КонтекстноеМеню + 275 + true + + Label + true + false + + Left + Top + 2 + + + + НадписьОткрытьЖурналРегистрации + 279 + + <key>ru</key> + <value>Журнал регистрации</value> + + true + true + + true + + + НадписьОткрытьЖурналРегистрацииExtendedTooltip + 935 + Label + true + true + + Left + + + + НадписьОткрытьЖурналРегистрацииКонтекстноеМеню + 280 + true + + Label + true + false + + + Click + НадписьОткрытьЖурналРегистрацииНажатие + + true + Left + Top + + + true + true + + true + + + <key>ru</key> + <value>Не удалось установить обновление</value> + + + ГруппаНеуспешноеОбновлениеРасширеннаяПодсказка + 1041 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + WeakSeparation + true + true + auto + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Неуспешное обновление</value> + + + НеуспешноеОбновлениеExtendedTooltip + 932 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Страницы помощника</value> + + + СтраницыПомощникаExtendedTooltip + 657 + Label + true + true + + Left + + + Pages + + Auto + + + + КоманднаяПанель + 1003 + + КоманднаяПанельСлева + 1005 + + КнопкаНазад + 19 + true + true + + true + + false + + КнопкаНазадExtendedTooltip + 654 + Label + true + true + + Left + + + Form.Command.Назад + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Командная панель слева</value> + + + ru + Командная панель слева + + + КоманднаяПанельСлеваРасширеннаяПодсказка + 1006 + Label + true + true + + Left + + + CommandBar + + Left + + + + КоманднаяПанельСправа + 1010 + + КнопкаДалее + 20 + + <key>ru</key> + <value>Далее ></value> + + true + true + + true + + false + + КнопкаДалееExtendedTooltip + 655 + Label + true + true + + Left + + + Form.Command.Далее + Auto + true + true + true + UserCmds + Auto + + + КнопкаЗакрыть + 364 + + <key>ru</key> + <value>Отмена</value> + + true + true + + true + + false + + КнопкаЗакрытьРасширеннаяПодсказка + 656 + Label + true + true + + Left + + + Form.StandardCommand.Close + Normal + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Командная панель справа</value> + + + ru + Командная панель справа + + + КоманднаяПанельСправаРасширеннаяПодсказка + 1011 + Label + true + true + + Left + + + CommandBar + + Right + Form + + + true + true + + true + + + <key>ru</key> + <value>Командная панель</value> + + true + + КоманднаяПанельРасширеннаяПодсказка + 1004 + Label + true + true + + Left + + + UsualGroup + + Bottom + Auto + true + true + Auto + Auto + + + None + false + + ФормаКоманднаяПанель + -1 + Right + + + ChoiceProcessing + ОбработкаВыбора + + + NotificationProcessing + ОбработкаОповещения + + + OnOpen + ПриОткрытии + + + OnCreateAtServer + ПриСозданииНаСервере + + + OnClose + ПриЗакрытии + + Abort + Cancel + CustomizeForm + Ignore + No + OK + RestoreValues + Retry + SaveValues + Yes + LockOwner + true + true + true + Vertical + true + true + true + auto + true + + Объект + 1 + + DataProcessorObject.УстановкаОбновлений + + + true + + + true + + + Объект.АдресЭлектроннойПочты + + + Объект.ВыслатьОтчетНаПочту + + + Объект.ДатаВремяОбновления + + + Объект.ИмяКаталогаРезервнойКопииИБ + + + Объект.ИмяФайлаОбновления + + + Объект.КодЗадачиПланировщика + + + Объект.РежимОбновления + + + Объект.СоздаватьРезервнуюКопию + +
            true
            +
            + + ДатаВремяОбновленияУстановлена + + <key>ru</key> + <value>Дата время обновления установлена</value> + + 3 + + Boolean + + + true + + + true + + + + КонфигурацияИзменена + + <key>ru</key> + <value>Конфигурация изменена</value> + + 5 + + Boolean + + + true + + + true + + + + КаталогСкрипта + + <key>ru</key> + <value>Каталог скрипта</value> + + 15 + + String + + + + true + + + true + + + + УстановленыРасширения + + <key>ru</key> + <value>Установлены расширения</value> + + 26 + + Boolean + + + true + + + true + + + + ЭтоФайловаяБаза + + <key>ru</key> + <value>Это файловая база</value> + + 28 + + Boolean + + + true + + + true + + + + НуженФайлОбновления + + <key>ru</key> + <value>Нужен файл обновления</value> + + 29 + + Number + + 1 + true + + + + true + + + true + + + + ВыполнитьОтложенныеОбработчики + + <key>ru</key> + <value>Выполнить отложенные обработчики</value> + + 30 + + Boolean + + + true + + + true + + + + Назад + + <key>ru</key> + <value>< Назад</value> + + 1 + + ru + Назад + + + true + + + + КнопкаНазадНажатие + + + DontUse + Auto + + + Далее + + <key>ru</key> + <value>Далее ></value> + + 2 + + ru + Далее + + + true + + + + КнопкаДалееНажатие + + + DontUse + Auto + + + ПоискИУстановкаОбновлений + + <key>ru</key> + <value>Поиск и установка обновлений</value> + + 3 + + ru + Поиск и установка обновлений + + + true + + + + ПоискИУстановкаОбновлений + + + DontUse + Auto + + + ЗавершениеРаботыСистемы + + Boolean + + true + + + ВыполнитьОбновление + + Boolean + + true + + + ПолученоОбновлениеКонфигурации + + Boolean + + true + + + + + + +
            diff --git a/SSL/src/DataProcessors/УстановкаОбновлений/Forms/Форма/Module.bsl b/SSL/src/DataProcessors/УстановкаОбновлений/Forms/Форма/Module.bsl new file mode 100644 index 000000000..bdab2cac3 --- /dev/null +++ b/SSL/src/DataProcessors/УстановкаОбновлений/Forms/Форма/Module.bsl @@ -0,0 +1,806 @@ +#Область ОписаниеПеременных + +&НаКлиенте +Перем ПараметрыАдминистрирования, ИмяСобытияЖурнала; + +#КонецОбласти + +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + Если Параметры.Свойство("АвтоТест") Тогда + Возврат; + КонецЕсли; + + Если Не ОбновлениеКонфигурации.ЕстьПраваНаУстановкуОбновления() Тогда + ВызватьИсключение НСтр("ru = 'Недостаточно прав для обновления конфигурации. Обратитесь к администратору.'"); + ИначеЕсли ПользователиКлиентСервер.ЭтоСеансВнешнегоПользователя() Тогда + ВызватьИсключение НСтр("ru = 'Данная операция не доступна внешнему пользователю системы.'"); + КонецЕсли; + + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда + Возврат; // Отказ устанавливается в ПриОткрытии(). + КонецЕсли; + + СтандартныеПодсистемыСервер.УстановитьОтображениеЗаголовковГрупп(ЭтотОбъект); + + ЭтоФайловаяБаза = ОбщегоНазначения.ИнформационнаяБазаФайловая(); + + // Если это первый запуск после обновления конфигурации, то запоминаем и сбрасываем статус. + Объект.РезультатОбновления = ОбновлениеКонфигурации.ОбновлениеКонфигурацииУспешно(КаталогСкрипта); + Если Объект.РезультатОбновления <> Неопределено Тогда + ОбновлениеКонфигурации.СброситьСтатусОбновленияКонфигурации(); + КонецЕсли; + + Если Не ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаСПочтовымиСообщениями") Тогда + Элементы.ПанельПочта.Видимость = Ложь; + КонецЕсли; + + // Проверяем каждый раз при открытии помощника. + КонфигурацияИзменена = КонфигурацияИзменена(); + НуженФайлОбновления = Не КонфигурацияИзменена; + + Если Параметры.ЗавершениеРаботыСистемы Тогда + Элементы.ПереключательОбновленияФайл.Видимость = Ложь; + Элементы.ПереключательОбновленияСервер.Видимость = Ложь; + Элементы.ПолеДатаВремяОбновления.Видимость = Ложь; + Элементы.НадписьНажмитеДалее.Видимость = Истина; + КонецЕсли; + + Если Параметры.ПолученоОбновлениеКонфигурации Тогда + Элементы.СтраницыСпособОбновленияФайл.ТекущаяСтраница = Элементы.СтраницаПолученоОбновлениеИзПриложенияФайл; + КонецЕсли; + + Элементы.НадписьОбновлениеКонфигурацииВыполняетсяПриОбменеДаннымиСГлавнымУзлом.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + Элементы.НадписьОбновлениеКонфигурацииВыполняетсяПриОбменеДаннымиСГлавнымУзлом.Заголовок, ПланыОбмена.ГлавныйУзел()); + + УстановитьПривилегированныйРежим(Истина); + + ВосстановитьНастройкиОбновленияКонфигурации(); + + Если ЭтоФайловаяБаза И Объект.РежимОбновления > 1 Или Параметры.ЗавершениеРаботыСистемы Тогда + Объект.РежимОбновления = 0; + КонецЕсли; + + Элементы.ПоискИУстановкаОбновлений.Видимость = ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ПолучениеОбновленийПрограммы"); + +КонецПроцедуры + +&НаКлиенте +Процедура ПриОткрытии(Отказ) + + ИмяСобытияЖурнала = ОбновлениеКонфигурацииКлиент.СобытиеЖурналаРегистрации(); + + Если Не ВозможенЗапускОбновления() Тогда + Отказ = Истина; + Возврат; + КонецЕсли; + + Если Параметры.ВыполнитьОбновление Тогда + ПерейтиКВыборуРежимаОбновления(); + Возврат; + КонецЕсли; + + Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; + ИмяСтраницы = Страницы.ФайлОбновления.Имя; + + Если Объект.КодЗадачиПланировщика <> 0 И Не ОбновлениеКонфигурацииКлиент.СуществуетЗадачаПланировщика(Объект.КодЗадачиПланировщика) Тогда + Объект.КодЗадачиПланировщика = 0; + КонецЕсли; + + // Если форма открывается при запуске программы после обновления. + Если Объект.РезультатОбновления <> Неопределено Тогда + + Если СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЭтоБазоваяВерсияКонфигурации Тогда + + Если ПустаяСтрока(КаталогСкрипта) Тогда + Отказ = Истина; + Возврат; + Иначе + ПрочитатьДанныеВЖурналРегистрации(); + КонецЕсли; + + КонецЕсли; + + ИмяСтраницы = ? (Объект.РезультатОбновления, Страницы.УспешноеОбновление.Имя, Страницы.НеуспешноеОбновление.Имя); + Объект.РезультатОбновления = Неопределено; + + Иначе + + Если Не СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЭтоГлавныйУзел Тогда + Если КонфигурацияИзменена Тогда + ПерейтиКВыборуРежимаОбновления(); + Возврат; + Иначе + ИмяСтраницы = Страницы.ОбновленияНеОбнаружено.Имя; + КонецЕсли; + КонецЕсли + КонецЕсли; + + ПередОткрытиемСтраницы(Страницы[ИмяСтраницы]); + Элементы.СтраницыПомощника.ТекущаяСтраница = Страницы[ИмяСтраницы]; + +КонецПроцедуры + +&НаКлиенте +Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора) + + Если ВРег(ИсточникВыбора.ИмяФормы) = ВРег("Обработка.АктивныеПользователи.Форма.АктивныеПользователи") Тогда + ОбновитьИнформациюОНаличииСоединений(); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) + + Если ИмяСобытия = "ЛегальностьПолученияОбновлений" И Не Параметр Тогда + + ОтработатьНажатиеКнопкиНазад(); + + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + + ЗаписатьСобытияВЖурналРегистрации(); + +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы + +//////////////////////////////////////////////////////////////////////////////// +// Страница ФайлОбновления + +&НаКлиенте +Процедура ПереключательНуженФайлОбновленияПриИзменении(Элемент) + ПередОткрытиемСтраницы(); +КонецПроцедуры + +&НаКлиенте +Процедура ПолеФайлОбновленияНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + + СтандартнаяОбработка = Ложь; + + Обработчик = Новый ОписаниеОповещения("ПослеПодтвержденияБезопасности", ЭтотОбъект); + ПараметрыФормы = Новый Структура("Ключ", "ПередВыборомФайлаОбновления"); + ОткрытьФорму("ОбщаяФорма.ПредупреждениеБезопасности", ПараметрыФормы, , , , , Обработчик); + +КонецПроцедуры + +&НаКлиенте +Процедура ПослеПодтвержденияБезопасности(Результат, ДополнительныеПараметры) Экспорт + + Если Результат = "Продолжить" Тогда + + Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие); + Диалог.Каталог = ПолучитьКаталогФайла(Элементы.ПолеФайлОбновления.ТекстРедактирования); + Диалог.ПроверятьСуществованиеФайла = Истина; + Диалог.Фильтр = НСтр("ru = 'Все файлы поставки (*.cf*;*.cfu)|*.cf*;*.cfu|Файлы поставки конфигурации (*.cf)|*.cf|Файлы поставки обновления конфигурации(*.cfu)|*.cfu'"); + Диалог.Заголовок = НСтр("ru = 'Выбор поставки обновления конфигурации'"); + + Если Диалог.Выбрать() Тогда + Объект.ИмяФайлаОбновления = Диалог.ПолноеИмяФайла; + КонецЕсли; + + КонецЕсли; + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Страница ВыборРежимаОбновленияФайл + +&НаКлиенте +Процедура НадписьСписокДействийНажатие(Элемент) + ПоказатьАктивныхПользователей(); +КонецПроцедуры + +&НаКлиенте +Процедура НадписьСписокДействий1Нажатие(Элемент) + ПоказатьАктивныхПользователей(); +КонецПроцедуры + +&НаКлиенте +Процедура НадписьСписокДействий3Нажатие(Элемент) + ПоказатьАктивныхПользователей(); +КонецПроцедуры + +&НаКлиенте +Процедура НадписьРезервнаяКопияНажатие(Элемент) + + ПараметрыРезервногоКопирования = Новый Структура; + ПараметрыРезервногоКопирования.Вставить("СоздаватьРезервнуюКопию", Объект.СоздаватьРезервнуюКопию); + ПараметрыРезервногоКопирования.Вставить("ИмяКаталогаРезервнойКопииИБ", Объект.ИмяКаталогаРезервнойКопииИБ); + ПараметрыРезервногоКопирования.Вставить("ВосстанавливатьИнформационнуюБазу", Объект.ВосстанавливатьИнформационнуюБазу); + + ОписаниеОповещения = Новый ОписаниеОповещения("ПослеЗакрытияФормыРезервногоКопирования", ЭтотОбъект); + ОбновлениеКонфигурацииКлиент.ПоказатьРезервноеКопирование(ПараметрыРезервногоКопирования, ОписаниеОповещения); + +КонецПроцедуры + +&НаКлиенте +Процедура ПослеЗакрытияФормыРезервногоКопирования(Результат, ДополнительныеПараметры) Экспорт + + Если Результат <> Неопределено Тогда + ЗаполнитьЗначенияСвойств(Объект, Результат); + Элементы.НадписьРезервнаяКопияФайл.Заголовок = ОбновлениеКонфигурацииКлиент.ЗаголовокСозданияРезервнойКопии(Результат); + КонецЕсли; + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Страница ВыборРежимаОбновленияСервер + +&НаКлиенте +Процедура ПереключательОбновленияПриИзменении(Элемент) + ПередОткрытиемСтраницы(); +КонецПроцедуры + +&НаКлиенте +Процедура ВыслатьОтчетНаПочтуПриИзменении(Элемент) + ПередОткрытиемСтраницы(); +КонецПроцедуры + +&НаКлиенте +Процедура НадписьОтложенныеОбработчикиОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка) + + СтандартнаяОбработка = Ложь; + ОбновлениеИнформационнойБазыКлиент.ПоказатьОтложенныеОбработчики(); + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Страница НеуспешноеОбновление + +&НаКлиенте +Процедура НадписьОткрытьЖурналРегистрацииНажатие(Элемент) + + СписокПриложений = Новый Массив; + СписокПриложений.Добавить("COMConnection"); + СписокПриложений.Добавить("Designer"); + СписокПриложений.Добавить("1CV8"); + СписокПриложений.Добавить("1CV8C"); + + ОтборЖурналаРегистрации = Новый Структура; + ОтборЖурналаРегистрации.Вставить("Пользователь", ИмяПользователя()); + ОтборЖурналаРегистрации.Вставить("ИмяПриложения", СписокПриложений); + + ОткрытьФорму("Обработка.ЖурналРегистрации.Форма", ОтборЖурналаРегистрации); + +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиКомандФормы + +&НаКлиенте +Процедура КнопкаНазадНажатие(Команда) + ОтработатьНажатиеКнопкиНазад(); +КонецПроцедуры + +&НаКлиенте +Процедура КнопкаДалееНажатие(Команда) + ОбработатьНажатиеКнопкиДалее(); +КонецПроцедуры + +&НаКлиенте +Процедура ПоискИУстановкаОбновлений(Команда) + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей.ПолучениеОбновленийПрограммы") Тогда + Закрыть(); + МодульПолучениеОбновленийПрограммыКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ПолучениеОбновленийПрограммыКлиент"); + МодульПолучениеОбновленийПрограммыКлиент.ОбновитьПрограмму(); + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаКлиенте +Процедура ПередОткрытиемСтраницы(НоваяТекущаяСтраница = Неопределено) + + ИмяПараметра = "СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"; + Если ПараметрыПриложения[ИмяПараметра] = Неопределено Тогда + ПараметрыПриложения.Вставить(ИмяПараметра, Новый СписокЗначений); + КонецЕсли; + + Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; + Если НоваяТекущаяСтраница = Неопределено Тогда + НоваяТекущаяСтраница = Элементы.СтраницыПомощника.ТекущаяСтраница; + КонецЕсли; + + ДоступностьКнопкиНазад = Истина; + ДоступностьКнопкиДалее = Истина; + ДоступностьКнопкиЗакрыть = Истина; + ФункцияКнопкиДалее = Истина; // Истина = "Далее", Ложь = "Готово" + ФункцияКнопкиЗакрыть = Истина; // Истина = "Отмена", Ложь = "Закрыть" + + Если НоваяТекущаяСтраница = Страницы.ОбновленияНеОбнаружено Тогда + + ФункцияКнопкиДалее = Ложь; + ФункцияКнопкиЗакрыть = Ложь; + ДоступностьКнопкиДалее = Ложь; + Элементы.НадписьОписаниеТекущейКонфигурации.Заголовок = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().СинонимКонфигурации; + Элементы.НадписьВерсияТекущейКонфигурации.Заголовок = СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ВерсияКонфигурации; + + Если Не СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЭтоГлавныйУзел Тогда + ДоступностьКнопкиНазад = Ложь; + КонецЕсли; + + ИначеЕсли НоваяТекущаяСтраница = Страницы.ВыборРежимаОбновленияФайл Тогда + + ФункцияКнопкиДалее = (Объект.РежимОбновления = 0);// Если Не обновляем сейчас, то "готово". + + ОбновитьИнформациюОНаличииСоединений(Страницы.ВыборРежимаОбновленияФайл); + + Если Объект.СоздаватьРезервнуюКопию = 2 Тогда + Объект.ВосстанавливатьИнформационнуюБазу = Истина; + ИначеЕсли Объект.СоздаватьРезервнуюКопию = 0 Тогда + Объект.ВосстанавливатьИнформационнуюБазу = Ложь; + КонецЕсли; + + Элементы.НадписьРезервнаяКопияФайл.Заголовок = ОбновлениеКонфигурацииКлиент.ЗаголовокСозданияРезервнойКопии(Объект); + + Если Не СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЭтоГлавныйУзел Тогда + ДоступностьКнопкиНазад = Ложь; + КонецЕсли; + ИначеЕсли НоваяТекущаяСтраница = Страницы.ВыборРежимаОбновленияСервер Тогда + + Если Объект.КодЗадачиПланировщика = 0 И Не ДатаВремяОбновленияУстановлена Тогда + Объект.ДатаВремяОбновления = ВернутьДату(НачалоДня(ОбщегоНазначенияКлиент.ДатаСеанса()) + 24*60*60, Объект.ДатаВремяОбновления); + ДатаВремяОбновленияУстановлена = Истина; + КонецЕсли; + + ФункцияКнопкиДалее = (Объект.РежимОбновления = 0);// Если не обновляем сейчас, то "готово". + Объект.ВосстанавливатьИнформационнуюБазу = Ложь; + + СтраницыПанелиИнформацииПерезагрузки = Элементы.СтраницыИнформацииПерезагрузки.ПодчиненныеЭлементы; + Элементы.СтраницыИнформацииПерезагрузки.ТекущаяСтраница = ?(Объект.РежимОбновления = 0, + СтраницыПанелиИнформацииПерезагрузки.СтраницаПерезагрузкиСейчас, + СтраницыПанелиИнформацииПерезагрузки.СтраницаЗапланированнойПерезагрузки); + + ОбновитьИнформациюОНаличииСоединений(Страницы.ВыборРежимаОбновленияСервер); + + Элементы.ПолеДатаВремяОбновления.Доступность = (Объект.РежимОбновления = 2); + Элементы.АдресЭлектроннойПочты.Доступность = Объект.ВыслатьОтчетНаПочту; + + Если Не СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиента().ЭтоГлавныйУзел Тогда + ДоступностьКнопкиНазад = Ложь; + КонецЕсли; + ИначеЕсли НоваяТекущаяСтраница = Страницы.УспешноеОбновление Тогда + + ФункцияКнопкиДалее = Ложь; + ДоступностьКнопкиНазад = Ложь; + ДоступностьКнопкиЗакрыть = Ложь; + + ИначеЕсли НоваяТекущаяСтраница = Страницы.НеуспешноеОбновление Тогда + + ФункцияКнопкиДалее = Ложь; + ДоступностьКнопкиЗакрыть = Ложь; + + ИначеЕсли НоваяТекущаяСтраница = Страницы.ФайлОбновления Тогда + + ДоступностьКнопкиНазад = Ложь; + + Если НуженФайлОбновления = 0 Тогда + Если КонфигурацияИзменена Тогда + Элементы.СтраницыНадписиИзмененнойКонфигурации.ТекущаяСтраница = Элементы.СтраницыНадписиИзмененнойКонфигурации.ПодчиненныеЭлементы.ЕстьИзменения; + Иначе + Элементы.СтраницыНадписиИзмененнойКонфигурации.ТекущаяСтраница = Элементы.СтраницыНадписиИзмененнойКонфигурации.ПодчиненныеЭлементы.НетИзменений; + ДоступностьКнопкиДалее = Ложь; + КонецЕсли; + КонецЕсли; + Элементы.ПанельОбновлениеИзОсновнойКонфигурации.Видимость = НуженФайлОбновления = 0; + Элементы.ПолеФайлОбновления.Доступность = НуженФайлОбновления = 1; + Элементы.ПолеФайлОбновления.АвтоОтметкаНезаполненного = НуженФайлОбновления = 1; + + КонецЕсли; + + ЗаписатьСобытияВЖурналРегистрации(); + + КнопкаДалее = Элементы.КнопкаДалее; + КнопкаЗакрыть = Элементы.КнопкаЗакрыть; + Элементы.КнопкаНазад.Доступность = ДоступностьКнопкиНазад; + КнопкаДалее.Доступность = ДоступностьКнопкиДалее; + КнопкаЗакрыть.Доступность = ДоступностьКнопкиЗакрыть; + Если ДоступностьКнопкиДалее Тогда + Если Не КнопкаДалее.КнопкаПоУмолчанию Тогда + КнопкаДалее.КнопкаПоУмолчанию = Истина; + КонецЕсли; + ИначеЕсли ДоступностьКнопкиЗакрыть Тогда + Если Не КнопкаЗакрыть.КнопкаПоУмолчанию Тогда + КнопкаЗакрыть.КнопкаПоУмолчанию = Истина; + КонецЕсли; + КонецЕсли; + + КнопкаДалее.Заголовок = ?(ФункцияКнопкиДалее, НСтр("ru = 'Далее >'"), НСтр("ru = 'Готово'")); + КнопкаЗакрыть.Заголовок = ?(ФункцияКнопкиЗакрыть, НСтр("ru = 'Отмена'"), НСтр("ru = 'Закрыть'")); + +КонецПроцедуры + +&НаКлиенте +Процедура ОбновитьИнформациюОНаличииСоединений(ТекущаяСтраница = Неопределено) + + Если ТекущаяСтраница = Неопределено Тогда + ТекущаяСтраница = Элементы.СтраницыПомощника.ТекущаяСтраница; + КонецЕсли; + + ИмяПараметра = "СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"; + Если ТекущаяСтраница = Элементы.ВыборРежимаОбновленияФайл Тогда + + СоединенияИнфо = СоединенияИБВызовСервера.ИнформацияОСоединениях(Ложь, ПараметрыПриложения[ИмяПараметра]); + Элементы.ГруппаСоединений.Видимость = ?(СоединенияИнфо.НаличиеАктивныхСоединений, Истина, Ложь); + + Если СоединенияИнфо.НаличиеАктивныхСоединений Тогда + ВсеСтраницы = Элементы.ПанельАктивныеПользователи.ПодчиненныеЭлементы; + ДоступностьКнопкиДалее = Истина; + Если СоединенияИнфо.НаличиеCOMСоединений Тогда + Элементы.ПанельАктивныеПользователи.ТекущаяСтраница = ВсеСтраницы.АктивныеСоединения; + ИначеЕсли СоединенияИнфо.НаличиеСоединенияКонфигуратором Тогда + Элементы.ПанельАктивныеПользователи.ТекущаяСтраница = ВсеСтраницы.СоединениеКонфигуратора; + Иначе + Элементы.ПанельАктивныеПользователи.ТекущаяСтраница = ВсеСтраницы.АктивныеПользователи; + КонецЕсли; + КонецЕсли; + + ИначеЕсли ТекущаяСтраница = Элементы.ВыборРежимаОбновленияСервер Тогда + + ПараметрыСтраницы = ПараметрыСтраницыВыборРежимаОбновленияСервер(ПараметрыПриложения[ИмяПараметра]); + Элементы.НадписьОтложенныеОбработчики.Видимость = ПараметрыСтраницы.ЕстьОтложенныеОбработчики; + + СоединенияИнфо = ПараметрыСтраницы.ИнформацияОСоединениях; + НаличиеСоединений = СоединенияИнфо.НаличиеАктивныхСоединений И Объект.РежимОбновления = 0; + Элементы.ГруппаСоединений1.Видимость = НаличиеСоединений; + Если НаличиеСоединений Тогда + ВсеСтраницы = Элементы.ПанельАктивныеПользователи1.ПодчиненныеЭлементы; + Элементы.ПанельАктивныеПользователи1.ТекущаяСтраница = ? (СоединенияИнфо.НаличиеCOMСоединений, + ВсеСтраницы.АктивныеСоединения1, ВсеСтраницы.АктивныеПользователи1); + КонецЕсли; + + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура УстановитьОбновление() + + ПараметрыОбновления = Новый Структура; + ПараметрыОбновления.Вставить("РежимОбновления"); + ПараметрыОбновления.Вставить("ДатаВремяОбновления"); + ПараметрыОбновления.Вставить("ВыслатьОтчетНаПочту"); + ПараметрыОбновления.Вставить("АдресЭлектроннойПочты"); + ПараметрыОбновления.Вставить("КодЗадачиПланировщика"); + ПараметрыОбновления.Вставить("ИмяФайлаОбновления"); + ПараметрыОбновления.Вставить("СоздаватьРезервнуюКопию"); + ПараметрыОбновления.Вставить("ИмяКаталогаРезервнойКопииИБ"); + ПараметрыОбновления.Вставить("ВосстанавливатьИнформационнуюБазу"); + + ЗаполнитьЗначенияСвойств(ПараметрыОбновления, Объект); + ПараметрыОбновления.Вставить("ЗавершениеРаботыСистемы", Параметры.ЗавершениеРаботыСистемы); + ПараметрыОбновления.Вставить("НуженФайлОбновления", Булево(НуженФайлОбновления)); + + ОбновлениеКонфигурацииКлиент.УстановитьОбновление(ЭтотОбъект, ПараметрыОбновления, ПараметрыАдминистрирования); + +КонецПроцедуры + +&НаКлиенте +Процедура ОбработатьНажатиеКнопкиДалее() + + ОчиститьСообщения(); + ТекущаяСтраница = Элементы.СтраницыПомощника.ТекущаяСтраница; + Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; + + Если ТекущаяСтраница = Страницы.ФайлОбновления Тогда + ПерейтиСоСтраницыФайлаОбновления(); + ИначеЕсли ТекущаяСтраница = Страницы.ВыборРежимаОбновленияФайл + Или ТекущаяСтраница = Страницы.ВыборРежимаОбновленияСервер Тогда + УстановитьОбновление(); + Иначе + Закрыть(); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ОтработатьНажатиеКнопкиНазад() + + Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; + ТекущаяСтраница = Элементы.СтраницыПомощника.ТекущаяСтраница; + НоваяТекущаяСтраница = ТекущаяСтраница; + + Если ТекущаяСтраница = Страницы.ВыборРежимаОбновленияФайл + Или ТекущаяСтраница = Страницы.ВыборРежимаОбновленияСервер + Или ТекущаяСтраница = Страницы.НеуспешноеОбновление Тогда + НоваяТекущаяСтраница = Страницы.ФайлОбновления; + КонецЕсли; + + ПередОткрытиемСтраницы(НоваяТекущаяСтраница); + Элементы.СтраницыПомощника.ТекущаяСтраница = НоваяТекущаяСтраница; + +КонецПроцедуры + +&НаКлиенте +Процедура ПерейтиСоСтраницыФайлаОбновления() + + Если НуженФайлОбновления = 1 Тогда + Если Не ЗначениеЗаполнено(Объект.ИмяФайлаОбновления) Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Укажите файл поставки обновления конфигурации.'"),,"Объект.ИмяФайлаОбновления"); + ТекущийЭлемент = Элементы.ПолеФайлОбновления; + Возврат; + КонецЕсли; + Файл = Новый Файл(Объект.ИмяФайлаОбновления); + Если Не Файл.Существует() Или Не Файл.ЭтоФайл() Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Файл поставки обновления конфигурации не найден.'"),,"Объект.ИмяФайлаОбновления"); + ТекущийЭлемент = Элементы.ПолеФайлОбновления; + Возврат; + КонецЕсли; + КонецЕсли; + + ПриПроверкеЛегальностиПолученияОбновления(); + +КонецПроцедуры + +&НаКлиенте +Процедура ПерейтиКВыборуРежимаОбновления(ЭтоПереходДалее = Ложь) + + Если ПараметрыАдминистрирования = Неопределено Тогда + + ОписаниеОповещения = Новый ОписаниеОповещения("ПослеПолученияПараметровАдминистрирования", ЭтотОбъект, ЭтоПереходДалее); + ЗаголовокФормы = НСтр("ru = 'Установка обновления'"); + Если ЭтоФайловаяБаза Тогда + ПоясняющаяНадпись = НСтр("ru = 'Для установки обновления необходимо ввести + |параметры администрирования информационной базы'"); + ЗапрашиватьПараметрыАдминистрированияКластера = Ложь; + Иначе + ПоясняющаяНадпись = НСтр("ru = 'Для установки обновления необходимо ввести параметры + |администрирования кластера серверов и информационной базы'"); + ЗапрашиватьПараметрыАдминистрированияКластера = Истина; + КонецЕсли; + + СоединенияИБКлиент.ПоказатьПараметрыАдминистрирования(ОписаниеОповещения, Истина, ЗапрашиватьПараметрыАдминистрированияКластера, + ПараметрыАдминистрирования, ЗаголовокФормы, ПоясняющаяНадпись); + + Иначе + + ПослеПолученияПараметровАдминистрирования(ПараметрыАдминистрирования, ЭтоПереходДалее); + + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ПриПроверкеЛегальностиПолученияОбновления() + + Оповещение = Новый ОписаниеОповещения("ПриПроверкеЛегальностиПолученияОбновленияЗавершение", ЭтотОбъект); + ОбновлениеКонфигурацииКлиент.ПроверитьЛегальностьПолученияОбновления(Оповещение); + +КонецПроцедуры + +&НаКлиенте +Процедура ПриПроверкеЛегальностиПолученияОбновленияЗавершение(ОбновлениеПолученоЛегально, ДополнительныеПараметры) Экспорт + + Если ОбновлениеПолученоЛегально = Истина Тогда + ПерейтиКВыборуРежимаОбновления(Истина); + Иначе + ОтработатьНажатиеКнопкиНазад(); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ПослеПолученияПараметровАдминистрирования(Результат, ЭтоПереходДалее) Экспорт + + Если ЭтоПереходДалее Тогда + Элементы.СтраницыПомощника.ТекущаяСтраница.Доступность = Истина; + КонецЕсли; + + Если Результат <> Неопределено Тогда + + ПараметрыАдминистрирования = Результат; + Страницы = Элементы.СтраницыПомощника.ПодчиненныеЭлементы; + НоваяТекущаяСтраница = ?(ЭтоФайловаяБаза, Страницы.ВыборРежимаОбновленияФайл, Страницы.ВыборРежимаОбновленияСервер); + УстановитьПарольАдминистратора(ПараметрыАдминистрирования); + + ПередОткрытиемСтраницы(НоваяТекущаяСтраница); + Элементы.СтраницыПомощника.ТекущаяСтраница = НоваяТекущаяСтраница; + + Иначе + + ТекстПредупреждения = НСтр("ru = 'Для установки обновления необходимо ввести параметры администрирования.'"); + ПоказатьПредупреждение(, ТекстПредупреждения); + + ТекстСообщения = НСтр("ru = 'Не удалось установить обновление программы, т.к. не были введены + |корректные параметры администрирования информационной базы.'"); + ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, "Ошибка", ТекстСообщения); + + НоваяТекущаяСтраница = Элементы.НеуспешноеОбновление; + ПередОткрытиемСтраницы(НоваяТекущаяСтраница); + Элементы.СтраницыПомощника.ТекущаяСтраница = НоваяТекущаяСтраница; + + КонецЕсли; + + ЗаписатьСобытияВЖурналРегистрации(); + +КонецПроцедуры + +&НаКлиенте +Процедура ПоказатьАктивныхПользователей() + + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("ОповещатьОЗакрытии", Истина); + СтандартныеПодсистемыКлиент.ОткрытьСписокАктивныхПользователей(ПараметрыФормы, ЭтотОбъект); + +КонецПроцедуры + +&НаКлиенте +Функция ВернутьДату(Дата, Время) + Возврат Дата(Год(Дата), Месяц(Дата), День(Дата), Час(Время), Минута(Время), Секунда(Время)); +КонецФункции + +&НаКлиенте +Функция ВозможенЗапускОбновления() + + ВозможенЗапускОбновления = Истина; + + #Если ВебКлиент Тогда + ВозможенЗапускОбновления = Ложь; + ТекстСообщения = НСтр("ru = 'Обновление программы недоступно в веб-клиенте.'"); + #КонецЕсли + + Если Не ОбщегоНазначенияКлиентСервер.ЭтоWindowsКлиент() Тогда + ВозможенЗапускОбновления = Ложь; + ТекстСообщения = НСтр("ru = 'Обновление программы доступно только в клиенте под управлением ОС Windows.'"); + КонецЕсли; + + Если ОбщегоНазначенияКлиент.КлиентПодключенЧерезВебСервер() Тогда + ВозможенЗапускОбновления = Ложь; + ТекстСообщения = НСтр("ru = 'Обновление программы недоступно при подключении через веб-сервер.'"); + КонецЕсли; + + Если Не ВозможенЗапускОбновления Тогда + ПоказатьПредупреждение(, ТекстСообщения); + КонецЕсли; + + Возврат ВозможенЗапускОбновления; + +КонецФункции + +&НаСервере +Функция ПараметрыСтраницыВыборРежимаОбновленияСервер(СообщенияДляЖурналаРегистрации) + + ПараметрыСтраницы = Новый Структура; + ПараметрыСтраницы.Вставить("ЕстьОтложенныеОбработчики", (ОбновлениеИнформационнойБазыСлужебный.СтатусНевыполненныхОбработчиков() = "СтатусНеВыполнено")); + ПараметрыСтраницы.Вставить("ИнформацияОСоединениях", СоединенияИБ.ИнформацияОСоединениях(Ложь, СообщенияДляЖурналаРегистрации)); + Возврат ПараметрыСтраницы; + +КонецФункции + +&НаКлиенте +Процедура ПрочитатьДанныеВЖурналРегистрации() + + МассивФайлов = НайтиФайлы(КаталогСкрипта, "log*.txt"); + + Если МассивФайлов.Количество() = 0 Тогда + Возврат; + КонецЕсли; + + ФайлЖурнала = МассивФайлов[0]; + ТекстовыйДокумент = Новый ТекстовыйДокумент; + ТекстовыйДокумент.Прочитать(ФайлЖурнала.ПолноеИмя); + + Для НомерСтроки = 1 По ТекстовыйДокумент.КоличествоСтрок() Цикл + + ТекущаяСтрока = ТекстовыйДокумент.ПолучитьСтроку(НомерСтроки); + Если ПустаяСтрока(ТекущаяСтрока) Тогда + Продолжить; + КонецЕсли; + + НачатьЗапись = Ложь; + + ПредставлениеУровня = "Информация"; + Если Сред(ТекущаяСтрока, 3, 1) = "." И Сред(ТекущаяСтрока, 6, 1) = "." Тогда // Строка с датой + МассивСтроки = СтрРазделить(ТекущаяСтрока, " ", Ложь); + МассивДаты = СтрРазделить(МассивСтроки[0], "."); + МассивВремени = СтрРазделить(МассивСтроки[1], ":"); + ДатаСобытия = Дата(МассивДаты[2], МассивДаты[1], МассивДаты[0], МассивВремени[0], МассивВремени[1], МассивВремени[2]); + Если МассивСтроки[2] = "{ERR}" Тогда + ПредставлениеУровня = "Ошибка"; + КонецЕсли; + Комментарий = СокрЛП(Сред(ТекущаяСтрока, СтрНайти(ТекущаяСтрока, "}") + 2)); + + Если Комментарий = НСтр("ru = 'Обновление выполнено'") Тогда + Объект.РезультатОбновления = Истина; + Продолжить; + ИначеЕсли Комментарий = НСтр("ru = 'Обновление не выполнено'") Тогда + Объект.РезультатОбновления = Ложь; + Продолжить; + КонецЕсли; + НачатьЗапись = Истина; + Иначе + Комментарий = ТекущаяСтрока; + КонецЕсли; + + Если НачатьЗапись Тогда + ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(ИмяСобытияЖурнала, ПредставлениеУровня, Комментарий, ДатаСобытия); + КонецЕсли; + + КонецЦикла; + + ЗаписатьСобытияВЖурналРегистрации(); + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Планирование обновления в указанное время. + +&НаКлиенте +// Возвратить каталог файла - часть пути без имени файла. +// +// Параметры: +// ПутьКФайлу - Строка - путь к файлу. +// +// Возвращаемое значение: +// Строка - каталог файла +Функция ПолучитьКаталогФайла(Знач ПутьКФайлу) + + ПозицияСимвола = СтрНайти(ПутьКФайлу, "\", НаправлениеПоиска.СКонца); + Если ПозицияСимвола > 1 Тогда + Возврат Сред(ПутьКФайлу, 1, ПозицияСимвола - 1); + Иначе + Возврат ""; + КонецЕсли; + +КонецФункции + +&НаКлиенте +Процедура ЗаписатьСобытияВЖурналРегистрации() + + СобытияДляЖурналаРегистрации = ПараметрыПриложения["СтандартныеПодсистемы.СообщенияДляЖурналаРегистрации"]; + + Если ТипЗнч(СобытияДляЖурналаРегистрации) <> Тип("СписокЗначений") Тогда + Возврат; + КонецЕсли; + + Если СобытияДляЖурналаРегистрации.Количество() = 0 Тогда + Возврат; + КонецЕсли; + + ЖурналРегистрацииВызовСервера.ЗаписатьСобытияВЖурналРегистрации(СобытияДляЖурналаРегистрации); + +КонецПроцедуры + +&НаСервере +Процедура ВосстановитьНастройкиОбновленияКонфигурации() + + Настройки = ОбновлениеКонфигурации.НастройкиОбновленияКонфигурации(); + ЗаполнитьЗначенияСвойств(Объект, Настройки); + +КонецПроцедуры + +&НаСервере +Процедура УстановитьПарольАдминистратора(ПараметрыАдминистрирования) + + АдминистраторИБ = ПользователиИнформационнойБазы.НайтиПоИмени(ПараметрыАдминистрирования.ИмяАдминистратораИнформационнойБазы); + + Если Не АдминистраторИБ.АутентификацияСтандартная Тогда + + АдминистраторИБ.АутентификацияСтандартная = Истина; + АдминистраторИБ.Пароль = ПараметрыАдминистрирования.ПарольАдминистратораИнформационнойБазы; + АдминистраторИБ.Записать(); + + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/DataProcessors/УстановкаОбновлений/Help/ru.html b/SSL/src/DataProcessors/УстановкаОбновлений/Help/ru.html new file mode 100644 index 000000000..4a3686b5c --- /dev/null +++ b/SSL/src/DataProcessors/УстановкаОбновлений/Help/ru.html @@ -0,0 +1,46 @@ + +

            Установка обновлений позволяет автоматически устанавливать обновления конфигурации из файла.

            +

            Открывается по команде Установка обновлений раздела Администрирование - Поддержка и обслуживание - Результаты обновления программы.

            +

            Программа позволяет обновлять конфигурацию ИБ в режиме 1С:Предприятия. Обновление производится по требованию или в указанное время.

            +

            Внимание! Помощник не следует использовать, если в программе включена возможность изменения объектов метаданных. В таких случаях рекомендуется выполнять обновление в режиме Конфигуратор.

            +

            На первом шаге выбирается источник установки обновления. Если у Вас уже имеется файл обновления, то помощник позволяет провести обновление с использованием файла поставки обновления (.cfu) или файла поставки конфигурации (.cf) из локального или сетевого каталога. Если файл обновления уже загружен в основную конфигурацию, и она отличается от конфигурации информационной базы, то необходимо указать вариант обновления без использования файла обновления.

            +

            Получение обновлений из файла в локальном или сетевом каталоге

            +

            В случае если файл обновления уже имеется, то следует воспользоваться режимом обновления конфигурации из файла.

            +
            • На первой странице помощник просит указать, где именно находится файл с обновлениями: +
              • +

                Файл обновления не требуется, так как он уже загружен в основную конфигурацию.

                +
                • +

                  Если файл обновления ранее уже был загружен в основную конфигурацию, и его необходимо применить к конфигурации информационной базы, то следует выбрать этот вариант. Эта возможность может быть востребована, например, при обновлении конфигурации узла распределенной информационной базы.

              • +

                Укажите файл обновления - с помощью кнопки  Выбрать укажите путь к файлу на компьютере.

                +
                • В качестве файла может быть указан cfu-файл обновления конфигурации или cf-файл поставки конфигурации, например, E:\1Cits\EXE\Migration\1Cv8.cf.
              • Нажмите Далее, для того чтобы продолжить установку обновлений.
            • После нажатия на кнопку Далее программа получает файл обновления из локального или сетевого каталога, например, с диска 1С:ИТС локально на компьютер.

            Получение файла обновления с диска 1С:ИТС может занять продолжительное время, в зависимости от объема конкретного файла и производительности компьютера.

            +

            Установка обновлений 

            +

            После того, как обновление было получено локально на компьютер, помощник предлагает его установить. 

            +
            • Установка обновления выполняется от имени текущего пользователя. Введите Параметры администрирования информационной базы - Имя пользователя и Пароль, если для доступа к информационной базе необходима авторизация. В случае клиент-серверного варианта работы программы также может потребоваться ввести имя и пароль администратора кластера серверов. +
            • Перед началом обновления версии программы рекомендуется создавать резервную копию информационной базы. Резервная копия используется для автоматического восстановления информационной базы в случае нештатной ситуации. К настройке автоматического создания резервной копии в файловом варианте работы можно перейти по ссылке Создавать временную резервную копию ИБ и выполнять откат при нештатной ситуации. +
              • Если для резервного копирования используются сторонние средства, то можно отключить автоматическое создание резервной копии с помощью ссылки Создавать временную резервную копию ИБ и выполнять откат при нештатной ситуации, расположенной внизу страницы помощника. Создать резервную копию можно и другими средствами, например, путем копирования файла информационной базы. В клиент-серверном варианте работы рекомендуется создать резервную копию самостоятельно средствами SQL-сервера.
            • С помощью переключателя можно уточнить время обновления конфигурации ИБ: +
              • Выполнить установку обновления прямо сейчас - для обновления потребуется перезапуск. +
              • Напомнить при завершении работы. +
              • Запланировать установку обновления на указанное время - в клиент-серверном варианте работы программы есть возможность указать время и дату обновления конфигурации.
            • Прежде чем продолжить обновление конфигурации, необходимо сохранить несохраненные данные или закрыть окна их редактирования. +
            • В клиент-серверном варианте работы программы все соединения будут завершены автоматически, а на время создания резервной копии и обновления конфигурации устанавливается блокировка соединений.  +
            • Для файлового варианта работы необходимо выполнить следующие действия: +
            • Если все указанные условия выполнены, после нажатия кнопки Далее программа автоматически создаст резервную копию ИБ (если это предусмотрено), и обновит конфигурацию. +
            • Процесс обновления программы может занять продолжительное время, в зависимости от производительности компьютера и объема информационной базы. Не выключайте питание компьютера до завершения процесса. +
            • После завершения обновления конфигурации программа будет автоматически запущена и готова к дальнейшей работе. Для базовых версий конфигураций после обновления требуется выполнить первый запуск программы от имени администратора, во время которого будет выполнено завершение процесса обновления конфигурации. +
            • Помощник выводит сообщение об успешном завершении обновления программы. Перейдите по ссылке Новое в этой версии, для того чтобы просмотреть описание изменений программы. Нажмите Готово, для того чтобы приступить к работе в программе. +
            • Если в программе предусмотрено отложенное обновление, выводится предупреждение о необходимости ознакомиться с дополнительными инструкциями для завершения обновления. Перейдите по соответствующей ссылке.

            Планирование обновлений

            +
            • При работе в клиент-серверном варианте работы программы можно задавать отложенное по времени обновление, например, можно отложить обновление конфигурации на ночь. +
            • Для этого при обновлении конфигурации в помощнике выберите с помощью переключателя Запланировать установку обновления на указанное время и укажите время и дату обновления. +
            • Существует возможность настроить отправку отчета на указанный адрес электронной почты об успешном или неуспешном выполнении обновления. Отправка сообщения производится с компьютера, на которой установлен сервер 1С:Предприятие. Для этого включите флажок Выслать отчет на почту, напишите адрес электронной почты.

            Запланированное обновление будет выполнено с клиентского компьютера в фоновом режиме. Питание компьютера должно быть включено в указанную дату и время.

            +

            Проблемы получения и установки обновлений

            +

            На специальной странице помощника выводится сообщение о невозможности проведения обновления программы.

            +
            • Для получения технической информации о причинах проблем с получением и установкой обновлений можно воспользоваться следующими средствами: +
              • Записи о произведенных операциях и возникших ошибках в ходе обновления заносятся в Журнал регистрации (тип события «Обновление информационной базы»). Воспользуйтесь ссылкой Перейти в журнал регистрации, для того чтобы просмотреть технические подробности.  +
              • В процессе установки обновления во временной папке текущего пользователя Windows создается лог-файл с записями о ходе обновления (содержимое лог-файла впоследствии автоматически добавляется в Журнал регистрации). Последний из каталогов вида %temp%\1CUpdate.<набор цифр>, отсортированных по алфавиту, соответствует последней сессии обновления.
            +

            Если настройка операционной системы "Язык программ, не поддерживающих Юникод" задана некорректно, то процесс обновления завершится с ошибкой "invalid procedure call or arguments", при этом лог-файл окажется пустым. Для устранения данной ошибки необходимо, чтобы в региональных настройках операционной системы (Панель управления - Язык и региональные стандарты - Дополнительно) в поле Язык программ, не поддерживающих Юникод был выбран русский язык.

            +
              • Результат обновления информационной базы записывается в Журнал событий Windows (Event Log).
            • Если в результате нештатной ситуации при обновлении база оказалась заблокированной, то ее можно разблокировать с помощью консоли Администрирование серверов 1С:Предприятия, либо из командной строки, запустив 1С:Предприятие от имени администратора с ключом РазрешитьРаботуПользователей и указав код разблокировки ПакетноеОбновлениеКонфигурацииИБ. Например:

            "C:\Program Files\1cv82\bin\1cv8.exe"  ENTERPRISE /S"server\base" /N"Администратор" /P"" /WA- /CРазрешитьРаботуПользователей /UCПакетноеОбновлениеКонфигурацииИБ

            +
            • Если обновление конфигурации завершилось неудачей, а во временном log-файле имеется запись: "Исключение в createConnection: Error, Automation server can't create object", то, скорее всего, используется 32-разрядная компонента comcntr.dll на компьютере под управлением 64-разрядной операционной системы. Для устранения данной проблемы необходимо взять 64-разрядную компоненту comcntr.dll из поставки 1С Предприятие x64 Сервер и зарегистрировать ее, запустив из командной строки:

            regsvr32 <каталог 64-разрядного comcntr.dll>\comcntr.dll

            +

            Выяснив причины ошибки, произведите соответствующие настройки компьютера, затем нажмите Далее для повторения попытки.

            +

            См. также:

            + \ No newline at end of file diff --git a/SSL/src/DataProcessors/УстановкаОбновлений/ManagerModule.bsl b/SSL/src/DataProcessors/УстановкаОбновлений/ManagerModule.bsl new file mode 100644 index 000000000..e69de29bb diff --git a/SSL/src/DataProcessors/УстановкаОбновлений/ObjectModule.bsl b/SSL/src/DataProcessors/УстановкаОбновлений/ObjectModule.bsl new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/SSL/src/DataProcessors/УстановкаОбновлений/ObjectModule.bsl @@ -0,0 +1 @@ + diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Templates/ДопФайлОбновленияКонфигурации/Template.txt b/SSL/src/DataProcessors/УстановкаОбновлений/Templates/ДопФайлОбновленияКонфигурации/Template.txt similarity index 100% rename from SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Templates/ДопФайлОбновленияКонфигурации/Template.txt rename to SSL/src/DataProcessors/УстановкаОбновлений/Templates/ДопФайлОбновленияКонфигурации/Template.txt diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Templates/ЗаставкаОбновленияКонфигурации/Template.txt b/SSL/src/DataProcessors/УстановкаОбновлений/Templates/ЗаставкаОбновленияКонфигурации/Template.txt similarity index 97% rename from SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Templates/ЗаставкаОбновленияКонфигурации/Template.txt rename to SSL/src/DataProcessors/УстановкаОбновлений/Templates/ЗаставкаОбновленияКонфигурации/Template.txt index d35564a26..ddac1c097 100644 --- a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Templates/ЗаставкаОбновленияКонфигурации/Template.txt +++ b/SSL/src/DataProcessors/УстановкаОбновлений/Templates/ЗаставкаОбновленияКонфигурации/Template.txt @@ -28,7 +28,7 @@ var ret = 0; // Код возврата предыдущего шага. var finish = false; var errStep = 0; - var loadStep = 8; // шаг начала загрузк первого файла обновления + var loadStep = 8; // шаг начала загрузки первого файла обновления var endLoadStep = loadStep + cfgFileNames.length * 6; // следующий шаг после завершения загрузки файлов обновления if (cfgFileNames.length == 0) endLoadStep = loadStep + 2; @@ -59,7 +59,7 @@ break; case 4: if (createBackup) - setProgress("Cоздание резервной копии информационной базы"); + setProgress("Создание резервной копии информационной базы"); break; case 5: ret = backupDB(); @@ -146,7 +146,7 @@ return ret; } - // Выпонить процедуру обновления конфигурации + // Выполнить процедуру обновления конфигурации function main() { if (finish) return; diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Templates/МакетФайлаОбновленияКонфигурации/Template.txt b/SSL/src/DataProcessors/УстановкаОбновлений/Templates/МакетФайлаОбновленияКонфигурации/Template.txt similarity index 99% rename from SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Templates/МакетФайлаОбновленияКонфигурации/Template.txt rename to SSL/src/DataProcessors/УстановкаОбновлений/Templates/МакетФайлаОбновленияКонфигурации/Template.txt index 78266d0c3..f81e57acc 100644 --- a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Templates/МакетФайлаОбновленияКонфигурации/Template.txt +++ b/SSL/src/DataProcessors/УстановкаОбновлений/Templates/МакетФайлаОбновленияКонфигурации/Template.txt @@ -199,6 +199,7 @@ function log1CInternal(connection, text, failed) { // Инициализация function initialize() { clearLogFile(); + appendLog(); log(format("Файл скрипта: {0}", thisFileName)); log(format("Количество файлов обновления: {0}", cfgFileNames.length)); for (var i = 0; i < cfgFileNames.length; i++) { @@ -324,7 +325,7 @@ function writeEventLog(success) { } } -// Cоздание резервной копии информационной базы +// Создание резервной копии информационной базы function backupDB() { if (!createBackup) return 0; @@ -336,6 +337,7 @@ function backupDB() { catch (e) { CollectGarbage(); // предотвращает исключение out of memory log(format("Исключение при создании резервной копии базы: {0}, {1}.", e.name, e.message), true); + log(format("Трассировка:\nКопировали из: {0}\nКопировали в:{1}", BaseFileName, backupFileName), true); ret = 1; } if (ret == 0) @@ -656,7 +658,7 @@ function runDeferredHandlers() { return result; } -// Получение имени файла обновления и определение является ли он приоритетным (обязятелен запуск) +// Получение имени файла обновления и определение является ли он приоритетным (обязателен запуск) function GetRequired(filePath) { var fileProperties = Object(); fileProperties.filePath = filePath; diff --git a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Templates/НеинтерактивноеОбновлениеКонфигурации/Template.txt b/SSL/src/DataProcessors/УстановкаОбновлений/Templates/НеинтерактивноеОбновлениеКонфигурации/Template.txt similarity index 96% rename from SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Templates/НеинтерактивноеОбновлениеКонфигурации/Template.txt rename to SSL/src/DataProcessors/УстановкаОбновлений/Templates/НеинтерактивноеОбновлениеКонфигурации/Template.txt index 9be688614..362b08405 100644 --- a/SSL/src/DataProcessors/ПоискИУстановкаОбновлений/Templates/НеинтерактивноеОбновлениеКонфигурации/Template.txt +++ b/SSL/src/DataProcessors/УстановкаОбновлений/Templates/НеинтерактивноеОбновлениеКонфигурации/Template.txt @@ -61,7 +61,7 @@ checkResult(ret); if (createBackup) { - setProgress("Cоздание резервной копии информационной базы"); + setProgress("Создание резервной копии информационной базы"); ret = backupDB(); checkResult(ret); } diff --git a/SSL/src/DataProcessors/УстановкаОбновлений/УстановкаОбновлений.mdo b/SSL/src/DataProcessors/УстановкаОбновлений/УстановкаОбновлений.mdo new file mode 100644 index 000000000..b3d9fd1b5 --- /dev/null +++ b/SSL/src/DataProcessors/УстановкаОбновлений/УстановкаОбновлений.mdo @@ -0,0 +1,249 @@ + + + + + + + УстановкаОбновлений + + ru + Установка обновлений + + true + DataProcessor.УстановкаОбновлений.Form.Форма + true + + + ru + + + + АдресЭлектроннойПочты + + ru + Адрес электронной почты + + + String + + + + ru + Адрес электронной почты для отправки отчета об обновлении + + + + + + ВосстанавливатьИнформационнуюБазу + + ru + Восстанавливать информационную базу + + + Boolean + + + ru + Требуется восстанавливать информационную базу + + + + + + ВыслатьОтчетНаПочту + + ru + Выслать отчет на почту + + + Boolean + + + ru + Включите для отправки отчета на почту + + + + + + ДатаВремяОбновления + + ru + Дата время обновления + + + Date + + + + ru + Дата и время запланированного обновления + + + + + + ИмяКаталогаРезервнойКопииИБ + + ru + Имя каталога резервной копии ИБ + + + String + + + + ru + Имя каталога резервной копии программы + + + + + + ИмяФайлаОбновления + + ru + Имя файла обновления + + + String + + + + ru + Имя файла с обновлением + + + + + + КодЗадачиПланировщика + + ru + Код задачи планировщика + + + Number + + 10 + + + + ru + Внутренний код задачи планировщика + + + + + + РежимОбновления + + ru + Режим обновления + + + Number + + 1 + true + + + + ru + Способ установки обновления + + + + + + РезультатОбновления + + ru + Результат обновления + + + + ru + Информация о результате обновления + + + + + + СоздаватьРезервнуюКопию + + ru + Создавать резервную копию + + 0 - не создавать; 1 - временную; 2 - в указанный каталог + + Number + + 1 + true + + + + ru + Требуется ли создавать резервную копию + + + + + + Форма + + ru + Форма + + PersonalComputer + MobileDevice + + + НастройкаРезервнойКопии + + ru + Настройка резервной копии + + + + ru + + + PersonalComputer + MobileDevice + + + МакетФайлаОбновленияКонфигурации + + ru + Макет файла обновления конфигурации + + TextDocument + + + ДопФайлОбновленияКонфигурации + + ru + Доп файл обновления конфигурации + + TextDocument + + + ЗаставкаОбновленияКонфигурации + + ru + Заставка обновления конфигурации + + TextDocument + + + НеинтерактивноеОбновлениеКонфигурации + + ru + Неинтерактивное обновление конфигурации + + TextDocument + + diff --git a/SSL/src/DefinedTypes/ВладелецКонтактнойИнформации/ВладелецКонтактнойИнформации.mdo b/SSL/src/DefinedTypes/ВладелецКонтактнойИнформации/ВладелецКонтактнойИнформации.mdo index 2c8535722..3876ef447 100644 --- a/SSL/src/DefinedTypes/ВладелецКонтактнойИнформации/ВладелецКонтактнойИнформации.mdo +++ b/SSL/src/DefinedTypes/ВладелецКонтактнойИнформации/ВладелецКонтактнойИнформации.mdo @@ -9,7 +9,6 @@ Владелец контактной информации - CatalogObject.Организации CatalogObject.Пользователи diff --git a/SSL/src/DefinedTypes/ВладелецПрисоединенныхФайлов/ВладелецПрисоединенныхФайлов.mdo b/SSL/src/DefinedTypes/ВладелецПрисоединенныхФайлов/ВладелецПрисоединенныхФайлов.mdo index cb8083bdd..166662d88 100644 --- a/SSL/src/DefinedTypes/ВладелецПрисоединенныхФайлов/ВладелецПрисоединенныхФайлов.mdo +++ b/SSL/src/DefinedTypes/ВладелецПрисоединенныхФайлов/ВладелецПрисоединенныхФайлов.mdo @@ -14,6 +14,7 @@ DocumentRef.ЭлектронноеПисьмоВходящее DocumentRef.ТелефонныйЗвонок DocumentRef.Встреча + CatalogRef.ШаблоныСообщений DocumentRef.СообщениеSMS CatalogRef.ИдентификаторыОбъектовМетаданных diff --git a/SSL/src/DefinedTypes/ВладелецПрисоединенныхФайловОбъект/ВладелецПрисоединенныхФайловОбъект.mdo b/SSL/src/DefinedTypes/ВладелецПрисоединенныхФайловОбъект/ВладелецПрисоединенныхФайловОбъект.mdo index 5d0cced4b..78886a7df 100644 --- a/SSL/src/DefinedTypes/ВладелецПрисоединенныхФайловОбъект/ВладелецПрисоединенныхФайловОбъект.mdo +++ b/SSL/src/DefinedTypes/ВладелецПрисоединенныхФайловОбъект/ВладелецПрисоединенныхФайловОбъект.mdo @@ -9,6 +9,7 @@ Владелец присоединенных файлов объект + CatalogObject.ШаблоныСообщений CatalogObject.ИдентификаторыОбъектовМетаданных diff --git a/SSL/src/DefinedTypes/ЗначениеДоступа/ЗначениеДоступа.mdo b/SSL/src/DefinedTypes/ЗначениеДоступа/ЗначениеДоступа.mdo index e6af96262..667e41193 100644 --- a/SSL/src/DefinedTypes/ЗначениеДоступа/ЗначениеДоступа.mdo +++ b/SSL/src/DefinedTypes/ЗначениеДоступа/ЗначениеДоступа.mdo @@ -18,7 +18,6 @@ ChartOfCharacteristicTypesRef.УдалитьВидыДоступа CatalogRef.ДополнительныеОтчетыИОбработки CatalogRef.Пользователи - CatalogRef.Организации CatalogRef.ГруппыИсполнителейЗадач CatalogRef.УчетныеЗаписиЭлектроннойПочты CatalogRef.ИдентификаторыОбъектовМетаданных diff --git a/SSL/src/DefinedTypes/Интервьюер/Интервьюер.mdo b/SSL/src/DefinedTypes/Интервьюер/Интервьюер.mdo new file mode 100644 index 000000000..34795eb0e --- /dev/null +++ b/SSL/src/DefinedTypes/Интервьюер/Интервьюер.mdo @@ -0,0 +1,14 @@ + + + + + + Интервьюер + + ru + Интервьюер + + + CatalogRef.Пользователи + + diff --git a/SSL/src/DefinedTypes/МестоХраненияФункциональныхОпций/МестоХраненияФункциональныхОпций.mdo b/SSL/src/DefinedTypes/МестоХраненияФункциональныхОпций/МестоХраненияФункциональныхОпций.mdo index 86db91c6c..6ef15145a 100644 --- a/SSL/src/DefinedTypes/МестоХраненияФункциональныхОпций/МестоХраненияФункциональныхОпций.mdo +++ b/SSL/src/DefinedTypes/МестоХраненияФункциональныхОпций/МестоХраненияФункциональныхОпций.mdo @@ -28,7 +28,6 @@ ConstantValueManager.ИспользоватьПодчиненныеБизнесПроцессы ConstantValueManager.ХранитьФайлыВТомахНаДиске ConstantValueManager.ИспользоватьШифрование - ConstantValueManager.ИспользоватьНесколькоОрганизаций ConstantValueManager.ИспользоватьЭлектронныеПодписи ConstantValueManager.ИспользоватьДатуИВремяВСрокахЗадач ConstantValueManager.ИспользоватьВнешнихПользователей @@ -42,7 +41,6 @@ ConstantValueManager.ИспользоватьИнтеграцию1СБухфон ConstantValueManager.ИспользоватьРазделениеПоОбластямДанных ConstantValueManager.ИспользоватьГруппыПользователей - ConstantValueManager.НеИспользоватьНесколькоОрганизаций ConstantValueManager.ИспользоватьПрочиеВзаимодействия ConstantValueManager.ИспользоватьОбщиеДополнительныеЗначения ConstantValueManager.ИспользоватьПризнакРассмотрено diff --git a/SSL/src/DefinedTypes/ОбъектАдресации/ОбъектАдресации.mdo b/SSL/src/DefinedTypes/ОбъектАдресации/ОбъектАдресации.mdo index bd8b6ad31..85cab48ad 100644 --- a/SSL/src/DefinedTypes/ОбъектАдресации/ОбъектАдресации.mdo +++ b/SSL/src/DefinedTypes/ОбъектАдресации/ОбъектАдресации.mdo @@ -9,7 +9,6 @@ Объект адресации - CatalogRef.Организации CatalogRef.ИдентификаторыОбъектовМетаданных diff --git a/SSL/src/DefinedTypes/Организация/Организация.mdo b/SSL/src/DefinedTypes/Организация/Организация.mdo new file mode 100644 index 000000000..6d8ce83d7 --- /dev/null +++ b/SSL/src/DefinedTypes/Организация/Организация.mdo @@ -0,0 +1,17 @@ + + + + + + Организация + + ru + Организация + + + String + + 10 + + + diff --git a/SSL/src/DefinedTypes/ОтложенныеБизнесПроцессы/ОтложенныеБизнесПроцессы.mdo b/SSL/src/DefinedTypes/ОтложенныеБизнесПроцессы/ОтложенныеБизнесПроцессы.mdo new file mode 100644 index 000000000..705dab5bf --- /dev/null +++ b/SSL/src/DefinedTypes/ОтложенныеБизнесПроцессы/ОтложенныеБизнесПроцессы.mdo @@ -0,0 +1,15 @@ + + + + + + ОтложенныеБизнесПроцессы + + ru + Отложенные бизнес процессы + + Бизнес-процессы, которые могут быть отложены + + BusinessProcessRef.Задание + + diff --git a/SSL/src/DefinedTypes/ПредметШаблонаСообщения/ПредметШаблонаСообщения.mdo b/SSL/src/DefinedTypes/ПредметШаблонаСообщения/ПредметШаблонаСообщения.mdo new file mode 100644 index 000000000..df20ee86c --- /dev/null +++ b/SSL/src/DefinedTypes/ПредметШаблонаСообщения/ПредметШаблонаСообщения.mdo @@ -0,0 +1,14 @@ + + + + + + ПредметШаблонаСообщения + + ru + Предмет шаблона сообщения + + + CatalogRef.ИдентификаторыОбъектовМетаданных + + diff --git a/SSL/src/DefinedTypes/ПрисоединенныйФайл/ПрисоединенныйФайл.mdo b/SSL/src/DefinedTypes/ПрисоединенныйФайл/ПрисоединенныйФайл.mdo index 922f404f2..0ef4bafa7 100644 --- a/SSL/src/DefinedTypes/ПрисоединенныйФайл/ПрисоединенныйФайл.mdo +++ b/SSL/src/DefinedTypes/ПрисоединенныйФайл/ПрисоединенныйФайл.mdo @@ -15,5 +15,6 @@ CatalogRef.СообщениеSMSПрисоединенныеФайлы CatalogRef.ВстречаПрисоединенныеФайлы CatalogRef.ТелефонныйЗвонокПрисоединенныеФайлы + CatalogRef.ШаблоныСообщенийПрисоединенныеФайлы diff --git a/SSL/src/DefinedTypes/ПрисоединенныйФайлОбъект/ПрисоединенныйФайлОбъект.mdo b/SSL/src/DefinedTypes/ПрисоединенныйФайлОбъект/ПрисоединенныйФайлОбъект.mdo index 7cbbde1a3..adabd1221 100644 --- a/SSL/src/DefinedTypes/ПрисоединенныйФайлОбъект/ПрисоединенныйФайлОбъект.mdo +++ b/SSL/src/DefinedTypes/ПрисоединенныйФайлОбъект/ПрисоединенныйФайлОбъект.mdo @@ -12,6 +12,7 @@ CatalogObject.СообщениеSMSПрисоединенныеФайлы CatalogObject.ВстречаПрисоединенныеФайлы CatalogObject.ТелефонныйЗвонокПрисоединенныеФайлы + CatalogObject.ШаблоныСообщенийПрисоединенныеФайлы CatalogObject.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы CatalogObject.ЗапланированноеВзаимодействиеПрисоединенныеФайлы CatalogObject.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы diff --git a/SSL/src/DefinedTypes/Респондент/Респондент.mdo b/SSL/src/DefinedTypes/Респондент/Респондент.mdo index 385d15bb0..99c7c7ede 100644 --- a/SSL/src/DefinedTypes/Респондент/Респондент.mdo +++ b/SSL/src/DefinedTypes/Респондент/Респондент.mdo @@ -9,9 +9,6 @@ Респондент - String - - 10 - + CatalogRef.Пользователи diff --git a/SSL/src/DocumentJournals/Взаимодействия/Forms/ВыборТипаПредмета/Form.form b/SSL/src/DocumentJournals/Взаимодействия/Forms/ВыборТипаПредмета/Form.form new file mode 100644 index 000000000..ecd43515c --- /dev/null +++ b/SSL/src/DocumentJournals/Взаимодействия/Forms/ВыборТипаПредмета/Form.form @@ -0,0 +1,438 @@ + + + + <key>ru</key> + <value>Выберите тип предмета</value> + + + ТаблицаТиповПредметов + 1 + true + true + + true + + + ТаблицаТиповПредметов + + None + Add + Change + Copy + Delete + + ТаблицаТиповПредметовПредставлениеТипа + 14 + true + true + + true + + + ТаблицаТиповПредметов.ПредставлениеТипа + + + ТаблицаТиповПредметовПредставлениеТипаРасширеннаяПодсказка + 16 + Label + true + true + + Left + + + + ТаблицаТиповПредметовПредставлениеТипаКонтекстноеМеню + 15 + true + + InputField + true + Auto + true + Left + true + + true + true + true + true + true + true + Normal + + + + ТаблицаТиповПредметовКоманднаяПанель + 3 + Left + + + ValueChoice + ТаблицаТиповПредметовВыборЗначения + + + OnActivateRow + ТаблицаТиповПредметовПриАктивизацииСтроки + + + ТаблицаТиповПредметовСтрокаПоиска + 5 + + ТаблицаТиповПредметовСтрокаПоискаРасширеннаяПодсказка + 7 + Label + true + true + + Left + + + + ТаблицаТиповПредметовСтрокаПоискаКонтекстноеМеню + 6 + true + + ТаблицаТиповПредметов + + true + + + + ТаблицаТиповПредметовСостояниеПросмотра + 8 + + ТаблицаТиповПредметовСостояниеПросмотраРасширеннаяПодсказка + 10 + Label + true + true + + Left + + + + ТаблицаТиповПредметовСостояниеПросмотраКонтекстноеМеню + 9 + true + + ViewStatusAddition + ТаблицаТиповПредметов + + true + + + + ТаблицаТиповПредметовУправлениеПоиском + 11 + + ТаблицаТиповПредметовУправлениеПоискомРасширеннаяПодсказка + 13 + Label + true + true + + Left + + + + ТаблицаТиповПредметовУправлениеПоискомКонтекстноеМеню + 12 + true + + SearchControlAddition + ТаблицаТиповПредметов + + true + + + + ТаблицаТиповПредметовРасширеннаяПодсказка + 4 + Label + true + true + + Left + + + + ТаблицаТиповПредметовКонтекстноеМеню + 2 + true + + true + true + true + true + true + true + 1 + 1 + AutoUse + AutoUse + true + true + false + false + true + Auto + Auto + true + true + true + true + true + + + + НеОтображатьВзаимодействия + 23 + true + true + + true + + + НеОтображатьВзаимодействия + + Right + + OnChange + НеОтображатьВзаимодействияПриИзменении + + + НеОтображатьВзаимодействияРасширеннаяПодсказка + 25 + Label + true + true + + Left + + + + НеОтображатьВзаимодействияКонтекстноеМеню + 24 + true + + CheckBoxField + Enter + true + Left + true + + + + ФормаКоманднаяПанель + -1 + + ФормаВыбрать + 21 + true + true + + true + + + ФормаВыбратьРасширеннаяПодсказка + 22 + Label + true + true + + Left + + + Form.Command.Выбрать + Auto + true + true + true + UserCmds + Auto + + + ФормаСправка + 17 + true + true + + true + + + ФормаСправкаРасширеннаяПодсказка + 18 + Label + true + true + + Left + + + Form.StandardCommand.Help + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu + + Left + + + OnLoadDataFromSettingsAtServer + ПриЗагрузкеДанныхИзНастроекНаСервере + + + OnCreateAtServer + ПриСозданииНаСервере + + LockOwner + Use + true + true + Vertical + true + true + true + auto + true + + ТаблицаТиповПредметов + + <key>ru</key> + <value>Таблица типов предметов</value> + + 1 + + ValueTable + + + true + + + true + + + ПредставлениеТипа + + <key>ru</key> + <value>Представление типа</value> + + 1 + + String + + 100 + + + + true + + + true + + + + ТипПредмета + + <key>ru</key> + <value>Тип предмета</value> + + 2 + + + true + + + true + + + + ЯвляетсяВзаимодействием + + <key>ru</key> + <value>Является взаимодействием</value> + + 3 + + Boolean + + + true + + + true + + + + + ТекущийТипПредмета + + <key>ru</key> + <value>Текущий тип предмета</value> + + 2 + + String + + + + true + + + true + + + ТекущийТипПредмета + + + + НеОтображатьВзаимодействия + + <key>ru</key> + <value>Не отображать взаимодействия</value> + + 3 + + Boolean + + + true + + + true + + + НеОтображатьВзаимодействия + + + + Выбрать + + <key>ru</key> + <value>Выбрать</value> + + 1 + + ru + Выбрать + + + true + + + + Выбрать + + + DontUse + Auto + + + + + + diff --git a/SSL/src/DocumentJournals/Взаимодействия/Forms/ВыборТипаПредмета/Help/ru.html b/SSL/src/DocumentJournals/Взаимодействия/Forms/ВыборТипаПредмета/Help/ru.html new file mode 100644 index 000000000..76d592a15 --- /dev/null +++ b/SSL/src/DocumentJournals/Взаимодействия/Forms/ВыборТипаПредмета/Help/ru.html @@ -0,0 +1,7 @@ + +

            Предназначена для выбора типа предмета в документах взаимодействий.

            +

            Для заполнения поля Предмет сначала выберите из списка тип предмета. После этого откроется список выбранных объектов программы.

            +

            По умолчанию в списке отображаются типы документов взаимодействий.

            +

            Для отображения других типов объектов программы включите флажок Не отображать взаимодействия.

            +

            См. также:

            + \ No newline at end of file diff --git a/SSL/src/DocumentJournals/Взаимодействия/Forms/ВыборТипаПредмета/Module.bsl b/SSL/src/DocumentJournals/Взаимодействия/Forms/ВыборТипаПредмета/Module.bsl new file mode 100644 index 000000000..017d00f1f --- /dev/null +++ b/SSL/src/DocumentJournals/Взаимодействия/Forms/ВыборТипаПредмета/Module.bsl @@ -0,0 +1,116 @@ + +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + ЗаполнитьТаблицуТиповПредметов(); + +КонецПроцедуры + +&НаСервере +Процедура ПриЗагрузкеДанныхИзНастроекНаСервере(Настройки) + + УстановитьОтборТаблицы(ЭтотОбъект); + + ТекущийТипПредмета = Настройки.Получить("ТекущийТипПредмета"); + Если ЗначениеЗаполнено(ТекущийТипПредмета) Тогда + + НайденныеСтроки = ТаблицаТиповПредметов.НайтиСтроки(Новый Структура("ТипПредмета", ТекущийТипПредмета)); + + Если НайденныеСтроки.Количество() > 0 Тогда + Элементы.ТаблицаТиповПредметов.ТекущаяСтрока = НайденныеСтроки[0].ПолучитьИдентификатор(); + КонецЕсли; + + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийТаблицыТиповПредмета + +&НаКлиенте +Процедура ТаблицаТиповПредметовВыборЗначения(Элемент, Значение, СтандартнаяОбработка) + + ВыбратьИЗакрыть(); + +КонецПроцедуры + +&НаКлиенте +Процедура ТаблицаТиповПредметовПриАктивизацииСтроки(Элемент) + + ТекущиеДанные = Элементы.ТаблицаТиповПредметов.ТекущиеДанные; + + Если ТекущиеДанные <> Неопределено Тогда + ТекущийТипПредмета = ТекущиеДанные.ТипПредмета; + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура НеОтображатьВзаимодействияПриИзменении(Элемент) + + УстановитьОтборТаблицы(ЭтотОбъект); + +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиКомандФормы + +&НаКлиенте +Процедура Выбрать(Команда) + + ВыбратьИЗакрыть(); + +КонецПроцедуры + +#КонецОбласти + + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Процедура ЗаполнитьТаблицуТиповПредметов() + + СписокДоступныхТиповПредметов = Взаимодействия.СписокДоступныхТиповПредметов(); + СписокДоступныхТиповПредметов.СортироватьПоПредставлению(); + + Для Каждого ЭлементСписка Из СписокДоступныхТиповПредметов Цикл + + НоваяСтрока = ТаблицаТиповПредметов.Добавить(); + НоваяСтрока.ПредставлениеТипа = ЭлементСписка.Представление; + НоваяСтрока.ТипПредмета = ЭлементСписка.Значение; + НоваяСтрока.ЯвляетсяВзаимодействием = ЭлементСписка.Пометка; + + КонецЦикла; + +КонецПроцедуры + +&НаКлиенте +Процедура ВыбратьИЗакрыть() + + ТекущиеДанные = Элементы.ТаблицаТиповПредметов.ТекущиеДанные; + + Если ТекущиеДанные = Неопределено Тогда + Закрыть(); + КонецЕсли; + + ОповеститьОВыборе(ТекущиеДанные.ТипПредмета); + +КонецПроцедуры + +&НаКлиентеНаСервереБезКонтекста +Процедура УстановитьОтборТаблицы(Форма) + + Если Форма.НеОтображатьВзаимодействия Тогда + ОтборСтрок = Новый Структура("ЯвляетсяВзаимодействием", Ложь); + Форма.Элементы.ТаблицаТиповПредметов.ОтборСтрок = Новый ФиксированнаяСтруктура(ОтборСтрок); + Иначе + Форма.Элементы.ТаблицаТиповПредметов.ОтборСтрок = Неопределено; + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/DocumentJournals/Взаимодействия/Forms/НастройкиРаботыСПочтой/Form.form b/SSL/src/DocumentJournals/Взаимодействия/Forms/НастройкиРаботыСПочтой/Form.form index 0eed25f7d..8a602ff94 100644 --- a/SSL/src/DocumentJournals/Взаимодействия/Forms/НастройкиРаботыСПочтой/Form.form +++ b/SSL/src/DocumentJournals/Взаимодействия/Forms/НастройкиРаботыСПочтой/Form.form @@ -218,7 +218,6 @@ Left true - true true true true @@ -400,10 +399,6 @@ ru Подпись для новых сообщений - - ru - Группа для новых сообщений - 40 ГруппаДляНовыхСообщенийExtendedTooltip @@ -591,7 +586,6 @@ Left true - true true true true @@ -773,10 +767,6 @@ ru Подпись при ответе или пересылке - - ru - Группа при ответе пересылке - 40 ГруппаПриОтветеПересылкеExtendedTooltip diff --git a/SSL/src/DocumentJournals/Взаимодействия/Forms/ПараметрыЭлектронногоПисьма/Form.form b/SSL/src/DocumentJournals/Взаимодействия/Forms/ПараметрыЭлектронногоПисьма/Form.form index 38af7904c..0f38dcd18 100644 --- a/SSL/src/DocumentJournals/Взаимодействия/Forms/ПараметрыЭлектронногоПисьма/Form.form +++ b/SSL/src/DocumentJournals/Взаимодействия/Forms/ПараметрыЭлектронногоПисьма/Form.form @@ -109,12 +109,7 @@ ru Даты - - ru - Группа даты - true - false ГруппаДатыExtendedTooltip 30 @@ -410,11 +405,6 @@ ru Параметры отслеживания - - ru - Группа параметры отслеживания - - true ГруппаПараметрыОтслеживанияExtendedTooltip 37 diff --git a/SSL/src/DocumentJournals/Взаимодействия/Forms/ПараметрыЭлектронногоПисьма/Module.bsl b/SSL/src/DocumentJournals/Взаимодействия/Forms/ПараметрыЭлектронногоПисьма/Module.bsl index 920a2d6e7..9ba557244 100644 --- a/SSL/src/DocumentJournals/Взаимодействия/Forms/ПараметрыЭлектронногоПисьма/Module.bsl +++ b/SSL/src/DocumentJournals/Взаимодействия/Forms/ПараметрыЭлектронногоПисьма/Module.bsl @@ -13,10 +13,10 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Оповещение = Новый ОписаниеОповещения("ВыбратьИЗакрыть", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияФормы(Оповещение, Отказ, ЗавершениеРаботы); КонецПроцедуры diff --git a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Attributes/КонтактыПанельНавигации/ExtInfo/ListSettings.dcss b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Attributes/КонтактыПанельНавигации/ExtInfo/ListSettings.dcss index 62bcd34a5..c4e81432e 100644 --- a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Attributes/КонтактыПанельНавигации/ExtInfo/ListSettings.dcss +++ b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Attributes/КонтактыПанельНавигации/ExtInfo/ListSettings.dcss @@ -43,34 +43,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - Контакт - - - КоличествоНеРассмотрено - - - - - КоличествоНеРассмотрено - Greater - 0 - - - - - false - ЦветФона - style:SpecialTextColor - - - Шрифт - - - - Normal Normal diff --git a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Attributes/ПредметыПанельНавигации/ExtInfo/ListSettings.dcss b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Attributes/ПредметыПанельНавигации/ExtInfo/ListSettings.dcss index 6c3ba63c9..3e6e799e2 100644 --- a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Attributes/ПредметыПанельНавигации/ExtInfo/ListSettings.dcss +++ b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Attributes/ПредметыПанельНавигации/ExtInfo/ListSettings.dcss @@ -46,30 +46,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - Предмет - - - КоличествоНеРассмотрено - - - - - КоличествоНеРассмотрено - Greater - 0 - - - - - Шрифт - - - - Inaccessible - Normal Normal diff --git a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Form.form b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Form.form index 462b04ffb..83d52b5ed 100644 --- a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Form.form +++ b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Form.form @@ -58,6 +58,7 @@ СтрокаПоиска + Ctrl+Shift+F OnChange СтрокаПоискаПриИзменении @@ -597,12 +598,6 @@ ru Вариант навигации - - ru - Выбор варианта навигации - - 20 - false ВыборВариантаНавигацииExtendedTooltip 425 @@ -780,6 +775,9 @@ Popup + + StdPicture.CreateListItem + Auto Normal @@ -3124,7 +3122,6 @@ HierarchicalList true true - 10 true true true @@ -4841,7 +4838,6 @@ Tree true true - 15 true true true @@ -5783,10 +5779,9 @@ true Left - 8 + 9 true true - false true true true @@ -8097,23 +8092,6 @@ true - - ИзменениеТекущейСтрокиПанелиНавигации - - <key>ru</key> - <value>Изменение текущей строки панели навигации</value> - - 37 - - Boolean - - - true - - - true - - ПредметыПанельНавигации @@ -8324,6 +8302,21 @@ <common>true</common> </edit> </attributes> + <attributes> + <name>ЗначениеУстановленноеПослеЗаполненияПанелиНавигации</name> + <title> + <key>ru</key> + <value>Значение установленное после заполнения панели навигации</value> + + 41 + + + true + + + true + + УстановитьВариантНавигацииПоПредмету diff --git a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Help/ru.html b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Help/ru.html index 0a68d9efb..ad335b8b9 100644 --- a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Help/ru.html +++ b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Help/ru.html @@ -66,8 +66,11 @@ <ul><li><b>По предметам</b> - панель навигации заполняется предметами взаимодействий. Все взаимодействия в списке группируются по предметам. <ul><li>При позиционировании на предмете в списке отображаются взаимодействия по данному предмету. </li><li> В панели группировки можно открывать предметы, по которым сгруппированы взаимодействия (двойным щелчком мыши в панели группировки). -</li><li>С помощью перетаскивания мышью взаимодействия можно перемещать между предметами, при этом в самом взаимодействии меняется предмет.   -</li><li>Включите соответствующий флажок в контекстном меню панели навигации по правой кнопке мыши, для того чтобы показывать<strong> Только активные предметы</strong> или <strong>Только значимые предметы.</strong></li></ul></li><li><b>По контактам</b> - панель навигации заполняется контактами, с которыми были взаимодействия. +</li><li>С помощью перетаскивания мышью взаимодействия можно перемещать между предметами, при этом в самом взаимодействии меняется предмет. +</li><li>Возможна быстрая установка предмета документов взаимодействий с помощью перетаскивания писем в окно списка предметов.  +</li><li>Можно быстро изменить предмет с помощью перетаскивания выделенных взаимодействий в параллельно расположенное окно списка документов, которые могут являться предметами взаимодействий. +</li><li>Включите соответствующий флажок в контекстном меню панели навигации по правой кнопке мыши, для того чтобы показывать<strong> Только активные предметы</strong> или <strong>Только значимые предметы.</strong> +</li><li>Если выделить один из предметов в панели группировки, то нажав кнопку <strong>Создать</strong>, можно ввести новый документы взаимодействий по данному предмету.</li></ul></li><li><b>По контактам</b> - панель навигации заполняется контактами, с которыми были взаимодействия. <ul><li>При позиционировании на контакте в списке отображаются взаимодействия с данным контактом. </li><li>Включите флажок в контекстном меню панели навигации по правой кнопке мыши, для того чтобы показывать <strong>Только значимые</strong> контакты.</li></ul></li><li><b>По папкам</b> - панель навигации заполняется доступными <a href="Catalog.Пользователи.Form.ФормаЭлемента/Help">пользователю</a> <a href="Catalog.УчетныеЗаписиЭлектроннойПочты/Help">учетными записями электронной почты</a> и их <a href="Catalog.ПапкиЭлектронныхПисем/Help">папками</a>. В отличие от остальных видов панелей навигации, используется только для работы с электронными письмами. Подробнее см. <a href="#7">ниже</a>. </li><li><b>По закладкам</b> - панель навигации заполняется <a href="Catalog.ЗакладкиВзаимодействий/Help">закладками</a> пользователя. При позиционировании на <a href="Catalog.ЗакладкиВзаимодействий.Form.ФормаЭлемента/Help">закладке</a> в списке будет отображаться те взаимодействия, которые соответствуют отбору, настроенному в закладке. Подробнее о работе с закладками в списке см. <a href="#70a6370b13ca43baa611bed9691c46111905adcce61f135f174b11e275eba8695934">ниже</a>. @@ -104,7 +107,7 @@ <div>Если ни одно взаимодействие не найдено, поле ввода строки поиска подсвечивается красным.</div> </li><li> <div>Для того чтобы отменить отображение списка по результатам полнотекстового поиска, необходимо очистить строку поиска.</div></li></ul></li><li> -<div>По умолчанию поиск работает по целому слову или словосочетанию. Производится с учетом морфологии, т.е. можно найти слово в других падежах, другого рода (мужского или женского), другом числе (единственном или множественном) и т.д.</div> +<div>По умолчанию поиск работает по целому слову или словосочетанию. Производится с учетом морфологии, т.е. можно найти слово в других падежах, другого рода (мужского или женского), другом числе (единственном или множественном) и т.д.</div> </li><li> <div>Если необходимо выполнить какой-то другой вид поиска - например, по части слова, то необходимо использовать служебные символы языка запросов полнотекстового поиска.</div> <ul><li> diff --git a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Module.bsl b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Module.bsl index ed243ce83..ae69ce3d1 100644 --- a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСписка/Module.bsl @@ -12,7 +12,7 @@ УстановитьУсловноеОформление(); - Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка) Тогда + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; @@ -113,6 +113,10 @@ ОбновитьПанельНавигации(); ВосстановитьРаскрытыеУзлыДерева(); КонецЕсли; + ИначеЕсли ВРег(ИмяСобытия) = ВРег("ИзменениеПредметаВзаимодействий") Тогда + Если Элементы.СтраницыПанелиНавигации.ТекущаяСтраница = Элементы.СтраницаПредмет Тогда + ОбновитьПанельНавигации(); + КонецЕсли; КонецЕсли; КонецПроцедуры @@ -144,7 +148,6 @@ КонецПроцедуры - &НаКлиенте Процедура ОбработкаПерехода(ОбъектПерехода, СтандартнаяОбработка) Если Не ЗначениеЗаполнено(ОбъектПерехода) Или ОбъектПерехода = Элементы.Список.ТекущаяСтрока Тогда @@ -174,6 +177,36 @@ ВосстановитьРаскрытыеУзлыДерева(); + ИначеЕсли КонтекстВыбора = "ПредметВыполнитьТипПредмета" Тогда + + Если ВыбранноеЗначение = Неопределено Тогда + Возврат; + КонецЕсли; + + КонтекстВыбора = "ПредметВыполнить"; + + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("РежимВыбора", Истина); + + ОткрытьФорму(ВыбранноеЗначение + ".ФормаВыбора", ПараметрыФормы, ЭтотОбъект); + + Возврат; + + ИначеЕсли КонтекстВыбора = "ПредметСписокТипПредмета" Тогда + + Если ВыбранноеЗначение = Неопределено Тогда + Возврат; + КонецЕсли; + + КонтекстВыбора = "ПредметСписок"; + + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("РежимВыбора", Истина); + + ОткрытьФорму(ВыбранноеЗначение + ".ФормаВыбора", ПараметрыФормы, ЭтотОбъект); + + Возврат; + ИначеЕсли КонтекстВыбора = "ПредметВыполнить" Тогда Если ВыбранноеЗначение <> Неопределено Тогда @@ -251,6 +284,7 @@ Процедура ОтветственныйПриИзменении(Элемент) ПриИзмененииОтветственногоСервер(Истина); + ВосстановитьРаскрытыеУзлыДерева(); КонецПроцедуры @@ -933,9 +967,8 @@ &НаКлиенте Процедура ПредметВыполнить(Команда) - ДополнительныеПараметры = Новый Структура("КонтекстВыбора", "ПредметВыполнить"); - ОбработчикОповещенияОЗакрытии = Новый ОписаниеОповещения("ВыборПредметаПриЗавершении", ЭтотОбъект, ДополнительныеПараметры); - СписокВыбораТипаПредмета.ПоказатьВыборЭлемента(ОбработчикОповещенияОЗакрытии); + КонтекстВыбора = "ПредметВыполнитьТипПредмета"; + ОткрытьФорму("ЖурналДокументов.Взаимодействия.Форма.ВыборТипаПредмета",,ЭтотОбъект); КонецПроцедуры @@ -947,9 +980,8 @@ Возврат; КонецЕсли; - ДополнительныеПараметры = Новый Структура("КонтекстВыбора", "ПредметСписок"); - ОбработчикОповещенияОЗакрытии = Новый ОписаниеОповещения("ВыборПредметаПриЗавершении", ЭтотОбъект, ДополнительныеПараметры); - СписокВыбораТипаПредмета.ПоказатьВыборЭлемента(ОбработчикОповещенияОЗакрытии); + КонтекстВыбора = "ПредметСписокТипПредмета"; + ОткрытьФорму("ЖурналДокументов.Взаимодействия.Форма.ВыборТипаПредмета",,ЭтотОбъект); КонецПроцедуры @@ -1216,6 +1248,10 @@ Процедура УстановитьУсловноеОформление() УсловноеОформление.Элементы.Очистить(); + ПредметыПанельНавигации.УсловноеОформление.Элементы.Очистить(); + КонтактыПанельНавигации.УсловноеОформление.Элементы.Очистить(); + + СтандартныеПодсистемыСервер.УстановитьУсловноеОформлениеПоляДата(ЭтотОбъект, "Список.Дата", Элементы.Дата.Имя); // @@ -1235,7 +1271,7 @@ ОтборЭлемента.ПравоеЗначение = Истина; Элемент.Оформление.УстановитьЗначениеПараметра("Шрифт", Новый Шрифт(WindowsШрифты.ШрифтДиалоговИМеню, , , Истина, Ложь, Ложь, Ложь, )); - + // Элемент = УсловноеОформление.Элементы.Добавить(); @@ -1313,7 +1349,45 @@ ОтборЭлемента.ПравоеЗначение = Ложь; Элемент.Оформление.УстановитьЗначениеПараметра("ЦветФона", ЦветаСтиля.ЦветФонаПоля); + +#Область РассмотреноКонтакты + Элемент = КонтактыПанельНавигации.УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных("Контакт"); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных("КоличествоНеРассмотрено"); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("КоличествоНеРассмотрено"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Больше; + ОтборЭлемента.ПравоеЗначение = 0; + + Элемент.Оформление.УстановитьЗначениеПараметра("Шрифт", Новый Шрифт(WindowsШрифты.ШрифтДиалоговИМеню, , , Истина, Ложь, Ложь, Ложь, )); + +#КонецОбласти + +#Область РассмотреноПредметы + + Элемент = ПредметыПанельНавигации.УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных("Предмет"); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных("КоличествоНеРассмотрено"); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("КоличествоНеРассмотрено"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Больше; + ОтборЭлемента.ПравоеЗначение = 0; + + Элемент.Оформление.УстановитьЗначениеПараметра("Шрифт", Новый Шрифт(WindowsШрифты.ШрифтДиалоговИМеню, , , Истина, Ложь, Ложь, Ложь, )); + +#КонецОбласти + КонецПроцедуры ///////////////////////////////////////////////////////////////////////////////// @@ -1415,22 +1489,29 @@ Возврат; КонецЕсли; - Если ИзменениеТекущейСтрокиПанелиНавигации Тогда - ИзменениеТекущейСтрокиПанелиНавигации = Ложь; - Иначе - ИзменениеТекущейСтрокиПанелиНавигации = Истина; - КонецЕсли; - Если Элементы.СтраницыПанелиНавигации.ТекущаяСтраница = Элементы.СтраницаКонтакт Тогда ТекущиеДанные = Элементы.КонтактыПанелиНавигации.ТекущиеДанные; Если ТекущиеДанные <> Неопределено Тогда + + Если ТекущиеДанные.Контакт = ЗначениеУстановленноеПослеЗаполненияПанелиНавигации Тогда + ЗначениеУстановленноеПослеЗаполненияПанелиНавигации = Неопределено; + Возврат; + КонецЕсли; + ИзменитьОтборСписок("Контакты",Новый Структура("Значение,ОписаниеТипов", ТекущиеДанные.Контакт, Неопределено)); СохранитьТекущееАктивноеЗначениеВНастройках("Контакты",ТекущиеДанные.Контакт); + КонецЕсли; ИначеЕсли Элементы.СтраницыПанелиНавигации.ТекущаяСтраница = Элементы.СтраницаПредмет Тогда ТекущиеДанные = Элементы.ПредметыПанельНавигации.ТекущиеДанные; Если ТекущиеДанные <> Неопределено Тогда + + Если ТекущиеДанные.Предмет = ЗначениеУстановленноеПослеЗаполненияПанелиНавигации Тогда + ЗначениеУстановленноеПослеЗаполненияПанелиНавигации = Неопределено; + Возврат; + КонецЕсли; + ИзменитьОтборСписок("Предметы",Новый Структура("Значение,ОписаниеТипов", ТекущиеДанные.Предмет, Неопределено)); СохранитьТекущееАктивноеЗначениеВНастройках("Предметы", ТекущиеДанные.Предмет); @@ -2599,6 +2680,8 @@ Возврат; КонецЕсли; + ЗначениеУстановленноеПослеЗаполненияПанелиНавигации = Неопределено; + Настройки = ПолучитьСохраненныеНастройкиДереваПанелиНавигации(Элементы.СтраницыПанелиНавигации.ТекущаяСтраница.Имя, ТекущееСвойствоПанелиНавигации,НастройкиДеревьевПанелиНавигации); @@ -2621,6 +2704,8 @@ ИзменитьОтборСписок("Контакты",Новый Структура("Значение,ОписаниеТипов", ЗначениеНастроек.ТекущееЗначение, Неопределено)); + + ЗначениеУстановленноеПослеЗаполненияПанелиНавигации = ЗначениеНастроек.ТекущееЗначение; ИначеЕсли Элементы.СтраницыПанелиНавигации.ТекущаяСтраница = Элементы.СтраницаПапки Тогда @@ -2644,6 +2729,8 @@ ИзменитьОтборСписок("Предметы",Новый Структура("Значение,ОписаниеТипов", ЗначениеНастроек.ТекущееЗначение, Неопределено)); + + ЗначениеУстановленноеПослеЗаполненияПанелиНавигации = ЗначениеНастроек.ТекущееЗначение; ИначеЕсли Элементы.СтраницыПанелиНавигации.ТекущаяСтраница = Элементы.СтраницаСвойства Тогда @@ -3688,22 +3775,6 @@ КонецПроцедуры -&НаКлиенте -Процедура ВыборПредметаПриЗавершении(ВыбранныйЭлемент, ДополнительныеПараметры) Экспорт - - Если ВыбранныйЭлемент = Неопределено Тогда - Возврат; - КонецЕсли; - - КонтекстВыбора = ДополнительныеПараметры.КонтекстВыбора; - - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("РежимВыбора", Истина); - - ОткрытьФорму(ВыбранныйЭлемент.Значение + ".ФормаВыбора", ПараметрыФормы, ЭтотОбъект); - -КонецПроцедуры - &НаКлиенте Процедура ВыборДатыОтработкиПриЗавершении(ВыбраннаяДата, ДополнительныеПараметры) Экспорт diff --git a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСпискаПараметрическая/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСпискаПараметрическая/Attributes/Список/ExtInfo/ListSettings.dcss index a4048f67b..7eb69c3df 100644 --- a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСпискаПараметрическая/Attributes/Список/ExtInfo/ListSettings.dcss +++ b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСпискаПараметрическая/Attributes/Список/ExtInfo/ListSettings.dcss @@ -17,22 +17,6 @@ <userSettingID>88619765-ccb3-46c6-ac52-38e9c992ebd4</userSettingID> </order> <conditionalAppearance> - <item> - <selection/> - <filter> - <item xsi:type="FilterItemComparison"> - <left xsi:type="dcscor:Field">Рассмотрено</left> - <comparisonType>Equal</comparisonType> - <right xsi:type="xs:boolean">true</right> - </item> - </filter> - <appearance> - <dcscor:item xsi:type="SettingsParameterValue"> - <dcscor:parameter>ЦветТекста</dcscor:parameter> - <dcscor:value xsi:type="v8ui:Color">style:ВыполненнаяЗадача</dcscor:value> - </dcscor:item> - </appearance> - </item> <viewMode>Normal</viewMode> <userSettingID>b75fecce-942b-4aed-abc9-e6a02e460fb3</userSettingID> </conditionalAppearance> diff --git a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСпискаПараметрическая/Form.form b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСпискаПараметрическая/Form.form index 9d1330c6c..4fc5216be 100644 --- a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСпискаПараметрическая/Form.form +++ b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСпискаПараметрическая/Form.form @@ -553,10 +553,9 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:InputFieldExtInfo"> - <width>12</width> + <width>9</width> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> <format> <key>ru</key> <value>ДФ=dd.MM.yyyy</value> @@ -1698,8 +1697,6 @@ </contextMenu> <changeRowSet>true</changeRowSet> <changeRowOrder>true</changeRowOrder> - <width>70</width> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <autoMaxRowsCount>true</autoMaxRowsCount> <selectionMode>MultiRow</selectionMode> @@ -1922,10 +1919,9 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:InputFieldExtInfo"> - <width>12</width> + <width>9</width> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> <wrap>true</wrap> <choiceButton>false</choiceButton> <clearButton>false</clearButton> @@ -3279,26 +3275,6 @@ </edit> </columns> </attributes> - <attributes> - <name>СписокВыбораТипаПредмета</name> - <title> - <key>ru</key> - <value>Список выбора типа предмета</value> - - 7 - - ValueList - - - true - - - true - - - - - Интервал diff --git a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСпискаПараметрическая/Module.bsl b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСпискаПараметрическая/Module.bsl index b447f46e6..3927f2687 100644 --- a/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСпискаПараметрическая/Module.bsl +++ b/SSL/src/DocumentJournals/Взаимодействия/Forms/ФормаСпискаПараметрическая/Module.bsl @@ -51,10 +51,6 @@ КонецЕсли; КонецЕсли; - Для Каждого ТипПредмета Из Метаданные.Документы.ЭлектронноеПисьмоИсходящее.Реквизиты.Предмет.Тип.Типы() Цикл - СписокВыбораТипаПредмета.Добавить(Метаданные.НайтиПоТипу(ТипПредмета).ПолноеИмя(),Строка(ТипПредмета)); - КонецЦикла; - Взаимодействия.ЗаполнитьСписокДоступныхДляСозданияДокументов(ДокументыДоступныеДляСоздания); Взаимодействия.ЗаполнитьПодменюПоТипуВзаимодействия(Элементы.ДеревоТипВзаимодействия, ЭтотОбъект); Взаимодействия.ЗаполнитьПодменюПоТипуВзаимодействия(Элементы.СписокТипВзаимодействия, ЭтотОбъект); @@ -128,6 +124,21 @@ КонецЕсли; + ИначеЕсли КонтекстВыбора = "ПредметВыполнитьТипПредмета" Тогда + + Если ВыбранноеЗначение = Неопределено Тогда + Возврат; + КонецЕсли; + + КонтекстВыбора = "ПредметВыполнить"; + + ПараметрыФормы = Новый Структура; + ПараметрыФормы.Вставить("РежимВыбора", Истина); + + ОткрытьФорму(ВыбранноеЗначение + ".ФормаВыбора", ПараметрыФормы, ЭтотОбъект); + + Возврат; + ИначеЕсли КонтекстВыбора = "ПредметВыполнить" Тогда Если ВыбранноеЗначение <> Неопределено Тогда @@ -374,9 +385,8 @@ Возврат; КонецЕсли; - ДополнительныеПараметры = Новый Структура("КонтекстВыбора", "ПредметВыполнить"); - ОбработчикОповещенияОЗакрытии = Новый ОписаниеОповещения("ВыборПредметаПриЗавершении", ЭтотОбъект, ДополнительныеПараметры); - СписокВыбораТипаПредмета.ПоказатьВыборЭлемента(ОбработчикОповещенияОЗакрытии); + КонтекстВыбора = "ПредметВыполнитьТипПредмета"; + ОткрытьФорму("ЖурналДокументов.Взаимодействия.Форма.ВыборТипаПредмета",,ЭтотОбъект); КонецПроцедуры @@ -474,6 +484,8 @@ УсловноеОформление.Элементы.Очистить(); + СтандартныеПодсистемыСервер.УстановитьУсловноеОформлениеПоляДата(ЭтотОбъект, "ДеревоВзаимодействий.Дата", Элементы.ДеревоВзаимодействийДата.Имя); + // Элемент = УсловноеОформление.Элементы.Добавить(); @@ -624,8 +636,7 @@ ТипГруппировка = Тип("СтрокаГруппировкиДинамическогоСписка"); Для Каждого Взаимодействие Из ВыделенныеСтроки Цикл Если ЗначениеЗаполнено(Взаимодействие) - И ТипЗнч(Взаимодействие) <> ТипГруппировка - И Взаимодействие.Предмет <> Предмет Тогда + И ТипЗнч(Взаимодействие) <> ТипГруппировка Тогда МассивВзаимодействий.Добавить(Взаимодействие) КонецЕсли; КонецЦикла; @@ -992,7 +1003,7 @@ &НаСервере Функция ПолучитьПараметрКонтактВЗависимостиОтТипа(Контакт) - МассивОписанияКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); ЕстьДополнительныеТаблицы = Ложь; ТекстЗапроса = ""; ИмяТаблицыКонтакта = Контакт.Метаданные().Имя; @@ -1132,22 +1143,6 @@ КонецПроцедуры -&НаКлиенте -Процедура ВыборПредметаПриЗавершении(ВыбранныйЭлемент, ДополнительныеПараметры) Экспорт - - Если ВыбранныйЭлемент = Неопределено Тогда - Возврат; - КонецЕсли; - - КонтекстВыбора = ДополнительныеПараметры.КонтекстВыбора; - - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("РежимВыбора", Истина); - - ОткрытьФорму(ВыбранныйЭлемент.Значение + ".ФормаВыбора", ПараметрыФормы, ЭтотОбъект); - -КонецПроцедуры - &НаКлиенте Процедура ВыборИнтервалаЗакрытие(ВыбранныйПериод, ДополнительныеПараметры) Экспорт diff --git a/SSL/src/DocumentJournals/Взаимодействия/Взаимодействия.mdo b/SSL/src/DocumentJournals/Взаимодействия/Взаимодействия.mdo index 24011efea..27ffa9213 100644 --- a/SSL/src/DocumentJournals/Взаимодействия/Взаимодействия.mdo +++ b/SSL/src/DocumentJournals/Взаимодействия/Взаимодействия.mdo @@ -251,6 +251,16 @@ <references>Document.СообщениеSMS.Attribute.ДатаАктуальностиОтправки</references> <references>Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаАктуальностиОтправки</references> </columns> + <columns uuid="8be10d88-8c37-4444-9c89-6cbbe9913bda"> + <name>ИдентификаторСообщения</name> + <synonym> + <key>ru</key> + <value>Идентификатор сообщения</value> + </synonym> + <indexing>Index</indexing> + <references>Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения</references> + <references>Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения</references> + </columns> <forms uuid="27089e8e-2c75-431c-b808-5d4dcba3cdca"> <name>ФормаСписка</name> <synonym> @@ -316,6 +326,20 @@ <usePurposes>PersonalComputer</usePurposes> <usePurposes>MobileDevice</usePurposes> </forms> + <forms uuid="cb1d4a41-20a9-4d76-8798-d47d8858bff1"> + <name>ВыборТипаПредмета</name> + <synonym> + <key>ru</key> + <value>Выбор типа предмета</value> + </synonym> + <help> + <pages> + <lang>ru</lang> + </pages> + </help> + <usePurposes>PersonalComputer</usePurposes> + <usePurposes>MobileDevice</usePurposes> + </forms> <templates uuid="a2b4110b-4d9c-40fd-ab46-bfa08d2eb993"> <name>СхемаОтборВзаимодействия</name> <synonym> diff --git a/SSL/src/DocumentJournals/СогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Form.form b/SSL/src/DocumentJournals/СогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Form.form index 485d23cef..96affa525 100644 --- a/SSL/src/DocumentJournals/СогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Form.form +++ b/SSL/src/DocumentJournals/СогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ <key>ru</key> <value>Группа пользовательских настроек</value> - false СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка 2 @@ -79,6 +78,7 @@ Left true + 9 true true @@ -414,6 +414,10 @@ 5 Left + + OnActivateRow + СписокПриАктивизацииСтроки + СписокСтрокаПоиска 7 diff --git a/SSL/src/DocumentJournals/СогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Module.bsl b/SSL/src/DocumentJournals/СогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Module.bsl index 9b62e54a2..9ecabc843 100644 --- a/SSL/src/DocumentJournals/СогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/DocumentJournals/СогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Module.bsl @@ -1,13 +1,18 @@ - #Область ОбработчикиСобытийФормы &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; + Если Параметры.Свойство("ИстекшиеСогласия") Тогда + ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(Список, "Ссылка", Параметры.ИстекшиеСогласия, ВидСравненияКомпоновкиДанных.ВСписке); + КонецЕсли; + // СтандартныеПодсистемы.Печать УправлениеПечатью.ПриСозданииНаСервере(ЭтотОбъект, Элементы.ФормаКоманднаяПанель); // Конец СтандартныеПодсистемы.Печать @@ -16,6 +21,19 @@ #КонецОбласти +#Область ОбработчикиСобытийЭлементовТаблицыФормыСписок + +&НаКлиенте +Процедура СписокПриАктивизацииСтроки(Элемент) + + // СтандартныеПодсистемы.Печать + УправлениеПечатьюКлиент.НачатьОбновлениеКоманд(ЭтотОбъект); + // Конец СтандартныеПодсистемы.Печать + +КонецПроцедуры + +#КонецОбласти + #Область ОбработчикиКомандФормы // СтандартныеПодсистемы.Печать @@ -28,3 +46,25 @@ // Конец СтандартныеПодсистемы.Печать #КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Процедура УстановитьУсловноеОформление() + + СтандартныеПодсистемыСервер.УстановитьУсловноеОформлениеПоляДата(ЭтотОбъект, "Список.Дата", Элементы.Дата.Имя); + +КонецПроцедуры + +// СтандартныеПодсистемы.Печать +&НаКлиенте +Процедура Подключаемый_ОбновитьКоманды() + + УправлениеПечатьюКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Элементы.Список); + +КонецПроцедуры + +// Конец СтандартныеПодсистемы.Печать + +#КонецОбласти + diff --git a/SSL/src/Documents/Анкета/Forms/ФормаДокумента/Form.form b/SSL/src/Documents/Анкета/Forms/ФормаДокумента/Form.form index a15f9638b..bc1a77a1d 100644 --- a/SSL/src/Documents/Анкета/Forms/ФормаДокумента/Form.form +++ b/SSL/src/Documents/Анкета/Forms/ФормаДокумента/Form.form @@ -1,24 +1,27 @@ - ГруппаКнопкиШапка - 81 - - СкрытьПоказатьДеревоРазделов - 80 - - <key>ru</key> - <value>Скрыть разделы</value> - + КоманднаяПанельШапка + 182 + + ФормаГруппаКомандыФормы + 190 true true true - false + + <key>ru</key> + <value>Команды формы</value> + + + ru + Команды формы + - СкрытьПоказатьДеревоРазделовExtendedTooltip - 128 + ФормаГруппаКомандыФормыРасширеннаяПодсказка + 191 Label true true @@ -26,14 +29,9 @@ Left - UsualButton - Form.Command.СкрытьПоказатьДеревоРазделов - Normal - Auto - true - true - UserCmds - Auto + + Form + ФормаКоманднаяПанельПровестиИЗакрыть @@ -54,31 +52,25 @@ Left - UsualButton Form.StandardCommand.PostAndClose - Normal Auto + true true true UserCmds Auto - ФормаЗаполненияПровестиЗакрыть - 92 - - <key>ru</key> - <value>Завершить и закрыть</value> - + Провести + 192 true true true - false - ФормаЗаполненияПровестиЗакрытьExtendedTooltip - 115 + ПровестиРасширеннаяПодсказка + 193 Label true true @@ -86,10 +78,9 @@ Left - UsualButton - Form.Command.ФормаЗаполненияПровестиЗакрыть + Form.StandardCommand.Post Normal - PictureAndText + Picture true true UserCmds @@ -118,9 +109,42 @@ Left - UsualButton Form.Command.ФормаЗаполненияЗаписать Normal + Picture + true + true + UserCmds + + StdPicture.Write + + Auto + + + ФормаЗаполненияПровестиЗакрыть + 92 + + <key>ru</key> + <value>Завершить и закрыть</value> + + true + true + + true + + false + + ФормаЗаполненияПровестиЗакрытьExtendedTooltip + 115 + Label + true + true + + Left + + + Form.Command.ФормаЗаполненияПровестиЗакрыть + Normal PictureAndText true true @@ -146,31 +170,36 @@ Left - UsualButton Form.StandardCommand.Write Normal - Auto + Picture true true UserCmds + + StdPicture.Write + Auto - - ФормаЗакрыть - 88 + + ФормаГлобальныеКоманды + 186 + true + true + + true + <key>ru</key> - <value>Закрыть</value> + <value>Форма глобальные команды</value> - true - true - - true - - false + + ru + Форма глобальные команды + - ФормаЗакрытьExtendedTooltip - 117 + ФормаГлобальныеКомандыРасширеннаяПодсказка + 187 Label true true @@ -178,62 +207,29 @@ Left - UsualButton - Form.StandardCommand.Close - Normal - true - true - UserCmds - Auto - - - ДекорацияКнопкиШапка - 82 - true - true - - true - - - ДекорацияКнопкиШапкаExtendedTooltip - 129 - Label - true - true - - Left - - - - ДекорацияКнопкиШапкаКонтекстноеМеню - 83 - true - - Label - true - true - true - false - - Left + + FormCommandPanelGlobalCommands - - ПредыдущийРаздел - 84 - - <key>ru</key> - <value>< Назад</value> - + + ПодменюПечать + 188 true true true - false + + <key>ru</key> + <value>Печать</value> + + + ru + Команды печати + - ПредыдущийРазделExtendedTooltip - 130 + ПодменюПечатьРасширеннаяПодсказка + 189 Label true true @@ -241,32 +237,54 @@ Left - UsualButton - Form.Command.ПредыдущийРаздел - Normal - Auto - 10 - true - true - UserCmds - Auto + Popup + + + StdPicture.Print + + Auto + Normal + + + + ГруппаПодключаемыеКоманды + 204 + true + true + + true + + + <key>ru</key> + <value>Группа подключаемые команды</value> + + + ru + Группа для размещения подключаемых команд + + + ГруппаПодключаемыеКомандыРасширеннаяПодсказка + 205 + Label + true + true + + Left + + + - СледующийРаздел - 85 - - <key>ru</key> - <value>Далее ></value> - + ПоказатьВСпискеАнкета + 194 true true true - false - СледующийРазделExtendedTooltip - 131 + ПоказатьВСпискеАнкетаРасширеннаяПодсказка + 195 Label true true @@ -274,15 +292,14 @@ Left - UsualButton - Form.Command.СледующийРаздел + Form.StandardCommand.ShowInList Normal Auto - 10 true true UserCmds Auto + InAdditionalSubmenu Справка @@ -303,7 +320,6 @@ Left - UsualButton Form.StandardCommand.Help Normal Picture @@ -320,15 +336,15 @@ <key>ru</key> - <value>Группа кнопки шапка</value> + <value>Командная панель шапка</value> ru - Группа кнопки шапка + Командная панель шапка - ГруппаКнопкиШапкаExtendedTooltip - 127 + КоманднаяПанельШапкаРасширеннаяПодсказка + 183 Label true true @@ -336,35 +352,152 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + CommandBar + + Left ГруппаОсновныеРеквизиты 15 - ГруппаНомерДата - 2 + ГруппаШапкаЛево + 184 + + ГруппаНомерДата + 2 + + Номер + 3 + true + true + + true + + + Объект.Number + + + НомерExtendedTooltip + 121 + Label + true + true + + Left + + + + НомерКонтекстноеМеню + 4 + true + + InputField + Auto + true + Left + true + + 10 + true + true + false + true + true + true + true + Normal + + + + Дата + 5 + true + true + + true + + + Объект.Date + + + ДатаExtendedTooltip + 122 + Label + true + true + + Left + + + + ДатаКонтекстноеМеню + 6 + true + + InputField + Auto + true + Left + true + + 14 + true + true + false + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа номер дата</value> + + + ru + Группа номер дата + + + ГруппаНомерДатаExtendedTooltip + 120 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + - Номер - 3 + РежимАнкетирования + 212 true true true - Объект.Number + Объект.РежимАнкетирования - НомерExtendedTooltip - 121 + РежимАнкетированияРасширеннаяПодсказка + 214 Label true true @@ -373,20 +506,19 @@ - НомерКонтекстноеМеню - 4 + РежимАнкетированияКонтекстноеМеню + 213 true InputField - Auto + true + Enter true Left true - 10 true true - false true true true @@ -394,131 +526,6 @@ Normal - - Дата - 5 - true - true - - true - - - Объект.Date - - - ДатаExtendedTooltip - 122 - Label - true - true - - Left - - - - ДатаКонтекстноеМеню - 6 - true - - InputField - Auto - true - Left - true - - 14 - true - true - false - true - true - true - true - Normal - - - - Респондент - 12 - true - true - - true - - - Объект.Респондент - - - РеспондентExtendedTooltip - 126 - Label - true - true - - Left - - - - РеспондентКонтекстноеМеню - 13 - true - - InputField - Auto - true - Left - true - - - StartChoice - РеспондентНачалоВыбора - - 30 - true - true - false - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Группа номер дата</value> - - - ru - Группа номер дата - - - ГруппаНомерДатаExtendedTooltip - 120 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаРеквизитыОсновное - 37 Опрос 10 @@ -551,7 +558,7 @@ Left true - 40 + 29 true true false @@ -562,6 +569,83 @@ Normal + + ШаблонАнкеты + 206 + true + true + + true + + + Объект.ШаблонАнкеты + + + ШаблонАнкетыРасширеннаяПодсказка + 208 + Label + true + true + + Left + + + + ШаблонАнкетыКонтекстноеМеню + 207 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа шапка лево</value> + + + ru + Группа шапка лево + + + ГруппаШапкаЛевоРасширеннаяПодсказка + 185 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаШапкаПраво + 37 ДатаРедактирования 66 @@ -605,6 +689,95 @@ Normal + + Респондент + 12 + true + true + + true + + + Объект.Респондент + + Left + + РеспондентExtendedTooltip + 126 + Label + true + true + + Left + + + + РеспондентКонтекстноеМеню + 13 + true + + InputField + Auto + true + Left + true + + + StartChoice + РеспондентНачалоВыбора + + 24 + true + true + false + true + true + true + true + Normal + + + + Интервьюер + 209 + true + true + + true + + + Объект.Интервьюер + + + ИнтервьюерРасширеннаяПодсказка + 211 + Label + true + true + + Left + + + + ИнтервьюерКонтекстноеМеню + 210 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + true true @@ -612,14 +785,14 @@ <key>ru</key> - <value>Группа реквизиты основное</value> + <value>Группа шапка право</value> ru - Группа реквизиты основное + Группа шапка право - ГруппаРеквизитыОсновноеExtendedTooltip + ГруппаШапкаПравоРасширеннаяПодсказка 124 Label true @@ -630,6 +803,7 @@ UsualGroup + Vertical Auto true true @@ -662,7 +836,6 @@ UsualGroup - Vertical Auto true true @@ -674,8 +847,8 @@ ГруппаЗаполнение 158 - ГруппаКнопкиДокументАнкета - 154 + КоманднаяПанельДокументАнкетаЛево + 178 СкрытьПоказатьДеревоРазделовДокумент 156 @@ -698,7 +871,6 @@ Left - UsualButton Form.Command.СкрытьПоказатьДеревоРазделов Normal Auto @@ -707,40 +879,39 @@ UserCmds Auto - - ДекорацияКнопкиДокумент - 160 - true - true - - true - - - ДекорацияКнопкиДокументРасширеннаяПодсказка - 162 - Label - true - true - - Left - - - - ДекорацияКнопкиДокументКонтекстноеМеню - 161 - true - + true + true + + true + + + <key>ru</key> + <value>Командная панель документ анкета лево</value> + + + ru + Командная панель документ анкета лево + + + КоманднаяПанельДокументАнкетаЛевоРасширеннаяПодсказка + 179 Label true true - true - false Left - + + CommandBar + + Left + + + + КоманднаяПанельДокументаАнкетаПраво + 180 - ПредыдущийРазделДокумент + ПредыдущийРаздел 163 true true @@ -748,7 +919,7 @@ true - ПредыдущийРазделДокументРасширеннаяПодсказка + ПредыдущийРазделРасширеннаяПодсказка 164 Label true @@ -757,7 +928,6 @@ Left - UsualButton Form.Command.ПредыдущийРаздел Normal Auto @@ -768,7 +938,7 @@ Auto - СледующийРазделДокумент + СледующийРаздел 165 <key>ru</key> @@ -780,7 +950,7 @@ <common>true</common> </userVisible> <extendedTooltip> - <name>СледующийРазделДокументРасширеннаяПодсказка</name> + <name>СледующийРазделРасширеннаяПодсказка</name> <id>166</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> @@ -789,7 +959,6 @@ <horizontalAlign>Left</horizontalAlign> </extInfo> </extendedTooltip> - <type>UsualButton</type> <commandName>Form.Command.СледующийРаздел</commandName> <buttonImportance>Normal</buttonImportance> <representation>Auto</representation> @@ -804,13 +973,17 @@ <userVisible> <common>true</common> </userVisible> + <title> + <key>ru</key> + <value>Командная панель документа анкета право</value> + ru - Группа кнопки документ анкета + Командная панель документа анкета право - ГруппаКнопкиДокументАнкетаРасширеннаяПодсказка - 155 + КоманднаяПанельДокументаАнкетаПравоРасширеннаяПодсказка + 181 Label true true @@ -818,13 +991,9 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + CommandBar + + Right true @@ -852,7 +1021,6 @@ UsualGroup - Vertical Auto true true @@ -1132,10 +1300,6 @@ ru Группа дерево разделов - - ru - Группа дерево разделов - 30 false true @@ -1226,76 +1390,6 @@ ГруппаОжидание 95 - - ГруппаОжиданиеОтступ - 102 - - ДекорацияОжиданиеОтступ - 104 - true - true - - true - - - ДекорацияОжиданиеОтступExtendedTooltip - 144 - Label - true - true - - Left - - - - ДекорацияОжиданиеОтступКонтекстноеМеню - 105 - true - - Label - true - 5 - true - false - false - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа ожидание отступ</value> - - - ru - Группа ожидание отступ - - true - - ГруппаОжиданиеОтступExtendedTooltip - 143 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - ГруппаОжиданиеЭлементы 103 @@ -1306,7 +1400,6 @@ ru Декорация ожидание элементы - true true true @@ -1326,10 +1419,8 @@ 97 true - 20 true true - true false @@ -1361,9 +1452,7 @@ 99 true - 5 true - 2 true false false @@ -1379,7 +1468,7 @@ 100 <key>ru</key> - <value>Подождите пожалуйста… Открывается раздел анкеты + <value>Подождите пожалуйста… Открывается раздел анкеты </value> true @@ -1404,7 +1493,6 @@ Label 20 - true 2 true false @@ -1423,10 +1511,6 @@ ru Группа ожидание элементы - - ru - Группа ожидание элементы - true ГруппаОжиданиеЭлементыExtendedTooltip @@ -1456,11 +1540,6 @@ ru Группа ожидание - - ru - Группа ожидание - - false true ГруппаОжиданиеРасширеннаяПодсказка @@ -1475,6 +1554,8 @@ UsualGroup Vertical + Center + Center Auto WeakSeparation true @@ -1492,11 +1573,6 @@ ru Группа дерево разделов форма заполнения - - ru - Группа дерево разделов форма заполнения - - true ГруппаДеревоРазделовФормаЗаполненияExtendedTooltip 132 @@ -1518,40 +1594,8 @@ - ГруппаКнопкиПодвал - 106 - - ДекорацияКнопкиПодвал - 109 - true - true - - true - - - ДекорацияКнопкиПодвалExtendedTooltip - 150 - Label - true - true - - Left - - - - ДекорацияКнопкиПодвалКонтекстноеМеню - 110 - true - - Label - true - true - true - false - - Left - - + КоманднаяПанельПодвал + 176 ПредыдущийРазделПодвал 107 @@ -1575,7 +1619,6 @@ Left - UsualButton Form.Command.ПредыдущийРаздел Normal Auto @@ -1608,7 +1651,6 @@ Left - UsualButton Form.Command.СледующийРаздел Normal Auto @@ -1625,12 +1667,15 @@ <key>ru</key> - <value>Группа кнопки подвал</value> + <value>Командная панель подвал</value> - false + + ru + Командная панель подвал + - ГруппаКнопкиПодвалExtendedTooltip - 149 + КоманднаяПанельПодвалРасширеннаяПодсказка + 177 Label true true @@ -1638,13 +1683,9 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + CommandBar + + Right @@ -1684,7 +1725,6 @@ StartChoice КомментарийНачалоВыбора - true 2 true false @@ -1696,6 +1736,8 @@ Normal + None + false ФормаКоманднаяПанель -1 @@ -1713,6 +1755,9 @@ OnCreateAtServer ПриСозданииНаСервере + Copy + CustomizeForm + Delete DontBlock true true @@ -1940,6 +1985,23 @@ true + + ВидПереключателя + + <key>ru</key> + <value>Вид переключателя</value> + + 7 + + EnumRef.ВидыПереключателяВАнкетах + + + true + + + true + + ТаблицаВопросовРаздела @@ -2294,9 +2356,7 @@ 20 String - - 300 - + true @@ -2364,6 +2424,75 @@ true + + СоставКомплексногоВопроса + + <key>ru</key> + <value>Состав комплексного вопроса</value> + + 23 + + ValueTable + + + true + + + true + + + + Подсказка + + <key>ru</key> + <value>Подсказка</value> + + 24 + + String + + + + true + + + true + + + + СпособОтображенияПодсказки + + <key>ru</key> + <value>Способ отображения подсказки</value> + + 25 + + EnumRef.СпособыОтображенияПодсказок + + + true + + + true + + + + ВидПереключателя + + <key>ru</key> + <value>Вид переключателя</value> + + 26 + + EnumRef.ВидыПереключателяВАнкетах + + + true + + + true + + ТаблицаВопросовРаздела.СоставТабличногоВопроса @@ -2465,6 +2594,85 @@ + + + ТаблицаВопросовРаздела.СоставКомплексногоВопроса + + + ЭлементарныйВопрос + + <key>ru</key> + <value>Элементарный вопрос</value> + + 1 + + ChartOfCharacteristicTypesRef.ВопросыДляАнкетирования + + + true + + + true + + + + НомерСтроки + + <key>ru</key> + <value>Номер строки</value> + + 2 + + Number + + 10 + + + + true + + + true + + + + ТребуетсяКомментарий + + <key>ru</key> + <value>Требуется комментарий</value> + + 3 + + Boolean + + + true + + + true + + + + ПояснениеКомментария + + <key>ru</key> + <value>Пояснение комментария</value> + + 4 + + String + + 150 + + + + true + + + true + + + ВариантыОтветовНаВопросы @@ -2912,6 +3120,21 @@ true + + ПараметрыПодключаемыхКоманд + + <key>ru</key> + <value>Параметры подключаемых команд</value> + + 20 + + + true + + + true + + ФормаЗаполненияЗаписать @@ -3047,6 +3270,10 @@ <commandBar/> </commandInterface> <extInfo xsi:type="form:DocumentFormExtInfo"> + <handlers> + <event>OnReadAtServer</event> + <name>ПриЧтенииНаСервере</name> + </handlers> <repostOnWrite>true</repostOnWrite> </extInfo> </form:Form> diff --git a/SSL/src/Documents/Анкета/Forms/ФормаДокумента/Module.bsl b/SSL/src/Documents/Анкета/Forms/ФормаДокумента/Module.bsl index 08a681593..a6b23ffa2 100644 --- a/SSL/src/Documents/Анкета/Forms/ФормаДокумента/Module.bsl +++ b/SSL/src/Documents/Анкета/Forms/ФормаДокумента/Module.bsl @@ -21,67 +21,91 @@ ПозиционированиеНаРазделе = Ложь; - Если НЕ Объект.Опрос.Пустая() Тогда + Если Объект.РежимАнкетирования = Перечисления.РежимыАнкетирования.Интервью Тогда - РеквизитыОпрос = ПолучитьЗначенияРеквизитовНазначениеОпроса(Объект.Опрос); - УстановитьЗначенияРеквизитовСогласноОпросу(РеквизитыОпрос); + Если НЕ Объект.ШаблонАнкеты.Пустая() Тогда + РеквизитыОпрос = ЗначенияРеквизитовШаблонаАнкеты(Объект.ШаблонАнкеты); + УстановитьЗначенияРеквизитовСогласноОпросу(РеквизитыОпрос); + КонецЕсли; - Если Не ШаблонАнкеты.Пустая() Тогда - - Если Параметры.Свойство("ТолькоФормаЗаполнения") Тогда - АвтоЗаголовок = Ложь; - УстановитьЗаголовкиНадписей(РеквизитыОпрос); - КонецЕсли; - - Анкетирование.УстановитьЭлементДереваРазделовАнкетыВступлениеЗаключение(ДеревоРазделов,"Вступление"); - Анкетирование.ЗаполнитьДеревоРазделов(ЭтотОбъект,ДеревоРазделов); - Анкетирование.УстановитьЭлементДереваРазделовАнкетыВступлениеЗаключение(ДеревоРазделов,"Заключение"); - АнкетированиеКлиентСервер.СформироватьНумерациюДерева(ДеревоРазделов,Истина); - - Если (НЕ Объект.Проведен) И ЗначениеЗаполнено(Объект.РедактируемыйРаздел) Тогда - - Если ТипЗнч(Объект.РедактируемыйРаздел) = Тип("СправочникСсылка.ВопросыШаблонаАнкеты") Тогда - - НомерТекущегоРаздела = АнкетированиеКлиентСервер.НайтиСтрокуВДанныхФормыДерево(ДеревоРазделов,Объект.РедактируемыйРаздел,"Ссылка",Истина); - - Иначе - - НомерТекущегоРаздела = АнкетированиеКлиентСервер.НайтиСтрокуВДанныхФормыДерево(ДеревоРазделов,Объект.РедактируемыйРаздел,"ТипСтроки",Истина); - - КонецЕсли; - - Если НомерТекущегоРаздела >= 0 Тогда - - Элементы.ДеревоРазделов.ТекущаяСтрока = НомерТекущегоРаздела; - ПостроениеФормыСогласноРаздела(); - ПозиционированиеНаРазделе = Истина; - - КонецЕсли; - - КонецЕсли; - - Иначе - - Отказ = Истина; - Возврат; - + Если Параметры.Свойство("ВозможностьПредварительногоСохранения") Тогда + ВозможностьПредварительногоСохранения = Параметры.ВозможностьПредварительногоСохранения; + КонецЕсли; + + Иначе + + Если НЕ Объект.Опрос.Пустая() Тогда + РеквизитыОпрос = ПолучитьЗначенияРеквизитовНазначениеОпроса(Объект.Опрос); + УстановитьЗначенияРеквизитовСогласноОпросу(РеквизитыОпрос); КонецЕсли; КонецЕсли; + Если Не ШаблонАнкеты.Пустая() Тогда + + Если Параметры.Свойство("ТолькоФормаЗаполнения") Тогда + АвтоЗаголовок = Ложь; + УстановитьЗаголовкиНадписей(РеквизитыОпрос); + КонецЕсли; + + Анкетирование.УстановитьЭлементДереваРазделовАнкетыВступлениеЗаключение(ДеревоРазделов,"Вступление"); + Анкетирование.ЗаполнитьДеревоРазделов(ЭтотОбъект,ДеревоРазделов); + Анкетирование.УстановитьЭлементДереваРазделовАнкетыВступлениеЗаключение(ДеревоРазделов,"Заключение"); + АнкетированиеКлиентСервер.СформироватьНумерациюДерева(ДеревоРазделов,Истина); + + Если (НЕ Объект.Проведен) И ЗначениеЗаполнено(Объект.РедактируемыйРаздел) Тогда + + Если ТипЗнч(Объект.РедактируемыйРаздел) = Тип("СправочникСсылка.ВопросыШаблонаАнкеты") Тогда + + НомерТекущегоРаздела = АнкетированиеКлиентСервер.НайтиСтрокуВДанныхФормыДерево(ДеревоРазделов,Объект.РедактируемыйРаздел,"Ссылка",Истина); + + Иначе + + НомерТекущегоРаздела = АнкетированиеКлиентСервер.НайтиСтрокуВДанныхФормыДерево(ДеревоРазделов,Объект.РедактируемыйРаздел,"ТипСтроки",Истина); + + КонецЕсли; + + КонецЕсли; + + Если НомерТекущегоРаздела >= 0 Тогда + + Элементы.ДеревоРазделов.ТекущаяСтрока = НомерТекущегоРаздела; + ПостроениеФормыСогласноРаздела(); + ПозиционированиеНаРазделе = Истина; + + КонецЕсли; + + Иначе + + Отказ = Истина; + Возврат; + + КонецЕсли; + + Элементы.ПредыдущийРазделПодвал.Видимость = Ложь; Элементы.СледующийРазделПодвал.Видимость = Ложь; - Если Не ПозиционированиеНаРазделе Тогда - АнкетированиеКлиентСервер.ПереключитьВидимостьГруппТелаАнкеты(ЭтотОбъект, Истина); - КонецЕсли; ДействияВЗависимостиОтВидаФормы(); Элементы.ГруппаДеревоРазделов.Видимость = Ложь; ЗаголовокКомандаРазделы = НСтр("ru = 'Показать разделы'"); - Элементы.СкрытьПоказатьДеревоРазделов.Заголовок = ЗаголовокКомандаРазделы; Элементы.СкрытьПоказатьДеревоРазделовДокумент.Заголовок = ЗаголовокКомандаРазделы; - Элементы.ДекорацияОжиданиеЭлементы.Ширина = 45; + + ИзменитьВидимостьЭлементовФормы(ЭтотОбъект); + + // СтандартныеПодсистемы.ПодключаемыеКоманды + ПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект, , Истина); + // Конец СтандартныеПодсистемы.ПодключаемыеКоманды + +КонецПроцедуры + +&НаСервере +Процедура ПриЧтенииНаСервере(ТекущийОбъект) + + // СтандартныеПодсистемы.ПодключаемыеКоманды + ПодключаемыеКомандыКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Объект); + // Конец СтандартныеПодсистемы.ПодключаемыеКоманды КонецПроцедуры @@ -95,10 +119,14 @@ УправлениеДоступностьюПодчиненныеВопросы(Ложь); КонецЕсли; + // СтандартныеПодсистемы.ПодключаемыеКоманды + ПодключаемыеКомандыКлиент.НачатьОбновлениеКоманд(ЭтотОбъект); + // Конец СтандартныеПодсистемы.ПодключаемыеКоманды + КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Если Элементы.ГруппаТелоАнкеты.ТолькоПросмотр Тогда Модифицированность = Ложь; @@ -175,6 +203,7 @@ КонецПроцедуры + #КонецОбласти #Область ОбработчикиКомандФормы @@ -256,29 +285,30 @@ Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ - | ВнешнийИсточник.Вопрос КАК Вопрос, - | ВнешнийИсточник.ЭлементарныйВопрос КАК ЭлементарныйВопрос, - | ВнешнийИсточник.НомерЯчейки КАК НомерЯчейки, - | ВнешнийИсточник.Ответ КАК Ответ, - | ВнешнийИсточник.ОткрытыйОтвет КАК ОткрытыйОтвет - |ПОМЕСТИТЬ ТаблицаОтветов - |ИЗ - | &ВнешнийИсточник КАК ВнешнийИсточник - |ГДЕ - | ВнешнийИсточник.Вопрос В(&ВопросыРаздела) - |; - | - |//////////////////////////////////////////////////////////////////////////////// - |ВЫБРАТЬ - | ТаблицаОтветов.Вопрос КАК Вопрос, - | ТаблицаОтветов.ЭлементарныйВопрос КАК ЭлементарныйВопрос, - | ТаблицаОтветов.НомерЯчейки КАК НомерЯчейки, - | ТаблицаОтветов.Ответ КАК Ответ, - | ТаблицаОтветов.ОткрытыйОтвет КАК ОткрытыйОтвет - |ИЗ - | ТаблицаОтветов КАК ТаблицаОтветов - |ИТОГИ ПО - | Вопрос"; + | ВнешнийИсточник.Вопрос КАК Вопрос, + | ВЫРАЗИТЬ(ВнешнийИсточник.ЭлементарныйВопрос КАК ПланВидовХарактеристик.ВопросыДляАнкетирования) КАК ЭлементарныйВопрос, + | ВнешнийИсточник.НомерЯчейки КАК НомерЯчейки, + | ВнешнийИсточник.Ответ КАК Ответ, + | ВнешнийИсточник.ОткрытыйОтвет КАК ОткрытыйОтвет + |ПОМЕСТИТЬ ТаблицаОтветов + |ИЗ + | &ВнешнийИсточник КАК ВнешнийИсточник + |ГДЕ + | ВнешнийИсточник.Вопрос В(&ВопросыРаздела) + |; + | + |//////////////////////////////////////////////////////////////////////////////// + |ВЫБРАТЬ + | ТаблицаОтветов.Вопрос КАК Вопрос, + | ТаблицаОтветов.ЭлементарныйВопрос КАК ЭлементарныйВопрос, + | ТаблицаОтветов.НомерЯчейки КАК НомерЯчейки, + | ТаблицаОтветов.Ответ КАК Ответ, + | ТаблицаОтветов.ОткрытыйОтвет КАК ОткрытыйОтвет, + | ТаблицаОтветов.ЭлементарныйВопрос.ТребуетсяКомментарий КАК ТребуетОткрытогоОтвета + |ИЗ + | ТаблицаОтветов КАК ТаблицаОтветов + |ИТОГИ ПО + | Вопрос"; Запрос.УстановитьПараметр("ВнешнийИсточник",Объект.Состав.Выгрузить()); Запрос.УстановитьПараметр("ВопросыРаздела",ТаблицаВопросовРаздела.Выгрузить().ВыгрузитьКолонку("ВопросШаблона")); @@ -295,9 +325,7 @@ КонецЦикла; КонецЕсли; - - Анкетирование.УстановитьЗначенияРеквизитовВариантОтветаОдинИз(ЭтотОбъект); - + КонецПроцедуры // Анализирует тип вопроса и вызывает соответствующие процедуры для установки значений реквизита. @@ -317,6 +345,9 @@ НайденнаяСтрока = НайденныеСтроки[0]; Если НайденнаяСтрока.ТипВопроса = Перечисления.ТипыВопросовШаблонаАнкеты.Табличный Тогда УстановитьЗначениеРеквизитаТабличныйВопрос(ВопросШаблона,ВыборкаВопрос,НайденнаяСтрока); + УстановитьЗначенияРеквизитаКомплексныйВопрос(ВопросШаблона,ВыборкаВопрос,НайденнаяСтрока); + ИначеЕсли НайденнаяСтрока.ТипВопроса = Перечисления.ТипыВопросовШаблонаАнкеты.Комплексный Тогда + УстановитьЗначенияРеквизитаКомплексныйВопрос(ВопросШаблона,ВыборкаВопрос,НайденнаяСтрока); Иначе УстановитьЗначениеРеквизитаПростойВопрос(ВопросШаблона,ВыборкаВопрос,НайденнаяСтрока); КонецЕсли; @@ -430,6 +461,10 @@ Пока ВыборкаВопрос.Следующий() Цикл + Если МассивВопросы.Найти(ВыборкаВопрос.ЭлементарныйВопрос) = Неопределено Тогда + Продолжить; + КонецЕсли; + Если ВыборкаВопрос.НомерЯчейки > Таблица.Количество() Тогда ДобавитьСтрокиВТаблицу(Таблица,ВыборкаВопрос.НомерЯчейки - Таблица.Количество()); КонецЕсли; @@ -542,6 +577,70 @@ КонецПроцедуры +// Устанавливает значения реквизитов комплексного вопроса. +// +// Параметры: +// Вопрос - СправочникСсылка.ВопросыШаблонаАнкет - вопрос шаблона анкеты, +// для которого устанавливаются значения реквизитов. +// ВыборкаВопрос - ВыборкаИзРезультатаЗапроса - выборка, содержащая значения ответов +// на вопрос шаблона анкеты. +// СтрокаДерева - СтрокаДереваЗначений - строка дерева значений, содержащая данные вопроса шаблона анкеты. +&НаСервере +Процедура УстановитьЗначенияРеквизитаКомплексныйВопрос(Вопрос,ВыборкаВопрос,СтрокаДерева); + + ИмяВопроса = АнкетированиеКлиентСервер.ПолучитьИмяВопроса(СтрокаДерева.КлючСтроки); + + МассивВопросы = СтрокаДерева.СоставКомплексногоВопроса.Выгрузить().ВыгрузитьКолонку("ЭлементарныйВопрос"); + + ВыборкаВопрос.Сбросить(); + Пока ВыборкаВопрос.Следующий() Цикл + + Если МассивВопросы.Найти(ВыборкаВопрос.ЭлементарныйВопрос) = Неопределено Тогда + Продолжить; + КонецЕсли; + + СтрокиВопроса = СтрокаДерева.СоставКомплексногоВопроса.НайтиСтроки(Новый Структура("ЭлементарныйВопрос", ВыборкаВопрос.ЭлементарныйВопрос)); + текНомерСтроки = СтрокиВопроса[0].НомерСтроки; + + ИмяРеквизита = ИмяВопроса + "_Ответ_" + Формат(текНомерСтроки, "ЧГ="); + + Если ВыборкаВопрос.ЭлементарныйВопрос.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз Тогда + + ВариантыОтветовНаВопрос = Анкетирование.ПолучитьВариантыОтветовНаВопрос(ВыборкаВопрос.ЭлементарныйВопрос,ЭтотОбъект); + + ПараметрыОтвета = НайтиОтветВМассиве(ВыборкаВопрос.Ответ,ВариантыОтветовНаВопрос); + + Если ПараметрыОтвета <> Неопределено Тогда + ЭтотОбъект[ИмяРеквизита + "_Реквизит_" + ПараметрыОтвета.ПорядковыйНомерРеквизита] = Истина; + Если ПараметрыОтвета.ТребуетОткрытогоОтвета Тогда + + ЭтотОбъект[ИмяРеквизита + "_Комментарий_" + ПараметрыОтвета.ПорядковыйНомерРеквизита] = ВыборкаВопрос.ОткрытыйОтвет; + + КонецЕсли; + КонецЕсли; + + Иначе + + Если ВыборкаВопрос.ЭлементарныйВопрос.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.Текст Тогда + + ЭтотОбъект[ИмяРеквизита] = ВыборкаВопрос.ОткрытыйОтвет; + + Иначе + + ЭтотОбъект[ИмяРеквизита] = ВыборкаВопрос.Ответ; + + Если (ВыборкаВопрос.ТребуетОткрытогоОтвета) Тогда + ЭтотОбъект[ИмяВопроса + "_Комментарий_" + Формат(текНомерСтроки, "ЧГ=")] = ВыборкаВопрос.ОткрытыйОтвет; + КонецЕсли; + + КонецЕсли; + + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Преобразование результатов заполнения анкеты в табличную часть документа. @@ -558,6 +657,7 @@ ДокументОбъект = РеквизитФормыВЗначение("Объект"); ДокументОбъект.ДатаРедактирования = ТекущаяДатаСеанса(); ДокументОбъект.Записать(РежимЗаписи); + Если РежимЗаписи = РежимЗаписиДокумента.Запись Тогда ЗначениеВРеквизитФормы(ДокументОбъект,"Объект"); Модифицированность = Ложь; @@ -603,6 +703,8 @@ Если СтрокаТаблицы.ТипВопроса = Перечисления.ТипыВопросовШаблонаАнкеты.Табличный Тогда ЗаполнитьТаблицуОтветовТабличныйВопрос(СтрокаТаблицы); + ИначеЕсли СтрокаТаблицы.ТипВопроса = Перечисления.ТипыВопросовШаблонаАнкеты.Комплексный Тогда + ЗаполнитьОтветыКомплексныйВопрос(СтрокаТаблицы); Иначе ЗаполнитьОтветПростойВопрос(СтрокаТаблицы); КонецЕсли; @@ -888,6 +990,56 @@ КонецПроцедуры +&НаСервере +Процедура ЗаполнитьОтветыКомплексныйВопрос(СтрокаДерева) + + ИмяВопроса = АнкетированиеКлиентСервер.ПолучитьИмяВопроса(СтрокаДерева.КлючСтроки); + + Для каждого СтрокаКомплексногоВопроса Из СтрокаДерева.СоставКомплексногоВопроса Цикл + + ИмяРеквизита = ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="); + + Если СтрокаКомплексногоВопроса.ЭлементарныйВопрос.ТипОтвета <> Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз Тогда + + НоваяСтрока = Объект.Состав.Добавить(); + НоваяСтрока.Вопрос = СтрокаДерева.ВопросШаблона; + НоваяСтрока.ЭлементарныйВопрос = СтрокаКомплексногоВопроса.ЭлементарныйВопрос; + НоваяСтрока.Ответ = ЭтотОбъект[ИмяРеквизита]; + Если СтрокаКомплексногоВопроса.ТребуетсяКомментарий Тогда + НоваяСтрока.ОткрытыйОтвет = ЭтотОбъект[ИмяВопроса + "_Комментарий_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ=")]; + КонецЕсли; + + Иначе + + ВариантыОтветовНаВопрос = Анкетирование.ПолучитьВариантыОтветовНаВопрос(СтрокаКомплексногоВопроса.ЭлементарныйВопрос,ЭтотОбъект); + + Счетчик = 0; + Для каждого ВариантОтвета Из ВариантыОтветовНаВопрос Цикл + + Счетчик = Счетчик + 1; + ИмяТекРеквизита = ИмяРеквизита + "_Реквизит_" + Счетчик; + + Если ЭтотОбъект[ИмяТекРеквизита] Тогда + + НоваяСтрока = Объект.Состав.Добавить(); + НоваяСтрока.Вопрос = СтрокаДерева.ВопросШаблона; + НоваяСтрока.ЭлементарныйВопрос = СтрокаКомплексногоВопроса.ЭлементарныйВопрос; + НоваяСтрока.Ответ = ВариантОтвета.Ответ; + НоваяСтрока.НомерЯчейки = Счетчик; + Если ВариантОтвета.ТребуетОткрытогоОтвета Тогда + НоваяСтрока.ОткрытыйОтвет = ЭтотОбъект[ИмяРеквизита + "_Комментарий_" + Счетчик]; + КонецЕсли; + + КонецЕсли; + + КонецЦикла; + + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Прочее @@ -1108,7 +1260,7 @@ НСтр("ru = 'Нажмите далее для заполнения анкеты.'"), РеквизитыОпрос.Вступление); Заключение = ?(ПустаяСтрока(РеквизитыОпрос.Заключение), - НСтр("ru = 'Спасибо за то что заполнили анкету.'"), + НСтр("ru = 'Спасибо за то, что заполнили анкету.'"), РеквизитыОпрос.Заключение); КонецПроцедуры @@ -1146,6 +1298,30 @@ КонецФункции +// Получает необходимые значения реквизита согласно шаблону анкеты. +&НаСервере +Функция ЗначенияРеквизитовШаблонаАнкеты(ШаблонАнкеты) + + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ + | ШаблоныАнкет.Ссылка КАК ШаблонАнкеты, + | ЛОЖЬ КАК ВозможностьПредварительногоСохранения, + | ШаблоныАнкет.Заголовок, + | ШаблоныАнкет.Вступление, + | ШаблоныАнкет.Заключение + |ИЗ + | Справочник.ШаблоныАнкет КАК ШаблоныАнкет + |ГДЕ + | ШаблоныАнкет.Ссылка = &ШаблонАнкеты"; + + Запрос.УстановитьПараметр("ШаблонАнкеты", ШаблонАнкеты); + + Выборка = Запрос.Выполнить().Выбрать(); + Выборка.Следующий(); + Возврат Выборка; + +КонецФункции + // Устанавливает значения заголовков и надписей. &НаСервере Процедура УстановитьЗаголовкиНадписей(РеквизитыОпрос) @@ -1193,14 +1369,25 @@ Если Параметры.Свойство("ТолькоФормаЗаполнения") Тогда - Элементы.ГруппаОсновныеРеквизиты.Видимость = Ложь; + ЭтоИнтервью = Объект.РежимАнкетирования = ПредопределенноеЗначение("Перечисление.РежимыАнкетирования.Интервью"); + + Элементы.ГруппаОсновныеРеквизиты.Видимость = ЭтоИнтервью; Элементы.Дата.Доступность = Ложь; Элементы.ФормаКоманднаяПанельПровестиИЗакрыть.Видимость = Ложь; Элементы.ФормаКоманднаяПанельЗаписать.Видимость = Ложь; + Элементы.Провести.Видимость = Ложь; + Элементы.ФормаОтменаПроведения.Видимость = Ложь; + Элементы.ФормаПеречитать.Видимость = Ложь; + Элементы.ПоказатьВСпискеАнкета.Видимость = Ложь; + Элементы.ФормаУстановитьПометкуУдаления.Видимость = Ложь; Элементы.Комментарий.Видимость = Ложь; - Элементы.ГруппаКнопкиДокументАнкета.Видимость = Ложь; + + Элементы.РежимАнкетирования.ТолькоПросмотр = ЭтоИнтервью; + Элементы.Опрос.ТолькоПросмотр = ЭтоИнтервью; + Элементы.ШаблонАнкеты.ТолькоПросмотр = ЭтоИнтервью; + Если Объект.Ссылка.Пустая() Тогда - Объект.Дата = ТекущаяДатаСеанса(); + Объект.Дата = ТекущаяДатаСеанса(); КонецЕсли; Если Параметры.ТолькоПросмотр = Истина Тогда @@ -1214,14 +1401,11 @@ Элементы.ФормаЗаполненияЗаписать.Видимость = ВозможностьПредварительногоСохранения; КонецЕсли; - + Модифицированность = Ложь; Иначе - Элементы.ПредыдущийРаздел.Видимость = Ложь; - Элементы.СледующийРаздел.Видимость = Ложь; - Элементы.СкрытьПоказатьДеревоРазделов.Видимость = Ложь; Элементы.ФормаЗаполненияПровестиЗакрыть.Видимость = Ложь; Элементы.ФормаЗаполненияЗаписать.Видимость = Ложь; Элементы.ГруппаТелоАнкеты.ТолькоПросмотр = Истина; @@ -1249,6 +1433,8 @@ Если СтрокаТаблицы.ТипВопроса = Перечисления.ТипыВопросовШаблонаАнкеты.Табличный Тогда Элементы[ИмяВопроса + "_Таблица"].УстановитьДействие("ПриИзменении","Подключаемый_ПриИзмененииВопроса"); + ИначеЕсли СтрокаТаблицы.ТипВопроса = Перечисления.ТипыВопросовШаблонаАнкеты.Комплексный Тогда + УстановитьОбработчикСобытияПриИзмененииДляКомплексныхВопросов(СтрокаТаблицы, ИмяВопроса); Иначе Если СтрокаТаблицы.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз Тогда ВариантыОтветовНаВопрос = Анкетирование.ПолучитьВариантыОтветовНаВопрос(СтрокаТаблицы.ЭлементарныйВопрос,ЭтотОбъект); @@ -1270,6 +1456,42 @@ КонецПроцедуры +// Устанавливает обработчик события при изменении для комплексных вопросов. +&НаСервере +Процедура УстановитьОбработчикСобытияПриИзмененииДляКомплексныхВопросов(СтрокаТаблицы, ИмяВопроса) + + Для каждого СтрокаКомплексногоВопроса Из СтрокаТаблицы.СоставКомплексногоВопроса Цикл + + НайденныеСтроки = ВопросыПредставлениеТипы.НайтиСтроки(Новый Структура("Вопрос",СтрокаКомплексногоВопроса.ЭлементарныйВопрос)); + Если НайденныеСтроки.Количество() > 0 Тогда + РеквизитыЭлементарногоВопроса = НайденныеСтроки[0]; + Иначе + Продолжить; + КонецЕсли; + + Если РеквизитыЭлементарногоВопроса.ТипОтвета = Перечисления.ТипыОтветовНаВопрос.НесколькоВариантовИз Тогда + ВариантыОтветовНаВопрос = Анкетирование.ПолучитьВариантыОтветовНаВопрос(СтрокаКомплексногоВопроса.ЭлементарныйВопрос,ЭтотОбъект); + Для инд = 1 По ВариантыОтветовНаВопрос.Количество() Цикл + ИмяРеквизитаВопроса = ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ=") + "_Реквизит_" + инд; + Элементы[ИмяРеквизитаВопроса].УстановитьДействие("ПриИзменении","Подключаемый_ПриИзмененииВопроса"); + Если ВариантыОтветовНаВопрос[инд-1].ТребуетОткрытогоОтвета Тогда + ИмяРеквизитаКомментария = ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ=") + "_Комментарий_" + инд; + Элементы[ИмяРеквизитаКомментария].УстановитьДействие("ПриИзменении","Подключаемый_ПриИзмененииВопроса"); + КонецЕсли; + КонецЦикла; + Иначе + ИмяРеквизитаВопроса = ИмяВопроса + "_Ответ_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="); + Элементы[ИмяРеквизитаВопроса].УстановитьДействие("ПриИзменении","Подключаемый_ПриИзмененииВопроса"); + Если СтрокаКомплексногоВопроса.ТребуетсяКомментарий Тогда + ИмяРеквизитаКомментария = ИмяВопроса + "_Комментарий_" + Формат(СтрокаКомплексногоВопроса.НомерСтроки, "ЧГ="); + Элементы[ИмяРеквизитаКомментария].УстановитьДействие("ПриИзменении","Подключаемый_ПриИзмененииВопроса"); + КонецЕсли; + КонецЕсли; + + КонецЦикла; + +КонецПроцедуры + // Начинает процесс построения формы заполнения согласно разделам. &НаКлиенте Процедура ВыполнитьПостроениеФормыЗаполнения() @@ -1284,7 +1506,9 @@ Процедура ОкончаниеПостроенияФормыЗаполнения() ПостроениеФормыСогласноРаздела(); - УправлениеДоступностьюПодчиненныеВопросы(ПредыдущийРазделБезВопросов = Ложь И Не ЭтоСеансОбычногоПользователя); + УправлениеДоступностьюПодчиненныеВопросы(ПредыдущийРазделБезВопросов = Ложь + И Не ЭтоСеансОбычногоПользователя + И Не ТолькоПросмотр); УправлениеДоступностьюКнопкиНавигацияРазделов(); ЭлементДляПозиционирования = Элементы.Найти(ИмяЭлементаДляПозиционирования); @@ -1299,10 +1523,8 @@ Процедура ИзменитьВидимостьДеревоРазделов() Элементы.ГруппаДеревоРазделов.Видимость = НЕ Элементы.ГруппаДеревоРазделов.Видимость; - Элементы.ДекорацияОжиданиеЭлементы.Ширина = ?(Элементы.ГруппаДеревоРазделов.Видимость,20,45); ЗаголовокКомандаРазделы = ?(Элементы.ГруппаДеревоРазделов.Видимость,НСтр("ru = 'Скрыть разделы'"),НСтр("ru = 'Показать разделы'")); - Элементы.СкрытьПоказатьДеревоРазделов.Заголовок = ЗаголовокКомандаРазделы; Элементы.СкрытьПоказатьДеревоРазделовДокумент.Заголовок = ЗаголовокКомандаРазделы; КонецПроцедуры @@ -1314,12 +1536,10 @@ ДоступностьПредыдущийРаздел = (Элементы.ДеревоРазделов.ТекущаяСтрока > 0); ДоступностьСледующийРаздел = (ДеревоРазделов.НайтиПоИдентификатору(Элементы.ДеревоРазделов.ТекущаяСтрока + 1) <> Неопределено); - Элементы.ПредыдущийРаздел.Доступность = ДоступностьПредыдущийРаздел; Элементы.ПредыдущийРазделПодвал.Доступность = ДоступностьПредыдущийРаздел; - Элементы.ПредыдущийРазделДокумент.Доступность = ДоступностьПредыдущийРаздел; - Элементы.СледующийРаздел.Доступность = ДоступностьСледующийРаздел; + Элементы.ПредыдущийРаздел.Доступность = ДоступностьПредыдущийРаздел; Элементы.СледующийРазделПодвал.Доступность = ДоступностьСледующийРаздел; - Элементы.СледующийРазделДокумент.Доступность = ДоступностьСледующийРаздел; + Элементы.СледующийРаздел.Доступность = ДоступностьСледующийРаздел; КонецПроцедуры @@ -1385,4 +1605,31 @@ КонецПроцедуры +&НаКлиентеНаСервереБезКонтекста +Процедура ИзменитьВидимостьЭлементовФормы(Форма) + + ЭтоИнтервью = Форма.Объект.РежимАнкетирования = ПредопределенноеЗначение("Перечисление.РежимыАнкетирования.Интервью"); + Форма.Элементы.Опрос.Видимость = НЕ ЭтоИнтервью; + Форма.Элементы.ШаблонАнкеты.Видимость = ЭтоИнтервью; + Форма.Элементы.Интервьюер.Видимость = ЭтоИнтервью; + +КонецПроцедуры + +// СтандартныеПодсистемы.ПодключаемыеКоманды +&НаКлиенте +Процедура Подключаемый_ВыполнитьКоманду(Команда) + ПодключаемыеКомандыКлиент.ВыполнитьКоманду(ЭтотОбъект, Команда, Объект, Истина); +КонецПроцедуры + +&НаСервере +Процедура Подключаемый_ВыполнитьКомандуНаСервере(Контекст, Результат) + ПодключаемыеКоманды.ВыполнитьКоманду(ЭтотОбъект, Контекст, Объект, Результат); +КонецПроцедуры + +&НаКлиенте +Процедура Подключаемый_ОбновитьКоманды() + ПодключаемыеКомандыКлиентСервер.ОбновитьКоманды(ЭтотОбъект, Объект); +КонецПроцедуры +// Конец СтандартныеПодсистемы.ПодключаемыеКоманды + #КонецОбласти diff --git a/SSL/src/Documents/Анкета/Forms/ФормаСписка/Form.form b/SSL/src/Documents/Анкета/Forms/ФормаСписка/Form.form index 4250719fa..292d8c59f 100644 --- a/SSL/src/Documents/Анкета/Forms/ФормаСписка/Form.form +++ b/SSL/src/Documents/Анкета/Forms/ФормаСписка/Form.form @@ -84,10 +84,9 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:LabelFieldExtInfo"> - <width>10</width> + <width>9</width> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>false</horizontalStretch> </extInfo> </items> <items xsi:type="form:FormField"> @@ -128,6 +127,90 @@ <horizontalStretch>false</horizontalStretch> </extInfo> </items> + <items xsi:type="form:FormField"> + <name>РежимАнкетирования</name> + <id>34</id> + <title> + <key>ru</key> + <value>Режим</value> + + true + true + + true + + + Список.РежимАнкетирования + + + РежимАнкетированияРасширеннаяПодсказка + 36 + Label + true + true + + Left + + + + РежимАнкетированияКонтекстноеМеню + 35 + true + + LabelField + Enter + true + Left + true + + 10 + true + true + false + + + + ШаблонАнкеты + 37 + + <key>ru</key> + <value>Шаблон</value> + + true + true + + true + + + Список.ШаблонАнкеты + + + ШаблонАнкетыРасширеннаяПодсказка + 39 + Label + true + true + + Left + + + + ШаблонАнкетыКонтекстноеМеню + 38 + true + + LabelField + Enter + true + Left + true + + 25 + true + true + false + + Опрос 8 @@ -442,9 +525,30 @@
            true
            + ВЫБРАТЬ + ДокументАнкета.Ссылка, + ДокументАнкета.ПометкаУдаления, + ДокументАнкета.Номер, + ДокументАнкета.Дата, + ДокументАнкета.Проведен, + ДокументАнкета.Опрос, + ДокументАнкета.Респондент, + ДокументАнкета.ДатаРедактирования, + ДокументАнкета.РедактируемыйРаздел, + ДокументАнкета.Комментарий, + ДокументАнкета.Интервьюер, + ДокументАнкета.РежимАнкетирования, + ВЫБОР + КОГДА ДокументАнкета.РежимАнкетирования = ЗНАЧЕНИЕ(ПЕречисление.РежимыАнкетирования.Интервью) + ТОГДА ДокументАнкета.ШаблонАнкеты + ИНАЧЕ ДокументАнкета.Опрос.ШаблонАнкеты + КОНЕЦ КАК ШаблонАнкеты +ИЗ + Документ.Анкета КАК ДокументАнкета Document.Анкета true true + true true true diff --git a/SSL/src/Documents/Анкета/Forms/ФормаСписка/Module.bsl b/SSL/src/Documents/Анкета/Forms/ФормаСписка/Module.bsl index 8bbde30a4..1bd6604be 100644 --- a/SSL/src/Documents/Анкета/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Documents/Анкета/Forms/ФормаСписка/Module.bsl @@ -1,8 +1,8 @@ - #Область ОбработчикиСобытийФормы &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; @@ -22,3 +22,15 @@ КонецПроцедуры #КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Процедура УстановитьУсловноеОформление() + + СтандартныеПодсистемыСервер.УстановитьУсловноеОформлениеПоляДата(ЭтотОбъект, "Список.Дата", Элементы.Дата.Имя); + +КонецПроцедуры + +#КонецОбласти + diff --git a/SSL/src/Documents/Анкета/ManagerModule.bsl b/SSL/src/Documents/Анкета/ManagerModule.bsl index 1de6a7927..218a66eb3 100644 --- a/SSL/src/Documents/Анкета/ManagerModule.bsl +++ b/SSL/src/Documents/Анкета/ManagerModule.bsl @@ -22,4 +22,124 @@ #КонецОбласти +#Область СлужебныйПрограммныйИнтерфейс + +//////////////////////////////////////////////////////////////////////////////// +// Обработчики обновления. + +// Регистрирует на плане обмена ОбновлениеИнформационнойБазы объекты, +// которые необходимо обновить на новую версию. +// +Процедура ЗарегистрироватьДанныеКОбработкеДляПереходаНаНовуюВерсию(Параметры) Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | Анкета.Ссылка + |ИЗ + | Документ.Анкета КАК Анкета + |ГДЕ + | Анкета.РежимАнкетирования = &ПустаяСсылка + | + |УПОРЯДОЧИТЬ ПО + | Анкета.Дата УБЫВ"; + Запрос.Параметры.Вставить("ПустаяСсылка", Перечисления.РежимыАнкетирования.ПустаяСсылка()); + + Результат = Запрос.Выполнить().Выгрузить(); + МассивСсылок = Результат.ВыгрузитьКолонку("Ссылка"); + + ОбновлениеИнформационнойБазы.ОтметитьКОбработке(Параметры, МассивСсылок); + +КонецПроцедуры + +// Заполнить значение нового реквизита РежимАнкетирования у документа Анкета. +// +Процедура ОбработатьДанныеДляПереходаНаНовуюВерсию(Параметры) Экспорт + + Выборка = ОбновлениеИнформационнойБазы.ВыбратьСсылкиДляОбработки(Параметры.Очередь, "Документ.Анкета"); + + ПроблемныхОбъектов = 0; + ОбъектовОбработано = 0; + + Пока Выборка.Следующий() Цикл + + Попытка + + ЗаполнитьРеквизитРежимАнкетирования(Выборка); + ОбъектовОбработано = ОбъектовОбработано + 1; + + Исключение + // Если не удалось обработать анкету, повторяем попытку снова. + ПроблемныхОбъектов = ПроблемныхОбъектов + 1; + + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось обработать анкету: %1 по причине: + |%2'"), + Выборка.Ссылка, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение, + Метаданные.Документы.Анкета, Выборка.Ссылка, ТекстСообщения); + КонецПопытки; + + КонецЦикла; + + Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(Параметры.Очередь, "Документ.Анкета"); + Если ОбъектовОбработано = 0 И ПроблемныхОбъектов <> 0 Тогда + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Процедуре ЗаполнитьРеквизитРежимАнкетирования не удалось обработать некоторые анкеты (пропущены): %1'"), + ПроблемныхОбъектов); + ВызватьИсключение ТекстСообщения; + Иначе + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Информация, + Метаданные.Документы.Анкета,, + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Процедура ЗаполнитьРеквизитРежимАнкетирования обработала очередную порцию анкет: %1'"), + ОбъектовОбработано)); + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +// Заполняет значение нового реквизита РежимАнкетирования у переданного документа. +// +Процедура ЗаполнитьРеквизитРежимАнкетирования(Выборка) + + НачатьТранзакцию(); + Попытка + + // Блокируем объект от изменения другими сеансами. + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("Документ.Анкета"); + ЭлементБлокировки.УстановитьЗначение("Ссылка", Выборка.Ссылка); + Блокировка.Заблокировать(); + + ДокументОбъект = Выборка.Ссылка.ПолучитьОбъект(); + + // Если объект ранее был удален или обработан другими сеансами, пропускаем его. + Если ДокументОбъект = Неопределено Тогда + ОтменитьТранзакцию(); + Возврат; + КонецЕсли; + Если ДокументОбъект.РежимАнкетирования <> Перечисления.РежимыАнкетирования.ПустаяСсылка() Тогда + ОтменитьТранзакцию(); + Возврат; + КонецЕсли; + + // Обработка объекта. + ДокументОбъект.РежимАнкетирования = Перечисления.РежимыАнкетирования.Анкета; + + // Запись обработанного объекта. + ОбновлениеИнформационнойБазы.ЗаписатьДанные(ДокументОбъект); + + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + +КонецПроцедуры + +#КонецОбласти + #КонецЕсли \ No newline at end of file diff --git a/SSL/src/Documents/Анкета/ObjectModule.bsl b/SSL/src/Documents/Анкета/ObjectModule.bsl index 2c121223a..5be3bf46f 100644 --- a/SSL/src/Documents/Анкета/ObjectModule.bsl +++ b/SSL/src/Documents/Анкета/ObjectModule.bsl @@ -48,6 +48,20 @@ ЗаполнитьЗначенияСвойств(ЭтотОбъект,ДанныеЗаполнения); КонецЕсли; + Если РежимАнкетирования = Перечисления.РежимыАнкетирования.Интервью Тогда + Интервьюер = Пользователи.ТекущийПользователь(); + КонецЕсли; + +КонецПроцедуры + +Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты) + + Если РежимАнкетирования = Перечисления.РежимыАнкетирования.Интервью Тогда + ПроверяемыеРеквизиты.Удалить(ПроверяемыеРеквизиты.Найти("Опрос")); + Иначе + ПроверяемыеРеквизиты.Удалить(ПроверяемыеРеквизиты.Найти("ШаблонАнкеты")); + КонецЕсли; + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/Documents/Анкета/Анкета.mdo b/SSL/src/Documents/Анкета/Анкета.mdo index a0608408a..33f62fda3 100644 --- a/SSL/src/Documents/Анкета/Анкета.mdo +++ b/SSL/src/Documents/Анкета/Анкета.mdo @@ -182,6 +182,67 @@ Use Use + + Интервьюер + + ru + Интервьюер + + + DefinedType.Интервьюер + + + ru + Сотрудник, проводящий интервью + + + + + Use + Use + + + ШаблонАнкеты + + ru + Шаблон анкеты + + + CatalogRef.ШаблоныАнкет + + + ru + Шаблон анкеты, на основании которого проводится интервью + + + + ShowError + + Use + Use + + + РежимАнкетирования + + ru + Режим анкетирования + + + EnumRef.РежимыАнкетирования + + + ru + Режим заполнения анкеты + + + + ShowError + + Enum.РежимыАнкетирования.EnumValue.Анкета + + Use + Use + ФормаДокумента diff --git a/SSL/src/Documents/Встреча/Forms/ФормаДокумента/Form.form b/SSL/src/Documents/Встреча/Forms/ФормаДокумента/Form.form index 67b36c3c1..7bb9bc013 100644 --- a/SSL/src/Documents/Встреча/Forms/ФормаДокумента/Form.form +++ b/SSL/src/Documents/Встреча/Forms/ФормаДокумента/Form.form @@ -303,12 +303,7 @@ ru Время проведения - - ru - Группа период проведения - true - false ГруппаПериодПроведенияExtendedTooltip 120 @@ -366,7 +361,6 @@ true 50 - true true true true @@ -407,7 +401,6 @@ true 50 - true true true true @@ -455,7 +448,6 @@ Left true - true 3 true true @@ -473,11 +465,6 @@ ru Описание - - ru - Описание - - true СтраницаОписаниеExtendedTooltip 133 @@ -904,7 +891,6 @@ Left true - true true true true @@ -1046,15 +1032,19 @@ Left true - 25 - true + + StartChoice + ПредметНачалоВыбора + + 30 true + false false - true + true + false true true true - true Normal
            @@ -1091,9 +1081,9 @@ Left true - 25 - true + 30 true + false true true true @@ -1263,7 +1253,6 @@ true Label - true true Style.FieldSelectionBackColor @@ -1381,6 +1370,7 @@ ru Страницы указаны контакты + Top СтраницыУказаныКонтактыExtendedTooltip 141 @@ -1396,37 +1386,6 @@ Auto
            - - ДекорацияПустая - 160 - true - true - - true - - - ДекорацияПустаяРасширеннаяПодсказка - 162 - Label - true - true - - Left - - - - ДекорацияПустаяКонтекстноеМеню - 161 - true - - Label - true - true - true - - Left - - ГруппаАвторДатаРегистрации 107 @@ -1531,6 +1490,8 @@ ru Автор, дата регистрации + true + Bottom ГруппаАвторДатаРегистрацииExtendedTooltip 152 @@ -1577,6 +1538,7 @@ UsualGroup Vertical + Bottom Auto true true @@ -1587,6 +1549,61 @@ ФормаКоманднаяПанель -1 + + ФормаЗаписатьИЗакрыть + 176 + true + true + + true + + + ФормаЗаписатьИЗакрытьРасширеннаяПодсказка + 177 + Label + true + true + + Left + + + Form.StandardCommand.WriteAndClose + Auto + true + true + true + UserCmds + Auto + + + ФормаЗаписать + 178 + true + true + + true + + + ФормаЗаписатьРасширеннаяПодсказка + 179 + Label + true + true + + Left + + + Form.StandardCommand.Write + Normal + Picture + true + true + UserCmds + + StdPicture.Write + + Auto + ФормаПоказатьВСписке 172 @@ -1648,9 +1665,240 @@ UserCmds Auto + + ФормаГлобальныеКоманды + 182 + true + true + + true + + + <key>ru</key> + <value>Форма глобальные команды</value> + + + ru + Форма глобальные команды + + + ФормаГлобальныеКомандыРасширеннаяПодсказка + 183 + Label + true + true + + Left + + + + FormCommandPanelGlobalCommands + + + + ПодменюПечать + 180 + true + true + + true + + + <key>ru</key> + <value>Печать</value> + + + ru + Команды печати + + + ПодменюПечатьРасширеннаяПодсказка + 181 + Label + true + true + + Left + + + Popup + + + StdPicture.Print + + Auto + Normal + + + + ФормаГруппаКомандыФормы + 202 + true + true + + true + + + <key>ru</key> + <value>Команды формы</value> + + + ru + Команды формы + + + ФормаГруппаКомандыФормыРасширеннаяПодсказка + 203 + Label + true + true + + Left + + + + Form + + + + ПодменюОтчеты + 194 + + ПодменюОтчетыВажное + 196 + true + true + + true + + + ru + Подменю отчеты важное + + + ПодменюОтчетыВажноеРасширеннаяПодсказка + 197 + Label + true + true + + Left + + + + + + ПодменюОтчетыПерейти + 198 + true + true + + true + + + ru + Подменю отчеты важное + + + ПодменюОтчетыПерейтиРасширеннаяПодсказка + 199 + Label + true + true + + Left + + + + + + ПодменюОтчетыСмТакже + 200 + true + true + + true + + + ru + Подменю отчеты важное + + + ПодменюОтчетыСмТакжеРасширеннаяПодсказка + 201 + Label + true + true + + Left + + + + + true + true + + true + + + <key>ru</key> + <value>Отчеты</value> + + + ru + Отчеты + + + ПодменюОтчетыРасширеннаяПодсказка + 195 + Label + true + true + + Left + + + Popup + + + CommonPicture.Отчеты + + PictureAndText + Normal + + + + ФормаСправка + 190 + true + true + + true + + + ФормаСправкаРасширеннаяПодсказка + 191 + Label + true + true + + Left + + + Form.StandardCommand.Help + Normal + Auto + true + true + UserCmds + Auto + Left - true + + ChoiceProcessing + ОбработкаВыбора + NotificationProcessing ОбработкаОповещения diff --git a/SSL/src/Documents/Встреча/Forms/ФормаДокумента/Module.bsl b/SSL/src/Documents/Встреча/Forms/ФормаДокумента/Module.bsl index af3ed5e66..6db599cc3 100644 --- a/SSL/src/Documents/Встреча/Forms/ФормаДокумента/Module.bsl +++ b/SSL/src/Documents/Встреча/Forms/ФормаДокумента/Module.bsl @@ -1,3 +1,9 @@ +#Область ОписаниеПеременных + +&НаКлиенте +Перем КонтекстВыбора; + +#КонецОбласти #Область ОбработчикиСобытийФормы @@ -120,6 +126,13 @@ КонецПроцедуры +&НаКлиенте +Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора) + + ВзаимодействияКлиент.ФормаОбработкаВыбора(ЭтотОбъект, ВыбранноеЗначение, ИсточникВыбора, КонтекстВыбора); + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы @@ -203,6 +216,13 @@ КонецПроцедуры +&НаКлиенте +Процедура ПредметНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + + ВзаимодействияКлиент.ПредметНачалоВыбора(ЭтотОбъект, Элемент, ДанныеВыбора, СтандартнаяОбработка); + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыУчастники @@ -233,6 +253,7 @@ ПараметрыОткрытия.Вставить("ТолькоТелефон", Ложь); ПараметрыОткрытия.Вставить("ЗаменятьПустыеАдресИПредставление", Истина); ПараметрыОткрытия.Вставить("ДляФормыУточненияКонтактов", Ложь); + ПараметрыОткрытия.Вставить("ИдентификаторФормы", УникальныйИдентификатор); ВзаимодействияКлиент.ВыбратьКонтакт(Предмет, текДанные.КакСвязаться, текДанные.ПредставлениеКонтакта, текДанные.Контакт, ПараметрыОткрытия) diff --git a/SSL/src/Documents/Встреча/Встреча.mdo b/SSL/src/Documents/Встреча/Встреча.mdo index 72d601b6d..35a3c705d 100644 --- a/SSL/src/Documents/Встреча/Встреча.mdo +++ b/SSL/src/Documents/Встреча/Встреча.mdo @@ -313,10 +313,10 @@ Use - Предмет + УдалитьПредмет ru - Предмет + (не используется) предмет DefinedType.ПредметВзаимодействия diff --git a/SSL/src/Documents/ЗапланированноеВзаимодействие/Forms/ФормаДокумента/Form.form b/SSL/src/Documents/ЗапланированноеВзаимодействие/Forms/ФормаДокумента/Form.form index ab279c7b3..d83c5ff10 100644 --- a/SSL/src/Documents/ЗапланированноеВзаимодействие/Forms/ФормаДокумента/Form.form +++ b/SSL/src/Documents/ЗапланированноеВзаимодействие/Forms/ФормаДокумента/Form.form @@ -36,8 +36,8 @@ true 50 - true true + true true false true @@ -85,7 +85,6 @@ Left true - true true true true @@ -103,11 +102,6 @@ ru Описание - - ru - Описание - - true СтраницаОписаниеExtendedTooltip 110 @@ -137,11 +131,6 @@ ru Дополнительно - - ru - Страница дополнительные реквизиты - - true СтраницаДополнительныеРеквизитыExtendedTooltip 112 @@ -472,11 +461,6 @@ ru Участники - - ru - Участники - - true ГруппаУчастникиExtendedTooltip 123 @@ -533,7 +517,6 @@ Left true - true true true true @@ -552,11 +535,6 @@ ru Комментарий - - ru - Комментарий - - true СтраницаКомментарийExtendedTooltip 113 @@ -583,11 +561,6 @@ ru Страницы описание дополнительно - - ru - Страницы описание дополнительно - - true СтраницыОписаниеДополнительноExtendedTooltip 109 @@ -617,12 +590,6 @@ ru Группа левая - - ru - Группа левая - - true - true ГруппаЛеваяРасширеннаяПодсказка 134 @@ -679,15 +646,20 @@ Left true - 25 - true + + StartChoice + ПредметНачалоВыбора + + 30 true + false false - true + true + ShowInInputField + false true true true - true Normal @@ -724,9 +696,9 @@ Left true - 25 - true + 30 true + false true true true @@ -895,7 +867,6 @@ true Label - true true Style.FieldSelectionBackColor @@ -1013,6 +984,7 @@ ru Страницы указаны контакты + Top СтраницыУказаныКонтактыExtendedTooltip 118 @@ -1028,57 +1000,117 @@ Auto - - ДекорацияПраваяПустая - 93 + + ГруппаДатаАвтор + 170 + + Дата + 95 + + <key>ru</key> + <value>Создано</value> + + true + true + + true + + + Объект.Date + + Left + + ДатаExtendedTooltip + 131 + Label + true + true + + Left + + + + ДатаКонтекстноеМеню + 96 + true + + LabelField + true + Left + Bottom + Bottom + Enter + true + Left + true + + true + true + + ru + ДЛФ=DT + + + + + Автор + 97 + true + true + + true + + + Объект.Автор + + Left + + АвторExtendedTooltip + 132 + Label + true + true + + Left + + + + АвторКонтекстноеМеню + 98 + true + + LabelField + true + Left + Bottom + Bottom + Enter + true + Left + true + + true + true + true + + true true true - - ДекорацияПраваяПустаяРасширеннаяПодсказка - 130 - Label - true - true - - Left - - - - ДекорацияПраваяПустаяКонтекстноеМеню - 94 - true - - Label - true - true - true - true - - Left - - - - Дата - 95 <key>ru</key> - <value>Создано</value> + <value>Группа дата автор</value> - true - true - - true - - - Объект.Date - - Left + + ru + Группа дата автор + + true - ДатаExtendedTooltip - 131 + ГруппаДатаАвторРасширеннаяПодсказка + 171 Label true true @@ -1086,65 +1118,14 @@ Left - - ДатаКонтекстноеМеню - 96 - true - - LabelField - true - Left - Enter - true - Left - true - - true - true - - ru - ДЛФ=DT - - - - - Автор - 97 - true - true - - true - - - Объект.Автор - - Left - - АвторExtendedTooltip - 132 - Label - true - true - - Left - - - - АвторКонтекстноеМеню - 98 - true - - LabelField - true - Left - Enter - true - Left - true - - true - true - true + UsualGroup + + Vertical + Auto + true + true + Auto + Auto true @@ -1156,11 +1137,6 @@ ru Группа правая - - ru - Группа правая - - true ГруппаПраваяРасширеннаяПодсказка 136 @@ -1174,6 +1150,7 @@ UsualGroup Vertical + Bottom Auto true true @@ -1184,6 +1161,61 @@ ФормаКоманднаяПанель -1 + + ФормаЗаписатьИЗакрыть + 152 + true + true + + true + + + ФормаЗаписатьИЗакрытьРасширеннаяПодсказка + 153 + Label + true + true + + Left + + + Form.StandardCommand.WriteAndClose + Auto + true + true + true + UserCmds + Auto + + + ФормаЗаписать + 154 + true + true + + true + + + ФормаЗаписатьРасширеннаяПодсказка + 155 + Label + true + true + + Left + + + Form.StandardCommand.Write + Normal + Picture + true + true + UserCmds + + StdPicture.Write + + Auto + ФормаПоказатьВСписке 146 @@ -1245,9 +1277,240 @@ UserCmds Auto + + ФормаГлобальныеКоманды + 150 + true + true + + true + + + <key>ru</key> + <value>Форма глобальные команды</value> + + + ru + Форма глобальные команды + + + ФормаГлобальныеКомандыРасширеннаяПодсказка + 151 + Label + true + true + + Left + + + + FormCommandPanelGlobalCommands + + + + ПодменюПечать + 156 + true + true + + true + + + <key>ru</key> + <value>Печать</value> + + + ru + Команды печати + + + ПодменюПечатьРасширеннаяПодсказка + 157 + Label + true + true + + Left + + + Popup + + + StdPicture.Print + + Auto + Normal + + + + ФормаГруппаКомандыФормы + 158 + true + true + + true + + + <key>ru</key> + <value>Команды формы</value> + + + ru + Команды формы + + + ФормаГруппаКомандыФормыРасширеннаяПодсказка + 159 + Label + true + true + + Left + + + + Form + + + + ПодменюОтчеты + 162 + + ПодменюОтчетыВажное + 164 + true + true + + true + + + ru + Подменю отчеты важное + + + ПодменюОтчетыВажноеРасширеннаяПодсказка + 165 + Label + true + true + + Left + + + + + + ПодменюОтчетыПерейти + 166 + true + true + + true + + + ru + Подменю отчеты важное + + + ПодменюОтчетыПерейтиРасширеннаяПодсказка + 167 + Label + true + true + + Left + + + + + + ПодменюОтчетыСмТакже + 168 + true + true + + true + + + ru + Подменю отчеты важное + + + ПодменюОтчетыСмТакжеРасширеннаяПодсказка + 169 + Label + true + true + + Left + + + + + true + true + + true + + + <key>ru</key> + <value>Отчеты</value> + + + ru + Отчеты + + + ПодменюОтчетыРасширеннаяПодсказка + 163 + Label + true + true + + Left + + + Popup + + + CommonPicture.Отчеты + + PictureAndText + Normal + + + + ФормаСправка + 160 + true + true + + true + + + ФормаСправкаРасширеннаяПодсказка + 161 + Label + true + true + + Left + + + Form.StandardCommand.Help + Normal + Auto + true + true + UserCmds + Auto + Left - true + + ChoiceProcessing + ОбработкаВыбора + NotificationProcessing ОбработкаОповещения diff --git a/SSL/src/Documents/ЗапланированноеВзаимодействие/Forms/ФормаДокумента/Module.bsl b/SSL/src/Documents/ЗапланированноеВзаимодействие/Forms/ФормаДокумента/Module.bsl index 15a545504..01334ef75 100644 --- a/SSL/src/Documents/ЗапланированноеВзаимодействие/Forms/ФормаДокумента/Module.bsl +++ b/SSL/src/Documents/ЗапланированноеВзаимодействие/Forms/ФормаДокумента/Module.bsl @@ -1,3 +1,9 @@ +#Область ОписаниеПеременных + +&НаКлиенте +Перем КонтекстВыбора; + +#КонецОбласти #Область ОбработчикиСобытийФормы @@ -116,6 +122,13 @@ КонецПроцедуры +&НаКлиенте +Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора) + + ВзаимодействияКлиент.ФормаОбработкаВыбора(ЭтотОбъект, ВыбранноеЗначение, ИсточникВыбора, КонтекстВыбора); + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы @@ -149,6 +162,13 @@ КонецПроцедуры +&НаКлиенте +Процедура ПредметНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + + ВзаимодействияКлиент.ПредметНачалоВыбора(ЭтотОбъект, Элемент, ДанныеВыбора, СтандартнаяОбработка); + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыУчастники @@ -171,6 +191,7 @@ ПараметрыОткрытия.Вставить("ТолькоТелефон", Ложь); ПараметрыОткрытия.Вставить("ЗаменятьПустыеАдресИПредставление", Истина); ПараметрыОткрытия.Вставить("ДляФормыУточненияКонтактов", Ложь); + ПараметрыОткрытия.Вставить("ИдентификаторФормы", УникальныйИдентификатор); ВзаимодействияКлиент.ВыбратьКонтакт(Предмет, текДанные.КакСвязаться, текДанные.ПредставлениеКонтакта, текДанные.Контакт, ПараметрыОткрытия); diff --git a/SSL/src/Documents/ЗапланированноеВзаимодействие/ЗапланированноеВзаимодействие.mdo b/SSL/src/Documents/ЗапланированноеВзаимодействие/ЗапланированноеВзаимодействие.mdo index 72a38d583..237f53121 100644 --- a/SSL/src/Documents/ЗапланированноеВзаимодействие/ЗапланированноеВзаимодействие.mdo +++ b/SSL/src/Documents/ЗапланированноеВзаимодействие/ЗапланированноеВзаимодействие.mdo @@ -249,10 +249,10 @@ Use - Предмет + УдалитьПредмет ru - Предмет + (не используется) предмет DefinedType.ПредметВзаимодействия diff --git a/SSL/src/Documents/НазначениеОпросов/Forms/ФормаДокумента/Form.form b/SSL/src/Documents/НазначениеОпросов/Forms/ФормаДокумента/Form.form index f8835d777..225450f40 100644 --- a/SSL/src/Documents/НазначениеОпросов/Forms/ФормаДокумента/Form.form +++ b/SSL/src/Documents/НазначениеОпросов/Forms/ФормаДокумента/Form.form @@ -154,7 +154,7 @@ Left true - 58 + 59 true true false @@ -206,12 +206,13 @@ true InputField + Left Auto true Left true - 15 + 16 true true false @@ -253,13 +254,14 @@ true InputField + Left + Center Auto true Left true - 15 - true + 16 true false true @@ -282,7 +284,6 @@ ru Группа период - false ГруппаПериодExtendedTooltip 51 @@ -334,7 +335,7 @@ Left true - 35 + 36 true true false @@ -382,7 +383,7 @@ Left true - 35 + 36 true true false @@ -1251,7 +1252,6 @@ Left true - true 2 true true @@ -1328,8 +1328,313 @@ ФормаКоманднаяПанель -1 + + ФормаПровестиИЗакрыть + 104 + true + true + + true + + + ФормаПровестиИЗакрытьРасширеннаяПодсказка + 105 + Label + true + true + + Left + + + Form.StandardCommand.PostAndClose + Auto + true + true + true + UserCmds + Auto + + + ФормаЗаписать + 106 + true + true + + true + + + ФормаЗаписатьРасширеннаяПодсказка + 107 + Label + true + true + + Left + + + Form.StandardCommand.Write + Normal + Picture + true + true + UserCmds + Auto + + + ФормаПровести + 108 + true + true + + true + + + ФормаПровестиРасширеннаяПодсказка + 109 + Label + true + true + + Left + + + Form.StandardCommand.Post + Normal + Picture + true + true + UserCmds + Auto + + + ПодменюПечать + 132 + true + true + + true + + + <key>ru</key> + <value>Печать</value> + + + ru + Команды печати + + + ПодменюПечатьРасширеннаяПодсказка + 133 + Label + true + true + + Left + + + Popup + + + StdPicture.Print + + Auto + Normal + + + + ФормаГлобальныеКоманды + 122 + true + true + + true + + + <key>ru</key> + <value>Форма глобальные команды</value> + + + ru + Форма глобальные команды + + + ФормаГлобальныеКомандыРасширеннаяПодсказка + 123 + Label + true + true + + Left + + + + FormCommandPanelGlobalCommands + + + + ФормаГруппаКомандыФормы + 134 + true + true + + true + + + <key>ru</key> + <value>Команды формы</value> + + + ru + Команды формы + + + ФормаГруппаКомандыФормыРасширеннаяПодсказка + 135 + Label + true + true + + Left + + + + Form + + + + ПодменюОтчеты + 124 + + ПодменюОтчетыВажное + 126 + true + true + + true + + + ru + Подменю отчеты важное + + + ПодменюОтчетыВажноеРасширеннаяПодсказка + 127 + Label + true + true + + Left + + + + + + ПодменюОтчетыПерейти + 128 + true + true + + true + + + ru + Подменю отчеты важное + + + ПодменюОтчетыПерейтиРасширеннаяПодсказка + 129 + Label + true + true + + Left + + + + + + ПодменюОтчетыСмТакже + 130 + true + true + + true + + + ru + Подменю отчеты важное + + + ПодменюОтчетыСмТакжеРасширеннаяПодсказка + 131 + Label + true + true + + Left + + + + + true + true + + true + + + <key>ru</key> + <value>Отчеты</value> + + + ru + Отчеты + + + ПодменюОтчетыРасширеннаяПодсказка + 125 + Label + true + true + + Left + + + Popup + + + CommonPicture.Отчеты + + PictureAndText + Normal + + + + ФормаСправка + 110 + true + true + + true + + + ФормаСправкаРасширеннаяПодсказка + 111 + Label + true + true + + Left + + + Form.StandardCommand.Help + Normal + Auto + true + true + UserCmds + Auto + Left - true NotificationProcessing diff --git a/SSL/src/Documents/НазначениеОпросов/Forms/ФормаДокумента/Module.bsl b/SSL/src/Documents/НазначениеОпросов/Forms/ФормаДокумента/Module.bsl index 37d1dce16..73bfae47b 100644 --- a/SSL/src/Documents/НазначениеОпросов/Forms/ФормаДокумента/Module.bsl +++ b/SSL/src/Documents/НазначениеОпросов/Forms/ФормаДокумента/Module.bsl @@ -18,6 +18,12 @@ КонецЦикла; + ИспользоватьВнешнихПользователей = ПолучитьФункциональнуюОпцию("ИспользоватьВнешнихПользователей"); + Если Объект.Ссылка.Пустая() И Не ИспользоватьВнешнихПользователей Тогда + Объект.ТипРеспондентов = Новый ("СправочникСсылка.Пользователи"); + КонецЕсли; + Элементы.ТипРеспондентов.Видимость = ИспользоватьВнешнихПользователей; + Если Объект.ТипРеспондентов = Неопределено Тогда Если ДоступныеТипы.Количество() > 0 Тогда Объект.ТипРеспондентов = Новый(ДоступныеТипы[0]); @@ -28,7 +34,7 @@ МассивТипов.Добавить(ТипЗнч(Объект.ТипРеспондентов)); ТипРеспондентов = Новый ОписаниеТипов(МассивТипов); КонецЕсли; - + Если Объект.Ссылка.Пустая() Тогда ПриСозданииЧтенииНаСервере(); КонецЕсли; diff --git a/SSL/src/Documents/НазначениеОпросов/Forms/ФормаПодбораРеспондентов/Form.form b/SSL/src/Documents/НазначениеОпросов/Forms/ФормаПодбораРеспондентов/Form.form index 241d198e8..2d81f6ce1 100644 --- a/SSL/src/Documents/НазначениеОпросов/Forms/ФормаПодбораРеспондентов/Form.form +++ b/SSL/src/Documents/НазначениеОпросов/Forms/ФормаПодбораРеспондентов/Form.form @@ -272,7 +272,6 @@ OnCreateAtServer ПриСозданииНаСервере - 50 LockOwner true true @@ -304,7 +303,7 @@ Респонденты.Ref - Catalog.ВнешниеПользователи + Catalog.Пользователи true true true diff --git a/SSL/src/Documents/НазначениеОпросов/Forms/ФормаСписка/Form.form b/SSL/src/Documents/НазначениеОпросов/Forms/ФормаСписка/Form.form index 36e3c54f8..c96d9c621 100644 --- a/SSL/src/Documents/НазначениеОпросов/Forms/ФормаСписка/Form.form +++ b/SSL/src/Documents/НазначениеОпросов/Forms/ФормаСписка/Form.form @@ -123,10 +123,9 @@ Left true - 10 + 9 true true - false true @@ -548,6 +547,10 @@ Left true + + OnCreateAtServer + ПриСозданииНаСервере + DontBlock true true diff --git a/SSL/src/Documents/НазначениеОпросов/Forms/ФормаСписка/Module.bsl b/SSL/src/Documents/НазначениеОпросов/Forms/ФормаСписка/Module.bsl new file mode 100644 index 000000000..8ac3dba96 --- /dev/null +++ b/SSL/src/Documents/НазначениеОпросов/Forms/ФормаСписка/Module.bsl @@ -0,0 +1,22 @@ +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + УстановитьУсловноеОформление(); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Процедура УстановитьУсловноеОформление() + + СтандартныеПодсистемыСервер.УстановитьУсловноеОформлениеПоляДата(ЭтотОбъект, "Список.Дата", Элементы.Дата.Имя); + +КонецПроцедуры + +#КонецОбласти + diff --git a/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Form.form b/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Form.form index f88d90a44..1a8a436fb 100644 --- a/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Form.form +++ b/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Form.form @@ -94,7 +94,6 @@ ru Номер и дата - false НомерДатаГруппаРасширеннаяПодсказка 41 @@ -307,7 +306,7 @@ Vertical Auto - WeakSeparation + NormalSeparation true true auto @@ -404,7 +403,6 @@ ru Субъект персональных данных - 35 СубъектГруппаРасширеннаяПодсказка 58 @@ -419,7 +417,7 @@ Vertical Auto - WeakSeparation + NormalSeparation true true auto @@ -457,13 +455,11 @@ 86 true - 3 true - 2 true - CommonPicture.Информация32 + CommonPicture.Информация @@ -496,7 +492,6 @@ true Label - true 2 true diff --git a/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Module.bsl b/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Module.bsl index 586b0c562..649b563ff 100644 --- a/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Module.bsl +++ b/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Module.bsl @@ -18,9 +18,11 @@ Если Параметры.Свойство("Организация") Тогда Объект.Организация = Параметры.Организация; Иначе - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда - Модуль = ОбщегоНазначения.ОбщийМодуль("Справочники.Организации"); - Объект.Организация = Модуль.ОрганизацияПоУмолчанию(); + Если Не Метаданные.ОпределяемыеТипы.Организация.Тип.СодержитТип(Тип("Строка")) Тогда + ПолноеИмя = Метаданные.НайтиПоТипу(Метаданные.ОпределяемыеТипы.Организация.Тип.Типы()[0]).ПолноеИмя(); + ИмяСправочникаОрганизации = "Справочники." + СтрРазделить(ПолноеИмя, ".")[1]; + МодульОрганизации = ОбщегоНазначения.ОбщийМодуль(ИмяСправочникаОрганизации); + Объект.Организация = МодульОрганизации.ОрганизацияПоУмолчанию(); КонецЕсли; КонецЕсли; КонецЕсли; diff --git a/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss new file mode 100644 index 000000000..61e6fb4bb --- /dev/null +++ b/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss @@ -0,0 +1,17 @@ + + + + Normal + dfcece9d-5077-440b-b6b3-45a5cb4538eb + + + Normal + 88619765-ccb3-46c6-ac52-38e9c992ebd4 + + + Normal + b75fecce-942b-4aed-abc9-e6a02e460fb3 + + Normal + 911b6018-f537-43e8-a417-da56b22f9aec + diff --git a/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Form.form b/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Form.form new file mode 100644 index 000000000..36e69a7ba --- /dev/null +++ b/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Form.form @@ -0,0 +1,407 @@ + + + + СписокКомпоновщикНастроекПользовательскиеНастройки + 1 + true + true + + true + + + <key>ru</key> + <value>Группа пользовательских настроек</value> + + false + + СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка + 2 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + WeakSeparation + true + true + Auto + Auto + + + + Список + 3 + true + true + + true + + + Список + + true + None + + Дата + 16 + true + true + + true + + + Список.Date + + true + + ДатаРасширеннаяПодсказка + 18 + Label + true + true + + Left + + + + ДатаКонтекстноеМеню + 17 + true + + LabelField + Enter + true + Left + true + + 9 + true + true + + + + Номер + 19 + true + true + + true + + + Список.Number + + + НомерРасширеннаяПодсказка + 21 + Label + true + true + + Left + + + + НомерКонтекстноеМеню + 20 + true + + LabelField + Enter + true + Left + true + + true + true + + + + Организация + 22 + true + true + + true + + + Список.Организация + + + ОрганизацияРасширеннаяПодсказка + 24 + Label + true + true + + Left + + + + ОрганизацияКонтекстноеМеню + 23 + true + + LabelField + Enter + true + Left + true + + true + true + + + + Субъект + 25 + true + true + + true + + + Список.Субъект + + + СубъектРасширеннаяПодсказка + 27 + Label + true + true + + Left + + + + СубъектКонтекстноеМеню + 26 + true + + LabelField + Enter + true + Left + true + + true + true + + + + ДатаОтзыва + 31 + true + true + + true + + + Список.ДатаОтзыва + + + ДатаОтзываРасширеннаяПодсказка + 33 + Label + true + true + + Left + + + + ДатаОтзываКонтекстноеМеню + 32 + true + + LabelField + Enter + true + Left + true + + true + true + + + None + + СписокКоманднаяПанель + 5 + Left + + + СписокСтрокаПоиска + 7 + + СписокСтрокаПоискаРасширеннаяПодсказка + 9 + Label + true + true + + Left + + + + СписокСтрокаПоискаКонтекстноеМеню + 8 + true + + Список + + true + + + + СписокСостояниеПросмотра + 10 + + СписокСостояниеПросмотраРасширеннаяПодсказка + 12 + Label + true + true + + Left + + + + СписокСостояниеПросмотраКонтекстноеМеню + 11 + true + + ViewStatusAddition + Список + + true + + + + СписокУправлениеПоиском + 13 + + СписокУправлениеПоискомРасширеннаяПодсказка + 15 + Label + true + true + + Left + + + + СписокУправлениеПоискомКонтекстноеМеню + 14 + true + + SearchControlAddition + Список + + true + + + + СписокРасширеннаяПодсказка + 6 + Label + true + true + + Left + + + + СписокКонтекстноеМеню + 4 + true + + true + true + true + true + true + MultiRow +
            true
            + 1 + 1 + AutoUse + AutoUse + true + true + Auto + Auto + ExpandTopLevel + true + true + true + + Список.DefaultPicture + + None + None + true + + 60 + + 0001-01-01T00:00:00 + 0001-01-01T00:00:00 + + + true + true + СписокКомпоновщикНастроекПользовательскиеНастройки + +
            + + ФормаКоманднаяПанель + -1 + Left + true + + + OnCreateAtServer + ПриСозданииНаСервере + + DontBlock + true + true + true + Vertical + true + true + true + auto + true + + Список + 1 + + DynamicList + + + true + + + true + +
            true
            + + Document.ОтзывСогласияНаОбработкуПерсональныхДанных + true + true + true + true + +
            + + + + + +
            diff --git a/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Module.bsl b/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Module.bsl new file mode 100644 index 000000000..fe8fbb285 --- /dev/null +++ b/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Module.bsl @@ -0,0 +1,25 @@ +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + УстановитьУсловноеОформление(); + + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. + Возврат; + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Процедура УстановитьУсловноеОформление() + + СтандартныеПодсистемыСервер.УстановитьУсловноеОформлениеПоляДата(ЭтотОбъект, "Список.Дата", Элементы.Дата.Имя); + +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/ОтзывСогласияНаОбработкуПерсональныхДанных.mdo b/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/ОтзывСогласияНаОбработкуПерсональныхДанных.mdo index 44bb09eef..08e3edff5 100644 --- a/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/ОтзывСогласияНаОбработкуПерсональныхДанных.mdo +++ b/SSL/src/Documents/ОтзывСогласияНаОбработкуПерсональныхДанных/ОтзывСогласияНаОбработкуПерсональныхДанных.mdo @@ -83,6 +83,7 @@ true true Document.ОтзывСогласияНаОбработкуПерсональныхДанных.Form.ФормаДокумента + Document.ОтзывСогласияНаОбработкуПерсональныхДанных.Form.ФормаСписка Deny InformationRegister.СогласияНаОбработкуПерсональныхДанных true @@ -94,7 +95,7 @@ Организация - CatalogRef.Организации + DefinedType.Организация ru @@ -103,6 +104,7 @@ ShowError + true Use Use @@ -160,6 +162,7 @@ ShowError + true Use Use @@ -236,4 +239,13 @@ PersonalComputer MobileDevice + + ФормаСписка + + ru + Форма списка + + PersonalComputer + MobileDevice + diff --git a/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Form.form b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Form.form index 9a2010a9f..61296d8e8 100644 --- a/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Form.form +++ b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Form.form @@ -94,7 +94,6 @@ ru Номер и дата - false НомерДатаГруппаРасширеннаяПодсказка 41 @@ -307,7 +306,7 @@ Vertical Auto - WeakSeparation + NormalSeparation true true auto @@ -432,6 +431,7 @@ UsualGroup + Vertical Auto true true @@ -534,7 +534,6 @@ ru Субъект персональных данных - 35 СубъектГруппаРасширеннаяПодсказка 58 @@ -549,7 +548,7 @@ Vertical Auto - WeakSeparation + NormalSeparation true true auto @@ -587,13 +586,11 @@ 80 true - 3 true - 2 true - CommonPicture.Предупреждение32 + CommonPicture.Предупреждение @@ -626,7 +623,6 @@ true Label - true 2 true diff --git a/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Module.bsl b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Module.bsl index 7098a4bbb..24966d5ae 100644 --- a/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Module.bsl +++ b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаДокумента/Module.bsl @@ -15,9 +15,11 @@ Объект.ДатаПолучения = ТекущаяДатаСеанса(); КонецЕсли; Если Не Параметры.Свойство("Организация", Объект.Организация) Тогда - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Организации") Тогда - Модуль = ОбщегоНазначения.ОбщийМодуль("Справочники.Организации"); - Объект.Организация = Модуль.ОрганизацияПоУмолчанию(); + Если Не Метаданные.ОпределяемыеТипы.Организация.Тип.СодержитТип(Тип("Строка")) Тогда + ПолноеИмя = Метаданные.НайтиПоТипу(Метаданные.ОпределяемыеТипы.Организация.Тип.Типы()[0]).ПолноеИмя(); + ИмяСправочникаОрганизации = "Справочники." + СтрРазделить(ПолноеИмя, ".")[1]; + МодульОрганизации = ОбщегоНазначения.ОбщийМодуль(ИмяСправочникаОрганизации); + Объект.Организация = МодульОрганизации.ОрганизацияПоУмолчанию(); КонецЕсли; КонецЕсли; ЗаполнитьДанныеОрганизации(); diff --git a/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss new file mode 100644 index 000000000..61e6fb4bb --- /dev/null +++ b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss @@ -0,0 +1,17 @@ + + + + Normal + dfcece9d-5077-440b-b6b3-45a5cb4538eb + + + Normal + 88619765-ccb3-46c6-ac52-38e9c992ebd4 + + + Normal + b75fecce-942b-4aed-abc9-e6a02e460fb3 + + Normal + 911b6018-f537-43e8-a417-da56b22f9aec + diff --git a/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Form.form b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Form.form new file mode 100644 index 000000000..7191e3136 --- /dev/null +++ b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Form.form @@ -0,0 +1,407 @@ + + + + СписокКомпоновщикНастроекПользовательскиеНастройки + 1 + true + true + + true + + + <key>ru</key> + <value>Группа пользовательских настроек</value> + + false + + СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка + 2 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + WeakSeparation + true + true + Auto + Auto + + + + Список + 3 + true + true + + true + + + Список + + true + None + + Дата + 16 + true + true + + true + + + Список.Date + + true + + ДатаРасширеннаяПодсказка + 18 + Label + true + true + + Left + + + + ДатаКонтекстноеМеню + 17 + true + + LabelField + Enter + true + Left + true + + 9 + true + true + + + + Номер + 19 + true + true + + true + + + Список.Number + + + НомерРасширеннаяПодсказка + 21 + Label + true + true + + Left + + + + НомерКонтекстноеМеню + 20 + true + + LabelField + Enter + true + Left + true + + true + true + + + + Организация + 22 + true + true + + true + + + Список.Организация + + + ОрганизацияРасширеннаяПодсказка + 24 + Label + true + true + + Left + + + + ОрганизацияКонтекстноеМеню + 23 + true + + LabelField + Enter + true + Left + true + + true + true + + + + Субъект + 25 + true + true + + true + + + Список.Субъект + + + СубъектРасширеннаяПодсказка + 27 + Label + true + true + + Left + + + + СубъектКонтекстноеМеню + 26 + true + + LabelField + Enter + true + Left + true + + true + true + + + + СрокДействия + 28 + true + true + + true + + + Список.СрокДействия + + + СрокДействияРасширеннаяПодсказка + 30 + Label + true + true + + Left + + + + СрокДействияКонтекстноеМеню + 29 + true + + LabelField + Enter + true + Left + true + + true + true + + + None + + СписокКоманднаяПанель + 5 + Left + + + СписокСтрокаПоиска + 7 + + СписокСтрокаПоискаРасширеннаяПодсказка + 9 + Label + true + true + + Left + + + + СписокСтрокаПоискаКонтекстноеМеню + 8 + true + + Список + + true + + + + СписокСостояниеПросмотра + 10 + + СписокСостояниеПросмотраРасширеннаяПодсказка + 12 + Label + true + true + + Left + + + + СписокСостояниеПросмотраКонтекстноеМеню + 11 + true + + ViewStatusAddition + Список + + true + + + + СписокУправлениеПоиском + 13 + + СписокУправлениеПоискомРасширеннаяПодсказка + 15 + Label + true + true + + Left + + + + СписокУправлениеПоискомКонтекстноеМеню + 14 + true + + SearchControlAddition + Список + + true + + + + СписокРасширеннаяПодсказка + 6 + Label + true + true + + Left + + + + СписокКонтекстноеМеню + 4 + true + + true + true + true + true + true + MultiRow +
            true
            + 1 + 1 + AutoUse + AutoUse + true + true + Auto + Auto + ExpandTopLevel + true + true + true + + Список.DefaultPicture + + None + None + true + + 60 + + 0001-01-01T00:00:00 + 0001-01-01T00:00:00 + + + true + true + СписокКомпоновщикНастроекПользовательскиеНастройки + +
            + + ФормаКоманднаяПанель + -1 + Left + true + + + OnCreateAtServer + ПриСозданииНаСервере + + DontBlock + true + true + true + Vertical + true + true + true + auto + true + + Список + 1 + + DynamicList + + + true + + + true + +
            true
            + + Document.СогласиеНаОбработкуПерсональныхДанных + true + true + true + true + +
            + + + + + +
            diff --git a/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Module.bsl b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Module.bsl new file mode 100644 index 000000000..fe8fbb285 --- /dev/null +++ b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Forms/ФормаСписка/Module.bsl @@ -0,0 +1,25 @@ +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + УстановитьУсловноеОформление(); + + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. + Возврат; + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Процедура УстановитьУсловноеОформление() + + СтандартныеПодсистемыСервер.УстановитьУсловноеОформлениеПоляДата(ЭтотОбъект, "Список.Дата", Элементы.Дата.Имя); + +КонецПроцедуры + +#КонецОбласти diff --git a/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Help/ru.html b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Help/ru.html index bdc26aef9..14bfc3e08 100644 --- a/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Help/ru.html +++ b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Help/ru.html @@ -7,9 +7,9 @@

            Укажите Дату согласия.

            Оператор персональных данных

            Субъект персональных данных

            +
          • Выберите Организацию из
          • списка; +
          • После этого автоматически заполняется Адрес (если он заполнен в карточке организации); +
          • Выберите из списка пользователей Ответственного за обработку персональных данных.

          Субъект персональных данных

          • Персональные данные субъектов выбираются из нескольких списков;
          • Рекомендуется заносить все данные субъектов в соответствующий список, а не только в окне согласия, т.к. этим облегчается последующая работа. Если согласие формируется из списка, данные выбранного субъекта заполняются автоматически;
          • В поле Субъект сначала выберите список, затем выберите субъекта персональных данных из соответствующего списка; diff --git a/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/ManagerModule.bsl b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/ManagerModule.bsl index 2098b4847..190a9a650 100644 --- a/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/ManagerModule.bsl +++ b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/ManagerModule.bsl @@ -88,7 +88,7 @@ "Документ.СогласиеНаОбработкуПерсональныхДанных.ПФ_DOC_СогласиеНаОбработкуПерсональныхДанных"); КонецЕсли; - // Печать в формате OpenOffice + // Печать в формате OpenOffice. НужноПечататьМакет = УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "СогласиеНаОбработкуПерсональныхДанных(ODT)"); Если НужноПечататьМакет Тогда УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию( diff --git a/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Templates/ПФ_MXL_СогласиеНаОбработкуПерсональныхДанных/Template.mxlx b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Templates/ПФ_MXL_СогласиеНаОбработкуПерсональныхДанных/Template.mxlx index b1a805625..13ae02d7d 100644 --- a/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Templates/ПФ_MXL_СогласиеНаОбработкуПерсональныхДанных/Template.mxlx +++ b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/Templates/ПФ_MXL_СогласиеНаОбработкуПерсональныхДанных/Template.mxlx @@ -11289,8 +11289,8 @@ Solid - - + + 0 8 diff --git a/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/СогласиеНаОбработкуПерсональныхДанных.mdo b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/СогласиеНаОбработкуПерсональныхДанных.mdo index 1aa7632ab..2c2b6bd01 100644 --- a/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/СогласиеНаОбработкуПерсональныхДанных.mdo +++ b/SSL/src/Documents/СогласиеНаОбработкуПерсональныхДанных/СогласиеНаОбработкуПерсональныхДанных.mdo @@ -86,6 +86,7 @@ true true Document.СогласиеНаОбработкуПерсональныхДанных.Form.ФормаДокумента + Document.СогласиеНаОбработкуПерсональныхДанных.Form.ФормаСписка Deny InformationRegister.СогласияНаОбработкуПерсональныхДанных true @@ -97,7 +98,7 @@ Организация - CatalogRef.Организации + DefinedType.Организация ru @@ -106,6 +107,7 @@ ShowError + true Use Use @@ -163,6 +165,7 @@ ShowError + true Use Use @@ -323,6 +326,15 @@ PersonalComputer MobileDevice + + ФормаСписка + + ru + Форма списка + + PersonalComputer + MobileDevice + ПФ_MXL_СогласиеНаОбработкуПерсональныхДанных diff --git a/SSL/src/Documents/СообщениеSMS/Forms/ФормаВыбора/Form.form b/SSL/src/Documents/СообщениеSMS/Forms/ФормаВыбора/Form.form index d95f1d159..cd7cb9c37 100644 --- a/SSL/src/Documents/СообщениеSMS/Forms/ФормаВыбора/Form.form +++ b/SSL/src/Documents/СообщениеSMS/Forms/ФормаВыбора/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка 2 diff --git a/SSL/src/Documents/СообщениеSMS/Forms/ФормаДокумента/Form.form b/SSL/src/Documents/СообщениеSMS/Forms/ФормаДокумента/Form.form index 10e8b78cc..5f9359694 100644 --- a/SSL/src/Documents/СообщениеSMS/Forms/ФормаДокумента/Form.form +++ b/SSL/src/Documents/СообщениеSMS/Forms/ФормаДокумента/Form.form @@ -45,7 +45,6 @@ Left true - true true false false @@ -105,9 +104,7 @@ TextEditEnd ТекстСообщенияОкончаниеВводаТекста - true true - true true true true @@ -166,11 +163,6 @@ ru Сообщение - - ru - Страница сообщение - - true СтраницаСообщениеРасширеннаяПодсказка 127 @@ -728,7 +720,6 @@ Left true - true true true true @@ -870,15 +861,20 @@ Left true - 25 - true + + StartChoice + ПредметНачалоВыбора + + 32 true + false false - true + true + ShowInInputField + false true true true - true Normal @@ -915,9 +911,9 @@ Left true - 25 - true + 32 true + false true true true @@ -1178,7 +1174,6 @@ true Label - true true Style.FieldSelectionBackColor @@ -1311,106 +1306,166 @@ Auto - - ДекорацияПустаяПраво - 104 - true - true - - true - - - ДекорацияПустаяПравоРасширеннаяПодсказка - 156 - Label - true - true - - Left - - - - ДекорацияПустаяПравоКонтекстноеМеню - 105 - true - - Label - true - true - true - true - + + ГруппаСтатусДатаАвтор + 197 + + Статус + 163 + + <key>ru</key> + <value>Состояние</value> + + true + true + + true + + + Объект.Состояние + + Left + + СтатусРасширеннаяПодсказка + 165 + Label + true + true + + Left + + + + СтатусКонтекстноеМеню + 164 + true + + LabelField + true Left - - - - Статус - 163 + Enter + true + Left + true + + 13 + true + true + true + + ru + ДЛФ=DT + + + + + Дата + 4 + + <key>ru</key> + <value>Создано</value> + + true + true + + true + + + Объект.Date + + Left + + ДатаExtendedTooltip + 157 + Label + true + true + + Left + + + + ДатаКонтекстноеМеню + 5 + true + + LabelField + true + Left + Enter + true + Left + true + + 13 + true + true + true + + ru + ДЛФ=DT + + + + + Автор + 2 + true + true + + true + + + Объект.Автор + + Left + + АвторExtendedTooltip + 158 + Label + true + true + + Left + + + + АвторКонтекстноеМеню + 3 + true + + LabelField + true + Left + Enter + true + Left + true + + true + true + true + true + + + true + true + + true + <key>ru</key> - <value>Состояние</value> + <value>Группа статус дата автор</value> - true - true - - true - - - Объект.Состояние - - Left - - СтатусРасширеннаяПодсказка - 165 - Label - true - true - - Left - - - - СтатусКонтекстноеМеню - 164 - true - - LabelField - true - Left - Enter - true - Left - true - - 13 - true - true - true - - ru - ДЛФ=DT - - - - - Дата - 4 - + <toolTip> <key>ru</key> - <value>Создано</value> - - true - true - - true - - - Объект.Date - - Left + Группа статус дата автор + + true + Bottom - ДатаExtendedTooltip - 157 + ГруппаСтатусДатаАвторРасширеннаяПодсказка + 198 Label true true @@ -1418,68 +1473,16 @@ Left - - ДатаКонтекстноеМеню - 5 - true - - LabelField - true - Left - Enter - true - Left - true - - 13 - true - true - true - - ru - ДЛФ=DT - - - - - Автор - 2 - true - true - - true - - - Объект.Автор - - Left - - АвторExtendedTooltip - 158 - Label - true - true - - Left - - - - АвторКонтекстноеМеню - 3 - true - - LabelField - true - Left - Enter - true - Left - true - - true - true - true - true + UsualGroup + + Vertical + Bottom + Auto + WeakSeparation + true + true + Auto + Auto true @@ -1633,9 +1636,13 @@ Form.StandardCommand.WriteAndClose Normal + Picture true true UserCmds + + StdPicture.WriteAndClose + Auto @@ -1658,100 +1665,18 @@ Form.StandardCommand.Write Normal - Auto - true - true - UserCmds - Auto - - - ФормаУстановитьПометкуУдаления - 88 - true - true - - true - - - ФормаУстановитьПометкуУдаленияExtendedTooltip - 114 - Label - true - true - - Left - - - Form.StandardCommand.SetDeletionMark - Normal - Auto - true - true - UserCmds - Auto - - - ФормаПеречитать - 87 - true - true - - true - - - ФормаПеречитатьExtendedTooltip - 115 - Label - true - true - - Left - - - Form.StandardCommand.Reread - Normal - Auto + Picture true true UserCmds + + StdPicture.Write + Auto ГруппаГлобальныеКоманды 90 - - ФормаПоказатьВСписке - 183 - - <key>ru</key> - <value>Показать в списке</value> - - true - true - - true - - - ФормаПоказатьВСпискеРасширеннаяПодсказка - 184 - Label - true - true - - Left - - - Form.StandardCommand.ShowInList - - DocumentJournal.Взаимодействия - - Normal - Auto - true - true - UserCmds - Auto - true true @@ -1775,6 +1700,178 @@ FormCommandPanelGlobalCommands + + ПодменюПечать + 185 + true + true + + true + + + <key>ru</key> + <value>Печать</value> + + + ru + Команды печати + + + ПодменюПечатьРасширеннаяПодсказка + 186 + Label + true + true + + Left + + + Popup + + + StdPicture.Print + + Auto + Normal + + + + ФормаГруппаКомандыФормы + 187 + true + true + + true + + + <key>ru</key> + <value>Команды формы</value> + + + ru + Команды формы + + + ФормаГруппаКомандыФормыРасширеннаяПодсказка + 188 + Label + true + true + + Left + + + + Form + + + + ПодменюОтчеты + 189 + + ПодменюОтчетыВажное + 191 + true + true + + true + + + ru + Подменю отчеты важное + + + ПодменюОтчетыВажноеРасширеннаяПодсказка + 192 + Label + true + true + + Left + + + + + + ПодменюОтчетыПерейти + 193 + true + true + + true + + + ru + Подменю отчеты важное + + + ПодменюОтчетыПерейтиРасширеннаяПодсказка + 194 + Label + true + true + + Left + + + + + + ПодменюОтчетыСмТакже + 195 + true + true + + true + + + ru + Подменю отчеты важное + + + ПодменюОтчетыСмТакжеРасширеннаяПодсказка + 196 + Label + true + true + + Left + + + + + true + true + + true + + + <key>ru</key> + <value>Отчеты</value> + + + ru + Отчеты + + + ПодменюОтчетыРасширеннаяПодсказка + 190 + Label + true + true + + Left + + + Popup + + + CommonPicture.Отчеты + + PictureAndText + Normal + + ФормаСправка 89 @@ -1803,6 +1900,10 @@ Left + + ChoiceProcessing + ОбработкаВыбора + NotificationProcessing ОбработкаОповещения diff --git a/SSL/src/Documents/СообщениеSMS/Forms/ФормаДокумента/Module.bsl b/SSL/src/Documents/СообщениеSMS/Forms/ФормаДокумента/Module.bsl index 2d83f5de7..6441e8307 100644 --- a/SSL/src/Documents/СообщениеSMS/Forms/ФормаДокумента/Module.bsl +++ b/SSL/src/Documents/СообщениеSMS/Forms/ФормаДокумента/Module.bsl @@ -1,4 +1,11 @@ +#Область ОписаниеПеременных + +&НаКлиенте +Перем КонтекстВыбора; + +#КонецОбласти + #Область ОбработчикиСобытийФормы &НаСервере @@ -144,6 +151,13 @@ КонецПроцедуры +&НаКлиенте +Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора) + + ВзаимодействияКлиент.ФормаОбработкаВыбора(ЭтотОбъект, ВыбранноеЗначение, ИсточникВыбора, КонтекстВыбора); + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы @@ -198,6 +212,13 @@ КонецПроцедуры +&НаКлиенте +Процедура ПредметНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + + ВзаимодействияКлиент.ПредметНачалоВыбора(ЭтотОбъект, Элемент, ДанныеВыбора, СтандартнаяОбработка); + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыАдресаты @@ -229,6 +250,7 @@ ПараметрыОткрытия.Вставить("ТолькоТелефон", Истина); ПараметрыОткрытия.Вставить("ЗаменятьПустыеАдресИПредставление", Истина); ПараметрыОткрытия.Вставить("ДляФормыУточненияКонтактов", Ложь); + ПараметрыОткрытия.Вставить("ИдентификаторФормы", УникальныйИдентификатор); ВзаимодействияКлиент.ВыбратьКонтакт(Предмет, текДанные.КакСвязаться, текДанные.ПредставлениеКонтакта, текДанные.Контакт, ПараметрыОткрытия); @@ -316,11 +338,8 @@ Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("ДополнительныеОтчетыИОбработки") Тогда МодульДополнительныеОтчетыИОбработкиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ДополнительныеОтчетыИОбработкиКлиент"); - Если НЕ МодульДополнительныеОтчетыИОбработкиКлиент.ВыполнитьНазначаемуюКомандуНаКлиенте(ЭтотОбъект, Команда.Имя) Тогда - РезультатВыполнения = Неопределено; - ДополнительныеОтчетыИОбработкиВыполнитьНазначаемуюКомандуНаСервере(Команда.Имя, РезультатВыполнения); - МодульДополнительныеОтчетыИОбработкиКлиент.ПоказатьРезультатВыполненияКоманды(ЭтотОбъект, РезультатВыполнения); + ДополнительныеОтчетыИОбработкиВыполнитьНазначаемуюКомандуНаСервере(Команда.Имя); КонецЕсли; КонецЕсли; @@ -368,11 +387,11 @@ // СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки &НаСервере -Процедура ДополнительныеОтчетыИОбработкиВыполнитьНазначаемуюКомандуНаСервере(ИмяЭлемента, РезультатВыполнения) +Процедура ДополнительныеОтчетыИОбработкиВыполнитьНазначаемуюКомандуНаСервере(ИмяЭлемента) Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ДополнительныеОтчетыИОбработки") Тогда МодульДополнительныеОтчетыИОбработки = ОбщегоНазначения.ОбщийМодуль("ДополнительныеОтчетыИОбработки"); - МодульДополнительныеОтчетыИОбработки.ВыполнитьНазначаемуюКомандуНаСервере(ЭтотОбъект, ИмяЭлемента, РезультатВыполнения); + МодульДополнительныеОтчетыИОбработки.ВыполнитьНазначаемуюКомандуНаСервере(ЭтотОбъект, ИмяЭлемента); КонецЕсли; КонецПроцедуры @@ -546,34 +565,34 @@ КонецПроцедуры &НаСервере -Процедура ОбработатьПереданныеПараметры(Параметры) +Процедура ОбработатьПереданныеПараметры(ПереданныеПараметры) Если Объект.Ссылка.Пустая() Тогда - Если Параметры.Свойство("Текст") И НЕ ПустаяСтрока(Параметры.Текст) Тогда + Если ПереданныеПараметры.Свойство("Текст") И НЕ ПустаяСтрока(ПереданныеПараметры.Текст) Тогда - Объект.ТекстСообщения = Параметры.Текст; + Объект.ТекстСообщения = ПереданныеПараметры.Текст; КонецЕсли; - Если Параметры.Адресаты <> Неопределено Тогда + Если ПереданныеПараметры.Адресаты <> Неопределено Тогда - Если ТипЗнч(Параметры.Адресаты) = Тип("Строка") И НЕ ПустаяСтрока(Параметры.Адресаты) Тогда + Если ТипЗнч(ПереданныеПараметры.Адресаты) = Тип("Строка") И НЕ ПустаяСтрока(ПереданныеПараметры.Адресаты) Тогда НоваяСтрока = Объект.Адресаты.Добавить(); - НоваяСтрока.Адрес = Параметры.Кому; + НоваяСтрока.Адрес = ПереданныеПараметры.Кому; - ИначеЕсли ТипЗнч(Параметры.Адресаты) = Тип("СписокЗначений") Тогда + ИначеЕсли ТипЗнч(ПереданныеПараметры.Адресаты) = Тип("СписокЗначений") Тогда - Для Каждого ЭлементСписка Из Параметры.Адресаты Цикл + Для Каждого ЭлементСписка Из ПереданныеПараметры.Адресаты Цикл НоваяСтрока = Объект.Адресаты.Добавить(); НоваяСтрока.КакСвязаться = ЭлементСписка.Значение; НоваяСтрока.Представление = ЭлементСписка.Представление; КонецЦикла; - ИначеЕсли ТипЗнч(Параметры.Адресаты) = Тип("Массив") Тогда + ИначеЕсли ТипЗнч(ПереданныеПараметры.Адресаты) = Тип("Массив") Тогда - Для Каждого ЭлементМассива Из Параметры.Адресаты Цикл + Для Каждого ЭлементМассива Из ПереданныеПараметры.Адресаты Цикл НоваяСтрока = Объект.Адресаты.Добавить(); НоваяСтрока.КакСвязаться = ЭлементМассива.Телефон; @@ -586,12 +605,12 @@ КонецЕсли; - Если Параметры.Свойство("Предмет") Тогда - Предмет = Параметры.Предмет; + Если ПереданныеПараметры.Свойство("Предмет") Тогда + Предмет = ПереданныеПараметры.Предмет; КонецЕсли; - Если Параметры.Свойство("ОтправлятьВТранслите") Тогда - Объект.ОтправлятьВТранслите = Параметры.ОтправлятьВТранслите; + Если ПереданныеПараметры.Свойство("ОтправлятьВТранслите") Тогда + Объект.ОтправлятьВТранслите = ПереданныеПараметры.ОтправлятьВТранслите; КонецЕсли; КонецЕсли; diff --git a/SSL/src/Documents/СообщениеSMS/Forms/ФормаСписка/Form.form b/SSL/src/Documents/СообщениеSMS/Forms/ФормаСписка/Form.form index 065f49c1e..6e5dca692 100644 --- a/SSL/src/Documents/СообщениеSMS/Forms/ФормаСписка/Form.form +++ b/SSL/src/Documents/СообщениеSMS/Forms/ФормаСписка/Form.form @@ -80,6 +80,7 @@ Left true + 9 true true diff --git a/SSL/src/Documents/СообщениеSMS/Forms/ФормаСписка/Module.bsl b/SSL/src/Documents/СообщениеSMS/Forms/ФормаСписка/Module.bsl index cfc494c8d..164d3c116 100644 --- a/SSL/src/Documents/СообщениеSMS/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/Documents/СообщениеSMS/Forms/ФормаСписка/Module.bsl @@ -2,6 +2,7 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); Если Параметры.Свойство("АвтоТест") Тогда Возврат; @@ -17,3 +18,15 @@ КонецПроцедуры #КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Процедура УстановитьУсловноеОформление() + + СтандартныеПодсистемыСервер.УстановитьУсловноеОформлениеПоляДата(ЭтотОбъект, "Список.Дата", Элементы.Дата.Имя); + +КонецПроцедуры + +#КонецОбласти + diff --git a/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаВыбора/Form.form b/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаВыбора/Form.form index 74d081146..ceb12f488 100644 --- a/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаВыбора/Form.form +++ b/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаВыбора/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка 2 diff --git a/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаДокумента/Form.form b/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаДокумента/Form.form index 03f3ea1c1..e25c2e5cd 100644 --- a/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаДокумента/Form.form +++ b/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаДокумента/Form.form @@ -310,10 +310,8 @@ Left true - 39 - true true - false + true true true true @@ -360,7 +358,6 @@ Left true - true true true true @@ -377,11 +374,6 @@ ru Описание - - ru - Описание - - true СтраницаОписаниеExtendedTooltip 122 @@ -468,7 +460,6 @@ Left true - true true true true @@ -609,15 +600,20 @@ Left true - 25 - true + + StartChoice + ПредметНачалоВыбора + + 30 true + false false - true + true + ShowInInputField + false true true true - true Normal @@ -654,9 +650,9 @@ Left true - 25 - true + 30 true + false true true true @@ -830,8 +826,6 @@ true Label - 25 - true true Style.FieldSelectionBackColor @@ -898,7 +892,6 @@ Label true true - false Style.ПоясняющийТекст @@ -944,12 +937,6 @@ ru Страницы указаны контакты - - ru - Страницы указаны контакты - - 13 - false СтраницыУказаныКонтактыExtendedTooltip 138 @@ -965,53 +952,68 @@ Auto - - ДекорацияПустаяПраво - 92 + + ГруппаАвтор + 173 + + Автор + 96 + true + true + + true + + + Объект.Автор + + Left + + АвторExtendedTooltip + 130 + Label + true + true + + Left + + + + АвторКонтекстноеМеню + 97 + true + + LabelField + true + Left + Bottom + Bottom + Enter + true + Left + true + + true + true + + true true true - - ДекорацияПустаяПравоРасширеннаяПодсказка - 128 - Label - true - true - - Left - - - - ДекорацияПустаяПравоКонтекстноеМеню - 93 - true - - Label - true - true - true + + <key>ru</key> + <value>Группа автор</value> + + + ru + Группа автор + true - - Right - - - - Автор - 96 - true - true - - true - - - Объект.Автор - - Left + Bottom - АвторExtendedTooltip - 130 + ГруппаАвторРасширеннаяПодсказка + 174 Label true true @@ -1019,24 +1021,15 @@ Left - - АвторКонтекстноеМеню - 97 - true - - LabelField - true - Left - Enter - true - Left - true - - 25 - true - true - false - true + UsualGroup + + Vertical + Bottom + Auto + true + true + Auto + Auto true @@ -1052,6 +1045,7 @@ ru Группа право + true ГруппаПравоРасширеннаяПодсказка 132 @@ -1075,6 +1069,260 @@ ФормаКоманднаяПанель -1 + + ФормаЗаписатьИЗакрыть + 153 + true + true + + true + + + ФормаЗаписатьИЗакрытьРасширеннаяПодсказка + 154 + Label + true + true + + Left + + + Form.StandardCommand.WriteAndClose + Auto + true + true + true + UserCmds + Auto + + + ФормаЗаписать + 155 + true + true + + true + + + ФормаЗаписатьРасширеннаяПодсказка + 156 + Label + true + true + + Left + + + Form.StandardCommand.Write + Normal + Auto + true + true + UserCmds + Auto + + + ФормаГлобальныеКоманды + 157 + true + true + + true + + + <key>ru</key> + <value>Форма глобальные команды</value> + + + ru + Форма глобальные команды + + + ФормаГлобальныеКомандыРасширеннаяПодсказка + 158 + Label + true + true + + Left + + + + FormCommandPanelGlobalCommands + + + + ПодменюПечать + 159 + true + true + + true + + + <key>ru</key> + <value>Печать</value> + + + ru + Команды печати + + + ПодменюПечатьРасширеннаяПодсказка + 160 + Label + true + true + + Left + + + Popup + + + StdPicture.Print + + Auto + Normal + + + + ФормаГруппаКомандыФормы + 161 + true + true + + true + + + <key>ru</key> + <value>Команды формы</value> + + + ru + Команды формы + + + ФормаГруппаКомандыФормыРасширеннаяПодсказка + 162 + Label + true + true + + Left + + + + Form + + + + ПодменюОтчеты + 165 + + ПодменюОтчетыВажное + 167 + true + true + + true + + + ru + Подменю отчеты важное + + + ПодменюОтчетыВажноеРасширеннаяПодсказка + 168 + Label + true + true + + Left + + + + + + ПодменюОтчетыПерейти + 169 + true + true + + true + + + ru + Подменю отчеты важное + + + ПодменюОтчетыПерейтиРасширеннаяПодсказка + 170 + Label + true + true + + Left + + + + + + ПодменюОтчетыСмТакже + 171 + true + true + + true + + + ru + Подменю отчеты важное + + + ПодменюОтчетыСмТакжеРасширеннаяПодсказка + 172 + Label + true + true + + Left + + + + + true + true + + true + + + <key>ru</key> + <value>Отчеты</value> + + + ru + Отчеты + + + ПодменюОтчетыРасширеннаяПодсказка + 166 + Label + true + true + + Left + + + Popup + + + CommonPicture.Отчеты + + PictureAndText + Normal + + СоздатьКонтакт 34 @@ -1163,9 +1411,38 @@ UserCmds Auto + + ФормаСправка + 163 + true + true + + true + + + ФормаСправкаРасширеннаяПодсказка + 164 + Label + true + true + + Left + + + Form.StandardCommand.Help + Normal + Auto + true + true + UserCmds + Auto + Left - true + + ChoiceProcessing + ОбработкаВыбора + NotificationProcessing ОбработкаОповещения diff --git a/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаДокумента/Module.bsl b/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаДокумента/Module.bsl index 0eb9f6b95..b0440ecfc 100644 --- a/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаДокумента/Module.bsl +++ b/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаДокумента/Module.bsl @@ -1,4 +1,11 @@ +#Область ОписаниеПеременных + +&НаКлиенте +Перем КонтекстВыбора; + +#КонецОбласти + #Область ОбработчикиСобытийФормы &НаСервере @@ -126,6 +133,13 @@ КонецПроцедуры +&НаКлиенте +Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора) + + ВзаимодействияКлиент.ФормаОбработкаВыбора(ЭтотОбъект, ВыбранноеЗначение, ИсточникВыбора, КонтекстВыбора); + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы @@ -154,6 +168,7 @@ ПараметрыОткрытия.Вставить("ТолькоТелефон", Истина); ПараметрыОткрытия.Вставить("ЗаменятьПустыеАдресИПредставление", Истина); ПараметрыОткрытия.Вставить("ДляФормыУточненияКонтактов", Ложь); + ПараметрыОткрытия.Вставить("ИдентификаторФормы", УникальныйИдентификатор); ВзаимодействияКлиент.ВыбратьКонтакт(Предмет, Объект.АбонентКакСвязаться, Объект.АбонентПредставление, Объект.АбонентКонтакт, ПараметрыОткрытия); @@ -193,6 +208,13 @@ КонецПроцедуры +&НаКлиенте +Процедура ПредметНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + + ВзаимодействияКлиент.ПредметНачалоВыбора(ЭтотОбъект, Элемент, ДанныеВыбора, СтандартнаяОбработка); + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиКомандФормы diff --git a/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаСписка/Form.form b/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаСписка/Form.form index 93748b767..462538da3 100644 --- a/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаСписка/Form.form +++ b/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка 2 @@ -80,6 +79,7 @@ Left true + 9 true true @@ -202,7 +202,7 @@ true - Список.Предмет + Список.Тема ПредметРасширеннаяПодсказка @@ -364,6 +364,10 @@ Left true + + OnCreateAtServer + ПриСозданииНаСервере + DontBlock true true diff --git a/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаСписка/Module.bsl b/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаСписка/Module.bsl new file mode 100644 index 000000000..8ac3dba96 --- /dev/null +++ b/SSL/src/Documents/ТелефонныйЗвонок/Forms/ФормаСписка/Module.bsl @@ -0,0 +1,22 @@ +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + УстановитьУсловноеОформление(); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Процедура УстановитьУсловноеОформление() + + СтандартныеПодсистемыСервер.УстановитьУсловноеОформлениеПоляДата(ЭтотОбъект, "Список.Дата", Элементы.Дата.Имя); + +КонецПроцедуры + +#КонецОбласти + diff --git a/SSL/src/Documents/ТелефонныйЗвонок/ТелефонныйЗвонок.mdo b/SSL/src/Documents/ТелефонныйЗвонок/ТелефонныйЗвонок.mdo index 3589b6d4a..b10ea9ce1 100644 --- a/SSL/src/Documents/ТелефонныйЗвонок/ТелефонныйЗвонок.mdo +++ b/SSL/src/Documents/ТелефонныйЗвонок/ТелефонныйЗвонок.mdo @@ -329,10 +329,10 @@ Use - Предмет + УдалитьПредмет ru - Предмет + (не используется) предмет DefinedType.ПредметВзаимодействия diff --git a/SSL/src/Documents/ЭлектронноеПисьмоВходящее/Forms/ФормаДокумента/Form.form b/SSL/src/Documents/ЭлектронноеПисьмоВходящее/Forms/ФормаДокумента/Form.form index 8c7a67e91..8a50036c7 100644 --- a/SSL/src/Documents/ЭлектронноеПисьмоВходящее/Forms/ФормаДокумента/Form.form +++ b/SSL/src/Documents/ЭлектронноеПисьмоВходящее/Forms/ФормаДокумента/Form.form @@ -40,7 +40,6 @@ ОтправительПредставлениеОткрытие 40 - true true false true @@ -82,7 +81,6 @@ true 40 - true true true false @@ -124,7 +122,6 @@ true 40 - true true false true @@ -165,7 +162,6 @@ true 40 - true true true true @@ -233,11 +229,6 @@ ru Письмо - - ru - Описание - - true СтраницаОписаниеExtendedTooltip 277 @@ -324,7 +315,6 @@ Left true - true true true true @@ -372,11 +362,6 @@ ru Страницы описание дополнительно - - ru - Страницы описание дополнительно - - 40 СтраницыОписаниеДополнительноExtendedTooltip 276 @@ -784,7 +769,7 @@ true true - true + 32 true 2 true @@ -843,15 +828,20 @@ Left true - 25 - true + + StartChoice + ПредметНачалоВыбора + + 32 true + false false - true + true + ShowInInputField + false true true true - true Normal @@ -888,9 +878,10 @@ Left true - 25 + 32 true true + false true true true @@ -947,6 +938,10 @@ РассмотретьПосле Top + + ru + Плановые дата и время работы по письму + РассмотретьПослеExtendedTooltip 264 @@ -1088,11 +1083,6 @@ ru Страница контакты не заполнены - - ru - Страница контакты не заполнены - - true СтраницаКонтактыНеЗаполненыExtendedTooltip 257 @@ -1118,11 +1108,6 @@ ru Страницы указаны контакты - - ru - Страницы указаны контакты - - true СтраницыУказаныКонтактыExtendedTooltip 253 @@ -1138,53 +1123,143 @@ Auto - - ДекорацияПустая - 289 + + ГруппаВажностьНомерОтправлено + 187 + + Важность + 167 + true + true + + true + + + Объект.Важность + + Left + + ВажностьExtendedTooltip + 260 + Label + true + true + + Left + + + + ВажностьКонтекстноеМеню + 168 + true + + LabelField + Enter + true + Left + true + + true + true + + + + Номер + 219 + true + true + + true + + + Объект.Number + + + НомерExtendedTooltip + 283 + Label + true + true + + Left + + + + НомерКонтекстноеМеню + 220 + true + + LabelField + Enter + true + Left + true + + 11 + true + true + false + + + + ДатаОтправления + 221 + true + true + + true + + + Объект.Date + + + ДатаОтправленияExtendedTooltip + 284 + Label + true + true + + Left + + + + ДатаОтправленияКонтекстноеМеню + 222 + true + + LabelField + true + Enter + true + Left + true + + 11 + true + true + + ru + ДФ='дд.ММ.гггг Ч:мм' + + + true true true - - ДекорацияПустаяРасширеннаяПодсказка - 291 - Label - true - true - - Left - - - - ДекорацияПустаяКонтекстноеМеню - 290 - true - - Label - true - true - true + + <key>ru</key> + <value>Группа важность номер отправлено</value> + + + ru + Группа важность номер отправлено + true - - Left - - - - Важность - 167 - true - true - - true - - - Объект.Важность - - Left - ВажностьExtendedTooltip - 260 + ГруппаВажностьНомерОтправленоРасширеннаяПодсказка + 244 Label true true @@ -1192,99 +1267,16 @@ Left - - ВажностьКонтекстноеМеню - 168 - true - - LabelField - Enter - true - Left - true - - true - true - - - - Номер - 219 - true - true - - true - - - Объект.Number - - - НомерExtendedTooltip - 283 - Label - true - true - - Left - - - - НомерКонтекстноеМеню - 220 - true - - LabelField - Enter - true - Left - true - - 11 - true - true - false - - - - ДатаОтправления - 221 - true - true - - true - - - Объект.Date - - - ДатаОтправленияExtendedTooltip - 284 - Label - true - true - - Left - - - - ДатаОтправленияКонтекстноеМеню - 222 - true - - LabelField - true - Enter - true - Left - true - - 11 - true - true - - ru - ДФ='дд.ММ.гггг Ч:мм' - + UsualGroup + + Vertical + Bottom + Auto + true + true + LeftWide + Auto + Auto true @@ -1320,218 +1312,6 @@ Auto - - ГруппаПолучателиПрочее - 187 - - ГруппаПолучатели - 186 - true - true - - true - - - <key>ru</key> - <value>Группа получатели</value> - - - ru - Группа получатели - - - ГруппаПолучателиExtendedTooltip - 245 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаВажностьОтработка - 229 - - ГруппаПрочее - 188 - - ГруппаОтработать - 189 - true - true - - true - - - <key>ru</key> - <value>Группа отработать</value> - - - ru - Группа отработать - - - ГруппаОтработатьExtendedTooltip - 263 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа прочее</value> - - - ru - Группа прочее - - - ГруппаПрочееExtendedTooltip - 261 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа важность отработка</value> - - 50 - false - - ГруппаВажностьОтработкаExtendedTooltip - 250 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа получатели прочее</value> - - - ru - Группа получатели прочее - - - ГруппаПолучателиПрочееExtendedTooltip - 244 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - LeftWide - Auto - Auto - - - - ГруппаОтправленоНомер - 216 - true - true - - true - - - <key>ru</key> - <value>Группа отправлено номер</value> - - - ru - Группа отправлено номер - - - ГруппаОтправленоНомерExtendedTooltip - 282 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - ФормаКоманднаяПанель -1 @@ -1875,33 +1655,6 @@ FormCommandPanelGlobalCommands - - Справка - 89 - true - true - - true - - false - - СправкаExtendedTooltip - 242 - Label - true - true - - Left - - - Form.StandardCommand.Help - Normal - Auto - true - true - UserCmds - Auto - ФормаПоказатьВСписке 301 @@ -1962,6 +1715,33 @@ Auto InAdditionalSubmenu + + Справка + 89 + true + true + + true + + false + + СправкаExtendedTooltip + 242 + Label + true + true + + Left + + + Form.StandardCommand.Help + Normal + Auto + true + true + UserCmds + Auto + Left @@ -2354,6 +2134,26 @@ true + + ЗапрещенныеРасширения + + <key>ru</key> + <value>Запрещенные расширения</value> + + 15 + + ValueList + + + true + + + true + + + + + ОткрытьВложение diff --git a/SSL/src/Documents/ЭлектронноеПисьмоВходящее/Forms/ФормаДокумента/Module.bsl b/SSL/src/Documents/ЭлектронноеПисьмоВходящее/Forms/ФормаДокумента/Module.bsl index 47fb745f4..8fbd64e29 100644 --- a/SSL/src/Documents/ЭлектронноеПисьмоВходящее/Forms/ФормаДокумента/Module.bsl +++ b/SSL/src/Documents/ЭлектронноеПисьмоВходящее/Forms/ФормаДокумента/Module.bsl @@ -1,4 +1,11 @@ +#Область ОписаниеПеременных + +&НаКлиенте +Перем КонтекстВыбора; + +#КонецОбласти + #Область ОбработчикиСобытийФормы &НаСервере @@ -33,6 +40,8 @@ Элементы.СтраницаКомментарий.Картинка = ОбщегоНазначенияКлиентСервер.КартинкаКомментария(Объект.Комментарий); КонецЕсли; + ЗапрещенныеРасширения = ФайловыеФункцииСлужебный.СписокЗапрещенныхРасширений(); + КонецПроцедуры &НаКлиенте @@ -135,6 +144,10 @@ ИзменилисьКонтакты = Истина; Модифицированность = Истина; + Иначе + + ВзаимодействияКлиент.ФормаОбработкаВыбора(ЭтотОбъект, ВыбранноеЗначение, ИсточникВыбора, КонтекстВыбора); + КонецЕсли; КонецПроцедуры @@ -316,6 +329,13 @@ КонецПроцедуры +&НаКлиенте +Процедура ПредметНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + + ВзаимодействияКлиент.ПредметНачалоВыбора(ЭтотОбъект, Элемент, ДанныеВыбора, СтандартнаяОбработка); + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыВложения @@ -415,7 +435,7 @@ &НаКлиенте Процедура ИзменитьКодировку(Команда) - СписокКодировок = ВзаимодействияКлиентСервер.ПолучитьСписокКодировок(); + СписокКодировок = ВзаимодействияКлиентСервер.СписокКодировок(); ОбработчикОповещенияОЗакрытии = Новый ОписаниеОповещения("ВыборКодировкиПослеЗавершения", ЭтотОбъект); @@ -467,7 +487,7 @@ Если НЕ ЗначениеЗаполнено(ТекущиеДанные.Ссылка) Тогда Возврат; КонецЕсли; - УправлениеЭлектроннойПочтойКлиент.ОткрытьВложение(ТекущиеДанные.Ссылка,УникальныйИдентификатор); + УправлениеЭлектроннойПочтойКлиент.ОткрытьВложение(ТекущиеДанные.Ссылка, ЭтотОбъект); КонецЕсли; @@ -481,7 +501,7 @@ ЗаписьТекста.Записать( ?(Объект.ТипТекста = Перечисления.ТипыТекстовЭлектронныхПисем.HTML, Объект.ТекстHTML, Объект.Текст)); ЗаписьТекста.Закрыть(); - + ЧтениеТекста = Новый ЧтениеТекста(ИмяВременногоФайла, ВыбраннаяКодировка); Если Объект.ТипТекста = Перечисления.ТипыТекстовЭлектронныхПисем.HTML Тогда Объект.ТекстHTML = ЧтениеТекста.Прочитать(); diff --git a/SSL/src/Documents/ЭлектронноеПисьмоВходящее/Forms/ФормаСписка/Form.form b/SSL/src/Documents/ЭлектронноеПисьмоВходящее/Forms/ФормаСписка/Form.form index 6968b3667..abc9c7433 100644 --- a/SSL/src/Documents/ЭлектронноеПисьмоВходящее/Forms/ФормаСписка/Form.form +++ b/SSL/src/Documents/ЭлектронноеПисьмоВходящее/Forms/ФормаСписка/Form.form @@ -83,6 +83,7 @@ <headerHorizontalAlign>Left</headerHorizontalAlign> <showInFooter>true</showInFooter> <extInfo xsi:type="form:LabelFieldExtInfo"> + <width>9</width> <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> </extInfo> @@ -334,6 +335,10 @@ <horizontalAlign>Left</horizontalAlign> <autoFill>true</autoFill> </autoCommandBar> + <handlers> + <event>OnCreateAtServer</event> + <name>ПриСозданииНаСервере</name> + </handlers> <excludedCommands>Copy</excludedCommands> <excludedCommands>Create</excludedCommands> <excludedCommands>Delete</excludedCommands> diff --git a/SSL/src/Documents/ЭлектронноеПисьмоВходящее/Forms/ФормаСписка/Module.bsl b/SSL/src/Documents/ЭлектронноеПисьмоВходящее/Forms/ФормаСписка/Module.bsl new file mode 100644 index 000000000..8ac3dba96 --- /dev/null +++ b/SSL/src/Documents/ЭлектронноеПисьмоВходящее/Forms/ФормаСписка/Module.bsl @@ -0,0 +1,22 @@ +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + УстановитьУсловноеОформление(); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Процедура УстановитьУсловноеОформление() + + СтандартныеПодсистемыСервер.УстановитьУсловноеОформлениеПоляДата(ЭтотОбъект, "Список.Дата", Элементы.Дата.Имя); + +КонецПроцедуры + +#КонецОбласти + diff --git a/SSL/src/Documents/ЭлектронноеПисьмоВходящее/ManagerModule.bsl b/SSL/src/Documents/ЭлектронноеПисьмоВходящее/ManagerModule.bsl index 1614ca1ce..54236b3b9 100644 --- a/SSL/src/Documents/ЭлектронноеПисьмоВходящее/ManagerModule.bsl +++ b/SSL/src/Documents/ЭлектронноеПисьмоВходящее/ManagerModule.bsl @@ -134,3 +134,42 @@ КонецПроцедуры #КонецОбласти + +#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда + +#Область СлужебныеПроцедурыИФункции + +#Область ОбработчикиОбновления + +// Регистрирует к обработке электронные письма у которых возможно заполнить ВзаимодействиеОснование. +// +Процедура ЗаполнитьВзаимодействияОснованияУПодчиненныхПисемКОбработке(Параметры) Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = Взаимодействия.ТекстЗапросаОтметкиКОбработкиЗаполненияПисемОснований("Документ.ЭлектронноеПисьмоВходящее"); + + ОбновлениеИнформационнойБазы.ОтметитьКОбработке( + Параметры, + Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка")); + +КонецПроцедуры + +// Выполняет дозаполнение реквизита ВзаимодействиеОснование у электронных писем. +// +Процедура ЗаполнитьВзаимодействияОснованияУПодчиненныхПисем(Параметры) Экспорт + + ПолноеИмяДокумента = "Документ.ЭлектронноеПисьмоВходящее"; + МетаданныеДокумента = Метаданные.Документы.ЭлектронноеПисьмоВходящее; + + Взаимодействия.ЗаполнитьВзаимодействияОснованияУПодчиненныхПисем(Параметры, ПолноеИмяДокумента, МетаданныеДокумента); + +КонецПроцедуры + +#КонецОбласти + +#КонецОбласти + +#КонецЕсли + + + diff --git a/SSL/src/Documents/ЭлектронноеПисьмоВходящее/ЭлектронноеПисьмоВходящее.mdo b/SSL/src/Documents/ЭлектронноеПисьмоВходящее/ЭлектронноеПисьмоВходящее.mdo index 33dcde5bc..59882bcc8 100644 --- a/SSL/src/Documents/ЭлектронноеПисьмоВходящее/ЭлектронноеПисьмоВходящее.mdo +++ b/SSL/src/Documents/ЭлектронноеПисьмоВходящее/ЭлектронноеПисьмоВходящее.mdo @@ -430,10 +430,10 @@ <dataHistory>Use</dataHistory> </attributes> <attributes uuid="7caabe33-184f-45db-bef4-59d4e9cd2394"> - <name>Предмет</name> + <name>УдалитьПредмет</name> <synonym> <key>ru</key> - <value>Предмет</value> + <value>(не используется) предмет</value> </synonym> <type> <types>DefinedType.ПредметВзаимодействия</types> diff --git a/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/Forms/ФормаДокумента/Form.form b/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/Forms/ФормаДокумента/Form.form index 6e68b7905..533320ac2 100644 --- a/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/Forms/ФормаДокумента/Form.form +++ b/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/Forms/ФормаДокумента/Form.form @@ -44,7 +44,6 @@ <name>ПредставлениеОтправителяОбработкаВыбора</name> </handlers> <width>40</width> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <dropListButton>true</dropListButton> <chooseType>true</chooseType> @@ -52,14 +51,364 @@ <textSize>Normal</textSize> </extInfo> </items> - <items xsi:type="form:FormField"> - <name>СписокПолучателейПисьма</name> - <id>130</id> + <items xsi:type="form:Table"> + <name>СписокПолучателей</name> + <id>395</id> <visible>true</visible> <enabled>true</enabled> <userVisible> <common>true</common> </userVisible> + <dataPath xsi:type="form:DataPath"> + <segments>СписокПолучателей</segments> + </dataPath> + <titleLocation>None</titleLocation> + <items xsi:type="form:FormField"> + <name>СписокПолучателейКому</name> + <id>408</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <dataPath xsi:type="form:DataPath"> + <segments>СписокПолучателей.ВариантОтправки</segments> + </dataPath> + <extendedTooltip> + <name>СписокПолучателейКомуРасширеннаяПодсказка</name> + <id>410</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>СписокПолучателейКомуКонтекстноеМеню</name> + <id>409</id> + <autoFill>true</autoFill> + </contextMenu> + <type>InputField</type> + <editMode>Auto</editMode> + <showInHeader>true</showInHeader> + <headerHorizontalAlign>Left</headerHorizontalAlign> + <showInFooter>true</showInFooter> + <extInfo xsi:type="form:InputFieldExtInfo"> + <width>14</width> + <autoMaxWidth>true</autoMaxWidth> + <maxWidth>6</maxWidth> + <autoMaxHeight>true</autoMaxHeight> + <horizontalStretch>false</horizontalStretch> + <wrap>true</wrap> + <chooseType>true</chooseType> + <typeDomainEnabled>true</typeDomainEnabled> + <textEdit>true</textEdit> + <choiceList> + <presentation> + <key>ru</key> + <value>Кому:</value> + </presentation> + <value xsi:type="core:StringValue"> + <value>Кому:</value> + </value> + </choiceList> + <choiceList> + <presentation> + <key>ru</key> + <value>Копия:</value> + </presentation> + <value xsi:type="core:StringValue"> + <value>Копия:</value> + </value> + </choiceList> + <choiceList> + <presentation> + <key>ru</key> + <value>Скрытая копия:</value> + </presentation> + <value xsi:type="core:StringValue"> + <value>Скрытая копия:</value> + </value> + </choiceList> + <choiceList> + <presentation> + <key>ru</key> + <value>Обратный адрес:</value> + </presentation> + <value xsi:type="core:StringValue"> + <value>Обратный адрес:</value> + </value> + </choiceList> + <textSize>Normal</textSize> + </extInfo> + </items> + <items xsi:type="form:FormField"> + <name>СписокПолучателейПредставление</name> + <id>416</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <dataPath xsi:type="form:DataPath"> + <segments>СписокПолучателей.Представление</segments> + </dataPath> + <defaultItem>true</defaultItem> + <extendedTooltip> + <name>СписокПолучателейПредставлениеРасширеннаяПодсказка</name> + <id>418</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>СписокПолучателейПредставлениеКонтекстноеМеню</name> + <id>417</id> + <autoFill>true</autoFill> + </contextMenu> + <type>InputField</type> + <editMode>Auto</editMode> + <showInHeader>true</showInHeader> + <headerHorizontalAlign>Left</headerHorizontalAlign> + <showInFooter>true</showInFooter> + <extInfo xsi:type="form:InputFieldExtInfo"> + <handlers> + <event>AutoComplete</event> + <name>СписокПолучателейПредставлениеАвтоПодбор</name> + </handlers> + <handlers> + <event>StartChoice</event> + <name>СписокПолучателейПредставлениеНачалоВыбора</name> + </handlers> + <handlers> + <event>ChoiceProcessing</event> + <name>СписокПолучателейПредставлениеОбработкаВыбора</name> + </handlers> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <wrap>true</wrap> + <choiceButton>true</choiceButton> + <quickChoice>false</quickChoice> + <typeDomainEnabled>true</typeDomainEnabled> + <textEdit>true</textEdit> + <textSize>Normal</textSize> + <choiceHistoryOnInput>DontUse</choiceHistoryOnInput> + </extInfo> + </items> + <items xsi:type="form:FormField"> + <name>СписокПолучателейПолучатель</name> + <id>411</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible/> + <dataPath xsi:type="form:DataPath"> + <segments>СписокПолучателей.Адрес</segments> + </dataPath> + <extendedTooltip> + <name>СписокПолучателейПолучательРасширеннаяПодсказка</name> + <id>413</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>СписокПолучателейПолучательКонтекстноеМеню</name> + <id>412</id> + <autoFill>true</autoFill> + </contextMenu> + <type>InputField</type> + <editMode>Auto</editMode> + <showInHeader>true</showInHeader> + <headerHorizontalAlign>Left</headerHorizontalAlign> + <showInFooter>true</showInFooter> + <extInfo xsi:type="form:InputFieldExtInfo"> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <wrap>true</wrap> + <chooseType>true</chooseType> + <typeDomainEnabled>true</typeDomainEnabled> + <textEdit>true</textEdit> + <textSize>Normal</textSize> + </extInfo> + </items> + <items xsi:type="form:FormField"> + <name>СписокПолучателейКонтакт</name> + <id>421</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible/> + <dataPath xsi:type="form:DataPath"> + <segments>СписокПолучателей.Контакт</segments> + </dataPath> + <extendedTooltip> + <name>СписокПолучателейКонтактРасширеннаяПодсказка</name> + <id>423</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>СписокПолучателейКонтактКонтекстноеМеню</name> + <id>422</id> + <autoFill>true</autoFill> + </contextMenu> + <type>InputField</type> + <editMode>Auto</editMode> + <showInHeader>true</showInHeader> + <headerHorizontalAlign>Left</headerHorizontalAlign> + <showInFooter>true</showInFooter> + <extInfo xsi:type="form:InputFieldExtInfo"> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <wrap>true</wrap> + <chooseType>true</chooseType> + <typeDomainEnabled>true</typeDomainEnabled> + <textEdit>true</textEdit> + <textSize>Normal</textSize> + </extInfo> + </items> + <autoCommandBar> + <name>СписокПолучателейКоманднаяПанель</name> + <id>397</id> + <horizontalAlign>Left</horizontalAlign> + </autoCommandBar> + <handlers> + <event>BeforeEditEnd</event> + <name>СписокПолучателейПередОкончаниемРедактирования</name> + </handlers> + <handlers> + <event>OnStartEdit</event> + <name>СписокПолучателейПриНачалеРедактирования</name> + </handlers> + <handlers> + <event>AfterDeleteRow</event> + <name>СписокПолучателейПослеУдаления</name> + </handlers> + <searchStringAddition> + <name>СписокПолучателейСтрокаПоиска</name> + <id>399</id> + <extendedTooltip> + <name>СписокПолучателейСтрокаПоискаРасширеннаяПодсказка</name> + <id>401</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>СписокПолучателейСтрокаПоискаКонтекстноеМеню</name> + <id>400</id> + <autoFill>true</autoFill> + </contextMenu> + <source>СписокПолучателей</source> + <extInfo xsi:type="form:SearchStringAdditionExtInfo"> + <autoMaxWidth>true</autoMaxWidth> + </extInfo> + </searchStringAddition> + <viewStatusAddition> + <name>СписокПолучателейСостояниеПросмотра</name> + <id>402</id> + <extendedTooltip> + <name>СписокПолучателейСостояниеПросмотраРасширеннаяПодсказка</name> + <id>404</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>СписокПолучателейСостояниеПросмотраКонтекстноеМеню</name> + <id>403</id> + <autoFill>true</autoFill> + </contextMenu> + <type>ViewStatusAddition</type> + <source>СписокПолучателей</source> + <extInfo xsi:type="form:ViewStatusAdditionExtInfo"> + <autoMaxWidth>true</autoMaxWidth> + </extInfo> + </viewStatusAddition> + <searchControlAddition> + <name>СписокПолучателейУправлениеПоиском</name> + <id>405</id> + <extendedTooltip> + <name>СписокПолучателейУправлениеПоискомРасширеннаяПодсказка</name> + <id>407</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>СписокПолучателейУправлениеПоискомКонтекстноеМеню</name> + <id>406</id> + <autoFill>true</autoFill> + </contextMenu> + <type>SearchControlAddition</type> + <source>СписокПолучателей</source> + <extInfo xsi:type="form:SearchControlAdditionExtInfo"> + <autoMaxWidth>true</autoMaxWidth> + </extInfo> + </searchControlAddition> + <extendedTooltip> + <name>СписокПолучателейРасширеннаяПодсказка</name> + <id>398</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <contextMenu> + <name>СписокПолучателейКонтекстноеМеню</name> + <id>396</id> + <autoFill>true</autoFill> + </contextMenu> + <changeRowSet>true</changeRowSet> + <changeRowOrder>true</changeRowOrder> + <height>4</height> + <maxHeight>5</maxHeight> + <heightInTableRows>4</heightInTableRows> + <autoMaxRowsCount>true</autoMaxRowsCount> + <selectionMode>MultiRow</selectionMode> + <headerHeight>1</headerHeight> + <footerHeight>1</footerHeight> + <horizontalScrollBar>AutoUse</horizontalScrollBar> + <verticalScrollBar>AutoUse</verticalScrollBar> + <horizontalLines>true</horizontalLines> + <verticalLines>true</verticalLines> + <useAlternationRowColorBWA>false</useAlternationRowColorBWA> + <autoInsertNewRow>true</autoInsertNewRow> + <searchOnInput>Auto</searchOnInput> + <initialListView>Auto</initialListView> + <horizontalStretch>true</horizontalStretch> + <verticalStretch>true</verticalStretch> + <enableStartDrag>true</enableStartDrag> + <enableDrag>true</enableDrag> + <autoMaxCardHeight>true</autoMaxCardHeight> + <rowFilter xsi:type="core:UndefinedValue"/> + </items> + <items xsi:type="form:FormField"> + <name>СписокПолучателейПисьма</name> + <id>130</id> + <enabled>true</enabled> + <userVisible/> <dataPath xsi:type="form:DataPath"> <segments>Объект.СписокПолучателейПисьма</segments> </dataPath> @@ -96,12 +445,7 @@ <event>TextEditEnd</event> <name>СписокПолучателейОкончаниеВводаТекста</name> </handlers> - <handlers> - <event>ChoiceProcessing</event> - <name>СписокПолучателейОбработкаВыбора</name> - </handlers> <width>40</width> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <choiceButton>true</choiceButton> <chooseType>true</chooseType> @@ -113,11 +457,8 @@ <items xsi:type="form:FormField"> <name>СписокПолучателейКопий</name> <id>155</id> - <visible>true</visible> <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> + <userVisible/> <dataPath xsi:type="form:DataPath"> <segments>Объект.СписокПолучателейКопий</segments> </dataPath> @@ -154,12 +495,7 @@ <event>TextEditEnd</event> <name>СписокПолучателейОкончаниеВводаТекста</name> </handlers> - <handlers> - <event>ChoiceProcessing</event> - <name>СписокПолучателейОбработкаВыбора</name> - </handlers> <width>40</width> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <choiceButton>true</choiceButton> <chooseType>true</chooseType> @@ -175,11 +511,8 @@ <key>ru</key> <value>Скрытые</value> - true true - - true - + Объект.СписокПолучателейСкрытыхКопий @@ -216,12 +549,7 @@ TextEditEnd СписокПолучателейОкончаниеВводаТекста - - ChoiceProcessing - СписокПолучателейОбработкаВыбора - 40 - true true false true @@ -264,7 +592,6 @@ true 40 - true true true true @@ -367,11 +694,6 @@ ru Страница обычный текст - - ru - Страница обычный текст - - true СтраницаОбычныйТекстExtendedTooltip 348 @@ -711,11 +1033,6 @@ ru Письмо - - ru - Описание - - true СтраницаОписаниеExtendedTooltip 345 @@ -802,7 +1119,6 @@ Left true - true true true true @@ -958,7 +1274,7 @@ Left true - true + 2 true true true @@ -1329,7 +1645,7 @@ true true - true + 32 true 2 true @@ -1395,15 +1711,20 @@ Left true - 25 - true + + StartChoice + ПредметНачалоВыбора + + 32 true + false false - true + true + ShowInInputField + false true true true - true Normal @@ -1440,9 +1761,9 @@ Left true - 25 - true + 32 true + false true true true @@ -1712,38 +2033,6 @@ Auto - - ДекорацияПустаяПравая - 365 - true - true - - true - - - ДекорацияПустаяПраваяРасширеннаяПодсказка - 367 - Label - true - true - - Left - - - - ДекорацияПустаяПраваяКонтекстноеМеню - 366 - true - - Label - true - true - true - true - - Left - - СтраницыУказаныКонтакты 255 @@ -1852,11 +2141,6 @@ ru Группа контакты не заполнены - - ru - Группа контакты не заполнены - - true ГруппаКонтактыНеЗаполненыExtendedTooltip 318 @@ -1886,11 +2170,6 @@ ru Страница контакты не заполнены - - ru - Страница контакты не заполнены - - true СтраницаКонтактыНеЗаполненыExtendedTooltip 317 @@ -1916,11 +2195,6 @@ ru Страницы указаны контакты - - ru - Страницы указаны контакты - - true СтраницыУказаныКонтактыExtendedTooltip 313 @@ -1936,57 +2210,148 @@ Auto - - Номер - 276 - true - - true - - - Объект.Number - - - НомерExtendedTooltip - 356 - Label - true - true - - Left + + ГруппаДатаОтправленияНомер + 393 + + ГруппаНомерДатаОтправления + 391 + + Номер + 276 + true + + true + + + Объект.Number + + + НомерExtendedTooltip + 356 + Label + true + true + + Left + + + + НомерКонтекстноеМеню + 277 + true + + LabelField + Bottom + Bottom + Enter + true + Left + true + + 9 + true + true + false + + + + ДатаОтправления + 278 + true + true + + true + + + Объект.ДатаОтправления + + + ДатаОтправленияExtendedTooltip + 357 + Label + true + true + + Left + + + + ДатаОтправленияКонтекстноеМеню + 279 + true + + LabelField + true + Bottom + Bottom + Enter + true + Left + true + + 11 + true + true + + ru + ДФ='дд.ММ.гггг Ч:мм' + + + + true + true + + true + + + <key>ru</key> + <value>Группа номер дата отправления</value> + + + ru + Группа номер дата отправления + + true + Bottom + + ГруппаНомерДатаОтправленияРасширеннаяПодсказка + 392 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + Auto + Auto - - - НомерКонтекстноеМеню - 277 - true - - LabelField - Enter - true - Left - true - - 9 - true - true - false - - - - ДатаОтправления - 278 + true true true - - Объект.ДатаОтправления - + + <key>ru</key> + <value>Группа дата отправления номер</value> + + + ru + Группа дата отправления номер + + true - ДатаОтправленияExtendedTooltip - 357 + ГруппаДатаОтправленияНомерРасширеннаяПодсказка + 394 Label true true @@ -1994,25 +2359,15 @@ Left - - ДатаОтправленияКонтекстноеМеню - 279 - true - - LabelField - true - Enter - true - Left - true - - 11 - true - true - - ru - ДФ='дд.ММ.гггг Ч:мм' - + UsualGroup + + Vertical + Bottom + Auto + true + true + Auto + Auto true @@ -2375,6 +2730,33 @@ Normal + + ФормаСформироватьПоШаблону + 424 + true + true + + true + + + ФормаСформироватьПоШаблонуРасширеннаяПодсказка + 425 + Label + true + true + + Left + + + Form.Command.СформироватьПоШаблону + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + ГруппаГлобальныеКоманды 225 @@ -3186,6 +3568,115 @@ true + + СписокПолучателей + + <key>ru</key> + <value>Список получателей</value> + + 25 + + ValueTable + + + true + + + true + + true + + ВариантОтправки + + <key>ru</key> + <value>Вариант отправки</value> + + 1 + + String + + + + true + + + true + + + + Адрес + + <key>ru</key> + <value>Адрес</value> + + 2 + + String + + + + true + + + true + + + + Представление + + <key>ru</key> + <value>Представление</value> + + 3 + + String + + + + true + + + true + + + + Контакт + + <key>ru</key> + <value>Контакт</value> + + 4 + + DefinedType.КонтактВзаимодействия + + + true + + + true + + + + + ЗапрещенныеРасширения + + <key>ru</key> + <value>Запрещенные расширения</value> + + 26 + + ValueList + + + true + + + true + + + + + Отправить @@ -3458,6 +3949,28 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> + <formCommands> + <name>СформироватьПоШаблону</name> + <title> + <key>ru</key> + <value>Сформировать по шаблону</value> + + 12 + + ru + Сформировать по шаблону + + + true + + + + СформироватьПоШаблону + + + DontUse + Auto + УчетнаяЗапись diff --git a/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/Forms/ФормаДокумента/Module.bsl b/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/Forms/ФормаДокумента/Module.bsl index cf118cd59..3adaa597e 100644 --- a/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/Forms/ФормаДокумента/Module.bsl +++ b/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/Forms/ФормаДокумента/Module.bsl @@ -1,9 +1,15 @@ +#Область ОписаниеПеременных + +&НаКлиенте +Перем КонтекстВыбора; + +#КонецОбласти #Область ОбработчикиСобытийФормы &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - + УстановитьУсловноеОформление(); Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. @@ -29,6 +35,12 @@ УправлениеСвойствами.ПриСозданииНаСервере(ЭтотОбъект, ДополнительныеПараметры); // Конец СтандартныеПодсистемы.Свойства + // СтандартныеПодсистемы.ШаблоныСообщений + ОпределитьВозможностьЗаполненияПисьмаПоШаблону(); + // Конец СтандартныеПодсистемы.ШаблоныСообщений + + ЗапрещенныеРасширения = ФайловыеФункцииСлужебный.СписокЗапрещенныхРасширений(); + КонецПроцедуры &НаКлиенте @@ -110,30 +122,10 @@ ИначеЕсли ВРег(ИсточникВыбора.ИмяФормы) = ВРег("ОбщаяФорма.АдреснаяКнига") ИЛИ ВРег(ИсточникВыбора.ИмяФормы) = ВРег("ОбщаяФорма.УточнениеКонтактов") Тогда - Если ТипЗнч(ВыбранноеЗначение) <> Тип("Массив") И ТипЗнч(ВыбранноеЗначение) <> Тип("Соответствие") Тогда - Возврат; - КонецЕсли; + ЗаполнитьПодобранныхПолучателейПослеВыбора(ВыбранноеЗначение); + Иначе - // Получим список адресатов - СоответствиеТабличныхЧастей = Новый Соответствие; - СоответствиеТабличныхЧастей.Вставить("Кому", Объект.ПолучателиПисьма); - СоответствиеТабличныхЧастей.Вставить("Копии", Объект.ПолучателиКопий); - СоответствиеТабличныхЧастей.Вставить("Скрытые", Объект.ПолучателиСкрытыхКопий); - СоответствиеТабличныхЧастей.Вставить("Ответ", Объект.ПолучателиОтвета); - - ДляПодбора = (Объект.СтатусПисьма <> ПредопределенноеЗначение("Перечисление.СтатусыИсходящегоЭлектронногоПисьма.Отправлено")); - - // Заполним адресатов - Если ДляПодбора Тогда - ЗаполнитьПодобранныхПолучателей(СоответствиеТабличныхЧастей, ВыбранноеЗначение); - Иначе - ЗаполнитьУточненныеКонтакты(ВыбранноеЗначение); - КонецЕсли; - - // Установим признак модифицированности. - ВзаимодействияКлиентСервер.ПроверитьЗаполнениеКонтактов(Объект, ЭтотОбъект, "ЭлектронноеПисьмоИсходящее"); - ИзменилисьКонтакты = Истина; - Модифицированность = Истина; + ВзаимодействияКлиент.ФормаОбработкаВыбора(ЭтотОбъект, ВыбранноеЗначение, ИсточникВыбора, КонтекстВыбора); КонецЕсли; @@ -189,6 +181,40 @@ Объект.ЕстьВложения = (Вложения.Количество() <> 0); + Объект.ПолучателиПисьма.Очистить(); + Объект.ПолучателиКопий.Очистить(); + Объект.ПолучателиСкрытыхКопий.Очистить(); + Объект.ПолучателиОтвета.Очистить(); + Для каждого Получатель Из СписокПолучателей Цикл + + ПочтовыеАдреса = ОбщегоНазначенияКлиентСервер.АдресаЭлектроннойПочтыИзСтроки(Получатель.Представление); + + Для каждого ПочтовыйАдрес Из ПочтовыеАдреса Цикл + + Если Получатель.ВариантОтправки = НСтр("ru = 'Обратный адрес:'") Тогда + НоваяСтрока = Объект.ПолучателиОтвета.Добавить(); + ИначеЕсли Получатель.ВариантОтправки = НСтр("ru = 'Копия:'") Тогда + НоваяСтрока = Объект.ПолучателиКопий.Добавить(); + ИначеЕсли Получатель.ВариантОтправки = НСтр("ru = 'Скрытая копия:'") Тогда + НоваяСтрока = Объект.ПолучателиСкрытыхКопий.Добавить(); + Иначе + НоваяСтрока = Объект.ПолучателиПисьма.Добавить(); + КонецЕсли; + + НоваяСтрока.Адрес = ПочтовыйАдрес.Адрес; + НоваяСтрока.Представление = ПочтовыйАдрес.Псевдоним; + НоваяСтрока.Контакт = Получатель.Контакт; + КонецЦикла; + + КонецЦикла; + + Объект.СписокПолучателейПисьма = + ВзаимодействияКлиентСервер.ПолучитьПредставлениеСпискаАдресатов(Объект.ПолучателиПисьма, Ложь); + Объект.СписокПолучателейКопий = + ВзаимодействияКлиентСервер.ПолучитьПредставлениеСпискаАдресатов(Объект.ПолучателиКопий, Ложь); + Объект.СписокПолучателейСкрытыхКопий = + ВзаимодействияКлиентСервер.ПолучитьПредставлениеСпискаАдресатов(Объект.ПолучателиСкрытыхКопий, Ложь); + КонецПроцедуры &НаСервере @@ -505,7 +531,6 @@ ИмяЭлемента = Элемент.Имя; ИмяСвязаннойТаблицы = ПолучитьИмяСвязаннойТаблицы(ИмяЭлемента); - Текст = СокрЛП(Текст); Если Не ПустаяСтрока(Текст) Тогда @@ -513,8 +538,8 @@ ТекстДляПолученияДанныхВыбора = ""; - ПодстрокиВведенногоТекста = СтрРазделить(Текст, ";", Ложь); - ПодстрокиДанныхОбъекта = СтрРазделить(Объект[ИмяЭлемента], ";", Ложь); + ПодстрокиВведенногоТекста = СтрРазделить(Текст, ";"); + ПодстрокиДанныхОбъекта = СтрРазделить(Объект[ИмяЭлемента], ";"); Если (ПодстрокиВведенногоТекста.Количество() < ПодстрокиДанныхОбъекта.Количество()) ИЛИ (ПодстрокиВведенногоТекста.Количество() > (ПодстрокиДанныхОбъекта.Количество()+1)) Тогда @@ -623,21 +648,6 @@ КонецПроцедуры -&НаКлиенте -Процедура СписокПолучателейОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) - - СтандартнаяОбработка = Ложь; - - Если ТипЗнч(ВыбранноеЗначение) = Тип("Структура") Тогда - ПоместитьНайденногоАдресатаВСписок( - ПолучитьИмяСвязаннойТаблицы(Элемент.Имя), - ВыбранноеЗначение, - ВыбранноеЗначение.ИндексВСпискеПолучателей); - ИзменилисьКонтакты = Истина; - КонецЕсли; - -КонецПроцедуры - &НаКлиенте Процедура ПоместитьНайденногоАдресатаВСписок(ИмяСпискаАдресатов, ДанныеАдресата, ИндексВСпискеПолучателей, ИскатьКонтакт = Ложь) @@ -684,6 +694,13 @@ КонецПроцедуры +&НаКлиенте +Процедура ПредметНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + + ВзаимодействияКлиент.ПредметНачалоВыбора(ЭтотОбъект, Элемент, ДанныеВыбора, СтандартнаяОбработка); + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыВложения @@ -743,6 +760,133 @@ #КонецОбласти +#Область ОбработчикиСобытийЭлементовТаблицыФормыСписокПолучателей + +&НаКлиенте +Процедура СписокПолучателейПредставлениеНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) + + ОчиститьСообщения(); + + Если Элементы.СписокПолучателей.ТекущиеДанные = Неопределено Тогда + Возврат; + КонецЕсли; + + Если Объект.СтатусПисьма <> ПредопределенноеЗначение("Перечисление.СтатусыИсходящегоЭлектронногоПисьма.Отправлено") Тогда + + ВариантОтправки = Элементы.СписокПолучателей.ТекущиеДанные.ВариантОтправки; + Если ВариантОтправки = "Кому:" Тогда + ГруппаПодбора = НСтр("ru = 'Кому'"); + ИначеЕсли ВариантОтправки = "Копия:" Тогда + ГруппаПодбора = НСтр("ru = 'Копии'"); + ИначеЕсли ВариантОтправки = "СкрытаяКопия:" Тогда + ГруппаПодбора = НСтр("ru = 'Скрытые'"); + КонецЕсли; + + РедактироватьСписокПолучателей(Истина, ГруппаПодбора); + Иначе + РедактироватьСписокПолучателей(Ложь); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура СписокПолучателейПередОкончаниемРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования, Отказ) + + Если ОтменаРедактирования Тогда + Возврат; + КонецЕсли; + + ДанныеСтроки = Элемент.ТекущиеДанные; + Если ДанныеСтроки = Неопределено Тогда + Возврат; + КонецЕсли; + + Адрес = ""; + ПозицияНачало = СтрНайти(ДанныеСтроки.Представление, "<"); + Если ПозицияНачало > 0 Тогда + ПозицияОкончание = СтрНайти(ДанныеСтроки.Представление, ">", НаправлениеПоиска.СНачала, ПозицияНачало); + Если ПозицияОкончание > 0 Тогда + Адрес = Сред(ДанныеСтроки.Представление, ПозицияНачало + 1, ПозицияОкончание - ПозицияНачало - 1); + КонецЕсли; + КонецЕсли; + Если ПустаяСтрока(Адрес) Тогда + Адрес = ДанныеСтроки.Представление; + КонецЕсли; + + Если ПустаяСтрока(Адрес) Тогда + Возврат; + КонецЕсли; + + Если СтрНайти(Адрес, "@") = 0 ИЛИ СтрНайти(Адрес, ".") = 0 Тогда + ПоказатьПредупреждение(, НСтр("ru = 'Необходимо ввести адрес электронной почты'")); + Отказ = Истина; + Возврат; + КонецЕсли; + + Элемент.ТекущиеДанные.Адрес = Адрес; + + Отбор = Новый Структура("Адрес", Адрес); + НайденныеСтроки = СписокПолучателей.НайтиСтроки(Отбор); + Если НайденныеСтроки.Количество() > 1 Тогда + ПоказатьПредупреждение(, НСтр("ru = 'Такой адрес электронной почту уже есть в списке.'")); + Отказ = Истина; + Возврат; + КонецЕсли; + + ИзменилисьКонтакты = Истина; + ВзаимодействияКлиентСервер.ПроверитьЗаполнениеКонтактов(Объект, ЭтотОбъект, "ЭлектронноеПисьмоИсходящее"); + +КонецПроцедуры + +&НаКлиенте +Процедура СписокПолучателейПредставлениеАвтоПодбор(Элемент, Текст, ДанныеВыбора, ПараметрыПолученияДанных, Ожидание, СтандартнаяОбработка) + Если Ожидание = 0 Тогда + Возврат; + КонецЕсли; + + Если ПустаяСтрока(Текст) Тогда + Возврат; + КонецЕсли; + + ДанныеВыбора = ПолучитьДанныеВыбораДляЭлектронногоПисьма(Текст, 0); + Если ДанныеВыбора.Количество() > 0 Тогда + СтандартнаяОбработка = Ложь; + Иначе + ДанныеВыбора = Неопределено + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура СписокПолучателейПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование) + Элемент.ТекущиеДанные.ВариантОтправки = "Кому:"; + Элемент.ТекущийЭлемент = Элементы.СписокПолучателейПредставление; +КонецПроцедуры + +&НаКлиенте +Процедура СписокПолучателейПредставлениеОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) + СтандартнаяОбработка = Ложь; + + Если ТипЗнч(ВыбранноеЗначение) = Тип("Структура") Тогда + ТекущиеДанные = Элементы.СписокПолучателей.ТекущиеДанные; + ТекущиеДанные.Адрес = ВыбранноеЗначение.Адрес; + ТекущиеДанные.Представление = ВзаимодействияКлиентСервер.ПолучитьПредставлениеАдресата(ВыбранноеЗначение.Представление, ВыбранноеЗначение.Адрес, ""); + ТекущиеДанные.Контакт = ВыбранноеЗначение.Контакт; + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура СписокПолучателейПослеУдаления(Элемент) + Если СписокПолучателей.Количество() = 0 Тогда + НоваяСтрока = СписокПолучателей.Добавить(); + НоваяСтрока.ВариантОтправки = "Кому:"; + КонецЕсли; +КонецПроцедуры + +#КонецОбласти + + #Область ОбработчикиКомандФормы &НаКлиенте @@ -758,11 +902,16 @@ Возврат; КонецЕсли; - Если Объект.ПолучателиПисьма.Количество() = 0 - И Объект.ПолучателиСкрытыхКопий.Количество() = 0 Тогда + Если СписокПолучателей.Количество() = 0 Тогда ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - НСтр("ru='Необходимо указать хотя бы одного получателя письма.'"),, "Объект.СписокПолучателейПисьма"); + НСтр("ru='Необходимо указать хотя бы одного получателя письма.'"),, "СписокПолучателей"); + Возврат; + + ИначеЕсли (СписокПолучателей.Количество() = 1 И ПустаяСтрока(СписокПолучателей[0].Адрес)) Тогда + + ОбщегоНазначенияКлиентСервер.СообщитьПользователю( + НСтр("ru='Необходимо указать хотя бы одного получателя письма.'"),, "СписокПолучателей[0].Представление"); Возврат; КонецЕсли; @@ -865,6 +1014,28 @@ // Конец СтандартныеПодсистемы.Свойства +// СтандартныеПодсистемы.ШаблоныСообщений + +&НаКлиенте +Процедура ЗаполнитьПоШаблонуПослеВыбораШаблона(Результат, ДополнительныеПараметры) Экспорт + Если Результат <> Неопределено Тогда + ЗаполнитьПоШаблонуПослеВыбораШаблонаНаСервере(Результат); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура СформироватьПоШаблону(Команда) + + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.ШаблоныСообщений") Тогда + МодульШаблоныСообщенийКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ШаблоныСообщенийКлиент"); + Оповещение = Новый ОписаниеОповещения("ЗаполнитьПоШаблонуПослеВыбораШаблона", ЭтотОбъект); + МодульШаблоныСообщенийКлиент.ВыбратьШаблон(Оповещение); + КонецЕсли + +КонецПроцедуры + +// Конец СтандартныеПодсистемы.ШаблоныСообщений + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -919,32 +1090,29 @@ Отказ = Ложь; - Попытка - Результат = ОбщегоНазначенияКлиентСервер.РазобратьСтрокуСПочтовымиАдресами(Объект.СписокПолучателейПисьма); - Исключение - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - КраткоеПредставлениеОшибки(ИнформацияОбОшибке()), , "Объект.СписокПолучателейПисьма"); - Отказ = Истина; - КонецПопытки; - - Попытка - Результат = ОбщегоНазначенияКлиентСервер.РазобратьСтрокуСПочтовымиАдресами(Объект.СписокПолучателейКопий); - Исключение - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - КраткоеПредставлениеОшибки(ИнформацияОбОшибке()), , "Объект.СписокПолучателейКопий"); - Отказ = Истина; - КонецПопытки; - - Попытка - Результат = ОбщегоНазначенияКлиентСервер.РазобратьСтрокуСПочтовымиАдресами(Объект.СписокПолучателейСкрытыхКопий); - Исключение - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - КраткоеПредставлениеОшибки(ИнформацияОбОшибке()), , "Объект.СписокПолучателейСкрытыхКопий"); - Отказ = Истина; - КонецПопытки; + Для каждого СтрокаАдреса Из СписокПолучателей Цикл + + Результат = ОбщегоНазначенияКлиентСервер.АдресаЭлектроннойПочтыИзСтроки(СтрокаАдреса.Представление); + Для Каждого СтруктураАдреса Из Результат Цикл + Если Не ПустаяСтрока(СтруктураАдреса.ОписаниеОшибки) Тогда + Отказ = Истина; + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СтруктураАдреса.ОписаниеОшибки, , "СписокПолучателей[" + Строка(СписокПолучателей.Индекс(СтрокаАдреса)) + "].Представление"); + КонецЕсли; + КонецЦикла; + + Если НЕ Отказ Тогда + Результат = ОбщегоНазначенияКлиентСервер.АдресаЭлектроннойПочтыИзСтроки(СтрокаАдреса.Адрес); + Для Каждого СтруктураАдреса Из Результат Цикл + Если Не ПустаяСтрока(СтруктураАдреса.ОписаниеОшибки) Тогда + Отказ = Истина; + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СтруктураАдреса.ОписаниеОшибки, , "СписокПолучателей[" + Строка(СписокПолучателей.Индекс(СтрокаАдреса)) + "].Представление"); + КонецЕсли; + КонецЦикла; + КонецЕсли; + + КонецЦикла; Возврат Отказ; - КонецФункции &НаСервере @@ -1001,6 +1169,8 @@ Элементы.СписокПолучателейПисьма.РедактированиеТекста = Ложь; Элементы.СписокПолучателейКопий.РедактированиеТекста = Ложь; Элементы.СписокПолучателейСкрытыхКопий.РедактированиеТекста = Ложь; + Элементы.СписокПолучателейКому.ТолькоПросмотр = Истина; + Элементы.СписокПолучателейПредставление.РедактированиеТекста = Ложь; КонецЕсли; @@ -1129,7 +1299,7 @@ Если (ТекДанные.Расположение = 0) ИЛИ (ТекДанные.Расположение = 1) Тогда - УправлениеЭлектроннойПочтойКлиент.ОткрытьВложение(ТекДанные.Ссылка, УникальныйИдентификатор); + УправлениеЭлектроннойПочтойКлиент.ОткрытьВложение(ТекДанные.Ссылка, ЭтотОбъект); ИначеЕсли текДанные.Расположение = 2 Тогда @@ -1152,7 +1322,6 @@ ДвоичныеДанные.Записать(ПутьКФайлу); КонецЕсли; ЗапуститьПриложение("""" + ПутьКФайлу + """"); - УдалитьФайлы(ИмяВременнойПапки); #Иначе ПолучитьФайл(ПутьКФайлу, ТекДанные.ИмяФайла, Истина); #КонецЕсли @@ -1196,7 +1365,7 @@ НоваяСтрока.ИндексКартинки = СтрокаТаблицыВложений.ИндексКартинки; НоваяСтрока.Размер = СтрокаТаблицыВложений.Размер; НоваяСтрока.РазмерПредставление = СтрокаТаблицыВложений.РазмерПредставление; - НоваяСтрока.ПодписанЭП = СтрокаТаблицыВложений.ПодписанЭП; + НоваяСтрока.ПодписанЭП = СтрокаТаблицыВложений.ПодписанЭП; НоваяСтрока.Расположение = 0; КонецЕсли; КонецЦикла; @@ -1632,7 +1801,8 @@ КонецЕсли; Если ТипЗнч(ПереданныеПараметры.Тело) = Тип("Структура") Тогда - ТекстПисьмаФорматированныйДокумент.УстановитьHTML(ПереданныеПараметры.Тело.ТекстHTML, ПереданныеПараметры.Тело.СтруктураВложений); + ТекстHTML = СтрЗаменить(ПереданныеПараметры.Тело.ТекстHTML, "cid:", "_"); + ТекстПисьмаФорматированныйДокумент.УстановитьHTML(ТекстHTML, ПереданныеПараметры.Тело.СтруктураВложений); Объект.ТипТекста = Перечисления.ТипыТекстовЭлектронныхПисем.HTMLСКартинками; ИначеЕсли ТипЗнч(ПереданныеПараметры.Тело) = Тип("Строка") И Не ПустаяСтрока(ПереданныеПараметры.Тело) Тогда Объект.Текст = ПереданныеПараметры.Тело; @@ -1657,6 +1827,11 @@ НоваяСтрока = Объект.ПолучателиПисьма.Добавить(); НоваяСтрока.Адрес = ЭлементСписка.Значение; НоваяСтрока.Представление = ЭлементСписка.Представление; + + НоваяСтрока = СписокПолучателей.Добавить(); + НоваяСтрока.ВариантОтправки = НСтр("ru = 'Кому:'"); + НоваяСтрока.Адрес = ЭлементСписка.Значение; + НоваяСтрока.Представление = ЭлементСписка.Представление; КонецЦикла; Объект.СписокПолучателейПисьма = ВзаимодействияКлиентСервер.ПолучитьПредставлениеСпискаАдресатов(Объект.ПолучателиПисьма, Ложь); @@ -1874,13 +2049,15 @@ Элементы.СтраницаКомментарий.Картинка = ОбщегоНазначенияКлиентСервер.КартинкаКомментария(Объект.Комментарий); + СформироватьСпискиПолучателейПисьма(); + КонецПроцедуры &НаСервереБезКонтекста Функция ПолучитьДанныеВыбораДляЭлектронногоПисьма(Текст, ИндексВСпискеПолучателей) ВозвращаемыйСписок = Новый СписокЗначений; - МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); ТекстЗапроса = "ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ @@ -1997,7 +2174,7 @@ | И ОбъектСКонтактнойИнформацией.Тип = &Тип | И (НЕ ОбъектСКонтактнойИнформацией.Ссылка.ПометкаУдаления)"; - МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.ПолучитьМассивОписанияВозможныхКонтактов(); + МассивОписанияТиповКонтактов = ВзаимодействияКлиентСервер.МассивОписанияВозможныхКонтактов(); Для каждого ЭлементМассиваОписания Из МассивОписанияТиповКонтактов Цикл Если ЭлементМассиваОписания.Имя = "Пользователи" Тогда @@ -2084,6 +2261,23 @@ &НаКлиенте Процедура РедактироватьСписокПолучателей(ДляПодбора, ГруппаПодбора = "") + Объект.ПолучателиПисьма.Очистить(); + Объект.ПолучателиКопий.Очистить(); + Объект.ПолучателиСкрытыхКопий.Очистить(); + Объект.ПолучателиОтвета.Очистить(); + Для каждого Получатель Из СписокПолучателей Цикл + Если Получатель.ВариантОтправки = НСтр("ru = 'Обратный адрес:'") Тогда + НоваяСтрока = Объект.ПолучателиОтвета.Добавить(); + ИначеЕсли Получатель.ВариантОтправки = НСтр("ru = 'Копия:'") Тогда + НоваяСтрока = Объект.ПолучателиКопий.Добавить(); + ИначеЕсли Получатель.ВариантОтправки = НСтр("ru = 'Скрытая копия:'") Тогда + НоваяСтрока = Объект.ПолучателиСкрытыхКопий.Добавить(); + Иначе + НоваяСтрока = Объект.ПолучателиПисьма.Добавить(); + КонецЕсли; + ЗаполнитьЗначенияСвойств(НоваяСтрока, Получатель); + КонецЦикла; + // Получим список адресатов СоответствиеТабличныхЧастей = Новый Соответствие; СоответствиеТабличныхЧастей.Вставить("Кому", Объект.ПолучателиПисьма); @@ -2106,11 +2300,51 @@ // Откроем форму для редактирования списка адресатов. ИмяОбщейФормы = ?(ДляПодбора, "ОбщаяФорма.АдреснаяКнига", "ОбщаяФорма.УточнениеКонтактов"); + ОповещениеПослеЗакрытия = Новый ОписаниеОповещения("ПослеЗаполненияАдреснойКниги", ЭтотОбъект); - ОткрытьФорму(ИмяОбщейФормы, ПараметрыОткрытия, ЭтотОбъект); + ОткрытьФорму(ИмяОбщейФормы, ПараметрыОткрытия, ЭтотОбъект,,,, ОповещениеПослеЗакрытия); КонецПроцедуры +&НаКлиенте +Процедура ПослеЗаполненияАдреснойКниги(ВыбранноеЗначение, ДополнительныеПараметры) Экспорт + + ЗаполнитьПодобранныхПолучателейПослеВыбора(ВыбранноеЗначение); + +КонецПроцедуры + +&НаКлиенте +Процедура ЗаполнитьПодобранныхПолучателейПослеВыбора(ВыбранноеЗначение) + + Перем ДляПодбора, СоответствиеТабличныхЧастей; + + Если ТипЗнч(ВыбранноеЗначение) <> Тип("Массив") И ТипЗнч(ВыбранноеЗначение) <> Тип("Соответствие") Тогда + Возврат; + КонецЕсли; + + // Получим список адресатов + СоответствиеТабличныхЧастей = Новый Соответствие; + СоответствиеТабличныхЧастей.Вставить("Кому", Объект.ПолучателиПисьма); + СоответствиеТабличныхЧастей.Вставить("Копии", Объект.ПолучателиКопий); + СоответствиеТабличныхЧастей.Вставить("Скрытые", Объект.ПолучателиСкрытыхКопий); + СоответствиеТабличныхЧастей.Вставить("Ответ", Объект.ПолучателиОтвета); + + ДляПодбора = (Объект.СтатусПисьма <> ПредопределенноеЗначение("Перечисление.СтатусыИсходящегоЭлектронногоПисьма.Отправлено")); + + // Заполним адресатов + Если ДляПодбора Тогда + ЗаполнитьПодобранныхПолучателей(СоответствиеТабличныхЧастей, ВыбранноеЗначение); + Иначе + ЗаполнитьУточненныеКонтакты(ВыбранноеЗначение); + КонецЕсли; + + // Установим признак модифицированности. + ВзаимодействияКлиентСервер.ПроверитьЗаполнениеКонтактов(Объект, ЭтотОбъект, "ЭлектронноеПисьмоИсходящее"); + ИзменилисьКонтакты = Истина; + Модифицированность = Истина; + +КонецПроцедуры + &НаКлиенте Процедура ЗаполнитьПодобранныхПолучателей(СоответствиеТабличныхЧастей, Результат) @@ -2149,9 +2383,42 @@ ВзаимодействияКлиентСервер.ПолучитьПредставлениеСпискаАдресатов(Объект.ПолучателиКопий, Ложь); Объект.СписокПолучателейСкрытыхКопий = ВзаимодействияКлиентСервер.ПолучитьПредставлениеСпискаАдресатов(Объект.ПолучателиСкрытыхКопий, Ложь); - + + СформироватьСпискиПолучателейПисьма(); + КонецПроцедуры +&НаСервере +Процедура СформироватьСпискиПолучателейПисьма() + + СписокПолучателей.Очистить(); + + ДобавитьАдресВСписокПолучателей(СписокПолучателей, Объект.ПолучателиПисьма, НСтр("ru = 'Кому:'")); + ДобавитьАдресВСписокПолучателей(СписокПолучателей, Объект.ПолучателиКопий, НСтр("ru = 'Копия:'")); + ДобавитьАдресВСписокПолучателей(СписокПолучателей, Объект.ПолучателиСкрытыхКопий, НСтр("ru = 'Скрытая копия:'")); + ДобавитьАдресВСписокПолучателей(СписокПолучателей, Объект.ПолучателиОтвета, НСтр("ru = 'Обратный адрес:'")); + + Если СписокПолучателей.Количество() = 0 Тогда + НоваяСтрока = СписокПолучателей.Добавить(); + НоваяСтрока.ВариантОтправки = "Кому:"; + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Функция ДобавитьАдресВСписокПолучателей(СписокПолучателей, ПолучателиПисьма, Кому) + + Для каждого СтрокаПолучатель Из ПолучателиПисьма Цикл + НоваяСтрока = СписокПолучателей.Добавить(); + НоваяСтрока.ВариантОтправки = Кому; + НоваяСтрока.Адрес = СтрокаПолучатель.Адрес; + НоваяСтрока.Контакт = СтрокаПолучатель.Контакт; + НоваяСтрока.Представление =ВзаимодействияКлиентСервер.ПолучитьПредставлениеАдресата(СтрокаПолучатель.Представление, + СтрокаПолучатель.Адрес, ""); + КонецЦикла; + +КонецФункции + &НаКлиенте Процедура ЗаполнитьУточненныеКонтакты(Результат) @@ -2239,7 +2506,13 @@ &НаСервере Функция РеквизитыФайла(Файл) - Возврат ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Файл, "Наименование, Расширение, ИндексКартинки, Размер, ПодписанЭП "); + ТребуемыеРеквизиты = "Наименование, Расширение, ИндексКартинки, Размер"; + + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЭлектроннаяПодпись") Тогда + ТребуемыеРеквизиты = ТребуемыеРеквизиты + ", ПодписанЭП"; + КонецЕсли; + + Возврат ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Файл, ТребуемыеРеквизиты); КонецФункции @@ -2580,4 +2853,43 @@ // Конец СтандартныеПодсистемы.Свойства +// СтандартныеПодсистемы.ШаблоныСообщений + +&НаСервере +Процедура ОпределитьВозможностьЗаполненияПисьмаПоШаблону() + + Если Объект.СтатусПисьма = Перечисления.СтатусыИсходящегоЭлектронногоПисьма.Черновик + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ШаблоныСообщений") Тогда + МодульШаблоныСообщенийСлужебный = ОбщегоНазначения.ОбщийМодуль("ШаблоныСообщенийСлужебный"); + Элементы.ФормаСформироватьПоШаблону.Видимость = МодульШаблоныСообщенийСлужебный.ЕстьДоступныеШаблоны("Письмо"); + Иначе + Элементы.ФормаСформироватьПоШаблону.Видимость = Ложь; + КонецЕсли + +КонецПроцедуры + +&НаСервере +Процедура ЗаполнитьПоШаблонуПослеВыбораШаблонаНаСервере(Результат) + + Если ТипЗнч(Результат.Текст) = Тип("Структура") Тогда + РезультатТекст = Результат.Текст.ТекстHTML; + СтруктураВложений = Результат.Текст.СтруктураВложений; + Иначе + СтруктураВложений = Новый Структура(); + РезультатТекст = Результат.Текст; + НужнаКонвертацияИзHTML = СтрНачинаетсяС(РезультатТекст , "true Label - true 3 true - false - false Style.ПоясняющийТекст @@ -110,10 +107,6 @@ ru Группа адрес - - ru - Группа адрес - 40 ГруппаАдресExtendedTooltip @@ -218,9 +211,10 @@ true Label - true + 41 3 true + false Style.ПоясняющийТекст @@ -237,10 +231,6 @@ ru Группа ссылка на объект - - ru - Группа ссылка на объект - 50 false @@ -342,37 +332,6 @@ ГруппаПодвал 12 - - ДекорацияПустая - 10 - true - true - - true - - - ДекорацияПустаяExtendedTooltip - 28 - Label - true - true - - Left - - - - ДекорацияПустаяКонтекстноеМеню - 11 - true - - Label - true - true - true - - Left - - Вставить 8 @@ -444,6 +403,8 @@ ru Группа подвал + 80 + false ГруппаПодвалExtendedTooltip 27 @@ -456,6 +417,7 @@ UsualGroup + Right Auto true true @@ -476,6 +438,7 @@ OnCreateAtServer ПриСозданииНаСервере + 80 LockOwner true true diff --git a/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/Forms/ФормированиеВнешнейСсылкиНаОбъект/Module.bsl b/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/Forms/ФормированиеВнешнейСсылкиНаОбъект/Module.bsl index c7e4609d7..d2180b585 100644 --- a/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/Forms/ФормированиеВнешнейСсылкиНаОбъект/Module.bsl +++ b/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/Forms/ФормированиеВнешнейСсылкиНаОбъект/Module.bsl @@ -8,7 +8,7 @@ Возврат; КонецЕсли; - АдресПубликацииИнформационнойБазыВИнтернете = Взаимодействия.АдресПубликацииИнформационнойБазыВИнтернете(); + АдресПубликацииИнформационнойБазыВИнтернете = ОбщегоНазначения.АдресПубликацииИнформационнойБазыВИнтернете(); КонецПроцедуры diff --git a/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/ManagerModule.bsl b/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/ManagerModule.bsl index 4cdd029f6..03a31cb6d 100644 --- a/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/ManagerModule.bsl +++ b/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/ManagerModule.bsl @@ -108,3 +108,237 @@ КонецПроцедуры #КонецОбласти + +#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда + +#Область СлужебныеПроцедурыИФункции + +#Область ОбработчикиОбновления + +// Регистрирует к обработке электронные письма у которых возможно заполнить ВзаимодействиеОснование. +// +Процедура ЗаполнитьВзаимодействияОснованияУПодчиненныхПисемКОбработке(Параметры) Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = Взаимодействия.ТекстЗапросаОтметкиКОбработкиЗаполненияПисемОснований("Документ.ЭлектронноеПисьмоИсходящее"); + + ОбновлениеИнформационнойБазы.ОтметитьКОбработке( + Параметры, + Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка")); + +КонецПроцедуры + +// Выполняет дозаполнение реквизита ВзаимодействиеОснование у электронных писем. +// +Процедура ЗаполнитьВзаимодействияОснованияУПодчиненныхПисем(Параметры) Экспорт + + ПолноеИмяДокумента = "Документ.ЭлектронноеПисьмоИсходящее"; + МетаданныеДокумента = Метаданные.Документы.ЭлектронноеПисьмоИсходящее; + + Взаимодействия.ЗаполнитьВзаимодействияОснованияУПодчиненныхПисем(Параметры, ПолноеИмяДокумента, МетаданныеДокумента); + +КонецПроцедуры + +// Регистрирует к обработке электронные письма у которых необходимо заполнить контакт у получателей письма. +// +Процедура ОпределитьНезаполненныеКонтактыВИсходящихЭлектронныхПисьмах(Параметры) Экспорт + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ЭлектронноеПисьмоИсходящееПолучателиПисьма.Ссылка КАК Ссылка + |ИЗ + | Документ.ЭлектронноеПисьмоИсходящее.ПолучателиПисьма КАК ЭлектронноеПисьмоИсходящееПолучателиПисьма + |ГДЕ + | ЭлектронноеПисьмоИсходящееПолучателиПисьма.Контакт = НЕОПРЕДЕЛЕНО + | И ЭлектронноеПисьмоИсходящееПолучателиПисьма.Ссылка.Дата >= &Дата + | + |ОБЪЕДИНИТЬ ВСЕ + | + |ВЫБРАТЬ + | ЭлектронноеПисьмоИсходящееПолучателиСкрытыхКопий.Ссылка + |ИЗ + | Документ.ЭлектронноеПисьмоИсходящее.ПолучателиСкрытыхКопий КАК ЭлектронноеПисьмоИсходящееПолучателиСкрытыхКопий + |ГДЕ + | ЭлектронноеПисьмоИсходящееПолучателиСкрытыхКопий.Контакт = НЕОПРЕДЕЛЕНО + | И ЭлектронноеПисьмоИсходящееПолучателиСкрытыхКопий.Ссылка.Дата >= &Дата + | + |ОБЪЕДИНИТЬ ВСЕ + | + |ВЫБРАТЬ + | ЭлектронноеПисьмоИсходящееПолучателиКопий.Ссылка + |ИЗ + | Документ.ЭлектронноеПисьмоИсходящее.ПолучателиКопий КАК ЭлектронноеПисьмоИсходящееПолучателиКопий + |ГДЕ + | ЭлектронноеПисьмоИсходящееПолучателиКопий.Контакт = НЕОПРЕДЕЛЕНО + | И ЭлектронноеПисьмоИсходящееПолучателиКопий.Ссылка.Дата >= &Дата"; + + Запрос.УстановитьПараметр("Дата", Дата(2016, 7, 1)); + + ТаблицаДокументов = Запрос.Выполнить().Выгрузить(); + ТаблицаДокументов.Свернуть("Ссылка"); + + ОбновлениеИнформационнойБазы.ОтметитьКОбработке( + Параметры, + ТаблицаДокументов.ВыгрузитьКолонку("Ссылка")); + +КонецПроцедуры + +// Выполняет дозаполнение контакта у получателей электронных писем. +// +Процедура ЗаполнитьСписокКонтактовИсходящихЭлектронныхПисем(Параметры) Экспорт + + ТекстЗапроса = "ВЫБРАТЬ + | ЭлектронноеПисьмоИсходящееПолучателиПисьма.Ссылка КАК Ссылка, + | ЭлектронноеПисьмоИсходящееПолучателиПисьма.Адрес КАК Адрес, + | ЭлектронноеПисьмоИсходящееПолучателиПисьма.Представление КАК Представление, + | ЭлектронноеПисьмоИсходящееПолучателиПисьма.Контакт КАК Контакт, + | ""КОМУ"" КАК ВидОтправки + |ПОМЕСТИТЬ СписокПочты + |ИЗ + | Документ.ЭлектронноеПисьмоИсходящее.ПолучателиПисьма КАК ЭлектронноеПисьмоИсходящееПолучателиПисьма + |ГДЕ + | ЭлектронноеПисьмоИсходящееПолучателиПисьма.Контакт = НЕОПРЕДЕЛЕНО + | И ЭлектронноеПисьмоИсходящееПолучателиПисьма.Ссылка = &Ссылка + | + |ОБЪЕДИНИТЬ ВСЕ + | + |ВЫБРАТЬ + | ЭлектронноеПисьмоИсходящееПолучателиСкрытыхКопий.Ссылка, + | ЭлектронноеПисьмоИсходящееПолучателиСкрытыхКопий.Адрес, + | ЭлектронноеПисьмоИсходящееПолучателиСкрытыхКопий.Представление, + | ЭлектронноеПисьмоИсходящееПолучателиСкрытыхКопий.Контакт, + | ""СКРЫТЫЕКОПИИ"" КАК ВидОтправки + |ИЗ + | Документ.ЭлектронноеПисьмоИсходящее.ПолучателиСкрытыхКопий КАК ЭлектронноеПисьмоИсходящееПолучателиСкрытыхКопий + |ГДЕ + | ЭлектронноеПисьмоИсходящееПолучателиСкрытыхКопий.Контакт = НЕОПРЕДЕЛЕНО + | И ЭлектронноеПисьмоИсходящееПолучателиСкрытыхКопий.Ссылка = &Ссылка + | + |ОБЪЕДИНИТЬ ВСЕ + | + |ВЫБРАТЬ + | ЭлектронноеПисьмоИсходящееПолучателиКопий.Ссылка, + | ЭлектронноеПисьмоИсходящееПолучателиКопий.Адрес, + | ЭлектронноеПисьмоИсходящееПолучателиКопий.Представление, + | ЭлектронноеПисьмоИсходящееПолучателиКопий.Контакт, + | ""КОПИИ"" КАК ВидОтправки + |ИЗ + | Документ.ЭлектронноеПисьмоИсходящее.ПолучателиКопий КАК ЭлектронноеПисьмоИсходящееПолучателиКопий + |ГДЕ + | ЭлектронноеПисьмоИсходящееПолучателиКопий.Контакт = НЕОПРЕДЕЛЕНО + | И ЭлектронноеПисьмоИсходящееПолучателиКопий.Ссылка = &Ссылка + |; + |"; + + ШаблонЗапроса = " ВЫБРАТЬ + | МАКСИМУМ(%1.Ссылка) КАК Ссылка, + | %1.Представление КАК Представление, + | СписокПочты.ВидОтправки + |ИЗ + | СписокПочты КАК СписокПочты + | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.%2.КонтактнаяИнформация КАК %1 + | ПО (СписокПочты.Адрес = %1.Представление) + |ГДЕ + | %1.Тип = &Тип + | + |СГРУППИРОВАТЬ ПО + | СписокПочты.ВидОтправки, + | %1.Представление + |ИМЕЮЩИЕ + | КОЛИЧЕСТВО(%1.Ссылка) = 1"; + + ОБЪЕДИНИТЬВСЕ = ""; + Для каждого ТипКонтактВзаимодействия Из Метаданные.ОпределяемыеТипы.КонтактВзаимодействия.Тип.Типы() Цикл + КонтактВзаимодействия = Метаданные.НайтиПоТипу(ТипКонтактВзаимодействия); + Если СтрНачинаетсяС(КонтактВзаимодействия.ПолноеИмя(), "Справочник") Тогда + Если КонтактВзаимодействия.ТабличныеЧасти.Найти("КонтактнаяИнформация") <> Неопределено Тогда + + ТекстЗапроса = ТекстЗапроса + ОБЪЕДИНИТЬВСЕ + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонЗапроса, + КонтактВзаимодействия.Имя + "КонтактнаяИнформация", КонтактВзаимодействия.Имя); + ОБЪЕДИНИТЬВСЕ = " ОБЪЕДИНИТЬ ВСЕ "; + + КонецЕсли; + КонецЕсли; + КонецЦикла; + + ПолноеИмяДокумента = "Документ.ЭлектронноеПисьмоИсходящее"; + МетаданныеДокумента = Метаданные.Документы.ЭлектронноеПисьмоИсходящее; + + ЭлектронноеПисьмоИсходящееСсылка = ОбновлениеИнформационнойБазы.ВыбратьСсылкиДляОбработки(Параметры.Очередь, ПолноеИмяДокумента); + + ПроблемныхОбъектов = 0; + ОбъектовОбработано = 0; + + Пока ЭлектронноеПисьмоИсходящееСсылка.Следующий() Цикл + + Запрос = Новый Запрос(ТекстЗапроса); + Запрос.УстановитьПараметр("Тип", Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты); + Запрос.УстановитьПараметр("Ссылка", ЭлектронноеПисьмоИсходящееСсылка.Ссылка); + + РезультатЗапроса = Запрос.Выполнить(); + + Если НЕ РезультатЗапроса.Пустой() Тогда + НачатьТранзакцию(); + Попытка + ДокументОбъект = ЭлектронноеПисьмоИсходящееСсылка.Ссылка.ПолучитьОбъект(); + Почта = РезультатЗапроса.Выбрать(); + Пока Почта.Следующий() Цикл + Если Почта.ВидОтправки = "КОПИИ" Тогда + ИмяТаблицы = "ПолучателиКопий"; + ИначеЕсли Почта.ВидОтправки = "СКРЫТЫЕКОПИИ" Тогда + ИмяТаблицы = "ПолучателиСкрытыхКопий"; + Иначе + ИмяТаблицы = "ПолучателиПисьма"; + КонецЕсли; + СтрокаТаблицы = ДокументОбъект[ИмяТаблицы].Найти(Почта.Представление, "Адрес"); + Если СтрокаТаблицы <> Неопределено Тогда + СтрокаТаблицы.Контакт = Почта.Ссылка; + Если ПустаяСтрока(СтрокаТаблицы.Представление) Тогда + СтрокаТаблицы.Представление = Строка(Почта.Ссылка); + КонецЕсли; + КонецЕсли; + КонецЦикла; + + Взаимодействия.ПриЗаписиДокумента(ДокументОбъект); + ОбновлениеИнформационнойБазы.ЗаписатьДанные(ДокументОбъект); + ОбъектовОбработано = ОбъектовОбработано + 1; + ЗафиксироватьТранзакцию(); + Исключение + // Если не удалось обработать какой-либо документ электронное исходящие письмо, повторяем попытку снова. + ОтменитьТранзакцию(); + ПроблемныхОбъектов = ПроблемныхОбъектов + 1; + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Не удалось обработать электронное исходящие письмо: %1 по причине: %2'"), + ЭлектронноеПисьмоИсходящееСсылка.Ссылка, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке())); + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Предупреждение, + Метаданные.Документы.ЭлектронноеПисьмоИсходящее, ЭлектронноеПисьмоИсходящееСсылка.Ссылка, ТекстСообщения); + КонецПопытки; + Иначе + ОбъектовОбработано = ОбъектовОбработано + 1; + ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(ЭлектронноеПисьмоИсходящееСсылка.Ссылка); + КонецЕсли; + + КонецЦикла; + + Параметры.ОбработкаЗавершена = ОбновлениеИнформационнойБазы.ОбработкаДанныхЗавершена(Параметры.Очередь, ПолноеИмяДокумента); + + Если ОбъектовОбработано = 0 И ПроблемныхОбъектов <> 0 Тогда + ТекстСообщения = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Процедуре ЗаполнитьСписокКонтактовИсходящихЭлектронныхПисем не удалось обработать некоторые документы электронного исходящего письма (пропущены): %1'"), + ПроблемныхОбъектов); + ВызватьИсключение ТекстСообщения; + Иначе + ЗаписьЖурналаРегистрации(ОбновлениеИнформационнойБазы.СобытиеЖурналаРегистрации(), УровеньЖурналаРегистрации.Информация, + МетаданныеДокумента,, + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Процедура ЗаполнитьСписокКонтактовИсходящихЭлектронныхПисем обработала очередную порцию документов электронных исходящих писем: %1'"), + ОбъектовОбработано)); + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#КонецОбласти + +#КонецЕсли diff --git a/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/ObjectModule.bsl b/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/ObjectModule.bsl index c7cfb8850..d8b8e4edc 100644 --- a/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/ObjectModule.bsl +++ b/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/ObjectModule.bsl @@ -223,7 +223,7 @@ | ЭлектронноеПисьмо.ИдентификаторСообщения, | ЭлектронноеПисьмо.ИдентификаторыОснований, | ЭлектронноеПисьмо.Кодировка, - | ЭлектронноеПисьмо.Предмет, + | ЕСТЬNULL(ПредметыПапкиВзаимодействий.Предмет, НЕОПРЕДЕЛЕНО) КАК Предмет, | ЭлектронноеПисьмо.Тема, | ЭлектронноеПисьмо.УчетнаяЗапись, | ЭлектронноеПисьмо.ТипТекста, @@ -233,6 +233,8 @@ | ЭлектронноеПисьмо.ОтправительПредставление", "") + " |ИЗ | Документ." + ИмяОбъектаМетаданных + " КАК ЭлектронноеПисьмо + | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПредметыПапкиВзаимодействий КАК ПредметыПапкиВзаимодействий + | ПО ЭлектронноеПисьмо.Ссылка = ПредметыПапкиВзаимодействий.Взаимодействие |ГДЕ | ЭлектронноеПисьмо.Ссылка = &Ссылка"; diff --git a/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/ЭлектронноеПисьмоИсходящее.mdo b/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/ЭлектронноеПисьмоИсходящее.mdo index a028a3edf..c4b58a00a 100644 --- a/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/ЭлектронноеПисьмоИсходящее.mdo +++ b/SSL/src/Documents/ЭлектронноеПисьмоИсходящее/ЭлектронноеПисьмоИсходящее.mdo @@ -141,6 +141,25 @@ Use Use + + ВнутреннийЗаголовок + + ru + Внутренний заголовок + + + String + + + + ru + Служебная информация, используемая почтовыми системами. Скрытый реквизит. + + + + + Use + Важность @@ -202,6 +221,27 @@ Use + + ИдентификаторНаСервере + + ru + Идентификатор на сервере + + + String + + 200 + + + + ru + Идентификатор письма на почтовом сервере. Скрытый реквизит. + + + + + Use + ИдентификаторОснования @@ -248,6 +288,29 @@ Use Use + + ИдентификаторСообщенияОтправкаIMAP + + ru + Идентификатор сообщения отправка IMAP + + + String + + 200 + + + + ru + Идентификатор письма полученный при отправке письма на сервер по протоколу IMAP. Скрытый реквизит. + + + + + Index + Use + Use + ИдентификаторыОснований @@ -377,10 +440,10 @@ Use - Предмет + УдалитьПредмет ru - Предмет + (не используется) предмет DefinedType.ПредметВзаимодействия @@ -1342,4 +1405,44 @@ Use + + + + + + НепринятыеВложения + + ru + Непринятые вложения + + + Use + LineNumber + + Use + + + + + ИмяВложение + + ru + Непринятое вложение + + + String + + 150 + + + + ru + Имя непринятого вложения + + + + Use + Use + + diff --git a/SSL/src/Enums/ВидыДополнительныхОтчетовИОбработок/ВидыДополнительныхОтчетовИОбработок.mdo b/SSL/src/Enums/ВидыДополнительныхОтчетовИОбработок/ВидыДополнительныхОтчетовИОбработок.mdo index 2e283e852..5617c4b2f 100644 --- a/SSL/src/Enums/ВидыДополнительныхОтчетовИОбработок/ВидыДополнительныхОтчетовИОбработок.mdo +++ b/SSL/src/Enums/ВидыДополнительныхОтчетовИОбработок/ВидыДополнительныхОтчетовИОбработок.mdo @@ -71,4 +71,11 @@ Создание связанных объектов + + ШаблонСообщения + + ru + Шаблон сообщения + + diff --git a/SSL/src/Enums/ВидыПереключателяВАнкетах/ВидыПереключателяВАнкетах.mdo b/SSL/src/Enums/ВидыПереключателяВАнкетах/ВидыПереключателяВАнкетах.mdo new file mode 100644 index 000000000..95c3a06e0 --- /dev/null +++ b/SSL/src/Enums/ВидыПереключателяВАнкетах/ВидыПереключателяВАнкетах.mdo @@ -0,0 +1,45 @@ + + + + + + + + ВидыПереключателяВАнкетах + + ru + Виды переключателя в анкетах + + + Use + Order + + Use + + + + + Use + Ref + + Use + + + + true + BothWays + + Переключатель + + ru + Переключатель + + + + Тумблер + + ru + Тумблер + + + diff --git a/SSL/src/Enums/ПровайдерыSMS/ПровайдерыSMS.mdo b/SSL/src/Enums/ПровайдерыSMS/ПровайдерыSMS.mdo index b6f0d5809..d02a6bca6 100644 --- a/SSL/src/Enums/ПровайдерыSMS/ПровайдерыSMS.mdo +++ b/SSL/src/Enums/ПровайдерыSMS/ПровайдерыSMS.mdo @@ -28,6 +28,27 @@ true BothWays + + GSMINFORM + + ru + GSM-INFORM + + + + SMSRU + + ru + SMS.RU + + + + SMSЦЕНТР + + ru + SMS-ЦЕНТР + + Билайн @@ -42,4 +63,11 @@ МТС + + СМСУслуги + + ru + СМС-Услуги + + diff --git a/SSL/src/Enums/РежимыАнкетирования/РежимыАнкетирования.mdo b/SSL/src/Enums/РежимыАнкетирования/РежимыАнкетирования.mdo new file mode 100644 index 000000000..a16d508f7 --- /dev/null +++ b/SSL/src/Enums/РежимыАнкетирования/РежимыАнкетирования.mdo @@ -0,0 +1,45 @@ + + + + + + + + РежимыАнкетирования + + ru + Режимы анкетирования + + + Use + Order + + Use + + + + + Use + Ref + + Use + + + + true + BothWays + + Анкета + + ru + Анкета + + + + Интервью + + ru + Интервью + + + diff --git a/SSL/src/Enums/СостоянияПроцессовДляЗапуска/СостоянияПроцессовДляЗапуска.mdo b/SSL/src/Enums/СостоянияПроцессовДляЗапуска/СостоянияПроцессовДляЗапуска.mdo new file mode 100644 index 000000000..ae931c2a5 --- /dev/null +++ b/SSL/src/Enums/СостоянияПроцессовДляЗапуска/СостоянияПроцессовДляЗапуска.mdo @@ -0,0 +1,45 @@ + + + + + + + + СостоянияПроцессовДляЗапуска + + ru + Состояния процессов для запуска + + + Use + Order + + Use + + + + + Use + Ref + + Use + + + + true + BothWays + + ГотовКСтарту + + ru + Готов к старту + + + + СтартОтменен + + ru + Старт отменен + + + diff --git a/SSL/src/Enums/СпособыОтображенияПодсказок/СпособыОтображенияПодсказок.mdo b/SSL/src/Enums/СпособыОтображенияПодсказок/СпособыОтображенияПодсказок.mdo new file mode 100644 index 000000000..f99abb784 --- /dev/null +++ b/SSL/src/Enums/СпособыОтображенияПодсказок/СпособыОтображенияПодсказок.mdo @@ -0,0 +1,45 @@ + + + + + + + + СпособыОтображенияПодсказок + + ru + Способы отображения подсказок + + + Use + Order + + Use + + + + + Use + Ref + + Use + + + + true + BothWays + + ЗнакВопросаСправа + + ru + Знак вопроса справа + + + + КонтекстнаяПодсказка + + ru + Контекстная подсказка + + + diff --git a/SSL/src/Enums/ТипыВопросовШаблонаАнкеты/ТипыВопросовШаблонаАнкеты.mdo b/SSL/src/Enums/ТипыВопросовШаблонаАнкеты/ТипыВопросовШаблонаАнкеты.mdo index 90b454053..f339cfe48 100644 --- a/SSL/src/Enums/ТипыВопросовШаблонаАнкеты/ТипыВопросовШаблонаАнкеты.mdo +++ b/SSL/src/Enums/ТипыВопросовШаблонаАнкеты/ТипыВопросовШаблонаАнкеты.mdo @@ -50,4 +50,11 @@ Табличный + + Комплексный + + ru + Комплексный + + diff --git a/SSL/src/EventSubscriptions/ЗаполнитьНаборыЗначенийДоступаТабличныхЧастейДокументовВзаимодействия/ЗаполнитьНаборыЗначенийДоступаТабличныхЧастейДокументовВзаимодействия.mdo b/SSL/src/EventSubscriptions/ЗаполнитьНаборыЗначенийДоступаТабличныхЧастейДокументовВзаимодействия/ЗаполнитьНаборыЗначенийДоступаТабличныхЧастейДокументовВзаимодействия.mdo new file mode 100644 index 000000000..77fd3c6c9 --- /dev/null +++ b/SSL/src/EventSubscriptions/ЗаполнитьНаборыЗначенийДоступаТабличныхЧастейДокументовВзаимодействия/ЗаполнитьНаборыЗначенийДоступаТабличныхЧастейДокументовВзаимодействия.mdo @@ -0,0 +1,19 @@ + + + ЗаполнитьНаборыЗначенийДоступаТабличныхЧастейДокументовВзаимодействия + + ru + Заполнить наборы значений доступа табличных частей документов взаимодействия + + Подписка создана при внедрении подсистемы Управление доступом для заполнения табличной части НаборыЗначенийДоступа тех объектов метаданных, в которых она была создана для работы шаблона #ПоНаборамЗначений + + DocumentObject.Встреча + DocumentObject.ЭлектронноеПисьмоВходящее + DocumentObject.ЗапланированноеВзаимодействие + DocumentObject.СообщениеSMS + DocumentObject.ТелефонныйЗвонок + DocumentObject.ЭлектронноеПисьмоИсходящее + + BeforeWrite + CommonModule.ВзаимодействияСобытия.ЗаполнитьНаборыЗначенийДоступаТабличныхЧастей + diff --git a/SSL/src/EventSubscriptions/КонтрольНеразделенныхНаборовЗаписейПриЗаписи/КонтрольНеразделенныхНаборовЗаписейПриЗаписи.mdo b/SSL/src/EventSubscriptions/КонтрольНеразделенныхНаборовЗаписейПриЗаписи/КонтрольНеразделенныхНаборовЗаписейПриЗаписи.mdo index c0f7b7f7c..420a3386c 100644 --- a/SSL/src/EventSubscriptions/КонтрольНеразделенныхНаборовЗаписейПриЗаписи/КонтрольНеразделенныхНаборовЗаписейПриЗаписи.mdo +++ b/SSL/src/EventSubscriptions/КонтрольНеразделенныхНаборовЗаписейПриЗаписи/КонтрольНеразделенныхНаборовЗаписейПриЗаписи.mdo @@ -18,12 +18,14 @@ InformationRegisterRecordSet.ВерсииПодсистем InformationRegisterRecordSet.ПричиныИзмененияАдресныхСведений InformationRegisterRecordSet.СообщенияОбменаДанными + InformationRegisterRecordSet.УдалитьЗамерыВремениТехнологические InformationRegisterRecordSet.БезопасноеХранилищеДанных InformationRegisterRecordSet.УдалитьАдресныйКлассификатор InformationRegisterRecordSet.РежимыПодключенияВнешнихМодулей InformationRegisterRecordSet.ОриентирыАдресныхОбъектов InformationRegisterRecordSet.УровниСокращенийАдресныхСведений InformationRegisterRecordSet.ДомаЗданияСтроения + InformationRegisterRecordSet.УдалитьЗамерыВремени2 InformationRegisterRecordSet.ИсторияАдресныхОбъектов InformationRegisterRecordSet.УдалитьОбластиКРезервномуКопированию InformationRegisterRecordSet.УдалитьРейтингАктивностиОбластейДанных diff --git a/SSL/src/EventSubscriptions/КонтрольНеразделенныхОбъектовПриЗаписи/КонтрольНеразделенныхОбъектовПриЗаписи.mdo b/SSL/src/EventSubscriptions/КонтрольНеразделенныхОбъектовПриЗаписи/КонтрольНеразделенныхОбъектовПриЗаписи.mdo index b941f47d0..35b5a92d5 100644 --- a/SSL/src/EventSubscriptions/КонтрольНеразделенныхОбъектовПриЗаписи/КонтрольНеразделенныхОбъектовПриЗаписи.mdo +++ b/SSL/src/EventSubscriptions/КонтрольНеразделенныхОбъектовПриЗаписи/КонтрольНеразделенныхОбъектовПриЗаписи.mdo @@ -43,6 +43,7 @@ CatalogObject.ОчередьЗаданий ConstantValueManager.СообщениеОбменаДаннымиИзГлавногоУзла ConstantValueManager.КаталогОбменаФайламиВМоделиСервисаLinux + ConstantValueManager.ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют ConstantValueManager.ИспользоватьПроверкуКонтрагентов ConstantValueManager.ПараметрыАдминистрированияИБ ConstantValueManager.ИспользуютсяПрофилиБезопасности @@ -50,15 +51,16 @@ ConstantValueManager.ИспользоватьДополнительныеОтчетыИОбработки ConstantValueManager.ИспользоватьСервисСклоненияMorpher ChartOfCharacteristicTypesObject.РазделыДатЗапретаИзменения - ConstantValueManager.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций ConstantValueManager.ВерсияКлассификатораБанковРФ ConstantValueManager.ПоддержкаРезервногоКопирования + ConstantValueManager.ПараметрыПодключаемыхКоманд ConstantValueManager.ГлавныйУзел ConstantValueManager.ОценкаПроизводительностиПериодЗаписи ConstantValueManager.СписокРасширенийФайловOpenDocument ConstantValueManager.ИспользоватьРазделениеПоОбластямДанных ConstantValueManager.НастройкаПодчиненногоУзлаРИБЗавершена ConstantValueManager.КопироватьОбластиДанныхИзЭталонной + ConstantValueManager.ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков CatalogObject.ПоставляемыеДанные CatalogObject.ПредопределенныеВариантыОтчетов ChartOfCharacteristicTypesObject.УдалитьВидыДоступа @@ -74,8 +76,10 @@ ConstantValueManager.АвтоматическиНастраиватьРазрешенияВПрофиляхБезопасности ExchangePlanObject.ОбменСообщениями ConstantValueManager.МаксимальноеКоличествоИсполняющихФоновыхЗаданий + ConstantValueManager.ПериодХраненияЗамеров ConstantValueManager.НастройкаПроксиСервера ConstantValueManager.МаксимальнаяДлительностьВыполненияИсполняющегоФоновогоЗадания + ConstantValueManager.КоличествоЗамеровВПакетеЭкспорта ConstantValueManager.ИспользоватьНесколькоПроизводственныхКалендарей OnWrite diff --git a/SSL/src/EventSubscriptions/ОчиститьИнформациюОбАвтореВерсии/ОчиститьИнформациюОбАвтореВерсии.mdo b/SSL/src/EventSubscriptions/ОчиститьИнформациюОбАвтореВерсии/ОчиститьИнформациюОбАвтореВерсии.mdo index ffeefb2c9..65abdd160 100644 --- a/SSL/src/EventSubscriptions/ОчиститьИнформациюОбАвтореВерсии/ОчиститьИнформациюОбАвтореВерсии.mdo +++ b/SSL/src/EventSubscriptions/ОчиститьИнформациюОбАвтореВерсии/ОчиститьИнформациюОбАвтореВерсии.mdo @@ -6,6 +6,8 @@ Очистить информацию об авторе версии + CatalogObject.ВнешниеПользователи + CatalogObject.Пользователи ExchangePlanObject BeforeDelete diff --git a/SSL/src/EventSubscriptions/ПроверитьЗначениеОпцииИспользоватьНесколькоОрганизаций/ПроверитьЗначениеОпцииИспользоватьНесколькоОрганизаций.mdo b/SSL/src/EventSubscriptions/ПроверитьЗначениеОпцииИспользоватьНесколькоОрганизаций/ПроверитьЗначениеОпцииИспользоватьНесколькоОрганизаций.mdo deleted file mode 100644 index df925ad31..000000000 --- a/SSL/src/EventSubscriptions/ПроверитьЗначениеОпцииИспользоватьНесколькоОрганизаций/ПроверитьЗначениеОпцииИспользоватьНесколькоОрганизаций.mdo +++ /dev/null @@ -1,13 +0,0 @@ - - - ПроверитьЗначениеОпцииИспользоватьНесколькоОрганизаций - - ru - Проверить значение опции использовать несколько организаций - - - CatalogObject.Организации - - OnWrite - CommonModule.ОрганизацииСлужебный.ПроверитьЗначениеОпцииИспользоватьНесколькоОрганизацийПриЗаписи - diff --git a/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss index 682c539c8..61e6fb4bb 100644 --- a/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss +++ b/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss @@ -9,43 +9,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - - Заблокирована - Equal - false - - - Ведущая - Equal - true - - - - - Шрифт - - - - - - - - - Заблокирована - Equal - true - - - - - ЦветТекста - style:ТекстЗапрещеннойЯчейкиЦвет - - - Normal b75fecce-942b-4aed-abc9-e6a02e460fb3 diff --git a/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаСписка/Form.form b/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаСписка/Form.form index 5fc8e69af..3a11c4123 100644 --- a/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаСписка/Form.form +++ b/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаСписка/Form.form @@ -287,6 +287,10 @@ -1 Left + + OnCreateAtServer + ПриСозданииНаСервере + DontBlock true true @@ -312,6 +316,12 @@ Список.Ref + + Список.Ведущая + + + Список.Заблокирована +
            true
            ExchangePlan.ОбменСообщениями diff --git a/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаСписка/Module.bsl b/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаСписка/Module.bsl new file mode 100644 index 000000000..a71f6fe68 --- /dev/null +++ b/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаСписка/Module.bsl @@ -0,0 +1,62 @@ + +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + УстановитьУсловноеОформление(); + + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. + Возврат; + КонецЕсли; + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаСервере +Процедура УстановитьУсловноеОформление() + + УсловноеОформление.Элементы.Очистить(); + + // Оформление заблокированной записи. + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.Список.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Список.Заблокировано"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + Элемент.Оформление.УстановитьЗначениеПараметра("Шрифт", Новый Шрифт(,,Истина)); + + // Оформление быстрого сообщения. + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.Список.Имя); + + ГруппаЭлементовОтбора = Элемент.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); + ГруппаЭлементовОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ; + + ОтборЭлемента = ГруппаЭлементовОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Список.Заблокировано"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Ложь; + + ОтборЭлемента = ГруппаЭлементовОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Список.Ведущая"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.РезультатУспехЦвет); + +КонецПроцедуры + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаУзла/Form.form b/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаУзла/Form.form index 33f113e94..5c7a38f0e 100644 --- a/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаУзла/Form.form +++ b/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаУзла/Form.form @@ -72,7 +72,6 @@ true Label - true true Style.ПоясняющийТекст diff --git a/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаУзла/Module.bsl b/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаУзла/Module.bsl index ec7510e65..a1395f711 100644 --- a/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаУзла/Module.bsl +++ b/SSL/src/ExchangePlans/ОбменСообщениями/Forms/ФормаУзла/Module.bsl @@ -32,8 +32,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; Оповестить(ОбменСообщениямиКлиент.ИмяСобытияЗакрытаФормаКонечнойТочки()); КонецПроцедуры diff --git a/SSL/src/ExchangePlans/ОбновлениеИнформационнойБазы/ManagerModule.bsl b/SSL/src/ExchangePlans/ОбновлениеИнформационнойБазы/ManagerModule.bsl index 373f4d54c..2703e037c 100644 --- a/SSL/src/ExchangePlans/ОбновлениеИнформационнойБазы/ManagerModule.bsl +++ b/SSL/src/ExchangePlans/ОбновлениеИнформационнойБазы/ManagerModule.bsl @@ -2,7 +2,7 @@ #Область СлужебныйПрограммныйИнтерфейс -// Возвращает ссылки на узлы с очередью меньшей, чем переданная +// Возвращает ссылки на узлы с очередью меньшей, чем переданная. // // Параметры: // Очередь - Число - очередь обработки данных. @@ -47,30 +47,42 @@ ВызватьИсключение ТекстИсключения; КонецЕсли; - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | ОбновлениеИнформационнойБазы.Ссылка КАК Ссылка - |ИЗ - | ПланОбмена.ОбновлениеИнформационнойБазы КАК ОбновлениеИнформационнойБазы - |ГДЕ - | ОбновлениеИнформационнойБазы.Очередь = &Очередь - | И НЕ ОбновлениеИнформационнойБазы.ЭтотУзел"; - - Запрос.УстановитьПараметр("Очередь", Очередь); - - Выборка = Запрос.Выполнить().Выбрать(); - - Если Выборка.Следующий() Тогда - Узел = Выборка.Ссылка; - Иначе - УзелОбъект = ПланыОбмена.ОбновлениеИнформационнойБазы.СоздатьУзел(); - УзелОбъект.Очередь = Очередь; - УзелОбъект.УстановитьНовыйКод(Строка(Очередь)); - УзелОбъект.Наименование = Строка(Очередь); - УзелОбъект.Записать(); - Узел = УзелОбъект.Ссылка; - КонецЕсли; + НачатьТранзакцию(); + Попытка + Блокировка = Новый БлокировкаДанных; + ЭлементБлокировки = Блокировка.Добавить("ПланОбмена.ОбновлениеИнформационнойБазы"); + Блокировка.Заблокировать(); + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ОбновлениеИнформационнойБазы.Ссылка КАК Ссылка + |ИЗ + | ПланОбмена.ОбновлениеИнформационнойБазы КАК ОбновлениеИнформационнойБазы + |ГДЕ + | ОбновлениеИнформационнойБазы.Очередь = &Очередь + | И НЕ ОбновлениеИнформационнойБазы.ЭтотУзел"; + + Запрос.УстановитьПараметр("Очередь", Очередь); + + Выборка = Запрос.Выполнить().Выбрать(); + + Если Выборка.Следующий() Тогда + Узел = Выборка.Ссылка; + Иначе + УзелОбъект = ПланыОбмена.ОбновлениеИнформационнойБазы.СоздатьУзел(); + УзелОбъект.Очередь = Очередь; + УзелОбъект.УстановитьНовыйКод(Строка(Очередь)); + УзелОбъект.Наименование = Строка(Очередь); + УзелОбъект.Записать(); + Узел = УзелОбъект.Ссылка; + КонецЕсли; + + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; Возврат Узел; КонецФункции diff --git a/SSL/src/ExchangePlans/ОбновлениеИнформационнойБазы/ОбновлениеИнформационнойБазы.mdo b/SSL/src/ExchangePlans/ОбновлениеИнформационнойБазы/ОбновлениеИнформационнойБазы.mdo index d10e45e87..12311059f 100644 --- a/SSL/src/ExchangePlans/ОбновлениеИнформационнойБазы/ОбновлениеИнформационнойБазы.mdo +++ b/SSL/src/ExchangePlans/ОбновлениеИнформационнойБазы/ОбновлениеИнформационнойБазы.mdo @@ -88,6 +88,606 @@ 9 Variable 25 + + InformationRegister.УдалитьНаборыЗначенийДоступа + + + InformationRegister.СостоянияРассылокОтчетов + + + Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы + + + InformationRegister.ПоставляемыеДанныеТребующиеОбработки + + + Catalog.ШаблоныАнкет + + + InformationRegister.ПроцессыДляЗапуска + + + InformationRegister.НаличиеПрисоединенныхФайлов + + + InformationRegister.ХранимыеФайлыВерсий + + + InformationRegister.СообщенияОбменаДанными + + + Catalog.НаборыДополнительныхРеквизитовИСведений + + + Catalog.ПапкиЭлектронныхПисем + + + Catalog.ВариантыОтчетов + + + InformationRegister.ОтветыНаВопросыАнкет + + + InformationRegister.ВерсииОбъектов + + + InformationRegister.СлужебныеАдресныеСведения + + + InformationRegister.ЗамерыКомментарииСтатистики + + + InformationRegister.СтатистикаКонфигурации + + + InformationRegister.НомераОтсканированныхФайлов + + + InformationRegister.НепринятыеКОбработкеПочтовымСерверомИсходящиеПисьма + + + Catalog.ВопросыШаблонаАнкеты + + + InformationRegister.КурсыВалют + + + InformationRegister.ОбработчикиСобытийСинхронизацииДанных + + + Catalog.СообщенияОбластейДанных + + + InformationRegister.НаборыЗначенийДоступа + + + InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты + + + InformationRegister.ДомаЗданияСтроения + + + InformationRegister.КалендарныеГрафики + + + InformationRegister.ПодпискиПолучателей + + + Catalog.Календари + + + InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем + + + Catalog.Валюты + + + Catalog.ШаблоныСообщений + + + InformationRegister.ЗависимостиПравДоступа + + + InformationRegister.СоответствияОбъектовИнформационныхБаз + + + Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы + + + InformationRegister.ПредопределенныеВариантыОтчетовВерсийРасширений + + + InformationRegister.УдалитьЗамерыВремениТехнологические + + + InformationRegister.РейтингАктивностиОбластейДанных + + + InformationRegister.РазрешенияНаИспользованиеВнешнихРесурсов + + + InformationRegister.НастройкиСинхронизацииФайлов + + + InformationRegister.ОбластиПерсональныхДанных + + + Catalog.КлючевыеОперации + + + InformationRegister.ОбластиТребующиеОбработкиПоставляемыхДанных + + + Catalog.ВариантыОтветовАнкет + + + Catalog.Заметки + + + Task.ЗадачаИсполнителя + + + InformationRegister.ДополнительныеСведения + + + Catalog.ПредопределенныеВариантыОтчетовРасширений + + + InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux + + + Document.НазначениеОпросов + + + Catalog.СценарииОбменовДанными + + + Catalog.ИдентификаторыОбъектовМетаданных + + + InformationRegister.ФайлыВРабочемКаталоге + + + InformationRegister.УдалитьАдресныйКлассификатор + + + InformationRegister.ДанныеОбработанныеВЦентральномУзлеРИБ + + + InformationRegister.ИсполнителиЗадач + + + Document.ТелефонныйЗвонок + + + InformationRegister.НастройкиВерсионированияОбъектов + + + Catalog.РолиИсполнителей + + + InformationRegister.СостоянияКонтактовВзаимодействий + + + InformationRegister.ПричиныИзмененияАдресныхСведений + + + InformationRegister.СтатусыСинхронизацииФайловСОблачнымСервисом + + + InformationRegister.ДанныеПроизводственногоКалендаря + + + Catalog.ВерсииРасширений + + + InformationRegister.НаследованиеНастроекПравОбъектов + + + InformationRegister.УдалитьБлокировкиСеансовОбластиДанных + + + InformationRegister.ПраваРолей + + + Catalog.ТелефонныйЗвонокПрисоединенныеФайлы + + + Document.ЗапланированноеВзаимодействие + + + Catalog.ШаблоныЗаданийОчереди + + + Document.Встреча + + + Catalog.Пользователи + + + InformationRegister.НастройкиОтправителя + + + InformationRegister.ВерсииПодсистем + + + Catalog.ПользовательскиеНастройкиОтчетов + + + InformationRegister.СостоянияОбменовДанными + + + InformationRegister.УдалитьНастройкиВерсионированияОбъектов + + + InformationRegister.ПредметыПапкиВзаимодействий + + + InformationRegister.ОбластиДанных + + + InformationRegister.ЗначенияГруппДоступаПоУмолчанию + + + InformationRegister.УдалитьВерсииПодсистем + + + Document.СообщениеSMS + + + InformationRegister.ОчередьИзвлеченияТекста + + + Catalog.УчетныеЗаписиЭлектроннойПочты + + + InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов + + + InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам + + + InformationRegister.ПакетыИнформацииПриЗапуске + + + InformationRegister.УдалитьОбластиКРезервномуКопированию + + + Catalog.ОчередьЗаданий + + + InformationRegister.ЗамерыОбластиСтатистики + + + InformationRegister.ДополнительныеАдресныеСведения + + + InformationRegister.ОриентирыАдресныхОбъектов + + + Document.Анкета + + + Catalog.ПроизводственныеКалендари + + + Catalog.СтроковыеКонтактыВзаимодействий + + + InformationRegister.СостоянияКонтрагентов + + + InformationRegister.Удалить_АктивныеПредметыВзаимодействий + + + Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы + + + InformationRegister.НазначениеДополнительныхОбработок + + + Catalog.ВидыКонтактнойИнформации + + + Catalog.СтраныМира + + + InformationRegister.СклоненияПредставленийОбъектов + + + InformationRegister.СогласияНаОбработкуПерсональныхДанных + + + InformationRegister.ПубличныеИдентификаторыСинхронизируемыхОбъектов + + + Document.ОтзывСогласияНаОбработкуПерсональныхДанных + + + Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования + + + InformationRegister.УдалитьОчередьИзвлеченияТекста + + + InformationRegister.СоставыГруппПользователей + + + InformationRegister.ПользовательскиеМакетыПечати + + + InformationRegister.БезопасноеХранилищеДанныхОбластейДанных + + + InformationRegister.ТаблицыГруппДоступа + + + Catalog.ЗакладкиВзаимодействий + + + InformationRegister.ИзмененияОбщихДанныхУзлов + + + Catalog.РассылкиОтчетов + + + InformationRegister.УведомленияОПрочтении + + + InformationRegister.ДанныеОбъектовДляРегистрацииВОбменах + + + InformationRegister.ДанныеБизнесПроцессов + + + Document.ЭлектронноеПисьмоИсходящее + + + InformationRegister.ЗамерыВремени + + + InformationRegister.НастройкиПравОбъектов + + + Catalog.ДополнительныеОтчетыИОбработки + + + Catalog.ВнешниеПользователи + + + Catalog.ПапкиФайлов + + + InformationRegister.НапоминанияПользователя + + + InformationRegister.ЗначенияГруппДоступа + + + InformationRegister.КэшПрограммныхИнтерфейсов + + + InformationRegister.ГруппыЗначенийДоступа + + + InformationRegister.НастройкиКомандПечати + + + Catalog.ПредопределенныеВариантыОтчетов + + + InformationRegister.РучныеИзмененияГрафиковРаботы + + + Catalog.ГруппыПользователей + + + InformationRegister.НастройкиОчисткиФайлов + + + InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз + + + Catalog.ЗначенияСвойствОбъектовИерархия + + + Catalog.УчетныеЗаписиСинхронизацииФайлов + + + Catalog.ПрограммыЭлектроннойПодписиИШифрования + + + Catalog.ИдентификаторыОбъектовРасширений + + + InformationRegister.СостоянияПапокПисем + + + InformationRegister.НастройкиТранспортаОбмена + + + InformationRegister.ПравилаДляОбменаДанными + + + InformationRegister.ОбластиСтатистики + + + Catalog.ГруппыИсполнителейЗадач + + + InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов + + + Catalog.ЗначенияСвойствОбъектов + + + InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений + + + Catalog.КлассификаторБанковРФ + + + InformationRegister.ИсторияАдресныхОбъектов + + + InformationRegister.УдалитьЗамерыВремени + + + InformationRegister.НастройкиВариантовОтчетов + + + Catalog.СообщениеSMSПрисоединенныеФайлы + + + InformationRegister.РезультатыОбменаДанными + + + InformationRegister.УдалитьЗамерыВремени2 + + + InformationRegister.УровниСокращенийАдресныхСведений + + + InformationRegister.ЗаблокированныеДляПолученияУчетныеЗаписи + + + InformationRegister.ПараметрыРаботыВерсийРасширений + + + Document.СогласиеНаОбработкуПерсональныхДанных + + + InformationRegister.БуферОперацийСтатистики + + + Catalog.ГруппыВнешнихПользователей + + + InformationRegister.ЗамерыВремениТехнологические + + + Catalog.ГруппыДоступа + + + InformationRegister.УдалитьОбластиДанных + + + InformationRegister.СостоянияУспешныхОбменовДанными + + + InformationRegister.УдалитьГруппыЗначенийДоступа + + + InformationRegister.ДатыЗапретаИзменения + + + Catalog.ВстречаПрисоединенныеФайлы + + + InformationRegister.УдалитьРейтингАктивностиОбластейДанных + + + Catalog.ТомаХраненияФайлов + + + InformationRegister.ВерсииПодсистемОбластейДанных + + + Catalog.ПравилаОбработкиЭлектроннойПочты + + + ChartOfCharacteristicTypes.ВопросыДляАнкетирования + + + BusinessProcess.Задание + + + InformationRegister.УдалитьПраваПоЗначениямДоступа + + + InformationRegister.ИдентификаторыОбъектовВерсийРасширений + + + InformationRegister.УдалитьСтраныМира + + + InformationRegister.ДампыПлатформы + + + InformationRegister.КодировкиВерсийФайлов + + + InformationRegister.ЗамерыОперацииСтатистики + + + Catalog.Файлы + + + InformationRegister.КомментарииСтатистики + + + InformationRegister.АдресныеОбъекты + + + Catalog.ВерсииФайлов + + + InformationRegister.ОперацииСтатистики + + + InformationRegister.ПрисоединенныеФайлы + + + Catalog.ОчередьЗаданийОбластейДанных + + + InformationRegister.КомментарииОперацииСтатистики + + + InformationRegister.КонтактыВзаимодействий + + + InformationRegister.РабочиеКаталогиФайлов + + + InformationRegister.ПакетыДляОтправки + + + Catalog.ПрофилиГруппДоступа + + + Document.ЭлектронноеПисьмоВходящее + + + InformationRegister.РежимыПодключенияВнешнихМодулей + + + Catalog.СообщенияСистемы + + + Catalog.ПоставляемыеДанные + + + InformationRegister.БезопасноеХранилищеДанных + + + InformationRegister.СеансыВерсийРасширений + + + InformationRegister.СостоянияПредметовВзаимодействий + + + InformationRegister.УдалитьОчередьЗаданий + + + InformationRegister.СведенияОПользователях + + + InformationRegister.БлокировкиСеансовОбластейДанных + + + InformationRegister.ЗагруженныеВерсииАдресныхСведений + AsDescription InDialog BothWays diff --git a/SSL/src/FilterCriteria/ФайлыВТоме/Forms/ФормаСписка/Form.form b/SSL/src/FilterCriteria/ФайлыВТоме/Forms/ФормаСписка/Form.form index 86aaf1abe..3167a166d 100644 --- a/SSL/src/FilterCriteria/ФайлыВТоме/Forms/ФормаСписка/Form.form +++ b/SSL/src/FilterCriteria/ФайлыВТоме/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 24 @@ -448,8 +447,6 @@ -1 Left - 60 - 10 DontBlock true true diff --git a/SSL/src/FunctionalOptions/ИспользоватьБизнесПроцессыИЗадачи/ИспользоватьБизнесПроцессыИЗадачи.mdo b/SSL/src/FunctionalOptions/ИспользоватьБизнесПроцессыИЗадачи/ИспользоватьБизнесПроцессыИЗадачи.mdo index 2dfbaf418..750589457 100644 --- a/SSL/src/FunctionalOptions/ИспользоватьБизнесПроцессыИЗадачи/ИспользоватьБизнесПроцессыИЗадачи.mdo +++ b/SSL/src/FunctionalOptions/ИспользоватьБизнесПроцессыИЗадачи/ИспользоватьБизнесПроцессыИЗадачи.mdo @@ -29,4 +29,10 @@ CommonCommand.ЗадачиПоБизнесПроцессу CommonCommand.КартаМаршрутаБизнесПроцесса Task.ЗадачаИсполнителя + Enum.СостоянияПроцессовДляЗапуска + InformationRegister.ПроцессыДляЗапуска + Report.БизнесПроцессы + Report.Задания + Enum.СостоянияБизнесПроцессов + Catalog.ГруппыИсполнителейЗадач diff --git a/SSL/src/FunctionalOptions/ИспользоватьНесколькоОрганизаций/ИспользоватьНесколькоОрганизаций.mdo b/SSL/src/FunctionalOptions/ИспользоватьНесколькоОрганизаций/ИспользоватьНесколькоОрганизаций.mdo deleted file mode 100644 index 23091f967..000000000 --- a/SSL/src/FunctionalOptions/ИспользоватьНесколькоОрганизаций/ИспользоватьНесколькоОрганизаций.mdo +++ /dev/null @@ -1,11 +0,0 @@ - - - ИспользоватьНесколькоОрганизаций - - ru - Использовать несколько организаций - - Constant.ИспользоватьНесколькоОрганизаций - true - Catalog.Организации.Command.Организации - diff --git a/SSL/src/FunctionalOptions/ИспользоватьОтправкуSMSВШаблонахСообщений/ИспользоватьОтправкуSMSВШаблонахСообщений.mdo b/SSL/src/FunctionalOptions/ИспользоватьОтправкуSMSВШаблонахСообщений/ИспользоватьОтправкуSMSВШаблонахСообщений.mdo new file mode 100644 index 000000000..76ef24d63 --- /dev/null +++ b/SSL/src/FunctionalOptions/ИспользоватьОтправкуSMSВШаблонахСообщений/ИспользоватьОтправкуSMSВШаблонахСообщений.mdo @@ -0,0 +1,11 @@ + + + ИспользоватьОтправкуSMSВШаблонахСообщений + + ru + Использовать отправку SMS в шаблонах сообщений + + Constant.ИспользоватьОтправкуSMSВШаблонахСообщений + true + CommonCommand.ОтправитьSMS + diff --git a/SSL/src/FunctionalOptions/ИспользоватьПочтовыйКлиент/ИспользоватьПочтовыйКлиент.mdo b/SSL/src/FunctionalOptions/ИспользоватьПочтовыйКлиент/ИспользоватьПочтовыйКлиент.mdo index 14734b8b6..55f7a2f10 100644 --- a/SSL/src/FunctionalOptions/ИспользоватьПочтовыйКлиент/ИспользоватьПочтовыйКлиент.mdo +++ b/SSL/src/FunctionalOptions/ИспользоватьПочтовыйКлиент/ИспользоватьПочтовыйКлиент.mdo @@ -29,4 +29,5 @@ InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты InformationRegister.ПредметыПапкиВзаимодействий InformationRegister.УведомленияОПрочтении + InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений diff --git a/SSL/src/FunctionalOptions/ИспользоватьСинхронизациюДанныхВЛокальномРежиме/ИспользоватьСинхронизациюДанныхВЛокальномРежиме.mdo b/SSL/src/FunctionalOptions/ИспользоватьСинхронизациюДанныхВЛокальномРежиме/ИспользоватьСинхронизациюДанныхВЛокальномРежиме.mdo index 7854e8849..a616bbbf4 100644 --- a/SSL/src/FunctionalOptions/ИспользоватьСинхронизациюДанныхВЛокальномРежиме/ИспользоватьСинхронизациюДанныхВЛокальномРежиме.mdo +++ b/SSL/src/FunctionalOptions/ИспользоватьСинхронизациюДанныхВЛокальномРежиме/ИспользоватьСинхронизациюДанныхВЛокальномРежиме.mdo @@ -13,7 +13,7 @@ CommonCommand.СобытияПолучения CommonCommand.ЗагрузитьПравилаКонвертацииОбъектов CommonCommand.ЗагрузитьПравилаРегистрацииОбъектов - CommonCommand.СинхронизацияДанных + CommonCommand.НастройкиСинхронизацииДанных CommonCommand.Синхронизировать CommonCommand.СобытияОтправки CommonCommand.СценарииСинхронизации diff --git a/SSL/src/FunctionalOptions/ИспользоватьШаблоныСообщений/ИспользоватьШаблоныСообщений.mdo b/SSL/src/FunctionalOptions/ИспользоватьШаблоныСообщений/ИспользоватьШаблоныСообщений.mdo new file mode 100644 index 000000000..86485596f --- /dev/null +++ b/SSL/src/FunctionalOptions/ИспользоватьШаблоныСообщений/ИспользоватьШаблоныСообщений.mdo @@ -0,0 +1,11 @@ + + + ИспользоватьШаблоныСообщений + + ru + Использовать шаблоны сообщений + + Constant.ИспользоватьШаблоныСообщений + true + Catalog.ШаблоныСообщений + diff --git a/SSL/src/FunctionalOptions/ИспользоватьЭлектроннуюПочтуВШаблонахСообщений/ИспользоватьЭлектроннуюПочтуВШаблонахСообщений.mdo b/SSL/src/FunctionalOptions/ИспользоватьЭлектроннуюПочтуВШаблонахСообщений/ИспользоватьЭлектроннуюПочтуВШаблонахСообщений.mdo new file mode 100644 index 000000000..2d2f4c184 --- /dev/null +++ b/SSL/src/FunctionalOptions/ИспользоватьЭлектроннуюПочтуВШаблонахСообщений/ИспользоватьЭлектроннуюПочтуВШаблонахСообщений.mdo @@ -0,0 +1,11 @@ + + + ИспользоватьЭлектроннуюПочтуВШаблонахСообщений + + ru + Использовать электронную почту в шаблонах сообщений + + Constant.ИспользоватьЭлектроннуюПочтуВШаблонахСообщений + true + CommonCommand.ОтправитьПисьмо + diff --git a/SSL/src/FunctionalOptions/НеИспользоватьНесколькоОрганизаций/НеИспользоватьНесколькоОрганизаций.mdo b/SSL/src/FunctionalOptions/НеИспользоватьНесколькоОрганизаций/НеИспользоватьНесколькоОрганизаций.mdo deleted file mode 100644 index 556ad59f1..000000000 --- a/SSL/src/FunctionalOptions/НеИспользоватьНесколькоОрганизаций/НеИспользоватьНесколькоОрганизаций.mdo +++ /dev/null @@ -1,12 +0,0 @@ - - - НеИспользоватьНесколькоОрганизаций - - ru - Не использовать несколько организаций - - Constant.НеИспользоватьНесколькоОрганизаций - true - Catalog.Организации.Command.РеквизитыОрганизации - Catalog.Организации.Command.ДобавитьОрганизацию - diff --git a/SSL/src/FunctionalOptions/ПрефиксыОрганизаций/ПрефиксыОрганизаций.mdo b/SSL/src/FunctionalOptions/ПрефиксыОрганизаций/ПрефиксыОрганизаций.mdo deleted file mode 100644 index 75a35ca93..000000000 --- a/SSL/src/FunctionalOptions/ПрефиксыОрганизаций/ПрефиксыОрганизаций.mdo +++ /dev/null @@ -1,11 +0,0 @@ - - - ПрефиксыОрганизаций - - ru - Префиксы организаций - - Содержит префиксы организаций - Catalog.Организации.Attribute.Префикс - true - diff --git a/SSL/src/FunctionalOptions/СтандартныеПодсистемыВАвтономномРежиме/СтандартныеПодсистемыВАвтономномРежиме.mdo b/SSL/src/FunctionalOptions/СтандартныеПодсистемыВАвтономномРежиме/СтандартныеПодсистемыВАвтономномРежиме.mdo index 4250e3da9..9ff73321b 100644 --- a/SSL/src/FunctionalOptions/СтандартныеПодсистемыВАвтономномРежиме/СтандартныеПодсистемыВАвтономномРежиме.mdo +++ b/SSL/src/FunctionalOptions/СтандартныеПодсистемыВАвтономномРежиме/СтандартныеПодсистемыВАвтономномРежиме.mdo @@ -12,5 +12,5 @@ DataProcessor.РезервноеКопированиеИБ DataProcessor.СдвигГраницыИтогов DataProcessor.УправлениеИтогамиИАгрегатами - DataProcessor.ПоискИУстановкаОбновлений + DataProcessor.УстановкаОбновлений diff --git a/SSL/src/FunctionalOptions/СтандартныеПодсистемыВЛокальномРежиме/СтандартныеПодсистемыВЛокальномРежиме.mdo b/SSL/src/FunctionalOptions/СтандартныеПодсистемыВЛокальномРежиме/СтандартныеПодсистемыВЛокальномРежиме.mdo index c7028ddad..2718f6a05 100644 --- a/SSL/src/FunctionalOptions/СтандартныеПодсистемыВЛокальномРежиме/СтандартныеПодсистемыВЛокальномРежиме.mdo +++ b/SSL/src/FunctionalOptions/СтандартныеПодсистемыВЛокальномРежиме/СтандартныеПодсистемыВЛокальномРежиме.mdo @@ -9,7 +9,7 @@ true Catalog.Пользователи.Command.ПользователиИнформационнойБазы DataProcessor.РезервноеКопированиеИБ - DataProcessor.ПоискИУстановкаОбновлений + DataProcessor.УстановкаОбновлений DataProcessor.НастройкаРезервногоКопированияИБ Catalog.КлассификаторБанковРФ.Command.ЗагрузкаКлассификатораБанковРФ Report.АнализЖурналаРегистрации diff --git a/SSL/src/FunctionalOptionsParameters/Организация/Организация.mdo b/SSL/src/FunctionalOptionsParameters/Организация/Организация.mdo deleted file mode 100644 index 892929af3..000000000 --- a/SSL/src/FunctionalOptionsParameters/Организация/Организация.mdo +++ /dev/null @@ -1,9 +0,0 @@ - - - Организация - - ru - Организация - - Catalog.Организации - diff --git a/SSL/src/InformationRegisters/АдресныеОбъекты/Commands/АвторизацияНаСайтеПоддержки/CommandModule.bsl b/SSL/src/InformationRegisters/АдресныеОбъекты/Commands/ПодключитьИнтернетПоддержку/CommandModule.bsl similarity index 66% rename from SSL/src/InformationRegisters/АдресныеОбъекты/Commands/АвторизацияНаСайтеПоддержки/CommandModule.bsl rename to SSL/src/InformationRegisters/АдресныеОбъекты/Commands/ПодключитьИнтернетПоддержку/CommandModule.bsl index 1816a78a0..28a50a6b5 100644 --- a/SSL/src/InformationRegisters/АдресныеОбъекты/Commands/АвторизацияНаСайтеПоддержки/CommandModule.bsl +++ b/SSL/src/InformationRegisters/АдресныеОбъекты/Commands/ПодключитьИнтернетПоддержку/CommandModule.bsl @@ -3,7 +3,7 @@ &НаКлиенте Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды) - СтандартныеПодсистемыКлиент.АвторизоватьНаСайтеПоддержкиПользователей(ПараметрыВыполненияКоманды.Источник); + АдресныйКлассификаторКлиент.АвторизоватьНаСайтеПоддержкиПользователей(Неопределено, ПараметрыВыполненияКоманды.Источник); КонецПроцедуры diff --git a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/АктуализацияУстаревшегоКлассификатора/Form.form b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/АктуализацияУстаревшегоКлассификатора/Form.form index 9a73f08ec..05930a9bc 100644 --- a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/АктуализацияУстаревшегоКлассификатора/Form.form +++ b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/АктуализацияУстаревшегоКлассификатора/Form.form @@ -41,14 +41,10 @@ true Label - 60 - true - 6 true - false - true Left + 6 @@ -136,16 +132,12 @@ true Label - true - 4 true - true Style.ПоясняющийТекст Left - Bottom true @@ -157,10 +149,6 @@ ru Страница выбора - - ru - Страница выбора - СтраницаВыбораРасширеннаяПодсказка 19 @@ -211,9 +199,7 @@ 23 true - 6 true - 3 true @@ -252,7 +238,6 @@ true Label - true true Left @@ -292,14 +277,6 @@ true - - <key>ru</key> - <value>Страница длительной операции</value> - - - ru - Страница длительной операции - СтраницаДлительнойОперацииРасширеннаяПодсказка 21 diff --git a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/АктуализацияУстаревшегоКлассификатора/Module.bsl b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/АктуализацияУстаревшегоКлассификатора/Module.bsl index 84eec977c..2fd0cdcfe 100644 --- a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/АктуализацияУстаревшегоКлассификатора/Module.bsl +++ b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/АктуализацияУстаревшегоКлассификатора/Module.bsl @@ -17,16 +17,19 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Если Элементы.Страницы.ТекущаяСтраница = Элементы.СтраницаВыбора Или ПодтверждениеЗакрытияФормы = Истина Тогда Возврат; КонецЕсли; - Оповещение = Новый ОписаниеОповещения("ЗакрытиеФормыЗавершение", ЭтотОбъект); Отказ = Истина; + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + Оповещение = Новый ОписаниеОповещения("ЗакрытиеФормыЗавершение", ЭтотОбъект); Текст = НСтр("ru = 'Отказаться от обновления данных классификатора?'"); ПоказатьВопрос(Оповещение, Текст, РежимДиалогаВопрос.ДаНет); @@ -152,16 +155,18 @@ ПараметрыВызоваСервера = Новый Структура(); ПараметрыВызоваСервера.Вставить("Результат", Результат); + + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Подсистема Адресный классификатор: актуализация данных'"); + + ПроцессФоновоеЗадание = ДлительныеОперации.ВыполнитьВФоне("АдресныйКлассификаторСлужебный.ФоновыйПереносДанныхУстаревшегоКлассификатора", + ПараметрыВызоваСервера, ПараметрыВыполнения); - РезультатФоновогоЗадания = ДлительныеОперации.ЗапуститьВыполнениеВФоне(УникальныйИдентификатор, - "АдресныйКлассификаторСлужебный.ФоновыйПереносДанныхУстаревшегоКлассификатора", ПараметрыВызоваСервера, - НСтр("ru = 'Подсистема Адресный классификатор: актуализация данных'")); - - Если РезультатФоновогоЗадания.ЗаданиеВыполнено Тогда + Если ПроцессФоновоеЗадание.Статус <> "Выполняется" Тогда Результат = "Выполнено"; Иначе ФоновоеЗадание = Истина; - ИдентификаторФоновогоЗадания = РезультатФоновогоЗадания.ИдентификаторЗадания; + ИдентификаторФоновогоЗадания = ПроцессФоновоеЗадание.ИдентификаторЗадания; КонецЕсли; КонецПроцедуры diff --git a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ЗагрузкаАдресногоКлассификатора/Form.form b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ЗагрузкаАдресногоКлассификатора/Form.form index 3b96e555c..ade4cd188 100644 --- a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ЗагрузкаАдресногоКлассификатора/Form.form +++ b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ЗагрузкаАдресногоКлассификатора/Form.form @@ -448,14 +448,6 @@ true - - <key>ru</key> - <value>Группа подвал субъектов</value> - - - ru - Группа подвал субъектов - ГруппаПодвалСубъектовРасширеннаяПодсказка 117 @@ -478,182 +470,28 @@ ГруппаИсточникиЗагрузки 126 - - ДоступныеИсточникиЗагрузки - 121 - true - true - - true - - - КодИсточникаЗагрузки - - None - - OnChange - ДоступныеИсточникиЗагрузкиПриИзменении - - - ДоступныеИсточникиЗагрузкиРасширеннаяПодсказка - 123 - Label - true - true - - Left - - - - ДоступныеИсточникиЗагрузкиКонтекстноеМеню - 122 - true - - RadioButtonField - Enter - true - Left - true - - 1 - 1 - - - ru - С веб-сайта 1С - - - САЙТ - - - - - ru - Из папки на диске: - - - КАТАЛОГ - - - Vertical - - - ГруппаПараметрыЗагрузки - 128 - - ГруппаАвторизация - 149 - - АвторизацияНаСайтеПоддержкиПользователей - 144 - true - true - - true - - - АвторизацияНаСайтеПоддержкиПользователейРасширеннаяПодсказка - 145 - - <key>ru</key> - <value>Для загрузки адресных сведений с веб-сайта 1С необходимо ввести свой логин и пароль, полученный при регистрации на сайте поддержки пользователей.</value> - - Label - true - true - - Left - - - Hyperlink - Form.Command.ВвестиЛогинИПароль - Normal - Auto - true - true - UserCmds - Button - Auto - - - ИнформацияОбОбновление - 159 - true - true - - true - - - ИнформацияОбОбновление - - None - - ИнформацияОбОбновлениеРасширеннаяПодсказка - 161 - Label - true - true - - Left - - - - ИнформацияОбОбновлениеКонтекстноеМеню - 160 - true - - LabelField - Enter - true - Left - true - - 26 - true - true - - Style.ПоясняющийТекст - - - - - Отступ - 146 - true - - true - - - ОтступРасширеннаяПодсказка - 148 - Label - true - true - - Left - - - - ОтступКонтекстноеМеню - 147 - true - - Label - true - true - - Left - - + ГруппаЗагрузкиССайта + 183 + + ДоступныеИсточникиЗагрузкиСайт + 121 true true true + + КодИсточникаЗагрузки + + None + + OnChange + ДоступныеИсточникиЗагрузкиПриИзменении + - ГруппаАвторизацияРасширеннаяПодсказка - 150 + ДоступныеИсточникиЗагрузкиСайтРасширеннаяПодсказка + 123 Label true true @@ -661,18 +499,183 @@ Left - UsualGroup - - Auto - true - true - Auto - Auto + + ДоступныеИсточникиЗагрузкиСайтКонтекстноеМеню + 122 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + С веб-сайта 1С + + + САЙТ + + + Vertical + + + + АвторизацияНаСайтеПоддержкиПользователей + 144 + true + true + + true + + + АвторизацияНаСайтеПоддержкиПользователейРасширеннаяПодсказка + 145 + + <key>ru</key> + <value>Для использования веб-сервиса 1С и загрузки обновлений адресного классификатора необходимо выполнить подключение к Интернет-поддержке пользователей.</value> + + Label + true + true + + Left + + + Hyperlink + Form.Command.ПодключитьИнтернетПоддержку + Normal + Auto + true + true + UserCmds + Button + Auto + + + ИнформацияОбОбновление + 159 + true + + true + + + ИнформацияОбОбновление + + None + + ИнформацияОбОбновлениеРасширеннаяПодсказка + 161 + Label + true + true + + Left + + + + ИнформацияОбОбновлениеКонтекстноеМеню + 160 + true + + LabelField + Enter + true + Left + true + + true + true + + Style.ПоясняющийТекст + + + + true + true + + true + + + ГруппаЗагрузкиССайтаРасширеннаяПодсказка + 184 + Label + true + true + + Left + + + UsualGroup + + Auto + true + Auto + Auto + + + + ГруппаЗагрузкаИзПапки + 185 + + ДоступныеИсточникиЗагрузкиКаталог + 187 + true + true + + true + + + КодИсточникаЗагрузки + + None + + OnChange + ДоступныеИсточникиЗагрузкиПриИзменении + + + ДоступныеИсточникиЗагрузкиКаталогРасширеннаяПодсказка + 189 + Label + true + true + + Left + + + + ДоступныеИсточникиЗагрузкиКаталогКонтекстноеМеню + 188 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + Из папки на диске: + + + КАТАЛОГ + + + Vertical АдресЗагрузки 28 + + <key>ru</key> + <value>Загрузить из папки на диске</value> + true true @@ -713,7 +716,6 @@ true true - true true true ShowInInputField @@ -731,9 +733,17 @@ true + + <key>ru</key> + <value>Группа загрузка из папки</value> + + + ru + Группа загрузка из папки + - ГруппаПараметрыЗагрузкиРасширеннаяПодсказка - 129 + ГруппаЗагрузкаИзПапкиРасширеннаяПодсказка + 186 Label true true @@ -743,10 +753,8 @@ UsualGroup - Vertical Auto true - true Auto Auto @@ -772,6 +780,7 @@ UsualGroup + Vertical Auto NormalSeparation true @@ -784,37 +793,6 @@ ГруппаКомандЗагрузки 8 - - ДекорацияОтступ - 118 - true - true - - true - - - ДекорацияОтступРасширеннаяПодсказка - 120 - Label - true - true - - Left - - - - ДекорацияОтступКонтекстноеМеню - 119 - true - - Label - true - true - true - - Left - - ГруппаКомандЗагрузкиПанель 153 @@ -900,15 +878,6 @@ true - - <key>ru</key> - <value>Группа команд загрузки</value> - - - ru - Группа команд загрузки - - true ГруппаКомандЗагрузкиРасширеннаяПодсказка 9 @@ -938,10 +907,6 @@ ru Выбор регионов загрузки - - ru - Выбор регионов загрузки - ВыборРегионовЗагрузкиРасширеннаяПодсказка 62 @@ -988,12 +953,8 @@ 68 true - 10 true - 4 true - false - false CommonPicture.ДлительнаяОперация48 @@ -1022,7 +983,6 @@ которое зависит от количества выбранных регионов РФ. Label - true true Left @@ -1039,7 +999,6 @@ Left true - true true @@ -1052,10 +1011,6 @@ ru Группа описание - - ru - Группа описание - ГруппаОписаниеРасширеннаяПодсказка 66 @@ -1075,88 +1030,24 @@ Auto - - ЗаглушкаОжиданиеЗагрузки - 80 - true - true - - true - - - ЗаглушкаОжиданиеЗагрузкиРасширеннаяПодсказка - 82 - Label - true - true - - Left - - - - ЗаглушкаОжиданиеЗагрузкиКонтекстноеМеню - 81 - true - - Label - true - true - true - - Left - - - - ТекстСостоянияЗагрузки - 88 - true - true - - true - - - ТекстСостоянияЗагрузки - - None - - ТекстСостоянияЗагрузкиРасширеннаяПодсказка - 90 - Label - true - true - - Left - - - - ТекстСостоянияЗагрузкиКонтекстноеМеню - 89 - true - - LabelField - Enter - true - Left - true - - true - true - - - ГруппаКомандОтмены - 76 - - ЗаглушкаОжиданиеЗагрузкиКоманднаяПанель - 85 + ОжиданиеЗагрузкиНиз + 179 + + ТекстСостоянияЗагрузки + 88 true true true + + ТекстСостоянияЗагрузки + + None - ЗаглушкаОжиданиеЗагрузкиКоманднаяПанельРасширеннаяПодсказка - 87 + ТекстСостоянияЗагрузкиРасширеннаяПодсказка + 90 Label true true @@ -1165,16 +1056,18 @@ - ЗаглушкаОжиданиеЗагрузкиКоманднаяПанельКонтекстноеМеню - 86 + ТекстСостоянияЗагрузкиКонтекстноеМеню + 89 true - Label - true - true - true - - Left + LabelField + Enter + true + Left + true + + true + true @@ -1235,15 +1128,10 @@ true - - <key>ru</key> - <value>Группа команд отмены</value> - - true true - ГруппаКомандОтменыРасширеннаяПодсказка - 77 + ОжиданиеЗагрузкиНизРасширеннаяПодсказка + 180 Label true true @@ -1253,6 +1141,8 @@ UsualGroup + Vertical + Bottom Auto true true @@ -1323,12 +1213,8 @@ 96 true - 10 true - 2 true - false - false CommonPicture.Успешно32 @@ -1365,6 +1251,7 @@ LabelField true + Center Enter true Left @@ -1379,14 +1266,6 @@ true - - <key>ru</key> - <value>Группа описание</value> - - - ru - Группа описание - ГруппаОписаниеЗавершенияРасширеннаяПодсказка 94 @@ -1406,37 +1285,6 @@ Auto - - ЗаглушкаУспешноеЗавершение - 103 - true - true - - true - - - ЗаглушкаУспешноеЗавершениеРасширеннаяПодсказка - 105 - Label - true - true - - Left - - - - ЗаглушкаУспешноеЗавершениеКонтекстноеМеню - 104 - true - - Label - true - true - true - - Left - - ГруппаКомандЗавершения 101 @@ -1506,6 +1354,7 @@ ru Группа команд завершения + true ГруппаКомандЗавершенияРасширеннаяПодсказка 102 @@ -1518,6 +1367,7 @@ UsualGroup + Bottom Auto true true @@ -1532,12 +1382,8 @@ <key>ru</key> - <value>Успешное завершение</value> + <value>Завершено</value> - - ru - Успешное завершение - УспешноеЗавершениеРасширеннаяПодсказка 92 @@ -1564,7 +1410,7 @@ <key>ru</key> <value> -Индекс %1%2 не найден в адресном классификаторе. Возможные причины: +Индекс %1%2 не найден в адресном классификаторе. Возможные причины: - индекс относится к региону, по которому в программе отсутствуют адресные сведения; - адресные сведения, загруженные в программу, устарели - индекс введен некорректно. @@ -1591,58 +1437,86 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> </extInfo> </items> - <items xsi:type="form:Decoration"> - <name>ЗаглушкаОбновлениеКлассификатора</name> - <id>174</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <extendedTooltip> - <name>ЗаглушкаОбновлениеКлассификатораРасширеннаяПодсказка</name> - <id>176</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>ЗаглушкаОбновлениеКлассификатораКонтекстноеМеню</name> - <id>175</id> - <autoFill>true</autoFill> - </contextMenu> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <verticalStretch>true</verticalStretch> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </items> <items xsi:type="form:FormGroup"> - <name>КоманднаяПанельОбновление</name> - <id>170</id> - <items xsi:type="form:Button"> - <name>ОбновитьКлассификатор</name> - <id>172</id> + <name>ОбновлениеКлассификатораНиз</name> + <id>181</id> + <items xsi:type="form:FormGroup"> + <name>КоманднаяПанельОбновление</name> + <id>170</id> + <items xsi:type="form:Button"> + <name>ОбновитьКлассификатор</name> + <id>172</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <defaultItem>true</defaultItem> + <extendedTooltip> + <name>ОбновитьКлассификаторРасширеннаяПодсказка</name> + <id>173</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <commandName>Form.Command.ОбновитьКлассификатор</commandName> + <buttonImportance>Normal</buttonImportance> + <representation>Auto</representation> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <placementArea>UserCmds</placementArea> + <representationInContextMenu>Auto</representationInContextMenu> + </items> + <items xsi:type="form:Button"> + <name>ОтменаОбновитьКлассификатор</name> + <id>177</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <extendedTooltip> + <name>ОтменаОбновитьКлассификаторРасширеннаяПодсказка</name> + <id>178</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <commandName>Form.Command.Отмена</commandName> + <buttonImportance>Normal</buttonImportance> + <representation>Auto</representation> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <placementArea>UserCmds</placementArea> + <representationInContextMenu>Auto</representationInContextMenu> + </items> <visible>true</visible> <enabled>true</enabled> <userVisible> <common>true</common> </userVisible> - <defaultItem>true</defaultItem> + <title> + <key>ru</key> + <value>Командная панель обновление</value> + + + ru + Командная панель обновление + - ОбновитьКлассификаторРасширеннаяПодсказка - 173 + КоманднаяПанельОбновлениеРасширеннаяПодсказка + 171 Label true true @@ -1650,56 +1524,24 @@ Left - Form.Command.ОбновитьКлассификатор - Normal - Auto - true - true - UserCmds - Auto - - - ОтменаОбновитьКлассификатор - 177 - true - true - - true - - - ОтменаОбновитьКлассификаторРасширеннаяПодсказка - 178 - Label - true - true - - Left - - - Form.Command.Отмена - Normal - Auto - true - true - UserCmds - Auto + CommandBar + + Right + true true true - - <key>ru</key> - <value>Командная панель обновление</value> - ru - Командная панель обновление + = + true - КоманднаяПанельОбновлениеРасширеннаяПодсказка - 171 + ОбновлениеКлассификатораНизРасширеннаяПодсказка + 182 Label true true @@ -1707,9 +1549,15 @@ Left - CommandBar - - Right + UsualGroup + + Vertical + Bottom + Auto + true + true + Auto + Auto true @@ -1721,10 +1569,6 @@ ru Обновление классификатора - - ru - Обновление классификатора - ОбновлениеКлассификатораРасширеннаяПодсказка 166 @@ -1787,15 +1631,10 @@ OnCreateAtServer ПриСозданииНаСервере - - OnClose - ПриЗакрытии - BeforeLoadDataFromSettingsAtServer ПередЗагрузкойДанныхИзНастроекНаСервере - 20 LockOwner Use UseList @@ -2057,10 +1896,10 @@ - ОставшиесяКоличествоПопытокПолучитьОбновление + КоличествоОбновлений <key>ru</key> - <value>Оставшиеся количество попыток получить обновление</value> + <value>Количество обновлений</value> 11 @@ -2130,10 +1969,10 @@ - ДоступныеВерсии + ФоновоеЗадание <key>ru</key> - <value>Доступные версии</value> + <value>Фоновое задание</value> 15 @@ -2144,61 +1983,6 @@ true - - ИдентификаторЗадания - - <key>ru</key> - <value>Идентификатор задания</value> - - 16 - - UUID - - - true - - - true - - - - АдресВоВременномХранилище - - <key>ru</key> - <value>Адрес во временном хранилище</value> - - 17 - - String - - - - true - - - true - - - - НомерПопыткиПолучитьОбновление - - <key>ru</key> - <value>Номер попытки получить обновление</value> - - 18 - - Number - - 10 - - - - true - - - true - - Загрузить @@ -2294,15 +2078,15 @@ <selectedRowsUse>Auto</selectedRowsUse> </formCommands> <formCommands> - <name>ВвестиЛогинИПароль</name> + <name>ПодключитьИнтернетПоддержку</name> <title> <key>ru</key> - <value>Ввести логин и пароль</value> + <value>Подключить интернет-поддержку</value> 1 ru - Ввести логин и пароль для доступа к сайту поддержки пользователей + Ввести логин и пароль для подключения интернет-поддержки пользователей true diff --git a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ЗагрузкаАдресногоКлассификатора/Help/ru.html b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ЗагрузкаАдресногоКлассификатора/Help/ru.html index f766ba1df..a5fd37d4f 100644 --- a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ЗагрузкаАдресногоКлассификатора/Help/ru.html +++ b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ЗагрузкаАдресногоКлассификатора/Help/ru.html @@ -2,12 +2,12 @@

            В адресном классификаторе хранятся адресные сведения, необходимые для работы в программе.

            Для обеспечения единства структуры и состава адресной информации используется Федеральная информационная адресная система (ФИАС). В ФИАС содержатся почтовые адреса РФ. Использование ФИАС помогает заполнять адреса правильно и быстро. Без этого невозможна сдача отчетности. Например, при сдаче отчетности по работникам в налоговую инспекцию, в пенсионный фонд необходимо заполнить адреса по стандарту, иначе отчетность не будет принята. Кроме того, адреса могут меняться и не всегда можно уследить за этими изменениями самостоятельно. Программа позволяет управлять адресами и поддерживать их в актуальном состоянии с помощью ФИАС.

            Для всех регионов РФ имеется возможность загрузки адресных сведений с сайта поддержки пользователей программы 1С:Предприятие фирмы "1С", а также из файлов, распространяемых ФНС РФ.

            -

            Окно для работы с адресным классификатором открывается по команде Адресный классификатор - Загрузить классификатор раздела Администрирование - Поддержка и Обслуживание.

            +

            Окно для работы с адресным классификатором открывается по команде Загрузить классификатор раздела Администрирование - Поддержка и Обслуживание - Адресный классификатор.

            Загрузка адресного классификатора

            • При загрузке классификатора можно выбрать один, несколько или все регионы России, по которым необходимо загрузить адресные сведения. Это удобно, т.к. можно не загружать адреса тех регионов, которые заведомо не будут использоваться в работе. Включите флажки рядом с наименованиями нужных регионов. Для того чтобы выбрать все регионы для загрузки, нажмите , для того чтобы отменить выбор, нажмите кнопку . Для поиска регионов в списке используйте кнопку Найти. В нижней части списка идет подсчет количества выбранных регионов.
            • С помощью переключателя выберите Вариант загрузки:
              • С веб-сайта 1С; -
                • Для загрузки необходимо заполнить данные для авторизации на сайте поддержки пользователей. Для этого перейдите по ссылке Ввести логин и пароль.
              • Из папки на диске. +
                • Для загрузки необходимо заполнить данные авторизации для подключения к Интернет-поддержке пользователей. Для этого перейдите по ссылке Подключить интернет-поддержку.
              • Из папки на диске.
                •  укажите путь к папке (также можно нажать клавишу F4);
            • После указания всех параметров нажмите Загрузить адресные сведения.
            • Во время загрузки программой выводится сообщение о состоянии загрузки:
              • количество загружаемых регионов; diff --git a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ЗагрузкаАдресногоКлассификатора/Module.bsl b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ЗагрузкаАдресногоКлассификатора/Module.bsl index 5d75d8799..a9adc26b6 100644 --- a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ЗагрузкаАдресногоКлассификатора/Module.bsl +++ b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ЗагрузкаАдресногоКлассификатора/Module.bsl @@ -2,10 +2,10 @@ // // КодРегионаДляЗагрузки - Число, Строка, Массив - Код субъекта РФ (или их массив), загрузка которого // предлагается. -// НазваниеРегионаДляЗагрузки - Строка - Название субъекта РФ, загрузка которого предлагается. +// НазваниеРегиона - Строка - Название субъекта РФ, загрузка которого предлагается. // Режим - Строка - Режим работы формы. // -// Если указан параметр КодРегионаДляЗагрузки или НазваниеРегионаДляЗагрузки, то предлагаемый регион или регионы +// Если указан параметр КодРегионаДляЗагрузки или НазваниеРегиона, то предлагаемый регион или регионы // будут отмечены для загрузки, первый из них выделен как текущий. // Если параметр Режим равен "ПроверкаОбновления", то будет запущена проверка обновления на сайте и предложено // загрузить обновленные. @@ -32,15 +32,18 @@ Возврат; КонецЕсли; - ПараметрыДлительнойОперации = Новый Структура("Завершено, АдресРезультата, Идентификатор, Ошибка, ПодробноеПредставлениеОшибки"); - ПараметрыДлительнойОперации.Вставить("ИнтервалОжидания", 5); + Если НЕ ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + Элементы.ГруппаИсточникиЗагрузки.ОтображатьЗаголовок = Ложь; + Элементы.ГруппаЗагрузкиССайта.Видимость = Ложь; + Элементы.ДоступныеИсточникиЗагрузкиКаталог.Видимость = Ложь; + Элементы.АдресЗагрузки.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Авто; + КодИсточникаЗагрузки = "КАТАЛОГ"; + Иначе + ЗаполнитьЗначенияСвойств(ДоступныеИсточникиЗагрузки.Добавить(), Элементы.ДоступныеИсточникиЗагрузкиСайт.СписокВыбора[0]); + КодИсточникаЗагрузки = "САЙТ"; + КонецЕсли; + ЗаполнитьЗначенияСвойств(ДоступныеИсточникиЗагрузки.Добавить(), Элементы.ДоступныеИсточникиЗагрузкиКаталог.СписокВыбора[0]); - ЗаполнитьЗначенияСвойств(ДоступныеИсточникиЗагрузки.Добавить(), Элементы.ДоступныеИсточникиЗагрузки.СписокВыбора[0]); - ЗаполнитьЗначенияСвойств(ДоступныеИсточникиЗагрузки.Добавить(), Элементы.ДоступныеИсточникиЗагрузки.СписокВыбора[1]); - - // Умолчание, возможно будет перекрыто при восстановлении настроек. - КодИсточникаЗагрузки = "КАТАЛОГ"; - ОставшиесяКоличествоПопытокПолучитьОбновление = 20; ИдентификаторыДляОбновления = Новый Массив; // Получаем уже загруженные регионы. @@ -51,43 +54,51 @@ Регион.Представление = " " + Формат(Регион.КодСубъектаРФ, "ЧЦ=2; ЧН=; ЧВН=; ЧГ=") + ", " + Регион.Представление; КонецЦикла; - Если Параметры.Свойство("ВыборАдресаПоПочтовомуИндексу") Тогда + Если Параметры.Свойство("ВыборАдресаПоПочтовомуИндексу") И КодИсточникаЗагрузки = "САЙТ" Тогда РежимРаботы = "ОБНОВЛЕНИЕ"; ПочтовыйИндекс = Параметры.Индекс; - СведенияОРегионе = АдресныйКлассификаторСлужебный.ОпределитьРегионПоИндексу(ПочтовыйИндекс); - Если СведенияОРегионе <> Неопределено Тогда - ПредставлениеРегиона = " (" + СведенияОРегионе.Представление + ")"; - ТекущийКодРегиона = СведенияОРегионе.КодСубъектаРФ; - КонецЕсли; - Элементы.ТекстИндексНеНайден.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Элементы.ТекстИндексНеНайден.Заголовок, ПочтовыйИндекс, ПредставлениеРегиона); - Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Индекс %1 не найден'"), ПочтовыйИндекс); - Элементы.ОбновитьКлассификатор.КнопкаПоУмолчанию = Истина; Элементы.ШагиЗагрузки.ТекущаяСтраница = Элементы.ОбновлениеКлассификатора; + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.АдресныйКлассификатор") Тогда + МодульАдресныйКлассификаторСлужебный = ОбщегоНазначения.ОбщийМодуль("АдресныйКлассификаторСлужебный"); + СведенияОРегионе = МодульАдресныйКлассификаторСлужебный.ОпределитьРегионПоИндексу(ПочтовыйИндекс); + Если СведенияОРегионе <> Неопределено Тогда + ПредставлениеРегиона = " (" + СведенияОРегионе.Представление + ")"; + ТекущийКодРегиона = СведенияОРегионе.КодСубъектаРФ; + КонецЕсли; + Элементы.ТекстИндексНеНайден.Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Элементы.ТекстИндексНеНайден.Заголовок, ПочтовыйИндекс, ПредставлениеРегиона); + КонецЕсли; + Элементы.ОбновитьКлассификатор.КнопкаПоУмолчанию = Истина; Иначе - ТаблицаРегионов.ЗагрузитьКолонку(ТаблицаРегионов.ВыгрузитьКолонку("Загружено"), "Загружать"); РежимРаботы = "ЗАГРУЗКА"; ТекущийКодРегиона = Неопределено; + Параметры.Свойство("КодРегионаДляЗагрузки", ТекущийКодРегиона); - АдресВоВременномХранилище = Неопределено; - ПроверитьДоступностьОбновления(); + + // Анализируем варианты работы - нас могли вызвать для проверки обновления. + ДоступныеВерсии = АдресныйКлассификаторСлужебный.ДоступныеВерсииАдресныхСведений(); + Фильтр = Новый Структура("Загружено, ДоступноОбновление", Истина, Истина); + ОбновленныеДанные = ДоступныеВерсии.Скопировать(Фильтр); + КоличествоОбновлений = ОбновленныеДанные.Количество(); + + Если КоличествоОбновлений > 0 Тогда + ДатаОбновления = Формат(ОбновленныеДанные[0].ДатаОбновления, "ДЛФ=DD"); + ИнформацияОбОбновление = НСтр("ru = 'Доступно обновление от'") + " " + ДатаОбновления; + + // Будем загружать только обновленных, возможно добавленных субъекты РФ ! + ИдентификаторыДляОбновления = ОбновленныеДанные.ВыгрузитьКолонку("Идентификатор"); + Иначе + Элементы.ИнформацияОбОбновление.Видимость = Ложь; + Фильтр = Новый Структура("Загружено, ДоступноОбновление", Истина, Ложь); + ОбновленныеДанные = ДоступныеВерсии.Скопировать(Фильтр); + ИдентификаторыДляОбновления = ОбновленныеДанные.ВыгрузитьКолонку("Идентификатор"); + КонецЕсли; КонецЕсли; // Добавляем пометку для загружаемого региона-параметра и ставим его текущей строкой. ТипТекущегоКодаРегиона = ТипЗнч(ТекущийКодРегиона); ТипЧисло = Новый ОписаниеТипов("Число"); - Если ИдентификаторыДляОбновления.Количество() > 0 Тогда - // Обновление строго указанных. - Фильтр = Новый Структура("Идентификатор"); - Для Каждого Идентификатор Из ИдентификаторыДляОбновления Цикл - Фильтр.Идентификатор = Идентификатор; - Кандидаты = ТаблицаРегионов.НайтиСтроки(Фильтр); - Если Кандидаты.Количество() > 0 Тогда - Кандидаты[0].Загружать = Истина; - КонецЕсли; - КонецЦикла; - - ИначеЕсли ТипТекущегоКодаРегиона = Тип("Массив") И ТекущийКодРегиона.Количество() > 0 Тогда + Если ТипТекущегоКодаРегиона = Тип("Массив") И ТекущийКодРегиона.Количество() > 0 Тогда // Указан массив для загрузки Фильтр = Новый Структура("КодСубъектаРФ"); Для Каждого КодРегиона Из ТекущийКодРегиона Цикл @@ -103,9 +114,21 @@ // Как код ТекущийКодРегиона = ТипЧисло.ПривестиЗначение(ТекущийКодРегиона); - ИначеЕсли Параметры.Свойство("НазваниеРегионаДляЗагрузки") Тогда + ИначеЕсли Параметры.Свойство("НазваниеРегиона") Тогда // Как наименование - ТекущийКодРегиона = АдресныйКлассификатор.КодРегионаПоНаименованию(Параметры.НазваниеРегионаДляЗагрузки); + ТекущийКодРегиона = АдресныйКлассификатор.КодРегионаПоНаименованию(Параметры.НазваниеРегиона); + КонецЕсли; + + Если НЕ ЗначениеЗаполнено(ТекущийКодРегиона) И ИдентификаторыДляОбновления.Количество() > 0 Тогда + // Обновление строго указанных. + Фильтр = Новый Структура("Идентификатор"); + Для Каждого Идентификатор Из ИдентификаторыДляОбновления Цикл + Фильтр.Идентификатор = Идентификатор; + Кандидаты = ТаблицаРегионов.НайтиСтроки(Фильтр); + Если Кандидаты.Количество() > 0 Тогда + Кандидаты[0].Загружать = Истина; + КонецЕсли; + КонецЦикла; КонецЕсли; ЗначениеВРеквизитФормы(ТаблицаРегионов, "СубъектыРФ"); @@ -120,6 +143,8 @@ КонецЕсли; Если РежимРаботы = "ЗАГРУЗКА" Тогда + // Установка текущей строки по коду. + // Если не установили текущую строку по параметру, то пытаемся поставить ее на первый отмеченный. Если Элементы.СубъектыРФ.ТекущаяСтрока = Неопределено Тогда Кандидаты = СубъектыРФ.НайтиСтроки(Новый Структура("Загружать", Истина)); @@ -140,7 +165,7 @@ // Автосохранение настроек СохраняемыеВНастройкахДанныеМодифицированы = Истина; КонецЕсли; - + КонецПроцедуры &НаСервере @@ -166,37 +191,28 @@ КонецЕсли; ОбновитьИнтерфейсПоКоличествуЗагружаемых(); - УстановитьДоступностьИсточниковЗагрузки(); - - ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеЗадания", 0.5, Истина); - + ПроверитьДоступностьОбновленияКлиент(); КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Если Элементы.ШагиЗагрузки.ТекущаяСтраница <> Элементы.ОжиданиеЗагрузки Или ПодтверждениеЗакрытияФормы = Истина Тогда Возврат; КонецЕсли; - Оповещение = Новый ОписаниеОповещения("ЗакрытиеФормыЗавершение", ЭтотОбъект); Отказ = Истина; + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + Оповещение = Новый ОписаниеОповещения("ЗакрытиеФормыЗавершение", ЭтотОбъект); Текст = НСтр("ru = 'Прервать загрузку адресного классификатора?'"); ПоказатьВопрос(Оповещение, Текст, РежимДиалогаВопрос.ДаНет); КонецПроцедуры -&НаКлиенте -Процедура ПриЗакрытии() - - Если ПараметрыДлительнойОперации.Идентификатор <> Неопределено Тогда - ОтменитьФоновоеЗадание(ПараметрыДлительнойОперации.Идентификатор); - КонецЕсли; - -КонецПроцедуры - #КонецОбласти #Область ОбработчикиСобытийЭлементовФормы @@ -297,7 +313,7 @@ Процедура АвторизацияНаСайтеПоддержкиПользователей(Команда) Оповещение = Новый ОписаниеОповещения("ПослеВводаЛогинИПароля", ЭтотОбъект); - СтандартныеПодсистемыКлиент.АвторизоватьНаСайтеПоддержкиПользователей(ЭтотОбъект, Оповещение); + АдресныйКлассификаторКлиент.АвторизоватьНаСайтеПоддержкиПользователей(Оповещение, ЭтотОбъект); КонецПроцедуры @@ -308,7 +324,8 @@ И ЗначениеЗаполнено(Результат.Логин) И ЗначениеЗаполнено(Результат.Пароль) Тогда Аутентификация = Результат; - Элементы.АвторизацияНаСайтеПоддержкиПользователей.Доступность = Ложь; + Элементы.АвторизацияНаСайтеПоддержкиПользователей.Видимость = Ложь; + Элементы.ИнформацияОбОбновление.Видимость = Истина; КонецЕсли; КонецПроцедуры @@ -321,12 +338,12 @@ КонецПроцедуры - &НаКлиенте Процедура ОбновитьКлассификатор(Команда) Если КодИсточникаЗагрузки = "САЙТ" Тогда ЗагрузитьКлассификаторССайта(Аутентификация); + // грузим Элементы.ШагиЗагрузки.ТекущаяСтраница = Элементы.ОжиданиеЗагрузки; Иначе Элементы.ШагиЗагрузки.ТекущаяСтраница = Элементы.ВыборРегионовЗагрузки; @@ -339,22 +356,34 @@ #Область СлужебныеПроцедурыИФункции &НаКлиенте -Процедура Подключаемый_ПроверитьВыполнениеЗадания() +Функция ПроверитьДоступностьОбновленияКлиент() - ОставшиесяКоличествоПопытокПолучитьОбновление = ОставшиесяКоличествоПопытокПолучитьОбновление - 1; - Если ОставшиесяКоличествоПопытокПолучитьОбновление > 0 Тогда - Если Не ПустаяСтрока(АдресВоВременномХранилище) Тогда - Если ЗаданиеВыполнено(ИдентификаторЗадания) Тогда - ОбновитьДоступностьОбновления(); - Иначе - ПодключитьОбработчикОжидания("Подключаемый_ПроверитьВыполнениеЗадания", 1.5, Истина); - КонецЕсли; + Задание = ЗапуститьПроверкуДоступностиОбновления(УникальныйИдентификатор); + + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + НастройкиОжидания.ВыводитьОкноОжидания = Ложь; + НастройкиОжидания.ПолучатьРезультат = Истина; + + Обработчик = Новый ОписаниеОповещения("ПослеПроверкиДоступностиОбновленияКлиент", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(Задание, Обработчик, НастройкиОжидания); + +КонецФункции + +&НаКлиенте +Процедура ПослеПроверкиДоступностиОбновленияКлиент(Задание, ДополнительныеПараметры) Экспорт + + Если Задание.Статус = "Выполнено" Тогда + Даты = ДатыОбновленияАдресногоКлассификатор(Задание.АдресРезультата); + + Если Даты.ДатаОбновления > Даты.ДатаСамойСтаройЗагрузки Тогда + ДатаОбновленияСтрокой = Формат(Даты.ДатаОбновления, "ДЛФ=DD"); + ИнформацияОбОбновление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Доступно обновление от %1'"), ДатаОбновленияСтрокой); + Элементы.ИнформацияОбОбновление.Видимость = НЕ Элементы.АвторизацияНаСайтеПоддержкиПользователей.Видимость; КонецЕсли; КонецЕсли; КонецПроцедуры - &НаКлиенте Процедура КонтрольРасширенияРаботыСФайлами(Знач ТекстПредложения, Знач КодИсточника, Знач АдресИсточника) @@ -402,6 +431,60 @@ КонецПроцедуры +&НаСервереБезКонтекста +Функция ДатыОбновленияАдресногоКлассификатор(АдресРезультата) + + Результат = Новый Структура("ДатаСамойСтаройЗагрузки, ДатаОбновления", Дата(1,1,1), Дата(1,1,1)); + + ИнформацияОбновление = ПолучитьИзВременногоХранилища(АдресРезультата); + + Если ЗначениеЗаполнено(ИнформацияОбновление) + И ИнформацияОбновление.Свойство("Таблица") + И ИнформацияОбновление.Таблица.Количество() > 0 Тогда + ОставшиесяКоличествоПопытокПолучитьОбновление = 0; + ДатаОбновления = ИнформацияОбновление.Таблица[0].ДатаОбновления; + Если ТипЗнч(ДатаОбновления) <> Тип("Дата") Тогда + Возврат Ложь; + КонецЕсли; + Результат.ДатаОбновления = НачалоДня(ДатаОбновления); + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | ВЫБОР + | КОГДА НАЧАЛОПЕРИОДА(МИНИМУМ(ЗагруженныеВерсииАдресныхСведений.ДатаВерсии), ДЕНЬ) ЕСТЬ NULL + | ТОГДА ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) + | ИНАЧЕ НАЧАЛОПЕРИОДА(МИНИМУМ(ЗагруженныеВерсииАдресныхСведений.ДатаВерсии), ДЕНЬ) + | КОНЕЦ КАК ДатаВерсии + |ИЗ + | РегистрСведений.ЗагруженныеВерсииАдресныхСведений КАК ЗагруженныеВерсииАдресныхСведений"; + + РезультатЗапроса = Запрос.Выполнить().Выбрать(); + Если РезультатЗапроса.Следующий() Тогда + Результат.ДатаСамойСтаройЗагрузки = РезультатЗапроса.ДатаВерсии; + Иначе + Результат.ДатаСамойСтаройЗагрузки = Дата(1, 1, 1); + КонецЕсли; + КонецЕсли; + + Возврат Результат; + +КонецФункции + +&НаСервереБезКонтекста +Функция ЗапуститьПроверкуДоступностиОбновления(УникальныйИдентификатор) + + ПараметрыВызоваСервера = Новый Массив; + + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Проверка обновления для адресного классификатора'"); + + ФоновоеЗадание = ДлительныеОперации.ВыполнитьВФоне("АдресныйКлассификаторСлужебный.ДоступныеВерсииАдресныхСведений", + ПараметрыВызоваСервера, ПараметрыВыполнения); + + Возврат ФоновоеЗадание; +КонецФункции + &НаСервере Процедура УстановитьУсловноеОформление() УсловноеОформление.Элементы.Очистить(); @@ -417,7 +500,7 @@ ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ОтборЭлемента.ПравоеЗначение = Ложь; - Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", WebЦвета.Черный); + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); КонецПроцедуры &НаКлиенте @@ -438,7 +521,7 @@ Процедура ОбновитьИнтерфейсПоКоличествуЗагружаемых() // Страница выбора - ВыбраноРегионовДляЗагрузки = СубъектыРФ.НайтиСтроки(Новый Структура("Загружать", Истина) ).Количество(); + ВыбраноРегионовДляЗагрузки = СубъектыРФ.НайтиСтроки( Новый Структура("Загружать", Истина) ).Количество(); // Страница загрузки ТекстОписанияЗагрузки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Загружаются данные по выбранным регионам (%1)'"), ВыбраноРегионовДляЗагрузки); @@ -489,7 +572,7 @@ // Проходим через форму авторизации принудительно. Оповещение = Новый ОписаниеОповещения("ЗагрузитьКлассификаторССайтаЗапросАутентификации", ЭтотОбъект, Новый Структура); Оповещение.ДополнительныеПараметры.Вставить("КодыРегионов", КодыРегионов); - СтандартныеПодсистемыКлиент.АвторизоватьНаСайтеПоддержкиПользователей(ЭтотОбъект, Оповещение); + АдресныйКлассификаторКлиент.АвторизоватьНаСайтеПоддержкиПользователей(Оповещение, ЭтотОбъект); Возврат; КонецЕсли; @@ -504,16 +587,13 @@ Если ТипЗнч(Аутентификация) <> Тип("Структура") Тогда // Возвращаемся на страницу выбора. Элементы.ШагиЗагрузки.ТекущаяСтраница = Элементы.ВыборРегионовЗагрузки; - Возврат; - ИначеЕсли ПустаяСтрока(Аутентификация.Логин) Или ПустаяСтрока(Аутентификация.Пароль) Тогда // На повторный ввод пароля ЗагрузитьКлассификаторССайта(Аутентификация); - Возврат; - + Иначе + ЗагрузитьКлассификаторССайтаАутентификация(Аутентификация, ДополнительныеПараметры.КодыРегионов); КонецЕсли; - ЗагрузитьКлассификаторССайтаАутентификация(Аутентификация, ДополнительныеПараметры.КодыРегионов); КонецПроцедуры &НаКлиенте @@ -525,92 +605,118 @@ Элементы.ШагиЗагрузки.ТекущаяСтраница = Элементы.ОжиданиеЗагрузки; ТекстСостоянияЗагрузки = НСтр("ru = 'Загрузка файлов с сайта поддержки пользователей...'"); - Элементы.ПрерватьЗагрузку.Доступность = Ложь; + ОповещениеОПрогрессеВыполнения = Новый ОписаниеОповещения("ПрогрессВыполнения", ЭтотОбъект); + Задание = ЗапуститьФоновуюЗагрузкуССайтаНаСервере(КодыРегионов, Аутентификация, УникальныйИдентификатор); - ПараметрыФоновойЗагрузкиКлассификатора = Новый Структура; - ПараметрыФоновойЗагрузкиКлассификатора.Вставить("Аутентификация", Аутентификация); - ПараметрыФоновойЗагрузкиКлассификатора.Вставить("КодыРегионов", КодыРегионов); + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + НастройкиОжидания.ВыводитьОкноОжидания = Ложь; + НастройкиОжидания.ПолучатьРезультат = Истина; + НастройкиОжидания.ОповещениеОПрогрессеВыполнения = ОповещениеОПрогрессеВыполнения; - ПодключитьОбработчикОжидания("ЗагрузитьКлассификаторССайтаФИАС", 0.1, Истина); -КонецПроцедуры + Обработчик = Новый ОписаниеОповещения("ПослеФоновойЗагрузкиССайта", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(Задание, Обработчик, НастройкиОжидания); -&НаКлиенте -Процедура ЗагрузитьКлассификаторССайтаФИАС() - КодыРегионов = ПараметрыФоновойЗагрузкиКлассификатора.КодыРегионов; - Аутентификация = ПараметрыФоновойЗагрузкиКлассификатора.Аутентификация; - - ПараметрыФоновойЗагрузкиКлассификатора = Неопределено; - - ЗапуститьФоновуюЗагрузкуССайтаНаСервере(КодыРегионов, Аутентификация); - ПодключитьОбработчикОжидания("Подключаемый_ОжиданиеДлительнойОперации", 0.1, Истина); -КонецПроцедуры - -&НаСервере -Процедура ЗапуститьФоновуюЗагрузкуССайтаНаСервере(КодыРегионов, Аутентификация) - - ПараметрыМетода = Новый Массив; - ПараметрыМетода.Добавить(КодыРегионов); - ПараметрыМетода.Добавить(Аутентификация); - - ПараметрыДлительнойОперации.Идентификатор = Неопределено; - ПараметрыДлительнойОперации.Завершено = Истина; - ПараметрыДлительнойОперации.АдресРезультата = Неопределено; - ПараметрыДлительнойОперации.ПодробноеПредставлениеОшибки = Неопределено; - ПараметрыДлительнойОперации.Ошибка = Неопределено; - - Попытка - РезультатЗапуска = ДлительныеОперации.ЗапуститьВыполнениеВФоне(УникальныйИдентификатор, - "АдресныйКлассификаторСлужебный.ФоновоеЗаданиеЗагрузкиКлассификатораАдресовССайта", - ПараметрыМетода, - НСтр("ru = 'Загрузка адресного классификатора с сайта'")); - Исключение - Информация = ИнформацияОбОшибке(); - КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки(Информация); - ТекстОшибки = НСтр("ru = 'Не удается загрузить адресные сведения.'"); - ТекстОшибки = ТекстОшибки + НСтр("ru = 'Возможные причины:'") + Символы.ПС; - ТекстОшибки = ТекстОшибки + НСтр("ru = '• Некорректно введен или не введен логин и пароль;'") + Символы.ПС; - ТекстОшибки = ТекстОшибки + НСтр("ru = '• Нет подключения к Интернету;'") + Символы.ПС; - ТекстОшибки = ТекстОшибки + НСтр("ru = '• На сайте ведутся технические работы. Попробуйте повторить загрузку позднее.'") + Символы.ПС; - ТекстОшибки = ТекстОшибки + НСтр("ru = '• Брандмауэр или другое промежуточное ПО (антивирусы и т.п.) блокируют попытки программы подключиться к Интернету;'") + Символы.ПС; - ТекстОшибки = ТекстОшибки + НСтр("ru = '• Подключение к Интернету выполняется через прокси-сервер, но его параметры не заданы в программе.'") + Символы.ПС; - ТекстОшибки = ТекстОшибки + НСтр("ru = 'Техническая информация:'") + " " + Символы.ПС; - ТекстОшибки = ТекстОшибки + СтрПолучитьСтроку(КраткоеПредставлениеОшибки(Информация), 1); - ПараметрыДлительнойОперации.Ошибка = ТекстОшибки; - ПараметрыДлительнойОперации.ПодробноеПредставлениеОшибки = ПодробноеПредставлениеОшибки(Информация); - Элементы.АвторизацияНаСайтеПоддержкиПользователей.Видимость = Истина; - - Возврат; - КонецПопытки; - - ПараметрыДлительнойОперации.Идентификатор = РезультатЗапуска.ИдентификаторЗадания; - ПараметрыДлительнойОперации.Завершено = РезультатЗапуска.ЗаданиеВыполнено; - ПараметрыДлительнойОперации.АдресРезультата = РезультатЗапуска.АдресХранилища; - - // Запущенное + // Запущенное Элементы.ПрерватьЗагрузку.Доступность = Истина; КонецПроцедуры &НаКлиенте -Процедура ЗапуститьФоновуюЗагрузкуИзКаталогаКлиента(Знач ПараметрыЗагрузки) - // Переключаем режим - страницу. - Элементы.ШагиЗагрузки.ТекущаяСтраница = Элементы.ОжиданиеЗагрузки; - ТекстСостоянияЗагрузки = НСтр("ru = 'Передача файлов на сервер приложения...'"); - - Элементы.ПрерватьЗагрузку.Доступность = Ложь; - ПараметрыФоновойЗагрузкиКлассификатора = ПараметрыЗагрузки; - ПодключитьОбработчикОжидания("ЗапуститьФоновуюЗагрузкуИзКаталогаКлиентаПродолжение", 0.1, Истина); +Процедура ПослеФоновойЗагрузкиССайта(Задание, ДополнительныеПараметры) Экспорт + + Если Задание.Статус = "Ошибка" Тогда + Если СтрНайти(Задание.КраткоеПредставлениеОшибки, "404 Not Found") > 0 ИЛИ СтрНайти(Задание.КраткоеПредставлениеОшибки, "401 Unauthorized") > 0 Тогда + ТекстОшибки = НСтр("ru = 'Не удается загрузить адресные сведения.'"); + ТекстОшибки = ТекстОшибки + НСтр("ru = 'Возможные причины:'") + Символы.ПС; + ТекстОшибки = ТекстОшибки + НСтр("ru = '• Некорректно введен или не введен логин и пароль;'") + Символы.ПС; + ТекстОшибки = ТекстОшибки + НСтр("ru = '• Нет подключения к Интернету;'") + Символы.ПС; + ТекстОшибки = ТекстОшибки + НСтр("ru = '• На сайте ведутся технические работы. Попробуйте повторить загрузку позднее.'") + Символы.ПС; + ТекстОшибки = ТекстОшибки + НСтр("ru = '• Брандмауэр или другое промежуточное ПО (антивирусы и т.п.) блокируют попытки программы подключиться к Интернету;'") + Символы.ПС; + ТекстОшибки = ТекстОшибки + НСтр("ru = '• Подключение к Интернету выполняется через прокси-сервер, но его параметры не заданы в программе.'") + Символы.ПС; + ТекстОшибки = ТекстОшибки + НСтр("ru = 'Техническая информация:'") + " " + Символы.ПС; + ТекстОшибки = ТекстОшибки + СтрПолучитьСтроку(Задание.КраткоеПредставлениеОшибки, 1); + Иначе + ТекстОшибки = НСтр("ru = 'Вероятно в данный момент на сайте ведутся технические работы. Попробуйте повторить загрузку позднее.'") + Символы.ПС; + ТекстОшибки = ТекстОшибки + НСтр("ru = 'Техническая информация:'") + " " + Символы.ПС; + ТекстОшибки = ТекстОшибки + Задание.КраткоеПредставлениеОшибки; + КонецЕсли; + ВывестиСообщениеОбОшибке(ТекстОшибки); + ИначеЕсли Задание.Статус = "Выполнено" Тогда + ЗавершениеЗагрузки(); + КонецЕсли; + КонецПроцедуры &НаКлиенте -Процедура ЗапуститьФоновуюЗагрузкуИзКаталогаКлиентаПродолжение() - ПараметрыЗагрузки = ПараметрыФоновойЗагрузкиКлассификатора; - ПараметрыФоновойЗагрузкиКлассификатора = Неопределено; +Процедура ЗавершениеЗагрузки() + Оповестить("ЗагруженАдресныйКлассификатор", , ЭтотОбъект); + // Для сброса признака АдресныйКлассификаторУстарел в параметрах работы клиента. + ОбновитьПовторноИспользуемыеЗначения(); + ПодтверждениеЗакрытияФормы = Истина; + + Если РежимРаботы = "ОБНОВЛЕНИЕ" Тогда + Закрыть(Истина); + КонецЕсли; + + Элементы.ШагиЗагрузки.ТекущаяСтраница = Элементы.УспешноеЗавершение; + ТекстОписанияЗагрузки = НСтр("ru = 'Адресный классификатор успешно загружен.'"); + Элементы.Закрыть.КнопкаПоУмолчанию = Истина; + ТекущийЭлемент = Элементы.Закрыть; + + Если ЕстьУстаревшиеАдресныеСведенияКЛАДРДляУдаления() Тогда + ОписаниеОповещения = Новый ОписаниеОповещения("ПослеВопросаОбУдалениеКЛАДР", ЭтотОбъект); + ТекстВопроса = НСтр("ru = 'Найдены устаревшие сведения о регионах в формате КЛАДР, которые не используются в программе.'"); + ТекстВопроса = ТекстВопроса + Символы.ПС + НСтр("ru = 'Если загруженных регионов много, то процесс очистки может занять продолжительное время.'"); + ТекстВопроса = ТекстВопроса + Символы.ПС + НСтр("ru = 'Очистить?'"); + ПоказатьВопрос(ОписаниеОповещения, ТекстВопроса, РежимДиалогаВопрос.ДаНет); + КонецЕсли; + Возврат; + +КонецПроцедуры + +&НаСервереБезКонтекста +Функция ЗапуститьФоновуюЗагрузкуССайтаНаСервере(КодыРегионов, Аутентификация, УникальныйИдентификатор) + + ПараметрыВызоваСервера = Новый Массив; + ПараметрыВызоваСервера.Добавить(КодыРегионов); + ПараметрыВызоваСервера.Добавить(Аутентификация); + + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Загрузка адресного классификатора с сайта'"); + + ФоновоеЗадание = ДлительныеОперации.ВыполнитьВФоне("АдресныйКлассификаторСлужебный.ФоновоеЗаданиеЗагрузкиКлассификатораАдресовССайта", + ПараметрыВызоваСервера, ПараметрыВыполнения); + + Возврат ФоновоеЗадание; +КонецФункции + +&НаКлиенте +Процедура ПрогрессВыполнения(Результат, ДополнительныеПараметры) Экспорт + + Если Результат.Статус = "Выполняется" Тогда + Прогресс = ПрочитатьПрогресс(Результат.ИдентификаторЗадания); + Если Прогресс <> Неопределено Тогда + ТекстСостоянияЗагрузки = Прогресс.Текст; + КонецЕсли; + КонецЕсли; + +КонецПроцедуры + +&НаСервереБезКонтекста +Функция ПрочитатьПрогресс(ИдентификаторЗадания) + Возврат ДлительныеОперации.ПрочитатьПрогресс(ИдентификаторЗадания); +КонецФункции + +&НаКлиенте +Процедура ЗапуститьФоновуюЗагрузкуИзКаталогаКлиента(Знач ПараметрыЗагрузки) Если ПараметрыЗагрузки = Неопределено Тогда - // Возвращаемся на страницу выбора. - Элементы.ШагиЗагрузки.ТекущаяСтраница = Элементы.ВыборРегионовЗагрузки; Возврат; КонецЕсли; + ТекстСостоянияЗагрузки = НСтр("ru = 'Передача файлов на сервер приложения...'"); + ПараметрыФоновойЗагрузкиКлассификатора = Неопределено; + + // Переключаем режим - страницу. + Элементы.ШагиЗагрузки.ТекущаяСтраница = Элементы.ОжиданиеЗагрузки; // Список передаваемых на сервер файлов. ПомещаемыеФайлы = Новый Массив; @@ -654,22 +760,50 @@ Иначе // выход из цикла - // Запуск фонового по загрузке из переданных файлов. - Если ЭтоАдресВременногоХранилища(ПараметрыДлительнойОперации.АдресРезультата) Тогда - УдалитьИзВременногоХранилища(ПараметрыДлительнойОперации.АдресРезультата); - КонецЕсли; - ПараметрыДлительнойОперации.АдресРезультата = Неопределено; - Режим = Неопределено; ДополнительныеПараметры.ПараметрыЗагрузки.Свойство("Режим", Режим); - ЗапуститьФоновуюЗагрузкуНаСервере(ДополнительныеПараметры.ПараметрыЗагрузки.КодыРегионов, ПомещенныеФайлы, Режим); - ПодключитьОбработчикОжидания("Подключаемый_ОжиданиеДлительнойОперации", 0.1, Истина); + ОповещениеОПрогрессеВыполнения = Новый ОписаниеОповещения("ПрогрессВыполнения", ЭтотОбъект); + Задание = ЗапуститьФоновуюЗагрузкуНаСервере(ДополнительныеПараметры.ПараметрыЗагрузки.КодыРегионов, ПомещенныеФайлы, Режим, УникальныйИдентификатор); + + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + НастройкиОжидания.ВыводитьОкноОжидания = Ложь; + НастройкиОжидания.ПолучатьРезультат = Истина; + НастройкиОжидания.ОповещениеОПрогрессеВыполнения = ОповещениеОПрогрессеВыполнения; + + Обработчик = Новый ОписаниеОповещения("ПослеФоновойЗагрузкиИзКаталога", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(Задание, Обработчик, НастройкиОжидания); + + // Запущенное + Элементы.ПрерватьЗагрузку.Доступность = Истина; КонецЕсли; КонецПроцедуры +&НаКлиенте +Процедура ПослеФоновойЗагрузкиИзКаталога(Задание, ДополнительныеПараметры) Экспорт + + Если Задание.Статус = "Ошибка" Тогда + ТекстОшибки = НСтр("ru = 'Не удается загрузить адресные сведения из файлов.'"); + ТекстОшибки = ТекстОшибки + НСтр("ru = 'Необходимо сохранить файлы с сайта «1С» http://its.1c.ru/download/fias на диск, а затем загрузить в программу.'") + Символы.ПС; + ТекстОшибки = ТекстОшибки + НСтр("ru = 'Техническая информация:'") + Символы.ПС + Задание.КраткоеПредставлениеОшибки; + ВывестиСообщениеОбОшибке(ТекстОшибки); + + Возврат; + ИначеЕсли Задание.Статус = "Выполнено" Тогда + ЗавершениеЗагрузки(); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура ВывестиСообщениеОбОшибке(Знач ТекстОшибки) + ОчиститьСообщения(); + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстОшибки); + Элементы.ШагиЗагрузки.ТекущаяСтраница = Элементы.ВыборРегионовЗагрузки; +КонецПроцедуры + &НаКлиенте Процедура ЗапуститьФоновуюЗагрузкуИзКаталогаКлиентаПослеИнициализации(Файл, ДополнительныеПараметры) Экспорт @@ -689,144 +823,33 @@ КонецПроцедуры -&НаСервере -Процедура ЗапуститьФоновуюЗагрузкуНаСервере(Знач КодыРегионов, Знач ОписаниеФайловЗагрузки, Знач Режим) +&НаСервереБезКонтекста +Функция ЗапуститьФоновуюЗагрузкуНаСервере(Знач КодыРегионов, Знач ОписаниеФайловЗагрузки, Знач Режим, Знач УникальныйИдентификатор) + ПараметрыМетода = Новый Массив; ПараметрыМетода.Добавить(КодыРегионов); // Файлы преобразуем в двоичные данные - хранилище не может быть разделено с сеансом фонового задания. ОписаниеФайлов = Новый Массив; Для Каждого Описание Из ОписаниеФайловЗагрузки Цикл - ДанныеФайла = Новый Структура("Имя, ВремяИзменения"); ЗаполнитьЗначенияСвойств(ДанныеФайла, Описание); ДанныеФайла.Вставить("Хранение", ПолучитьИзВременногоХранилища(Описание.Хранение)); - ОписаниеФайлов.Добавить(ДанныеФайла); - КонецЦикла; - ПараметрыМетода.Добавить(Неопределено); // ОписаниеФайлов + ПараметрыМетода.Добавить(ОписаниеФайлов); ПараметрыМетода.Добавить(Режим); - ПараметрыДлительнойОперации.Идентификатор = Неопределено; - ПараметрыДлительнойОперации.Завершено = Истина; - ПараметрыДлительнойОперации.АдресРезультата = Неопределено; - ПараметрыДлительнойОперации.Ошибка = Неопределено; + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Загрузка адресного классификатора'"); - ХранилищеПараметров = Константы.ПараметрыАдресногоКлассификатора.Получить(); - ПараметрыАдресногоКлассификатора = ХранилищеПараметров.Получить(); - Если ПараметрыАдресногоКлассификатора = Неопределено Тогда - ХранилищеПараметров = Новый ХранилищеЗначения(Новый Структура("ОписаниеФайлов", ОписаниеФайлов)); - Иначе - ПараметрыАдресногоКлассификатора.Вставить("ОписаниеФайлов", ОписаниеФайлов); - ХранилищеПараметров = Новый ХранилищеЗначения(ПараметрыАдресногоКлассификатора); - КонецЕсли; - Константы.ПараметрыАдресногоКлассификатора.Установить(ХранилищеПараметров); + ФоновоеЗадание = ДлительныеОперации.ВыполнитьВФоне("АдресныйКлассификаторСлужебный.ФоновоеЗаданиеЗагрузкиКлассификатораАдресов", + ПараметрыМетода, ПараметрыВыполнения); + + Возврат ФоновоеЗадание; - Попытка - РезультатЗапуска = ДлительныеОперации.ЗапуститьВыполнениеВФоне(УникальныйИдентификатор, - "АдресныйКлассификаторСлужебный.ФоновоеЗаданиеЗагрузкиКлассификатораАдресов", - ПараметрыМетода, - НСтр("ru = 'Загрузка адресного классификатора'")); - Исключение - ТекстОшибки = НСтр("ru = 'Не удается загрузить адресные сведения из файлов.'"); - ТекстОшибки = ТекстОшибки + НСтр("ru = 'Необходимо сохранить файлы с сайта «1С» http://its.1c.ru/download/fias на диск, а затем загрузить в программу.'") + Символы.ПС; - ТекстОшибки = ТекстОшибки + НСтр("ru = 'Техническая информация:'") + Символы.ПС + КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); - ПараметрыДлительнойОперации.Ошибка = ТекстОшибки; - Возврат; - КонецПопытки; - - ПараметрыДлительнойОперации.Идентификатор = РезультатЗапуска.ИдентификаторЗадания; - ПараметрыДлительнойОперации.Завершено = РезультатЗапуска.ЗаданиеВыполнено; - ПараметрыДлительнойОперации.АдресРезультата = РезультатЗапуска.АдресХранилища; - - // Запущенное - Элементы.ПрерватьЗагрузку.Доступность = Истина; -КонецПроцедуры - -&НаСервере -Функция СостояниеФоновогоЗадания() - Результат = Новый Структура("Прогресс, Завершено, Ошибка, ПодробноеПредставлениеОшибки"); - - Результат.Ошибка = ""; - Если ПараметрыДлительнойОперации.Идентификатор = Неопределено Тогда - Результат.Завершено = Истина; - Результат.Прогресс = Неопределено; - Результат.ПодробноеПредставлениеОшибки = ПараметрыДлительнойОперации.ПодробноеПредставлениеОшибки; - Результат.Ошибка = ПараметрыДлительнойОперации.Ошибка; - Иначе - Попытка - Результат.Завершено = ДлительныеОперации.ЗаданиеВыполнено(ПараметрыДлительнойОперации.Идентификатор); - Результат.Прогресс = ДлительныеОперации.ПрочитатьПрогресс(ПараметрыДлительнойОперации.Идентификатор); - Исключение - Информация = ИнформацияОбОшибке(); - Результат.ПодробноеПредставлениеОшибки = ПодробноеПредставлениеОшибки(Информация); - Результат.Ошибка = КраткоеПредставлениеОшибки(Информация); - КонецПопытки - КонецЕсли; - - Возврат Результат; КонецФункции -&НаСервереБезКонтекста -Процедура ОтменитьФоновоеЗадание(Знач Идентификатор) - - Если Идентификатор <> Неопределено Тогда - Попытка - ДлительныеОперации.ОтменитьВыполнениеЗадания(Идентификатор); - Исключение - // Действие не требуется, запись в журнал регистрации уже произведена. - КонецПопытки - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_ОжиданиеДлительнойОперации() - - // Обновим статус - Состояние = СостояниеФоновогоЗадания(); - Если Не ПустаяСтрока(Состояние.Ошибка) Тогда - // Завершено с ошибкой, сообщим и вернемся на первую страницу. - Элементы.ШагиЗагрузки.ТекущаяСтраница = Элементы.ВыборРегионовЗагрузки; - Элементы.АвторизацияНаСайтеПоддержкиПользователей.Видимость = Истина; - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(Состояние.Ошибка); - Возврат; - - ИначеЕсли Состояние.Завершено Тогда - Оповестить("ЗагруженАдресныйКлассификатор", , ЭтотОбъект); - // Для сброса признака АдресныйКлассификаторУстарел в параметрах работы клиента. - ОбновитьПовторноИспользуемыеЗначения(); - ПодтверждениеЗакрытияФормы = Истина; - - Если РежимРаботы = "ОБНОВЛЕНИЕ" Тогда - Закрыть(Истина); - КонецЕсли; - - Элементы.ШагиЗагрузки.ТекущаяСтраница = Элементы.УспешноеЗавершение; - ТекстОписанияЗагрузки = НСтр("ru = 'Адресный классификатор успешно загружен.'"); - Элементы.Закрыть.КнопкаПоУмолчанию = Истина; - ТекущийЭлемент = Элементы.Закрыть; - - Если ЕстьУстаревшиеАдресныеСведенияКЛАДРДляУдаления() Тогда - ОписаниеОповещения = Новый ОписаниеОповещения("ПослеВопросаОбУдалениеКЛАДР", ЭтотОбъект); - ТекстВопроса = НСтр("ru = 'Найдены устаревшие сведения о регионах в формате КЛАДР, которые не используются в программе.'"); - ТекстВопроса = ТекстВопроса + Символы.ПС + НСтр("ru = 'Если загруженных регионов много, то процесс очистки может занять продолжительное время.'"); - ТекстВопроса = ТекстВопроса + Символы.ПС + НСтр("ru = 'Очистить?'"); - ПоказатьВопрос(ОписаниеОповещения, ТекстВопроса, РежимДиалогаВопрос.ДаНет); - КонецЕсли; - Возврат; - - КонецЕсли; - - // Процесс продолжается - Если ТипЗнч(Состояние.Прогресс) = Тип("Структура") Тогда - ТекстСостоянияЗагрузки = Состояние.Прогресс.Текст; - КонецЕсли; - ПодключитьОбработчикОжидания("Подключаемый_ОжиданиеДлительнойОперации", ПараметрыДлительнойОперации.ИнтервалОжидания, Истина); - -КонецПроцедуры - &НаКлиенте Процедура ПослеВопросаОбУдалениеКЛАДР(Результат, Параметр) Экспорт Если Результат = КодВозвратаДиалога.Да Тогда @@ -848,7 +871,7 @@ &НаСервереБезКонтекста Функция СохраненныеДанныеАутентификацииСайта() - Результат = СтандартныеПодсистемыСервер.ПараметрыАутентификацииНаСайте(); + Результат = АдресныйКлассификаторСлужебный.ПараметрыАутентификацииНаСайте(); Возврат ?(Результат <> Неопределено, Результат, Новый Структура("Логин,Пароль")); КонецФункции @@ -874,103 +897,27 @@ КонецПроцедуры -&НаСервере -Процедура ПроверитьДоступностьОбновления(Знач РезультатПроверки = Неопределено) - - Элементы.Отступ.Видимость = Истина; - АдресВоВременномХранилище = ПоместитьВоВременноеХранилище(РезультатПроверки, УникальныйИдентификатор); - Если РезультатПроверки = Неопределено Тогда - Если ОбщегоНазначенияКлиентСервер.РежимОтладки() Тогда - АдресныйКлассификаторСлужебный.ДоступныеВерсииАдресныхСведений(АдресВоВременномХранилище); - Иначе - ПараметрыПроцедуры = Новый Массив; - ПараметрыПроцедуры.Добавить(АдресВоВременномХранилище); - - ПараметрыЗадания = Новый Массив; - ПараметрыЗадания.Добавить("АдресныйКлассификаторСлужебный.ДоступныеВерсииАдресныхСведений"); - ПараметрыЗадания.Добавить(ПараметрыПроцедуры); - - НаименованиеЗадания = НСтр("ru = 'Проверка доступности сервиса адресного классификатора'"); - Задание = ФоновыеЗадания.Выполнить("РаботаВБезопасномРежиме.ВыполнитьМетодКонфигурации", ПараметрыЗадания,, НаименованиеЗадания); - ИдентификаторЗадания = Задание.УникальныйИдентификатор; - Возврат; - КонецЕсли; - КонецЕсли; - -КонецПроцедуры - -&НаСервере -Функция ОбновитьДоступностьОбновления() - - ИнформацияОбновление = ПолучитьИзВременногоХранилища(АдресВоВременномХранилище); - АдресВоВременномХранилище = ""; - ИдентификаторЗадания = ""; - Элементы.ИнформацияОбОбновление.Видимость = Ложь; - - Если ЗначениеЗаполнено(ИнформацияОбновление) - И ИнформацияОбновление.Свойство("Таблица") - И ИнформацияОбновление.Таблица.Количество() > 0 Тогда - ОставшиесяКоличествоПопытокПолучитьОбновление = 0; - ДатаОбновления = ИнформацияОбновление.Таблица[0].ДатаОбновления; - Если ТипЗнч(ДатаОбновления) <> Тип("Дата") Тогда - Возврат Ложь; - КонецЕсли; - ДатаОбновления = НачалоДня(ДатаОбновления); - - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | ВЫБОР - | КОГДА НАЧАЛОПЕРИОДА(МИНИМУМ(ЗагруженныеВерсииАдресныхСведений.ДатаВерсии), ДЕНЬ) ЕСТЬ NULL - | ТОГДА ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) - | ИНАЧЕ НАЧАЛОПЕРИОДА(МИНИМУМ(ЗагруженныеВерсииАдресныхСведений.ДатаВерсии), ДЕНЬ) - | КОНЕЦ КАК ДатаВерсии - |ИЗ - | РегистрСведений.ЗагруженныеВерсииАдресныхСведений КАК ЗагруженныеВерсииАдресныхСведений"; - - РезультатЗапроса = Запрос.Выполнить().Выбрать(); - Если РезультатЗапроса.Следующий() Тогда - ДатаСамойСтаройЗагрузки = РезультатЗапроса.ДатаВерсии; - Иначе - ДатаСамойСтаройЗагрузки = Дата(1, 1, 1); - КонецЕсли; - - Если ДатаОбновления > ДатаСамойСтаройЗагрузки Тогда - ДатаОбновленияСтрокой = Формат(ИнформацияОбновление.Таблица[0].ДатаОбновления, "ДЛФ=DD"); - ИнформацияОбОбновление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Доступно обновление от %1'"), ДатаОбновленияСтрокой); - Элементы.ИнформацияОбОбновление.Видимость = НЕ ИнформацияОбновление.Отказ; - КонецЕсли; - КонецЕсли; - -КонецФункции - -&НаСервереБезКонтекста -Функция ЗаданиеВыполнено(ИдентификаторЗадания) - - Если ОбщегоНазначенияКлиентСервер.РежимОтладки() Тогда - ЗаданиеВыполненоУспешно = Истина; - Иначе - ЗаданиеВыполненоУспешно = ДлительныеОперации.ЗаданиеВыполнено(ИдентификаторЗадания); - КонецЕсли; - - Возврат ЗаданиеВыполненоУспешно; - -КонецФункции - - &НаСервереБезКонтекста Функция ЕстьУстаревшиеАдресныеСведенияКЛАДРДляУдаления() - Запрос = Новый Запрос; - Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 + + Если Метаданные.РегистрыСведений.Найти("УдалитьАдресныйКлассификатор") <> Неопределено Тогда + + УстановитьПривилегированныйРежим(Истина); + + Запрос = Новый Запрос; + Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 | УдалитьАдресныйКлассификатор.Код |ИЗ | РегистрСведений.УдалитьАдресныйКлассификатор КАК УдалитьАдресныйКлассификатор"; - - РезультатЗапроса = Запрос.Выполнить().Выбрать(); - Если РезультатЗапроса .Следующий() Тогда - Возврат Истина; + + РезультатЗапроса = Запрос.Выполнить().Выбрать(); + Если РезультатЗапроса .Следующий() Тогда + Возврат Истина; + КонецЕсли; КонецЕсли; + Возврат Ложь; + КонецФункции // Удаляет устаревшие данные КЛАДР если они есть. @@ -978,21 +925,19 @@ &НаСервере Процедура ОчиститьУстаревшиеАдресныеСведенияКЛАДР() - Попытка - ПараметрыМетода = Новый Структура(); - РезультатЗапуска = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "АдресныйКлассификаторСлужебный.ОчиститьУстаревшиеАдресныеСведенияКЛАДР", - ПараметрыМетода, НСтр("ru = 'Очистка адресного классификатора в формате КЛАДР'")); - Исключение - Информация = ИнформацияОбОшибке(); - КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки(Информация); + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Очистка адресного классификатора в формате КЛАДР'"); + ФоновоеЗадание = ДлительныеОперации.ВыполнитьВФоне("АдресныйКлассификаторСлужебный.ОчиститьУстаревшиеАдресныеСведенияКЛАДР", + Новый Массив, ПараметрыВыполнения); + + Если ФоновоеЗадание.Статус = "Ошибка" Тогда ТекстОшибки = НСтр("ru = 'Не удается загрузить адресные сведения.'"); ТекстОшибки = ТекстОшибки + НСтр("ru = 'Техническая информация:'") + " " + Символы.ПС; - ТекстОшибки = ТекстОшибки + КраткоеПредставлениеОшибки(Информация); + ТекстОшибки = ТекстОшибки + ФоновоеЗадание.КраткоеПредставлениеОшибки; ЗаписьЖурналаРегистрации(НСтр("ru = 'Очистка адресного классификатора в формате КЛАДР'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), УровеньЖурналаРегистрации.Предупреждение, - Метаданные.РегистрыСведений.УдалитьАдресныйКлассификатор,, ТекстОшибки); - КонецПопытки; + Метаданные.РегистрыСведений.УдалитьАдресныйКлассификатор,, ТекстОшибки + Символы.ПС + ФоновоеЗадание.ПодробноеПредставлениеОшибки); + КонецЕсли; + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ОчисткаАдресногоКлассификатора/Form.form b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ОчисткаАдресногоКлассификатора/Form.form index 7ef09f783..a0f0122e5 100644 --- a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ОчисткаАдресногоКлассификатора/Form.form +++ b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ОчисткаАдресногоКлассификатора/Form.form @@ -137,6 +137,61 @@ СубъектыРФКоманднаяПанель 3 + + ГруппаОтметьЗагруженные + 138 + + СубъектыРФОтметьЗагруженные + 136 + true + true + + true + + + СубъектыРФОтметьЗагруженныеРасширеннаяПодсказка + 137 + Label + true + true + + Left + + + Form.Command.ОтметитьЗагруженные + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + true + true + + true + + + <key>ru</key> + <value>Группа отметь загруженные</value> + + + ru + Группа отметь загруженные + + + ГруппаОтметьЗагруженныеРасширеннаяПодсказка + 139 + Label + true + true + + Left + + + + СубъектыРФУстановитьФлажки 47 @@ -363,6 +418,44 @@ true + + ПоказыватьТолькоЗагруженныеРегионы + 140 + true + true + + true + + + ПоказыватьТолькоЗагруженныеРегионы + + Right + + OnChange + ПоказыватьТолькоЗагруженныеРегионыПриИзменении + + + ПоказыватьТолькоЗагруженныеРегионыРасширеннаяПодсказка + 142 + Label + true + true + + Left + + + + ПоказыватьТолькоЗагруженныеРегионыКонтекстноеМеню + 141 + true + + CheckBoxField + Enter + true + Left + true + + ГруппаКомандЗагрузки 8 @@ -416,37 +509,6 @@ - - НадписьОтступ - 116 - true - true - - true - - - НадписьОтступРасширеннаяПодсказка - 118 - Label - true - true - - Left - - - - НадписьОтступКонтекстноеМеню - 117 - true - - Label - true - true - true - - Left - - ГруппаКомандЗагрузкиПанель 128 @@ -509,7 +571,6 @@ ru Группа команд загрузки - true ГруппаКомандЗагрузкиРасширеннаяПодсказка 9 @@ -589,12 +650,8 @@ 68 true - 10 true - 4 true - false - false CommonPicture.ДлительнаяОперация48 @@ -623,7 +680,6 @@ которое зависит от количества выбранных регионов РФ. Label - true true Left @@ -676,88 +732,24 @@ Auto - - Декорация2 - 80 - true - true - - true - - - Декорация2РасширеннаяПодсказка - 82 - Label - true - true - - Left - - - - Декорация2КонтекстноеМеню - 81 - true - - Label - true - true - true - - Left - - - - ТекстСостоянияЗагрузки - 88 - true - true - - true - - - ТекстСостоянияОчистки - - None - - ТекстСостоянияЗагрузкиРасширеннаяПодсказка - 90 - Label - true - true - - Left - - - - ТекстСостоянияЗагрузкиКонтекстноеМеню - 89 - true - - LabelField - Enter - true - Left - true - - true - true - - ГруппаКомандОтмены 76 - - Декорация3 - 85 + + ТекстСостоянияЗагрузки + 88 true true true + + ТекстСостоянияОчистки + + None - Декорация3РасширеннаяПодсказка - 87 + ТекстСостоянияЗагрузкиРасширеннаяПодсказка + 90 Label true true @@ -766,16 +758,18 @@ - Декорация3КонтекстноеМеню - 86 + ТекстСостоянияЗагрузкиКонтекстноеМеню + 89 true - Label - true - true - true - - Left + LabelField + Enter + true + Left + true + + true + true @@ -836,11 +830,6 @@ true - - <key>ru</key> - <value>Группа команд отмены</value> - - true true ГруппаКомандОтменыРасширеннаяПодсказка @@ -854,6 +843,8 @@ UsualGroup + Vertical + Bottom Auto true true @@ -924,12 +915,8 @@ 96 true - 10 true - 2 true - false - false CommonPicture.Успешно32 @@ -966,6 +953,7 @@ LabelField true + Center Enter true Left @@ -1007,71 +995,9 @@ Auto - - Декорация4 - 103 - true - true - - true - - - Декорация4РасширеннаяПодсказка - 105 - Label - true - true - - Left - - - - Декорация4КонтекстноеМеню - 104 - true - - Label - true - true - true - - Left - - ГруппаКомандЗавершения 101 - - Декорация5 - 111 - true - true - - true - - - Декорация5РасширеннаяПодсказка - 113 - Label - true - true - - Left - - - - Декорация5КонтекстноеМеню - 112 - true - - Label - true - true - true - - Left - - ГруппаКомандЗавершенияПанель 132 @@ -1133,7 +1059,6 @@ ru Группа команд завершения - true true ГруппаКомандЗавершенияРасширеннаяПодсказка @@ -1147,6 +1072,7 @@ UsualGroup + Bottom Auto true true @@ -1229,11 +1155,6 @@ OnCreateAtServer ПриСозданииНаСервере - - OnClose - ПриЗакрытии - - 15 LockOwner Use UseList @@ -1391,9 +1312,32 @@ - ПараметрыДлительнойОперации - 10 - + ИдентификаторЗадания + + <key>ru</key> + <value>Идентификатор задания</value> + + 12 + + UUID + + + true + + + true + + + + ПоказыватьТолькоЗагруженныеРегионы + + <key>ru</key> + <value>Показывать только загруженные регионы</value> + + 13 + + Boolean + true @@ -1495,6 +1439,28 @@ DontUse Auto + + ОтметитьЗагруженные + + <key>ru</key> + <value>Отметить загруженные</value> + + 1 + + ru + Установить пометки для загруженных регионов + + + true + + + + ОтметитьЗагруженные + + + DontUse + Auto + diff --git a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ОчисткаАдресногоКлассификатора/Help/ru.html b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ОчисткаАдресногоКлассификатора/Help/ru.html index 754bfe28c..04239ee0d 100644 --- a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ОчисткаАдресногоКлассификатора/Help/ru.html +++ b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ОчисткаАдресногоКлассификатора/Help/ru.html @@ -1,8 +1,9 @@

                Предназначена для удаления адресных данных (например, ошибочно загруженных).

                -

                Открывается по команде Адресный классификатор - Очистить адресные сведения в разделе Администрирование - Поддержка и обслуживание.

                +

                Открывается по команде Очистить адресные сведения в разделе Администрирование - Поддержка и обслуживание - Адресный классификатор.

                Очистка адресного классификатора

                • Включите флажки рядом с наименованиями нужных регионов. +
                • Включите флажок Показывать только загруженные регионы, это облегчает выбор.
                • Для того чтобы выбрать для очистки все регионы, нажмите , для того чтобы отменить выбор, нажмите .
                • Для поиска регионов в списке используйте кнопку Найти. В нижней части списка идет подсчет количества выбранных регионов.
                • После установки необходимых параметров нажмите Очистить адресные сведения.
                \ No newline at end of file diff --git a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ОчисткаАдресногоКлассификатора/Module.bsl b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ОчисткаАдресногоКлассификатора/Module.bsl index 122b5fca2..52bed5e2c 100644 --- a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ОчисткаАдресногоКлассификатора/Module.bsl +++ b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ОчисткаАдресногоКлассификатора/Module.bsl @@ -4,10 +4,6 @@ &НаКлиенте Перем ПодтверждениеЗакрытияФормы; -// Параметры загрузки для передачи между клиентскими вызовами. -&НаКлиенте -Перем ПараметрыФоновойОчисткиКлассификатора; - #КонецОбласти #Область ОбработчикиСобытийФормы @@ -20,17 +16,8 @@ Возврат; КонецЕсли; - ПараметрыДлительнойОперации = Новый Структура("ИнтервалОжидания, Завершено, АдресРезультата, Идентификатор, Ошибка", 5); - - // Получаем уже загруженные регионы. - ТаблицаРегионов = АдресныйКлассификаторСлужебный.СведенияОЗагрузкеСубъектовРФ(); - ТаблицаРегионов.Колонки.Добавить("Очищать", Новый ОписаниеТипов("Булево")); - - Для Каждого Регион Из ТаблицаРегионов Цикл - Регион.Представление = Формат(Регион.КодСубъектаРФ, "ЧЦ=2; ЧН=; ЧВН=; ЧГ=") + ", " + Регион.Представление; - КонецЦикла; - - ЗначениеВРеквизитФормы(ТаблицаРегионов, "СубъектыРФ"); + ПоказыватьТолькоЗагруженныеРегионы = Истина; + ОпределитьЗагруженныеРегионы(); // Автосохранение настроек СохраняемыеВНастройкахДанныеМодифицированы = Истина; @@ -44,30 +31,24 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) Если Элементы.ШагиОчистки.ТекущаяСтраница <> Элементы.ОжиданиеОчистки Или ПодтверждениеЗакрытияФормы = Истина Тогда Возврат; - КонецЕсли; + КонецЕсли; + + Отказ = Истина; + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; Оповещение = Новый ОписаниеОповещения("ЗакрытиеФормыЗавершение", ЭтотОбъект); - Отказ = Истина; - Текст = НСтр("ru = 'Прервать очистку адресного классификатора?'"); ПоказатьВопрос(Оповещение, Текст, РежимДиалогаВопрос.ДаНет); КонецПроцедуры -&НаКлиенте -Процедура ПриЗакрытии() - - Если ПараметрыДлительнойОперации.Идентификатор <> Неопределено Тогда - ОтменитьФоновоеЗадание(ПараметрыДлительнойОперации.Идентификатор); - КонецЕсли; - -КонецПроцедуры - #КонецОбласти #Область ОбработчикиСобытийЭлементовФормы @@ -93,6 +74,12 @@ КонецПроцедуры +&НаКлиенте +Процедура ПоказыватьТолькоЗагруженныеРегионыПриИзменении(Элемент) + ОпределитьЗагруженныеРегионы(); +КонецПроцедуры + + #КонецОбласти #Область ОбработчикиКомандФормы @@ -121,9 +108,19 @@ &НаКлиенте Процедура ПрерватьОчистку(Команда) - ПодтверждениеЗакрытияФормы = Неопределено; - Закрыть(); + Оповещение = Новый ОписаниеОповещения("ПослеВопросаПрерватьОчистку", ЭтотОбъект); + Текст = НСтр("ru = 'Прервать очистку адресного классификатора?'"); + ПоказатьВопрос(Оповещение, Текст, РежимДиалогаВопрос.ДаНет); + +КонецПроцедуры + +&НаКлиенте +Процедура ОтметитьЗагруженные(Команда) + Для каждого Регион Из СубъектыРФ Цикл + Регион.Очищать = Регион.Загружено; + КонецЦикла; + ОбновитьИнтерфейсПоКоличествуОчищаемых(); КонецПроцедуры #КонецОбласти @@ -167,7 +164,8 @@ ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ОтборЭлемента.ПравоеЗначение = Ложь; - Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", WebЦвета.Черный); + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + КонецПроцедуры &НаКлиенте @@ -192,7 +190,6 @@ // Страница загрузки ТекстОписанияОчистки = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Очищаются данные выбранных регионов (%1)'"), ВыбраноРегионовДляОчистки); - УстановитьРазрешениеОчистки(ВыбраноРегионовДляОчистки); КонецПроцедуры @@ -205,75 +202,83 @@ Элементы.ШагиОчистки.ТекущаяСтраница = Элементы.ОжиданиеОчистки; ТекстСостоянияОчистки = НСтр("ru = 'Очистка адресного классификатора ...'"); - Элементы.ПрерватьОчистку.Доступность = Ложь; + Элементы.ПрерватьОчистку.Доступность = Истина; - ПараметрыФоновойОчисткиКлассификатора = Новый Структура; - ПараметрыФоновойОчисткиКлассификатора.Вставить("КодыРегионов", КодыРегионовДляОчистки() ); + ОповещениеОПрогрессеВыполнения = Новый ОписаниеОповещения("ПрогрессВыполнения", ЭтотОбъект); + + Задание = ЗапуститьФоновуюОчисткуНаСервере(КодыРегионовДляОчистки(), УникальныйИдентификатор); + ИдентификаторЗадания = Задание.ИдентификаторЗадания; + + НастройкиОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + НастройкиОжидания.ВыводитьОкноОжидания = Ложь; + НастройкиОжидания.ПолучатьРезультат = Истина; + НастройкиОжидания.ОповещениеОПрогрессеВыполнения = ОповещениеОПрогрессеВыполнения; + + Обработчик = Новый ОписаниеОповещения("ПослеФоновойОчистки", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(Задание, Обработчик, НастройкиОжидания); - ПодключитьОбработчикОжидания("ОчиститьКлассификаторФИАС", 0.1, Истина); КонецПроцедуры &НаКлиенте -Процедура ОчиститьКлассификаторФИАС() +Процедура ПослеФоновойОчистки(Задание, ДополнительныеПараметры) Экспорт + Если Задание.Статус = "Выполнено" Тогда + Элементы.ШагиОчистки.ТекущаяСтраница = Элементы.УспешноеЗавершение; + ТекстОписанияОчистки = НСтр("ru = 'Адресный классификатор успешно очищен.'"); + + Оповестить("ОчищенАдресныйКлассификатор", , ЭтотОбъект); + + Элементы.Закрыть.КнопкаПоУмолчанию = Истина; + ТекущийЭлемент = Элементы.Закрыть; + ПодтверждениеЗакрытияФормы = Истина; + ИначеЕсли Задание.Статус = "Ошибка" Тогда + Элементы.ШагиОчистки.ТекущаяСтраница = Элементы.ВыборРегионовОчистки; + ТекстОшибки = НСтр("ru = 'Не удается очистить адресный классификатор.'"); + ТекстОшибки = ТекстОшибки + Символы.ПС + + НСтр("ru = 'Техническая информация:'") + Задание.ПодробноеПредставлениеОшибки; + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстОшибки); + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ПрогрессВыполнения(Результат, ДополнительныеПараметры) Экспорт - КодыРегионов = ПараметрыФоновойОчисткиКлассификатора.КодыРегионов; - ПараметрыФоновойОчисткиКлассификатора= Неопределено; - - ЗапуститьФоновуюОчисткуНаСервере(КодыРегионов); - ПодключитьОбработчикОжидания("Подключаемый_ОжиданиеДлительнойОперации", 0.1, Истина); + Если Результат.Статус = "Выполняется" Тогда + Прогресс = ПрочитатьПрогресс(Результат.ИдентификаторЗадания); + Если Прогресс <> Неопределено Тогда + ТекстСостоянияОчистки = Прогресс.Текст; + КонецЕсли; + КонецЕсли; КонецПроцедуры -&НаСервере -Процедура ЗапуститьФоновуюОчисткуНаСервере(Знач КодыРегионов) +&НаСервереБезКонтекста +Функция ПрочитатьПрогресс(ИдентификаторЗадания) + Возврат ДлительныеОперации.ПрочитатьПрогресс(ИдентификаторЗадания); +КонецФункции + +&НаСервереБезКонтекста +Функция ЗапуститьФоновуюОчисткуНаСервере(Знач КодыРегионов, Знач УникальныйИдентификатор) + ПараметрыМетода = Новый Массив; ПараметрыМетода.Добавить(КодыРегионов); - ПараметрыДлительнойОперации.Идентификатор = Неопределено; - ПараметрыДлительнойОперации.Завершено = Истина; - ПараметрыДлительнойОперации.АдресРезультата = Неопределено; - ПараметрыДлительнойОперации.Ошибка = Неопределено; + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Очистка адресного классификатора'"); - Попытка - РезультатЗапуска = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - УникальныйИдентификатор, - "АдресныйКлассификаторСлужебный.ФоновоеЗаданиеОчисткиКлассификатораАдресов", - ПараметрыМетода, - НСтр("ru = 'Очистка адресного классификатора'")); - Исключение - ПараметрыДлительнойОперации.Ошибка = ПодробноеПредставлениеОшибки( ИнформацияОбОшибке() ); - Возврат; + ФоновоеЗадание = ДлительныеОперации.ВыполнитьВФоне("АдресныйКлассификаторСлужебный.ФоновоеЗаданиеОчисткиКлассификатораАдресов", + ПараметрыМетода, ПараметрыВыполнения); - КонецПопытки; - - ПараметрыДлительнойОперации.Идентификатор = РезультатЗапуска.ИдентификаторЗадания; - ПараметрыДлительнойОперации.Завершено = РезультатЗапуска.ЗаданиеВыполнено; - ПараметрыДлительнойОперации.АдресРезультата = РезультатЗапуска.АдресХранилища; - - // Запущенное - Элементы.ПрерватьОчистку.Доступность = Истина; + Возврат ФоновоеЗадание; +КонецФункции + +&НаКлиенте +Процедура ПослеВопросаПрерватьОчистку(Результат, ДополнительныеПараметры) Экспорт + Если Результат = КодВозвратаДиалога.Да Тогда + ОтменитьФоновоеЗадание(ИдентификаторЗадания); + Элементы.ШагиОчистки.ТекущаяСтраница = Элементы.ВыборРегионовОчистки; + ОпределитьЗагруженныеРегионы(); + КонецЕсли; КонецПроцедуры -&НаСервере -Функция СостояниеФоновогоЗадания() - Результат = Новый Структура("Прогресс, Завершено, Ошибка"); - - Результат.Ошибка = ""; - Если ПараметрыДлительнойОперации.Идентификатор = Неопределено Тогда - Результат.Завершено = Истина; - Результат.Прогресс = Неопределено; - Результат.Ошибка = ПараметрыДлительнойОперации.Ошибка; - Иначе - Попытка - Результат.Завершено = ДлительныеОперации.ЗаданиеВыполнено(ПараметрыДлительнойОперации.Идентификатор); - Результат.Прогресс = ДлительныеОперации.ПрочитатьПрогресс(ПараметрыДлительнойОперации.Идентификатор); - Исключение - Результат.Ошибка = ПодробноеПредставлениеОшибки( ИнформацияОбОшибке() ); - КонецПопытки - КонецЕсли; - - Возврат Результат; -КонецФункции &НаСервереБезКонтекста Процедура ОтменитьФоновоеЗадание(Знач Идентификатор) @@ -288,36 +293,31 @@ КонецПроцедуры -&НаКлиенте -Процедура Подключаемый_ОжиданиеДлительнойОперации() + +&НаСервере +Процедура ОпределитьЗагруженныеРегионы() - // Обновим статус - Состояние = СостояниеФоновогоЗадания(); - Если Не ПустаяСтрока(Состояние.Ошибка) Тогда - // Завершено с ошибкой, сообщим и вернемся на первую страницу. - Элементы.ШагиОчистки.ТекущаяСтраница = Элементы.ВыборРегионовОчистки; - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(Состояние.Ошибка); - Возврат; - - ИначеЕсли Состояние.Завершено Тогда - Элементы.ШагиОчистки.ТекущаяСтраница = Элементы.УспешноеЗавершение; - ТекстОписанияОчистки = НСтр("ru = 'Адресный классификатор успешно очищен.'"); - - Оповестить("ОчищенАдресныйКлассификатор", , ЭтотОбъект); - - Элементы.Закрыть.КнопкаПоУмолчанию = Истина; - ТекущийЭлемент = Элементы.Закрыть; - ПодтверждениеЗакрытияФормы = Истина; - Возврат; - + // Получаем уже загруженные регионы. + ТаблицаРегионов = АдресныйКлассификаторСлужебный.СведенияОЗагрузкеСубъектовРФ(); + ТаблицаРегионов.Колонки.Добавить("Очищать", Новый ОписаниеТипов("Булево")); + + Для Каждого Регион Из ТаблицаРегионов Цикл + Регион.Представление = Формат(Регион.КодСубъектаРФ, "ЧЦ=2; ЧН=; ЧВН=; ЧГ=") + ", " + Регион.Представление; + КонецЦикла; + + Если ПоказыватьТолькоЗагруженныеРегионы Тогда + Индекс = ТаблицаРегионов.Количество() - 1; + Пока Индекс >= 0 Цикл + СтрокаТаблицы = ТаблицаРегионов.Получить(Индекс); + Если НЕ СтрокаТаблицы.Загружено Тогда + ТаблицаРегионов.Удалить(СтрокаТаблицы); + КонецЕсли; + Индекс = Индекс - 1; + КонецЦикла; КонецЕсли; - // Процесс продолжается - Если ТипЗнч(Состояние.Прогресс) = Тип("Структура") Тогда - ТекстСостоянияОчистки = Состояние.Прогресс.Текст; - КонецЕсли; - ПодключитьОбработчикОжидания("Подключаемый_ОжиданиеДлительнойОперации", ПараметрыДлительнойОперации.ИнтервалОжидания, Истина); - + ЗначениеВРеквизитФормы(ТаблицаРегионов, "СубъектыРФ"); + КонецПроцедуры &НаКлиенте diff --git a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ФормаСписка/Form.form index e78e6514f..8c955f360 100644 --- a/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/АдресныеОбъекты/Forms/ФормаСписка/Form.form @@ -1,18 +1,22 @@ - Группа1 + ГруппаОтбор 58 + + <key>ru</key> + <value>Дополнение отбор</value> + true true true - Дополнение1 + ДополнениеОтбор 60 - Дополнение1РасширеннаяПодсказка + ДополнениеОтборРасширеннаяПодсказка 62 Label true @@ -22,7 +26,7 @@
                - Дополнение1КонтекстноеМеню + ДополнениеОтборКонтекстноеМеню 61 true @@ -37,8 +41,16 @@ true + + <key>ru</key> + <value>Группа отбор</value> + + + ru + Группа отбор + - Группа1РасширеннаяПодсказка + ГруппаОтборРасширеннаяПодсказка 59 Label true @@ -69,7 +81,6 @@ ru Группа пользовательских настроек - false СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка 2 diff --git a/SSL/src/InformationRegisters/АдресныеОбъекты/ManagerModule.bsl b/SSL/src/InformationRegisters/АдресныеОбъекты/ManagerModule.bsl index fc8d60fdc..65f0e9304 100644 --- a/SSL/src/InformationRegisters/АдресныеОбъекты/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/АдресныеОбъекты/ManagerModule.bsl @@ -109,7 +109,6 @@ КонецФункции - #КонецОбласти #КонецЕсли \ No newline at end of file diff --git a/SSL/src/InformationRegisters/АдресныеОбъекты/Templates/АдресныеСокращения/Template.txt b/SSL/src/InformationRegisters/АдресныеОбъекты/Templates/АдресныеСокращения/Template.txt index 9f5d6f385..85d6cfe41 100644 --- a/SSL/src/InformationRegisters/АдресныеОбъекты/Templates/АдресныеСокращения/Template.txt +++ b/SSL/src/InformationRegisters/АдресныеОбъекты/Templates/АдресныеСокращения/Template.txt @@ -88,12 +88,12 @@ 6Выселки(ок)высел 6Городг 6Городокгородок - 6Городской поселокгп + 6городской поселокгп 6Деревняд 6Дачный поселокдп 6Железнодорожная будкаж/д_будка 6Железнодорожная казармаж/д_казарм - 6Ж/д останов. (обгонный) пунктж/д_оп + 6ж/д останов. (обгонный) пунктж/д_оп 6Железнодорожная платформаж/д_платф 6Железнодорожный постж/д_пост 6Железнодорожный разъездж/д_рзд @@ -132,7 +132,7 @@ 7Фермаферма 7Хуторх 7Шоссеш - 7Эстакадаэстакада + 7эстакадаэстакада 7Почтовое отделениеп/о 7Планировочный районп/р 7Поселок и(при) станция(и)п/ст @@ -200,7 +200,7 @@ 7Дорогадор 7Железнодорожная будкаж/д_будка 7Железнодорожная казармаж/д_казарм - 7Ж/д останов. (обгонный) пунктж/д_оп + 7ж/д останов. (обгонный) пунктж/д_оп 7Железнодорожная платформаж/д_платф 8ДомДОМ 65Некоммерческое партнерствон/п @@ -254,7 +254,7 @@ 91Разъездрзд 91Проулокпроулок 91Железнодорожная платформаж/д_платф - 91Ж/д останов. (обгонный) пунктж/д_оп + 91ж/д останов. (обгонный) пунктж/д_оп 91Железнодорожная казармаж/д_казарм 91Железнодорожная будкаж/д_будка 91Дорогадор diff --git a/SSL/src/InformationRegisters/АдресныеОбъекты/АдресныеОбъекты.mdo b/SSL/src/InformationRegisters/АдресныеОбъекты/АдресныеОбъекты.mdo index 7721e00f3..6a84d7ca5 100644 --- a/SSL/src/InformationRegisters/АдресныеОбъекты/АдресныеОбъекты.mdo +++ b/SSL/src/InformationRegisters/АдресныеОбъекты/АдресныеОбъекты.mdo @@ -473,7 +473,7 @@ TextDocument - + АдресныеСокращения ru @@ -491,10 +491,10 @@ Auto - АвторизацияНаСайтеПоддержки + ПодключитьИнтернетПоддержку ru - Авторизация на сайте поддержки + Подключить интернет-поддержку NavigationPanelOrdinary Auto diff --git a/SSL/src/InformationRegisters/БезопасноеХранилищеДанных/БезопасноеХранилищеДанных.mdo b/SSL/src/InformationRegisters/БезопасноеХранилищеДанных/БезопасноеХранилищеДанных.mdo index aef0d597d..b708543f4 100644 --- a/SSL/src/InformationRegisters/БезопасноеХранилищеДанных/БезопасноеХранилищеДанных.mdo +++ b/SSL/src/InformationRegisters/БезопасноеХранилищеДанных/БезопасноеХранилищеДанных.mdo @@ -71,8 +71,12 @@ Владелец + String ExchangePlanRef CatalogRef + + 128 + diff --git a/SSL/src/InformationRegisters/БезопасноеХранилищеДанныхОбластейДанных/БезопасноеХранилищеДанныхОбластейДанных.mdo b/SSL/src/InformationRegisters/БезопасноеХранилищеДанныхОбластейДанных/БезопасноеХранилищеДанныхОбластейДанных.mdo index 6eda61aad..f7ded347a 100644 --- a/SSL/src/InformationRegisters/БезопасноеХранилищеДанныхОбластейДанных/БезопасноеХранилищеДанныхОбластейДанных.mdo +++ b/SSL/src/InformationRegisters/БезопасноеХранилищеДанныхОбластейДанных/БезопасноеХранилищеДанныхОбластейДанных.mdo @@ -71,8 +71,12 @@ Владелец + String ExchangePlanRef CatalogRef + + 128 + diff --git a/SSL/src/InformationRegisters/БуферОперацийСтатистики/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/InformationRegisters/БуферОперацийСтатистики/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss index da9c2752c..61e6fb4bb 100644 --- a/SSL/src/InformationRegisters/БуферОперацийСтатистики/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss +++ b/SSL/src/InformationRegisters/БуферОперацийСтатистики/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss @@ -9,26 +9,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - Период - - - ДатаЗаписи - - - Значение - - - - - - ГоризонтальноеПоложение - Left - - - Normal b75fecce-942b-4aed-abc9-e6a02e460fb3 diff --git a/SSL/src/InformationRegisters/БуферОперацийСтатистики/ManagerModule.bsl b/SSL/src/InformationRegisters/БуферОперацийСтатистики/ManagerModule.bsl index e8ccda578..c92101dcd 100644 --- a/SSL/src/InformationRegisters/БуферОперацийСтатистики/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/БуферОперацийСтатистики/ManagerModule.bsl @@ -6,9 +6,13 @@ УстановитьПривилегированныйРежим(Истина); ПериодИдентификатораУдаления = ЦентрМониторингаВызовСервераПовтИсп.ПолучитьПараметрыЦентраМониторинга("ПериодАгрегацииМалый"); - - ОбластьДанных = Формат(ОбщегоНазначения.ЗначениеРазделителяСеанса(), "ЧН=0; ЧГ=0"); - + + Если ОбщегоНазначения.ИспользованиеРазделителяСеанса() Тогда + ОбластьДанных = Формат(ОбщегоНазначения.ЗначениеРазделителяСеанса(), "ЧН=0; ЧГ=0"); + Иначе + ОбластьДанных = Формат(0, "ЧН=0; ЧГ=0"); + КонецЕсли; + ТекДата = ТекущаяУниверсальнаяДатаВМиллисекундах(); Если Разделитель <> "." Тогда diff --git a/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ВыборРеквизитовОбъекта/Form.form b/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ВыборРеквизитовОбъекта/Form.form index acc7dc5af..6e8170075 100644 --- a/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ВыборРеквизитовОбъекта/Form.form +++ b/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ВыборРеквизитовОбъекта/Form.form @@ -359,7 +359,6 @@ Retry SaveValues Yes - 15 LockOwner true true diff --git a/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ВыборХранимыхВерсий/Form.form b/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ВыборХранимыхВерсий/Form.form index c46d58928..6b6d348a3 100644 --- a/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ВыборХранимыхВерсий/Form.form +++ b/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ВыборХранимыхВерсий/Form.form @@ -199,6 +199,33 @@ UserCmds Auto
                + + ФормаОбновить + 117 + true + true + + true + + + ФормаОбновитьРасширеннаяПодсказка + 118 + Label + true + true + + Left + + + Form.Command.Обновить + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + true true @@ -731,9 +758,7 @@ 38 true - 5 true - 2 true @@ -769,7 +794,6 @@ true Label - true 2 true @@ -848,7 +872,6 @@ true Label - true true @@ -1152,7 +1175,7 @@ СформироватьОтчетПоИзменениям <key>ru</key> - <value>Сравнить версии</value> + <value>Сравнить</value> 1 @@ -1214,6 +1237,32 @@ DontUse Auto + + Обновить + + <key>ru</key> + <value>Обновить</value> + + 4 + + ru + Обновить + + + true + + F5 + + StdPicture.Refresh + + + + Обновить + + + DontUse + Auto + Ссылка diff --git a/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ВыборХранимыхВерсий/Module.bsl b/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ВыборХранимыхВерсий/Module.bsl index 7f22d9564..7175cf780 100644 --- a/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ВыборХранимыхВерсий/Module.bsl +++ b/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ВыборХранимыхВерсий/Module.bsl @@ -46,7 +46,9 @@ &НаКлиенте Процедура ЖурналРегистрацииНажатие(Элемент) - ЖурналРегистрацииКлиент.ОткрытьЖурналРегистрации(); + ОтборЖурналаРегистрации = Новый Структура; + ОтборЖурналаРегистрации.Вставить("Данные", Ссылка); + ЖурналРегистрацииКлиент.ОткрытьЖурналРегистрации(ОтборЖурналаРегистрации); КонецПроцедуры #КонецОбласти @@ -112,6 +114,11 @@ КонецПроцедуры +&НаКлиенте +Процедура Обновить(Команда) + ОбновитьСписокВерсий(); +КонецПроцедуры + #КонецОбласти #Область СлужебныеПроцедурыИФункции @@ -196,7 +203,7 @@ КонецЕсли; ПредставлениеНомераВерсии = ТекущиеДанные.ПредставлениеНомераВерсии; - Результат = ПерейтиНаВерсиюСервер(Ссылка, ТекущиеДанные.НомерВерсии, ПредставлениеНомераВерсии, ОтменятьПроведение); + Результат = ПерейтиНаВерсиюСервер(Ссылка, ТекущиеДанные.НомерВерсии, ОтменятьПроведение); Если Результат = "ОшибкаВосстановления" Тогда ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщенияОбОшибке); @@ -240,73 +247,13 @@ КонецПроцедуры &НаСервере -Функция ПерейтиНаВерсиюСервер(Ссылка, НомерВерсии, ПользовательскоеПредставлениеНомера, ОтменаПроведения = Ложь) - - Информация = ВерсионированиеОбъектов.СведенияОВерсииОбъекта(Ссылка, НомерВерсии); - ДополнительныеРеквизиты = Неопределено; - Если ТипЗнч(Информация.ВерсияОбъекта) = Тип("Структура") Тогда - Если Информация.ВерсияОбъекта.Свойство("ДополнительныеРеквизиты", ДополнительныеРеквизиты) Тогда - НайденныеРеквизиты = ДополнительныеРеквизиты.НайтиСтроки(Новый Структура("Идентификатор", Неопределено)); - Для Каждого Реквизит Из НайденныеРеквизиты Цикл - ДополнительныеРеквизиты.Удалить(Реквизит); - КонецЦикла; - КонецЕсли; - КонецЕсли; - +Функция ПерейтиНаВерсиюСервер(Ссылка, НомерВерсии, ОтменаПроведения = Ложь) ТекстСообщенияОбОшибке = ""; - Объект = ВерсионированиеОбъектов.ВосстановитьОбъектПоXML(Информация.ВерсияОбъекта, ТекстСообщенияОбОшибке); - - Если Не ПустаяСтрока(ТекстСообщенияОбОшибке) Тогда - Возврат "ОшибкаВосстановления"; - КонецЕсли; - - Объект.ДополнительныеСвойства.Вставить("ВерсионированиеОбъектовКомментарийКВерсии", - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Выполнен переход к версии №%1 от %2'"), - ПользовательскоеПредставлениеНомера, - Формат(Информация.ДатаВерсии, "ДЛФ=DT"))); - - НачатьТранзакцию(); - - РежимЗаписи = Неопределено; - ИдентификаторОшибки = "ОшибкаВосстановления"; - - Если ОбщегоНазначения.ЭтоДокумент(Объект.Метаданные()) Тогда - Если Объект.Проведен И Не ОтменаПроведения Тогда - РежимЗаписи = РежимЗаписиДокумента.Проведение; - Иначе - РежимЗаписи = РежимЗаписиДокумента.ОтменаПроведения; - КонецЕсли; - ИдентификаторОшибки = "ОшибкаПроведения"; - КонецЕсли; - - ВерсионированиеОбъектов.ЗаписатьДанныеТекущейВерсии(Ссылка); - ВерсионированиеОбъектов.ВыполняетсяЗаписьОбъекта(Истина); - Попытка - Если ЗначениеЗаполнено(РежимЗаписи) Тогда - Объект.Записать(РежимЗаписи); - Иначе - Объект.Записать(); - КонецЕсли; - Если ЗначениеЗаполнено(ДополнительныеРеквизиты) Тогда - Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.Свойства") Тогда - МодульУправлениеСвойствамиСлужебный = ОбщегоНазначения.ОбщийМодуль("УправлениеСвойствамиСлужебный"); - МодульУправлениеСвойствамиСлужебный.ПриВосстановленииВерсииОбъекта(Объект, ДополнительныеРеквизиты); - КонецЕсли; - ВерсионированиеОбъектовПереопределяемый.ПриВосстановленииВерсииОбъекта(Объект, ДополнительныеРеквизиты); - КонецЕсли; - ВерсионированиеОбъектов.ВыполняетсяЗаписьОбъекта(Ложь); - ВерсионированиеОбъектов.ЗаписатьВерсиюОбъекта(Объект); - ЗафиксироватьТранзакцию(); - Исключение - ВерсионированиеОбъектов.ВыполняетсяЗаписьОбъекта(Ложь); - ОтменитьТранзакцию(); - ТекстСообщенияОбОшибке = КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); - Возврат ИдентификаторОшибки; - КонецПопытки; + Результат = ВерсионированиеОбъектов.ПерейтиНаВерсиюСервер(Ссылка, НомерВерсии, ТекстСообщенияОбОшибке, ОтменаПроведения); ОбновитьСписокВерсий(); - Возврат "ВосстановлениеВыполнено"; + Возврат Результат; КонецФункции &НаКлиенте @@ -346,7 +293,12 @@ Если СравниваемыеВерсии.Количество() = 1 Тогда Если СравниваемыеВерсии.НайтиПоЗначению(НомерТекущейВерсии) = Неопределено Тогда - СравниваемыеВерсии.Добавить(НомерТекущейВерсии); + ТекущаяВерсия = ТекущаяВерсия(ДеревоВерсий); + Если ТекущаяВерсия = Неопределено Тогда + СравниваемыеВерсии.Добавить(НомерТекущейВерсии); + Иначе + СравниваемыеВерсии.Добавить(ТекущаяВерсия.НомерВерсии, ТекущаяВерсия.ПредставлениеНомераВерсии); + КонецЕсли; КонецЕсли; КонецЕсли; @@ -354,6 +306,21 @@ КонецФункции +&НаКлиенте +Функция ТекущаяВерсия(СписокВерсий) + Для Каждого Версия Из СписокВерсий.ПолучитьЭлементы() Цикл + Если Версия.ТекущаяВерсия Тогда + Результат = Версия; + Иначе + Результат = ТекущаяВерсия(Версия); + КонецЕсли; + Если Результат <> Неопределено Тогда + Возврат Результат; + КонецЕсли; + КонецЦикла; + Возврат Неопределено; +КонецФункции + &НаКлиенте Процедура УстановитьДоступность() @@ -389,8 +356,8 @@ ИерархияВерсий = РеквизитФормыВЗначение("ДеревоВерсий"); ИерархияВерсий.Строки.Очистить(); - ЗаполнитьИерархиюВерсий(ИерархияВерсий, ТаблицаВерсий); - ПронумероватьВерсии(ИерархияВерсий.Строки); + ВерсионированиеОбъектов.ЗаполнитьИерархиюВерсий(ИерархияВерсий, ТаблицаВерсий); + ВерсионированиеОбъектов.ПронумероватьВерсии(ИерархияВерсий.Строки); ЗначениеВРеквизитФормы(ИерархияВерсий, "ДеревоВерсий"); @@ -399,52 +366,6 @@ КонецПроцедуры -&НаСервере -Процедура ЗаполнитьИерархиюВерсий(ИерархияВерсий, СписокВерсий) - - ПропущенныеВерсии = Новый Массив; - Для Каждого ОписаниеВерсии Из СписокВерсий Цикл - Если ОписаниеВерсии.ВерсияВладелец = 0 Тогда - Элемент = ИерархияВерсий.Строки.Добавить(); - Иначе - НайденнаяВерсия = ИерархияВерсий.Строки.Найти(ОписаниеВерсии.ВерсияВладелец, "НомерВерсии", Истина); - Если НайденнаяВерсия <> Неопределено Тогда - Элемент = НайденнаяВерсия.Строки.Добавить(); - НайденнаяВерсия.Отклонена = Истина; - Иначе - ПропущенныеВерсии.Добавить(ОписаниеВерсии); - Продолжить; - КонецЕсли; - КонецЕсли; - ЗаполнитьЗначенияСвойств(Элемент, ОписаниеВерсии); - КонецЦикла; - - Если ПропущенныеВерсии.Количество() > 0 Тогда - Если СписокВерсий.Количество() = ПропущенныеВерсии.Количество() Тогда - ВызватьИсключение НСтр("ru = 'Не удалось сформировать полный список версий. Часть вложенных версий пропущена.'"); - КонецЕсли; - ЗаполнитьИерархиюВерсий(ИерархияВерсий, ПропущенныеВерсии); - КонецЕсли; - -КонецПроцедуры - -&НаСервере -Процедура ПронумероватьВерсии(КоллекцияВерсий) - - ТекущийНомерВерсии = КоллекцияВерсий.Количество(); - Для Каждого Версия Из КоллекцияВерсий Цикл - ПрефиксНомера = ""; - Если Версия.Родитель <> Неопределено И Не ПустаяСтрока(Версия.Родитель.ПредставлениеНомераВерсии) Тогда - ПрефиксНомера = Версия.Родитель.ПредставлениеНомераВерсии + "."; - КонецЕсли; - - Версия.ПредставлениеНомераВерсии = ПрефиксНомера + Формат(ТекущийНомерВерсии, "ЧГ=0"); - ПронумероватьВерсии(Версия.Строки); - ТекущийНомерВерсии = ТекущийНомерВерсии - 1; - КонецЦикла; - -КонецПроцедуры - &НаКлиенте Процедура РеквизитыОчистка(Элемент, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; @@ -602,7 +523,7 @@ УсловноеОформление.Элементы.Очистить(); - // Отсутствующие данные у версий + // Отсутствующие данные у версий. Элемент = УсловноеОформление.Элементы.Добавить(); ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); diff --git a/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ОтчетПоВерсиямОбъекта/Form.form b/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ОтчетПоВерсиямОбъекта/Form.form index b552be055..4e2873a0e 100644 --- a/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ОтчетПоВерсиямОбъекта/Form.form +++ b/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ОтчетПоВерсиямОбъекта/Form.form @@ -61,6 +61,10 @@ Left true + + OnOpen + ПриОткрытии + OnCreateAtServer ПриСозданииНаСервере diff --git a/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ОтчетПоВерсиямОбъекта/Module.bsl b/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ОтчетПоВерсиямОбъекта/Module.bsl index f6c869b3e..8cd1f67d9 100644 --- a/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ОтчетПоВерсиямОбъекта/Module.bsl +++ b/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ОтчетПоВерсиямОбъекта/Module.bsl @@ -35,6 +35,10 @@ СтрокаНомераВерсий = ""; Для Каждого Версия Из СравниваемыеВерсии Цикл СтрокаНомераВерсий = СтрокаНомераВерсий + Строка(Версия.Представление) + ", "; + ВерсияОбъекта = ВерсионированиеОбъектов.СведенияОВерсииОбъекта(СсылкаНаОбъект, Версия.Значение).ВерсияОбъекта; + Если ТипЗнч(ВерсияОбъекта) = Тип("Структура") И ВерсияОбъекта.Свойство("ТабличныеДокументы") Тогда + ТабличныеДокументы.Добавить(ВерсияОбъекта.ТабличныеДокументы); + КонецЕсли; КонецЦикла; СтрокаНомераВерсий = Лев(СтрокаНомераВерсий, СтрДлина(СтрокаНомераВерсий) - 2); @@ -46,10 +50,14 @@ СсылкаНаОбъект, Строка(СравниваемыеВерсии[0].Представление)); КонецЕсли; - СформироватьОтчет(ТаблицаОтчета, СравниваемыеВерсии); - КонецПроцедуры +&НаКлиенте +Процедура ПриОткрытии(Отказ) + Сформировать(); +КонецПроцедуры + + #КонецОбласти #Область ОбработчикиСобытийЭлементовФормы @@ -75,1613 +83,51 @@ #Область СлужебныеПроцедурыИФункции -// Основная функция модуля, отвечающая за формирование отчета. -// В зависимости от числа версий в массиве вызывает либо функциональность -// формирования отчета по одной версии либо функциональность формирования -// отчета по изменениям между несколькими версиями. -// -&НаСервере -Процедура СформироватьОтчет(ТЧОтчета, СравниваемыеВерсии) - +&НаКлиенте +Процедура Сформировать() Если СравниваемыеВерсии.Количество() = 1 Тогда - ТЧОтчета = ВерсионированиеОбъектов.ОтчетПоВерсииОбъекта(СсылкаНаОбъект, СравниваемыеВерсии[0].Значение, СравниваемыеВерсии[0].Представление); + СформироватьОтчетПоВерсии(); Иначе - СформироватьОтчетПоИзменениям(ТЧОтчета, СравниваемыеВерсии); + ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Элементы.ТаблицаОтчета, "ФормированиеОтчета"); + ПодключитьОбработчикОжидания("НачатьФормированиеОтчетаПоВерсиям", 0.1, Истина); КонецЕсли; - КонецПроцедуры -//////////////////////////////////////////////////////////////////////////////// -// Функции для получения отчета по изменениям. - -// Основная управляющая функция для формирование отчета по изменениям. -// Состоит из трех этапов: -// 1. Получение XML представления хранимых версий объекта. Формирование -// специальных структур данных для сравнения объектов. -// 2. Получение. -// -&НаСервере -Процедура СформироватьОтчетПоИзменениям(ТЧОтчета, Знач СписокВерсий) +&НаКлиенте +Процедура НачатьФормированиеОтчетаПоВерсиям() + ДлительнаяОперация = СформироватьОтчетПоВерсиям(); - // Хранит переходную разобранную версию объекта, - // чтобы сократить число разборов XML. - Перем ВерсияОбъекта; - - // "Сквозной" идентификатор измененных строк в версиях. - Перем счетчикУникальныйИд; - - ТЧОтчета.Очистить(); - - // Формируем массив номеров версий (так как некоторые могут отсутствовать - // и иметь непоследовательную нумерацию), массив отсортирован по возрастанию. - МассивНомеровВерсий = СписокВерсий.ВыгрузитьЗначения(); - - // Количество версий объекта хранящихся в базе (k). - // Для формирования отчета необходимо сделать (k-1) сравнений. - // Фактически это означает, что у таблиц изменений будет (k) колонок. - КоличествоВерсийОбъекта = МассивНомеровВерсий.Количество(); - - // Хранит в себе все изменения реквизитов имеет две размерности: - // первая (строки) содержит значения наименований реквизитов объекта - // вторая (столбцы) содержит идентификацию версии объекта и характеристику - // изменения идентификация версии это строка которая однозначно идентифицирует - // версию объекта среди остальных и сообщает дополнительную информацию по изменению. - ТаблицаИзмененийРеквизитов = Новый ТаблицаЗначений; - ПодготовитьКолонкиТаблицИзмененийРеквизитов(ТаблицаИзмененийРеквизитов, МассивНомеровВерсий); - - // Хранит в себе изменения табличных частей в виде соответствий имен - // таблиц значений объекта истории изменений этой таблицы значений - // каждое соответствие - табличная часть - // первая (строки) содержит значения наименований полей табличной части - // вторая (столбцы) содержит идентификацию версии объекта - // идентификация версии это строка которая однозначно идентифицирует версию - // объекта среди остальных и сообщает дополнительную информацию по изменению. - ТаблицаИзмененийТабличныхЧастей = Новый Соответствие; - - ТабличныеДокументы = Новый СписокЗначений; - ТаблицаИзмененийТабличныхДокументов = Новый ТаблицаЗначений; - ТаблицаИзмененийТабличныхДокументов.Колонки.Добавить("Наименование"); - ТаблицаИзмененийТабличныхДокументов.Колонки.Добавить("Представление"); - // - - // Формируем начальные версии объекта, значения которых показываются всегда - // (при наличии последующих изменений). - ВерсияОбъекта_Пред = СчитатьНачальныеЗначенияРеквизитовИТабличныхЧастей( - ТаблицаИзмененийРеквизитов, - ТаблицаИзмененийТабличныхЧастей, - КоличествоВерсийОбъекта, - МассивНомеровВерсий); - - ТабличныеДокументы.Добавить(ВерсияОбъекта_Пред.ТабличныеДокументы); - ТаблицаИзмененийТабличныхДокументов.Колонки.Добавить("Версия" + Формат(МассивНомеровВерсий[0], "ЧГ=0")); - - счетчикУникальныйИд = ПолучитьУникальныеУникальныйИд(ТаблицаИзмененийТабличныхЧастей, "Версия" + Формат(МассивНомеровВерсий[0], "ЧГ=0")); - - Для ИндексВерсии = 2 По МассивНомеровВерсий.Количество() Цикл - НомерВерсии = МассивНомеровВерсий[ИндексВерсии-1]; - НомерПредыдущейВерсии = "Версия" + (Формат(МассивНомеровВерсий[ИндексВерсии-2], "ЧГ=0")); - ИмяКолонкиТекущейВерсии = "Версия" + Формат(НомерВерсии, "ЧГ=0"); - - РезультатСравнения = РассчитатьИзменения(НомерВерсии, ВерсияОбъекта_Пред, ВерсияОбъекта); - - ТабличныеДокументы.Добавить(ВерсияОбъекта.ТабличныеДокументы); - - // Заполнение таблицы отчета по реквизитам. - ЗаполнитьХарактеристикуИзмененияРеквизита(РезультатСравнения["Реквизиты"]["и"], - "И", ТаблицаИзмененийРеквизитов, ИмяКолонкиТекущейВерсии, ВерсияОбъекта); - ЗаполнитьХарактеристикуИзмененияРеквизита(РезультатСравнения["Реквизиты"]["д"], - "Д", ТаблицаИзмененийРеквизитов, ИмяКолонкиТекущейВерсии, ВерсияОбъекта); - ЗаполнитьХарактеристикуИзмененияРеквизита(РезультатСравнения["Реквизиты"]["у"], - "У", ТаблицаИзмененийРеквизитов, ИмяКолонкиТекущейВерсии, ВерсияОбъекта); - - // Изменения в табличных частях. - ИзмененияТабличныхЧастей = РезультатСравнения["ТабличныеЧасти"]["и"]; - - // Данная функциональность пока не реализуется. - ДобавленныеТабличныеЧасти = РезультатСравнения["ТабличныеЧасти"]["д"]; - УдаленныеТабличныеЧасти = РезультатСравнения["ТабличныеЧасти"]["у"]; - - Для Каждого ЭлементСоответствия Из ВерсияОбъекта.ТабличныеЧасти Цикл - ИмяТаблицы = ЭлементСоответствия.Ключ; - - Если ЗначениеЗаполнено(ДобавленныеТабличныеЧасти.Найти(ИмяТаблицы)) - Или ЗначениеЗаполнено(УдаленныеТабличныеЧасти.Найти(ИмяТаблицы)) Тогда - Продолжить; - КонецЕсли; - - ТаблицаИзмененийТабличныхЧастей[ИмяТаблицы][ИмяКолонкиТекущейВерсии] = - ВерсияОбъекта.ТабличныеЧасти[ИмяТаблицы].Скопировать(); - - СсылкаНаВерсиюТаблицы = ТаблицаИзмененийТабличныхЧастей[ИмяТаблицы][ИмяКолонкиТекущейВерсии]; - СсылкаНаВерсиюТаблицы.Колонки.Добавить("Версионирование_ИдСтроки"); - Для Каждого СтрокаТаблицы Из СсылкаНаВерсиюТаблицы Цикл - СтрокаТаблицы.Версионирование_ИдСтроки = СтрокаТаблицы.НомерСтроки; - КонецЦикла; - - СсылкаНаВерсиюТаблицы.Колонки.Добавить("Версионирование_Модификация"); - СсылкаНаВерсиюТаблицы.ЗаполнитьЗначения(Ложь, "Версионирование_Модификация"); - - СсылкаНаВерсиюТаблицы.Колонки.Добавить("Версионирование_Изменения", Новый ОписаниеТипов("Массив")); - - ТаблицаСИзменениями = ИзмененияТабличныхЧастей.Получить(ИмяТаблицы); - Если ТаблицаСИзменениями <> Неопределено Тогда - ИзмененныеСтроки = ТаблицаСИзменениями["И"]; - ДобавленныеСтроки = ТаблицаСИзменениями["Д"]; - УдаленныеСтроки = ТаблицаСИзменениями["У"]; - - РазмерностьВТЧ0 = ВерсияОбъекта_Пред.ТабличныеЧасти[ИмяТаблицы].Количество(); - Если РазмерностьВТЧ0 = 0 Тогда - ПомеченныеВТЧ0 = Новый Массив; - Иначе - ПомеченныеВТЧ0 = Новый Массив(РазмерностьВТЧ0); - КонецЕсли; - - РазмерностьВТЧ1 = ВерсияОбъекта.ТабличныеЧасти[ИмяТаблицы].Количество(); - Если РазмерностьВТЧ1 = 0 Тогда - ПомеченныеВТЧ1 = Новый Массив; - Иначе - ПомеченныеВТЧ1 = Новый Массив(РазмерностьВТЧ1); - КонецЕсли; - - Для Каждого ЭлементТЧ Из ИзмененныеСтроки Цикл - СтрокаТИЗ = ТаблицаИзмененийТабличныхЧастей[ИмяТаблицы][НомерПредыдущейВерсии][ЭлементТЧ.ИндексВТЧ0-1]; - СсылкаНаВерсиюТаблицы[ЭлементТЧ.ИндексВТЧ1-1].Версионирование_ИдСтроки = СтрокаТИЗ.Версионирование_ИдСтроки; - СсылкаНаВерсиюТаблицы[ЭлементТЧ.ИндексВТЧ1-1].Версионирование_Модификация = "И"; - СсылкаНаВерсиюТаблицы[ЭлементТЧ.ИндексВТЧ1-1].Версионирование_Изменения = ЭлементТЧ.Различия; - КонецЦикла; - - Для Каждого ЭлементТЧ Из ДобавленныеСтроки Цикл - СсылкаНаВерсиюТаблицы[ЭлементТЧ.ИндексВТЧ1-1].Версионирование_ИдСтроки = УвеличитьСчетчик(счетчикУникальныйИд, ИмяТаблицы); - СсылкаНаВерсиюТаблицы[ЭлементТЧ.ИндексВТЧ1-1].Версионирование_Модификация = "Д"; - КонецЦикла; - - // Необходимо заполнить всем элементам УникальныйИд (сопоставить с предыдущей версией). - Для Индекс = 1 По СсылкаНаВерсиюТаблицы.Количество() Цикл - Если СсылкаНаВерсиюТаблицы[Индекс-1].Версионирование_ИдСтроки = Неопределено Тогда - // Найдена строка, для которой необходимо найти соответствие в предыдущей таблице. - СтрокаТЧ = СсылкаНаВерсиюТаблицы[Индекс-1]; - - ПараметрыОтбора = Новый Структура; - ОбщиеКолонки = НайтиОбщиеКолонки(СсылкаНаВерсиюТаблицы, ТаблицаИзмененийТабличныхЧастей[ИмяТаблицы][НомерПредыдущейВерсии]); - Для Каждого ИмяКолонки Из ОбщиеКолонки Цикл - Если (ИмяКолонки <> "Версионирование_ИдСтроки") И (ИмяКолонки <> "Версионирование_Модификация") Тогда - ПараметрыОтбора.Вставить(ИмяКолонки, СтрокаТЧ[ИмяКолонки]); - КонецЕсли; - КонецЦикла; - - МассивСтрокПредыдущейТЧ = ТаблицаИзмененийТабличныхЧастей[ИмяТаблицы][НомерПредыдущейВерсии].НайтиСтроки(ПараметрыОтбора); - - ПараметрыОтбора.Вставить("Версионирование_Модификация", Неопределено); - МассивСтрокТекущейТЧ = СсылкаНаВерсиюТаблицы.НайтиСтроки(ПараметрыОтбора); - - Для ИндПоТЗ_Текущей = 1 По МассивСтрокТекущейТЧ.Количество() Цикл - Если ИндПоТЗ_Текущей <= МассивСтрокПредыдущейТЧ.Количество() Тогда - МассивСтрокТекущейТЧ[ИндПоТЗ_Текущей-1].Версионирование_ИдСтроки = МассивСтрокПредыдущейТЧ[ИндПоТЗ_Текущей-1].Версионирование_ИдСтроки; - КонецЕсли; - МассивСтрокТекущейТЧ[ИндПоТЗ_Текущей-1].Версионирование_Модификация = Ложь; - КонецЦикла; - КонецЕсли; - КонецЦикла; - Для Каждого ЭлементТЧ Из УдаленныеСтроки Цикл - СтрокаМнимая = СсылкаНаВерсиюТаблицы.Добавить(); - СтрокаМнимая.Версионирование_ИдСтроки = ТаблицаИзмененийТабличныхЧастей[ИмяТаблицы][НомерПредыдущейВерсии][ЭлементТЧ.ИндексВТЧ0-1].Версионирование_ИдСтроки; - СтрокаМнимая.Версионирование_Модификация = "У"; - КонецЦикла; - КонецЕсли; - КонецЦикла; - - ТаблицаИзмененийТабличныхДокументов.Колонки.Добавить(ИмяКолонкиТекущейВерсии); - - РезультатТаблица = РезультатСравнения["ТабличныеДокументы"]["и"]; - Для Каждого ТекСтрока Из РезультатТаблица Цикл - СтрокаТаблицыИзменений = ТаблицаИзмененийТабличныхДокументов.Найти(ТекСтрока.Значение, "Наименование"); - Если СтрокаТаблицыИзменений = Неопределено Тогда - СтрокаТаблицыИзменений = ТаблицаИзмененийТабличныхДокументов.Добавить(); - СтрокаТаблицыИзменений.Наименование = ТекСтрока.Значение; - СтрокаТаблицыИзменений.Представление = ТекСтрока.Представление; - КонецЕсли; - СтрокаТаблицыИзменений[ИмяКолонкиТекущейВерсии] = "И"; - КонецЦикла; - - РезультатТаблица = РезультатСравнения["ТабличныеДокументы"]["д"]; - Для Каждого ТекСтрока Из РезультатТаблица Цикл - СтрокаТаблицыИзменений = ТаблицаИзмененийТабличныхДокументов.Найти(ТекСтрока.Значение, "Наименование"); - Если СтрокаТаблицыИзменений = Неопределено Тогда - СтрокаТаблицыИзменений = ТаблицаИзмененийТабличныхДокументов.Добавить(); - СтрокаТаблицыИзменений.Наименование = ТекСтрока.Значение; - СтрокаТаблицыИзменений.Представление = ТекСтрока.Представление; - КонецЕсли; - СтрокаТаблицыИзменений[ИмяКолонкиТекущейВерсии] = "Д"; - КонецЦикла; - - РезультатТаблица = РезультатСравнения["ТабличныеДокументы"]["у"]; - Для Каждого ТекСтрока Из РезультатТаблица Цикл - СтрокаТаблицыИзменений = ТаблицаИзмененийТабличныхДокументов.Найти(ТекСтрока.Значение, "Наименование"); - Если СтрокаТаблицыИзменений = Неопределено Тогда - СтрокаТаблицыИзменений = ТаблицаИзмененийТабличныхДокументов.Добавить(); - СтрокаТаблицыИзменений.Наименование = ТекСтрока.Значение; - СтрокаТаблицыИзменений.Представление = ТекСтрока.Представление; - КонецЕсли; - СтрокаТаблицыИзменений[ИмяКолонкиТекущейВерсии] = "У"; - КонецЦикла; - - ВерсияОбъекта_Пред = ВерсияОбъекта; - КонецЦикла; - - // Передаем скомпонованную информацию в спец блок для вывода данных в отчет. - ВывестиРезультатыКомпоновкиВОтчет( - ТаблицаИзмененийРеквизитов, - ТаблицаИзмененийТабличныхЧастей, - ТаблицаИзмененийТабличныхДокументов, - счетчикУникальныйИд, - СписокВерсий, - ТЧОтчета); - - ШаблонЛегенда = ОбщийШаблон.ПолучитьОбласть("Легенда"); - ТЧОтчета.Вывести(ШаблонЛегенда); + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + ОписаниеОповещения = Новый ОписаниеОповещения("ПриЗавершенииФормированияОтчета", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОписаниеОповещения, ПараметрыОжидания); КонецПроцедуры &НаСервере -Процедура ВывестиИзмененияРеквизитов(ТЧОтчета, ТаблицаИзмененийРеквизитов, МассивНомеровВерсий) - - ОбластьШапкаРеквизитов = ОбщийШаблон.ПолучитьОбласть("ШапкаРеквизитов"); - ТЧОтчета.Вывести(ОбластьШапкаРеквизитов); - ТЧОтчета.НачатьГруппуСтрок("ГруппаРеквизитов"); - - Для Каждого ЭлементМодРеквизит Из ТаблицаИзмененийРеквизитов Цикл - Если ЭлементМодРеквизит.Версионирование_Модификация = Истина Тогда - - СтруктураОписанияНаименования = ВерсионированиеОбъектов.НаименованиеВыводимогоРеквизита(СсылкаНаОбъект, ЭлементМодРеквизит.Наименование); - Если Не СтруктураОписанияНаименования.ВыводитьРеквизит Тогда - Продолжить; - КонецЕсли; - - ВыводимоеНаименование = СтруктураОписанияНаименования.ВыводимоеНаименование; - - ПустаяЯчейка = ОбщийШаблон.ПолучитьОбласть("ПустаяЯчейка"); - ТЧОтчета.Вывести(ПустаяЯчейка);; - - НаименованиеРеквизита = ОбщийШаблон.ПолучитьОбласть("НаименованиеРеквизитаПоля"); - НаименованиеРеквизита.Параметры.НаименованиеРеквизитаПоля = ВыводимоеНаименование; - ТЧОтчета.Присоединить(НаименованиеРеквизита); - - ИндексПоВерсиямРеквизитов = МассивНомеровВерсий.Количество(); - - Пока ИндексПоВерсиямРеквизитов >= 1 Цикл - СтруктураХарактеристикаИзменения = ЭлементМодРеквизит["Версия" + Формат(МассивНомеровВерсий[ИндексПоВерсиямРеквизитов-1], "ЧГ=0")]; - - ПредставлениеЗначенияРеквизита = ""; - ЗначениеРеквизита = ""; - Изменение = Неопределено; - ТипЗначения = ""; - - // Если в текущей версии не было изменений реквизита, то пропускаем до следующей версии. - Если ТипЗнч(СтруктураХарактеристикаИзменения) = Тип("Строка") Тогда - - ПредставлениеЗначенияРеквизита = Строка(ЗначениеРеквизита); - - ИначеЕсли СтруктураХарактеристикаИзменения <> Неопределено Тогда - Если СтруктураХарактеристикаИзменения.ТипИзменения = "У" Тогда - Иначе - ЗначениеРеквизита = СтруктураХарактеристикаИзменения.Значение.ЗначениеРеквизита; - ПредставлениеЗначенияРеквизита = Строка(ЗначениеРеквизита); - КонецЕсли; - // Получаем структуру изменения реквизита в текущей версии. - Изменение = СтруктураХарактеристикаИзменения.ТипИзменения; - КонецЕсли; - - Если ПредставлениеЗначенияРеквизита = "" Тогда - ПредставлениеЗначенияРеквизита = ЗначениеРеквизита; - Если ПредставлениеЗначенияРеквизита = "" Тогда - ПредставлениеЗначенияРеквизита = " "; - КонецЕсли; - КонецЕсли; - - Если Изменение = Неопределено Тогда - ОбластьЗначениеРеквизита = ОбщийШаблон.ПолучитьОбласть("ИсходноеЗначениеРеквизита"); - ОбластьЗначениеРеквизита.Параметры.ЗначениеРеквизита = ПредставлениеЗначенияРеквизита; - ИначеЕсли Изменение = "И" Тогда - ОбластьЗначениеРеквизита = ОбщийШаблон.ПолучитьОбласть("ИзмененноеЗначениеРеквизита"); - ОбластьЗначениеРеквизита.Параметры.ЗначениеРеквизита = ПредставлениеЗначенияРеквизита; - ИначеЕсли Изменение = "У" Тогда - ОбластьЗначениеРеквизита = ОбщийШаблон.ПолучитьОбласть("УдаленныйРеквизит"); - ОбластьЗначениеРеквизита.Параметры.ЗначениеРеквизита = ПредставлениеЗначенияРеквизита; - ИначеЕсли Изменение = "Д" Тогда - ОбластьЗначениеРеквизита = ОбщийШаблон.ПолучитьОбласть("ДобавленныйРеквизит"); - ОбластьЗначениеРеквизита.Параметры.ЗначениеРеквизита = ПредставлениеЗначенияРеквизита; - КонецЕсли; - - ТЧОтчета.Присоединить(ОбластьЗначениеРеквизита); - - ИндексПоВерсиямРеквизитов = ИндексПоВерсиямРеквизитов - 1; - КонецЦикла; - КонецЕсли; - КонецЦикла; - - ТЧОтчета.ЗакончитьГруппуСтрок(); - -КонецПроцедуры +Функция СформироватьОтчетПоВерсиям() + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(Новый УникальныйИдентификатор()); + ПараметрыОтчета = Новый Структура; + ПараметрыОтчета.Вставить("СсылкаНаОбъект", СсылкаНаОбъект); + ПараметрыОтчета.Вставить("СписокВерсий", СравниваемыеВерсии); + Возврат ДлительныеОперации.ВыполнитьВФоне("РегистрыСведений.ВерсииОбъектов.СформироватьОтчетПоИзменениям", ПараметрыОтчета, ПараметрыВыполнения); +КонецФункции -&НаСервере -Процедура ВывестиИзмененияТабличныхЧастей(ТЧОтчета, - ТаблицаИзмененийТабличныхЧастей, - МассивНомеровВерсий, - счетчикУникальныйИд) - - ПрефиксСлужебнойКолонки = "Версионирование_"; - ЗаголовокСекцииТабличныхЧастейВыводился = Ложь; - - ШаблонСвободнаяСтрока = ОбщийШаблон.ПолучитьОбласть("СвободнаяСтрока"); - ШаблонОчереднаяСтрокаТЧ = ОбщийШаблон.ПолучитьОбласть("ШапкаСтрокиТабличнойЧасти"); - - ТЧОтчета.Вывести(ШаблонСвободнаяСтрока); - - // цикл по всем измененным - Для Каждого ЭлементИзмененнаяТЧ Из ТаблицаИзмененийТабличныхЧастей Цикл - ИмяТабличнойЧасти = ЭлементИзмененнаяТЧ.Ключ; - ВерсииТекущейТЧ = ЭлементИзмененнаяТЧ.Значение; - - ТекущаяТабличнаяЧастьИзменилась = Ложь; - - Для ТекСчетчикУникальныйИд = 1 По СчетчикУникальныйИд[ИмяТабличнойЧасти] Цикл - - СтрокаУникальныйИдИзменена = Ложь; - // В случае если найдено изменение, необходимо так же показать изначальную версию, - // от которой происходят изменения. - НачальнаяВерсияЗаполнена = Ложь; - - // Поиск по всем версиям изменений по текущей строке (УникальныйИд = ТекСчетчикУникальныйИд) - // если строка была удалена, то поиск можно прервать и перейти к следующей - // строке, предварительно подсветив "удалено" цветом удаленной сущности. - ИндексПоВерсиям = МассивНомеровВерсий.Количество(); - - // --------------------------------------------------------------------------------- - // просмотрим версии наперед, чтобы быть уверенными, что изменения встречаются --- - - МодифицированностьСтроки = Ложь; - - Пока ИндексПоВерсиям >= 1 Цикл - ТекущаяКолонкаВерсииТЧ = "Версия" + Формат(МассивНомеровВерсий[ИндексПоВерсиям-1], "ЧГ=0"); - ТекущаяТЧВерсии = ВерсииТекущейТЧ[ТекущаяКолонкаВерсииТЧ]; - - НайденнаяСтрока = Неопределено; - Если ТекущаяТЧВерсии.Колонки.Найти("Версионирование_ИдСтроки") <> Неопределено Тогда - НайденнаяСтрока = ТекущаяТЧВерсии.Найти(ТекСчетчикУникальныйИд, "Версионирование_ИдСтроки"); - КонецЕсли; - - Если НайденнаяСтрока <> Неопределено Тогда - Если (НайденнаяСтрока.Версионирование_Модификация <> Неопределено) Тогда - Если (ТипЗнч(НайденнаяСтрока.Версионирование_Модификация) = Тип("Строка") - ИЛИ (ТипЗнч(НайденнаяСтрока.Версионирование_Модификация) = Тип("Булево") - И НайденнаяСтрока.Версионирование_Модификация = Истина)) Тогда - МодифицированностьСтроки = Истина; - КонецЕсли; - КонецЕсли; - КонецЕсли; - ИндексПоВерсиям = ИндексПоВерсиям - 1; - КонецЦикла; - - Если Не МодифицированностьСтроки Тогда - Продолжить; - КонецЕсли; - - // --------------------------------------------------------------------------------- - - // Приступаем к отображению версий в табличный документ. - ИндексПоВерсиям = МассивНомеровВерсий.Количество(); - - ПромежутокМеждуЗаполнениями = 0; - - // Цикл по всем версиям. Пытаемся найти изменения по строке в каждой версии - // по ее УникальныйИд. - Пока ИндексПоВерсиям >= 1 Цикл - ПромежутокМеждуЗаполнениями = ПромежутокМеждуЗаполнениями + 1; - ТекущаяКолонкаВерсииТЧ = "Версия" + Формат(МассивНомеровВерсий[ИндексПоВерсиям-1]); - // Табличная часть текущей версии (таблица значений с признаками модификации). - ТекущаяТЧВерсии = ВерсииТекущейТЧ[ТекущаяКолонкаВерсииТЧ]; - НайденнаяСтрока = ТекущаяТЧВерсии.Найти(ТекСчетчикУникальныйИд, "Версионирование_ИдСтроки"); - - // В очередной версии найдено изменение строки (возможно это первое изменение с конца). - Если НайденнаяСтрока <> Неопределено Тогда - - // Блок для вывода шапки секции всех табличных частей. - Если Не ЗаголовокСекцииТабличныхЧастейВыводился Тогда - ЗаголовокСекцииТабличныхЧастейВыводился = Истина; - ШаблонОбщаяШапкаСекцииТЧ = ОбщийШаблон.ПолучитьОбласть("ШапкаТабличныхЧастей"); - ТЧОтчета.Вывести(ШаблонОбщаяШапкаСекцииТЧ); - ТЧОтчета.НачатьГруппуСтрок("ГруппаТабличныхЧастей"); - ТЧОтчета.Вывести(ШаблонСвободнаяСтрока); - КонецЕсли; - - // Блок для вывода шапки текущей обрабатываемой табличной части. - Если Не ТекущаяТабличнаяЧастьИзменилась Тогда - ТекущаяТабличнаяЧастьИзменилась = Истина; - ШаблонШапкаТекущейТЧ = ОбщийШаблон.ПолучитьОбласть("ШапкаТабличнойЧасти"); - - ПредставлениеТабличнойЧасти = ИмяТабличнойЧасти; - ОписаниеТабличнойЧасти = СсылкаНаОбъект.Метаданные().ТабличныеЧасти.Найти(ИмяТабличнойЧасти); - Если ОписаниеТабличнойЧасти <> Неопределено Тогда - ПредставлениеТабличнойЧасти = ОписаниеТабличнойЧасти.Представление(); - КонецЕсли; - - ШаблонШапкаТекущейТЧ.Параметры.НаименованиеТабличнойЧасти = ПредставлениеТабличнойЧасти; - ТЧОтчета.Вывести(ШаблонШапкаТекущейТЧ); - ТЧОтчета.НачатьГруппуСтрок("ТабличнаяЧасть"+ИмяТабличнойЧасти); - ТЧОтчета.Вывести(ШаблонСвободнаяСтрока); - КонецЕсли; - - Модификация = НайденнаяСтрока.Версионирование_Модификация; - - Если СтрокаУникальныйИдИзменена = Ложь Тогда - СтрокаУникальныйИдИзменена = Истина; - - ШаблонШапкаСтрокиТЧ = ОбщийШаблон.ПолучитьОбласть("ШапкаСтрокиТабличнойЧасти"); - ШаблонШапкаСтрокиТЧ.Параметры.НомерСтрокиТабличнойЧасти = ТекСчетчикУникальныйИд; - ТЧОтчета.Вывести(ШаблонШапкаСтрокиТЧ); - ТЧОтчета.НачатьГруппуСтрок("ГруппаСтрок"+ИмяТабличнойЧасти+ТекСчетчикУникальныйИд); - - ТипВывода = ""; - Если Модификация = "У" Тогда - ТипВывода = "У" - КонецЕсли; - МассивЗаполнения = Новый Массив; - Для Каждого Колонка Из ТекущаяТЧВерсии.Колонки Цикл - Если СтрНайти(Колонка.Имя, ПрефиксСлужебнойКолонки) = 1 Тогда - Продолжить; - КонецЕсли; - МассивЗаполнения.Добавить(Колонка.Имя); - КонецЦикла; - - ПустойСектор = СформироватьПустойСектор(ТекущаяТЧВерсии.Колонки.Количество()-2); - ПустойСекторЗаполняемый = СформироватьПустойСектор(ТекущаяТЧВерсии.Колонки.Количество()-2, ТипВывода); - Секция = СформироватьСекторСтрокиТЧ(МассивЗаполнения, ТипВывода); - - ТЧОтчета.Присоединить(ПустойСектор); - ТЧОтчета.Присоединить(Секция); - КонецЕсли; - - Пока ПромежутокМеждуЗаполнениями > 1 Цикл - ТЧОтчета.Присоединить(ПустойСекторЗаполняемый); - ПромежутокМеждуЗаполнениями = ПромежутокМеждуЗаполнениями - 1; - КонецЦикла; - - ПромежутокМеждуЗаполнениями = 0; - - // Теперь заполняем очередную измененную табличную строку. - МассивЗаполнения = Новый СписокЗначений; - Для Каждого Колонка Из ТекущаяТЧВерсии.Колонки Цикл - Если СтрНайти(Колонка.Имя, ПрефиксСлужебнойКолонки) = 1 Тогда - Продолжить; - КонецЕсли; - - Представление = Строка(НайденнаяСтрока[Колонка.Имя]); - МассивЗаполнения.Добавить(НайденнаяСтрока["Версионирование_Изменения"].Найти(Колонка.Имя) <> Неопределено, Представление); - КонецЦикла; - - Если ТипЗнч(Модификация) = Тип("Булево") Тогда - ТипВывода = ""; - Иначе - ТипВывода = Модификация; - КонецЕсли; - - Секция = СформироватьСекторСтрокиТЧ(МассивЗаполнения, ТипВывода); - ТЧОтчета.Присоединить(Секция); - КонецЕсли; - ИндексПоВерсиям = ИндексПоВерсиям - 1; - КонецЦикла; - - Если СтрокаУникальныйИдИзменена Тогда - ТЧОтчета.ЗакончитьГруппуСтрок(); - ТЧОтчета.Вывести(ШаблонСвободнаяСтрока); - КонецЕсли; - - КонецЦикла; - - Если ТекущаяТабличнаяЧастьИзменилась Тогда - ТЧОтчета.ЗакончитьГруппуСтрок(); - ТЧОтчета.Вывести(ШаблонСвободнаяСтрока); - КонецЕсли; - - КонецЦикла; - - Если ЗаголовокСекцииТабличныхЧастейВыводился Тогда - ТЧОтчета.ЗакончитьГруппуСтрок(); - ТЧОтчета.Вывести(ШаблонСвободнаяСтрока); - КонецЕсли; - -КонецПроцедуры - -&НаСервере -Процедура ВывестиИзмененияТабличныхДокументов(ТЧОтчета, МассивНомеровВерсий, ТаблицаИзмененийТабличныхДокументов) - - Если ТаблицаИзмененийТабличныхДокументов.Количество() = 0 Тогда - Возврат; - КонецЕсли; - - ШаблонЗаголовокТабличныеДокументы = ОбщийШаблон.ПолучитьОбласть("ШапкаТабличныхДокументов"); - ТЧОтчета.Вывести(ШаблонЗаголовокТабличныеДокументы); - - ТЧОтчета.НачатьГруппуСтрок("ГруппаТабличныхДокументов"); - - ШаблонПустаяСтрока = ОбщийШаблон.ПолучитьОбласть("СвободнаяСтрока"); - ТЧОтчета.Вывести(ШаблонПустаяСтрока); - - ШаблонСтрокаТабличныеДокументы = ОбщийШаблон.ПолучитьОбласть("ШапкаТабличногоДокумента"); - - ШаблонЯчейкаНеИзменилась = ОбщийШаблон.ПолучитьОбласть("ТабличныеДокументыИдентичны"); - ШаблонЯчейкаИзменилась = ОбщийШаблон.ПолучитьОбласть("ТабличныеДокументыРазличаются"); - ШаблонЯчейкаДобавлена = ОбщийШаблон.ПолучитьОбласть("ТабличныеДокументыДобавлен"); - ШаблонЯчейкаУдалена = ОбщийШаблон.ПолучитьОбласть("ТабличныеДокументыУдален"); - - Для Каждого текСтрока Из ТаблицаИзмененийТабличныхДокументов Цикл - ШаблонСтрокаТабличныеДокументы.Параметры.НаименованиеТабличногоДокумента = текСтрока.Представление; - ТЧОтчета.Вывести(ШаблонСтрокаТабличныеДокументы); - ВГраница = МассивНомеровВерсий.ВГраница(); - Для Индекс = 0 По ВГраница Цикл - ИндексНомераВерсии = ВГраница-Индекс; - НомерВерсии = МассивНомеровВерсий[ИндексНомераВерсии]; - ИмяКолонки = "Версия" + Формат(НомерВерсии, "ЧГ=0"); - - Если ТекСтрока[ИмяКолонки] = "И" Тогда - Область = ТЧОтчета.Присоединить(ШаблонЯчейкаИзменилась); - НомерВерсии0 = Формат(НомерВерсии, "ЧГ=0"); - НомерВерсии1 = Формат(МассивНомеровВерсий[ИндексНомераВерсии-1], "ЧГ=0"); - ШаблонТекста = НСтр("ru='сравнить версию №%1 с версией №%2'"); - Область.Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонТекста, НомерВерсии0, НомерВерсии1); - Область.Расшифровка = Новый Структура("Сравнить, Версия0, Версия1", - текСтрока.Наименование, ИндексНомераВерсии, ИндексНомераВерсии-1); - - ИначеЕсли текСтрока[ИмяКолонки] = "У" Тогда - Область = ТЧОтчета.Присоединить(ШаблонЯчейкаУдалена); - Область.Текст = НСтр("ru='Сохранение изменений табличного документа отключено'"); - - ИначеЕсли текСтрока[ИмяКолонки] = "Д" Тогда - Область = ТЧОтчета.Присоединить(ШаблонЯчейкаДобавлена); - Область.Текст = НСтр("ru='открыть'"); - Область.Расшифровка = Новый Структура("Открыть, Версия", текСтрока.Наименование, ИндексНомераВерсии); - - Иначе - Область = ТЧОтчета.Присоединить(ШаблонЯчейкаНеИзменилась); - - КонецЕсли; - КонецЦикла; - ТЧОтчета.Вывести(ШаблонПустаяСтрока); - КонецЦикла; - - ТЧОтчета.ЗакончитьГруппуСтрок(); - ТЧОтчета.Вывести(ШаблонПустаяСтрока); - -КонецПроцедуры - -&НаСервере -Функция ВывестиРезультатыКомпоновкиВОтчет(ТаблицаИзмененийРеквизитов, ТаблицаИзмененийТабличныхЧастей, - ТаблицаИзмененийТабличныхДокументов, счетчикУникальныйИд, СписокВерсий, ТЧОтчета) - - МассивНомеровВерсий = СписокВерсий.ВыгрузитьЗначения(); - - ЧислоИзменившихсяРеквизитов = РассчитатьЧислоИзменившихсяРеквизитов(ТаблицаИзмененийРеквизитов, МассивНомеровВерсий); - ЧислоВерсий = МассивНомеровВерсий.Количество(); - - ТЧОтчета.Очистить(); - ВывестиШапку(ТЧОтчета, СписокВерсий, ЧислоВерсий); - - Если ЧислоИзменившихсяРеквизитов = 0 Тогда - ОбластьШапкаРеквизитов = ОбщийШаблон.ПолучитьОбласть("ШапкаРеквизитов"); - ТЧОтчета.Вывести(ОбластьШапкаРеквизитов); - ТЧОтчета.НачатьГруппуСтрок("ГруппаРеквизитов"); - ОбластьРеквизитыНеИзменялись = ОбщийШаблон.ПолучитьОбласть("РеквизитыНеИзменялись"); - ТЧОтчета.Вывести(ОбластьРеквизитыНеИзменялись); - ТЧОтчета.ЗакончитьГруппуСтрок(); +&НаКлиенте +Процедура ПриЗавершенииФормированияОтчета(Результат, ДополнительныеПараметры) Экспорт + ОбщегоНазначенияКлиентСервер.УстановитьСостояниеПоляТабличногоДокумента(Элементы.ТаблицаОтчета, "НеИспользовать"); + Если Результат.Статус = "Выполнено" Тогда + ТаблицаОтчета = ПолучитьИзВременногоХранилища(Результат.АдресРезультата); Иначе - ВывестиИзмененияРеквизитов(ТЧОтчета, ТаблицаИзмененийРеквизитов, МассивНомеровВерсий); + ВызватьИсключение Результат.КраткоеПредставлениеОшибки; КонецЕсли; - - ВывестиИзмененияТабличныхЧастей(ТЧОтчета, ТаблицаИзмененийТабличныхЧастей, МассивНомеровВерсий, счетчикУникальныйИд); - ВывестиИзмененияТабличныхДокументов(ТЧОтчета, МассивНомеровВерсий, ТаблицаИзмененийТабличныхДокументов); - - ТЧОтчета.ИтогиСнизу = Ложь; - ТЧОтчета.ОтображатьСетку = Ложь; - ТЧОтчета.Защита = Ложь; - ТЧОтчета.ТолькоПросмотр = Истина; - -КонецФункции - -&НаСервере -Функция ВывестиШапку(ТЧОтчета, СписокВерсий, ЧислоВерсий) - - ОбластьШапка = ОбщийШаблон.ПолучитьОбласть("Шапка"); - ОбластьШапка.Параметры.НаименованиеОтчета = НСтр("ru = 'Отчет по изменениям версий объекта'"); - ОбластьШапка.Параметры.НаименованиеОбъекта = Строка(СсылкаНаОбъект); - - ТЧОтчета.Вывести(ОбластьШапка); - - ПустаяЯчейка = ОбщийШаблон.ПолучитьОбласть("ПустаяЯчейка"); - ОбластьВерсии = ОбщийШаблон.ПолучитьОбласть("ЗаголовокВерсии"); - ТЧОтчета.Присоединить(ПустаяЯчейка); - ТЧОтчета.Присоединить(ОбластьВерсии); - ОбластьВерсии = ОбщийШаблон.ПолучитьОбласть("ПредставлениеВерсии"); - - КомментарииКВерсиям = Новый Структура; - ЕстьКомментарии = Ложь; - - ИндексПоВерсиям = ЧислоВерсий; - Пока ИндексПоВерсиям > 0 Цикл - - СведенияОВерсии = ПолучитьОписаниеПоВерсии(СписокВерсий[ИндексПоВерсиям-1]); - ОбластьВерсии.Параметры.ПредставлениеВерсии = СведенияОВерсии.Описание; - - КомментарииКВерсиям.Вставить("Комментарий" + ИндексПоВерсиям, СведенияОВерсии.Комментарий); - Если Не ПустаяСтрока(СведенияОВерсии.Комментарий) Тогда - ЕстьКомментарии = Истина; - КонецЕсли; - - ТЧОтчета.Присоединить(ОбластьВерсии); - ТЧОтчета.Область("C" + Формат(ИндексПоВерсиям + 2, "ЧГ=0")).ШиринаКолонки = 50; - ИндексПоВерсиям = ИндексПоВерсиям - 1; - - КонецЦикла; - - Если ЕстьКомментарии Тогда - - ОбластьКомментарий = ОбщийШаблон.ПолучитьОбласть("ЗаголовокКомментарий"); - ТЧОтчета.Вывести(ПустаяЯчейка); - ТЧОтчета.Присоединить(ОбластьКомментарий); - ОбластьКомментарий = ОбщийШаблон.ПолучитьОбласть("Комментарий"); - - ИндексПоВерсиям = ЧислоВерсий; - Пока ИндексПоВерсиям > 0 Цикл - - ОбластьКомментарий.Параметры.Комментарий = КомментарииКВерсиям["Комментарий" + ИндексПоВерсиям]; - ТЧОтчета.Присоединить(ОбластьКомментарий); - ИндексПоВерсиям = ИндексПоВерсиям - 1; - - КонецЦикла; - - КонецЕсли; - - ОбластьСвободнаяСтрока = ОбщийШаблон.ПолучитьОбласть("СвободнаяСтрока"); - ТЧОтчета.Вывести(ОбластьСвободнаяСтрока); - -КонецФункции - -// Движок отчета. Заполняет отчет по номеру переданной версии. -// Выполняется сравнение между версиями переданной в качестве параметра РезультатРазбораВерсии_0 -// и заданной по НомерВерсии. -// Последовательность выполнения: -// 1. Получение результата разбора версий сравниваемых объектов. -// 2. Формирование списка реквизитов и табличных частей, которые были -// - изменены -// - добавлены -// - удалены. -// -&НаСервере -Функция РассчитатьИзменения(НомерВерсии, - РезультатРазбораВерсии_0, - РезультатРазбораВерсии_1) - - ЭтоДокумент = Ложь; - - Если Метаданные.Документы.Содержит(СсылкаНаОбъект.Метаданные()) Тогда - ЭтоДокумент = Истина; - КонецЕсли; - - // Выполняем разбор предпоследней версии. - Реквизиты_0 = РезультатРазбораВерсии_0.Реквизиты; - ТабличныеЧасти_0 = РезультатРазбораВерсии_0.ТабличныеЧасти; - - // Выполняем разбор последней версии. - РезультатРазбораВерсии_1 = ВерсионированиеОбъектов.РазборВерсии(СсылкаНаОбъект, НомерВерсии); - ДобавитьНомераСтрокВТабличныеЧасти(РезультатРазбораВерсии_1.ТабличныеЧасти); - - Реквизиты_1 = РезультатРазбораВерсии_1.Реквизиты; - ТабличныеЧасти_1 = РезультатРазбораВерсии_1.ТабличныеЧасти; - - /////////////////////////////////////////////////////////////////////////////// - // Формируем список табличных частей, которые изменились // - /////////////////////////////////////////////////////////////////////////////// - СписокТабличныхЧастей_0 = СоздатьТаблицуСравнения(); - Для Каждого Элемент Из ТабличныеЧасти_0 Цикл - НоваяСтрока = СписокТабличныхЧастей_0.Добавить(); - НоваяСтрока.Установить(0, СокрЛП(Элемент.Ключ)); - КонецЦикла; - - СписокТабличныхЧастей_1 = СоздатьТаблицуСравнения(); - Для Каждого Элемент Из ТабличныеЧасти_1 Цикл - НоваяСтрока = СписокТабличныхЧастей_1.Добавить(); - НоваяСтрока.Установить(0, СокрЛП(Элемент.Ключ)); - КонецЦикла; - - // Возможно была изменена структура метаданных - добавились или были удалены реквизиты. - СписокДобавленныхТЧ = ВычестьТаблицу(СписокТабличныхЧастей_1, СписокТабличныхЧастей_0); - СписокУдаленныхТЧ = ВычестьТаблицу(СписокТабличныхЧастей_0, СписокТабличныхЧастей_1); - - // Список не изменившихся реквизитов, по которым будем искать совпадения / расхождения. - СписокОставшихсяТЧ = ВычестьТаблицу(СписокТабличныхЧастей_1, СписокДобавленныхТЧ); - - // Список реквизитов, которые были изменены. - СписокИзменившихсяТЧ = НайтиИзменившиесяТабличныеЧасти(СписокОставшихсяТЧ, - ТабличныеЧасти_0, - ТабличныеЧасти_1); - - /////////////////////////////////////////////////////////////////////////////// - // Формируем список реквизитов, которые изменились // - /////////////////////////////////////////////////////////////////////////////// - СписокРеквизитов0 = СоздатьТаблицуСравнения(); - Для Каждого Реквизит Из РезультатРазбораВерсии_0.Реквизиты Цикл - НоваяСтрока = СписокРеквизитов0.Добавить(); - НоваяСтрока.Установить(0, СокрЛП(Строка(Реквизит.НаименованиеРеквизита))); - КонецЦикла; - - СписокРеквизитов1 = СоздатьТаблицуСравнения(); - Для Каждого Реквизит Из РезультатРазбораВерсии_1.Реквизиты Цикл - НоваяСтрока = СписокРеквизитов1.Добавить(); - НоваяСтрока.Установить(0, СокрЛП(Строка(Реквизит.НаименованиеРеквизита))); - КонецЦикла; - - // Возможно была изменена структура метаданных - добавились или были удалены реквизиты. - СписокДобавленныхРеквизитов = ВычестьТаблицу(СписокРеквизитов1, СписокРеквизитов0); - СписокУдаленныхРеквизитов = ВычестьТаблицу(СписокРеквизитов0, СписокРеквизитов1); - - // Список не изменившихся реквизитов, по которым будем искать совпадения / расхождения. - СписокОставшихсяРеквизитов = ВычестьТаблицу(СписокРеквизитов1, СписокДобавленныхРеквизитов); - - // Список реквизитов, которые были изменены. - СписокИзменившихсяРеквизитов = СоздатьТаблицуСравнения(); - - ИзмененияВРеквизитах = Новый Соответствие; - ИзмененияВРеквизитах.Вставить("д", СписокДобавленныхРеквизитов); - ИзмененияВРеквизитах.Вставить("у", СписокУдаленныхРеквизитов); - ИзмененияВРеквизитах.Вставить("и", СписокИзменившихсяРеквизитов); - - Для Каждого СтрокаТаблицыЗначений Из СписокОставшихсяРеквизитов Цикл - - Реквизит = СтрокаТаблицыЗначений.Значение; - Значение_0 = Реквизиты_0.Найти(Реквизит, "НаименованиеРеквизита").ЗначениеРеквизита; - Значение_1 = Реквизиты_1.Найти(Реквизит, "НаименованиеРеквизита").ЗначениеРеквизита; - - Если ТипЗнч(Значение_0) <> Тип("ХранилищеЗначения") - И ТипЗнч(Значение_1) <> Тип("ХранилищеЗначения") Тогда - Если Значение_0 <> Значение_1 Тогда - НоваяСтрока = СписокИзменившихсяРеквизитов.Добавить(); - НоваяСтрока.Установить(0, Реквизит); - КонецЕсли; - КонецЕсли; - - КонецЦикла; - - ИзмененияВТаблицах = РассчитатьИзмененияТабличныхЧастей( - СписокИзменившихсяТЧ, - ТабличныеЧасти_0, - ТабличныеЧасти_1); - - /////////////////////////////////////////////////////////////////////////////// - // Формируем список ТабличныхДокументов // - /////////////////////////////////////////////////////////////////////////////// - - ТабличныеДокументы0 = РезультатРазбораВерсии_0.ТабличныеДокументы; - ТабличныеДокументы1 = РезультатРазбораВерсии_1.ТабличныеДокументы; - - СписокТабличныхДокументов0 = СоздатьТаблицуСравнения(); - СписокТабличныхДокументов0.Колонки.Добавить("Представление"); - Если ТабличныеДокументы0 <> Неопределено Тогда - Для Каждого ЭлементСтруктуры Из ТабличныеДокументы0 Цикл - НоваяСтрока = СписокТабличныхДокументов0.Добавить(); - НоваяСтрока.Значение = ЭлементСтруктуры.Ключ; - НоваяСтрока.Представление = ЭлементСтруктуры.Значение.Наименование; - КонецЦикла; - КонецЕсли; - - СписокТабличныхДокументов1 = СоздатьТаблицуСравнения(); - СписокТабличныхДокументов1.Колонки.Добавить("Представление"); - Если ТабличныеДокументы1 <> Неопределено Тогда - Для Каждого ЭлементСтруктуры Из ТабличныеДокументы1 Цикл - НоваяСтрока = СписокТабличныхДокументов1.Добавить(); - НоваяСтрока.Значение = ЭлементСтруктуры.Ключ; - НоваяСтрока.Представление = ЭлементСтруктуры.Значение.Наименование; - КонецЦикла; - КонецЕсли; - - СписокДобавленныхТабличныхДокументов = ВычестьТаблицу(СписокТабличныхДокументов1, СписокТабличныхДокументов0); - СписокУдаленныхТабличныхДокументов = ВычестьТаблицу(СписокТабличныхДокументов0, СписокТабличныхДокументов1); - СписокОставшихсяТабличныхДокументов = ВычестьТаблицу(СписокТабличныхДокументов1, - СписокДобавленныхТабличныхДокументов); - - СписокИзменившихсяТабличныхДокументов = СоздатьТаблицуСравнения(); - СписокИзменившихсяТабличныхДокументов.Колонки.Добавить("Представление"); - - ИзмененияВТабличныхДокументах = Новый Соответствие; - ИзмененияВТабличныхДокументах.Вставить("д", СписокДобавленныхТабличныхДокументов); - ИзмененияВТабличныхДокументах.Вставить("у", СписокУдаленныхТабличныхДокументов); - ИзмененияВТабличныхДокументах.Вставить("и", СписокИзменившихсяТабличныхДокументов); - - Для Каждого СтрокаТаблицыЗначений Из СписокОставшихсяТабличныхДокументов Цикл - - ИмяТабличногоДокумента = СтрокаТаблицыЗначений.Значение; - - ТабДокXML = ВерсионированиеОбъектов.СериализоватьОбъект( - Новый ХранилищеЗначения(ТабличныеДокументы0[ИмяТабличногоДокумента].Данные)); - КонтрольнаяСумма0 = ВерсионированиеОбъектов.КонтрольнаяСумма(ТабДокXML); - - ТабДокXML = ВерсионированиеОбъектов.СериализоватьОбъект( - Новый ХранилищеЗначения(ТабличныеДокументы1[ИмяТабличногоДокумента].Данные)); - КонтрольнаяСумма1 = ВерсионированиеОбъектов.КонтрольнаяСумма(ТабДокXML); - - Если КонтрольнаяСумма0 <> КонтрольнаяСумма1 Тогда - ЗаполнитьЗначенияСвойств(СписокИзменившихсяТабличныхДокументов.Добавить(), СтрокаТаблицыЗначений); - КонецЕсли; - - КонецЦикла; - - МодификацииТабличныхЧастей = Новый Структура; - МодификацииТабличныхЧастей.Вставить("д", СписокДобавленныхТЧ); - МодификацииТабличныхЧастей.Вставить("у", СписокУдаленныхТЧ); - МодификацииТабличныхЧастей.Вставить("и", ИзмененияВТаблицах); - - КомпоновкаИзменений = Новый Соответствие; - КомпоновкаИзменений.Вставить("Реквизиты", ИзмененияВРеквизитах); - КомпоновкаИзменений.Вставить("ТабличныеЧасти", МодификацииТабличныхЧастей); - КомпоновкаИзменений.Вставить("ТабличныеДокументы", ИзмененияВТабличныхДокументах); - - Возврат КомпоновкаИзменений; - -КонецФункции - -// Функция добавляет колонки, соответственно количеству версий объекта. -// Колонки имеют называния в виде "Версия<Номер>", где <Номер> принимает -// значения от 1 до количества сохраненных версий объекта. Нумерация -// является условной, т.е. например название "Версия1" может не соответствовать -// сохраненной версии объекта с версией 0. -// -&НаСервере -Процедура ПодготовитьКолонкиТаблицИзмененийРеквизитов(ТаблицаЗначений, - МассивНомеровВерсий) - - ТаблицаЗначений = Новый ТаблицаЗначений; - - ТаблицаЗначений.Колонки.Добавить("Наименование"); - ТаблицаЗначений.Колонки.Добавить("Версионирование_Модификация"); - ТаблицаЗначений.Колонки.Добавить("Версионирование_ТипЗначения"); // Предполагаемый тип значения. - - Для Индекс = 1 По МассивНомеровВерсий.Количество() Цикл - ТаблицаЗначений.Колонки.Добавить("Версия" + Формат(МассивНомеровВерсий[Индекс-1], "ЧГ=0")); - КонецЦикла; - КонецПроцедуры &НаСервере -Функция РассчитатьИзмененияТабличныхЧастей(СписокИзменившихсяТЧ, - ТабличныеЧасти_0, - ТабличныеЧасти_1) - - ИзмененияВТаблицах = Новый Соответствие; - - // Цикл по количеству табличных частей. - Для Индекс = 1 По СписокИзменившихсяТЧ.Количество() Цикл - - ИзмененияВТаблицах.Вставить(СписокИзменившихсяТЧ[Индекс-1].Значение, Новый Соответствие); - - ТаблицаДляАнализа = СписокИзменившихсяТЧ[Индекс-1].Значение; - ТЧ0 = ТабличныеЧасти_0[ТаблицаДляАнализа]; - ТЧ1 = ТабличныеЧасти_1[ТаблицаДляАнализа]; - - ТаблицаИзмененныхСтрок = Новый ТаблицаЗначений; - ТаблицаИзмененныхСтрок.Колонки.Добавить("ИндексВТЧ0"); - ТаблицаИзмененныхСтрок.Колонки.Добавить("ИндексВТЧ1"); - ТаблицаИзмененныхСтрок.Колонки.Добавить("Различия"); - - СоответствиеСтрокТЧ0СтрокамТЧ1 = СоответствиеСтрокТаблиц(ТЧ0, ТЧ1); - СоответствиеСтрокТЧ1СтрокамТЧ0 = Новый Соответствие; - ПроверяемыеКолонки = НайтиОбщиеКолонки(ТЧ0, ТЧ1); - Для Каждого Соответствие Из СоответствиеСтрокТЧ0СтрокамТЧ1 Цикл - СтрокаТаблицы0 = Соответствие.Ключ; - СтрокаТаблицы1 = Соответствие.Значение; - РазличияСтрок = РазличияСтрок(СтрокаТаблицы0, СтрокаТаблицы1, ПроверяемыеКолонки); - Если РазличияСтрок.Количество() > 0 Тогда - НоваяСтрока = ТаблицаИзмененныхСтрок.Добавить(); - НоваяСтрока["ИндексВТЧ0"] = ИндексСтроки(СтрокаТаблицы0) + 1; - НоваяСтрока["ИндексВТЧ1"] = ИндексСтроки(СтрокаТаблицы1) + 1; - НоваяСтрока["Различия"] = РазличияСтрок; - КонецЕсли; - СоответствиеСтрокТЧ1СтрокамТЧ0.Вставить(СтрокаТаблицы1, СтрокаТаблицы0); - КонецЦикла; - - ТаблицаДобавленныхСтрок = Новый ТаблицаЗначений; - ТаблицаДобавленныхСтрок.Колонки.Добавить("ИндексВТЧ1"); - - Для Каждого СтрокаТаблицы Из ТЧ1 Цикл - Если СоответствиеСтрокТЧ1СтрокамТЧ0[СтрокаТаблицы] = Неопределено Тогда - НоваяСтрока = ТаблицаДобавленныхСтрок.Добавить(); - НоваяСтрока.ИндексВТЧ1 = ТЧ1.Индекс(СтрокаТаблицы) + 1; - КонецЕсли; - КонецЦикла; - - ТаблицаУдаленныхСтрок = Новый ТаблицаЗначений; - ТаблицаУдаленныхСтрок.Колонки.Добавить("ИндексВТЧ0"); - - Для Каждого СтрокаТаблицы Из ТЧ0 Цикл - Если СоответствиеСтрокТЧ0СтрокамТЧ1[СтрокаТаблицы] = Неопределено Тогда - НоваяСтрока = ТаблицаУдаленныхСтрок.Добавить(); - НоваяСтрока.ИндексВТЧ0 = ТЧ0.Индекс(СтрокаТаблицы) + 1; - КонецЕсли; - КонецЦикла; - - ИзмененияВТаблицах[СписокИзменившихсяТЧ[Индекс-1].Значение].Вставить("Д", ТаблицаДобавленныхСтрок); - ИзмененияВТаблицах[СписокИзменившихсяТЧ[Индекс-1].Значение].Вставить("У", ТаблицаУдаленныхСтрок); - ИзмененияВТаблицах[СписокИзменившихсяТЧ[Индекс-1].Значение].Вставить("И", ТаблицаИзмененныхСтрок); - - КонецЦикла; - - Возврат ИзмененияВТаблицах; - -КонецФункции - -// Сравнивает две табличные части, список которых передается в первом параметре -// и пытается найти расхождения в них (не совпадающие элементы). Если таковые -// таблицы есть, то формируется список таких табличных частей. -// -&НаСервере -Функция НайтиИзменившиесяТабличныеЧасти(СписокОставшихсяТЧ, - ТабличныеЧасти_0, - ТабличныеЧасти_1) - - СписокИзменившихсяТЧ = СоздатьТаблицуСравнения(); - - // Поиск Табличных частей, в которых изменились строки. - Для Каждого Элемент Из СписокОставшихсяТЧ Цикл - - ТЧ_0 = ТабличныеЧасти_0[Элемент.Значение]; - ТЧ_1 = ТабличныеЧасти_1[Элемент.Значение]; - - Если ТЧ_0.Количество() = ТЧ_1.Количество() Тогда - - НайденоОтличие = Ложь; - - // Проверяем, что структура колонок осталась прежней (эквивалентна). - Если ТЧЭквиваленты (ТЧ_0.Колонки, ТЧ_1.Колонки) Тогда - - // Ищем различающиеся элементы - строки. - Для Индекс = 0 По ТЧ_0.Количество() - 1 Цикл - Строка_0 = ТЧ_0[Индекс]; - Строка_1 = ТЧ_1[Индекс]; - - Если НЕ СтрокиТЧРавны(Строка_0, Строка_1, ТЧ_0.Колонки) Тогда - НайденоОтличие = Истина; - Прервать; - КонецЕсли - КонецЦикла; - - Иначе - НайденоОтличие = Истина; - КонецЕсли; - - Если НайденоОтличие Тогда - НоваяСтрока = СписокИзменившихсяТЧ.Добавить(); - НоваяСтрока.Установить(0, Элемент.Значение); - КонецЕсли; - - Иначе - НоваяСтрока = СписокИзменившихсяТЧ.Добавить(); - НоваяСтрока.Установить(0, Элемент.Значение); - КонецЕсли; - - КонецЦикла; - - Возврат СписокИзменившихсяТЧ; - -КонецФункции - -// Функция считывает начальные значения реквизитов и табличных частей документа -// формат формируемой структуры данных для реквизитов: -// ТаблицаРеквизитов - ТаблицаЗначений -// Колонки -// |-Версия<младший номер версии> -// |-... -// |-Версия<старший номер версии> -// |-Версионирование_Модификация (Булево) -// |-Наименование -// -// Строки содержат список реквизитов и их изменения во времени, в колонке Версионирование_Модификация -// содержится признак модифицированности строки: -// ложь - строка не была изменена -// "д" - строка была добавлена -// "у" - строка была удалена -// "и" - строка была изменена. -// -// Формат формируемой структуры данных для таблиц значений: -// ТаблицаТЧ - Соответствие -// |- <Имя табличной части1> - Соответствие -// |-Версия<младший номер версии> - ТаблицаЗначений -// Колонки -// |- Базовые колонки соответствующей таблицы части объекта -// |- Версионирование_ИдСтроки - уникальный, в пределах таблицы, идентификатор данной строки -// |- Версионирование_Модификация - признак модифицированности строки -// принимает следующие значения: -// ложь - строка не была изменена -// "д" - строка была добавлена -// "у" - строка была удалена -// "и" - строка была изменена. -// |-... -// |-Версия<старший номер версии> -// |-... -// |- <Имя табличной частиN> -// -&НаСервере -Функция СчитатьНачальныеЗначенияРеквизитовИТабличныхЧастей(ТаблицаРеквизитов, - ТаблицаТЧ, - КоличествоВерсий, - МассивНомеровВерсий) - - МладшаяВерсияОбъекта = МассивНомеровВерсий[0]; - - // Выполняем разбор первой версии. - ВерсияОбъекта = ВерсионированиеОбъектов.РазборВерсии(СсылкаНаОбъект, МладшаяВерсияОбъекта); - ДобавитьНомераСтрокВТабличныеЧасти(ВерсияОбъекта.ТабличныеЧасти); - - Реквизиты = ВерсияОбъекта.Реквизиты; - ТабличныеЧасти = ВерсияОбъекта.ТабличныеЧасти; - - Колонка = "Версия" + Формат(МассивНомеровВерсий[0], "ЧГ=0"); - - Для Каждого СтрокаТаблицыЗначений Из Реквизиты Цикл - - НоваяСтрока = ТаблицаРеквизитов.Добавить(); - НоваяСтрока[Колонка] = Новый Структура("ТипИзменения, Значение", "И", СтрокаТаблицыЗначений); - НоваяСтрока.Наименование = СтрокаТаблицыЗначений.НаименованиеРеквизита; - НоваяСтрока.Версионирование_Модификация = Ложь; - НоваяСтрока.Версионирование_ТипЗначения = СтрокаТаблицыЗначений.ТипРеквизита; - - КонецЦикла; - - Для Каждого ЭлементТЧ Из ТабличныеЧасти Цикл - - ТаблицаТЧ.Вставить(ЭлементТЧ.Ключ, Новый Соответствие); - ПодготовитьКолонкиТаблицИзмененийДляСоответствия(ТаблицаТЧ[ЭлементТЧ.Ключ], МассивНомеровВерсий); - ТаблицаТЧ[ЭлементТЧ.Ключ]["Версия" + Формат(МладшаяВерсияОбъекта, "ЧГ=0")] = ЭлементТЧ.Значение.Скопировать(); - - ТекущаяТЗ = ТаблицаТЧ[ЭлементТЧ.Ключ]["Версия" + Формат(МладшаяВерсияОбъекта, "ЧГ=0")]; - - ТекущаяТЗ.Колонки.Добавить("Версионирование_ИдСтроки"); - ТекущаяТЗ.Колонки.Добавить("Версионирование_Модификация"); - ТекущаяТЗ.Колонки.Добавить("Версионирование_Изменения", Новый ОписаниеТипов("Массив")); - - Для Индекс = 1 По ТекущаяТЗ.Количество() Цикл - ТекущаяТЗ[Индекс-1].Версионирование_ИдСтроки = Индекс; - ТекущаяТЗ[Индекс-1].Версионирование_Модификация = Ложь; - КонецЦикла; - - КонецЦикла; - - Возврат ВерсияОбъекта; - -КонецФункции - -&НаСервере -Процедура ПодготовитьКолонкиТаблицИзмененийДляСоответствия(Соответствие, МассивНомеровВерсий) - - Количество = МассивНомеровВерсий.Количество(); - - Для Индекс = 1 По Количество Цикл - Соответствие.Вставить("Версия" + Формат(МассивНомеровВерсий[Индекс-1], "ЧГ=0"), Новый ТаблицаЗначений); - КонецЦикла; - +Процедура СформироватьОтчетПоВерсии() + ТаблицаОтчета = ВерсионированиеОбъектов.ОтчетПоВерсииОбъекта(СсылкаНаОбъект, СравниваемыеВерсии[0].Значение, СравниваемыеВерсии[0].Представление); КонецПроцедуры -// Возвращает Истина или Ложь в зависимости от того, эквивалентны табличные -// части или нет. ТЧ считаются эквивалентными, если количество, наименование -// и тип их полей одинаков. Изменение порядка следования колонок не считается -// изменением табличной части. -// -&НаСервере -Функция ТЧЭквиваленты(КолонкиПервойТаблицы, КолонкиВторойТаблицы) - Если КолонкиПервойТаблицы.Количество() <> КолонкиВторойТаблицы.Количество() Тогда - Возврат Ложь; - КонецЕсли; - - Для Каждого Колонка Из КолонкиПервойТаблицы Цикл - Найденная = КолонкиВторойТаблицы.Найти(Колонка.Имя); - Если Найденная = Неопределено Или Колонка.ТипЗначения <> Найденная.ТипЗначения Тогда - Возврат Ложь; - КонецЕсли; - КонецЦикла; - - Возврат Истина; -КонецФункции - -// Функция сравнивает значения двух строк (по значению) и возвращает. -// Истина, в случае если строки равны, иначе возвращает Ложь. -// Предполагается что структура метаданных табличных частей эквивалентна. -// -&НаСервере -Функция СтрокиТЧРавны(СтрокаТЧ1, СтрокаТЧ2, Колонки) - - Для Каждого Колонка Из Колонки Цикл - ИмяКолонки = Колонка.Имя; - Если СтрокаТЧ2.Владелец().Колонки.Найти(ИмяКолонки) = Неопределено Тогда - Продолжить; - КонецЕсли; - ЗначениеИзТЧ1 = СтрокаТЧ1[ИмяКолонки]; - ЗначениеИзТЧ2 = СтрокаТЧ2[ИмяКолонки]; - Если ЗначениеИзТЧ1 <> ЗначениеИзТЧ2 Тогда - Возврат Ложь; - КонецЕсли; - КонецЦикла; - - Возврат Истина; - -КонецФункции - -// Получает описание хранимой версии объекта в виде строки. -// -&НаСервере -Функция ПолучитьОписаниеПоВерсии(НомерВерсии) - - СведенияОВерсии = ВерсионированиеОбъектов.СведенияОВерсииОбъекта(СсылкаНаОбъект, НомерВерсии.Значение); - - Описание = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '№ %1 / (%2) / %3'"), НомерВерсии.Представление, - Строка(СведенияОВерсии.ДатаВерсии), СокрЛП(Строка(СведенияОВерсии.АвторВерсии))); - - СведенияОВерсии.Вставить("Описание", Описание); - - Возврат СведенияОВерсии; - -КонецФункции - -// Подсчитывает число изменившихся реквизитов в таблице изменившихся реквизитов. -// -&НаСервере -Функция РассчитатьЧислоИзменившихсяРеквизитов(ТаблицаИзмененийРеквизитов, МассивНомеровВерсий) - - Результат = 0; - - Для Каждого ЭлементТЗ Из ТаблицаИзмененийРеквизитов Цикл - Если ЭлементТЗ.Версионирование_Модификация <> Неопределено И ЭлементТЗ.Версионирование_Модификация = Истина Тогда - Результат = Результат + 1; - КонецЕсли; - КонецЦикла; - - Возврат Результат; - -КонецФункции - -// Увеличивает значение сквозного счетчика для таблицы. -// -&НаСервере -Функция УвеличитьСчетчик(счетчикУникальныйИд, ИмяТаблицы); - - счетчикУникальныйИд[ИмяТаблицы] = счетчикУникальныйИд[ИмяТаблицы] + 1; - - Возврат счетчикУникальныйИд[ИмяТаблицы]; - -КонецФункции - -// Возвращает уникальный номер для идентификации строки из таблицы по версии. -// -&НаСервере -Функция ПолучитьУникальныеУникальныйИд(ТаблицаИзмененийТЧ, ИмяКолонкиВерсии) - - СоответствиеУникальныйИд = Новый Соответствие; - - Для Каждого ЭлементСоотв Из ТаблицаИзмененийТЧ Цикл - СоответствиеУникальныйИд[ЭлементСоотв.Ключ] = Число(ЭлементСоотв.Значение[ИмяКолонкиВерсии].Количество()); - КонецЦикла; - - Возврат СоответствиеУникальныйИд; - -КонецФункции - -// Заполняет таблицу отчета по результатам сравнения на некотором шаге. -// -// Параметры: -// ПометкаИзменения - строка - "д" - реквизит добавлен -// "у" - реквизит удален -// "и" - реквизит изменен. -// -&НаСервере -Процедура ЗаполнитьХарактеристикуИзмененияРеквизита(ТаблицаИзмененийРеквизита, - ПометкаИзменения, - ТаблицаИзмененийРеквизитов, - ИмяКолонкиТекущейВерсии, - ВерсияОбъекта) - - Для Каждого Элемент Из ТаблицаИзмененийРеквизита Цикл - Наименование = Элемент.Значение; - ИзменениеРеквизита = ТаблицаИзмененийРеквизитов.Найти (Наименование, "Наименование"); - - Если ИзменениеРеквизита = Неопределено Тогда - ИзменениеРеквизита = ТаблицаИзмененийРеквизитов.Добавить(); - ИзменениеРеквизита.Наименование = Наименование; - КонецЕсли; - - ПараметрыИзменения = Новый Структура; - ПараметрыИзменения.Вставить("ТипИзменения", ПометкаИзменения); - - Если ПометкаИзменения = "у" Тогда - ПараметрыИзменения.Вставить("Значение", "удалено"); - Иначе - ПараметрыИзменения.Вставить("Значение", ВерсияОбъекта.Реквизиты.Найти(Наименование, "НаименованиеРеквизита")); - КонецЕсли; - - ИзменениеРеквизита[ИмяКолонкиТекущейВерсии] = ПараметрыИзменения; - ИзменениеРеквизита.Версионирование_Модификация = Истина; - КонецЦикла; - -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Прочие служебные процедуры и функции. - -// ЗначениеЗаполнения - массив строк. -// ТипВывода - строка : -// "и" - изменение -// "д" - добавление -// "у" - удаление -// "" - обычный вывод. -&НаСервере -Функция СформироватьСекторСтрокиТЧ(Знач ЗначенияЗаполнения, Знач ТипВывода = "") - - ТабличныйДокумент = Новый ТабличныйДокумент; - - Если ТипВывода = "" Тогда - Шаблон = ОбщийШаблон.ПолучитьОбласть("ИсходноеЗначениеРеквизита"); - ИначеЕсли ТипВывода = "И" Тогда - Шаблон = ОбщийШаблон.ПолучитьОбласть("ИзмененноеЗначениеРеквизита"); - ИначеЕсли ТипВывода = "Д" Тогда - Шаблон = ОбщийШаблон.ПолучитьОбласть("ДобавленныйРеквизит"); - ИначеЕсли ТипВывода = "У" Тогда - Шаблон = ОбщийШаблон.ПолучитьОбласть("УдаленныйРеквизит"); - КонецЕсли; - - ШаблонНетИзменения = ОбщийШаблон.ПолучитьОбласть("ИсходноеЗначениеРеквизита"); - ШаблонЕстьИзменение = ОбщийШаблон.ПолучитьОбласть("ИзмененноеЗначениеРеквизита"); - - ЕстьДетализация = ТипЗнч(ЗначенияЗаполнения) = Тип("СписокЗначений"); - Для Каждого Элемент Из ЗначенияЗаполнения Цикл - Значение = Элемент; - Если ЕстьДетализация И ТипВывода = "И" Тогда - Значение = Элемент.Представление; - ЕстьИзменение = Элемент.Значение; - Шаблон = ?(ЕстьИзменение, ШаблонЕстьИзменение, ШаблонНетИзменения); - КонецЕсли; - Шаблон.Параметры.ЗначениеРеквизита = Значение; - ТабличныйДокумент.Вывести(Шаблон); - КонецЦикла; - - Возврат ТабличныйДокумент; - -КонецФункции - -// Формирует пустой сектор для вывода в отчет. Используется, -// если строка не была изменена в одной из версий. -// -&НаСервере -Функция СформироватьПустойСектор(Знач ЧислоСтрок, Знач ТипВывода = "") - - ЗначениеЗаполнения = Новый Массив; - - Для Индекс = 1 По ЧислоСтрок Цикл - ЗначениеЗаполнения.Добавить(" "); - КонецЦикла; - - Возврат СформироватьСекторСтрокиТЧ(ЗначениеЗаполнения, ТипВывода); - -КонецФункции - -// Функция возвращает результат вычитания элементов множества таблицы. -// ТаблицаВычитаемая из ТаблицаОсновная. -// -&НаСервере -Функция ВычестьТаблицу(Знач ТаблицаОсновная, - Знач ТаблицаВычитаемая, - Знач КолонкаСравненияОсновнойТаблицы = "", - Знач КолонкаСравненияВычитаемойТаблицы = "") - - Если Не ЗначениеЗаполнено(КолонкаСравненияОсновнойТаблицы) Тогда - КолонкаСравненияОсновнойТаблицы = "Значение"; - КонецЕсли; - - Если Не ЗначениеЗаполнено(КолонкаСравненияВычитаемойТаблицы) Тогда - КолонкаСравненияВычитаемойТаблицы = "Значение"; - КонецЕсли; - - ТаблицаРезультат = Новый ТаблицаЗначений; - ТаблицаРезультат = ТаблицаОсновная.Скопировать(); - - Для Каждого Элемент Из ТаблицаВычитаемая Цикл - Значение = Элемент[КолонкаСравненияОсновнойТаблицы]; - НайденнаяСтрока = ТаблицаРезультат.Найти(Значение, КолонкаСравненияОсновнойТаблицы); - Если НайденнаяСтрока <> Неопределено Тогда - ТаблицаРезультат.Удалить(НайденнаяСтрока); - КонецЕсли; - КонецЦикла; - - Возврат ТаблицаРезультат; - -КонецФункции - -// Функция возвращает таблицу созданную на основе ТаблицаИнициализации. -// Если ТаблицаИнициализации не указана, то создается пустая таблица. -// -&НаСервере -Функция СоздатьТаблицуСравнения(ТаблицаИнициализации = Неопределено, - ИмяКолонкиСравнения = "Значение") - - Таблица = Новый ТаблицаЗначений; - Таблица.Колонки.Добавить(ИмяКолонкиСравнения); - - Если ТаблицаИнициализации <> Неопределено Тогда - - МассивЗначений = ТаблицаИнициализации.ВыгрузитьКолонку(ИмяКолонкиСравнения); - - Для Каждого Элемент Из ТаблицаИнициализации Цикл - НоваяСтрока = Таблица.Добавить(); - НоваяСтрока.Установить(0, Элемент[ИмяКолонкиСравнения]); - КонецЦикла; - - КонецЕсли; - - Возврат Таблица; - -КонецФункции - -&НаСервере -Функция ИндексСтроки(СтрокаТаблицы) - Возврат СтрокаТаблицы.Владелец().Индекс(СтрокаТаблицы); -КонецФункции - -&НаСервере -Процедура ДобавитьНомераСтрокВТабличныеЧасти(ТабличныеЧасти) - - Для Каждого Соответствие Из ТабличныеЧасти Цикл - Таблица = Соответствие.Значение; - Если Таблица.Колонки.Найти("НомерСтроки") <> Неопределено Тогда - Продолжить; - КонецЕсли; - Таблица.Колонки.Вставить(0, "НомерСтроки",,НСтр("ru = '№ строки'")); - Для НомерСтроки = 1 По Таблица.Количество() Цикл - Таблица[НомерСтроки-1].НомерСтроки = НомерСтроки; - КонецЦикла; - КонецЦикла; - -КонецПроцедуры - -// Алгоритм сравнения таблиц - -// Сравнивает строки произвольных таблиц по значениям, с учетом совпадений имен колонок. Возвращает соответствие строк. -// Таблицы1 строкам Таблицы2. Строки, соответствие которым не найдено, не включаются в результат. Соответствие -// устанавливается между "похожими" строками, то есть строками, где есть по меньшей мере одно совпадение значений. -// При сравнении значений в строках значения-коллекции сравниваются по ссылкам (по элементам коллекций не сравниваются). -// -// Параметры: -// Таблица1, Таблица2 - ТаблицаЗначений - сравниваемые таблицы. -// -// Служебные параметры: -// ТребуемоеКоличествоРазличий - Число - количество различий, которое должно быть между строками (строго). -// МаксимумРазличий - Число - ограничивает инкремент параметра ТребуемоеКоличествоРазличий при рекурсивном вызове. -// СоответствиеСтрокТаблицы1СтрокамТаблицы2 - Соответствие - уже найденное соответствие строк. -// -// Возвращаемое значение: -// Соответствие - соответствия строк, где ключи - номера строк Таблицы1, значения - номера строк Таблицы2. -// -// Использование: -// -// СоответствиеСтрок = НайтиПохожиеСтрокиТаблиц(Таблица1, Таблица2); -// -// Примечание: -// Служебные параметры используются при рекурсивном вызове, задавать при вызове функции их не рекомендуется. -// Для поиска строк с точным количеством расхождений, следует использовать одинаковые значения для параметров. -// ТребуемоеКоличествоРазличий и МаксимумРазличий. -// Например, если требуется найти 100% одинаковые строки, то вызов будет такой: -// -// СоответствиеСтрок = НайтиПохожиеСтрокиТаблиц(Таблица1, Таблица2, 0, 0); -// -&НаСервере -Функция НайтиПохожиеСтрокиТаблиц(Таблица1, Знач Таблица2, Знач ТребуемоеКоличествоРазличий = 0, Знач МаксимумРазличий = Неопределено, СоответствиеСтрокТаблицы1СтрокамТаблицы2 = Неопределено) - - Пропустить = "Пропустить_"; - - Таблица2 = Таблица2.Скопировать(); - Если Таблица2.Колонки.Найти(Пропустить) = Неопределено Тогда - Таблица2.Колонки.Добавить(Пропустить, Новый ОписаниеТипов("Булево")); - КонецЕсли; - - Если СоответствиеСтрокТаблицы1СтрокамТаблицы2 = Неопределено Тогда - СоответствиеСтрокТаблицы1СтрокамТаблицы2 = Новый Соответствие; - КонецЕсли; - - Если МаксимумРазличий = Неопределено Тогда - МаксимумРазличий = МаксимальноеКоличествоРазличийМеждуСтрокамиТаблиц(Таблица1, Таблица2); - КонецЕсли; - - // Сравниваем строки каждую с каждой. - Для Каждого СтрокаТаблицы1 Из Таблица1 Цикл - Для Каждого СтрокаТаблицы2 Из Таблица2.НайтиСтроки(Новый Структура(Пропустить, Ложь)) Цикл - // Считаем различия без учета служебной колонки. - КоличествоРазличий = КоличествоРазличийВСтрокахТаблиц(СтрокаТаблицы1, СтрокаТаблицы2) - 1; - - // Анализируем результат сравнения строк. - Если КоличествоРазличий = ТребуемоеКоличествоРазличий Тогда - СоответствиеСтрокТаблицы1СтрокамТаблицы2.Вставить(СтрокаТаблицы1.НомерСтроки, СтрокаТаблицы2.НомерСтроки); - СтрокаТаблицы2[Пропустить] = Истина; - Прервать; - КонецЕсли; - КонецЦикла; - КонецЦикла; - - Если СоответствиеСтрокТаблицы1СтрокамТаблицы2.Количество() < Таблица1.Количество() И Таблица2.НайтиСтроки(Новый Структура(Пропустить, Ложь)).Количество() > 0 Тогда - Если ТребуемоеКоличествоРазличий < МаксимумРазличий Тогда - НайтиПохожиеСтрокиТаблиц(Таблица1, Таблица2, ТребуемоеКоличествоРазличий + 1, МаксимумРазличий, СоответствиеСтрокТаблицы1СтрокамТаблицы2); - КонецЕсли; - КонецЕсли; - - Возврат СоответствиеСтрокТаблицы1СтрокамТаблицы2; - -КонецФункции - -&НаСервере -Функция СоответствиеСтрокТаблиц(Таблица1, Таблица2) - СоответствиеНомеровСтрок = НайтиПохожиеСтрокиТаблиц(Таблица1, Таблица2); - Результат = Новый Соответствие; - Для Каждого Элемент Из СоответствиеНомеровСтрок Цикл - Результат.Вставить(Таблица1[Элемент.Ключ - 1], Таблица2[Элемент.Значение - 1]); - КонецЦикла; - Возврат Результат; -КонецФункции - -&НаСервере -Функция МаксимальноеКоличествоРазличийМеждуСтрокамиТаблиц(Таблица1, Таблица2) - - МассивИменКолонокТаблицы1 = ПолучитьИменаКолонок(Таблица1); - МассивИменКолонокТаблицы2 = ПолучитьИменаКолонок(Таблица2); - МассивИменКолонокОбеихТаблиц = ОбъединениеМножеств(МассивИменКолонокТаблицы1, МассивИменКолонокТаблицы2); - ВсегоКолонок = МассивИменКолонокОбеихТаблиц.Количество(); - - Возврат ?(ВсегоКолонок = 0, 0, ВсегоКолонок - 1); - -КонецФункции - -&НаСервере -Функция ОбъединениеМножеств(Множество1, Множество2) - - Результат = Новый Массив; - - Для Каждого Элемент Из Множество1 Цикл - Индекс = Результат.Найти(Элемент); - Если Индекс = Неопределено Тогда - Результат.Добавить(Элемент); - КонецЕсли; - КонецЦикла; - - Для Каждого Элемент Из Множество2 Цикл - Индекс = Результат.Найти(Элемент); - Если Индекс = Неопределено Тогда - Результат.Добавить(Элемент); - КонецЕсли; - КонецЦикла; - - Возврат Результат; - -КонецФункции - -&НаСервере -Функция ПолучитьИменаКолонок(Таблица) - - Результат = Новый Массив; - - Для Каждого Колонка Из Таблица.Колонки Цикл - Результат.Добавить(Колонка.Имя); - КонецЦикла; - - Возврат Результат; - -КонецФункции - -&НаСервере -Функция КоличествоРазличийВСтрокахТаблиц(СтрокаТаблицы1, СтрокаТаблицы2) - - Результат = 0; - - Таблица1 = СтрокаТаблицы1.Владелец(); - Таблица2 = СтрокаТаблицы2.Владелец(); - - ОбщиеКолонки = НайтиОбщиеКолонки(Таблица1, Таблица2); - ОстальныеКолонки = НайтиНесовпадающиеКолонки(Таблица1, Таблица2); - - // Каждую колонку, не являющуюся общей считаем как одно различие. - Результат = Результат + ОстальныеКолонки.Количество(); - - // Различия считаем по несовпадающим значениям. - Для Каждого ИмяКолонки Из ОбщиеКолонки Цикл - Если СтрокаТаблицы1[ИмяКолонки] <> СтрокаТаблицы2[ИмяКолонки] Тогда - Результат = Результат + 1; - КонецЕсли; - КонецЦикла; - - Возврат Результат; - -КонецФункции - -&НаСервере -Функция НайтиОбщиеКолонки(Таблица1, Таблица2) - МассивИмен1 = ПолучитьИменаКолонок(Таблица1); - МассивИмен2 = ПолучитьИменаКолонок(Таблица2); - Возврат ПересечениеМножеств(МассивИмен1, МассивИмен2); -КонецФункции - -&НаСервере -Функция НайтиНесовпадающиеКолонки(Таблица1, Таблица2) - МассивИмен1 = ПолучитьИменаКолонок(Таблица1); - МассивИмен2 = ПолучитьИменаКолонок(Таблица2); - Возврат РазностьМножеств(МассивИмен1, МассивИмен2, Истина); -КонецФункции - -&НаСервере -Функция РазностьМножеств(Множество1, Знач Множество2, СимметричнаяРазность = Ложь) - - Результат = Новый Массив; - Множество2 = СкопироватьМассив(Множество2); - - Для Каждого Элемент Из Множество1 Цикл - Индекс = Множество2.Найти(Элемент); - Если Индекс = Неопределено Тогда - Результат.Добавить(Элемент); - Иначе - Множество2.Удалить(Индекс); - КонецЕсли; - КонецЦикла; - - Если СимметричнаяРазность Тогда - Для Каждого Элемент Из Множество2 Цикл - Результат.Добавить(Элемент); - КонецЦикла; - КонецЕсли; - - Возврат Результат; -КонецФункции - -&НаСервере -Функция ПересечениеМножеств(Множество1, Множество2) - - Результат = Новый Массив; - - Для Каждого Элемент Из Множество1 Цикл - Индекс = Множество2.Найти(Элемент); - Если Индекс <> Неопределено Тогда - Результат.Добавить(Элемент); - КонецЕсли; - КонецЦикла; - - Возврат Результат; - -КонецФункции - -&НаСервере -Функция СкопироватьМассив(Массив) - - Результат = Новый Массив; - - Для Каждого Элемент Из Массив Цикл - Результат.Добавить(Элемент); - КонецЦикла; - - Возврат Результат; - -КонецФункции - -&НаСервере -Функция РазличияСтрок(Строка1, Строка2, ПроверяемыеКолонки) - Результат = Новый Массив; - Для Каждого Колонка Из ПроверяемыеКолонки Цикл - Если ТипЗнч(Строка1[Колонка]) = Тип("ХранилищеЗначения") Тогда - Продолжить; // Реквизиты с типом ХранилищеЗначения не сравниваем. - КонецЕсли; - Если Строка1[Колонка] <> Строка2[Колонка] Тогда - Результат.Добавить(Колонка); - КонецЕсли; - КонецЦикла; - Возврат Результат; -КонецФункции - &НаКлиенте Процедура ОткрытьФормуСравненияТабличныхДокументов(ИмяТабличногоДокумента, Версия0, Версия1) diff --git a/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/СравнениеТабличныхДокументов/Module.bsl b/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/СравнениеТабличныхДокументов/Module.bsl index 63cb8cf00..2e6769179 100644 --- a/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/СравнениеТабличныхДокументов/Module.bsl +++ b/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/СравнениеТабличныхДокументов/Module.bsl @@ -123,8 +123,8 @@ #Область Сравнение // Тексты из ячеек табличных документов выгружается в таблицы значений. - ТаблицаЛевогоДокумента = ПолучитьТаблицуЗначенийИзДокумента(ТабличныйДокументЛевый); - ТаблицаПравогоДокумента = ПолучитьТаблицуЗначенийИзДокумента(ТабличныйДокументПравый); + ТаблицаЛевогоДокумента = ПрочитатьТабличныйДокумент(ТабличныйДокументЛевый); + ТаблицаПравогоДокумента = ПрочитатьТабличныйДокумент(ТабличныйДокументПравый); // Сравниваются табличные документы по строкам и подбираются соответствия строк. Соответствия = СформироватьСоответствия(ТаблицаЛевогоДокумента, ТаблицаПравогоДокумента, Истина); @@ -219,7 +219,7 @@ КонецЦикла; - // Ячейки которые были изменены + // Ячейки которые были изменены. Для НомерСтроки1 = 1 По СоответствиеСтрокЛевый.Количество()-1 Цикл НомерСтроки2 = СоответствиеСтрокЛевый[НомерСтроки1].Значение; @@ -286,7 +286,7 @@ КонецФункции &НаСервере -Функция ПолучитьТаблицуЗначенийИзДокумента(ТабличныйДокументИсточник) +Функция ПрочитатьТабличныйДокумент(ТабличныйДокументИсточник) КоличествоСтолбцов = ТабличныйДокументИсточник.ШиринаТаблицы; diff --git a/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ФормаСписка/Form.form index 78e40c205..fd7033728 100644 --- a/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ВерсииОбъектов/Forms/ФормаСписка/Form.form @@ -460,7 +460,6 @@ true true - 70 true true true @@ -524,7 +523,9 @@ true - + + true +
                true
                InformationRegister.ВерсииОбъектов diff --git a/SSL/src/InformationRegisters/ВерсииОбъектов/ManagerModule.bsl b/SSL/src/InformationRegisters/ВерсииОбъектов/ManagerModule.bsl index 13a22927d..020a5f24a 100644 --- a/SSL/src/InformationRegisters/ВерсииОбъектов/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/ВерсииОбъектов/ManagerModule.bsl @@ -42,6 +42,1429 @@ КонецПроцедуры + +Процедура СформироватьОтчетПоИзменениям(ПараметрыОтчета, АдресРезультата) Экспорт + // Хранит переходную разобранную версию объекта, + // чтобы сократить число разборов XML. + Перем ВерсияОбъекта; + + // "Сквозной" идентификатор измененных строк в версиях. + Перем счетчикУникальныйИд; + + СсылкаНаОбъект = ПараметрыОтчета.СсылкаНаОбъект; + СписокВерсий = ПараметрыОтчета.СписокВерсий; + + ОбщийШаблон = РегистрыСведений.ВерсииОбъектов.ПолучитьМакет("СтандартныйМакетПредставленияОбъекта"); + ТЧОтчета = Новый ТабличныйДокумент; + + // Формируем массив номеров версий (так как некоторые могут отсутствовать + // и иметь непоследовательную нумерацию), массив отсортирован по возрастанию. + МассивНомеровВерсий = СписокВерсий.ВыгрузитьЗначения(); + + // Количество версий объекта хранящихся в базе (k). + // Для формирования отчета необходимо сделать (k-1) сравнений. + // Фактически это означает, что у таблиц изменений будет (k) колонок. + КоличествоВерсийОбъекта = МассивНомеровВерсий.Количество(); + + // Хранит в себе все изменения реквизитов имеет две размерности: + // первая (строки) содержит значения наименований реквизитов объекта + // вторая (столбцы) содержит идентификацию версии объекта и характеристику + // изменения идентификация версии это строка которая однозначно идентифицирует + // версию объекта среди остальных и сообщает дополнительную информацию по изменению. + ТаблицаИзмененийРеквизитов = Новый ТаблицаЗначений; + ПодготовитьКолонкиТаблицИзмененийРеквизитов(ТаблицаИзмененийРеквизитов, МассивНомеровВерсий); + + // Хранит в себе изменения табличных частей в виде соответствий имен + // таблиц значений объекта истории изменений этой таблицы значений + // каждое соответствие - табличная часть + // первая (строки) содержит значения наименований полей табличной части + // вторая (столбцы) содержит идентификацию версии объекта + // идентификация версии это строка которая однозначно идентифицирует версию + // объекта среди остальных и сообщает дополнительную информацию по изменению. + ТаблицаИзмененийТабличныхЧастей = Новый Соответствие; + + ТабличныеДокументы = Новый СписокЗначений; + ТаблицаИзмененийТабличныхДокументов = Новый ТаблицаЗначений; + ТаблицаИзмененийТабличныхДокументов.Колонки.Добавить("Наименование"); + ТаблицаИзмененийТабличныхДокументов.Колонки.Добавить("Представление"); + // + + // Формируем начальные версии объекта, значения которых показываются всегда + // (при наличии последующих изменений). + ВерсияОбъекта_Пред = СчитатьНачальныеЗначенияРеквизитовИТабличныхЧастей(ТаблицаИзмененийРеквизитов, ТаблицаИзмененийТабличныхЧастей, + КоличествоВерсийОбъекта, МассивНомеровВерсий, СсылкаНаОбъект); + + ТабличныеДокументы.Добавить(ВерсияОбъекта_Пред.ТабличныеДокументы); + ТаблицаИзмененийТабличныхДокументов.Колонки.Добавить("Версия" + Формат(МассивНомеровВерсий[0], "ЧГ=0")); + + счетчикУникальныйИд = ПолучитьУникальныеУникальныйИд(ТаблицаИзмененийТабличныхЧастей, "Версия" + Формат(МассивНомеровВерсий[0], "ЧГ=0")); + + Для ИндексВерсии = 2 По МассивНомеровВерсий.Количество() Цикл + НомерВерсии = МассивНомеровВерсий[ИндексВерсии-1]; + НомерПредыдущейВерсии = "Версия" + (Формат(МассивНомеровВерсий[ИндексВерсии-2], "ЧГ=0")); + ИмяКолонкиТекущейВерсии = "Версия" + Формат(НомерВерсии, "ЧГ=0"); + + РезультатСравнения = РассчитатьИзменения(НомерВерсии, ВерсияОбъекта_Пред, ВерсияОбъекта, СсылкаНаОбъект); + + ТабличныеДокументы.Добавить(ВерсияОбъекта.ТабличныеДокументы); + + // Заполнение таблицы отчета по реквизитам. + ЗаполнитьХарактеристикуИзмененияРеквизита(РезультатСравнения["Реквизиты"]["и"], + "И", ТаблицаИзмененийРеквизитов, ИмяКолонкиТекущейВерсии, ВерсияОбъекта); + ЗаполнитьХарактеристикуИзмененияРеквизита(РезультатСравнения["Реквизиты"]["д"], + "Д", ТаблицаИзмененийРеквизитов, ИмяКолонкиТекущейВерсии, ВерсияОбъекта); + ЗаполнитьХарактеристикуИзмененияРеквизита(РезультатСравнения["Реквизиты"]["у"], + "У", ТаблицаИзмененийРеквизитов, ИмяКолонкиТекущейВерсии, ВерсияОбъекта); + + // Изменения в табличных частях. + ИзмененияТабличныхЧастей = РезультатСравнения["ТабличныеЧасти"]["и"]; + + // Данная функциональность пока не реализуется. + ДобавленныеТабличныеЧасти = РезультатСравнения["ТабличныеЧасти"]["д"]; + УдаленныеТабличныеЧасти = РезультатСравнения["ТабличныеЧасти"]["у"]; + + Для Каждого ЭлементСоответствия Из ВерсияОбъекта.ТабличныеЧасти Цикл + ИмяТаблицы = ЭлементСоответствия.Ключ; + + Если ЗначениеЗаполнено(ДобавленныеТабличныеЧасти.Найти(ИмяТаблицы)) + Или ЗначениеЗаполнено(УдаленныеТабличныеЧасти.Найти(ИмяТаблицы)) Тогда + Продолжить; + КонецЕсли; + + ТаблицаИзмененийТабличныхЧастей[ИмяТаблицы][ИмяКолонкиТекущейВерсии] = + ВерсияОбъекта.ТабличныеЧасти[ИмяТаблицы].Скопировать(); + + СсылкаНаВерсиюТаблицы = ТаблицаИзмененийТабличныхЧастей[ИмяТаблицы][ИмяКолонкиТекущейВерсии]; + СсылкаНаВерсиюТаблицы.Колонки.Добавить("Версионирование_ИдСтроки"); + Для Каждого СтрокаТаблицы Из СсылкаНаВерсиюТаблицы Цикл + СтрокаТаблицы.Версионирование_ИдСтроки = СтрокаТаблицы.НомерСтроки; + КонецЦикла; + + СсылкаНаВерсиюТаблицы.Колонки.Добавить("Версионирование_Модификация"); + СсылкаНаВерсиюТаблицы.ЗаполнитьЗначения(Ложь, "Версионирование_Модификация"); + + СсылкаНаВерсиюТаблицы.Колонки.Добавить("Версионирование_Изменения", Новый ОписаниеТипов("Массив")); + + ТаблицаСИзменениями = ИзмененияТабличныхЧастей.Получить(ИмяТаблицы); + Если ТаблицаСИзменениями <> Неопределено Тогда + ИзмененныеСтроки = ТаблицаСИзменениями["И"]; + ДобавленныеСтроки = ТаблицаСИзменениями["Д"]; + УдаленныеСтроки = ТаблицаСИзменениями["У"]; + + РазмерностьВТЧ0 = ВерсияОбъекта_Пред.ТабличныеЧасти[ИмяТаблицы].Количество(); + Если РазмерностьВТЧ0 = 0 Тогда + ПомеченныеВТЧ0 = Новый Массив; + Иначе + ПомеченныеВТЧ0 = Новый Массив(РазмерностьВТЧ0); + КонецЕсли; + + РазмерностьВТЧ1 = ВерсияОбъекта.ТабличныеЧасти[ИмяТаблицы].Количество(); + Если РазмерностьВТЧ1 = 0 Тогда + ПомеченныеВТЧ1 = Новый Массив; + Иначе + ПомеченныеВТЧ1 = Новый Массив(РазмерностьВТЧ1); + КонецЕсли; + + Для Каждого ЭлементТЧ Из ИзмененныеСтроки Цикл + СтрокаТИЗ = ТаблицаИзмененийТабличныхЧастей[ИмяТаблицы][НомерПредыдущейВерсии][ЭлементТЧ.ИндексВТЧ0-1]; + СсылкаНаВерсиюТаблицы[ЭлементТЧ.ИндексВТЧ1-1].Версионирование_ИдСтроки = СтрокаТИЗ.Версионирование_ИдСтроки; + СсылкаНаВерсиюТаблицы[ЭлементТЧ.ИндексВТЧ1-1].Версионирование_Модификация = "И"; + СсылкаНаВерсиюТаблицы[ЭлементТЧ.ИндексВТЧ1-1].Версионирование_Изменения = ЭлементТЧ.Различия; + КонецЦикла; + + Для Каждого ЭлементТЧ Из ДобавленныеСтроки Цикл + СсылкаНаВерсиюТаблицы[ЭлементТЧ.ИндексВТЧ1-1].Версионирование_ИдСтроки = УвеличитьСчетчик(счетчикУникальныйИд, ИмяТаблицы); + СсылкаНаВерсиюТаблицы[ЭлементТЧ.ИндексВТЧ1-1].Версионирование_Модификация = "Д"; + КонецЦикла; + + // Необходимо заполнить всем элементам УникальныйИд (сопоставить с предыдущей версией). + Для Индекс = 1 По СсылкаНаВерсиюТаблицы.Количество() Цикл + Если СсылкаНаВерсиюТаблицы[Индекс-1].Версионирование_ИдСтроки = Неопределено Тогда + // Найдена строка, для которой необходимо найти соответствие в предыдущей таблице. + СтрокаТЧ = СсылкаНаВерсиюТаблицы[Индекс-1]; + + ПараметрыОтбора = Новый Структура; + ОбщиеКолонки = НайтиОбщиеКолонки(СсылкаНаВерсиюТаблицы, ТаблицаИзмененийТабличныхЧастей[ИмяТаблицы][НомерПредыдущейВерсии]); + Для Каждого ИмяКолонки Из ОбщиеКолонки Цикл + Если (ИмяКолонки <> "Версионирование_ИдСтроки") И (ИмяКолонки <> "Версионирование_Модификация") Тогда + ПараметрыОтбора.Вставить(ИмяКолонки, СтрокаТЧ[ИмяКолонки]); + КонецЕсли; + КонецЦикла; + + МассивСтрокПредыдущейТЧ = ТаблицаИзмененийТабличныхЧастей[ИмяТаблицы][НомерПредыдущейВерсии].НайтиСтроки(ПараметрыОтбора); + + ПараметрыОтбора.Вставить("Версионирование_Модификация", Неопределено); + МассивСтрокТекущейТЧ = СсылкаНаВерсиюТаблицы.НайтиСтроки(ПараметрыОтбора); + + Для ИндПоТЗ_Текущей = 1 По МассивСтрокТекущейТЧ.Количество() Цикл + Если ИндПоТЗ_Текущей <= МассивСтрокПредыдущейТЧ.Количество() Тогда + МассивСтрокТекущейТЧ[ИндПоТЗ_Текущей-1].Версионирование_ИдСтроки = МассивСтрокПредыдущейТЧ[ИндПоТЗ_Текущей-1].Версионирование_ИдСтроки; + КонецЕсли; + МассивСтрокТекущейТЧ[ИндПоТЗ_Текущей-1].Версионирование_Модификация = Ложь; + КонецЦикла; + КонецЕсли; + КонецЦикла; + Для Каждого ЭлементТЧ Из УдаленныеСтроки Цикл + СтрокаМнимая = СсылкаНаВерсиюТаблицы.Добавить(); + СтрокаМнимая.Версионирование_ИдСтроки = ТаблицаИзмененийТабличныхЧастей[ИмяТаблицы][НомерПредыдущейВерсии][ЭлементТЧ.ИндексВТЧ0-1].Версионирование_ИдСтроки; + СтрокаМнимая.Версионирование_Модификация = "У"; + КонецЦикла; + КонецЕсли; + КонецЦикла; + + ТаблицаИзмененийТабличныхДокументов.Колонки.Добавить(ИмяКолонкиТекущейВерсии); + + РезультатТаблица = РезультатСравнения["ТабличныеДокументы"]["и"]; + Для Каждого ТекСтрока Из РезультатТаблица Цикл + СтрокаТаблицыИзменений = ТаблицаИзмененийТабличныхДокументов.Найти(ТекСтрока.Значение, "Наименование"); + Если СтрокаТаблицыИзменений = Неопределено Тогда + СтрокаТаблицыИзменений = ТаблицаИзмененийТабличныхДокументов.Добавить(); + СтрокаТаблицыИзменений.Наименование = ТекСтрока.Значение; + СтрокаТаблицыИзменений.Представление = ТекСтрока.Представление; + КонецЕсли; + СтрокаТаблицыИзменений[ИмяКолонкиТекущейВерсии] = "И"; + КонецЦикла; + + РезультатТаблица = РезультатСравнения["ТабличныеДокументы"]["д"]; + Для Каждого ТекСтрока Из РезультатТаблица Цикл + СтрокаТаблицыИзменений = ТаблицаИзмененийТабличныхДокументов.Найти(ТекСтрока.Значение, "Наименование"); + Если СтрокаТаблицыИзменений = Неопределено Тогда + СтрокаТаблицыИзменений = ТаблицаИзмененийТабличныхДокументов.Добавить(); + СтрокаТаблицыИзменений.Наименование = ТекСтрока.Значение; + СтрокаТаблицыИзменений.Представление = ТекСтрока.Представление; + КонецЕсли; + СтрокаТаблицыИзменений[ИмяКолонкиТекущейВерсии] = "Д"; + КонецЦикла; + + РезультатТаблица = РезультатСравнения["ТабличныеДокументы"]["у"]; + Для Каждого ТекСтрока Из РезультатТаблица Цикл + СтрокаТаблицыИзменений = ТаблицаИзмененийТабличныхДокументов.Найти(ТекСтрока.Значение, "Наименование"); + Если СтрокаТаблицыИзменений = Неопределено Тогда + СтрокаТаблицыИзменений = ТаблицаИзмененийТабличныхДокументов.Добавить(); + СтрокаТаблицыИзменений.Наименование = ТекСтрока.Значение; + СтрокаТаблицыИзменений.Представление = ТекСтрока.Представление; + КонецЕсли; + СтрокаТаблицыИзменений[ИмяКолонкиТекущейВерсии] = "У"; + КонецЦикла; + + ВерсияОбъекта_Пред = ВерсияОбъекта; + КонецЦикла; + + Параметры = Новый Структура; + Параметры.Вставить("ТаблицаИзмененийРеквизитов", ТаблицаИзмененийРеквизитов); + Параметры.Вставить("ТаблицаИзмененийТабличныхЧастей", ТаблицаИзмененийТабличныхЧастей); + Параметры.Вставить("ТаблицаИзмененийТабличныхДокументов", ТаблицаИзмененийТабличныхДокументов); + Параметры.Вставить("счетчикУникальныйИд", счетчикУникальныйИд); + Параметры.Вставить("СписокВерсий", СписокВерсий); + Параметры.Вставить("ТЧОтчета", ТЧОтчета); + Параметры.Вставить("ОбщийШаблон", ОбщийШаблон); + Параметры.Вставить("СсылкаНаОбъект", СсылкаНаОбъект); + ВывестиРезультатыКомпоновкиВОтчет(Параметры); + + ШаблонЛегенда = ОбщийШаблон.ПолучитьОбласть("Легенда"); + ТЧОтчета.Вывести(ШаблонЛегенда); + + ПоместитьВоВременноеХранилище(ТЧОтчета, АдресРезультата); +КонецПроцедуры + +Процедура ВывестиИзмененияРеквизитов(ТЧОтчета, ТаблицаИзмененийРеквизитов, МассивНомеровВерсий, ОбщийШаблон, СсылкаНаОбъект) + + ОбластьШапкаРеквизитов = ОбщийШаблон.ПолучитьОбласть("ШапкаРеквизитов"); + ТЧОтчета.Вывести(ОбластьШапкаРеквизитов); + ТЧОтчета.НачатьГруппуСтрок("ГруппаРеквизитов"); + + Для Каждого ЭлементМодРеквизит Из ТаблицаИзмененийРеквизитов Цикл + Если ЭлементМодРеквизит.Версионирование_Модификация = Истина Тогда + + СтруктураОписанияНаименования = ВерсионированиеОбъектов.НаименованиеВыводимогоРеквизита(СсылкаНаОбъект, ЭлементМодРеквизит.Наименование); + Если Не СтруктураОписанияНаименования.ВыводитьРеквизит Тогда + Продолжить; + КонецЕсли; + + ВыводимоеНаименование = СтруктураОписанияНаименования.ВыводимоеНаименование; + + ПустаяЯчейка = ОбщийШаблон.ПолучитьОбласть("ПустаяЯчейка"); + ТЧОтчета.Вывести(ПустаяЯчейка);; + + НаименованиеРеквизита = ОбщийШаблон.ПолучитьОбласть("НаименованиеРеквизитаПоля"); + НаименованиеРеквизита.Параметры.НаименованиеРеквизитаПоля = ВыводимоеНаименование; + ТЧОтчета.Присоединить(НаименованиеРеквизита); + + ИндексПоВерсиямРеквизитов = МассивНомеровВерсий.Количество(); + + Пока ИндексПоВерсиямРеквизитов >= 1 Цикл + СтруктураХарактеристикаИзменения = ЭлементМодРеквизит["Версия" + Формат(МассивНомеровВерсий[ИндексПоВерсиямРеквизитов-1], "ЧГ=0")]; + + ПредставлениеЗначенияРеквизита = ""; + ЗначениеРеквизита = ""; + Изменение = Неопределено; + ТипЗначения = ""; + + // Если в текущей версии не было изменений реквизита, то пропускаем до следующей версии. + Если ТипЗнч(СтруктураХарактеристикаИзменения) = Тип("Строка") Тогда + + ПредставлениеЗначенияРеквизита = Строка(ЗначениеРеквизита); + + ИначеЕсли СтруктураХарактеристикаИзменения <> Неопределено Тогда + Если СтруктураХарактеристикаИзменения.ТипИзменения = "У" Тогда + Иначе + ЗначениеРеквизита = СтруктураХарактеристикаИзменения.Значение.ЗначениеРеквизита; + ПредставлениеЗначенияРеквизита = Строка(ЗначениеРеквизита); + КонецЕсли; + // Получаем структуру изменения реквизита в текущей версии. + Изменение = СтруктураХарактеристикаИзменения.ТипИзменения; + КонецЕсли; + + Если ПредставлениеЗначенияРеквизита = "" Тогда + ПредставлениеЗначенияРеквизита = ЗначениеРеквизита; + Если ПредставлениеЗначенияРеквизита = "" Тогда + ПредставлениеЗначенияРеквизита = " "; + КонецЕсли; + КонецЕсли; + + Если Изменение = Неопределено Тогда + ОбластьЗначениеРеквизита = ОбщийШаблон.ПолучитьОбласть("ИсходноеЗначениеРеквизита"); + ОбластьЗначениеРеквизита.Параметры.ЗначениеРеквизита = ПредставлениеЗначенияРеквизита; + ИначеЕсли Изменение = "И" Тогда + ОбластьЗначениеРеквизита = ОбщийШаблон.ПолучитьОбласть("ИзмененноеЗначениеРеквизита"); + ОбластьЗначениеРеквизита.Параметры.ЗначениеРеквизита = ПредставлениеЗначенияРеквизита; + ИначеЕсли Изменение = "У" Тогда + ОбластьЗначениеРеквизита = ОбщийШаблон.ПолучитьОбласть("УдаленныйРеквизит"); + ОбластьЗначениеРеквизита.Параметры.ЗначениеРеквизита = ПредставлениеЗначенияРеквизита; + ИначеЕсли Изменение = "Д" Тогда + ОбластьЗначениеРеквизита = ОбщийШаблон.ПолучитьОбласть("ДобавленныйРеквизит"); + ОбластьЗначениеРеквизита.Параметры.ЗначениеРеквизита = ПредставлениеЗначенияРеквизита; + КонецЕсли; + + ТЧОтчета.Присоединить(ОбластьЗначениеРеквизита); + + ИндексПоВерсиямРеквизитов = ИндексПоВерсиямРеквизитов - 1; + КонецЦикла; + КонецЕсли; + КонецЦикла; + + ТЧОтчета.ЗакончитьГруппуСтрок(); + +КонецПроцедуры + +Процедура ВывестиИзмененияТабличныхЧастей(ТЧОтчета, ТаблицаИзмененийТабличныхЧастей, МассивНомеровВерсий, + счетчикУникальныйИд, ОбщийШаблон, СсылкаНаОбъект) + + ПрефиксСлужебнойКолонки = "Версионирование_"; + ЗаголовокСекцииТабличныхЧастейВыводился = Ложь; + + ШаблонСвободнаяСтрока = ОбщийШаблон.ПолучитьОбласть("СвободнаяСтрока"); + ШаблонОчереднаяСтрокаТЧ = ОбщийШаблон.ПолучитьОбласть("ШапкаСтрокиТабличнойЧасти"); + + ТЧОтчета.Вывести(ШаблонСвободнаяСтрока); + + // цикл по всем измененным + Для Каждого ЭлементИзмененнаяТЧ Из ТаблицаИзмененийТабличныхЧастей Цикл + ИмяТабличнойЧасти = ЭлементИзмененнаяТЧ.Ключ; + ВерсииТекущейТЧ = ЭлементИзмененнаяТЧ.Значение; + + ТекущаяТабличнаяЧастьИзменилась = Ложь; + + Для ТекСчетчикУникальныйИд = 1 По СчетчикУникальныйИд[ИмяТабличнойЧасти] Цикл + + СтрокаУникальныйИдИзменена = Ложь; + // В случае если найдено изменение, необходимо так же показать изначальную версию, + // от которой происходят изменения. + НачальнаяВерсияЗаполнена = Ложь; + + // Поиск по всем версиям изменений по текущей строке (УникальныйИд = ТекСчетчикУникальныйИд) + // если строка была удалена, то поиск можно прервать и перейти к следующей + // строке, предварительно подсветив "удалено" цветом удаленной сущности. + ИндексПоВерсиям = МассивНомеровВерсий.Количество(); + + // --------------------------------------------------------------------------------- + // просмотрим версии наперед, чтобы быть уверенными, что изменения встречаются --- + + МодифицированностьСтроки = Ложь; + + Пока ИндексПоВерсиям >= 1 Цикл + ТекущаяКолонкаВерсииТЧ = "Версия" + Формат(МассивНомеровВерсий[ИндексПоВерсиям-1], "ЧГ=0"); + ТекущаяТЧВерсии = ВерсииТекущейТЧ[ТекущаяКолонкаВерсииТЧ]; + + НайденнаяСтрока = Неопределено; + Если ТекущаяТЧВерсии.Колонки.Найти("Версионирование_ИдСтроки") <> Неопределено Тогда + НайденнаяСтрока = ТекущаяТЧВерсии.Найти(ТекСчетчикУникальныйИд, "Версионирование_ИдСтроки"); + КонецЕсли; + + Если НайденнаяСтрока <> Неопределено Тогда + Если (НайденнаяСтрока.Версионирование_Модификация <> Неопределено) Тогда + Если (ТипЗнч(НайденнаяСтрока.Версионирование_Модификация) = Тип("Строка") + ИЛИ (ТипЗнч(НайденнаяСтрока.Версионирование_Модификация) = Тип("Булево") + И НайденнаяСтрока.Версионирование_Модификация = Истина)) Тогда + МодифицированностьСтроки = Истина; + КонецЕсли; + КонецЕсли; + КонецЕсли; + ИндексПоВерсиям = ИндексПоВерсиям - 1; + КонецЦикла; + + Если Не МодифицированностьСтроки Тогда + Продолжить; + КонецЕсли; + + // --------------------------------------------------------------------------------- + + // Приступаем к отображению версий в табличный документ. + ИндексПоВерсиям = МассивНомеровВерсий.Количество(); + + ПромежутокМеждуЗаполнениями = 0; + + // Цикл по всем версиям. Пытаемся найти изменения по строке в каждой версии + // по ее УникальныйИд. + Пока ИндексПоВерсиям >= 1 Цикл + ПромежутокМеждуЗаполнениями = ПромежутокМеждуЗаполнениями + 1; + ТекущаяКолонкаВерсииТЧ = "Версия" + Формат(МассивНомеровВерсий[ИндексПоВерсиям-1]); + // Табличная часть текущей версии (таблица значений с признаками модификации). + ТекущаяТЧВерсии = ВерсииТекущейТЧ[ТекущаяКолонкаВерсииТЧ]; + НайденнаяСтрока = ТекущаяТЧВерсии.Найти(ТекСчетчикУникальныйИд, "Версионирование_ИдСтроки"); + + // В очередной версии найдено изменение строки (возможно это первое изменение с конца). + Если НайденнаяСтрока <> Неопределено Тогда + + // Блок для вывода шапки секции всех табличных частей. + Если Не ЗаголовокСекцииТабличныхЧастейВыводился Тогда + ЗаголовокСекцииТабличныхЧастейВыводился = Истина; + ШаблонОбщаяШапкаСекцииТЧ = ОбщийШаблон.ПолучитьОбласть("ШапкаТабличныхЧастей"); + ТЧОтчета.Вывести(ШаблонОбщаяШапкаСекцииТЧ); + ТЧОтчета.НачатьГруппуСтрок("ГруппаТабличныхЧастей"); + ТЧОтчета.Вывести(ШаблонСвободнаяСтрока); + КонецЕсли; + + // Блок для вывода шапки текущей обрабатываемой табличной части. + Если Не ТекущаяТабличнаяЧастьИзменилась Тогда + ТекущаяТабличнаяЧастьИзменилась = Истина; + ШаблонШапкаТекущейТЧ = ОбщийШаблон.ПолучитьОбласть("ШапкаТабличнойЧасти"); + + ПредставлениеТабличнойЧасти = ИмяТабличнойЧасти; + ОписаниеТабличнойЧасти = СсылкаНаОбъект.Метаданные().ТабличныеЧасти.Найти(ИмяТабличнойЧасти); + Если ОписаниеТабличнойЧасти <> Неопределено Тогда + ПредставлениеТабличнойЧасти = ОписаниеТабличнойЧасти.Представление(); + КонецЕсли; + + ШаблонШапкаТекущейТЧ.Параметры.НаименованиеТабличнойЧасти = ПредставлениеТабличнойЧасти; + ТЧОтчета.Вывести(ШаблонШапкаТекущейТЧ); + ТЧОтчета.НачатьГруппуСтрок("ТабличнаяЧасть"+ИмяТабличнойЧасти); + ТЧОтчета.Вывести(ШаблонСвободнаяСтрока); + КонецЕсли; + + Модификация = НайденнаяСтрока.Версионирование_Модификация; + + Если СтрокаУникальныйИдИзменена = Ложь Тогда + СтрокаУникальныйИдИзменена = Истина; + + ШаблонШапкаСтрокиТЧ = ОбщийШаблон.ПолучитьОбласть("ШапкаСтрокиТабличнойЧасти"); + ШаблонШапкаСтрокиТЧ.Параметры.НомерСтрокиТабличнойЧасти = ТекСчетчикУникальныйИд; + ТЧОтчета.Вывести(ШаблонШапкаСтрокиТЧ); + ТЧОтчета.НачатьГруппуСтрок("ГруппаСтрок"+ИмяТабличнойЧасти+ТекСчетчикУникальныйИд); + + ТипВывода = ""; + Если Модификация = "У" Тогда + ТипВывода = "У" + КонецЕсли; + МассивЗаполнения = Новый Массив; + Для Каждого Колонка Из ТекущаяТЧВерсии.Колонки Цикл + Если СтрНайти(Колонка.Имя, ПрефиксСлужебнойКолонки) = 1 Тогда + Продолжить; + КонецЕсли; + МассивЗаполнения.Добавить(Колонка.Имя); + КонецЦикла; + + ПустойСектор = СформироватьПустойСектор(ОбщийШаблон, ТекущаяТЧВерсии.Колонки.Количество()-2); + ПустойСекторЗаполняемый = СформироватьПустойСектор(ОбщийШаблон, ТекущаяТЧВерсии.Колонки.Количество()-2, ТипВывода); + Секция = СформироватьСекторСтрокиТЧ(ОбщийШаблон, МассивЗаполнения, ТипВывода); + + ТЧОтчета.Присоединить(ПустойСектор); + ТЧОтчета.Присоединить(Секция); + КонецЕсли; + + Пока ПромежутокМеждуЗаполнениями > 1 Цикл + ТЧОтчета.Присоединить(ПустойСекторЗаполняемый); + ПромежутокМеждуЗаполнениями = ПромежутокМеждуЗаполнениями - 1; + КонецЦикла; + + ПромежутокМеждуЗаполнениями = 0; + + // Теперь заполняем очередную измененную табличную строку. + МассивЗаполнения = Новый СписокЗначений; + Для Каждого Колонка Из ТекущаяТЧВерсии.Колонки Цикл + Если СтрНайти(Колонка.Имя, ПрефиксСлужебнойКолонки) = 1 Тогда + Продолжить; + КонецЕсли; + + Представление = Строка(НайденнаяСтрока[Колонка.Имя]); + МассивЗаполнения.Добавить(НайденнаяСтрока["Версионирование_Изменения"].Найти(Колонка.Имя) <> Неопределено, Представление); + КонецЦикла; + + Если ТипЗнч(Модификация) = Тип("Булево") Тогда + ТипВывода = ""; + Иначе + ТипВывода = Модификация; + КонецЕсли; + + Секция = СформироватьСекторСтрокиТЧ(ОбщийШаблон, МассивЗаполнения, ТипВывода); + ТЧОтчета.Присоединить(Секция); + КонецЕсли; + ИндексПоВерсиям = ИндексПоВерсиям - 1; + КонецЦикла; + + Если СтрокаУникальныйИдИзменена Тогда + ТЧОтчета.ЗакончитьГруппуСтрок(); + ТЧОтчета.Вывести(ШаблонСвободнаяСтрока); + КонецЕсли; + + КонецЦикла; + + Если ТекущаяТабличнаяЧастьИзменилась Тогда + ТЧОтчета.ЗакончитьГруппуСтрок(); + ТЧОтчета.Вывести(ШаблонСвободнаяСтрока); + КонецЕсли; + + КонецЦикла; + + Если ЗаголовокСекцииТабличныхЧастейВыводился Тогда + ТЧОтчета.ЗакончитьГруппуСтрок(); + ТЧОтчета.Вывести(ШаблонСвободнаяСтрока); + КонецЕсли; + +КонецПроцедуры + +Процедура ВывестиИзмененияТабличныхДокументов(ТЧОтчета, МассивНомеровВерсий, ТаблицаИзмененийТабличныхДокументов, ОбщийШаблон) + + Если ТаблицаИзмененийТабличныхДокументов.Количество() = 0 Тогда + Возврат; + КонецЕсли; + + ШаблонЗаголовокТабличныеДокументы = ОбщийШаблон.ПолучитьОбласть("ШапкаТабличныхДокументов"); + ТЧОтчета.Вывести(ШаблонЗаголовокТабличныеДокументы); + + ТЧОтчета.НачатьГруппуСтрок("ГруппаТабличныхДокументов"); + + ШаблонПустаяСтрока = ОбщийШаблон.ПолучитьОбласть("СвободнаяСтрока"); + ТЧОтчета.Вывести(ШаблонПустаяСтрока); + + ШаблонСтрокаТабличныеДокументы = ОбщийШаблон.ПолучитьОбласть("ШапкаТабличногоДокумента"); + + ШаблонЯчейкаНеИзменилась = ОбщийШаблон.ПолучитьОбласть("ТабличныеДокументыИдентичны"); + ШаблонЯчейкаИзменилась = ОбщийШаблон.ПолучитьОбласть("ТабличныеДокументыРазличаются"); + ШаблонЯчейкаДобавлена = ОбщийШаблон.ПолучитьОбласть("ТабличныеДокументыДобавлен"); + ШаблонЯчейкаУдалена = ОбщийШаблон.ПолучитьОбласть("ТабличныеДокументыУдален"); + + Для Каждого текСтрока Из ТаблицаИзмененийТабличныхДокументов Цикл + ШаблонСтрокаТабличныеДокументы.Параметры.НаименованиеТабличногоДокумента = текСтрока.Представление; + ТЧОтчета.Вывести(ШаблонСтрокаТабличныеДокументы); + ВГраница = МассивНомеровВерсий.ВГраница(); + Для Индекс = 0 По ВГраница Цикл + ИндексНомераВерсии = ВГраница-Индекс; + НомерВерсии = МассивНомеровВерсий[ИндексНомераВерсии]; + ИмяКолонки = "Версия" + Формат(НомерВерсии, "ЧГ=0"); + + Если ТекСтрока[ИмяКолонки] = "И" Тогда + Область = ТЧОтчета.Присоединить(ШаблонЯчейкаИзменилась); + НомерВерсии0 = Формат(НомерВерсии, "ЧГ=0"); + НомерВерсии1 = Формат(МассивНомеровВерсий[ИндексНомераВерсии-1], "ЧГ=0"); + ШаблонТекста = НСтр("ru='сравнить версию №%1 с версией №%2'"); + Область.Текст = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонТекста, НомерВерсии0, НомерВерсии1); + Область.Расшифровка = Новый Структура("Сравнить, Версия0, Версия1", + текСтрока.Наименование, ИндексНомераВерсии, ИндексНомераВерсии-1); + + ИначеЕсли текСтрока[ИмяКолонки] = "У" Тогда + Область = ТЧОтчета.Присоединить(ШаблонЯчейкаУдалена); + Область.Текст = НСтр("ru='Сохранение изменений табличного документа отключено'"); + + ИначеЕсли текСтрока[ИмяКолонки] = "Д" Тогда + Область = ТЧОтчета.Присоединить(ШаблонЯчейкаДобавлена); + Область.Текст = НСтр("ru='открыть'"); + Область.Расшифровка = Новый Структура("Открыть, Версия", текСтрока.Наименование, ИндексНомераВерсии); + + Иначе + Область = ТЧОтчета.Присоединить(ШаблонЯчейкаНеИзменилась); + + КонецЕсли; + КонецЦикла; + ТЧОтчета.Вывести(ШаблонПустаяСтрока); + КонецЦикла; + + ТЧОтчета.ЗакончитьГруппуСтрок(); + ТЧОтчета.Вывести(ШаблонПустаяСтрока); + +КонецПроцедуры + +Функция ВывестиРезультатыКомпоновкиВОтчет(Параметры) + ТаблицаИзмененийРеквизитов = Параметры.ТаблицаИзмененийРеквизитов; + ТаблицаИзмененийТабличныхЧастей = Параметры.ТаблицаИзмененийТабличныхЧастей; + ТаблицаИзмененийТабличныхДокументов = Параметры.ТаблицаИзмененийТабличныхДокументов; + счетчикУникальныйИд = Параметры.счетчикУникальныйИд; + СписокВерсий = Параметры.СписокВерсий; + ТЧОтчета = Параметры.ТЧОтчета; + ОбщийШаблон = Параметры.ОбщийШаблон; + СсылкаНаОбъект = Параметры.СсылкаНаОбъект; + + МассивНомеровВерсий = СписокВерсий.ВыгрузитьЗначения(); + + ЧислоИзменившихсяРеквизитов = РассчитатьЧислоИзменившихсяРеквизитов(ТаблицаИзмененийРеквизитов, МассивНомеровВерсий); + ЧислоВерсий = МассивНомеровВерсий.Количество(); + + ТЧОтчета.Очистить(); + ВывестиШапку(ТЧОтчета, СписокВерсий, ЧислоВерсий, ОбщийШаблон, СсылкаНаОбъект); + + Если ЧислоИзменившихсяРеквизитов = 0 Тогда + ОбластьШапкаРеквизитов = ОбщийШаблон.ПолучитьОбласть("ШапкаРеквизитов"); + ТЧОтчета.Вывести(ОбластьШапкаРеквизитов); + ТЧОтчета.НачатьГруппуСтрок("ГруппаРеквизитов"); + ОбластьРеквизитыНеИзменялись = ОбщийШаблон.ПолучитьОбласть("РеквизитыНеИзменялись"); + ТЧОтчета.Вывести(ОбластьРеквизитыНеИзменялись); + ТЧОтчета.ЗакончитьГруппуСтрок(); + Иначе + ВывестиИзмененияРеквизитов(ТЧОтчета, ТаблицаИзмененийРеквизитов, МассивНомеровВерсий, ОбщийШаблон, СсылкаНаОбъект); + КонецЕсли; + + ВывестиИзмененияТабличныхЧастей(ТЧОтчета, ТаблицаИзмененийТабличныхЧастей, МассивНомеровВерсий, счетчикУникальныйИд, ОбщийШаблон, СсылкаНаОбъект); + ВывестиИзмененияТабличныхДокументов(ТЧОтчета, МассивНомеровВерсий, ТаблицаИзмененийТабличныхДокументов, ОбщийШаблон); + + ТЧОтчета.ИтогиСнизу = Ложь; + ТЧОтчета.ОтображатьСетку = Ложь; + ТЧОтчета.Защита = Ложь; + ТЧОтчета.ТолькоПросмотр = Истина; + +КонецФункции + +Функция ВывестиШапку(ТЧОтчета, СписокВерсий, ЧислоВерсий, ОбщийШаблон, СсылкаНаОбъект) + + ОбластьШапка = ОбщийШаблон.ПолучитьОбласть("Шапка"); + ОбластьШапка.Параметры.НаименованиеОтчета = НСтр("ru = 'Отчет по изменениям версий объекта'"); + ОбластьШапка.Параметры.НаименованиеОбъекта = Строка(СсылкаНаОбъект); + + ТЧОтчета.Вывести(ОбластьШапка); + + ПустаяЯчейка = ОбщийШаблон.ПолучитьОбласть("ПустаяЯчейка"); + ОбластьВерсии = ОбщийШаблон.ПолучитьОбласть("ЗаголовокВерсии"); + ТЧОтчета.Присоединить(ПустаяЯчейка); + ТЧОтчета.Присоединить(ОбластьВерсии); + ОбластьВерсии = ОбщийШаблон.ПолучитьОбласть("ПредставлениеВерсии"); + + КомментарииКВерсиям = Новый Структура; + ЕстьКомментарии = Ложь; + + ИндексПоВерсиям = ЧислоВерсий; + Пока ИндексПоВерсиям > 0 Цикл + + СведенияОВерсии = ПолучитьОписаниеПоВерсии(СсылкаНаОбъект, СписокВерсий[ИндексПоВерсиям-1]); + ОбластьВерсии.Параметры.ПредставлениеВерсии = СведенияОВерсии.Описание; + + КомментарииКВерсиям.Вставить("Комментарий" + ИндексПоВерсиям, СведенияОВерсии.Комментарий); + Если Не ПустаяСтрока(СведенияОВерсии.Комментарий) Тогда + ЕстьКомментарии = Истина; + КонецЕсли; + + ТЧОтчета.Присоединить(ОбластьВерсии); + ТЧОтчета.Область("C" + Формат(ИндексПоВерсиям + 2, "ЧГ=0")).ШиринаКолонки = 50; + ИндексПоВерсиям = ИндексПоВерсиям - 1; + + КонецЦикла; + + Если ЕстьКомментарии Тогда + + ОбластьКомментарий = ОбщийШаблон.ПолучитьОбласть("ЗаголовокКомментарий"); + ТЧОтчета.Вывести(ПустаяЯчейка); + ТЧОтчета.Присоединить(ОбластьКомментарий); + ОбластьКомментарий = ОбщийШаблон.ПолучитьОбласть("Комментарий"); + + ИндексПоВерсиям = ЧислоВерсий; + Пока ИндексПоВерсиям > 0 Цикл + + ОбластьКомментарий.Параметры.Комментарий = КомментарииКВерсиям["Комментарий" + ИндексПоВерсиям]; + ТЧОтчета.Присоединить(ОбластьКомментарий); + ИндексПоВерсиям = ИндексПоВерсиям - 1; + + КонецЦикла; + + КонецЕсли; + + ОбластьСвободнаяСтрока = ОбщийШаблон.ПолучитьОбласть("СвободнаяСтрока"); + ТЧОтчета.Вывести(ОбластьСвободнаяСтрока); + +КонецФункции + +Функция РассчитатьИзменения(НомерВерсии, РезультатРазбораВерсии_0, РезультатРазбораВерсии_1, СсылкаНаОбъект) + + ЭтоДокумент = Ложь; + + Если Метаданные.Документы.Содержит(СсылкаНаОбъект.Метаданные()) Тогда + ЭтоДокумент = Истина; + КонецЕсли; + + // Выполняем разбор предпоследней версии. + Реквизиты_0 = РезультатРазбораВерсии_0.Реквизиты; + ТабличныеЧасти_0 = РезультатРазбораВерсии_0.ТабличныеЧасти; + + // Выполняем разбор последней версии. + РезультатРазбораВерсии_1 = ВерсионированиеОбъектов.РазборВерсии(СсылкаНаОбъект, НомерВерсии); + ДобавитьНомераСтрокВТабличныеЧасти(РезультатРазбораВерсии_1.ТабличныеЧасти); + + Реквизиты_1 = РезультатРазбораВерсии_1.Реквизиты; + ТабличныеЧасти_1 = РезультатРазбораВерсии_1.ТабличныеЧасти; + + /////////////////////////////////////////////////////////////////////////////// + // Формируем список табличных частей, которые изменились // + /////////////////////////////////////////////////////////////////////////////// + СписокТабличныхЧастей_0 = СоздатьТаблицуСравнения(); + Для Каждого Элемент Из ТабличныеЧасти_0 Цикл + НоваяСтрока = СписокТабличныхЧастей_0.Добавить(); + НоваяСтрока.Установить(0, СокрЛП(Элемент.Ключ)); + КонецЦикла; + + СписокТабличныхЧастей_1 = СоздатьТаблицуСравнения(); + Для Каждого Элемент Из ТабличныеЧасти_1 Цикл + НоваяСтрока = СписокТабличныхЧастей_1.Добавить(); + НоваяСтрока.Установить(0, СокрЛП(Элемент.Ключ)); + КонецЦикла; + + // Возможно была изменена структура метаданных - добавились или были удалены реквизиты. + СписокДобавленныхТЧ = ВычестьТаблицу(СписокТабличныхЧастей_1, СписокТабличныхЧастей_0); + СписокУдаленныхТЧ = ВычестьТаблицу(СписокТабличныхЧастей_0, СписокТабличныхЧастей_1); + + // Список не изменившихся реквизитов, по которым будем искать совпадения / расхождения. + СписокОставшихсяТЧ = ВычестьТаблицу(СписокТабличныхЧастей_1, СписокДобавленныхТЧ); + + // Список реквизитов, которые были изменены. + СписокИзменившихсяТЧ = НайтиИзменившиесяТабличныеЧасти(СписокОставшихсяТЧ, + ТабличныеЧасти_0, + ТабличныеЧасти_1); + + /////////////////////////////////////////////////////////////////////////////// + // Формируем список реквизитов, которые изменились // + /////////////////////////////////////////////////////////////////////////////// + СписокРеквизитов0 = СоздатьТаблицуСравнения(); + Для Каждого Реквизит Из РезультатРазбораВерсии_0.Реквизиты Цикл + НоваяСтрока = СписокРеквизитов0.Добавить(); + НоваяСтрока.Установить(0, СокрЛП(Строка(Реквизит.НаименованиеРеквизита))); + КонецЦикла; + + СписокРеквизитов1 = СоздатьТаблицуСравнения(); + Для Каждого Реквизит Из РезультатРазбораВерсии_1.Реквизиты Цикл + НоваяСтрока = СписокРеквизитов1.Добавить(); + НоваяСтрока.Установить(0, СокрЛП(Строка(Реквизит.НаименованиеРеквизита))); + КонецЦикла; + + // Возможно была изменена структура метаданных - добавились или были удалены реквизиты. + СписокДобавленныхРеквизитов = ВычестьТаблицу(СписокРеквизитов1, СписокРеквизитов0); + СписокУдаленныхРеквизитов = ВычестьТаблицу(СписокРеквизитов0, СписокРеквизитов1); + + // Список не изменившихся реквизитов, по которым будем искать совпадения / расхождения. + СписокОставшихсяРеквизитов = ВычестьТаблицу(СписокРеквизитов1, СписокДобавленныхРеквизитов); + + // Список реквизитов, которые были изменены. + СписокИзменившихсяРеквизитов = СоздатьТаблицуСравнения(); + + ИзмененияВРеквизитах = Новый Соответствие; + ИзмененияВРеквизитах.Вставить("д", СписокДобавленныхРеквизитов); + ИзмененияВРеквизитах.Вставить("у", СписокУдаленныхРеквизитов); + ИзмененияВРеквизитах.Вставить("и", СписокИзменившихсяРеквизитов); + + Для Каждого СтрокаТаблицыЗначений Из СписокОставшихсяРеквизитов Цикл + + Реквизит = СтрокаТаблицыЗначений.Значение; + Значение_0 = Реквизиты_0.Найти(Реквизит, "НаименованиеРеквизита").ЗначениеРеквизита; + Значение_1 = Реквизиты_1.Найти(Реквизит, "НаименованиеРеквизита").ЗначениеРеквизита; + + Если ТипЗнч(Значение_0) <> Тип("ХранилищеЗначения") + И ТипЗнч(Значение_1) <> Тип("ХранилищеЗначения") Тогда + Если Значение_0 <> Значение_1 Тогда + НоваяСтрока = СписокИзменившихсяРеквизитов.Добавить(); + НоваяСтрока.Установить(0, Реквизит); + КонецЕсли; + КонецЕсли; + + КонецЦикла; + + ИзмененияВТаблицах = РассчитатьИзмененияТабличныхЧастей( + СписокИзменившихсяТЧ, + ТабличныеЧасти_0, + ТабличныеЧасти_1); + + /////////////////////////////////////////////////////////////////////////////// + // Формируем список ТабличныхДокументов // + /////////////////////////////////////////////////////////////////////////////// + + ТабличныеДокументы0 = РезультатРазбораВерсии_0.ТабличныеДокументы; + ТабличныеДокументы1 = РезультатРазбораВерсии_1.ТабличныеДокументы; + + СписокТабличныхДокументов0 = СоздатьТаблицуСравнения(); + СписокТабличныхДокументов0.Колонки.Добавить("Представление"); + Если ТабличныеДокументы0 <> Неопределено Тогда + Для Каждого ЭлементСтруктуры Из ТабличныеДокументы0 Цикл + НоваяСтрока = СписокТабличныхДокументов0.Добавить(); + НоваяСтрока.Значение = ЭлементСтруктуры.Ключ; + НоваяСтрока.Представление = ЭлементСтруктуры.Значение.Наименование; + КонецЦикла; + КонецЕсли; + + СписокТабличныхДокументов1 = СоздатьТаблицуСравнения(); + СписокТабличныхДокументов1.Колонки.Добавить("Представление"); + Если ТабличныеДокументы1 <> Неопределено Тогда + Для Каждого ЭлементСтруктуры Из ТабличныеДокументы1 Цикл + НоваяСтрока = СписокТабличныхДокументов1.Добавить(); + НоваяСтрока.Значение = ЭлементСтруктуры.Ключ; + НоваяСтрока.Представление = ЭлементСтруктуры.Значение.Наименование; + КонецЦикла; + КонецЕсли; + + СписокДобавленныхТабличныхДокументов = ВычестьТаблицу(СписокТабличныхДокументов1, СписокТабличныхДокументов0); + СписокУдаленныхТабличныхДокументов = ВычестьТаблицу(СписокТабличныхДокументов0, СписокТабличныхДокументов1); + СписокОставшихсяТабличныхДокументов = ВычестьТаблицу(СписокТабличныхДокументов1, + СписокДобавленныхТабличныхДокументов); + + СписокИзменившихсяТабличныхДокументов = СоздатьТаблицуСравнения(); + СписокИзменившихсяТабличныхДокументов.Колонки.Добавить("Представление"); + + ИзмененияВТабличныхДокументах = Новый Соответствие; + ИзмененияВТабличныхДокументах.Вставить("д", СписокДобавленныхТабличныхДокументов); + ИзмененияВТабличныхДокументах.Вставить("у", СписокУдаленныхТабличныхДокументов); + ИзмененияВТабличныхДокументах.Вставить("и", СписокИзменившихсяТабличныхДокументов); + + Для Каждого СтрокаТаблицыЗначений Из СписокОставшихсяТабличныхДокументов Цикл + + ИмяТабличногоДокумента = СтрокаТаблицыЗначений.Значение; + + ТабДокXML = ВерсионированиеОбъектов.СериализоватьОбъект( + Новый ХранилищеЗначения(ТабличныеДокументы0[ИмяТабличногоДокумента].Данные)); + КонтрольнаяСумма0 = ВерсионированиеОбъектов.КонтрольнаяСумма(ТабДокXML); + + ТабДокXML = ВерсионированиеОбъектов.СериализоватьОбъект( + Новый ХранилищеЗначения(ТабличныеДокументы1[ИмяТабличногоДокумента].Данные)); + КонтрольнаяСумма1 = ВерсионированиеОбъектов.КонтрольнаяСумма(ТабДокXML); + + Если КонтрольнаяСумма0 <> КонтрольнаяСумма1 Тогда + ЗаполнитьЗначенияСвойств(СписокИзменившихсяТабличныхДокументов.Добавить(), СтрокаТаблицыЗначений); + КонецЕсли; + + КонецЦикла; + + МодификацииТабличныхЧастей = Новый Структура; + МодификацииТабличныхЧастей.Вставить("д", СписокДобавленныхТЧ); + МодификацииТабличныхЧастей.Вставить("у", СписокУдаленныхТЧ); + МодификацииТабличныхЧастей.Вставить("и", ИзмененияВТаблицах); + + КомпоновкаИзменений = Новый Соответствие; + КомпоновкаИзменений.Вставить("Реквизиты", ИзмененияВРеквизитах); + КомпоновкаИзменений.Вставить("ТабличныеЧасти", МодификацииТабличныхЧастей); + КомпоновкаИзменений.Вставить("ТабличныеДокументы", ИзмененияВТабличныхДокументах); + + Возврат КомпоновкаИзменений; + +КонецФункции + +Процедура ПодготовитьКолонкиТаблицИзмененийРеквизитов(ТаблицаЗначений, + МассивНомеровВерсий) + + ТаблицаЗначений = Новый ТаблицаЗначений; + + ТаблицаЗначений.Колонки.Добавить("Наименование"); + ТаблицаЗначений.Колонки.Добавить("Версионирование_Модификация"); + ТаблицаЗначений.Колонки.Добавить("Версионирование_ТипЗначения"); // Предполагаемый тип значения. + + Для Индекс = 1 По МассивНомеровВерсий.Количество() Цикл + ТаблицаЗначений.Колонки.Добавить("Версия" + Формат(МассивНомеровВерсий[Индекс-1], "ЧГ=0")); + КонецЦикла; + +КонецПроцедуры + +Функция РассчитатьИзмененияТабличныхЧастей(СписокИзменившихсяТЧ, + ТабличныеЧасти_0, + ТабличныеЧасти_1) + + ИзмененияВТаблицах = Новый Соответствие; + + // Цикл по количеству табличных частей. + Для Индекс = 1 По СписокИзменившихсяТЧ.Количество() Цикл + + ИзмененияВТаблицах.Вставить(СписокИзменившихсяТЧ[Индекс-1].Значение, Новый Соответствие); + + ТаблицаДляАнализа = СписокИзменившихсяТЧ[Индекс-1].Значение; + ТЧ0 = ТабличныеЧасти_0[ТаблицаДляАнализа]; + ТЧ1 = ТабличныеЧасти_1[ТаблицаДляАнализа]; + + ТаблицаИзмененныхСтрок = Новый ТаблицаЗначений; + ТаблицаИзмененныхСтрок.Колонки.Добавить("ИндексВТЧ0"); + ТаблицаИзмененныхСтрок.Колонки.Добавить("ИндексВТЧ1"); + ТаблицаИзмененныхСтрок.Колонки.Добавить("Различия"); + + СоответствиеСтрокТЧ0СтрокамТЧ1 = СоответствиеСтрокТаблиц(ТЧ0, ТЧ1); + СоответствиеСтрокТЧ1СтрокамТЧ0 = Новый Соответствие; + ПроверяемыеКолонки = НайтиОбщиеКолонки(ТЧ0, ТЧ1); + Для Каждого Соответствие Из СоответствиеСтрокТЧ0СтрокамТЧ1 Цикл + СтрокаТаблицы0 = Соответствие.Ключ; + СтрокаТаблицы1 = Соответствие.Значение; + РазличияСтрок = РазличияСтрок(СтрокаТаблицы0, СтрокаТаблицы1, ПроверяемыеКолонки); + Если РазличияСтрок.Количество() > 0 Тогда + НоваяСтрока = ТаблицаИзмененныхСтрок.Добавить(); + НоваяСтрока["ИндексВТЧ0"] = ИндексСтроки(СтрокаТаблицы0) + 1; + НоваяСтрока["ИндексВТЧ1"] = ИндексСтроки(СтрокаТаблицы1) + 1; + НоваяСтрока["Различия"] = РазличияСтрок; + КонецЕсли; + СоответствиеСтрокТЧ1СтрокамТЧ0.Вставить(СтрокаТаблицы1, СтрокаТаблицы0); + КонецЦикла; + + ТаблицаДобавленныхСтрок = Новый ТаблицаЗначений; + ТаблицаДобавленныхСтрок.Колонки.Добавить("ИндексВТЧ1"); + + Для Каждого СтрокаТаблицы Из ТЧ1 Цикл + Если СоответствиеСтрокТЧ1СтрокамТЧ0[СтрокаТаблицы] = Неопределено Тогда + НоваяСтрока = ТаблицаДобавленныхСтрок.Добавить(); + НоваяСтрока.ИндексВТЧ1 = ТЧ1.Индекс(СтрокаТаблицы) + 1; + КонецЕсли; + КонецЦикла; + + ТаблицаУдаленныхСтрок = Новый ТаблицаЗначений; + ТаблицаУдаленныхСтрок.Колонки.Добавить("ИндексВТЧ0"); + + Для Каждого СтрокаТаблицы Из ТЧ0 Цикл + Если СоответствиеСтрокТЧ0СтрокамТЧ1[СтрокаТаблицы] = Неопределено Тогда + НоваяСтрока = ТаблицаУдаленныхСтрок.Добавить(); + НоваяСтрока.ИндексВТЧ0 = ТЧ0.Индекс(СтрокаТаблицы) + 1; + КонецЕсли; + КонецЦикла; + + ИзмененияВТаблицах[СписокИзменившихсяТЧ[Индекс-1].Значение].Вставить("Д", ТаблицаДобавленныхСтрок); + ИзмененияВТаблицах[СписокИзменившихсяТЧ[Индекс-1].Значение].Вставить("У", ТаблицаУдаленныхСтрок); + ИзмененияВТаблицах[СписокИзменившихсяТЧ[Индекс-1].Значение].Вставить("И", ТаблицаИзмененныхСтрок); + + КонецЦикла; + + Возврат ИзмененияВТаблицах; + +КонецФункции + +Функция НайтиИзменившиесяТабличныеЧасти(СписокОставшихсяТЧ, + ТабличныеЧасти_0, + ТабличныеЧасти_1) + + СписокИзменившихсяТЧ = СоздатьТаблицуСравнения(); + + // Поиск Табличных частей, в которых изменились строки. + Для Каждого Элемент Из СписокОставшихсяТЧ Цикл + + ТЧ_0 = ТабличныеЧасти_0[Элемент.Значение]; + ТЧ_1 = ТабличныеЧасти_1[Элемент.Значение]; + + Если ТЧ_0.Количество() = ТЧ_1.Количество() Тогда + + НайденоОтличие = Ложь; + + // Проверяем, что структура колонок осталась прежней (эквивалентна). + Если ТЧЭквиваленты (ТЧ_0.Колонки, ТЧ_1.Колонки) Тогда + + // Ищем различающиеся элементы - строки. + Для Индекс = 0 По ТЧ_0.Количество() - 1 Цикл + Строка_0 = ТЧ_0[Индекс]; + Строка_1 = ТЧ_1[Индекс]; + + Если НЕ СтрокиТЧРавны(Строка_0, Строка_1, ТЧ_0.Колонки) Тогда + НайденоОтличие = Истина; + Прервать; + КонецЕсли + КонецЦикла; + + Иначе + НайденоОтличие = Истина; + КонецЕсли; + + Если НайденоОтличие Тогда + НоваяСтрока = СписокИзменившихсяТЧ.Добавить(); + НоваяСтрока.Установить(0, Элемент.Значение); + КонецЕсли; + + Иначе + НоваяСтрока = СписокИзменившихсяТЧ.Добавить(); + НоваяСтрока.Установить(0, Элемент.Значение); + КонецЕсли; + + КонецЦикла; + + Возврат СписокИзменившихсяТЧ; + +КонецФункции + +Функция СчитатьНачальныеЗначенияРеквизитовИТабличныхЧастей(ТаблицаРеквизитов, ТаблицаТЧ, КоличествоВерсий, МассивНомеровВерсий, СсылкаНаОбъект) + + МладшаяВерсияОбъекта = МассивНомеровВерсий[0]; + + // Выполняем разбор первой версии. + ВерсияОбъекта = ВерсионированиеОбъектов.РазборВерсии(СсылкаНаОбъект, МладшаяВерсияОбъекта); + ДобавитьНомераСтрокВТабличныеЧасти(ВерсияОбъекта.ТабличныеЧасти); + + Реквизиты = ВерсияОбъекта.Реквизиты; + ТабличныеЧасти = ВерсияОбъекта.ТабличныеЧасти; + + Колонка = "Версия" + Формат(МассивНомеровВерсий[0], "ЧГ=0"); + + Для Каждого СтрокаТаблицыЗначений Из Реквизиты Цикл + + НоваяСтрока = ТаблицаРеквизитов.Добавить(); + НоваяСтрока[Колонка] = Новый Структура("ТипИзменения, Значение", "И", СтрокаТаблицыЗначений); + НоваяСтрока.Наименование = СтрокаТаблицыЗначений.НаименованиеРеквизита; + НоваяСтрока.Версионирование_Модификация = Ложь; + НоваяСтрока.Версионирование_ТипЗначения = СтрокаТаблицыЗначений.ТипРеквизита; + + КонецЦикла; + + Для Каждого ЭлементТЧ Из ТабличныеЧасти Цикл + + ТаблицаТЧ.Вставить(ЭлементТЧ.Ключ, Новый Соответствие); + ПодготовитьКолонкиТаблицИзмененийДляСоответствия(ТаблицаТЧ[ЭлементТЧ.Ключ], МассивНомеровВерсий); + ТаблицаТЧ[ЭлементТЧ.Ключ]["Версия" + Формат(МладшаяВерсияОбъекта, "ЧГ=0")] = ЭлементТЧ.Значение.Скопировать(); + + ТекущаяТЗ = ТаблицаТЧ[ЭлементТЧ.Ключ]["Версия" + Формат(МладшаяВерсияОбъекта, "ЧГ=0")]; + + ТекущаяТЗ.Колонки.Добавить("Версионирование_ИдСтроки"); + ТекущаяТЗ.Колонки.Добавить("Версионирование_Модификация"); + ТекущаяТЗ.Колонки.Добавить("Версионирование_Изменения", Новый ОписаниеТипов("Массив")); + + Для Индекс = 1 По ТекущаяТЗ.Количество() Цикл + ТекущаяТЗ[Индекс-1].Версионирование_ИдСтроки = Индекс; + ТекущаяТЗ[Индекс-1].Версионирование_Модификация = Ложь; + КонецЦикла; + + КонецЦикла; + + Возврат ВерсияОбъекта; + +КонецФункции + +Процедура ПодготовитьКолонкиТаблицИзмененийДляСоответствия(Соответствие, МассивНомеровВерсий) + + Количество = МассивНомеровВерсий.Количество(); + + Для Индекс = 1 По Количество Цикл + Соответствие.Вставить("Версия" + Формат(МассивНомеровВерсий[Индекс-1], "ЧГ=0"), Новый ТаблицаЗначений); + КонецЦикла; + +КонецПроцедуры + +Функция ТЧЭквиваленты(КолонкиПервойТаблицы, КолонкиВторойТаблицы) + Если КолонкиПервойТаблицы.Количество() <> КолонкиВторойТаблицы.Количество() Тогда + Возврат Ложь; + КонецЕсли; + + Для Каждого Колонка Из КолонкиПервойТаблицы Цикл + Найденная = КолонкиВторойТаблицы.Найти(Колонка.Имя); + Если Найденная = Неопределено Или Колонка.ТипЗначения <> Найденная.ТипЗначения Тогда + Возврат Ложь; + КонецЕсли; + КонецЦикла; + + Возврат Истина; +КонецФункции + +Функция СтрокиТЧРавны(СтрокаТЧ1, СтрокаТЧ2, Колонки) + + Для Каждого Колонка Из Колонки Цикл + ИмяКолонки = Колонка.Имя; + Если СтрокаТЧ2.Владелец().Колонки.Найти(ИмяКолонки) = Неопределено Тогда + Продолжить; + КонецЕсли; + ЗначениеИзТЧ1 = СтрокаТЧ1[ИмяКолонки]; + ЗначениеИзТЧ2 = СтрокаТЧ2[ИмяКолонки]; + Если ЗначениеИзТЧ1 <> ЗначениеИзТЧ2 Тогда + Возврат Ложь; + КонецЕсли; + КонецЦикла; + + Возврат Истина; + +КонецФункции + +Функция ПолучитьОписаниеПоВерсии(СсылкаНаОбъект, НомерВерсии) + + СведенияОВерсии = ВерсионированиеОбъектов.СведенияОВерсииОбъекта(СсылкаНаОбъект, НомерВерсии.Значение); + + Описание = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '№ %1 / (%2) / %3'"), НомерВерсии.Представление, + Строка(СведенияОВерсии.ДатаВерсии), СокрЛП(Строка(СведенияОВерсии.АвторВерсии))); + + СведенияОВерсии.Вставить("Описание", Описание); + + Возврат СведенияОВерсии; + +КонецФункции + +Функция РассчитатьЧислоИзменившихсяРеквизитов(ТаблицаИзмененийРеквизитов, МассивНомеровВерсий) + + Результат = 0; + + Для Каждого ЭлементТЗ Из ТаблицаИзмененийРеквизитов Цикл + Если ЭлементТЗ.Версионирование_Модификация <> Неопределено И ЭлементТЗ.Версионирование_Модификация = Истина Тогда + Результат = Результат + 1; + КонецЕсли; + КонецЦикла; + + Возврат Результат; + +КонецФункции + +Функция УвеличитьСчетчик(счетчикУникальныйИд, ИмяТаблицы); + + счетчикУникальныйИд[ИмяТаблицы] = счетчикУникальныйИд[ИмяТаблицы] + 1; + + Возврат счетчикУникальныйИд[ИмяТаблицы]; + +КонецФункции + +Функция ПолучитьУникальныеУникальныйИд(ТаблицаИзмененийТЧ, ИмяКолонкиВерсии) + + СоответствиеУникальныйИд = Новый Соответствие; + + Для Каждого ЭлементСоотв Из ТаблицаИзмененийТЧ Цикл + СоответствиеУникальныйИд[ЭлементСоотв.Ключ] = Число(ЭлементСоотв.Значение[ИмяКолонкиВерсии].Количество()); + КонецЦикла; + + Возврат СоответствиеУникальныйИд; + +КонецФункции + +Процедура ЗаполнитьХарактеристикуИзмененияРеквизита(ТаблицаИзмененийРеквизита, + ПометкаИзменения, + ТаблицаИзмененийРеквизитов, + ИмяКолонкиТекущейВерсии, + ВерсияОбъекта) + + Для Каждого Элемент Из ТаблицаИзмененийРеквизита Цикл + Наименование = Элемент.Значение; + ИзменениеРеквизита = ТаблицаИзмененийРеквизитов.Найти (Наименование, "Наименование"); + + Если ИзменениеРеквизита = Неопределено Тогда + ИзменениеРеквизита = ТаблицаИзмененийРеквизитов.Добавить(); + ИзменениеРеквизита.Наименование = Наименование; + КонецЕсли; + + ПараметрыИзменения = Новый Структура; + ПараметрыИзменения.Вставить("ТипИзменения", ПометкаИзменения); + + Если ПометкаИзменения = "у" Тогда + ПараметрыИзменения.Вставить("Значение", "удалено"); + Иначе + ПараметрыИзменения.Вставить("Значение", ВерсияОбъекта.Реквизиты.Найти(Наименование, "НаименованиеРеквизита")); + КонецЕсли; + + ИзменениеРеквизита[ИмяКолонкиТекущейВерсии] = ПараметрыИзменения; + ИзменениеРеквизита.Версионирование_Модификация = Истина; + КонецЦикла; + +КонецПроцедуры + + +Функция СформироватьСекторСтрокиТЧ(ОбщийШаблон, Знач ЗначенияЗаполнения, Знач ТипВывода = "") + + ТабличныйДокумент = Новый ТабличныйДокумент; + + Если ТипВывода = "" Тогда + Шаблон = ОбщийШаблон.ПолучитьОбласть("ИсходноеЗначениеРеквизита"); + ИначеЕсли ТипВывода = "И" Тогда + Шаблон = ОбщийШаблон.ПолучитьОбласть("ИзмененноеЗначениеРеквизита"); + ИначеЕсли ТипВывода = "Д" Тогда + Шаблон = ОбщийШаблон.ПолучитьОбласть("ДобавленныйРеквизит"); + ИначеЕсли ТипВывода = "У" Тогда + Шаблон = ОбщийШаблон.ПолучитьОбласть("УдаленныйРеквизит"); + КонецЕсли; + + ШаблонНетИзменения = ОбщийШаблон.ПолучитьОбласть("ИсходноеЗначениеРеквизита"); + ШаблонЕстьИзменение = ОбщийШаблон.ПолучитьОбласть("ИзмененноеЗначениеРеквизита"); + + ЕстьДетализация = ТипЗнч(ЗначенияЗаполнения) = Тип("СписокЗначений"); + Для Каждого Элемент Из ЗначенияЗаполнения Цикл + Значение = Элемент; + Если ЕстьДетализация И ТипВывода = "И" Тогда + Значение = Элемент.Представление; + ЕстьИзменение = Элемент.Значение; + Шаблон = ?(ЕстьИзменение, ШаблонЕстьИзменение, ШаблонНетИзменения); + КонецЕсли; + Шаблон.Параметры.ЗначениеРеквизита = Значение; + ТабличныйДокумент.Вывести(Шаблон); + КонецЦикла; + + Возврат ТабличныйДокумент; + +КонецФункции + +Функция СформироватьПустойСектор(ОбщийШаблон, Знач ЧислоСтрок, Знач ТипВывода = "") + + ЗначениеЗаполнения = Новый Массив; + + Для Индекс = 1 По ЧислоСтрок Цикл + ЗначениеЗаполнения.Добавить(" "); + КонецЦикла; + + Возврат СформироватьСекторСтрокиТЧ(ОбщийШаблон, ЗначениеЗаполнения, ТипВывода); + +КонецФункции + +Функция ВычестьТаблицу(Знач ТаблицаОсновная, + Знач ТаблицаВычитаемая, + Знач КолонкаСравненияОсновнойТаблицы = "", + Знач КолонкаСравненияВычитаемойТаблицы = "") + + Если Не ЗначениеЗаполнено(КолонкаСравненияОсновнойТаблицы) Тогда + КолонкаСравненияОсновнойТаблицы = "Значение"; + КонецЕсли; + + Если Не ЗначениеЗаполнено(КолонкаСравненияВычитаемойТаблицы) Тогда + КолонкаСравненияВычитаемойТаблицы = "Значение"; + КонецЕсли; + + ТаблицаРезультат = Новый ТаблицаЗначений; + ТаблицаРезультат = ТаблицаОсновная.Скопировать(); + + Для Каждого Элемент Из ТаблицаВычитаемая Цикл + Значение = Элемент[КолонкаСравненияОсновнойТаблицы]; + НайденнаяСтрока = ТаблицаРезультат.Найти(Значение, КолонкаСравненияОсновнойТаблицы); + Если НайденнаяСтрока <> Неопределено Тогда + ТаблицаРезультат.Удалить(НайденнаяСтрока); + КонецЕсли; + КонецЦикла; + + Возврат ТаблицаРезультат; + +КонецФункции + +Функция СоздатьТаблицуСравнения(ТаблицаИнициализации = Неопределено, + ИмяКолонкиСравнения = "Значение") + + Таблица = Новый ТаблицаЗначений; + Таблица.Колонки.Добавить(ИмяКолонкиСравнения); + + Если ТаблицаИнициализации <> Неопределено Тогда + + МассивЗначений = ТаблицаИнициализации.ВыгрузитьКолонку(ИмяКолонкиСравнения); + + Для Каждого Элемент Из ТаблицаИнициализации Цикл + НоваяСтрока = Таблица.Добавить(); + НоваяСтрока.Установить(0, Элемент[ИмяКолонкиСравнения]); + КонецЦикла; + + КонецЕсли; + + Возврат Таблица; + +КонецФункции + +Функция ИндексСтроки(СтрокаТаблицы) + Возврат СтрокаТаблицы.Владелец().Индекс(СтрокаТаблицы); +КонецФункции + +Процедура ДобавитьНомераСтрокВТабличныеЧасти(ТабличныеЧасти) + + Для Каждого Соответствие Из ТабличныеЧасти Цикл + Таблица = Соответствие.Значение; + Если Таблица.Колонки.Найти("НомерСтроки") <> Неопределено Тогда + Продолжить; + КонецЕсли; + Таблица.Колонки.Вставить(0, "НомерСтроки",,НСтр("ru = '№ строки'")); + Для НомерСтроки = 1 По Таблица.Количество() Цикл + Таблица[НомерСтроки-1].НомерСтроки = НомерСтроки; + КонецЦикла; + КонецЦикла; + +КонецПроцедуры + +Функция НайтиПохожиеСтрокиТаблиц(Таблица1, Знач Таблица2, Знач ТребуемоеКоличествоРазличий = 0, Знач МаксимумРазличий = Неопределено, СоответствиеСтрокТаблицы1СтрокамТаблицы2 = Неопределено) + + Пропустить = "Пропустить_"; + + Таблица2 = Таблица2.Скопировать(); + Если Таблица2.Колонки.Найти(Пропустить) = Неопределено Тогда + Таблица2.Колонки.Добавить(Пропустить, Новый ОписаниеТипов("Булево")); + КонецЕсли; + + Если СоответствиеСтрокТаблицы1СтрокамТаблицы2 = Неопределено Тогда + СоответствиеСтрокТаблицы1СтрокамТаблицы2 = Новый Соответствие; + КонецЕсли; + + Если МаксимумРазличий = Неопределено Тогда + МаксимумРазличий = МаксимальноеКоличествоРазличийМеждуСтрокамиТаблиц(Таблица1, Таблица2); + КонецЕсли; + + // Сравниваем строки каждую с каждой. + Для Каждого СтрокаТаблицы1 Из Таблица1 Цикл + Для Каждого СтрокаТаблицы2 Из Таблица2.НайтиСтроки(Новый Структура(Пропустить, Ложь)) Цикл + // Считаем различия без учета служебной колонки. + КоличествоРазличий = КоличествоРазличийВСтрокахТаблиц(СтрокаТаблицы1, СтрокаТаблицы2) - 1; + + // Анализируем результат сравнения строк. + Если КоличествоРазличий = ТребуемоеКоличествоРазличий Тогда + СоответствиеСтрокТаблицы1СтрокамТаблицы2.Вставить(СтрокаТаблицы1.НомерСтроки, СтрокаТаблицы2.НомерСтроки); + СтрокаТаблицы2[Пропустить] = Истина; + Прервать; + КонецЕсли; + КонецЦикла; + КонецЦикла; + + Если СоответствиеСтрокТаблицы1СтрокамТаблицы2.Количество() < Таблица1.Количество() И Таблица2.НайтиСтроки(Новый Структура(Пропустить, Ложь)).Количество() > 0 Тогда + Если ТребуемоеКоличествоРазличий < МаксимумРазличий Тогда + НайтиПохожиеСтрокиТаблиц(Таблица1, Таблица2, ТребуемоеКоличествоРазличий + 1, МаксимумРазличий, СоответствиеСтрокТаблицы1СтрокамТаблицы2); + КонецЕсли; + КонецЕсли; + + Возврат СоответствиеСтрокТаблицы1СтрокамТаблицы2; + +КонецФункции + +Функция СоответствиеСтрокТаблиц(Таблица1, Таблица2) + СоответствиеНомеровСтрок = НайтиПохожиеСтрокиТаблиц(Таблица1, Таблица2); + Результат = Новый Соответствие; + Для Каждого Элемент Из СоответствиеНомеровСтрок Цикл + Результат.Вставить(Таблица1[Элемент.Ключ - 1], Таблица2[Элемент.Значение - 1]); + КонецЦикла; + Возврат Результат; +КонецФункции + +Функция МаксимальноеКоличествоРазличийМеждуСтрокамиТаблиц(Таблица1, Таблица2) + + МассивИменКолонокТаблицы1 = ПолучитьИменаКолонок(Таблица1); + МассивИменКолонокТаблицы2 = ПолучитьИменаКолонок(Таблица2); + МассивИменКолонокОбеихТаблиц = ОбъединениеМножеств(МассивИменКолонокТаблицы1, МассивИменКолонокТаблицы2); + ВсегоКолонок = МассивИменКолонокОбеихТаблиц.Количество(); + + Возврат ?(ВсегоКолонок = 0, 0, ВсегоКолонок - 1); + +КонецФункции + +Функция ОбъединениеМножеств(Множество1, Множество2) + + Результат = Новый Массив; + + Для Каждого Элемент Из Множество1 Цикл + Индекс = Результат.Найти(Элемент); + Если Индекс = Неопределено Тогда + Результат.Добавить(Элемент); + КонецЕсли; + КонецЦикла; + + Для Каждого Элемент Из Множество2 Цикл + Индекс = Результат.Найти(Элемент); + Если Индекс = Неопределено Тогда + Результат.Добавить(Элемент); + КонецЕсли; + КонецЦикла; + + Возврат Результат; + +КонецФункции + +Функция ПолучитьИменаКолонок(Таблица) + + Результат = Новый Массив; + + Для Каждого Колонка Из Таблица.Колонки Цикл + Результат.Добавить(Колонка.Имя); + КонецЦикла; + + Возврат Результат; + +КонецФункции + +Функция КоличествоРазличийВСтрокахТаблиц(СтрокаТаблицы1, СтрокаТаблицы2) + + Результат = 0; + + Таблица1 = СтрокаТаблицы1.Владелец(); + Таблица2 = СтрокаТаблицы2.Владелец(); + + ОбщиеКолонки = НайтиОбщиеКолонки(Таблица1, Таблица2); + ОстальныеКолонки = НайтиНесовпадающиеКолонки(Таблица1, Таблица2); + + // Каждую колонку, не являющуюся общей считаем как одно различие. + Результат = Результат + ОстальныеКолонки.Количество(); + + // Различия считаем по несовпадающим значениям. + Для Каждого ИмяКолонки Из ОбщиеКолонки Цикл + Если СтрокаТаблицы1[ИмяКолонки] <> СтрокаТаблицы2[ИмяКолонки] Тогда + Результат = Результат + 1; + КонецЕсли; + КонецЦикла; + + Возврат Результат; + +КонецФункции + +Функция НайтиОбщиеКолонки(Таблица1, Таблица2) + МассивИмен1 = ПолучитьИменаКолонок(Таблица1); + МассивИмен2 = ПолучитьИменаКолонок(Таблица2); + Возврат ПересечениеМножеств(МассивИмен1, МассивИмен2); +КонецФункции + +Функция НайтиНесовпадающиеКолонки(Таблица1, Таблица2) + МассивИмен1 = ПолучитьИменаКолонок(Таблица1); + МассивИмен2 = ПолучитьИменаКолонок(Таблица2); + Возврат РазностьМножеств(МассивИмен1, МассивИмен2, Истина); +КонецФункции + +Функция РазностьМножеств(Множество1, Знач Множество2, СимметричнаяРазность = Ложь) + + Результат = Новый Массив; + Множество2 = СкопироватьМассив(Множество2); + + Для Каждого Элемент Из Множество1 Цикл + Индекс = Множество2.Найти(Элемент); + Если Индекс = Неопределено Тогда + Результат.Добавить(Элемент); + Иначе + Множество2.Удалить(Индекс); + КонецЕсли; + КонецЦикла; + + Если СимметричнаяРазность Тогда + Для Каждого Элемент Из Множество2 Цикл + Результат.Добавить(Элемент); + КонецЦикла; + КонецЕсли; + + Возврат Результат; +КонецФункции + +Функция ПересечениеМножеств(Множество1, Множество2) + + Результат = Новый Массив; + + Для Каждого Элемент Из Множество1 Цикл + Индекс = Множество2.Найти(Элемент); + Если Индекс <> Неопределено Тогда + Результат.Добавить(Элемент); + КонецЕсли; + КонецЦикла; + + Возврат Результат; + +КонецФункции + +Функция СкопироватьМассив(Массив) + + Результат = Новый Массив; + + Для Каждого Элемент Из Массив Цикл + Результат.Добавить(Элемент); + КонецЦикла; + + Возврат Результат; + +КонецФункции + +Функция РазличияСтрок(Строка1, Строка2, ПроверяемыеКолонки) + Результат = Новый Массив; + Для Каждого Колонка Из ПроверяемыеКолонки Цикл + Если ТипЗнч(Строка1[Колонка]) = Тип("ХранилищеЗначения") Тогда + Продолжить; // Реквизиты с типом ХранилищеЗначения не сравниваем. + КонецЕсли; + Если Строка1[Колонка] <> Строка2[Колонка] Тогда + Результат.Добавить(Колонка); + КонецЕсли; + КонецЦикла; + Возврат Результат; +КонецФункции + #КонецОбласти #КонецЕсли \ No newline at end of file diff --git a/SSL/src/InformationRegisters/ВерсииОбъектов/Templates/СтандартныйМакетПредставленияОбъекта/Template.mxlx b/SSL/src/InformationRegisters/ВерсииОбъектов/Templates/СтандартныйМакетПредставленияОбъекта/Template.mxlx index c4a12dc6d..87759877a 100644 --- a/SSL/src/InformationRegisters/ВерсииОбъектов/Templates/СтандартныйМакетПредставленияОбъекта/Template.mxlx +++ b/SSL/src/InformationRegisters/ВерсииОбъектов/Templates/СтандартныйМакетПредставленияОбъекта/Template.mxlx @@ -904,13 +904,13 @@ Solid - - - - - - - + + + + + + + 294 Left diff --git a/SSL/src/InformationRegisters/ВерсииПодсистем/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ВерсииПодсистем/Forms/ФормаСписка/Form.form index a7b5d6a90..104cec4aa 100644 --- a/SSL/src/InformationRegisters/ВерсииПодсистем/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ВерсииПодсистем/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка 2 @@ -364,8 +363,6 @@ OnCreateAtServer ПриСозданииНаСервере
                - 80 - 10 DontBlock true true diff --git a/SSL/src/InformationRegisters/ГруппыЗначенийДоступа/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ГруппыЗначенийДоступа/Forms/ФормаСписка/Form.form index 4ebcd03c9..fefeaefd6 100644 --- a/SSL/src/InformationRegisters/ГруппыЗначенийДоступа/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ГруппыЗначенийДоступа/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 44 @@ -536,7 +535,6 @@ ПриСозданииНаСервере
                Copy - 100 DontBlock true true diff --git a/SSL/src/InformationRegisters/ГруппыЗначенийДоступа/ManagerModule.bsl b/SSL/src/InformationRegisters/ГруппыЗначенийДоступа/ManagerModule.bsl index 3d05d30a9..7abb4bd4b 100644 --- a/SSL/src/InformationRegisters/ГруппыЗначенийДоступа/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/ГруппыЗначенийДоступа/ManagerModule.bsl @@ -92,7 +92,7 @@ Если ВидОбновления = "ПользователиИГруппыПользователей" Тогда Если Параметры.Свойство("Пользователи") Тогда - ОбновитьПользователей ( Параметры.Пользователи, ЕстьИзменения); + ОбновитьПользователей( Параметры.Пользователи, ЕстьИзменения); ОбновитьГруппыИсполнителей( , Параметры.Пользователи, ЕстьИзменения); КонецЕсли; @@ -106,10 +106,10 @@ ИначеЕсли ВидОбновления = "ОбъектыАвторизации" Тогда ОбновитьОбъектыАвторизации(Параметры.ОбъектыАвторизации, ЕстьИзменения); Иначе - ОбновитьПользователей ( , ЕстьИзменения); + ОбновитьПользователей( , ЕстьИзменения); ОбновитьГруппыПользователей( , ЕстьИзменения); - ОбновитьГруппыИсполнителей ( , , ЕстьИзменения); - ОбновитьОбъектыАвторизации ( , ЕстьИзменения); + ОбновитьГруппыИсполнителей( , , ЕстьИзменения); + ОбновитьОбъектыАвторизации( , ЕстьИзменения); КонецЕсли; ЗафиксироватьТранзакцию(); @@ -552,10 +552,10 @@ // Обновляет группировки пользователей для проверки разрешенных значений // по видам доступа Пользователи и ВнешниеПользователи. // -// <Состав поля ЗначениеДоступа> <Состав поля ГруппаЗначенийДоступа> -// <Состав поля ГруппаДанных> -// а) для вида доступа -// Пользователи +// <Состав поля ЗначениеДоступа> <Состав поля ГруппаЗначенийДоступа>. +// <Состав поля ГруппаДанных>. +// +// А) для вида доступа Пользователи: // {сравнение с Т.<поле>} {Сравнение с ЗначенияГруппДоступа.ЗначениеДоступа}. // {Сравнение с &ТекущийПользователь}. // @@ -564,8 +564,7 @@ // 1 - Группа пользователей // того же пользователя. // -// б) для вида доступа -// Внешние пользователи +// Б) для вида доступа Внешние пользователи: // {сравнение с Т.<поле>} {Сравнение с ЗначенияГруппДоступа.ЗначениеДоступа}. // {Сравнение с &ТекущийВнешнийПользователь}. // @@ -633,10 +632,10 @@ // Обновляет группировки пользователей для проверки разрешенных значений // по видам доступа Пользователи и ВнешниеПользователи. // -// <Состав поля ЗначениеДоступа> <Состав поля ГруппаЗначенийДоступа> -// <Состав поля ГруппаДанных> -// а) для вида доступа -// Пользователи +// <Состав поля ЗначениеДоступа> <Состав поля ГруппаЗначенийДоступа>. +// <Состав поля ГруппаДанных>. +// +// А) для вида доступа Пользователи: // {сравнение с Т.<поле>} {Сравнение с ЗначенияГруппДоступа.ЗначениеДоступа}. // {Сравнение с &ТекущийПользователь}. // @@ -645,8 +644,7 @@ // 2 - Пользователь // той же группы пользователей. // -// б) для вида доступа -// Внешние пользователи +// Б) для вида доступа Внешние пользователи: // {сравнение с Т.<поле>} {Сравнение с ЗначенияГруппДоступа.ЗначениеДоступа}. // {Сравнение с &ТекущийВнешнийПользователь}. // @@ -743,10 +741,10 @@ // Обновляет группировки пользователей для проверки разрешенных значений // по видам доступа Пользователи и ВнешниеПользователи. // -// <Состав поля ЗначениеДоступа> <Состав поля ГруппаЗначенийДоступа> -// <Состав поля ГруппаДанных> -// а) для вида доступа -// Пользователи +// <Состав поля ЗначениеДоступа> <Состав поля ГруппаЗначенийДоступа>. +// <Состав поля ГруппаДанных>. +// +// А) для вида доступа Пользователи: // {сравнение с Т.<поле>} {Сравнение с ЗначенияГруппДоступа.ЗначениеДоступа}. // {Сравнение с &ТекущийПользователь}. // @@ -756,8 +754,7 @@ // 3 - Группа пользователей пользователя // той же группы исполнителей. // -// б) для вида доступа -// Внешние пользователи +// Б) для вида доступа Внешние пользователи: // {сравнение с Т.<поле>} {Сравнение с ЗначенияГруппДоступа.ЗначениеДоступа}. // {Сравнение с &ТекущийВнешнийПользователь}. // @@ -975,10 +972,10 @@ // Обновляет группировки пользователей для проверки разрешенных значений // по видам доступа Пользователи и ВнешниеПользователи. // -// <Состав поля ЗначениеДоступа> <Состав поля ГруппаЗначенийДоступа> -// <Состав поля ГруппаДанных> -// б) для вида доступа -// Внешние пользователи +// <Состав поля ЗначениеДоступа> <Состав поля ГруппаЗначенийДоступа>. +// <Состав поля ГруппаДанных>. +// +// Для вида доступа Внешние пользователи: // {сравнение с Т.<поле>} {Сравнение с ЗначенияГруппДоступа.ЗначениеДоступа}. // {Сравнение с &ТекущийВнешнийПользователь}. // diff --git a/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/МоиБизнесПроцессы/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/МоиБизнесПроцессы/Attributes/Список/ExtInfo/ListSettings.dcss index bb2b02abe..e59c632d7 100644 --- a/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/МоиБизнесПроцессы/Attributes/Список/ExtInfo/ListSettings.dcss +++ b/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/МоиБизнесПроцессы/Attributes/Список/ExtInfo/ListSettings.dcss @@ -21,27 +21,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - - Завершен - Equal - true - - - - - false - ЦветФона - auto - - - ЦветТекста - style:ЗавершенныйБизнесПроцесс - - - Normal b75fecce-942b-4aed-abc9-e6a02e460fb3 diff --git a/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/МоиБизнесПроцессы/Form.form b/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/МоиБизнесПроцессы/Form.form index bf1c66609..5ef97f0be 100644 --- a/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/МоиБизнесПроцессы/Form.form +++ b/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/МоиБизнесПроцессы/Form.form @@ -366,90 +366,6 @@ Normal
                - - Стартован - 12 - true - true - - true - - - Список.Стартован - - true - None - - ru - Стартован - - - СтартованExtendedTooltip - 63 - Label - true - true - - Left - - - - СтартованКонтекстноеМеню - 13 - true - - CheckBoxField - Enter - true - - StdPicture.BusinessProcessStart - - Left - true - - - - Завершен - 10 - true - true - - true - - - Список.Завершен - - true - None - - ru - Завершен - - - ЗавершенExtendedTooltip - 64 - Label - true - true - - Left - - - - ЗавершенКонтекстноеМеню - 11 - true - - CheckBoxField - Enter - true - - CommonPicture.Успешно - - Left - true - - ДатаЗавершения 16 @@ -826,7 +742,7 @@ Список.КартинкаСтроки - CommonPicture.ПиктограммыЭлементов + CommonPicture.СостоянияПроцессов None None @@ -946,11 +862,29 @@ РегистрСведенийДанныеБизнесПроцессов.ПометкаУдаления, ВЫБОР КОГДА РегистрСведенийДанныеБизнесПроцессов.ПометкаУдаления - ТОГДА 20 - ИНАЧЕ 19 - КОНЕЦ КАК КартинкаСтроки + ТОГДА 6 + КОГДА РегистрСведенийДанныеБизнесПроцессов.Завершен = ИСТИНА + ТОГДА 5 + КОГДА РегистрСведенийДанныеБизнесПроцессов.Стартован = ИСТИНА + ТОГДА 3 + КОГДА ПроцессыДляЗапуска.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияПроцессовДляЗапуска.ГотовКСтарту) + И ПроцессыДляЗапуска.ДатаОтложенногоСтарта <> ДАТАВРЕМЯ(1, 1, 1) + ТОГДА 1 + КОГДА ПроцессыДляЗапуска.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияПроцессовДляЗапуска.СтартОтменен) + ТОГДА 2 + ИНАЧЕ 0 + КОНЕЦ КАК КартинкаСтроки, + ВЫБОР + КОГДА ПроцессыДляЗапуска.Состояние ЕСТЬ NULL + ТОГДА ЛОЖЬ + КОГДА ПроцессыДляЗапуска.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияПроцессовДляЗапуска.ГотовКСтарту) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ КАК Отложен ИЗ - РегистрСведений.ДанныеБизнесПроцессов КАК РегистрСведенийДанныеБизнесПроцессов + РегистрСведений.ДанныеБизнесПроцессов КАК РегистрСведенийДанныеБизнесПроцессов + ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПроцессыДляЗапуска КАК ПроцессыДляЗапуска + ПО РегистрСведенийДанныеБизнесПроцессов.БизнесПроцесс = ПроцессыДляЗапуска.БизнесПроцесс InformationRegister.ДанныеБизнесПроцессов true true diff --git a/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/МоиБизнесПроцессы/Module.bsl b/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/МоиБизнесПроцессы/Module.bsl index 68955ff52..2bd985279 100644 --- a/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/МоиБизнесПроцессы/Module.bsl +++ b/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/МоиБизнесПроцессы/Module.bsl @@ -4,6 +4,8 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; @@ -94,4 +96,21 @@ КонецПроцедуры + +&НаСервере +Процедура УстановитьУсловноеОформление() + + Список.УсловноеОформление.Элементы.Очистить(); + Элемент = Список.УсловноеОформление.Элементы.Добавить(); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Завершен"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЗавершенныйБизнесПроцесс); + +КонецПроцедуры + + #КонецОбласти diff --git a/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss index a415e06a2..089dbb006 100644 --- a/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss +++ b/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss @@ -22,22 +22,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - - Завершен - Equal - true - - - - - ЦветТекста - style:ЗавершенныйБизнесПроцесс - - - Normal b75fecce-942b-4aed-abc9-e6a02e460fb3 diff --git a/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/ФормаСписка/Form.form index 89969e788..6a544f86b 100644 --- a/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/ФормаСписка/Form.form @@ -411,98 +411,6 @@ Normal - - Стартован - 12 - - <key>ru</key> - <value>Стартован</value> - - true - true - - true - - - Список.Стартован - - true - None - - ru - Стартован - - - СтартованExtendedTooltip - 55 - Label - true - true - - Left - - - - СтартованКонтекстноеМеню - 13 - true - - CheckBoxField - Enter - true - - StdPicture.BusinessProcessStart - - Left - true - - - - Завершен - 10 - - <key>ru</key> - <value>Завершен</value> - - true - true - - true - - - Список.Завершен - - true - None - - ru - Завершен - - - ЗавершенExtendedTooltip - 56 - Label - true - true - - Left - - - - ЗавершенКонтекстноеМеню - 11 - true - - CheckBoxField - Enter - true - - CommonPicture.Успешно - - Left - true - - ДатаЗавершения 16 @@ -878,7 +786,7 @@ Список.КартинкаСтроки - CommonPicture.ПиктограммыЭлементов + CommonPicture.СостоянияПроцессов None None @@ -954,11 +862,29 @@ РегистрСведенийДанныеБизнесПроцессов.ПометкаУдаления, ВЫБОР КОГДА РегистрСведенийДанныеБизнесПроцессов.ПометкаУдаления - ТОГДА 20 - ИНАЧЕ 19 - КОНЕЦ КАК КартинкаСтроки + ТОГДА 6 + КОГДА РегистрСведенийДанныеБизнесПроцессов.Завершен = ИСТИНА + ТОГДА 5 + КОГДА РегистрСведенийДанныеБизнесПроцессов.Стартован = ИСТИНА + ТОГДА 3 + КОГДА ПроцессыДляЗапуска.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияПроцессовДляЗапуска.ГотовКСтарту) + И ПроцессыДляЗапуска.ДатаОтложенногоСтарта <> ДАТАВРЕМЯ(1, 1, 1) + ТОГДА 1 + КОГДА ПроцессыДляЗапуска.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияПроцессовДляЗапуска.СтартОтменен) + ТОГДА 2 + ИНАЧЕ 0 + КОНЕЦ КАК КартинкаСтроки, + ВЫБОР + КОГДА ПроцессыДляЗапуска.Состояние ЕСТЬ NULL + ТОГДА ЛОЖЬ + КОГДА ПроцессыДляЗапуска.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияПроцессовДляЗапуска.ГотовКСтарту) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ КАК Отложен ИЗ - РегистрСведений.ДанныеБизнесПроцессов КАК РегистрСведенийДанныеБизнесПроцессов + РегистрСведений.ДанныеБизнесПроцессов КАК РегистрСведенийДанныеБизнесПроцессов + ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПроцессыДляЗапуска КАК ПроцессыДляЗапуска + ПО РегистрСведенийДанныеБизнесПроцессов.БизнесПроцесс = ПроцессыДляЗапуска.БизнесПроцесс InformationRegister.ДанныеБизнесПроцессов true true diff --git a/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/ФормаСписка/Module.bsl b/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/ФормаСписка/Module.bsl index b5ccb320f..a6170bd2f 100644 --- a/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Forms/ФормаСписка/Module.bsl @@ -4,6 +4,8 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + УстановитьУсловноеОформление(); + БизнесПроцессыИЗадачиСервер.УстановитьОформлениеБизнесПроцессов(Список.УсловноеОформление); КонецПроцедуры @@ -60,4 +62,20 @@ КонецПроцедуры +&НаСервере +Процедура УстановитьУсловноеОформление() + + Список.УсловноеОформление.Элементы.Очистить(); + Элемент = Список.УсловноеОформление.Элементы.Добавить(); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Завершен"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ЗавершенныйБизнесПроцесс); + +КонецПроцедуры + + #КонецОбласти diff --git a/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Help/ru.html b/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Help/ru.html index 0d45f4cbd..20a1cfdb6 100644 --- a/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Help/ru.html +++ b/SSL/src/InformationRegisters/ДанныеБизнесПроцессов/Help/ru.html @@ -2,15 +2,13 @@

                В этом списке выводятся бизнес-процессы, в которых автором является текущий пользователь.

                Открывается по команде Мои бизнес-процессы в разделе Бизнес-процессы и задачи.

                В списке выводится:

                -
                • Номер - присваивается автоматически. Рядом с номером программа автоматически проставляет значок, обозначающий вид бизнес-процесса; +
                  • Номер - присваивается автоматически. Рядом с номером программа автоматически проставляет один из значков , обозначающий состояние бизнес-процесса;
                  • Наименование - полное наименование бизнес-процесса;
                  • Дата - дата и время создания бизнес-процесса; -
                  •   - начатые бизнес-процессы обозначаются с помощью флажка в колонке Стартован; -
                  •  - завершенные бизнес-процессы обозначаются с помощью флажка в колонке Завершен;
                  • Завершен - программа автоматически указывает дату и время выполнения бизнес-процесса.

                  Включение в список завершенных бизнес-процессов

                  • Установив соответствующий флажок в нижней части окна, можно вывести в списке также завершенные бизнес-процессы (по умолчанию снят).

                  Работа с бизнес-процессом

                  • -
                    Выделите бизнес-процесс (например,  Задание) в списке, нажмите Изменить.

                  Просмотр карты маршрута бизнес-процесса

                  +
                  Выделите бизнес-процесс (например, Задание) в списке, нажмите Изменить.

                Просмотр карты маршрута бизнес-процесса

                См. также

                • Задания. diff --git a/SSL/src/InformationRegisters/ДанныеОбработанныеВЦентральномУзлеРИБ/ManagerModule.bsl b/SSL/src/InformationRegisters/ДанныеОбработанныеВЦентральномУзлеРИБ/ManagerModule.bsl index 03c62774c..44a8646d9 100644 --- a/SSL/src/InformationRegisters/ДанныеОбработанныеВЦентральномУзлеРИБ/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/ДанныеОбработанныеВЦентральномУзлеРИБ/ManagerModule.bsl @@ -2,7 +2,7 @@ #Область СлужебныйПрограммныйИнтерфейс -// Заполняет регистр обновленных данных для передачи в подчиненные узлы РИБ +// Заполняет регистр обновленных данных для передачи в подчиненные узлы РИБ. // // Параметры: // Очередь - Число - очередь обработки, в которой выполняется текущий обработчик. @@ -38,9 +38,7 @@ Если ДополнительныеПараметры.ЭтоДвижения Или ДополнительныеПараметры.ЭтоНезависимыйРегистрСведений Тогда - ИдентификаторОбъектаМетаданных = ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ДополнительныеПараметры.ПолноеИмяРегистра); - Иначе Если ТипДанных = Тип("Массив") Тогда @@ -91,7 +89,6 @@ КонецЦикла; Иначе - Если ТипЗнч(Данные) <> Тип("Массив") Тогда ОбъектМетаданных = Метаданные.НайтиПоТипу(ТипДанных); @@ -121,7 +118,6 @@ КонецЦикла; НаборДанных.Записать(); - Возврат; КонецЕсли; @@ -130,7 +126,7 @@ Иначе - ДобавитьДанныеВНабор(УзлыРИБ, НаборДанных, Данные); + ДобавитьДанныеВНабор(УзлыРИБ, НаборДанных, Данные, , Очередь); КонецЕсли; @@ -142,23 +138,18 @@ #Область СлужебныеПроцедурыИФункции -Процедура ДобавитьДанныеВНабор(УзлыРИБ, НаборДанных, Данные, ОбъектМетаданных = Неопределено) +Процедура ДобавитьДанныеВНабор(УзлыРИБ, НаборДанных, Данные, ОбъектМетаданных = Неопределено, Очередь = Неопределено) - Если Данные = Тип("Массив") Тогда + Если ТипЗнч(Данные) = Тип("Массив") Тогда Для Каждого СтрокаМассива Из Данные Цикл + НаборДанных = РегистрыСведений.ДанныеОбработанныеВЦентральномУзлеРИБ.СоздатьНаборЗаписей(); НаборДанных.Отбор.Данные.Установить(СтрокаМассива); - - Если Не НаборДанных.Отбор.ОбъектМетаданных.Использование - Или Не ЗначениеЗаполнено(НаборДанных.Отбор.ОбъектМетаданных.Значение) Тогда - - НаборДанных.Отбор.ОбъектМетаданных.Установить(ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ТипЗнч(СтрокаМассива))); - - КонецЕсли; + НаборДанных.Отбор.Очередь.Установить(Очередь); + НаборДанных.Отбор.ОбъектМетаданных.Установить(ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ТипЗнч(СтрокаМассива))); Для Каждого УзелРИБ Из УзлыРИБ Цикл - НоваяСтрока = НаборДанных.Добавить(); НоваяСтрока.УзелПланаОбмена = УзелРИБ.Значение; @@ -192,9 +183,7 @@ Если Не НаборДанных.Отбор.ОбъектМетаданных.Использование Или Не ЗначениеЗаполнено(НаборДанных.Отбор.ОбъектМетаданных.Значение) Тогда - НаборДанных.Отбор.ОбъектМетаданных.Установить(ОбщегоНазначения.ИдентификаторОбъектаМетаданных(ТипЗнч(Значение))); - КонецЕсли; Для Каждого УзелРИБ Из УзлыРИБ Цикл @@ -211,6 +200,7 @@ НаборДанных.Записать(); КонецЕсли; + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/InformationRegisters/ДанныеОбработанныеВЦентральномУзлеРИБ/RecordSetModule.bsl b/SSL/src/InformationRegisters/ДанныеОбработанныеВЦентральномУзлеРИБ/RecordSetModule.bsl index 75794eaed..b68d25936 100644 --- a/SSL/src/InformationRegisters/ДанныеОбработанныеВЦентральномУзлеРИБ/RecordSetModule.bsl +++ b/SSL/src/InformationRegisters/ДанныеОбработанныеВЦентральномУзлеРИБ/RecordSetModule.bsl @@ -28,6 +28,7 @@ Если МетаданныеРегистра.РежимЗаписи = Метаданные.СвойстваОбъектов.РежимЗаписиРегистра.Независимый Тогда МенеджерРегистра = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени(ПолноеИмяОбъектаМетаданных); + ДанныеДляОтметки = МенеджерРегистра.СоздатьНаборЗаписей(); ЗначенияОтбора = СтрТабл.ЗначенияОтборовНезависимогоРегистра.Получить(); @@ -37,9 +38,9 @@ Иначе - ДополнительныеПараметры.ЭтоДвижения = Истина; + ДополнительныеПараметры.ЭтоДвижения = Истина; ДополнительныеПараметры.ПолноеИмяРегистра = ПолноеИмяОбъектаМетаданных; - ДанныеДляОтметки = СтрТабл.Данные; + ДанныеДляОтметки = СтрТабл.Данные; КонецЕсли; @@ -47,7 +48,7 @@ ДанныеДляОтметки = СтрТабл.Данные; КонецЕсли; - ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(ДанныеДляОтметки, ДополнительныеПараметры, СтрТабл.Очередь); + ОбновлениеИнформационнойБазы.ОтметитьВыполнениеОбработки(ДанныеДляОтметки, ДополнительныеПараметры, СтрТабл.Очередь); Если ОбменДанными.Отправитель <> Неопределено Тогда // не создание начального образа НаборДляРегистрацииОтветаВГлавныйУзел = РегистрыСведений.ДанныеОбработанныеВЦентральномУзлеРИБ.СоздатьНаборЗаписей(); diff --git a/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ДатыЗапретаИзменения/Form.form b/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ДатыЗапретаИзменения/Form.form index 288b8a2e8..17161f720 100644 --- a/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ДатыЗапретаИзменения/Form.form +++ b/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ДатыЗапретаИзменения/Form.form @@ -5,23 +5,27 @@ Даты запрета изменения данных - ИспользованиеДатЗапретаВыключено - 431 - - ИспользованиеДатЗапретаВыключеноКартинка - 433 - - <key>ru</key> - <value>Использование дат запрета выключено картинка</value> - + ГруппаШапка + 446 + + УстановкаДатыЗапрета + 439 true true true + + УстановкаДатыЗапретаНовое + + None + + OnChange + УстановкаДатыЗапретаПриИзменении + - ИспользованиеДатЗапретаВыключеноКартинкаРасширеннаяПодсказка - 435 + УстановкаДатыЗапретаРасширеннаяПодсказка + 441 Label true true @@ -30,35 +34,116 @@ - ИспользованиеДатЗапретаВыключеноКартинкаКонтекстноеМеню - 434 + УстановкаДатыЗапретаКонтекстноеМеню + 440 true - 2 - true - 1 - true - - - CommonPicture.Предупреждение - + RadioButtonField + Enter + true + Left + true + + Tumbler + 3 + + + ru + Не установлены + + + НетЗапрета + + + + + ru + Для всех пользователей + + + ДляВсехПользователей + + + + + ru + По пользователям + + + ПоПользователям + + + Vertical - - ИспользованиеДатЗапретаВыключеноНадпись - 436 - - <key>ru</key> - <value>Использование дат запрета выключено в настройках программы.</value> - + + КоманднаяПанель + 444 + + Обновить + 200 + true + true + + true + + + ОбновитьExtendedTooltip + 321 + Label + true + true + + Left + + + Form.Command.Обновить + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + + + ПоказатьОтчет + 429 + true + true + + true + + + ПоказатьОтчетРасширеннаяПодсказка + 430 + Label + true + true + + Left + + + Form.Command.ПоказатьОтчет + Normal + Auto + true + true + UserCmds + Auto + true true true + + <key>ru</key> + <value>Командная панель</value> + - ИспользованиеДатЗапретаВыключеноНадписьРасширеннаяПодсказка - 438 + КоманднаяПанельРасширеннаяПодсказка + 445 Label true true @@ -66,29 +151,24 @@ Left - - ИспользованиеДатЗапретаВыключеноНадписьКонтекстноеМеню - 437 - true - - Label - true - true - - Left + CommandBar + + Right + Form + true true true <key>ru</key> - <value>Использование дат запрета выключено</value> + <value>Группа шапка</value> - ИспользованиеДатЗапретаВыключеноРасширеннаяПодсказка - 432 + ГруппаШапкаРасширеннаяПодсказка + 447 Label true true @@ -98,28 +178,198 @@ UsualGroup + Center Auto - NormalSeparation true true Auto Auto - - УстановкаДатыЗапрета - 201 + + ИспользованиеДатЗапрета + 451 + + Включено + 453 + + УстановкаДатыЗапретаПояснение + 448 + + <key>ru</key> + <value>Разрешен ввод и редактирование любых данных прошлых периодов.</value> + + true + true + + true + + + УстановкаДатыЗапретаПояснениеРасширеннаяПодсказка + 450 + Label + true + true + + Left + + + + УстановкаДатыЗапретаПояснениеКонтекстноеМеню + 449 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + + + true + true + + true + + + <key>ru</key> + <value>Включено</value> + + + ru + Включено + + + ВключеноРасширеннаяПодсказка + 454 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + Отключено + 455 + + ИспользованиеДатЗапретаВыключеноКартинка + 433 + + <key>ru</key> + <value>Использование дат запрета выключено картинка</value> + + true + true + + true + + + ИспользованиеДатЗапретаВыключеноКартинкаРасширеннаяПодсказка + 435 + Label + true + true + + Left + + + + ИспользованиеДатЗапретаВыключеноКартинкаКонтекстноеМеню + 434 + true + + true + true + + + CommonPicture.Предупреждение + + + + + ИспользованиеДатЗапретаВыключеноНадпись + 436 + + <key>ru</key> + <value>Даты запрета ввода и редактирования данных прошлых периодов отключены в настройках программы.</value> + + true + true + + true + + + ИспользованиеДатЗапретаВыключеноНадписьРасширеннаяПодсказка + 438 + Label + true + true + + Left + + + + ИспользованиеДатЗапретаВыключеноНадписьКонтекстноеМеню + 437 + true + + Label + 1 + true + + Left + + + true + true + + true + + + <key>ru</key> + <value>Отключено</value> + + + ОтключеноРасширеннаяПодсказка + 456 + Label + true + true + + Left + + + Page + + auto + + Style.ФонУправляющегоПоля + + false + + true true true - - УстановкаДатыЗапрета - + + <key>ru</key> + <value>Использование дат запрета</value> + - УстановкаДатыЗапретаExtendedTooltip - 322 + ИспользованиеДатЗапретаРасширеннаяПодсказка + 452 Label true true @@ -127,64 +377,9 @@ Left - - УстановкаДатыЗапретаКонтекстноеМеню - 202 - true - - InputField - Enter - true - Left - true - - - Clearing - УстановкаДатыЗапретаОчистка - - - ChoiceProcessing - УстановкаДатыЗапретаОбработкаВыбора - - 28 - true - true - false - true - true - true - true - - - ru - Нет запрета изменения данных - - - НетЗапрета - - - - - ru - Для всех пользователей - - - ДляВсехПользователей - - - - - ru - По пользователям - - - ПоПользователям - - - - Style.ФонУправляющегоПоля - - Normal + Pages + + Auto @@ -561,7 +756,6 @@ AutoUse true true - false true Auto Auto @@ -651,7 +845,6 @@ true Label - true true Left @@ -690,267 +883,77 @@ СтраницаПользовательВыбран 268 - - СпособУказанияДатыЗапрета - 216 - true - true - - true - - - СпособУказанияДатыЗапрета - - - СпособУказанияДатыЗапретаExtendedTooltip - 335 - Label - true - true - - Left - - - - СпособУказанияДатыЗапретаКонтекстноеМеню - 217 - true - - InputField - Enter - true - Left - true - - - Clearing - СпособУказанияДатыЗапретаОчистка - - - ChoiceProcessing - СпособУказанияДатыЗапретаОбработкаВыбора - - 24 - true - true - false - true - true - true - true - - - ru - Общая дата - - - ОбщаяДата - - - - - ru - По разделам - - - ПоРазделам - - - - - ru - По разделам и объектам - - - ПоРазделамИОбъектам - - - - - ru - По объектам - - - ПоОбъектам - - - - Style.ФонУправляющегоПоля - - Normal - - СпособыУказания 218 СпособУказанияОбщаяДата 219 - - Отступ - 220 - true - true - - true - - - ОтступExtendedTooltip - 338 - Label - true - true - - Left - - - - ОтступКонтекстноеМеню - 221 - true - - Label - true - true - - Left - - - ДатаЗапретаСОписанием - 222 - - ОписаниеДатыЗапрета - 223 - - <key>ru</key> - <value>Дата запрета</value> - - true - true - - true - - - ОписаниеДатыЗапрета - - - OnChange - ОписаниеДатыЗапретаПриИзменении - - - ОписаниеДатыЗапретаExtendedTooltip - 340 - Label - true - true - - Left - - - - ОписаниеДатыЗапретаКонтекстноеМеню - 224 - true - - InputField - Enter - true - Left - true - - true - true - false - true - true - true - true - - - ru - Произвольная дата - - - ПроизвольнаяДата - - - - - ru - Конец прошлого года - - - КонецПрошлогоГода - - - - - ru - Конец прошлого квартала - - - КонецПрошлогоКвартала - - - - - ru - Конец прошлого месяца - - - КонецПрошлогоМесяца - - - - - ru - Конец прошлой недели - - - КонецПрошлойНедели - - - - - ru - Предыдущий день - - - ПредыдущийДень - - - - Style.ФонУправляющегоПоля - - Normal - - + ГруппаРежимыРаботы + 459 - ПроизвольнаяДата - 225 + ПростойРежим + 465 + + ЗапретИзмененияДанныхНеУстановлен + 467 + true + + true + + + ОписаниеДатыЗапрета + + None + + ЗапретИзмененияДанныхНеУстановленРасширеннаяПодсказка + 469 + Label + true + true + + Left + + + + ЗапретИзмененияДанныхНеУстановленКонтекстноеМеню + 468 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + Запрет изменения данных не установлен + + + + Vertical + + - ПроизвольнаяДатаИспользуется - 226 + ГруппаПроизвольнаяДата + 470 - ДатаЗапрета - 227 - true + ПроизвольнаяДатаЗапрета + 472 true true - ДатаЗапрета + ОписаниеДатыЗапрета None - - OnChange - ДатаЗапретаПриИзменении - - ДатаЗапретаExtendedTooltip - 343 + ПроизвольнаяДатаЗапретаРасширеннаяПодсказка + 474 Label true true @@ -959,8 +962,56 @@ - ДатаЗапретаКонтекстноеМеню - 228 + ПроизвольнаяДатаЗапретаКонтекстноеМеню + 473 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + Дата запрета: + + + ПроизвольнаяДата + + + Vertical + + + + ДатаЗапретаПростойРежим + 475 + true + true + + true + + + ДатаЗапрета + + + OnChange + ДатаЗапретаПриИзменении + + + ДатаЗапретаПростойРежимРасширеннаяПодсказка + 477 + Label + true + true + + Left + + + + ДатаЗапретаПростойРежимКонтекстноеМеню + 476 true InputField @@ -972,7 +1023,10 @@ true true true - true + + ru + ДП=01.01.0001 + true true true @@ -986,15 +1040,11 @@ <key>ru</key> - <value>Произвольная дата используется</value> + <value>Группа произвольная дата</value> - - ru - Произвольная дата используется - - ПроизвольнаяДатаИспользуетсяExtendedTooltip - 342 + ГруппаПроизвольнаяДатаРасширеннаяПодсказка + 471 Label true true @@ -1002,27 +1052,37 @@ Left - Page - - Vertical - auto - false + UsualGroup + + Auto + true + true + Auto + Auto - ПроизвольнаяДатаНеИспользуется - 229 + ГруппаБольшеВозможностей + 478 - ПустаяНадписьДляОтображенияСтраницы1 - 230 + БольшеВозможностей + 480 + + <key>ru</key> + <value>Больше возможностей >></value> + true true true + + ru + Указать относительную дату запрета и отсрочку + - ПустаяНадписьДляОтображенияСтраницы1ExtendedTooltip - 345 + БольшеВозможностейРасширеннаяПодсказка + 482 Label true true @@ -1031,14 +1091,18 @@ - ПустаяНадписьДляОтображенияСтраницы1КонтекстноеМеню - 231 + БольшеВозможностейКонтекстноеМеню + 481 true Label - true true + + Click + БольшеВозможностейНажатие + + true Left @@ -1049,15 +1113,11 @@ <key>ru</key> - <value>Произвольная дата не используется</value> + <value>Группа больше возможностей</value> - - ru - Произвольная дата не используется - - ПроизвольнаяДатаНеИспользуетсяExtendedTooltip - 344 + ГруппаБольшеВозможностейРасширеннаяПодсказка + 479 Label true true @@ -1065,11 +1125,14 @@ Left - Page - - Vertical - auto - false + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto true @@ -1079,15 +1142,11 @@ <key>ru</key> - <value>Произвольная дата</value> + <value>Простой режим</value> - - ru - Произвольная дата - - ПроизвольнаяДатаExtendedTooltip - 341 + ПростойРежимРасширеннаяПодсказка + 466 Label true true @@ -1095,150 +1154,211 @@ Left - Pages - - Auto + Page + + Vertical + auto + false - true - true - - true - - - <key>ru</key> - <value>Дата запрета с описанием</value> - - - ru - Дата запрета с описанием - - - ДатаЗапретаСОписаниемExtendedTooltip - 339 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - СвойстваНепроизвольнойДаты - 232 - НепроизвольнаяДатаИспользуется - 233 - - РазрешитьИзменениеДанныхДоДатыЗапрета - 234 - true - true - - true - - - РазрешитьИзменениеДанныхДоДатыЗапрета - - Right - - OnChange - РазрешитьИзменениеДанныхДоДатыЗапретаПриИзменении - - - РазрешитьИзменениеДанныхДоДатыЗапретаExtendedTooltip - 348 - Label - true - true - - Left - - - - РазрешитьИзменениеДанныхДоДатыЗапретаКонтекстноеМеню - 235 - true - - CheckBoxField - Enter - true - Left - true - - + РасширенныйРежим + 463 - СвойствоКоличествоДнейРазрешенияИзменения - 236 - - ИзменениеДанныхДоДатыЗапретаРазрешено - 237 - - КоличествоДнейРазрешенияЗаголовок - 238 - - <key>ru</key> - <value>В течение</value> - - true - true - - true - - - КоличествоДнейРазрешенияЗаголовокExtendedTooltip - 351 - Label - true - true - - Left - - - - КоличествоДнейРазрешенияЗаголовокКонтекстноеМеню - 239 - true - + ДатаЗапретаСОписанием + 222 + + ОписаниеДатыЗапрета + 223 + + <key>ru</key> + <value>Дата запрета</value> + + true + true + + true + + + ОписаниеДатыЗапрета + + + OnChange + ОписаниеДатыЗапретаПриИзменении + + + ОписаниеДатыЗапретаExtendedTooltip + 340 Label true true Left - - - КоличествоДнейРазрешения - 240 - - <key>ru</key> - <value> дней после даты запрета</value> - + + + ОписаниеДатыЗапретаКонтекстноеМеню + 224 + true + + InputField + Enter + true + Left + true + + + Clearing + ОписаниеДатыЗапретаОчистка + + 20 + true + true + false + true + true + true + true + + + ru + Не установлена + + + + + + ru + Произвольная дата + + + ПроизвольнаяДата + + + + + ru + Конец прошлого года + + + КонецПрошлогоГода + + + + + ru + Конец прошлого квартала + + + КонецПрошлогоКвартала + + + + + ru + Конец прошлого месяца + + + КонецПрошлогоМесяца + + + + + ru + Конец прошлой недели + + + КонецПрошлойНедели + + + + + ru + Предыдущий день + + + ПредыдущийДень + + + + Style.ФонУправляющегоПоля + + Normal + + + + ПроизвольнаяДата + 225 + + ПроизвольнаяДатаИспользуется + 226 + + ДатаЗапрета + 227 + true + true + + true + + + ДатаЗапрета + + None + + OnChange + ДатаЗапретаПриИзменении + + + ДатаЗапретаExtendedTooltip + 343 + Label + true + true + + Left + + + + ДатаЗапретаКонтекстноеМеню + 228 + true + + InputField + Enter + true + Left + true + + true + true + true + true + + ru + ДП=01.01.0001 + + true + true + true + Normal + + true true true - - КоличествоДнейРазрешения - - Right - - OnChange - КоличествоДнейРазрешенияПриИзменении - + + <key>ru</key> + <value>Произвольная дата используется</value> + + + ru + Произвольная дата используется + - КоличествоДнейРазрешенияExtendedTooltip - 352 + ПроизвольнаяДатаИспользуетсяExtendedTooltip + 342 Label true true @@ -1246,28 +1366,74 @@ Left - - КоличествоДнейРазрешенияКонтекстноеМеню - 241 - true - - InputField - Enter - true - Left - true - - - AutoComplete - КоличествоДнейРазрешенияАвтоПодбор - + Page + + Vertical + auto + false + + + + ПроизвольнаяДатаНеИспользуется + 229 + + ПустаяНадписьДляОтображенияСтраницы1 + 230 + true + true + + true + + + ПустаяНадписьДляОтображенияСтраницы1ExtendedTooltip + 345 + Label + true + true + + Left + + + + ПустаяНадписьДляОтображенияСтраницы1КонтекстноеМеню + 231 + true + + Label true true - true - true - true - true - Normal + + Left + + + true + true + + true + + + <key>ru</key> + <value>Произвольная дата не используется</value> + + + ru + Произвольная дата не используется + + + ПроизвольнаяДатаНеИспользуетсяExtendedTooltip + 344 + Label + true + true + + Left + + + Page + + Vertical + auto + false true @@ -1277,15 +1443,237 @@ <key>ru</key> - <value>Изменение данных до даты запрета разрешено</value> + <value>Произвольная дата</value> ru - Изменение данных до даты запрета разрешено + Произвольная дата - ИзменениеДанныхДоДатыЗапретаРазрешеноExtendedTooltip - 350 + ПроизвольнаяДатаExtendedTooltip + 341 + Label + true + true + + Left + + + Pages + + Auto + + + true + true + + true + + + <key>ru</key> + <value>Дата запрета с описанием</value> + + + ДатаЗапретаСОписаниемExtendedTooltip + 339 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + СвойстваДатыЗапрета + 232 + + ОтносительнаяДата + 483 + + ГруппаКоличествоДнейРазрешения + 485 + + РазрешитьИзменениеДанныхДоДатыЗапрета + 487 + true + true + + true + + + РазрешитьИзменениеДанныхДоДатыЗапрета + + Right + + OnChange + РазрешитьИзменениеДанныхДоДатыЗапретаПриИзменении + + + РазрешитьИзменениеДанныхДоДатыЗапретаРасширеннаяПодсказка + 489 + Label + true + true + + Left + + + + РазрешитьИзменениеДанныхДоДатыЗапретаКонтекстноеМеню + 488 + true + + CheckBoxField + Enter + true + Left + true + + + + КоличествоДнейРазрешения + 490 + + <key>ru</key> + <value> дней</value> + + true + true + + true + + + КоличествоДнейРазрешения + + Right + + OnChange + КоличествоДнейРазрешенияПриИзменении + + + КоличествоДнейРазрешенияРасширеннаяПодсказка + 492 + Label + true + true + + Left + + + + КоличествоДнейРазрешенияКонтекстноеМеню + 491 + true + + InputField + Enter + true + Left + true + + + AutoComplete + КоличествоДнейРазрешенияАвтоПодбор + + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа количество дней разрешения</value> + + + ГруппаКоличествоДнейРазрешенияРасширеннаяПодсказка + 486 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + + + ПояснениеНепроизвольнойДаты + 493 + + <key>ru</key> + <value>Запрещено изменение данных по %1</value> + + true + true + + true + + + ПояснениеНепроизвольнойДатыРасширеннаяПодсказка + 495 + Label + true + true + + Left + + + + ПояснениеНепроизвольнойДатыКонтекстноеМеню + 494 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + + + true + true + + true + + + <key>ru</key> + <value>Относительная дата</value> + + + ru + Относительная дата + + + ОтносительнаяДатаРасширеннаяПодсказка + 484 Label true true @@ -1295,24 +1683,28 @@ Page - auto + Vertical false - ИзменениеДанныхДоДатыЗапретаНеРазрешено - 242 + НетПояснения + 247 - ПустаяНадписьДляОтображенияСтраницы2 - 243 + МеньшеВозможностей + 248 + + <key>ru</key> + <value><< Меньше возможностей</value> + true true true - ПустаяНадписьДляОтображенияСтраницы2ExtendedTooltip - 354 + МеньшеВозможностейРасширеннаяПодсказка + 357 Label true true @@ -1321,14 +1713,18 @@ - ПустаяНадписьДляОтображенияСтраницы2КонтекстноеМеню - 244 + МеньшеВозможностейКонтекстноеМеню + 249 true Label - true true + + Click + МеньшеВозможностейНажатие + + true Left @@ -1339,15 +1735,11 @@ <key>ru</key> - <value>Изменение данных до даты запрета не разрешено</value> + <value>Нет пояснения</value> - - ru - Изменение данных до даты запрета не разрешено - - ИзменениеДанныхДоДатыЗапретаНеРазрешеноExtendedTooltip - 353 + НетПоясненияРасширеннаяПодсказка + 356 Label true true @@ -1369,15 +1761,11 @@ <key>ru</key> - <value>Свойство количество дней разрешения изменения</value> + <value>Свойства даты запрета</value> - - ru - Свойство количество дней разрешения изменения - - СвойствоКоличествоДнейРазрешенияИзмененияExtendedTooltip - 349 + СвойстваДатыЗапретаРасширеннаяПодсказка + 346 Label true true @@ -1390,41 +1778,6 @@ Auto - - ПояснениеНепроизвольнойДаты - 245 - true - true - - true - - - ПояснениеНепроизвольнойДатыExtendedTooltip - 355 - Label - true - true - - Left - - - - ПояснениеНепроизвольнойДатыКонтекстноеМеню - 246 - true - - Label - 53 - true - 3 - true - - 128 - - - Left - - true true @@ -1432,77 +1785,11 @@ <key>ru</key> - <value>Непроизвольная дата используется</value> + <value>Расширенный режим</value> - - ru - Непроизвольная дата используется - - НепроизвольнаяДатаИспользуетсяExtendedTooltip - 347 - Label - true - true - - Left - - - Page - - Vertical - false - - - - НепроизвольнаяДатаНеИспользуется - 247 - - ПустаяНадписьДляОтображенияСтраницы3 - 248 - true - true - - true - - - ПустаяНадписьДляОтображенияСтраницы3ExtendedTooltip - 357 - Label - true - true - - Left - - - - ПустаяНадписьДляОтображенияСтраницы3КонтекстноеМеню - 249 - true - - Label - true - true - - Left - - - true - true - - true - - - <key>ru</key> - <value>Непроизвольная дата не используется</value> - - - ru - Непроизвольная дата не используется - - - НепроизвольнаяДатаНеИспользуетсяExtendedTooltip - 356 + РасширенныйРежимРасширеннаяПодсказка + 464 Label true true @@ -1524,15 +1811,11 @@ <key>ru</key> - <value>Свойства непроизвольной даты</value> + <value>Группа режимы работы</value> - - ru - Свойства непроизвольной даты - - СвойстваНепроизвольнойДатыExtendedTooltip - 346 + ГруппаРежимыРаботыРасширеннаяПодсказка + 460 Label true true @@ -1554,10 +1837,6 @@ ru Способ указания общая дата - - ru - Способ указания общая дата - СпособУказанияОбщаяДатаExtendedTooltip 337 @@ -1688,20 +1967,18 @@ 142 true - InputField + LabelField Auto + true true Left true - + Show + Always + 16 true true - true - true - true - true - Normal @@ -1709,7 +1986,7 @@ 135 <key>ru</key> - <value>Запрет изменения по</value> + <value>Действует по</value> true true @@ -1758,32 +2035,6 @@ ДатыЗапретаКоманднаяПанель 134 - - ДатыЗапретаРазделы - 399 - true - true - - true - - - ДатыЗапретаРазделыРасширеннаяПодсказка - 400 - Label - true - true - - Left - - - Form.Command.Разделы - Normal - Auto - true - true - UserCmds - Auto - ДатыЗапретаПодобрать 401 @@ -1809,6 +2060,7 @@ true UserCmds Auto + InCommandBarAndInAdditionalSubmenu ДатыЗапретаДобавить @@ -1862,6 +2114,38 @@ true UserCmds Auto + InCommandBarAndInAdditionalSubmenu + + + ДатыЗапретаУдалить + 457 + + <key>ru</key> + <value>Отключить</value> + + true + true + + true + + + ДатыЗапретаУдалитьРасширеннаяПодсказка + 458 + Label + true + true + + Left + + + Form.Item.ДатыЗапрета.StandardCommand.Delete + Normal + Auto + true + true + UserCmds + Auto + InCommandBarAndInAdditionalSubmenu ДатыЗапретаСтандартныеКоманды @@ -1875,10 +2159,6 @@ ru Даты запрета стандартные команды - - ru - Даты запрета стандартные команды - ДатыЗапретаСтандартныеКомандыРасширеннаяПодсказка 404 @@ -2066,6 +2346,10 @@ ДатыЗапретаКонтекстноеМенюУдалить 276 + + <key>ru</key> + <value>Отключить</value> + true true @@ -2130,7 +2414,6 @@ AutoUse true true - false true Auto Auto @@ -2153,10 +2436,6 @@ ru Способ указания по разделам объектам - - ru - Способ указания по разделам объектам - СпособУказанияПоРазделамОбъектамExtendedTooltip 358 @@ -2183,10 +2462,6 @@ ru Способы указания - - ru - Способы указания - СпособыУказанияExtendedTooltip 336 @@ -2202,6 +2477,135 @@ Auto + + ГруппаРасширенныеВозможности + 442 + + СпособУказанияДатыЗапрета + 216 + + <key>ru</key> + <value>Указывать дату запрета</value> + + true + true + + true + + + СпособУказанияДатыЗапрета + + + СпособУказанияДатыЗапретаExtendedTooltip + 335 + Label + true + true + + Left + + + + СпособУказанияДатыЗапретаКонтекстноеМеню + 217 + true + + InputField + Enter + true + Left + true + + + Clearing + СпособУказанияДатыЗапретаОчистка + + + ChoiceProcessing + СпособУказанияДатыЗапретаОбработкаВыбора + + 24 + true + true + false + true + true + true + true + + + ru + Общая дата + + + ОбщаяДата + + + + + ru + По разделам + + + ПоРазделам + + + + + ru + По разделам и объектам + + + ПоРазделамИОбъектам + + + + + ru + По объектам + + + ПоОбъектам + + + + Style.ФонУправляющегоПоля + + Normal + + + true + true + + true + + + <key>ru</key> + <value>Другие способы указания даты запрета</value> + + + ГруппаРасширенныеВозможностиРасширеннаяПодсказка + 443 + Label + true + true + + Left + + + UsualGroup + + Collapsible + true + Button + NormalSeparation + true + true + auto + Auto + Auto + + true true @@ -2211,10 +2615,6 @@ ru Страница пользователь выбран - - ru - Страница пользователь выбран - СтраницаПользовательВыбранExtendedTooltip 334 @@ -2271,6 +2671,7 @@ Vertical Auto + NormalSeparation true true Auto @@ -2304,68 +2705,18 @@ Vertical Auto + NormalSeparation true true Auto Auto + None + false ФормаКоманднаяПанель -1 - - ПоказатьОтчет - 429 - true - true - - true - - - ПоказатьОтчетРасширеннаяПодсказка - 430 - Label - true - true - - Left - - - Form.Command.ПоказатьОтчет - Normal - Auto - true - true - UserCmds - Auto - - - Обновить - 200 - true - true - - true - - - ОбновитьExtendedTooltip - 321 - Label - true - true - - Left - - - Form.Command.Обновить - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - Left true @@ -2389,10 +2740,9 @@ OnClose ПриЗакрытии - 60 + CustomizeForm DontBlock true - true Vertical true true @@ -3102,7 +3452,7 @@ РазрешитьИзменениеДанныхДоДатыЗапрета <key>ru</key> - <value>Разрешить изменение данных до даты запрета</value> + <value>Вступает в действие с отсрочкой в</value> 22 @@ -3259,6 +3609,24 @@ true + + УстановкаДатыЗапретаНовое + + <key>ru</key> + <value>Установка даты запрета новое</value> + + 30 + + String + + + + true + + + true + + ПодобратьОбъекты @@ -3329,28 +3697,6 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> - <formCommands> - <name>Разделы</name> - <title> - <key>ru</key> - <value>Разделы</value> - - 6 - - ru - Разделы - - - true - - - - Разделы - - - DontUse - Auto - ПоказатьОтчет diff --git a/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ДатыЗапретаИзменения/Module.bsl b/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ДатыЗапретаИзменения/Module.bsl index f72d607ef..7ac1d0332 100644 --- a/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ДатыЗапретаИзменения/Module.bsl +++ b/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ДатыЗапретаИзменения/Module.bsl @@ -1,3 +1,4 @@ + #Область ОписаниеПеременных &НаКлиенте @@ -9,7 +10,7 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - + УстановитьУсловноеОформление(); Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. @@ -32,7 +33,7 @@ // Настройка полей формы Если Параметры.ДатыЗапретаЗагрузкиДанных Тогда - Если НЕ СвойстваРазделов.ДатыЗапретаЗагрузкиВнедрены Тогда + Если Не СвойстваРазделов.ДатыЗапретаЗагрузкиВнедрены Тогда ВызватьИсключение ДатыЗапретаИзмененияСлужебный.ТекстОшибкиДатыЗапретаЗагрузкиНеВнедрены(); КонецЕсли; @@ -41,11 +42,11 @@ КонецЕсли; Элементы.ИспользованиеДатЗапретаВыключеноНадпись.Заголовок = - НСтр("ru = 'Использование дат запрета загрузки выключено в настройках программы.'"); + НСтр("ru = 'Даты запрета загрузки данных прошлых периодов из других программ отключены в настройках.'"); Заголовок = НСтр("ru = 'Даты запрета загрузки данных'"); Элементы.УстановкаДатыЗапрета.СписокВыбора.НайтиПоЗначению("НетЗапрета").Представление = - НСтр("ru = 'Нет запрета загрузки данных'"); + НСтр("ru = 'Не установлено'"); Элементы.УстановкаДатыЗапрета.СписокВыбора.НайтиПоЗначению("ДляВсехПользователей").Представление = НСтр("ru = 'Для всех информационных баз'"); Элементы.УстановкаДатыЗапрета.СписокВыбора.НайтиПоЗначению("ПоПользователям").Представление = @@ -54,15 +55,14 @@ Элементы.ПользователиПолноеПредставление.Заголовок = НСтр("ru = 'Программа: информационная база'"); - ЗначениеДляВсехПользователей = - Перечисления.ВидыНазначенияДатЗапрета.ДляВсехИнформационныхБаз; + ЗначениеДляВсехПользователей = Перечисления.ВидыНазначенияДатЗапрета.ДляВсехИнформационныхБаз; ТипыПользователя = Метаданные.РегистрыСведений.ДатыЗапретаИзменения.Измерения.Пользователь.Тип.Типы(); - Для каждого ТипПользователя Из ТипыПользователя Цикл + Для Каждого ТипПользователя Из ТипыПользователя Цикл ОбъектМетаданных = Метаданные.НайтиПоТипу(ТипПользователя); - Если НЕ Метаданные.ПланыОбмена.Содержит(ОбъектМетаданных) Тогда + Если Не Метаданные.ПланыОбмена.Содержит(ОбъектМетаданных) Тогда Продолжить; КонецЕсли; ПустаяСсылкаУзлаПланаОбмена = ОбщегоНазначения.МенеджерОбъектаПоПолномуИмени( @@ -72,13 +72,16 @@ ПустаяСсылкаУзлаПланаОбмена, ОбъектМетаданных.Представление()); КонецЦикла; Элементы.Пользователи.КартинкаСтрок = БиблиотекаКартинок.ПиктограммыПланОбменаУзел; + + НавигационнаяСсылка = + "e1cib/command/РегистрСведений.ДатыЗапретаИзменения.Команда.ДатыЗапретаЗагрузкиДанных"; Иначе Если Не Пользователи.РолиДоступны("ДобавлениеИзменениеДатЗапретаИзменения") Тогда ВызватьИсключение НСтр("ru = 'Недостаточно прав для работы с датами запрета изменения.'"); КонецЕсли; Элементы.ИспользованиеДатЗапретаВыключеноНадпись.Заголовок = - НСтр("ru = 'Использование дат запрета изменения выключено в настройках программы.'"); + НСтр("ru = 'Даты запрета ввода и редактирования данных прошлых периодов отключены в настройках программы.'"); ЗначениеДляВсехПользователей = Перечисления.ВидыНазначенияДатЗапрета.ДляВсехПользователей; @@ -87,6 +90,9 @@ СписокТиповПользователей.Добавить( Тип("СправочникСсылка.ВнешниеПользователи"), НСтр("ru = 'Внешний пользователь'")); + + НавигационнаяСсылка = + "e1cib/command/РегистрСведений.ДатыЗапретаИзменения.Команда.ДатыЗапретаИзмененияДанных"; КонецЕсли; Список = Элементы.СпособУказанияДатыЗапрета.СписокВыбора; @@ -100,7 +106,7 @@ Список.Удалить(Список.НайтиПоЗначению("ПоРазделам")); Список.Удалить(Список.НайтиПоЗначению("ПоОбъектам")); - ИначеЕсли НЕ ПоказыватьРазделы Тогда + ИначеЕсли Не ПоказыватьРазделы Тогда Список.Удалить(Список.НайтиПоЗначению("ПоРазделамИОбъектам")); Список.Удалить(Список.НайтиПоЗначению("ПоРазделам")); ИначеЕсли ВсеРазделыБезОбъектов Тогда @@ -132,7 +138,7 @@ Если ВыбранноеЗначение <> Неопределено Тогда ВыделенныеСтроки = Элементы.ДатыЗапрета.ВыделенныеСтроки; - Для каждого ВыделеннаяСтрока Из ВыделенныеСтроки Цикл + Для Каждого ВыделеннаяСтрока Из ВыделенныеСтроки Цикл Строка = ДатыЗапрета.НайтиПоИдентификатору(ВыделеннаяСтрока); Строка.ОписаниеДатыЗапрета = ВыбранноеЗначение.ОписаниеДатыЗапрета; Строка.КоличествоДнейРазрешения = ВыбранноеЗначение.КоличествоДнейРазрешения; @@ -165,32 +171,30 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) - ТекстВопроса = ТекстВопросаОНесохраненныхДанных(); - - ТекстУведомления = ТекстУведомленияОНеиспользованныхРежимахНастройки(); - - Если НЕ ЗначениеЗаполнено(ТекстВопроса) Тогда - ТекстВопроса = ТекстУведомления; - ТекстУведомления = ""; + Если ЗавершениеРаботы Тогда + Возврат; КонецЕсли; - Если ЗначениеЗаполнено(ТекстУведомления) Тогда - ТекстВопроса = ТекстВопроса + Символы.ПС + Символы.ПС + ТекстУведомления; + ТекстВопроса = ТекстУведомленияОНеиспользованныхРежимахНастройки(); + Если Не ЗначениеЗаполнено(ТекстВопроса) Тогда + Возврат; КонецЕсли; - Если ЗначениеЗаполнено(ТекстВопроса) Тогда - ТекстВопроса = ТекстВопроса + Символы.ПС + Символы.ПС + ТекстВопросаЗакрытьФорму(); - ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы( - ЭтотОбъект, Отказ, ТекстВопроса, "ЗакрытьФормуБезПодтверждения"); - КонецЕсли; + ТекстВопроса = НСтр("ru = 'Заданные настройки дат запрета будут автоматически скорректированы.'") + + Символы.ПС + Символы.ПС + ТекстВопроса + Символы.ПС + Символы.ПС + НСтр("ru = 'Закрыть?'"); + ОбщегоНазначенияКлиент.ПоказатьПодтверждениеЗакрытияПроизвольнойФормы( + ЭтотОбъект, Отказ, ЗавершениеРаботы, ТекстВопроса, "ЗакрытьФормуБезПодтверждения"); КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; РазблокироватьВсеЗаписи(ЭтотОбъект); КонецПроцедуры @@ -209,26 +213,18 @@ &НаСервере Процедура ПриИзмененииИспользованияДатЗапретаНаСервере() - Элементы.ИспользованиеДатЗапретаВыключено.Видимость = - Параметры.ДатыЗапретаЗагрузкиДанных - И Не Константы.ИспользоватьДатыЗапретаЗагрузки.Получить() - Или Не Параметры.ДатыЗапретаЗагрузкиДанных - И Не Константы.ИспользоватьДатыЗапретаИзменения.Получить(); + Элементы.ИспользованиеДатЗапрета.ТекущаяСтраница = ?(Параметры.ДатыЗапретаЗагрузкиДанных + И Не Константы.ИспользоватьДатыЗапретаЗагрузки.Получить() + Или Не Параметры.ДатыЗапретаЗагрузкиДанных + И Не Константы.ИспользоватьДатыЗапретаИзменения.Получить(), + Элементы.Отключено, Элементы.Включено); КонецПроцедуры &НаКлиенте -Процедура УстановкаДатыЗапретаОчистка(Элемент, СтандартнаяОбработка) - - СтандартнаяОбработка = Ложь; - -КонецПроцедуры - -&НаКлиенте -Процедура УстановкаДатыЗапретаОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) - - СтандартнаяОбработка = Ложь; +Процедура УстановкаДатыЗапретаПриИзменении(Элемент) + ВыбранноеЗначение = УстановкаДатыЗапретаНовое; Если УстановкаДатыЗапрета = ВыбранноеЗначение Тогда Возврат; КонецЕсли; @@ -238,17 +234,13 @@ Если ТекущаяУстановкаДатыЗапрета = "ПоПользователям" И ВыбранноеЗначение = "ДляВсехПользователей" Тогда - ТекстВопроса = ТекстВопросаУдалитьВсеДатыЗапретаКромеДатДляВсехПользователей(); + ТекстВопроса = НСтр("ru = 'Отключить все даты запрета, кроме установленных для всех пользователей?'"); - ИначеЕсли ТекущаяУстановкаДатыЗапрета = "ПоПользователям" + ИначеЕсли (ТекущаяУстановкаДатыЗапрета = "ПоПользователям" Или ТекущаяУстановкаДатыЗапрета = "ДляВсехПользователей") И ВыбранноеЗначение = "НетЗапрета" Тогда - ТекстВопроса = ТекстВопросаУдалитьВсеДатыЗапрета(); + ТекстВопроса = НСтр("ru = 'Отключить все установленные даты запрета?'") - ИначеЕсли ТекущаяУстановкаДатыЗапрета = "ДляВсехПользователей" - И ВыбранноеЗначение = "НетЗапрета" Тогда - - ТекстВопроса = ТекстВопросаУдалитьВсеДатыЗапрета(); КонецЕсли; Если ЗначениеЗаполнено(ТекстВопроса) Тогда @@ -286,16 +278,16 @@ ТекстВопроса = ""; Если ТекущийСпособ = "ПоРазделамИОбъектам" И ВыбранноеЗначение = "ОбщаяДата" Тогда - ТекстВопроса = ТекстВопросаУдалитьДатыЗапретаДляРазделовИОбъектов(); + ТекстВопроса = НСтр("ru = 'Отключить даты запрета, установленные для разделов и объектов?'"); ИначеЕсли ТекущийСпособ = "ПоРазделамИОбъектам" И ВыбранноеЗначение = "ПоРазделам" - ИЛИ ТекущийСпособ = "ПоОбъектам" И ВыбранноеЗначение = "ОбщаяДата" Тогда - ТекстВопроса = ТекстВопросаУдалитьДатыЗапретаДляОбъектов(); + Или ТекущийСпособ = "ПоОбъектам" И ВыбранноеЗначение = "ОбщаяДата" Тогда + ТекстВопроса = НСтр("ru = 'Отключить даты запрета, установленные для объектов?'"); ИначеЕсли ТекущийСпособ = "ПоРазделамИОбъектам" И ВыбранноеЗначение = "ПоОбъектам" - ИЛИ ТекущийСпособ = "ПоРазделам" И ВыбранноеЗначение = "ПоОбъектам" - ИЛИ ТекущийСпособ = "ПоРазделам" И ВыбранноеЗначение = "ОбщаяДата" Тогда - ТекстВопроса = ТекстВопросаУдалитьДатыЗапретаДляРазделов(); + Или ТекущийСпособ = "ПоРазделам" И ВыбранноеЗначение = "ПоОбъектам" + Или ТекущийСпособ = "ПоРазделам" И ВыбранноеЗначение = "ОбщаяДата" Тогда + ТекстВопроса = НСтр("ru = 'Отключить даты запрета, установленные для разделов?'"); КонецЕсли; @@ -325,7 +317,17 @@ &НаКлиенте Процедура ОписаниеДатыЗапретаПриИзменении(Элемент) - ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); + ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); + ЗаписатьОбщуюДатуЗапретаСОписанием(); + +КонецПроцедуры + +&НаКлиенте +Процедура ОписаниеДатыЗапретаОчистка(Элемент, СтандартнаяОбработка) + + СтандартнаяОбработка = Ложь; + ОписаниеДатыЗапрета = Элементы.ОписаниеДатыЗапрета.СписокВыбора[0].Значение; + ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); ЗаписатьОбщуюДатуЗапретаСОписанием(); КонецПроцедуры @@ -333,17 +335,15 @@ &НаКлиенте Процедура ДатаЗапретаПриИзменении(Элемент) - ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); + ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); ЗаписатьОбщуюДатуЗапретаСОписанием(); - ОбновитьНаличиеДатЗапретаТекущегоПользователя(); - КонецПроцедуры &НаКлиенте Процедура РазрешитьИзменениеДанныхДоДатыЗапретаПриИзменении(Элемент) - ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); + ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); ЗаписатьОбщуюДатуЗапретаСОписанием(); КонецПроцедуры @@ -351,7 +351,7 @@ &НаКлиенте Процедура КоличествоДнейРазрешенияПриИзменении(Элемент) - ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); + ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); ЗаписатьОбщуюДатуЗапретаСОписанием(); КонецПроцедуры @@ -365,11 +365,25 @@ КоличествоДнейРазрешения = Текст; - ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); + ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); ЗаписатьОбщуюДатуЗапретаСОписанием(); КонецПроцедуры +&НаКлиенте +Процедура БольшеВозможностейНажатие(Элемент) + + Элементы.ГруппаРежимыРаботы.ТекущаяСтраница = Элементы.РасширенныйРежим; + +КонецПроцедуры + +&НаКлиенте +Процедура МеньшеВозможностейНажатие(Элемент) + + Элементы.ГруппаРежимыРаботы.ТекущаяСтраница = Элементы.ПростойРежим; + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовТаблицыФормыПользователи @@ -379,7 +393,7 @@ СтандартнаяОбработка = Ложь; - Элементы.Пользователи.ИзменитьСтроку(); + ПодключитьОбработчикОжидания("ПользователиИзменитьСтроку", 0.1, Истина); КонецПроцедуры @@ -408,8 +422,8 @@ Если ПользователиПродолжитьДобавление <> Истина Тогда Отказ = Истина; - ПроверкаНесохраненныхЗаписей( - Новый ОписаниеОповещения("ПользователиПередНачаломДобавленияЗавершение", ЭтотОбъект)); + ПользователиПродолжитьДобавление = Истина; + Элементы.Пользователи.ДобавитьСтроку(); Возврат; КонецЕсли; @@ -426,23 +440,12 @@ Поле = Элемент.ТекущийЭлемент; Если ТекущиеДанные.Пользователь = ЗначениеДляВсехПользователей Тогда - // Предопределенное значение "<Для всех пользователей>" не изменяется. - Если Поле = Элементы.ПользователиПолноеПредставление Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - ТекстСообщенияЗначениеДляВсехПользователейНеИзменяется()); - - ИначеЕсли Поле = Элементы.ПользователиКомментарий Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - ТекстСообщенияКомментарийДляВсехПользователейНеИзменяется()); - КонецЕсли; Отказ = Истина; ИначеЕсли Поле <> Элементы.ПользователиПолноеПредставление - И НЕ ЗначениеЗаполнено(ТекущиеДанные.Представление) Тогда + И Не ЗначениеЗаполнено(ТекущиеДанные.Представление) Тогда // Все значения, кроме предопределенного значения "<Для всех пользователей>", // должны быть заполнены до установки описания или даты запрета. Элемент.ТекущийЭлемент = Элементы.ПользователиПолноеПредставление; - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - ТекстСообщенияСначалаВыберитеПользователя()); КонецЕсли; Если Отказ Тогда @@ -450,7 +453,7 @@ Элементы.ПользователиКомментарий.ТолькоПросмотр = Ложь; Иначе Элементы.ПользователиКомментарий.ТолькоПросмотр = - НЕ ЗначениеЗаполнено(ТекущиеДанные.Представление); + Не ЗначениеЗаполнено(ТекущиеДанные.Представление); Если ЗначениеЗаполнено(ТекущиеДанные.Представление) Тогда ЗаблокироватьНаборЗаписейПользователя(ТекущиеДанные.Пользователь, Элемент.ТекущаяСтрока); @@ -464,11 +467,6 @@ Отказ = Истина; - Если Элементы.Пользователи.ВыделенныеСтроки.Количество() > 1 Тогда - ПоказатьПредупреждение(, ТекстСообщенияДляУдаленияВыделитеОднуСтроку()); - Возврат; - КонецЕсли; - ТекущиеДанные = Элементы.Пользователи.ТекущиеДанные; ДополнительныеПараметры = Новый Структура; @@ -479,24 +477,28 @@ ТекущиеДанные.Пользователь = ЗначениеДляВсехПользователей); Если ЗначениеЗаполнено(ТекущиеДанные.Представление) - И НЕ ТекущиеДанные.БезДатыЗапрета Тогда + И Не ТекущиеДанные.БезДатыЗапрета Тогда // Для удаления пользователей с записями требуется подтверждение. Если ДополнительныеПараметры.ДатыЗапретаДляВсехПользователей Тогда - ТекстВопроса = ТекстВопросаУдалитьДатыЗапретаДляВсехПользователей(); + ТекстВопроса = НСтр("ru = 'Отключить даты запрета для всех пользователей?'"); Иначе Если ТипЗнч(ТекущиеДанные.Пользователь) = Тип("СправочникСсылка.Пользователи") Тогда - ТекстВопроса = ТекстВопросаУдалитьДатыЗапретаДляПользователя(); + ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Отключить даты запрета для ""%1""?'"), ТекущиеДанные.Пользователь); ИначеЕсли ТипЗнч(ТекущиеДанные.Пользователь) = Тип("СправочникСсылка.ГруппыПользователей") Тогда - ТекстВопроса = ТекстВопросаУдалитьДатыЗапретаДляГруппыПользователей(); + ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Отключить даты запрета для группы пользователей ""%1""?'"), ТекущиеДанные.Пользователь); ИначеЕсли ТипЗнч(ТекущиеДанные.Пользователь) = Тип("СправочникСсылка.ВнешниеПользователи") Тогда - ТекстВопроса = ТекстВопросаУдалитьДатыЗапретаДляВнешнегоПользователя(); + ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Отключить даты запрета для внешнего пользователя ""%1""?'"), ТекущиеДанные.Пользователь); ИначеЕсли ТипЗнч(ТекущиеДанные.Пользователь) = Тип("СправочникСсылка.ГруппыВнешнихПользователей") Тогда - ТекстВопроса = ТекстВопросаУдалитьДатыЗапретаДляГруппыВнешнихПользователей(); + ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Отключить даты запрета для группы внешних пользователей ""%1""?'"), ТекущиеДанные.Пользователь); Иначе - ТекстВопроса = ТекстВопросаУдалитьДатыЗапрета(); + ТекстВопроса = НСтр("ru = 'Отключить даты запрета?'") КонецЕсли; КонецЕсли; @@ -516,7 +518,7 @@ ТекущиеДанные = Элементы.Пользователи.ТекущиеДанные; - Если НЕ ЗначениеЗаполнено(ТекущиеДанные.Представление) Тогда + Если Не ЗначениеЗаполнено(ТекущиеДанные.Представление) Тогда ТекущиеДанные.НомерКартинки = -1; ПодключитьОбработчикОжидания("ОбработчикОжиданияВыбратьПользователей", 0.1, Истина); КонецЕсли; @@ -547,7 +549,7 @@ Отбор = Новый Структура("Пользователь"); - Для каждого Значение Из ВыбранноеЗначение Цикл + Для Каждого Значение Из ВыбранноеЗначение Цикл Отбор.Пользователь = Значение; Если ПользователиДатЗапрета.НайтиСтроки(Отбор).Количество() = 0 Тогда ЗаблокироватьИЗаписатьПустыеДаты( @@ -577,7 +579,7 @@ ТекущиеДанные = Элементы.Пользователи.ТекущиеДанные; - Если НЕ ЗначениеЗаполнено(ТекущиеДанные.ПолноеПредставление) Тогда + Если Не ЗначениеЗаполнено(ТекущиеДанные.ПолноеПредставление) Тогда ТекущиеДанные.ПолноеПредставление = ТекущиеДанные.Представление; КонецЕсли; @@ -590,13 +592,12 @@ ТекущиеДанные = Элементы.Пользователи.ТекущиеДанные; Если ТекущиеДанные.Пользователь = ЗначениеДляВсехПользователей Тогда - // Элемент для всех пользователей присутствует всегда. - ПоказатьПредупреждение(, ТекстСообщенияЗначениеДляВсехПользователейНеИзменяется()); - Иначе - // Возможна смена пользователя на себя и на еще не выбранного в списке. - ВыбратьПодобратьПользователей(); + Возврат; КонецЕсли; + // Возможна смена пользователя на себя и на еще не выбранного в списке. + ВыбратьПодобратьПользователей(); + КонецПроцедуры &НаКлиенте @@ -634,11 +635,10 @@ Строки = ПользователиДатЗапрета.НайтиСтроки(Отбор); Если Строки.Количество() = 0 Тогда - Если НЕ ЗаменитьПользователяНабораЗаписей(ТекущийПользователь, ВыбранноеЗначение) Тогда - ПоказатьПредупреждение(, - ТекстСообщенияЗначениеУжеДобавленоВСписок() - + Символы.ПС - + ТекстСообщенияОбновитьДанныеФормыF5()); + Если Не ЗаменитьПользователяНабораЗаписей(ТекущийПользователь, ВыбранноеЗначение) Тогда + ПоказатьПредупреждение(, СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = '""%1"" уже есть в списке пользователей. + |Обновите данные формы (клавиша F5).'"), ВыбранноеЗначение)); Возврат; КонецЕсли; // Установка выбранного пользователя. @@ -649,12 +649,13 @@ Элементы.ПользователиКомментарий.ТолькоПросмотр = Ложь; ЗаполнитьНомераКартинокПользователейДатЗапрета(Элементы.Пользователи.ТекущаяСтрока); Элементы.Пользователи.ЗакончитьРедактированиеСтроки(Ложь); - ОбновитьДанныеПользователя(Ложь); + ОбновитьДанныеПользователя(); ОповеститьОбИзменении(Тип("РегистрСведенийКлючЗаписи.ДатыЗапретаИзменения")); Элементы.Пользователи.ТекущийЭлемент = Элементы.ПользователиКомментарий; - Элементы.Пользователи.ИзменитьСтроку(); + ПодключитьОбработчикОжидания("ПользователиИзменитьСтроку", 0.1, Истина); Иначе - ПоказатьПредупреждение(, ТекстСообщенияЗначениеУжеДобавленоВСписок()); + ПоказатьПредупреждение(, + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '""%1"" уже есть в списке пользователей.'"), ВыбранноеЗначение)); КонецЕсли; КонецПроцедуры @@ -701,7 +702,7 @@ СтандартнаяОбработка = Ложь; - Элементы.ДатыЗапрета.ИзменитьСтроку(); + ПодключитьОбработчикОжидания("ДатыЗапретаИзменитьСтроку", 0.1, Истина); КонецПроцедуры @@ -721,22 +722,21 @@ КонецЕсли; Если Копирование - ИЛИ ВсеРазделыБезОбъектов - ИЛИ СпособУказанияДатыЗапрета = "ПоРазделам" Тогда + Или ВсеРазделыБезОбъектов + Или СпособУказанияДатыЗапрета = "ПоРазделам" Тогда Отказ = Истина; Возврат; КонецЕсли; Если ТекущийПользователь = Неопределено Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщенияСначалаВыберитеПользователя()); Отказ = Истина; Возврат; КонецЕсли; ТекущийРаздел = ТекущийРаздел(, Истина); Если ТекущийРаздел = РазделПустаяСсылка Тогда - ПоказатьПредупреждение(, ТекстСообщенияВВыбранномРазделеДатыЗапретаДляОбъектовНеУстанавливаются()); + ПоказатьПредупреждение(, ТекстСообщенияВВыбранномРазделеДатыЗапретаДляОбъектовНеУстанавливаются(ТекущийРаздел)); Отказ = Истина; Возврат; КонецЕсли; @@ -751,7 +751,7 @@ Если ПоказыватьРазделыТекущегоПользователя Тогда Родитель = ТекущиеДанные.ПолучитьРодителя(); - Если НЕ ТекущиеДанные.ЭтоРаздел + Если Не ТекущиеДанные.ЭтоРаздел И Родитель <> Неопределено Тогда // Добавление объекта в раздел. Отказ = Истина; @@ -764,7 +764,7 @@ Элемент.ДобавитьСтроку(); КонецЕсли; Иначе - ПоказатьПредупреждение(, ТекстСообщенияВВыбранномРазделеДатыЗапретаДляОбъектовНеУстанавливаются()); + ПоказатьПредупреждение(, ТекстСообщенияВВыбранномРазделеДатыЗапретаДляОбъектовНеУстанавливаются(ТекущийРаздел)); Отказ = Истина; КонецЕсли; @@ -785,53 +785,38 @@ // Переход к доступному полю или открытие формы. ОткрытьФормуРедактированияДатыЗапрета = Ложь; - ОткрытьФормуВыбораРазделов = Ложь; Если Поле = Элементы.ДатыЗапретаПолноеПредставление Тогда Если ТекущиеДанные.ЭтоРаздел Тогда - Если НазначениеДляВсех(ТекущийПользователь) Тогда + Если ЭтоВсеПользователи(ТекущийПользователь) Тогда // Все разделы всегда заполнены, их не требуется изменять. Если ТекущиеДанные.ОписаниеДатыЗапрета <> "ПроизвольнаяДата" - ИЛИ Поле = Элементы.ДатыЗапретаОписаниеДатыЗапретаПредставление Тогда + Или Поле = Элементы.ДатыЗапретаОписаниеДатыЗапретаПредставление Тогда ОткрытьФормуРедактированияДатыЗапрета = Истина; Иначе ТекущийЭлемент = Элементы.ДатыЗапретаДатаЗапрета; - Если НЕ ЗначениеЗаполнено(ТекущиеДанные.Раздел) Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - ТекстСообщенияОбщаяДатаМожетБытьУстановлена()); - ИначеЕсли РазделБезОбъектов Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - ТекстСообщенияРазделыУжеЗаполненыМожноУстановитьДатыЗапретаДляРазделов()); - Иначе - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - ТекстСообщенияРазделыУжеЗаполненыМожноУстановитьДатыЗапретаДляРазделовИОбъектов()); - КонецЕсли; КонецЕсли; - Иначе - ОткрытьФормуВыбораРазделов = Истина; КонецЕсли; ИначеЕсли ЗначениеЗаполнено(ТекущиеДанные.Представление) Тогда Если ТекущиеДанные.ОписаниеДатыЗапрета <> "ПроизвольнаяДата" - ИЛИ Поле = Элементы.ДатыЗапретаОписаниеДатыЗапретаПредставление Тогда + Или Поле = Элементы.ДатыЗапретаОписаниеДатыЗапретаПредставление Тогда ОткрытьФормуРедактированияДатыЗапрета = Истина; Иначе - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - ТекстСообщенияОбъектУжеВыбранМожноУстановитьДатуЗапрета()); ТекущийЭлемент = Элементы.ДатыЗапретаДатаЗапрета; КонецЕсли; КонецЕсли; Иначе - Если НЕ ЗначениеЗаполнено(ТекущиеДанные.Представление) Тогда + Если Не ЗначениеЗаполнено(ТекущиеДанные.Представление) Тогда // Перед изменением описания или даты запрета // требуется заполнить объект, иначе нельзя выполнить запись в регистр. ТекущийЭлемент = Элементы.ДатыЗапретаПолноеПредставление; - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщенияСначалаВыберитеОбъект()); ИначеЕсли ТекущиеДанные.ОписаниеДатыЗапрета <> "ПроизвольнаяДата" - ИЛИ Поле = Элементы.ДатыЗапретаОписаниеДатыЗапретаПредставление Тогда + Или Поле = Элементы.ДатыЗапретаОписаниеДатыЗапретаПредставление Тогда ОткрытьФормуРедактированияДатыЗапрета = Истина; - Иначе + + ИначеЕсли ТекущийЭлемент = Элементы.ДатыЗапретаДатаЗапрета Тогда ТекущийЭлемент = Элементы.ДатыЗапретаДатаЗапрета; КонецЕсли; КонецЕсли; @@ -849,9 +834,6 @@ Отказ = Истина; РедактироватьДатуЗапретаВФорме(); - ИначеЕсли ОткрытьФормуВыбораРазделов Тогда - Отказ = Истина; - ВыбратьРазделы(); КонецЕсли; Если Отказ Тогда @@ -865,8 +847,8 @@ Элементы.ДатыЗапретаОписаниеДатыЗапретаПредставление.ТолькоПросмотр = Истина; Элементы.ДатыЗапретаДатаЗапрета.ТолькоПросмотр = - НЕ ЗначениеЗаполнено(ТекущиеДанные.Представление) - ИЛИ ТекущиеДанные.ОписаниеДатыЗапрета <> "ПроизвольнаяДата"; + Не ЗначениеЗаполнено(ТекущиеДанные.Представление) + Или ТекущиеДанные.ОписаниеДатыЗапрета <> "ПроизвольнаяДата"; КонецЕсли; КонецПроцедуры @@ -875,38 +857,33 @@ Процедура ДатыЗапретаПередУдалением(Элемент, Отказ) Отказ = Истина; - - Если Элементы.ДатыЗапрета.ВыделенныеСтроки.Количество() > 1 Тогда - ПоказатьПредупреждение(, ТекстСообщенияДляУдаленияВыделитеОднуСтроку()); - Возврат; - КонецЕсли; - ТекущиеДанные = Элементы.ДатыЗапрета.ТекущиеДанные; Если ТекущиеДанные.ЭтоРаздел Тогда Если ЗначениеЗаполнено(ТекущиеДанные.Раздел) Тогда Если ТекущиеДанные.ПолучитьЭлементы().Количество() > 0 Тогда - ТекстВопроса = ТекстВопросаУдалитьДатыЗапретаДляРазделаИОбъектов(); + ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Отключить все настроенные даты запрета для раздела ""%1"" и его объектов?'"), ТекущиеДанные.Раздел); Иначе - ТекстВопроса = ТекстВопросаУдалитьДатыЗапретаДляРаздела(); + ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Отключить дату запрета для раздела ""%1""?'"), ТекущиеДанные.Раздел); КонецЕсли; Иначе - ТекстВопроса = ТекстВопросаУдалитьОбщуюДатуЗапрета(); + ТекстВопроса = НСтр("ru = 'Отключить общую дату запрета для всех разделов?'"); КонецЕсли; Иначе - ТекстВопроса = ТекстВопросаУдалитьДатуЗапретаОбъекта(); + ТекстВопроса = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Отключить дату запрета для объекта ""%1""?'"), ТекущиеДанные.Объект); КонецЕсли; Удалить = Истина; Если ТекущиеДанные.ЭтоРаздел Тогда - Если НазначениеДляВсех(ТекущийПользователь) Тогда - Удалить = Ложь; - КонецЕсли; + Удалить = Ложь; ЭлементыРаздела = ТекущиеДанные.ПолучитьЭлементы(); Если ДатаЗапретаУстановлена(ТекущиеДанные, ТекущийПользователь) - ИЛИ ЭлементыРаздела.Количество() > 0 Тогда + Или ЭлементыРаздела.Количество() > 0 Тогда // Удаление даты запрета для раздела (т.е. всех объектов раздела). ДополнительныеПараметры = Новый Структура; @@ -918,36 +895,20 @@ Новый ОписаниеОповещения( "ДатыЗапретаПередУдалениемРазделаПродолжение", ЭтотОбъект, ДополнительныеПараметры), ТекстВопроса, РежимДиалогаВопрос.ДаНет); - Возврат; Иначе - Если ЗначениеЗаполнено(ТекущиеДанные.Раздел) Тогда - ТекстСообщения = ТекстСообщенияДляВсехПользователейРазделыВсегдаПоказываются() - + Символы.ПС - + ТекстСообщенияПриУдаленииДатаЗапретаОчищается(); - Иначе - ТекстСообщения = ТекстСообщенияДляВсехПользователейОбщаяДатаВсегдаПоказывается() - + Символы.ПС - + ТекстСообщенияПриУдаленииДатаЗапретаОчищается(); - КонецЕсли; - Если Удалить Тогда - ПоказатьПредупреждение( - Новый ОписаниеОповещения( - "ДатыЗапретаПриУдалении", ЭтотОбъект, ТекущиеДанные), - ТекстСообщения); - Иначе - ПоказатьПредупреждение(, ТекстСообщения); - КонецЕсли; - Возврат; - КонецЕсли; - Иначе - Если ДатаЗапретаУстановлена(ТекущиеДанные, ТекущийПользователь) Тогда - // Удаление даты запрета для объекта по разделу. - ПоказатьВопрос( - Новый ОписаниеОповещения( - "ДатыЗапретаПередУдалениемОбъектаПродолжение", ЭтотОбъект, ТекущиеДанные), - ТекстВопроса, РежимДиалогаВопрос.ДаНет); - Возврат; + ТекстСообщения = НСтр("ru = 'Для удаления даты запрета по конкретному объекту необходимо выбрать интересующий объект в одном из разделов.'"); + ПоказатьПредупреждение(, ТекстСообщения); КонецЕсли; + Возврат; + КонецЕсли; + + Если ДатаЗапретаУстановлена(ТекущиеДанные, ТекущийПользователь) Тогда + // Удаление даты запрета для объекта по разделу. + ПоказатьВопрос( + Новый ОписаниеОповещения( + "ДатыЗапретаПередУдалениемОбъектаПродолжение", ЭтотОбъект, ТекущиеДанные), + ТекстВопроса, РежимДиалогаВопрос.ДаНет); + Возврат; КонецЕсли; Если Удалить Тогда @@ -960,11 +921,11 @@ Процедура ДатыЗапретаПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование) Если НоваяСтрока Тогда - Если НЕ Элементы.ДатыЗапрета.ТекущиеДанные.ЭтоРаздел Тогда + Если Не Элементы.ДатыЗапрета.ТекущиеДанные.ЭтоРаздел Тогда Элементы.ДатыЗапрета.ТекущиеДанные.Раздел = ТекущийРаздел(, Истина); КонецЕсли; - Если НазначениеДляВсех(ТекущийПользователь) - ИЛИ НЕ Элементы.ДатыЗапрета.ТекущиеДанные.ЭтоРаздел Тогда + Если ЭтоВсеПользователи(ТекущийПользователь) + Или Не Элементы.ДатыЗапрета.ТекущиеДанные.ЭтоРаздел Тогда Элементы.ДатыЗапрета.ТекущиеДанные.ОписаниеДатыЗапрета = "ПроизвольнаяДата"; КонецЕсли; Элементы.ДатыЗапрета.ТекущиеДанные.ОписаниеДатыЗапретаПредставление = @@ -1032,9 +993,9 @@ КонецЕсли; ОбъектыДляДобавления = Новый Массив; - Для каждого Объект Из Объекты Цикл + Для Каждого Объект Из Объекты Цикл ЗначениеНеНайдено = Истина; - Для каждого Строка Из КоллекцияОбъектов Цикл + Для Каждого Строка Из КоллекцияОбъектов Цикл Если Строка.Объект = Объект Тогда ЗначениеНеНайдено = Ложь; Прервать; @@ -1057,7 +1018,7 @@ ОповеститьОбИзменении(Тип("РегистрСведенийКлючЗаписи.ДатыЗапретаИзменения")); КонецЕсли; - Для каждого ТекущийОбъект Из ОбъектыДляДобавления Цикл + Для Каждого ТекущийОбъект Из ОбъектыДляДобавления Цикл ОписаниеОбъекта = КоллекцияОбъектов.Добавить(); ОписаниеОбъекта.Раздел = ТекущийРаздел(, Истина); ОписаниеОбъекта.Объект = Объект; @@ -1117,7 +1078,7 @@ КоллекцияОбъектов = ДатыЗапрета.ПолучитьЭлементы(); КонецЕсли; ЗначениеНеНайдено = Истина; - Для каждого Строка Из КоллекцияОбъектов Цикл + Для Каждого Строка Из КоллекцияОбъектов Цикл Если Строка.Объект = ВыбранноеЗначение Тогда ЗначениеНеНайдено = Ложь; Прервать; @@ -1130,17 +1091,16 @@ ЗначенияСвойств = ПолучитьТекущиеЗначенияСвойств( ТекущиеДанные, Элементы.Пользователи.ТекущиеДанные); - Если НЕ ЗаменитьОбъектВЗаписиПользователяНаСервере( + Если Не ЗаменитьОбъектВЗаписиПользователяНаСервере( ТекущиеДанные.Раздел, ТекущиеДанные.Объект, ВыбранноеЗначение, ТекущийПользователь, ЗначенияСвойств) Тогда - ПоказатьПредупреждение(, - ТекстСообщенияЗначениеУжеДобавленоВСписок() - + Символы.ПС - + ТекстСообщенияОбновитьДанныеФормыF5()); + ПоказатьПредупреждение(, СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = '""%1"" уже есть в списке объектов. + |Обновите данные формы (клавиша F5).'"), ВыбранноеЗначение)); Возврат; Иначе ОбновитьЗначенияПрочитанныхСвойств( @@ -1155,11 +1115,12 @@ ТекущиеДанные.ПолноеПредставление = ТекущиеДанные.Представление; Элементы.ДатыЗапрета.ЗакончитьРедактированиеСтроки(Ложь); Элементы.ДатыЗапрета.ТекущийЭлемент = Элементы.ДатыЗапретаДатаЗапрета; - Элементы.ДатыЗапрета.ИзменитьСтроку(); + ПодключитьОбработчикОжидания("ДатыЗапретаИзменитьСтроку", 0.1, Истина); ОбновитьНаличиеДатЗапретаТекущегоПользователя(); Иначе - ПоказатьПредупреждение(, ТекстСообщенияЗначениеУжеДобавленоВСписок()); + ПоказатьПредупреждение(, СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = '""%1"" уже есть в списке объектов'"), ВыбранноеЗначение)); КонецЕсли; КонецПроцедуры @@ -1183,25 +1144,8 @@ &НаКлиенте Процедура Обновить(Команда) - ТекстВопроса = ТекстВопросаОНесохраненныхДанных(); - - Если ЗначениеЗаполнено(ТекстВопроса) Тогда - ТекстВопроса = ТекстВопроса + Символы.ПС + ТекстВопросаОбновитьДанные(); - - ПоказатьВопрос( - Новый ОписаниеОповещения("ОбновитьЗавершение", ЭтотОбъект), - ТекстВопроса, - РежимДиалогаВопрос.ДаНет); - Иначе - ОбновитьЗавершение(КодВозвратаДиалога.Да, Неопределено); - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура Разделы(Команда) - - ВыбратьРазделы(); + ОбновитьНаСервере(); + РазвернутьДанныеПользователя(); КонецПроцедуры @@ -1209,8 +1153,6 @@ Процедура ПодобратьОбъекты(Команда) Если ТекущийПользователь = Неопределено Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - ТекстСообщенияСначалаВыберитеПользователя()); Возврат; КонецЕсли; @@ -1244,26 +1186,27 @@ &НаСервере Процедура УстановитьУсловноеОформление() - + УсловноеОформление.Элементы.Очистить(); - - // - + + // Отметка незаполненного пользователя. + Элемент = УсловноеОформление.Элементы.Добавить(); - + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ПользователиПолноеПредставление.Имя); - + Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Истина); + ГруппаОтбора1 = Элемент.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); ГруппаОтбора1.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли; - + ОтборЭлемента = ГруппаОтбора1.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ПользователиДатЗапрета.ПолноеПредставление"); ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено; - + ГруппаОтбора2 = ГруппаОтбора1.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); ГруппаОтбора2.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ; - + ОтборЭлемента = ГруппаОтбора2.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ПользователиДатЗапрета.Пользователь"); ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеВСписке; @@ -1271,78 +1214,67 @@ СписокЗначений.Добавить(Перечисления.ВидыНазначенияДатЗапрета.ДляВсехПользователей); СписокЗначений.Добавить(Перечисления.ВидыНазначенияДатЗапрета.ДляВсехИнформационныхБаз); ОтборЭлемента.ПравоеЗначение = СписокЗначений; - + ОтборЭлемента = ГруппаОтбора2.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ПользователиДатЗапрета.БезДатыЗапрета"); ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ОтборЭлемента.ПравоеЗначение = Истина; - - Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Истина); - - // - + + // Отметка незаполненного объекта. + Элемент = УсловноеОформление.Элементы.Добавить(); - + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ДатыЗапретаПолноеПредставление.Имя); - + Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Истина); + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДатыЗапрета.ПолноеПредставление"); ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено; - Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Истина); - - // - + + // Оформление пустой даты. + Элемент = УсловноеОформление.Элементы.Добавить(); - + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ДатыЗапретаДатаЗапрета.Имя); - + Элемент.Оформление.УстановитьЗначениеПараметра("Формат", + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("ДП='%1'", НСтр("ru = 'Без запрета'"))); + ГруппаОтбора1 = Элемент.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); - ГруппаОтбора1.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли; - - ГруппаОтбора2 = ГруппаОтбора1.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); - ГруппаОтбора2.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ; - - ОтборЭлемента = ГруппаОтбора2.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); - ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ТекущийПользователь"); - ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеВСписке; - СписокЗначений = Новый СписокЗначений; - СписокЗначений.Добавить(Перечисления.ВидыНазначенияДатЗапрета.ДляВсехПользователей); - СписокЗначений.Добавить(Перечисления.ВидыНазначенияДатЗапрета.ДляВсехИнформационныхБаз); - ОтборЭлемента.ПравоеЗначение = СписокЗначений; - - ОтборЭлемента = ГруппаОтбора2.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); - ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДатыЗапрета.ЭтоРаздел"); + ГруппаОтбора1.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ; + + ОтборЭлемента = ГруппаОтбора1.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДатыЗапрета.ЗаписьСуществует"); ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ОтборЭлемента.ПравоеЗначение = Истина; - - ОтборЭлемента = ГруппаОтбора2.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); - ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДатыЗапрета.БезДатыЗапрета"); + + ОтборЭлемента = ГруппаОтбора1.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДатыЗапрета.ДатаЗапрета"); ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; - ОтборЭлемента.ПравоеЗначение = Истина; + ОтборЭлемента.ПравоеЗначение = '00010101'; + +КонецПроцедуры - ГруппаОтбора2 = ГруппаОтбора1.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); - ГруппаОтбора2.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ; - - ОтборЭлемента = ГруппаОтбора2.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); - ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДатыЗапрета.ЭтоРаздел"); - ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; - ОтборЭлемента.ПравоеЗначение = Ложь; - - ОтборЭлемента = ГруппаОтбора2.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); - ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДатыЗапрета.БезДатыЗапрета"); - ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; - ОтборЭлемента.ПравоеЗначение = Истина; - - Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Истина); +&НаКлиенте +Процедура ДатыЗапретаИзменитьСтроку() + + Элементы.ДатыЗапрета.ИзменитьСтроку(); + +КонецПроцедуры +&НаКлиенте +Процедура ПользователиИзменитьСтроку() + + Элементы.Пользователи.ИзменитьСтроку(); + КонецПроцедуры &НаКлиенте Процедура УстановкаДатыЗапретаОбработкаВыбораПродолжение(Ответ, ВыбранноеЗначение) Экспорт Если Ответ = КодВозвратаДиалога.Нет Тогда + УстановкаДатыЗапретаНовое = УстановкаДатыЗапрета; Возврат; КонецЕсли; @@ -1374,16 +1306,6 @@ КонецПроцедуры -&НаКлиенте -Процедура ПользователиПередНачаломДобавленияЗавершение(Результат, Неопределен) Экспорт - - Если Результат Тогда - ПользователиПродолжитьДобавление = Истина; - Элементы.Пользователи.ДобавитьСтроку(); - КонецЕсли; - -КонецПроцедуры - &НаКлиенте Процедура ПользователиПередУдалениемПодтверждение(Ответ, ДополнительныеПараметры) Экспорт @@ -1394,12 +1316,11 @@ УдалитьНаборЗаписейПользователя(ДополнительныеПараметры.ТекущиеДанные.Пользователь); Если ДополнительныеПараметры.ДатыЗапретаДляВсехПользователей Тогда - ДополнительныеПараметры.ТекущиеДанные.ДатаЗапрета = '00000000'; - ДополнительныеПараметры.ТекущиеДанные.ОписаниеДатыЗапрета = "ПроизвольнаяДата"; - Если СпособУказанияДатыЗапрета = "ОбщаяДата" Тогда - ДатаЗапрета = '00000000'; - ОписаниеДатыЗапрета = "ПроизвольнаяДата"; + ДатаЗапрета = '00010101'; + ОписаниеДатыЗапрета = ""; + ЗаписьСуществует = Ложь; + ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); КонецЕсли; ДополнительныеПараметры.Вставить("ДанныеУдалялись"); ОбновитьНаличиеДатЗапретаТекущегоПользователя(); @@ -1417,33 +1338,29 @@ ТекущиеДанные = ДополнительныеПараметры.ТекущиеДанные; Если ДополнительныеПараметры.ДатыЗапретаДляВсехПользователей Тогда - НетДобавленныхСтрок = НЕ ДополнительныеПараметры.Свойство("ДанныеУдалялись"); Если ПоказыватьРазделыТекущегоПользователя Тогда - Для каждого ОписаниеРаздела Из ДатыЗапрета.ПолучитьЭлементы() Цикл + Для Каждого ОписаниеРаздела Из ДатыЗапрета.ПолучитьЭлементы() Цикл Если ДатаЗапретаУстановлена(ОписаниеРаздела, ТекущийПользователь) - ИЛИ ОписаниеРаздела.ПолучитьЭлементы().Количество() > 0 Тогда - НетДобавленныхСтрок = Ложь; - ОписаниеРаздела.ДатаЗапрета = '00000000'; + Или ОписаниеРаздела.ПолучитьЭлементы().Количество() > 0 Тогда + ОписаниеРаздела.ДатаЗапрета = '00010101'; ОписаниеРаздела.ОписаниеДатыЗапрета = ""; ОписаниеРаздела.ПолучитьЭлементы().Очистить(); + ОписаниеРаздела.ЗаписьСуществует = Ложь; + ОписаниеРаздела.ОписаниеДатыЗапретаПредставление = + ПредставлениеОписанияДатыЗапрета(ОписаниеРаздела); КонецЕсли; КонецЦикла; Иначе Если ДатыЗапрета.ПолучитьЭлементы().Количество() > 0 Тогда - НетДобавленныхСтрок = Ложь; ДатыЗапрета.ПолучитьЭлементы().Очистить(); КонецЕсли; КонецЕсли; ТекущиеДанные.БезДатыЗапрета = Истина; ТекущиеДанные.ПолноеПредставление = ТекущиеДанные.Представление; - Если НетДобавленныхСтрок Тогда - ПоказатьПредупреждение(, ТекстСообщенияДляВсехПользователейДатыЗапретаНеУстановлены()); - КонецЕсли; Возврат; КонецЕсли; СпособУказанияДатыЗапрета = Неопределено; - ПользователиПриУдалении(); КонецПроцедуры @@ -1480,15 +1397,15 @@ ОбъектыРаздела = Новый Массив; ОбъектыРаздела.Добавить(ТекущиеДанные.Раздел); - Для каждого ЭлементДанных Из ЭлементыРаздела Цикл + Для Каждого ЭлементДанных Из ЭлементыРаздела Цикл ОбъектыРаздела.Добавить(ЭлементДанных.Объект); КонецЦикла; УдалитьЗаписьПользователя(ТекущиеДанные.Раздел, ОбъектыРаздела, ТекущийПользователь); ЭлементыРаздела.Очистить(); - ТекущиеДанные.ДатаЗапрета = '00000000'; - ТекущиеДанные.ОписаниеДатыЗапрета = "ПроизвольнаяДата"; + ТекущиеДанные.ДатаЗапрета = '00010101'; + ТекущиеДанные.ОписаниеДатыЗапрета = ""; Если ДополнительныеПараметры.Удалить Тогда ДатыЗапретаПриУдалении(ТекущиеДанные); @@ -1515,8 +1432,8 @@ Если ТекущийРаздел() = ТекущиеДанные.Объект Тогда // Удалена общая дата. - ДатаЗапрета = '00000000'; - ОписаниеДатыЗапрета = "ПроизвольнаяДата"; + ДатаЗапрета = '00010101'; + ОписаниеДатыЗапрета = ""; ЗаписьСуществует = Ложь; КонецЕсли; @@ -1527,7 +1444,7 @@ КонецПроцедуры &НаКлиенте -Процедура ДатыЗапретаПриУдалении(ТекущиеДанные) Экспорт +Процедура ДатыЗапретаПриУдалении(ТекущиеДанные) ТекущийРодитель = ТекущиеДанные.ПолучитьРодителя(); Если ТекущийРодитель = Неопределено Тогда @@ -1557,18 +1474,6 @@ КонецПроцедуры -&НаКлиенте -Процедура ОбновитьЗавершение(Ответ, Неопределен) Экспорт - - Если Ответ = КодВозвратаДиалога.Нет Тогда - Возврат; - КонецЕсли; - - ОбновитьНаСервере(); - РазвернутьДанныеПользователя(); - -КонецПроцедуры - &НаСервере Процедура ОбновитьНаСервере() @@ -1576,6 +1481,7 @@ // Расчет установки даты запрета. УстановкаДатыЗапрета = ТекущаяУстановкаДатыЗапрета(Параметры.ДатыЗапретаЗагрузкиДанных); + УстановкаДатыЗапретаНовое = УстановкаДатыЗапрета; // Установка видимости по рассчитанной установке дате запрета. УстановитьВидимость(); @@ -1607,12 +1513,12 @@ КонецПроцедуры &НаКлиенте -Процедура ОбновитьДанныеПользователя(ПроверитьНесохраненныеЗаписи = Истина) +Процедура ОбновитьДанныеПользователя() ТекущиеДанные = Элементы.Пользователи.ТекущиеДанные; Если ТекущиеДанные = Неопределено - ИЛИ НЕ ЗначениеЗаполнено(ТекущиеДанные.Представление) Тогда + Или Не ЗначениеЗаполнено(ТекущиеДанные.Представление) Тогда НовыйПользователь = Неопределено; Иначе @@ -1623,24 +1529,6 @@ Возврат; КонецЕсли; - Если ПроверитьНесохраненныеЗаписи Тогда - ПроверкаНесохраненныхЗаписей(Новый ОписаниеОповещения( - "ОбновитьДанныеПользователяПродолжение", ЭтотОбъект, НовыйПользователь)); - Иначе - ОбновитьДанныеПользователяПродолжение(Истина, НовыйПользователь); - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ОбновитьДанныеПользователяПродолжение(Результат, НовыйПользователь) Экспорт - - Если НЕ Результат Тогда - ПодключитьОбработчикОжидания( - "ПользователиВосстановитьТекущуюСтрокуПослеОтказаПриАктивизацииСтроки", 0.1, Истина); - Возврат; - КонецЕсли; - СпособУказанияЗначениеВСписке = Элементы.СпособУказанияДатыЗапрета.СписокВыбора.НайтиПоЗначению(СпособУказанияДатыЗапрета); @@ -1664,7 +1552,7 @@ ЭтотОбъект, НовыйПользователь), ТекстСообщенияСпособУказанияНеИспользован( - СпособУказанияЗначениеВСписке.Представление, + СпособУказанияЗначениеВСписке.Значение, ?(ЭлементСписка = Неопределено, ТекущийСпособУказания, ЭлементСписка.Представление), ТекущийПользователь, ЭтотОбъект) + Символы.ПС + Символы.ПС + НСтр("ru = 'Продолжить?'"), @@ -1710,45 +1598,6 @@ КонецПроцедуры -&НаКлиенте -Процедура ПроверкаНесохраненныхЗаписей(ОбработкаПродолжения) - - Отбор = Новый Структура("Пользователь", ТекущийПользователь); - НайденныеСтроки = ПользователиДатЗапрета.НайтиСтроки(Отбор); - - Если НайденныеСтроки.Количество() > 0 Тогда - ТекстВопроса = ТекстВопросаОНесохраненныхДанных(Истина); - Если ЗначениеЗаполнено(ТекстВопроса) Тогда - ТекстВопроса = ТекстВопроса + Символы.ПС + ТекстВопросаОчиститьНезаполненныеСтроки(); - ДополнительныеПараметры = Новый Структура; - ДополнительныеПараметры.Вставить("ТекущаяСтрока", НайденныеСтроки[0].ПолучитьИдентификатор()); - ДополнительныеПараметры.Вставить("ОбработкаПродолжения", ОбработкаПродолжения); - ПоказатьВопрос( - Новый ОписаниеОповещения("ПроверкаНесохраненныхЗаписейЗавершение", - ЭтотОбъект, - ДополнительныеПараметры), - ТекстВопроса, - РежимДиалогаВопрос.ДаНет); - Возврат; - КонецЕсли; - КонецЕсли; - - ВыполнитьОбработкуОповещения(ОбработкаПродолжения, Истина); - -КонецПроцедуры - -&НаКлиенте -Процедура ПроверкаНесохраненныхЗаписейЗавершение(Ответ, ДополнительныеПараметры) Экспорт - - Если Ответ = КодВозвратаДиалога.Нет Тогда - ПользователиТекущаяСтрока = ДополнительныеПараметры.ТекущаяСтрока; - ВыполнитьОбработкуОповещения(ДополнительныеПараметры.ОбработкаПродолжения, Ложь); - Иначе - ВыполнитьОбработкуОповещения(ДополнительныеПараметры.ОбработкаПродолжения, Истина); - КонецЕсли; - -КонецПроцедуры - &НаСервере Процедура ПрочитатьПользователей() @@ -1804,7 +1653,7 @@ КонецПопытки; // Заполнение полного представления пользователей. - Для каждого Строка Из Выгрузка Цикл + Для Каждого Строка Из Выгрузка Цикл Строка.Представление = ТекстПредставленияПользователя(ЭтотОбъект, Строка.Пользователь); Строка.ПолноеПредставление = Строка.Представление; КонецЦикла; @@ -1833,7 +1682,7 @@ Процедура РазвернутьДанныеПользователя() Если ПоказыватьРазделыТекущегоПользователя Тогда - Для каждого ОписаниеРаздела Из ДатыЗапрета.ПолучитьЭлементы() Цикл + Для Каждого ОписаниеРаздела Из ДатыЗапрета.ПолучитьЭлементы() Цикл Элементы.ДатыЗапрета.Развернуть(ОписаниеРаздела.ПолучитьИдентификатор(), Истина); КонецЦикла; КонецЕсли; @@ -1854,7 +1703,9 @@ Новый Структура("Пользователь", Контекст.ТекущийПользователь)); Если НайденныеСтроки.Количество() > 0 Тогда - Контекст.Элементы.ТекущийПользовательПредставление.Заголовок = НайденныеСтроки[0].Представление; + Контекст.Элементы.ТекущийПользовательПредставление.Заголовок = + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Настройка для ""%1"":'"), + НайденныеСтроки[0].Представление); КонецЕсли; КонецЕсли; @@ -1878,12 +1729,13 @@ КонецЕсли; Если Контекст.СпособУказанияДатыЗапрета = "ОбщаяДата" Тогда - Контекст.Элементы.СпособыУказания.ТекущаяСтраница = - Контекст.Элементы.СпособУказанияОбщаяДата; + Контекст.Элементы.СпособыУказания.ТекущаяСтраница = Контекст.Элементы.СпособУказанияОбщаяДата; + // Для прижатия вверх группы "Расширенные возможности" + Контекст.Элементы.ДатыЗапрета.РастягиватьПоВертикали = Ложь; ЗаполнитьЗначенияСвойств(Контекст, Данные); Контекст.РазрешитьИзменениеДанныхДоДатыЗапрета = Контекст.КоличествоДнейРазрешения <> 0; - ОбщаяДатаЗапретаСОписаниемПриИзменении(Контекст, Ложь); + ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОбщаяДатаЗапретаСОписаниемПриИзменении(Контекст, Ложь); Контекст.Элементы.ОписаниеДатыЗапрета.ТолькоПросмотр = Ложь; Контекст.Элементы.ДатаЗапрета.ТолькоПросмотр = Ложь; Контекст.Элементы.РазрешитьИзменениеДанныхДоДатыЗапрета.ТолькоПросмотр = Ложь; @@ -1907,8 +1759,8 @@ Возврат; КонецЕсли; - Контекст.Элементы.СпособыУказания.ТекущаяСтраница = - Контекст.Элементы.СпособУказанияПоРазделамОбъектам; + Контекст.Элементы.СпособыУказания.ТекущаяСтраница = Контекст.Элементы.СпособУказанияПоРазделамОбъектам; + Контекст.Элементы.ДатыЗапрета.РастягиватьПоВертикали = Истина; УстановитьКоманднуюПанельДатЗапрета(Контекст); @@ -1933,13 +1785,13 @@ // Загрузка данных пользователя в коллекцию. КоллекцияСтрок = Контекст.ДатыЗапрета.ПолучитьЭлементы(); КоллекцияСтрок.Очистить(); - Для каждого Строка Из ДанныеПользователя Цикл + Для Каждого Строка Из ДанныеПользователя Цикл НоваяСтрока = КоллекцияСтрок.Добавить(); ЗаполнитьЗначенияСвойств(НоваяСтрока, Строка.Значение); НоваяСтрока.ОписаниеДатыЗапретаПредставление = ПредставлениеОписанияДатыЗапрета(НоваяСтрока); КоллекцияПодстрок = НоваяСтрока.ПолучитьЭлементы(); - Для каждого Подстрока Из Строка.Значение.СписокПодстрок Цикл + Для Каждого Подстрока Из Строка.Значение.СписокПодстрок Цикл НоваяПодстрока = КоллекцияПодстрок.Добавить(); ЗаполнитьЗначенияСвойств(НоваяПодстрока, Подстрока.Значение); ЗаполнитьПоВнутреннемуОписаниюДатыЗапрета( @@ -1961,13 +1813,11 @@ // Используется дата только по измерению Раздел. // Измерение Объект заполнено значением измерения Раздел. // Отображение объекта не требуется. - Контекст.Элементы.ДатыЗапретаПолноеПредставление.Заголовок = ТекстЗаголовкаРаздела(); + Контекст.Элементы.ДатыЗапретаПолноеПредставление.Заголовок = НСтр("ru = 'Раздел'"); Контекст.Элементы.ДатыЗапрета.Отображение = ОтображениеТаблицы.Список; Иначе - Контекст.Элементы.ДатыЗапретаПолноеПредставление.Заголовок = - ТекстЗаголовкаРазделаСОбъектами(); - + Контекст.Элементы.ДатыЗапретаПолноеПредставление.Заголовок = НСтр("ru = 'Раздел, объект'"); Контекст.Элементы.ДатыЗапрета.Отображение = ОтображениеТаблицы.Дерево; КонецЕсли; Иначе @@ -1992,8 +1842,8 @@ ПоказыватьРазделыТекущегоПользователя = Контекст.ПоказыватьРазделы - ИЛИ Контекст.СпособУказанияДатыЗапрета = "ПоРазделам" - ИЛИ Контекст.СпособУказанияДатыЗапрета = "ПоРазделамИОбъектам"; + Или Контекст.СпособУказанияДатыЗапрета = "ПоРазделам" + Или Контекст.СпособУказанияДатыЗапрета = "ПоРазделамИОбъектам"; // Подготовка дерева значений дат запрета изменения. Если ПоказыватьРазделыТекущегоПользователя Тогда @@ -2001,12 +1851,11 @@ Контекст.Пользователь, Контекст.ВсеРазделыБезОбъектов, Контекст.РазделыБезОбъектов, - Контекст.ЗначениеДляВсехПользователей, Контекст.НачалоДня, Контекст.ДатыЗапретаЗагрузкиДанных); Иначе ПрочитанныеДатыЗапрета = ПрочитатьДанныеПользователяБезРазделов( - Контекст.Пользователь, Контекст.ЕдинственныйРаздел, Контекст.ЗначениеДляВсехПользователей); + Контекст.Пользователь, Контекст.ЕдинственныйРаздел); КонецЕсли; ДанныеПользователя = Новый СписокЗначений; @@ -2014,11 +1863,11 @@ |ДатаЗапрета, ОписаниеДатыЗапрета, КоличествоДнейРазрешения, |БезДатыЗапрета, ЭтоРаздел, СписокПодстрок, ЗаписьСуществует"; - Для каждого Строка Из ПрочитанныеДатыЗапрета.Строки Цикл + Для Каждого Строка Из ПрочитанныеДатыЗапрета.Строки Цикл СтруктураСтроки = Новый Структура(ПоляСтроки); ЗаполнитьЗначенияСвойств(СтруктураСтроки, Строка); СтруктураСтроки.СписокПодстрок = Новый СписокЗначений; - Для каждого Подстрока Из Строка.Строки Цикл + Для Каждого Подстрока Из Строка.Строки Цикл СтруктураПодстроки = Новый Структура(ПоляСтроки); ЗаполнитьЗначенияСвойств(СтруктураПодстроки, Подстрока); СтруктураСтроки.СписокПодстрок.Добавить(СтруктураПодстроки); @@ -2032,7 +1881,6 @@ Функция ПрочитатьДанныеПользователяСРазделами(Знач Пользователь, Знач ВсеРазделыБезОбъектов, Знач РазделыБезОбъектов, - Знач ЗначениеДляВсехПользователей, Знач НачалоДня, Знач ДатыЗапретаЗагрузкиДанных) @@ -2044,7 +1892,6 @@ Запрос.УстановитьПараметр("Пользователь", Пользователь); Запрос.УстановитьПараметр("ВсеРазделыБезОбъектов", ВсеРазделыБезОбъектов); Запрос.УстановитьПараметр("ОбщаяДатаПредставление", ТекстПредставленияОбщейДаты()); - Запрос.УстановитьПараметр("ЗначениеДляВсехПользователей", ЗначениеДляВсехПользователей); Запрос.УстановитьПараметр("ДатыЗапретаЗагрузкиДанных", ДатыЗапретаЗагрузкиДанных); Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ @@ -2121,9 +1968,6 @@ | И ТИПЗНАЧЕНИЯ(ДатыЗапретаИзменения.Объект) = ТИП(ПланВидовХарактеристик.РазделыДатЗапретаИзменения))) | И (НЕ(ТИПЗНАЧЕНИЯ(ДатыЗапретаИзменения.Объект) <> ТИП(ПланВидовХарактеристик.РазделыДатЗапретаИзменения) | И &ВсеРазделыБезОбъектов)) - |ГДЕ - | НЕ(&Пользователь <> &ЗначениеДляВсехПользователей - | И ДатыЗапретаИзменения.Раздел ЕСТЬ NULL ) | |УПОРЯДОЧИТЬ ПО | Предопределенный УБЫВ, @@ -2144,7 +1988,7 @@ ВызватьИсключение; КонецПопытки; - Для каждого Строка Из ПрочитанныеДатыЗапрета.Строки Цикл + Для Каждого Строка Из ПрочитанныеДатыЗапрета.Строки Цикл Строка.Представление = Строка.РазделПредставление; Строка.Объект = Строка.Раздел; Строка.ЭтоРаздел = Истина; @@ -2161,9 +2005,6 @@ КонецЕсли; Строка.Строки.Удалить(СтрокаРаздела); Иначе - Если НазначениеДляВсех(Пользователь) Тогда - Строка.ОписаниеДатыЗапрета = "ПроизвольнаяДата"; - КонецЕсли; Если Строка.Строки.Количество() = 1 И Строка.Строки[0].Объект = Null Тогда @@ -2182,7 +2023,7 @@ КонецФункции &НаСервереБезКонтекста -Функция ПрочитатьДанныеПользователяБезРазделов(Знач Пользователь, Знач ЕдинственныйРаздел, Знач ЗначениеДляВсехПользователей) +Функция ПрочитатьДанныеПользователяБезРазделов(Знач Пользователь, Знач ЕдинственныйРаздел) // Дерево значений с первым уровнем по объектам. НачатьТранзакцию(); @@ -2191,7 +2032,6 @@ Запрос.УстановитьПараметр("Пользователь", Пользователь); Запрос.УстановитьПараметр("ЕдинственныйРаздел", ЕдинственныйРаздел); Запрос.УстановитьПараметр("ОбщаяДатаПредставление", ТекстПредставленияОбщейДаты()); - Запрос.УстановитьПараметр("ЗначениеДляВсехПользователей", ЗначениеДляВсехПользователей); Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ | ЗНАЧЕНИЕ(ПланВидовХарактеристик.РазделыДатЗапретаИзменения.ПустаяСсылка) КАК Раздел, @@ -2216,12 +2056,6 @@ | И ДатыЗапретаИзменения.Раздел = ЗНАЧЕНИЕ(ПланВидовХарактеристик.РазделыДатЗапретаИзменения.ПустаяСсылка) | И ДатыЗапретаИзменения.Объект = ЗНАЧЕНИЕ(ПланВидовХарактеристик.РазделыДатЗапретаИзменения.ПустаяСсылка)) КАК ОбщаяДата | ПО (ИСТИНА) - |ГДЕ - | ВЫБОР - | КОГДА &Пользователь = &ЗначениеДляВсехПользователей - | ТОГДА ИСТИНА - | ИНАЧЕ НЕ ОбщаяДата.ДатаЗапрета ЕСТЬ NULL - | КОНЕЦ | |ОБЪЕДИНИТЬ ВСЕ | @@ -2302,7 +2136,7 @@ ЗначенияКлючаЗаписи = Новый Структура("Раздел, Объект, Пользователь"); Попытка - Для каждого ОписаниеЗаписи Из Выгрузка Цикл + Для Каждого ОписаниеЗаписи Из Выгрузка Цикл // ЗаполнитьЗначенияСвойств(ЗначенияКлючаЗаписи, ОписаниеЗаписи); НайденныеСтроки = УстановленныеБлокировки.НайтиСтроки(ЗначенияКлючаЗаписи); @@ -2350,7 +2184,7 @@ ЗначенияКлючей = Новый Массив; - Для каждого ОписаниеБлокировки Из Контекст.УстановленныеБлокировки Цикл + Для Каждого ОписаниеБлокировки Из Контекст.УстановленныеБлокировки Цикл // ЗначенияКлючаЗаписи = Новый Структура("Раздел, Объект, Пользователь"); ЗаполнитьЗначенияСвойств(ЗначенияКлючаЗаписи, ОписаниеБлокировки); @@ -2364,7 +2198,7 @@ &НаСервереБезКонтекста Процедура РазблокироватьВсеЗаписиНаСервере(ЗначенияКлючейЗаблокированныхЗаписей, ИдентификаторФормы) - Для каждого ЗначенияКлючаЗаписи Из ЗначенияКлючейЗаблокированныхЗаписей Цикл + Для Каждого ЗначенияКлючаЗаписи Из ЗначенияКлючейЗаблокированныхЗаписей Цикл КлючЗаписи = РегистрыСведений.ДатыЗапретаИзменения.СоздатьКлючЗаписи(ЗначенияКлючаЗаписи); РазблокироватьДанныеДляРедактирования(КлючЗаписи, ИдентификаторФормы); КонецЦикла; @@ -2399,12 +2233,13 @@ НаборЗаписей.Отбор.Пользователь.Установить(НовыйПользователь, Истина); НаборЗаписей.Загрузить(ДанныеПользователя); НаборЗаписей.Записать(); + + ЗафиксироватьТранзакцию(); Исключение ОтменитьТранзакцию(); РазблокироватьВсеЗаписи(ЭтотОбъект); ВызватьИсключение; КонецПопытки; - ЗафиксироватьТранзакцию(); Иначе ЗаблокироватьИЗаписатьПустыеДаты( РазделПустаяСсылка, РазделПустаяСсылка, НовыйПользователь, ""); @@ -2493,7 +2328,7 @@ ЗначенияКлючейЗаписей = Новый Массив; Если РазблокироватьРанееЗаблокированное Тогда - Для каждого ОписаниеБлокировки Из Контекст.УстановленныеБлокировки Цикл + Для Каждого ОписаниеБлокировки Из Контекст.УстановленныеБлокировки Цикл ЗначенияКлючаЗаписи = Новый Структура("Раздел, Объект, Пользователь"); ЗаполнитьЗначенияСвойств(ЗначенияКлючаЗаписи, ОписаниеБлокировки); ЗначенияКлючейЗаписей.Добавить(ЗначенияКлючаЗаписи); @@ -2513,7 +2348,7 @@ ПрочитанныеСвойства.Вставить("Комментарий"); Если РазблокироватьРанееЗаблокированное - ИЛИ Контекст.УстановленныеБлокировки.НайтиСтроки(ЗначенияКлючаЗаписи).Количество() = 0 Тогда + Или Контекст.УстановленныеБлокировки.НайтиСтроки(ЗначенияКлючаЗаписи).Количество() = 0 Тогда ПрочитанныеСвойства = ЗаблокироватьЗаписьПользователяНаСервере( ЗначенияКлючаЗаписи, @@ -2644,7 +2479,7 @@ КонецЕсли; Если БезРазделовИОбъектов - ИЛИ СпособУказанияДатыЗапрета = "ОбщаяДата" Тогда + Или СпособУказанияДатыЗапрета = "ОбщаяДата" Тогда ТекущийРаздел = РазделПустаяСсылка; @@ -2658,7 +2493,7 @@ Иначе // Единственный раздел, не показываемый пользователю. Если ТекущиеДанные <> Неопределено И ТекущиеДанные.Раздел = РазделПустаяСсылка - И НЕ РазделОбъектов Тогда + И Не РазделОбъектов Тогда ТекущийРаздел = РазделПустаяСсылка; Иначе @@ -2677,6 +2512,8 @@ ЗаписатьОписаниеИДатуЗапрета(Данные); ЗаписьСуществует = Данные.ЗаписьСуществует; + ОбновитьНаличиеДатЗапретаТекущегоПользователя(); + КонецПроцедуры &НаКлиенте @@ -2751,11 +2588,11 @@ Объекты.Добавить(Объект); КонецЕсли; - Для каждого ТекущийОбъект Из Объекты Цикл + Для Каждого ТекущийОбъект Из Объекты Цикл ЗаблокироватьЗаписьПользователя(ЭтотОбъект, Раздел, ТекущийОбъект, Пользователь); КонецЦикла; - Для каждого ТекущийОбъект Из Объекты Цикл + Для Каждого ТекущийОбъект Из Объекты Цикл МенеджерЗаписи.Раздел = Раздел; МенеджерЗаписи.Объект = ТекущийОбъект; МенеджерЗаписи.Пользователь = Пользователь; @@ -2782,12 +2619,12 @@ Данные = ТекущиеДанныеОбщейДатыЗапрета(); БезДатыЗапрета = Не ДатаЗапретаУстановлена(Данные, ТекущийПользователь); Иначе - Для каждого Строка Из ДатыЗапрета.ПолучитьЭлементы() Цикл + Для Каждого Строка Из ДатыЗапрета.ПолучитьЭлементы() Цикл БезДатыЗапретаРаздела = Истина; Если ДатаЗапретаУстановлена(Строка, ТекущийПользователь) Тогда БезДатыЗапретаРаздела = Ложь; КонецЕсли; - Для каждого ПодчиненнаяСтрока Из Строка.ПолучитьЭлементы() Цикл + Для Каждого ПодчиненнаяСтрока Из Строка.ПолучитьЭлементы() Цикл Если ДатаЗапретаУстановлена(ПодчиненнаяСтрока, ТекущийПользователь) Тогда ПодчиненнаяСтрока.БезДатыЗапрета = Ложь; БезДатыЗапретаРаздела = Ложь; @@ -2861,7 +2698,7 @@ Если СправочникВнешниеПользователиДоступен Тогда ОткрытьФорму("Справочник.ВнешниеПользователи.ФормаВыбора", ПараметрыФормы, ВладелецФормы); Иначе - ПоказатьПредупреждение(, ТекстСообщенияНедостаточноПравДляВыбораВнешнихПользователей()); + ПоказатьПредупреждение(, НСтр("ru = 'Недостаточно прав для выбора внешних пользователей.'")); КонецЕсли; Иначе ОткрытьФорму("Справочник.Пользователи.ФормаВыбора", ПараметрыФормы, ВладелецФормы); @@ -2946,14 +2783,14 @@ Если Параметры.ДатыЗапретаЗагрузкиДанных Тогда - Для каждого Строка Из ПользователиДатЗапрета Цикл + Для Каждого Строка Из ПользователиДатЗапрета Цикл Если Строка.Пользователь = Перечисления.ВидыНазначенияДатЗапрета.ДляВсехИнформационныхБаз Тогда Строка.НомерКартинки = -1; - ИначеЕсли НЕ ЗначениеЗаполнено(Строка.Пользователь) Тогда + ИначеЕсли Не ЗначениеЗаполнено(Строка.Пользователь) Тогда Строка.НомерКартинки = 0; ИначеЕсли Строка.Пользователь @@ -3003,12 +2840,12 @@ // Выбор типа данных ТекущийРаздел = ТекущийРаздел(, Истина); Если ТекущийРаздел = РазделПустаяСсылка Тогда - ПоказатьПредупреждение(, ТекстСообщенияВВыбранномРазделеДатыЗапретаДляОбъектовНеУстанавливаются()); + ПоказатьПредупреждение(, ТекстСообщенияВВыбранномРазделеДатыЗапретаДляОбъектовНеУстанавливаются(ТекущийРаздел)); Возврат; КонецЕсли; ТипыОбъектовРаздела = ТипыОбъектовРазделов.Получить(ТекущийРаздел); Если ТипыОбъектовРаздела = Неопределено Или ТипыОбъектовРаздела.Количество() = 0 Тогда - ПоказатьПредупреждение(, ТекстСообщенияВВыбранномРазделеДатыЗапретаДляОбъектовНеУстанавливаются()); + ПоказатьПредупреждение(, ТекстСообщенияВВыбранномРазделеДатыЗапретаДляОбъектовНеУстанавливаются(ТекущийРаздел)); Возврат; КонецЕсли; @@ -3053,110 +2890,6 @@ КонецПроцедуры -&НаКлиенте -Функция ТекстВопросаОНесохраненныхДанных(БезПроверкиПользователей = Ложь) - - ВсеПользователиВыбраны = Истина; - ВсеОбъектыВыбраны = Истина; - ВсеДатыЗапретаПоОбъектамЗаполнены = Истина; - ВсеДатыЗапретаПоРазделамЗаполнены = Истина; - ВсеПользователиСНастройкамиДатЗапрета = Истина; - - Если НЕ БезПроверкиПользователей - И ПользователиДатЗапрета.НайтиСтроки(Новый Структура("Представление", "")).Количество() > 0 Тогда - - ВсеПользователиВыбраны = Ложь; - Иначе - Если НЕ БезРазделовИОбъектов Тогда - Если ПоказыватьРазделыТекущегоПользователя Тогда - Для каждого ОписаниеРаздела Из ДатыЗапрета.ПолучитьЭлементы() Цикл - Для каждого ОписаниеОбъекта Из ОписаниеРаздела.ПолучитьЭлементы() Цикл - Если ОписаниеОбъекта.ЗаписьСуществует Тогда - Продолжить; - КонецЕсли; - Если ЗначениеЗаполнено(ОписаниеОбъекта.Представление)Тогда - Если НЕ ДатаЗапретаУстановлена(ОписаниеОбъекта, ТекущийПользователь) Тогда - ВсеДатыЗапретаПоОбъектамЗаполнены = Ложь; - КонецЕсли; - Иначе - ВсеОбъектыВыбраны = Ложь; - Прервать; - КонецЕсли; - КонецЦикла; - Если НЕ НазначениеДляВсех(ТекущийПользователь) Тогда - Если ОписаниеРаздела.ПолучитьЭлементы().Количество() = 0 - И НЕ ДатаЗапретаУстановлена(ОписаниеРаздела, ТекущийПользователь) Тогда - ВсеДатыЗапретаПоРазделамЗаполнены = Ложь; - КонецЕсли; - КонецЕсли; - КонецЦикла; - Иначе - Для каждого ОписаниеОбъекта Из ДатыЗапрета.ПолучитьЭлементы() Цикл - Если ОписаниеОбъекта.ЗаписьСуществует Тогда - Продолжить; - КонецЕсли; - Если ЗначениеЗаполнено(ОписаниеОбъекта.Представление) Тогда - Если НЕ НазначениеДляВсех(ТекущийПользователь) - И НЕ ДатаЗапретаУстановлена(ОписаниеОбъекта, ТекущийПользователь) Тогда - - ВсеДатыЗапретаПоОбъектамЗаполнены = Ложь; - КонецЕсли; - Иначе - ВсеОбъектыВыбраны = Ложь; - КонецЕсли; - КонецЦикла; - КонецЕсли; - Если НЕ БезПроверкиПользователей - И ВсеДатыЗапретаПоРазделамЗаполнены - И ВсеДатыЗапретаПоОбъектамЗаполнены - И ВсеОбъектыВыбраны Тогда - - НайденныеСтроки = ПользователиДатЗапрета.НайтиСтроки( - Новый Структура("БезДатыЗапрета", Истина)); - - Для каждого Строка Из НайденныеСтроки Цикл - - Если НазначениеДляВсех(Строка.Пользователь) - И ЗначениеЗаполнено(Строка.Представление) Тогда - - Продолжить; - КонецЕсли; - - ВсеПользователиСНастройкамиДатЗапрета = Ложь; - Прервать; - КонецЦикла; - - КонецЕсли; - КонецЕсли; - КонецЕсли; - - // Предупреждение пользователя. - ТекстВопроса = ""; - Если НЕ ВсеПользователиВыбраны Тогда - ТекстВопроса = ТекстВопроса - + ТекстСообщенияНастройкиСНевыбраннымиПользователямиНеСохранены(ЭтотОбъект); - - ИначеЕсли НЕ ВсеОбъектыВыбраны Тогда - ТекстВопроса = ТекстВопроса + Символы.ПС - + ТекстСообщенияНастройкиСНевыбраннымиОбъектамиНеСохранены(); - - ИначеЕсли НЕ ВсеДатыЗапретаПоРазделамЗаполнены Тогда - ТекстВопроса = ТекстВопроса + Символы.ПС - + ТекстСообщенияНастройкиСНезаполненнымиДатамиЗапретаДляРазделовНеСохранены(); - - ИначеЕсли НЕ ВсеДатыЗапретаПоОбъектамЗаполнены Тогда - ТекстВопроса = ТекстВопроса + Символы.ПС - + ТекстСообщенияНастройкиСНезаполненнымиДатамиЗапретаДляОбъектовНеСохранены(); - - ИначеЕсли НЕ ВсеПользователиСНастройкамиДатЗапрета Тогда - ТекстВопроса = ТекстВопроса + Символы.ПС - + ТекстСообщенияПользователиБезНастроекДатЗапретаНеСохранены(); - КонецЕсли; - - Возврат СокрЛ(ТекстВопроса); - -КонецФункции - &НаКлиенте Функция ТекстУведомленияОНеиспользованныхРежимахНастройки() @@ -3199,11 +2932,9 @@ УстановкаДатыЗапретаВБазеДанныхПредставление = ЭлементСписка.Представление; КонецЕсли; - ТекстУведомления = ТекстСообщенияУстановкаДатыЗапретаНеИспользован( - УстановкаДатыЗапретаПредставление, УстановкаДатыЗапретаВБазеДанныхПредставление); КонецЕсли; - Если НазначениеДляВсех(ТекущийПользователь) + Если ЭтоВсеПользователи(ТекущийПользователь) И СпособУказанияВБазеДанных = "" Тогда СпособУказанияВБазеДанных = "ОбщаяДата"; @@ -3212,7 +2943,7 @@ Если СпособУказанияДатыЗапрета <> СпособУказанияВБазеДанных И УстановкаДатыЗапретаВБазеДанных <> "НетЗапрета" И (УстановкаДатыЗапрета = УстановкаДатыЗапретаВБазеДанных - ИЛИ НазначениеДляВсех(ТекущийПользователь) ) Тогда + Или ЭтоВсеПользователи(ТекущийПользователь) ) Тогда Если ЗначениеЗаполнено(ТекстУведомления) Тогда ТекстУведомления = ТекстУведомления + Символы.ПС + Символы.ПС; @@ -3221,12 +2952,6 @@ ЭлементСписка = Элементы.СпособУказанияДатыЗапрета.СписокВыбора.НайтиПоЗначению( СпособУказанияДатыЗапрета); - Если ЭлементСписка = Неопределено Тогда - СпособУказанияПредставление = СпособУказанияДатыЗапрета; - Иначе - СпособУказанияПредставление = ЭлементСписка.Представление; - КонецЕсли; - ЭлементСписка = Элементы.СпособУказанияДатыЗапрета.СписокВыбора.НайтиПоЗначению( СпособУказанияВБазеДанных); @@ -3238,7 +2963,7 @@ Если СпособУказанияВБазеДанныхПредставление <> "" Тогда ТекстУведомления = ТекстУведомления + ТекстСообщенияСпособУказанияНеИспользован( - СпособУказанияПредставление, + СпособУказанияДатыЗапрета, СпособУказанияВБазеДанныхПредставление, ТекущийПользователь, ЭтотОбъект); @@ -3332,6 +3057,24 @@ Процедура УстановитьВидимость() ИзменитьВидимость(Элементы.НастройкаДатыЗапрета, УстановкаДатыЗапрета <> "НетЗапрета"); + Если Параметры.ДатыЗапретаЗагрузкиДанных Тогда + Если УстановкаДатыЗапрета = "НетЗапрета" Тогда + РасширеннаяПодсказка = НСтр("ru = 'Разрешена загрузка из других программ любых данных прошлых периодов.'"); + ИначеЕсли УстановкаДатыЗапрета = "ДляВсехПользователей" Тогда + РасширеннаяПодсказка = НСтр("ru = 'Даты запрета загрузки данных из других программ действуют одинаково для всех пользователей.'"); + Иначе + РасширеннаяПодсказка = НСтр("ru = 'Персональная настройка дат запрета загрузки данных прошлых периодов из других программ для выбранных пользователей.'"); + КонецЕсли; + Иначе + Если УстановкаДатыЗапрета = "НетЗапрета" Тогда + РасширеннаяПодсказка = НСтр("ru = 'Разрешены ввод и редактирование любых данных прошлых периодов.'"); + ИначеЕсли УстановкаДатыЗапрета = "ДляВсехПользователей" Тогда + РасширеннаяПодсказка = НСтр("ru = 'Даты запрета ввода и редактирования данных прошлых периодов действуют одинаково для всех пользователей.'"); + Иначе + РасширеннаяПодсказка = НСтр("ru = 'Персональная настройка дат запрета ввода и редактирования данных прошлых периодов для выбранных пользователей.'"); + КонецЕсли; + КонецЕсли; + Элементы.УстановкаДатыЗапретаПояснение.Заголовок = РасширеннаяПодсказка; Если УстановкаДатыЗапрета = "НетЗапрета" Тогда Возврат; @@ -3406,7 +3149,7 @@ ЗначенияКлючейЗаписей = Запрос.Выполнить().Выгрузить(); // Блокировка удаляемых записей. - Для каждого ЗначенияКлючаЗаписи Из ЗначенияКлючейЗаписей Цикл + Для Каждого ЗначенияКлючаЗаписи Из ЗначенияКлючейЗаписей Цикл ЗаблокироватьЗаписьПользователя( ЭтотОбъект, ЗначенияКлючаЗаписи.Раздел, @@ -3415,7 +3158,7 @@ КонецЦикла; // Удаление заблокированных записей. - Для каждого ЗначенияКлючаЗаписи Из ЗначенияКлючейЗаписей Цикл + Для Каждого ЗначенияКлючаЗаписи Из ЗначенияКлючейЗаписей Цикл УдалитьЗаписьПользователя( ЗначенияКлючаЗаписи.Раздел, ЗначенияКлючаЗаписи.Объект, @@ -3446,7 +3189,7 @@ Запрос = Новый Запрос; Запрос.УстановитьПараметр("Пользователь", Пользователь); Запрос.УстановитьПараметр("ЕдинственныйРаздел", ЕдинственныйРаздел); - Запрос.УстановитьПараметр("ПустаяДата", '00000000'); + Запрос.УстановитьПараметр("ПустаяДата", '00010101'); Запрос.УстановитьПараметр("ЗначениеДляВсехПользователей", ЗначениеДляВсехПользователей); Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 @@ -3521,8 +3264,8 @@ Если Данные = Неопределено Тогда Данные = Новый Структура; - Данные.Вставить("ОписаниеДатыЗапрета", "ПроизвольнаяДата"); - Данные.Вставить("ДатаЗапрета", '00000000'); + Данные.Вставить("ОписаниеДатыЗапрета", ""); + Данные.Вставить("ДатаЗапрета", '00010101'); Данные.Вставить("КоличествоДнейРазрешения", 0); Данные.Вставить("ЗаписьСуществует", ОбщаяДатаПрочитана); КонецЕсли; @@ -3537,7 +3280,7 @@ // Нет по объектам и по разделам, когда пустой. ТекущийСпособУказанияДатыЗапрета = ?(ОбщаяДатаПрочитана, "ОбщаяДата", ""); - ИначеЕсли НЕ РезультатыЗапроса[1].Пустой() Тогда + ИначеЕсли Не РезультатыЗапроса[1].Пустой() Тогда // Есть по объектам, когда не пустой. Если РезультатыЗапроса[2].Пустой() @@ -3565,13 +3308,13 @@ Пока Индекс >= 0 Цикл Запись = НаборЗаписей[Индекс]; Если ВыбранноеЗначение = "ОбщаяДата" Тогда - Если НЕ ( Запись.Раздел = РазделПустаяСсылка + Если Не ( Запись.Раздел = РазделПустаяСсылка И Запись.Объект = РазделПустаяСсылка ) Тогда НаборЗаписей.Удалить(Запись); КонецЕсли; ИначеЕсли ВыбранноеЗначение = "ПоРазделам" Тогда Если Запись.Раздел <> Запись.Объект - ИЛИ Запись.Раздел = РазделПустаяСсылка + Или Запись.Раздел = РазделПустаяСсылка И Запись.Объект = РазделПустаяСсылка Тогда НаборЗаписей.Удалить(Запись); КонецЕсли; @@ -3590,112 +3333,6 @@ КонецФункции -&НаКлиенте -Процедура ВыбратьРазделы() - - КоллекцияДанных = ДатыЗапрета.ПолучитьЭлементы(); - - РазделНеНайден = Истина; - РазделыДляОтметки = Новый СписокЗначений; - Для каждого ЭлементКоллекции Из КоллекцияДанных Цикл - Если ЭлементКоллекции.Раздел = РазделПустаяСсылка Тогда - РазделНеНайден = Ложь; - КонецЕсли; - КонецЦикла; - Если РазделНеНайден Тогда - РазделыДляОтметки.Добавить(РазделПустаяСсылка, ТекстПредставленияОбщейДаты()); - КонецЕсли; - - Если СпособУказанияДатыЗапрета <> "ПоОбъектам" Тогда - Для Каждого КлючИЗначение Из ТипыОбъектовРазделов Цикл - Раздел = КлючИЗначение.Ключ; - РазделНеНайден = Истина; - Для Каждого ЭлементКоллекции Из КоллекцияДанных Цикл - Если ЭлементКоллекции.Раздел = Раздел Тогда - РазделНеНайден = Ложь; - КонецЕсли; - КонецЦикла; - Если РазделНеНайден Тогда - РазделыДляОтметки.Добавить(Раздел); - КонецЕсли; - КонецЦикла; - КонецЕсли; - - Если РазделыДляОтметки.Количество() = 0 Тогда - Если СпособУказанияДатыЗапрета = "ПоОбъектам" Тогда - ПоказатьПредупреждение(, ТекстСообщенияОбщаяДатаУжеПоказана()); - Иначе - ПоказатьПредупреждение(, ТекстСообщенияВсеРазделыУжеПоказаны()); - КонецЕсли; - Иначе - РазделыДляОтметки.ПоказатьОтметкуЭлементов( - Новый ОписаниеОповещения("ВыбратьРазделыЗавершение", ЭтотОбъект, РазделыДляОтметки), - ЗаголовокВыборТребуемыхРазделов()); - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ВыбратьРазделыЗавершение(Результат, РазделыДляОтметки) Экспорт - - Если Результат = Неопределено Тогда - Возврат; - КонецЕсли; - - НетОтмеченных = Истина; - Для Каждого ЭлементСписка Из РазделыДляОтметки Цикл - Если ЭлементСписка.Пометка Тогда - НетОтмеченных = Ложь; - Прервать; - КонецЕсли; - КонецЦикла; - - Если НетОтмеченных Тогда - Возврат; - КонецЕсли; - - ДобавитьРазделы(РазделыДляОтметки, Элементы.Пользователи.ТекущиеДанные.Комментарий); - ОповеститьОбИзменении(Тип("РегистрСведенийКлючЗаписи.ДатыЗапретаИзменения")); - -КонецПроцедуры - -&НаСервере -Процедура ДобавитьРазделы(ОтмеченныеРазделы, Комментарий) - - ДатыЗапретаДерево = РеквизитФормыВЗначение("ДатыЗапрета"); - - Для каждого ОписаниеРаздела Из ОтмеченныеРазделы Цикл - Если ОписаниеРаздела.Пометка Тогда - ЗаблокироватьИЗаписатьПустыеДаты( - ОписаниеРаздела.Значение, - ОписаниеРаздела.Значение, - ТекущийПользователь, Комментарий); - - ЭлементДанных = ДатыЗапретаДерево.Строки.Добавить(); - ЭлементДанных.ЭтоРаздел = Истина; - ЭлементДанных.Раздел = ОписаниеРаздела.Значение; - ЭлементДанных.Объект = ОписаниеРаздела.Значение; - Если ОписаниеРаздела.Значение = РазделПустаяСсылка Тогда - ЭлементДанных.Представление = ТекстПредставленияОбщейДаты(); - Иначе - ЭлементДанных.Представление = Строка(ОписаниеРаздела.Значение); - КонецЕсли; - ЭлементДанных.ПолноеПредставление = ЭлементДанных.Представление; - ЭлементДанных.ОписаниеДатыЗапрета = "ПроизвольнаяДата"; - - ЭлементДанных.ОписаниеДатыЗапретаПредставление = - ПредставлениеОписанияДатыЗапрета(ЭлементДанных); - - ЭлементДанных.ЗаписьСуществует = Истина; - КонецЕсли; - КонецЦикла; - - ДатыЗапретаДерево.Строки.Сортировать("ПолноеПредставление Возр"); - - ЗначениеВРеквизитФормы(ДатыЗапретаДерево, "ДатыЗапрета"); - -КонецПроцедуры - &НаКлиенте Процедура РедактироватьДатуЗапретаВФорме() @@ -3705,7 +3342,7 @@ ОбновитьВыделение = Ложь; Пока Индекс >= 0 Цикл Строка = ДатыЗапрета.НайтиПоИдентификатору(ВыделенныеСтроки[Индекс]); - Если НЕ ЗначениеЗаполнено(Строка.Представление) Тогда + Если Не ЗначениеЗаполнено(Строка.Представление) Тогда ВыделенныеСтроки.Удалить(Индекс); ОбновитьВыделение = Истина; КонецЕсли; @@ -3713,7 +3350,7 @@ КонецЦикла; Если ВыделенныеСтроки.Количество() = 0 Тогда - ПоказатьПредупреждение(, ТекстСообщенияВыделенныеСтрокиНеЗаполнены()); + ПоказатьПредупреждение(, НСтр("ru ='Выделенные строки не заполнены.'")); Возврат; КонецЕсли; @@ -3721,7 +3358,7 @@ Элементы.ДатыЗапрета.Обновить(); ПоказатьПредупреждение( Новый ОписаниеОповещения("РедактироватьДатуЗапретаВФормеЗавершение", ЭтотОбъект, ВыделенныеСтроки), - ТекстСообщенияСнятоВыделениеСНезаполненныхСтрок()); + НСтр("ru = 'Снято выделение с незаполненных строк.'")); Иначе РедактироватьДатуЗапретаВФормеЗавершение(ВыделенныеСтроки) КонецЕсли; @@ -3732,7 +3369,7 @@ Процедура РедактироватьДатуЗапретаВФормеЗавершение(ВыделенныеСтроки) Экспорт // Блокировка записей выделенных строк. - Для каждого ВыделеннаяСтрока Из ВыделенныеСтроки Цикл + Для Каждого ВыделеннаяСтрока Из ВыделенныеСтроки Цикл ТекущиеДанные = ДатыЗапрета.НайтиПоИдентификатору(ВыделеннаяСтрока); ПрочитанныеСвойства = ЗаблокироватьЗаписьПользователя( @@ -3758,45 +3395,35 @@ Если Элементы.ДатыЗапрета.ТекущиеДанные.ЭтоРаздел Тогда ПараметрыФормы.Вставить("РазделПредставление", Элементы.ДатыЗапрета.ТекущиеДанные.Представление); - ПараметрыФормы.Вставить("ОбъектПредставление", ""); + ПараметрыФормы.Вставить("Объект", ""); Иначе ПараметрыФормы.Вставить("РазделПредставление", ""); - ПараметрыФормы.Вставить("ОбъектПредставление", - Элементы.ДатыЗапрета.ТекущиеДанные.Представление); + ПараметрыФормы.Вставить("Объект", Элементы.ДатыЗапрета.ТекущиеДанные.Объект); КонецЕсли; Иначе Если Элементы.ДатыЗапрета.ТекущиеДанные.ЭтоРаздел Тогда ПараметрыФормы.Вставить("РазделПредставление", Элементы.ДатыЗапрета.ТекущиеДанные.Представление); - РазделБезОбъектов = РазделыБезОбъектов.Найти( - Элементы.ДатыЗапрета.ТекущиеДанные.Раздел) <> Неопределено; + РазделБезОбъектов = Элементы.ДатыЗапрета.ТекущиеДанные.Раздел = РазделПустаяСсылка + Или РазделыБезОбъектов.Найти(Элементы.ДатыЗапрета.ТекущиеДанные.Раздел) <> Неопределено; - Если НЕ РазделБезОбъектов - И НазначениеДляВсех(ТекущийПользователь) Тогда - - ПараметрыФормы.Вставить("РазрешитьПоУмолчанию", Истина); - КонецЕсли; Иначе ПараметрыФормы.Вставить("РазделПредставление", Элементы.ДатыЗапрета.ТекущиеДанные.ПолучитьРодителя().Представление); - ПараметрыФормы.Вставить("ОбъектПредставление", - Элементы.ДатыЗапрета.ТекущиеДанные.Представление); + ПараметрыФормы.Вставить("ОбъектПредставление", Элементы.ДатыЗапрета.ТекущиеДанные.Объект); КонецЕсли; КонецЕсли; Иначе - ПараметрыФормы.Вставить("РазделПредставление", "<...>"); - ПараметрыФормы.Вставить("ОбъектПредставление", "<...>"); + ПараметрыФормы.Вставить("РазделПредставление", ""); + ПараметрыФормы.Вставить("Объект", + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Выбранные строки (%1)'"), ВыделенныеСтроки.Количество())); КонецЕсли; - ПараметрыФормы.Вставить("ОписаниеДатыЗапрета", - Элементы.ДатыЗапрета.ТекущиеДанные.ОписаниеДатыЗапрета); - - ПараметрыФормы.Вставить("КоличествоДнейРазрешения", - Элементы.ДатыЗапрета.ТекущиеДанные.КоличествоДнейРазрешения); - - ПараметрыФормы.Вставить("ДатаЗапрета", - Элементы.ДатыЗапрета.ТекущиеДанные.ДатаЗапрета); + ПараметрыФормы.Вставить("ОписаниеДатыЗапрета", Элементы.ДатыЗапрета.ТекущиеДанные.ОписаниеДатыЗапрета); + ПараметрыФормы.Вставить("КоличествоДнейРазрешения", Элементы.ДатыЗапрета.ТекущиеДанные.КоличествоДнейРазрешения); + ПараметрыФормы.Вставить("ДатаЗапрета", Элементы.ДатыЗапрета.ТекущиеДанные.ДатаЗапрета); ОткрытьФорму("РегистрСведений.ДатыЗапретаИзменения.Форма.РедактированиеДатыЗапрета", ПараметрыФормы, ЭтотОбъект); @@ -3806,13 +3433,10 @@ &НаКлиентеНаСервереБезКонтекста Функция ПредставлениеОписанияДатыЗапрета(Знач Данные) - Представление = СписокОписанийДатыЗапрета().НайтиПоЗначению( - Данные.ОписаниеДатыЗапрета).Представление; - + Представление = ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОписанияДатЗапрета()[Данные.ОписаниеДатыЗапрета]; Если Данные.КоличествоДнейРазрешения > 0 Тогда Представление = Представление + " (" + Формат(Данные.КоличествоДнейРазрешения, "ЧГ=") + ")"; КонецЕсли; - Возврат Представление; КонецФункции @@ -3851,17 +3475,16 @@ Данные.КоличествоДнейРазрешения = 0; Если ЗначениеЗаполнено(ВнутреннееОписание) Тогда - Строка1 = СтрПолучитьСтроку(ВнутреннееОписание, 1); - Строка2 = СтрПолучитьСтроку(ВнутреннееОписание, 2); - НайденныйЭлемент = СписокОписанийДатыЗапрета().НайтиПоЗначению(Строка1); - Если НайденныйЭлемент = Неопределено Тогда + ОписаниеДатыЗапрета = СтрПолучитьСтроку(ВнутреннееОписание, 1); + КоличествоДнейРазрешения = СтрПолучитьСтроку(ВнутреннееОписание, 2); + Если ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОписанияДатЗапрета()[ОписаниеДатыЗапрета] = Неопределено Тогда Данные.ДатаЗапрета = '00030303'; // Неизвестный формат. Иначе - Данные.ОписаниеДатыЗапрета = НайденныйЭлемент.Значение; - Если ЗначениеЗаполнено(Строка2) Тогда + Данные.ОписаниеДатыЗапрета = ОписаниеДатыЗапрета; + Если ЗначениеЗаполнено(КоличествоДнейРазрешения) Тогда ОписаниеТипаЧисло = Новый ОписаниеТипов("Число",,, Новый КвалификаторыЧисла(2, 0, ДопустимыйЗнак.Неотрицательный)); - Данные.КоличествоДнейРазрешения = ОписаниеТипаЧисло.ПривестиЗначение(Строка2); + Данные.КоличествоДнейРазрешения = ОписаниеТипаЧисло.ПривестиЗначение(КоличествоДнейРазрешения); КонецЕсли; КонецЕсли; КонецЕсли; @@ -3869,7 +3492,7 @@ КонецПроцедуры &НаКлиентеНаСервереБезКонтекста -Функция НазначениеДляВсех(Пользователь) +Функция ЭтоВсеПользователи(Пользователь) Возврат ТипЗнч(Пользователь) = Тип("ПеречислениеСсылка.ВидыНазначенияДатЗапрета"); @@ -3886,17 +3509,7 @@ Возврат Ложь; КонецЕсли; - Если НазначениеДляВсех(Пользователь) Тогда - ДатаЗапретаУстановлена = - ЗначениеЗаполнено(Данные.ДатаЗапрета) - ИЛИ Данные.ОписаниеДатыЗапрета <> "ПроизвольнаяДата"; - Иначе - ДатаЗапретаУстановлена = - ЗначениеЗаполнено(Данные.ДатаЗапрета) - ИЛИ Данные.ОписаниеДатыЗапрета <> ""; - КонецЕсли; - - Возврат ДатаЗапретаУстановлена; + Возврат Данные.ОписаниеДатыЗапрета <> ""; КонецФункции @@ -3910,11 +3523,11 @@ ОбъектыДляДобавления.Добавить(Объект); КонецЕсли; - Для каждого ТекущийОбъект Из ОбъектыДляДобавления Цикл + Для Каждого ТекущийОбъект Из ОбъектыДляДобавления Цикл ЗаблокироватьЗаписьПользователя(ЭтотОбъект, Раздел, ТекущийОбъект, Пользователь); КонецЦикла; - Для каждого ТекущийОбъект Из ОбъектыДляДобавления Цикл + Для Каждого ТекущийОбъект Из ОбъектыДляДобавления Цикл ЗаписатьДатуЗапретаСОписанием( Раздел, ТекущийОбъект, @@ -3933,54 +3546,35 @@ Элементы = Контекст.Элементы; - Если НазначениеДляВсех(Контекст.ТекущийПользователь) Тогда + Если ЭтоВсеПользователи(Контекст.ТекущийПользователь) Тогда Если Контекст.СпособУказанияДатыЗапрета = "ПоРазделам" Тогда // ДатыЗапретаБезВыбораРазделовБезВыбораОбъектов - УстановитьСвойство(Элементы.ДатыЗапретаРазделы.Видимость, Ложь); УстановитьСвойство(Элементы.ДатыЗапретаПодобрать.Видимость, Ложь); УстановитьСвойство(Элементы.ДатыЗапретаДобавить.Видимость, Ложь); УстановитьСвойство(Элементы.ДатыЗапретаКонтекстноеМенюДобавить.Видимость, Ложь); - УстановитьСвойство(Элементы.ДатыЗапретаИзменить.Отображение, ОтображениеКнопки.Текст); - УстановитьСвойство(Элементы.ДатыЗапретаИзменить.ТолькоВоВсехДействиях, Ложь); Иначе // ДатыЗапретаБезВыбораРазделовСВыборомОбъектов - УстановитьСвойство(Элементы.ДатыЗапретаРазделы.Видимость, Ложь); УстановитьСвойство(Элементы.ДатыЗапретаПодобрать.Видимость, Истина); УстановитьСвойство(Элементы.ДатыЗапретаДобавить.Видимость, Истина); УстановитьСвойство(Элементы.ДатыЗапретаКонтекстноеМенюДобавить.Видимость, Истина); - УстановитьСвойство(Элементы.ДатыЗапретаИзменить.Отображение, ОтображениеКнопки.Авто); - УстановитьСвойство(Элементы.ДатыЗапретаИзменить.ТолькоВоВсехДействиях, Не Контекст.ИнтерфейсВерсия82); КонецЕсли; Иначе Если Контекст.СпособУказанияДатыЗапрета = "ПоРазделам" Тогда // ДатыЗапретаСВыборомРазделовБезВыбораОбъектов - УстановитьСвойство(Элементы.ДатыЗапретаРазделы.Видимость, Истина); - УстановитьСвойство(Элементы.ДатыЗапретаРазделы.Заголовок, НСтр("ru = 'Разделы'")); УстановитьСвойство(Элементы.ДатыЗапретаПодобрать.Видимость, Ложь); УстановитьСвойство(Элементы.ДатыЗапретаДобавить.Видимость, Ложь); УстановитьСвойство(Элементы.ДатыЗапретаКонтекстноеМенюДобавить.Видимость, Ложь); - УстановитьСвойство(Элементы.ДатыЗапретаИзменить.Отображение, ОтображениеКнопки.Авто); - УстановитьСвойство(Элементы.ДатыЗапретаИзменить.ТолькоВоВсехДействиях, Не Контекст.ИнтерфейсВерсия82); ИначеЕсли Контекст.СпособУказанияДатыЗапрета = "ПоОбъектам" Тогда // ДатыЗапретаСВыборомОбщейДатыСВыборомОбъектов - УстановитьСвойство(Элементы.ДатыЗапретаРазделы.Видимость, Истина); - УстановитьСвойство(Элементы.ДатыЗапретаРазделы.Заголовок, НСтр("ru = 'Общая дата'")); УстановитьСвойство(Элементы.ДатыЗапретаПодобрать.Видимость, Истина); УстановитьСвойство(Элементы.ДатыЗапретаДобавить.Видимость, Истина); УстановитьСвойство(Элементы.ДатыЗапретаКонтекстноеМенюДобавить.Видимость, Истина); - УстановитьСвойство(Элементы.ДатыЗапретаИзменить.Отображение, ОтображениеКнопки.Авто); - УстановитьСвойство(Элементы.ДатыЗапретаИзменить.ТолькоВоВсехДействиях, Не Контекст.ИнтерфейсВерсия82); Иначе // ДатыЗапретаСВыборомРазделовСВыборомОбъектов - УстановитьСвойство(Элементы.ДатыЗапретаРазделы.Видимость, Истина); - УстановитьСвойство(Элементы.ДатыЗапретаРазделы.Заголовок, НСтр("ru = 'Разделы'")); УстановитьСвойство(Элементы.ДатыЗапретаПодобрать.Видимость, Истина); УстановитьСвойство(Элементы.ДатыЗапретаДобавить.Видимость, Истина); УстановитьСвойство(Элементы.ДатыЗапретаКонтекстноеМенюДобавить.Видимость, Истина); - УстановитьСвойство(Элементы.ДатыЗапретаДобавить.ТолькоВоВсехДействиях, Не Контекст.ИнтерфейсВерсия82); - УстановитьСвойство(Элементы.ДатыЗапретаИзменить.Отображение, ОтображениеКнопки.Авто); - УстановитьСвойство(Элементы.ДатыЗапретаИзменить.ТолькоВоВсехДействиях, Не Контекст.ИнтерфейсВерсия82); КонецЕсли; КонецЕсли; @@ -4006,164 +3600,9 @@ КонецФункции -//////////////////////////////////////////////////////////////////////////////// -// Одинаковые процедуры и функции форм ДатыЗапретаИзменения и РедактированиеДатыЗапрета. - -&НаКлиентеНаСервереБезКонтекста -Процедура ОбщаяДатаЗапретаСОписаниемПриИзменении(Знач Контекст, РассчитатьДатуЗапрета = Истина); - - Сутки = 60*60*24; - - Если Контекст.ОписаниеДатыЗапрета = "ПроизвольнаяДата" Тогда - Контекст.Элементы.СвойстваНепроизвольнойДаты.ТекущаяСтраница = - Контекст.Элементы.НепроизвольнаяДатаНеИспользуется; - - Контекст.Элементы.ПроизвольнаяДата.ТекущаяСтраница = - Контекст.Элементы.ПроизвольнаяДатаИспользуется; - - Контекст.РазрешитьИзменениеДанныхДоДатыЗапрета = Ложь; - Контекст.КоличествоДнейРазрешения = 0; - Иначе - Контекст.Элементы.СвойстваНепроизвольнойДаты.ТекущаяСтраница = - Контекст.Элементы.НепроизвольнаяДатаИспользуется; - - Контекст.Элементы.ПроизвольнаяДата.ТекущаяСтраница = - Контекст.Элементы.ПроизвольнаяДатаНеИспользуется; - - Если Контекст.ОписаниеДатыЗапрета = "ПредыдущийДень" Тогда - Контекст.Элементы.РазрешитьИзменениеДанныхДоДатыЗапрета.Доступность = Ложь; - Контекст.РазрешитьИзменениеДанныхДоДатыЗапрета = Ложь; - Иначе - Контекст.Элементы.РазрешитьИзменениеДанныхДоДатыЗапрета.Доступность = Истина; - КонецЕсли; - РасчетныеДатыЗапрета = РасчетДатыЗапрета( - Контекст.ОписаниеДатыЗапрета, Контекст.НачалоДня); - - Если РассчитатьДатуЗапрета Тогда - Контекст.ДатаЗапрета = РасчетныеДатыЗапрета.Текущая; - КонецЕсли; - ТекстНадписи = ""; - Если Контекст.РазрешитьИзменениеДанныхДоДатыЗапрета Тогда - СкорректироватьКоличествоДнейРазрешения( - Контекст.ОписаниеДатыЗапрета, Контекст.КоличествоДнейРазрешения); - - Контекст.Элементы.СвойствоКоличествоДнейРазрешенияИзменения.ТекущаяСтраница = - Контекст.Элементы.ИзменениеДанныхДоДатыЗапретаРазрешено; - - СрокРазрешения = - РасчетныеДатыЗапрета.Текущая + Контекст.КоличествоДнейРазрешения * Сутки; - - Если Контекст.НачалоДня > СрокРазрешения Тогда - ШаблонНадписи = НСтр("ru = 'Срок возможности изменения данных с %2 по %3 истек %1'"); - Иначе - Если РассчитатьДатуЗапрета Тогда - Контекст.ДатаЗапрета = РасчетныеДатыЗапрета.Предыдущая; - КонецЕсли; - ШаблонНадписи = - НСтр("ru = 'По %1 возможно изменение данных с %2 по %3 - |После %1 будет запрещено изменение данных по %3'") - + Символы.ПС; - КонецЕсли; - ТекстНадписи = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонНадписи, - Формат(СрокРазрешения, "ДЛФ=Д"), - Формат(РасчетныеДатыЗапрета.Предыдущая + Сутки, "ДЛФ=Д"), - Формат(РасчетныеДатыЗапрета.Текущая, "ДЛФ=Д")); - Иначе - Контекст.Элементы.СвойствоКоличествоДнейРазрешенияИзменения.ТекущаяСтраница = - Контекст.Элементы.ИзменениеДанныхДоДатыЗапретаНеРазрешено; - - Контекст.КоличествоДнейРазрешения = 0; - КонецЕсли; - Контекст.Элементы.ПояснениеНепроизвольнойДаты.Заголовок = - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Запрещено изменение данных по %1'"), - Формат(Контекст.ДатаЗапрета, "ДЛФ=Д")) - + ТекстНадписи; - КонецЕсли; - -КонецПроцедуры - -&НаКлиентеНаСервереБезКонтекста -Функция РасчетДатыЗапрета(Знач ВариантДатыЗапрета, Знач НачалоДня) - - Сутки = 60*60*24; - - ТекущаяДатаЗапрета = '00030303'; // Неизвестный формат. - ПредыдущаяДатаЗапрета = '00030303'; // Неизвестный формат. - - Если ВариантДатыЗапрета = "КонецПрошлогоГода" Тогда - ТекущаяДатаЗапрета = НачалоГода(НачалоДня) - Сутки; - ПредыдущаяДатаЗапрета = НачалоГода(ТекущаяДатаЗапрета) - Сутки; - - ИначеЕсли ВариантДатыЗапрета = "КонецПрошлогоКвартала" Тогда - ТекущаяДатаЗапрета = НачалоКвартала(НачалоДня) - Сутки; - ПредыдущаяДатаЗапрета = НачалоКвартала(ТекущаяДатаЗапрета) - Сутки; - - ИначеЕсли ВариантДатыЗапрета = "КонецПрошлогоМесяца" Тогда - ТекущаяДатаЗапрета = НачалоМесяца(НачалоДня) - Сутки; - ПредыдущаяДатаЗапрета = НачалоМесяца(ТекущаяДатаЗапрета) - Сутки; - - ИначеЕсли ВариантДатыЗапрета = "КонецПрошлойНедели" Тогда - ТекущаяДатаЗапрета = НачалоНедели(НачалоДня) - Сутки; - ПредыдущаяДатаЗапрета = НачалоНедели(ТекущаяДатаЗапрета) - Сутки; - - ИначеЕсли ВариантДатыЗапрета = "ПредыдущийДень" Тогда - ТекущаяДатаЗапрета = НачалоДня(НачалоДня) - Сутки; - ПредыдущаяДатаЗапрета = НачалоДня(ТекущаяДатаЗапрета) - Сутки; - КонецЕсли; - - Возврат Новый Структура("Текущая, Предыдущая", ТекущаяДатаЗапрета, ПредыдущаяДатаЗапрета); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Процедура СкорректироватьКоличествоДнейРазрешения(Знач ОписаниеДатыЗапрета, КоличествоДнейРазрешения) - - Если КоличествоДнейРазрешения = 0 Тогда - КоличествоДнейРазрешения = 1; - - ИначеЕсли ОписаниеДатыЗапрета = "КонецПрошлогоГода" Тогда - Если КоличествоДнейРазрешения > 90 Тогда - КоличествоДнейРазрешения = 90; - КонецЕсли; - - ИначеЕсли ОписаниеДатыЗапрета = "КонецПрошлогоКвартала" Тогда - Если КоличествоДнейРазрешения > 60 Тогда - КоличествоДнейРазрешения = 60; - КонецЕсли; - - ИначеЕсли ОписаниеДатыЗапрета = "КонецПрошлогоМесяца" Тогда - Если КоличествоДнейРазрешения > 25 Тогда - КоличествоДнейРазрешения = 25; - КонецЕсли; - - ИначеЕсли ОписаниеДатыЗапрета = "КонецПрошлойНедели" Тогда - Если КоличествоДнейРазрешения > 5 Тогда - КоличествоДнейРазрешения = 5; - КонецЕсли; - - КонецЕсли; - -КонецПроцедуры - //////////////////////////////////////////////////////////////////////////////// // Вспомогательные функции строк интерфейса пользователя. -&НаКлиентеНаСервереБезКонтекста -Функция СписокОписанийДатыЗапрета() - - Список = Новый СписокЗначений; - Список.Добавить("", "(" + НСтр("ru = 'По умолчанию'") + ")"); - Список.Добавить("ПроизвольнаяДата", НСтр("ru = 'Произвольная дата'")); - Список.Добавить("КонецПрошлогоГода", НСтр("ru = 'Конец прошлого года'")); - Список.Добавить("КонецПрошлогоКвартала", НСтр("ru = 'Конец прошлого квартала'")); - Список.Добавить("КонецПрошлогоМесяца", НСтр("ru = 'Конец прошлого месяца'")); - Список.Добавить("КонецПрошлойНедели", НСтр("ru = 'Конец прошлой недели'")); - Список.Добавить("ПредыдущийДень", НСтр("ru = 'Предыдущий день'")); - - Возврат Список; - -КонецФункции - &НаКлиентеНаСервереБезКонтекста Функция ТекстПредставленияДляВсехПользователей(Контекст) @@ -4175,7 +3614,7 @@ Функция ТекстПредставленияПользователя(Контекст, Пользователь) Если Контекст.Параметры.ДатыЗапретаЗагрузкиДанных Тогда - Для каждого ЗначениеСписка Из Контекст.СписокТиповПользователей Цикл + Для Каждого ЗначениеСписка Из Контекст.СписокТиповПользователей Цикл Если ТипЗнч(ЗначениеСписка.Значение) = ТипЗнч(Пользователь) Тогда Если ЗначениеЗаполнено(Пользователь) Тогда Возврат ЗначениеСписка.Представление + ": " + Строка(Пользователь); @@ -4204,312 +3643,48 @@ &НаКлиентеНаСервереБезКонтекста Функция ТекстПредставленияОбщейДаты() - Возврат "<" + НСтр("ru = 'Общая дата'") + ">"; - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаЗакрытьФорму() - - Возврат НСтр("ru = 'Закрыть форму?'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаОбновитьДанные() - - Возврат НСтр("ru = 'Обновить данные?'"); - -КонецФункции - -&НаКлиенте -Функция ТекстВопросаУдалитьВсеДатыЗапретаКромеДатДляВсехПользователей() - - Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Удалить все даты запрета, кроме установленных %1?'"), - ЗначениеДляВсехПользователей); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаУдалитьВсеДатыЗапрета() - - Возврат НСтр("ru = 'Удалить все даты запрета?'"); - -КонецФункции - -&НаКлиенте -Функция ТекстСообщенияЗначениеДляВсехПользователейНеИзменяется() - - Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Значение %1 не изменяется.'"), - ТекстПредставленияДляВсехПользователей(ЭтотОбъект)); - -КонецФункции - -&НаКлиенте -Функция ТекстСообщенияКомментарийДляВсехПользователейНеИзменяется() - - Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Комментарий %1 не изменяется.'"), - ТекстПредставленияДляВсехПользователей(ЭтотОбъект)); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияСначалаВыберитеПользователя() - - Возврат НСтр("ru = 'Сначала выберите пользователя.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияУстановкаДатыЗапретаНеИспользован(УстановкаДатыЗапретаВФорме, УстановкаДатыЗапретаВБазеДанных) - - Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Установка даты запрета ""%1"" не настроена, - |поэтому будет сохранена установка даты запрета ""%2"".'"), - УстановкаДатыЗапретаВФорме, - УстановкаДатыЗапретаВБазеДанных); + Возврат "<" + НСтр("ru = 'Общая дата для всех разделов'") + ">"; КонецФункции &НаКлиентеНаСервереБезКонтекста Функция ТекстСообщенияСпособУказанияНеИспользован(СпособУказанияВФорме, СпособУказанияВБазеДанных, ТекущийПользователь, Форма) - Если НазначениеДляВсех(ТекущийПользователь) Тогда - Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Способ указания даты запрета ""%1"" - |не настроен ""%2"", поэтому будет сохранен - |способ указания даты запрета ""%3"".'"), - СпособУказанияВФорме, - ТекстПредставленияДляВсехПользователей(Форма), - СпособУказанияВБазеДанных); - Иначе - Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru = 'Способ указания даты запрета ""%1"" - |не настроен для ""%2"", поэтому будет сохранен - |способ указания даты запрета ""%3"".'"), - СпособУказанияВФорме, - ТекущийПользователь, - СпособУказанияВБазеДанных); + Если СпособУказанияВФорме = "ПоРазделам" Или СпособУказанияВФорме = "ПоРазделамИОбъектам" Тогда + Если ЭтоВсеПользователи(ТекущийПользователь) Тогда + Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Ни для одного раздела не были введены даты запрета, + |поэтому для всех пользователей будет действовать более простая настройка ""%1"".'"), + СпособУказанияВБазеДанных); + Иначе + Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Ни для одного раздела не были введены даты запрета, + |поэтому для ""%1"" будет действовать более простая настройка ""%2"".'"), + ТекущийПользователь, СпособУказанияВБазеДанных); + КонецЕсли; + Иначе // ПоОбъектам + Если ЭтоВсеПользователи(ТекущийПользователь) Тогда + Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Ни для одного объекта не были введены даты запрета, + |поэтому для всех пользователей будет действовать более простая настройка ""%1"".'"), + СпособУказанияВБазеДанных); + Иначе + Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'Ни для одного объекта не были введены даты запрета, + |поэтому для ""%1"" будет действовать более простая настройка ""%2"".'"), + ТекущийПользователь, СпособУказанияВБазеДанных); + КонецЕсли; КонецЕсли; КонецФункции -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаОчиститьНезаполненныеСтроки() - - Возврат НСтр("ru = 'Очистить незаполненные строки?'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияДляУдаленияВыделитеОднуСтроку() - - Возврат НСтр("ru = 'Для удаления выделите одну строку.'"); - -КонецФункции - &НаКлиенте -Функция ТекстВопросаУдалитьДатыЗапретаДляВсехПользователей() +Функция ТекстСообщенияВВыбранномРазделеДатыЗапретаДляОбъектовНеУстанавливаются(Раздел) - Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Удалить даты запрета %1?'"), - НРег(ЗначениеДляВсехПользователей)); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаУдалитьДатыЗапретаДляПользователя() - - Возврат НСтр("ru = 'Удалить даты запрета для пользователя?'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаУдалитьДатыЗапретаДляГруппыПользователей() - - Возврат НСтр("ru = 'Удалить даты запрета для группы пользователей?'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаУдалитьДатыЗапретаДляВнешнегоПользователя() - - Возврат НСтр("ru = 'Удалить даты запрета для внешнего пользователя?'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаУдалитьДатыЗапретаДляГруппыВнешнихПользователей() - - Возврат НСтр("ru = 'Удалить даты запрета для группы внешних пользователей?'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаУдалитьДатыЗапрета() - - Возврат НСтр("ru = 'Удалить даты запрета?'"); - -КонецФункции - -&НаКлиенте -Функция ТекстСообщенияДляВсехПользователейДатыЗапретаНеУстановлены() - - Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 даты запрета не установлены.'"), - ЗначениеДляВсехПользователей); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияЗначениеУжеДобавленоВСписок() - - Возврат НСтр("ru = 'Значение уже добавлено в список.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияОбновитьДанныеФормыF5() - - Возврат НСтр("ru = 'Обновите данные формы (F5).'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаУдалитьДатыЗапретаДляРазделовИОбъектов() - - Возврат НСтр("ru = 'Удалить даты запрета для разделов и объектов?'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаУдалитьДатыЗапретаДляОбъектов() - - Возврат НСтр("ru = 'Удалить даты запрета для объектов?'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаУдалитьДатыЗапретаДляРазделов() - - Возврат НСтр("ru = 'Удалить даты запрета для разделов?'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияВВыбранномРазделеДатыЗапретаДляОбъектовНеУстанавливаются() - - Возврат НСтр("ru = 'В выбранном разделе даты запрета для объектов не устанавливаются.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияОбщаяДатаМожетБытьУстановлена() - - Возврат НСтр("ru = '<Общая дата> может быть установлена.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияРазделыУжеЗаполненыМожноУстановитьДатыЗапретаДляРазделов() - - Возврат НСтр("ru = 'Разделы уже заполнены, - |можно установить даты запрета - |для разделов.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияРазделыУжеЗаполненыМожноУстановитьДатыЗапретаДляРазделовИОбъектов() - - Возврат НСтр("ru = 'Разделы уже заполнены, - |можно установить даты запрета - |для разделов и объектов.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияОбъектУжеВыбранМожноУстановитьДатуЗапрета() - - Возврат НСтр("ru = 'Объект уже выбран, - |можно установить дату запрета.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияСначалаВыберитеОбъект() - - Возврат НСтр("ru = 'Сначала выберите объект.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаУдалитьДатыЗапретаДляРазделаИОбъектов() - - Возврат НСтр("ru = 'Удалить даты запрета для раздела и объектов?'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаУдалитьДатыЗапретаДляРаздела() - - Возврат НСтр("ru = 'Удалить дату запрета для раздела?'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаУдалитьОбщуюДатуЗапрета() - - Возврат НСтр("ru = 'Удалить общую дату запрета?'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстВопросаУдалитьДатуЗапретаОбъекта() - - Возврат НСтр("ru = 'Удалить дату запрета для объекта?'"); - -КонецФункции - -&НаКлиенте -Функция ТекстСообщенияДляВсехПользователейРазделыВсегдаПоказываются() - - Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 разделы всегда показываются.'"), - ЗначениеДляВсехПользователей); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияПриУдаленииДатаЗапретаОчищается() - - Возврат НСтр("ru = 'При удалении дата запрета очищается.'"); - -КонецФункции - -&НаКлиенте -Функция ТекстСообщенияДляВсехПользователейОбщаяДатаВсегдаПоказывается() - - Возврат СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = '%1 <Общая дата> всегда показывается.'"), - ЗначениеДляВсехПользователей); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстЗаголовкаРаздела() - - Возврат НСтр("ru = 'Раздел'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстЗаголовкаРазделаСОбъектами() - - Возврат НСтр("ru = 'Раздел, объект'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияНедостаточноПравДляВыбораВнешнихПользователей() - - Возврат НСтр("ru = 'Недостаточно прав для выбора внешних пользователей.'"); + Возврат ?(Раздел <> РазделПустаяСсылка, + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'В разделе ""%1"" не предусмотрена установка дат запрета для отдельных объектов.'"), Раздел), + НСтр("ru = 'Для установки дат запрета по отдельным объектам выберите один из разделов ниже и нажмите ""Подобрать"".'")); КонецФункции @@ -4520,78 +3695,4 @@ КонецФункции -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияНастройкиСНевыбраннымиПользователямиНеСохранены(Контекст) - - Если Контекст.Параметры.ДатыЗапретаЗагрузкиДанных Тогда - Возврат НСтр("ru = 'Настройки с невыбранными информационными базами не сохранены.'"); - КонецЕсли; - - Возврат НСтр("ru = 'Настройки с невыбранными пользователями не сохранены.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияНастройкиСНевыбраннымиОбъектамиНеСохранены() - - Возврат НСтр("ru = 'Настройки с невыбранными объектами не сохранены.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияНастройкиСНезаполненнымиДатамиЗапретаДляОбъектовНеСохранены() - - Возврат НСтр("ru = 'Настройки с незаполненными датами запрета для объектов не сохранены.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияПользователиБезНастроекДатЗапретаНеСохранены() - - Возврат НСтр("ru = 'Пользователи без настроек дат запрета не сохранены.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияНастройкиСНезаполненнымиДатамиЗапретаДляРазделовНеСохранены() - - Возврат НСтр("ru = 'Настройки с незаполненными датами запрета для разделов не сохранены.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияОбщаяДатаУжеПоказана() - - Возврат НСтр("ru = '<Общая дата> уже показана.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияВсеРазделыУжеПоказаны() - - Возврат НСтр("ru = 'Все разделы уже показаны.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ЗаголовокВыборТребуемыхРазделов() - - Возврат НСтр("ru = 'Выбор требуемых разделов'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияСнятоВыделениеСНезаполненныхСтрок() - - Возврат НСтр("ru = 'Снято выделение с незаполненных строк.'"); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТекстСообщенияВыделенныеСтрокиНеЗаполнены() - - Возврат НСтр("ru ='Выделенные строки не заполнены.'"); - -КонецФункции - #КонецОбласти diff --git a/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/РедактированиеДатыЗапрета/Form.form b/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/РедактированиеДатыЗапрета/Form.form index 80ee6ec1b..53b9e650e 100644 --- a/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/РедактированиеДатыЗапрета/Form.form +++ b/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/РедактированиеДатыЗапрета/Form.form @@ -1,272 +1,105 @@ <?xml version="1.0" encoding="UTF-8"?> <form:Form xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:core="http://g5.1c.ru/v8/dt/mcore" xmlns:form="http://g5.1c.ru/v8/dt/form"> - <items xsi:type="form:FormField"> - <name>ПользовательПредставление</name> - <id>31</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <dataPath xsi:type="form:DataPath"> - <segments>ПользовательПредставление</segments> - </dataPath> - <extendedTooltip> - <name>ПользовательПредставлениеExtendedTooltip</name> - <id>46</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>ПользовательПредставлениеКонтекстноеМеню</name> - <id>32</id> - <autoFill>true</autoFill> - </contextMenu> - <type>LabelField</type> - <readOnly>true</readOnly> - <editMode>Enter</editMode> - <showInHeader>true</showInHeader> - <headerHorizontalAlign>Left</headerHorizontalAlign> - <showInFooter>true</showInFooter> - <extInfo xsi:type="form:LabelFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - </extInfo> - </items> - <items xsi:type="form:FormField"> - <name>РазделПредставление</name> - <id>35</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <dataPath xsi:type="form:DataPath"> - <segments>РазделПредставление</segments> - </dataPath> - <extendedTooltip> - <name>РазделПредставлениеExtendedTooltip</name> - <id>47</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>РазделПредставлениеКонтекстноеМеню</name> - <id>36</id> - <autoFill>true</autoFill> - </contextMenu> - <type>LabelField</type> - <readOnly>true</readOnly> - <editMode>Enter</editMode> - <showInHeader>true</showInHeader> - <headerHorizontalAlign>Left</headerHorizontalAlign> - <showInFooter>true</showInFooter> - <extInfo xsi:type="form:LabelFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - </extInfo> - </items> - <items xsi:type="form:FormField"> - <name>ОбъектПредставление</name> - <id>33</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <dataPath xsi:type="form:DataPath"> - <segments>ОбъектПредставление</segments> - </dataPath> - <extendedTooltip> - <name>ОбъектПредставлениеExtendedTooltip</name> - <id>48</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>ОбъектПредставлениеКонтекстноеМеню</name> - <id>34</id> - <autoFill>true</autoFill> - </contextMenu> - <type>LabelField</type> - <readOnly>true</readOnly> - <editMode>Enter</editMode> - <showInHeader>true</showInHeader> - <headerHorizontalAlign>Left</headerHorizontalAlign> - <showInFooter>true</showInFooter> - <extInfo xsi:type="form:LabelFieldExtInfo"> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - </extInfo> - </items> - <items xsi:type="form:Decoration"> - <name>Отступ</name> - <id>42</id> - <visible>true</visible> - <enabled>true</enabled> - <userVisible> - <common>true</common> - </userVisible> - <extendedTooltip> - <name>ОтступExtendedTooltip</name> - <id>49</id> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </extendedTooltip> - <contextMenu> - <name>ОтступКонтекстноеМеню</name> - <id>43</id> - <autoFill>true</autoFill> - </contextMenu> - <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> - <autoMaxHeight>true</autoMaxHeight> - <extInfo xsi:type="form:LabelDecorationExtInfo"> - <horizontalAlign>Left</horizontalAlign> - </extInfo> - </items> <items xsi:type="form:FormGroup"> - <name>ДатаЗапретаСОписанием</name> - <id>19</id> - <items xsi:type="form:FormField"> - <name>ОписаниеДатыЗапрета</name> - <id>20</id> - <title> - <key>ru</key> - <value>Дата запрета</value> - - true - true - - true - - - ОписаниеДатыЗапрета - - - OnChange - ОписаниеДатыЗапретаПриИзменении - - - ОписаниеДатыЗапретаExtendedTooltip - 51 - Label - true - true - - Left - - - - ОписаниеДатыЗапретаКонтекстноеМеню - 21 - true - - InputField - Enter - true - Left - true - - true - true - false - true - true - true - true - - - ru - (По умолчанию) - - - - - - ru - Произвольная дата - - - ПроизвольнаяДата - - - - - ru - Конец прошлого года - - - КонецПрошлогоГода - - - - - ru - Конец прошлого квартала - - - КонецПрошлогоКвартала - - - - - ru - Конец прошлого месяца - - - КонецПрошлогоМесяца - - - - - ru - Конец прошлой недели - - - КонецПрошлойНедели - - - - - ru - Предыдущий день - - - ПредыдущийДень - - - - Style.ФонУправляющегоПоля - - Normal - - + ГруппаРежимыРаботы + 79 - ПроизвольнаяДата - 22 + ПростойРежим + 81 + + ЗапретИзмененияДанныхНеУстановлен + 85 + true + true + + true + + + ОписаниеДатыЗапрета + + None + + ЗапретИзмененияДанныхНеУстановленРасширеннаяПодсказка + 87 + Label + true + true + + Left + + + + ЗапретИзмененияДанныхНеУстановленКонтекстноеМеню + 86 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + Запрет изменения данных не установлен + + + + Vertical + + - ПроизвольнаяДатаИспользуется - 23 + ГруппаПроизвольнаяДата + 88 - ДатаЗапрета - 24 + ПроизвольнаяДатаЗапрета + 90 + true + true + + true + + + ОписаниеДатыЗапрета + + None + + ПроизвольнаяДатаЗапретаРасширеннаяПодсказка + 92 + Label + true + true + + Left + + + + ПроизвольнаяДатаЗапретаКонтекстноеМеню + 91 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + Дата запрета: + + + ПроизвольнаяДата + + + Vertical + + + + ДатаЗапретаПростойРежим + 93 true true @@ -281,8 +114,8 @@ ДатаЗапретаПриИзменении - ДатаЗапретаExtendedTooltip - 54 + ДатаЗапретаПростойРежимРасширеннаяПодсказка + 95 Label true true @@ -291,8 +124,8 @@ - ДатаЗапретаКонтекстноеМеню - 25 + ДатаЗапретаПростойРежимКонтекстноеМеню + 94 true InputField @@ -304,7 +137,10 @@ true true true - true + + ru + ДП=01.01.0001 + true true true @@ -318,15 +154,11 @@ <key>ru</key> - <value>Произвольная дата используется</value> + <value>Группа произвольная дата</value> - - ru - Произвольная дата используется - - ПроизвольнаяДатаИспользуетсяExtendedTooltip - 53 + ГруппаПроизвольнаяДатаРасширеннаяПодсказка + 89 Label true true @@ -334,27 +166,37 @@ Left - Page - - Vertical - auto - false + UsualGroup + + Auto + true + true + Auto + Auto - ПроизвольнаяДатаНеИспользуется - 26 + ГруппаБольшеВозможностей + 99 - ПустаяНадписьДляОтображенияСтраницы1 - 27 + БольшеВозможностей + 96 + + <key>ru</key> + <value>Больше возможностей >></value> + true true true + + ru + Указать относительную дату запрета и отсрочку + - ПустаяНадписьДляОтображенияСтраницы1ExtendedTooltip - 56 + БольшеВозможностейРасширеннаяПодсказка + 98 Label true true @@ -363,14 +205,18 @@ - ПустаяНадписьДляОтображенияСтраницы1КонтекстноеМеню - 28 + БольшеВозможностейКонтекстноеМеню + 97 true Label - true true + + Click + БольшеВозможностейНажатие + + true Left @@ -381,15 +227,11 @@ <key>ru</key> - <value>Произвольная дата не используется</value> + <value>Группа больше возможностей</value> - - ru - Произвольная дата не используется - - ПроизвольнаяДатаНеИспользуетсяExtendedTooltip - 55 + ГруппаБольшеВозможностейРасширеннаяПодсказка + 100 Label true true @@ -397,11 +239,14 @@ Left - Page - - Vertical - auto - false + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto true @@ -411,15 +256,11 @@ <key>ru</key> - <value>Произвольная дата</value> + <value>Простой режим</value> - - ru - Произвольная дата - - ПроизвольнаяДатаExtendedTooltip - 52 + ПростойРежимРасширеннаяПодсказка + 82 Label true true @@ -427,150 +268,211 @@ Left - Pages - - Auto + Page + + Vertical + auto + false - true - true - - true - - - <key>ru</key> - <value>Дата запрета с описанием</value> - - - ru - Дата запрета с описанием - - - ДатаЗапретаСОписаниемExtendedTooltip - 50 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - СвойстваНепроизвольнойДаты - 1 - НепроизвольнаяДатаИспользуется - 2 - - РазрешитьИзменениеДанныхДоДатыЗапрета - 3 - true - true - - true - - - РазрешитьИзменениеДанныхДоДатыЗапрета - - Right - - OnChange - РазрешитьИзменениеДанныхДоДатыЗапретаПриИзменении - - - РазрешитьИзменениеДанныхДоДатыЗапретаExtendedTooltip - 59 - Label - true - true - - Left - - - - РазрешитьИзменениеДанныхДоДатыЗапретаКонтекстноеМеню - 4 - true - - CheckBoxField - Enter - true - Left - true - - + РасширенныйРежим + 83 - СвойствоКоличествоДнейРазрешенияИзменения - 5 - - ИзменениеДанныхДоДатыЗапретаРазрешено - 6 - - КоличествоДнейРазрешенияЗаголовок - 7 - - <key>ru</key> - <value>В течение</value> - - true - true - - true - - - КоличествоДнейРазрешенияЗаголовокExtendedTooltip - 62 - Label - true - true - - Left - - - - КоличествоДнейРазрешенияЗаголовокКонтекстноеМеню - 8 - true - + ДатаЗапретаСОписанием + 19 + + ОписаниеДатыЗапрета + 20 + + <key>ru</key> + <value>Дата запрета</value> + + true + true + + true + + + ОписаниеДатыЗапрета + + + OnChange + ОписаниеДатыЗапретаПриИзменении + + + ОписаниеДатыЗапретаExtendedTooltip + 51 Label true true Left - - - КоличествоДнейРазрешения - 9 - - <key>ru</key> - <value> дней после даты запрета</value> - + + + ОписаниеДатыЗапретаКонтекстноеМеню + 21 + true + + InputField + Enter + true + Left + true + + + Clearing + ОписаниеДатыЗапретаОчистка + + 20 + true + true + false + true + true + true + true + + + ru + Не установлена + + + + + + ru + Произвольная дата + + + ПроизвольнаяДата + + + + + ru + Конец прошлого года + + + КонецПрошлогоГода + + + + + ru + Конец прошлого квартала + + + КонецПрошлогоКвартала + + + + + ru + Конец прошлого месяца + + + КонецПрошлогоМесяца + + + + + ru + Конец прошлой недели + + + КонецПрошлойНедели + + + + + ru + Предыдущий день + + + ПредыдущийДень + + + + Style.ФонУправляющегоПоля + + Normal + + + + ПроизвольнаяДата + 22 + + ПроизвольнаяДатаИспользуется + 23 + + ДатаЗапрета + 24 + true + true + + true + + + ДатаЗапрета + + None + + OnChange + ДатаЗапретаПриИзменении + + + ДатаЗапретаExtendedTooltip + 54 + Label + true + true + + Left + + + + ДатаЗапретаКонтекстноеМеню + 25 + true + + InputField + Enter + true + Left + true + + true + true + true + true + + ru + ДП=01.01.0001 + + true + true + true + Normal + + true true true - - КоличествоДнейРазрешения - - Right - - OnChange - КоличествоДнейРазрешенияПриИзменении - + + <key>ru</key> + <value>Произвольная дата используется</value> + + + ru + Произвольная дата используется + - КоличествоДнейРазрешенияExtendedTooltip - 63 + ПроизвольнаяДатаИспользуетсяExtendedTooltip + 53 Label true true @@ -578,28 +480,74 @@ Left - - КоличествоДнейРазрешенияКонтекстноеМеню - 10 - true - - InputField - Enter - true - Left - true - - - AutoComplete - КоличествоДнейРазрешенияАвтоПодбор - + Page + + Vertical + auto + false + + + + ПроизвольнаяДатаНеИспользуется + 26 + + ПустаяНадписьДляОтображенияСтраницы1 + 27 + true + true + + true + + + ПустаяНадписьДляОтображенияСтраницы1ExtendedTooltip + 56 + Label + true + true + + Left + + + + ПустаяНадписьДляОтображенияСтраницы1КонтекстноеМеню + 28 + true + + Label true true - true - true - true - true - Normal + + Left + + + true + true + + true + + + <key>ru</key> + <value>Произвольная дата не используется</value> + + + ru + Произвольная дата не используется + + + ПроизвольнаяДатаНеИспользуетсяExtendedTooltip + 55 + Label + true + true + + Left + + + Page + + Vertical + auto + false true @@ -609,15 +557,241 @@ <key>ru</key> - <value>Изменение данных до даты запрета разрешено</value> + <value>Произвольная дата</value> ru - Изменение данных до даты запрета разрешено + Произвольная дата - ИзменениеДанныхДоДатыЗапретаРазрешеноExtendedTooltip - 61 + ПроизвольнаяДатаExtendedTooltip + 52 + Label + true + true + + Left + + + Pages + + Auto + + + true + true + + true + + + <key>ru</key> + <value>Дата запрета с описанием</value> + + + ДатаЗапретаСОписаниемExtendedTooltip + 50 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + СвойстваДатыЗапрета + 1 + + ОтносительнаяДата + 2 + + ГруппаКоличествоДнейРазрешения + 106 + + РазрешитьИзменениеДанныхДоДатыЗапрета + 3 + true + true + + true + + + РазрешитьИзменениеДанныхДоДатыЗапрета + + Right + + OnChange + РазрешитьИзменениеДанныхДоДатыЗапретаПриИзменении + + + РазрешитьИзменениеДанныхДоДатыЗапретаExtendedTooltip + 59 + Label + true + true + + Left + + + + РазрешитьИзменениеДанныхДоДатыЗапретаКонтекстноеМеню + 4 + true + + CheckBoxField + Enter + true + Left + true + + + + КоличествоДнейРазрешения + 9 + + <key>ru</key> + <value> дней</value> + + true + true + + true + + + КоличествоДнейРазрешения + + Right + + OnChange + КоличествоДнейРазрешенияПриИзменении + + + КоличествоДнейРазрешенияExtendedTooltip + 63 + Label + true + true + + Left + + + + КоличествоДнейРазрешенияКонтекстноеМеню + 10 + true + + InputField + Enter + true + Left + true + + + AutoComplete + КоличествоДнейРазрешенияАвтоПодбор + + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа количество дней разрешения</value> + + + ГруппаКоличествоДнейРазрешенияРасширеннаяПодсказка + 107 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + + + ПояснениеНепроизвольнойДаты + 14 + + <key>ru</key> + <value>Запрещено изменение данных по %1</value> + + true + true + + true + + + ru + ] + + + ПояснениеНепроизвольнойДатыExtendedTooltip + 66 + Label + true + true + + Left + + + + ПояснениеНепроизвольнойДатыКонтекстноеМеню + 15 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + + + true + true + + true + + + <key>ru</key> + <value>Относительная дата</value> + + + ru + Относительная дата + + + ОтносительнаяДатаРасширеннаяПодсказка + 58 Label true true @@ -627,24 +801,28 @@ Page - auto + Vertical false - ИзменениеДанныхДоДатыЗапретаНеРазрешено - 11 + НетПояснения + 16 - ПустаяНадписьДляОтображенияСтраницы2 - 12 + МеньшеВозможностей + 103 + + <key>ru</key> + <value><< Меньше возможностей</value> + true true true - ПустаяНадписьДляОтображенияСтраницы2ExtendedTooltip - 65 + МеньшеВозможностейРасширеннаяПодсказка + 105 Label true true @@ -653,14 +831,18 @@ - ПустаяНадписьДляОтображенияСтраницы2КонтекстноеМеню - 13 + МеньшеВозможностейКонтекстноеМеню + 104 true Label - true true + + Click + МеньшеВозможностейНажатие + + true Left @@ -671,15 +853,11 @@ <key>ru</key> - <value>Изменение данных до даты запрета не разрешено</value> + <value>Нет пояснения</value> - - ru - Изменение данных до даты запрета не разрешено - - ИзменениеДанныхДоДатыЗапретаНеРазрешеноExtendedTooltip - 64 + НетПоясненияРасширеннаяПодсказка + 67 Label true true @@ -701,15 +879,11 @@ <key>ru</key> - <value>Свойство количество дней разрешения изменения</value> + <value>Свойства даты запрета</value> - - ru - Свойство количество дней разрешения изменения - - СвойствоКоличествоДнейРазрешенияИзмененияExtendedTooltip - 60 + СвойстваДатыЗапретаРасширеннаяПодсказка + 57 Label true true @@ -722,39 +896,6 @@ Auto - - ПояснениеНепроизвольнойДаты - 14 - true - true - - true - - - ПояснениеНепроизвольнойДатыExtendedTooltip - 66 - Label - true - true - - Left - - - - ПояснениеНепроизвольнойДатыКонтекстноеМеню - 15 - true - - Label - true - true - - 128 - - - Left - - true true @@ -762,77 +903,11 @@ <key>ru</key> - <value>Непроизвольная дата используется</value> + <value>Расширенный режим</value> - - ru - Непроизвольная дата используется - - НепроизвольнаяДатаИспользуетсяExtendedTooltip - 58 - Label - true - true - - Left - - - Page - - Vertical - false - - - - НепроизвольнаяДатаНеИспользуется - 16 - - ПустаяНадписьДляОтображенияСтраницы3 - 17 - true - true - - true - - - ПустаяНадписьДляОтображенияСтраницы3ExtendedTooltip - 68 - Label - true - true - - Left - - - - ПустаяНадписьДляОтображенияСтраницы3КонтекстноеМеню - 18 - true - - Label - true - true - - Left - - - true - true - - true - - - <key>ru</key> - <value>Непроизвольная дата не используется</value> - - - ru - Непроизвольная дата не используется - - - НепроизвольнаяДатаНеИспользуетсяExtendedTooltip - 67 + РасширенныйРежимРасширеннаяПодсказка + 84 Label true true @@ -854,15 +929,11 @@ <key>ru</key> - <value>Свойства непроизвольной даты</value> + <value>Группа режимы работы</value> - - ru - Свойства непроизвольной даты - - СвойстваНепроизвольнойДатыExtendedTooltip - 57 + ГруппаРежимыРаботыРасширеннаяПодсказка + 80 Label true true @@ -875,6 +946,168 @@ Auto + + ГруппаПояснение + 69 + + ПользовательПредставление + 31 + + Style.ПоясняющийТекст + + true + true + + true + + + ПользовательПредставление + + + ПользовательПредставлениеExtendedTooltip + 46 + Label + true + true + + Left + + + + ПользовательПредставлениеКонтекстноеМеню + 32 + true + + LabelField + true + Enter + true + Left + true + + true + true + + Style.ПоясняющийТекст + + + + + РазделПредставление + 35 + + Style.ПоясняющийТекст + + true + true + + true + + + РазделПредставление + + + РазделПредставлениеExtendedTooltip + 47 + Label + true + true + + Left + + + + РазделПредставлениеКонтекстноеМеню + 36 + true + + LabelField + true + Enter + true + Left + true + + true + true + + Style.ПоясняющийТекст + + + + + ОбъектПредставление + 33 + + Style.ПоясняющийТекст + + true + true + + true + + + Объект + + + ОбъектПредставлениеExtendedTooltip + 48 + Label + true + true + + Left + + + + ОбъектПредставлениеКонтекстноеМеню + 34 + true + + LabelField + true + Enter + true + Left + true + + + Click + ОбъектПредставлениеНажатие + + true + true + true + + + true + true + + true + + + <key>ru</key> + <value>Группа пояснение</value> + + + ГруппаПояснениеРасширеннаяПодсказка + 70 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + + Bottom true @@ -962,7 +1195,7 @@ РазрешитьИзменениеДанныхДоДатыЗапрета <key>ru</key> - <value>Разрешить изменение данных до даты запрета</value> + <value>Вступает в действие с отсрочкой в</value> 1 @@ -1035,10 +1268,10 @@ - ТекущаяДатаНаСервере + НачалоДня <key>ru</key> - <value>Текущая дата на сервере</value> + <value>Начало дня</value> 5 @@ -1055,16 +1288,13 @@ - ОбъектПредставление + Объект <key>ru</key> <value>Объект</value> 6 - - String - - + true @@ -1076,7 +1306,7 @@ ПользовательПредставление <key>ru</key> - <value>Пользователь</value> + <value>Действует для</value> 7 @@ -1167,11 +1397,8 @@ - ОбъектПредставление - - String - - + Объект + КоличествоДнейРазрешения @@ -1193,7 +1420,7 @@ - РазрешитьПоУмолчанию + ДатаМожетБытьНеУстановлена Boolean diff --git a/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/РедактированиеДатыЗапрета/Module.bsl b/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/РедактированиеДатыЗапрета/Module.bsl index 3a9091d38..57d20e8cb 100644 --- a/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/РедактированиеДатыЗапрета/Module.bsl +++ b/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/РедактированиеДатыЗапрета/Module.bsl @@ -10,35 +10,60 @@ ПользовательПредставление = Параметры.ПользовательПредставление; РазделПредставление = Параметры.РазделПредставление; - ОбъектПредставление = Параметры.ОбъектПредставление; + Объект = Параметры.Объект; ОписаниеДатыЗапрета = Параметры.ОписаниеДатыЗапрета; КоличествоДнейРазрешения = Параметры.КоличествоДнейРазрешения; ДатаЗапрета = Параметры.ДатаЗапрета; РазрешитьИзменениеДанныхДоДатыЗапрета = КоличествоДнейРазрешения > 0; - Если НЕ ЗначениеЗаполнено(РазделПредставление) Тогда + Если Не ЗначениеЗаполнено(РазделПредставление) + И Не ЗначениеЗаполнено(Объект) Тогда + Элементы.РазделПредставление.Видимость = Ложь; - КонецЕсли; - - Если НЕ ЗначениеЗаполнено(ОбъектПредставление) Тогда Элементы.ОбъектПредставление.Видимость = Ложь; + СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(ЭтотОбъект, "БезРазделаИОбъекта"); + + ИначеЕсли Не ЗначениеЗаполнено(РазделПредставление) Тогда + Элементы.РазделПредставление.Видимость = Ложь; + СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(ЭтотОбъект, "БезРаздела"); + + ИначеЕсли Не ЗначениеЗаполнено(Объект) Тогда + Элементы.ОбъектПредставление.Видимость = Ложь; + СтандартныеПодсистемыСервер.УстановитьКлючНазначенияФормы(ЭтотОбъект, "БезОбъекта"); + ИначеЕсли ЗначениеЗаполнено(Объект) Тогда + Если ТипЗнч(Объект) = Тип("Строка") Тогда + Элементы.ОбъектПредставление.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; + Элементы.ОбъектПредставление.Гиперссылка = Ложь; + Иначе + ПредставлениеОбъекта = Объект.Метаданные().ПредставлениеОбъекта; + Если ПустаяСтрока(ПредставлениеОбъекта) Тогда + ПредставлениеОбъекта = Объект.Метаданные().Представление(); + КонецЕсли; + Элементы.ОбъектПредставление.Заголовок = ПредставлениеОбъекта; + КонецЕсли; КонецЕсли; - Если НЕ Параметры.РазрешитьПоУмолчанию Тогда - Элементы.ОписаниеДатыЗапрета.СписокВыбора.Удалить(0); + Если ОписаниеДатыЗапрета = "" Тогда // не установлен + ОписаниеДатыЗапрета = "ПроизвольнаяДата"; КонецЕсли; // Кэширование текущей даты на сервере. - ТекущаяДатаНаСервере = ТекущаяДатаСеанса(); - - ОбщаяДатаЗапретаСОписаниемПриИзмененииДополнительно(ЭтотОбъект); + НачалоДня = ТекущаяДатаСеанса(); + ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); + Если ОписаниеДатыЗапрета = "ПроизвольнаяДата" Тогда + ТекущийЭлемент = Элементы.ДатаЗапретаПростойРежим; + КонецЕсли; + КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ОповеститьОВыборе(ВозвращаемоеЗначение); КонецПроцедуры @@ -53,37 +78,71 @@ &НаКлиенте Процедура ОписаниеДатыЗапретаПриИзменении(Элемент) - ОбщаяДатаЗапретаСОписаниемПриИзмененииДополнительно(ЭтотОбъект); + ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); + +КонецПроцедуры + +&НаКлиенте +Процедура ОписаниеДатыЗапретаОчистка(Элемент, СтандартнаяОбработка) + + СтандартнаяОбработка = Ложь; + ОписаниеДатыЗапрета = Элементы.ОписаниеДатыЗапрета.СписокВыбора[0].Значение; + ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); КонецПроцедуры &НаКлиенте Процедура ДатаЗапретаПриИзменении(Элемент) - ОбщаяДатаЗапретаСОписаниемПриИзмененииДополнительно(ЭтотОбъект); + ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); КонецПроцедуры &НаКлиенте Процедура РазрешитьИзменениеДанныхДоДатыЗапретаПриИзменении(Элемент) - ОбщаяДатаЗапретаСОписаниемПриИзмененииДополнительно(ЭтотОбъект); + ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); КонецПроцедуры &НаКлиенте Процедура КоличествоДнейРазрешенияПриИзменении(Элемент) - ОбщаяДатаЗапретаСОписаниемПриИзмененииДополнительно(ЭтотОбъект); + ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); КонецПроцедуры &НаКлиенте Процедура КоличествоДнейРазрешенияАвтоПодбор(Элемент, Текст, ДанныеВыбора, Ожидание, СтандартнаяОбработка) - КоличествоДнейРазрешения = Текст; + Если ПустаяСтрока(Текст) Тогда + Возврат; + КонецЕсли; - ОбщаяДатаЗапретаСОписаниемПриИзмененииДополнительно(ЭтотОбъект); + КоличествоДнейРазрешения = Текст; + ДатыЗапретаИзмененияСлужебныйКлиентСервер.ОбщаяДатаЗапретаСОписаниемПриИзменении(ЭтотОбъект); + +КонецПроцедуры + +&НаКлиенте +Процедура ОбъектПредставлениеНажатие(Элемент, СтандартнаяОбработка) + + СтандартнаяОбработка = Ложь; + ПоказатьЗначение(, Объект); + +КонецПроцедуры + +&НаКлиенте +Процедура БольшеВозможностейНажатие(Элемент) + + Элементы.ГруппаРежимыРаботы.ТекущаяСтраница = Элементы.РасширенныйРежим; + +КонецПроцедуры + +&НаКлиенте +Процедура МеньшеВозможностейНажатие(Элемент) + + Элементы.ГруппаРежимыРаботы.ТекущаяСтраница = Элементы.ПростойРежим; КонецПроцедуры @@ -95,173 +154,18 @@ Процедура ОК(Команда) ВозвращаемоеЗначение = Новый Структура; - ВозвращаемоеЗначение.Вставить("ОписаниеДатыЗапрета", ОписаниеДатыЗапрета); - ВозвращаемоеЗначение.Вставить("КоличествоДнейРазрешения", КоличествоДнейРазрешения); - ВозвращаемоеЗначение.Вставить("ДатаЗапрета", ДатаЗапрета); + ВозвращаемоеЗначение.Вставить("ОписаниеДатыЗапрета", ОписаниеДатыЗапрета); + + Если ОписаниеДатыЗапрета = "" Тогда + ВозвращаемоеЗначение.Вставить("КоличествоДнейРазрешения", 0); + ВозвращаемоеЗначение.Вставить("ДатаЗапрета", '00010101'); + Иначе + ВозвращаемоеЗначение.Вставить("КоличествоДнейРазрешения", КоличествоДнейРазрешения); + ВозвращаемоеЗначение.Вставить("ДатаЗапрета", ДатаЗапрета); + КонецЕсли; Закрыть(); КонецПроцедуры #КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -&НаКлиентеНаСервереБезКонтекста -Процедура ОбщаяДатаЗапретаСОписаниемПриИзмененииДополнительно(Знач Контекст) - - Если Контекст.ОписаниеДатыЗапрета = "" Тогда - Контекст.Элементы.СвойстваНепроизвольнойДаты.ТекущаяСтраница = - Контекст.Элементы.НепроизвольнаяДатаНеИспользуется; - - Контекст.Элементы.ПроизвольнаяДата.ТекущаяСтраница = - Контекст.Элементы.ПроизвольнаяДатаНеИспользуется; - - Контекст.РазрешитьИзменениеДанныхДоДатыЗапрета = Ложь; - Контекст.КоличествоДнейРазрешения = 0; - Контекст.ДатаЗапрета = '00000000'; - Иначе - ОбщаяДатаЗапретаСОписаниемПриИзменении(Контекст); - КонецЕсли; - -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Одинаковые процедуры и функции форм ДатыЗапретаИзменения и РедактированиеДатыЗапрета. - -&НаКлиентеНаСервереБезКонтекста -Процедура ОбщаяДатаЗапретаСОписаниемПриИзменении(Знач Контекст, РассчитатьДатуЗапрета = Истина) - - Сутки = 60*60*24; - - Если Контекст.ОписаниеДатыЗапрета = "ПроизвольнаяДата" Тогда - Контекст.Элементы.СвойстваНепроизвольнойДаты.ТекущаяСтраница = - Контекст.Элементы.НепроизвольнаяДатаНеИспользуется; - - Контекст.Элементы.ПроизвольнаяДата.ТекущаяСтраница = - Контекст.Элементы.ПроизвольнаяДатаИспользуется; - - Контекст.РазрешитьИзменениеДанныхДоДатыЗапрета = Ложь; - Контекст.КоличествоДнейРазрешения = 0; - Иначе - Контекст.Элементы.СвойстваНепроизвольнойДаты.ТекущаяСтраница = - Контекст.Элементы.НепроизвольнаяДатаИспользуется; - - Контекст.Элементы.ПроизвольнаяДата.ТекущаяСтраница = - Контекст.Элементы.ПроизвольнаяДатаНеИспользуется; - - Если Контекст.ОписаниеДатыЗапрета = "ПредыдущийДень" Тогда - Контекст.Элементы.РазрешитьИзменениеДанныхДоДатыЗапрета.Доступность = Ложь; - Контекст.РазрешитьИзменениеДанныхДоДатыЗапрета = Ложь; - Иначе - Контекст.Элементы.РазрешитьИзменениеДанныхДоДатыЗапрета.Доступность = Истина; - КонецЕсли; - РасчетныеДатыЗапрета = РасчетДатыЗапрета( - Контекст.ОписаниеДатыЗапрета, Контекст.ТекущаяДатаНаСервере); - - Если РассчитатьДатуЗапрета Тогда - Контекст.ДатаЗапрета = РасчетныеДатыЗапрета.Текущая; - КонецЕсли; - ТекстНадписи = ""; - Если Контекст.РазрешитьИзменениеДанныхДоДатыЗапрета Тогда - СкорректироватьКоличествоДнейРазрешения( - Контекст.ОписаниеДатыЗапрета, Контекст.КоличествоДнейРазрешения); - - Контекст.Элементы.СвойствоКоличествоДнейРазрешенияИзменения.ТекущаяСтраница = - Контекст.Элементы.ИзменениеДанныхДоДатыЗапретаРазрешено; - - СрокРазрешения = РасчетныеДатыЗапрета.Текущая + Контекст.КоличествоДнейРазрешения * Сутки; - - Если Контекст.ТекущаяДатаНаСервере > СрокРазрешения Тогда - ШаблонНадписи = НСтр("ru = 'Срок возможности изменения данных с %2 по %3 истек %1'"); - Иначе - Если РассчитатьДатуЗапрета Тогда - Контекст.ДатаЗапрета = РасчетныеДатыЗапрета.Предыдущая; - КонецЕсли; - ШаблонНадписи = - НСтр("ru = 'По %1 возможно изменение данных с %2 по %3 - |После %1 будет запрещено изменение данных по %3'") - + Символы.ПС; - КонецЕсли; - ТекстНадписи = Символы.ПС + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонНадписи, - Формат(СрокРазрешения, "ДЛФ=Д"), - Формат(РасчетныеДатыЗапрета.Предыдущая + Сутки, "ДЛФ=Д"), - Формат(РасчетныеДатыЗапрета.Текущая, "ДЛФ=Д")); - Иначе - Контекст.Элементы.СвойствоКоличествоДнейРазрешенияИзменения.ТекущаяСтраница = - Контекст.Элементы.ИзменениеДанныхДоДатыЗапретаНеРазрешено; - - Контекст.КоличествоДнейРазрешения = 0; - КонецЕсли; - Контекст.Элементы.ПояснениеНепроизвольнойДаты.Заголовок = - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Запрещено изменение данных по %1'"), - Формат(Контекст.ДатаЗапрета, "ДЛФ=Д")) - + ТекстНадписи; - КонецЕсли; - -КонецПроцедуры - -&НаКлиентеНаСервереБезКонтекста -Функция РасчетДатыЗапрета(Знач ВариантДатыЗапрета, Знач ТекущаяДатаНаСервере) - - Сутки = 60*60*24; - - ТекущаяДатаЗапрета = '00000000'; - ПредыдущаяДатаЗапрета = '00000000'; - - Если ВариантДатыЗапрета = "КонецПрошлогоГода" Тогда - ТекущаяДатаЗапрета = НачалоГода(ТекущаяДатаНаСервере) - Сутки; - ПредыдущаяДатаЗапрета = НачалоГода(ТекущаяДатаЗапрета) - Сутки; - - ИначеЕсли ВариантДатыЗапрета = "КонецПрошлогоКвартала" Тогда - ТекущаяДатаЗапрета = НачалоКвартала(ТекущаяДатаНаСервере) - Сутки; - ПредыдущаяДатаЗапрета = НачалоКвартала(ТекущаяДатаЗапрета) - Сутки; - - ИначеЕсли ВариантДатыЗапрета = "КонецПрошлогоМесяца" Тогда - ТекущаяДатаЗапрета = НачалоМесяца(ТекущаяДатаНаСервере) - Сутки; - ПредыдущаяДатаЗапрета = НачалоМесяца(ТекущаяДатаЗапрета) - Сутки; - - ИначеЕсли ВариантДатыЗапрета = "КонецПрошлойНедели" Тогда - ТекущаяДатаЗапрета = НачалоНедели(ТекущаяДатаНаСервере) - Сутки; - ПредыдущаяДатаЗапрета = НачалоНедели(ТекущаяДатаЗапрета) - Сутки; - - ИначеЕсли ВариантДатыЗапрета = "ПредыдущийДень" Тогда - ТекущаяДатаЗапрета = НачалоДня(ТекущаяДатаНаСервере) - Сутки; - ПредыдущаяДатаЗапрета = НачалоДня(ТекущаяДатаЗапрета) - Сутки; - КонецЕсли; - - Возврат Новый Структура("Текущая, Предыдущая", ТекущаяДатаЗапрета, ПредыдущаяДатаЗапрета); - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Процедура СкорректироватьКоличествоДнейРазрешения(Знач ОписаниеДатыЗапрета, КоличествоДнейРазрешения) - - Если КоличествоДнейРазрешения = 0 Тогда - КоличествоДнейРазрешения = 1; - - ИначеЕсли ОписаниеДатыЗапрета = "КонецПрошлогоГода" Тогда - Если КоличествоДнейРазрешения > 90 Тогда - КоличествоДнейРазрешения = 90; - КонецЕсли; - - ИначеЕсли ОписаниеДатыЗапрета = "КонецПрошлогоКвартала" Тогда - Если КоличествоДнейРазрешения > 60 Тогда - КоличествоДнейРазрешения = 60; - КонецЕсли; - - ИначеЕсли ОписаниеДатыЗапрета = "КонецПрошлогоМесяца" Тогда - Если КоличествоДнейРазрешения > 25 Тогда - КоличествоДнейРазрешения = 25; - КонецЕсли; - - ИначеЕсли ОписаниеДатыЗапрета = "КонецПрошлойНедели" Тогда - Если КоличествоДнейРазрешения > 5 Тогда - КоличествоДнейРазрешения = 5; - КонецЕсли; - - КонецЕсли; - -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ФормаЗаписи/Form.form b/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ФормаЗаписи/Form.form index a7db2df53..991794f79 100644 --- a/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ФормаЗаписи/Form.form +++ b/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ФормаЗаписи/Form.form @@ -1,5 +1,129 @@ + + ГоризонтальнаяГруппа + 13 + + ДатаЗапрета + 7 + true + true + + true + + + Запись.ДатаЗапрета + + + ДатаЗапретаРасширеннаяПодсказка + 19 + Label + true + true + + Left + + + + ДатаЗапретаКонтекстноеМеню + 8 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + ОписаниеДатыЗапрета + 9 + true + true + + true + + + Запись.ОписаниеДатыЗапрета + + Left + 2 + + ОписаниеДатыЗапретаРасширеннаяПодсказка + 18 + Label + true + true + + Left + + + + ОписаниеДатыЗапретаКонтекстноеМеню + 10 + true + + InputField + Enter + true + Left + true + + 10 + true + 2 + true + true + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Горизонтальная группа</value> + + + ru + Горизонтальная группа + + + ГоризонтальнаяГруппаРасширеннаяПодсказка + 17 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + Auto + + Раздел 1 @@ -124,130 +248,6 @@ Normal - - ГоризонтальнаяГруппа - 13 - - ОписаниеДатыЗапрета - 9 - true - true - - true - - - Запись.ОписаниеДатыЗапрета - - Left - - ОписаниеДатыЗапретаРасширеннаяПодсказка - 18 - Label - true - true - - Left - - - - ОписаниеДатыЗапретаКонтекстноеМеню - 10 - true - - InputField - Enter - true - Left - true - - 10 - true - 2 - true - true - true - true - true - true - true - Normal - - - - ДатаЗапрета - 7 - true - true - - true - - - Запись.ДатаЗапрета - - - ДатаЗапретаРасширеннаяПодсказка - 19 - Label - true - true - - Left - - - - ДатаЗапретаКонтекстноеМеню - 8 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Горизонтальная группа</value> - - - ru - Горизонтальная группа - - - ГоризонтальнаяГруппаРасширеннаяПодсказка - 17 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - - Комментарий 11 @@ -296,7 +296,6 @@ Left true - 50 LockOwner true true diff --git a/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ФормаСписка/Form.form index 204f38941..e52c496c4 100644 --- a/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 31 @@ -504,7 +503,6 @@ Copy Create - 110 DontBlock true true diff --git a/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Help/ru.html b/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Help/ru.html index 50b0e6f03..7c417018f 100644 --- a/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Help/ru.html +++ b/SSL/src/InformationRegisters/ДатыЗапретаИзменения/Help/ru.html @@ -1,7 +1,7 @@

                  Предназначена для установки даты запрета изменения (загрузки) данных.

                  Запреты загрузки данных могут не использоваться. В этом случае доступно только окно настройки дат запрета изменения данных.

                  -

                  Установка даты запрета изменения данных и различные настройки, связанные с ней, выполняются по соответствующей команде в разделе Администрирование - Поддержка и обслуживание.

                  +

                  Установка даты запрета изменения данных и различные настройки, связанные с ней, выполняются по соответствующей команде в разделе Администрирование - Поддержка и обслуживание - Регламентные операции.

                  Установка даты запрета загрузки данных выполняется по соответствующей команде в разделе Синхронизация данных.

                  О запрете изменения (загрузки) данных

                  • Иногда при работе с программой требуется установить запрет изменения каких-либо данных до определенной даты. Например, после сдачи квартальной бухгалтерской отчетности в налоговую инспекцию обычно устанавливается запрет изменения тех данных, которые использовались для формирования этой отчетности, то есть данных по последний день отчетного периода. @@ -10,34 +10,33 @@
                    • Если в закрытом периоде есть объекты, помеченные на удаление, то их удаление будет невозможно.
                    • Если дата запрета изменения не установлена, то ограничения не действуют.
                  • Если дата запрета загрузки данных установлена, то при попытке получить данные в программу до даты запрета загрузки все запрещенные для получения данные будут пропущены, сведения о них будут записаны в журнал регистрации, а разрешенные данные будут получены.

                  Установка даты запрета

                  • -
                    В программе предусмотрена возможность установить или отключить дату запрета изменений (дату запрета загрузки данных). Для этого в поле Установка даты запрета выберите соответствующее значение:
                    -
                    • Нет запрета изменения (загрузки) данных - в этом случае отключаются все установленные ранее даты запрета. -
                    • Для всех пользователей (Для всех информационных баз). При этом становятся доступными поля Способ указания даты запрета и Дата запрета. -
                    • По пользователям (По информационным базам). Эту возможность можно использовать, если дату запрета необходимо установить для конкретного пользователя или группы пользователей (для конкретной информационной базы), или разным пользователям (информационным базам) необходимо установить разные значения даты запрета. +
                      В программе предусмотрена возможность установить или отключить дату запрета изменений (дату запрета загрузки данных). Для этого с помощью кнопки выберите соответствующее значение:
                      +
                      • Не установлены - в этом случае отключаются все установленные ранее даты запрета. +
                      • Для всех пользователей (Для всех информационных баз). +
                        • При этом становится доступным поле Дата запрета, В нижней части окна становится доступным раздел Другие способы указания даты запрета.
                      • По пользователям (По информационным базам). Эту возможность можно использовать, если дату запрета необходимо установить для конкретного пользователя или группы пользователей (для конкретной информационной базы), или разным пользователям (информационным базам) необходимо установить разные значения даты запрета.
                        • При этом становится доступным список, в который можно добавлять пользователей/группы пользователей  (информационные базы) и настраивать для каждого из них свое значение даты запрета. -
                        • Список состоит из колонок: +
                        • +

                          Список состоит из колонок:

                          • Пользователь, группа пользователей (Программа: информационная база - наименование программы и информационной базы для этой программы). -
                          • Комментарий - напишите дополнительную информацию о пользователе (об информационной базе).
                        • В списке по умолчанию всегда присутствует элемент <Для всех пользователей> (<Для всех информационных баз>). Элемент нельзя удалить или изменить. Настройки даты запрета, выполненные для этого элемента, будут использоваться для всех пользователей (информационных баз), кроме тех, которые содержатся в списке.  +
                        • Комментарий - напишите дополнительную информацию о пользователе (об информационной базе).
                      • В списке по умолчанию всегда присутствует элемент <Для всех пользователей> (<Для всех информационных баз>). Элемент нельзя удалить или изменить. Настройки даты запрета, выполненные для этого элемента, будут использоваться для всех пользователей (информационных баз), кроме тех, которые содержатся в списке.  
                      • При необходимости добавьте в список нужных пользователей /группу пользователей (информационные базы):
                        • Нажмите Подобрать, для того чтобы выбрать из списка несколько пользователей (информационных баз). -
                        • Нажмите Еще - Добавить над списком, для того чтобы   Выбрать пользователя/группу пользователей (программу и информационную базу для этой программы. Для каждой программы можно также выбрать элемент <Все информационные базы>).
                  • Для того чтобы выполнить настройку даты запрета, необходимо выделить в списке нужного пользователя/группу пользователей (информационную базу) или элемент <Для всех пользователей> (<Для всех информационных баз>), а сами настройки выполнить ниже в полях Способ указания даты запрета и Дата запрета.

                  Способы указания даты запрета

                  -

                  Программа позволяет задавать различные Способы указания даты запрета изменений:

                  +
                  • Если в программе разрешены внешние пользователи, то предлагается выбрать тип пользователей для установки даты запрета. 
                • Нажмите Еще - Добавить над списком, для того чтобы   Выбрать пользователя/группу пользователей (программу и информационную базу для этой программы. Для каждой программы можно также выбрать элемент <Все информационные базы>).
              • Для того чтобы выполнить настройку даты запрета, необходимо выделить в списке нужного пользователя/группу пользователей (информационную базу) или элемент <Для всех пользователей> (<Для всех информационных баз>), а сами настройки выполнить ниже в полях Способ указания даты запрета и Дата запрета.

          Способы указания даты запрета

          +

          Для настройки перейдите в раздел Другие способы указания даты запрета изменений, в поле Указывать дату запрета укажите нужное значение:

          • Общая дата – при этом способе одна дата запрета задается для всех элементов данных программы.
          • По разделам – для каждого раздела программы устанавливается своя дата запрета. 
            • Когда дата запрета задается по разделам, становится доступным список, в который можно добавлять Разделы (соответствующей командой) и указывать для каждого раздела свое значение даты запрета. Список состоит из колонок:
              • Раздел, объект - в данном случае в колонке перечисляются разделы программы;
              • Дата запрета - выберите из списка тип значения даты запрета (можно выбрать произвольную дату или одну из относительных дат); -
              • Запрет изменения по - для произвольной даты напишите или  выберите значение, для относительной даты значение проставляется программой автоматически.
            • В списке по умолчанию присутствует элемент <Общая дата>. Значение даты запрета для этого элемента будет использоваться для всех разделов по умолчанию, кроме тех, которые уже содержатся в списке. -
            • Если в поле Установка даты запрета  указано Для всех пользователей (Для всех информационных баз), то удалить элемент <Общая дата> и разделы нельзя, при этом по умолчанию доступны все разделы, их можно только Изменить - указать Дату запрета. -
            • Если в поле Установка даты запрета указано По пользователям (По информационным базам), то удалить элемент <Общая дата> и разделы можно. Если дата запрета изменений устанавливается для определенного пользователя/группы пользователей (информационной базы), то необходимо выбрать один или несколько разделов. -
              • Для добавления раздела выполните команду Разделы, выберите нужные с помощью флажков, затем нажмите кнопку ОК.
          • По объектам – даты запрета задаются в разрезе объектов программы. Для каждого объекта устанавливается своя дата запрета. Если выбрано это значение, то становится доступным список, в который можно добавлять объекты (соответствующей командой) и указывать для каждого объекта свое значение даты запрета. Так же, как и в предыдущем способе, в списке для аналогичных целей содержится элемент <Общая дата>. +
          • Действует по - для произвольной даты напишите или  выберите значение, для относительной даты значение проставляется программой автоматически.
        • В списке по умолчанию присутствует элемент <Общая дата>. Значение даты запрета для этого элемента будет использоваться для всех разделов по умолчанию, кроме тех, которые уже содержатся в списке.
      • По объектам – даты запрета задаются в разрезе объектов программы. Для каждого объекта устанавливается своя дата запрета. Если выбрано это значение, то становится доступным список, в который можно добавлять объекты (соответствующей командой) и указывать для каждого объекта свое значение даты запрета. Так же, как и в предыдущем способе, в списке для аналогичных целей содержится элемент <Общая дата>.
      • По разделам и объектам – даты запрета задаются и в разрезе разделов, и в разрезе объектов.  -
        • При этом становится доступным список, в который можно добавлять разделы и объекты, указывая для каждого раздела и каждого объекта свое значение даты запрета. Так же, как и в предыдущих способах, в списке содержится элемент <Общая дата> для аналогичных целей.   -
          • Для выбора разделов выполните команду Разделы. +
            • При этом становится доступным список, в котором перечислены разделы и объекты. Можно указать для каждого раздела и каждого объекта свое значение даты запрета. Так же, как и в предыдущих способах, в списке содержится элемент <Общая дата> для аналогичных целей.  
              • Для выбора нескольких объектов в выделенном разделе выполните команду Подобрать. -
              • Также в нужном разделе можно выполнить команду Добавить контекстного меню по правой кнопки мыши, затем указать объект с помощью кнопки  Выбрать. Также можно воспользоваться аналогичной командой меню Еще.

        Для того чтобы установить дату запрета изменения нужного раздела (объекта) или изменить общую дату, в нужной строке в колонке Дата запрета выполните команду Изменить контекстного меню по правой кнопке мыши или дважды щелкните по ней мышью. Для задания даты запрета нажмите кнопку Выбрать. После выбора даты для возврата к дальнейшим настройкам нажмите кнопку ОК.

        +
      • Также в нужном разделе можно выполнить команду Добавить контекстного меню по правой кнопки мыши, затем указать объект с помощью кнопки  Выбрать. Также можно воспользоваться аналогичной командой меню Еще.

      Для того чтобы установить дату запрета изменения нужного раздела (объекта) или изменить общую дату, в нужной строке в колонке Дата запрета выполните команду Изменить контекстного меню по правой кнопке мыши или дважды щелкните по ней мышью. Для задания даты запрета нажмите кнопку Выбрать. После выбора даты для возврата к дальнейшим настройкам нажмите кнопку ОК.

      +

      Для отмены даты запрета нажмите кнопку Отключить.

      Дата запрета

      • При установке даты запрета можно задавать не только произвольную дату (в этом случае дату можно написать или выбрать из календаря, нажав ), но и относительную. +
      • Для этого нажмите ссылку Больше возможностей.
      • Значения относительных дат:
        • Конец прошлого года;
        • Конец прошлого квартала; diff --git a/SSL/src/InformationRegisters/ДатыПоследнейЗагрузкиПочтовыхСообщений/ДатыПоследнейЗагрузкиПочтовыхСообщений.mdo b/SSL/src/InformationRegisters/ДатыПоследнейЗагрузкиПочтовыхСообщений/ДатыПоследнейЗагрузкиПочтовыхСообщений.mdo new file mode 100644 index 000000000..c571a948f --- /dev/null +++ b/SSL/src/InformationRegisters/ДатыПоследнейЗагрузкиПочтовыхСообщений/ДатыПоследнейЗагрузкиПочтовыхСообщений.mdo @@ -0,0 +1,87 @@ + + + + + + + + + + + + ДатыПоследнейЗагрузкиПочтовыхСообщений + + ru + Даты последней загрузки почтовых сообщений + + InDialog + + Use + Active + + Use + + + + + Use + LineNumber + + Use + + + + + Use + Recorder + + Use + + + + + Use + Period + + ShowError + Use + + + + Managed + + ДатаЗагрузкиПисем + + ru + Дата загрузки писем + + + Date + + + + + Use + Use + + + + УчетнаяЗапись + + ru + Учетная запись + + + CatalogRef.УчетныеЗаписиЭлектроннойПочты + + + + true + Use + Use + true + + true + true + + diff --git a/SSL/src/InformationRegisters/ДомаЗданияСтроения/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ДомаЗданияСтроения/Forms/ФормаСписка/Form.form index 8ac3169cb..d74101a76 100644 --- a/SSL/src/InformationRegisters/ДомаЗданияСтроения/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ДомаЗданияСтроения/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка 2 diff --git a/SSL/src/InformationRegisters/ЗависимостиПравДоступа/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ЗависимостиПравДоступа/Forms/ФормаСписка/Form.form index dbfd55847..a69de2dda 100644 --- a/SSL/src/InformationRegisters/ЗависимостиПравДоступа/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ЗависимостиПравДоступа/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 48 @@ -392,7 +391,6 @@ ПриСозданииНаСервере Copy - 70 DontBlock true true diff --git a/SSL/src/InformationRegisters/ЗамерыВремени/ManagerModule.bsl b/SSL/src/InformationRegisters/ЗамерыВремени/ManagerModule.bsl index 892f7fa1c..7359e264f 100644 --- a/SSL/src/InformationRegisters/ЗамерыВремени/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/ЗамерыВремени/ManagerModule.bsl @@ -114,8 +114,8 @@ | (Выборка.N_4T + Выборка.N_T_4T/2)/ВсегоЗамеров.КоличествоЗамеров УБЫВ |; |"; - Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала); - Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания); + Запрос.УстановитьПараметр("ДатаНачала", (ДатаНачала - Дата(1,1,1)) * 1000); + Запрос.УстановитьПараметр("ДатаОкончания", (ДатаОкончания - Дата(1,1,1)) * 1000); Запрос.УстановитьПараметр("ПериодАгрегации", ПериодАгрегации); Запрос.Текст = СтрЗаменить(Запрос.Текст, "%Количество", Формат(Количество, "ЧН=0; ЧГ=")); Запрос.Выполнить(); @@ -124,7 +124,7 @@ Запрос.Текст = " |ВЫБРАТЬ - | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) КАК Период, + | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) КАК Период, | СпрКлючевыеОперации.Наименование КАК КлючеваяОперация, | КлючевыеОперации.ЦелевоеВремя КАК ЦелевоеВремя, | СУММА(ВЫБОР @@ -166,11 +166,11 @@ | ТаблицаСтатистики КАК ТаблицаСтатистики |ПО | ТаблицаСтатистики.КлючеваяОперация = Замеры.КлючеваяОперация - | И ТаблицаСтатистики.Период = ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) + | И ТаблицаСтатистики.Период = ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) |ГДЕ | Замеры.ДатаНачалаЗамера МЕЖДУ &ДатаНачала И &ДатаОкончания |СГРУППИРОВАТЬ ПО - | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200), + | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200), | СпрКлючевыеОперации.Наименование, | КлючевыеОперации.ЦелевоеВремя, | ТаблицаСтатистики.Максимум, @@ -186,12 +186,12 @@ | ТаблицаСтатистики.СтандартноеОтклонение90, | ТаблицаСтатистики.КоличествоОпераций90 |УПОРЯДОЧИТЬ ПО - | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) + | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) |;"; Запрос.Текст = СтрЗаменить(Запрос.Текст, "//%Интервалы", ТекстЗапросаПоИнтервалам); - Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала); - Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания); + Запрос.УстановитьПараметр("ДатаНачала", (ДатаНачала - Дата(1,1,1)) * 1000); + Запрос.УстановитьПараметр("ДатаОкончания", (ДатаОкончания - Дата(1,1,1)) * 1000); Запрос.УстановитьПараметр("ПериодАгрегации", ПериодАгрегации); Иначе МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; @@ -209,8 +209,8 @@ |ГДЕ | Замеры.ДатаНачалаЗамера МЕЖДУ &ДатаНачала И &ДатаОкончания |"; - Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала); - Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания); + Запрос.УстановитьПараметр("ДатаНачала", (ДатаНачала - Дата(1,1,1)) * 1000); + Запрос.УстановитьПараметр("ДатаОкончания", (ДатаОкончания - Дата(1,1,1)) * 1000); Запрос.Выполнить(); @@ -218,7 +218,7 @@ Запрос.Текст = " |ВЫБРАТЬ - | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) КАК Период, + | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) КАК Период, | СпрКлючевыеОперации.Наименование КАК КлючеваяОперация, | СпрКлючевыеОперации.ЦелевоеВремя КАК ЦелевоеВремя, | СУММА(ВЫБОР @@ -256,11 +256,11 @@ | ТаблицаСтатистики КАК ТаблицаСтатистики |ПО | ТаблицаСтатистики.КлючеваяОперация = Замеры.КлючеваяОперация - | И ТаблицаСтатистики.Период = ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) + | И ТаблицаСтатистики.Период = ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) |ГДЕ | Замеры.ДатаНачалаЗамера МЕЖДУ &ДатаНачала И &ДатаОкончания |СГРУППИРОВАТЬ ПО - | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200), + | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200), | СпрКлючевыеОперации.Наименование, | СпрКлючевыеОперации.ЦелевоеВремя, | ТаблицаСтатистики.Максимум, @@ -276,11 +276,11 @@ | ТаблицаСтатистики.СтандартноеОтклонение90, | ТаблицаСтатистики.КоличествоОпераций90 |УПОРЯДОЧИТЬ ПО - | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) + | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) |;"; Запрос.Текст = СтрЗаменить(Запрос.Текст, "//%Интервалы", ТекстЗапросаПоИнтервалам); - Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала); - Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания); + Запрос.УстановитьПараметр("ДатаНачала", (ДатаНачала - Дата(1,1,1)) * 1000); + Запрос.УстановитьПараметр("ДатаОкончания", (ДатаОкончания - Дата(1,1,1)) * 1000); Запрос.УстановитьПараметр("ПериодАгрегации", ПериодАгрегации); КонецЕсли; @@ -321,8 +321,8 @@ ДатаНачалаЦикла = ДатаНачала; Пока ДатаНачалаЦикла < ДатаОкончания Цикл ЗапросСтатистики.УстановитьПараметр("КлючеваяОперация", Выборка.КлючеваяОперацияСсылка); - ЗапросСтатистики.УстановитьПараметр("ДатаНачала", ДатаНачалаЦикла); - ЗапросСтатистики.УстановитьПараметр("ДатаОкончания", ДатаНачалаЦикла + ПериодАгрегации); + ЗапросСтатистики.УстановитьПараметр("ДатаНачала", (ДатаНачалаЦикла - Дата(1,1,1)) * 1000); + ЗапросСтатистики.УстановитьПараметр("ДатаОкончания", (ДатаНачалаЦикла - Дата(1,1,1)) * 1000 + ПериодАгрегации); РезультатЗапросаСтатистики = ЗапросСтатистики.Выполнить(); ТаблицаСтатистикиПолная = РезультатЗапросаСтатистики.Выгрузить(); diff --git a/SSL/src/InformationRegisters/ЗамерыВремени/ЗамерыВремени.mdo b/SSL/src/InformationRegisters/ЗамерыВремени/ЗамерыВремени.mdo index b60a21456..fda00543b 100644 --- a/SSL/src/InformationRegisters/ЗамерыВремени/ЗамерыВремени.mdo +++ b/SSL/src/InformationRegisters/ЗамерыВремени/ЗамерыВремени.mdo @@ -1,13 +1,13 @@ - + - - - - - - - + + + + + + + ЗамерыВремени @@ -56,7 +56,7 @@ Managed - + ВремяВыполнения ru @@ -73,11 +73,29 @@ + Use + + + + ВесЗамера + + ru + Вес замера + + + Number + + 10 + true + + + + Use Use - + Комментарий ru @@ -86,16 +104,15 @@ String - 256 + 1000 - Use Use - + ДатаЗаписи ru @@ -108,31 +125,30 @@ Index - Use Use - + ДатаОкончания ru Дата окончания - Date Number - 15 + 14 + true - - Use Use - + + 0 + - + Пользователь ru @@ -146,11 +162,10 @@ - Use Use - + ДатаЗаписиЛокальная ru @@ -162,14 +177,13 @@ - Use Use true 0001-01-01T00:00:00 - + КлючеваяОперация ru @@ -181,35 +195,34 @@ true - Use Use true true true - + ДатаНачалаЗамера ru Дата начала замера - Date - + Number + + 14 + true + true - Use Use true - - 0001-01-01T00:00:00 - + true - + НомерСеанса ru @@ -224,9 +237,24 @@ - Use Use true + + ДатаЗаписиНачалоЧаса + + ru + Дата записи начало часа + + + Date + + + + + Index + Use + + diff --git a/SSL/src/InformationRegisters/ЗамерыВремениТехнологические/ManagerModule.bsl b/SSL/src/InformationRegisters/ЗамерыВремениТехнологические/ManagerModule.bsl index 039e7d47c..6058e6be5 100644 --- a/SSL/src/InformationRegisters/ЗамерыВремениТехнологические/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/ЗамерыВремениТехнологические/ManagerModule.bsl @@ -74,8 +74,8 @@ | (Выборка.N_4T + Выборка.N_T_4T/2)/ВсегоЗамеров.КоличествоЗамеров УБЫВ |; |"; - Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала); - Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания); + Запрос.УстановитьПараметр("ДатаНачала", (ДатаНачала - Дата(1,1,1)) * 1000); + Запрос.УстановитьПараметр("ДатаОкончания", (ДатаОкончания - Дата(1,1,1)) * 1000); Запрос.УстановитьПараметр("ПериодАгрегации", ПериодАгрегации); Запрос.Текст = СтрЗаменить(Запрос.Текст, "%Количество", Формат(Количество, "ЧН=0; ЧГ=")); Запрос.Выполнить(); @@ -84,7 +84,7 @@ Запрос.Текст = " |ВЫБРАТЬ - | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) КАК Период, + | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) КАК Период, | СпрКлючевыеОперации.Наименование КАК КлючеваяОперация, | КлючевыеОперации.ЦелевоеВремя КАК ЦелевоеВремя, | СУММА(ВЫБОР @@ -126,11 +126,11 @@ | ТаблицаСтатистики КАК ТаблицаСтатистики |ПО | ТаблицаСтатистики.КлючеваяОперация = Замеры.КлючеваяОперация - | И ТаблицаСтатистики.Период = ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) + | И ТаблицаСтатистики.Период = ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) |ГДЕ | Замеры.ДатаНачалаЗамера МЕЖДУ &ДатаНачала И &ДатаОкончания |СГРУППИРОВАТЬ ПО - | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200), + | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200), | СпрКлючевыеОперации.Наименование, | КлючевыеОперации.ЦелевоеВремя, | ТаблицаСтатистики.Максимум, @@ -146,12 +146,12 @@ | ТаблицаСтатистики.СтандартноеОтклонение90, | ТаблицаСтатистики.КоличествоОпераций90 |УПОРЯДОЧИТЬ ПО - | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) + | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) |;"; Запрос.Текст = СтрЗаменить(Запрос.Текст, "//%Интервалы", ТекстЗапросаПоИнтервалам); - Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала); - Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания); + Запрос.УстановитьПараметр("ДатаНачала", (ДатаНачала - Дата(1,1,1)) * 1000); + Запрос.УстановитьПараметр("ДатаОкончания", (ДатаОкончания - Дата(1,1,1)) * 1000); Запрос.УстановитьПараметр("ПериодАгрегации", ПериодАгрегации); Иначе МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; @@ -169,8 +169,8 @@ |ГДЕ | Замеры.ДатаНачалаЗамера МЕЖДУ &ДатаНачала И &ДатаОкончания |"; - Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала); - Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания); + Запрос.УстановитьПараметр("ДатаНачала", (ДатаНачала - Дата(1,1,1)) * 1000); + Запрос.УстановитьПараметр("ДатаОкончания", (ДатаОкончания - Дата(1,1,1)) * 1000); Запрос.Выполнить(); @@ -178,7 +178,7 @@ Запрос.Текст = " |ВЫБРАТЬ - | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) КАК Период, + | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) КАК Период, | СпрКлючевыеОперации.Наименование КАК КлючеваяОперация, | СпрКлючевыеОперации.ЦелевоеВремя КАК ЦелевоеВремя, | СУММА(ВЫБОР @@ -189,6 +189,10 @@ | КОГДА Замеры.ВремяВыполнения > СпрКлючевыеОперации.ЦелевоеВремя И Замеры.ВремяВыполнения <= 4 * СпрКлючевыеОперации.ЦелевоеВремя ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ) КАК N_T_4T, + | СУММА(ВЫБОР + | КОГДА Замеры.ВремяВыполнения > 4 * СпрКлючевыеОперации.ЦелевоеВремя ТОГДА 1 + | ИНАЧЕ 0 + | КОНЕЦ) КАК N_4T, | //%Интервалы | ТаблицаСтатистики.Максимум КАК ВремяВыполненияМаксимум, | ТаблицаСтатистики.Медиана КАК ВремяВыполненияМедиана, @@ -212,11 +216,11 @@ | ТаблицаСтатистики КАК ТаблицаСтатистики |ПО | ТаблицаСтатистики.КлючеваяОперация = Замеры.КлючеваяОперация - | И ТаблицаСтатистики.Период = ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) + | И ТаблицаСтатистики.Период = ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) |ГДЕ | Замеры.ДатаНачалаЗамера МЕЖДУ &ДатаНачала И &ДатаОкончания |СГРУППИРОВАТЬ ПО - | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200), + | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200), | СпрКлючевыеОперации.Наименование, | СпрКлючевыеОперации.ЦелевоеВремя, | ТаблицаСтатистики.Максимум, @@ -232,11 +236,11 @@ | ТаблицаСтатистики.СтандартноеОтклонение90, | ТаблицаСтатистики.КоличествоОпераций90 |УПОРЯДОЧИТЬ ПО - | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(ДАТАВРЕМЯ(2015,1,1), Замеры.ДатаНачалаЗамера, СЕКУНДА) + 63555667200)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) + | ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(2015,1,1),СЕКУНДА, ВЫРАЗИТЬ((Замеры.ДатаНачалаЗамера/1000)/&ПериодАгрегации - 0.5 КАК ЧИСЛО(11,0)) * &ПериодАгрегации - 63555667200) |;"; Запрос.Текст = СтрЗаменить(Запрос.Текст, "//%Интервалы", ТекстЗапросаПоИнтервалам); - Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала); - Запрос.УстановитьПараметр("ДатаОкончания", ДатаОкончания); + Запрос.УстановитьПараметр("ДатаНачала", (ДатаНачала - Дата(1,1,1)) * 1000); + Запрос.УстановитьПараметр("ДатаОкончания", (ДатаОкончания - Дата(1,1,1)) * 1000); Запрос.УстановитьПараметр("ПериодАгрегации", ПериодАгрегации); КонецЕсли; @@ -277,8 +281,8 @@ ДатаНачалаЦикла = ДатаНачала; Пока ДатаНачалаЦикла < ДатаОкончания Цикл ЗапросСтатистики.УстановитьПараметр("КлючеваяОперация", Выборка.КлючеваяОперацияСсылка); - ЗапросСтатистики.УстановитьПараметр("ДатаНачала", ДатаНачалаЦикла); - ЗапросСтатистики.УстановитьПараметр("ДатаОкончания", ДатаНачалаЦикла + ПериодАгрегации); + ЗапросСтатистики.УстановитьПараметр("ДатаНачала", (ДатаНачалаЦикла - Дата(1,1,1)) * 1000); + ЗапросСтатистики.УстановитьПараметр("ДатаОкончания", (ДатаНачалаЦикла - Дата(1,1,1)) * 1000 + ПериодАгрегации); РезультатЗапросаСтатистики = ЗапросСтатистики.Выполнить(); ТаблицаСтатистикиПолная = РезультатЗапросаСтатистики.Выгрузить(); @@ -388,7 +392,7 @@ // Возвращает таблицу настроек интервалов по умолчанию // // Возвращаемое значение: -// НастроечнаяТаблицаИнтервалов - таблица значений, содержащая настройки интервалов по умолчанию +// НастроечнаяТаблицаИнтервалов - таблица значений, содержащая настройки интервалов по умолчанию. // Колонки: НижняяГраница, ВерхняяГраница, Шаг. // Функция НастроечнаяТаблицаИнтервалов() @@ -498,11 +502,11 @@ // Формирует и возвращает таблицу интервалов из таблицы настроек интервалов // // Параметры: -// ТаблицаНастроек - ТаблицаЗначений - содержит настройки интервалов +// ТаблицаНастроек - ТаблицаЗначений - содержит настройки интервалов. // должна содержать колонки НижняяГраница, ВерхняяГраница, Шаг типа Число. // // Возвращаемое значение: -// ТаблицаИнтервалов - Таблица, содержащая нижнее и верхнее граничные значения для каждого из интервалов +// ТаблицаИнтервалов - Таблица, содержащая нижнее и верхнее граничные значения для каждого из интервалов. // Колонки: НижняяГраница, ВерхняяГраница. // Функция ТаблицаИнтерваловПоНастройкам(ТаблицаНастроек) @@ -567,7 +571,7 @@ // Формирует и возвращает часть текстам запроса по таблице интервалов // // Параметры: -// ТаблицаИнтервалов - ТаблицаЗначений - содержит перечень интервалов +// ТаблицаИнтервалов - ТаблицаЗначений - содержит перечень интервалов. // должна содержать колонки НижняяГраница, ВерхняяГраница. // // Возвращаемое значение: diff --git a/SSL/src/InformationRegisters/ЗамерыВремениТехнологические/ЗамерыВремениТехнологические.mdo b/SSL/src/InformationRegisters/ЗамерыВремениТехнологические/ЗамерыВремениТехнологические.mdo index 319f1a248..ab71d31e6 100644 --- a/SSL/src/InformationRegisters/ЗамерыВремениТехнологические/ЗамерыВремениТехнологические.mdo +++ b/SSL/src/InformationRegisters/ЗамерыВремениТехнологические/ЗамерыВремениТехнологические.mdo @@ -1,13 +1,13 @@ - + - - - - - - - + + + + + + + ЗамерыВремениТехнологические @@ -56,7 +56,7 @@ Managed - + ВремяВыполнения ru @@ -77,7 +77,26 @@ Use - + + ВесЗамера + + ru + Вес замера + + + Number + + 10 + true + + + + + Use + Use + + + Комментарий ru @@ -86,7 +105,7 @@ String - 256 + 1000 @@ -95,7 +114,7 @@ Use - + ДатаЗаписи ru @@ -112,27 +131,27 @@ Use - + ДатаОкончания ru Дата окончания - Date Number - 15 + 14 - Use Use - + + 0 + - + Пользователь ru @@ -150,7 +169,7 @@ Use - + ДатаЗаписиЛокальная ru @@ -169,7 +188,7 @@ 0001-01-01T00:00:00 - + КлючеваяОперация ru @@ -188,15 +207,18 @@ true true - + ДатаНачалаЗамера ru Дата начала замера - Date - + Number + + 14 + true + @@ -204,12 +226,10 @@ Use Use true - - 0001-01-01T00:00:00 - + true - + НомерСеанса ru @@ -229,4 +249,20 @@ true + + ДатаЗаписиНачалоЧаса + + ru + Дата записи начало часа + + + Date + + + + + Index + Use + + diff --git a/SSL/src/InformationRegisters/ЗначенияГруппДоступа/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ЗначенияГруппДоступа/Forms/ФормаСписка/Form.form index 68ad6dd69..f5baf5ba6 100644 --- a/SSL/src/InformationRegisters/ЗначенияГруппДоступа/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ЗначенияГруппДоступа/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 25 @@ -393,7 +392,6 @@ ПриСозданииНаСервере Copy - 80 DontBlock true true diff --git a/SSL/src/InformationRegisters/ЗначенияГруппДоступаПоУмолчанию/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ЗначенияГруппДоступаПоУмолчанию/Forms/ФормаСписка/Form.form index ad7f225e7..c61dd18a0 100644 --- a/SSL/src/InformationRegisters/ЗначенияГруппДоступаПоУмолчанию/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ЗначенияГруппДоступаПоУмолчанию/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 31 @@ -478,8 +477,6 @@ ПриСозданииНаСервере Copy - 80 - 10 DontBlock true true diff --git a/SSL/src/InformationRegisters/ИдентификаторыОбъектовВерсийРасширений/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ИдентификаторыОбъектовВерсийРасширений/Forms/ФормаСписка/Form.form index 08ea2445e..776fea1ce 100644 --- a/SSL/src/InformationRegisters/ИдентификаторыОбъектовВерсийРасширений/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ИдентификаторыОбъектовВерсийРасширений/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 2 @@ -399,8 +398,6 @@ OnCreateAtServer ПриСозданииНаСервере - 80 - 10 DontBlock true true diff --git a/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/ИсполнителиРолиСОбъектомАдресации/Module.bsl b/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/ИсполнителиРолиСОбъектомАдресации/Module.bsl index 56f9b5565..790d7f77a 100644 --- a/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/ИсполнителиРолиСОбъектомАдресации/Module.bsl +++ b/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/ИсполнителиРолиСОбъектомАдресации/Module.bsl @@ -140,7 +140,7 @@ Пользователи = ОпределитьДействительностьПользователей(ВыбранноеЗначение); Для каждого Значение Из Пользователи Цикл - Если НаборЗаписей.НайтиСтроки(Новый Структура("Исполнитель", Значение)).Количество() > 0 Тогда + Если НаборЗаписей.НайтиСтроки(Новый Структура("Исполнитель", Значение.Ключ)).Количество() > 0 Тогда Продолжить; КонецЕсли; diff --git a/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/РолиИИсполнителиЗадач/Form.form b/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/РолиИИсполнителиЗадач/Form.form index 6fe7133ef..3291c80e2 100644 --- a/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/РолиИИсполнителиЗадач/Form.form +++ b/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/РолиИИсполнителиЗадач/Form.form @@ -100,6 +100,51 @@ Normal + + СписокОтступ + 99 + true + true + + true + + + Список.Отступ + + None + + СписокОтступРасширеннаяПодсказка + 101 + Label + true + true + + Left + + + + СписокОтступКонтекстноеМеню + 100 + true + + InputField + true + Auto + true + Left + true + + 1 + true + true + true + true + true + true + true + Normal + + None СписокКоманднаяПанель @@ -405,7 +450,6 @@ true - 70 true true 10 @@ -866,6 +910,24 @@ true + + Отступ + + <key>ru</key> + <value>Отступ</value> + + 7 + + String + + + + true + + + true + + ВсеНазначения diff --git a/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/ФормаЗаписи/Form.form b/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/ФормаЗаписи/Form.form index 751b31614..c32caf2b9 100644 --- a/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/ФормаЗаписи/Form.form +++ b/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/ФормаЗаписи/Form.form @@ -1,107 +1,22 @@ - - Исполнитель - 10 - true - true - - true - - - Запись.Исполнитель - - - ИсполнительExtendedTooltip - 16 - Label - true - true - - Left - - - - ИсполнительКонтекстноеМеню - 11 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - Normal - - - - РольИсполнителя - 1 - - <key>ru</key> - <value>Выполняет роль</value> - - true - true - - true - - - Запись.РольИсполнителя - - - OnChange - РольИсполнителяПриИзменении - - - РольИсполнителяExtendedTooltip - 17 - Label - true - true - - Left - - - - РольИсполнителяКонтекстноеМеню - 2 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - Normal - - - ГруппаУточнение - 20 - - Декорация1 - 24 + Документ + 27 + + Исполнитель + 10 true true true + + Запись.Исполнитель + - Декорация1РасширеннаяПодсказка - 26 + ИсполнительExtendedTooltip + 16 Label true true @@ -110,34 +25,86 @@ - Декорация1КонтекстноеМеню - 25 + ИсполнительКонтекстноеМеню + 11 true - Label - true - true - - Left + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + + РольИсполнителя + 1 + + <key>ru</key> + <value>Выполняет роль</value> + + true + true + + true + + + Запись.РольИсполнителя + + + OnChange + РольИсполнителяПриИзменении + + + РольИсполнителяExtendedTooltip + 17 + Label + true + true + + Left + + + + РольИсполнителяКонтекстноеМеню + 2 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal - Группа1 - 22 - - ОсновнойОбъектАдресации - 12 + ГруппаУточнение + 20 + + Отступ + 24 true true true - - Запись.ОсновнойОбъектАдресации - - ОсновнойОбъектАдресацииExtendedTooltip - 18 + ОтступРасширеннаяПодсказка + 26 Label true true @@ -146,38 +113,108 @@ - ОсновнойОбъектАдресацииКонтекстноеМеню - 13 + ОтступКонтекстноеМеню + 25 true - InputField - Enter - true - Left - true - - true - true - true - true - true - Normal + Label + true + true + + Left - - ДополнительныйОбъектАдресации - 14 + + ГруппаОбъектыАдресации + 22 + + ОсновнойОбъектАдресации + 12 + true + true + + true + + + Запись.ОсновнойОбъектАдресации + + + ОсновнойОбъектАдресацииExtendedTooltip + 18 + Label + true + true + + Left + + + + ОсновнойОбъектАдресацииКонтекстноеМеню + 13 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + + ДополнительныйОбъектАдресации + 14 + true + true + + true + + + Запись.ДополнительныйОбъектАдресации + + + ДополнительныйОбъектАдресацииExtendedTooltip + 19 + Label + true + true + + Left + + + + ДополнительныйОбъектАдресацииКонтекстноеМеню + 15 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + true true true - - Запись.ДополнительныйОбъектАдресации - - ДополнительныйОбъектАдресацииExtendedTooltip - 19 + ГруппаОбъектыАдресацииРасширеннаяПодсказка + 23 Label true true @@ -185,23 +222,13 @@ Left - - ДополнительныйОбъектАдресацииКонтекстноеМеню - 15 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - Normal + UsualGroup + + Vertical + Auto + true + Auto + Auto true @@ -209,9 +236,13 @@ true + + <key>ru</key> + <value>Уточнение роли</value> + - Группа1РасширеннаяПодсказка - 23 + ГруппаУточнениеРасширеннаяПодсказка + 21 Label true true @@ -221,7 +252,6 @@ UsualGroup - Vertical Auto true true @@ -234,13 +264,9 @@ true - - <key>ru</key> - <value>Уточнение роли</value> - - ГруппаУточнениеРасширеннаяПодсказка - 21 + ДокументРасширеннаяПодсказка + 28 Label true true @@ -250,6 +276,7 @@ UsualGroup + Vertical Auto true true diff --git a/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/ФормаСписка/Form.form index 4aecaf9f5..4d7f8fa2a 100644 --- a/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ИсполнителиЗадач/Forms/ФормаСписка/Form.form @@ -345,7 +345,6 @@ true true - 60 true true true diff --git a/SSL/src/InformationRegisters/ИсторияАдресныхОбъектов/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ИсторияАдресныхОбъектов/Forms/ФормаСписка/Form.form index 188346697..4a4258fe7 100644 --- a/SSL/src/InformationRegisters/ИсторияАдресныхОбъектов/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ИсторияАдресныхОбъектов/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка 2 diff --git a/SSL/src/InformationRegisters/КонтактыВзаимодействий/КонтактыВзаимодействий.mdo b/SSL/src/InformationRegisters/КонтактыВзаимодействий/КонтактыВзаимодействий.mdo index 636d85d65..5032ef98e 100644 --- a/SSL/src/InformationRegisters/КонтактыВзаимодействий/КонтактыВзаимодействий.mdo +++ b/SSL/src/InformationRegisters/КонтактыВзаимодействий/КонтактыВзаимодействий.mdo @@ -90,10 +90,10 @@ - Index Use true + true true diff --git a/SSL/src/InformationRegisters/КурсыВалют/Forms/ФормаЗаписи/Form.form b/SSL/src/InformationRegisters/КурсыВалют/Forms/ФормаЗаписи/Form.form index 10d6ab5a0..49f4fb6be 100644 --- a/SSL/src/InformationRegisters/КурсыВалют/Forms/ФормаЗаписи/Form.form +++ b/SSL/src/InformationRegisters/КурсыВалют/Forms/ФормаЗаписи/Form.form @@ -288,8 +288,12 @@ Boolean - - + + true + + + true + diff --git a/SSL/src/InformationRegisters/КурсыВалют/Help/ru.html b/SSL/src/InformationRegisters/КурсыВалют/Help/ru.html index ca73f99dc..174b2e5df 100644 --- a/SSL/src/InformationRegisters/КурсыВалют/Help/ru.html +++ b/SSL/src/InformationRegisters/КурсыВалют/Help/ru.html @@ -1,8 +1,8 @@

          Предназначен для хранения и просмотра курсов валют.

          -

          Курсы валют можно загружать с сайта РБК, автоматически (с помощью регламентного задания) или вручную (см. загрузка курсов валют).

          +

          Курсы валют можно загружать с сайта 1С, автоматически (с помощью регламентного задания) или вручную (см. загрузка курсов валют).

          Открывается по соответствующей команде в панели навигации валюты.

          -

          Если нет возможности загружать курсы с сайта РБК, их можно ввести вручную.

          +

          Если нет возможности загружать курсы с сайта 1С, их можно ввести вручную.

          В списке выводится:

          • Дата курса;
          • Валюта - символьный код валюты, принятый международным стандартом; diff --git a/SSL/src/InformationRegisters/КурсыВалют/RecordSetModule.bsl b/SSL/src/InformationRegisters/КурсыВалют/RecordSetModule.bsl index ab4485a71..39fcfe935 100644 --- a/SSL/src/InformationRegisters/КурсыВалют/RecordSetModule.bsl +++ b/SSL/src/InformationRegisters/КурсыВалют/RecordSetModule.bsl @@ -129,7 +129,7 @@ ТекстЗапроса = "ВЫБРАТЬ | Валюты.Наименование КАК СимвольныйКод, - | КурсыВалютСрезПоследних.Курс / КурсыВалютСрезПоследних.Кратность КАК Курс + | ЕСТЬNULL(КурсыВалютСрезПоследних.Курс, 1) / ЕСТЬNULL(КурсыВалютСрезПоследних.Кратность, 1) КАК Курс |ИЗ | Справочник.Валюты КАК Валюты | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют.СрезПоследних(&Период, ) КАК КурсыВалютСрезПоследних diff --git a/SSL/src/InformationRegisters/КэшПрограммныхИнтерфейсов/RecordSetModule.bsl b/SSL/src/InformationRegisters/КэшПрограммныхИнтерфейсов/RecordSetModule.bsl index e7ee530bb..9b6d67cc6 100644 --- a/SSL/src/InformationRegisters/КэшПрограммныхИнтерфейсов/RecordSetModule.bsl +++ b/SSL/src/InformationRegisters/КэшПрограммныхИнтерфейсов/RecordSetModule.bsl @@ -1,5 +1,5 @@ #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда - + #Область ОписаниеПеременных Перем ТребуетсяКонтроль; diff --git a/SSL/src/InformationRegisters/НаборыЗначенийДоступа/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/НаборыЗначенийДоступа/Forms/ФормаСписка/Form.form index 9e4c781e2..36ee8f716 100644 --- a/SSL/src/InformationRegisters/НаборыЗначенийДоступа/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/НаборыЗначенийДоступа/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 59 @@ -522,7 +521,6 @@ ПриСозданииНаСервере Copy - 110 DontBlock true true diff --git a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/МоиНапоминания/Form.form b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/МоиНапоминания/Form.form index a06abb372..55bdf681e 100644 --- a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/МоиНапоминания/Form.form +++ b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/МоиНапоминания/Form.form @@ -366,13 +366,17 @@ LabelField Enter + true true Left true + Show + Always 20 true true + true None @@ -381,6 +385,10 @@ 3 Left + + Selection + СписокВыбор + BeforeDeleteRow СписокПередУдалением diff --git a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/МоиНапоминания/Help/ru.html b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/МоиНапоминания/Help/ru.html index 7c87edebf..de1776b19 100644 --- a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/МоиНапоминания/Help/ru.html +++ b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/МоиНапоминания/Help/ru.html @@ -4,14 +4,14 @@
            • Срок напоминания - время срабатывания напоминания;
            • Описание - текст напоминания;
            • Время события - время, на которое было назначено напоминание в момент его создания, или время в предмете напоминания, если Срок напоминания относительный; -
            • Источник - объект программы, с которым это напоминание связано.

            Ввод напоминания

            +
          • Источник - ссылка на объект программы, с которым это напоминание связано. Для того, чтобы просмотреть объект программы, перейдите по ссылке.

          Ввод напоминания

          • Можно ввести напоминание по поводу какого-либо персонального события или дела, не связанного ни с каким конкретным объектом программы.
          • Нажмите Создать, заполните необходимые поля.
          • В колонке Источник у таких напоминаний в списке указано Не задан.

          Просмотр напоминания

          • Для того чтобы просмотреть или отредактировать напоминание, выделите нужную строку в списке, нажмите Изменить.

          Отмена напоминания

          • -
            Выделите нужную строку в списке, нажмите Прекратить.
            +
            Выделите нужную строку в списке, нажмите Удалить.
          • -
            Программа выводит сообщение для подтверждения. Нажмите Прекратить. Для того чтобы отменить свое действие, нажмите Не прекращать.

          См. также:

          +
          Программа выводит сообщение для подтверждения. Нажмите Удалить. Для того чтобы отменить свое действие, нажмите Не удалять.

        См. также:

        \ No newline at end of file diff --git a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/МоиНапоминания/Module.bsl b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/МоиНапоминания/Module.bsl index 091fa704e..1345790f9 100644 --- a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/МоиНапоминания/Module.bsl +++ b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/МоиНапоминания/Module.bsl @@ -8,10 +8,6 @@ Возврат; КонецЕсли; - Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка) Тогда - Возврат; - КонецЕсли; - Список.Параметры.УстановитьЗначениеПараметра("Пользователь", Пользователи.ТекущийПользователь()); КонецПроцедуры @@ -39,6 +35,18 @@ УдалитьНапоминание(); КонецПроцедуры +&НаКлиенте +Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) + Если Поле.Имя = "Источник" Тогда + СтандартнаяОбработка = Ложь; + Если ЗначениеЗаполнено(Элементы.Список.ТекущиеДанные.Источник) Тогда + ПоказатьЗначение(, Элементы.Список.ТекущиеДанные.Источник); + Иначе + ПоказатьПредупреждение(, НСтр("ru = 'Источник напоминания не задан.'")); + КонецЕсли; + КонецЕсли; +КонецПроцедуры + #КонецОбласти #Область ОбработчикиКомандФормы diff --git a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/Напоминание/Form.form b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/Напоминание/Form.form index d19d77e75..16dd9a2cf 100644 --- a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/Напоминание/Form.form +++ b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/Напоминание/Form.form @@ -1,5 +1,112 @@ + + Предмет + 134 + + НадписьПредмет + 131 + + <key>ru</key> + <value>Предмет:</value> + + true + true + + true + + + НадписьПредметРасширеннаяПодсказка + 133 + Label + true + true + + Left + + + + НадписьПредметКонтекстноеМеню + 132 + true + + Label + true + true + + Left + + + + ПредметНапоминания + 128 + + <key>ru</key> + <value>Предмет напоминания</value> + + true + true + + true + + + ПредметНапоминанияРасширеннаяПодсказка + 130 + Label + true + true + + Left + + + + ПредметНапоминанияКонтекстноеМеню + 129 + true + + Label + true + + + Click + ПредметНапоминанияНажатие + + true + Left + + + true + true + + true + + + <key>ru</key> + <value>Предмет</value> + + + ru + Предмет + + + ПредметРасширеннаяПодсказка + 135 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + Текст 15 @@ -39,7 +146,6 @@ true 30 - true true true true @@ -55,62 +161,6 @@ ПанельПереключателей 82 - - СпособУстановкиВремениНапоминания - 39 - - <key>ru</key> - <value>Напомнить</value> - - true - true - - true - - - СпособУстановкиВремениНапоминания - - Left - - ru - Время, через которое нужно напомнить, или способ установки времени напоминания - - - OnChange - СпособУстановкиВремениНапоминанияПриИзменении - - - СпособУстановкиВремениНапоминанияExtendedTooltip - 114 - Label - true - true - - Left - - - - СпособУстановкиВремениНапоминанияКонтекстноеМеню - 40 - true - - InputField - Enter - true - Left - true - - 20 - true - true - true - true - true - true - OnValueChange - Normal - - true true @@ -143,6 +193,62 @@ Auto + + СпособУстановкиВремениНапоминания + 39 + + <key>ru</key> + <value>Напомнить</value> + + true + true + + true + + + СпособУстановкиВремениНапоминания + + Left + + ru + Время, через которое нужно напомнить, или способ установки времени напоминания + + + OnChange + СпособУстановкиВремениНапоминанияПриИзменении + + + СпособУстановкиВремениНапоминанияExtendedTooltip + 114 + Label + true + true + + Left + + + + СпособУстановкиВремениНапоминанияКонтекстноеМеню + 40 + true + + InputField + Enter + true + Left + true + + 20 + true + true + true + true + true + true + OnValueChange + Normal + + ПанельДетальныхНастроек 72 @@ -180,10 +286,9 @@ true true true - true + false Left - Bottom true @@ -199,6 +304,7 @@ ru Без детализации + true БезДетализацииExtendedTooltip 116 @@ -328,6 +434,7 @@ ru ДФ=ЧЧ:мм + 10 true true OnValueChange @@ -394,9 +501,7 @@ true Label - true true - false Right @@ -599,9 +704,7 @@ true Label - true true - false Left @@ -643,7 +746,7 @@ Left true - 13 + 20 true true false @@ -838,7 +941,6 @@ ru Настройка времени - false НастройкаВремениExtendedTooltip 112 @@ -851,6 +953,7 @@ UsualGroup + Center Auto true true @@ -1035,7 +1138,24 @@ true - + + true + + + + НастройкиПодсистемы + + <key>ru</key> + <value>Настройки подсистемы</value> + + 8 + + + true + + + true + Удалить diff --git a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/Напоминание/Help/ru.html b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/Напоминание/Help/ru.html index b0eba9818..e164ebb46 100644 --- a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/Напоминание/Help/ru.html +++ b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/Напоминание/Help/ru.html @@ -1,17 +1,18 @@

        В программе можно вводить напоминания, указав время и предмет, по поводу которого в программе в указанное время будет выведен список напоминаний.

        Предметом напоминаний могут быть различные справочники, документы и другие объекты программы. Например, напоминание можно ввести по конкретному партнеру, документу товародвижения и т.д., для того чтобы не забыть уточнить или дозаполнить какие-либо данные.

        -

        Открывается по команде Органайзер - Напомнить из различных объектов программы. При этом можно ввести только одно напоминание для одного объекта.

        +

        Открывается по кнопке  Органайзер - Напомнить из различных объектов программы. При этом можно ввести только одно напоминание для одного объекта.

        Также можно ввести напоминание, связанное с каким-либо персональным событием или делом, в списке Мои напоминания по команде Создать.  Такое напоминание может быть полезно, например, для того чтобы не забыть вовремя поздравить коллегу с днем рождения. Совместно с заметками напоминания хорошо подходят как электронная замена "стикеров на краях монитора".

        Ввод напоминания

        -
        • Откорректируйте или напишите текст напоминания. Если напоминание связано с документом, справочником или другим объектом программы, то в тексте напоминания по умолчанию будет подставлено его наименование. -
        • В поле Напомнить выберите один из вариантов: +
          • Откорректируйте или напишите текст напоминания. +
          • Если напоминание связано с документом, справочником или другим объектом программы, то в поле Предмет проставляется ссылка на объект программы, в тексте напоминания по умолчанию будет подставлено его наименование. +
            • По ссылке в поле Предмет можно просмотреть объект программы, по которому создано напоминание.
          • В поле Напомнить выберите один из вариантов:
            • В указанное время - для указания точной даты и времени напоминания. Введите дату вручную или выберите из календаря с помощью кнопки .  -
            • Через определенный интервал. Для этого выберите значение из списка для задания интервала, через который напоминание сработает. Также можно с помощью клавиатуры указать произвольное количество часов, например, через 10 часов. +
            • Через определенный интервал. Для этого выберите значение из списка для задания интервала, через который напоминание сработает. Также можно с помощью клавиатуры указать произвольное количество часов, например, через 10 часов. Программа автоматически высчитывает дату и время срабатывания напоминания и выводит ее в скобках рядом с полем Напомнить.
            • Относительно предмета - для указания времени напоминания относительно даты в предмете напоминания, например, относительно срока исполнения в задаче. Это значение поля Напомнить отображается и предлагается программой по умолчанию, когда у предмета существует по меньшей мере одно поле с датой в будущем времени. Выберите из списка, за сколько времени до Срока необходимо вывести напоминание. Если такая дата в предмете меняется, автоматически меняется и срок напоминания. Если дата в предмете по какой-то причине будет сброшена, то срок напоминания будет считаться подошедшим и напоминание будет выведено досрочно.
            • Периодически - для периодических напоминаний, например, можно выбрать из списка значение по понедельникам в 9-00, или ввести другое расписание. Для ввода своего расписания выберите из списка значение по заданному расписанию и произведите необходимые настройки.

          Отмена напоминания

          • -
            Для того чтобы отменить напоминание, нажмите Прекратить.
            +
            Для того чтобы отменить напоминание, нажмите Удалить.
          • -
            Программа выводит сообщение, в котором требует подтверждения. Для подтверждения нажмите Прекратить. Для отмены своего действия нажмите Не прекращать.

          См. также:

          +
          Программа выводит сообщение, в котором требует подтверждения. Для подтверждения нажмите Удалить. Для отмены своего действия нажмите Не удалять.

        См. также:

        \ No newline at end of file diff --git a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/Напоминание/Module.bsl b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/Напоминание/Module.bsl index ce9aac728..a7ab3e4b5 100644 --- a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/Напоминание/Module.bsl +++ b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/Напоминание/Module.bsl @@ -8,6 +8,8 @@ Возврат; КонецЕсли; + НастройкиПодсистемы = НапоминанияПользователяСлужебный.НастройкиПодсистемы(); + Объект.Пользователь = Пользователи.ТекущийПользователь(); Если Параметры.Свойство("Источник") Тогда @@ -31,6 +33,12 @@ ЭтоНовый = Не ЗначениеЗаполнено(Объект.ИсходныйКлючЗаписи); Элементы.Удалить.Видимость = Не ЭтоНовый; + Элементы.ПредметНапоминания.Видимость = ЗначениеЗаполнено(Объект.Источник); + Элементы.ПредметНапоминания.Заголовок = ОбщегоНазначения.ПредметСтрокой(Объект.Источник); + Если ЗначениеЗаполнено(Объект.Источник) Тогда + КлючСохраненияПоложенияОкна = "НапоминаниеПоПредмету"; + КонецЕсли; + КонецПроцедуры &НаСервере @@ -51,6 +59,8 @@ ДатаВИсточнике = ВычислитьБлижайшуюДату(ДатаВИсточнике); ТекущийОбъект.ВремяСобытия = ДатаВИсточнике; ТекущийОбъект.СрокНапоминания = ДатаВИсточнике - Объект.ИнтервалВремениНапоминания; + Иначе + ТекущийОбъект.ВремяСобытия = '00010101'; КонецЕсли; ИначеЕсли ТекущийОбъект.СпособУстановкиВремениНапоминания = Перечисления.СпособыУстановкиВремениНапоминания.ВУказанноеВремя Тогда ТекущийОбъект.СрокНапоминания = Объект.ВремяСобытия; @@ -69,6 +79,17 @@ ТекущийОбъект.Расписание = Новый ХранилищеЗначения(Расписание, Новый СжатиеДанных(9)); + НаборЗаписей = РегистрыСведений.НапоминанияПользователя.СоздатьНаборЗаписей(); + НаборЗаписей.Отбор.Пользователь.Установить(ТекущийОбъект.Пользователь); + НаборЗаписей.Отбор.Источник.Установить(ТекущийОбъект.Источник); + НаборЗаписей.Прочитать(); + Если НаборЗаписей.Количество() > 0 Тогда + ЗанятоеВремя = НаборЗаписей.Выгрузить(,"ВремяСобытия").ВыгрузитьКолонку("ВремяСобытия"); + Пока ЗанятоеВремя.Найти(ТекущийОбъект.ВремяСобытия) <> Неопределено Цикл + ТекущийОбъект.ВремяСобытия = ТекущийОбъект.ВремяСобытия + 1; + КонецЦикла; + КонецЕсли; + КонецПроцедуры &НаКлиенте @@ -113,7 +134,7 @@ &НаКлиенте Процедура ПослеЗаписи(ПараметрыЗаписи) // для обновления кэша - СтруктураПараметров = НапоминанияПользователяКлиентСервер.ПолучитьСтруктуруНапоминания(Объект, Истина); + СтруктураПараметров = НапоминанияПользователяКлиентСервер.ОписаниеНапоминания(Объект, Истина); СтруктураПараметров.Вставить("ИндексКартинки", 2); НапоминанияПользователяКлиент.ОбновитьЗаписьВКэшеОповещений(СтруктураПараметров); @@ -197,6 +218,11 @@ Объект.ВремяСобытия = НачалоМинуты(Объект.ВремяСобытия); КонецПроцедуры +&НаКлиенте +Процедура ПредметНапоминанияНажатие(Элемент) + ПоказатьЗначение(, Объект.Источник); +КонецПроцедуры + #КонецОбласти #Область ОбработчикиКомандФормы @@ -285,7 +311,7 @@ КонецЦикла; Элементы.ИнтервалВремениОтносительноИсточника.СписокВыбора.Очистить(); - ИнтервалыВремени = НапоминанияПользователяКлиентСервер.ПолучитьСтандартныеИнтервалыОповещения(); + ИнтервалыВремени = НастройкиПодсистемы.СтандартныеИнтервалы; Для Каждого Интервал Из ИнтервалыВремени Цикл СпособыОповещения.Добавить(НСтр("ru = 'через'") + " " + Интервал); Элементы.ИнтервалВремениОтносительноИсточника.СписокВыбора.Добавить(Интервал); @@ -322,15 +348,24 @@ Для Каждого Обработчик Из ОбработчикиСобытия Цикл Обработчик.Модуль.ПриЗаполненииСпискаРеквизитовИсточникаСДатамиДляНапоминания(Объект.Источник, МассивРеквизитов); КонецЦикла; + НапоминанияПользователяПереопределяемый.ПриЗаполненииСпискаРеквизитовИсточникаСДатамиДляНапоминания(Объект.Источник, МассивРеквизитов); + + // Поддержка обратной совместимости. НапоминанияПользователяКлиентСерверПереопределяемый.ПриЗаполненииСпискаРеквизитовИсточникаСДатамиДляНапоминания(Объект.Источник, МассивРеквизитов); - + Элементы.ИмяРеквизитаИсточника.СписокВыбора.Очистить(); + ЗначенияРеквизитов = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Объект.Источник, СтрСоединить(МассивРеквизитов, ",")); Для Каждого ИмяРеквизита Из МассивРеквизитов Цикл Если РеквизитИсточникаСуществуетИСодержитТипДата(МетаданныеИсточника, ИмяРеквизита) Тогда - Если ТипЗнч(Объект.Источник[ИмяРеквизита]) = Тип("Дата") И Объект.Источник[ИмяРеквизита] > ТекущаяДатаСеанса() Тогда + Если ТипЗнч(Объект.Источник[ИмяРеквизита]) = Тип("Дата") Тогда Реквизит = МетаданныеИсточника.Реквизиты.Найти(ИмяРеквизита); - ПредставлениеРеквизита = ?(ПустаяСтрока(Реквизит.Синоним),Реквизит.Имя, Реквизит.Синоним); + ПредставлениеРеквизита = Реквизит.Представление(); + ДатаВРеквизите = ЗначенияРеквизитов[Реквизит.Имя]; + БлижайшаяДата = ВычислитьБлижайшуюДату(ДатаВРеквизите); + Если ЗначениеЗаполнено(БлижайшаяДата) И ДатаВРеквизите < ТекущаяДатаСеанса() Тогда + ПредставлениеРеквизита = ПредставлениеРеквизита + " (" + Формат(БлижайшаяДата, "ДЛФ=D") + ")"; + КонецЕсли; Если Элементы.ИмяРеквизитаИсточника.СписокВыбора.НайтиПоЗначению(ИмяРеквизита) = Неопределено Тогда Элементы.ИмяРеквизитаИсточника.СписокВыбора.Добавить(ИмяРеквизита, ПредставлениеРеквизита); КонецЕсли; @@ -343,10 +378,11 @@ &НаСервере Процедура ЗаполнитьВариантыПериодичности() Элементы.ВариантПериодичности.СписокВыбора.Очистить(); - СписокРасписаний = НапоминанияПользователяСлужебный.ПолучитьСтандартныеРасписанияДляНапоминания(); + СписокРасписаний = НастройкиПодсистемы.Расписания; Для Каждого СтандартноеРасписание Из СписокРасписаний Цикл Элементы.ВариантПериодичности.СписокВыбора.Добавить(СтандартноеРасписание.Ключ, СтандартноеРасписание.Ключ); КонецЦикла; + Элементы.ВариантПериодичности.СписокВыбора.СортироватьПоПредставлению(); Элементы.ВариантПериодичности.СписокВыбора.Добавить("", НСтр("ru = 'по заданному расписанию...'")); КонецПроцедуры @@ -427,7 +463,7 @@ &НаСервере Процедура ОпределитьВыбранныйВариантПериодичности() - СтандартныеРасписания = НапоминанияПользователяСлужебный.ПолучитьСтандартныеРасписанияДляНапоминания(); + СтандартныеРасписания = НастройкиПодсистемы.Расписания; Если Расписание = Неопределено Тогда ВариантПериодичности = Элементы.ВариантПериодичности.СписокВыбора.Получить(0).Значение; @@ -446,39 +482,22 @@ Если ПользовательскаяНастройка Тогда ОткрытьДиалогНастройкиРасписания(); Иначе - СтандартныеРасписания = Неопределено; - ПолучитьСтандартныеРасписания(СтандартныеРасписания); + СтандартныеРасписания = НастройкиПодсистемы.Расписания; Расписание = СтандартныеРасписания[ВариантПериодичности]; КонецЕсли; ОпределитьВыбранныйВариантПериодичности(); КонецПроцедуры -&НаСервере -Процедура ПолучитьСтандартныеРасписания(СтандартныеРасписания) - - СтандартныеРасписания = НапоминанияПользователяСлужебный.ПолучитьСтандартныеРасписанияДляНапоминания(); - -КонецПроцедуры - &НаСервере Функция ВычислитьБлижайшуюДату(ИсходнаяДата) - Результат = ИсходнаяДата; + ТекущаяДата = ТекущаяДатаСеанса(); + Если Не ЗначениеЗаполнено(ИсходнаяДата) Или ИсходнаяДата > ТекущаяДата Тогда + Возврат ИсходнаяДата; + КонецЕсли; - Запрос = Новый Запрос; - Запрос.Текст = - "ВЫБРАТЬ - | ВЫБОР - | КОГДА &ИсходнаяДата > &ТекущаяДата - | ТОГДА &ИсходнаяДата - | ИНАЧЕ ДОБАВИТЬКДАТЕ(&ИсходнаяДата, ГОД, РАЗНОСТЬДАТ(&ИсходнаяДата, &ТекущаяДата, ГОД)) - | КОНЕЦ КАК БудущаяДата"; - - Запрос.УстановитьПараметр("ИсходнаяДата", ИсходнаяДата); - Запрос.УстановитьПараметр("ТекущаяДата", ТекущаяДатаСеанса()); - - Выборка = Запрос.Выполнить().Выбрать(); - Если Выборка.Следующий() Тогда - Результат = Выборка.БудущаяДата; + Результат = ДобавитьМесяц(ИсходнаяДата, 12 * (Год(ТекущаяДата) - Год(ИсходнаяДата))); + Если Результат < ТекущаяДата Тогда + Результат = ДобавитьМесяц(Результат, 12); КонецЕсли; Возврат Результат; diff --git a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/ФормаОповещения/Form.form b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/ФормаОповещения/Form.form index 239992d77..9fd2f37dd 100644 --- a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/ФормаОповещения/Form.form +++ b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/ФормаОповещения/Form.form @@ -61,37 +61,6 @@ UserCmds Auto - - ПустаяНадпись - 18 - true - true - - true - - - ПустаяНадписьExtendedTooltip - 33 - Label - true - true - - Left - - - - ПустаяНадписьКонтекстноеМеню - 19 - true - - Label - 5 - true - true - - Left - - СрокПовторногоОповещения 12 diff --git a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/ФормаОповещения/Help/ru.html b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/ФормаОповещения/Help/ru.html index b0bcab73e..9e5337eff 100644 --- a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/ФормаОповещения/Help/ru.html +++ b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/ФормаОповещения/Help/ru.html @@ -1,8 +1,8 @@ -

        Предназначен для вывода сработавших напоминаний.

        -

        В указанное в напоминании время в программе открывается список Напоминания. В списке содержатся все вновь созданные и отложенные напоминания, у которых подошло время срабатывания. По каждому напоминанию выводится его текст и время, насколько оно было просрочено. Если напоминание связано с датой какого-либо предмета, например, со сроком по задаче, то в напоминании указывается, сколько времени осталось до этого события.

        -

        Из списка можно сразу перейти к элементу справочника или другому объекту программы, с которым связано напоминанме (по команде Открыть или двойному щелчку мыши). Если напоминание не связано с объектом программы (то открывается само напоминание).

        -

        По команде Отложить все напоминания в списке можно отложить на время, указанное в поле Напомнить через. Для заполнения поля выберите значение из списка, или с помощью клавиатуры, указав произвольное значение времени.

        -

        Периодическое напоминание после нажатия на кнопку Прекратить продолжает действовать согласно настроенному расписанию. Полность прекратить такое напоминание можно в списке Мои напоминания.

        -

        См. также:

        +

        Предназначен для вывода сработавших напоминаний.

        +

        В указанное в напоминании время в программе открывается список Напоминания. В списке содержатся все вновь созданные и отложенные напоминания, у которых подошло время срабатывания.

        +

        По каждому напоминанию выводится его текст и время, насколько оно было просрочено. Если напоминание связано с датой какого-либо предмета, например, со сроком по задаче, то в напоминании указывается, сколько времени осталось до этого события. В списке можно:

        +
        • Перейти к элементу справочника или другому объекту программы, с которым связано напоминание (с помощью кнопки Открыть или двойному щелчку мыши). Если напоминание не связано с объектом программы, то открывается само напоминание. +
        • С помощью кнопки Прекратить отменить выделенные в списке напоминания, удалив их из списка. Периодическое напоминание после нажатия на кнопку Прекратить продолжает действовать согласно настроенному расписанию. Полностью прекратить такое напоминание можно в списке Мои напоминания. +
        • С помощью кнопки Отложить все напоминания в списке отложить на время, указанное в поле Напомнить через. Для заполнения поля выберите значение из списка, или с помощью клавиатуры, указав произвольное значение времени.

        См. также:

        \ No newline at end of file diff --git a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/ФормаОповещения/Module.bsl b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/ФормаОповещения/Module.bsl index 3747633e7..61aaf7bb5 100644 --- a/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/ФормаОповещения/Module.bsl +++ b/SSL/src/InformationRegisters/НапоминанияПользователя/Forms/ФормаОповещения/Module.bsl @@ -31,7 +31,12 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + ОтложитьАктивныеНапоминания(); НапоминанияПользователяКлиент.СброситьТаймерПроверкиТекущихОповещений(); @@ -101,7 +106,7 @@ Для Каждого ИндексСтроки Из Элементы.Напоминания.ВыделенныеСтроки Цикл ДанныеСтроки = Напоминания.НайтиПоИдентификатору(ИндексСтроки); - ПараметрыНапоминания = НапоминанияПользователяКлиентСервер.ПолучитьСтруктуруНапоминания(ДанныеСтроки); + ПараметрыНапоминания = НапоминанияПользователяКлиентСервер.ОписаниеНапоминания(ДанныеСтроки); ОтключитьНапоминание(ПараметрыНапоминания); НапоминанияПользователяКлиент.УдалитьЗаписьИзКэшаОповещений(ДанныеСтроки); @@ -187,6 +192,15 @@ КонецПроцедуры +&НаКлиенте +Функция МодульЧисла(Число) + Если Число >= 0 Тогда + Возврат Число; + Иначе + Возврат -Число; + КонецЕсли; +КонецФункции + &НаКлиенте Процедура ОбновитьВремяВТаблицеНапоминаний() ОтключитьОбработчикОжидания("ОбновитьВремяВТаблицеНапоминаний"); @@ -195,11 +209,17 @@ ПредставлениеВремени = НСтр("ru = 'срок не определен'"); Если ЗначениеЗаполнено(СтрокаТаблицы.ВремяСобытия) Тогда - Время = ОбщегоНазначенияКлиент.ДатаСеанса() - СтрокаТаблицы.ВремяСобытия; - Если Время > 60*60*24 Или Время < -60*60*24 Тогда - Время = НачалоДня(ОбщегоНазначенияКлиент.ДатаСеанса()) - НачалоДня(СтрокаТаблицы.ВремяСобытия); + ТекущаяДата = ОбщегоНазначенияКлиент.ДатаСеанса(); + Время = ТекущаяДата - СтрокаТаблицы.ВремяСобытия; + Если СтрокаТаблицы.ВремяСобытия - НачалоДня(СтрокаТаблицы.ВремяСобытия) < 60 // События "на весь день". + И НачалоДня(СтрокаТаблицы.ВремяСобытия) = НачалоДня(ТекущаяДата) Тогда + ПредставлениеВремени = НСтр("ru = 'сегодня'"); + Иначе + Если МодульЧисла(Время) > 60*60*24 Тогда + Время = НачалоДня(ОбщегоНазначенияКлиент.ДатаСеанса()) - НачалоДня(СтрокаТаблицы.ВремяСобытия); + КонецЕсли; + ПредставлениеВремени = ПредставлениеИнтервалаВремени(Время); КонецЕсли; - ПредставлениеВремени = ПредставлениеИнтервалаВремени(Время); КонецЕсли; Если СтрокаТаблицы.ВремяСобытияСтрока <> ПредставлениеВремени Тогда @@ -217,7 +237,7 @@ Для Каждого СтрокаТаблицы Из Напоминания Цикл СтрокаТаблицы.СрокНапоминания = ОбщегоНазначенияКлиент.ДатаСеанса() + ИнтервалВремени; - ПараметрыНапоминания = НапоминанияПользователяКлиентСервер.ПолучитьСтруктуруНапоминания(СтрокаТаблицы); + ПараметрыНапоминания = НапоминанияПользователяКлиентСервер.ОписаниеНапоминания(СтрокаТаблицы); ПодключитьНапоминание(ПараметрыНапоминания); НапоминанияПользователяКлиент.ОбновитьЗаписьВКэшеОповещений(СтрокаТаблицы); @@ -286,8 +306,10 @@ ПредставлениеМинут = НСтр("ru = 'минуту'") + "," + НСтр("ru = 'минуты'") + "," + НСтр("ru = 'минут'"); КоличествоВремени = Число(КоличествоВремени); + ТекущаяДата = ОбщегоНазначенияКлиент.ДатаСеанса(); СобытиеНаступило = Истина; + СобытиеСегодня = НачалоДня(ТекущаяДата - КоличествоВремени) = НачалоДня(ТекущаяДата); ШаблонПредставления = НСтр("ru = '%1 назад'"); Если КоличествоВремени < 0 Тогда ШаблонПредставления = НСтр("ru = 'через %1'"); @@ -306,8 +328,6 @@ КоличествоЧасов = КоличествоЧасов - КоличествоДней * 24; КоличествоДней = КоличествоДней - КоличествоНедель * 7; - ТекущаяДата = ОбщегоНазначенияКлиент.ДатаСеанса(); - Если КоличествоНедель > 4 Тогда Если СобытиеНаступило Тогда Возврат НСтр("ru = 'очень давно'"); @@ -330,8 +350,7 @@ Иначе Результат = СтроковыеФункцииКлиентСервер.ЧислоЦифрамиПредметИсчисленияПрописью(КоличествоДней, ПредставлениеДней); КонецЕсли; - ИначеЕсли КоличествоЧасов + КоличествоДней * 24 > 12 - И НачалоДня(ТекущаяДата) - НачалоДня(ТекущаяДата - КоличествоВремени) = 60*60*24 Тогда + ИначеЕсли КоличествоЧасов + КоличествоДней * 24 > 3 И Не СобытиеСегодня Тогда Если СобытиеНаступило Тогда Возврат НСтр("ru = 'вчера'"); Иначе @@ -339,7 +358,6 @@ КонецЕсли; ИначеЕсли КоличествоДней > 0 Тогда Результат = НСтр("ru = 'день'"); - ИначеЕсли КоличествоЧасов > 1 Тогда Результат = СтроковыеФункцииКлиентСервер.ЧислоЦифрамиПредметИсчисленияПрописью(КоличествоЧасов, ПредставлениеЧасов); ИначеЕсли КоличествоЧасов > 0 Тогда diff --git a/SSL/src/InformationRegisters/НапоминанияПользователя/Help/ru.html b/SSL/src/InformationRegisters/НапоминанияПользователя/Help/ru.html index bafed9005..64ce07d93 100644 --- a/SSL/src/InformationRegisters/НапоминанияПользователя/Help/ru.html +++ b/SSL/src/InformationRegisters/НапоминанияПользователя/Help/ru.html @@ -4,9 +4,8 @@

        Открывается по команде Органайзер - Напомнить из различных объектов программы. При этом можно ввести только одно напоминание для одного объекта.

        Также можно ввести напоминание, связанное с каким-либо персональным событием или делом, в списке Мои напоминания по команде Создать.  Такое напоминание может быть полезно, например, для того чтобы не забыть вовремя поздравить коллегу с днем рождения. Совместно с заметками напоминания хорошо подходят как электронная замена "стикеров на краях монитора".

        Список напоминаний

        -

        В указанное в напоминании время в программе открывается список Напоминания. В списке содержатся все вновь созданные и отложенные напоминания, у которых подошло время срабатывания. По каждому напоминанию выводится его текст и время, насколько оно было просрочено. Если напоминание связано с датой какого-либо предмета (например, со сроком по задаче), то в напоминании указывается, сколько времени осталось до этого события.

        -

        Из списка можно перейти к элементу справочника или документу, с которым связано напоминание (по команде Открыть или двойному щелчку мыши). Если напоминание не связано с объектом программы, то открывается само напоминание.

        -

        С помощью кнопки Прекратить можно отменить выделенные в списке напоминания, удалив их из списка. Периодическое напоминание после нажатия на кнопку Прекратить продолжает действовать согласно настроенному расписанию. Полностью прекратить такое напоминание можно в списке Мои напоминания.

        -

        По команде Отложить все напоминания в списке можно отложить на время, указанное в поле Напомнить через. Поле Напомнить через можно заполнить, выбрав значение из списка, или с помощью клавиатуры, указав произвольное значение времени.

        -

        См. также:

        +
        • В указанное в напоминании время в программе открывается список Напоминания. В списке содержатся все вновь созданные и отложенные напоминания, у которых подошло время срабатывания. По каждому напоминанию выводится его текст и время, насколько оно было просрочено. Если напоминание связано с датой какого-либо предмета (например, со сроком по задаче), то в напоминании указывается, сколько времени осталось до этого события. +
        • Из списка можно перейти к элементу справочника или документу, с которым связано напоминание (по команде Открыть или двойному щелчку мыши). Если напоминание не связано с объектом программы, то открывается само напоминание. +
        • С помощью кнопки Прекратить можно отменить выделенные в списке напоминания, удалив их из списка. Периодическое напоминание после нажатия на кнопку Прекратить продолжает действовать согласно настроенному расписанию. Полностью прекратить такое напоминание можно в списке Мои напоминания. +
        • По команде Отложить все напоминания в списке можно отложить на время, указанное в поле Напомнить через. Поле Напомнить через можно заполнить, выбрав значение из списка, или с помощью клавиатуры, указав произвольное значение времени.

        См. также:

        \ No newline at end of file diff --git a/SSL/src/InformationRegisters/НаследованиеНастроекПравОбъектов/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/НаследованиеНастроекПравОбъектов/Forms/ФормаСписка/Form.form index 76ca68ce8..d73792dce 100644 --- a/SSL/src/InformationRegisters/НаследованиеНастроекПравОбъектов/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/НаследованиеНастроекПравОбъектов/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 28 @@ -413,7 +412,6 @@ OnCreateAtServer ПриСозданииНаСервере - 70 DontBlock true true diff --git a/SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/Forms/ВерсионированиеОбъектов/Form.form b/SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/Forms/НастройкиХраненияИстории/Form.form similarity index 99% rename from SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/Forms/ВерсионированиеОбъектов/Form.form rename to SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/Forms/НастройкиХраненияИстории/Form.form index 8913551ae..1fcb0613d 100644 --- a/SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/Forms/ВерсионированиеОбъектов/Form.form +++ b/SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/Forms/НастройкиХраненияИстории/Form.form @@ -1,5 +1,9 @@ + + <key>ru</key> + <value>Настройки хранения истории изменений</value> + ДеревоОбъектовМетаданных 11 @@ -801,7 +805,6 @@ true Label - true true Left @@ -999,7 +1002,6 @@ true Label - true true Style.ПоясняющийТекст @@ -1495,10 +1497,8 @@ OnCreateAtServer ПриСозданииНаСервере - 70 DontBlock true - true true Vertical true diff --git a/SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/Forms/ВерсионированиеОбъектов/Module.bsl b/SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/Forms/НастройкиХраненияИстории/Module.bsl similarity index 89% rename from SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/Forms/ВерсионированиеОбъектов/Module.bsl rename to SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/Forms/НастройкиХраненияИстории/Module.bsl index 8e9516b3c..778f6cdc6 100644 --- a/SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/Forms/ВерсионированиеОбъектов/Module.bsl +++ b/SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/Forms/НастройкиХраненияИстории/Module.bsl @@ -432,7 +432,7 @@ &НаКлиенте Процедура ПроверитьВыполнениеФоновогоЗадания() - Если Не ЗаданиеВыполнено(ИдентификаторФоновогоЗадания) Тогда + Если ЗначениеЗаполнено(ИдентификаторФоновогоЗадания) И Не ЗаданиеВыполнено(ИдентификаторФоновогоЗадания) Тогда ПодключитьОбработчикОжидания("ПроверитьВыполнениеФоновогоЗадания", 5, Истина); Иначе ИдентификаторФоновогоЗадания = ""; @@ -452,7 +452,9 @@ &НаСервереБезКонтекста Процедура ОтменитьВыполнениеЗадания(ИдентификаторФоновогоЗадания) - ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторФоновогоЗадания); + Если ЗначениеЗаполнено(ИдентификаторФоновогоЗадания) Тогда + ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторФоновогоЗадания); + КонецЕсли; КонецПроцедуры &НаСервере @@ -469,9 +471,12 @@ Если ФоновыеЗаданияОчистки.Количество() > 0 Тогда ИдентификаторФоновогоЗадания = ФоновыеЗаданияОчистки[0].УникальныйИдентификатор; Иначе - НаименованиеФоновогоЗадания = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Запуск вручную: %1'"), РегламентноеЗаданиеМетаданные.Синоним); - ФоновоеЗадание = ФоновыеЗадания.Выполнить(РегламентноеЗаданиеМетаданные.ИмяМетода, , , НаименованиеФоновогоЗадания); - ИдентификаторФоновогоЗадания = ФоновоеЗадание.УникальныйИдентификатор; + ПараметрыЗадания = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыЗадания.НаименованиеФоновогоЗадания = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Запуск вручную: %1'"), РегламентноеЗаданиеМетаданные.Синоним); + РезультатЗадания = ДлительныеОперации.ВыполнитьВФоне(РегламентноеЗаданиеМетаданные.ИмяМетода, Новый Структура, ПараметрыЗадания); + Если ЗначениеЗаполнено(РезультатЗадания.ИдентификаторЗадания) Тогда + ИдентификаторФоновогоЗадания = РезультатЗадания.ИдентификаторЗадания; + КонецЕсли; КонецЕсли; ТекущееФоновоеЗадание = "Очистка"; @@ -508,13 +513,33 @@ Возврат; КонецЕсли; - Если ВыполнитьПоискУстаревшихВерсий() Тогда - ВывестиИнформациюОбУстаревшихВерсиях(); - Иначе - НачатьОбновлениеИнформацииОбУстаревшихВерсиях(); - ПодключитьОбработчикОжидания("ПроверитьВыполнениеФоновогоЗадания", 2, Истина); + Элементы.ИнформацияОбУстаревшихВерсиях.Заголовок = ТекстСостоянияПодсчет(); + ДлительнаяОперация = ВыполнитьПоискУстаревшихВерсий(); + + ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект); + ПараметрыОжидания.ВыводитьОкноОжидания = Ложь; + + ОписаниеОповещения = Новый ОписаниеОповещения("ПриЗавершенииОперацииПоискаУстаревшихВерсий", ЭтотОбъект); + ДлительныеОперацииКлиент.ОжидатьЗавершение(ДлительнаяОперация, ОписаниеОповещения, ПараметрыОжидания); + +КонецПроцедуры + +&НаКлиенте +Процедура ПриЗавершенииОперацииПоискаУстаревшихВерсий(Результат, ДополнительныеПараметры) Экспорт + + Если Результат = Неопределено Тогда + Возврат; КонецЕсли; + Если Результат.Статус = "Ошибка" Тогда + ЖурналРегистрацииКлиент.ДобавитьСообщениеДляЖурналаРегистрации(НСтр("ru = 'Поиск устаревших версий объектов'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), + "Ошибка", Результат.ПодробноеПредставлениеОшибки, , Истина); + ВызватьИсключение Результат.КраткоеПредставлениеОшибки; + КонецЕсли; + + ИдентификаторФоновогоЗадания = ""; + ВывестиИнформациюОбУстаревшихВерсиях(); + КонецПроцедуры &НаКлиентеНаСервереБезКонтекста @@ -529,14 +554,16 @@ &НаСервере Функция ВыполнитьПоискУстаревшихВерсий() - РезультатВыполнения = ДлительныеОперации.ЗапуститьВыполнениеВФоне(УникальныйИдентификатор, - "ВерсионированиеОбъектов.ИнформацияОбУстаревшихВерсияхВФоне", Новый Структура); - АдресРезультата = РезультатВыполнения.АдресХранилища; - Если Не РезультатВыполнения.ЗаданиеВыполнено Тогда - ТекущееФоновоеЗадание = "Подсчет"; - ИдентификаторФоновогоЗадания = РезультатВыполнения.ИдентификаторЗадания; - КонецЕсли; - Возврат РезультатВыполнения.ЗаданиеВыполнено; + + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = НСтр("ru = 'Поиск устаревших версий объектов'"); + + ДлительнаяОперация = ДлительныеОперации.ВыполнитьВФоне("ВерсионированиеОбъектов.ИнформацияОбУстаревшихВерсияхВФоне", Новый Структура, ПараметрыВыполнения); + ТекущееФоновоеЗадание = "Подсчет"; + ИдентификаторФоновогоЗадания = ДлительнаяОперация.ИдентификаторЗадания; + АдресРезультата = ДлительнаяОперация.АдресРезультата; + + Возврат ДлительнаяОперация; КонецФункции &НаКлиенте diff --git a/SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/НастройкиВерсионированияОбъектов.mdo b/SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/НастройкиВерсионированияОбъектов.mdo index b28dc7da9..ae099d564 100644 --- a/SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/НастройкиВерсионированияОбъектов.mdo +++ b/SSL/src/InformationRegisters/НастройкиВерсионированияОбъектов/НастройкиВерсионированияОбъектов.mdo @@ -15,7 +15,7 @@ Настройки версионирования объектов true - InformationRegister.НастройкиВерсионированияОбъектов.Form.ВерсионированиеОбъектов + InformationRegister.НастройкиВерсионированияОбъектов.Form.НастройкиХраненияИстории Use Active @@ -57,7 +57,7 @@ Managed ru - Версионирование объектов + Настройки хранения истории изменений Вариант @@ -146,10 +146,10 @@ true - ВерсионированиеОбъектов + НастройкиХраненияИстории ru - Версионирование объектов + Настройки хранения истории PersonalComputer MobileDevice diff --git a/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаЗаписи/ConditionalAppearance.dcssca b/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаЗаписи/ConditionalAppearance.dcssca deleted file mode 100644 index 5f517848d..000000000 --- a/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаЗаписи/ConditionalAppearance.dcssca +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - ДобавитьУсловиеПоДате - - - - - Запись.Действие - NotEqual - Перечисление.ВариантыОчисткиФайлов.НеОчищать - - - - - false - Видимость - false - - - Доступность - false - - - - diff --git a/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаЗаписи/Module.bsl b/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаЗаписи/Module.bsl index d38cf7622..fd5db729e 100644 --- a/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаЗаписи/Module.bsl +++ b/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаЗаписи/Module.bsl @@ -98,7 +98,7 @@ Документ = Метаданные.Документы[ТипОбъекта.Имя]; Для Каждого Реквизит Из Документ.Реквизиты Цикл ТекстЗапроса = ТекстЗапроса + Символы.ПС + ТипОбъекта.Имя + "." + Реквизит.Имя + ","; - Если Реквизит.Тип = Новый ОписаниеТипов("Дата") Тогда + Если Реквизит.Тип.СодержитТип(Тип("Дата")) Тогда МассивРеквизитовСТипомДата.Добавить(Реквизит.Имя, Реквизит.Синоним); ТекстЗапроса = ТекстЗапроса + Символы.ПС + "РАЗНОСТЬДАТ(" + Реквизит.Имя + ", &ТекущаяДата, ДЕНЬ) Как ДнейДоУдаленияОт" + Реквизит.Имя + ","; ЕстьТипДата = Истина; diff --git a/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаСписка/ConditionalAppearance.dcssca b/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаСписка/ConditionalAppearance.dcssca deleted file mode 100644 index 1bd7419f7..000000000 --- a/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаСписка/ConditionalAppearance.dcssca +++ /dev/null @@ -1,101 +0,0 @@ - - - - - - ДеревоОбъектовМетаданныхПравилоОтбора - - - - - OrGroup - - ДеревоОбъектовМетаданных.Действие - Equal - Перечисление.ВариантыОчисткиФайлов.НеОчищать - - - ДеревоОбъектовМетаданных.ПериодОчистки - NotEqual - Перечисление.ПериодОчисткиФайлов.ПоПравилу - - - - - - Текст - - - - false - Видимость - false - - - ТолькоПросмотр - true - - - - - - - ДеревоОбъектовМетаданныхПериодОчистки - - - - - ДеревоОбъектовМетаданных.Действие - Equal - Перечисление.ВариантыОчисткиФайлов.НеОчищать - - - - - Текст - - - - ТолькоПросмотр - false - - - - - - - false - ДеревоОбъектовМетаданныхСинонимНаименованияОбъекта - - - ДеревоОбъектовМетаданныхДействие - - - false - ДеревоОбъектовМетаданныхПериодОчистки - - - - - ДеревоОбъектовМетаданных.Действие - NotEqual - Перечисление.ВариантыОчисткиФайлов.НеОчищать - - - ДеревоОбъектовМетаданных.Действие - Filled - - - - - false - ЦветТекста - style:ФайлЗанятыйТекущимПользователем - - - Шрифт - - - - - diff --git a/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаСписка/Form.form index 736759e5a..c249b673c 100644 --- a/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка 2 @@ -495,7 +494,6 @@ true Label - true true Left @@ -584,6 +582,7 @@ UsualGroup + Center Auto WeakSeparation true @@ -723,7 +722,6 @@ true Label - true true Style.ПоясняющийТекст diff --git a/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаСписка/Module.bsl b/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаСписка/Module.bsl index e5a01da73..33a8bf26d 100644 --- a/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/InformationRegisters/НастройкиОчисткиФайлов/Forms/ФормаСписка/Module.bsl @@ -7,6 +7,8 @@ Возврат; КонецЕсли; + УстановитьУсловноеОформление(); + // Значения реквизитов формы РежимРаботы = ОбщегоНазначенияПовтИсп.РежимРаботыПрограммы(); РежимРаботы = Новый ФиксированнаяСтруктура(РежимРаботы); @@ -196,7 +198,7 @@ ПараметрыФормыВыбора.Вставить("РасширенныйПодбор", Истина); ПараметрыФормыВыбора.Вставить("ЗаголовокФормыПодбора", НСтр("ru = 'Подбор элементов настроек'")); - // Исключим из списка выбора уже существующие настройки + // Исключим из списка выбора уже существующие настройки. СуществующиеНастройки = СтрокаДерева.ПолучитьЭлементы(); ФиксированныеНастройки = Новый НастройкиКомпоновкиДанных; ЭлементНастройки = ФиксированныеНастройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); @@ -486,7 +488,7 @@ КонецПроцедуры &НаКлиенте -Процедура ОткрытьФормуНастроек(); +Процедура ОткрытьФормуНастроек() ТекущиеДанные = Элементы.ДеревоОбъектовМетаданных.ТекущиеДанные; @@ -494,6 +496,13 @@ Возврат; КонецЕсли; + ПроверитьСуществованиеНастройки( + ТекущиеДанные.ВладелецФайла, + ТекущиеДанные.ТипВладельцаФайла, + ТекущиеДанные.Действие, + ТекущиеДанные.ПериодОчистки, + ТекущиеДанные.ЭтоФайл); + Отбор = Новый Структура( "ВладелецФайла, ТипВладельцаФайла", ТекущиеДанные.ВладелецФайла, @@ -522,12 +531,41 @@ &НаСервереБезКонтекста Процедура ОтменитьВыполнениеЗадания(ИдентификаторФоновогоЗадания) - ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторФоновогоЗадания); + Если ЗначениеЗаполнено(ИдентификаторФоновогоЗадания) Тогда + ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторФоновогоЗадания); + КонецЕсли; +КонецПроцедуры + +&НаСервере +Процедура ПроверитьСуществованиеНастройки(ВладелецФайла, ТипВладельцаФайла, Действие, ПериодОчистки, ЭтоФайл) + + УстановитьПривилегированныйРежим(Истина); + + Запрос = Новый Запрос; + Запрос.Текст = + "ВЫБРАТЬ + | НастройкиОчисткиФайлов.ВладелецФайла, + | НастройкиОчисткиФайлов.ТипВладельцаФайла + |ИЗ + | РегистрСведений.НастройкиОчисткиФайлов КАК НастройкиОчисткиФайлов + |ГДЕ + | НастройкиОчисткиФайлов.ВладелецФайла = &ВладелецФайла + | И НастройкиОчисткиФайлов.ТипВладельцаФайла = &ТипВладельцаФайла"; + + Запрос.УстановитьПараметр("ВладелецФайла", ВладелецФайла); + Запрос.УстановитьПараметр("ТипВладельцаФайла", ТипВладельцаФайла); + + КоличествоЗаписей = Запрос.Выполнить().Выгрузить().Количество();; + + Если КоличествоЗаписей = 0 Тогда + ЗаписатьТекущиеНастройкиПоОбъекту(ВладелецФайла, ТипВладельцаФайла, Действие, ПериодОчистки, ЭтоФайл); + КонецЕсли; + КонецПроцедуры &НаКлиенте Процедура ПроверитьВыполнениеФоновогоЗадания() - Если Не ЗаданиеВыполнено(ИдентификаторФоновогоЗадания) Тогда + Если ЗначениеЗаполнено(ИдентификаторФоновогоЗадания) И Не ЗаданиеВыполнено(ИдентификаторФоновогоЗадания) Тогда ПодключитьОбработчикОжидания("ПроверитьВыполнениеФоновогоЗадания", 5, Истина); Иначе ИдентификаторФоновогоЗадания = ""; @@ -554,9 +592,12 @@ Если ФоновыеЗаданияОчистки.Количество() > 0 Тогда ИдентификаторФоновогоЗадания = ФоновыеЗаданияОчистки[0].УникальныйИдентификатор; Иначе - НаименованиеФоновогоЗадания = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Запуск вручную: %1'"), РегламентноеЗаданиеМетаданные.Синоним); - ФоновоеЗадание = ФоновыеЗадания.Выполнить(РегламентноеЗаданиеМетаданные.ИмяМетода, , , НаименованиеФоновогоЗадания); - ИдентификаторФоновогоЗадания = ФоновоеЗадание.УникальныйИдентификатор; + ПараметрыЗадания = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыЗадания.НаименованиеФоновогоЗадания = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Запуск вручную: %1'"), РегламентноеЗаданиеМетаданные.Синоним); + РезультатЗадания = ДлительныеОперации.ВыполнитьВФоне(РегламентноеЗаданиеМетаданные.ИмяМетода, Новый Структура, ПараметрыЗадания); + Если ЗначениеЗаполнено(ИдентификаторФоновогоЗадания) Тогда + ИдентификаторФоновогоЗадания = РезультатЗадания.ИдентификаторЗадания; + КонецЕсли; КонецЕсли; ТекущееФоновоеЗадание = "Очистка"; @@ -664,4 +705,60 @@ Возврат ПолучитьПараметрРегламентногоЗадания("Использование", Ложь); КонецФункции -#КонецОбласти +&НаСервере +Процедура УстановитьУсловноеОформление() + + УсловноеОформление.Элементы.Очистить(); + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных("ДеревоОбъектовМетаданныхПравилоОтбора"); + + ГруппаЭлементовОтбора = Элемент.Отбор.Элементы.Добавить(Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); + ГруппаЭлементовОтбора.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли; + + ОтборЭлемента = ГруппаЭлементовОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДеревоОбъектовМетаданных.Действие"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Перечисления.ВариантыОчисткиФайлов.НеОчищать; + + ОтборЭлемента = ГруппаЭлементовОтбора.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДеревоОбъектовМетаданных.ПериодОчистки"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно; + ОтборЭлемента.ПравоеЗначение = Перечисления.ПериодОчисткиФайлов.ПоПравилу; + + Элемент.Оформление.УстановитьЗначениеПараметра("Текст", ""); + Элемент.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина); + + Элемент = УсловноеОформление.Элементы.Добавить(); + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных("ДеревоОбъектовМетаданныхПериодОчистки"); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДеревоОбъектовМетаданных.Действие"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Перечисления.ВариантыОчисткиФайлов.НеОчищать; + + Элемент.Оформление.УстановитьЗначениеПараметра("Текст", ""); + Элемент.Оформление.УстановитьЗначениеПараметра("ТолькоПросмотр", Истина); + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных("ДеревоОбъектовМетаданныхДействие"); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДеревоОбъектовМетаданных.Действие"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно; + ОтборЭлемента.ПравоеЗначение = Перечисления.ВариантыОчисткиФайлов.НеОчищать; + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДеревоОбъектовМетаданных.Действие"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Заполнено; + + Элемент.Оформление.УстановитьЗначениеПараметра("Шрифт", Новый Шрифт(WindowsШрифты.ШрифтДиалоговИМеню, , , Истина, Ложь, Ложь, Ложь)); + +КонецПроцедуры + +#КонецОбласти \ No newline at end of file diff --git a/SSL/src/InformationRegisters/НастройкиПравОбъектов/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/НастройкиПравОбъектов/Forms/ФормаСписка/Form.form index 996ab84f2..6247b2540 100644 --- a/SSL/src/InformationRegisters/НастройкиПравОбъектов/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/НастройкиПравОбъектов/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 70 @@ -860,7 +859,6 @@ ПриСозданииНаСервере Copy - 100 DontBlock true true diff --git a/SSL/src/InformationRegisters/НастройкиПравОбъектов/ManagerModule.bsl b/SSL/src/InformationRegisters/НастройкиПравОбъектов/ManagerModule.bsl index 5607c7859..32719e8fc 100644 --- a/SSL/src/InformationRegisters/НастройкиПравОбъектов/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/НастройкиПравОбъектов/ManagerModule.bsl @@ -27,42 +27,15 @@ Попытка Блокировка.Заблокировать(); - Параметры = СтандартныеПодсистемыСервер.ПараметрыРаботыПрограммы( - "ПараметрыОграниченияДоступа"); + ЕстьТекущиеИзменения = Ложь; + СтандартныеПодсистемыСервер.ОбновитьПараметрРаботыПрограммы("ПараметрыОграниченияДоступа", + "ВозможныеПраваДляНастройкиПравОбъектов", ВозможныеПрава, ЕстьТекущиеИзменения, ТолькоПроверка); - Сохраненные = Неопределено; - - Если Параметры.Свойство("ВозможныеПраваДляНастройкиПравОбъектов") Тогда - Сохраненные = Параметры.ВозможныеПраваДляНастройкиПравОбъектов; - - Если НЕ ОбщегоНазначения.ДанныеСовпадают(ВозможныеПрава, Сохраненные) Тогда - Сохраненные = Неопределено; - КонецЕсли; - КонецЕсли; - - УстановитьПривилегированныйРежим(Истина); - - Если Сохраненные = Неопределено Тогда - ЕстьИзменения = Истина; - Если ТолькоПроверка Тогда - ЗафиксироватьТранзакцию(); - Возврат; - КонецЕсли; - СтандартныеПодсистемыСервер.УстановитьПараметрРаботыПрограммы( - "ПараметрыОграниченияДоступа", - "ВозможныеПраваДляНастройкиПравОбъектов", - ВозможныеПрава); - КонецЕсли; - - СтандартныеПодсистемыСервер.ПодтвердитьОбновлениеПараметраРаботыПрограммы( - "ПараметрыОграниченияДоступа", - "ВозможныеПраваДляНастройкиПравОбъектов"); - - Если НЕ ТолькоПроверка Тогда + Если Не ТолькоПроверка Тогда СтандартныеПодсистемыСервер.ДобавитьИзмененияПараметраРаботыПрограммы( "ПараметрыОграниченияДоступа", "ВозможныеПраваДляНастройкиПравОбъектов", - ?(Сохраненные = Неопределено, + ?(ЕстьТекущиеИзменения, Новый ФиксированнаяСтруктура("ЕстьИзменения", Истина), Новый ФиксированнаяСтруктура()) ); КонецЕсли; @@ -76,6 +49,15 @@ ВызватьИсключение; КонецПопытки; + Если ЕстьТекущиеИзменения Тогда + ЕстьИзменения = Истина; + КонецЕсли; + + Если Не (ТолькоПроверка И ЕстьТекущиеИзменения) Тогда + СтандартныеПодсистемыСервер.ПодтвердитьОбновлениеПараметраРаботыПрограммы( + "ПараметрыОграниченияДоступа", "ВозможныеПраваДляНастройкиПравОбъектов"); + КонецЕсли; + Если СнятьМонопольныйРежим Тогда УстановитьМонопольныйРежим(Ложь); КонецЕсли; @@ -396,17 +378,17 @@ Если ЕстьИзменения Тогда ОбъектыСИзменениями = Новый Массив; Иначе - ОбъектыССИзменениями = Неопределено; + ОбъектыСИзменениями = Неопределено; КонецЕсли; Если НаследованиеИзменено Тогда НаборЗаписей.Записать(); РегистрыСведений.НаследованиеНастроекПравОбъектов.ОбновитьРодителейВладельца( - СсылкаНаОбъект, , Истина, ОбъектыССИзменениями); + СсылкаНаОбъект, , Истина, ОбъектыСИзменениями); КонецЕсли; - Если ОбъектыССИзменениями <> Неопределено Тогда - ДобавитьОбъектыИерархии(СсылкаНаОбъект, ОбъектыССИзменениями); + Если ОбъектыСИзменениями <> Неопределено Тогда + ДобавитьОбъектыИерархии(СсылкаНаОбъект, ОбъектыСИзменениями); КонецЕсли; ЗафиксироватьТранзакцию(); diff --git a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/НастройкиСинхронизацииФайлов/ConditionalAppearance.dcssca b/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/НастройкиСинхронизацииФайлов/ConditionalAppearance.dcssca deleted file mode 100644 index 55f9b3e9f..000000000 --- a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/НастройкиСинхронизацииФайлов/ConditionalAppearance.dcssca +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - ДеревоОбъектовМетаданныхСинонимНаименованияОбъекта - - - - - ДеревоОбъектовМетаданных.Синхронизировать - Equal - true - - - - - Шрифт - - - - - - - - ДеревоОбъектовМетаданныхПравилоОтбора - - - - - ДеревоОбъектовМетаданных.Синхронизировать - Equal - false - - - - - Видимость - false - - - - - - - ДеревоОбъектовМетаданныхУчетнаяЗапись - - - - - ДеревоОбъектовМетаданных.Синхронизировать - Equal - true - - - ДеревоОбъектовМетаданных.УчетнаяЗапись - NotFilled - - - - - ОтметкаНезаполненного - true - - - - diff --git a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/НастройкиСинхронизацииФайлов/Form.form b/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/НастройкиСинхронизацииФайлов/Form.form index a80359032..0ad2efbf4 100644 --- a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/НастройкиСинхронизацииФайлов/Form.form +++ b/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/НастройкиСинхронизацииФайлов/Form.form @@ -571,7 +571,6 @@ true Label - true true Left @@ -695,7 +694,6 @@ true Label - true true Style.ПоясняющийТекст diff --git a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/НастройкиСинхронизацииФайлов/Module.bsl b/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/НастройкиСинхронизацииФайлов/Module.bsl index 871f8afc4..8fd7e9d06 100644 --- a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/НастройкиСинхронизацииФайлов/Module.bsl +++ b/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/НастройкиСинхронизацииФайлов/Module.bsl @@ -8,6 +8,8 @@ Возврат; КонецЕсли; + УстановитьУсловноеОформление(); + // Значения реквизитов формы РежимРаботы = ОбщегоНазначенияПовтИсп.РежимРаботыПрограммы(); РежимРаботы = Новый ФиксированнаяСтруктура(РежимРаботы); @@ -436,7 +438,7 @@ КонецПроцедуры &НаКлиенте -Процедура ОткрытьФормуНастроек(); +Процедура ОткрытьФормуНастроек() ТекущиеДанные = Элементы.ДеревоОбъектовМетаданных.ТекущиеДанные; @@ -528,12 +530,14 @@ &НаСервереБезКонтекста Процедура ОтменитьВыполнениеЗадания(ИдентификаторФоновогоЗадания) - ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторФоновогоЗадания); + Если ЗначениеЗаполнено(ИдентификаторФоновогоЗадания) Тогда + ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторФоновогоЗадания); + КонецЕсли; КонецПроцедуры &НаКлиенте Процедура ПроверитьВыполнениеФоновогоЗадания() - Если Не ЗаданиеВыполнено(ИдентификаторФоновогоЗадания) Тогда + Если ЗначениеЗаполнено(ИдентификаторФоновогоЗадания) И Не ЗаданиеВыполнено(ИдентификаторФоновогоЗадания) Тогда ПодключитьОбработчикОжидания("ПроверитьВыполнениеФоновогоЗадания", 5, Истина); Иначе ИдентификаторФоновогоЗадания = ""; @@ -556,13 +560,16 @@ ИмяМетода = РегламентноеЗаданиеМетаданные.ИмяМетода; Отбор.Вставить("ИмяМетода", ИмяМетода); Отбор.Вставить("Состояние", СостояниеФоновогоЗадания.Активно); - ФоновыеЗаданияОчистки = ФоновыеЗадания.ПолучитьФоновыеЗадания(Отбор); - Если ФоновыеЗаданияОчистки.Количество() > 0 Тогда - ИдентификаторФоновогоЗадания = ФоновыеЗаданияОчистки[0].УникальныйИдентификатор; + ФоновыеЗаданияСинхронизации = ФоновыеЗадания.ПолучитьФоновыеЗадания(Отбор); + Если ФоновыеЗаданияСинхронизации.Количество() > 0 Тогда + ИдентификаторФоновогоЗадания = ФоновыеЗаданияСинхронизации[0].УникальныйИдентификатор; Иначе - НаименованиеФоновогоЗадания = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Запуск вручную: %1'"), РегламентноеЗаданиеМетаданные.Синоним); - ФоновоеЗадание = ФоновыеЗадания.Выполнить(РегламентноеЗаданиеМетаданные.ИмяМетода, , , НаименованиеФоновогоЗадания); - ИдентификаторФоновогоЗадания = ФоновоеЗадание.УникальныйИдентификатор; + ПараметрыЗадания = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыЗадания.НаименованиеФоновогоЗадания = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Запуск вручную: %1'"), РегламентноеЗаданиеМетаданные.Синоним); + РезультатЗадания = ДлительныеОперации.ВыполнитьВФоне(РегламентноеЗаданиеМетаданные.ИмяМетода, Новый Структура, ПараметрыЗадания); + Если ЗначениеЗаполнено(ИдентификаторФоновогоЗадания) Тогда + ИдентификаторФоновогоЗадания = РезультатЗадания.ИдентификаторЗадания; + КонецЕсли; КонецЕсли; ТекущееФоновоеЗадание = "Синхронизация"; @@ -635,4 +642,51 @@ Возврат ПолучитьПараметрРегламентногоЗадания("Использование", Ложь); КонецФункции +&НаСервере +Процедура УстановитьУсловноеОформление() + + УсловноеОформление.Элементы.Очистить(); + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных("ДеревоОбъектовМетаданныхСинонимНаименованияОбъекта"); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДеревоОбъектовМетаданных.Синхронизировать"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + Элемент.Оформление.УстановитьЗначениеПараметра("Шрифт", Новый Шрифт(WindowsШрифты.ШрифтДиалоговИМеню, , , Истина, Ложь, Ложь, Ложь)); + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных("ДеревоОбъектовМетаданныхПравилоОтбора"); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДеревоОбъектовМетаданных.Синхронизировать"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Ложь; + + Элемент.Оформление.УстановитьЗначениеПараметра("Видимость", Ложь); + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных("ДеревоОбъектовМетаданныхУчетнаяЗапись"); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДеревоОбъектовМетаданных.Синхронизировать"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ДеревоОбъектовМетаданных.УчетнаяЗапись"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено; + + Элемент.Оформление.УстановитьЗначениеПараметра("ОтметкаНезаполненного", Истина); + +КонецПроцедуры + #КонецОбласти \ No newline at end of file diff --git a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ПростаяФормаЗаписиНастройки/ConditionalAppearance.dcssca b/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ПростаяФормаЗаписиНастройки/ConditionalAppearance.dcssca deleted file mode 100644 index 5f517848d..000000000 --- a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ПростаяФормаЗаписиНастройки/ConditionalAppearance.dcssca +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - ДобавитьУсловиеПоДате - - - - - Запись.Действие - NotEqual - Перечисление.ВариантыОчисткиФайлов.НеОчищать - - - - - false - Видимость - false - - - Доступность - false - - - - diff --git a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ПростаяФормаЗаписиНастройки/Form.form b/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ПростаяФормаЗаписиНастройки/Form.form index fb442c293..9bb75c316 100644 --- a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ПростаяФормаЗаписиНастройки/Form.form +++ b/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ПростаяФормаЗаписиНастройки/Form.form @@ -63,7 +63,6 @@ Укажите учетную запись облачного сервиса, с которым будет производиться синхронизация файлов. Label - true true Left @@ -81,9 +80,7 @@ true 60 - true true - false true true true diff --git a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ФормаЗаписиНастройки/ConditionalAppearance.dcssca b/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ФормаЗаписиНастройки/ConditionalAppearance.dcssca deleted file mode 100644 index 5f517848d..000000000 --- a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ФормаЗаписиНастройки/ConditionalAppearance.dcssca +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - ДобавитьУсловиеПоДате - - - - - Запись.Действие - NotEqual - Перечисление.ВариантыОчисткиФайлов.НеОчищать - - - - - false - Видимость - false - - - Доступность - false - - - - diff --git a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ФормаЗаписиНастройки/Form.form b/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ФормаЗаписиНастройки/Form.form index 9100717b2..7a8925716 100644 --- a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ФормаЗаписиНастройки/Form.form +++ b/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ФормаЗаписиНастройки/Form.form @@ -393,8 +393,6 @@ true Label - 90 - true true Style.ПоясняющийТекст diff --git a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ФормаЗаписиНастройки/Module.bsl b/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ФормаЗаписиНастройки/Module.bsl index 40dc12a11..5cd1bb833 100644 --- a/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ФормаЗаписиНастройки/Module.bsl +++ b/SSL/src/InformationRegisters/НастройкиСинхронизацииФайлов/Forms/ФормаЗаписиНастройки/Module.bsl @@ -7,10 +7,6 @@ Возврат; КонецЕсли; - Если МассивРеквизитовСТипомДата.Количество() = 0 Тогда - Элементы.ДобавитьУсловиеПоДате.Доступность = Ложь; - КонецЕсли; - Если Параметры.Свойство("ВладелецФайла") Тогда Запись.ВладелецФайла = Параметры.ВладелецФайла; Если Не ЗначениеЗаполнено(Параметры.Ключ) Тогда @@ -18,6 +14,10 @@ КонецЕсли; КонецЕсли; + Если МассивРеквизитовСТипомДата.Количество() = 0 Тогда + Элементы.ДобавитьУсловиеПоДате.Доступность = Ложь; + КонецЕсли; + Если Параметры.Свойство("ТипВладельцаФайла") Тогда Запись.ТипВладельцаФайла = Параметры.ТипВладельцаФайла; КонецЕсли; @@ -166,8 +166,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; ОповеститьОВыборе(ВозвращаемоеЗначение); КонецПроцедуры diff --git a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/НастройкаПодключенияКСервису/Form.form b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/НастройкаПодключенияКСервису/Form.form index d553b32a3..4283b6554 100644 --- a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/НастройкаПодключенияКСервису/Form.form +++ b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/НастройкаПодключенияКСервису/Form.form @@ -196,9 +196,7 @@ 17 true - 4 true - 2 true @@ -237,7 +235,6 @@ true Label - true true Style.ПоясняющийТекст diff --git a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/НастройкаПодключенияКСервису/Module.bsl b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/НастройкаПодключенияКСервису/Module.bsl index 139fe0937..89445d062 100644 --- a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/НастройкаПодключенияКСервису/Module.bsl +++ b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/НастройкаПодключенияКСервису/Module.bsl @@ -126,7 +126,7 @@ Если Не ОбменДаннымиСервер.ЕстьПодключениеККорреспонденту(Запись.Узел, ПараметрыПодключения, СообщениеПользователю) Тогда ОбщегоНазначенияКлиентСервер.СообщитьПользователю(СообщениеПользователю,, "WSПароль",, Отказ); Иначе - // Проверка подключения прошла успешно, записываем пароль если он был изменен + // Проверка подключения прошла успешно, записываем пароль, если он был изменен Если WSПарольИзменен Тогда ОбщегоНазначения.ЗаписатьДанныеВБезопасноеХранилище(Запись.Узел, WSПароль, "WSПароль"); КонецЕсли; diff --git a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ПовторнаяСинхронизацияДанныхПередЗапуском/Form.form b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ПовторнаяСинхронизацияДанныхПередЗапуском/Form.form index 09eac6064..a6d05276b 100644 --- a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ПовторнаяСинхронизацияДанныхПередЗапуском/Form.form +++ b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ПовторнаяСинхронизацияДанныхПередЗапуском/Form.form @@ -37,7 +37,6 @@ true Label - true true @@ -78,7 +77,6 @@ true Label - true true Left @@ -270,37 +268,6 @@ UserCmds Auto - - ЗаглушкаСправаАРМ - 73 - true - true - - true - - - ЗаглушкаСправаАРМРасширеннаяПодсказка - 75 - Label - true - true - - Left - - - - ЗаглушкаСправаАРМКонтекстноеМеню - 74 - true - - Label - true - true - true - - Left - - true true @@ -371,7 +338,6 @@ true Label - true true Left @@ -429,9 +395,7 @@ 36 true - 7 true - 3 true @@ -469,7 +433,6 @@ true Label - true 3 true false @@ -754,11 +717,14 @@ -1 Left + + OnOpen + ПриОткрытии + OnCreateAtServer ПриСозданииНаСервере - 56 LockWholeInterface true true diff --git a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ПовторнаяСинхронизацияДанныхПередЗапуском/Module.bsl b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ПовторнаяСинхронизацияДанныхПередЗапуском/Module.bsl index 9c00412e0..75c80797c 100644 --- a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ПовторнаяСинхронизацияДанныхПередЗапуском/Module.bsl +++ b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ПовторнаяСинхронизацияДанныхПередЗапуском/Module.bsl @@ -17,8 +17,8 @@ Если ЭтоАвтономноеРабочееМесто Тогда Элементы.СтраницыПараметрыПодключения.ТекущаяСтраница = Элементы.СтраницаАРМ; - МодульАвтономнаяРаботаСлужебный = ОбщегоНазначения.ОбщийМодуль("АвтономнаяРаботаСлужебный"); - АдресДляВосстановленияПароляУчетнойЗаписи = МодульАвтономнаяРаботаСлужебный.АдресДляВосстановленияПароляУчетнойЗаписи(); + МодульАвтономнаяРабота = ОбщегоНазначения.ОбщийМодуль("АвтономнаяРабота"); + АдресДляВосстановленияПароляУчетнойЗаписи = МодульАвтономнаяРабота.АдресДляВосстановленияПароляУчетнойЗаписи(); ДлительнаяОперацияРазрешена = Истина; Если ОбменДаннымиСервер.ПарольСинхронизацииДанныхЗадан(УзелИнформационнойБазы) Тогда @@ -37,6 +37,15 @@ КонецПроцедуры +&НаКлиенте +Процедура ПриОткрытии(Отказ) + + // Завершение предварительного обновления кэша служебных событий, + // выполненного в предыдущем обработчике события ПриСозданииНаСервере. + СтандартныеПодсистемыКлиентПовтИсп.ПараметрыРаботыКлиентаПриЗапуске(); + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиСобытийЭлементовШапкиФормы diff --git a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ФормаЗаписи/Form.form b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ФормаЗаписи/Form.form index 32809c85d..410d00532 100644 --- a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ФормаЗаписи/Form.form +++ b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ФормаЗаписи/Form.form @@ -159,7 +159,6 @@ Opening COMКаталогИнформационнойБазыОткрытие - true true true true @@ -507,37 +506,6 @@ Auto
        - - Декорация3 - 190 - true - true - - true - - - Декорация3РасширеннаяПодсказка - 192 - Label - true - true - - Left - - - - Декорация3КонтекстноеМеню - 191 - true - - Label - true - true - true - - Left - - ПроверитьПодключениеCOM 67 @@ -630,7 +598,6 @@ Left true - true true true true @@ -846,37 +813,6 @@ UserCmds Auto - - Декорация4 - 193 - true - true - - true - - - Декорация4РасширеннаяПодсказка - 195 - Label - true - true - - Left - - - - Декорация4КонтекстноеМеню - 194 - true - - Label - true - true - true - - Left - - ПроверитьПодключениеWS 96 @@ -977,7 +913,6 @@ Opening FILEКаталогОбменаИнформациейОткрытие - true true true true @@ -1099,68 +1034,6 @@ Auto
        - - Декорация5 - 196 - true - true - - true - - - Декорация5РасширеннаяПодсказка - 198 - Label - true - true - - Left - - - - Декорация5КонтекстноеМеню - 197 - true - - Label - true - true - true - - Left - - - - Декорация6 - 199 - true - true - - true - - - Декорация6РасширеннаяПодсказка - 201 - Label - true - true - - Left - - - - Декорация6КонтекстноеМеню - 200 - true - - Label - true - true - true - - Left - - ПроверитьПодключениеFILE 42 @@ -1257,7 +1130,6 @@ Left true - true true true true @@ -1538,7 +1410,6 @@ true Label - true true Left @@ -1740,37 +1611,6 @@ Auto - - Декорация7 - 202 - true - true - - true - - - Декорация7РасширеннаяПодсказка - 204 - Label - true - true - - Left - - - - Декорация7КонтекстноеМеню - 203 - true - - Label - true - true - true - - Left - - ПроверитьПодключениеFTP 41 @@ -1796,6 +1636,7 @@ Auto true true + Bottom UserCmds Auto @@ -1946,7 +1787,6 @@ true Label - true true Left @@ -2087,37 +1927,6 @@ Auto - - Декорация8 - 205 - true - true - - true - - - Декорация8РасширеннаяПодсказка - 207 - Label - true - true - - Left - - - - Декорация8КонтекстноеМеню - 206 - true - - Label - true - true - true - - Left - - ПроверитьПодключениеEMAIL 43 @@ -2301,7 +2110,6 @@ Copy Delete WriteAndClose - 78 LockOwner true true diff --git a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ФормаЗаписи/Module.bsl b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ФормаЗаписи/Module.bsl index e94d65e2a..9f79daece 100644 --- a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ФормаЗаписи/Module.bsl +++ b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/Forms/ФормаЗаписи/Module.bsl @@ -250,22 +250,22 @@ #Область СлужебныеПроцедурыИФункции &НаКлиенте -Процедура ПроверитьПодключение(ВидТранспортаСтрокой) +Процедура ПроверитьПодключение(ВидТранспортаСтрокой, НовыйПароль = Неопределено) Отказ = Ложь; ОчиститьСообщения(); - ПроверитьПодключениеНаСервере(Отказ, ВидТранспортаСтрокой); + ПроверитьПодключениеНаСервере(Отказ, ВидТранспортаСтрокой, НовыйПароль); ОповеститьПользователяОРезультатахПодключения(Отказ); КонецПроцедуры &НаСервере -Процедура ПроверитьПодключениеНаСервере(Отказ, ВидТранспортаСтрокой) +Процедура ПроверитьПодключениеНаСервере(Отказ, ВидТранспортаСтрокой, НовыйПароль) - ОбменДаннымиСервер.ПроверитьПодключениеОбработкиТранспортаСообщенийОбмена(Отказ, Запись, Перечисления.ВидыТранспортаСообщенийОбмена[ВидТранспортаСтрокой]); + ОбменДаннымиСервер.ПроверитьПодключениеОбработкиТранспортаСообщенийОбмена(Отказ, Запись, Перечисления.ВидыТранспортаСообщенийОбмена[ВидТранспортаСтрокой],, НовыйПароль); КонецПроцедуры @@ -281,10 +281,18 @@ ПараметрыСоединения.Вставить("COMИмяСервера1СПредприятия", Запись.COMИмяСервера1СПредприятия); ПараметрыСоединения.Вставить("COMКаталогИнформационнойБазы", Запись.COMКаталогИнформационнойБазы); - УстановитьПривилегированныйРежим(Истина); - ПараметрыСоединения.Вставить("COMПарольПользователя", - ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(Запись.Узел, "COMПарольПользователя", Истина)); - УстановитьПривилегированныйРежим(Ложь); + Если Не COMПарольПользователяИзменен Тогда + + УстановитьПривилегированныйРежим(Истина); + ПараметрыСоединения.Вставить("COMПарольПользователя", + ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(Запись.Узел, "COMПарольПользователя", Истина)); + УстановитьПривилегированныйРежим(Ложь); + + Иначе + + ПараметрыСоединения.Вставить("COMПарольПользователя", COMПарольПользователя); + + КонецЕсли; ОбменДаннымиВызовСервера.ВыполнитьПроверкуУстановкиВнешнегоСоединения(Отказ, ПараметрыСоединения); @@ -296,9 +304,17 @@ ПараметрыПодключения = ОбменДаннымиСервер.СтруктураПараметровWS(); ЗаполнитьЗначенияСвойств(ПараметрыПодключения, Запись); - УстановитьПривилегированныйРежим(Истина); - ПараметрыПодключения.WSПароль = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(Запись.Узел, "WSПароль", Истина); - УстановитьПривилегированныйРежим(Ложь); + Если Не WSПарольИзменен Тогда + + УстановитьПривилегированныйРежим(Истина); + ПараметрыПодключения.WSПароль = ОбщегоНазначения.ПрочитатьДанныеИзБезопасногоХранилища(Запись.Узел, "WSПароль", Истина); + УстановитьПривилегированныйРежим(Ложь); + + Иначе + + ПараметрыПодключения.WSПароль = WSПароль; + + КонецЕсли; СообщениеПользователю = ""; Если Не ОбменДаннымиСервер.ЕстьПодключениеККорреспонденту(Запись.Узел, ПараметрыПодключения, СообщениеПользователю) Тогда @@ -408,7 +424,7 @@ Если Результат = КодВозвратаДиалога.ОК Тогда - ПроверитьПодключение("FTP"); + ПроверитьПодключение("FTP", ?(FTPСоединениеПарольИзменен, FTPСоединениеПароль, Неопределено)); КонецЕсли; diff --git a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/ManagerModule.bsl b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/ManagerModule.bsl index 3a9bc648c..3a885b2e9 100644 --- a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/ManagerModule.bsl @@ -48,7 +48,7 @@ // Функция НастройкиТранспортаWS(Узел, ПараметрыАутентификации = Неопределено) Экспорт - СтруктураНастроек = ПолучитьСтруктуруНастроек("WS"); + СтруктураНастроек = СоставНастроекТранспортаОбмена("WS"); Результат = ПолучитьДанныеРегистраПоСтруктуре(Узел, СтруктураНастроек); УстановитьПривилегированныйРежим(Истина); @@ -209,6 +209,8 @@ Функция ВидТранспортаСообщенийОбменаПоУмолчанию(УзелИнформационнойБазы) Экспорт + УстановитьПривилегированныйРежим(Истина); + // Возвращаемое значение функции. ВидТранспортаСообщений = Неопределено; @@ -233,6 +235,8 @@ КонецЕсли; + УстановитьПривилегированныйРежим(Ложь); + Возврат ВидТранспортаСообщений; КонецФункции @@ -381,7 +385,7 @@ СписокПаролей = СписокПаролей + ",FTPСоединениеПароль,WSПароль,COMПарольПользователя"; Для Каждого ВидТранспорта Из Перечисления.ВидыТранспортаСообщенийОбмена Цикл - СтруктураНастроекТранспорта = ПолучитьСтруктуруНастроек(ОбщегоНазначения.ИмяЗначенияПеречисления(ВидТранспорта)); + СтруктураНастроекТранспорта = СоставНастроекТранспортаОбмена(ОбщегоНазначения.ИмяЗначенияПеречисления(ВидТранспорта)); СтруктураНастроек = ОбъединитьКоллекции(СтруктураНастроек, СтруктураНастроекТранспорта); @@ -389,7 +393,7 @@ Иначе - СтруктураНастроекТранспорта = ПолучитьСтруктуруНастроек(ОбщегоНазначения.ИмяЗначенияПеречисления(ВидТранспортаОбмена)); + СтруктураНастроекТранспорта = СоставНастроекТранспортаОбмена(ОбщегоНазначения.ИмяЗначенияПеречисления(ВидТранспортаОбмена)); СтруктураНастроек = ОбъединитьКоллекции(СтруктураНастроек, СтруктураНастроекТранспорта); Если ВидТранспортаОбмена = Перечисления.ВидыТранспортаСообщенийОбмена.COM Тогда @@ -470,7 +474,7 @@ КонецФункции -Функция ПолучитьСтруктуруНастроек(ПодстрокаПоиска) +Функция СоставНастроекТранспортаОбмена(ПодстрокаПоиска) СтруктураНастроекТранспорта = Новый Структура(); diff --git a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/НастройкиТранспортаОбмена.mdo b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/НастройкиТранспортаОбмена.mdo index 29132ea7d..b17813860 100644 --- a/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/НастройкиТранспортаОбмена.mdo +++ b/SSL/src/InformationRegisters/НастройкиТранспортаОбмена/НастройкиТранспортаОбмена.mdo @@ -559,7 +559,7 @@ УдалитьCOMПарольПользователя ru - (не используется) Пароль пользователя + (не используется) COM пароль пользователя String @@ -581,7 +581,7 @@ УдалитьFTPСоединениеПароль ru - (не используется) Пароль + (не используется) FTP соединение пароль String @@ -603,7 +603,7 @@ УдалитьWSПароль ru - (не используется) Пароль + (не используется) WS пароль String @@ -625,7 +625,7 @@ УдалитьПарольАрхиваСообщенияОбмена ru - (не используется) Пароль архива + (не используется) Пароль архива сообщения обмена String diff --git a/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаЗаписи/Form.form b/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаЗаписи/Form.form index 7f19f8d01..793b1a1a6 100644 --- a/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаЗаписи/Form.form +++ b/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаЗаписи/Form.form @@ -16,10 +16,6 @@ ИспользоватьДляВстроенногоПочтовогоКлиента 69 - - <key>ru</key> - <value>Использование для встроенного почтового клиента</value> - true true @@ -28,6 +24,7 @@ ИспользоватьВоВстроенномПочтовомКлиенте + None OnChange ИспользоватьВоВстроенномПочтовомКлиентеПриИзменении @@ -54,6 +51,7 @@ Left true + 1 1 @@ -76,546 +74,60 @@ Vertical - - ГруппаОсновныеНастройки - 71 - - ПерсональнаяУчетнаяЗапись - 49 - true - true - - true - - - Запись.ПерсональнаяУчетнаяЗапись - - Right - - OnChange - ПерсональнаяУчетнаяЗаписьПриИзменении - - - ПерсональнаяУчетнаяЗаписьExtendedTooltip - 84 - Label - true - true - - Left - - - - ПерсональнаяУчетнаяЗаписьКонтекстноеМеню - 50 - true - - CheckBoxField - Enter - true - Left - true - - - - Ответственные - 75 - - СтраницыОтветственный - 55 - - СтраницаКорпоративная - 56 - - ОтветственныйЗаОбработкуПисем - 51 - true - true - - true - - - Запись.ОтветственныйЗаОбработкуПисем - - - ОтветственныйЗаОбработкуПисемExtendedTooltip - 89 - Label - true - true - - Left - - - - ОтветственныйЗаОбработкуПисемКонтекстноеМеню - 52 - true - - InputField - true - Enter - true - Left - true - - 35 - true - true - false - true - false - true - true - true - true - Normal - - - - ОтветственныйЗаВедениеПапок - 53 - true - true - - true - - - Запись.ОтветственныйЗаВедениеПапок - - - ОтветственныйЗаВедениеПапокExtendedTooltip - 90 - Label - true - true - - Left - - - - ОтветственныйЗаВедениеПапокКонтекстноеМеню - 54 - true - - InputField - true - Enter - true - Left - true - - 35 - true - true - false - true - false - true - true - true - true - Normal - - - - УдалятьПисьмаПослеОтправки - 60 - true - true - - true - - - Запись.УдалятьПисьмаПослеОтправки - - Right - - УдалятьПисьмаПослеОтправкиExtendedTooltip - 91 - Label - true - true - - Left - - - - УдалятьПисьмаПослеОтправкиКонтекстноеМеню - 61 - true - - CheckBoxField - Enter - true - Left - true - - - true - true - - true - - - <key>ru</key> - <value>Страница корпоративная</value> - - - ru - Страница корпоративная - - - СтраницаКорпоративнаяExtendedTooltip - 88 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - СтраницаПерсональная - 57 - - ПользовательУчетнойЗаписи - 58 - true - true - - true - - - ПользовательУчетнойЗаписи - - - ПользовательУчетнойЗаписиExtendedTooltip - 93 - Label - true - true - - Left - - - - ПользовательУчетнойЗаписиКонтекстноеМеню - 59 - true - - InputField - true - Enter - true - Left - true - - 35 - true - true - false - true - false - true - true - true - true - Normal - - - - Пояснение - 73 - - <key>ru</key> - <value>Выполняет настройку почтовых папок и является ответственным за входящую корреспонденцию.</value> - - true - true - - true - - - ПояснениеExtendedTooltip - 94 - Label - true - true - - Left - - - - ПояснениеКонтекстноеМеню - 74 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница персональная</value> - - - ru - Страница персональная - - - СтраницаПерсональнаяExtendedTooltip - 92 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Страницы ответственный</value> - - - ru - Страницы ответственный - - - СтраницыОтветственныйExtendedTooltip - 87 - Label - true - true - - Left - - - Pages - - Auto - - - true - true - - true - - - <key>ru</key> - <value>Ответственные</value> - - - ОтветственныеExtendedTooltip - 85 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаПредставлениеПомещать - 72 - - ПомещатьПисьмоВПапкуПисьмаОснования - 62 - - <key>ru</key> - <value>Помещать письма в папку письма основания</value> - - true - true - - true - - - Запись.ПомещатьПисьмоВПапкуПисьмаОснования - - Right - - ПомещатьПисьмоВПапкуПисьмаОснованияExtendedTooltip - 96 - Label - true - true - - Left - - - - ПомещатьПисьмоВПапкуПисьмаОснованияКонтекстноеМеню - 63 - true - - CheckBoxField - Enter - true - Left - true - - - - ПодписьПомещатьПисьмоВПапкуПисьмаОснования - 64 - - <key>ru</key> - <value>Для таких писем правила обработки электронной почты не применяются.</value> - - true - true - - true - - - ПодписьПомещатьПисьмоВПапкуПисьмаОснованияExtendedTooltip - 97 - Label - true - true - - Left - - - - ПодписьПомещатьПисьмоВПапкуПисьмаОснованияКонтекстноеМеню - 65 - true - - Label - true - true - - Style.ПоясняющийТекст - - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа представление помещать</value> - - - ru - Группа представление помещать - - - ГруппаПредставлениеПомещатьExtendedTooltip - 95 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - - - - ВПредставлениеВключатьИмяПользователя - 67 - true - true - - true - - - Запись.ВПредставлениеВключатьИмяПользователя - - Right - - ВПредставлениеВключатьИмяПользователяExtendedTooltip - 98 - Label - true - true - - Left - - - - ВПредставлениеВключатьИмяПользователяКонтекстноеМеню - 68 - true - - CheckBoxField - Enter - true - Left - true - - + true + true + + true + + + <key>ru</key> + <value>Использование для встроенного почтового клиента:</value> + + + Style.NormalTextFont + 9.0 + + 5 + + ВидУчетнойЗаписиExtendedTooltip + 81 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + auto + Auto + Auto + + + + ГруппаОсновныеНастройки + 71 + + ВПредставлениеВключатьИмяПользователя + 67 true true true - - <key>ru</key> - <value>Группа основные настройки</value> - - - ru - Группа основные настройки - + + Запись.ВПредставлениеВключатьИмяПользователя + + Right - ГруппаОсновныеНастройкиExtendedTooltip - 83 + ВПредставлениеВключатьИмяПользователяExtendedTooltip + 98 Label true true @@ -623,16 +135,17 @@ Left
        - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - + + ВПредставлениеВключатьИмяПользователяКонтекстноеМеню + 68 + true + + CheckBoxField + Enter + true + Left + true + true true @@ -641,11 +154,16 @@ <key>ru</key> - <value>Вид учетной записи</value> + <value>Группа основные настройки</value> + + ru + Группа основные настройки + + 2 - ВидУчетнойЗаписиExtendedTooltip - 81 + ГруппаОсновныеНастройкиExtendedTooltip + 83 Label true true @@ -664,6 +182,40 @@ Auto + + УдалятьПисьмаПослеОтправки + 60 + true + true + + true + + + Запись.УдалятьПисьмаПослеОтправки + + Right + + УдалятьПисьмаПослеОтправкиExtendedTooltip + 91 + Label + true + true + + Left + + + + УдалятьПисьмаПослеОтправкиКонтекстноеМеню + 61 + true + + CheckBoxField + Enter + true + Left + true + + true true @@ -694,6 +246,651 @@ false + + ОбработкаПисем + 122 + + ГруппаПерсональнаяКорпоративнаяУчетнаяЗапись + 132 + + ПерсональнаяУчетнаяЗапись + 49 + true + true + + true + + + Запись.ПерсональнаяУчетнаяЗапись + + Right + + OnChange + ПерсональнаяУчетнаяЗаписьПриИзменении + + + ПерсональнаяУчетнаяЗаписьExtendedTooltip + 84 + Label + true + true + + Left + + + + ПерсональнаяУчетнаяЗаписьКонтекстноеМеню + 50 + true + + CheckBoxField + Enter + true + Left + true + + + + СтраницыОтветственный + 55 + + СтраницаКорпоративная + 56 + + ОтветственныйЗаОбработкуПисем + 51 + true + true + + true + + + Запись.ОтветственныйЗаОбработкуПисем + + + ОтветственныйЗаОбработкуПисемExtendedTooltip + 89 + Label + true + true + + Left + + + + ОтветственныйЗаОбработкуПисемКонтекстноеМеню + 52 + true + + InputField + true + Enter + true + Left + true + + 35 + true + true + false + true + false + true + true + true + true + Normal + + + + ОтветственныйЗаВедениеПапок + 53 + true + true + + true + + + Запись.ОтветственныйЗаВедениеПапок + + + ОтветственныйЗаВедениеПапокExtendedTooltip + 90 + Label + true + true + + Left + + + + ОтветственныйЗаВедениеПапокКонтекстноеМеню + 54 + true + + InputField + true + Enter + true + Left + true + + 35 + true + true + false + true + false + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Страница корпоративная</value> + + + ru + Страница корпоративная + + + СтраницаКорпоративнаяExtendedTooltip + 88 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СтраницаПерсональная + 57 + + ПользовательУчетнойЗаписи + 58 + true + true + + true + + + ПользовательУчетнойЗаписи + + + ПользовательУчетнойЗаписиExtendedTooltip + 93 + Label + true + true + + Left + + + + ПользовательУчетнойЗаписиКонтекстноеМеню + 59 + true + + InputField + true + Enter + true + Left + true + + 35 + true + true + false + true + false + true + true + true + true + Normal + + + + Пояснение + 73 + + <key>ru</key> + <value>Выполняет настройку почтовых папок и является ответственным за входящую корреспонденцию.</value> + + true + true + + true + + + ПояснениеExtendedTooltip + 94 + Label + true + true + + Left + + + + ПояснениеКонтекстноеМеню + 74 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + + + true + true + + true + + + <key>ru</key> + <value>Страница персональная</value> + + + ru + Страница персональная + + + СтраницаПерсональнаяExtendedTooltip + 92 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Страницы ответственный</value> + + + ru + Страницы ответственный + + + СтраницыОтветственныйExtendedTooltip + 87 + Label + true + true + + Left + + + Pages + + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа персональная корпоративная учетная запись</value> + + + ru + Группа персональная корпоративная учетная запись + + 6 + + ГруппаПерсональнаяКорпоративнаяУчетнаяЗаписьРасширеннаяПодсказка + 133 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + WeakSeparation + true + true + Auto + Auto + + + + ГруппаПредставлениеПомещать + 72 + + ПомещатьПисьмоВПапкуПисьмаОснования + 62 + + <key>ru</key> + <value>Помещать письма в папку письма основания</value> + + true + true + + true + + + Запись.ПомещатьПисьмоВПапкуПисьмаОснования + + Right + + ПомещатьПисьмоВПапкуПисьмаОснованияExtendedTooltip + 96 + Label + true + true + + Left + + + + ПомещатьПисьмоВПапкуПисьмаОснованияКонтекстноеМеню + 63 + true + + CheckBoxField + Enter + true + Left + true + + + + ПодписьПомещатьПисьмоВПапкуПисьмаОснования + 64 + + <key>ru</key> + <value>Для таких писем правила обработки электронной почты не применяются.</value> + + true + true + + true + + + ПодписьПомещатьПисьмоВПапкуПисьмаОснованияExtendedTooltip + 97 + Label + true + true + + Left + + + + ПодписьПомещатьПисьмоВПапкуПисьмаОснованияКонтекстноеМеню + 65 + true + + Label + true + + Style.ПоясняющийТекст + + + Left + + + true + true + + true + + + <key>ru</key> + <value>Группа представление помещать</value> + + + ru + Группа представление помещать + + 4 + + ГруппаПредставлениеПомещатьExtendedTooltip + 95 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + Auto + Auto + + + + ГруппаГдеИдетОбработкаПисем + 127 + + ОбработкаПисемВыполняетсяВДругомПочтовомКлиенте + 124 + + <key>ru</key> + <value>Где идет обработка писем?</value> + + true + true + + true + + + ОбработкаПисемВыполняетсяВДругомПочтовомКлиенте + + None + ShowBottom + + ОбработкаПисемВыполняетсяВДругомПочтовомКлиентеРасширеннаяПодсказка + 126 + + <key>ru</key> + <value>Признак "рассмотрено" всегда соответствует состоянию прочтения письма на почтовом сервере. Изменение признака "рассмотрено" в данном почтовом клиенте не приводит к изменению признака прочтения на сервере.</value> + + true + Label + 62 + true + + Left + + + + ОбработкаПисемВыполняетсяВДругомПочтовомКлиентеКонтекстноеМеню + 125 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + В другом почтовом клиенте + + + 1 + + + Vertical + + + + ОбработкаПисемВыполняетсяВТекущемПочтовомКлиенте + 129 + true + true + + true + + + ОбработкаПисемВыполняетсяВДругомПочтовомКлиенте + + None + ShowBottom + + ОбработкаПисемВыполняетсяВТекущемПочтовомКлиентеРасширеннаяПодсказка + 131 + + <key>ru</key> + <value>Все письма загружаются не рассмотренными. Признак "рассмотрено" не синхронизируется с признаком прочтения письма на почтовом сервере. + +</value> + + true + Label + 62 + true + true + + Left + + + + ОбработкаПисемВыполняетсяВТекущемПочтовомКлиентеКонтекстноеМеню + 130 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + В этом почтовом клиенте + + + 0 + + + Vertical + + + true + true + + true + + + <key>ru</key> + <value>Где идет обработка писем?</value> + + + Style.NormalTextFont + 9.0 + + + ru + Группа где идет обработка писем + + 6 + + ГруппаГдеИдетОбработкаПисемРасширеннаяПодсказка + 128 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + auto + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Обработка писем</value> + + + ru + Обработка писем + + + ОбработкаПисемРасширеннаяПодсказка + 123 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + СтраницаПодписьДляНового 47 @@ -868,7 +1065,6 @@ Left true - true true true true @@ -977,7 +1173,6 @@ true 10 - true 10 true true @@ -1022,10 +1217,6 @@ ru Страницы подпись для новых сообщений - - ru - Страницы подпись для новых сообщений - 35 СтраницыПодписьДляНовыхСообщенийExtendedTooltip @@ -1278,7 +1469,6 @@ Left true - true true true true @@ -1460,10 +1650,6 @@ ru Подпись при ответе или пересылке - - ru - Группа при ответе пересылке - 35 ГруппаПриОтветеПересылкеExtendedTooltip @@ -1576,6 +1762,10 @@ Left true + + NotificationProcessing + ОбработкаОповещения + OnCreateAtServer ПриСозданииНаСервере @@ -1685,6 +1875,28 @@ true + + ОбработкаПисемВыполняетсяВДругомПочтовомКлиенте + + <key>ru</key> + <value>Обработка писем выполняется в другом почтовом клиенте</value> + + 6 + + Number + + 10 + + + + true + + + true + + FunctionalOption.ИспользоватьПризнакРассмотрено + true + diff --git a/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаЗаписи/Help/ru.html b/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаЗаписи/Help/ru.html index de1d19a22..07724ebfd 100644 --- a/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаЗаписи/Help/ru.html +++ b/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаЗаписи/Help/ru.html @@ -1,19 +1,29 @@

        Предназначена для настройки параметров учетной записи электронной почты.

        Открывается по команде Настройки на панели навигации учетной записи электронной почты.

        -

        Как настроить использование учетной записи во встроенном почтовом клиенте?

        -

        На что влияет флажок Персональная учетная запись?

        -

        Как можно использовать коллективную учетную запись?

        -

        На что влияет флажок Удалять письма после отправки?

        -

        На что влияет флажок Помещать письма в папку письма основания?

        -

        Как указать, что в представление отправителя письма необходимо включать имя пользователя, указанное в учетной записи?

        -

        Как настроить подпись к письму?

        +

        Настройка использования учетной записи во встроенном почтовом клиенте.

        +

        Флажок Персональная учетная запись.

        +

        Коллективная учетная запись.

        +

        Использование коллективной учетной записи.

        +

        Флажок Удалять письма после отправки.

        +

        Флажок Помещать письма в папку письма основания.

        +

        Флажок В представление включать имя пользователя.

        +

        Использование другого почтового клиента для обработки писем.

        +

        Настройка подписей к письму.

        Настройка использования учетной записи во встроенном почтовом клиенте

        • Настройки производятся на вкладке Основное с помощью переключателя Использование для встроенного почтового клиента:
          • Выберите значение Получать, сохранять и отправлять письма с этой учетной записи во встроенном почтовом клиенте, если с данной учетной записи электронной почты планируется переписка. -
          • Если использование во внутреннем почтовом клиенте не предполагается (например, эта учетная запись используется для обменов с другими программами), то выберите значение Не использовать.

        Назначение флажка Персональная учетная запись

        +
      • Если использование во внутреннем почтовом клиенте не предполагается (например, эта учетная запись используется для обменов с другими программами), то выберите значение Не использовать.

      Включение имени пользователя, указанного в учетной записи, в представление отправителя письма

      • -
        Настройка производится на вкладке Основное.
        +
        Установите флажок В представление включать имя пользователя на вкладке Основное.

      Назначение флажка Удалять письма после отправки

      +
      • +
        Настройка производится на вкладке Основное.
        +
      • +
        Если нет необходимости хранить исходящие письма, успешно отправленные с данной учетной записи, то этот флажок должен быть включен.
        +
      • +
        В этом случае после отправки письма будут удалены.

      Назначение флажка Персональная учетная запись

      +
      • +
        Настройка производится на вкладке Обработка писем.
      • Учетные записи электронной почты во встроенном почтовом клиенте делятся на два типа: Персональные и Коллективные.
      • @@ -21,7 +31,10 @@
        • Выберите Пользователя учетной записи (ответственного за учетную запись) из списка пользователей. Поле является обязательным для заполнения.
        • -
          Для персональной учетной записи ответственный за нее управляет составом папок и является ответственным за обработку писем.
      • +
        Для персональной учетной записи ответственный за нее управляет составом папок и является ответственным за обработку писем.

      Коллективная учетная запись

      +
      • +
        Для настройки коллективной учетной записи электронной почты на вкладке Обработка писем выключите флажок Персональная учетная запись.
        +
      • Для коллективной учетной записи ответственным за папки может быть один пользователь, а ответственным за обработку писем по умолчанию другой (например, администратор программы).
        • Выберите Ответственного за обработку писем из списка пользователей. Поле является обязательным для заполнения.
          @@ -34,22 +47,28 @@
        • Состав и порядок папок для данной учетной записи определяет руководитель службы, которая отвечает за обработку претензий.
        • -
          Ответственный за первичный разбор писем - это другой сотрудник. Он обрабатывает входящую корреспонденцию и назначает письмам ответственных, которые в дальнейшем будут отвечать за обработку претензии, изложенной в письме.

        Назначение флажка Удалять письма после отправки

        +
        Ответственный за первичный разбор писем - это другой сотрудник. Он обрабатывает входящую корреспонденцию и назначает письмам ответственных, которые в дальнейшем будут отвечать за обработку претензии, изложенной в письме.

      Назначение флажка Помещать письма в папку письма-основания

      • -
        Настройка производится на вкладке Основное.
        -
      • -
        Если нет необходимости хранить исходящие письма, успешно отправленные с данной учетной записи, то этот флажок должен быть включен.
        -
      • -
        В этом случае после отправки письма будут удалены.

      Назначение флажка Помещать письма в папку письма-основания

      -
      • -
        Настройка производится на вкладке Основное.
        +
        Настройка производится на вкладке Обработка писем.
      • Если данный флажок включен, то для писем, которые являются ответом или пересылаемым письмом, не будут применяться правила обработки.
      • -
        Такие письма всегда будут помещаться в ту же папку, что и письмо-основание.
      -

      Включение имени пользователя, указанного в учетной записи, в представление отправителя письма

      +
      Такие письма всегда будут помещаться в ту же папку, что и письмо-основание.

      Использование другого почтового клиента для обработки писем (при получении писем по протоколу IMAP)

      • -
        Установите флажок В представление включать имя пользователя на вкладке Основное.
      +
      Если получение почты проходит по протоколу IMAP, то обработка входящих писем может проводиться и в другом почтовом клиенте.
      +
    • +
      С помощью переключателя на вкладке Обработка писем можно указать,  Где идет обработка писем:
      +
      • +
        В другом почтовом клиенте - в этом случае редко используется почтовый клиент программы, например, только для отправки печатных форм, или используются другие возможности отправки писем с использованием данных ИБ.
        +
        • +
          Основная работа с почтой, в том числе разборка писем выполняется в другом почтовом клиенте.
          +
        • +
          В этом случае выполняется синхронизация признака Рассмотрено в программе с признаком прочтения на почтовом сервере.
          +
        • +
          Синхронизация выполняется в одностороннем порядке. На почтовый клиент программы получаются и устанавливаются признаки прочтения с сервера. С клиента на сервер изменения признака прочтения не передается. 
          +
        • +
          При получении писем признак Рассмотрено всегда соответствует состоянию письма на почтовом сервере.
      • +
        В этом почтовом клиенте - разбор корреспонденции происходит в программе. В этом случае все входящие письма загружаются в программу не рассмотренными.
    • Настройка подписи к письму

      • Можно создать подпись двух видов:
        @@ -64,6 +83,8 @@
        Обычный текст;
      • HTML - создание подписи в формате HTML позволит форматировать текст и вставлять в него картинки.
    • +
      Для того чтобы размещать подписи, включите флажки Включать подпись для новых писем (Включать подпись при ответе или пересылке).
      +
    • Напишите подпись в соответствующем поле. При выборе формата HTML можно форматировать текст различными способами, вставлять картинки и гиперссылки. Текст можно форматировать с помощью соответствующих кнопок, а также команд меню Еще.
    • Необходимо учитывать, что при переключении ранее введенной подписи из формата HTML в Обычный текст часть информации (например, картинки, гиперссылки и другие элементы, которые существуют только в формате HTML), удаляется безвозвратно. Программа выводит об этом предупреждение. Для подтверждения нажмите Да.
      diff --git a/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаЗаписи/Module.bsl b/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаЗаписи/Module.bsl index 9ef8275ec..9b00fd932 100644 --- a/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаЗаписи/Module.bsl +++ b/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаЗаписи/Module.bsl @@ -15,9 +15,11 @@ Если НЕ Запись.НеИспользоватьВоВстроенномПочтовомКлиенте Тогда ИспользоватьВоВстроенномПочтовомКлиенте = 1; КонецЕсли; - + ОбновитьСостояниеЭлементовФормы(ЭтотОбъект); + ПриСозданииЧтенииНаСервере(); + КонецПроцедуры &НаСервере @@ -57,6 +59,10 @@ КонецЕсли; + ТекущийОбъект.ОбработкаПисемВыполняетсяВДругомПочтовомКлиенте = ?(ОбработкаПисемВыполняетсяВДругомПочтовомКлиенте = 1, Истина, Ложь); + + ПриСозданииЧтенииНаСервере(); + КонецПроцедуры &НаСервере @@ -76,11 +82,26 @@ ТекущийОбъект.ПодписьПриОтветеПересылкеФорматированныйДокумент.Получить(); КонецЕсли; + + Если Запись.ОбработкаПисемВыполняетсяВДругомПочтовомКлиенте Тогда + ОбработкаПисемВыполняетсяВДругомПочтовомКлиенте = 1; + КонецЕсли; УстановитьКартинкиСтраниц(); КонецПроцедуры +&НаКлиенте +Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) + + Если ИмяСобытия = "Запись_УчетнаяЗаписьЭлектроннойПочты" + И Источник = Запись.УчетнаяЗаписьЭлектроннойПочты Тогда + + Элементы.ГруппаГдеИдетОбработкаПисем.Видимость = НастройкаОбработкиПисемВДругомКлиентеДоступна(); + + КонецЕсли; +КонецПроцедуры + &НаСервере Процедура ПослеЗаписиНаСервере(ТекущийОбъект, ПараметрыЗаписи) @@ -305,5 +326,24 @@ КонецПроцедуры +&НаСервере +Функция НастройкаОбработкиПисемВДругомКлиентеДоступна() + + ИспользоватьПризнакРассмотрено = ПолучитьФункциональнуюОпцию("ИспользоватьПризнакРассмотрено"); + РеквизитыУЗ = ОбщегоНазначения.ЗначенияРеквизитовОбъекта( + Запись.УчетнаяЗаписьЭлектроннойПочты, + "ИспользоватьДляПолучения, ПротоколВходящейПочты"); + + Возврат ИспользоватьПризнакРассмотрено + И РеквизитыУЗ.ИспользоватьДляПолучения + И РеквизитыУЗ.ПротоколВходящейПочты = "IMAP"; + +КонецФункции + +Процедура ПриСозданииЧтенииНаСервере() + + Элементы.ГруппаГдеИдетОбработкаПисем.Видимость = НастройкаОбработкиПисемВДругомКлиентеДоступна(); + +КонецПроцедуры #КонецОбласти diff --git a/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss b/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss new file mode 100644 index 000000000..61e6fb4bb --- /dev/null +++ b/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаСписка/Attributes/Список/ExtInfo/ListSettings.dcss @@ -0,0 +1,17 @@ + + + + Normal + dfcece9d-5077-440b-b6b3-45a5cb4538eb + + + Normal + 88619765-ccb3-46c6-ac52-38e9c992ebd4 + + + Normal + b75fecce-942b-4aed-abc9-e6a02e460fb3 + + Normal + 911b6018-f537-43e8-a417-da56b22f9aec + diff --git a/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаСписка/Form.form new file mode 100644 index 000000000..ca5d2af2d --- /dev/null +++ b/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаСписка/Form.form @@ -0,0 +1,448 @@ + + + + СписокКомпоновщикНастроекПользовательскиеНастройки + 1 + true + true + + true + + + <key>ru</key> + <value>Группа пользовательских настроек</value> + + false + + СписокКомпоновщикНастроекПользовательскиеНастройкиРасширеннаяПодсказка + 2 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + WeakSeparation + true + true + Auto + Auto + + + + Список + 3 + true + true + + true + + + Список + + true + None + Copy + Create + + УчетнаяЗаписьЭлектроннойПочты + 16 + true + true + + true + + + Список.УчетнаяЗаписьЭлектроннойПочты + + true + + УчетнаяЗаписьЭлектроннойПочтыРасширеннаяПодсказка + 18 + Label + true + true + + Left + + + + УчетнаяЗаписьЭлектроннойПочтыКонтекстноеМеню + 17 + true + + LabelField + Enter + true + Left + true + + true + true + + + + ПерсональнаяУчетнаяЗапись + 19 + true + true + + true + + + Список.ПерсональнаяУчетнаяЗапись + + true + + ПерсональнаяУчетнаяЗаписьРасширеннаяПодсказка + 21 + Label + true + true + + Left + + + + ПерсональнаяУчетнаяЗаписьКонтекстноеМеню + 20 + true + + CheckBoxField + Enter + true + Left + true + + + + ОтветственныйЗаОбработкуПисем + 22 + true + true + + true + + + Список.ОтветственныйЗаОбработкуПисем + + true + + ОтветственныйЗаОбработкуПисемРасширеннаяПодсказка + 24 + Label + true + true + + Left + + + + ОтветственныйЗаОбработкуПисемКонтекстноеМеню + 23 + true + + LabelField + Enter + true + Left + true + + true + true + + + + ОтветственныйЗаВедениеПапок + 25 + true + true + + true + + + Список.ОтветственныйЗаВедениеПапок + + true + + ОтветственныйЗаВедениеПапокРасширеннаяПодсказка + 27 + Label + true + true + + Left + + + + ОтветственныйЗаВедениеПапокКонтекстноеМеню + 26 + true + + LabelField + Enter + true + Left + true + + true + true + + + + НеИспользоватьВоВстроенномПочтовомКлиенте + 28 + true + true + + true + + + Список.НеИспользоватьВоВстроенномПочтовомКлиенте + + true + + НеИспользоватьВоВстроенномПочтовомКлиентеРасширеннаяПодсказка + 30 + Label + true + true + + Left + + + + НеИспользоватьВоВстроенномПочтовомКлиентеКонтекстноеМеню + 29 + true + + CheckBoxField + Enter + true + Left + true + + + None + + СписокКоманднаяПанель + 5 + Left + + + BeforeAddRow + СписокПередНачаломДобавления + + + СписокСтрокаПоиска + 7 + + СписокСтрокаПоискаРасширеннаяПодсказка + 9 + Label + true + true + + Left + + + + СписокСтрокаПоискаКонтекстноеМеню + 8 + true + + Список + + true + + + + СписокСостояниеПросмотра + 10 + + СписокСостояниеПросмотраРасширеннаяПодсказка + 12 + Label + true + true + + Left + + + + СписокСостояниеПросмотраКонтекстноеМеню + 11 + true + + ViewStatusAddition + Список + + true + + + + СписокУправлениеПоиском + 13 + + СписокУправлениеПоискомРасширеннаяПодсказка + 15 + Label + true + true + + Left + + + + СписокУправлениеПоискомКонтекстноеМеню + 14 + true + + SearchControlAddition + Список + + true + + + + СписокРасширеннаяПодсказка + 6 + Label + true + true + + Left + + + + СписокКонтекстноеМеню + 4 + true + + true + true + true + true + true + MultiRow +
      true
      + 1 + 1 + AutoUse + AutoUse + true + true + Auto + Auto + ExpandTopLevel + true + true + true + + Список.DefaultPicture + + None + None + None + true + + 60 + + 0001-01-01T00:00:00 + 0001-01-01T00:00:00 + + + true + true + СписокКомпоновщикНастроекПользовательскиеНастройки + +
      + + ФормаКоманднаяПанель + -1 + Left + true + + Copy + Create + DontBlock + true + true + true + Vertical + true + true + true + auto + true + + Список + 1 + + DynamicList + + + true + + + true + + + Список.ВПредставлениеВключатьИмяПользователя + + + Список.ВключатьПодписьДляНовыхСообщений + + + Список.ВключатьПодписьПриОтветеПересылке + + + Список.НеИспользоватьВоВстроенномПочтовомКлиенте + + + Список.ОбработкаПисемВыполняетсяВДругомПочтовомКлиенте + + + Список.ОтветственныйЗаВедениеПапок + + + Список.ОтветственныйЗаОбработкуПисем + + + Список.ПерсональнаяУчетнаяЗапись + + + Список.ПомещатьПисьмоВПапкуПисьмаОснования + + + Список.УдалятьПисьмаПослеОтправки + + + Список.УчетнаяЗаписьЭлектроннойПочты + + + Список.ФорматПодписиДляНовыхСообщений + + + Список.ФорматПодписиПриОтветеПересылке + +
      true
      + + InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты + true + true + true + true + +
      + + + + + +
      diff --git a/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаСписка/Module.bsl b/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаСписка/Module.bsl new file mode 100644 index 000000000..52729ef7a --- /dev/null +++ b/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/Forms/ФормаСписка/Module.bsl @@ -0,0 +1,10 @@ + +#Область ОбработчикиСобытийЭлементовШапкиФормы + +&НаКлиенте +Процедура СписокПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр) + Отказ = Истина; +КонецПроцедуры + +#КонецОбласти + diff --git a/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/НастройкиУчетныхЗаписейЭлектроннойПочты.mdo b/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/НастройкиУчетныхЗаписейЭлектроннойПочты.mdo index 57d612280..e3d6bf238 100644 --- a/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/НастройкиУчетныхЗаписейЭлектроннойПочты.mdo +++ b/SSL/src/InformationRegisters/НастройкиУчетныхЗаписейЭлектроннойПочты/НастройкиУчетныхЗаписейЭлектроннойПочты.mdo @@ -16,6 +16,7 @@ InDialog InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Form.ФормаЗаписи + InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Form.ФормаСписка Use Active @@ -352,6 +353,25 @@ Use + + ОбработкаПисемВыполняетсяВДругомПочтовомКлиенте + + ru + Обработка писем выполняется в другом почтовом клиенте + + + Boolean + + + ru + Синхронизация признака прочтения не выполняется. Все письма загружаются рассмотренными. + + + + Use + Use + + УчетнаяЗаписьЭлектроннойПочты @@ -388,6 +408,15 @@ PersonalComputer MobileDevice + + ФормаСписка + + ru + Форма списка + + PersonalComputer + MobileDevice + Настройки diff --git a/SSL/src/InformationRegisters/ОбщиеНастройкиУзловИнформационныхБаз/ManagerModule.bsl b/SSL/src/InformationRegisters/ОбщиеНастройкиУзловИнформационныхБаз/ManagerModule.bsl index 4e6220665..cf9678ed6 100644 --- a/SSL/src/InformationRegisters/ОбщиеНастройкиУзловИнформационныхБаз/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/ОбщиеНастройкиУзловИнформационныхБаз/ManagerModule.bsl @@ -180,7 +180,7 @@ Продолжить; КонецЕсли; - МассивУзлов = ОбменДаннымиПовтИсп.ПолучитьМассивУзловПланаОбмена(ИмяПланаОбмена); + МассивУзлов = ОбменДаннымиПовтИсп.УзлыПланаОбмена(ИмяПланаОбмена); Для Каждого Узел Из МассивУзлов Цикл @@ -263,6 +263,8 @@ Функция ВыполнитьОтправкуДанных(Знач Получатель) Экспорт + УстановитьПривилегированныйРежим(Истина); + Если Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда Возврат Ложь; КонецЕсли; @@ -289,6 +291,7 @@ Выборка.Следующий(); Возврат Выборка.ВыполнитьОтправкуДанных = Истина; + КонецФункции // diff --git a/SSL/src/InformationRegisters/ПараметрыРаботыВерсийРасширений/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ПараметрыРаботыВерсийРасширений/Forms/ФормаСписка/Form.form index 7868756a2..428a8b657 100644 --- a/SSL/src/InformationRegisters/ПараметрыРаботыВерсийРасширений/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ПараметрыРаботыВерсийРасширений/Forms/ФормаСписка/Form.form @@ -288,8 +288,6 @@ OnCreateAtServer ПриСозданииНаСервере - 80 - 8 DontBlock true true diff --git a/SSL/src/InformationRegisters/ПараметрыРаботыВерсийРасширений/ManagerModule.bsl b/SSL/src/InformationRegisters/ПараметрыРаботыВерсийРасширений/ManagerModule.bsl new file mode 100644 index 000000000..98647e18b --- /dev/null +++ b/SSL/src/InformationRegisters/ПараметрыРаботыВерсийРасширений/ManagerModule.bsl @@ -0,0 +1,184 @@ +#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда + +#Область СлужебныйПрограммныйИнтерфейс + +// Возвращает хранилище значения параметра для текущей версии расширений. +// Если не заполнен, возвращает Неопределено. +// +// Параметры: +// ИмяПараметра - Строка - не более 128 символов. Например, +// "СтандартныеПодсистемы.ВариантыОтчетов.ОтчетыСНастройками". +// +// Возвращаемое значение: +// ХранилищеЗначения - если параметр заполнен для текущей версии расширений. +// Неопределено - если параметр не заполнен для текущей версии расширений. +// +Функция ПараметрРаботыРасширения(ИмяПараметра) Экспорт + + Запрос = Новый Запрос; + Запрос.УстановитьПараметр("ВерсияРасширений", ПараметрыСеанса.ВерсияРасширений); + Запрос.УстановитьПараметр("ИмяПараметра", ИмяПараметра); + Запрос.Текст = + "ВЫБРАТЬ + | ПараметрыРаботыВерсийРасширений.ХранилищеПараметра + |ИЗ + | РегистрСведений.ПараметрыРаботыВерсийРасширений КАК ПараметрыРаботыВерсийРасширений + |ГДЕ + | ПараметрыРаботыВерсийРасширений.ВерсияРасширений = &ВерсияРасширений + | И ПараметрыРаботыВерсийРасширений.ИмяПараметра = &ИмяПараметра"; + + Выборка = Запрос.Выполнить().Выбрать(); + Если Выборка.Следующий() Тогда + Возврат Выборка.ХранилищеПараметра; + КонецЕсли; + + Возврат Неопределено; + +КонецФункции + +// Устанавливает хранилище значения параметра для текущей версии расширений. +// Используется для заполнения значений параметров. +// Перед вызовом требуется установить привилегированный режим. +// +// Параметры: +// ИмяПараметра - Строка - не более 128 символов. Например, +// "СтандартныеПодсистемы.ВариантыОтчетов.ОтчетыСНастройками". +// +// Хранилище - ХранилищеЗначения - хранилище, содержащее значение параметра. +// +Процедура УстановитьПараметрРаботыРасширения(ИмяПараметра, Хранилище) Экспорт + + ВерсияРасширений = ПараметрыСеанса.ВерсияРасширений; + + НаборЗаписей = РегистрыСведений.ПараметрыРаботыВерсийРасширений.СоздатьНаборЗаписей(); + НаборЗаписей.Отбор.ВерсияРасширений.Установить(ВерсияРасширений); + НаборЗаписей.Отбор.ИмяПараметра.Установить(ИмяПараметра); + + НоваяЗапись = НаборЗаписей.Добавить(); + НоваяЗапись.ВерсияРасширений = ВерсияРасширений; + НоваяЗапись.ИмяПараметра = ИмяПараметра; + НоваяЗапись.ХранилищеПараметра = Хранилище; + + НаборЗаписей.ОбменДанными.Загрузка = Истина; + НаборЗаписей.Записать(); + +КонецПроцедуры + +// Вызывает принудительное заполнение всех параметров работы для текущей версии расширений. +Процедура ЗаполнитьВсеПараметрыРаботыРасширений() Экспорт + + Если Не Справочники.ВерсииРасширений.УстановленныеРасширенияДоступны() Тогда + Возврат; + КонецЕсли; + + // Заполнить идентификаторы объектов метаданных расширений. + Если ЗначениеЗаполнено(ПараметрыСеанса.ПодключенныеРасширения) Тогда + Обновить = Справочники.ИдентификаторыОбъектовМетаданных.ИдентификаторыОбъектовТекущейВерсииРасширенийЗаполнены(); + СтандартныеПодсистемыПовтИсп.ИдентификаторыОбъектовМетаданныхПроверкаИспользования(Истина, Истина); + Иначе + Обновить = Истина; + КонецЕсли; + + Если Обновить Тогда + Справочники.ИдентификаторыОбъектовРасширений.ОбновитьДанныеСправочника(); + КонецЕсли; + + ИнтеграцияСтандартныхПодсистем.ПриЗаполненииВсехПараметровРаботыРасширений(); + +КонецПроцедуры + +// Вызывает принудительную очистку всех параметров работы для текущей версии расширений. +// Очищаются только регистры, справочники не изменяются. Вызывается, чтобы вызвать +// перезаполнение параметров работы расширений, например, при использовании параметра +// запуска ЗапуститьОбновлениеИнформационнойБазы. +// +// Общий регистр ПараметрыРаботыВерсийРасширений очищается автоматически. Если используются +// собственные регистры сведений, которых хранят версии кэшей объектов метаданных расширений, +// тогда требуется подключиться к событию ПриОчисткеВсехПараметровРаботыРасширений +// общего модуля ИнтеграцияСтандартныхПодсистем. +// +Процедура ОчиститьВсеПараметрыРаботыРасширений() Экспорт + + Если Не ОбщегоНазначенияПовтИсп.ДоступноИспользованиеРазделенныхДанных() Тогда + Возврат; + КонецЕсли; + + УстановитьПривилегированныйРежим(Истина); + + НачатьТранзакцию(); + Попытка + НаборЗаписей = РегистрыСведений.ИдентификаторыОбъектовВерсийРасширений.СоздатьНаборЗаписей(); + НаборЗаписей.Отбор.ВерсияРасширений.Установить(ПараметрыСеанса.ВерсияРасширений); + НаборЗаписей.ОбменДанными.Загрузка = Истина; + НаборЗаписей.Записать(); + + НаборЗаписей = РегистрыСведений.ПараметрыРаботыВерсийРасширений.СоздатьНаборЗаписей(); + НаборЗаписей.Отбор.ВерсияРасширений.Установить(ПараметрыСеанса.ВерсияРасширений); + НаборЗаписей.ОбменДанными.Загрузка = Истина; + НаборЗаписей.Записать(); + + ИнтеграцияСтандартныхПодсистем.ПриОчисткеВсехПараметровРаботыРасширений(); + + ЗафиксироватьТранзакцию(); + Исключение + ОтменитьТранзакцию(); + ВызватьИсключение; + КонецПопытки; + + ОбновитьПовторноИспользуемыеЗначения(); + +КонецПроцедуры + +// Для общей формы УстановленныеРасширения. +Процедура ЗаполнитьВсеПараметрыРаботыРасширенийФоновоеЗадание(Параметры) Экспорт + + ТекстОшибки = ""; + НеподключенныеРасширения = ""; + + Если Параметры.ИмяКонфигурации <> Метаданные.Имя + Или Параметры.ВерсияКонфигурации <> Метаданные.Версия Тогда + ТекстОшибки = + НСтр("ru = 'Не удалось обновить все параметры работы расширений, так как + |изменилось имя или версия конфигурации - требуется перезапуск сеанса.'"); + КонецЕсли; + + Если Параметры.УстановленныеРасширения <> ПараметрыСеанса.УстановленныеРасширения Тогда + ТекстОшибки = + НСтр("ru = 'Не удалось обновить все параметры работы расширений, + |так как указанный состав расширений отличается от текущего.'"); + КонецЕсли; + + Если ТипЗнч(Параметры.ПроверяемыеРасширения) = Тип("Соответствие") Тогда + Расширения = РасширенияКонфигурации.Получить(, ИсточникРасширенийКонфигурации.СеансАктивные); + ПодключенныеРасширения = Новый Массив; + Для Каждого Расширение Из Расширения Цикл + ПодключенныеРасширения.Добавить(Расширение.Имя); + КонецЦикла; + Для Каждого ПроверяемоеРасширение Из Параметры.ПроверяемыеРасширения Цикл + Если ПодключенныеРасширения.Найти(ПроверяемоеРасширение.Ключ) = Неопределено Тогда + НеподключенныеРасширения = НеподключенныеРасширения + + ?(НеподключенныеРасширения = "", "", ", ") + ПроверяемоеРасширение.Значение; + КонецЕсли; + КонецЦикла; + КонецЕсли; + + Если Не ЗначениеЗаполнено(ТекстОшибки) Тогда + Попытка + ЗаполнитьВсеПараметрыРаботыРасширений(); + Исключение + ИнформацияОбОшибке = ИнформацияОбОшибке(); + ТекстОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); + КонецПопытки; + КонецЕсли; + + Результат = Новый Структура; + Результат.Вставить("ТекстОшибки", ТекстОшибки); + Результат.Вставить("НеподключенныеРасширения", НеподключенныеРасширения); + + ПоместитьВоВременноеХранилище(Результат, Параметры.АдресРезультата); + +КонецПроцедуры + +#КонецОбласти + +#КонецЕсли \ No newline at end of file diff --git a/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/МакетыПечатныхФорм/Form.form b/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/МакетыПечатныхФорм/Form.form index 2af9d6d39..61c794a75 100644 --- a/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/МакетыПечатныхФорм/Form.form +++ b/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/МакетыПечатныхФорм/Form.form @@ -167,11 +167,6 @@ ru Группа отборы - - ru - Группа отборы - - false ГруппаОтборыExtendedTooltip 81 diff --git a/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/МакетыПечатныхФорм/Module.bsl b/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/МакетыПечатныхФорм/Module.bsl index 4d07cb109..8eee081e0 100644 --- a/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/МакетыПечатныхФорм/Module.bsl +++ b/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/МакетыПечатныхФорм/Module.bsl @@ -73,7 +73,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; Параметр = Новый Структура("Отказ", Ложь); Оповестить("ЗакрытиеФормыВладельца", Параметр, ЭтотОбъект); diff --git a/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/ПроверкаПечатныхФорм/Form.form b/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/ПроверкаПечатныхФорм/Form.form index ed8ab1d88..125f37ea5 100644 --- a/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/ПроверкаПечатныхФорм/Form.form +++ b/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/ПроверкаПечатныхФорм/Form.form @@ -30,9 +30,7 @@ 10 true - 4 true - 2 true @@ -45,9 +43,7 @@ 12 <key>ru</key> - <value>Рекомендуется проверить совместимость отредактированных макетов -печатных форм с текущей версией программы. -Если печатные формы открываются некорректно, то рекомендуется использовать стандартный макет.</value> + <value>Рекомендуется проверить совместимость отредактированных макетов печатных форм с текущей версией программы. Если печатные формы открываются некорректно, то рекомендуется использовать стандартный макет.</value> true true @@ -70,7 +66,6 @@ true Label - true true Left @@ -186,7 +181,6 @@ Right - 60 LockOwner true true diff --git a/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/РедактированиеМакета/Form.form b/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/РедактированиеМакета/Form.form index d0770570f..003086caa 100644 --- a/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/РедактированиеМакета/Form.form +++ b/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/РедактированиеМакета/Form.form @@ -1,5 +1,5 @@ - + <key>ru</key> <value>Изменение макета печатной формы</value> @@ -40,9 +40,7 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> </extInfo> @@ -75,16 +73,7 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> - <font xsi:type="core:FontRef"> - <font>System.DefaultGUIFont</font> - <bold>false</bold> - <italic>false</italic> - <underline>true</underline> - <strikeout>false</strikeout> - </font> <extInfo xsi:type="form:LabelDecorationExtInfo"> <handlers> <event>Click</event> @@ -122,9 +111,7 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> </extInfo> @@ -189,9 +176,7 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> </extInfo> @@ -224,16 +209,7 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> - <font xsi:type="core:FontRef"> - <font>System.DefaultGUIFont</font> - <bold>false</bold> - <italic>false</italic> - <underline>true</underline> - <strikeout>false</strikeout> - </font> <extInfo xsi:type="form:LabelDecorationExtInfo"> <handlers> <event>Click</event> @@ -271,9 +247,7 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> </extInfo> @@ -342,9 +316,7 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> </extInfo> @@ -377,16 +349,7 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> - <font xsi:type="core:FontRef"> - <font>System.DefaultGUIFont</font> - <bold>false</bold> - <italic>false</italic> - <underline>true</underline> - <strikeout>false</strikeout> - </font> <extInfo xsi:type="form:LabelDecorationExtInfo"> <handlers> <event>Click</event> @@ -460,9 +423,7 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> <extInfo xsi:type="form:LabelDecorationExtInfo"> <horizontalAlign>Left</horizontalAlign> </extInfo> @@ -495,16 +456,7 @@ <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <horizontalStretch>true</horizontalStretch> - <font xsi:type="core:FontRef"> - <font>System.DefaultGUIFont</font> - <bold>false</bold> - <italic>false</italic> - <underline>true</underline> - <strikeout>false</strikeout> - </font> <extInfo xsi:type="form:LabelDecorationExtInfo"> <handlers> <event>Click</event> @@ -572,25 +524,111 @@ </extInfo> </items> <items xsi:type="form:FormGroup"> - <name>КоманднаяПанель</name> - <id>28</id> + <name>ГруппаКоманднаяПанель</name> + <id>89</id> <items xsi:type="form:FormGroup"> - <name>ПанельЗагрузка</name> - <id>29</id> + <name>КоманднаяПанель</name> + <id>28</id> <items xsi:type="form:FormGroup"> - <name>ГруппаКнопокЗагрузка</name> - <id>22</id> - <items xsi:type="form:Button"> - <name>КнопкаИзменить</name> - <id>25</id> + <name>ПанельЗагрузка</name> + <id>29</id> + <items xsi:type="form:FormGroup"> + <name>ГруппаКнопокЗагрузка</name> + <id>22</id> + <items xsi:type="form:Button"> + <name>КнопкаИзменить</name> + <id>25</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <extendedTooltip> + <name>КнопкаИзменитьExtendedTooltip</name> + <id>81</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <commandName>Form.Command.Изменить</commandName> + <buttonImportance>Normal</buttonImportance> + <representation>Auto</representation> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <placementArea>UserCmds</placementArea> + <representationInContextMenu>Auto</representationInContextMenu> + </items> + <items xsi:type="form:Button"> + <name>КнопкаОтменаЗагрузки</name> + <id>27</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <extendedTooltip> + <name>КнопкаОтменаЗагрузкиExtendedTooltip</name> + <id>82</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <commandName>Form.Command.Отмена</commandName> + <buttonImportance>Normal</buttonImportance> + <representation>Auto</representation> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <placementArea>UserCmds</placementArea> + <representationInContextMenu>Auto</representationInContextMenu> + </items> + <items xsi:type="form:Button"> + <name>КнопкаСправкаЗагрузка</name> + <id>31</id> + <visible>true</visible> + <enabled>true</enabled> + <userVisible> + <common>true</common> + </userVisible> + <extendedTooltip> + <name>КнопкаСправкаЗагрузкаExtendedTooltip</name> + <id>83</id> + <type>Label</type> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <extInfo xsi:type="form:LabelDecorationExtInfo"> + <horizontalAlign>Left</horizontalAlign> + </extInfo> + </extendedTooltip> + <commandName>Form.StandardCommand.Help</commandName> + <buttonImportance>Normal</buttonImportance> + <representation>Auto</representation> + <autoMaxWidth>true</autoMaxWidth> + <autoMaxHeight>true</autoMaxHeight> + <placementArea>UserCmds</placementArea> + <representationInContextMenu>Auto</representationInContextMenu> + </items> <visible>true</visible> <enabled>true</enabled> <userVisible> <common>true</common> </userVisible> + <title> + <key>ru</key> + <value>Группа кнопок загрузка</value> + + + ru + Группа кнопок загрузка + - КнопкаИзменитьExtendedTooltip - 81 + ГруппаКнопокЗагрузкаExtendedTooltip + 80 Label true true @@ -598,65 +636,10 @@ Left - Form.Command.Изменить - Normal - Auto - true - true - UserCmds - Auto - - - КнопкаОтменаЗагрузки - 27 - true - true - - true - - - КнопкаОтменаЗагрузкиExtendedTooltip - 82 - Label - true - true - - Left - - - Form.Command.Отмена - Normal - Auto - true - true - UserCmds - Auto - - - КнопкаСправкаЗагрузка - 31 - true - true - - true - - - КнопкаСправкаЗагрузкаExtendedTooltip - 83 - Label - true - true - - Left - - - Form.StandardCommand.Help - Normal - Auto - true - true - UserCmds - Auto + CommandBar + + Right + true true @@ -665,15 +648,15 @@ <key>ru</key> - <value>Группа кнопок загрузка</value> + <value>Панель загрузка</value> ru - Группа кнопок загрузка + Панель загрузка - ГруппаКнопокЗагрузкаExtendedTooltip - 80 + ПанельЗагрузкаExtendedTooltip + 79 Label true true @@ -681,9 +664,151 @@ Left - CommandBar - - Right + Page + + Vertical + false + + + + ПанельЗавершениеИзменения + 30 + + ГруппаКнопокЗавершениеИзменения + 23 + + КнопкаЗавершитьИзменение + 9 + true + true + + true + + + КнопкаЗавершитьИзменениеExtendedTooltip + 86 + Label + true + true + + Left + + + Form.Command.ЗавершитьИзменение + Auto + true + true + true + UserCmds + Auto + + + КнопкаСправкаЗавершениеИзменения + 24 + true + true + + true + + + КнопкаСправкаЗавершениеИзмененияExtendedTooltip + 87 + Label + true + true + + Left + + + Form.StandardCommand.Help + Normal + Auto + true + true + UserCmds + Auto + + + КнопкаОтменаИзменений + 32 + true + true + + true + + + КнопкаОтменаИзмененийExtendedTooltip + 88 + Label + true + true + + Left + + + Form.Command.Отмена + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Группа кнопок завершение изменения</value> + + + ru + Группа кнопок завершение изменения + + + ГруппаКнопокЗавершениеИзмененияExtendedTooltip + 85 + Label + true + true + + Left + + + CommandBar + + Right + + + true + true + + true + + + <key>ru</key> + <value>Панель завершение изменения</value> + + + ru + Панель завершение изменения + + + ПанельЗавершениеИзмененияExtendedTooltip + 84 + Label + true + true + + Left + + + Page + + Vertical + false true @@ -693,15 +818,11 @@ <key>ru</key> - <value>Панель загрузка</value> + <value>Командная панель</value> - - ru - Панель загрузка - - ПанельЗагрузкаExtendedTooltip - 79 + КоманднаяПанельExtendedTooltip + 78 Label true true @@ -709,151 +830,9 @@ Left - Page - - Vertical - false - - - - ПанельЗавершениеИзменения - 30 - - ГруппаКнопокЗавершениеИзменения - 23 - - КнопкаЗавершитьИзменение - 9 - true - true - - true - - - КнопкаЗавершитьИзменениеExtendedTooltip - 86 - Label - true - true - - Left - - - Form.Command.ЗавершитьИзменение - Auto - true - true - true - UserCmds - Auto - - - КнопкаСправкаЗавершениеИзменения - 24 - true - true - - true - - - КнопкаСправкаЗавершениеИзмененияExtendedTooltip - 87 - Label - true - true - - Left - - - Form.StandardCommand.Help - Normal - Auto - true - true - UserCmds - Auto - - - КнопкаОтменаИзменений - 32 - true - true - - true - - - КнопкаОтменаИзмененийExtendedTooltip - 88 - Label - true - true - - Left - - - Form.Command.Отмена - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Группа кнопок завершение изменения</value> - - - ru - Группа кнопок завершение изменения - - - ГруппаКнопокЗавершениеИзмененияExtendedTooltip - 85 - Label - true - true - - Left - - - CommandBar - - Right - - - true - true - - true - - - <key>ru</key> - <value>Панель завершение изменения</value> - - - ru - Панель завершение изменения - - - ПанельЗавершениеИзмененияExtendedTooltip - 84 - Label - true - true - - Left - - - Page - - Vertical - false + Pages + + Auto true @@ -863,16 +842,16 @@ <key>ru</key> - <value>Командная панель</value> + <value>Группа командная панель</value> ru - Командная панель + Группа командная панель - true + true - КоманднаяПанельExtendedTooltip - 78 + ГруппаКоманднаяПанельРасширеннаяПодсказка + 90 Label true true @@ -880,8 +859,13 @@ Left - Pages - + UsualGroup + + Bottom + Auto + true + true + Auto Auto @@ -914,7 +898,7 @@ Retry SaveValues Yes - 60 + 55 LockOwner true true @@ -938,7 +922,9 @@ true - + + true + ИмяФайлаМакета @@ -1151,7 +1137,9 @@ true - + + true + ЗавершитьИзменение diff --git a/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/РедактированиеМакета/Module.bsl b/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/РедактированиеМакета/Module.bsl index 8409300ef..31407aaa7 100644 --- a/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/РедактированиеМакета/Module.bsl +++ b/SSL/src/InformationRegisters/ПользовательскиеМакетыПечати/Forms/РедактированиеМакета/Module.bsl @@ -62,12 +62,16 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) Если Не ПустаяСтрока(ВременнаяПапка) Тогда УдалитьФайлы(ВременнаяПапка); КонецЕсли; + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + ИмяСобытия = "ОтказОтИзмененияМакета"; Если МакетЗагружен Тогда ИмяСобытия = "Запись_ПользовательскиеМакетыПечати"; diff --git a/SSL/src/InformationRegisters/ПользовательскиеНастройкиДоступаКОбработкам/ManagerModule.bsl b/SSL/src/InformationRegisters/ПользовательскиеНастройкиДоступаКОбработкам/ManagerModule.bsl index 28ea3dbee..651d01ac2 100644 --- a/SSL/src/InformationRegisters/ПользовательскиеНастройкиДоступаКОбработкам/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/ПользовательскиеНастройкиДоступаКОбработкам/ManagerModule.bsl @@ -2,20 +2,33 @@ #Область СлужебныеПроцедурыИФункции -// Записывает настройки быстрого доступа к обработкам "по пользователям". -// -Процедура ОбновитьДанныеПриЗаписиДополнительногоОбъекта(ДополнительныйОтчетИлиОбработка, БыстрыйДоступ) Экспорт +// Записывает таблицу настроек в данные регистра по указанным измерениям. +Процедура ЗаписатьПакетНастроек(ТаблицаНастроек, ЗначенияИзмерений, ЗначенияРесурсов, УдалятьСтарые) Экспорт + НаборЗаписей = СоздатьНаборЗаписей(); - НаборЗаписей.Отбор.ДополнительныйОтчетИлиОбработка.Установить(ДополнительныйОтчетИлиОбработка); - - Для Каждого СтрокаТаблицы Из БыстрыйДоступ Цикл - Запись = НаборЗаписей.Добавить(); - Запись.ДополнительныйОтчетИлиОбработка = ДополнительныйОтчетИлиОбработка; - ЗаполнитьЗначенияСвойств(Запись, СтрокаТаблицы); - Запись.Доступно = Истина; + Для Каждого КлючИЗначение Из ЗначенияИзмерений Цикл + НаборЗаписей.Отбор[КлючИЗначение.Ключ].Установить(КлючИЗначение.Значение, Истина); + ТаблицаНастроек.Колонки.Добавить(КлючИЗначение.Ключ); + ТаблицаНастроек.ЗаполнитьЗначения(КлючИЗначение.Значение, КлючИЗначение.Ключ); КонецЦикла; - + Для Каждого КлючИЗначение Из ЗначенияРесурсов Цикл + ТаблицаНастроек.Колонки.Добавить(КлючИЗначение.Ключ); + ТаблицаНастроек.ЗаполнитьЗначения(КлючИЗначение.Значение, КлючИЗначение.Ключ); + КонецЦикла; + Если Не УдалятьСтарые Тогда + НаборЗаписей.Прочитать(); + СтарыеЗаписи = НаборЗаписей.Выгрузить(); + ПоискПоИзмерениям = Новый Структура("ДополнительныйОтчетИлиОбработка, ИдентификаторКоманды, Пользователь"); + Для Каждого СтараяЗапись Из СтарыеЗаписи Цикл + ЗаполнитьЗначенияСвойств(ПоискПоИзмерениям, СтараяЗапись); + Если ТаблицаНастроек.НайтиСтроки(ПоискПоИзмерениям).Количество() = 0 Тогда + ЗаполнитьЗначенияСвойств(ТаблицаНастроек.Добавить(), СтараяЗапись); + КонецЕсли; + КонецЦикла; + КонецЕсли; + НаборЗаписей.Загрузить(ТаблицаНастроек); НаборЗаписей.Записать(Истина); + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/InformationRegisters/ПраваРолей/Forms/ФормаЗаписи/Form.form b/SSL/src/InformationRegisters/ПраваРолей/Forms/ФормаЗаписи/Form.form index c33052eb5..be48c9a94 100644 --- a/SSL/src/InformationRegisters/ПраваРолей/Forms/ФормаЗаписи/Form.form +++ b/SSL/src/InformationRegisters/ПраваРолей/Forms/ФормаЗаписи/Form.form @@ -32,6 +32,7 @@ Left true + 40 true true true @@ -367,11 +368,6 @@ ru Программные действия пользователя - - ru - Программные действия пользователя - - 60 ПрограммныеДействияПользователяExtendedTooltip 35 @@ -507,11 +503,6 @@ ru Интерактивные действия пользователя (основные) - - ru - Интерактивные действия пользователя (основные) - - 60 ИнтерактивныеДействияПользователяExtendedTooltip 46 diff --git a/SSL/src/InformationRegisters/ПраваРолей/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ПраваРолей/Forms/ФормаСписка/Form.form index de4ef0a8c..f58cfccf5 100644 --- a/SSL/src/InformationRegisters/ПраваРолей/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ПраваРолей/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 57 diff --git a/SSL/src/InformationRegisters/ПраваРолей/Forms/ФормаСписка/Module.bsl b/SSL/src/InformationRegisters/ПраваРолей/Forms/ФормаСписка/Module.bsl index f9b697378..92e8cb13c 100644 --- a/SSL/src/InformationRegisters/ПраваРолей/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/InformationRegisters/ПраваРолей/Forms/ФормаСписка/Module.bsl @@ -15,7 +15,7 @@ Список.Параметры.УстановитьЗначениеПараметра("ОбъектМетаданных", Параметры.ОбъектМетаданных); Если ЗначениеЗаполнено(Параметры.ОбъектМетаданных) Тогда - Элементы.ОбъектМетаданных.Видимость = Ложь; + Элементы.СписокОбъектМетаданных.Видимость = Ложь; КонецЕсли; КонецПроцедуры diff --git a/SSL/src/InformationRegisters/ПраваРолей/ManagerModule.bsl b/SSL/src/InformationRegisters/ПраваРолей/ManagerModule.bsl index da425105b..f54de1c55 100644 --- a/SSL/src/InformationRegisters/ПраваРолей/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/ПраваРолей/ManagerModule.bsl @@ -144,22 +144,16 @@ УправлениеДоступомСлужебный.ОбновитьРегистрСведений(Данные, ЕстьИзменения); - Если ТолькоПроверка Тогда - ЗафиксироватьТранзакцию(); - Возврат; - КонецЕсли; - - Изменения.Свернуть( - "ОбъектМетаданных, Роль, Добавление, Изменение", "ВидИзмененияСтроки"); - - ЛишниеСтроки = Изменения.НайтиСтроки(Новый Структура("ВидИзмененияСтроки", 0)); - Для каждого Строка Из ЛишниеСтроки Цикл - Изменения.Удалить(Строка); - КонецЦикла; - - Изменения.Свернуть("ОбъектМетаданных"); - - Если НЕ ТолькоПроверка Тогда + Если Не ТолькоПроверка Тогда + Изменения.Свернуть("ОбъектМетаданных, Роль, Добавление, Изменение", "ВидИзмененияСтроки"); + + ЛишниеСтроки = Изменения.НайтиСтроки(Новый Структура("ВидИзмененияСтроки", 0)); + Для каждого Строка Из ЛишниеСтроки Цикл + Изменения.Удалить(Строка); + КонецЦикла; + + Изменения.Свернуть("ОбъектМетаданных"); + СтандартныеПодсистемыСервер.ДобавитьИзмененияПараметраРаботыПрограммы( "ПараметрыОграниченияДоступа", "ОбъектыМетаданныхПравРолей", @@ -293,13 +287,14 @@ // Функция возвращает поля объекта метаданных по которым может ограничиваться доступ. // // Параметры: -// ОбъектМетаданных - ОбъектМетаданных -// ОбъектИБ - Неопределено, COMОбъект -// ПолучитьМассивИмен - Булево. +// ОбъектМетаданных - ОбъектМетаданных - объект по которому нужно вернуть поля. +// ОбъектИБ - Неопределено - использовать текущую конфигурацию, +// - COMОбъект - использовать соединение с конфигурацией по COM. +// ПолучитьМассивИмен - Булево - тип результата. // // Возвращаемое значение: -// Строка (имен через запятую). -// Если ПолучитьМассивИмен = Истина, тогда Массив строк. +// Строка - имена через запятую, если ПолучитьМассивИмен = Ложь. +// Массив - со значениями типа Строка, если ПолучитьМассивИмен = Истина. // Функция ВсеПоляОграниченияДоступаОбъектаМетаданных(ОбъектМетаданных, ПолноеИмя, diff --git a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ЗагрузитьПравилаСинхронизацииДанных/Form.form b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ЗагрузитьПравилаСинхронизацииДанных/Form.form index 0ebdc72f2..5e99591ac 100644 --- a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ЗагрузитьПравилаСинхронизацииДанных/Form.form +++ b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ЗагрузитьПравилаСинхронизацииДанных/Form.form @@ -67,86 +67,20 @@ - ГруппаИсточникиПравил - 15 - - ИсточникМакетКонфигурации - 16 - - СтраницаОдинМакет - 97 - - ПустаяДекорация - 99 - true - true - - true - - - ПустаяДекорацияРасширеннаяПодсказка - 101 - Label - true - true - - Left - - - - ПустаяДекорацияКонтекстноеМеню - 100 - true - - Label - true - true - - Left - - - true - true - - true - - - ru - Страница один макет - - - СтраницаОдинМакетРасширеннаяПодсказка - 98 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - + ИсточникФайл + 17 + + ЗагрузитьТиповыеПравила + 19 true true true - - <key>ru</key> - <value>Источник макет конфигурации</value> - - - ru - Источник макет конфигурации - + true - ИсточникМакетКонфигурацииExtendedTooltip - 58 + ЗагрузитьТиповыеПравилаExtendedTooltip + 61 Label true true @@ -154,74 +88,15 @@ Left - Pages - - Auto - - - - ИсточникФайл - 17 - - ЗагрузитьТиповыеПравила - 19 - true - true - - true - - true - - ЗагрузитьТиповыеПравилаExtendedTooltip - 61 - Label - true - true - - Left - - - UsualButton - Form.Command.ЗагрузитьПравила - Normal - Auto - true - 1 - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Источник файл</value> - - - ru - Источник файл - - - ИсточникФайлExtendedTooltip - 63 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - + UsualButton + Form.Command.ЗагрузитьПравила + Normal + Auto + true + 1 + true + UserCmds + Auto true true @@ -230,11 +105,16 @@ <key>ru</key> - <value>Группа источники правил</value> + <value>Источник файл</value> + + ru + Источник файл + + Bottom - ГруппаИсточникиПравилExtendedTooltip - 57 + ИсточникФайлExtendedTooltip + 63 Label true true @@ -244,7 +124,6 @@ UsualGroup - Vertical Auto true true @@ -336,9 +215,7 @@ 112 true - 2 true - 1 true @@ -374,7 +251,6 @@ true Label - true true Style.ПоясняющийТекст @@ -447,7 +323,6 @@ Left true - true 6 true true @@ -648,7 +523,6 @@ StartChoice ВнешняяОбработкаДляОтладкиВыгрузкиНачалоВыбора - true true true true @@ -773,7 +647,6 @@ StartChoice ВнешняяОбработкаДляОтладкиЗагрузкиНачалоВыбора - true true true true @@ -898,7 +771,6 @@ Opening ФайлПротоколаОбменаОткрытие - true true true true @@ -1112,7 +984,6 @@ ru Дополнительно - true ГруппаДополнительноExtendedTooltip 80 @@ -1282,7 +1153,6 @@ OnCreateAtServer ПриСозданииНаСервере - 77 LockOwner true true diff --git a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ЗагрузитьПравилаСинхронизацииДанных/Module.bsl b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ЗагрузитьПравилаСинхронизацииДанных/Module.bsl index 257156b92..edc50f213 100644 --- a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ЗагрузитьПравилаСинхронизацииДанных/Module.bsl +++ b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ЗагрузитьПравилаСинхронизацииДанных/Module.bsl @@ -23,8 +23,6 @@ Заголовок = СтрЗаменить(Заголовок, "%1", Метаданные.ПланыОбмена[ИмяПланаОбмена].Синоним); - ОбновитьСписокВыбораМакетаПравил(); - ОбновитьИнформациюОПравилах(); Элементы.ГруппаОтладки.Доступность = (ИсточникПравил = "ЗагруженныеИзФайла"); @@ -417,13 +415,6 @@ #Область СлужебныеПроцедурыИФункции -&НаСервере -Процедура ОбновитьСписокВыбораМакетаПравил() - - Элементы.ИсточникМакетКонфигурации.ТекущаяСтраница = Элементы.СтраницаОдинМакет; - -КонецПроцедуры - &НаКлиенте Процедура ЗагрузитьПравилаЗавершение(Знач РезультатПомещенияФайлов, Знач ДополнительныеПараметры) Экспорт @@ -592,6 +583,7 @@ НСтрока = НСтр("ru = 'Не удалось получить правила обмена.'"); ОбменДаннымиСервер.СообщитьОбОшибке(НСтрока); + УдалитьФайлы(ИмяВременнойПапки); Возврат ""; Иначе @@ -624,6 +616,7 @@ // Помещаем архив правил в хранилище. ДвоичныеДанныеАрхиваПравил = Новый ДвоичныеДанные(ПутьКФайлу + ".zip"); АдресВременногоХранилища = ПоместитьВоВременноеХранилище(ДвоичныеДанныеАрхиваПравил); + УдалитьФайлы(ИмяВременнойПапки); Возврат АдресВременногоХранилища; diff --git a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаКонвертацииОбъектов/Form.form b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаКонвертацииОбъектов/Form.form index 99fc2a24f..73000a2c9 100644 --- a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаКонвертацииОбъектов/Form.form +++ b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаКонвертацииОбъектов/Form.form @@ -47,7 +47,6 @@ Left true - true true true true @@ -93,68 +92,59 @@ ГруппаОсновная 25 - - ИсточникПравил - 29 - true - true - - true - - - ИсточникПравил - - None - - OnChange - ИсточникПравилПриИзменении - - - ИсточникПравилExtendedTooltip - 56 - Label - true - true - - Left - - - - ИсточникПравилКонтекстноеМеню - 30 - true - - RadioButtonField - Enter - true - Left - true - - 1 - - - ru - Использовать типовые правила - - - ТиповыеИзКонфигурации - - - - - ru - Загрузить из файла на компьютере: - - - ЗагруженныеИзФайла - - - Vertical - - - ГруппаИсточникиПравил - 15 + ГруппаПравилаТиповые + 109 + + ИсточникПравилТиповые + 29 + true + true + + true + + + ИсточникПравил + + None + + OnChange + ИсточникПравилПриИзменении + + + ИсточникПравилТиповыеРасширеннаяПодсказка + 56 + Label + true + true + + Left + + + + ИсточникПравилТиповыеКонтекстноеМеню + 30 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Использовать типовые правила + + + ТиповыеИзКонфигурации + + + Vertical + + ИсточникМакетКонфигурации 16 @@ -202,7 +192,6 @@ Left true - true true true false @@ -265,7 +254,6 @@ true Label - true true Left @@ -325,6 +313,89 @@ Auto + true + true + + true + + + <key>ru</key> + <value>Группа правила типовые</value> + + + ru + Группа правила типовые + + + ГруппаПравилаТиповыеРасширеннаяПодсказка + 110 + Label + true + true + + Left + + + UsualGroup + + Auto + true + Auto + Auto + + + + ГруппаПравилаИзФайла + 111 + + ИсточникПравилИзФайла + 113 + true + true + + true + + + ИсточникПравил + + None + + OnChange + ИсточникПравилПриИзменении + + + ИсточникПравилИзФайлаРасширеннаяПодсказка + 115 + Label + true + true + + Left + + + + ИсточникПравилИзФайлаКонтекстноеМеню + 114 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + Загрузить из файла на компьютере: + + + ЗагруженныеИзФайла + + + Vertical + + ИсточникФайл 17 @@ -363,7 +434,6 @@ true true - 1 true true true @@ -440,11 +510,15 @@ <key>ru</key> - <value>Группа источники правил</value> + <value>Группа правила из файла</value> + + ru + Группа правила из файла + - ГруппаИсточникиПравилExtendedTooltip - 57 + ГруппаПравилаИзФайлаРасширеннаяПодсказка + 112 Label true true @@ -454,10 +528,8 @@ UsualGroup - Vertical Auto true - true Auto Auto @@ -487,6 +559,7 @@ UsualGroup + Vertical Auto true true @@ -528,7 +601,6 @@ Left true - true 6 true true @@ -703,7 +775,6 @@ StartChoice ВнешняяОбработкаДляОтладкиВыгрузкиНачалоВыбора - true true true true @@ -828,7 +899,6 @@ StartChoice ВнешняяОбработкаДляОтладкиЗагрузкиНачалоВыбора - true true true true @@ -953,7 +1023,6 @@ Opening ФайлПротоколаОбменаОткрытие - true true true true @@ -1163,7 +1232,6 @@ ru Дополнительно - true ГруппаДополнительноExtendedTooltip 80 @@ -1330,7 +1398,6 @@ Delete Reread WriteAndClose - 77 LockOwner true true diff --git a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаКонвертацииОбъектов/Module.bsl b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаКонвертацииОбъектов/Module.bsl index 2cce82006..a06060e39 100644 --- a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаКонвертацииОбъектов/Module.bsl +++ b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаКонвертацииОбъектов/Module.bsl @@ -318,7 +318,7 @@ КонецЕсли; - СписокМакетов = ОбменДаннымиПовтИсп.ПолучитьСписокТиповыхПравилОбмена(Запись.ИмяПланаОбмена); + СписокМакетов = ОбменДаннымиПовтИсп.ПравилаКонвертацииДляПланаОбменаИзКонфигурации(Запись.ИмяПланаОбмена); СписокВыбора = Элементы.ИмяМакетаПравил.СписокВыбора; СписокВыбора.Очистить(); @@ -449,6 +449,7 @@ НСтрока = НСтр("ru = 'Не удалось получить правила обмена.'"); ОбменДаннымиСервер.СообщитьОбОшибке(НСтрока); + УдалитьФайлы(ИмяВременнойПапки); Возврат ""; Иначе @@ -469,6 +470,7 @@ // Помещаем архив правил в хранилище. ДвоичныеДанныеАрхиваПравил = Новый ДвоичныеДанные(ПутьКФайлу + ".zip"); АдресВременногоХранилища = ПоместитьВоВременноеХранилище(ДвоичныеДанныеАрхиваПравил); + УдалитьФайлы(ИмяВременнойПапки); Возврат АдресВременногоХранилища; КонецЕсли; diff --git a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаРегистрацииОбъектов/Form.form b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаРегистрацииОбъектов/Form.form index a1fde34b8..10aeccc74 100644 --- a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаРегистрацииОбъектов/Form.form +++ b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаРегистрацииОбъектов/Form.form @@ -47,7 +47,6 @@ Left true - true true true true @@ -93,64 +92,59 @@ ГруппаОсновная 25 - - ИсточникПравил - 29 - true - true - - true - - - ИсточникПравил - - None - - ИсточникПравилExtendedTooltip - 37 - Label - true - true - - Left - - - - ИсточникПравилКонтекстноеМеню - 30 - true - - RadioButtonField - Enter - true - Left - true - - 1 - - - ru - Использовать типовые правила - - - ТиповыеИзКонфигурации - - - - - ru - Загрузить из файла на компьютере: - - - ЗагруженныеИзФайла - - - Vertical - - - ГруппаИсточникиПравил - 15 + ГруппаПравилаТиповые + 67 + + ИсточникПравилТиповые + 29 + true + true + + true + + + ИсточникПравил + + None + + OnChange + ИсточникПравилПриИзменении + + + ИсточникПравилТиповыеРасширеннаяПодсказка + 37 + Label + true + true + + Left + + + + ИсточникПравилТиповыеКонтекстноеМеню + 30 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Использовать типовые правила + + + ТиповыеИзКонфигурации + + + Vertical + + ИсточникМакетКонфигурации 16 @@ -190,7 +184,6 @@ Left true - true true true false @@ -249,7 +242,6 @@ true Label - true true Left @@ -297,6 +289,90 @@ Auto + true + true + + true + + + <key>ru</key> + <value>Группа правила типовые</value> + + + ru + Группа правила типовые + + + ГруппаПравилаТиповыеРасширеннаяПодсказка + 68 + Label + true + true + + Left + + + UsualGroup + + Auto + true + Auto + Auto + + + + ГруппаПравилаИзФайла + 69 + + ИсточникПравилИзФайла + 71 + true + true + + true + + + ИсточникПравил + + None + + OnChange + ИсточникПравилПриИзменении + + + ИсточникПравилИзФайлаРасширеннаяПодсказка + 73 + Label + true + true + + Left + + + + ИсточникПравилИзФайлаКонтекстноеМеню + 72 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Загрузить из файла на компьютере: + + + ЗагруженныеИзФайла + + + Vertical + + ИсточникФайл 17 @@ -435,9 +511,17 @@ true + + <key>ru</key> + <value>Группа правила из файла</value> + + + ru + Группа правила из файла + - ГруппаИсточникиПравилExtendedTooltip - 38 + ГруппаПравилаИзФайлаРасширеннаяПодсказка + 70 Label true true @@ -447,10 +531,8 @@ UsualGroup - Vertical Auto true - true Auto Auto @@ -480,6 +562,7 @@ UsualGroup + Vertical Auto true true @@ -521,7 +604,6 @@ Left true - true 6 true true @@ -650,7 +732,6 @@ Copy Delete WriteAndClose - 77 LockOwner true true diff --git a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаРегистрацииОбъектов/Module.bsl b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаРегистрацииОбъектов/Module.bsl index 0a8c096b5..c004ceffa 100644 --- a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаРегистрацииОбъектов/Module.bsl +++ b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПравилаРегистрацииОбъектов/Module.bsl @@ -73,6 +73,19 @@ КонецПроцедуры +&НаКлиенте +Процедура ИсточникПравилПриИзменении(Элемент) + + Элементы.ИсточникФайл.Доступность = (ИсточникПравил = "ЗагруженныеИзФайла"); + + Если ИсточникПравил = "ТиповыеИзКонфигурации" Тогда + + Запись.РежимОтладки = Ложь; + + КонецЕсли; + +КонецПроцедуры + #КонецОбласти #Область ОбработчикиКомандФормы @@ -178,7 +191,7 @@ КонецЕсли; - СписокМакетов = ОбменДаннымиПовтИсп.ПолучитьСписокТиповыхПравилРегистрации(Запись.ИмяПланаОбмена); + СписокМакетов = ОбменДаннымиПовтИсп.ПравилаРегистрацииДляПланаОбменаИзКонфигурации(Запись.ИмяПланаОбмена); СписокВыбора = Элементы.ИмяМакетаПравил.СписокВыбора; СписокВыбора.Очистить(); diff --git a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПроверкаСинхронизацииДанных/Form.form b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПроверкаСинхронизацииДанных/Form.form index 271a790b6..d830285de 100644 --- a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПроверкаСинхронизацииДанных/Form.form +++ b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/ПроверкаСинхронизацииДанных/Form.form @@ -30,9 +30,7 @@ 10 true - 4 true - 2 true @@ -70,7 +68,6 @@ true Label - true 5 true @@ -187,7 +184,6 @@ Right - 60 LockOwner true true diff --git a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/СообщениеОНеудачномОбновлении/Form.form b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/СообщениеОНеудачномОбновлении/Form.form index bfcadc96c..a7713c9e6 100644 --- a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/СообщениеОНеудачномОбновлении/Form.form +++ b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/СообщениеОНеудачномОбновлении/Form.form @@ -8,15 +8,19 @@ Группа2 24 - Декорация2 + Значок 26 + + <key>ru</key> + <value>Значок</value> + true true true - Декорация2РасширеннаяПодсказка + ЗначокРасширеннаяПодсказка 28 Label true @@ -26,13 +30,11 @@ - Декорация2КонтекстноеМеню + ЗначокКонтекстноеМеню 27 true - 4 true - 2 true @@ -74,7 +76,6 @@ true Label - true true Left @@ -190,7 +191,6 @@ true Label - true true Left @@ -235,10 +235,6 @@ ru Группа загрузки правил - - ru - Группа загрузки правил - ГруппаЗагрузкиПравилРасширеннаяПодсказка 61 @@ -253,42 +249,13 @@ Vertical Auto + NormalSeparation true true Auto Auto - - Декорация1 - 62 - true - true - - true - - - Декорация1РасширеннаяПодсказка - 64 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 63 - true - - Label - true - true - - Left - - КоманднаяПанель 13 diff --git a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/СообщениеОНеудачномОбновлении/Module.bsl b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/СообщениеОНеудачномОбновлении/Module.bsl index 52f160339..f8ab85c08 100644 --- a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/СообщениеОНеудачномОбновлении/Module.bsl +++ b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/Forms/СообщениеОНеудачномОбновлении/Module.bsl @@ -42,9 +42,6 @@ ВремяОкончанияОбновления = Параметры.ВремяОкончанияОбновления; КонецЕсли; - Элементы.ЗагрузитьПравилаКонвертации.Видимость = ПравилаИзФайла.ПравилаКонвертации; - Элементы.ЗагрузитьПравилаРегистрации.Видимость = ПравилаИзФайла.ПравилаРегистрации; - КонецПроцедуры #КонецОбласти @@ -63,8 +60,7 @@ ПараметрыФормы.Вставить("ДатаНачала", ВремяНачалаОбновления); ПараметрыФормы.Вставить("ДатаОкончания", ВремяОкончанияОбновления); ПараметрыФормы.Вставить("ЗапускатьНеВФоне", Истина); - - ОткрытьФорму("Обработка.ЖурналРегистрации.Форма.ЖурналРегистрации", ПараметрыФормы); + ЖурналРегистрацииКлиент.ОткрытьЖурналРегистрации(ПараметрыФормы); КонецПроцедуры diff --git a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/ManagerModule.bsl b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/ManagerModule.bsl index 33c0ecc1b..799c71bd8 100644 --- a/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/ПравилаДляОбменаДанными/ManagerModule.bsl @@ -465,6 +465,8 @@ // методы обработки ПравилаЗачитанныеКорреспондента = КонвертацияОбъектовИнформационныхБаз.ПолучитьСтруктуруПравилОбмена(ИмяВременногоФайлаКорреспондента); + УдалитьФайлы(ИмяВременногоФайлаКорреспондента); + ИнформацияОПравилахКорреспондента = КонвертацияОбъектовИнформационныхБаз.ПолучитьИнформациюОПравилах(Истина); Если КонвертацияОбъектовИнформационныхБаз.ФлагОшибки() Тогда diff --git a/SSL/src/InformationRegisters/ПредметыПапкиВзаимодействий/ПредметыПапкиВзаимодействий.mdo b/SSL/src/InformationRegisters/ПредметыПапкиВзаимодействий/ПредметыПапкиВзаимодействий.mdo index 7bda67fbe..0fbf2d060 100644 --- a/SSL/src/InformationRegisters/ПредметыПапкиВзаимодействий/ПредметыПапкиВзаимодействий.mdo +++ b/SSL/src/InformationRegisters/ПредметыПапкиВзаимодействий/ПредметыПапкиВзаимодействий.mdo @@ -143,11 +143,7 @@ DocumentRef.ЭлектронноеПисьмоВходящее DocumentRef.ТелефонныйЗвонок DocumentRef.Встреча - String DocumentRef.СообщениеSMS - - 10 - ru @@ -158,7 +154,7 @@ Use Use true - + true true diff --git a/SSL/src/InformationRegisters/ПредопределенныеВариантыОтчетовВерсийРасширений/ПредопределенныеВариантыОтчетовВерсийРасширений.mdo b/SSL/src/InformationRegisters/ПредопределенныеВариантыОтчетовВерсийРасширений/ПредопределенныеВариантыОтчетовВерсийРасширений.mdo index 7807b537a..d4cc34c4a 100644 --- a/SSL/src/InformationRegisters/ПредопределенныеВариантыОтчетовВерсийРасширений/ПредопределенныеВариантыОтчетовВерсийРасширений.mdo +++ b/SSL/src/InformationRegisters/ПредопределенныеВариантыОтчетовВерсийРасширений/ПредопределенныеВариантыОтчетовВерсийРасширений.mdo @@ -62,7 +62,6 @@ Index - Use Use true @@ -81,7 +80,6 @@ Index - Use Use true @@ -119,13 +117,12 @@ String - 430 + 256 Index - Use Use true diff --git a/SSL/src/InformationRegisters/ПроцессыДляЗапуска/Forms/НастройкаОтложенногоСтартаПроцесса/Form.form b/SSL/src/InformationRegisters/ПроцессыДляЗапуска/Forms/НастройкаОтложенногоСтартаПроцесса/Form.form new file mode 100644 index 000000000..b516c2a65 --- /dev/null +++ b/SSL/src/InformationRegisters/ПроцессыДляЗапуска/Forms/НастройкаОтложенногоСтартаПроцесса/Form.form @@ -0,0 +1,1198 @@ + + + + <key>ru</key> + <value>Настройка отложенного старта задания</value> + + + ОтложенныйСтартПроцесса + 18 + true + true + + true + + + ОтложенныйСтартПроцесса + + Right + + OnChange + ОтложенныйСтартПроцессаПриИзменении + + + ОтложенныйСтартПроцессаРасширеннаяПодсказка + 20 + Label + true + true + + Left + + + + ОтложенныйСтартПроцессаКонтекстноеМеню + 19 + true + + CheckBoxField + Enter + true + Left + true + + + + ГруппаДатаОтложенногоСтарта + 16 + + ДатаОтложенногоСтарта + 1 + + <key>ru</key> + <value>Дата</value> + + true + true + + true + + + ДатаОтложенногоСтарта + + + OnChange + ДатаОтложенногоСтартаПриИзменении + + + ДатаОтложенногоСтартаРасширеннаяПодсказка + 3 + Label + true + true + + Left + + + + ДатаОтложенногоСтартаКонтекстноеМеню + 2 + true + + InputField + Enter + true + Left + true + + 9 + true + true + false + true + + ru + ДФ=dd.MM.yyyy + + true + true + true + Normal + + + + ДатаОтложенногоСтартаВремя + 4 + + <key>ru</key> + <value>Время</value> + + true + true + + true + + + ДатаОтложенногоСтарта + + + OnChange + ДатаОтложенногоСтартаВремяПриИзменении + + + ДатаОтложенногоСтартаВремяРасширеннаяПодсказка + 6 + Label + true + true + + Left + + + + ДатаОтложенногоСтартаВремяКонтекстноеМеню + 5 + true + + InputField + Enter + true + Left + true + + 7 + true + true + false + true + true + false + + ru + ДФ=HH:mm + + true + true + true + Normal + + + true + true + + true + + + ГруппаДатаОтложенногоСтартаРасширеннаяПодсказка + 17 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + + СтраницыПодвала + 61 + + СтраницаОтменаСтарта + 67 + + ГруппаОтменаСтарта + 69 + + ДекорацияКартинкаОтменаСтарта + 71 + + <key>ru</key> + <value>Декорация картинка отмена старта</value> + + true + true + + true + + + ДекорацияКартинкаОтменаСтартаРасширеннаяПодсказка + 73 + Label + true + true + + Left + + + + ДекорацияКартинкаОтменаСтартаКонтекстноеМеню + 72 + true + + 2 + true + 1 + true + + + CommonPicture.Предупреждение + + + + + ДекорацияОтменаСтарта + 74 + + <key>ru</key> + <value>Во время отложенного старта этого процесса произошла ошибка.</value> + + true + true + + true + + + ДекорацияОтменаСтартаРасширеннаяПодсказка + 76 + Label + true + true + + Left + + + + ДекорацияОтменаСтартаКонтекстноеМеню + 75 + true + + Label + true + true + + Style.ПоясняющийТекст + + + Left + + + true + true + + true + + + <key>ru</key> + <value>Группа отмена старта</value> + + + ru + Группа отмена старта + + + ГруппаОтменаСтартаРасширеннаяПодсказка + 70 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Страница отмена старта</value> + + + ru + Страница отмена старта + + + СтраницаОтменаСтартаРасширеннаяПодсказка + 68 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СтраницаЗаданиеЗапущено + 63 + + ГруппаЗаданиеЗапущено + 59 + + ДекорацияКартинкаЗаданиеЗапущено + 53 + + <key>ru</key> + <value>Декорация картинка задание запущено</value> + + true + true + + true + + + ДекорацияКартинкаЗаданиеЗапущеноРасширеннаяПодсказка + 55 + Label + true + true + + Left + + + + ДекорацияКартинкаЗаданиеЗапущеноКонтекстноеМеню + 54 + true + + 2 + true + 1 + true + + + CommonPicture.Информация + + + + + ДекорацияЗаданиеЗапущено + 56 + + <key>ru</key> + <value>Задание уже запущено</value> + + true + true + + true + + + ДекорацияЗаданиеЗапущеноРасширеннаяПодсказка + 58 + Label + true + true + + Left + + + + ДекорацияЗаданиеЗапущеноКонтекстноеМеню + 57 + true + + Label + true + true + + Style.ПоясняющийТекст + + + Left + + + true + true + + true + + + <key>ru</key> + <value>Группа задание запущено</value> + + + ru + Группа задание запущено + + + ГруппаЗаданиеЗапущеноРасширеннаяПодсказка + 60 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Страница задание запущено</value> + + + ru + Страница задание запущено + + + СтраницаЗаданиеЗапущеноРасширеннаяПодсказка + 64 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СтраницаПусто + 65 + + ДекорацияИнтервал + 30 + true + true + + true + + + ДекорацияИнтервалРасширеннаяПодсказка + 32 + Label + true + true + + Left + + + + ДекорацияИнтервалКонтекстноеМеню + 31 + true + + Label + true + true + true + + Style.ПоясняющийТекст + + + Left + + + true + true + + true + + + <key>ru</key> + <value>Страница пусто</value> + + + ru + Страница пусто + + + СтраницаПустоРасширеннаяПодсказка + 66 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + + СтраницаЗаданиеЗавершено + 77 + + ГруппаЗаданиеЗавершено + 79 + + ДекорацияКартинкаЗаданиеЗавершено + 81 + + <key>ru</key> + <value>Декорация картинка задание завершено</value> + + true + true + + true + + + ДекорацияКартинкаЗаданиеЗавершеноРасширеннаяПодсказка + 83 + Label + true + true + + Left + + + + ДекорацияКартинкаЗаданиеЗавершеноКонтекстноеМеню + 82 + true + + 2 + true + 1 + true + + + CommonPicture.Информация + + + + + ДекорацияЗаданиеЗавершено + 84 + + <key>ru</key> + <value>Выполнение задания завершено</value> + + true + true + + true + + + ДекорацияЗаданиеЗавершеноРасширеннаяПодсказка + 86 + Label + true + true + + Left + + + + ДекорацияЗаданиеЗавершеноКонтекстноеМеню + 85 + true + + Label + true + true + + Style.ПоясняющийТекст + + + Left + + + true + true + + true + + + <key>ru</key> + <value>Группа задание завершено</value> + + + ru + Группа задание запущено + + + ГруппаЗаданиеЗавершеноРасширеннаяПодсказка + 80 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Страница задание завершено</value> + + + ru + Страница задание запущено + + + СтраницаЗаданиеЗавершеноРасширеннаяПодсказка + 78 + Label + true + true + + Left + + + Page + + Vertical + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Страницы подвала</value> + + + ru + Страницы подвала + + + СтраницыПодвалаРасширеннаяПодсказка + 62 + Label + true + true + + Left + + + Pages + + Auto + + + + ГруппаКопки + 24 + + СтраницыКоманд + 87 + + СтраницаПроцессНеСтартован + 91 + + Готово + 28 + true + true + + true + + + ГотовоРасширеннаяПодсказка + 29 + Label + true + true + + Left + + + UsualButton + Form.Command.Готово + Auto + true + true + true + UserCmds + Auto + + + Отмена + 26 + true + true + + true + + + ОтменаРасширеннаяПодсказка + 27 + Label + true + true + + Left + + + UsualButton + Form.Command.Отмена + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Страница процесс не стартован</value> + + + ru + Страница процесс не стартован + + + СтраницаПроцессНеСтартованРасширеннаяПодсказка + 92 + Label + true + true + + Left + + + Page + + auto + false + + + + СтраницаПроцессСтартован + 89 + + Закрыть + 95 + + <key>ru</key> + <value>Закрыть</value> + + true + true + + true + + + ЗакрытьРасширеннаяПодсказка + 96 + Label + true + true + + Left + + + UsualButton + Form.Command.Отмена + Normal + Auto + true + true + UserCmds + Auto + + true + true + + true + + + <key>ru</key> + <value>Страница процесс стартован</value> + + + ru + Страница процесс стартован + + + СтраницаПроцессСтартованРасширеннаяПодсказка + 90 + Label + true + true + + Left + + + Page + + auto + false + + + true + true + + true + + + <key>ru</key> + <value>Страницы команд</value> + + + ru + Страницы команд + + + СтраницыКомандРасширеннаяПодсказка + 88 + Label + true + true + + Left + + + Pages + + Auto + + + true + true + + true + + + <key>ru</key> + <value>Группа копки</value> + + + ru + Группа копки + + + ГруппаКопкиРасширеннаяПодсказка + 25 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + Bottom + true + + ФормаКоманднаяПанель + -1 + Right + + + OnOpen + ПриОткрытии + + + OnCreateAtServer + ПриСозданииНаСервере + + LockOwner + true + true + Vertical + true + true + true + auto + true + + ДатаОтложенногоСтарта + + <key>ru</key> + <value>Дата отложенного старта</value> + + 1 + + Date + + + + true + + + true + + + + БизнесПроцесс + + <key>ru</key> + <value>Бизнес процесс</value> + + 2 + + DefinedType.ОтложенныеБизнесПроцессы + + + true + + + true + + + + Состояние + + <key>ru</key> + <value>Состояние</value> + + 3 + + EnumRef.СостоянияПроцессовДляЗапуска + + + true + + + true + + + + ОтложенныйСтартПроцесса + + <key>ru</key> + <value>Отложенный старт задания</value> + + 4 + + Boolean + + + true + + + true + + + + ОтложенныйСтартПроцессаПриОткрытии + + <key>ru</key> + <value>Отложенный старт процесса при открытии</value> + + 5 + + Boolean + + + true + + + true + + + + ПроцессСтартован + + <key>ru</key> + <value>Процесс стартован</value> + + 6 + + Boolean + + + true + + + true + + + + ИспользоватьДатуИВремяВСрокахЗадач + + <key>ru</key> + <value>Использовать дату и время в сроках задач</value> + + 10 + + Boolean + + + true + + + true + + + + НастройкаОтложенногоСтартаТолькоПросмотр + + <key>ru</key> + <value>Настройка отложенного старта только просмотр</value> + + 11 + + Boolean + + + true + + + true + + + + СрокИсполнения + + <key>ru</key> + <value>Срок исполнения</value> + + 12 + + Date + + + + true + + + true + + + + ПроцессЗавершен + + <key>ru</key> + <value>Процесс завершен</value> + + 13 + + Boolean + + + true + + + true + + + + ТекущаяДатаСервера + + <key>ru</key> + <value>Текущая дата сервера</value> + + 14 + + Date + + + + true + + + true + + + + Готово + + <key>ru</key> + <value>Готово</value> + + 1 + + ru + Готово + + + true + + + + Готово + + + DontUse + Auto + + + Отмена + + <key>ru</key> + <value>Отмена</value> + + 2 + + ru + Отмена + + + true + + + + Отмена + + + DontUse + Auto + + + БизнесПроцесс + + BusinessProcessRef + + + + СрокИсполнения + + Date + + + + + + + + diff --git a/SSL/src/InformationRegisters/ПроцессыДляЗапуска/Forms/НастройкаОтложенногоСтартаПроцесса/Help/ru.html b/SSL/src/InformationRegisters/ПроцессыДляЗапуска/Forms/НастройкаОтложенногоСтартаПроцесса/Help/ru.html new file mode 100644 index 000000000..7696e2f4e --- /dev/null +++ b/SSL/src/InformationRegisters/ПроцессыДляЗапуска/Forms/НастройкаОтложенногоСтартаПроцесса/Help/ru.html @@ -0,0 +1,36 @@ + +

      +

      +

      +

      +

      Флажок Отложенный старт задания отвечает за запуск и отключение отложенного старта.

      +
      • Если флажок недоступен, значит процесс уже запущен или завершен и вы не сможете отложить его старт. +
      • Чтобы отменить отложенный старт процесса, достаточно снять флажок Отложенный старт задания.

       

      +
        \ No newline at end of file diff --git a/SSL/src/InformationRegisters/ПроцессыДляЗапуска/Forms/НастройкаОтложенногоСтартаПроцесса/Module.bsl b/SSL/src/InformationRegisters/ПроцессыДляЗапуска/Forms/НастройкаОтложенногоСтартаПроцесса/Module.bsl new file mode 100644 index 000000000..0f4ab821b --- /dev/null +++ b/SSL/src/InformationRegisters/ПроцессыДляЗапуска/Forms/НастройкаОтложенногоСтартаПроцесса/Module.bsl @@ -0,0 +1,356 @@ + +#Область ОбработчикиСобытийФормы + +&НаСервере +Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + + Если Параметры.Свойство("АвтоТест") Тогда + Возврат; + КонецЕсли; + + Если Не ЗначениеЗаполнено(Параметры.БизнесПроцесс) Тогда + Отказ = Истина; + КонецЕсли; + + БизнесПроцесс = Параметры.БизнесПроцесс; + СрокИсполнения = Параметры.СрокИсполнения; + + // Заполнение настроек. + ЗаполнитьРеквизитыФормы(); + // Установка доступности настройки + УстановитьСвойстваЭлементовФормы(); + +КонецПроцедуры + +&НаКлиенте +Процедура ПриОткрытии(Отказ) + + ОбновитьОтображениеИнтервала(); + ОбновитьСписокВыбораВремени(); + +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовШапкиФормы + +&НаКлиенте +Процедура ОтложенныйСтартПроцессаПриИзменении(Элемент) + + УстановитьСостояниеОтложенногоСтартаПроцесса(); + +КонецПроцедуры + +&НаКлиенте +Процедура ДатаОтложенногоСтартаПриИзменении(Элемент) + + ПриИзмененииДатыВремени(); + +КонецПроцедуры + +&НаКлиенте +Процедура ДатаОтложенногоСтартаВремяПриИзменении(Элемент) + + ПриИзмененииДатыВремени(); + +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиКомандФормы + +&НаКлиенте +Процедура Готово(Команда) + + Если ФормаЗаполненаКорректно() Тогда + ЗаписатьНастройкиНаКлиенте(); + КонецЕсли; + +КонецПроцедуры + +&НаКлиенте +Процедура Отмена(Команда) + + Закрыть(); + +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаКлиенте +Процедура ПриИзмененииДатыВремени() + + ОбновитьОтображениеИнтервала(); + ОбновитьСписокВыбораВремени(); + +КонецПроцедуры + +// Записывает настройки. +// +&НаКлиенте +Процедура ЗаписатьНастройкиНаКлиенте() + + ЗаписатьНастройку(); + Закрыть(); + + НастройкиОтложенногоСтарта = Новый Структура; + НастройкиОтложенногоСтарта.Вставить("БизнесПроцесс", БизнесПроцесс); + НастройкиОтложенногоСтарта.Вставить("Отложен", ОтложенныйСтартПроцесса); + НастройкиОтложенногоСтарта.Вставить("ДатаОтложенногоСтарта", ДатаОтложенногоСтарта); + НастройкиОтложенногоСтарта.Вставить("Состояние", Состояние); + + Оповестить("ИзмененаНастройкаОтложенногоСтарта", НастройкиОтложенногоСтарта); + + Если ОтложенныйСтартПроцесса <> ОтложенныйСтартПроцессаПриОткрытии Тогда + + ТекстОповещения = ?(ОтложенныйСтартПроцесса, НСтр("ru = 'Отложенный старт:'"), НСтр("ru = 'Отложенный старт отменен:'")); + НавигационнаяСсылкаНаПроцесс = ПолучитьНавигационнуюСсылку(БизнесПроцесс); + + ПоказатьОповещениеПользователя( + ТекстОповещения, + НавигационнаяСсылкаНаПроцесс, + БизнесПроцесс, + БиблиотекаКартинок.Информация32); + + ОповеститьОбИзменении(БизнесПроцесс); + ОповеститьОбИзменении(Тип("РегистрСведенийКлючЗаписи.ДанныеБизнесПроцессов")); + + КонецЕсли; + +КонецПроцедуры + +// Заполняет реквизит формы Состояние и устанавливает доступность +// полей ДатаОтложенногоСтарта и ДатаОтложенногоСтартаВремя. +// +&НаСервере +Процедура УстановитьСостояниеОтложенногоСтартаПроцесса() + + Если ОтложенныйСтартПроцесса Тогда + Состояние = ПредопределенноеЗначение("Перечисление.СостоянияПроцессовДляЗапуска.ГотовКСтарту"); + Иначе + Состояние = ПредопределенноеЗначение("Перечисление.СостоянияПроцессовДляЗапуска.ПустаяСсылка"); + КонецЕсли; + + УстановитьСвойстваЭлементовФормы(); + +КонецПроцедуры + +// Записывает настройку отложенного старта в регистр. +// +&НаСервере +Процедура ЗаписатьНастройку() + + Если ОтложенныйСтартПроцесса Тогда + БизнесПроцессыИЗадачиСервер.ДобавитьПроцессДляОтложенногоСтарта(БизнесПроцесс, ДатаОтложенногоСтарта); + Иначе + БизнесПроцессыИЗадачиСервер.ОтключитьОтложенныйСтартПроцесса(БизнесПроцесс); + КонецЕсли; + +КонецПроцедуры + +// Заполняет заголовок декорации ДекорацияИнтервал. +// +&НаКлиенте +Процедура ОбновитьОтображениеИнтервала() + + Если НЕ ЗначениеЗаполнено(ДатаОтложенногоСтарта) + ИЛИ ПроцессСтартован Тогда + + Элементы.ДекорацияИнтервал.Заголовок = ""; + Возврат; + + КонецЕсли; + + ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( + Элементы, + "ДекорацияИнтервал", + "Заголовок", + ТекстИнтервала(ТекущаяДатаСервера, ДатаОтложенногоСтарта)); + +КонецПроцедуры + +// Заполняет список выбора для элемента формы ДатаОтложенногоСтартаВремя значениями +// времени. +// +&НаКлиенте +Процедура ОбновитьСписокВыбораВремени() + + Элементы.ДатаОтложенногоСтартаВремя.СписокВыбора.Очистить(); + + ПустаяДата = НачалоДня(ДатаОтложенногоСтарта); + + Для Инд = 1 По 48 Цикл + Элементы.ДатаОтложенногоСтартаВремя.СписокВыбора.Добавить(ПустаяДата, Формат(ПустаяДата, "ДФ=ЧЧ:мм")); + ПустаяДата = ПустаяДата + 1800; + КонецЦикла; + +КонецПроцедуры + +&НаКлиенте +Функция ТекстИнтервала(ДатаНачала, ДатаОкончания) + + Если ДатаНачала > ДатаОкончания Тогда + Возврат НСтр("ru = 'Дата запуска задания находится в прошлом.'"); + КонецЕсли; + + Если ИспользоватьДатуИВремяВСрокахЗадач Тогда + ЧислоЧасов = Окр((ДатаОкончания - ДатаНачала) / (60*60)); + ЧислоДней = Окр(ЧислоЧасов / 24); + ЧислоЧасов = ЧислоЧасов - ЧислоДней * 24; + Иначе + ЧислоЧасов = 0; + ЧислоДней = (НачалоДня(ДатаОкончания) - НачалоДня(ДатаНачала)) / (60*60*24); + КонецЕсли; + + Если ЧислоЧасов < 0 Тогда + ЧислоДней = ЧислоДней - 1; + ЧислоЧасов = ЧислоЧасов + 24; + КонецЕсли; + + РазностьДат = ""; + Приставка = НСтр("ru = 'Задание будет запущено'") + " "; + Корень = НСтр("ru = 'через'") + " "; + Если ИспользоватьДатуИВремяВСрокахЗадач Тогда + Если ЧислоДней > 0 И ЧислоЧасов > 0 Тогда + РазностьДат = Корень + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = '%1 дн. и %2 ч.'"), + Строка(ЧислоДней), + Строка(ЧислоЧасов)); + ИначеЕсли ЧислоДней > 0 Тогда + РазностьДат = Корень + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("%1 дн.", Строка(ЧислоДней)); + ИначеЕсли ЧислоЧасов > 0 Тогда + РазностьДат = Корень + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("%1 ч.", Строка(ЧислоЧасов)); + Иначе + РазностьДат = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'менее чем через час.'"), Строка(ЧислоЧасов)); + КонецЕсли; + Иначе + Если ЧислоДней > 0 Тогда + РазностьДат = Корень + СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку("%1 дн.", Строка(ЧислоДней)); + Иначе + РазностьДат = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru = 'менее чем через день.'"), Строка(ЧислоДней)); + КонецЕсли; + КонецЕсли; + + Возврат Приставка + РазностьДат; + +КонецФункции + +&НаСервере +Процедура ЗаполнитьРеквизитыФормы() + + РеквизитыПроцесса = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Параметры.БизнесПроцесс, "Стартован, Завершен"); + + ИспользоватьДатуИВремяВСрокахЗадач = ПолучитьФункциональнуюОпцию("ИспользоватьДатуИВремяВСрокахЗадач"); + ТекущаяДатаСервера = ТекущаяДатаСеанса(); + + ПроцессСтартован = РеквизитыПроцесса.Стартован; + ПроцессЗавершен = РеквизитыПроцесса.Завершен; + + Настройка = БизнесПроцессыИЗадачиСервер.ПараметрыОтложенногоПроцесса(Параметры.БизнесПроцесс); + + Если ЗначениеЗаполнено(Настройка) Тогда + // Если процесс уже отложен - заполняем реквизиты по нему. + ЗаполнитьЗначенияСвойств(ЭтаФорма, Настройка); + + ОтложенныйСтартПроцесса = (Настройка.Состояние = Перечисления.СостоянияПроцессовДляЗапуска.ГотовКСтарту); + ОтложенныйСтартПроцессаПриОткрытии = ОтложенныйСтартПроцесса; + + ИначеЕсли НЕ ПроцессСтартован Тогда + // Если еще не откладывали - заполняем по умолчанию. + ОтложенныйСтартПроцессаПриОткрытии = Ложь; + ОтложенныйСтартПроцесса = Истина; + ДатаОтложенногоСтарта = НачалоДня(ТекущаяДатаСеанса() + 86400); + Состояние = ПредопределенноеЗначение("Перечисление.СостоянияПроцессовДляЗапуска.ГотовКСтарту"); + КонецЕсли; + +КонецПроцедуры + +&НаСервере +Процедура УстановитьСвойстваЭлементовФормы() + + ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( + Элементы, + "ОтложенныйСтартПроцесса", + "ТолькоПросмотр", + ПроцессСтартован); + ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( + Элементы, + "ГруппаИнфоНадпись", + "Видимость", + ПроцессСтартован); + + Если ПроцессСтартован Тогда + Элементы.СтраницыКоманд.ТекущаяСтраница = Элементы.СтраницаПроцессСтартован; + ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "Закрыть", "КнопкаПоУмолчанию", Истина); + + Если ПроцессЗавершен Тогда + Элементы.СтраницыПодвала.ТекущаяСтраница = Элементы.СтраницаЗаданиеЗавершено; + Иначе + Элементы.СтраницыПодвала.ТекущаяСтраница = Элементы.СтраницаЗаданиеЗапущено; + КонецЕсли; + Иначе + Элементы.СтраницыКоманд.ТекущаяСтраница = Элементы.СтраницаПроцессНеСтартован; + ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(Элементы, "Готово", "КнопкаПоУмолчанию", Истина); + + Если Состояние = ПредопределенноеЗначение("Перечисление.СостоянияПроцессовДляЗапуска.СтартОтменен") Тогда + Элементы.СтраницыПодвала.ТекущаяСтраница = Элементы.СтраницаОтменаСтарта; + Иначе + Элементы.СтраницыПодвала.ТекущаяСтраница = Элементы.СтраницаПусто; + КонецЕсли; + КонецЕсли; + + ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( + Элементы, + "ДатаОтложенногоСтарта", + "ТолькоПросмотр", + ПроцессСтартован ИЛИ НЕ ОтложенныйСтартПроцесса); + + ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( + Элементы, + "ДатаОтложенногоСтартаВремя", + "Видимость", + ИспользоватьДатуИВремяВСрокахЗадач); + ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы( + Элементы, + "ДатаОтложенногоСтартаВремя", + "ТолькоПросмотр", + ПроцессСтартован ИЛИ НЕ ОтложенныйСтартПроцесса); + +КонецПроцедуры + +&НаКлиенте +Функция ФормаЗаполненаКорректно() + + ОшибкиПользователю = Неопределено; + ОчиститьСообщения(); + + Если ОтложенныйСтартПроцесса И ДатаОтложенногоСтарта < ТекущаяДатаСервера Тогда + ОбщегоНазначенияКлиентСервер.ДобавитьОшибкуПользователю( + ОшибкиПользователю, + "ДатаОтложенногоСтарта", + НСтр("ru = 'Дата и время отложенного старта должны быть больше текущей даты.'"), + ""); + КонецЕсли; + Если ОтложенныйСтартПроцесса И ДатаОтложенногоСтарта > СрокИсполнения Тогда + ОбщегоНазначенияКлиентСервер.ДобавитьОшибкуПользователю( + ОшибкиПользователю, + "ДатаОтложенногоСтарта", + НСтр("ru = 'Дата и время отложенного старта должны быть меньше срока исполнения задания.'"), + ""); + КонецЕсли; + + Если ОшибкиПользователю <> Неопределено Тогда + ОбщегоНазначенияКлиентСервер.СообщитьОшибкиПользователю(ОшибкиПользователю); + Возврат Ложь; + Иначе + Возврат Истина; + КонецЕсли; + +КонецФункции + +#КонецОбласти + diff --git a/SSL/src/InformationRegisters/ПроцессыДляЗапуска/ManagerModule.bsl b/SSL/src/InformationRegisters/ПроцессыДляЗапуска/ManagerModule.bsl new file mode 100644 index 000000000..dc52d7866 --- /dev/null +++ b/SSL/src/InformationRegisters/ПроцессыДляЗапуска/ManagerModule.bsl @@ -0,0 +1,48 @@ +#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда + +#Область СлужебныеПроцедурыИФункции + +// Добавляет сведения об успешном старте процесса. +// +// Параметры: +// - БизнесПроцесс - БизнесПроцессСсылка. +// +Процедура ЗарегистрироватьСтартПроцесса(Процесс) Экспорт + + Запись = СоздатьМенеджерЗаписи(); + Запись.БизнесПроцесс = Процесс; + Запись.Прочитать(); + + Если Не Запись.Выбран() Тогда + Возврат; + КонецЕсли; + + Запись.Удалить(); + +КонецПроцедуры + +// Добавляет сведения об отмене старта процесса. +// +// Параметры: +// - БизнесПроцесс - БизнесПроцессСсылка. +// +Процедура ЗарегистрироватьОтменуСтарта(Процесс, ПричинаОтмены) Экспорт + + Запись = СоздатьМенеджерЗаписи(); + Запись.БизнесПроцесс = Процесс; + Запись.Прочитать(); + + Если Не Запись.Выбран() Тогда + Возврат; + КонецЕсли; + + Запись.Состояние = Перечисления.СостоянияПроцессовДляЗапуска.СтартОтменен; + Запись.ПричинаОтменыСтарта = ПричинаОтмены; + + Запись.Записать(); + +КонецПроцедуры + +#КонецОбласти + +#КонецЕсли \ No newline at end of file diff --git a/SSL/src/InformationRegisters/ПроцессыДляЗапуска/ПроцессыДляЗапуска.mdo b/SSL/src/InformationRegisters/ПроцессыДляЗапуска/ПроцессыДляЗапуска.mdo new file mode 100644 index 000000000..5a7160edd --- /dev/null +++ b/SSL/src/InformationRegisters/ПроцессыДляЗапуска/ПроцессыДляЗапуска.mdo @@ -0,0 +1,139 @@ + + + + + + + + + + + + ПроцессыДляЗапуска + + ru + Процессы для запуска + + InDialog + + Use + Active + + Use + + + + + Use + LineNumber + + Use + + + + + Use + Recorder + + Use + + + + + Use + Period + + ShowError + Use + + + + Managed + + ДатаОтложенногоСтарта + + ru + Дата отложенного старта + + + Date + + + + + Use + Use + + + + Состояние + + ru + Состояние + + + EnumRef.СостоянияПроцессовДляЗапуска + + + + Use + Use + + + + ПричинаОтменыСтарта + + ru + Причина отмены старта + + + String + + 500 + + + + + Use + Use + + + + БизнесПроцесс + + ru + Бизнес процесс + + + DefinedType.ОтложенныеБизнесПроцессы + + + ru + Отложенный бизнес-процесс + + + + ShowError + true + Use + Use + true + + true + true + + + НастройкаОтложенногоСтартаПроцесса + + ru + Настройка отложенного старта процесса + + + + ru + + + PersonalComputer + MobileDevice + + diff --git a/SSL/src/InformationRegisters/ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux/Forms/ФормаСписка/Form.form index b8dc49c6a..2f0fb370a 100644 --- a/SSL/src/InformationRegisters/ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux/Forms/ФормаСписка/Form.form @@ -379,7 +379,6 @@ OnCreateAtServer ПриСозданииНаСервере - 80 DontBlock true true diff --git a/SSL/src/InformationRegisters/РежимыПодключенияВнешнихМодулей/РежимыПодключенияВнешнихМодулей.mdo b/SSL/src/InformationRegisters/РежимыПодключенияВнешнихМодулей/РежимыПодключенияВнешнихМодулей.mdo index 65925ca48..4f0ddd129 100644 --- a/SSL/src/InformationRegisters/РежимыПодключенияВнешнихМодулей/РежимыПодключенияВнешнихМодулей.mdo +++ b/SSL/src/InformationRegisters/РежимыПодключенияВнешнихМодулей/РежимыПодключенияВнешнихМодулей.mdo @@ -88,7 +88,8 @@ Тип программного модуля - AnyRef + CatalogRef.ИдентификаторыОбъектовРасширений + CatalogRef.ИдентификаторыОбъектовМетаданных diff --git a/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Attributes/Коллизии/ExtInfo/ListSettings.dcss b/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Attributes/Коллизии/ExtInfo/ListSettings.dcss index daa30ff4e..2e15cf625 100644 --- a/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Attributes/Коллизии/ExtInfo/ListSettings.dcss +++ b/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Attributes/Коллизии/ExtInfo/ListSettings.dcss @@ -13,69 +13,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - - ВерсияПроигнорирована - Equal - true - - - - - ЦветТекста - style:ТекстЗапрещеннойЯчейкиЦвет - - - - - - - ДругаяВерсияПринята - - - - - AndGroup - - ДругаяВерсияПринята - Equal - false - - - ВерсияПроигнорирована - Equal - false - - - - - - ЦветТекста - style:НепринятаяВерсия - - - - - - - ДругаяВерсияПринята - - - - - НомерДругойВерсии - NotFilled - - - - - Текст - Удалена - - - Normal b75fecce-942b-4aed-abc9-e6a02e460fb3 diff --git a/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Attributes/НезаполненныеРеквизиты/ExtInfo/ListSettings.dcss b/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Attributes/НезаполненныеРеквизиты/ExtInfo/ListSettings.dcss index 0e7a73be0..61e6fb4bb 100644 --- a/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Attributes/НезаполненныеРеквизиты/ExtInfo/ListSettings.dcss +++ b/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Attributes/НезаполненныеРеквизиты/ExtInfo/ListSettings.dcss @@ -9,22 +9,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - - Пропущена - Equal - true - - - - - ЦветТекста - style:ТекстЗапрещеннойЯчейкиЦвет - - - Normal b75fecce-942b-4aed-abc9-e6a02e460fb3 diff --git a/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Attributes/НепринятыеПоДате/ExtInfo/ListSettings.dcss b/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Attributes/НепринятыеПоДате/ExtInfo/ListSettings.dcss index 033fe4270..2e15cf625 100644 --- a/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Attributes/НепринятыеПоДате/ExtInfo/ListSettings.dcss +++ b/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Attributes/НепринятыеПоДате/ExtInfo/ListSettings.dcss @@ -13,68 +13,6 @@ 88619765-ccb3-46c6-ac52-38e9c992ebd4 - - - - - ВерсияПроигнорирована - Equal - true - - - - - ЦветТекста - style:ТекстЗапрещеннойЯчейкиЦвет - - - - - - - Ссылка - - - - - НовыйОбъект - Equal - true - - - - - Текст - Отсутствуют - - - - - - - НомерДругойВерсии - - - АвторДругойВерсии - - - ДатаДругойВерсии - - - - - ВерсияПроигнорирована - Equal - false - - - - - ЦветТекста - style:НепринятаяВерсия - - - Normal b75fecce-942b-4aed-abc9-e6a02e460fb3 diff --git a/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Form.form b/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Form.form index 5d0c7d00d..9e72b0683 100644 --- a/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Form.form +++ b/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Form.form @@ -179,7 +179,6 @@ ru Группа отборов - true ГруппаОтборовExtendedTooltip 364 @@ -234,7 +233,6 @@ true Label - true true Style.ПоясняющийТекст @@ -1359,7 +1357,6 @@ Left true - true 4 true true @@ -1435,7 +1432,6 @@ true Label - true true Style.ПоясняющийТекст @@ -2425,7 +2421,6 @@ Left true - true 4 true true @@ -2501,7 +2496,6 @@ true Label - true true Style.ПоясняющийТекст @@ -3563,7 +3557,6 @@ Left true - true 4 true true @@ -3638,7 +3631,6 @@ true Label - true true Style.ПоясняющийТекст @@ -4662,7 +4654,6 @@ Left true - true 4 true true @@ -5038,6 +5029,9 @@ НепринятыеПоДате.АвторДругойВерсии + + НепринятыеПоДате.ВерсияПроигнорирована + НепринятыеПоДате.ДругаяВерсияПринята diff --git a/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Module.bsl b/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Module.bsl index ba3d81c6e..bbd98eb27 100644 --- a/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Module.bsl +++ b/SSL/src/InformationRegisters/РезультатыОбменаДанными/Forms/Форма/Module.bsl @@ -55,8 +55,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; Оповестить("ЗакрытаФормаРезультатовОбменаДанными"); КонецПроцедуры @@ -616,8 +619,7 @@ СписокУзлов.ЗагрузитьЗначения(УзлыОбмена); КонецЕсли; - - Если КонтекстноеОткрытие И УзлыОбмена.Количество() = 1 Тогда + Если УзлыОбмена.Количество() < 2 Тогда УзелИнформационнойБазы = Неопределено; Элементы.УзелИнформационнойБазы.Видимость = Ложь; @@ -867,15 +869,14 @@ СтрокаПоискаЗадана = ЗначениеЗаполнено(СтрокаПоиска); ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( - НепроведенныеДокументы, "Причина", СтрокаПоиска,,, СтрокаПоискаЗадана); - + НепроведенныеДокументы, "Причина", СтрокаПоиска,ВидСравненияКомпоновкиДанных.НачинаетсяС,, СтрокаПоискаЗадана); ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( - НезаполненныеРеквизиты, "Причина", СтрокаПоиска,,, СтрокаПоискаЗадана); + НезаполненныеРеквизиты, "Причина", СтрокаПоиска,ВидСравненияКомпоновкиДанных.НачинаетсяС,, СтрокаПоискаЗадана); Если ИспользуетсяВерсионирование Тогда ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( - НепринятыеПоДате, "ПричинаЗапрета", СтрокаПоиска,,, СтрокаПоискаЗадана); + НепринятыеПоДате, "ПричинаЗапрета", СтрокаПоиска,ВидСравненияКомпоновкиДанных.НачинаетсяС,, СтрокаПоискаЗадана); КонецЕсли; @@ -1158,16 +1159,124 @@ &НаСервере Процедура УстановитьУсловноеОформление() - НепроведенныеДокументы.УсловноеОформление.Элементы.Очистить(); - Элемент = НепроведенныеДокументы.УсловноеОформление.Элементы.Добавить(); + УсловноеОформление.Элементы.Очистить(); + + // НепроведенныеДокументы. + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НепроведенныеДокументы.Имя); ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); - ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Пропущена"); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("НепроведенныеДокументы.Пропущена"); ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ОтборЭлемента.ПравоеЗначение = Истина; Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + // Коллизии. + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.Коллизии.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Коллизии.ВерсияПроигнорирована"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + + // Коллизии, другая версия принята, цвет текста. + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.КоллизииДругаяВерсияПринята.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Коллизии.ВерсияПроигнорирована"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Ложь; + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Коллизии.ДругаяВерсияПринята"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Ложь; + + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.НепринятаяВерсия); + + // Коллизии, другая версия принята, текст. + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.КоллизииДругаяВерсияПринята.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Коллизии.НомерДругойВерсии"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеЗаполнено; + + Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = 'Удалена'")); + + // НезаполненныеРеквизиты. + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НезаполненныеРеквизиты.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("НезаполненныеРеквизиты.Пропущена"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + + // НепринятыеПоДате. + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НепринятыеПоДате.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("НепринятыеПоДате.ВерсияПроигнорирована"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); + + // НепринятыеПоДате, Ссылка. + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НепринятыеПоДатеСсылка.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("НепринятыеПоДате.НовыйОбъект"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Истина; + + Элемент.Оформление.УстановитьЗначениеПараметра("Текст", НСтр("ru = 'Отсутствуют'")); + + // НепринятыеПоДате. + + Элемент = УсловноеОформление.Элементы.Добавить(); + + ПолеЭлемента = Элемент.Поля.Элементы.Добавить(); + ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.НепринятыеПоДатеАвторДругойВерсии.Имя); + + ОтборЭлемента = Элемент.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); + ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("НепринятыеПоДате.ВерсияПроигнорирована"); + ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; + ОтборЭлемента.ПравоеЗначение = Ложь; + + Элемент.Оформление.УстановитьЗначениеПараметра("ЦветТекста", ЦветаСтиля.НепринятаяВерсия); + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/InformationRegisters/СведенияОПользователях/Forms/ФормаЗаписи/Form.form b/SSL/src/InformationRegisters/СведенияОПользователях/Forms/ФормаЗаписи/Form.form index afd2b55ba..5d4165f7d 100644 --- a/SSL/src/InformationRegisters/СведенияОПользователях/Forms/ФормаЗаписи/Form.form +++ b/SSL/src/InformationRegisters/СведенияОПользователях/Forms/ФормаЗаписи/Form.form @@ -259,7 +259,6 @@ true Label - true true Left diff --git a/SSL/src/InformationRegisters/СведенияОПользователях/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/СведенияОПользователях/Forms/ФормаСписка/Form.form index c5138c19a..6df235478 100644 --- a/SSL/src/InformationRegisters/СведенияОПользователях/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/СведенияОПользователях/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 2 @@ -608,8 +607,6 @@ OnCreateAtServer ПриСозданииНаСервере - 85 - 10 DontBlock true true diff --git a/SSL/src/InformationRegisters/СеансыВерсийРасширений/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/СеансыВерсийРасширений/Forms/ФормаСписка/Form.form index da94f5f8c..fbb988a86 100644 --- a/SSL/src/InformationRegisters/СеансыВерсийРасширений/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/СеансыВерсийРасширений/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 2 @@ -327,8 +326,6 @@ OnCreateAtServer ПриСозданииНаСервере - 60 - 10 DontBlock true true diff --git a/SSL/src/InformationRegisters/СогласияНаОбработкуПерсональныхДанных/СогласияНаОбработкуПерсональныхДанных.mdo b/SSL/src/InformationRegisters/СогласияНаОбработкуПерсональныхДанных/СогласияНаОбработкуПерсональныхДанных.mdo index dd351858e..c1b461b89 100644 --- a/SSL/src/InformationRegisters/СогласияНаОбработкуПерсональныхДанных/СогласияНаОбработкуПерсональныхДанных.mdo +++ b/SSL/src/InformationRegisters/СогласияНаОбработкуПерсональныхДанных/СогласияНаОбработкуПерсональныхДанных.mdo @@ -116,7 +116,7 @@ Организация - CatalogRef.Организации + DefinedType.Организация ru diff --git a/SSL/src/InformationRegisters/СоответствияОбъектовИнформационныхБаз/ManagerModule.bsl b/SSL/src/InformationRegisters/СоответствияОбъектовИнформационныхБаз/ManagerModule.bsl index 817ce8fd9..7677a8cf5 100644 --- a/SSL/src/InformationRegisters/СоответствияОбъектовИнформационныхБаз/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/СоответствияОбъектовИнформационныхБаз/ManagerModule.bsl @@ -16,7 +16,7 @@ ОписаниеСобытия = НСтр("ru = 'Добавление записи регистра сведений ""Соответствия объектов информационных баз""'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()); Комментарий = НСтр("ru = 'Не заполнен реквизит %1. Создание записи регистра невозможно.'"); - Комментарий = СтрШаблон(Комментарий, ПроверяемыйРеквизит); + Комментарий = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(Комментарий, ПроверяемыйРеквизит); ЗаписьЖурналаРегистрации(ОписаниеСобытия, УровеньЖурналаРегистрации.Ошибка, Метаданные.РегистрыСведений.СоответствияОбъектовИнформационныхБаз, diff --git a/SSL/src/InformationRegisters/СостоянияОбменовДанными/СостоянияОбменовДанными.mdo b/SSL/src/InformationRegisters/СостоянияОбменовДанными/СостоянияОбменовДанными.mdo index 181042cde..a110add1f 100644 --- a/SSL/src/InformationRegisters/СостоянияОбменовДанными/СостоянияОбменовДанными.mdo +++ b/SSL/src/InformationRegisters/СостоянияОбменовДанными/СостоянияОбменовДанными.mdo @@ -152,6 +152,7 @@ Use Use + true true diff --git a/SSL/src/InformationRegisters/СостоянияРассылокОтчетов/ManagerModule.bsl b/SSL/src/InformationRegisters/СостоянияРассылокОтчетов/ManagerModule.bsl index c316742a9..95ddb9135 100644 --- a/SSL/src/InformationRegisters/СостоянияРассылокОтчетов/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/СостоянияРассылокОтчетов/ManagerModule.bsl @@ -5,25 +5,41 @@ // Для внутреннего использования. // Процедура ЗафиксироватьЗапускРассылки(Рассылка) Экспорт - УстановитьПривилегированныйРежим(Истина); + Если ТипЗнч(Рассылка) <> Тип("СправочникСсылка.РассылкиОтчетов") + Или Не ЗначениеЗаполнено(Рассылка) Тогда + Возврат; + КонецЕсли; - МенеджерЗаписи = СоздатьМенеджерЗаписи(); - МенеджерЗаписи.Рассылка = Рассылка; - МенеджерЗаписи.ПоследнийЗапуск = ТекущаяДатаСеанса(); - МенеджерЗаписи.Выполнена = Ложь; - МенеджерЗаписи.СОшибками = Истина; - МенеджерЗаписи.Записать(Истина); -КонецПроцедуры - -// Для внутреннего использования. -// -Процедура ЗафиксироватьРезультатВыполненияРассылки(Рассылка, РезультатВыполнения) Экспорт УстановитьПривилегированныйРежим(Истина); МенеджерЗаписи = СоздатьМенеджерЗаписи(); МенеджерЗаписи.Рассылка = Рассылка; МенеджерЗаписи.Прочитать(); + МенеджерЗаписи.Рассылка = Рассылка; + МенеджерЗаписи.ПоследнийЗапуск = ТекущаяДатаСеанса(); + МенеджерЗаписи.НомерСеанса = НомерСеансаИнформационнойБазы(); + МенеджерЗаписи.Выполнена = Ложь; + МенеджерЗаписи.СОшибками = Истина; + + МенеджерЗаписи.Записать(Истина); +КонецПроцедуры + +// Для внутреннего использования. +// +Процедура ЗафиксироватьРезультатВыполненияРассылки(Рассылка, РезультатВыполнения) Экспорт + Если ТипЗнч(Рассылка) <> Тип("СправочникСсылка.РассылкиОтчетов") + Или Не ЗначениеЗаполнено(Рассылка) Тогда + Возврат; + КонецЕсли; + + УстановитьПривилегированныйРежим(Истина); + + МенеджерЗаписи = СоздатьМенеджерЗаписи(); + МенеджерЗаписи.Рассылка = Рассылка; + МенеджерЗаписи.Прочитать(); + + МенеджерЗаписи.Рассылка = Рассылка; МенеджерЗаписи.Выполнена = ( РезультатВыполнения.ВыполненаВПапку ИЛИ РезультатВыполнения.ВыполненаВСетевойКаталог @@ -31,6 +47,9 @@ ИЛИ РезультатВыполнения.ВыполненаПоЭлектроннойПочте); МенеджерЗаписи.СОшибками = РезультатВыполнения.БылиОшибки ИЛИ РезультатВыполнения.БылиПредупреждения; + Если Не МенеджерЗаписи.СОшибками Тогда + МенеджерЗаписи.УспешныйЗапуск = МенеджерЗаписи.ПоследнийЗапуск; + КонецЕсли; МенеджерЗаписи.Записать(Истина); КонецПроцедуры diff --git a/SSL/src/InformationRegisters/СостоянияРассылокОтчетов/СостоянияРассылокОтчетов.mdo b/SSL/src/InformationRegisters/СостоянияРассылокОтчетов/СостоянияРассылокОтчетов.mdo index 1c7421874..35c245d34 100644 --- a/SSL/src/InformationRegisters/СостоянияРассылокОтчетов/СостоянияРассылокОтчетов.mdo +++ b/SSL/src/InformationRegisters/СостоянияРассылокОтчетов/СостоянияРассылокОтчетов.mdo @@ -69,6 +69,26 @@ Use + + УспешныйЗапуск + + ru + Успешный запуск + + + Date + + + + ru + Последний успешный запуск + + + + Use + Use + + Выполнена @@ -107,6 +127,25 @@ Use + + НомерСеанса + + ru + Номер сеанса + + Используется для отбора журнала регистрации по номеру сеанса рассылки отчетов. Подробнее см. НомерСеансаИнформационнойБазы в синтакс-помощнике. + + Number + + 25 + + + + + Use + Use + + Рассылка diff --git a/SSL/src/InformationRegisters/СтатистикаКонфигурации/Forms/ФормаСписка/ConditionalAppearance.dcssca b/SSL/src/InformationRegisters/СтатистикаКонфигурации/Forms/ФормаСписка/ConditionalAppearance.dcssca deleted file mode 100644 index 1f7a97063..000000000 --- a/SSL/src/InformationRegisters/СтатистикаКонфигурации/Forms/ФормаСписка/ConditionalAppearance.dcssca +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - ЗначениеПредставление - - - - - Список.ЗначениеПредставление - Equal - 0 - - - - - Формат - - - ru - ЧН=0,000 - - - - - - diff --git a/SSL/src/InformationRegisters/СтатистикаКонфигурации/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/СтатистикаКонфигурации/Forms/ФормаСписка/Form.form index a7eff0050..0bae649c5 100644 --- a/SSL/src/InformationRegisters/СтатистикаКонфигурации/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/СтатистикаКонфигурации/Forms/ФормаСписка/Form.form @@ -556,15 +556,15 @@ КОГДА 0 ТОГДА РегистрСведенийСтатистикаКонфигурации.Значение КОГДА 1 ТОГДА ВЫБОР РегистрСведенийСтатистикаКонфигурации.Значение - КОГДА 0 ТОГДА ЛОЖЬ + КОГДА 0 ТОГДА Ложь КОГДА 1 ТОГДА ИСТИНА КОНЕЦ КОНЕЦ КАК ЗначениеПредставление, ОперацииСтатистики.Наименование, РегистрСведенийСтатистикаКонфигурации.ВидСтатистики КАК ВидСтатистики, ВЫБОР РегистрСведенийСтатистикаКонфигурации.ВидСтатистики - КОГДА 0 ТОГДА ВЫРАЗИТЬ(&Метаданные КАК СТРОКА(50)) - КОГДА 1 ТОГДА ВЫРАЗИТЬ(&ФункциональнаяОпция КАК СТРОКА(50)) + КОГДА 0 ТОГДА &Метаданные + КОГДА 1 ТОГДА &ФункциональнаяОпция КОНЕЦ КАК ВидСтатистикиПредставление, РегистрСведенийСтатистикаКонфигурации.ИдентификаторОбластиСтатистики, ОбластиСтатистики.Наименование КАК НаименованиеОбласти diff --git a/SSL/src/InformationRegisters/СтатистикаКонфигурации/Forms/ФормаСписка/Module.bsl b/SSL/src/InformationRegisters/СтатистикаКонфигурации/Forms/ФормаСписка/Module.bsl index fc22df4b9..2892c6722 100644 --- a/SSL/src/InformationRegisters/СтатистикаКонфигурации/Forms/ФормаСписка/Module.bsl +++ b/SSL/src/InformationRegisters/СтатистикаКонфигурации/Forms/ФормаСписка/Module.bsl @@ -1,5 +1,5 @@ -#Область ОбработчикиСобытийФормы +#Область СлужебныеПроцедурыИФункции &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) diff --git a/SSL/src/InformationRegisters/СтатистикаКонфигурации/ManagerModule.bsl b/SSL/src/InformationRegisters/СтатистикаКонфигурации/ManagerModule.bsl index 848c007ed..bc0f6a40b 100644 --- a/SSL/src/InformationRegisters/СтатистикаКонфигурации/ManagerModule.bsl +++ b/SSL/src/InformationRegisters/СтатистикаКонфигурации/ManagerModule.bsl @@ -223,7 +223,7 @@ ЕстьРазделение = Истина; КонецЕсли; Иначе - МетаданныеМассив = СтрРазделить(ТекСтрока.Метаданные, "."); + МетаданныеМассив = СтрРазделить(ТекСтрока.ИмяТаблицы, "."); Если МетаданныеМассив[0] = "ЖурналДокументов" Тогда ЕстьРазделение = Истина; ИначеЕсли МетаданныеМассив[0] = "Перечисление" Тогда @@ -250,52 +250,44 @@ КонецФункции Функция ЗаписатьНастройкиКонфигурации() Экспорт - НастройкиКонфигурации = РазделитьФункциональныеОпцииПоОбластям(); + НастройкиКонфигурации = БулевыФункциональныеОпции(); Записать(НастройкиКонфигурации.НеРазделенная, РегистрыСведений.ОбластиСтатистики.ПолучитьСсылку("0", Истина)); Если ЗначениеЗаполнено(НастройкиКонфигурации.Разделенная) Тогда ЗаписатьРазделенную(НастройкиКонфигурации.Разделенная); КонецЕсли; КонецФункции -Функция РазделитьФункциональныеОпцииПоОбластям() - СоответствиеИменМетаданныхПоОбластям = Новый Структура("НеРазделенная, Разделенная", Новый Соответствие, Новый Соответствие); +Функция БулевыФункциональныеОпции() - РазделениеПоОбластямДанныхВключено = ЦентрМониторингаСлужебный.РазделениеПоОбластямДанныхВключено(); - Если РазделениеПоОбластямДанныхВключено Тогда - БазоваяФункциональностьВМоделиСервисаСуществует = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.БазоваяФункциональностьВМоделиСервиса"); - Если БазоваяФункциональностьВМоделиСервисаСуществует Тогда - МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса"); - ОбластьДанныхОсновныеДанныеСостав = МодульРаботаВМоделиСервиса.ОбластьДанныхОсновныеДанныеСостав(); - КонецЕсли; + Результат = Новый Структура("НеРазделенная, Разделенная", Новый Соответствие, Новый Соответствие); + + РазделениеВключено = ЦентрМониторингаСлужебный.РазделениеПоОбластямДанныхВключено() + И ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РаботаВМоделиСервиса.БазоваяФункциональностьВМоделиСервиса"); + Если РазделениеВключено Тогда + МодульРаботаВМоделиСервиса = ОбщегоНазначения.ОбщийМодуль("РаботаВМоделиСервиса"); + РазделительОсновныхДанных = МодульРаботаВМоделиСервиса.РазделительОсновныхДанных(); + РазделительВспомогательныхДанных = МодульРаботаВМоделиСервиса.РазделительВспомогательныхДанных();; КонецЕсли; Для Каждого ФункциональнаяОпция Из Метаданные.ФункциональныеОпции Цикл ОписаниеТиповФункциональнойОпции = Новый ОписаниеТипов(ФункциональнаяОпция.Хранение.Тип); Если Метаданные.Константы.Содержит(ФункциональнаяОпция.Хранение) И ОписаниеТиповФункциональнойОпции.СодержитТип(Тип("Булево")) Тогда - Если РазделениеПоОбластямДанныхВключено Тогда - ЭлементСоставаОбщегоРеквизита = ОбластьДанныхОсновныеДанныеСостав.Найти(ФункциональнаяОпция.Хранение); - Если ЭлементСоставаОбщегоРеквизита <> Неопределено Тогда - Если ЭлементСоставаОбщегоРеквизита.Использование = Метаданные.СвойстваОбъектов.ИспользованиеОбщегоРеквизита.НеИспользовать Тогда - ЕстьРазделение = Ложь; - Иначе - ЕстьРазделение = Истина; - КонецЕсли; - Иначе - ЕстьРазделение = Ложь; - КонецЕсли; + Если РазделениеВключено Тогда + ПолноеИмяКонстанты = ФункциональнаяОпция.Хранение.ПолноеИмя(); + ЕстьРазделение = ОбщегоНазначенияПовтИсп.ЭтоРазделенныйОбъектМетаданных(ПолноеИмяКонстанты, РазделительОсновныхДанных) + Или ОбщегоНазначенияПовтИсп.ЭтоРазделенныйОбъектМетаданных(ПолноеИмяКонстанты, РазделительВспомогательныхДанных); Иначе ЕстьРазделение = Ложь; КонецЕсли; - - Если ЕстьРазделение Тогда - СоответствиеИменМетаданныхПоОбластям.Разделенная.Вставить(ФункциональнаяОпция.ПолноеИмя(), Новый Структура("Запрос, ОперацииСтатистики, ВидСтатистики", ФункциональнаяОпция.Хранение, Неопределено, 1)); - Иначе - СоответствиеИменМетаданныхПоОбластям.НеРазделенная.Вставить(ФункциональнаяОпция.ПолноеИмя(), Новый Структура("Запрос, ОперацииСтатистики, ВидСтатистики", ФункциональнаяОпция.Хранение, Неопределено, 1)); - КонецЕсли; + + Коллекция = ?(ЕстьРазделение, Результат.Разделенная, Результат.НеРазделенная); + Коллекция.Вставить(ФункциональнаяОпция.ПолноеИмя(), + Новый Структура("Запрос, ОперацииСтатистики, ВидСтатистики", ФункциональнаяОпция.Хранение, Неопределено, 1)); КонецЕсли; КонецЦикла; - Возврат СоответствиеИменМетаданныхПоОбластям; + Возврат Результат; + КонецФункции Процедура ОчиститьСтатистикуКонфигурации() Экспорт @@ -338,13 +330,16 @@ Если ОперацииСсылки[ОперацияСтатистики.ОперацияСтатистикиНаименование] = Неопределено Тогда ОперацииСсылки.Вставить(ОперацияСтатистики.ОперацияСтатистикиНаименование, РегистрыСведений.ОперацииСтатистики.ПолучитьСсылку(ОперацияСтатистики.ОперацияСтатистикиНаименование)); КонецЕсли; - - ЕстьЗапись = Истина; - НовЗапись = НаборЗаписей.Добавить(); - НовЗапись.ИдентификаторОбластиСтатистики = Область; - НовЗапись.ОперацияСтатистики = ОперацииСсылки[ОперацияСтатистики.ОперацияСтатистикиНаименование]; - НовЗапись.ВидСтатистики = ТекОбъект.Значение.ВидСтатистики; - НовЗапись.Значение = Число(СтрЗаменить(ОперацияСтатистики.КоличествоОпераций,",",".")); + + Значение = Число(СтрЗаменить(ОперацияСтатистики.КоличествоОпераций,",",".")); + Если Значение <> 0 Тогда + ЕстьЗапись = Истина; + НовЗапись = НаборЗаписей.Добавить(); + НовЗапись.ИдентификаторОбластиСтатистики = Область; + НовЗапись.ОперацияСтатистики = ОперацииСсылки[ОперацияСтатистики.ОперацияСтатистикиНаименование]; + НовЗапись.ВидСтатистики = ТекОбъект.Значение.ВидСтатистики; + НовЗапись.Значение = Значение; + КонецЕсли; КонецЦикла; КонецЦикла; @@ -368,7 +363,8 @@ ЗаписьЖурналаРегистрации(НСтр("ru='СтатистикаКонфигурации'", ОбщегоНазначенияКлиентСервер.КодОсновногоЯзыка()), УровеньЖурналаРегистрации.Ошибка, ,, - ПодробноеПредставлениеОшибки(Инфо)); + НСтр("ru='Не удалось установить разделение сеанса. Область данных'") + " = " + Формат(Выборка.ОбластьДанных, "ЧГ=0") + +Символы.ПС + ПодробноеПредставлениеОшибки(Инфо)); ОбщегоНазначения.УстановитьРазделениеСеанса(Ложь); Продолжить; diff --git a/SSL/src/InformationRegisters/ТаблицыГруппДоступа/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ТаблицыГруппДоступа/Forms/ФормаСписка/Form.form index 26923958d..1ffba4270 100644 --- a/SSL/src/InformationRegisters/ТаблицыГруппДоступа/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ТаблицыГруппДоступа/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 37 @@ -453,7 +452,6 @@ ПриСозданииНаСервере Copy - 75 DontBlock true true diff --git a/SSL/src/InformationRegisters/УдалитьЗамерыВремени2/Help/ru.html b/SSL/src/InformationRegisters/УдалитьЗамерыВремени2/Help/ru.html new file mode 100644 index 000000000..418392a56 --- /dev/null +++ b/SSL/src/InformationRegisters/УдалитьЗамерыВремени2/Help/ru.html @@ -0,0 +1,15 @@ + +

        Предназначен для просмотра замеров времени, которые производятся для оценки производительности работы программы.

        +

        Открыть список можно по команде Замеры времени на панели навигации ключевой операции.

        +

        В списке выводятся:

        +
        • Ключевая операция - полное наименование ключевой операции; +
        • Дата начала замера - дата и время начала замера; +
        • Номер сеанса; +
        • Время выполнения в секундах; +
        • Комментарий - дополнительная информация о замере; +
        • Дата записи - дата и время записи; +
        • Дата окончания - дата и время окончания замера; +
        • Пользователь - полное имя пользователя; +
        • Дата записи локальная.

        Данные о замерах программа заполняет автоматически при выполнении ключевых операций. Однако при необходимости можно ввести данные о замере времени вручную. Эту возможность можно использовать для отладки, например. Нажмите Создать, заполните необходимые поля.

        +

        См. также:

        + \ No newline at end of file diff --git a/SSL/src/InformationRegisters/УдалитьЗамерыВремени2/ManagerModule.bsl b/SSL/src/InformationRegisters/УдалитьЗамерыВремени2/ManagerModule.bsl new file mode 100644 index 000000000..e69de29bb diff --git a/SSL/src/InformationRegisters/УдалитьЗамерыВремени2/УдалитьЗамерыВремени2.mdo b/SSL/src/InformationRegisters/УдалитьЗамерыВремени2/УдалитьЗамерыВремени2.mdo new file mode 100644 index 000000000..e31a7b29d --- /dev/null +++ b/SSL/src/InformationRegisters/УдалитьЗамерыВремени2/УдалитьЗамерыВремени2.mdo @@ -0,0 +1,232 @@ + + + + + + + + + + + + УдалитьЗамерыВремени2 + + ru + (не используется) Замеры времени 2 + + true + InDialog + + Use + Active + + Use + + + + + Use + LineNumber + + Use + + + + + Use + Recorder + + Use + + + + + Use + Period + + ShowError + Use + + + + true + + + ru + + + Managed + + ВремяВыполнения + + ru + Время выполнения в секундах + + Время выполнения в секундах + + Number + + 15 + 3 + true + + + + + Use + Use + + + + Комментарий + + ru + Комментарий + + + String + + 256 + + + + + Use + Use + + + + ДатаЗаписи + + ru + Дата записи + + + Date + + + + + Index + Use + Use + + + + ДатаОкончания + + ru + Дата окончания + + + Date + Number + + 15 + + + + + + Use + Use + + + + Пользователь + + ru + Пользователь + + + String + + 128 + + + + + Use + Use + + + + ДатаЗаписиЛокальная + + ru + Дата записи локальная + + + Date + + + + + Use + Use + true + + 0001-01-01T00:00:00 + + + + КлючеваяОперация + + ru + Ключевая операция + + + CatalogRef.КлючевыеОперации + + + + true + Use + Use + true + + true + true + + + ДатаНачалаЗамера + + ru + Дата начала замера + + + Date + + + + + true + Use + Use + true + + 0001-01-01T00:00:00 + + true + + + НомерСеанса + + ru + Номер сеанса + + + Number + + 15 + true + + + + + Use + Use + + true + + diff --git a/SSL/src/InformationRegisters/УдалитьЗамерыВремениТехнологические/Help/ru.html b/SSL/src/InformationRegisters/УдалитьЗамерыВремениТехнологические/Help/ru.html new file mode 100644 index 000000000..febadb170 --- /dev/null +++ b/SSL/src/InformationRegisters/УдалитьЗамерыВремениТехнологические/Help/ru.html @@ -0,0 +1,18 @@ + +

        Предназначен для просмотра замеров времени, которые производятся для оценки производительности работы программы.

        +

        Открыть список можно по команде Замеры времени на панели навигации ключевой операции.

        +

        В списке выводятся:

        +
        • Ключевая операция - полное наименование ключевой операции; +
        • Дата начала замера - дата и время начала замера; +
        • Номер сеанса; +
        • Время выполнения в секундах; +
        • Дата записи - дата и время записи; +
        • Дата окончания - дата и время окончания замера; +
        • Пользователь - полное имя пользователя; +
        • Локальная дата записи.

        Нажмите Все действия - Изменить форму, для того чтобы добавить дополнительные поля, например:

        +
        • Имя - имя ключевой операции в программе; +
        • Приоритет - выводится из списка ключевых операций; +
        • Минимально допустимый уровень - выводится из списка ключевых операций;  +
        • Целевое время - выводится из списка ключевых операций.

        Данные о замерах программа заполняет автоматически при выполнении ключевых операций. Однако при необходимости можно ввести данные о замере времени вручную. Эту возможность можно использовать для отладки, например. Нажмите Создать, заполните необходимые поля.

        +

        См. также:

        + \ No newline at end of file diff --git a/SSL/src/InformationRegisters/УдалитьЗамерыВремениТехнологические/ManagerModule.bsl b/SSL/src/InformationRegisters/УдалитьЗамерыВремениТехнологические/ManagerModule.bsl new file mode 100644 index 000000000..e69de29bb diff --git a/SSL/src/InformationRegisters/УдалитьЗамерыВремениТехнологические/УдалитьЗамерыВремениТехнологические.mdo b/SSL/src/InformationRegisters/УдалитьЗамерыВремениТехнологические/УдалитьЗамерыВремениТехнологические.mdo new file mode 100644 index 000000000..664c2f9b2 --- /dev/null +++ b/SSL/src/InformationRegisters/УдалитьЗамерыВремениТехнологические/УдалитьЗамерыВремениТехнологические.mdo @@ -0,0 +1,232 @@ + + + + + + + + + + + + УдалитьЗамерыВремениТехнологические + + ru + (не используется) Замеры времени технологические + + true + InDialog + + Use + Active + + Use + + + + + Use + LineNumber + + Use + + + + + Use + Recorder + + Use + + + + + Use + Period + + ShowError + Use + + + + true + + + ru + + + Managed + + ВремяВыполнения + + ru + Время выполнения в секундах + + Время выполнения в секундах + + Number + + 15 + 3 + true + + + + + Use + Use + + + + Комментарий + + ru + Комментарий + + + String + + 256 + + + + + Use + Use + + + + ДатаЗаписи + + ru + Дата записи + + + Date + + + + + Index + Use + Use + + + + ДатаОкончания + + ru + Дата окончания + + + Date + Number + + 15 + + + + + + Use + Use + + + + Пользователь + + ru + Пользователь + + + String + + 128 + + + + + Use + Use + + + + ДатаЗаписиЛокальная + + ru + Дата записи локальная + + + Date + + + + + Use + Use + true + + 0001-01-01T00:00:00 + + + + КлючеваяОперация + + ru + Ключевая операция + + + CatalogRef.КлючевыеОперации + + + + true + Use + Use + true + + true + true + + + ДатаНачалаЗамера + + ru + Дата начала замера + + + Date + + + + + true + Use + Use + true + + 0001-01-01T00:00:00 + + true + + + НомерСеанса + + ru + Номер сеанса + + + Number + + 15 + true + + + + + Use + Use + + true + + diff --git a/SSL/src/InformationRegisters/ФайлыВРабочемКаталоге/Forms/ФормаСписка/Form.form b/SSL/src/InformationRegisters/ФайлыВРабочемКаталоге/Forms/ФормаСписка/Form.form index e1f6e333c..cf0f971f4 100644 --- a/SSL/src/InformationRegisters/ФайлыВРабочемКаталоге/Forms/ФормаСписка/Form.form +++ b/SSL/src/InformationRegisters/ФайлыВРабочемКаталоге/Forms/ФормаСписка/Form.form @@ -12,7 +12,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 32 diff --git a/SSL/src/Reports/АнализЖурналаРегистрации/Forms/СведенияОРегламентномЗадании/Form.form b/SSL/src/Reports/АнализЖурналаРегистрации/Forms/СведенияОРегламентномЗадании/Form.form index 08e513cb9..5870892a8 100644 --- a/SSL/src/Reports/АнализЖурналаРегистрации/Forms/СведенияОРегламентномЗадании/Form.form +++ b/SSL/src/Reports/АнализЖурналаРегистрации/Forms/СведенияОРегламентномЗадании/Form.form @@ -174,7 +174,9 @@ true - + + true + СеансРегламентногоЗадания diff --git a/SSL/src/Reports/АнализЖурналаРегистрации/Forms/СведенияОРегламентномЗадании/Module.bsl b/SSL/src/Reports/АнализЖурналаРегистрации/Forms/СведенияОРегламентномЗадании/Module.bsl index ee7735dca..b87ef0e55 100644 --- a/SSL/src/Reports/АнализЖурналаРегистрации/Forms/СведенияОРегламентномЗадании/Module.bsl +++ b/SSL/src/Reports/АнализЖурналаРегистрации/Forms/СведенияОРегламентномЗадании/Module.bsl @@ -88,7 +88,7 @@ Процедура ПерейтиКЖурналуРегистрации(Команда) Для Каждого Область Из Отчет.ВыделенныеОбласти Цикл - Если Область.Имя = ТипОбластиЯчеекТабличногоДокумента.Прямоугольник Тогда + Если Область.ТипОбласти = ТипОбластиЯчеекТабличногоДокумента.Прямоугольник Тогда Расшифровка = Область.Расшифровка; Иначе Расшифровка = Неопределено; @@ -102,8 +102,10 @@ ДатаОкончания = Расшифровка.Получить(1); СеансРегламентногоЗадания.Очистить(); СеансРегламентногоЗадания.Добавить(Расшифровка.Получить(2)); + + КлючУникальности = Строка(ДатаНачала) + "-" + ДатаОкончания + "-" + Расшифровка.Получить(2); ОтборЖурналаРегистрации = Новый Структура("Сеанс, ДатаНачала, ДатаОкончания", СеансРегламентногоЗадания, ДатаНачала, ДатаОкончания); - ОткрытьФорму("Обработка.ЖурналРегистрации.Форма.ЖурналРегистрации", ОтборЖурналаРегистрации); + ОткрытьФорму("Обработка.ЖурналРегистрации.Форма.ЖурналРегистрации", ОтборЖурналаРегистрации, , КлючУникальности); КонецЦикла; КонецПроцедуры diff --git a/SSL/src/Reports/АнализЖурналаРегистрации/ManagerModule.bsl b/SSL/src/Reports/АнализЖурналаРегистрации/ManagerModule.bsl index 643018403..146b76732 100644 --- a/SSL/src/Reports/АнализЖурналаРегистрации/ManagerModule.bsl +++ b/SSL/src/Reports/АнализЖурналаРегистрации/ManagerModule.bsl @@ -57,22 +57,23 @@ // по переданному периоду. // // Параметры: -// ПараметрыОтчета - структура - набор параметров для формирования отчета: -// ДатаНачала - дата - начало периода, по которому будет собираться информация. -// ДатаОкончания - дата - окончание периода, по которому будет собираться информация. -// Пользователь - имя пользователя, по которому проводить анализ. Для варианта отчета -// "Активность пользователя". -// ПользователиИГруппы - группа(ы) пользователей и(или) пользователь(и), по которым проводить анализ. -// Для варианта отчета "Анализ активности пользователей". -// ВариантОтчета - строка - "АктивностьПользователя" или "АнализАктивностиПользователей". -// ВыводитьБизнесПроцессы - булево - получать или нет информацию по бизнес процессам из журнала регистрации. -// ВыводитьЗадачи - булево - получать или нет информацию по задачам из журнала регистрации. -// ВыводитьСправочники - булево - получать или нет информацию по справочникам из журнала регистрации. -// ВыводитьДокументы - булево - получать или нет информацию документов из журнала регистрации. +// ПараметрыОтчета - Структура - со свойствами: +// * ДатаНачала - Дата - начало периода, по которому будет собираться информация. +// * ДатаОкончания - Дата - окончание периода, по которому будет собираться информация. +// * Пользователь - Строка - имя пользователя, по которому проводить анализ. +// Для варианта отчета "Активность пользователя". +// * ПользователиИГруппы - СписокЗначений - где значение - группа(ы) пользователей и(или) +// пользователь(и), по которым проводить анализ. +// Для варианта отчета "Анализ активности пользователей". +// * ВариантОтчета - Строка - "АктивностьПользователя" или "АнализАктивностиПользователей". +// * ВыводитьЗадачи - Булево - получать или нет информацию по задачам из журнала регистрации. +// * ВыводитьСправочники - Булево - получать или нет информацию по справочникам из журнала регистрации. +// * ВыводитьДокументы - Булево - получать или нет информацию документов из журнала регистрации. +// * ВыводитьБизнесПроцессы - Булево - получать или нет информацию по бизнес процессам из журнала регистрации. // -// Возвращаемое значение -// таблица значений - таблица, содержащая не сгруппированную информацию по активности -// пользователей из журнала регистрации. +// Возвращаемое значение: +// ТаблицаЗначений - таблица, содержащая не сгруппированную информацию по активности +// пользователей из журнала регистрации. // Функция ДанныеИзЖурналаРегистрации(ПараметрыОтчета) Экспорт @@ -154,9 +155,16 @@ ПользователиДляАнализа(ПользовательФильтр, ПользователиИГруппы); КонецЕсли; + ДатыВЧасовомПоясеСервера = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыОтчета, "ДатыВЧасовомПоясеСервера", Ложь); + Если ДатыВЧасовомПоясеСервера Тогда + СмещениеВремениСервера = 0; + Иначе + СмещениеВремениСервера = ЖурналРегистрации.СмещениеВремениСервера(); + КонецЕсли; + ОтборЖурналаРегистрации = Новый Структура; - ОтборЖурналаРегистрации.Вставить("ДатаНачала", ДатаНачала); - ОтборЖурналаРегистрации.Вставить("ДатаОкончания", ДатаОкончания); + ОтборЖурналаРегистрации.Вставить("ДатаНачала", ДатаНачала + СмещениеВремениСервера); + ОтборЖурналаРегистрации.Вставить("ДатаОкончания", ДатаОкончания + СмещениеВремениСервера); ОтборЖурналаРегистрации.Вставить("ИмяПриложения", ИмяПриложения); ОтборЖурналаРегистрации.Вставить("Уровень", Уровни); ОтборЖурналаРегистрации.Вставить("Событие", События); @@ -172,7 +180,9 @@ УстановитьПривилегированныйРежим(Истина); ВыгрузитьЖурналРегистрации(ДанныеЖурналаРегистрации, ОтборЖурналаРегистрации); УстановитьПривилегированныйРежим(Ложь); - + + ОтчетПустой = (ДанныеЖурналаРегистрации.Количество() = 0); + ДанныеЖурналаРегистрации.Сортировать("Сеанс, Дата"); // Добавляем соответствие УникальныйИдентификатор-ПользовательСсылка для дальнейшего использования. @@ -192,6 +202,7 @@ // Расчет данных, необходимых для составления отчета. Для Каждого СтрокаДанныхЖурналаРегистрации Из ДанныеЖурналаРегистрации Цикл + СтрокаДанныхЖурналаРегистрации.Дата = СтрокаДанныхЖурналаРегистрации.Дата - СмещениеВремениСервера; Если СтрокаДанныхЖурналаРегистрации.ИмяПользователя = "" Тогда Продолжить; КонецЕсли; @@ -477,7 +488,9 @@ ДанныеЖурналаРегистрации = Неопределено; Ошибок = 0; Предупреждений = 0; - ДанныеЖурналаРегистрации = ИнформацияПоОшибкамЖурналаРегистрации(ДатаНачала, ДатаОкончания); + ДанныеЖурналаРегистрации = ИнформацияПоОшибкамЖурналаРегистрации(ДатаНачала, ДатаОкончания, СмещениеВремениСервера); + + ОтчетПустой = ОтчетПустой Или (ДанныеЖурналаРегистрации.Количество() = 0); Для Каждого СтрокаДанныхЖурналаРегистрации Из ДанныеЖурналаРегистрации Цикл @@ -516,7 +529,7 @@ КонецЕсли; - Возврат Новый Структура("АнализАктивностиПользователей, ОдновременноСессий", ИсходныеДанные, ОдновременноСессий); + Возврат Новый Структура("АнализАктивностиПользователей, ОдновременноСессий, ОтчетПустой", ИсходныеДанные, ОдновременноСессий, ОтчетПустой); КонецФункции @@ -661,6 +674,7 @@ ВыводитьОтбор = ПараметрыЗаполнения.ВыводитьОтбор; ЗаголовокОтчета = ПараметрыЗаполнения.ЗаголовокОтчета; СкрытьРегламентныеЗадания = ПараметрыЗаполнения.СкрытьРегламентныеЗадания; + СмещениеВремениСервера = ПараметрыЗаполнения.СмещениеВремениСервера; Результат = Новый Структура; Отчет = Новый ТабличныйДокумент; @@ -670,6 +684,7 @@ ТаблицаСеансыРегламентныхЗаданий = ПолучитьДанные.ТаблицаСеансыРегламентныхЗаданий; ОдновременноСессий = ПолучитьДанные.ИтогоОдновременноРегламентныхЗаданий; КоличествоЗапусков = ПолучитьДанные.КоличествоЗапусков; + ОтчетПустой = ПолучитьДанные.ОтчетПустой; Макет = Отчеты.АнализЖурналаРегистрации.ПолучитьМакет("ПродолжительностьРаботыРегламентныхЗаданий"); // Набор цветов для фона диаграммы и таблицы. @@ -865,8 +880,9 @@ Отчет.Вывести(Область); - Результат.Вставить("Отчет", Отчет); - Возврат Результат; + Результат.Вставить("Отчет", Отчет); + Результат.Вставить("ОтчетПустой", ОтчетПустой); + Возврат Результат; КонецФункции // Функция получает информацию по регламентным задания из журнала регистрации. @@ -888,14 +904,15 @@ // из журнала регистрации. // Функция ДанныеДляОтчетаПоПродолжительностиРаботыРегламентныхЗаданий(ПараметрыЗаполнения) - + ДатаНачала = ПараметрыЗаполнения.ДатаНачала; ДатаОкончания = ПараметрыЗаполнения.ДатаОкончания; РазмерОдновременноСессий = ПараметрыЗаполнения.РазмерОдновременноСессий; ОтображатьФоновыеЗадания = ПараметрыЗаполнения.ОтображатьФоновыеЗадания; - МинимальнаяПродолжительностьСеансовРегламентныхЗаданий = + МинимальнаяПродолжительностьСеансовРегламентныхЗаданий = ПараметрыЗаполнения.МинимальнаяПродолжительностьСеансовРегламентныхЗаданий; СкрытьРегламентныеЗадания = ПараметрыЗаполнения.СкрытьРегламентныеЗадания; + СмещениеВремениСервера = ПараметрыЗаполнения.СмещениеВремениСервера; ДанныеЖурналаРегистрации = Новый ТаблицаЗначений; @@ -903,9 +920,9 @@ Уровни.Добавить(УровеньЖурналаРегистрации.Информация); Уровни.Добавить(УровеньЖурналаРегистрации.Предупреждение); Уровни.Добавить(УровеньЖурналаРегистрации.Ошибка); - + СобытияРЗ = Новый Массив; - СобытияРЗ.Добавить("_$Job$_.Start"); + СобытияРЗ.Добавить("_$Job$_.Start"); СобытияРЗ.Добавить("_$Job$_.Cancel"); СобытияРЗ.Добавить("_$Job$_.Fail"); СобытияРЗ.Добавить("_$Job$_.Succeed"); @@ -913,11 +930,18 @@ УстановитьПривилегированныйРежим(Истина); ОтборЖурнала = Новый Структура; ОтборЖурнала.Вставить("Уровень", Уровни); - ОтборЖурнала.Вставить("ДатаНачала", ДатаНачала); - ОтборЖурнала.Вставить("ДатаОкончания", ДатаОкончания); + ОтборЖурнала.Вставить("ДатаНачала", ДатаНачала + СмещениеВремениСервера); + ОтборЖурнала.Вставить("ДатаОкончания", ДатаОкончания + СмещениеВремениСервера); ОтборЖурнала.Вставить("Событие", СобытияРЗ); ВыгрузитьЖурналРегистрации(ДанныеЖурналаРегистрации, ОтборЖурнала); + ОтчетПустой = (ДанныеЖурналаРегистрации.Количество() = 0); + + Если СмещениеВремениСервера <> 0 Тогда + Для Каждого СтрокаТаблицы Из ДанныеЖурналаРегистрации Цикл + СтрокаТаблицы.Дата = СтрокаТаблицы.Дата - СмещениеВремениСервера; + КонецЦикла; + КонецЕсли; // Формируем данные для отбора по регламентным заданиям. СписокВсехРегламентныхЗаданий = РегламентныеЗадания.ПолучитьРегламентныеЗадания(); @@ -931,7 +955,7 @@ СоответствиеНаименованиеИдентификатор.Вставить(РегЗадание.Наименование, Строка(РегЗадание.УникальныйИдентификатор)); Если РегЗадание.Наименование <> "" Тогда СоответствиеМетаданныеНазвание.Вставить(РегЗадание.Метаданные, РегЗадание.Наименование); - Иначе + Иначе СоответствиеМетаданныеНазвание.Вставить(РегЗадание.Метаданные, РегЗадание.Метаданные.Синоним); КонецЕсли; КонецЦикла; @@ -940,11 +964,11 @@ ПараметрыОдновременноСессий = Новый Структура; ПараметрыОдновременноСессий.Вставить("ДанныеЖурналаРегистрации", ДанныеЖурналаРегистрации); ПараметрыОдновременноСессий.Вставить("СоответствиеНаименованиеИдентификатор", СоответствиеНаименованиеИдентификатор); - ПараметрыОдновременноСессий.Вставить("СоответствиеМетаданныеИдентификатор", СоответствиеМетаданныеИдентификатор); - ПараметрыОдновременноСессий.Вставить("СоответствиеМетаданныеНазвание", СоответствиеМетаданныеНазвание); - ПараметрыОдновременноСессий.Вставить("СкрытьРегламентныеЗадания", СкрытьРегламентныеЗадания); - ПараметрыОдновременноСессий.Вставить("МинимальнаяПродолжительностьСеансовРегламентныхЗаданий", - МинимальнаяПродолжительностьСеансовРегламентныхЗаданий); + ПараметрыОдновременноСессий.Вставить("СоответствиеМетаданныеИдентификатор", СоответствиеМетаданныеИдентификатор); + ПараметрыОдновременноСессий.Вставить("СоответствиеМетаданныеНазвание", СоответствиеМетаданныеНазвание); + ПараметрыОдновременноСессий.Вставить("СкрытьРегламентныеЗадания", СкрытьРегламентныеЗадания); + ПараметрыОдновременноСессий.Вставить("МинимальнаяПродолжительностьСеансовРегламентныхЗаданий", + МинимальнаяПродолжительностьСеансовРегламентныхЗаданий); // Максимальное количество одновременных сессий регламентных заданий. ОдновременноСессий = ОдновременноРегламентныхЗаданий(ПараметрыОдновременноСессий); @@ -972,26 +996,31 @@ СтрокаОдновременноСессий.СписокРегламентныхЗаданий; КонецЕсли; КонецЦикла; - + ДанныеЖурналаРегистрации.Сортировать("Метаданные, Данные, Дата, Сеанс"); // Заполняем параметры, необходимые для получения данных по каждому сеансу регламентных заданий. ПараметрыСеансыРегламентныхЗаданий = Новый Структура; ПараметрыСеансыРегламентныхЗаданий.Вставить("ДанныеЖурналаРегистрации", ДанныеЖурналаРегистрации); ПараметрыСеансыРегламентныхЗаданий.Вставить("СоответствиеНаименованиеИдентификатор", СоответствиеНаименованиеИдентификатор); - ПараметрыСеансыРегламентныхЗаданий.Вставить("СоответствиеМетаданныеИдентификатор", СоответствиеМетаданныеИдентификатор); - ПараметрыСеансыРегламентныхЗаданий.Вставить("СоответствиеМетаданныеНазвание", СоответствиеМетаданныеНазвание); - ПараметрыСеансыРегламентныхЗаданий.Вставить("ОтображатьФоновыеЗадания", ОтображатьФоновыеЗадания); - ПараметрыСеансыРегламентныхЗаданий.Вставить("СкрытьРегламентныеЗадания", СкрытьРегламентныеЗадания); - - // Регламентные задания + ПараметрыСеансыРегламентныхЗаданий.Вставить("СоответствиеМетаданныеИдентификатор", СоответствиеМетаданныеИдентификатор); + ПараметрыСеансыРегламентныхЗаданий.Вставить("СоответствиеМетаданныеНазвание", СоответствиеМетаданныеНазвание); + ПараметрыСеансыРегламентныхЗаданий.Вставить("ОтображатьФоновыеЗадания", ОтображатьФоновыеЗадания); + ПараметрыСеансыРегламентныхЗаданий.Вставить("СкрытьРегламентныеЗадания", СкрытьРегламентныеЗадания); + + // Регламентные задания ТаблицаСеансыРегламентныхЗаданий = СеансыРегламентныхЗаданий(ПараметрыСеансыРегламентныхЗаданий).ТаблицаСеансыРегламентныхЗаданий; КоличествоЗапусков = СеансыРегламентныхЗаданий(ПараметрыСеансыРегламентныхЗаданий).КоличествоЗапусков; - Возврат Новый Структура("ТаблицаСеансыРегламентныхЗаданий, ИтогоОдновременноРегламентныхЗаданий, КоличествоЗапусков", - ТаблицаСеансыРегламентныхЗаданий, ИтогоОдновременноРегламентныхЗаданий, КоличествоЗапусков); -КонецФункции + Результат = Новый Структура; + Результат.Вставить("ТаблицаСеансыРегламентныхЗаданий", ТаблицаСеансыРегламентныхЗаданий); + Результат.Вставить("ИтогоОдновременноРегламентныхЗаданий", ИтогоОдновременноРегламентныхЗаданий); + Результат.Вставить("КоличествоЗапусков", КоличествоЗапусков); + Результат.Вставить("ОтчетПустой", ОтчетПустой); + + Возврат Результат; +КонецФункции Функция ОдновременноРегламентныхЗаданий(ПараметрыОдновременноСессий) @@ -1228,7 +1257,7 @@ Возврат Новый Структура("ТаблицаСеансыРегламентныхЗаданий, КоличествоЗапусков", ТаблицаСеансыРегламентныхЗаданий, КоличествоЗапусков); КонецФункции - + // Функция формирования отчета по выбранному регламентному заданию. // Параметры: // Расшифровка - расшифровка регламентного задания. @@ -1454,12 +1483,12 @@ // Должны присутствовать следующие колонки: Дата, ИмяПользователя, ПредставлениеПриложения, // ПредставлениеСобытия, Комментарий, Уровень. // -Функция СформироватьОтчетКонтрольЖурналаРегистрации(ДатаНачала, ДатаОкончания) Экспорт +Функция СформироватьОтчетКонтрольЖурналаРегистрации(ДатаНачала, ДатаОкончания, СмещениеВремениСервера) Экспорт Результат = Новый Структура; Отчет = Новый ТабличныйДокумент; Макет = Отчеты.АнализЖурналаРегистрации.ПолучитьМакет("МакетОтчетаПоОшибкамВЖурналеРегистрации"); - ДанныеЖурналаРегистрации = ИнформацияПоОшибкамЖурналаРегистрации(ДатаНачала, ДатаОкончания); + ДанныеЖурналаРегистрации = ИнформацияПоОшибкамЖурналаРегистрации(ДатаНачала, ДатаОкончания, СмещениеВремениСервера); КоличествоЗаписейЖурналаРегистрации = ДанныеЖурналаРегистрации.Количество(); ОтчетПустой = (КоличествоЗаписейЖурналаРегистрации = 0); // Проверяем заполнение отчета. @@ -1536,7 +1565,7 @@ // УровеньЖурналаРегистрации - УровеньЖурналаРегистрации.Ошибка // Начало и Окончание периода - из параметров. // -Функция ИнформацияПоОшибкамЖурналаРегистрации(Знач ДатаНачала, Знач ДатаОкончания) +Функция ИнформацияПоОшибкамЖурналаРегистрации(Знач ДатаНачала, Знач ДатаОкончания, СмещениеВремениСервера) ДанныеЖурналаРегистрации = Новый ТаблицаЗначений; @@ -1544,6 +1573,9 @@ УровниРегистрацииОшибок.Добавить(УровеньЖурналаРегистрации.Ошибка); УровниРегистрацииОшибок.Добавить(УровеньЖурналаРегистрации.Предупреждение); + ДатаНачала = ДатаНачала + СмещениеВремениСервера; + ДатаОкончания = ДатаОкончания + СмещениеВремениСервера; + УстановитьПривилегированныйРежим(Истина); ВыгрузитьЖурналРегистрации(ДанныеЖурналаРегистрации, Новый Структура("Уровень, ДатаНачала, ДатаОкончания", @@ -1552,6 +1584,12 @@ ДатаОкончания)); УстановитьПривилегированныйРежим(Ложь); + Если СмещениеВремениСервера <> 0 Тогда + Для Каждого СтрокаТаблицы Из ДанныеЖурналаРегистрации Цикл + СтрокаТаблицы.Дата = СтрокаТаблицы.Дата - СмещениеВремениСервера; + КонецЦикла; + КонецЕсли; + Возврат ДанныеЖурналаРегистрации; КонецФункции diff --git a/SSL/src/Reports/АнализЖурналаРегистрации/ObjectModule.bsl b/SSL/src/Reports/АнализЖурналаРегистрации/ObjectModule.bsl index 8b73c26b9..44574a07b 100644 --- a/SSL/src/Reports/АнализЖурналаРегистрации/ObjectModule.bsl +++ b/SSL/src/Reports/АнализЖурналаРегистрации/ObjectModule.bsl @@ -15,6 +15,25 @@ // Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт Настройки.События.ПриОпределенииПараметровВыбора = Истина; + Настройки.События.ПриЗагрузкеВариантаНаСервере = Истина; +КонецПроцедуры + +// Вызывается в обработчике одноименного события формы отчета после выполнения кода формы. +// +// Параметры: +// Форма - УправляемаяФорма - Форма отчета. +// НовыеНастройкиКД - НастройкиКомпоновкиДанных - Настройки для загрузки в компоновщик настроек. +// +// См. также: +// "Расширение управляемой формы для отчета.ПриЗагрузкеВариантаНаСервере" в синтакс-помощнике. +// +Процедура ПриЗагрузкеВариантаНаСервере(Форма, НовыеНастройкиКД) Экспорт + Если ЖурналРегистрации.СмещениеВремениСервера() = 0 Тогда + ПараметрКД = Форма.Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ДатыВЧасовомПоясеСервера"); + Если ТипЗнч(ПараметрКД) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда + ПараметрКД.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный; + КонецЕсли; + КонецЕсли; КонецПроцедуры // Вызывается в форме отчета перед выводом настройки. @@ -61,25 +80,35 @@ НастройкиОтчета = КомпоновщикНастроек.ПолучитьНастройки(); Период = НастройкиОтчета.ПараметрыДанных.Элементы.Найти("Период").Значение; ВариантОтчета = НастройкиОтчета.ПараметрыДанных.Элементы.Найти("ВариантОтчета").Значение; + ДатыВЧасовомПоясеСервера = НастройкиОтчета.ПараметрыДанных.Элементы.Найти("ДатыВЧасовомПоясеСервера").Значение; + Если ДатыВЧасовомПоясеСервера Тогда + СмещениеВремениСервера = 0; + Иначе + СмещениеВремениСервера = ЖурналРегистрации.СмещениеВремениСервера(); + КонецЕсли; + Если ВариантОтчета = "КонтрольЖурналаРегистрации" Тогда РезультатФормированияОтчета = Отчеты.АнализЖурналаРегистрации. - СформироватьОтчетКонтрольЖурналаРегистрации(Период.ДатаНачала, Период.ДатаОкончания); + СформироватьОтчетКонтрольЖурналаРегистрации(Период.ДатаНачала, Период.ДатаОкончания, СмещениеВремениСервера); // ОтчетПустой - параметр, показывающий наличие информации в отчете. Необходим для рассылки отчетов. ОтчетПустой = РезультатФормированияОтчета.ОтчетПустой; - КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("ОтчетПустой", ОтчетПустой); + КомпоновщикНастроек.ПользовательскиеНастройки.ДополнительныеСвойства.Вставить("ОтчетПустой", ОтчетПустой); ДокументРезультат.Вывести(РезультатФормированияОтчета.Отчет); ИначеЕсли ВариантОтчета = "ДиаграммаГанта" Тогда - ПродолжительностьРаботыРегламентныхЗаданий(НастройкиОтчета, ДокументРезультат); + ПродолжительностьРаботыРегламентныхЗаданий(НастройкиОтчета, ДокументРезультат, КомпоновщикНастроек, СмещениеВремениСервера); Иначе ПараметрыОтчета = ПараметрыОтчетаАктивностьПользователя(НастройкиОтчета); ПараметрыОтчета.Вставить("ДатаНачала", Период.ДатаНачала); ПараметрыОтчета.Вставить("ДатаОкончания", Период.ДатаОкончания); ПараметрыОтчета.Вставить("ВариантОтчета", ВариантОтчета); + ПараметрыОтчета.Вставить("ДатыВЧасовомПоясеСервера", ДатыВЧасовомПоясеСервера); КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, НастройкиОтчета, ДанныеРасшифровкиОбъект); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; - ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, - Отчеты.АнализЖурналаРегистрации.ДанныеИзЖурналаРегистрации(ПараметрыОтчета), ДанныеРасшифровкиОбъект, Истина); + ДанныеОтчета = Отчеты.АнализЖурналаРегистрации.ДанныеИзЖурналаРегистрации(ПараметрыОтчета); + КомпоновщикНастроек.ПользовательскиеНастройки.ДополнительныеСвойства.Вставить("ОтчетПустой", ДанныеОтчета.ОтчетПустой); + ДанныеОтчета.Удалить("ОтчетПустой"); + ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, ДанныеОтчета, ДанныеРасшифровкиОбъект, Истина); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ДокументРезультат); ПроцессорВывода.НачатьВывод(); @@ -108,7 +137,7 @@ Если Не ЗначениеЗаполнено(ПериодДень.Дата) Тогда ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - НСтр("ru = 'Не заполнено значение поля День!'"), , ); + НСтр("ru = 'Не заполнено значение поля День.'"), , ); Отказ = Истина; Возврат; КонецЕсли; @@ -119,7 +148,7 @@ И НачалоВыборки.Использование И КонецВыборки.Использование Тогда ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - НСтр("ru = 'Значение начала периода не может быть больше значения конца!'"), , ); + НСтр("ru = 'Значение начала периода не может быть больше значения конца.'"), , ); Отказ = Истина; Возврат; КонецЕсли; @@ -130,7 +159,7 @@ Если Не ЗначениеЗаполнено(Пользователь) Тогда ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - НСтр("ru = 'Не заполнено значение поля Пользователь!'"), , ); + НСтр("ru = 'Не заполнено значение поля Пользователь.'"), , ); Отказ = Истина; Возврат; КонецЕсли; @@ -159,7 +188,7 @@ Если Не ЗначениеЗаполнено(ПользователиИГруппы) Тогда ОбщегоНазначенияКлиентСервер.СообщитьПользователю( - НСтр("ru = 'Не заполнено значение поля Пользователи!'"), , ); + НСтр("ru = 'Не заполнено значение поля Пользователи.'"), , ); Отказ = Истина; Возврат; КонецЕсли; @@ -205,7 +234,7 @@ Возврат ПараметрыОтчета; КонецФункции -Процедура ПродолжительностьРаботыРегламентныхЗаданий(НастройкиОтчета, ДокументРезультат) +Процедура ПродолжительностьРаботыРегламентныхЗаданий(НастройкиОтчета, ДокументРезультат, КомпоновщикНастроек, СмещениеВремениСервера) ВыводитьЗаголовок = НастройкиОтчета.ПараметрыВывода.Элементы.Найти("ВыводитьЗаголовок"); ВыводитьОтбор = НастройкиОтчета.ПараметрыВывода.Элементы.Найти("ВыводитьОтбор"); ЗаголовокОтчета = НастройкиОтчета.ПараметрыВывода.Элементы.Найти("Заголовок"); @@ -259,11 +288,13 @@ ПараметрыЗаполнения.Вставить("ВыводитьОтбор", ВыводитьОтбор); ПараметрыЗаполнения.Вставить("ЗаголовокОтчета", ЗаголовокОтчета); ПараметрыЗаполнения.Вставить("СкрытьРегламентныеЗадания", СкрытьРегламентныеЗадания.Значение); + ПараметрыЗаполнения.Вставить("СмещениеВремениСервера", СмещениеВремениСервера); - РезультатФормированияОтчета = Отчеты.АнализЖурналаРегистрации. - СформироватьОтчетПоПродолжительностиРаботыРегламентныхЗаданий(ПараметрыЗаполнения); + РезультатФормированияОтчета = + Отчеты.АнализЖурналаРегистрации.СформироватьОтчетПоПродолжительностиРаботыРегламентныхЗаданий(ПараметрыЗаполнения); + КомпоновщикНастроек.ПользовательскиеНастройки.ДополнительныеСвойства.Вставить("ОтчетПустой", РезультатФормированияОтчета.ОтчетПустой); ДокументРезультат.Вывести(РезультатФормированияОтчета.Отчет); -КонецПроцедуры +КонецПроцедуры Функция СписокВсехРегламентныхЗаданий() УстановитьПривилегированныйРежим(Истина); diff --git a/SSL/src/Reports/АнализЖурналаРегистрации/Templates/МакетОтчетаПоОшибкамВЖурналеРегистрации/Template.mxlx b/SSL/src/Reports/АнализЖурналаРегистрации/Templates/МакетОтчетаПоОшибкамВЖурналеРегистрации/Template.mxlx index 4867ac3e0..8d51bca79 100644 --- a/SSL/src/Reports/АнализЖурналаРегистрации/Templates/МакетОтчетаПоОшибкамВЖурналеРегистрации/Template.mxlx +++ b/SSL/src/Reports/АнализЖурналаРегистрации/Templates/МакетОтчетаПоОшибкамВЖурналеРегистрации/Template.mxlx @@ -340,9 +340,9 @@ None - - - + + + 855 diff --git a/SSL/src/Reports/АнализЖурналаРегистрации/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs b/SSL/src/Reports/АнализЖурналаРегистрации/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs index 7a0d04025..1613fd920 100644 --- a/SSL/src/Reports/АнализЖурналаРегистрации/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs +++ b/SSL/src/Reports/АнализЖурналаРегистрации/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs @@ -782,6 +782,21 @@ true false + + ДатыВЧасовомПоясеСервера + + <v8:item> + <v8:lang>ru</v8:lang> + <v8:content>Даты в часовом поясе сервера</v8:content> + </v8:item> + + + xs:boolean + + false + false + Always + АнализАктивностиПользователей @@ -815,6 +830,10 @@ 096a8202-3e8e-4960-bd6b-44ff3ce4a150 + + ДатыВЧасовомПоясеСервера + false + @@ -1556,6 +1575,10 @@ Normal d37e3ad6-1428-4f76-9b07-09a46f10e8e2 + + ДатыВЧасовомПоясеСервера + false + @@ -2159,6 +2182,10 @@ b96f4337-582d-44bb-811e-0c3fd0272d90 + + ДатыВЧасовомПоясеСервера + false + @@ -2218,6 +2245,10 @@ Normal 90775166-bde1-4f36-9ab7-3e8e34927d56 + + ДатыВЧасовомПоясеСервера + false + diff --git a/SSL/src/Reports/АнализЖурналаРегистрации/Templates/ПродолжительностьРаботыРегламентныхЗаданий/Template.mxlx b/SSL/src/Reports/АнализЖурналаРегистрации/Templates/ПродолжительностьРаботыРегламентныхЗаданий/Template.mxlx index 14e79c716..7d39b658b 100644 --- a/SSL/src/Reports/АнализЖурналаРегистрации/Templates/ПродолжительностьРаботыРегламентныхЗаданий/Template.mxlx +++ b/SSL/src/Reports/АнализЖурналаРегистрации/Templates/ПродолжительностьРаботыРегламентныхЗаданий/Template.mxlx @@ -3155,9 +3155,9 @@ None - - - + + + 229 diff --git a/SSL/src/Reports/АнализЖурналаРегистрации/Templates/РасшифровкаРегламентныхЗаданий/Template.mxlx b/SSL/src/Reports/АнализЖурналаРегистрации/Templates/РасшифровкаРегламентныхЗаданий/Template.mxlx index 52aae567e..f7e3a5f34 100644 --- a/SSL/src/Reports/АнализЖурналаРегистрации/Templates/РасшифровкаРегламентныхЗаданий/Template.mxlx +++ b/SSL/src/Reports/АнализЖурналаРегистрации/Templates/РасшифровкаРегламентныхЗаданий/Template.mxlx @@ -909,10 +909,10 @@ None - - - - + + + + 49 diff --git a/SSL/src/Reports/АнализОпроса/ObjectModule.bsl b/SSL/src/Reports/АнализОпроса/ObjectModule.bsl index 904bb0d8d..bdd75f452 100644 --- a/SSL/src/Reports/АнализОпроса/ObjectModule.bsl +++ b/SSL/src/Reports/АнализОпроса/ObjectModule.bsl @@ -5,7 +5,7 @@ // Формирует табличный документ отчет. // // Параметры: -// ТаблицаОтчета - ТабличныйДокумент - +// ТаблицаОтчета - ТабличныйДокумент - документ, в который выводятся данные. // Опрос - ДокументСсылка.НазначениеОпросов - Опрос, по которому формируется отчет. // Процедура СформироватьОтчет(ТаблицаОтчета,Опрос,ВидОтчета) Экспорт @@ -74,11 +74,11 @@ // Вызывается рекурсивно, формирует полный код, и вызывает процедуры вывода вопросов и разделов . // // Параметры: -// СтрокиДерева - СтрокиДереваЗначений - -// ТаблицаОтчета - ТабличныйДокумент - -// Макет - Макет - -// УровеньРекурсии - Число - -// МассивПолныйКод - Массив - +// СтрокиДерева - СтрокиДереваЗначений - строки дерева, для которых выполняется действие. +// ТаблицаОтчета - ТабличныйДокумент - в него осуществляется вывод данных. +// Макет - Макет - макет используемый для вывода данных. +// УровеньРекурсии - Число - текущий уровень рекурсии. +// МассивПолныйКод - Массив - используется для формирования полного когда обрабатываемой строки. // Процедура ВывестиВТабличныйДокумент(СтрокиДерева,ТаблицаОтчета,Макет,УровеньРекурсии,МассивПолныйКод, ПредставленияВопросов) @@ -113,10 +113,10 @@ // Выводит в таблицу отчета раздел. // // Параметры: -// ТаблицаОтчета - ТабличныйДокумент - -// СтрокаДерева - СтрокаДереваЗначений - -// Макет - Макет - -// Полный код - Строка. +// ТаблицаОтчета - ТабличныйДокумент - в него осуществляется вывод информации. +// СтрокаДерева - СтрокаДереваЗначений - текущая строка с данными. +// Макет - Макет - макет, используемый для вывода информации. +// ПолныйКод - Строка - полный код строки, выводимой в отчет. // Процедура ВывестиРаздел(ТаблицаОтчета,СтрокаДерева,Макет,ПолныйКод) @@ -130,10 +130,10 @@ // Выводит в таблицу отчета вопрос, и вызывает соответствующие процедуры, в зависимости от типа вопроса. // // Параметры: -// ТаблицаОтчета - ТабличныйДокумент - -// СтрокаДерева - СтрокаДереваЗначений - -// Макет - Макет - -// Полный код - Строка. +// ТаблицаОтчета - ТабличныйДокумент - в него осуществляется вывод информации. +// СтрокаДерева - СтрокаДереваЗначений - текущая строка с данными. +// Макет - Макет - макет, используемый для вывода информации. +// Полный код - Строка - полный код строки, выводимой в отчет. // Процедура ВывестиВопрос(ТаблицаОтчета,СтрокаДерева,Макет,ПолныйКод, ПредставленияВопросов) @@ -161,11 +161,13 @@ // Вызывает соответствующие процедуры в зависимости от типа табличного вопроса. // // Параметры: -// ТаблицаОтчета - ТабличныйДокумент - -// СтрокаДерева - СтрокаДереваЗначений - -// Макет - Макет - +// ТаблицаОтчета - ТабличныйДокумент - в него осуществляется вывод информации. +// СтрокаДерева - СтрокаДереваЗначений - текущая строка с данными. +// Макет - Макет - макет, используемый для вывода информации. +// ПолныйКод - Строка - полный код строки, выводимой в отчет. +// ПредставленияВопросов - Соответствие - содержит информацию о формулировке и признаке "Агрегировать в отчетах". // -Процедура ВывестиОтветТабличныйВопрос(ТаблицаОтчета,СтрокаДерева,Макет,ПолныйКод, ПредставленияВопросов) +Процедура ВывестиОтветТабличныйВопрос(ТаблицаОтчета, СтрокаДерева, Макет, ПолныйКод, ПредставленияВопросов) Если СтрокаДерева.ТипТабличногоВопроса = Перечисления.ТипыТабличныхВопросов.Составной Тогда @@ -190,11 +192,13 @@ // Выводит в таблицу отчета ответы табличного вопроса с предопределенными ответами в колонках. // // Параметры: -// ТаблицаОтчета - ТабличныйДокумент - -// СтрокаДерева - СтрокаДереваЗначений - -// Макет - Макет - +// ТаблицаОтчета - ТабличныйДокумент - в него осуществляется вывод информации. +// СтрокаДерева - СтрокаДереваЗначений - текущая строка с данными. +// Макет - Макет - макет, используемый для вывода информации. +// ПолныйКод - Строка - полный код строки, выводимой в отчет. +// ПредставленияВопросов - Соответствие - содержит информацию о формулировке и признаке "Агрегировать в отчетах". // -Процедура ВывестиОтветПредопределенныеОтветыВКолонкахТабличныйВопрос(ТаблицаОтчета,СтрокаДерева,Макет,ПолныйКод,ПредставленияВопросов) +Процедура ВывестиОтветПредопределенныеОтветыВКолонкахТабличныйВопрос(ТаблицаОтчета, СтрокаДерева, Макет, ПолныйКод, ПредставленияВопросов) СтрокаДереваДетали = СтрокаДерева.Строки[0]; @@ -255,11 +259,13 @@ // Выводит в таблицу отчета ответы табличного вопроса с предопределенными ответами в строках. // // Параметры: -// ТаблицаОтчета - ТабличныйДокумент - -// СтрокаДерева - СтрокаДереваЗначений - -// Макет - Макет - +// ТаблицаОтчета - ТабличныйДокумент - в него осуществляется вывод информации. +// СтрокаДерева - СтрокаДереваЗначений - текущая строка с данными. +// Макет - Макет - макет, используемый для вывода информации. +// ПолныйКод - Строка - полный код строки, выводимой в отчет. +// ПредставленияВопросов - Соответствие - содержит информацию о формулировке и признаке "Агрегировать в отчетах". // -Процедура ВывестиОтветПредопределенныеОтветыВСтрокахТабличныйВопрос(ТаблицаОтчета,СтрокаДерева,Макет,ПолныйКод,ПредставленияВопросов) +Процедура ВывестиОтветПредопределенныеОтветыВСтрокахТабличныйВопрос(ТаблицаОтчета, СтрокаДерева, Макет, ПолныйКод, ПредставленияВопросов) ПерваяКолонка = Истина; СтрокаДереваДетали = СтрокаДерева.Строки[0]; @@ -329,11 +335,13 @@ // Выводит в таблицу отчета ответы табличного вопроса с предопределенными ответами в строках и колонках. // // Параметры: -// ТаблицаОтчета - ТабличныйДокумент - -// СтрокаДерева - СтрокаДереваЗначений - -// Макет - Макет - +// ТаблицаОтчета - ТабличныйДокумент - в него осуществляется вывод информации. +// СтрокаДерева - СтрокаДереваЗначений - текущая строка с данными. +// Макет - Макет - макет, используемый для вывода информации. +// ПолныйКод - Строка - полный код строки, выводимой в отчет. +// ПредставленияВопросов - Соответствие - содержит информацию о формулировке и признаке "Агрегировать в отчетах". // -Процедура ВывестиОтветПредопределенныеОтветыВСтрокахИКолонкахТабличныйВопрос(ТаблицаОтчета,СтрокаДерева,Макет,ПолныйКод, ПредставленияВопросов) +Процедура ВывестиОтветПредопределенныеОтветыВСтрокахИКолонкахТабличныйВопрос(ТаблицаОтчета, СтрокаДерева, Макет, ПолныйКод, ПредставленияВопросов) СтрокаДереваДетали = СтрокаДерева.Строки[0]; @@ -407,11 +415,13 @@ // Выводит в таблицу отчета ответы составного табличного вопроса. // // Параметры: -// ТаблицаОтчета - ТабличныйДокумент - -// СтрокаДерева - СтрокаДереваЗначений - -// Макет - Макет - +// ТаблицаОтчета - ТабличныйДокумент - в него осуществляется вывод информации. +// СтрокаДерева - СтрокаДереваЗначений - текущая строка с данными. +// Макет - Макет - макет, используемый для вывода информации. +// ПолныйКод - Строка - полный код строки, выводимой в отчет. +// ПредставленияВопросов - Соответствие - содержит информацию о формулировке и признаке "Агрегировать в отчетах". // -Процедура ВывестиОтветСоставнойТабличныйВопрос(ТаблицаОтчета,СтрокаДерева,Макет,ПолныйКод, ПредставленияВопросов) +Процедура ВывестиОтветСоставнойТабличныйВопрос(ТаблицаОтчета, СтрокаДерева, Макет, ПолныйКод, ПредставленияВопросов) ПерваяКолонка = Истина; @@ -454,11 +464,12 @@ // Выводит в таблицу отчета ответ простого вопроса. // // Параметры: -// ТаблицаОтчета - ТабличныйДокумент - -// СтрокаДерева - СтрокаДереваЗначений - -// Макет - Макет - +// ТаблицаОтчета - ТабличныйДокумент - в него осуществляется вывод информации. +// СтрокаДерева - СтрокаДереваЗначений - текущая строка с данными. +// Макет - Макет - макет, используемый для вывода информации. +// ПолныйКод - Строка - полный код строки, выводимой в отчет. // -Процедура ВывестиОтветПростойВопрос(ТаблицаОтчета,СтрокаДерева,Макет,ПолныйКод) +Процедура ВывестиОтветПростойВопрос(ТаблицаОтчета, СтрокаДерева, Макет, ПолныйКод) СтрокаДереваДетали = СтрокаДерева.Строки[0]; @@ -482,9 +493,11 @@ // Выводит в таблицу отчета варианты ответов для вопросов с типом Булево, ОдинВариантИз,НесколькоВариантовИз. // // Параметры: -// ТаблицаОтчета - ТабличныйДокумент - -// СтрокаДерева - СтрокаДереваЗначений - -// Макет - Макет - +// Параметры: +// ТаблицаОтчета - ТабличныйДокумент - в него осуществляется вывод информации. +// СтрокаДерева - СтрокаДереваЗначений - текущая строка с данными. +// Макет - Макет - макет, используемый для вывода информации. +// ПолныйКод - Строка - полный код строки, выводимой в отчет. // Процедура ВывестиОтветВариантыОтвета(ТаблицаОтчета,СтрокаДерева,Макет,ПолныйКод) diff --git a/SSL/src/Reports/АнализОпроса/Templates/МакетОтветившие/Template.mxlx b/SSL/src/Reports/АнализОпроса/Templates/МакетОтветившие/Template.mxlx index 8fd1719d0..d9af423e1 100644 --- a/SSL/src/Reports/АнализОпроса/Templates/МакетОтветившие/Template.mxlx +++ b/SSL/src/Reports/АнализОпроса/Templates/МакетОтветившие/Template.mxlx @@ -901,10 +901,10 @@ Solid - - - - + + + + 16 diff --git a/SSL/src/Reports/АнализОпроса/Templates/МакетОтветы/Template.mxlx b/SSL/src/Reports/АнализОпроса/Templates/МакетОтветы/Template.mxlx index 1c7682560..4f5066ab6 100644 --- a/SSL/src/Reports/АнализОпроса/Templates/МакетОтветы/Template.mxlx +++ b/SSL/src/Reports/АнализОпроса/Templates/МакетОтветы/Template.mxlx @@ -562,15 +562,15 @@ Solid - - - - - - - - - + + + + + + + + + 24 diff --git a/SSL/src/Reports/АналитическийОтчетПоАнкетированию/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs b/SSL/src/Reports/АналитическийОтчетПоАнкетированию/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs index 8471c4c2b..501c708cd 100644 --- a/SSL/src/Reports/АналитическийОтчетПоАнкетированию/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs +++ b/SSL/src/Reports/АналитическийОтчетПоАнкетированию/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs @@ -512,8 +512,9 @@ Вопрос.ТипВопроса - NotEqual + NotInList Перечисление.ТипыВопросовШаблонаАнкеты.Табличный + Перечисление.ТипыВопросовШаблонаАнкеты.Комплексный Inaccessible @@ -1157,8 +1158,9 @@ Вопрос.ТипВопроса - NotEqual + NotInList Перечисление.ТипыВопросовШаблонаАнкеты.Табличный + Перечисление.ТипыВопросовШаблонаАнкеты.Комплексный Inaccessible @@ -1361,8 +1363,9 @@ Вопрос.ТипВопроса - NotEqual + NotInList Перечисление.ТипыВопросовШаблонаАнкеты.Табличный + Перечисление.ТипыВопросовШаблонаАнкеты.Комплексный Inaccessible @@ -1945,8 +1948,9 @@ Вопрос.ТипВопроса - NotEqual + NotInList Перечисление.ТипыВопросовШаблонаАнкеты.Табличный + Перечисление.ТипыВопросовШаблонаАнкеты.Комплексный Inaccessible diff --git a/SSL/src/Reports/БизнесПроцессы/Templates/Макет/Template.dcs b/SSL/src/Reports/БизнесПроцессы/Templates/Макет/Template.dcs index 8701e2468..12f74d3d1 100644 --- a/SSL/src/Reports/БизнесПроцессы/Templates/Макет/Template.dcs +++ b/SSL/src/Reports/БизнесПроцессы/Templates/Макет/Template.dcs @@ -214,6 +214,10 @@ false ВидБизнесПроцесса InList + + + -1 + Normal 68c21fb2-0c55-4303-92c4-ecfcdf71607a diff --git a/SSL/src/Reports/ДатыЗапретаЗагрузки/Forms/ФормаОтчета/Form.form b/SSL/src/Reports/ДатыЗапретаЗагрузки/Forms/ФормаОтчета/Form.form index 7ecb53c2b..09449960a 100644 --- a/SSL/src/Reports/ДатыЗапретаЗагрузки/Forms/ФормаОтчета/Form.form +++ b/SSL/src/Reports/ДатыЗапретаЗагрузки/Forms/ФормаОтчета/Form.form @@ -120,7 +120,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 4 @@ -176,7 +175,7 @@ Left true - 100 + 40 true 10 true diff --git a/SSL/src/Reports/ДатыЗапретаИзменения/Forms/ФормаОтчета/Form.form b/SSL/src/Reports/ДатыЗапретаИзменения/Forms/ФормаОтчета/Form.form index c6ec17774..9f50f8acc 100644 --- a/SSL/src/Reports/ДатыЗапретаИзменения/Forms/ФормаОтчета/Form.form +++ b/SSL/src/Reports/ДатыЗапретаИзменения/Forms/ФормаОтчета/Form.form @@ -120,7 +120,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 4 @@ -176,7 +175,7 @@ Left true - 100 + 40 true 10 true diff --git a/SSL/src/Reports/ДосьеКонтрагента/Forms/Форма/Form.form b/SSL/src/Reports/ДосьеКонтрагента/Forms/Форма/Form.form index d4cf4f2a7..1c6e0d018 100644 --- a/SSL/src/Reports/ДосьеКонтрагента/Forms/Форма/Form.form +++ b/SSL/src/Reports/ДосьеКонтрагента/Forms/Форма/Form.form @@ -302,7 +302,6 @@ true Label - true true @@ -342,7 +341,6 @@ true Label - true true @@ -382,7 +380,6 @@ true Label - true true @@ -422,7 +419,6 @@ true Label - true true @@ -462,7 +458,6 @@ true Label - true true @@ -502,7 +497,6 @@ true Label - true true @@ -542,7 +536,6 @@ true Label - true true @@ -1665,6 +1658,23 @@ + + ПоказатьДанныеПрограммы + + <key>ru</key> + <value>Показать данные программы</value> + + 20 + + Boolean + + + true + + + true + + СформироватьОтчет diff --git a/SSL/src/Reports/ДосьеКонтрагента/Forms/Форма/Module.bsl b/SSL/src/Reports/ДосьеКонтрагента/Forms/Форма/Module.bsl index 7b012ebaa..a388f3050 100644 --- a/SSL/src/Reports/ДосьеКонтрагента/Forms/Форма/Module.bsl +++ b/SSL/src/Reports/ДосьеКонтрагента/Forms/Форма/Module.bsl @@ -12,6 +12,15 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + Если Параметры.Свойство("АвтоТест") Тогда + Возврат; + КонецЕсли; + + Если НЕ ОбщегоНазначения.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда + ТекстИсключения = НСтр("ru='Формирование отчета ""Досье контрагента"" в данной конфигурации невозможно.'"); + ВызватьИсключение ТекстИсключения; + КонецЕсли; + Если ЗначениеЗаполнено(Параметры.Контрагент) Тогда ИННКонтрагента = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Параметры.Контрагент, "ИНН"); Если ЗначениеЗаполнено(ИННКонтрагента) Тогда @@ -22,6 +31,11 @@ СтрокаПоиска = Параметры.ИНН; КонецЕсли; + ОписаниеДанныхПрограммы = Отчеты.ДосьеКонтрагента.НоваяТаблицаОписаниеДанныхПрограммы(); + РаботаСКонтрагентамиПереопределяемый.ЗаполнитьОписаниеДанныхПрограммы(ОписаниеДанныхПрограммы); + ПоказатьДанныеПрограммы = ОписаниеДанныхПрограммы.Количество() > 0; + Элементы.ДекорацияРазделДанныеПрограммы.Видимость = ПоказатьДанныеПрограммы; + ПоискПоИНН = СтроковыеФункцииКлиентСервер.ТолькоЦифрыВСтроке(СтрокаПоиска); Если ПоискПоИНН И (СтрДлина(СтрокаПоиска) = 10 @@ -66,7 +80,11 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; Если ЗначениеЗаполнено(ИдентификаторЗадания) Тогда ОтменитьВыполнениеЗадания(ИдентификаторЗадания); @@ -361,24 +379,26 @@ КонецЕсли; ПараметрыОтчета.Вставить("Контрагент", Контрагент); - РезультатВыполнения = ДлительныеОперации.ЗапуститьВыполнениеВФоне( - Новый УникальныйИдентификатор, - "Отчеты.ДосьеКонтрагента.СформироватьОтчет", + ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(Новый УникальныйИдентификатор); + ПараметрыВыполнения.НаименованиеФоновогоЗадания = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( + НСтр("ru='Формирование отчета: Досье контрагента: %1'"), + ИННПоиска); + РезультатВыполнения = ДлительныеОперации.ВыполнитьВФоне("Отчеты.ДосьеКонтрагента.СформироватьОтчет", ПараметрыОтчета, - СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку( - НСтр("ru='Формирование отчета: Досье контрагента: %1'"), - ИННПоиска)); + ПараметрыВыполнения); - АдресХранилища = РезультатВыполнения.АдресХранилища; + АдресХранилища = РезультатВыполнения.АдресРезультата; - Если РезультатВыполнения.ЗаданиеВыполнено Тогда - ЗагрузитьПодготовленныеДанные(); + Если РезультатВыполнения.Статус <> "Выполняется" Тогда ИдентификаторЗадания = Неопределено; + Если РезультатВыполнения.Статус = "Выполнено" Тогда + ЗагрузитьПодготовленныеДанные(); + КонецЕсли; Иначе ИдентификаторЗадания = РезультатВыполнения.ИдентификаторЗадания; КонецЕсли; - Возврат РезультатВыполнения.ЗаданиеВыполнено; + Возврат РезультатВыполнения.Статус <> "Выполняется"; КонецФункции @@ -438,11 +458,14 @@ &НаКлиенте Процедура ПодключитьИнтернетПоддержку(Ответ, ДопПараметры) Экспорт - Если Ответ = КодВозвратаДиалога.Да Тогда + Если Ответ = КодВозвратаДиалога.Да + И ОбщегоНазначенияКлиент.ПодсистемаСуществует("ИнтернетПоддержкаПользователей") Тогда ОписаниеОповещения = Новый ОписаниеОповещения("ПодключитьИнтернетПоддержкуЗавершение", ЭтотОбъект, ДопПараметры); - СтандартныеПодсистемыКлиент.АвторизоватьНаСайтеПоддержкиПользователей(ЭтотОбъект, ОписаниеОповещения); + МодульИнтернетПоддержкаПользователейКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль( + "ИнтернетПоддержкаПользователейКлиент"); + МодульИнтернетПоддержкаПользователейКлиент.ПодключитьИнтернетПоддержкуПользователей(ОписаниеОповещения, ЭтотОбъект); КонецЕсли; - + КонецПроцедуры &НаКлиенте @@ -503,9 +526,11 @@ Элементы.РезультатДанныеГосРеестров.ИспользуемоеИмяФайла = Неопределено; РезультатДанныеГосРеестров.ТекущаяОбласть = РезультатДанныеГосРеестров.Область(1, 2, 1, 2); // Данные программы - РезультатДанныеПрограммы.Очистить(); - Элементы.РезультатДанныеПрограммы.ИспользуемоеИмяФайла = Неопределено; - РезультатДанныеПрограммы.ТекущаяОбласть = РезультатДанныеПрограммы.Область(1, 2, 1, 2); + Если ПоказатьДанныеПрограммы Тогда + РезультатДанныеПрограммы.Очистить(); + Элементы.РезультатДанныеПрограммы.ИспользуемоеИмяФайла = Неопределено; + РезультатДанныеПрограммы.ТекущаяОбласть = РезультатДанныеПрограммы.Область(1, 2, 1, 2); + КонецЕсли; // Бух. отчетность РезультатБухгалтерскаяОтчетность.Очистить(); Элементы.РезультатБухгалтерскаяОтчетность.ИспользуемоеИмяФайла = Неопределено; @@ -544,7 +569,8 @@ РезультатДанныеГосРеестров.Вывести(ДанныеОтчета.РезультатДанныеГосРеестров); Элементы.РезультатДанныеГосРеестров.ИспользуемоеИмяФайла = СокрЛП(ДанныеОтчета.ИмяФайлаДанныеГосРеестров); // Данные программы - Если ДанныеОтчета.Свойство("РезультатДанныеПрограммы") Тогда + Если ПоказатьДанныеПрограммы + И ДанныеОтчета.Свойство("РезультатДанныеПрограммы") Тогда РезультатДанныеПрограммы.Вывести(ДанныеОтчета.РезультатДанныеПрограммы); Элементы.РезультатДанныеПрограммы.ИспользуемоеИмяФайла = СокрЛП(ДанныеОтчета.ИмяФайлаДанныеПрограммы); КонецЕсли; diff --git a/SSL/src/Reports/ДосьеКонтрагента/ManagerModule.bsl b/SSL/src/Reports/ДосьеКонтрагента/ManagerModule.bsl index 1822531fb..29dc5d940 100644 --- a/SSL/src/Reports/ДосьеКонтрагента/ManagerModule.bsl +++ b/SSL/src/Reports/ДосьеКонтрагента/ManagerModule.bsl @@ -1544,7 +1544,7 @@ КонецПроцедуры -Функция НоваяТаблицаОписаниеДанныхПрограммы() +Функция НоваяТаблицаОписаниеДанныхПрограммы() Экспорт Результат = Новый ТаблицаЗначений; Результат.Колонки.Добавить("ИмяДанных", Новый ОписаниеТипов("Строка")); @@ -3076,11 +3076,21 @@ Возврат Ложь; КонецЕсли; - ОсновнойКодОКВЭД = ВидыДеятельности[0].КодОКВЭД; - ПроизводственныеКоды = СтрРазделить( - "15;16;17;18;19;20;21;23;24;25;26;27;28;29;30;31;32;33;34;35;36;40", ";", Ложь); + ОсновнойКодОКВЭД = ВидыДеятельности[0].КодОКВЭД; + Если ВидыДеятельности[0].ЭтоОКВЭД2 Тогда + ПроизводственныеКоды = СтрРазделить( + "10;12;13;14;15;16;17;19;08.92.2;20;21;22;23;24;25;26;27;28;29;30;31;32;33;35", ";", Ложь); + Иначе + ПроизводственныеКоды = СтрРазделить( + "15;16;17;18;19;20;21;23;24;25;26;27;28;29;30;31;32;33;34;35;36;40", ";", Ложь); + КонецЕсли; - Возврат ПроизводственныеКоды.Найти(Лев(ОсновнойКодОКВЭД, 2)) <> Неопределено; + Для каждого ПроизводственныйКод Из ПроизводственныеКоды Цикл + Если Лев(ОсновнойКодОКВЭД, СтрДлина(ПроизводственныйКод)) = ПроизводственныйКод Тогда + Возврат Истина; + КонецЕсли; + КонецЦикла; + Возврат Ложь; КонецФункции @@ -3091,7 +3101,11 @@ КонецЕсли; ОсновнойКодОКВЭД = ВидыДеятельности[0].КодОКВЭД; - ТорговыеКоды = СтрРазделить("50;51;52;65.21", ";", Ложь); + Если ВидыДеятельности[0].ЭтоОКВЭД2 Тогда + ТорговыеКоды = СтрРазделить("45;46;47;64.91", ";", Ложь); + Иначе + ТорговыеКоды = СтрРазделить("50;51;52;65.21", ";", Ложь); + КонецЕсли; Для каждого ТорговыйКод Из ТорговыеКоды Цикл Если Лев(ОсновнойКодОКВЭД, СтрДлина(ТорговыйКод)) = ТорговыйКод Тогда @@ -3109,10 +3123,18 @@ Возврат Результат; КонецЕсли; - ОсновнойКодОКВЭД = Лев(ВидыДеятельности[0].КодОКВЭД, 2); + Если ВидыДеятельности[0].ЭтоОКВЭД2 Тогда + ОсновнойКодОКВЭД = ГруппаРентабельностиПоКодуОКВЭД2(ВидыДеятельности[0].КодОКВЭД); + Иначе + ОсновнойКодОКВЭД = Лев(ВидыДеятельности[0].КодОКВЭД, 2); + КонецЕсли; + Если ПустаяСтрока(ОсновнойКодОКВЭД) Тогда + Возврат Результат; + КонецЕсли; + + Результат.ВидДеятельности = ВидыДеятельности[0].НаименованиеОКВЭД; Макет = ПолучитьМакет("ПредельныеЗначенияРентабельностиИНалоговойНагрузки"); - ОбластьКлассификатор = Макет.Область("Классификатор"); ОбластьСтроки = Макет.НайтиТекст(ОсновнойКодОКВЭД, , ОбластьКлассификатор, , Истина); Если ОбластьСтроки = Неопределено Тогда @@ -3123,8 +3145,7 @@ ОбластьРентабельностьАктивов = Макет.Область("РентабельностьАктивов"); ОбластьКолонки = Макет.НайтиТекст(Год, , ОбластьРентабельностьАктивов, , Истина); НомерКолонки = ОбластьКолонки.Лево; - Результат.Рентабельность = Число(Макет.Область(НомерСтроки, НомерКолонки, НомерСтроки, НомерКолонки).Текст); - Результат.ВидДеятельности = ВидыДеятельности[0].НаименованиеОКВЭД; + Результат.Рентабельность = Число(Макет.Область(НомерСтроки, НомерКолонки, НомерСтроки, НомерКолонки).Текст); Возврат Результат; @@ -3137,10 +3158,18 @@ Возврат Результат; КонецЕсли; - ОсновнойКодОКВЭД = Лев(ВидыДеятельности[0].КодОКВЭД, 2); + Если ВидыДеятельности[0].ЭтоОКВЭД2 Тогда + ОсновнойКодОКВЭД = ГруппаРентабельностиПоКодуОКВЭД2(ВидыДеятельности[0].КодОКВЭД); + Иначе + ОсновнойКодОКВЭД = Лев(ВидыДеятельности[0].КодОКВЭД, 2); + КонецЕсли; + Если ПустаяСтрока(ОсновнойКодОКВЭД) Тогда + Возврат Результат; + КонецЕсли; + + Результат.ВидДеятельности = ВидыДеятельности[0].НаименованиеОКВЭД; Макет = ПолучитьМакет("ПредельныеЗначенияРентабельностиИНалоговойНагрузки"); - ОбластьКлассификатор = Макет.Область("Классификатор"); ОбластьСтроки = Макет.НайтиТекст(ОсновнойКодОКВЭД, , ОбластьКлассификатор, , Истина); Если ОбластьСтроки = Неопределено Тогда @@ -3151,13 +3180,116 @@ ОбластьРентабельностьПродаж = Макет.Область("РентабельностьПродаж"); ОбластьКолонки = Макет.НайтиТекст(Год, , ОбластьРентабельностьПродаж, , Истина); НомерКолонки = ОбластьКолонки.Лево; - Результат.Рентабельность = Число(Макет.Область(НомерСтроки, НомерКолонки, НомерСтроки, НомерКолонки).Текст); - Результат.ВидДеятельности = ВидыДеятельности[0].НаименованиеОКВЭД; + Результат.Рентабельность = Число(Макет.Область(НомерСтроки, НомерКолонки, НомерСтроки, НомерКолонки).Текст); Возврат Результат; КонецФункции +Функция ГруппаРентабельностиПоКодуОКВЭД2(КодОКВЭД2) + + // Ключ - код ОКВЭД или группа редакции 2, значение - группа редакции 1. + СоответствиеКодов = Новый Соответствие; + СоответствиеКодов.Вставить("01", "01"); + СоответствиеКодов.Вставить("02", "01"); + СоответствиеКодов.Вставить("03", "05"); + СоответствиеКодов.Вставить("05", "10"); + СоответствиеКодов.Вставить("08.92", "10"); + СоответствиеКодов.Вставить("06", "10"); + СоответствиеКодов.Вставить("07.21", "10"); + СоответствиеКодов.Вставить("09.1", "10"); + СоответствиеКодов.Вставить("07", "13"); + СоответствиеКодов.Вставить("08", "13"); + СоответствиеКодов.Вставить("09.9", "13"); + СоответствиеКодов.Вставить("11", "15"); + СоответствиеКодов.Вставить("12", "15"); + СоответствиеКодов.Вставить("13", "17"); + СоответствиеКодов.Вставить("14", "17"); + СоответствиеКодов.Вставить("15.11.1", "17"); + СоответствиеКодов.Вставить("15", "19"); + СоответствиеКодов.Вставить("16", "20"); + СоответствиеКодов.Вставить("17", "21"); + СоответствиеКодов.Вставить("18", "22"); + СоответствиеКодов.Вставить("58", "22"); + СоответствиеКодов.Вставить("19", "23"); + СоответствиеКодов.Вставить("24.46", "23"); + СоответствиеКодов.Вставить("20", "24"); + СоответствиеКодов.Вставить("26.80", "24"); + СоответствиеКодов.Вставить("21", "24"); + СоответствиеКодов.Вставить("22", "25"); + СоответствиеКодов.Вставить("23", "26"); + СоответствиеКодов.Вставить("24", "27"); + СоответствиеКодов.Вставить("25", "28"); + СоответствиеКодов.Вставить("33.1", "28"); + СоответствиеКодов.Вставить("33.11", "28"); + СоответствиеКодов.Вставить("33.12", "28"); + СоответствиеКодов.Вставить("28", "29"); + СоответствиеКодов.Вставить("25.4", "29"); + СоответствиеКодов.Вставить("27.5", "29"); + СоответствиеКодов.Вставить("33", "29"); + СоответствиеКодов.Вставить("28.23", "30"); + СоответствиеКодов.Вставить("27", "30"); + СоответствиеКодов.Вставить("26", "30"); + СоответствиеКодов.Вставить("32", "30"); + СоответствиеКодов.Вставить("33.13", "30"); + СоответствиеКодов.Вставить("33.14", "30"); + СоответствиеКодов.Вставить("95.12", "30"); + СоответствиеКодов.Вставить("29", "34"); + СоответствиеКодов.Вставить("30", "34"); + СоответствиеКодов.Вставить("28.99.3", "34"); + СоответствиеКодов.Вставить("33.15", "34"); + СоответствиеКодов.Вставить("33.16", "34"); + СоответствиеКодов.Вставить("33.17", "34"); + СоответствиеКодов.Вставить("33.19", "34"); + СоответствиеКодов.Вставить("33.2", "34"); + СоответствиеКодов.Вставить("31", "36"); + СоответствиеКодов.Вставить("38", "36"); + СоответствиеКодов.Вставить("35", "40"); + СоответствиеКодов.Вставить("36", "40"); + СоответствиеКодов.Вставить("41", "45"); + СоответствиеКодов.Вставить("42", "45"); + СоответствиеКодов.Вставить("43", "45"); + СоответствиеКодов.Вставить("45", "50"); + СоответствиеКодов.Вставить("47.3", "50"); + СоответствиеКодов.Вставить("46", "51"); + СоответствиеКодов.Вставить("47", "52"); + СоответствиеКодов.Вставить("55", "55"); + СоответствиеКодов.Вставить("56", "55"); + СоответствиеКодов.Вставить("49", "60"); + СоответствиеКодов.Вставить("50", "61"); + СоответствиеКодов.Вставить("51", "62"); + СоответствиеКодов.Вставить("52", "63"); + СоответствиеКодов.Вставить("65", "64"); + СоответствиеКодов.Вставить("66", "65"); + СоответствиеКодов.Вставить("67", "65"); + СоответствиеКодов.Вставить("74", "70"); + СоответствиеКодов.Вставить("73", "70"); + СоответствиеКодов.Вставить("85.2", "75"); + СоответствиеКодов.Вставить("74.60", "80"); + СоответствиеКодов.Вставить("80", "85"); + СоответствиеКодов.Вставить("91.3", "90"); + СоответствиеКодов.Вставить("91.5", "90"); + СоответствиеКодов.Вставить("92", "90"); + СоответствиеКодов.Вставить("92.71", "92"); + СоответствиеКодов.Вставить("52.7", "95"); + СоответствиеКодов.Вставить("72.5", "95"); + СоответствиеКодов.Вставить("32.20.9", "95"); + СоответствиеКодов.Вставить("32.30.9", "95"); + СоответствиеКодов.Вставить("99", "95"); + + ДлинаКода = СтрДлина(КодОКВЭД2); + Для КоличествоЗнаков = 0 По ДлинаКода - 2 Цикл + КодДляПоиска = Лев(КодОКВЭД2, ДлинаКода - КоличествоЗнаков); + ГруппаОКВЭД1 = СоответствиеКодов[КодДляПоиска]; + Если ГруппаОКВЭД1 <> Неопределено Тогда + Возврат ГруппаОКВЭД1; + КонецЕсли; + КонецЦикла; + + Возврат ""; + +КонецФункции + #КонецОбласти #Область ПроверкиКонтролирующимиОрганами @@ -3342,12 +3474,12 @@ Функция ПериодыБухгалтерскойОтчетности() Результат = Новый Структура; - Результат.Вставить("Год_1", "2014"); - Результат.Вставить("Год_2", "2013"); - Результат.Вставить("Год_3", "2012"); - Результат.Вставить("КонецГода_1", Формат(Дата(2014,12,31), "ДЛФ=DD")); - Результат.Вставить("КонецГода_2", Формат(Дата(2013,12,31), "ДЛФ=DD")); - Результат.Вставить("КонецГода_3", Формат(Дата(2012,12,31), "ДЛФ=DD")); + Результат.Вставить("Год_1", "2015"); + Результат.Вставить("Год_2", "2014"); + Результат.Вставить("Год_3", "2013"); + Результат.Вставить("КонецГода_1", Формат(Дата(2015,12,31), "ДЛФ=DD")); + Результат.Вставить("КонецГода_2", Формат(Дата(2014,12,31), "ДЛФ=DD")); + Результат.Вставить("КонецГода_3", Формат(Дата(2013,12,31), "ДЛФ=DD")); Возврат Результат; КонецФункции diff --git a/SSL/src/Reports/ДосьеКонтрагента/Templates/АнализОтчетности/Template.mxlx b/SSL/src/Reports/ДосьеКонтрагента/Templates/АнализОтчетности/Template.mxlx index 960075f92..d880b0e13 100644 --- a/SSL/src/Reports/ДосьеКонтрагента/Templates/АнализОтчетности/Template.mxlx +++ b/SSL/src/Reports/ДосьеКонтрагента/Templates/АнализОтчетности/Template.mxlx @@ -1228,14 +1228,14 @@ <line width="1" gap="false"> <v8ui:style xsi:type="v8ui:SpreadsheetDocumentDrawingLineType">None</v8ui:style> </line> - <font faceName="Arial" height="18" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="9" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="12" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <font faceName="Arial" height="18" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="9" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="12" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> <format> <width>24</width> </format> diff --git a/SSL/src/Reports/ДосьеКонтрагента/Templates/БухгалтерскаяОтчетность/Template.mxlx b/SSL/src/Reports/ДосьеКонтрагента/Templates/БухгалтерскаяОтчетность/Template.mxlx index 6011e2ff7..858d73aed 100644 --- a/SSL/src/Reports/ДосьеКонтрагента/Templates/БухгалтерскаяОтчетность/Template.mxlx +++ b/SSL/src/Reports/ДосьеКонтрагента/Templates/БухгалтерскаяОтчетность/Template.mxlx @@ -19350,17 +19350,17 @@ <line width="1" gap="false"> <v8ui:style xsi:type="v8ui:SpreadsheetDocumentCellLineType">Solid</v8ui:style> </line> - <font faceName="Arial" height="18" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="9" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="11" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="12" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="11" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <font faceName="Arial" height="18" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="9" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="11" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="12" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="11" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> <format> <width>22</width> <protection>true</protection> diff --git a/SSL/src/Reports/ДосьеКонтрагента/Templates/Главное/Template.mxlx b/SSL/src/Reports/ДосьеКонтрагента/Templates/Главное/Template.mxlx index 2c7a8d15a..fb6520892 100644 --- a/SSL/src/Reports/ДосьеКонтрагента/Templates/Главное/Template.mxlx +++ b/SSL/src/Reports/ДосьеКонтрагента/Templates/Главное/Template.mxlx @@ -1243,12 +1243,12 @@ <line width="1" gap="false"> <v8ui:style xsi:type="v8ui:SpreadsheetDocumentDrawingLineType">None</v8ui:style> </line> - <font faceName="Arial" height="18" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="16" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <font faceName="Arial" height="18" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="16" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> <format> <width>22</width> </format> diff --git a/SSL/src/Reports/ДосьеКонтрагента/Templates/ДанныеГосРеестров/Template.mxlx b/SSL/src/Reports/ДосьеКонтрагента/Templates/ДанныеГосРеестров/Template.mxlx index a7b2afe7d..a925c2be5 100644 --- a/SSL/src/Reports/ДосьеКонтрагента/Templates/ДанныеГосРеестров/Template.mxlx +++ b/SSL/src/Reports/ДосьеКонтрагента/Templates/ДанныеГосРеестров/Template.mxlx @@ -2934,14 +2934,14 @@ <duplexType>None</duplexType> <pagePlacementAlternation>Auto</pagePlacementAlternation> </printSettings> - <font faceName="Arial" height="18" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="16" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="true" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="6" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <font faceName="Arial" height="18" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="16" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="true" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="6" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> <format> <width>24</width> </format> diff --git a/SSL/src/Reports/ДосьеКонтрагента/Templates/ДанныеПрограммы/Template.mxlx b/SSL/src/Reports/ДосьеКонтрагента/Templates/ДанныеПрограммы/Template.mxlx index de4e68704..a2aba370f 100644 --- a/SSL/src/Reports/ДосьеКонтрагента/Templates/ДанныеПрограммы/Template.mxlx +++ b/SSL/src/Reports/ДосьеКонтрагента/Templates/ДанныеПрограммы/Template.mxlx @@ -801,14 +801,14 @@ <duplexType>None</duplexType> <pagePlacementAlternation>Auto</pagePlacementAlternation> </printSettings> - <font faceName="Arial" height="18" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="16" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="9" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="true" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="6" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <font faceName="Arial" height="18" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="16" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="9" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="true" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="6" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> <format> <width>24</width> </format> diff --git a/SSL/src/Reports/ДосьеКонтрагента/Templates/ПредельныеЗначенияРентабельностиИНалоговойНагрузки/Template.mxlx b/SSL/src/Reports/ДосьеКонтрагента/Templates/ПредельныеЗначенияРентабельностиИНалоговойНагрузки/Template.mxlx index 5f959d965..c86c203d4 100644 --- a/SSL/src/Reports/ДосьеКонтрагента/Templates/ПредельныеЗначенияРентабельностиИНалоговойНагрузки/Template.mxlx +++ b/SSL/src/Reports/ДосьеКонтрагента/Templates/ПредельныеЗначенияРентабельностиИНалоговойНагрузки/Template.mxlx @@ -13956,8 +13956,8 @@ <endColumn>13</endColumn> </area> </namedItem> - <font faceName="Arial" height="10" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> + <font faceName="Arial" height="10" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> <format> <width>58</width> </format> diff --git a/SSL/src/Reports/ДосьеКонтрагента/Templates/Проверки/Template.mxlx b/SSL/src/Reports/ДосьеКонтрагента/Templates/Проверки/Template.mxlx index 1a5e0d8ba..625296511 100644 --- a/SSL/src/Reports/ДосьеКонтрагента/Templates/Проверки/Template.mxlx +++ b/SSL/src/Reports/ДосьеКонтрагента/Templates/Проверки/Template.mxlx @@ -1293,14 +1293,14 @@ <duplexType>None</duplexType> <pagePlacementAlternation>Auto</pagePlacementAlternation> </printSettings> - <font faceName="Arial" height="18" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="16" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="true" strikeout="false" kind="Absolute"/> + <font faceName="Arial" height="18" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="16" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="true" strikeout="false" kind="Absolute" scale="100"/> <format> <width>24</width> </format> diff --git a/SSL/src/Reports/ДосьеКонтрагента/Templates/ФинансовыйАнализ/Template.mxlx b/SSL/src/Reports/ДосьеКонтрагента/Templates/ФинансовыйАнализ/Template.mxlx index c9da01652..a4e96e6da 100644 --- a/SSL/src/Reports/ДосьеКонтрагента/Templates/ФинансовыйАнализ/Template.mxlx +++ b/SSL/src/Reports/ДосьеКонтрагента/Templates/ФинансовыйАнализ/Template.mxlx @@ -2802,8 +2802,8 @@ <pictureSize>Stretch</pictureSize> <zOrder>0</zOrder> <object xmlns:d3p1="http://v8.1c.ru/8.2/data/chart" xsi:type="d3p1:Chart"> - <d3p1:seriesCurId>18</d3p1:seriesCurId> - <d3p1:pointsCurId>16</d3p1:pointsCurId> + <d3p1:seriesCurId>19</d3p1:seriesCurId> + <d3p1:pointsCurId>17</d3p1:pointsCurId> <d3p1:isSeriesDesign>true</d3p1:isSeriesDesign> <d3p1:realSeriesCount>1</d3p1:realSeriesCount> <d3p1:realSeriesData> @@ -3071,8 +3071,8 @@ <pictureSize>Stretch</pictureSize> <zOrder>0</zOrder> <object xmlns:d3p1="http://v8.1c.ru/8.2/data/chart" xsi:type="d3p1:Chart"> - <d3p1:seriesCurId>21</d3p1:seriesCurId> - <d3p1:pointsCurId>19</d3p1:pointsCurId> + <d3p1:seriesCurId>22</d3p1:seriesCurId> + <d3p1:pointsCurId>20</d3p1:pointsCurId> <d3p1:isSeriesDesign>true</d3p1:isSeriesDesign> <d3p1:realSeriesCount>1</d3p1:realSeriesCount> <d3p1:realSeriesData> @@ -3341,8 +3341,8 @@ <pictureSize>Stretch</pictureSize> <zOrder>0</zOrder> <object xmlns:d3p1="http://v8.1c.ru/8.2/data/chart" xsi:type="d3p1:Chart"> - <d3p1:seriesCurId>24</d3p1:seriesCurId> - <d3p1:pointsCurId>22</d3p1:pointsCurId> + <d3p1:seriesCurId>25</d3p1:seriesCurId> + <d3p1:pointsCurId>23</d3p1:pointsCurId> <d3p1:isSeriesDesign>true</d3p1:isSeriesDesign> <d3p1:realSeriesCount>1</d3p1:realSeriesCount> <d3p1:realSeriesData> @@ -3611,8 +3611,8 @@ <pictureSize>Stretch</pictureSize> <zOrder>0</zOrder> <object xmlns:d3p1="http://v8.1c.ru/8.2/data/chart" xsi:type="d3p1:Chart"> - <d3p1:seriesCurId>24</d3p1:seriesCurId> - <d3p1:pointsCurId>22</d3p1:pointsCurId> + <d3p1:seriesCurId>25</d3p1:seriesCurId> + <d3p1:pointsCurId>23</d3p1:pointsCurId> <d3p1:isSeriesDesign>true</d3p1:isSeriesDesign> <d3p1:realSeriesCount>1</d3p1:realSeriesCount> <d3p1:realSeriesData> @@ -3883,8 +3883,8 @@ <pictureSize>Stretch</pictureSize> <zOrder>0</zOrder> <object xmlns:d3p1="http://v8.1c.ru/8.2/data/chart" xsi:type="d3p1:Chart"> - <d3p1:seriesCurId>24</d3p1:seriesCurId> - <d3p1:pointsCurId>22</d3p1:pointsCurId> + <d3p1:seriesCurId>25</d3p1:seriesCurId> + <d3p1:pointsCurId>23</d3p1:pointsCurId> <d3p1:isSeriesDesign>true</d3p1:isSeriesDesign> <d3p1:realSeriesCount>1</d3p1:realSeriesCount> <d3p1:realSeriesData> @@ -4147,8 +4147,8 @@ <pictureSize>Stretch</pictureSize> <zOrder>0</zOrder> <object xmlns:d3p1="http://v8.1c.ru/8.2/data/chart" xsi:type="d3p1:Chart"> - <d3p1:seriesCurId>27</d3p1:seriesCurId> - <d3p1:pointsCurId>25</d3p1:pointsCurId> + <d3p1:seriesCurId>28</d3p1:seriesCurId> + <d3p1:pointsCurId>26</d3p1:pointsCurId> <d3p1:isSeriesDesign>true</d3p1:isSeriesDesign> <d3p1:realSeriesCount>1</d3p1:realSeriesCount> <d3p1:realSeriesData> @@ -4935,20 +4935,20 @@ <line width="1" gap="false"> <v8ui:style xsi:type="v8ui:SpreadsheetDocumentDrawingLineType">None</v8ui:style> </line> - <font faceName="Arial" height="18" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="12" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="11" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="11" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="9" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="16" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="24" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute"/> - <font faceName="Arial" height="10" bold="false" italic="false" underline="true" strikeout="false" kind="Absolute"/> + <font faceName="Arial" height="18" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="12" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="8" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="12" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="11" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="11" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="9" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="16" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="true" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="24" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="8" bold="false" italic="false" underline="false" strikeout="false" kind="Absolute" scale="100"/> + <font faceName="Arial" height="10" bold="false" italic="false" underline="true" strikeout="false" kind="Absolute" scale="100"/> <format> <width>24</width> </format> diff --git a/SSL/src/Reports/Задачи/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs b/SSL/src/Reports/Задачи/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs index d98612c46..6da2e8fa1 100644 --- a/SSL/src/Reports/Задачи/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs +++ b/SSL/src/Reports/Задачи/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs @@ -419,7 +419,6 @@ <dcsset:use>false</dcsset:use> <dcsset:left xsi:type="dcscor:Field">Автор</dcsset:left> <dcsset:comparisonType>Equal</dcsset:comparisonType> - <dcsset:right xsi:type="dcscor:DesignTimeValue">Справочник.Пользователи.ПустаяСсылка</dcsset:right> <dcsset:viewMode>Normal</dcsset:viewMode> <dcsset:userSettingID>5f599205-29c3-4667-88de-e895cb4e3131</dcsset:userSettingID> </dcsset:item> diff --git a/SSL/src/Reports/ИспользуемыеВнешниеРесурсы/ObjectModule.bsl b/SSL/src/Reports/ИспользуемыеВнешниеРесурсы/ObjectModule.bsl index c5e20346f..042c2a19f 100644 --- a/SSL/src/Reports/ИспользуемыеВнешниеРесурсы/ObjectModule.bsl +++ b/SSL/src/Reports/ИспользуемыеВнешниеРесурсы/ObjectModule.bsl @@ -40,6 +40,8 @@ НачатьТранзакцию(); + УстановитьПривилегированныйРежим(Истина); + Константы.ИспользуютсяПрофилиБезопасности.Установить(Истина); Константы.АвтоматическиНастраиватьРазрешенияВПрофиляхБезопасности.Установить(Истина); @@ -49,6 +51,8 @@ Менеджер = РегистрыСведений.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.МенеджерПримененияРазрешений(ЗапросыРазрешений); + УстановитьПривилегированныйРежим(Ложь); + ОтменитьТранзакцию(); ДокументРезультат.Вывести(Менеджер.Представление(Истина)); diff --git a/SSL/src/Reports/МестаИспользованияСсылок/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs b/SSL/src/Reports/МестаИспользованияСсылок/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs index 1b98235cf..15f9774c4 100644 --- a/SSL/src/Reports/МестаИспользованияСсылок/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs +++ b/SSL/src/Reports/МестаИспользованияСсылок/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs @@ -12,12 +12,9 @@ <title xsi:type="v8:LocalStringType"> <v8:item> <v8:lang>ru</v8:lang> - <v8:content>Ссылка</v8:content> + <v8:content>Наименование</v8:content> </v8:item> - - d5p1:AnyRef - Данные @@ -181,21 +178,6 @@ Ссылка - - - ru - Наименование - - - - - Ссылка.Код - - - ru - Код - - КоличествоДанных diff --git a/SSL/src/Reports/ПраваДоступа/Templates/Макет/Template.mxlx b/SSL/src/Reports/ПраваДоступа/Templates/Макет/Template.mxlx index a50674981..f99975f3b 100644 --- a/SSL/src/Reports/ПраваДоступа/Templates/Макет/Template.mxlx +++ b/SSL/src/Reports/ПраваДоступа/Templates/Макет/Template.mxlx @@ -1832,15 +1832,15 @@ None - - - - - - - - - + + + + + + + + + 42 diff --git a/SSL/src/Reports/ПроверкаЦелостностиТома/ObjectModule.bsl b/SSL/src/Reports/ПроверкаЦелостностиТома/ObjectModule.bsl index 2ce025837..88cb1190f 100644 --- a/SSL/src/Reports/ПроверкаЦелостностиТома/ObjectModule.bsl +++ b/SSL/src/Reports/ПроверкаЦелостностиТома/ObjectModule.bsl @@ -63,6 +63,20 @@ КонецПроцедуры +Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты) + + НастройкиОтчета = КомпоновщикНастроек.ПолучитьНастройки(); + Том = НастройкиОтчета.ПараметрыДанных.Элементы.Найти("Том").Значение; + + Если Не ЗначениеЗаполнено(Том) Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю( + НСтр("ru = 'Не заполнено значение параметра Том!'"), , ); + Отказ = Истина; + Возврат; + КонецЕсли; + +КонецПроцедуры + #КонецОбласти #КонецЕсли diff --git a/SSL/src/Reports/ПрогрессОтложенногоОбновления/ObjectModule.bsl b/SSL/src/Reports/ПрогрессОтложенногоОбновления/ObjectModule.bsl index 1bb555646..59de4b03a 100644 --- a/SSL/src/Reports/ПрогрессОтложенногоОбновления/ObjectModule.bsl +++ b/SSL/src/Reports/ПрогрессОтложенногоОбновления/ObjectModule.bsl @@ -67,11 +67,13 @@ КонецЕсли; Представление = ОбъектМетаданных.Представление(); ПолноеИмя = ОбъектМетаданных.ПолноеИмя(); + Если СтрНайти(ПолноеИмя, ".Перерасчет.") > 0 Тогда + ПолноеИмя = СтрЗаменить(ПолноеИмя, "Перерасчет.", ""); + КонецЕсли; ПолноеИмяЧастями = СтрРазделить(ПолноеИмя, "."); ТекстЗапроса = ТекстЗапроса + ?(ТекстЗапроса = "", "", "ОБЪЕДИНИТЬ ВСЕ") + " |ВЫБРАТЬ - | """ + СинонимКонфигурации + """ КАК СинонимКонфигурации, | """ + ПредставлениеТипаМетаданных(ПолноеИмяЧастями[0]) + """ КАК ТипМетаданных, | """ + ПолноеИмяЧастями[1] + """ КАК ТипОбъекта, | """ + ПолноеИмя + """ КАК ПолноеИмя, @@ -93,6 +95,7 @@ Пока Выборка.Следующий() Цикл Строка = ТаблицаРезультата.Добавить(); ЗаполнитьЗначенияСвойств(Строка, Выборка); + Строка.СинонимКонфигурации = СинонимКонфигурации; Строка.Представление = СоответствиеПредставлений[Строка.ТипОбъекта]; КонецЦикла; Ограничение = 0; @@ -108,6 +111,7 @@ Пока Выборка.Следующий() Цикл Строка = ТаблицаРезультата.Добавить(); ЗаполнитьЗначенияСвойств(Строка, Выборка); + Строка.СинонимКонфигурации = СинонимКонфигурации; Строка.Представление = СоответствиеПредставлений[Строка.ТипОбъекта]; КонецЦикла; КонецЕсли; diff --git a/SSL/src/Reports/ПрогрессОтложенногоОбновления/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs b/SSL/src/Reports/ПрогрессОтложенногоОбновления/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs index 1a45a018d..82b80a770 100644 --- a/SSL/src/Reports/ПрогрессОтложенногоОбновления/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs +++ b/SSL/src/Reports/ПрогрессОтложенногоОбновления/Templates/ОсновнаяСхемаКомпоновкиДанных/Template.dcs @@ -114,20 +114,6 @@ Variable - - - Размещение - Wrap - - - МинимальнаяШирина - 60 - - - МаксимальнаяШирина - 60 - - ВсегоОбъектов @@ -311,6 +297,11 @@ style:ГруппаВариантовОтчетовЦвет + DontUse + DontUse + DontUse + DontUse + DontUse @@ -363,6 +354,11 @@ style:ГруппаВариантовОтчетовЦвет + DontUse + DontUse + DontUse + DontUse + DontUse @@ -403,6 +399,20 @@ + + + + ОбработчикОбновления + + + + + + МинимальнаяШирина + 100 + + + @@ -431,6 +441,11 @@ style:ГруппаВариантовОтчетовЦвет + DontUse + DontUse + DontUse + DontUse + DontUse diff --git a/SSL/src/Reports/СведенияОПользователях/ObjectModule.bsl b/SSL/src/Reports/СведенияОПользователях/ObjectModule.bsl index a6ec7912d..49ee45897 100644 --- a/SSL/src/Reports/СведенияОПользователях/ObjectModule.bsl +++ b/SSL/src/Reports/СведенияОПользователях/ObjectModule.bsl @@ -72,7 +72,6 @@ Выгрузка.Индексы.Добавить("ИдентификаторПользователяИБ"); Выгрузка.Колонки.Добавить("Сопоставлен", Новый ОписаниеТипов("Булево")); - ПользователиИБ = ПользователиИнформационнойБазы.ПолучитьПользователей(); ПользователиИБ = Новый ТаблицаЗначений; ПользователиИБ.Колонки.Добавить("УникальныйИдентификатор", Новый ОписаниеТипов("УникальныйИдентификатор")); ПользователиИБ.Колонки.Добавить("Имя", Новый ОписаниеТипов("Строка",,,, Новый КвалификаторыСтроки(100))); @@ -86,6 +85,7 @@ ПользователиИБ.Колонки.Добавить("Язык", Новый ОписаниеТипов("Строка",,,, Новый КвалификаторыСтроки(100))); ПользователиИБ.Колонки.Добавить("РежимЗапуска", Новый ОписаниеТипов("Строка",,,, Новый КвалификаторыСтроки(100))); + УстановитьПривилегированныйРежим(Истина); ВсеПользователиИБ = ПользователиИнформационнойБазы.ПолучитьПользователей(); Для каждого ПользовательИБ Из ВсеПользователиИБ Цикл diff --git a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаВариантаОтчета/Form.form b/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаВариантаОтчета/Form.form deleted file mode 100644 index d1d039b6e..000000000 --- a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаВариантаОтчета/Form.form +++ /dev/null @@ -1,3987 +0,0 @@ - - - - КомпоновщикНастроекНастройки - 1 - - <key>ru</key> - <value>Таблица настроек</value> - - true - true - - true - - - Отчет.SettingsComposer.Settings - - None - - КомпоновщикНастроекНастройкиКоманднаяПанель - 3 - Left - true - - - OnActivateRow - КомпоновщикНастроекНастройкиПриАктивизацииСтроки - - - OnActivateField - КомпоновщикНастроекНастройкиПриАктивизацииПоля - - - КомпоновщикНастроекНастройкиСтрокаПоиска - 201 - - КомпоновщикНастроекНастройкиСтрокаПоискаРасширеннаяПодсказка - 203 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиСтрокаПоискаКонтекстноеМеню - 202 - true - - КомпоновщикНастроекНастройки - - true - - - - КомпоновщикНастроекНастройкиСостояниеПросмотра - 204 - - КомпоновщикНастроекНастройкиСостояниеПросмотраРасширеннаяПодсказка - 206 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиСостояниеПросмотраКонтекстноеМеню - 205 - true - - ViewStatusAddition - КомпоновщикНастроекНастройки - - true - - - - КомпоновщикНастроекНастройкиУправлениеПоиском - 207 - - КомпоновщикНастроекНастройкиУправлениеПоискомРасширеннаяПодсказка - 209 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиУправлениеПоискомКонтекстноеМеню - 208 - true - - SearchControlAddition - КомпоновщикНастроекНастройки - - true - - - - КомпоновщикНастроекНастройкиExtendedTooltip - 130 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиКонтекстноеМеню - 2 - true - - Tree - true - true - true - true - true - true - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - Auto - Auto - ExpandAllLevels - true - true - true - true - None - None - None - true -
        - - СтраницыНастроек - 4 - - СтраницаПараметровДанных - 5 - - КомпоновщикНастроекНастройкиПараметрыДанных - 6 - - <key>ru</key> - <value>Настройки параметров</value> - - true - true - - true - - - Items.КомпоновщикНастроекНастройки.CurrentData.ItemDataParameters - - None - - КомпоновщикНастроекНастройкиПараметрыДанныхКоманднаяПанель - 8 - Left - true - - - КомпоновщикНастроекНастройкиПараметрыДанныхСтрокаПоиска - 210 - - КомпоновщикНастроекНастройкиПараметрыДанныхСтрокаПоискаРасширеннаяПодсказка - 212 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПараметрыДанныхСтрокаПоискаКонтекстноеМеню - 211 - true - - КомпоновщикНастроекНастройкиПараметрыДанных - - true - - - - КомпоновщикНастроекНастройкиПараметрыДанныхСостояниеПросмотра - 213 - - КомпоновщикНастроекНастройкиПараметрыДанныхСостояниеПросмотраРасширеннаяПодсказка - 215 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПараметрыДанныхСостояниеПросмотраКонтекстноеМеню - 214 - true - - ViewStatusAddition - КомпоновщикНастроекНастройкиПараметрыДанных - - true - - - - КомпоновщикНастроекНастройкиПараметрыДанныхУправлениеПоиском - 216 - - КомпоновщикНастроекНастройкиПараметрыДанныхУправлениеПоискомРасширеннаяПодсказка - 218 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПараметрыДанныхУправлениеПоискомКонтекстноеМеню - 217 - true - - SearchControlAddition - КомпоновщикНастроекНастройкиПараметрыДанных - - true - - - - КомпоновщикНастроекНастройкиПараметрыДанныхExtendedTooltip - 133 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПараметрыДанныхКонтекстноеМеню - 7 - true - - Tree - true - true - true - 50 - true - true - true - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - Auto - Auto - ExpandAllLevels - true - true - None - None - None - true -
        - true - true - - true - - - <key>ru</key> - <value>Параметры</value> - - - СтраницаПараметровДанныхExtendedTooltip - 132 - Label - true - true - - Left - - - Page - - - StdPicture.DataCompositionDataParameters - - Vertical - auto - false - -
        - - СтраницаПользовательскихПолей - 9 - - КомпоновщикНастроекНастройкиПользовательскиеПоля - 10 - - <key>ru</key> - <value>Настройки пользовательских полей</value> - - true - true - - true - - - Items.КомпоновщикНастроекНастройки.CurrentData.ItemUserFields - - None - - КомпоновщикНастроекНастройкиПользовательскиеПоляКоманднаяПанель - 12 - Left - true - - - КомпоновщикНастроекНастройкиПользовательскиеПоляСтрокаПоиска - 219 - - КомпоновщикНастроекНастройкиПользовательскиеПоляСтрокаПоискаРасширеннаяПодсказка - 221 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПользовательскиеПоляСтрокаПоискаКонтекстноеМеню - 220 - true - - КомпоновщикНастроекНастройкиПользовательскиеПоля - - true - - - - КомпоновщикНастроекНастройкиПользовательскиеПоляСостояниеПросмотра - 222 - - КомпоновщикНастроекНастройкиПользовательскиеПоляСостояниеПросмотраРасширеннаяПодсказка - 224 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПользовательскиеПоляСостояниеПросмотраКонтекстноеМеню - 223 - true - - ViewStatusAddition - КомпоновщикНастроекНастройкиПользовательскиеПоля - - true - - - - КомпоновщикНастроекНастройкиПользовательскиеПоляУправлениеПоиском - 225 - - КомпоновщикНастроекНастройкиПользовательскиеПоляУправлениеПоискомРасширеннаяПодсказка - 227 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПользовательскиеПоляУправлениеПоискомКонтекстноеМеню - 226 - true - - SearchControlAddition - КомпоновщикНастроекНастройкиПользовательскиеПоля - - true - - - - КомпоновщикНастроекНастройкиПользовательскиеПоляExtendedTooltip - 135 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПользовательскиеПоляКонтекстноеМеню - 11 - true - - true - true - true - true - true - true - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - Auto - Auto - true - true - true - true - None - None - None - true -
        - true - true - - true - - - <key>ru</key> - <value>Пользовательские поля</value> - - - СтраницаПользовательскихПолейExtendedTooltip - 134 - Label - true - true - - Left - - - Page - - - StdPicture.DataCompositionUserFields - - auto - false - -
        - - СтраницаПолейГруппировки - 13 - - СтраницыПолейГруппировки - 14 - - НастройкиПолейГруппировки - 15 - - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировок - 16 - - <key>ru</key> - <value>Доступные поля группируемых полей</value> - - true - true - - true - - - Items.КомпоновщикНастроекНастройки.CurrentData.ItemGroupFields.GroupFieldsAvailableFields - - None - - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировокКоманднаяПанель - 18 - Left - true - - - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировокСтрокаПоиска - 228 - - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировокСтрокаПоискаРасширеннаяПодсказка - 230 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировокСтрокаПоискаКонтекстноеМеню - 229 - true - - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировок - - true - - - - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировокСостояниеПросмотра - 231 - - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировокСостояниеПросмотраРасширеннаяПодсказка - 233 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировокСостояниеПросмотраКонтекстноеМеню - 232 - true - - ViewStatusAddition - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировок - - true - - - - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировокУправлениеПоиском - 234 - - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировокУправлениеПоискомРасширеннаяПодсказка - 236 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировокУправлениеПоискомКонтекстноеМеню - 235 - true - - SearchControlAddition - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировок - - true - - - - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировокExtendedTooltip - 139 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПоляГруппировкиДоступныеПоляПолейГруппировокКонтекстноеМеню - 17 - true - - Tree - true - true - true - 60 - true - true - 15 - true - true - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - false - false - Auto - Auto - true - true - true - true - None - None - None - true -
        - - КомпоновщикНастроекНастройкиПоляГруппировки - 19 - - <key>ru</key> - <value>Таблица группируемых полей</value> - - true - true - - true - - - Items.КомпоновщикНастроекНастройки.CurrentData.ItemGroupFields - - None - - КомпоновщикНастроекНастройкиПоляГруппировкиКоманднаяПанель - 21 - Left - true - - - КомпоновщикНастроекНастройкиПоляГруппировкиСтрокаПоиска - 237 - - КомпоновщикНастроекНастройкиПоляГруппировкиСтрокаПоискаРасширеннаяПодсказка - 239 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПоляГруппировкиСтрокаПоискаКонтекстноеМеню - 238 - true - - КомпоновщикНастроекНастройкиПоляГруппировки - - true - - - - КомпоновщикНастроекНастройкиПоляГруппировкиСостояниеПросмотра - 240 - - КомпоновщикНастроекНастройкиПоляГруппировкиСостояниеПросмотраРасширеннаяПодсказка - 242 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПоляГруппировкиСостояниеПросмотраКонтекстноеМеню - 241 - true - - ViewStatusAddition - КомпоновщикНастроекНастройкиПоляГруппировки - - true - - - - КомпоновщикНастроекНастройкиПоляГруппировкиУправлениеПоиском - 243 - - КомпоновщикНастроекНастройкиПоляГруппировкиУправлениеПоискомРасширеннаяПодсказка - 245 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПоляГруппировкиУправлениеПоискомКонтекстноеМеню - 244 - true - - SearchControlAddition - КомпоновщикНастроекНастройкиПоляГруппировки - - true - - - - КомпоновщикНастроекНастройкиПоляГруппировкиExtendedTooltip - 140 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПоляГруппировкиКонтекстноеМеню - 20 - true - - true - true - true - true - true - true - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - Auto - Auto - true - true - true - true - None - None - None - true -
        - true - true - - true - - - <key>ru</key> - <value>Страница группируемых полей</value> - - - НастройкиПолейГруппировкиExtendedTooltip - 138 - Label - true - true - - Left - - - Page - - LeftNarrowest - auto - false - -
        - - НедоступныеНастройкиПолейГруппировки - 22 - - НадписьНедоступныхПолейГруппировки - 23 - - <key>ru</key> - <value>Текущий элемент не может содержать поля группировки. -Выберите в дереве структуры группировку, для которой требуется просмотреть или изменить состав полей группировки.</value> - - true - true - - true - - - НадписьНедоступныхПолейГруппировкиExtendedTooltip - 142 - Label - true - true - - Left - - - - НадписьНедоступныхПолейГруппировкиКонтекстноеМеню - 24 - true - - Label - true - 2 - true - true - false - - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница недоступных группируемых полей</value> - - - НедоступныеНастройкиПолейГруппировкиExtendedTooltip - 141 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Страницы группируемых полей</value> - - - СтраницыПолейГруппировкиExtendedTooltip - 137 - Label - true - true - - Left - - - Pages - - Auto - -
        - true - true - - true - - - <key>ru</key> - <value>Группируемые поля</value> - - - СтраницаПолейГруппировкиExtendedTooltip - 136 - Label - true - true - - Left - - - Page - - - StdPicture.DataCompositionGroupFields - - Vertical - auto - false - -
        - - СтраницаПолейВыбора - 25 - - ЛокальныеВыбранныеПоля - 26 - - <key>ru</key> - <value>Текущий элемент имеет собственные настройки выбранных полей (для детальной настройки элемента)</value> - - true - true - - true - - - ЛокальныеВыбранныеПоля - - Right - - OnChange - ЛокальныеВыбранныеПоляПриИзменении - - - ЛокальныеВыбранныеПоляExtendedTooltip - 144 - Label - true - true - - Left - - - - ЛокальныеВыбранныеПоляКонтекстноеМеню - 27 - true - - CheckBoxField - Enter - true - Left - true - - - - СтраницыПолейВыбора - 28 - - НастройкиВыбранныхПолей - 29 - - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбора - 30 - - <key>ru</key> - <value>Доступные поля полей</value> - - true - true - - true - - - Items.КомпоновщикНастроекНастройки.CurrentData.ItemSelection.SelectionAvailableFields - - None - - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбораКоманднаяПанель - 32 - Left - true - - - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбораСтрокаПоиска - 246 - - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбораСтрокаПоискаРасширеннаяПодсказка - 248 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбораСтрокаПоискаКонтекстноеМеню - 247 - true - - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбора - - true - - - - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбораСостояниеПросмотра - 249 - - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбораСостояниеПросмотраРасширеннаяПодсказка - 251 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбораСостояниеПросмотраКонтекстноеМеню - 250 - true - - ViewStatusAddition - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбора - - true - - - - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбораУправлениеПоиском - 252 - - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбораУправлениеПоискомРасширеннаяПодсказка - 254 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбораУправлениеПоискомКонтекстноеМеню - 253 - true - - SearchControlAddition - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбора - - true - - - - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбораExtendedTooltip - 147 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиВыборДоступныеПоляВыбораКонтекстноеМеню - 31 - true - - Tree - true - true - true - 60 - true - true - 15 - true - true - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - false - false - Auto - Auto - true - true - true - true - None - None - None - true -
        - - КомпоновщикНастроекНастройкиВыбор - 33 - - <key>ru</key> - <value>Таблица полей</value> - - true - true - - true - - - Items.КомпоновщикНастроекНастройки.CurrentData.ItemSelection - - None - - КомпоновщикНастроекНастройкиВыборКоманднаяПанель - 35 - Left - true - - - КомпоновщикНастроекНастройкиВыборСтрокаПоиска - 255 - - КомпоновщикНастроекНастройкиВыборСтрокаПоискаРасширеннаяПодсказка - 257 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиВыборСтрокаПоискаКонтекстноеМеню - 256 - true - - КомпоновщикНастроекНастройкиВыбор - - true - - - - КомпоновщикНастроекНастройкиВыборСостояниеПросмотра - 258 - - КомпоновщикНастроекНастройкиВыборСостояниеПросмотраРасширеннаяПодсказка - 260 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиВыборСостояниеПросмотраКонтекстноеМеню - 259 - true - - ViewStatusAddition - КомпоновщикНастроекНастройкиВыбор - - true - - - - КомпоновщикНастроекНастройкиВыборУправлениеПоиском - 261 - - КомпоновщикНастроекНастройкиВыборУправлениеПоискомРасширеннаяПодсказка - 263 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиВыборУправлениеПоискомКонтекстноеМеню - 262 - true - - SearchControlAddition - КомпоновщикНастроекНастройкиВыбор - - true - - - - КомпоновщикНастроекНастройкиВыборExtendedTooltip - 148 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиВыборКонтекстноеМеню - 34 - true - - Tree - true - true - true - true - true - true - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - Auto - Auto - ExpandAllLevels - true - true - true - true - None - None - None - true -
        - true - true - - true - - - <key>ru</key> - <value>Страница полей</value> - - - НастройкиВыбранныхПолейExtendedTooltip - 146 - Label - true - true - - Left - - - Page - - LeftNarrowest - auto - false - -
        - - ОтключенныеНастройкиВыбранныхПолей - 36 - - НадписьЛокальныхВыбранныхПолей - 37 - - <key>ru</key> - <value>Выбранные поля для текущего элемента будут автоматически формироваться на основании выбранных полей всего отчета. -Выберите в дереве структуры элемент - отчет для редактирования его выбранных полей. -Если необходимо, чтобы текущий элемент имел выбранные поля, отличные от выбранных полей отчета, установите флажок, расположенный над этим текстом.</value> - - true - true - - true - - - НадписьЛокальныхВыбранныхПолейExtendedTooltip - 150 - Label - true - true - - Left - - - - НадписьЛокальныхВыбранныхПолейКонтекстноеМеню - 38 - true - - Label - true - 3 - true - true - false - - Left - - - - ПереходКВыбраннымПолямОтчета - 39 - - <key>ru</key> - <value>Нажмите здесь для перехода к выбранным полям отчета.</value> - - true - true - - true - - - ПереходКВыбраннымПолямОтчетаExtendedTooltip - 151 - Label - true - true - - Left - - - - ПереходКВыбраннымПолямОтчетаКонтекстноеМеню - 40 - true - - Label - true - true - - - Click - ПерейтиКОтчету - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница отключенных полей</value> - - - ОтключенныеНастройкиВыбранныхПолейExtendedTooltip - 149 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - НедоступныеНастройкиВыбранныхПолей - 41 - - НадписьНедоступныхВыбранныхПолей - 42 - - <key>ru</key> - <value>У текущего элемента не могут быть установлены выбранные поля. -Выберите в дереве структуры элемент - отчет для редактирования его выбранных полей.</value> - - true - true - - true - - - НадписьНедоступныхВыбранныхПолейExtendedTooltip - 153 - Label - true - true - - Left - - - - НадписьНедоступныхВыбранныхПолейКонтекстноеМеню - 43 - true - - Label - true - 2 - true - true - false - - Left - - - - ПереходКВыбраннымПолямОтчета1 - 44 - - <key>ru</key> - <value>Нажмите здесь для перехода к выбранным полям отчета.</value> - - true - true - - true - - - ПереходКВыбраннымПолямОтчета1ExtendedTooltip - 154 - Label - true - true - - Left - - - - ПереходКВыбраннымПолямОтчета1КонтекстноеМеню - 45 - true - - Label - true - true - - - Click - ПерейтиКОтчету - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница недоступных полей</value> - - - НедоступныеНастройкиВыбранныхПолейExtendedTooltip - 152 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Страницы полей</value> - - - СтраницыПолейВыбораExtendedTooltip - 145 - Label - true - true - - Left - - - Pages - - Auto - -
        - true - true - - true - - - <key>ru</key> - <value>Поля</value> - - - СтраницаПолейВыбораExtendedTooltip - 143 - Label - true - true - - Left - - - Page - - - StdPicture.DataCompositionSelection - - Vertical - auto - false - -
        - - СтраницаОтбора - 46 - - ЛокальныйОтбор - 47 - - <key>ru</key> - <value>Текущий элемент имеет собственный отбор (для фильтрации записей, выводимых в элементе)</value> - - true - true - - true - - - ЛокальныйОтбор - - Right - - OnChange - ЛокальныйОтборПриИзменении - - - ЛокальныйОтборExtendedTooltip - 156 - Label - true - true - - Left - - - - ЛокальныйОтборКонтекстноеМеню - 48 - true - - CheckBoxField - Enter - true - Left - true - - - - СтраницыОтбора - 49 - - НастройкиОтбора - 50 - - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбора - 51 - - <key>ru</key> - <value>Доступные поля отбора</value> - - true - true - - true - - - Items.КомпоновщикНастроекНастройки.CurrentData.ItemFilter.FilterAvailableFields - - None - - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбораКоманднаяПанель - 53 - Left - true - - - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбораСтрокаПоиска - 264 - - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбораСтрокаПоискаРасширеннаяПодсказка - 266 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбораСтрокаПоискаКонтекстноеМеню - 265 - true - - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбора - - true - - - - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбораСостояниеПросмотра - 267 - - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбораСостояниеПросмотраРасширеннаяПодсказка - 269 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбораСостояниеПросмотраКонтекстноеМеню - 268 - true - - ViewStatusAddition - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбора - - true - - - - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбораУправлениеПоиском - 270 - - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбораУправлениеПоискомРасширеннаяПодсказка - 272 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбораУправлениеПоискомКонтекстноеМеню - 271 - true - - SearchControlAddition - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбора - - true - - - - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбораExtendedTooltip - 159 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиОтборДоступныеПоляОтбораКонтекстноеМеню - 52 - true - - Tree - true - true - true - 60 - true - true - 15 - true - true - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - false - false - Auto - Auto - true - true - true - true - None - None - None - true -
        - - КомпоновщикНастроекНастройкиОтбор - 54 - - <key>ru</key> - <value>Таблица отбора</value> - - true - true - - true - - - Items.КомпоновщикНастроекНастройки.CurrentData.ItemFilter - - None - - КомпоновщикНастроекНастройкиОтборКоманднаяПанель - 56 - Left - true - - - КомпоновщикНастроекНастройкиОтборСтрокаПоиска - 273 - - КомпоновщикНастроекНастройкиОтборСтрокаПоискаРасширеннаяПодсказка - 275 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиОтборСтрокаПоискаКонтекстноеМеню - 274 - true - - КомпоновщикНастроекНастройкиОтбор - - true - - - - КомпоновщикНастроекНастройкиОтборСостояниеПросмотра - 276 - - КомпоновщикНастроекНастройкиОтборСостояниеПросмотраРасширеннаяПодсказка - 278 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиОтборСостояниеПросмотраКонтекстноеМеню - 277 - true - - ViewStatusAddition - КомпоновщикНастроекНастройкиОтбор - - true - - - - КомпоновщикНастроекНастройкиОтборУправлениеПоиском - 279 - - КомпоновщикНастроекНастройкиОтборУправлениеПоискомРасширеннаяПодсказка - 281 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиОтборУправлениеПоискомКонтекстноеМеню - 280 - true - - SearchControlAddition - КомпоновщикНастроекНастройкиОтбор - - true - - - - КомпоновщикНастроекНастройкиОтборExtendedTooltip - 160 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиОтборКонтекстноеМеню - 55 - true - - Tree - true - true - true - true - true - true - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - Auto - Auto - ExpandAllLevels - true - true - true - true - None - None - None - true - All - false -
        - true - true - - true - - - <key>ru</key> - <value>Страница полей</value> - - - НастройкиОтбораExtendedTooltip - 158 - Label - true - true - - Left - - - Page - - LeftNarrowest - auto - false - -
        - - ОтключенныеНастройкиОтбора - 57 - - НадписьЛокальногоОтбора - 58 - - <key>ru</key> - <value>В текущем элементе отбор не установлен. -Выберите в дереве структуры отчет для редактирования отбора отчета в целом. -Если необходимо, чтобы текущий элемент имел собственный отбор, установите флажок, расположенный над этим текстом.</value> - - true - true - - true - - - НадписьЛокальногоОтбораExtendedTooltip - 162 - Label - true - true - - Left - - - - НадписьЛокальногоОтбораКонтекстноеМеню - 59 - true - - Label - true - 3 - true - true - false - - Left - - - - ПереходКОтборуОтчета - 60 - - <key>ru</key> - <value>Нажмите здесь для перехода к отбору отчета.</value> - - true - true - - true - - - ПереходКОтборуОтчетаExtendedTooltip - 163 - Label - true - true - - Left - - - - ПереходКОтборуОтчетаКонтекстноеМеню - 61 - true - - Label - true - true - - - Click - ПерейтиКОтчету - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница отключенного отбора</value> - - - ОтключенныеНастройкиОтбораExtendedTooltip - 161 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - НедоступныеНастройкиОтбора - 62 - - НадписьНедоступногоОтбора - 63 - - <key>ru</key> - <value>У текущего элемента не может быть установлен отбор. -Выберите в дереве структуры отчет для редактирования отбора отчета в целом.</value> - - true - true - - true - - - НадписьНедоступногоОтбораExtendedTooltip - 165 - Label - true - true - - Left - - - - НадписьНедоступногоОтбораКонтекстноеМеню - 64 - true - - Label - true - 2 - true - true - false - - Left - - - - ПереходКОтборуОтчета1 - 65 - - <key>ru</key> - <value>Нажмите здесь для перехода к отбору отчета.</value> - - true - true - - true - - - ПереходКОтборуОтчета1ExtendedTooltip - 166 - Label - true - true - - Left - - - - ПереходКОтборуОтчета1КонтекстноеМеню - 66 - true - - Label - true - true - - - Click - ПерейтиКОтчету - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница недоступного отбора</value> - - - НедоступныеНастройкиОтбораExtendedTooltip - 164 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Страницы отбора</value> - - - СтраницыОтбораExtendedTooltip - 157 - Label - true - true - - Left - - - Pages - - Auto - -
        - true - true - - true - - - <key>ru</key> - <value>Отбор</value> - - - СтраницаОтбораExtendedTooltip - 155 - Label - true - true - - Left - - - Page - - - StdPicture.DataCompositionFilter - - Vertical - auto - false - -
        - - СтраницаПорядка - 67 - - ЛокальныйПорядок - 68 - - <key>ru</key> - <value>Текущий элемент имеет собственную сортировку (для упорядочивания записей, выводимых в элементе)</value> - - true - true - - true - - - ЛокальныйПорядок - - Right - - OnChange - ЛокальныйПорядокПриИзменении - - - ЛокальныйПорядокExtendedTooltip - 168 - Label - true - true - - Left - - - - ЛокальныйПорядокКонтекстноеМеню - 69 - true - - CheckBoxField - Enter - true - Left - true - - - - СтраницыПорядка - 70 - - НастройкиПорядка - 71 - - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядка - 72 - - <key>ru</key> - <value>Доступные поля сортировки</value> - - true - true - - true - - - Items.КомпоновщикНастроекНастройки.CurrentData.ItemOrder.OrderAvailableFields - - None - - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядкаКоманднаяПанель - 74 - Left - true - - - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядкаСтрокаПоиска - 282 - - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядкаСтрокаПоискаРасширеннаяПодсказка - 284 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядкаСтрокаПоискаКонтекстноеМеню - 283 - true - - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядка - - true - - - - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядкаСостояниеПросмотра - 285 - - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядкаСостояниеПросмотраРасширеннаяПодсказка - 287 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядкаСостояниеПросмотраКонтекстноеМеню - 286 - true - - ViewStatusAddition - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядка - - true - - - - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядкаУправлениеПоиском - 288 - - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядкаУправлениеПоискомРасширеннаяПодсказка - 290 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядкаУправлениеПоискомКонтекстноеМеню - 289 - true - - SearchControlAddition - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядка - - true - - - - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядкаExtendedTooltip - 171 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПорядокДоступныеПоляПорядкаКонтекстноеМеню - 73 - true - - Tree - true - true - true - 60 - true - true - 15 - true - true - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - false - false - Auto - Auto - true - true - true - true - None - None - None - true -
        - - КомпоновщикНастроекНастройкиПорядок - 75 - - <key>ru</key> - <value>Таблица сортировки</value> - - true - true - - true - - - Items.КомпоновщикНастроекНастройки.CurrentData.ItemOrder - - None - - КомпоновщикНастроекНастройкиПорядокКоманднаяПанель - 77 - Left - true - - - КомпоновщикНастроекНастройкиПорядокСтрокаПоиска - 291 - - КомпоновщикНастроекНастройкиПорядокСтрокаПоискаРасширеннаяПодсказка - 293 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПорядокСтрокаПоискаКонтекстноеМеню - 292 - true - - КомпоновщикНастроекНастройкиПорядок - - true - - - - КомпоновщикНастроекНастройкиПорядокСостояниеПросмотра - 294 - - КомпоновщикНастроекНастройкиПорядокСостояниеПросмотраРасширеннаяПодсказка - 296 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПорядокСостояниеПросмотраКонтекстноеМеню - 295 - true - - ViewStatusAddition - КомпоновщикНастроекНастройкиПорядок - - true - - - - КомпоновщикНастроекНастройкиПорядокУправлениеПоиском - 297 - - КомпоновщикНастроекНастройкиПорядокУправлениеПоискомРасширеннаяПодсказка - 299 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПорядокУправлениеПоискомКонтекстноеМеню - 298 - true - - SearchControlAddition - КомпоновщикНастроекНастройкиПорядок - - true - - - - КомпоновщикНастроекНастройкиПорядокExtendedTooltip - 172 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПорядокКонтекстноеМеню - 76 - true - - true - true - true - true - true - true - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - Auto - Auto - true - true - true - true - None - None - None - true -
        - true - true - - true - - - <key>ru</key> - <value>Страница сортировки</value> - - - НастройкиПорядкаExtendedTooltip - 170 - Label - true - true - - Left - - - Page - - LeftNarrowest - auto - false - -
        - - ОтключенныеНастройкиПорядка - 78 - - НадписьЛокальногоПорядка - 79 - - <key>ru</key> - <value>В текущем элементе сортировка не установлена. -Выберите в дереве структуры отчет для редактирования сортировки отчета в целом. -Если необходимо, чтобы текущий элемент имел собственную сортировку, установите флажок, расположенный над этим текстом.</value> - - true - true - - true - - - НадписьЛокальногоПорядкаExtendedTooltip - 174 - Label - true - true - - Left - - - - НадписьЛокальногоПорядкаКонтекстноеМеню - 80 - true - - Label - true - 3 - true - true - false - - Left - - - - ПереходКПорядкуОтчета - 81 - - <key>ru</key> - <value>Нажмите здесь для перехода к сортировке отчета.</value> - - true - true - - true - - - ПереходКПорядкуОтчетаExtendedTooltip - 175 - Label - true - true - - Left - - - - ПереходКПорядкуОтчетаКонтекстноеМеню - 82 - true - - Label - true - true - - - Click - ПерейтиКОтчету - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница отключенной сортировки</value> - - - ОтключенныеНастройкиПорядкаExtendedTooltip - 173 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - НедоступныеНастройкиПорядка - 83 - - НадписьНедоступногоПорядка - 84 - - <key>ru</key> - <value>У текущего элемента не может быть установлена сортировка. -Выберите в дереве структуры отчет для редактирования сортировки отчета в целом.</value> - - true - true - - true - - - НадписьНедоступногоПорядкаExtendedTooltip - 177 - Label - true - true - - Left - - - - НадписьНедоступногоПорядкаКонтекстноеМеню - 85 - true - - Label - true - 2 - true - true - false - - Left - - - - ПереходКПорядкуОтчета1 - 86 - - <key>ru</key> - <value>Нажмите здесь для перехода к сортировке отчета.</value> - - true - true - - true - - - ПереходКПорядкуОтчета1ExtendedTooltip - 178 - Label - true - true - - Left - - - - ПереходКПорядкуОтчета1КонтекстноеМеню - 87 - true - - Label - true - true - - - Click - ПерейтиКОтчету - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница недоступной сортировки</value> - - - НедоступныеНастройкиПорядкаExtendedTooltip - 176 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Страницы сортировки</value> - - - СтраницыПорядкаExtendedTooltip - 169 - Label - true - true - - Left - - - Pages - - Auto - -
        - true - true - - true - - - <key>ru</key> - <value>Сортировка</value> - - - СтраницаПорядкаExtendedTooltip - 167 - Label - true - true - - Left - - - Page - - - StdPicture.DataCompositionOrder - - Vertical - auto - false - -
        - - СтраницаУсловногоОформления - 88 - - ЛокальноеУсловноеОформление - 89 - - <key>ru</key> - <value>Текущий элемент имеет собственное условное оформление (для оформления записей, выводимых в элементе)</value> - - true - true - - true - - - ЛокальноеУсловноеОформление - - Right - - OnChange - ЛокальноеУсловноеОформлениеПриИзменении - - - ЛокальноеУсловноеОформлениеExtendedTooltip - 180 - Label - true - true - - Left - - - - ЛокальноеУсловноеОформлениеКонтекстноеМеню - 90 - true - - CheckBoxField - Enter - true - Left - true - - - - СтраницыУсловногоОформления - 91 - - НастройкиУсловногоОформления - 92 - - КомпоновщикНастроекНастройкиУсловноеОформление - 93 - - <key>ru</key> - <value>Таблица условного оформления</value> - - true - true - - true - - - Items.КомпоновщикНастроекНастройки.CurrentData.ItemConditionalAppearance - - None - - КомпоновщикНастроекНастройкиУсловноеОформлениеКоманднаяПанель - 95 - Left - true - - - КомпоновщикНастроекНастройкиУсловноеОформлениеСтрокаПоиска - 300 - - КомпоновщикНастроекНастройкиУсловноеОформлениеСтрокаПоискаРасширеннаяПодсказка - 302 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиУсловноеОформлениеСтрокаПоискаКонтекстноеМеню - 301 - true - - КомпоновщикНастроекНастройкиУсловноеОформление - - true - - - - КомпоновщикНастроекНастройкиУсловноеОформлениеСостояниеПросмотра - 303 - - КомпоновщикНастроекНастройкиУсловноеОформлениеСостояниеПросмотраРасширеннаяПодсказка - 305 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиУсловноеОформлениеСостояниеПросмотраКонтекстноеМеню - 304 - true - - ViewStatusAddition - КомпоновщикНастроекНастройкиУсловноеОформление - - true - - - - КомпоновщикНастроекНастройкиУсловноеОформлениеУправлениеПоиском - 306 - - КомпоновщикНастроекНастройкиУсловноеОформлениеУправлениеПоискомРасширеннаяПодсказка - 308 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиУсловноеОформлениеУправлениеПоискомКонтекстноеМеню - 307 - true - - SearchControlAddition - КомпоновщикНастроекНастройкиУсловноеОформление - - true - - - - КомпоновщикНастроекНастройкиУсловноеОформлениеExtendedTooltip - 183 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиУсловноеОформлениеКонтекстноеМеню - 94 - true - - true - true - true - true - true - true - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - Auto - Auto - true - true - true - true - None - None - None - true - false -
        - true - true - - true - - - <key>ru</key> - <value>Страница условного оформления</value> - - - НастройкиУсловногоОформленияExtendedTooltip - 182 - Label - true - true - - Left - - - Page - - auto - false - -
        - - ОтключенныеНастройкиУсловногоОформления - 96 - - НадписьЛокальногоУсловногоОформления - 97 - - <key>ru</key> - <value>В текущем элементе условное оформление не установлено. -Выберите в дереве структуры отчет для редактирования условного оформления отчета в целом. -Если необходимо, чтобы текущий элемент имел собственное условное оформление, установите флажок, расположенный над этим текстом.</value> - - true - true - - true - - - НадписьЛокальногоУсловногоОформленияExtendedTooltip - 185 - Label - true - true - - Left - - - - НадписьЛокальногоУсловногоОформленияКонтекстноеМеню - 98 - true - - Label - true - 3 - true - true - false - - Left - - - - ПереходКУсловномуОформлениюОтчета - 99 - - <key>ru</key> - <value>Нажмите здесь для перехода к условному оформлению отчета.</value> - - true - true - - true - - - ПереходКУсловномуОформлениюОтчетаExtendedTooltip - 186 - Label - true - true - - Left - - - - ПереходКУсловномуОформлениюОтчетаКонтекстноеМеню - 100 - true - - Label - true - true - - - Click - ПерейтиКОтчету - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница отключенного условного оформления</value> - - - ОтключенныеНастройкиУсловногоОформленияExtendedTooltip - 184 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - НедоступныеНастройкиУсловногоОформления - 101 - - НадписьНедоступногоУсловногоОформления - 102 - - <key>ru</key> - <value>У текущего элемента не может быть установлено условное оформление. -Выберите в дереве структуры отчет для редактирования условного оформления отчета в целом.</value> - - true - true - - true - - - НадписьНедоступногоУсловногоОформленияExtendedTooltip - 188 - Label - true - true - - Left - - - - НадписьНедоступногоУсловногоОформленияКонтекстноеМеню - 103 - true - - Label - true - 2 - true - true - false - - Left - - - - ПереходКУсловномуОформлениюОтчета1 - 104 - - <key>ru</key> - <value>Нажмите здесь для перехода к условному оформлению отчета.</value> - - true - true - - true - - - ПереходКУсловномуОформлениюОтчета1ExtendedTooltip - 189 - Label - true - true - - Left - - - - ПереходКУсловномуОформлениюОтчета1КонтекстноеМеню - 105 - true - - Label - true - true - - - Click - ПерейтиКОтчету - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница недоступного условного оформления</value> - - - НедоступныеНастройкиУсловногоОформленияExtendedTooltip - 187 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Страницы условного оформления</value> - - - СтраницыУсловногоОформленияExtendedTooltip - 181 - Label - true - true - - Left - - - Pages - - Auto - -
        - true - true - - true - - - <key>ru</key> - <value>Условное оформление</value> - - - СтраницаУсловногоОформленияExtendedTooltip - 179 - Label - true - true - - Left - - - Page - - - StdPicture.DataCompositionConditionalAppearance - - Vertical - auto - false - -
        - - СтраницаПараметровВывода - 106 - - ЛокальныеПараметрыВывода - 107 - - <key>ru</key> - <value>Текущий элемент имеет собственные дополнительные настройки</value> - - true - true - - true - - - ЛокальныеПараметрыВывода - - Right - - OnChange - ЛокальныеПараметрыВыводаПриИзменении - - - ЛокальныеПараметрыВыводаExtendedTooltip - 191 - Label - true - true - - Left - - - - ЛокальныеПараметрыВыводаКонтекстноеМеню - 108 - true - - CheckBoxField - Enter - true - Left - true - - - - СтраницыПараметровВывода - 109 - - НастройкиПараметровВывода - 110 - - КомпоновщикНастроекНастройкиПараметрыВывода - 111 - - <key>ru</key> - <value>Таблица дополнительных настроек</value> - - true - true - - true - - - Items.КомпоновщикНастроекНастройки.CurrentData.ItemOutputParameters - - None - - КомпоновщикНастроекНастройкиПараметрыВыводаКоманднаяПанель - 113 - Left - true - - - КомпоновщикНастроекНастройкиПараметрыВыводаСтрокаПоиска - 309 - - КомпоновщикНастроекНастройкиПараметрыВыводаСтрокаПоискаРасширеннаяПодсказка - 311 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПараметрыВыводаСтрокаПоискаКонтекстноеМеню - 310 - true - - КомпоновщикНастроекНастройкиПараметрыВывода - - true - - - - КомпоновщикНастроекНастройкиПараметрыВыводаСостояниеПросмотра - 312 - - КомпоновщикНастроекНастройкиПараметрыВыводаСостояниеПросмотраРасширеннаяПодсказка - 314 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПараметрыВыводаСостояниеПросмотраКонтекстноеМеню - 313 - true - - ViewStatusAddition - КомпоновщикНастроекНастройкиПараметрыВывода - - true - - - - КомпоновщикНастроекНастройкиПараметрыВыводаУправлениеПоиском - 315 - - КомпоновщикНастроекНастройкиПараметрыВыводаУправлениеПоискомРасширеннаяПодсказка - 317 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПараметрыВыводаУправлениеПоискомКонтекстноеМеню - 316 - true - - SearchControlAddition - КомпоновщикНастроекНастройкиПараметрыВывода - - true - - - - КомпоновщикНастроекНастройкиПараметрыВыводаExtendedTooltip - 194 - Label - true - true - - Left - - - - КомпоновщикНастроекНастройкиПараметрыВыводаКонтекстноеМеню - 112 - true - - Tree - true - true - true - 50 - true - true - true - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - Auto - Auto - ExpandAllLevels - true - true - None - None - None - true -
        - true - true - - true - - - <key>ru</key> - <value>Страница дополнительных настроек</value> - - - НастройкиПараметровВыводаExtendedTooltip - 193 - Label - true - true - - Left - - - Page - - auto - false - -
        - - ОтключенныеНастройкиПараметровВывода - 114 - - НадписьЛокальныхПараметровВывода - 115 - - <key>ru</key> - <value>В текущем элементе дополнительные настройки не установлены. -Выберите в дереве структуры отчет для редактирования дополнительных настроек отчета в целом. -Если необходимо, чтобы текущий элемент имел собственные дополнительные настройки, установите флажок, расположенный над этим текстом.</value> - - true - true - - true - - - НадписьЛокальныхПараметровВыводаExtendedTooltip - 196 - Label - true - true - - Left - - - - НадписьЛокальныхПараметровВыводаКонтекстноеМеню - 116 - true - - Label - true - 3 - true - true - false - - Left - - - - ПереходКПараметрамВыводаОтчета - 117 - - <key>ru</key> - <value>Нажмите здесь для перехода к дополнительным настройкам отчета.</value> - - true - true - - true - - - ПереходКПараметрамВыводаОтчетаExtendedTooltip - 197 - Label - true - true - - Left - - - - ПереходКПараметрамВыводаОтчетаКонтекстноеМеню - 118 - true - - Label - true - true - - - Click - ПерейтиКОтчету - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница отключенных дополнительных настроек</value> - - - ОтключенныеНастройкиПараметровВыводаExtendedTooltip - 195 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - - НедоступныеНастройкиПараметровВывода - 119 - - НадписьНедоступныхПараметровВывода - 120 - - <key>ru</key> - <value>У текущего элемента не могут быть установлены дополнительные настройки. -Выберите в дереве структуры отчет для редактирования дополнительных настроек отчета в целом.</value> - - true - true - - true - - - НадписьНедоступныхПараметровВыводаExtendedTooltip - 199 - Label - true - true - - Left - - - - НадписьНедоступныхПараметровВыводаКонтекстноеМеню - 121 - true - - Label - true - 2 - true - true - false - - Left - - - - ПереходКПараметрамВыводаОтчета1 - 122 - - <key>ru</key> - <value>Нажмите здесь для перехода к дополнительным настройкам отчета.</value> - - true - true - - true - - - ПереходКПараметрамВыводаОтчета1ExtendedTooltip - 200 - Label - true - true - - Left - - - - ПереходКПараметрамВыводаОтчета1КонтекстноеМеню - 123 - true - - Label - true - true - - - Click - ПерейтиКОтчету - - true - Left - - - true - true - - true - - - <key>ru</key> - <value>Страница недоступных дополнительных настроек</value> - - - НедоступныеНастройкиПараметровВыводаExtendedTooltip - 198 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Страницы дополнительных настроек</value> - - - СтраницыПараметровВыводаExtendedTooltip - 192 - Label - true - true - - Left - - - Pages - - Auto - -
        - true - true - - true - - - <key>ru</key> - <value>Дополнительные настройки</value> - - - СтраницаПараметровВыводаExtendedTooltip - 190 - Label - true - true - - Left - - - Page - - - StdPicture.DataCompositionOutputParameters - - Vertical - auto - false - -
        - true - true - - true - - - <key>ru</key> - <value>Группа настроек</value> - - - СтраницыНастроекExtendedTooltip - 131 - Label - true - true - - Left - - - Pages - - TabsOnTop - Auto - -
        - Bottom - true - - ФормаКоманднаяПанель - -1 - - ЗавершитьРедактирование - 124 - true - true - - true - - - ЗавершитьРедактированиеExtendedTooltip - 127 - Label - true - true - - Left - - - Form.Command.ЗавершитьРедактирование - Auto - true - true - true - UserCmds - Auto - - - ФормаЗакончитьРедактирование - 125 - true - - true - - - ФормаЗакончитьРедактированиеExtendedTooltip - 128 - Label - true - true - - Left - - - Form.StandardCommand.EndEdit - Normal - Auto - true - true - UserCmds - Auto - - - ФормаОтмена - 126 - true - true - - true - - - ФормаОтменаExtendedTooltip - 129 - Label - true - true - - Left - - - Form.StandardCommand.CancelEdit - Normal - Auto - true - true - UserCmds - Auto - - Right - true - - - OnCreateAtServer - ПриСозданииНаСервере - - LockOwner - true - true - true - Vertical - true - true - true - auto - true - - Отчет - 1 - - ReportObject - - - true - - - true - -
        true
        -
        - - ЛокальныеВыбранныеПоля - - <key>ru</key> - <value>Локальные выбранные поля</value> - - 2 - - Boolean - - - true - - - true - - - - ЛокальныйОтбор - - <key>ru</key> - <value>Локальный отбор</value> - - 3 - - Boolean - - - true - - - true - - - - ЛокальныйПорядок - - <key>ru</key> - <value>Локальный порядок</value> - - 4 - - Boolean - - - true - - - true - - - - ЛокальноеУсловноеОформление - - <key>ru</key> - <value>Локальное условное оформление</value> - - 5 - - Boolean - - - true - - - true - - - - ЛокальныеПараметрыВывода - - <key>ru</key> - <value>Локальное условное оформление</value> - - 6 - - Boolean - - - true - - - true - - - - НастройкиОтчета - - <key>ru</key> - <value>Настройки отчета</value> - - 7 - - - true - - - - - ЗавершитьРедактирование - - <key>ru</key> - <value>Завершить редактирование</value> - - 1 - - ru - Завершить редактирование - - - true - - - - ЗавершитьРедактирование - - - DontUse - Auto - - - - - - - Variant - -
        diff --git a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаВариантаОтчета/Module.bsl b/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаВариантаОтчета/Module.bsl deleted file mode 100644 index dfec6203b..000000000 --- a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаВариантаОтчета/Module.bsl +++ /dev/null @@ -1,415 +0,0 @@ -//////////////////////////////////////////////////////////////////////////////// -// Стандартный функционал - -#Область СтандартныйФункционал - -&НаКлиенте -Процедура ПоляГруппировкиНедоступны() - - Элементы.СтраницыПолейГруппировки.ТекущаяСтраница = Элементы.НедоступныеНастройкиПолейГруппировки; - -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоляДоступны(ЭлементСтруктуры) - - Если Отчет.КомпоновщикНастроек.Настройки.НаличиеВыбораУЭлемента(ЭлементСтруктуры) Тогда - - ЛокальныеВыбранныеПоля = Истина; - Элементы.СтраницыПолейВыбора.ТекущаяСтраница = Элементы.НастройкиВыбранныхПолей; - - Иначе - - ЛокальныеВыбранныеПоля = Ложь; - Элементы.СтраницыПолейВыбора.ТекущаяСтраница = Элементы.ОтключенныеНастройкиВыбранныхПолей; - - КонецЕсли; - - Элементы.ЛокальныеВыбранныеПоля.ТолькоПросмотр = Ложь; - -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоляНедоступны() - - ЛокальныеВыбранныеПоля = Ложь; - Элементы.ЛокальныеВыбранныеПоля.ТолькоПросмотр = Истина; - Элементы.СтраницыПолейВыбора.ТекущаяСтраница = Элементы.НедоступныеНастройкиВыбранныхПолей; - -КонецПроцедуры - -&НаКлиенте -Процедура ОтборДоступен(ЭлементСтруктуры) - - Если Отчет.КомпоновщикНастроек.Настройки.НаличиеОтбораУЭлемента(ЭлементСтруктуры) Тогда - - ЛокальныйОтбор = Истина; - Элементы.СтраницыОтбора.ТекущаяСтраница = Элементы.НастройкиОтбора; - - Иначе - - ЛокальныйОтбор = Ложь; - Элементы.СтраницыОтбора.ТекущаяСтраница = Элементы.ОтключенныеНастройкиОтбора; - - КонецЕсли; - - Элементы.ЛокальныйОтбор.ТолькоПросмотр = Ложь; - -КонецПроцедуры - -&НаКлиенте -Процедура ОтборНедоступен() - - ЛокальныйОтбор = Ложь; - Элементы.ЛокальныйОтбор.ТолькоПросмотр = Истина; - Элементы.СтраницыОтбора.ТекущаяСтраница = Элементы.НедоступныеНастройкиОтбора; - -КонецПроцедуры - -&НаКлиенте -Процедура ПорядокДоступен(ЭлементСтруктуры) - - Если Отчет.КомпоновщикНастроек.Настройки.НаличиеПорядкаУЭлемента(ЭлементСтруктуры) Тогда - - ЛокальныйПорядок = Истина; - Элементы.СтраницыПорядка.ТекущаяСтраница = Элементы.НастройкиПорядка; - - Иначе - - ЛокальныйПорядок = Ложь; - Элементы.СтраницыПорядка.ТекущаяСтраница = Элементы.ОтключенныеНастройкиПорядка; - - КонецЕсли; - - Элементы.ЛокальныйПорядок.ТолькоПросмотр = Ложь; - -КонецПроцедуры - -&НаКлиенте -Процедура ПорядокНедоступен() - - ЛокальныйПорядок = Ложь; - Элементы.ЛокальныйПорядок.ТолькоПросмотр = Истина; - Элементы.СтраницыПорядка.ТекущаяСтраница = Элементы.НедоступныеНастройкиПорядка; - -КонецПроцедуры - -&НаКлиенте -Процедура УсловноеОформлениеДоступно(ЭлементСтруктуры) - - Если Отчет.КомпоновщикНастроек.Настройки.НаличиеУсловногоОформленияУЭлемента(ЭлементСтруктуры) Тогда - - ЛокальноеУсловноеОформление = Истина; - Элементы.СтраницыУсловногоОформления.ТекущаяСтраница = Элементы.НастройкиУсловногоОформления; - - Иначе - - ЛокальноеУсловноеОформление = Ложь; - Элементы.СтраницыУсловногоОформления.ТекущаяСтраница = Элементы.ОтключенныеНастройкиУсловногоОформления; - - КонецЕсли; - - Элементы.ЛокальноеУсловноеОформление.ТолькоПросмотр = Ложь; - -КонецПроцедуры - -&НаКлиенте -Процедура УсловноеОформлениеНедоступно() - - ЛокальноеУсловноеОформление = Ложь; - Элементы.ЛокальноеУсловноеОформление.ТолькоПросмотр = Истина; - Элементы.СтраницыУсловногоОформления.ТекущаяСтраница = Элементы.НедоступныеНастройкиУсловногоОформления; - -КонецПроцедуры - -&НаКлиенте -Процедура ПараметрыВыводаДоступны(ЭлементСтруктуры) - - Если Отчет.КомпоновщикНастроек.Настройки.НаличиеПараметровВыводаУЭлемента(ЭлементСтруктуры) Тогда - - ЛокальныеПараметрыВывода = Истина; - Элементы.СтраницыПараметровВывода.ТекущаяСтраница = Элементы.НастройкиПараметровВывода; - - Иначе - - ЛокальныеПараметрыВывода = Ложь; - Элементы.СтраницыПараметровВывода.ТекущаяСтраница = Элементы.ОтключенныеНастройкиПараметровВывода; - - КонецЕсли; - - Элементы.ЛокальныеПараметрыВывода.ТолькоПросмотр = Ложь; - -КонецПроцедуры - -&НаКлиенте -Процедура ПараметрыВыводаНедоступны() - - ЛокальныеПараметрыВывода = Ложь; - Элементы.ЛокальныеПараметрыВывода.ТолькоПросмотр = Истина; - Элементы.СтраницыПараметровВывода.ТекущаяСтраница = Элементы.НедоступныеНастройкиПараметровВывода; - -КонецПроцедуры - -&НаКлиенте -Процедура КомпоновщикНастроекНастройкиПриАктивизацииПоля(Элемент) - - Перем ВыбраннаяСтраница; - - Если Элементы.КомпоновщикНастроекНастройки.ТекущийЭлемент.Имя = "КомпоновщикНастроекНастройкиНаличиеВыбора" Тогда - - ВыбраннаяСтраница = Элементы.СтраницаПолейВыбора; - - ИначеЕсли Элементы.КомпоновщикНастроекНастройки.ТекущийЭлемент.Имя = "КомпоновщикНастроекНастройкиНаличиеОтбора" Тогда - - ВыбраннаяСтраница = Элементы.СтраницаОтбора; - - ИначеЕсли Элементы.КомпоновщикНастроекНастройки.ТекущийЭлемент.Имя = "КомпоновщикНастроекНастройкиНаличиеПорядка" Тогда - - ВыбраннаяСтраница = Элементы.СтраницаПорядка; - - ИначеЕсли Элементы.КомпоновщикНастроекНастройки.ТекущийЭлемент.Имя = "КомпоновщикНастроекНастройкиНаличиеУсловногоОформления" Тогда - - ВыбраннаяСтраница = Элементы.СтраницаУсловногоОформления; - - ИначеЕсли Элементы.КомпоновщикНастроекНастройки.ТекущийЭлемент.Имя = "КомпоновщикНастроекНастройкиНаличиеПараметровВывода" Тогда - - ВыбраннаяСтраница = Элементы.СтраницаПараметровВывода; - - КонецЕсли; - - Если ВыбраннаяСтраница <> Неопределено Тогда - - Элементы.СтраницыНастроек.ТекущаяСтраница = ВыбраннаяСтраница; - - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура КомпоновщикНастроекНастройкиПриАктивизацииСтроки(Элемент) - - ЭлементСтруктуры = Отчет.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(Элементы.КомпоновщикНастроекНастройки.ТекущаяСтрока); - ТипЭлемента = ТипЗнч(ЭлементСтруктуры); - - Если ТипЭлемента = Неопределено - Или ТипЭлемента = Тип("КоллекцияЭлементовСтруктурыДиаграммыКомпоновкиДанных") - Или ТипЭлемента = Тип("КоллекцияЭлементовСтруктурыТаблицыКомпоновкиДанных") Тогда - - ПоляГруппировкиНедоступны(); - ВыбранныеПоляНедоступны(); - ОтборНедоступен(); - ПорядокНедоступен(); - УсловноеОформлениеНедоступно(); - ПараметрыВыводаНедоступны(); - - ИначеЕсли ТипЭлемента = Тип("НастройкиКомпоновкиДанных") - Или ТипЭлемента = Тип("НастройкиВложенногоОбъектаКомпоновкиДанных") Тогда - - ПоляГруппировкиНедоступны(); - - ЛокальныеВыбранныеПоля = Истина; - Элементы.ЛокальныеВыбранныеПоля.ТолькоПросмотр = Истина; - Элементы.СтраницыПолейВыбора.ТекущаяСтраница = Элементы.НастройкиВыбранныхПолей; - - ЛокальныйОтбор = Истина; - Элементы.ЛокальныйОтбор.ТолькоПросмотр = Истина; - Элементы.СтраницыОтбора.ТекущаяСтраница = Элементы.НастройкиОтбора; - - ЛокальныйПорядок = Истина; - Элементы.ЛокальныйПорядок.ТолькоПросмотр = Истина; - Элементы.СтраницыПорядка.ТекущаяСтраница = Элементы.НастройкиПорядка; - - ЛокальноеУсловноеОформление = Истина; - Элементы.ЛокальноеУсловноеОформление.ТолькоПросмотр = Истина; - Элементы.СтраницыУсловногоОформления.ТекущаяСтраница = Элементы.НастройкиУсловногоОформления; - - ЛокальныеПараметрыВывода = Истина; - Элементы.ЛокальныеПараметрыВывода.ТолькоПросмотр = Истина; - Элементы.СтраницыПараметровВывода.ТекущаяСтраница = Элементы.НастройкиПараметровВывода; - - ИначеЕсли ТипЭлемента = Тип("ГруппировкаКомпоновкиДанных") - Или ТипЭлемента = Тип("ГруппировкаТаблицыКомпоновкиДанных") - Или ТипЭлемента = Тип("ГруппировкаДиаграммыКомпоновкиДанных") Тогда - - Элементы.СтраницыПолейГруппировки.ТекущаяСтраница = Элементы.НастройкиПолейГруппировки; - - ВыбранныеПоляДоступны(ЭлементСтруктуры); - ОтборДоступен(ЭлементСтруктуры); - ПорядокДоступен(ЭлементСтруктуры); - УсловноеОформлениеДоступно(ЭлементСтруктуры); - ПараметрыВыводаДоступны(ЭлементСтруктуры); - - ИначеЕсли ТипЭлемента = Тип("ТаблицаКомпоновкиДанных") - Или ТипЭлемента = Тип("ДиаграммаКомпоновкиДанных") Тогда - - ПоляГруппировкиНедоступны(); - ВыбранныеПоляДоступны(ЭлементСтруктуры); - ОтборНедоступен(); - ПорядокНедоступен(); - УсловноеОформлениеДоступно(ЭлементСтруктуры); - ПараметрыВыводаДоступны(ЭлементСтруктуры); - - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ПерейтиКОтчету(Элемент) - - ЭлементСтруктуры = Отчет.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(Элементы.КомпоновщикНастроекНастройки.ТекущаяСтрока); - НастройкиЭлемента = Отчет.КомпоновщикНастроек.Настройки.НастройкиЭлемента(ЭлементСтруктуры); - Элементы.КомпоновщикНастроекНастройки.ТекущаяСтрока = Отчет.КомпоновщикНастроек.Настройки.ПолучитьИдентификаторПоОбъекту(НастройкиЭлемента); - -КонецПроцедуры - -&НаКлиенте -Процедура ЛокальныеВыбранныеПоляПриИзменении(Элемент) - - Если ЛокальныеВыбранныеПоля Тогда - - Элементы.СтраницыПолейВыбора.ТекущаяСтраница = Элементы.НастройкиВыбранныхПолей; - - Иначе - - Элементы.СтраницыПолейВыбора.ТекущаяСтраница = Элементы.ОтключенныеНастройкиВыбранныхПолей; - - ЭлементСтруктуры = Отчет.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(Элементы.КомпоновщикНастроекНастройки.ТекущаяСтрока); - Отчет.КомпоновщикНастроек.Настройки.ОчиститьВыборЭлемента(ЭлементСтруктуры); - - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ЛокальныйОтборПриИзменении(Элемент) - - Если ЛокальныйОтбор Тогда - - Элементы.СтраницыОтбора.ТекущаяСтраница = Элементы.НастройкиОтбора; - - Иначе - - Элементы.СтраницыОтбора.ТекущаяСтраница = Элементы.ОтключенныеНастройкиОтбора; - - ЭлементСтруктуры = Отчет.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(Элементы.КомпоновщикНастроекНастройки.ТекущаяСтрока); - Отчет.КомпоновщикНастроек.Настройки.ОчиститьОтборЭлемента(ЭлементСтруктуры); - - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ЛокальныйПорядокПриИзменении(Элемент) - - Если ЛокальныйПорядок Тогда - - Элементы.СтраницыПорядка.ТекущаяСтраница = Элементы.НастройкиПорядка; - - Иначе - - Элементы.СтраницыПорядка.ТекущаяСтраница = Элементы.ОтключенныеНастройкиПорядка; - - ЭлементСтруктуры = Отчет.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(Элементы.КомпоновщикНастроекНастройки.ТекущаяСтрока); - Отчет.КомпоновщикНастроек.Настройки.ОчиститьПорядокЭлемента(ЭлементСтруктуры); - - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ЛокальноеУсловноеОформлениеПриИзменении(Элемент) - - Если ЛокальноеУсловноеОформление Тогда - - Элементы.СтраницыУсловногоОформления.ТекущаяСтраница = Элементы.НастройкиУсловногоОформления; - - Иначе - - Элементы.СтраницыУсловногоОформления.ТекущаяСтраница = Элементы.ОтключенныеНастройкиУсловногоОформления; - - ЭлементСтруктуры = Отчет.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(Элементы.КомпоновщикНастроекНастройки.ТекущаяСтрока); - Отчет.КомпоновщикНастроек.Настройки.ОчиститьУсловноеОформлениеЭлемента(ЭлементСтруктуры); - - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ЛокальныеПараметрыВыводаПриИзменении(Элемент) - - Если ЛокальныеПараметрыВывода Тогда - - Элементы.СтраницыПараметровВывода.ТекущаяСтраница = Элементы.НастройкиПараметровВывода; - - Иначе - - Элементы.СтраницыПараметровВывода.ТекущаяСтраница = Элементы.ОтключенныеНастройкиПараметровВывода; - - ЭлементСтруктуры = Отчет.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(Элементы.КомпоновщикНастроекНастройки.ТекущаяСтрока); - Отчет.КомпоновщикНастроек.Настройки.ОчиститьПараметрыВыводаЭлемента(ЭлементСтруктуры); - КонецЕсли; - -КонецПроцедуры - -#КонецОбласти - -#Область ОбработчикиСобытийФормы - -&НаСервере -Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - Если Параметры.Свойство("АвтоТест") Тогда - Возврат; - КонецЕсли; - - Если Параметры.Свойство("ПредставлениеВарианта") И ЗначениеЗаполнено(Параметры.ПредставлениеВарианта) Тогда - АвтоЗаголовок = Ложь; - Заголовок = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Изменение варианта отчета ""%1""'"), Параметры.ПредставлениеВарианта); - КонецЕсли; - - Если Параметры.Свойство("НастройкиОтчета", НастройкиОтчета) Тогда - Если НастройкиОтчета.СхемаМодифицирована Тогда - Отчет.КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(НастройкиОтчета.АдресСхемы)); - КонецЕсли; - КонецЕсли; - - Отчеты.УниверсальныйОтчет.ИнициализироватьОтчет(Отчет.КомпоновщикНастроек, Ложь, УникальныйИдентификатор, Параметры.Вариант); - -КонецПроцедуры - -#КонецОбласти - -#Область ОбработчикиКомандФормы - -&НаКлиенте -Процедура ЗавершитьРедактирование(Команда) - Если МодальныйРежим - Или РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс - Или ВладелецФормы = Неопределено Тогда - Закрыть(Истина); - Иначе - РезультатВыбора = Новый Структура; - РезультатВыбора.Вставить("ВариантМодифицирован", Ложь); - РезультатВыбора.Вставить("ПользовательскиеНастройкиМодифицированы", Ложь); - - Если ВариантМодифицирован Тогда - РезультатВыбора.ВариантМодифицирован = Истина; - РезультатВыбора.Вставить("НастройкиКД", Отчет.КомпоновщикНастроек.Настройки); - КонецЕсли; - - Если ВариантМодифицирован Или ПользовательскиеНастройкиМодифицированы Тогда - РезультатВыбора.ПользовательскиеНастройкиМодифицированы = Истина; - РезультатВыбора.Вставить("ПользовательскиеНастройкиКД", Отчет.КомпоновщикНастроек.ПользовательскиеНастройки); - КонецЕсли; - - #Если ВебКлиент Тогда - РезультатВыбора.ВариантМодифицирован = Истина; // Для платформы. - РезультатВыбора.Вставить("НастройкиКД", Отчет.КомпоновщикНастроек.Настройки); - РезультатВыбора.ПользовательскиеНастройкиМодифицированы = Истина; - РезультатВыбора.Вставить("ПользовательскиеНастройкиКД", Отчет.КомпоновщикНастроек.ПользовательскиеНастройки); - #КонецЕсли - - ОповеститьОВыборе(РезультатВыбора); - КонецЕсли; -КонецПроцедуры - -#КонецОбласти diff --git a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаНастроекОтчета/ConditionalAppearance.dcssca b/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаНастроекОтчета/ConditionalAppearance.dcssca deleted file mode 100644 index 6aee488fa..000000000 --- a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаНастроекОтчета/ConditionalAppearance.dcssca +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - СтруктураВариантаПредставление - - - - - СтруктураВарианта.ЭтоГруппа - Equal - true - - - - - Шрифт - - - - - - - - СтруктураВариантаПредставление - - - - - СтруктураВарианта.Подсвечивать - Equal - true - - - - - Шрифт - - - - - - - - СтруктураВариантаИспользование - - - - - СтруктураВарианта.ФлажокДоступен - Equal - false - - - - - false - Шрифт - - - - Видимость - false - - - Отображать - false - - - - diff --git a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаНастроекОтчета/Form.form b/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаНастроекОтчета/Form.form deleted file mode 100644 index 5028be4f6..000000000 --- a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаНастроекОтчета/Form.form +++ /dev/null @@ -1,10141 +0,0 @@ - - - - ТекущийУзелКДТипДиаграммы - 788 - true - true - - true - - - ТекущийУзелКДТипДиаграммы - - - OnChange - ТекущийУзелКДТипДиаграммыПриИзменении - - - ТекущийУзелКДТипДиаграммыРасширеннаяПодсказка - 790 - Label - true - true - - Left - - - - ТекущийУзелКДТипДиаграммыКонтекстноеМеню - 789 - true - - InputField - Enter - true - Left - true - - 35 - true - true - false - true - true - true - true - Normal - - - - СтраницыНастроек - 35 - - СтраницаСоставГруппировки - 585 - - КомандыСоставаГруппировки - 604 - - КомандыСоставаГруппировки_ДобавлениеУдаление - 606 - - СоставГруппировки_Добавить - 608 - - <key>ru</key> - <value>Добавить</value> - - true - true - - true - - - СоставГруппировки_ДобавитьРасширеннаяПодсказка - 609 - Label - true - true - - Left - - - Form.Item.СоставГруппировки.StandardCommand.Add - Normal - PictureAndText - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - СоставГруппировки_Удалить - 610 - true - true - - true - - - СоставГруппировки_УдалитьРасширеннаяПодсказка - 611 - Label - true - true - - Left - - - Form.Item.СоставГруппировки.StandardCommand.Delete - Normal - Picture - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - КомандыСоставаГруппировки_ДобавлениеУдалениеРасширеннаяПодсказка - 607 - Label - true - true - - Left - - - - - - КомандыСоставаГруппировки_Приоритет - 612 - - СоставГруппировки_ПереместитьВверх - 614 - true - true - - true - - - СоставГруппировки_ПереместитьВверхРасширеннаяПодсказка - 615 - Label - true - true - - Left - - - Form.Command.СоставГруппировки_ПереместитьВверх - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - СоставГруппировки_ПереместитьВниз - 616 - true - true - - true - - - СоставГруппировки_ПереместитьВнизРасширеннаяПодсказка - 617 - Label - true - true - - Left - - - Form.Command.СоставГруппировки_ПереместитьВниз - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - КомандыСоставаГруппировки_ПриоритетРасширеннаяПодсказка - 613 - Label - true - true - - Left - - - - - true - true - - true - - - КомандыСоставаГруппировкиРасширеннаяПодсказка - 605 - Label - true - true - - Left - - - CommandBar - - Left - - - - СоставГруппировки - 624 - true - true - - true - - - СоставГруппировки - - None - Change - Copy - CopyToClipboard - EndEdit - HierarchicalList - List - MoveDown - MoveUp - OutputList - SelectAll - SortListAsc - SortListDesc - Tree - - СоставГруппировкиГруппа1 - 643 - - СоставГруппировкиИспользование - 659 - true - true - - true - - - СоставГруппировки.Использование - - - OnChange - СоставГруппировкиИспользованиеПриИзменении - - - СоставГруппировкиИспользованиеРасширеннаяПодсказка - 661 - Label - true - true - - Left - - - - СоставГруппировкиИспользованиеКонтекстноеМеню - 660 - true - - CheckBoxField - Auto - Left - true - - - - СоставГруппировкиПредставление - 662 - true - true - - true - - - СоставГруппировки.Представление - - - СоставГруппировкиПредставлениеРасширеннаяПодсказка - 664 - Label - true - true - - Left - - - - СоставГруппировкиПредставлениеКонтекстноеМеню - 663 - true - - InputField - Auto - true - Left - true - - true - true - true - true - true - true - Normal - - - true - true - - true - - - СоставГруппировкиГруппа1РасширеннаяПодсказка - 644 - Label - true - true - - Left - - - ColumnGroup - - InCell - auto - true - - - - СоставГруппировкиГруппа2 - 817 - - СоставГруппировкиТипГруппировки - 665 - true - true - - true - - - СоставГруппировки.ТипГруппировки - - - OnChange - СоставГруппировкиТипГруппировкиПриИзменении - - - СоставГруппировкиТипГруппировкиРасширеннаяПодсказка - 667 - Label - true - true - - Left - - - - СоставГруппировкиТипГруппировкиКонтекстноеМеню - 666 - true - - InputField - Auto - true - Left - true - - true - true - true - true - true - true - Normal - - - - СоставГруппировкиТипДополнения - 814 - true - true - - true - - - СоставГруппировки.ТипДополнения - - - OnChange - СоставГруппировкиТипДополненияПриИзменении - - - СоставГруппировкиТипДополненияРасширеннаяПодсказка - 816 - Label - true - true - - Left - - - - СоставГруппировкиТипДополненияКонтекстноеМеню - 815 - true - - InputField - Auto - true - Left - true - - true - true - true - true - true - true - Normal - - - true - true - - true - - - СоставГруппировкиГруппа2РасширеннаяПодсказка - 818 - Label - true - true - - Left - - - ColumnGroup - - Vertical - auto - true - - - Top - - СоставГруппировкиКоманднаяПанель - 626 - Left - - - Selection - СоставГруппировкиВыбор - - - BeforeAddRow - СоставГруппировкиПередНачаломДобавления - - - BeforeDeleteRow - СоставГруппировкиПередУдалением - - - СоставГруппировкиСтрокаПоиска - 628 - - СоставГруппировкиСтрокаПоискаРасширеннаяПодсказка - 632 - Label - true - true - - Left - - - - СоставГруппировкиСтрокаПоискаКонтекстноеМеню - 631 - true - - СоставГруппировки - - true - - - - СоставГруппировкиСостояниеПросмотра - 633 - - СоставГруппировкиСостояниеПросмотраРасширеннаяПодсказка - 637 - Label - true - true - - Left - - - - СоставГруппировкиСостояниеПросмотраКонтекстноеМеню - 636 - true - - ViewStatusAddition - СоставГруппировки - - true - - - - СоставГруппировкиУправлениеПоиском - 638 - - СоставГруппировкиУправлениеПоискомРасширеннаяПодсказка - 642 - Label - true - true - - Left - - - - СоставГруппировкиУправлениеПоискомКонтекстноеМеню - 641 - true - - SearchControlAddition - СоставГруппировки - - true - - - - СоставГруппировкиРасширеннаяПодсказка - 627 - Label - true - true - - Left - - - - СоставГруппировкиКонтекстноеМеню - 625 - - КомандыСоставаГруппировки_ДобавлениеУдаление1 - 647 - - СоставГруппировки_Добавить1 - 649 - - <key>ru</key> - <value>Добавить</value> - - true - true - - true - - - СоставГруппировки_Добавить1РасширеннаяПодсказка - 650 - Label - true - true - - Left - - - Form.Item.СоставГруппировки.StandardCommand.Add - Normal - PictureAndText - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - СоставГруппировки_Удалить1 - 651 - true - true - - true - - - СоставГруппировки_Удалить1РасширеннаяПодсказка - 652 - Label - true - true - - Left - - - Form.Item.СоставГруппировки.StandardCommand.Delete - Normal - Picture - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - КомандыСоставаГруппировки_ДобавлениеУдаление1РасширеннаяПодсказка - 648 - Label - true - true - - Left - - - - - - КомандыСоставаГруппировки_Приоритет1 - 653 - - СоставГруппировки_ПереместитьВверх1 - 655 - true - true - - true - - - СоставГруппировки_ПереместитьВверх1РасширеннаяПодсказка - 656 - Label - true - true - - Left - - - Form.Command.СоставГруппировки_ПереместитьВверх - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - СоставГруппировки_ПереместитьВниз1 - 657 - true - true - - true - - - СоставГруппировки_ПереместитьВниз1РасширеннаяПодсказка - 658 - Label - true - true - - Left - - - Form.Command.СоставГруппировки_ПереместитьВниз - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - КомандыСоставаГруппировки_Приоритет1РасширеннаяПодсказка - 654 - Label - true - true - - Left - - - - - - Tree - true - true - true - true - true - true - AfterCurrentRow - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - false - false - false - false - DontUse - Auto - ExpandAllLevels - true - true - true - true - - СоставГруппировки.ИндексКартинки - - - CommonPicture.ПиктограммыНастроекОтчета - - true -
        - true - true - - true - - - <key>ru</key> - <value>Состав группировки</value> - - - ru - Страница состав группировки - - - СтраницаСоставГруппировкиРасширеннаяПодсказка - 586 - Label - true - true - - Left - - - Page - - - StdPicture.DataCompositionGroupFields - - Vertical - auto - false - -
        - - СтраницаОтборы - 320 - - БыстрыеОтборы - 98 - true - true - - true - - - <key>ru</key> - <value>Быстрые отборы</value> - - - ru - Быстрые отборы - - - БыстрыеОтборыРасширеннаяПодсказка - 99 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - - - ОбычныеОтборы - 39 - true - true - - true - - - ОбычныеОтборыРасширеннаяПодсказка - 40 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаОтборыРасширенныйРежим - 924 - - Отборы - 342 - true - true - - true - - - Отборы - - None - Change - Copy - CopyToClipboard - EndEdit - HierarchicalList - List - MoveDown - MoveUp - OutputList - SelectAll - SortListAsc - SortListDesc - Tree - - ОтборыГруппа1 - 361 - - ОтборыИспользование - 363 - true - true - - true - - - Отборы.Использование - - - OnChange - ОтборыИспользованиеПриИзменении - - - ОтборыИспользованиеРасширеннаяПодсказка - 365 - Label - true - true - - Left - - - - ОтборыИспользованиеКонтекстноеМеню - 364 - true - - CheckBoxField - Auto - Left - true - - - - ОтборыПредставление - 366 - true - true - - true - - - Отборы.Представление - - - ОтборыПредставлениеРасширеннаяПодсказка - 368 - Label - true - true - - Left - - - - ОтборыПредставлениеКонтекстноеМеню - 367 - true - - InputField - true - Auto - true - Left - true - - true - true - true - true - true - true - Normal - - - true - true - - true - - - ОтборыГруппа1РасширеннаяПодсказка - 362 - Label - true - true - - Left - - - ColumnGroup - - InCell - auto - true - - - - ОтборыУсловие - 375 - true - true - - true - - - Отборы.Условие - - - ОтборыУсловиеРасширеннаяПодсказка - 377 - Label - true - true - - Left - - - - ОтборыУсловиеКонтекстноеМеню - 376 - true - - InputField - true - Auto - true - Left - true - - true - true - true - true - true - true - Normal - - - Items.Отборы.CurrentData.ТипУсловия - - - - - - ОтборыГруппа2 - 804 - - ОтборыЗначение - 372 - true - true - - true - - - Отборы.Значение - - - OnChange - ОтборыЗначениеПриИзменении - - - ОтборыЗначениеРасширеннаяПодсказка - 374 - Label - true - true - - Left - - - - ОтборыЗначениеКонтекстноеМеню - 373 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - Items.Отборы.CurrentData.ТипЗначения - - - - - - ОтборыПредставлениеЗначения - 801 - true - true - - true - - - Отборы.ПредставлениеЗначения - - - ОтборыПредставлениеЗначенияРасширеннаяПодсказка - 803 - Label - true - true - - Left - - - - ОтборыПредставлениеЗначенияКонтекстноеМеню - 802 - true - - InputField - Auto - true - Left - true - - true - true - true - true - true - true - Normal - - - true - true - - true - - - ОтборыГруппа2РасширеннаяПодсказка - 805 - Label - true - true - - Left - - - ColumnGroup - - Vertical - auto - true - - - - ОтборыИндексКартинкиДоступа - 369 - true - true - - true - - - Отборы.ИндексКартинкиДоступа - - None - - ru - Размещение определяет где и как виден этот параметр или отбор. - - - ОтборыИндексКартинкиДоступаРасширеннаяПодсказка - 371 - Label - true - true - - Left - - - - ОтборыИндексКартинкиДоступаКонтекстноеМеню - 370 - true - - PictureField - Auto - true - - CommonPicture.БыстрыйДоступ - - Left - true - - 2 - true - true - true - - CommonPicture.ПиктограммыДоступаКНастройкамОтчета - - - - 1 - - - - - ОтборыЗаголовок - 378 - true - true - - true - - - Отборы.Заголовок - - - OnChange - ОтборыЗаголовокПриИзменении - - - ОтборыЗаголовокРасширеннаяПодсказка - 380 - Label - true - true - - Left - - - - ОтборыЗаголовокКонтекстноеМеню - 379 - true - - InputField - Auto - true - Left - true - - true - true - true - true - true - true - true - Normal - - - Top - - ОтборыКоманднаяПанель - 344 - - КомандыОтборов_ДобавлениеУдаление - 324 - - Отборы_Добавить - 326 - - <key>ru</key> - <value>Добавить отбор</value> - - true - true - - true - - - Отборы_ДобавитьРасширеннаяПодсказка - 327 - Label - true - true - - Left - - - Form.Item.Отборы.StandardCommand.Add - Normal - PictureAndText - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - Отборы_Удалить - 328 - true - true - - true - - - Отборы_УдалитьРасширеннаяПодсказка - 329 - Label - true - true - - Left - - - Form.Item.Отборы.StandardCommand.Delete - Normal - Picture - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - КомандыОтборов_ДобавлениеУдалениеРасширеннаяПодсказка - 325 - Label - true - true - - Left - - - - - - КомандыОтборов_Приоритет - 415 - - Отборы_ПереместитьВверх - 417 - true - true - - true - - - Отборы_ПереместитьВверхРасширеннаяПодсказка - 418 - Label - true - true - - Left - - - Form.Command.Отборы_ПереместитьВверх - Normal - Auto - true - true - UserCmds - Auto - - - Отборы_ПереместитьВниз - 419 - true - true - - true - - - Отборы_ПереместитьВнизРасширеннаяПодсказка - 420 - Label - true - true - - Left - - - Form.Command.Отборы_ПереместитьВниз - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - КомандыОтборов_ПриоритетРасширеннаяПодсказка - 416 - Label - true - true - - Left - - - - - - КомандыОтборов_Группы - 336 - - Отборы_Сгруппировать - 338 - true - true - - true - - - Отборы_СгруппироватьРасширеннаяПодсказка - 339 - Label - true - true - - Left - - - Form.Command.Отборы_Сгруппировать - Normal - Auto - true - true - UserCmds - - StdPicture.CreateFolder - - Auto - InAdditionalSubmenu - - - Отборы_Разгруппировать - 340 - true - true - - true - - - Отборы_РазгруппироватьРасширеннаяПодсказка - 341 - Label - true - true - - Left - - - Form.Command.Отборы_Разгруппировать - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - true - true - - true - - - КомандыОтборов_ГруппыРасширеннаяПодсказка - 337 - Label - true - true - - Left - - - - - - КомандыОтборов_Флажки - 1059 - - ОтборыОтборы_УстановитьФлажки - 1061 - true - true - - true - - - ОтборыОтборы_УстановитьФлажкиРасширеннаяПодсказка - 1062 - Label - true - true - - Left - - - Form.Command.Отборы_УстановитьФлажки - Normal - Auto - true - true - UserCmds - Auto - - - ОтборыОтборы_СнятьФлажки - 1063 - true - true - - true - - - ОтборыОтборы_СнятьФлажкиРасширеннаяПодсказка - 1064 - Label - true - true - - Left - - - Form.Command.Отборы_СнятьФлажки - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Команды отборов флажки</value> - - - ru - Команды отборов флажки - - - КомандыОтборов_ФлажкиРасширеннаяПодсказка - 1060 - Label - true - true - - Left - - - - - Left - - - Selection - ОтборыВыбор - - - BeforeAddRow - ОтборыПередНачаломДобавления - - - BeforeDeleteRow - ОтборыПередУдалением - - - OnActivateRow - ОтборыПриАктивизацииСтроки - - - ОтборыСтрокаПоиска - 346 - - ОтборыСтрокаПоискаРасширеннаяПодсказка - 350 - Label - true - true - - Left - - - - ОтборыСтрокаПоискаКонтекстноеМеню - 349 - true - - Отборы - - true - - - - ОтборыСостояниеПросмотра - 351 - - ОтборыСостояниеПросмотраРасширеннаяПодсказка - 355 - Label - true - true - - Left - - - - ОтборыСостояниеПросмотраКонтекстноеМеню - 354 - true - - ViewStatusAddition - Отборы - - true - - - - ОтборыУправлениеПоиском - 356 - - ОтборыУправлениеПоискомРасширеннаяПодсказка - 360 - Label - true - true - - Left - - - - ОтборыУправлениеПоискомКонтекстноеМеню - 359 - true - - SearchControlAddition - Отборы - - true - - - - ОтборыРасширеннаяПодсказка - 345 - Label - true - true - - Left - - - - ОтборыКонтекстноеМеню - 343 - - КомандыОтборов_ДобавлениеУдаление1 - 403 - - Отборы_Добавить1 - 405 - - <key>ru</key> - <value>Добавить отбор</value> - - true - true - - true - - - Отборы_Добавить1РасширеннаяПодсказка - 406 - Label - true - true - - Left - - - Form.Item.Отборы.StandardCommand.Add - Normal - PictureAndText - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - Отборы_Удалить1 - 407 - true - true - - true - - - Отборы_Удалить1РасширеннаяПодсказка - 408 - Label - true - true - - Left - - - Form.Item.Отборы.StandardCommand.Delete - Normal - Picture - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - КомандыОтборов_ДобавлениеУдаление1РасширеннаяПодсказка - 404 - Label - true - true - - Left - - - - - - КомандыОтборов_Приоритет1 - 421 - - Отборы_ПереместитьВверх1 - 423 - true - true - - true - - - Отборы_ПереместитьВверх1РасширеннаяПодсказка - 424 - Label - true - true - - Left - - - Form.Command.Отборы_ПереместитьВверх - Normal - Auto - true - true - UserCmds - Auto - - - Отборы_ПереместитьВниз1 - 425 - true - true - - true - - - Отборы_ПереместитьВниз1РасширеннаяПодсказка - 426 - Label - true - true - - Left - - - Form.Command.Отборы_ПереместитьВниз - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - КомандыОтборов_Приоритет1РасширеннаяПодсказка - 422 - Label - true - true - - Left - - - - - - КомандыОтборов_Группы1 - 409 - - Отборы_Сгруппировать1 - 411 - true - true - - true - - - Отборы_Сгруппировать1РасширеннаяПодсказка - 412 - Label - true - true - - Left - - - Form.Command.Отборы_Сгруппировать - Normal - Auto - true - true - UserCmds - - StdPicture.CreateFolder - - Auto - InAdditionalSubmenu - - - Отборы_Разгруппировать1 - 413 - true - true - - true - - - Отборы_Разгруппировать1РасширеннаяПодсказка - 414 - Label - true - true - - Left - - - Form.Command.Отборы_Разгруппировать - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - true - true - - true - - - КомандыОтборов_Группы1РасширеннаяПодсказка - 410 - Label - true - true - - Left - - - - - - КомандыОтборов_Флажки1 - 1065 - - ОтборыОтборы_УстановитьФлажки1 - 1067 - true - true - - true - - - ОтборыОтборы_УстановитьФлажки1РасширеннаяПодсказка - 1068 - Label - true - true - - Left - - - Form.Command.Отборы_УстановитьФлажки - Normal - Auto - true - true - UserCmds - Auto - - - ОтборыОтборы_СнятьФлажки1 - 1069 - true - true - - true - - - ОтборыОтборы_СнятьФлажки1РасширеннаяПодсказка - 1070 - Label - true - true - - Left - - - Form.Command.Отборы_СнятьФлажки - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Команды отборов флажки</value> - - - ru - Команды отборов флажки - - - КомандыОтборов_Флажки1РасширеннаяПодсказка - 1066 - Label - true - true - - Left - - - - - - Tree - true - true - true - true - true - AfterCurrentRow - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - false - false - false - false - DontUse - Auto - ExpandAllLevels - true - true - - Отборы.ИндексКартинки - - - CommonPicture.ПиктограммыПараметровИОтборов - - true -
        - - ГруппаЕстьВложенныеОтборы - 806 - - КартинкаИнформация1 - 808 - - <key>ru</key> - <value>Картинка информация</value> - - true - true - - true - - - КартинкаИнформация1РасширеннаяПодсказка - 810 - Label - true - true - - Left - - - - КартинкаИнформация1КонтекстноеМеню - 809 - true - - 2 - true - 1 - true - - - CommonPicture.Информация - - - - - ПодсказкаЕстьВложенныеОтборы - 811 - - <key>ru</key> - <value>В отчете имеются вложенные отборы, которые можно настроить на странице <b>Структура</>.</value> - - true - true - - true - - - ПодсказкаЕстьВложенныеОтборыРасширеннаяПодсказка - 813 - Label - true - true - - Left - - - - ПодсказкаЕстьВложенныеОтборыКонтекстноеМеню - 812 - true - - true - Label - true - true - - Style.ПоясняющийТекст - - - - URLProcessing - ПодсказкаЕстьВложенныеОтчетыОбработкаНавигационнойСсылки - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа есть вложенные отборы</value> - - - ru - Группа есть вложенные отборы - - - ГруппаЕстьВложенныеОтборыРасширеннаяПодсказка - 807 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа отборы расширенный режим</value> - - - ru - Группа отборы расширенный режим - - - ГруппаОтборыРасширенныйРежимРасширеннаяПодсказка - 925 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - -
        - true - true - - true - - - <key>ru</key> - <value>Отборы</value> - - - ru - Страница выбранные поля - - - СтраницаОтборыРасширеннаяПодсказка - 321 - Label - true - true - - Left - - - Page - - - CommonPicture.Отборы - - Vertical - auto - false - -
        - - СтраницаВыбранныеПоляИСортировки - 126 - - ГруппаПоляИСортировки - 900 - - ВыбранныеПоля - 230 - true - true - - true - - - ВыбранныеПоля - - None - Change - Copy - CopyToClipboard - EndEdit - HierarchicalList - List - MoveDown - MoveUp - OutputList - SelectAll - SortListAsc - SortListDesc - Tree - - ВыбранныеПоляГруппа1 - 257 - - ВыбранныеПоляИспользование - 259 - true - true - - true - - - ВыбранныеПоля.Использование - - - OnChange - ВыбранныеПоляИспользованиеПриИзменении - - - ВыбранныеПоляИспользованиеРасширеннаяПодсказка - 261 - Label - true - true - - Left - - - - ВыбранныеПоляИспользованиеКонтекстноеМеню - 260 - true - - CheckBoxField - Auto - Left - true - - - - ВыбранныеПоляПредставление - 262 - true - true - - true - - - ВыбранныеПоля.Представление - - - ВыбранныеПоляПредставлениеРасширеннаяПодсказка - 264 - Label - true - true - - Left - - - - ВыбранныеПоляПредставлениеКонтекстноеМеню - 263 - true - - InputField - true - Auto - true - Left - true - - true - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Выбранные поля группа1</value> - - - ru - Выбранные поля группа1 - - - ВыбранныеПоляГруппа1РасширеннаяПодсказка - 258 - Label - true - true - - Left - - - ColumnGroup - - InCell - auto - true - - - Top - - ВыбранныеПоляКоманднаяПанель - 232 - - КомандыВыбранныхПолей_ДобавлениеУдаление - 212 - - ВыбранныеПоля_Добавить - 214 - - <key>ru</key> - <value>Добавить</value> - - true - true - - true - - - ВыбранныеПоля_ДобавитьРасширеннаяПодсказка - 215 - Label - true - true - - Left - - - Form.Item.ВыбранныеПоля.StandardCommand.Add - Normal - PictureAndText - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - ВыбранныеПоля_Удалить - 216 - true - true - - true - - - ВыбранныеПоля_УдалитьРасширеннаяПодсказка - 217 - Label - true - true - - Left - - - Form.Item.ВыбранныеПоля.StandardCommand.Delete - Normal - Picture - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - КомандыВыбранныхПолей_ДобавлениеУдалениеРасширеннаяПодсказка - 213 - Label - true - true - - Left - - - - - - КомандыВыбранныхПолей_Приоритет - 218 - - ВыбранныеПоля_ПереместитьВверх - 220 - true - true - - true - - - ВыбранныеПоля_ПереместитьВверхРасширеннаяПодсказка - 221 - Label - true - true - - Left - - - Form.Command.ВыбранныеПоля_ПереместитьВверх - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - ВыбранныеПоля_ПереместитьВниз - 222 - true - true - - true - - - ВыбранныеПоля_ПереместитьВнизРасширеннаяПодсказка - 223 - Label - true - true - - Left - - - Form.Command.ВыбранныеПоля_ПереместитьВниз - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - КомандыВыбранныхПолей_ПриоритетРасширеннаяПодсказка - 219 - Label - true - true - - Left - - - - - - КомандыВыбранныхПолей_Группы - 284 - - ВыбранныеПоля_Сгруппировать - 288 - true - true - - true - - - ВыбранныеПоля_СгруппироватьРасширеннаяПодсказка - 289 - Label - true - true - - Left - - - Form.Command.ВыбранныеПоля_Сгруппировать - Normal - Auto - true - true - UserCmds - - StdPicture.CreateFolder - - Auto - InAdditionalSubmenu - - - ВыбранныеПоля_Разгруппировать - 290 - true - true - - true - - - ВыбранныеПоля_РазгруппироватьРасширеннаяПодсказка - 291 - Label - true - true - - Left - - - Form.Command.ВыбранныеПоля_Разгруппировать - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - true - true - - true - - - <key>ru</key> - <value>Команды выбранных полей группы</value> - - - ru - Команды выбранных полей группы - - - КомандыВыбранныхПолей_ГруппыРасширеннаяПодсказка - 285 - Label - true - true - - Left - - - - - - КомандыВыбранныхПолей_Флажки - 1035 - - ВыбранныеПоляВыбранныеПоля_УстановитьФлажки - 1037 - true - true - - true - - - ВыбранныеПоляВыбранныеПоля_УстановитьФлажкиРасширеннаяПодсказка - 1038 - Label - true - true - - Left - - - Form.Command.ВыбранныеПоля_УстановитьФлажки - Normal - Auto - true - true - UserCmds - Auto - - - ВыбранныеПоляВыбранныеПоля_СнятьФлажки - 1039 - true - true - - true - - - ВыбранныеПоляВыбранныеПоля_СнятьФлажкиРасширеннаяПодсказка - 1040 - Label - true - true - - Left - - - Form.Command.ВыбранныеПоля_СнятьФлажки - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Команды выбранных полей флажки</value> - - - ru - Команды выбранных полей флажки - - - КомандыВыбранныхПолей_ФлажкиРасширеннаяПодсказка - 1036 - Label - true - true - - Left - - - - - Left - - - DragCheck - ВыбранныеПоляПроверкаПеретаскивания - - - Selection - ВыбранныеПоляВыбор - - - BeforeAddRow - ВыбранныеПоляПередНачаломДобавления - - - BeforeDeleteRow - ВыбранныеПоляПередУдалением - - - DragStart - ВыбранныеПоляНачалоПеретаскивания - - - Drag - ВыбранныеПоляПеретаскивание - - - DragEnd - ВыбранныеПоляОкончаниеПеретаскивания - - - ВыбранныеПоляСтрокаПоиска - 234 - - ВыбранныеПоляСтрокаПоискаРасширеннаяПодсказка - 238 - Label - true - true - - Left - - - - ВыбранныеПоляСтрокаПоискаКонтекстноеМеню - 237 - true - - ВыбранныеПоля - - true - - - - ВыбранныеПоляСостояниеПросмотра - 239 - - ВыбранныеПоляСостояниеПросмотраРасширеннаяПодсказка - 243 - Label - true - true - - Left - - - - ВыбранныеПоляСостояниеПросмотраКонтекстноеМеню - 242 - true - - ViewStatusAddition - ВыбранныеПоля - - true - - - - ВыбранныеПоляУправлениеПоиском - 244 - - ВыбранныеПоляУправлениеПоискомРасширеннаяПодсказка - 248 - Label - true - true - - Left - - - - ВыбранныеПоляУправлениеПоискомКонтекстноеМеню - 247 - true - - SearchControlAddition - ВыбранныеПоля - - true - - - - ВыбранныеПоляРасширеннаяПодсказка - 233 - Label - true - true - - Left - - - - ВыбранныеПоляКонтекстноеМеню - 231 - - КомандыВыбранныхПолей_ДобавлениеУдаление1 - 397 - - ВыбранныеПоля_Добавить1 - 399 - - <key>ru</key> - <value>Добавить</value> - - true - true - - true - - - ВыбранныеПоля_Добавить1РасширеннаяПодсказка - 400 - Label - true - true - - Left - - - Form.Item.ВыбранныеПоля.StandardCommand.Add - Normal - PictureAndText - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - ВыбранныеПоля_Удалить1 - 401 - true - true - - true - - - ВыбранныеПоля_Удалить1РасширеннаяПодсказка - 402 - Label - true - true - - Left - - - Form.Item.ВыбранныеПоля.StandardCommand.Delete - Normal - Picture - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - КомандыВыбранныхПолей_ДобавлениеУдаление1РасширеннаяПодсказка - 398 - Label - true - true - - Left - - - - - - КомандыВыбранныхПолей_Приоритет1 - 391 - - ВыбранныеПоля_ПереместитьВверх1 - 393 - true - true - - true - - - ВыбранныеПоля_ПереместитьВверх1РасширеннаяПодсказка - 394 - Label - true - true - - Left - - - Form.Command.ВыбранныеПоля_ПереместитьВверх - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - ВыбранныеПоля_ПереместитьВниз1 - 395 - true - true - - true - - - ВыбранныеПоля_ПереместитьВниз1РасширеннаяПодсказка - 396 - Label - true - true - - Left - - - Form.Command.ВыбранныеПоля_ПереместитьВниз - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - КомандыВыбранныхПолей_Приоритет1РасширеннаяПодсказка - 392 - Label - true - true - - Left - - - - - - КомандыВыбранныхПолей_Группы1 - 385 - - ВыбранныеПоля_Сгруппировать1 - 387 - true - true - - true - - - ВыбранныеПоля_Сгруппировать1РасширеннаяПодсказка - 388 - Label - true - true - - Left - - - Form.Command.ВыбранныеПоля_Сгруппировать - Normal - Auto - true - true - UserCmds - - StdPicture.CreateFolder - - Auto - InAdditionalSubmenu - - - ВыбранныеПоля_Разгруппировать1 - 389 - true - true - - true - - - ВыбранныеПоля_Разгруппировать1РасширеннаяПодсказка - 390 - Label - true - true - - Left - - - Form.Command.ВыбранныеПоля_Разгруппировать - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - true - true - - true - - - <key>ru</key> - <value>Команды выбранных полей группы</value> - - - ru - Команды выбранных полей группы - - - КомандыВыбранныхПолей_Группы1РасширеннаяПодсказка - 386 - Label - true - true - - Left - - - - - - КомандыВыбранныхПолей_Флажки1 - 1041 - - ВыбранныеПоляВыбранныеПоля_УстановитьФлажки1 - 1043 - true - true - - true - - - ВыбранныеПоляВыбранныеПоля_УстановитьФлажки1РасширеннаяПодсказка - 1044 - Label - true - true - - Left - - - Form.Command.ВыбранныеПоля_УстановитьФлажки - Normal - Auto - true - true - UserCmds - Auto - - - ВыбранныеПоляВыбранныеПоля_СнятьФлажки1 - 1045 - true - true - - true - - - ВыбранныеПоляВыбранныеПоля_СнятьФлажки1РасширеннаяПодсказка - 1046 - Label - true - true - - Left - - - Form.Command.ВыбранныеПоля_СнятьФлажки - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Команды выбранных полей флажки</value> - - - ru - Команды выбранных полей флажки - - - КомандыВыбранныхПолей_Флажки1РасширеннаяПодсказка - 1042 - Label - true - true - - Left - - - - - - Tree - true - true - true - true - true - AfterCurrentRow - MultiRow - 1 - 1 - AutoUse - AutoUse - true - true - false - false - false - false - false - DontUse - Auto - ExpandAllLevels - true - true - true - true - - ВыбранныеПоля.ИндексКартинки - - - CommonPicture.ПиктограммыНастроекОтчета - - true - - - ГруппаСортировки - 1013 - - КомандыПолейИСортировок - 902 - - Декорация1 - 904 - true - true - - true - - - Декорация1РасширеннаяПодсказка - 906 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 905 - true - - Label - true - true - true - - Left - - - - ВыбранныеПоля_Сортировка_Вправо - 907 - true - true - - true - - - ВыбранныеПоля_Сортировка_ВправоРасширеннаяПодсказка - 908 - Label - true - true - - Left - - - UsualButton - Form.Command.ВыбранныеПоля_Сортировка_Вправо - Normal - Auto - true - true - UserCmds - Auto - - - ВыбранныеПоля_Сортировка_Влево - 909 - true - true - - true - - - ВыбранныеПоля_Сортировка_ВлевоРасширеннаяПодсказка - 910 - Label - true - true - - Left - - - UsualButton - Form.Command.ВыбранныеПоля_Сортировка_Влево - Normal - Auto - true - true - UserCmds - Auto - - - ВыбранныеПоля_Сортировка_ВлевоВсе - 911 - true - true - - true - - - ВыбранныеПоля_Сортировка_ВлевоВсеРасширеннаяПодсказка - 912 - Label - true - true - - Left - - - UsualButton - Form.Command.ВыбранныеПоля_Сортировка_ВлевоВсе - Normal - Auto - true - true - UserCmds - Auto - - - Декорация2 - 913 - true - true - - true - - - Декорация2РасширеннаяПодсказка - 915 - Label - true - true - - Left - - - - Декорация2КонтекстноеМеню - 914 - true - - Label - true - true - true - - Left - - - - Декорация3 - 1010 - true - true - - true - - - Декорация3РасширеннаяПодсказка - 1012 - Label - true - true - - Left - - - - Декорация3КонтекстноеМеню - 1011 - true - - Label - true - true - - Left - - - true - true - - true - - - <key>ru</key> - <value>Команды полей и сортировок</value> - - - ru - Команды полей и сортировок - - - КомандыПолейИСортировокРасширеннаяПодсказка - 903 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - Сортировка - 130 - true - true - - true - - - Сортировка - - None - Change - Copy - CopyToClipboard - EndEdit - MoveDown - MoveUp - OutputList - SelectAll - SortListAsc - SortListDesc - - СортировкаГруппа1 - 163 - - СортировкаИспользование - 773 - true - true - - true - - - Сортировка.Использование - - - OnChange - СортировкаИспользованиеПриИзменении - - - СортировкаИспользованиеРасширеннаяПодсказка - 775 - Label - true - true - - Left - - - - СортировкаИспользованиеКонтекстноеМеню - 774 - true - - CheckBoxField - Auto - true - Left - true - - - - СортировкаПредставление - 155 - true - true - - true - - - Сортировка.Представление - - - СортировкаПредставлениеРасширеннаяПодсказка - 157 - Label - true - true - - Left - - - - СортировкаПредставлениеКонтекстноеМеню - 156 - true - - InputField - true - Auto - true - Left - true - - true - true - true - true - true - true - Normal - - - true - true - - true - - - СортировкаГруппа1РасширеннаяПодсказка - 164 - Label - true - true - - Left - - - ColumnGroup - - InCell - auto - true - - - - СортировкаНаправление - 158 - true - true - - true - - - Сортировка.Направление - - - СортировкаНаправлениеРасширеннаяПодсказка - 160 - Label - true - true - - Left - - - - СортировкаНаправлениеКонтекстноеМеню - 159 - true - - LabelField - Auto - Right - true - true - Left - true - Show - Always - - 12 - true - true - false - true - - - Top - - СортировкаКоманднаяПанель - 132 - - КомандыСортировки_ДобавлениеУдаление - 204 - - Сортировка_Добавить - 206 - true - true - - true - - - Сортировка_ДобавитьРасширеннаяПодсказка - 207 - Label - true - true - - Left - - - Form.Item.Сортировка.StandardCommand.Add - Normal - PictureAndText - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - Сортировка_Удалить - 208 - true - true - - true - - - Сортировка_УдалитьРасширеннаяПодсказка - 209 - Label - true - true - - Left - - - Form.Item.Сортировка.StandardCommand.Delete - Normal - Picture - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - <key>ru</key> - <value>Команды сортировки добавление удаление</value> - - - ru - Команды сортировки добавление удаление - - - КомандыСортировки_ДобавлениеУдалениеРасширеннаяПодсказка - 205 - Label - true - true - - Left - - - - - - КомандыСортировки_Приоритет - 175 - - Сортировка_ПереместитьВверх - 165 - true - true - - true - - - Сортировка_ПереместитьВверхРасширеннаяПодсказка - 166 - Label - true - true - - Left - - - Form.Command.Сортировка_ПереместитьВверх - Normal - Auto - true - true - UserCmds - Auto - - - Сортировка_ПереместитьВниз - 167 - true - true - - true - - - Сортировка_ПереместитьВнизРасширеннаяПодсказка - 168 - Label - true - true - - Left - - - Form.Command.Сортировка_ПереместитьВниз - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Команды сортировки приоритет</value> - - - ru - Команды сортировки приоритет - - - КомандыСортировки_ПриоритетРасширеннаяПодсказка - 176 - Label - true - true - - Left - - - - - - КомандыСортировки_Направление - 173 - - Сортировка_ПоВозрастанию - 169 - true - - true - - - Сортировка_ПоВозрастаниюРасширеннаяПодсказка - 170 - Label - true - true - - Left - - - Form.Command.Сортировка_ПоВозрастанию - Normal - Auto - true - true - UserCmds - Auto - - - Сортировка_ПоУбыванию - 171 - true - - true - - - Сортировка_ПоУбываниюРасширеннаяПодсказка - 172 - Label - true - true - - Left - - - Form.Command.Сортировка_ПоУбыванию - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Команды сортировки направление</value> - - - ru - Команды сортировки направление - - - КомандыСортировки_НаправлениеРасширеннаяПодсказка - 174 - Label - true - true - - Left - - - - - - КомандыСортировки_Флажки - 1047 - - СортировкаСортировка_УстановитьФлажки - 1049 - true - true - - true - - - СортировкаСортировка_УстановитьФлажкиРасширеннаяПодсказка - 1050 - Label - true - true - - Left - - - Form.Command.Сортировка_УстановитьФлажки - Normal - Auto - true - true - UserCmds - Auto - - - СортировкаСортировка_СнятьФлажки - 1051 - true - true - - true - - - СортировкаСортировка_СнятьФлажкиРасширеннаяПодсказка - 1052 - Label - true - true - - Left - - - Form.Command.Сортировка_СнятьФлажки - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Команды сортировки флажки</value> - - - ru - Команды сортировки флажки - - - КомандыСортировки_ФлажкиРасширеннаяПодсказка - 1048 - Label - true - true - - Left - - - - - Left - - - DragCheck - СортировкаПроверкаПеретаскивания - - - Selection - СортировкаВыбор - - - BeforeAddRow - СортировкаПередНачаломДобавления - - - BeforeDeleteRow - СортировкаПередУдалением - - - DragStart - СортировкаНачалоПеретаскивания - - - Drag - СортировкаПеретаскивание - - - DragEnd - СортировкаОкончаниеПеретаскивания - - - СортировкаСтрокаПоиска - 134 - - СортировкаСтрокаПоискаРасширеннаяПодсказка - 138 - Label - true - true - - Left - - - - СортировкаСтрокаПоискаКонтекстноеМеню - 137 - true - - Сортировка - - true - - - - СортировкаСостояниеПросмотра - 139 - - СортировкаСостояниеПросмотраРасширеннаяПодсказка - 143 - Label - true - true - - Left - - - - СортировкаСостояниеПросмотраКонтекстноеМеню - 142 - true - - ViewStatusAddition - Сортировка - - true - - - - СортировкаУправлениеПоиском - 144 - - СортировкаУправлениеПоискомРасширеннаяПодсказка - 148 - Label - true - true - - Left - - - - СортировкаУправлениеПоискомКонтекстноеМеню - 147 - true - - SearchControlAddition - Сортировка - - true - - - - СортировкаРасширеннаяПодсказка - 133 - Label - true - true - - Left - - - - СортировкаКонтекстноеМеню - 131 - - КомандыСортировки_ДобавлениеУдаление1 - 1015 - - Сортировка_Добавить2 - 1017 - true - true - - true - - - Сортировка_Добавить2РасширеннаяПодсказка - 1018 - Label - true - true - - Left - - - Form.Item.Сортировка.StandardCommand.Add - Normal - PictureAndText - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - Сортировка_Удалить2 - 1019 - true - true - - true - - - Сортировка_Удалить2РасширеннаяПодсказка - 1020 - Label - true - true - - Left - - - Form.Item.Сортировка.StandardCommand.Delete - Normal - Picture - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - <key>ru</key> - <value>Команды сортировки добавление удаление</value> - - - ru - Команды сортировки добавление удаление - - - КомандыСортировки_ДобавлениеУдаление1РасширеннаяПодсказка - 1016 - Label - true - true - - Left - - - - - - КомандыСортировки_Приоритет1 - 1021 - - Сортировка_ПереместитьВверх1 - 1023 - true - true - - true - - - Сортировка_ПереместитьВверх1РасширеннаяПодсказка - 1024 - Label - true - true - - Left - - - Form.Command.Сортировка_ПереместитьВверх - Normal - Auto - true - true - UserCmds - Auto - - - Сортировка_ПереместитьВниз1 - 1025 - true - true - - true - - - Сортировка_ПереместитьВниз1РасширеннаяПодсказка - 1026 - Label - true - true - - Left - - - Form.Command.Сортировка_ПереместитьВниз - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Команды сортировки приоритет</value> - - - ru - Команды сортировки приоритет - - - КомандыСортировки_Приоритет1РасширеннаяПодсказка - 1022 - Label - true - true - - Left - - - - - - КомандыСортировки_Направление1 - 1027 - - Сортировка_ПоВозрастанию1 - 1029 - true - - true - - - Сортировка_ПоВозрастанию1РасширеннаяПодсказка - 1030 - Label - true - true - - Left - - - Form.Command.Сортировка_ПоВозрастанию - Normal - Auto - true - true - UserCmds - Auto - - - Сортировка_ПоУбыванию1 - 1031 - true - - true - - - Сортировка_ПоУбыванию1РасширеннаяПодсказка - 1032 - Label - true - true - - Left - - - Form.Command.Сортировка_ПоУбыванию - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Команды сортировки направление</value> - - - ru - Команды сортировки направление - - - КомандыСортировки_Направление1РасширеннаяПодсказка - 1028 - Label - true - true - - Left - - - - - - КомандыСортировки_Флажки1 - 1053 - - СортировкаСортировка_УстановитьФлажки1 - 1055 - true - true - - true - - - СортировкаСортировка_УстановитьФлажки1РасширеннаяПодсказка - 1056 - Label - true - true - - Left - - - Form.Command.Сортировка_УстановитьФлажки - Normal - Auto - true - true - UserCmds - Auto - - - СортировкаСортировка_СнятьФлажки1 - 1057 - true - true - - true - - - СортировкаСортировка_СнятьФлажки1РасширеннаяПодсказка - 1058 - Label - true - true - - Left - - - Form.Command.Сортировка_СнятьФлажки - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Команды сортировки флажки</value> - - - ru - Команды сортировки флажки - - - КомандыСортировки_Флажки1РасширеннаяПодсказка - 1054 - Label - true - true - - Left - - - - - - Tree - true - true - true - true - true - AfterCurrentRow - MultiRow - 1 - 1 - AutoUse - true - true - false - false - false - false - false - DontUse - Auto - ExpandAllLevels - true - true - true - true - - Сортировка.ИндексКартинки - - - CommonPicture.ПиктограммыНастроекОтчета - - true - - true - true - - true - - - <key>ru</key> - <value>Группа сортировки</value> - - - ru - Группа сортировки - - false - - ГруппаСортировкиРасширеннаяПодсказка - 1014 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Группа поля и сортировки</value> - - - ru - Группа поля и сортировки - - - ГруппаПоляИСортировкиРасширеннаяПодсказка - 901 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаЕстьВложенныеПоляИлиСортировки - 1002 - - КартинкаИнформация3 - 1004 - - <key>ru</key> - <value>Картинка информация</value> - - true - true - - true - - - КартинкаИнформация3РасширеннаяПодсказка - 1006 - Label - true - true - - Left - - - - КартинкаИнформация3КонтекстноеМеню - 1005 - true - - 2 - true - 1 - true - - - CommonPicture.Информация - - - - - ПодсказкаЕстьВложенныеПоляИлиСортировки - 1007 - - <key>ru</key> - <value>В отчете имеются вложенные поля и сортировки, которые можно настроить на странице <b>Структура</>.</value> - - true - true - - true - - - ПодсказкаЕстьВложенныеПоляИлиСортировкиРасширеннаяПодсказка - 1009 - Label - true - true - - Left - - - - ПодсказкаЕстьВложенныеПоляИлиСортировкиКонтекстноеМеню - 1008 - true - - true - Label - true - true - - Style.ПоясняющийТекст - - - - URLProcessing - ПодсказкаЕстьВложенныеОтчетыОбработкаНавигационнойСсылки - - Left - - - true - true - - true - - - ГруппаЕстьВложенныеПоляИлиСортировкиРасширеннаяПодсказка - 1003 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Поля и сортировки</value> - - - ru - Страница выбранные поля и сортировки - - - СтраницаВыбранныеПоляИСортировкиРасширеннаяПодсказка - 127 - Label - true - true - - Left - - - Page - - - CommonPicture.ПоляИСортировки - - Vertical - auto - false - - - - СтраницаОформление - 590 - - СтраницаДополнительноПодвал - 51 - true - true - - true - - - СтраницаДополнительноПодвалРасширеннаяПодсказка - 52 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - СтраницаДополнительноГруппировки - 49 - true - true - - true - - - СтраницаДополнительноГруппировкиРасширеннаяПодсказка - 50 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - СтраницаДополнительноШапка - 47 - true - true - - true - - - СтраницаДополнительноШапкаРасширеннаяПодсказка - 48 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаОформлениеРасширенныйРежим - 922 - - Оформление - 838 - true - true - - true - - - Оформление - - None - Change - Copy - CopyToClipboard - EndEdit - HierarchicalList - List - MoveDown - MoveUp - OutputList - SelectAll - SortListAsc - SortListDesc - Tree - - ОформлениеГруппа1 - 889 - - ОформлениеИспользование - 891 - true - true - - true - - - Оформление.Использование - - - ОформлениеИспользованиеРасширеннаяПодсказка - 893 - Label - true - true - - Left - - - - ОформлениеИспользованиеКонтекстноеМеню - 892 - true - - CheckBoxField - Auto - Left - true - - - - ОформлениеЗаголовок - 894 - true - true - - true - - - Оформление.Заголовок - - - ОформлениеЗаголовокРасширеннаяПодсказка - 896 - Label - true - true - - Left - - - - ОформлениеЗаголовокКонтекстноеМеню - 895 - true - - InputField - Auto - true - Left - true - - true - true - false - true - true - true - true - Normal - - - true - true - - true - - - ОформлениеГруппа1РасширеннаяПодсказка - 890 - Label - true - true - - Left - - - ColumnGroup - - InCell - auto - true - - - - ОформлениеИндексКартинкиДоступа - 897 - true - true - - true - - - Оформление.ИндексКартинкиДоступа - - None - - ОформлениеИндексКартинкиДоступаРасширеннаяПодсказка - 899 - Label - true - true - - Left - - - - ОформлениеИндексКартинкиДоступаКонтекстноеМеню - 898 - true - - PictureField - Auto - true - - CommonPicture.БыстрыйДоступ - - Left - true - - 2 - true - true - true - true - - CommonPicture.ПиктограммыДоступаКНастройкамОтчета - - - - 1 - - - - Top - - ОформлениеКоманднаяПанель - 840 - - КомандыОформления_ДобавлениеУдаление - 826 - - Оформление_Добавить - 828 - - <key>ru</key> - <value>Добавить</value> - - true - true - - true - - - Оформление_ДобавитьРасширеннаяПодсказка - 829 - Label - true - true - - Left - - - Form.Item.Оформление.StandardCommand.Add - Normal - PictureAndText - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - Оформление_Удалить - 830 - true - true - - true - - - Оформление_УдалитьРасширеннаяПодсказка - 831 - Label - true - true - - Left - - - Form.Item.Оформление.StandardCommand.Delete - Normal - Picture - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - КомандыОформления_ДобавлениеУдалениеРасширеннаяПодсказка - 827 - Label - true - true - - Left - - - - - - КомандыОформления_Приоритет - 832 - - Оформление_ПереместитьВверх - 834 - true - true - - true - - - Оформление_ПереместитьВверхРасширеннаяПодсказка - 835 - Label - true - true - - Left - - - Form.Command.Оформление_ПереместитьВверх - Normal - Auto - true - true - UserCmds - Auto - - - Оформление_ПереместитьВниз - 836 - true - true - - true - - - Оформление_ПереместитьВнизРасширеннаяПодсказка - 837 - Label - true - true - - Left - - - Form.Command.Оформление_ПереместитьВниз - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - КомандыОформления_ПриоритетРасширеннаяПодсказка - 833 - Label - true - true - - Left - - - - - Left - - - Selection - ОформлениеВыбор - - - BeforeAddRow - ОформлениеПередНачаломДобавления - - - BeforeDeleteRow - ОформлениеПередУдалением - - - ОформлениеСтрокаПоиска - 842 - - ОформлениеСтрокаПоискаРасширеннаяПодсказка - 846 - Label - true - true - - Left - - - - ОформлениеСтрокаПоискаКонтекстноеМеню - 845 - true - - Оформление - - true - - - - ОформлениеСостояниеПросмотра - 847 - - ОформлениеСостояниеПросмотраРасширеннаяПодсказка - 851 - Label - true - true - - Left - - - - ОформлениеСостояниеПросмотраКонтекстноеМеню - 850 - true - - ViewStatusAddition - Оформление - - true - - - - ОформлениеУправлениеПоиском - 852 - - ОформлениеУправлениеПоискомРасширеннаяПодсказка - 856 - Label - true - true - - Left - - - - ОформлениеУправлениеПоискомКонтекстноеМеню - 855 - true - - SearchControlAddition - Оформление - - true - - - - ОформлениеРасширеннаяПодсказка - 841 - Label - true - true - - Left - - - - ОформлениеКонтекстноеМеню - 839 - true - - Tree - true - true - true - true - true - AfterCurrentRow - MultiRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - false - false - true - Auto - Auto - ExpandAllLevels - true - true - true - true - - CommonPicture.ПиктограммыЭлементов - - true -
        - true - true - - true - - - <key>ru</key> - <value>Группа оформление расширенный режим</value> - - - ru - Группа оформление расширенный режим - - - ГруппаОформлениеРасширенныйРежимРасширеннаяПодсказка - 923 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - -
        - - ГруппаЕстьВложенноеОформление - 926 - - КартинкаИнформация2 - 928 - - <key>ru</key> - <value>Картинка информация</value> - - true - true - - true - - - КартинкаИнформация2РасширеннаяПодсказка - 930 - Label - true - true - - Left - - - - КартинкаИнформация2КонтекстноеМеню - 929 - true - - 2 - true - 1 - true - - - CommonPicture.Информация - - - - - ПодсказкаЕстьВложенноеОформление - 931 - - <key>ru</key> - <value>В отчете имеется оформление вложенных элементов, которое можно настроить на странице <b>Структура</>.</value> - - true - true - - true - - - ПодсказкаЕстьВложенноеОформлениеРасширеннаяПодсказка - 933 - Label - true - true - - Left - - - - ПодсказкаЕстьВложенноеОформлениеКонтекстноеМеню - 932 - true - - true - Label - true - true - - Style.ПоясняющийТекст - - - - URLProcessing - ПодсказкаЕстьВложенныеОтчетыОбработкаНавигационнойСсылки - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа есть вложенное оформление</value> - - - ru - Группа есть вложенное оформление - - - ГруппаЕстьВложенноеОформлениеРасширеннаяПодсказка - 927 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Оформление</value> - - - ru - Страница оформление - - - СтраницаОформлениеРасширеннаяПодсказка - 591 - Label - true - true - - Left - - - Page - - - CommonPicture.Оформление - - Vertical - auto - false - -
        - - СтраницаСтруктураВарианта - 427 - - СтруктураВарианта - 429 - true - true - - true - - - СтруктураВарианта - - None - Change - Choose - Copy - CopyToClipboard - EndEdit - HierarchicalList - List - MoveDown - MoveUp - OutputList - SortListAsc - SortListDesc - Tree - - СтруктураВариантаГруппа2 - 448 - - СтруктураВариантаИспользование - 494 - true - true - - true - - - СтруктураВарианта.Использование - - - OnChange - СтруктураВариантаИспользованиеПриИзменении - - - СтруктураВариантаИспользованиеРасширеннаяПодсказка - 496 - Label - true - true - - Left - - - - СтруктураВариантаИспользованиеКонтекстноеМеню - 495 - true - - CheckBoxField - Auto - Left - true - - - - СтруктураВариантаПредставление - 497 - true - true - - true - - - СтруктураВарианта.Представление - - - СтруктураВариантаПредставлениеРасширеннаяПодсказка - 499 - Label - true - true - - Left - - - - СтруктураВариантаПредставлениеКонтекстноеМеню - 498 - true - - InputField - true - Auto - true - Left - true - - true - true - true - true - true - Normal - - - true - true - - true - - - СтруктураВариантаГруппа2РасширеннаяПодсказка - 449 - Label - true - true - - Left - - - ColumnGroup - - InCell - auto - true - - - - СтруктураВариантаЗаголовок - 554 - true - true - - true - - - СтруктураВарианта.Заголовок - - - OnChange - СтруктураВариантаЗаголовокПриИзменении - - - СтруктураВариантаЗаголовокРасширеннаяПодсказка - 556 - Label - true - true - - Left - - - - СтруктураВариантаЗаголовокКонтекстноеМеню - 555 - true - - InputField - Auto - true - Left - true - - true - true - true - true - true - true - true - Normal - - System.DefaultGUIFont - Arial - 10.0 - true - false - false - false - - - - - СтруктураВариантаСодержитОтборы - 967 - true - true - - true - - - СтруктураВарианта.СодержитОтборы - - true - None - - ru - Картинка показывается если у элемента настроены отборы. - - - СтруктураВариантаСодержитОтборыРасширеннаяПодсказка - 969 - Label - true - true - - Left - - - - СтруктураВариантаСодержитОтборыКонтекстноеМеню - 968 - true - - PictureField - Auto - true - - CommonPicture.Отборы - - Left - true - - 2 - true - true - - CommonPicture.Отборы - - - - 1 - - - - - СтруктураВариантаСодержитПоляИлиСортировки - 997 - true - true - - true - - - СтруктураВарианта.СодержитПоляИлиСортировки - - true - None - - ru - Картинка показывается если у элемента настроены поля и сортировки. - - - СтруктураВариантаСодержитПоляИлиСортировкиРасширеннаяПодсказка - 999 - Label - true - true - - Left - - - - СтруктураВариантаСодержитПоляИлиСортировкиКонтекстноеМеню - 998 - true - - PictureField - Auto - true - - CommonPicture.ПоляИСортировки - - Left - true - - 2 - true - true - - CommonPicture.ПоляИСортировки - - - - 1 - - - - - СтруктураВариантаСодержитУсловноеОформление - 934 - true - true - - true - - - СтруктураВарианта.СодержитУсловноеОформление - - true - None - - ru - Картинка показывается если у элемента настроено оформление. - - - СтруктураВариантаСодержитУсловноеОформлениеРасширеннаяПодсказка - 936 - Label - true - true - - Left - - - - СтруктураВариантаСодержитУсловноеОформлениеКонтекстноеМеню - 935 - true - - PictureField - Auto - true - - CommonPicture.Оформление - - Left - true - - 2 - true - true - - CommonPicture.Оформление - - - - 1 - - - - Top - - СтруктураВариантаКоманднаяПанель - 431 - - КомандыСтруктурыВарианта_Добавление - 468 - - СтруктураВарианта_Добавить - 508 - true - true - - true - - - СтруктураВарианта_ДобавитьРасширеннаяПодсказка - 509 - Label - true - true - - Left - - - Form.Item.СтруктураВарианта.StandardCommand.Add - Normal - Picture - true - true - UserCmds - Auto - - - СтруктураВарианта_Сгруппировать - 510 - true - true - - true - - - СтруктураВарианта_СгруппироватьРасширеннаяПодсказка - 511 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_Сгруппировать - Normal - Auto - true - true - UserCmds - Auto - - - СтруктураВарианта_ДобавлениеТаблицИДиаграмм - 776 - - СтруктураВарианта_ДобавитьТаблицу - 780 - true - true - - true - - - СтруктураВарианта_ДобавитьТаблицуРасширеннаяПодсказка - 781 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_ДобавитьТаблицу - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - - СтруктураВарианта_ДобавитьДиаграмму - 778 - true - true - - true - - - СтруктураВарианта_ДобавитьДиаграммуРасширеннаяПодсказка - 779 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_ДобавитьДиаграмму - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - true - true - - true - - - <key>ru</key> - <value>Структура варианта добавление таблиц и диаграмм</value> - - - ru - Структура варианта добавление таблиц и диаграмм - - - СтруктураВарианта_ДобавлениеТаблицИДиаграммРасширеннаяПодсказка - 777 - Label - true - true - - Left - - - - - true - true - - true - - - КомандыСтруктурыВарианта_ДобавлениеРасширеннаяПодсказка - 469 - Label - true - true - - Left - - - - - - КомандыСтруктурыВарианта_Изменение - 516 - - СтруктураВарианта_Изменить - 512 - true - true - - true - - - СтруктураВарианта_ИзменитьРасширеннаяПодсказка - 513 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_Изменить - Normal - Picture - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - СтруктураВарианта_Удалить - 668 - true - true - - true - - - СтруктураВарианта_УдалитьРасширеннаяПодсказка - 669 - Label - true - true - - Left - - - Form.Item.СтруктураВарианта.StandardCommand.Delete - Normal - Picture - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - <key>ru</key> - <value>Команды структуры варианта изменение</value> - - - ru - Команды структуры варианта изменение - - - КомандыСтруктурыВарианта_ИзменениеРасширеннаяПодсказка - 517 - Label - true - true - - Left - - - - - - КомандыСтруктурыВарианта_ДвижениеПоИерархии - 456 - - СтруктураВарианта_ПереместитьВышеИЛевее - 500 - true - true - - true - - - СтруктураВарианта_ПереместитьВышеИЛевееРасширеннаяПодсказка - 501 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_ПереместитьВышеИЛевее - Normal - Auto - true - true - UserCmds - Auto - - - СтруктураВарианта_ПереместитьНижеИПравее - 502 - true - true - - true - - - СтруктураВарианта_ПереместитьНижеИПравееРасширеннаяПодсказка - 503 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_ПереместитьНижеИПравее - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - КомандыСтруктурыВарианта_ДвижениеПоИерархииРасширеннаяПодсказка - 457 - Label - true - true - - Left - - - - - - КомандыСтруктурыВарианта_ДвижениеВнутриРодителя - 462 - - СтруктураВарианта_ПереместитьВверх - 504 - true - true - - true - - - СтруктураВарианта_ПереместитьВверхРасширеннаяПодсказка - 505 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_ПереместитьВверх - Normal - Auto - true - true - UserCmds - Auto - - - СтруктураВарианта_ПереместитьВниз - 506 - true - true - - true - - - СтруктураВарианта_ПереместитьВнизРасширеннаяПодсказка - 507 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_ПереместитьВниз - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - КомандыСтруктурыВарианта_ДвижениеВнутриРодителяРасширеннаяПодсказка - 463 - Label - true - true - - Left - - - - - - КомандыСтруктурыВарианта_Флажки - 518 - - СтруктураВарианта_УстановитьФлажки - 520 - true - true - - true - - - СтруктураВарианта_УстановитьФлажкиРасширеннаяПодсказка - 521 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_УстановитьФлажки - Normal - Auto - true - true - UserCmds - Auto - - - СтруктураВарианта_СнятьФлажки - 522 - true - true - - true - - - СтруктураВарианта_СнятьФлажкиРасширеннаяПодсказка - 523 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_СнятьФлажки - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - <key>ru</key> - <value>Команды структуры варианта флажки</value> - - - ru - Команды структуры варианта флажки - - - КомандыСтруктурыВарианта_ФлажкиРасширеннаяПодсказка - 519 - Label - true - true - - Left - - - - - Left - - - DragCheck - СтруктураВариантаПроверкаПеретаскивания - - - Selection - СтруктураВариантаВыбор - - - BeforeAddRow - СтруктураВариантаПередНачаломДобавления - - - BeforeDeleteRow - СтруктураВариантаПередУдалением - - - OnActivateRow - СтруктураВариантаПриАктивизацииСтроки - - - DragStart - СтруктураВариантаНачалоПеретаскивания - - - Drag - СтруктураВариантаПеретаскивание - - - СтруктураВариантаСтрокаПоиска - 433 - - СтруктураВариантаСтрокаПоискаРасширеннаяПодсказка - 437 - Label - true - true - - Left - - - - СтруктураВариантаСтрокаПоискаКонтекстноеМеню - 436 - true - - СтруктураВарианта - - true - - - - СтруктураВариантаСостояниеПросмотра - 438 - - СтруктураВариантаСостояниеПросмотраРасширеннаяПодсказка - 442 - Label - true - true - - Left - - - - СтруктураВариантаСостояниеПросмотраКонтекстноеМеню - 441 - true - - ViewStatusAddition - СтруктураВарианта - - true - - - - СтруктураВариантаУправлениеПоиском - 443 - - СтруктураВариантаУправлениеПоискомРасширеннаяПодсказка - 447 - Label - true - true - - Left - - - - СтруктураВариантаУправлениеПоискомКонтекстноеМеню - 446 - true - - SearchControlAddition - СтруктураВарианта - - true - - - - СтруктураВариантаРасширеннаяПодсказка - 432 - Label - true - true - - Left - - - - СтруктураВариантаКонтекстноеМеню - 430 - - КомандыСтруктурыВарианта_Добавление1 - 741 - - СтруктураВарианта_Добавить1 - 743 - true - true - - true - - - СтруктураВарианта_Добавить1РасширеннаяПодсказка - 744 - Label - true - true - - Left - - - Form.Item.СтруктураВарианта.StandardCommand.Add - Normal - Picture - true - true - UserCmds - Auto - - - СтруктураВарианта_Сгруппировать1 - 747 - true - true - - true - - - СтруктураВарианта_Сгруппировать1РасширеннаяПодсказка - 748 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_Сгруппировать - Normal - Auto - true - true - UserCmds - Auto - - - СтруктураВарианта_ДобавлениеТаблицИДиаграмм1 - 782 - - СтруктураВарианта_ДобавитьТаблицу1 - 784 - true - true - - true - - - СтруктураВарианта_ДобавитьТаблицу1РасширеннаяПодсказка - 785 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_ДобавитьТаблицу - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - - СтруктураВарианта_ДобавитьДиаграмму1 - 786 - true - true - - true - - - СтруктураВарианта_ДобавитьДиаграмму1РасширеннаяПодсказка - 787 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_ДобавитьДиаграмму - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - - true - true - - true - - - <key>ru</key> - <value>Структура варианта добавление таблиц и диаграмм</value> - - - ru - Структура варианта добавление таблиц и диаграмм - - - СтруктураВарианта_ДобавлениеТаблицИДиаграмм1РасширеннаяПодсказка - 783 - Label - true - true - - Left - - - - - true - true - - true - - - КомандыСтруктурыВарианта_Добавление1РасширеннаяПодсказка - 742 - Label - true - true - - Left - - - - - - КомандыСтруктурыВарианта_Изменение1 - 749 - - СтруктураВарианта_Изменить1 - 751 - true - true - - true - - - СтруктураВарианта_Изменить1РасширеннаяПодсказка - 752 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_Изменить - Normal - Picture - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - СтруктураВарианта_Удалить1 - 753 - true - true - - true - - - СтруктураВарианта_Удалить1РасширеннаяПодсказка - 754 - Label - true - true - - Left - - - Form.Item.СтруктураВарианта.StandardCommand.Delete - Normal - Picture - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - <key>ru</key> - <value>Команды структуры варианта изменение</value> - - - ru - Команды структуры варианта изменение - - - КомандыСтруктурыВарианта_Изменение1РасширеннаяПодсказка - 750 - Label - true - true - - Left - - - - - - КомандыСтруктурыВарианта_ДвижениеПоИерархии1 - 755 - - СтруктураВарианта_ПереместитьВышеИЛевее1 - 757 - true - true - - true - - - СтруктураВарианта_ПереместитьВышеИЛевее1РасширеннаяПодсказка - 758 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_ПереместитьВышеИЛевее - Normal - Auto - true - true - UserCmds - Auto - - - СтруктураВарианта_ПереместитьНижеИПравее1 - 759 - true - true - - true - - - СтруктураВарианта_ПереместитьНижеИПравее1РасширеннаяПодсказка - 760 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_ПереместитьНижеИПравее - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - КомандыСтруктурыВарианта_ДвижениеПоИерархии1РасширеннаяПодсказка - 756 - Label - true - true - - Left - - - - - - КомандыСтруктурыВарианта_ДвижениеВнутриРодителя1 - 761 - - СтруктураВарианта_ПереместитьВверх1 - 763 - true - true - - true - - - СтруктураВарианта_ПереместитьВверх1РасширеннаяПодсказка - 764 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_ПереместитьВверх - Normal - Auto - true - true - UserCmds - Auto - - - СтруктураВарианта_ПереместитьВниз1 - 765 - true - true - - true - - - СтруктураВарианта_ПереместитьВниз1РасширеннаяПодсказка - 766 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_ПереместитьВниз - Normal - Auto - true - true - UserCmds - Auto - - true - true - - true - - - КомандыСтруктурыВарианта_ДвижениеВнутриРодителя1РасширеннаяПодсказка - 762 - Label - true - true - - Left - - - - - - КомандыСтруктурыВарианта_Флажки1 - 767 - - СтруктураВарианта_УстановитьФлажки1 - 769 - true - true - - true - - - СтруктураВарианта_УстановитьФлажки1РасширеннаяПодсказка - 770 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_УстановитьФлажки - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - СтруктураВарианта_СнятьФлажки1 - 771 - true - true - - true - - - СтруктураВарианта_СнятьФлажки1РасширеннаяПодсказка - 772 - Label - true - true - - Left - - - Form.Command.СтруктураВарианта_СнятьФлажки - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - <key>ru</key> - <value>Команды структуры варианта флажки</value> - - - ru - Команды структуры варианта флажки - - - КомандыСтруктурыВарианта_Флажки1РасширеннаяПодсказка - 768 - Label - true - true - - Left - - - - - - Tree - true - true - true - true - true - true - AfterCurrentRow -
        true
        - 1 - 1 - AutoUse - AutoUse - true - true - false - false - false - true - Auto - Auto - ExpandAllLevels - true - true - true - true - - СтруктураВарианта.ИндексКартинки - - - CommonPicture.ПиктограммыСтруктурыОтчета - - true -
        - true - true - - true - - - <key>ru</key> - <value>Структура</value> - - - ru - Страница структура варианта - - - СтраницаСтруктураВариантаРасширеннаяПодсказка - 428 - Label - true - true - - Left - - - Page - - - CommonPicture.Структура - - Vertical - auto - false - -
        - - СтраницаНетПользовательскихНастроек - 1071 - - КартинкаИнформация4 - 1078 - - <key>ru</key> - <value>Картинка информация</value> - - true - true - - true - - - КартинкаИнформация4РасширеннаяПодсказка - 1080 - Label - true - true - - Left - - - - КартинкаИнформация4КонтекстноеМеню - 1079 - true - - 2 - true - 1 - true - - - CommonPicture.Информация - - - - - ПодсказкаНетПользовательскихНастроек - 1081 - - <key>ru</key> - <value>У этого отчета нет ни одной пользовательской настройки. -<link 1>Перейти к расширенной настройке.</></value> - - true - true - - true - - - ПодсказкаНетПользовательскихНастроекРасширеннаяПодсказка - 1083 - Label - true - true - - Left - - - - ПодсказкаНетПользовательскихНастроекКонтекстноеМеню - 1082 - true - - true - Label - true - true - - - URLProcessing - ПодсказкаНетПользовательскихНастроекОбработкаНавигационнойСсылки - - Left - - - true - - true - - - <key>ru</key> - <value>Страница нет пользовательских настроек</value> - - true - - СтраницаНетПользовательскихНастроекРасширеннаяПодсказка - 1072 - Label - true - true - - Left - - - Page - - auto - false - - - - НеОтсортированное - 62 - true - true - - true - - - <key>ru</key> - <value>Не отсортированные</value> - - true - - НеОтсортированноеРасширеннаяПодсказка - 63 - Label - true - true - - Left - - - Page - - Vertical - auto - false - - - true - true - - true - - - <key>ru</key> - <value>Страницы настроек</value> - - - ru - Страницы настроек - - true - true - - СтраницыНастроекРасширеннаяПодсказка - 36 - Label - true - true - - Left - - - Pages - - TabsOnTop - Auto - -
        - - ГруппаЕстьВложенныеОтчеты - 791 - - КартинкаИнформация - 793 - - <key>ru</key> - <value>Картинка информация</value> - - true - true - - true - - - КартинкаИнформацияРасширеннаяПодсказка - 795 - Label - true - true - - Left - - - - КартинкаИнформацияКонтекстноеМеню - 794 - true - - 2 - true - 1 - true - - - CommonPicture.Информация - - - - - ПодсказкаЕстьВложенныеОтчеты - 796 - - <key>ru</key> - <value>У этого отчета сложная структура настроек (имеются вложенные отчеты). -<link 1>Перейти к </><link 1>настройке</><link 1> вложенных отчетов</>.</value> - - true - true - - true - - - ПодсказкаЕстьВложенныеОтчетыРасширеннаяПодсказка - 798 - Label - true - true - - Left - - - - ПодсказкаЕстьВложенныеОтчетыКонтекстноеМеню - 797 - true - - true - Label - true - true - - - URLProcessing - ПодсказкаЕстьВложенныеОтчетыОбработкаНавигационнойСсылки - - Left - - - true - true - - true - - - <key>ru</key> - <value>Группа есть вложенные отчеты</value> - - - ru - Группа есть вложенные отчеты - - - ГруппаЕстьВложенныеОтчетыРасширеннаяПодсказка - 792 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - КомандыФормы - 73 - - РасширенныйРежим - 113 - - <key>ru</key> - <value>Вид</value> - - true - true - - true - - - РасширенныйРежим - - Button - - OnChange - РасширенныйРежимПриИзменении - - - РасширенныйРежимРасширеннаяПодсказка - 115 - - <key>ru</key> - <value>Простой режим предназначен для изменения текущих настроек отчета, которые сохраняются автоматически. -Расширенный режим предназначен для изменения структуры отчета. После изменения структуры отчет необходимо сохранить как новый или перезаписать существующий.</value> - - Label - true - true - - Left - - - - РасширенныйРежимКонтекстноеМеню - 114 - true - - RadioButtonField - Enter - true - Left - true - - Tumbler - false - - - ru - Простой - - - 0 - - - - - ru - Расширенный - - - 1 - - - Vertical - - - - КомандыФормы_Правая - 80 - - Группа1 - 1033 - - ИзменитьФорму - 318 - - <key>ru</key> - <value>Изменить форму...</value> - - true - - true - - - ИзменитьФормуРасширеннаяПодсказка - 319 - Label - true - true - - Left - - - Form.StandardCommand.CustomizeForm - Normal - Picture - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - - <key>ru</key> - <value>1</value> - - - Группа1РасширеннаяПодсказка - 1034 - Label - true - true - - Left - - - - - - ЗакрытьИСформировать - 21 - true - true - - true - - - ЗакрытьИСформироватьРасширеннаяПодсказка - 22 - Label - true - true - - Left - - - Form.Command.ЗакрытьИСформировать - true - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - Закрыть - 4 - true - true - - true - - - ЗакрытьРасширеннаяПодсказка - 7 - Label - true - true - - Left - - - Form.Command.ЗакрытьБезФормирования - Normal - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - ИзменитьУсловияОтборов - 1000 - true - true - - true - - - ИзменитьУсловияОтборовРасширеннаяПодсказка - 1001 - Label - true - true - - Left - - - Form.Command.ИзменитьУсловияОтборов - Normal - Picture - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - - Справка - 799 - true - true - - true - - - СправкаРасширеннаяПодсказка - 800 - Label - true - true - - Left - - - Form.StandardCommand.Help - Normal - Auto - true - true - UserCmds - Auto - InCommandBarAndInAdditionalSubmenu - - true - true - - true - - true - - КомандыФормы_ПраваяРасширеннаяПодсказка - 81 - Label - true - true - - Left - - - CommandBar - - Right - - - true - true - - true - - true - - КомандыФормыРасширеннаяПодсказка - 74 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - Bottom - true - - ФормаКоманднаяПанель - -1 - Right - - - OnOpen - ПриОткрытии - - - BeforeClose - ПередЗакрытием - - - OnCreateAtServer - ПриСозданииНаСервере - - - OnClose - ПриЗакрытии - - LockOwner - true - true - Vertical - true - true - true - auto - true - - НастройкиОтчета - - <key>ru</key> - <value>Настройки отчета</value> - - 2 - - - true - - - - - ПостоянныеКоманды - - <key>ru</key> - <value>Постоянные команды</value> - - 3 - - ValueList - - - - - - - - - ПостоянныеРеквизиты - - <key>ru</key> - <value>Постоянные реквизиты</value> - - 4 - - ValueList - - - - - - - - - ВариантНаименование - - <key>ru</key> - <value>Вариант отчета</value> - - 11 - - String - - - - true - - - true - - - - ВариантСсылка - - <key>ru</key> - <value>Вариант ссылка</value> - - 13 - - CatalogRef.ВариантыОтчетов - - - true - - - true - - - - БыстрыйПоискИменОбъектовМетаданных - - <key>ru</key> - <value>Быстрый поиск имен объектов метаданных</value> - - 18 - - - true - - - true - - - - БыстрыйПоискОтключаемыхСвязей - - <key>ru</key> - <value>Быстрый поиск отключаемых связей</value> - - 19 - - - true - - - true - - - - БыстрыйПоискПользовательскихНастроек - - <key>ru</key> - <value>Быстрый поиск пользовательских настроек</value> - - 20 - - - true - - - true - - - - ШрифтОбычнойГруппы - - <key>ru</key> - <value>Шрифт обычной группы</value> - - 23 - - Font - - - true - - - true - - - - РасширенныйРежим - - <key>ru</key> - <value>Расширенный режим</value> - - 5 - - Number - - 1 - - - - true - - - true - - - - Сортировка - - <key>ru</key> - <value>Сортировка</value> - - 10 - - ValueTree - - - true - - - true - - - ИдентификаторКД - - <key>ru</key> - <value>Идентификатор КД</value> - - 1 - - - true - - - true - - - - Использование - - <key>ru</key> - <value>Использование</value> - - 2 - - Boolean - - - true - - - true - - - - Представление - - <key>ru</key> - <value>Представление</value> - - 3 - - String - - - - true - - - true - - - - Направление - - <key>ru</key> - <value>Направление</value> - - 4 - - DataCompositionSortDirection - - - true - - - true - - - - ЭтоРаздел - - <key>ru</key> - <value>Это раздел</value> - - 5 - - Boolean - - - true - - - true - - - - ИндексКартинки - - <key>ru</key> - <value>Индекс картинки</value> - - 6 - - Number - - 10 - - - - true - - - true - - - - ТипНастройки - - <key>ru</key> - <value>Тип настройки</value> - - 7 - - String - - - - true - - - true - - - - ПоказыватьНаправление - - <key>ru</key> - <value>Показывать направление</value> - - 8 - - Boolean - - - true - - - true - - - - - РежимИзмененияУзлаВарианта - - <key>ru</key> - <value>Режим изменения узла варианта</value> - - 15 - - Boolean - - - true - - - true - - - - ВыбранныеПоля - - <key>ru</key> - <value>Поля</value> - - 21 - - ValueTree - - - true - - - true - - - ИдентификаторКД - - <key>ru</key> - <value>Идентификатор КД</value> - - 1 - - - true - - - true - - - - Использование - - <key>ru</key> - <value>Использование</value> - - 2 - - Boolean - - - true - - - true - - - - Представление - - <key>ru</key> - <value>Представление</value> - - 3 - - String - - - - true - - - true - - - - ЭтоГруппа - - <key>ru</key> - <value>Это группа</value> - - 4 - - Boolean - - - true - - - true - - - - Расположение - - <key>ru</key> - <value>Расположение</value> - - 5 - - DataCompositionFieldPlacement - - - true - - - true - - - - ИндексКартинки - - <key>ru</key> - <value>Индекс картинки</value> - - 6 - - Number - - 10 - - - - true - - - true - - - - ЭтоРаздел - - <key>ru</key> - <value>Это раздел</value> - - 7 - - Boolean - - - true - - - true - - - - ТипНастройки - - <key>ru</key> - <value>Тип настройки</value> - - 8 - - String - - - - true - - - true - - - - ПолеКД - - <key>ru</key> - <value>Поле КД</value> - - 9 - - - true - - - true - - - - - Отборы - - <key>ru</key> - <value>Отборы</value> - - 24 - - ValueTree - - - true - - - true - - - ИдентификаторКД - - <key>ru</key> - <value>Идентификатор КД</value> - - 1 - - - true - - - true - - - - Использование - - <key>ru</key> - <value>Использование</value> - - 2 - - Boolean - - - true - - - true - - - - Представление - - <key>ru</key> - <value>Поле</value> - - 3 - - String - - - - true - - - true - - - - Расположение - - <key>ru</key> - <value>Расположение</value> - - 5 - - DataCompositionFieldPlacement - - - true - - - true - - - - ИндексКартинки - - <key>ru</key> - <value>Индекс картинки</value> - - 6 - - Number - - 10 - - - - true - - - true - - - - Условие - - <key>ru</key> - <value>Условие</value> - - 7 - - EnumRef.ДоступныеПериодыОтчета - DataCompositionComparisonType - - - true - - - true - - - - Значение - - <key>ru</key> - <value>Значение</value> - - 8 - - - true - - - true - - - - ИндексКартинкиДоступа - - <key>ru</key> - <value>Отображение</value> - - 9 - - Number - - 10 - - - - true - - - true - - - - Заголовок - - <key>ru</key> - <value>Заголовок</value> - - 10 - - String - - - - true - - - true - - - - ЭтоРаздел - - <key>ru</key> - <value>Это раздел</value> - - 11 - - Boolean - - - true - - - true - - - - ЭтоГруппа - - <key>ru</key> - <value>Это группа</value> - - 4 - - Boolean - - - true - - - true - - - - ЭтоПараметр - - <key>ru</key> - <value>Это параметр</value> - - 12 - - Boolean - - - true - - - true - - - - ТипЗначения - - <key>ru</key> - <value>Тип значения</value> - - 13 - - TypeDescription - - - true - - - true - - - - ЗаголовокПереопределен - - <key>ru</key> - <value>Заголовок переопределен</value> - - 14 - - Boolean - - - true - - - true - - - - ТипУсловия - - <key>ru</key> - <value>Тип условия</value> - - 15 - - TypeDescription - - - true - - - true - - - - Дополнительно - - <key>ru</key> - <value>Дополнительно</value> - - 17 - - - true - - - true - - - - ВводСписком - - <key>ru</key> - <value>Ввод списком</value> - - 18 - - Boolean - - - true - - - true - - - - ВыводитьФлажок - - <key>ru</key> - <value>Выводить флажок</value> - - 19 - - Boolean - - - true - - - true - - - - ВыборГруппИЭлементов - - <key>ru</key> - <value>Выбор групп и элементов</value> - - 16 - - - true - - - true - - - - ФиксированныйСписокВыбора - - <key>ru</key> - <value>Фиксированный список выбора</value> - - 20 - - Boolean - - - true - - - true - - - - ПредставлениеЗначения - - <key>ru</key> - <value>Значение</value> - - 21 - - String - - - - true - - - true - - - - ФормаВыбора - - <key>ru</key> - <value>Форма выбора</value> - - 22 - - String - - - - true - - - true - - - - - СтруктураВарианта - - <key>ru</key> - <value>Структура</value> - - 26 - - ValueTree - - - true - - - true - - - ИдентификаторКД - - <key>ru</key> - <value>Идентификатор КД</value> - - 1 - - - true - - - true - - - - Использование - - <key>ru</key> - <value>Использование</value> - - 2 - - Boolean - - - true - - - true - - - - Представление - - <key>ru</key> - <value>Группируемые поля</value> - - 3 - - String - - - - true - - - true - - - - ЭтоГруппа - - <key>ru</key> - <value>Это группа</value> - - 4 - - Boolean - - - true - - - true - - - - ИндексКартинки - - <key>ru</key> - <value>Индекс картинки</value> - - 6 - - Number - - 10 - - - - true - - - true - - - - ФлажокДоступен - - <key>ru</key> - <value>Флажок доступен</value> - - 7 - - Boolean - - - true - - - true - - - - Заголовок - - <key>ru</key> - <value>Заголовок</value> - - 8 - - String - - - - true - - - true - - - - Подтип - - <key>ru</key> - <value>Подтип</value> - - 12 - - String - - - - true - - - true - - - - Тип - - <key>ru</key> - <value>Тип</value> - - 11 - - String - - - - true - - - true - - - - Подсвечивать - - <key>ru</key> - <value>Подсвечивать</value> - - 13 - - Boolean - - - true - - - true - - - - СодержитОтборы - - <key>ru</key> - <value>Содержит отборы</value> - - 5 - - Boolean - - - true - - - true - - - - СодержитПоляИлиСортировки - - <key>ru</key> - <value>Содержит поля или сортировки</value> - - 9 - - Boolean - - - true - - - true - - - - СодержитУсловноеОформление - - <key>ru</key> - <value>Содержит условное оформление</value> - - 10 - - Boolean - - - true - - - true - - - - ЭтоРаздел - - <key>ru</key> - <value>Это раздел</value> - - 14 - - Boolean - - - true - - - true - - - - - ЦветНеактивныхЗначенийТаблицы - - <key>ru</key> - <value>Цвет неактивных значений таблицы</value> - - 27 - - Color - - - true - - - true - - - - КомпоновщикНастроек - - <key>ru</key> - <value>Компоновщик настроек</value> - - 22 - - DataCompositionSettingsComposer - - - true - - - true - - - - ВариантИзменен - - <key>ru</key> - <value>Вариант изменен</value> - - 28 - - Boolean - - - true - - - true - - - - РезультатВыбораСформирован - - <key>ru</key> - <value>Результат выбора сформирован</value> - - 1 - - Boolean - - - true - - - true - - - - ИдентификаторТекущегоУзлаКД - - <key>ru</key> - <value>Идентификатор текущего узла КД</value> - - 29 - - - true - - - true - - - - СоставГруппировки - - <key>ru</key> - <value>Состав группировки</value> - - 36 - - ValueTree - - - true - - - true - - - ИдентификаторКД - - <key>ru</key> - <value>Идентификатор КД</value> - - 1 - - - true - - - true - - - - Использование - - <key>ru</key> - <value>Использование</value> - - 2 - - Boolean - - - true - - - true - - - - Представление - - <key>ru</key> - <value>Поле</value> - - 3 - - String - - - - true - - - true - - - - ЭтоГруппа - - <key>ru</key> - <value>Это группа</value> - - 4 - - Boolean - - - true - - - true - - - - ТипГруппировки - - <key>ru</key> - <value>Тип группировки</value> - - 5 - - DataCompositionGroupType - - - true - - - true - - - - ИндексКартинки - - <key>ru</key> - <value>Индекс картинки</value> - - 6 - - Number - - 10 - - - - true - - - true - - - - Картинка - - <key>ru</key> - <value>Картинка</value> - - 7 - - Picture - - - true - - - true - - - - ТипДополнения - - <key>ru</key> - <value>Тип дополнения</value> - - 8 - - DataCompositionPeriodAdditionType - - - true - - - true - - - - ПоказыватьТипДополнения - - <key>ru</key> - <value>Показывать тип дополнения</value> - - 9 - - Boolean - - - true - - - true - - - - ТипНастройки - - <key>ru</key> - <value>Тип настройки</value> - - 10 - - String - - - - true - - - true - - - - ПолеКД - - <key>ru</key> - <value>Поле КД</value> - - 11 - - - true - - - true - - - - - БыстрыйПоискНастроекВарианта - - <key>ru</key> - <value>Быстрый поиск настроек варианта</value> - - 6 - - - true - - - true - - - - ОтключаемыеСвязи - - <key>ru</key> - <value>Отключаемые связи</value> - - 7 - - ValueTable - - - true - - - true - - - ТипСвязи - - <key>ru</key> - <value>Тип связи</value> - - 1 - - String - - - - true - - - true - - - - ВедущийИдентификаторВФорме - - <key>ru</key> - <value>Ведущий идентификатор в форме</value> - - 2 - - - true - - - true - - - - ПодчиненныйИдентификаторВФорме - - <key>ru</key> - <value>Подчиненный идентификатор в форме</value> - - 3 - - - true - - - true - - - - ВедущийТип - - <key>ru</key> - <value>Ведущий тип</value> - - 4 - - TypeDescription - - - true - - - true - - - - ПодчиненныйТип - - <key>ru</key> - <value>Подчиненный тип</value> - - 5 - - TypeDescription - - - true - - - true - - - - ПодчиненныйИмяПараметра - - <key>ru</key> - <value>Подчиненный имя параметра</value> - - 6 - - String - - - - true - - - true - - - - ПодчиненныйДействие - - <key>ru</key> - <value>Подчиненный действие</value> - - 7 - - - true - - - true - - - - - ПользовательскиеНастройкиМодифицированы - - <key>ru</key> - <value>Пользовательские настройки модифицированы</value> - - 8 - - Boolean - - - true - - - true - - - - ТипТекущегоУзлаКД - - <key>ru</key> - <value>Тип текущего узла КД</value> - - 37 - - String - - - - true - - - true - - - - ТекущийУзелКДТипДиаграммы - - <key>ru</key> - <value>Тип диаграммы</value> - - 38 - - - true - - - true - - - - Оформление - - <key>ru</key> - <value>Оформление</value> - - 9 - - ValueTree - - - true - - - true - - - ИдентификаторКД - - <key>ru</key> - <value>Идентификатор КД</value> - - 1 - - - true - - - true - - - - Использование - - <key>ru</key> - <value>Использование</value> - - 2 - - Boolean - - - true - - - true - - - - Представление - - <key>ru</key> - <value>Стиль, оформляемые поля и условие</value> - - 3 - - String - - - - true - - - true - - - - ЭтоГруппа - - <key>ru</key> - <value>Это группа</value> - - 4 - - Boolean - - - true - - - true - - - - Расположение - - <key>ru</key> - <value>Расположение</value> - - 5 - - DataCompositionFieldPlacement - - - true - - - true - - - - ИндексКартинки - - <key>ru</key> - <value>Индекс картинки</value> - - 6 - - Number - - 10 - - - - true - - - true - - - - ОбластьИспользования - - <key>ru</key> - <value>Область использования</value> - - 10 - - String - - - - true - - - true - - - - ИндексКартинкиДоступа - - <key>ru</key> - <value>Индекс картинки доступа</value> - - 11 - - Number - - 10 - - - - true - - - true - - - - Заголовок - - <key>ru</key> - <value>Заголовок</value> - - 12 - - String - - - - true - - - true - - - - ЗаголовокПереопределен - - <key>ru</key> - <value>Заголовок переопределен</value> - - 13 - - Boolean - - - true - - - true - - - - - Отчет - - <key>ru</key> - <value>Отчет</value> - - 39 - - ReportObject - - - true - - - true - -
        true
        -
        - - НеобходимоОбновитьНастройки - - <key>ru</key> - <value>Необходимо обновить настройки</value> - - 40 - - Boolean - - - true - - - true - - - - РезультатЗаполненияНастроек - - <key>ru</key> - <value>Результат заполнения настроек</value> - - 41 - - - true - - - true - - - - ФормаПараметры - - <key>ru</key> - <value>Форма параметры</value> - - 42 - - - true - - - - - ЗакрытьБезФормирования - - <key>ru</key> - <value>Закрыть</value> - - 1 - - ru - Завершить редактирование настроек и закрыть - - - true - - - - ЗакрытьБезФормирования - - - DontUse - Auto - - - ЗакрытьИСформировать - - <key>ru</key> - <value>Закрыть и сформировать</value> - - 2 - - ru - Закрыть и сформировать - - - true - - - StdPicture.GenerateReport - - - - ЗакрытьИСформировать - - - DontUse - Auto - - - Сортировка_ПереместитьВверх - - <key>ru</key> - <value>Переместить вверх</value> - - 6 - - ru - Поднять приоритет сортировки по колонке - - - true - - - StdPicture.MoveUp - - - - Сортировка_ПереместитьВверх - - - DontUse - Auto - - - Сортировка_ПереместитьВниз - - <key>ru</key> - <value>Переместить вниз</value> - - 7 - - ru - Понизить приоритет сортировки по колонке - - - true - - - StdPicture.MoveDown - - - - Сортировка_ПереместитьВниз - - - DontUse - Auto - - - Сортировка_ПоВозрастанию - - <key>ru</key> - <value>Сортировать по возрастанию</value> - - 8 - - ru - Сортировать данные колонки по возрастанию - - - true - - - StdPicture.SortListAsc - - - - Сортировка_ПоВозрастанию - - - DontUse - Auto - - - Сортировка_ПоУбыванию - - <key>ru</key> - <value>Сортировать по убыванию</value> - - 9 - - ru - Сортировать данные колонки по убыванию - - - true - - - StdPicture.SortListDesc - - - - Сортировка_ПоУбыванию - - - DontUse - Auto - - - ВыбранныеПоля_ПереместитьВверх - - <key>ru</key> - <value>Переместить вверх</value> - - 10 - - ru - Переместить поле выше или левее - - - true - - - StdPicture.MoveUp - - - - ВыбранныеПоля_ПереместитьВверх - - - DontUse - Auto - - - ВыбранныеПоля_ПереместитьВниз - - <key>ru</key> - <value>Переместить вниз</value> - - 11 - - ru - Переместить поле ниже или правее - - - true - - - StdPicture.MoveDown - - - - ВыбранныеПоля_ПереместитьВниз - - - DontUse - Auto - - - ВыбранныеПоля_Сгруппировать - - <key>ru</key> - <value>Сгруппировать</value> - - 12 - - ru - Выбранные поля сгруппировать - - - true - - - StdPicture.CreateFolder - - - - ВыбранныеПоля_Сгруппировать - - - DontUse - Auto - - - ВыбранныеПоля_Разгруппировать - - <key>ru</key> - <value>Разгруппировать</value> - - 13 - - ru - Выбранные поля разгруппировать - - - true - - - - ВыбранныеПоля_Разгруппировать - - - DontUse - Auto - - - Отборы_Сгруппировать - - <key>ru</key> - <value>Сгруппировать отборы</value> - - 3 - - ru - Создать группу и поместить в нее выделенные отборы - - - true - - - StdPicture.CreateFolder - - - - Отборы_Сгруппировать - - - DontUse - Auto - - - Отборы_Разгруппировать - - <key>ru</key> - <value>Разгруппировать</value> - - 4 - - ru - Удалить выделенную группу, сохранив вложенные отборы - - - true - - - - Отборы_Разгруппировать - - - DontUse - Auto - - - Отборы_ПереместитьВверх - - <key>ru</key> - <value>Переместить вверх</value> - - 5 - - ru - Переместить вверх - - - true - - - StdPicture.MoveUp - - - - Отборы_ПереместитьВверх - - - DontUse - Auto - - - Отборы_ПереместитьВниз - - <key>ru</key> - <value>Переместить вниз</value> - - 14 - - ru - Переместить вниз - - - true - - - StdPicture.MoveDown - - - - Отборы_ПереместитьВниз - - - DontUse - Auto - - - СтруктураВарианта_Сгруппировать - - <key>ru</key> - <value>Сгруппировать...</value> - - 15 - - ru - Обернуть эту строку в группировку по полю... - - - true - - - CommonPicture.ДобавитьРодительский - - - - СтруктураВарианта_Сгруппировать - - - Picture - DontUse - Auto - - - СтруктураВарианта_ПереместитьВышеИЛевее - - <key>ru</key> - <value>Переместить выше и левее</value> - - 17 - - ru - Структура варианта переместить выше и левее - - - true - - - CommonPicture.ПереместитьВлевоВверх - - - - СтруктураВарианта_ПереместитьВышеИЛевее - - - Picture - DontUse - Auto - - - СтруктураВарианта_ПереместитьНижеИПравее - - <key>ru</key> - <value>Переместить ниже и правее</value> - - 18 - - ru - Структура варианта переместить ниже и правее - - - true - - - CommonPicture.ПереместитьВправоВниз - - - - СтруктураВарианта_ПереместитьНижеИПравее - - - Picture - DontUse - Auto - - - СтруктураВарианта_ПереместитьВверх - - <key>ru</key> - <value>Переместить вверх</value> - - 19 - - ru - Переместить вверх - - - true - - - StdPicture.MoveUp - - - - СтруктураВарианта_ПереместитьВверх - - - Picture - DontUse - Auto - - - СтруктураВарианта_ПереместитьВниз - - <key>ru</key> - <value>Переместить вниз</value> - - 20 - - ru - Переместить вниз - - - true - - - StdPicture.MoveDown - - - - СтруктураВарианта_ПереместитьВниз - - - Picture - DontUse - Auto - - - СтруктураВарианта_УстановитьФлажки - - <key>ru</key> - <value>Установить флажки</value> - - 21 - - ru - Включить все группировки - - - true - - - StdPicture.CheckAll - - - - СтруктураВарианта_УстановитьФлажки - - - Picture - DontUse - Auto - - - СтруктураВарианта_СнятьФлажки - - <key>ru</key> - <value>Снять флажки</value> - - 22 - - ru - Отключить все группировки - - - true - - - StdPicture.UncheckAll - - - - СтруктураВарианта_СнятьФлажки - - - Picture - DontUse - Auto - - - СоставГруппировки_ПереместитьВверх - - <key>ru</key> - <value>Переместить вверх</value> - - 16 - - ru - Переместить поле выше или левее - - - true - - - StdPicture.MoveUp - - - - СоставГруппировки_ПереместитьВверх - - - DontUse - Auto - - - СоставГруппировки_ПереместитьВниз - - <key>ru</key> - <value>Переместить вниз</value> - - 23 - - ru - Переместить поле ниже или правее - - - true - - - StdPicture.MoveDown - - - - СоставГруппировки_ПереместитьВниз - - - DontUse - Auto - - - Оформление_ПереместитьВниз - - <key>ru</key> - <value>Переместить вниз</value> - - 24 - - ru - Переместить поле ниже или правее - - - true - - - StdPicture.MoveDown - - - - ВыбранныеПоля_ПереместитьВниз - - - DontUse - Auto - - - Оформление_ПереместитьВверх - - <key>ru</key> - <value>Переместить вверх</value> - - 25 - - ru - Переместить поле выше или левее - - - true - - - StdPicture.MoveUp - - - - ВыбранныеПоля_ПереместитьВверх - - - DontUse - Auto - - - СтруктураВарианта_Изменить - - <key>ru</key> - <value>Изменить</value> - - 26 - - true - - F2 - - StdPicture.Change - - - - СтруктураВарианта_Изменить - - - Picture - DontUse - Auto - - - СтруктураВарианта_ДобавитьТаблицу - - <key>ru</key> - <value>Добавить таблицу</value> - - 27 - - ru - Добавить таблицу - - - true - - - StdPicture.DataCompositionNewTable - - - - СтруктураВарианта_ДобавитьТаблицу - - - DontUse - Auto - - - СтруктураВарианта_ДобавитьДиаграмму - - <key>ru</key> - <value>Добавить диаграмму</value> - - 28 - - ru - Добавить диаграмму - - - true - - - StdPicture.DataCompositionNewChart - - - - СтруктураВарианта_ДобавитьДиаграмму - - - DontUse - Auto - - - ВыбранныеПоля_Сортировка_Влево - - <key>ru</key> - <value>Удалить выбранные сортировки</value> - - 29 - - ru - Удалить выбранные сортировки - - - true - - - StdPicture.MoveLeft - - - - ВыбранныеПоля_Сортировка_Влево - - - Picture - DontUse - Auto - - - ВыбранныеПоля_Сортировка_Вправо - - <key>ru</key> - <value>Добавить сортировку по выбранному полю</value> - - 30 - - ru - Добавить сортировку по выбранному полю - - - true - - - StdPicture.MoveRight - - - - ВыбранныеПоля_Сортировка_Вправо - - - Picture - DontUse - Auto - - - ВыбранныеПоля_Сортировка_ВлевоВсе - - <key>ru</key> - <value>Удалить все сортировки</value> - - 31 - - ru - Удалить все сортировки - - - true - - - CommonPicture.ПереместитьВлевоВсе - - - - ВыбранныеПоля_Сортировка_ВлевоВсе - - - Picture - DontUse - Auto - - - ИзменитьУсловияОтборов - - <key>ru</key> - <value>Изменить условия отборов...</value> - - 32 - - ru - Изменить условия отборов - - - true - - - CommonPicture.ВидСравнения - - - - ИзменитьУсловияОтборов - - - DontUse - Auto - - - ВыбранныеПоля_УстановитьФлажки - - <key>ru</key> - <value>Установить флажки</value> - - 33 - - ru - Включить флажки всех полей - - - true - - - StdPicture.CheckAll - - - - ВыбранныеПоля_УстановитьФлажки - - - Picture - DontUse - Auto - - - ВыбранныеПоля_СнятьФлажки - - <key>ru</key> - <value>Снять флажки</value> - - 34 - - ru - Снять флажки всех полей - - - true - - - StdPicture.UncheckAll - - - - ВыбранныеПоля_СнятьФлажки - - - Picture - DontUse - Auto - - - Сортировка_СнятьФлажки - - <key>ru</key> - <value>Снять флажки</value> - - 35 - - ru - Отключить все сортировки - - - true - - - StdPicture.UncheckAll - - - - Сортировка_СнятьФлажки - - - Picture - DontUse - Auto - - - Сортировка_УстановитьФлажки - - <key>ru</key> - <value>Установить флажки</value> - - 36 - - ru - Включить все сортировки - - - true - - - StdPicture.CheckAll - - - - Сортировка_УстановитьФлажки - - - Picture - DontUse - Auto - - - Отборы_УстановитьФлажки - - <key>ru</key> - <value>Установить флажки</value> - - 37 - - ru - Включить все параметры и отборы - - - true - - - StdPicture.CheckAll - - - - Отборы_УстановитьФлажки - - - DontUse - Auto - - - Отборы_СнятьФлажки - - <key>ru</key> - <value>Снять флажки</value> - - 38 - - ru - Отключить все параметры и отборы - - - true - - - StdPicture.UncheckAll - - - - Отборы_СнятьФлажки - - - DontUse - Auto - - - - - - - - BeforeLoadVariantAtServer - ПередЗагрузкойВариантаНаСервере - - - BeforeLoadUserSettingsAtServer - ПередЗагрузкойПользовательскихНастроекНаСервере - - - OnUpdateUserSettingSetAtServer - ПриОбновленииСоставаПользовательскихНастроекНаСервере - - -
        diff --git a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаНастроекОтчета/Help/ru.html b/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаНастроекОтчета/Help/ru.html deleted file mode 100644 index fad626823..000000000 --- a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаНастроекОтчета/Help/ru.html +++ /dev/null @@ -1,41 +0,0 @@ - -

        Предназначена для настройки отчета.

        -

        Открывается из формы отчета по кнопке Настройки.

        -

        С помощью кнопки Вид можно перевести настройки в один из режимов:

        -
        • Простой - можно только менять уже имеющиеся параметры, с помощью флажков добавлять или убирать их; -
        • Расширенный - можно управлять настройками: добавлять параметры, менять поля, структуру отчета.

        Окно настроек в зависимости от сложности отчета состоит из нескольких вкладок:

        -
        • Отборы - вводятся условия для отборов значений в отчете; -
        • Поля - с помощью флажков можно добавлять в отчет поля или убирать их; -
        • Сортировка - можно добавлять поля для сортировки отчета, убирать их или отключать; -
        • Оформление - управление оформлением отчета; -
        • Структура - управление структурой отчета.

        Отборы

        -
        • При формировании отчетов могут использоваться различные параметры и отборы. -
        • На вкладке можно менять параметры отборов. С помощью флажка отбор по параметру (например, Период) можно сделать активным или отключить. -
        • Для выбора значений может быть предусмотрена кнопка Подбор. Выберите конкретное значение из списка. -
        • С помощью кнопки  можно выбрать значения из буфера обмена. -
        • В режиме Расширенный можно перейти к настройке всех предусмотренных параметров отчета. -
        • С помощью соответствующей кнопки можно Добавить отбор. -
        • Для изменения настроек отборов отчета применяется таблица, состоящая из столбцов: -
          • Поле - перечисление полей, по которым производится отбор; -
          • Условие - выбор операции для отбора по каждому полю; -
            • Операции Равно, Не равно, В группе, Не в группе предполагают выбор одного значения (единичный отбор). -
            • Операции В списке, В группе из списка, Не в списке, Не в группе из списка предполагают выбор нескольких значений (множественный отбор). -
            • Для операций Заполнено и Не заполнено не требуется выбор значения.
          • Значение - можно указать одно или несколько значений каждого поля для отбора в зависимости от операции. -
            • Для ввода значения можно дважды щелкнуть мышью по полю. -
            • Введите значение параметра с помощью кнопки  Выбрать. Включите флажки рядом с параметрами, по которым необходимо произвести отбор. Можно задействовать все параметры для отбора или часть, включая или выключая флажки. -
            • Для выбора нескольких значений предусмотрена кнопка Подбор. Откройте список, выберите несколько значений из списка. Включите флажки рядом с нужными для отбора параметрами. Введите значения параметров для отбора или выберите из списка.
          •  Размещение - видимость параметра или отбора в окне отчета. Для смены видимости отбора с помощью двойного щелчка мышью можно выбрать одно из нескольких значений: -
            •  В шапке отчета - параметр или отбор выводится в шапке отчета и в шапке настроек отчета; -
            •  Только флажок в шапке отчета - в шапке отчета и шапке настроек отчета выводится только флажок отбора. С помощью флажка можно только включить или отключить этот отбор. При таком размещении рекомендуется задать полностью понятный заголовок, описывающий значение отбора, поскольку значение отбора не выводится. Применимо только для отборов; -
            •  В настройках отчета - параметр или отбор выводится в форме настроек. Используется по умолчанию; -
            •  Только флажок в настройках отчета - в настройках отчета выводится только флажок отбора. С помощью флажка можно только включить или отключить этот отбор. При таком размещении рекомендуется задать полностью понятный заголовок, описывающий значение отбора, поскольку значение отбора не выводится. Применимо только для отборов; -
            •  Не показывать - параметр или отбор выводится только в расширенном режиме настроек отчета.
          • Заголовок - можно ввести свой заголовок для отбора.
        • Отборы можно группировать. Для этого выделите несколько условий для отбора, выполните команду Сгруппировать отборы контекстного меню по правой кнопке мыши или меню Еще. Объединить отборы можно в группы И, Или, Не. Для отмены группировки выполните команду Разгруппировать. -
        • Подробнее об отчетах и операциях отборов см. книгу 1С:Предприятие 8.2 Руководство пользователя.

        Поля

        -
        • На вкладке  можно с помощью флажков удалить или добавить поля в отчет. В расширенном режиме с помощью кнопки Добавить можно вставить дополнительные поля.

        Сортировка

        -
        • На вкладке можно настроить сортировку отчета: -
        • В простом режиме с помощью флажков можно включить или выключить сортировку. -
        • В расширенном режиме с помощью соответствующей кнопки Добавить поля для сортировки, указать порядок сортировки.

        Оформление

        -
        • На вкладке можно поменять некоторые параметры оформления отчета, например, с помощью флажка включить или выключить Цвет фона, в который можно окрасить все поля.

        Структура

        -
        • Изменить параметры на вкладке можно только в Расширенном режиме. -
        • На вкладке можно добавить группируемые поля в отчет. С помощью соответствующих кнопок можно добавить, изменить поля, поменять их местами. -
        • С помощью кнопки  можно изменить группировку отчета.

        Получение данных отчета

        -
        • Укажите нужные параметры, нажмите кнопку Закрыть и сформировать. Последние настройки будут сохранены автоматически. Если были применены ошибочные настройки, их можно не только изменить, но и сбросить с помощью соответствующих команд формы отчета.
        \ No newline at end of file diff --git a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаНастроекОтчета/Module.bsl b/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаНастроекОтчета/Module.bsl deleted file mode 100644 index cebec0083..000000000 --- a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаНастроекОтчета/Module.bsl +++ /dev/null @@ -1,5973 +0,0 @@ -#Область ОписаниеПеременных - -&НаКлиенте -Перем ПеременныеКлиента; - -#КонецОбласти - -//////////////////////////////////////////////////////////////////////////////// -// ФОРМА - -#Область ОбработчикиСобытийФормы - -&НаСервере -Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) - Если Параметры.Свойство("АвтоТест") Тогда - Возврат; - КонецЕсли; - - ФормаПараметры = Новый Структура( - "КлючНазначенияИспользования, КлючПользовательскихНастроек, - |Расшифровка, СформироватьПриОткрытии, ТолькоПросмотр, - |ФиксированныеНастройки, Раздел, Подсистема, ПодсистемаПредставление"); - ЗаполнитьЗначенияСвойств(ФормаПараметры, Параметры); - ФормаПараметры.Вставить("Отбор", Новый Структура); - Если ТипЗнч(Параметры.Отбор) = Тип("Структура") Тогда - ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(ФормаПараметры.Отбор, Параметры.Отбор, Истина); - Параметры.Отбор.Очистить(); - КонецЕсли; - - Если Не Параметры.Свойство("НастройкиОтчета", НастройкиОтчета) Тогда - ВызватьИсключение НСтр("ru = 'Не передан служебный параметр ""НастройкиОтчета"".'"); - КонецЕсли; - Если Не Параметры.Свойство("ВариантНаименование", ВариантНаименование) Тогда - ВызватьИсключение НСтр("ru = 'Не передан служебный параметр ""ВариантНаименование"".'"); - КонецЕсли; - Параметры.Свойство("ИдентификаторТекущегоУзлаКД", ИдентификаторТекущегоУзлаКД); - КлючСохраненияПоложенияОкна = НастройкиОтчета.ПолноеИмя; - Если ИдентификаторТекущегоУзлаКД <> Неопределено Тогда - РежимИзмененияУзлаВарианта = Истина; - Высота = 0; - КлючСохраненияПоложенияОкна = КлючСохраненияПоложенияОкна + ".Узел"; - Если Не Параметры.Свойство("Заголовок", Заголовок) Тогда - ВызватьИсключение НСтр("ru = 'Не передан служебный параметр ""Заголовок"".'"); - КонецЕсли; - Если Не Параметры.Свойство("ТипТекущегоУзлаКД", ТипТекущегоУзлаКД) Тогда - ВызватьИсключение НСтр("ru = 'Не передан служебный параметр ""ТипТекущегоУзлаКД"".'"); - КонецЕсли; - Иначе - Если Не ЗначениеЗаполнено(ВариантНаименование) Тогда - ВариантНаименование = НастройкиОтчета.Наименование; - КонецЕсли; - Заголовок = НСтр("ru = 'Настройки отчета'") + " """ + ВариантНаименование + """"; - КонецЕсли; - КлючНазначенияИспользования = КлючСохраненияПоложенияОкна; - - Элементы.РасширенныйРежим.Видимость = НастройкиОтчета.РазрешеноМенятьВарианты; - - Если РежимИзмененияУзлаВарианта Тогда - ИмяСтраницы = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Параметры, "ИмяСтраницы", "СтраницаСоставГруппировки"); - РасширенныйРежим = 1; - Иначе - РасширенныйРежим = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НастройкиОтчета, "ФормаНастроекРасширенныйРежим", 0); - ИмяСтраницы = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НастройкиОтчета, "ФормаНастроекИмяСтраницы", "СтраницаОтборы"); - КонецЕсли; - Страница = Элементы.Найти(ИмяСтраницы); - Если Страница <> Неопределено Тогда - Элементы.СтраницыНастроек.ТекущаяСтраница = Страница; - КонецЕсли; - - Если НастройкиОтчета.СхемаМодифицирована Тогда - Отчет.КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(НастройкиОтчета.АдресСхемы)); - КонецЕсли; - - ЦветНеактивныхЗначенийТаблицы = ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет; - - // Регистрация команд и реквизитов формы, которые не удаляются при перезаполнении быстрых настроек. - НаборРеквизитов = ПолучитьРеквизиты(); - Для Каждого Реквизит Из НаборРеквизитов Цикл - ПостоянныеРеквизиты.Добавить(ПолноеИмяРеквизита(Реквизит)); - КонецЦикла; - Для Каждого Команда Из Команды Цикл - ПостоянныеКоманды.Добавить(Команда.Имя); - КонецЦикла; - - ДобавитьУсловноеОформление(); - - НеобходимоОбновитьНастройки = Истина; - - Отчеты.УниверсальныйОтчет.ИнициализироватьОтчет(Отчет.КомпоновщикНастроек, Ложь, УникальныйИдентификатор, Параметры.Вариант); - -КонецПроцедуры - -&НаСервере -Процедура ПередЗагрузкойВариантаНаСервере(НовыеНастройкиКД) - Если Параметры.Свойство("АвтоТест") Тогда - Возврат; - КонецЕсли; - - Если ТипЗнч(ФормаПараметры.Отбор) = Тип("Структура") Тогда - ОтчетыСервер.УстановитьФиксированныеОтборы(ФормаПараметры.Отбор, НовыеНастройкиКД, НастройкиОтчета); - КонецЕсли; - - НеобходимоОбновитьНастройки = Истина; - - // Подготовка к вызову события переинициализации. - Если НастройкиОтчета.События.ПередЗагрузкойНастроекВКомпоновщик Тогда - Попытка - НовыеНастройкиXML = ОбщегоНазначения.ЗначениеВСтрокуXML(НовыеНастройкиКД); - Исключение - НовыеНастройкиXML = Неопределено; - КонецПопытки; - НастройкиОтчета.Вставить("НовыеНастройкиXML", НовыеНастройкиXML); - КонецЕсли; -КонецПроцедуры - -&НаСервере -Процедура ПередЗагрузкойПользовательскихНастроекНаСервере(НовыеПользовательскиеНастройкиКД) - Если Параметры.Свойство("АвтоТест") Тогда - Возврат; - КонецЕсли; - - НеобходимоОбновитьНастройки = Истина; - - // Подготовка к вызову события переинициализации. - Если НастройкиОтчета.События.ПередЗагрузкойНастроекВКомпоновщик Тогда - Попытка - НовыеПользовательскиеНастройкиXML = ОбщегоНазначения.ЗначениеВСтрокуXML(НовыеПользовательскиеНастройкиКД); - Исключение - НовыеПользовательскиеНастройкиXML = Неопределено; - КонецПопытки; - НастройкиОтчета.Вставить("НовыеПользовательскиеНастройкиXML", НовыеПользовательскиеНастройкиXML); - КонецЕсли; -КонецПроцедуры - -&НаСервере -Процедура ПриОбновленииСоставаПользовательскихНастроекНаСервере(СтандартнаяОбработка) - Если Параметры.Свойство("АвтоТест") Тогда - Возврат; - КонецЕсли; - - СтандартнаяОбработка = Ложь; - ВариантМодифицирован = Ложь; - - Если НеобходимоОбновитьНастройки Тогда - НеобходимоОбновитьНастройки = Ложь; - - ПараметрыЗаполнения = Новый Структура; - ПараметрыЗаполнения.Вставить("ИмяСобытия", "ПриСозданииНаСервере"); - Если Не РежимИзмененияУзлаВарианта И РасширенныйРежим = 1 Тогда - ПараметрыЗаполнения.Вставить("ОбновитьНастройкиВарианта", Истина); - КонецЕсли; - РезультатЗаполненияНастроек = БыстрыеНастройкиЗаполнить(ПараметрыЗаполнения); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ПриОткрытии(Отказ) - ПеременныеКлиента = Новый Структура; - ПоказатьРезультатЗаполненияНастроек(Неопределено); -КонецПроцедуры - -&НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) - ВариантМодифицирован = Ложь; -КонецПроцедуры - -&НаКлиенте -Процедура ПриЗакрытии() - Если Не РезультатВыбораСформирован Тогда - Если ОписаниеОповещенияОЗакрытии <> Неопределено Тогда - ВыполнитьОбработкуОповещения(ОписаниеОповещенияОЗакрытии, РезультатВыбора(Ложь)); - КонецЕсли; - КонецЕсли; -КонецПроцедуры - -#КонецОбласти - -//////////////////////////////////////////////////////////////////////////////// -// ЭЛЕМЕНТЫ - -#Область ОбработчикиСобытийЭлементовШапкиФормы - -&НаКлиенте -Процедура РасширенныйРежимПриИзменении(Элемент) - ПараметрыЗаполнения = Новый Структура; - ПараметрыЗаполнения.Вставить("ИмяСобытия", "РасширенныйРежимПриИзменении"); - Если РасширенныйРежим = 1 Тогда - ПараметрыЗаполнения.Вставить("ОбновитьНастройкиВарианта", Истина); - Иначе - ПараметрыЗаполнения.Вставить("СброситьПользовательскиеНастройки", Истина); - КонецЕсли; - БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); -КонецПроцедуры - -&НаКлиенте -Процедура ПодсказкаНетПользовательскихНастроекОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка) - СтандартнаяОбработка = Ложь; - РасширенныйРежим = Истина; - РасширенныйРежимПриИзменении(Неопределено); -КонецПроцедуры - -&НаКлиенте -Процедура ТекущийУзелКДТипДиаграммыПриИзменении(Элемент) - КорневойУзелКД = Отчет.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(ИдентификаторТекущегоУзлаКД); - Если ТипЗнч(КорневойУзелКД) = Тип("НастройкиВложенногоОбъектаКомпоновкиДанных") Тогда - КорневойУзелКД = КорневойУзелКД.Настройки; - КонецЕсли; - УстановитьПараметрВывода(КорневойУзелКД, "ТипДиаграммы", ТекущийУзелКДТипДиаграммы); - - ПользовательскиеНастройкиМодифицированы = Истина; - ВариантМодифицирован = Ложь; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ПодсказкаЕстьВложенныеОтчетыОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылка, СтандартнаяОбработка) - СтандартнаяОбработка = Ложь; - - ПараметрыФормы = Новый Структура; - ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(ПараметрыФормы, ФормаПараметры, Истина); - ПараметрыФормы.Вставить("Вариант", Отчет.КомпоновщикНастроек.Настройки); - ПараметрыФормы.Вставить("КлючВарианта", Строка(КлючТекущегоВарианта)); - ПараметрыФормы.Вставить("ПользовательскиеНастройки", Отчет.КомпоновщикНастроек.ПользовательскиеНастройки); - ПараметрыФормы.Вставить("ПредставлениеВарианта", ВариантНаименование); - ПараметрыФормы.Вставить("ПредставлениеПользовательскихНастроек", ""); - - Обработчик = Новый ОписаниеОповещения("ФормаВариантаЗавершение", ЭтотОбъект); - - Режим = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; - - ОткрытьФорму(НастройкиОтчета.ПолноеИмя + ".ФормаВарианта", ПараметрыФормы, ЭтотОбъект, , , , Обработчик, Режим); -КонецПроцедуры - -&НаКлиенте -Процедура ФормаВариантаЗавершение(Результат, ПараметрыВыполнения) Экспорт - Если ТипЗнч(Результат) <> Тип("Структура") Тогда - Возврат; - КонецЕсли; - БыстрыеНастройкиЗаполнитьКлиент(Результат); -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Подключаемые - -&НаКлиенте -Процедура Подключаемый_ФлажокИспользование_ПриИзменении(Элемент) - ФлажокИмя = Элемент.Имя; - ИдентификаторЭлемента = Прав(ФлажокИмя, 32); - Тип = Лев(ФлажокИмя, СтрНайти(ФлажокИмя, "_")-1); - - ПользовательскаяНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); - - Если Тип = "ЭлементОтбора" Или Тип = "ЗначениеПараметра" Тогда - ТаблицаИмя = Тип + "_СписокЗначений_" + ИдентификаторЭлемента; - ТаблицаФормы = Элементы.Найти(ТаблицаИмя); - Если ТаблицаФормы <> Неопределено Тогда - ТаблицаФормы.ЦветТекста = ?(ПользовательскаяНастройкаКД.Использование, Новый Цвет, ЦветНеактивныхЗначенийТаблицы); - КонецЕсли; - КонецЕсли; - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - Найденные = НайтиНастройкуВарианта(ЭтотОбъект, ИдентификаторЭлемента); - Если Найденные <> Неопределено Тогда - Найденные.ЭлементКД.Использование = ПользовательскаяНастройкаКД.Использование; - ВариантИзменен = Истина; - КонецЕсли; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_ПолеВвода_ПриИзменении(Элемент) - ИдентификаторЭлемента = Прав(Элемент.Имя, 32); - - ПользовательскаяНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); - Если ТипЗнч(ПользовательскаяНастройкаКД) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда - Значение = ПользовательскаяНастройкаКД.Значение; - ИначеЕсли ТипЗнч(ПользовательскаяНастройкаКД) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда - Значение = ПользовательскаяНастройкаКД.ПравоеЗначение; - Иначе - Возврат; - КонецЕсли; - - Если ЗначениеЗаполнено(Значение) Тогда - ПользовательскаяНастройкаКД.Использование = Истина; - КонецЕсли; - - Если ПользовательскаяНастройкаКД.Использование Тогда // Очистка значений при изменении значения. - Найденные = ОтключаемыеСвязи.НайтиСтроки(Новый Структура("ВедущийИдентификаторВФорме", ИдентификаторЭлемента)); - Для Каждого Связь Из Найденные Цикл - Если Не ЗначениеЗаполнено(Связь.ПодчиненныйИдентификаторВФорме) Тогда - Продолжить; - КонецЕсли; - Если Связь.ТипСвязи = "ПараметровВыбора" Тогда - Если Связь.ПодчиненныйДействие <> РежимИзмененияСвязанногоЗначения.Очищать Тогда - Продолжить; - КонецЕсли; - Иначе - Продолжить; - КонецЕсли; - ПодчиненныйДополнительно = НайтиДополнительныеНастройкиЭлемента(Связь.ПодчиненныйИдентификаторВФорме); - Если ПодчиненныйДополнительно <> Неопределено Тогда - Если ПодчиненныйДополнительно.ВыводитьФлажок Тогда - ПодчиненныйНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(Связь.ПодчиненныйИдентификаторВФорме); - Если ПодчиненныйНастройкаКД <> Неопределено Тогда - ПодчиненныйНастройкаКД.Использование = Ложь; - КонецЕсли; - КонецЕсли; - Если Не ПодчиненныйДополнительно.ОграничиватьВыборУказаннымиЗначениями Тогда - ПодчиненныйДополнительно.ЗначенияДляВыбора.Очистить(); - КонецЕсли; - КонецЕсли; - КонецЦикла; - КонецЕсли; - - ПользовательскиеНастройкиМодифицированы = Истина; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_ФлажокЗначения_ПриИзменении(Элемент) - ИдентификаторЭлемента = Прав(Элемент.Имя, 32); - Значение = ЭтотОбъект[Элемент.Имя]; - - ПользовательскаяНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); - Если ТипЗнч(ПользовательскаяНастройкаКД) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда - ПользовательскаяНастройкаКД.Значение = Значение; - Иначе - ПользовательскаяНастройкаКД.ПравоеЗначение = Значение; - КонецЕсли; - - ПользовательскиеНастройкиМодифицированы = Истина; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_СписокКомпоновщика_НачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) - ОтчетыКлиент.СписокКомпоновщикаНачалоВыбора(ЭтотОбъект, Элемент, ДанныеВыбора, СтандартнаяОбработка); -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_ЗначениеКомпоновщика_НачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) - ОтчетыКлиент.ЗначениеКомпоновщикаНачалоВыбора(ЭтотОбъект, Элемент, ДанныеВыбора, СтандартнаяОбработка); -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Подключаемые - Стандартный период. - -&НаКлиенте -Процедура Подключаемый_СтандартныйПериод_НачалоПериода_ПриИзменении(Элемент) - // Формирование сведений по элементу. - ПериодНачалоИмя = Элемент.Имя; - ЗначениеИмя = СтрЗаменить(ПериодНачалоИмя, "_Начало_", "_Значение_"); - ИдентификаторЭлемента = Прав(ПериодНачалоИмя, 32); - - Значение = ЭтотОбъект[ЗначениеИмя]; - Заполнено = ЗначениеЗаполнено(Значение.ДатаНачала); - Если Заполнено Тогда - Значение.ДатаНачала = НачалоДня(Значение.ДатаНачала); - КонецЕсли; - - // Запись значения в пользовательские настройки компоновки данных. - ПользовательскаяНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); - Если ТипЗнч(ПользовательскаяНастройкаКД) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда - ПользовательскаяНастройкаКД.Значение = Значение; - Иначе - ПользовательскаяНастройкаКД.ПравоеЗначение = Значение; - КонецЕсли; - Если Заполнено Тогда - ПользовательскаяНастройкаКД.Использование = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_СтандартныйПериод_КонецПериода_ПриИзменении(Элемент) - // Формирование сведений по элементу. - ПериодОкончаниеИмя = Элемент.Имя; - ЗначениеИмя = СтрЗаменить(ПериодОкончаниеИмя, "_Окончание_", "_Значение_"); - ИдентификаторЭлемента = Прав(ПериодОкончаниеИмя, 32); - - Значение = ЭтотОбъект[ЗначениеИмя]; - Заполнено = ЗначениеЗаполнено(Значение.ДатаОкончания); - Если Заполнено Тогда - Значение.ДатаОкончания = КонецДня(Значение.ДатаОкончания); - КонецЕсли; - - // Запись значения в пользовательские настройки компоновки данных. - ПользовательскаяНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); - Если ТипЗнч(ПользовательскаяНастройкаКД) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда - ПользовательскаяНастройкаКД.Значение = Значение; - Иначе - ПользовательскаяНастройкаКД.ПравоеЗначение = Значение; - КонецЕсли; - Если Заполнено Тогда - ПользовательскаяНастройкаКД.Использование = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_ВыбратьПериод(Команда) - КнопкаВыбораИмя = Команда.Имя; - ЗначениеИмя = СтрЗаменить(КнопкаВыбораИмя, "_КнопкаВыбора_", "_Значение_"); - ИдентификаторЭлемента = Прав(КнопкаВыбораИмя, 32); - ОтчетыКлиент.ВыбратьПериод(ЭтотОбъект, ЗначениеИмя, ИдентификаторЭлемента); -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Подключаемые - Список значений с кнопкой "Подбор". - -&НаКлиенте -Процедура Подключаемый_СписокСПодбором_ПриИзменении(ТаблицаФормы) - // Обновление выбранных значений в данных СКД. - ИдентификаторЭлемента = Прав(ТаблицаФормы.Имя, 32); - - СписокЗначенийВФорме = ЭтотОбъект[ТаблицаФормы.Имя]; - ПользовательскаяНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); - ДополнительныеНастройки = НайтиДополнительныеНастройкиЭлемента(ИдентификаторЭлемента); - - СписокЗначенийВСКД = Новый СписокЗначений; - Если Не ДополнительныеНастройки.ОграничиватьВыборУказаннымиЗначениями Тогда - ДополнительныеНастройки.ЗначенияДляВыбора = Новый СписокЗначений; - КонецЕсли; - Для Каждого ЭлементСпискаВФорме Из СписокЗначенийВФорме Цикл - ЗначениеВФорме = ЭлементСпискаВФорме.Значение; - Если Не ДополнительныеНастройки.ОграничиватьВыборУказаннымиЗначениями Тогда - Если ДополнительныеНастройки.ЗначенияДляВыбора.НайтиПоЗначению(ЗначениеВФорме) <> Неопределено Тогда - Продолжить; - КонецЕсли; - ЗаполнитьЗначенияСвойств(ДополнительныеНастройки.ЗначенияДляВыбора.Добавить(), ЭлементСпискаВФорме); - КонецЕсли; - Если ЭлементСпискаВФорме.Пометка Тогда - СписокЗначенийВСКД.Добавить(ЗначениеВФорме); - КонецЕсли; - КонецЦикла; - Если ТипЗнч(ПользовательскаяНастройкаКД) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда - ПользовательскаяНастройкаКД.ПравоеЗначение = СписокЗначенийВСКД; - Иначе - ПользовательскаяНастройкаКД.Значение = СписокЗначенийВСКД; - КонецЕсли; - - // Включение флажка Использование. - ПользовательскаяНастройкаКД.Использование = Истина; - ТаблицаФормы.ЦветТекста = ?(ПользовательскаяНастройкаКД.Использование, Новый Цвет, ЦветНеактивныхЗначенийТаблицы); - - ПользовательскиеНастройкиМодифицированы = Истина; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_СписокСПодбором_Значение_АвтоПодбор(Элемент, Текст, ДанныеВыбора, Параметры, Ожидание, СтандартнаяОбработка) - Если Параметры = Неопределено Тогда - Возврат; - КонецЕсли; - - ИдентификаторЭлемента = Прав(Элемент.Имя, 32); - - // Добавление динамических параметров выбора (от ведущих). - Найденные = ОтключаемыеСвязи.НайтиСтроки(Новый Структура("ПодчиненныйИдентификаторВФорме", ИдентификаторЭлемента)); - Для Каждого Связь Из Найденные Цикл - Если Не ЗначениеЗаполнено(Связь.ВедущийИдентификаторВФорме) - Или Не ЗначениеЗаполнено(Связь.ПодчиненныйИмяПараметра) Тогда - Продолжить; - КонецЕсли; - ВедущийНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(Связь.ВедущийИдентификаторВФорме); - Если Не ВедущийНастройкаКД.Использование Тогда - Продолжить; - КонецЕсли; - Если ТипЗнч(ВедущийНастройкаКД) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда - ВедущийЗначение = ВедущийНастройкаКД.ПравоеЗначение; - Иначе - ВедущийЗначение = ВедущийНастройкаКД.Значение; - КонецЕсли; - Если Связь.ТипСвязи = "ПараметровВыбора" Тогда - МассивКлючей = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(Связь.ПодчиненныйИмяПараметра, ".", Истина, Истина); - ВГраница = МассивКлючей.ВГраница(); - Контекст = Параметры; - Для Индекс = 0 По ВГраница Цикл - Ключ = МассивКлючей[Индекс]; - Если Индекс = ВГраница Тогда - Контекст.Вставить(Ключ, ВедущийЗначение); - Иначе - ВложенныйКонтекст = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Контекст, Ключ); - Если ВложенныйКонтекст = Неопределено Тогда - ВложенныйКонтекст = Контекст.Вставить(Ключ, Новый Структура); - ИначеЕсли ТипЗнч(ВложенныйКонтекст) <> Тип("Структура") Тогда - Прервать; - КонецЕсли; - Контекст = ВложенныйКонтекст; - КонецЕсли; - КонецЦикла; - ИначеЕсли Связь.ТипСвязи = "ПоТипу" Тогда - ВедущийТип = ТипЗнч(ВедущийЗначение); - ДополнительныеНастройки = НайтиДополнительныеНастройкиЭлемента(ИдентификаторЭлемента); - Если ДополнительныеНастройки <> Неопределено - И ДополнительныеНастройки.ОписаниеТипов.СодержитТип(ВедущийТип) - И ДополнительныеНастройки.ОписаниеТипов.Типы().Количество() > 1 Тогда - МассивТипов = Новый Массив; - МассивТипов.Добавить(ВедущийТип); - Элемент.ДоступныеТипы = Новый ОписаниеТипов(МассивТипов); - КонецЕсли; - КонецЕсли; - КонецЦикла; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_СписокСПодбором_Использование_ПриИзменении(Элемент) - // Включение флажка Использование если пользователь включил флажок в строке таблицы. - КолонкаИспользованиеИмя = Элемент.Имя; - ИдентификаторЭлемента = Прав(КолонкаИспользованиеИмя, 32); - СвойстваНастройкиТип = Лев(КолонкаИспользованиеИмя, СтрНайти(КолонкаИспользованиеИмя, "_Колонка_Использование_")-1); - - ТаблицаИмя = СвойстваНастройкиТип + "_СписокЗначений_" + ИдентификаторЭлемента; - - ЭлементСпискаВФорме = Элементы[ТаблицаИмя].ТекущиеДанные; - Если ЭлементСпискаВФорме <> Неопределено И ЭлементСпискаВФорме.Пометка Тогда - // Включение флажка Использование. - ПользовательскаяНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); - ПользовательскаяНастройкаКД.Использование = Истина; - - // Оформление строк. - ТаблицаФормы = Элементы.Найти(ТаблицаИмя); - ТаблицаФормы.ЦветТекста = ?(ПользовательскаяНастройкаКД.Использование, Новый Цвет, ЦветНеактивныхЗначенийТаблицы); - - ПользовательскиеНастройкиМодифицированы = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_СписокСПодбором_ПередНачаломИзменения(Элемент, Отказ) - СтрокаИдентификатор = Элемент.ТекущаяСтрока; - Если СтрокаИдентификатор = Неопределено Тогда - Возврат; - КонецЕсли; - - СписокЗначенийВФорме = ЭтотОбъект[Элемент.Имя]; - ЭлементСпискаВФорме = СписокЗначенийВФорме.НайтиПоИдентификатору(СтрокаИдентификатор); - - ТекущаяСтрока = Элемент.ТекущиеДанные; - Если ТекущаяСтрока = Неопределено Тогда - Возврат; - КонецЕсли; - ЭлементСпискаДоНачалаИзменения = Новый Структура("Идентификатор, Пометка, Значение, Представление"); - ЗаполнитьЗначенияСвойств(ЭлементСпискаДоНачалаИзменения, ЭлементСпискаВФорме); - ЭлементСпискаДоНачалаИзменения.Идентификатор = СтрокаИдентификатор; - ПеременныеКлиента.Вставить("ЭлементСпискаДоНачалаИзменения", ЭлементСпискаДоНачалаИзменения); -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_СписокСПодбором_ПередОкончаниемРедактирования(Элемент, НоваяСтрока, ОтменаНачалаРедактирования, ОтменаЗавершенияРедактирования) - Если ОтменаНачалаРедактирования Тогда - Возврат; - КонецЕсли; - - СтрокаИдентификатор = Элемент.ТекущаяСтрока; - Если СтрокаИдентификатор = Неопределено Тогда - Возврат; - КонецЕсли; - ИдентификаторЭлемента = Прав(Элемент.Имя, 32); - СписокЗначенийВФорме = ЭтотОбъект[Элемент.Имя]; - ЭлементСпискаВФорме = СписокЗначенийВФорме.НайтиПоИдентификатору(СтрокаИдентификатор); - - Значение = ЭлементСпискаВФорме.Значение; - Если Значение = Неопределено - Или Значение = Тип("Неопределено") - Или Значение = Новый ОписаниеТипов("Неопределено") - Или Не ЗначениеЗаполнено(Значение) Тогда - ОтменаЗавершенияРедактирования = Истина; // Запрет пустых значений. - Иначе - Для Каждого ЭлементСпискаДубльВФорме Из СписокЗначенийВФорме Цикл - Если ЭлементСпискаДубльВФорме.Значение = Значение И ЭлементСпискаДубльВФорме <> ЭлементСпискаВФорме Тогда - Состояние(НСтр("ru = 'Обнаружены дублирующиеся записи. Редактирование отменено.'")); - ОтменаЗавершенияРедактирования = Истина; // Запрет дублей. - Прервать; - КонецЕсли; - КонецЦикла; - КонецЕсли; - - ЭлементСпискаДоНачалаИзменения = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПеременныеКлиента, "ЭлементСпискаДоНачалаИзменения"); - ЕстьИнформация = (ЭлементСпискаДоНачалаИзменения <> Неопределено И ЭлементСпискаДоНачалаИзменения.Идентификатор = СтрокаИдентификатор); - Если Не ОтменаЗавершенияРедактирования И ЕстьИнформация И ЭлементСпискаДоНачалаИзменения.Значение <> Значение Тогда - ДополнительныеНастройки = НайтиДополнительныеНастройкиЭлемента(ИдентификаторЭлемента); - Если ДополнительныеНастройки.ОграничиватьВыборУказаннымиЗначениями Тогда - ОтменаЗавершенияРедактирования = Истина; - Иначе - ЭлементСпискаВФорме.Представление = ""; // Автозаполнение представления. - ЭлементСпискаВФорме.Пометка = Истина; // Включение флажка. - КонецЕсли; - КонецЕсли; - - Если ОтменаЗавершенияРедактирования Тогда - // Откат значений. - Если ЕстьИнформация Тогда - ЗаполнитьЗначенияСвойств(ЭлементСпискаВФорме, ЭлементСпискаДоНачалаИзменения); - КонецЕсли; - // Перезапуск события "ПередОкончаниемРедактирования" с ОтменаНачалаРедактирования = Истина. - Элемент.ЗакончитьРедактированиеСтроки(Истина); - Иначе - Если НоваяСтрока Тогда - ЭлементСпискаВФорме.Пометка = Истина; // Включение флажка. - КонецЕсли; - ПользовательскиеНастройкиМодифицированы = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_СписокСПодбором_Подбор(Команда) - КнопкаПодборИмя = Команда.Имя; - - ИдентификаторЭлемента = Прав(КнопкаПодборИмя, 32); - СвойстваНастройкиТип = Лев(КнопкаПодборИмя, СтрНайти(КнопкаПодборИмя, "_Подбор_")-1); - - ТаблицаИмя = СвойстваНастройкиТип + "_СписокЗначений_" + ИдентификаторЭлемента; - КолонкаЗначениеИмя = СвойстваНастройкиТип + "_Колонка_Значение_" + ИдентификаторЭлемента; - КнопкаПодборИмя = СвойстваНастройкиТип + "_Подбор_" + ИдентификаторЭлемента; - - ТаблицаЗначение = ЭтотОбъект[ТаблицаИмя]; - КолонкаЗначениеЭлемент = Элементы[КолонкаЗначениеИмя]; - - ОписаниеТипов = ТаблицаЗначение.ТипЗначения; - - ПараметрыЭлемента = Новый Структура; - ПараметрыЭлемента.Вставить("ИдентификаторЭлемента", ИдентификаторЭлемента); - ПараметрыЭлемента.Вставить("ВыбранныйТип", Неопределено); - ПараметрыЭлемента.Вставить("КолонкаЗначениеЭлемент", КолонкаЗначениеЭлемент); - ПараметрыЭлемента.Вставить("ТаблицаЭлемент", Элементы[ТаблицаИмя]); - ПараметрыЭлемента.Вставить("ВыборТолькоГрупп", КолонкаЗначениеЭлемент.ВыборГруппИЭлементов = ГруппыИЭлементы.Группы); - ПараметрыЭлемента.Вставить("ПараметрыВыбора", Новый Массив); - - Найденные = ОтключаемыеСвязи.НайтиСтроки(Новый Структура("ПодчиненныйИдентификаторВФорме", ИдентификаторЭлемента)); - Для Каждого Связь Из Найденные Цикл - Если Не ЗначениеЗаполнено(Связь.ВедущийИдентификаторВФорме) - Или Не ЗначениеЗаполнено(Связь.ПодчиненныйИмяПараметра) Тогда - Продолжить; - КонецЕсли; - ВедущийНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(Связь.ВедущийИдентификаторВФорме); - Если Не ВедущийНастройкаКД.Использование Тогда - Продолжить; - КонецЕсли; - Если ТипЗнч(ВедущийНастройкаКД) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда - ВедущийЗначение = ВедущийНастройкаКД.ПравоеЗначение; - Иначе - ВедущийЗначение = ВедущийНастройкаКД.Значение; - КонецЕсли; - Если Связь.ТипСвязи = "ПараметровВыбора" Тогда - ПараметрыЭлемента.ПараметрыВыбора.Добавить(Новый ПараметрВыбора(Связь.ПодчиненныйИмяПараметра, ВедущийЗначение)); - ИначеЕсли Связь.ТипСвязи = "ПоТипу" Тогда - ТипВедущего = ТипЗнч(ВедущийЗначение); - Если ОписаниеТипов.СодержитТип(ТипВедущего) Тогда - ПараметрыЭлемента.ВыбранныйТип = ТипВедущего; - КонецЕсли; - КонецЕсли; - КонецЦикла; - - Если ПараметрыЭлемента.ВыбранныйТип <> Неопределено Тогда // Тип определен ведущим. - Подключаемый_СписокСПодбором_Подбор_ОткрытьФормуВыбора(-1, ПараметрыЭлемента); - Возврат; - КонецЕсли; - - // Выбор типа из списка. - СписокВыбора = Новый СписокЗначений; - - ПростыеТипы = Новый Соответствие; - ПростыеТипы.Вставить(Тип("Строка"), Истина); - ПростыеТипы.Вставить(Тип("Дата"), Истина); - ПростыеТипы.Вставить(Тип("Число"), Истина); - - МассивТипов = ОписаниеТипов.Типы(); - Для Каждого Тип Из МассивТипов Цикл - // Исключение типов, для которых нет групп. - Если ПараметрыЭлемента.ВыборТолькоГрупп Тогда - ИмяОбъектаМетаданных = БыстрыйПоискИменОбъектовМетаданных.Получить(Тип); - ВидОбъектаМетаданных = ВРег(Лев(ИмяОбъектаМетаданных, СтрНайти(ИмяОбъектаМетаданных, ".")-1)); - Если ВидОбъектаМетаданных <> "СПРАВОЧНИК" И ВидОбъектаМетаданных <> "ПЛАНВИДОВХАРАКТЕРИСТИК" И ВидОбъектаМетаданных <> "ПЛАНСЧЕТОВ" Тогда - Продолжить; - КонецЕсли; - КонецЕсли; - // Исключение простых типов. - Если ПростыеТипы[Тип] = Истина Тогда - Продолжить; - КонецЕсли; - // Добавление типа в список выбора. - СписокВыбора.Добавить(Тип, Строка(Тип)); - КонецЦикла; - - Если СписокВыбора.Количество() = 0 Тогда - ПараметрыЭлемента.ТаблицаЭлемент.ДобавитьСтроку(); - Возврат; - ИначеЕсли СписокВыбора.Количество() = 1 Тогда - // Один тип - выбор не требуется. - ПараметрыЭлемента.ВыбранныйТип = СписокВыбора[0].Значение; - Подключаемый_СписокСПодбором_Подбор_ОткрытьФормуВыбора(-1, ПараметрыЭлемента); - Иначе - // Более одного типа. - Обработчик = Новый ОписаниеОповещения("Подключаемый_СписокСПодбором_Подбор_ОткрытьФормуВыбора", ЭтотОбъект, ПараметрыЭлемента); - ПоказатьВыборИзМеню(Обработчик, СписокВыбора, Элементы[КнопкаПодборИмя]); - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_СписокСПодбором_Подбор_ОткрытьФормуВыбора(ВыбранныйЭлемент, ПараметрыЭлемента) Экспорт - Если ВыбранныйЭлемент = Неопределено Тогда - Возврат; - ИначеЕсли ВыбранныйЭлемент <> -1 Тогда - ПараметрыЭлемента.ВыбранныйТип = ВыбранныйЭлемент.Значение; - КонецЕсли; - - КолонкаЗначениеЭлемент = ПараметрыЭлемента.КолонкаЗначениеЭлемент; - - // Полное имя формы выбора. - // Свойство "ФормаВыбора" недоступно на клиенте даже для чтения, - // поэтому для хранения предустановленных имен форм выбора используется коллекция БыстрыйПоискИменОбъектовМетаданных. - ПутьКФорме = БыстрыйПоискИменОбъектовМетаданных.Получить(ПараметрыЭлемента.ИдентификаторЭлемента); - Если Не ЗначениеЗаполнено(ПутьКФорме) Тогда - ИмяОбъектаМетаданных = БыстрыйПоискИменОбъектовМетаданных.Получить(ПараметрыЭлемента.ВыбранныйТип); - Если ПараметрыЭлемента.ВыборТолькоГрупп Тогда - ВидОбъектаМетаданных = ВРег(Лев(ИмяОбъектаМетаданных, СтрНайти(ИмяОбъектаМетаданных, ".")-1)); - Если ВидОбъектаМетаданных = "СПРАВОЧНИК" Или ВидОбъектаМетаданных = "ПЛАНВИДОВХАРАКТЕРИСТИК" Тогда - ПутьКФорме = ИмяОбъектаМетаданных + ".ФормаВыбораГруппы"; - Иначе - ПутьКФорме = ИмяОбъектаМетаданных + ".ФормаВыбора"; - КонецЕсли; - Иначе - ПутьКФорме = ИмяОбъектаМетаданных + ".ФормаВыбора"; - КонецЕсли; - КонецЕсли; - - ВыборГруппИЭлементов = ОтчетыКлиентСервер.ПривестиЗначениеКТипуИспользованиеГруппИЭлементов(КолонкаЗначениеЭлемент.ВыборГруппИЭлементов); - - ПараметрыФормыВыбора = Новый Структура; - // Стандартные параметры формы. - ПараметрыФормыВыбора.Вставить("ЗакрыватьПриВыборе", Ложь); - ПараметрыФормыВыбора.Вставить("ЗакрыватьПриЗакрытииВладельца", Истина); - ПараметрыФормыВыбора.Вставить("Отбор", Новый Структура); - // Стандартные параметры формы выбора (см. Расширение управляемой формы для динамического списка). - ПараметрыФормыВыбора.Вставить("ВыборГруппИЭлементов", ВыборГруппИЭлементов); - ПараметрыФормыВыбора.Вставить("МножественныйВыбор", Истина); - ПараметрыФормыВыбора.Вставить("РежимВыбора", Истина); - // Предполагаемые реквизиты. - ПараметрыФормыВыбора.Вставить("РежимОткрытияОкна", РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); - ПараметрыФормыВыбора.Вставить("РазрешитьНачалоПеретаскивания", Ложь); - - // Добавление фиксированных параметров выбора. - Для Каждого ПараметрВыбора Из КолонкаЗначениеЭлемент.ПараметрыВыбора Цикл - Если ПустаяСтрока(ПараметрВыбора.Имя) Тогда - Продолжить; - КонецЕсли; - Если ЗначениеЗаполнено(ПараметрВыбора.Имя) Тогда - Если ВРег(Лев(ПараметрВыбора.Имя, 6)) = ВРег("Отбор.") Тогда - ПараметрыФормыВыбора.Отбор.Вставить(Сред(ПараметрВыбора.Имя, 7), ПараметрВыбора.Значение); - Иначе - ПараметрыФормыВыбора.Вставить(ПараметрВыбора.Имя, ПараметрВыбора.Значение); - КонецЕсли; - КонецЕсли; - КонецЦикла; - - // Добавление динамических параметров выбора (от ведущих). Для обратной совместимости. - Для Каждого СвязьПараметраВыбора Из КолонкаЗначениеЭлемент.СвязиПараметровВыбора Цикл - Если ПустаяСтрока(СвязьПараметраВыбора.Имя) Тогда - Продолжить; - КонецЕсли; - ВедущийЗначение = ЭтотОбъект[СвязьПараметраВыбора.ПутьКДанным]; - Если ВРег(Лев(СвязьПараметраВыбора.Имя, 6)) = ВРег("Отбор.") Тогда - ПараметрыФормыВыбора.Отбор.Вставить(Сред(СвязьПараметраВыбора.Имя, 7), ВедущийЗначение); - Иначе - ПараметрыФормыВыбора.Вставить(СвязьПараметраВыбора.Имя, ВедущийЗначение); - КонецЕсли; - КонецЦикла; - - // Добавление динамических параметров выбора (от ведущих). - Для Каждого ПараметрВыбора Из ПараметрыЭлемента.ПараметрыВыбора Цикл - Если ПустаяСтрока(ПараметрВыбора.Имя) Тогда - Продолжить; - КонецЕсли; - Если ЗначениеЗаполнено(ПараметрВыбора.Имя) Тогда - Если ВРег(Лев(ПараметрВыбора.Имя, 6)) = ВРег("Отбор.") Тогда - ПараметрыФормыВыбора.Отбор.Вставить(Сред(ПараметрВыбора.Имя, 7), ПараметрВыбора.Значение); - Иначе - ПараметрыФормыВыбора.Вставить(ПараметрВыбора.Имя, ПараметрВыбора.Значение); - КонецЕсли; - КонецЕсли; - КонецЦикла; - - ОткрытьФорму(ПутьКФорме, ПараметрыФормыВыбора, ПараметрыЭлемента.ТаблицаЭлемент); -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_СписокСПодбором_ОбработкаВыбора(Элемент, РезультатВыбора, СтандартнаяОбработка) - СтандартнаяОбработка = Ложь; - - // Списки в данных формы. - ТаблицаИмя = Элемент.Имя; - ИдентификаторЭлемента = Прав(Элемент.Имя, 32); - СписокЗначенийВФорме = ЭтотОбъект[Элемент.Имя]; - ПользовательскаяНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); - - Если ТипЗнч(ПользовательскаяНастройкаКД) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда - СписокЗначенийВСКД = ПользовательскаяНастройкаКД.Значение; - Иначе - СписокЗначенийВСКД = ПользовательскаяНастройкаКД.ПравоеЗначение; - КонецЕсли; - СписокЗначенийВСКД = ОтчетыКлиентСервер.ЗначенияСписком(СписокЗначенийВСКД); - - Выбранные = ОтчетыКлиентСервер.ЗначенияСписком(РезультатВыбора); - Выбранные.ЗаполнитьПометки(Истина); - - Дополнение = ОтчетыКлиентСервер.ДополнитьСписок(СписокЗначенийВСКД, Выбранные, Ложь, Истина); - ОтчетыКлиентСервер.ДополнитьСписок(СписокЗначенийВФорме, Выбранные, Ложь, Истина); - - // Включение флажка Использование. - ПользовательскаяНастройкаКД.Использование = Истина; - - Если ТипЗнч(ПользовательскаяНастройкаКД) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда - ПользовательскаяНастройкаКД.Значение = СписокЗначенийВСКД; - Иначе - ПользовательскаяНастройкаКД.ПравоеЗначение = СписокЗначенийВСКД; - КонецЕсли; - - // Оформление строк. - ТаблицаФормы = Элементы.Найти(ТаблицаИмя); - ТаблицаФормы.ЦветТекста = ?(ПользовательскаяНастройкаКД.Использование, Новый Цвет, ЦветНеактивныхЗначенийТаблицы); - - ПользовательскиеНастройкиМодифицированы = Истина; - - Если Дополнение.Всего > 0 Тогда - Результат = Новый Структура; - Если Дополнение.Всего = 1 Тогда - ЗаголовокОповещения = НСтр("ru = 'Элемент добавлен в список'"); - Иначе - ЗаголовокОповещения = НСтр("ru = 'Элементы добавлены в список'"); - КонецЕсли; - СтандартныеПодсистемыКлиентСервер.ВывестиОповещение( - Результат, - ЗаголовокОповещения, - Строка(Выбранные), - БиблиотекаКартинок.ВыполнитьЗадачу); - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ЭтотОбъект, Результат); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_СписокСПодбором_ВставитьИзБуфера(Команда) - КнопкаВставитьИмя = Команда.Имя; - - ИдентификаторЭлемента = Прав(КнопкаВставитьИмя, 32); - СвойстваНастройкиТип = Лев(КнопкаВставитьИмя, СтрНайти(КнопкаВставитьИмя, "_")-1); - - ТаблицаИмя = СвойстваНастройкиТип + "_СписокЗначений_" + ИдентификаторЭлемента; - КолонкаЗначениеИмя = СвойстваНастройкиТип + "_Колонка_Значение_" + ИдентификаторЭлемента; - - Список = ЭтотОбъект[ТаблицаИмя]; - СписокЭлемент = Элементы[ТаблицаИмя]; - КолонкаЗначениеЭлемент = Элементы[КолонкаЗначениеИмя]; - - ПараметрыПоиска = Новый Структура; - ПараметрыПоиска.Вставить("ОписаниеТипов", ОписаниеТиповУдалитьПримитивные(Список.ТипЗначения)); - ПараметрыПоиска.Вставить("ПараметрыВыбора", КолонкаЗначениеЭлемент.ПараметрыВыбора); - ПараметрыПоиска.Вставить("ПредставлениеПоля", СписокЭлемент.Заголовок); - ПараметрыПоиска.Вставить("Сценарий", "ВставкаИзБуфераОбмена"); - - ПараметрыВыполнения = Новый Структура; - ПараметрыВыполнения.Вставить("ИдентификаторЭлемента", ИдентификаторЭлемента); - ПараметрыВыполнения.Вставить("ТаблицаИмя", ТаблицаИмя); - Обработчик = Новый ОписаниеОповещения("Подключаемый_СписокСПодбором_ВставитьИзБуфера_Завершение", ЭтотОбъект, ПараметрыВыполнения); - - МодульЗагрузкаДанныхИзФайлаКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ЗагрузкаДанныхИзФайлаКлиент"); - МодульЗагрузкаДанныхИзФайлаКлиент.ПоказатьФормуЗаполненияСсылок(ПараметрыПоиска, Обработчик); -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_СписокСПодбором_ВставитьИзБуфера_Завершение(НайденныеОбъекты, ПараметрыВыполнения) Экспорт - Если НайденныеОбъекты = Неопределено Тогда - Возврат; - КонецЕсли; - - ИдентификаторЭлемента = ПараметрыВыполнения.ИдентификаторЭлемента; - - ПользовательскаяНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); - ДополнительныеНастройки = НайтиДополнительныеНастройкиЭлемента(ИдентификаторЭлемента); - - Список = ЭтотОбъект[ПараметрыВыполнения.ТаблицаИмя]; - Если ТипЗнч(ПользовательскаяНастройкаКД) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда - Отмеченные = ПользовательскаяНастройкаКД.ПравоеЗначение; - Иначе - Отмеченные = ПользовательскаяНастройкаКД.Значение; - КонецЕсли; - Для Каждого Значение Из НайденныеОбъекты Цикл - ОтчетыКлиентСервер.ДобавитьУникальноеЗначениеВСписок(Список, Значение, Неопределено, Истина); - ОтчетыКлиентСервер.ДобавитьУникальноеЗначениеВСписок(Отмеченные, Значение, Неопределено, Истина); - КонецЦикла; - - // Включение флажка Использование. - ПользовательскаяНастройкаКД.Использование = Истина; - - // Оформление строк. - ТаблицаФормы = Элементы.Найти(ПараметрыВыполнения.ТаблицаИмя); - ТаблицаФормы.ЦветТекста = ?(ПользовательскаяНастройкаКД.Использование, Новый Цвет, ЦветНеактивныхЗначенийТаблицы); - - ПользовательскиеНастройкиМодифицированы = Истина; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_СписокСПодбором_Добавить(Команда) - - КнопкаПодборИмя = Команда.Имя; - - ИдентификаторЭлемента = Прав(КнопкаПодборИмя, 32); - СвойстваНастройкиТип = Лев(КнопкаПодборИмя, СтрНайти(КнопкаПодборИмя, "_Подбор_") - 1); - - ТаблицаИмя = СвойстваНастройкиТип + "_СписокЗначений_" + ИдентификаторЭлемента; - - Элементы[ТаблицаИмя].ДобавитьСтроку(); - -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_ФиксированныйСписок_ПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр) - Отказ = Истина; -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_ФиксированныйСписок_ПередУдалением(Элемент, Отказ) - Отказ = Истина; -КонецПроцедуры - -#КонецОбласти - -//////////////////////////////////////////////////////////////////////////////// -// ТАБЛИЦА Сортировка - -#Область ОбработчикиСобытийЭлементовТаблицыФормыСортировка - -&НаКлиенте -Процедура СортировкаВыбор(Элемент, СтрокаИдентификатор, Поле, СтандартнаяОбработка) - СтандартнаяОбработка = Ложь; - СтрокаТаблицы = Элементы.Сортировка.ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - Если СтрокаТаблицы.ТипНастройки = "ЭлементПорядка" Тогда - ИмяКолонки = Поле.Имя; - Если ИмяКолонки = "СортировкаПредставление" Тогда // Изменение поля - ТаблицыПолейИзменить("Сортировка", СтрокаИдентификатор, СтрокаТаблицы); - ИначеЕсли ИмяКолонки = "СортировкаНаправление" Тогда // Изменение порядка. - ТаблицыПолейИзменитьНаправлениеСортировки("Сортировка", СтрокаТаблицы, Неопределено); - КонецЕсли; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура СортировкаПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр) - Отказ = Истина; - Обработчик = Новый ОписаниеОповещения("СортировкаПослеВыбораПоля", ЭтотОбъект); - ТаблицыПолейПоказатьВыборПоля("Сортировка", Обработчик); -КонецПроцедуры - -&НаКлиенте -Процедура СортировкаПослеВыбораПоля(ДоступноеПолеКД, ПараметрыВыполнения) Экспорт - Если ДоступноеПолеКД = Неопределено Тогда - Возврат; - КонецЕсли; - - Результат = ТаблицыПолейВставить("Сортировка", Тип("ЭлементПорядкаКомпоновкиДанных"), 0, Неопределено); - - ЭлементКД = Результат.ЭлементКД; - ЭлементКД.Использование = Истина; - ЭлементКД.Поле = ДоступноеПолеКД.Поле; - ЭлементКД.ТипУпорядочивания = НаправлениеСортировкиКомпоновкиДанных.Возр; - - СтрокаТаблицы = Результат.СтрокаТаблицы; - СтрокаТаблицы.Использование = ЭлементКД.Использование; - СтрокаТаблицы.Представление = ДоступноеПолеКД.Заголовок; - СтрокаТаблицы.Направление = ЭлементКД.ТипУпорядочивания; - - УстановитьМодифицированность(); -КонецПроцедуры - -&НаКлиенте -Процедура СортировкаПередУдалением(Элемент, Отказ) - ТаблицыПолейПередУдалением(Элемент.Имя, Отказ); -КонецПроцедуры - -&НаКлиенте -Процедура СортировкаИспользованиеПриИзменении(Элемент) - ТаблицыПолейИзменитьИспользование("Сортировка"); -КонецПроцедуры - -&НаКлиенте -Процедура Сортировка_ПоУбыванию(Команда) - ТаблицыПолейИзменитьНаправлениеСортировки("Сортировка", Неопределено, НаправлениеСортировкиКомпоновкиДанных.Убыв); -КонецПроцедуры - -&НаКлиенте -Процедура Сортировка_ПоВозрастанию(Команда) - ТаблицыПолейИзменитьНаправлениеСортировки("Сортировка", Неопределено, НаправлениеСортировкиКомпоновкиДанных.Возр); -КонецПроцедуры - -&НаКлиенте -Процедура Сортировка_ПереместитьВверх(Команда) - Сценарий = Новый Структура; - Сценарий.Вставить("Шаги", "ОпределитьВыделенныеСтроки, СдвинутьСтроки"); - Сценарий.Вставить("Действие", "Переместить"); - Сценарий.Вставить("ТаблицаИмя", "Сортировка"); - Сценарий.Вставить("Направление", -1); - - ЗапуститьСценарий(Сценарий); -КонецПроцедуры - -&НаКлиенте -Процедура Сортировка_ПереместитьВниз(Команда) - Сценарий = Новый Структура; - Сценарий.Вставить("Шаги", "ОпределитьВыделенныеСтроки, СдвинутьСтроки"); - Сценарий.Вставить("Действие", "Переместить"); - Сценарий.Вставить("ТаблицаИмя", "Сортировка"); - Сценарий.Вставить("Направление", 1); - - ЗапуститьСценарий(Сценарий); -КонецПроцедуры - -&НаКлиенте -Процедура Сортировка_УстановитьФлажки(Команда) - УстановитьФлажкиИспользованиеВоВсемДереве("Сортировка", Истина); -КонецПроцедуры - -&НаКлиенте -Процедура Сортировка_СнятьФлажки(Команда) - УстановитьФлажкиИспользованиеВоВсемДереве("Сортировка", Ложь); -КонецПроцедуры - -&НаКлиенте -Процедура СортировкаНачалоПеретаскивания(Элемент, ПараметрыПеретаскивания, РазрешитьПеретаскивание) - Если Не ЗарегистрироватьНачалоПеретаскивания("Сортировка") Тогда - РазрешитьПеретаскивание = Ложь; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура СортировкаПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, ИдентификаторЦели, Поле) - СтандартнаяОбработка = Ложь; - ПроверитьВозможностьПеретаскивания("Сортировка", ИдентификаторЦели, ПараметрыПеретаскивания); -КонецПроцедуры - -&НаКлиенте -Процедура СортировкаПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, ИдентификаторЦели, Поле) - // Возникает в приемнике при окончании перетаскивания когда все проверки пройдены. - СтандартнаяОбработка = Ложь; - ИсточникПеретаскивания = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПеременныеКлиента, "ИсточникПеретаскивания"); - Если ИсточникПеретаскивания = Неопределено Тогда - Возврат; - КонецЕсли; - Если ИсточникПеретаскивания.ТаблицаИмя = "Сортировка" Тогда - ПеретаскиваниеВПределахТаблицы(ИсточникПеретаскивания, ИдентификаторЦели); - ИначеЕсли ИсточникПеретаскивания.ТаблицаИмя = "ВыбранныеПоля" Тогда - ПеретаскиваниеВыбранныхПолейВСортировки(ИсточникПеретаскивания, ИдентификаторЦели); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура СортировкаОкончаниеПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка) - СтандартнаяОбработка = Ложь; -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоля_Сортировка_Вправо(Команда) - ИсточникПеретаскивания = Неопределено; - Если Не ЗарегистрироватьНачалоПеретаскивания("ВыбранныеПоля", ИсточникПеретаскивания) Тогда - Возврат; - КонецЕсли; - ПеретаскиваниеВыбранныхПолейВСортировки(ИсточникПеретаскивания, Элементы.Сортировка.ТекущаяСтрока); -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоля_Сортировка_Влево(Команда) - ИсточникПеретаскивания = Неопределено; - Если Не ЗарегистрироватьНачалоПеретаскивания("Сортировка", ИсточникПеретаскивания) Тогда - Возврат; - КонецЕсли; - ПеретаскиваниеСортировокВВыбранныеПоля(ИсточникПеретаскивания, Элементы.ВыбранныеПоля.ТекущаяСтрока); -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоля_Сортировка_ВлевоВсе(Команда) - КорневаяСтрока = КорневаяСтрокаПоУмолчанию("Сортировка"); - ТаблицыПолейУдалить("Сортировка", КорневаяСтрока.ПолучитьЭлементы(), Истина); -КонецПроцедуры - -#КонецОбласти - -//////////////////////////////////////////////////////////////////////////////// -// ТАБЛИЦА ВыбранныеПоля - -#Область ОбработчикиСобытийЭлементовТаблицыФормыВыбранныеПоля - -&НаКлиенте -Процедура ВыбранныеПоляВыбор(Элемент, СтрокаИдентификатор, Поле, СтандартнаяОбработка) - СтандартнаяОбработка = Ложь; - СтрокаТаблицы = Элементы.ВыбранныеПоля.ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - ИмяКолонки = Поле.Имя; - Если ИмяКолонки = "ВыбранныеПоляПредставление" Тогда // Изменение порядка. - Если СтрокаТаблицы.ТипНастройки = "ВыбранноеПоле" Тогда - ТаблицыПолейИзменить("ВыбранныеПоля", СтрокаИдентификатор, СтрокаТаблицы); - ИначеЕсли СтрокаТаблицы.ТипНастройки = "ГруппаВыбранныхПолей" Тогда - ТаблицыПолейИзменитьГруппу("ВыбранныеПоля", СтрокаИдентификатор, СтрокаТаблицы); - КонецЕсли; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоляПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр) - Отказ = Истина; - Обработчик = Новый ОписаниеОповещения("ВыбранныеПоляПослеВыбораПоля", ЭтотОбъект); - ТаблицыПолейПоказатьВыборПоля("ВыбранныеПоля", Обработчик); -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоляПослеВыбораПоля(ДоступноеПолеКД, ПараметрыВыполнения) Экспорт - Если ДоступноеПолеКД = Неопределено Тогда - Возврат; - КонецЕсли; - - Результат = ТаблицыПолейВставить("ВыбранныеПоля", Тип("ВыбранноеПолеКомпоновкиДанных"), 0, Неопределено); - - ЭлементКД = Результат.ЭлементКД; - ЭлементКД.Использование = Истина; - ЭлементКД.Поле = ДоступноеПолеКД.Поле; - - СтрокаТаблицы = Результат.СтрокаТаблицы; - СтрокаТаблицы.Использование = ЭлементКД.Использование; - СтрокаТаблицы.Представление = ДоступноеПолеКД.Заголовок; - СтрокаТаблицы.ЭтоГруппа = Ложь; - СтрокаТаблицы.ИндексКартинки = 4; - СтрокаТаблицы.ПолеКД = ЭлементКД.Поле; - - ПослеИзмененияФлажкаИспользование("ВыбранныеПоля", СтрокаТаблицы, ЭлементКД); - - УстановитьМодифицированность(); -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоляПередУдалением(Элемент, Отказ) - ТаблицыПолейПередУдалением(Элемент.Имя, Отказ); -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоляИспользованиеПриИзменении(Элемент) - ТаблицыПолейИзменитьИспользование("ВыбранныеПоля"); -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоля_ПереместитьВверх(Команда) - Сценарий = Новый Структура; - Сценарий.Вставить("Шаги", "ОпределитьВыделенныеСтроки, СдвинутьСтроки"); - Сценарий.Вставить("Действие", "Переместить"); - Сценарий.Вставить("ТаблицаИмя", "ВыбранныеПоля"); - Сценарий.Вставить("Направление", -1); - - ЗапуститьСценарий(Сценарий); -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоля_ПереместитьВниз(Команда) - Сценарий = Новый Структура; - Сценарий.Вставить("Шаги", "ОпределитьВыделенныеСтроки, СдвинутьСтроки"); - Сценарий.Вставить("Действие", "Переместить"); - Сценарий.Вставить("ТаблицаИмя", "ВыбранныеПоля"); - Сценарий.Вставить("Направление", 1); - - ЗапуститьСценарий(Сценарий); -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоля_Сгруппировать(Команда) - Сценарий = Новый Структура; - Сценарий.Вставить("Шаги", "ОпределитьВыделенныеСтроки, ОтредактироватьГруппуПолей, СгруппироватьСтроки, ОбновитьФорму"); - Сценарий.Вставить("Действие", "Сгруппировать"); - Сценарий.Вставить("ТаблицаИмя", "ВыбранныеПоля"); - Сценарий.Вставить("ТипГруппыКД", Тип("ГруппаВыбранныхПолейКомпоновкиДанных")); - - ЗапуститьСценарий(Сценарий); -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоля_Разгруппировать(Команда) - ТаблицыПолейРазгруппировать("ВыбранныеПоля"); -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоля_УстановитьФлажки(Команда) - УстановитьФлажкиИспользованиеВоВсемДереве("ВыбранныеПоля", Истина); -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоля_СнятьФлажки(Команда) - УстановитьФлажкиИспользованиеВоВсемДереве("ВыбранныеПоля", Ложь); -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоляНачалоПеретаскивания(Элемент, ПараметрыПеретаскивания, РазрешитьПеретаскивание) - Если Не ЗарегистрироватьНачалоПеретаскивания("ВыбранныеПоля") Тогда - РазрешитьПеретаскивание = Ложь; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоляПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, ИдентификаторЦели, Поле) - СтандартнаяОбработка = Ложь; - ПроверитьВозможностьПеретаскивания("ВыбранныеПоля", ИдентификаторЦели, ПараметрыПеретаскивания); -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоляПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, ИдентификаторЦели, Поле) - // Возникает в приемнике при окончании перетаскивания когда все проверки пройдены. - СтандартнаяОбработка = Ложь; - ИсточникПеретаскивания = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПеременныеКлиента, "ИсточникПеретаскивания"); - Если ИсточникПеретаскивания = Неопределено Тогда - Возврат; - КонецЕсли; - Если ИсточникПеретаскивания.ТаблицаИмя = "ВыбранныеПоля" Тогда - ПеретаскиваниеВПределахТаблицы(ИсточникПеретаскивания, ИдентификаторЦели); - ИначеЕсли ИсточникПеретаскивания.ТаблицаИмя = "Сортировка" Тогда - ПеретаскиваниеСортировокВВыбранныеПоля(ИсточникПеретаскивания, ИдентификаторЦели); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ВыбранныеПоляОкончаниеПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка) - СтандартнаяОбработка = Ложь; -КонецПроцедуры - -#КонецОбласти - -//////////////////////////////////////////////////////////////////////////////// -// ТАБЛИЦА Отборы - -#Область ОбработчикиСобытийЭлементовТаблицыФормыОтборы - -&НаКлиенте -Процедура ОтборыВыбор(Элемент, СтрокаИдентификатор, Поле, СтандартнаяОбработка) - СтандартнаяОбработка = Ложь; - ИмяКолонки = Поле.Имя; - Если РасширенныйРежим <> 1 Тогда - Возврат; - КонецЕсли; - СтрокаТаблицы = Элементы.Отборы.ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - Если СтрокаТаблицы.ЭтоРаздел Тогда - Возврат; - КонецЕсли; - - Если ИмяКолонки = "ОтборыПредставление" Тогда // Изменение порядка. - - Если СтрокаТаблицы.ЭтоПараметр Тогда - Возврат; - КонецЕсли; - Если СтрокаТаблицы.ЭтоГруппа Тогда - ТаблицыПолейИзменитьГруппу("Отборы", СтрокаИдентификатор, СтрокаТаблицы); - Иначе - ТаблицыПолейИзменить("Отборы", СтрокаИдентификатор, СтрокаТаблицы); - КонецЕсли; - - ИначеЕсли ИмяКолонки = "ОтборыИндексКартинкиДоступа" Тогда // Изменение быстрого доступа к отбору. - - ТаблицыПолейИзменитьУровеньДоступа("Отборы", СтрокаИдентификатор, Истина, Не СтрокаТаблицы.ЭтоПараметр); - - ИначеЕсли ИмяКолонки = "ОтборыЗначение" - Или ИмяКолонки = "ОтборыПредставлениеЗначения" Тогда - - Если СтрокаТаблицы.ЭтоГруппа Тогда - Возврат; - КонецЕсли; - Если СтрокаТаблицы.Условие = ВидСравненияКомпоновкиДанных.Заполнено - Или СтрокаТаблицы.Условие = ВидСравненияКомпоновкиДанных.НеЗаполнено Тогда - Возврат; - КонецЕсли; - - ЭтоПериод = (СтрокаТаблицы.ТипУсловия = Новый ОписаниеТипов("ПеречислениеСсылка.ДоступныеПериодыОтчета")); - Если ЭтоПериод Тогда - ОтборыПоказатьВыборПериода(СтрокаТаблицы); - Иначе - Если СтрокаТаблицы.ВводСписком Тогда - ОтборыПоказатьСписокСФлажками(СтрокаТаблицы); - ИначеЕсли СтрокаТаблицы.ФиксированныйСписокВыбора Тогда - ОтборыВыбратьЗначениеИзСписка(СтрокаТаблицы); - Иначе - ОтборыПоказатьВыборСсылки(СтрокаТаблицы, СтандартнаяОбработка); - КонецЕсли; - КонецЕсли; - - ИначеЕсли ИмяКолонки = "ОтборыУсловие" Тогда - - Если СтрокаТаблицы.ЭтоГруппа Тогда - Возврат; - КонецЕсли; - ЭтоПериод = (СтрокаТаблицы.ТипУсловия = Новый ОписаниеТипов("ПеречислениеСсылка.ДоступныеПериодыОтчета")); - Если ЭтоПериод Тогда - ОтборыПоказатьВыборПериода(СтрокаТаблицы); - Иначе - ОтборыВыбратьВидСравнения(СтрокаТаблицы); - КонецЕсли; - - ИначеЕсли ИмяКолонки = "ОтборыЗаголовок" Тогда - - СтандартнаяОбработка = Истина; - - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр) - Отказ = Истина; - Если РасширенныйРежим = 0 Тогда - Возврат; - КонецЕсли; - - Если Не РежимИзмененияУзлаВарианта Тогда - ТекущаяСтрока = Элементы.Отборы.ТекущиеДанные; - Если (ТекущаяСтрока = Неопределено) - Или (ТекущаяСтрока.ЭтоПараметр) - Или (ТекущаяСтрока.ЭтоРаздел И ТекущаяСтрока.ИдентификаторКД = "ПараметрыДанных") Тогда - ТекущаяСтрока = Отборы.ПолучитьЭлементы()[1]; - Элементы.Отборы.ТекущаяСтрока = ТекущаяСтрока.ПолучитьИдентификатор(); - КонецЕсли; - КонецЕсли; - - Обработчик = Новый ОписаниеОповещения("ОтборыПослеВыбораПоля", ЭтотОбъект); - ТаблицыПолейПоказатьВыборПоля("Отборы", Обработчик); -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыПослеВыбораПоля(ДоступноеПолеОтбораКД, ПараметрыВыполнения) Экспорт - Если ДоступноеПолеОтбораКД = Неопределено Тогда - Возврат; - КонецЕсли; - - Результат = ТаблицыПолейВставить("Отборы", Тип("ЭлементОтбораКомпоновкиДанных"), 0, Неопределено); - - ЭлементКД = Результат.ЭлементКД; - ЭлементКД.Использование = Истина; - ЭлементКД.ЛевоеЗначение = ДоступноеПолеОтбораКД.Поле; - ЭлементКД.ПравоеЗначение = ДоступноеПолеОтбораКД.Тип.ПривестиЗначение(); - ЭлементКД.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный; - ЭлементКД.ИдентификаторПользовательскойНастройки = Строка(Новый УникальныйИдентификатор()); - - УстановитьМодифицированность(); - Обновить(); -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыПередУдалением(Элемент, Отказ) - СтрокаТаблицы = Элемент.ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - Если СтрокаТаблицы.ЭтоРаздел - Или СтрокаТаблицы.ЭтоПараметр Тогда - Отказ = Истина; - Возврат; - КонецЕсли; - ТаблицыПолейПередУдалением(Элемент.Имя, Отказ); -КонецПроцедуры - -&НаКлиенте -Процедура Отборы_Сгруппировать(Команда) - Сценарий = Новый Структура; - Сценарий.Вставить("Шаги", "ОпределитьВыделенныеСтроки, СгруппироватьСтроки, ОбновитьФорму"); - Сценарий.Вставить("Действие", "Сгруппировать"); - Сценарий.Вставить("ТаблицаИмя", "Отборы"); - Сценарий.Вставить("ТипГруппыКД", Тип("ГруппаЭлементовОтбораКомпоновкиДанных")); - - ЗапуститьСценарий(Сценарий); -КонецПроцедуры - -&НаКлиенте -Процедура Отборы_Разгруппировать(Команда) - ТаблицыПолейРазгруппировать("Отборы"); -КонецПроцедуры - -&НаКлиенте -Процедура Отборы_ПереместитьВверх(Команда) - Сценарий = Новый Структура; - Сценарий.Вставить("Шаги", "ОпределитьВыделенныеСтроки, СдвинутьСтроки"); - Сценарий.Вставить("Действие", "Переместить"); - Сценарий.Вставить("ТаблицаИмя", "Отборы"); - Сценарий.Вставить("Направление", -1); - - ЗапуститьСценарий(Сценарий); -КонецПроцедуры - -&НаКлиенте -Процедура Отборы_ПереместитьВниз(Команда) - Сценарий = Новый Структура; - Сценарий.Вставить("Шаги", "ОпределитьВыделенныеСтроки, СдвинутьСтроки"); - Сценарий.Вставить("Действие", "Переместить"); - Сценарий.Вставить("ТаблицаИмя", "Отборы"); - Сценарий.Вставить("Направление", 1); - - ЗапуститьСценарий(Сценарий); -КонецПроцедуры - -&НаКлиенте -Процедура Отборы_УстановитьФлажки(Команда) - УстановитьФлажкиИспользованиеВоВсемДереве("Отборы", Истина); -КонецПроцедуры - -&НаКлиенте -Процедура Отборы_СнятьФлажки(Команда) - УстановитьФлажкиИспользованиеВоВсемДереве("Отборы", Ложь); -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыИспользованиеПриИзменении(Элемент) - ТаблицыПолейИзменитьИспользование("Отборы"); -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыЗначениеПриИзменении(Элемент) - ТаблицыПолейИзменитьЗначение("Отборы"); -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыЗаголовокПриИзменении(Элемент) - СтрокаТаблицы = Элементы.Отборы.ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, "Отборы", СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат; - КонецЕсли; - - Если ПустаяСтрока(СтрокаТаблицы.Заголовок) Тогда - СтрокаТаблицы.Заголовок = СтрокаТаблицы.Представление; - КонецЕсли; - СтрокаТаблицы.ЗаголовокПереопределен = (СтрокаТаблицы.Заголовок <> СтрокаТаблицы.Представление); - - Если Не СтрокаТаблицы.ЭтоПараметр Тогда - Если СтрокаТаблицы.ИндексКартинкиДоступа = 1 Или СтрокаТаблицы.ИндексКартинкиДоступа = 3 Тогда - ЭлементКД.Представление = "1"; - Иначе - ЭлементКД.Представление = ""; - КонецЕсли; - КонецЕсли; - Если СтрокаТаблицы.ЗаголовокПереопределен Тогда - ЭлементКД.ПредставлениеПользовательскойНастройки = СтрокаТаблицы.Заголовок; - Иначе - ЭлементКД.ПредставлениеПользовательскойНастройки = ""; - КонецЕсли; - - УстановитьМодифицированность(); -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыПриАктивизацииСтроки(Элемент) - СтрокаТаблицы = Элементы.Отборы.ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - МожноУдалятьИПеремещать = Истина; - Если СтрокаТаблицы.ЭтоРаздел - Или СтрокаТаблицы.ЭтоПараметр Тогда - МожноУдалятьИПеремещать = Ложь; - КонецЕсли; - - Элементы.Отборы_Удалить.Доступность = МожноУдалятьИПеремещать; - Элементы.Отборы_Удалить1.Доступность = МожноУдалятьИПеремещать; - Элементы.Отборы_Сгруппировать.Доступность = МожноУдалятьИПеремещать; - Элементы.Отборы_Сгруппировать1.Доступность = МожноУдалятьИПеремещать; - Элементы.Отборы_Разгруппировать.Доступность = МожноУдалятьИПеремещать; - Элементы.Отборы_Разгруппировать1.Доступность = МожноУдалятьИПеремещать; - Элементы.Отборы_ПереместитьВверх.Доступность = МожноУдалятьИПеремещать; - Элементы.Отборы_ПереместитьВверх1.Доступность = МожноУдалятьИПеремещать; - Элементы.Отборы_ПереместитьВниз.Доступность = МожноУдалятьИПеремещать; - Элементы.Отборы_ПереместитьВниз1.Доступность = МожноУдалятьИПеремещать; - - Если Не СтрокаТаблицы.ЭтоРаздел И Не СтрокаТаблицы.ЭтоГруппа Тогда - Элементы.ОтборыЗначение.ВыборГруппИЭлементов = ОтчетыКлиентСервер.ПривестиЗначениеКТипуГруппыИЭлементы( - СтрокаТаблицы.Условие, - СтрокаТаблицы.ВыборГруппИЭлементов); - КонецЕсли; - -КонецПроцедуры - -#КонецОбласти - -//////////////////////////////////////////////////////////////////////////////// -// ТАБЛИЦА СтруктураВарианта - -#Область ОбработчикиСобытийЭлементовТаблицыФормыСтруктураВарианта - -&НаКлиенте -Процедура СтруктураВариантаПриАктивизацииСтроки(Элемент) - СтрокаТаблицы = Элементы.СтруктураВарианта.ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - МожноДобавлятьВложенные = Истина; - МожноГруппировать = Истина; - МожноОткрывать = Истина; - МожноУдалятьИПеремещать = Истина; - МожноДобавлятьТаблицыИДиаграммы = Ложь; - - Родитель = СтрокаТаблицы.ПолучитьРодителя(); - РодителяМожноПеремещать = (Родитель <> Неопределено - И Родитель.Тип <> "Настройки" - И Родитель.Тип <> "КоллекцияЭлементовСтруктурыТаблицы" - И Родитель.Тип <> "КоллекцияЭлементовСтруктурыДиаграммы"); - ЕстьСоседние = ПолучитьЭлементы(СтруктураВарианта, Родитель).Количество() > 1; - - ЕстьПодчиненные = (СтрокаТаблицы.ПолучитьЭлементы().Количество() > 0); - Если СтрокаТаблицы.Тип = "Таблица" - Или СтрокаТаблицы.Тип = "Диаграмма" - Или СтрокаТаблицы.Тип = "НастройкиВложенногоОбъекта" Тогда - МожноОткрывать = Ложь; - МожноДобавлятьВложенные = Ложь; - ИначеЕсли СтрокаТаблицы.Тип = "Настройки" - Или СтрокаТаблицы.Тип = "КоллекцияЭлементовСтруктурыТаблицы" - Или СтрокаТаблицы.Тип = "КоллекцияЭлементовСтруктурыДиаграммы" Тогда - МожноОткрывать = Ложь; - МожноУдалятьИПеремещать = Ложь; - МожноГруппировать = Ложь; - ИначеЕсли СтрокаТаблицы.Тип = "НастройкиВложенногоОбъекта" Тогда - МожноОткрывать = Ложь; - МожноГруппировать = Ложь; - КонецЕсли; - - Если СтрокаТаблицы.Тип = "Настройки" Или СтрокаТаблицы.Тип = "Группировка" Тогда - МожноДобавлятьТаблицыИДиаграммы = Истина; - КонецЕсли; - - Элементы.СтруктураВарианта_Добавить.Доступность = МожноДобавлятьВложенные; - Элементы.СтруктураВарианта_Добавить1.Доступность = МожноДобавлятьВложенные; - Элементы.СтруктураВарианта_Изменить.Доступность = МожноОткрывать; - Элементы.СтруктураВарианта_Изменить1.Доступность = МожноОткрывать; - Элементы.СтруктураВарианта_ДобавитьТаблицу.Доступность = МожноДобавлятьТаблицыИДиаграммы; - Элементы.СтруктураВарианта_ДобавитьТаблицу1.Доступность = МожноДобавлятьТаблицыИДиаграммы; - Элементы.СтруктураВарианта_ДобавитьДиаграмму.Доступность = МожноДобавлятьТаблицыИДиаграммы; - Элементы.СтруктураВарианта_ДобавитьДиаграмму1.Доступность = МожноДобавлятьТаблицыИДиаграммы; - Элементы.СтруктураВарианта_Удалить.Доступность = МожноУдалятьИПеремещать; - Элементы.СтруктураВарианта_Удалить1.Доступность = МожноУдалятьИПеремещать; - Элементы.СтруктураВарианта_Сгруппировать.Доступность = МожноГруппировать; - Элементы.СтруктураВарианта_Сгруппировать1.Доступность = МожноГруппировать; - Элементы.СтруктураВарианта_ПереместитьВышеИЛевее.Доступность = МожноУдалятьИПеремещать И РодителяМожноПеремещать И МожноДобавлятьВложенные И МожноГруппировать; - Элементы.СтруктураВарианта_ПереместитьВышеИЛевее1.Доступность = МожноУдалятьИПеремещать И РодителяМожноПеремещать И МожноДобавлятьВложенные И МожноГруппировать; - Элементы.СтруктураВарианта_ПереместитьНижеИПравее.Доступность = МожноУдалятьИПеремещать И ЕстьПодчиненные И МожноДобавлятьВложенные И МожноГруппировать; - Элементы.СтруктураВарианта_ПереместитьНижеИПравее1.Доступность = МожноУдалятьИПеремещать И ЕстьПодчиненные И МожноДобавлятьВложенные И МожноГруппировать; - Элементы.СтруктураВарианта_ПереместитьВверх.Доступность = МожноУдалятьИПеремещать И ЕстьСоседние; - Элементы.СтруктураВарианта_ПереместитьВверх1.Доступность = МожноУдалятьИПеремещать И ЕстьСоседние; - Элементы.СтруктураВарианта_ПереместитьВниз.Доступность = МожноУдалятьИПеремещать И ЕстьСоседние; - Элементы.СтруктураВарианта_ПереместитьВниз1.Доступность = МожноУдалятьИПеремещать И ЕстьСоседние; - -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВариантаВыбор(Элемент, СтрокаИдентификатор, Поле, СтандартнаяОбработка) - СтандартнаяОбработка = Ложь; - Если РасширенныйРежим <> 1 Тогда - Возврат; - КонецЕсли; - СтрокаТаблицы = Элементы.СтруктураВарианта.ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - Если СтрокаТаблицы.Тип = "КоллекцияЭлементовСтруктурыТаблицы" - Или СтрокаТаблицы.Тип = "КоллекцияЭлементовСтруктурыДиаграммы" - Или СтрокаТаблицы.Тип = "Настройки" Тогда - Возврат; - КонецЕсли; - ИмяКолонки = Поле.Имя; - Если ИмяКолонки = "СтруктураВариантаПредставление" - Или ИмяКолонки = "СтруктураВариантаСодержитОтборы" - Или ИмяКолонки = "СтруктураВариантаСодержитПоляИлиСортировки" - Или ИмяКолонки = "СтруктураВариантаСодержитУсловноеОформление" Тогда - Если СтрокаТаблицы.Тип = "Таблица" - Или СтрокаТаблицы.Тип = "НастройкиВложенногоОбъекта" Тогда - Возврат; - КонецЕсли; - - Если ИмяКолонки = "СтруктураВариантаСодержитОтборы" Тогда - ИмяСтраницы = "СтраницаОтборы"; - ИначеЕсли ИмяКолонки = "СтруктураВариантаСодержитПоляИлиСортировки" Тогда - ИмяСтраницы = "СтраницаВыбранныеПоляИСортировки"; - ИначеЕсли ИмяКолонки = "СтруктураВариантаСодержитУсловноеОформление" Тогда - ИмяСтраницы = "СтраницаОформление"; - Иначе - ИмяСтраницы = Неопределено; - КонецЕсли; - - СтруктураВариантаИзменитьУзел("СтруктураВарианта", СтрокаИдентификатор, СтрокаТаблицы, ИмяСтраницы); - Иначе - СтандартнаяОбработка = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВариантаПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр) - Отказ = Истина; - Если РасширенныйРежим = 0 Тогда - Возврат; - КонецЕсли; - Если Не Элементы.СтруктураВарианта_Добавить.Доступность Тогда - Возврат; - КонецЕсли; - Если Копирование Тогда - Возврат; - КонецЕсли; - - СтруктураВариантаДобавитьГруппировку(Истина); -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВарианта_Сгруппировать(Команда) - Если Не Элементы.СтруктураВарианта_Сгруппировать.Доступность Тогда - Возврат; - КонецЕсли; - СтруктураВариантаДобавитьГруппировку(Ложь); -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВариантаДобавитьГруппировку(ВнутрьТекущей) - ПараметрыВыполнения = Новый Структура; - ПараметрыВыполнения.Вставить("ВнутрьТекущей", ВнутрьТекущей); - ПараметрыВыполнения.Вставить("Оборачивать", Истина); - - ИдентификаторУзлаНастроек = Неопределено; - СтрокаТаблицы = Элементы.СтруктураВарианта.ТекущиеДанные; - Если СтрокаТаблицы <> Неопределено Тогда - Если Не ВнутрьТекущей Тогда - СтрокаТаблицы = СтрокаТаблицы.ПолучитьРодителя(); - КонецЕсли; - Если ВнутрьТекущей Тогда - Если СтрокаТаблицы.Тип = "Настройки" И Не СтрокаТаблицы.ФлажокДоступен Тогда - ПараметрыВыполнения.Оборачивать = Ложь; - ИначеЕсли СтрокаТаблицы.ПолучитьЭлементы().Количество() > 1 Тогда - ПараметрыВыполнения.Оборачивать = Ложь; - КонецЕсли; - КонецЕсли; - Пока СтрокаТаблицы <> Неопределено Цикл - Если СтрокаТаблицы.Тип = "Настройки" - Или СтрокаТаблицы.Тип = "НастройкиВложенногоОбъекта" - Или СтрокаТаблицы.Тип = "Группировка" - Или СтрокаТаблицы.Тип = "ГруппировкаТаблицы" - Или СтрокаТаблицы.Тип = "ГруппировкаДиаграммы" Тогда - ИдентификаторУзлаНастроек = СтрокаТаблицы.ИдентификаторКД; - Прервать; - КонецЕсли; - СтрокаТаблицы = СтрокаТаблицы.ПолучитьРодителя(); - КонецЦикла; - КонецЕсли; - - Обработчик = Новый ОписаниеОповещения("СтруктураВариантаДобавитьГруппировкуПослеВыбораПоля", ЭтотОбъект, ПараметрыВыполнения); - ТаблицыПолейПоказатьВыборПоля("СтруктураВарианта", Обработчик, Неопределено, ИдентификаторУзлаНастроек); -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВариантаДобавитьГруппировкуПослеВыбораПоля(ДоступноеПолеКД, ПараметрыВыполнения) Экспорт - Если ДоступноеПолеКД = Неопределено Тогда - Возврат; - КонецЕсли; - - ТекущаяСтрока = Элементы.СтруктураВарианта.ТекущиеДанные; - - СтрокиПеремещаемыеВНовуюГруппировку = Новый Массив; - Если ПараметрыВыполнения.Оборачивать Тогда - Если ПараметрыВыполнения.ВнутрьТекущей Тогда - Найденные = ТекущаяСтрока.ПолучитьЭлементы(); - Для Каждого ПеремещаемаяСтрока Из Найденные Цикл - СтрокиПеремещаемыеВНовуюГруппировку.Добавить(ПеремещаемаяСтрока); - КонецЦикла; - Иначе - СтрокиПеремещаемыеВНовуюГруппировку.Добавить(ТекущаяСтрока); - КонецЕсли; - КонецЕсли; - - // Добавление новой группировки. - Результат = ТаблицыПолейВставить("СтруктураВарианта", Тип("ГруппировкаКомпоновкиДанных"), ТекущаяСтрока, ПараметрыВыполнения.ВнутрьТекущей); - - ЭлементКД = Результат.ЭлементКД; - ЭлементКД.Использование = Истина; - ЭлементКД.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных")); - ЭлементКД.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных")); - - Если ДоступноеПолеКД = "<>" Тогда - // Детальные записи - добавлять поле не требуется. - Представление = НСтр("ru = '<Детальные записи>'"); - Иначе - ПолеГруппировкиКД = ЭлементКД.ПоляГруппировки.Элементы.Добавить(Тип("ПолеГруппировкиКомпоновкиДанных")); - ПолеГруппировкиКД.Использование = Истина; - ПолеГруппировкиКД.Поле = ДоступноеПолеКД.Поле; - Представление = Строка(ДоступноеПолеКД.Заголовок); - КонецЕсли; - - СтрокаТаблицы = Результат.СтрокаТаблицы; - СтрокаТаблицы.Использование = ЭлементКД.Использование; - СтрокаТаблицы.Представление = Представление; - СтрокаТаблицы.ИндексКартинки = 1; - СтрокаТаблицы.ФлажокДоступен = Истина; - СтрокаТаблицы.Тип = ОтчетыКлиентСервер.ТипНастройкиСтрокой(ТипЗнч(ЭлементКД)); - - Если Не ПараметрыВыполнения.ВнутрьТекущей Тогда - СтрокаТаблицы.Заголовок = ТекущаяСтрока.Заголовок; - СтруктураВариантаОбновитьЗаголовокЭлементаВКомпоновщике(СтрокаТаблицы); - ТекущаяСтрока.Заголовок = ""; - СтруктураВариантаОбновитьЗаголовокЭлементаВКомпоновщике(ТекущаяСтрока); - КонецЕсли; - - // Перемещение текущей группировки в новую. - Для Каждого ПеремещаемаяСтрока Из СтрокиПеремещаемыеВНовуюГруппировку Цикл - Результат = ТаблицыПолейПереместить("СтруктураВарианта", ПеремещаемаяСтрока, СтрокаТаблицы, Неопределено, Ложь); - КонецЦикла; - - // Бантики. - Элементы.СтруктураВарианта.Развернуть(СтрокаТаблицы.ПолучитьИдентификатор(), Истина); - Элементы.СтруктураВарианта.ТекущаяСтрока = СтрокаТаблицы.ПолучитьИдентификатор(); - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВарианта_ДобавитьТаблицу(Команда) - Если Не Элементы.СтруктураВарианта_ДобавитьТаблицу.Доступность Тогда - Возврат; - КонецЕсли; - ДобавитьТаблицуИлиДиаграмму(Тип("ТаблицаКомпоновкиДанных")); -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВарианта_ДобавитьДиаграмму(Команда) - Если Не Элементы.СтруктураВарианта_ДобавитьДиаграмму.Доступность Тогда - Возврат; - КонецЕсли; - ДобавитьТаблицуИлиДиаграмму(Тип("ДиаграммаКомпоновкиДанных")); -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВарианта_УстановитьФлажки(Команда) - УстановитьФлажкиИспользованиеВоВсемДереве("СтруктураВарианта", Истина); -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВарианта_СнятьФлажки(Команда) - УстановитьФлажкиИспользованиеВоВсемДереве("СтруктураВарианта", Ложь); -КонецПроцедуры - -&НаКлиенте -Процедура ДобавитьТаблицуИлиДиаграмму(ТипЭлемента) - ТекущаяСтрока = Элементы.СтруктураВарианта.ТекущиеДанные; - - Результат = ТаблицыПолейВставить("СтруктураВарианта", ТипЭлемента, ТекущаяСтрока, Истина); - - Если ТипЭлемента = Тип("ДиаграммаКомпоновкиДанных") Тогда - ЭлементКД = Результат.ЭлементКД; - ЭлементКД.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных")); - УстановитьПараметрВывода(ЭлементКД, "ТипДиаграммы.СоединениеЗначенийПоСериям", ТипСоединенияЗначенийПоСериямДиаграммы.СоединениеКраев); - УстановитьПараметрВывода(ЭлементКД, "ТипДиаграммы.ЛинииСоединенияЗначенийПоСериям"); - УстановитьПараметрВывода(ЭлементКД, "ТипДиаграммы.ЦветСоединенияЗначенийПоСериям", WebЦвета.СеребристоСерый); - УстановитьПараметрВывода(ЭлементКД, "ТипДиаграммы.РежимСглаживания", РежимСглаживанияДиаграммы.ГладкаяКривая); - УстановитьПараметрВывода(ЭлементКД, "ТипДиаграммы.РежимПолупрозрачности", РежимПолупрозрачностиДиаграммы.Использовать); - КонецЕсли; - - УстановитьМодифицированность(); -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВариантаНачалоПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка) - // Проверка общих условий. - Если РасширенныйРежим = 0 Тогда - СтандартнаяОбработка = Ложь; - Возврат; - КонецЕсли; - // Проверка источника. - СтрокаТаблицы = СтруктураВарианта.НайтиПоИдентификатору(ПараметрыПеретаскивания.Значение); - Если СтрокаТаблицы = Неопределено Тогда - СтандартнаяОбработка = Ложь; - Возврат; - КонецЕсли; - Если СтрокаТаблицы.Тип = "КоллекцияЭлементовСтруктурыДиаграммы" - Или СтрокаТаблицы.Тип = "КоллекцияЭлементовСтруктурыТаблицы" - Или СтрокаТаблицы.Тип = "Настройки" Тогда - СтандартнаяОбработка = Ложь; - Возврат; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВариантаПроверкаПеретаскивания(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, ИдентификаторЦели, Поле) - // Проверка общих условий. - Если ИдентификаторЦели = Неопределено Тогда - ПараметрыПеретаскивания.Действие = ДействиеПеретаскивания.Отмена; - Возврат; - КонецЕсли; - // Проверка источника. - СтрокаТаблицы = СтруктураВарианта.НайтиПоИдентификатору(ПараметрыПеретаскивания.Значение); - Если СтрокаТаблицы = Неопределено Тогда - ПараметрыПеретаскивания.Действие = ДействиеПеретаскивания.Отмена; - Возврат; - КонецЕсли; - // Проверка приемника. - НовыйРодитель = СтруктураВарианта.НайтиПоИдентификатору(ИдентификаторЦели); - Если НовыйРодитель = Неопределено Тогда - ПараметрыПеретаскивания.Действие = ДействиеПеретаскивания.Отмена; - Возврат; - КонецЕсли; - Если НовыйРодитель.Тип = "Таблица" - Или НовыйРодитель.Тип = "Диаграмма" Тогда - ПараметрыПеретаскивания.Действие = ДействиеПеретаскивания.Отмена; - Возврат; - КонецЕсли; - - // Проверка совместимости источника с приемником. - ДопустимоТолькоНаличиеГруппировок = Ложь; - Если НовыйРодитель.Тип = "КоллекцияЭлементовСтруктурыТаблицы" - Или НовыйРодитель.Тип = "КоллекцияЭлементовСтруктурыДиаграммы" - Или НовыйРодитель.Тип = "ГруппировкаТаблицы" - Или НовыйРодитель.Тип = "ГруппировкаДиаграммы" Тогда - ДопустимоТолькоНаличиеГруппировок = Истина; - КонецЕсли; - - Если ДопустимоТолькоНаличиеГруппировок - И СтрокаТаблицы.Тип <> "Группировка" - И СтрокаТаблицы.Тип <> "ГруппировкаТаблицы" - И СтрокаТаблицы.Тип <> "ГруппировкаДиаграммы" Тогда - ПараметрыПеретаскивания.Действие = ДействиеПеретаскивания.Отмена; - Возврат; - КонецЕсли; - - КоллекцииКоллекций = Новый Массив; - КоллекцииКоллекций.Добавить(СтрокаТаблицы.ПолучитьЭлементы()); - Количество = 1; - Пока Количество > 0 Цикл - Коллекция = КоллекцииКоллекций[0]; - Количество = Количество - 1; - КоллекцииКоллекций.Удалить(0); - Для Каждого ВложеннаяСтрокаТаблицы Из Коллекция Цикл - Если ВложеннаяСтрокаТаблицы = НовыйРодитель Тогда - ПараметрыПеретаскивания.Действие = ДействиеПеретаскивания.Отмена; - Возврат; - КонецЕсли; - Если ДопустимоТолькоНаличиеГруппировок - И ВложеннаяСтрокаТаблицы.Тип <> "Группировка" - И ВложеннаяСтрокаТаблицы.Тип <> "ГруппировкаТаблицы" - И ВложеннаяСтрокаТаблицы.Тип <> "ГруппировкаДиаграммы" Тогда - ПараметрыПеретаскивания.Действие = ДействиеПеретаскивания.Отмена; - Возврат; - КонецЕсли; - КоллекцииКоллекций.Добавить(ВложеннаяСтрокаТаблицы.ПолучитьЭлементы()); - Количество = Количество + 1; - КонецЦикла; - КонецЦикла; - -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВариантаПеретаскивание(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, ИдентификаторЦели, Поле) - // Все проверки пройдены. - СтандартнаяОбработка = Ложь; - - СтрокаТаблицы = СтруктураВарианта.НайтиПоИдентификатору(ПараметрыПеретаскивания.Значение); - НовыйРодитель = СтруктураВарианта.НайтиПоИдентификатору(ИдентификаторЦели); - - Результат = ТаблицыПолейПереместить("СтруктураВарианта", СтрокаТаблицы, НовыйРодитель, Неопределено, Ложь); - - Элементы.СтруктураВарианта.Развернуть(НовыйРодитель.ПолучитьИдентификатор(), Истина); - Элементы.СтруктураВарианта.ТекущаяСтрока = Результат.СтрокаДерева.ПолучитьИдентификатор(); - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВариантаИспользованиеПриИзменении(Элемент) - ТаблицыПолейИзменитьИспользование("СтруктураВарианта"); -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВариантаЗаголовокПриИзменении(Элемент) - СтрокаТаблицы = Элементы.СтруктураВарианта.ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - СтруктураВариантаОбновитьЗаголовокЭлементаВКомпоновщике(СтрокаТаблицы); - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВарианта_ПереместитьВверх(Команда) - Сценарий = Новый Структура; - Сценарий.Вставить("Шаги", "ОпределитьВыделенныеСтроки, СдвинутьСтроки"); - Сценарий.Вставить("Действие", "Переместить"); - Сценарий.Вставить("ТаблицаИмя", "СтруктураВарианта"); - Сценарий.Вставить("Направление", -1); - - ЗапуститьСценарий(Сценарий); -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВарианта_ПереместитьВниз(Команда) - Сценарий = Новый Структура; - Сценарий.Вставить("Шаги", "ОпределитьВыделенныеСтроки, СдвинутьСтроки"); - Сценарий.Вставить("Действие", "Переместить"); - Сценарий.Вставить("ТаблицаИмя", "СтруктураВарианта"); - Сценарий.Вставить("Направление", 1); - - ЗапуститьСценарий(Сценарий); -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВарианта_Изменить(Команда) - ТаблицаЭлемент = Элементы.СтруктураВарианта; - Поле = ТаблицаЭлемент.ТекущийЭлемент; - СтандартнаяОбработка = Истина; - СтрокаИдентификатор = ТаблицаЭлемент.ТекущаяСтрока; - СтруктураВариантаВыбор(ТаблицаЭлемент, СтрокаИдентификатор, Поле, СтандартнаяОбработка); -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВариантаПередУдалением(Элемент, Отказ) - Отказ = Истина; - Если РасширенныйРежим = 0 Или Не Элементы.СтруктураВарианта_Удалить.Доступность Тогда - Возврат; - КонецЕсли; - - Сценарий = Новый Структура; - Сценарий.Вставить("Шаги", "ОпределитьВыделенныеСтроки, УдалитьСтроки, ОбновитьФорму"); - Сценарий.Вставить("Действие", "Удалить"); - Сценарий.Вставить("ТаблицаИмя", "СтруктураВарианта"); - - ЗапуститьСценарий(Сценарий); -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВарианта_ПереместитьВышеИЛевее(Команда) - Если Не Элементы.СтруктураВарианта_ПереместитьВышеИЛевее.Доступность Тогда - Возврат; - КонецЕсли; - СтрокаТаблицыВверх = Элементы.СтруктураВарианта.ТекущиеДанные; - Если СтрокаТаблицыВверх = Неопределено Тогда - Возврат; - КонецЕсли; - СтрокаТаблицыВниз = СтрокаТаблицыВверх.ПолучитьРодителя(); - Если СтрокаТаблицыВниз = Неопределено Тогда - Возврат; - КонецЕсли; - - ПараметрыВыполнения = Новый Структура; - ПараметрыВыполнения.Вставить("Режим", "ВверхИВлево"); - ПараметрыВыполнения.Вставить("СтрокаТаблицыВверх", СтрокаТаблицыВверх); - ПараметрыВыполнения.Вставить("СтрокаТаблицыВниз", СтрокаТаблицыВниз); - СтруктураВарианта_Переместить(-1, ПараметрыВыполнения); -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВарианта_ПереместитьНижеИПравее(Команда) - Если Не Элементы.СтруктураВарианта_ПереместитьНижеИПравее.Доступность Тогда - Возврат; - КонецЕсли; - СтрокаТаблицыВниз = Элементы.СтруктураВарианта.ТекущиеДанные; - Если СтрокаТаблицыВниз = Неопределено Тогда - Возврат; - КонецЕсли; - ПараметрыВыполнения = Новый Структура; - ПараметрыВыполнения.Вставить("Режим", "ВнизИВправо"); - ПараметрыВыполнения.Вставить("СтрокаТаблицыВверх", Неопределено); - ПараметрыВыполнения.Вставить("СтрокаТаблицыВниз", СтрокаТаблицыВниз); - - ПодчиненныеСтроки = СтрокаТаблицыВниз.ПолучитьЭлементы(); - Количество = ПодчиненныеСтроки.Количество(); - Если Количество = 0 Тогда - Возврат; - ИначеЕсли Количество = 1 Тогда - ПараметрыВыполнения.СтрокаТаблицыВверх = ПодчиненныеСтроки[0]; - СтруктураВарианта_Переместить(-1, ПараметрыВыполнения); - Иначе - Список = Новый СписокЗначений; - Для НомерСтроки = 1 По Количество Цикл - ПодчиненнаяСтрока = ПодчиненныеСтроки[НомерСтроки-1]; - Список.Добавить(ПодчиненнаяСтрока.ПолучитьИдентификатор(), ПодчиненнаяСтрока.Представление); - КонецЦикла; - Обработчик = Новый ОписаниеОповещения("СтруктураВарианта_Переместить", ЭтотОбъект, ПараметрыВыполнения); - ПоказатьВыборИзСписка(Обработчик, Список); - КонецЕсли; - -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВарианта_Переместить(Результат, ПараметрыВыполнения) Экспорт - Если Результат <> -1 Тогда - Если ТипЗнч(Результат) <> Тип("ЭлементСпискаЗначений") Тогда - Возврат; - КонецЕсли; - СтрокаТаблицыВверх = СтруктураВарианта.НайтиПоИдентификатору(Результат.Значение); - Иначе - СтрокаТаблицыВверх = ПараметрыВыполнения.СтрокаТаблицыВверх; - КонецЕсли; - СтрокаТаблицыВниз = ПараметрыВыполнения.СтрокаТаблицыВниз; - - // 0. Запомнить перед каким элементом вставлять верхнюю строку. - СтрокиВниз = СтрокаТаблицыВниз.ПолучитьЭлементы(); - Индекс = СтрокиВниз.Индекс(СтрокаТаблицыВверх); - МассивИдентификаторовСтрокВниз = Новый Массив; - Для Каждого СтрокаТаблицы Из СтрокиВниз Цикл - Если СтрокаТаблицы = СтрокаТаблицыВверх Тогда - Продолжить; - КонецЕсли; - МассивИдентификаторовСтрокВниз.Добавить(СтрокаТаблицы.ПолучитьИдентификатор()); - КонецЦикла; - - // 1. Переместить нижнюю строку на уровень с верхней. - Результат1 = ТаблицыПолейПереместить("СтруктураВарианта", СтрокаТаблицыВверх, СтрокаТаблицыВниз.ПолучитьРодителя(), СтрокаТаблицыВниз, Ложь); - СтрокаТаблицыВверх = Результат1.СтрокаДерева; - - // 2. Запомнить какие строки нужно переместить. - СтрокиВверх = СтрокаТаблицыВверх.ПолучитьЭлементы(); - - // 3. Обмен строками. - Для Каждого СтрокаТаблицы Из СтрокиВверх Цикл - Результат2 = ТаблицыПолейПереместить("СтруктураВарианта", СтрокаТаблицы, СтрокаТаблицыВниз, Неопределено, Ложь); - КонецЦикла; - Для Каждого СтрокаТаблицыИдентификатор Из МассивИдентификаторовСтрокВниз Цикл - СтрокаТаблицы = СтруктураВарианта.НайтиПоИдентификатору(СтрокаТаблицыИдентификатор); - Результат3 = ТаблицыПолейПереместить("СтруктураВарианта", СтрокаТаблицы, СтрокаТаблицыВверх, Неопределено, Ложь); - КонецЦикла; - - // 4. Переместить верхнюю строку в нижнюю. - СтрокиВверх = СтрокаТаблицыВверх.ПолучитьЭлементы(); - Если СтрокиВверх.Количество() - 1 < Индекс Тогда - ПередЧемВставить = Неопределено; - Иначе - ПередЧемВставить = СтрокиВверх[Индекс]; - КонецЕсли; - Результат4 = ТаблицыПолейПереместить("СтруктураВарианта", СтрокаТаблицыВниз, СтрокаТаблицыВверх, ПередЧемВставить, Ложь); - СтрокаТаблицыВниз = Результат4.СтрокаДерева; - - // Бантики. - Если ПараметрыВыполнения.Режим = "ВнизИВправо" Тогда - ТекущаяСтрока = СтрокаТаблицыВниз; - Иначе - ТекущаяСтрока = СтрокаТаблицыВверх; - КонецЕсли; - ТекущаяСтрокаИдентификатор = ТекущаяСтрока.ПолучитьИдентификатор(); - Элементы.СтруктураВарианта.Развернуть(ТекущаяСтрокаИдентификатор, Истина); - Элементы.СтруктураВарианта.ТекущаяСтрока = ТекущаяСтрокаИдентификатор; - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; -КонецПроцедуры - -#КонецОбласти - -//////////////////////////////////////////////////////////////////////////////// -// ТАБЛИЦА СоставГруппировки - -#Область ОбработчикиСобытийЭлементовТаблицыФормыСоставГруппировки - -&НаКлиенте -Процедура СоставГруппировкиИспользованиеПриИзменении(Элемент) - ТаблицыПолейИзменитьИспользование("СоставГруппировки"); -КонецПроцедуры - -&НаКлиенте -Процедура СоставГруппировкиВыбор(Элемент, СтрокаИдентификатор, Поле, СтандартнаяОбработка) - СтандартнаяОбработка = Ложь; - СтрокаТаблицы = Элементы.СоставГруппировки.ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - ИмяКолонки = Поле.Имя; - Если ИмяКолонки = "СоставГруппировкиПредставление" Тогда - Если СтрокаТаблицы.ТипНастройки = "ПолеГруппировки" Тогда - ТаблицыПолейИзменить("СоставГруппировки", СтрокаИдентификатор, СтрокаТаблицы); - КонецЕсли; - ИначеЕсли ИмяКолонки = "СоставГруппировкиТипГруппировки" - Или ИмяКолонки = "СоставГруппировкиТипДополнения" Тогда - СтандартнаяОбработка = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура СоставГруппировкиПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр) - Отказ = Истина; - Обработчик = Новый ОписаниеОповещения("СоставГруппировкиПослеВыбораПоля", ЭтотОбъект); - ТаблицыПолейПоказатьВыборПоля("СоставГруппировки", Обработчик); -КонецПроцедуры - -&НаКлиенте -Процедура СоставГруппировкиПослеВыбораПоля(ДоступноеПолеКД, ПараметрыВыполнения) Экспорт - Если ДоступноеПолеКД = Неопределено Тогда - Возврат; - КонецЕсли; - - Результат = ТаблицыПолейВставить("СоставГруппировки", Тип("ПолеГруппировкиКомпоновкиДанных"), 0, Ложь); - - ЭлементКД = Результат.ЭлементКД; - ЭлементКД.Использование = Истина; - ЭлементКД.Поле = ДоступноеПолеКД.Поле; - - СтрокаТаблицы = Результат.СтрокаТаблицы; - СтрокаТаблицы.Использование = ЭлементКД.Использование; - СтрокаТаблицы.Представление = ДоступноеПолеКД.Заголовок; - СтрокаТаблицы.ТипГруппировки = ЭлементКД.ТипГруппировки; - СтрокаТаблицы.ТипДополнения = ЭлементКД.ТипДополнения; - СтрокаТаблицы.ПолеКД = ЭлементКД.Поле; - - Если ДоступноеПолеКД.Ресурс Тогда - СтрокаТаблицы.ИндексКартинки = 20; - ИначеЕсли ДоступноеПолеКД.Таблица Тогда - СтрокаТаблицы.ИндексКартинки = 21; - ИначеЕсли ДоступноеПолеКД.Папка Тогда - СтрокаТаблицы.ИндексКартинки = 1; - Иначе - СтрокаТаблицы.ИндексКартинки = 4; - КонецЕсли; - - ИнформацияОТипах = ОтчетыКлиентСервер.АнализТипов(ДоступноеПолеКД.ТипЗначения, Ложь); - Если ИнформацияОТипах.СодержитТипПериод Или ИнформацияОТипах.СодержитТипДата Тогда - СтрокаТаблицы.ПоказыватьТипДополнения = Истина; - КонецЕсли; - - ПослеИзмененияФлажкаИспользование("СоставГруппировки", СтрокаТаблицы, ЭлементКД); - - УстановитьМодифицированность(); -КонецПроцедуры - -&НаКлиенте -Процедура СоставГруппировкиТипГруппировкиПриИзменении(Элемент) - ТаблицыПолейИзменитьТипГруппировки("СоставГруппировки"); -КонецПроцедуры - -&НаКлиенте -Процедура СоставГруппировкиТипДополненияПриИзменении(Элемент) - ТаблицыПолейИзменитьТипГруппировки("СоставГруппировки"); -КонецПроцедуры - -&НаКлиенте -Процедура СоставГруппировкиПередУдалением(Элемент, Отказ) - ТаблицыПолейПередУдалением(Элемент.Имя, Отказ); -КонецПроцедуры - -&НаКлиенте -Процедура СоставГруппировки_ПереместитьВверх(Команда) - Сценарий = Новый Структура; - Сценарий.Вставить("Шаги", "ОпределитьВыделенныеСтроки, СдвинутьСтроки"); - Сценарий.Вставить("Действие", "Переместить"); - Сценарий.Вставить("ТаблицаИмя", "СоставГруппировки"); - Сценарий.Вставить("Направление", -1); - - ЗапуститьСценарий(Сценарий); -КонецПроцедуры - -&НаКлиенте -Процедура СоставГруппировки_ПереместитьВниз(Команда) - Сценарий = Новый Структура; - Сценарий.Вставить("Шаги", "ОпределитьВыделенныеСтроки, СдвинутьСтроки"); - Сценарий.Вставить("Действие", "Переместить"); - Сценарий.Вставить("ТаблицаИмя", "СоставГруппировки"); - Сценарий.Вставить("Направление", 1); - - ЗапуститьСценарий(Сценарий); -КонецПроцедуры - -#КонецОбласти - -//////////////////////////////////////////////////////////////////////////////// -// ТАБЛИЦА Оформление - -#Область ОбработчикиСобытийЭлементовТаблицыФормыОформление - -&НаКлиенте -Процедура ОформлениеПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа, Параметр) - Отказ = Истина; - Если РасширенныйРежим = 0 Тогда - Возврат; - КонецЕсли; - - ОформлениеИзменитьЭлемент("Оформление", Неопределено, Неопределено); -КонецПроцедуры - -&НаКлиенте -Процедура ОформлениеВыбор(Элемент, СтрокаИдентификатор, Поле, СтандартнаяОбработка) - СтандартнаяОбработка = Ложь; - Если РасширенныйРежим <> 1 Тогда - Возврат; - КонецЕсли; - СтрокаТаблицы = Элементы.Оформление.ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - ИмяКолонки = Поле.Имя; - Если ИмяКолонки = "ОформлениеЗаголовок" Тогда // Изменение порядка. - - ОформлениеИзменитьЭлемент("Оформление", СтрокаИдентификатор, СтрокаТаблицы); - - ИначеЕсли ИмяКолонки = "ОформлениеИндексКартинкиДоступа" Тогда // Изменение быстрого доступа к отбору. - - ТаблицыПолейИзменитьУровеньДоступа("Оформление", СтрокаИдентификатор, Истина, Ложь); - - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ОформлениеПередУдалением(Элемент, Отказ) - ТаблицыПолейПередУдалением(Элемент.Имя, Отказ); -КонецПроцедуры - -#КонецОбласти - -//////////////////////////////////////////////////////////////////////////////// -// КОМАНДЫ - -#Область ОбработчикиКомандФормы - -&НаКлиенте -Процедура ЗакрытьИСформировать(Команда) - ЗаписатьИЗакрыть(Истина); -КонецПроцедуры - -&НаКлиенте -Процедура ЗакрытьБезФормирования(Команда) - ЗаписатьИЗакрыть(Ложь); -КонецПроцедуры - -&НаКлиенте -Процедура НастройкиПоУмолчанию(Команда) - ПараметрыЗаполнения = Новый Структура; - ПараметрыЗаполнения.Вставить("ИмяСобытия", "НастройкиПоУмолчанию"); - ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); - ПараметрыЗаполнения.Вставить("СброситьПользовательскиеНастройки", Истина); - БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); -КонецПроцедуры - -&НаКлиенте -Процедура ИзменитьУсловияОтборов(Команда) - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("НастройкиОтчета", НастройкиОтчета); - ПараметрыФормы.Вставить("КомпоновщикНастроек", Отчет.КомпоновщикНастроек); - Обработчик = Новый ОписаниеОповещения("ИзменитьУсловияОтборовЗавершение", ЭтотОбъект); - ОткрытьФорму("ХранилищеНастроек.ХранилищеВариантовОтчетов.Форма.УсловияОтборовОтчета", ПараметрыФормы, ЭтотОбъект, Истина, , , Обработчик); -КонецПроцедуры - -&НаКлиенте -Процедура ИзменитьУсловияОтборовЗавершение(ВыборПользователя, Контекст) Экспорт - Если ВыборПользователя = Неопределено - Или ВыборПользователя = КодВозвратаДиалога.Отмена - Или ВыборПользователя.Количество() = 0 Тогда - Возврат; - КонецЕсли; - ПараметрыЗаполнения = Новый Структура; - ПараметрыЗаполнения.Вставить("ИмяСобытия", "ИзменитьУсловияОтборов"); - ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); - ПараметрыЗаполнения.Вставить("УсловияОтборов", ВыборПользователя); - БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Подключаемые команды - -&НаКлиенте -Процедура Подключаемый_Команда(Команда) - // Механизмы расширения - Результат = Ложь; - Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.РассылкаОтчетов") Тогда - МодульРассылкаОтчетовКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("РассылкаОтчетовКлиент"); - МодульРассылкаОтчетовКлиент.ФормаОтчетаОбработчикКоманды(ЭтотОбъект, Команда, Результат); - КонецЕсли; - ОтчетыКлиентПереопределяемый.ОбработчикКоманды(ЭтотОбъект, Команда, Результат); -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_ИзменитьВидСравнения(Команда) - ИдентификаторЭлемента = Прав(Команда.Имя, 32); - Контекст = Новый Структура; - Контекст.Вставить("ИдентификаторЭлемента", ИдентификаторЭлемента); - Обработчик = Новый ОписаниеОповещения("ПослеВыбораВидаСравнения", ЭтотОбъект, Контекст); - ОтчетыКлиент.ИзменитьВидСравнения(ЭтотОбъект, ИдентификаторЭлемента, Обработчик); -КонецПроцедуры - -&НаКлиенте -Процедура ПослеВыбораВидаСравнения(ВидСравнения, Контекст) Экспорт - Если ВидСравнения <> Неопределено Тогда - ПараметрыЗаполнения = Новый Структура; - ПараметрыЗаполнения.Вставить("ИмяСобытия", "ИзменитьВидСравнения"); - ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); - БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); - КонецЕсли; -КонецПроцедуры - -#КонецОбласти - -//////////////////////////////////////////////////////////////////////////////// -// ВСПОМОГАТЕЛЬНЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ - -#Область СлужебныеПроцедурыИФункции - -//////////////////////////////////////////////////////////////////////////////// -// Клиент - -&НаКлиенте -Процедура ЗаписатьИЗакрыть(Переформировать) - ОповеститьОВыборе(РезультатВыбора(Переформировать)); -КонецПроцедуры - -&НаКлиенте -Функция РезультатВыбора(Переформировать) - РезультатВыбораСформирован = Истина; - - Если РежимИзмененияУзлаВарианта И Не Переформировать Тогда - Возврат Неопределено; - КонецЕсли; - - РезультатВыбора = Новый Структура; - РезультатВыбора.Вставить("ИмяСобытия", "ФормаНастроек"); - РезультатВыбора.Вставить("Переформировать", Переформировать); - РезультатВыбора.Вставить("ВариантМодифицирован", Ложь); - РезультатВыбора.Вставить("ПользовательскиеНастройкиМодифицированы", Ложь); - РезультатВыбора.Вставить("ФормаНастроекРасширенныйРежим", РасширенныйРежим); - РезультатВыбора.Вставить("ФормаНастроекИмяСтраницы", Элементы.СтраницыНастроек.ТекущаяСтраница.Имя); - - Если ВариантИзменен Тогда - РезультатВыбора.ВариантМодифицирован = Истина; - РезультатВыбора.Вставить("НастройкиКД", Отчет.КомпоновщикНастроек.Настройки); - КонецЕсли; - - Если ВариантИзменен Или ПользовательскиеНастройкиМодифицированы Тогда - РезультатВыбора.ПользовательскиеНастройкиМодифицированы = Истина; - РезультатВыбора.Вставить("ПользовательскиеНастройкиКД", Отчет.КомпоновщикНастроек.ПользовательскиеНастройки); - КонецЕсли; - - Если ВариантИзменен И РасширенныйРежим = 1 Тогда - РезультатВыбора.Вставить("СброситьПользовательскиеНастройки", Истина); - КонецЕсли; - - Возврат РезультатВыбора; -КонецФункции - -&НаКлиенте -Функция НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента) Экспорт - // Для пользовательских настроек хранятся идентификаторы компоновки данных, - // поскольку они не могут храниться по ссылке (происходит копирование значения). - Если ИдентификаторЭлемента = "Сортировка" Тогда - Если РежимИзмененияУзлаВарианта Тогда - КорневойУзел = Отчет.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(ИдентификаторТекущегоУзлаКД); - Возврат КорневойУзел.Порядок; - ИначеЕсли РасширенныйРежим = 1 Тогда - Возврат Отчет.КомпоновщикНастроек.Настройки.Порядок; - Иначе - ИдентификаторЭлемента = ИдентификаторЭлемента; - КонецЕсли; - ИначеЕсли ИдентификаторЭлемента = "ВыбранныеПоля" Тогда - Если РежимИзмененияУзлаВарианта Тогда - КорневойУзел = Отчет.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(ИдентификаторТекущегоУзлаКД); - Возврат КорневойУзел.Выбор; - ИначеЕсли РасширенныйРежим = 1 Тогда - Возврат Отчет.КомпоновщикНастроек.Настройки.Выбор; - Иначе - ИдентификаторЭлемента = ИдентификаторЭлемента; - КонецЕсли; - ИначеЕсли ИдентификаторЭлемента = "Отборы" Тогда - Если РежимИзмененияУзлаВарианта Тогда - КорневойУзел = Отчет.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(ИдентификаторТекущегоУзлаКД); - Возврат КорневойУзел.Отбор; - ИначеЕсли РасширенныйРежим = 1 Тогда - Возврат Отчет.КомпоновщикНастроек.Настройки.Отбор; - Иначе - ИдентификаторЭлемента = ИдентификаторЭлемента; - КонецЕсли; - ИначеЕсли ИдентификаторЭлемента = "СтруктураВарианта" Тогда - Если РасширенныйРежим = 1 Тогда - Возврат Отчет.КомпоновщикНастроек.Настройки; - Иначе - Возврат Отчет.КомпоновщикНастроек.ПользовательскиеНастройки; - КонецЕсли; - КонецЕсли; - ИдентификаторКД = БыстрыйПоискПользовательскихНастроек.Получить(ИдентификаторЭлемента); - Возврат Отчет.КомпоновщикНастроек.ПользовательскиеНастройки.ПолучитьОбъектПоИдентификатору(ИдентификаторКД); -КонецФункции - -&НаКлиенте -Функция НайтиДополнительныеНастройкиЭлемента(ИдентификаторЭлемента) Экспорт - // Для пользовательских настроек хранятся идентификаторы компоновки данных, - // поскольку они не могут храниться по ссылке (происходит копирование значения). - ВсеДополнительныеНастройки = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(Отчет.КомпоновщикНастроек.ПользовательскиеНастройки.ДополнительныеСвойства, "ЭлементыФормы"); - Если ВсеДополнительныеНастройки = Неопределено Тогда - Возврат Неопределено; - Иначе - Возврат ВсеДополнительныеНастройки[ИдентификаторЭлемента]; - КонецЕсли; -КонецФункции - -&НаКлиенте -Процедура БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения) - Если ПараметрыЗаполнения = Неопределено Тогда - ПараметрыЗаполнения = Новый Структура("ИмяСобытия", "ПослеИзмененияКоллекции"); - КонецЕсли; - РезультатКлиента = БыстрыеНастройкиЗаполнить(ПараметрыЗаполнения); - ПоказатьРезультатЗаполненияНастроек(РезультатКлиента); -КонецПроцедуры - -&НаКлиенте -Процедура ПоказатьРезультатЗаполненияНастроек(РезультатКлиента) - Если РезультатКлиента = Неопределено Тогда - РезультатКлиента = РезультатЗаполненияНастроек; - РезультатЗаполненияНастроек = Неопределено; - КонецЕсли; - Если ТипЗнч(РезультатКлиента) <> Тип("Структура") Тогда - Возврат; - КонецЕсли; - - // Для платформы (переопределение доступных значений на клиенте). - СвоиСпискиВыбора = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(РезультатКлиента, "СвоиСпискиВыбора"); - Если ТипЗнч(СвоиСпискиВыбора) = Тип("Массив") Тогда - Для Каждого ИдентификаторЭлемента Из СвоиСпискиВыбора Цикл - НастройкаВарианта = НайтиНастройкуВарианта(ЭтотОбъект, ИдентификаторЭлемента); - Если НастройкаВарианта = Неопределено Тогда - Продолжить; - КонецЕсли; - ДополнительныеНастройки = НайтиДополнительныеНастройкиЭлемента(ИдентификаторЭлемента); - Если ДополнительныеНастройки = Неопределено Тогда - Продолжить; - КонецЕсли; - Тип = ТипЗнч(НастройкаВарианта.ЭлементКД); - Если Тип = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда - ДоступныеПараметры = НастройкаВарианта.УзелКД.ДоступныеПараметры; - ДоступнаяНастройкаКД = ДоступныеПараметры.НайтиПараметр(НастройкаВарианта.ЭлементКД.Параметр); - Если ДоступнаяНастройкаКД.ДоступныеЗначения = Неопределено Тогда - Продолжить; - КонецЕсли; - ДоступнаяНастройкаКД.ДоступныеЗначения.Очистить(); - Для Каждого Элемент Из ДополнительныеНастройки.ЗначенияДляВыбора Цикл - ЗаполнитьЗначенияСвойств(ДоступнаяНастройкаКД.ДоступныеЗначения.Добавить(), Элемент); - КонецЦикла; - ИначеЕсли Тип = Тип("ЭлементОтбораКомпоновкиДанных") Тогда - ДоступныеПоляОтбора = НастройкаВарианта.УзелКД.ДоступныеПоляОтбора; - ДоступнаяНастройкаКД = ДоступныеПоляОтбора.НайтиПоле(НастройкаВарианта.ЭлементКД.ЛевоеЗначение); - ДоступнаяНастройкаКД.ДоступныеЗначения = ДополнительныеНастройки.ЗначенияДляВыбора; - КонецЕсли; - КонецЦикла; - КонецЕсли; - - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ЭтотОбъект, РезультатКлиента); -КонецПроцедуры - -&НаКлиенте -Процедура УстановитьПараметрВывода(ЭлементКД, Имя, Значение = Неопределено, Использование = Истина) - ПараметрКД = ЭлементКД.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных(Имя)); - Если ПараметрКД = Неопределено Тогда - Возврат; - КонецЕсли; - Если Значение <> Неопределено Тогда - ПараметрКД.Значение = Значение; - КонецЕсли; - Если Использование <> Неопределено Тогда - ПараметрКД.Использование = Использование; - КонецЕсли; -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Клиент - Движок сценарного выполнения. - -&НаКлиенте -Процедура ЗапуститьСценарий(Сценарий) - // Плюсы сценарного выполнения: - // Изоляция обработчиков. - // Текущий шаг может ничего не знать о следующем или предыдущем шаге. - // Единый обработчик оповещения. - // Минимальный клиентский программный интерфейс формы. - // Избавляет от необходимости "разворачивать" стек в обратную сторону - // после закрытия диалога с пользователем. - // Удобная группировка кода. - // Код, вызывающий диалог и обрабатывающий ответ располагаются в одной функции. - // Простая последовательность шагов. - // Удобное отключение шагов. - - Если ТипЗнч(Сценарий.Шаги) = Тип("Строка") Тогда - Сценарий.Шаги = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(Сценарий.Шаги, ",", Истина, Истина); - КонецЕсли; - Сценарий.Вставить("ШагиВГраница", Сценарий.Шаги.ВГраница()); - Сценарий.Вставить("СледующийШагИндекс", 0); - Сценарий.Вставить("ТекущийШаг", Неопределено); - Сценарий.Вставить("ТекущийШагУточнение", ""); - Сценарий.Вставить("Обработчик", Новый ОписаниеОповещения("ВыполнитьСценарий", ЭтотОбъект, Сценарий)); - Сценарий.Вставить("ПричинаОтказа", ""); - - НайтиСледующийШаг(Сценарий); - - ВыполнитьСценарий(Неопределено, Сценарий); -КонецПроцедуры - -&НаКлиенте -Процедура ВыполнитьСценарий(ВыборПользователя, Сценарий) Экспорт - Пока ВыполнитьШаг(ВыборПользователя, Сценарий) Цикл - Если Не НайтиСледующийШаг(Сценарий) Тогда - Прервать; - КонецЕсли; - КонецЦикла; - - Если ЗначениеЗаполнено(Сценарий.ПричинаОтказа) Тогда - ПоказатьПредупреждение(, Сценарий.ПричинаОтказа); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Функция НайтиСледующийШаг(Сценарий) - Если Сценарий.СледующийШагИндекс > Сценарий.ШагиВГраница Тогда - Возврат Ложь; - КонецЕсли; - Сценарий.ТекущийШаг = Сценарий.Шаги.Получить(Сценарий.СледующийШагИндекс); - Сценарий.ТекущийШагУточнение = ""; - Сценарий.СледующийШагИндекс = Сценарий.СледующийШагИндекс + 1; - Возврат Истина; -КонецФункции - -&НаКлиенте -Функция ВыполнитьШаг(ВыборПользователя, Сценарий) - - Если Сценарий.ТекущийШаг = "ОпределитьВыделенныеСтроки" Тогда - Возврат ШагОпределитьВыделенныеСтроки(ВыборПользователя, Сценарий); - - ИначеЕсли Сценарий.ТекущийШаг = "ОтредактироватьГруппуПолей" Тогда - Возврат ШагОтредактироватьГруппуПолей(ВыборПользователя, Сценарий); - - ИначеЕсли Сценарий.ТекущийШаг = "СгруппироватьСтроки" Тогда - Возврат ШагСгруппироватьСтроки(ВыборПользователя, Сценарий); - - ИначеЕсли Сценарий.ТекущийШаг = "СдвинутьСтроки" Тогда - Возврат ШагСдвинутьСтроки(ВыборПользователя, Сценарий); - - ИначеЕсли Сценарий.ТекущийШаг = "УдалитьСтроки" Тогда - Возврат ШагУдалитьСтроки(ВыборПользователя, Сценарий); - - ИначеЕсли Сценарий.ТекущийШаг = "ОбновитьФорму" Тогда - Возврат ШагОбновитьФорму(ВыборПользователя, Сценарий); - - Иначе - Сценарий.ПричинаОтказа = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Ошибка в сценарии: Неизвестный шаг ""%1"".'"), Сценарий.ТекущийШаг); - Возврат Ложь; - - КонецЕсли; - - // Альтернативы этим веткам условий: - // "Вычислить()" - неприемлемо использовать только для минимизации кода; - // "ВыполнитьОбработкуОповещения()" - не выгодно, т.к. поддерживаются только процедуры, - // а следовательно следующий шаг придется запускать из предыдущего шага; - // Т.е. исчезает такой большой плюс как изоляция обработчиков от асинхронной логики. - -КонецФункции - -//////////////////////////////////////////////////////////////////////////////// -// Клиент - Шаги сценарного выполнения. - -&НаКлиенте -Функция ШагОбновитьФорму(ВыборПользователя, Сценарий) - Сценарий.Вставить("ИмяСобытия", Сценарий.ТаблицаИмя + "." + Сценарий.Действие); - - // Временное хранилище несериализуемых параметров. - Хранилище = Новый Структура("Обработчик, СтрокиДерева, ТекущаяСтрока, ТекущийРодитель"); - ЗаполнитьЗначенияСвойств(Хранилище, Сценарий); - Для Каждого КлючИЗначение Из Хранилище Цикл - Сценарий.Удалить(КлючИЗначение.Ключ); - КонецЦикла; - - // Вызов сервера. - БыстрыеНастройкиЗаполнитьКлиент(Сценарий); - - // Возвращение параметров. - ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(Сценарий, Хранилище, Истина); - - Возврат Истина; // Продолжить сценарий. -КонецФункции - -&НаКлиенте -Функция ШагОпределитьВыделенныеСтроки(ВыборПользователя, Сценарий) - // 1. Дополняет структуру сценария информацией: - Сценарий.Вставить("СтрокиДерева", Новый Массив); // Выделенные строки (не идентификаторы). - Сценарий.Вставить("ТекущаяСтрока", Неопределено); // Активная строка (не идентификатор). - // 2. Осуществляет проверку выделенных строк согласно сценарию. - // 3. Останавливает сценарий если ничего не выделено. - ТаблицаЭлемент = Элементы[Сценарий.ТаблицаИмя]; - ТаблицаРеквизит = ЭтотОбъект[Сценарий.ТаблицаИмя]; - ТекущаяСтрокаИдентификатор = ТаблицаЭлемент.ТекущаяСтрока; - - Особенности = Новый Структура("МогутБытьРазделы, МогутБытьПараметры, - |ТребоватьОдногоРодителя"); - Особенности.МогутБытьРазделы = (Сценарий.ТаблицаИмя = "Отборы" Или Сценарий.ТаблицаИмя = "ВыбранныеПоля" Или Сценарий.ТаблицаИмя = "Сортировка"); - Особенности.МогутБытьПараметры = (Сценарий.ТаблицаИмя = "Отборы"); - Особенности.ТребоватьОдногоРодителя = (Сценарий.Действие = "Переместить" Или Сценарий.Действие = "Сгруппировать"); - Если Особенности.ТребоватьОдногоРодителя Тогда - Сценарий.Вставить("ТекущийРодитель", -1); - КонецЕсли; - - ВыделенныеСтроки = МассивСортировать(ТаблицаЭлемент.ВыделенныеСтроки, НаправлениеСортировки.Возр); - Для Каждого СтрокаИдентификатор Из ВыделенныеСтроки Цикл - СтрокаДерева = ТаблицаРеквизит.НайтиПоИдентификатору(СтрокаИдентификатор); - Если Не ЗарегистрироватьВыделеннуюСтроку(Сценарий, СтрокаДерева, Особенности) Тогда - Возврат Ложь; // Завершить сценарий. - КонецЕсли; - Если СтрокаИдентификатор = ТекущаяСтрокаИдентификатор Тогда - Сценарий.ТекущаяСтрока = СтрокаДерева; - КонецЕсли; - КонецЦикла; - Если Сценарий.СтрокиДерева.Количество() = 0 Тогда - Сценарий.ПричинаОтказа = НСтр("ru = 'Выберите элементы.'"); - Возврат Ложь; // Завершить сценарий. - КонецЕсли; - Если Сценарий.ТекущаяСтрока = Неопределено Тогда - Если Сценарий.Действие = "ИзменитьГруппу" Тогда - Сценарий.ПричинаОтказа = НСтр("ru = 'Выберите группу.'"); - Возврат Ложь; // Завершить сценарий. - КонецЕсли; - КонецЕсли; - - Возврат Истина; // Продолжить сценарий. -КонецФункции - -&НаКлиенте -Функция ЗарегистрироватьВыделеннуюСтроку(Сценарий, СтрокаДерева, Особенности) - Если Сценарий.СтрокиДерева.Найти(СтрокаДерева) <> Неопределено Тогда - Возврат Истина; // Пропустить строку. - КонецЕсли; - Если Особенности.МогутБытьРазделы И СтрокаДерева.ЭтоРаздел Тогда - Возврат Истина; // Пропустить строку. - КонецЕсли; - Если Особенности.МогутБытьПараметры И СтрокаДерева.ЭтоПараметр Тогда - Если Сценарий.Действие = "Переместить" Тогда - Сценарий.ПричинаОтказа = НСтр("ru = 'Параметры не могут быть перемещены.'"); - ИначеЕсли Сценарий.Действие = "Сгруппировать" Тогда - Сценарий.ПричинаОтказа = НСтр("ru = 'Параметры не могут быть участниками групп.'"); - ИначеЕсли Сценарий.Действие = "Удалить" Тогда - Сценарий.ПричинаОтказа = НСтр("ru = 'Параметры не могут быть удалены.'"); - КонецЕсли; - Возврат Ложь; // Завершить сценарий. - КонецЕсли; - Если Особенности.ТребоватьОдногоРодителя Тогда - Родитель = СтрокаДерева.ПолучитьРодителя(); - Если Сценарий.ТекущийРодитель = -1 Тогда - Сценарий.ТекущийРодитель = Родитель; - ИначеЕсли Сценарий.ТекущийРодитель <> Родитель Тогда - Если Сценарий.Действие = "Переместить" Тогда - Сценарий.ПричинаОтказа = НСтр("ru = 'Выбранные элементы не могут быть перемещены, поскольку они принадлежат разным родителям.'"); - ИначеЕсли Сценарий.Действие = "Сгруппировать" Тогда - Сценарий.ПричинаОтказа = НСтр("ru = 'Выбранные элементы не могут быть сгруппированы, поскольку они принадлежат разным родителям.'"); - КонецЕсли; - Возврат Ложь; // Завершить сценарий. - КонецЕсли; - КонецЕсли; - Сценарий.СтрокиДерева.Добавить(СтрокаДерева); - Возврат Истина; // Следующая строка. -КонецФункции - -&НаКлиенте -Функция ШагОтредактироватьГруппуПолей(ВыборПользователя, Сценарий) - // По результатам редактирования группы дополняет структуру сценария информацией: - // * ЗаголовокГруппы - Строка - // * Расположение - РасположениеПоляКомпоновкиДанных. - - Если Сценарий.ТекущийШагУточнение = "" Тогда // Первый вызов - ПараметрыФормы = Новый Структура; - Если Сценарий.Действие = "ИзменитьГруппу" Тогда - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, Сценарий.ТаблицаИмя, Сценарий.ТекущаяСтрока); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(Сценарий.ТекущаяСтрока.ИдентификаторКД); - ПараметрыФормы.Вставить("ЗаголовокГруппы", ЭлементКД.Заголовок); - ПараметрыФормы.Вставить("Расположение", ЭлементКД.Расположение); - Иначе - ПараметрыФормы.Вставить("Расположение", РасположениеПоляКомпоновкиДанных.Авто); - КонецЕсли; - - Блокировать = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; - - Сценарий.ТекущийШагУточнение = "ОбработкаВыбора"; - ОткрытьФорму("ХранилищеНастроек.ХранилищеВариантовОтчетов.Форма.ГруппаВыбранныхПолей", ПараметрыФормы, ЭтотОбъект, Истина, , , Сценарий.Обработчик, Блокировать); - Возврат Ложь; // Приостановить сценарий. - - ИначеЕсли Сценарий.ТекущийШагУточнение = "ОбработкаВыбора" Тогда // После закрытия формы. - - Если ВыборПользователя = Неопределено Или ВыборПользователя = КодВозвратаДиалога.Отмена Тогда - Возврат Ложь; // Отменить сценарий. - КонецЕсли; - - Сценарий.Вставить("ЗаголовокГруппы", ВыборПользователя.ЗаголовокГруппы); - Сценарий.Вставить("Расположение", ВыборПользователя.Расположение); - Возврат Истина; // Продолжить сценарий. - - КонецЕсли; - -КонецФункции - -&НаКлиенте -Функция ШагСгруппироватьСтроки(ВыборПользователя, Сценарий) - ТекущийРодитель = Сценарий.ТекущийРодитель; - ТаблицаЭлемент = Элементы[Сценарий.ТаблицаИмя]; - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, Сценарий.ТаблицаИмя, Неопределено); - - Если Сценарий.ТекущийРодитель = Неопределено Тогда - ТаблицаРеквизит = ЭтотОбъект[Сценарий.ТаблицаИмя]; - Если Сценарий.ТаблицаИмя = "Отборы" И Не РежимИзмененияУзлаВарианта Тогда - ТекущийРодитель = ТаблицаРеквизит.ПолучитьЭлементы()[1]; - Иначе - ТекущийРодитель = ТаблицаРеквизит; - КонецЕсли; - ТекущийРодительКД = УзелКД; - ИначеЕсли ТипЗнч(ТекущийРодитель.ИдентификаторКД) <> Тип("ИдентификаторКомпоновкиДанных") Тогда - ТекущийРодительКД = УзелКД; - Иначе - ТекущийРодительКД = УзелКД.ПолучитьОбъектПоИдентификатору(ТекущийРодитель.ИдентификаторКД); - КонецЕсли; - СтрокиРодителя = ТекущийРодитель.ПолучитьЭлементы(); - СтрокиРодителяКД = ТекущийРодительКД.Элементы; - - // Проверки пройдены. Добавление группы в родителя родителя. - Группы = ТаблицыПолейВставить(Сценарий.ТаблицаИмя, Сценарий.ТипГруппыКД, 0, Ложь); - - ЭлементКД = Группы.ЭлементКД; - ЭлементКД.Использование = Истина; - НоваяКоллекцияЭлементовКД = ЭлементКД.Элементы; - - ГруппаДерева = Группы.СтрокаТаблицы; - ГруппаДерева.Использование = ЭлементКД.Использование; - ГруппаДерева.ЭтоГруппа = Истина; - НоваяКоллекцияСтрокДерева = ГруппаДерева.ПолучитьЭлементы(); - - Если Сценарий.ТаблицаИмя = "Отборы" Тогда - ГруппаДерева.Представление = Строка(ЭлементКД.ТипГруппы); - ГруппаДерева.ИндексКартинки = -1; - ГруппаДерева.ИндексКартинкиДоступа = 5; - ГруппаДерева.Заголовок = ГруппаДерева.Представление; - Иначе - ЭлементКД.Заголовок = Сценарий.ЗаголовокГруппы; - ЭлементКД.Расположение = Сценарий.Расположение; - ГруппаДерева.ИндексКартинки = 1; - ГруппаДерева.Представление = ЭлементКД.Заголовок; - Если ЭлементКД.Расположение <> РасположениеПоляКомпоновкиДанных.Авто Тогда - ГруппаДерева.Представление = ГруппаДерева.Представление + " (" + Строка(ЭлементКД.Расположение) + ")"; - КонецЕсли; - КонецЕсли; - - Для Каждого СтараяСтрокаДерева Из Сценарий.СтрокиДерева Цикл - СтарыйЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтараяСтрокаДерева.ИдентификаторКД); - ТаблицыПолейСкопироватьРекурсивно(УзелКД, СтараяСтрокаДерева, НоваяКоллекцияСтрокДерева, СтарыйЭлементКД, НоваяКоллекцияЭлементовКД); - СтрокиРодителя.Удалить(СтараяСтрокаДерева); - СтрокиРодителяКД.Удалить(СтарыйЭлементКД); - КонецЦикла; - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; - - Возврат Истина; // Продолжить сценарий. -КонецФункции - -&НаКлиенте -Функция ШагСдвинутьСтроки(ВыборПользователя, Сценарий) - ТекущийРодитель = Сценарий.ТекущийРодитель; - ТаблицаЭлемент = Элементы[Сценарий.ТаблицаИмя]; - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, Сценарий.ТаблицаИмя, Неопределено); - - Если Сценарий.ТекущийРодитель = Неопределено Тогда - ТаблицаРеквизит = ЭтотОбъект[Сценарий.ТаблицаИмя]; - Если Сценарий.ТаблицаИмя = "Отборы" И Не РежимИзмененияУзлаВарианта Тогда - ТекущийРодитель = ТаблицаРеквизит.ПолучитьЭлементы()[1]; - Иначе - ТекущийРодитель = ТаблицаРеквизит; - КонецЕсли; - ТекущийРодительКД = УзелКД; - ИначеЕсли ТипЗнч(ТекущийРодитель.ИдентификаторКД) <> Тип("ИдентификаторКомпоновкиДанных") Тогда - ТекущийРодительКД = УзелКД; - Иначе - ТекущийРодительКД = УзелКД.ПолучитьОбъектПоИдентификатору(ТекущийРодитель.ИдентификаторКД); - КонецЕсли; - СтрокиРодителя = ТекущийРодитель.ПолучитьЭлементы(); - СтрокиРодителяКД = ПолучитьЭлементыКД(УзелКД, ТекущийРодительКД); - - ВерхняяГраницаСтрок = СтрокиРодителя.Количество() - 1; - ВыделеноСтрок = Сценарий.СтрокиДерева.Количество(); - - // Массив выделенных строк на встречу движению: - // Если двигаем строки в "+", то обходим "от большего к меньшему"; - // Если в "-", то обходим "от меньшего к большему". - ДвигаемсяПоВозрастанию = (Сценарий.Направление < 0); - - Для Номер = 1 По ВыделеноСтрок Цикл - Если ДвигаемсяПоВозрастанию Тогда - ИндексВМассиве = Номер - 1; - Иначе - ИндексВМассиве = ВыделеноСтрок - Номер; - КонецЕсли; - - СтрокаДерева = Сценарий.СтрокиДерева[ИндексВМассиве]; - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаДерева.ИдентификаторКД); - - ИндексВДереве = СтрокиРодителя.Индекс(СтрокаДерева); - ГдеОкажетсяСтрока = ИндексВДереве + Сценарий.Направление; - Если ГдеОкажетсяСтрока < 0 Тогда // Перемещаем "в конец". - СтрокиРодителя.Сдвинуть(ИндексВДереве, ВерхняяГраницаСтрок - ИндексВДереве); - СтрокиРодителяКД.Сдвинуть(ЭлементКД, ВерхняяГраницаСтрок - ИндексВДереве); - ИначеЕсли ГдеОкажетсяСтрока > ВерхняяГраницаСтрок Тогда // Перемещаем "в начало". - СтрокиРодителя.Сдвинуть(ИндексВДереве, -ИндексВДереве); - СтрокиРодителяКД.Сдвинуть(ЭлементКД, -ИндексВДереве); - Иначе - СтрокиРодителя.Сдвинуть(ИндексВДереве, Сценарий.Направление); - СтрокиРодителяКД.Сдвинуть(ЭлементКД, Сценарий.Направление); - КонецЕсли; - КонецЦикла; - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; - - Возврат Истина; // Продолжить сценарий. -КонецФункции - -&НаКлиенте -Функция ШагУдалитьСтроки(ВыборПользователя, Сценарий) - - ТаблицаРеквизит = ЭтотОбъект[Сценарий.ТаблицаИмя]; - - Для Каждого СтрокаТаблицы Из Сценарий.СтрокиДерева Цикл - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, Сценарий.ТаблицаИмя, СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - - СтрокаРодитель = СтрокаТаблицы.ПолучитьРодителя(); - РодительКД = НайтиОбъектКД(УзелКД, СтрокаРодитель); - - ОткудаУдалить = ПолучитьЭлементы(ТаблицаРеквизит, СтрокаРодитель); - ОткудаУдалить.Удалить(СтрокаТаблицы); - - ОткудаУдалитьКД = ПолучитьЭлементыКД(УзелКД, РодительКД); - ОткудаУдалитьКД.Удалить(ЭлементКД); - - КонецЦикла; - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; - - Возврат Истина; // Продолжить сценарий. -КонецФункции - -//////////////////////////////////////////////////////////////////////////////// -// Клиент - Параметры и отборы. - -&НаКлиенте -Процедура ОтборыПоказатьВыборПериода(СтрокаТаблицы) - Контекст = Новый Структура; - Контекст.Вставить("СтрокаИдентификатор", СтрокаТаблицы.ПолучитьИдентификатор()); - Обработчик = Новый ОписаниеОповещения("ОтборыЗавершениеВыбораПериода", ЭтотОбъект, Контекст); - Диалог = Новый ДиалогРедактированияСтандартногоПериода; - Диалог.Период = СтрокаТаблицы.Значение; - Диалог.Показать(Обработчик); -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыЗавершениеВыбораПериода(Период, Контекст) Экспорт - Если Период = Неопределено Тогда - Возврат; - КонецЕсли; - - СтрокаТаблицы = Отборы.НайтиПоИдентификатору(Контекст.СтрокаИдентификатор); - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, "Отборы", СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат; - КонецЕсли; - - СтрокаТаблицы.Значение = Период; - СтрокаТаблицы.Условие = ОтчетыКлиентСервер.ПолучитьВидСтандартногоПериода(СтрокаТаблицы.Значение); - - Если СтрокаТаблицы.ЭтоПараметр Тогда - ЭлементКД.Значение = СтрокаТаблицы.Значение; - Иначе - ЭлементКД.ПравоеЗначение = СтрокаТаблицы.Значение; - КонецЕсли; - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыПоказатьВыборСсылки(СтрокаТаблицы, СтандартнаяОбработка) - ПараметрыФормы = ПараметрыВыбораОтбора(СтрокаТаблицы); - Если ПараметрыФормы = Неопределено Тогда - СтандартнаяОбработка = Истина; - Возврат; - КонецЕсли; - - Анализ = ОтчетыКлиентСервер.АнализТипов(ПараметрыФормы.ОписаниеТипов, Ложь); - Если Не Анализ.СодержитОбъектныеТипы Тогда - СтандартнаяОбработка = Истина; - Возврат; - КонецЕсли; - - ПараметрыФормы.Вставить("МножественныйВыбор", Ложь); - ПараметрыФормы.Вставить("Отмеченные", ОтчетыКлиентСервер.ЗначенияСписком(СтрокаТаблицы.Значение)); - ПараметрыФормы.Вставить("Представление", СтрокаТаблицы.Представление); - - Контекст = Новый Структура; - Контекст.Вставить("СтрокаИдентификатор", СтрокаТаблицы.ПолучитьИдентификатор()); - Контекст.Вставить("ПараметрыФормы", ПараметрыФормы); - - Обработчик = Новый ОписаниеОповещения("ОтборыПоказатьВыборСсылкиПослеВыбораТипа", ЭтотОбъект, Контекст); - - // Полное имя формы выбора. - // Свойство "ФормаВыбора" недоступно на клиенте даже для чтения, - // поэтому для хранения предустановленных имен форм выбора используется коллекция БыстрыйПоискИменОбъектовМетаданных. - Если ЗначениеЗаполнено(ПараметрыФормы.ПутьКФорме) Тогда - ВыполнитьОбработкуОповещения(Обработчик, ПараметрыФормы.ПутьКФорме); - Иначе - // Выбор типа из списка. - СписокВыбора = Новый СписокЗначений; - СписокВыбора.ЗагрузитьЗначения(Анализ.ОбъектныеТипы); - - Если СписокВыбора.Количество() = 1 Тогда // Один тип - выбор не требуется. - ВыполнитьОбработкуОповещения(Обработчик, СписокВыбора[0]); - Иначе - ПоказатьВыборИзСписка(Обработчик, СписокВыбора); - КонецЕсли; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыПоказатьВыборСсылкиПослеВыбораТипа(ПутьКФормеИлиЭлементСписка, Контекст) Экспорт - Если ТипЗнч(ПутьКФормеИлиЭлементСписка) = Тип("Строка") Тогда - ПутьКФорме = ПутьКФормеИлиЭлементСписка; - ИначеЕсли ТипЗнч(ПутьКФормеИлиЭлементСписка) = Тип("ЭлементСпискаЗначений") Тогда - Тип = ПутьКФормеИлиЭлементСписка.Значение; - ИмяОбъектаМетаданных = БыстрыйПоискИменОбъектовМетаданных.Получить(Тип); - Если Контекст.ПараметрыФормы.ВыборГруппИЭлементов = ГруппыИЭлементы.Группы Тогда - ВидОбъектаМетаданных = ВРег(СтрРазделить(ИмяОбъектаМетаданных, ".")[0]); - Если ВидОбъектаМетаданных = "СПРАВОЧНИК" Или ВидОбъектаМетаданных = "ПЛАНВИДОВХАРАКТЕРИСТИК" Тогда - ПутьКФорме = ИмяОбъектаМетаданных + ".ФормаВыбораГруппы"; - Иначе - ПутьКФорме = ИмяОбъектаМетаданных + ".ФормаВыбора"; - КонецЕсли; - Иначе - ПутьКФорме = ИмяОбъектаМетаданных + ".ФормаВыбора"; - КонецЕсли; - Иначе - Возврат; - КонецЕсли; - - Обработчик = Новый ОписаниеОповещения("ОтборыЗавершениеВыбораСсылки", ЭтотОбъект, Контекст); - - Блокировать = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; - - ОткрытьФорму(ПутьКФорме, Контекст.ПараметрыФормы, ЭтотОбъект, , , , Обработчик, Блокировать); -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыЗавершениеВыбораСсылки(Ссылка, Контекст) Экспорт - Если Не Контекст.ПараметрыФормы.ОписаниеТипов.СодержитТип(ТипЗнч(Ссылка)) Или Не ЗначениеЗаполнено(Ссылка) Тогда - Возврат; - КонецЕсли; - - СтрокаТаблицы = Отборы.НайтиПоИдентификатору(Контекст.СтрокаИдентификатор); - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, "Отборы", СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат; - КонецЕсли; - - СтрокаТаблицы.Значение = Ссылка; - - Если СтрокаТаблицы.ЭтоПараметр Тогда - ЭлементКД.Значение = Ссылка; - Иначе - ЭлементКД.ПравоеЗначение = Ссылка; - КонецЕсли; - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыПоказатьСписокСФлажками(СтрокаТаблицы) - ПараметрыФормы = ПараметрыВыбораОтбора(СтрокаТаблицы); - Если ПараметрыФормы = Неопределено Тогда - Возврат; - КонецЕсли; - - ПараметрыОбработчика = Новый Структура; - ПараметрыОбработчика.Вставить("СтрокаИдентификатор", СтрокаТаблицы.ПолучитьИдентификатор()); - Обработчик = Новый ОписаниеОповещения("ОтборыЗавершениеВводаСпискомСФлажками", ЭтотОбъект, ПараметрыОбработчика); - - ПараметрыФормы.Вставить("Отмеченные", ОтчетыКлиентСервер.ЗначенияСписком(СтрокаТаблицы.Значение)); - ПараметрыФормы.Вставить("Представление", СтрокаТаблицы.Представление); - - Блокировать = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; - - ОткрытьФорму("ОбщаяФорма.ВводЗначенийСпискомСФлажками", ПараметрыФормы, ЭтотОбъект, , , , Обработчик, Блокировать); -КонецПроцедуры - -&НаКлиенте -Функция ПараметрыВыбораОтбора(СтрокаТаблицы) - ИдентификаторЭлемента = СтрокаТаблицы.ПолучитьИдентификатор(); - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, "Отборы", СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат Неопределено; - КонецЕсли; - - Результат = Новый Структура("ЗначенияДляВыбора, ОграничиватьВыборУказаннымиЗначениями, ОписаниеТипов"); - - ДополнительныеНастройки = СтрокаТаблицы.Дополнительно; - ЗаполнитьЗначенияСвойств(Результат, ДополнительныеНастройки); - - ВыборГруппИЭлементов = ОтчетыКлиентСервер.ПривестиЗначениеКТипуГруппыИЭлементы( - СтрокаТаблицы.Условие, - СтрокаТаблицы.ВыборГруппИЭлементов); - - // Включенный флажок ВводСписком означает что параметры готовятся для промежуточной формы ВводЗначенийСпискомСФлажками. - Результат.Вставить("ВводСписком", СтрокаТаблицы.ВводСписком); - - // Стандартные параметры формы. - Результат.Вставить("ЗакрыватьПриВыборе", Истина); - Результат.Вставить("ЗакрыватьПриЗакрытииВладельца", Истина); - Результат.Вставить("Отбор", Новый Структура); - // Стандартные параметры формы выбора (см. Расширение управляемой формы для динамического списка). - Результат.Вставить("ВыборГруппИЭлементов", ВыборГруппИЭлементов); - Результат.Вставить("МножественныйВыбор", Ложь); - Результат.Вставить("РежимВыбора", Истина); - // Предполагаемые реквизиты. - Результат.Вставить("РежимОткрытияОкна", РежимОткрытияОкнаФормы.БлокироватьОкноВладельца); - Результат.Вставить("РазрешитьНачалоПеретаскивания", Ложь); - - Результат.Вставить("ПутьКФорме", ДополнительныеНастройки.ФормаВыбора); - - Результат.Вставить("ПараметрыВыбора", Новый Массив); - Результат.Вставить("КлючУникальности", ЭлементКД.ИдентификаторПользовательскойНастройки); - - // Фиксированные параметры выбора и связи от скрытых ведущих (предопределенные в текущем контексте). - Для Каждого ПараметрВыбора Из ДополнительныеНастройки.ПараметрыВыбора Цикл - Если ПустаяСтрока(ПараметрВыбора.Имя) Тогда - Продолжить; - КонецЕсли; - Если Результат.ВводСписком Тогда - Результат.ПараметрыВыбора.Добавить(ПараметрВыбора); - Иначе - Если ВРег(Лев(ПараметрВыбора.Имя, 6)) = ВРег("Отбор.") Тогда - Результат.Отбор.Вставить(Сред(ПараметрВыбора.Имя, 7), ПараметрВыбора.Значение); - Иначе - Результат.Вставить(ПараметрВыбора.Имя, ПараметрВыбора.Значение); - КонецЕсли; - КонецЕсли; - КонецЦикла; - - // Динамические связи от ведущих. - Связи = ОтключаемыеСвязи.НайтиСтроки(Новый Структура("ПодчиненныйИдентификаторВФорме", ИдентификаторЭлемента)); - Для Каждого Связь Из Связи Цикл - СтрокаВедущий = Отборы.НайтиПоИдентификатору(Связь.ВедущийИдентификаторВФорме); - Если СтрокаВедущий = Неопределено Тогда - Продолжить; - КонецЕсли; - Если Не СтрокаВедущий.Использование Тогда - Продолжить; - КонецЕсли; - ЗначениеВедущего = СтрокаВедущий.Значение; - ТипЗначенияВедущего = ТипЗнч(ЗначениеВедущего); - Если Связь.ТипСвязи = "ПоТипу" Тогда - Если СтрокаВедущий.Условие <> ВидСравненияКомпоновкиДанных.Равно Тогда - Продолжить; - КонецЕсли; - Результат.Вставить("ОграничениеТипа", ТипЗначенияВедущего); - Если Результат.ОписаниеТипов.СодержитТип(ТипЗначенияВедущего) Тогда - Вычитаемые = Результат.ОписаниеТипов.Типы(); - Вычитаемые.Удалить(Вычитаемые.Найти(ТипЗначенияВедущего)); - Результат.ОписаниеТипов = Новый ОписаниеТипов(Результат.ОписаниеТипов, , Вычитаемые); - КонецЕсли; - ИначеЕсли Связь.ТипСвязи = "ПоМетаданным" Или Связь.ТипСвязи = "ПараметровВыбора" Тогда - Если Связь.ТипСвязи = "ПоМетаданным" И Не Связь.ВедущийТип.СодержитТип(ТипЗначенияВедущего) Тогда - Продолжить; - КонецЕсли; - Если Результат.ВводСписком Тогда - Результат.ПараметрыВыбора.Добавить(Новый ПараметрВыбора(Связь.ПодчиненныйИмяПараметра, ЗначениеВедущего)); - Иначе - Если ВРег(Лев(Связь.ПодчиненныйИмяПараметра, 6)) = ВРег("Отбор.") Тогда - Результат.Отбор.Вставить(Сред(Связь.ПодчиненныйИмяПараметра, 7), ЗначениеВедущего); - Иначе - Результат.Вставить(Связь.ПодчиненныйИмяПараметра, ЗначениеВедущего); - КонецЕсли; - КонецЕсли; - КонецЕсли; - КонецЦикла; - - Возврат Результат; -КонецФункции - -&НаКлиенте -Процедура ОтборыЗавершениеВводаСпискомСФлажками(РезультатВыбора, Контекст) Экспорт - Если ТипЗнч(РезультатВыбора) <> Тип("СписокЗначений") Тогда - Возврат; - КонецЕсли; - - СтрокаТаблицы = Отборы.НайтиПоИдентификатору(Контекст.СтрокаИдентификатор); - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, "Отборы", СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат; - КонецЕсли; - - ДополнительныеНастройки = СтрокаТаблицы.Дополнительно; - - // Загрузка выбранных значений в 2 списка. - СписокЗначенийВСКД = Новый СписокЗначений; - Если Не ДополнительныеНастройки.ОграничиватьВыборУказаннымиЗначениями Тогда - ДополнительныеНастройки.ЗначенияДляВыбора = Новый СписокЗначений; - КонецЕсли; - Для Каждого ЭлементСпискаВФорме Из РезультатВыбора Цикл - ЗначениеВФорме = ЭлементСпискаВФорме.Значение; - Если Не ДополнительныеНастройки.ОграничиватьВыборУказаннымиЗначениями Тогда - Если ДополнительныеНастройки.ЗначенияДляВыбора.НайтиПоЗначению(ЗначениеВФорме) <> Неопределено Тогда - Продолжить; - КонецЕсли; - ЗаполнитьЗначенияСвойств(ДополнительныеНастройки.ЗначенияДляВыбора.Добавить(), ЭлементСпискаВФорме); - КонецЕсли; - Если ЭлементСпискаВФорме.Пометка Тогда - ОтчетыКлиентСервер.ДобавитьУникальноеЗначениеВСписок(СписокЗначенийВСКД, ЗначениеВФорме, ЭлементСпискаВФорме.Представление, Истина); - КонецЕсли; - КонецЦикла; - Если ТипЗнч(ЭлементКД) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда - ЭлементКД.ПравоеЗначение = СписокЗначенийВСКД; - Иначе - ЭлементКД.Значение = СписокЗначенийВСКД; - КонецЕсли; - СтрокаТаблицы.Значение = СписокЗначенийВСКД; - - // Включение флажка Использование. - ЭлементКД.Использование = Истина; - СтрокаТаблицы.Использование = Истина; - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыВыбратьВидСравнения(СтрокаТаблицы) - Если СтрокаТаблицы.ЭтоПараметр Тогда - Возврат; - КонецЕсли; - - Контекст = Новый Структура; - Контекст.Вставить("СтрокаИдентификатор", СтрокаТаблицы.ПолучитьИдентификатор()); - Обработчик = Новый ОписаниеОповещения("ОтборыЗавершениеВыбораВидаСравнения", ЭтотОбъект, Контекст); - - ИнформацияОТипах = ОтчетыКлиентСервер.АнализТипов(СтрокаТаблицы.ТипЗначения, Ложь); - - Список = Новый СписокЗначений; - - ФиксированныйСписок = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(СтрокаТаблицы.Дополнительно, "ОграничиватьВыборУказаннымиЗначениями", Ложь); - Если ИнформацияОТипах.ОграниченнойДлины Или ФиксированныйСписок Тогда - - Список.Добавить(ВидСравненияКомпоновкиДанных.Равно); - Список.Добавить(ВидСравненияКомпоновкиДанных.НеРавно); - - Список.Добавить(ВидСравненияКомпоновкиДанных.ВСписке); - Список.Добавить(ВидСравненияКомпоновкиДанных.НеВСписке); - - КонецЕсли; - - Если ИнформацияОТипах.ОграниченнойДлины - И ИнформацияОТипах.СодержитОбъектныеТипы Тогда - - Список.Добавить(ВидСравненияКомпоновкиДанных.ВСпискеПоИерархии); // НСтр("ru = 'В списке включая подчиненные'") - Список.Добавить(ВидСравненияКомпоновкиДанных.НеВСпискеПоИерархии); // НСтр("ru = 'Не в списке включая подчиненные'"). - - Список.Добавить(ВидСравненияКомпоновкиДанных.ВИерархии); // НСтр("ru = 'В группе'") - Список.Добавить(ВидСравненияКомпоновкиДанных.НеВИерархии); // НСтр("ru = 'Не в группе'") - - КонецЕсли; - - Если ИнформацияОТипах.ОграниченнойДлины - И ИнформацияОТипах.КоличествоПримитивныхТипов > 0 Тогда - - Список.Добавить(ВидСравненияКомпоновкиДанных.Меньше); - Список.Добавить(ВидСравненияКомпоновкиДанных.МеньшеИлиРавно); - - Список.Добавить(ВидСравненияКомпоновкиДанных.Больше); - Список.Добавить(ВидСравненияКомпоновкиДанных.БольшеИлиРавно); - - КонецЕсли; - - Если Не ФиксированныйСписок И ИнформацияОТипах.СодержитТипСтрока Тогда - - Список.Добавить(ВидСравненияКомпоновкиДанных.Содержит); - Список.Добавить(ВидСравненияКомпоновкиДанных.НеСодержит); - - Список.Добавить(ВидСравненияКомпоновкиДанных.Подобно); - Список.Добавить(ВидСравненияКомпоновкиДанных.НеПодобно); - - Список.Добавить(ВидСравненияКомпоновкиДанных.НачинаетсяС); - Список.Добавить(ВидСравненияКомпоновкиДанных.НеНачинаетсяС); - - КонецЕсли; - - Если ИнформацияОТипах.ОграниченнойДлины Или ФиксированныйСписок Тогда - - Список.Добавить(ВидСравненияКомпоновкиДанных.Заполнено); - Список.Добавить(ВидСравненияКомпоновкиДанных.НеЗаполнено); - - КонецЕсли; - - ПоказатьВыборИзМеню(Обработчик, Список, Элементы.Отборы); - -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыЗавершениеВыбораВидаСравнения(Результат, Контекст) Экспорт - Если Результат = Неопределено Тогда - Возврат; - КонецЕсли; - - СтрокаТаблицы = Отборы.НайтиПоИдентификатору(Контекст.СтрокаИдентификатор); - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, "Отборы", СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат; - КонецЕсли; - - СтрокаТаблицы.Условие = Результат.Значение; - ЭлементКД.ВидСравнения = Результат.Значение; - - БылВводСписком = СтрокаТаблицы.ВводСписком; - СталВводСписком = Ложь; - Если СтрокаТаблицы.Условие = ВидСравненияКомпоновкиДанных.ВСписке - Или СтрокаТаблицы.Условие = ВидСравненияКомпоновкиДанных.ВСпискеПоИерархии - Или СтрокаТаблицы.Условие = ВидСравненияКомпоновкиДанных.НеВСписке - Или СтрокаТаблицы.Условие = ВидСравненияКомпоновкиДанных.НеВСпискеПоИерархии Тогда - Элементы.ОтборыЗначение.ВыборГруппИЭлементов = ГруппыИЭлементы.ГруппыИЭлементы; - СталВводСписком = Истина; - ИначеЕсли СтрокаТаблицы.Условие = ВидСравненияКомпоновкиДанных.ВИерархии - Или СтрокаТаблицы.Условие = ВидСравненияКомпоновкиДанных.НеВИерархии Тогда - Элементы.ОтборыЗначение.ВыборГруппИЭлементов = ГруппыИЭлементы.Группы; - Иначе - Элементы.ОтборыЗначение.ВыборГруппИЭлементов = СтрокаТаблицы.ВыборГруппИЭлементов; - КонецЕсли; - - Если БылВводСписком <> СталВводСписком Тогда - Если БылВводСписком Тогда - Если ТипЗнч(ЭлементКД.ПравоеЗначение) = Тип("СписокЗначений") - И ЭлементКД.ПравоеЗначение.Количество() > 0 Тогда - ЭлементКД.ПравоеЗначение = ЭлементКД.ПравоеЗначение[0].Значение; - Иначе - ЭлементКД.ПравоеЗначение = Неопределено; - КонецЕсли; - Иначе - ЭлементКД.ПравоеЗначение = ОтчетыКлиентСервер.ЗначенияСписком(ЭлементКД.ПравоеЗначение); - КонецЕсли; - Обновить(); // Серьезные изменения, для учета всех связей и особенностей вывода следует перерисовать полностью. - КонецЕсли; - - УстановитьМодифицированность(); -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыВыбратьЗначениеИзСписка(СтрокаТаблицы) - Если СтрокаТаблицы.Дополнительно = Неопределено Тогда - Возврат; - КонецЕсли; - ЗначенияДляВыбора = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(СтрокаТаблицы.Дополнительно, "ЗначенияДляВыбора"); - Если ТипЗнч(ЗначенияДляВыбора) <> Тип("СписокЗначений") Или ЗначенияДляВыбора.Количество() = 0 Тогда - Возврат; - КонецЕсли; - Контекст = Новый Структура; - Контекст.Вставить("СтрокаИдентификатор", СтрокаТаблицы.ПолучитьИдентификатор()); - Обработчик = Новый ОписаниеОповещения("ОтборыЗавершениеВыбораЗначенияИзСписка", ЭтотОбъект, Контекст); - ПоказатьВыборИзМеню(Обработчик, ЗначенияДляВыбора, Элементы.Отборы); -КонецПроцедуры - -&НаКлиенте -Процедура ОтборыЗавершениеВыбораЗначенияИзСписка(Результат, Контекст) Экспорт - Если Результат = Неопределено Тогда - Возврат; - КонецЕсли; - - СтрокаТаблицы = Отборы.НайтиПоИдентификатору(Контекст.СтрокаИдентификатор); - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, "Отборы", СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат; - КонецЕсли; - - // Отражение изменений в значении. - Если ТипЗнч(ЭлементКД) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда - ЭлементКД.ПравоеЗначение = Результат.Значение; - Иначе - ЭлементКД.Значение = Результат.Значение; - КонецЕсли; - СтрокаТаблицы.ПредставлениеЗначения = Результат.Представление; - - // Включение флажка Использование. - ЭлементКД.Использование = Истина; - СтрокаТаблицы.Использование = Истина; - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Клиент - Структура варианта. - -&НаКлиенте -Процедура СтруктураВариантаИзменитьУзел(ТаблицаИмя, СтрокаИдентификатор, СтрокаТаблицы, ИмяСтраницы) - Контекст = Новый Структура("ТаблицаИмя, СтрокаИдентификатор", ТаблицаИмя, СтрокаИдентификатор); - Обработчик = Новый ОписаниеОповещения("СтруктураВариантаИзменитьУзелЗавершение", ЭтотОбъект, Контекст); - - ШаблонЗаголовка = НСтр("ru = 'Настройка %1 отчета ""%2""'"); - Если СтрокаТаблицы.Тип = "Диаграмма" Тогда - ПредставлениеУзла = НСтр("ru = 'диаграммы'"); - Иначе - ПредставлениеУзла = НСтр("ru = 'группировки'"); - КонецЕсли; - Если ЗначениеЗаполнено(СтрокаТаблицы.Заголовок) Тогда - ПредставлениеУзла = ПредставлениеУзла + " """ + СтрокаТаблицы.Заголовок + """"; - КонецЕсли; - - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("КлючВарианта", Строка(КлючТекущегоВарианта)); - ПараметрыФормы.Вставить("Вариант", Отчет.КомпоновщикНастроек.Настройки); - ПараметрыФормы.Вставить("ПользовательскиеНастройки", Отчет.КомпоновщикНастроек.ПользовательскиеНастройки); - ПараметрыФормы.Вставить("НастройкиОтчета", НастройкиОтчета); - ПараметрыФормы.Вставить("ВариантНаименование", ВариантНаименование); - ПараметрыФормы.Вставить("ИдентификаторТекущегоУзлаКД", СтрокаТаблицы.ИдентификаторКД); - ПараметрыФормы.Вставить("ТипТекущегоУзлаКД", СтрокаТаблицы.Тип); - ПараметрыФормы.Вставить("Заголовок", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(ШаблонЗаголовка, ПредставлениеУзла, ВариантНаименование)); - Если ИмяСтраницы <> Неопределено Тогда - ПараметрыФормы.Вставить("ИмяСтраницы", ИмяСтраницы); - КонецЕсли; - - Режим = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; - - ВыполнятьЗамеры = НастройкиОтчета.ВыполнятьЗамеры И ЗначениеЗаполнено(НастройкиОтчета.КлючЗамеров); - Если ВыполнятьЗамеры Тогда - ИдентификаторЗамера = Новый УникальныйИдентификатор; - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - МодульОценкаПроизводительностиКлиентСервер.НачатьРучнойЗамерВремени( - НастройкиОтчета.КлючЗамеров + ".Настройки", - ИдентификаторЗамера, - НастройкиОтчета.ПрефиксЗамеров); - КонецЕсли; - - ОткрытьФорму(НастройкиОтчета.ПолноеИмя + ".ФормаНастроек", ПараметрыФормы, ЭтотОбъект, , , , Обработчик, Режим); -КонецПроцедуры - -&НаКлиенте -Процедура СтруктураВариантаИзменитьУзелЗавершение(Результат, Контекст) Экспорт - Если Результат = Неопределено Или Результат = КодВозвратаДиалога.Отмена Тогда - Возврат; - КонецЕсли; - РезультатКлиента = БыстрыеНастройкиЗаполнить(Результат); - ПоказатьРезультатЗаполненияНастроек(РезультатКлиента); -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Клиент - Таблицы полей (универсальные точки входа). - -&НаКлиенте -Процедура ТаблицыПолейИзменитьУровеньДоступа(ТаблицаИмя, СтрокаИдентификатор, ПоказыватьРежимыВвода, ПоказыватьРежимыФлажков) - Контекст = Новый Структура("ТаблицаИмя, СтрокаИдентификатор", ТаблицаИмя, СтрокаИдентификатор); - Обработчик = Новый ОписаниеОповещения("ТаблицыПолейИзменитьУровеньДоступаЗавершение", ЭтотОбъект, Контекст); - - Список = Новый СписокЗначений; - Если ПоказыватьРежимыВвода Тогда - Список.Добавить(2, НСтр("ru = 'В шапке отчета'"), , БиблиотекаКартинок.БыстрыйДоступ); - КонецЕсли; - Если ПоказыватьРежимыФлажков Тогда - Список.Добавить(1, НСтр("ru = 'Только флажок в шапке отчета'"), , БиблиотекаКартинок.БыстрыйДоступСФлажком); - КонецЕсли; - Если ПоказыватьРежимыВвода Тогда - Список.Добавить(4, НСтр("ru = 'В настройках отчета'"), , БиблиотекаКартинок.Реквизит); - КонецЕсли; - Если ПоказыватьРежимыФлажков Тогда - Список.Добавить(3, НСтр("ru = 'Только флажок в настройках отчета'"), , БиблиотекаКартинок.ОбычныйДоступСФлажком); - КонецЕсли; - Список.Добавить(5, НСтр("ru = 'Не показывать'"), , БиблиотекаКартинок.СкрытаяНастройкаОтчета); - - ПоказатьВыборИзМеню(Обработчик, Список); -КонецПроцедуры - -&НаКлиенте -Процедура ТаблицыПолейИзменитьУровеньДоступаЗавершение(Результат, Контекст) Экспорт - Если Результат = Неопределено Или Результат = КодВозвратаДиалога.Отмена Тогда - Возврат; - КонецЕсли; - ИндексКартинкиДоступа = Результат.Значение; - - СтрокаТаблицы = ЭтотОбъект[Контекст.ТаблицаИмя].НайтиПоИдентификатору(Контекст.СтрокаИдентификатор); - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, Контекст.ТаблицаИмя, СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат; - КонецЕсли; - - ТаблицыПолейУстановитьУровеньДоступа(Контекст.ТаблицаИмя, СтрокаТаблицы, ЭлементКД, ИндексКартинкиДоступа); - - УстановитьМодифицированность(); -КонецПроцедуры - -&НаКлиенте -Процедура ТаблицыПолейУстановитьУровеньДоступа(ИмяТаблицы, СтрокаТаблицы, ЭлементКД, ИндексКартинкиДоступа) - Если ИндексКартинкиДоступа = Неопределено Тогда - ИндексКартинкиДоступа = СтрокаТаблицы.ИндексКартинкиДоступа; - Иначе - СтрокаТаблицы.ИндексКартинкиДоступа = ИндексКартинкиДоступа; - КонецЕсли; - - Если ИндексКартинкиДоступа = 1 Или ИндексКартинкиДоступа = 2 Тогда - ЭлементКД.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ; - ИначеЕсли ИндексКартинкиДоступа = 3 Или ИндексКартинкиДоступа = 4 Тогда - ЭлементКД.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный; - Иначе - ЭлементКД.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный; - КонецЕсли; - - Если ИмяТаблицы = "Отборы" И Не СтрокаТаблицы.ЭтоПараметр Тогда - Если ИндексКартинкиДоступа = 1 Или ИндексКартинкиДоступа = 3 Тогда - ЭлементКД.Представление = "1"; - Иначе - ЭлементКД.Представление = ""; - КонецЕсли; - ИначеЕсли ИмяТаблицы = "Оформление" Тогда - Если СтрокаТаблицы.ЗаголовокПереопределен Тогда - ЭлементКД.Представление = СтрокаТаблицы.Заголовок; - Иначе - Если ИндексКартинкиДоступа = 1 Или ИндексКартинкиДоступа = 3 Тогда - ЭлементКД.Представление = "1"; - Иначе - ЭлементКД.Представление = ""; - КонецЕсли; - КонецЕсли; - КонецЕсли; - - Если ЭлементКД.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный Тогда - ЭлементКД.ИдентификаторПользовательскойНастройки = ""; - ИначеЕсли Не ЗначениеЗаполнено(ЭлементКД.ИдентификаторПользовательскойНастройки) Тогда - ЭлементКД.ИдентификаторПользовательскойНастройки = Новый УникальныйИдентификатор; - КонецЕсли; -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Клиент - Оформление. - -&НаКлиенте -Процедура ОформлениеИзменитьЭлемент(ТаблицаИмя, СтрокаИдентификатор, СтрокаТаблицы) - Контекст = Новый Структура("ТаблицаИмя, СтрокаИдентификатор", ТаблицаИмя, СтрокаИдентификатор); - Обработчик = Новый ОписаниеОповещения("ОформлениеИзменитьЭлементЗавершение", ЭтотОбъект, Контекст); - - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("НастройкиОтчета", НастройкиОтчета); - ПараметрыФормы.Вставить("КомпоновщикНастроек", Отчет.КомпоновщикНастроек); - ПараметрыФормы.Вставить("ИдентификаторТекущегоУзлаКД", ИдентификаторТекущегоУзлаКД); - Если СтрокаТаблицы = Неопределено Тогда - ПараметрыФормы.Вставить("ИдентификаторКД", Неопределено); - ПараметрыФормы.Вставить("Наименование", ""); - Иначе - ПараметрыФормы.Вставить("ИдентификаторКД", СтрокаТаблицы.ИдентификаторКД); - ПараметрыФормы.Вставить("Наименование", СтрокаТаблицы.Заголовок); - КонецЕсли; - ПараметрыФормы.Вставить("Заголовок", СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Элемент условного оформления отчета ""%1""'"), ВариантНаименование)); - - ОткрытьФорму("ХранилищеНастроек.ХранилищеВариантовОтчетов.Форма.ЭлементУсловногоОформленияОтчета", ПараметрыФормы, ЭтотОбъект, , , , Обработчик); -КонецПроцедуры - -&НаКлиенте -Процедура ОформлениеИзменитьЭлементЗавершение(Результат, Контекст) Экспорт - Если Результат = Неопределено Или Результат = КодВозвратаДиалога.Отмена Тогда - Возврат; - КонецЕсли; - ЭтоНовый = (Контекст.СтрокаИдентификатор = Неопределено); - - Таблица = ЭтотОбъект[Контекст.ТаблицаИмя]; - Если ЭтоНовый Тогда - РезультатВставки = ТаблицыПолейВставить(Контекст.ТаблицаИмя, Тип("ЭлементУсловногоОформленияКомпоновкиДанных"), 0, Ложь); - СтрокаТаблицы = РезультатВставки.СтрокаТаблицы; - УзелКД = РезультатВставки.УзелКД; - ЭлементКД = РезультатВставки.ЭлементКД; - СтрокаТаблицы.ИндексКартинкиДоступа = 4; - Иначе - СтрокаТаблицы = Таблица.НайтиПоИдентификатору(Контекст.СтрокаИдентификатор); - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, Контекст.ТаблицаИмя, СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат; - КонецЕсли; - - ЭлементКД.Отбор.Элементы.Очистить(); - ЭлементКД.Поля.Элементы.Очистить(); - КонецЕсли; - - ОтчетыКлиентСервер.ЗаполнитьСвойстваРекурсивно(УзелКД, ЭлементКД, Результат.ЭлементКД); - - СтрокаТаблицы.Использование = ЭлементКД.Использование; - СтрокаТаблицы.Заголовок = Результат.Наименование; - СтрокаТаблицы.ЗаголовокПереопределен = (СтрокаТаблицы.Заголовок <> СтрокаТаблицы.Представление); - - ТаблицыПолейУстановитьУровеньДоступа(Контекст.ТаблицаИмя, СтрокаТаблицы, ЭлементКД, Неопределено); - - Если СтрокаТаблицы.ЗаголовокПереопределен Тогда - ЭлементКД.ПредставлениеПользовательскойНастройки = СтрокаТаблицы.Заголовок; - Иначе - ЭлементКД.ПредставлениеПользовательскойНастройки = ""; - КонецЕсли; - - УстановитьМодифицированность(); -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Клиент - Таблицы полей (функциональная часть). - -&НаКлиенте -Процедура ТаблицыПолейРазгруппировать(ТаблицаИмя) - ТаблицаЭлемент = Элементы[ТаблицаИмя]; - ТаблицаРеквизит = ЭтотОбъект[ТаблицаИмя]; - ВыделенныеСтроки = ТаблицаЭлемент.ВыделенныеСтроки; - ВыделенныеСтроки = ОбщегоНазначенияКлиентСервер.СвернутьМассив(ВыделенныеСтроки); // Для платформы. - Если ВыделенныеСтроки.Количество() <> 1 Тогда - ПоказатьПредупреждение(, НСтр("ru = 'Выберите одну группу.'")); - Возврат; - КонецЕсли; - - ГруппаДерева = ТаблицаРеквизит.НайтиПоИдентификатору(ВыделенныеСтроки[0]); - Если ГруппаДерева = Неопределено Или Не ГруппаДерева.ЭтоГруппа Тогда - ПоказатьПредупреждение(, НСтр("ru = 'Выберите группу.'")); - Возврат; - КонецЕсли; - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, ТаблицаИмя, Неопределено); - ГруппаКД = УзелКД.ПолучитьОбъектПоИдентификатору(ГруппаДерева.ИдентификаторКД); - - Родитель = ГруппаДерева.ПолучитьРодителя(); - Если Родитель = Неопределено Тогда - Родитель = ТаблицаРеквизит; - КонецЕсли; - НоваяКоллекцияСтрокДерева = Родитель.ПолучитьЭлементы(); - - РодительКД = ГруппаКД.Родитель; - Если РодительКД = Неопределено Тогда - РодительКД = УзелКД; - КонецЕсли; - НоваяКоллекцияЭлементовКД = РодительКД.Элементы; - - Индекс = НоваяКоллекцияСтрокДерева.Индекс(ГруппаДерева); - ИндексКД = НоваяКоллекцияЭлементовКД.Индекс(ГруппаКД); - - ТекущаяСтрока = Неопределено; - - СтрокиРодителя = ГруппаДерева.ПолучитьЭлементы(); - СтрокиРодителяКД = ГруппаКД.Элементы; - Для Каждого СтараяСтрокаДерева Из СтрокиРодителя Цикл - СтарыйЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтараяСтрокаДерева.ИдентификаторКД); - ПеренесенныеСтроки = ТаблицыПолейСкопироватьРекурсивно(УзелКД, СтараяСтрокаДерева, НоваяКоллекцияСтрокДерева, СтарыйЭлементКД, НоваяКоллекцияЭлементовКД, Индекс, ИндексКД); - Если ТекущаяСтрока = Неопределено Тогда - ТекущаяСтрока = ПеренесенныеСтроки.СтрокаДерева; - КонецЕсли; - КонецЦикла; - - НоваяКоллекцияСтрокДерева.Удалить(ГруппаДерева); - НоваяКоллекцияЭлементовКД.Удалить(ГруппаКД); - - Если ТекущаяСтрока <> Неопределено Тогда - ТаблицаЭлемент.ТекущаяСтрока = ТекущаяСтрока.ПолучитьИдентификатор(); - КонецЕсли; - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ТаблицыПолейПередУдалением(ТаблицаИмя, Отказ) - Отказ = Истина; - СтрокаТаблицы = Элементы[ТаблицаИмя].ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - ТаблицыПолейУдалить(ТаблицаИмя, СтрокаТаблицы, Ложь); - УстановитьМодифицированность(); -КонецПроцедуры - -&НаКлиенте -Процедура ТаблицыПолейИзменить(ТаблицаИмя, СтрокаИдентификатор, СтрокаТаблицы) - Контекст = Новый Структура("ТаблицаИмя, СтрокаИдентификатор", ТаблицаИмя, СтрокаИдентификатор); - Обработчик = Новый ОписаниеОповещения("ТаблицыПолейИзменитьЗавершение", ЭтотОбъект, Контекст); - - Таблица = ЭтотОбъект[ТаблицаИмя]; - СтрокаТаблицы = Таблица.НайтиПоИдентификатору(СтрокаИдентификатор); - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, ТаблицаИмя, СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - - ТаблицыПолейПоказатьВыборПоля(ТаблицаИмя, Обработчик, ?(ТаблицаИмя = "Отборы", ЭлементКД.ЛевоеЗначение, ЭлементКД.Поле)); -КонецПроцедуры - -&НаКлиенте -Процедура ТаблицыПолейИзменитьЗавершение(ДоступноеПолеКД, Контекст) Экспорт - Если ДоступноеПолеКД = Неопределено Тогда - Возврат; - КонецЕсли; - - СтрокаТаблицы = ЭтотОбъект[Контекст.ТаблицаИмя].НайтиПоИдентификатору(Контекст.СтрокаИдентификатор); - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, Контекст.ТаблицаИмя, СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат; - КонецЕсли; - - СтрокаТаблицы.Представление = ДоступноеПолеКД.Заголовок; - Если Контекст.ТаблицаИмя = "Отборы" Тогда - ЭлементКД.ЛевоеЗначение = ДоступноеПолеКД.Поле; - Если ДоступноеПолеКД.ДоступныеВидыСравнения <> Неопределено - И ДоступноеПолеКД.ДоступныеВидыСравнения.НайтиПоЗначению(ЭлементКД.ВидСравнения) = Неопределено - И ДоступноеПолеКД.ДоступныеВидыСравнения.Количество() > 0 Тогда - ЭлементКД.ВидСравнения = ДоступноеПолеКД.ДоступныеВидыСравнения[0].Значение; - КонецЕсли; - ОтчетыКлиентСервер.ПривестиЗначениеКТипу(ЭлементКД.ПравоеЗначение, ДоступноеПолеКД.ТипЗначения); - Обновить(); // Серьезные изменения, для учета всех связей и особенностей вывода следует перерисовать полностью. - Иначе - ЭлементКД.Поле = ДоступноеПолеКД.Поле; - КонецЕсли; - - УстановитьМодифицированность(); -КонецПроцедуры - -&НаКлиенте -Процедура ТаблицыПолейИзменитьИспользование(ТаблицаИмя) - Таблица = Элементы[ТаблицаИмя]; - СтрокаТаблицы = Таблица.ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - ВыводитьФлажок = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(СтрокаТаблицы, "ВыводитьФлажок"); - Если ВыводитьФлажок = Ложь Тогда - СтрокаТаблицы.Использование = Истина; - Возврат; - КонецЕсли; - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, ТаблицаИмя, СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат; - КонецЕсли; - - ЭлементКД.Использование = СтрокаТаблицы.Использование; - - ПослеИзмененияФлажкаИспользование(ТаблицаИмя, СтрокаТаблицы, ЭлементКД); - - УстановитьМодифицированность(); -КонецПроцедуры - -&НаКлиенте -Процедура ПослеИзмененияФлажкаИспользование(ТаблицаИмя, СтрокаТаблицы, ЭлементКД) - Если ТаблицаИмя = "СоставГруппировки" Тогда - СвязаннаяТаблицаИмя = "ВыбранныеПоля"; - ИначеЕсли ТаблицаИмя = "ВыбранныеПоля" Тогда - СвязаннаяТаблицаИмя = "СоставГруппировки"; - Иначе - СвязаннаяТаблицаИмя = Неопределено; - КонецЕсли; - - Если СвязаннаяТаблицаИмя <> Неопределено И ЗначениеЗаполнено(СтрокаТаблицы.ПолеКД) Тогда - Условие = Новый Структура("ПолеКД", СтрокаТаблицы.ПолеКД); - УстановитьФлажокИспользованиеПоУсловию(СвязаннаяТаблицаИмя, Условие, СтрокаТаблицы.Использование); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура УстановитьФлажокИспользованиеПоУсловию(ТаблицаИмя, Условие, Использование) - Таблица = ЭтотОбъект[ТаблицаИмя]; - Найденные = ОтчетыКлиентСервер.НайтиСтрокиТаблицы(Таблица, Условие); - УзелКД = Неопределено; - Для Каждого СтрокаТаблицы Из Найденные Цикл - Если СтрокаТаблицы.Использование = Использование Тогда - Продолжить; - КонецЕсли; - Если УзелКД = Неопределено Тогда - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, ТаблицаИмя, СтрокаТаблицы); - КонецЕсли; - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Продолжить; - КонецЕсли; - СтрокаТаблицы.Использование = Использование; - ЭлементКД.Использование = Использование; - КонецЦикла; -КонецПроцедуры - -&НаКлиенте -Процедура УстановитьФлажкиИспользованиеВоВсемДереве(ТаблицаИмя, Использование, МассивСтрок = Неопределено, УзелКД = Неопределено) - ОпределятьУзелНаЛету = Ложь; - Если МассивСтрок = Неопределено Тогда - МассивСтрок = ЭтотОбъект[ТаблицаИмя].ПолучитьЭлементы(); - ОпределятьУзелНаЛету = (ТаблицаИмя = "Отборы"); - КонецЕсли; - - Для Каждого СтрокаДерева Из МассивСтрок Цикл - Если УзелКД = Неопределено Или ОпределятьУзелНаЛету Тогда - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, ТаблицаИмя, СтрокаДерева); - КонецЕсли; - - ВыводитьФлажок = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(СтрокаДерева, "ВыводитьФлажок"); - ЭтоРаздел = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(СтрокаДерева, "ЭтоРаздел"); - Если ВыводитьФлажок <> Ложь И ЭтоРаздел <> Истина Тогда - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаДерева.ИдентификаторКД); - Если ЭлементКД <> Неопределено Тогда - СтрокаДерева.Использование = Использование; - ЭлементКД.Использование = Использование; - ПослеИзмененияФлажкаИспользование(ТаблицаИмя, СтрокаДерева, ЭлементКД); - КонецЕсли; - КонецЕсли; - - УстановитьФлажкиИспользованиеВоВсемДереве(ТаблицаИмя, Использование, СтрокаДерева.ПолучитьЭлементы(), УзелКД); - КонецЦикла; - - УстановитьМодифицированность(); -КонецПроцедуры - -&НаКлиенте -Процедура ТаблицыПолейИзменитьЗначение(ТаблицаИмя) - СтрокаТаблицы = Элементы[ТаблицаИмя].ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, ТаблицаИмя, СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат; - КонецЕсли; - - Если СтрокаТаблицы.ЭтоПараметр Тогда - ЭлементКД.Значение = СтрокаТаблицы.Значение; - Иначе - ЭлементКД.ПравоеЗначение = СтрокаТаблицы.Значение; - КонецЕсли; - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ТаблицыПолейИзменитьТипГруппировки(ТаблицаИмя) - СтрокаТаблицы = Элементы[ТаблицаИмя].ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, ТаблицаИмя, СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат; - КонецЕсли; - - Если СтрокаТаблицы.ПоказыватьТипДополнения Тогда - ЭлементКД.ТипДополнения = СтрокаТаблицы.ТипДополнения; - Иначе - ЭлементКД.ТипГруппировки = СтрокаТаблицы.ТипГруппировки; - КонецЕсли; - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ТаблицыПолейИзменитьГруппу(ТаблицаИмя, СтрокаИдентификатор, СтрокаТаблицы) - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, ТаблицаИмя, СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - - Контекст = Новый Структура("ТаблицаИмя, СтрокаИдентификатор", ТаблицаИмя, СтрокаИдентификатор); - Обработчик = Новый ОписаниеОповещения("ТаблицыПолейИзменитьГруппуЗавершение", ЭтотОбъект, Контекст); - - Если ТаблицаИмя = "Отборы" Тогда - Список = Новый СписокЗначений; - Список.Добавить(ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИ); - Список.Добавить(ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли); - Список.Добавить(ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаНе); - ПоказатьВыборИзМеню(Обработчик, Список); - Иначе - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("ЗаголовокГруппы", ЭлементКД.Заголовок); - ПараметрыФормы.Вставить("Расположение", ЭлементКД.Расположение); - - Блокировать = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; - - ОткрытьФорму("ХранилищеНастроек.ХранилищеВариантовОтчетов.Форма.ГруппаВыбранныхПолей", ПараметрыФормы, ЭтотОбъект, Истина, , , Обработчик, Блокировать); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ТаблицыПолейИзменитьГруппуЗавершение(Результат, Контекст) Экспорт - Если Результат = Неопределено Или Результат = КодВозвратаДиалога.Отмена Тогда - Возврат; - КонецЕсли; - - СтрокаТаблицы = ЭтотОбъект[Контекст.ТаблицаИмя].НайтиПоИдентификатору(Контекст.СтрокаИдентификатор); - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, Контекст.ТаблицаИмя, СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат; - КонецЕсли; - - Если Контекст.ТаблицаИмя = "Отборы" Тогда - ЭлементКД.ТипГруппы = Результат.Значение; - СтрокаТаблицы.Представление = Строка(Результат.Значение); - Если Не СтрокаТаблицы.ЗаголовокПереопределен Тогда - СтрокаТаблицы.Заголовок = СтрокаТаблицы.Представление; - КонецЕсли; - Иначе - ЭлементКД.Заголовок = Результат.ЗаголовокГруппы; - ЭлементКД.Расположение = Результат.Расположение; - СтрокаТаблицы.Представление = ЭлементКД.Заголовок; - Если ЭлементКД.Расположение <> РасположениеПоляКомпоновкиДанных.Авто Тогда - СтрокаТаблицы.Представление = СтрокаТаблицы.Представление + " (" + Строка(ЭлементКД.Расположение) + ")"; - КонецЕсли; - КонецЕсли; - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Функция ТаблицыПолейВставить(ТаблицаИмя, ТипЭлемента, ТекущаяСтрока, ВнутрьСтроки) - Если ТекущаяСтрока = Неопределено Тогда - Возврат Неопределено; - КонецЕсли; - - ТаблицаЭлемент = Элементы[ТаблицаИмя]; - ТаблицаРеквизит = ЭтотОбъект[ТаблицаИмя]; - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, ТаблицаИмя); - - Если ТекущаяСтрока = 0 Тогда - ТекущаяСтрока = ТаблицаЭлемент.ТекущиеДанные; - КонецЕсли; - - Если ТекущаяСтрока = Неопределено Тогда - - КудаВставить = ТаблицаРеквизит.ПолучитьЭлементы(); - Индекс = Неопределено; - ЭлементКД = Неопределено; - КудаВставитьКД = ПолучитьЭлементыКД(УзелКД, ТекущаяСтрока); - ИндексКД = Неопределено; - - Иначе - - ЭлементКД = НайтиОбъектКД(УзелКД, ТекущаяСтрока); - Если ВнутрьСтроки = Неопределено Тогда - ВнутрьСтроки = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ТекущаяСтрока, "ЭтоГруппа", Ложь); - КонецЕсли; - - Если ЭлементКД = Неопределено Тогда - ВнутрьСтроки = Истина; - КонецЕсли; - - Если ВнутрьСтроки Тогда - КудаВставить = ТекущаяСтрока.ПолучитьЭлементы(); - Индекс = Неопределено; - КудаВставитьКД = ПолучитьЭлементыКД(УзелКД, ЭлементКД); - ИндексКД = Неопределено - Иначе // Вставка на один уровень со строкой. - СтрокаРодитель = ТекущаяСтрока.ПолучитьРодителя(); - Если СтрокаРодитель = Неопределено Тогда - КудаВставить = ТаблицаРеквизит.ПолучитьЭлементы(); - Иначе - КудаВставить = СтрокаРодитель.ПолучитьЭлементы(); - КонецЕсли; - Индекс = КудаВставить.Индекс(ТекущаяСтрока) + 1; - РодительКД = НайтиОбъектКД(УзелКД, СтрокаРодитель); - КудаВставитьКД = ПолучитьЭлементыКД(УзелКД, РодительКД); - ИндексКД = КудаВставитьКД.Индекс(ЭлементКД) + 1; - КонецЕсли; - - КонецЕсли; - - Если Индекс = Неопределено Тогда - НоваяСтрока = КудаВставить.Добавить(); - Иначе - НоваяСтрока = КудаВставить.Вставить(Индекс); - КонецЕсли; - - Если ОтчетыКлиентСервер.ПриДобавленииВКоллекциюНужноУказыватьТипЭлемента(ТипЗнч(КудаВставитьКД)) Тогда - Если ИндексКД = Неопределено Тогда - НовыйЭлементКД = КудаВставитьКД.Добавить(ТипЭлемента); - Иначе - НовыйЭлементКД = КудаВставитьКД.Вставить(ИндексКД, ТипЭлемента); - КонецЕсли; - Иначе - Если ИндексКД = Неопределено Тогда - НовыйЭлементКД = КудаВставитьКД.Добавить(); - Иначе - НовыйЭлементКД = КудаВставитьКД.Вставить(ИндексКД); - КонецЕсли; - КонецЕсли; - ТаблицаЭлемент.ТекущаяСтрока = НоваяСтрока.ПолучитьИдентификатор(); - НоваяСтрока.ИдентификаторКД = УзелКД.ПолучитьИдентификаторПоОбъекту(НовыйЭлементКД); - - Результат = Новый Структура("СтрокаТаблицы, УзелКД, ЭлементКД"); - Результат.СтрокаТаблицы = НоваяСтрока; - Результат.УзелКД = УзелКД; - Результат.ЭлементКД = НовыйЭлементКД; - Возврат Результат; -КонецФункции - -&НаКлиенте -Функция ТаблицыПолейПереместить(Знач ТаблицаИмя, Знач СтрокаТаблицы, Знач НовыйРодитель, Знач ПередЧемВставить, Знач ОставитьКопию) - ТаблицаЭлемент = Элементы[ТаблицаИмя]; - ТаблицаРеквизит = ЭтотОбъект[ТаблицаИмя]; - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, ТаблицаИмя); - ЭлементКД = НайтиОбъектКД(УзелКД, СтрокаТаблицы); - - Если НовыйРодитель = Неопределено Тогда - НовыйРодитель = ПолучитьРодителя(ТаблицаИмя, ПередЧемВставить); - КонецЕсли; - - Если ПередЧемВставить = Неопределено Тогда - ЭтоРаздел = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НовыйРодитель, "ЭтоРаздел"); - ЭтоГруппа = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НовыйРодитель, "ЭтоГруппа"); - Если ТаблицаИмя = "СтруктураВарианта" - Или НовыйРодитель = Неопределено - Или ЭтоРаздел = Истина - Или ЭтоГруппа = Истина Тогда - // Внутрь родителя. - Иначе - // На один уровень с родителем. - ПередЧемВставить = НовыйРодитель; - НовыйРодитель = ПолучитьРодителя(ТаблицаИмя, НовыйРодитель); - КонецЕсли; - КонецЕсли; - - НовыйРодительКД = НайтиОбъектКД(УзелКД, НовыйРодитель); - КудаВставить = ПолучитьЭлементы(ТаблицаРеквизит, НовыйРодитель); - КудаВставитьКД = ПолучитьЭлементыКД(УзелКД, НовыйРодительКД); - - СтарыйРодитель = ПолучитьРодителя(ТаблицаИмя, СтрокаТаблицы); - ОткудаПереместить = ПолучитьЭлементы(ТаблицаРеквизит, СтарыйРодитель); - - СтарыйРодительКД = НайтиОбъектКД(УзелКД, СтарыйРодитель); - ОткудаПереместитьКД = ПолучитьЭлементыКД(УзелКД, СтарыйРодительКД); - - Если ПередЧемВставить = Неопределено Тогда - Индекс = Неопределено; - ИндексКД = Неопределено; - Иначе - ПередЧемВставитьКД = НайтиОбъектКД(УзелКД, ПередЧемВставить); - Индекс = КудаВставить.Индекс(ПередЧемВставить); - ИндексКД = КудаВставитьКД.Индекс(ПередЧемВставитьКД); - Если НовыйРодитель = СтарыйРодитель - И ОткудаПереместить.Индекс(СтрокаТаблицы) > Индекс Тогда - Индекс = Индекс - 1; - ИндексКД = ИндексКД - 1; - КонецЕсли; - КонецЕсли; - - Результат = Новый Структура("СтрокаДерева, СтрокаКД"); - - ПоискЭлементовКД = Новый Соответствие; - Результат.СтрокаКД = ОтчетыКлиентСервер.СкопироватьРекурсивно(УзелКД, ЭлементКД, КудаВставитьКД, ИндексКД, ПоискЭлементовКД); - - ПоискСтрокТаблицы = Новый Соответствие; - Результат.СтрокаДерева = ОтчетыКлиентСервер.СкопироватьРекурсивно(Неопределено, СтрокаТаблицы, КудаВставить, Индекс, ПоискСтрокТаблицы); - - Для Каждого КлючИЗначение Из ПоискСтрокТаблицы Цикл - СтараяСтрока = КлючИЗначение.Ключ; - НоваяСтрока = КлючИЗначение.Значение; - НоваяСтрока.ИдентификаторКД = ПоискЭлементовКД.Получить(СтараяСтрока.ИдентификаторКД); - КонецЦикла; - - Если Не ОставитьКопию Тогда - ОткудаПереместить.Удалить(СтрокаТаблицы); - ОткудаПереместитьКД.Удалить(ЭлементКД); - КонецЕсли; - - Возврат Результат; -КонецФункции - -&НаКлиенте -Процедура ТаблицыПолейУдалить(Знач ТаблицаИмя, Знач СтрокаТаблицыИлиМассивСтрок, Знач ИспользованиеАвто) - Таблица = ЭтотОбъект[ТаблицаИмя]; - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, ТаблицаИмя); - Если ТипЗнч(СтрокаТаблицыИлиМассивСтрок) = Тип("ДанныеФормыЭлементДерева") Тогда - ТаблицыПолейУдалитьМеханика(ТаблицаИмя, Таблица, УзелКД, СтрокаТаблицыИлиМассивСтрок, ИспользованиеАвто); - Иначе - Количество = СтрокаТаблицыИлиМассивСтрок.Количество(); - Для Номер = 1 По Количество Цикл - ОбратныйИндекс = Количество - Номер; - СтрокаТаблицы = СтрокаТаблицыИлиМассивСтрок[ОбратныйИндекс]; - ТаблицыПолейУдалитьМеханика(ТаблицаИмя, Таблица, УзелКД, СтрокаТаблицы, ИспользованиеАвто); - КонецЦикла; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ТаблицыПолейУдалитьМеханика(ТаблицаИмя, Таблица, УзелКД, СтрокаТаблицы, ИспользованиеАвто) - ЭлементКД = НайтиОбъектКД(УзелКД, СтрокаТаблицы); - - СвязаннаяТаблицаИмя = Неопределено; - Если ТаблицаИмя = "ВыбранныеПоля" Тогда - Если СтрокаТаблицы.ЭтоРаздел Тогда - Возврат; - ИначеЕсли СтрокаТаблицы.ТипНастройки = "АвтоВыбранноеПоле" Тогда - Если ИспользованиеАвто <> Неопределено И ЭлементКД.Использование <> ИспользованиеАвто Тогда - СтрокаТаблицы.Использование = ИспользованиеАвто; - ЭлементКД.Использование = ИспользованиеАвто; - КонецЕсли; - Возврат; - КонецЕсли; - СвязаннаяТаблицаИмя = "СоставГруппировки"; - ИначеЕсли ТаблицаИмя = "Сортировка" Тогда - Если СтрокаТаблицы.ЭтоРаздел Тогда - Возврат; - ИначеЕсли СтрокаТаблицы.ТипНастройки = "АвтоЭлементПорядка" Тогда - Если ИспользованиеАвто <> Неопределено И ЭлементКД.Использование <> ИспользованиеАвто Тогда - СтрокаТаблицы.Использование = ИспользованиеАвто; - ЭлементКД.Использование = ИспользованиеАвто; - КонецЕсли; - Возврат; - КонецЕсли; - ИначеЕсли ТаблицаИмя = "СоставГруппировки" Тогда - Если СтрокаТаблицы.ТипНастройки = "АвтоПолеГруппировки" Тогда - Если ИспользованиеАвто <> Неопределено И ЭлементКД.Использование <> ИспользованиеАвто Тогда - СтрокаТаблицы.Использование = ИспользованиеАвто; - ЭлементКД.Использование = ИспользованиеАвто; - КонецЕсли; - Возврат; - КонецЕсли; - СвязаннаяТаблицаИмя = "ВыбранныеПоля"; - КонецЕсли; - Если СвязаннаяТаблицаИмя <> Неопределено И ЗначениеЗаполнено(СтрокаТаблицы.ПолеКД) Тогда - Условие = Новый Структура("ПолеКД", СтрокаТаблицы.ПолеКД); - УстановитьФлажокИспользованиеПоУсловию(СвязаннаяТаблицаИмя, Условие, Ложь); - КонецЕсли; - - Родитель = ПолучитьРодителя(ТаблицаИмя, СтрокаТаблицы); - СтрокиРодителя = ПолучитьЭлементы(Таблица, Родитель); - - РодительКД = НайтиОбъектКД(УзелКД, Родитель); - СтрокиРодителяКД = ПолучитьЭлементыКД(УзелКД, РодительКД); - - СтрокиРодителя.Удалить(СтрокаТаблицы); - СтрокиРодителяКД.Удалить(ЭлементКД); - -КонецПроцедуры - -&НаКлиенте -Функция НайтиОбъектКД(Знач УзелКД, Знач СтрокаТаблицы) - Если СтрокаТаблицы = Неопределено Или ТипЗнч(СтрокаТаблицы.ИдентификаторКД) <> Тип("ИдентификаторКомпоновкиДанных") Тогда - Возврат Неопределено; - Иначе - Возврат УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - КонецЕсли; -КонецФункции - -&НаКлиенте -Функция ПолучитьЭлементыКД(Знач УзелКД, Знач ОбъектКД) - Если ОбъектКД = Неопределено Тогда - ОбъектКД = УзелКД; - КонецЕсли; - ТипОбъекта = ТипЗнч(ОбъектКД); - Если ТипОбъекта = Тип("НастройкиКомпоновкиДанных") - Или ТипОбъекта = Тип("ГруппировкаКомпоновкиДанных") - Или ТипОбъекта = Тип("ГруппировкаТаблицыКомпоновкиДанных") - Или ТипОбъекта = Тип("ГруппировкаДиаграммыКомпоновкиДанных") Тогда - Возврат ОбъектКД.Структура; - ИначеЕсли ТипОбъекта = Тип("КоллекцияЭлементовСтруктурыТаблицыКомпоновкиДанных") - Или ТипОбъекта = Тип("КоллекцияЭлементовСтруктурыДиаграммыКомпоновкиДанных") Тогда - Возврат ОбъектКД; - Иначе - Возврат ОбъектКД.Элементы; - КонецЕсли; -КонецФункции - -&НаКлиенте -Функция ПолучитьЭлементы(Знач ДеревоФормы, Знач СтрокаДерева) - Если СтрокаДерева = Неопределено Тогда - СтрокаДерева = ДеревоФормы; - КонецЕсли; - Возврат СтрокаДерева.ПолучитьЭлементы(); -КонецФункции - -&НаКлиенте -Функция ПолучитьРодителя(Знач ТаблицаИмя, Знач СтрокаДерева) - Если СтрокаДерева = Неопределено Тогда - СтрокаРодителя = Неопределено; - Иначе - СтрокаРодителя = СтрокаДерева.ПолучитьРодителя(); - КонецЕсли; - - Если СтрокаРодителя = Неопределено Тогда - СтрокаРодителя = КорневаяСтрокаПоУмолчанию(ТаблицаИмя); - КонецЕсли; - - Возврат СтрокаРодителя; -КонецФункции - -&НаКлиенте -Функция КорневаяСтрокаПоУмолчанию(Знач ТаблицаИмя) - - Если ТаблицаИмя = "ВыбранныеПоля" Тогда - Возврат ВыбранныеПоля.ПолучитьЭлементы()[0]; - - ИначеЕсли ТаблицаИмя = "Сортировка" Тогда - Возврат Сортировка.ПолучитьЭлементы()[0]; - - ИначеЕсли ТаблицаИмя = "СтруктураВарианта" Тогда - Возврат СтруктураВарианта.ПолучитьЭлементы()[0]; - - ИначеЕсли ТаблицаИмя = "Отборы" Тогда - Если РежимИзмененияУзлаВарианта Тогда - Возврат Отборы.ПолучитьЭлементы()[0]; - Иначе - Возврат Отборы.ПолучитьЭлементы()[1]; - КонецЕсли; - - Иначе - Возврат Неопределено; - КонецЕсли; - -КонецФункции - -&НаКлиенте -Функция НайтиПоИдентификатору(ТаблицаРеквизит, ИдентификаторСтроки) - Если ИдентификаторСтроки = Неопределено Тогда - СтрокаТаблицы = Неопределено; - Иначе - СтрокаТаблицы = ТаблицаРеквизит.НайтиПоИдентификатору(ИдентификаторСтроки); - КонецЕсли; - Возврат СтрокаТаблицы; -КонецФункции - -&НаКлиенте -Процедура ТаблицыПолейИзменитьНаправлениеСортировки(ТаблицаИмя, СтрокаТаблицы, Направление) - Если СтрокаТаблицы = Неопределено Тогда - СтрокаТаблицы = Элементы[ТаблицаИмя].ТекущиеДанные; - Если СтрокаТаблицы = Неопределено Тогда - Возврат; - КонецЕсли; - КонецЕсли; - - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, ТаблицаИмя, СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат; - КонецЕсли; - - // Заполнение необязательных параметров. - Если Направление = Неопределено Тогда - Если ЭлементКД.ТипУпорядочивания = НаправлениеСортировкиКомпоновкиДанных.Возр Тогда - Направление = НаправлениеСортировкиКомпоновкиДанных.Убыв; - Иначе - Направление = НаправлениеСортировкиКомпоновкиДанных.Возр; - КонецЕсли; - КонецЕсли; - - // Изменение направления сортировки. - ЭлементКД.ТипУпорядочивания = Направление; - СтрокаТаблицы.Направление = Направление; - - УстановитьМодифицированность(); -КонецПроцедуры - -&НаКлиенте -Процедура ТаблицыПолейПоказатьВыборПоля(ТаблицаИмя, Обработчик, ПолеКД = Неопределено, ИдентификаторУзлаКД = Неопределено) - ПараметрыФормы = Новый Структура; - ПараметрыФормы.Вставить("НастройкиОтчета", НастройкиОтчета); - ПараметрыФормы.Вставить("КомпоновщикНастроек", Отчет.КомпоновщикНастроек); - ПараметрыФормы.Вставить("Режим", ТаблицаИмя); - ПараметрыФормы.Вставить("ПолеКД", ПолеКД); - ПараметрыФормы.Вставить("ИдентификаторТекущегоУзлаКД", ?(ИдентификаторУзлаКД = Неопределено, ИдентификаторТекущегоУзлаКД, ИдентификаторУзлаКД)); - - Блокировать = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца; - - ОткрытьФорму("ХранилищеНастроек.ХранилищеВариантовОтчетов.Форма.ВыборПоляОтчета", ПараметрыФормы, ЭтотОбъект, Истина, , , Обработчик, Блокировать); -КонецПроцедуры - -&НаКлиенте -Функция ТаблицыПолейСкопироватьРекурсивно(УзелКД, ЧтоКопировать, КудаВставить, ЧтоКопироватьКД, КудаВставитьКД, Индекс = Неопределено, ИндексКД = Неопределено) - Результат = Новый Структура("СтрокаДерева, СтрокаКД"); - - ПоискЭлементовКД = Новый Соответствие; - Результат.СтрокаКД = ОтчетыКлиентСервер.СкопироватьРекурсивно(УзелКД, ЧтоКопироватьКД, КудаВставитьКД, ИндексКД, ПоискЭлементовКД); - - ПоискСтрокТаблицы = Новый Соответствие; - Результат.СтрокаДерева = ОтчетыКлиентСервер.СкопироватьРекурсивно(Неопределено, ЧтоКопировать, КудаВставить, Индекс, ПоискСтрокТаблицы); - - Для Каждого КлючИЗначение Из ПоискСтрокТаблицы Цикл - СтараяСтрока = КлючИЗначение.Ключ; - НоваяСтрока = КлючИЗначение.Значение; - НоваяСтрока.ИдентификаторКД = ПоискЭлементовКД.Получить(СтараяСтрока.ИдентификаторКД); - КонецЦикла; - - Возврат Результат; -КонецФункции - -&НаКлиенте -Процедура СтруктураВариантаОбновитьЗаголовокЭлементаВКомпоновщике(СтрокаТаблицы) - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, "СтруктураВарианта", СтрокаТаблицы); - ЭлементКД = УзелКД.ПолучитьОбъектПоИдентификатору(СтрокаТаблицы.ИдентификаторКД); - Если ЭлементКД = Неопределено Тогда - Возврат; - КонецЕсли; - - ЗаголовокИспользование = ЗначениеЗаполнено(СтрокаТаблицы.Заголовок); - - ЗначениеПараметраКД = ЭлементКД.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ВыводитьЗаголовок")); - Если ЗначениеПараметраКД <> Неопределено Тогда - ЗначениеПараметраКД.Использование = Истина; - Если ЗаголовокИспользование Тогда - ЗначениеПараметраКД.Значение = ТипВыводаТекстаКомпоновкиДанных.Выводить; - Иначе - ЗначениеПараметраКД.Значение = ТипВыводаТекстаКомпоновкиДанных.НеВыводить; - КонецЕсли; - КонецЕсли; - - ЗначениеПараметраКД = ЭлементКД.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Заголовок")); - Если ЗначениеПараметраКД <> Неопределено Тогда - ЗначениеПараметраКД.Использование = Истина; - ЗначениеПараметраКД.Значение = СтрокаТаблицы.Заголовок; - КонецЕсли; -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Клиент или сервер - -&НаКлиентеНаСервереБезКонтекста -Функция ЭтоГруппа(ТипЭлемента) - Если ТипЭлемента = Тип("ГруппаВыбранныхПолейКомпоновкиДанных") - Или ТипЭлемента = Тип("ГруппаЭлементовОтбораКомпоновкиДанных") - Или ТипЭлемента = Тип("ГруппировкаКомпоновкиДанных") - Или ТипЭлемента = Тип("НастройкиВложенногоОбъектаКомпоновкиДанных") - Или ТипЭлемента = Тип("КоллекцияЭлементовСтруктурыТаблицыКомпоновкиДанных") - Или ТипЭлемента = Тип("КоллекцияЭлементовСтруктурыДиаграммыКомпоновкиДанных") Тогда - Возврат Истина; - КонецЕсли; - Возврат Ложь; -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ОписаниеТиповУдалитьПримитивные(ИсходноеОписаниеТипов) - ВычитаемыеТипы = Новый Массив; - Если ИсходноеОписаниеТипов.СодержитТип(Тип("Строка")) Тогда - ВычитаемыеТипы.Добавить(Тип("Строка")); - КонецЕсли; - Если ИсходноеОписаниеТипов.СодержитТип(Тип("Дата")) Тогда - ВычитаемыеТипы.Добавить(Тип("Дата")); - КонецЕсли; - Если ИсходноеОписаниеТипов.СодержитТип(Тип("Число")) Тогда - ВычитаемыеТипы.Добавить(Тип("Число")); - КонецЕсли; - Если ВычитаемыеТипы.Количество() = 0 Тогда - Возврат ИсходноеОписаниеТипов; - КонецЕсли; - Возврат Новый ОписаниеТипов(ИсходноеОписаниеТипов, , ВычитаемыеТипы); -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция ТаблицыПолейНайтиУзел(ЭтотОбъект, ТаблицаИмя, СтрокаТаблицы = Неопределено, ИдентификаторУзлаКД = Неопределено) - Если ЭтотОбъект.РасширенныйРежим = 1 Тогда - Если ИдентификаторУзлаКД = Неопределено Тогда - ИдентификаторУзлаКД = ЭтотОбъект.ИдентификаторТекущегоУзлаКД; - КонецЕсли; - Если ИдентификаторУзлаКД = Неопределено Тогда - КорневойУзел = ЭтотОбъект.Отчет.КомпоновщикНастроек.Настройки; - Иначе - КорневойУзел = ЭтотОбъект.Отчет.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(ИдентификаторУзлаКД); - Если ТипЗнч(КорневойУзел) = Тип("НастройкиВложенногоОбъектаКомпоновкиДанных") Тогда - КорневойУзел = КорневойУзел.Настройки; - КонецЕсли; - КонецЕсли; - Если ТаблицаИмя = "Сортировка" Тогда - Возврат КорневойУзел.Порядок; - ИначеЕсли ТаблицаИмя = "ВыбранныеПоля" Тогда - Возврат КорневойУзел.Выбор; - ИначеЕсли ТаблицаИмя = "Отборы" Тогда - Если СтрокаТаблицы = Неопределено Или Не СтрокаТаблицы.ЭтоПараметр Тогда - Возврат КорневойУзел.Отбор; - Иначе - Возврат КорневойУзел.ПараметрыДанных; - КонецЕсли; - ИначеЕсли ТаблицаИмя = "СоставГруппировки" Тогда - Возврат КорневойУзел.ПоляГруппировки; - ИначеЕсли ТаблицаИмя = "Оформление" Тогда - Возврат КорневойУзел.УсловноеОформление; - ИначеЕсли ТаблицаИмя = "СтруктураВарианта" Тогда - Возврат КорневойУзел; - Иначе - ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(НСтр("ru = 'Изменение узлов таблицы ""%1"" не поддерживается.'"), ТаблицаИмя); - КонецЕсли; - Иначе - Если ТаблицаИмя = "СтруктураВарианта" Тогда - Возврат ЭтотОбъект.Отчет.КомпоновщикНастроек.ПользовательскиеНастройки; - КонецЕсли; - ИдентификаторКД = ЭтотОбъект.БыстрыйПоискПользовательскихНастроек.Получить(ТаблицаИмя); - Если ИдентификаторКД = Неопределено Тогда - Возврат Неопределено; - Иначе - Возврат ЭтотОбъект.Отчет.КомпоновщикНастроек.ПользовательскиеНастройки.ПолучитьОбъектПоИдентификатору(ИдентификаторКД); - КонецЕсли; - КонецЕсли; - -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция МассивСортировать(ИсходныйМассив, НаправлениеСортировки = Неопределено) - Список = Новый СписокЗначений; - Список.ЗагрузитьЗначения(ИсходныйМассив); - Список.СортироватьПоЗначению(НаправлениеСортировки); - Возврат Список.ВыгрузитьЗначения(); -КонецФункции - -&НаКлиентеНаСервереБезКонтекста -Функция НайтиНастройкуВарианта(ЭтотОбъект, ИдентификаторЭлемента) - ПоискНастройкиВарианта = ЭтотОбъект.БыстрыйПоискНастроекВарианта.Получить(ИдентификаторЭлемента); - Если ПоискНастройкиВарианта = Неопределено Тогда - Возврат Неопределено; - КонецЕсли; - КорневойУзелКД = ЭтотОбъект.Отчет.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(ПоискНастройкиВарианта.ИдентификаторУзлаКД); - Результат = Новый Структура("УзелКД, ЭлементКД"); - Результат.УзелКД = КорневойУзелКД[ПоискНастройкиВарианта.ИмяКоллекции]; - Результат.ЭлементКД = Результат.УзелКД.ПолучитьОбъектПоИдентификатору(ПоискНастройкиВарианта.ИдентификаторЭлементаКД); - Возврат Результат; -КонецФункции - -//////////////////////////////////////////////////////////////////////////////// -// Вызов сервера - -&НаСервере -Функция БыстрыеНастройкиЗаполнить(Знач ПараметрыКлиента) - - // Вставка значений по умолчанию для обязательных ключей параметров заполнения. - ПараметрыЗаполнения = БыстрыеНастройкиДозаполнитьПараметры(ПараметрыКлиента); - - // Вызов переопределяемого модуля. - Если НастройкиОтчета.События.ПередЗаполнениемПанелиБыстрыхНастроек Тогда - ОтчетОбъект = ОтчетыСервер.ОтчетОбъект(ПараметрыЗаполнения.ОтчетОбъектИлиПолноеИмя); - ОтчетОбъект.ПередЗаполнениемПанелиБыстрыхНастроек(ЭтотОбъект, ПараметрыЗаполнения); - КонецЕсли; - - // Сохранить состояние до начала изменения. - БыстрыеНастройкиЗапомнитьСостояние(ПараметрыЗаполнения); - - // Запись новых настроек варианта и пользовательских настроек в компоновщик. - БыстрыеНастройкиЗагрузитьНастройкиВКомпоновщик(ПараметрыЗаполнения); - Если ПараметрыЗаполнения.Прервать Тогда - Возврат ПараметрыЗаполнения.Результат; - КонецЕсли; - - // Получение информации из КД. - УсловияВывода = Новый Структура; - УсловияВывода.Вставить("ТолькоПользовательские", РасширенныйРежим = 0); - УсловияВывода.Вставить("ТолькоБыстрые", Ложь); - УсловияВывода.Вставить("ИдентификаторТекущегоУзлаКД", ИдентификаторТекущегоУзлаКД); - Информация = ОтчетыСервер.РасширеннаяИнформацияОНастройках( - Отчет.КомпоновщикНастроек, - НастройкиОтчета, - ПараметрыЗаполнения.ОтчетОбъектИлиПолноеИмя, - УсловияВывода); - - // Удаление элементов старых настроек. - БыстрыеНастройкиУдалитьСтарыеЭлементыИКоманды(ПараметрыЗаполнения); - - // Добавление элементов актуальных настроек и загрузка значений. - БыстрыеНастройкиСоздатьЭлементыУправленияИЗагрузитьЗначения(ПараметрыЗаполнения, Информация); - - // Добавление элементов актуальных настроек и загрузка значений. - РасширенныеНастройкиЗагрузитьЗначения(ПараметрыЗаполнения, Информация); - - // Связи. - ЗарегистрироватьОтключаемыеСвязи(Информация); - - // Сохранить состояние до начала изменения. - БыстрыеНастройкиВосстановитьСостояние(ПараметрыЗаполнения); - - // Заголовок и свойства элементов. - ВидимостьДоступностьКорректность(ПараметрыЗаполнения.ИмяСобытия); - - // Вызов переопределяемого модуля. - Если НастройкиОтчета.События.ПослеЗаполненияПанелиБыстрыхНастроек Тогда - ОтчетОбъект = ОтчетыСервер.ОтчетОбъект(ПараметрыЗаполнения.ОтчетОбъектИлиПолноеИмя); - ОтчетОбъект.ПослеЗаполненияПанелиБыстрыхНастроек(ЭтотОбъект, ПараметрыЗаполнения); - КонецЕсли; - - Возврат ПараметрыЗаполнения.Результат; -КонецФункции - -&НаСервере -Процедура ВидимостьДоступностьКорректность(ИмяСобытия = "") - - // Видимость элементов. - Элементы.КомандыСтруктурыВарианта_Добавление.Видимость = (РасширенныйРежим = 1); - Элементы.КомандыСтруктурыВарианта_Добавление1.Видимость = (РасширенныйРежим = 1); - Элементы.КомандыСтруктурыВарианта_Изменение.Видимость = (РасширенныйРежим = 1); - Элементы.КомандыСтруктурыВарианта_Изменение1.Видимость = (РасширенныйРежим = 1); - Элементы.КомандыСтруктурыВарианта_ДвижениеПоИерархии.Видимость = (РасширенныйРежим = 1); - Элементы.КомандыСтруктурыВарианта_ДвижениеПоИерархии1.Видимость = (РасширенныйРежим = 1); - Элементы.КомандыСтруктурыВарианта_ДвижениеВнутриРодителя.Видимость = (РасширенныйРежим = 1); - Элементы.КомандыСтруктурыВарианта_ДвижениеВнутриРодителя1.Видимость = (РасширенныйРежим = 1); - Элементы.СтруктураВарианта.ИзменятьСоставСтрок = (РасширенныйРежим = 1); - Элементы.СтруктураВарианта.ИзменятьПорядокСтрок = (РасширенныйРежим = 1); - Элементы.СтруктураВарианта.РазрешитьНачалоПеретаскивания = (РасширенныйРежим = 1); - Элементы.СтруктураВарианта.РазрешитьПеретаскивание = (РасширенныйРежим = 1); - Элементы.СтруктураВарианта.Шапка = (РасширенныйРежим = 1); - Элементы.СтруктураВариантаЗаголовок.Видимость = (РасширенныйРежим = 1); - Элементы.СтруктураВариантаСодержитОтборы.Видимость = (РасширенныйРежим = 1); - Элементы.СтруктураВариантаСодержитПоляИлиСортировки.Видимость = (РасширенныйРежим = 1); - Элементы.СтруктураВариантаСодержитУсловноеОформление.Видимость = (РасширенныйРежим = 1); - Элементы.КомандыВыбранныхПолей_ДобавлениеУдаление.Видимость = (РасширенныйРежим = 1); - Элементы.КомандыВыбранныхПолей_ДобавлениеУдаление1.Видимость = (РасширенныйРежим = 1); - Элементы.КомандыВыбранныхПолей_Группы.Видимость = (РасширенныйРежим = 1); - Элементы.КомандыВыбранныхПолей_Группы1.Видимость = (РасширенныйРежим = 1); - Элементы.КомандыСортировки_ДобавлениеУдаление.Видимость = (РасширенныйРежим = 1); - Элементы.КомандыСортировки_ДобавлениеУдаление1.Видимость = (РасширенныйРежим = 1); - - Если ИмяСобытия = "ПриСозданииНаСервере" Тогда - Если РежимИзмененияУзлаВарианта Тогда - Элементы.РасширенныйРежим.Видимость = Ложь; - Элементы.ЗакрытьИСформировать.Заголовок = НСтр("ru = 'Завершить редактирование'"); - Элементы.Закрыть.Заголовок = НСтр("ru = 'Отмена'"); - Элементы.Переместить(Элементы.СтраницаОтборы, Элементы.СтраницыНастроек, Элементы.СтраницаОформление); - КонецЕсли; - КонецЕсли; -КонецПроцедуры - -//////////////////////////////////////////////////////////////////////////////// -// Сервер - -&НаСервере -Функция ОтчетОбъект() - Возврат ОбщегоНазначения.ОбъектПоПолномуИмени(НастройкиОтчета.ПолноеИмя); -КонецФункции - -&НаСервере -Процедура ДобавитьУсловноеОформление() - // Отборы. - Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); - Инструкция.Отборы.Вставить("Отборы.ЗаголовокПереопределен", Ложь); - Инструкция.Поля = "ОтборыЗаголовок"; - Инструкция.Оформление.Вставить("ЦветТекста", ЦветаСтиля.ТекстЗапрещеннойЯчейкиЦвет); - СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); - - Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); - Инструкция.Отборы.Вставить("Отборы.ВыводитьФлажок", Ложь); - Инструкция.Поля = "ОтборыИспользование"; - Инструкция.Оформление.Вставить("Видимость", Ложь); - Инструкция.Оформление.Вставить("Отображать", Ложь); - СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); - - Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); - Инструкция.Отборы.Вставить("Отборы.ЭтоРаздел", Истина); - Инструкция.Поля = "ОтборыУсловие, ОтборыЗначение, ОтборыПредставлениеЗначения, ОтборыИндексКартинкиДоступа, ОтборыЗаголовок"; - Инструкция.Оформление.Вставить("ТолькоПросмотр", Истина); - СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); - - Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); - Инструкция.Отборы.Вставить("Отборы.ЭтоГруппа", Истина); - Инструкция.Поля = "ОтборыУсловие, ОтборыЗначение, ОтборыПредставлениеЗначения"; - Инструкция.Оформление.Вставить("ТолькоПросмотр", Истина); - СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); - - Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); - Инструкция.Отборы.Вставить("Отборы.ФиксированныйСписокВыбора", Ложь); - Инструкция.Поля = "ОтборыПредставлениеЗначения"; - Инструкция.Оформление.Вставить("Видимость", Ложь); - Инструкция.Оформление.Вставить("Отображать", Ложь); - СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); - - Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); - Инструкция.Отборы.Вставить("Отборы.ФиксированныйСписокВыбора", Истина); - Инструкция.Поля = "ОтборыЗначение"; - Инструкция.Оформление.Вставить("Видимость", Ложь); - Инструкция.Оформление.Вставить("Отображать", Ложь); - СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); - - // Выбранные поля. - Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); - Инструкция.Отборы.Вставить("ВыбранныеПоля.ЭтоРаздел", Истина); - Инструкция.Поля = "ВыбранныеПоляИспользование"; - Инструкция.Оформление.Вставить("Видимость", Ложь); - Инструкция.Оформление.Вставить("Отображать", Ложь); - СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); - - // Сортировки. - Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); - Инструкция.Отборы.Вставить("Сортировка.ЭтоРаздел", Истина); - Инструкция.Поля = "СортировкаИспользование, СортировкаНаправление"; - Инструкция.Оформление.Вставить("Видимость", Ложь); - Инструкция.Оформление.Вставить("Отображать", Ложь); - СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); - - Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); - Инструкция.Отборы.Вставить("Сортировка.ТипНастройки", "АвтоЭлементПорядка"); - Инструкция.Поля = "СортировкаНаправление"; - Инструкция.Оформление.Вставить("Видимость", Ложь); - Инструкция.Оформление.Вставить("Отображать", Ложь); - СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); - - // Состав группировки. - Если РежимИзмененияУзлаВарианта Тогда - Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); - Инструкция.Отборы.Вставить("СоставГруппировки.ПоказыватьТипДополнения", Истина); - Инструкция.Поля = "СоставГруппировкиТипГруппировки"; - Инструкция.Оформление.Вставить("Видимость", Ложь); - Инструкция.Оформление.Вставить("Отображать", Ложь); - СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); - - Инструкция = СтандартныеПодсистемыСервер.ИнструкцияУсловногоОформления(); - Инструкция.Отборы.Вставить("СоставГруппировки.ПоказыватьТипДополнения", Ложь); - Инструкция.Поля = "СоставГруппировкиТипДополнения"; - Инструкция.Оформление.Вставить("Видимость", Ложь); - Инструкция.Оформление.Вставить("Отображать", Ложь); - СтандартныеПодсистемыСервер.ДобавитьЭлементУсловногоОформления(ЭтотОбъект, Инструкция); - КонецЕсли; - -КонецПроцедуры - -&НаСервере -Функция БыстрыеНастройкиДозаполнитьПараметры(ПараметрыКлиента) - ПараметрыЗаполнения = Новый Структура; - ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(ПараметрыЗаполнения, ПараметрыКлиента, Истина); - Если Не ПараметрыЗаполнения.Свойство("ИмяСобытия") Тогда - ПараметрыЗаполнения.Вставить("ИмяСобытия", ""); - КонецЕсли; - Если Не ПараметрыЗаполнения.Свойство("ВариантМодифицирован") Тогда - ПараметрыЗаполнения.Вставить("ВариантМодифицирован", Ложь); - КонецЕсли; - Если Не ПараметрыЗаполнения.Свойство("ПользовательскиеНастройкиМодифицированы") Тогда - ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Ложь); - КонецЕсли; - Если Не ПараметрыЗаполнения.Свойство("Результат") Тогда - ПараметрыЗаполнения.Вставить("Результат", Новый Структура); - КонецЕсли; - ПараметрыЗаполнения.Вставить("Прервать", Ложь); - ПараметрыЗаполнения.Вставить("ОтчетОбъектИлиПолноеИмя", НастройкиОтчета.ПолноеИмя); - - Возврат ПараметрыЗаполнения; -КонецФункции - -&НаСервере -Процедура БыстрыеНастройкиЗапомнитьСостояние(ПараметрыЗаполнения) - Если ПараметрыЗаполнения.ИмяСобытия = "ПриСозданииНаСервере" Тогда - Возврат; // Ничего восстанавливать не требуется. - КонецЕсли; - - ВыделенныеСтроки = Новый Структура; - ПараметрыЗаполнения.Вставить("ВыделенныеСтроки", ВыделенныеСтроки); - - ИменаТаблиц = "Отборы, ВыбранныеПоля, Сортировка, " + ?(РежимИзмененияУзлаВарианта, "СтруктураВарианта", "СоставГруппировки"); - ИменаТаблиц = СтроковыеФункцииКлиентСервер.РазложитьСтрокуВМассивПодстрок(ИменаТаблиц, ",", Истина, Истина); - Для Каждого ИмяТаблицы Из ИменаТаблиц Цикл - ВыделенныеСтроки.Вставить(ИмяТаблицы, ОтчетыСервер.ЗапомнитьВыделенныеСтроки(ЭтотОбъект, ИмяТаблицы, "ИдентификаторКД")); - СтандартныеПодсистемыКлиентСервер.РазвернутьУзлыДерева(ПараметрыЗаполнения.Результат, ИмяТаблицы, "*", Истина); - КонецЦикла; -КонецПроцедуры - -&НаСервере -Процедура БыстрыеНастройкиВосстановитьСостояние(ПараметрыЗаполнения) - ВыделенныеСтроки = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыЗаполнения, "ВыделенныеСтроки"); - Если ТипЗнч(ВыделенныеСтроки) = Тип("Структура") Тогда - Для Каждого КлючИЗначение Из ВыделенныеСтроки Цикл - ОтчетыСервер.ВосстановитьВыделенныеСтроки(ЭтотОбъект, КлючИЗначение.Ключ, КлючИЗначение.Значение); - КонецЦикла; - КонецЕсли; -КонецПроцедуры - -&НаСервере -Процедура БыстрыеНастройкиЗагрузитьНастройкиВКомпоновщик(ПараметрыЗаполнения) - НовыеНастройкиКД = Неопределено; - НовыеПользовательскиеНастройкиКД = Неопределено; - Если ПараметрыЗаполнения.Свойство("КомпоновщикНастроекКД") Тогда - НовыеНастройкиКД = ПараметрыЗаполнения.КомпоновщикНастроекКД.Настройки; - НовыеПользовательскиеНастройкиКД = ПараметрыЗаполнения.КомпоновщикНастроекКД.ПользовательскиеНастройки; - Иначе - Если ПараметрыЗаполнения.Свойство("НастройкиКД") Тогда - НовыеНастройкиКД = ПараметрыЗаполнения.НастройкиКД; - КонецЕсли; - Если ПараметрыЗаполнения.Свойство("ПользовательскиеНастройкиКД") Тогда - НовыеПользовательскиеНастройкиКД = ПараметрыЗаполнения.ПользовательскиеНастройкиКД; - КонецЕсли; - КонецЕсли; - - Если НастройкиОтчета.События.ПередЗагрузкойНастроекВКомпоновщик Тогда - НовыеНастройкиXML = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НастройкиОтчета, "НовыеНастройкиXML"); - Если ТипЗнч(НовыеНастройкиXML) = Тип("Строка") Тогда - Попытка - НовыеНастройкиКД = ОбщегоНазначения.ЗначениеИзСтрокиXML(НовыеНастройкиXML); - Исключение - НовыеНастройкиКД = Неопределено; - КонецПопытки; - НастройкиОтчета.НовыеНастройкиXML = Неопределено; - КонецЕсли; - - НовыеПользовательскиеНастройкиXML = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НастройкиОтчета, "НовыеПользовательскиеНастройкиXML"); - Если ТипЗнч(НовыеПользовательскиеНастройкиXML) = Тип("Строка") Тогда - Попытка - НовыеПользовательскиеНастройкиКД = ОбщегоНазначения.ЗначениеИзСтрокиXML(НовыеПользовательскиеНастройкиXML); - Исключение - НовыеПользовательскиеНастройкиКД = Неопределено; - КонецПопытки; - НастройкиОтчета.НовыеПользовательскиеНастройкиXML = Неопределено; - КонецЕсли; - КонецЕсли; - - ОбновитьНастройкиВарианта = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыЗаполнения, "ОбновитьНастройкиВарианта", Ложь); - Если ОбновитьНастройкиВарианта Тогда - ИнформацияОбОшибке = Неопределено; - Попытка - НовыеНастройкиКД = Отчет.КомпоновщикНастроек.ПолучитьНастройки(); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КонецПопытки; - Если ИнформацияОбОшибке <> Неопределено Тогда - СтандартныеПодсистемыКлиентСервер.ВывестиИнформациюОбОшибке( - ПараметрыЗаполнения.Результат, - НСтр("ru = 'Не удалось получить настройки отчета:'"), - ИнформацияОбОшибке); - ПараметрыЗаполнения.Прервать = Истина; - Возврат; - КонецЕсли; - Отчет.КомпоновщикНастроек.ЗагрузитьФиксированныеНастройки(Новый НастройкиКомпоновкиДанных); - КонецЕсли; - - СброситьПользовательскиеНастройки = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыЗаполнения, "СброситьПользовательскиеНастройки", Ложь); - Если СброситьПользовательскиеНастройки Тогда - НовыеПользовательскиеНастройкиКД = Новый ПользовательскиеНастройкиКомпоновкиДанных; - КонецЕсли; - - Если НастройкиОтчета.События.ПередЗагрузкойНастроекВКомпоновщик Тогда - ОтчетОбъект = ОтчетыСервер.ОтчетОбъект(ПараметрыЗаполнения.ОтчетОбъектИлиПолноеИмя); - ОтчетОбъект.ПередЗагрузкойНастроекВКомпоновщик( - ЭтотОбъект, - НастройкиОтчета.КлючСхемы, - КлючТекущегоВарианта, - НовыеНастройкиКД, - НовыеПользовательскиеНастройкиКД); - КонецЕсли; - - Если ТипЗнч(НовыеНастройкиКД) = Тип("НастройкиКомпоновкиДанных") - И Отчет.КомпоновщикНастроек.Настройки <> НовыеНастройкиКД Тогда - Если ТипЗнч(ФормаПараметры.Отбор) = Тип("Структура") Тогда - ОтчетыСервер.УстановитьФиксированныеОтборы(ФормаПараметры.Отбор, НовыеНастройкиКД, НастройкиОтчета); - КонецЕсли; - Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(НовыеНастройкиКД); - КонецЕсли; - Если ТипЗнч(НовыеПользовательскиеНастройкиКД) = Тип("ПользовательскиеНастройкиКомпоновкиДанных") - И Отчет.КомпоновщикНастроек.ПользовательскиеНастройки <> НовыеПользовательскиеНастройкиКД Тогда - Отчет.КомпоновщикНастроек.ЗагрузитьПользовательскиеНастройки(НовыеПользовательскиеНастройкиКД); - КонецЕсли; - - УсловияОтборов = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыЗаполнения, "УсловияОтборов"); - Если УсловияОтборов <> Неопределено Тогда - УзелКД = Отчет.КомпоновщикНастроек.ПользовательскиеНастройки; - Для Каждого КлючИЗначение Из УсловияОтборов Цикл - ПользовательскаяНастройкаКД = УзелКД.ПолучитьОбъектПоИдентификатору(КлючИЗначение.Ключ); - ПользовательскаяНастройкаКД.ВидСравнения = КлючИЗначение.Значение; - КонецЦикла; - КонецЕсли; - - Если ПараметрыЗаполнения.ВариантМодифицирован Тогда - ВариантИзменен = Истина; - КонецЕсли; - Если ПараметрыЗаполнения.ПользовательскиеНастройкиМодифицированы Тогда - ПользовательскиеНастройкиМодифицированы = Истина; - КонецЕсли; -КонецПроцедуры - -&НаСервере -Процедура БыстрыеНастройкиУдалитьСтарыеЭлементыИКоманды(ПараметрыЗаполнения) - // Удаление элементов. - УдаляемыеЭлементы = Новый Массив; - ДобавитьПодчиненныеЭлементы(УдаляемыеЭлементы, Элементы.БыстрыеОтборы.ПодчиненныеЭлементы); - ДобавитьПодчиненныеЭлементы(УдаляемыеЭлементы, Элементы.ОбычныеОтборы.ПодчиненныеЭлементы); - ДобавитьПодчиненныеЭлементы(УдаляемыеЭлементы, Элементы.СтраницаДополнительноШапка.ПодчиненныеЭлементы); - ДобавитьПодчиненныеЭлементы(УдаляемыеЭлементы, Элементы.СтраницаДополнительноГруппировки.ПодчиненныеЭлементы); - ДобавитьПодчиненныеЭлементы(УдаляемыеЭлементы, Элементы.СтраницаДополнительноПодвал.ПодчиненныеЭлементы); - Для Каждого Элемент Из УдаляемыеЭлементы Цикл - Элементы.Удалить(Элемент); - КонецЦикла; - - // Удаление команд - УдаляемыеКоманды = Новый Массив; - Для Каждого Команда Из Команды Цикл - Если ПостоянныеКоманды.НайтиПоЗначению(Команда.Имя) = Неопределено Тогда - УдаляемыеКоманды.Добавить(Команда); - КонецЕсли; - КонецЦикла; - Для Каждого Команда Из УдаляемыеКоманды Цикл - Команды.Удалить(Команда); - КонецЦикла; -КонецПроцедуры - -&НаСервере -Процедура ДобавитьПодчиненныеЭлементы(Куда, Откуда) - Для Каждого ПодчиненныйЭлемент Из Откуда Цикл - Если ТипЗнч(ПодчиненныйЭлемент) = Тип("ГруппаФормы") - Или ТипЗнч(ПодчиненныйЭлемент) = Тип("ТаблицаФормы") Тогда - ДобавитьПодчиненныеЭлементы(Куда, ПодчиненныйЭлемент.ПодчиненныеЭлементы); - КонецЕсли; - Куда.Добавить(ПодчиненныйЭлемент); - КонецЦикла; -КонецПроцедуры - -&НаСервере -Процедура БыстрыеНастройкиСоздатьЭлементыУправленияИЗагрузитьЗначения(ПараметрыЗаполнения, Информация) - // Кэши для быстрого поиска с клиента. - СоответствиеПользовательскихНастроек = Новый Соответствие; - СоответствиеИменОбъектовМетаданных = Информация.СоответствиеИменОбъектовМетаданных; - СоответствиеОтключаемыхСвязей = Новый Соответствие; - СоответствиеНастроекВарианта = Новый Соответствие; - - // Удаление реквизитов - ПараметрыЗаполнения.Вставить("Реквизиты", Новый Структура); - ПараметрыЗаполнения.Реквизиты.Вставить("Добавляемые", Новый Массив); - ПараметрыЗаполнения.Реквизиты.Вставить("Удаляемые", Новый Массив); - ПараметрыЗаполнения.Реквизиты.Вставить("Существующие", Новый Соответствие); - ОписаниеТиповТаблицаЗначений = Новый ОписаниеТипов("ТаблицаЗначений"); - ВсеРеквизиты = ПолучитьРеквизиты(); - Для Каждого Реквизит Из ВсеРеквизиты Цикл - РеквизитПолноеИмя = ПолноеИмяРеквизита(Реквизит); - Если ПостоянныеРеквизиты.НайтиПоЗначению(РеквизитПолноеИмя) = Неопределено Тогда - ПараметрыЗаполнения.Реквизиты.Существующие.Вставить(РеквизитПолноеИмя, Реквизит.ТипЗначения); - Подчиненные = ПолучитьРеквизиты(РеквизитПолноеИмя); - Если ОтчетыСервер.ОписанияТиповСовпадают(Реквизит.ТипЗначения, ОписаниеТиповТаблицаЗначений) Тогда - Для Каждого Подчиненный Из Подчиненные Цикл - ПодчиненныйПолноеИмя = ПолноеИмяРеквизита(Подчиненный); - ПараметрыЗаполнения.Реквизиты.Существующие.Вставить(ПодчиненныйПолноеИмя, Подчиненный.ТипЗначения); - КонецЦикла; - КонецЕсли; - КонецЕсли; - КонецЦикла; - - // Локальные переменные для установки значений и свойств после создания реквизитов. - ДобавленныеПоляВвода = Новый Структура; - ДобавленныеСпискиЗначений = Новый Массив; - ДобавленныеСтандартныеПериоды = Новый Массив; - - // Структура связей. - Связи = Информация.Связи; - - ИменаОсновныхРеквизитовФормы = Новый Соответствие; - ИменаЭлементовДляУстановкиСвязей = Новый Соответствие; - НастройкиСВидомСравненияРавно = Новый Соответствие; - - КомпоновщикНастроекКД = Отчет.КомпоновщикНастроек; - ПользовательскиеНастройкиКД = КомпоновщикНастроекКД.ПользовательскиеНастройки; - НастройкиКД = КомпоновщикНастроекКД.Настройки; - - ДополнительныеНастройкиЭлементов = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПользовательскиеНастройкиКД.ДополнительныеСвойства, "ЭлементыФормы"); - Если ДополнительныеНастройкиЭлементов = Неопределено Тогда - ДополнительныеНастройкиЭлементов = Новый Соответствие; - КонецЕсли; - - Режимы = РежимОтображенияЭлементаНастройкиКомпоновкиДанных; - - ГруппыВывода = Новый Структура; - ГруппыВывода.Вставить("БыстрыеОтборы", Новый Структура("Порядок, Размер", Новый Массив, 0)); - ГруппыВывода.Вставить("ОбычныеОтборы", Новый Структура("Порядок, Размер", Новый Массив, 0)); - ГруппыВывода.Вставить("ДополнительныеШапка", Новый Структура("Порядок, Размер", Новый Массив, 0)); - ГруппыВывода.Вставить("ДополнительныеПодвал", Новый Структура("Порядок, Размер", Новый Массив, 0)); - ГруппыВывода.Вставить("ДополнительныеЗакладки", Новый СписокЗначений); - ДополнительныеЗакладкиПоиск = Новый Соответствие; - - ОтчетОбъект = Неопределено; - - ЕстьЗагрузкаДанныхИзФайла = ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.ЗагрузкаДанныхИзФайла"); - - Если РежимИзмененияУзлаВарианта Тогда - ВыводимыеНастройки = Новый Массив; - Иначе - ВыводимыеНастройки = Информация.ПользовательскиеНастройки.Скопировать(Новый Структура("ВыводРазрешен", Истина)); - ВыводимыеНастройки.Сортировать("ИндексВКоллекции Возр"); - КонецЕсли; - - ВыводимыеТипыНастроек = Новый Массив; - Если РасширенныйРежим <> 1 Тогда - ВыводимыеТипыНастроек.Добавить("ЭлементОтбора"); - ВыводимыеТипыНастроек.Добавить("ГруппаЭлементовОтбора"); - ВыводимыеТипыНастроек.Добавить("ЗначениеПараметраНастроек"); - ВыводимыеТипыНастроек.Добавить("ЭлементУсловногоОформления"); - КонецЕсли; - - Прочее = Новый Структура; - Прочее.Вставить("Связи", Связи); - Прочее.Вставить("ОтчетОбъект", Неопределено); - Прочее.Вставить("ПараметрыЗаполнения", ПараметрыЗаполнения); - Прочее.Вставить("ПутьККомпоновщику", "Отчет.КомпоновщикНастроек"); - Прочее.Вставить("ЕстьЗагрузкаДанныхИзФайла", ЕстьЗагрузкаДанныхИзФайла); - Прочее.Вставить("ДополнительныеНастройкиЭлементов", ДополнительныеНастройкиЭлементов); - Прочее.Вставить("ИменаОсновныхРеквизитовФормы", ИменаОсновныхРеквизитовФормы); - Прочее.Вставить("ИменаЭлементовДляУстановкиСвязей", ИменаЭлементовДляУстановкиСвязей); - Прочее.Вставить("СоответствиеИменОбъектовМетаданных", СоответствиеИменОбъектовМетаданных); - Прочее.Вставить("ДобавленныеПоляВвода", ДобавленныеПоляВвода); - Прочее.Вставить("ДобавленныеСтандартныеПериоды", ДобавленныеСтандартныеПериоды); - Прочее.Вставить("ДобавленныеСпискиЗначений", ДобавленныеСпискиЗначений); - Прочее.Вставить("ЕстьОтборыСУсловиями", Ложь); - - Для Каждого СвойстваНастройки Из ВыводимыеНастройки Цикл - НастройкаВарианта = СвойстваНастройки.НастройкаВарианта; - Если НастройкаВарианта = Неопределено Тогда - Продолжить; - КонецЕсли; - - Если (СвойстваНастройки.Тип = "ВыбранныеПоля" - Или СвойстваНастройки.Тип = "Отбор" - Или СвойстваНастройки.Тип = "Порядок") - И СвойстваНастройки.СтрокаДерева = Информация.ДеревоВариантаКорневаяСтрока Тогда - // Регистрация в информации о пользовательских настройках. - ТаблицаИмя = СвойстваНастройки.Тип; - Если ТаблицаИмя = "Порядок" Тогда - ТаблицаИмя = "Сортировка"; - КонецЕсли; - СоответствиеПользовательскихНастроек.Вставить(ТаблицаИмя, СвойстваНастройки.ИдентификаторКД); - Продолжить; // Вывод не требуется. - КонецЕсли; - - Если ВыводимыеТипыНастроек.Найти(СвойстваНастройки.Тип) = Неопределено Тогда - Продолжить; - КонецЕсли; - - СоответствиеПользовательскихНастроек.Вставить(СвойстваНастройки.ИдентификаторЭлемента, СвойстваНастройки.ИдентификаторКД); - - ПоискНастройкиВарианта = Новый Структура; - ПоискНастройкиВарианта.Вставить("ИдентификаторУзлаКД", СвойстваНастройки.СтрокаДерева.ИдентификаторКД); - ПоискНастройкиВарианта.Вставить("ИмяКоллекции", НастройкаВарианта.ИмяКоллекции); - ПоискНастройкиВарианта.Вставить("ИдентификаторЭлементаКД", НастройкаВарианта.ИдентификаторКД); - СоответствиеНастроекВарианта.Вставить(СвойстваНастройки.ИдентификаторЭлемента, ПоискНастройкиВарианта); - - // Определение группы для вывода. - Если СвойстваНастройки.Тип = "ЭлементУсловногоОформления" Тогда - // Определение раздела. - КорневаяСтрокаДереваВарианта = Неопределено; - ТекущаяСтрока = СвойстваНастройки.СтрокаДерева; - Пока ТекущаяСтрока <> Неопределено Цикл - Если ЗначениеЗаполнено(ТекущаяСтрока.Заголовок) И ТекущаяСтрока.УзелКД <> НастройкиКД Тогда - КорневаяСтрокаДереваВарианта = ТекущаяСтрока; - КонецЕсли; - ТекущаяСтрока = ТекущаяСтрока.Родитель; - КонецЦикла; - Если КорневаяСтрокаДереваВарианта = Неопределено Тогда // Раздел не найден. Вывод в основную часть. - ГруппаВывода = ГруппыВывода.ДополнительныеПодвал; - Иначе // Раздел найден. Вывод в группу на закладке "Дополнительно": - ЗаголовокЗакладки = КорневаяСтрокаДереваВарианта.Заголовок; - ГруппаВывода = ДополнительныеЗакладкиПоиск.Получить(ЗаголовокЗакладки); - Если ГруппаВывода = Неопределено Тогда - ГруппаВывода = Новый Структура("Порядок, Размер", Новый Массив, 0); - ГруппаВывода.Вставить("Заголовок", ЗаголовокЗакладки); - ГруппаВывода.Вставить("ИмяФлажка", ""); - ГруппыВывода.ДополнительныеЗакладки.Добавить(ГруппаВывода, ЗаголовокЗакладки); - ДополнительныеЗакладкиПоиск.Вставить(ЗаголовокЗакладки, ГруппаВывода); - КонецЕсли; - КонецЕсли; - Иначе - Если СвойстваНастройки.Быстрая Тогда - ГруппаВывода = ГруппыВывода.БыстрыеОтборы; - Иначе - ГруппаВывода = ГруппыВывода.ОбычныеОтборы; - КонецЕсли; - КонецЕсли; - - //////////////////////////////////////////////////////////////////////////////// - // Генератор - - ОтчетыСервер.ВывестиЭлементыНастройки(ЭтотОбъект, Элементы, СвойстваНастройки, ГруппаВывода, Прочее); - КонецЦикла; - - Элементы.ИзменитьУсловияОтборов.Видимость = Прочее.ЕстьОтборыСУсловиями; - - ОтчетыСервер.ВывестиПоПорядку(ЭтотОбъект, ГруппыВывода.БыстрыеОтборы, Элементы.БыстрыеОтборы, 2, Ложь); - ОтчетыСервер.ВывестиПоПорядку(ЭтотОбъект, ГруппыВывода.ОбычныеОтборы, Элементы.ОбычныеОтборы, 2, Ложь); - ОтчетыСервер.ВывестиПоПорядку(ЭтотОбъект, ГруппыВывода.ДополнительныеШапка, Элементы.СтраницаДополнительноШапка, 1); - ОтчетыСервер.ВывестиПоПорядку(ЭтотОбъект, ГруппыВывода.ДополнительныеПодвал, Элементы.СтраницаДополнительноПодвал, 1); - - НомерДополнительнойГруппы = 0; - Для Каждого ОписаниеЗакладки Из ГруппыВывода.ДополнительныеЗакладки Цикл - НомерДополнительнойГруппы = НомерДополнительнойГруппы + 1; - ГруппаВывода = ОписаниеЗакладки.Значение; - - ГруппаИмя = "ГруппаНастроек_" + Строка(НомерДополнительнойГруппы); - КолонкиИмя = "ГруппаНастроек_Колонки_" + Строка(НомерДополнительнойГруппы); - ОтступИмя = "ГруппаНастроек_Отступ_" + Строка(НомерДополнительнойГруппы); - - ТекущаяГруппа = Элементы.Добавить(ГруппаИмя, Тип("ГруппаФормы"), Элементы.СтраницаДополнительноГруппировки); - ТекущаяГруппа.Вид = ВидГруппыФормы.ОбычнаяГруппа; - ТекущаяГруппа.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Вертикальная; - ТекущаяГруппа.Заголовок = ГруппаВывода.Заголовок; - ТекущаяГруппа.Отображение = ОтображениеОбычнойГруппы.Нет; - ТекущаяГруппа.ОтображатьЗаголовок = Истина; - ТекущаяГруппа.ШрифтЗаголовка = Новый Шрифт(ШрифтыСтиля.ОбычныйШрифтТекста, , , Истина); - ТекущаяГруппа.ЦветТекстаЗаголовка = ЦветаСтиля.ЦветТекстаПоля; - - Если ГруппаВывода.ИмяФлажка <> "" Тогда - ТекущаяГруппа.ОтображатьЗаголовок = Ложь; - Флажок = Элементы[ГруппаВывода.ИмяФлажка]; - Флажок.Заголовок = ГруппаВывода.Заголовок; - Элементы.Переместить(Флажок, ТекущаяГруппа); - КонецЕсли; - - Если ГруппаВывода.Размер > 0 Тогда - Колонки = Элементы.Добавить(КолонкиИмя, Тип("ГруппаФормы"), ТекущаяГруппа); - Колонки.Вид = ВидГруппыФормы.ОбычнаяГруппа; - Колонки.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Горизонтальная; - Колонки.Отображение = ОтображениеОбычнойГруппы.Нет; - Колонки.ОтображатьЗаголовок = Ложь; - - Отступ = Элементы.Добавить(ОтступИмя, Тип("ДекорацияФормы"), Колонки); - Отступ.Вид = ВидДекорацииФормы.Надпись; - Отступ.Заголовок = " "; - - ОтчетыСервер.ВывестиПоПорядку(ЭтотОбъект, ГруппаВывода, Колонки, 1); - КонецЕсли; - КонецЦикла; - - // Удаление старых и добавление новых реквизитов. - Для Каждого КлючИЗначение Из ПараметрыЗаполнения.Реквизиты.Существующие Цикл - ПараметрыЗаполнения.Реквизиты.Удаляемые.Добавить(КлючИЗначение.Ключ); - КонецЦикла; - ИзменитьРеквизиты(ПараметрыЗаполнения.Реквизиты.Добавляемые, ПараметрыЗаполнения.Реквизиты.Удаляемые); - - // Поля ввода (установка значений и связей). - Для Каждого КлючИЗначение Из ДобавленныеПоляВвода Цикл - ИмяРеквизита = КлючИЗначение.Ключ; - ЭтотОбъект[ИмяРеквизита] = КлючИЗначение.Значение; - Элементы[ИмяРеквизита].ПутьКДанным = ИмяРеквизита; - КонецЦикла; - - // Стандартные периоды (установка значений и связей). - Для Каждого СвойстваНастройки Из ДобавленныеСтандартныеПериоды Цикл - Дополнительно = СвойстваНастройки.Дополнительно; - ЭтотОбъект[Дополнительно.ЗначениеИмя] = СвойстваНастройки.Значение; - Элементы[Дополнительно.ПериодНачалоИмя].ПутьКДанным = Дополнительно.ЗначениеИмя + ".ДатаНачала"; - Элементы[Дополнительно.ПериодОкончаниеИмя].ПутьКДанным = Дополнительно.ЗначениеИмя + ".ДатаОкончания"; - КонецЦикла; - - // Поля подбора (установка значений и связей). - Для Каждого СвойстваНастройки Из ДобавленныеСпискиЗначений Цикл - Дополнительно = СвойстваНастройки.Дополнительно; - ТаблицаИмя = Дополнительно.ТаблицаИмя; - ТаблицаФормы = Элементы[ТаблицаИмя]; - КолонкаИспользование = Элементы[Дополнительно.ИмяКолонкиИспользование]; - КолонкаЗначение = Элементы[Дополнительно.ИмяКолонкиЗначение]; - СписокСФлажками = Новый СписокЗначений; - - ТипНеопределено = Тип("Неопределено"); - ОписаниеТиповНеопределено = Новый ОписаниеТипов("Неопределено"); - Количество = СвойстваНастройки.ОтмеченныеЗначения.Количество(); - Для Номер = 1 По Количество Цикл - ОбратныйИндекс = Количество - Номер; - ЭлементСписка = СвойстваНастройки.ОтмеченныеЗначения[ОбратныйИндекс]; - Значение = ЭлементСписка.Значение; - Если Не ЗначениеЗаполнено(ЭлементСписка.Представление) - И (Значение = Неопределено - Или Значение = ТипНеопределено - Или Значение = ОписаниеТиповНеопределено - Или Не ЗначениеЗаполнено(Значение)) Тогда - СвойстваНастройки.ОтмеченныеЗначения.Удалить(ОбратныйИндекс); - Продолжить; // Запрет пустых значений. - КонецЕсли; - Если СвойстваНастройки.ОграничиватьВыборУказаннымиЗначениями - И СвойстваНастройки.ЗначенияДляВыбора.НайтиПоЗначению(Значение) = Неопределено Тогда - СвойстваНастройки.ОтмеченныеЗначения.Удалить(ОбратныйИндекс); - Продолжить; // Выбранное значение не входит в список доступных для выбора. - КонецЕсли; - ОтчетыКлиентСервер.ДобавитьУникальноеЗначениеВСписок(СписокСФлажками, Значение, ЭлементСписка.Представление, Истина); - КонецЦикла; - - Для Каждого ЭлементСписка Из СвойстваНастройки.ЗначенияДляВыбора Цикл - ОтчетыКлиентСервер.ДобавитьУникальноеЗначениеВСписок(СписокСФлажками, ЭлементСписка.Значение, ЭлементСписка.Представление, Ложь); - КонецЦикла; - - СписокСФлажками.СортироватьПоПредставлению(НаправлениеСортировки.Возр); - - ЭтотОбъект[ТаблицаИмя] = СписокСФлажками; - ЭтотОбъект[ТаблицаИмя].ТипЗначения = СвойстваНастройки.ОписаниеТипов; - ТаблицаФормы.ПутьКДанным = ТаблицаИмя; - КолонкаЗначение.ПутьКДанным = ТаблицаИмя + ".Значение"; - КолонкаИспользование.ПутьКДанным = ТаблицаИмя + ".Пометка"; - - // Некоторые обработчики событий можно подключить только после установки связи элементов с данными. - ТаблицаФормы.УстановитьДействие("ПередНачаломИзменения", "Подключаемый_СписокСПодбором_ПередНачаломИзменения"); - ТаблицаФормы.УстановитьДействие("ПередОкончаниемРедактирования", "Подключаемый_СписокСПодбором_ПередОкончаниемРедактирования"); - ТаблицаФормы.УстановитьДействие("ПриИзменении", "Подключаемый_СписокСПодбором_ПриИзменении"); - Если СвойстваНастройки.ОграничиватьВыборУказаннымиЗначениями Тогда - ТаблицаФормы.УстановитьДействие("ПередНачаломДобавления", "Подключаемый_ФиксированныйСписок_ПередНачаломДобавления"); - ТаблицаФормы.УстановитьДействие("ПередУдалением", "Подключаемый_ФиксированныйСписок_ПередУдалением"); - Иначе - ТаблицаФормы.УстановитьДействие("ОбработкаВыбора", "Подключаемый_СписокСПодбором_ОбработкаВыбора"); - КолонкаЗначение.УстановитьДействие("АвтоПодбор", "Подключаемый_СписокСПодбором_Значение_АвтоПодбор"); - КонецЕсли; - КолонкаИспользование.УстановитьДействие("ПриИзменении", "Подключаемый_СписокСПодбором_Использование_ПриИзменении"); - КонецЦикла; - - // Сохранение соответствий для быстрого поиска в данные формы. - БыстрыйПоискПользовательскихНастроек = Новый ФиксированноеСоответствие(СоответствиеПользовательскихНастроек); - БыстрыйПоискИменОбъектовМетаданных = Новый ФиксированноеСоответствие(СоответствиеИменОбъектовМетаданных); - БыстрыйПоискОтключаемыхСвязей = Новый ФиксированноеСоответствие(СоответствиеОтключаемыхСвязей); - БыстрыйПоискНастроекВарианта = Новый ФиксированноеСоответствие(СоответствиеНастроекВарианта); - - ПользовательскиеНастройкиКД.ДополнительныеСвойства.Вставить("ЭлементыФормы", ДополнительныеНастройкиЭлементов); -КонецПроцедуры - -&НаСервере -Функция ПолноеИмяРеквизита(Реквизит) - Возврат ?(ПустаяСтрока(Реквизит.Путь), "", Реквизит.Путь + ".") + Реквизит.Имя; -КонецФункции - -&НаСервере -Процедура РасширенныеНастройкиЗагрузитьЗначения(ПараметрыЗаполнения, Информация) - Если РежимИзмененияУзлаВарианта Тогда - Найденные = Информация.ДеревоВарианта.Строки.НайтиСтроки(Новый Структура("ИдентификаторКД", ИдентификаторТекущегоУзлаКД), Истина); - КорневаяСтрока = Найденные[0]; - Иначе - КорневаяСтрока = Информация.ДеревоВариантаКорневаяСтрока; - КонецЕсли; - Информация.Вставить("ТекущаяСтрокаДерева", КорневаяСтрока); - Информация.НастройкиВарианта.Колонки.Добавить("ИдентификаторВФорме"); - - Если РежимИзмененияУзлаВарианта И ТипТекущегоУзлаКД <> "Диаграмма" Тогда - СоставГруппировки.ПолучитьЭлементы().Очистить(); - ЗарегистрироватьЭлементыСоставаГруппировки(); - Иначе - Элементы.СтраницаСоставГруппировки.Видимость = Ложь; - КонецЕсли; - - ВыбранныеПоля.ПолучитьЭлементы().Очистить(); - ВидимостьВыбранныхПолей = ЗарегистрироватьЭлементыВыбранныхПолей(); - Если ВидимостьВыбранныхПолей Тогда - СтандартныеПодсистемыКлиентСервер.РазвернутьУзлыДерева(ПараметрыЗаполнения.Результат, "ВыбранныеПоля", "*", Истина); - КонецЕсли; - - ВидимостьСортировок = Ложь; - Если ВидимостьВыбранныхПолей И ТипТекущегоУзлаКД <> "Диаграмма" Тогда - Сортировка.ПолучитьЭлементы().Очистить(); - ВидимостьСортировок = ЗарегистрироватьЭлементыСортировки(); - Если ВидимостьСортировок Тогда - СтандартныеПодсистемыКлиентСервер.РазвернутьУзлыДерева(ПараметрыЗаполнения.Результат, "Сортировка", "*", Истина); - КонецЕсли; - КонецЕсли; - - ВидимостьТаблицыОтборов = (РасширенныйРежим = 1 И ТипТекущегоУзлаКД <> "Диаграмма"); - Если ВидимостьТаблицыОтборов Тогда - Отборы.ПолучитьЭлементы().Очистить(); - ЗарегистрироватьПараметры(Информация); - ЗарегистрироватьЭлементыОтборов(Информация); - СтандартныеПодсистемыКлиентСервер.РазвернутьУзлыДерева(ПараметрыЗаполнения.Результат, "Отборы", "*", Истина); - КонецЕсли; - - ВидимостьУсловногоОформления = (РасширенныйРежим = 1); - Если ВидимостьУсловногоОформления Тогда - Оформление.ПолучитьЭлементы().Очистить(); - ЗарегистрироватьЭлементыОформления(Информация); - СтандартныеПодсистемыКлиентСервер.РазвернутьУзлыДерева(ПараметрыЗаполнения.Результат, "Оформление", "*", Истина); - КонецЕсли; - - Если ВидимостьВыбранныхПолей Тогда - Элементы.СтраницаВыбранныеПоляИСортировки.Заголовок = ?(ВидимостьСортировок, НСтр("ru = 'Поля и сортировки'"), НСтр("ru = 'Поля'")); - КонецЕсли; - - Если РасширенныйРежим = 1 И Не РежимИзмененияУзлаВарианта Тогда - Элементы.ГруппаЕстьВложенныеОтчеты.Видимость = Информация.ЕстьВложенныеОтчеты; - Элементы.ГруппаЕстьВложенныеОтборы.Видимость = Информация.ЕстьВложенныеОтборы; - Элементы.ГруппаЕстьВложенноеОформление.Видимость = Информация.ЕстьВложенноеОформление; - Элементы.ГруппаЕстьВложенныеПоляИлиСортировки.Видимость = Информация.ЕстьВложенныеПоля Или Информация.ЕстьВложенныеСортировки; - Иначе - Элементы.ГруппаЕстьВложенныеОтчеты.Видимость = Ложь; - Элементы.ГруппаЕстьВложенныеОтборы.Видимость = Ложь; - Элементы.ГруппаЕстьВложенноеОформление.Видимость = Ложь; - Элементы.ГруппаЕстьВложенныеПоляИлиСортировки.Видимость = Ложь; - КонецЕсли; - - Если ТипТекущегоУзлаКД = "Диаграмма" Тогда - Элементы.ТекущийУзелКДТипДиаграммы.Видимость = Истина; - Элементы.ТекущийУзелКДТипДиаграммы.ОграничениеТипа = Новый ОписаниеТипов("ТипДиаграммы"); - - КорневойУзелКД = Отчет.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(ИдентификаторТекущегоУзлаКД); - Если ТипЗнч(КорневойУзелКД) = Тип("НастройкиВложенногоОбъектаКомпоновкиДанных") Тогда - КорневойУзелКД = КорневойУзелКД.Настройки; - КонецЕсли; - ПараметрКД = КорневойУзелКД.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ТипДиаграммы")); - Если ПараметрКД = Неопределено Тогда - Элементы.ТекущийУзелКДТипДиаграммы.Видимость = Ложь; - Иначе - ТекущийУзелКДТипДиаграммы = ПараметрКД.Значение; - КонецЕсли; - Иначе - Элементы.ТекущийУзелКДТипДиаграммы.Видимость = Ложь; - КонецЕсли; - - ВидимостьСтруктуры = Ложь; - Если Не РежимИзмененияУзлаВарианта И КорневаяСтрока.Тип <> "НастройкиВложенногоОбъекта" Тогда - СтрокиРодителя = СтруктураВарианта.ПолучитьЭлементы(); - СтрокиРодителя.Очистить(); - ЕстьФлажки = ЗарегистрироватьЭлементСтруктурыОтчета(КорневаяСтрока, СтрокиРодителя); - СтандартныеПодсистемыКлиентСервер.РазвернутьУзлыДерева(ПараметрыЗаполнения.Результат, "СтруктураВарианта", "*", Истина); - ВидимостьСтруктуры = ЕстьФлажки Или РасширенныйРежим = 1; - КонецЕсли; - - Если Не Информация.ЕстьБыстрыеНастройки - И Не Информация.ЕстьОбычныеНастройки - И Не ВидимостьСтруктуры - И Не ВидимостьУсловногоОформления - И Не ВидимостьВыбранныхПолей - И Не ВидимостьСортировок - И Не ВидимостьТаблицыОтборов Тогда - Элементы.СтраницаНетПользовательскихНастроек.Видимость = Истина; - Элементы.СтраницыНастроек.ОтображениеСтраниц = ОтображениеСтраницФормы.Нет; - Элементы.СтраницыНастроек.ТекущаяСтраница = Элементы.СтраницаНетПользовательскихНастроек; - Элементы.ЗакрытьИСформировать.Видимость = Ложь; - Иначе - Элементы.СтраницаВыбранныеПоляИСортировки.Видимость = ВидимостьВыбранныхПолей; - Элементы.ГруппаСортировки.Видимость = ВидимостьСортировок; - Элементы.ГруппаОтборыРасширенныйРежим.Видимость = ВидимостьТаблицыОтборов; - Элементы.ГруппаОформлениеРасширенныйРежим.Видимость = ВидимостьУсловногоОформления; - Элементы.СтраницаСтруктураВарианта.Видимость = ВидимостьСтруктуры; - Элементы.СтраницаНетПользовательскихНастроек.Видимость = Ложь; - Элементы.СтраницыНастроек.ОтображениеСтраниц = ОтображениеСтраницФормы.ЗакладкиСверху; - Элементы.ЗакрытьИСформировать.Видимость = Истина; - КонецЕсли; - -КонецПроцедуры - -&НаСервере -Функция ЗарегистрироватьЭлементСтруктурыОтчета(СтрокаДерева, СтрокиРодителя) - СтрокаФормы = СтрокиРодителя.Добавить(); - ЗаполнитьЗначенияСвойств(СтрокаФормы, СтрокаДерева, "ИдентификаторКД, Представление, Заголовок, Тип, Подтип, - |СодержитОтборы, СодержитУсловноеОформление"); - СтрокаФормы.СодержитПоляИлиСортировки = СтрокаДерева.СодержитПоля Или СтрокаДерева.СодержитСортировки; - - СтрокаФормы.ФлажокДоступен = Истина; - Если (РасширенныйРежим = 0 И СтрокаДерева.ПользовательскаяНастройка = Неопределено) - Или СтрокаДерева.Тип = "КоллекцияЭлементовСтруктурыДиаграммы" - Или СтрокаДерева.Тип = "КоллекцияЭлементовСтруктурыТаблицы" - Или СтрокаДерева.Тип = "Настройки" Тогда - СтрокаФормы.ФлажокДоступен = Ложь; - КонецЕсли; - - Если РасширенныйРежим = 0 И ЗначениеЗаполнено(СтрокаФормы.Заголовок) Тогда - СтрокаФормы.Представление = СтрокаФормы.Заголовок; - СтрокаФормы.Подсвечивать = Истина; - КонецЕсли; - - СтрокаФормы.ИндексКартинки = -1; - Если СтрокаДерева.Тип = "Группировка" - Или СтрокаДерева.Тип = "ГруппировкаТаблицы" - Или СтрокаДерева.Тип = "ГруппировкаДиаграммы" Тогда - СтрокаФормы.ИндексКартинки = 1; - ИначеЕсли СтрокаДерева.Тип = "Таблица" Тогда - СтрокаФормы.ИндексКартинки = 2; - ИначеЕсли СтрокаДерева.Тип = "Диаграмма" Тогда - СтрокаФормы.ИндексКартинки = 3; - ИначеЕсли СтрокаДерева.Тип = "НастройкиВложенногоОбъекта" Тогда - СтрокаФормы.ИндексКартинки = 4; - КонецЕсли; - - Если СтрокаФормы.Тип = "Настройки" Тогда - СтрокаФормы.ЭтоРаздел = Истина; - СтрокаФормы.Заголовок = ""; - СтрокаФормы.Представление = НСтр("ru = 'Отчет'"); - СтрокаФормы.СодержитОтборы = Ложь; - СтрокаФормы.СодержитПоляИлиСортировки = Ложь; - СтрокаФормы.СодержитУсловноеОформление = Ложь; - СтрокаФормы.Подсвечивать = Ложь; - КонецЕсли; - - Если СтрокаФормы.ФлажокДоступен Тогда - Если РасширенныйРежим = 0 Тогда - СтрокаФормы.ИдентификаторКД = СтрокаДерева.ПользовательскаяНастройка.ИдентификаторКД; - СтрокаФормы.Использование = СтрокаДерева.ПользовательскаяНастройка.ПользовательскаяНастройкаКД.Использование; - Иначе - СтрокаФормы.Использование = СтрокаДерева.УзелКД.Использование; - КонецЕсли; - КонецЕсли; - - ПодчиненныеСтрокиРодителя = СтрокаФормы.ПолучитьЭлементы(); - - ЕстьВложенныеФлажки = Ложь; - Для Каждого ПодчиненнаяСтрокаДерева Из СтрокаДерева.Строки Цикл - Если ЗарегистрироватьЭлементСтруктурыОтчета(ПодчиненнаяСтрокаДерева, ПодчиненныеСтрокиРодителя) Тогда - ЕстьВложенныеФлажки = Истина; - КонецЕсли; - КонецЦикла; - - Возврат СтрокаФормы.ФлажокДоступен Или ЕстьВложенныеФлажки; -КонецФункции - -&НаСервере -Функция ЗарегистрироватьЭлементыСортировки() - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, "Сортировка", Неопределено); - Если УзелКД = Неопределено Тогда - Возврат Ложь; - КонецЕсли; - НаборСтрокКД = УзелКД.Элементы; - - СтрокаРаздел = Сортировка.ПолучитьЭлементы().Добавить(); - СтрокаРаздел.ЭтоРаздел = Истина; - СтрокаРаздел.Представление = НСтр("ru = 'Сортировки'"); - СтрокаРаздел.ИндексКартинки = 15; - СтрокаРаздел.ИдентификаторКД = Неопределено; - НаборСтрок = СтрокаРаздел.ПолучитьЭлементы(); - - ДоступныеПоля = УзелКД.ДоступныеПоляПорядка; - Для Каждого ЭлементКД Из НаборСтрокКД Цикл - ТипНастройки = ОтчетыКлиентСервер.ТипНастройкиСтрокой(ТипЗнч(ЭлементКД)); - Если ТипНастройки = "ЭлементПорядка" И Не ЗначениеЗаполнено(ЭлементКД.Поле) Тогда - Продолжить; - КонецЕсли; - - СтрокаТаблицы = НаборСтрок.Добавить(); - СтрокаТаблицы.ИдентификаторКД = УзелКД.ПолучитьИдентификаторПоОбъекту(ЭлементКД); - СтрокаТаблицы.ТипНастройки = ТипНастройки; - СтрокаТаблицы.Использование = ЭлементКД.Использование; - СтрокаТаблицы.ИндексКартинки = -1; - - Если ТипНастройки = "АвтоЭлементПорядка" Тогда - СтрокаТаблицы.Представление = НСтр("ru = 'Авто (сортировки родителя)'"); - ИначеЕсли ТипНастройки = "ЭлементПорядка" Тогда - СтрокаТаблицы.Направление = ЭлементКД.ТипУпорядочивания; - ДоступноеПоле = ДоступныеПоля.НайтиПоле(ЭлементКД.Поле); - Если ДоступноеПоле = Неопределено Тогда - СтрокаТаблицы.Представление = ОтчетыКлиентСервер.ИмяВПредставление(Строка(ЭлементКД.Поле)); - Иначе - СтрокаТаблицы.Представление = ДоступноеПоле.Заголовок; - КонецЕсли; - КонецЕсли; - КонецЦикла; - - Возврат Истина; -КонецФункции - -&НаСервере -Процедура ЗарегистрироватьЭлементыСоставаГруппировки(УзелКД = Неопределено, НаборСтрокКД = Неопределено, НаборСтрок = Неопределено) - Если УзелКД = Неопределено Тогда - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, "СоставГруппировки", Неопределено); - Если УзелКД = Неопределено Тогда - Возврат; - КонецЕсли; - КонецЕсли; - Если НаборСтрокКД = Неопределено Тогда - НаборСтрокКД = УзелКД.Элементы; - КонецЕсли; - Если НаборСтрок = Неопределено Тогда - НаборСтрок = СоставГруппировки.ПолучитьЭлементы(); - КонецЕсли; - ДоступныеПоля = УзелКД.ДоступныеПоляПолейГруппировок; - Для Каждого ЭлементКД Из НаборСтрокКД Цикл - ТипНастройки = ОтчетыКлиентСервер.ТипНастройкиСтрокой(ТипЗнч(ЭлементКД)); - ПолеКД = Неопределено; - Если ТипНастройки = "ПолеГруппировки" Тогда - Если Не ЗначениеЗаполнено(ЭлементКД.Поле) Тогда - Продолжить; - КонецЕсли; - ПолеКД = ЭлементКД.Поле; - КонецЕсли; - - СтрокаТаблицы = НаборСтрок.Добавить(); - СтрокаТаблицы.ИдентификаторКД = УзелКД.ПолучитьИдентификаторПоОбъекту(ЭлементКД); - СтрокаТаблицы.ТипНастройки = ТипНастройки; - СтрокаТаблицы.Использование = ЭлементКД.Использование; - СтрокаТаблицы.ПолеКД = ПолеКД; - - Если ТипНастройки = "АвтоПолеГруппировки" Тогда - СтрокаТаблицы.Представление = НСтр("ru = 'Авто (по всем полям)'"); - СтрокаТаблицы.ИндексКартинки = 6; - ИначеЕсли ТипНастройки = "ПолеГруппировки" Тогда - СтрокаТаблицы.ТипГруппировки = ЭлементКД.ТипГруппировки; - СтрокаТаблицы.ТипДополнения = ЭлементКД.ТипДополнения; - ДоступноеПоле = ДоступныеПоля.НайтиПоле(ЭлементКД.Поле); - Если ДоступноеПоле = Неопределено Тогда - СтрокаТаблицы.Представление = ОтчетыКлиентСервер.ИмяВПредставление(Строка(ЭлементКД.Поле)); - СтрокаТаблицы.ИндексКартинки = 5; - Иначе - СтрокаТаблицы.Представление = ДоступноеПоле.Заголовок; - Если ДоступноеПоле.Ресурс Тогда - СтрокаТаблицы.ИндексКартинки = 20; - ИначеЕсли ДоступноеПоле.Таблица Тогда - СтрокаТаблицы.ИндексКартинки = 21; - ИначеЕсли ДоступноеПоле.Папка Тогда - СтрокаТаблицы.ИндексКартинки = 1; - Иначе - СтрокаТаблицы.ИндексКартинки = 4; - КонецЕсли; - ИнформацияОТипах = ОтчетыКлиентСервер.АнализТипов(ДоступноеПоле.ТипЗначения, Ложь); - Если ИнформацияОТипах.СодержитТипПериод Или ИнформацияОТипах.СодержитТипДата Тогда - СтрокаТаблицы.ПоказыватьТипДополнения = Истина; - КонецЕсли; - КонецЕсли; - КонецЕсли; - КонецЦикла; -КонецПроцедуры - -&НаСервере -Функция ЗарегистрироватьЭлементыВыбранныхПолей(УзелКД = Неопределено, НаборСтрокКД = Неопределено, НаборСтрок = Неопределено, ДоступныеПоля = Неопределено) - Если УзелКД = Неопределено Тогда - УзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, "ВыбранныеПоля", Неопределено); - Если УзелКД = Неопределено Тогда - Возврат Ложь; - КонецЕсли; - КонецЕсли; - Если НаборСтрокКД = Неопределено Тогда - НаборСтрокКД = УзелКД.Элементы; - КонецЕсли; - Если НаборСтрок = Неопределено Тогда - СтрокаРаздел = ВыбранныеПоля.ПолучитьЭлементы().Добавить(); - СтрокаРаздел.ЭтоРаздел = Истина; - СтрокаРаздел.Представление = НСтр("ru = 'Поля'"); - СтрокаРаздел.ИндексКартинки = 14; - СтрокаРаздел.ИдентификаторКД = "ВыбранныеПоля"; - НаборСтрок = СтрокаРаздел.ПолучитьЭлементы(); - КонецЕсли; - Если ДоступныеПоля = Неопределено Тогда - ДоступныеПоля = УзелКД.ДоступныеПоляВыбора; - КонецЕсли; - - Для Каждого ЭлементКД Из НаборСтрокКД Цикл - ТипНастройки = ОтчетыКлиентСервер.ТипНастройкиСтрокой(ТипЗнч(ЭлементКД)); - ЭтоГруппа = Ложь; - ПолеКД = Неопределено; - Если ТипНастройки = "АвтоВыбранноеПоле" Тогда - Представление = НСтр("ru = 'Авто (поля родителя)'"); - ИндексКартинки = 6; - Иначе - Если ТипНастройки = "ГруппаВыбранныхПолей" Тогда - ЭтоГруппа = Истина; - ИндексКартинки = 1; - Иначе - ИндексКартинки = 4; - КонецЕсли; - - Представление = ЭлементКД.Заголовок; - Если ЗначениеЗаполнено(ЭлементКД.Поле) Тогда - ДоступноеПоле = ДоступныеПоля.НайтиПоле(ЭлементКД.Поле); - ПолеКД = ЭлементКД.Поле; - Иначе - Если Не ЭтоГруппа Тогда - Продолжить; - КонецЕсли; - ДоступноеПоле = Неопределено; - КонецЕсли; - Если ДоступноеПоле = Неопределено Тогда - Если Не ЭтоГруппа Тогда - ИндексКартинки = 5; - Представление = ОтчетыКлиентСервер.ИмяВПредставление(Строка(ЭлементКД.Поле)); - КонецЕсли; - ИначеЕсли Представление = "" Тогда - Представление = ДоступноеПоле.Заголовок; - КонецЕсли; - Если ЭтоГруппа И ЭлементКД.Расположение <> РасположениеПоляКомпоновкиДанных.Авто Тогда - Представление = Представление + " (" + Строка(ЭлементКД.Расположение) + ")"; - КонецЕсли; - КонецЕсли; - - СтрокаТаблицы = НаборСтрок.Добавить(); - ЗаполнитьЗначенияСвойств(СтрокаТаблицы, ЭлементКД); - СтрокаТаблицы.ТипНастройки = ТипНастройки; - СтрокаТаблицы.ИндексКартинки = ИндексКартинки; - СтрокаТаблицы.ЭтоГруппа = ЭтоГруппа; - СтрокаТаблицы.Представление = Представление; - СтрокаТаблицы.ИдентификаторКД = УзелКД.ПолучитьИдентификаторПоОбъекту(ЭлементКД); - СтрокаТаблицы.ПолеКД = ПолеКД; - - Если ЭтоГруппа Тогда - ЗарегистрироватьЭлементыВыбранныхПолей(УзелКД, ЭлементКД.Элементы, СтрокаТаблицы.ПолучитьЭлементы(), ДоступныеПоля); - КонецЕсли; - КонецЦикла; - - Возврат Истина; -КонецФункции - -&НаСервере -Процедура ЗарегистрироватьПараметры(Информация) - Если РежимИзмененияУзлаВарианта Тогда - Возврат; - КонецЕсли; - - УсловияПоиска = Новый Структура("СтрокаДерева, ИмяКоллекции", Информация.ТекущаяСтрокаДерева, "ПараметрыДанных"); - Найденные = Информация.НастройкиВарианта.Строки.НайтиСтроки(УсловияПоиска, Ложь); - Если Найденные.Количество() = 0 Тогда - Возврат; - КонецЕсли; - НаборСтрокВарианта = Найденные[0].Строки; - - СтрокаРаздел = Отборы.ПолучитьЭлементы().Добавить(); - СтрокаРаздел.ЭтоРаздел = Истина; - СтрокаРаздел.ЭтоПараметр = Истина; - СтрокаРаздел.Представление = НСтр("ru = 'Параметры'"); - СтрокаРаздел.ИндексКартинки = 2; - СтрокаРаздел.ИдентификаторКД = "ПараметрыДанных"; - НаборСтрок = СтрокаРаздел.ПолучитьЭлементы(); - - Для Каждого НастройкаВарианта Из НаборСтрокВарианта Цикл - Если Не НастройкаВарианта.ВыводРазрешен Тогда - Продолжить; - КонецЕсли; - - ДоступнаяНастройкаКД = НастройкаВарианта.ДоступнаяНастройкаКД; - ЭлементКД = НастройкаВарианта.ЭлементКД; - - Если ЗначениеЗаполнено(НастройкаВарианта.ДоступнаяНастройкаКД.Заголовок) Тогда - Представление = НастройкаВарианта.ДоступнаяНастройкаКД.Заголовок; - Иначе - Представление = Строка(ЭлементКД.Параметр); - КонецЕсли; - - СтрокаТаблицы = НаборСтрок.Добавить(); - СтрокаТаблицы.Использование = ЭлементКД.Использование; - СтрокаТаблицы.Значение = НастройкаВарианта.Значение; - СтрокаТаблицы.ИдентификаторКД = НастройкаВарианта.ИдентификаторКД; - СтрокаТаблицы.Представление = Представление; - СтрокаТаблицы.ЭтоПараметр = Истина; - СтрокаТаблицы.ИндексКартинки = -1; - СтрокаТаблицы.ТипЗначения = НастройкаВарианта.ДоступнаяНастройкаКД.ТипЗначения; - СтрокаТаблицы.ВводСписком = НастройкаВарианта.ВводСписком; - СтрокаТаблицы.ВыводитьФлажок = НастройкаВарианта.ВыводитьФлажок; - СтрокаТаблицы.ВыборГруппИЭлементов = НастройкаВарианта.ВыборГруппИЭлементов; - - Если НастройкаВарианта.ОграничиватьВыборУказаннымиЗначениями - И ТипЗнч(НастройкаВарианта.ЗначенияДляВыбора) = Тип("СписокЗначений") Тогда - Если СтрокаТаблицы.ВводСписком Тогда - Если ТипЗнч(СтрокаТаблицы.Значение) = Тип("СписокЗначений") Тогда - Для Каждого ЭлементСписка Из СтрокаТаблицы.Значение Цикл - ЭлементДляВыбора = НастройкаВарианта.ЗначенияДляВыбора.НайтиПоЗначению(ЭлементСписка.Значение); - Если ЭлементДляВыбора <> Неопределено Тогда - ЭлементСписка.Представление = ЭлементДляВыбора.Представление; - КонецЕсли; - КонецЦикла; - КонецЕсли; - Иначе - СтрокаТаблицы.ФиксированныйСписокВыбора = Истина; - ЭлементДляВыбора = НастройкаВарианта.ЗначенияДляВыбора.НайтиПоЗначению(СтрокаТаблицы.Значение); - Если ЭлементДляВыбора <> Неопределено Тогда - СтрокаТаблицы.ПредставлениеЗначения = ЭлементДляВыбора.Представление; - КонецЕсли; - КонецЕсли; - КонецЕсли; - - НастройкаВарианта.ИдентификаторВФорме = СтрокаТаблицы.ПолучитьИдентификатор(); - - Если ТипЗнч(СтрокаТаблицы.Значение) = Тип("СтандартныйПериод") Тогда - СтрокаТаблицы.Условие = ОтчетыКлиентСервер.ПолучитьВидСтандартногоПериода(СтрокаТаблицы.Значение); - СтрокаТаблицы.ТипУсловия = Новый ОписаниеТипов("ПеречислениеСсылка.ДоступныеПериодыОтчета"); - Иначе - СтрокаТаблицы.ТипУсловия = Новый ОписаниеТипов("Неопределено"); - КонецЕсли; - - СтрокаТаблицы.Заголовок = Представление; - Если ЗначениеЗаполнено(ЭлементКД.ИдентификаторПользовательскойНастройки) Тогда - Если ЗначениеЗаполнено(ЭлементКД.ПредставлениеПользовательскойНастройки) Тогда - СтрокаТаблицы.Заголовок = ЭлементКД.ПредставлениеПользовательскойНастройки; - КонецЕсли; - Если ЭлементКД.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ Тогда - СтрокаТаблицы.ИндексКартинкиДоступа = 2; - ИначеЕсли ЭлементКД.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный Тогда - СтрокаТаблицы.ИндексКартинкиДоступа = 4; - Иначе - СтрокаТаблицы.ИндексКартинкиДоступа = 5; - КонецЕсли; - Иначе - СтрокаТаблицы.ИндексКартинкиДоступа = 5; - КонецЕсли; - - Дополнительно = Новый Структура("ОписаниеТипов, ОграничиватьВыборУказаннымиЗначениями, - |ПараметрыВыбора, ФормаВыбора, ЗначенияДляВыбора"); - ЗаполнитьЗначенияСвойств(Дополнительно, НастройкаВарианта); - СтрокаТаблицы.Дополнительно = Дополнительно; - - КонецЦикла; -КонецПроцедуры - -&НаСервере -Процедура ЗарегистрироватьЭлементыОтборов(Информация, НаборСтрокВарианта = Неопределено, НаборСтрокФормы = Неопределено) - Если НаборСтрокВарианта = Неопределено Тогда - УсловияПоиска = Новый Структура("СтрокаДерева, ИмяКоллекции", Информация.ТекущаяСтрокаДерева, "Отбор"); - Найденные = Информация.НастройкиВарианта.Строки.НайтиСтроки(УсловияПоиска, Ложь); - Если Найденные.Количество() = 0 Тогда - Возврат; - КонецЕсли; - НаборСтрокВарианта = Найденные[0].Строки; - КонецЕсли; - Если НаборСтрокФормы = Неопределено Тогда - НаборСтрокФормы = Отборы.ПолучитьЭлементы(); - СтрокаРаздел = НаборСтрокФормы.Добавить(); - СтрокаРаздел.ЭтоРаздел = Истина; - СтрокаРаздел.Представление = НСтр("ru = 'Отборы'"); - СтрокаРаздел.ИндексКартинки = 3; - СтрокаРаздел.ИдентификаторКД = "Отборы"; - НаборСтрокФормы = СтрокаРаздел.ПолучитьЭлементы(); - КонецЕсли; - Для Каждого НастройкаВарианта Из НаборСтрокВарианта Цикл - Если НастройкаВарианта.Тип = "ГруппаЭлементовОтбора" Тогда - ЭтоГруппа = Истина; - Представление = Строка(НастройкаВарианта.ЭлементКД.ТипГруппы); - ИначеЕсли НастройкаВарианта.Тип = "ЭлементОтбора" Тогда - // БыстрыйВыбор, ВыборГруппИЭлементов, ДоступныеВидыСравнения, ДоступныеЗначения, Маска, Папка - // Поле, Ресурс, СвязьПоТипу, Таблица, ФормаВыбора, ФорматРедактирования, Элементы - // ПолучитьПараметрыВыбора(), ПолучитьСвязиПараметровВыбора(). - Если НастройкаВарианта.ДоступнаяНастройкаКД = Неопределено Тогда - Продолжить; - КонецЕсли; - ЭтоГруппа = Ложь; - Если ЗначениеЗаполнено(НастройкаВарианта.ДоступнаяНастройкаКД.Заголовок) Тогда - Представление = НастройкаВарианта.ДоступнаяНастройкаКД.Заголовок; - Иначе - Представление = Строка(НастройкаВарианта.ЭлементКД.ЛевоеЗначение); - КонецЕсли; - Иначе - Продолжить; - КонецЕсли; - - ЭлементКД = НастройкаВарианта.ЭлементКД; - - СтрокаТаблицы = НаборСтрокФормы.Добавить(); - СтрокаТаблицы.Использование = НастройкаВарианта.ЭлементКД.Использование; - СтрокаТаблицы.Представление = Представление; //ОтчетыКлиентСервер.ПредставлениеОбъектаКД(Информация.ТекущаяСтрокаДерева.УзелКД.Отбор, ЭлементКД, Неопределено).Представление - СтрокаТаблицы.Заголовок = Представление; - СтрокаТаблицы.ИдентификаторКД = НастройкаВарианта.ИдентификаторКД; - СтрокаТаблицы.ЭтоПараметр = Ложь; - СтрокаТаблицы.ЭтоГруппа = ЭтоГруппа; - СтрокаТаблицы.ВводСписком = НастройкаВарианта.ВводСписком; - СтрокаТаблицы.ВыводитьФлажок = НастройкаВарианта.ВыводитьФлажок; - СтрокаТаблицы.ФормаВыбора = НастройкаВарианта.ФормаВыбора; - СтрокаТаблицы.ВыборГруппИЭлементов = НастройкаВарианта.ВыборГруппИЭлементов; - - НастройкаВарианта.ИдентификаторВФорме = СтрокаТаблицы.ПолучитьИдентификатор(); - - ВыводитьТолькоФлажок = Ложь; - Если ЗначениеЗаполнено(ЭлементКД.Представление) Тогда - ВыводитьТолькоФлажок = Истина; - Если ЭлементКД.Представление <> "1" Тогда - СтрокаТаблицы.Заголовок = ЭлементКД.Представление; - КонецЕсли; - КонецЕсли; - Если ЗначениеЗаполнено(ЭлементКД.ПредставлениеПользовательскойНастройки) Тогда - СтрокаТаблицы.Заголовок = ЭлементКД.ПредставлениеПользовательскойНастройки; - КонецЕсли; - СтрокаТаблицы.ЗаголовокПереопределен = (СтрокаТаблицы.Заголовок <> СтрокаТаблицы.Представление); - - Если ЗначениеЗаполнено(ЭлементКД.ИдентификаторПользовательскойНастройки) Тогда - Если ЭлементКД.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ Тогда - СтрокаТаблицы.ИндексКартинкиДоступа = ?(ВыводитьТолькоФлажок, 1, 2); - ИначеЕсли ЭлементКД.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный Тогда - СтрокаТаблицы.ИндексКартинкиДоступа = ?(ВыводитьТолькоФлажок, 3, 4); - Иначе - СтрокаТаблицы.ИндексКартинкиДоступа = 5; - КонецЕсли; - Иначе - СтрокаТаблицы.ИндексКартинкиДоступа = 5; - КонецЕсли; - - Если ЭтоГруппа Тогда - СтрокаТаблицы.ИндексКартинки = -1; - ЗарегистрироватьЭлементыОтборов(Информация, НастройкаВарианта.Строки, СтрокаТаблицы.ПолучитьЭлементы()); - Иначе - СтрокаТаблицы.Значение = НастройкаВарианта.Значение; - Если НастройкаВарианта.ОграничиватьВыборУказаннымиЗначениями - И ТипЗнч(НастройкаВарианта.ЗначенияДляВыбора) = Тип("СписокЗначений") Тогда - Если СтрокаТаблицы.ВводСписком Тогда - Если ТипЗнч(СтрокаТаблицы.Значение) = Тип("СписокЗначений") Тогда - Для Каждого ЭлементСписка Из СтрокаТаблицы.Значение Цикл - ЭлементДляВыбора = НастройкаВарианта.ЗначенияДляВыбора.НайтиПоЗначению(ЭлементСписка.Значение); - Если ЭлементДляВыбора <> Неопределено Тогда - ЭлементСписка.Представление = ЭлементДляВыбора.Представление; - КонецЕсли; - КонецЦикла; - КонецЕсли; - Иначе - СтрокаТаблицы.ФиксированныйСписокВыбора = Истина; - ЭлементДляВыбора = НастройкаВарианта.ЗначенияДляВыбора.НайтиПоЗначению(СтрокаТаблицы.Значение); - Если ЭлементДляВыбора <> Неопределено Тогда - СтрокаТаблицы.ПредставлениеЗначения = ЭлементДляВыбора.Представление; - КонецЕсли; - КонецЕсли; - КонецЕсли; - СтрокаТаблицы.ТипЗначения = НастройкаВарианта.ОписаниеТипов; - СтрокаТаблицы.ИндексКартинки = -1; - Если ТипЗнч(СтрокаТаблицы.Значение) = Тип("СтандартныйПериод") Тогда - СтрокаТаблицы.Условие = ОтчетыКлиентСервер.ПолучитьВидСтандартногоПериода(СтрокаТаблицы.Значение); - СтрокаТаблицы.ТипУсловия = Новый ОписаниеТипов("ПеречислениеСсылка.ДоступныеПериодыОтчета"); - Иначе - СтрокаТаблицы.Условие = НастройкаВарианта.ВидСравнения; - СтрокаТаблицы.ТипУсловия = Новый ОписаниеТипов("ВидСравненияКомпоновкиДанных"); - КонецЕсли; - КонецЕсли; - - Дополнительно = Новый Структура("ОписаниеТипов, ОграничиватьВыборУказаннымиЗначениями, - |ПараметрыВыбора, ФормаВыбора, ЗначенияДляВыбора"); - ЗаполнитьЗначенияСвойств(Дополнительно, НастройкаВарианта); - СтрокаТаблицы.Дополнительно = Дополнительно; - - КонецЦикла; -КонецПроцедуры - -&НаСервере -Процедура ЗарегистрироватьОтключаемыеСвязи(Информация) - ОтключаемыеСвязи.Очистить(); - Для Каждого ОписаниеСвязи Из Информация.ОтключаемыеСвязи Цикл - Связь = ОтключаемыеСвязи.Добавить(); - ЗаполнитьЗначенияСвойств(Связь, ОписаниеСвязи); - Если РасширенныйРежим = 1 Тогда - Связь.ВедущийИдентификаторВФорме = ОписаниеСвязи.Ведущий.ИдентификаторВФорме; - Связь.ПодчиненныйИдентификаторВФорме = ОписаниеСвязи.Подчиненный.ИдентификаторВФорме; - Иначе - Связь.ВедущийИдентификаторВФорме = ОписаниеСвязи.Ведущий.ИдентификаторЭлемента; - Связь.ПодчиненныйИдентификаторВФорме = ОписаниеСвязи.Подчиненный.ИдентификаторЭлемента; - КонецЕсли; - КонецЦикла; -КонецПроцедуры - -&НаСервере -Процедура ЗарегистрироватьЭлементыОформления(Информация, НаборСтрокВарианта = Неопределено, НаборСтрокФормы = Неопределено) - Если НаборСтрокВарианта = Неопределено Тогда - УсловияПоиска = Новый Структура("СтрокаДерева, ИмяКоллекции", Информация.ТекущаяСтрокаДерева, "УсловноеОформление"); - Найденные = Информация.НастройкиВарианта.Строки.НайтиСтроки(УсловияПоиска, Ложь); - Если Найденные.Количество() = 0 Тогда - Возврат; - КонецЕсли; - НаборСтрокВарианта = Найденные[0].Строки; - КонецЕсли; - Если НаборСтрокФормы = Неопределено Тогда - НаборСтрокФормы = Оформление.ПолучитьЭлементы(); - КонецЕсли; - Для Каждого НастройкаВарианта Из НаборСтрокВарианта Цикл - ЭлементКД = НастройкаВарианта.ЭлементКД; - - СтрокаТаблицы = НаборСтрокФормы.Добавить(); - СтрокаТаблицы.Использование = ЭлементКД.Использование; - СтрокаТаблицы.Представление = НастройкаВарианта.Представление; - СтрокаТаблицы.Заголовок = СтрокаТаблицы.Представление; - СтрокаТаблицы.ИдентификаторКД = НастройкаВарианта.ИдентификаторКД; - СтрокаТаблицы.ИндексКартинки = -1; - - НастройкаВарианта.ИдентификаторВФорме = СтрокаТаблицы.ПолучитьИдентификатор(); - - ВыводитьТолькоФлажок = Ложь; - Если ЗначениеЗаполнено(ЭлементКД.Представление) Тогда - ВыводитьТолькоФлажок = Истина; - Если ЭлементКД.Представление <> "1" Тогда - СтрокаТаблицы.Заголовок = ЭлементКД.Представление; - КонецЕсли; - КонецЕсли; - Если ЗначениеЗаполнено(ЭлементКД.ПредставлениеПользовательскойНастройки) Тогда - СтрокаТаблицы.Заголовок = ЭлементКД.ПредставлениеПользовательскойНастройки; - КонецЕсли; - СтрокаТаблицы.ЗаголовокПереопределен = (СтрокаТаблицы.Заголовок <> СтрокаТаблицы.Представление); - - Если ЗначениеЗаполнено(ЭлементКД.ИдентификаторПользовательскойНастройки) Тогда - Если ЭлементКД.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.БыстрыйДоступ Тогда - СтрокаТаблицы.ИндексКартинкиДоступа = 2; - ИначеЕсли ЭлементКД.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный Тогда - СтрокаТаблицы.ИндексКартинкиДоступа = 4; - Иначе - СтрокаТаблицы.ИндексКартинкиДоступа = 5; - КонецЕсли; - Иначе - СтрокаТаблицы.ИндексКартинкиДоступа = 5; - КонецЕсли; - КонецЦикла; -КонецПроцедуры - -&НаКлиенте -Процедура ПеретаскиваниеВПределахТаблицы(ИсточникПеретаскивания, ИдентификаторЦели) - // Определение параметров. - ТаблицаИмя = ИсточникПеретаскивания.ТаблицаИмя; - ПеремещаемыеСтроки = ИсточникПеретаскивания.СтрокиДерева; - ТекущаяСтрока = ИсточникПеретаскивания.ТекущаяСтрока; - - ТаблицаРеквизит = ЭтотОбъект[ТаблицаИмя]; - СтрокаЦели = НайтиПоИдентификатору(ТаблицаРеквизит, ИдентификаторЦели); - Родитель = ПолучитьРодителя(ТаблицаИмя, СтрокаЦели); - ТаблицаЭлемент = Элементы[ТаблицаИмя]; - ВыделенныеСтроки = ТаблицаЭлемент.ВыделенныеСтроки; - ВыделенныеСтроки.Очистить(); - - ПеремещенныеСтроки = Новый Массив; // Для платформы. - - Для Каждого ПеремещаемаяСтрока Из ПеремещаемыеСтроки Цикл - ЭтоТекущая = (ПеремещаемаяСтрока = ТекущаяСтрока); - - // Перемещение. - Результат = ТаблицыПолейПереместить(ТаблицаИмя, ПеремещаемаяСтрока, СтрокаЦели, Неопределено, Ложь); - - // Бантики (начало). - Если ЭтоТекущая Тогда - ТекущаяСтрока = Результат.СтрокаДерева; - КонецЕсли; - ПеремещенныеСтроки.Добавить(Результат.СтрокаДерева); - КонецЦикла; - - // Бантики (завершение). - ТаблицаЭлемент.ТекущаяСтрока = ТекущаяСтрока.ПолучитьИдентификатор(); - Для Каждого СтрокаТаблицы Из ПеремещенныеСтроки Цикл - НоваяСтрокаИдентификатор = СтрокаТаблицы.ПолучитьИдентификатор(); - Если ВыделенныеСтроки.Найти(НоваяСтрокаИдентификатор) = Неопределено Тогда - ВыделенныеСтроки.Добавить(НоваяСтрокаИдентификатор); - КонецЕсли; - КонецЦикла; - - ТаблицаЭлемент.Развернуть(Родитель.ПолучитьИдентификатор(), Истина); - - УстановитьМодифицированность(); -КонецПроцедуры - -&НаКлиенте -Процедура ПеретаскиваниеВыбранныхПолейВСортировки(ИсточникПеретаскивания, ИдентификаторЦели) - // Определение параметров источника. - ИсточникТаблицаИмя = ИсточникПеретаскивания.ТаблицаИмя; - ИсточникТаблица = ЭтотОбъект[ИсточникТаблицаИмя]; - ИсточникУзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, ИсточникТаблицаИмя); - - // Определение параметров приемника. - ЦельТаблицаИмя = "Сортировка"; - ЦельТаблица = ЭтотОбъект[ЦельТаблицаИмя]; - ЦельУзелКД = ТаблицыПолейНайтиУзел(ЭтотОбъект, ЦельТаблицаИмя); - - ПередЧемВставить = НайтиПоИдентификатору(ЦельТаблица, ИдентификаторЦели); - ПередЧемВставитьКД = НайтиОбъектКД(ЦельУзелКД, ПередЧемВставить); - - ЦельРодитель = ПолучитьРодителя(ЦельТаблицаИмя, ПередЧемВставить); - ЦельРодительКД = НайтиОбъектКД(ЦельУзелКД, ЦельРодитель); - - КудаВставить = ПолучитьЭлементы(ЦельТаблица, ЦельРодитель); - КудаВставитьКД = ПолучитьЭлементыКД(ЦельУзелКД, ЦельРодительКД); - - Если ПередЧемВставитьКД = Неопределено Тогда - Индекс = Неопределено; - ИндексКД = Неопределено; - Иначе - Индекс = КудаВставить.Индекс(ПередЧемВставить) + 1; - ИндексКД = КудаВставитьКД.Индекс(ПередЧемВставитьКД) + 1; - КонецЕсли; - - ТипЭлемента = Тип("ЭлементПорядкаКомпоновкиДанных"); - - // Вывод результата. - ИсточникТекущаяСтрока = ИсточникПеретаскивания.ТекущаяСтрока; - ЦельТекущаяСтрока = Неопределено; - ПоляКоторыеНеУдалосьДобавить = Новый Массив; - - // Обход источника. - ПеремещенныеСтроки = Новый Массив; - Обработанные = Новый Массив; - - Коллекции = Новый Массив; - Количество = 0; - ТекущаяКоллекция = ИсточникПеретаскивания.СтрокиДерева; - Пока Истина Цикл - // Обход текущей коллекции. - Для Каждого ИсточникСтрокаТаблицы Из ТекущаяКоллекция Цикл - Если ИсточникСтрокаТаблицы.ТипНастройки = "АвтоВыбранноеПоле" Тогда - Продолжить; - КонецЕсли; - Если Обработанные.Найти(ИсточникСтрокаТаблицы) <> Неопределено Тогда - Продолжить; - КонецЕсли; - Обработанные.Добавить(ИсточникСтрокаТаблицы); - - // Регистрация новой коллекции к обработке. - Если ИсточникСтрокаТаблицы.ЭтоГруппа Тогда - Коллекции.Добавить(ИсточникСтрокаТаблицы.ПолучитьЭлементы()); - Количество = Количество + 1; - Продолжить; - КонецЕсли; - - // Анализ строки источника. - ЭтоТекущая = (ИсточникСтрокаТаблицы = ИсточникТекущаяСтрока); - - ИсточникОбъектКД = НайтиОбъектКД(ИсточникУзелКД, ИсточникСтрокаТаблицы); - - ДоступноеПолеКД = ЦельУзелКД.ДоступныеПоляПорядка.НайтиПоле(ИсточникОбъектКД.Поле); - Если ДоступноеПолеКД = Неопределено Тогда - ПоляКоторыеНеУдалосьДобавить.Добавить(ИсточникСтрокаТаблицы.Представление); - Продолжить; - КонецЕсли; - - // Добавление строки приемника. - Если Индекс = Неопределено Тогда - НоваяСтрока = КудаВставить.Добавить(); - Иначе - НоваяСтрока = КудаВставить.Вставить(Индекс); - Индекс = Индекс + 1; - КонецЕсли; - - Если ИндексКД = Неопределено Тогда - НовыйЭлементКД = КудаВставитьКД.Добавить(ТипЭлемента); - Иначе - НовыйЭлементКД = КудаВставитьКД.Вставить(ИндексКД, ТипЭлемента); - ИндексКД = ИндексКД + 1; - КонецЕсли; - - НовыйЭлементКД.Использование = Истина; - НовыйЭлементКД.Поле = ДоступноеПолеКД.Поле; - НовыйЭлементКД.ТипУпорядочивания = НаправлениеСортировкиКомпоновкиДанных.Возр; - - НоваяСтрока.ИдентификаторКД = ЦельУзелКД.ПолучитьИдентификаторПоОбъекту(НовыйЭлементКД); - НоваяСтрока.Использование = НовыйЭлементКД.Использование; - НоваяСтрока.Представление = ДоступноеПолеКД.Заголовок; - НоваяСтрока.Направление = НовыйЭлементКД.ТипУпорядочивания; - НоваяСтрока.ИндексКартинки = -1; - - Если ЭтоТекущая Или ЦельТекущаяСтрока = Неопределено Тогда - ЦельТекущаяСтрока = НоваяСтрока; - КонецЕсли; - - ПеремещенныеСтроки.Добавить(НоваяСтрока); - - КонецЦикла; - - // Переход к следующей коллекции. - Если Количество = 0 Тогда - Прервать; - КонецЕсли; - Количество = Количество - 1; - ТекущаяКоллекция = Коллекции[0]; - Коллекции.Удалить(0); - КонецЦикла; - - // Бантики (завершение). - ЦельТаблицаЭлемент = Элементы[ЦельТаблицаИмя]; - ТекущийЭлемент = ЦельТаблицаЭлемент; - ЦельТаблицаЭлемент.ВыделенныеСтроки.Очистить(); - Если ЦельТекущаяСтрока <> Неопределено Тогда - ЦельТаблицаЭлемент.ТекущаяСтрока = ЦельТекущаяСтрока.ПолучитьИдентификатор(); - КонецЕсли; - Для Каждого НоваяСтрока Из ПеремещенныеСтроки Цикл - НоваяСтрокаИдентификатор = НоваяСтрока.ПолучитьИдентификатор(); - Если ЦельТаблицаЭлемент.ВыделенныеСтроки.Найти(НоваяСтрокаИдентификатор) = Неопределено Тогда - ЦельТаблицаЭлемент.ВыделенныеСтроки.Добавить(НоваяСтрокаИдентификатор); - КонецЕсли; - КонецЦикла; - // } - - ЦельТаблицаЭлемент.Развернуть(ЦельРодитель.ПолучитьИдентификатор(), Истина); - - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; - - ПодключитьОбработчикОжидания("Обновить", 3, Истина); -КонецПроцедуры - -&НаКлиенте -Процедура Обновить() - БыстрыеНастройкиЗаполнитьКлиент(Неопределено); -КонецПроцедуры - -&НаКлиенте -Процедура ПеретаскиваниеСортировокВВыбранныеПоля(ИсточникПеретаскивания, ИдентификаторЦели) - ТаблицыПолейУдалить(ИсточникПеретаскивания.ТаблицаИмя, ИсточникПеретаскивания.СтрокиДерева, Ложь); - УстановитьМодифицированность(); -КонецПроцедуры - -&НаКлиенте -Функция ЗарегистрироватьНачалоПеретаскивания(ТаблицаИмя, ИсточникПеретаскивания = Неопределено) - Сценарий = Новый Структура; - Сценарий.Вставить("Шаги", "ОпределитьВыделенныеСтроки"); - Сценарий.Вставить("Действие", "НачалоПеретаскивания"); - Сценарий.Вставить("ТаблицаИмя", ТаблицаИмя); - - ЗапуститьСценарий(Сценарий); - - Если ЗначениеЗаполнено(Сценарий.ПричинаОтказа) Тогда - Возврат Ложь; - КонецЕсли; - - ИсточникПеретаскивания = Новый Структура("ТаблицаИмя, СтрокиДерева, ТекущаяСтрока"); - ЗаполнитьЗначенияСвойств(ИсточникПеретаскивания, Сценарий); - ПеременныеКлиента.Вставить("ИсточникПеретаскивания", ИсточникПеретаскивания); - Возврат Истина; -КонецФункции - -&НаКлиенте -Процедура ПроверитьВозможностьПеретаскивания(ТаблицаИмя, ИдентификаторЦели, ПараметрыПеретаскивания) - ИсточникПеретаскивания = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПеременныеКлиента, "ИсточникПеретаскивания"); - Если ИсточникПеретаскивания = Неопределено Тогда - ПараметрыПеретаскивания.Действие = ДействиеПеретаскивания.Отмена; - ИначеЕсли ИсточникПеретаскивания.ТаблицаИмя = ТаблицаИмя Тогда - ПараметрыПеретаскивания.Действие = ДействиеПеретаскивания.Перемещение; - Если ИдентификаторЦели <> Неопределено Тогда - СтрокаРодитель = ЭтотОбъект[ТаблицаИмя].НайтиПоИдентификатору(ИдентификаторЦели); - Пока СтрокаРодитель <> Неопределено И Не СтрокаРодитель.ЭтоРаздел Цикл - Если ИсточникПеретаскивания.СтрокиДерева.Найти(СтрокаРодитель) <> Неопределено Тогда - ПараметрыПеретаскивания.Действие = ДействиеПеретаскивания.Отмена; - Прервать; - КонецЕсли; - СтрокаРодитель = СтрокаРодитель.ПолучитьРодителя(); - КонецЦикла; - КонецЕсли; - Иначе - ПараметрыПеретаскивания.Действие = ДействиеПеретаскивания.Выбор; - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура УстановитьМодифицированность() - ПользовательскиеНастройкиМодифицированы = Истина; - Если РасширенныйРежим = 1 Тогда - ВариантИзменен = Истина; - КонецЕсли; - - Если ОбщегоНазначенияКлиентСервер.РежимОтладки() Тогда - ПодключитьОбработчикОжидания("Обновить", 3, Истина); - КонецЕсли; -КонецПроцедуры - -#КонецОбласти \ No newline at end of file diff --git a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаОтчета/Form.form b/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаОтчета/Form.form index 7bc14bac6..56d749b0c 100644 --- a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаОтчета/Form.form +++ b/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаОтчета/Form.form @@ -218,6 +218,33 @@ Auto InAdditionalSubmenu + + СброситьНастройки + 382 + true + true + + true + + + СброситьНастройкиРасширеннаяПодсказка + 383 + Label + true + true + + Left + + + Form.Command.НастройкиПоУмолчанию + Normal + Auto + true + true + UserCmds + Auto + InAdditionalSubmenu + ГруппаВариантыОтчета 358 @@ -432,33 +459,6 @@
        - - СброситьНастройки - 382 - true - true - - true - - - СброситьНастройкиРасширеннаяПодсказка - 383 - Label - true - true - - Left - - - Form.Command.НастройкиПоУмолчанию - Normal - Auto - true - true - UserCmds - Auto - InAdditionalSubmenu - ГруппаПользовательскиеНастройки 504 @@ -1228,7 +1228,6 @@ ru Основная командная панель
        - true ОсновнаяКоманднаяПанельРасширеннаяПодсказка 133 @@ -1567,7 +1566,9 @@ true - + + true + РежимВариантаОтчета @@ -1582,7 +1583,9 @@ true - + + true + НастройкиОтчета @@ -1595,22 +1598,6 @@ true - - - - НаименованиеОтчета - - <key>ru</key> - <value>Наименование отчета</value> - - 19 - - String - - - - true - true @@ -1645,8 +1632,12 @@ ValueList - - + + true + + + true + @@ -1662,7 +1653,9 @@ true - + + true + ОтчетСформирован @@ -1694,7 +1687,9 @@ true - + + true + ФоновоеЗаданиеАдресХранилища @@ -1827,43 +1822,6 @@ true - - ВариантыПанелиНомерЭлемента - - <key>ru</key> - <value>Варианты панели номер элемента</value> - - 27 - - Number - - 10 - - - - true - - - true - - - - ЕстьДругиеОтчеты - - <key>ru</key> - <value>Есть другие отчеты</value> - - 29 - - Boolean - - - true - - - true - - ЕстьОбычныеНастройки @@ -1898,40 +1856,6 @@ <common>true</common> </edit> </attributes> - <attributes> - <name>НадоСформировать</name> - <title> - <key>ru</key> - <value>Надо сформировать</value> - - 32 - - Boolean - - - true - - - true - - - - ПервоеЧтениеПользовательскихНастроек - - <key>ru</key> - <value>Первое чтение пользовательских настроек</value> - - 34 - - Boolean - - - true - - - true - - ДобавленныеВарианты @@ -2127,6 +2051,10 @@ <id>6</id> <valueType> <types>String</types> + <types>Number</types> + <numberQualifiers> + <precision>10</precision> + </numberQualifiers> <stringQualifiers/> </valueType> <view> @@ -2439,35 +2367,13 @@ <currentRowUse>DontUse</currentRowUse> <selectedRowsUse>Auto</selectedRowsUse> </formCommands> - <formCommands> - <name>ЗагрузитьСхемуИзФайла</name> - <title> - <key>ru</key> - <value>Загрузить схему из файла</value> - - 12 - - ru - Загрузить схему из файла - - - true - - - - ЗагрузитьСхемуИзФайла - - - DontUse - Auto - ВосстановитьСтандартнуюСхему <key>ru</key> <value>Восстановить стандартную схему</value> - 13 + 12 ru Восстановить стандартную схему @@ -2489,7 +2395,7 @@ ru Редактировать схему - 14 + 13 ru Редактировать схему @@ -2505,6 +2411,28 @@ DontUse Auto + + ЗагрузитьСхемуИзФайла + + <key>ru</key> + <value>Загрузить схему из файла</value> + + 14 + + ru + Загрузить схему из файла + + + true + + + + ЗагрузитьСхемуИзФайла + + + DontUse + Auto + diff --git a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаОтчета/Help/ru.html b/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаОтчета/Help/ru.html index 0720454fd..98b6d4573 100644 --- a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаОтчета/Help/ru.html +++ b/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаОтчета/Help/ru.html @@ -1,16 +1,16 @@

        Для просмотра отчета необходимо нажать кнопку Сформировать, предварительно задав параметры (если они предусмотрены). В клиент-серверном варианте работы программы предусмотрено формирование отчетов в фоновом режиме.

        Режим формирования

        -

        Установите флажок Формировать сразу меню Еще, для того чтобы отчет формировался автоматически сразу после открытия, без нажатия кнопки Сформировать. 

        -

        Варианты отчета

        +
        • Установите флажок Формировать сразу меню Еще, для того чтобы отчет формировался автоматически сразу после открытия, без нажатия кнопки Сформировать. 

        Варианты отчета

        • В программе может быть предусмотрено несколько вариантов отчетов, выполняющих схожий анализ. Для их просмотра предусмотрена кнопка Варианты отчета. 
          • Выберите из выпадающего списка нужный вариант отчета. Текущий вариант отчета отмечен флажком.
          • для просмотра списка других вариантов отчетов предназначена команда Другие отчеты.

        Настройки

        -
        • По кнопке Настройки можно перейти к настройке параметров отчета.  +
          • По кнопке Настройки можно перейти к настройке параметров отчета. Часть настроек (отборы) иногда выведены в шапку отчета.
          • Нажмите Еще - Прочее - Стандартные настройки, для того чтобы вернуться к настройкам по умолчанию. -
          • Нажмите Еще - Прочее - Все настройки, для того чтобы перейти к настройке всех предусмотренных параметров отчета.
          • Нажмите Еще - Прочее - Сохранить настройки, для того чтобы записать текущие настройки отчета. -
          • Нажмите Еще - Прочее - Выбрать настройки, для того чтобы воспользоваться ранее сохраненными настройками отчета.

          Другие отчеты

          +
        • Нажмите Еще - Прочее - Выбрать настройки, для того чтобы воспользоваться ранее сохраненными настройками отчета.

        Изменение условий отборов

        +
        • +
          С помощью соответствующей команды меню Еще можно просмотреть и при необходимости Изменить условия отборов по каждому полю.

        Другие отчеты

        В окне размещен список похожих по смыслу отчетов. 

        • @@ -22,7 +22,7 @@
        • С помощью соответствующего флажка можно Закрывать окно после перехода к отчету.

        Печать отчета

        -
        • Сформированный отчет можно распечатать, нажав кнопку Печать. +
          • Сформированный отчет можно распечатать, нажав кнопку  Печать.
          • Для того чтобы проверить отчет и изменить параметры страницы, нажмите  Предварительный просмотр.
          • С помощью команды Еще - Параметры страницы можно настроить печать отчета.

          Отправка отчета по электронной почте

          С помощью кнопки  Отправить отчет по электронной почте можно:

          @@ -38,7 +38,7 @@
        • Включить в существующую рассылку отчетов. Для этого из списка рассылок выберите нужную.

        Выбор варианта отчета

        -
        • Для загрузки ранее сохраненного варианта отчета воспользуйтесь командой Еще - Выбрать вариант отчета. +
          • Для загрузки ранее сохраненного варианта отчета воспользуйтесь командой Еще - Прочее - Выбрать вариант отчета.

          Изменение варианта отчета

          • Нажмите Еще - Прочее - Изменить вариант отчета. Можно добавить поля, изменить параметры и настройки отчета.
            @@ -51,4 +51,14 @@
            • Для поиска в отчете воспользуйтесь командой Найти.
            • С помощью кнопок  Свернуть все группы или  Развернуть все группы можно скрыть или показать группировку отчета.
            • Для сохранения результата отчета в файл нажмите , укажите наименование файла и путь для сохранения. -
            • Нажмите , для того чтобы посчитать сумму чисел в выделенных ячейках.
            \ No newline at end of file +
          • Нажмите , для того чтобы посчитать показатели выделенных ячеек. +
          • С помощью команд контекстного меню по правой кнопке мыши можно: +
            • Открыть значение выделенной ячейки; +
            • Отфильтровать записи по значению выбранного поля; +
            • Упорядочить: +
              • по значению выбранного поля (по умолчанию); +
              • Дополнительно - можно выбрать Поле для упорядочивания отчета, Тип упорядочивания - По возрастанию или По убыванию;
            • Сгруппировать: +
              • по значению выбранного поля (по умолчанию); +
              • Дополнительно - можно выбрать Поле для группировки; Тип группировки - Без иерархии, Иерархия, Только иерархия;
            • Оформить: +
          \ No newline at end of file diff --git a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаОтчета/Module.bsl b/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаОтчета/Module.bsl index 40af46e30..ed79285d3 100644 --- a/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаОтчета/Module.bsl +++ b/SSL/src/Reports/УниверсальныйОтчет/Forms/ФормаОтчета/Module.bsl @@ -1,32 +1,10 @@ #Область ОписаниеПеременных &НаКлиенте -Перем ПеременныеКлиента; +Перем ПараметрыОбработчика; -#КонецОбласти - -//////////////////////////////////////////////////////////////////////////////// -// ПРОГРАММНЫЙ ИНТЕРФЕЙС - -#Область ПрограммныйИнтерфейс - -// Дает возможность выполнить контекстный вызов сервера с клиента. -// Например, может потребоваться из клиентского события ОтчетыКлиентПереопределяемый.ОбработчикКоманды(). -// -// Параметры: -// КлючОперации - Строка - Идентификатор операции, которую необходимо выполнить на сервере. -// ПараметрыОперации - Структура - Параметры выполнения операции. -// -// Возвращаемое значение: -// Структура - Результат работы сервера. -// &НаКлиенте -Функция ВыполнитьКонтекстныйВызовСервера(КлючОперации, ПараметрыОперации) Экспорт - // Исключение из стандартов разработки. - - Возврат КонтекстныйВызовСервера(КлючОперации, ПараметрыОперации); - -КонецФункции +Перем ПеременныеКлиента; #КонецОбласти @@ -37,11 +15,15 @@ &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) + Если Параметры.Свойство("АвтоТест") Тогда Возврат; КонецЕсли; ВариантыПанелиКлючТекущегоВарианта = " - "; + Если ЗначениеЗаполнено(Параметры.КлючВарианта) Тогда + КлючТекущегоВарианта = Параметры.КлючВарианта; + КонецЕсли; // Параметры формы. РежимРасшифровки = (Параметры.Свойство("Расшифровка") И Параметры.Расшифровка <> Неопределено); @@ -50,7 +32,7 @@ ФормаПараметры = Новый Структура( "КлючНазначенияИспользования, КлючПользовательскихНастроек, - |Расшифровка, СформироватьПриОткрытии, ТолькоПросмотр, + |СформироватьПриОткрытии, ТолькоПросмотр, |ФиксированныеНастройки, Раздел, Подсистема, ПодсистемаПредставление"); ЗаполнитьЗначенияСвойств(ФормаПараметры, Параметры); ФормаПараметры.Вставить("Отбор", Новый Структура); @@ -72,33 +54,25 @@ НастройкиОтчета.Вставить("АдресСхемы", АдресСхемы); НастройкиОтчета.Вставить("СхемаМодифицирована", Ложь); НастройкиОтчета.Вставить("КлючСхемы", ""); + НастройкиОтчета.Вставить("Контекстный", ТипЗнч(ФормаПараметры.Отбор) = Тип("Структура") И ФормаПараметры.Отбор.Количество() > 0); НастройкиОтчета.Вставить("ПолноеИмя", ОтчетМетаданные.ПолноеИмя()); НастройкиОтчета.Вставить("Наименование", СокрЛП(ОтчетМетаданные.Представление())); Информация = ВариантыОтчетов.СформироватьИнформациюОбОтчетеПоПолномуИмени(НастройкиОтчета.ПолноеИмя); НастройкиОтчета.Вставить("ОтчетСсылка", Информация.Отчет); НастройкиОтчета.Вставить("Внешний", ТипЗнч(НастройкиОтчета.ОтчетСсылка) = Тип("Строка")); - НастройкиОтчета.Вставить("Безопасный", БезопасныйРежим()); + НастройкиОтчета.Вставить("Безопасный", БезопасныйРежим() <> Ложь); ОбновитьИнформациюОВариантеОтчета(); ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(НастройкиОтчета, ВариантыОтчетов.ПараметрыКлиента()); Если ВариантыОтчетовПовтИсп.Параметры().ОтчетыСНастройками.Найти(НастройкиОтчета.ОтчетСсылка) <> Неопределено Тогда ОтчетОбъект.ОпределитьНастройкиФормы(ЭтотОбъект, КлючТекущегоВарианта, НастройкиОтчета); - СоответствиеПериодичностиПараметров = Новый Соответствие; - Для Каждого КлючИЗначение Из НастройкиОтчета.СоответствиеПериодичностиПараметров Цикл - ПолеКД = КлючИЗначение.Ключ; - Если ТипЗнч(ПолеКД) = Тип("ПараметрКомпоновкиДанных") Тогда - ПолеКД = Новый ПолеКомпоновкиДанных("ПараметрыДанных." + Строка(ПолеКД)); - КонецЕсли; - СоответствиеПериодичностиПараметров.Вставить(ПолеКД, КлючИЗначение.Значение); - КонецЦикла; - НастройкиОтчета.Вставить("СоответствиеПериодичностиПараметров", СоответствиеПериодичностиПараметров); КонецЕсли; НастройкиОтчета.Вставить("ПрочитатьФлажокФормироватьСразуИзПользовательскихНастроек", Истина); Если Параметры.Свойство("СформироватьПриОткрытии") И Параметры.СформироватьПриОткрытии = Истина Тогда Параметры.СформироватьПриОткрытии = Ложь; - НастройкиОтчета.ФормироватьСразу = Истина; + Элементы.ФормироватьСразу.Пометка = Истина; НастройкиОтчета.ПрочитатьФлажокФормироватьСразуИзПользовательскихНастроек = Ложь; КонецЕсли; @@ -110,7 +84,7 @@ КонецЕсли; // Параметры по умолчанию - Если НастройкиОтчета.Свойство("ВыводитьСуммуВыделенныхЯчеек") И Не НастройкиОтчета.ВыводитьСуммуВыделенныхЯчеек Тогда + Если ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НастройкиОтчета, "ВыводитьСуммуВыделенныхЯчеек") = Ложь Тогда Элементы.АвтоСуммаКнопка.Видимость = Ложь; Элементы.ОтчетТабличныйДокумент.УстановитьДействие("ПриАктивизацииОбласти", ""); КонецЕсли; @@ -132,6 +106,10 @@ КонецЕсли; КонецЕсли; КонецЕсли; + Если НастройкиОтчета.РазрешеноМенятьВарианты = Ложь И ПустаяСтрока(КлючНазначенияИспользования) Тогда + КлючНазначенияИспользования = Параметры.КлючВарианта; + ФормаПараметры.КлючНазначенияИспользования = КлючНазначенияИспользования; + КонецЕсли; // Регистрация команд и реквизитов формы, которые не удаляются при перезаполнении быстрых настроек. НаборРеквизитов = ПолучитьРеквизиты(); @@ -153,6 +131,7 @@ ДоступнаОтправкаПисем = МодульРаботаСПочтовымиСообщениями.ДоступнаОтправкаПисем(); КонецЕсли; Если ДоступнаОтправкаПисем Тогда + Если ОбщегоНазначения.ПодсистемаСуществует("СтандартныеПодсистемы.РассылкаОтчетов") Тогда МодульРассылкаОтчетов = ОбщегоНазначения.ОбщийМодуль("РассылкаОтчетов"); МодульРассылкаОтчетов.ФормаОтчетаДобавитьКоманды(ЭтотОбъект, Отказ, СтандартнаяОбработка); @@ -164,7 +143,22 @@ Элементы.ГруппаОтправить.Видимость = Ложь; КонецЕсли; - // События. + // Определение что отчет может содержать некорректные данные. + Если Не Элементы.ФормироватьСразу.Пометка Тогда + Попытка + ИспользуемыеТаблицы = ВариантыОтчетов.ИспользуемыеТаблицы(ОтчетОбъект.СхемаКомпоновкиДанных); + ИспользуемыеТаблицы.Добавить(НастройкиОтчета.ПолноеИмя); + Если НастройкиОтчета.События.ПриОпределенииИспользуемыхТаблиц Тогда + ОтчетОбъект.ПриОпределенииИспользуемыхТаблиц(КлючТекущегоВарианта, ИспользуемыеТаблицы); + КонецЕсли; + ВариантыОтчетов.ПроверитьИспользуемыеТаблицы(ИспользуемыеТаблицы); + Исключение + ТекстОшибки = НСтр("ru = 'Не удалось определить используемые таблицы:'"); + ТекстОшибки = ТекстОшибки + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()); + ВариантыОтчетов.ОшибкаПоВарианту(НастройкиОтчета.ВариантСсылка, ТекстОшибки); + КонецПопытки; + КонецЕсли; + ОтчетыПереопределяемый.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка); Если НастройкиОтчета.События.ПриСозданииНаСервере Тогда ОтчетОбъект.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка); @@ -185,11 +179,11 @@ Если Не Отказ Тогда ФормаОткрыта = Истина; КонецЕсли; - Если НастройкиОтчета.ФормироватьСразу Тогда + Если Элементы.ФормироватьСразу.Пометка Тогда ПеременныеКлиента.ФормированиеПриОткрытии = Истина; ПодключитьОбработчикОжидания("СФормировать", 0.1, Истина); КонецЕсли; - ПоказатьРезультатЗаполненияНастроек(Неопределено); + ПоказатьРезультатЗаполненияНастроек(); КонецПроцедуры &НаКлиенте @@ -236,8 +230,10 @@ Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("ОтчетИнициализирован", Ложь); ПараметрыЗаполнения = Новый Структура; - ПараметрыЗаполнения.Вставить("ИмяСобытия", "НастройкиПоУмолчанию"); + ПараметрыЗаполнения.Вставить("СброситьПользовательскиеНастройки", Истина); ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); + ПараметрыЗаполнения.Вставить("КомпоновщикНастроекКД", Отчет.КомпоновщикНастроек); + ПараметрыЗаполнения.Вставить("ИмяСобытия", "НастройкиПоУмолчанию"); БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); КонецЕсли; @@ -255,35 +251,23 @@ &НаКлиенте Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник) ОповещениеОбработано = Ложь; - Если ИмяСобытия = ВариантыОтчетовКлиентСервер.ИмяСобытияИзменениеВарианта() Тогда + Если ИмяСобытия = ВариантыОтчетовКлиентСервер.ИмяСобытияИзменениеВарианта() + Или ИмяСобытия = "Запись_НаборКонстант" Тогда ОповещениеОбработано = Истина; ВариантыПанелиКлючТекущегоВарианта = " - "; ПодключитьОбработчикОжидания("ВидимостьДоступностьЕслиТребуется", 0.1, Истина); КонецЕсли; - ОтчетыКлиентПереопределяемый.ОбработкаОповещения(ЭтотОбъект, ИмяСобытия, Параметр, Источник, ОповещениеОбработано); КонецПроцедуры &НаСервере Процедура ПередЗагрузкойВариантаНаСервере(НовыеНастройкиКД) + Если Параметры.Свойство("АвтоТест") Тогда Возврат; КонецЕсли; - - Если Не НовыеНастройкиКД.ДополнительныеСвойства.Свойство("ОтчетИнициализирован") Тогда - НастройкиПоУмолчанию = Новый Структура; - ТипОбъектаМетаданных = Отчеты.УниверсальныйОтчет.ТипОбъектаМетаданныхПоУмолчанию(); - НастройкиПоУмолчанию.Вставить("ТипОбъектаМетаданных", ТипОбъектаМетаданных); - НастройкиПоУмолчанию.Вставить("ПолноеИмяОбъектаМетаданных", Отчеты.УниверсальныйОтчет.ПолноеИмяОбъектаМетаданныхПоУмолчанию(Отчет.КомпоновщикНастроек, ТипОбъектаМетаданных)); - НастройкиПоУмолчанию.Вставить("ИмяТаблицы", Отчеты.УниверсальныйОтчет.ИмяТаблицыПоУмолчанию(Отчет.КомпоновщикНастроек, ТипОбъектаМетаданных, НастройкиПоУмолчанию.ПолноеИмяОбъектаМетаданных)); - Отчеты.УниверсальныйОтчет.ИнициализироватьОтчет(Отчет.КомпоновщикНастроек, Ложь, УникальныйИдентификатор,,НастройкиПоУмолчанию); - ИначеЕсли Не НовыеНастройкиКД.ДополнительныеСвойства.Свойство("СхемаКомпоновкиДанных") - И (Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ТипОбъектаМетаданных") = Неопределено - Или Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ПолноеИмяОбъектаМетаданных") = Неопределено - Или Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ИмяТаблицы") = Неопределено) Тогда - Отчеты.УниверсальныйОтчет.ИнициализироватьОтчет(Отчет.КомпоновщикНастроек, Ложь, УникальныйИдентификатор, НовыеНастройкиКД); - ИначеЕсли НовыеНастройкиКД.ДополнительныеСвойства.Свойство("СхемаКомпоновкиДанных") Тогда - Отчеты.УниверсальныйОтчет.ИнициализироватьОтчет(Отчет.КомпоновщикНастроек, Ложь, УникальныйИдентификатор, НовыеНастройкиКД); + Если НовыеНастройкиКД = Неопределено Тогда + Возврат; КонецЕсли; // Ничего не делать если отчет не на СКД и никаких настроек не загружено. @@ -292,10 +276,6 @@ Возврат; КонецЕсли; - Если ТипЗнч(ФормаПараметры.Отбор) = Тип("Структура") Тогда - ОтчетыСервер.УстановитьФиксированныеОтборы(ФормаПараметры.Отбор, НовыеНастройкиКД, НастройкиОтчета); - КонецЕсли; - // Вызов переопределяемого модуля. ОтчетыПереопределяемый.ПередЗагрузкойВариантаНаСервере(ЭтотОбъект, НовыеНастройкиКД); Если НастройкиОтчета.События.ПередЗагрузкойВариантаНаСервере Тогда @@ -316,6 +296,7 @@ &НаСервере Процедура ПриЗагрузкеВариантаНаСервере(НовыеНастройкиКД) + Если Параметры.Свойство("АвтоТест") Тогда Возврат; КонецЕсли; @@ -326,11 +307,6 @@ Возврат; КонецЕсли; - // Обновление ссылки варианта отчета. - Если ВариантыПанелиКлючТекущегоВарианта <> КлючТекущегоВарианта Тогда - ОбновитьИнформациюОВариантеОтчета(); - КонецЕсли; - // Загрузка фиксированных настроек для режима расшифровки. Если РежимРасшифровки Тогда ОтчетНаименованиеТекущегоВарианта = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НовыеНастройкиКД.ДополнительныеСвойства, "ВариантНаименование"); @@ -338,9 +314,22 @@ Отчет.КомпоновщикНастроек.ЗагрузитьФиксированныеНастройки(Параметры.Расшифровка.ПрименяемыеНастройки); Отчет.КомпоновщикНастроек.ФиксированныеНастройки.ДополнительныеСвойства.Вставить("РежимРасшифровки", Истина); КонецЕсли; + Если КлючТекущегоВарианта = Неопределено Тогда + КлючТекущегоВарианта = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(НовыеНастройкиКД.ДополнительныеСвойства, "КлючВарианта"); + КонецЕсли; Иначе Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("ВариантНаименование", ОтчетНаименованиеТекущегоВарианта); КонецЕсли; + // Установка фиксированных отборов выполняется через компоновщик, т.к. в нем наиболее полная коллекция настроек. + // В ПередЗагрузкой в параметрах могут отсутствовать те параметры, настройки которые не переопределялись. + Если ТипЗнч(ФормаПараметры.Отбор) = Тип("Структура") Тогда + ОтчетыСервер.УстановитьФиксированныеОтборы(ФормаПараметры.Отбор, Отчет.КомпоновщикНастроек.Настройки, НастройкиОтчета); + КонецЕсли; + + // Обновление ссылки варианта отчета. + Если ВариантыПанелиКлючТекущегоВарианта <> КлючТекущегоВарианта Тогда + ОбновитьИнформациюОВариантеОтчета(); + КонецЕсли; // Заполнение панели быстрых настроек. РежимВариантаОтчета = Истина; @@ -398,7 +387,7 @@ ПараметрыЗаполнения = Новый Структура; ПараметрыЗаполнения.Вставить("ИмяСобытия", "ПриОбновленииСоставаПользовательскихНастроекНаСервере"); ПараметрыЗаполнения.Вставить("СтандартнаяОбработкаСобытия", СтандартнаяОбработка); - РезультатЗаполненияНастроек = БыстрыеНастройкиЗаполнить(ПараметрыЗаполнения); + БыстрыеНастройкиЗаполнить(ПараметрыЗаполнения); Если ПараметрыЗаполнения.СтандартнаяОбработкаСобытия <> СтандартнаяОбработка Тогда СтандартнаяОбработка = ПараметрыЗаполнения.СтандартнаяОбработкаСобытия; КонецЕсли; @@ -453,10 +442,11 @@ Возврат; КонецЕсли; НовыеНастройкиКД = Отчет.КомпоновщикНастроек.ПолучитьНастройки(); - Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(НовыеНастройкиКД); + ОтчетыКлиентСервер.ЗагрузитьНастройки(Отчет.КомпоновщикНастроек, НовыеНастройкиКД); НастройкиКД.ДополнительныеСвойства.Вставить("Адрес", ПоместитьВоВременноеХранилище(НовыеНастройкиКД)); // Для платформы. НастройкиКД = НовыеНастройкиКД; ВариантыПанелиКлючТекущегоВарианта = " - "; + ОбновитьИнформациюОВариантеОтчета(); ВидимостьДоступностьКорректность("ВариантОтчета"); КонецПроцедуры @@ -470,11 +460,17 @@ КонецПроцедуры &НаКлиенте -Процедура ПриЗакрытии() +Процедура ПриЗакрытии(ЗавершениеРаботы) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + Если ФоновоеЗаданиеИдентификатор <> Неопределено Тогда ФоновоеЗаданиеОтменить(ФоновоеЗаданиеИдентификатор); ФоновоеЗаданиеИдентификатор = Неопределено; КонецЕсли; + КонецПроцедуры #КонецОбласти @@ -489,8 +485,12 @@ &НаКлиенте Процедура ОтчетТабличныйДокументОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка) + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.АнализЖурналаРегистрации") Тогда + МодульАнализЖурналаРегистрацииКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("АнализЖурналаРегистрацииКлиент"); + МодульАнализЖурналаРегистрацииКлиент.ФормаОтчетаОбработкаРасшифровки(ЭтотОбъект, Элемент, Расшифровка, СтандартнаяОбработка); + КонецЕсли; - // Для платформы + // Для платформы СтандартнаяОбработка = Ложь; ОтчетыКлиентПереопределяемый.ОбработкаРасшифровки(ЭтотОбъект, Элемент, Расшифровка, СтандартнаяОбработка); @@ -509,12 +509,15 @@ &НаКлиенте Процедура ОтчетТабличныйДокументОбработкаДополнительнойРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка) + Если ОбщегоНазначенияКлиент.ПодсистемаСуществует("СтандартныеПодсистемы.АнализЖурналаРегистрации") Тогда + МодульАнализЖурналаРегистрацииКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("АнализЖурналаРегистрацииКлиент"); + МодульАнализЖурналаРегистрацииКлиент.ФормаОтчетаОбработкаДополнительнойРасшифровки(ЭтотОбъект, Элемент, Расшифровка, СтандартнаяОбработка); + КонецЕсли; // Для платформы СтандартнаяОбработка = Ложь; ОтчетыКлиентПереопределяемый.ОбработкаДополнительнойРасшифровки(ЭтотОбъект, Элемент, Расшифровка, СтандартнаяОбработка); - КонецПроцедуры //////////////////////////////////////////////////////////////////////////////// @@ -571,72 +574,6 @@ КонецЕсли; КонецПроцедуры -&НаКлиенте -Процедура Подключаемый_ИмяТаблицы_ПриИзменении(Элемент) - - ИдентификаторЭлемента = Прав(Элемент.Имя, 32); - - ПользовательскаяНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); - - Параметр = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ИмяТаблицы"); - Параметр.Значение = ПользовательскаяНастройкаКД.Значение; - - Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.ОтчетИнициализирован = Ложь; - - ПараметрыЗаполнения = Новый Структура; - - ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); - БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); - -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_ПолноеИмяОбъектаМетаданных_ПриИзменении(Элемент) - - ИдентификаторЭлемента = Прав(Элемент.Имя, 32); - - ПользовательскаяНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); - - Параметр = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ПолноеИмяОбъектаМетаданных"); - Параметр.Значение = ПользовательскаяНастройкаКД.Значение; - - Параметр = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ИмяТаблицы"); - Параметр.Значение = ""; - - Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.ОтчетИнициализирован = Ложь; - - ПараметрыЗаполнения = Новый Структура; - - ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); - БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); - -КонецПроцедуры - -&НаКлиенте -Процедура Подключаемый_ТипОбъектаМетаданных_ПриИзменении(Элемент) - - ИдентификаторЭлемента = Прав(Элемент.Имя, 32); - - ПользовательскаяНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); - - Параметр = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ТипОбъектаМетаданных"); - Параметр.Значение = ПользовательскаяНастройкаКД.Значение; - - Параметр = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ПолноеИмяОбъектаМетаданных"); - Параметр.Значение = ""; - - Параметр = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ИмяТаблицы"); - Параметр.Значение = ""; - - Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.ОтчетИнициализирован = Ложь; - - ПараметрыЗаполнения = Новый Структура; - - ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); - БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); - -КонецПроцедуры - &НаКлиенте Процедура Подключаемый_ФлажокЗначения_ПриИзменении(Элемент) ИдентификаторЭлемента = Прав(Элемент.Имя, 32); @@ -666,6 +603,88 @@ Подключаемый_ИзменитьВидСравнения(Элемент); КонецПроцедуры +&НаКлиенте +Процедура Подключаемый_ИмяТаблицы_ПриИзменении(Элемент) + + ИдентификаторЭлемента = Прав(Элемент.Имя, 32); + + ПользовательскаяНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); + + Параметр = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ИмяТаблицы"); + Если Параметр.Значение = ПользовательскаяНастройкаКД.Значение Тогда + Возврат; + КонецЕсли; + Параметр.Значение = ПользовательскаяНастройкаКД.Значение; + + Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("ОтчетИнициализирован", Ложь); + + ПараметрыЗаполнения = Новый Структура; + + ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); + ПараметрыЗаполнения.Вставить("СброситьПользовательскиеНастройки", Истина); + ПараметрыЗаполнения.Вставить("КомпоновщикНастроекКД", Отчет.КомпоновщикНастроек); + БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); + +КонецПроцедуры + +&НаКлиенте +Процедура Подключаемый_ПолноеИмяОбъектаМетаданных_ПриИзменении(Элемент) + + ИдентификаторЭлемента = Прав(Элемент.Имя, 32); + + ПользовательскаяНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); + + Параметр = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ПолноеИмяОбъектаМетаданных"); + Если Параметр.Значение = ПользовательскаяНастройкаКД.Значение Тогда + Возврат; + КонецЕсли; + Параметр.Значение = ПользовательскаяНастройкаКД.Значение; + + Параметр = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ИмяТаблицы"); + Параметр.Значение = ""; + + Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("ОтчетИнициализирован", Ложь); + + ПараметрыЗаполнения = Новый Структура; + + ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); + ПараметрыЗаполнения.Вставить("СброситьПользовательскиеНастройки", Истина); + ПараметрыЗаполнения.Вставить("КомпоновщикНастроекКД", Отчет.КомпоновщикНастроек); + БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); + +КонецПроцедуры + +&НаКлиенте +Процедура Подключаемый_ТипОбъектаМетаданных_ПриИзменении(Элемент) + + ИдентификаторЭлемента = Прав(Элемент.Имя, 32); + + ПользовательскаяНастройкаКД = НайтиПользовательскуюНастройкуЭлемента(ИдентификаторЭлемента); + + Параметр = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ТипОбъектаМетаданных"); + Если Параметр.Значение = ПользовательскаяНастройкаКД.Значение Тогда + Возврат; + КонецЕсли; + + Параметр.Значение = ПользовательскаяНастройкаКД.Значение; + + Параметр = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ПолноеИмяОбъектаМетаданных"); + Параметр.Значение = ""; + + Параметр = Отчет.КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ИмяТаблицы"); + Параметр.Значение = ""; + + Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("ОтчетИнициализирован", Ложь); + + ПараметрыЗаполнения = Новый Структура; + + ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); + ПараметрыЗаполнения.Вставить("СброситьПользовательскиеНастройки", Истина); + ПараметрыЗаполнения.Вставить("КомпоновщикНастроекКД", Отчет.КомпоновщикНастроек); + БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); + +КонецПроцедуры + //////////////////////////////////////////////////////////////////////////////// // Подключаемые - Стандартный период. @@ -721,10 +740,7 @@ &НаКлиенте Процедура Подключаемый_ВыбратьПериод(Команда) - КнопкаВыбораИмя = Команда.Имя; - ЗначениеИмя = СтрЗаменить(КнопкаВыбораИмя, "_КнопкаВыбора_", "_Значение_"); - ИдентификаторЭлемента = Прав(КнопкаВыбораИмя, 32); - ОтчетыКлиент.ВыбратьПериод(ЭтотОбъект, ЗначениеИмя, ИдентификаторЭлемента); + ОтчетыКлиент.ВыбратьПериод(ЭтотОбъект, Команда.Имя); КонецПроцедуры #КонецОбласти @@ -752,18 +768,17 @@ ВыполнятьЗамеры = НастройкиОтчета.ВыполнятьЗамеры И ЗначениеЗаполнено(НастройкиОтчета.КлючЗамеров); Если ВыполнятьЗамеры Тогда - ИдентификаторЗамера = Новый УникальныйИдентификатор; - МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - МодульОценкаПроизводительностиКлиентСервер.НачатьРучнойЗамерВремени( - НастройкиОтчета.КлючЗамеров + ".Настройки", - ИдентификаторЗамера, - НастройкиОтчета.ПрефиксЗамеров); + МодульОценкаПроизводительностиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиент"); + ИдентификаторЗамера = МодульОценкаПроизводительностиКлиент.НачатьЗамерВремени( + Ложь, + НастройкиОтчета.КлючЗамеров + ".Настройки"); + МодульОценкаПроизводительностиКлиент.УстановитьКомментарийЗамера(ИдентификаторЗамера, НастройкиОтчета.ПрефиксЗамеров); КонецЕсли; ОткрытьФорму(Имя, ПараметрыФормы, ЭтотОбъект, , , , Обработчик, Режим); Если ВыполнятьЗамеры Тогда - МодульОценкаПроизводительностиКлиентСервер.ЗакончитьРучнойЗамерВремени(ИдентификаторЗамера); + МодульОценкаПроизводительностиКлиент.ЗавершитьЗамерВремени(ИдентификаторЗамера); КонецЕсли; КонецПроцедуры @@ -793,8 +808,14 @@ Процедура НастройкиПоУмолчанию(Команда) ПараметрыЗаполнения = Новый Структура; ПараметрыЗаполнения.Вставить("ИмяСобытия", "НастройкиПоУмолчанию"); + Если ВариантМодифицирован Тогда + ПараметрыЗаполнения.Вставить("СброситьНастройкиВарианта", Истина); + ПараметрыЗаполнения.Вставить("ВариантМодифицирован", Ложь); + КонецЕсли; ПараметрыЗаполнения.Вставить("СброситьПользовательскиеНастройки", Истина); ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); + Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Очистить(); + ПараметрыЗаполнения.Вставить("КомпоновщикНастроекКД", Отчет.КомпоновщикНастроек); БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); КонецПроцедуры @@ -826,8 +847,7 @@ &НаКлиенте Процедура ФормироватьСразу(Команда) - ФормироватьСразу = Не НастройкиОтчета.ФормироватьСразу; - НастройкиОтчета.ФормироватьСразу = ФормироватьСразу; + ФормироватьСразу = Не Элементы.ФормироватьСразу.Пометка; Элементы.ФормироватьСразу.Пометка = ФормироватьСразу; СостояниеДоИзменения = Новый Структура("Видимость, ДополнительныйРежимОтображения, Картинка, Текст"); @@ -854,10 +874,16 @@ КонецПроцедуры &НаКлиенте -Процедура ЗагрузитьСхемуИзФайла(Команда) +Процедура ВосстановитьСтандартнуюСхему(Команда) - ОписаниеОповещения = Новый ОписаниеОповещения("ЗагрузитьСхемуИзФайлаРасширениеПредложено", ЭтотОбъект); - ОбщегоНазначенияКлиент.ПоказатьВопросОбУстановкеРасширенияРаботыСФайлами(ОписаниеОповещения, , Истина); + Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Очистить(); + + ПараметрыЗаполнения = Новый Структура; + ПараметрыЗаполнения.Вставить("СброситьПользовательскиеНастройки", Истина); + ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); + ПараметрыЗаполнения.Вставить("КомпоновщикНастроекКД", Отчет.КомпоновщикНастроек); + + БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); КонецПроцедуры @@ -867,6 +893,11 @@ #Если ТолстыйКлиентОбычноеПриложение ИЛИ ТолстыйКлиентУправляемоеПриложение Тогда СхемаКомпоновкиДанных = ПолучитьИзВременногоХранилища(НастройкиОтчета.АдресСхемы); + + Если СхемаКомпоновкиДанных.НастройкиПоУмолчанию.ДополнительныеСвойства.Свойство("СхемаКомпоновкиДанных") Тогда + СхемаКомпоновкиДанных.НастройкиПоУмолчанию.ДополнительныеСвойства.СхемаКомпоновкиДанных = Неопределено; + КонецЕсли; + Конструктор = Новый КонструкторСхемыКомпоновкиДанных(СхемаКомпоновкиДанных); Конструктор.Редактировать(ЭтотОбъект); @@ -879,18 +910,10 @@ КонецПроцедуры &НаКлиенте -Процедура ВосстановитьСтандартнуюСхему(Команда) +Процедура ЗагрузитьСхемуИзФайла(Команда) - Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Очистить(); - - ТипОбъектаМетаданных = ""; - ПолноеИмяОбъектаМетаданных = ""; - ИмяТаблицы = ""; - - ПараметрыЗаполнения = Новый Структура; - ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); - - БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); + ОписаниеОповещения = Новый ОписаниеОповещения("ЗагрузитьСхемуИзФайлаРасширениеПредложено", ЭтотОбъект); + ОбщегоНазначенияКлиент.ПоказатьВопросОбУстановкеРасширенияРаботыСФайлами(ОписаниеОповещения, , Истина); КонецПроцедуры @@ -920,8 +943,8 @@ ВариантФормы = Найденные[0]; ЗагрузитьВариант(ВариантФормы.КлючВарианта); КлючУникальности = Лев(КлючУникальности, СтрНайти(КлючУникальности, "/")) + "КлючВарианта." + ВариантФормы.КлючВарианта; - ПоказатьРезультатЗаполненияНастроек(Неопределено); - Если НастройкиОтчета.ФормироватьСразу Тогда + ПоказатьРезультатЗаполненияНастроек(); + Если Элементы.ФормироватьСразу.Пометка Тогда ПодключитьОбработчикОжидания("Сформировать", 0.1, Истина); КонецЕсли; КонецПроцедуры @@ -980,6 +1003,23 @@ //////////////////////////////////////////////////////////////////////////////// // Клиент +&НаКлиенте +Процедура ФоновоеЗаданиеПроверитьНаКлиенте() + Задание = ФоновоеЗаданиеПроверитьНаСервере(); + Если Задание.Выполняется Тогда + ДлительныеОперацииКлиент.ОбновитьПараметрыОбработчикаОжидания(ПараметрыОбработчика); + ПодключитьОбработчикОжидания("ФоновоеЗаданиеПроверитьНаКлиенте", ПараметрыОбработчика.ТекущийИнтервал, Истина); + Иначе + ПеременныеКлиента.УспешноСформирован = Задание.Успех; + Если ПеременныеКлиента.УспешноСформирован Тогда + ПоказатьОповещениеПользователя(НСтр("ru = 'Отчет сформирован'"), , Заголовок); + Иначе + ПоказатьОповещениеПользователя(НСтр("ru = 'Отчет не сформирован'"), , Заголовок); + КонецЕсли; + ПослеФормированияНаКлиенте(); + КонецЕсли; +КонецПроцедуры + &НаКлиенте Процедура ОтправитьПоЭлектроннойПочтеПослеДиалогаСформировать(Ответ, ДополнительныеПараметры) Экспорт Если Ответ = КодВозвратаДиалога.Да Тогда @@ -991,23 +1031,27 @@ &НаКлиенте Процедура Сформировать() ПередФормированиемНаКлиенте(); - СформироватьНепосредственно(); - ПослеФормированияНаКлиенте() + ТребуетсяОбработчик = ФоновоеЗаданиеЗапустить(ПеременныеКлиента.ФормированиеПриОткрытии, НастройкиОтчета.Внешний Или НастройкиОтчета.Безопасный); + Если ТребуетсяОбработчик Тогда + ДлительныеОперацииКлиент.ИнициализироватьПараметрыОбработчикаОжидания(ПараметрыОбработчика); + ПодключитьОбработчикОжидания("ФоновоеЗаданиеПроверитьНаКлиенте", 1, Истина); + Иначе + ПослеФормированияНаКлиенте(); + КонецЕсли; КонецПроцедуры &НаКлиенте Процедура ПередФормированиемНаКлиенте() ПеременныеКлиента.Вставить("ВыполнятьЗамеры", НастройкиОтчета.ВыполнятьЗамеры И ЗначениеЗаполнено(НастройкиОтчета.КлючЗамеров)); Если ПеременныеКлиента.ВыполнятьЗамеры Тогда - ВариантыОтчетовКлиентСервер.ДополнитьСтруктуруКлючом(ПеременныеКлиента, "МодульОценкаПроизводительностиКлиентСервер"); + ВариантыОтчетовКлиентСервер.ДополнитьСтруктуруКлючом(ПеременныеКлиента, "МодульОценкаПроизводительностиКлиент"); ВариантыОтчетовКлиентСервер.ДополнитьСтруктуруКлючом(ПеременныеКлиента, "ИдентификаторЗамера"); Комментарий = НастройкиОтчета.ПрефиксЗамеров + "; " + НСтр("ru = 'Непосредственно:'") + " " + Строка(ПеременныеКлиента.Непосредственно); - ПеременныеКлиента.ИдентификаторЗамера = Новый УникальныйИдентификатор; - ПеременныеКлиента.МодульОценкаПроизводительностиКлиентСервер = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиентСервер"); - ПеременныеКлиента.МодульОценкаПроизводительностиКлиентСервер.НачатьРучнойЗамерВремени( - НастройкиОтчета.КлючЗамеров + ".Формирование", - ПеременныеКлиента.ИдентификаторЗамера, - Комментарий); + ПеременныеКлиента.МодульОценкаПроизводительностиКлиент = ОбщегоНазначенияКлиент.ОбщийМодуль("ОценкаПроизводительностиКлиент"); + ПеременныеКлиента.ИдентификаторЗамера = ПеременныеКлиента.МодульОценкаПроизводительностиКлиент.НачатьЗамерВремени( + Ложь, + НастройкиОтчета.КлючЗамеров + ".Формирование"); + ПеременныеКлиента.МодульОценкаПроизводительностиКлиент.УстановитьКомментарийЗамера(ПеременныеКлиента.ИдентификаторЗамера, Комментарий); КонецЕсли; КонецПроцедуры @@ -1016,16 +1060,15 @@ ОтключитьОбработчикОжидания("ФоновоеЗаданиеПроверитьНаКлиенте"); ПеременныеКлиента.ФормированиеПриОткрытии = Ложь; Если ПеременныеКлиента.ВыполнятьЗамеры Тогда - ПеременныеКлиента.МодульОценкаПроизводительностиКлиентСервер.ЗакончитьРучнойЗамерВремени(ПеременныеКлиента.ИдентификаторЗамера); + ПеременныеКлиента.МодульОценкаПроизводительностиКлиент.ЗавершитьЗамерВремени(ПеременныеКлиента.ИдентификаторЗамера); КонецЕсли; - ОтправитьПослеФормирования = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПеременныеКлиента, "ОтправитьПослеФормирования"); - Если ОтправитьПослеФормирования = Истина Тогда + Если ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПеременныеКлиента, "ОтправитьПослеФормирования") = Истина Тогда ПеременныеКлиента.ОтправитьПослеФормирования = Ложь; Если ПеременныеКлиента.УспешноСформирован Тогда ПоказатьДиалогОтправкиПоЭлектроннойПочте(); КонецЕсли; КонецЕсли; - ПоказатьРезультатЗаполненияНастроек(Неопределено); + ПоказатьРезультатЗаполненияНастроек(); ОбновитьОтображениеДанных(); // Для платформы. КонецПроцедуры @@ -1083,10 +1126,10 @@ &НаКлиенте Процедура БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения) Если ПараметрыЗаполнения = Неопределено Тогда - ПараметрыЗаполнения = Новый Структура("ИмяСобытия", "ПослеИзмененияКоллекции"); + Возврат; КонецЕсли; - РезультатКлиента = БыстрыеНастройкиЗаполнить(ПараметрыЗаполнения); - ПоказатьРезультатЗаполненияНастроек(РезультатКлиента); + БыстрыеНастройкиЗаполнить(ПараметрыЗаполнения); + ПоказатьРезультатЗаполненияНастроек(); Если ПараметрыЗаполнения.Свойство("Переформировать") И ПараметрыЗаполнения.Переформировать Тогда ОчиститьСообщения(); Сформировать(); @@ -1094,17 +1137,13 @@ КонецПроцедуры &НаКлиенте -Процедура ПоказатьРезультатЗаполненияНастроек(РезультатКлиента) - Если РезультатКлиента = Неопределено Тогда - РезультатКлиента = РезультатЗаполненияНастроек; - РезультатЗаполненияНастроек = Неопределено; - КонецЕсли; - Если ТипЗнч(РезультатКлиента) <> Тип("Структура") Тогда +Процедура ПоказатьРезультатЗаполненияНастроек() + Если ТипЗнч(РезультатЗаполненияНастроек) <> Тип("Структура") Тогда Возврат; КонецЕсли; // Для платформы (переопределение доступных значений на клиенте). - СвоиСпискиВыбора = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(РезультатКлиента, "СвоиСпискиВыбора"); + СвоиСпискиВыбора = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(РезультатЗаполненияНастроек, "СвоиСпискиВыбора"); Если ТипЗнч(СвоиСпискиВыбора) = Тип("Массив") Тогда Для Каждого ИдентификаторЭлемента Из СвоиСпискиВыбора Цикл НастройкаВарианта = НайтиНастройкуВарианта(ЭтотОбъект, ИдентификаторЭлемента); @@ -1119,9 +1158,15 @@ Тип = ТипЗнч(НастройкаВарианта.ЭлементКД); Если Тип = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда ДоступныеПараметры = НастройкаВарианта.УзелКД.ДоступныеПараметры; + Если ДоступныеПараметры = Неопределено Тогда + Продолжить; + КонецЕсли; ДоступнаяНастройкаКД = ДоступныеПараметры.НайтиПараметр(НастройкаВарианта.ЭлементКД.Параметр); ИначеЕсли Тип = Тип("ЭлементОтбораКомпоновкиДанных") Тогда ДоступныеПоляОтбора = НастройкаВарианта.УзелКД.ДоступныеПоляОтбора; + Если ДоступныеПоляОтбора = Неопределено Тогда + Продолжить; + КонецЕсли; ДоступнаяНастройкаКД = ДоступныеПоляОтбора.НайтиПоле(НастройкаВарианта.ЭлементКД.ЛевоеЗначение); КонецЕсли; Если ДоступнаяНастройкаКД = Неопределено @@ -1134,12 +1179,12 @@ ЗаполнитьЗначенияСвойств(ДоступнаяНастройкаКД.ДоступныеЗначения.Добавить(), Элемент); КонецЦикла; Исключение - Продолжить; // Для платформы. + Продолжить; КонецПопытки; КонецЦикла; КонецЕсли; - СтандартныеПодсистемыКлиент.ПоказатьРезультатВыполнения(ЭтотОбъект, РезультатКлиента); + РезультатЗаполненияНастроек.Очистить(); КонецПроцедуры &НаКлиенте @@ -1173,7 +1218,9 @@ Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("ОтчетИнициализирован", Ложь); ПараметрыЗаполнения = Новый Структура; + ПараметрыЗаполнения.Вставить("СброситьПользовательскиеНастройки", Истина); ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); + ПараметрыЗаполнения.Вставить("КомпоновщикНастроекКД", Отчет.КомпоновщикНастроек); БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); @@ -1194,7 +1241,9 @@ Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("ОтчетИнициализирован", Ложь); ПараметрыЗаполнения = Новый Структура; + ПараметрыЗаполнения.Вставить("СброситьПользовательскиеНастройки", Истина); ПараметрыЗаполнения.Вставить("ПользовательскиеНастройкиМодифицированы", Истина); + ПараметрыЗаполнения.Вставить("КомпоновщикНастроекКД", Отчет.КомпоновщикНастроек); БыстрыеНастройкиЗаполнитьКлиент(ПараметрыЗаполнения); @@ -1242,9 +1291,6 @@ "Видимость", ПоказыватьКомандыВариантовОтчетов); // Для платформы (кнопка исчезает если команда недоступна по правам). Элементы.ГруппаПользовательскиеНастройки.Видимость = ПоказыватьКомандыВариантовОтчетов И ЕстьНастройки; - - // Формировать сразу. - Элементы.ФормироватьСразу.Пометка = НастройкиОтчета.ФормироватьСразу; КонецЕсли; // Команды выбора вариантов. @@ -1266,6 +1312,13 @@ НастройкиОтчета.Печать.Вставить("КлючПараметровПечати", Уникальность); НастройкиПечатиВосстановить(); КонецЕсли; + + НавигационнаяСсылка = ""; + Если ЗначениеЗаполнено(НастройкиОтчета.ВариантСсылка) + И Не НастройкиОтчета.Внешний + И Не НастройкиОтчета.Контекстный Тогда + НавигационнаяСсылка = ПолучитьНавигационнуюСсылку(НастройкиОтчета.ВариантСсылка); + КонецЕсли; КонецЕсли; // Заголовок. @@ -1278,12 +1331,10 @@ Если РежимРасшифровки Тогда Заголовок = Заголовок + " (" + НСтр("ru = 'Расшифровка'") + ")"; КонецЕсли; - КонецПроцедуры &НаСервере Функция БыстрыеНастройкиЗаполнить(Знач ПараметрыКлиента) - // Вставка значений по умолчанию для обязательных ключей параметров заполнения. ПараметрыЗаполнения = БыстрыеНастройкиДозаполнитьПараметры(ПараметрыКлиента); @@ -1341,62 +1392,176 @@ НастройкиОтчета.Удалить("ОтчетОбъект"); КонецЕсли; - Возврат ПараметрыЗаполнения.Результат; + РезультатЗаполненияНастроек = ПараметрыЗаполнения.Результат; + + // Очистка цикличных ссылок. + Информация.ДеревоВарианта.Колонки.Очистить(); + Информация.НастройкиВарианта.Колонки.Очистить(); + Информация.ПользовательскиеНастройки.Колонки.Очистить(); КонецФункции &НаСервере -Функция КонтекстныйВызовСервера(КлючОперации, ПараметрыОперации) - РезультатВызова = Новый Структура; - Если НастройкиОтчета.События.КонтекстныйВызовСервера Тогда - ОтчетОбъект = РеквизитФормыВЗначение("Отчет"); - ОтчетОбъект.КонтекстныйВызовСервера(ЭтотОбъект, КлючОперации, ПараметрыОперации, РезультатВызова); +Функция ФоновоеЗаданиеЗапустить(Знач ФормированиеПриОткрытии, Непосредственно) + Если ФоновоеЗаданиеИдентификатор <> Неопределено Тогда + ФоновоеЗаданиеОтменить(ФоновоеЗаданиеИдентификатор); + ФоновоеЗаданиеИдентификатор = Неопределено; КонецЕсли; - Возврат РезультатВызова; + + Если Не ПроверитьЗаполнение() Тогда + Если ФормированиеПриОткрытии Тогда + ТекстОшибки = ""; + Сообщения = ПолучитьСообщенияПользователю(Истина); + Для Каждого Сообщение Из Сообщения Цикл + ТекстОшибки = ТекстОшибки + ?(ТекстОшибки = "", "", ";" + Символы.ПС + Символы.ПС) + Сообщение.Текст; + КонецЦикла; + ПоказатьОшибкиФормирования(ТекстОшибки); + КонецЕсли; + Возврат Ложь; + КонецЕсли; + + // Запуск фонового задания + ПараметрыФормированияОтчета = Новый Структура; + ПараметрыФормированияОтчета.Вставить("СсылкаОтчета", НастройкиОтчета.ОтчетСсылка); + ПараметрыФормированияОтчета.Вставить("СсылкаВарианта", НастройкиОтчета.ВариантСсылка); + ПараметрыФормированияОтчета.Вставить("КлючВарианта", КлючТекущегоВарианта); + ПараметрыФормированияОтчета.Вставить("НастройкиКД", Отчет.КомпоновщикНастроек.Настройки); + ПараметрыФормированияОтчета.Вставить("ФиксированныеНастройкиКД", Отчет.КомпоновщикНастроек.ФиксированныеНастройки); + ПараметрыФормированияОтчета.Вставить("ПользовательскиеНастройкиКД", Отчет.КомпоновщикНастроек.ПользовательскиеНастройки); + ПараметрыФормированияОтчета.Вставить("СхемаМодифицирована", НастройкиОтчета.СхемаМодифицирована); + ПараметрыФормированияОтчета.Вставить("КлючСхемы", НастройкиОтчета.КлючСхемы); + + Если НастройкиОтчета.ВыполнятьЗамеры И ЗначениеЗаполнено(НастройкиОтчета.КлючЗамеров) Тогда + Разрезы = Новый Структура; + Разрезы.Вставить("ИмяОтчета", СтрРазделить(НастройкиОтчета.ПолноеИмя, ".")[1]); + Разрезы.Вставить("ИмяИсходногоВарианта", НастройкиОтчета.ИмяИсходногоВарианта); + Разрезы.Вставить("Внешний", Число(НастройкиОтчета.Внешний)); + Разрезы.Вставить("Пользовательский", Число(НастройкиОтчета.Пользовательский)); + Разрезы.Вставить("Расшифровка", Число(РежимРасшифровки)); + Разрезы.Вставить("Модифицирован", Число(ВариантМодифицирован)); + + Если НастройкиОтчета.Свойство("СтандартныеПериоды") Тогда + Для Каждого ИдентификаторКД Из НастройкиОтчета.СтандартныеПериоды Цикл + ПользовательскаяНастройкаКД = Отчет.КомпоновщикНастроек.ПользовательскиеНастройки.ПолучитьОбъектПоИдентификатору(ИдентификаторКД); + Если ТипЗнч(ПользовательскаяНастройкаКД) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда + Значение = ПользовательскаяНастройкаКД.ПравоеЗначение; + ИначеЕсли ТипЗнч(ПользовательскаяНастройкаКД) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда + Значение = ПользовательскаяНастройкаКД.Значение; + Иначе + Продолжить; + КонецЕсли; + Если ПользовательскаяНастройкаКД.Использование И ТипЗнч(Значение) = Тип("СтандартныйПериод") Тогда + ОбщегоНазначенияКлиентСервер.ДополнитьСтруктуру(Разрезы, ОтчетыСервер.АнализПериода(Значение), Истина); + Прервать; + КонецЕсли; + КонецЦикла; + КонецЕсли; + + ПараметрыФормированияОтчета.Вставить("ИмяКлючевойОперации", НРег(ВариантыОтчетовКлиентСервер.СтруктураВСтроку(Разрезы, "=", "/"))); + КонецЕсли; + + Если Непосредственно Тогда + Если НастройкиОтчета.СхемаМодифицирована Тогда + ПараметрыФормированияОтчета.Вставить("АдресСхемы", НастройкиОтчета.АдресСхемы); + КонецЕсли; + РезультатФоновогоЗадания = Новый Структура("Статус, ИдентификаторЗадания, АдресРезультата, КраткоеПредставлениеОшибки"); + РезультатФоновогоЗадания.АдресРезультата = ПоместитьВоВременноеХранилище(Неопределено, УникальныйИдентификатор); + ПараметрыФормированияОтчета.Вставить("Объект", РеквизитФормыВЗначение("Отчет")); + ПараметрыФормированияОтчета.Вставить("ПолноеИмя", НастройкиОтчета.ПолноеИмя); + Попытка + ВариантыОтчетов.СформироватьОтчетВФоне(ПараметрыФормированияОтчета, РезультатФоновогоЗадания.АдресРезультата); + РезультатФоновогоЗадания.Статус = "Выполнено"; + Исключение + РезультатФоновогоЗадания.Статус = "Ошибка"; + РезультатФоновогоЗадания.КраткоеПредставлениеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке()); + КонецПопытки; + Иначе + Если НастройкиОтчета.СхемаМодифицирована Тогда + ПараметрыФормированияОтчета.Вставить("СхемаКД", ПолучитьИзВременногоХранилища(НастройкиОтчета.АдресСхемы)); + КонецЕсли; + ПараметрыЗапуска = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); + ПараметрыЗапуска.НаименованиеФоновогоЗадания = НСтр("ru = 'Варианты отчетов: Формирование отчета'"); + ПараметрыЗапуска.ОжидатьЗавершение = Ложь; + РезультатФоновогоЗадания = ДлительныеОперации.ВыполнитьВФоне( + "ВариантыОтчетов.СформироватьОтчетВФоне", + ПараметрыФормированияОтчета, + ПараметрыЗапуска); + КонецЕсли; + + Если РезультатФоновогоЗадания.Статус = "Ошибка" Тогда + ПоказатьОшибкиФормирования(РезультатФоновогоЗадания.КраткоеПредставлениеОшибки); + Возврат Ложь; + КонецЕсли; + + ФоновоеЗаданиеИдентификатор = РезультатФоновогоЗадания.ИдентификаторЗадания; + ФоновоеЗаданиеАдресХранилища = РезультатФоновогоЗадания.АдресРезультата; + + Если РезультатФоновогоЗадания.Статус = "Выполнено" Тогда + ФоновоеЗаданиеЗагрузитьРезультат(); + ЗаданиеЗапущено = Ложь; + Иначе + ОтображениеСостояния = Элементы.ОтчетТабличныйДокумент.ОтображениеСостояния; + ОтображениеСостояния.Видимость = Истина; + ОтображениеСостояния.ДополнительныйРежимОтображения = ДополнительныйРежимОтображения.Неактуальность; + ОтображениеСостояния.Картинка = БиблиотекаКартинок.ДлительнаяОперация48; + ОтображениеСостояния.Текст = НСтр("ru = 'Отчет формируется...'"); + + ЗаданиеЗапущено = Истина; + КонецЕсли; + + Возврат ЗаданиеЗапущено; КонецФункции &НаСервере -Процедура СформироватьНепосредственно() - ДопСвойства = Отчет.КомпоновщикНастроек.ПользовательскиеНастройки.ДополнительныеСвойства; - - // Формирование отчета. - ДопСвойства.Вставить("КлючВарианта", КлючТекущегоВарианта); - НастройкиПечатиСохранить(); - ИнформацияОбОшибке = Неопределено; - Попытка - СкомпоноватьРезультат(РежимКомпоновкиРезультата.Авто); - Исключение - ИнформацияОбОшибке = ИнформацияОбОшибке(); - КонецПопытки; - ДопСвойства.Удалить("КлючВарианта"); - НастройкиПечатиВосстановить(); - - Если ИнформацияОбОшибке <> Неопределено Тогда - ПоказатьОшибкиФормирования(ИнформацияОбОшибке); - Возврат; +Функция ФоновоеЗаданиеПроверитьНаСервере() + Задание = НайтиЗаданиеСлужебный(ФоновоеЗаданиеИдентификатор); + Если Не Задание.Выполняется Тогда + Если Задание.Успех Тогда + ФоновоеЗаданиеЗагрузитьРезультат(); + Иначе + ПоказатьОшибкиФормирования(Задание.Ошибка); + КонецЕсли; + КонецЕсли; + Задание.Удалить("Ошибка"); + Возврат Задание; +КонецФункции + +&НаСервере +Функция НайтиЗаданиеСлужебный(Знач Идентификатор) + // Считывает состояние фонового задания по переданному идентификатору. + // + // Параметры: + // Идентификатор - УникальныйИдентификатор - Идентификатор фонового задания. + // + // Возвращаемое значение: + // Неопределено - Задание не найдено. + // Структура - Сведения о задании. + // * Выполняется - Булево - Истина когда фоновое задание еще выполняется. + // * Успешно - Булево - Истина когда сеанс фонового задания завершился без ошибок. + // * Ошибка - Строка, ИнформацияОбОшибке, Неопределено - Описание ошибки. + // + Результат = Новый Структура("Выполняется, Успех, Ошибка", Ложь, Ложь, Неопределено); + Если Идентификатор = Неопределено Тогда + Возврат Результат; + КонецЕсли; + Задание = ФоновыеЗадания.НайтиПоУникальномуИдентификатору(Идентификатор); + Если Задание = Неопределено Тогда + Возврат Результат; КонецЕсли; - // Перезаполнение настроек. - РезультатФормирования = Новый Структура; - РезультатФормирования.Вставить("ВариантМодифицирован", Ложь); - РезультатФормирования.Вставить("ПользовательскиеНастройкиМодифицированы", Ложь); - Модифицирован = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ДопСвойства, "ВариантМодифицирован"); - Если Модифицирован = Истина Тогда - РезультатФормирования.ВариантМодифицирован = Истина; + Если Задание.Состояние = СостояниеФоновогоЗадания.Активно Тогда + Результат.Выполняется = Истина; + Иначе + Результат.Выполняется = Ложь; + Если Задание.Состояние = СостояниеФоновогоЗадания.Завершено Тогда + Результат.Успех = Истина; + Иначе + Результат.Успех = Ложь; + Результат.Ошибка = Задание.ИнформацияОбОшибке; + КонецЕсли; КонецЕсли; - Модифицированы = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ДопСвойства, "ПользовательскиеНастройкиМодифицированы"); - Если РезультатФормирования.ВариантМодифицирован Или Модифицированы = Истина Тогда - РезультатФормирования.ПользовательскиеНастройкиМодифицированы = Истина; - КонецЕсли; - ДопСвойства.Удалить("ВариантМодифицирован"); - ДопСвойства.Удалить("ПользовательскиеНастройкиМодифицированы"); - Если РезультатФормирования.ВариантМодифицирован - Или РезультатФормирования.ПользовательскиеНастройкиМодифицированы Тогда - РезультатФормирования.Вставить("ИмяСобытия", "ПослеФормирования"); - РезультатФормирования.Вставить("Непосредственно", Истина); - РезультатЗаполненияНастроек = БыстрыеНастройкиЗаполнить(РезультатФормирования); - КонецЕсли; -КонецПроцедуры + Возврат Результат; +КонецФункции &НаСервереБезКонтекста Процедура ФоновоеЗаданиеОтменить(ФоновоеЗаданиеИдентификатор) @@ -1405,11 +1570,18 @@ &НаСервере Процедура ЗагрузитьВариант(КлючВарианта) - // Сохранение текущих пользовательских настроек. - ОбщегоНазначения.ХранилищеСистемныхНастроекСохранить( - НастройкиОтчета.ПолноеИмя + "/" + КлючТекущегоВарианта + "/ТекущиеПользовательскиеНастройки", - "", - Отчет.КомпоновщикНастроек.ПользовательскиеНастройки); + Если Не РежимРасшифровки Тогда + // Сохранение текущих пользовательских настроек. + ОбщегоНазначения.ХранилищеСистемныхНастроекСохранить( + НастройкиОтчета.ПолноеИмя + "/" + КлючТекущегоВарианта + "/ТекущиеПользовательскиеНастройки", + "", + Отчет.КомпоновщикНастроек.ПользовательскиеНастройки); + КонецЕсли; + РежимРасшифровки = Ложь; + ВариантМодифицирован = Ложь; + ПользовательскиеНастройкиМодифицированы = Ложь; + НастройкиОтчета.ПрочитатьФлажокФормироватьСразуИзПользовательскихНастроек = Истина; + НастройкиОтчета.Удалить("ФормаНастроекРасширенныйРежим"); // Загрузка нового варианта. УстановитьТекущийВариант(КлючВарианта); // Переключение состояния. @@ -2016,6 +2188,11 @@ КонецЕсли; КонецЕсли; + СброситьНастройкиВарианта = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыЗаполнения, "СброситьНастройкиВарианта", Ложь); + Если СброситьНастройкиВарианта Тогда + ЗагрузитьВариант(КлючТекущегоВарианта); + КонецЕсли; + СброситьПользовательскиеНастройки = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ПараметрыЗаполнения, "СброситьПользовательскиеНастройки", Ложь); Если СброситьПользовательскиеНастройки Тогда НовыеПользовательскиеНастройкиКД = Новый ПользовательскиеНастройкиКомпоновкиДанных; @@ -2031,16 +2208,15 @@ НовыеПользовательскиеНастройкиКД); КонецЕсли; - Если ТипЗнч(НовыеНастройкиКД) = Тип("НастройкиКомпоновкиДанных") - И Отчет.КомпоновщикНастроек.Настройки <> НовыеНастройкиКД Тогда + НастройкиЗагружены = ОтчетыКлиентСервер.ЗагрузитьНастройки(Отчет.КомпоновщикНастроек, НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД); + Если НастройкиЗагружены Тогда + // Установка фиксированных отборов выполняется через компоновщик, т.к. в нем наиболее полная коллекция настроек. + // В ПередЗагрузкой в параметрах могут отсутствовать те параметры, настройки которые не переопределялись. Если ТипЗнч(ФормаПараметры.Отбор) = Тип("Структура") Тогда - ОтчетыСервер.УстановитьФиксированныеОтборы(ФормаПараметры.Отбор, НовыеНастройкиКД, НастройкиОтчета); + ОтчетыСервер.УстановитьФиксированныеОтборы(ФормаПараметры.Отбор, Отчет.КомпоновщикНастроек.Настройки, НастройкиОтчета); КонецЕсли; - Отчет.КомпоновщикНастроек.ЗагрузитьНастройки(НовыеНастройкиКД); - КонецЕсли; - Если ТипЗнч(НовыеПользовательскиеНастройкиКД) = Тип("ПользовательскиеНастройкиКомпоновкиДанных") - И Отчет.КомпоновщикНастроек.ПользовательскиеНастройки <> НовыеПользовательскиеНастройкиКД Тогда - Отчет.КомпоновщикНастроек.ЗагрузитьПользовательскиеНастройки(НовыеПользовательскиеНастройкиКД); + Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("КлючВарианта", КлючТекущегоВарианта); + Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("ВариантНаименование", ОтчетНаименованиеТекущегоВарианта); КонецЕсли; Если ПараметрыЗаполнения.Свойство("ФормаНастроекРасширенныйРежим") Тогда @@ -2069,7 +2245,7 @@ Если НастройкиОтчета.ПрочитатьФлажокФормироватьСразуИзПользовательскихНастроек Тогда НастройкиОтчета.ПрочитатьФлажокФормироватьСразуИзПользовательскихНастроек = Ложь; - НастройкиОтчета.ФормироватьСразу = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры( + Элементы.ФормироватьСразу.Пометка = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры( Отчет.КомпоновщикНастроек.ПользовательскиеНастройки.ДополнительныеСвойства, "ФормироватьСразу", НастройкиОтчета.ФормироватьСразу); @@ -2257,10 +2433,54 @@ ЗаполнитьЗначенияСвойств(ОтчетТабличныйДокумент, НастройкиОтчета.Печать); КонецПроцедуры +&НаСервере +Процедура ФоновоеЗаданиеЗагрузитьРезультат() + + РезультатФормирования = ПолучитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); + + УдалитьИзВременногоХранилища(ФоновоеЗаданиеАдресХранилища); + ФоновоеЗаданиеАдресХранилища = Неопределено; + ФоновоеЗаданиеИдентификатор = Неопределено; + + Успех = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(РезультатФормирования, "Успех"); + Если Успех <> Истина Тогда + ПоказатьОшибкиФормирования(РезультатФормирования.ТекстОшибки); + Возврат; + КонецЕсли; + + ДанныеЕщеОбновляются = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(РезультатФормирования, "ДанныеЕщеОбновляются", Ложь); + Если ДанныеЕщеОбновляются Тогда + ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ВариантыОтчетов.СообщениеДанныеЕщеОбновляются()); + КонецЕсли; + + ОтображениеСостояния = Элементы.ОтчетТабличныйДокумент.ОтображениеСостояния; + ОтображениеСостояния.Видимость = Ложь; + ОтображениеСостояния.ДополнительныйРежимОтображения = ДополнительныйРежимОтображения.НеИспользовать; + ОтображениеСостояния.Картинка = Новый Картинка; + ОтображениеСостояния.Текст = ""; + + НастройкиПечатиСохранить(); + ОтчетТабличныйДокумент = РезультатФормирования.ТабличныйДокумент; + НастройкиПечатиВосстановить(); + + Если ЗначениеЗаполнено(ОтчетДанныеРасшифровки) И ЭтоАдресВременногоХранилища(ОтчетДанныеРасшифровки) Тогда + УдалитьИзВременногоХранилища(ОтчетДанныеРасшифровки); + КонецЕсли; + ОтчетДанныеРасшифровки = ПоместитьВоВременноеХранилище(РезультатФормирования.Расшифровка, УникальныйИдентификатор); + + Если РезультатФормирования.ВариантМодифицирован + Или РезультатФормирования.ПользовательскиеНастройкиМодифицированы Тогда + РезультатФормирования.Вставить("ИмяСобытия", "ПослеФормирования"); + РезультатФормирования.Вставить("Непосредственно", Ложь); + БыстрыеНастройкиЗаполнить(РезультатФормирования); + КонецЕсли; + +КонецПроцедуры + &НаСервере Процедура ПоказатьОшибкиФормирования(ИнформацияОбОшибке) Если ТипЗнч(ИнформацияОбОшибке) = Тип("ИнформацияОбОшибке") Тогда - ОписаниеОшибки = СтандартныеПодсистемыКлиентСервер.ИсходнаяПричинаОшибки(ИнформацияОбОшибке); + ОписаниеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке); ПодробноеПредставлениеОшибки = НСтр("ru = 'Ошибка при формировании:'") + Символы.ПС + ПодробноеПредставлениеОшибки(ИнформацияОбОшибке); Если ПустаяСтрока(ОписаниеОшибки) Тогда ОписаниеОшибки = ПодробноеПредставлениеОшибки; @@ -2349,6 +2569,7 @@ Процедура ЗаполнитьКомандыВыбораВариантов() ВариантыФормы = РеквизитФормыВЗначение("ДобавленныеВарианты"); ВариантыФормы.Колонки.Добавить("Найден", Новый ОписаниеТипов("Булево")); + АвторизованныйПользователь = Пользователи.АвторизованныйПользователь(); ПараметрыПоиска = Новый Структура; ПараметрыПоиска.Вставить("Отчеты", ОтчетыКлиентСервер.ЗначениеВМассив(НастройкиОтчета.ОтчетСсылка)); @@ -2363,13 +2584,17 @@ СтрокаТаблицы.КлючВарианта = ЭлементСписка.Значение; КонецЦикла; КонецЕсли; - ТаблицаВариантов.Свернуть("Ссылка, КлючВарианта, Наименование"); + ТаблицаВариантов.Свернуть("Ссылка, КлючВарианта, Наименование, Автор, ТолькоДляАвтора"); ТаблицаВариантов.Сортировать("Наименование Возр, КлючВарианта Возр"); Группа = Элементы.ВариантыОтчета; КнопкиГруппы = Группа.ПодчиненныеЭлементы; ПоследнийИндекс = ВариантыФормы.Количество() - 1; Для Каждого СтрокаТаблицы Из ТаблицаВариантов Цикл + Если СтрокаТаблицы.ТолькоДляАвтора = Истина + И СтрокаТаблицы.Автор <> АвторизованныйПользователь Тогда + Продолжить; + КонецЕсли; Найденные = ВариантыФормы.НайтиСтроки(Новый Структура("КлючВарианта, Найден", СтрокаТаблицы.КлючВарианта, Ложь)); Если Найденные.Количество() = 1 Тогда ВариантФормы = Найденные[0]; @@ -2430,6 +2655,12 @@ КонецЕсли; КонецЕсли; КонецЕсли; + // В безопасном режиме отчеты нельзя сохранить при помощи стандартного диалога, + // возникающего перед закрытием, поскольку не включается привилегированный режим при доступе к планам обмена. + Если НастройкиОтчета.Безопасный + И Не Пользователи.ЭтоПолноправныйПользователь() Тогда + ВариантМодифицирован = Ложь; + КонецЕсли; КонецПроцедуры &НаСервере @@ -2445,6 +2676,9 @@ &НаСервере Процедура ОбновитьИнформациюОВариантеОтчета() + Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("КлючВарианта", КлючТекущегоВарианта); + Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("ВариантНаименование", ОтчетНаименованиеТекущегоВарианта); + Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ 1 @@ -2468,16 +2702,12 @@ Выборка = Запрос.Выполнить().Выбрать(); - НавигационнаяСсылка = ""; Если Выборка.Следующий() Тогда НастройкиОтчета.Вставить("ВариантСсылка", Выборка.ВариантСсылка); НастройкиОтчета.Вставить("КлючЗамеров", Выборка.КлючЗамеров); НастройкиОтчета.Вставить("ПредопределенныйСсылка", Выборка.ПредопределенныйСсылка); - НастройкиОтчета.Вставить("ИмяИсходногоВарианта", ?(Выборка.Пользовательский, КлючТекущегоВарианта, Выборка.ИмяИсходногоВарианта)); + НастройкиОтчета.Вставить("ИмяИсходногоВарианта", ?(Выборка.Пользовательский, Выборка.ИмяИсходногоВарианта, КлючТекущегоВарианта)); НастройкиОтчета.Вставить("Пользовательский", Выборка.Пользовательский); - Если Не НастройкиОтчета.Внешний Тогда - НавигационнаяСсылка = ПолучитьНавигационнуюСсылку(НастройкиОтчета.ВариантСсылка); - КонецЕсли; Иначе НастройкиОтчета.Вставить("ВариантСсылка", Неопределено); НастройкиОтчета.Вставить("КлючЗамеров", Неопределено); diff --git a/SSL/src/Reports/УниверсальныйОтчет/ManagerModule.bsl b/SSL/src/Reports/УниверсальныйОтчет/ManagerModule.bsl index 388a483e8..04d0c0da6 100644 --- a/SSL/src/Reports/УниверсальныйОтчет/ManagerModule.bsl +++ b/SSL/src/Reports/УниверсальныйОтчет/ManagerModule.bsl @@ -44,139 +44,11 @@ #Область СлужебныеПроцедурыИФункции -Функция ИнициализироватьОтчет(КомпоновщикНастроек, - ОчиститьСтруктуру, - АдресСхемы = Неопределено, - НастройкиВарианта = Неопределено, - НастройкиПоУмолчанию = Неопределено) Экспорт +Процедура ПередКомпоновкойМакета(Схема, Настройки) - ПараметрыОтчета = Новый Структура; + Настройки.Структура.Очистить(); - // Если настройки варианта не передаются, то они берутся из настроек компоновщика. - Если НастройкиВарианта = Неопределено Тогда - НастройкиВарианта = КомпоновщикНастроек.Настройки; - КонецЕсли; - - ЭтоЗагруженнаяСхема = НастройкиВарианта.ДополнительныеСвойства.Свойство("СхемаКомпоновкиДанных"); - - Если ЭтоЗагруженнаяСхема Тогда - - ЗагруженнаяСхема = НастройкиВарианта.ДополнительныеСвойства.СхемаКомпоновкиДанных; - ВременныйФайл = ПолучитьИмяВременногоФайла(); - ЗагруженнаяСхема.Записать(ВременныйФайл); - - Чтение = Новый ЧтениеXML; - НовыйСXDTO = Новый СериализаторXDTO(ФабрикаXDTO); - Чтение.ОткрытьФайл(ВременныйФайл); - СКД = НовыйСXDTO.ПрочитатьXML(Чтение, Тип("СхемаКомпоновкиДанных")); - Чтение.Закрыть(); - УдалитьФайлы(ВременныйФайл); - - Иначе - - СКД = Отчеты.УниверсальныйОтчет.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); - ИсточникДанных = СКД.ИсточникиДанных.Добавить(); - ИсточникДанных.Имя = "ИсточникДанных1"; - ИсточникДанных.ТипИсточникаДанных = "Local"; - - НаборДанных = СКД.НаборыДанных.Добавить(Тип("НаборДанныхЗапросСхемыКомпоновкиДанных")); - НаборДанных.Имя = "НаборДанных1"; - НаборДанных.ИсточникДанных = ИсточникДанных.Имя; - - СКД.ПоляИтога.Очистить(); - - Если НастройкиВарианта.ДополнительныеСвойства.Свойство("ОтчетИнициализирован") Тогда - - ПараметрыОтчета.Вставить("ТипОбъектаМетаданных", НастройкиВарианта.ПараметрыДанных.Элементы.Найти("ТипОбъектаМетаданных").Значение); - Если ПустаяСтрока(ПараметрыОтчета.ТипОбъектаМетаданных) Тогда - ПараметрыОтчета.ТипОбъектаМетаданных = ТипОбъектаМетаданныхПоУмолчанию(); - КонецЕсли; - ПолноеИмяОбъектаМетаданных = НастройкиВарианта.ПараметрыДанных.Элементы.Найти("ПолноеИмяОбъектаМетаданных").Значение; - Если ПустаяСтрока(ПолноеИмяОбъектаМетаданных) Тогда - ПолноеИмяОбъектаМетаданных = ПолноеИмяОбъектаМетаданныхПоУмолчанию(КомпоновщикНастроек, ПараметрыОтчета.ТипОбъектаМетаданных); - КонецЕсли; - ПараметрыОтчета.Вставить("ПолноеИмяОбъектаМетаданных", ПолноеИмяОбъектаМетаданных); - ИмяТаблицы = НастройкиВарианта.ПараметрыДанных.Элементы.Найти("ИмяТаблицы").Значение; - ДоступныеТаблицы = ДоступныеТаблицы(КомпоновщикНастроек, ПараметрыОтчета.ТипОбъектаМетаданных, ПараметрыОтчета.ПолноеИмяОбъектаМетаданных); - Если ПустаяСтрока(ИмяТаблицы) Тогда - ИмяТаблицы = ДоступныеТаблицы[0].Значение; - КонецЕсли; - ПараметрыОтчета.Вставить("ИмяТаблицы", ИмяТаблицы); - Иначе - ПараметрыОтчета = НастройкиПоУмолчанию; - ДоступныеТаблицы = ДоступныеТаблицы(КомпоновщикНастроек, ПараметрыОтчета.ТипОбъектаМетаданных, ПараметрыОтчета.ПолноеИмяОбъектаМетаданных); - КонецЕсли; - СКД.НаборыДанных[0].Запрос = ТекстЗапросаПоМетаданным(ПараметрыОтчета); - - ДобавитьПоляНабораДанных(ПараметрыОтчета, СКД); - - // Для справочников и планов видов расчета пользовательский параметр Период не выводится. - Если ПараметрыОтчета.ТипОбъектаМетаданных = "Справочники" - Или ПараметрыОтчета.ТипОбъектаМетаданных = "ПланыВидовРасчета" Тогда - СКД.Параметры.Период.ОграничениеИспользования = Истина; - КонецЕсли; - Если ДоступныеТаблицы.Количество() <= 1 Тогда - СКД.Параметры.ИмяТаблицы.ОграничениеИспользования = Истина; - КонецЕсли; - КонецЕсли; - - СхемаКомпоновкиДанных = ПоместитьВоВременноеХранилище(СКД, АдресСхемы); - КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных)); - - Если ОчиститьСтруктуру Тогда - - КомпоновщикНастроек.Настройки.Выбор.Элементы.Очистить(); - КомпоновщикНастроек.Настройки.Структура.Очистить(); - КомпоновщикНастроек.ЗагрузитьНастройки(СКД.НастройкиПоУмолчанию); - - Если ЭтоЗагруженнаяСхема Тогда - КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("СхемаКомпоновкиДанных", ЗагруженнаяСхема); - Иначе - ДобавитьПоказатели(ПараметрыОтчета, КомпоновщикНастроек); - ПередКомпоновкойМакета(СКД, КомпоновщикНастроек); - - ПараметрОтчета = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ТипОбъектаМетаданных"); - ПараметрОтчета.Значение = ПараметрыОтчета.ТипОбъектаМетаданных; - - Для Каждого ПН Из КомпоновщикНастроек.ПользовательскиеНастройки.Элементы Цикл - Если ПН.Параметр = ПараметрОтчета.Параметр Тогда - ПН.Значение = ПараметрыОтчета.ТипОбъектаМетаданных; - КонецЕсли; - КонецЦикла; - - ПараметрОтчета = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ПолноеИмяОбъектаМетаданных"); - ПараметрОтчета.Значение = ПараметрыОтчета.ПолноеИмяОбъектаМетаданных; - - Для Каждого ПН Из КомпоновщикНастроек.ПользовательскиеНастройки.Элементы Цикл - Если ПН.Параметр = ПараметрОтчета.Параметр Тогда - ПН.Значение = ПараметрыОтчета.ПолноеИмяОбъектаМетаданных; - КонецЕсли; - КонецЦикла; - - ПараметрОтчета = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ИмяТаблицы"); - ПараметрОтчета.Значение = ПараметрыОтчета.ИмяТаблицы; - - Для Каждого ПН Из КомпоновщикНастроек.ПользовательскиеНастройки.Элементы Цикл - Если ПН.Параметр = ПараметрОтчета.Параметр Тогда - ПН.Значение = ПараметрыОтчета.ИмяТаблицы; - КонецЕсли; - КонецЦикла; - - КонецЕсли; - - КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Вставить("ОтчетИнициализирован", Истина); - - КонецЕсли; - - Возврат СхемаКомпоновкиДанных; - -КонецФункции - -Процедура ПередКомпоновкойМакета(Схема, КомпоновщикНастроек) - - КомпоновщикНастроек.Настройки.Структура.Очистить(); - - Структура = КомпоновщикНастроек.Настройки.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных")); + Структура = Настройки.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных")); Структура.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных")); Структура.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных")); @@ -216,7 +88,7 @@ Если ИмяТипаДанных = "Справочник" ИЛИ ИмяТипаДанных = "Документ" Или ИмяТипаДанных = "Задача" ИЛИ ИмяТипаДанных = "БизнесПроцесс" Тогда - // Если это табличная часть объекта то нужно проверить ее наличие + // Если это табличная часть объекта то нужно проверить ее наличие. Если Метаданные[ПараметрыОтчета.ТипОбъектаМетаданных][ПараметрыОтчета.ПолноеИмяОбъектаМетаданных].ТабличныеЧасти.Найти(ПараметрыОтчета.ИмяТаблицы) <> Неопределено Тогда ТекстЗапроса = ТекстЗапроса + "." + ПараметрыОтчета.ИмяТаблицы; ЭтоТабличнаяЧастьИсточника = Истина; @@ -307,13 +179,13 @@ КонецФункции -Функция ДоступныеОбъектыМетаданных(КомпоновщикНастроек, ТипОбъектаМетаданных = "") Экспорт +Функция ДоступныеОбъектыМетаданных(НастройкиКД, ТипОбъектаМетаданных = "") Экспорт ЗначенияДляВыбора = Новый СписокЗначений; УдаляемыеОбъекты = Новый СписокЗначений; Если ПустаяСтрока(ТипОбъектаМетаданных) Тогда - ПараметрыОтчета = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы; + ПараметрыОтчета = НастройкиКД.ПараметрыДанных.Элементы; ПараметрТипОбъектаМетаданных = ПараметрыОтчета.Найти("ТипОбъектаМетаданных"); ТипОбъектаМетаданных = ПараметрТипОбъектаМетаданных.Значение; КонецЕсли; @@ -342,32 +214,32 @@ КонецФункции -Функция ДоступныеТаблицы(КомпоновщикНастроек, ТипОбъектаМетаданных = "", ПолноеИмяОбъектаМетаданных = "") Экспорт +Функция ДоступныеТаблицы(НастройкиКД, ТипОбъектаМетаданных = "", ПолноеИмяОбъектаМетаданных = "") Экспорт ЗначенияДляВыбора = Новый СписокЗначений; - ЭтоЗагруженнаяСхема = КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Свойство("СхемаКомпоновкиДанных"); + ЭтоЗагруженнаяСхема = НастройкиКД.ДополнительныеСвойства.Свойство("СхемаКомпоновкиДанных"); Если ПустаяСтрока(ТипОбъектаМетаданных) Тогда - ПараметрыОтчета = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы; + ПараметрыОтчета = НастройкиКД.ПараметрыДанных.Элементы; ПараметрТипОбъектаМетаданных = ПараметрыОтчета.Найти("ТипОбъектаМетаданных"); ТипОбъектаМетаданных = ПараметрТипОбъектаМетаданных.Значение; КонецЕсли; Если ПустаяСтрока(ПолноеИмяОбъектаМетаданных) Тогда - ПараметрыОтчета = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы; + ПараметрыОтчета = НастройкиКД.ПараметрыДанных.Элементы; ПараметрТипОбъектаМетаданных = ПараметрыОтчета.Найти("ПолноеИмяОбъектаМетаданных"); ПолноеИмяОбъектаМетаданных = ПараметрТипОбъектаМетаданных.Значение; КонецЕсли; - ПараметрыОтчета = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы; + ПараметрыОтчета = НастройкиКД.ПараметрыДанных.Элементы; ПараметрТипОбъектаМетаданных = ПараметрыОтчета.Найти("ТипОбъектаМетаданных"); ПараметрПолноеИмяОбъектаМетаданных = ПараметрыОтчета.Найти("ПолноеИмяОбъектаМетаданных"); Если (НЕ ЗначениеЗаполнено(ТипОбъектаМетаданных) ИЛИ НЕ ЗначениеЗаполнено(ПолноеИмяОбъектаМетаданных)) - И НЕ КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Свойство("СхемаКомпоновкиДанных") Тогда + И НЕ НастройкиКД.ДополнительныеСвойства.Свойство("СхемаКомпоновкиДанных") Тогда Возврат ЗначенияДляВыбора; КонецЕсли; @@ -427,7 +299,7 @@ КонецФункции -Функция ТипОбъектаМетаданныхПоУмолчанию() Экспорт +Функция ТипОбъектаМетаданныхПоУмолчанию() ЗначенияДляВыбора = ДоступныеТипыОбъектовМетаданных(); @@ -439,11 +311,11 @@ КонецФункции -Функция ПолноеИмяОбъектаМетаданныхПоУмолчанию(КомпоновщикНастроек, ТипОбъектаМетаданных) Экспорт +Функция ПолноеИмяОбъектаМетаданныхПоУмолчанию(НастройкиКД, ТипОбъектаМетаданных) - ЗначенияДляВыбора = ДоступныеОбъектыМетаданных(КомпоновщикНастроек, ТипОбъектаМетаданных); + ЗначенияДляВыбора = ДоступныеОбъектыМетаданных(НастройкиКД, ТипОбъектаМетаданных); - ЭтоЗагруженнаяСхема = КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Свойство("СхемаКомпоновкиДанных"); + ЭтоЗагруженнаяСхема = НастройкиКД.ДополнительныеСвойства.Свойство("СхемаКомпоновкиДанных"); Если Не ЭтоЗагруженнаяСхема И ЗначенияДляВыбора.Количество() > 0 Тогда ЗначениеПоУмолчанию = ЗначенияДляВыбора[0].Значение; КонецЕсли; @@ -452,11 +324,11 @@ КонецФункции -Функция ИмяТаблицыПоУмолчанию(КомпоновщикНастроек, ТипОбъектаМетаданных, ПолноеИмяОбъектаМетаданных) Экспорт +Функция ИмяТаблицыПоУмолчанию(НастройкиКД, ТипОбъектаМетаданных, ПолноеИмяОбъектаМетаданных) - ЗначенияДляВыбора = ДоступныеТаблицы(КомпоновщикНастроек, ТипОбъектаМетаданных, ПолноеИмяОбъектаМетаданных); + ЗначенияДляВыбора = ДоступныеТаблицы(НастройкиКД, ТипОбъектаМетаданных, ПолноеИмяОбъектаМетаданных); - ЭтоЗагруженнаяСхема = КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Свойство("СхемаКомпоновкиДанных"); + ЭтоЗагруженнаяСхема = НастройкиКД.ДополнительныеСвойства.Свойство("СхемаКомпоновкиДанных"); Если Не ЭтоЗагруженнаяСхема И ЗначенияДляВыбора.Количество() > 0 Тогда ЗначениеПоУмолчанию = ЗначенияДляВыбора[0].Значение; КонецЕсли; @@ -491,7 +363,7 @@ ДобавитьПоляПериодаВНаборДанных(СхемаКомпоновкиДанных.НаборыДанных[0]); КонецЕсли; - // Для регистров бухгалтерии важна настройка ролей + // Для регистров бухгалтерии важна настройка ролей. Если ПараметрыОтчета.ТипОбъектаМетаданных = "РегистрыБухгалтерии" Тогда ПолеСчет = ДобавитьПолеНабораДанных(СхемаКомпоновкиДанных.НаборыДанных[0], "Счет", НСтр("ru = 'Счет'")); @@ -760,7 +632,7 @@ КонецФункции -// Добавляет в набор данных поле набора данных +// Добавляет в набор данных поле набора данных. Функция ДобавитьПолеНабораДанных(НаборДанных, Поле, Заголовок, ПутьКДанным = Неопределено) Если ПутьКДанным = Неопределено Тогда @@ -789,36 +661,36 @@ КонецФункции -Процедура ДобавитьПоказатели(ПараметрыОтчета, КомпоновщикНастроек) +Процедура ДобавитьПоказатели(ПараметрыОтчета, НастройкиКД) Если ПараметрыОтчета.ИмяТаблицы = "ОстаткиИОбороты" Тогда - ВыбранныеПоляНачальныйОстаток = КомпоновщикНастроек.Настройки.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных")); + ВыбранныеПоляНачальныйОстаток = НастройкиКД.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных")); ВыбранныеПоляНачальныйОстаток.Заголовок = НСтр("ru = 'Нач. остаток'"); ВыбранныеПоляНачальныйОстаток.Расположение = РасположениеПоляКомпоновкиДанных.Горизонтально; Если ПараметрыОтчета.ТипОбъектаМетаданных = "РегистрыНакопления" Тогда - ВыбранныеПоляПриход = КомпоновщикНастроек.Настройки.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных")); + ВыбранныеПоляПриход = НастройкиКД.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных")); ВыбранныеПоляПриход.Заголовок = НСтр("ru = 'Приход'"); ВыбранныеПоляПриход.Расположение = РасположениеПоляКомпоновкиДанных.Горизонтально; - ВыбранныеПоляРасход = КомпоновщикНастроек.Настройки.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных")); + ВыбранныеПоляРасход = НастройкиКД.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных")); ВыбранныеПоляРасход.Заголовок = НСтр("ru = 'Расход'"); ВыбранныеПоляРасход.Расположение = РасположениеПоляКомпоновкиДанных.Горизонтально; ИначеЕсли ПараметрыОтчета.ТипОбъектаМетаданных = "РегистрыБухгалтерии" Тогда - ВыбранныеПоляОбороты = КомпоновщикНастроек.Настройки.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных")); + ВыбранныеПоляОбороты = НастройкиКД.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных")); ВыбранныеПоляОбороты.Заголовок = НСтр("ru = 'Обороты'"); ВыбранныеПоляОбороты.Расположение = РасположениеПоляКомпоновкиДанных.Горизонтально; КонецЕсли; - ВыбранныеПоляКонечныйОстаток = КомпоновщикНастроек.Настройки.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных")); + ВыбранныеПоляКонечныйОстаток = НастройкиКД.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных")); ВыбранныеПоляКонечныйОстаток.Заголовок = НСтр("ru = 'Кон. остаток'"); ВыбранныеПоляКонечныйОстаток.Расположение = РасположениеПоляКомпоновкиДанных.Горизонтально; КонецЕсли; Если ПараметрыОтчета.ТипОбъектаМетаданных = "РегистрыНакопления" Тогда Для каждого Измерение Из Метаданные[ПараметрыОтчета.ТипОбъектаМетаданных][ПараметрыОтчета.ПолноеИмяОбъектаМетаданных].Измерения Цикл - ВыбранныеПоля = КомпоновщикНастроек.Настройки.Выбор; + ВыбранныеПоля = НастройкиКД.Выбор; ОтчетыКлиентСервер.ДобавитьВыбранноеПоле(ВыбранныеПоля, Измерение.Имя); КонецЦикла; Для каждого Ресурс Из Метаданные[ПараметрыОтчета.ТипОбъектаМетаданных][ПараметрыОтчета.ПолноеИмяОбъектаМетаданных].Ресурсы Цикл - ВыбранныеПоля = КомпоновщикНастроек.Настройки.Выбор; + ВыбранныеПоля = НастройкиКД.Выбор; Если ПараметрыОтчета.ИмяТаблицы = "Обороты" Тогда ОтчетыКлиентСервер.ДобавитьВыбранноеПоле(ВыбранныеПоля, Ресурс.Имя + "Оборот"); ИначеЕсли ПараметрыОтчета.ИмяТаблицы = "ОстаткиИОбороты" Тогда @@ -832,25 +704,25 @@ КонецЦикла; ИначеЕсли ПараметрыОтчета.ТипОбъектаМетаданных = "РегистрыРасчета" Тогда Для каждого Измерение Из Метаданные[ПараметрыОтчета.ТипОбъектаМетаданных][ПараметрыОтчета.ПолноеИмяОбъектаМетаданных].Измерения Цикл - ВыбранныеПоля = КомпоновщикНастроек.Настройки.Выбор; + ВыбранныеПоля = НастройкиКД.Выбор; ОтчетыКлиентСервер.ДобавитьВыбранноеПоле(ВыбранныеПоля, Измерение.Имя); КонецЦикла; Для каждого Ресурс Из Метаданные[ПараметрыОтчета.ТипОбъектаМетаданных][ПараметрыОтчета.ПолноеИмяОбъектаМетаданных].Ресурсы Цикл - ВыбранныеПоля = КомпоновщикНастроек.Настройки.Выбор; + ВыбранныеПоля = НастройкиКД.Выбор; ОтчетыКлиентСервер.ДобавитьВыбранноеПоле(ВыбранныеПоля, Ресурс.Имя); КонецЦикла; ИначеЕсли ПараметрыОтчета.ТипОбъектаМетаданных = "РегистрыСведений" Тогда Для каждого Измерение Из Метаданные[ПараметрыОтчета.ТипОбъектаМетаданных][ПараметрыОтчета.ПолноеИмяОбъектаМетаданных].Измерения Цикл - ВыбранныеПоля = КомпоновщикНастроек.Настройки.Выбор; + ВыбранныеПоля = НастройкиКД.Выбор; ОтчетыКлиентСервер.ДобавитьВыбранноеПоле(ВыбранныеПоля, Измерение.Имя); КонецЦикла; Для каждого Ресурс Из Метаданные[ПараметрыОтчета.ТипОбъектаМетаданных][ПараметрыОтчета.ПолноеИмяОбъектаМетаданных].Ресурсы Цикл - ВыбранныеПоля = КомпоновщикНастроек.Настройки.Выбор; + ВыбранныеПоля = НастройкиКД.Выбор; ОтчетыКлиентСервер.ДобавитьВыбранноеПоле(ВыбранныеПоля, Ресурс.Имя); КонецЦикла; ИначеЕсли ПараметрыОтчета.ТипОбъектаМетаданных = "РегистрыБухгалтерии" Тогда Для каждого Ресурс Из Метаданные[ПараметрыОтчета.ТипОбъектаМетаданных][ПараметрыОтчета.ПолноеИмяОбъектаМетаданных].Ресурсы Цикл - ВыбранныеПоля = КомпоновщикНастроек.Настройки.Выбор; + ВыбранныеПоля = НастройкиКД.Выбор; Если ПараметрыОтчета.ИмяТаблицы = "Обороты" Тогда ОтчетыКлиентСервер.ДобавитьВыбранноеПоле(ВыбранныеПоля, Ресурс.Имя + "ОборотДт", Ресурс.Синоним + " " + НСтр("ru = 'оборот Дт'")); ОтчетыКлиентСервер.ДобавитьВыбранноеПоле(ВыбранныеПоля, Ресурс.Имя + "ОборотКт", Ресурс.Синоним + " " + НСтр("ru = 'оборот Кт'")); @@ -896,7 +768,7 @@ Иначе ОбъектМетаданных = Метаданные[ПараметрыОтчета.ТипОбъектаМетаданных][ПараметрыОтчета.ПолноеИмяОбъектаМетаданных].ТабличныеЧасти[ПараметрыОтчета.ИмяТаблицы]; КонецЕсли; - ВыбранныеПоля = КомпоновщикНастроек.Настройки.Выбор; + ВыбранныеПоля = НастройкиКД.Выбор; ОтчетыКлиентСервер.ДобавитьВыбранноеПоле(ВыбранныеПоля, "Ссылка"); Для каждого Реквизит Из ОбъектМетаданных.Реквизиты Цикл ОтчетыКлиентСервер.ДобавитьВыбранноеПоле(ВыбранныеПоля, Реквизит.Имя); @@ -905,13 +777,13 @@ Если ПараметрыОтчета.ИмяТаблицы = "" Тогда ОбъектМетаданных = Метаданные[ПараметрыОтчета.ТипОбъектаМетаданных][ПараметрыОтчета.ПолноеИмяОбъектаМетаданных]; Для каждого Реквизит Из ОбъектМетаданных.Реквизиты Цикл - ВыбранныеПоля = КомпоновщикНастроек.Настройки.Выбор; + ВыбранныеПоля = НастройкиКД.Выбор; ОтчетыКлиентСервер.ДобавитьВыбранноеПоле(ВыбранныеПоля, Реквизит.Имя); КонецЦикла; Иначе ОбъектМетаданных = Метаданные[ПараметрыОтчета.ТипОбъектаМетаданных][ПараметрыОтчета.ПолноеИмяОбъектаМетаданных].СтандартныеТабличныеЧасти[ПараметрыОтчета.ИмяТаблицы]; Для каждого Реквизит Из ОбъектМетаданных.СтандартныеРеквизиты Цикл - ВыбранныеПоля = КомпоновщикНастроек.Настройки.Выбор; + ВыбранныеПоля = НастройкиКД.Выбор; ОтчетыКлиентСервер.ДобавитьВыбранноеПоле(ВыбранныеПоля, Реквизит.Имя); КонецЦикла; КонецЕсли; @@ -919,6 +791,176 @@ КонецПроцедуры +//////////////////////////////////////////////////////////////////////////////// +// Работа с типовой схемой, настраиваемой в пользовательских настройках. + +Функция ПараметрыОтчета(НастройкиКД, ПользовательскиеНастройкиКД) Экспорт + + Результат = Новый Структура("ТипОбъектаМетаданных, ПолноеИмяОбъектаМетаданных, ИмяТаблицы, ОчиститьСтруктуру"); + + // Поиск параметров в настройках. + + ПараметрТипОбъектаМетаданных = Неопределено; + ПараметрПолноеИмяОбъектаМетаданных = Неопределено; + ПараметрИмяТаблицы = Неопределено; + Результат.ОчиститьСтруктуру = Ложь; + + Если НастройкиКД.ДополнительныеСвойства.Свойство("ОтчетИнициализирован") Тогда + Если ТипЗнч(ПользовательскиеНастройкиКД) = Тип("ПользовательскиеНастройкиКомпоновкиДанных") Тогда + Для Каждого ЭлементКД Из ПользовательскиеНастройкиКД.Элементы Цикл + Если ТипЗнч(ЭлементКД) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда + ИмяПараметра = Строка(ЭлементКД.Параметр); + Если ИмяПараметра = "ТипОбъектаМетаданных" Тогда + ПараметрТипОбъектаМетаданных = ЭлементКД; + ИначеЕсли ИмяПараметра = "ПолноеИмяОбъектаМетаданных" Тогда + ПараметрПолноеИмяОбъектаМетаданных = ЭлементКД; + ИначеЕсли ИмяПараметра = "ИмяТаблицы" Тогда + ПараметрИмяТаблицы = ЭлементКД; + КонецЕсли; + КонецЕсли; + КонецЦикла; + КонецЕсли; + + Если ПараметрТипОбъектаМетаданных = Неопределено Тогда + ПараметрТипОбъектаМетаданных = НастройкиКД.ПараметрыДанных.Элементы.Найти("ТипОбъектаМетаданных"); + КонецЕсли; + Если ПараметрПолноеИмяОбъектаМетаданных = Неопределено Тогда + ПараметрПолноеИмяОбъектаМетаданных = НастройкиКД.ПараметрыДанных.Элементы.Найти("ПолноеИмяОбъектаМетаданных"); + КонецЕсли; + Если ПараметрИмяТаблицы = Неопределено Тогда + ПараметрИмяТаблицы = НастройкиКД.ПараметрыДанных.Элементы.Найти("ИмяТаблицы"); + КонецЕсли; + КонецЕсли; + + // Чтение значений параметров. + + Если ПараметрТипОбъектаМетаданных <> Неопределено Тогда + Результат.ТипОбъектаМетаданных = ПараметрТипОбъектаМетаданных.Значение; + КонецЕсли; + Если ПараметрПолноеИмяОбъектаМетаданных <> Неопределено Тогда + Результат.ПолноеИмяОбъектаМетаданных = ПараметрПолноеИмяОбъектаМетаданных.Значение; + КонецЕсли; + Если ПараметрИмяТаблицы <> Неопределено Тогда + Результат.ИмяТаблицы = ПараметрИмяТаблицы.Значение; + КонецЕсли; + + // Заполнение значениями по умолчанию. + + Если Не ЗначениеЗаполнено(Результат.ТипОбъектаМетаданных) Тогда + Результат.ТипОбъектаМетаданных = ТипОбъектаМетаданныхПоУмолчанию(); + Результат.ОчиститьСтруктуру = Истина; + КонецЕсли; + Если Не ЗначениеЗаполнено(Результат.ПолноеИмяОбъектаМетаданных) Тогда + Результат.ПолноеИмяОбъектаМетаданных = ПолноеИмяОбъектаМетаданныхПоУмолчанию(НастройкиКД, Результат.ТипОбъектаМетаданных); + Результат.ОчиститьСтруктуру = Истина; + КонецЕсли; + Если Не ЗначениеЗаполнено(Результат.ИмяТаблицы) Тогда + Результат.ИмяТаблицы = ИмяТаблицыПоУмолчанию(НастройкиКД, Результат.ТипОбъектаМетаданных, Результат.ПолноеИмяОбъектаМетаданных); + КонецЕсли; + + Возврат Результат; + +КонецФункции + +Функция ПолучитьТиповуюСхему(ПараметрыОтчета, НастройкиКД, НовыеПользовательскиеНастройкиКД) Экспорт + + СхемаКД = Отчеты.УниверсальныйОтчет.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); + + ИсточникДанных = СхемаКД.ИсточникиДанных.Добавить(); + ИсточникДанных.Имя = "ИсточникДанных1"; + ИсточникДанных.ТипИсточникаДанных = "Local"; + + НаборДанных = СхемаКД.НаборыДанных.Добавить(Тип("НаборДанныхЗапросСхемыКомпоновкиДанных")); + НаборДанных.Имя = "НаборДанных1"; + НаборДанных.ИсточникДанных = ИсточникДанных.Имя; + + СхемаКД.ПоляИтога.Очистить(); + СхемаКД.НаборыДанных[0].Запрос = ТекстЗапросаПоМетаданным(ПараметрыОтчета); + + ДобавитьПоляНабораДанных(ПараметрыОтчета, СхемаКД); + + // Для справочников и планов видов расчета пользовательский параметр Период не выводится. + Если ПараметрыОтчета.ТипОбъектаМетаданных = "Справочники" + Или ПараметрыОтчета.ТипОбъектаМетаданных = "ПланыВидовРасчета" Тогда + СхемаКД.Параметры.Период.ОграничениеИспользования = Истина; + КонецЕсли; + + ДоступныеТаблицы = ДоступныеТаблицы(НастройкиКД, ПараметрыОтчета.ТипОбъектаМетаданных, ПараметрыОтчета.ПолноеИмяОбъектаМетаданных); + Если ДоступныеТаблицы.Количество() <= 1 Тогда + СхемаКД.Параметры.ИмяТаблицы.ОграничениеИспользования = Истина; + КонецЕсли; + + Возврат СхемаКД; + +КонецФункции + +Процедура НастройкиКДПоУмолчаниюТиповойСхемы(ОтчетОбъект, ПараметрыОтчета, НастройкиКД, НовыеПользовательскиеНастройкиКД) Экспорт + + Если Не НастройкиКД.ДополнительныеСвойства.Свойство("ОтчетИнициализирован") Или (НастройкиКД.ДополнительныеСвойства.Свойство("ОтчетИнициализирован") + И Не НастройкиКД.ДополнительныеСвойства.ОтчетИнициализирован) Тогда + + СхемаКД = ОтчетОбъект.СхемаКомпоновкиДанных; + ОтчетОбъект.КомпоновщикНастроек.ЗагрузитьНастройки(СхемаКД.НастройкиПоУмолчанию); + + НастройкиКД = ОтчетОбъект.КомпоновщикНастроек.Настройки; + + НастройкиКД.Выбор.Элементы.Очистить(); + НастройкиКД.Структура.Очистить(); + + ДобавитьПоказатели(ПараметрыОтчета, НастройкиКД); + ПередКомпоновкойМакета(СхемаКД, НастройкиКД); + + ПараметрОтчета = НастройкиКД.ПараметрыДанных.Элементы.Найти("ТипОбъектаМетаданных"); + ПараметрОтчета.Значение = ПараметрыОтчета.ТипОбъектаМетаданных; + + ПараметрОтчета = НастройкиКД.ПараметрыДанных.Элементы.Найти("ПолноеИмяОбъектаМетаданных"); + ПараметрОтчета.Значение = ПараметрыОтчета.ПолноеИмяОбъектаМетаданных; + + ПараметрОтчета = НастройкиКД.ПараметрыДанных.Элементы.Найти("ИмяТаблицы"); + ПараметрОтчета.Значение = ПараметрыОтчета.ИмяТаблицы; + + НастройкиКД.ДополнительныеСвойства.Вставить("ОтчетИнициализирован", Истина); + + КонецЕсли; + +КонецПроцедуры + +//////////////////////////////////////////////////////////////////////////////// +// Работа с произвольной схемой из файла. + +Функция ИзвлечьСхемуИзДвоичныхДанных(ЗагруженнаяСхема) Экспорт + + ПолноеИмяФайла = ПолучитьИмяВременногоФайла(); + ЗагруженнаяСхема.Записать(ПолноеИмяФайла); + ЧтениеXML = Новый ЧтениеXML; + ЧтениеXML.ОткрытьФайл(ПолноеИмяФайла); + СхемаКД = СериализаторXDTO.ПрочитатьXML(ЧтениеXML, Тип("СхемаКомпоновкиДанных")); + ЧтениеXML.Закрыть(); + ЧтениеXML = Неопределено; + УдалитьФайлы(ПолноеИмяФайла); + + Если СхемаКД.НастройкиПоУмолчанию.ДополнительныеСвойства.Свойство("СхемаКомпоновкиДанных") Тогда + СхемаКД.НастройкиПоУмолчанию.ДополнительныеСвойства.СхемаКомпоновкиДанных = Неопределено; + КонецЕсли; + + Возврат СхемаКД; + +КонецФункции + +Процедура НастройкиКДПоУмолчаниюЗагруженнойСхемы(ОтчетОбъект, ЗагруженнаяСхема, НастройкиКД, НовыеПользовательскиеНастройкиКД) Экспорт + + Если Не НастройкиКД.ДополнительныеСвойства.Свойство("ОтчетИнициализирован") Или (НастройкиКД.ДополнительныеСвойства.Свойство("ОтчетИнициализирован") + И Не НастройкиКД.ДополнительныеСвойства.ОтчетИнициализирован) Тогда + + СхемаКД = ОтчетОбъект.СхемаКомпоновкиДанных; + + НастройкиКД = СхемаКД.НастройкиПоУмолчанию; + НастройкиКД.ДополнительныеСвойства.Вставить("СхемаКомпоновкиДанных", ЗагруженнаяСхема); + НастройкиКД.ДополнительныеСвойства.Вставить("ОтчетИнициализирован", Истина); + КонецЕсли; + +КонецПроцедуры + #КонецОбласти #КонецЕсли \ No newline at end of file diff --git a/SSL/src/Reports/УниверсальныйОтчет/ObjectModule.bsl b/SSL/src/Reports/УниверсальныйОтчет/ObjectModule.bsl index 96d2028a6..7d267894a 100644 --- a/SSL/src/Reports/УниверсальныйОтчет/ObjectModule.bsl +++ b/SSL/src/Reports/УниверсальныйОтчет/ObjectModule.bsl @@ -180,8 +180,9 @@ // Процедура ОпределитьНастройкиФормы(Форма, КлючВарианта, Настройки) Экспорт - Настройки.События.ПередЗаполнениемПанелиБыстрыхНастроек = Истина; - Настройки.События.ПриОпределенииПараметровВыбора = Истина; + Настройки.События.ПередЗагрузкойВариантаНаСервере = Истина; + Настройки.События.ПриОпределенииПараметровВыбора = Истина; + Настройки.События.ПередЗагрузкойНастроекВКомпоновщик = Истина; КонецПроцедуры @@ -218,51 +219,183 @@ СвойстваНастройки.ЗначенияДляВыбора = Отчеты.УниверсальныйОтчет.ДоступныеТипыОбъектовМетаданных(); ИначеЕсли ИмяПараметра = "ПараметрыДанных.ПолноеИмяОбъектаМетаданных" Тогда СвойстваНастройки.ОграничиватьВыборУказаннымиЗначениями = Истина; - СвойстваНастройки.ЗначенияДляВыбора = Отчеты.УниверсальныйОтчет.ДоступныеОбъектыМетаданных(КомпоновщикНастроек); + СвойстваНастройки.ЗначенияДляВыбора = Отчеты.УниверсальныйОтчет.ДоступныеОбъектыМетаданных(КомпоновщикНастроек.Настройки); ИначеЕсли ИмяПараметра = "ПараметрыДанных.ИмяТаблицы" Тогда СвойстваНастройки.ОграничиватьВыборУказаннымиЗначениями = Истина; - СвойстваНастройки.ЗначенияДляВыбора = Отчеты.УниверсальныйОтчет.ДоступныеТаблицы(КомпоновщикНастроек); + СвойстваНастройки.ЗначенияДляВыбора = Отчеты.УниверсальныйОтчет.ДоступныеТаблицы(КомпоновщикНастроек.Настройки); КонецЕсли; КонецЕсли; КонецПроцедуры -Процедура ПередЗаполнениемПанелиБыстрыхНастроек(Форма, ПараметрыЗаполнения) Экспорт +// Вызывается в обработчике одноименного события формы отчета после выполнения кода формы. +// +// Параметры: +// Форма - УправляемаяФорма - Форма отчета. +// НовыеНастройкиКД - НастройкиКомпоновкиДанных - Настройки для загрузки в компоновщик настроек. +// +// См. также: +// "Расширение управляемой формы для отчета.ПередЗагрузкойВариантаНаСервере" в синтакс-помощнике. +// +Процедура ПередЗагрузкойВариантаНаСервере(Форма, НовыеНастройкиКД) Экспорт + // Для платформы + НовыйКлючСхемы = Неопределено; + НоваяСхема = Неопределено; - Если Форма.ИмяФормы <> "Отчет.УниверсальныйОтчет.Форма.ФормаОтчета" Тогда - Возврат; + ЭтоЗагруженнаяСхема = Ложь; + + Если ТипЗнч(НовыеНастройкиКД) = Тип("НастройкиКомпоновкиДанных") Или НовыеНастройкиКД = Неопределено Тогда + Если НовыеНастройкиКД = Неопределено Тогда + ДопСвойстваНастроек = ЭтотОбъект.КомпоновщикНастроек.Настройки.ДополнительныеСвойства; + Иначе + ДопСвойстваНастроек = НовыеНастройкиКД.ДополнительныеСвойства; + КонецЕсли; + ЗагруженнаяСхема = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ДопСвойстваНастроек, "СхемаКомпоновкиДанных"); + Если ТипЗнч(ЗагруженнаяСхема) = Тип("ДвоичныеДанные") Тогда + ЭтоЗагруженнаяСхема = Истина; + НовыйКлючСхемы = ХешДвоичныхДанных(ЗагруженнаяСхема); + НоваяСхема = Отчеты.УниверсальныйОтчет.ИзвлечьСхемуИзДвоичныхДанных(ЗагруженнаяСхема); + КонецЕсли; КонецЕсли; - НастройкиПоУмолчанию = Неопределено; - - ЭтоЗагруженнаяСхема = Форма.Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Свойство("СхемаКомпоновкиДанных"); - - Если Форма.Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.Свойство("ОтчетИнициализирован") Тогда - ОтчетИнициализирован = Форма.Отчет.КомпоновщикНастроек.Настройки.ДополнительныеСвойства.ОтчетИнициализирован; - Иначе - НастройкиПоУмолчанию = Новый Структура; - ТипОбъектаМетаданных = Отчеты.УниверсальныйОтчет.ТипОбъектаМетаданныхПоУмолчанию(); - НастройкиПоУмолчанию.Вставить("ТипОбъектаМетаданных", ТипОбъектаМетаданных); - НастройкиПоУмолчанию.Вставить("ПолноеИмяОбъектаМетаданных", Отчеты.УниверсальныйОтчет.ПолноеИмяОбъектаМетаданныхПоУмолчанию(Форма.Отчет.КомпоновщикНастроек, ТипОбъектаМетаданных)); - НастройкиПоУмолчанию.Вставить("ИмяТаблицы", Отчеты.УниверсальныйОтчет.ИмяТаблицыПоУмолчанию(Форма.Отчет.КомпоновщикНастроек, ТипОбъектаМетаданных, НастройкиПоУмолчанию.ПолноеИмяОбъектаМетаданных)); - ОтчетИнициализирован = Ложь; + Если ЭтоЗагруженнаяСхема Тогда + КлючСхемы = НовыйКлючСхемы; + ОтчетыСервер.ПодключитьСхему(ЭтотОбъект, Форма, НоваяСхема, КлючСхемы); КонецЕсли; - Форма.НастройкиОтчета.АдресСхемы = - Отчеты.УниверсальныйОтчет.ИнициализироватьОтчет(Форма.Отчет.КомпоновщикНастроек, Не ОтчетИнициализирован, Форма.УникальныйИдентификатор,,НастройкиПоУмолчанию); - КонецПроцедуры -Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) +// Вызывается перед загрузкой новых настроек. Используется для изменения схемы компоновки. +// Например, если схема отчета зависит от ключа варианта или параметров отчета. +// Чтобы изменения схемы вступили в силу следует вызывать метод ОтчетыСервер.ПодключитьСхему(). +// +// Параметры: +// Контекст - Произвольный - +// Параметры контекста, в котором используется отчет. +// Используется для передачи в параметрах метода ОтчетыСервер.ПодключитьСхему(). +// КлючСхемы - Строка - +// Идентификатор текущей схемы компоновщика настроек. +// По умолчанию не заполнен (это означает что компоновщик инициализирован на основании основной схемы). +// Используется для оптимизации, чтобы переинициализировать компоновщик как можно реже). +// Может не использоваться если переинициализация выполняется безусловно. +// КлючВарианта - Строка, Неопределено - +// Имя предопределенного или уникальный идентификатор пользовательского варианта отчета. +// Неопределено когда вызов для варианта расшифровки или без контекста. +// НовыеНастройкиКД - НастройкиКомпоновкиДанных, Неопределено - +// Настройки варианта отчета, которые будут загружены в компоновщик настроек после его инициализации. +// Неопределено когда настройки варианта не надо загружать (уже загружены ранее). +// НовыеПользовательскиеНастройкиКД - ПользовательскиеНастройкиКомпоновкиДанных, Неопределено - +// Пользовательские настройки, которые будут загружены в компоновщик настроек после его инициализации. +// Неопределено когда пользовательские настройки не надо загружать (уже загружены ранее). +// +// Примеры: +// 1. Компоновщик отчета инициализируется на основании схемы из общих макетов: +// Если КлючСхемы <> "1" Тогда +// КлючСхемы = "1"; +// СхемаКД = ПолучитьОбщийМакет("МояОбщаяСхемаКомпоновки"); +// ОтчетыСервер.ПодключитьСхему(ЭтотОбъект, Контекст, СхемаКД, КлючСхемы); +// КонецЕсли; +// +// 2. Схема зависит от значения параметра, выведенного в пользовательские настройки отчета: +// Если ТипЗнч(НовыеПользовательскиеНастройкиКД) = Тип("ПользовательскиеНастройкиКомпоновкиДанных") Тогда +// ПолноеИмяОбъектаМетаданных = ""; +// Для Каждого ЭлементКД Из НовыеПользовательскиеНастройкиКД.Элементы Цикл +// Если ТипЗнч(ЭлементКД) = Тип("ЗначениеПараметраНастроекКомпоновкиДанных") Тогда +// ИмяПараметра = Строка(ЭлементКД.Параметр); +// Если ИмяПараметра = "ОбъектМетаданных" Тогда +// ПолноеИмяОбъектаМетаданных = ЭлементКД.Значение; +// КонецЕсли; +// КонецЕсли; +// КонецЦикла; +// Если КлючСхемы <> ПолноеИмяОбъектаМетаданных Тогда +// КлючСхемы = ПолноеИмяОбъектаМетаданных; +// СхемаКД = Новый СхемаКомпоновкиДанных; +// // Наполнение схемы... +// ОтчетыСервер.ПодключитьСхему(ЭтотОбъект, Контекст, СхемаКД, КлючСхемы); +// КонецЕсли; +// КонецЕсли; +// +Процедура ПередЗагрузкойНастроекВКомпоновщик(Контекст, КлючСхемы, КлючВарианта, НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД) Экспорт + НовыйКлючСхемы = Неопределено; + НоваяСхема = Неопределено; - ОтчетИнициализирован = КомпоновщикНастроек.Настройки.ДополнительныеСвойства.ОтчетИнициализирован; + ЭтоЗагруженнаяСхема = Ложь; - АдресСхемы = Отчеты.УниверсальныйОтчет.ИнициализироватьОтчет(КомпоновщикНастроек, Не ОтчетИнициализирован); + Если ТипЗнч(НовыеНастройкиКД) = Тип("НастройкиКомпоновкиДанных") Или НовыеНастройкиКД = Неопределено Тогда + Если НовыеНастройкиКД = Неопределено Тогда + ДопСвойстваНастроек = ЭтотОбъект.КомпоновщикНастроек.Настройки.ДополнительныеСвойства; + Иначе + ДопСвойстваНастроек = НовыеНастройкиКД.ДополнительныеСвойства; + КонецЕсли; + ЗагруженнаяСхема = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ДопСвойстваНастроек, "СхемаКомпоновкиДанных"); + Если ТипЗнч(ЗагруженнаяСхема) = Тип("ДвоичныеДанные") Тогда + ЭтоЗагруженнаяСхема = Истина; + НовыйКлючСхемы = ХешДвоичныхДанных(ЗагруженнаяСхема); + Если НовыйКлючСхемы <> КлючСхемы Тогда + НоваяСхема = Отчеты.УниверсальныйОтчет.ИзвлечьСхемуИзДвоичныхДанных(ЗагруженнаяСхема); + КонецЕсли; + КонецЕсли; + КонецЕсли; - СхемаКомпоновкиДанных = ПолучитьИзВременногоХранилища(АдресСхемы); + Если НовыйКлючСхемы = Неопределено Тогда// Не загруженная схема. + + Если ТипЗнч(НовыеНастройкиКД) = Тип("НастройкиКомпоновкиДанных") Тогда + НастройкиКД = НовыеНастройкиКД; + Иначе + НастройкиКД = КомпоновщикНастроек.Настройки; + КонецЕсли; + + ПараметрыОтчета = Отчеты.УниверсальныйОтчет.ПараметрыОтчета(НастройкиКД, НовыеПользовательскиеНастройкиКД); + + НовыйКлючСхемы = ПараметрыОтчета.ТипОбъектаМетаданных + + "/" + ПараметрыОтчета.ПолноеИмяОбъектаМетаданных + + "/" + ПараметрыОтчета.ИмяТаблицы; + НовыйКлючСхемы = СтрХеш(НовыйКлючСхемы, 100); + + Если НовыйКлючСхемы <> КлючСхемы Или ПараметрыОтчета.ОчиститьСтруктуру Тогда + КлючСхемы = ""; + НоваяСхема = Отчеты.УниверсальныйОтчет.ПолучитьТиповуюСхему(ПараметрыОтчета, НастройкиКД, НовыеПользовательскиеНастройкиКД); + КонецЕсли; + + КонецЕсли; + + Если НовыйКлючСхемы <> Неопределено И КлючСхемы <> НовыйКлючСхемы Тогда + КлючСхемы = НовыйКлючСхемы; + ОтчетыСервер.ПодключитьСхему(ЭтотОбъект, Контекст, НоваяСхема, КлючСхемы); + Если ЭтоЗагруженнаяСхема Тогда + Отчеты.УниверсальныйОтчет.НастройкиКДПоУмолчаниюЗагруженнойСхемы(ЭтотОбъект, ЗагруженнаяСхема, НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД); + Иначе + Отчеты.УниверсальныйОтчет.НастройкиКДПоУмолчаниюТиповойСхемы(ЭтотОбъект, ПараметрыОтчета, НовыеНастройкиКД, НовыеПользовательскиеНастройкиКД); + КонецЕсли; + КонецЕсли; КонецПроцедуры #КонецОбласти +#Область СлужебныеПроцедурыИФункции + +Функция СтрХеш(Знач Строка, ДопустимаяДлина) + Если СтрДлина(Строка) <= ДопустимаяДлина Тогда + Возврат Строка; + Иначе + ХешированиеДанных = Новый ХешированиеДанных(ХешФункция.MD5); + ХешированиеДанных.Добавить(Строка); + Возврат Лев(Строка, ДопустимаяДлина-32) + СтрЗаменить(ХешированиеДанных.ХешСумма, " ", ""); + КонецЕсли; +КонецФункции + +// Возвращает хеш-сумму двоичных данных. +// +// Параметры: +// ДвоичныеДанные - ДвоичныеДанные - Данные, от которых считается хеш-сумма. +// +Функция ХешДвоичныхДанных(ДвоичныеДанные) + ХешированиеДанных = Новый ХешированиеДанных(ХешФункция.MD5); + ХешированиеДанных.Добавить(ДвоичныеДанные); + Возврат СтрЗаменить(ХешированиеДанных.ХешСумма, " ", "") + "_" + Формат(ДвоичныеДанные.Размер(), "ЧГ="); +КонецФункции + +#КонецОбласти + #КонецЕсли diff --git a/SSL/src/Reports/УниверсальныйОтчет/УниверсальныйОтчет.mdo b/SSL/src/Reports/УниверсальныйОтчет/УниверсальныйОтчет.mdo index cb1682ba7..3ea1fafa3 100644 --- a/SSL/src/Reports/УниверсальныйОтчет/УниверсальныйОтчет.mdo +++ b/SSL/src/Reports/УниверсальныйОтчет/УниверсальныйОтчет.mdo @@ -12,37 +12,14 @@ true Report.УниверсальныйОтчет.Form.ФормаОтчета Report.УниверсальныйОтчет.Template.ОсновнаяСхемаКомпоновкиДанных - Report.УниверсальныйОтчет.Form.ФормаНастроекОтчета - Report.УниверсальныйОтчет.Form.ФормаВариантаОтчета + CommonForm.ФормаНастроекОтчета + CommonForm.ФормаВариантаОтчета SettingsStorage.ХранилищеВариантовОтчетов ru - - ФормаВариантаОтчета - - ru - Форма варианта отчета - - PersonalComputer - MobileDevice - - - ФормаНастроекОтчета - - ru - Форма настроек отчета - - - - ru - - - PersonalComputer - MobileDevice - ФормаОтчета diff --git a/SSL/src/Roles/АдминистраторСистемы/Rights.rights b/SSL/src/Roles/АдминистраторСистемы/Rights.rights index 313baa2c4..ba1a33da3 100644 --- a/SSL/src/Roles/АдминистраторСистемы/Rights.rights +++ b/SSL/src/Roles/АдминистраторСистемы/Rights.rights @@ -3,17 +3,6 @@ false true false - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - Constant.МаксимальнаяДлительностьВыполненияИсполняющегоФоновогоЗадания @@ -310,6 +299,25 @@ true + + Constant.ПериодХраненияЗамеров + + Read + true + + + Update + true + + + View + true + + + Edit + true + + CommonForm.УстановкаВедущейКонечнойТочки @@ -354,53 +362,6 @@ true - - Catalog.СообщенияОбластейДанных - - Read - true - - - Insert - true - - - Update - true - - - Delete - true - - - View - true - - - InteractiveInsert - true - - - Edit - true - - - InteractiveSetDeletionMark - true - - - InteractiveClearDeletionMark - true - - - InteractiveDeleteMarked - true - - - InputByString - true - - InformationRegister.ДомаЗданияСтроения @@ -477,50 +438,6 @@ true - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - Constant.ИспользоватьСинхронизациюДанныхВЛокальномРежиме @@ -596,6 +513,25 @@ true + + Constant.ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков + + Read + true + + + Update + true + + + View + true + + + Edit + true + + Constant.ПрофильБезопасностиИнформационнойБазы @@ -646,18 +582,33 @@ - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника + CommonForm.НастройкаДоступаКСервисуMorpher View - false - - - Edit - false + true - InformationRegister.ЗамерыВремениТехнологические + Constant.ПараметрыПодключаемыхКоманд + + Read + true + + + Update + true + + + View + true + + + Edit + true + + + + InformationRegister.УдалитьЗамерыВремениТехнологические Read true @@ -679,93 +630,6 @@ true - - Configuration.БиблиотекаСтандартныхПодсистем - - Administration - true - - - DataAdministration - true - - - UpdateDataBaseConfiguration - true - - - ExclusiveMode - true - - - ActiveUsers - true - - - EventLog - true - - - ThinClient - true - - - WebClient - true - - - ThickClient - true - - - ExternalConnection - true - - - Automation - true - - - TechnicalSpecialistMode - true - - - MainWindowModeNormal - true - - - MainWindowModeWorkplace - true - - - MainWindowModeEmbeddedWorkplace - true - - - MainWindowModeFullscreenWorkplace - true - - - MainWindowModeKiosk - true - - - AnalyticsSystemClient - true - - - SaveUserData - true - - - ConfigurationExtensionsAdministration - true - - - Output - true - - Constant.ИспользоватьСинхронизациюДанныхВМоделиСервиса @@ -831,17 +695,6 @@ true - - InformationRegister.БезопасноеХранилищеДанныхОбластейДанных.Dimension.Владелец - - View - false - - - Edit - false - - Catalog.КлассификаторБанковРФ.Command.ЗагрузкаКлассификатораБанковРФ @@ -964,17 +817,6 @@ true - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - Catalog.СценарииОбменовДанными @@ -1389,17 +1231,6 @@ true - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - Constant.ЗагрузитьСообщениеОбменаДанными @@ -1438,17 +1269,6 @@ true - - InformationRegister.БезопасноеХранилищеДанныхОбластейДанных.Resource.Данные - - View - false - - - Edit - false - - InformationRegister.НастройкиОтправителя @@ -1529,17 +1349,6 @@ true - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - InformationRegister.ОбластиДанных @@ -1564,7 +1373,7 @@ - InformationRegister.АдресныеОбъекты.Command.АвторизацияНаСайтеПоддержки + InformationRegister.АдресныеОбъекты.Command.ПодключитьИнтернетПоддержку View true @@ -1612,6 +1421,25 @@ true + + Constant.КоличествоЗамеровВПакетеЭкспорта + + Read + true + + + Update + true + + + View + true + + + Edit + true + + Constant.ПараметрыРаботыПользователей @@ -1631,17 +1459,6 @@ true - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - Constant.КаталогОбменаФайламиВМоделиСервисаLinux @@ -1661,17 +1478,6 @@ true - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - InformationRegister.ОчередьИзвлеченияТекста @@ -1748,50 +1554,6 @@ true - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - InformationRegister.ПакетыИнформацииПриЗапуске @@ -2035,81 +1797,97 @@ - InformationRegister.СостоянияКонтрагентов - - Read - true - - - Update - true - + DataProcessor.ОценкаПроизводительности.Command.ЭкспортЗамеровПроизводительности View true + + + Configuration.БиблиотекаСтандартныхПодсистем - Edit + Administration true - TotalsControl + DataAdministration true - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - View - false + UpdateDataBaseConfiguration + true - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false + ExclusiveMode + true - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false + ActiveUsers + true - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false + EventLog + true - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false + ThinClient + true - Edit - false + WebClient + true + + + ThickClient + true + + + ExternalConnection + true + + + Automation + true + + + TechnicalSpecialistMode + true + + + MainWindowModeNormal + true + + + MainWindowModeWorkplace + true + + + MainWindowModeEmbeddedWorkplace + true + + + MainWindowModeFullscreenWorkplace + true + + + MainWindowModeKiosk + true + + + AnalyticsSystemClient + true + + + SaveUserData + true + + + ConfigurationExtensionsAdministration + true + + + Output + true @@ -2131,17 +1909,6 @@ true - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - InformationRegister.УдалитьОчередьИзвлеченияТекста @@ -2165,61 +1932,6 @@ true - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанныхОбластейДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанныхОбластейДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанныхОбластейДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанныхОбластейДанных.StandardAttribute.Period - - View - false - - - Edit - false - - Constant.ПрефиксОбластиДанных @@ -2240,49 +1952,25 @@ - Catalog.ДополнительныеОтчетыИОбработки + InformationRegister.ЗамерыВремени Read true - - Insert - true - Update true - - Delete - true - View true - - InteractiveInsert - true - Edit true - InteractiveSetDeletionMark - true - - - InteractiveClearDeletionMark - true - - - InteractiveDeleteMarked - true - - - InputByString + TotalsControl true @@ -2324,6 +2012,25 @@ true + + Constant.ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют + + Read + true + + + Update + true + + + View + true + + + Edit + true + + DataProcessor.РезервноеКопированиеИБ @@ -2472,28 +2179,6 @@ true - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ОбъектНазначения - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - Catalog.ПредопределенныеВариантыОтчетов @@ -2617,17 +2302,6 @@ true - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - Constant.УдалитьИмяСлужебногоПользователяМенеджераСервиса @@ -2708,17 +2382,6 @@ true - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - InformationRegister.ПравилаДляОбменаДанными @@ -2942,7 +2605,7 @@ - InformationRegister.ЗамерыВремени + InformationRegister.УдалитьЗамерыВремени2 Read true @@ -2994,17 +2657,6 @@ true - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - CommonCommand.ОтчетыОбъекта @@ -3031,25 +2683,6 @@ true - - Constant.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций - - Read - true - - - Update - true - - - View - true - - - Edit - true - - Constant.СообщениеОбменаДаннымиИзГлавногоУзла @@ -3111,6 +2744,29 @@ true + + InformationRegister.ЗамерыВремениТехнологические + + Read + true + + + Update + true + + + View + true + + + Edit + true + + + TotalsControl + true + + Constant.ИспользоватьРазделениеПоОбластямДанных @@ -3169,7 +2825,7 @@ - CommonForm.УстановленныеРасширения + CommonForm.Расширения View true @@ -3229,17 +2885,6 @@ true - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - InformationRegister.УдалитьОбластиДанных @@ -3396,29 +3041,6 @@ true - - InformationRegister.ВерсииПодсистемОбластейДанных - - Read - true - - - Update - true - - - View - true - - - Edit - true - - - TotalsControl - true - - SessionParameter.ПараметрыКлиентаНаСервере @@ -3444,17 +3066,6 @@ true - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - Constant.КоличествоЭлементовВТранзакцииЗагрузкиДанных @@ -3676,53 +3287,6 @@ true - - Catalog.ОчередьЗаданийОбластейДанных - - Read - true - - - Insert - true - - - Update - true - - - Delete - true - - - View - true - - - InteractiveInsert - true - - - Edit - true - - - InteractiveSetDeletionMark - true - - - InteractiveClearDeletionMark - true - - - InteractiveDeleteMarked - true - - - InputByString - true - - Constant.ПовторитьЗагрузкуСообщенияОбменаДаннымиПередЗапуском @@ -4036,29 +3600,6 @@ true - - InformationRegister.БлокировкиСеансовОбластейДанных - - Read - true - - - Update - true - - - View - true - - - Edit - true - - - TotalsControl - true - - CommonForm.ПодключениеКонечнойТочки diff --git a/SSL/src/Roles/БазовыеПрава/Rights.rights b/SSL/src/Roles/БазовыеПрава/Rights.rights index b62467485..f1769db32 100644 --- a/SSL/src/Roles/БазовыеПрава/Rights.rights +++ b/SSL/src/Roles/БазовыеПрава/Rights.rights @@ -3,13 +3,6 @@ false true false - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - Edit - false - - Constant.МаксимальнаяДлительностьВыполненияИсполняющегоФоновогоЗадания @@ -21,17 +14,6 @@ true - - Constant.УдалитьАлгоритмШифрования - - Read - true - - - View - true - - SessionParameter.ОбластьДанныхИспользование @@ -65,14 +47,14 @@ - Catalog.Заметки.Attribute.Автор + Constant.ИспользоватьШаблоныСообщений - View - false + Read + true - Edit - false + View + true @@ -97,17 +79,6 @@ true - - Catalog.Заметки.Attribute.Предмет - - View - false - - - Edit - false - - Catalog.НаборыДополнительныхРеквизитовИСведений @@ -116,59 +87,23 @@ - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined + Catalog.ВариантыОтчетов - Edit - false + Read + true + + ВариантыОтчетов ГДЕ (ВариантыОтчетов.Пользовательский = ЛОЖЬ + ИЛИ ВариантыОтчетов.ТолькоДляАвтора = ЛОЖЬ + ИЛИ ВариантыОтчетов.Автор = &ТекущийПользователь) + - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - Edit - false + View + true - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - Edit - false + InputByString + true @@ -177,10 +112,6 @@ Read true - - View - true - Constant.ДатаУведомленияОНовыхЗадачах @@ -248,13 +179,6 @@ true - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - Edit - false - - Constant.НастройкиПодчиненногоУзлаРИБ @@ -266,17 +190,6 @@ true - - InformationRegister.НапоминанияПользователя.Resource.СрокНапоминания - - View - false - - - Edit - false - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения @@ -299,62 +212,6 @@ true - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - Edit - false - - Constant.ВерсияДатЗапретаИзменения @@ -366,17 +223,6 @@ true - - InformationRegister.НапоминанияПользователя.Attribute.ИнтервалВремениНапоминания - - View - false - - - Edit - false - - Constant.НастройкаПроксиСервера @@ -416,10 +262,6 @@ Read true - - View - true - CommonForm.ПанельОтчетов @@ -435,20 +277,6 @@ true - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - Edit - false - - DataProcessor.НерекомендуемаяВерсияПлатформы @@ -461,10 +289,39 @@ - InformationRegister.ОриентирыАдресныхОбъектов.Dimension.КодСубъектаРФ + Catalog.ШаблоныСообщенийПрисоединенныеФайлы - Edit - false + Read + true + + #ПоЗначениямРасширенный( "Справочник.ШаблоныСообщенийПрисоединенныеФайлы", "","", +"", +"", +"Пользователи", "Т.ВладелецФайла.Автор", "ИЛИ", +"Условие","НЕ ЕСТЬNULL(Т.ВладелецФайла.ТолькоДляАвтора, Истина)", "", "", "", "", "","", "", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","") + + + + Insert + true + + #ПоЗначениямРасширенный( "Справочник.ШаблоныСообщенийПрисоединенныеФайлы", "","", +"", +"", +"Пользователи", "Т.ВладелецФайла.Автор", "ИЛИ", +"Условие","НЕ ЕСТЬNULL(Т.ВладелецФайла.ТолькоДляАвтора, Истина)", "", "", "", "", "","", "", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","") + + + + Update + true + + #ПоЗначениямРасширенный( "Справочник.ШаблоныСообщенийПрисоединенныеФайлы", "","", +"", +"", +"Пользователи", "Т.ВладелецФайла.Автор", "ИЛИ", +"Условие","НЕ ЕСТЬNULL(Т.ВладелецФайла.ТолькоДляАвтора, Истина)", "", "", "", "", "","", "", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","") + @@ -478,6 +335,66 @@ true + + Catalog.ШаблоныСообщений + + Read + true + + #ПоЗначениямРасширенный( "Справочник.ШаблоныСообщений", "","", +"", +"", +"Пользователи", "Т.Автор", "ИЛИ", +"Условие","НЕ Т.ТолькоДляАвтора", "", "", "", "", "","", "", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","") + + + + Insert + true + + #ПоЗначениямРасширенный( "Справочник.ШаблоныСообщений", "","", +"", +"", +"Пользователи", "Т.Автор", "ИЛИ", +"Условие","НЕ Т.ТолькоДляАвтора", "", "", "", "", "","", "", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","") + + + + Update + true + + #ПоЗначениямРасширенный( "Справочник.ШаблоныСообщений", "","", +"", +"", +"Пользователи", "Т.Автор", "ИЛИ", +"Условие","НЕ Т.ТолькоДляАвтора", "", "", "", "", "","", "", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","", "","","") + + + + View + true + + + InteractiveInsert + true + + + Edit + true + + + InteractiveSetDeletionMark + true + + + InteractiveClearDeletionMark + true + + + InputByString + true + + SessionParameter.ТекущийПользователь @@ -510,17 +427,6 @@ true - - InformationRegister.УдалитьВерсииПодсистем.Dimension.ИмяПодсистемы - - View - false - - - Edit - false - - Constant.ВерсияКлассификатораБанковРФ @@ -543,13 +449,6 @@ true - - Catalog.ГруппыПользователей.Attribute.Комментарий - - Edit - false - - Constant.ИспользоватьПроверкуКонтрагентов @@ -562,10 +461,10 @@ - Catalog.ВидыКонтактнойИнформации.Attribute.Тип + Catalog.ВариантыОтчетов.Command.Открыть - Edit - false + View + true @@ -580,10 +479,25 @@ - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка + InformationRegister.ПредопределенныеВариантыОтчетовВерсийРасширений - Edit - false + Read + true + + + View + true + + + + Constant.ПараметрыПодключаемыхКоманд + + Read + true + + + View + true @@ -608,17 +522,6 @@ true - - InformationRegister.НапоминанияПользователя.Attribute.ИмяРеквизитаИсточника - - View - false - - - Edit - false - - InformationRegister.НастройкиСинхронизацииФайлов @@ -626,13 +529,6 @@ true - - InformationRegister.ОриентирыАдресныхОбъектов.Resource.Дополнительно - - Edit - false - - CommonForm.ЗаполнениеРеквизитовКонтрагента @@ -669,94 +565,6 @@ true - - Catalog.Заметки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Code - - View - false - - - Edit - false - - CommonForm.ВыборУзловПлановОбмена @@ -764,39 +572,6 @@ true - - Constant.УдалитьТипПровайдераЭП - - Read - true - - - View - true - - - - InformationRegister.УдалитьВерсииПодсистем.Resource.Версия - - View - false - - - Edit - false - - - - Constant.НеИспользоватьНесколькоОрганизаций - - Read - true - - - View - true - - Constant.НастройкиВыполненияРегламентныхЗаданий @@ -809,17 +584,17 @@ - CommonForm.ПредупрежденияПриЗавершенииРаботы + Catalog.ПредопределенныеВариантыОтчетовРасширений - View + Read true - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства + CommonForm.ПредупрежденияПриЗавершенииРаботы - Edit - false + View + true @@ -860,14 +635,10 @@ - InformationRegister.НапоминанияПользователя.Attribute.Описание + CommonForm.ПредупреждениеБезопасности View - false - - - Edit - false + true @@ -906,13 +677,6 @@ true - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - Edit - false - - Constant.СписокЗапрещенныхРасширенийОбластиДанных @@ -957,16 +721,19 @@ true + + CommonCommand.ОтправитьПисьмо + + View + true + + InformationRegister.ПричиныИзмененияАдресныхСведений Read true - - View - true - InformationRegister.СтатусыСинхронизацииФайловСОблачнымСервисом @@ -997,17 +764,6 @@ true - - InformationRegister.НапоминанияПользователя.Dimension.Источник - - View - false - - - Edit - false - - Constant.ИспользоватьВерсионированиеОбъектов @@ -1041,17 +797,6 @@ true - - Catalog.Заметки.Attribute.ДатаИзменения - - View - false - - - Edit - false - - DataProcessor.ЗагрузкаДанныхИзФайла @@ -1063,6 +808,13 @@ true + + CommonCommand.ПредупрежденияПриЗавершенииРаботы + + View + true + + Constant.СписокРасширенийТекстовыхФайлов @@ -1223,17 +975,6 @@ true - - Catalog.Заметки.Attribute.ДляРабочегоСтола - - View - false - - - Edit - false - - InformationRegister.ВерсииПодсистем @@ -1241,6 +982,24 @@ true + + Catalog.ПользовательскиеНастройкиОтчетов + + Read + true + + ГДЕ Пользователь = &ТекущийПользователь + + + + View + true + + + InputByString + true + + SessionParameter.АвторизованныйПользователь @@ -1248,6 +1007,13 @@ true + + CommonCommand.ОтправитьSMS + + View + true + + CommonForm.ФормаНастроекОтчета @@ -1262,50 +1028,6 @@ true - - InformationRegister.УдалитьВерсииПодсистем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьВерсииПодсистем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьВерсииПодсистем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьВерсииПодсистем.StandardAttribute.Period - - View - false - - - Edit - false - - Constant.ОтложенноеОбновлениеЗавершеноУспешно @@ -1328,24 +1050,6 @@ true - - Constant.УдалитьАлгоритмПодписи - - Read - true - - - View - true - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - Edit - false - - Constant.ИспользоватьДополнительныеРеквизитыИСведения @@ -1357,13 +1061,6 @@ true - - CommonForm.АвторизацияНаСайтеПоддержкиПользователей - - View - true - - Constant.ПараметрыРаботыПользователей @@ -1408,13 +1105,6 @@ true - - CommonForm.ВыборПроизвольногоПериода - - View - true - - CommonForm.ВыборФорматаВложений @@ -1433,17 +1123,6 @@ true - - Catalog.Заметки.Attribute.Содержание - - View - false - - - Edit - false - - DataProcessor.ПолнотекстовыйПоискВДанных @@ -1504,10 +1183,6 @@ Read true - - View - true - InformationRegister.ОриентирыАдресныхОбъектов @@ -1515,38 +1190,6 @@ Read true - - View - true - - - - InformationRegister.ОриентирыАдресныхОбъектов.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.StandardAttribute.Period - - Edit - false - CommonForm.ПраваДоступа @@ -1617,34 +1260,6 @@ true - - InformationRegister.СостоянияКонтрагентов.StandardAttribute.Active - - Edit - false - - - - InformationRegister.СостоянияКонтрагентов.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.СостоянияКонтрагентов.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.СостоянияКонтрагентов.StandardAttribute.Period - - Edit - false - - Catalog.ВидыКонтактнойИнформации @@ -1660,62 +1275,6 @@ true - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - Edit - false - - Catalog.СтраныМира @@ -1731,13 +1290,6 @@ true - - InformationRegister.ОриентирыАдресныхОбъектов.Resource.ПочтовыйИндекс - - Edit - false - - Constant.СоздаватьЭлектронныеПодписиНаСервере @@ -1760,20 +1312,6 @@ true - - InformationRegister.ОриентирыАдресныхОбъектов.Resource.Описание - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - Edit - false - - Constant.МаксимальноеКоличествоИсполняющихФоновыхЗаданий @@ -1785,6 +1323,13 @@ true + + CommonForm.Склонения + + View + true + + Constant.СтатусОбновленияКонфигурации @@ -1797,25 +1342,14 @@ - InformationRegister.УдалитьВерсииПодсистем.Attribute.ПланОбновления + Constant.ИспользоватьОтправкуSMSВШаблонахСообщений + + Read + true + View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.СпособУстановкиВремениНапоминания - - View - false - - - Edit - false + true @@ -1857,13 +1391,6 @@ true - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - Edit - false - - CommonForm.ПодготовкаНовогоПисьма @@ -1878,13 +1405,6 @@ true - - InformationRegister.СостоянияКонтрагентов.Attribute.ИНН - - Edit - false - - CommonForm.ВыборДаты @@ -1910,50 +1430,6 @@ true - - InformationRegister.НапоминанияПользователя.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.StandardAttribute.Period - - View - false - - - Edit - false - - Constant.ДатаОбновленияПовторноИспользуемыхЗначенийМРО @@ -1965,17 +1441,6 @@ true - - InformationRegister.УдалитьВерсииПодсистем.Dimension.ОбластьДанных - - View - false - - - Edit - false - - Constant.ПараметрыСлужебныхСобытий @@ -1987,13 +1452,6 @@ true - - InformationRegister.ОриентирыАдресныхОбъектов.Dimension.Идентификатор - - Edit - false - - Constant.ИспользоватьПолнотекстовыйПоиск @@ -2034,13 +1492,6 @@ true - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - Edit - false - - Constant.НеИспользоватьРазделениеПоОбластямДанных @@ -2103,6 +1554,13 @@ true + + Catalog.ПредопределенныеВариантыОтчетов + + Read + true + + CommonCommand.СменитьПароль @@ -2110,6 +1568,17 @@ true + + Constant.ИспользоватьЭлектроннуюПочтуВШаблонахСообщений + + Read + true + + + View + true + + CommonForm.ВспомогательнаяФормаНастроекОтчета @@ -2139,17 +1608,6 @@ true - - Catalog.Заметки.Attribute.Пометка - - View - false - - - Edit - false - - Constant.ГлавныйУзел @@ -2161,17 +1619,6 @@ true - - Constant.УдалитьАлгоритмХеширования - - Read - true - - - View - true - - Constant.ЗаголовокСистемы @@ -2216,69 +1663,6 @@ true - - Catalog.ГруппыПользователей.StandardAttribute.PredefinedDataName - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - Edit - false - - Constant.ИспользуютсяПрофилиБезопасности @@ -2308,13 +1692,6 @@ true - - InformationRegister.СостоянияКонтрагентов.Attribute.КПП - - Edit - false - - Catalog.ЗначенияСвойствОбъектовИерархия @@ -2403,35 +1780,6 @@ true - - InformationRegister.НапоминанияПользователя.Attribute.Расписание - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.ПредставлениеИсточника - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - Edit - false - - Constant.ПараметрыОграниченияДоступа @@ -2472,13 +1820,6 @@ true - - InformationRegister.СостоянияКонтрагентов.Resource.Состояние - - Edit - false - - Constant.НастройкаПодчиненногоУзлаРИБЗавершена @@ -2501,34 +1842,6 @@ true - - InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов.StandardAttribute.Period - - Edit - false - - Catalog.ЗначенияСвойствОбъектов @@ -2551,84 +1864,6 @@ true - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - Edit - false - - - - Constant.ИспользоватьНесколькоОрганизаций - - Read - true - - - View - true - - - - Constant.УдалитьПровайдерЭП - - Read - true - - - View - true - - CommonForm.ПрисоединенныеФайлы @@ -2647,13 +1882,6 @@ true - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - Edit - false - - Catalog.КлассификаторБанковРФ @@ -2693,10 +1921,6 @@ Read true - - View - true - SessionParameter.ПараметрыОбработчикаОбновления @@ -2706,10 +1930,22 @@ - CommonForm.ПредупреждениеБезопасности + InformationRegister.НастройкиВариантовОтчетов - View + Read true + + ГДЕ (Пользователь = &ТекущийПользователь + ИЛИ Вариант.Автор = &ТекущийПользователь) + + + + Update + true + + ГДЕ (Пользователь = &ТекущийПользователь + ИЛИ Вариант.Автор = &ТекущийПользователь) + @@ -2729,17 +1965,6 @@ Read true - - View - true - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - Edit - false - InformationRegister.ПараметрыРаботыВерсийРасширений @@ -2774,46 +1999,6 @@ true - - InformationRegister.НапоминанияПользователя.Dimension.ВремяСобытия - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.ТекстСодержания - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Dimension.Пользователь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - Edit - false - - Constant.ПрефиксУзлаРаспределеннойИнформационнойБазы @@ -2825,17 +2010,6 @@ true - - Constant.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций - - Read - true - - - View - true - - Constant.СообщениеОбменаДаннымиИзГлавногоУзла @@ -2938,20 +2112,6 @@ true - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - Edit - false - - CommonForm.ВводЗначенийСпискомСФлажками @@ -2970,13 +2130,6 @@ true - - InformationRegister.ОриентирыАдресныхОбъектов.Resource.АдресныйОбъект - - Edit - false - - CommonForm.ВключениеПроверкиКонтрагентов @@ -3053,13 +2206,6 @@ true - - InformationRegister.СостоянияКонтрагентов.Dimension.Контрагент - - Edit - false - - Constant.КоличествоЭлементовВТранзакцииЗагрузкиДанных @@ -3104,10 +2250,21 @@ - InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов.Dimension.Документ + CommonForm.ПустойРабочийСтол - Edit - false + View + true + + + + Constant.АдресПубликацииИнформационнойБазыВЛокальнойСети + + Read + true + + + View + true @@ -3116,6 +2273,10 @@ Read true + + View + true + CommonCommand.ПрисоединенныеФайлыКОбъекту @@ -3146,17 +2307,6 @@ true - - Catalog.Заметки.Attribute.ПредставлениеПредмета - - View - false - - - Edit - false - - SessionParameter.ДействующиеДатыЗапретаИзменения @@ -3170,10 +2320,6 @@ Read true - - View - true - SessionParameter.РаботаСВнешнимиРесурсамиЗаблокирована @@ -3237,7 +2383,7 @@ - SessionParameter.АдресСвойствРасширений + SessionParameter.ПодключенныеРасширения Get true @@ -3336,6 +2482,10 @@ Read true + + View + true + InformationRegister.СеансыВерсийРасширений @@ -3380,17 +2530,6 @@ Read true - - View - true - - - - InformationRegister.НапоминанияПользователя.Command.МоиНапоминания - - View - true - ПоЗначениям @@ -3406,13 +2545,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. // Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", // выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // П(n) - Поле проверяемого значения, кроме случая В(n) = "Условие" (или ""). // Примечение: максимальное количество одновременно проверяемых значений полей можно увеличить, изменив шаблон, но // необходимо будет указывать все параметры шаблона, т.е. указывать пустые строки, когда количество полей меньше максимального. @@ -3446,73 +2587,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(4)" = "" И "#Параметр(5)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(4),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(4),")) И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(8)" = "" И "#Параметр(9)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(8),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(8),")) И ("#Параметр(10)" = "" И "#Параметр(11)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(10),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(10),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(14)" = "" И "#Параметр(15)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(14),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(14),")) И ("#Параметр(16)" = "" И "#Параметр(17)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(16),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(16),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(20)" = "" И "#Параметр(21)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(20),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(20),")) И ("#Параметр(22)" = "" И "#Параметр(23)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(22),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(22),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(26)" = "" И "#Параметр(27)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(26),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(26),")) И ("#Параметр(28)" = "" И "#Параметр(29)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(28),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(28),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(32)" = "" И "#Параметр(33)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(32),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(32),")) И ("#Параметр(34)" = "" И "#Параметр(35)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(34),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(34),")) - ) #Тогда + ) #Тогда Т ГДЕ // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -3557,7 +2730,7 @@ ( // Поиск значений заданных полей в разрешенных значениях групп доступа (пользователей). //// Проверка значения поля группы параметров 1. -#Если "#Параметр(4)" = "Условие" Или "#Параметр(4)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(4)" = "Условие" Или "#Параметр(4)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(5) ) #ИначеЕсли "#Параметр(4)" = "ПравоЧтения" Или "#Параметр(4)" = "ПравоИзменения" #Тогда @@ -3573,6 +2746,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(4)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(5) + #Если Не "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(4)" = "НастройкиПрав" #Тогда ( @@ -3661,7 +2848,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(5) - #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" + И "#Параметр(4)" <> "Пользователи" + И "#Параметр(4)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(4)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(4)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3716,7 +2905,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(6)" = "" И "#Параметр(7)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -3732,6 +2921,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда И ( @@ -3820,7 +3023,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(7) - #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3873,7 +3078,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(8)" = "" И "#Параметр(9)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(8)" = "Условие" Или "#Параметр(8)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(8)" = "Условие" Или "#Параметр(8)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(9) ) #ИначеЕсли "#Параметр(8)" = "ПравоЧтения" Или "#Параметр(8)" = "ПравоИзменения" #Тогда @@ -3889,6 +3094,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(8)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(9) + #Если Не "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(8)" = "НастройкиПрав" #Тогда И ( @@ -3977,7 +3196,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(9) - #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" + И "#Параметр(8)" <> "Пользователи" + И "#Параметр(8)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(8)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(8)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4030,7 +3251,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(10)" = "" И "#Параметр(11)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(10)" = "Условие" Или "#Параметр(10)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(10)" = "Условие" Или "#Параметр(10)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(11) ) #ИначеЕсли "#Параметр(10)" = "ПравоЧтения" Или "#Параметр(10)" = "ПравоИзменения" #Тогда @@ -4046,6 +3267,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(10)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(11) + #Если Не "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(10)" = "НастройкиПрав" #Тогда И ( @@ -4134,7 +3369,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(11) - #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" + И "#Параметр(10)" <> "Пользователи" + И "#Параметр(10)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(10)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(10)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4187,7 +3424,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -4203,6 +3440,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда И ( @@ -4291,7 +3542,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(13) - #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4344,7 +3597,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(14)" = "" И "#Параметр(15)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(14)" = "Условие" Или "#Параметр(14)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(14)" = "Условие" Или "#Параметр(14)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(15) ) #ИначеЕсли "#Параметр(14)" = "ПравоЧтения" Или "#Параметр(14)" = "ПравоИзменения" #Тогда @@ -4360,6 +3613,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(14)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(15) + #Если Не "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(14)" = "НастройкиПрав" #Тогда И ( @@ -4448,7 +3715,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(15) - #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" + И "#Параметр(14)" <> "Пользователи" + И "#Параметр(14)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(14)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(14)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4501,7 +3770,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(16)" = "" И "#Параметр(17)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(16)" = "Условие" Или "#Параметр(16)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(16)" = "Условие" Или "#Параметр(16)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(17) ) #ИначеЕсли "#Параметр(16)" = "ПравоЧтения" Или "#Параметр(16)" = "ПравоИзменения" #Тогда @@ -4517,6 +3786,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(16)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(17) + #Если Не "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(16)" = "НастройкиПрав" #Тогда И ( @@ -4605,7 +3888,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(17) - #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" + И "#Параметр(16)" <> "Пользователи" + И "#Параметр(16)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(16)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(16)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4658,7 +3943,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -4674,6 +3959,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда И ( @@ -4762,7 +4061,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(19) - #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4815,7 +4116,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(20)" = "" И "#Параметр(21)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(20)" = "Условие" Или "#Параметр(20)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(20)" = "Условие" Или "#Параметр(20)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(21) ) #ИначеЕсли "#Параметр(20)" = "ПравоЧтения" Или "#Параметр(20)" = "ПравоИзменения" #Тогда @@ -4831,6 +4132,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(20)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(21) + #Если Не "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(20)" = "НастройкиПрав" #Тогда И ( @@ -4919,7 +4234,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(21) - #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" + И "#Параметр(20)" <> "Пользователи" + И "#Параметр(20)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(20)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(20)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4972,7 +4289,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(22)" = "" И "#Параметр(23)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(22)" = "Условие" Или "#Параметр(22)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(22)" = "Условие" Или "#Параметр(22)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(23) ) #ИначеЕсли "#Параметр(22)" = "ПравоЧтения" Или "#Параметр(22)" = "ПравоИзменения" #Тогда @@ -4988,6 +4305,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(22)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(23) + #Если Не "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(22)" = "НастройкиПрав" #Тогда И ( @@ -5076,7 +4407,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(23) - #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" + И "#Параметр(22)" <> "Пользователи" + И "#Параметр(22)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(22)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(22)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5129,7 +4462,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -5145,6 +4478,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда И ( @@ -5233,7 +4580,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(25) - #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5286,7 +4635,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(26)" = "" И "#Параметр(27)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(26)" = "Условие" Или "#Параметр(26)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(26)" = "Условие" Или "#Параметр(26)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(27) ) #ИначеЕсли "#Параметр(26)" = "ПравоЧтения" Или "#Параметр(26)" = "ПравоИзменения" #Тогда @@ -5302,6 +4651,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(26)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(27) + #Если Не "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(26)" = "НастройкиПрав" #Тогда И ( @@ -5390,7 +4753,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(27) - #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" + И "#Параметр(26)" <> "Пользователи" + И "#Параметр(26)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(26)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(26)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5443,7 +4808,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(28)" = "" И "#Параметр(29)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(28)" = "Условие" Или "#Параметр(28)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(28)" = "Условие" Или "#Параметр(28)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(29) ) #ИначеЕсли "#Параметр(28)" = "ПравоЧтения" Или "#Параметр(28)" = "ПравоИзменения" #Тогда @@ -5459,6 +4824,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(28)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(29) + #Если Не "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(28)" = "НастройкиПрав" #Тогда И ( @@ -5547,7 +4926,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(29) - #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" + И "#Параметр(28)" <> "Пользователи" + И "#Параметр(28)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(28)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(28)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5600,7 +4981,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -5616,6 +4997,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда И ( @@ -5704,7 +5099,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(31) - #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5757,7 +5154,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(32)" = "" И "#Параметр(33)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(32)" = "Условие" Или "#Параметр(32)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(32)" = "Условие" Или "#Параметр(32)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(33) ) #ИначеЕсли "#Параметр(32)" = "ПравоЧтения" Или "#Параметр(32)" = "ПравоИзменения" #Тогда @@ -5773,6 +5170,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(32)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(33) + #Если Не "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(32)" = "НастройкиПрав" #Тогда И ( @@ -5861,7 +5272,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(33) - #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" + И "#Параметр(32)" <> "Пользователи" + И "#Параметр(32)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(32)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(32)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5914,7 +5327,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(34)" = "" И "#Параметр(35)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(34)" = "Условие" Или "#Параметр(34)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(34)" = "Условие" Или "#Параметр(34)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(35) ) #ИначеЕсли "#Параметр(34)" = "ПравоЧтения" Или "#Параметр(34)" = "ПравоИзменения" #Тогда @@ -5930,6 +5343,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(34)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(35) + #Если Не "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(34)" = "НастройкиПрав" #Тогда И ( @@ -6018,7 +5445,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(35) - #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" + И "#Параметр(34)" <> "Пользователи" + И "#Параметр(34)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(34)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(34)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6096,13 +5525,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. // Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", // выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // П(n) - Поле проверяемого значения с псевдонимом, например "Т.Организация", // кроме случая В(n) = "Условие" (или ""). // О(n) - Логические операции "И", "ИЛИ" в сочетании с скобками "(", ")". @@ -6141,73 +5572,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(9)" = "" И "#Параметр(10)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(9),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(9),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(15)" = "" И "#Параметр(16)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(15),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(15),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(21)" = "" И "#Параметр(22)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(21),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(21),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(27)" = "" И "#Параметр(28)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(27),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(27),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(33)" = "" И "#Параметр(34)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(33),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(33),")) И ("#Параметр(36)" = "" И "#Параметр(37)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(36),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(36),")) И ("#Параметр(39)" = "" И "#Параметр(40)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(39),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(39),")) И ("#Параметр(42)" = "" И "#Параметр(43)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(42),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(42),")) И ("#Параметр(45)" = "" И "#Параметр(46)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(45),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(45),")) И ("#Параметр(48)" = "" И "#Параметр(49)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(48),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(48),")) И ("#Параметр(51)" = "" И "#Параметр(52)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(51),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(51),")) - ) #Тогда + ) #Тогда Т ИЗ Т // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -6259,7 +5722,7 @@ #Параметр(5) // [([(][(]...] 0-n открывающихся скобок. //// Проверка значения поля группы параметров 1. -#Если "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -6275,6 +5738,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда ( @@ -6363,7 +5840,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(7) - #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6420,7 +5899,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(9)" = "" И "#Параметр(10)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(9)" = "Условие" Или "#Параметр(9)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(9)" = "Условие" Или "#Параметр(9)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(10) ) #ИначеЕсли "#Параметр(9)" = "ПравоЧтения" Или "#Параметр(9)" = "ПравоИзменения" #Тогда @@ -6436,6 +5915,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(9)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(10) + #Если Не "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(9)" = "НастройкиПрав" #Тогда ( @@ -6524,7 +6017,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(10) - #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" + И "#Параметр(9)" <> "Пользователи" + И "#Параметр(9)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(9)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(9)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6581,7 +6076,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -6597,6 +6092,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда ( @@ -6685,7 +6194,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(13) - #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6742,7 +6253,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(15)" = "" И "#Параметр(16)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(15)" = "Условие" Или "#Параметр(15)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(15)" = "Условие" Или "#Параметр(15)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(16) ) #ИначеЕсли "#Параметр(15)" = "ПравоЧтения" Или "#Параметр(15)" = "ПравоИзменения" #Тогда @@ -6758,6 +6269,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(15)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(16) + #Если Не "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(15)" = "НастройкиПрав" #Тогда ( @@ -6846,7 +6371,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(16) - #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" + И "#Параметр(15)" <> "Пользователи" + И "#Параметр(15)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(15)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(15)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6903,7 +6430,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -6919,6 +6446,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда ( @@ -7007,7 +6548,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(19) - #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -7064,7 +6607,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(21)" = "" И "#Параметр(22)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(21)" = "Условие" Или "#Параметр(21)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(21)" = "Условие" Или "#Параметр(21)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(22) ) #ИначеЕсли "#Параметр(21)" = "ПравоЧтения" Или "#Параметр(21)" = "ПравоИзменения" #Тогда @@ -7080,6 +6623,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(21)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(22) + #Если Не "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(21)" = "НастройкиПрав" #Тогда ( @@ -7168,7 +6725,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(22) - #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" + И "#Параметр(21)" <> "Пользователи" + И "#Параметр(21)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(21)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(21)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -7225,7 +6784,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -7241,6 +6800,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда ( @@ -7329,7 +6902,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(25) - #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -7386,7 +6961,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(27)" = "" И "#Параметр(28)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(27)" = "Условие" Или "#Параметр(27)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(27)" = "Условие" Или "#Параметр(27)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(28) ) #ИначеЕсли "#Параметр(27)" = "ПравоЧтения" Или "#Параметр(27)" = "ПравоИзменения" #Тогда @@ -7402,6 +6977,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(27)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(28) + #Если Не "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(27)" = "НастройкиПрав" #Тогда ( @@ -7490,7 +7079,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(28) - #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" + И "#Параметр(27)" <> "Пользователи" + И "#Параметр(27)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(27)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(27)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -7547,7 +7138,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -7563,6 +7154,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда ( @@ -7651,7 +7256,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(31) - #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -7708,7 +7315,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(33)" = "" И "#Параметр(34)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(33)" = "Условие" Или "#Параметр(33)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(33)" = "Условие" Или "#Параметр(33)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(34) ) #ИначеЕсли "#Параметр(33)" = "ПравоЧтения" Или "#Параметр(33)" = "ПравоИзменения" #Тогда @@ -7724,6 +7331,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(33)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(34) + #Если Не "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(33)" = "НастройкиПрав" #Тогда ( @@ -7812,7 +7433,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(34) - #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" + И "#Параметр(33)" <> "Пользователи" + И "#Параметр(33)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(33)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(33)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -7869,7 +7492,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(36)" = "" И "#Параметр(37)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(36)" = "Условие" Или "#Параметр(36)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(36)" = "Условие" Или "#Параметр(36)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(37) ) #ИначеЕсли "#Параметр(36)" = "ПравоЧтения" Или "#Параметр(36)" = "ПравоИзменения" #Тогда @@ -7885,6 +7508,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(36)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(37) + #Если Не "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(36)" = "НастройкиПрав" #Тогда ( @@ -7973,7 +7610,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(37) - #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" + И "#Параметр(36)" <> "Пользователи" + И "#Параметр(36)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(36)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(36)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8030,7 +7669,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(39)" = "" И "#Параметр(40)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(39)" = "Условие" Или "#Параметр(39)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(39)" = "Условие" Или "#Параметр(39)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(40) ) #ИначеЕсли "#Параметр(39)" = "ПравоЧтения" Или "#Параметр(39)" = "ПравоИзменения" #Тогда @@ -8046,6 +7685,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(39)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(40) + #Если Не "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(39)" = "НастройкиПрав" #Тогда ( @@ -8134,7 +7787,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(40) - #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" + И "#Параметр(39)" <> "Пользователи" + И "#Параметр(39)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(39)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(39)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8191,7 +7846,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(42)" = "" И "#Параметр(43)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(42)" = "Условие" Или "#Параметр(42)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(42)" = "Условие" Или "#Параметр(42)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(43) ) #ИначеЕсли "#Параметр(42)" = "ПравоЧтения" Или "#Параметр(42)" = "ПравоИзменения" #Тогда @@ -8207,6 +7862,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(42)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(43) + #Если Не "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(42)" = "НастройкиПрав" #Тогда ( @@ -8295,7 +7964,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(43) - #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" + И "#Параметр(42)" <> "Пользователи" + И "#Параметр(42)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(42)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(42)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8352,7 +8023,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(45)" = "" И "#Параметр(46)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(45)" = "Условие" Или "#Параметр(45)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(45)" = "Условие" Или "#Параметр(45)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(46) ) #ИначеЕсли "#Параметр(45)" = "ПравоЧтения" Или "#Параметр(45)" = "ПравоИзменения" #Тогда @@ -8368,6 +8039,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(45)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(46) + #Если Не "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(45)" = "НастройкиПрав" #Тогда ( @@ -8456,7 +8141,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(46) - #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" + И "#Параметр(45)" <> "Пользователи" + И "#Параметр(45)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(45)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(45)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8513,7 +8200,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(48)" = "" И "#Параметр(49)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(48)" = "Условие" Или "#Параметр(48)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(48)" = "Условие" Или "#Параметр(48)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(49) ) #ИначеЕсли "#Параметр(48)" = "ПравоЧтения" Или "#Параметр(48)" = "ПравоИзменения" #Тогда @@ -8529,6 +8216,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(48)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(49) + #Если Не "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(48)" = "НастройкиПрав" #Тогда ( @@ -8617,7 +8318,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(49) - #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" + И "#Параметр(48)" <> "Пользователи" + И "#Параметр(48)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(48)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(48)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8674,7 +8377,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(51)" = "" И "#Параметр(52)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(51)" = "Условие" Или "#Параметр(51)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(51)" = "Условие" Или "#Параметр(51)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(52) ) #ИначеЕсли "#Параметр(51)" = "ПравоЧтения" Или "#Параметр(51)" = "ПравоИзменения" #Тогда @@ -8690,6 +8393,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(51)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(52) + #Если Не "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(51)" = "НастройкиПрав" #Тогда ( @@ -8778,7 +8495,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(52) - #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" + И "#Параметр(51)" <> "Пользователи" + И "#Параметр(51)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(51)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(51)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" diff --git a/SSL/src/Roles/БазовыеПраваВнешнегоПользователя/Rights.rights b/SSL/src/Roles/БазовыеПраваВнешнегоПользователя/Rights.rights index 671e90c02..308664f0f 100644 --- a/SSL/src/Roles/БазовыеПраваВнешнегоПользователя/Rights.rights +++ b/SSL/src/Roles/БазовыеПраваВнешнегоПользователя/Rights.rights @@ -3,17 +3,6 @@ false true false - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - Constant.МаксимальнаяДлительностьВыполненияИсполняющегоФоновогоЗадания @@ -25,17 +14,6 @@ true - - Constant.УдалитьАлгоритмШифрования - - Read - true - - - View - true - - SessionParameter.ОбластьДанныхИспользование @@ -68,17 +46,6 @@ true - - Catalog.Заметки.Attribute.Автор - - View - false - - - Edit - false - - Constant.ПараметрыИтоговИАгрегатов @@ -102,102 +69,23 @@ - Catalog.Заметки.Attribute.Предмет + Catalog.ВариантыОтчетов + + Read + true + + ВариантыОтчетов ГДЕ (ВариантыОтчетов.Пользовательский = ЛОЖЬ + ИЛИ ВариантыОтчетов.ТолькоДляАвтора = ЛОЖЬ + ИЛИ ВариантыОтчетов.Автор = &ТекущийПользователь) + + View - false + true - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false + InputByString + true @@ -206,10 +94,6 @@ Read true - - View - true - Constant.ДатаУведомленияОНовыхЗадачах @@ -270,13 +154,6 @@ true - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - Edit - false - - Constant.НастройкиПодчиненногоУзлаРИБ @@ -288,73 +165,6 @@ true - - InformationRegister.НапоминанияПользователя.Resource.СрокНапоминания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - Edit - false - - Constant.ВерсияДатЗапретаИзменения @@ -366,17 +176,6 @@ true - - InformationRegister.НапоминанияПользователя.Attribute.ИнтервалВремениНапоминания - - View - false - - - Edit - false - - Constant.НастройкаПроксиСервера @@ -416,10 +215,6 @@ Read true - - View - true - CommonForm.ПанельОтчетов @@ -428,13 +223,6 @@ true - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - Edit - false - - CommonForm.АутентификацияВСервисе @@ -442,24 +230,6 @@ true - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - DataProcessor.НерекомендуемаяВерсияПлатформы @@ -471,13 +241,6 @@ true - - InformationRegister.ОриентирыАдресныхОбъектов.Dimension.КодСубъектаРФ - - Edit - false - - SessionParameter.БуферОбмена @@ -521,17 +284,6 @@ true - - InformationRegister.УдалитьВерсииПодсистем.Dimension.ИмяПодсистемы - - View - false - - - Edit - false - - Constant.ВерсияКлассификатораБанковРФ @@ -555,17 +307,10 @@ - Catalog.Пользователи.TabularSection.ДополнительныеРеквизиты + Catalog.ВариантыОтчетов.Command.Открыть - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - Edit - false + View + true @@ -580,10 +325,25 @@ - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка + InformationRegister.ПредопределенныеВариантыОтчетовВерсийРасширений - Edit - false + Read + true + + + View + true + + + + Constant.ПараметрыПодключаемыхКоманд + + Read + true + + + View + true @@ -608,17 +368,6 @@ true - - InformationRegister.НапоминанияПользователя.Attribute.ИмяРеквизитаИсточника - - View - false - - - Edit - false - - CommonForm.ЭлектроннаяПодпись @@ -633,13 +382,6 @@ true - - InformationRegister.ОриентирыАдресныхОбъектов.Resource.Дополнительно - - Edit - false - - CommonForm.ПраваДоступаУпрощенно @@ -669,94 +411,6 @@ true - - Catalog.Заметки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Code - - View - false - - - Edit - false - - CommonForm.ВыборУзловПлановОбмена @@ -764,46 +418,6 @@ true - - Constant.УдалитьТипПровайдераЭП - - Read - true - - - View - true - - - - InformationRegister.УдалитьВерсииПодсистем.Resource.Версия - - View - false - - - Edit - false - - - - Constant.НеИспользоватьНесколькоОрганизаций - - Read - true - - - View - true - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - Edit - false - - Constant.НастройкиВыполненияРегламентныхЗаданий @@ -816,17 +430,17 @@ - CommonForm.ПредупрежденияПриЗавершенииРаботы + Catalog.ПредопределенныеВариантыОтчетовРасширений - View + Read true - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства + CommonForm.ПредупрежденияПриЗавершенииРаботы - Edit - false + View + true @@ -856,14 +470,10 @@ - InformationRegister.НапоминанияПользователя.Attribute.Описание + CommonForm.ПредупреждениеБезопасности View - false - - - Edit - false + true @@ -902,13 +512,6 @@ true - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - Edit - false - - Constant.СписокЗапрещенныхРасширенийОбластиДанных @@ -942,23 +545,12 @@ true - - Catalog.Пользователи.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - Edit - false - - InformationRegister.ПричиныИзмененияАдресныхСведений Read true - - View - true - InformationRegister.СтатусыСинхронизацииФайловСОблачнымСервисом @@ -989,17 +581,6 @@ true - - InformationRegister.НапоминанияПользователя.Dimension.Источник - - View - false - - - Edit - false - - Constant.ИспользоватьВерсионированиеОбъектов @@ -1033,17 +614,6 @@ true - - Catalog.Заметки.Attribute.ДатаИзменения - - View - false - - - Edit - false - - DataProcessor.ЗагрузкаДанныхИзФайла @@ -1073,13 +643,6 @@ true - - Catalog.Пользователи.Attribute.Подготовлен - - Edit - false - - DataProcessor.ИнформацияПриЗапуске.Command.ИнформацияПриЗапуске @@ -1116,69 +679,6 @@ true - - Catalog.Пользователи.StandardAttribute.PredefinedDataName - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - Edit - false - - CommonForm.ВыборОбъектовМетаданных @@ -1237,6 +737,13 @@ true + + CommonForm.РезультатПроверки + + View + true + + DataProcessor.ВводКонтактнойИнформации @@ -1248,17 +755,6 @@ true - - Catalog.Заметки.Attribute.ДляРабочегоСтола - - View - false - - - Edit - false - - InformationRegister.ВерсииПодсистем @@ -1266,6 +762,24 @@ true + + Catalog.ПользовательскиеНастройкиОтчетов + + Read + true + + ГДЕ Пользователь = &ТекущийПользователь + + + + View + true + + + InputByString + true + + SessionParameter.АвторизованныйПользователь @@ -1280,50 +794,6 @@ true - - InformationRegister.УдалитьВерсииПодсистем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьВерсииПодсистем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьВерсииПодсистем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьВерсииПодсистем.StandardAttribute.Period - - View - false - - - Edit - false - - Constant.ОтложенноеОбновлениеЗавершеноУспешно @@ -1346,38 +816,6 @@ true - - Constant.УдалитьАлгоритмПодписи - - Read - true - - - View - true - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - Edit - false - - - - Catalog.Пользователи.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - Edit - false - - - - CommonForm.АвторизацияНаСайтеПоддержкиПользователей - - View - true - - Constant.ПараметрыРаботыПользователей @@ -1400,13 +838,6 @@ true - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - Edit - false - - Constant.ИспользоватьАнкетирование @@ -1418,13 +849,6 @@ true - - CommonForm.ВыборПроизвольногоПериода - - View - true - - CommonForm.ВыборФорматаВложений @@ -1443,17 +867,6 @@ true - - Catalog.Заметки.Attribute.Содержание - - View - false - - - Edit - false - - SessionParameter.ВерсияРасширений @@ -1503,10 +916,6 @@ Read true - - View - true - InformationRegister.ОриентирыАдресныхОбъектов @@ -1514,38 +923,6 @@ Read true - - View - true - - - - InformationRegister.ОриентирыАдресныхОбъектов.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.StandardAttribute.Period - - Edit - false - CommonForm.ПраваДоступа @@ -1605,50 +982,6 @@ true - - InformationRegister.СостоянияКонтрагентов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтрагентов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтрагентов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтрагентов.StandardAttribute.Period - - View - false - - - Edit - false - - Catalog.ВидыКонтактнойИнформации @@ -1664,62 +997,6 @@ true - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - Edit - false - - Catalog.СтраныМира @@ -1735,13 +1012,6 @@ true - - InformationRegister.ОриентирыАдресныхОбъектов.Resource.ПочтовыйИндекс - - Edit - false - - Constant.СоздаватьЭлектронныеПодписиНаСервере @@ -1764,27 +1034,6 @@ true - - Catalog.Пользователи.Attribute.Комментарий - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.Resource.Описание - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - Edit - false - - Constant.МаксимальноеКоличествоИсполняющихФоновыхЗаданий @@ -1807,28 +1056,6 @@ true - - InformationRegister.УдалитьВерсииПодсистем.Attribute.ПланОбновления - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.СпособУстановкиВремениНапоминания - - View - false - - - Edit - false - - InformationRegister.СоставыГруппПользователей @@ -1868,13 +1095,6 @@ true - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - Edit - false - - CommonForm.ПодготовкаНовогоПисьма @@ -1889,17 +1109,6 @@ true - - InformationRegister.СостоянияКонтрагентов.Attribute.ИНН - - View - false - - - Edit - false - - CommonForm.ВыборДаты @@ -1907,13 +1116,6 @@ true - - DataProcessor.ПолнотекстовыйПоискВДанных.Command.ПолнотекстовыйПоиск - - View - true - - Catalog.ВнешниеПользователи @@ -1955,50 +1157,6 @@ true - - InformationRegister.НапоминанияПользователя.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.StandardAttribute.Period - - View - false - - - Edit - false - - Constant.ДатаОбновленияПовторноИспользуемыхЗначенийМРО @@ -2010,17 +1168,6 @@ true - - InformationRegister.УдалитьВерсииПодсистем.Dimension.ОбластьДанных - - View - false - - - Edit - false - - Constant.ПараметрыСлужебныхСобытий @@ -2032,13 +1179,6 @@ true - - InformationRegister.ОриентирыАдресныхОбъектов.Dimension.Идентификатор - - Edit - false - - Constant.ИспользоватьПолнотекстовыйПоиск @@ -2079,13 +1219,6 @@ true - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - Edit - false - - Constant.НеИспользоватьРазделениеПоОбластямДанных @@ -2097,13 +1230,6 @@ true - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - Edit - false - - Constant.КаталогСообщенийОбменаДаннымиДляLinux @@ -2155,6 +1281,13 @@ true + + Catalog.ПредопределенныеВариантыОтчетов + + Read + true + + CommonCommand.СменитьПароль @@ -2180,17 +1313,6 @@ true - - Catalog.Заметки.Attribute.Пометка - - View - false - - - Edit - false - - Constant.ГлавныйУзел @@ -2202,17 +1324,6 @@ true - - Constant.УдалитьАлгоритмХеширования - - Read - true - - - View - true - - Constant.ЗаголовокСистемы @@ -2224,13 +1335,6 @@ true - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - Edit - false - - CommonForm.РедактированиеТабличногоДокумента @@ -2278,17 +1382,6 @@ true - - InformationRegister.СостоянияКонтрагентов.Attribute.КПП - - View - false - - - Edit - false - - Constant.МаксимальныйРазмерФайлаОбластиДанных @@ -2333,13 +1426,6 @@ true - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - Edit - false - - SessionParameter.ВыполняетсяЗаписьОбъекта @@ -2362,35 +1448,6 @@ true - - InformationRegister.НапоминанияПользователя.Attribute.Расписание - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.ПредставлениеИсточника - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - Edit - false - - Constant.ПараметрыОграниченияДоступа @@ -2420,13 +1477,6 @@ true - - Catalog.Пользователи.Attribute.Недействителен - - Edit - false - - Constant.ИспользоватьНесколькоПроизводственныхКалендарей @@ -2438,17 +1488,6 @@ true - - InformationRegister.СостоянияКонтрагентов.Resource.Состояние - - View - false - - - Edit - false - - Constant.НастройкаПодчиненногоУзлаРИБЗавершена @@ -2460,128 +1499,6 @@ true - - InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - Edit - false - - - - Constant.ИспользоватьНесколькоОрганизаций - - Read - true - - - View - true - - - - Constant.УдалитьПровайдерЭП - - Read - true - - - View - true - - CommonForm.ПрисоединенныеФайлы @@ -2600,17 +1517,6 @@ true - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - Catalog.КлассификаторБанковРФ @@ -2650,10 +1556,6 @@ Read true - - View - true - SessionParameter.ПараметрыОбработчикаОбновления @@ -2663,17 +1565,22 @@ - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление + InformationRegister.НастройкиВариантовОтчетов - Edit - false - - - - CommonForm.ПредупреждениеБезопасности - - View + Read true + + ГДЕ (Пользователь = &ТекущийПользователь + ИЛИ Вариант.Автор = &ТекущийПользователь) + + + + Update + true + + ГДЕ (Пользователь = &ТекущийПользователь + ИЛИ Вариант.Автор = &ТекущийПользователь) + @@ -2687,41 +1594,12 @@ true - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - Edit - false - - InformationRegister.УровниСокращенийАдресныхСведений Read true - - View - true - - - - Catalog.Пользователи.Attribute.Служебный - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - InformationRegister.ПараметрыРаботыВерсийРасширений @@ -2756,46 +1634,6 @@ true - - InformationRegister.НапоминанияПользователя.Dimension.ВремяСобытия - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.ТекстСодержания - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Dimension.Пользователь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - Edit - false - - Constant.ПрефиксУзлаРаспределеннойИнформационнойБазы @@ -2807,17 +1645,6 @@ true - - Constant.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций - - Read - true - - - View - true - - Constant.СообщениеОбменаДаннымиИзГлавногоУзла @@ -2894,13 +1721,6 @@ true - - Catalog.Пользователи.Attribute.Подразделение - - Edit - false - - Constant.ИспользоватьРазделениеПоОбластямДанных @@ -2923,13 +1743,6 @@ true - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - Edit - false - - Constant.ИспользоватьСервисСклоненияMorpher @@ -2952,13 +1765,6 @@ true - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - Edit - false - - CommonForm.ВводЗначенийСпискомСФлажками @@ -2977,20 +1783,6 @@ true - - InformationRegister.ОриентирыАдресныхОбъектов.Resource.АдресныйОбъект - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - Edit - false - - Constant.ИспользоватьДатыЗапретаИзменения @@ -3002,20 +1794,6 @@ true - - Catalog.Пользователи.Attribute.ФизическоеЛицо - - Edit - false - - - - Catalog.Пользователи.Attribute.СвойстваПользователяИБ - - Edit - false - - Constant.ИспользоватьПрочиеВзаимодействия @@ -3074,17 +1852,6 @@ true - - InformationRegister.СостоянияКонтрагентов.Dimension.Контрагент - - View - false - - - Edit - false - - Constant.КоличествоЭлементовВТранзакцииЗагрузкиДанных @@ -3096,13 +1863,6 @@ true - - Catalog.Пользователи.Attribute.ИдентификаторПользователяСервиса - - Edit - false - - SessionParameter.ТекущийВнешнийПользователь @@ -3136,14 +1896,21 @@ - InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов.Dimension.Документ + CommonForm.ПустойРабочийСтол View - false + true + + + + Constant.АдресПубликацииИнформационнойБазыВЛокальнойСети + + Read + true - Edit - false + View + true @@ -3152,6 +1919,10 @@ Read true + + View + true + CommonCommand.ПрисоединенныеФайлыКОбъекту @@ -3182,17 +1953,6 @@ true - - Catalog.Заметки.Attribute.ПредставлениеПредмета - - View - false - - - Edit - false - - SessionParameter.ДействующиеДатыЗапретаИзменения @@ -3206,10 +1966,6 @@ Read true - - View - true - SessionParameter.РаботаСВнешнимиРесурсамиЗаблокирована @@ -3243,13 +1999,6 @@ true - - Catalog.Пользователи.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - Edit - false - - Constant.ПовторитьЗагрузкуСообщенияОбменаДаннымиПередЗапуском @@ -3269,7 +2018,7 @@ - SessionParameter.АдресСвойствРасширений + SessionParameter.ПодключенныеРасширения Get true @@ -3297,13 +2046,6 @@ true - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - Edit - false - - Constant.ИспользоватьСинхронизациюДанных @@ -3394,24 +2136,6 @@ Read true - - View - true - - - - InformationRegister.НапоминанияПользователя.Command.МоиНапоминания - - View - true - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - Edit - false - ПоЗначениям @@ -3427,13 +2151,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. // Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", // выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // П(n) - Поле проверяемого значения, кроме случая В(n) = "Условие" (или ""). // Примечение: максимальное количество одновременно проверяемых значений полей можно увеличить, изменив шаблон, но // необходимо будет указывать все параметры шаблона, т.е. указывать пустые строки, когда количество полей меньше максимального. @@ -3467,73 +2193,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(4)" = "" И "#Параметр(5)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(4),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(4),")) И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(8)" = "" И "#Параметр(9)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(8),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(8),")) И ("#Параметр(10)" = "" И "#Параметр(11)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(10),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(10),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(14)" = "" И "#Параметр(15)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(14),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(14),")) И ("#Параметр(16)" = "" И "#Параметр(17)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(16),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(16),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(20)" = "" И "#Параметр(21)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(20),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(20),")) И ("#Параметр(22)" = "" И "#Параметр(23)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(22),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(22),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(26)" = "" И "#Параметр(27)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(26),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(26),")) И ("#Параметр(28)" = "" И "#Параметр(29)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(28),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(28),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(32)" = "" И "#Параметр(33)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(32),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(32),")) И ("#Параметр(34)" = "" И "#Параметр(35)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(34),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(34),")) - ) #Тогда + ) #Тогда Т ГДЕ // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -3578,7 +2336,7 @@ ( // Поиск значений заданных полей в разрешенных значениях групп доступа (пользователей). //// Проверка значения поля группы параметров 1. -#Если "#Параметр(4)" = "Условие" Или "#Параметр(4)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(4)" = "Условие" Или "#Параметр(4)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(5) ) #ИначеЕсли "#Параметр(4)" = "ПравоЧтения" Или "#Параметр(4)" = "ПравоИзменения" #Тогда @@ -3594,6 +2352,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(4)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(5) + #Если Не "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(4)" = "НастройкиПрав" #Тогда ( @@ -3682,7 +2454,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(5) - #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" + И "#Параметр(4)" <> "Пользователи" + И "#Параметр(4)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(4)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(4)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3737,7 +2511,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(6)" = "" И "#Параметр(7)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -3753,6 +2527,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда И ( @@ -3841,7 +2629,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(7) - #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3894,7 +2684,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(8)" = "" И "#Параметр(9)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(8)" = "Условие" Или "#Параметр(8)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(8)" = "Условие" Или "#Параметр(8)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(9) ) #ИначеЕсли "#Параметр(8)" = "ПравоЧтения" Или "#Параметр(8)" = "ПравоИзменения" #Тогда @@ -3910,6 +2700,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(8)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(9) + #Если Не "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(8)" = "НастройкиПрав" #Тогда И ( @@ -3998,7 +2802,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(9) - #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" + И "#Параметр(8)" <> "Пользователи" + И "#Параметр(8)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(8)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(8)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4051,7 +2857,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(10)" = "" И "#Параметр(11)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(10)" = "Условие" Или "#Параметр(10)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(10)" = "Условие" Или "#Параметр(10)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(11) ) #ИначеЕсли "#Параметр(10)" = "ПравоЧтения" Или "#Параметр(10)" = "ПравоИзменения" #Тогда @@ -4067,6 +2873,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(10)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(11) + #Если Не "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(10)" = "НастройкиПрав" #Тогда И ( @@ -4155,7 +2975,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(11) - #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" + И "#Параметр(10)" <> "Пользователи" + И "#Параметр(10)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(10)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(10)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4208,7 +3030,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -4224,6 +3046,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда И ( @@ -4312,7 +3148,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(13) - #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4365,7 +3203,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(14)" = "" И "#Параметр(15)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(14)" = "Условие" Или "#Параметр(14)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(14)" = "Условие" Или "#Параметр(14)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(15) ) #ИначеЕсли "#Параметр(14)" = "ПравоЧтения" Или "#Параметр(14)" = "ПравоИзменения" #Тогда @@ -4381,6 +3219,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(14)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(15) + #Если Не "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(14)" = "НастройкиПрав" #Тогда И ( @@ -4469,7 +3321,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(15) - #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" + И "#Параметр(14)" <> "Пользователи" + И "#Параметр(14)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(14)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(14)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4522,7 +3376,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(16)" = "" И "#Параметр(17)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(16)" = "Условие" Или "#Параметр(16)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(16)" = "Условие" Или "#Параметр(16)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(17) ) #ИначеЕсли "#Параметр(16)" = "ПравоЧтения" Или "#Параметр(16)" = "ПравоИзменения" #Тогда @@ -4538,6 +3392,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(16)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(17) + #Если Не "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(16)" = "НастройкиПрав" #Тогда И ( @@ -4626,7 +3494,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(17) - #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" + И "#Параметр(16)" <> "Пользователи" + И "#Параметр(16)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(16)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(16)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4679,7 +3549,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -4695,6 +3565,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда И ( @@ -4783,7 +3667,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(19) - #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4836,7 +3722,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(20)" = "" И "#Параметр(21)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(20)" = "Условие" Или "#Параметр(20)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(20)" = "Условие" Или "#Параметр(20)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(21) ) #ИначеЕсли "#Параметр(20)" = "ПравоЧтения" Или "#Параметр(20)" = "ПравоИзменения" #Тогда @@ -4852,6 +3738,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(20)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(21) + #Если Не "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(20)" = "НастройкиПрав" #Тогда И ( @@ -4940,7 +3840,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(21) - #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" + И "#Параметр(20)" <> "Пользователи" + И "#Параметр(20)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(20)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(20)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4993,7 +3895,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(22)" = "" И "#Параметр(23)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(22)" = "Условие" Или "#Параметр(22)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(22)" = "Условие" Или "#Параметр(22)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(23) ) #ИначеЕсли "#Параметр(22)" = "ПравоЧтения" Или "#Параметр(22)" = "ПравоИзменения" #Тогда @@ -5009,6 +3911,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(22)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(23) + #Если Не "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(22)" = "НастройкиПрав" #Тогда И ( @@ -5097,7 +4013,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(23) - #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" + И "#Параметр(22)" <> "Пользователи" + И "#Параметр(22)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(22)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(22)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5150,7 +4068,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -5166,6 +4084,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда И ( @@ -5254,7 +4186,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(25) - #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5307,7 +4241,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(26)" = "" И "#Параметр(27)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(26)" = "Условие" Или "#Параметр(26)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(26)" = "Условие" Или "#Параметр(26)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(27) ) #ИначеЕсли "#Параметр(26)" = "ПравоЧтения" Или "#Параметр(26)" = "ПравоИзменения" #Тогда @@ -5323,6 +4257,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(26)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(27) + #Если Не "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(26)" = "НастройкиПрав" #Тогда И ( @@ -5411,7 +4359,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(27) - #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" + И "#Параметр(26)" <> "Пользователи" + И "#Параметр(26)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(26)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(26)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5464,7 +4414,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(28)" = "" И "#Параметр(29)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(28)" = "Условие" Или "#Параметр(28)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(28)" = "Условие" Или "#Параметр(28)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(29) ) #ИначеЕсли "#Параметр(28)" = "ПравоЧтения" Или "#Параметр(28)" = "ПравоИзменения" #Тогда @@ -5480,6 +4430,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(28)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(29) + #Если Не "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(28)" = "НастройкиПрав" #Тогда И ( @@ -5568,7 +4532,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(29) - #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" + И "#Параметр(28)" <> "Пользователи" + И "#Параметр(28)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(28)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(28)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5621,7 +4587,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -5637,6 +4603,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда И ( @@ -5725,7 +4705,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(31) - #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5778,7 +4760,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(32)" = "" И "#Параметр(33)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(32)" = "Условие" Или "#Параметр(32)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(32)" = "Условие" Или "#Параметр(32)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(33) ) #ИначеЕсли "#Параметр(32)" = "ПравоЧтения" Или "#Параметр(32)" = "ПравоИзменения" #Тогда @@ -5794,6 +4776,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(32)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(33) + #Если Не "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(32)" = "НастройкиПрав" #Тогда И ( @@ -5882,7 +4878,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(33) - #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" + И "#Параметр(32)" <> "Пользователи" + И "#Параметр(32)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(32)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(32)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5935,7 +4933,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(34)" = "" И "#Параметр(35)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(34)" = "Условие" Или "#Параметр(34)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(34)" = "Условие" Или "#Параметр(34)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(35) ) #ИначеЕсли "#Параметр(34)" = "ПравоЧтения" Или "#Параметр(34)" = "ПравоИзменения" #Тогда @@ -5951,6 +4949,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(34)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(35) + #Если Не "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(34)" = "НастройкиПрав" #Тогда И ( @@ -6039,7 +5051,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(35) - #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" + И "#Параметр(34)" <> "Пользователи" + И "#Параметр(34)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(34)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(34)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" diff --git a/SSL/src/Roles/ВыводНаПринтерФайлБуферОбмена/Rights.rights b/SSL/src/Roles/ВыводНаПринтерФайлБуферОбмена/Rights.rights index 400037d01..1c4a2c80a 100644 --- a/SSL/src/Roles/ВыводНаПринтерФайлБуферОбмена/Rights.rights +++ b/SSL/src/Roles/ВыводНаПринтерФайлБуферОбмена/Rights.rights @@ -3,281 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -289,1535 +14,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1829,1194 +25,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - Configuration.БиблиотекаСтандартныхПодсистем @@ -3048,5836 +56,6 @@ true - - Catalog.ШаблоныАнкет.Attribute.Вступление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8889,3141 +67,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -12035,3898 +78,4 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ВыполнениеСинхронизацииДанных/Rights.rights b/SSL/src/Roles/ВыполнениеСинхронизацииДанных/Rights.rights index 7c4edbff6..ed0aad726 100644 --- a/SSL/src/Roles/ВыполнениеСинхронизацииДанных/Rights.rights +++ b/SSL/src/Roles/ВыполнениеСинхронизацииДанных/Rights.rights @@ -45,28 +45,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - WebService.Exchange.Operation.PutFileIntoStorage @@ -81,83 +59,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - CommonCommand.СценарииСинхронизации @@ -165,28 +66,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - WebService.Exchange_2_0_1_6.Operation.GetFilePart @@ -194,6 +73,13 @@ true + + DataProcessor.ВыгрузкаЗагрузкаEnterpriseData.Command.ЗагрузкаДанныхEnterpriseData + + View + true + + WebService.Exchange.Operation.GetFileFromStorage @@ -220,18 +106,7 @@ - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - CommonCommand.СинхронизацияДанных + CommonCommand.НастройкиСинхронизацииДанных View true @@ -245,21 +120,21 @@ - WebService.Exchange.Operation.FileExists + DataProcessor.ВыгрузкаЗагрузкаEnterpriseData Use true - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения View - false + true + + + WebService.Exchange.Operation.FileExists - Edit - false + Use + true @@ -284,50 +159,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - DataProcessor.ИнтерактивноеИзменениеВыгрузки @@ -353,61 +184,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - WebService.EnterpriseDataUpload_1_0_1_1.Operation.PutData @@ -415,17 +191,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - WebService.EnterpriseDataExchange_1_0_1_1.Operation.GetDataPart @@ -440,39 +205,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - InformationRegister.СостоянияОбменовДанными @@ -484,39 +216,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - CommonCommand.СобытияОтправки @@ -538,17 +237,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - WebService.EnterpriseDataUpload_1_0_1_1.Operation.TestConnection @@ -563,72 +251,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - WebService.Exchange_2_0_1_6.Operation.PutFileIntoStorage @@ -650,28 +272,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - WebService.Exchange_2_0_1_6.Operation.GetContinuousOperationStatus @@ -686,17 +286,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - WebService.EnterpriseDataUpload_1_0_1_1.Operation.PutDataActionResult @@ -704,72 +293,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - WebService.Exchange_2_0_1_6.Operation.PutFilePart @@ -788,39 +311,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - WebService.EnterpriseDataUpload_1_0_1_1.Operation.Ping @@ -835,17 +325,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - InformationRegister.НастройкиТранспортаОбмена @@ -857,17 +336,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - InformationRegister.ПравилаДляОбменаДанными @@ -879,17 +347,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - WebService.EnterpriseDataUpload_1_0_1_1.Operation.PutFilePart @@ -897,39 +354,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - InformationRegister.РезультатыОбменаДанными @@ -963,17 +387,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - WebService.Exchange_2_0_1_6.Operation.TestConnection @@ -995,17 +408,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - DataProcessor.УниверсальныйОбменДаннымиXML @@ -1013,17 +415,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - WebService.Exchange.Operation.Download @@ -1031,17 +422,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - InformationRegister.СостоянияУспешныхОбменовДанными @@ -1067,39 +447,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - WebService.EnterpriseDataExchange_1_0_1_1.Operation.PrepareDataActionResult @@ -1107,17 +454,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - CommonCommand.ПредупрежденияПриСинхронизацииДанных @@ -1125,17 +461,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - WebService.EnterpriseDataExchange_1_0_1_1.Operation.Ping @@ -1143,17 +468,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - WebService.EnterpriseDataExchange_1_0_1_1.Operation.PutData @@ -1168,28 +482,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - WebService.Exchange_2_0_1_6.Operation.PrepareGetFile @@ -1204,39 +496,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - CommonCommand.СобытияПолучения diff --git a/SSL/src/Roles/ДобавлениеИзменениеВариантовОтчетов/Rights.rights b/SSL/src/Roles/ДобавлениеИзменениеВариантовОтчетов/Rights.rights index b22576cf3..d96881751 100644 --- a/SSL/src/Roles/ДобавлениеИзменениеВариантовОтчетов/Rights.rights +++ b/SSL/src/Roles/ДобавлениеИзменениеВариантовОтчетов/Rights.rights @@ -3,17 +3,6 @@ false true false - - Catalog.ПредопределенныеВариантыОтчетовРасширений.Attribute.КлючВарианта - - View - false - - - Edit - false - - Catalog.ВариантыОтчетов @@ -53,49 +42,6 @@ true - - CommonForm.ПанельОтчетов - - View - true - - - - InformationRegister.ПредопределенныеВариантыОтчетовВерсийРасширений.Dimension.Отчет - - Edit - false - - - - CommonForm.ФормаВариантаОтчета - - View - true - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.Attribute.ХешНастроек - - View - false - - - Edit - false - - Catalog.ВариантыОтчетов.Command.Открыть @@ -103,217 +49,6 @@ true - - InformationRegister.ПредопределенныеВариантыОтчетовВерсийРасширений - - Read - true - - - View - true - - - - InformationRegister.ПредопределенныеВариантыОтчетовВерсийРасширений.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ПредопределенныеВариантыОтчетовВерсийРасширений.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ПредопределенныеВариантыОтчетовВерсийРасширений.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ПредопределенныеВариантыОтчетовВерсийРасширений.StandardAttribute.Period - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений - - Read - true - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.Attribute.НаименованияПараметровИОтборов - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.TabularSection.Размещение.Attribute.Важный - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.TabularSection.Размещение.Attribute.Подсистема - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение.Attribute.Подсистема - - View - false - - - Edit - false - - Catalog.ПользовательскиеНастройкиОтчетов @@ -353,31 +88,6 @@ true - - CommonForm.ФормаНастроекОтчета - - View - true - - - - CommonForm.ВыборПроизвольногоПериода - - View - true - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - CommonForm.ОтправкаТабличныхДокументовПоПочте @@ -386,202 +96,12 @@ - Catalog.ПредопределенныеВариантыОтчетовРасширений.Attribute.Отчет - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.TabularSection.Размещение - - View - false - - - Edit - false - - - - CommonForm.ФормаОтчета + CommonCommand.ПанельОтчетовАдминистрирование View true - - Catalog.ПредопределенныеВариантыОтчетовРасширений.Attribute.Включен - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов - - Read - true - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.ХешНастроек - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.Отчет - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.КлючЗамеров - - View - false - - - Edit - false - - - - InformationRegister.ПредопределенныеВариантыОтчетовВерсийРасширений.Dimension.ВерсияРасширений - - Edit - false - - Catalog.ВариантыОтчетов.Command.Изменить @@ -589,17 +109,6 @@ true - - Catalog.ПредопределенныеВариантыОтчетовРасширений.TabularSection.Размещение.Attribute.СмТакже - - View - false - - - Edit - false - - InformationRegister.НастройкиВариантовОтчетов @@ -623,42 +132,6 @@ true - - InformationRegister.ПредопределенныеВариантыОтчетовВерсийРасширений.Dimension.КлючВарианта - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.ПредопределенныеВариантыОтчетовВерсийРасширений.Dimension.Вариант - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение.Attribute.СмТакже - - View - false - - - Edit - false - - Catalog.ВариантыОтчетов.Command.РазместитьВРазделах @@ -666,50 +139,6 @@ true - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.НаименованияПолей - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.Attribute.КлючЗамеров - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.Включен - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.Attribute.НаименованияПолей - - View - false - - - Edit - false - - Catalog.ВариантыОтчетов.Command.СброситьНастройкиРазмещения @@ -724,70 +153,4 @@ true - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение.Attribute.Важный - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.НаименованияПараметровИОтборов - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.Attribute.ГруппироватьПоОтчету - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.КлючевыеСлова - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.ГруппироватьПоОтчету - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений.Attribute.КлючевыеСлова - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ДобавлениеИзменениеВзаимодействий/Rights.rights b/SSL/src/Roles/ДобавлениеИзменениеВзаимодействий/Rights.rights index ac8f72f03..065dd8c2f 100644 --- a/SSL/src/Roles/ДобавлениеИзменениеВзаимодействий/Rights.rights +++ b/SSL/src/Roles/ДобавлениеИзменениеВзаимодействий/Rights.rights @@ -3,13 +3,6 @@ false true false - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ФорматПодписиДляНовыхСообщений - - Edit - false - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы @@ -67,13 +60,6 @@ true - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ФорматПодписиПриОтветеПересылке - - Edit - false - - Catalog.ПапкиЭлектронныхПисем @@ -128,39 +114,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - InformationRegister.Удалить_АктивныеПредметыВзаимодействий.Dimension.Предмет - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - InformationRegister.НепринятыеКОбработкеПочтовымСерверомИсходящиеПисьма @@ -179,17 +132,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты @@ -206,99 +148,6 @@ true - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.StandardAttribute.Active - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.StandardAttribute.Period - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПодписьДляНовыхСообщенийПростойТекст - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПодписьДляНовыхСообщенийФорматированныйДокумент - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПомещатьПисьмоВПапкуПисьмаОснования - - Edit - false - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы @@ -356,6 +205,13 @@ true + + DocumentJournal.Взаимодействия.Command.ПозвонитьПоПредмету + + View + true + + DocumentJournal.Взаимодействия.Command.ВзаимодействияПоПредмету @@ -370,17 +226,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Command.Настройки @@ -395,28 +240,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - Document.ТелефонныйЗвонок @@ -500,13 +323,6 @@ true - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Dimension.УчетнаяЗаписьЭлектроннойПочты - - Edit - false - - Document.ЭлектронноеПисьмоВходящее.Command.Переслать @@ -515,10 +331,10 @@ - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ОтветственныйЗаВедениеПапок + DocumentJournal.Взаимодействия.Command.ЗапланироватьВзаимодействиеПоПредмету - Edit - false + View + true @@ -722,17 +538,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - InformationRegister.ПредметыПапкиВзаимодействий @@ -762,17 +567,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - Document.СообщениеSMS @@ -845,101 +639,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ВключатьПодписьПриОтветеПересылке - - Edit - false - - DocumentJournal.Взаимодействия.Command.ПечатьЭлектронногоПисьма @@ -948,7 +647,7 @@ - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты + InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений.Dimension.УчетнаяЗапись View false @@ -958,6 +657,13 @@ false + + DocumentJournal.Взаимодействия.Command.НаписатьЭлектронноеПисьмоПоПредмету + + View + true + + Catalog.СтроковыеКонтактыВзаимодействий @@ -973,50 +679,6 @@ true - - InformationRegister.Удалить_АктивныеПредметыВзаимодействий.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.Удалить_АктивныеПредметыВзаимодействий.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.Удалить_АктивныеПредметыВзаимодействий.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.Удалить_АктивныеПредметыВзаимодействий.StandardAttribute.Period - - View - false - - - Edit - false - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы @@ -1092,35 +754,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПодписьПриОтветеПересылкеФорматированныйДокумент - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Document.ЭлектронноеПисьмоВходящее.Command.Ответить @@ -1250,53 +883,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПодписьПриОтветеПересылкеПростойТекст - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ОтветственныйЗаОбработкуПисем - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - InformationRegister.СостоянияПапокПисем @@ -1309,14 +895,7 @@ - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПерсональнаяУчетнаяЗапись - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты + InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений.StandardAttribute.Active View false @@ -1327,7 +906,29 @@ - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере + InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений.StandardAttribute.LineNumber + + View + false + + + Edit + false + + + + InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений.StandardAttribute.Recorder + + View + false + + + Edit + false + + + + InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений.StandardAttribute.Period View false @@ -1402,7 +1003,7 @@ - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя + InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений.Resource.ДатаЗагрузкиПисем View false @@ -1419,13 +1020,6 @@ true - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ВключатьПодписьДляНовыхСообщений - - Edit - false - - Catalog.ВстречаПрисоединенныеФайлы @@ -1544,50 +1138,6 @@ true - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - InformationRegister.КонтактыВзаимодействий @@ -1600,18 +1150,14 @@ - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты + Document.ЭлектронноеПисьмоВходящее.Command.ОтветитьВсем View - false - - - Edit - false + true - Document.ЭлектронноеПисьмоВходящее.Command.ОтветитьВсем + DocumentJournal.Взаимодействия.Command.ЗапланироватьВстречуПоПредмету View true @@ -1693,10 +1239,10 @@ - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.УдалятьПисьмаПослеОтправки + DocumentJournal.Взаимодействия.Command.НаписатьSMSПоПредмету - Edit - false + View + true @@ -1724,17 +1270,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - ПоЗначениям // ПоЗначениям(Таблица, -, Модификатор, В1,П1, В2,П2, ..., В(n), П(n)). @@ -1749,13 +1284,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. // Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", // выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // П(n) - Поле проверяемого значения, кроме случая В(n) = "Условие" (или ""). // Примечение: максимальное количество одновременно проверяемых значений полей можно увеличить, изменив шаблон, но // необходимо будет указывать все параметры шаблона, т.е. указывать пустые строки, когда количество полей меньше максимального. @@ -1789,73 +1326,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(4)" = "" И "#Параметр(5)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(4),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(4),")) И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(8)" = "" И "#Параметр(9)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(8),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(8),")) И ("#Параметр(10)" = "" И "#Параметр(11)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(10),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(10),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(14)" = "" И "#Параметр(15)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(14),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(14),")) И ("#Параметр(16)" = "" И "#Параметр(17)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(16),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(16),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(20)" = "" И "#Параметр(21)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(20),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(20),")) И ("#Параметр(22)" = "" И "#Параметр(23)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(22),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(22),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(26)" = "" И "#Параметр(27)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(26),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(26),")) И ("#Параметр(28)" = "" И "#Параметр(29)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(28),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(28),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(32)" = "" И "#Параметр(33)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(32),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(32),")) И ("#Параметр(34)" = "" И "#Параметр(35)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(34),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(34),")) - ) #Тогда + ) #Тогда Т ГДЕ // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -1900,7 +1469,7 @@ ( // Поиск значений заданных полей в разрешенных значениях групп доступа (пользователей). //// Проверка значения поля группы параметров 1. -#Если "#Параметр(4)" = "Условие" Или "#Параметр(4)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(4)" = "Условие" Или "#Параметр(4)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(5) ) #ИначеЕсли "#Параметр(4)" = "ПравоЧтения" Или "#Параметр(4)" = "ПравоИзменения" #Тогда @@ -1916,6 +1485,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(4)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(5) + #Если Не "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(4)" = "НастройкиПрав" #Тогда ( @@ -2004,7 +1587,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(5) - #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" + И "#Параметр(4)" <> "Пользователи" + И "#Параметр(4)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(4)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(4)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2059,7 +1644,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(6)" = "" И "#Параметр(7)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -2075,6 +1660,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда И ( @@ -2163,7 +1762,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(7) - #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2216,7 +1817,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(8)" = "" И "#Параметр(9)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(8)" = "Условие" Или "#Параметр(8)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(8)" = "Условие" Или "#Параметр(8)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(9) ) #ИначеЕсли "#Параметр(8)" = "ПравоЧтения" Или "#Параметр(8)" = "ПравоИзменения" #Тогда @@ -2232,6 +1833,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(8)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(9) + #Если Не "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(8)" = "НастройкиПрав" #Тогда И ( @@ -2320,7 +1935,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(9) - #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" + И "#Параметр(8)" <> "Пользователи" + И "#Параметр(8)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(8)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(8)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2373,7 +1990,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(10)" = "" И "#Параметр(11)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(10)" = "Условие" Или "#Параметр(10)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(10)" = "Условие" Или "#Параметр(10)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(11) ) #ИначеЕсли "#Параметр(10)" = "ПравоЧтения" Или "#Параметр(10)" = "ПравоИзменения" #Тогда @@ -2389,6 +2006,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(10)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(11) + #Если Не "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(10)" = "НастройкиПрав" #Тогда И ( @@ -2477,7 +2108,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(11) - #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" + И "#Параметр(10)" <> "Пользователи" + И "#Параметр(10)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(10)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(10)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2530,7 +2163,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -2546,6 +2179,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда И ( @@ -2634,7 +2281,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(13) - #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2687,7 +2336,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(14)" = "" И "#Параметр(15)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(14)" = "Условие" Или "#Параметр(14)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(14)" = "Условие" Или "#Параметр(14)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(15) ) #ИначеЕсли "#Параметр(14)" = "ПравоЧтения" Или "#Параметр(14)" = "ПравоИзменения" #Тогда @@ -2703,6 +2352,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(14)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(15) + #Если Не "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(14)" = "НастройкиПрав" #Тогда И ( @@ -2791,7 +2454,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(15) - #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" + И "#Параметр(14)" <> "Пользователи" + И "#Параметр(14)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(14)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(14)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2844,7 +2509,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(16)" = "" И "#Параметр(17)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(16)" = "Условие" Или "#Параметр(16)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(16)" = "Условие" Или "#Параметр(16)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(17) ) #ИначеЕсли "#Параметр(16)" = "ПравоЧтения" Или "#Параметр(16)" = "ПравоИзменения" #Тогда @@ -2860,6 +2525,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(16)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(17) + #Если Не "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(16)" = "НастройкиПрав" #Тогда И ( @@ -2948,7 +2627,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(17) - #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" + И "#Параметр(16)" <> "Пользователи" + И "#Параметр(16)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(16)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(16)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3001,7 +2682,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -3017,6 +2698,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда И ( @@ -3105,7 +2800,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(19) - #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3158,7 +2855,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(20)" = "" И "#Параметр(21)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(20)" = "Условие" Или "#Параметр(20)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(20)" = "Условие" Или "#Параметр(20)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(21) ) #ИначеЕсли "#Параметр(20)" = "ПравоЧтения" Или "#Параметр(20)" = "ПравоИзменения" #Тогда @@ -3174,6 +2871,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(20)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(21) + #Если Не "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(20)" = "НастройкиПрав" #Тогда И ( @@ -3262,7 +2973,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(21) - #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" + И "#Параметр(20)" <> "Пользователи" + И "#Параметр(20)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(20)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(20)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3315,7 +3028,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(22)" = "" И "#Параметр(23)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(22)" = "Условие" Или "#Параметр(22)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(22)" = "Условие" Или "#Параметр(22)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(23) ) #ИначеЕсли "#Параметр(22)" = "ПравоЧтения" Или "#Параметр(22)" = "ПравоИзменения" #Тогда @@ -3331,6 +3044,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(22)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(23) + #Если Не "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(22)" = "НастройкиПрав" #Тогда И ( @@ -3419,7 +3146,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(23) - #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" + И "#Параметр(22)" <> "Пользователи" + И "#Параметр(22)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(22)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(22)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3472,7 +3201,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -3488,6 +3217,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда И ( @@ -3576,7 +3319,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(25) - #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3629,7 +3374,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(26)" = "" И "#Параметр(27)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(26)" = "Условие" Или "#Параметр(26)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(26)" = "Условие" Или "#Параметр(26)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(27) ) #ИначеЕсли "#Параметр(26)" = "ПравоЧтения" Или "#Параметр(26)" = "ПравоИзменения" #Тогда @@ -3645,6 +3390,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(26)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(27) + #Если Не "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(26)" = "НастройкиПрав" #Тогда И ( @@ -3733,7 +3492,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(27) - #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" + И "#Параметр(26)" <> "Пользователи" + И "#Параметр(26)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(26)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(26)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3786,7 +3547,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(28)" = "" И "#Параметр(29)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(28)" = "Условие" Или "#Параметр(28)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(28)" = "Условие" Или "#Параметр(28)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(29) ) #ИначеЕсли "#Параметр(28)" = "ПравоЧтения" Или "#Параметр(28)" = "ПравоИзменения" #Тогда @@ -3802,6 +3563,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(28)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(29) + #Если Не "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(28)" = "НастройкиПрав" #Тогда И ( @@ -3890,7 +3665,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(29) - #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" + И "#Параметр(28)" <> "Пользователи" + И "#Параметр(28)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(28)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(28)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3943,7 +3720,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -3959,6 +3736,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда И ( @@ -4047,7 +3838,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(31) - #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4100,7 +3893,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(32)" = "" И "#Параметр(33)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(32)" = "Условие" Или "#Параметр(32)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(32)" = "Условие" Или "#Параметр(32)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(33) ) #ИначеЕсли "#Параметр(32)" = "ПравоЧтения" Или "#Параметр(32)" = "ПравоИзменения" #Тогда @@ -4116,6 +3909,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(32)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(33) + #Если Не "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(32)" = "НастройкиПрав" #Тогда И ( @@ -4204,7 +4011,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(33) - #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" + И "#Параметр(32)" <> "Пользователи" + И "#Параметр(32)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(32)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(32)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4257,7 +4066,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(34)" = "" И "#Параметр(35)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(34)" = "Условие" Или "#Параметр(34)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(34)" = "Условие" Или "#Параметр(34)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(35) ) #ИначеЕсли "#Параметр(34)" = "ПравоЧтения" Или "#Параметр(34)" = "ПравоИзменения" #Тогда @@ -4273,6 +4082,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(34)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(35) + #Если Не "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(34)" = "НастройкиПрав" #Тогда И ( @@ -4361,7 +4184,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(35) - #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" + И "#Параметр(34)" <> "Пользователи" + И "#Параметр(34)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(34)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(34)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4449,13 +4274,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Объект", "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Объект", "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), Тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. -// Когда В(n) = "ПравоЧтения" ИЛИ "ПравоИзменения", -// выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", +// выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // Когда В(n) = "Объект" (или " "), то // когда есть запись зависимости прав в регистре сведений ЗависимостиПравДоступа тогда // выполняется проверка права чтения Т.П(n) и наборов значений доступа @@ -4506,73 +4333,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(9)" = "" И "#Параметр(10)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(9),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(9),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(15)" = "" И "#Параметр(16)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(15),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(15),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(21)" = "" И "#Параметр(22)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(21),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(21),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(27)" = "" И "#Параметр(28)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(27),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(27),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(33)" = "" И "#Параметр(34)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(33),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(33),")) И ("#Параметр(36)" = "" И "#Параметр(37)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(36),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(36),")) И ("#Параметр(39)" = "" И "#Параметр(40)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(39),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(39),")) И ("#Параметр(42)" = "" И "#Параметр(43)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(42),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(42),")) И ("#Параметр(45)" = "" И "#Параметр(46)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(45),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(45),")) И ("#Параметр(48)" = "" И "#Параметр(49)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(48),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(48),")) И ("#Параметр(51)" = "" И "#Параметр(52)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(51),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(51),")) - ) #Тогда + ) #Тогда Т ИЗ Т // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -4624,7 +4483,7 @@ #Параметр(5) // [([(][(]...] 0-n открывающихся скобок. //// Проверка значения поля группы параметров 1. -#Если "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -4640,6 +4499,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(6)" = "Объект" Или "#Параметр(6)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -4671,6 +4542,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -5028,8 +4900,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда ( @@ -5118,7 +4993,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(7) - #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5176,7 +5053,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(9)" = "" И "#Параметр(10)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(9)" = "Условие" Или "#Параметр(9)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(9)" = "Условие" Или "#Параметр(9)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(10) ) #ИначеЕсли "#Параметр(9)" = "ПравоЧтения" Или "#Параметр(9)" = "ПравоИзменения" #Тогда @@ -5192,6 +5069,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(9)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(10) + #Если Не "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(9)" = "Объект" Или "#Параметр(9)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -5223,6 +5112,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -5580,8 +5470,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(9)" = "НастройкиПрав" #Тогда ( @@ -5670,7 +5563,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(10) - #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" + И "#Параметр(9)" <> "Пользователи" + И "#Параметр(9)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(9)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(9)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5728,7 +5623,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -5744,6 +5639,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(12)" = "Объект" Или "#Параметр(12)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -5775,6 +5682,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -6132,8 +6040,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда ( @@ -6222,7 +6133,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(13) - #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6280,7 +6193,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(15)" = "" И "#Параметр(16)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(15)" = "Условие" Или "#Параметр(15)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(15)" = "Условие" Или "#Параметр(15)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(16) ) #ИначеЕсли "#Параметр(15)" = "ПравоЧтения" Или "#Параметр(15)" = "ПравоИзменения" #Тогда @@ -6296,6 +6209,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(15)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(16) + #Если Не "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(15)" = "Объект" Или "#Параметр(15)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -6327,6 +6252,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -6684,8 +6610,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(15)" = "НастройкиПрав" #Тогда ( @@ -6774,7 +6703,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(16) - #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" + И "#Параметр(15)" <> "Пользователи" + И "#Параметр(15)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(15)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(15)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6832,7 +6763,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -6848,6 +6779,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(18)" = "Объект" Или "#Параметр(18)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -6879,6 +6822,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -7236,8 +7180,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда ( @@ -7326,7 +7273,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(19) - #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -7384,7 +7333,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(21)" = "" И "#Параметр(22)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(21)" = "Условие" Или "#Параметр(21)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(21)" = "Условие" Или "#Параметр(21)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(22) ) #ИначеЕсли "#Параметр(21)" = "ПравоЧтения" Или "#Параметр(21)" = "ПравоИзменения" #Тогда @@ -7400,6 +7349,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(21)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(22) + #Если Не "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(21)" = "Объект" Или "#Параметр(21)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -7431,6 +7392,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -7788,8 +7750,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(21)" = "НастройкиПрав" #Тогда ( @@ -7878,7 +7843,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(22) - #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" + И "#Параметр(21)" <> "Пользователи" + И "#Параметр(21)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(21)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(21)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -7936,7 +7903,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -7952,6 +7919,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(24)" = "Объект" Или "#Параметр(24)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -7983,6 +7962,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -8340,8 +8320,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда ( @@ -8430,7 +8413,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(25) - #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8488,7 +8473,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(27)" = "" И "#Параметр(28)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(27)" = "Условие" Или "#Параметр(27)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(27)" = "Условие" Или "#Параметр(27)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(28) ) #ИначеЕсли "#Параметр(27)" = "ПравоЧтения" Или "#Параметр(27)" = "ПравоИзменения" #Тогда @@ -8504,6 +8489,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(27)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(28) + #Если Не "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(27)" = "Объект" Или "#Параметр(27)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -8535,6 +8532,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -8892,8 +8890,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(27)" = "НастройкиПрав" #Тогда ( @@ -8982,7 +8983,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(28) - #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" + И "#Параметр(27)" <> "Пользователи" + И "#Параметр(27)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(27)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(27)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -9040,7 +9043,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -9056,6 +9059,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(30)" = "Объект" Или "#Параметр(30)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -9087,6 +9102,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -9444,8 +9460,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда ( @@ -9534,7 +9553,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(31) - #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -9592,7 +9613,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(33)" = "" И "#Параметр(34)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(33)" = "Условие" Или "#Параметр(33)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(33)" = "Условие" Или "#Параметр(33)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(34) ) #ИначеЕсли "#Параметр(33)" = "ПравоЧтения" Или "#Параметр(33)" = "ПравоИзменения" #Тогда @@ -9608,6 +9629,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(33)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(34) + #Если Не "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(33)" = "Объект" Или "#Параметр(33)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -9639,6 +9672,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -9996,8 +10030,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(33)" = "НастройкиПрав" #Тогда ( @@ -10086,7 +10123,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(34) - #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" + И "#Параметр(33)" <> "Пользователи" + И "#Параметр(33)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(33)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(33)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -10144,7 +10183,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(36)" = "" И "#Параметр(37)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(36)" = "Условие" Или "#Параметр(36)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(36)" = "Условие" Или "#Параметр(36)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(37) ) #ИначеЕсли "#Параметр(36)" = "ПравоЧтения" Или "#Параметр(36)" = "ПравоИзменения" #Тогда @@ -10160,6 +10199,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(36)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(37) + #Если Не "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(36)" = "Объект" Или "#Параметр(36)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -10191,6 +10242,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -10548,8 +10600,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(36)" = "НастройкиПрав" #Тогда ( @@ -10638,7 +10693,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(37) - #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" + И "#Параметр(36)" <> "Пользователи" + И "#Параметр(36)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(36)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(36)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -10696,7 +10753,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(39)" = "" И "#Параметр(40)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(39)" = "Условие" Или "#Параметр(39)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(39)" = "Условие" Или "#Параметр(39)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(40) ) #ИначеЕсли "#Параметр(39)" = "ПравоЧтения" Или "#Параметр(39)" = "ПравоИзменения" #Тогда @@ -10712,6 +10769,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(39)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(40) + #Если Не "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(39)" = "Объект" Или "#Параметр(39)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -10743,6 +10812,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -11100,8 +11170,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(39)" = "НастройкиПрав" #Тогда ( @@ -11190,7 +11263,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(40) - #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" + И "#Параметр(39)" <> "Пользователи" + И "#Параметр(39)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(39)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(39)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -11248,7 +11323,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(42)" = "" И "#Параметр(43)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(42)" = "Условие" Или "#Параметр(42)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(42)" = "Условие" Или "#Параметр(42)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(43) ) #ИначеЕсли "#Параметр(42)" = "ПравоЧтения" Или "#Параметр(42)" = "ПравоИзменения" #Тогда @@ -11264,6 +11339,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(42)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(43) + #Если Не "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(42)" = "Объект" Или "#Параметр(42)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -11295,6 +11382,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -11652,8 +11740,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(42)" = "НастройкиПрав" #Тогда ( @@ -11742,7 +11833,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(43) - #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" + И "#Параметр(42)" <> "Пользователи" + И "#Параметр(42)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(42)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(42)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -11800,7 +11893,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(45)" = "" И "#Параметр(46)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(45)" = "Условие" Или "#Параметр(45)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(45)" = "Условие" Или "#Параметр(45)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(46) ) #ИначеЕсли "#Параметр(45)" = "ПравоЧтения" Или "#Параметр(45)" = "ПравоИзменения" #Тогда @@ -11816,6 +11909,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(45)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(46) + #Если Не "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(45)" = "Объект" Или "#Параметр(45)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -11847,6 +11952,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -12204,8 +12310,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(45)" = "НастройкиПрав" #Тогда ( @@ -12294,7 +12403,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(46) - #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" + И "#Параметр(45)" <> "Пользователи" + И "#Параметр(45)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(45)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(45)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -12352,7 +12463,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(48)" = "" И "#Параметр(49)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(48)" = "Условие" Или "#Параметр(48)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(48)" = "Условие" Или "#Параметр(48)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(49) ) #ИначеЕсли "#Параметр(48)" = "ПравоЧтения" Или "#Параметр(48)" = "ПравоИзменения" #Тогда @@ -12368,6 +12479,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(48)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(49) + #Если Не "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(48)" = "Объект" Или "#Параметр(48)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -12399,6 +12522,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -12756,8 +12880,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(48)" = "НастройкиПрав" #Тогда ( @@ -12846,7 +12973,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(49) - #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" + И "#Параметр(48)" <> "Пользователи" + И "#Параметр(48)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(48)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(48)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -12904,7 +13033,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(51)" = "" И "#Параметр(52)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(51)" = "Условие" Или "#Параметр(51)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(51)" = "Условие" Или "#Параметр(51)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(52) ) #ИначеЕсли "#Параметр(51)" = "ПравоЧтения" Или "#Параметр(51)" = "ПравоИзменения" #Тогда @@ -12920,6 +13049,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(51)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(52) + #Если Не "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(51)" = "Объект" Или "#Параметр(51)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -12951,6 +13092,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -13308,8 +13450,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(51)" = "НастройкиПрав" #Тогда ( @@ -13398,7 +13543,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(52) - #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" + И "#Параметр(51)" <> "Пользователи" + И "#Параметр(51)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(51)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(51)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" diff --git a/SSL/src/Roles/ДобавлениеИзменениеДатЗапретаИзменения/ДобавлениеИзменениеДатЗапретаИзменения.mdo b/SSL/src/Roles/ДобавлениеИзменениеДатЗапретаИзменения/ДобавлениеИзменениеДатЗапретаИзменения.mdo index a1acbf5c2..cd9f9cf39 100644 --- a/SSL/src/Roles/ДобавлениеИзменениеДатЗапретаИзменения/ДобавлениеИзменениеДатЗапретаИзменения.mdo +++ b/SSL/src/Roles/ДобавлениеИзменениеДатЗапретаИзменения/ДобавлениеИзменениеДатЗапретаИзменения.mdo @@ -3,6 +3,6 @@ ДобавлениеИзменениеДатЗапретаИзменения ru - Добавление изменение дат запрета изменения + Добавление и изменение дат запрета изменения diff --git a/SSL/src/Roles/ДобавлениеИзменениеДополнительныхОтчетовИОбработок/Rights.rights b/SSL/src/Roles/ДобавлениеИзменениеДополнительныхОтчетовИОбработок/Rights.rights index 58858c1f7..898d64233 100644 --- a/SSL/src/Roles/ДобавлениеИзменениеДополнительныхОтчетовИОбработок/Rights.rights +++ b/SSL/src/Roles/ДобавлениеИзменениеДополнительныхОтчетовИОбработок/Rights.rights @@ -3,259 +3,6 @@ false true false - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -267,1513 +14,6 @@ false - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1785,5117 +25,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Вступление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - CommonForm.ДлительнаяОперацияДополнительныхОтчетовИОбработок - - View - true - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам @@ -6919,270 +48,6 @@ true - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - CommonCommand.СозданиеСвязанныхОбъектов @@ -7190,215 +55,6 @@ true - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - InformationRegister.НазначениеДополнительныхОбработок @@ -7422,1183 +78,6 @@ true - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8610,468 +89,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - Catalog.ДополнительныеОтчетыИОбработки @@ -9111,2558 +128,6 @@ true - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -11674,105 +139,6 @@ false - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - CommonCommand.ОтчетыОбъекта @@ -11780,1007 +146,6 @@ true - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - CommonForm.ДополнительныеОтчетыИОбработки @@ -12788,149 +153,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - CommonForm.НастройкаМоихОтчетовИОбработок @@ -12938,2503 +160,6 @@ true - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - CommonCommand.ЗаполнениеОбъекта @@ -15442,70 +167,4 @@ true - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ДобавлениеИзменениеЗаданий/Rights.rights b/SSL/src/Roles/ДобавлениеИзменениеЗаданий/Rights.rights index d105ba9a9..fcbfa4251 100644 --- a/SSL/src/Roles/ДобавлениеИзменениеЗаданий/Rights.rights +++ b/SSL/src/Roles/ДобавлениеИзменениеЗаданий/Rights.rights @@ -3,6 +3,29 @@ false true false + + InformationRegister.ПроцессыДляЗапуска + + Read + true + + + Update + true + + + View + true + + + Edit + true + + + TotalsControl + true + + Task.ЗадачаИсполнителя.Command.Выполнено @@ -186,13 +209,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. // Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", // выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // П(n) - Поле проверяемого значения, кроме случая В(n) = "Условие" (или ""). // Примечение: максимальное количество одновременно проверяемых значений полей можно увеличить, изменив шаблон, но // необходимо будет указывать все параметры шаблона, т.е. указывать пустые строки, когда количество полей меньше максимального. @@ -226,73 +251,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(4)" = "" И "#Параметр(5)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(4),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(4),")) И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(8)" = "" И "#Параметр(9)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(8),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(8),")) И ("#Параметр(10)" = "" И "#Параметр(11)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(10),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(10),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(14)" = "" И "#Параметр(15)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(14),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(14),")) И ("#Параметр(16)" = "" И "#Параметр(17)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(16),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(16),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(20)" = "" И "#Параметр(21)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(20),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(20),")) И ("#Параметр(22)" = "" И "#Параметр(23)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(22),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(22),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(26)" = "" И "#Параметр(27)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(26),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(26),")) И ("#Параметр(28)" = "" И "#Параметр(29)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(28),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(28),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(32)" = "" И "#Параметр(33)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(32),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(32),")) И ("#Параметр(34)" = "" И "#Параметр(35)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(34),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(34),")) - ) #Тогда + ) #Тогда Т ГДЕ // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -337,7 +394,7 @@ ( // Поиск значений заданных полей в разрешенных значениях групп доступа (пользователей). //// Проверка значения поля группы параметров 1. -#Если "#Параметр(4)" = "Условие" Или "#Параметр(4)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(4)" = "Условие" Или "#Параметр(4)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(5) ) #ИначеЕсли "#Параметр(4)" = "ПравоЧтения" Или "#Параметр(4)" = "ПравоИзменения" #Тогда @@ -353,6 +410,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(4)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(5) + #Если Не "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(4)" = "НастройкиПрав" #Тогда ( @@ -441,7 +512,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(5) - #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" + И "#Параметр(4)" <> "Пользователи" + И "#Параметр(4)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(4)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(4)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -496,7 +569,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(6)" = "" И "#Параметр(7)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -512,6 +585,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда И ( @@ -600,7 +687,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(7) - #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -653,7 +742,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(8)" = "" И "#Параметр(9)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(8)" = "Условие" Или "#Параметр(8)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(8)" = "Условие" Или "#Параметр(8)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(9) ) #ИначеЕсли "#Параметр(8)" = "ПравоЧтения" Или "#Параметр(8)" = "ПравоИзменения" #Тогда @@ -669,6 +758,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(8)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(9) + #Если Не "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(8)" = "НастройкиПрав" #Тогда И ( @@ -757,7 +860,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(9) - #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" + И "#Параметр(8)" <> "Пользователи" + И "#Параметр(8)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(8)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(8)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -810,7 +915,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(10)" = "" И "#Параметр(11)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(10)" = "Условие" Или "#Параметр(10)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(10)" = "Условие" Или "#Параметр(10)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(11) ) #ИначеЕсли "#Параметр(10)" = "ПравоЧтения" Или "#Параметр(10)" = "ПравоИзменения" #Тогда @@ -826,6 +931,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(10)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(11) + #Если Не "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(10)" = "НастройкиПрав" #Тогда И ( @@ -914,7 +1033,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(11) - #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" + И "#Параметр(10)" <> "Пользователи" + И "#Параметр(10)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(10)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(10)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -967,7 +1088,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -983,6 +1104,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда И ( @@ -1071,7 +1206,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(13) - #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1124,7 +1261,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(14)" = "" И "#Параметр(15)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(14)" = "Условие" Или "#Параметр(14)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(14)" = "Условие" Или "#Параметр(14)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(15) ) #ИначеЕсли "#Параметр(14)" = "ПравоЧтения" Или "#Параметр(14)" = "ПравоИзменения" #Тогда @@ -1140,6 +1277,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(14)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(15) + #Если Не "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(14)" = "НастройкиПрав" #Тогда И ( @@ -1228,7 +1379,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(15) - #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" + И "#Параметр(14)" <> "Пользователи" + И "#Параметр(14)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(14)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(14)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1281,7 +1434,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(16)" = "" И "#Параметр(17)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(16)" = "Условие" Или "#Параметр(16)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(16)" = "Условие" Или "#Параметр(16)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(17) ) #ИначеЕсли "#Параметр(16)" = "ПравоЧтения" Или "#Параметр(16)" = "ПравоИзменения" #Тогда @@ -1297,6 +1450,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(16)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(17) + #Если Не "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(16)" = "НастройкиПрав" #Тогда И ( @@ -1385,7 +1552,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(17) - #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" + И "#Параметр(16)" <> "Пользователи" + И "#Параметр(16)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(16)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(16)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1438,7 +1607,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -1454,6 +1623,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда И ( @@ -1542,7 +1725,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(19) - #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1595,7 +1780,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(20)" = "" И "#Параметр(21)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(20)" = "Условие" Или "#Параметр(20)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(20)" = "Условие" Или "#Параметр(20)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(21) ) #ИначеЕсли "#Параметр(20)" = "ПравоЧтения" Или "#Параметр(20)" = "ПравоИзменения" #Тогда @@ -1611,6 +1796,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(20)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(21) + #Если Не "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(20)" = "НастройкиПрав" #Тогда И ( @@ -1699,7 +1898,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(21) - #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" + И "#Параметр(20)" <> "Пользователи" + И "#Параметр(20)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(20)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(20)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1752,7 +1953,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(22)" = "" И "#Параметр(23)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(22)" = "Условие" Или "#Параметр(22)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(22)" = "Условие" Или "#Параметр(22)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(23) ) #ИначеЕсли "#Параметр(22)" = "ПравоЧтения" Или "#Параметр(22)" = "ПравоИзменения" #Тогда @@ -1768,6 +1969,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(22)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(23) + #Если Не "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(22)" = "НастройкиПрав" #Тогда И ( @@ -1856,7 +2071,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(23) - #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" + И "#Параметр(22)" <> "Пользователи" + И "#Параметр(22)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(22)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(22)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1909,7 +2126,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -1925,6 +2142,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда И ( @@ -2013,7 +2244,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(25) - #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2066,7 +2299,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(26)" = "" И "#Параметр(27)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(26)" = "Условие" Или "#Параметр(26)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(26)" = "Условие" Или "#Параметр(26)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(27) ) #ИначеЕсли "#Параметр(26)" = "ПравоЧтения" Или "#Параметр(26)" = "ПравоИзменения" #Тогда @@ -2082,6 +2315,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(26)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(27) + #Если Не "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(26)" = "НастройкиПрав" #Тогда И ( @@ -2170,7 +2417,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(27) - #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" + И "#Параметр(26)" <> "Пользователи" + И "#Параметр(26)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(26)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(26)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2223,7 +2472,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(28)" = "" И "#Параметр(29)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(28)" = "Условие" Или "#Параметр(28)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(28)" = "Условие" Или "#Параметр(28)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(29) ) #ИначеЕсли "#Параметр(28)" = "ПравоЧтения" Или "#Параметр(28)" = "ПравоИзменения" #Тогда @@ -2239,6 +2488,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(28)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(29) + #Если Не "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(28)" = "НастройкиПрав" #Тогда И ( @@ -2327,7 +2590,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(29) - #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" + И "#Параметр(28)" <> "Пользователи" + И "#Параметр(28)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(28)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(28)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2380,7 +2645,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -2396,6 +2661,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда И ( @@ -2484,7 +2763,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(31) - #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2537,7 +2818,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(32)" = "" И "#Параметр(33)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(32)" = "Условие" Или "#Параметр(32)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(32)" = "Условие" Или "#Параметр(32)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(33) ) #ИначеЕсли "#Параметр(32)" = "ПравоЧтения" Или "#Параметр(32)" = "ПравоИзменения" #Тогда @@ -2553,6 +2834,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(32)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(33) + #Если Не "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(32)" = "НастройкиПрав" #Тогда И ( @@ -2641,7 +2936,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(33) - #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" + И "#Параметр(32)" <> "Пользователи" + И "#Параметр(32)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(32)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(32)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2694,7 +2991,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(34)" = "" И "#Параметр(35)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(34)" = "Условие" Или "#Параметр(34)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(34)" = "Условие" Или "#Параметр(34)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(35) ) #ИначеЕсли "#Параметр(34)" = "ПравоЧтения" Или "#Параметр(34)" = "ПравоИзменения" #Тогда @@ -2710,6 +3007,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(34)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(35) + #Если Не "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(34)" = "НастройкиПрав" #Тогда И ( @@ -2798,7 +3109,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(35) - #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" + И "#Параметр(34)" <> "Пользователи" + И "#Параметр(34)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(34)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(34)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2886,13 +3199,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Объект", "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Объект", "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), Тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. -// Когда В(n) = "ПравоЧтения" ИЛИ "ПравоИзменения", -// выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", +// выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // Когда В(n) = "Объект" (или " "), то // когда есть запись зависимости прав в регистре сведений ЗависимостиПравДоступа тогда // выполняется проверка права чтения Т.П(n) и наборов значений доступа @@ -2943,73 +3258,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(9)" = "" И "#Параметр(10)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(9),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(9),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(15)" = "" И "#Параметр(16)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(15),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(15),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(21)" = "" И "#Параметр(22)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(21),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(21),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(27)" = "" И "#Параметр(28)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(27),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(27),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(33)" = "" И "#Параметр(34)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(33),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(33),")) И ("#Параметр(36)" = "" И "#Параметр(37)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(36),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(36),")) И ("#Параметр(39)" = "" И "#Параметр(40)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(39),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(39),")) И ("#Параметр(42)" = "" И "#Параметр(43)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(42),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(42),")) И ("#Параметр(45)" = "" И "#Параметр(46)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(45),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(45),")) И ("#Параметр(48)" = "" И "#Параметр(49)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(48),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(48),")) И ("#Параметр(51)" = "" И "#Параметр(52)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(51),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(51),")) - ) #Тогда + ) #Тогда Т ИЗ Т // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -3061,7 +3408,7 @@ #Параметр(5) // [([(][(]...] 0-n открывающихся скобок. //// Проверка значения поля группы параметров 1. -#Если "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -3077,6 +3424,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(6)" = "Объект" Или "#Параметр(6)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -3108,6 +3467,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -3465,8 +3825,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда ( @@ -3555,7 +3918,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(7) - #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3613,7 +3978,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(9)" = "" И "#Параметр(10)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(9)" = "Условие" Или "#Параметр(9)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(9)" = "Условие" Или "#Параметр(9)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(10) ) #ИначеЕсли "#Параметр(9)" = "ПравоЧтения" Или "#Параметр(9)" = "ПравоИзменения" #Тогда @@ -3629,6 +3994,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(9)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(10) + #Если Не "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(9)" = "Объект" Или "#Параметр(9)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -3660,6 +4037,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -4017,8 +4395,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(9)" = "НастройкиПрав" #Тогда ( @@ -4107,7 +4488,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(10) - #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" + И "#Параметр(9)" <> "Пользователи" + И "#Параметр(9)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(9)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(9)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4165,7 +4548,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -4181,6 +4564,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(12)" = "Объект" Или "#Параметр(12)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -4212,6 +4607,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -4569,8 +4965,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда ( @@ -4659,7 +5058,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(13) - #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4717,7 +5118,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(15)" = "" И "#Параметр(16)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(15)" = "Условие" Или "#Параметр(15)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(15)" = "Условие" Или "#Параметр(15)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(16) ) #ИначеЕсли "#Параметр(15)" = "ПравоЧтения" Или "#Параметр(15)" = "ПравоИзменения" #Тогда @@ -4733,6 +5134,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(15)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(16) + #Если Не "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(15)" = "Объект" Или "#Параметр(15)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -4764,6 +5177,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -5121,8 +5535,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(15)" = "НастройкиПрав" #Тогда ( @@ -5211,7 +5628,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(16) - #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" + И "#Параметр(15)" <> "Пользователи" + И "#Параметр(15)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(15)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(15)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5269,7 +5688,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -5285,6 +5704,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(18)" = "Объект" Или "#Параметр(18)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -5316,6 +5747,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -5673,8 +6105,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда ( @@ -5763,7 +6198,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(19) - #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5821,7 +6258,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(21)" = "" И "#Параметр(22)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(21)" = "Условие" Или "#Параметр(21)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(21)" = "Условие" Или "#Параметр(21)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(22) ) #ИначеЕсли "#Параметр(21)" = "ПравоЧтения" Или "#Параметр(21)" = "ПравоИзменения" #Тогда @@ -5837,6 +6274,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(21)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(22) + #Если Не "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(21)" = "Объект" Или "#Параметр(21)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -5868,6 +6317,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -6225,8 +6675,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(21)" = "НастройкиПрав" #Тогда ( @@ -6315,7 +6768,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(22) - #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" + И "#Параметр(21)" <> "Пользователи" + И "#Параметр(21)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(21)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(21)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6373,7 +6828,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -6389,6 +6844,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(24)" = "Объект" Или "#Параметр(24)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -6420,6 +6887,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -6777,8 +7245,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда ( @@ -6867,7 +7338,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(25) - #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6925,7 +7398,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(27)" = "" И "#Параметр(28)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(27)" = "Условие" Или "#Параметр(27)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(27)" = "Условие" Или "#Параметр(27)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(28) ) #ИначеЕсли "#Параметр(27)" = "ПравоЧтения" Или "#Параметр(27)" = "ПравоИзменения" #Тогда @@ -6941,6 +7414,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(27)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(28) + #Если Не "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(27)" = "Объект" Или "#Параметр(27)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -6972,6 +7457,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -7329,8 +7815,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(27)" = "НастройкиПрав" #Тогда ( @@ -7419,7 +7908,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(28) - #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" + И "#Параметр(27)" <> "Пользователи" + И "#Параметр(27)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(27)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(27)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -7477,7 +7968,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -7493,6 +7984,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(30)" = "Объект" Или "#Параметр(30)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -7524,6 +8027,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -7881,8 +8385,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда ( @@ -7971,7 +8478,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(31) - #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8029,7 +8538,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(33)" = "" И "#Параметр(34)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(33)" = "Условие" Или "#Параметр(33)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(33)" = "Условие" Или "#Параметр(33)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(34) ) #ИначеЕсли "#Параметр(33)" = "ПравоЧтения" Или "#Параметр(33)" = "ПравоИзменения" #Тогда @@ -8045,6 +8554,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(33)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(34) + #Если Не "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(33)" = "Объект" Или "#Параметр(33)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -8076,6 +8597,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -8433,8 +8955,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(33)" = "НастройкиПрав" #Тогда ( @@ -8523,7 +9048,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(34) - #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" + И "#Параметр(33)" <> "Пользователи" + И "#Параметр(33)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(33)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(33)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8581,7 +9108,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(36)" = "" И "#Параметр(37)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(36)" = "Условие" Или "#Параметр(36)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(36)" = "Условие" Или "#Параметр(36)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(37) ) #ИначеЕсли "#Параметр(36)" = "ПравоЧтения" Или "#Параметр(36)" = "ПравоИзменения" #Тогда @@ -8597,6 +9124,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(36)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(37) + #Если Не "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(36)" = "Объект" Или "#Параметр(36)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -8628,6 +9167,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -8985,8 +9525,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(36)" = "НастройкиПрав" #Тогда ( @@ -9075,7 +9618,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(37) - #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" + И "#Параметр(36)" <> "Пользователи" + И "#Параметр(36)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(36)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(36)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -9133,7 +9678,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(39)" = "" И "#Параметр(40)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(39)" = "Условие" Или "#Параметр(39)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(39)" = "Условие" Или "#Параметр(39)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(40) ) #ИначеЕсли "#Параметр(39)" = "ПравоЧтения" Или "#Параметр(39)" = "ПравоИзменения" #Тогда @@ -9149,6 +9694,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(39)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(40) + #Если Не "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(39)" = "Объект" Или "#Параметр(39)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -9180,6 +9737,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -9537,8 +10095,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(39)" = "НастройкиПрав" #Тогда ( @@ -9627,7 +10188,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(40) - #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" + И "#Параметр(39)" <> "Пользователи" + И "#Параметр(39)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(39)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(39)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -9685,7 +10248,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(42)" = "" И "#Параметр(43)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(42)" = "Условие" Или "#Параметр(42)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(42)" = "Условие" Или "#Параметр(42)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(43) ) #ИначеЕсли "#Параметр(42)" = "ПравоЧтения" Или "#Параметр(42)" = "ПравоИзменения" #Тогда @@ -9701,6 +10264,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(42)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(43) + #Если Не "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(42)" = "Объект" Или "#Параметр(42)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -9732,6 +10307,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -10089,8 +10665,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(42)" = "НастройкиПрав" #Тогда ( @@ -10179,7 +10758,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(43) - #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" + И "#Параметр(42)" <> "Пользователи" + И "#Параметр(42)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(42)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(42)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -10237,7 +10818,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(45)" = "" И "#Параметр(46)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(45)" = "Условие" Или "#Параметр(45)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(45)" = "Условие" Или "#Параметр(45)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(46) ) #ИначеЕсли "#Параметр(45)" = "ПравоЧтения" Или "#Параметр(45)" = "ПравоИзменения" #Тогда @@ -10253,6 +10834,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(45)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(46) + #Если Не "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(45)" = "Объект" Или "#Параметр(45)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -10284,6 +10877,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -10641,8 +11235,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(45)" = "НастройкиПрав" #Тогда ( @@ -10731,7 +11328,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(46) - #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" + И "#Параметр(45)" <> "Пользователи" + И "#Параметр(45)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(45)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(45)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -10789,7 +11388,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(48)" = "" И "#Параметр(49)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(48)" = "Условие" Или "#Параметр(48)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(48)" = "Условие" Или "#Параметр(48)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(49) ) #ИначеЕсли "#Параметр(48)" = "ПравоЧтения" Или "#Параметр(48)" = "ПравоИзменения" #Тогда @@ -10805,6 +11404,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(48)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(49) + #Если Не "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(48)" = "Объект" Или "#Параметр(48)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -10836,6 +11447,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -11193,8 +11805,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(48)" = "НастройкиПрав" #Тогда ( @@ -11283,7 +11898,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(49) - #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" + И "#Параметр(48)" <> "Пользователи" + И "#Параметр(48)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(48)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(48)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -11341,7 +11958,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(51)" = "" И "#Параметр(52)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(51)" = "Условие" Или "#Параметр(51)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(51)" = "Условие" Или "#Параметр(51)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(52) ) #ИначеЕсли "#Параметр(51)" = "ПравоЧтения" Или "#Параметр(51)" = "ПравоИзменения" #Тогда @@ -11357,6 +11974,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(51)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(52) + #Если Не "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(51)" = "Объект" Или "#Параметр(51)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -11388,6 +12017,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -11745,8 +12375,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(51)" = "НастройкиПрав" #Тогда ( @@ -11835,7 +12468,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(52) - #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" + И "#Параметр(51)" <> "Пользователи" + И "#Параметр(51)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(51)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(51)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" diff --git a/SSL/src/Roles/ИспользованиеЗаметок/Rights.rights b/SSL/src/Roles/ДобавлениеИзменениеЗаметок/Rights.rights similarity index 100% rename from SSL/src/Roles/ИспользованиеЗаметок/Rights.rights rename to SSL/src/Roles/ДобавлениеИзменениеЗаметок/Rights.rights diff --git a/SSL/src/Roles/ИспользованиеЗаметок/ИспользованиеЗаметок.mdo b/SSL/src/Roles/ДобавлениеИзменениеЗаметок/ДобавлениеИзменениеЗаметок.mdo similarity index 59% rename from SSL/src/Roles/ИспользованиеЗаметок/ИспользованиеЗаметок.mdo rename to SSL/src/Roles/ДобавлениеИзменениеЗаметок/ДобавлениеИзменениеЗаметок.mdo index e8e6ce8ea..c188169f0 100644 --- a/SSL/src/Roles/ИспользованиеЗаметок/ИспользованиеЗаметок.mdo +++ b/SSL/src/Roles/ДобавлениеИзменениеЗаметок/ДобавлениеИзменениеЗаметок.mdo @@ -1,8 +1,8 @@ - ИспользованиеЗаметок + ДобавлениеИзменениеЗаметок ru - Использование заметок + Добавление изменение заметок diff --git a/SSL/src/Roles/ДобавлениеИзменениеЛичныхВариантовОтчетов/Rights.rights b/SSL/src/Roles/ДобавлениеИзменениеЛичныхВариантовОтчетов/Rights.rights new file mode 100644 index 000000000..f01d94746 --- /dev/null +++ b/SSL/src/Roles/ДобавлениеИзменениеЛичныхВариантовОтчетов/Rights.rights @@ -0,0 +1,132 @@ + + + false + true + false + + Catalog.ВариантыОтчетов + + Read + true + + ВариантыОтчетов ГДЕ (ВариантыОтчетов.Пользовательский = ЛОЖЬ + ИЛИ ВариантыОтчетов.ТолькоДляАвтора = ЛОЖЬ + ИЛИ ВариантыОтчетов.Автор = &ТекущийПользователь) + + + + Insert + true + + ВариантыОтчетов ГДЕ ВариантыОтчетов.Автор = &ТекущийПользователь + + + + Update + true + + ВариантыОтчетов ГДЕ ВариантыОтчетов.Автор = &ТекущийПользователь + + + + View + true + + + InteractiveInsert + true + + + Edit + true + + + InteractiveSetDeletionMark + true + + + InteractiveClearDeletionMark + true + + + InputByString + true + + + + Catalog.ВариантыОтчетов.Command.Открыть + + View + true + + + + Catalog.ПользовательскиеНастройкиОтчетов + + Read + true + + ГДЕ Пользователь = &ТекущийПользователь + + + + Insert + true + + ГДЕ Пользователь = &ТекущийПользователь + + + + Update + true + + ГДЕ Пользователь = &ТекущийПользователь + + + + View + true + + + InteractiveInsert + true + + + Edit + true + + + InteractiveSetDeletionMark + true + + + InteractiveClearDeletionMark + true + + + InputByString + true + + + + CommonForm.ОтправкаТабличныхДокументовПоПочте + + View + true + + + + Catalog.ВариантыОтчетов.Command.Изменить + + View + true + + + + Catalog.ВариантыОтчетов.Command.РазместитьВРазделах + + View + true + + + diff --git a/SSL/src/Roles/ИспользованиеВариантовОтчетов/ИспользованиеВариантовОтчетов.mdo b/SSL/src/Roles/ДобавлениеИзменениеЛичныхВариантовОтчетов/ДобавлениеИзменениеЛичныхВариантовОтчетов.mdo similarity index 50% rename from SSL/src/Roles/ИспользованиеВариантовОтчетов/ИспользованиеВариантовОтчетов.mdo rename to SSL/src/Roles/ДобавлениеИзменениеЛичныхВариантовОтчетов/ДобавлениеИзменениеЛичныхВариантовОтчетов.mdo index 9b2d66f86..cf6bd0a06 100644 --- a/SSL/src/Roles/ИспользованиеВариантовОтчетов/ИспользованиеВариантовОтчетов.mdo +++ b/SSL/src/Roles/ДобавлениеИзменениеЛичныхВариантовОтчетов/ДобавлениеИзменениеЛичныхВариантовОтчетов.mdo @@ -1,8 +1,8 @@ - ИспользованиеВариантовОтчетов + ДобавлениеИзменениеЛичныхВариантовОтчетов ru - Использование вариантов отчетов + Добавление изменение личных вариантов отчетов diff --git a/SSL/src/Roles/ИспользованиеНапоминаний/Rights.rights b/SSL/src/Roles/ДобавлениеИзменениеНапоминаний/Rights.rights similarity index 94% rename from SSL/src/Roles/ИспользованиеНапоминаний/Rights.rights rename to SSL/src/Roles/ДобавлениеИзменениеНапоминаний/Rights.rights index 1e0a63d47..bb4334607 100644 --- a/SSL/src/Roles/ИспользованиеНапоминаний/Rights.rights +++ b/SSL/src/Roles/ДобавлениеИзменениеНапоминаний/Rights.rights @@ -34,6 +34,10 @@ Edit true + + TotalsControl + true + InformationRegister.НапоминанияПользователя.Command.МоиНапоминания diff --git a/SSL/src/Roles/ИспользованиеНапоминаний/ИспользованиеНапоминаний.mdo b/SSL/src/Roles/ДобавлениеИзменениеНапоминаний/ДобавлениеИзменениеНапоминаний.mdo similarity index 57% rename from SSL/src/Roles/ИспользованиеНапоминаний/ИспользованиеНапоминаний.mdo rename to SSL/src/Roles/ДобавлениеИзменениеНапоминаний/ДобавлениеИзменениеНапоминаний.mdo index eda76408b..6e3e74e7a 100644 --- a/SSL/src/Roles/ИспользованиеНапоминаний/ИспользованиеНапоминаний.mdo +++ b/SSL/src/Roles/ДобавлениеИзменениеНапоминаний/ДобавлениеИзменениеНапоминаний.mdo @@ -1,8 +1,8 @@ - ИспользованиеНапоминаний + ДобавлениеИзменениеНапоминаний ru - Использование напоминаний + Добавление изменение напоминаний diff --git a/SSL/src/Roles/ДобавлениеИзменениеОпросов/Rights.rights b/SSL/src/Roles/ДобавлениеИзменениеОпросов/Rights.rights index 6cb50ee91..4bf5ef5ed 100644 --- a/SSL/src/Roles/ДобавлениеИзменениеОпросов/Rights.rights +++ b/SSL/src/Roles/ДобавлениеИзменениеОпросов/Rights.rights @@ -3,281 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -289,94 +14,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - Catalog.ШаблоныАнкет @@ -392,1404 +29,6 @@ true - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1801,2209 +40,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Вступление - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - Document.НазначениеОпросов @@ -4067,4710 +103,6 @@ true - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8782,3119 +114,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -11906,3883 +125,4 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ДобавлениеИзменениеОтветовНаВопросыАнкет/Rights.rights b/SSL/src/Roles/ДобавлениеИзменениеОтветовНаВопросыАнкет/Rights.rights index 7795fd82f..b3b5b3f9c 100644 --- a/SSL/src/Roles/ДобавлениеИзменениеОтветовНаВопросыАнкет/Rights.rights +++ b/SSL/src/Roles/ДобавлениеИзменениеОтветовНаВопросыАнкет/Rights.rights @@ -3,281 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -289,94 +14,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - Catalog.ШаблоныАнкет @@ -392,447 +29,6 @@ true - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - InformationRegister.ОтветыНаВопросыАнкет @@ -844,965 +40,6 @@ true - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1814,5391 +51,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Вступление - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - Document.Анкета @@ -7262,1512 +114,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8779,3009 +125,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - DataProcessor.СписокРеспондента @@ -11793,127 +136,6 @@ true - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -11925,3853 +147,4 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ДобавлениеИзменениеРассылокОтчетов/Rights.rights b/SSL/src/Roles/ДобавлениеИзменениеРассылокОтчетов/Rights.rights index 1301232f6..079d879b5 100644 --- a/SSL/src/Roles/ДобавлениеИзменениеРассылокОтчетов/Rights.rights +++ b/SSL/src/Roles/ДобавлениеИзменениеРассылокОтчетов/Rights.rights @@ -15,38 +15,10 @@ - InformationRegister.СостоянияРассылокОтчетов.StandardAttribute.Active + Catalog.РассылкиОтчетов.Command.СобытияРассылки - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.StandardAttribute.Period - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.Resource.СОшибками - - Edit - false + View + true @@ -80,20 +52,6 @@ true - - Catalog.РассылкиОтчетов.Command.СобытияРассылки - - View - true - - - - InformationRegister.СостоянияРассылокОтчетов.Resource.ПоследнийЗапуск - - Edit - false - - Catalog.РассылкиОтчетов.Command.ВыполнитьСейчас @@ -145,18 +103,4 @@ true - - InformationRegister.СостоянияРассылокОтчетов.Dimension.Рассылка - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.Resource.Выполнена - - Edit - false - - diff --git a/SSL/src/Roles/ДобавлениеИзменениеШаблоновАнкет/Rights.rights b/SSL/src/Roles/ДобавлениеИзменениеШаблоновАнкет/Rights.rights index 42932944f..0596448ce 100644 --- a/SSL/src/Roles/ДобавлениеИзменениеШаблоновАнкет/Rights.rights +++ b/SSL/src/Roles/ДобавлениеИзменениеШаблоновАнкет/Rights.rights @@ -3,17 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - CommonForm.МастерАнкетыПоРазделам @@ -21,270 +10,6 @@ true - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -296,94 +21,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - Catalog.ШаблоныАнкет @@ -423,754 +60,6 @@ true - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - Catalog.ВопросыШаблонаАнкеты @@ -1210,501 +99,6 @@ true - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1716,1601 +110,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - Catalog.ВариантыОтветовАнкет @@ -3350,5220 +149,6 @@ true - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8575,3075 +160,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -11655,1678 +171,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования @@ -13366,2039 +210,4 @@ true - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ДобавлениеИзменениеШаблоновСообщений/Rights.rights b/SSL/src/Roles/ДобавлениеИзменениеШаблоновСообщений/Rights.rights new file mode 100644 index 000000000..94b32a85c --- /dev/null +++ b/SSL/src/Roles/ДобавлениеИзменениеШаблоновСообщений/Rights.rights @@ -0,0 +1,84 @@ + + + false + true + false + + Catalog.ШаблоныСообщенийПрисоединенныеФайлы + + Read + true + + + Insert + true + + + Update + true + + + View + true + + + InteractiveInsert + true + + + Edit + true + + + InteractiveSetDeletionMark + true + + + InteractiveClearDeletionMark + true + + + InputByString + true + + + + Catalog.ШаблоныСообщений + + Read + true + + + Insert + true + + + Update + true + + + View + true + + + InteractiveInsert + true + + + Edit + true + + + InteractiveSetDeletionMark + true + + + InteractiveClearDeletionMark + true + + + InputByString + true + + + diff --git a/SSL/src/Roles/ДобавлениеИзменениеШаблоновСообщений/ДобавлениеИзменениеШаблоновСообщений.mdo b/SSL/src/Roles/ДобавлениеИзменениеШаблоновСообщений/ДобавлениеИзменениеШаблоновСообщений.mdo new file mode 100644 index 000000000..4ed4f79ca --- /dev/null +++ b/SSL/src/Roles/ДобавлениеИзменениеШаблоновСообщений/ДобавлениеИзменениеШаблоновСообщений.mdo @@ -0,0 +1,8 @@ + + + ДобавлениеИзменениеШаблоновСообщений + + ru + Добавление изменение шаблонов сообщений + + diff --git a/SSL/src/Roles/ИспользованиеЭлектроннойПодписиИШифрования/Rights.rights b/SSL/src/Roles/ДобавлениеИзменениеЭлектронныхПодписейИШифрование/Rights.rights similarity index 95% rename from SSL/src/Roles/ИспользованиеЭлектроннойПодписиИШифрования/Rights.rights rename to SSL/src/Roles/ДобавлениеИзменениеЭлектронныхПодписейИШифрование/Rights.rights index faf40daf1..ffbb76aef 100644 --- a/SSL/src/Roles/ИспользованиеЭлектроннойПодписиИШифрования/Rights.rights +++ b/SSL/src/Roles/ДобавлениеИзменениеЭлектронныхПодписейИШифрование/Rights.rights @@ -42,6 +42,13 @@ true + + CommonForm.РезультатПроверки + + View + true + + CommonForm.ОтчетОСохраненииФайловЭлектронныхПодписей diff --git a/SSL/src/Roles/ДобавлениеИзменениеЭлектронныхПодписейИШифрование/ДобавлениеИзменениеЭлектронныхПодписейИШифрование.mdo b/SSL/src/Roles/ДобавлениеИзменениеЭлектронныхПодписейИШифрование/ДобавлениеИзменениеЭлектронныхПодписейИШифрование.mdo new file mode 100644 index 000000000..859fcb040 --- /dev/null +++ b/SSL/src/Roles/ДобавлениеИзменениеЭлектронныхПодписейИШифрование/ДобавлениеИзменениеЭлектронныхПодписейИШифрование.mdo @@ -0,0 +1,8 @@ + + + ДобавлениеИзменениеЭлектронныхПодписейИШифрование + + ru + Добавление и изменение электронных подписей и шифрование + + diff --git a/SSL/src/Roles/ЗапускAutomation/Rights.rights b/SSL/src/Roles/ЗапускAutomation/Rights.rights index 68263708d..cc8e0c2ba 100644 --- a/SSL/src/Roles/ЗапускAutomation/Rights.rights +++ b/SSL/src/Roles/ЗапускAutomation/Rights.rights @@ -3,281 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -289,1535 +14,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1829,1194 +25,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - Configuration.БиблиотекаСтандартныхПодсистем @@ -3048,5836 +56,6 @@ true - - Catalog.ШаблоныАнкет.Attribute.Вступление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8889,3141 +67,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -12035,3898 +78,4 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ЗапускВебКлиента/Rights.rights b/SSL/src/Roles/ЗапускВебКлиента/Rights.rights index f88096527..499c688c4 100644 --- a/SSL/src/Roles/ЗапускВебКлиента/Rights.rights +++ b/SSL/src/Roles/ЗапускВебКлиента/Rights.rights @@ -3,281 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -289,1535 +14,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1829,1183 +25,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - Configuration.БиблиотекаСтандартныхПодсистем @@ -3037,5715 +56,6 @@ true - - Catalog.ШаблоныАнкет.Attribute.Вступление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8757,3086 +67,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -11848,3854 +78,4 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ЗапускТолстогоКлиента/Rights.rights b/SSL/src/Roles/ЗапускТолстогоКлиента/Rights.rights index a5c6cc96a..e5a2361d4 100644 --- a/SSL/src/Roles/ЗапускТолстогоКлиента/Rights.rights +++ b/SSL/src/Roles/ЗапускТолстогоКлиента/Rights.rights @@ -3,281 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -289,1535 +14,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1829,1183 +25,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - Configuration.БиблиотекаСтандартныхПодсистем @@ -3037,5715 +56,6 @@ true - - Catalog.ШаблоныАнкет.Attribute.Вступление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8757,3086 +67,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -11848,3854 +78,4 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ЗапускТонкогоКлиента/Rights.rights b/SSL/src/Roles/ЗапускТонкогоКлиента/Rights.rights index d8899df31..288246cf4 100644 --- a/SSL/src/Roles/ЗапускТонкогоКлиента/Rights.rights +++ b/SSL/src/Roles/ЗапускТонкогоКлиента/Rights.rights @@ -3,281 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -289,1535 +14,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1829,1183 +25,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - Configuration.БиблиотекаСтандартныхПодсистем @@ -3037,5715 +56,6 @@ true - - Catalog.ШаблоныАнкет.Attribute.Вступление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8757,3086 +67,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -11848,3854 +78,4 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ИзменениеВыполнениеЗадач/Rights.rights b/SSL/src/Roles/ИзменениеВыполнениеЗадач/Rights.rights index 46ac46276..d3a360ddb 100644 --- a/SSL/src/Roles/ИзменениеВыполнениеЗадач/Rights.rights +++ b/SSL/src/Roles/ИзменениеВыполнениеЗадач/Rights.rights @@ -205,13 +205,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Объект", "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Объект", "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), Тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. -// Когда В(n) = "ПравоЧтения" ИЛИ "ПравоИзменения", -// выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", +// выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // Когда В(n) = "Объект" (или " "), то // когда есть запись зависимости прав в регистре сведений ЗависимостиПравДоступа тогда // выполняется проверка права чтения Т.П(n) и наборов значений доступа @@ -262,73 +264,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(9)" = "" И "#Параметр(10)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(9),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(9),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(15)" = "" И "#Параметр(16)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(15),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(15),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(21)" = "" И "#Параметр(22)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(21),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(21),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(27)" = "" И "#Параметр(28)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(27),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(27),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(33)" = "" И "#Параметр(34)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(33),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(33),")) И ("#Параметр(36)" = "" И "#Параметр(37)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(36),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(36),")) И ("#Параметр(39)" = "" И "#Параметр(40)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(39),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(39),")) И ("#Параметр(42)" = "" И "#Параметр(43)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(42),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(42),")) И ("#Параметр(45)" = "" И "#Параметр(46)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(45),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(45),")) И ("#Параметр(48)" = "" И "#Параметр(49)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(48),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(48),")) И ("#Параметр(51)" = "" И "#Параметр(52)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(51),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(51),")) - ) #Тогда + ) #Тогда Т ИЗ Т // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -380,7 +414,7 @@ #Параметр(5) // [([(][(]...] 0-n открывающихся скобок. //// Проверка значения поля группы параметров 1. -#Если "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -396,6 +430,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(6)" = "Объект" Или "#Параметр(6)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -427,6 +473,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -784,8 +831,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда ( @@ -874,7 +924,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(7) - #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -932,7 +984,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(9)" = "" И "#Параметр(10)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(9)" = "Условие" Или "#Параметр(9)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(9)" = "Условие" Или "#Параметр(9)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(10) ) #ИначеЕсли "#Параметр(9)" = "ПравоЧтения" Или "#Параметр(9)" = "ПравоИзменения" #Тогда @@ -948,6 +1000,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(9)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(10) + #Если Не "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(9)" = "Объект" Или "#Параметр(9)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -979,6 +1043,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -1336,8 +1401,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(9)" = "НастройкиПрав" #Тогда ( @@ -1426,7 +1494,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(10) - #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" + И "#Параметр(9)" <> "Пользователи" + И "#Параметр(9)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(9)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(9)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1484,7 +1554,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -1500,6 +1570,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(12)" = "Объект" Или "#Параметр(12)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -1531,6 +1613,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -1888,8 +1971,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда ( @@ -1978,7 +2064,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(13) - #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2036,7 +2124,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(15)" = "" И "#Параметр(16)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(15)" = "Условие" Или "#Параметр(15)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(15)" = "Условие" Или "#Параметр(15)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(16) ) #ИначеЕсли "#Параметр(15)" = "ПравоЧтения" Или "#Параметр(15)" = "ПравоИзменения" #Тогда @@ -2052,6 +2140,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(15)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(16) + #Если Не "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(15)" = "Объект" Или "#Параметр(15)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -2083,6 +2183,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -2440,8 +2541,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(15)" = "НастройкиПрав" #Тогда ( @@ -2530,7 +2634,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(16) - #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" + И "#Параметр(15)" <> "Пользователи" + И "#Параметр(15)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(15)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(15)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2588,7 +2694,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -2604,6 +2710,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(18)" = "Объект" Или "#Параметр(18)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -2635,6 +2753,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -2992,8 +3111,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда ( @@ -3082,7 +3204,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(19) - #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3140,7 +3264,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(21)" = "" И "#Параметр(22)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(21)" = "Условие" Или "#Параметр(21)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(21)" = "Условие" Или "#Параметр(21)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(22) ) #ИначеЕсли "#Параметр(21)" = "ПравоЧтения" Или "#Параметр(21)" = "ПравоИзменения" #Тогда @@ -3156,6 +3280,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(21)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(22) + #Если Не "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(21)" = "Объект" Или "#Параметр(21)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -3187,6 +3323,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -3544,8 +3681,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(21)" = "НастройкиПрав" #Тогда ( @@ -3634,7 +3774,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(22) - #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" + И "#Параметр(21)" <> "Пользователи" + И "#Параметр(21)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(21)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(21)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3692,7 +3834,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -3708,6 +3850,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(24)" = "Объект" Или "#Параметр(24)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -3739,6 +3893,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -4096,8 +4251,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда ( @@ -4186,7 +4344,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(25) - #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4244,7 +4404,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(27)" = "" И "#Параметр(28)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(27)" = "Условие" Или "#Параметр(27)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(27)" = "Условие" Или "#Параметр(27)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(28) ) #ИначеЕсли "#Параметр(27)" = "ПравоЧтения" Или "#Параметр(27)" = "ПравоИзменения" #Тогда @@ -4260,6 +4420,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(27)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(28) + #Если Не "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(27)" = "Объект" Или "#Параметр(27)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -4291,6 +4463,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -4648,8 +4821,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(27)" = "НастройкиПрав" #Тогда ( @@ -4738,7 +4914,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(28) - #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" + И "#Параметр(27)" <> "Пользователи" + И "#Параметр(27)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(27)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(27)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4796,7 +4974,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -4812,6 +4990,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(30)" = "Объект" Или "#Параметр(30)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -4843,6 +5033,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -5200,8 +5391,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда ( @@ -5290,7 +5484,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(31) - #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5348,7 +5544,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(33)" = "" И "#Параметр(34)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(33)" = "Условие" Или "#Параметр(33)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(33)" = "Условие" Или "#Параметр(33)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(34) ) #ИначеЕсли "#Параметр(33)" = "ПравоЧтения" Или "#Параметр(33)" = "ПравоИзменения" #Тогда @@ -5364,6 +5560,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(33)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(34) + #Если Не "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(33)" = "Объект" Или "#Параметр(33)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -5395,6 +5603,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -5752,8 +5961,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(33)" = "НастройкиПрав" #Тогда ( @@ -5842,7 +6054,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(34) - #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" + И "#Параметр(33)" <> "Пользователи" + И "#Параметр(33)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(33)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(33)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5900,7 +6114,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(36)" = "" И "#Параметр(37)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(36)" = "Условие" Или "#Параметр(36)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(36)" = "Условие" Или "#Параметр(36)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(37) ) #ИначеЕсли "#Параметр(36)" = "ПравоЧтения" Или "#Параметр(36)" = "ПравоИзменения" #Тогда @@ -5916,6 +6130,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(36)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(37) + #Если Не "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(36)" = "Объект" Или "#Параметр(36)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -5947,6 +6173,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -6304,8 +6531,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(36)" = "НастройкиПрав" #Тогда ( @@ -6394,7 +6624,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(37) - #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" + И "#Параметр(36)" <> "Пользователи" + И "#Параметр(36)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(36)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(36)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6452,7 +6684,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(39)" = "" И "#Параметр(40)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(39)" = "Условие" Или "#Параметр(39)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(39)" = "Условие" Или "#Параметр(39)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(40) ) #ИначеЕсли "#Параметр(39)" = "ПравоЧтения" Или "#Параметр(39)" = "ПравоИзменения" #Тогда @@ -6468,6 +6700,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(39)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(40) + #Если Не "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(39)" = "Объект" Или "#Параметр(39)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -6499,6 +6743,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -6856,8 +7101,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(39)" = "НастройкиПрав" #Тогда ( @@ -6946,7 +7194,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(40) - #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" + И "#Параметр(39)" <> "Пользователи" + И "#Параметр(39)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(39)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(39)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -7004,7 +7254,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(42)" = "" И "#Параметр(43)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(42)" = "Условие" Или "#Параметр(42)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(42)" = "Условие" Или "#Параметр(42)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(43) ) #ИначеЕсли "#Параметр(42)" = "ПравоЧтения" Или "#Параметр(42)" = "ПравоИзменения" #Тогда @@ -7020,6 +7270,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(42)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(43) + #Если Не "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(42)" = "Объект" Или "#Параметр(42)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -7051,6 +7313,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -7408,8 +7671,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(42)" = "НастройкиПрав" #Тогда ( @@ -7498,7 +7764,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(43) - #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" + И "#Параметр(42)" <> "Пользователи" + И "#Параметр(42)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(42)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(42)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -7556,7 +7824,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(45)" = "" И "#Параметр(46)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(45)" = "Условие" Или "#Параметр(45)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(45)" = "Условие" Или "#Параметр(45)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(46) ) #ИначеЕсли "#Параметр(45)" = "ПравоЧтения" Или "#Параметр(45)" = "ПравоИзменения" #Тогда @@ -7572,6 +7840,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(45)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(46) + #Если Не "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(45)" = "Объект" Или "#Параметр(45)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -7603,6 +7883,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -7960,8 +8241,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(45)" = "НастройкиПрав" #Тогда ( @@ -8050,7 +8334,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(46) - #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" + И "#Параметр(45)" <> "Пользователи" + И "#Параметр(45)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(45)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(45)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8108,7 +8394,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(48)" = "" И "#Параметр(49)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(48)" = "Условие" Или "#Параметр(48)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(48)" = "Условие" Или "#Параметр(48)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(49) ) #ИначеЕсли "#Параметр(48)" = "ПравоЧтения" Или "#Параметр(48)" = "ПравоИзменения" #Тогда @@ -8124,6 +8410,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(48)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(49) + #Если Не "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(48)" = "Объект" Или "#Параметр(48)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -8155,6 +8453,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -8512,8 +8811,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(48)" = "НастройкиПрав" #Тогда ( @@ -8602,7 +8904,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(49) - #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" + И "#Параметр(48)" <> "Пользователи" + И "#Параметр(48)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(48)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(48)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8660,7 +8964,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(51)" = "" И "#Параметр(52)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(51)" = "Условие" Или "#Параметр(51)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(51)" = "Условие" Или "#Параметр(51)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(52) ) #ИначеЕсли "#Параметр(51)" = "ПравоЧтения" Или "#Параметр(51)" = "ПравоИзменения" #Тогда @@ -8676,6 +8980,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(51)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(52) + #Если Не "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(51)" = "Объект" Или "#Параметр(51)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -8707,6 +9023,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -9064,8 +9381,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(51)" = "НастройкиПрав" #Тогда ( @@ -9154,7 +9474,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(52) - #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" + И "#Параметр(51)" <> "Пользователи" + И "#Параметр(51)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(51)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(51)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" diff --git a/SSL/src/Roles/ИзменениеДополнительныхСведений/Rights.rights b/SSL/src/Roles/ИзменениеДополнительныхСведений/Rights.rights index 867839890..f13599370 100644 --- a/SSL/src/Roles/ИзменениеДополнительныхСведений/Rights.rights +++ b/SSL/src/Roles/ИзменениеДополнительныхСведений/Rights.rights @@ -3,281 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -289,1447 +14,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1741,2030 +25,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Вступление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - InformationRegister.ДополнительныеСведения @@ -3794,4945 +54,6 @@ true - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8744,3053 +65,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -11802,72 +76,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - CommonCommand.ДополнительныеСведенияКоманднаяПанель @@ -11875,3449 +83,6 @@ true - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - CommonForm.РедактированиеДополнительныхСведений @@ -15325,380 +90,6 @@ true - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - ПоЗначениям // ПоЗначениям(Таблица, -, Модификатор, В1,П1, В2,П2, ..., В(n), П(n)). @@ -15713,13 +104,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. // Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", // выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // П(n) - Поле проверяемого значения, кроме случая В(n) = "Условие" (или ""). // Примечение: максимальное количество одновременно проверяемых значений полей можно увеличить, изменив шаблон, но // необходимо будет указывать все параметры шаблона, т.е. указывать пустые строки, когда количество полей меньше максимального. @@ -15753,73 +146,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(4)" = "" И "#Параметр(5)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(4),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(4),")) И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(8)" = "" И "#Параметр(9)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(8),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(8),")) И ("#Параметр(10)" = "" И "#Параметр(11)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(10),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(10),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(14)" = "" И "#Параметр(15)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(14),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(14),")) И ("#Параметр(16)" = "" И "#Параметр(17)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(16),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(16),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(20)" = "" И "#Параметр(21)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(20),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(20),")) И ("#Параметр(22)" = "" И "#Параметр(23)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(22),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(22),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(26)" = "" И "#Параметр(27)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(26),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(26),")) И ("#Параметр(28)" = "" И "#Параметр(29)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(28),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(28),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(32)" = "" И "#Параметр(33)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(32),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(32),")) И ("#Параметр(34)" = "" И "#Параметр(35)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(34),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(34),")) - ) #Тогда + ) #Тогда Т ГДЕ // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -15864,7 +289,7 @@ ( // Поиск значений заданных полей в разрешенных значениях групп доступа (пользователей). //// Проверка значения поля группы параметров 1. -#Если "#Параметр(4)" = "Условие" Или "#Параметр(4)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(4)" = "Условие" Или "#Параметр(4)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(5) ) #ИначеЕсли "#Параметр(4)" = "ПравоЧтения" Или "#Параметр(4)" = "ПравоИзменения" #Тогда @@ -15880,6 +305,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(4)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(5) + #Если Не "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(4)" = "НастройкиПрав" #Тогда ( @@ -15968,7 +407,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(5) - #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" + И "#Параметр(4)" <> "Пользователи" + И "#Параметр(4)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(4)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(4)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16023,7 +464,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(6)" = "" И "#Параметр(7)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -16039,6 +480,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда И ( @@ -16127,7 +582,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(7) - #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16180,7 +637,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(8)" = "" И "#Параметр(9)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(8)" = "Условие" Или "#Параметр(8)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(8)" = "Условие" Или "#Параметр(8)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(9) ) #ИначеЕсли "#Параметр(8)" = "ПравоЧтения" Или "#Параметр(8)" = "ПравоИзменения" #Тогда @@ -16196,6 +653,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(8)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(9) + #Если Не "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(8)" = "НастройкиПрав" #Тогда И ( @@ -16284,7 +755,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(9) - #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" + И "#Параметр(8)" <> "Пользователи" + И "#Параметр(8)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(8)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(8)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16337,7 +810,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(10)" = "" И "#Параметр(11)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(10)" = "Условие" Или "#Параметр(10)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(10)" = "Условие" Или "#Параметр(10)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(11) ) #ИначеЕсли "#Параметр(10)" = "ПравоЧтения" Или "#Параметр(10)" = "ПравоИзменения" #Тогда @@ -16353,6 +826,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(10)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(11) + #Если Не "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(10)" = "НастройкиПрав" #Тогда И ( @@ -16441,7 +928,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(11) - #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" + И "#Параметр(10)" <> "Пользователи" + И "#Параметр(10)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(10)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(10)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16494,7 +983,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -16510,6 +999,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда И ( @@ -16598,7 +1101,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(13) - #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16651,7 +1156,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(14)" = "" И "#Параметр(15)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(14)" = "Условие" Или "#Параметр(14)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(14)" = "Условие" Или "#Параметр(14)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(15) ) #ИначеЕсли "#Параметр(14)" = "ПравоЧтения" Или "#Параметр(14)" = "ПравоИзменения" #Тогда @@ -16667,6 +1172,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(14)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(15) + #Если Не "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(14)" = "НастройкиПрав" #Тогда И ( @@ -16755,7 +1274,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(15) - #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" + И "#Параметр(14)" <> "Пользователи" + И "#Параметр(14)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(14)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(14)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16808,7 +1329,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(16)" = "" И "#Параметр(17)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(16)" = "Условие" Или "#Параметр(16)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(16)" = "Условие" Или "#Параметр(16)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(17) ) #ИначеЕсли "#Параметр(16)" = "ПравоЧтения" Или "#Параметр(16)" = "ПравоИзменения" #Тогда @@ -16824,6 +1345,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(16)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(17) + #Если Не "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(16)" = "НастройкиПрав" #Тогда И ( @@ -16912,7 +1447,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(17) - #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" + И "#Параметр(16)" <> "Пользователи" + И "#Параметр(16)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(16)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(16)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16965,7 +1502,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -16981,6 +1518,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда И ( @@ -17069,7 +1620,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(19) - #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17122,7 +1675,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(20)" = "" И "#Параметр(21)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(20)" = "Условие" Или "#Параметр(20)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(20)" = "Условие" Или "#Параметр(20)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(21) ) #ИначеЕсли "#Параметр(20)" = "ПравоЧтения" Или "#Параметр(20)" = "ПравоИзменения" #Тогда @@ -17138,6 +1691,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(20)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(21) + #Если Не "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(20)" = "НастройкиПрав" #Тогда И ( @@ -17226,7 +1793,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(21) - #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" + И "#Параметр(20)" <> "Пользователи" + И "#Параметр(20)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(20)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(20)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17279,7 +1848,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(22)" = "" И "#Параметр(23)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(22)" = "Условие" Или "#Параметр(22)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(22)" = "Условие" Или "#Параметр(22)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(23) ) #ИначеЕсли "#Параметр(22)" = "ПравоЧтения" Или "#Параметр(22)" = "ПравоИзменения" #Тогда @@ -17295,6 +1864,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(22)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(23) + #Если Не "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(22)" = "НастройкиПрав" #Тогда И ( @@ -17383,7 +1966,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(23) - #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" + И "#Параметр(22)" <> "Пользователи" + И "#Параметр(22)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(22)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(22)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17436,7 +2021,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -17452,6 +2037,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда И ( @@ -17540,7 +2139,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(25) - #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17593,7 +2194,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(26)" = "" И "#Параметр(27)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(26)" = "Условие" Или "#Параметр(26)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(26)" = "Условие" Или "#Параметр(26)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(27) ) #ИначеЕсли "#Параметр(26)" = "ПравоЧтения" Или "#Параметр(26)" = "ПравоИзменения" #Тогда @@ -17609,6 +2210,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(26)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(27) + #Если Не "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(26)" = "НастройкиПрав" #Тогда И ( @@ -17697,7 +2312,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(27) - #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" + И "#Параметр(26)" <> "Пользователи" + И "#Параметр(26)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(26)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(26)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17750,7 +2367,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(28)" = "" И "#Параметр(29)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(28)" = "Условие" Или "#Параметр(28)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(28)" = "Условие" Или "#Параметр(28)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(29) ) #ИначеЕсли "#Параметр(28)" = "ПравоЧтения" Или "#Параметр(28)" = "ПравоИзменения" #Тогда @@ -17766,6 +2383,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(28)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(29) + #Если Не "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(28)" = "НастройкиПрав" #Тогда И ( @@ -17854,7 +2485,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(29) - #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" + И "#Параметр(28)" <> "Пользователи" + И "#Параметр(28)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(28)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(28)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17907,7 +2540,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -17923,6 +2556,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда И ( @@ -18011,7 +2658,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(31) - #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -18064,7 +2713,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(32)" = "" И "#Параметр(33)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(32)" = "Условие" Или "#Параметр(32)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(32)" = "Условие" Или "#Параметр(32)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(33) ) #ИначеЕсли "#Параметр(32)" = "ПравоЧтения" Или "#Параметр(32)" = "ПравоИзменения" #Тогда @@ -18080,6 +2729,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(32)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(33) + #Если Не "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(32)" = "НастройкиПрав" #Тогда И ( @@ -18168,7 +2831,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(33) - #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" + И "#Параметр(32)" <> "Пользователи" + И "#Параметр(32)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(32)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(32)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -18221,7 +2886,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(34)" = "" И "#Параметр(35)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(34)" = "Условие" Или "#Параметр(34)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(34)" = "Условие" Или "#Параметр(34)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(35) ) #ИначеЕсли "#Параметр(34)" = "ПравоЧтения" Или "#Параметр(34)" = "ПравоИзменения" #Тогда @@ -18237,6 +2902,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(34)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(35) + #Если Не "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(34)" = "НастройкиПрав" #Тогда И ( @@ -18325,7 +3004,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(35) - #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" + И "#Параметр(34)" <> "Пользователи" + И "#Параметр(34)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(34)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(34)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" diff --git a/SSL/src/Roles/ИзменениеМакетовПечатныхФорм/Rights.rights b/SSL/src/Roles/ИзменениеМакетовПечатныхФорм/Rights.rights index c7952cedf..6c0c008ab 100644 --- a/SSL/src/Roles/ИзменениеМакетовПечатныхФорм/Rights.rights +++ b/SSL/src/Roles/ИзменениеМакетовПечатныхФорм/Rights.rights @@ -3,281 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -289,1524 +14,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1818,6903 +25,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Вступление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - InformationRegister.ПользовательскиеМакетыПечати @@ -8734,72 +44,6 @@ true - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8811,3130 +55,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -11946,3887 +66,4 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ИзменениеУчастниковГруппДоступа/Rights.rights b/SSL/src/Roles/ИзменениеУчастниковГруппДоступа/Rights.rights index 7f2c150f4..f52f04a70 100644 --- a/SSL/src/Roles/ИзменениеУчастниковГруппДоступа/Rights.rights +++ b/SSL/src/Roles/ИзменениеУчастниковГруппДоступа/Rights.rights @@ -3,17 +3,6 @@ false true false - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - CommonCommand.ПраваДоступа @@ -21,182 +10,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - CommonForm.ПраваДоступа @@ -204,94 +17,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - Catalog.ГруппыДоступа @@ -363,28 +88,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - Catalog.ПрофилиГруппДоступа @@ -426,17 +129,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - ПоЗначениям // ПоЗначениям(Таблица, -, Модификатор, В1,П1, В2,П2, ..., В(n), П(n)). @@ -451,13 +143,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. // Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", // выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // П(n) - Поле проверяемого значения, кроме случая В(n) = "Условие" (или ""). // Примечение: максимальное количество одновременно проверяемых значений полей можно увеличить, изменив шаблон, но // необходимо будет указывать все параметры шаблона, т.е. указывать пустые строки, когда количество полей меньше максимального. @@ -491,73 +185,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(4)" = "" И "#Параметр(5)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(4),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(4),")) И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(8)" = "" И "#Параметр(9)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(8),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(8),")) И ("#Параметр(10)" = "" И "#Параметр(11)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(10),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(10),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(14)" = "" И "#Параметр(15)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(14),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(14),")) И ("#Параметр(16)" = "" И "#Параметр(17)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(16),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(16),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(20)" = "" И "#Параметр(21)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(20),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(20),")) И ("#Параметр(22)" = "" И "#Параметр(23)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(22),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(22),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(26)" = "" И "#Параметр(27)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(26),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(26),")) И ("#Параметр(28)" = "" И "#Параметр(29)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(28),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(28),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(32)" = "" И "#Параметр(33)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(32),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(32),")) И ("#Параметр(34)" = "" И "#Параметр(35)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(34),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(34),")) - ) #Тогда + ) #Тогда Т ГДЕ // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -602,7 +328,7 @@ ( // Поиск значений заданных полей в разрешенных значениях групп доступа (пользователей). //// Проверка значения поля группы параметров 1. -#Если "#Параметр(4)" = "Условие" Или "#Параметр(4)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(4)" = "Условие" Или "#Параметр(4)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(5) ) #ИначеЕсли "#Параметр(4)" = "ПравоЧтения" Или "#Параметр(4)" = "ПравоИзменения" #Тогда @@ -618,6 +344,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(4)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(5) + #Если Не "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(4)" = "НастройкиПрав" #Тогда ( @@ -706,7 +446,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(5) - #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" + И "#Параметр(4)" <> "Пользователи" + И "#Параметр(4)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(4)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(4)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -761,7 +503,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(6)" = "" И "#Параметр(7)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -777,6 +519,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда И ( @@ -865,7 +621,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(7) - #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -918,7 +676,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(8)" = "" И "#Параметр(9)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(8)" = "Условие" Или "#Параметр(8)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(8)" = "Условие" Или "#Параметр(8)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(9) ) #ИначеЕсли "#Параметр(8)" = "ПравоЧтения" Или "#Параметр(8)" = "ПравоИзменения" #Тогда @@ -934,6 +692,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(8)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(9) + #Если Не "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(8)" = "НастройкиПрав" #Тогда И ( @@ -1022,7 +794,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(9) - #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" + И "#Параметр(8)" <> "Пользователи" + И "#Параметр(8)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(8)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(8)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1075,7 +849,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(10)" = "" И "#Параметр(11)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(10)" = "Условие" Или "#Параметр(10)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(10)" = "Условие" Или "#Параметр(10)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(11) ) #ИначеЕсли "#Параметр(10)" = "ПравоЧтения" Или "#Параметр(10)" = "ПравоИзменения" #Тогда @@ -1091,6 +865,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(10)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(11) + #Если Не "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(10)" = "НастройкиПрав" #Тогда И ( @@ -1179,7 +967,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(11) - #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" + И "#Параметр(10)" <> "Пользователи" + И "#Параметр(10)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(10)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(10)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1232,7 +1022,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -1248,6 +1038,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда И ( @@ -1336,7 +1140,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(13) - #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1389,7 +1195,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(14)" = "" И "#Параметр(15)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(14)" = "Условие" Или "#Параметр(14)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(14)" = "Условие" Или "#Параметр(14)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(15) ) #ИначеЕсли "#Параметр(14)" = "ПравоЧтения" Или "#Параметр(14)" = "ПравоИзменения" #Тогда @@ -1405,6 +1211,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(14)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(15) + #Если Не "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(14)" = "НастройкиПрав" #Тогда И ( @@ -1493,7 +1313,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(15) - #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" + И "#Параметр(14)" <> "Пользователи" + И "#Параметр(14)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(14)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(14)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1546,7 +1368,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(16)" = "" И "#Параметр(17)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(16)" = "Условие" Или "#Параметр(16)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(16)" = "Условие" Или "#Параметр(16)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(17) ) #ИначеЕсли "#Параметр(16)" = "ПравоЧтения" Или "#Параметр(16)" = "ПравоИзменения" #Тогда @@ -1562,6 +1384,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(16)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(17) + #Если Не "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(16)" = "НастройкиПрав" #Тогда И ( @@ -1650,7 +1486,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(17) - #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" + И "#Параметр(16)" <> "Пользователи" + И "#Параметр(16)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(16)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(16)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1703,7 +1541,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -1719,6 +1557,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда И ( @@ -1807,7 +1659,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(19) - #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1860,7 +1714,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(20)" = "" И "#Параметр(21)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(20)" = "Условие" Или "#Параметр(20)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(20)" = "Условие" Или "#Параметр(20)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(21) ) #ИначеЕсли "#Параметр(20)" = "ПравоЧтения" Или "#Параметр(20)" = "ПравоИзменения" #Тогда @@ -1876,6 +1730,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(20)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(21) + #Если Не "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(20)" = "НастройкиПрав" #Тогда И ( @@ -1964,7 +1832,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(21) - #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" + И "#Параметр(20)" <> "Пользователи" + И "#Параметр(20)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(20)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(20)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2017,7 +1887,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(22)" = "" И "#Параметр(23)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(22)" = "Условие" Или "#Параметр(22)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(22)" = "Условие" Или "#Параметр(22)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(23) ) #ИначеЕсли "#Параметр(22)" = "ПравоЧтения" Или "#Параметр(22)" = "ПравоИзменения" #Тогда @@ -2033,6 +1903,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(22)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(23) + #Если Не "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(22)" = "НастройкиПрав" #Тогда И ( @@ -2121,7 +2005,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(23) - #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" + И "#Параметр(22)" <> "Пользователи" + И "#Параметр(22)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(22)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(22)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2174,7 +2060,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -2190,6 +2076,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда И ( @@ -2278,7 +2178,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(25) - #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2331,7 +2233,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(26)" = "" И "#Параметр(27)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(26)" = "Условие" Или "#Параметр(26)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(26)" = "Условие" Или "#Параметр(26)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(27) ) #ИначеЕсли "#Параметр(26)" = "ПравоЧтения" Или "#Параметр(26)" = "ПравоИзменения" #Тогда @@ -2347,6 +2249,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(26)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(27) + #Если Не "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(26)" = "НастройкиПрав" #Тогда И ( @@ -2435,7 +2351,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(27) - #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" + И "#Параметр(26)" <> "Пользователи" + И "#Параметр(26)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(26)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(26)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2488,7 +2406,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(28)" = "" И "#Параметр(29)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(28)" = "Условие" Или "#Параметр(28)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(28)" = "Условие" Или "#Параметр(28)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(29) ) #ИначеЕсли "#Параметр(28)" = "ПравоЧтения" Или "#Параметр(28)" = "ПравоИзменения" #Тогда @@ -2504,6 +2422,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(28)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(29) + #Если Не "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(28)" = "НастройкиПрав" #Тогда И ( @@ -2592,7 +2524,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(29) - #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" + И "#Параметр(28)" <> "Пользователи" + И "#Параметр(28)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(28)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(28)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2645,7 +2579,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -2661,6 +2595,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда И ( @@ -2749,7 +2697,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(31) - #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2802,7 +2752,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(32)" = "" И "#Параметр(33)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(32)" = "Условие" Или "#Параметр(32)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(32)" = "Условие" Или "#Параметр(32)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(33) ) #ИначеЕсли "#Параметр(32)" = "ПравоЧтения" Или "#Параметр(32)" = "ПравоИзменения" #Тогда @@ -2818,6 +2768,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(32)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(33) + #Если Не "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(32)" = "НастройкиПрав" #Тогда И ( @@ -2906,7 +2870,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(33) - #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" + И "#Параметр(32)" <> "Пользователи" + И "#Параметр(32)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(32)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(32)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2959,7 +2925,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(34)" = "" И "#Параметр(35)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(34)" = "Условие" Или "#Параметр(34)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(34)" = "Условие" Или "#Параметр(34)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(35) ) #ИначеЕсли "#Параметр(34)" = "ПравоЧтения" Или "#Параметр(34)" = "ПравоИзменения" #Тогда @@ -2975,6 +2941,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(34)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(35) + #Если Не "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(34)" = "НастройкиПрав" #Тогда И ( @@ -3063,7 +3043,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(35) - #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" + И "#Параметр(34)" <> "Пользователи" + И "#Параметр(34)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(34)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(34)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3151,13 +3133,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Объект", "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Объект", "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), Тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. -// Когда В(n) = "ПравоЧтения" ИЛИ "ПравоИзменения", -// выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", +// выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // Когда В(n) = "Объект" (или " "), то // когда есть запись зависимости прав в регистре сведений ЗависимостиПравДоступа тогда // выполняется проверка права чтения Т.П(n) и наборов значений доступа @@ -3208,73 +3192,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(9)" = "" И "#Параметр(10)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(9),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(9),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(15)" = "" И "#Параметр(16)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(15),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(15),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(21)" = "" И "#Параметр(22)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(21),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(21),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(27)" = "" И "#Параметр(28)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(27),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(27),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(33)" = "" И "#Параметр(34)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(33),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(33),")) И ("#Параметр(36)" = "" И "#Параметр(37)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(36),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(36),")) И ("#Параметр(39)" = "" И "#Параметр(40)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(39),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(39),")) И ("#Параметр(42)" = "" И "#Параметр(43)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(42),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(42),")) И ("#Параметр(45)" = "" И "#Параметр(46)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(45),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(45),")) И ("#Параметр(48)" = "" И "#Параметр(49)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(48),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(48),")) И ("#Параметр(51)" = "" И "#Параметр(52)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(51),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(51),")) - ) #Тогда + ) #Тогда Т ИЗ Т // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -3326,7 +3342,7 @@ #Параметр(5) // [([(][(]...] 0-n открывающихся скобок. //// Проверка значения поля группы параметров 1. -#Если "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -3342,6 +3358,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(6)" = "Объект" Или "#Параметр(6)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -3373,6 +3401,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -3730,8 +3759,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда ( @@ -3820,7 +3852,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(7) - #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3878,7 +3912,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(9)" = "" И "#Параметр(10)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(9)" = "Условие" Или "#Параметр(9)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(9)" = "Условие" Или "#Параметр(9)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(10) ) #ИначеЕсли "#Параметр(9)" = "ПравоЧтения" Или "#Параметр(9)" = "ПравоИзменения" #Тогда @@ -3894,6 +3928,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(9)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(10) + #Если Не "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(9)" = "Объект" Или "#Параметр(9)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -3925,6 +3971,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -4282,8 +4329,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(9)" = "НастройкиПрав" #Тогда ( @@ -4372,7 +4422,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(10) - #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" + И "#Параметр(9)" <> "Пользователи" + И "#Параметр(9)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(9)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(9)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4430,7 +4482,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -4446,6 +4498,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(12)" = "Объект" Или "#Параметр(12)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -4477,6 +4541,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -4834,8 +4899,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда ( @@ -4924,7 +4992,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(13) - #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4982,7 +5052,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(15)" = "" И "#Параметр(16)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(15)" = "Условие" Или "#Параметр(15)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(15)" = "Условие" Или "#Параметр(15)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(16) ) #ИначеЕсли "#Параметр(15)" = "ПравоЧтения" Или "#Параметр(15)" = "ПравоИзменения" #Тогда @@ -4998,6 +5068,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(15)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(16) + #Если Не "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(15)" = "Объект" Или "#Параметр(15)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -5029,6 +5111,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -5386,8 +5469,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(15)" = "НастройкиПрав" #Тогда ( @@ -5476,7 +5562,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(16) - #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" + И "#Параметр(15)" <> "Пользователи" + И "#Параметр(15)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(15)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(15)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5534,7 +5622,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -5550,6 +5638,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(18)" = "Объект" Или "#Параметр(18)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -5581,6 +5681,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -5938,8 +6039,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда ( @@ -6028,7 +6132,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(19) - #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6086,7 +6192,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(21)" = "" И "#Параметр(22)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(21)" = "Условие" Или "#Параметр(21)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(21)" = "Условие" Или "#Параметр(21)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(22) ) #ИначеЕсли "#Параметр(21)" = "ПравоЧтения" Или "#Параметр(21)" = "ПравоИзменения" #Тогда @@ -6102,6 +6208,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(21)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(22) + #Если Не "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(21)" = "Объект" Или "#Параметр(21)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -6133,6 +6251,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -6490,8 +6609,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(21)" = "НастройкиПрав" #Тогда ( @@ -6580,7 +6702,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(22) - #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" + И "#Параметр(21)" <> "Пользователи" + И "#Параметр(21)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(21)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(21)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6638,7 +6762,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -6654,6 +6778,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(24)" = "Объект" Или "#Параметр(24)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -6685,6 +6821,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -7042,8 +7179,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда ( @@ -7132,7 +7272,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(25) - #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -7190,7 +7332,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(27)" = "" И "#Параметр(28)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(27)" = "Условие" Или "#Параметр(27)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(27)" = "Условие" Или "#Параметр(27)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(28) ) #ИначеЕсли "#Параметр(27)" = "ПравоЧтения" Или "#Параметр(27)" = "ПравоИзменения" #Тогда @@ -7206,6 +7348,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(27)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(28) + #Если Не "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(27)" = "Объект" Или "#Параметр(27)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -7237,6 +7391,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -7594,8 +7749,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(27)" = "НастройкиПрав" #Тогда ( @@ -7684,7 +7842,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(28) - #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" + И "#Параметр(27)" <> "Пользователи" + И "#Параметр(27)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(27)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(27)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -7742,7 +7902,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -7758,6 +7918,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(30)" = "Объект" Или "#Параметр(30)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -7789,6 +7961,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -8146,8 +8319,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда ( @@ -8236,7 +8412,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(31) - #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8294,7 +8472,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(33)" = "" И "#Параметр(34)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(33)" = "Условие" Или "#Параметр(33)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(33)" = "Условие" Или "#Параметр(33)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(34) ) #ИначеЕсли "#Параметр(33)" = "ПравоЧтения" Или "#Параметр(33)" = "ПравоИзменения" #Тогда @@ -8310,6 +8488,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(33)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(34) + #Если Не "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(33)" = "Объект" Или "#Параметр(33)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -8341,6 +8531,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -8698,8 +8889,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(33)" = "НастройкиПрав" #Тогда ( @@ -8788,7 +8982,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(34) - #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" + И "#Параметр(33)" <> "Пользователи" + И "#Параметр(33)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(33)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(33)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8846,7 +9042,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(36)" = "" И "#Параметр(37)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(36)" = "Условие" Или "#Параметр(36)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(36)" = "Условие" Или "#Параметр(36)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(37) ) #ИначеЕсли "#Параметр(36)" = "ПравоЧтения" Или "#Параметр(36)" = "ПравоИзменения" #Тогда @@ -8862,6 +9058,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(36)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(37) + #Если Не "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(36)" = "Объект" Или "#Параметр(36)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -8893,6 +9101,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -9250,8 +9459,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(36)" = "НастройкиПрав" #Тогда ( @@ -9340,7 +9552,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(37) - #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" + И "#Параметр(36)" <> "Пользователи" + И "#Параметр(36)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(36)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(36)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -9398,7 +9612,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(39)" = "" И "#Параметр(40)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(39)" = "Условие" Или "#Параметр(39)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(39)" = "Условие" Или "#Параметр(39)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(40) ) #ИначеЕсли "#Параметр(39)" = "ПравоЧтения" Или "#Параметр(39)" = "ПравоИзменения" #Тогда @@ -9414,6 +9628,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(39)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(40) + #Если Не "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(39)" = "Объект" Или "#Параметр(39)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -9445,6 +9671,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -9802,8 +10029,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(39)" = "НастройкиПрав" #Тогда ( @@ -9892,7 +10122,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(40) - #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" + И "#Параметр(39)" <> "Пользователи" + И "#Параметр(39)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(39)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(39)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -9950,7 +10182,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(42)" = "" И "#Параметр(43)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(42)" = "Условие" Или "#Параметр(42)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(42)" = "Условие" Или "#Параметр(42)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(43) ) #ИначеЕсли "#Параметр(42)" = "ПравоЧтения" Или "#Параметр(42)" = "ПравоИзменения" #Тогда @@ -9966,6 +10198,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(42)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(43) + #Если Не "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(42)" = "Объект" Или "#Параметр(42)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -9997,6 +10241,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -10354,8 +10599,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(42)" = "НастройкиПрав" #Тогда ( @@ -10444,7 +10692,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(43) - #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" + И "#Параметр(42)" <> "Пользователи" + И "#Параметр(42)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(42)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(42)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -10502,7 +10752,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(45)" = "" И "#Параметр(46)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(45)" = "Условие" Или "#Параметр(45)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(45)" = "Условие" Или "#Параметр(45)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(46) ) #ИначеЕсли "#Параметр(45)" = "ПравоЧтения" Или "#Параметр(45)" = "ПравоИзменения" #Тогда @@ -10518,6 +10768,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(45)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(46) + #Если Не "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(45)" = "Объект" Или "#Параметр(45)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -10549,6 +10811,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -10906,8 +11169,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(45)" = "НастройкиПрав" #Тогда ( @@ -10996,7 +11262,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(46) - #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" + И "#Параметр(45)" <> "Пользователи" + И "#Параметр(45)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(45)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(45)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -11054,7 +11322,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(48)" = "" И "#Параметр(49)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(48)" = "Условие" Или "#Параметр(48)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(48)" = "Условие" Или "#Параметр(48)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(49) ) #ИначеЕсли "#Параметр(48)" = "ПравоЧтения" Или "#Параметр(48)" = "ПравоИзменения" #Тогда @@ -11070,6 +11338,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(48)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(49) + #Если Не "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(48)" = "Объект" Или "#Параметр(48)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -11101,6 +11381,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -11458,8 +11739,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(48)" = "НастройкиПрав" #Тогда ( @@ -11548,7 +11832,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(49) - #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" + И "#Параметр(48)" <> "Пользователи" + И "#Параметр(48)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(48)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(48)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -11606,7 +11892,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(51)" = "" И "#Параметр(52)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(51)" = "Условие" Или "#Параметр(51)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(51)" = "Условие" Или "#Параметр(51)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(52) ) #ИначеЕсли "#Параметр(51)" = "ПравоЧтения" Или "#Параметр(51)" = "ПравоИзменения" #Тогда @@ -11622,6 +11908,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(51)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(52) + #Если Не "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(51)" = "Объект" Или "#Параметр(51)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -11653,6 +11951,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -12010,8 +12309,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(51)" = "НастройкиПрав" #Тогда ( @@ -12100,7 +12402,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(52) - #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" + И "#Параметр(51)" <> "Пользователи" + И "#Параметр(51)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(51)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(51)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -12183,13 +12487,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. // Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", // выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // П(n) - Поле проверяемого значения с псевдонимом, например "Т.Организация", // кроме случая В(n) = "Условие" (или ""). // О(n) - Логические операции "И", "ИЛИ" в сочетании с скобками "(", ")". @@ -12228,73 +12534,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(9)" = "" И "#Параметр(10)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(9),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(9),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(15)" = "" И "#Параметр(16)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(15),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(15),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(21)" = "" И "#Параметр(22)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(21),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(21),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(27)" = "" И "#Параметр(28)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(27),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(27),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(33)" = "" И "#Параметр(34)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(33),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(33),")) И ("#Параметр(36)" = "" И "#Параметр(37)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(36),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(36),")) И ("#Параметр(39)" = "" И "#Параметр(40)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(39),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(39),")) И ("#Параметр(42)" = "" И "#Параметр(43)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(42),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(42),")) И ("#Параметр(45)" = "" И "#Параметр(46)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(45),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(45),")) И ("#Параметр(48)" = "" И "#Параметр(49)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(48),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(48),")) И ("#Параметр(51)" = "" И "#Параметр(52)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(51),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(51),")) - ) #Тогда + ) #Тогда Т ИЗ Т // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -12346,7 +12684,7 @@ #Параметр(5) // [([(][(]...] 0-n открывающихся скобок. //// Проверка значения поля группы параметров 1. -#Если "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -12362,6 +12700,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда ( @@ -12450,7 +12802,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(7) - #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -12507,7 +12861,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(9)" = "" И "#Параметр(10)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(9)" = "Условие" Или "#Параметр(9)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(9)" = "Условие" Или "#Параметр(9)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(10) ) #ИначеЕсли "#Параметр(9)" = "ПравоЧтения" Или "#Параметр(9)" = "ПравоИзменения" #Тогда @@ -12523,6 +12877,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(9)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(10) + #Если Не "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(9)" = "НастройкиПрав" #Тогда ( @@ -12611,7 +12979,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(10) - #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" + И "#Параметр(9)" <> "Пользователи" + И "#Параметр(9)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(9)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(9)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -12668,7 +13038,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -12684,6 +13054,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда ( @@ -12772,7 +13156,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(13) - #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -12829,7 +13215,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(15)" = "" И "#Параметр(16)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(15)" = "Условие" Или "#Параметр(15)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(15)" = "Условие" Или "#Параметр(15)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(16) ) #ИначеЕсли "#Параметр(15)" = "ПравоЧтения" Или "#Параметр(15)" = "ПравоИзменения" #Тогда @@ -12845,6 +13231,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(15)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(16) + #Если Не "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(15)" = "НастройкиПрав" #Тогда ( @@ -12933,7 +13333,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(16) - #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" + И "#Параметр(15)" <> "Пользователи" + И "#Параметр(15)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(15)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(15)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -12990,7 +13392,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -13006,6 +13408,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда ( @@ -13094,7 +13510,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(19) - #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -13151,7 +13569,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(21)" = "" И "#Параметр(22)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(21)" = "Условие" Или "#Параметр(21)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(21)" = "Условие" Или "#Параметр(21)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(22) ) #ИначеЕсли "#Параметр(21)" = "ПравоЧтения" Или "#Параметр(21)" = "ПравоИзменения" #Тогда @@ -13167,6 +13585,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(21)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(22) + #Если Не "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(21)" = "НастройкиПрав" #Тогда ( @@ -13255,7 +13687,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(22) - #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" + И "#Параметр(21)" <> "Пользователи" + И "#Параметр(21)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(21)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(21)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -13312,7 +13746,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -13328,6 +13762,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда ( @@ -13416,7 +13864,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(25) - #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -13473,7 +13923,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(27)" = "" И "#Параметр(28)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(27)" = "Условие" Или "#Параметр(27)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(27)" = "Условие" Или "#Параметр(27)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(28) ) #ИначеЕсли "#Параметр(27)" = "ПравоЧтения" Или "#Параметр(27)" = "ПравоИзменения" #Тогда @@ -13489,6 +13939,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(27)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(28) + #Если Не "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(27)" = "НастройкиПрав" #Тогда ( @@ -13577,7 +14041,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(28) - #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" + И "#Параметр(27)" <> "Пользователи" + И "#Параметр(27)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(27)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(27)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -13634,7 +14100,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -13650,6 +14116,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда ( @@ -13738,7 +14218,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(31) - #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -13795,7 +14277,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(33)" = "" И "#Параметр(34)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(33)" = "Условие" Или "#Параметр(33)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(33)" = "Условие" Или "#Параметр(33)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(34) ) #ИначеЕсли "#Параметр(33)" = "ПравоЧтения" Или "#Параметр(33)" = "ПравоИзменения" #Тогда @@ -13811,6 +14293,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(33)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(34) + #Если Не "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(33)" = "НастройкиПрав" #Тогда ( @@ -13899,7 +14395,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(34) - #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" + И "#Параметр(33)" <> "Пользователи" + И "#Параметр(33)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(33)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(33)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -13956,7 +14454,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(36)" = "" И "#Параметр(37)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(36)" = "Условие" Или "#Параметр(36)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(36)" = "Условие" Или "#Параметр(36)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(37) ) #ИначеЕсли "#Параметр(36)" = "ПравоЧтения" Или "#Параметр(36)" = "ПравоИзменения" #Тогда @@ -13972,6 +14470,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(36)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(37) + #Если Не "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(36)" = "НастройкиПрав" #Тогда ( @@ -14060,7 +14572,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(37) - #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" + И "#Параметр(36)" <> "Пользователи" + И "#Параметр(36)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(36)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(36)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -14117,7 +14631,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(39)" = "" И "#Параметр(40)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(39)" = "Условие" Или "#Параметр(39)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(39)" = "Условие" Или "#Параметр(39)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(40) ) #ИначеЕсли "#Параметр(39)" = "ПравоЧтения" Или "#Параметр(39)" = "ПравоИзменения" #Тогда @@ -14133,6 +14647,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(39)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(40) + #Если Не "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(39)" = "НастройкиПрав" #Тогда ( @@ -14221,7 +14749,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(40) - #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" + И "#Параметр(39)" <> "Пользователи" + И "#Параметр(39)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(39)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(39)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -14278,7 +14808,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(42)" = "" И "#Параметр(43)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(42)" = "Условие" Или "#Параметр(42)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(42)" = "Условие" Или "#Параметр(42)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(43) ) #ИначеЕсли "#Параметр(42)" = "ПравоЧтения" Или "#Параметр(42)" = "ПравоИзменения" #Тогда @@ -14294,6 +14824,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(42)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(43) + #Если Не "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(42)" = "НастройкиПрав" #Тогда ( @@ -14382,7 +14926,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(43) - #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" + И "#Параметр(42)" <> "Пользователи" + И "#Параметр(42)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(42)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(42)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -14439,7 +14985,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(45)" = "" И "#Параметр(46)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(45)" = "Условие" Или "#Параметр(45)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(45)" = "Условие" Или "#Параметр(45)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(46) ) #ИначеЕсли "#Параметр(45)" = "ПравоЧтения" Или "#Параметр(45)" = "ПравоИзменения" #Тогда @@ -14455,6 +15001,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(45)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(46) + #Если Не "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(45)" = "НастройкиПрав" #Тогда ( @@ -14543,7 +15103,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(46) - #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" + И "#Параметр(45)" <> "Пользователи" + И "#Параметр(45)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(45)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(45)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -14600,7 +15162,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(48)" = "" И "#Параметр(49)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(48)" = "Условие" Или "#Параметр(48)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(48)" = "Условие" Или "#Параметр(48)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(49) ) #ИначеЕсли "#Параметр(48)" = "ПравоЧтения" Или "#Параметр(48)" = "ПравоИзменения" #Тогда @@ -14616,6 +15178,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(48)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(49) + #Если Не "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(48)" = "НастройкиПрав" #Тогда ( @@ -14704,7 +15280,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(49) - #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" + И "#Параметр(48)" <> "Пользователи" + И "#Параметр(48)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(48)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(48)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -14761,7 +15339,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(51)" = "" И "#Параметр(52)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(51)" = "Условие" Или "#Параметр(51)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(51)" = "Условие" Или "#Параметр(51)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(52) ) #ИначеЕсли "#Параметр(51)" = "ПравоЧтения" Или "#Параметр(51)" = "ПравоИзменения" #Тогда @@ -14777,6 +15355,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(51)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(52) + #Если Не "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(51)" = "НастройкиПрав" #Тогда ( @@ -14865,7 +15457,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(52) - #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" + И "#Параметр(51)" <> "Пользователи" + И "#Параметр(51)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(51)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(51)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" diff --git a/SSL/src/Roles/Интеграция1СБухфон/Интеграция1СБухфон.mdo b/SSL/src/Roles/Интеграция1СБухфон/Интеграция1СБухфон.mdo index 8d62f2f0f..0c0d623bb 100644 --- a/SSL/src/Roles/Интеграция1СБухфон/Интеграция1СБухфон.mdo +++ b/SSL/src/Roles/Интеграция1СБухфон/Интеграция1СБухфон.mdo @@ -3,6 +3,6 @@ Интеграция1СБухфон ru - Интеграция с 1С-Коннект + Вызов онлайн-поддержки diff --git a/SSL/src/Roles/ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок/Rights.rights b/SSL/src/Roles/ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок/Rights.rights index 7ea1d9620..a2a8ed5dc 100644 --- a/SSL/src/Roles/ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок/Rights.rights +++ b/SSL/src/Roles/ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок/Rights.rights @@ -3,281 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -289,1535 +14,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1829,1194 +25,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - Configuration.БиблиотекаСтандартныхПодсистем @@ -3052,5836 +60,6 @@ true - - Catalog.ШаблоныАнкет.Attribute.Вступление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8893,3141 +71,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -12039,3898 +82,4 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ИспользованиеВариантовОтчетов/Rights.rights b/SSL/src/Roles/ИспользованиеВариантовОтчетов/Rights.rights deleted file mode 100644 index b7dba0a03..000000000 --- a/SSL/src/Roles/ИспользованиеВариантовОтчетов/Rights.rights +++ /dev/null @@ -1,670 +0,0 @@ - - - false - true - false - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - Edit - false - - - - Catalog.ВариантыОтчетов - - Read - true - - ВариантыОтчетов ГДЕ (ВариантыОтчетов.Пользовательский = ЛОЖЬ - ИЛИ ВариантыОтчетов.ТолькоДляАвтора = ЛОЖЬ - ИЛИ ВариантыОтчетов.Автор = &ТекущийПользователь) - - - - Insert - true - - ВариантыОтчетов ГДЕ ВариантыОтчетов.Автор = &ТекущийПользователь - - - - Update - true - - ВариантыОтчетов ГДЕ ВариантыОтчетов.Автор = &ТекущийПользователь - - - - View - true - - - InteractiveInsert - true - - - Edit - true - - - InteractiveSetDeletionMark - true - - - InteractiveClearDeletionMark - true - - - InputByString - true - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - Edit - false - - - - CommonForm.ПанельОтчетов - - View - true - - - - CommonForm.ФормаВариантаОтчета - - View - true - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - Edit - false - - - - Catalog.ВариантыОтчетов.Command.Открыть - - View - true - - - - InformationRegister.ПредопределенныеВариантыОтчетовВерсийРасширений - - Read - true - - - View - true - - - - Catalog.ВариантыОтчетов.Attribute.ТолькоДляАвтора - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетовРасширений - - Read - true - - - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных - - Read - true - - - - InformationRegister.НастройкиВариантовОтчетов.Resource.Видимость - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Пользовательский - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение.Attribute.Подсистема - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - Edit - false - - - - Catalog.ПользовательскиеНастройкиОтчетов - - Read - true - - ГДЕ Пользователь = &ТекущийПользователь - - - - Insert - true - - ГДЕ Пользователь = &ТекущийПользователь - - - - Update - true - - ГДЕ Пользователь = &ТекущийПользователь - - - - View - true - - - InputByString - true - - - - CommonForm.ФормаНастроекОтчета - - View - true - - - - InformationRegister.НастройкиВариантовОтчетов.Dimension.Вариант - - View - false - - - Edit - false - - - - CommonForm.ВыборПроизвольногоПериода - - View - true - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - CommonForm.ОтправкаТабличныхДокументовПоПочте - - View - true - - - - CommonForm.ФормаОтчета - - View - true - - - - Catalog.ПредопределенныеВариантыОтчетов - - Read - true - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.ХешНастроек - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.Отчет - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.КлючЗамеров - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВариантовОтчетов.Dimension.Подсистема - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Command.Изменить - - View - true - - - - InformationRegister.НастройкиВариантовОтчетов - - Read - true - - ГДЕ (Пользователь = &ТекущийПользователь - ИЛИ Вариант.Автор = &ТекущийПользователь) - - - - Update - true - - ГДЕ (Пользователь = &ТекущийПользователь - ИЛИ Вариант.Автор = &ТекущийПользователь) - - - - - InformationRegister.НастройкиВариантовОтчетов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВариантовОтчетов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВариантовОтчетов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВариантовОтчетов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВариантовОтчетов.Resource.БыстрыйДоступ - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение.Attribute.СмТакже - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Command.РазместитьВРазделах - - View - true - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.НаименованияПолей - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.Включен - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение.Attribute.Важный - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.НаименованияПараметровИОтборов - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.КлючевыеСлова - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.ГруппироватьПоОтчету - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВариантовОтчетов.Dimension.Пользователь - - View - false - - - Edit - false - - - diff --git a/SSL/src/Roles/ИспользованиеДополнительныхОтчетовИОбработок/Rights.rights b/SSL/src/Roles/ИспользованиеДополнительныхОтчетовИОбработок/Rights.rights deleted file mode 100644 index 612e922de..000000000 --- a/SSL/src/Roles/ИспользованиеДополнительныхОтчетовИОбработок/Rights.rights +++ /dev/null @@ -1,18608 +0,0 @@ - - - false - true - false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Вступление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разрешения.Attribute.Параметры - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - CommonForm.ДлительнаяОперацияДополнительныхОтчетовИОбработок - - View - true - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользуетХранилищеВариантов - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.ОбъектНазначения - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам - - Read - true - - - Update - true - - ГДЕ Пользователь = &АвторизованныйПользователь - - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - CommonCommand.СозданиеСвязанныхОбъектов - - View - true - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок - - Read - true - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки - - Read - true - - #ПоЗначениям( "Справочник.ДополнительныеОтчетыИОбработки", "", "", -"ДополнительныеОтчетыИОбработки", "Ссылка", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","") - - - - View - true - - - InputByString - true - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разрешения.Attribute.ВидРазрешения - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - CommonCommand.ОтчетыОбъекта - - View - true - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Скрыть - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разрешения - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - CommonForm.ДополнительныеОтчетыИОбработки - - View - true - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - CommonForm.НастройкаМоихОтчетовИОбработок - - View - true - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.Раздел - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеНастроек - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - CommonCommand.ЗаполнениеОбъекта - - View - true - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяОбъекта - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - - - ПоЗначениям - // ПоЗначениям(Таблица, -, Модификатор, В1,П1, В2,П2, ..., В(n), П(n)). -// № параметра: 1, 2, 3, 4, 5, 6, 7, ..., 2+n*2,3+n*2. -// Читается так: "ограничение доступа по значениям". -// Параметры: -// Таблица - Имя текущей таблицы, например "Документ.ПоступлениеТоваровИУслуг". -// Модификатор - изменяет шаблон. -// 1-й модификатор - строка "НеОграничиватьДоступКГруппам" указывает -// безусловно выбирать группы иерархического справочника. -// Других модификаторов в этой версии шаблона не предусмотрено. -// В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения -// производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", -// чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. -// Когда В(n) = "Условие" (или ""), тогда П(n) содержит строку условия на языке запросов, например -// "Т.Автор = &АвторизованныйПользователь", -// "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. -// Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", -// выполняется проверка наличия права на таблицу значения Т.П(n). -// П(n) - Поле проверяемого значения, кроме случая В(n) = "Условие" (или ""). -// Примечение: максимальное количество одновременно проверяемых значений полей можно увеличить, изменив шаблон, но -// необходимо будет указывать все параметры шаблона, т.е. указывать пустые строки, когда количество полей меньше максимального. -// Шаблон имеет структуру: -// <Общая часть условий> <Условие по группе параметров 1> И <Условие по группе параметров 2> И ... <Условие по группе параметров(n)> -// Пример: -// ПоЗначениям("Документ.ПоступлениеТоваровИУслуг", "", "", -// "Организации","Организация", -// "Поставщики","Контрагент", "","", ...) - -// Проверка правильности параметра Право. -#Если Не ("#Параметр(2)" = "Чтение" Или "#Параметр(2)" = "Добавление" Или - "#Параметр(2)" = "Изменение" Или "#Параметр(2)" = "Удаление" Или "#Параметр(2)" = "") - Или #ИмяТекущегоПраваДоступа <> "Чтение" И "#Параметр(2)" = "Чтение" - Или #ИмяТекущегоПраваДоступа = "Чтение" И "#Параметр(2)" <> "Чтение" И "#Параметр(2)" <> "" #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверноеПраво: #Параметр(2) -#КонецЕсли - -// Проверка правильности параметра ИмяТаблицы. -#Если "#Параметр(1)" <> #ИмяТекущейТаблицы #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверноеИмяТекущейТаблицы: "#Параметр(1)" -#КонецЕсли - -// Проверка правильности параметра Модификатор. -#Если Не ("#Параметр(3)" = "НеОграничиватьДоступКГруппам" Или "#Параметр(3)" = "") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйМодификатор: #Параметр(3) -#КонецЕсли - -// Общая проверка использования ограничений доступа на уровне записей и -// проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина - И ("#Параметр(4)" = "" И "#Параметр(5)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(4),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(4),")) - И ("#Параметр(6)" = "" И "#Параметр(7)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) - И ("#Параметр(8)" = "" И "#Параметр(9)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(8),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(8),")) - И ("#Параметр(10)" = "" И "#Параметр(11)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(10),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(10),")) - И ("#Параметр(12)" = "" И "#Параметр(13)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) - И ("#Параметр(14)" = "" И "#Параметр(15)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(14),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(14),")) - И ("#Параметр(16)" = "" И "#Параметр(17)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(16),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(16),")) - И ("#Параметр(18)" = "" И "#Параметр(19)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) - И ("#Параметр(20)" = "" И "#Параметр(21)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(20),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(20),")) - И ("#Параметр(22)" = "" И "#Параметр(23)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(22),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(22),")) - И ("#Параметр(24)" = "" И "#Параметр(25)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) - И ("#Параметр(26)" = "" И "#Параметр(27)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(26),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(26),")) - И ("#Параметр(28)" = "" И "#Параметр(29)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(28),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(28),")) - И ("#Параметр(30)" = "" И "#Параметр(31)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) - И ("#Параметр(32)" = "" И "#Параметр(33)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(32),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(32),")) - И ("#Параметр(34)" = "" И "#Параметр(35)" = "" - Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(34),") - Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(34),")) - ) #Тогда - -Т ГДЕ // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). - -// Безусловная выборка групп в иерархическом объекте метаданных (если нужно). -#Если "#Параметр(3)" = "НеОграничиватьДоступКГруппам" #Тогда - Т.ЭтоГруппа ИЛИ -#КонецЕсли - -ИСТИНА В -( // Проверка права пользователя на текущую таблицу в целом. - // Права на таблицы формируются по составу ролей профиля группы доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ - Справочник.ИдентификаторыОбъектовМетаданных КАК СвойстваТекущейТаблицы - ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ГруппыДоступа КАК ГруппыДоступа - ПО - СвойстваТекущейТаблицы.ПолноеИмя = "#Параметр(1)" - И ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ - РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступа - ГДЕ - ТаблицыГруппДоступа.Таблица = СвойстваТекущейТаблицы.Ссылка - И ТаблицыГруппДоступа.ГруппаДоступа = ГруппыДоступа.Ссылка - #Если Не #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И ТаблицыГруппДоступа.Изменение - #КонецЕсли - ) - И ГруппыДоступа.Ссылка В - ( - ВЫБРАТЬ - ГруппыДоступаПользователи.Ссылка КАК ГруппаДоступа - ИЗ - Справочник.ГруппыДоступа.Пользователи КАК ГруппыДоступаПользователи - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = ГруппыДоступаПользователи.Пользователь - ) - ГДЕ - ( // Поиск значений заданных полей в разрешенных значениях групп доступа (пользователей). - -//// Проверка значения поля группы параметров 1. -#Если "#Параметр(4)" = "Условие" Или "#Параметр(4)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - ( #Параметр(5) ) -#ИначеЕсли "#Параметр(4)" = "ПравоЧтения" Или "#Параметр(4)" = "ПравоИзменения" #Тогда - Т.#Параметр(5) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(5)) - #Если Не "#Параметр(4)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(4)" = "НастройкиПрав" #Тогда - - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(5) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(5) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(4),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(4)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(4)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(4)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(4),") #Тогда - - ( - ЕСТЬNULL(Т.#Параметр(5), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(4),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(4),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(5) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(4),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(5) - #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(4)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(4)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(4),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(5) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(5) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(5)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#Иначе - ИСТИНА -#КонецЕсли - -//// Проверка значения поля группы параметров 2. -#Если "#Параметр(6)" = "" И "#Параметр(7)" = "" #Тогда - // Группа параметров не используется. -#ИначеЕсли "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - И ( #Параметр(7) ) -#ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда - И Т.#Параметр(7) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(7)) - #Если Не "#Параметр(6)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда - И - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(7) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(7) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(6),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(6)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(6)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(6)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),") #Тогда - И - ( - ЕСТЬNULL(Т.#Параметр(7), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(6),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(6),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(7) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(6),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(7) - #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(6)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(6),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(7) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(7) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(7)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#КонецЕсли - -//// Проверка значения поля группы параметров 3. -#Если "#Параметр(8)" = "" И "#Параметр(9)" = "" #Тогда - // Группа параметров не используется. -#ИначеЕсли "#Параметр(8)" = "Условие" Или "#Параметр(8)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - И ( #Параметр(9) ) -#ИначеЕсли "#Параметр(8)" = "ПравоЧтения" Или "#Параметр(8)" = "ПравоИзменения" #Тогда - И Т.#Параметр(9) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(9)) - #Если Не "#Параметр(8)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(8)" = "НастройкиПрав" #Тогда - И - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(9) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(9) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(8),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(8)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(8)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(8)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(8),") #Тогда - И - ( - ЕСТЬNULL(Т.#Параметр(9), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(8),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(8),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(9) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(8),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(9) - #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(8)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(8)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(8),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(9) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(9) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(9)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#КонецЕсли - -//// Проверка значения поля группы параметров 4. -#Если "#Параметр(10)" = "" И "#Параметр(11)" = "" #Тогда - // Группа параметров не используется. -#ИначеЕсли "#Параметр(10)" = "Условие" Или "#Параметр(10)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - И ( #Параметр(11) ) -#ИначеЕсли "#Параметр(10)" = "ПравоЧтения" Или "#Параметр(10)" = "ПравоИзменения" #Тогда - И Т.#Параметр(11) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(11)) - #Если Не "#Параметр(10)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(10)" = "НастройкиПрав" #Тогда - И - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(11) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(11) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(10),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(10)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(10)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(10)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(10),") #Тогда - И - ( - ЕСТЬNULL(Т.#Параметр(11), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(10),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(10),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(11) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(10),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(11) - #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(10)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(10)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(10),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(11) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(11) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(11)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#КонецЕсли - -//// Проверка значения поля группы параметров 5. -#Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда - // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - И ( #Параметр(13) ) -#ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда - И Т.#Параметр(13) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(13)) - #Если Не "#Параметр(12)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда - И - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(13) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(13) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(12),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(12)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(12)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(12)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),") #Тогда - И - ( - ЕСТЬNULL(Т.#Параметр(13), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(12),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(12),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(13) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(12),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(13) - #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(12)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(12),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(13) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(13) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(13)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#КонецЕсли - -//// Проверка значения поля группы параметров 6. -#Если "#Параметр(14)" = "" И "#Параметр(15)" = "" #Тогда - // Группа параметров не используется. -#ИначеЕсли "#Параметр(14)" = "Условие" Или "#Параметр(14)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - И ( #Параметр(15) ) -#ИначеЕсли "#Параметр(14)" = "ПравоЧтения" Или "#Параметр(14)" = "ПравоИзменения" #Тогда - И Т.#Параметр(15) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(15)) - #Если Не "#Параметр(14)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(14)" = "НастройкиПрав" #Тогда - И - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(15) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(15) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(14),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(14)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(14)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(14)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(14),") #Тогда - И - ( - ЕСТЬNULL(Т.#Параметр(15), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(14),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(14),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(15) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(14),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(15) - #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(14)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(14)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(14),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(15) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(15) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(15)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#КонецЕсли - -//// Проверка значения поля группы параметров 7. -#Если "#Параметр(16)" = "" И "#Параметр(17)" = "" #Тогда - // Группа параметров не используется. -#ИначеЕсли "#Параметр(16)" = "Условие" Или "#Параметр(16)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - И ( #Параметр(17) ) -#ИначеЕсли "#Параметр(16)" = "ПравоЧтения" Или "#Параметр(16)" = "ПравоИзменения" #Тогда - И Т.#Параметр(17) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(17)) - #Если Не "#Параметр(16)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(16)" = "НастройкиПрав" #Тогда - И - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(17) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(17) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(16),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(16)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(16)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(16)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(16),") #Тогда - И - ( - ЕСТЬNULL(Т.#Параметр(17), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(16),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(16),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(17) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(16),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(17) - #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(16)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(16)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(16),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(17) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(17) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(17)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#КонецЕсли - -//// Проверка значения поля группы параметров 8. -#Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда - // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - И ( #Параметр(19) ) -#ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда - И Т.#Параметр(19) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(19)) - #Если Не "#Параметр(18)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда - И - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(19) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(19) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(18),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(18)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(18)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(18)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),") #Тогда - И - ( - ЕСТЬNULL(Т.#Параметр(19), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(18),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(18),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(19) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(18),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(19) - #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(18)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(18),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(19) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(19) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(19)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#КонецЕсли - -//// Проверка значения поля группы параметров 9. -#Если "#Параметр(20)" = "" И "#Параметр(21)" = "" #Тогда - // Группа параметров не используется. -#ИначеЕсли "#Параметр(20)" = "Условие" Или "#Параметр(20)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - И ( #Параметр(21) ) -#ИначеЕсли "#Параметр(20)" = "ПравоЧтения" Или "#Параметр(20)" = "ПравоИзменения" #Тогда - И Т.#Параметр(21) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(21)) - #Если Не "#Параметр(20)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(20)" = "НастройкиПрав" #Тогда - И - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(21) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(21) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(20),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(20)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(20)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(20)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(20),") #Тогда - И - ( - ЕСТЬNULL(Т.#Параметр(21), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(20),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(20),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(21) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(20),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(21) - #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(20)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(20)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(20),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(21) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(21) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(21)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#КонецЕсли - -//// Проверка значения поля группы параметров 10. -#Если "#Параметр(22)" = "" И "#Параметр(23)" = "" #Тогда - // Группа параметров не используется. -#ИначеЕсли "#Параметр(22)" = "Условие" Или "#Параметр(22)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - И ( #Параметр(23) ) -#ИначеЕсли "#Параметр(22)" = "ПравоЧтения" Или "#Параметр(22)" = "ПравоИзменения" #Тогда - И Т.#Параметр(23) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(23)) - #Если Не "#Параметр(22)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(22)" = "НастройкиПрав" #Тогда - И - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(23) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(23) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(22),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(22)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(22)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(22)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(22),") #Тогда - И - ( - ЕСТЬNULL(Т.#Параметр(23), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(22),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(22),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(23) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(22),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(23) - #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(22)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(22)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(22),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(23) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(23) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(23)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#КонецЕсли - -//// Проверка значения поля группы параметров 11. -#Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда - // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - И ( #Параметр(25) ) -#ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда - И Т.#Параметр(25) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(25)) - #Если Не "#Параметр(24)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда - И - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(25) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(25) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(24),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(24)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(24)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(24)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),") #Тогда - И - ( - ЕСТЬNULL(Т.#Параметр(25), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(24),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(24),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(25) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(24),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(25) - #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(24)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(24),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(25) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(25) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(25)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#КонецЕсли - -//// Проверка значения поля группы параметров 12. -#Если "#Параметр(26)" = "" И "#Параметр(27)" = "" #Тогда - // Группа параметров не используется. -#ИначеЕсли "#Параметр(26)" = "Условие" Или "#Параметр(26)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - И ( #Параметр(27) ) -#ИначеЕсли "#Параметр(26)" = "ПравоЧтения" Или "#Параметр(26)" = "ПравоИзменения" #Тогда - И Т.#Параметр(27) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(27)) - #Если Не "#Параметр(26)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(26)" = "НастройкиПрав" #Тогда - И - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(27) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(27) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(26),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(26)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(26)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(26)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(26),") #Тогда - И - ( - ЕСТЬNULL(Т.#Параметр(27), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(26),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(26),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(27) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(26),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(27) - #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(26)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(26)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(26),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(27) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(27) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(27)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#КонецЕсли - -//// Проверка значения поля группы параметров 13. -#Если "#Параметр(28)" = "" И "#Параметр(29)" = "" #Тогда - // Группа параметров не используется. -#ИначеЕсли "#Параметр(28)" = "Условие" Или "#Параметр(28)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - И ( #Параметр(29) ) -#ИначеЕсли "#Параметр(28)" = "ПравоЧтения" Или "#Параметр(28)" = "ПравоИзменения" #Тогда - И Т.#Параметр(29) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(29)) - #Если Не "#Параметр(28)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(28)" = "НастройкиПрав" #Тогда - И - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(29) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(29) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(28),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(28)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(28)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(28)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(28),") #Тогда - И - ( - ЕСТЬNULL(Т.#Параметр(29), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(28),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(28),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(29) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(28),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(29) - #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(28)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(28)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(28),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(29) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(29) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(29)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#КонецЕсли - -//// Проверка значения поля группы параметров 14. -#Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда - // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - И ( #Параметр(31) ) -#ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда - И Т.#Параметр(31) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(31)) - #Если Не "#Параметр(30)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда - И - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(31) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(31) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(30),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(30)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(30)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(30)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),") #Тогда - И - ( - ЕСТЬNULL(Т.#Параметр(31), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(30),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(30),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(31) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(30),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(31) - #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(30)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(30),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(31) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(31) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(31)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#КонецЕсли - -//// Проверка значения поля группы параметров 15. -#Если "#Параметр(32)" = "" И "#Параметр(33)" = "" #Тогда - // Группа параметров не используется. -#ИначеЕсли "#Параметр(32)" = "Условие" Или "#Параметр(32)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - И ( #Параметр(33) ) -#ИначеЕсли "#Параметр(32)" = "ПравоЧтения" Или "#Параметр(32)" = "ПравоИзменения" #Тогда - И Т.#Параметр(33) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(33)) - #Если Не "#Параметр(32)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(32)" = "НастройкиПрав" #Тогда - И - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(33) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(33) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(32),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(32)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(32)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(32)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(32),") #Тогда - И - ( - ЕСТЬNULL(Т.#Параметр(33), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(32),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(32),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(33) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(32),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(33) - #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(32)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(32)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(32),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(33) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(33) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(33)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#КонецЕсли - -//// Проверка значения поля группы параметров 16. -#Если "#Параметр(34)" = "" И "#Параметр(35)" = "" #Тогда - // Группа параметров не используется. -#ИначеЕсли "#Параметр(34)" = "Условие" Или "#Параметр(34)" = "" #Тогда - // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. - И ( #Параметр(35) ) -#ИначеЕсли "#Параметр(34)" = "ПравоЧтения" Или "#Параметр(34)" = "ПравоИзменения" #Тогда - И Т.#Параметр(35) <> НЕОПРЕДЕЛЕНО - И ИСТИНА В - ( // Проверка права пользователя на таблицу Значения, установленного в поле. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава - ГДЕ - ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(35)) - #Если Не "#Параметр(34)" = "ПравоЧтения" #Тогда - И ТаблицыГруппДоступаПроверкаПрава.Изменение - #КонецЕсли - ) -#ИначеЕсли "#Параметр(34)" = "НастройкиПрав" #Тогда - И - ( - ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(35) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ - ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек - ПО - НаследованиеНастроек.Объект = Т.#Параметр(35) - И НастройкиПрав.Объект = НаследованиеНастроек.Родитель - #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения - #Иначе - #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда - И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка - #Иначе - И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) - #КонецЕсли - И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения - #КонецЕсли - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей - ПО - СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь - И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь - ) - ) -#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(34),") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - #Если СтрСодержит("#Параметр(34)", ",") #Тогда - НеверныйВидДоступа: "#Параметр(34)" - "Список имен видов доступа не найден" - #Иначе - НеверныйВидДоступа: "#Параметр(34)" - "Имя вида доступа не найдено" - #КонецЕсли -#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" - И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(34),") #Тогда - И - ( - ЕСТЬNULL(Т.#Параметр(35), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО - И - #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(34),", ",Пользователи,")) - Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(34),", ",ВнешниеПользователи,")) #Тогда - НЕ - ( - НЕ ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа - ГДЕ - ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(35) - И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь - ) - И НЕ - #Иначе - ( - #КонецЕсли - ВЫБОР - КОГДА ИСТИНА В - ( - #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(34),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.#Параметр(35) - #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" #Тогда - #Если СтрСодержит("#Параметр(34)", ",") #Тогда - // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. - НеверныйВидДоступа: "#Параметр(34)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" - #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(34),") #Тогда - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ГДЕ - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = Т.ГруппаДоступа - #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа - И ГруппыЗначений.Ссылка = Т.#Параметр(35) - #КонецЕсли - #Иначе - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения - ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений - ПО - Значения.ГруппаДоступа = ГруппыДоступа.Ссылка - И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа - И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(35) - #КонецЕсли - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - = - ВЫБОР - КОГДА ИСТИНА В - ( - ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА - ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию - ГДЕ - ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка - И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(35)) - И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ - ) - ТОГДА ИСТИНА - ИНАЧЕ ЛОЖЬ - КОНЕЦ - ) - ) -#КонецЕсли - - ) -) -#КонецЕсли - - - - diff --git a/SSL/src/Roles/ИспользованиеДополнительныхОтчетовИОбработок/ИспользованиеДополнительныхОтчетовИОбработок.mdo b/SSL/src/Roles/ИспользованиеДополнительныхОтчетовИОбработок/ИспользованиеДополнительныхОтчетовИОбработок.mdo deleted file mode 100644 index a21237748..000000000 --- a/SSL/src/Roles/ИспользованиеДополнительныхОтчетовИОбработок/ИспользованиеДополнительныхОтчетовИОбработок.mdo +++ /dev/null @@ -1,8 +0,0 @@ - - - ИспользованиеДополнительныхОтчетовИОбработок - - ru - Использование дополнительных отчетов и обработок - - diff --git a/SSL/src/Roles/ИспользованиеДосьеКонтрагента/Rights.rights b/SSL/src/Roles/ИспользованиеДосьеКонтрагента/Rights.rights deleted file mode 100644 index 8e3ad1f1c..000000000 --- a/SSL/src/Roles/ИспользованиеДосьеКонтрагента/Rights.rights +++ /dev/null @@ -1,34040 +0,0 @@ - - - false - true - false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодПредопределенногоУзла - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ФорматПодписиДляНовыхСообщений - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Resource.КодКЛАДР - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СведенияОПользователях.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.ОбластиСтатистики.Dimension.ИдентификаторОбласти - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.Dimension.КаналСообщений - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНаборыЗначенийДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНаборыЗначенийДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНаборыЗначенийДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНаборыЗначенийДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.COMПарольПользователя - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.Attribute.ИнтервалПовтораПриАварийномЗавершении - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияПапокПисем.Dimension.Папка - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - InformationRegister.ГруппыЗначенийДоступа.Dimension.ГруппаЗначенийДоступа - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяСервиса - - View - false - - - Edit - false - - - - InformationRegister.УдалитьГруппыЗначенийДоступа.Resource.НаследоватьПраваРодителей - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.Dimension.ДатаНачалаЗамера - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Resource.ПочтовыйИндекс - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.УзелДляОбмена - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.Attribute.КоррСчет - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ФорматПодписиПриОтветеПересылке - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - InformationRegister.НаборыЗначенийДоступа.Dimension.Уточнение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.Подготовлена - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПоставляемыеДанныеТребующиеОбработки.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПоставляемыеДанныеТребующиеОбработки.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПоставляемыеДанныеТребующиеОбработки.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПоставляемыеДанныеТребующиеОбработки.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.Dimension.ИдентификаторУдаления - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.Resource.Рассмотрено - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.WSЗапомнитьПароль - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.РазрешенияНаИспользованиеВнешнихРесурсов.Attribute.ПредставлениеПрограммногоМодуля - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.СостояниеЗадания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.НомерПопытки - - View - false - - - Edit - false - - - - Catalog.Календари.Attribute.УчитыватьПраздники - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.ФорматыОтчетов.Attribute.Отчет - - View - false - - - Edit - false - - - - InformationRegister.ХранимыеФайлыВерсий.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ХранимыеФайлыВерсий.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ХранимыеФайлыВерсий.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ХранимыеФайлыВерсий.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.Resource.ВремяВыполнения - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.Автор - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчаниюПереопределена - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.СообщенияОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СообщенияОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СообщенияОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СообщенияОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.Attribute.Используется - - View - false - - - Edit - false - - - - InformationRegister.ВерсииПодсистемОбластейДанных.Dimension.ИмяПодсистемы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - InformationRegister.ИзмененияОбщихДанныхУзлов.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СодержаниеПредмета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УведомитьОДоставке - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - InformationRegister.СведенияОПользователях.Resource.ИспользованныеПароли - - View - false - - - Edit - false - - - - InformationRegister.РезультатыОбменаДанными.Resource.ДатаВозникновения - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.РучныеИзмененияГрафиковРаботы.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.СлужебныеАдресныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СлужебныеАдресныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СлужебныеАдресныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СлужебныеАдресныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыПриемника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - InformationRegister.ПубличныеИдентификаторыСинхронизируемыхОбъектов.Dimension.Идентификатор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.Важный - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.Удалить_АктивныеПредметыВзаимодействий.Dimension.Предмет - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.Attribute.Заблокирована - - View - false - - - Edit - false - - - - InformationRegister.ПодпискиПолучателей.Dimension.КаналСообщений - - View - false - - - Edit - false - - - - InformationRegister.ВерсииПодсистем.Attribute.ЭтоОсновнаяКонфигурация - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.УзелОбменаЗагрузкаДанных - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыКомментарииСтатистики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыКомментарииСтатистики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыКомментарииСтатистики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыКомментарииСтатистики.StandardAttribute.Period - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.ThisNode - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.ReceivedNo - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.SentNo - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.Ref - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.Description - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Dimension.КодДополнительногоЭлемента - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВерсияКорреспондента - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ПрограммыЭлектроннойПодписиИШифрования.Attribute.ИмяПрограммы - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.Attribute.ПомещатьВПапку - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СтатистикаКонфигурации.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СтатистикаКонфигурации.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СтатистикаКонфигурации.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СтатистикаКонфигурации.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.Attribute.Получатель - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.COMАутентификацияОперационнойСистемы - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.Attribute.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMАутентификацияОперационнойСистемы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - InformationRegister.НепринятыеКОбработкеПочтовымСерверомИсходящиеПисьма.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НепринятыеКОбработкеПочтовымСерверомИсходящиеПисьма.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НепринятыеКОбработкеПочтовымСерверомИсходящиеПисьма.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НепринятыеКОбработкеПочтовымСерверомИсходящиеПисьма.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Resource.СрокНапоминания - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.Dimension.ОбъектМетаданных - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.ФорматыОтчетов.Attribute.Формат - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.COMКаталогИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - InformationRegister.НаборыЗначенийДоступа.Dimension.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.Resource.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.СведенияОПользователях.Resource.ДатаНачалаИспользованияПароля - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.Attribute.Операция - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ИспользоватьЭлектроннуюПочту - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ЗначенияГруппДоступаПоУмолчанию.Dimension.ТипЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.ИнтервалВремениНапоминания - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.Resource.ДатаПрочтения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ТребуетсяВходНаСерверПередОтправкой - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.ТелефонCДобавочнымНомером - - View - false - - - Edit - false - - - - InformationRegister.РазрешенияНаИспользованиеВнешнихРесурсов.Attribute.ТелоРазрешения - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.FTPПорт - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.Dimension.ОперацияСтатистики - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ПродолжитьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.Dimension.Роль - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.УдалитьFTPПароль - - View - false - - - Edit - false - - - - InformationRegister.СостоянияПредметовВзаимодействий.Resource.ДатаПоследнегоВзаимодействия - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.БлокировкиСеансовОбластейДанных.Resource.СообщениеБлокировки - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.ПометкаУдаления - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьCOMПарольПользователя - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.НаборыЗначенийДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаборыЗначенийДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаборыЗначенийДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаборыЗначенийДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - InformationRegister.ДомаЗданияСтроения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДомаЗданияСтроения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДомаЗданияСтроения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДомаЗданияСтроения.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ИнтерактивноеИзменениеВыгрузки.Attribute.ВариантВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Resource.Сокращение - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.Dimension.НомерСеанса - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - InformationRegister.ПодпискиПолучателей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПодпискиПолучателей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПодпискиПолучателей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПодпискиПолучателей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Календари.TabularSection.РасписаниеРаботы - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтактовВзаимодействий.Dimension.Контакт - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.СодержаниеЗаявления - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.Dimension.ДатаЗаписи - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ФайлХранилище - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ЗагрузкаДанныхВыполняетсяЧерезВнешнееСоединение - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - DataProcessor.ИнтерактивноеИзменениеВыгрузки.Attribute.ДополнительнаяРегистрация - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.КоличествоПопытокОбработкиСообщения - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Resource.Наименование - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.Resource.ПравоЗапрещено - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.Attribute.КомпоновщикНастроек - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.Dimension.КодСубъектаРФ - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.Attribute.УровеньЗапрещенияИзменения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.Attribute.Телефоны - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Resource.ПочтовыйИндекс - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаМодификацииФайла - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - InformationRegister.ЗависимостиПравДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ЗависимостиПравДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ЗависимостиПравДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ЗависимостиПравДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.Dimension.Получатель - - View - false - - - Edit - false - - - - InformationRegister.КэшПрограммныхИнтерфейсов.Dimension.Идентификатор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.Dimension.ОбластьСтатистики - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.Получатель - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.Attribute.ЭтоБыстроеСообщение - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Dimension.КодНаселенногоПункта - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.Attribute.КоличествоРеквизитов - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - InformationRegister.КомментарииСтатистики.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXMLКорреспондента - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПодписьДляНовыхСообщенийПростойТекст - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - InformationRegister.УдалитьВерсииПодсистем.Dimension.ИмяПодсистемы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Dimension.КодОкруга - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.Attribute.Имя - - View - false - - - Edit - false - - - - InformationRegister.СлужебныеАдресныеСведения.Dimension.Тип - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьИзвлеченияТекста.Dimension.ОбластьДанных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.Адресаты - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПодписьДляНовыхСообщенийФорматированныйДокумент - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПомещатьПисьмоВПапкуПисьмаОснования - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьWSПароль - - View - false - - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.Resource.ОперацияСтатистики - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.Resource.СОшибками - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Resource.Используется - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.ОсновнаяГруппаДоступаПоставляемогоПрофиля - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - InformationRegister.УдалитьРейтингАктивностиОбластейДанных.Resource.Рейтинг - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьЗащищенноеСоединениеДляИсходящейПочты - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОчисткиФайлов.Dimension.ТипВладельцаФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.РежимЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - InformationRegister.РазрешенияНаИспользованиеВнешнихРесурсов.Attribute.ДополнениеРазрешения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.Отчество - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ТипПолучателейРассылки - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.Attribute.НомерПопытки - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВерсионированияОбъектов.Resource.СрокХраненияВерсий - - View - false - - - Edit - false - - - - InformationRegister.ПакетыИнформацииПриЗапуске.Resource.Состав - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.Resource.ОбластьСтатистики - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.Программа - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.Dimension.Письмо - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОперацииСтатистики.Resource.СуммаЗначений - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиДанных.Attribute.ИдентификаторВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииПодсистем.Attribute.ПланОбновления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - InformationRegister.ОбластиДанных.Attribute.ОшибкаОбработки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьЗащищенноеСоединениеДляВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - InformationRegister.РазрешенияНаИспользованиеВнешнихРесурсов.Attribute.ПредставлениеВладельца - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.Dimension.КлючеваяОперация - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.Dimension.ИдентификаторУдаления - - View - false - - - Edit - false - - - - InformationRegister.НаследованиеНастроекПравОбъектов.Resource.Наследовать - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленногоНачальнаяВыгрузкаДанных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеАдресныеСведения.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Вступление - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.ИмяРеквизитаИсточника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.Должность - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.Attribute.ИсполняющееФоновоеЗадание - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.РейтингАктивностиОбластейДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РейтингАктивностиОбластейДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РейтингАктивностиОбластейДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РейтингАктивностиОбластейДанных.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.РазрешенияНаИспользованиеВнешнихРесурсов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РазрешенияНаИспользованиеВнешнихРесурсов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РазрешенияНаИспользованиеВнешнихРесурсов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РазрешенияНаИспользованиеВнешнихРесурсов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Dimension.КодГорода - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.Attribute.ИдентификаторФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.УдалитьГруппыЗначенийДоступа.Dimension.ГруппаОбновляемыхДанных - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.Attribute.ИнтервалПовтораПриАварийномЗавершении - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.Resource.СообщениеБлокировки - - View - false - - - Edit - false - - - - InformationRegister.РежимыПодключенияВнешнихМодулей.Dimension.ИдентификаторПрограммногоМодуля - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанныхОбластейДанных.Dimension.Владелец - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.Attribute.Расписание - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеВторойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разрешения.Attribute.Параметры - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.Resource.Дополнительно - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.Attribute.Ведущая - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.Resource.КомментарийСтатистики - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТолькоДляАвтора - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.ПроверятьКорректность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ФайлХранилище - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Dimension.ТекущийКодСубъектаРФ - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.Attribute.ПодробноеПредставлениеОшибки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.РежимРазработчика - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Resource.ВремяНачалаПроверка - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиДанных.Resource.Статус - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - InformationRegister.ОбластиПерсональныхДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбластиПерсональныхДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбластиПерсональныхДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбластиПерсональныхДанных.StandardAttribute.Period - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаОбработкиДляОтладкиЗагрузки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ВключатьТелоИсходногоПисьма - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Resource.АдресныйОбъект - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.Attribute.Использование - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ФайлХранилище - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.Dimension.НомерСеанса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбластиТребующиеОбработкиПоставляемыхДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбластиТребующиеОбработкиПоставляемыхДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбластиТребующиеОбработкиПоставляемыхДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбластиТребующиеОбработкиПоставляемыхДанных.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПричиныИзмененияАдресныхСведений.Resource.Описание - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.ПризнакАктуальности - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ИспользоватьСетевойКаталог - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РазрешитьВводНесколькихЗначений - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНаборыЗначенийДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.Attribute.КоличествоПопытокОбработкиСообщения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - InformationRegister.СведенияОПользователях.Resource.ДатаАвтоматическогоЗапрещенияВхода - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.FTPПассивноеСоединение - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СообщенияОбменаДанными.Resource.ДатаЗакладкиСообщения - - View - false - - - Edit - false - - - - InformationRegister.УдалитьВерсииПодсистем.Resource.Версия - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - InformationRegister.РежимыПодключенияВнешнихМодулей.Resource.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.Resource.ВидДня - - View - false - - - Edit - false - - - - InformationRegister.ОбластиСтатистики.Dimension.СобиратьСтатистикуКонфигурации - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.Архивировать - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.РегистрацияИзмененийДляОбменаДанными.Attribute.КонфигурацияПоддерживаетБСП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.Календари.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.ТелоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОперацииСтатистики.Dimension.ОперацияСтатистики - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Dimension.КодСубъектаРФ - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.Resource.ИдентификаторПрограммногоМодуля - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.СвойстваПользователяИБ - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ЗагрузкаДанныхВыполняетсяВоВнешнемСоединении - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - InformationRegister.УдалитьРейтингАктивностиОбластейДанных.Dimension.ОбластьДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.РежимПротоколированияОбменаДанными - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.FTPСервер - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.Отозван - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВерсияКорреспондента_2_0_1_6 - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.Attribute.Город - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.Resource.КонецБлокировки - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиДанных.Attribute.Повтор - - View - false - - - Edit - false - - - - DataProcessor.РегистрацияИзмененийДляОбменаДанными.Attribute.НастройкаАвторегистрацияПоследовательностей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.Календари.Attribute.УдалитьВидКалендаря - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.Attribute.ЗапланированныйМоментЗапуска - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.Attribute.ДобавляемыеРазрешения - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.Получатели - - View - false - - - Edit - false - - - - InformationRegister.КомментарииСтатистики.Dimension.ИдентификаторКомментария - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.Адресаты.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Dimension.КодГорода - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.СостоянияПапокПисем.Resource.КоличествоНеРассмотрено - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияПлатформы - - View - false - - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.Организация - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - InformationRegister.НаборыЗначенийДоступа.Resource.Чтение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.КоличествоОбъектовКЗагрузкеВнешнееСоединение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.Получатели.Attribute.Исключен - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Dimension.КодВнутригородскогоРайона - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.Attribute.КоличествоПовторовПриАварийномЗавершении - - View - false - - - Edit - false - - - - InformationRegister.ДампыПлатформы.Dimension.ДатаРегистрации - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.TabularSection.Производительность.Attribute.КлючеваяОперация - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.Адресаты.Attribute.СостояниеСообщения - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтактовВзаимодействий.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтактовВзаимодействий.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтактовВзаимодействий.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтактовВзаимодействий.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ИнтерактивноеИзменениеВыгрузки.Attribute.АдресХранилищаФормы - - View - false - - - Edit - false - - - - InformationRegister.ПричиныИзмененияАдресныхСведений.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПричиныИзмененияАдресныхСведений.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПричиныИзмененияАдресныхСведений.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПричиныИзмененияАдресныхСведений.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УдалятьПослеОтправки - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаCOM - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.FTPЛогин - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Dimension.УчетнаяЗаписьЭлектроннойПочты - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.Attribute.Шаблон - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанныеКорреспондента - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Dimension.Источник - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОперацииСтатистики.Dimension.ИдентификаторУдаления - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.СостояниеЗаявления - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.Resource.КоличествоЗначений - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.Resource.Редактирование - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.Attribute.Ключ - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMИмяСервера1СПредприятия - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.Attribute.Параметры - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.ДатаИзменения - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.Получатели.Attribute.Получатель - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаследованиеНастроекПравОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаследованиеНастроекПравОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаследованиеНастроекПравОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаследованиеНастроекПравОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ВнешняяРоль - - View - false - - - Edit - false - - - - InformationRegister.РучныеИзмененияГрафиковРаботы.Resource.РучноеИзменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНаборыЗначенийДоступа.Dimension.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.Attribute.Ключ - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Resource.ВремяКонца - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.СмТакже - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВариантовОтчетов.Resource.Видимость - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.Resource.ВремяВыполнения - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОчисткиФайлов.Resource.ПериодОчистки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.УдалитьГруппыЗначенийДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.WSПароль - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыКомментарииСтатистики.Resource.КоличествоЗначений - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеАдресныеСведения.Resource.КодИФНСФЛ - - View - false - - - Edit - false - - - - InformationRegister.УровниСокращенийАдресныхСведений.Dimension.Сокращение - - View - false - - - Edit - false - - - - InformationRegister.КомментарииСтатистики.Dimension.ХешНаименования - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Resource.ВремяНачала - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Пользовательский - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Уточнение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Dimension.КлючеваяОперация - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Отчет - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЗаголовокФормыВыбораЗначения - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользуетХранилищеВариантов - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ОтветственныйЗаВедениеПапок - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.ОбластиТребующиеОбработкиПоставляемыхДанных.Dimension.КодОбработчика - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.Подготовлен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - InformationRegister.БлокировкиСеансовОбластейДанных.Resource.КонецБлокировки - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.Фирма - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.Attribute.СостояниеЗадания - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.ЗапланированныйМоментЗапуска - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ЗапретитьРаботуРегламентныхЗаданий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ОсновнойОбъектАдресацииПроверяющий - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.Параметры - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.НаименованияПараметровИОтборов - - View - false - - - Edit - false - - - - InformationRegister.ПакетыДляОтправки.Dimension.НомерПакета - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Dimension.КодВнутригородскогоРайона - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.РезультатыОбменаДанными.Attribute.ДатаДокумента - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.НаименованияПолей - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.Dimension.Дата - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.Attribute.ЗапланированныйМоментЗапуска - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.УровниСокращенийАдресныхСведений.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.УсиленнаяЗащитаЗакрытогоКлюча - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.СкрытыеКопии - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.Resource.ДатаПереноса - - View - false - - - Edit - false - - - - InformationRegister.ТаблицыГруппДоступа.Attribute.ТипТаблицы - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.Resource.ТипПрограммногоМодуля - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - DataProcessor.РегистрацияИзмененийДляОбменаДанными.Attribute.НастройкаАвторегистрацияДвижений - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.Attribute.ИмяМетода - - View - false - - - Edit - false - - - - Report.ДосьеКонтрагента - - Use - true - - - View - true - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.WSИмяПользователя - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.ИнтерактивноеИзменениеВыгрузки.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбластиДанных.Resource.Статус - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ФормулаРасчетаКурса - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение.Attribute.Подсистема - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.РегистрацияИзмененийДляОбменаДанными.Attribute.ДоступнаРаботаРИБ - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанныхОбластейДанных.Resource.Данные - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.WSURLВебСервиса - - View - false - - - Edit - false - - - - InformationRegister.КонтактыВзаимодействий.Dimension.Контакт - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - InformationRegister.НепринятыеКОбработкеПочтовымСерверомИсходящиеПисьма.Dimension.Письмо - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.Resource.Комментарий - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - InformationRegister.СлужебныеАдресныеСведения.Dimension.Ключ - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.ОбъектНазначения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - Document.СообщениеSMS.Attribute.Автор - - View - false - - - Edit - false - - - - Document.СообщениеSMS.Attribute.ДатаКогдаОтправить - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Dimension.КодПодчиненногоЭлемента - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.StandardAttribute.Period - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.АвторСтрокой - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.ДляРабочегоСтола - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - InformationRegister.ВерсииПодсистем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииПодсистем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииПодсистем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииПодсистем.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.ВерсииПодсистем.Dimension.ИмяПодсистемы - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.ЗапретитьРедактированиеПользователем - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Resource.КодКЛАДР - - View - false - - - Edit - false - - - - Catalog.ПользовательскиеНастройкиОтчетов.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ПользовательскиеНастройкиОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПользовательскиеНастройкиОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПользовательскиеНастройкиОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПользовательскиеНастройкиОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПользовательскиеНастройкиОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПользовательскиеНастройкиОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПользовательскиеНастройкиОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПользовательскиеНастройкиОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.Attribute.ПредставлениеОтбора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыПриемникаУстановлен - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВзаимодействиеОснование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.РезультатыОбменаДанными.Dimension.ПроблемныйОбъект - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.ЗначениеПустойСсылки - - View - false - - - Edit - false - - - - InformationRegister.ОбластиДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбластиДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбластиДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбластиДанных.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.ВзаимодействиеОснование - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - InformationRegister.ЗначенияГруппДоступаПоУмолчанию.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ЗначенияГруппДоступаПоУмолчанию.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ЗначенияГруппДоступаПоУмолчанию.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ЗначенияГруппДоступаПоУмолчанию.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.Пользователь - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.БезДанных - - View - false - - - Edit - false - - - - InformationRegister.УдалитьВерсииПодсистем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьВерсииПодсистем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьВерсииПодсистем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьВерсииПодсистем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ВерсияПроигнорирована - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВариантовОтчетов.Dimension.Вариант - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ИнтерактивноеИзменениеВыгрузки.Attribute.КомпоновщикОтбораВсехДокументов - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.СимвольныйКод - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.РежимПротоколированияОбменаДанными - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиКРезервномуКопированию.Dimension.ОбластьДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеАдресныеСведения.Resource.КодУчасткаИФНСЮЛ - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Используется - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.УдалитьПарольАрхива - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбластиСтатистики.Dimension.ХешНаименования - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.Календари.TabularSection.РасписаниеРаботы.Attribute.НомерДня - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Уточнение - - View - false - - - Edit - false - - - - Catalog.Календари.TabularSection.РасписаниеРаботы.Attribute.ВремяОкончания - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.Программа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьИзвлеченияТекста.Dimension.ИсточникТекста - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.Attribute.Шаг - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ПользовательДляСинхронизацииДанных - - View - false - - - Edit - false - - - - Document.СообщениеSMS.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.СообщениеSMS.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.СообщениеSMS.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.СообщениеSMS.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.СообщениеSMS.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.Attribute.Расписание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - InformationRegister.ОбластиДанных.Attribute.Вариант - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ПользовательскиеНастройкиОтчетов.Attribute.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Resource.Операция - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УведомитьОДоставке - - View - false - - - Edit - false - - - - InformationRegister.ЗависимостиПравДоступа.Dimension.ТипВедущейТаблицы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ТекстПисьмаВФорматеHTML - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.НеОстанавливатьПоОшибке - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Catalog.ПрограммыЭлектроннойПодписиИШифрования.Attribute.АлгоритмШифрования - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ОперацииСтатистики.Resource.Наименование - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - InformationRegister.ОчередьИзвлеченияТекста.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОчередьИзвлеченияТекста.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОчередьИзвлеченияТекста.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОчередьИзвлеченияТекста.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.Attribute.ДатаЗаписи - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Представление - - View - false - - - Edit - false - - - - Document.СообщениеSMS.Attribute.ОтправлятьВТранслите - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.Resource.ТребуетсяОтправка - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ИзмененияОбщихДанныхУзлов.Resource.НомерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.РежимОтладки - - View - false - - - Edit - false - - - - InformationRegister.ОбластиДанных.Attribute.ИдентификаторВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMКаталогИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.ПользовательОповещенОСрокеДействия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтображатьТелоИсходногоПисьма - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НепринятыеКОбработкеПочтовымСерверомИсходящиеПисьма.Resource.КоличествоПопыток - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.Календари.Attribute.ВладелецГрафика - - View - false - - - Edit - false - - - - InformationRegister.ПоставляемыеДанныеТребующиеОбработки.Resource.КоличествоПопыток - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ВключатьПодписьПриОтветеПересылке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ИспользоватьВременныйКаталогДляОтправкиИПриемаСообщений - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.ПометкаУдаления - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПоказыватьСлужебныеРеквизиты - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - InformationRegister.ОперацииСтатистики.Dimension.ИдентификаторОперации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.СтатистикаКонфигурации.Dimension.ОперацияСтатистики - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтактовВзаимодействий.Resource.ДатаПоследнегоВзаимодействия - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.ИсполняющееФоновоеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.РежимОтладки - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ЗадачаИсточник - - View - false - - - Edit - false - - - - InformationRegister.ПакетыИнформацииПриЗапуске.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПакетыИнформацииПриЗапуске.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПакетыИнформацииПриЗапуске.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПакетыИнформацииПриЗапуске.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ИмяАрхива - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.БлокировкиСеансовОбластейДанных.Resource.НачалоБлокировки - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВерсияКорреспондента_2_1_1_7 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ИспользоватьFTPРесурс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиКРезервномуКопированию.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиКРезервномуКопированию.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиКРезервномуКопированию.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиКРезервномуКопированию.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.Resource.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.Resource.ИнтерактивноеДобавление - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ВзаимодействиеОснование - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.Resource.ТипВладельца - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.TabularSection.Производительность.Attribute.Приоритет - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.FTPКаталог - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.Заблокировано - - View - false - - - Edit - false - - - - InformationRegister.НастройкиКомандПечати.Dimension.Владелец - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Resource.ОкончаниеДействияЗаписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеАдресныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеАдресныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеАдресныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеАдресныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НаследованиеНастроекПравОбъектов.Attribute.УровеньИспользования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.Роль - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаЗаема - - View - false - - - Edit - false - - - - InformationRegister.СостоянияПредметовВзаимодействий.Dimension.Предмет - - View - false - - - Edit - false - - - - InformationRegister.РезультатыОбменаДанными.Resource.Причина - - View - false - - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - InformationRegister.НепринятыеКОбработкеПочтовымСерверомИсходящиеПисьма.Attribute.ИнформацияООшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ИспользоватьВременныйКаталогДляОтправкиИПриемаСообщений - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Document.СообщениеSMS.Attribute.ДатаАктуальностиОтправки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Загружать - - View - false - - - Edit - false - - - - InformationRegister.УдалитьГруппыЗначенийДоступа.Dimension.ГруппаЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.Resource.ПапкаЭлектронногоПисьма - - View - false - - - Edit - false - - - - InformationRegister.ОбластиТребующиеОбработкиПоставляемыхДанных.Dimension.ОбластьДанных - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ИспользоватьВременныйКаталогДляОтправкиИПриемаСообщений - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - InformationRegister.НастройкиКомандПечати.Dimension.УникальныйИдентификатор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.ДействителенДо - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.COMИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.Адресаты.Attribute.НомерДляОтправки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.Attribute.Адрес - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.СтроковыеКонтактыВзаимодействий.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.СтроковыеКонтактыВзаимодействий.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтроковыеКонтактыВзаимодействий.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтроковыеКонтактыВзаимодействий.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтроковыеКонтактыВзаимодействий.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтроковыеКонтактыВзаимодействий.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтроковыеКонтактыВзаимодействий.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтроковыеКонтактыВзаимодействий.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтроковыеКонтактыВзаимодействий.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтрагентов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтрагентов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтрагентов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтрагентов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.Удалить_АктивныеПредметыВзаимодействий.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.Удалить_АктивныеПредметыВзаимодействий.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.Удалить_АктивныеПредметыВзаимодействий.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.Удалить_АктивныеПредметыВзаимодействий.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Resource.Актуален - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Dimension.КодПодчиненногоЭлемента - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.ПорядокКоллекции - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.ЗагруженныеВерсииАдресныхСведений.Dimension.КодСубъектаРФ - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ИмяФайлаВнешнейОбработкиОтладкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.РазрешенияНаИспользованиеВнешнихРесурсов.Dimension.ТипПрограммногоМодуля - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.Dimension.ПериодОкончание - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектовИерархия.Attribute.Вес - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.НаборСвойств - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.Resource.ПочтовыйИндекс - - View - false - - - Edit - false - - - - DataProcessor.ИнтерактивноеИзменениеВыгрузки.Attribute.ПараметрыСценарияДополнения - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиКомандПечати.Resource.Видимость - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.Attribute.КоличествоПовторовПриАварийномЗавершении - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьБезопасныйВходНаСерверИсходящейПочты - - View - false - - - Edit - false - - - - InformationRegister.КомментарииОперацииСтатистики.Dimension.ИдентификаторКомментария - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.РегламентноеЗадание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.ПодробноеПредставлениеОшибки - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.Attribute.ДатаНачалаПоследнегоЗапуска - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.ПродолжитьПриОшибке - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.Dimension.Взаимодействие - - View - false - - - Edit - false - - - - InformationRegister.ПубличныеИдентификаторыСинхронизируемыхОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПубличныеИдентификаторыСинхронизируемыхОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПубличныеИдентификаторыСинхронизируемыхОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПубличныеИдентификаторыСинхронизируемыхОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.Dimension.ОбластьДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.Resource.Просмотр - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.РучныеИзмененияГрафиковРаботы.Dimension.ГрафикРаботы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Document.СообщениеSMS.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Dimension.КодУлицы - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.Dimension.ИдентификаторЗапроса - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ЗаменяемыеКоманды - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.ПроверятьПоФИАС - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Виден - - View - false - - - Edit - false - - - - InformationRegister.СведенияОПользователях.Resource.ДатаПоследнейАктивности - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.Attribute.ДатаДобавления - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ОтладкаОбработчиковЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.КоличествоПовторовПриАварийномЗавершении - - View - false - - - Edit - false - - - - DataProcessor.ИнтерактивноеИзменениеВыгрузки.Attribute.ПериодОтбораСценарияУзла - - View - false - - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.Resource.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.Attribute.Отправитель - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыКомментарииСтатистики.Dimension.КомментарийСтатистики - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Resource.НачалоДействияЗаписи - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - InformationRegister.ПричиныИзмененияАдресныхСведений.Dimension.КодСубъектаРФ - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОперацииСтатистики.Dimension.ХешНаименования - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.Resource.ПоследнийЗапуск - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.ПричиныИзмененияАдресныхСведений.Resource.СодержитОписание - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Resource.ВремяКонцаПроверка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ПредопределенныйВариант - - View - false - - - Edit - false - - - - InformationRegister.ЗагруженныеВерсииАдресныхСведений.Resource.ДатаЗагрузки - - View - false - - - Edit - false - - - - DataProcessor.РегистрацияИзмененийДляОбменаДанными.Attribute.НастройкаКонтрольВыгрузкиОбъектов - - View - false - - - Edit - false - - - - InformationRegister.РезультатыОбменаДанными.Resource.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.РазрешенияНаИспользованиеВнешнихРесурсов.Dimension.ИдентификаторПрограммногоМодуля - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.Attribute.ДатаЗавершенияПоследнегоЗапуска - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыКомментарииСтатистики.Dimension.ПериодОкончание - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.Параметры - - View - false - - - Edit - false - - - - InformationRegister.ЗависимостиПравДоступа.Dimension.ПодчиненнаяТаблица - - View - false - - - Edit - false - - - - InformationRegister.УдалитьВерсииПодсистем.Attribute.ПланОбновления - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПодписьПриОтветеПересылкеФорматированныйДокумент - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ВыполнятьПоРасписанию - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НепринятыеВложения.Attribute.ИмяВложение - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.TabularSection.ЗависимостиДополнительныхРеквизитов.Attribute.Значение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьИзвлеченияТекста.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьИзвлеченияТекста.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьИзвлеченияТекста.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьИзвлеченияТекста.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.Отчеты.Attribute.ОтправлятьЕслиПустой - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.СпособУстановкиВремениНапоминания - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.Dimension.ДатаНачалаЗамера - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.Отчеты.Attribute.Отчет - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.Attribute.Расписание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЗаполнятьОбязательно - - View - false - - - Edit - false - - - - InformationRegister.УдалитьГруппыЗначенийДоступа.Dimension.ТолькоВидДоступа - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Resource.Сокращение - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.Resource.Добавление - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.Resource.Эксклюзивная - - View - false - - - Edit - false - - - - InformationRegister.КонтактыВзаимодействий.Dimension.Взаимодействие - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.КонтрольнаяСумма - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.Подписание - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанныхОбластейДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанныхОбластейДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанныхОбластейДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанныхОбластейДанных.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - - - InformationRegister.РежимыПодключенияВнешнихМодулей.Attribute.ПредставлениеПрограммногоМодуля - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.РазмерДанных - - View - false - - - Edit - false - - - - InformationRegister.КэшПрограммныхИнтерфейсов.Dimension.ТипДанных - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.Attribute.ВариантФильтраКомментарий - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.Attribute.ТелоСообщения - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Resource.Дополнительно - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - InformationRegister.ТаблицыГруппДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ТаблицыГруппДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ТаблицыГруппДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ТаблицыГруппДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.УказыватьОКТМО - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ДанныеОбъектовДляРегистрацииВОбменах.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНаборыЗначенийДоступа.Dimension.Объект - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.КомпонентыОбмена - - View - false - - - Edit - false - - - - InformationRegister.РейтингАктивностиОбластейДанных.Resource.Рейтинг - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиДанных.Resource.Представление - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - InformationRegister.ИзмененияОбщихДанныхУзлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИзмененияОбщихДанныхУзлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИзмененияОбщихДанныхУзлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИзмененияОбщихДанныхУзлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ИнтерактивноеИзменениеВыгрузки.Attribute.ПредставлениеОтбораСценарияУзла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.Attribute.КоличествоСведений - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.КраткоеПредставление - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.Attribute.Параметры - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.СтатистикаКонфигурации.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.Календари.Attribute.ПроизводственныйКалендарь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.СкрыватьНеактуальныеАдреса - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПакетыИнформацииПриЗапуске.Dimension.Номер - - View - false - - - Edit - false - - - - InformationRegister.ДомаЗданияСтроения.Dimension.КодСубъектаРФ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.ЭтоБыстроеСообщение - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - InformationRegister.ТаблицыГруппДоступа.Resource.Изменение - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ИмяФайлаВнешнейОбработкиОтладкиЗагрузки - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.Отчеты.Attribute.Настройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеОбъектовДляРегистрацииВОбменах.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеОбъектовДляРегистрацииВОбменах.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеОбъектовДляРегистрацииВОбменах.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеОбъектовДляРегистрацииВОбменах.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.РежимСовместимостиРазрешений - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтрагентов.Attribute.ИНН - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.Папка - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНаборыЗначенийДоступа.Resource.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.TabularSection.ЗависимостиДополнительныхРеквизитов.Attribute.Реквизит - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеАдресныеСведения.Resource.OKATO - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.УдалитьРегламентноеЗадание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.КоличествоЭлементовВТранзакцииЗагрузкиДанных - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.ПричиныИзмененияАдресныхСведений.Dimension.ИзмененныйОбъект - - View - false - - - Edit - false - - - - InformationRegister.НаборыЗначенийДоступа.Attribute.СтандартноеЗначение - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.Resource.НаследованиеРазрешено - - View - false - - - Edit - false - - - - Document.СообщениеSMS.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ТаблицыГруппДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.ЗначенияГруппДоступа.Dimension.ГруппаДоступа - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.СетевойКаталогWindows - - View - false - - - Edit - false - - - - Catalog.Календари.TabularSection.ШаблонЗаполнения.Attribute.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - InformationRegister.РазрешенияНаИспользованиеВнешнихРесурсов.Dimension.ТипВладельца - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.Имя - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.ЗначенияГруппДоступаПоУмолчанию.Attribute.БезНастройки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - InformationRegister.ЗначенияГруппДоступа.Resource.ЗначениеРазрешено - - View - false - - - Edit - false - - - - InformationRegister.УдалитьВерсииПодсистем.Dimension.ОбластьДанных - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ПисьмоВФорматеHTML - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.Resource.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ВнешнееЗадание - - View - false - - - Edit - false - - - - InformationRegister.НаборыЗначенийДоступа.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Dimension.УникальныйИдентификатор - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.Attribute.ПорядокНастройки - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыКомментарииСтатистики.Dimension.ОперацияСтатистики - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.АдресаУведомленияОПрочтении.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ЗначенияГруппДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ЗначенияГруппДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ЗначенияГруппДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ЗначенияГруппДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПубличныеИдентификаторыСинхронизируемыхОбъектов.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.Роль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.Фамилия - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.ЭксклюзивноеВыполнение - - View - false - - - Edit - false - - - - InformationRegister.СтатистикаКонфигурации.Dimension.ИдентификаторОбластиСтатистики - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Resource.ВремяВыполнения - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.УзелОбменаЗагрузкаФоновыхДанных - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.Attribute.МинимальноДопустимыйУровень - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.Resource.РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.ПолноеИмя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.ЗначенияГруппДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.КэшПрограммныхИнтерфейсов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КэшПрограммныхИнтерфейсов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КэшПрограммныхИнтерфейсов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КэшПрограммныхИнтерфейсов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВерсияФорматаФайлаНастроекОбменаДанными - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.Attribute.ЗапросАдминистрирования - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.Resource.ЧтениеБезОграничения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.СведенияОПользователях.Resource.СрокДействияНеОграничен - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - InformationRegister.ГруппыЗначенийДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ГруппыЗначенийДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ГруппыЗначенийДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ГруппыЗначенийДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтактовВзаимодействий.Resource.КоличествоНеРассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УведомитьОПрочтении - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Dimension.КодРайона - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.НеИспользоватьВоВстроенномПочтовомКлиенте - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - InformationRegister.НастройкиКомандПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиКомандПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиКомандПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиКомандПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.Отчеты - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНаборыЗначенийДоступа.Resource.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.УдалитьГруппыЗначенийДоступа.Dimension.ВидДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - InformationRegister.ЗначенияГруппДоступаПоУмолчанию.Resource.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Dimension.КодОкруга - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.РегистрацияИзмененийДляОбменаДанными.Attribute.НастройкаАдресВнешнейОбработкиЗапросов - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.Attribute.УровеньЗапрещенияПрава - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Dimension.ОбластьДанных - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.Attribute.Имя - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.НаборыЗначенийДоступа.Attribute.Уточнение - - View - false - - - Edit - false - - - - InformationRegister.КодировкиВерсийФайлов.Resource.Кодировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииФайла - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ОбъектНазначения - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.TabularSection.ЗависимостиДополнительныхРеквизитов.Attribute.ЗависимоеСвойство - - View - false - - - Edit - false - - - - InformationRegister.ЗначенияГруппДоступаПоУмолчанию.Dimension.ГруппаДоступа - - View - false - - - Edit - false - - - - InformationRegister.РазрешенияНаИспользованиеВнешнихРесурсов.Dimension.ИдентификаторВладельца - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.КлючОбъектаМетаданных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.Пометка - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.TabularSection.ЗависимостиДополнительныхРеквизитов.Attribute.Условие - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОчисткиФайлов.Resource.ЭтоФайл - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.ФорматыОтчетов - - View - false - - - Edit - false - - - - InformationRegister.РежимыПодключенияВнешнихМодулей.Dimension.ТипПрограммногоМодуля - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.ХешНастроек - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПодписьПриОтветеПересылкеПростойТекст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.РежимОтладкиЗагрузки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.РучныеИзмененияГрафиковРаботы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РучныеИзмененияГрафиковРаботы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РучныеИзмененияГрафиковРаботы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РучныеИзмененияГрафиковРаботы.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.Параметры - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.Attribute.ВидДанных - - View - false - - - Edit - false - - - - InformationRegister.СлужебныеАдресныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВыполнятьАвтоматическоеРезервноеКопирование - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.Отчет - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.НеВыгружатьОбъектыПоСсылкам - - View - false - - - Edit - false - - - - Document.СообщениеSMS.Attribute.Состояние - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.НоваяСсылка - - View - false - - - Edit - false - - - - InformationRegister.ОперацииСтатистики.Attribute.КоличествоУникальныхКомментариев - - View - false - - - Edit - false - - - - InformationRegister.ПакетыДляОтправки.Attribute.ХешПакета - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.Attribute.ВыполнятьЗамерыПроизводительности - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - InformationRegister.КэшПрограммныхИнтерфейсов.Resource.ДатаОбновления - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.Attribute.ЦелевоеВремя - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.WSЗапомнитьПароль - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ХранимыеФайлыВерсий.Dimension.ВерсияФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Dimension.Уровень - - View - false - - - Edit - false - - - - DataProcessor.ИнтерактивноеИзменениеВыгрузки.Attribute.ПериодОтбораВсехДокументов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.ОбластиСтатистики.Resource.Наименование - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтрагентов.Attribute.КПП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОчисткиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОчисткиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОчисткиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОчисткиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектовИерархия.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектовИерархия.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектовИерархия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектовИерархия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектовИерархия.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектовИерархия.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектовИерархия.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектовИерархия.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектовИерархия.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.Attribute.Приоритет - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.Шаблон - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.Attribute.ДатаНачалаПоследнегоЗапуска - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодУзлаКорреспондента - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.Resource.ИдентификаторВладельца - - View - false - - - Edit - false - - - - DataProcessor.ИнтерактивноеИзменениеВыгрузки.Attribute.АдресКомпоновщикаВсехДокументов - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.КлючЗамеров - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.ПолеИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВариантовОтчетов.Dimension.Подсистема - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОперацииСтатистики.Resource.КоличествоЗначений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ПрограммыЭлектроннойПодписиИШифрования.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ПрограммыЭлектроннойПодписиИШифрования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрограммыЭлектроннойПодписиИШифрования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрограммыЭлектроннойПодписиИШифрования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрограммыЭлектроннойПодписиИШифрования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрограммыЭлектроннойПодписиИШифрования.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрограммыЭлектроннойПодписиИШифрования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрограммыЭлектроннойПодписиИШифрования.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрограммыЭлектроннойПодписиИШифрования.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Подсказка - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - InformationRegister.СостоянияПапокПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияПапокПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияПапокПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияПапокПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанных.Dimension.Владелец - - View - false - - - Edit - false - - - - InformationRegister.ДомаЗданияСтроения.Resource.Строения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Уточнение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.Расписание - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.КоличествоЭлементовВТранзакцииВыгрузкиДанных - - View - false - - - Edit - false - - - - InformationRegister.НаборыЗначенийДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеАдресныеСведения.Resource.КодИФНСЮЛ - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.ПредставлениеИсточника - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.TabularSection.ШаблонЗаполнения - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.Attribute.ПредопределеннаяПапка - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ЕстьДанныеВерсии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.Attribute.УровеньЗапрещенияЧтения - - View - false - - - Edit - false - - - - InformationRegister.ОчередьИзвлеченияТекста.Dimension.ИсточникТекста - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.COMВариантРаботыИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.Недействителен - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьБезопасныйВходНаСерверВходящейПочты - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.Адресаты.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Заголовок - - View - false - - - Edit - false - - - - InformationRegister.ОбластиСтатистики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбластиСтатистики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбластиСтатистики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбластиСтатистики.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.Attribute.ИмяМетода - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтрагентов.Resource.Состояние - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.Attribute.РежимЗамещения - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаОбработкиДляОтладкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПерсональнаяУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.Личная - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОчисткиФайлов.Resource.Действие - - View - false - - - Edit - false - - - - InformationRegister.ПодпискиПолучателей.Dimension.Получатель - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.Адресаты.Attribute.ТекстОшибки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ТолькоУведомить - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.Attribute.ЭксклюзивноеВыполнение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - InformationRegister.ДанныеОбъектовДляРегистрацииВОбменах.Dimension.Ссылка - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОчисткиФайлов.Resource.ПравилоОтбора - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоКлассификатор - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ТекстПисьма - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.ВключатьСтрануВПредставление - - View - false - - - Edit - false - - - - InformationRegister.ГруппыЗначенийДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.УзелДляФоновогоОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - InformationRegister.ОбластиТребующиеОбработкиПоставляемыхДанных.Dimension.ИдентификаторФайла - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Dimension.КодНаселенногоПункта - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ТемаПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВариантовОтчетов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВариантовОтчетов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВариантовОтчетов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВариантовОтчетов.StandardAttribute.Period - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.Недействителен - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Dimension.ДатаЗамера - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.Attribute.КоличествоПовторовПриАварийномЗавершении - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.Календари.Attribute.Описание - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Resource.Дополнительно - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УведомитьОПрочтении - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаКогдаОтправить - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Dimension.КодУлицы - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.Подготовлен - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВариантовОтчетов.Resource.БыстрыйДоступ - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.ИнтервалПовтораПриАварийномЗавершении - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.Ключ - - View - false - - - Edit - false - - - - DataProcessor.РегистрацияИзмененийДляОбменаДанными.Attribute.ДоступнаРегистрацияСредствамиБСП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.АдресаУведомленияОПрочтении - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.Шифрование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НепринятыеВложения - - View - false - - - Edit - false - - - - InformationRegister.РезультатыОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РезультатыОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РезультатыОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РезультатыОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.РезультатыОбменаДанными.Resource.Пропущена - - View - false - - - Edit - false - - - - Catalog.Календари.Attribute.ДатаОтсчета - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.Attribute.ИнтервалПовтораПриАварийномЗавершении - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанных.Resource.Данные - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.Attribute.КомпоновщикНастроек - - View - false - - - Edit - false - - - - InformationRegister.НаборыЗначенийДоступа.Attribute.ЗначениеБезГрупп - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ВидПочтовогоАдресаПолучателей - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.Персонализирована - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разрешения.Attribute.ВидРазрешения - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.Attribute.Диаграмма - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.РежимЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Размер - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ДополнительныеЗначенияИспользуются - - View - false - - - Edit - false - - - - InformationRegister.УровниСокращенийАдресныхСведений.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УровниСокращенийАдресныхСведений.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УровниСокращенийАдресныхСведений.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УровниСокращенийАдресныхСведений.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.Attribute.ИсполняющееФоновоеЗадание - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.Служебный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.АвторСтрокой - - View - false - - - Edit - false - - - - InformationRegister.НаследованиеНастроекПравОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.ФайлХранилище - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиДанных.Resource.Префикс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - InformationRegister.ДампыПлатформы.Dimension.ВариантДампа - - View - false - - - Edit - false - - - - Document.СообщениеSMS.Attribute.ТекстСообщения - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ОтладкаОбработчиковВыгрузки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.Dimension.Год - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДополнительныйОбъектАдресацииПроверяющий - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Скрыть - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.ОбязательноеЗаполнение - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.Attribute.ДеятельностьПрекращена - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разрешения - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Dimension.ВремяСобытия - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Document.СообщениеSMS.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ВерсииПодсистем.Resource.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.ТекстСодержания - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаСтандартногоОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.Attribute.ЭксклюзивноеВыполнение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиДанных.Attribute.ОшибкаОбработки - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.Календари.Attribute.ГоризонтПланирования - - View - false - - - Edit - false - - - - InformationRegister.РучныеИзмененияГрафиковРаботы.Dimension.Год - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.УзелОбменаЗагрузкаДанных - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.СообщенияОбменаДанными.Dimension.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.Синоним - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.КомуВыдан - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиДанных.Dimension.ОбластьДанных - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.Dimension.КлючеваяОперация - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.Attribute.ДатаЗавершенияПоследнегоЗапуска - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - InformationRegister.СлужебныеАдресныеСведения.Dimension.Идентификатор - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Доступен - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.ВзаимодействиеОснование - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - InformationRegister.УдалитьСтраныМира.Dimension.ОбластьДанных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов.Attribute.УдаляемыеРазрешения - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.РезервноеКопированиеНастроено - - View - false - - - Edit - false - - - - InformationRegister.ДомаЗданияСтроения.Dimension.ПочтовыйИндекс - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.АдресаУведомленияОПрочтении.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНаборыЗначенийДоступа.Dimension.НомерНабора - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.АдресаУведомленияОПрочтении.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ХешНастроек - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.Dimension.ПроизводственныйКалендарь - - View - false - - - Edit - false - - - - InformationRegister.КодировкиВерсийФайлов.Dimension.ВерсияФайла - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Catalog.ПрограммыЭлектроннойПодписиИШифрования.Attribute.ТипПрограммы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЗаголовокФормыЗначения - - View - false - - - Edit - false - - - - InformationRegister.РезультатыОбменаДанными.Attribute.ПометкаУдаления - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.КартинкиПисьмаВФорматеHTML - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.Подразделение - - View - false - - - Edit - false - - - - InformationRegister.ПричиныИзмененияАдресныхСведений.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.БлокировкиСеансовОбластейДанных.Resource.Эксклюзивная - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.Календари.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ИдентификаторПоставляемыхДанных - - View - false - - - Edit - false - - - - Document.СообщениеSMS.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.Attribute.Имя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ЗагруженныеВерсииАдресныхСведений.Resource.Версия - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеАдресныеСведения.Dimension.КодСубъектаРФ - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.ДанныеСертификата - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Resource.Наименование - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.COMИмяИнформационнойБазыНаСервере1СПредприятия - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.Dimension.ИдентификаторЗаписи - - View - false - - - Edit - false - - - - InformationRegister.СведенияОПользователях.Resource.СрокДействия - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.СообщениеSMS.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданий.Attribute.СостояниеЗадания - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение.Attribute.СмТакже - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - InformationRegister.КэшПрограммныхИнтерфейсов.Resource.Данные - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ИнтерактивноеИзменениеВыгрузки.Attribute.ПредставлениеТекущейНастройки - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ФайлХранилище - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.УзелДляОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.НаименованияПолей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаАктуальностиОтправки - - View - false - - - Edit - false - - - - InformationRegister.ПубличныеИдентификаторыСинхронизируемыхОбъектов.Dimension.Ссылка - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиДанных.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ВключатьПодписьДляНовыхСообщений - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.УдалитьГруппыЗначенийДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьГруппыЗначенийДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьГруппыЗначенийДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьГруппыЗначенийДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ИмяПланаОбменаВРО - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ОриентирыАдресныхОбъектов.Resource.АдресныйОбъект - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.Attribute.УровеньРазрешенияЧтения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - InformationRegister.УдалитьРейтингАктивностиОбластейДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьРейтингАктивностиОбластейДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьРейтингАктивностиОбластейДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьРейтингАктивностиОбластейДанных.StandardAttribute.Period - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.TabularSection.ЗависимостиДополнительныхРеквизитов - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Dimension.Уровень - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.WSИмяПользователя - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.РежимОтладкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ФизическоеЛицо - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - Catalog.Календари.Attribute.СпособЗаполнения - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.СвойстваПользователяИБ - - View - false - - - Edit - false - - - - InformationRegister.ТаблицыГруппДоступа.Dimension.ГруппаДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.МинимальнаяВерсия - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИДФайлаЭлектронногоПисьма - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантВыполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ВерсииПодсистемОбластейДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииПодсистемОбластейДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииПодсистемОбластейДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииПодсистемОбластейДанных.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - InformationRegister.ОбластиПерсональныхДанных.Resource.ИспользованиеСобытийЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.Раздел - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.СсылкаНового - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовXDTO.Attribute.ИмяПланаОбменаВРО - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.СпособУстановкиКурса - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОчисткиФайлов.Dimension.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ФайлХранилище - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.ОбластиПерсональныхДанных.Dimension.ИмяОбласти - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - InformationRegister.ОбластиДанных.Attribute.Повтор - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.Отправитель - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.Dimension.Рассылка - - View - false - - - Edit - false - - - - InformationRegister.ДампыПлатформы.Dimension.ВерсияПлатформы - - View - false - - - Edit - false - - - - InformationRegister.УровниСокращенийАдресныхСведений.Dimension.Уровень - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.Включен - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.СостоянияКонтрагентов.Dimension.Контрагент - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.УдалитьСтраныМира.Resource.Значение - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяСервиса - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.Resource.НачалоБлокировки - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.Расписание - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеАдресныеСведения.Resource.КодУчасткаИФНСФЛ - - View - false - - - Edit - false - - - - InformationRegister.УдалитьСтраныМира.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьСтраныМира.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьСтраныМира.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьСтраныМира.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.СтатистикаКонфигурации.Dimension.ВидСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ДополнительныеЗначенияСВесом - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыКомментарииСтатистики.Dimension.ИдентификаторУдаления - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиДанных.Attribute.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДампыПлатформы.Resource.ИмяФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.Подсистема - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMИмяИнформационнойБазыНаСервере1СПредприятия - - View - false - - - Edit - false - - - - Document.СообщениеSMS.Attribute.ВзаимодействиеОснование - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИДФайлаЭлектронногоПисьма - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОперацииСтатистики.Dimension.ПериодОкончание - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.TabularSection.ХарактеристикиДанных - - View - false - - - Edit - false - - - - InformationRegister.ДомаЗданияСтроения.Dimension.АдресныйОбъект - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПоставляемыеДанныеТребующиеОбработки.Dimension.КодОбработчика - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ВзаимодействиеОснование - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравилКорреспондента - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.ИмяМетода - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПользовательскиеНастройкиОтчетов.Attribute.КлючПользовательскойНастройки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов.Dimension.Документ - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ДампыПлатформы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДампыПлатформы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДампыПлатформы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДампыПлатформы.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - InformationRegister.КодировкиВерсийФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КодировкиВерсийФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КодировкиВерсийФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КодировкиВерсийФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОперацииСтатистики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОперацииСтатистики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОперацииСтатистики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОперацииСтатистики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииПодсистемОбластейДанных.Resource.Версия - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.Resource.ИзменениеБезОграничения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.Адресаты.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.ПолныйСиноним - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.TabularSection.ХарактеристикиДанных.Attribute.Значение - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - DataProcessor.ИнтерактивноеИзменениеВыгрузки.Attribute.ДополнительнаяРегистрацияСценарияУзла - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеНастроек - - View - false - - - Edit - false - - - - InformationRegister.НаборыЗначенийДоступа.Resource.Изменение - - View - false - - - Edit - false - - - - InformationRegister.КомментарииСтатистики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КомментарииСтатистики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КомментарииСтатистики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КомментарииСтатистики.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.Resource.Изменение - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.ПредставлениеПредмета - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.Resource.ДобавлениеБезОграничения - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.Attribute.ОбщаяПроизводительностьСистемы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Уточнение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОбластиДанных.Attribute.ЧасовойПояс - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - InformationRegister.КомментарииОперацииСтатистики.Dimension.ИдентификаторОперации - - View - false - - - Edit - false - - - - Catalog.ПрограммыЭлектроннойПодписиИШифрования.Attribute.АлгоритмПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Dimension.КодДополнительногоЭлемента - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.УзелОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - Document.СообщениеSMS.Attribute.Тема - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.Attribute.УровеньРазрешенияПрава - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.Attribute.ДатаЗаписиЛокальная - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОперацииСтатистики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОперацииСтатистики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОперацииСтатистики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОперацииСтатистики.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.WSURLВебСервиса - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - InformationRegister.РезультатыОбменаДанными.Dimension.ТипПроблемы - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - InformationRegister.ПакетыДляОтправки.Attribute.ТелоПакета - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеАдресныеСведения.Resource.ОКТМО - - View - false - - - Edit - false - - - - InformationRegister.СостоянияПредметовВзаимодействий.Resource.Активен - - View - false - - - Edit - false - - - - InformationRegister.СведенияОПользователях.Resource.ПотребоватьСменуПароляПриВходе - - View - false - - - Edit - false - - - - InformationRegister.ЗагруженныеВерсииАдресныхСведений.Resource.ДатаВерсии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.КомментарииОперацииСтатистики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КомментарииОперацииСтатистики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КомментарииОперацииСтатистики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КомментарииОперацииСтатистики.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.Attribute.ДатаЗаписи - - View - false - - - Edit - false - - - - InformationRegister.КонтактыВзаимодействий.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КонтактыВзаимодействий.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КонтактыВзаимодействий.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КонтактыВзаимодействий.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.COMИмяСервера1СПредприятия - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.АдресОтвета - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.WSИспользоватьПередачуБольшогоОбъемаДанных - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.Имя - - View - false - - - Edit - false - - - - Catalog.ПрограммыЭлектроннойПодписиИШифрования.Attribute.АлгоритмХеширования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.НачальнаяВыгрузкаДанных - - View - false - - - Edit - false - - - - InformationRegister.НаследованиеНастроекПравОбъектов.Dimension.Родитель - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - InformationRegister.ПакетыДляОтправки.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПакетыДляОтправки.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПакетыДляОтправки.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПакетыДляОтправки.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.Attribute.ХранимыйФайл - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПоставляемыеДанныеТребующиеОбработки.Dimension.ИдентификаторФайла - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.Resource.Выполнена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - InformationRegister.АдресныеОбъекты.Dimension.КодСубъектаРФ - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.Attribute.УровеньРазрешенияИзменения - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - InformationRegister.НастройкиПравОбъектов.Dimension.Право - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.УдалятьПисьмаПослеОтправки - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ТипВерсииОбъекта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.РегистрацияИзмененийДляОбменаДанными.Attribute.НастройкаВариантНомераСообщения - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение.Attribute.Важный - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.Добавил - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ИспользоватьПапку - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - InformationRegister.СообщенияОбменаДанными.Resource.ИмяФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования.Attribute.КемВыдан - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантНастройкиОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.Календари.TabularSection.РасписаниеРаботы.Attribute.ВремяНачала - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.TabularSection.Производительность - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.РезультатыОбменаДанными.Attribute.НомерДокумента - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - InformationRegister.РежимыПодключенияВнешнихМодулей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РежимыПодключенияВнешнихМодулей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РежимыПодключенияВнешнихМодулей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РежимыПодключенияВнешнихМодулей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПротоколВходящейПочты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.TabularSection.ХарактеристикиДанных.Attribute.Характеристика - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.TabularSection.Производительность.Attribute.ЦелевоеВремя - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.НаименованияПараметровИОтборов - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.Attribute.ДатаЗаписиЛокальная - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ТеснаяИнтеграцияСФормойОтчета - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMВариантРаботыИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - Catalog.ПользовательскиеНастройкиОтчетов.Attribute.Вариант - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанных.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.РазрешенияНаИспользованиеВнешнихРесурсов.Dimension.КлючРазрешения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - InformationRegister.СостоянияПредметовВзаимодействий.Resource.КоличествоНеРассмотрено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.СообщениеSMS.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ПериодичностьРасписания - - View - false - - - Edit - false - - - - InformationRegister.СостоянияПредметовВзаимодействий.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияПредметовВзаимодействий.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияПредметовВзаимодействий.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияПредметовВзаимодействий.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.ХранимыеФайлыВерсий.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - Catalog.СообщениеSMSПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовИнформационныхБаз.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.СрокХраненияВерсий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.ДатаНачалаПоследнегоЗапуска - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - InformationRegister.СведенияОПользователях.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СведенияОПользователях.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СведенияОПользователях.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СведенияОПользователях.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - InformationRegister.БлокировкиСеансовОбластейДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.БлокировкиСеансовОбластейДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.БлокировкиСеансовОбластейДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.БлокировкиСеансовОбластейДанных.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.СетевойКаталогLinux - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.ГруппироватьПоОтчету - - View - false - - - Edit - false - - - - InformationRegister.СведенияОПользователях.Resource.ПросрочкаРаботыВПрограммеДоЗапрещенияВхода - - View - false - - - Edit - false - - - - Catalog.ОчередьЗаданийОбластейДанных.Attribute.НомерПопытки - - View - false - - - Edit - false - - - - InformationRegister.ИсторияАдресныхОбъектов.Dimension.КодРайона - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.СообщенияОбластейДанных.Attribute.Заблокировано - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьОтправкуДанных - - View - false - - - Edit - false - - - - InformationRegister.ЗагруженныеВерсииАдресныхСведений.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ЗагруженныеВерсииАдресныхСведений.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ЗагруженныеВерсииАдресныхСведений.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ЗагруженныеВерсииАдресныхСведений.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.СообщениеSMS.TabularSection.Адресаты.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ВладелецДополнительныхЗначений - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.ГруппыЗначенийДоступа.Dimension.ГруппаДанных - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Уточнение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиВариантовОтчетов.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ШаблоныЗаданийОчереди.Attribute.ИмяМетода - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.Использование - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяОбъекта - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - - diff --git a/SSL/src/Roles/ИспользованиеТекущихДел/Rights.rights b/SSL/src/Roles/ИспользованиеОбработкиТекущиеДела/Rights.rights similarity index 100% rename from SSL/src/Roles/ИспользованиеТекущихДел/Rights.rights rename to SSL/src/Roles/ИспользованиеОбработкиТекущиеДела/Rights.rights diff --git a/SSL/src/Roles/ИспользованиеТекущихДел/ИспользованиеТекущихДел.mdo b/SSL/src/Roles/ИспользованиеОбработкиТекущиеДела/ИспользованиеОбработкиТекущиеДела.mdo similarity index 55% rename from SSL/src/Roles/ИспользованиеТекущихДел/ИспользованиеТекущихДел.mdo rename to SSL/src/Roles/ИспользованиеОбработкиТекущиеДела/ИспользованиеОбработкиТекущиеДела.mdo index de4c94ce6..1f063d335 100644 --- a/SSL/src/Roles/ИспользованиеТекущихДел/ИспользованиеТекущихДел.mdo +++ b/SSL/src/Roles/ИспользованиеОбработкиТекущиеДела/ИспользованиеОбработкиТекущиеДела.mdo @@ -1,8 +1,8 @@ - ИспользованиеТекущихДел + ИспользованиеОбработкиТекущиеДела ru - Использование текущих дел + Использование обработки текущие дела diff --git a/SSL/src/Roles/ИспользованиеЭлектроннойПодписиИШифрования/ИспользованиеЭлектроннойПодписиИШифрования.mdo b/SSL/src/Roles/ИспользованиеЭлектроннойПодписиИШифрования/ИспользованиеЭлектроннойПодписиИШифрования.mdo deleted file mode 100644 index 61f114548..000000000 --- a/SSL/src/Roles/ИспользованиеЭлектроннойПодписиИШифрования/ИспользованиеЭлектроннойПодписиИШифрования.mdo +++ /dev/null @@ -1,8 +0,0 @@ - - - ИспользованиеЭлектроннойПодписиИШифрования - - ru - Использование электронной подписи и шифрования - - diff --git a/SSL/src/Roles/НастройкаИОценкаПроизводительности/Rights.rights b/SSL/src/Roles/НастройкаИОценкаПроизводительности/Rights.rights index bc3d43cd0..a681cdc5c 100644 --- a/SSL/src/Roles/НастройкаИОценкаПроизводительности/Rights.rights +++ b/SSL/src/Roles/НастройкаИОценкаПроизводительности/Rights.rights @@ -10,6 +10,25 @@ true + + Constant.ПериодХраненияЗамеров + + Read + true + + + Update + true + + + View + true + + + Edit + true + + Constant.ВыполнятьЗамерыПроизводительности @@ -79,6 +98,43 @@ true + + Constant.КоличествоЗамеровВПакетеЭкспорта + + Read + true + + + Update + true + + + View + true + + + Edit + true + + + + DataProcessor.ОценкаПроизводительности.Command.ЭкспортЗамеровПроизводительности + + View + true + + + + InformationRegister.ЗамерыВремени + + Read + true + + + View + true + + Constant.ОценкаПроизводительностиПериодЗаписи @@ -106,7 +162,7 @@ - InformationRegister.ЗамерыВремени + InformationRegister.ЗамерыВремениТехнологические Read true @@ -116,25 +172,6 @@ true - - Constant.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций - - Read - true - - - Update - true - - - View - true - - - Edit - true - - DataProcessor.ОценкаПроизводительности.Command.НастройкиОценкиПроизводительности diff --git a/SSL/src/Roles/НастройкаСинхронизацииФайлов/Rights.rights b/SSL/src/Roles/НастройкаСинхронизацииФайлов/Rights.rights index 518e1b199..3818e6ebb 100644 --- a/SSL/src/Roles/НастройкаСинхронизацииФайлов/Rights.rights +++ b/SSL/src/Roles/НастройкаСинхронизацииФайлов/Rights.rights @@ -41,55 +41,6 @@ true - - InformationRegister.СтатусыСинхронизацииФайловСОблачнымСервисом.StandardAttribute.Active - - Edit - false - - - - InformationRegister.СтатусыСинхронизацииФайловСОблачнымСервисом.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.СтатусыСинхронизацииФайловСОблачнымСервисом.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.СтатусыСинхронизацииФайловСОблачнымСервисом.StandardAttribute.Period - - Edit - false - - - - InformationRegister.СтатусыСинхронизацииФайловСОблачнымСервисом.Dimension.Файл - - Edit - false - - - - InformationRegister.СтатусыСинхронизацииФайловСОблачнымСервисом.Resource.Href - - Edit - false - - - - InformationRegister.СтатусыСинхронизацииФайловСОблачнымСервисом.Resource.Etag - - Edit - false - - Catalog.УчетныеЗаписиСинхронизацииФайлов diff --git a/SSL/src/Roles/ПолныеПрава/Rights.rights b/SSL/src/Roles/ПолныеПрава/Rights.rights index 3261c1b0a..9e400413c 100644 --- a/SSL/src/Roles/ПолныеПрава/Rights.rights +++ b/SSL/src/Roles/ПолныеПрава/Rights.rights @@ -3,35 +3,6 @@ true true false - - InformationRegister.ОбластиСтатистики.Dimension.ИдентификаторОбласти - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.Dimension.КаналСообщений - - View - false - - - Edit - false - - Constant.МаксимальнаяДлительностьВыполненияИсполняющегоФоновогоЗадания @@ -43,17 +14,6 @@ false - - InformationRegister.ЗамерыВремени.Dimension.ДатаНачалаЗамера - - View - false - - - Edit - false - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы @@ -115,57 +75,6 @@ false - - InformationRegister.ПоставляемыеДанныеТребующиеОбработки.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПоставляемыеДанныеТребующиеОбработки.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПоставляемыеДанныеТребующиеОбработки.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПоставляемыеДанныеТребующиеОбработки.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.Dimension.ИдентификаторУдаления - - Edit - false - - Catalog.ШаблоныАнкет @@ -189,28 +98,6 @@ false - - InformationRegister.УдалитьОчередьЗаданий.Resource.СостояниеЗадания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.НомерПопытки - - View - false - - - Edit - false - - Constant.ПараметрыАдминистрированияИБ @@ -254,28 +141,6 @@ false - - InformationRegister.ЗамерыВремени.Resource.ВремяВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.Attribute.ДатаОкончания - - View - false - - - Edit - false - - Constant.КопироватьОбластиДанныхИзЭталонной @@ -342,50 +207,6 @@ false - - InformationRegister.СообщенияОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СообщенияОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СообщенияОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СообщенияОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - Catalog.НаборыДополнительныхРеквизитовИСведений @@ -470,28 +291,6 @@ false - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПодпискиПолучателей.Dimension.КаналСообщений - - View - false - - - Edit - false - - InformationRegister.ЗамерыКомментарииСтатистики @@ -547,34 +346,6 @@ false - - InformationRegister.ЗамерыКомментарииСтатистики.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ЗамерыКомментарииСтатистики.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ЗамерыКомментарииСтатистики.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ЗамерыКомментарииСтатистики.StandardAttribute.Period - - Edit - false - - ExchangePlan.ОбменСообщениями @@ -658,72 +429,6 @@ false - - ExchangePlan.ОбменСообщениями.StandardAttribute.ReceivedNo - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.SentNo - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.Ref - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.Description - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.Code - - View - false - - - Edit - false - - Constant.ИспользоватьДополнительныеОтчетыИОбработки @@ -790,34 +495,6 @@ false - - InformationRegister.СтатистикаКонфигурации.StandardAttribute.Active - - Edit - false - - - - InformationRegister.СтатистикаКонфигурации.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.СтатистикаКонфигурации.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.СтатистикаКонфигурации.StandardAttribute.Period - - Edit - false - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения @@ -874,70 +551,15 @@ - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType + Constant.ПериодХраненияЗамеров - Edit + Read false - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - Edit + Update false - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMАутентификацияОперационнойСистемы View false @@ -946,15 +568,28 @@ Edit false - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - View + ReadDataHistory false - Edit + UpdateDataHistory + false + + + UpdateDataHistoryVersionComment + false + + + ViewDataHistory + false + + + EditDataHistoryVersionComment + false + + + SwitchToDataHistoryVersion false @@ -988,13 +623,6 @@ false - - InformationRegister.ПраваРолей.Dimension.ОбъектМетаданных - - Edit - false - - DataProcessor.РегламентныеИФоновыеЗадания.Command.РегламентныеИФоновыеЗадания @@ -1036,31 +664,6 @@ false - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.Dimension.ОперацияСтатистики - - Edit - false - - - - InformationRegister.ПраваРолей.Dimension.Роль - - Edit - false - - DataProcessor.НастройкаРезервногоКопированияИБ @@ -1095,24 +698,6 @@ false - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьCOMПарольПользователя - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - Edit - false - - InformationRegister.ДомаЗданияСтроения @@ -1128,17 +713,6 @@ false - - InformationRegister.ЗамерыВремениТехнологические.Dimension.НомерСеанса - - View - false - - - Edit - false - - InformationRegister.ПодпискиПолучателей @@ -1195,75 +769,25 @@ - InformationRegister.ПодпискиПолучателей.StandardAttribute.Active + Catalog.ШаблоныСообщенийПрисоединенныеФайлы - View + InteractiveDelete false - Edit - false - - - - InformationRegister.ПодпискиПолучателей.StandardAttribute.LineNumber - - View + InteractiveDeletePredefinedData false - Edit - false - - - - InformationRegister.ПодпискиПолучателей.StandardAttribute.Recorder - - View + InteractiveSetDeletionMarkPredefinedData false - Edit - false - - - - InformationRegister.ПодпискиПолучателей.StandardAttribute.Period - - View + InteractiveClearDeletionMarkPredefinedData false - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.Dimension.ДатаЗаписи - - Edit - false - - - - Catalog.ПоставляемыеДанные.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.КоличествоПопытокОбработкиСообщения - - View - false - - - Edit + InteractiveDeleteMarkedPredefinedData false @@ -1291,18 +815,30 @@ - InformationRegister.УдалитьЗамерыВремени.Attribute.ИмяПользователя + Catalog.Валюты - View + InteractiveDelete false - Edit + InteractiveDeletePredefinedData + false + + + InteractiveSetDeletionMarkPredefinedData + false + + + InteractiveClearDeletionMarkPredefinedData + false + + + InteractiveDeleteMarkedPredefinedData false - Catalog.Валюты + Catalog.ШаблоныСообщений InteractiveDelete false @@ -1346,81 +882,6 @@ false - - InformationRegister.ЗависимостиПравДоступа.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ЗависимостиПравДоступа.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ЗависимостиПравДоступа.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ЗависимостиПравДоступа.StandardAttribute.Period - - Edit - false - - - - InformationRegister.НастройкиОтправителя.Dimension.Получатель - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.Dimension.ОбластьСтатистики - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.Получатель - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - InformationRegister.КомментарииСтатистики.Resource.Наименование - - Edit - false - - Constant.ИспользоватьСинхронизациюДанныхВЛокальномРежиме @@ -1514,7 +975,15 @@ - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьWSПароль + Constant.ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков + + Read + false + + + Update + false + View false @@ -1523,11 +992,28 @@ Edit false - - - InformationRegister.БуферОперацийСтатистики.Resource.ОперацияСтатистики - Edit + ReadDataHistory + false + + + UpdateDataHistory + false + + + UpdateDataHistoryVersionComment + false + + + ViewDataHistory + false + + + EditDataHistoryVersionComment + false + + + SwitchToDataHistoryVersion false @@ -1588,27 +1074,16 @@ - InformationRegister.ПакетыИнформацииПриЗапуске.Resource.Состав + CommonForm.НастройкаДоступаКСервисуMorpher View false - - Edit - false - - InformationRegister.БуферОперацийСтатистики.Resource.ОбластьСтатистики + Constant.ПараметрыПодключаемыхКоманд - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View + Update false @@ -1617,39 +1092,7 @@ - InformationRegister.ЗамерыОперацииСтатистики.Resource.СуммаЗначений - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.Dimension.КлючеваяОперация - - View - false - - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.Dimension.ИдентификаторУдаления - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические + InformationRegister.УдалитьЗамерыВремениТехнологические Read false @@ -1703,100 +1146,6 @@ false - - InformationRegister.ЗамерыВремениТехнологические.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Configuration.БиблиотекаСтандартныхПодсистем - - Administration - false - - - UpdateDataBaseConfiguration - false - - - ThickClient - false - - - ExternalConnection - false - - - Automation - false - - - TechnicalSpecialistMode - false - - - ConfigurationExtensionsAdministration - false - - - InteractiveOpenExtDataProcessors - false - - - InteractiveOpenExtReports - false - - Constant.ИспользоватьСинхронизациюДанныхВМоделиСервиса @@ -1894,71 +1243,6 @@ false - - Catalog.ПоставляемыеДанные.Attribute.ИдентификаторФайла - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.Resource.СообщениеБлокировки - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.Attribute.Ведущая - - View - false - - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.Resource.КомментарийСтатистики - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Resource.ВремяНачалаПроверка - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаОбработкиДляОтладкиЗагрузки - - View - false - - - Edit - false - - Constant.РежимИспользованияИнформационнойБазы @@ -2069,62 +1353,6 @@ false - - Catalog.КлючевыеОперации.StandardAttribute.Predefined - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Ref - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Owner - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Parent - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Description - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Code - - Edit - false - - Constant.СообщениеБлокировкиПриОбновленииКонфигурации @@ -2136,24 +1364,6 @@ false - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - Edit - false - - - - InformationRegister.ЗамерыВремени.Dimension.НомерСеанса - - View - false - - - Edit - false - - CommonCommand.НастройкиПроверкиКонтрагентов @@ -2192,72 +1402,6 @@ false - - InformationRegister.ОбластиТребующиеОбработкиПоставляемыхДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбластиТребующиеОбработкиПоставляемыхДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбластиТребующиеОбработкиПоставляемыхДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбластиТребующиеОбработкиПоставляемыхДанных.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - Catalog.ВариантыОтветовАнкет @@ -2281,17 +1425,6 @@ false - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - Catalog.Заметки @@ -2315,42 +1448,6 @@ false - - InformationRegister.СообщенияОбменаДанными.Resource.ДатаЗакладкиСообщения - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.Resource.ВидДня - - Edit - false - - - - InformationRegister.ОбластиСтатистики.Dimension.СобиратьСтатистикуКонфигурации - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя @@ -2358,17 +1455,6 @@ false - - Catalog.СообщенияСистемы.Attribute.ТелоСообщения - - View - false - - - Edit - false - - Catalog.ПредопределенныеВариантыОтчетовРасширений @@ -2392,24 +1478,6 @@ false - - InformationRegister.ЗамерыОперацииСтатистики.Dimension.ОперацияСтатистики - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - Document.НазначениеОпросов @@ -2417,17 +1485,6 @@ false - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - Catalog.СценарииОбменовДанными @@ -2483,69 +1540,6 @@ false - - Catalog.СценарииОбменовДанными.StandardAttribute.PredefinedDataName - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - Edit - false - - Constant.КлючОбластиДанных @@ -2589,17 +1583,6 @@ false - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - ExchangePlan.ОбновлениеИнформационнойБазы @@ -2607,28 +1590,6 @@ false - - InformationRegister.ПравилаДляОбменаДанными.Resource.РежимПротоколированияОбменаДанными - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - Constant.ДатаПоследнегоСтартаКлиентскогоСеанса @@ -2695,84 +1656,6 @@ false - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Predefined - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Ref - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Owner - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Parent - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Description - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Code - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.Resource.КонецБлокировки - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - InformationRegister.УдалитьАдресныйКлассификатор @@ -2788,34 +1671,6 @@ false - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - Edit - false - - CommonForm.ПараметрыПроксиСервера @@ -2823,13 +1678,6 @@ false - - InformationRegister.КомментарииСтатистики.Dimension.ИдентификаторКомментария - - Edit - false - - Constant.КаталогОбменаФайламиВМоделиСервиса @@ -2873,13 +1721,6 @@ false - - InformationRegister.БуферОперацийСтатистики.Resource.Значение - - Edit - false - - Document.ТелефонныйЗвонок @@ -2910,35 +1751,6 @@ false - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДампыПлатформы.Dimension.ДатаРегистрации - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.TabularSection.Производительность.Attribute.КлючеваяОперация - - View - false - - - Edit - false - - Constant.ЛогинДоступаКСервисуMorpher @@ -2987,52 +1799,6 @@ false - - InformationRegister.ДанныеПроизводственногоКалендаря.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.StandardAttribute.Period - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОперацииСтатистики.Dimension.ИдентификаторУдаления - - Edit - false - - Catalog.ВерсииРасширений @@ -3056,49 +1822,6 @@ false - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.Resource.КоличествоЗначений - - Edit - false - - - - InformationRegister.ПраваРолей.Resource.Редактирование - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMИмяСервера1СПредприятия - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Resource.ВремяКонца - - Edit - false - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных @@ -3154,50 +1877,6 @@ false - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.StandardAttribute.Period - - View - false - - - Edit - false - - Constant.УдалитьПарольСлужебногоПользователяМенеджераСервиса @@ -3241,24 +1920,6 @@ false - - InformationRegister.ЗамерыВремениТехнологические.Resource.ВремяВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыКомментарииСтатистики.Resource.КоличествоЗначений - - Edit - false - - Constant.СписокРасширенийТекстовыхФайлов @@ -3302,53 +1963,6 @@ false - - InformationRegister.КомментарииСтатистики.Dimension.ХешНаименования - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Resource.ВремяНачала - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Dimension.КлючеваяОперация - - View - false - - - Edit - false - - - - InformationRegister.ОбластиТребующиеОбработкиПоставляемыхДанных.Dimension.КодОбработчика - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.ЗапланированныйМоментЗапуска - - View - false - - - Edit - false - - InformationRegister.ПраваРолей @@ -3364,34 +1978,6 @@ false - - InformationRegister.ПраваРолей.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ПраваРолей.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ПраваРолей.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ПраваРолей.StandardAttribute.Period - - Edit - false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы @@ -3521,24 +2107,6 @@ false - - InformationRegister.УдалитьОчередьЗаданий.Resource.Параметры - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - Edit - false - - Constant.СписокРасширенийФайловOpenDocument @@ -3582,30 +2150,8 @@ false - - InformationRegister.ПакетыДляОтправки.Dimension.НомерПакета - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - Constant.ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC - - Read - false - Update false @@ -3618,18 +2164,6 @@ Edit false - - ReadDataHistory - false - - - UpdateDataHistory - false - - - UpdateDataHistoryVersionComment - false - ViewDataHistory false @@ -3643,24 +2177,6 @@ false - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.Dimension.Дата - - Edit - false - - Document.Встреча @@ -3668,17 +2184,6 @@ false - - Catalog.ПоставляемыеДанные.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - Catalog.Пользователи @@ -3745,28 +2250,6 @@ false - - InformationRegister.НастройкиТранспортаОбмена.Resource.WSИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение.Attribute.Подсистема - - View - false - - - Edit - false - - Constant.ПоддержкаРезервногоКопирования @@ -3794,28 +2277,6 @@ false - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.Resource.Комментарий - - View - false - - - Edit - false - - InformationRegister.НастройкиОтправителя @@ -3871,50 +2332,6 @@ false - - InformationRegister.НастройкиОтправителя.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.StandardAttribute.Period - - View - false - - - Edit - false - - InformationRegister.ВерсииПодсистем @@ -4008,64 +2425,6 @@ false - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.ЗначениеПустойСсылки - - Edit - false - - InformationRegister.ОбластиДанных @@ -4081,13 +2440,6 @@ false - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.БезДанных - - Edit - false - - InformationRegister.УдалитьВерсииПодсистем @@ -4143,17 +2495,6 @@ false - - Catalog.ПоставляемыеДанные.Attribute.Том - - View - false - - - Edit - false - - Constant.ИзвлекатьТекстыФайловНаСервере @@ -4198,7 +2539,15 @@ - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий + Constant.КоличествоЗамеровВПакетеЭкспорта + + Read + false + + + Update + false + View false @@ -4207,51 +2556,28 @@ Edit false - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View + ReadDataHistory false - Edit - false - - - - InformationRegister.ОбластиСтатистики.Dimension.ХешНаименования - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.Attribute.Шаг - - View + UpdateDataHistory false - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View + UpdateDataHistoryVersionComment false - Edit + ViewDataHistory + false + + + EditDataHistoryVersionComment + false + + + SwitchToDataHistoryVersion false @@ -4289,24 +2615,6 @@ false - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ЗависимостиПравДоступа.Dimension.ТипВедущейТаблицы - - Edit - false - - Constant.КаталогОбменаФайламиВМоделиСервисаLinux @@ -4350,24 +2658,6 @@ false - - InformationRegister.ПравилаДляОбменаДанными.Resource.НеОстанавливатьПоОшибке - - View - false - - - Edit - false - - - - InformationRegister.ОперацииСтатистики.Resource.Наименование - - Edit - false - - InformationRegister.ОчередьИзвлеченияТекста @@ -4379,34 +2669,6 @@ false - - InformationRegister.ОчередьИзвлеченияТекста.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ОчередьИзвлеченияТекста.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ОчередьИзвлеченияТекста.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ОчередьИзвлеченияТекста.StandardAttribute.Period - - Edit - false - - Catalog.УчетныеЗаписиЭлектроннойПочты @@ -4430,28 +2692,6 @@ false - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - Constant.МаксимальныйРазмерФайла @@ -4495,50 +2735,6 @@ false - - InformationRegister.ЗамерыВремени.Attribute.ДатаЗаписи - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.Attribute.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMКаталогИнформационнойБазы - - View - false - - - Edit - false - - InformationRegister.ЗапросыРазрешенийНаИспользованиеВнешнихРесурсов @@ -4605,53 +2801,6 @@ false - - InformationRegister.ПоставляемыеДанныеТребующиеОбработки.Resource.КоличествоПопыток - - View - false - - - Edit - false - - - - InformationRegister.ОперацииСтатистики.Dimension.ИдентификаторОперации - - Edit - false - - - - InformationRegister.СтатистикаКонфигурации.Dimension.ОперацияСтатистики - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.ИсполняющееФоновоеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.РежимОтладки - - View - false - - - Edit - false - - InformationRegister.ПакетыИнформацииПриЗапуске @@ -4683,61 +2832,6 @@ false - - InformationRegister.ПакетыИнформацииПриЗапуске.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПакетыИнформацииПриЗапуске.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПакетыИнформацииПриЗапуске.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПакетыИнформацииПриЗапуске.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - InformationRegister.УдалитьОбластиКРезервномуКопированию @@ -4793,13 +2887,6 @@ false - - InformationRegister.ПраваРолей.Resource.ИнтерактивноеДобавление - - Edit - false - - Constant.РазделыОписанияИзмененийСистемы @@ -4965,45 +3052,6 @@ false - - InformationRegister.ЗамерыОбластиСтатистики.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.StandardAttribute.Period - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.Заблокировано - - View - false - - - Edit - false - - InformationRegister.ДополнительныеАдресныеСведения @@ -5041,28 +3089,6 @@ false - - InformationRegister.ОбластиТребующиеОбработкиПоставляемыхДанных.Dimension.ОбластьДанных - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - Catalog.ПроизводственныеКалендари @@ -5118,62 +3144,6 @@ false - - Catalog.ПроизводственныеКалендари.StandardAttribute.Predefined - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Ref - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Owner - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Parent - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Description - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Code - - Edit - false - - Catalog.СтроковыеКонтактыВзаимодействий @@ -5220,13 +3190,6 @@ false - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.ПорядокКоллекции - - Edit - false - - Catalog.ВидыКонтактнойИнформации @@ -5250,35 +3213,6 @@ false - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОбластиСтатистики.Dimension.ПериодОкончание - - Edit - false - - Catalog.СтраныМира @@ -5302,42 +3236,6 @@ false - - InformationRegister.КомментарииОперацииСтатистики.Dimension.ИдентификаторКомментария - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.ПодробноеПредставлениеОшибки - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.Dimension.ОбластьДанных - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.Resource.Просмотр - - Edit - false - - Document.ОтзывСогласияНаОбработкуПерсональныхДанных @@ -5346,24 +3244,41 @@ - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями + Configuration.БиблиотекаСтандартныхПодсистем - View + Administration false - Edit - false - - - - Catalog.ПоставляемыеДанные.Attribute.ДатаДобавления - - View + UpdateDataBaseConfiguration false - Edit + ThickClient + false + + + ExternalConnection + false + + + Automation + false + + + TechnicalSpecialistMode + false + + + ConfigurationExtensionsAdministration + false + + + InteractiveOpenExtDataProcessors + false + + + InteractiveOpenExtReports false @@ -5390,20 +3305,6 @@ false - - InformationRegister.ЗамерыКомментарииСтатистики.Dimension.КомментарийСтатистики - - Edit - false - - - - InformationRegister.ОперацииСтатистики.Dimension.ХешНаименования - - Edit - false - - Constant.МаксимальноеКоличествоИсполняющихФоновыхЗаданий @@ -5415,27 +3316,6 @@ false - - InformationRegister.УдалитьЗамерыВремени.Resource.ВремяКонцаПроверка - - Edit - false - - - - InformationRegister.ЗамерыКомментарииСтатистики.Dimension.ПериодОкончание - - Edit - false - - - - InformationRegister.ЗависимостиПравДоступа.Dimension.ПодчиненнаяТаблица - - Edit - false - - InformationRegister.УдалитьОчередьИзвлеченияТекста @@ -5491,24 +3371,6 @@ false - - InformationRegister.ЗамерыВремениТехнологические.Dimension.ДатаНачалаЗамера - - View - false - - - Edit - false - - - - InformationRegister.ПраваРолей.Resource.Добавление - - Edit - false - - Catalog.ЗакладкиВзаимодействий @@ -5532,13 +3394,6 @@ false - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - Edit - false - - Constant.ПрефиксОбластиДанных @@ -5550,17 +3405,6 @@ false - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - Catalog.РассылкиОтчетов @@ -5584,35 +3428,6 @@ false - - InformationRegister.СтатистикаКонфигурации.Resource.Значение - - Edit - false - - - - InformationRegister.ПакетыИнформацииПриЗапуске.Dimension.Номер - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.ЭтоБыстроеСообщение - - View - false - - - Edit - false - - Document.ЭлектронноеПисьмоИсходящее @@ -5621,7 +3436,15 @@ - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер + InformationRegister.ЗамерыВремени + + Read + false + + + Update + false + View false @@ -5630,26 +3453,40 @@ Edit false - - - InformationRegister.УдалитьОчередьЗаданий.Resource.УдалитьРегламентноеЗадание - View + TotalsControl false - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.КоличествоЭлементовВТранзакцииЗагрузкиДанных - - View + ReadDataHistory false - Edit + ReadDataHistoryOfMissingData + false + + + UpdateDataHistory + false + + + UpdateDataHistoryOfMissingData + false + + + UpdateDataHistoryVersionComment + false + + + ViewDataHistory + false + + + EditDataHistoryVersionComment + false + + + SwitchToDataHistoryVersion false @@ -5676,17 +3513,6 @@ false - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - Catalog.ВнешниеПользователи @@ -5744,13 +3570,6 @@ false - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.Имя - - Edit - false - - Constant.ПараметрыСлужебныхСобытий @@ -5779,7 +3598,15 @@ - InformationRegister.ЗамерыВремениТехнологические.Resource.Комментарий + Constant.ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют + + Read + false + + + Update + false + View false @@ -5788,29 +3615,28 @@ Edit false - - - InformationRegister.УдалитьЗамерыВремени.Dimension.УникальныйИдентификатор - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View + ReadDataHistory false - Edit + UpdateDataHistory false - - - InformationRegister.ЗамерыКомментарииСтатистики.Dimension.ОперацияСтатистики - Edit + UpdateDataHistoryVersionComment + false + + + ViewDataHistory + false + + + EditDataHistoryVersionComment + false + + + SwitchToDataHistoryVersion false @@ -5836,24 +3662,6 @@ false - - InformationRegister.УдалитьОчередьЗаданий.Resource.ЭксклюзивноеВыполнение - - View - false - - - Edit - false - - - - InformationRegister.СтатистикаКонфигурации.Dimension.ИдентификаторОбластиСтатистики - - Edit - false - - Constant.КаталогСообщенийОбменаДаннымиДляWindows @@ -5897,17 +3705,6 @@ false - - InformationRegister.УдалитьЗамерыВремени.Resource.ВремяВыполнения - - View - false - - - Edit - false - - Constant.АвтоматическиНастраиватьРазрешенияВПрофиляхБезопасности @@ -5951,20 +3748,6 @@ false - - Catalog.КлючевыеОперации.Attribute.МинимальноДопустимыйУровень - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.ПолноеИмя - - Edit - false - - InformationRegister.КэшПрограммныхИнтерфейсов @@ -6020,24 +3803,6 @@ false - - InformationRegister.ПраваРолей.Resource.ЧтениеБезОграничения - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - Constant.НеИспользоватьРазделениеПоОбластямДанных @@ -6092,17 +3857,6 @@ false - - InformationRegister.УдалитьОчередьЗаданий.Dimension.ОбластьДанных - - View - false - - - Edit - false - - Constant.КонечнаяТочкаМенеджераСервиса @@ -6114,17 +3868,6 @@ false - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - Catalog.ПредопределенныеВариантыОтчетов @@ -6200,111 +3943,8 @@ false - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - Constant.ОценкаПроизводительностиПериодЗаписи - - Read - false - Update false @@ -6317,18 +3957,6 @@ Edit false - - ReadDataHistory - false - - - UpdateDataHistory - false - - - UpdateDataHistoryVersionComment - false - ViewDataHistory false @@ -6342,13 +3970,6 @@ false - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.КлючОбъектаМетаданных - - Edit - false - - Constant.ГлавныйУзел @@ -6360,61 +3981,6 @@ false - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.ХешНастроек - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.РежимОтладкиЗагрузки - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.Attribute.ВидДанных - - View - false - - - Edit - false - - Catalog.ГруппыПользователей @@ -6438,28 +4004,6 @@ false - - InformationRegister.ЗамерыВремениТехнологические.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.Отчет - - View - false - - - Edit - false - - Constant.ИспользуютсяПрофилиБезопасности @@ -6471,31 +4015,6 @@ false - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - InformationRegister.ОперацииСтатистики.Attribute.КоличествоУникальныхКомментариев - - Edit - false - - - - InformationRegister.ПакетыДляОтправки.Attribute.ХешПакета - - Edit - false - - Constant.БлокировкаОтправкиБыстрыхСообщений @@ -6539,42 +4058,6 @@ false - - Catalog.КлючевыеОперации.Attribute.ЦелевоеВремя - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.WSЗапомнитьПароль - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.ОбластиСтатистики.Resource.Наименование - - Edit - false - - Catalog.ЗначенияСвойствОбъектовИерархия @@ -6598,31 +4081,6 @@ false - - Catalog.КлючевыеОперации.Attribute.Приоритет - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.КлючЗамеров - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - Edit - false - - Catalog.УчетныеЗаписиСинхронизацииФайлов @@ -6646,24 +4104,6 @@ false - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОперацииСтатистики.Resource.КоличествоЗначений - - Edit - false - - Catalog.ПрограммыЭлектроннойПодписиИШифрования @@ -6710,17 +4150,6 @@ false - - InformationRegister.БезопасноеХранилищеДанных.Dimension.Владелец - - View - false - - - Edit - false - - Constant.УдалитьИмяСлужебногоПользователяМенеджераСервиса @@ -6819,72 +4248,6 @@ false - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.КоличествоЭлементовВТранзакцииВыгрузкиДанных - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач @@ -6908,17 +4271,6 @@ false - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - Constant.ПараметрыОграниченияДоступа @@ -6946,17 +4298,6 @@ false - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - Constant.ИспользоватьНесколькоПроизводственныхКалендарей @@ -7023,50 +4364,6 @@ false - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - InformationRegister.ОбластиСтатистики @@ -7122,34 +4419,6 @@ false - - InformationRegister.ОбластиСтатистики.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ОбластиСтатистики.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ОбластиСтатистики.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ОбластиСтатистики.StandardAttribute.Period - - Edit - false - - Constant.НастройкаПодчиненногоУзлаРИБЗавершена @@ -7184,39 +4453,6 @@ false - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаОбработкиДляОтладкиВыгрузки - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - Catalog.ЗначенияСвойствОбъектов @@ -7240,28 +4476,6 @@ false - - InformationRegister.ПодпискиПолучателей.Dimension.Получатель - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMИмяПользователя - - View - false - - - Edit - false - - CommonCommand.ОбменСообщениями @@ -7269,28 +4483,6 @@ false - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - Constant.ВнутреннийАдресМенеджераСервиса @@ -7432,17 +4624,6 @@ false - - InformationRegister.ОбластиТребующиеОбработкиПоставляемыхДанных.Dimension.ИдентификаторФайла - - View - false - - - Edit - false - - InformationRegister.ИсторияАдресныхОбъектов @@ -7513,68 +4694,6 @@ false - - InformationRegister.УдалитьЗамерыВремени.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Dimension.ДатаЗамера - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - Edit - false - - Catalog.СообщениеSMSПрисоединенныеФайлы @@ -7598,47 +4717,6 @@ false - - Catalog.Организации - - InteractiveDelete - false - - - InteractiveDeletePredefinedData - false - - - InteractiveSetDeletionMarkPredefinedData - false - - - InteractiveClearDeletionMarkPredefinedData - false - - - InteractiveDeleteMarkedPredefinedData - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.Ключ - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - Edit - false - - Constant.ПараметрыВариантовОтчетов @@ -7651,7 +4729,7 @@ - InformationRegister.ЗамерыВремени + InformationRegister.УдалитьЗамерыВремени2 Read false @@ -7705,90 +4783,6 @@ false - - InformationRegister.ЗамерыВремени.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанных.Resource.Данные - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.Attribute.Диаграмма - - View - false - - - Edit - false - - InformationRegister.УровниСокращенийАдресныхСведений @@ -7804,20 +4798,6 @@ false - - InformationRegister.ДампыПлатформы.Dimension.ВариантДампа - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.Dimension.Год - - Edit - false - - Constant.РазмерБлокаПередачиФайла @@ -7861,89 +4841,6 @@ false - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - InformationRegister.СообщенияОбменаДанными.Dimension.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Constant.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций - - Read - false - - - Update - false - - - View - false - - - Edit - false - - - ReadDataHistory - false - - - UpdateDataHistory - false - - - UpdateDataHistoryVersionComment - false - - - ViewDataHistory - false - - - EditDataHistoryVersionComment - false - - - SwitchToDataHistoryVersion - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.Синоним - - Edit - false - - Constant.СообщениеОбменаДаннымиИзГлавногоУзла @@ -7987,17 +4884,6 @@ false - - InformationRegister.ЗамерыВремени.Dimension.КлючеваяОперация - - View - false - - - Edit - false - - Document.СогласиеНаОбработкуПерсональныхДанных @@ -8005,13 +4891,6 @@ false - - InformationRegister.УдалитьСтраныМира.Dimension.ОбластьДанных - - Edit - false - - InformationRegister.БуферОперацийСтатистики @@ -8067,34 +4946,6 @@ false - - InformationRegister.БуферОперацийСтатистики.StandardAttribute.Active - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.БуферОперацийСтатистики.StandardAttribute.Period - - Edit - false - - Constant.ПараметрыЦентраМониторинга @@ -8106,13 +4957,6 @@ false - - InformationRegister.ДанныеПроизводственногоКалендаря.Dimension.ПроизводственныйКалендарь - - Edit - false - - Catalog.ГруппыВнешнихПользователей @@ -8136,6 +4980,61 @@ false + + InformationRegister.ЗамерыВремениТехнологические + + Read + false + + + Update + false + + + View + false + + + Edit + false + + + TotalsControl + false + + + ReadDataHistory + false + + + ReadDataHistoryOfMissingData + false + + + UpdateDataHistory + false + + + UpdateDataHistoryOfMissingData + false + + + UpdateDataHistoryVersionComment + false + + + ViewDataHistory + false + + + EditDataHistoryVersionComment + false + + + SwitchToDataHistoryVersion + false + + Constant.ИспользоватьРазделениеПоОбластямДанных @@ -8201,42 +5100,6 @@ false - - InformationRegister.БуферОперацийСтатистики.Dimension.ИдентификаторЗаписи - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение.Attribute.СмТакже - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - Edit - false - - Catalog.ГруппыДоступа @@ -8260,17 +5123,6 @@ false - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - ChartOfCharacteristicTypes.УдалитьВидыДоступа @@ -8326,80 +5178,6 @@ false - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.PredefinedDataName - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.НаименованияПолей - - View - false - - - Edit - false - - InformationRegister.УдалитьОбластиДанных @@ -8510,61 +5288,6 @@ false - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - Catalog.ВстречаПрисоединенныеФайлы @@ -8643,59 +5366,16 @@ false - - InformationRegister.ПравилаДляОбменаДанными.Resource.РежимОтладкиВыгрузки - - View - false - - - Edit - false - - Constant.ЭтоАвтономноеРабочееМесто - - Read - false - Update false - - View - false - Edit false - - ReadDataHistory - false - - - UpdateDataHistory - false - - - UpdateDataHistoryVersionComment - false - - - ViewDataHistory - false - - - EditDataHistoryVersionComment - false - - - SwitchToDataHistoryVersion - false - DataProcessor.РезервноеКопированиеИБ.Command.ВыполнитьВосстановлениеДанных @@ -8779,109 +5459,6 @@ false - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииПодсистемОбластейДанных - - Update - false - - - Edit - false - - - TotalsControl - false - - CommonForm.НастройкаОбменаСообщениями @@ -8942,64 +5519,6 @@ false - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.Отправитель - - View - false - - - Edit - false - - - - InformationRegister.ДампыПлатформы.Dimension.ВерсияПлатформы - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.Включен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьСтраныМира.Resource.Значение - - Edit - false - - Constant.КоличествоЭлементовВТранзакцииЗагрузкиДанных @@ -9011,17 +5530,6 @@ false - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.Resource.НачалоБлокировки - - View - false - - - Edit - false - - InformationRegister.УдалитьСтраныМира @@ -9037,106 +5545,6 @@ false - - InformationRegister.УдалитьСтраныМира.StandardAttribute.Active - - Edit - false - - - - InformationRegister.УдалитьСтраныМира.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.УдалитьСтраныМира.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.УдалитьСтраныМира.StandardAttribute.Period - - Edit - false - - - - InformationRegister.СтатистикаКонфигурации.Dimension.ВидСтатистики - - Edit - false - - - - InformationRegister.ЗамерыКомментарииСтатистики.Dimension.ИдентификаторУдаления - - Edit - false - - - - InformationRegister.ДампыПлатформы.Resource.ИмяФайла - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMИмяИнформационнойБазыНаСервере1СПредприятия - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыОперацииСтатистики.Dimension.ПериодОкончание - - Edit - false - - - - Catalog.ПоставляемыеДанные.TabularSection.ХарактеристикиДанных - - View - false - - - Edit - false - - - - InformationRegister.ПоставляемыеДанныеТребующиеОбработки.Dimension.КодОбработчика - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.ИмяМетода - - View - false - - - Edit - false - - InformationRegister.ДампыПлатформы @@ -9192,34 +5600,6 @@ false - - InformationRegister.ДампыПлатформы.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ДампыПлатформы.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ДампыПлатформы.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ДампыПлатформы.StandardAttribute.Period - - Edit - false - - InformationRegister.ЗамерыОперацииСтатистики @@ -9275,34 +5655,6 @@ false - - InformationRegister.ЗамерыОперацииСтатистики.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ЗамерыОперацииСтатистики.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ЗамерыОперацииСтатистики.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ЗамерыОперацииСтатистики.StandardAttribute.Period - - Edit - false - - Catalog.Файлы @@ -9326,13 +5678,6 @@ false - - InformationRegister.ПраваРолей.Resource.ИзменениеБезОграничения - - Edit - false - - Constant.ИсточникДанныхАдресногоКлассификатора @@ -9376,24 +5721,6 @@ false - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.ПолныйСиноним - - Edit - false - - - - Catalog.ПоставляемыеДанные.TabularSection.ХарактеристикиДанных.Attribute.Значение - - View - false - - - Edit - false - - Constant.ПредставлениеОбластиДанных @@ -9460,48 +5787,6 @@ false - - InformationRegister.КомментарииСтатистики.StandardAttribute.Active - - Edit - false - - - - InformationRegister.КомментарииСтатистики.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.КомментарииСтатистики.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.КомментарииСтатистики.StandardAttribute.Period - - Edit - false - - - - InformationRegister.ПраваРолей.Resource.Изменение - - Edit - false - - - - InformationRegister.ПраваРолей.Resource.ДобавлениеБезОграничения - - Edit - false - - InformationRegister.АдресныеОбъекты @@ -9517,13 +5802,6 @@ false - - InformationRegister.КомментарииОперацииСтатистики.Dimension.ИдентификаторОперации - - Edit - false - - Constant.ВыполнитьРезервноеКопированиеОбластиДанных @@ -9558,17 +5836,6 @@ false - - InformationRegister.ЗамерыВремениТехнологические.Attribute.ДатаЗаписиЛокальная - - View - false - - - Edit - false - - InformationRegister.ОперацииСтатистики @@ -9624,45 +5891,6 @@ false - - InformationRegister.ОперацииСтатистики.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ОперацииСтатистики.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ОперацииСтатистики.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ОперацииСтатистики.StandardAttribute.Period - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.WSURLВебСервиса - - View - false - - - Edit - false - - Catalog.ОчередьЗаданийОбластейДанных @@ -9729,13 +5957,6 @@ false - - InformationRegister.ПакетыДляОтправки.Attribute.ТелоПакета - - Edit - false - - InformationRegister.КомментарииОперацииСтатистики @@ -9791,63 +6012,6 @@ false - - InformationRegister.КомментарииОперацииСтатистики.StandardAttribute.Active - - Edit - false - - - - InformationRegister.КомментарииОперацииСтатистики.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.КомментарииОперацииСтатистики.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.КомментарииОперацииСтатистики.StandardAttribute.Period - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - Edit - false - - - - InformationRegister.ЗамерыВремениТехнологические.Attribute.ДатаЗаписи - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.WSИспользоватьПередачуБольшогоОбъемаДанных - - View - false - - - Edit - false - - InformationRegister.ПакетыДляОтправки @@ -9903,45 +6067,6 @@ false - - InformationRegister.ПакетыДляОтправки.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ПакетыДляОтправки.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ПакетыДляОтправки.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ПакетыДляОтправки.StandardAttribute.Period - - Edit - false - - - - Catalog.ПоставляемыеДанные.Attribute.ХранимыйФайл - - View - false - - - Edit - false - - Constant.ДетализироватьОбновлениеИБВЖурналеРегистрации @@ -9953,28 +6078,6 @@ false - - InformationRegister.ПоставляемыеДанныеТребующиеОбработки.Dimension.ИдентификаторФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - Catalog.ПрофилиГруппДоступа @@ -9998,13 +6101,6 @@ false - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - Edit - false - - Document.ЭлектронноеПисьмоВходящее @@ -10023,64 +6119,6 @@ false - - Catalog.ПредопределенныеВариантыОтчетов.TabularSection.Размещение.Attribute.Важный - - View - false - - - Edit - false - - - - InformationRegister.СообщенияОбменаДанными.Resource.ИмяФайлаСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.TabularSection.Производительность - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - Edit - false - - InformationRegister.РежимыПодключенияВнешнихМодулей @@ -10235,116 +6273,6 @@ false - - Catalog.СообщенияСистемы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.TabularSection.ХарактеристикиДанных.Attribute.Характеристика - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.TabularSection.Производительность.Attribute.ЦелевоеВремя - - View - false - - - Edit - false - - CommonCommand.ЗагрузитьКурсыВалют @@ -10427,138 +6355,6 @@ false - - Catalog.ПоставляемыеДанные.StandardAttribute.PredefinedDataName - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПоставляемыеДанные.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.НаименованияПараметровИОтборов - - View - false - - - Edit - false - - - - InformationRegister.ЗамерыВремени.Attribute.ДатаЗаписиЛокальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMВариантРаботыИнформационнойБазы - - View - false - - - Edit - false - - InformationRegister.БезопасноеХранилищеДанных @@ -10614,50 +6410,6 @@ false - - InformationRegister.БезопасноеХранилищеДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.БезопасноеХранилищеДанных.StandardAttribute.Period - - View - false - - - Edit - false - - SessionParameter.ОбластьДанныхЗначение @@ -10738,83 +6490,6 @@ false - - InformationRegister.УдалитьОчередьЗаданий.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.КлючевыеСлова - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.ДатаНачалаПоследнегоЗапуска - - View - false - - - Edit - false - - - - Catalog.ПредопределенныеВариантыОтчетов.Attribute.ГруппироватьПоОтчету - - View - false - - - Edit - false - - CommonForm.ПодключениеКонечнойТочки @@ -10837,15 +6512,4 @@ false - - InformationRegister.УдалитьОчередьЗаданий.Resource.Использование - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ПроверкаДоступныхОбновленийКонфигурации/Rights.rights b/SSL/src/Roles/ПроверкаДоступныхОбновленийКонфигурации/Rights.rights deleted file mode 100644 index 138d0356d..000000000 --- a/SSL/src/Roles/ПроверкаДоступныхОбновленийКонфигурации/Rights.rights +++ /dev/null @@ -1,17 +0,0 @@ - - - false - true - false - - DataProcessor.ПоискИУстановкаОбновлений - - Use - true - - - View - true - - - diff --git a/SSL/src/Roles/ПроверкаДоступныхОбновленийКонфигурации/ПроверкаДоступныхОбновленийКонфигурации.mdo b/SSL/src/Roles/ПроверкаДоступныхОбновленийКонфигурации/ПроверкаДоступныхОбновленийКонфигурации.mdo deleted file mode 100644 index f0cc73b3e..000000000 --- a/SSL/src/Roles/ПроверкаДоступныхОбновленийКонфигурации/ПроверкаДоступныхОбновленийКонфигурации.mdo +++ /dev/null @@ -1,8 +0,0 @@ - - - ПроверкаДоступныхОбновленийКонфигурации - - ru - Проверка доступных обновлений конфигурации - - diff --git a/SSL/src/Roles/ПросмотрОтчетаДосьеКонтрагента/Rights.rights b/SSL/src/Roles/ПросмотрОтчетаДосьеКонтрагента/Rights.rights new file mode 100644 index 000000000..01021ac51 --- /dev/null +++ b/SSL/src/Roles/ПросмотрОтчетаДосьеКонтрагента/Rights.rights @@ -0,0 +1,61 @@ + + + false + true + false + + Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации + + View + false + + + Edit + false + + + + Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации + + View + false + + + Edit + false + + + + Report.ДосьеКонтрагента + + Use + true + + + View + true + + + + Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель + + View + false + + + Edit + false + + + + Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя + + View + false + + + Edit + false + + + diff --git a/SSL/src/Roles/ИспользованиеДосьеКонтрагента/ИспользованиеДосьеКонтрагента.mdo b/SSL/src/Roles/ПросмотрОтчетаДосьеКонтрагента/ПросмотрОтчетаДосьеКонтрагента.mdo similarity index 55% rename from SSL/src/Roles/ИспользованиеДосьеКонтрагента/ИспользованиеДосьеКонтрагента.mdo rename to SSL/src/Roles/ПросмотрОтчетаДосьеКонтрагента/ПросмотрОтчетаДосьеКонтрагента.mdo index 4ee9b2e1e..5482ee2c1 100644 --- a/SSL/src/Roles/ИспользованиеДосьеКонтрагента/ИспользованиеДосьеКонтрагента.mdo +++ b/SSL/src/Roles/ПросмотрОтчетаДосьеКонтрагента/ПросмотрОтчетаДосьеКонтрагента.mdo @@ -1,8 +1,8 @@ - ИспользованиеДосьеКонтрагента + ПросмотрОтчетаДосьеКонтрагента ru - Использование "Досье контрагента" + Просмотр отчета "Досье контрагента" diff --git a/SSL/src/Roles/ИспользованиеСтруктурыПодчиненности/Rights.rights b/SSL/src/Roles/ПросмотрСвязанныеДокументы/Rights.rights similarity index 100% rename from SSL/src/Roles/ИспользованиеСтруктурыПодчиненности/Rights.rights rename to SSL/src/Roles/ПросмотрСвязанныеДокументы/Rights.rights diff --git a/SSL/src/Roles/ИспользованиеСтруктурыПодчиненности/ИспользованиеСтруктурыПодчиненности.mdo b/SSL/src/Roles/ПросмотрСвязанныеДокументы/ПросмотрСвязанныеДокументы.mdo similarity index 54% rename from SSL/src/Roles/ИспользованиеСтруктурыПодчиненности/ИспользованиеСтруктурыПодчиненности.mdo rename to SSL/src/Roles/ПросмотрСвязанныеДокументы/ПросмотрСвязанныеДокументы.mdo index f3a3785de..2059e3eb0 100644 --- a/SSL/src/Roles/ИспользованиеСтруктурыПодчиненности/ИспользованиеСтруктурыПодчиненности.mdo +++ b/SSL/src/Roles/ПросмотрСвязанныеДокументы/ПросмотрСвязанныеДокументы.mdo @@ -1,8 +1,8 @@ - ИспользованиеСтруктурыПодчиненности + ПросмотрСвязанныеДокументы ru - Использование структуры подчиненности + Просмотр связанные документы diff --git a/SSL/src/Roles/РаботаСПапкамиФайлов/Rights.rights b/SSL/src/Roles/РаботаСПапкамиФайлов/Rights.rights index 67e1e87af..0592334ea 100644 --- a/SSL/src/Roles/РаботаСПапкамиФайлов/Rights.rights +++ b/SSL/src/Roles/РаботаСПапкамиФайлов/Rights.rights @@ -3,270 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -278,237 +14,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - InformationRegister.ХранимыеФайлыВерсий @@ -526,1260 +31,6 @@ true - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1791,402 +42,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - CommonCommand.НастроитьПрава @@ -2194,1018 +49,6 @@ true - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Вступление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - Catalog.ВерсииФайлов.Command.ОткрытьВерсииФайла @@ -3213,1964 +56,6 @@ true - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - Catalog.Файлы.Command.РедактируемыеФайлы @@ -5178,215 +63,6 @@ true - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - CommonForm.НастройкиПравОбъектов @@ -5394,424 +70,6 @@ true - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - Catalog.Файлы.Command.Файлы @@ -5819,2668 +77,6 @@ true - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8492,655 +88,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - Catalog.ПапкиФайлов @@ -9192,765 +139,6 @@ true - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - CommonForm.НастройкаОсновногоРабочегоКаталога @@ -9958,1271 +146,6 @@ true - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - CommonCommand.ПрисоединенныеФайлы @@ -11230,259 +153,6 @@ true - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -11494,1557 +164,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - Catalog.ТомаХраненияФайлов @@ -13052,864 +171,6 @@ true - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - Catalog.Файлы @@ -13969,116 +230,6 @@ true - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - Catalog.ВерсииФайлов @@ -14123,1073 +274,6 @@ true - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - ПоЗначениям // ПоЗначениям(Таблица, -, Модификатор, В1,П1, В2,П2, ..., В(n), П(n)). @@ -15204,13 +288,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. // Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", // выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // П(n) - Поле проверяемого значения, кроме случая В(n) = "Условие" (или ""). // Примечение: максимальное количество одновременно проверяемых значений полей можно увеличить, изменив шаблон, но // необходимо будет указывать все параметры шаблона, т.е. указывать пустые строки, когда количество полей меньше максимального. @@ -15244,73 +330,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(4)" = "" И "#Параметр(5)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(4),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(4),")) И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(8)" = "" И "#Параметр(9)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(8),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(8),")) И ("#Параметр(10)" = "" И "#Параметр(11)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(10),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(10),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(14)" = "" И "#Параметр(15)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(14),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(14),")) И ("#Параметр(16)" = "" И "#Параметр(17)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(16),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(16),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(20)" = "" И "#Параметр(21)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(20),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(20),")) И ("#Параметр(22)" = "" И "#Параметр(23)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(22),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(22),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(26)" = "" И "#Параметр(27)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(26),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(26),")) И ("#Параметр(28)" = "" И "#Параметр(29)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(28),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(28),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(32)" = "" И "#Параметр(33)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(32),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(32),")) И ("#Параметр(34)" = "" И "#Параметр(35)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(34),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(34),")) - ) #Тогда + ) #Тогда Т ГДЕ // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -15355,7 +473,7 @@ ( // Поиск значений заданных полей в разрешенных значениях групп доступа (пользователей). //// Проверка значения поля группы параметров 1. -#Если "#Параметр(4)" = "Условие" Или "#Параметр(4)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(4)" = "Условие" Или "#Параметр(4)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(5) ) #ИначеЕсли "#Параметр(4)" = "ПравоЧтения" Или "#Параметр(4)" = "ПравоИзменения" #Тогда @@ -15371,6 +489,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(4)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(5) + #Если Не "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(4)" = "НастройкиПрав" #Тогда ( @@ -15459,7 +591,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(5) - #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" + И "#Параметр(4)" <> "Пользователи" + И "#Параметр(4)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(4)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(4)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -15514,7 +648,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(6)" = "" И "#Параметр(7)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -15530,6 +664,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда И ( @@ -15618,7 +766,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(7) - #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -15671,7 +821,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(8)" = "" И "#Параметр(9)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(8)" = "Условие" Или "#Параметр(8)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(8)" = "Условие" Или "#Параметр(8)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(9) ) #ИначеЕсли "#Параметр(8)" = "ПравоЧтения" Или "#Параметр(8)" = "ПравоИзменения" #Тогда @@ -15687,6 +837,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(8)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(9) + #Если Не "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(8)" = "НастройкиПрав" #Тогда И ( @@ -15775,7 +939,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(9) - #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" + И "#Параметр(8)" <> "Пользователи" + И "#Параметр(8)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(8)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(8)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -15828,7 +994,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(10)" = "" И "#Параметр(11)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(10)" = "Условие" Или "#Параметр(10)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(10)" = "Условие" Или "#Параметр(10)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(11) ) #ИначеЕсли "#Параметр(10)" = "ПравоЧтения" Или "#Параметр(10)" = "ПравоИзменения" #Тогда @@ -15844,6 +1010,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(10)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(11) + #Если Не "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(10)" = "НастройкиПрав" #Тогда И ( @@ -15932,7 +1112,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(11) - #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" + И "#Параметр(10)" <> "Пользователи" + И "#Параметр(10)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(10)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(10)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -15985,7 +1167,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -16001,6 +1183,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда И ( @@ -16089,7 +1285,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(13) - #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16142,7 +1340,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(14)" = "" И "#Параметр(15)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(14)" = "Условие" Или "#Параметр(14)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(14)" = "Условие" Или "#Параметр(14)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(15) ) #ИначеЕсли "#Параметр(14)" = "ПравоЧтения" Или "#Параметр(14)" = "ПравоИзменения" #Тогда @@ -16158,6 +1356,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(14)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(15) + #Если Не "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(14)" = "НастройкиПрав" #Тогда И ( @@ -16246,7 +1458,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(15) - #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" + И "#Параметр(14)" <> "Пользователи" + И "#Параметр(14)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(14)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(14)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16299,7 +1513,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(16)" = "" И "#Параметр(17)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(16)" = "Условие" Или "#Параметр(16)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(16)" = "Условие" Или "#Параметр(16)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(17) ) #ИначеЕсли "#Параметр(16)" = "ПравоЧтения" Или "#Параметр(16)" = "ПравоИзменения" #Тогда @@ -16315,6 +1529,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(16)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(17) + #Если Не "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(16)" = "НастройкиПрав" #Тогда И ( @@ -16403,7 +1631,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(17) - #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" + И "#Параметр(16)" <> "Пользователи" + И "#Параметр(16)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(16)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(16)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16456,7 +1686,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -16472,6 +1702,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда И ( @@ -16560,7 +1804,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(19) - #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16613,7 +1859,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(20)" = "" И "#Параметр(21)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(20)" = "Условие" Или "#Параметр(20)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(20)" = "Условие" Или "#Параметр(20)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(21) ) #ИначеЕсли "#Параметр(20)" = "ПравоЧтения" Или "#Параметр(20)" = "ПравоИзменения" #Тогда @@ -16629,6 +1875,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(20)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(21) + #Если Не "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(20)" = "НастройкиПрав" #Тогда И ( @@ -16717,7 +1977,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(21) - #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" + И "#Параметр(20)" <> "Пользователи" + И "#Параметр(20)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(20)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(20)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16770,7 +2032,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(22)" = "" И "#Параметр(23)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(22)" = "Условие" Или "#Параметр(22)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(22)" = "Условие" Или "#Параметр(22)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(23) ) #ИначеЕсли "#Параметр(22)" = "ПравоЧтения" Или "#Параметр(22)" = "ПравоИзменения" #Тогда @@ -16786,6 +2048,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(22)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(23) + #Если Не "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(22)" = "НастройкиПрав" #Тогда И ( @@ -16874,7 +2150,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(23) - #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" + И "#Параметр(22)" <> "Пользователи" + И "#Параметр(22)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(22)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(22)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16927,7 +2205,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -16943,6 +2221,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда И ( @@ -17031,7 +2323,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(25) - #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17084,7 +2378,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(26)" = "" И "#Параметр(27)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(26)" = "Условие" Или "#Параметр(26)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(26)" = "Условие" Или "#Параметр(26)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(27) ) #ИначеЕсли "#Параметр(26)" = "ПравоЧтения" Или "#Параметр(26)" = "ПравоИзменения" #Тогда @@ -17100,6 +2394,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(26)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(27) + #Если Не "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(26)" = "НастройкиПрав" #Тогда И ( @@ -17188,7 +2496,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(27) - #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" + И "#Параметр(26)" <> "Пользователи" + И "#Параметр(26)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(26)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(26)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17241,7 +2551,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(28)" = "" И "#Параметр(29)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(28)" = "Условие" Или "#Параметр(28)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(28)" = "Условие" Или "#Параметр(28)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(29) ) #ИначеЕсли "#Параметр(28)" = "ПравоЧтения" Или "#Параметр(28)" = "ПравоИзменения" #Тогда @@ -17257,6 +2567,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(28)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(29) + #Если Не "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(28)" = "НастройкиПрав" #Тогда И ( @@ -17345,7 +2669,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(29) - #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" + И "#Параметр(28)" <> "Пользователи" + И "#Параметр(28)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(28)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(28)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17398,7 +2724,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -17414,6 +2740,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда И ( @@ -17502,7 +2842,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(31) - #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17555,7 +2897,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(32)" = "" И "#Параметр(33)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(32)" = "Условие" Или "#Параметр(32)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(32)" = "Условие" Или "#Параметр(32)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(33) ) #ИначеЕсли "#Параметр(32)" = "ПравоЧтения" Или "#Параметр(32)" = "ПравоИзменения" #Тогда @@ -17571,6 +2913,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(32)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(33) + #Если Не "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(32)" = "НастройкиПрав" #Тогда И ( @@ -17659,7 +3015,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(33) - #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" + И "#Параметр(32)" <> "Пользователи" + И "#Параметр(32)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(32)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(32)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17712,7 +3070,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(34)" = "" И "#Параметр(35)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(34)" = "Условие" Или "#Параметр(34)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(34)" = "Условие" Или "#Параметр(34)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(35) ) #ИначеЕсли "#Параметр(34)" = "ПравоЧтения" Или "#Параметр(34)" = "ПравоИзменения" #Тогда @@ -17728,6 +3086,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(34)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(35) + #Если Не "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(34)" = "НастройкиПрав" #Тогда И ( @@ -17816,7 +3188,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(35) - #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" + И "#Параметр(34)" <> "Пользователи" + И "#Параметр(34)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(34)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(34)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17904,13 +3278,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Объект", "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Объект", "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), Тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. -// Когда В(n) = "ПравоЧтения" ИЛИ "ПравоИзменения", -// выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", +// выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // Когда В(n) = "Объект" (или " "), то // когда есть запись зависимости прав в регистре сведений ЗависимостиПравДоступа тогда // выполняется проверка права чтения Т.П(n) и наборов значений доступа @@ -17961,73 +3337,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(9)" = "" И "#Параметр(10)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(9),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(9),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(15)" = "" И "#Параметр(16)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(15),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(15),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(21)" = "" И "#Параметр(22)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(21),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(21),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(27)" = "" И "#Параметр(28)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(27),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(27),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(33)" = "" И "#Параметр(34)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(33),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(33),")) И ("#Параметр(36)" = "" И "#Параметр(37)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(36),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(36),")) И ("#Параметр(39)" = "" И "#Параметр(40)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(39),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(39),")) И ("#Параметр(42)" = "" И "#Параметр(43)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(42),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(42),")) И ("#Параметр(45)" = "" И "#Параметр(46)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(45),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(45),")) И ("#Параметр(48)" = "" И "#Параметр(49)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(48),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(48),")) И ("#Параметр(51)" = "" И "#Параметр(52)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(51),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(51),")) - ) #Тогда + ) #Тогда Т ИЗ Т // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -18079,7 +3487,7 @@ #Параметр(5) // [([(][(]...] 0-n открывающихся скобок. //// Проверка значения поля группы параметров 1. -#Если "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -18095,6 +3503,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(6)" = "Объект" Или "#Параметр(6)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -18126,6 +3546,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -18483,8 +3904,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда ( @@ -18573,7 +3997,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(7) - #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -18631,7 +4057,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(9)" = "" И "#Параметр(10)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(9)" = "Условие" Или "#Параметр(9)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(9)" = "Условие" Или "#Параметр(9)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(10) ) #ИначеЕсли "#Параметр(9)" = "ПравоЧтения" Или "#Параметр(9)" = "ПравоИзменения" #Тогда @@ -18647,6 +4073,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(9)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(10) + #Если Не "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(9)" = "Объект" Или "#Параметр(9)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -18678,6 +4116,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -19035,8 +4474,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(9)" = "НастройкиПрав" #Тогда ( @@ -19125,7 +4567,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(10) - #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" + И "#Параметр(9)" <> "Пользователи" + И "#Параметр(9)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(9)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(9)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -19183,7 +4627,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -19199,6 +4643,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(12)" = "Объект" Или "#Параметр(12)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -19230,6 +4686,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -19587,8 +5044,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда ( @@ -19677,7 +5137,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(13) - #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -19735,7 +5197,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(15)" = "" И "#Параметр(16)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(15)" = "Условие" Или "#Параметр(15)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(15)" = "Условие" Или "#Параметр(15)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(16) ) #ИначеЕсли "#Параметр(15)" = "ПравоЧтения" Или "#Параметр(15)" = "ПравоИзменения" #Тогда @@ -19751,6 +5213,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(15)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(16) + #Если Не "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(15)" = "Объект" Или "#Параметр(15)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -19782,6 +5256,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -20139,8 +5614,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(15)" = "НастройкиПрав" #Тогда ( @@ -20229,7 +5707,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(16) - #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" + И "#Параметр(15)" <> "Пользователи" + И "#Параметр(15)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(15)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(15)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -20287,7 +5767,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -20303,6 +5783,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(18)" = "Объект" Или "#Параметр(18)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -20334,6 +5826,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -20691,8 +6184,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда ( @@ -20781,7 +6277,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(19) - #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -20839,7 +6337,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(21)" = "" И "#Параметр(22)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(21)" = "Условие" Или "#Параметр(21)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(21)" = "Условие" Или "#Параметр(21)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(22) ) #ИначеЕсли "#Параметр(21)" = "ПравоЧтения" Или "#Параметр(21)" = "ПравоИзменения" #Тогда @@ -20855,6 +6353,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(21)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(22) + #Если Не "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(21)" = "Объект" Или "#Параметр(21)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -20886,6 +6396,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -21243,8 +6754,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(21)" = "НастройкиПрав" #Тогда ( @@ -21333,7 +6847,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(22) - #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" + И "#Параметр(21)" <> "Пользователи" + И "#Параметр(21)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(21)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(21)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -21391,7 +6907,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -21407,6 +6923,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(24)" = "Объект" Или "#Параметр(24)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -21438,6 +6966,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -21795,8 +7324,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда ( @@ -21885,7 +7417,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(25) - #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -21943,7 +7477,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(27)" = "" И "#Параметр(28)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(27)" = "Условие" Или "#Параметр(27)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(27)" = "Условие" Или "#Параметр(27)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(28) ) #ИначеЕсли "#Параметр(27)" = "ПравоЧтения" Или "#Параметр(27)" = "ПравоИзменения" #Тогда @@ -21959,6 +7493,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(27)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(28) + #Если Не "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(27)" = "Объект" Или "#Параметр(27)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -21990,6 +7536,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -22347,8 +7894,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(27)" = "НастройкиПрав" #Тогда ( @@ -22437,7 +7987,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(28) - #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" + И "#Параметр(27)" <> "Пользователи" + И "#Параметр(27)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(27)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(27)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -22495,7 +8047,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -22511,6 +8063,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(30)" = "Объект" Или "#Параметр(30)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -22542,6 +8106,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -22899,8 +8464,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда ( @@ -22989,7 +8557,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(31) - #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -23047,7 +8617,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(33)" = "" И "#Параметр(34)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(33)" = "Условие" Или "#Параметр(33)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(33)" = "Условие" Или "#Параметр(33)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(34) ) #ИначеЕсли "#Параметр(33)" = "ПравоЧтения" Или "#Параметр(33)" = "ПравоИзменения" #Тогда @@ -23063,6 +8633,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(33)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(34) + #Если Не "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(33)" = "Объект" Или "#Параметр(33)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -23094,6 +8676,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -23451,8 +9034,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(33)" = "НастройкиПрав" #Тогда ( @@ -23541,7 +9127,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(34) - #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" + И "#Параметр(33)" <> "Пользователи" + И "#Параметр(33)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(33)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(33)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -23599,7 +9187,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(36)" = "" И "#Параметр(37)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(36)" = "Условие" Или "#Параметр(36)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(36)" = "Условие" Или "#Параметр(36)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(37) ) #ИначеЕсли "#Параметр(36)" = "ПравоЧтения" Или "#Параметр(36)" = "ПравоИзменения" #Тогда @@ -23615,6 +9203,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(36)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(37) + #Если Не "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(36)" = "Объект" Или "#Параметр(36)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -23646,6 +9246,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -24003,8 +9604,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(36)" = "НастройкиПрав" #Тогда ( @@ -24093,7 +9697,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(37) - #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" + И "#Параметр(36)" <> "Пользователи" + И "#Параметр(36)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(36)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(36)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -24151,7 +9757,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(39)" = "" И "#Параметр(40)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(39)" = "Условие" Или "#Параметр(39)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(39)" = "Условие" Или "#Параметр(39)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(40) ) #ИначеЕсли "#Параметр(39)" = "ПравоЧтения" Или "#Параметр(39)" = "ПравоИзменения" #Тогда @@ -24167,6 +9773,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(39)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(40) + #Если Не "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(39)" = "Объект" Или "#Параметр(39)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -24198,6 +9816,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -24555,8 +10174,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(39)" = "НастройкиПрав" #Тогда ( @@ -24645,7 +10267,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(40) - #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" + И "#Параметр(39)" <> "Пользователи" + И "#Параметр(39)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(39)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(39)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -24703,7 +10327,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(42)" = "" И "#Параметр(43)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(42)" = "Условие" Или "#Параметр(42)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(42)" = "Условие" Или "#Параметр(42)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(43) ) #ИначеЕсли "#Параметр(42)" = "ПравоЧтения" Или "#Параметр(42)" = "ПравоИзменения" #Тогда @@ -24719,6 +10343,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(42)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(43) + #Если Не "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(42)" = "Объект" Или "#Параметр(42)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -24750,6 +10386,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -25107,8 +10744,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(42)" = "НастройкиПрав" #Тогда ( @@ -25197,7 +10837,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(43) - #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" + И "#Параметр(42)" <> "Пользователи" + И "#Параметр(42)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(42)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(42)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -25255,7 +10897,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(45)" = "" И "#Параметр(46)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(45)" = "Условие" Или "#Параметр(45)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(45)" = "Условие" Или "#Параметр(45)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(46) ) #ИначеЕсли "#Параметр(45)" = "ПравоЧтения" Или "#Параметр(45)" = "ПравоИзменения" #Тогда @@ -25271,6 +10913,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(45)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(46) + #Если Не "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(45)" = "Объект" Или "#Параметр(45)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -25302,6 +10956,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -25659,8 +11314,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(45)" = "НастройкиПрав" #Тогда ( @@ -25749,7 +11407,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(46) - #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" + И "#Параметр(45)" <> "Пользователи" + И "#Параметр(45)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(45)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(45)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -25807,7 +11467,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(48)" = "" И "#Параметр(49)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(48)" = "Условие" Или "#Параметр(48)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(48)" = "Условие" Или "#Параметр(48)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(49) ) #ИначеЕсли "#Параметр(48)" = "ПравоЧтения" Или "#Параметр(48)" = "ПравоИзменения" #Тогда @@ -25823,6 +11483,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(48)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(49) + #Если Не "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(48)" = "Объект" Или "#Параметр(48)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -25854,6 +11526,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -26211,8 +11884,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(48)" = "НастройкиПрав" #Тогда ( @@ -26301,7 +11977,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(49) - #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" + И "#Параметр(48)" <> "Пользователи" + И "#Параметр(48)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(48)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(48)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -26359,7 +12037,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(51)" = "" И "#Параметр(52)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(51)" = "Условие" Или "#Параметр(51)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(51)" = "Условие" Или "#Параметр(51)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(52) ) #ИначеЕсли "#Параметр(51)" = "ПравоЧтения" Или "#Параметр(51)" = "ПравоИзменения" #Тогда @@ -26375,6 +12053,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(51)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(52) + #Если Не "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(51)" = "Объект" Или "#Параметр(51)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -26406,6 +12096,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -26763,8 +12454,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(51)" = "НастройкиПрав" #Тогда ( @@ -26853,7 +12547,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(52) - #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" + И "#Параметр(51)" <> "Пользователи" + И "#Параметр(51)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(51)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(51)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" diff --git a/SSL/src/Roles/РедактированиеРеквизитовОбъектов/Rights.rights b/SSL/src/Roles/РедактированиеРеквизитовОбъектов/Rights.rights index 812afd2e7..03bb3f8dd 100644 --- a/SSL/src/Roles/РедактированиеРеквизитовОбъектов/Rights.rights +++ b/SSL/src/Roles/РедактированиеРеквизитовОбъектов/Rights.rights @@ -3,281 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -289,1535 +14,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1829,7024 +25,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Вступление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8858,3141 +36,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -12004,3898 +47,4 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/УдаленныйДоступОбменСообщениями/Rights.rights b/SSL/src/Roles/УдаленныйДоступОбменСообщениями/Rights.rights index d37f998cd..b13c97632 100644 --- a/SSL/src/Roles/УдаленныйДоступОбменСообщениями/Rights.rights +++ b/SSL/src/Roles/УдаленныйДоступОбменСообщениями/Rights.rights @@ -3,380 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодПредопределенногоУзла - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ФорматПодписиДляНовыхСообщений - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.Dimension.КаналСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.COMПарольПользователя - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.Attribute.КоррСчет - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -388,1909 +14,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ФорматПодписиПриОтветеПересылке - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.Подготовлена - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.СостояниеЗадания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.НомерПопытки - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.ФорматыОтчетов.Attribute.Отчет - - View - false - - - Edit - false - - - - InformationRegister.ХранимыеФайлыВерсий.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ХранимыеФайлыВерсий.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ХранимыеФайлыВерсий.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ХранимыеФайлыВерсий.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.Автор - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СодержаниеПредмета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УведомитьОДоставке - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыПриемника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.Удалить_АктивныеПредметыВзаимодействий.Dimension.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПодпискиПолучателей.Dimension.КаналСообщений - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.ReceivedNo - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.SentNo - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.Ref - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.Description - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.Attribute.ПомещатьВПапку - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.COMАутентификацияОперационнойСистемы - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.Attribute.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMАутентификацияОперационнойСистемы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Resource.СрокНапоминания - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.ФорматыОтчетов.Attribute.Формат - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.COMКаталогИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ИспользоватьЭлектроннуюПочту - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.ИнтервалВремениНапоминания - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.Resource.ДатаПрочтения - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.FTPПорт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.УдалитьFTPПароль - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - WebService.MessageExchange_2_0_1_6.Operation.ConnectEndPoint @@ -2298,193 +21,6 @@ true - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьCOMПарольПользователя - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -2496,171 +32,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - InformationRegister.ПодпискиПолучателей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПодпискиПолучателей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПодпискиПолучателей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПодпискиПолучателей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ФайлХранилище - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - WebService.MessageExchange_2_0_1_6.Operation.SetLeadingEndPoint @@ -2668,578 +39,6 @@ true - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.КоличествоПопытокОбработкиСообщения - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.Attribute.КомпоновщикНастроек - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.Attribute.Телефоны - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаМодификацииФайла - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.Dimension.Получатель - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.Получатель - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПодписьДляНовыхСообщенийПростойТекст - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - WebService.MessageExchange_2_0_1_6.Operation.TestConnectionRecipient @@ -3247,820 +46,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПодписьДляНовыхСообщенийФорматированныйДокумент - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПомещатьПисьмоВПапкуПисьмаОснования - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьWSПароль - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.Resource.СОшибками - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ТипПолучателейРассылки - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.Dimension.Письмо - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Вступление - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.ИмяРеквизитаИсточника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - WebService.MessageExchange.Operation.TestConnectionRecipient @@ -4068,1425 +53,6 @@ true - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.Resource.СообщениеБлокировки - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - ExchangePlan.ОбменСообщениями.Attribute.Ведущая - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ФайлХранилище - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ВключатьТелоИсходногоПисьма - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ФайлХранилище - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ИспользоватьСетевойКаталог - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Заметки.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.FTPПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.Resource.ВидДня - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.Архивировать - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.ТелоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - WebService.MessageExchange_2_0_1_6.Operation.UpdateConnectionSettings @@ -5494,1150 +60,6 @@ true - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.FTPСервер - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.Attribute.Город - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.Resource.КонецБлокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.Календари.Attribute.УдалитьВидКалендаря - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.Получатели - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.Получатели.Attribute.Исключен - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.TabularSection.Производительность.Attribute.КлючеваяОперация - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УдалятьПослеОтправки - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаCOM - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.FTPЛогин - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Dimension.УчетнаяЗаписьЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Dimension.Источник - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMИмяСервера1СПредприятия - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.ДатаИзменения - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.Получатели.Attribute.Получатель - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ВнешняяРоль - - View - false - - - Edit - false - - WebService.MessageExchange_2_0_1_6.Operation.DeliverMessages @@ -6645,17 +67,6 @@ true - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - WebService.MessageExchange.Operation.TestConnectionSender @@ -6663,2085 +74,6 @@ true - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.WSПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Dimension.КлючеваяОперация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ОтветственныйЗаВедениеПапок - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.ЗапланированныйМоментЗапуска - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ЗапретитьРаботуРегламентныхЗаданий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.Параметры - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.Dimension.Дата - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.СкрытыеКопии - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.WSИмяПользователя - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.WSURLВебСервиса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиОтправителя.StandardAttribute.Period - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.АвторСтрокой - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.ДляРабочегоСтола - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.Attribute.ПредставлениеОтбора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыПриемникаУстановлен - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВзаимодействиеОснование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.ЗначениеПустойСсылки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.ВзаимодействиеОснование - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.БезДанных - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.УдалитьПарольАрхива - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.Attribute.Шаг - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - WebService.MessageExchange_2_0_1_6.Operation.GetIBParameters @@ -8749,897 +81,6 @@ true - - Document.ЭлектронноеПисьмоВходящее.Attribute.УведомитьОДоставке - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ТекстПисьмаВФорматеHTML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.Resource.ТребуетсяОтправка - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMКаталогИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтображатьТелоИсходногоПисьма - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ВключатьПодписьПриОтветеПересылке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ИспользоватьВременныйКаталогДляОтправкиИПриемаСообщений - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.ИсполняющееФоновоеЗадание - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ЗадачаИсточник - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ИмяАрхива - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ИспользоватьFTPРесурс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.Resource.Предмет - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ВзаимодействиеОснование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.TabularSection.Производительность.Attribute.Приоритет - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.FTPКаталог - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.Заблокировано - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаЗаема - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ИспользоватьВременныйКаталогДляОтправкиИПриемаСообщений - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.Resource.ПапкаЭлектронногоПисьма - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ИспользоватьВременныйКаталогДляОтправкиИПриемаСообщений - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - WebService.MessageExchange_2_0_1_6.Operation.TestConnectionSender @@ -9647,1755 +88,6 @@ true - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.COMИмяПользователя - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПроизводственныеКалендари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.Attribute.Адрес - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - InformationRegister.Удалить_АктивныеПредметыВзаимодействий.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.Удалить_АктивныеПредметыВзаимодействий.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.Удалить_АктивныеПредметыВзаимодействий.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.Удалить_АктивныеПредметыВзаимодействий.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.ПорядокКоллекции - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.РегламентноеЗадание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.ПодробноеПредставлениеОшибки - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПредметыПапкиВзаимодействий.Dimension.Взаимодействие - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.Dimension.ОбластьДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.Resource.ПоследнийЗапуск - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПодписьПриОтветеПересылкеФорматированныйДокумент - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ВыполнятьПоРасписанию - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.Отчеты.Attribute.ОтправлятьЕслиПустой - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.СпособУстановкиВремениНапоминания - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.Отчеты.Attribute.Отчет - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.Resource.Эксклюзивная - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -11407,1777 +99,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗакладкиВзаимодействий.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.КраткоеПредставление - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.Календари.Attribute.ПроизводственныйКалендарь - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.ЭтоБыстроеСообщение - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УведомленияОПрочтении.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.Отчеты.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.Папка - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.УдалитьРегламентноеЗадание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.КоличествоЭлементовВТранзакцииЗагрузкиДанных - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.СетевойКаталогWindows - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.Имя - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ПисьмоВФорматеHTML - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ВнешнееЗадание - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Dimension.УникальныйИдентификатор - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.АдресаУведомленияОПрочтении.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.ЭксклюзивноеВыполнение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Resource.ВремяВыполнения - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.Attribute.МинимальноДопустимыйУровень - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.ПолноеИмя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВерсияФорматаФайлаНастроекОбменаДанными - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УведомитьОПрочтении - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.Отчеты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Dimension.ОбластьДанных - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - WebService.MessageExchange.Operation.UpdateConnectionSettings @@ -13185,1634 +106,6 @@ true - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииФайла - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.КлючОбъектаМетаданных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.Пометка - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.TabularSection.ФорматыОтчетов - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПодписьПриОтветеПересылкеПростойТекст - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.Attribute.ЦелевоеВремя - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ХранимыеФайлыВерсий.Dimension.ВерсияФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.КлючевыеОперации.Attribute.Приоритет - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.ПолеИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.Расписание - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.КоличествоЭлементовВТранзакцииВыгрузкиДанных - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Attribute.ПредставлениеИсточника - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - Catalog.ПапкиЭлектронныхПисем.Attribute.ПредопределеннаяПапка - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.COMВариантРаботыИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.Недействителен - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ПерсональнаяУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.Личная - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - WebService.MessageExchange.Operation.DeliverMessages @@ -14820,809 +113,6 @@ true - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - InformationRegister.ПодпискиПолучателей.Dimension.Получатель - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ТолькоУведомить - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMИмяПользователя - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ТекстПисьма - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.КлассификаторБанковРФ.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ТемаПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.StandardAttribute.Period - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.Недействителен - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.УдалитьЗамерыВремени.Dimension.ДатаЗамера - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УведомитьОПрочтении - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.Ключ - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.АдресаУведомленияОПрочтении - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.Attribute.КомпоновщикНастроек - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ВидПочтовогоАдресаПолучателей - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.Персонализирована - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -15634,149 +124,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.Attribute.Диаграмма - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.АвторСтрокой - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - WebService.MessageExchange.Operation.GetIBParameters @@ -15784,127 +131,6 @@ true - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.Dimension.Год - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - WebService.MessageExchange.Operation.ConnectEndPoint @@ -15912,2778 +138,6 @@ true - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Dimension.ВремяСобытия - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.ТекстСодержания - - View - false - - - Edit - false - - - - InformationRegister.НапоминанияПользователя.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаСтандартногоОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.Синоним - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.ВзаимодействиеОснование - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.АдресаУведомленияОПрочтении.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.АдресаУведомленияОПрочтении.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеПроизводственногоКалендаря.Dimension.ПроизводственныйКалендарь - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.КартинкиПисьмаВФорматеHTML - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.COMИмяИнформационнойБазыНаСервере1СПредприятия - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ФайлХранилище - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.ВключатьПодписьДляНовыхСообщений - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.WSИмяПользователя - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИДФайлаЭлектронногоПисьма - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПравилаОбработкиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ФайлХранилище - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.Attribute.Отправитель - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.Dimension.Рассылка - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяСервиса - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - InformationRegister.УдалитьБлокировкиСеансовОбластиДанных.Resource.НачалоБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMИмяИнформационнойБазыНаСервере1СПредприятия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИДФайлаЭлектронногоПисьма - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ВзаимодействиеОснование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.ИмяМетода - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ИдентификаторыОбъектовМетаданных.Attribute.ПолныйСиноним - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - WebService.MessageExchange.Operation.SetLeadingEndPoint @@ -18691,952 +145,6 @@ true - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеНастроек - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.Заметки.Attribute.ПредставлениеПредмета - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.УзелОбмена - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.WSURLВебСервиса - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.COMИмяСервера1СПредприятия - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.АдресОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.НачальнаяВыгрузкаДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.СостоянияРассылокОтчетов.Resource.Выполнена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты.Resource.УдалятьПисьмаПослеОтправки - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - WebService.MessageExchange_2_0_1_6.Operation.Ping @@ -19644,719 +152,4 @@ true - - Catalog.РассылкиОтчетов.Attribute.ИспользоватьПапку - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.TabularSection.Производительность - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СообщенияСистемы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - DataProcessor.ОценкаПроизводительности.TabularSection.Производительность.Attribute.ЦелевоеВремя - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.COMВариантРаботыИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.ПериодичностьРасписания - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.ХранимыеФайлыВерсий.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.ДатаНачалаПоследнегоЗапуска - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - Catalog.РассылкиОтчетов.Attribute.СетевойКаталогLinux - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - InformationRegister.УдалитьОчередьЗаданий.Resource.Использование - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ЧтениеВариантовОтчетов/Rights.rights b/SSL/src/Roles/ЧтениеВариантовОтчетов/Rights.rights new file mode 100644 index 000000000..46d0d0c4a --- /dev/null +++ b/SSL/src/Roles/ЧтениеВариантовОтчетов/Rights.rights @@ -0,0 +1,61 @@ + + + false + true + false + + Catalog.ВариантыОтчетов + + Read + true + + + View + true + + + InputByString + true + + + + Catalog.ВариантыОтчетов.Command.Открыть + + View + true + + + + Catalog.ПользовательскиеНастройкиОтчетов + + Read + true + + + View + true + + + InputByString + true + + + + CommonForm.ОтправкаТабличныхДокументовПоПочте + + View + true + + + + InformationRegister.НастройкиВариантовОтчетов + + Read + true + + + View + true + + + diff --git a/SSL/src/Roles/ЧтениеВариантовОтчетов/ЧтениеВариантовОтчетов.mdo b/SSL/src/Roles/ЧтениеВариантовОтчетов/ЧтениеВариантовОтчетов.mdo new file mode 100644 index 000000000..ebff31a1b --- /dev/null +++ b/SSL/src/Roles/ЧтениеВариантовОтчетов/ЧтениеВариантовОтчетов.mdo @@ -0,0 +1,8 @@ + + + ЧтениеВариантовОтчетов + + ru + Чтение вариантов отчетов + + diff --git a/SSL/src/Roles/ЧтениеВерсийОбъектов/Rights.rights b/SSL/src/Roles/ЧтениеВерсийОбъектов/Rights.rights index 3d182620e..a43a113ca 100644 --- a/SSL/src/Roles/ЧтениеВерсийОбъектов/Rights.rights +++ b/SSL/src/Roles/ЧтениеВерсийОбъектов/Rights.rights @@ -3,61 +3,6 @@ false true false - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - CommonCommand.ИсторияИзменений @@ -65,158 +10,4 @@ true - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ВерсияПроигнорирована - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ТипВерсииОбъекта - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ЧтениеГрафиковРаботы/Rights.rights b/SSL/src/Roles/ЧтениеГрафиковРаботы/Rights.rights index f294656cb..530f2fc48 100644 --- a/SSL/src/Roles/ЧтениеГрафиковРаботы/Rights.rights +++ b/SSL/src/Roles/ЧтениеГрафиковРаботы/Rights.rights @@ -14,41 +14,6 @@ true - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - Edit - false - - Catalog.Календари @@ -64,20 +29,6 @@ true - - InformationRegister.КалендарныеГрафики.Dimension.Год - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - Edit - false - - InformationRegister.РучныеИзмененияГрафиковРаботы @@ -89,18 +40,4 @@ true - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - Edit - false - - diff --git a/SSL/src/Roles/ЧтениеДополнительныхОтчетовИОбработок/Rights.rights b/SSL/src/Roles/ЧтениеДополнительныхОтчетовИОбработок/Rights.rights new file mode 100644 index 000000000..eb921f476 --- /dev/null +++ b/SSL/src/Roles/ЧтениеДополнительныхОтчетовИОбработок/Rights.rights @@ -0,0 +1,3098 @@ + + + false + true + false + + Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации + + View + false + + + Edit + false + + + + Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации + + View + false + + + Edit + false + + + + InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам + + Read + true + + + View + true + + + + CommonCommand.СозданиеСвязанныхОбъектов + + View + true + + + + InformationRegister.НазначениеДополнительныхОбработок + + Read + true + + + View + true + + + + Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель + + View + false + + + Edit + false + + + + Catalog.ДополнительныеОтчетыИОбработки + + Read + true + + #ПоЗначениям( "Справочник.ДополнительныеОтчетыИОбработки", "", "", +"ДополнительныеОтчетыИОбработки", "Ссылка", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","", "","") + + + + View + true + + + InputByString + true + + + + Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя + + View + false + + + Edit + false + + + + CommonCommand.ОтчетыОбъекта + + View + true + + + + CommonForm.ДополнительныеОтчетыИОбработки + + View + true + + + + CommonForm.НастройкаМоихОтчетовИОбработок + + View + true + + + + CommonCommand.ЗаполнениеОбъекта + + View + true + + + + ПоЗначениям + // ПоЗначениям(Таблица, -, Модификатор, В1,П1, В2,П2, ..., В(n), П(n)). +// № параметра: 1, 2, 3, 4, 5, 6, 7, ..., 2+n*2,3+n*2. +// Читается так: "ограничение доступа по значениям". +// Параметры: +// Таблица - Имя текущей таблицы, например "Документ.ПоступлениеТоваровИУслуг". +// Модификатор - изменяет шаблон. +// 1-й модификатор - строка "НеОграничиватьДоступКГруппам" указывает +// безусловно выбирать группы иерархического справочника. +// Других модификаторов в этой версии шаблона не предусмотрено. +// В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения +// производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", +// чем использовать несколько блоков параметров, с одним и тем же именем поля. +// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. +// Когда В(n) = "Условие" (или ""), тогда П(n) содержит строку условия на языке запросов, например +// "Т.Автор = &АвторизованныйПользователь", +// "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. +// Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", +// выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). +// П(n) - Поле проверяемого значения, кроме случая В(n) = "Условие" (или ""). +// Примечение: максимальное количество одновременно проверяемых значений полей можно увеличить, изменив шаблон, но +// необходимо будет указывать все параметры шаблона, т.е. указывать пустые строки, когда количество полей меньше максимального. +// Шаблон имеет структуру: +// <Общая часть условий> <Условие по группе параметров 1> И <Условие по группе параметров 2> И ... <Условие по группе параметров(n)> +// Пример: +// ПоЗначениям("Документ.ПоступлениеТоваровИУслуг", "", "", +// "Организации","Организация", +// "Поставщики","Контрагент", "","", ...) + +// Проверка правильности параметра Право. +#Если Не ("#Параметр(2)" = "Чтение" Или "#Параметр(2)" = "Добавление" Или + "#Параметр(2)" = "Изменение" Или "#Параметр(2)" = "Удаление" Или "#Параметр(2)" = "") + Или #ИмяТекущегоПраваДоступа <> "Чтение" И "#Параметр(2)" = "Чтение" + Или #ИмяТекущегоПраваДоступа = "Чтение" И "#Параметр(2)" <> "Чтение" И "#Параметр(2)" <> "" #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверноеПраво: #Параметр(2) +#КонецЕсли + +// Проверка правильности параметра ИмяТаблицы. +#Если "#Параметр(1)" <> #ИмяТекущейТаблицы #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверноеИмяТекущейТаблицы: "#Параметр(1)" +#КонецЕсли + +// Проверка правильности параметра Модификатор. +#Если Не ("#Параметр(3)" = "НеОграничиватьДоступКГруппам" Или "#Параметр(3)" = "") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйМодификатор: #Параметр(3) +#КонецЕсли + +// Общая проверка использования ограничений доступа на уровне записей и +// проверка использования хотя бы одного ограничения из указанных видов доступа. +#Если Не + ( Истина + И ("#Параметр(4)" = "" И "#Параметр(5)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(4),")) + И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) + И ("#Параметр(8)" = "" И "#Параметр(9)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(8),")) + И ("#Параметр(10)" = "" И "#Параметр(11)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(10),")) + И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) + И ("#Параметр(14)" = "" И "#Параметр(15)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(14),")) + И ("#Параметр(16)" = "" И "#Параметр(17)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(16),")) + И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) + И ("#Параметр(20)" = "" И "#Параметр(21)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(20),")) + И ("#Параметр(22)" = "" И "#Параметр(23)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(22),")) + И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) + И ("#Параметр(26)" = "" И "#Параметр(27)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(26),")) + И ("#Параметр(28)" = "" И "#Параметр(29)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(28),")) + И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) + И ("#Параметр(32)" = "" И "#Параметр(33)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(32),")) + И ("#Параметр(34)" = "" И "#Параметр(35)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") + Или &ВидыДоступаСОтключеннымИспользованием = "Все" + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") + Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(34),")) + ) #Тогда + +Т ГДЕ // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). + +// Безусловная выборка групп в иерархическом объекте метаданных (если нужно). +#Если "#Параметр(3)" = "НеОграничиватьДоступКГруппам" #Тогда + Т.ЭтоГруппа ИЛИ +#КонецЕсли + +ИСТИНА В +( // Проверка права пользователя на текущую таблицу в целом. + // Права на таблицы формируются по составу ролей профиля группы доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ + Справочник.ИдентификаторыОбъектовМетаданных КАК СвойстваТекущейТаблицы + ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ГруппыДоступа КАК ГруппыДоступа + ПО + СвойстваТекущейТаблицы.ПолноеИмя = "#Параметр(1)" + И ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ + РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступа + ГДЕ + ТаблицыГруппДоступа.Таблица = СвойстваТекущейТаблицы.Ссылка + И ТаблицыГруппДоступа.ГруппаДоступа = ГруппыДоступа.Ссылка + #Если Не #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И ТаблицыГруппДоступа.Изменение + #КонецЕсли + ) + И ГруппыДоступа.Ссылка В + ( + ВЫБРАТЬ + ГруппыДоступаПользователи.Ссылка КАК ГруппаДоступа + ИЗ + Справочник.ГруппыДоступа.Пользователи КАК ГруппыДоступаПользователи + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = ГруппыДоступаПользователи.Пользователь + ) + ГДЕ + ( // Поиск значений заданных полей в разрешенных значениях групп доступа (пользователей). + +//// Проверка значения поля группы параметров 1. +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(4)" = "Условие" Или "#Параметр(4)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + ( #Параметр(5) ) +#ИначеЕсли "#Параметр(4)" = "ПравоЧтения" Или "#Параметр(4)" = "ПравоИзменения" #Тогда + Т.#Параметр(5) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(5)) + #Если Не "#Параметр(4)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(4)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(5) + #Если Не "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. +#ИначеЕсли "#Параметр(4)" = "НастройкиПрав" #Тогда + + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(5) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(5) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(4),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(4)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(4)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(4)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(4),") #Тогда + + ( + ЕСТЬNULL(Т.#Параметр(5), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(4),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(4),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(5) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(4),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(5) + #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" + И "#Параметр(4)" <> "Пользователи" + И "#Параметр(4)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(4)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(4)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(4),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(5) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(5) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(5)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#Иначе + ИСТИНА +#КонецЕсли + +//// Проверка значения поля группы параметров 2. +#Если "#Параметр(6)" = "" И "#Параметр(7)" = "" #Тогда + // Группа параметров не используется. +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + И ( #Параметр(7) ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда + И Т.#Параметр(7) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(7)) + #Если Не "#Параметр(6)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. +#ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда + И + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(7) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(7) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(6),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(6)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(6)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(6)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),") #Тогда + И + ( + ЕСТЬNULL(Т.#Параметр(7), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(6),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(6),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(7) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(6),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(7) + #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(6)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(6),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(7) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(7) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(7)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#КонецЕсли + +//// Проверка значения поля группы параметров 3. +#Если "#Параметр(8)" = "" И "#Параметр(9)" = "" #Тогда + // Группа параметров не используется. +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(8)" = "Условие" Или "#Параметр(8)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + И ( #Параметр(9) ) +#ИначеЕсли "#Параметр(8)" = "ПравоЧтения" Или "#Параметр(8)" = "ПравоИзменения" #Тогда + И Т.#Параметр(9) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(9)) + #Если Не "#Параметр(8)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(8)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(9) + #Если Не "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. +#ИначеЕсли "#Параметр(8)" = "НастройкиПрав" #Тогда + И + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(9) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(9) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(8),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(8)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(8)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(8)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(8),") #Тогда + И + ( + ЕСТЬNULL(Т.#Параметр(9), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(8),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(8),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(9) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(8),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(9) + #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" + И "#Параметр(8)" <> "Пользователи" + И "#Параметр(8)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(8)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(8)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(8),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(9) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(9) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(9)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#КонецЕсли + +//// Проверка значения поля группы параметров 4. +#Если "#Параметр(10)" = "" И "#Параметр(11)" = "" #Тогда + // Группа параметров не используется. +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(10)" = "Условие" Или "#Параметр(10)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + И ( #Параметр(11) ) +#ИначеЕсли "#Параметр(10)" = "ПравоЧтения" Или "#Параметр(10)" = "ПравоИзменения" #Тогда + И Т.#Параметр(11) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(11)) + #Если Не "#Параметр(10)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(10)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(11) + #Если Не "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. +#ИначеЕсли "#Параметр(10)" = "НастройкиПрав" #Тогда + И + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(11) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(11) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(10),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(10)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(10)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(10)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(10),") #Тогда + И + ( + ЕСТЬNULL(Т.#Параметр(11), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(10),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(10),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(11) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(10),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(11) + #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" + И "#Параметр(10)" <> "Пользователи" + И "#Параметр(10)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(10)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(10)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(10),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(11) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(11) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(11)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#КонецЕсли + +//// Проверка значения поля группы параметров 5. +#Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда + // Группа параметров не используется. +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + И ( #Параметр(13) ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда + И Т.#Параметр(13) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(13)) + #Если Не "#Параметр(12)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. +#ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда + И + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(13) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(13) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(12),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(12)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(12)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(12)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),") #Тогда + И + ( + ЕСТЬNULL(Т.#Параметр(13), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(12),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(12),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(13) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(12),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(13) + #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(12)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(12),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(13) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(13) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(13)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#КонецЕсли + +//// Проверка значения поля группы параметров 6. +#Если "#Параметр(14)" = "" И "#Параметр(15)" = "" #Тогда + // Группа параметров не используется. +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(14)" = "Условие" Или "#Параметр(14)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + И ( #Параметр(15) ) +#ИначеЕсли "#Параметр(14)" = "ПравоЧтения" Или "#Параметр(14)" = "ПравоИзменения" #Тогда + И Т.#Параметр(15) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(15)) + #Если Не "#Параметр(14)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(14)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(15) + #Если Не "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. +#ИначеЕсли "#Параметр(14)" = "НастройкиПрав" #Тогда + И + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(15) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(15) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(14),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(14)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(14)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(14)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(14),") #Тогда + И + ( + ЕСТЬNULL(Т.#Параметр(15), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(14),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(14),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(15) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(14),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(15) + #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" + И "#Параметр(14)" <> "Пользователи" + И "#Параметр(14)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(14)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(14)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(14),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(15) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(15) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(15)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#КонецЕсли + +//// Проверка значения поля группы параметров 7. +#Если "#Параметр(16)" = "" И "#Параметр(17)" = "" #Тогда + // Группа параметров не используется. +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(16)" = "Условие" Или "#Параметр(16)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + И ( #Параметр(17) ) +#ИначеЕсли "#Параметр(16)" = "ПравоЧтения" Или "#Параметр(16)" = "ПравоИзменения" #Тогда + И Т.#Параметр(17) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(17)) + #Если Не "#Параметр(16)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(16)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(17) + #Если Не "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. +#ИначеЕсли "#Параметр(16)" = "НастройкиПрав" #Тогда + И + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(17) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(17) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(16),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(16)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(16)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(16)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(16),") #Тогда + И + ( + ЕСТЬNULL(Т.#Параметр(17), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(16),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(16),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(17) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(16),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(17) + #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" + И "#Параметр(16)" <> "Пользователи" + И "#Параметр(16)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(16)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(16)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(16),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(17) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(17) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(17)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#КонецЕсли + +//// Проверка значения поля группы параметров 8. +#Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда + // Группа параметров не используется. +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + И ( #Параметр(19) ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда + И Т.#Параметр(19) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(19)) + #Если Не "#Параметр(18)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. +#ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда + И + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(19) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(19) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(18),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(18)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(18)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(18)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),") #Тогда + И + ( + ЕСТЬNULL(Т.#Параметр(19), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(18),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(18),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(19) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(18),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(19) + #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(18)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(18),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(19) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(19) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(19)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#КонецЕсли + +//// Проверка значения поля группы параметров 9. +#Если "#Параметр(20)" = "" И "#Параметр(21)" = "" #Тогда + // Группа параметров не используется. +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(20)" = "Условие" Или "#Параметр(20)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + И ( #Параметр(21) ) +#ИначеЕсли "#Параметр(20)" = "ПравоЧтения" Или "#Параметр(20)" = "ПравоИзменения" #Тогда + И Т.#Параметр(21) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(21)) + #Если Не "#Параметр(20)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(20)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(21) + #Если Не "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. +#ИначеЕсли "#Параметр(20)" = "НастройкиПрав" #Тогда + И + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(21) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(21) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(20),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(20)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(20)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(20)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(20),") #Тогда + И + ( + ЕСТЬNULL(Т.#Параметр(21), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(20),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(20),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(21) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(20),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(21) + #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" + И "#Параметр(20)" <> "Пользователи" + И "#Параметр(20)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(20)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(20)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(20),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(21) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(21) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(21)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#КонецЕсли + +//// Проверка значения поля группы параметров 10. +#Если "#Параметр(22)" = "" И "#Параметр(23)" = "" #Тогда + // Группа параметров не используется. +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(22)" = "Условие" Или "#Параметр(22)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + И ( #Параметр(23) ) +#ИначеЕсли "#Параметр(22)" = "ПравоЧтения" Или "#Параметр(22)" = "ПравоИзменения" #Тогда + И Т.#Параметр(23) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(23)) + #Если Не "#Параметр(22)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(22)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(23) + #Если Не "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. +#ИначеЕсли "#Параметр(22)" = "НастройкиПрав" #Тогда + И + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(23) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(23) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(22),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(22)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(22)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(22)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(22),") #Тогда + И + ( + ЕСТЬNULL(Т.#Параметр(23), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(22),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(22),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(23) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(22),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(23) + #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" + И "#Параметр(22)" <> "Пользователи" + И "#Параметр(22)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(22)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(22)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(22),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(23) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(23) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(23)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#КонецЕсли + +//// Проверка значения поля группы параметров 11. +#Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда + // Группа параметров не используется. +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + И ( #Параметр(25) ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда + И Т.#Параметр(25) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(25)) + #Если Не "#Параметр(24)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. +#ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда + И + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(25) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(25) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(24),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(24)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(24)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(24)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),") #Тогда + И + ( + ЕСТЬNULL(Т.#Параметр(25), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(24),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(24),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(25) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(24),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(25) + #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(24)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(24),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(25) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(25) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(25)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#КонецЕсли + +//// Проверка значения поля группы параметров 12. +#Если "#Параметр(26)" = "" И "#Параметр(27)" = "" #Тогда + // Группа параметров не используется. +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(26)" = "Условие" Или "#Параметр(26)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + И ( #Параметр(27) ) +#ИначеЕсли "#Параметр(26)" = "ПравоЧтения" Или "#Параметр(26)" = "ПравоИзменения" #Тогда + И Т.#Параметр(27) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(27)) + #Если Не "#Параметр(26)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(26)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(27) + #Если Не "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. +#ИначеЕсли "#Параметр(26)" = "НастройкиПрав" #Тогда + И + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(27) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(27) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(26),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(26)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(26)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(26)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(26),") #Тогда + И + ( + ЕСТЬNULL(Т.#Параметр(27), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(26),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(26),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(27) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(26),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(27) + #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" + И "#Параметр(26)" <> "Пользователи" + И "#Параметр(26)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(26)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(26)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(26),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(27) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(27) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(27)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#КонецЕсли + +//// Проверка значения поля группы параметров 13. +#Если "#Параметр(28)" = "" И "#Параметр(29)" = "" #Тогда + // Группа параметров не используется. +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(28)" = "Условие" Или "#Параметр(28)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + И ( #Параметр(29) ) +#ИначеЕсли "#Параметр(28)" = "ПравоЧтения" Или "#Параметр(28)" = "ПравоИзменения" #Тогда + И Т.#Параметр(29) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(29)) + #Если Не "#Параметр(28)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(28)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(29) + #Если Не "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. +#ИначеЕсли "#Параметр(28)" = "НастройкиПрав" #Тогда + И + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(29) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(29) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(28),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(28)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(28)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(28)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(28),") #Тогда + И + ( + ЕСТЬNULL(Т.#Параметр(29), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(28),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(28),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(29) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(28),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(29) + #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" + И "#Параметр(28)" <> "Пользователи" + И "#Параметр(28)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(28)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(28)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(28),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(29) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(29) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(29)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#КонецЕсли + +//// Проверка значения поля группы параметров 14. +#Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда + // Группа параметров не используется. +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + И ( #Параметр(31) ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда + И Т.#Параметр(31) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(31)) + #Если Не "#Параметр(30)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. +#ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда + И + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(31) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(31) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(30),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(30)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(30)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(30)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),") #Тогда + И + ( + ЕСТЬNULL(Т.#Параметр(31), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(30),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(30),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(31) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(30),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(31) + #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(30)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(30),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(31) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(31) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(31)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#КонецЕсли + +//// Проверка значения поля группы параметров 15. +#Если "#Параметр(32)" = "" И "#Параметр(33)" = "" #Тогда + // Группа параметров не используется. +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(32)" = "Условие" Или "#Параметр(32)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + И ( #Параметр(33) ) +#ИначеЕсли "#Параметр(32)" = "ПравоЧтения" Или "#Параметр(32)" = "ПравоИзменения" #Тогда + И Т.#Параметр(33) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(33)) + #Если Не "#Параметр(32)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(32)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(33) + #Если Не "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. +#ИначеЕсли "#Параметр(32)" = "НастройкиПрав" #Тогда + И + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(33) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(33) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(32),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(32)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(32)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(32)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(32),") #Тогда + И + ( + ЕСТЬNULL(Т.#Параметр(33), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(32),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(32),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(33) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(32),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(33) + #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" + И "#Параметр(32)" <> "Пользователи" + И "#Параметр(32)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(32)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(32)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(32),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(33) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(33) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(33)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#КонецЕсли + +//// Проверка значения поля группы параметров 16. +#Если "#Параметр(34)" = "" И "#Параметр(35)" = "" #Тогда + // Группа параметров не используется. +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(34)" = "Условие" Или "#Параметр(34)" = "") #Тогда + // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. + И ( #Параметр(35) ) +#ИначеЕсли "#Параметр(34)" = "ПравоЧтения" Или "#Параметр(34)" = "ПравоИзменения" #Тогда + И Т.#Параметр(35) <> НЕОПРЕДЕЛЕНО + И ИСТИНА В + ( // Проверка права пользователя на таблицу Значения, установленного в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ТаблицыГруппДоступаПроверкаПрава.ТипТаблицы) = ТИПЗНАЧЕНИЯ(Т.#Параметр(35)) + #Если Не "#Параметр(34)" = "ПравоЧтения" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(34)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(35) + #Если Не "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. +#ИначеЕсли "#Параметр(34)" = "НастройкиПрав" #Тогда + И + ( + ИСТИНА В // Проверка, что пользователю или какой-нибудь группе пользователя право разрешено + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(35) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньРазрешенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + И НЕ ЛОЖЬ В // Проверка, что пользователю или какой-нибудь группе пользователя право запрещено. + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ЛОЖЬ + ИЗ РегистрСведений.НастройкиПравОбъектов КАК НастройкиПрав + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.НаследованиеНастроекПравОбъектов КАК НаследованиеНастроек + ПО + НаследованиеНастроек.Объект = Т.#Параметр(35) + И НастройкиПрав.Объект = НаследованиеНастроек.Родитель + #Если #ИмяТекущегоПраваДоступа = "Чтение" #Тогда + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияЧтения + #Иначе + #Если СтрСодержит(&ТаблицыСОтдельнымиНастройкамиПрав, "|#Параметр(1);") #Тогда + И НастройкиПрав.Таблица = СвойстваТекущейТаблицы.Ссылка + #Иначе + И НастройкиПрав.Таблица = ЗНАЧЕНИЕ(Справочник.ИдентификаторыОбъектовМетаданных.ПустаяСсылка) + #КонецЕсли + И НаследованиеНастроек.УровеньИспользования < НастройкиПрав.УровеньЗапрещенияИзменения + #КонецЕсли + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СоставыГруппПользователей КАК СоставыГруппПользователей + ПО + СоставыГруппПользователей.Пользователь = &АвторизованныйПользователь + И СоставыГруппПользователей.ГруппаПользователей = НастройкиПрав.Пользователь + ) + ) +#ИначеЕсли Не СтрСодержит(&ВсеВидыДоступаКромеСпециальных, ",#Параметр(34),") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + #Если СтрСодержит("#Параметр(34)", ",") #Тогда + НеверныйВидДоступа: "#Параметр(34)" - "Список имен видов доступа не найден" + #Иначе + НеверныйВидДоступа: "#Параметр(34)" - "Имя вида доступа не найдено" + #КонецЕсли +#ИначеЕсли &ВидыДоступаСОтключеннымИспользованием <> "Все" + И Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(34),") #Тогда + И + ( + ЕСТЬNULL(Т.#Параметр(35), НЕОПРЕДЕЛЕНО) <> НЕОПРЕДЕЛЕНО + И + #Если (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",Пользователи,") И СтрСодержит(",#Параметр(34),", ",Пользователи,")) + Или (Не СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",ВнешниеПользователи,") И СтрСодержит(",#Параметр(34),", ",ВнешниеПользователи,")) #Тогда + НЕ + ( + НЕ ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначенийДоступа + ГДЕ + ГруппыЗначенийДоступа.ЗначениеДоступа = Т.#Параметр(35) + И ГруппыЗначенийДоступа.ГруппаЗначенийДоступа = &АвторизованныйПользователь + ) + И НЕ + #Иначе + ( + #КонецЕсли + ВЫБОР + КОГДА ИСТИНА В + ( + #Если СтрСодержит(&ВидыДоступаБезГруппДляЗначенияДоступа, ",#Параметр(34),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.#Параметр(35) + #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" + И "#Параметр(34)" <> "Пользователи" + И "#Параметр(34)" <> "ВнешниеПользователи" #Тогда + #Если СтрСодержит("#Параметр(34)", ",") #Тогда + // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. + НеверныйВидДоступа: "#Параметр(34)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" + #ИначеЕсли СтрСодержит(&ВидыДоступаСОднойГруппойДляЗначенияДоступа, ",#Параметр(34),") #Тогда + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ГДЕ + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = Т.ГруппаДоступа + #Иначе // Значения доступа, для которых можно указать несколько групп значений доступа. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ #Параметр(1).ГруппыДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаДоступа + И ГруппыЗначений.Ссылка = Т.#Параметр(35) + #КонецЕсли + #Иначе + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступа КАК Значения + ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ГруппыЗначенийДоступа КАК ГруппыЗначений + ПО + Значения.ГруппаДоступа = ГруппыДоступа.Ссылка + И Значения.ЗначениеДоступа = ГруппыЗначений.ГруппаЗначенийДоступа + И ГруппыЗначений.ЗначениеДоступа = Т.#Параметр(35) + #КонецЕсли + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + = + ВЫБОР + КОГДА ИСТИНА В + ( + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ЗначенияГруппДоступаПоУмолчанию КАК ЗначенияПоУмолчанию + ГДЕ + ЗначенияПоУмолчанию.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТИПЗНАЧЕНИЯ(ЗначенияПоУмолчанию.ТипЗначенийДоступа) = ТИПЗНАЧЕНИЯ(Т.#Параметр(35)) + И ЗначенияПоУмолчанию.ВсеРазрешены = ЛОЖЬ + ) + ТОГДА ИСТИНА + ИНАЧЕ ЛОЖЬ + КОНЕЦ + ) + ) +#КонецЕсли + + ) +) +#КонецЕсли + + + + diff --git a/SSL/src/Roles/ЧтениеДополнительныхОтчетовИОбработок/ЧтениеДополнительныхОтчетовИОбработок.mdo b/SSL/src/Roles/ЧтениеДополнительныхОтчетовИОбработок/ЧтениеДополнительныхОтчетовИОбработок.mdo new file mode 100644 index 000000000..416237e02 --- /dev/null +++ b/SSL/src/Roles/ЧтениеДополнительныхОтчетовИОбработок/ЧтениеДополнительныхОтчетовИОбработок.mdo @@ -0,0 +1,8 @@ + + + ЧтениеДополнительныхОтчетовИОбработок + + ru + Чтение дополнительных отчетов и обработок + + diff --git a/SSL/src/Roles/ЧтениеДополнительныхСведений/Rights.rights b/SSL/src/Roles/ЧтениеДополнительныхСведений/Rights.rights index 558fa7119..75521fc94 100644 --- a/SSL/src/Roles/ЧтениеДополнительныхСведений/Rights.rights +++ b/SSL/src/Roles/ЧтениеДополнительныхСведений/Rights.rights @@ -3,281 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -289,1535 +14,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1829,2030 +25,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Вступление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - InformationRegister.ДополнительныеСведения @@ -3869,4980 +41,6 @@ true - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8854,3137 +52,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -11996,72 +63,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - CommonCommand.ДополнительныеСведенияКоманднаяПанель @@ -12069,3456 +70,6 @@ true - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - CommonForm.РедактированиеДополнительныхСведений @@ -15526,380 +77,6 @@ true - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - ПоЗначениям // ПоЗначениям(Таблица, -, Модификатор, В1,П1, В2,П2, ..., В(n), П(n)). @@ -15914,13 +91,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. // Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", // выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // П(n) - Поле проверяемого значения, кроме случая В(n) = "Условие" (или ""). // Примечение: максимальное количество одновременно проверяемых значений полей можно увеличить, изменив шаблон, но // необходимо будет указывать все параметры шаблона, т.е. указывать пустые строки, когда количество полей меньше максимального. @@ -15954,73 +133,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(4)" = "" И "#Параметр(5)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(4),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(4),")) И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(8)" = "" И "#Параметр(9)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(8),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(8),")) И ("#Параметр(10)" = "" И "#Параметр(11)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(10),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(10),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(14)" = "" И "#Параметр(15)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(14),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(14),")) И ("#Параметр(16)" = "" И "#Параметр(17)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(16),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(16),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(20)" = "" И "#Параметр(21)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(20),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(20),")) И ("#Параметр(22)" = "" И "#Параметр(23)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(22),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(22),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(26)" = "" И "#Параметр(27)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(26),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(26),")) И ("#Параметр(28)" = "" И "#Параметр(29)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(28),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(28),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(32)" = "" И "#Параметр(33)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(32),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(32),")) И ("#Параметр(34)" = "" И "#Параметр(35)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(34),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(34),")) - ) #Тогда + ) #Тогда Т ГДЕ // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -16065,7 +276,7 @@ ( // Поиск значений заданных полей в разрешенных значениях групп доступа (пользователей). //// Проверка значения поля группы параметров 1. -#Если "#Параметр(4)" = "Условие" Или "#Параметр(4)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(4)" = "Условие" Или "#Параметр(4)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(5) ) #ИначеЕсли "#Параметр(4)" = "ПравоЧтения" Или "#Параметр(4)" = "ПравоИзменения" #Тогда @@ -16081,6 +292,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(4)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(5) + #Если Не "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(4)" = "НастройкиПрав" #Тогда ( @@ -16169,7 +394,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(5) - #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" + И "#Параметр(4)" <> "Пользователи" + И "#Параметр(4)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(4)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(4)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16224,7 +451,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(6)" = "" И "#Параметр(7)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -16240,6 +467,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда И ( @@ -16328,7 +569,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(7) - #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16381,7 +624,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(8)" = "" И "#Параметр(9)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(8)" = "Условие" Или "#Параметр(8)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(8)" = "Условие" Или "#Параметр(8)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(9) ) #ИначеЕсли "#Параметр(8)" = "ПравоЧтения" Или "#Параметр(8)" = "ПравоИзменения" #Тогда @@ -16397,6 +640,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(8)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(9) + #Если Не "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(8)" = "НастройкиПрав" #Тогда И ( @@ -16485,7 +742,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(9) - #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" + И "#Параметр(8)" <> "Пользователи" + И "#Параметр(8)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(8)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(8)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16538,7 +797,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(10)" = "" И "#Параметр(11)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(10)" = "Условие" Или "#Параметр(10)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(10)" = "Условие" Или "#Параметр(10)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(11) ) #ИначеЕсли "#Параметр(10)" = "ПравоЧтения" Или "#Параметр(10)" = "ПравоИзменения" #Тогда @@ -16554,6 +813,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(10)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(11) + #Если Не "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(10)" = "НастройкиПрав" #Тогда И ( @@ -16642,7 +915,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(11) - #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" + И "#Параметр(10)" <> "Пользователи" + И "#Параметр(10)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(10)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(10)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16695,7 +970,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -16711,6 +986,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда И ( @@ -16799,7 +1088,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(13) - #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -16852,7 +1143,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(14)" = "" И "#Параметр(15)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(14)" = "Условие" Или "#Параметр(14)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(14)" = "Условие" Или "#Параметр(14)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(15) ) #ИначеЕсли "#Параметр(14)" = "ПравоЧтения" Или "#Параметр(14)" = "ПравоИзменения" #Тогда @@ -16868,6 +1159,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(14)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(15) + #Если Не "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(14)" = "НастройкиПрав" #Тогда И ( @@ -16956,7 +1261,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(15) - #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" + И "#Параметр(14)" <> "Пользователи" + И "#Параметр(14)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(14)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(14)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17009,7 +1316,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(16)" = "" И "#Параметр(17)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(16)" = "Условие" Или "#Параметр(16)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(16)" = "Условие" Или "#Параметр(16)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(17) ) #ИначеЕсли "#Параметр(16)" = "ПравоЧтения" Или "#Параметр(16)" = "ПравоИзменения" #Тогда @@ -17025,6 +1332,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(16)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(17) + #Если Не "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(16)" = "НастройкиПрав" #Тогда И ( @@ -17113,7 +1434,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(17) - #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" + И "#Параметр(16)" <> "Пользователи" + И "#Параметр(16)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(16)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(16)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17166,7 +1489,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -17182,6 +1505,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда И ( @@ -17270,7 +1607,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(19) - #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17323,7 +1662,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(20)" = "" И "#Параметр(21)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(20)" = "Условие" Или "#Параметр(20)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(20)" = "Условие" Или "#Параметр(20)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(21) ) #ИначеЕсли "#Параметр(20)" = "ПравоЧтения" Или "#Параметр(20)" = "ПравоИзменения" #Тогда @@ -17339,6 +1678,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(20)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(21) + #Если Не "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(20)" = "НастройкиПрав" #Тогда И ( @@ -17427,7 +1780,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(21) - #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" + И "#Параметр(20)" <> "Пользователи" + И "#Параметр(20)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(20)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(20)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17480,7 +1835,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(22)" = "" И "#Параметр(23)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(22)" = "Условие" Или "#Параметр(22)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(22)" = "Условие" Или "#Параметр(22)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(23) ) #ИначеЕсли "#Параметр(22)" = "ПравоЧтения" Или "#Параметр(22)" = "ПравоИзменения" #Тогда @@ -17496,6 +1851,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(22)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(23) + #Если Не "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(22)" = "НастройкиПрав" #Тогда И ( @@ -17584,7 +1953,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(23) - #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" + И "#Параметр(22)" <> "Пользователи" + И "#Параметр(22)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(22)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(22)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17637,7 +2008,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -17653,6 +2024,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда И ( @@ -17741,7 +2126,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(25) - #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17794,7 +2181,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(26)" = "" И "#Параметр(27)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(26)" = "Условие" Или "#Параметр(26)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(26)" = "Условие" Или "#Параметр(26)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(27) ) #ИначеЕсли "#Параметр(26)" = "ПравоЧтения" Или "#Параметр(26)" = "ПравоИзменения" #Тогда @@ -17810,6 +2197,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(26)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(27) + #Если Не "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(26)" = "НастройкиПрав" #Тогда И ( @@ -17898,7 +2299,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(27) - #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" + И "#Параметр(26)" <> "Пользователи" + И "#Параметр(26)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(26)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(26)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -17951,7 +2354,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(28)" = "" И "#Параметр(29)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(28)" = "Условие" Или "#Параметр(28)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(28)" = "Условие" Или "#Параметр(28)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(29) ) #ИначеЕсли "#Параметр(28)" = "ПравоЧтения" Или "#Параметр(28)" = "ПравоИзменения" #Тогда @@ -17967,6 +2370,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(28)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(29) + #Если Не "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(28)" = "НастройкиПрав" #Тогда И ( @@ -18055,7 +2472,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(29) - #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" + И "#Параметр(28)" <> "Пользователи" + И "#Параметр(28)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(28)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(28)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -18108,7 +2527,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -18124,6 +2543,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда И ( @@ -18212,7 +2645,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(31) - #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -18265,7 +2700,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(32)" = "" И "#Параметр(33)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(32)" = "Условие" Или "#Параметр(32)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(32)" = "Условие" Или "#Параметр(32)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(33) ) #ИначеЕсли "#Параметр(32)" = "ПравоЧтения" Или "#Параметр(32)" = "ПравоИзменения" #Тогда @@ -18281,6 +2716,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(32)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(33) + #Если Не "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(32)" = "НастройкиПрав" #Тогда И ( @@ -18369,7 +2818,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(33) - #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" + И "#Параметр(32)" <> "Пользователи" + И "#Параметр(32)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(32)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(32)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -18422,7 +2873,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(34)" = "" И "#Параметр(35)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(34)" = "Условие" Или "#Параметр(34)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(34)" = "Условие" Или "#Параметр(34)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(35) ) #ИначеЕсли "#Параметр(34)" = "ПравоЧтения" Или "#Параметр(34)" = "ПравоИзменения" #Тогда @@ -18438,6 +2889,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(34)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(35) + #Если Не "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(34)" = "НастройкиПрав" #Тогда И ( @@ -18526,7 +2991,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(35) - #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" + И "#Параметр(34)" <> "Пользователи" + И "#Параметр(34)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(34)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(34)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" diff --git a/SSL/src/Roles/ЧтениеЗаданий/Rights.rights b/SSL/src/Roles/ЧтениеЗаданий/Rights.rights index 466052c08..f19d8bb82 100644 --- a/SSL/src/Roles/ЧтениеЗаданий/Rights.rights +++ b/SSL/src/Roles/ЧтениеЗаданий/Rights.rights @@ -14,6 +14,17 @@ true + + InformationRegister.ПроцессыДляЗапуска + + Read + true + + + View + true + + Task.ЗадачаИсполнителя.Command.Выполнено @@ -175,13 +186,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Объект", "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Объект", "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), Тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. -// Когда В(n) = "ПравоЧтения" ИЛИ "ПравоИзменения", -// выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", +// выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // Когда В(n) = "Объект" (или " "), то // когда есть запись зависимости прав в регистре сведений ЗависимостиПравДоступа тогда // выполняется проверка права чтения Т.П(n) и наборов значений доступа @@ -232,73 +245,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(9)" = "" И "#Параметр(10)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(9),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(9),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(15)" = "" И "#Параметр(16)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(15),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(15),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(21)" = "" И "#Параметр(22)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(21),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(21),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(27)" = "" И "#Параметр(28)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(27),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(27),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(33)" = "" И "#Параметр(34)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(33),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(33),")) И ("#Параметр(36)" = "" И "#Параметр(37)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(36),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(36),")) И ("#Параметр(39)" = "" И "#Параметр(40)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(39),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(39),")) И ("#Параметр(42)" = "" И "#Параметр(43)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(42),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(42),")) И ("#Параметр(45)" = "" И "#Параметр(46)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(45),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(45),")) И ("#Параметр(48)" = "" И "#Параметр(49)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(48),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(48),")) И ("#Параметр(51)" = "" И "#Параметр(52)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(51),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(51),")) - ) #Тогда + ) #Тогда Т ИЗ Т // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -350,7 +395,7 @@ #Параметр(5) // [([(][(]...] 0-n открывающихся скобок. //// Проверка значения поля группы параметров 1. -#Если "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -366,6 +411,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(6)" = "Объект" Или "#Параметр(6)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -397,6 +454,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -754,8 +812,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда ( @@ -844,7 +905,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(7) - #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -902,7 +965,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(9)" = "" И "#Параметр(10)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(9)" = "Условие" Или "#Параметр(9)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(9)" = "Условие" Или "#Параметр(9)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(10) ) #ИначеЕсли "#Параметр(9)" = "ПравоЧтения" Или "#Параметр(9)" = "ПравоИзменения" #Тогда @@ -918,6 +981,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(9)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(10) + #Если Не "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(9)" = "Объект" Или "#Параметр(9)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -949,6 +1024,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -1306,8 +1382,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(9)" = "НастройкиПрав" #Тогда ( @@ -1396,7 +1475,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(10) - #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" + И "#Параметр(9)" <> "Пользователи" + И "#Параметр(9)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(9)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(9)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1454,7 +1535,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -1470,6 +1551,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(12)" = "Объект" Или "#Параметр(12)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -1501,6 +1594,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -1858,8 +1952,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда ( @@ -1948,7 +2045,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(13) - #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2006,7 +2105,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(15)" = "" И "#Параметр(16)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(15)" = "Условие" Или "#Параметр(15)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(15)" = "Условие" Или "#Параметр(15)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(16) ) #ИначеЕсли "#Параметр(15)" = "ПравоЧтения" Или "#Параметр(15)" = "ПравоИзменения" #Тогда @@ -2022,6 +2121,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(15)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(16) + #Если Не "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(15)" = "Объект" Или "#Параметр(15)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -2053,6 +2164,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -2410,8 +2522,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(15)" = "НастройкиПрав" #Тогда ( @@ -2500,7 +2615,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(16) - #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" + И "#Параметр(15)" <> "Пользователи" + И "#Параметр(15)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(15)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(15)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2558,7 +2675,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -2574,6 +2691,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(18)" = "Объект" Или "#Параметр(18)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -2605,6 +2734,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -2962,8 +3092,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда ( @@ -3052,7 +3185,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(19) - #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3110,7 +3245,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(21)" = "" И "#Параметр(22)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(21)" = "Условие" Или "#Параметр(21)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(21)" = "Условие" Или "#Параметр(21)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(22) ) #ИначеЕсли "#Параметр(21)" = "ПравоЧтения" Или "#Параметр(21)" = "ПравоИзменения" #Тогда @@ -3126,6 +3261,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(21)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(22) + #Если Не "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(21)" = "Объект" Или "#Параметр(21)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -3157,6 +3304,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -3514,8 +3662,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(21)" = "НастройкиПрав" #Тогда ( @@ -3604,7 +3755,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(22) - #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" + И "#Параметр(21)" <> "Пользователи" + И "#Параметр(21)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(21)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(21)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3662,7 +3815,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -3678,6 +3831,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(24)" = "Объект" Или "#Параметр(24)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -3709,6 +3874,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -4066,8 +4232,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда ( @@ -4156,7 +4325,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(25) - #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4214,7 +4385,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(27)" = "" И "#Параметр(28)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(27)" = "Условие" Или "#Параметр(27)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(27)" = "Условие" Или "#Параметр(27)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(28) ) #ИначеЕсли "#Параметр(27)" = "ПравоЧтения" Или "#Параметр(27)" = "ПравоИзменения" #Тогда @@ -4230,6 +4401,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(27)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(28) + #Если Не "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(27)" = "Объект" Или "#Параметр(27)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -4261,6 +4444,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -4618,8 +4802,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(27)" = "НастройкиПрав" #Тогда ( @@ -4708,7 +4895,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(28) - #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" + И "#Параметр(27)" <> "Пользователи" + И "#Параметр(27)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(27)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(27)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4766,7 +4955,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -4782,6 +4971,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(30)" = "Объект" Или "#Параметр(30)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -4813,6 +5014,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -5170,8 +5372,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда ( @@ -5260,7 +5465,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(31) - #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5318,7 +5525,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(33)" = "" И "#Параметр(34)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(33)" = "Условие" Или "#Параметр(33)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(33)" = "Условие" Или "#Параметр(33)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(34) ) #ИначеЕсли "#Параметр(33)" = "ПравоЧтения" Или "#Параметр(33)" = "ПравоИзменения" #Тогда @@ -5334,6 +5541,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(33)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(34) + #Если Не "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(33)" = "Объект" Или "#Параметр(33)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -5365,6 +5584,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -5722,8 +5942,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(33)" = "НастройкиПрав" #Тогда ( @@ -5812,7 +6035,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(34) - #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" + И "#Параметр(33)" <> "Пользователи" + И "#Параметр(33)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(33)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(33)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5870,7 +6095,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(36)" = "" И "#Параметр(37)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(36)" = "Условие" Или "#Параметр(36)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(36)" = "Условие" Или "#Параметр(36)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(37) ) #ИначеЕсли "#Параметр(36)" = "ПравоЧтения" Или "#Параметр(36)" = "ПравоИзменения" #Тогда @@ -5886,6 +6111,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(36)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(37) + #Если Не "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(36)" = "Объект" Или "#Параметр(36)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -5917,6 +6154,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -6274,8 +6512,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(36)" = "НастройкиПрав" #Тогда ( @@ -6364,7 +6605,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(37) - #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" + И "#Параметр(36)" <> "Пользователи" + И "#Параметр(36)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(36)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(36)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6422,7 +6665,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(39)" = "" И "#Параметр(40)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(39)" = "Условие" Или "#Параметр(39)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(39)" = "Условие" Или "#Параметр(39)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(40) ) #ИначеЕсли "#Параметр(39)" = "ПравоЧтения" Или "#Параметр(39)" = "ПравоИзменения" #Тогда @@ -6438,6 +6681,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(39)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(40) + #Если Не "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(39)" = "Объект" Или "#Параметр(39)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -6469,6 +6724,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -6826,8 +7082,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(39)" = "НастройкиПрав" #Тогда ( @@ -6916,7 +7175,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(40) - #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" + И "#Параметр(39)" <> "Пользователи" + И "#Параметр(39)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(39)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(39)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6974,7 +7235,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(42)" = "" И "#Параметр(43)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(42)" = "Условие" Или "#Параметр(42)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(42)" = "Условие" Или "#Параметр(42)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(43) ) #ИначеЕсли "#Параметр(42)" = "ПравоЧтения" Или "#Параметр(42)" = "ПравоИзменения" #Тогда @@ -6990,6 +7251,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(42)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(43) + #Если Не "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(42)" = "Объект" Или "#Параметр(42)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -7021,6 +7294,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -7378,8 +7652,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(42)" = "НастройкиПрав" #Тогда ( @@ -7468,7 +7745,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(43) - #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" + И "#Параметр(42)" <> "Пользователи" + И "#Параметр(42)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(42)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(42)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -7526,7 +7805,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(45)" = "" И "#Параметр(46)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(45)" = "Условие" Или "#Параметр(45)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(45)" = "Условие" Или "#Параметр(45)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(46) ) #ИначеЕсли "#Параметр(45)" = "ПравоЧтения" Или "#Параметр(45)" = "ПравоИзменения" #Тогда @@ -7542,6 +7821,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(45)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(46) + #Если Не "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(45)" = "Объект" Или "#Параметр(45)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -7573,6 +7864,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -7930,8 +8222,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(45)" = "НастройкиПрав" #Тогда ( @@ -8020,7 +8315,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(46) - #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" + И "#Параметр(45)" <> "Пользователи" + И "#Параметр(45)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(45)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(45)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8078,7 +8375,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(48)" = "" И "#Параметр(49)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(48)" = "Условие" Или "#Параметр(48)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(48)" = "Условие" Или "#Параметр(48)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(49) ) #ИначеЕсли "#Параметр(48)" = "ПравоЧтения" Или "#Параметр(48)" = "ПравоИзменения" #Тогда @@ -8094,6 +8391,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(48)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(49) + #Если Не "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(48)" = "Объект" Или "#Параметр(48)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -8125,6 +8434,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -8482,8 +8792,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(48)" = "НастройкиПрав" #Тогда ( @@ -8572,7 +8885,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(49) - #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" + И "#Параметр(48)" <> "Пользователи" + И "#Параметр(48)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(48)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(48)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8630,7 +8945,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(51)" = "" И "#Параметр(52)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(51)" = "Условие" Или "#Параметр(51)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(51)" = "Условие" Или "#Параметр(51)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(52) ) #ИначеЕсли "#Параметр(51)" = "ПравоЧтения" Или "#Параметр(51)" = "ПравоИзменения" #Тогда @@ -8646,6 +8961,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(51)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(52) + #Если Не "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(51)" = "Объект" Или "#Параметр(51)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -8677,6 +9004,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -9034,8 +9362,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(51)" = "НастройкиПрав" #Тогда ( @@ -9124,7 +9455,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(52) - #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" + И "#Параметр(51)" <> "Пользователи" + И "#Параметр(51)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(51)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(51)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" diff --git a/SSL/src/Roles/ЧтениеЗадач/Rights.rights b/SSL/src/Roles/ЧтениеЗадач/Rights.rights index b3ed964fc..0d843e922 100644 --- a/SSL/src/Roles/ЧтениеЗадач/Rights.rights +++ b/SSL/src/Roles/ЧтениеЗадач/Rights.rights @@ -159,13 +159,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Объект", "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Объект", "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), Тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. -// Когда В(n) = "ПравоЧтения" ИЛИ "ПравоИзменения", -// выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", +// выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // Когда В(n) = "Объект" (или " "), то // когда есть запись зависимости прав в регистре сведений ЗависимостиПравДоступа тогда // выполняется проверка права чтения Т.П(n) и наборов значений доступа @@ -216,73 +218,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(9)" = "" И "#Параметр(10)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(9),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(9),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(9),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(15)" = "" И "#Параметр(16)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(15),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(15),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(15),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(21)" = "" И "#Параметр(22)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(21),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(21),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(21),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(27)" = "" И "#Параметр(28)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(27),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(27),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(27),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(33)" = "" И "#Параметр(34)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(33),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(33),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(33),")) И ("#Параметр(36)" = "" И "#Параметр(37)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(36),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(36),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(36),")) И ("#Параметр(39)" = "" И "#Параметр(40)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(39),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(39),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(39),")) И ("#Параметр(42)" = "" И "#Параметр(43)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(42),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(42),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(42),")) И ("#Параметр(45)" = "" И "#Параметр(46)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(45),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(45),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(45),")) И ("#Параметр(48)" = "" И "#Параметр(49)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(48),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(48),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(48),")) И ("#Параметр(51)" = "" И "#Параметр(52)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(51),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(51),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(51),")) - ) #Тогда + ) #Тогда Т ИЗ Т // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -334,7 +368,7 @@ #Параметр(5) // [([(][(]...] 0-n открывающихся скобок. //// Проверка значения поля группы параметров 1. -#Если "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -350,6 +384,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(6)" = "Объект" Или "#Параметр(6)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -381,6 +427,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -738,8 +785,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда ( @@ -828,7 +878,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(7) - #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -886,7 +938,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(9)" = "" И "#Параметр(10)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(9)" = "Условие" Или "#Параметр(9)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(9)" = "Условие" Или "#Параметр(9)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(10) ) #ИначеЕсли "#Параметр(9)" = "ПравоЧтения" Или "#Параметр(9)" = "ПравоИзменения" #Тогда @@ -902,6 +954,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(9)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(10) + #Если Не "#Параметр(9)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(9)" = "Объект" Или "#Параметр(9)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -933,6 +997,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -1290,8 +1355,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(9)" = "НастройкиПрав" #Тогда ( @@ -1380,7 +1448,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(10) - #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(10)" = "Т.Ссылка" + И "#Параметр(9)" <> "Пользователи" + И "#Параметр(9)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(9)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(9)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1438,7 +1508,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -1454,6 +1524,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(12)" = "Объект" Или "#Параметр(12)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -1485,6 +1567,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -1842,8 +1925,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда ( @@ -1932,7 +2018,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(13) - #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1990,7 +2078,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(15)" = "" И "#Параметр(16)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(15)" = "Условие" Или "#Параметр(15)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(15)" = "Условие" Или "#Параметр(15)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(16) ) #ИначеЕсли "#Параметр(15)" = "ПравоЧтения" Или "#Параметр(15)" = "ПравоИзменения" #Тогда @@ -2006,6 +2094,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(15)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(16) + #Если Не "#Параметр(15)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(15)" = "Объект" Или "#Параметр(15)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -2037,6 +2137,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -2394,8 +2495,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(15)" = "НастройкиПрав" #Тогда ( @@ -2484,7 +2588,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(16) - #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(16)" = "Т.Ссылка" + И "#Параметр(15)" <> "Пользователи" + И "#Параметр(15)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(15)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(15)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2542,7 +2648,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -2558,6 +2664,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(18)" = "Объект" Или "#Параметр(18)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -2589,6 +2707,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -2946,8 +3065,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда ( @@ -3036,7 +3158,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(19) - #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3094,7 +3218,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(21)" = "" И "#Параметр(22)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(21)" = "Условие" Или "#Параметр(21)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(21)" = "Условие" Или "#Параметр(21)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(22) ) #ИначеЕсли "#Параметр(21)" = "ПравоЧтения" Или "#Параметр(21)" = "ПравоИзменения" #Тогда @@ -3110,6 +3234,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(21)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(22) + #Если Не "#Параметр(21)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(21)" = "Объект" Или "#Параметр(21)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -3141,6 +3277,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -3498,8 +3635,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(21)" = "НастройкиПрав" #Тогда ( @@ -3588,7 +3728,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(22) - #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(22)" = "Т.Ссылка" + И "#Параметр(21)" <> "Пользователи" + И "#Параметр(21)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(21)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(21)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -3646,7 +3788,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -3662,6 +3804,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(24)" = "Объект" Или "#Параметр(24)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -3693,6 +3847,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -4050,8 +4205,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда ( @@ -4140,7 +4298,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(25) - #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4198,7 +4358,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(27)" = "" И "#Параметр(28)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(27)" = "Условие" Или "#Параметр(27)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(27)" = "Условие" Или "#Параметр(27)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(28) ) #ИначеЕсли "#Параметр(27)" = "ПравоЧтения" Или "#Параметр(27)" = "ПравоИзменения" #Тогда @@ -4214,6 +4374,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(27)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(28) + #Если Не "#Параметр(27)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(27)" = "Объект" Или "#Параметр(27)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -4245,6 +4417,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -4602,8 +4775,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(27)" = "НастройкиПрав" #Тогда ( @@ -4692,7 +4868,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(28) - #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(28)" = "Т.Ссылка" + И "#Параметр(27)" <> "Пользователи" + И "#Параметр(27)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(27)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(27)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -4750,7 +4928,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -4766,6 +4944,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(30)" = "Объект" Или "#Параметр(30)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -4797,6 +4987,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -5154,8 +5345,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда ( @@ -5244,7 +5438,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(31) - #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5302,7 +5498,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(33)" = "" И "#Параметр(34)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(33)" = "Условие" Или "#Параметр(33)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(33)" = "Условие" Или "#Параметр(33)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(34) ) #ИначеЕсли "#Параметр(33)" = "ПравоЧтения" Или "#Параметр(33)" = "ПравоИзменения" #Тогда @@ -5318,6 +5514,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(33)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(34) + #Если Не "#Параметр(33)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(33)" = "Объект" Или "#Параметр(33)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -5349,6 +5557,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -5706,8 +5915,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(33)" = "НастройкиПрав" #Тогда ( @@ -5796,7 +6008,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(34) - #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(34)" = "Т.Ссылка" + И "#Параметр(33)" <> "Пользователи" + И "#Параметр(33)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(33)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(33)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -5854,7 +6068,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(36)" = "" И "#Параметр(37)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(36)" = "Условие" Или "#Параметр(36)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(36)" = "Условие" Или "#Параметр(36)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(37) ) #ИначеЕсли "#Параметр(36)" = "ПравоЧтения" Или "#Параметр(36)" = "ПравоИзменения" #Тогда @@ -5870,6 +6084,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(36)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(37) + #Если Не "#Параметр(36)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(36)" = "Объект" Или "#Параметр(36)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -5901,6 +6127,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -6258,8 +6485,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(36)" = "НастройкиПрав" #Тогда ( @@ -6348,7 +6578,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(37) - #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(37)" = "Т.Ссылка" + И "#Параметр(36)" <> "Пользователи" + И "#Параметр(36)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(36)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(36)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6406,7 +6638,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(39)" = "" И "#Параметр(40)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(39)" = "Условие" Или "#Параметр(39)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(39)" = "Условие" Или "#Параметр(39)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(40) ) #ИначеЕсли "#Параметр(39)" = "ПравоЧтения" Или "#Параметр(39)" = "ПравоИзменения" #Тогда @@ -6422,6 +6654,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(39)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(40) + #Если Не "#Параметр(39)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(39)" = "Объект" Или "#Параметр(39)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -6453,6 +6697,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -6810,8 +7055,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(39)" = "НастройкиПрав" #Тогда ( @@ -6900,7 +7148,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(40) - #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(40)" = "Т.Ссылка" + И "#Параметр(39)" <> "Пользователи" + И "#Параметр(39)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(39)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(39)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -6958,7 +7208,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(42)" = "" И "#Параметр(43)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(42)" = "Условие" Или "#Параметр(42)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(42)" = "Условие" Или "#Параметр(42)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(43) ) #ИначеЕсли "#Параметр(42)" = "ПравоЧтения" Или "#Параметр(42)" = "ПравоИзменения" #Тогда @@ -6974,6 +7224,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(42)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(43) + #Если Не "#Параметр(42)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(42)" = "Объект" Или "#Параметр(42)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -7005,6 +7267,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -7362,8 +7625,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(42)" = "НастройкиПрав" #Тогда ( @@ -7452,7 +7718,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(43) - #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(43)" = "Т.Ссылка" + И "#Параметр(42)" <> "Пользователи" + И "#Параметр(42)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(42)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(42)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -7510,7 +7778,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(45)" = "" И "#Параметр(46)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(45)" = "Условие" Или "#Параметр(45)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(45)" = "Условие" Или "#Параметр(45)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(46) ) #ИначеЕсли "#Параметр(45)" = "ПравоЧтения" Или "#Параметр(45)" = "ПравоИзменения" #Тогда @@ -7526,6 +7794,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(45)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(46) + #Если Не "#Параметр(45)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(45)" = "Объект" Или "#Параметр(45)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -7557,6 +7837,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -7914,8 +8195,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(45)" = "НастройкиПрав" #Тогда ( @@ -8004,7 +8288,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(46) - #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(46)" = "Т.Ссылка" + И "#Параметр(45)" <> "Пользователи" + И "#Параметр(45)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(45)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(45)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8062,7 +8348,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(48)" = "" И "#Параметр(49)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(48)" = "Условие" Или "#Параметр(48)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(48)" = "Условие" Или "#Параметр(48)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(49) ) #ИначеЕсли "#Параметр(48)" = "ПравоЧтения" Или "#Параметр(48)" = "ПравоИзменения" #Тогда @@ -8078,6 +8364,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(48)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(49) + #Если Не "#Параметр(48)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(48)" = "Объект" Или "#Параметр(48)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -8109,6 +8407,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -8466,8 +8765,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(48)" = "НастройкиПрав" #Тогда ( @@ -8556,7 +8858,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(49) - #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(49)" = "Т.Ссылка" + И "#Параметр(48)" <> "Пользователи" + И "#Параметр(48)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(48)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(48)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -8614,7 +8918,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(51)" = "" И "#Параметр(52)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(51)" = "Условие" Или "#Параметр(51)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(51)" = "Условие" Или "#Параметр(51)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(52) ) #ИначеЕсли "#Параметр(51)" = "ПравоЧтения" Или "#Параметр(51)" = "ПравоИзменения" #Тогда @@ -8630,6 +8934,18 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(51)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = #Параметр(52) + #Если Не "#Параметр(51)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) #ИначеЕсли "#Параметр(51)" = "Объект" Или "#Параметр(51)" = " " #Тогда ( // Проверка права объекта ведущей таблицы (зависимость по правам) @@ -8661,6 +8977,7 @@ #КонецЕсли ) ) + #Если &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда // Проверка ограничения права объекта ведущей таблицы И #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда @@ -9018,8 +9335,11 @@ #Если Не &ТипыВладельцевНастроекПрав = "" #Тогда КОНЕЦ #КонецЕсли + #КонецЕсли ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(51)" = "НастройкиПрав" #Тогда ( @@ -9108,7 +9428,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = #Параметр(52) - #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" #Тогда + #ИначеЕсли "#Параметр(52)" = "Т.Ссылка" + И "#Параметр(51)" <> "Пользователи" + И "#Параметр(51)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(51)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(51)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" diff --git a/SSL/src/Roles/ЧтениеИнформацииОВерсияхОбъектов/Rights.rights b/SSL/src/Roles/ЧтениеИнформацииОВерсияхОбъектов/Rights.rights index db8849893..13bd38e1f 100644 --- a/SSL/src/Roles/ЧтениеИнформацииОВерсияхОбъектов/Rights.rights +++ b/SSL/src/Roles/ЧтениеИнформацииОВерсияхОбъектов/Rights.rights @@ -18,41 +18,6 @@ true - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - Edit - false - - CommonCommand.ИсторияИзменений @@ -60,130 +25,4 @@ true - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ВерсияПроигнорирована - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.Комментарий - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ТипВерсииОбъекта - - Edit - false - - diff --git a/SSL/src/Roles/ЧтениеОтветовНаВопросыАнкет/Rights.rights b/SSL/src/Roles/ЧтениеОтветовНаВопросыАнкет/Rights.rights index af90da087..db63ff492 100644 --- a/SSL/src/Roles/ЧтениеОтветовНаВопросыАнкет/Rights.rights +++ b/SSL/src/Roles/ЧтениеОтветовНаВопросыАнкет/Rights.rights @@ -3,281 +3,6 @@ false true false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ПоказыватьОповещение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.НаЧтение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения.Attribute.Свойство - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникИндексКартинки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Дата - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Папка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ДополнительныйОбъектАдресации @@ -289,94 +14,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовНесопоставленных - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.СообщениеДляПользователей - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.ИмяПоля - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ДатаОтправления - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - Catalog.ШаблоныАнкет @@ -392,447 +29,6 @@ true - - Catalog.ШаблоныАнкет.StandardAttribute.Predefined - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Ref - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Owner - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Parent - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Description - - Edit - false - - - - Catalog.ШаблоныАнкет.StandardAttribute.Code - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьКлючОбъекта - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьНазвание - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.РольИсполнителя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Выполнено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Предмет - - View - false - - - Edit - false - - InformationRegister.ОтветыНаВопросыАнкет @@ -844,353 +40,6 @@ true - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Active - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.LineNumber - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Recorder - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.StandardAttribute.Period - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.ОписаниеДатыЗапрета - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентПредставление - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.РазделыДатЗапретаИзменения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.АдресТолькоРоссийский - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаXML - - View - false - - - Edit - false - - Catalog.ВопросыШаблонаАнкеты @@ -1206,559 +55,6 @@ true - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Predefined - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Ref - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Owner - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Parent - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Description - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.StandardAttribute.Code - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.Объект - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.СвободныйОпрос - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопСведения - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.Описание - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТипОтвета - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Путь - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.StandardAttribute.Ref - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ПрерыватьПриОшибке - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПредопределенная - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Автор - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Комментарий - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.Объект - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Точность - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Модификатор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗагружатьДанныеВРежимеОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбъектыПоСсылкеЗагружатьБезПометкиУдаления - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Наименование - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Resource.ДатаЗапрета - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.КоличествоДнейВГрафикеСНачалаГода - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Вопрос - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.ОсновнойОбъектАдресации @@ -1770,1620 +66,6 @@ false - - InformationRegister.ИсполнителиЗадач.Dimension.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заключение - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ЭтоДополнительноеСведение - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеСведения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейКопий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.РегламентноеЗаданиеGUID - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.КодНовогоУзлаВторойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле3 - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Календари.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Завершен - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ВозможностьПредварительногоСохранения - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Валюты.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокИспользуемыхПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа2 - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Данные - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.ЗначениеДоступа - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипУдаленияРегистрацииИзмененийДляУзловОбменаПослеВыгрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.АгрегироватьСуммуВОтчетах - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.РодительскаяВерсия - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.КлючВарианта - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.ТребуетОткрытогоОтвета - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаОкончания - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.Тип - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Подсказка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПользовательИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение.Attribute.УдалитьПодсистема - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение.Attribute.УдалитьПолноеИмяОбъектаМетаданных - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.ТипАдресногоЭлемента - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагОшибки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбменаЗагрузка - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.ОкончаниеПериодаЗагрузки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Тема - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Вступление - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбработанныхОбъектовДляОбновленияСтатуса - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.ДатаРедактирования - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.Пользователь - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.НомерЯчейки - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИсточникОбновления - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Кратность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Содержание - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты.Attribute.Респондент - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия2Разряд - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Формулировка - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РезультатОбновления - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВыполняемоеДействие - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВИсточнике - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Идентификатор - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВыполнитьРезервноеКопированиеСейчас - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяМакетаПравил - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОткрыватьПротоколыОбменаПослеВыполненияОпераций - - View - false - - - Edit - false - - Catalog.ВариантыОтветовАнкет @@ -3399,542 +81,6 @@ true - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Predefined - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Ref - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Owner - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Parent - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Description - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.StandardAttribute.Code - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодПользователяСервераОбновлений - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле5 - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ОдинКоМногим - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Resource.ЕстьФайлы - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяПланаОбменаИзПравил - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Контакт - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Executed - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Description - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.RoutePoint - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.BusinessProcess - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Date - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.StandardAttribute.Number - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ЗначенияПолей - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле2 - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяСервераИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ФайлОбновления - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - Document.НазначениеОпросов @@ -3950,3151 +96,6 @@ true - - Document.НазначениеОпросов.StandardAttribute.Posted - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Ref - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.DeletionMark - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Date - - Edit - false - - - - Document.НазначениеОпросов.StandardAttribute.Number - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FILEСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИсточникПравил - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.КодЗадачиПланировщика - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.Размещение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Resource.Путь - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторНаСервере - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИмяФайлаПравил - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.ФорматСвойства - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КаталогИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МинимальноеЗначение - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОбмена - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколСообщенийОбОшибках - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.БезопасныйРежим - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Resource.ХранимыйФайл - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.РаспространяетсяВИерархии - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Год - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РедактированиеТолькоВДиалоге - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Обязательный - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиВыгрузки - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.РезультатВыполненияОбмена - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ОкончаниеДействияБлокировки - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Dimension.НомерВерсии - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Проверяющий - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ВариантРаботыМастера - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.НомерДискаИТС - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.Исполнитель - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Таблица - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоЭлементовВТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.ВидТранспортаСообщенийОбменаПоУмолчанию - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Кратность - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АутентификацияWindowsИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле5 - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилВыгрузки - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.ДатаКурса - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Ответственный - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТипИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Профиль - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Курс - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПоляПоиска - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.ЭлементарныйВопрос - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Dimension.ТипОбъекта - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ШаблонИмениФайлаСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.МаксимальноеЗначение - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ЭтоНастройкаРаспределеннойИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Версия - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеВыводитьНикакихИнформационныхСообщенийПользователю - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияТом - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.АльтернативныеНазвания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ВнутреннийЗаголовок - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.Dimension.ПрисоединенныйФайл - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.Встреча.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ТипТекста - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Пользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.Пользователи.Attribute.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFILE - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьЗаполнениеОбъекта - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсия - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.АвторВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КоличествоОбъектовНаТранзакцию - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ВидимостьПоУмолчанию - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаEMAIL - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВОкноСообщенийИнформационныхСообщений - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле2 - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.СохраненныеНастройки - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Наименование - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ЭлементарныйВопрос - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ДатаВремяОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанныхДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.Значение - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ЭлементарныйВопрос - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаНачала - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ПолноеНаименование - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ДополнительныйОтчетИлиОбработка - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаВнешнейОбработкиОбработчиковСобытий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Вид - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторСообщения - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.ИспользоватьРегламентноеЗадание - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Attribute.Использование - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ОсновнаяВалюта - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Исполнитель - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.TabularSection.Респонденты - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СрокИсполнения - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.Attribute.НачалоПериодаЗагрузки - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Ответственный - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КоличествоКопий - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ПравилаЗачитанные - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НеЗадаватьВопросПриЗагрузкеДанныхПриОткрытииОбработки - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыОбъекта - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.КодТипаРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКакСвязаться - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Тема - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьРегистрыНаборамиЗаписей - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Автор - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Attribute.ОбъектВыгруженПоСсылке - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Стартован - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.УдалитьТипОбъекта - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ИмяПланаОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПроводитьРезервноеКопированиеПриВосстановленииДанных - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ВидТранспортаСообщенийОбмена - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.ТипОтчета - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.РедактированиеШаблонаЗавершено - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.СинхронизироватьПоИдентификатору - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.МестоПроведенияВстречи - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Состояние - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Resource.ИнформацияОПравилах - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Resource.ДеньВключенВГрафик - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Вариант - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РежимОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработкиНастройкиЗагрузки - - View - false - - - Edit - false - - Document.Анкета @@ -7110,1557 +111,6 @@ true - - Document.Анкета.StandardAttribute.Posted - - Edit - false - - - - Document.Анкета.StandardAttribute.Ref - - Edit - false - - - - Document.Анкета.StandardAttribute.DeletionMark - - Edit - false - - - - Document.Анкета.StandardAttribute.Date - - Edit - false - - - - Document.Анкета.StandardAttribute.Number - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Предмет - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.ЭлементарныйВопрос - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаПринятияКИсполнению - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторОснования - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Dimension.БизнесПроцесс - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ТипПриемника - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.Контакт - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.ПометкаУдаления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НомерИтерации - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяВременногоКаталогаСообщенийОбмена - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИмяФайлаНастроекСинхронизацииДанных - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Свойство - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.СтраныМира.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаНастройкиПараметров - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ДатаОкончания - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриВыгрузкеДанных - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Назначение - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Ответ - - Edit - false - - - - Catalog.Файлы.Attribute.ХранитьВерсии - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ГлавнаяЗадача - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ДатаПомещенияВРабочийКаталог - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиПисьма - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.РольИсполнителя - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Resource.УникальныйИдентификаторИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Предмет - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилОчистки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИзменятьВТранзакции - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Type - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Ref - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Date - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Posted - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - DocumentJournal.Взаимодействия.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПлатформыИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.КаталогСРезервнымиКопиями - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.ВсеРазрешены - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовВПриемнике - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.АрхивироватьФайл - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Dimension.ИмяКомпьютера - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.КодДляРазблокировки - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыгружатьТолькоРазрешенные - - View - false - - - Edit - false - - - - Catalog.Организации.Attribute.Префикс - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Attribute.ДатаВерсии - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.МногострочноеПолеВвода - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Attribute.ОткрытыйОтвет - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.ПутьКПрограмме - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИмяТаблицыПриемника - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа.Attribute.УдалитьПользователь - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИспользоватьРасписаниеДляПроверкиОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ЗапомнитьПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьСозданиеСвязанныхОбъектов - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.ОткрытыйОтвет - - Edit - false - - - - DataProcessor.ГрупповоеИзменениеРеквизитов.Attribute.ИспользуютсяДопРеквизиты - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Важность - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Входящий - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИспользоватьПредварительныйПросмотр - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.Наценка - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Resource.Доступно - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВестиДополнительныйКонтрольЗаписиВXML - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий - - View - false - - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Dimension.Анкета - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.Исполнитель @@ -8672,2493 +122,6 @@ false - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Заметки - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВосстанавливатьИнформационнуюБазу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВерсияПравилОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Индекс - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлуОбновления - - View - false - - - Edit - false - - - - InformationRegister.СостоянияОбменовДанными.Resource.ДатаОкончания - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Разделы.Attribute.УдалитьИмяРаздела - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.КоличествоОбъектовСопоставленных - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.Ключ - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.TabularSection.УдалитьИсключенияБыстрогоДоступа - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТипХраненияФайла - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFILE.Attribute.FILEКаталогОбменаИнформацией - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.МаксимальныйРазмер - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРасширение - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительАдрес - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбрезатьСтрокиСправа - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы - - Edit - false - - - - Catalog.Файлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакции - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.РезультатВыполнения - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьLinux - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяКаталогаРезервнойКопииИБ - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.КодВалюты - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Resource.Курс - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипОбъектаСтрокой - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ВариантРасписанияРезервногоКопирования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьОтборПоДатеДляВсехОбъектов - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.ВРабочемКаталогеВладельца - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Версия - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.РеквизитДопУпорядочивания - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЗаписыватьВИнформационнуюБазуТолькоИзмененныеОбъекты - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Attribute.ИдентификаторОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ЗаполнятьАвтоматически - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ТипРеспондентов - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ИдентификаторыОснований - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладкиОбработчиков - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Подпись - - View - false - - - Edit - false - - - - Catalog.Пользователи.Attribute.ИдентификаторПользователяИБ - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияНомерВерсии - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПравилОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ИмяФайлаОбновления - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Attribute.НомерОтправленного - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.ДействиеПриОбмене - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеНастройкиДоступаКОбработкам.Dimension.ИдентификаторКоманды - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыДополнительногоОбъектаАдресации - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ПроцентСопоставленияОбъектов - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Редактирует - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Подтверждено - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ЗагружаетсяИзИнтернета - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Важность - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.СрокПроверки - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Dimension.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Регион - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ИспользоватьФильтрВыборочнойРегистрацииОбъектов - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ПриемникПоле4 - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Dimension.ВидПравил - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияКод - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ТекстХранилище - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.Формулировка - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаНачала - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиСкрытыхКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольИнформационнойБазыДляПодключения - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.РазмерФайлаОбновления - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Наименование - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Пользователь - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.РасписаниеПроверкиНаличияОбновления - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.СертификатыШифрования - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяПланаОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДатаВыгрузкиДанных - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.Длина - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.Код - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ТипОграничения - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле1 - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаНеутвержденныхСвязей.Attribute.ТипИсточника - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Вид - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.EMAILМаксимальныйДопустимыйРазмерСообщения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Resource.Значение - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НепосредственноеЧтениеВИБПриемнике - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.НачалоДействияБлокировки - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ВерсияДляОбновления - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ПарольАдминистратора - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.Attribute.Вес - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Опрос - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ОбъектыАдресацииЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИмяФайла - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Dimension.Узел - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиОтвета.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ЭтоИнтерактивныйРежим - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.Наименование - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЕдиницаИзмеренияПериода - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.УдалитьТипОбъектовАвторизации - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипПриемника - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия4Разряд - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ДополнительныйОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ЗначениеВЕдиницахИзмерения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.НаборыЗначенийДоступа.Attribute.Чтение - - View - false - - - Edit - false - - Report.АналитическийОтчетПоАнкетированию @@ -11170,618 +133,6 @@ true - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ОтправительПредставление - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ЗначенияСвойствОбъектов.StandardAttribute.Code - - View - false - - - Edit - false - - - - InformationRegister.КурсыВалют.Dimension.Валюта - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Важность - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПовторныйЗапуск - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяИнформационнойБазыНаСервереДляПодключения - - View - false - - - Edit - false - - - - DataProcessor.РезервноеКопированиеИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ИмяФайлаПодписи - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.РежимОтладкиАлгоритмов - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляРаспаковкиФайлаОбмена - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.EMAILСжиматьФайлИсходящегоСообщения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ПояснениеКомментария - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Размер - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.Комментарий - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодГородаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Представление - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СтатусПисьма - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Организации.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ЛокальныйОтносительныйКаталог - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияРазмер - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИспользоватьТранзакцииПриВыгрузкеДляПлановОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ТехническаяИнформацияОбОшибке - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаКурсовВалют.TabularSection.СписокВалют.Attribute.Валюта - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодАдресногоОбъектаВКоде - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Resource.Макет - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия1Разряд - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодНаселенногоПунктаВКоде - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УдалитьПароль - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.EMAILУчетнаяЗапись - - View - false - - - Edit - false - - Task.ЗадачаИсполнителя.AddressingAttribute.РольИсполнителя @@ -11793,1718 +144,6 @@ false - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ХранилищеОбработки - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - DataProcessor.ЗагрузкаПравилРегистрацииОбъектов.Attribute.ИмяПланаОбменаДляЗагрузки - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.ДатаСоздания - - View - false - - - Edit - false - - - - Catalog.НаборыДополнительныхРеквизитовИСведений.TabularSection.ДополнительныеРеквизиты.Attribute.Свойство - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Публикация - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Dimension.ТипФормы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ДописыватьДанныеВПротоколОбмена - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяСОбъектамиАдресации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.TabularSection.ПолучателиПисьма.Attribute.Адрес - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Контакт - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПарольСервераОбновлений - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипТабличногоВопроса - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.НомерВерсии - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПредметСтрокой - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты.Attribute.ТекстоваяСтрока - - View - false - - - Edit - false - - - - Catalog.ВариантыОтветовАнкет.Attribute.РеквизитДопУпорядочивания - - Edit - false - - - - InformationRegister.ПутиКПрограммамЭлектроннойПодписиИШифрованияНаСерверахLinux.Resource.Комментарий - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ОтправительКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОбработчикиСобытийЧитаемИзФайлаПравилОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.СписокУчастников - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Dimension.Право - - View - false - - - Edit - false - - - - InformationRegister.УдалитьНастройкиВерсионированияОбъектов.Resource.Использовать - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПорядокЗаполнения - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ДополнительныеРеквизитыИСведения.Attribute.УдалитьСклоненияПредмета - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.СостояниеБизнесПроцесса - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Текст - - View - false - - - Edit - false - - - - InformationRegister.ПравилаДляОбменаДанными.Attribute.ПравилаЗагружены - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ДатаМодификацииУниверсальная - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.Вопрос - - Edit - false - - - - Document.Встреча.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Описание - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.ПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ТипПриемникаСтрокой - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ТипИсточникаСтрокой - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ТипыОсновногоОбъектаАдресации - - View - false - - - Edit - false - - - - Document.Анкета.TabularSection.Состав.Attribute.НомерЯчейки - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.КомуВыданСертификат - - View - false - - - Edit - false - - - - InformationRegister.ДополнительныеСведения.Dimension.Объект - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.StandardAttribute.Code - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.Предмет - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Тип - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Представление - - View - false - - - Edit - false - - - - InformationRegister.НаличиеПрисоединенныхФайлов.Dimension.ОбъектСФайлами - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.СоставТабличногоВопроса.Attribute.ЭлементарныйВопрос - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Состав.Attribute.ВнешнийПользователь - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ШаблоныАнкет.Attribute.Заголовок - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ГруппыПользователей.TabularSection.Состав.Attribute.Пользователь - - View - false - - - Edit - false - - - - Catalog.ВидыКонтактнойИнформации.Attribute.МожноИзменятьСпособРедактирования - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторПриемника - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПостроительОтчета - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.Dimension.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле4 - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.РедактируемыйРаздел - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодУлицыВКоде - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.Attribute.ПолныйПутьWindows - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ИндексКартинки - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.Attribute.ВсеОбъектыАвторизации - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - InformationRegister.ВерсииОбъектов.Resource.ВерсияОбъекта - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.ValueType - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.УдалитьВидыДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ЗначениеДоступа - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаОбмена - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.FTPСоединениеПуть - - View - false - - - Edit - false - - - - InformationRegister.НазначениеДополнительныхОбработок.Resource.ИспользоватьОтчеты - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия3Разряд - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.УстановитьРолиНепосредственно - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.СостоянияУспешныхОбменовДанными.StandardAttribute.Period - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.ДатаЗавершения - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Размер - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Кодировка - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.StandardAttribute.Period - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.РодительВопрос - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.ДатаГрафика - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.ВладелецФайла - - View - false - - - Edit - false - - - - Catalog.ВнешниеПользователи.Attribute.ОбъектАвторизации - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.УдалитьFTPСоединениеПароль - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация - - View - false - - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.Attribute.ТребуетсяКомментарий - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа.Attribute.Изменение - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Пользователь - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.КомментарийПриЗагрузкеДанных - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.НуженФайлОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ОптимизированнаяЗаписьОбъектов - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ПоказыватьВАрхивеАнкет - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.Attribute.ТипВопроса - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ТомаХраненияФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.КодАльфа3 - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ТаблицаПравилКонвертации - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Удалить_РассмотретьПосле - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.Пометка - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.Автор - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.АдресЭлектроннойПочты - - View - false - - - Edit - false - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования @@ -13520,447 +159,6 @@ true - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.ValueType - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Description - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Code - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.IsFolder - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Parent - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Predefined - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.DeletionMark - - Edit - false - - - - ChartOfCharacteristicTypes.ВопросыДляАнкетирования.StandardAttribute.Ref - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Started - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.HeadTask - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Completed - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Ref - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Date - - View - false - - - Edit - false - - - - BusinessProcess.Задание.StandardAttribute.Number - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.Attribute.ПоставляемыйПрофильИзменен - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.StandardAttribute.Period - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПользователь - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.TabularSection.Команды.Attribute.ВариантЗапуска - - View - false - - - Edit - false - - - - DataProcessor.СписокРеспондента.Attribute.Респондент - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.Attribute.Расширение - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПассивноеСоединение - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Resource.Размер - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КоличествоЭлементовВТранзакции - - View - false - - - Edit - false - - - - InformationRegister.СоответствияОбъектовИнформационныхБаз.Dimension.ТипИсточника - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Важность - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.АбонентКонтакт - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ПарольДляСжатияФайлаОбмена - - View - false - - - Edit - false - - - - InformationRegister.ДатыЗапретаИзменения.Dimension.Раздел - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Resource.ДатаПолучения - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.УзелИнформационнойБазы - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ИмяТипаОбъектаТаблицыИсточника - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Том - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.Attribute.СтатусИзвлеченияТекста - - View - false - - - Edit - false - - - - DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз.Attribute.КлючСообщенияЖурналаРегистрации - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.АдресЭП - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаFTP.Attribute.FTPСоединениеПорт - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ИспользоватьПараметрыТранспортаFTP - - View - false - - - Edit - false - - Report.АнализОпроса @@ -13972,1649 +170,4 @@ true - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.Страна - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - InformationRegister.ОбщиеНастройкиУзловИнформационныхБаз.Resource.ВыполнитьКорректировкуИнформацииСопоставления - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.СписокПолейТаблицы - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.Параметры - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.НаборыЗначенийДоступа - - View - false - - - Edit - false - - - - DataProcessor.БлокировкаРаботыПользователей.Attribute.ВременноЗапретитьРаботуПользователей - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.Текст - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ПроверятьНаличиеОбновленияПриЗапуске - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.ДатаПодписи - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.ЕстьВложения - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.ТекстHTML - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.Идентификатор - - View - false - - - Edit - false - - - - InformationRegister.ПользовательскиеМакетыПечати.Dimension.ИмяМакета - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.ПрефиксИнформационнойБазыИсточникаУстановлен - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.ИсточникПоле3 - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.Attribute.Изменил - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.Файлы.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ПапкиФайлов.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.Ответственный - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияПутьКФайлу - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ДанныеУспешноЗагружены - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ПринятаКИсполнению - - View - false - - - Edit - false - - - - InformationRegister.ДанныеБизнесПроцессов.Resource.Номер - - View - false - - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.TabularSection.ИнформацияСтатистики.Attribute.ЭтоУдалениеОбъекта - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиКопий.Attribute.Адрес - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Сертификат - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяВременногоФайлаОбработчиковСобытий - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.StandardAttribute.Code - - View - false - - - Edit - false - - - - DataProcessor.ПомощникСозданияОбменаДанными.Attribute.НаименованиеЭтойБазы - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.Информация - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.TabularSection.ЭлектронныеПодписи.Attribute.Сертификат - - View - false - - - Edit - false - - - - Catalog.ТелефонныйЗвонокПрисоединенныеФайлы.TabularSection.СертификатыШифрования.Attribute.Представление - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияАвтор - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Предмет - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.ПрисоединенныеФайлы.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.ВыслатьОтчетНаПочту - - View - false - - - Edit - false - - - - DataProcessor.ТранспортСообщенийОбменаEMAIL.Attribute.ПарольАрхиваСообщенияОбмена - - View - false - - - Edit - false - - - - Catalog.РолиИсполнителей.Attribute.ИспользуетсяБезОбъектовАдресации - - View - false - - - Edit - false - - - - InformationRegister.ИдентификаторыПолученныхЭлектронныхПисем.Dimension.УчетнаяЗапись - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.УстановившийПодпись - - View - false - - - Edit - false - - - - Catalog.ГруппыДоступа.TabularSection.ЗначенияДоступа.Attribute.ВидДоступа - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.Attribute.Комментарий - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - View - false - - - Edit - false - - - - Document.Встреча.TabularSection.Участники.Attribute.КакСвязаться - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.НастройкаАвтоматическойЗагрузкиДанных - - View - false - - - Edit - false - - - - Catalog.ВопросыШаблонаАнкеты.TabularSection.ПредопределенныеОтветы.Attribute.Ответ - - Edit - false - - - - Catalog.ГруппыИсполнителейЗадач.Attribute.ОсновнойОбъектАдресации - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.УдалитьПредставлениеОбъекта - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Active - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.LineNumber - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Recorder - - View - false - - - Edit - false - - - - InformationRegister.РабочиеКаталогиФайлов.StandardAttribute.Period - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Версия - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефона - - View - false - - - Edit - false - - - - BusinessProcess.Задание.Attribute.НаПроверке - - View - false - - - Edit - false - - - - Catalog.ВстречаПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - InformationRegister.НастройкиТранспортаОбмена.Resource.FTPСоединениеПуть - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.Attribute.СписокПолучателейПисьма - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыполнитьОбменДаннымиВОптимизированномФормате - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Predefined - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.IsFolder - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Owner - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Parent - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Description - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.StandardAttribute.Code - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоВходящееПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Отпечаток - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.Attribute.СоздаватьРезервнуюКопию - - View - false - - - Edit - false - - - - Catalog.ГруппыВнешнихПользователей.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.Роли.Attribute.УдалитьРоль - - View - false - - - Edit - false - - - - Document.Встреча.Attribute.Описание - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.TabularSection.ПолучателиОтвета.Attribute.Контакт - - View - false - - - Edit - false - - - - Catalog.Файлы.TabularSection.ДополнительныеРеквизиты - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.ДоменноеИмяСервера - - View - false - - - Edit - false - - - - Catalog.СценарииОбменовДанными.TabularSection.НастройкиОбмена.Attribute.ВидТранспортаОбмена - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Posted - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Ref - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.DeletionMark - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Date - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоВходящее.StandardAttribute.Number - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКЛокальномуФайлу - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Описание - - View - false - - - Edit - false - - - - Catalog.Организации.TabularSection.КонтактнаяИнформация.Attribute.НомерТелефонаБезКодов - - View - false - - - Edit - false - - - - DataProcessor.НастройкаРезервногоКопированияИБ.Attribute.ФайлЗагрузкиРезервнойКопии - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Resource.Сокращение - - View - false - - - Edit - false - - - - Document.ЭлектронноеПисьмоИсходящее.Attribute.СписокПолучателейСкрытыхКопий - - View - false - - - Edit - false - - - - Document.Анкета.Attribute.Респондент - - Edit - false - - - - InformationRegister.ОтветыНаВопросыАнкет.Resource.Ответ - - Edit - false - - - - DataProcessor.ПомощникИнтерактивногоОбменаДанными.Attribute.ИмяФайлаСообщенияОбмена - - View - false - - - Edit - false - - - - InformationRegister.УдалитьАдресныйКлассификатор.Dimension.КодРайонаВКоде - - View - false - - - Edit - false - - - - InformationRegister.ИсполнителиЗадач.Attribute.ГруппаИсполнителейЗадач - - View - false - - - Edit - false - - - - Catalog.СтраныМира.Attribute.НаименованиеПолное - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.ДатаИсполнения - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.Зашифрован - - View - false - - - Edit - false - - - - Catalog.ВариантыОтчетов.Attribute.Настройки - - View - false - - - Edit - false - - - - Document.ЗапланированноеВзаимодействие.TabularSection.Участники.Attribute.ПредставлениеКонтакта - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.ПутьКФайлуОбновления - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ФлагРежимОтладки - - View - false - - - Edit - false - - - - Catalog.Файлы.Attribute.ТекущаяВерсияДатаСоздания - - View - false - - - Edit - false - - - - Document.НазначениеОпросов.Attribute.ШаблонАнкеты - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки.Attribute.НаправлениеСортировки - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.Attribute.Удалить_Рассмотрено - - View - false - - - Edit - false - - - - Catalog.ЭлектронноеПисьмоИсходящееПрисоединенныеФайлы.Attribute.ПодписанЭП - - View - false - - - Edit - false - - - - InformationRegister.ФайлыВРабочемКаталоге.Dimension.Пользователь - - View - false - - - Edit - false - - - - Catalog.ЗапланированноеВзаимодействиеПрисоединенныеФайлы.TabularSection.ЭлектронныеПодписи.Attribute.Комментарий - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.Attribute.ПоляПоискаТаблицыПриемника - - View - false - - - Edit - false - - - - InformationRegister.СоставыГруппПользователей.Dimension.ГруппаПользователей - - View - false - - - Edit - false - - - - Catalog.ПрофилиГруппДоступа.TabularSection.ВидыДоступа.Attribute.Предустановленный - - View - false - - - Edit - false - - - - InformationRegister.НомераОтсканированныхФайлов.Dimension.Владелец - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ИмяФайлаПротоколаОбмена - - View - false - - - Edit - false - - - - DataProcessor.УниверсальныйОбменДаннымиXML.Attribute.ВыводВПротоколИнформационныхСообщений - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Поставщик - - View - false - - - Edit - false - - - - DataProcessor.ПоискИУстановкаОбновлений.TabularSection.ДоступныеОбновления.Attribute.Конфигурация - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаСортировки - - View - false - - - Edit - false - - - - Task.ЗадачаИсполнителя.Attribute.Автор - - View - false - - - Edit - false - - - - Catalog.ДополнительныеОтчетыИОбработки.Attribute.ИспользоватьДляФормыСписка - - View - false - - - Edit - false - - - - Catalog.Пользователи.TabularSection.КонтактнаяИнформация.Attribute.Город - - View - false - - - Edit - false - - - - Catalog.Валюты.Attribute.ПараметрыПрописиНаРусском - - View - false - - - Edit - false - - - - DataProcessor.СопоставлениеОбъектовИнформационныхБаз.TabularSection.ТаблицаАвтоматическиСопоставленныхОбъектов.Attribute.УникальныйИдентификаторИсточника - - View - false - - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - View - false - - - Edit - false - - - - InformationRegister.УдалитьПраваПоЗначениямДоступа.Resource.Запрещено - - View - false - - - Edit - false - - - - Document.ТелефонныйЗвонок.TabularSection.НаборыЗначенийДоступа.Attribute.НомерНабора - - View - false - - - Edit - false - - - - InformationRegister.КалендарныеГрафики.Dimension.Календарь - - View - false - - - Edit - false - - - - Catalog.ВерсииФайлов.Attribute.ФайлХранилище - - View - false - - - Edit - false - - diff --git a/SSL/src/Roles/ИспользованиеУчетныхЗаписейЭлектроннойПочты/Rights.rights b/SSL/src/Roles/ЧтениеУчетныхЗаписейЭлектроннойПочты/Rights.rights similarity index 85% rename from SSL/src/Roles/ИспользованиеУчетныхЗаписейЭлектроннойПочты/Rights.rights rename to SSL/src/Roles/ЧтениеУчетныхЗаписейЭлектроннойПочты/Rights.rights index a287b48da..1d9420475 100644 --- a/SSL/src/Roles/ИспользованиеУчетныхЗаписейЭлектроннойПочты/Rights.rights +++ b/SSL/src/Roles/ЧтениеУчетныхЗаписейЭлектроннойПочты/Rights.rights @@ -3,48 +3,6 @@ false true false - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПароль - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособSMTPАутентификации - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьПарольSMTP - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляОтправки - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.SMTPАутентификация - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ОставлятьКопииСообщенийНаСервере - - Edit - false - - Catalog.УчетныеЗаписиЭлектроннойПочты.Command.ПроверитьУчетнуюЗапись @@ -52,20 +10,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьОтветственныйЗаОбработкуПисем - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераИсходящейПочты - - Edit - false - - Catalog.УчетныеЗаписиЭлектроннойПочты @@ -86,125 +30,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Predefined - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Ref - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.DeletionMark - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.IsFolder - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Owner - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Parent - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Description - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.StandardAttribute.Code - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверВходящейПочты - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПользовательSMTP - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИспользоватьДляПолучения - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ВремяОжидания - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.АдресЭлектроннойПочты - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.УдалитьВПредставлениеВключатьИмяПользователя - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПортСервераВходящейПочты - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ПериодХраненияСообщенийНаСервере - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.ИмяПользователя - - Edit - false - - CommonForm.ОтправкаСообщения @@ -212,20 +37,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.Пользователь - - Edit - false - - - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СерверИсходящейПочты - - Edit - false - - CommonForm.ВыборПолучателейСообщения @@ -233,13 +44,6 @@ true - - Catalog.УчетныеЗаписиЭлектроннойПочты.Attribute.СпособPOP3Аутентификации - - Edit - false - - ПоЗначениям // ПоЗначениям(Таблица, -, Модификатор, В1,П1, В2,П2, ..., В(n), П(n)). @@ -254,13 +58,15 @@ // В(n) - Вид доступа - имя вида доступа, например, "Организации". Для полей составного типа, с целью повышения // производительности, лучше указать несколько имен, например, "Организации,ГруппыФизическихЛиц", // чем использовать несколько блоков параметров, с одним и тем же именем поля. -// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения" -// можно использовать только отдельно. +// Специальные виды доступа "Условие", "НастройкиПрав", "ПравоЧтения", "ПравоИзменения", +// "ПравоЧтенияПоИдентификатору", "ПравоИзмененияПоИдентификатору" можно использовать только отдельно. // Когда В(n) = "Условие" (или ""), тогда П(n) содержит строку условия на языке запросов, например // "Т.Автор = &АвторизованныйПользователь", // "ТИПЗНАЧЕНИЯ(Т.Владелец) = ТИП(Справочник.Организации)", где Т - псевдоним текущей таблицы. // Когда В(n) = "ПравоЧтения" Или "ПравоИзменения", // выполняется проверка наличия права на таблицу значения Т.П(n). +// Когда В(n) = "ПравоЧтенияПоИдентификатору" или "ПравоИзмененияПоИдентификатору", +// выполняется проверка наличия права на таблицу по идентификатору в значении Т.П(n). // П(n) - Поле проверяемого значения, кроме случая В(n) = "Условие" (или ""). // Примечение: максимальное количество одновременно проверяемых значений полей можно увеличить, изменив шаблон, но // необходимо будет указывать все параметры шаблона, т.е. указывать пустые строки, когда количество полей меньше максимального. @@ -294,73 +100,105 @@ // Общая проверка использования ограничений доступа на уровне записей и // проверка использования хотя бы одного ограничения из указанных видов доступа. -#Если &ОграничиватьДоступНаУровнеЗаписей - И Не (Истина +#Если Не + ( Истина И ("#Параметр(4)" = "" И "#Параметр(5)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(4),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(4),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(4),")) И ("#Параметр(6)" = "" И "#Параметр(7)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(6),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(6),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(6),")) И ("#Параметр(8)" = "" И "#Параметр(9)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(8),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(8),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(8),")) И ("#Параметр(10)" = "" И "#Параметр(11)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(10),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(10),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(10),")) И ("#Параметр(12)" = "" И "#Параметр(13)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(12),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(12),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(12),")) И ("#Параметр(14)" = "" И "#Параметр(15)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(14),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(14),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(14),")) И ("#Параметр(16)" = "" И "#Параметр(17)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(16),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(16),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(16),")) И ("#Параметр(18)" = "" И "#Параметр(19)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(18),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(18),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(18),")) И ("#Параметр(20)" = "" И "#Параметр(21)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(20),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(20),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(20),")) И ("#Параметр(22)" = "" И "#Параметр(23)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(22),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(22),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(22),")) И ("#Параметр(24)" = "" И "#Параметр(25)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(24),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(24),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(24),")) И ("#Параметр(26)" = "" И "#Параметр(27)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(26),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(26),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(26),")) И ("#Параметр(28)" = "" И "#Параметр(29)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(28),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(28),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(28),")) И ("#Параметр(30)" = "" И "#Параметр(31)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(30),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(30),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(30),")) И ("#Параметр(32)" = "" И "#Параметр(33)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(32),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(32),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(32),")) И ("#Параметр(34)" = "" И "#Параметр(35)" = "" + Или Не &ОграничениеДоступаНаУровнеЗаписейВключено + И Не СтрСодержит(",Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или &ВидыДоступаСОтключеннымИспользованием = "Все" - И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,", ",#Параметр(34),") + И Не СтрСодержит(",Условие,,НастройкиПрав,Объект, ,ПравоЧтения,ПравоИзменения,ПравоЧтенияПоИдентификатору,ПравоИзмененияПоИдентификатору,", ",#Параметр(34),") Или СтрСодержит(&ВидыДоступаСОтключеннымИспользованием, ",#Параметр(34),")) - ) #Тогда + ) #Тогда Т ГДЕ // Т - псевдоним текущей таблицы (выбран коротким, чтобы сократить количество символов в тексте параметра-условия на языке запросов). @@ -405,7 +243,7 @@ ( // Поиск значений заданных полей в разрешенных значениях групп доступа (пользователей). //// Проверка значения поля группы параметров 1. -#Если "#Параметр(4)" = "Условие" Или "#Параметр(4)" = "" #Тогда +#Если &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(4)" = "Условие" Или "#Параметр(4)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. ( #Параметр(5) ) #ИначеЕсли "#Параметр(4)" = "ПравоЧтения" Или "#Параметр(4)" = "ПравоИзменения" #Тогда @@ -421,6 +259,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(4)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(5) + #Если Не "#Параметр(4)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + ИСТИНА // Группа параметров отключена. #ИначеЕсли "#Параметр(4)" = "НастройкиПрав" #Тогда ( @@ -509,7 +361,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(5) - #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(5)" = "Т.Ссылка" + И "#Параметр(4)" <> "Пользователи" + И "#Параметр(4)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(4)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(4)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -564,7 +418,7 @@ //// Проверка значения поля группы параметров 2. #Если "#Параметр(6)" = "" И "#Параметр(7)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(6)" = "Условие" Или "#Параметр(6)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(6)" = "Условие" Или "#Параметр(6)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(7) ) #ИначеЕсли "#Параметр(6)" = "ПравоЧтения" Или "#Параметр(6)" = "ПравоИзменения" #Тогда @@ -580,6 +434,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(6)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(7) + #Если Не "#Параметр(6)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(6)" = "НастройкиПрав" #Тогда И ( @@ -668,7 +536,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(7) - #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(7)" = "Т.Ссылка" + И "#Параметр(6)" <> "Пользователи" + И "#Параметр(6)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(6)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(6)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -721,7 +591,7 @@ //// Проверка значения поля группы параметров 3. #Если "#Параметр(8)" = "" И "#Параметр(9)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(8)" = "Условие" Или "#Параметр(8)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(8)" = "Условие" Или "#Параметр(8)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(9) ) #ИначеЕсли "#Параметр(8)" = "ПравоЧтения" Или "#Параметр(8)" = "ПравоИзменения" #Тогда @@ -737,6 +607,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(8)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(9) + #Если Не "#Параметр(8)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(8)" = "НастройкиПрав" #Тогда И ( @@ -825,7 +709,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(9) - #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(9)" = "Т.Ссылка" + И "#Параметр(8)" <> "Пользователи" + И "#Параметр(8)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(8)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(8)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -878,7 +764,7 @@ //// Проверка значения поля группы параметров 4. #Если "#Параметр(10)" = "" И "#Параметр(11)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(10)" = "Условие" Или "#Параметр(10)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(10)" = "Условие" Или "#Параметр(10)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(11) ) #ИначеЕсли "#Параметр(10)" = "ПравоЧтения" Или "#Параметр(10)" = "ПравоИзменения" #Тогда @@ -894,6 +780,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(10)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(11) + #Если Не "#Параметр(10)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(10)" = "НастройкиПрав" #Тогда И ( @@ -982,7 +882,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(11) - #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(11)" = "Т.Ссылка" + И "#Параметр(10)" <> "Пользователи" + И "#Параметр(10)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(10)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(10)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1035,7 +937,7 @@ //// Проверка значения поля группы параметров 5. #Если "#Параметр(12)" = "" И "#Параметр(13)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(12)" = "Условие" Или "#Параметр(12)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(12)" = "Условие" Или "#Параметр(12)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(13) ) #ИначеЕсли "#Параметр(12)" = "ПравоЧтения" Или "#Параметр(12)" = "ПравоИзменения" #Тогда @@ -1051,6 +953,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(12)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(13) + #Если Не "#Параметр(12)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(12)" = "НастройкиПрав" #Тогда И ( @@ -1139,7 +1055,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(13) - #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(13)" = "Т.Ссылка" + И "#Параметр(12)" <> "Пользователи" + И "#Параметр(12)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(12)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(12)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1192,7 +1110,7 @@ //// Проверка значения поля группы параметров 6. #Если "#Параметр(14)" = "" И "#Параметр(15)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(14)" = "Условие" Или "#Параметр(14)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(14)" = "Условие" Или "#Параметр(14)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(15) ) #ИначеЕсли "#Параметр(14)" = "ПравоЧтения" Или "#Параметр(14)" = "ПравоИзменения" #Тогда @@ -1208,6 +1126,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(14)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(15) + #Если Не "#Параметр(14)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(14)" = "НастройкиПрав" #Тогда И ( @@ -1296,7 +1228,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(15) - #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(15)" = "Т.Ссылка" + И "#Параметр(14)" <> "Пользователи" + И "#Параметр(14)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(14)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(14)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1349,7 +1283,7 @@ //// Проверка значения поля группы параметров 7. #Если "#Параметр(16)" = "" И "#Параметр(17)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(16)" = "Условие" Или "#Параметр(16)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(16)" = "Условие" Или "#Параметр(16)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(17) ) #ИначеЕсли "#Параметр(16)" = "ПравоЧтения" Или "#Параметр(16)" = "ПравоИзменения" #Тогда @@ -1365,6 +1299,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(16)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(17) + #Если Не "#Параметр(16)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(16)" = "НастройкиПрав" #Тогда И ( @@ -1453,7 +1401,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(17) - #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(17)" = "Т.Ссылка" + И "#Параметр(16)" <> "Пользователи" + И "#Параметр(16)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(16)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(16)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1506,7 +1456,7 @@ //// Проверка значения поля группы параметров 8. #Если "#Параметр(18)" = "" И "#Параметр(19)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(18)" = "Условие" Или "#Параметр(18)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(18)" = "Условие" Или "#Параметр(18)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(19) ) #ИначеЕсли "#Параметр(18)" = "ПравоЧтения" Или "#Параметр(18)" = "ПравоИзменения" #Тогда @@ -1522,6 +1472,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(18)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(19) + #Если Не "#Параметр(18)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(18)" = "НастройкиПрав" #Тогда И ( @@ -1610,7 +1574,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(19) - #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(19)" = "Т.Ссылка" + И "#Параметр(18)" <> "Пользователи" + И "#Параметр(18)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(18)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(18)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1663,7 +1629,7 @@ //// Проверка значения поля группы параметров 9. #Если "#Параметр(20)" = "" И "#Параметр(21)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(20)" = "Условие" Или "#Параметр(20)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(20)" = "Условие" Или "#Параметр(20)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(21) ) #ИначеЕсли "#Параметр(20)" = "ПравоЧтения" Или "#Параметр(20)" = "ПравоИзменения" #Тогда @@ -1679,6 +1645,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(20)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(21) + #Если Не "#Параметр(20)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(20)" = "НастройкиПрав" #Тогда И ( @@ -1767,7 +1747,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(21) - #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(21)" = "Т.Ссылка" + И "#Параметр(20)" <> "Пользователи" + И "#Параметр(20)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(20)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(20)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1820,7 +1802,7 @@ //// Проверка значения поля группы параметров 10. #Если "#Параметр(22)" = "" И "#Параметр(23)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(22)" = "Условие" Или "#Параметр(22)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(22)" = "Условие" Или "#Параметр(22)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(23) ) #ИначеЕсли "#Параметр(22)" = "ПравоЧтения" Или "#Параметр(22)" = "ПравоИзменения" #Тогда @@ -1836,6 +1818,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(22)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(23) + #Если Не "#Параметр(22)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(22)" = "НастройкиПрав" #Тогда И ( @@ -1924,7 +1920,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(23) - #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(23)" = "Т.Ссылка" + И "#Параметр(22)" <> "Пользователи" + И "#Параметр(22)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(22)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(22)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -1977,7 +1975,7 @@ //// Проверка значения поля группы параметров 11. #Если "#Параметр(24)" = "" И "#Параметр(25)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(24)" = "Условие" Или "#Параметр(24)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(24)" = "Условие" Или "#Параметр(24)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(25) ) #ИначеЕсли "#Параметр(24)" = "ПравоЧтения" Или "#Параметр(24)" = "ПравоИзменения" #Тогда @@ -1993,6 +1991,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(24)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(25) + #Если Не "#Параметр(24)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(24)" = "НастройкиПрав" #Тогда И ( @@ -2081,7 +2093,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(25) - #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(25)" = "Т.Ссылка" + И "#Параметр(24)" <> "Пользователи" + И "#Параметр(24)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(24)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(24)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2134,7 +2148,7 @@ //// Проверка значения поля группы параметров 12. #Если "#Параметр(26)" = "" И "#Параметр(27)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(26)" = "Условие" Или "#Параметр(26)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(26)" = "Условие" Или "#Параметр(26)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(27) ) #ИначеЕсли "#Параметр(26)" = "ПравоЧтения" Или "#Параметр(26)" = "ПравоИзменения" #Тогда @@ -2150,6 +2164,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(26)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(27) + #Если Не "#Параметр(26)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(26)" = "НастройкиПрав" #Тогда И ( @@ -2238,7 +2266,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(27) - #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(27)" = "Т.Ссылка" + И "#Параметр(26)" <> "Пользователи" + И "#Параметр(26)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(26)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(26)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2291,7 +2321,7 @@ //// Проверка значения поля группы параметров 13. #Если "#Параметр(28)" = "" И "#Параметр(29)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(28)" = "Условие" Или "#Параметр(28)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(28)" = "Условие" Или "#Параметр(28)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(29) ) #ИначеЕсли "#Параметр(28)" = "ПравоЧтения" Или "#Параметр(28)" = "ПравоИзменения" #Тогда @@ -2307,6 +2337,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(28)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(29) + #Если Не "#Параметр(28)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(28)" = "НастройкиПрав" #Тогда И ( @@ -2395,7 +2439,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(29) - #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(29)" = "Т.Ссылка" + И "#Параметр(28)" <> "Пользователи" + И "#Параметр(28)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(28)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(28)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2448,7 +2494,7 @@ //// Проверка значения поля группы параметров 14. #Если "#Параметр(30)" = "" И "#Параметр(31)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(30)" = "Условие" Или "#Параметр(30)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(30)" = "Условие" Или "#Параметр(30)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(31) ) #ИначеЕсли "#Параметр(30)" = "ПравоЧтения" Или "#Параметр(30)" = "ПравоИзменения" #Тогда @@ -2464,6 +2510,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(30)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(31) + #Если Не "#Параметр(30)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(30)" = "НастройкиПрав" #Тогда И ( @@ -2552,7 +2612,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(31) - #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(31)" = "Т.Ссылка" + И "#Параметр(30)" <> "Пользователи" + И "#Параметр(30)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(30)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(30)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2605,7 +2667,7 @@ //// Проверка значения поля группы параметров 15. #Если "#Параметр(32)" = "" И "#Параметр(33)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(32)" = "Условие" Или "#Параметр(32)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(32)" = "Условие" Или "#Параметр(32)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(33) ) #ИначеЕсли "#Параметр(32)" = "ПравоЧтения" Или "#Параметр(32)" = "ПравоИзменения" #Тогда @@ -2621,6 +2683,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(32)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(33) + #Если Не "#Параметр(32)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(32)" = "НастройкиПрав" #Тогда И ( @@ -2709,7 +2785,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(33) - #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(33)" = "Т.Ссылка" + И "#Параметр(32)" <> "Пользователи" + И "#Параметр(32)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(32)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(32)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" @@ -2762,7 +2840,7 @@ //// Проверка значения поля группы параметров 16. #Если "#Параметр(34)" = "" И "#Параметр(35)" = "" #Тогда // Группа параметров не используется. -#ИначеЕсли "#Параметр(34)" = "Условие" Или "#Параметр(34)" = "" #Тогда +#ИначеЕсли &ОграничениеДоступаНаУровнеЗаписейВключено И ("#Параметр(34)" = "Условие" Или "#Параметр(34)" = "") #Тогда // Когда имя вида доступа "Условие" (или ""), тогда вместо имени поля задано условие. И ( #Параметр(35) ) #ИначеЕсли "#Параметр(34)" = "ПравоЧтения" Или "#Параметр(34)" = "ПравоИзменения" #Тогда @@ -2778,6 +2856,20 @@ И ТаблицыГруппДоступаПроверкаПрава.Изменение #КонецЕсли ) +#ИначеЕсли "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" Или "#Параметр(34)" = "ПравоИзмененияПоИдентификатору" #Тогда + ИСТИНА В + ( // Проверка права пользователя на таблицу, идентификатор которой указан в Значении, установленном в поле. + ВЫБРАТЬ ПЕРВЫЕ 1 ИСТИНА + ИЗ РегистрСведений.ТаблицыГруппДоступа КАК ТаблицыГруппДоступаПроверкаПрава + ГДЕ + ТаблицыГруппДоступаПроверкаПрава.ГруппаДоступа = ГруппыДоступа.Ссылка + И ТаблицыГруппДоступаПроверкаПрава.Таблица = Т.#Параметр(35) + #Если Не "#Параметр(34)" = "ПравоЧтенияПоИдентификатору" #Тогда + И ТаблицыГруппДоступаПроверкаПрава.Изменение + #КонецЕсли + ) +#ИначеЕсли Не &ОграничениеДоступаНаУровнеЗаписейВключено #Тогда + // Группа параметров отключена. #ИначеЕсли "#Параметр(34)" = "НастройкиПрав" #Тогда И ( @@ -2866,7 +2958,9 @@ ГДЕ Значения.ГруппаДоступа = ГруппыДоступа.Ссылка И Значения.ЗначениеДоступа = Т.#Параметр(35) - #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" #Тогда + #ИначеЕсли "Т.#Параметр(35)" = "Т.Ссылка" + И "#Параметр(34)" <> "Пользователи" + И "#Параметр(34)" <> "ВнешниеПользователи" #Тогда #Если СтрСодержит("#Параметр(34)", ",") #Тогда // Когда параметр задан неверно, вставляется строка, чтобы вызвать ошибку сборки ограничения доступа. НеверныйВидДоступа: "#Параметр(34)" - "При проверке таблицы значения доступа можно указывать только один вид доступа" diff --git a/SSL/src/Roles/ИспользованиеУчетныхЗаписейЭлектроннойПочты/ИспользованиеУчетныхЗаписейЭлектроннойПочты.mdo b/SSL/src/Roles/ЧтениеУчетныхЗаписейЭлектроннойПочты/ЧтениеУчетныхЗаписейЭлектроннойПочты.mdo similarity index 50% rename from SSL/src/Roles/ИспользованиеУчетныхЗаписейЭлектроннойПочты/ИспользованиеУчетныхЗаписейЭлектроннойПочты.mdo rename to SSL/src/Roles/ЧтениеУчетныхЗаписейЭлектроннойПочты/ЧтениеУчетныхЗаписейЭлектроннойПочты.mdo index 900d32f2c..ba6214ea0 100644 --- a/SSL/src/Roles/ИспользованиеУчетныхЗаписейЭлектроннойПочты/ИспользованиеУчетныхЗаписейЭлектроннойПочты.mdo +++ b/SSL/src/Roles/ЧтениеУчетныхЗаписейЭлектроннойПочты/ЧтениеУчетныхЗаписейЭлектроннойПочты.mdo @@ -1,8 +1,8 @@ - ИспользованиеУчетныхЗаписейЭлектроннойПочты + ЧтениеУчетныхЗаписейЭлектроннойПочты ru - Использование учетных записей электронной почты + Чтение учетных записей электронной почты diff --git a/SSL/src/ScheduledJobs/ЗагрузкаКлассификатораБанковРФССайтаРБК/ЗагрузкаКлассификатораБанковРФССайтаРБК.mdo b/SSL/src/ScheduledJobs/ЗагрузкаКлассификатораБанковРФССайтаРБК/ЗагрузкаКлассификатораБанковРФССайтаРБК.mdo index 4e47d187c..d30be0bb7 100644 --- a/SSL/src/ScheduledJobs/ЗагрузкаКлассификатораБанковРФССайтаРБК/ЗагрузкаКлассификатораБанковРФССайтаРБК.mdo +++ b/SSL/src/ScheduledJobs/ЗагрузкаКлассификатораБанковРФССайтаРБК/ЗагрузкаКлассификатораБанковРФССайтаРБК.mdo @@ -3,12 +3,11 @@ ЗагрузкаКлассификатораБанковРФССайтаРБК ru - Загрузка классификатора банков РФ с сайта РБК + Загрузка классификатора банков РФ с сайта 1С CommonModule.РаботаСБанками.ЗагрузитьКлассификаторБанков Загрузка классификатора банков - true true - 3 - 3600 + 10 + 600 diff --git a/SSL/src/ScheduledJobs/ЗагрузкаКурсовВалют/ЗагрузкаКурсовВалют.mdo b/SSL/src/ScheduledJobs/ЗагрузкаКурсовВалют/ЗагрузкаКурсовВалют.mdo index 0d69153ad..7b361b628 100644 --- a/SSL/src/ScheduledJobs/ЗагрузкаКурсовВалют/ЗагрузкаКурсовВалют.mdo +++ b/SSL/src/ScheduledJobs/ЗагрузкаКурсовВалют/ЗагрузкаКурсовВалют.mdo @@ -7,8 +7,7 @@ CommonModule.РаботаСКурсамиВалют.ЗагрузитьАктуальныйКурс Загрузка курсов валют - true true - 3 - 10 + 10 + 600 diff --git a/SSL/src/ScheduledJobs/ОбновлениеСтатусовДоставкиSMS/Schedule.schedule b/SSL/src/ScheduledJobs/ОбновлениеСтатусовДоставкиSMS/Schedule.schedule new file mode 100644 index 000000000..e29a4fbc5 --- /dev/null +++ b/SSL/src/ScheduledJobs/ОбновлениеСтатусовДоставкиSMS/Schedule.schedule @@ -0,0 +1,22 @@ + + + Mon + Tue + Wed + Thu + Fri + Sat + Sun + Jan + Feb + Mar + Apr + May + Jun + Jul + Aug + Sep + Oct + Nov + Dec + diff --git a/SSL/src/ScheduledJobs/ОтправкаSMS/Schedule.schedule b/SSL/src/ScheduledJobs/ОтправкаSMS/Schedule.schedule new file mode 100644 index 000000000..e29a4fbc5 --- /dev/null +++ b/SSL/src/ScheduledJobs/ОтправкаSMS/Schedule.schedule @@ -0,0 +1,22 @@ + + + Mon + Tue + Wed + Thu + Fri + Sat + Sun + Jan + Feb + Mar + Apr + May + Jun + Jul + Aug + Sep + Oct + Nov + Dec + diff --git a/SSL/src/ScheduledJobs/ОчисткаЗамеровВремени/Schedule.schedule b/SSL/src/ScheduledJobs/ОчисткаЗамеровВремени/Schedule.schedule new file mode 100644 index 000000000..08591dd14 --- /dev/null +++ b/SSL/src/ScheduledJobs/ОчисткаЗамеровВремени/Schedule.schedule @@ -0,0 +1,22 @@ + + + Mon + Tue + Wed + Thu + Fri + Sat + Sun + Jan + Feb + Mar + Apr + May + Jun + Jul + Aug + Sep + Oct + Nov + Dec + diff --git a/SSL/src/ScheduledJobs/ОчисткаЗамеровВремени/ОчисткаЗамеровВремени.mdo b/SSL/src/ScheduledJobs/ОчисткаЗамеровВремени/ОчисткаЗамеровВремени.mdo new file mode 100644 index 000000000..0bd8dc4fe --- /dev/null +++ b/SSL/src/ScheduledJobs/ОчисткаЗамеровВремени/ОчисткаЗамеровВремени.mdo @@ -0,0 +1,14 @@ + + + ОчисткаЗамеровВремени + + ru + Очистка замеров времени + + CommonModule.ОценкаПроизводительности.ОчиститьРегистрыЗамерыВремени + Очистка замеров времени + 5f065447-9809-4aae-80f2-c3a30e48e9b1 + true + 3 + 10 + diff --git a/SSL/src/ScheduledJobs/СтартОтложенныхПроцессов/Schedule.schedule b/SSL/src/ScheduledJobs/СтартОтложенныхПроцессов/Schedule.schedule new file mode 100644 index 000000000..d07ba5a6e --- /dev/null +++ b/SSL/src/ScheduledJobs/СтартОтложенныхПроцессов/Schedule.schedule @@ -0,0 +1,22 @@ + + + Mon + Tue + Wed + Thu + Fri + Sat + Sun + Jan + Feb + Mar + Apr + May + Jun + Jul + Aug + Sep + Oct + Nov + Dec + diff --git a/SSL/src/ScheduledJobs/СтартОтложенныхПроцессов/СтартОтложенныхПроцессов.mdo b/SSL/src/ScheduledJobs/СтартОтложенныхПроцессов/СтартОтложенныхПроцессов.mdo new file mode 100644 index 000000000..c1549d7c6 --- /dev/null +++ b/SSL/src/ScheduledJobs/СтартОтложенныхПроцессов/СтартОтложенныхПроцессов.mdo @@ -0,0 +1,14 @@ + + + СтартОтложенныхПроцессов + + ru + Старт отложенных процессов + + CommonModule.БизнесПроцессыИЗадачиСобытия.СтартОтложенныхПроцессов + Старт отложенных процессов + true + true + 3 + 10 + diff --git a/SSL/src/SessionParameters/КомментарийЗамераВремени/КомментарийЗамераВремени.mdo b/SSL/src/SessionParameters/КомментарийЗамераВремени/КомментарийЗамераВремени.mdo index f95804a25..663616f57 100644 --- a/SSL/src/SessionParameters/КомментарийЗамераВремени/КомментарийЗамераВремени.mdo +++ b/SSL/src/SessionParameters/КомментарийЗамераВремени/КомментарийЗамераВремени.mdo @@ -8,7 +8,7 @@ String - 256 + 1000 diff --git a/SSL/src/SessionParameters/ОграничениеДоступаНаУровнеЗаписейВключено/ОграничениеДоступаНаУровнеЗаписейВключено.mdo b/SSL/src/SessionParameters/ОграничениеДоступаНаУровнеЗаписейВключено/ОграничениеДоступаНаУровнеЗаписейВключено.mdo new file mode 100644 index 000000000..6ed4d2d76 --- /dev/null +++ b/SSL/src/SessionParameters/ОграничениеДоступаНаУровнеЗаписейВключено/ОграничениеДоступаНаУровнеЗаписейВключено.mdo @@ -0,0 +1,11 @@ + + + ОграничениеДоступаНаУровнеЗаписейВключено + + ru + Ограничение доступа на уровне записей включено + + + Boolean + + diff --git a/SSL/src/SessionParameters/АдресСвойствРасширений/АдресСвойствРасширений.mdo b/SSL/src/SessionParameters/ПодключенныеРасширения/ПодключенныеРасширения.mdo similarity index 70% rename from SSL/src/SessionParameters/АдресСвойствРасширений/АдресСвойствРасширений.mdo rename to SSL/src/SessionParameters/ПодключенныеРасширения/ПодключенныеРасширения.mdo index c5532ef10..cad0483b8 100644 --- a/SSL/src/SessionParameters/АдресСвойствРасширений/АдресСвойствРасширений.mdo +++ b/SSL/src/SessionParameters/ПодключенныеРасширения/ПодключенныеРасширения.mdo @@ -1,9 +1,9 @@ - АдресСвойствРасширений + ПодключенныеРасширения ru - Адрес свойств расширений + Подключенные расширения String diff --git a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ВыборВариантаОтчета/Form.form b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ВыборВариантаОтчета/Form.form index d9ccb3874..b78121b03 100644 --- a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ВыборВариантаОтчета/Form.form +++ b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ВыборВариантаОтчета/Form.form @@ -5,7 +5,7 @@ 22 ОтборАвтор - 25 + 56 true true @@ -19,8 +19,8 @@ ОтборАвторПриИзменении - ОтборАвторExtendedTooltip - 32 + ОтборАвторРасширеннаяПодсказка + 58 Label true true @@ -30,30 +30,20 @@ ОтборАвторКонтекстноеМеню - 26 + 57 true InputField - false Enter true Left true - 30 true true - false - false true - false - true true - false - false - false - Items - false + true true true Normal @@ -733,7 +723,6 @@ Retry SaveValues Yes - 60 LockOwner Use true @@ -1056,8 +1045,12 @@ 2 - - + + true + + + true + ПолныеПраваНаВарианты @@ -1072,7 +1065,9 @@ true - + + true + ВариантОписание @@ -1123,8 +1118,12 @@ String - - + + true + + + true + ОтборАвтор diff --git a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ВыборВариантаОтчета/Module.bsl b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ВыборВариантаОтчета/Module.bsl index b08b894f9..416b5223b 100644 --- a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ВыборВариантаОтчета/Module.bsl +++ b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ВыборВариантаОтчета/Module.bsl @@ -58,12 +58,23 @@ Процедура ОтборАвторПриИзменении(Элемент) ОтборВключен = ЗначениеЗаполнено(ОтборАвтор); - Группы = ДеревоВариантовОтчета.ПолучитьЭлементы(); - Для Каждого Группа Из Группы Цикл - ВложенныеВарианты = Группа.ПолучитьЭлементы(); + ГруппыИлиВарианты = ДеревоВариантовОтчета.ПолучитьЭлементы(); + Для Каждого ГруппаИлиВариант Из ГруппыИлиВарианты Цикл + ЕстьВключенные = Неопределено; + ВложенныеВарианты = ГруппаИлиВариант.ПолучитьЭлементы(); Для Каждого Вариант Из ВложенныеВарианты Цикл Вариант.СкрытОтбором = ОтборВключен И Вариант.Автор <> ОтборАвтор; + Если Не Вариант.СкрытОтбором Тогда + ЕстьВключенные = Истина; + ИначеЕсли ЕстьВключенные = Неопределено Тогда + ЕстьВключенные = Ложь; + КонецЕсли; КонецЦикла; + Если ЕстьВключенные = Неопределено Тогда // Группа это вариант. + ГруппаИлиВариант.СкрытОтбором = ОтборВключен И ГруппаИлиВариант.Автор <> ОтборАвтор; + Иначе // Это группа. + ГруппаИлиВариант.СкрытОтбором = ЕстьВключенные; + КонецЕсли; КонецЦикла; КонецПроцедуры @@ -248,8 +259,16 @@ | ВариантыОтчетов.Ссылка, | ВариантыОтчетов.Наименование, | ВариантыОтчетов.КлючВарианта, - | ВЫРАЗИТЬ(ВариантыОтчетов.Описание КАК СТРОКА(200)) КАК Описание, - | ЕСТЬNULL(ВариантыОтчетов.ПредопределенныйВариант.ВидимостьПоУмолчанию, ЛОЖЬ) КАК ВидимостьПоУмолчанию, + | ВЫБОР + | КОГДА ПОДСТРОКА(ВариантыОтчетов.Описание, 1, 1) = """" + | ТОГДА ВЫРАЗИТЬ(ВариантыОтчетов.ПредопределенныйВариант.Описание КАК СТРОКА(1000)) + | ИНАЧЕ ВЫРАЗИТЬ(ВариантыОтчетов.Описание КАК СТРОКА(1000)) + | КОНЕЦ КАК Описание, + | ВЫБОР + | КОГДА НЕ ВариантыОтчетов.Пользовательский И НЕ ВариантыОтчетов.ВидимостьПоУмолчаниюПереопределена + | ТОГДА ЕСТЬNULL(ВариантыОтчетов.ПредопределенныйВариант.ВидимостьПоУмолчанию, ЛОЖЬ) + | ИНАЧЕ ВариантыОтчетов.ВидимостьПоУмолчанию + | КОНЕЦ КАК ВидимостьПоУмолчанию, | ВариантыОтчетов.Автор, | ВариантыОтчетов.ТолькоДляАвтора, | ВариантыОтчетов.Пользовательский, diff --git a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ВыборПоляОтчета/Module.bsl b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ВыборПоляОтчета/Module.bsl index a9837e81c..67e72ae8d 100644 --- a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ВыборПоляОтчета/Module.bsl +++ b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ВыборПоляОтчета/Module.bsl @@ -239,7 +239,26 @@ КонецФункции &НаКлиентеНаСервереБезКонтекста -Процедура ПоляГруппировкиРазвернутьСтроку(ТаблицаКД, СтрокиДерева, ДоступноеПолеКДРодитель = Неопределено) +Процедура РазвернутьСтрокиПолейГруппировкиКлиентСервер(ТаблицаКД, ПоляГруппировки, РазворачиваемыеУзлы) + Итого = 0; + Для Каждого ИдентификаторСтроки Из РазворачиваемыеУзлы Цикл + СтрокаДерева = ПоляГруппировки.НайтиПоИдентификатору(ИдентификаторСтроки); + Если СтрокаДерева = Неопределено Тогда + Продолжить; + КонецЕсли; + Если Не СтрокаДерева.НадоПрочитатьВложенные Тогда + Продолжить; + КонецЕсли; + СтрокаДерева.НадоПрочитатьВложенные = Ложь; + ДоступноеПолеКД = ТаблицаКД.ПолучитьОбъектПоИдентификатору(СтрокаДерева.ИдентификаторКД); + СтрокиДерева = СтрокаДерева.ПолучитьЭлементы(); + СтрокиДерева.Очистить(); + ПоляГруппировкиРазвернутьСтроку(ТаблицаКД, СтрокиДерева, ДоступноеПолеКД, Итого); + КонецЦикла; +КонецПроцедуры + +&НаКлиентеНаСервереБезКонтекста +Процедура ПоляГруппировкиРазвернутьСтроку(ТаблицаКД, СтрокиДерева, ДоступноеПолеКДРодитель = Неопределено, Итого = 0) Если ДоступноеПолеКДРодитель = Неопределено Тогда ДоступноеПолеКДРодитель = ТаблицаКД; Префикс = ""; @@ -247,6 +266,8 @@ Префикс = ДоступноеПолеКДРодитель.Заголовок + "."; КонецЕсли; + Итого = Итого + ДоступноеПолеКДРодитель.Элементы.Количество(); + ПодсчитыватьКоличество = (Итого <= 100); Для Каждого ДоступноеПолеКД Из ДоступноеПолеКДРодитель.Элементы Цикл Если ТипЗнч(ДоступноеПолеКД) = Тип("ДоступноеПолеКомпоновкиДанных") Тогда СтрокаДерева = СтрокиДерева.Добавить(); @@ -265,32 +286,18 @@ СтрокаДерева.ИндексКартинки = ВариантыОтчетовКлиентСервер.ИндексПиктограммыНастроекОтчета(Тип, Ложь, Ложь); // Вычисление коллекции "ДоступноеПолеКД.Элементы" в некоторых случаях делает неявный серверный вызов. - Если ДоступноеПолеКД.Элементы.Количество() > 0 Тогда + Если ПодсчитыватьКоличество Тогда + СтрокаДерева.НадоПрочитатьВложенные = ДоступноеПолеКД.Элементы.Количество() > 0; + Иначе СтрокаДерева.НадоПрочитатьВложенные = Истина; + КонецЕсли; + Если СтрокаДерева.НадоПрочитатьВложенные Тогда СтрокаДерева.ПолучитьЭлементы().Добавить().Представление = "..."; КонецЕсли; КонецЕсли; КонецЦикла; КонецПроцедуры -&НаКлиентеНаСервереБезКонтекста -Процедура РазвернутьСтрокиПолейГруппировкиКлиентСервер(ТаблицаКД, ПоляГруппировки, РазворачиваемыеУзлы) - Для Каждого ИдентификаторСтроки Из РазворачиваемыеУзлы Цикл - СтрокаДерева = ПоляГруппировки.НайтиПоИдентификатору(ИдентификаторСтроки); - Если СтрокаДерева = Неопределено Тогда - Продолжить; - КонецЕсли; - Если Не СтрокаДерева.НадоПрочитатьВложенные Тогда - Продолжить; - КонецЕсли; - СтрокаДерева.НадоПрочитатьВложенные = Ложь; - ДоступноеПолеКД = ТаблицаКД.ПолучитьОбъектПоИдентификатору(СтрокаДерева.ИдентификаторКД); - СтрокиДерева = СтрокаДерева.ПолучитьЭлементы(); - СтрокиДерева.Очистить(); - ПоляГруппировкиРазвернутьСтроку(ТаблицаКД, СтрокиДерева, ДоступноеПолеКД); - КонецЦикла; -КонецПроцедуры - //////////////////////////////////////////////////////////////////////////////// // Вызов сервера, Сервер diff --git a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ОписаниеНовойВозможностиПоВыводуОписаний/Form.form b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ОписаниеНовойВозможностиПоВыводуОписаний/Form.form index 1066f9907..1623381b3 100644 --- a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ОписаниеНовойВозможностиПоВыводуОписаний/Form.form +++ b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ОписаниеНовойВозможностиПоВыводуОписаний/Form.form @@ -36,7 +36,6 @@ true Label - true true Left diff --git a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ОписаниеНовойВозможностиПоВыводуОписаний/Module.bsl b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ОписаниеНовойВозможностиПоВыводуОписаний/Module.bsl index 7c28a442d..ab37126d9 100644 --- a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ОписаниеНовойВозможностиПоВыводуОписаний/Module.bsl +++ b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ОписаниеНовойВозможностиПоВыводуОписаний/Module.bsl @@ -1,12 +1,18 @@ #Область ОбработчикиСобытийФормы &НаКлиенте -Процедура ПередЗакрытием(Отказ, СтандартнаяОбработка) +Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка) + + Если ЗавершениеРаботы Тогда + Возврат; + КонецЕсли; + ОбщиеНастройки = ПередЗакрытиемНаСервере(ОтключитьОписания); Оповестить( ВариантыОтчетовКлиентСервер.ИмяСобытияИзменениеОбщихНастроек(), ОбщиеНастройки, Неопределено); + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ПанельДругихОтчетов/Form.form b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ПанельДругихОтчетов/Form.form index 2de4c1361..3e42ae947 100644 --- a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ПанельДругихОтчетов/Form.form +++ b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ПанельДругихОтчетов/Form.form @@ -86,38 +86,6 @@ Auto - - Декорация1 - 14 - true - true - - true - - - Декорация1РасширеннаяПодсказка - 16 - Label - true - true - - Left - - - - Декорация1КонтекстноеМеню - 15 - true - - Label - true - true - true - true - - Left - - ГруппаПодвал 5 @@ -212,14 +180,6 @@ true - - <key>ru</key> - <value>Группа подвал</value> - - - ru - Группа подвал - ГруппаПодвалРасширеннаяПодсказка 6 @@ -235,6 +195,7 @@ Auto true true + auto Auto Auto diff --git a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ПанельДругихОтчетов/Module.bsl b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ПанельДругихОтчетов/Module.bsl index fb7c6c3f1..e94e8b36e 100644 --- a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ПанельДругихОтчетов/Module.bsl +++ b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ПанельДругихОтчетов/Module.bsl @@ -285,6 +285,7 @@ Группа = Элементы.Добавить(ГруппаИмя, Тип("ГруппаФормы"), Элементы.СтраницаДругиеОтчеты); Группа.Вид = ВидГруппыФормы.ОбычнаяГруппа; + Группа.Группировка = ГруппировкаПодчиненныхЭлементовФормы.Вертикальная; Группа.Заголовок = ПодсистемаПредставление; Группа.ОтображатьЗаголовок = Истина; Группа.ЦветТекстаЗаголовка = ЦветГруппыВариантовОтчетов; diff --git a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/СохранениеВариантаОтчета/Form.form b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/СохранениеВариантаОтчета/Form.form index b43919eba..1c2204cd0 100644 --- a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/СохранениеВариантаОтчета/Form.form +++ b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/СохранениеВариантаОтчета/Form.form @@ -535,6 +535,7 @@ ru Страницы сбросить + Center СтраницыСброситьРасширеннаяПодсказка 193 @@ -640,7 +641,7 @@ Новый 88 - ДекорацияДалее2 + ДекорацияЧтоБудетДальшеНовый 187 <key>ru</key> @@ -653,7 +654,7 @@ <common>true</common> </userVisible> <extendedTooltip> - <name>ДекорацияДалее2РасширеннаяПодсказка</name> + <name>ДекорацияЧтоБудетДальшеНовыйРасширеннаяПодсказка</name> <id>189</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> @@ -663,14 +664,12 @@ </extInfo> </extendedTooltip> <contextMenu> - <name>ДекорацияДалее2КонтекстноеМеню</name> + <name>ДекорацияЧтоБудетДальшеНовыйКонтекстноеМеню</name> <id>188</id> <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <verticalStretch>false</verticalStretch> <textColor xsi:type="core:ColorRef"> <color>Style.ПоясняющийТекст</color> </textColor> @@ -713,7 +712,7 @@ <name>Перезапись</name> <id>87</id> <items xsi:type="form:Decoration"> - <name>ДекорацияДалее1</name> + <name>ДекорацияЧтоБудетДальшеПерезапись</name> <id>184</id> <title> <key>ru</key> @@ -726,7 +725,7 @@ <common>true</common> </userVisible> <extendedTooltip> - <name>ДекорацияДалее1РасширеннаяПодсказка</name> + <name>ДекорацияЧтоБудетДальшеПерезаписьРасширеннаяПодсказка</name> <id>186</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> @@ -736,14 +735,12 @@ </extInfo> </extendedTooltip> <contextMenu> - <name>ДекорацияДалее1КонтекстноеМеню</name> + <name>ДекорацияЧтоБудетДальшеПерезаписьКонтекстноеМеню</name> <id>185</id> <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <verticalStretch>false</verticalStretch> <textColor xsi:type="core:ColorRef"> <color>Style.ПоясняющийТекст</color> </textColor> @@ -786,7 +783,7 @@ <name>ПерезаписьНевозможна</name> <id>201</id> <items xsi:type="form:Decoration"> - <name>ДекорацияДалее3</name> + <name>ДекорацияЧтоБудетДальшеПерезаписьНевозможна</name> <id>203</id> <title> <key>ru</key> @@ -799,7 +796,7 @@ <common>true</common> </userVisible> <extendedTooltip> - <name>ДекорацияДалее3РасширеннаяПодсказка</name> + <name>ДекорацияЧтоБудетДальшеПерезаписьНевозможнаРасширеннаяПодсказка</name> <id>205</id> <type>Label</type> <autoMaxWidth>true</autoMaxWidth> @@ -809,14 +806,12 @@ </extInfo> </extendedTooltip> <contextMenu> - <name>ДекорацияДалее3КонтекстноеМеню</name> + <name>ДекорацияЧтоБудетДальшеПерезаписьНевозможнаКонтекстноеМеню</name> <id>204</id> <autoFill>true</autoFill> </contextMenu> <type>Label</type> - <autoMaxWidth>true</autoMaxWidth> <autoMaxHeight>true</autoMaxHeight> - <verticalStretch>false</verticalStretch> <textColor xsi:type="core:ColorRef"> <color>Style.ПоясняющийОшибкуТекст</color> </textColor> @@ -916,44 +911,6 @@ <currentRowUse>Auto</currentRowUse> </extInfo> </items> - <items xsi:type="form:Decoration"> - <name>ДекорацияДалее</name> - <id>93</id> - <title> - <key>ru</key> - <value>Нажмите "Далее" для размещения варианта отчета в разделах программы.</value> - - true - - true - - - ДекорацияДалееExtendedTooltip - 129 - Label - true - true - - Left - - - - ДекорацияДалееКонтекстноеМеню - 94 - true - - Label - true - 1 - true - false - - Style.ПоясняющийТекст - - - Left - - true true @@ -1737,7 +1694,6 @@ Retry SaveValues Yes - 60 LockOwner true true diff --git a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/СохранениеВариантаОтчета/Module.bsl b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/СохранениеВариантаОтчета/Module.bsl index 78704089d..4528ad9e3 100644 --- a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/СохранениеВариантаОтчета/Module.bsl +++ b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/СохранениеВариантаОтчета/Module.bsl @@ -10,7 +10,6 @@ Контекст = Новый Структура; Контекст.Вставить("ТекущийПользователь", Пользователи.АвторизованныйПользователь()); Контекст.Вставить("ПолныеПраваНаВарианты", ВариантыОтчетов.ПолныеПраваНаВарианты()); - Контекст.Вставить("ИдентификаторТекущейСтроки", Неопределено); ПрототипКлюч = Параметры.КлючТекущихНастроек; @@ -37,8 +36,9 @@ Элементы.ВариантВидимостьПоУмолчанию.Видимость = Ложь; Элементы.Назад.Видимость = Ложь; Элементы.Далее.Видимость = Ложь; - Элементы.ДекорацияДалее.Видимость = Ложь; Элементы.ГруппаДоступен.Видимость = Ложь; + УдалитьВторуюСтрокуВЗаголовке(Элементы.ДекорацияЧтоБудетДальшеНовый.Заголовок); + УдалитьВторуюСтрокуВЗаголовке(Элементы.ДекорацияЧтоБудетДальшеПерезапись.Заголовок); КонецЕсли; ВидимостьДоступность(ЭтотОбъект, "ПриСозданииНаСервере"); @@ -88,7 +88,7 @@ &НаКлиенте Процедура НаименованиеПриИзменении(Элемент) НаименованиеМодифицировано = Истина; - Контекст.ИдентификаторТекущейСтроки = Контекст.ПоискПоНаименованию.Получить(ВариантНаименование); //Элементы.ВариантыОтчета.ТекущаяСтрока + Элементы.ВариантыОтчета.ТекущаяСтрока = Контекст.ПоискПоНаименованию.Получить(ВариантНаименование); ВидимостьДоступность(ЭтотОбъект, "НаименованиеПриИзменении"); КонецПроцедуры @@ -118,7 +118,6 @@ Процедура ВариантыОтчетаПриАктивизацииСтроки(Элемент) НаименованиеМодифицировано = Ложь; ОписаниеМодифицировано = Ложь; - Контекст.ИдентификаторТекущейСтроки = Элементы.ВариантыОтчета.ТекущаяСтрока; ВидимостьДоступность(ЭтотОбъект, "ВариантыОтчетаПриАктивизацииСтроки"); КонецПроцедуры @@ -172,6 +171,7 @@ Процедура ВариантыОтчетаПередУдалениемЗавершение(Ответ, ДополнительныеПараметры) Экспорт Если Ответ = КодВозвратаДиалога.Да Тогда УдалитьВариантНаСервере(ДополнительныеПараметры.Идентификатор); + ВариантыОтчетовКлиент.ОбновитьОткрытыеФормы(); КонецЕсли; КонецПроцедуры @@ -407,7 +407,7 @@ БудетПерезаписанСуществующий = Ложь; ПерезаписьНевозможна = Ложь; - Идентификатор = Форма.Контекст.ИдентификаторТекущейСтроки; //Форма.Элементы.ВариантыОтчета.ТекущаяСтрока + Идентификатор = Форма.Элементы.ВариантыОтчета.ТекущаяСтрока; Если Идентификатор = Неопределено Тогда // Платформа не принимает в методе НайтиПоИдентификатору значение Неопределено. Вариант = Неопределено; Иначе @@ -422,9 +422,7 @@ Форма.ВариантОписание = ""; КонецЕсли; Форма.Элементы.ВариантыОтчета.ТекущаяСтрока = Неопределено; - Форма.Контекст.ИдентификаторТекущейСтроки = Неопределено; Если Не Форма.Контекст.ПолныеПраваНаВарианты Тогда - Форма.Доступен = "ТолькоАвтор"; Форма.ВариантТолькоДляАвтора = Истина; КонецЕсли; Иначе @@ -444,7 +442,6 @@ Если Форма.НаименованиеМодифицировано Тогда ПерезаписьНевозможна = Истина; Форма.Элементы.ВариантыОтчета.ТекущаяСтрока = Неопределено; - Форма.Контекст.ИдентификаторТекущейСтроки = Неопределено; Иначе БудетЗаписанНовый = Истина; Форма.ВариантНаименование = СформироватьСвободноеНаименование(Вариант, Форма.ВариантыОтчета); @@ -457,9 +454,8 @@ Форма.ВариантОписание = ""; КонецЕсли; КонецЕсли; - - Форма.Доступен = ?(Форма.ВариантТолькоДляАвтора, "ТолькоАвтор", "ВсеПользователи"); КонецЕсли; + Форма.Доступен = ?(Форма.ВариантТолькоДляАвтора, "ТолькоАвтор", "ВсеПользователи"); Если БудетЗаписанНовый Тогда Форма.Элементы.ЧтоБудетДальше.ТекущаяСтраница = Форма.Элементы.Новый; Форма.Элементы.СтраницыСбросить.ТекущаяСтраница = Форма.Элементы.ФлажокСброситьСкрыт; @@ -729,11 +725,15 @@ КонецЕсли; Если Вариант.КлючВарианта = ТекущийКлючВарианта Тогда Элементы.ВариантыОтчета.ТекущаяСтрока = Идентификатор; - Контекст.ИдентификаторТекущейСтроки = Идентификатор; КонецЕсли; КонецЦикла; ВидимостьДоступность(ЭтотОбъект, "ПослеЗаполненияСпискаВариантов"); КонецПроцедуры +&НаСервере +Процедура УдалитьВторуюСтрокуВЗаголовке(ТекстЗаголовка) + ТекстЗаголовка = Лев(ТекстЗаголовка, СтрНайти(ТекстЗаголовка, Символы.ПС)-1); +КонецПроцедуры + #КонецОбласти diff --git a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/УсловияОтборовОтчета/Form.form b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/УсловияОтборовОтчета/Form.form index 8b85f0b8e..47f97b031 100644 --- a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/УсловияОтборовОтчета/Form.form +++ b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/УсловияОтборовОтчета/Form.form @@ -348,7 +348,6 @@ OnCreateAtServer ПриСозданииНаСервере - 45 LockOwner true Vertical diff --git a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ЭлементУсловногоОформленияОтчета/Form.form b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ЭлементУсловногоОформленияОтчета/Form.form index bf007fc3a..afee2b98e 100644 --- a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ЭлементУсловногоОформленияОтчета/Form.form +++ b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ЭлементУсловногоОформленияОтчета/Form.form @@ -28,6 +28,32 @@ НаименованиеКонтекстноеМеню 94 + + ВставитьНаименованиеПоУмолчаниюКонтекстноеМеню + 331 + true + true + + true + + + ВставитьНаименованиеПоУмолчаниюКонтекстноеМенюРасширеннаяПодсказка + 332 + Label + true + true + + Left + + + Form.Command.ВставитьНаименованиеПоУмолчанию + Normal + Auto + true + true + UserCmds + Auto + true InputField @@ -36,9 +62,9 @@ Left true - true true true + true true true true @@ -2238,7 +2264,7 @@ 153 <key>ru</key> - <value>Показывать:</value> + <value>Показывать: </value> true true @@ -2261,7 +2287,6 @@ true Label - true true Style.NormalTextFont @@ -2272,37 +2297,6 @@ Center - - Декорация3 - 194 - true - true - - true - - - Декорация3РасширеннаяПодсказка - 196 - Label - true - true - - Left - - - - Декорация3КонтекстноеМеню - 195 - true - - Label - 6 - true - true - - Left - - Группа5 199 @@ -2363,7 +2357,6 @@ true - false Группа5РасширеннаяПодсказка 200 @@ -2933,7 +2926,6 @@ OnCreateAtServer ПриСозданииНаСервере - 60 LockOwner true Vertical @@ -3056,7 +3048,6 @@ true - ShowError ИспользоватьВГруппировке @@ -3308,6 +3299,31 @@ DontUse Auto + + ВставитьНаименованиеПоУмолчанию + + <key>ru</key> + <value>Вставить наименование по умолчанию</value> + + 4 + + ru + Вставить наименование по умолчанию + + + true + + + CommonPicture.ВставитьИзБуфераОбмена + + + + ВставитьНаименованиеПоУмолчанию + + + DontUse + Auto + diff --git a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ЭлементУсловногоОформленияОтчета/Module.bsl b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ЭлементУсловногоОформленияОтчета/Module.bsl index 43dfc0fd6..1e26f57c8 100644 --- a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ЭлементУсловногоОформленияОтчета/Module.bsl +++ b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/Forms/ЭлементУсловногоОформленияОтчета/Module.bsl @@ -34,6 +34,7 @@ ЭлементКД = УзелКД.Элементы.Вставить(0); ЭлементКД.Использование = Истина; ЭлементКД.РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Обычный; + Элементы.Наименование.КнопкаОчистки = Ложь; Иначе УзелКДИсточник = УзелКД(ЭтотОбъект); Если УзелКДИсточник = Неопределено Тогда @@ -50,6 +51,7 @@ Элементы.Наименование.ПодсказкаВвода = НаименованиеПоУмолчанию; Если Не НаименованиеПереопределено Тогда Наименование = ""; + Элементы.Наименование.КнопкаОчистки = Ложь; КонецЕсли; КонецЕсли; @@ -66,110 +68,16 @@ #КонецОбласти -#Область ОбработчикиКомандФормы +#Область ОбработчикиСобытийЭлементовШапкиФормы &НаКлиенте -Процедура Выбрать(Команда) - ВыбратьИЗакрыть(); -КонецПроцедуры - -&НаКлиенте -Процедура Показывать_УстановитьПометки(Команда) - Для Каждого ЭлементСписка Из ФлажкиОбластиОтображения Цикл - ЭтотОбъект[ЭлементСписка.Значение] = Истина; - КонецЦикла; - ОбновитьНаименованиеПоУмолчанию(); -КонецПроцедуры - -&НаКлиенте -Процедура Показывать_СнятьПометки(Команда) - Для Каждого ЭлементСписка Из ФлажкиОбластиОтображения Цикл - ЭтотОбъект[ЭлементСписка.Значение] = Ложь; - КонецЦикла; -КонецПроцедуры - -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -&НаКлиенте -Процедура ВыбратьИЗакрыть() - ОтключитьОбработчикОжидания("ОбновитьНаименованиеПоУмолчаниюЕслиТребуется"); - ОбновитьНаименованиеПоУмолчаниюЕслиТребуется(); - - Если Наименование = "" Тогда - Если ЭтоНовый Тогда - ОбщегоНазначенияКлиентСервер.СообщитьПользователю(НСтр("ru = 'Необходимо заполнить заголовок'"), , "Наименование"); - Возврат; - КонецЕсли; - Наименование = НаименованиеПоУмолчанию; - КонецЕсли; - - ЭлементКД = КомпоновщикНастроек.Настройки.УсловноеОформление.Элементы[0]; - - Если Наименование = НаименованиеПоУмолчанию Тогда - ЭлементКД.ПредставлениеПользовательскойНастройки = ""; +Процедура НаименованиеПриИзменении(Элемент) + Если Наименование = "" Или Наименование = Элементы.Наименование.ПодсказкаВвода Тогда + ТребуетсяОбновлениеНаименованияПоУмолчанию = Истина; + ОбновитьНаименованиеПоУмолчаниюЕслиТребуется(); + Элементы.Наименование.КнопкаОчистки = Ложь; Иначе - ЭлементКД.ПредставлениеПользовательскойНастройки = Наименование; - КонецЕсли; - - Для Каждого ЭлементСписка Из ФлажкиОбластиОтображения Цикл - ИмяФлажка = ЭлементСписка.Значение; - Если ЭтотОбъект[ИмяФлажка] Тогда - ЭлементКД[ИмяФлажка] = ИспользованиеУсловногоОформленияКомпоновкиДанных.Использовать; - Иначе - ЭлементКД[ИмяФлажка] = ИспользованиеУсловногоОформленияКомпоновкиДанных.НеИспользовать; - КонецЕсли; - КонецЦикла; - - Результат = Новый Структура("ЭлементКД, Наименование", ЭлементКД, Наименование); - ОповеститьОВыборе(Результат); - Закрыть(Результат); -КонецПроцедуры - -&НаКлиентеНаСервереБезКонтекста -Функция УзелКД(Форма) - Если Форма.ИдентификаторТекущегоУзлаКД = Неопределено Тогда - Возврат Форма.КомпоновщикНастроек.Настройки.УсловноеОформление; - Иначе - ТекущийУзелКД = Форма.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(Форма.ИдентификаторТекущегоУзлаКД); - Возврат ТекущийУзелКД.УсловноеОформление; - КонецЕсли; -КонецФункции - -&НаКлиенте -Процедура ОформлениеПриИзменении(Элемент) - ОбновитьНаименованиеПоУмолчанию(); -КонецПроцедуры - -&НаКлиенте -Процедура ОтборПриИзменении(Элемент) - ОбновитьНаименованиеПоУмолчанию(); -КонецПроцедуры - -&НаКлиенте -Процедура ОформляемыеПоляПриИзменении(Элемент) - ОбновитьНаименованиеПоУмолчанию(); -КонецПроцедуры - -&НаКлиенте -Процедура ОбновитьНаименованиеПоУмолчанию() - ТребуетсяОбновлениеНаименованияПоУмолчанию = Истина; - Если Наименование = "" Тогда - ПодключитьОбработчикОжидания("ОбновитьНаименованиеПоУмолчаниюЕслиТребуется", 3, Истина); - КонецЕсли; -КонецПроцедуры - -&НаКлиенте -Процедура ОбновитьНаименованиеПоУмолчаниюЕслиТребуется() - Если ТребуетсяОбновлениеНаименованияПоУмолчанию Тогда - ТребуетсяОбновлениеНаименованияПоУмолчанию = Ложь; - УзелКД = КомпоновщикНастроек.Настройки.УсловноеОформление; - ЭлементКД = УзелКД.Элементы[0]; - НаименованиеПоУмолчанию = ОтчетыКлиентСервер.ПредставлениеЭлементаУсловногоОформления(ЭлементКД); - Если Наименование = "" Тогда - Элементы.Наименование.ПодсказкаВвода = НаименованиеПоУмолчанию; - КонецЕсли; + Элементы.Наименование.КнопкаОчистки = Истина; КонецЕсли; КонецПроцедуры @@ -208,11 +116,131 @@ ОбновитьНаименованиеПоУмолчанию(); КонецПроцедуры +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовТаблицыФормыОформление + &НаКлиенте -Процедура НаименованиеПриИзменении(Элемент) - Если Не ЭтоНовый Тогда - ОбновитьНаименованиеПоУмолчаниюЕслиТребуется(); +Процедура ОформлениеПриИзменении(Элемент) + ОбновитьНаименованиеПоУмолчанию(); +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовТаблицыФормыОтбор + +&НаКлиенте +Процедура ОтборПриИзменении(Элемент) + ОбновитьНаименованиеПоУмолчанию(); +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиСобытийЭлементовТаблицыФормыОформляемыеПоля + +&НаКлиенте +Процедура ОформляемыеПоляПриИзменении(Элемент) + ОбновитьНаименованиеПоУмолчанию(); +КонецПроцедуры + +#КонецОбласти + +#Область ОбработчикиКомандФормы + +&НаКлиенте +Процедура Выбрать(Команда) + ВыбратьИЗакрыть(); +КонецПроцедуры + +&НаКлиенте +Процедура Показывать_УстановитьПометки(Команда) + Для Каждого ЭлементСписка Из ФлажкиОбластиОтображения Цикл + ЭтотОбъект[ЭлементСписка.Значение] = Истина; + КонецЦикла; + ОбновитьНаименованиеПоУмолчанию(); +КонецПроцедуры + +&НаКлиенте +Процедура Показывать_СнятьПометки(Команда) + Для Каждого ЭлементСписка Из ФлажкиОбластиОтображения Цикл + ЭтотОбъект[ЭлементСписка.Значение] = Ложь; + КонецЦикла; +КонецПроцедуры + +&НаКлиенте +Процедура ВставитьНаименованиеПоУмолчанию(Команда) + Наименование = НаименованиеПоУмолчанию; + Элементы.Наименование.КнопкаОчистки = Ложь; +КонецПроцедуры + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +&НаКлиентеНаСервереБезКонтекста +Функция УзелКД(Форма) + Если Форма.ИдентификаторТекущегоУзлаКД = Неопределено Тогда + Возврат Форма.КомпоновщикНастроек.Настройки.УсловноеОформление; + Иначе + ТекущийУзелКД = Форма.КомпоновщикНастроек.Настройки.ПолучитьОбъектПоИдентификатору(Форма.ИдентификаторТекущегоУзлаКД); + Возврат ТекущийУзелКД.УсловноеОформление; + КонецЕсли; +КонецФункции + +&НаКлиенте +Процедура ОбновитьНаименованиеПоУмолчанию() + ТребуетсяОбновлениеНаименованияПоУмолчанию = Истина; + Если Наименование = "" Или Наименование = Элементы.Наименование.ПодсказкаВвода Тогда + ПодключитьОбработчикОжидания("ОбновитьНаименованиеПоУмолчаниюЕслиТребуется", 1, Истина); КонецЕсли; КонецПроцедуры +&НаКлиенте +Процедура ОбновитьНаименованиеПоУмолчаниюЕслиТребуется() + Если Не ТребуетсяОбновлениеНаименованияПоУмолчанию Тогда + Возврат; + КонецЕсли; + ТребуетсяОбновлениеНаименованияПоУмолчанию = Ложь; + УзелКД = КомпоновщикНастроек.Настройки.УсловноеОформление; + ЭлементКД = УзелКД.Элементы[0]; + НаименованиеПоУмолчанию = ОтчетыКлиентСервер.ПредставлениеЭлементаУсловногоОформления(ЭлементКД); + Если Наименование = Элементы.Наименование.ПодсказкаВвода Тогда + Наименование = НаименованиеПоУмолчанию; + Элементы.Наименование.ПодсказкаВвода = НаименованиеПоУмолчанию; + ИначеЕсли Наименование = "" Тогда + Элементы.Наименование.ПодсказкаВвода = НаименованиеПоУмолчанию; + КонецЕсли; +КонецПроцедуры + +&НаКлиенте +Процедура ВыбратьИЗакрыть() + ОтключитьОбработчикОжидания("ОбновитьНаименованиеПоУмолчаниюЕслиТребуется"); + ОбновитьНаименованиеПоУмолчаниюЕслиТребуется(); + + Если Наименование = "" Тогда + Наименование = НаименованиеПоУмолчанию; + КонецЕсли; + + ЭлементКД = КомпоновщикНастроек.Настройки.УсловноеОформление.Элементы[0]; + + Если Наименование = НаименованиеПоУмолчанию Тогда + ЭлементКД.ПредставлениеПользовательскойНастройки = ""; + Иначе + ЭлементКД.ПредставлениеПользовательскойНастройки = Наименование; + КонецЕсли; + + Для Каждого ЭлементСписка Из ФлажкиОбластиОтображения Цикл + ИмяФлажка = ЭлементСписка.Значение; + Если ЭтотОбъект[ИмяФлажка] Тогда + ЭлементКД[ИмяФлажка] = ИспользованиеУсловногоОформленияКомпоновкиДанных.Использовать; + Иначе + ЭлементКД[ИмяФлажка] = ИспользованиеУсловногоОформленияКомпоновкиДанных.НеИспользовать; + КонецЕсли; + КонецЦикла; + + Результат = Новый Структура("ЭлементКД, Наименование", ЭлементКД, Наименование); + ОповеститьОВыборе(Результат); + Закрыть(Результат); +КонецПроцедуры + #КонецОбласти \ No newline at end of file diff --git a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/ManagerModule.bsl b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/ManagerModule.bsl index 3d9146204..94aa9928f 100644 --- a/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/ManagerModule.bsl +++ b/SSL/src/SettingsStorages/ХранилищеВариантовОтчетов/ManagerModule.bsl @@ -19,7 +19,7 @@ // См. также: // "СтандартноеХранилищеНастроекМенеджер.Удалить" в синтакс-помощнике. // -Процедура Удалить(КлючОтчета, КлючВарианта, Пользователь) Экспорт +Процедура Удалить(КлючОтчета, КлючВарианта, Знач Пользователь) Экспорт #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда ТекстЗапроса = @@ -53,18 +53,19 @@ Запрос.УстановитьПараметр("КлючВарианта", КлючВарианта); КонецЕсли; + Если Пользователь = "" Тогда + Пользователь = Пользователи.СсылкаНеуказанногоПользователя(); + КонецЕсли; + Если Пользователь = Неопределено Тогда - ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "И Варианты.Автор = &Автор", ""); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "И Варианты.Автор.ИдентификаторПользователяИБ = &GUID", ""); - - ИначеЕсли ТипЗнч(Пользователь) = Тип("СправочникСсылка.Пользователи") Тогда - Запрос.УстановитьПараметр("Администратор", Пользователь); + ИначеЕсли ТипЗнч(Пользователь) = Тип("СправочникСсылка.Пользователи") Тогда + Запрос.УстановитьПараметр("Автор", Пользователь); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "И Варианты.Автор.ИдентификаторПользователяИБ = &GUID", ""); Иначе - Если ТипЗнч(Пользователь) = Тип("УникальныйИдентификатор") Тогда ИдентификаторПользователя = Пользователь; Иначе @@ -80,10 +81,8 @@ КонецЕсли; ИдентификаторПользователя = ПользовательИБ.УникальныйИдентификатор; КонецЕсли; - Запрос.УстановитьПараметр("GUID", ИдентификаторПользователя); ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "И Варианты.Автор = &Автор", ""); - КонецЕсли; Запрос.Текст = ТекстЗапроса; @@ -94,7 +93,6 @@ ВариантОбъект.УстановитьПометкуУдаления(Истина); КонецЦикла; - #КонецЕсли КонецПроцедуры @@ -120,7 +118,7 @@ // См. также: // "СтандартноеХранилищеНастроекМенеджер.ПолучитьСписок" в синтакс-помощнике. // -Функция ПолучитьСписок(КлючОтчета, Пользователь = Неопределено) Экспорт +Функция ПолучитьСписок(КлючОтчета, Знач Пользователь = Неопределено) Экспорт #Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда Результат = Новый СписокЗначений; @@ -143,26 +141,22 @@ | Справочник.ВариантыОтчетов КАК Варианты |ГДЕ | Варианты.Отчет = &Отчет - | И Варианты.Автор = &Администратор + | И Варианты.Автор = &Автор | И Варианты.Автор.ИдентификаторПользователяИБ = &GUID | И Варианты.ПометкаУдаления = ЛОЖЬ | И Варианты.Пользовательский = ИСТИНА"; Запрос.УстановитьПараметр("Отчет", ОтчетСсылка); - ТекущийПользователь = Пользователи.АвторизованныйПользователь(); + Если Пользователь = "" Тогда + Пользователь = Пользователи.СсылкаНеуказанногоПользователя(); + ИначеЕсли Пользователь = Неопределено Тогда + Пользователь = Пользователи.АвторизованныйПользователь(); + КонецЕсли; - Если Пользователь = Неопределено Тогда - - Запрос.УстановитьПараметр("Администратор", ТекущийПользователь); + Если ТипЗнч(Пользователь) = Тип("СправочникСсылка.Пользователи") Тогда + Запрос.УстановитьПараметр("Автор", Пользователь); Запрос.Текст = СтрЗаменить(Запрос.Текст, "И Варианты.Автор.ИдентификаторПользователяИБ = &GUID", ""); - - ИначеЕсли ТипЗнч(Пользователь) = Тип("СправочникСсылка.Пользователи") Тогда - - Запрос.УстановитьПараметр("Администратор", Пользователь); - Запрос.Текст = СтрЗаменить(Запрос.Текст, "И Варианты.Автор.ИдентификаторПользователяИБ = &GUID", ""); - Иначе - Если ТипЗнч(Пользователь) = Тип("УникальныйИдентификатор") Тогда ИдентификаторПользователя = Пользователь; Иначе @@ -180,10 +174,8 @@ КонецЕсли; ИдентификаторПользователя = ПользовательИБ.УникальныйИдентификатор; КонецЕсли; - Запрос.УстановитьПараметр("GUID", ИдентификаторПользователя); - Запрос.Текст = СтрЗаменить(Запрос.Текст, "И Варианты.Автор = &Администратор", ""); - + Запрос.Текст = СтрЗаменить(Запрос.Текст, "И Варианты.Автор = &Автор", ""); КонецЕсли; ТаблицаВариантов = Запрос.Выполнить().Выгрузить(); @@ -254,7 +246,6 @@ ОписаниеНастроек.Представление = Выборка.Наименование; Настройки = Выборка.Настройки.Получить(); КонецЕсли; - КонецПроцедуры // Обработчик записи настроек варианта отчета. @@ -309,7 +300,6 @@ КонецЕсли; ВариантОбъект.Записать(); КонецЕсли; - КонецПроцедуры // Обработчик получения описания настроек варианта отчета. @@ -420,7 +410,6 @@ ВариантОбъект.Наименование = ОписаниеНастроек.Представление; ВариантОбъект.Записать(); КонецЕсли; - КонецПроцедуры #КонецЕсли diff --git a/SSL/src/StyleItems/ИтогиФонГруппы/ИтогиФонГруппы.mdo b/SSL/src/StyleItems/ИтогиФонГруппы/ИтогиФонГруппы.mdo new file mode 100644 index 000000000..c2cf299d8 --- /dev/null +++ b/SSL/src/StyleItems/ИтогиФонГруппы/ИтогиФонГруппы.mdo @@ -0,0 +1,15 @@ + + + ИтогиФонГруппы + + ru + Итоги фон группы + + + + 220 + 220 + 220 + + + diff --git a/SSL/src/StyleItems/НеПринятыеКИсполнениюЗадачи/НеПринятыеКИсполнениюЗадачи.mdo b/SSL/src/StyleItems/НеПринятыеКИсполнениюЗадачи/НеПринятыеКИсполнениюЗадачи.mdo index d9a5a804c..a8bc6c3a4 100644 --- a/SSL/src/StyleItems/НеПринятыеКИсполнениюЗадачи/НеПринятыеКИсполнениюЗадачи.mdo +++ b/SSL/src/StyleItems/НеПринятыеКИсполнениюЗадачи/НеПринятыеКИсполнениюЗадачи.mdo @@ -8,7 +8,7 @@ Font - Style.TextFont + Style.NormalTextFont true false false diff --git a/SSL/src/Subsystems/Администрирование/CommandInterface.cmi b/SSL/src/Subsystems/Администрирование/CommandInterface.cmi index 2546b0a52..7975c1525 100644 --- a/SSL/src/Subsystems/Администрирование/CommandInterface.cmi +++ b/SSL/src/Subsystems/Администрирование/CommandInterface.cmi @@ -47,10 +47,6 @@ Catalog.ВидыКонтактнойИнформации.StandardCommand.OpenList - - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardCommand.OpenList - - DataProcessor.РегламентныеИФоновыеЗадания.Command.РегламентныеИФоновыеЗадания @@ -68,7 +64,7 @@ - CommonCommand.СинхронизацияДанных + CommonCommand.НастройкиСинхронизацииДанных @@ -79,18 +75,6 @@ Catalog.КлассификаторБанковРФ.StandardCommand.OpenList - - Catalog.Организации.Command.Организации - - - - Catalog.Организации.Command.РеквизитыОрганизации - - - - Catalog.Организации.Command.ДобавитьОрганизацию - - Catalog.КлючевыеОперации.StandardCommand.OpenList @@ -116,7 +100,7 @@ - InformationRegister.АдресныеОбъекты.Command.АвторизацияНаСайтеПоддержки + InformationRegister.АдресныеОбъекты.Command.ПодключитьИнтернетПоддержку @@ -124,7 +108,19 @@ - Catalog.УчетныеЗаписиЭлектроннойПочты.Command.НастройкаСистемнойУчетнойЗаписи + Catalog.НаборыДополнительныхРеквизитовИСведений.Command.ДополнительныеРеквизиты + + + + Catalog.НаборыДополнительныхРеквизитовИСведений.Command.ДополнительныеСведения + + + + CommonCommand.ПредупрежденияПриСинхронизацииДанных + + + + DataProcessor.ВыгрузкаЗагрузкаEnterpriseData.Command.ЗагрузкаДанныхEnterpriseData @@ -189,6 +185,10 @@ Report.СведенияОПользователях.StandardCommand.Open + + Report.УниверсальныйОтчет.StandardCommand.Open + + DataProcessor.АвтоматическоеИзвлечениеТекстов.Command.АвтоматическоеИзвлечениеТекстов @@ -282,7 +282,7 @@ - DataProcessor.ПоискИУстановкаОбновлений.StandardCommand.Open + DataProcessor.УстановкаОбновлений.StandardCommand.Open @@ -309,6 +309,22 @@ DataProcessor.УправлениеИтогамиИАгрегатами.StandardCommand.Open + + CommonForm.НастройкаДоступаКСервисуMorpher.StandardCommand.Open + + + + CommonForm.НастройкиЭлектроннойПодписиИШифрования.StandardCommand.Open + + + + CommonForm.Настройка1СБухфон.StandardCommand.Open + + + + CommonForm.НастройкаКомандПечати.StandardCommand.Open + + DataProcessor.ИнформацияПриЗапуске.Command.ИнформацияПриЗапуске @@ -361,32 +377,30 @@ DataProcessor.ПанельАдминистрированияБСП.Command.ПоддержкаИОбслуживание DataProcessor.ПанельАдминистрированияБСП.Command.ОбщиеНастройки DataProcessor.ПанельАдминистрированияБСП.Command.НастройкиПользователейИПрав - DataProcessor.ПанельАдминистрированияБСП.Command.ПоискИУстановкаОбновлений DataProcessor.ПанельАдминистрированияБСП.Command.Органайзер - DataProcessor.ПанельАдминистрированияБСП.Command.НастройкиСинхронизацииДанных + DataProcessor.ПанельАдминистрированияБСП.Command.СинхронизацияДанных DataProcessor.ПанельАдминистрированияБСП.Command.НастройкиРаботыСФайлами DataProcessor.ПанельАдминистрированияБСП.Command.ПечатныеФормыОтчетыИОбработки Catalog.ВидыКонтактнойИнформации.StandardCommand.OpenList - Catalog.НаборыДополнительныхРеквизитовИСведений.StandardCommand.OpenList DataProcessor.РегламентныеИФоновыеЗадания.Command.РегламентныеИФоновыеЗадания InformationRegister.ИсполнителиЗадач.Command.РолиИИсполнителиЗадач Catalog.ТомаХраненияФайлов.StandardCommand.OpenList InformationRegister.ПользовательскиеМакетыПечати.StandardCommand.OpenList - CommonCommand.СинхронизацияДанных + CommonCommand.НастройкиСинхронизацииДанных Catalog.Валюты.StandardCommand.OpenList Catalog.КлассификаторБанковРФ.StandardCommand.OpenList - Catalog.Организации.Command.Организации - Catalog.Организации.Command.РеквизитыОрганизации - Catalog.Организации.Command.ДобавитьОрганизацию Catalog.КлючевыеОперации.StandardCommand.OpenList DataProcessor.УниверсальныйОбменДаннымиXML.Command.УниверсальныйОбменДанными DataProcessor.ЗагрузкаДанныхИзФайла.Command.ЗагрузкаДанныхИзФайла InformationRegister.НастройкиВерсионированияОбъектов.StandardCommand.OpenList InformationRegister.АдресныеОбъекты.StandardCommand.OpenList InformationRegister.АдресныеОбъекты.Command.ЗагрузитьАдресныйКлассификатор - InformationRegister.АдресныеОбъекты.Command.АвторизацияНаСайтеПоддержки + InformationRegister.АдресныеОбъекты.Command.ПодключитьИнтернетПоддержку InformationRegister.АдресныеОбъекты.Command.ОчиститьАдресныйКлассификатор - Catalog.УчетныеЗаписиЭлектроннойПочты.Command.НастройкаСистемнойУчетнойЗаписи + Catalog.НаборыДополнительныхРеквизитовИСведений.Command.ДополнительныеРеквизиты + Catalog.НаборыДополнительныхРеквизитовИСведений.Command.ДополнительныеСведения + CommonCommand.ПредупрежденияПриСинхронизацииДанных + DataProcessor.ВыгрузкаЗагрузкаEnterpriseData.Command.ЗагрузкаДанныхEnterpriseData NavigationPanelSeeAlso @@ -427,13 +441,19 @@ DataProcessor.НастройкиПользователей.Command.ОчисткаНастроекПользователей CommonForm.ПараметрыПроксиСервера.StandardCommand.Open DataProcessor.ПереносФайловВТома.Command.ПереносФайловВТома - DataProcessor.ПоискИУстановкаОбновлений.StandardCommand.Open + DataProcessor.УстановкаОбновлений.StandardCommand.Open DataProcessor.РегламентныеИФоновыеЗадания.StandardCommand.Open DataProcessor.РезервноеКопированиеИБ.StandardCommand.Open DataProcessor.РезультатыОбновленияПрограммы.StandardCommand.Open DataProcessor.УдалениеПомеченныхОбъектов.StandardCommand.Open DataProcessor.УниверсальныйОбменДаннымиXML.StandardCommand.Open DataProcessor.УправлениеИтогамиИАгрегатами.StandardCommand.Open + CommonForm.НастройкаДоступаКСервисуMorpher.StandardCommand.Open + CommonForm.НастройкиЭлектроннойПодписиИШифрования.StandardCommand.Open + CommonForm.Настройка1СБухфон.StandardCommand.Open + CommonForm.НастройкаКомандПечати.StandardCommand.Open + DataProcessor.ВыгрузкаЗагрузкаEnterpriseData.StandardCommand.Open + DataProcessor.ОценкаПроизводительности.Command.ЭкспортЗамеровПроизводительности diff --git a/SSL/src/Subsystems/Администрирование/Администрирование.mdo b/SSL/src/Subsystems/Администрирование/Администрирование.mdo index 8b48d776d..e2e9aa518 100644 --- a/SSL/src/Subsystems/Администрирование/Администрирование.mdo +++ b/SSL/src/Subsystems/Администрирование/Администрирование.mdo @@ -35,10 +35,10 @@ Catalog.ДополнительныеОтчетыИОбработки CommonForm.ОписаниеИзмененийПрограммы InformationRegister.ИсполнителиЗадач - DataProcessor.ПоискИУстановкаОбновлений + DataProcessor.УстановкаОбновлений DataProcessor.АвтоматическоеИзвлечениеТекстов DataProcessor.УправлениеИтогамиИАгрегатами - CommonCommand.СинхронизацияДанных + CommonCommand.НастройкиСинхронизацииДанных Catalog.СценарииОбменовДанными Catalog.ВариантыОтчетов InformationRegister.ДатыЗапретаИзменения @@ -58,7 +58,6 @@ CommonForm.НастройкиРегистрацииСобытийДоступаКПерсональнымДанным DataProcessor.ЗагрузкаКурсовВалют Catalog.КлассификаторБанковРФ - Catalog.Организации CommonForm.ВходВОбластьДанных CommonCommand.ДобавитьПользователейСервиса InformationRegister.ВерсииПодсистемОбластейДанных @@ -81,4 +80,11 @@ DataProcessor.ПоискИУдалениеДублей InformationRegister.ПравилаДляОбменаДанными Report.ПрогрессОтложенногоОбновления + CommonForm.НастройкиЭлектроннойПодписиИШифрования + Report.УниверсальныйОтчет + CommonForm.НастройкаДоступаКСервисуMorpher + CommonForm.Настройка1СБухфон + CommonForm.НастройкаКомандПечати + CommonCommand.ПредупрежденияПриСинхронизацииДанных + DataProcessor.ВыгрузкаЗагрузкаEnterpriseData diff --git a/SSL/src/Subsystems/ПодключаемыеОтчетыИОбработки/ПодключаемыеОтчетыИОбработки.mdo b/SSL/src/Subsystems/ПодключаемыеОтчетыИОбработки/ПодключаемыеОтчетыИОбработки.mdo new file mode 100644 index 000000000..3fcf36101 --- /dev/null +++ b/SSL/src/Subsystems/ПодключаемыеОтчетыИОбработки/ПодключаемыеОтчетыИОбработки.mdo @@ -0,0 +1,9 @@ + + + ПодключаемыеОтчетыИОбработки + + ru + Подключаемые отчеты и обработки + + Служебная переопределяемая подсистема. В состав включаются отчеты и обработки в модуле менеджера которых определена процедура ПриОпределенииНастроек. + diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Анкетирование/Анкетирование.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Анкетирование/Анкетирование.mdo index e4986b825..bca179885 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Анкетирование/Анкетирование.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Анкетирование/Анкетирование.mdo @@ -40,5 +40,10 @@ Role.ДобавлениеИзменениеОпросов FunctionalOption.ИспользоватьАнкетирование DefinedType.Респондент + DefinedType.Интервьюер + Enum.СпособыОтображенияПодсказок + Enum.РежимыАнкетирования + Enum.ВидыПереключателяВАнкетах + CommonPicture.ДобавитьКомплексныйВопрос Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/БазоваяФункциональность/БазоваяФункциональность.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/БазоваяФункциональность/БазоваяФункциональность.mdo index 5c105b348..6ac7eeb0c 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/БазоваяФункциональность/БазоваяФункциональность.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/БазоваяФункциональность/БазоваяФункциональность.mdo @@ -117,7 +117,6 @@ DataProcessor.НерекомендуемаяВерсияПлатформы Constant.ПараметрыСлужебныхСобытий CommonModule.ПодсистемыКонфигурацииПереопределяемый - CommonModule.ОбновлениеИнформационнойБазыБСП CommandGroup.Информация CommonPicture.ИнформацияПоНедоступнымПолям CommonPicture.ОтправитьЭлектронноеПисьмо @@ -197,7 +196,6 @@ InformationRegister.РежимыПодключенияВнешнихМодулей CommonModule.НастройкаРазрешенийНаИспользованиеВнешнихРесурсовВызовСервера CommonModule.РаботаВБезопасномРежимеКлиентПереопределяемый - CommonForm.АвторизацияНаСайтеПоддержкиПользователей InformationRegister.БезопасноеХранилищеДанных InformationRegister.БезопасноеХранилищеДанныхОбластейДанных Catalog.ИдентификаторыОбъектовРасширений @@ -209,12 +207,12 @@ InformationRegister.ИдентификаторыОбъектовВерсийРасширений SessionParameter.УстановленныеРасширения SessionParameter.ВерсияРасширений - SessionParameter.АдресСвойствРасширений + SessionParameter.ПодключенныеРасширения Catalog.ВерсииРасширений InformationRegister.СеансыВерсийРасширений ScheduledJob.УдалениеУстаревшихПараметровРаботыВерсийРасширений InformationRegister.ПараметрыРаботыВерсийРасширений - CommonForm.УстановленныеРасширения + CommonForm.Расширения Role.БазовыеПраваВнешнегоПользователя XDTOPackage.ApplicationPermissions_1_0_0_2 CommonModule.ДлительныеОперацииВызовСервера @@ -224,5 +222,22 @@ CommonPicture.ВставитьИзБуфераОбмена CommonModule.РегламентныеЗаданияСервер CommonPicture.ВосклицательныйЗнакКрасный + StyleItem.ИтогиФонГруппы + DefinedType.Организация + Constant.АдресПубликацииИнформационнойБазыВИнтернете + Constant.АдресПубликацииИнформационнойБазыВЛокальнойСети + CommonModule.ПодключаемыеКоманды + CommonModule.ПодключаемыеКомандыВызовСервера + CommonModule.ПодключаемыеКомандыКлиент + CommonModule.ПодключаемыеКомандыКлиентПовтИсп + CommonModule.ПодключаемыеКомандыПовтИсп + Constant.ПараметрыПодключаемыхКоманд + CommonForm.ПустойРабочийСтол + CommonPicture.СостоянияРасширенийКонфигурации + CommonCommand.ПредупрежденияПриЗавершенииРаботы + CommonPicture.НезавершившаясяПроверка + Enum.СпособыРедактированияЭлектронныхПисем + CommonModule.ПодключаемыеКомандыКлиентСервер + CommonModule.ПодключаемыеКомандыПереопределяемый Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Банки/Банки.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Банки/Банки.mdo index 706adaa53..84661488e 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Банки/Банки.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Банки/Банки.mdo @@ -13,5 +13,6 @@ CommonModule.РаботаСБанкамиКлиент CommonModule.РаботаСБанкамиПереопределяемый Role.ДобавлениеИзменениеБанков + Constant.ИспользоватьАльтернативныйСерверДляЗагрузкиКлассификатораБанков Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/БизнесПроцессыИЗадачи/БизнесПроцессыИЗадачи.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/БизнесПроцессыИЗадачи/БизнесПроцессыИЗадачи.mdo index 297e4e692..b9e60b1ae 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/БизнесПроцессыИЗадачи/БизнесПроцессыИЗадачи.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/БизнесПроцессыИЗадачи/БизнесПроцессыИЗадачи.mdo @@ -73,5 +73,11 @@ DefinedType.БизнесПроцесс DefinedType.ОбъектАдресации DefinedType.ПредметЗадачи + DefinedType.ОтложенныеБизнесПроцессы + InformationRegister.ПроцессыДляЗапуска + CommonPicture.ПроцессОтложен + ScheduledJob.СтартОтложенныхПроцессов + Enum.СостоянияПроцессовДляЗапуска + CommonPicture.СостоянияПроцессов Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Валюты/Валюты.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Валюты/Валюты.mdo index de9c2eb8e..e56f6cf74 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Валюты/Валюты.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Валюты/Валюты.mdo @@ -23,5 +23,6 @@ Enum.СпособыУстановкиКурсаВалюты Role.ДобавлениеИзменениеКурсовВалют Role.ЧтениеКурсовВалют + Constant.ИспользоватьАльтернативныйСерверДляЗагрузкиКурсовВалют Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ВариантыОтчетов/ВариантыОтчетов.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ВариантыОтчетов/ВариантыОтчетов.mdo index da3fc1d34..e26301837 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ВариантыОтчетов/ВариантыОтчетов.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ВариантыОтчетов/ВариантыОтчетов.mdo @@ -8,12 +8,11 @@ SettingsStorage.ХранилищеВариантовОтчетов CommonModule.ВариантыОтчетов Catalog.ВариантыОтчетов - Subsystem.СтандартныеПодсистемы.Subsystem.ВариантыОтчетов Enum.ТипыОтчетов CommonModule.ВариантыОтчетовПереопределяемый CommonModule.ВариантыОтчетовКлиент Role.ДобавлениеИзменениеВариантовОтчетов - Role.ИспользованиеВариантовОтчетов + Role.ДобавлениеИзменениеЛичныхВариантовОтчетов CommonModule.ВариантыОтчетовКлиентСервер CommonModule.ВариантыОтчетовПовтИсп InformationRegister.НастройкиВариантовОтчетов @@ -31,7 +30,6 @@ CommonForm.ФормаОтчета CommonForm.ФормаВариантаОтчета CommonPicture.БыстрыеНастройкиОтчета - CommonForm.ВыборПроизвольногоПериода CommonPicture.ЭлектронноеПисьмо CommonPicture.ВариантыОтчетовДоступныеВсемПользователям StyleItem.МоиВариантыОтчетовЦвет @@ -73,5 +71,6 @@ CommonForm.ВспомогательнаяФормаНастроекОтчета Report.УниверсальныйОтчет Role.ИспользованиеУниверсальногоОтчета + Role.ЧтениеВариантовОтчетов Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Взаимодействия/Взаимодействия.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Взаимодействия/Взаимодействия.mdo index f85f64c23..d1b28116f 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Взаимодействия/Взаимодействия.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Взаимодействия/Взаимодействия.mdo @@ -48,7 +48,6 @@ Catalog.ТелефонныйЗвонокПрисоединенныеФайлы EventSubscription.УстановитьПометкуУдаленияПрисоединенныхФайловДокументовВзаимодействия CommonModule.ВзаимодействияВызовСервера - Enum.СпособыРедактированияЭлектронныхПисем InformationRegister.НастройкиУчетныхЗаписейЭлектроннойПочты InformationRegister.УведомленияОПрочтении Enum.ПорядокОтветовНаЗапросыУведомленийОПрочтении @@ -86,7 +85,6 @@ Catalog.СообщениеSMSПрисоединенныеФайлы Enum.СостоянияСообщенияSMS Enum.СостоянияДокументаСообщениеSMS - Constant.АдресПубликацииИнформационнойБазыВИнтернете CommonPicture.КоличествоРассмотрено Catalog.СтроковыеКонтактыВзаимодействий InformationRegister.СостоянияКонтактовВзаимодействий @@ -100,5 +98,7 @@ InformationRegister.НепринятыеКОбработкеПочтовымСерверомИсходящиеПисьма CommonPicture.ВнешняяСсылкаНаОбъектИнформационнойБазы InformationRegister.ЗаблокированныеДляПолученияУчетныеЗаписи + InformationRegister.ДатыПоследнейЗагрузкиПочтовыхСообщений + EventSubscription.ЗаполнитьНаборыЗначенийДоступаТабличныхЧастейДокументовВзаимодействия Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ДатыЗапретаИзменения/ДатыЗапретаИзменения.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ДатыЗапретаИзменения/ДатыЗапретаИзменения.mdo index 8447e4318..56249846f 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ДатыЗапретаИзменения/ДатыЗапретаИзменения.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ДатыЗапретаИзменения/ДатыЗапретаИзменения.mdo @@ -26,5 +26,6 @@ Role.ДобавлениеИзменениеДатЗапретаИзменения FunctionalOption.ИспользоватьДатыЗапретаЗагрузки FunctionalOption.ИспользоватьДатыЗапретаИзменения + CommonModule.ДатыЗапретаИзмененияСлужебныйКлиентСервер Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ДополнительныеОтчетыИОбработки/ДополнительныеОтчетыИОбработки.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ДополнительныеОтчетыИОбработки/ДополнительныеОтчетыИОбработки.mdo index 9abb7d754..50cad8305 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ДополнительныеОтчетыИОбработки/ДополнительныеОтчетыИОбработки.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ДополнительныеОтчетыИОбработки/ДополнительныеОтчетыИОбработки.mdo @@ -17,7 +17,7 @@ CommonCommand.СозданиеСвязанныхОбъектов InformationRegister.НазначениеДополнительныхОбработок Catalog.ДополнительныеОтчетыИОбработки - Role.ИспользованиеДополнительныхОтчетовИОбработок + Role.ЧтениеДополнительныхОтчетовИОбработок CommonModule.ДополнительныеОтчетыИОбработки CommonModule.ДополнительныеОтчетыИОбработкиКлиент Enum.СпособыВызоваДополнительныхОбработок @@ -34,7 +34,6 @@ FunctionalOptionsParameter.ДополнительныеОтчетыИОбработкиТипФормы FunctionalOptionsParameter.ДополнительныеОтчетыИОбработкиОбъектНазначения CommonModule.ДополнительныеОтчетыИОбработкиВызовСервера - CommonForm.ДлительнаяОперацияДополнительныхОтчетовИОбработок Constant.ИспользоватьДополнительныеОтчетыИОбработки FunctionalOption.ИспользоватьДополнительныеОтчетыИОбработки CommonModule.ДополнительныеОтчетыИОбработкиПовтИсп diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ЗаметкиПользователя/ЗаметкиПользователя.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ЗаметкиПользователя/ЗаметкиПользователя.mdo index 1d3b00b1b..3ebc11ed8 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ЗаметкиПользователя/ЗаметкиПользователя.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ЗаметкиПользователя/ЗаметкиПользователя.mdo @@ -13,7 +13,7 @@ CommonPicture.КоллекцияЗаметки FunctionalOption.ИспользоватьЗаметки Constant.ИспользоватьЗаметки - Role.ИспользованиеЗаметок + Role.ДобавлениеИзменениеЗаметок CommonModule.ЗаметкиПользователяСлужебный CommonModule.ЗаметкиПользователя DefinedType.ПредметЗаметок diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ЗаполнениеОбъектов/ЗаполнениеОбъектов.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ЗаполнениеОбъектов/ЗаполнениеОбъектов.mdo new file mode 100644 index 000000000..d3b036e5a --- /dev/null +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ЗаполнениеОбъектов/ЗаполнениеОбъектов.mdo @@ -0,0 +1,11 @@ + + + ЗаполнениеОбъектов + + ru + Заполнение объектов + + CommonModule.ЗаполнениеОбъектов + CommonModule.ЗаполнениеОбъектовПереопределяемый + Subsystem.СтандартныеПодсистемы + diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/НапоминанияПользователя/НапоминанияПользователя.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/НапоминанияПользователя/НапоминанияПользователя.mdo index 287491ba8..75c3f8149 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/НапоминанияПользователя/НапоминанияПользователя.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/НапоминанияПользователя/НапоминанияПользователя.mdo @@ -20,8 +20,9 @@ EventSubscription.ПроверитьИзмененияДатВПредмете CommonPicture.КоллекцияНапоминания CommonModule.НапоминанияПользователяВызовСервера - Role.ИспользованиеНапоминаний + Role.ДобавлениеИзменениеНапоминаний DefinedType.ПредметНапоминания DefinedType.ПредметНапоминанияОбъект + CommonModule.НапоминанияПользователяПереопределяемый Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбменДанными/ОбменДанными.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбменДанными/ОбменДанными.mdo index 795e2a359..76fb65f31 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбменДанными/ОбменДанными.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбменДанными/ОбменДанными.mdo @@ -53,7 +53,7 @@ InformationRegister.СостоянияУспешныхОбменовДанными CommonPicture.СтатусыСопоставленияОбъектов DataProcessor.КонвертацияОбъектовРаспределенныхИнформационныхБаз - CommonCommand.СинхронизацияДанных + CommonCommand.НастройкиСинхронизацииДанных CommonCommand.Синхронизировать CommonCommand.СобытияОтправки CommonCommand.СценарииСинхронизации @@ -132,7 +132,7 @@ CommonModule.ОбменДаннымиXDTOСервер XDTOPackage.ExchangeMessage XDTOPackage.EnterpriseData_1_0_beta - XDTOPackage.EnterpriseData_1_0_3 + XDTOPackage.EnterpriseData_1_0_4 InformationRegister.ПубличныеИдентификаторыСинхронизируемыхОбъектов InformationRegister.ДанныеОбъектовДляРегистрацииВОбменах DataProcessor.КонвертацияОбъектовXDTO @@ -143,7 +143,10 @@ CommonModule.ОбменДаннымиСлужебный InformationRegister.ОбработчикиСобытийСинхронизацииДанных Constant.ДанныеДляОтложенногоОбновления - XDTOPackage.EnterpriseData_1_1_3 - XDTOPackage.EnterpriseData_1_2_1 + XDTOPackage.EnterpriseData_1_1_4 + XDTOPackage.EnterpriseData_1_2_2 + DataProcessor.ВыгрузкаЗагрузкаEnterpriseData + XDTOPackage.EnterpriseData_1_3_6 + XDTOPackage.EnterpriseData_1_4_2 Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбновлениеВерсииИБ/ОбновлениеВерсииИБ.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбновлениеВерсииИБ/ОбновлениеВерсииИБ.mdo index 8038ad0f6..f66b3f957 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбновлениеВерсииИБ/ОбновлениеВерсииИБ.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбновлениеВерсииИБ/ОбновлениеВерсииИБ.mdo @@ -35,5 +35,6 @@ CommonModule.ОбновлениеИнформационнойБазыВызовСервера Constant.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно FunctionalOption.ОтложенноеОбновлениеВГлавномУзлеЗавершеноУспешно + CommonModule.ОбновлениеИнформационнойБазыБСП Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбновлениеКонфигурации/Help/ru.html b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбновлениеКонфигурации/Help/ru.html index 8d1942cb8..018dc9f2d 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбновлениеКонфигурации/Help/ru.html +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбновлениеКонфигурации/Help/ru.html @@ -1,2 +1,2 @@ -

          Конфигурация позволяет проводить обновление конфигурации инфорационной базы в режиме 1С:Предприятия «по требованию» или в указанное время (только для клиент-серверного режима). Имеется возможность получения обновлений через Интернет, с диска 1С:ИТС или явный выбор файла обновления из локального или сетевого каталога. Для перехода к обновлению конфигурации можно воспользоваться командой Обновление конфигурации раздела Настройка и администрирование.

          \ No newline at end of file +

          Конфигурация позволяет проводить обновление конфигурации инфорационной базы в режиме 1С:Предприятия «по требованию» или в указанное время (только для клиент-серверного режима). Имеется возможность получения обновлений через Интернет, с диска 1С:ИТС или явный выбор файла обновления из локального или сетевого каталога. Для перехода к обновлению конфигурации можно воспользоваться командой Обновление конфигурации раздела Настройка и администрирование.

          \ No newline at end of file diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбновлениеКонфигурации/ОбновлениеКонфигурации.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбновлениеКонфигурации/ОбновлениеКонфигурации.mdo index 772eda711..8dd4c88bf 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбновлениеКонфигурации/ОбновлениеКонфигурации.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОбновлениеКонфигурации/ОбновлениеКонфигурации.mdo @@ -11,14 +11,9 @@ CommonModule.ОбновлениеКонфигурации - CommonModule.ОбновлениеКонфигурацииПереопределяемый CommonModule.ОбновлениеКонфигурацииКлиент - CommonModule.ОбновлениеКонфигурацииГлобальный - CommonModule.ОбновлениеКонфигурацииКлиентПереопределяемый - Role.ПроверкаДоступныхОбновленийКонфигурации Constant.СтатусОбновленияКонфигурации - DataProcessor.ПоискИУстановкаОбновлений - CommonModule.ОбновлениеКонфигурацииКлиентСервер + DataProcessor.УстановкаОбновлений CommonModule.ОбновлениеКонфигурацииВызовСервера Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Организации/Организации.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Организации/Организации.mdo deleted file mode 100644 index 1ca1f6dfd..000000000 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Организации/Организации.mdo +++ /dev/null @@ -1,18 +0,0 @@ - - - Организации - - ru - Организации - - Catalog.Организации - FunctionalOption.ПрефиксыОрганизаций - FunctionalOptionsParameter.Организация - CommonModule.ОрганизацииСлужебный - FunctionalOption.ИспользоватьНесколькоОрганизаций - Constant.ИспользоватьНесколькоОрганизаций - Constant.НеИспользоватьНесколькоОрганизаций - FunctionalOption.НеИспользоватьНесколькоОрганизаций - EventSubscription.ПроверитьЗначениеОпцииИспользоватьНесколькоОрганизаций - Subsystem.СтандартныеПодсистемы - diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОтправкаSMS/ОтправкаSMS.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОтправкаSMS/ОтправкаSMS.mdo index 6e5d34838..9ae5a214d 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОтправкаSMS/ОтправкаSMS.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОтправкаSMS/ОтправкаSMS.mdo @@ -18,5 +18,10 @@ CommonModule.ОтправкаSMSКлиентПереопределяемый CommonForm.ОтправкаSMS Role.ОтправкаSMS + CommonModule.ОтправкаSMSЧерезSMSRU + CommonModule.ОтправкаSMSЧерезSMSЦЕНТР + CommonModule.ОтправкаSMSЧерезСМСУслуги + CommonModule.ОтправкаSMSЧерезGSMINFORM + CommonModule.ОтправкаSMSПовтИсп Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОценкаПроизводительности/CommandInterface.cmi b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОценкаПроизводительности/CommandInterface.cmi index c0a90fee7..23c4e2627 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОценкаПроизводительности/CommandInterface.cmi +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОценкаПроизводительности/CommandInterface.cmi @@ -1,11 +1,40 @@ + + + InformationRegister.УдалитьЗамерыВремени2.StandardCommand.OpenList + + + + InformationRegister.УдалитьЗамерыВремениТехнологические.StandardCommand.OpenList + + + + Constant.ДатаПоследнейВыгрузкиЗамеровПроизводительностиUTC.StandardCommand.Open + + + + Constant.КоличествоЗамеровВПакетеЭкспорта.StandardCommand.Open + + + + Constant.ОценкаПроизводительностиПериодЗаписи.StandardCommand.Open + + + + Constant.ПериодХраненияЗамеров.StandardCommand.Open + + + NavigationPanelOrdinary Catalog.КлючевыеОперации.StandardCommand.OpenList Enum.УдалитьКлючевыеОперации.StandardCommand.OpenList + InformationRegister.УдалитьЗамерыВремени2.StandardCommand.OpenList InformationRegister.ЗамерыВремени.StandardCommand.OpenList + InformationRegister.ЗамерыВремениТехнологические.StandardCommand.OpenList + InformationRegister.УдалитьЗамерыВремениТехнологические.StandardCommand.OpenList diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОценкаПроизводительности/ОценкаПроизводительности.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОценкаПроизводительности/ОценкаПроизводительности.mdo index 83b8cc4f9..aa0b1d5ec 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОценкаПроизводительности/ОценкаПроизводительности.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ОценкаПроизводительности/ОценкаПроизводительности.mdo @@ -21,12 +21,17 @@ Constant.ОценкаПроизводительностиПериодЗаписи InformationRegister.УдалитьЗамерыВремени CommonModule.ОценкаПроизводительностиСлужебный - InformationRegister.ЗамерыВремени - Constant.ОценкаПроизводительностиЭкспортВсехКлючевыхОпераций + InformationRegister.УдалитьЗамерыВремени2 SessionParameter.КомментарийЗамераВремени - InformationRegister.ЗамерыВремениТехнологические + InformationRegister.УдалитьЗамерыВремениТехнологические CommonModule.ОценкаПроизводительности CommonModule.ОценкаПроизводительностиВызовСервера + InformationRegister.ЗамерыВремени + InformationRegister.ЗамерыВремениТехнологические + XDTOPackage.ApdexExport_1_0_0_2 + Constant.КоличествоЗамеровВПакетеЭкспорта + Constant.ПериодХраненияЗамеров + ScheduledJob.ОчисткаЗамеровВремени CommonModule.ОценкаПроизводительностиПовтИсп Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Печать/Печать.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Печать/Печать.mdo index 022e2fada..93feb57ab 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Печать/Печать.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/Печать/Печать.mdo @@ -39,5 +39,6 @@ InformationRegister.НастройкиКомандПечати CommonForm.НастройкаКомандПечати CommonPicture.Пустая + CommonModule.УправлениеПечатьюКлиентСервер Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ПрефиксацияОбъектов/ПрефиксацияОбъектов.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ПрефиксацияОбъектов/ПрефиксацияОбъектов.mdo index 8c9803584..4263f9df7 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ПрефиксацияОбъектов/ПрефиксацияОбъектов.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ПрефиксацияОбъектов/ПрефиксацияОбъектов.mdo @@ -16,6 +16,5 @@ CommonModule.ПрефиксацияОбъектовКлиентСерверПереопределяемый CommonModule.ПрефиксацияОбъектовСлужебный CommonModule.ПрефиксацияОбъектовПереопределяемый - CommonModule.ПерепрефиксацияОбъектов Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/РаботаСКонтрагентами/РаботаСКонтрагентами.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/РаботаСКонтрагентами/РаботаСКонтрагентами.mdo index 87b874cfc..1428517ca 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/РаботаСКонтрагентами/РаботаСКонтрагентами.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/РаботаСКонтрагентами/РаботаСКонтрагентами.mdo @@ -18,7 +18,6 @@ InformationRegister.СостоянияКонтрагентов ScheduledJob.ПроверкаКонтрагентов DataProcessor.ИнструкцияПоИспользованиюПроверкиКонтрагента - CommonPicture.НезавершившаясяПроверка CommonModule.ПроверкаКонтрагентовКлиентСервер Enum.СостоянияПроверкиКонтрагентов InformationRegister.ДокументыСОшибкамиПроверкиКонтрагентов @@ -42,7 +41,7 @@ DefinedType.КонтрагентОбъект EventSubscription.СохранитьРезультатПроверкиКонтрагента CommonForm.ЗаполнениеРеквизитовКонтрагента - Role.ИспользованиеДосьеКонтрагента + Role.ПросмотрОтчетаДосьеКонтрагента Report.ДосьеКонтрагента CommonPicture.ДосьеУвеличениеПоказателя CommonPicture.ДосьеУменьшениеПоказателя diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/РаботаСПочтовымиСообщениями/РаботаСПочтовымиСообщениями.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/РаботаСПочтовымиСообщениями/РаботаСПочтовымиСообщениями.mdo index 3b2474d8a..467d06179 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/РаботаСПочтовымиСообщениями/РаботаСПочтовымиСообщениями.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/РаботаСПочтовымиСообщениями/РаботаСПочтовымиСообщениями.mdo @@ -21,7 +21,7 @@ Enum.ТипыТекстовЭлектронныхПисем CommonPicture.ПриложитьФайл CommonCommand.НастройкаСистемнойУчетнойЗаписиЭлектроннойПочты - Role.ИспользованиеУчетныхЗаписейЭлектроннойПочты + Role.ЧтениеУчетныхЗаписейЭлектроннойПочты CommonModule.РаботаСПочтовымиСообщениямиВызовСервера CommonForm.ОтправкаТабличныхДокументовПоПочте CommonModule.РаботаСПочтовымиСообщениямиПереопределяемый diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/СтруктураПодчиненности/СтруктураПодчиненности.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/СтруктураПодчиненности/СтруктураПодчиненности.mdo index af15f39eb..d0cc57f73 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/СтруктураПодчиненности/СтруктураПодчиненности.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/СтруктураПодчиненности/СтруктураПодчиненности.mdo @@ -34,6 +34,19 @@ CommonPicture.ДокументЗаписанКоннекторЛевоНиз CommonPicture.ДокументЗаписанКоннекторЛевоВерх CommonModule.СтруктураПодчиненностиПереопределяемый - Role.ИспользованиеСтруктурыПодчиненности + Role.ПросмотрСвязанныеДокументы + CommonModule.СтруктураПодчиненностиСлужебный + CommonPicture.СправочникПВХКоннекторВверх + CommonPicture.СправочникПВХКоннекторВерхНиз + CommonPicture.СправочникПВХКоннекторЛево + CommonPicture.СправочникПВХКоннекторЛевоВерх + CommonPicture.СправочникПВХКоннекторЛевоНиз + CommonPicture.СправочникПВХКоннекторНиз + CommonPicture.СправочникПВХПомеченНаУдалениеКоннекторВерх + CommonPicture.СправочникПВХПомеченНаУдалениеКоннекторВерхНиз + CommonPicture.СправочникПВХПомеченНаУдалениеКоннекторЛево + CommonPicture.СправочникПВХПомеченНаУдалениеКоннекторЛевоВерх + CommonPicture.СправочникПВХПомеченНаУдалениеКоннекторЛевоНиз + CommonPicture.СправочникПВХПомеченНаУдалениеКоннекторНиз Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ТекущиеДела/ТекущиеДела.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ТекущиеДела/ТекущиеДела.mdo index 9b328b5c5..230ef8c0c 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ТекущиеДела/ТекущиеДела.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ТекущиеДела/ТекущиеДела.mdo @@ -10,7 +10,7 @@ StyleItem.ЗаголовокДелаЦвет CommonModule.ТекущиеДелаПереопределяемый CommonModule.ТекущиеДелаСлужебныйПовтИсп - Role.ИспользованиеТекущихДел + Role.ИспользованиеОбработкиТекущиеДела CommonPicture.СтрелкаВправоКрасная CommonModule.ТекущиеДелаСервер Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/УправлениеДоступом/УправлениеДоступом.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/УправлениеДоступом/УправлениеДоступом.mdo index 229a00ff3..4857e7b8e 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/УправлениеДоступом/УправлениеДоступом.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/УправлениеДоступом/УправлениеДоступом.mdo @@ -65,5 +65,6 @@ DefinedType.ЗначениеДоступаСГруппамиЗначенийДоступаОбъект EventSubscription.ЗаполнитьНаборыЗначенийДоступаТабличныхЧастей EventSubscription.ОбновитьГруппыВладельцевНастроекПрав + SessionParameter.ОграничениеДоступаНаУровнеЗаписейВключено Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ШаблоныСообщений/ШаблоныСообщений.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ШаблоныСообщений/ШаблоныСообщений.mdo new file mode 100644 index 000000000..2dcf4955d --- /dev/null +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ШаблоныСообщений/ШаблоныСообщений.mdo @@ -0,0 +1,28 @@ + + + ШаблоныСообщений + + ru + Шаблоны сообщений + + FunctionalOption.ИспользоватьШаблоныСообщений + Catalog.ШаблоныСообщений + DefinedType.ПредметШаблонаСообщения + CommonCommand.ОтправитьSMS + CommonCommand.ОтправитьПисьмо + CommonModule.ШаблоныСообщенийПереопределяемый + CommonModule.ШаблоныСообщений + CommonModule.ШаблоныСообщенийСлужебный + Catalog.ШаблоныСообщенийПрисоединенныеФайлы + Constant.ИспользоватьОтправкуSMSВШаблонахСообщений + Constant.ИспользоватьЭлектроннуюПочтуВШаблонахСообщений + FunctionalOption.ИспользоватьОтправкуSMSВШаблонахСообщений + FunctionalOption.ИспользоватьЭлектроннуюПочтуВШаблонахСообщений + Constant.ИспользоватьШаблоныСообщений + CommonPicture.КоллекцияПиктограммПараметрыШаблонаСообщения + Role.ДобавлениеИзменениеШаблоновСообщений + CommonModule.ШаблоныСообщенийКлиент + CommonModule.ШаблоныСообщенийКлиентСервер + CommonModule.ШаблоныСообщенийСервер + Subsystem.СтандартныеПодсистемы + diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ЭлектроннаяПодпись/ЭлектроннаяПодпись.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ЭлектроннаяПодпись/ЭлектроннаяПодпись.mdo index b01cd3705..40da07003 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ЭлектроннаяПодпись/ЭлектроннаяПодпись.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/Subsystems/ЭлектроннаяПодпись/ЭлектроннаяПодпись.mdo @@ -22,7 +22,7 @@ CommonModule.ЭлектроннаяПодписьКлиентСервер CommonForm.ЭлектроннаяПодпись FunctionalOption.ИспользоватьЭлектронныеПодписи - Role.ИспользованиеЭлектроннойПодписиИШифрования + Role.ДобавлениеИзменениеЭлектронныхПодписейИШифрование CommonForm.ОтчетОСохраненииФайловЭлектронныхПодписей Catalog.ПрограммыЭлектроннойПодписиИШифрования Constant.ИспользоватьШифрование @@ -45,5 +45,6 @@ Catalog.СертификатыКлючейЭлектроннойПодписиИШифрования Enum.СостоянияЗаявленияНаВыпускСертификата CommonPicture.ЗаявлениеНаВыпускСертификатаКлюча + CommonForm.РезультатПроверки Subsystem.СтандартныеПодсистемы diff --git a/SSL/src/Subsystems/СтандартныеПодсистемы/СтандартныеПодсистемы.mdo b/SSL/src/Subsystems/СтандартныеПодсистемы/СтандартныеПодсистемы.mdo index 350ba4c41..af421d664 100644 --- a/SSL/src/Subsystems/СтандартныеПодсистемы/СтандартныеПодсистемы.mdo +++ b/SSL/src/Subsystems/СтандартныеПодсистемы/СтандартныеПодсистемы.mdo @@ -22,6 +22,7 @@ ЗавершениеРаботыПользователей ЗагрузкаДанныхИзФайла ЗаметкиПользователя + ЗаполнениеОбъектов ЗапретРедактированияРеквизитовОбъектов ЗащитаПерсональныхДанных Интеграция1СБухфон @@ -34,7 +35,6 @@ ОбменДанными ОбновлениеВерсииИБ ОбновлениеКонфигурации - Организации ОтправкаSMS ОценкаПроизводительности Печать @@ -61,5 +61,6 @@ УправлениеИтогамиИАгрегатами ФайловыеФункции ЦентрМониторинга + ШаблоныСообщений ЭлектроннаяПодпись diff --git a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/Дополнительно/Form.form b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/Дополнительно/Form.form index aabab48f1..c3ee7ce28 100644 --- a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/Дополнительно/Form.form +++ b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/Дополнительно/Form.form @@ -5,8 +5,8 @@ Дополнительно - ГруппаШапка - 45 + Документ + 99 Наименование 41 @@ -39,7 +39,7 @@ Left true - true + 50 true true true @@ -47,6 +47,662 @@ Normal + + ГруппаРезультат + 63 + + Выполнена + 64 + true + true + + true + + + Объект.Executed + + Right + + ВыполненаExtendedTooltip + 90 + Label + true + true + + Left + + + + ВыполненаКонтекстноеМеню + 65 + true + + CheckBoxField + Enter + true + Left + true + + + + ДатаИсполнения + 66 + true + true + + true + + + Объект.ДатаИсполнения + + + ДатаИсполненияExtendedTooltip + 91 + Label + true + true + + Left + + + + ДатаИсполненияКонтекстноеМеню + 67 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Результат выполнения задачи</value> + + true + + ГруппаРезультатExtendedTooltip + 89 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + auto + Auto + Auto + + + + ГруппаБизнесПроцесс + 51 + + БизнесПроцесс + 52 + true + true + + true + + + Объект.BusinessProcess + + + БизнесПроцессExtendedTooltip + 87 + Label + true + true + + Left + + + + БизнесПроцессКонтекстноеМеню + 53 + true + + InputField + Enter + true + Left + true + + 40 + 50 + true + true + true + true + true + true + Normal + + + + ТочкаМаршрута + 54 + true + true + + true + + + Объект.RoutePoint + + + ТочкаМаршрутаExtendedTooltip + 88 + Label + true + true + + Left + + + + ТочкаМаршрутаКонтекстноеМеню + 55 + true + + InputField + Enter + true + Left + true + + 50 + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Бизнес-процесс</value> + + true + + ГруппаБизнесПроцессExtendedTooltip + 86 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + auto + Auto + + + + ГруппаАдресация + 69 + + Исполнитель + 27 + true + true + + true + + + Объект.Исполнитель + + + ИсполнительExtendedTooltip + 82 + Label + true + true + + Left + + + + ИсполнительКонтекстноеМеню + 28 + true + + InputField + true + Enter + true + Left + true + + 50 + true + true + true + true + true + Normal + + + + РольИсполнителя + 29 + true + true + + true + + + Объект.РольИсполнителя + + + РольИсполнителяExtendedTooltip + 83 + Label + true + true + + Left + + + + РольИсполнителяКонтекстноеМеню + 30 + true + + InputField + true + Enter + true + Left + true + + 50 + true + true + true + true + true + Normal + + + + ГруппаУточнение + 92 + + Отступ + 96 + true + true + + true + + + ОтступРасширеннаяПодсказка + 98 + Label + true + true + + Left + + + + ОтступКонтекстноеМеню + 97 + true + + Label + true + true + + Left + + + + ГруппаОбъектыАдресации + 94 + + ОсновнойОбъектАдресации + 31 + true + true + + true + + + Объект.ОсновнойОбъектАдресации + + 2 + + ОсновнойОбъектАдресацииExtendedTooltip + 84 + Label + true + true + + Left + + + + ОсновнойОбъектАдресацииКонтекстноеМеню + 32 + true + + InputField + true + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + + ДополнительныйОбъектАдресации + 33 + true + true + + true + + + Объект.ДополнительныйОбъектАдресации + + 2 + + ДополнительныйОбъектАдресацииExtendedTooltip + 85 + Label + true + true + + Left + + + + ДополнительныйОбъектАдресацииКонтекстноеМеню + 34 + true + + InputField + true + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + true + true + + true + + + ГруппаОбъектыАдресацииРасширеннаяПодсказка + 95 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Уточнение</value> + + + ГруппаУточнениеРасширеннаяПодсказка + 93 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + + true + true + + true + + + <key>ru</key> + <value>Задача адресована</value> + + true + + ГруппаАдресацияExtendedTooltip + 81 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + NormalSeparation + true + true + auto + Auto + + + + ГруппаВходящие + 56 + + Дата + 57 + true + true + + true + + + Объект.Date + + + ДатаExtendedTooltip + 79 + Label + true + true + + Left + + + + ДатаКонтекстноеМеню + 58 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + + СрокИсполнения + 71 + true + true + + true + + + Объект.СрокИсполнения + + + СрокИсполненияExtendedTooltip + 80 + Label + true + true + + Left + + + + СрокИсполненияКонтекстноеМеню + 72 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + + true + true + + true + + true + + ГруппаВходящиеExtendedTooltip + 78 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + DontUse + Auto + + + true + true + + true + + false + + ДокументРасширеннаяПодсказка + 100 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаСправа + 45 Номер 43 @@ -79,8 +735,10 @@ Left true + 14 true true + false true true true @@ -92,17 +750,9 @@ true - - <key>ru</key> - <value>Группа шапка</value> - - - ru - Группа шапка - true - ГруппаШапкаExtendedTooltip + ГруппаСправаРасширеннаяПодсказка 75 Label true @@ -115,648 +765,6 @@ Auto true - true - Auto - Auto - - - - ГруппаВходящие - 56 - - Дата - 57 - true - true - - true - - - Объект.Date - - - ДатаExtendedTooltip - 79 - Label - true - true - - Left - - - - ДатаКонтекстноеМеню - 58 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - Normal - - - - СрокИсполнения - 71 - true - true - - true - - - Объект.СрокИсполнения - - - СрокИсполненияExtendedTooltip - 80 - Label - true - true - - Left - - - - СрокИсполненияКонтекстноеМеню - 72 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Группа входящие</value> - - - ru - Группа входящие - - true - - ГруппаВходящиеExtendedTooltip - 78 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаАдресация - 69 - - Исполнитель - 27 - true - true - - true - - - Объект.Исполнитель - - - ИсполнительExtendedTooltip - 82 - Label - true - true - - Left - - - - ИсполнительКонтекстноеМеню - 28 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - - РольИсполнителя - 29 - true - true - - true - - - Объект.РольИсполнителя - - - РольИсполнителяExtendedTooltip - 83 - Label - true - true - - Left - - - - РольИсполнителяКонтекстноеМеню - 30 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - - ГруппаУточнение - 92 - - Отступ - 96 - true - true - - true - - - ОтступРасширеннаяПодсказка - 98 - Label - true - true - - Left - - - - ОтступКонтекстноеМеню - 97 - true - - Label - true - true - - Left - - - - ГруппаОтступ - 94 - - ОсновнойОбъектАдресации - 31 - true - true - - true - - - Объект.ОсновнойОбъектАдресации - - - ОсновнойОбъектАдресацииExtendedTooltip - 84 - Label - true - true - - Left - - - - ОсновнойОбъектАдресацииКонтекстноеМеню - 32 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal - - - - ДополнительныйОбъектАдресации - 33 - true - true - - true - - - Объект.ДополнительныйОбъектАдресации - - - ДополнительныйОбъектАдресацииExtendedTooltip - 85 - Label - true - true - - Left - - - - ДополнительныйОбъектАдресацииКонтекстноеМеню - 34 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Группа отступ</value> - - - ГруппаОтступРасширеннаяПодсказка - 95 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Уточнение</value> - - - ГруппаУточнениеРасширеннаяПодсказка - 93 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Задача адресована</value> - - true - - ГруппаАдресацияExtendedTooltip - 81 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - auto - Auto - Auto - - - - ГруппаБизнесПроцесс - 51 - - БизнесПроцесс - 52 - true - true - - true - - - Объект.BusinessProcess - - - БизнесПроцессExtendedTooltip - 87 - Label - true - true - - Left - - - - БизнесПроцессКонтекстноеМеню - 53 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal - - - - ТочкаМаршрута - 54 - true - true - - true - - - Объект.RoutePoint - - - ТочкаМаршрутаExtendedTooltip - 88 - Label - true - true - - Left - - - - ТочкаМаршрутаКонтекстноеМеню - 55 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Бизнес-процесс</value> - - true - - ГруппаБизнесПроцессExtendedTooltip - 86 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - auto - Auto - Auto - - - - ГруппаРезультат - 63 - - Выполнена - 64 - true - true - - true - - - Объект.Executed - - Right - - ВыполненаExtendedTooltip - 90 - Label - true - true - - Left - - - - ВыполненаКонтекстноеМеню - 65 - true - - CheckBoxField - Enter - true - Left - true - - - - ДатаИсполнения - 66 - true - true - - true - - - Объект.ДатаИсполнения - - - ДатаИсполненияExtendedTooltip - 91 - Label - true - true - - Left - - - - ДатаИсполненияКонтекстноеМеню - 67 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Результат выполнения задачи</value> - - true - true - - ГруппаРезультатExtendedTooltip - 89 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - auto Auto Auto @@ -829,7 +837,6 @@ true true true - Vertical true true true diff --git a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ЗадачиПоБизнесПроцессу/Form.form b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ЗадачиПоБизнесПроцессу/Form.form index 687eea681..04955db86 100644 --- a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ЗадачиПоБизнесПроцессу/Form.form +++ b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ЗадачиПоБизнесПроцессу/Form.form @@ -16,7 +16,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 86 @@ -710,14 +709,6 @@ true - - <key>ru</key> - <value>Тип и наименование</value> - - - ru - Тип и наименование - ТипИНаименованиеExtendedTooltip 76 diff --git a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ЗадачиПоПредмету/Form.form b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ЗадачиПоПредмету/Form.form index 1d7c9a3ed..3a4aac14a 100644 --- a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ЗадачиПоПредмету/Form.form +++ b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ЗадачиПоПредмету/Form.form @@ -16,7 +16,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 131 @@ -422,6 +421,76 @@ Normal + + Автор + 107 + true + true + + true + + + Список.Автор + + + АвторРасширеннаяПодсказка + 109 + Label + true + true + + Left + + + + АвторКонтекстноеМеню + 108 + true + + LabelField + Enter + true + Left + true + + 30 + true + true + + + true + true + + true + + + <key>ru</key> + <value>Группа наименование</value> + + + ru + Группа наименование + + + ГруппаНаименованиеРасширеннаяПодсказка + 102 + Label + true + true + + Left + + + ColumnGroup + + Vertical + auto + true + + + + ГруппаАвтор + 105 Номер 4 @@ -468,75 +537,6 @@ Normal - true - true - - true - - - <key>ru</key> - <value>Группа наименование</value> - - - ru - Группа наименование - - - ГруппаНаименованиеРасширеннаяПодсказка - 102 - Label - true - true - - Left - - - ColumnGroup - - auto - true - - - - ГруппаАвтор - 105 - - Автор - 107 - true - true - - true - - - Список.Автор - - - АвторРасширеннаяПодсказка - 109 - Label - true - true - - Left - - - - АвторКонтекстноеМеню - 108 - true - - LabelField - Enter - true - Left - true - - 30 - true - true - - Дата 110 @@ -599,6 +599,7 @@
          ColumnGroup + Vertical auto true @@ -608,14 +609,6 @@ true - - <key>ru</key> - <value>Группа описание</value> - - - ru - Группа описание - ГруппаОписаниеРасширеннаяПодсказка 104 @@ -628,7 +621,6 @@ ColumnGroup - Vertical auto true diff --git a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/МоиЗадачи/Form.form b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/МоиЗадачи/Form.form index 1e89effb2..df07bd370 100644 --- a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/МоиЗадачи/Form.form +++ b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/МоиЗадачи/Form.form @@ -12,11 +12,6 @@ true - - <key>ru</key> - <value>Группа пользовательских настроек</value> - - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 127 diff --git a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/МоиЗадачиДляРабочегоСтола/Form.form b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/МоиЗадачиДляРабочегоСтола/Form.form index 2f60ff2c1..c00a7d21b 100644 --- a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/МоиЗадачиДляРабочегоСтола/Form.form +++ b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/МоиЗадачиДляРабочегоСтола/Form.form @@ -12,11 +12,6 @@ true - - <key>ru</key> - <value>Группа пользовательских настроек</value> - - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 141 diff --git a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/МоиЗадачиДляРабочегоСтола/Module.bsl b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/МоиЗадачиДляРабочегоСтола/Module.bsl index 2ce49d4dc..82f352dcb 100644 --- a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/МоиЗадачиДляРабочегоСтола/Module.bsl +++ b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/МоиЗадачиДляРабочегоСтола/Module.bsl @@ -10,10 +10,6 @@ Возврат; КонецЕсли; - Если Не ОбщегоНазначения.ПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка) Тогда - Возврат; - КонецЕсли; - БизнесПроцессыИЗадачиСервер.УстановитьПараметрыСпискаМоихЗадач(Список); ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка( Список, "Выполнена", Ложь); diff --git a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ПеренаправитьЗадачи/Form.form b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ПеренаправитьЗадачи/Form.form index e68f94eb1..a8bb8f45d 100644 --- a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ПеренаправитьЗадачи/Form.form +++ b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ПеренаправитьЗадачи/Form.form @@ -32,8 +32,7 @@ true Label - 60 - true + 50 true false @@ -41,27 +40,561 @@
          - ГруппаАдресация - 11 + Документ + 72 + + ГруппаАдресация + 11 + + ГруппаАдресацияИсполнитель + 12 + + ТипАдресацииИсполнитель + 9 + true + true + + true + + + ТипАдресации + + None + + OnChange + ТипАдресацииПриИзменении + + + ТипАдресацииИсполнительРасширеннаяПодсказка + 49 + Label + true + true + + Left + + + + ТипАдресацииИсполнительКонтекстноеМеню + 10 + true + + RadioButtonField + Enter + true + Left + true + + 1 + + + ru + Исполнителю: + + + 0 + + + Vertical + + + + Исполнитель + 1 + true + true + + true + + + Исполнитель + + true + None + + OnChange + ИсполнительПриИзменении + + + ИсполнительExtendedTooltip + 51 + Label + true + true + + Left + + + + ИсполнительКонтекстноеМеню + 2 + true + + InputField + Enter + true + Left + true + + 35 + true + true + true + false + Items + true + true + true + Normal + + + true + true + + true + + + ГруппаАдресацияИсполнительРасширеннаяПодсказка + 50 + Label + true + true + + Left + + + UsualGroup + + Auto + true + Auto + Auto + + + + ГруппаАдресацияРоль + 67 + + ТипАдресацииРоль + 69 + true + true + + true + + + ТипАдресации + + None + + OnChange + ТипАдресацииПриИзменении + + + ТипАдресацииРольРасширеннаяПодсказка + 71 + Label + true + true + + Left + + + + ТипАдресацииРольКонтекстноеМеню + 70 + true + + RadioButtonField + Enter + true + Left + true + + + + ru + Исполнителям роли: + + + 1 + + + Vertical + + + + Роль + 13 + true + true + + true + + + Роль + + None + + OnChange + РольПриИзменении + + + РольExtendedTooltip + 52 + Label + true + true + + Left + + + + РольКонтекстноеМеню + 14 + true + + InputField + Enter + true + Left + true + + true + true + true + false + Items + true + true + true + Normal + + + true + true + + true + + + ГруппаАдресацияРольРасширеннаяПодсказка + 68 + Label + true + true + + Left + + + UsualGroup + + Auto + true + Auto + Auto + + + true + true + + true + + + ГруппаАдресацияExtendedTooltip + 48 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаОбъектыАдресации + 60 + + Отступ + 62 + true + true + + true + + + ОтступРасширеннаяПодсказка + 64 + Label + true + true + + Left + + + + ОтступКонтекстноеМеню + 63 + true + + Label + true + true + + Left + + + + ОбъектыАдресации + 65 + + ГруппаОдинОбъектАдресации + 33 + + ОдинОсновнойОбъектАдресации + 34 + true + true + + true + + + ОсновнойОбъектАдресации + + + ОдинОсновнойОбъектАдресацииExtendedTooltip + 54 + Label + true + true + + Left + + + + ОдинОсновнойОбъектАдресацииКонтекстноеМеню + 35 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + true + true + + true + + + ГруппаОдинОбъектАдресацииExtendedTooltip + 53 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + + ГруппаДваОбъектаАдресации + 36 + + ОсновнойОбъектАдресации + 37 + true + true + + true + + + ОсновнойОбъектАдресации + + + ОсновнойОбъектАдресацииExtendedTooltip + 56 + Label + true + true + + Left + + + + ОсновнойОбъектАдресацииКонтекстноеМеню + 38 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + + ДополнительныйОбъектАдресации + 39 + true + true + + true + + + ДополнительныйОбъектАдресации + + + ДополнительныйОбъектАдресацииExtendedTooltip + 57 + Label + true + true + + Left + + + + ДополнительныйОбъектАдресацииКонтекстноеМеню + 40 + true + + InputField + Enter + true + Left + true + + true + true + true + true + true + Normal + + + true + true + + true + + + ГруппаДваОбъектаАдресацииExtendedTooltip + 55 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + ОбъектыАдресацииРасширеннаяПодсказка + 66 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + true + Auto + Auto + + + true + true + + true + + + ГруппаОбъектыАдресацииРасширеннаяПодсказка + 61 + Label + true + true + + Left + + + UsualGroup + + Auto + true + true + Auto + Auto + + - ТипАдресации - 9 + Комментарий + 7 true true true - ТипАдресации + Комментарий - None - - OnChange - ТипАдресацииПриИзменении - + Left - ТипАдресацииExtendedTooltip - 49 + КомментарийExtendedTooltip + 58 Label true true @@ -70,202 +603,40 @@ - ТипАдресацииКонтекстноеМеню - 10 + КомментарийКонтекстноеМеню + 8 true - RadioButtonField + InputField Enter true Left true - - 1 - - - ru - Исполнителю: - - - 0 - - - - - ru - Исполнителям роли: - - - 1 - - - Vertical - - - - Группа - 12 - - Исполнитель - 1 - true - true - - true - - - Исполнитель - - true - None - - OnChange - ИсполнительПриИзменении - - - ИсполнительExtendedTooltip - 51 - Label - true - true - - Left - - - - ИсполнительКонтекстноеМеню - 2 - true - - InputField - Enter - true - Left - true - - 35 - true - true - true - false - Items - true - true - true - Normal - - - - Роль - 13 - true - true - - true - - - Роль - - None - - OnChange - РольПриИзменении - - - РольExtendedTooltip - 52 - Label - true - true - - Left - - - - РольКонтекстноеМеню - 14 - true - - InputField - Enter - true - Left - true - - true - true - true - false - Items - true - true - true - Normal - - - true - true - - true - - - ГруппаExtendedTooltip - 50 - Label - true + + 2 true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + true + true + true + true + true + Normal - true - true - - true - - - ГруппаАдресацияExtendedTooltip - 48 - Label - true - true - - Left - - - UsualGroup - - Auto - true - true - Auto - Auto - - - - ГруппаОбъектыАдресации - 60 - - Отступ - 62 - true + + ИгнорироватьПредупреждения + 41 true true + + ИгнорироватьПредупреждения + + Right - ОтступРасширеннаяПодсказка - 64 + ИгнорироватьПредупрежденияExtendedTooltip + 59 Label true true @@ -274,253 +645,26 @@ - ОтступКонтекстноеМеню - 63 + ИгнорироватьПредупрежденияКонтекстноеМеню + 42 true - Label - true - true - - Left - - - - ОбъектыАдресации - 65 - - ГруппаОдинОбъектАдресации - 33 - - ОдинОсновнойОбъектАдресации - 34 - true - true - - true - - - ОсновнойОбъектАдресации - - - ОдинОсновнойОбъектАдресацииExtendedTooltip - 54 - Label - true - true - - Left - - - - ОдинОсновнойОбъектАдресацииКонтекстноеМеню - 35 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Группа один объект адресации</value> - - - ru - Группа один объект адресации - - - ГруппаОдинОбъектАдресацииExtendedTooltip - 53 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - - ГруппаДваОбъектаАдресации - 36 - - ОсновнойОбъектАдресации - 37 - true - true - - true - - - ОсновнойОбъектАдресации - - - ОсновнойОбъектАдресацииExtendedTooltip - 56 - Label - true - true - - Left - - - - ОсновнойОбъектАдресацииКонтекстноеМеню - 38 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - Normal - - - - ДополнительныйОбъектАдресации - 39 - true - true - - true - - - ДополнительныйОбъектАдресации - - - ДополнительныйОбъектАдресацииExtendedTooltip - 57 - Label - true - true - - Left - - - - ДополнительныйОбъектАдресацииКонтекстноеМеню - 40 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Группа два объекта адресации</value> - - - ru - Группа два объекта адресации - - - ГруппаДваОбъектаАдресацииExtendedTooltip - 55 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - - - true - true - - true - - - <key>ru</key> - <value>Объекты адресации</value> - - - ОбъектыАдресацииРасширеннаяПодсказка - 66 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto - + CheckBoxField + Enter + true + Left + true + true true true - - <key>ru</key> - <value>Группа объекты адресации</value> - + false - ГруппаОбъектыАдресацииРасширеннаяПодсказка - 61 + ДокументРасширеннаяПодсказка + 73 Label true true @@ -530,6 +674,7 @@ UsualGroup + Vertical Auto true true @@ -537,81 +682,6 @@ Auto - - Комментарий - 7 - true - true - - true - - - Комментарий - - - КомментарийExtendedTooltip - 58 - Label - true - true - - Left - - - - КомментарийКонтекстноеМеню - 8 - true - - InputField - Enter - true - Left - true - - true - true - true - true - true - true - true - Normal - - - - ИгнорироватьПредупреждения - 41 - true - - true - - - ИгнорироватьПредупреждения - - Right - - ИгнорироватьПредупрежденияExtendedTooltip - 59 - Label - true - true - - Left - - - - ИгнорироватьПредупрежденияКонтекстноеМеню - 42 - true - - CheckBoxField - Enter - true - Left - true - - Bottom true diff --git a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ПеренаправитьЗадачи/Module.bsl b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ПеренаправитьЗадачи/Module.bsl index 4370f1944..275d6dcae 100644 --- a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ПеренаправитьЗадачи/Module.bsl +++ b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ПеренаправитьЗадачи/Module.bsl @@ -196,11 +196,18 @@ Результат = Новый Структура; Результат.Вставить("Исполнитель", ?(ЗначениеЗаполнено(Исполнитель), Исполнитель, Неопределено)); Результат.Вставить("РольИсполнителя", Роль); - Результат.Вставить("ОсновнойОбъектАдресации", - ?(ОсновнойОбъектАдресации <> Неопределено И НЕ ОсновнойОбъектАдресации.Пустая(), ОсновнойОбъектАдресации, Неопределено)); - Результат.Вставить("ДополнительныйОбъектАдресации", - ?(ДополнительныйОбъектАдресации <> Неопределено И НЕ ДополнительныйОбъектАдресации.Пустая(), ДополнительныйОбъектАдресации, Неопределено)); + Результат.Вставить("ОсновнойОбъектАдресации", ОсновнойОбъектАдресации); + Результат.Вставить("ДополнительныйОбъектАдресации", ДополнительныйОбъектАдресации); Результат.Вставить("Комментарий", Комментарий); + + Если Результат.ОсновнойОбъектАдресации <> Неопределено И Результат.ОсновнойОбъектАдресации.Пустая() Тогда + Результат.ОсновнойОбъектАдресации = Неопределено; + КонецЕсли; + + Если Результат.ДополнительныйОбъектАдресации <> Неопределено И Результат.ДополнительныйОбъектАдресации.Пустая() Тогда + Результат.ДополнительныйОбъектАдресации = Неопределено; + КонецЕсли; + Возврат Результат; КонецФункции diff --git a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ФормаЗадачи/Form.form b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ФормаЗадачи/Form.form index 6dcee52c5..0a41361ab 100644 --- a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ФормаЗадачи/Form.form +++ b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ФормаЗадачи/Form.form @@ -1,11 +1,11 @@ - ГруппаФормаВыполнения - 93 + Документ + 170 - ГруппаФормаВыполненияТекст - 96 + ГруппаФормаВыполнения + 93 ДекорацияТекст 94 @@ -35,7 +35,6 @@ true Label - true true false @@ -70,7 +69,6 @@ true Label - true true false @@ -87,13 +85,9 @@ true - - ru - Группа форма выполнения текст - - ГруппаФормаВыполненияТекстExtendedTooltip - 137 + ГруппаФормаВыполненияExtendedTooltip + 135 Label true true @@ -105,240 +99,202 @@ Vertical Auto + NormalSeparation true true Auto Auto - true - true - - true - - true - false - - ГруппаФормаВыполненияExtendedTooltip - 135 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - - - ГруппаСостояние - 99 - true - true - - true - - true - false - - ГруппаСостояниеExtendedTooltip - 140 - Label - true - true - - Left - - - UsualGroup - - Auto - NormalSeparation - true - true - Auto - Auto - - - - Шапка - 124 - ГруппыШапки - 127 - - ГруппаАвторИсполнитель - 83 - - Автор - 78 - true - true - - true - - - Объект.Автор - - - АвторExtendedTooltip - 144 - Label - true - true - - Left - - - - АвторКонтекстноеМеню - 79 - true - - InputField - true - Enter - true - Left - true - - 35 - true - true - true - true - true - true - Normal - - - - АвторСтрокой - 165 - true - - true - - - АвторСтрокой - - - АвторСтрокойРасширеннаяПодсказка - 167 - Label - true - true - - Left - - - - АвторСтрокойКонтекстноеМеню - 166 - true - - LabelField - Enter - true - Left - true - - true - true - - - - Исполнитель - 20 - - <key>ru</key> - <value>Исполнитель</value> - - true - true - - true - - - Объект.Исполнитель - - - ru - Исполнитель - - - ИсполнительExtendedTooltip - 145 - Label - true - true - - Left - - - - ИсполнительКонтекстноеМеню - 21 - true - - InputField - true - Enter - true - Left - true - Left - - 35 - true - true - true - true - true - true - Normal - - - true - true - - true - - - <key>ru</key> - <value>Автор и исполнитель</value> - - - ГруппаАвторИсполнительExtendedTooltip - 143 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - true - true - Auto - Auto + ГруппаСостояние + 99 + true + true + + true + + + ГруппаСостояниеExtendedTooltip + 140 + Label + true + true + + Left - + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + Auto + + + + ГруппаЗадача + 168 - ГруппаРеквизитыШапки - 28 + Шапка + 124 + + ГруппаАвторИсполнитель + 83 + + Автор + 78 + true + true + + true + + + Объект.Автор + + + АвторExtendedTooltip + 144 + Label + true + true + + Left + + + + АвторКонтекстноеМеню + 79 + true + + InputField + true + Enter + true + Left + true + + true + 35 + true + true + true + true + true + Normal + + + + АвторСтрокой + 165 + true + + true + + + АвторСтрокой + + + АвторСтрокойРасширеннаяПодсказка + 167 + Label + true + true + + Left + + + + АвторСтрокойКонтекстноеМеню + 166 + true + + LabelField + Enter + true + Left + true + + true + true + + + + Исполнитель + 20 + + <key>ru</key> + <value>Исполнитель</value> + + true + true + + true + + + Объект.Исполнитель + + + ru + Исполнитель + + + ИсполнительExtendedTooltip + 145 + Label + true + true + + Left + + + + ИсполнительКонтекстноеМеню + 21 + true + + InputField + true + Enter + true + Left + true + Left + + true + true + true + true + true + true + Normal + + + true + true + + true + + + ГруппаАвторИсполнительExtendedTooltip + 143 + Label + true + true + + Left + + + UsualGroup + + Vertical + Auto + true + Auto + + ГруппаДатаИСрок 125 @@ -377,7 +333,6 @@ true true - false true true true @@ -433,10 +388,6 @@ true - - <key>ru</key> - <value>Дата и срок</value> - ГруппаДатаИСрокExtendedTooltip 147 @@ -452,7 +403,6 @@ Vertical Auto true - true Auto Auto @@ -492,7 +442,6 @@ Left true - true true false true @@ -535,8 +484,7 @@ true Left - 16 - true + 14 true false true @@ -553,10 +501,6 @@ true - - <key>ru</key> - <value>Номер и важность</value> - ГруппаНомерИВажностьExtendedTooltip 150 @@ -572,7 +516,6 @@ Vertical Auto true - true Auto Auto @@ -582,13 +525,128 @@ true - - <key>ru</key> - <value>Реквизиты шапки</value> - - ГруппаРеквизитыШапкиExtendedTooltip - 146 + ШапкаExtendedTooltip + 141 + Label + true + true + + Left + + + UsualGroup + + Auto + NormalSeparation + true + true + Auto + + + + ГруппаПриоритет + 88 + + СрокНачалаИсполнения + 85 + true + true + + true + + + Объект.ДатаНачала + + + СрокНачалаИсполненияExtendedTooltip + 154 + Label + true + true + + Left + + + + СрокНачалаИсполненияКонтекстноеМеню + 86 + true + + InputField + Enter + true + Left + true + + 10 + true + true + + ru + ДЛФ=D + + true + true + true + Normal + + + + СрокНачалаИсполненияВремя + 110 + true + true + + true + + + Объект.ДатаНачала + + None + + СрокНачалаИсполненияВремяExtendedTooltip + 155 + Label + true + true + + Left + + + + СрокНачалаИсполненияВремяКонтекстноеМеню + 111 + true + + InputField + Enter + true + Left + true + + 8 + true + true + false + + ru + ДЛФ=T + + true + true + true + Normal + + + true + true + + true + + + ГруппаПриоритетExtendedTooltip + 153 Label true true @@ -601,22 +659,59 @@ Auto true true - Auto Auto + + Наименование + 117 + true + true + + true + + + Объект.Description + + + НаименованиеExtendedTooltip + 157 + Label + true + true + + Left + + + + НаименованиеКонтекстноеМеню + 118 + true + + InputField + true + Enter + true + Left + true + + true + true + true + true + true + true + Normal + + true true true - - <key>ru</key> - <value>Группы шапки</value> - - ГруппыШапкиExtendedTooltip - 142 + ГруппаЗадачаРасширеннаяПодсказка + 169 Label true true @@ -626,6 +721,7 @@ UsualGroup + Vertical Auto true true @@ -634,22 +730,22 @@ - ГруппаПриоритет - 88 + ГруппаСодержание + 77 - СрокНачалаИсполнения - 85 + Предмет + 106 true true true - Объект.ДатаНачала + ПредметСтрокой - СрокНачалаИсполненияExtendedTooltip - 154 + ПредметExtendedTooltip + 158 Label true true @@ -658,44 +754,41 @@ - СрокНачалаИсполненияКонтекстноеМеню - 86 + ПредметКонтекстноеМеню + 107 true - InputField + LabelField Enter true Left true - - 10 + + + Click + ПредметНажатие + + 60 true true - - ru - ДЛФ=D - - true - true - true - Normal + true - СрокНачалаИсполненияВремя - 110 + Описание + 18 true true true - Объект.ДатаНачала + Объект.Описание None - СрокНачалаИсполненияВремяExtendedTooltip - 155 + ОписаниеExtendedTooltip + 159 Label true true @@ -704,27 +797,26 @@ - СрокНачалаИсполненияВремяКонтекстноеМеню - 111 + ОписаниеКонтекстноеМеню + 19 true InputField + true Enter true Left true + Left - 8 - true true - false - - ru - ДЛФ=T - + true true true true + + Style.BorderColor + Normal @@ -733,13 +825,16 @@ true - - <key>ru</key> - <value>Приоритет</value> - + + System.DefaultGUIFont + true + false + false + false + - ГруппаПриоритетExtendedTooltip - 153 + ГруппаСодержаниеExtendedTooltip + 156 Label true true @@ -749,216 +844,17 @@ UsualGroup + Vertical Auto + NormalSeparation true - true Auto Auto - true - true - - true - - - ШапкаExtendedTooltip - 141 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - - - - ГруппаСодержание - 77 - - Наименование - 117 - true - true - - true - - - Объект.Description - - - НаименованиеExtendedTooltip - 157 - Label - true - true - - Left - - - - НаименованиеКонтекстноеМеню - 118 - true - - InputField - true - Enter - true - Left - true - - true - true - true - true - true - true - Normal - - - - Предмет - 106 - true - true - - true - - - ПредметСтрокой - - - ПредметExtendedTooltip - 158 - Label - true - true - - Left - - - - ПредметКонтекстноеМеню - 107 - true - - LabelField - Enter - true - Left - true - - - Click - ПредметНажатие - - true - true - true - - - - Описание - 18 - true - true - - true - - - Объект.Описание - - None - - ОписаниеExtendedTooltip - 159 - Label - true - true - - Left - - - - ОписаниеКонтекстноеМеню - 19 - true - - InputField - true - Enter - true - Left - true - Left - - true - 5 - true - true - true - true - true - - Style.BorderColor - - Normal - - - true - true - - true - - - <key>ru</key> - <value>Содержание</value> - - - System.DefaultGUIFont - true - false - false - false - - - ГруппаСодержаниеExtendedTooltip - 156 - Label - true - true - - Left - - - UsualGroup - - Vertical - Auto - NormalSeparation - true - true - Auto - Auto - - - - ГруппаРезультат - 27 - ГруппаВыполненаДата - 54 + ГруппаРезультат + 27 Выполнена 87 @@ -983,7 +879,6 @@ Normal Auto true - 1 true UserCmds Auto @@ -1028,7 +923,6 @@ Left true - 10 true true false @@ -1075,7 +969,6 @@ Left true - 8 true true false @@ -1096,16 +989,11 @@ <key>ru</key> - <value>Группа выполнена дата</value> + <value>Результат выполнения</value> - - ru - Группа выполнена дата - - true - ГруппаВыполненаДатаExtendedTooltip - 161 + ГруппаРезультатExtendedTooltip + 160 Label true true @@ -1116,8 +1004,10 @@ UsualGroup Auto + WeakSeparation true true + auto Auto Auto @@ -1129,11 +1019,12 @@ <key>ru</key> - <value>Результат выполнения</value> + <value>Документ</value> + false - ГруппаРезультатExtendedTooltip - 160 + ДокументРасширеннаяПодсказка + 171 Label true true @@ -1145,10 +1036,8 @@ Vertical Auto - WeakSeparation true true - auto Auto Auto @@ -1306,6 +1195,7 @@ true true Vertical + Left true true true @@ -1424,7 +1314,6 @@ TextPicture - true DontUse Auto diff --git a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ФормаЗадачи/Module.bsl b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ФормаЗадачи/Module.bsl index 5d1d75b67..02a070866 100644 --- a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ФормаЗадачи/Module.bsl +++ b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ФормаЗадачи/Module.bsl @@ -16,7 +16,7 @@ УстановитьПривилегированныйРежим(Истина); АвторСтрокой = Строка(Объект.Автор); - + КонецПроцедуры &НаСервере @@ -124,7 +124,9 @@ Элементы.АвторСтрокой.Видимость = Истина; Элементы.Исполнитель.КнопкаОткрытия = Ложь; КонецЕсли; - + + Элементы.Выполнена.Доступность = ПравоДоступа("Изменение", Метаданные.Задачи.ЗадачаИсполнителя); + КонецПроцедуры #КонецОбласти diff --git a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ФормаСписка/Form.form b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ФормаСписка/Form.form index ac8aae07a..a29f71e66 100644 --- a/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ФормаСписка/Form.form +++ b/SSL/src/Tasks/ЗадачаИсполнителя/Forms/ФормаСписка/Form.form @@ -97,10 +97,6 @@ ru Группа заголовок - - ru - Группа заголовок - ГруппаЗаголовокExtendedTooltip 86 @@ -239,7 +235,6 @@ 35 true true - false true false Items @@ -289,7 +284,6 @@ 35 true true - false true false Items @@ -308,11 +302,6 @@ ru Группа отбор - - ru - Группа отбор - - false ГруппаОтборExtendedTooltip 89 @@ -344,7 +333,6 @@ ru Группа пользовательских настроек - false ГруппаПользовательскихНастроекРасширеннаяПодсказка 142 @@ -508,14 +496,6 @@ true - - <key>ru</key> - <value>Группа поиск</value> - - - ru - Группа поиск - ГруппаПоискРасширеннаяПодсказка 160 @@ -674,14 +654,6 @@ true - - <key>ru</key> - <value>Группа принять к исполнению</value> - - - ru - Группа принять к исполнению - ГруппаПринятьКИсполнениюРасширеннаяПодсказка 158 @@ -972,6 +944,158 @@ Normal + + Автор + 22 + true + true + + true + + + Список.Автор + + + АвторExtendedTooltip + 123 + Label + true + true + + Left + + + + АвторКонтекстноеМеню + 23 + true + + InputField + Enter + true + Left + true + + 30 + true + true + true + true + true + Normal + + + true + true + + true + + + <key>ru</key> + <value>Группа наименование</value> + + + ГруппаНаименованиеРасширеннаяПодсказка + 166 + Label + true + true + + Left + + + ColumnGroup + + Vertical + auto + true + + + + Предмет + 51 + true + true + + + Список.ПредметСтрокой + + + ПредметExtendedTooltip + 133 + Label + true + true + + Left + + + + ПредметКонтекстноеМеню + 52 + true + + LabelField + Enter + Left + true + + 30 + true + true + + + + ГруппаАвтор + 163 + + Дата + 8 + + <key>ru</key> + <value>Записана</value> + + true + true + + true + + + Список.Date + + + ДатаExtendedTooltip + 129 + Label + true + true + + Left + + + + ДатаКонтекстноеМеню + 9 + true + + InputField + Enter + true + Left + true + + true + true + false + true + true + true + + Style.BorderColor + + Normal + + Номер 4 @@ -1022,169 +1146,6 @@ true - - <key>ru</key> - <value>Группа наименование</value> - - - ru - Группа наименование - - - ГруппаНаименованиеРасширеннаяПодсказка - 166 - Label - true - true - - Left - - - ColumnGroup - - auto - true - - - - Предмет - 51 - true - true - - - Список.ПредметСтрокой - - - ПредметExtendedTooltip - 133 - Label - true - true - - Left - - - - ПредметКонтекстноеМеню - 52 - true - - LabelField - Enter - Left - true - - 30 - true - true - - - - ГруппаАвтор - 163 - - Автор - 22 - true - true - - true - - - Список.Автор - - - АвторExtendedTooltip - 123 - Label - true - true - - Left - - - - АвторКонтекстноеМеню - 23 - true - - InputField - Enter - true - Left - true - - 30 - true - true - true - true - true - Normal - - - - Дата - 8 - - <key>ru</key> - <value>Записана</value> - - true - true - - true - - - Список.Date - - - ДатаExtendedTooltip - 129 - Label - true - true - - Left - - - - ДатаКонтекстноеМеню - 9 - true - - InputField - Enter - true - Left - true - - true - true - false - true - true - true - - Style.BorderColor - - Normal - - - true - true - - true - - - <key>ru</key> - <value>Группа автор</value> - - - ru - Группа автор - ГруппаАвторРасширеннаяПодсказка 164 @@ -1197,6 +1158,7 @@ ColumnGroup + Vertical auto true @@ -1261,7 +1223,6 @@ ColumnGroup - Vertical auto true @@ -2523,6 +2484,29 @@ + + Задача + + String + + + + + БизнесПроцесс + + String + + + + + ПоказыватьЗадачи + + Number + + 1 + + + diff --git a/SSL/src/Tasks/ЗадачаИсполнителя/ObjectModule.bsl b/SSL/src/Tasks/ЗадачаИсполнителя/ObjectModule.bsl index deabdc652..440f3fcb5 100644 --- a/SSL/src/Tasks/ЗадачаИсполнителя/ObjectModule.bsl +++ b/SSL/src/Tasks/ЗадачаИсполнителя/ObjectModule.bsl @@ -2,7 +2,10 @@ #Область ПрограммныйИнтерфейс -// Возвращает Истина, если в задаче указан исполнитель или роль исполнителя. +// Определяет указан ли исполнитель или роль исполнителя. +// +// Возвращаемое значение: +// Булево - Возвращает Истина, если в задаче указан исполнитель или роль исполнителя. // Функция РеквизитыАдресацииЗаполнены() Экспорт diff --git a/SSL/src/WebServices/Exchange/Module.bsl b/SSL/src/WebServices/Exchange/Module.bsl index e372e1afb..2eecafecf 100644 --- a/SSL/src/WebServices/Exchange/Module.bsl +++ b/SSL/src/WebServices/Exchange/Module.bsl @@ -48,16 +48,7 @@ ИдентификаторФайла = Новый УникальныйИдентификатор; ИдентификаторФайлаСтрокой = Строка(ИдентификаторФайла); - - Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда - - ОбменДаннымиСервер.ВыполнитьВыгрузкуДляУзлаИнформационнойБазыВСервисПередачиФайлов(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторФайла); - - Иначе - - ВыполнитьВыгрузкуДанныхВКлиентСерверномРежиме(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторФайла, ДлительнаяОперация, ИдентификаторОперации, ДлительнаяОперацияРазрешена); - - КонецЕсли; + ВыполнитьВыгрузкуДанныхВКлиентСерверномРежиме(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторФайла, ДлительнаяОперация, ИдентификаторОперации, ДлительнаяОперацияРазрешена); КонецФункции @@ -74,16 +65,7 @@ ОбменДаннымиСервер.ПроверитьИспользованиеОбменаДанными(); ИдентификаторФайла = Новый УникальныйИдентификатор(ИдентификаторФайлаСтрокой); - - Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда - - ОбменДаннымиСервер.ВыполнитьЗагрузкуДляУзлаИнформационнойБазыИзСервисаПередачиФайлов(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторФайла); - - Иначе - - ВыполнитьЗагрузкуДанныхВКлиентСерверномРежиме(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторФайла, ДлительнаяОперация, ИдентификаторОперации, ДлительнаяОперацияРазрешена); - - КонецЕсли; + ВыполнитьЗагрузкуДанныхВКлиентСерверномРежиме(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторФайла, ДлительнаяОперация, ИдентификаторОперации, ДлительнаяОперацияРазрешена); КонецФункции @@ -526,7 +508,7 @@ Функция КлючФоновогоЗаданияВыгрузкиЗагрузкиДанных(ПланОбмена, КодУзла) - Ключ = "ПланОбмена:[ПланОбмена] КодУзла:[КодУзла]"; + Ключ = НСтр("ru = 'ПланОбмена:[ПланОбмена] КодУзла:[КодУзла]'"); Ключ = СтрЗаменить(Ключ, "[ПланОбмена]", ПланОбмена); Ключ = СтрЗаменить(Ключ, "[КодУзла]", КодУзла); diff --git a/SSL/src/WebServices/Exchange_2_0_1_6/Module.bsl b/SSL/src/WebServices/Exchange_2_0_1_6/Module.bsl index efd685693..bb3f83b82 100644 --- a/SSL/src/WebServices/Exchange_2_0_1_6/Module.bsl +++ b/SSL/src/WebServices/Exchange_2_0_1_6/Module.bsl @@ -48,16 +48,7 @@ ИдентификаторФайла = Новый УникальныйИдентификатор; ИдентификаторФайлаСтрокой = Строка(ИдентификаторФайла); - - Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда - - ОбменДаннымиСервер.ВыполнитьВыгрузкуДляУзлаИнформационнойБазыВСервисПередачиФайлов(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторФайла); - - Иначе - - ВыполнитьВыгрузкуДанныхВКлиентСерверномРежиме(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторФайла, ДлительнаяОперация, ИдентификаторОперации, ДлительнаяОперацияРазрешена); - - КонецЕсли; + ВыполнитьВыгрузкуДанныхВКлиентСерверномРежиме(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторФайла, ДлительнаяОперация, ИдентификаторОперации, ДлительнаяОперацияРазрешена); КонецФункции @@ -74,16 +65,7 @@ ОбменДаннымиСервер.ПроверитьИспользованиеОбменаДанными(); ИдентификаторФайла = Новый УникальныйИдентификатор(ИдентификаторФайлаСтрокой); - - Если ОбщегоНазначения.ИнформационнаяБазаФайловая() Тогда - - ОбменДаннымиСервер.ВыполнитьЗагрузкуДляУзлаИнформационнойБазыИзСервисаПередачиФайлов(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторФайла); - - Иначе - - ВыполнитьЗагрузкуДанныхВКлиентСерверномРежиме(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторФайла, ДлительнаяОперация, ИдентификаторОперации, ДлительнаяОперацияРазрешена); - - КонецЕсли; + ВыполнитьЗагрузкуДанныхВКлиентСерверномРежиме(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторФайла, ДлительнаяОперация, ИдентификаторОперации, ДлительнаяОперацияРазрешена); КонецФункции @@ -558,7 +540,7 @@ Функция КлючФоновогоЗаданияВыгрузкиЗагрузкиДанных(ПланОбмена, КодУзла) - Ключ = "ПланОбмена:[ПланОбмена] КодУзла:[КодУзла]"; + Ключ = НСтр("ru = 'ПланОбмена:[ПланОбмена] КодУзла:[КодУзла]'"); Ключ = СтрЗаменить(Ключ, "[ПланОбмена]", ПланОбмена); Ключ = СтрЗаменить(Ключ, "[КодУзла]", КодУзла); diff --git a/SSL/src/XDTOPackages/ApdexExport_1_0_0_2/ApdexExport_1_0_0_2.mdo b/SSL/src/XDTOPackages/ApdexExport_1_0_0_2/ApdexExport_1_0_0_2.mdo new file mode 100644 index 000000000..e8403aa70 --- /dev/null +++ b/SSL/src/XDTOPackages/ApdexExport_1_0_0_2/ApdexExport_1_0_0_2.mdo @@ -0,0 +1,9 @@ + + + ApdexExport_1_0_0_2 + + ru + Apdex export 1 0 0 2 + + www.v8.1c.ru/ssl/performace-assessment/apdexExport/1.0.0.2 + diff --git a/SSL/src/XDTOPackages/ApdexExport_1_0_0_2/Package.xdto b/SSL/src/XDTOPackages/ApdexExport_1_0_0_2/Package.xdto new file mode 100644 index 000000000..7b033db45 --- /dev/null +++ b/SSL/src/XDTOPackages/ApdexExport_1_0_0_2/Package.xdto @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SSL/src/XDTOPackages/EnterpriseData_1_0_3/EnterpriseData_1_0_3.mdo b/SSL/src/XDTOPackages/EnterpriseData_1_0_4/EnterpriseData_1_0_4.mdo similarity index 79% rename from SSL/src/XDTOPackages/EnterpriseData_1_0_3/EnterpriseData_1_0_3.mdo rename to SSL/src/XDTOPackages/EnterpriseData_1_0_4/EnterpriseData_1_0_4.mdo index 086e700c3..18f2f792b 100644 --- a/SSL/src/XDTOPackages/EnterpriseData_1_0_3/EnterpriseData_1_0_3.mdo +++ b/SSL/src/XDTOPackages/EnterpriseData_1_0_4/EnterpriseData_1_0_4.mdo @@ -1,9 +1,9 @@ - EnterpriseData_1_0_3 + EnterpriseData_1_0_4 ru - EnterpriseData 1.0.3 + EnterpriseData 1.0.4 http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.0 diff --git a/SSL/src/XDTOPackages/EnterpriseData_1_0_3/Package.xdto b/SSL/src/XDTOPackages/EnterpriseData_1_0_4/Package.xdto similarity index 100% rename from SSL/src/XDTOPackages/EnterpriseData_1_0_3/Package.xdto rename to SSL/src/XDTOPackages/EnterpriseData_1_0_4/Package.xdto diff --git a/SSL/src/XDTOPackages/EnterpriseData_1_1_3/EnterpriseData_1_1_3.mdo b/SSL/src/XDTOPackages/EnterpriseData_1_1_4/EnterpriseData_1_1_4.mdo similarity index 79% rename from SSL/src/XDTOPackages/EnterpriseData_1_1_3/EnterpriseData_1_1_3.mdo rename to SSL/src/XDTOPackages/EnterpriseData_1_1_4/EnterpriseData_1_1_4.mdo index 3c895261a..769365fd8 100644 --- a/SSL/src/XDTOPackages/EnterpriseData_1_1_3/EnterpriseData_1_1_3.mdo +++ b/SSL/src/XDTOPackages/EnterpriseData_1_1_4/EnterpriseData_1_1_4.mdo @@ -1,9 +1,9 @@ - EnterpriseData_1_1_3 + EnterpriseData_1_1_4 ru - EnterpriseData 1.1.3 + EnterpriseData 1.1.4 http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.1 diff --git a/SSL/src/XDTOPackages/EnterpriseData_1_1_3/Package.xdto b/SSL/src/XDTOPackages/EnterpriseData_1_1_4/Package.xdto similarity index 100% rename from SSL/src/XDTOPackages/EnterpriseData_1_1_3/Package.xdto rename to SSL/src/XDTOPackages/EnterpriseData_1_1_4/Package.xdto diff --git a/SSL/src/XDTOPackages/EnterpriseData_1_2_1/EnterpriseData_1_2_1.mdo b/SSL/src/XDTOPackages/EnterpriseData_1_2_2/EnterpriseData_1_2_2.mdo similarity index 79% rename from SSL/src/XDTOPackages/EnterpriseData_1_2_1/EnterpriseData_1_2_1.mdo rename to SSL/src/XDTOPackages/EnterpriseData_1_2_2/EnterpriseData_1_2_2.mdo index 82297ea69..00c16650c 100644 --- a/SSL/src/XDTOPackages/EnterpriseData_1_2_1/EnterpriseData_1_2_1.mdo +++ b/SSL/src/XDTOPackages/EnterpriseData_1_2_2/EnterpriseData_1_2_2.mdo @@ -1,9 +1,9 @@ - EnterpriseData_1_2_1 + EnterpriseData_1_2_2 ru - EnterpriseData 1.2.1 + EnterpriseData 1.2.2 http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.2 diff --git a/SSL/src/XDTOPackages/EnterpriseData_1_2_1/Package.xdto b/SSL/src/XDTOPackages/EnterpriseData_1_2_2/Package.xdto similarity index 100% rename from SSL/src/XDTOPackages/EnterpriseData_1_2_1/Package.xdto rename to SSL/src/XDTOPackages/EnterpriseData_1_2_2/Package.xdto diff --git a/SSL/src/XDTOPackages/EnterpriseData_1_3_6/EnterpriseData_1_3_6.mdo b/SSL/src/XDTOPackages/EnterpriseData_1_3_6/EnterpriseData_1_3_6.mdo new file mode 100644 index 000000000..4dad09b0f --- /dev/null +++ b/SSL/src/XDTOPackages/EnterpriseData_1_3_6/EnterpriseData_1_3_6.mdo @@ -0,0 +1,9 @@ + + + EnterpriseData_1_3_6 + + ru + EnterpriseData 1.3.6 + + http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.3 + diff --git a/SSL/src/XDTOPackages/EnterpriseData_1_3_6/Package.xdto b/SSL/src/XDTOPackages/EnterpriseData_1_3_6/Package.xdto new file mode 100644 index 000000000..16258c478 --- /dev/null +++ b/SSL/src/XDTOPackages/EnterpriseData_1_3_6/Package.xdto @@ -0,0 +1,5597 @@ + + + + (((0[1-9]{1}|[1-2]{1}[0-9]{1})\.(0[1-9]{1}|1[0-2]{1}))|((30)\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\.(01|03|05|07|08|10|12)))\.(18[0-9]{2}|19[0-9]{2}|20[0-9]{2}) + + + + + + + + + 0 + + + + Первая + Вторая + Третья + Четвертая + Пятая + Шестая + Седьмая + Восьмая + Девятая + Десятая + Отдельная + + + ВПользуПоставщика + НаПрочиеДоходы + + + ЗаСчетСтороннейКомпании + ЗаСчетПоставщика + НаПрочиеРасходы + + + Расчетный + Депозитный + Ссудный + ЧековыеКнижки + Аккредитивы + Иной + + + Билеты + Путевки + ПочтовыеМарки + ТалоныНаГСМ + Прочее + + + СПокупателем + СПоставщиком + СКомиссионером + СКомитентом + СКомитентомНаЗакупку + СКомиссионеромНаЗакупку + Прочее + + + ПочтовыйАдрес + ЮридическийАдрес + ФактическийАдрес + Телефон + ТелефонДомашний + ТелефонРабочий + Факс + ВебСтраница + АдресЭлектроннойПочты + ПользовательскаяКИДругое + ПользовательскаяКИТелефон + ПользовательскаяКИАдрес + ПользовательскаяКИАдресЭлектроннойПочты + ПользовательскаяКИВебСтраница + ПользовательскаяКИФакс + + + Пиво + АлкогольнаяПродукция + СпиртосодержащаяПищеваяПродукция + СпиртосодержащаяНеПищеваяПродукция + + + НематериальныйАктив + РасходыНаНИОКР + + + ВозвратОтКлиента + ВозвратОтКомиссионера + ВозвратОтРозничногоПокупателя + + + ВозвратПоставщику + ВозвратКомитенту + + + ВыпускПродукцииНаСклад + ВыпускПродукцииВПодразделение + + + СогласованноеИзменение + ИсправлениеОшибки + + + СписаниеЗадолженности + ПереносЗадолженности + ПроведениеВзаимозачета + + + ОплатаОтКлиентаПлатежнойКартой + ВозвратОплатыКлиентуНаПлатежнуюКарту + + + ПокупкаУПоставщика + ПриемНаКомиссию + ЗакупкаПоИмпорту + + + ВзносНаличными + Инкассация + + + РеализацияКлиенту + ПередачаНаКомиссию + ОтгрузкаБезПереходаПравСобственности_ВПути + ОтгрузкаБезПереходаПравСобственности_Реализовано + + + ПрочееСписание + ВнутренняяПередача + + + Сборка + Разборка + + + Руководитель + ГлавныйБухгалтер + РуководительКадровойСлужбы + Кассир + ОтветственныйЗаБухгалтерскиеРегистры + ОтветственныйЗаНалоговыеРегистры + УполномоченныйПредставитель + Исполнитель + Прочее + + + СПоставщиком + СПокупателем + КредитыИЗаймы + Прочее + + + Долг + Аванс + + + КраткосрочныеКредиты + ПроцентыПоКраткосрочнымКредитам + КраткосрочныеЗаймы + ПроцентыПоКраткосрочнымЗаймам + ДолгосрочныеКредиты + ПроцентыПоДолгосрочнымКредитам + ДолгосрочныеЗаймы + ПроцентыПоДолгосрочнымЗаймам + Комиссия + + + Займы + Подотчет + + + НаТовар + ПодарочнаяКарта + Дисконтная + + + ПринятиеКУчету + ВводВЭксплуатацию + ПринятиеКУчетуСВводомВЭксплуатацию + НачислениеАмортизации + ВнутреннееПеремещение + ТекущийРемонт + СреднийРемонт + КапитальныйРемонт + Переоценка + Реконструкция + Достройка + Дооборудование + ЧастичнаяЛиквидация + Модернизация + ПодготовкаКПередаче + Передача + Списание + Прочее + + + НаРеализацию + Корректировочный + НаАванс + НаАвансКомитента + СуммовыеРазницы + НалоговыйАгент + НаПоступление + + + ТОРГ12 + АктНаПередачуПрав + + + Здания + Сооружения + МашиныИОборудование + ОфисноеОборудование + ТранспортныеСредства + ПроизводственныйИХозяйственныйИнвентарь + РабочийСкот + ПродуктивныйСкот + МноголетниеНасаждения + ЗемельныеУчастки + ОбъектыПриродопользования + КапитальныеВложенияВАрендованноеИмущество + ПрочееИмуществоТребующееГосударственнойРегистрации + ДругиеВидыОсновныхСредств + + + ПродажаОблагаетсяНДС + ПродажаНеОблагаетсяНДС + ПродажаНаЭкспорт + ПродажаОблагаетсяЕНВД + ПоФактическомуИспользованию + НалоговыйАгентПоНДС + + + Мужской + Женский + + + НачислениеАмортизации + ВключениеВРасходыПриПринятииКУчету + СтоимостьНеВключаетсяВРасходы + + + НачислениеАмортизации + НачислениеИзноса + СтоимостьНеПогашается + НачислениеИзносаПоЕНАОФ + СписаниеПриПринятииКУчету + + + НаБумажномНосителе + ВЭлектронномВиде + + + Линейный + УменьшаемогоОстатка + ПропорциональноОбъемуПродукции + + + Линейный + Нелинейный + ПоЕНАОФ + + + Линейный + УменьшаемогоОстатка + ПоСуммеЧиселЛетИспользования + ПропорциональноОбъемуПродукции + ПоЕНАОФ + ПоЕНАОФНа1000кмПробега + + + Автоматически + ПоДокументу + НеПогашать + + + ПриобретениеЗаПлату + Строительство + ВкладВУставныйКапитал + ВОбменНаДругоеИмущество + БезвозмездноеПоступление + ПоДоговоруАренды + ПоступлениеВДоверительноеУправление + ВкладВСовместнуюДеятельность + Иное + + + ПроцентОтСуммыПродажи + ПроцентОтРазницыСуммПродажиИПоступления + НеРассчитывается + + + НДС4 + НДС4_104 + НДС18 + НДС18_118 + НДС2 + НДС2_102 + НДС10 + НДС10_110 + НДС0 + БезНДС + + + НеСогласована + Согласована + КОплате + Отклонена + + + СырьеИМатериалы + ПокупныеПолуфабрикатыИКомплектующие + ВозвратнаяТара + Топливо + ЗапасныеЧасти + ПрочиеМатериалы + СтроительныеМатериалы + ИнвентарьИХозяйственныеПринадлежности + СпецоснасткаИСпецодеждаНаСкладе + СобственныеТовары + ПокупныеИзделия + ГотоваяПродукция + КомиссионныеТовары + ДавальческиеСырьеИМатериалы + + + Товар + Услуга + Работа + МногооборотнаяТара + + + Аккредитив + БанковскийОрдер + ИнкассовоеПоручение + ПлатежныйОрдер + ПлатежноеПоручение + ПлатежноеТребование + + + Оптовый + Розничный + НеавтоматизированнаяТорговаяТочка + + + Собственные + Агентские + + + Наличная + Безналичная + ПлатежнаяКарта + + + ЮридическоеЛицо + ФизическоеЛицо + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ВодительскоеУдостоверение + ВоенныйБилет + ВоенныйБилетОфицераЗапаса + ДипломатическийПаспорт + ЗагранпаспортРФ + ЗагранпаспортСССР + ПаспортРФ + ПаспортСССР + ПаспортМинморфлота + ПаспортМоряка + СвидетельствоОРождении + УдостоверениеОфицера + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + День + Месяц + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Доверенность + Приказ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ОсновнаяСистемаНалогообложения + ОсобыйПорядокНалогообложения + РаспределяемыеЗатраты + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + КредитыПолученные + ЗаймыПолученные + ЗаймыВыданныеСотрудникам + Депозиты + + + + + + + + + + + + + + + + + Проценты + Комиссия + + + + + Краткосрочный + Долгосрочный + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ПолучениеНаличных + Инкассация + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/SSL/src/XDTOPackages/EnterpriseData_1_4_2/EnterpriseData_1_4_2.mdo b/SSL/src/XDTOPackages/EnterpriseData_1_4_2/EnterpriseData_1_4_2.mdo new file mode 100644 index 000000000..9e6f66cd5 --- /dev/null +++ b/SSL/src/XDTOPackages/EnterpriseData_1_4_2/EnterpriseData_1_4_2.mdo @@ -0,0 +1,9 @@ + + + EnterpriseData_1_4_2 + + ru + EnterpriseData 1.4.2 + + http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.4 + diff --git a/SSL/src/XDTOPackages/EnterpriseData_1_4_2/Package.xdto b/SSL/src/XDTOPackages/EnterpriseData_1_4_2/Package.xdto new file mode 100644 index 000000000..46e28c5f0 --- /dev/null +++ b/SSL/src/XDTOPackages/EnterpriseData_1_4_2/Package.xdto @@ -0,0 +1,5782 @@ + + + + (((0[1-9]{1}|[1-2]{1}[0-9]{1})\.(0[1-9]{1}|1[0-2]{1}))|((30)\.(01|0[3-9]{1}|1[0-2]{1}))|((31)\.(01|03|05|07|08|10|12)))\.(18[0-9]{2}|19[0-9]{2}|20[0-9]{2}) + + + + + + + + + 0 + + + + Первая + Вторая + Третья + Четвертая + Пятая + Шестая + Седьмая + Восьмая + Девятая + Десятая + Отдельная + + + ВПользуПоставщика + НаПрочиеДоходы + + + ЗаСчетСтороннейКомпании + ЗаСчетПоставщика + НаПрочиеРасходы + + + Расчетный + Депозитный + Ссудный + ЧековыеКнижки + Аккредитивы + Иной + + + Билеты + Путевки + ПочтовыеМарки + ТалоныНаГСМ + Прочее + + + СПокупателем + СПоставщиком + СКомиссионером + СКомитентом + СКомитентомНаЗакупку + СКомиссионеромНаЗакупку + Прочее + + + ПочтовыйАдрес + ЮридическийАдрес + ФактическийАдрес + Телефон + ТелефонДомашний + ТелефонРабочий + Факс + ВебСтраница + АдресЭлектроннойПочты + ПользовательскаяКИДругое + ПользовательскаяКИТелефон + ПользовательскаяКИАдрес + ПользовательскаяКИАдресЭлектроннойПочты + ПользовательскаяКИВебСтраница + ПользовательскаяКИФакс + + + Пиво + АлкогольнаяПродукция + СпиртосодержащаяПищеваяПродукция + СпиртосодержащаяНеПищеваяПродукция + + + НематериальныйАктив + РасходыНаНИОКР + + + ВозвратОтКлиента + ВозвратОтКомиссионера + ВозвратОтРозничногоПокупателя + + + ВозвратПоставщику + ВозвратКомитенту + + + ВыпускПродукцииНаСклад + ВыпускПродукцииВПодразделение + + + СогласованноеИзменение + ИсправлениеОшибки + + + СписаниеЗадолженности + ПереносЗадолженности + ПроведениеВзаимозачета + + + ОплатаОтКлиентаПлатежнойКартой + ВозвратОплатыКлиентуНаПлатежнуюКарту + + + ПокупкаУПоставщика + ПриемНаКомиссию + ЗакупкаПоИмпорту + + + ВзносНаличными + Инкассация + + + РеализацияКлиенту + ПередачаНаКомиссию + ОтгрузкаБезПереходаПравСобственности_ВПути + ОтгрузкаБезПереходаПравСобственности_Реализовано + + + ПрочееСписание + ВнутренняяПередача + + + Сборка + Разборка + + + Руководитель + ГлавныйБухгалтер + РуководительКадровойСлужбы + Кассир + ОтветственныйЗаБухгалтерскиеРегистры + ОтветственныйЗаНалоговыеРегистры + УполномоченныйПредставитель + Исполнитель + Прочее + + + СПоставщиком + СПокупателем + КредитыИЗаймы + Прочее + + + Долг + Аванс + + + КраткосрочныеКредиты + ПроцентыПоКраткосрочнымКредитам + КраткосрочныеЗаймы + ПроцентыПоКраткосрочнымЗаймам + ДолгосрочныеКредиты + ПроцентыПоДолгосрочнымКредитам + ДолгосрочныеЗаймы + ПроцентыПоДолгосрочнымЗаймам + Комиссия + + + Займы + Подотчет + ДоговорПодряда + + + НаТовар + ПодарочнаяКарта + Дисконтная + + + ПринятиеКУчету + ВводВЭксплуатацию + ПринятиеКУчетуСВводомВЭксплуатацию + НачислениеАмортизации + ВнутреннееПеремещение + ТекущийРемонт + СреднийРемонт + КапитальныйРемонт + Переоценка + Реконструкция + Достройка + Дооборудование + ЧастичнаяЛиквидация + Модернизация + ПодготовкаКПередаче + Передача + Списание + Прочее + + + НаРеализацию + Корректировочный + НаАванс + НаАвансКомитента + СуммовыеРазницы + НалоговыйАгент + НаПоступление + + + ТОРГ12 + АктНаПередачуПрав + + + Здания + Сооружения + МашиныИОборудование + ОфисноеОборудование + ТранспортныеСредства + ПроизводственныйИХозяйственныйИнвентарь + РабочийСкот + ПродуктивныйСкот + МноголетниеНасаждения + ЗемельныеУчастки + ОбъектыПриродопользования + КапитальныеВложенияВАрендованноеИмущество + ПрочееИмуществоТребующееГосударственнойРегистрации + ДругиеВидыОсновныхСредств + + + ПродажаОблагаетсяНДС + ПродажаНеОблагаетсяНДС + ПродажаНаЭкспорт + ПродажаОблагаетсяЕНВД + ПоФактическомуИспользованию + НалоговыйАгентПоНДС + + + Мужской + Женский + + + НачислениеАмортизации + ВключениеВРасходыПриПринятииКУчету + СтоимостьНеВключаетсяВРасходы + + + НачислениеАмортизации + НачислениеИзноса + СтоимостьНеПогашается + НачислениеИзносаПоЕНАОФ + СписаниеПриПринятииКУчету + + + НаБумажномНосителе + ВЭлектронномВиде + + + Линейный + УменьшаемогоОстатка + ПропорциональноОбъемуПродукции + + + Линейный + Нелинейный + ПоЕНАОФ + + + Линейный + УменьшаемогоОстатка + ПоСуммеЧиселЛетИспользования + ПропорциональноОбъемуПродукции + ПоЕНАОФ + ПоЕНАОФНа1000кмПробега + + + Автоматически + ПоДокументу + НеПогашать + + + ПриобретениеЗаПлату + Строительство + ВкладВУставныйКапитал + ВОбменНаДругоеИмущество + БезвозмездноеПоступление + ПоДоговоруАренды + ПоступлениеВДоверительноеУправление + ВкладВСовместнуюДеятельность + Иное + + + ПроцентОтСуммыПродажи + ПроцентОтРазницыСуммПродажиИПоступления + НеРассчитывается + + + НДС4 + НДС4_104 + НДС18 + НДС18_118 + НДС2 + НДС2_102 + НДС10 + НДС10_110 + НДС0 + БезНДС + + + НеСогласована + Согласована + КОплате + Отклонена + + + СырьеИМатериалы + ПокупныеПолуфабрикатыИКомплектующие + ВозвратнаяТара + Топливо + ЗапасныеЧасти + ПрочиеМатериалы + СтроительныеМатериалы + ИнвентарьИХозяйственныеПринадлежности + СпецоснасткаИСпецодеждаНаСкладе + СобственныеТовары + ПокупныеИзделия + ГотоваяПродукция + КомиссионныеТовары + ДавальческиеСырьеИМатериалы + + + Товар + Услуга + Работа + МногооборотнаяТара + + + Аккредитив + БанковскийОрдер + ИнкассовоеПоручение + ПлатежныйОрдер + ПлатежноеПоручение + ПлатежноеТребование + + + Оптовый + Розничный + НеавтоматизированнаяТорговаяТочка + + + Собственные + Агентские + + + Наличная + Безналичная + ПлатежнаяКарта + + + ЮридическоеЛицо + ФизическоеЛицо + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ВодительскоеУдостоверение + ВоенныйБилет + ВоенныйБилетОфицераЗапаса + ДипломатическийПаспорт + ЗагранпаспортРФ + ЗагранпаспортСССР + ПаспортРФ + ПаспортСССР + ПаспортМинморфлота + ПаспортМоряка + СвидетельствоОРождении + УдостоверениеОфицера + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + День + Месяц + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Доверенность + Приказ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ОсновнаяСистемаНалогообложения + ОсобыйПорядокНалогообложения + РаспределяемыеЗатраты + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + КредитыПолученные + ЗаймыПолученные + ЗаймыВыданныеСотрудникам + Депозиты + + + + + + + + + + + + + + + + + Проценты + Комиссия + + + + + Краткосрочный + Долгосрочный + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ПолучениеНаличных + Инкассация + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file